From dab42d20185975fb0910dadfc6aa9998d9d9e06d Mon Sep 17 00:00:00 2001 From: Gabriele Cosmo Date: Fri, 4 Dec 2020 12:30:43 +0100 Subject: [PATCH] Import Geant4 10.7.0 source tree --- CMakeLists.txt | 7 +- CONTRIBUTING.md | 2 +- ReleaseNotes/Beta4.10.3-1.txt | 4 +- ReleaseNotes/Beta4.10.7-1.txt | 4 +- ReleaseNotes/Patch4.10.6-3.txt | 114 + ReleaseNotes/ReleaseNotes4.10.0.html | 2 +- ReleaseNotes/ReleaseNotes4.10.7.html | 2591 + cmake/History | 87 + cmake/Modules/FindInventor.cmake | 260 - cmake/Modules/FindXQuartzGL.cmake | 6 +- cmake/Modules/G4BuildSettings.cmake | 89 +- cmake/Modules/G4CMakeMain.cmake | 2 +- cmake/Modules/G4CMakeUtilities.cmake | 2 +- cmake/Modules/G4CTest.cmake | 6 + .../Modules/G4ConfigurePkgConfigHelpers.cmake | 11 +- cmake/Modules/G4DatasetDefinitions.cmake | 40 +- cmake/Modules/G4DeveloperAPI.cmake | 25 +- cmake/Modules/G4DeveloperAPI_OLD.cmake | 453 - cmake/Modules/G4InstallData.cmake | 161 +- cmake/Modules/G4InterfaceOptions.cmake | 295 +- cmake/Modules/G4OptionalComponents.cmake | 19 +- cmake/Modules/Geant4MacroDefineModule.cmake | 12 - cmake/Modules/Geant4MacroLibraryTargets.cmake | 11 +- cmake/Templates/Geant4Config.cmake.in | 125 +- cmake/Templates/geant4-config.in | 21 +- config/G4VIS_BUILD.gmk | 5 + config/G4VIS_USE.gmk | 10 + config/History | 3 + config/interactivity.gmk | 3 + config/sys/Darwin-clang.gmk | 31 +- config/sys/Darwin-g++.gmk | 31 +- config/sys/Linux-clang.gmk | 6 + config/sys/Linux-g++.gmk | 6 + environments/g4py/CMakeLists.txt | 2 +- environments/g4py/G4PythonHelpers.cmake | 7 +- environments/g4py/History | 19 + .../g4py/examples/education/lesson1/demo.py | 0 environments/g4py/source/CMakeLists.txt | 4 - .../g4py/source/boost/container_utils.hpp | 52 - .../boost/detail/indexing_suite_detail.hpp | 759 - .../g4py/source/boost/indexing_suite.hpp | 293 - .../g4py/source/boost/map_indexing_suite.hpp | 181 - .../source/boost/vector_indexing_suite.hpp | 243 - .../g4py/source/global/CMakeLists.txt | 2 +- .../g4py/source/global/pyG4UnitsTable.cc | 2 +- environments/g4py/source/global/pyglobals.cc | 2 +- .../source/intercoms/pyG4UIcommandTree.cc | 3 +- .../g4py/source/intercoms/pyG4UIparameter.cc | 15 +- .../g4py/source/materials/CMakeLists.txt | 2 +- .../g4py/source/materials/pyG4ElementTable.cc | 2 +- .../source/materials/pyG4ElementVector.cc | 2 +- .../g4py/source/materials/pyG4Isotope.cc | 2 +- .../source/materials/pyG4MaterialTable.cc | 2 +- .../g4py/source/physics_lists/CMakeLists.txt | 1 + .../source/physics_lists/pyPhysListFactory.cc | 53 + .../physics_lists/pymodG4physicslists.cc | 3 +- .../g4py/source/processes/CMakeLists.txt | 2 +- .../g4py/source/processes/pyG4ProcVector.cc | 2 +- environments/g4py/tests/CMakeLists.txt | 1 + .../g4py/tests/gtest08/CMakeLists.txt | 3 + environments/g4py/tests/gtest08/test.py | 74 + environments/zmq/pyclient/g4zmq.py | 2 +- examples/.doxygen/Doxyfile | 5 +- examples/.doxygen/Doxyfile_standalone | 2 +- examples/.doxygen/Doxyfile_test | 2 +- examples/.doxygen/Doxymodules_exoticphysics.h | 54 +- examples/.doxygen/Doxymodules_hadronic.h | 11 + examples/.doxygen/Doxymodules_medical.h | 9 + .../.doxygen/Doxymodules_parameterisations.h | 18 + examples/.doxygen/History | 17 + examples/.doxygen/extra_stylesheet.css | 10 +- examples/.doxygen/footer.html | 20 +- examples/.doxygen/generate_standalone.sh | 4 +- examples/.doxygen/header.html | 33 +- examples/.doxygen/images/geanttiny.gif | Bin 2690 -> 70077 bytes examples/History | 54 + examples/advanced/CMakeLists.txt | 18 +- .../advanced/ChargeExchangeMC/CMakeLists.txt | 15 +- .../ChargeExchangeMC/ChargeExchangeMC.out | 888 +- examples/advanced/ChargeExchangeMC/History | 23 +- .../advanced/HGCal_testbeam/CMakeLists.txt | 88 + examples/advanced/HGCal_testbeam/GNUmakefile | 16 + examples/advanced/HGCal_testbeam/History | 18 + examples/advanced/HGCal_testbeam/README | 227 + .../advanced/HGCal_testbeam/hgcal_testbeam.cc | 131 + .../include/ActionInitialization.hh | 34 +- .../include/CMSEmStandardPhysicsHcal.hh | 51 + .../include/DetectorConstruction.hh | 88 + .../include/DetectorConstruction0.hh | 67 + .../include/DetectorConstruction1.hh | 31 +- .../include/DetectorConstruction2.hh | 42 + .../HGCal_testbeam/include/EventAction.hh | 129 + .../include/FTFPCMS_BERT_EMM.hh | 47 + .../include/HGCalTBMaterials.hh | 210 + .../include/PrimaryGeneratorAction.hh | 224 + .../include/PrimaryGeneratorMessenger.hh | 110 + .../HGCal_testbeam/include/RunAction.hh | 62 + .../HGCal_testbeam/include/SiPMHit.hh | 137 + .../advanced/HGCal_testbeam/include/SiPMSD.hh | 68 + .../HGCal_testbeam/include/SiliconPixelHit.hh | 142 + .../HGCal_testbeam/include/SiliconPixelSD.hh | 67 + examples/advanced/HGCal_testbeam/init_vis.mac | 13 + .../advanced/HGCal_testbeam/readFromFile.mac | 26 + examples/advanced/HGCal_testbeam/run.mac | 32 + .../src/ActionInitialization.cc | 58 + .../src/CMSEmStandardPhysicsHcal.cc | 381 + .../src/DetectorConstruction.cc | 194 + .../src/DetectorConstruction0.cc | 227 + .../src/DetectorConstruction1.cc | 67 + .../src/DetectorConstruction2.cc | 38 + .../HGCal_testbeam/src/EventAction.cc | 196 + .../HGCal_testbeam/src/FTFPCMS_BERT_EMM.cc | 82 +- .../HGCal_testbeam/src/HGCalTBMaterials.cc | 840 + .../src/PrimaryGeneratorAction.cc | 230 + .../src/PrimaryGeneratorMessenger.cc | 180 + .../advanced/HGCal_testbeam/src/RunAction.cc | 142 + .../advanced/HGCal_testbeam/src/SiPMHit.cc | 86 + .../advanced/HGCal_testbeam/src/SiPMSD.cc | 77 + .../HGCal_testbeam/src/SiliconPixelHit.cc | 112 + .../HGCal_testbeam/src/SiliconPixelSD.cc | 92 + examples/advanced/HGCal_testbeam/vis.mac | 94 + .../ICRP110_HumanPhantoms/CMakeLists.txt | 93 + .../ICRP110_HumanPhantoms/ColourMap.dat | 55 + .../ICRP110_HumanPhantoms/GNUmakefile | 27 + .../advanced/ICRP110_HumanPhantoms/History | 16 + .../ICRP110_HumanPhantoms/ICRP110phantoms.cc | 93 + .../advanced/ICRP110_HumanPhantoms/README | 286 + .../advanced/ICRP110_HumanPhantoms/female.in | 85 + .../ICRP110_HumanPhantoms/female_head.in | 85 + .../ICRP110_HumanPhantoms/female_trunk.in | 85 + .../ICRP110PhantomActionInitialization.hh | 32 +- .../include/ICRP110PhantomAnalysisManager.hh | 18 +- .../include/ICRP110PhantomConstruction.hh | 90 + .../include/ICRP110PhantomMaterial_Female.hh | 103 + .../include/ICRP110PhantomMaterial_Male.hh | 103 + .../include/ICRP110PhantomMessenger.hh | 53 + .../ICRP110PhantomNestedParameterisation.hh | 142 + .../ICRP110PhantomPrimaryGeneratorAction.hh | 36 +- .../include/ICRP110ScoreWriterMessenger.hh | 57 + .../include/ICRP110UserScoreWriter.hh | 58 + .../advanced/ICRP110_HumanPhantoms/male.in | 88 + .../ICRP110_HumanPhantoms/male_head.in | 88 + .../ICRP110_HumanPhantoms/male_trunk.in | 88 + .../ICRP110_HumanPhantoms/openGLVis.mac | 77 + .../ICRP110_HumanPhantoms/primary.mac | 14 + .../src/ICRP110PhantomActionInitialization.cc | 27 +- .../src/ICRP110PhantomConstruction.cc | 809 + .../src/ICRP110PhantomMaterial_Female.cc | 799 + .../src/ICRP110PhantomMaterial_Male.cc | 796 + .../src/ICRP110PhantomMessenger.cc | 77 + .../ICRP110PhantomNestedParameterisation.cc | 174 + .../ICRP110PhantomPrimaryGeneratorAction.cc | 33 +- .../src/ICRP110ScoreWriterMessenger.cc | 79 + .../src/ICRP110UserScoreWriter.cc | 565 + .../advanced/ICRP110_HumanPhantoms/vis.mac | 81 + examples/advanced/STCyclotron/CMakeLists.txt | 9 +- examples/advanced/STCyclotron/GNUmakefile | 0 examples/advanced/STCyclotron/History | 18 +- .../advanced/STCyclotron/Macro/GUI/gui.mac | 0 .../advanced/STCyclotron/Macro/GUI/icons.mac | 0 .../advanced/STCyclotron/Macro/GUI/run.png | Bin .../Material/Target/My_designed_material.mac | 0 .../Material/Target/Ni64_enriched_95.mac | 0 .../Macro/Material/Target/Ni64_pure.mac | 0 .../STCyclotron/Macro/Vis/init_vis.mac | 0 .../advanced/STCyclotron/Macro/Vis/vis.mac | 0 examples/advanced/STCyclotron/Macro/init.mac | 0 .../STCyclotron/Macro/init_parameters.mac | 0 examples/advanced/STCyclotron/Macro/run.mac | 0 examples/advanced/STCyclotron/Plot.C | 0 examples/advanced/STCyclotron/README | 13 +- examples/advanced/STCyclotron/STCyclotron.cc | 17 +- .../STCyclotronActionInitialization.hh | 0 .../include/STCyclotronAnalysis.hh | 0 .../STCyclotronDetectorConstruction.hh | 0 .../include/STCyclotronDetectorMessenger.hh | 0 .../include/STCyclotronPhysicsList.hh | 0 .../STCyclotronPrimaryGeneratorAction.hh | 0 ...yclotronPrimaryGeneratorActionMessenger.hh | 0 .../STCyclotron/include/STCyclotronRun.hh | 0 .../include/STCyclotronRunAction.hh | 0 .../include/STCyclotronRunActionMessenger.hh | 0 .../include/STCyclotronSensitiveFoil.hh | 0 .../include/STCyclotronSensitiveTarget.hh | 0 examples/advanced/STCyclotron/init.mac | 0 .../advanced/STCyclotron/init_parameters.mac | 0 examples/advanced/STCyclotron/init_vis.mac | 0 examples/advanced/STCyclotron/run.mac | 0 .../src/STCyclotronActionInitialization.cc | 0 .../src/STCyclotronDetectorConstruction.cc | 0 .../src/STCyclotronDetectorMessenger.cc | 0 .../src/STCyclotronGeneratorAction.cc | 0 .../STCyclotron/src/STCyclotronPhysicsList.cc | 0 ...yclotronPrimaryGeneratorActionMessenger.cc | 0 .../STCyclotron/src/STCyclotronRunAction.cc | 0 .../src/STCyclotronRunActionMessenger.cc | 0 .../src/STCyclotronSensitiveFoil.cc | 0 .../src/STCyclotronSensitiveTarget.cc | 0 examples/advanced/STCyclotron/vis.mac | 0 examples/advanced/air_shower/CMakeLists.txt | 10 +- examples/advanced/air_shower/Direct.mac | 0 examples/advanced/air_shower/Ground.mac | 0 examples/advanced/air_shower/History | 55 +- examples/advanced/air_shower/Mirror.mac | 0 examples/advanced/air_shower/README | 5 +- examples/advanced/air_shower/Source.mac | 0 examples/advanced/air_shower/Ultra.cc | 17 +- examples/advanced/air_shower/VisDirect.mac | 0 examples/advanced/air_shower/air_shower.out | 42 +- examples/advanced/air_shower/do_plots.C | 12 + .../include/UltraAnalysisManager.hh | 3 +- .../src/UltraDetectorConstruction.cc | 65 +- .../advanced/air_shower/src/UltraRunAction.cc | 4 +- examples/advanced/amsEcal/CMakeLists.txt | 7 +- examples/advanced/amsEcal/History | 181 +- examples/advanced/amsEcal/ams_ecal.pdf | Bin examples/advanced/amsEcal/run1.out | 204 +- examples/advanced/brachytherapy/Brachy.cc | 49 +- .../advanced/brachytherapy/CMakeLists.txt | 45 +- examples/advanced/brachytherapy/History | 44 +- examples/advanced/brachytherapy/README | 32 +- .../brachytherapy/TG186SourceMacro.mac | 2 +- .../brachytherapy/VisualisationMacro.mac | 5 + .../advanced/brachytherapy/brachytherapy.out | 95 +- .../include/BrachyActionInitialization.hh | 3 - .../include/BrachyAnalysisManager.hh | 51 +- .../include/BrachyDetectorConstruction.hh | 34 +- .../BrachyDetectorConstructionFlexi.hh | 44 +- .../include/BrachyDetectorConstructionI.hh | 38 +- .../BrachyDetectorConstructionLeipzig.hh | 38 +- .../BrachyDetectorConstructionOncura6711.hh | 38 +- .../BrachyDetectorConstructionTG186.hh | 37 +- .../include/BrachyDetectorMessenger.hh | 8 +- .../include/BrachyFactoryFlexi.hh | 2 +- .../brachytherapy/include/BrachyFactoryI.hh | 2 +- .../include/BrachyFactoryLeipzig.hh | 2 +- .../include/BrachyFactoryOncura6711.hh | 2 +- .../include/BrachyFactoryTG186.hh | 2 +- .../brachytherapy/include/BrachyMaterial.hh | 34 +- .../include/BrachyPhysicsListMessenger.hh | 6 +- .../include/BrachyPrimaryGeneratorAction.hh | 2 +- examples/advanced/brachytherapy/macro.C | 2 +- .../advanced/brachytherapy/plot_primary.C | 4 +- .../src/BrachyActionInitialization.cc | 20 +- .../src/BrachyAnalysisManager.cc | 97 - .../src/BrachyDetectorConstruction.cc | 106 +- .../src/BrachyDetectorConstructionFlexi.cc | 188 +- .../src/BrachyDetectorConstructionI.cc | 131 +- .../src/BrachyDetectorConstructionLeipzig.cc | 110 +- .../BrachyDetectorConstructionOncura6711.cc | 182 +- .../src/BrachyDetectorConstructionTG186.cc | 163 +- .../src/BrachyDetectorMessenger.cc | 46 +- .../brachytherapy/src/BrachyFactoryFlexi.cc | 10 +- .../brachytherapy/src/BrachyFactoryI.cc | 10 +- .../brachytherapy/src/BrachyFactoryLeipzig.cc | 10 +- .../src/BrachyFactoryOncura6711.cc | 10 +- .../brachytherapy/src/BrachyFactoryTG186.cc | 10 +- .../brachytherapy/src/BrachyMaterial.cc | 145 +- .../brachytherapy/src/BrachyPhysicsList.cc | 15 +- .../src/BrachyPrimaryGeneratorAction.cc | 31 +- .../brachytherapy/src/BrachyRunAction.cc | 30 +- .../brachytherapy/src/BrachySteppingAction.cc | 27 +- .../src/BrachyUserScoreWriter.cc | 45 +- .../composite_calorimeter/CMakeLists.txt | 5 +- .../advanced/composite_calorimeter/History | 17 +- .../composite_calorimeter.out | 149 +- .../composite_calorimeter/envExample.csh | 0 .../composite_calorimeter/envExample.sh | 0 examples/advanced/doiPET/CMakeLists.txt | 18 +- examples/advanced/doiPET/History | 3 + examples/advanced/doiPET/README | 16 +- examples/advanced/eRosita/CMakeLists.txt | 13 +- examples/advanced/eRosita/History | 19 +- .../advanced/eRosita/TrackerPhotonEnergy.out | 79 +- examples/advanced/eRosita/eRosita.out | 18 +- examples/advanced/fastAerosol/CMakeLists.txt | 5 +- examples/advanced/fastAerosol/History | 6 +- examples/advanced/fastAerosol/fastAerosol.cc | 10 +- examples/advanced/gammaknife/CMakeLists.txt | 5 +- examples/advanced/gammaknife/GNUmakefile | 0 examples/advanced/gammaknife/GPS.in | 0 examples/advanced/gammaknife/History | 20 +- examples/advanced/gammaknife/MachineAngle.in | 0 examples/advanced/gammaknife/README | 29 +- examples/advanced/gammaknife/batch.mac | 0 examples/advanced/gammaknife/defaultMacro.mac | 0 examples/advanced/gammaknife/gammaknife.cc | 15 +- examples/advanced/gammaknife/gammaknife.out | 4296 +- .../include/GammaKnifeController.hh | 0 .../include/GammaKnifeDetectorConstruction.hh | 0 .../include/GammaKnifeDetectorMessenger.hh | 0 .../gammaknife/include/GammaKnifeMessenger.hh | 0 .../gammaknife/include/GammaKnifeParticles.hh | 0 .../include/GammaKnifePhysicsList.hh | 0 .../include/GammaKnifePhysicsListMessenger.hh | 0 .../GammaKnifePrimaryGeneratorAction.hh | 0 .../gammaknife/include/GammaKnifeRunAction.hh | 0 examples/advanced/gammaknife/simulation.mac | 0 .../gammaknife/src/GammaKnifeController.cc | 0 .../src/GammaKnifeDetectorConstruction.cc | 0 .../src/GammaKnifeDetectorMessenger.cc | 0 .../gammaknife/src/GammaKnifeMessenger.cc | 0 .../gammaknife/src/GammaKnifeParticles.cc | 0 .../gammaknife/src/GammaKnifePhysicsList.cc | 0 .../src/GammaKnifePhysicsListMessenger.cc | 0 .../src/GammaKnifePrimaryGeneratorAction.cc | 0 .../gammaknife/src/GammaKnifeRunAction.cc | 0 .../gammaray_telescope/CMakeLists.txt | 12 +- .../gammaray_telescope/GammaRayTel.cc | 17 +- examples/advanced/gammaray_telescope/History | 59 +- .../gammaray_telescope/gammaraytel.out | 32061 +++++----- .../gammaraytel_polarized.in | 33 + .../advanced/gammaray_telescope/macro6.mac | 8 +- .../physics_polarized_new.mac | 8 + .../src/GammaRayTelPhysicsList.cc | 11 +- examples/advanced/gorad/CMakeLists.txt | 66 + examples/advanced/gorad/GNUmakefile | 20 + examples/advanced/gorad/History | 41 + examples/advanced/gorad/King.spec | 43 + examples/advanced/gorad/README | 106 + examples/advanced/gorad/Trap.spec | 38 + examples/advanced/gorad/gorad.cc | 85 + examples/advanced/gorad/gps_focus.mac | 18 + examples/advanced/gorad/gps_point.mac | 19 + .../gorad/include/GRActionInitialization.hh | 72 + examples/advanced/gorad/include/GRAnalysis.hh | 50 + .../gorad/include/GRBiasingRegionInfo.hh | 98 + .../gorad/include/GRDetectorConstruction.hh | 149 + .../GRDetectorConstructionMessenger.hh | 86 + .../gorad/include/GRGeomBiasMessenger.hh | 85 + .../gorad/include/GRGeomImpBiasWorld.hh | 100 + .../gorad/include/GRInitialization.hh | 76 + .../include/GRParallelWorldBiasingProcess.hh | 72 + .../gorad/include/GRParallelWorldPhysics.hh | 76 + .../advanced/gorad/include/GRPhysicsList.hh | 136 + .../gorad/include/GRPhysicsListMessenger.hh | 89 + .../gorad/include/GRPrimGenActionMessenger.hh | 72 + .../gorad/include/GRPrimaryGeneratorAction.hh | 67 + examples/advanced/gorad/include/GRRun.hh | 68 + .../advanced/gorad/include/GRRunAction.hh | 162 + .../gorad/include/GRRunActionMessenger.hh | 128 + .../advanced/gorad/include/GRScoreWriter.hh | 66 + examples/advanced/gorad/run.mac | 99 + examples/advanced/gorad/simpleCone.gdml | 48 + .../gorad/src/GRActionInitialization.cc | 90 + .../gorad/src/GRDetectorConstruction.cc | 435 + .../src/GRDetectorConstructionMessenger.cc | 334 + .../advanced/gorad/src/GRGeomBiasMessenger.cc | 210 + .../advanced/gorad/src/GRGeomImpBiasWorld.cc | 129 + .../advanced/gorad/src/GRInitialization.cc | 138 + .../src/GRParallelWorldBiasingProcess.cc | 172 + .../gorad/src/GRParallelWorldPhysics.cc | 91 + examples/advanced/gorad/src/GRPhysicsList.cc | 252 + .../gorad/src/GRPhysicsListMessenger.cc | 367 + .../gorad/src/GRPrimGenActionMessenger.cc | 202 + .../gorad/src/GRPrimaryGeneratorAction.cc | 87 + examples/advanced/gorad/src/GRRun.cc | 160 + examples/advanced/gorad/src/GRRunAction.cc | 548 + .../gorad/src/GRRunActionMessenger.cc | 575 + examples/advanced/gorad/src/GRScoreWriter.cc | 297 + examples/advanced/gorad/test.mac | 86 + examples/advanced/gorad/vis.mac | 80 + .../advanced/hadrontherapy/CMakeLists.txt | 5 +- examples/advanced/hadrontherapy/History | 208 +- .../Modulators/Modulator009_02.txt | 0 .../hadrontherapy/Modulators/Modulator010.txt | 0 .../hadrontherapy/Modulators/Modulator011.txt | 0 .../Modulators/ModulatorAM16FR.txt | 0 examples/advanced/hadrontherapy/README | 375 +- .../advanced/hadrontherapy/data/rbe/lem1.csv | 0 .../advanced/hadrontherapy/hadrontherapy.cc | 24 +- .../include/BESTPassiveProtonBeamLine.hh | 275 + .../BESTPassiveProtonBeamLineMessenger.hh | 107 + .../advanced/hadrontherapy/include/Decay.hh | 0 .../HadrontherapyElectricTabulatedField3D.hh | 0 .../HadrontherapyEventActionMessenger.hh | 0 .../HadrontherapyInteractionParameters.hh | 0 .../HadrontherapyParameterMessenger.hh | 0 .../HadrontherapyPrimaryGeneratorAction.hh | 51 +- .../hadrontherapy/include/HadrontherapyRBE.hh | 6 +- .../include/HadrontherapyRBEAccumulable.hh | 11 +- ...rapyTIFPAPassiveProtonBeamLineMessenger.hh | 0 .../include/PassiveCarbonBeamLine.hh | 0 .../include/PassiveCarbonBeamLineMessenger.hh | 0 .../include/PassiveProtonBeamLineMessenger.hh | 0 .../hadrontherapy/macro/BESTBeamLine.mac | 157 + .../hadrontherapy/macro/carbon_beamline.mac | 0 .../macro/laserDrivenBeamline.mac | 20 +- .../src/BESTPassiveProtonBeamline.cc | 1313 + .../src/BESTPassiveProtonBeamlineMessenger.cc | 175 + .../src/HadrontherapyDetectorConstruction.cc | 2 +- .../src/HadrontherapyDetectorSD.cc | 6 +- .../HadrontherapyElectricTabulatedField3D.cc | 0 .../src/HadrontherapyEventAction.cc | 4 +- .../src/HadrontherapyEventActionMessenger.cc | 0 .../src/HadrontherapyGeometryController.cc | 6 + .../src/HadrontherapyInteractionParameters.cc | 0 .../src/HadrontherapyParameterMessenger.cc | 0 .../HadrontherapyPrimaryGeneratorAction.cc | 91 +- .../hadrontherapy/src/HadrontherapyRBE.cc | 30 +- .../src/HadrontherapyRBEAccumulable.cc | 2 +- .../src/HadrontherapyRunAction.cc | 9 +- ...HadrontherapyTIFPAPassiveProtonBeamLine.cc | 0 ...rapyTIFPAPassiveProtonBeamLineMessenger.cc | 0 .../src/PassiveCarbonBeamLine.cc | 0 .../src/PassiveCarbonBeamLineMessenger.cc | 0 .../src/PassiveProtonBeamLine.cc | 0 .../src/PassiveProtonBeamLineMessenger.cc | 0 .../advanced/human_phantom/CMakeLists.txt | 13 +- examples/advanced/human_phantom/History | 25 +- examples/advanced/human_phantom/adultHead.mac | 0 .../human_phantom/adultMIRDFemale.mac | 0 .../advanced/human_phantom/adultMIRDMale.mac | 0 .../advanced/human_phantom/adultMIXFemale.mac | 0 examples/advanced/human_phantom/batch.mac | 0 examples/advanced/human_phantom/default.mac | 0 .../advanced/human_phantom/human_phantom.out | 148 +- .../include/G4MIRDLeftAdrenal.hh | 0 .../include/G4MIRDLeftClavicle.hh | 0 .../include/G4MIRDLeftScapula.hh | 0 .../include/G4MIRDRightAdrenal.hh | 0 .../include/G4MIRDRightClavicle.hh | 0 .../include/G4MIRDRightScapula.hh | 0 examples/advanced/human_phantom/phantom.cc | 20 +- .../human_phantom/src/G4MIRDLeftAdrenal.cc | 0 .../human_phantom/src/G4MIRDLeftScapula.cc | 0 .../human_phantom/src/G4MIRDRightAdrenal.cc | 0 .../human_phantom/src/G4MIRDRightScapula.cc | 0 examples/advanced/iort_therapy/CMakeLists.txt | 34 +- examples/advanced/iort_therapy/History | 21 +- examples/advanced/iort_therapy/README | 6 +- .../include/Collimator100BeamLineMessenger.hh | 0 .../include/Collimator40BeamLineMessenger.hh | 0 .../include/Collimator50BeamLineMessenger.hh | 0 .../include/Collimator60BeamLineMessenger.hh | 0 .../include/Collimator70BeamLineMessenger.hh | 0 .../include/Collimator80BeamLineMessenger.hh | 0 .../include/IORTEventActionMessenger.hh | 0 .../advanced/iort_therapy/iort_therapy.out | 89 +- .../iort_therapy/src/Collimator100BeamLine.cc | 0 .../src/Collimator100BeamLineMessenger.cc | 0 .../iort_therapy/src/Collimator40BeamLine.cc | 0 .../src/Collimator40BeamLineMessenger.cc | 0 .../iort_therapy/src/Collimator50BeamLine.cc | 0 .../src/Collimator50BeamLineMessenger.cc | 0 .../iort_therapy/src/Collimator60BeamLine.cc | 0 .../src/Collimator60BeamLineMessenger.cc | 0 .../iort_therapy/src/Collimator70BeamLine.cc | 0 .../src/Collimator70BeamLineMessenger.cc | 0 .../iort_therapy/src/Collimator80BeamLine.cc | 0 .../src/Collimator80BeamLineMessenger.cc | 0 .../src/IORTEventActionMessenger.cc | 0 .../advanced/lAr_calorimeter/CMakeLists.txt | 9 +- examples/advanced/lAr_calorimeter/History | 25 +- .../lAr_calorimeter/lAr_calorimeter.out | 782 +- .../advanced/medical_linac/CMakeLists.txt | 15 +- examples/advanced/medical_linac/History | 29 +- examples/advanced/medical_linac/README | 0 examples/advanced/medical_linac/batch.mac | 0 .../advanced/medical_linac/include/ML2Acc1.hh | 0 .../medical_linac/include/ML2Acc1Messenger.hh | 0 .../include/ML2AcceleratorConstruction.hh | 0 .../ML2AcceleratorConstructionMessenger.hh | 0 .../medical_linac/include/ML2CInputData.hh | 0 .../medical_linac/include/ML2Convergence.hh | 0 .../medical_linac/include/ML2EventAction.hh | 0 .../medical_linac/include/ML2ExpVoxels.hh | 0 .../advanced/medical_linac/include/ML2Main.hh | 0 .../medical_linac/include/ML2MainMessenger.hh | 0 .../medical_linac/include/ML2Ph_BoxInBox.hh | 0 .../medical_linac/include/ML2Ph_FullWater.hh | 0 .../include/ML2PhantomConstruction.hh | 0 .../ML2PhantomConstructionMessenger.hh | 0 .../medical_linac/include/ML2PhaseSpaces.hh | 0 .../medical_linac/include/ML2PhysicsList.hh | 0 .../include/ML2PrimaryGenerationAction.hh | 0 .../ML2PrimaryGenerationActionMessenger.hh | 0 .../medical_linac/include/ML2RunAction.hh | 0 .../medical_linac/include/ML2SinputData.hh | 0 .../include/ML2SteppingAction.hh | 0 .../include/ML2TrackingAction.hh | 0 .../include/ML2WorldConstruction.hh | 0 .../advanced/medical_linac/medical_linac.out | 250 +- examples/advanced/medical_linac/ml2.cc | 0 examples/advanced/medical_linac/ml2.mac | 0 .../advanced/medical_linac/src/ML2Acc1.cc | 0 .../medical_linac/src/ML2Acc1Messenger.cc | 0 .../src/ML2AcceleratorConstruction.cc | 0 .../ML2AcceleratorConstructionMessenger.cc | 0 .../medical_linac/src/ML2CInputData.cc | 0 .../medical_linac/src/ML2Convergence.cc | 0 .../medical_linac/src/ML2EventAction.cc | 0 .../medical_linac/src/ML2ExpVoxels.cc | 0 .../medical_linac/src/ML2MainMessenger.cc | 0 .../medical_linac/src/ML2Ph_BoxInBox.cc | 0 .../medical_linac/src/ML2Ph_FullWater.cc | 0 .../src/ML2PhantomConstruction.cc | 0 .../src/ML2PhantomConstructionMessenger.cc | 0 .../medical_linac/src/ML2PhaseSpaces.cc | 0 .../medical_linac/src/ML2PhysicsList.cc | 0 .../src/ML2PrimaryGenerationAction.cc | 0 .../ML2PrimaryGenerationActionMessenger.cc | 0 .../medical_linac/src/ML2RunAction.cc | 0 .../medical_linac/src/ML2SteppingAction.cc | 0 .../medical_linac/src/ML2TrackingAction.cc | 0 .../medical_linac/src/ML2WorldConstruction.cc | 0 examples/advanced/medical_linac/totDose.txt | 408 +- examples/advanced/microbeam/CMakeLists.txt | 7 +- examples/advanced/microbeam/GNUmakefile | 0 examples/advanced/microbeam/History | 31 +- .../microbeam/include/CellParameterisation.hh | 0 .../microbeam/include/DetectorConstruction.hh | 0 .../advanced/microbeam/include/EMField.hh | 0 .../advanced/microbeam/include/EventAction.hh | 0 .../advanced/microbeam/include/PhysicsList.hh | 0 .../include/PrimaryGeneratorAction.hh | 0 .../advanced/microbeam/include/RunAction.hh | 0 .../microbeam/include/SteppingAction.hh | 0 examples/advanced/microbeam/microbeam.cc | 17 +- examples/advanced/microbeam/microbeam.mac | 0 examples/advanced/microbeam/microbeam.out | 98 +- examples/advanced/microbeam/phantom.dat | 0 examples/advanced/microbeam/plot.C | 0 .../microbeam/src/CellParameterisation.cc | 0 .../microbeam/src/DetectorConstruction.cc | 0 examples/advanced/microbeam/src/EMField.cc | 0 .../advanced/microbeam/src/EventAction.cc | 0 .../advanced/microbeam/src/PhysicsList.cc | 0 .../microbeam/src/PrimaryGeneratorAction.cc | 0 examples/advanced/microbeam/src/RunAction.cc | 0 .../advanced/microbeam/src/SteppingAction.cc | 0 .../advanced/microelectronics/CMakeLists.txt | 9 +- examples/advanced/microelectronics/History | 13 +- .../microelectronics/microelectronics.cc | 21 +- .../microelectronics/microelectronics.out | 40 +- examples/advanced/nanobeam/CMakeLists.txt | 9 +- examples/advanced/nanobeam/History | 23 +- examples/advanced/nanobeam/default.mac | 0 .../nanobeam/include/DetectorConstruction.hh | 0 .../advanced/nanobeam/include/PhysicsList.hh | 0 .../include/PrimaryGeneratorAction.hh | 0 .../advanced/nanobeam/include/RunAction.hh | 0 .../nanobeam/include/SteppingAction.hh | 0 .../nanobeam/include/TabulatedField3D.hh | 0 .../advanced/nanobeam/macros/coef-enge.mac | 0 .../advanced/nanobeam/macros/coef-map.mac | 0 .../advanced/nanobeam/macros/coef-square.mac | 0 .../advanced/nanobeam/macros/grid-enge.mac | 0 .../advanced/nanobeam/macros/grid-map.mac | 0 .../advanced/nanobeam/macros/grid-square.mac | 0 .../advanced/nanobeam/macros/image-enge.mac | 0 .../advanced/nanobeam/macros/image-map.mac | 0 .../advanced/nanobeam/macros/image-square.mac | 0 examples/advanced/nanobeam/nanobeam.cc | 18 +- examples/advanced/nanobeam/nanobeam.out | 41 +- examples/advanced/nanobeam/plot.C | 0 .../nanobeam/src/DetectorConstruction.cc | 2 +- examples/advanced/nanobeam/src/PhysicsList.cc | 0 .../nanobeam/src/PrimaryGeneratorAction.cc | 0 examples/advanced/nanobeam/src/RunAction.cc | 0 .../advanced/nanobeam/src/SteppingAction.cc | 0 .../advanced/nanobeam/src/TabulatedField3D.cc | 0 .../advanced/purging_magnet/CMakeLists.txt | 7 +- examples/advanced/purging_magnet/History | 24 +- examples/advanced/purging_magnet/README | 17 +- .../purging_magnet/purging_magnet.out | 31 +- .../advanced/radioprotection/CMakeLists.txt | 23 +- examples/advanced/radioprotection/History | 55 +- examples/advanced/radioprotection/README | 40 +- .../advanced/radioprotection/geometry.mac | 6 + .../include/ActionInitialization.hh | 5 +- .../include/AnalysisManager.hh | 4 +- .../include/DetectorConstruction.hh | 18 +- .../include/DetectorMessenger.hh | 60 + .../radioprotection/include/PhysicsList.hh | 4 +- .../include/PhysicsListMessenger.hh | 4 +- .../include/PrimaryGeneratorAction.hh | 5 +- .../radioprotection/include/RunAction.hh | 4 +- .../include/SensitiveDetector.hh | 4 +- .../include/SensitiveDetectorHit.hh | 4 +- .../radioprotection/include/SteppingAction.hh | 4 +- .../radioprotection/radioprotection.cc | 27 +- .../radioprotection/radioprotection.out | 138 +- examples/advanced/radioprotection/run.mac | 1 + .../src/ActionInitialization.cc | 4 +- .../radioprotection/src/AnalysisManager.cc | 4 +- .../src/DetectorConstruction.cc | 348 +- .../radioprotection/src/DetectorMessenger.cc | 77 + .../radioprotection/src/PhysicsList.cc | 4 +- .../src/PhysicsListMessenger.cc | 4 +- .../src/PrimaryGeneratorAction.cc | 4 +- .../advanced/radioprotection/src/RunAction.cc | 3 +- .../radioprotection/src/SensitiveDetector.cc | 4 +- .../src/SensitiveDetectorHit.cc | 4 +- .../radioprotection/src/SteppingAction.cc | 4 +- examples/advanced/radioprotection/vis.mac | 1 + .../underground_physics/CMakeLists.txt | 9 +- examples/advanced/underground_physics/DMX.cc | 16 +- examples/advanced/underground_physics/History | 69 +- .../underground_physics/UserRequirements.txt | 26 +- .../underground_physics/ambe_spectrum.mac | 5 +- .../advanced/underground_physics/neutron.mac | 5 +- .../src/DMXDetectorConstruction.cc | 58 +- .../src/DMXDetectorMaterial.icc | 61 +- .../underground_physics.out | 517 +- .../advanced/xray_fluorescence/CMakeLists.txt | 9 +- .../xray_fluorescence/FlatSpectrum.dat | 0 examples/advanced/xray_fluorescence/History | 45 +- .../xray_fluorescence/xray_fluorescence.out | 179 +- .../advanced/xray_telescope/CMakeLists.txt | 7 +- examples/advanced/xray_telescope/History | 34 +- examples/advanced/xray_telescope/XrayTel.cc | 18 +- .../xray_telescope/xray_telescope.out | 70 +- examples/basic/.README.txt | 2 +- examples/basic/B1/CMakeLists.txt | 9 +- examples/basic/B1/History | 27 +- examples/basic/B1/exampleB1.cc | 13 +- examples/basic/B1/exampleB1.out | 127 +- examples/basic/B2/B2a/CMakeLists.txt | 7 +- examples/basic/B2/B2a/exampleB2a.cc | 13 +- examples/basic/B2/B2a/exampleB2a.out | 522 +- examples/basic/B2/B2b/CMakeLists.txt | 7 +- examples/basic/B2/B2b/exampleB2b.cc | 13 +- examples/basic/B2/B2b/exampleB2b.out | 580 +- examples/basic/B2/CMakeLists.txt | 9 +- examples/basic/B2/History | 113 +- examples/basic/B3/B3a/CMakeLists.txt | 6 +- examples/basic/B3/B3a/exampleB3a.cc | 13 +- examples/basic/B3/B3a/exampleB3a.out | 27 +- examples/basic/B3/B3b/CMakeLists.txt | 6 +- examples/basic/B3/B3b/exampleB3b.cc | 13 +- examples/basic/B3/B3b/exampleB3b.out | 29 +- examples/basic/B3/CMakeLists.txt | 9 +- examples/basic/B3/History | 47 +- examples/basic/B4/B4a/CMakeLists.txt | 6 +- examples/basic/B4/B4a/exampleB4a.cc | 11 +- examples/basic/B4/B4a/exampleB4a.out | 341 +- examples/basic/B4/B4a/include/B4Analysis.hh | 3 + examples/basic/B4/B4a/run2.mac | 2 + examples/basic/B4/B4b/CMakeLists.txt | 6 +- examples/basic/B4/B4b/exampleB4b.cc | 11 +- examples/basic/B4/B4b/exampleB4b.out | 341 +- examples/basic/B4/B4b/include/B4Analysis.hh | 3 + examples/basic/B4/B4b/run2.mac | 2 + examples/basic/B4/B4c/CMakeLists.txt | 6 +- examples/basic/B4/B4c/exampleB4c.cc | 11 +- examples/basic/B4/B4c/exampleB4c.out | 341 +- examples/basic/B4/B4c/include/B4Analysis.hh | 3 + examples/basic/B4/B4c/run2.mac | 2 + examples/basic/B4/B4d/CMakeLists.txt | 6 +- examples/basic/B4/B4d/exampleB4d.cc | 16 +- examples/basic/B4/B4d/exampleB4d.out | 343 +- examples/basic/B4/B4d/include/B4Analysis.hh | 3 + examples/basic/B4/B4d/run2.mac | 2 + examples/basic/B4/CMakeLists.txt | 9 +- examples/basic/B4/History | 55 +- examples/basic/B4/macros/run2.mac | 2 + examples/basic/B5/.README.txt | 15 +- examples/basic/B5/CMakeLists.txt | 19 +- examples/basic/B5/History | 8 + examples/basic/B5/README | 11 +- examples/basic/B5/exampleB5.in | 2 + examples/basic/B5/exampleB5.out | 714 +- examples/basic/B5/run2.mac | 5 + examples/basic/B5/src/B5RunAction.cc | 22 +- examples/basic/CMakeLists.txt | 9 +- examples/basic/History | 34 +- examples/basic/README | 2 +- examples/extended/.README.txt | 4 +- examples/extended/CMakeLists.txt | 6 +- .../extended/analysis/AnaEx01/.README.txt | 80 +- examples/extended/analysis/AnaEx01/AnaEx01.cc | 24 +- .../extended/analysis/AnaEx01/AnaEx01.out | 225 +- .../extended/analysis/AnaEx01/CMakeLists.txt | 5 +- examples/extended/analysis/AnaEx01/History | 96 +- .../analysis/AnaEx01/src/HistoManager.cc | 67 +- examples/extended/analysis/AnaEx02/AnaEx02.cc | 30 +- .../extended/analysis/AnaEx02/AnaEx02.out | 210 +- .../extended/analysis/AnaEx02/CMakeLists.txt | 5 +- examples/extended/analysis/AnaEx02/History | 44 +- examples/extended/analysis/AnaEx03/AnaEx03.cc | 28 +- .../extended/analysis/AnaEx03/CMakeLists.txt | 5 +- examples/extended/analysis/AnaEx03/History | 52 +- .../extended/analysis/B1Con/CMakeLists.txt | 5 +- examples/extended/analysis/B1Con/History | 11 +- .../extended/analysis/B1Con/exampleB01Con.out | 255 +- .../extended/analysis/B1Con/exampleB1Con.cc | 22 +- examples/extended/analysis/CMakeLists.txt | 5 +- examples/extended/analysis/History | 19 +- examples/extended/biasing/B01/CMakeLists.txt | 5 +- examples/extended/biasing/B01/History | 15 +- examples/extended/biasing/B01/exampleB01.cc | 15 +- examples/extended/biasing/B01/exampleB01.out | 143 +- examples/extended/biasing/B02/CMakeLists.txt | 5 +- examples/extended/biasing/B02/History | 7 +- examples/extended/biasing/B02/exampleB02.cc | 15 +- examples/extended/biasing/B02/exampleB02.out | 143 +- examples/extended/biasing/B03/CMakeLists.txt | 5 +- examples/extended/biasing/B03/History | 5 +- examples/extended/biasing/B03/exampleB03.cc | 15 +- examples/extended/biasing/B03/exampleB03.out | 90 +- examples/extended/biasing/CMakeLists.txt | 5 +- examples/extended/biasing/GB01/CMakeLists.txt | 5 +- examples/extended/biasing/GB01/History | 5 +- examples/extended/biasing/GB01/exampleGB01.cc | 15 +- .../extended/biasing/GB01/exampleGB01.out | 3750 +- examples/extended/biasing/GB02/CMakeLists.txt | 5 +- examples/extended/biasing/GB02/History | 5 +- examples/extended/biasing/GB02/exampleGB02.cc | 15 +- .../extended/biasing/GB02/exampleGB02.out | 5921 +- examples/extended/biasing/GB03/CMakeLists.txt | 5 +- examples/extended/biasing/GB03/History | 3 + examples/extended/biasing/GB03/exampleGB03.cc | 15 +- .../extended/biasing/GB03/exampleGB03.out | 146 +- examples/extended/biasing/GB04/CMakeLists.txt | 5 +- examples/extended/biasing/GB04/History | 5 +- examples/extended/biasing/GB04/exampleGB04.cc | 17 +- .../extended/biasing/GB04/exampleGB04.out | 3745 +- examples/extended/biasing/GB05/CMakeLists.txt | 5 +- examples/extended/biasing/GB05/History | 3 + examples/extended/biasing/GB05/exampleGB05.cc | 18 +- .../extended/biasing/GB05/exampleGB05.out | 3335 +- examples/extended/biasing/GB06/CMakeLists.txt | 5 +- examples/extended/biasing/GB06/History | 3 + examples/extended/biasing/GB06/exampleGB06.cc | 17 +- .../extended/biasing/GB06/exampleGB06.out | 554 +- examples/extended/biasing/GB07/.README.txt | 72 +- examples/extended/biasing/GB07/CMakeLists.txt | 5 +- examples/extended/biasing/GB07/History | 6 + examples/extended/biasing/GB07/exampleGB07.cc | 15 +- examples/extended/biasing/History | 33 +- .../biasing/ReverseMC01/CMakeLists.txt | 5 +- examples/extended/biasing/ReverseMC01/History | 50 +- .../biasing/ReverseMC01/exampleRMC01.cc | 36 +- .../run_adjoint_simulation_electron.out | 320 +- examples/extended/common/CMakeLists.txt | 5 +- examples/extended/common/History | 11 +- .../extended/electromagnetic/CMakeLists.txt | 5 +- examples/extended/electromagnetic/History | 12 +- .../electromagnetic/TestEm0/CMakeLists.txt | 5 +- .../electromagnetic/TestEm0/TestEm0.out | 47 +- .../electromagnetic/TestEm1/.README.txt | 20 +- .../electromagnetic/TestEm1/CMakeLists.txt | 5 +- .../extended/electromagnetic/TestEm1/History | 10 + .../extended/electromagnetic/TestEm1/README | 22 +- .../electromagnetic/TestEm1/TestEm1.out | 75 +- .../electromagnetic/TestEm1/radioactive.mac | 2 +- .../electromagnetic/TestEm10/CMakeLists.txt | 5 +- .../extended/electromagnetic/TestEm10/History | 44 +- .../electromagnetic/TestEm10/TestEm10.cc | 12 +- .../electromagnetic/TestEm10/TestEm10.out | 289 +- .../electromagnetic/TestEm11/.README.txt | 14 + .../electromagnetic/TestEm11/CMakeLists.txt | 5 +- .../extended/electromagnetic/TestEm11/History | 3 + .../extended/electromagnetic/TestEm11/README | 16 +- .../electromagnetic/TestEm11/TestEm11.in | 7 +- .../electromagnetic/TestEm11/TestEm11.out | 141 +- .../electromagnetic/TestEm11/alpha.mac | 5 +- .../electromagnetic/TestEm11/ionC12.mac | 5 +- .../electromagnetic/TestEm11/multiLayers.mac | 7 +- .../electromagnetic/TestEm11/radioactive.mac | 8 +- .../electromagnetic/TestEm11/range.mac | 4 +- .../electromagnetic/TestEm11/run01.mac | 6 +- .../electromagnetic/TestEm11/run02.mac | 6 +- .../electromagnetic/TestEm11/sandia.mac | 10 +- .../electromagnetic/TestEm11/water.mac | 6 +- .../electromagnetic/TestEm12/.README.txt | 9 + .../electromagnetic/TestEm12/CMakeLists.txt | 5 +- .../extended/electromagnetic/TestEm12/History | 3 + .../extended/electromagnetic/TestEm12/README | 9 + .../electromagnetic/TestEm12/TestEm12.in | 7 +- .../electromagnetic/TestEm12/TestEm12.out | 72 +- .../electromagnetic/TestEm12/berger.mac | 8 +- .../extended/electromagnetic/TestEm12/dna.mac | 6 +- .../electromagnetic/TestEm12/run01.mac | 6 +- .../electromagnetic/TestEm12/run02.mac | 6 +- .../electromagnetic/TestEm13/CMakeLists.txt | 5 +- .../electromagnetic/TestEm13/TestEm13.out | 35 +- .../electromagnetic/TestEm14/CMakeLists.txt | 7 +- .../extended/electromagnetic/TestEm14/History | 9 + .../electromagnetic/TestEm14/TestEm14.out | 39 +- .../TestEm14/atomicDeexcitation.mac | 41 + .../electromagnetic/TestEm15/CMakeLists.txt | 5 +- .../electromagnetic/TestEm15/TestEm15.out | 62 +- .../electromagnetic/TestEm16/CMakeLists.txt | 5 +- .../electromagnetic/TestEm16/TestEm16.out | 30 +- .../electromagnetic/TestEm17/CMakeLists.txt | 5 +- .../electromagnetic/TestEm17/TestEm17.out | 42 +- .../electromagnetic/TestEm18/.README.txt | 15 +- .../electromagnetic/TestEm18/CMakeLists.txt | 7 +- .../extended/electromagnetic/TestEm18/History | 4 + .../extended/electromagnetic/TestEm18/README | 17 +- .../electromagnetic/TestEm18/TestEm18.in | 7 +- .../electromagnetic/TestEm18/TestEm18.out | 168 +- .../electromagnetic/TestEm18/csda.mac | 7 +- .../electromagnetic/TestEm18/edep.mac | 6 +- .../electromagnetic/TestEm18/electron.mac | 7 +- .../extended/electromagnetic/TestEm18/ion.mac | 7 +- .../electromagnetic/TestEm18/muon.mac | 7 +- .../extended/electromagnetic/TestEm18/pixe.C | 20 + .../electromagnetic/TestEm18/pixe.mac | 36 +- .../electromagnetic/TestEm18/plotHisto.C | 29 +- .../electromagnetic/TestEm18/proton.mac | 8 +- .../electromagnetic/TestEm2/.README.txt | 14 +- .../electromagnetic/TestEm2/CMakeLists.txt | 5 +- .../extended/electromagnetic/TestEm2/History | 10 + .../extended/electromagnetic/TestEm2/README | 15 +- .../electromagnetic/TestEm2/TestEm2.in | 1 + .../electromagnetic/TestEm2/TestEm2.out | 190 +- .../extended/electromagnetic/TestEm2/egs4.mac | 2 +- .../TestEm2/include/RunAction.hh | 7 +- .../TestEm2/include/RunActionMessenger.hh | 3 - .../electromagnetic/TestEm2/run01.mac | 2 +- .../electromagnetic/TestEm2/src/RunAction.cc | 33 +- .../TestEm2/src/RunActionMessenger.cc | 15 +- .../electromagnetic/TestEm3/.README.txt | 61 +- .../electromagnetic/TestEm3/CMakeLists.txt | 7 +- .../extended/electromagnetic/TestEm3/History | 10 + .../extended/electromagnetic/TestEm3/README | 27 +- .../electromagnetic/TestEm3/TestEm3.out | 182 +- .../TestEm3/geant3/g4mat/gmakeB | 0 .../TestEm3/geant3/g4mat/gmakeT | 0 .../electromagnetic/TestEm3/geant3/gmakeB | 0 .../electromagnetic/TestEm3/geant3/gmakeT | 0 .../extended/electromagnetic/TestEm3/geom.mac | 26 + .../electromagnetic/TestEm3/ionC12.mac | 3 - .../electromagnetic/TestEm3/lockwood.mac | 6 +- .../TestEm3/retrieveTables.mac | 24 - .../electromagnetic/TestEm3/storeTables.mac | 14 +- .../electromagnetic/TestEm4/.README.txt | 19 +- .../electromagnetic/TestEm4/CMakeLists.txt | 5 +- .../extended/electromagnetic/TestEm4/History | 4 + .../extended/electromagnetic/TestEm4/README | 18 +- .../electromagnetic/TestEm4/TestEm4.out | 19 +- .../electromagnetic/TestEm5/.README.txt | 54 +- .../electromagnetic/TestEm5/CMakeLists.txt | 8 +- .../extended/electromagnetic/TestEm5/History | 33 + .../extended/electromagnetic/TestEm5/README | 81 +- .../electromagnetic/TestEm5/TestEm5.in | 1 + .../electromagnetic/TestEm5/TestEm5.out | 2162 +- .../electromagnetic/TestEm5/berger.mac | 5 +- .../electromagnetic/TestEm5/berger/berger.C | 59 +- .../TestEm5/berger/berger.kumac | 83 - .../extended/electromagnetic/TestEm5/fluo.mac | 40 - .../extended/electromagnetic/TestEm5/geom.mac | 37 + .../electromagnetic/TestEm5/hanson.mac | 6 +- .../TestEm5/hanson/19um-wwols.ascii | 32 + .../TestEm5/hanson/9um-wwols.ascii | 31 + .../electromagnetic/TestEm5/hanson/hanson.C | 26 +- .../TestEm5/hanson/hanson.kumac | 70 - .../extended/electromagnetic/TestEm5/pixe.C | 52 +- .../extended/electromagnetic/TestEm5/pixe.mac | 59 +- .../TestEm5/src/StackingAction.cc | 19 +- .../TestEm5/src/TrackingAction.cc | 4 +- .../electromagnetic/TestEm6/CMakeLists.txt | 5 +- .../electromagnetic/TestEm6/TestEm6.out | 84 +- .../electromagnetic/TestEm7/CMakeLists.txt | 5 +- .../electromagnetic/TestEm7/TestEm7.out | 494 +- .../electromagnetic/TestEm8/CMakeLists.txt | 5 +- .../extended/electromagnetic/TestEm8/History | 51 +- .../electromagnetic/TestEm8/TestEm8.cc | 29 +- .../electromagnetic/TestEm8/TestEm8.out | 80 +- .../electromagnetic/TestEm9/CMakeLists.txt | 5 +- .../extended/electromagnetic/TestEm9/History | 72 +- .../electromagnetic/TestEm9/TestEm9.cc | 10 +- .../electromagnetic/TestEm9/TestEm9.out | 357 +- .../extended/errorpropagation/CMakeLists.txt | 5 +- examples/extended/errorpropagation/History | 7 +- .../extended/errorpropagation/errorprop.out | 73 +- .../extended/eventgenerator/CMakeLists.txt | 5 +- .../eventgenerator/CMakeLists.txt.pythia6 | 5 +- .../eventgenerator/HepMC/CMakeLists.txt | 5 +- .../HepMC/HepMCEx01/CMakeLists.txt | 5 +- .../HepMC/HepMCEx01/HepMCEx01.cc | 6 +- .../eventgenerator/HepMC/HepMCEx01/History | 6 + .../HepMC/HepMCEx01/data/CMakeLists.txt | 5 +- .../HepMC/HepMCEx02/CMakeLists.txt | 5 +- .../HepMC/HepMCEx02/HepMCEx02.cc | 12 +- .../eventgenerator/HepMC/HepMCEx02/History | 6 + .../HepMC/HepMCEx02/data/CMakeLists.txt | 5 +- .../HepMC/MCTruth/CMakeLists.txt | 5 +- .../eventgenerator/HepMC/MCTruth/History | 6 + .../eventgenerator/HepMC/MCTruth/mctruthex.cc | 6 +- examples/extended/eventgenerator/History | 13 +- .../eventgenerator/exgps/CMakeLists.txt | 5 +- .../extended/eventgenerator/exgps/History | 31 +- .../extended/eventgenerator/exgps/exgps.cc | 12 +- .../eventgenerator/exgps/exgps_batch.out | 10 +- .../eventgenerator/exgps/macros/plotall.py | 0 .../eventgenerator/exgps/macros/plotfiles.py | 0 .../eventgenerator/exgps/macros/plottest35.py | 0 .../eventgenerator/particleGun/CMakeLists.txt | 5 +- .../particleGun/particleGun_run1.out | 6 +- .../particleGun/particleGun_run2.out | 11 +- .../particleGun/particleGun_run3.out | 11 +- .../particleGun/particleGun_run4.out | 11 +- .../pythia/decayer6/CMakeLists.txt | 5 +- .../eventgenerator/pythia/decayer6/History | 20 +- .../pythia/decayer6/common/CMakeLists.txt | 5 +- .../pythia/decayer6/pythia6_decayer.cc | 16 +- .../userPrimaryGenerator/CMakeLists.txt | 5 +- .../userPrimaryGenerator.out | 4 +- .../extended/exoticphysics/CMakeLists.txt | 5 +- examples/extended/exoticphysics/History | 6 + .../exoticphysics/channeling/CMakeLists.txt | 5 +- .../extended/exoticphysics/channeling/History | 3 + .../channeling/analysis/analyse_ch_eff.C | 0 .../exoticphysics/channeling/channeling.cc | 26 +- .../exoticphysics/channeling/channeling.out | 103 +- .../include/UserActionInitialization.hh | 5 - .../src/UserActionInitialization.cc | 2 - .../exoticphysics/dmparticle/.README.txt | 0 .../exoticphysics/dmparticle/CMakeLists.txt | 5 +- .../exoticphysics/dmparticle/GNUmakefile | 0 .../extended/exoticphysics/dmparticle/History | 5 +- .../extended/exoticphysics/dmparticle/README | 0 .../exoticphysics/dmparticle/dmparticle.cc | 27 +- .../exoticphysics/dmparticle/dmparticle.out | 1196 +- .../include/ActionInitialization.hh | 0 .../include/DetectorConstruction.hh | 0 .../dmparticle/include/DetectorMessenger.hh | 0 .../dmparticle/include/EventAction.hh | 0 .../dmparticle/include/PhysicsList.hh | 0 .../include/PhysicsListMessenger.hh | 0 .../include/PrimaryGeneratorAction.hh | 0 .../exoticphysics/dmparticle/include/Run.hh | 0 .../dmparticle/include/RunAction.hh | 0 .../dmparticle/include/StackingAction.hh | 0 .../dmparticle/include/StackingMessenger.hh | 0 .../dmparticle/include/TargetSD.hh | 0 .../dmparticle/include/TestParameters.hh | 0 .../dmparticle/src/ActionInitialization.cc | 0 .../dmparticle/src/DetectorConstruction.cc | 0 .../dmparticle/src/DetectorMessenger.cc | 0 .../dmparticle/src/EventAction.cc | 0 .../dmparticle/src/PhysicsList.cc | 0 .../dmparticle/src/PhysicsListMessenger.cc | 0 .../dmparticle/src/PrimaryGeneratorAction.cc | 0 .../exoticphysics/dmparticle/src/Run.cc | 0 .../exoticphysics/dmparticle/src/RunAction.cc | 0 .../dmparticle/src/StackingAction.cc | 0 .../dmparticle/src/StackingMessenger.cc | 0 .../exoticphysics/dmparticle/src/TargetSD.cc | 0 .../dmparticle/src/TestParameters.cc | 0 .../exoticphysics/monopole/CMakeLists.txt | 5 +- .../extended/exoticphysics/monopole/History | 47 +- .../exoticphysics/monopole/monopole.cc | 34 +- .../exoticphysics/monopole/monopole.out | 183 +- .../exoticphysics/phonon/CMakeLists.txt | 5 +- .../phonon/CrystalMaps/Ge/FTVec.ssv | 51681 ---------------- .../phonon/CrystalMaps/Ge/LVec.ssv | 51681 ---------------- .../phonon/CrystalMaps/Ge/STVec.ssv | 51681 ---------------- .../extended/exoticphysics/phonon/History | 17 +- .../extended/exoticphysics/phonon/XGeBox.cc | 12 +- .../extended/exoticphysics/saxs/.README.txt | 254 + examples/extended/exoticphysics/saxs/ADXRD.C | 361 + .../exoticphysics/saxs/CMakeLists.txt | 77 + examples/extended/exoticphysics/saxs/History | 28 + examples/extended/exoticphysics/saxs/README | 218 + examples/extended/exoticphysics/saxs/geom.mac | 28 + examples/extended/exoticphysics/saxs/gui.mac | 25 + .../saxs/include/G4EmPenelopePhysicsMI.hh | 55 +- .../saxs/include/SAXSActionInitialization.hh | 55 + .../saxs/include/SAXSAnalysis.hh | 22 +- .../saxs/include/SAXSDetectorConstruction.hh | 269 + .../SAXSDetectorConstructionMessenger.hh | 115 + .../saxs/include/SAXSEventAction.hh | 75 + .../saxs/include/SAXSPhysicsList.hh | 82 + .../saxs/include/SAXSPhysicsListMessenger.hh} | 60 +- .../include/SAXSPrimaryGeneratorAction.hh | 41 +- .../saxs/include/SAXSRunAction.hh | 67 + .../saxs/include/SAXSRunActionMessenger.hh | 60 + .../saxs/include/SAXSSensitiveDetector.hh | 71 + .../saxs/include/SAXSSensitiveDetectorHit.hh | 130 + .../include/SAXSSensitiveDetectorMessenger.hh | 62 + .../saxs/include/SAXSSteppingAction.hh | 69 + .../extended/exoticphysics/saxs/init_vis.mac | 10 + examples/extended/exoticphysics/saxs/myFF.dat | 1142 + examples/extended/exoticphysics/saxs/saxs.cc | 120 + examples/extended/exoticphysics/saxs/saxs.in | 51 + .../extended/exoticphysics/saxs/saxs_slits.in | 72 + .../exoticphysics/saxs/scattAnalysis.C | 187 + .../saxs/src/G4EmPenelopePhysicsMI.cc | 455 + .../saxs/src/SAXSActionInitialization.cc | 67 + .../saxs/src/SAXSDetectorConstruction.cc | 1089 + .../src/SAXSDetectorConstructionMessenger.cc | 542 + .../exoticphysics/saxs/src/SAXSEventAction.cc | 139 + .../exoticphysics/saxs/src/SAXSPhysicsList.cc | 195 + .../saxs/src/SAXSPhysicsListMessenger.cc | 92 + .../saxs/src/SAXSPrimaryGeneratorAction.cc | 72 + .../exoticphysics/saxs/src/SAXSRunAction.cc | 148 + .../saxs/src/SAXSRunActionMessenger.cc | 62 + .../saxs/src/SAXSSensitiveDetector.cc | 122 + .../saxs/src/SAXSSensitiveDetectorHit.cc | 130 + .../src/SAXSSensitiveDetectorMessenger.cc | 68 + .../saxs/src/SAXSSteppingAction.cc | 172 + examples/extended/exoticphysics/saxs/test.in | 10 + examples/extended/exoticphysics/saxs/vis.mac | 52 + .../extended/exoticphysics/ucn/CMakeLists.txt | 5 +- examples/extended/exoticphysics/ucn/ExUCN.cc | 22 +- examples/extended/exoticphysics/ucn/ExUCN.out | 23 +- examples/extended/exoticphysics/ucn/History | 3 + .../extended/field/BlineTracer/CMakeLists.txt | 5 +- examples/extended/field/BlineTracer/History | 7 +- .../field/BlineTracer/testBlineTracer.cc | 10 +- examples/extended/field/CMakeLists.txt | 5 +- examples/extended/field/History | 20 +- .../extended/field/field01/CMakeLists.txt | 5 +- examples/extended/field/field01/field01.out | 426 +- .../extended/field/field02/CMakeLists.txt | 5 +- examples/extended/field/field02/field02.out | 7631 ++- .../extended/field/field03/CMakeLists.txt | 5 +- examples/extended/field/field03/field03.out | 263 +- .../extended/field/field04/CMakeLists.txt | 5 +- examples/extended/field/field04/field04.out | 11888 ++-- .../extended/field/field05/CMakeLists.txt | 5 +- examples/extended/field/field05/field05.out | 18 +- .../extended/field/field06/CMakeLists.txt | 5 +- examples/extended/field/field06/History | 11 +- examples/extended/field/field06/field06.cc | 22 +- examples/extended/field/field06/field06.out | 20 +- examples/extended/g3tog4/CMakeLists.txt | 5 +- examples/extended/g3tog4/History | 28 +- .../extended/g3tog4/clGeometry/CMakeLists.txt | 5 +- .../extended/g3tog4/clGeometry/clGeometry.cc | 46 +- .../extended/g3tog4/clGeometry/clGeometry.out | 174 +- .../g3tog4/clGeometry/common/CMakeLists.txt | 5 +- examples/extended/geometry/CMakeLists.txt | 5 +- examples/extended/geometry/History | 7 +- .../geometry/transforms/CMakeLists.txt | 5 +- .../extended/geometry/transforms/batch.out | 17 +- examples/extended/hadronic/.README.txt | 15 + examples/extended/hadronic/CMakeLists.txt | 6 +- .../hadronic/FissionFragment/CMakeLists.txt | 5 +- .../FissionFragment/FissionFragment.cc | 86 +- .../FissionFragment/FissionFragment.out | 145 +- .../extended/hadronic/FissionFragment/History | 44 +- .../extended/hadronic/FissionFragment/README | 22 +- .../hadronic/FissionFragment/batch.in | 4 + .../extended/hadronic/Hadr00/CMakeLists.txt | 5 +- examples/extended/hadronic/Hadr00/Hadr00.cc | 19 +- examples/extended/hadronic/Hadr00/History | 25 +- examples/extended/hadronic/Hadr00/hadr00.out | 109 +- .../hadronic/Hadr00/include/EventAction.hh | 0 .../hadronic/Hadr00/include/RunAction.hh | 0 .../hadronic/Hadr00/src/EventAction.cc | 0 .../extended/hadronic/Hadr00/src/RunAction.cc | 0 .../extended/hadronic/Hadr01/CMakeLists.txt | 5 +- examples/extended/hadronic/Hadr01/Hadr01.cc | 16 +- examples/extended/hadronic/Hadr01/History | 42 +- examples/extended/hadronic/Hadr01/hadr01.in | 2 +- examples/extended/hadronic/Hadr01/hadr01.out | 194 +- .../hadronic/Hadr01/include/CheckVolumeSD.hh | 0 .../hadronic/Hadr01/include/EventAction.hh | 0 .../hadronic/Hadr01/include/PhysicsList.hh | 0 .../Hadr01/include/PhysicsListMessenger.hh | 0 .../hadronic/Hadr01/include/RunAction.hh | 0 .../hadronic/Hadr01/include/TargetSD.hh | 0 .../hadronic/Hadr01/src/CheckVolumeSD.cc | 0 .../hadronic/Hadr01/src/EventAction.cc | 0 .../hadronic/Hadr01/src/PhysicsList.cc | 12 +- .../extended/hadronic/Hadr01/src/RunAction.cc | 7 +- .../extended/hadronic/Hadr02/CMakeLists.txt | 5 +- examples/extended/hadronic/Hadr02/Hadr02.cc | 22 +- examples/extended/hadronic/Hadr02/History | 11 +- examples/extended/hadronic/Hadr02/hadr02.out | 145 +- .../hadronic/Hadr02/hijing1_383/Main_HIJING.f | 0 .../hadronic/Hadr02/hijing1_383/hijing1.383.f | 0 .../hadronic/Hadr02/hijing1_383/hipyset1.35.f | 0 .../hadronic/Hadr02/include/EventAction.hh | 0 .../hadronic/Hadr02/include/G4CRMCModel.hh | 0 .../Hadr02/include/G4UrQMD1_3Interface.hh | 0 .../Hadr02/include/G4UrQMD1_3Model.hh | 0 .../hadronic/Hadr02/include/RunAction.hh | 0 .../hadronic/Hadr02/include/TargetSD.hh | 0 .../hadronic/Hadr02/src/EventAction.cc | 0 .../extended/hadronic/Hadr02/src/RunAction.cc | 0 examples/extended/hadronic/Hadr03/.README.txt | 22 +- .../extended/hadronic/Hadr03/CMakeLists.txt | 7 +- examples/extended/hadronic/Hadr03/Hadr03.cc | 18 + examples/extended/hadronic/Hadr03/History | 10 + examples/extended/hadronic/Hadr03/README | 19 +- .../extended/hadronic/Hadr03/envHadronic.csh | 10 +- .../extended/hadronic/Hadr03/envHadronic.sh | 24 +- examples/extended/hadronic/Hadr03/fusion.mac | 18 + examples/extended/hadronic/Hadr03/hadr03.out | 93 +- examples/extended/hadronic/Hadr03/ion.mac | 3 - .../extended/hadronic/Hadr03/nFission.mac | 9 +- examples/extended/hadronic/Hadr04/.README.txt | 15 +- .../extended/hadronic/Hadr04/CMakeLists.txt | 5 +- examples/extended/hadronic/Hadr04/Hadr04.cc | 18 + examples/extended/hadronic/Hadr04/History | 8 + examples/extended/hadronic/Hadr04/README | 12 +- .../extended/hadronic/Hadr04/envHadronic.csh | 10 +- .../extended/hadronic/Hadr04/envHadronic.sh | 24 +- .../extended/hadronic/Hadr04/graphite.mac | 4 - examples/extended/hadronic/Hadr04/hadr04.in | 4 - examples/extended/hadronic/Hadr04/hadr04.out | 52 +- examples/extended/hadronic/Hadr04/run01.mac | 2 - examples/extended/hadronic/Hadr06/.README.txt | 17 +- .../extended/hadronic/Hadr06/CMakeLists.txt | 11 +- examples/extended/hadronic/Hadr06/Hadr06.cc | 18 + examples/extended/hadronic/Hadr06/History | 10 + examples/extended/hadronic/Hadr06/README | 15 +- .../extended/hadronic/Hadr06/envHadronic.csh | 10 +- .../extended/hadronic/Hadr06/envHadronic.sh | 24 +- examples/extended/hadronic/Hadr06/fission.mac | 9 +- examples/extended/hadronic/Hadr06/hadr06.out | 167 +- .../hadronic/Hadr06/singleFission.mac | 28 + .../hadronic/Hadr06/src/TrackingAction.cc | 49 +- examples/extended/hadronic/Hadr07/.README.txt | 17 +- .../extended/hadronic/Hadr07/CMakeLists.txt | 5 +- examples/extended/hadronic/Hadr07/Hadr07.cc | 18 + examples/extended/hadronic/Hadr07/History | 8 + examples/extended/hadronic/Hadr07/Na22.mac | 4 +- examples/extended/hadronic/Hadr07/README | 14 +- examples/extended/hadronic/Hadr07/alpha.mac | 4 +- .../extended/hadronic/Hadr07/envHadronic.csh | 10 +- .../extended/hadronic/Hadr07/envHadronic.sh | 24 +- examples/extended/hadronic/Hadr07/hadr07.in | 3 - examples/extended/hadronic/Hadr07/hadr07.out | 166 +- examples/extended/hadronic/Hadr07/water.mac | 2 +- .../extended/hadronic/Hadr08/CMakeLists.txt | 5 +- examples/extended/hadronic/Hadr08/Hadr08.cc | 18 +- examples/extended/hadronic/Hadr08/History | 3 + examples/extended/hadronic/Hadr09/.README.txt | 53 + .../extended/hadronic/Hadr09/CMakeLists.txt | 60 + examples/extended/hadronic/Hadr09/GNUmakefile | 12 + examples/extended/hadronic/Hadr09/Hadr09.cc | 268 + examples/extended/hadronic/Hadr09/History | 19 + examples/extended/hadronic/Hadr09/README | 39 + examples/extended/hadronic/Hadr09/hadr09.in | 1 + .../Hadr09/include/HadronicGenerator.hh | 154 + .../hadronic/Hadr09/src/HadronicGenerator.cc | 756 + examples/extended/hadronic/History | 23 +- .../hadronic/NeutronSource/.README.txt | 14 +- .../hadronic/NeutronSource/CMakeLists.txt | 5 +- .../extended/hadronic/NeutronSource/History | 9 + .../hadronic/NeutronSource/NeutronSource.cc | 18 + .../hadronic/NeutronSource/NeutronSource.out | 475 +- .../extended/hadronic/NeutronSource/README | 11 +- .../hadronic/NeutronSource/envHadronic.csh | 10 +- .../hadronic/NeutronSource/envHadronic.sh | 24 +- .../hadronic/NeutronSource/neutronSource.in | 2 - .../extended/hadronic/NeutronSource/run1.mac | 5 +- examples/extended/hadronic/README | 7 + examples/extended/medical/CMakeLists.txt | 5 +- .../extended/medical/DICOM/CMakeLists.txt | 9 +- examples/extended/medical/DICOM/DICOM.cc | 19 +- examples/extended/medical/DICOM/History | 12 +- examples/extended/medical/DICOM/README | 2 +- .../medical/DICOM/dicomReader/CMakeLists.txt | 7 +- .../dicomReader/cmake/DICOMUtilities.cmake | 25 +- .../medical/DICOM/include/DicomEventAction.hh | 2 +- .../medical/DICOM/include/DicomHandler.hh | 2 +- .../DicomPhantomParameterisationColour.hh | 0 .../include/DicomPrimaryGeneratorAction.hh | 2 +- .../medical/DICOM/include/DicomRun.hh | 8 +- examples/extended/medical/DICOM/run.out | 162 +- .../medical/DICOM/share/IM-0003-0001.dcm | Bin .../medical/DICOM/share/IM-0003-0002.dcm | Bin .../medical/DICOM/share/IM-0003-0003.dcm | Bin .../medical/DICOM/share/IM-0003-0004.dcm | Bin .../medical/DICOM/share/IM-0003-0005.dcm | Bin .../medical/DICOM/share/IM-0003-0006.dcm | Bin .../medical/DICOM/share/IM-0003-0007.dcm | Bin .../medical/DICOM/share/IM-0003-0008.dcm | Bin .../medical/DICOM/share/IM-0003-0009.dcm | Bin .../medical/DICOM/share/IM-0003-0010.dcm | Bin .../medical/DICOM/src/DicomEventAction.cc | 2 +- .../src/DicomPhantomParameterisationColour.cc | 0 .../DICOM/src/DicomPrimaryGeneratorAction.cc | 2 +- .../extended/medical/DICOM2/CMakeLists.txt | 5 +- examples/extended/medical/DICOM2/History | 6 + examples/extended/medical/DICOM2/dicom2.cc | 15 +- .../extended/medical/DICOM2/src/Dicom2Run.cc | 4 +- .../medical/GammaTherapy/CMakeLists.txt | 5 +- .../medical/GammaTherapy/GammaTherapy.cc | 12 +- .../medical/GammaTherapy/GammaTherapy.out | 98 +- .../extended/medical/GammaTherapy/History | 51 +- .../include/ActionInitialization.hh | 13 +- .../medical/GammaTherapy/include/Run.hh | 41 +- .../medical/GammaTherapy/include/RunAction.hh | 23 +- .../GammaTherapy/src/ActionInitialization.cc | 19 +- .../extended/medical/GammaTherapy/src/Run.cc | 505 +- .../medical/GammaTherapy/src/RunAction.cc | 51 +- examples/extended/medical/History | 8 +- examples/extended/medical/dna/CMakeLists.txt | 5 +- examples/extended/medical/dna/History | 3 + examples/extended/medical/dna/README | 4 +- .../extended/medical/dna/chem1/CMakeLists.txt | 5 +- examples/extended/medical/dna/chem1/History | 4 + examples/extended/medical/dna/chem1/chem1.cc | 25 +- examples/extended/medical/dna/chem1/chem1.out | 414 +- .../dna/chem1/include/CommandLineParser.hh | 0 .../dna/chem1/src/CommandLineParser.cc | 0 .../extended/medical/dna/chem2/CMakeLists.txt | 5 +- examples/extended/medical/dna/chem2/History | 4 + examples/extended/medical/dna/chem2/chem2.cc | 44 +- examples/extended/medical/dna/chem2/chem2.out | 172 +- .../dna/chem2/include/CommandLineParser.hh | 0 .../dna/chem2/src/CommandLineParser.cc | 0 .../extended/medical/dna/chem3/CMakeLists.txt | 5 +- examples/extended/medical/dna/chem3/History | 4 + examples/extended/medical/dna/chem3/chem3.cc | 34 +- examples/extended/medical/dna/chem3/chem3.out | 58 +- .../dna/chem3/include/CommandLineParser.hh | 0 .../dna/chem3/src/CommandLineParser.cc | 0 .../extended/medical/dna/chem4/CMakeLists.txt | 5 +- .../extended/medical/dna/chem4/GNUmakefile | 0 examples/extended/medical/dna/chem4/History | 31 +- examples/extended/medical/dna/chem4/README | 0 examples/extended/medical/dna/chem4/beam.in | 0 examples/extended/medical/dna/chem4/chem4.cc | 72 +- examples/extended/medical/dna/chem4/chem4.out | 34 +- .../dna/chem4/include/ActionInitialization.hh | 0 .../dna/chem4/include/CommandLineParser.hh | 0 .../dna/chem4/include/DetectorConstruction.hh | 0 .../medical/dna/chem4/include/PhysicsList.hh | 0 .../chem4/include/PrimaryGeneratorAction.hh | 0 .../dna/chem4/include/PrimaryKiller.hh | 0 .../extended/medical/dna/chem4/include/Run.hh | 0 .../medical/dna/chem4/include/RunAction.hh | 0 .../medical/dna/chem4/include/ScoreSpecies.hh | 0 .../dna/chem4/include/StackingAction.hh | 0 .../medical/dna/chem4/plot/CMakeLists.txt | 15 +- .../dna/chem4/src/ActionInitialization.cc | 0 .../dna/chem4/src/CommandLineParser.cc | 0 .../dna/chem4/src/DetectorConstruction.cc | 0 .../dna/chem4/src/PrimaryGeneratorAction.cc | 0 .../medical/dna/chem4/src/PrimaryKiller.cc | 0 .../extended/medical/dna/chem4/src/Run.cc | 0 .../medical/dna/chem4/src/RunAction.cc | 0 .../medical/dna/chem4/src/ScoreSpecies.cc | 0 .../medical/dna/chem4/src/StackingAction.cc | 0 examples/extended/medical/dna/chem4/vis.mac | 0 .../extended/medical/dna/chem5/CMakeLists.txt | 5 +- .../extended/medical/dna/chem5/GNUmakefile | 0 examples/extended/medical/dna/chem5/History | 7 +- examples/extended/medical/dna/chem5/README | 0 examples/extended/medical/dna/chem5/beam.in | 0 examples/extended/medical/dna/chem5/chem5.cc | 74 +- .../dna/chem5/include/ActionInitialization.hh | 0 .../dna/chem5/include/CommandLineParser.hh | 0 .../dna/chem5/include/DetectorConstruction.hh | 0 .../medical/dna/chem5/include/PhysicsList.hh | 0 .../chem5/include/PrimaryGeneratorAction.hh | 0 .../dna/chem5/include/PrimaryKiller.hh | 0 .../extended/medical/dna/chem5/include/Run.hh | 0 .../medical/dna/chem5/include/RunAction.hh | 0 .../medical/dna/chem5/include/ScoreSpecies.hh | 0 .../dna/chem5/include/StackingAction.hh | 0 .../dna/chem5/src/ActionInitialization.cc | 0 .../dna/chem5/src/CommandLineParser.cc | 0 .../dna/chem5/src/DetectorConstruction.cc | 0 .../dna/chem5/src/PrimaryGeneratorAction.cc | 0 .../medical/dna/chem5/src/PrimaryKiller.cc | 0 .../extended/medical/dna/chem5/src/Run.cc | 0 .../medical/dna/chem5/src/RunAction.cc | 0 .../medical/dna/chem5/src/ScoreSpecies.cc | 0 .../medical/dna/chem5/src/StackingAction.cc | 0 examples/extended/medical/dna/chem5/vis.mac | 0 .../extended/medical/dna/chem6/.README.txt | 43 +- .../extended/medical/dna/chem6/CMakeLists.txt | 5 +- .../extended/medical/dna/chem6/GNUmakefile | 0 examples/extended/medical/dna/chem6/History | 6 + examples/extended/medical/dna/chem6/README | 0 examples/extended/medical/dna/chem6/beam.in | 0 .../extended/medical/dna/chem6/beam_HCP.in | 0 examples/extended/medical/dna/chem6/chem6.cc | 14 +- .../dna/chem6/include/ActionInitialization.hh | 0 .../dna/chem6/include/DetectorConstruction.hh | 0 .../medical/dna/chem6/include/PhysicsList.hh | 0 .../chem6/include/PrimaryGeneratorAction.hh | 0 .../dna/chem6/include/PrimaryKiller.hh | 0 .../extended/medical/dna/chem6/include/Run.hh | 0 .../medical/dna/chem6/include/RunAction.hh | 0 .../medical/dna/chem6/include/ScoreLET.hh | 0 .../medical/dna/chem6/include/ScoreSpecies.hh | 0 .../dna/chem6/include/StackingAction.hh | 0 .../dna/chem6/include/TimeStepAction.hh | 0 .../extended/medical/dna/chem6/plotG_LET.C | 0 .../extended/medical/dna/chem6/plotG_time.C | 0 .../dna/chem6/src/ActionInitialization.cc | 0 .../dna/chem6/src/DetectorConstruction.cc | 0 .../medical/dna/chem6/src/PhysicsList.cc | 0 .../dna/chem6/src/PrimaryGeneratorAction.cc | 0 .../medical/dna/chem6/src/PrimaryKiller.cc | 0 .../extended/medical/dna/chem6/src/Run.cc | 0 .../medical/dna/chem6/src/ScoreLET.cc | 0 .../medical/dna/chem6/src/StackingAction.cc | 0 .../medical/dna/chem6/src/TimeStepAction.cc | 0 .../medical/dna/clustering/CMakeLists.txt | 5 +- .../extended/medical/dna/clustering/History | 5 +- .../medical/dna/clustering/clustering.cc | 20 +- .../medical/dna/clustering/clustering.out | 18 +- .../medical/dna/dnadamage1/.README.txt | 0 .../medical/dna/dnadamage1/CMakeLists.txt | 5 +- .../medical/dna/dnadamage1/GNUmakefile | 0 .../extended/medical/dna/dnadamage1/History | 3 + .../medical/dna/dnadamage1/README.txt | 0 .../medical/dna/dnadamage1/analysis.C | 0 .../medical/dna/dnadamage1/dnadamage1.cc | 32 +- .../medical/dna/dnadamage1/dnadamage1.in | 0 .../include/ActionInitialization.hh | 0 .../dna/dnadamage1/include/DNAParser.hh | 0 .../dna/dnadamage1/include/DNAVolumeType.hh | 0 .../include/DetectorConstruction.hh | 0 .../include/ITTrackingInteractivity.hh | 0 .../dna/dnadamage1/include/ParallelWorld.hh | 0 .../dna/dnadamage1/include/PhysicsList.hh | 0 .../include/PrimaryGeneratorAction.hh | 0 .../dna/dnadamage1/include/RunAction.hh | 0 .../dna/dnadamage1/include/StackingAction.hh | 0 .../dna/dnadamage1/include/SteppingAction.hh | 0 .../dna/dnadamage1/include/TimeStepAction.hh | 0 .../medical/dna/dnadamage1/molecule.C | 0 .../extended/medical/dna/dnadamage1/plot.C | 0 .../dnadamage1/src/ActionInitialization.cc | 0 .../dnadamage1/src/DetectorConstruction.cc | 0 .../dnadamage1/src/ITTrackingInteractivity.cc | 0 .../dna/dnadamage1/src/ParallelWorld.cc | 0 .../medical/dna/dnadamage1/src/PhysicsList.cc | 0 .../dnadamage1/src/PrimaryGeneratorAction.cc | 0 .../medical/dna/dnadamage1/src/RunAction.cc | 0 .../dna/dnadamage1/src/StackingAction.cc | 0 .../dna/dnadamage1/src/SteppingAction.cc | 0 .../dna/dnadamage1/src/TimeStepAction.cc | 0 .../extended/medical/dna/dnadamage1/vis.mac | 0 .../medical/dna/dnaphysics/CMakeLists.txt | 5 +- .../medical/dna/dnaphysics/GNUmakefile | 0 .../extended/medical/dna/dnaphysics/History | 39 +- .../medical/dna/dnaphysics/dnaphysics.cc | 12 +- .../medical/dna/dnaphysics/dnaphysics.in | 0 .../medical/dna/dnaphysics/dnaphysics.out | 97 +- .../include/DetectorConstruction.hh | 0 .../dna/dnaphysics/include/PhysicsList.hh | 0 .../include/PrimaryGeneratorAction.hh | 0 .../dna/dnaphysics/include/RunAction.hh | 0 .../dna/dnaphysics/include/SteppingAction.hh | 0 .../extended/medical/dna/dnaphysics/plot.C | 0 .../dnaphysics/src/DetectorConstruction.cc | 0 .../medical/dna/dnaphysics/src/PhysicsList.cc | 0 .../dnaphysics/src/PrimaryGeneratorAction.cc | 0 .../medical/dna/dnaphysics/src/RunAction.cc | 0 .../dna/dnaphysics/src/SteppingAction.cc | 0 .../extended/medical/dna/dnaphysics/vis.mac | 0 .../extended/medical/dna/icsd/CMakeLists.txt | 5 +- examples/extended/medical/dna/icsd/History | 5 +- examples/extended/medical/dna/icsd/icsd.cc | 12 +- examples/extended/medical/dna/icsd/icsd.out | 21 +- .../extended/medical/dna/mfp/CMakeLists.txt | 5 +- examples/extended/medical/dna/mfp/mfp.out | 192 +- .../medical/dna/microdosimetry/CMakeLists.txt | 5 +- .../medical/dna/microdosimetry/GNUmakefile | 0 .../medical/dna/microdosimetry/History | 13 +- .../include/CommandLineParser.hh | 0 .../include/DetectorConstruction.hh | 0 .../dna/microdosimetry/include/PhysicsList.hh | 0 .../include/PrimaryGeneratorAction.hh | 0 .../dna/microdosimetry/include/RunAction.hh | 0 .../microdosimetry/include/SteppingAction.hh | 0 .../dna/microdosimetry/microdosimetry.cc | 19 +- .../dna/microdosimetry/microdosimetry.in | 0 .../dna/microdosimetry/microdosimetry.out | 66 +- .../medical/dna/microdosimetry/plot.C | 0 .../microdosimetry/src/CommandLineParser.cc | 0 .../src/DetectorConstruction.cc | 0 .../dna/microdosimetry/src/PhysicsList.cc | 0 .../src/PrimaryGeneratorAction.cc | 0 .../dna/microdosimetry/src/RunAction.cc | 0 .../dna/microdosimetry/src/SteppingAction.cc | 0 .../medical/dna/microprox/CMakeLists.txt | 5 +- .../extended/medical/dna/microprox/History | 3 + .../medical/dna/microprox/microprox.cc | 23 +- .../extended/medical/dna/microprox/plot.C | 0 .../medical/dna/microyz/CMakeLists.txt | 5 +- examples/extended/medical/dna/microyz/History | 7 +- .../extended/medical/dna/microyz/microyz.cc | 23 +- .../extended/medical/dna/microyz/microyz.out | 36 +- examples/extended/medical/dna/microyz/plot.C | 0 .../medical/dna/neuron/CMakeLists.txt | 5 +- examples/extended/medical/dna/neuron/History | 3 + .../extended/medical/dna/neuron/neuron.cc | 20 +- .../extended/medical/dna/neuron/neuron.out | 101 +- .../medical/dna/pdb4dna/CMakeLists.txt | 5 +- examples/extended/medical/dna/pdb4dna/History | 17 +- .../dna/pdb4dna/include/CommandLineParser.hh | 0 .../extended/medical/dna/pdb4dna/pdb4dna.out | 17 +- .../dna/pdb4dna/src/CommandLineParser.cc | 0 .../extended/medical/dna/range/CMakeLists.txt | 5 +- examples/extended/medical/dna/range/range.out | 115 +- .../medical/dna/slowing/CMakeLists.txt | 5 +- examples/extended/medical/dna/slowing/History | 5 +- .../extended/medical/dna/slowing/slowing.cc | 12 +- .../extended/medical/dna/slowing/slowing.out | 26 +- .../medical/dna/splitting/CMakeLists.txt | 5 +- .../extended/medical/dna/splitting/History | 5 +- .../dna/splitting/include/PhysicsList.hh | 0 .../include/PrimaryGeneratorAction.hh | 0 .../medical/dna/splitting/splitting.cc | 20 +- .../dna/splitting/src/DetectorConstruction.cc | 0 .../splitting/src/PrimaryGeneratorAction.cc | 0 .../medical/dna/splitting/src/SplitProcess.cc | 0 .../dna/splitting/src/SteppingAction.cc | 0 .../dna/splitting/src/TrackingAction.cc | 0 .../medical/dna/spower/CMakeLists.txt | 5 +- .../extended/medical/dna/spower/spower.out | 29 +- .../medical/dna/svalue/CMakeLists.txt | 5 +- .../extended/medical/dna/svalue/svalue.out | 83 +- .../medical/dna/wholeNuclearDNA/.README.txt | 0 .../dna/wholeNuclearDNA/CMakeLists.txt | 5 +- .../medical/dna/wholeNuclearDNA/History | 5 +- .../medical/dna/wholeNuclearDNA/README | 4 +- .../medical/dna/wholeNuclearDNA/chromo1.dat | 0 .../medical/dna/wholeNuclearDNA/chromo10.dat | 0 .../medical/dna/wholeNuclearDNA/chromo11.dat | 0 .../medical/dna/wholeNuclearDNA/chromo12.dat | 0 .../medical/dna/wholeNuclearDNA/chromo13.dat | 0 .../medical/dna/wholeNuclearDNA/chromo14.dat | 0 .../medical/dna/wholeNuclearDNA/chromo15.dat | 0 .../medical/dna/wholeNuclearDNA/chromo16.dat | 0 .../medical/dna/wholeNuclearDNA/chromo17.dat | 0 .../medical/dna/wholeNuclearDNA/chromo18.dat | 0 .../medical/dna/wholeNuclearDNA/chromo19.dat | 0 .../medical/dna/wholeNuclearDNA/chromo2.dat | 0 .../medical/dna/wholeNuclearDNA/chromo20.dat | 0 .../medical/dna/wholeNuclearDNA/chromo21.dat | 0 .../medical/dna/wholeNuclearDNA/chromo22.dat | 0 .../medical/dna/wholeNuclearDNA/chromo3.dat | 0 .../medical/dna/wholeNuclearDNA/chromo4.dat | 0 .../medical/dna/wholeNuclearDNA/chromo5.dat | 0 .../medical/dna/wholeNuclearDNA/chromo6.dat | 0 .../medical/dna/wholeNuclearDNA/chromo7.dat | 0 .../medical/dna/wholeNuclearDNA/chromo8.dat | 0 .../medical/dna/wholeNuclearDNA/chromo9.dat | 0 .../medical/dna/wholeNuclearDNA/chromoX.dat | 0 .../medical/dna/wholeNuclearDNA/chromoY.dat | 0 .../include/ActionInitialization.hh | 0 .../dna/wholeNuclearDNA/include/Analysis.hh | 0 .../include/ChromosomeParameterisation.hh | 0 .../include/CommandLineParser.hh | 0 .../include/DetectorConstruction.hh | 0 .../include/G4ElectronCapture.hh | 0 .../wholeNuclearDNA/include/PhysicsList.hh | 0 .../include/PrimaryGeneratorAction.hh | 0 .../dna/wholeNuclearDNA/include/RunAction.hh | 0 .../wholeNuclearDNA/include/SteppingAction.hh | 0 .../medical/dna/wholeNuclearDNA/plot.C | 0 .../src/ActionInitialization.cc | 0 .../src/ChromosomeParameterisation.cc | 0 .../wholeNuclearDNA/src/CommandLineParser.cc | 0 .../src/DetectorConstruction.cc | 0 .../wholeNuclearDNA/src/G4ElectronCapture.cc | 0 .../dna/wholeNuclearDNA/src/PhysicsList.cc | 0 .../src/PrimaryGeneratorAction.cc | 0 .../dna/wholeNuclearDNA/src/RunAction.cc | 0 .../dna/wholeNuclearDNA/src/SteppingAction.cc | 0 .../medical/dna/wholeNuclearDNA/vis.mac | 0 .../dna/wholeNuclearDNA/wholeNuclearDNA.cc | 19 +- .../dna/wholeNuclearDNA/wholeNuclearDNA.in | 0 .../dna/wholeNuclearDNA/wholeNuclearDNA.out | 18 +- .../medical/dna/wvalue/CMakeLists.txt | 5 +- .../extended/medical/dna/wvalue/wvalue.out | 98 +- .../medical/electronScattering/CMakeLists.txt | 5 +- .../electronScattering/electronScattering.out | 29 +- .../medical/electronScattering2/.README.txt | 2 +- .../electronScattering2/CMakeLists.txt | 5 +- .../medical/electronScattering2/History | 25 +- .../medical/electronScattering2/README | 2 +- .../electronScattering2.cc | 12 +- .../electronScattering2.out | 531 +- .../medical/fanoCavity/CMakeLists.txt | 5 +- .../medical/fanoCavity/fanoCavity.out | 44 +- .../medical/fanoCavity2/CMakeLists.txt | 5 +- .../medical/fanoCavity2/fanoCavity2.out | 40 +- examples/extended/optical/CMakeLists.txt | 5 +- examples/extended/optical/History | 5 +- examples/extended/optical/LXe/.README.txt | 26 +- examples/extended/optical/LXe/CMakeLists.txt | 8 +- examples/extended/optical/LXe/History | 18 + examples/extended/optical/LXe/LXe.cc | 82 +- examples/extended/optical/LXe/LXe.in | 20 - examples/extended/optical/LXe/LXe.mac | 37 + examples/extended/optical/LXe/LXe.out | 1974 +- examples/extended/optical/LXe/README | 13 + examples/extended/optical/LXe/cerenkov.mac | 15 +- examples/extended/optical/LXe/gui.mac | 8 +- .../LXe/include/LXeActionInitialization.hh | 18 +- .../LXe/include/LXeDetectorConstruction.hh | 193 +- .../LXe/include/LXeDetectorMessenger.hh | 63 +- .../optical/LXe/include/LXeEventAction.hh | 137 +- .../optical/LXe/include/LXeEventMessenger.hh | 28 +- .../optical/LXe/include/LXeHistoManager.hh | 16 +- .../optical/LXe/include/LXeMainVolume.hh | 111 +- .../extended/optical/LXe/include/LXePMTHit.hh | 84 +- .../extended/optical/LXe/include/LXePMTSD.hh | 67 +- .../LXe/include/LXePrimaryGeneratorAction.hh | 16 +- .../extended/optical/LXe/include/LXeRun.hh | 101 +- .../optical/LXe/include/LXeRunAction.hh | 23 +- .../optical/LXe/include/LXeScintHit.hh | 53 +- .../optical/LXe/include/LXeScintSD.hh | 22 +- .../optical/LXe/include/LXeStackingAction.hh | 22 +- .../optical/LXe/include/LXeSteppingAction.hh | 30 +- .../LXe/include/LXeSteppingMessenger.hh | 20 +- .../optical/LXe/include/LXeTrackingAction.hh | 20 +- .../optical/LXe/include/LXeTrajectory.hh | 54 +- .../LXe/include/LXeUserTrackInformation.hh | 53 +- .../optical/LXe/include/LXeWLSFiber.hh | 67 +- .../optical/LXe/include/LXeWLSSlab.hh | 40 +- examples/extended/optical/LXe/photon.mac | 4 +- examples/extended/optical/LXe/reviewEvent.mac | 7 - .../LXe/src/LXeActionInitialization.cc | 17 +- .../LXe/src/LXeDetectorConstruction.cc | 507 +- .../optical/LXe/src/LXeDetectorMessenger.cc | 171 +- .../optical/LXe/src/LXeEventAction.cc | 241 +- .../optical/LXe/src/LXeEventMessenger.cc | 48 +- .../optical/LXe/src/LXeHistoManager.cc | 62 +- .../extended/optical/LXe/src/LXeMainVolume.cc | 341 +- .../extended/optical/LXe/src/LXePMTHit.cc | 67 +- examples/extended/optical/LXe/src/LXePMTSD.cc | 149 +- .../LXe/src/LXePrimaryGeneratorAction.cc | 32 +- examples/extended/optical/LXe/src/LXeRun.cc | 148 +- .../extended/optical/LXe/src/LXeRunAction.cc | 24 +- .../extended/optical/LXe/src/LXeScintHit.cc | 42 +- .../extended/optical/LXe/src/LXeScintSD.cc | 63 +- .../optical/LXe/src/LXeStackingAction.cc | 42 +- .../optical/LXe/src/LXeSteppingAction.cc | 221 +- .../optical/LXe/src/LXeSteppingMessenger.cc | 27 +- .../optical/LXe/src/LXeTrackingAction.cc | 61 +- .../extended/optical/LXe/src/LXeTrajectory.cc | 123 +- .../LXe/src/LXeUserTrackInformation.cc | 15 +- .../extended/optical/LXe/src/LXeWLSFiber.cc | 99 +- .../extended/optical/LXe/src/LXeWLSSlab.cc | 81 +- examples/extended/optical/LXe/vis.mac | 2 +- examples/extended/optical/LXe/wls.mac | 13 +- .../extended/optical/OpNovice/.README.txt | 28 +- .../extended/optical/OpNovice/CMakeLists.txt | 5 +- examples/extended/optical/OpNovice/History | 12 + .../extended/optical/OpNovice/OpNovice.cc | 106 +- .../extended/optical/OpNovice/OpNovice.err | 0 .../extended/optical/OpNovice/OpNovice.in | 14 +- .../extended/optical/OpNovice/OpNovice.out | 12955 +++- examples/extended/optical/OpNovice/README | 33 +- examples/extended/optical/OpNovice/gui.mac | 14 +- .../include/OpNoviceActionInitialization.hh | 15 +- .../include/OpNoviceDetectorConstruction.hh | 29 +- .../OpNovice/include/OpNoviceEventAction.hh | 64 + .../include/OpNovicePrimaryGeneratorAction.hh | 25 +- .../OpNovicePrimaryGeneratorMessenger.hh | 25 +- .../optical/OpNovice/include/OpNoviceRun.hh | 105 + .../OpNovice/include/OpNoviceRunAction.hh | 25 +- .../include/OpNoviceStackingAction.hh | 23 +- .../include/OpNoviceSteppingAction.hh | 22 +- .../extended/optical/OpNovice/optPhoton.mac | 9 +- .../src/OpNoviceActionInitialization.cc | 19 +- .../src/OpNoviceDetectorConstruction.cc | 389 +- .../OpNovice/src/OpNoviceEventAction.cc | 78 + .../src/OpNovicePrimaryGeneratorAction.cc | 67 +- .../src/OpNovicePrimaryGeneratorMessenger.cc | 41 +- .../optical/OpNovice/src/OpNoviceRun.cc | 179 + .../optical/OpNovice/src/OpNoviceRunAction.cc | 51 +- .../OpNovice/src/OpNoviceStackingAction.cc | 45 +- .../OpNovice/src/OpNoviceSteppingAction.cc | 87 +- .../extended/optical/OpNovice2/.README.txt | 57 +- .../extended/optical/OpNovice2/CMakeLists.txt | 15 +- examples/extended/optical/OpNovice2/History | 20 + .../extended/optical/OpNovice2/OpNovice2.cc | 61 +- .../OpNovice2/{OpNovice2.in => OpNovice2.mac} | 3 + .../extended/optical/OpNovice2/OpNovice2.out | 529 +- examples/extended/optical/OpNovice2/README | 62 +- .../extended/optical/OpNovice2/boundary.mac | 211 + .../extended/optical/OpNovice2/electron.mac | 17 +- .../extended/optical/OpNovice2/fresnel.mac | 37 + .../extended/optical/OpNovice2/glisur.mac | 94 - .../OpNovice2/include/ActionInitialization.hh | 11 +- .../OpNovice2/include/DetectorConstruction.hh | 132 +- .../OpNovice2/include/DetectorMessenger.hh | 52 +- .../optical/OpNovice2/include/HistoManager.hh | 15 +- .../include/PrimaryGeneratorAction.hh | 31 +- .../include/PrimaryGeneratorMessenger.hh | 28 +- .../extended/optical/OpNovice2/include/Run.hh | 294 +- .../optical/OpNovice2/include/RunAction.hh | 26 +- .../OpNovice2/include/SteppingAction.hh | 17 +- .../OpNovice2/include/TrackInformation.hh | 41 +- .../OpNovice2/include/TrackingAction.hh | 9 +- .../optical/OpNovice2/scint_by_particle.mac | 15 +- .../OpNovice2/src/ActionInitialization.cc | 7 +- .../OpNovice2/src/DetectorConstruction.cc | 116 +- .../OpNovice2/src/DetectorMessenger.cc | 302 +- .../optical/OpNovice2/src/HistoManager.cc | 117 +- .../OpNovice2/src/PrimaryGeneratorAction.cc | 95 +- .../src/PrimaryGeneratorMessenger.cc | 44 +- .../extended/optical/OpNovice2/src/Run.cc | 538 +- .../optical/OpNovice2/src/RunAction.cc | 222 +- .../optical/OpNovice2/src/SteppingAction.cc | 439 +- .../optical/OpNovice2/src/TrackInformation.cc | 22 +- .../optical/OpNovice2/src/TrackingAction.cc | 30 +- .../extended/optical/OpNovice2/unified.mac | 86 - examples/extended/optical/OpNovice2/wls.mac | 27 +- examples/extended/optical/wls/.README.txt | 10 +- examples/extended/optical/wls/CMakeLists.txt | 6 +- examples/extended/optical/wls/History | 11 + examples/extended/optical/wls/README | 10 +- examples/extended/optical/wls/Sr90.mac | 15 +- .../wls/include/WLSActionInitialization.hh | 21 +- .../wls/include/WLSDetectorConstruction.hh | 257 +- .../wls/include/WLSDetectorMessenger.hh | 64 +- .../optical/wls/include/WLSEventAction.hh | 52 +- .../wls/include/WLSEventActionMessenger.hh | 23 +- .../optical/wls/include/WLSMaterials.hh | 45 +- .../optical/wls/include/WLSPhotonDetHit.hh | 71 +- .../optical/wls/include/WLSPhotonDetSD.hh | 22 +- .../wls/include/WLSPrimaryGeneratorAction.hh | 55 +- .../include/WLSPrimaryGeneratorMessenger.hh | 29 +- .../extended/optical/wls/include/WLSRun.hh | 156 + .../optical/wls/include/WLSRunAction.hh | 34 +- .../optical/wls/include/WLSStackingAction.hh | 23 +- .../optical/wls/include/WLSSteppingAction.hh | 100 +- .../wls/include/WLSSteppingActionMessenger.hh | 21 +- .../optical/wls/include/WLSTrackingAction.hh | 14 +- .../optical/wls/include/WLSTrajectory.hh | 124 +- .../optical/wls/include/WLSTrajectoryPoint.hh | 84 +- .../wls/include/WLSUserTrackInformation.hh | 58 +- examples/extended/optical/wls/init.in | 24 - .../wls/src/WLSActionInitialization.cc | 33 +- .../wls/src/WLSDetectorConstruction.cc | 963 +- .../optical/wls/src/WLSDetectorMessenger.cc | 311 +- .../optical/wls/src/WLSEventAction.cc | 113 +- .../wls/src/WLSEventActionMessenger.cc | 19 +- .../extended/optical/wls/src/WLSMaterials.cc | 310 +- .../optical/wls/src/WLSPhotonDetHit.cc | 16 +- .../optical/wls/src/WLSPhotonDetSD.cc | 79 +- .../wls/src/WLSPrimaryGeneratorAction.cc | 225 +- .../wls/src/WLSPrimaryGeneratorMessenger.cc | 48 +- examples/extended/optical/wls/src/WLSRun.cc | 240 + .../extended/optical/wls/src/WLSRunAction.cc | 65 +- .../optical/wls/src/WLSRunActionMessenger.cc | 103 - .../optical/wls/src/WLSStackingAction.cc | 37 +- .../optical/wls/src/WLSSteppingAction.cc | 519 +- .../wls/src/WLSSteppingActionMessenger.cc | 26 +- .../optical/wls/src/WLSTrackingAction.cc | 27 +- .../extended/optical/wls/src/WLSTrajectory.cc | 220 +- .../optical/wls/src/WLSTrajectoryPoint.cc | 106 +- .../wls/src/WLSUserTrackInformation.cc | 81 +- examples/extended/optical/wls/vis.mac | 89 +- examples/extended/optical/wls/wls.cc | 98 +- examples/extended/optical/wls/wls.in | 45 +- examples/extended/optical/wls/wls.out | 474 +- examples/extended/parallel/CMakeLists.txt | 5 +- examples/extended/parallel/History | 7 +- examples/extended/parallel/MPI/CMakeLists.txt | 5 +- examples/extended/parallel/MPI/History | 4 + .../parallel/MPI/examples/CMakeLists.txt | 5 +- .../MPI/examples/exMPI01/CMakeLists.txt | 5 +- .../MPI/examples/exMPI02/CMakeLists.txt | 5 +- .../MPI/examples/exMPI03/CMakeLists.txt | 5 +- .../MPI/examples/exMPI04/CMakeLists.txt | 5 +- .../parallel/MPI/source/CMakeLists.txt | 7 +- .../include/G4RootMpiAnalysisManager.hh | 22 +- .../include/G4RootMpiNtupleFileManager.hh | 80 + .../include/G4RootMpiNtupleManager.hh | 18 +- .../include/G4RootMpiPNtupleDescription.hh | 22 +- .../include/G4RootMpiPNtupleManager.hh | 92 +- .../analysis/src/G4RootMpiAnalysisManager.cc | 309 +- .../src/G4RootMpiNtupleFileManager.cc | 339 + .../analysis/src/G4RootMpiNtupleManager.cc | 34 +- .../analysis/src/G4RootMpiPNtupleManager.cc | 182 +- .../extended/parallel/TBB/B2b/CMakeLists.txt | 5 +- .../parallel/TBB/B2b/DevelopmentStatus.txt | 110 - examples/extended/parallel/TBB/CMakeLists.txt | 5 +- .../parallel/ThreadsafeScorers/.README.txt | 76 +- .../parallel/ThreadsafeScorers/CMakeLists.txt | 5 +- .../parallel/ThreadsafeScorers/History | 3 + .../parallel/ThreadsafeScorers/README | 66 +- .../parallel/ThreadsafeScorers/run.mac | 24 + .../src/TSPrimaryGeneratorAction.cc | 3 +- .../parallel/ThreadsafeScorers/src/TSRun.cc | 31 +- .../ThreadsafeScorers/src/TSRunAction.cc | 8 +- .../ThreadsafeScorers/threadsafe-scorers.out | 1768 +- .../parallel/ThreadsafeScorers/ts_scorers.cc | 71 +- examples/extended/parallel/TopC/History | 3 + .../extended/parallel/TopC/info/README.html | 8 +- .../extended/parameterisations/.README.txt | 6 + .../extended/parameterisations/CMakeLists.txt | 6 +- examples/extended/parameterisations/History | 13 +- .../parameterisations/Par01/CMakeLists.txt | 5 +- .../extended/parameterisations/Par01/History | 13 +- .../parameterisations/Par01/examplePar01.cc | 20 +- .../parameterisations/Par01/examplePar01.out | 3714 +- .../parameterisations/Par02/CMakeLists.txt | 5 +- .../extended/parameterisations/Par02/History | 3 + .../parameterisations/Par02/examplePar02.cc | 22 +- .../parameterisations/Par02/examplePar02.out | 72 +- .../parameterisations/Par03/.README.txt | 134 + .../parameterisations/Par03/CMakeLists.txt | 67 + .../parameterisations/Par03/GNUmakefile | 16 + .../extended/parameterisations/Par03/History | 25 + .../extended/parameterisations/Par03/README | 130 + .../parameterisations/Par03/examplePar03.cc | 142 + .../parameterisations/Par03/examplePar03.in | 38 + .../include/Par03ActionInitialisation.hh | 57 + .../include/Par03DetectorConstruction.hh | 111 + .../Par03/include/Par03DetectorMessenger.hh | 83 + .../Par03/include/Par03EMShowerMessenger.hh | 83 + .../Par03/include/Par03EMShowerModel.hh | 167 + .../Par03/include/Par03EventAction.hh | 68 + .../Par03/include/Par03Hit.hh | 148 + .../include/Par03PrimaryGeneratorAction.hh | 55 + .../Par03/include/Par03RunAction.hh | 60 + .../Par03/include/Par03SensitiveDetector.hh | 85 + .../Par03/src/Par03ActionInitialisation.cc | 33 +- .../Par03/src/Par03DetectorConstruction.cc | 284 + .../Par03/src/Par03DetectorMessenger.cc | 184 + .../Par03/src/Par03EMShowerMessenger.cc | 147 + .../Par03/src/Par03EMShowerModel.cc | 212 + .../Par03/src/Par03EventAction.cc | 159 + .../parameterisations/Par03/src/Par03Hit.cc | 169 + .../Par03/src/Par03PrimaryGeneratorAction.cc | 58 + .../Par03/src/Par03RunAction.cc | 117 + .../Par03/src/Par03SensitiveDetector.cc | 172 + .../extended/parameterisations/Par03/vis.mac | 79 + examples/extended/parameterisations/README | 7 + .../parameterisations/gflash/CMakeLists.txt | 5 +- .../extended/parameterisations/gflash/History | 11 +- .../gflash/gflash1/CMakeLists.txt | 5 +- .../gflash/gflash1/ExGflash1.cc | 44 +- .../gflash/gflash2/CMakeLists.txt | 5 +- .../gflash/gflash2/ExGflash2.cc | 44 +- .../gflash/gflash3/CMakeLists.txt | 5 +- .../gflash/gflash3/ExGflash3.cc | 44 +- .../gflash/gflasha/CMakeLists.txt | 5 +- .../gflash/gflasha/ExGflasha.cc | 36 +- .../parameterisations/gflash/gflasha/History | 3 + examples/extended/persistency/CMakeLists.txt | 5 +- examples/extended/persistency/History | 13 +- .../extended/persistency/P01/CMakeLists.txt | 5 +- examples/extended/persistency/P01/History | 20 +- .../extended/persistency/P01/exampleP01.cc | 24 +- .../extended/persistency/P01/p01-read.out | 832 +- .../extended/persistency/P01/p01-write.out | 2058 +- .../extended/persistency/P02/CMakeLists.txt | 5 +- examples/extended/persistency/P02/History | 6 + .../extended/persistency/P02/exampleP02.cc | 16 +- .../extended/persistency/P03/CMakeLists.txt | 5 +- examples/extended/persistency/P03/History | 22 +- examples/extended/persistency/P03/batch.out | 18 +- examples/extended/persistency/P03/runAll.sh | 0 examples/extended/persistency/P03/textGeom.cc | 20 +- .../extended/persistency/gdml/CMakeLists.txt | 5 +- .../persistency/gdml/G01/CMakeLists.txt | 5 +- .../extended/persistency/gdml/G01/History | 11 +- .../extended/persistency/gdml/G01/g01.out | 148 +- .../persistency/gdml/G01/load_gdml.cc | 15 +- .../persistency/gdml/G02/CMakeLists.txt | 5 +- .../extended/persistency/gdml/G02/History | 6 + .../extended/persistency/gdml/G02/geotest.cc | 26 +- .../persistency/gdml/G03/CMakeLists.txt | 5 +- .../extended/persistency/gdml/G03/History | 6 + .../extended/persistency/gdml/G03/gdml_ext.cc | 24 +- .../persistency/gdml/G04/CMakeLists.txt | 5 +- .../extended/persistency/gdml/G04/History | 3 + .../extended/persistency/gdml/G04/g04.out | 138 +- .../extended/persistency/gdml/G04/gdml_det.cc | 16 +- examples/extended/physicslists/CMakeLists.txt | 7 +- examples/extended/physicslists/History | 7 + .../extensibleFactory/CMakeLists.txt | 13 +- .../physicslists/extensibleFactory/History | 6 +- .../extensibleFactory/extensibleFactory.cc | 12 +- .../extensibleFactory/extensibleFactory.out | 136 +- .../shared/include/ActionInitialization.hh | 2 +- .../shared/include/DetectorConstruction.hh | 8 +- .../shared/include/PrimaryGeneratorAction.hh | 10 +- .../shared/include/RunAction.hh | 8 +- .../shared/scripts/clean_files.sh | 4 +- .../shared/src/ActionInitialization.cc | 2 +- .../shared/src/DetectorConstruction.cc | 42 +- .../shared/src/PrimaryGeneratorAction.cc | 10 +- .../extensibleFactory/shared/src/RunAction.cc | 8 +- .../extensibleFactory/shared/src/ScreenSD.cc | 8 +- .../extended/physicslists/factory/.README.txt | 28 +- .../physicslists/factory/CMakeLists.txt | 13 +- .../extended/physicslists/factory/History | 6 +- examples/extended/physicslists/factory/README | 20 +- .../factory/factory-environment.out | 132 +- .../extended/physicslists/factory/factory.cc | 37 +- .../extended/physicslists/factory/factory.out | 168 +- .../shared/include/ActionInitialization.hh | 2 +- .../shared/include/DetectorConstruction.hh | 8 +- .../shared/include/PrimaryGeneratorAction.hh | 10 +- .../factory/shared/include/RunAction.hh | 8 +- .../factory/shared/scripts/clean_files.sh | 4 +- .../shared/src/ActionInitialization.cc | 2 +- .../shared/src/DetectorConstruction.cc | 42 +- .../shared/src/PrimaryGeneratorAction.cc | 10 +- .../factory/shared/src/RunAction.cc | 8 +- .../factory/shared/src/ScreenSD.cc | 8 +- .../physicslists/genericPL/.README.txt | 26 +- .../physicslists/genericPL/CMakeLists.txt | 15 +- .../physicslists/genericPL/FTFP_BERT.mac | 0 .../extended/physicslists/genericPL/History | 6 +- .../extended/physicslists/genericPL/README | 20 +- .../physicslists/genericPL/genericPL.cc | 31 +- .../physicslists/genericPL/genericPL.out | 74 +- .../shared/include/ActionInitialization.hh | 2 +- .../shared/include/DetectorConstruction.hh | 8 +- .../shared/include/PrimaryGeneratorAction.hh | 10 +- .../genericPL/shared/include/RunAction.hh | 8 +- .../genericPL/shared/scripts/clean_files.sh | 4 +- .../shared/src/ActionInitialization.cc | 2 +- .../shared/src/DetectorConstruction.cc | 42 +- .../shared/src/PrimaryGeneratorAction.cc | 10 +- .../genericPL/shared/src/RunAction.cc | 8 +- .../genericPL/shared/src/ScreenSD.cc | 8 +- examples/extended/physicslists/shared/History | 3 + .../shared/include/ActionInitialization.hh | 2 +- .../shared/include/DetectorConstruction.hh | 8 +- .../shared/include/PrimaryGeneratorAction.hh | 10 +- .../physicslists/shared/include/RunAction.hh | 8 +- .../shared/scripts/clean_files.sh | 4 +- .../shared/src/ActionInitialization.cc | 2 +- .../shared/src/DetectorConstruction.cc | 42 +- .../shared/src/PrimaryGeneratorAction.cc | 10 +- .../physicslists/shared/src/RunAction.cc | 8 +- .../physicslists/shared/src/ScreenSD.cc | 8 +- examples/extended/polarisation/CMakeLists.txt | 5 +- examples/extended/polarisation/History | 17 +- .../polarisation/Pol01/CMakeLists.txt | 5 +- examples/extended/polarisation/Pol01/History | 16 +- examples/extended/polarisation/Pol01/Pol01.cc | 34 +- .../extended/polarisation/Pol01/pol01.out | 70 +- .../radioactivedecay/Activation/.README.txt | 15 +- .../radioactivedecay/Activation/Activation.cc | 18 + .../radioactivedecay/Activation/Activation.in | 1 - .../Activation/Activation.out | 155 +- .../radioactivedecay/Activation/Bi209.mac | 19 +- .../Activation/CMakeLists.txt | 5 +- .../radioactivedecay/Activation/Co60.mac | 13 +- .../radioactivedecay/Activation/History | 8 + .../radioactivedecay/Activation/README | 12 +- .../radioactivedecay/Activation/debug.mac | 2 - .../Activation/envHadronic.csh | 10 +- .../Activation/envHadronic.sh | 24 +- .../radioactivedecay/Activation/plot1.C | 2 +- .../extended/radioactivedecay/CMakeLists.txt | 5 +- examples/extended/radioactivedecay/History | 11 +- .../radioactivedecay/rdecay01/.README.txt | 21 + .../radioactivedecay/rdecay01/CMakeLists.txt | 7 +- .../radioactivedecay/rdecay01/Cf238.mac | 5 +- .../radioactivedecay/rdecay01/Co60.mac | 8 +- .../radioactivedecay/rdecay01/Gd158.mac | 3 + .../radioactivedecay/rdecay01/History | 18 + .../radioactivedecay/rdecay01/No252.mac | 5 +- .../radioactivedecay/rdecay01/Po212.mac | 3 + .../extended/radioactivedecay/rdecay01/README | 21 + .../radioactivedecay/rdecay01/Ra228.mac | 3 + .../radioactivedecay/rdecay01/alpha.mac | 8 +- .../rdecay01/atomicDeexcitation.mac | 24 + .../radioactivedecay/rdecay01/debug.mac | 7 +- .../rdecay01/electronicCapture.mac | 8 +- .../radioactivedecay/rdecay01/fullChain.mac | 8 +- .../radioactivedecay/rdecay01/neutron.mac | 7 +- .../radioactivedecay/rdecay01/proton.mac | 5 +- .../radioactivedecay/rdecay01/rdecay01.out | 14 +- .../radioactivedecay/rdecay01/singleDecay.mac | 8 +- .../rdecay01/src/PhysicsList.cc | 2 + .../radioactivedecay/rdecay01/timeWindow.mac | 3 + .../rdecay01/timeWindowBiased.mac | 7 +- .../radioactivedecay/rdecay02/.README.txt | 4 +- .../radioactivedecay/rdecay02/CMakeLists.txt | 5 +- .../radioactivedecay/rdecay02/History | 7 +- .../extended/radioactivedecay/rdecay02/README | 4 +- .../rdecay02/macros/No252Test.mac | 6 +- .../rdecay02/macros/UserEvapDataBiTest.mac | 6 +- .../rdecay02/macros/UserRadDataPb210Test.mac | 8 +- .../radioactivedecay/rdecay02/macros/as74.mac | 8 +- .../radioactivedecay/rdecay02/macros/f24.mac | 14 +- .../rdecay02/macros/isotopes.mac | 12 +- .../radioactivedecay/rdecay02/macros/ne24.mac | 16 +- .../rdecay02/macros/neutron.mac | 4 +- .../rdecay02/macros/po201m.mac | 16 +- .../rdecay02/macros/proton-beam.mac | 12 +- .../rdecay02/macros/proton.mac | 4 +- .../rdecay02/macros/th234c-b.mac | 6 +- .../radioactivedecay/rdecay02/macros/u238.mac | 10 +- .../rdecay02/macros/u238b.mac | 14 +- .../rdecay02/macros/u238c.mac | 4 +- .../radioactivedecay/rdecay02/rdecay02.out | 137 +- examples/extended/runAndEvent/CMakeLists.txt | 5 +- examples/extended/runAndEvent/History | 11 +- .../extended/runAndEvent/RE01/CMakeLists.txt | 7 +- examples/extended/runAndEvent/RE01/History | 3 + examples/extended/runAndEvent/RE01/RE01.cc | 21 +- examples/extended/runAndEvent/RE01/sample.out | 21329 +++++-- .../extended/runAndEvent/RE02/CMakeLists.txt | 7 +- examples/extended/runAndEvent/RE02/History | 3 + examples/extended/runAndEvent/RE02/RE02.cc | 14 +- examples/extended/runAndEvent/RE02/run.out | 198 +- examples/extended/runAndEvent/RE02/run3.out | 312 +- examples/extended/runAndEvent/RE02/run4.out | 190 +- .../extended/runAndEvent/RE03/CMakeLists.txt | 7 +- examples/extended/runAndEvent/RE03/History | 3 + examples/extended/runAndEvent/RE03/RE03.cc | 12 +- .../extended/runAndEvent/RE04/CMakeLists.txt | 7 +- examples/extended/runAndEvent/RE04/History | 3 + examples/extended/runAndEvent/RE04/RE04.cc | 16 +- .../extended/runAndEvent/RE04/exampleRE04.out | 116 +- .../extended/runAndEvent/RE05/CMakeLists.txt | 5 +- examples/extended/runAndEvent/RE05/History | 3 + .../extended/runAndEvent/RE05/exampleRE05.cc | 55 +- .../extended/runAndEvent/RE05/exampleRE05.out | 248 +- .../extended/runAndEvent/RE06/CMakeLists.txt | 5 +- examples/extended/runAndEvent/RE06/History | 3 + .../extended/runAndEvent/RE06/exampleRE06.cc | 29 +- .../extended/runAndEvent/RE06/exampleRE06.out | 1174 +- .../extended/visualization/CMakeLists.txt | 5 +- .../visualization/perspective/CMakeLists.txt | 5 +- .../visualization/perspective/History | 5 +- .../visualization/standalone/CMakeLists.txt | 5 +- .../extended/visualization/standalone/History | 3 + .../userVisAction/CMakeLists.txt | 5 +- .../visualization/userVisAction/History | 6 + .../visualization/userVisAction/run1.out | 778 +- .../visualization/userVisAction/run2.out | 151 +- .../userVisAction/userVisAction.cc | 20 +- .../userVisAction/userVisAction.out | 127 +- source/CMakeLists.txt | 4 +- source/GNUmakefile | 4 +- source/analysis/History | 67 +- source/analysis/History_tools | 49 + .../accumulables/src/G4AccumulableManager.cc | 2 +- .../csv/include/G4CsvAnalysisManager.hh | 5 +- .../csv/include/G4CsvAnalysisManager.icc | 21 +- .../analysis/csv/include/G4CsvFileManager.hh | 36 +- .../csv/include/G4CsvHnFileManager.hh | 63 + .../csv/include/G4CsvHnFileManager.icc | 125 + .../csv/include/G4CsvNtupleFileManager.hh | 81 + .../csv/include/G4CsvNtupleManager.hh | 25 +- .../analysis/csv/include/G4CsvRFileManager.hh | 2 + source/analysis/csv/sources.cmake | 4 + .../analysis/csv/src/G4CsvAnalysisManager.cc | 102 +- .../analysis/csv/src/G4CsvAnalysisReader.cc | 2 +- source/analysis/csv/src/G4CsvFileManager.cc | 189 +- .../csv/src/G4CsvNtupleFileManager.cc | 133 + source/analysis/csv/src/G4CsvNtupleManager.cc | 51 +- source/analysis/exception_classification.txt | 2 + .../include/G4GenericAnalysisManager.hh | 114 + .../include/G4GenericAnalysisManager.icc | 78 + .../factory/include/G4GenericFileManager.hh | 115 + .../factory/include/G4GenericFileManager.icc | 154 + source/analysis/factory/sources.cmake | 7 + .../factory/src/G4GenericAnalysisManager.cc | 495 + .../factory/src/G4GenericFileManager.cc | 521 + source/analysis/fonts/arialbd.ttf | Bin 144404 -> 0 bytes source/analysis/fonts/helvetica.ttf | Bin 143300 -> 0 bytes source/analysis/fonts/lato_regular.ttf | Bin 0 -> 657212 bytes source/analysis/fonts/license_font_lato.txt | 94 + source/analysis/fonts/license_font_roboto.txt | 202 + source/analysis/fonts/readme_font_lato.txt | 72 + source/analysis/fonts/roboto_bold.ttf | Bin 0 -> 170348 bytes source/analysis/g4tools/include/tools/OpenGL | 6 +- .../g4tools/include/tools/Qt/plots_glarea | 12 +- .../g4tools/include/tools/Windows/WinTk | 124 +- .../g4tools/include/tools/Windows/tools | 30 +- .../g4tools/include/tools/X11/base_session | 52 +- .../g4tools/include/tools/X11/session | 20 +- .../include/tools/X11/simple_dispatcher | 2 +- .../g4tools/include/tools/Xt/OpenGLArea.c | 42 +- .../g4tools/include/tools/Xt/OpenGLAreaP.h | 2 +- .../analysis/g4tools/include/tools/Xt/tools | 12 +- .../g4tools/include/tools/aida_ntuple | 104 +- source/analysis/g4tools/include/tools/args | 55 +- source/analysis/g4tools/include/tools/array | 72 +- .../analysis/g4tools/include/tools/buf2lines | 38 +- .../analysis/g4tools/include/tools/ccontour | 104 +- .../analysis/g4tools/include/tools/charmanip | 10 +- source/analysis/g4tools/include/tools/chars | 2 +- .../g4tools/include/tools/clist_contour | 228 +- source/analysis/g4tools/include/tools/cmathT | 56 - source/analysis/g4tools/include/tools/cmemT | 8 +- source/analysis/g4tools/include/tools/colorf | 12 +- source/analysis/g4tools/include/tools/colorfs | 8 +- source/analysis/g4tools/include/tools/colors | 16 +- source/analysis/g4tools/include/tools/columns | 82 +- source/analysis/g4tools/include/tools/cstr | 44 +- .../analysis/g4tools/include/tools/data_axis | 58 +- source/analysis/g4tools/include/tools/file | 31 +- .../g4tools/include/tools/file_format | 7 +- source/analysis/g4tools/include/tools/fileis | 45 +- source/analysis/g4tools/include/tools/fmanip | 4 +- source/analysis/g4tools/include/tools/fsize | 2 +- .../analysis/g4tools/include/tools/get_lines | 8 +- source/analysis/g4tools/include/tools/gl2ps | 8 +- source/analysis/g4tools/include/tools/glbuf | 2 +- source/analysis/g4tools/include/tools/glprims | 485 +- source/analysis/g4tools/include/tools/gzip | 4 +- source/analysis/g4tools/include/tools/handle | 10 +- source/analysis/g4tools/include/tools/hatcher | 52 +- .../g4tools/include/tools/hatcher.icc | 198 +- .../g4tools/include/tools/hdf5/T_tools | 136 +- .../g4tools/include/tools/hdf5/group_exists | 2 +- .../g4tools/include/tools/hdf5/h2file | 40 +- .../g4tools/include/tools/hdf5/hdf5_h | 2 + .../g4tools/include/tools/hdf5/header | 4 +- .../g4tools/include/tools/hdf5/ntuple | 88 +- .../analysis/g4tools/include/tools/hdf5/pages | 30 +- .../analysis/g4tools/include/tools/hdf5/store | 6 +- .../analysis/g4tools/include/tools/hdf5/tools | 168 +- source/analysis/g4tools/include/tools/hershey | 38 +- .../analysis/g4tools/include/tools/histo/axes | 6 +- .../analysis/g4tools/include/tools/histo/axis | 8 +- .../analysis/g4tools/include/tools/histo/b1 | 40 +- .../analysis/g4tools/include/tools/histo/b2 | 58 +- .../analysis/g4tools/include/tools/histo/b3 | 6 +- .../g4tools/include/tools/histo/base_histo | 36 +- .../analysis/g4tools/include/tools/histo/c1d | 16 +- .../analysis/g4tools/include/tools/histo/c2d | 16 +- .../analysis/g4tools/include/tools/histo/c3d | 46 +- .../analysis/g4tools/include/tools/histo/dps | 22 +- .../analysis/g4tools/include/tools/histo/h1 | 16 +- .../analysis/g4tools/include/tools/histo/h2 | 34 +- .../analysis/g4tools/include/tools/histo/h2d | 2 +- .../analysis/g4tools/include/tools/histo/h3 | 32 +- .../analysis/g4tools/include/tools/histo/h3d | 2 +- .../analysis/g4tools/include/tools/histo/h3df | 2 +- .../g4tools/include/tools/histo/histo_data | 10 +- .../analysis/g4tools/include/tools/histo/htoc | 2 +- .../analysis/g4tools/include/tools/histo/p1 | 26 +- .../analysis/g4tools/include/tools/histo/p1d | 2 +- .../analysis/g4tools/include/tools/histo/p2 | 46 +- .../g4tools/include/tools/histo/slice | 50 +- source/analysis/g4tools/include/tools/hls | 2 +- source/analysis/g4tools/include/tools/hplot | 318 +- source/analysis/g4tools/include/tools/image | 28 +- source/analysis/g4tools/include/tools/img | 165 +- .../analysis/g4tools/include/tools/io/irbuf | 2 +- source/analysis/g4tools/include/tools/jpeg | 42 +- .../analysis/g4tools/include/tools/lina/box3 | 2 +- .../analysis/g4tools/include/tools/lina/geom2 | 6 +- .../analysis/g4tools/include/tools/lina/geom3 | 12 +- .../analysis/g4tools/include/tools/lina/line | 12 +- .../analysis/g4tools/include/tools/lina/mat | 28 +- .../analysis/g4tools/include/tools/lina/mat4 | 39 +- .../analysis/g4tools/include/tools/lina/plane | 22 +- .../analysis/g4tools/include/tools/lina/qrot | 50 +- .../analysis/g4tools/include/tools/lina/vec2 | 26 +- .../analysis/g4tools/include/tools/lina/vec2f | 16 +- .../analysis/g4tools/include/tools/lina/vec3 | 36 +- .../analysis/g4tools/include/tools/lina/vec3d | 14 +- .../analysis/g4tools/include/tools/lina/vec3f | 12 +- .../analysis/g4tools/include/tools/lina/vec4 | 18 +- .../analysis/g4tools/include/tools/lina/vec4f | 14 +- .../analysis/g4tools/include/tools/mapmanip | 2 +- source/analysis/g4tools/include/tools/mathd | 4 +- source/analysis/g4tools/include/tools/mathf | 41 +- source/analysis/g4tools/include/tools/mem | 12 +- source/analysis/g4tools/include/tools/mnmx | 8 +- .../analysis/g4tools/include/tools/mpi/hmpi | 10 +- .../g4tools/include/tools/mpi/wait_buffer | 2 +- .../analysis/g4tools/include/tools/mpi/world | 6 +- .../analysis/g4tools/include/tools/mpi/wrmpi | 12 +- .../g4tools/include/tools/ntuple_binding | 10 +- .../g4tools/include/tools/ntuple_booking | 16 +- source/analysis/g4tools/include/tools/num2s | 4 +- source/analysis/g4tools/include/tools/path | 47 + .../analysis/g4tools/include/tools/platform | 12 +- .../g4tools/include/tools/plotter_common.icc | 4 +- source/analysis/g4tools/include/tools/png | 36 +- source/analysis/g4tools/include/tools/randT | 16 +- source/analysis/g4tools/include/tools/randd | 2 +- source/analysis/g4tools/include/tools/raxml | 6 +- .../analysis/g4tools/include/tools/raxml_out | 2 +- .../g4tools/include/tools/rcsv_ntuple | 16 +- source/analysis/g4tools/include/tools/realloc | 8 +- source/analysis/g4tools/include/tools/rntuple | 6 +- .../g4tools/include/tools/rroot/THistogram | 4 +- .../g4tools/include/tools/rroot/base_leaf | 10 +- .../g4tools/include/tools/rroot/basket | 44 +- .../g4tools/include/tools/rroot/branch | 46 +- .../include/tools/rroot/branch_element | 88 +- .../g4tools/include/tools/rroot/buffer | 46 +- .../analysis/g4tools/include/tools/rroot/clss | 12 +- .../g4tools/include/tools/rroot/directory | 14 +- .../analysis/g4tools/include/tools/rroot/file | 14 +- .../analysis/g4tools/include/tools/rroot/info | 6 +- .../analysis/g4tools/include/tools/rroot/iros | 14 +- .../analysis/g4tools/include/tools/rroot/key | 38 +- .../analysis/g4tools/include/tools/rroot/leaf | 34 +- .../analysis/g4tools/include/tools/rroot/list | 211 - .../g4tools/include/tools/rroot/matrix | 8 +- .../g4tools/include/tools/rroot/member_reader | 2 +- .../g4tools/include/tools/rroot/ntuple | 30 +- .../g4tools/include/tools/rroot/obj_array | 2 +- .../g4tools/include/tools/rroot/obj_list | 19 +- .../analysis/g4tools/include/tools/rroot/rall | 24 +- .../analysis/g4tools/include/tools/rroot/rbuf | 16 +- .../analysis/g4tools/include/tools/rroot/seek | 2 +- .../g4tools/include/tools/rroot/stl_vector | 10 +- .../g4tools/include/tools/rroot/streamers | 20 +- .../analysis/g4tools/include/tools/rroot/tree | 34 +- .../g4tools/include/tools/rroot/tree_index | 2 +- .../g4tools/include/tools/rroot/tree_manip | 32 +- .../g4tools/include/tools/rroot/vector3 | 6 +- .../analysis/g4tools/include/tools/rtausmeui | 2 +- source/analysis/g4tools/include/tools/schar | 2 +- .../g4tools/include/tools/sg/GL_action | 62 +- .../g4tools/include/tools/sg/GL_plots_viewer | 4 +- .../g4tools/include/tools/sg/GL_viewer | 4 +- .../analysis/g4tools/include/tools/sg/action | 18 +- .../g4tools/include/tools/sg/atb_vertices | 46 +- source/analysis/g4tools/include/tools/sg/axis | 164 +- .../g4tools/include/tools/sg/back_area | 12 +- .../g4tools/include/tools/sg/base_camera | 16 +- .../g4tools/include/tools/sg/base_freetype | 8 +- .../g4tools/include/tools/sg/base_tex | 16 +- .../g4tools/include/tools/sg/bbox_action | 55 +- source/analysis/g4tools/include/tools/sg/bmf | 16 +- source/analysis/g4tools/include/tools/sg/bsf | 12 +- .../g4tools/include/tools/sg/cloud2plot | 24 +- .../g4tools/include/tools/sg/cloud2plot_cp | 8 +- .../g4tools/include/tools/sg/colormap | 28 +- source/analysis/g4tools/include/tools/sg/cube | 11 +- .../g4tools/include/tools/sg/cursor_shape | 2 +- .../analysis/g4tools/include/tools/sg/ellipse | 8 +- .../analysis/g4tools/include/tools/sg/enums | 8 +- .../analysis/g4tools/include/tools/sg/event | 16 +- .../g4tools/include/tools/sg/event_action | 1 + .../analysis/g4tools/include/tools/sg/f2plot | 14 +- .../analysis/g4tools/include/tools/sg/field | 2 +- .../g4tools/include/tools/sg/field_desc | 2 +- .../g4tools/include/tools/sg/fit2plot | 10 +- .../include/tools/sg/get_matrix_action | 1 + source/analysis/g4tools/include/tools/sg/gl | 6 +- .../g4tools/include/tools/sg/gl2ps_action | 163 +- .../g4tools/include/tools/sg/gl2ps_manager | 4 +- .../g4tools/include/tools/sg/gl_manager | 82 +- .../analysis/g4tools/include/tools/sg/group | 22 +- .../analysis/g4tools/include/tools/sg/gstos | 8 +- .../g4tools/include/tools/sg/gstos_add | 18 +- .../analysis/g4tools/include/tools/sg/h2plot | 38 +- .../g4tools/include/tools/sg/h2plot_cp | 12 +- .../g4tools/include/tools/sg/head_light | 10 +- .../analysis/g4tools/include/tools/sg/holder | 20 +- .../g4tools/include/tools/sg/infos_box | 32 +- .../analysis/g4tools/include/tools/sg/legend | 32 +- .../g4tools/include/tools/sg/line_set | 6 +- .../g4tools/include/tools/sg/line_style | 2 +- .../g4tools/include/tools/sg/manager_zb | 80 - .../analysis/g4tools/include/tools/sg/markers | 81 +- .../g4tools/include/tools/sg/matrix_action | 23 +- source/analysis/g4tools/include/tools/sg/mf | 2 +- source/analysis/g4tools/include/tools/sg/node | 12 +- .../analysis/g4tools/include/tools/sg/nodekit | 2 +- .../analysis/g4tools/include/tools/sg/noderef | 4 +- .../analysis/g4tools/include/tools/sg/normal | 4 +- .../g4tools/include/tools/sg/pick_action | 97 +- .../analysis/g4tools/include/tools/sg/plots | 250 +- .../g4tools/include/tools/sg/plots_viewer | 18 +- .../g4tools/include/tools/sg/plottables | 8 +- .../analysis/g4tools/include/tools/sg/plotter | 2076 +- .../include/tools/sg/primitive_visitor | 1337 +- .../g4tools/include/tools/sg/read_action | 1 + .../g4tools/include/tools/sg/render_action | 51 +- .../g4tools/include/tools/sg/render_gstos | 10 +- .../g4tools/include/tools/sg/render_manager | 2 +- .../g4tools/include/tools/sg/render_zb | 720 - .../g4tools/include/tools/sg/search_action | 9 +- .../analysis/g4tools/include/tools/sg/senum | 30 +- .../include/tools/sg/set_plotter_camera | 10 +- source/analysis/g4tools/include/tools/sg/sf | 2 +- .../analysis/g4tools/include/tools/sg/sf_img | 2 +- .../g4tools/include/tools/sg/sf_mat4f | 2 +- .../analysis/g4tools/include/tools/sg/state | 21 +- .../analysis/g4tools/include/tools/sg/states | 6 +- .../analysis/g4tools/include/tools/sg/strings | 24 +- .../analysis/g4tools/include/tools/sg/style | 18 +- .../g4tools/include/tools/sg/style_colormap | 48 +- .../g4tools/include/tools/sg/style_parser | 72 +- .../include/tools/sg/tex_quadrilateral | 8 +- .../g4tools/include/tools/sg/tex_rect | 6 +- source/analysis/g4tools/include/tools/sg/text | 42 +- .../g4tools/include/tools/sg/text_freetype | 172 +- .../g4tools/include/tools/sg/text_hershey | 64 +- .../g4tools/include/tools/sg/text_style | 10 +- .../g4tools/include/tools/sg/text_valop | 8 +- .../analysis/g4tools/include/tools/sg/tools | 22 +- .../analysis/g4tools/include/tools/sg/torche | 6 +- .../g4tools/include/tools/sg/valop2sg | 30 +- .../g4tools/include/tools/sg/vertices | 10 +- .../analysis/g4tools/include/tools/sg/viewer | 2 +- .../g4tools/include/tools/sg/visible_action | 7 +- .../g4tools/include/tools/sg/win_action | 7 +- .../g4tools/include/tools/sg/write_action | 7 +- .../analysis/g4tools/include/tools/sg/xy2plot | 8 +- .../g4tools/include/tools/sg/zb_action | 165 +- .../g4tools/include/tools/sg/zb_manager | 2 +- source/analysis/g4tools/include/tools/smatch | 4 +- source/analysis/g4tools/include/tools/smath | 1 + source/analysis/g4tools/include/tools/snums | 2 +- source/analysis/g4tools/include/tools/spline | 36 +- .../g4tools/include/tools/store/iobj_visitor | 2 +- .../g4tools/include/tools/store/osc_streamers | 30 +- source/analysis/g4tools/include/tools/system | 4 +- .../g4tools/include/tools/tess_contour | 70 +- source/analysis/g4tools/include/tools/test | 6 +- source/analysis/g4tools/include/tools/tos | 6 +- source/analysis/g4tools/include/tools/tosu | 4 +- .../analysis/g4tools/include/tools/typedefs | 8 +- source/analysis/g4tools/include/tools/utest | 4 +- source/analysis/g4tools/include/tools/valop | 14 +- source/analysis/g4tools/include/tools/value | 52 +- .../analysis/g4tools/include/tools/value.icc | 60 +- source/analysis/g4tools/include/tools/version | 10 +- .../analysis/g4tools/include/tools/viewplot | 4 +- source/analysis/g4tools/include/tools/vmanip | 63 +- source/analysis/g4tools/include/tools/vpair | 2 +- .../g4tools/include/tools/waxml/begend | 4 +- .../g4tools/include/tools/waxml/histos | 188 +- .../g4tools/include/tools/waxml/ntuple | 22 +- .../analysis/g4tools/include/tools/wcsv_histo | 2 +- .../g4tools/include/tools/wcsv_ntuple | 24 +- source/analysis/g4tools/include/tools/words | 2 +- source/analysis/g4tools/include/tools/wps | 52 +- .../g4tools/include/tools/wroot/base_pntuple | 6 +- .../tools/wroot/base_pntuple_column_wise | 20 +- .../include/tools/wroot/base_pntuple_row_wise | 22 +- .../g4tools/include/tools/wroot/basket | 58 +- .../g4tools/include/tools/wroot/basket_add | 48 - .../g4tools/include/tools/wroot/branch | 40 +- .../include/tools/wroot/branch_element | 2 +- .../g4tools/include/tools/wroot/buffer | 14 +- .../g4tools/include/tools/wroot/bufobj | 2 +- .../g4tools/include/tools/wroot/columns.icc | 8 +- .../g4tools/include/tools/wroot/directory | 54 +- .../g4tools/include/tools/wroot/element | 6 +- .../analysis/g4tools/include/tools/wroot/file | 64 +- .../analysis/g4tools/include/tools/wroot/info | 4 +- .../g4tools/include/tools/wroot/infos | 86 +- .../analysis/g4tools/include/tools/wroot/key | 2 +- .../analysis/g4tools/include/tools/wroot/leaf | 8 +- .../g4tools/include/tools/wroot/member_writer | 6 +- .../include/tools/wroot/mpi_create_basket | 8 +- .../tools/wroot/mpi_ntuple_column_wise | 22 +- .../include/tools/wroot/mpi_ntuple_row_wise | 18 +- .../include/tools/wroot/mpi_send_basket | 10 +- .../include/tools/wroot/mt_ntuple_column_wise | 28 +- .../include/tools/wroot/mt_ntuple_row_wise | 10 +- .../g4tools/include/tools/wroot/named | 4 +- .../g4tools/include/tools/wroot/ntuple | 60 +- .../analysis/g4tools/include/tools/wroot/seek | 2 +- .../g4tools/include/tools/wroot/streamers | 16 +- .../analysis/g4tools/include/tools/wroot/to | 6 +- .../analysis/g4tools/include/tools/wroot/tree | 4 +- .../analysis/g4tools/include/tools/wroot/wbuf | 4 +- .../analysis/g4tools/include/tools/xml/aidas | 366 +- .../g4tools/include/tools/xml/element | 10 +- .../analysis/g4tools/include/tools/xml/loader | 172 +- .../analysis/g4tools/include/tools/xml/styles | 32 +- .../analysis/g4tools/include/tools/xml/tree | 170 +- ...plot.style => viewplot_fonts_google.style} | 76 +- .../xml/wrap_viewplot_fonts_google_style | 811 + .../include/tools/xml/wrap_viewplot_style | 775 - .../g4tools/include/tools/xml/xml_style | 2 +- source/analysis/g4tools/include/tools/xpm | 12 +- .../analysis/g4tools/include/tools/zb/buffer | 36 +- .../g4tools/include/tools/zb/edge_table | 28 +- source/analysis/g4tools/include/tools/zb/line | 8 +- .../analysis/g4tools/include/tools/zb/point | 2 +- .../analysis/g4tools/include/tools/zb/polygon | 48 +- source/analysis/g4tools/include/tools/zlib | 26 +- .../hdf5/include/G4Hdf5AnalysisManager.hh | 6 +- .../hdf5/include/G4Hdf5AnalysisManager.icc | 33 +- .../hdf5/include/G4Hdf5FileManager.hh | 60 +- .../hdf5/include/G4Hdf5HnFileManager.hh | 65 + .../hdf5/include/G4Hdf5HnFileManager.icc | 140 + .../hdf5/include/G4Hdf5NtupleFileManager.hh | 79 + .../hdf5/include/G4Hdf5NtupleManager.hh | 30 +- .../hdf5/include/G4Hdf5RFileManager.hh | 2 + source/analysis/hdf5/sources.cmake | 4 + .../hdf5/src/G4Hdf5AnalysisManager.cc | 96 +- source/analysis/hdf5/src/G4Hdf5FileManager.cc | 321 +- .../hdf5/src/G4Hdf5NtupleFileManager.cc | 150 + .../analysis/hdf5/src/G4Hdf5NtupleManager.cc | 43 +- .../hntools/include/G4MPIToolsManager.hh | 2 +- .../hntools/include/G4ToolsAnalysisManager.hh | 2 +- .../hntools/src/G4ToolsAnalysisManager.cc | 3 +- .../include/G4AnalysisManagerState.hh | 3 +- .../management/include/G4AnalysisMessenger.hh | 6 +- .../management/include/G4AnalysisUtilities.hh | 67 +- .../management/include/G4AnalysisVerbose.hh | 3 +- .../management/include/G4BaseFileManager.hh | 34 +- .../management/include/G4BaseNtupleManager.hh | 45 +- .../management/include/G4HnInformation.hh | 14 +- .../management/include/G4HnManager.hh | 22 +- .../management/include/G4HnMessenger.hh | 17 +- .../include/G4NtupleBookingManager.hh | 143 + .../include/G4NtupleBookingManager.icc | 106 + .../management/include/G4NtupleMessenger.hh | 13 +- .../management/include/G4TFileInformation.hh | 59 + .../management/include/G4TFileManager.hh | 85 + .../management/include/G4TFileManager.icc | 410 + .../management/include/G4THnManager.hh | 7 +- .../management/include/G4THnManager.icc | 11 + .../include/G4TNtupleDescription.hh | 23 +- .../management/include/G4TNtupleManager.hh | 67 +- .../management/include/G4TNtupleManager.icc | 382 +- .../management/include/G4VAnalysisManager.hh | 24 +- .../management/include/G4VAnalysisManager.icc | 10 +- .../management/include/G4VAnalysisReader.icc | 2 +- .../management/include/G4VFileManager.hh | 102 +- .../include/G4VNtupleFileManager.hh | 96 + .../management/include/G4VNtupleManager.hh | 54 +- .../management/include/G4VTFileManager.hh | 141 + .../management/include/G4VTHnFileManager.hh | 53 + source/analysis/management/sources.cmake | 10 + .../management/src/G4AnalysisManagerState.cc | 33 +- .../management/src/G4AnalysisMessenger.cc | 4 +- .../src/G4AnalysisMessengerHelper.cc | 2 +- .../management/src/G4AnalysisUtilities.cc | 172 +- .../management/src/G4AnalysisVerbose.cc | 24 +- .../management/src/G4BaseFileManager.cc | 184 +- .../management/src/G4BaseNtupleManager.cc | 67 +- source/analysis/management/src/G4HnManager.cc | 170 +- .../analysis/management/src/G4HnMessenger.cc | 83 +- .../management/src/G4NtupleBookingManager.cc | 332 + .../management/src/G4NtupleMessenger.cc | 86 +- .../analysis/management/src/G4P1Messenger.cc | 1 + .../analysis/management/src/G4P2Messenger.cc | 6 +- .../analysis/management/src/G4PlotManager.cc | 4 +- .../management/src/G4VAnalysisManager.cc | 173 +- .../analysis/management/src/G4VFileManager.cc | 36 +- .../management/src/G4VNtupleFileManager.cc | 98 + .../root/include/G4RootAnalysisManager.hh | 29 +- .../root/include/G4RootAnalysisManager.icc | 18 +- .../root/include/G4RootFileDef.hh} | 32 +- .../root/include/G4RootFileManager.hh | 83 +- .../root/include/G4RootHnFileManager.hh | 64 + .../root/include/G4RootHnFileManager.icc | 101 + .../root/include/G4RootMainNtupleManager.hh | 55 +- .../root/include/G4RootNtupleFileManager.hh | 111 + .../root/include/G4RootNtupleManager.hh | 139 +- .../root/include/G4RootNtupleManager.icc | 90 + .../root/include/G4RootPNtupleDescription.hh | 22 +- .../root/include/G4RootPNtupleManager.hh | 225 +- .../root/include/G4RootPNtupleManager.icc | 150 + .../root/include/G4RootRFileManager.hh | 2 + source/analysis/root/sources.cmake | 7 + .../root/src/G4RootAnalysisManager.cc | 450 +- source/analysis/root/src/G4RootFileManager.cc | 428 +- .../root/src/G4RootMainNtupleManager.cc | 80 +- .../root/src/G4RootNtupleFileManager.cc | 460 + .../analysis/root/src/G4RootNtupleManager.cc | 218 +- .../analysis/root/src/G4RootPNtupleManager.cc | 259 +- .../analysis/root/src/G4RootRFileManager.cc | 1 + .../xml/include/G4XmlAnalysisManager.hh | 4 +- .../xml/include/G4XmlAnalysisManager.icc | 17 +- .../analysis/xml/include/G4XmlFileManager.hh | 42 +- .../xml/include/G4XmlHnFileManager.hh} | 45 +- .../xml/include/G4XmlHnFileManager.icc | 92 + .../xml/include/G4XmlNtupleFileManager.hh | 81 + .../xml/include/G4XmlNtupleManager.hh | 24 +- .../analysis/xml/include/G4XmlRFileManager.hh | 2 + source/analysis/xml/sources.cmake | 4 + .../analysis/xml/src/G4XmlAnalysisManager.cc | 137 +- source/analysis/xml/src/G4XmlFileManager.cc | 256 +- .../xml/src/G4XmlNtupleFileManager.cc | 136 + source/analysis/xml/src/G4XmlNtupleManager.cc | 34 +- source/analysis/xml/src/G4XmlRFileManager.cc | 1 + .../analysis/xml/src/G4XmlRNtupleManager.cc | 6 +- source/digits_hits/detector/History | 17 +- .../detector/include/G4TScoreHistFiller.hh | 91 + .../detector/include/G4TScoreHistFiller.icc | 228 + .../include/G4VPrimitivePlotter.hh | 0 .../detector/include/G4VScoreHistFiller.hh | 84 + source/digits_hits/detector/sources.cmake | 5 + .../digits_hits/detector/src/G4SDStructure.cc | 2 +- .../detector/src/G4VScoreHistFiller.cc | 90 + source/digits_hits/scorer/History | 11 + .../scorer/include/G4PSCellFlux.hh | 6 +- .../include/G4PSCylinderSurfaceCurrent.hh | 7 +- .../scorer/include/G4PSCylinderSurfaceFlux.hh | 6 +- .../scorer/include/G4PSDoseDeposit.hh | 6 +- .../scorer/include/G4PSEnergyDeposit.hh | 7 +- .../scorer/include/G4PSFlatSurfaceCurrent.hh | 6 +- .../scorer/include/G4PSFlatSurfaceFlux.hh | 6 +- .../scorer/include/G4PSMinKinEAtGeneration.hh | 6 +- .../scorer/include/G4PSNofSecondary.hh | 8 +- .../digits_hits/scorer/include/G4PSNofStep.hh | 6 +- .../scorer/include/G4PSPassageCellCurrent.hh | 6 +- .../scorer/include/G4PSPassageCellFlux.hh | 6 +- .../scorer/include/G4PSPassageTrackLength.hh | 6 +- .../scorer/include/G4PSTrackCounter.hh | 6 +- .../scorer/include/G4PSVolumeFlux.hh | 74 + .../scorer/include/G4PSVolumeFlux3D.hh | 58 + source/digits_hits/scorer/sources.cmake | 4 + source/digits_hits/scorer/src/G4PSCellFlux.cc | 22 +- .../scorer/src/G4PSCylinderSurfaceCurrent.cc | 22 +- .../scorer/src/G4PSCylinderSurfaceFlux.cc | 24 +- .../digits_hits/scorer/src/G4PSDoseDeposit.cc | 27 +- .../scorer/src/G4PSEnergyDeposit.cc | 28 +- .../scorer/src/G4PSFlatSurfaceCurrent.cc | 23 +- .../scorer/src/G4PSFlatSurfaceFlux.cc | 23 +- .../scorer/src/G4PSMinKinEAtGeneration.cc | 23 +- .../scorer/src/G4PSNofSecondary.cc | 21 +- source/digits_hits/scorer/src/G4PSNofStep.cc | 20 +- .../scorer/src/G4PSPassageCellCurrent.cc | 22 +- .../scorer/src/G4PSPassageCellFlux.cc | 23 +- .../scorer/src/G4PSPassageTrackLength.cc | 22 +- .../scorer/src/G4PSTrackCounter.cc | 18 +- .../digits_hits/scorer/src/G4PSVolumeFlux.cc | 160 + .../scorer/src/G4PSVolumeFlux3D.cc} | 45 +- source/digits_hits/utils/History | 11 + .../utils/include/G4ScoreQuantityMessenger.hh | 1 + .../utils/include/G4ScoringMessenger.hh | 4 +- source/digits_hits/utils/sources.cmake | 1 - .../utils/src/G4ScoreQuantityMessenger.cc | 13 + .../utils/src/G4ScoreQuantityMessengerQCmd.cc | 19 + .../utils/src/G4ScoringMessenger.cc | 85 +- .../digits_hits/utils/src/G4ScoringProbe.cc | 1 + source/error_propagation/History | 5 + .../include/G4ErrorFreeTrajParam.hh | 8 + .../include/G4ErrorMatrix.hh | 6 +- .../include/G4ErrorSurfaceTrajParam.hh | 9 + .../include/G4ErrorSymMatrix.hh | 7 +- .../include/G4ErrorSymMatrix.icc | 0 .../include/G4ErrorTrajState.hh | 14 +- .../src/G4ErrorPropagator.cc | 37 +- .../error_propagation/src/G4ErrorTrajState.cc | 66 +- source/event/CMakeLists.txt | 9 - source/event/History | 140 +- source/event/include/G4Event.hh | 3 + source/event/include/G4EventManager.hh | 7 +- source/event/sources.cmake | 6 + source/event/src/G4EventManager.cc | 10 + source/event/src/G4PrimaryTransformer.cc | 2 +- source/event/src/G4SPSPosDistribution.cc | 12 +- source/externals/CMakeLists.txt | 77 +- source/externals/History | 23 + source/externals/clhep/History | 32 + .../clhep/include/CLHEP/Random/MixMaxRng.h | 4 +- .../clhep/include/CLHEP/Random/SeedTable.h | 2 + .../include/CLHEP/Random/engineIDulong.h | 2 + .../include/CLHEP/Units/PhysicalConstants.h | 7 +- .../clhep/include/CLHEP/Units/SystemOfUnits.h | 3 +- .../clhep/include/CLHEP/Utility/defs.h | 0 .../clhep/include/CLHEP/Vector/Boost.h | 4 - .../clhep/include/CLHEP/Vector/BoostX.h | 4 - .../clhep/include/CLHEP/Vector/BoostY.h | 4 - .../clhep/include/CLHEP/Vector/BoostZ.h | 4 - .../include/CLHEP/Vector/LorentzRotation.h | 4 - .../include/CLHEP/Vector/LorentzVector.h | 4 - .../clhep/include/CLHEP/Vector/Rotation.h | 4 - .../clhep/include/CLHEP/Vector/RotationX.h | 4 - .../clhep/include/CLHEP/Vector/RotationY.h | 4 - .../clhep/include/CLHEP/Vector/RotationZ.h | 4 - .../clhep/include/CLHEP/Vector/ThreeVector.h | 8 +- .../include/CLHEP/Vector/ThreeVector.icc | 125 +- .../clhep/include/CLHEP/Vector/TwoVector.h | 4 - source/externals/clhep/src/AxisAngle.cc | 4 + source/externals/clhep/src/Boost.cc | 7 +- source/externals/clhep/src/BoostX.cc | 7 +- source/externals/clhep/src/BoostY.cc | 7 +- source/externals/clhep/src/BoostZ.cc | 7 +- source/externals/clhep/src/DoubConv.cc | 1 + source/externals/clhep/src/DualRand.cc | 4 + source/externals/clhep/src/EngineFactory.cc | 1 + source/externals/clhep/src/EulerAngles.cc | 1 + source/externals/clhep/src/JamesRandom.cc | 6 +- source/externals/clhep/src/LorentzRotation.cc | 9 +- .../externals/clhep/src/LorentzRotationC.cc | 5 +- .../externals/clhep/src/LorentzRotationD.cc | 7 +- source/externals/clhep/src/LorentzVector.cc | 5 +- source/externals/clhep/src/LorentzVectorB.cc | 7 +- source/externals/clhep/src/LorentzVectorC.cc | 5 +- source/externals/clhep/src/LorentzVectorK.cc | 5 +- source/externals/clhep/src/LorentzVectorL.cc | 4 - source/externals/clhep/src/LorentzVectorR.cc | 4 - source/externals/clhep/src/MTwistEngine.cc | 9 +- source/externals/clhep/src/MixMaxRng.cc | 25 +- source/externals/clhep/src/NonRandomEngine.cc | 3 +- source/externals/clhep/src/RandBinomial.cc | 2 + source/externals/clhep/src/RandBit.cc | 1 + source/externals/clhep/src/RandBreitWigner.cc | 3 + source/externals/clhep/src/RandChiSquare.cc | 3 + source/externals/clhep/src/RandExpZiggurat.cc | 3 +- source/externals/clhep/src/RandExponential.cc | 4 + source/externals/clhep/src/RandFlat.cc | 3 + source/externals/clhep/src/RandGamma.cc | 3 + source/externals/clhep/src/RandGauss.cc | 5 +- source/externals/clhep/src/RandGeneral.cc | 3 + source/externals/clhep/src/RandPoisson.cc | 3 + source/externals/clhep/src/RandPoissonQ.cc | 5 +- source/externals/clhep/src/RandStudentT.cc | 6 +- source/externals/clhep/src/Random.cc | 6 +- source/externals/clhep/src/RandomEngine.cc | 3 + source/externals/clhep/src/RanecuEngine.cc | 8 +- source/externals/clhep/src/Ranlux64Engine.cc | 5 +- source/externals/clhep/src/RanluxEngine.cc | 6 +- source/externals/clhep/src/RanshiEngine.cc | 3 + source/externals/clhep/src/Rotation.cc | 4 - source/externals/clhep/src/RotationA.cc | 4 - source/externals/clhep/src/RotationC.cc | 5 +- source/externals/clhep/src/RotationE.cc | 5 +- source/externals/clhep/src/RotationIO.cc | 4 - .../externals/clhep/src/RotationInterfaces.cc | 4 - source/externals/clhep/src/RotationL.cc | 4 - source/externals/clhep/src/RotationP.cc | 4 - source/externals/clhep/src/RotationX.cc | 4 - source/externals/clhep/src/RotationY.cc | 4 - source/externals/clhep/src/RotationZ.cc | 4 - source/externals/clhep/src/SpaceVector.cc | 56 +- source/externals/clhep/src/SpaceVectorD.cc | 4 - source/externals/clhep/src/SpaceVectorP.cc | 10 +- source/externals/clhep/src/SpaceVectorR.cc | 54 +- .../externals/clhep/src/StaticRandomStates.cc | 1 + source/externals/clhep/src/ThreeVector.cc | 106 +- source/externals/clhep/src/ThreeVectorR.cc | 4 - source/externals/expat/CMakeLists.txt | 134 +- source/externals/expat/COPYING | 0 source/externals/expat/History | 10 +- source/externals/expat/README | 0 source/externals/expat/expat_config.h.cmake | 0 source/externals/expat/include/expat.h | 0 .../externals/expat/include/expat_external.h | 2 +- source/externals/expat/sources.cmake | 113 - source/externals/expat/src/amigaconfig.h | 0 source/externals/expat/src/ascii.h | 0 source/externals/expat/src/asciitab.h | 0 source/externals/expat/src/iasciitab.h | 0 source/externals/expat/src/internal.h | 0 source/externals/expat/src/latin1tab.h | 0 source/externals/expat/src/macconfig.h | 0 source/externals/expat/src/nametab.h | 0 source/externals/expat/src/utf8tab.h | 0 source/externals/expat/src/winconfig.h | 0 source/externals/expat/src/xmlparse.cc | 0 source/externals/expat/src/xmlrole.cc | 0 source/externals/expat/src/xmlrole.h | 0 source/externals/expat/src/xmltok.cc | 0 source/externals/expat/src/xmltok.h | 0 source/externals/expat/src/xmltok_impl.cc | 0 source/externals/expat/src/xmltok_impl.h | 0 source/externals/expat/src/xmltok_ns.cc | 0 source/externals/ptl/CMakeLists.txt | 16 +- source/externals/ptl/History | 28 + .../ptl/cmake/Templates/PTLConfig.cmake.in | 19 +- source/externals/ptl/include/PTL/AutoLock.hh | 34 +- source/externals/ptl/include/PTL/Globals.hh | 112 +- .../externals/ptl/include/PTL/TBBTaskGroup.hh | 50 +- source/externals/ptl/include/PTL/Task.hh | 142 +- source/externals/ptl/include/PTL/TaskGroup.hh | 189 +- .../externals/ptl/include/PTL/TaskManager.hh | 117 +- .../ptl/include/PTL/TaskRunManager.hh | 2 - .../externals/ptl/include/PTL/ThreadData.hh | 12 +- .../externals/ptl/include/PTL/ThreadPool.hh | 139 +- source/externals/ptl/include/PTL/Threading.hh | 34 +- source/externals/ptl/include/PTL/Tuple.hh | 46 +- source/externals/ptl/include/PTL/Types.hh | 8 +- source/externals/ptl/include/PTL/Utility.hh | 64 +- .../externals/ptl/include/PTL/VTaskGroup.hh | 13 +- .../ptl/include/PTL/VUserTaskQueue.hh | 49 +- source/externals/ptl/src/ThreadPool.cc | 138 +- source/externals/ptl/src/UserTaskQueue.cc | 8 +- source/externals/ptl/src/VTask.cc | 2 +- source/externals/zlib/History | 4 + source/externals/zlib/sources.cmake | 11 +- source/g3tog4/include/G3toG4Defs.hh | 0 source/geometry/History | 8 +- .../biasing/include/G4VGCellFinder.hh | 2 +- source/geometry/magneticfield/History | 78 + .../include/G4BulirschStoerDriver.icc | 2 + .../magneticfield/include/G4ChordFinder.hh | 2 +- .../include/G4DormandPrince745.hh | 10 +- .../magneticfield/include/G4FieldUtils.hh | 3 + .../include/G4InterpolationDriver.icc | 2 +- .../include/G4TCachedMagneticField.hh | 151 + .../magneticfield/include/G4TCashKarpRKF45.hh | 321 + .../magneticfield/include/G4TClassicalRK4.hh | 154 + .../include/G4TDormandPrince45.hh | 593 + .../magneticfield/include/G4TExplicitEuler.hh | 101 + .../include/G4TMagErrorStepper.hh | 181 + .../include/G4TMagFieldEquation.hh | 101 + .../include/G4TQuadrupoleMagField.hh | 113 + .../magneticfield/include/G4TSimpleHeum.hh | 140 + .../magneticfield/include/G4TSimpleRunge.hh | 102 + .../include/G4TUniformMagneticField.hh | 114 + source/geometry/magneticfield/sources.cmake | 11 + .../magneticfield/src/G4ChordFinder.cc | 185 +- .../magneticfield/src/G4DormandPrince745.cc | 9 +- .../src/G4MagIntegratorStepper.cc | 6 + source/geometry/management/History | 8 +- .../geometry/management/include/G4UAdapter.hh | 17 +- source/geometry/management/sources.cmake | 8 +- .../management/src/G4ReflectedSolid.cc | 2 +- source/geometry/navigation/History | 12 + .../navigation/include/G4GeomTestVolume.hh | 4 + .../navigation/include/G4RegularNavigation.hh | 12 +- .../navigation/src/G4GeomTestVolume.cc | 50 + .../navigation/src/G4GeometryMessenger.cc | 2 +- .../navigation/src/G4RegularNavigation.cc | 44 +- .../navigation/src/G4ReplicaNavigation.cc | 3 +- .../navigation/src/G4VIntersectionLocator.cc | 2 +- source/geometry/solids/CSG/History | 22 + .../geometry/solids/CSG/include/G4CutTubs.hh | 11 +- .../geometry/solids/CSG/include/G4CutTubs.icc | 14 +- .../geometry/solids/CSG/include/G4Sphere.icc | 4 +- source/geometry/solids/CSG/include/G4Trap.hh | 2 + source/geometry/solids/CSG/include/G4Trd.hh | 2 +- source/geometry/solids/CSG/src/G4Box.cc | 62 +- source/geometry/solids/CSG/src/G4CSGSolid.cc | 15 +- source/geometry/solids/CSG/src/G4CutTubs.cc | 691 +- source/geometry/solids/CSG/src/G4Trap.cc | 210 +- source/geometry/solids/CSG/src/G4Trd.cc | 151 +- source/geometry/solids/CSG/src/G4Tubs.cc | 297 +- source/geometry/solids/specific/History | 14 + .../specific/include/G4GenericPolycone.hh | 10 +- .../solids/specific/include/G4Polycone.hh | 27 +- .../solids/specific/include/G4Polyhedra.hh | 12 +- .../solids/specific/src/G4GenericPolycone.cc | 283 +- .../solids/specific/src/G4Polycone.cc | 598 +- .../solids/specific/src/G4Polyhedra.cc | 591 +- .../solids/specific/src/G4UGenericPolycone.cc | 2 +- .../solids/specific/src/G4UPolycone.cc | 2 +- .../solids/specific/src/G4UPolyhedra.cc | 4 +- source/geometry/volumes/History | 12 + .../volumes/include/G4AssemblyVolume.hh | 2 +- .../volumes/include/G4LogicalBorderSurface.hh | 13 +- .../volumes/include/G4LogicalSkinSurface.hh | 13 +- .../volumes/src/G4LogicalBorderSurface.cc | 28 +- .../volumes/src/G4LogicalSkinSurface.cc | 2 +- source/geometry/volumes/src/G4PVPlacement.cc | 59 +- source/global/History | 60 + .../global/management/include/G4Backtrace.hh | 811 + .../include/G4PhysicsOrderedFreeVector.hh | 2 + .../global/management/include/G4Profiler.hh | 561 + .../global/management/include/G4Profiler.icc | 391 + source/global/management/include/G4SIunits.hh | 2 +- .../global/management/include/G4TiMemory.hh | 37 +- source/global/management/include/G4Types.hh | 3 + source/global/management/include/G4Version.hh | 8 +- .../management/include/G4coutDestination.hh | 4 +- source/global/management/include/tls.hh | 2 +- source/global/management/sources.cmake | 15 +- .../management/src/G4PhysicsLinearVector.cc | 2 +- .../management/src/G4PhysicsLogVector.cc | 2 +- .../src/G4PhysicsOrderedFreeVector.cc | 24 + source/global/management/src/G4Profiler.cc | 588 + .../management/src/G4coutDestination.cc | 2 + source/graphics_reps/History | 10 + source/graphics_reps/src/BooleanProcessor.src | 2 +- source/graphics_reps/src/G4VisAttributes.cc | 2 +- source/graphics_reps/src/HepPolyhedron.cc | 56 +- source/intercoms/History | 57 +- source/intercoms/include/G4AnyMethod.hh | 343 +- source/intercoms/include/G4AnyType.hh | 337 +- .../intercoms/include/G4GenericMessenger.hh | 227 +- .../include/G4LocalThreadCoutMessenger.hh | 42 +- .../intercoms/include/G4ProfilerMessenger.hh | 83 + source/intercoms/include/G4UIaliasList.hh | 51 +- source/intercoms/include/G4UIbatch.hh | 73 +- source/intercoms/include/G4UIbridge.hh | 68 +- .../intercoms/include/G4UIcmdWith3Vector.hh | 63 +- .../include/G4UIcmdWith3VectorAndUnit.hh | 130 +- source/intercoms/include/G4UIcmdWithABool.hh | 66 +- .../intercoms/include/G4UIcmdWithADouble.hh | 58 +- .../include/G4UIcmdWithADoubleAndUnit.hh | 129 +- .../intercoms/include/G4UIcmdWithALongInt.hh | 69 + .../intercoms/include/G4UIcmdWithAString.hh | 65 +- .../intercoms/include/G4UIcmdWithAnInteger.hh | 58 +- .../include/G4UIcmdWithoutParameter.hh | 28 +- source/intercoms/include/G4UIcommand.hh | 372 +- source/intercoms/include/G4UIcommandStatus.hh | 11 +- source/intercoms/include/G4UIcommandTree.hh | 121 +- .../intercoms/include/G4UIcontrolMessenger.hh | 115 +- source/intercoms/include/G4UIdirectory.hh | 29 +- source/intercoms/include/G4UImanager.hh | 436 +- source/intercoms/include/G4UImessenger.hh | 129 +- source/intercoms/include/G4UIparameter.hh | 267 +- source/intercoms/include/G4UIsession.hh | 60 +- source/intercoms/include/G4UItokenNum.hh | 96 +- source/intercoms/include/G4UnitsMessenger.hh | 37 +- .../include/G4VFlavoredParallelWorld.hh | 26 +- .../include/G4VGlobalFastSimulationManager.hh | 64 +- source/intercoms/include/icomsdefs.hh | 26 +- source/intercoms/sources.cmake | 5 + source/intercoms/src/G4GenericMessenger.cc | 308 +- .../src/G4LocalThreadCoutMessenger.cc | 128 +- source/intercoms/src/G4ProfilerMessenger.cc | 209 + source/intercoms/src/G4UIaliasList.cc | 90 +- source/intercoms/src/G4UIbatch.cc | 220 +- source/intercoms/src/G4UIbridge.cc | 52 +- source/intercoms/src/G4UIcmdWith3Vector.cc | 42 +- .../src/G4UIcmdWith3VectorAndUnit.cc | 113 +- source/intercoms/src/G4UIcmdWithABool.cc | 26 +- source/intercoms/src/G4UIcmdWithADouble.cc | 26 +- .../src/G4UIcmdWithADoubleAndUnit.cc | 91 +- source/intercoms/src/G4UIcmdWithALongInt.cc | 64 + source/intercoms/src/G4UIcmdWithAString.cc | 34 +- source/intercoms/src/G4UIcmdWithAnInteger.cc | 27 +- .../intercoms/src/G4UIcmdWithoutParameter.cc | 16 +- source/intercoms/src/G4UIcommand.cc | 1998 +- source/intercoms/src/G4UIcommandTree.cc | 525 +- source/intercoms/src/G4UIcontrolMessenger.cc | 622 +- source/intercoms/src/G4UIdirectory.cc | 24 +- source/intercoms/src/G4UImanager.cc | 740 +- source/intercoms/src/G4UImessenger.cc | 86 +- source/intercoms/src/G4UIparameter.cc | 1554 +- source/intercoms/src/G4UIsession.cc | 54 +- source/intercoms/src/G4UnitsMessenger.cc | 35 +- .../src/G4VGlobalFastSimulationManager.cc | 22 +- source/interfaces/GAG/src/G4UIGAG.cc | 4 +- source/interfaces/GAG/src/G4UIGainServer.cc | 4 +- source/interfaces/History | 30 + source/interfaces/basic/src/G4UIQt.cc | 17 +- source/interfaces/basic/src/G4UIWt.cc | 2 +- source/interfaces/common/sources.cmake | 4 +- source/interfaces/common/src/G4Qt.cc | 3 + source/materials/GNUmakefile | 16 +- source/materials/History | 36 + source/materials/include/G4Material.hh | 10 +- .../include/G4MaterialPropertiesTable.hh | 16 +- .../include/G4MaterialPropertiesTable.icc | 47 +- .../include/G4MaterialPropertyVector.hh | 1 - .../include/G4MicroElecMaterialStructure.hh | 124 + .../include/G4MicroElecSiStructure.hh | 0 source/materials/include/G4OpticalSurface.hh | 353 +- source/materials/include/G4SurfaceProperty.hh | 104 +- .../include/G4UCNMaterialPropertiesTable.hh | 0 .../include/G4UCNMicroRoughnessHelper.hh | 0 source/materials/sources.cmake | 7 +- source/materials/src/G4Element.cc | 16 +- .../src/G4MaterialPropertiesTable.cc | 131 +- .../src/G4MicroElecMaterialStructure.cc | 249 + .../src/G4MicroElecSiStructure.cc | 0 source/materials/src/G4NistManager.cc | 4 +- source/materials/src/G4NistMaterialBuilder.cc | 28 +- source/materials/src/G4OpticalSurface.cc | 862 +- source/materials/src/G4SurfaceProperty.cc | 40 +- .../src/G4UCNMaterialPropertiesTable.cc | 2 +- .../src/G4UCNMicroRoughnessHelper.cc | 0 source/parameterisations/gflash/History | 16 +- source/parameterisations/gflash/sources.cmake | 30 - source/particles/History | 7 + source/particles/management/src/G4IonTable.cc | 2 +- .../src/G4PhaseSpaceDecayChannel.cc | 2 +- .../shortlived/src/G4ShortLivedConstructor.cc | 64 +- source/persistency/History | 6 + source/persistency/ascii/History | 3 + .../ascii/include/G4tgbDetectorBuilder.hh | 37 +- .../include/G4tgbDetectorConstruction.hh | 25 +- .../persistency/ascii/include/G4tgbElement.hh | 55 +- .../ascii/include/G4tgbGeometryDumper.hh | 108 +- .../persistency/ascii/include/G4tgbIsotope.hh | 43 +- .../ascii/include/G4tgbMaterial.hh | 58 +- .../ascii/include/G4tgbMaterialMgr.hh | 81 +- .../ascii/include/G4tgbMaterialMixture.hh | 25 +- .../include/G4tgbMaterialMixtureByNoAtoms.hh | 27 +- .../include/G4tgbMaterialMixtureByVolume.hh | 25 +- .../include/G4tgbMaterialMixtureByWeight.hh | 25 +- .../ascii/include/G4tgbMaterialSimple.hh | 35 +- .../ascii/include/G4tgbPlaceParamCircle.hh | 29 +- .../ascii/include/G4tgbPlaceParamLinear.hh | 28 +- .../ascii/include/G4tgbPlaceParamSquare.hh | 39 +- .../include/G4tgbPlaceParameterisation.hh | 35 +- .../ascii/include/G4tgbRotationMatrix.hh | 34 +- .../ascii/include/G4tgbRotationMatrixMgr.hh | 42 +- .../persistency/ascii/include/G4tgbVolume.hh | 68 +- .../ascii/include/G4tgbVolumeMgr.hh | 88 +- .../persistency/ascii/include/G4tgrElement.hh | 21 +- .../ascii/include/G4tgrElementFromIsotopes.hh | 35 +- .../ascii/include/G4tgrElementSimple.hh | 34 +- .../ascii/include/G4tgrEvaluator.hh | 21 +- .../persistency/ascii/include/G4tgrFileIn.hh | 58 +- .../ascii/include/G4tgrFileReader.hh | 32 +- .../persistency/ascii/include/G4tgrIsotope.hh | 47 +- .../ascii/include/G4tgrLineProcessor.hh | 25 +- .../ascii/include/G4tgrMaterial.hh | 62 +- .../ascii/include/G4tgrMaterialFactory.hh | 54 +- .../ascii/include/G4tgrMaterialMixture.hh | 40 +- .../ascii/include/G4tgrMaterialSimple.hh | 37 +- .../ascii/include/G4tgrMessenger.hh | 31 +- .../ascii/include/G4tgrParameterMgr.hh | 48 +- .../persistency/ascii/include/G4tgrPlace.hh | 31 +- .../ascii/include/G4tgrPlaceDivRep.hh | 59 +- .../include/G4tgrPlaceParameterisation.hh | 29 +- .../ascii/include/G4tgrPlaceSimple.hh | 25 +- .../ascii/include/G4tgrRotationMatrix.hh | 39 +- .../include/G4tgrRotationMatrixFactory.hh | 44 +- .../persistency/ascii/include/G4tgrSolid.hh | 34 +- .../ascii/include/G4tgrSolidBoolean.hh | 40 +- .../persistency/ascii/include/G4tgrUtils.hh | 83 +- .../persistency/ascii/include/G4tgrVolume.hh | 77 +- .../ascii/include/G4tgrVolumeAssembly.hh | 37 +- .../ascii/include/G4tgrVolumeDivision.hh | 36 +- .../ascii/include/G4tgrVolumeMgr.hh | 99 +- .../ascii/src/G4tgbDetectorBuilder.cc | 41 +- .../ascii/src/G4tgbDetectorConstruction.cc | 46 +- source/persistency/ascii/src/G4tgbElement.cc | 89 +- .../ascii/src/G4tgbGeometryDumper.cc | 1498 +- source/persistency/ascii/src/G4tgbIsotope.cc | 41 +- source/persistency/ascii/src/G4tgbMaterial.cc | 23 +- .../persistency/ascii/src/G4tgbMaterialMgr.cc | 370 +- .../ascii/src/G4tgbMaterialMixture.cc | 35 +- .../src/G4tgbMaterialMixtureByNoAtoms.cc | 87 +- .../ascii/src/G4tgbMaterialMixtureByVolume.cc | 115 +- .../ascii/src/G4tgbMaterialMixtureByWeight.cc | 84 +- .../ascii/src/G4tgbMaterialSimple.cc | 48 +- .../ascii/src/G4tgbPlaceParamCircle.cc | 117 +- .../ascii/src/G4tgbPlaceParamLinear.cc | 97 +- .../ascii/src/G4tgbPlaceParamSquare.cc | 137 +- .../ascii/src/G4tgbPlaceParameterisation.cc | 44 +- .../ascii/src/G4tgbRotationMatrix.cc | 167 +- .../ascii/src/G4tgbRotationMatrixMgr.cc | 114 +- source/persistency/ascii/src/G4tgbVolume.cc | 1490 +- .../persistency/ascii/src/G4tgbVolumeMgr.cc | 311 +- source/persistency/ascii/src/G4tgrElement.cc | 12 +- .../ascii/src/G4tgrElementFromIsotopes.cc | 54 +- .../ascii/src/G4tgrElementSimple.cc | 48 +- .../persistency/ascii/src/G4tgrEvaluator.cc | 69 +- source/persistency/ascii/src/G4tgrFileIn.cc | 328 +- .../persistency/ascii/src/G4tgrFileReader.cc | 85 +- source/persistency/ascii/src/G4tgrIsotope.cc | 44 +- .../ascii/src/G4tgrLineProcessor.cc | 284 +- source/persistency/ascii/src/G4tgrMaterial.cc | 48 +- .../ascii/src/G4tgrMaterialFactory.cc | 223 +- .../ascii/src/G4tgrMaterialMixture.cc | 70 +- .../ascii/src/G4tgrMaterialSimple.cc | 75 +- .../persistency/ascii/src/G4tgrMessenger.cc | 46 +- .../ascii/src/G4tgrParameterMgr.cc | 123 +- source/persistency/ascii/src/G4tgrPlace.cc | 21 +- .../persistency/ascii/src/G4tgrPlaceDivRep.cc | 91 +- .../ascii/src/G4tgrPlaceParameterisation.cc | 52 +- .../persistency/ascii/src/G4tgrPlaceSimple.cc | 51 +- .../ascii/src/G4tgrRotationMatrix.cc | 52 +- .../ascii/src/G4tgrRotationMatrixFactory.cc | 88 +- source/persistency/ascii/src/G4tgrSolid.cc | 150 +- .../ascii/src/G4tgrSolidBoolean.cc | 76 +- source/persistency/ascii/src/G4tgrUtils.cc | 717 +- source/persistency/ascii/src/G4tgrVolume.cc | 281 +- .../ascii/src/G4tgrVolumeAssembly.cc | 106 +- .../ascii/src/G4tgrVolumeDivision.cc | 107 +- .../persistency/ascii/src/G4tgrVolumeMgr.cc | 343 +- source/persistency/gdml/History | 18 +- .../gdml/include/G4GDMLAuxStructType.hh | 23 +- .../gdml/include/G4GDMLEvaluator.hh | 54 +- .../gdml/include/G4GDMLMessenger.hh | 53 +- .../gdml/include/G4GDMLParameterisation.hh | 83 +- .../persistency/gdml/include/G4GDMLParser.hh | 188 +- .../persistency/gdml/include/G4GDMLParser.icc | 185 +- source/persistency/gdml/include/G4GDMLRead.hh | 167 +- .../gdml/include/G4GDMLReadDefine.hh | 100 +- .../gdml/include/G4GDMLReadMaterials.hh | 61 +- .../gdml/include/G4GDMLReadParamvol.hh | 90 +- .../gdml/include/G4GDMLReadSetup.hh | 29 +- .../gdml/include/G4GDMLReadSolids.hh | 139 +- .../gdml/include/G4GDMLReadStructure.hh | 84 +- .../persistency/gdml/include/G4GDMLWrite.hh | 89 +- .../gdml/include/G4GDMLWriteDefine.hh | 65 +- .../gdml/include/G4GDMLWriteMaterials.hh | 69 +- .../gdml/include/G4GDMLWriteParamvol.hh | 66 +- .../gdml/include/G4GDMLWriteSetup.hh | 22 +- .../gdml/include/G4GDMLWriteSolids.hh | 127 +- .../gdml/include/G4GDMLWriteStructure.hh | 107 +- source/persistency/gdml/include/G4STRead.hh | 29 +- source/persistency/gdml/schema/gdml.xsd | 0 source/persistency/gdml/schema/gdml_core.xsd | 0 .../persistency/gdml/schema/gdml_define.xsd | 0 .../gdml/schema/gdml_materials.xsd | 0 .../gdml/schema/gdml_parameterised.xsd | 0 .../persistency/gdml/schema/gdml_replicas.xsd | 0 .../persistency/gdml/schema/gdml_solids.xsd | 0 .../persistency/gdml/src/G4GDMLEvaluator.cc | 403 +- .../persistency/gdml/src/G4GDMLMessenger.cc | 92 +- .../gdml/src/G4GDMLParameterisation.cc | 281 +- source/persistency/gdml/src/G4GDMLParser.cc | 327 +- source/persistency/gdml/src/G4GDMLRead.cc | 657 +- .../persistency/gdml/src/G4GDMLReadDefine.cc | 1118 +- .../gdml/src/G4GDMLReadMaterials.cc | 1364 +- .../gdml/src/G4GDMLReadParamvol.cc | 1999 +- .../persistency/gdml/src/G4GDMLReadSetup.cc | 124 +- .../persistency/gdml/src/G4GDMLReadSolids.cc | 5722 +- .../gdml/src/G4GDMLReadStructure.cc | 1752 +- source/persistency/gdml/src/G4GDMLWrite.cc | 410 +- .../persistency/gdml/src/G4GDMLWriteDefine.cc | 149 +- .../gdml/src/G4GDMLWriteMaterials.cc | 495 +- .../gdml/src/G4GDMLWriteParamvol.cc | 807 +- .../persistency/gdml/src/G4GDMLWriteSetup.cc | 31 +- .../persistency/gdml/src/G4GDMLWriteSolids.cc | 2204 +- .../gdml/src/G4GDMLWriteStructure.cc | 1293 +- source/persistency/gdml/src/G4STRead.cc | 422 +- source/persistency/mctruth/History | 3 + .../mctruth/include/G4DCIOcatalog.hh | 70 +- .../mctruth/include/G4DCIOentryT.hh | 74 +- .../mctruth/include/G4FileUtilities.hh | 53 +- .../mctruth/include/G4HCIOcatalog.hh | 67 +- .../mctruth/include/G4HCIOentryT.hh | 77 +- .../persistency/mctruth/include/G4MCTEvent.hh | 180 +- .../mctruth/include/G4MCTGenEvent.hh | 64 +- .../mctruth/include/G4MCTGenParticle.hh | 15 +- .../mctruth/include/G4MCTSimEvent.hh | 157 +- .../mctruth/include/G4MCTSimParticle.hh | 251 +- .../mctruth/include/G4MCTSimVertex.hh | 260 +- .../mctruth/include/G4PersistencyCenter.hh | 190 +- .../include/G4PersistencyCenterMessenger.hh | 68 +- .../mctruth/include/G4PersistencyManager.hh | 197 +- .../mctruth/include/G4PersistencyManagerT.hh | 153 +- .../persistency/mctruth/include/G4Pevent.hh | 73 +- .../mctruth/include/G4VDCIOentry.hh | 45 +- .../mctruth/include/G4VHCIOentry.hh | 47 +- .../mctruth/include/G4VMCTruthIO.hh | 41 +- .../mctruth/include/G4VPDigitIO.hh | 58 +- .../mctruth/include/G4VPDigitsCollectionIO.hh | 57 +- .../mctruth/include/G4VPEventIO.hh | 53 +- .../persistency/mctruth/include/G4VPHitIO.hh | 58 +- .../mctruth/include/G4VPHitsCollectionIO.hh | 57 +- .../mctruth/include/G4VTransactionManager.hh | 52 +- .../persistency/mctruth/src/G4DCIOcatalog.cc | 130 +- .../mctruth/src/G4FileUtilities.cc | 41 +- .../persistency/mctruth/src/G4HCIOcatalog.cc | 128 +- source/persistency/mctruth/src/G4MCTEvent.cc | 90 +- .../persistency/mctruth/src/G4MCTGenEvent.cc | 44 +- .../persistency/mctruth/src/G4MCTSimEvent.cc | 161 +- .../mctruth/src/G4MCTSimParticle.cc | 208 +- .../persistency/mctruth/src/G4MCTSimVertex.cc | 87 +- .../mctruth/src/G4PersistencyCenter.cc | 348 +- .../src/G4PersistencyCenterMessenger.cc | 187 +- .../mctruth/src/G4PersistencyManager.cc | 266 +- source/persistency/mctruth/src/G4Pevent.cc | 16 +- .../persistency/mctruth/src/G4VDCIOentry.cc | 17 +- .../persistency/mctruth/src/G4VHCIOentry.cc | 17 +- .../persistency/mctruth/src/G4VMCTruthIO.cc | 17 +- source/persistency/mctruth/src/G4VPDigitIO.cc | 21 +- .../mctruth/src/G4VPDigitsCollectionIO.cc | 29 +- source/persistency/mctruth/src/G4VPEventIO.cc | 11 +- source/persistency/mctruth/src/G4VPHitIO.cc | 21 +- .../mctruth/src/G4VPHitsCollectionIO.cc | 28 +- source/physics_lists/History | 377 +- source/physics_lists/builders/History | 29 + .../builders/include/G4HadronicBuilder.hh | 36 +- source/physics_lists/builders/sources.cmake | 78 - .../builders/src/G4HadronicBuilder.cc | 389 +- .../physics_lists/constructors/decay/History | 11 + .../constructors/decay/sources.cmake | 66 - .../decay/src/G4RadioactiveDecayPhysics.cc | 10 +- .../constructors/electromagnetic/History | 32 + .../include/G4EmDNAChemistry_option3.hh | 0 .../include/G4EmModelActivator.hh | 10 +- .../include/G4GammaGeneralProcess.hh | 74 +- .../include/G4OpticalPhysics.hh | 128 +- .../electromagnetic/sources.cmake | 52 - .../electromagnetic/src/G4EmBuilder.cc | 11 +- .../src/G4EmDNAChemistry_option3.cc | 0 .../electromagnetic/src/G4EmModelActivator.cc | 147 +- .../src/G4EmStandardPhysicsSS.cc | 35 +- .../src/G4EmStandardPhysicsWVI.cc | 2 +- .../src/G4EmStandardPhysics_option4.cc | 1 + .../src/G4GammaGeneralProcess.cc | 99 +- .../electromagnetic/src/G4OpticalPhysics.cc | 525 +- .../constructors/factory/sources.cmake | 84 - .../constructors/gamma_lepto_nuclear/History | 9 +- .../include/G4EmExtraPhysics.hh | 2 + .../include/G4EmMessenger.hh | 1 + .../gamma_lepto_nuclear/sources.cmake | 66 - .../src/G4EmExtraPhysics.cc | 36 +- .../gamma_lepto_nuclear/src/G4EmMessenger.cc | 11 +- .../constructors/hadron_elastic/History | 23 + .../constructors/hadron_elastic/sources.cmake | 42 - .../src/G4HadronElasticPhysics.cc | 222 +- .../src/G4HadronHElasticPhysics.cc | 11 + .../hadron_elastic/src/G4ThermalNeutrons.cc | 4 +- .../constructors/hadron_inelastic/History | 82 +- .../constructors/hadron_inelastic/README | 123 +- .../include/G4HadronInelasticQBBC.hh | 12 +- .../include/G4HadronPhysicsFTFP_BERT.hh | 34 +- .../include/G4HadronPhysicsFTFP_BERT_ATL.hh | 16 +- .../include/G4HadronPhysicsFTFP_BERT_HP.hh | 9 +- .../include/G4HadronPhysicsFTFP_BERT_TRV.hh | 13 +- .../include/G4HadronPhysicsFTFQGSP_BERT.hh | 116 +- .../include/G4HadronPhysicsFTF_BIC.hh | 46 +- .../include/G4HadronPhysicsINCLXX.hh | 36 +- .../include/G4HadronPhysicsNuBeam.hh | 55 +- .../include/G4HadronPhysicsQGSP_BERT.hh | 28 +- .../include/G4HadronPhysicsQGSP_BERT_HP.hh | 37 +- .../include/G4HadronPhysicsQGSP_BIC.hh | 19 +- .../include/G4HadronPhysicsQGSP_BIC_AllHP.hh | 11 +- .../include/G4HadronPhysicsQGSP_BIC_HP.hh | 14 +- .../include/G4HadronPhysicsQGSP_FTFP_BERT.hh | 14 +- .../include/G4HadronPhysicsQGS_BIC.hh | 41 +- .../include/G4HadronPhysicsShielding.hh | 56 +- .../include/G4HadronPhysicsShieldingLEND.hh | 52 +- .../include/G4VHadronPhysics.hh | 52 +- .../hadron_inelastic/sources.cmake | 71 +- .../src/G4HadronInelasticQBBC.cc | 240 +- .../src/G4HadronPhysicsFTFP_BERT.cc | 152 +- .../src/G4HadronPhysicsFTFP_BERT_ATL.cc | 99 +- .../src/G4HadronPhysicsFTFP_BERT_HP.cc | 24 +- .../src/G4HadronPhysicsFTFP_BERT_TRV.cc | 68 +- .../src/G4HadronPhysicsFTFQGSP_BERT.cc | 436 +- .../src/G4HadronPhysicsFTF_BIC.cc | 138 +- .../src/G4HadronPhysicsINCLXX.cc | 213 +- .../src/G4HadronPhysicsNuBeam.cc | 188 +- .../src/G4HadronPhysicsQGSP_BERT.cc | 162 +- .../src/G4HadronPhysicsQGSP_BERT_HP.cc | 27 +- .../src/G4HadronPhysicsQGSP_BIC.cc | 139 +- .../src/G4HadronPhysicsQGSP_BIC_AllHP.cc | 13 +- .../src/G4HadronPhysicsQGSP_BIC_HP.cc | 17 +- .../src/G4HadronPhysicsQGSP_FTFP_BERT.cc | 26 +- .../src/G4HadronPhysicsQGS_BIC.cc | 278 +- .../src/G4HadronPhysicsShielding.cc | 243 +- .../src/G4HadronPhysicsShieldingLEND.cc | 270 +- .../hadron_inelastic/src/G4VHadronPhysics.cc | 224 +- .../physics_lists/constructors/ions/History | 4 + source/physics_lists/constructors/ions/README | 11 +- .../constructors/ions/sources.cmake | 64 - .../constructors/limiters/sources.cmake | 70 - .../constructors/stopping/sources.cmake | 64 - source/physics_lists/lists/History | 5 + source/physics_lists/lists/sources.cmake | 86 - source/physics_lists/lists/src/LBE.cc | 5 +- source/physics_lists/util/GNUmakefile | 2 + source/physics_lists/util/History | 38 + .../util/include/G4HadParticles.hh | 6 +- .../include/G4HadProcesses.hh} | 92 +- .../util/include/G4PhysListUtil.hh | 4 + source/physics_lists/util/sources.cmake | 79 +- .../physics_lists/util/src/G4HadParticles.cc | 56 +- .../physics_lists/util/src/G4HadProcesses.cc | 172 + .../physics_lists/util/src/G4PhysListUtil.cc | 46 +- source/processes/History | 62 +- source/processes/biasing/History | 4 + .../processes/biasing/generic/sources.cmake | 26 +- source/processes/biasing/importance/History | 4 + .../importance/include/G4ImportanceProcess.hh | 56 +- .../include/G4WeightCutOffProcess.hh | 60 +- .../include/G4WeightWindowProcess.hh | 55 +- .../biasing/importance/sources.cmake | 27 +- .../importance/src/G4GeometrySampler.cc | 2 +- .../importance/src/G4ImportanceProcess.cc | 26 +- .../importance/src/G4WeightCutOffProcess.cc | 30 +- .../importance/src/G4WeightWindowProcess.cc | 28 +- .../management/include/G4VBiasingOperator.hh | 16 +- .../biasing/management/sources.cmake | 26 +- .../management/src/G4VBiasingOperator.cc | 2 +- source/processes/cuts/sources.cmake | 15 +- source/processes/decay/sources.cmake | 22 +- ...AdjointProcessEquivalentToDirectProcess.hh | 2 +- .../electromagnetic/adjoint/sources.cmake | 30 +- source/processes/electromagnetic/dna/History | 19 +- .../management/include/G4ITReactionChange.hh | 2 +- .../include/G4ITTransportationManager.icc | 2 +- .../dna/management/sources.cmake | 22 +- .../dna/management/src/G4ITModelProcessor.cc | 2 +- .../models/include/G4DNAELSEPAElasticModel.hh | 0 .../dna/models/include/G4DNAIRT.hh | 0 .../dna/models/include/G4DNAPTBAugerModel.hh | 0 .../models/include/G4DNAPTBElasticModel.hh | 0 .../models/include/G4DNAPTBExcitationModel.hh | 0 .../models/include/G4DNAPTBIonisationModel.hh | 0 .../dna/models/include/G4DNAVacuumModel.hh | 0 .../electromagnetic/dna/models/sources.cmake | 33 +- .../models/src/G4DNABornIonisationModel1.cc | 4 +- .../models/src/G4DNABornIonisationModel2.cc | 2 +- .../models/src/G4DNACPA100IonisationModel.cc | 2 +- .../dna/models/src/G4DNAELSEPAElasticModel.cc | 0 .../src/G4DNAEmfietzoglouIonisationModel.cc | 2 +- .../dna/models/src/G4DNAIRT.cc | 0 .../dna/models/src/G4DNAPTBAugerModel.cc | 0 .../dna/models/src/G4DNAPTBExcitationModel.cc | 0 .../dna/models/src/G4DNAVacuumModel.cc | 0 .../dna/molecules/management/GNUmakefile | 0 .../include/G4MolecularConfiguration.hh | 2 +- .../include/G4MolecularDissociationChannel.hh | 0 .../include/G4MolecularDissociationTable.hh | 0 .../management/include/G4Molecule.hh | 0 .../include/G4MoleculeDefinition.hh | 0 .../G4VMolecularDissociationDisplacer.hh | 0 .../dna/molecules/management/sources.cmake | 17 +- .../src/G4MolecularDissociationChannel.cc | 0 .../src/G4MolecularDissociationTable.cc | 0 .../molecules/management/src/G4Molecule.cc | 0 .../management/src/G4MoleculeDefinition.cc | 0 .../src/G4VMolecularDissociationDisplacer.cc | 0 .../dna/molecules/types/GNUmakefile | 0 .../molecules/types/include/G4FakeMolecule.hh | 0 .../dna/molecules/types/include/G4HO2.hh | 0 .../dna/molecules/types/include/G4O2.hh | 0 .../dna/molecules/types/include/G4O3.hh | 0 .../dna/molecules/types/include/G4Oxygen.hh | 0 .../dna/molecules/types/sources.cmake | 16 +- .../dna/molecules/types/src/G4FakeMolecule.cc | 0 .../dna/molecules/types/src/G4HO2.cc | 0 .../dna/molecules/types/src/G4O2.cc | 0 .../dna/molecules/types/src/G4O3.cc | 0 .../dna/molecules/types/src/G4Oxygen.cc | 0 .../include/G4DNAMolecularDissociation.hh | 0 .../G4DNAWaterDissociationDisplacer.hh | 0 .../dna/processes/sources.cmake | 34 +- .../dna/processes/src/G4DNAElastic.cc | 2 +- .../src/G4DNAMolecularDissociation.cc | 0 .../src/G4DNAWaterDissociationDisplacer.cc | 0 .../electromagnetic/dna/utils/GNUmakefile | 1 + .../utils/include/G4DNAMolecularMaterial.hh | 19 +- .../dna/utils/include/G4ErrorFunction.hh | 0 .../electromagnetic/dna/utils/sources.cmake | 32 +- .../dna/utils/src/G4DNAMolecularMaterial.cc | 176 +- .../dna/utils/src/G4ErrorFunction.cc | 0 .../electromagnetic/highenergy/History | 10 + .../highenergy/include/G4hBremsstrahlung.hh | 18 +- .../include/G4hBremsstrahlungModel.hh | 18 +- .../highenergy/include/G4hPairProduction.hh | 14 +- .../include/G4hPairProductionModel.hh | 9 +- .../electromagnetic/highenergy/sources.cmake | 28 +- .../highenergy/src/G4hBremsstrahlung.cc | 1 + .../highenergy/src/G4hBremsstrahlungModel.cc | 12 +- .../highenergy/src/G4hPairProduction.cc | 1 + .../highenergy/src/G4hPairProductionModel.cc | 116 - .../electromagnetic/lowenergy/History | 42 +- .../lowenergy/include/G4AugerData.hh | 2 +- .../include/G4LivermorePhotoElectricModel.hh | 2 +- .../G4LivermorePolarizedPhotoElectricModel.hh | 2 +- .../{G4MuElecSiStructure.hh => G4MIData.hh} | 74 +- ... => G4MicroElecCrossSectionDataSet_new.hh} | 109 +- .../include/G4MicroElecElasticModel_new.hh | 190 + .../include/G4MicroElecInelasticModel_new.hh | 194 + .../include/G4MicroElecInelastic_new.hh | 105 + .../include/G4MicroElecLOPhononModel.hh | 94 + ...ic.hh => G4MicroElecLOPhononScattering.hh} | 67 +- .../lowenergy/include/G4MicroElecSurface.hh | 143 + .../lowenergy/include/G4MuElecElasticModel.hh | 153 - .../include/G4MuElecInelasticModel.hh | 162 - .../include/G4PenelopeRayleighModelMI.hh | 168 + .../lowenergy/include/G4QAOLowEnergyLoss.hh | 4 +- .../lowenergy/include/G4VecpssrKModel.hh | 0 .../lowenergy/include/G4VecpssrLiModel.hh | 0 .../lowenergy/include/G4ecpssrBaseKxsModel.hh | 0 .../include/G4ecpssrBaseLixsModel.hh | 0 .../lowenergy/include/G4empCrossSection.hh | 0 .../electromagnetic/lowenergy/sources.cmake | 68 +- .../lowenergy/src/G4FluoData.cc | 2 +- .../lowenergy/src/G4JAEAElasticScattering.cc | 2 +- .../G4JAEAPolarizedElasticScatteringModel.cc | 31 +- .../src/G4LivermoreComptonModifiedModel.cc | 2 +- .../src/G4LivermorePolarizedComptonModel.cc | 2 +- .../lowenergy/src/G4MIData.cc} | 34 +- ... => G4MicroElecCrossSectionDataSet_new.cc} | 240 +- .../src/G4MicroElecElasticModel_new.cc | 692 + .../src/G4MicroElecInelasticModel.cc | 4 +- .../src/G4MicroElecInelasticModel_new.cc | 1406 + .../lowenergy/src/G4MicroElecInelastic_new.cc | 134 + .../lowenergy/src/G4MicroElecLOPhononModel.cc | 181 + ...ic.cc => G4MicroElecLOPhononScattering.cc} | 87 +- .../lowenergy/src/G4MicroElecSurface.cc | 493 + .../lowenergy/src/G4MuElecElasticModel.cc | 433 - .../lowenergy/src/G4MuElecInelastic.cc | 148 - .../lowenergy/src/G4MuElecInelasticModel.cc | 799 - .../src/G4PenelopeAnnihilationModel.cc | 2 +- .../src/G4PenelopeBremsstrahlungAngular.cc | 4 +- .../src/G4PenelopeBremsstrahlungFS.cc | 10 +- .../src/G4PenelopeBremsstrahlungModel.cc | 4 +- .../lowenergy/src/G4PenelopeComptonModel.cc | 12 +- .../lowenergy/src/G4PenelopeCrossSection.cc | 30 +- .../src/G4PenelopeGammaConversionModel.cc | 14 +- .../src/G4PenelopeIonisationModel.cc | 12 +- .../src/G4PenelopeIonisationXSHandler.cc | 38 +- .../src/G4PenelopeOscillatorManager.cc | 28 +- .../src/G4PenelopePhotoElectricModel.cc | 14 +- .../lowenergy/src/G4PenelopeRayleighModel.cc | 30 +- .../src/G4PenelopeRayleighModelMI.cc | 1877 + .../lowenergy/src/G4ecpssrBaseKxsModel.cc | 0 .../lowenergy/src/G4ecpssrBaseLixsModel.cc | 0 .../lowenergy/src/G4empCrossSection.cc | 0 .../processes/electromagnetic/muons/History | 15 + .../muons/include/G4ModifiedMephi.hh | 90 + .../muons/include/G4MuBremsstrahlung.hh | 8 +- .../muons/include/G4MuBremsstrahlungModel.hh | 17 +- .../muons/include/G4MuPairProductionModel.hh | 7 +- .../electromagnetic/muons/sources.cmake | 27 +- .../muons/src/G4ModifiedMephi.cc | 131 + .../muons/src/G4MuBremsstrahlung.cc | 1 + .../muons/src/G4MuBremsstrahlungModel.cc | 61 +- .../muons/src/G4MuPairProduction.cc | 1 + .../muons/src/G4MuPairProductionModel.cc | 289 +- .../electromagnetic/pii/sources.cmake | 25 +- .../electromagnetic/polarisation/History | 2 +- .../G4PolarizedAnnihilationCrossSection.hh | 2 +- .../G4PolarizedGammaConversionModel.hh | 2 +- .../polarisation/sources.cmake | 27 +- .../polarisation/src/G4PolarizationManager.cc | 2 +- .../src/G4PolarizedGammaConversionModel.cc | 2 +- .../electromagnetic/standard/History | 47 +- .../standard/include/G4BetheHeitler5DModel.hh | 2 +- .../standard/include/G4BetheHeitlerModel.hh | 2 +- .../standard/include/G4DeltaAngle.hh | 24 +- .../include/G4GoudsmitSaundersonMscModel.hh | 0 .../include/G4ICRU49NuclearStoppingModel.hh | 10 +- .../standard/include/G4ICRU73QOModel.hh | 4 +- .../include/G4LindhardSorensenIonModel.hh | 89 +- .../include/G4PairProductionRelModel.hh | 2 +- .../G4SauterGavrilaAngularDistribution.hh | 16 +- .../standard/include/G4SeltzerBergerModel.hh | 11 +- .../include/G4WentzelOKandVIxSection.hh | 10 +- .../standard/include/G4WentzelVIRelModel.hh | 8 +- .../include/G4eDPWACoulombScatteringModel.hh | 146 + .../standard/include/G4eDPWAElasticDCS.hh | 271 + .../electromagnetic/standard/sources.cmake | 35 +- .../standard/src/G4DeltaAngle.cc | 5 +- .../src/G4GoudsmitSaundersonMscModel.cc | 0 .../src/G4ICRU49NuclearStoppingModel.cc | 4 +- .../src/G4LindhardSorensenIonModel.cc | 15 +- .../standard/src/G4SeltzerBergerModel.cc | 48 +- .../standard/src/G4UrbanMscModel.cc | 18 +- .../standard/src/G4WentzelOKandVIxSection.cc | 4 +- .../standard/src/G4WentzelVIRelModel.cc | 20 +- .../standard/src/G4eBremsstrahlungRelModel.cc | 4 +- .../src/G4eDPWACoulombScatteringModel.cc | 195 + .../standard/src/G4eDPWAElasticDCS.cc | 705 + .../standard/src/G4eplusTo3GammaOKVIModel.cc | 5 +- .../processes/electromagnetic/utils/History | 954 +- .../utils/include/G4ElectronIonPair.hh | 0 .../utils/include/G4EmDataHandler.hh | 1 + .../utils/include/G4EmModelManager.hh | 11 +- .../utils/include/G4EmParameters.hh | 14 + .../utils/include/G4EmParametersMessenger.hh | 2 + .../utils/include/G4EmProcessSubType.hh | 5 +- .../utils/include/G4EmSaturation.hh | 2 +- .../utils/include/G4LossTableManager.hh | 29 +- .../utils/include/G4NIELCalculator.hh | 0 .../utils/include/G4OpticalParameters.hh | 272 + .../include/G4OpticalParametersMessenger.hh} | 51 +- .../utils/include/G4VAtomDeexcitation.hh | 4 +- .../utils/include/G4VEmAngularDistribution.hh | 14 +- .../utils/include/G4VEmFluctuationModel.hh | 5 +- .../utils/include/G4VEmModel.hh | 16 +- .../utils/include/G4VEmProcess.hh | 2 +- .../utils/include/G4VMscModel.hh | 6 +- .../utils/include/G4VMultipleScattering.hh | 2 +- .../electromagnetic/utils/sources.cmake | 31 +- .../utils/src/G4ElectronIonPair.cc | 2 +- .../utils/src/G4EmDataHandler.cc | 5 +- .../utils/src/G4EmModelManager.cc | 5 +- .../utils/src/G4EmParameters.cc | 38 +- .../utils/src/G4EmParametersMessenger.cc | 34 +- .../utils/src/G4EmSaturation.cc | 0 .../utils/src/G4LossTableManager.cc | 4 +- .../utils/src/G4NIELCalculator.cc | 0 .../utils/src/G4OpticalParameters.cc | 603 + .../src/G4OpticalParametersMessenger.cc} | 429 +- .../utils/src/G4VAtomDeexcitation.cc | 0 .../utils/src/G4VEmAngularDistribution.cc | 9 +- .../electromagnetic/utils/src/G4VEmModel.cc | 18 +- .../electromagnetic/utils/src/G4VEmProcess.cc | 1 + .../electromagnetic/utils/src/G4VMscModel.cc | 14 + .../utils/src/G4VMultipleScattering.cc | 2 +- .../processes/electromagnetic/xrays/History | 18 + .../xrays/include/G4Cerenkov.hh | 121 +- .../xrays/include/G4Scintillation.hh | 201 +- .../G4ScintillationTrackInformation.hh | 88 +- .../electromagnetic/xrays/sources.cmake | 28 +- .../electromagnetic/xrays/src/G4Cerenkov.cc | 521 +- .../xrays/src/G4Scintillation.cc | 1177 +- .../src/G4ScintillationTrackInformation.cc | 44 +- .../processes/hadronic/cross_sections/History | 532 +- .../include/G4ChipsAntiBaryonInelasticXS.hh | 2 +- .../include/G4ChipsHyperonInelasticXS.hh | 2 +- .../include/G4ChipsKaonMinusInelasticXS.hh | 2 +- .../include/G4ChipsKaonPlusInelasticXS.hh | 8 +- .../include/G4ChipsNeutronInelasticXS.hh | 2 +- .../include/G4ChipsPionMinusInelasticXS.hh | 8 +- .../include/G4ChipsPionPlusInelasticXS.hh | 8 +- .../include/G4ChipsProtonInelasticXS.hh | 2 +- .../include/G4GammaNuclearXS.hh | 122 + .../include/G4IonProtonCrossSection.hh | 40 +- .../cross_sections/include/G4IsotopeList.hh | 78 + .../include/G4NeutronCaptureXS.hh | 27 +- .../include/G4NeutronElasticXS.hh | 28 +- .../include/G4NeutronInelasticXS.hh | 36 +- .../include/G4ParticleInelasticXS.hh | 58 +- .../G4ProjectileFragmentCrossSection.hh | 208 - .../cross_sections/include/G4ZeroXS.hh | 2 +- .../hadronic/cross_sections/sources.cmake | 30 +- .../src/G4ComponentGGHadronNucleusXsc.cc | 4 +- .../src/G4EMDissociationCrossSection.cc | 10 +- .../src/G4ElNeutrinoNucleusTotXsc.cc | 4 +- .../cross_sections/src/G4GammaNuclearXS.cc | 298 + .../cross_sections/src/G4HadronNucleonXsc.cc | 2 +- .../src/G4IonProtonCrossSection.cc | 98 +- .../src/G4MuNeutrinoNucleusTotXsc.cc | 4 +- .../cross_sections/src/G4NeutronCaptureXS.cc | 88 +- .../cross_sections/src/G4NeutronElasticXS.cc | 112 +- .../src/G4NeutronInelasticXS.cc | 85 +- .../src/G4ParticleInelasticXS.cc | 209 +- .../hadronic/cross_sections/src/G4ZeroXS.cc | 2 +- source/processes/hadronic/management/History | 32 +- .../include/G4HadronicEPTestMessenger.hh | 12 +- .../management/include/G4HadronicProcess.hh | 1 - .../include/G4HadronicProcessStore.hh | 7 +- .../hadronic/management/sources.cmake | 27 +- .../src/G4HadronicEPTestMessenger.cc | 95 +- .../management/src/G4HadronicProcess.cc | 25 +- .../management/src/G4HadronicProcessStore.cc | 70 +- source/processes/hadronic/models/abla/History | 3 + .../hadronic/models/abla/sources.cmake | 28 +- .../hadronic/models/abla/src/G4Abla.cc | 29 +- .../hadronic/models/abrasion/sources.cmake | 41 +- .../models/binary_cascade/sources.cmake | 40 +- .../binary_cascade/src/G4BinaryCascade.cc | 2 +- .../src/G4BinaryLightIonReaction.cc | 2 +- .../processes/hadronic/models/cascade/History | 4 +- .../include/G4MultiBodyMomentumDist.hh | 2 +- .../cascade/include/G4TwoBodyAngularDist.hh | 2 +- .../models/cascade/cascade/sources.cmake | 40 +- .../cascade/src/G4MultiBodyMomentumDist.cc | 2 +- .../cascade/cascade/src/G4NucleiModel.cc | 2 +- .../cascade/src/G4TwoBodyAngularDist.cc | 2 +- .../hadronic/models/coherent_elastic/History | 8 +- .../models/coherent_elastic/sources.cmake | 28 +- .../coherent_elastic/src/G4HadronElastic.cc | 5 +- .../hadronic/models/de_excitation/History | 29 +- .../de_excitation/ablation/sources.cmake | 37 +- .../include/G4EvaporationChannel.hh | 2 +- .../de_excitation/evaporation/sources.cmake | 29 +- .../de_excitation/fermi_breakup/sources.cmake | 20 +- .../src/G4FermiFragmentsPoolVI.cc | 2 +- .../de_excitation/fission/sources.cmake | 25 +- .../gem_evaporation/include/G4GEMChannel.hh | 2 +- .../gem_evaporation/sources.cmake | 27 +- .../de_excitation/handler/sources.cmake | 31 +- .../handler/src/G4ExcitationHandler.cc | 30 +- .../include/G4DeexParametersMessenger.hh | 5 +- .../include/G4DeexPrecoParameters.hh | 32 +- .../management/include/G4NuclearLevelData.hh | 9 +- .../de_excitation/management/sources.cmake | 25 +- .../src/G4DeexParametersMessenger.cc | 23 +- .../management/src/G4DeexPrecoParameters.cc | 21 +- .../management/src/G4LevelReader.cc | 2 +- .../management/src/G4NuclearLevelData.cc | 99 +- .../multifragmentation/sources.cmake | 23 +- .../src/G4StatMFMacroChemicalPotential.cc | 6 +- .../src/G4StatMFMicroManager.cc | 4 +- .../photon_evaporation/sources.cmake | 29 +- .../models/de_excitation/util/sources.cmake | 23 +- .../hadronic/models/em_dissociation/History | 7 + .../models/em_dissociation/sources.cmake | 40 +- .../em_dissociation/src/G4EMDissociation.cc | 4 +- .../models/fission/include/G4FissLib.hh | 0 .../fission/include/G4FissionLibrary.hh | 0 .../hadronic/models/fission/sources.cmake | 28 +- .../models/fission/src/G4FissionLibrary.cc | 0 .../models/gamma_nuclear/sources.cmake | 43 +- .../hadronic/models/im_r_matrix/sources.cmake | 31 +- .../models/inclxx/incl_physics/sources.cmake | 29 +- .../src/G4INCLStrangeAbsorbtionChannel.cc | 2 +- .../models/inclxx/interface/sources.cmake | 38 +- .../inclxx/utils/include/G4INCLEventInfo.hh | 4 +- .../models/inclxx/utils/sources.cmake | 30 +- source/processes/hadronic/models/lend/History | 6 +- .../hadronic/models/lend/sources.cmake | 36 +- .../models/lend/src/G4LENDInelastic.cc | 2 +- .../hadronic/models/lend/src/nf_utilities.cc | 2 +- .../models/lepto_nuclear/sources.cmake | 42 +- .../hadronic/models/management/sources.cmake | 24 +- .../hadronic/models/particle_hp/History | 57 + .../particle_hp/include/G4ENDFTapeRead.hh | 0 .../include/G4ENDFYieldDataContainer.hh | 0 .../particle_hp/include/G4FFGEnumerations.hh | 0 .../include/G4FPYBiasedLightFragmentDist.hh | 0 .../include/G4FPYNormalFragmentDist.hh | 0 .../particle_hp/include/G4FPYNubarValues.hh | 0 .../particle_hp/include/G4FPYSamplingOps.hh | 0 .../include/G4FPYTreeStructures.hh | 0 .../include/G4FissionFragmentGenerator.hh | 0 .../include/G4FissionProductYieldDist.hh | 4 + .../include/G4ParticleHPChannel.hh | 44 +- .../include/G4ParticleHPEnAngCorrelation.hh | 7 +- .../include/G4ParticleHPFinalState.hh | 4 +- .../include/G4ParticleHPManager.hh | 13 +- .../include/G4ParticleHPMessenger.hh | 11 +- .../particle_hp/include/G4ShiftedGaussian.hh | 0 .../particle_hp/include/G4TableTemplate.hh | 0 .../include/G4WattFissionSpectrumValues.hh | 0 .../hadronic/models/particle_hp/sources.cmake | 34 +- .../models/particle_hp/src/G4ENDFTapeRead.cc | 0 .../src/G4ENDFYieldDataContainer.cc | 0 .../src/G4FPYBiasedLightFragmentDist.cc | 0 .../src/G4FPYNormalFragmentDist.cc | 0 .../particle_hp/src/G4FPYSamplingOps.cc | 0 .../src/G4FissionFragmentGenerator.cc | 0 .../src/G4FissionProductYieldDist.cc | 215 +- .../particle_hp/src/G4ParticleHPChannel.cc | 29 +- .../src/G4ParticleHPContAngularPar.cc | 7 +- .../particle_hp/src/G4ParticleHPFissionFS.cc | 2 +- .../particle_hp/src/G4ParticleHPInelastic.cc | 11 +- .../src/G4ParticleHPInelasticBaseFS.cc | 4 +- .../src/G4ParticleHPInelasticCompFS.cc | 2 +- .../src/G4ParticleHPInelasticData.cc | 3 +- .../particle_hp/src/G4ParticleHPManager.cc | 92 +- .../particle_hp/src/G4ParticleHPMessenger.cc | 13 + .../particle_hp/src/G4ParticleHPPhotonDist.cc | 8 +- .../particle_hp/src/G4ShiftedGaussian.cc | 0 .../models/parton_string/diffraction/History | 43 + .../parton_string/diffraction/sources.cmake | 32 +- .../src/G4DiffractiveExcitation.cc | 403 +- .../diffraction/src/G4FTFAnnihilation.cc | 104 +- .../diffraction/src/G4FTFModel.cc | 168 +- .../diffraction/src/G4FTFParameters.cc | 84 +- .../parton_string/hadronization/History | 62 + .../include/G4FragmentingString.hh | 36 +- .../include/G4LundStringFragmentation.hh | 3 + .../include/G4QGSMFragmentation.hh | 4 +- .../parton_string/hadronization/sources.cmake | 31 +- .../hadronization/src/G4ExcitedStringDecay.cc | 2 +- .../hadronization/src/G4FragmentingString.cc | 114 +- .../hadronization/src/G4HadronBuilder.cc | 330 +- .../src/G4LundStringFragmentation.cc | 174 +- .../hadronization/src/G4QGSMFragmentation.cc | 45 +- .../src/G4VLongitudinalStringDecay.cc | 154 +- .../models/parton_string/management/History | 23 +- .../parton_string/management/sources.cmake | 28 +- .../management/src/G4VPartonStringModel.cc | 79 +- .../management/src/G4VSplitableHadron.cc | 2 +- .../models/parton_string/qgsm/History | 46 +- .../parton_string/qgsm/include/G4SPBaryon.hh | 59 + .../models/parton_string/qgsm/sources.cmake | 31 +- .../qgsm/src/G4BaryonSplitter.cc | 54 +- .../qgsm/src/G4QGSDiffractiveExcitation.cc | 17 +- .../qgsm/src/G4QGSParticipants.cc | 16 +- .../parton_string/qgsm/src/G4QuarkExchange.cc | 21 +- .../parton_string/qgsm/src/G4Reggeons.cc | 64 +- .../parton_string/qgsm/src/G4SPBaryon.cc | 392 +- .../qgsm/src/G4SingleDiffractiveExcitation.cc | 17 +- .../exciton_model/sources.cmake | 37 +- .../hadronic/models/qmd/sources.cmake | 45 +- .../hadronic/models/quasi_elastic/History | 13 + .../models/quasi_elastic/sources.cmake | 40 +- .../quasi_elastic/src/G4QuasiElRatios.cc | 38 +- .../hadronic/models/radioactive_decay/History | 9 +- .../include/G4RadioactivationMessenger.hh | 21 +- .../G4RadioactiveDecayBaseMessenger.hh | 41 +- .../include/G4RadioactiveDecaymessenger.hh | 62 +- .../models/radioactive_decay/sources.cmake | 35 +- .../src/G4Radioactivation.cc | 2 +- .../src/G4RadioactivationMessenger.cc | 141 +- .../src/G4RadioactiveDecay.cc | 2 +- .../src/G4RadioactiveDecayBaseMessenger.cc | 356 +- .../src/G4RadioactiveDecaymessenger.cc | 582 +- .../hadronic/models/rpg/sources.cmake | 26 +- .../hadronic/models/theo_high_energy/History | 26 + .../include/G4CRCoalescence.hh | 117 + .../include/G4TheoFSGenerator.hh | 3 + .../models/theo_high_energy/sources.cmake | 35 +- .../theo_high_energy/src/G4CRCoalescence.cc | 314 + .../theo_high_energy/src/G4TheoFSGenerator.cc | 42 +- source/processes/hadronic/models/util/History | 13 + .../models/util/include/G4Fragment.hh | 8 +- .../hadronic/models/util/sources.cmake | 26 +- .../hadronic/models/util/src/G4Fragment.cc | 4 +- .../util/src/G4GeneralPhaseSpaceDecay.cc | 2 +- .../util/src/G4HadPhaseSpaceNBodyAsai.cc | 2 +- .../models/util/src/G4KineticTrack.cc | 50 +- .../models/util/src/G4PolynomialPDF.cc | 2 +- source/processes/hadronic/processes/History | 23 +- .../G4AntiLambdacPlusInelasticProcess.hh | 46 - .../G4AntiOmegabMinusInelasticProcess.hh | 46 - .../G4AntiOmegacZeroInelasticProcess.hh | 46 - .../include/G4AntiXibMinusInelasticProcess.hh | 46 - .../include/G4AntiXibZeroInelasticProcess.hh | 46 - .../include/G4AntiXicPlusInelasticProcess.hh | 46 - .../include/G4AntiXicZeroInelasticProcess.hh | 46 - .../include/G4BMesonPlusInelasticProcess.hh | 46 - .../include/G4BMesonZeroInelasticProcess.hh | 46 - .../include/G4BcMesonMinusInelasticProcess.hh | 46 - .../include/G4BcMesonPlusInelasticProcess.hh | 46 - .../include/G4BsMesonZeroInelasticProcess.hh | 46 - .../include/G4DMesonMinusInelasticProcess.hh | 46 - .../include/G4DMesonPlusInelasticProcess.hh | 46 - .../include/G4DMesonZeroInelasticProcess.hh | 46 - .../include/G4DsMesonMinusInelasticProcess.hh | 46 - .../include/G4DsMesonPlusInelasticProcess.hh | 46 - .../include/G4LambdabInelasticProcess.hh | 46 - .../include/G4LambdacPlusInelasticProcess.hh | 46 - .../include/G4OmegabMinusInelasticProcess.hh | 46 - .../include/G4OmegacZeroInelasticProcess.hh | 46 - .../include/G4UCNBoundaryProcessMessenger.hh | 0 .../include/G4XibMinusInelasticProcess.hh | 46 - .../hadronic/processes/sources.cmake | 93 +- .../src/G4AntiBMesonZeroInelasticProcess.cc | 40 - .../src/G4AntiBsMesonZeroInelasticProcess.cc | 40 - .../src/G4AntiDMesonZeroInelasticProcess.cc | 40 - .../src/G4AntiLambdacPlusInelasticProcess.cc | 40 - .../src/G4AntiOmegabMinusInelasticProcess.cc | 40 - .../src/G4AntiXibMinusInelasticProcess.cc | 40 - .../src/G4AntiXibZeroInelasticProcess.cc | 40 - .../src/G4AntiXicPlusInelasticProcess.cc | 40 - .../src/G4AntiXicZeroInelasticProcess.cc | 40 - .../src/G4BMesonZeroInelasticProcess.cc | 40 - .../src/G4BcMesonMinusInelasticProcess.cc | 40 - .../src/G4BcMesonPlusInelasticProcess.cc | 40 - .../src/G4BsMesonZeroInelasticProcess.cc | 40 - .../src/G4DMesonMinusInelasticProcess.cc | 40 - .../src/G4DMesonZeroInelasticProcess.cc | 40 - .../src/G4DsMesonMinusInelasticProcess.cc | 40 - .../src/G4DsMesonPlusInelasticProcess.cc | 40 - .../src/G4LambdabInelasticProcess.cc | 40 - .../src/G4LambdacPlusInelasticProcess.cc | 40 - .../src/G4OmegabMinusInelasticProcess.cc | 40 - .../src/G4OmegacZeroInelasticProcess.cc | 40 - .../src/G4UCNBoundaryProcessMessenger.cc | 0 .../src/G4XibMinusInelasticProcess.cc | 40 - .../src/G4XibZeroInelasticProcess.cc | 40 - .../src/G4XicPlusInelasticProcess.cc | 40 - .../src/G4XicZeroInelasticProcess.cc | 40 - source/processes/hadronic/stopping/History | 2 +- .../processes/hadronic/stopping/sources.cmake | 44 +- source/processes/hadronic/util/History | 27 + .../util/include/G4HadSignalHandler.hh | 4 +- .../util/include/G4HadronicParameters.hh | 93 +- .../include/G4HadronicParametersMessenger.hh | 4 + source/processes/hadronic/util/sources.cmake | 22 +- .../hadronic/util/src/G4HadSignalHandler.cc | 4 +- .../hadronic/util/src/G4HadronicParameters.cc | 69 +- .../util/src/G4HadronicParametersMessenger.cc | 23 + .../management/include/G4VProcess.hh | 2 +- .../management/include/G4WrapperProcess.hh | 2 +- source/processes/management/sources.cmake | 17 +- .../management/src/G4ProcessTableMessenger.cc | 4 +- source/processes/optical/GNUmakefile | 1 + source/processes/optical/History | 13 + .../optical/include/G4OpAbsorption.hh | 34 +- .../optical/include/G4OpBoundaryProcess.hh | 199 +- source/processes/optical/include/G4OpMieHG.hh | 27 +- .../optical/include/G4OpProcessSubType.hh | 4 +- .../processes/optical/include/G4OpRayleigh.hh | 50 +- source/processes/optical/include/G4OpWLS.hh | 46 +- source/processes/optical/include/G4OpWLS2.hh | 52 +- .../include/G4VWLSTimeGeneratorProfile.hh | 26 +- .../include/G4WLSTimeGeneratorProfileDelta.hh | 22 +- .../G4WLSTimeGeneratorProfileExponential.hh | 24 +- source/processes/optical/sources.cmake | 23 +- .../processes/optical/src/G4OpAbsorption.cc | 54 +- .../optical/src/G4OpBoundaryProcess.cc | 1274 +- source/processes/optical/src/G4OpMieHG.cc | 130 +- source/processes/optical/src/G4OpRayleigh.cc | 222 +- source/processes/optical/src/G4OpWLS.cc | 241 +- source/processes/optical/src/G4OpWLS2.cc | 243 +- .../optical/src/G4VWLSTimeGeneratorProfile.cc | 25 +- .../src/G4WLSTimeGeneratorProfileDelta.cc | 35 +- .../G4WLSTimeGeneratorProfileExponential.cc | 36 +- source/processes/parameterisation/GNUmakefile | 4 +- source/processes/parameterisation/History | 8 + .../parameterisation/include/G4FastHit.hh | 73 + .../include/G4FastSimHitMaker.hh | 78 + .../parameterisation/include/G4FastStep.hh | 20 +- .../include/G4VFastSimSensitiveDetector.hh | 122 + .../processes/parameterisation/sources.cmake | 25 +- .../parameterisation/src/G4FastHit.cc | 39 + .../parameterisation/src/G4FastSimHitMaker.cc | 111 + .../parameterisation/src/G4FastStep.cc | 7 +- .../scoring/include/G4EnergySplitter.hh | 2 +- .../scoring/include/G4ParallelWorldProcess.hh | 0 .../include/G4ParallelWorldProcessStore.hh | 0 source/processes/scoring/sources.cmake | 27 +- .../scoring/src/G4ParallelWorldProcess.cc | 0 .../src/G4ParallelWorldProcessStore.cc | 0 .../channeling/include/G4Channeling.hh | 0 .../include/G4ChannelingMaterialData.hh | 0 ...lingOptrMultiParticleChangeCrossSection.hh | 2 +- .../solidstate/channeling/sources.cmake | 22 +- .../solidstate/channeling/src/G4Channeling.cc | 0 .../src/G4ChannelingMaterialData.cc | 0 .../processes/solidstate/phonon/sources.cmake | 18 +- source/processes/transportation/History | 11 +- source/processes/transportation/sources.cmake | 25 +- .../transportation/src/G4Transportation.cc | 528 +- source/run/GNUmakefile | 3 + source/run/History | 67 +- source/run/include/G4MTRunManager.hh | 20 +- source/run/include/G4Run.hh | 6 + source/run/include/G4RunManager.hh | 22 + source/run/include/G4VUserPhysicsList.hh | 2 +- source/run/include/G4WorkerRunManager.hh | 8 + source/run/include/rundefs.hh | 10 + source/run/sources.cmake | 21 +- source/run/src/G4MTRunManager.cc | 56 +- source/run/src/G4PhysicsListHelper.cc | 6 +- source/run/src/G4RunManager.cc | 249 +- source/run/src/G4RunManagerKernel.cc | 31 +- source/run/src/G4RunMessenger.cc | 2 +- source/run/src/G4VModularPhysicsList.cc | 19 +- source/run/src/G4WorkerRunManager.cc | 85 +- source/tasking/.README.txt | 358 - source/tasking/History | 48 + source/tasking/README | 225 - source/tasking/README.md | 57 +- source/tasking/include/G4RunManagerFactory.hh | 23 +- source/tasking/include/G4TaskRunManager.hh | 60 +- .../tasking/include/G4TaskRunManagerKernel.hh | 7 +- .../include/G4TaskSingletonDelegator.hh | 93 +- .../tasking/include/G4WorkerTaskRunManager.hh | 14 +- source/tasking/sources.cmake | 1 - source/tasking/src/G4RunManagerFactory.cc | 186 +- source/tasking/src/G4TaskRunManager.cc | 259 +- source/tasking/src/G4TaskRunManagerKernel.cc | 137 +- source/tasking/src/G4WorkerTaskRunManager.cc | 128 +- source/track/History | 16 +- source/track/include/G4FieldTrackUpdator.hh | 47 +- source/track/include/G4ForceCondition.hh | 58 +- source/track/include/G4GPILSelection.hh | 42 +- source/track/include/G4ParticleChange.hh | 322 +- source/track/include/G4ParticleChange.icc | 162 +- .../track/include/G4ParticleChangeForDecay.hh | 172 +- .../track/include/G4ParticleChangeForGamma.hh | 166 +- .../track/include/G4ParticleChangeForLoss.hh | 241 +- .../track/include/G4ParticleChangeForMSC.hh | 104 +- .../track/include/G4ParticleChangeForMSC.icc | 45 +- .../include/G4ParticleChangeForRadDecay.hh | 112 +- .../include/G4ParticleChangeForTransport.hh | 132 +- .../include/G4ParticleChangeForTransport.icc | 109 +- source/track/include/G4Step.hh | 313 +- source/track/include/G4Step.icc | 481 +- source/track/include/G4StepPoint.hh | 248 +- source/track/include/G4StepPoint.icc | 395 +- source/track/include/G4StepStatus.hh | 60 +- source/track/include/G4SteppingControl.hh | 37 +- source/track/include/G4Track.hh | 507 +- source/track/include/G4Track.icc | 517 +- source/track/include/G4TrackFastVector.hh | 26 +- source/track/include/G4TrackStatus.hh | 53 +- source/track/include/G4TrackVector.hh | 33 +- .../include/G4VAuxiliaryTrackInformation.hh | 41 +- source/track/include/G4VParticleChange.hh | 459 +- source/track/include/G4VParticleChange.icc | 211 +- .../track/include/G4VUserTrackInformation.hh | 55 +- source/track/include/G4VelocityTable.hh | 135 +- source/track/include/trkdefs.hh | 26 +- source/track/src/G4FieldTrackUpdator.cc | 72 +- source/track/src/G4ParticleChange.cc | 815 +- source/track/src/G4ParticleChangeForDecay.cc | 229 +- source/track/src/G4ParticleChangeForGamma.cc | 228 +- source/track/src/G4ParticleChangeForLoss.cc | 255 +- source/track/src/G4ParticleChangeForMSC.cc | 180 +- .../track/src/G4ParticleChangeForTransport.cc | 239 +- source/track/src/G4Step.cc | 230 +- source/track/src/G4StepPoint.cc | 118 +- source/track/src/G4Track.cc | 323 +- .../track/src/G4VAuxiliaryTrackInformation.cc | 19 +- source/track/src/G4VParticleChange.cc | 587 +- source/track/src/G4VUserTrackInformation.cc | 55 +- source/track/src/G4VelocityTable.cc | 198 +- source/tracking/History | 117 +- source/tracking/include/G4SteppingManager.hh | 4 +- source/tracking/include/G4TrackingManager.hh | 2 + source/tracking/src/G4SteppingManager.cc | 9 +- source/tracking/src/G4SteppingManager2.cc | 1 + source/tracking/src/G4TrackingManager.cc | 93 +- source/visualization/CMakeLists.txt | 5 + source/visualization/FukuiRenderer/History | 10 + .../FukuiRenderer/src/G4DAWNFILEViewer.cc | 16 +- .../src/G4FukuiRendererViewer.cc | 2 +- source/visualization/GNUmakefile | 4 + .../HepRep/include/HEPREP/Types.h | 0 .../include/HEPREP/freehep-heprep.version | 0 .../include/cheprep/AbstractXMLWriter.h | 0 .../HepRep/include/cheprep/BHepRepWriter.h | 0 .../HepRep/include/cheprep/DefaultHepRep.h | 0 .../include/cheprep/DefaultHepRepAction.h | 0 .../include/cheprep/DefaultHepRepAttDef.h | 0 .../include/cheprep/DefaultHepRepAttValue.h | 0 .../include/cheprep/DefaultHepRepAttribute.h | 0 .../include/cheprep/DefaultHepRepDefinition.h | 0 .../include/cheprep/DefaultHepRepFactory.h | 0 .../include/cheprep/DefaultHepRepInstance.h | 0 .../cheprep/DefaultHepRepInstanceTree.h | 0 .../include/cheprep/DefaultHepRepPoint.h | 0 .../include/cheprep/DefaultHepRepTreeID.h | 0 .../include/cheprep/DefaultHepRepType.h | 0 .../include/cheprep/DefaultHepRepTypeTree.h | 0 .../cheprep/DeflateOutputStreamBuffer.h | 0 .../HepRep/include/cheprep/GZIPOutputStream.h | 0 .../include/cheprep/GZIPOutputStreamBuffer.h | 0 .../include/cheprep/IndentPrintWriter.h | 0 .../HepRep/include/cheprep/XMLHepRepFactory.h | 0 .../HepRep/include/cheprep/XMLHepRepWriter.h | 0 .../HepRep/include/cheprep/XMLWriter.h | 0 .../HepRep/include/cheprep/ZipEntry.h | 0 .../HepRep/include/cheprep/ZipOutputStream.h | 0 .../include/cheprep/ZipOutputStreamBuffer.h | 0 .../HepRep/include/cheprep/config.h | 0 .../include/cheprep/freehep-cheprep.version | 0 .../visualization/HepRep/src/BHepRepWriter.cc | 0 .../HepRep/src/DeflateOutputStreamBuffer.cc | 0 .../HepRep/src/GZIPOutputStream.cc | 0 .../HepRep/src/GZIPOutputStreamBuffer.cc | 0 .../HepRep/src/ZipOutputStream.cc | 0 .../HepRep/src/ZipOutputStreamBuffer.cc | 0 source/visualization/History | 87 +- source/visualization/OpenGL/GNUmakefile | 3 +- source/visualization/OpenGL/History | 26 + source/visualization/OpenGL/sources.cmake | 54 +- .../OpenGL/src/G4OpenGLQtViewer.cc | 6 +- .../OpenGL/src/G4OpenGLSceneHandler.cc | 61 +- .../OpenGL/src/G4OpenGLStoredQtViewer.cc | 4 + .../OpenGL/src/G4OpenGLStoredViewer.cc | 7 +- .../OpenGL/src/G4OpenGLStoredWin32Viewer.cc | 1 + .../OpenGL/src/G4OpenGLStoredXViewer.cc | 1 + .../OpenGL/src/G4OpenGLStoredXmViewer.cc | 1 + .../OpenGL/src/G4OpenGLWtViewer.cc | 4 +- .../OpenGL/src/G4VisFeaturesOfOpenGL.cc | 4 +- source/visualization/OpenInventor/History | 20 + .../include/G4OpenInventorQtExaminerViewer.hh | 415 +- .../include/G4OpenInventorQtViewer.hh | 83 +- .../OpenInventor/include/G4SoQt.hh | 4 +- .../OpenInventor/include/HEPVis/SbGL.h | 11 +- .../OpenInventor/include/ui_OIQtListsDialog.h | 171 + .../visualization/OpenInventor/sources.cmake | 150 +- .../src/G4OpenInventorQtExaminerViewer.cc | 3982 +- .../src/G4OpenInventorQtViewer.cc | 353 +- .../OpenInventor/src/G4OpenInventorViewer.cc | 6 +- .../src/G4OpenInventorXtExaminerViewer.cc | 6 +- .../visualization/OpenInventor/src/G4SoQt.cc | 23 +- source/visualization/Qt3D/CMakeLists.txt | 19 + source/visualization/Qt3D/GNUmakefile | 36 + source/visualization/Qt3D/History | 33 + .../Qt3D/include/G4Qt3D.hh} | 28 +- .../Qt3D/include/G4Qt3DQEntity.hh | 51 + .../Qt3D/include/G4Qt3DSceneHandler.hh | 90 + .../visualization/Qt3D/include/G4Qt3DUtils.hh | 61 + .../Qt3D/include/G4Qt3DViewer.hh | 80 + source/visualization/Qt3D/sources.cmake | 61 + source/visualization/Qt3D/src/G4Qt3D.cc | 103 + .../Qt3D/src/G4Qt3DSceneHandler.cc | 997 + source/visualization/Qt3D/src/G4Qt3DUtils.cc | 182 + source/visualization/Qt3D/src/G4Qt3DViewer.cc | 361 + source/visualization/RayTracer/GNUmakefile | 3 +- source/visualization/RayTracer/History | 12 + .../RayTracer/src/G4TheMTRayTracer.cc | 27 +- source/visualization/VRML/History | 6 + .../VRML/src/G4VRML1FileSceneHandler.cc | 20 +- .../VRML/src/G4VRML2FileSceneHandler.cc | 18 +- source/visualization/XXX/History | 10 +- source/visualization/XXX/sources.cmake | 18 - source/visualization/XXX/src/G4XXXSGViewer.cc | 4 +- .../XXX/src/G4XXXStoredViewer.cc | 4 +- source/visualization/externals/History | 3 + source/visualization/externals/gl2ps/History | 19 +- .../externals/gl2ps/sources.cmake | 17 +- .../externals/gl2ps/src/gl2ps.cc | 4 +- source/visualization/management/GNUmakefile | 3 +- source/visualization/management/History | 73 +- .../management/include/G4VSceneHandler.hh | 2 +- .../management/include/G4VVisCommand.hh | 2 - .../management/include/G4VisExecutive.icc | 7 + .../management/include/G4VisManager.hh | 1 - source/visualization/management/sources.cmake | 2 + .../management/src/G4VSceneHandler.cc | 159 +- .../management/src/G4VVisCommand.cc | 4 - .../management/src/G4VisCommands.cc | 17 +- .../management/src/G4VisCommandsCompound.cc | 20 +- .../management/src/G4VisCommandsScene.cc | 31 +- .../management/src/G4VisCommandsSceneAdd.cc | 14 +- .../src/G4VisCommandsSceneHandler.cc | 15 +- .../management/src/G4VisCommandsViewer.cc | 2 - .../management/src/G4VisCommandsViewerSet.cc | 2 +- .../management/src/G4VisManager.cc | 220 +- source/visualization/modeling/GNUmakefile | 3 +- source/visualization/modeling/History | 59 +- .../modeling/include/G4PhysicalVolumeModel.hh | 6 +- source/visualization/modeling/sources.cmake | 2 + .../modeling/src/G4PhysicalVolumeModel.cc | 19 +- .../src/G4PhysicalVolumesSearchScene.cc | 8 +- .../modeling/src/G4TrajectoriesModel.cc | 19 +- 3770 files changed, 226369 insertions(+), 286486 deletions(-) create mode 100644 ReleaseNotes/Patch4.10.6-3.txt create mode 100644 ReleaseNotes/ReleaseNotes4.10.7.html delete mode 100644 cmake/Modules/FindInventor.cmake delete mode 100644 cmake/Modules/G4DeveloperAPI_OLD.cmake delete mode 100644 cmake/Modules/Geant4MacroDefineModule.cmake mode change 100644 => 100755 environments/g4py/examples/education/lesson1/demo.py delete mode 100644 environments/g4py/source/boost/container_utils.hpp delete mode 100644 environments/g4py/source/boost/detail/indexing_suite_detail.hpp delete mode 100644 environments/g4py/source/boost/indexing_suite.hpp delete mode 100644 environments/g4py/source/boost/map_indexing_suite.hpp delete mode 100644 environments/g4py/source/boost/vector_indexing_suite.hpp create mode 100644 environments/g4py/source/physics_lists/pyPhysListFactory.cc create mode 100644 environments/g4py/tests/gtest08/CMakeLists.txt create mode 100755 environments/g4py/tests/gtest08/test.py create mode 100644 examples/advanced/HGCal_testbeam/CMakeLists.txt create mode 100644 examples/advanced/HGCal_testbeam/GNUmakefile create mode 100644 examples/advanced/HGCal_testbeam/History create mode 100644 examples/advanced/HGCal_testbeam/README create mode 100644 examples/advanced/HGCal_testbeam/hgcal_testbeam.cc rename source/processes/hadronic/processes/include/G4XicPlusInelasticProcess.hh => examples/advanced/HGCal_testbeam/include/ActionInitialization.hh (76%) create mode 100644 examples/advanced/HGCal_testbeam/include/CMSEmStandardPhysicsHcal.hh create mode 100644 examples/advanced/HGCal_testbeam/include/DetectorConstruction.hh create mode 100644 examples/advanced/HGCal_testbeam/include/DetectorConstruction0.hh rename source/processes/hadronic/processes/include/G4AntiDMesonZeroInelasticProcess.hh => examples/advanced/HGCal_testbeam/include/DetectorConstruction1.hh (74%) create mode 100644 examples/advanced/HGCal_testbeam/include/DetectorConstruction2.hh create mode 100644 examples/advanced/HGCal_testbeam/include/EventAction.hh create mode 100644 examples/advanced/HGCal_testbeam/include/FTFPCMS_BERT_EMM.hh create mode 100644 examples/advanced/HGCal_testbeam/include/HGCalTBMaterials.hh create mode 100644 examples/advanced/HGCal_testbeam/include/PrimaryGeneratorAction.hh create mode 100644 examples/advanced/HGCal_testbeam/include/PrimaryGeneratorMessenger.hh create mode 100644 examples/advanced/HGCal_testbeam/include/RunAction.hh create mode 100644 examples/advanced/HGCal_testbeam/include/SiPMHit.hh create mode 100644 examples/advanced/HGCal_testbeam/include/SiPMSD.hh create mode 100644 examples/advanced/HGCal_testbeam/include/SiliconPixelHit.hh create mode 100644 examples/advanced/HGCal_testbeam/include/SiliconPixelSD.hh create mode 100644 examples/advanced/HGCal_testbeam/init_vis.mac create mode 100644 examples/advanced/HGCal_testbeam/readFromFile.mac create mode 100644 examples/advanced/HGCal_testbeam/run.mac create mode 100644 examples/advanced/HGCal_testbeam/src/ActionInitialization.cc create mode 100644 examples/advanced/HGCal_testbeam/src/CMSEmStandardPhysicsHcal.cc create mode 100644 examples/advanced/HGCal_testbeam/src/DetectorConstruction.cc create mode 100644 examples/advanced/HGCal_testbeam/src/DetectorConstruction0.cc create mode 100644 examples/advanced/HGCal_testbeam/src/DetectorConstruction1.cc create mode 100644 examples/advanced/HGCal_testbeam/src/DetectorConstruction2.cc create mode 100644 examples/advanced/HGCal_testbeam/src/EventAction.cc rename source/processes/electromagnetic/lowenergy/src/G4MuElecSiStructure.cc => examples/advanced/HGCal_testbeam/src/FTFPCMS_BERT_EMM.cc (56%) mode change 100755 => 100644 create mode 100644 examples/advanced/HGCal_testbeam/src/HGCalTBMaterials.cc create mode 100644 examples/advanced/HGCal_testbeam/src/PrimaryGeneratorAction.cc create mode 100644 examples/advanced/HGCal_testbeam/src/PrimaryGeneratorMessenger.cc create mode 100644 examples/advanced/HGCal_testbeam/src/RunAction.cc create mode 100644 examples/advanced/HGCal_testbeam/src/SiPMHit.cc create mode 100644 examples/advanced/HGCal_testbeam/src/SiPMSD.cc create mode 100644 examples/advanced/HGCal_testbeam/src/SiliconPixelHit.cc create mode 100644 examples/advanced/HGCal_testbeam/src/SiliconPixelSD.cc create mode 100644 examples/advanced/HGCal_testbeam/vis.mac create mode 100644 examples/advanced/ICRP110_HumanPhantoms/CMakeLists.txt create mode 100644 examples/advanced/ICRP110_HumanPhantoms/ColourMap.dat create mode 100644 examples/advanced/ICRP110_HumanPhantoms/GNUmakefile create mode 100644 examples/advanced/ICRP110_HumanPhantoms/History create mode 100644 examples/advanced/ICRP110_HumanPhantoms/ICRP110phantoms.cc create mode 100644 examples/advanced/ICRP110_HumanPhantoms/README create mode 100644 examples/advanced/ICRP110_HumanPhantoms/female.in create mode 100644 examples/advanced/ICRP110_HumanPhantoms/female_head.in create mode 100644 examples/advanced/ICRP110_HumanPhantoms/female_trunk.in rename source/processes/hadronic/processes/include/G4AntiLambdabInelasticProcess.hh => examples/advanced/ICRP110_HumanPhantoms/include/ICRP110PhantomActionInitialization.hh (74%) rename source/analysis/management/include/g4analysis_defs.hh.rm => examples/advanced/ICRP110_HumanPhantoms/include/ICRP110PhantomAnalysisManager.hh (87%) create mode 100644 examples/advanced/ICRP110_HumanPhantoms/include/ICRP110PhantomConstruction.hh create mode 100644 examples/advanced/ICRP110_HumanPhantoms/include/ICRP110PhantomMaterial_Female.hh create mode 100644 examples/advanced/ICRP110_HumanPhantoms/include/ICRP110PhantomMaterial_Male.hh create mode 100644 examples/advanced/ICRP110_HumanPhantoms/include/ICRP110PhantomMessenger.hh create mode 100644 examples/advanced/ICRP110_HumanPhantoms/include/ICRP110PhantomNestedParameterisation.hh rename source/processes/hadronic/processes/include/G4AntiBsMesonZeroInelasticProcess.hh => examples/advanced/ICRP110_HumanPhantoms/include/ICRP110PhantomPrimaryGeneratorAction.hh (73%) create mode 100644 examples/advanced/ICRP110_HumanPhantoms/include/ICRP110ScoreWriterMessenger.hh create mode 100644 examples/advanced/ICRP110_HumanPhantoms/include/ICRP110UserScoreWriter.hh create mode 100644 examples/advanced/ICRP110_HumanPhantoms/male.in create mode 100644 examples/advanced/ICRP110_HumanPhantoms/male_head.in create mode 100644 examples/advanced/ICRP110_HumanPhantoms/male_trunk.in create mode 100644 examples/advanced/ICRP110_HumanPhantoms/openGLVis.mac create mode 100644 examples/advanced/ICRP110_HumanPhantoms/primary.mac rename source/processes/hadronic/processes/src/G4BMesonMinusInelasticProcess.cc => examples/advanced/ICRP110_HumanPhantoms/src/ICRP110PhantomActionInitialization.cc (74%) create mode 100644 examples/advanced/ICRP110_HumanPhantoms/src/ICRP110PhantomConstruction.cc create mode 100644 examples/advanced/ICRP110_HumanPhantoms/src/ICRP110PhantomMaterial_Female.cc create mode 100644 examples/advanced/ICRP110_HumanPhantoms/src/ICRP110PhantomMaterial_Male.cc create mode 100644 examples/advanced/ICRP110_HumanPhantoms/src/ICRP110PhantomMessenger.cc create mode 100644 examples/advanced/ICRP110_HumanPhantoms/src/ICRP110PhantomNestedParameterisation.cc rename source/processes/hadronic/processes/src/G4BMesonPlusInelasticProcess.cc => examples/advanced/ICRP110_HumanPhantoms/src/ICRP110PhantomPrimaryGeneratorAction.cc (74%) create mode 100644 examples/advanced/ICRP110_HumanPhantoms/src/ICRP110ScoreWriterMessenger.cc create mode 100644 examples/advanced/ICRP110_HumanPhantoms/src/ICRP110UserScoreWriter.cc create mode 100644 examples/advanced/ICRP110_HumanPhantoms/vis.mac mode change 100755 => 100644 examples/advanced/STCyclotron/CMakeLists.txt mode change 100755 => 100644 examples/advanced/STCyclotron/GNUmakefile mode change 100755 => 100644 examples/advanced/STCyclotron/Macro/GUI/gui.mac mode change 100755 => 100644 examples/advanced/STCyclotron/Macro/GUI/icons.mac mode change 100755 => 100644 examples/advanced/STCyclotron/Macro/GUI/run.png mode change 100755 => 100644 examples/advanced/STCyclotron/Macro/Material/Target/My_designed_material.mac mode change 100755 => 100644 examples/advanced/STCyclotron/Macro/Material/Target/Ni64_enriched_95.mac mode change 100755 => 100644 examples/advanced/STCyclotron/Macro/Material/Target/Ni64_pure.mac mode change 100755 => 100644 examples/advanced/STCyclotron/Macro/Vis/init_vis.mac mode change 100755 => 100644 examples/advanced/STCyclotron/Macro/Vis/vis.mac mode change 100755 => 100644 examples/advanced/STCyclotron/Macro/init.mac mode change 100755 => 100644 examples/advanced/STCyclotron/Macro/init_parameters.mac mode change 100755 => 100644 examples/advanced/STCyclotron/Macro/run.mac mode change 100755 => 100644 examples/advanced/STCyclotron/Plot.C mode change 100755 => 100644 examples/advanced/STCyclotron/README mode change 100755 => 100644 examples/advanced/STCyclotron/STCyclotron.cc mode change 100755 => 100644 examples/advanced/STCyclotron/include/STCyclotronActionInitialization.hh mode change 100755 => 100644 examples/advanced/STCyclotron/include/STCyclotronAnalysis.hh mode change 100755 => 100644 examples/advanced/STCyclotron/include/STCyclotronDetectorConstruction.hh mode change 100755 => 100644 examples/advanced/STCyclotron/include/STCyclotronDetectorMessenger.hh mode change 100755 => 100644 examples/advanced/STCyclotron/include/STCyclotronPhysicsList.hh mode change 100755 => 100644 examples/advanced/STCyclotron/include/STCyclotronPrimaryGeneratorAction.hh mode change 100755 => 100644 examples/advanced/STCyclotron/include/STCyclotronPrimaryGeneratorActionMessenger.hh mode change 100755 => 100644 examples/advanced/STCyclotron/include/STCyclotronRun.hh mode change 100755 => 100644 examples/advanced/STCyclotron/include/STCyclotronRunAction.hh mode change 100755 => 100644 examples/advanced/STCyclotron/include/STCyclotronRunActionMessenger.hh mode change 100755 => 100644 examples/advanced/STCyclotron/include/STCyclotronSensitiveFoil.hh mode change 100755 => 100644 examples/advanced/STCyclotron/include/STCyclotronSensitiveTarget.hh mode change 100755 => 100644 examples/advanced/STCyclotron/init.mac mode change 100755 => 100644 examples/advanced/STCyclotron/init_parameters.mac mode change 100755 => 100644 examples/advanced/STCyclotron/init_vis.mac mode change 100755 => 100644 examples/advanced/STCyclotron/run.mac mode change 100755 => 100644 examples/advanced/STCyclotron/src/STCyclotronActionInitialization.cc mode change 100755 => 100644 examples/advanced/STCyclotron/src/STCyclotronDetectorConstruction.cc mode change 100755 => 100644 examples/advanced/STCyclotron/src/STCyclotronDetectorMessenger.cc mode change 100755 => 100644 examples/advanced/STCyclotron/src/STCyclotronGeneratorAction.cc mode change 100755 => 100644 examples/advanced/STCyclotron/src/STCyclotronPhysicsList.cc mode change 100755 => 100644 examples/advanced/STCyclotron/src/STCyclotronPrimaryGeneratorActionMessenger.cc mode change 100755 => 100644 examples/advanced/STCyclotron/src/STCyclotronRunAction.cc mode change 100755 => 100644 examples/advanced/STCyclotron/src/STCyclotronRunActionMessenger.cc mode change 100755 => 100644 examples/advanced/STCyclotron/src/STCyclotronSensitiveFoil.cc mode change 100755 => 100644 examples/advanced/STCyclotron/src/STCyclotronSensitiveTarget.cc mode change 100755 => 100644 examples/advanced/STCyclotron/vis.mac mode change 100755 => 100644 examples/advanced/air_shower/Direct.mac mode change 100755 => 100644 examples/advanced/air_shower/Ground.mac mode change 100755 => 100644 examples/advanced/air_shower/Mirror.mac mode change 100755 => 100644 examples/advanced/air_shower/Source.mac mode change 100755 => 100644 examples/advanced/air_shower/VisDirect.mac create mode 100644 examples/advanced/air_shower/do_plots.C mode change 100755 => 100644 examples/advanced/amsEcal/ams_ecal.pdf delete mode 100644 examples/advanced/brachytherapy/src/BrachyAnalysisManager.cc mode change 100755 => 100644 examples/advanced/composite_calorimeter/envExample.csh mode change 100755 => 100644 examples/advanced/composite_calorimeter/envExample.sh mode change 100755 => 100644 examples/advanced/gammaknife/GNUmakefile mode change 100755 => 100644 examples/advanced/gammaknife/GPS.in mode change 100755 => 100644 examples/advanced/gammaknife/History mode change 100755 => 100644 examples/advanced/gammaknife/MachineAngle.in mode change 100755 => 100644 examples/advanced/gammaknife/README mode change 100755 => 100644 examples/advanced/gammaknife/batch.mac mode change 100755 => 100644 examples/advanced/gammaknife/defaultMacro.mac mode change 100755 => 100644 examples/advanced/gammaknife/include/GammaKnifeController.hh mode change 100755 => 100644 examples/advanced/gammaknife/include/GammaKnifeDetectorConstruction.hh mode change 100755 => 100644 examples/advanced/gammaknife/include/GammaKnifeDetectorMessenger.hh mode change 100755 => 100644 examples/advanced/gammaknife/include/GammaKnifeMessenger.hh mode change 100755 => 100644 examples/advanced/gammaknife/include/GammaKnifeParticles.hh mode change 100755 => 100644 examples/advanced/gammaknife/include/GammaKnifePhysicsList.hh mode change 100755 => 100644 examples/advanced/gammaknife/include/GammaKnifePhysicsListMessenger.hh mode change 100755 => 100644 examples/advanced/gammaknife/include/GammaKnifePrimaryGeneratorAction.hh mode change 100755 => 100644 examples/advanced/gammaknife/include/GammaKnifeRunAction.hh mode change 100755 => 100644 examples/advanced/gammaknife/simulation.mac mode change 100755 => 100644 examples/advanced/gammaknife/src/GammaKnifeController.cc mode change 100755 => 100644 examples/advanced/gammaknife/src/GammaKnifeDetectorConstruction.cc mode change 100755 => 100644 examples/advanced/gammaknife/src/GammaKnifeDetectorMessenger.cc mode change 100755 => 100644 examples/advanced/gammaknife/src/GammaKnifeMessenger.cc mode change 100755 => 100644 examples/advanced/gammaknife/src/GammaKnifeParticles.cc mode change 100755 => 100644 examples/advanced/gammaknife/src/GammaKnifePhysicsList.cc mode change 100755 => 100644 examples/advanced/gammaknife/src/GammaKnifePhysicsListMessenger.cc mode change 100755 => 100644 examples/advanced/gammaknife/src/GammaKnifePrimaryGeneratorAction.cc mode change 100755 => 100644 examples/advanced/gammaknife/src/GammaKnifeRunAction.cc create mode 100644 examples/advanced/gammaray_telescope/gammaraytel_polarized.in create mode 100644 examples/advanced/gammaray_telescope/physics_polarized_new.mac create mode 100644 examples/advanced/gorad/CMakeLists.txt create mode 100644 examples/advanced/gorad/GNUmakefile create mode 100644 examples/advanced/gorad/History create mode 100644 examples/advanced/gorad/King.spec create mode 100644 examples/advanced/gorad/README create mode 100644 examples/advanced/gorad/Trap.spec create mode 100644 examples/advanced/gorad/gorad.cc create mode 100644 examples/advanced/gorad/gps_focus.mac create mode 100644 examples/advanced/gorad/gps_point.mac create mode 100644 examples/advanced/gorad/include/GRActionInitialization.hh create mode 100644 examples/advanced/gorad/include/GRAnalysis.hh create mode 100644 examples/advanced/gorad/include/GRBiasingRegionInfo.hh create mode 100644 examples/advanced/gorad/include/GRDetectorConstruction.hh create mode 100644 examples/advanced/gorad/include/GRDetectorConstructionMessenger.hh create mode 100644 examples/advanced/gorad/include/GRGeomBiasMessenger.hh create mode 100644 examples/advanced/gorad/include/GRGeomImpBiasWorld.hh create mode 100644 examples/advanced/gorad/include/GRInitialization.hh create mode 100644 examples/advanced/gorad/include/GRParallelWorldBiasingProcess.hh create mode 100644 examples/advanced/gorad/include/GRParallelWorldPhysics.hh create mode 100644 examples/advanced/gorad/include/GRPhysicsList.hh create mode 100644 examples/advanced/gorad/include/GRPhysicsListMessenger.hh create mode 100644 examples/advanced/gorad/include/GRPrimGenActionMessenger.hh create mode 100644 examples/advanced/gorad/include/GRPrimaryGeneratorAction.hh create mode 100644 examples/advanced/gorad/include/GRRun.hh create mode 100644 examples/advanced/gorad/include/GRRunAction.hh create mode 100644 examples/advanced/gorad/include/GRRunActionMessenger.hh create mode 100644 examples/advanced/gorad/include/GRScoreWriter.hh create mode 100644 examples/advanced/gorad/run.mac create mode 100644 examples/advanced/gorad/simpleCone.gdml create mode 100644 examples/advanced/gorad/src/GRActionInitialization.cc create mode 100644 examples/advanced/gorad/src/GRDetectorConstruction.cc create mode 100644 examples/advanced/gorad/src/GRDetectorConstructionMessenger.cc create mode 100644 examples/advanced/gorad/src/GRGeomBiasMessenger.cc create mode 100644 examples/advanced/gorad/src/GRGeomImpBiasWorld.cc create mode 100644 examples/advanced/gorad/src/GRInitialization.cc create mode 100644 examples/advanced/gorad/src/GRParallelWorldBiasingProcess.cc create mode 100644 examples/advanced/gorad/src/GRParallelWorldPhysics.cc create mode 100644 examples/advanced/gorad/src/GRPhysicsList.cc create mode 100644 examples/advanced/gorad/src/GRPhysicsListMessenger.cc create mode 100644 examples/advanced/gorad/src/GRPrimGenActionMessenger.cc create mode 100644 examples/advanced/gorad/src/GRPrimaryGeneratorAction.cc create mode 100644 examples/advanced/gorad/src/GRRun.cc create mode 100644 examples/advanced/gorad/src/GRRunAction.cc create mode 100644 examples/advanced/gorad/src/GRRunActionMessenger.cc create mode 100644 examples/advanced/gorad/src/GRScoreWriter.cc create mode 100644 examples/advanced/gorad/test.mac create mode 100644 examples/advanced/gorad/vis.mac mode change 100755 => 100644 examples/advanced/hadrontherapy/Modulators/Modulator009_02.txt mode change 100755 => 100644 examples/advanced/hadrontherapy/Modulators/Modulator010.txt mode change 100755 => 100644 examples/advanced/hadrontherapy/Modulators/Modulator011.txt mode change 100755 => 100644 examples/advanced/hadrontherapy/Modulators/ModulatorAM16FR.txt mode change 100755 => 100644 examples/advanced/hadrontherapy/data/rbe/lem1.csv create mode 100644 examples/advanced/hadrontherapy/include/BESTPassiveProtonBeamLine.hh create mode 100644 examples/advanced/hadrontherapy/include/BESTPassiveProtonBeamLineMessenger.hh mode change 100755 => 100644 examples/advanced/hadrontherapy/include/Decay.hh mode change 100755 => 100644 examples/advanced/hadrontherapy/include/HadrontherapyElectricTabulatedField3D.hh mode change 100755 => 100644 examples/advanced/hadrontherapy/include/HadrontherapyEventActionMessenger.hh mode change 100755 => 100644 examples/advanced/hadrontherapy/include/HadrontherapyInteractionParameters.hh mode change 100755 => 100644 examples/advanced/hadrontherapy/include/HadrontherapyParameterMessenger.hh mode change 100755 => 100644 examples/advanced/hadrontherapy/include/HadrontherapyRBE.hh mode change 100755 => 100644 examples/advanced/hadrontherapy/include/HadrontherapyRBEAccumulable.hh mode change 100755 => 100644 examples/advanced/hadrontherapy/include/HadrontherapyTIFPAPassiveProtonBeamLineMessenger.hh mode change 100755 => 100644 examples/advanced/hadrontherapy/include/PassiveCarbonBeamLine.hh mode change 100755 => 100644 examples/advanced/hadrontherapy/include/PassiveCarbonBeamLineMessenger.hh mode change 100755 => 100644 examples/advanced/hadrontherapy/include/PassiveProtonBeamLineMessenger.hh create mode 100644 examples/advanced/hadrontherapy/macro/BESTBeamLine.mac mode change 100755 => 100644 examples/advanced/hadrontherapy/macro/carbon_beamline.mac create mode 100644 examples/advanced/hadrontherapy/src/BESTPassiveProtonBeamline.cc create mode 100644 examples/advanced/hadrontherapy/src/BESTPassiveProtonBeamlineMessenger.cc mode change 100755 => 100644 examples/advanced/hadrontherapy/src/HadrontherapyElectricTabulatedField3D.cc mode change 100755 => 100644 examples/advanced/hadrontherapy/src/HadrontherapyEventActionMessenger.cc mode change 100755 => 100644 examples/advanced/hadrontherapy/src/HadrontherapyInteractionParameters.cc mode change 100755 => 100644 examples/advanced/hadrontherapy/src/HadrontherapyParameterMessenger.cc mode change 100755 => 100644 examples/advanced/hadrontherapy/src/HadrontherapyRBE.cc mode change 100755 => 100644 examples/advanced/hadrontherapy/src/HadrontherapyRBEAccumulable.cc mode change 100755 => 100644 examples/advanced/hadrontherapy/src/HadrontherapyTIFPAPassiveProtonBeamLine.cc mode change 100755 => 100644 examples/advanced/hadrontherapy/src/HadrontherapyTIFPAPassiveProtonBeamLineMessenger.cc mode change 100755 => 100644 examples/advanced/hadrontherapy/src/PassiveCarbonBeamLine.cc mode change 100755 => 100644 examples/advanced/hadrontherapy/src/PassiveCarbonBeamLineMessenger.cc mode change 100755 => 100644 examples/advanced/hadrontherapy/src/PassiveProtonBeamLine.cc mode change 100755 => 100644 examples/advanced/hadrontherapy/src/PassiveProtonBeamLineMessenger.cc mode change 100755 => 100644 examples/advanced/human_phantom/adultHead.mac mode change 100755 => 100644 examples/advanced/human_phantom/adultMIRDFemale.mac mode change 100755 => 100644 examples/advanced/human_phantom/adultMIRDMale.mac mode change 100755 => 100644 examples/advanced/human_phantom/adultMIXFemale.mac mode change 100755 => 100644 examples/advanced/human_phantom/batch.mac mode change 100755 => 100644 examples/advanced/human_phantom/default.mac mode change 100755 => 100644 examples/advanced/human_phantom/include/G4MIRDLeftAdrenal.hh mode change 100755 => 100644 examples/advanced/human_phantom/include/G4MIRDLeftClavicle.hh mode change 100755 => 100644 examples/advanced/human_phantom/include/G4MIRDLeftScapula.hh mode change 100755 => 100644 examples/advanced/human_phantom/include/G4MIRDRightAdrenal.hh mode change 100755 => 100644 examples/advanced/human_phantom/include/G4MIRDRightClavicle.hh mode change 100755 => 100644 examples/advanced/human_phantom/include/G4MIRDRightScapula.hh mode change 100755 => 100644 examples/advanced/human_phantom/src/G4MIRDLeftAdrenal.cc mode change 100755 => 100644 examples/advanced/human_phantom/src/G4MIRDLeftScapula.cc mode change 100755 => 100644 examples/advanced/human_phantom/src/G4MIRDRightAdrenal.cc mode change 100755 => 100644 examples/advanced/human_phantom/src/G4MIRDRightScapula.cc mode change 100755 => 100644 examples/advanced/iort_therapy/include/Collimator100BeamLineMessenger.hh mode change 100755 => 100644 examples/advanced/iort_therapy/include/Collimator40BeamLineMessenger.hh mode change 100755 => 100644 examples/advanced/iort_therapy/include/Collimator50BeamLineMessenger.hh mode change 100755 => 100644 examples/advanced/iort_therapy/include/Collimator60BeamLineMessenger.hh mode change 100755 => 100644 examples/advanced/iort_therapy/include/Collimator70BeamLineMessenger.hh mode change 100755 => 100644 examples/advanced/iort_therapy/include/Collimator80BeamLineMessenger.hh mode change 100755 => 100644 examples/advanced/iort_therapy/include/IORTEventActionMessenger.hh mode change 100755 => 100644 examples/advanced/iort_therapy/src/Collimator100BeamLine.cc mode change 100755 => 100644 examples/advanced/iort_therapy/src/Collimator100BeamLineMessenger.cc mode change 100755 => 100644 examples/advanced/iort_therapy/src/Collimator40BeamLine.cc mode change 100755 => 100644 examples/advanced/iort_therapy/src/Collimator40BeamLineMessenger.cc mode change 100755 => 100644 examples/advanced/iort_therapy/src/Collimator50BeamLine.cc mode change 100755 => 100644 examples/advanced/iort_therapy/src/Collimator50BeamLineMessenger.cc mode change 100755 => 100644 examples/advanced/iort_therapy/src/Collimator60BeamLine.cc mode change 100755 => 100644 examples/advanced/iort_therapy/src/Collimator60BeamLineMessenger.cc mode change 100755 => 100644 examples/advanced/iort_therapy/src/Collimator70BeamLine.cc mode change 100755 => 100644 examples/advanced/iort_therapy/src/Collimator70BeamLineMessenger.cc mode change 100755 => 100644 examples/advanced/iort_therapy/src/Collimator80BeamLine.cc mode change 100755 => 100644 examples/advanced/iort_therapy/src/Collimator80BeamLineMessenger.cc mode change 100755 => 100644 examples/advanced/iort_therapy/src/IORTEventActionMessenger.cc mode change 100755 => 100644 examples/advanced/medical_linac/README mode change 100755 => 100644 examples/advanced/medical_linac/batch.mac mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2Acc1.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2Acc1Messenger.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2AcceleratorConstruction.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2AcceleratorConstructionMessenger.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2CInputData.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2Convergence.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2EventAction.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2ExpVoxels.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2Main.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2MainMessenger.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2Ph_BoxInBox.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2Ph_FullWater.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2PhantomConstruction.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2PhantomConstructionMessenger.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2PhaseSpaces.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2PhysicsList.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2PrimaryGenerationAction.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2PrimaryGenerationActionMessenger.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2RunAction.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2SinputData.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2SteppingAction.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2TrackingAction.hh mode change 100755 => 100644 examples/advanced/medical_linac/include/ML2WorldConstruction.hh mode change 100755 => 100644 examples/advanced/medical_linac/ml2.cc mode change 100755 => 100644 examples/advanced/medical_linac/ml2.mac mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2Acc1.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2Acc1Messenger.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2AcceleratorConstruction.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2AcceleratorConstructionMessenger.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2CInputData.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2Convergence.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2EventAction.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2ExpVoxels.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2MainMessenger.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2Ph_BoxInBox.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2Ph_FullWater.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2PhantomConstruction.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2PhantomConstructionMessenger.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2PhaseSpaces.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2PhysicsList.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2PrimaryGenerationAction.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2PrimaryGenerationActionMessenger.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2RunAction.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2SteppingAction.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2TrackingAction.cc mode change 100755 => 100644 examples/advanced/medical_linac/src/ML2WorldConstruction.cc mode change 100755 => 100644 examples/advanced/microbeam/GNUmakefile mode change 100755 => 100644 examples/advanced/microbeam/include/CellParameterisation.hh mode change 100755 => 100644 examples/advanced/microbeam/include/DetectorConstruction.hh mode change 100755 => 100644 examples/advanced/microbeam/include/EMField.hh mode change 100755 => 100644 examples/advanced/microbeam/include/EventAction.hh mode change 100755 => 100644 examples/advanced/microbeam/include/PhysicsList.hh mode change 100755 => 100644 examples/advanced/microbeam/include/PrimaryGeneratorAction.hh mode change 100755 => 100644 examples/advanced/microbeam/include/RunAction.hh mode change 100755 => 100644 examples/advanced/microbeam/include/SteppingAction.hh mode change 100755 => 100644 examples/advanced/microbeam/microbeam.cc mode change 100755 => 100644 examples/advanced/microbeam/microbeam.mac mode change 100755 => 100644 examples/advanced/microbeam/phantom.dat mode change 100755 => 100644 examples/advanced/microbeam/plot.C mode change 100755 => 100644 examples/advanced/microbeam/src/CellParameterisation.cc mode change 100755 => 100644 examples/advanced/microbeam/src/DetectorConstruction.cc mode change 100755 => 100644 examples/advanced/microbeam/src/EMField.cc mode change 100755 => 100644 examples/advanced/microbeam/src/EventAction.cc mode change 100755 => 100644 examples/advanced/microbeam/src/PhysicsList.cc mode change 100755 => 100644 examples/advanced/microbeam/src/PrimaryGeneratorAction.cc mode change 100755 => 100644 examples/advanced/microbeam/src/RunAction.cc mode change 100755 => 100644 examples/advanced/microbeam/src/SteppingAction.cc mode change 100755 => 100644 examples/advanced/nanobeam/default.mac mode change 100755 => 100644 examples/advanced/nanobeam/include/DetectorConstruction.hh mode change 100755 => 100644 examples/advanced/nanobeam/include/PhysicsList.hh mode change 100755 => 100644 examples/advanced/nanobeam/include/PrimaryGeneratorAction.hh mode change 100755 => 100644 examples/advanced/nanobeam/include/RunAction.hh mode change 100755 => 100644 examples/advanced/nanobeam/include/SteppingAction.hh mode change 100755 => 100644 examples/advanced/nanobeam/include/TabulatedField3D.hh mode change 100755 => 100644 examples/advanced/nanobeam/macros/coef-enge.mac mode change 100755 => 100644 examples/advanced/nanobeam/macros/coef-map.mac mode change 100755 => 100644 examples/advanced/nanobeam/macros/coef-square.mac mode change 100755 => 100644 examples/advanced/nanobeam/macros/grid-enge.mac mode change 100755 => 100644 examples/advanced/nanobeam/macros/grid-map.mac mode change 100755 => 100644 examples/advanced/nanobeam/macros/grid-square.mac mode change 100755 => 100644 examples/advanced/nanobeam/macros/image-enge.mac mode change 100755 => 100644 examples/advanced/nanobeam/macros/image-map.mac mode change 100755 => 100644 examples/advanced/nanobeam/macros/image-square.mac mode change 100755 => 100644 examples/advanced/nanobeam/nanobeam.cc mode change 100755 => 100644 examples/advanced/nanobeam/plot.C mode change 100755 => 100644 examples/advanced/nanobeam/src/DetectorConstruction.cc mode change 100755 => 100644 examples/advanced/nanobeam/src/PhysicsList.cc mode change 100755 => 100644 examples/advanced/nanobeam/src/PrimaryGeneratorAction.cc mode change 100755 => 100644 examples/advanced/nanobeam/src/RunAction.cc mode change 100755 => 100644 examples/advanced/nanobeam/src/SteppingAction.cc mode change 100755 => 100644 examples/advanced/nanobeam/src/TabulatedField3D.cc create mode 100644 examples/advanced/radioprotection/geometry.mac create mode 100644 examples/advanced/radioprotection/include/DetectorMessenger.hh create mode 100644 examples/advanced/radioprotection/src/DetectorMessenger.cc mode change 100755 => 100644 examples/advanced/xray_fluorescence/FlatSpectrum.dat create mode 100644 examples/extended/electromagnetic/TestEm14/atomicDeexcitation.mac create mode 100644 examples/extended/electromagnetic/TestEm18/pixe.C mode change 100755 => 100644 examples/extended/electromagnetic/TestEm3/geant3/g4mat/gmakeB mode change 100755 => 100644 examples/extended/electromagnetic/TestEm3/geant3/g4mat/gmakeT mode change 100755 => 100644 examples/extended/electromagnetic/TestEm3/geant3/gmakeB mode change 100755 => 100644 examples/extended/electromagnetic/TestEm3/geant3/gmakeT create mode 100644 examples/extended/electromagnetic/TestEm3/geom.mac delete mode 100644 examples/extended/electromagnetic/TestEm3/retrieveTables.mac delete mode 100644 examples/extended/electromagnetic/TestEm5/berger/berger.kumac delete mode 100644 examples/extended/electromagnetic/TestEm5/fluo.mac create mode 100644 examples/extended/electromagnetic/TestEm5/geom.mac create mode 100644 examples/extended/electromagnetic/TestEm5/hanson/19um-wwols.ascii create mode 100644 examples/extended/electromagnetic/TestEm5/hanson/9um-wwols.ascii delete mode 100644 examples/extended/electromagnetic/TestEm5/hanson/hanson.kumac mode change 100644 => 100755 examples/extended/eventgenerator/exgps/macros/plotall.py mode change 100644 => 100755 examples/extended/eventgenerator/exgps/macros/plotfiles.py mode change 100644 => 100755 examples/extended/eventgenerator/exgps/macros/plottest35.py mode change 100755 => 100644 examples/extended/exoticphysics/channeling/analysis/analyse_ch_eff.C mode change 100755 => 100644 examples/extended/exoticphysics/channeling/include/UserActionInitialization.hh mode change 100755 => 100644 examples/extended/exoticphysics/channeling/src/UserActionInitialization.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/.README.txt mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/CMakeLists.txt mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/GNUmakefile mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/README mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/dmparticle.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/include/ActionInitialization.hh mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/include/DetectorConstruction.hh mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/include/DetectorMessenger.hh mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/include/EventAction.hh mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/include/PhysicsList.hh mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/include/PhysicsListMessenger.hh mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/include/PrimaryGeneratorAction.hh mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/include/Run.hh mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/include/RunAction.hh mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/include/StackingAction.hh mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/include/StackingMessenger.hh mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/include/TargetSD.hh mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/include/TestParameters.hh mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/src/ActionInitialization.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/src/DetectorConstruction.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/src/DetectorMessenger.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/src/EventAction.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/src/PhysicsList.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/src/PhysicsListMessenger.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/src/PrimaryGeneratorAction.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/src/Run.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/src/RunAction.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/src/StackingAction.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/src/StackingMessenger.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/src/TargetSD.cc mode change 100755 => 100644 examples/extended/exoticphysics/dmparticle/src/TestParameters.cc delete mode 100644 examples/extended/exoticphysics/phonon/CrystalMaps/Ge/FTVec.ssv delete mode 100644 examples/extended/exoticphysics/phonon/CrystalMaps/Ge/LVec.ssv delete mode 100644 examples/extended/exoticphysics/phonon/CrystalMaps/Ge/STVec.ssv create mode 100644 examples/extended/exoticphysics/saxs/.README.txt create mode 100644 examples/extended/exoticphysics/saxs/ADXRD.C create mode 100644 examples/extended/exoticphysics/saxs/CMakeLists.txt create mode 100644 examples/extended/exoticphysics/saxs/History create mode 100644 examples/extended/exoticphysics/saxs/README create mode 100644 examples/extended/exoticphysics/saxs/geom.mac create mode 100644 examples/extended/exoticphysics/saxs/gui.mac rename source/processes/electromagnetic/lowenergy/include/G4MuElecElastic.hh => examples/extended/exoticphysics/saxs/include/G4EmPenelopePhysicsMI.hh (69%) mode change 100755 => 100644 create mode 100644 examples/extended/exoticphysics/saxs/include/SAXSActionInitialization.hh rename environments/g4py/source/boost/pyG4indexing.hh => examples/extended/exoticphysics/saxs/include/SAXSAnalysis.hh (80%) create mode 100644 examples/extended/exoticphysics/saxs/include/SAXSDetectorConstruction.hh create mode 100644 examples/extended/exoticphysics/saxs/include/SAXSDetectorConstructionMessenger.hh create mode 100644 examples/extended/exoticphysics/saxs/include/SAXSEventAction.hh create mode 100644 examples/extended/exoticphysics/saxs/include/SAXSPhysicsList.hh rename examples/extended/{optical/wls/include/WLSRunActionMessenger.hh => exoticphysics/saxs/include/SAXSPhysicsListMessenger.hh} (73%) rename source/processes/hadronic/processes/src/G4AntiOmegacZeroInelasticProcess.cc => examples/extended/exoticphysics/saxs/include/SAXSPrimaryGeneratorAction.hh (65%) create mode 100644 examples/extended/exoticphysics/saxs/include/SAXSRunAction.hh create mode 100644 examples/extended/exoticphysics/saxs/include/SAXSRunActionMessenger.hh create mode 100644 examples/extended/exoticphysics/saxs/include/SAXSSensitiveDetector.hh create mode 100644 examples/extended/exoticphysics/saxs/include/SAXSSensitiveDetectorHit.hh create mode 100644 examples/extended/exoticphysics/saxs/include/SAXSSensitiveDetectorMessenger.hh create mode 100644 examples/extended/exoticphysics/saxs/include/SAXSSteppingAction.hh create mode 100644 examples/extended/exoticphysics/saxs/init_vis.mac create mode 100644 examples/extended/exoticphysics/saxs/myFF.dat create mode 100644 examples/extended/exoticphysics/saxs/saxs.cc create mode 100644 examples/extended/exoticphysics/saxs/saxs.in create mode 100644 examples/extended/exoticphysics/saxs/saxs_slits.in create mode 100644 examples/extended/exoticphysics/saxs/scattAnalysis.C create mode 100644 examples/extended/exoticphysics/saxs/src/G4EmPenelopePhysicsMI.cc create mode 100644 examples/extended/exoticphysics/saxs/src/SAXSActionInitialization.cc create mode 100644 examples/extended/exoticphysics/saxs/src/SAXSDetectorConstruction.cc create mode 100644 examples/extended/exoticphysics/saxs/src/SAXSDetectorConstructionMessenger.cc create mode 100644 examples/extended/exoticphysics/saxs/src/SAXSEventAction.cc create mode 100644 examples/extended/exoticphysics/saxs/src/SAXSPhysicsList.cc create mode 100644 examples/extended/exoticphysics/saxs/src/SAXSPhysicsListMessenger.cc create mode 100644 examples/extended/exoticphysics/saxs/src/SAXSPrimaryGeneratorAction.cc create mode 100644 examples/extended/exoticphysics/saxs/src/SAXSRunAction.cc create mode 100644 examples/extended/exoticphysics/saxs/src/SAXSRunActionMessenger.cc create mode 100644 examples/extended/exoticphysics/saxs/src/SAXSSensitiveDetector.cc create mode 100644 examples/extended/exoticphysics/saxs/src/SAXSSensitiveDetectorHit.cc create mode 100644 examples/extended/exoticphysics/saxs/src/SAXSSensitiveDetectorMessenger.cc create mode 100644 examples/extended/exoticphysics/saxs/src/SAXSSteppingAction.cc create mode 100644 examples/extended/exoticphysics/saxs/test.in create mode 100644 examples/extended/exoticphysics/saxs/vis.mac mode change 100755 => 100644 examples/extended/hadronic/Hadr00/include/EventAction.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr00/include/RunAction.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr00/src/EventAction.cc mode change 100755 => 100644 examples/extended/hadronic/Hadr00/src/RunAction.cc mode change 100755 => 100644 examples/extended/hadronic/Hadr01/include/CheckVolumeSD.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr01/include/EventAction.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr01/include/PhysicsList.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr01/include/PhysicsListMessenger.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr01/include/RunAction.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr01/include/TargetSD.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr01/src/CheckVolumeSD.cc mode change 100755 => 100644 examples/extended/hadronic/Hadr01/src/EventAction.cc mode change 100755 => 100644 examples/extended/hadronic/Hadr01/src/PhysicsList.cc mode change 100755 => 100644 examples/extended/hadronic/Hadr01/src/RunAction.cc mode change 100755 => 100644 examples/extended/hadronic/Hadr02/hijing1_383/Main_HIJING.f mode change 100755 => 100644 examples/extended/hadronic/Hadr02/hijing1_383/hijing1.383.f mode change 100755 => 100644 examples/extended/hadronic/Hadr02/hijing1_383/hipyset1.35.f mode change 100755 => 100644 examples/extended/hadronic/Hadr02/include/EventAction.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr02/include/G4CRMCModel.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr02/include/G4UrQMD1_3Interface.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr02/include/G4UrQMD1_3Model.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr02/include/RunAction.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr02/include/TargetSD.hh mode change 100755 => 100644 examples/extended/hadronic/Hadr02/src/EventAction.cc mode change 100755 => 100644 examples/extended/hadronic/Hadr02/src/RunAction.cc mode change 100755 => 100644 examples/extended/hadronic/Hadr03/envHadronic.csh mode change 100755 => 100644 examples/extended/hadronic/Hadr03/envHadronic.sh create mode 100644 examples/extended/hadronic/Hadr03/fusion.mac mode change 100755 => 100644 examples/extended/hadronic/Hadr04/envHadronic.csh mode change 100755 => 100644 examples/extended/hadronic/Hadr04/envHadronic.sh mode change 100755 => 100644 examples/extended/hadronic/Hadr06/envHadronic.csh mode change 100755 => 100644 examples/extended/hadronic/Hadr06/envHadronic.sh create mode 100644 examples/extended/hadronic/Hadr06/singleFission.mac mode change 100755 => 100644 examples/extended/hadronic/Hadr07/envHadronic.csh mode change 100755 => 100644 examples/extended/hadronic/Hadr07/envHadronic.sh create mode 100644 examples/extended/hadronic/Hadr09/.README.txt create mode 100644 examples/extended/hadronic/Hadr09/CMakeLists.txt create mode 100644 examples/extended/hadronic/Hadr09/GNUmakefile create mode 100644 examples/extended/hadronic/Hadr09/Hadr09.cc create mode 100644 examples/extended/hadronic/Hadr09/History create mode 100644 examples/extended/hadronic/Hadr09/README create mode 100644 examples/extended/hadronic/Hadr09/hadr09.in create mode 100644 examples/extended/hadronic/Hadr09/include/HadronicGenerator.hh create mode 100644 examples/extended/hadronic/Hadr09/src/HadronicGenerator.cc mode change 100755 => 100644 examples/extended/hadronic/NeutronSource/envHadronic.csh mode change 100755 => 100644 examples/extended/hadronic/NeutronSource/envHadronic.sh mode change 100755 => 100644 examples/extended/medical/DICOM/include/DicomPhantomParameterisationColour.hh mode change 100755 => 100644 examples/extended/medical/DICOM/share/IM-0003-0001.dcm mode change 100755 => 100644 examples/extended/medical/DICOM/share/IM-0003-0002.dcm mode change 100755 => 100644 examples/extended/medical/DICOM/share/IM-0003-0003.dcm mode change 100755 => 100644 examples/extended/medical/DICOM/share/IM-0003-0004.dcm mode change 100755 => 100644 examples/extended/medical/DICOM/share/IM-0003-0005.dcm mode change 100755 => 100644 examples/extended/medical/DICOM/share/IM-0003-0006.dcm mode change 100755 => 100644 examples/extended/medical/DICOM/share/IM-0003-0007.dcm mode change 100755 => 100644 examples/extended/medical/DICOM/share/IM-0003-0008.dcm mode change 100755 => 100644 examples/extended/medical/DICOM/share/IM-0003-0009.dcm mode change 100755 => 100644 examples/extended/medical/DICOM/share/IM-0003-0010.dcm mode change 100755 => 100644 examples/extended/medical/DICOM/src/DicomPhantomParameterisationColour.cc mode change 100755 => 100644 examples/extended/medical/dna/chem1/include/CommandLineParser.hh mode change 100755 => 100644 examples/extended/medical/dna/chem1/src/CommandLineParser.cc mode change 100755 => 100644 examples/extended/medical/dna/chem2/include/CommandLineParser.hh mode change 100755 => 100644 examples/extended/medical/dna/chem2/src/CommandLineParser.cc mode change 100755 => 100644 examples/extended/medical/dna/chem3/include/CommandLineParser.hh mode change 100755 => 100644 examples/extended/medical/dna/chem3/src/CommandLineParser.cc mode change 100755 => 100644 examples/extended/medical/dna/chem4/GNUmakefile mode change 100755 => 100644 examples/extended/medical/dna/chem4/History mode change 100755 => 100644 examples/extended/medical/dna/chem4/README mode change 100755 => 100644 examples/extended/medical/dna/chem4/beam.in mode change 100755 => 100644 examples/extended/medical/dna/chem4/include/ActionInitialization.hh mode change 100755 => 100644 examples/extended/medical/dna/chem4/include/CommandLineParser.hh mode change 100755 => 100644 examples/extended/medical/dna/chem4/include/DetectorConstruction.hh mode change 100755 => 100644 examples/extended/medical/dna/chem4/include/PhysicsList.hh mode change 100755 => 100644 examples/extended/medical/dna/chem4/include/PrimaryGeneratorAction.hh mode change 100755 => 100644 examples/extended/medical/dna/chem4/include/PrimaryKiller.hh mode change 100755 => 100644 examples/extended/medical/dna/chem4/include/Run.hh mode change 100755 => 100644 examples/extended/medical/dna/chem4/include/RunAction.hh mode change 100755 => 100644 examples/extended/medical/dna/chem4/include/ScoreSpecies.hh mode change 100755 => 100644 examples/extended/medical/dna/chem4/include/StackingAction.hh mode change 100755 => 100644 examples/extended/medical/dna/chem4/plot/CMakeLists.txt mode change 100755 => 100644 examples/extended/medical/dna/chem4/src/ActionInitialization.cc mode change 100755 => 100644 examples/extended/medical/dna/chem4/src/CommandLineParser.cc mode change 100755 => 100644 examples/extended/medical/dna/chem4/src/DetectorConstruction.cc mode change 100755 => 100644 examples/extended/medical/dna/chem4/src/PrimaryGeneratorAction.cc mode change 100755 => 100644 examples/extended/medical/dna/chem4/src/PrimaryKiller.cc mode change 100755 => 100644 examples/extended/medical/dna/chem4/src/Run.cc mode change 100755 => 100644 examples/extended/medical/dna/chem4/src/RunAction.cc mode change 100755 => 100644 examples/extended/medical/dna/chem4/src/ScoreSpecies.cc mode change 100755 => 100644 examples/extended/medical/dna/chem4/src/StackingAction.cc mode change 100755 => 100644 examples/extended/medical/dna/chem4/vis.mac mode change 100755 => 100644 examples/extended/medical/dna/chem5/GNUmakefile mode change 100755 => 100644 examples/extended/medical/dna/chem5/History mode change 100755 => 100644 examples/extended/medical/dna/chem5/README mode change 100755 => 100644 examples/extended/medical/dna/chem5/beam.in mode change 100755 => 100644 examples/extended/medical/dna/chem5/include/ActionInitialization.hh mode change 100755 => 100644 examples/extended/medical/dna/chem5/include/CommandLineParser.hh mode change 100755 => 100644 examples/extended/medical/dna/chem5/include/DetectorConstruction.hh mode change 100755 => 100644 examples/extended/medical/dna/chem5/include/PhysicsList.hh mode change 100755 => 100644 examples/extended/medical/dna/chem5/include/PrimaryGeneratorAction.hh mode change 100755 => 100644 examples/extended/medical/dna/chem5/include/PrimaryKiller.hh mode change 100755 => 100644 examples/extended/medical/dna/chem5/include/Run.hh mode change 100755 => 100644 examples/extended/medical/dna/chem5/include/RunAction.hh mode change 100755 => 100644 examples/extended/medical/dna/chem5/include/ScoreSpecies.hh mode change 100755 => 100644 examples/extended/medical/dna/chem5/include/StackingAction.hh mode change 100755 => 100644 examples/extended/medical/dna/chem5/src/ActionInitialization.cc mode change 100755 => 100644 examples/extended/medical/dna/chem5/src/CommandLineParser.cc mode change 100755 => 100644 examples/extended/medical/dna/chem5/src/DetectorConstruction.cc mode change 100755 => 100644 examples/extended/medical/dna/chem5/src/PrimaryGeneratorAction.cc mode change 100755 => 100644 examples/extended/medical/dna/chem5/src/PrimaryKiller.cc mode change 100755 => 100644 examples/extended/medical/dna/chem5/src/Run.cc mode change 100755 => 100644 examples/extended/medical/dna/chem5/src/RunAction.cc mode change 100755 => 100644 examples/extended/medical/dna/chem5/src/ScoreSpecies.cc mode change 100755 => 100644 examples/extended/medical/dna/chem5/src/StackingAction.cc mode change 100755 => 100644 examples/extended/medical/dna/chem5/vis.mac mode change 100755 => 100644 examples/extended/medical/dna/chem6/CMakeLists.txt mode change 100755 => 100644 examples/extended/medical/dna/chem6/GNUmakefile mode change 100755 => 100644 examples/extended/medical/dna/chem6/History mode change 100755 => 100644 examples/extended/medical/dna/chem6/README mode change 100755 => 100644 examples/extended/medical/dna/chem6/beam.in mode change 100755 => 100644 examples/extended/medical/dna/chem6/beam_HCP.in mode change 100755 => 100644 examples/extended/medical/dna/chem6/chem6.cc mode change 100755 => 100644 examples/extended/medical/dna/chem6/include/ActionInitialization.hh mode change 100755 => 100644 examples/extended/medical/dna/chem6/include/DetectorConstruction.hh mode change 100755 => 100644 examples/extended/medical/dna/chem6/include/PhysicsList.hh mode change 100755 => 100644 examples/extended/medical/dna/chem6/include/PrimaryGeneratorAction.hh mode change 100755 => 100644 examples/extended/medical/dna/chem6/include/PrimaryKiller.hh mode change 100755 => 100644 examples/extended/medical/dna/chem6/include/Run.hh mode change 100755 => 100644 examples/extended/medical/dna/chem6/include/RunAction.hh mode change 100755 => 100644 examples/extended/medical/dna/chem6/include/ScoreLET.hh mode change 100755 => 100644 examples/extended/medical/dna/chem6/include/ScoreSpecies.hh mode change 100755 => 100644 examples/extended/medical/dna/chem6/include/StackingAction.hh mode change 100755 => 100644 examples/extended/medical/dna/chem6/include/TimeStepAction.hh mode change 100755 => 100644 examples/extended/medical/dna/chem6/plotG_LET.C mode change 100755 => 100644 examples/extended/medical/dna/chem6/plotG_time.C mode change 100755 => 100644 examples/extended/medical/dna/chem6/src/ActionInitialization.cc mode change 100755 => 100644 examples/extended/medical/dna/chem6/src/DetectorConstruction.cc mode change 100755 => 100644 examples/extended/medical/dna/chem6/src/PhysicsList.cc mode change 100755 => 100644 examples/extended/medical/dna/chem6/src/PrimaryGeneratorAction.cc mode change 100755 => 100644 examples/extended/medical/dna/chem6/src/PrimaryKiller.cc mode change 100755 => 100644 examples/extended/medical/dna/chem6/src/Run.cc mode change 100755 => 100644 examples/extended/medical/dna/chem6/src/ScoreLET.cc mode change 100755 => 100644 examples/extended/medical/dna/chem6/src/StackingAction.cc mode change 100755 => 100644 examples/extended/medical/dna/chem6/src/TimeStepAction.cc mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/.README.txt mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/CMakeLists.txt mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/GNUmakefile mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/History mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/README.txt mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/analysis.C mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/dnadamage1.cc mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/dnadamage1.in mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/include/ActionInitialization.hh mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/include/DNAParser.hh mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/include/DNAVolumeType.hh mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/include/DetectorConstruction.hh mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/include/ITTrackingInteractivity.hh mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/include/ParallelWorld.hh mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/include/PhysicsList.hh mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/include/PrimaryGeneratorAction.hh mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/include/RunAction.hh mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/include/StackingAction.hh mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/include/SteppingAction.hh mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/include/TimeStepAction.hh mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/molecule.C mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/plot.C mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/src/ActionInitialization.cc mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/src/DetectorConstruction.cc mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/src/ITTrackingInteractivity.cc mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/src/ParallelWorld.cc mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/src/PhysicsList.cc mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/src/PrimaryGeneratorAction.cc mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/src/RunAction.cc mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/src/StackingAction.cc mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/src/SteppingAction.cc mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/src/TimeStepAction.cc mode change 100755 => 100644 examples/extended/medical/dna/dnadamage1/vis.mac mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/GNUmakefile mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/dnaphysics.cc mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/dnaphysics.in mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/include/DetectorConstruction.hh mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/include/PhysicsList.hh mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/include/PrimaryGeneratorAction.hh mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/include/RunAction.hh mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/include/SteppingAction.hh mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/plot.C mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/src/DetectorConstruction.cc mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/src/PhysicsList.cc mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/src/PrimaryGeneratorAction.cc mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/src/RunAction.cc mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/src/SteppingAction.cc mode change 100755 => 100644 examples/extended/medical/dna/dnaphysics/vis.mac mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/GNUmakefile mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/include/CommandLineParser.hh mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/include/DetectorConstruction.hh mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/include/PhysicsList.hh mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/include/PrimaryGeneratorAction.hh mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/include/RunAction.hh mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/include/SteppingAction.hh mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/microdosimetry.cc mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/microdosimetry.in mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/plot.C mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/src/CommandLineParser.cc mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/src/DetectorConstruction.cc mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/src/PhysicsList.cc mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/src/PrimaryGeneratorAction.cc mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/src/RunAction.cc mode change 100755 => 100644 examples/extended/medical/dna/microdosimetry/src/SteppingAction.cc mode change 100755 => 100644 examples/extended/medical/dna/microprox/plot.C mode change 100755 => 100644 examples/extended/medical/dna/microyz/plot.C mode change 100755 => 100644 examples/extended/medical/dna/pdb4dna/include/CommandLineParser.hh mode change 100755 => 100644 examples/extended/medical/dna/pdb4dna/src/CommandLineParser.cc mode change 100755 => 100644 examples/extended/medical/dna/splitting/include/PhysicsList.hh mode change 100755 => 100644 examples/extended/medical/dna/splitting/include/PrimaryGeneratorAction.hh mode change 100755 => 100644 examples/extended/medical/dna/splitting/src/DetectorConstruction.cc mode change 100755 => 100644 examples/extended/medical/dna/splitting/src/PrimaryGeneratorAction.cc mode change 100755 => 100644 examples/extended/medical/dna/splitting/src/SplitProcess.cc mode change 100755 => 100644 examples/extended/medical/dna/splitting/src/SteppingAction.cc mode change 100755 => 100644 examples/extended/medical/dna/splitting/src/TrackingAction.cc mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/.README.txt mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/CMakeLists.txt mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/History mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/README mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo1.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo10.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo11.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo12.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo13.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo14.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo15.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo16.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo17.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo18.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo19.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo2.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo20.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo21.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo22.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo3.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo4.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo5.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo6.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo7.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo8.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromo9.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromoX.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/chromoY.dat mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/include/ActionInitialization.hh mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/include/Analysis.hh mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/include/ChromosomeParameterisation.hh mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/include/CommandLineParser.hh mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/include/DetectorConstruction.hh mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/include/G4ElectronCapture.hh mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/include/PhysicsList.hh mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/include/PrimaryGeneratorAction.hh mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/include/RunAction.hh mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/include/SteppingAction.hh mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/plot.C mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/src/ActionInitialization.cc mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/src/ChromosomeParameterisation.cc mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/src/CommandLineParser.cc mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/src/DetectorConstruction.cc mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/src/G4ElectronCapture.cc mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/src/PhysicsList.cc mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/src/PrimaryGeneratorAction.cc mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/src/RunAction.cc mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/src/SteppingAction.cc mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/vis.mac mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/wholeNuclearDNA.cc mode change 100755 => 100644 examples/extended/medical/dna/wholeNuclearDNA/wholeNuclearDNA.in delete mode 100644 examples/extended/optical/LXe/LXe.in create mode 100644 examples/extended/optical/LXe/LXe.mac delete mode 100644 examples/extended/optical/LXe/reviewEvent.mac delete mode 100644 examples/extended/optical/OpNovice/OpNovice.err create mode 100644 examples/extended/optical/OpNovice/include/OpNoviceEventAction.hh create mode 100644 examples/extended/optical/OpNovice/include/OpNoviceRun.hh create mode 100644 examples/extended/optical/OpNovice/src/OpNoviceEventAction.cc create mode 100644 examples/extended/optical/OpNovice/src/OpNoviceRun.cc rename examples/extended/optical/OpNovice2/{OpNovice2.in => OpNovice2.mac} (94%) create mode 100644 examples/extended/optical/OpNovice2/boundary.mac create mode 100644 examples/extended/optical/OpNovice2/fresnel.mac delete mode 100644 examples/extended/optical/OpNovice2/glisur.mac delete mode 100644 examples/extended/optical/OpNovice2/unified.mac create mode 100644 examples/extended/optical/wls/include/WLSRun.hh delete mode 100644 examples/extended/optical/wls/init.in create mode 100644 examples/extended/optical/wls/src/WLSRun.cc delete mode 100644 examples/extended/optical/wls/src/WLSRunActionMessenger.cc create mode 100644 examples/extended/parallel/MPI/source/analysis/include/G4RootMpiNtupleFileManager.hh create mode 100644 examples/extended/parallel/MPI/source/analysis/src/G4RootMpiNtupleFileManager.cc delete mode 100644 examples/extended/parallel/TBB/B2b/DevelopmentStatus.txt create mode 100644 examples/extended/parameterisations/Par03/.README.txt create mode 100644 examples/extended/parameterisations/Par03/CMakeLists.txt create mode 100644 examples/extended/parameterisations/Par03/GNUmakefile create mode 100644 examples/extended/parameterisations/Par03/History create mode 100644 examples/extended/parameterisations/Par03/README create mode 100644 examples/extended/parameterisations/Par03/examplePar03.cc create mode 100644 examples/extended/parameterisations/Par03/examplePar03.in create mode 100644 examples/extended/parameterisations/Par03/include/Par03ActionInitialisation.hh create mode 100644 examples/extended/parameterisations/Par03/include/Par03DetectorConstruction.hh create mode 100644 examples/extended/parameterisations/Par03/include/Par03DetectorMessenger.hh create mode 100644 examples/extended/parameterisations/Par03/include/Par03EMShowerMessenger.hh create mode 100644 examples/extended/parameterisations/Par03/include/Par03EMShowerModel.hh create mode 100644 examples/extended/parameterisations/Par03/include/Par03EventAction.hh create mode 100644 examples/extended/parameterisations/Par03/include/Par03Hit.hh create mode 100644 examples/extended/parameterisations/Par03/include/Par03PrimaryGeneratorAction.hh create mode 100644 examples/extended/parameterisations/Par03/include/Par03RunAction.hh create mode 100644 examples/extended/parameterisations/Par03/include/Par03SensitiveDetector.hh rename source/processes/hadronic/processes/src/G4AntiLambdabInelasticProcess.cc => examples/extended/parameterisations/Par03/src/Par03ActionInitialisation.cc (64%) create mode 100644 examples/extended/parameterisations/Par03/src/Par03DetectorConstruction.cc create mode 100644 examples/extended/parameterisations/Par03/src/Par03DetectorMessenger.cc create mode 100644 examples/extended/parameterisations/Par03/src/Par03EMShowerMessenger.cc create mode 100644 examples/extended/parameterisations/Par03/src/Par03EMShowerModel.cc create mode 100644 examples/extended/parameterisations/Par03/src/Par03EventAction.cc create mode 100644 examples/extended/parameterisations/Par03/src/Par03Hit.cc create mode 100644 examples/extended/parameterisations/Par03/src/Par03PrimaryGeneratorAction.cc create mode 100644 examples/extended/parameterisations/Par03/src/Par03RunAction.cc create mode 100644 examples/extended/parameterisations/Par03/src/Par03SensitiveDetector.cc create mode 100644 examples/extended/parameterisations/Par03/vis.mac mode change 100644 => 100755 examples/extended/persistency/P03/runAll.sh mode change 100755 => 100644 examples/extended/physicslists/genericPL/FTFP_BERT.mac mode change 100755 => 100644 examples/extended/radioactivedecay/Activation/envHadronic.csh mode change 100755 => 100644 examples/extended/radioactivedecay/Activation/envHadronic.sh create mode 100644 examples/extended/radioactivedecay/rdecay01/atomicDeexcitation.mac create mode 100644 source/analysis/csv/include/G4CsvHnFileManager.hh create mode 100644 source/analysis/csv/include/G4CsvHnFileManager.icc create mode 100644 source/analysis/csv/include/G4CsvNtupleFileManager.hh create mode 100644 source/analysis/csv/src/G4CsvNtupleFileManager.cc create mode 100644 source/analysis/factory/include/G4GenericAnalysisManager.hh create mode 100644 source/analysis/factory/include/G4GenericAnalysisManager.icc create mode 100644 source/analysis/factory/include/G4GenericFileManager.hh create mode 100644 source/analysis/factory/include/G4GenericFileManager.icc create mode 100644 source/analysis/factory/src/G4GenericAnalysisManager.cc create mode 100644 source/analysis/factory/src/G4GenericFileManager.cc delete mode 100644 source/analysis/fonts/arialbd.ttf delete mode 100644 source/analysis/fonts/helvetica.ttf create mode 100644 source/analysis/fonts/lato_regular.ttf create mode 100644 source/analysis/fonts/license_font_lato.txt create mode 100644 source/analysis/fonts/license_font_roboto.txt create mode 100644 source/analysis/fonts/readme_font_lato.txt create mode 100644 source/analysis/fonts/roboto_bold.ttf delete mode 100644 source/analysis/g4tools/include/tools/cmathT delete mode 100644 source/analysis/g4tools/include/tools/rroot/list delete mode 100644 source/analysis/g4tools/include/tools/sg/manager_zb delete mode 100644 source/analysis/g4tools/include/tools/sg/render_zb delete mode 100644 source/analysis/g4tools/include/tools/wroot/basket_add rename source/analysis/g4tools/include/tools/xml/{viewplot.style => viewplot_fonts_google.style} (85%) create mode 100644 source/analysis/g4tools/include/tools/xml/wrap_viewplot_fonts_google_style delete mode 100644 source/analysis/g4tools/include/tools/xml/wrap_viewplot_style create mode 100644 source/analysis/hdf5/include/G4Hdf5HnFileManager.hh create mode 100644 source/analysis/hdf5/include/G4Hdf5HnFileManager.icc create mode 100644 source/analysis/hdf5/include/G4Hdf5NtupleFileManager.hh create mode 100644 source/analysis/hdf5/src/G4Hdf5NtupleFileManager.cc create mode 100644 source/analysis/management/include/G4NtupleBookingManager.hh create mode 100644 source/analysis/management/include/G4NtupleBookingManager.icc create mode 100644 source/analysis/management/include/G4TFileInformation.hh create mode 100644 source/analysis/management/include/G4TFileManager.hh create mode 100644 source/analysis/management/include/G4TFileManager.icc create mode 100644 source/analysis/management/include/G4VNtupleFileManager.hh create mode 100644 source/analysis/management/include/G4VTFileManager.hh create mode 100644 source/analysis/management/include/G4VTHnFileManager.hh create mode 100644 source/analysis/management/src/G4NtupleBookingManager.cc create mode 100644 source/analysis/management/src/G4VNtupleFileManager.cc rename source/{processes/hadronic/processes/include/G4XibZeroInelasticProcess.hh => analysis/root/include/G4RootFileDef.hh} (76%) create mode 100644 source/analysis/root/include/G4RootHnFileManager.hh create mode 100644 source/analysis/root/include/G4RootHnFileManager.icc create mode 100644 source/analysis/root/include/G4RootNtupleFileManager.hh create mode 100644 source/analysis/root/include/G4RootNtupleManager.icc create mode 100644 source/analysis/root/include/G4RootPNtupleManager.icc create mode 100644 source/analysis/root/src/G4RootNtupleFileManager.cc rename source/{processes/hadronic/processes/include/G4BMesonMinusInelasticProcess.hh => analysis/xml/include/G4XmlHnFileManager.hh} (65%) create mode 100644 source/analysis/xml/include/G4XmlHnFileManager.icc create mode 100644 source/analysis/xml/include/G4XmlNtupleFileManager.hh create mode 100644 source/analysis/xml/src/G4XmlNtupleFileManager.cc create mode 100644 source/digits_hits/detector/include/G4TScoreHistFiller.hh create mode 100644 source/digits_hits/detector/include/G4TScoreHistFiller.icc rename source/digits_hits/{utils => detector}/include/G4VPrimitivePlotter.hh (100%) create mode 100644 source/digits_hits/detector/include/G4VScoreHistFiller.hh create mode 100644 source/digits_hits/detector/src/G4VScoreHistFiller.cc create mode 100644 source/digits_hits/scorer/include/G4PSVolumeFlux.hh create mode 100644 source/digits_hits/scorer/include/G4PSVolumeFlux3D.hh create mode 100644 source/digits_hits/scorer/src/G4PSVolumeFlux.cc rename source/{processes/hadronic/processes/src/G4DMesonPlusInelasticProcess.cc => digits_hits/scorer/src/G4PSVolumeFlux3D.cc} (65%) mode change 100755 => 100644 source/error_propagation/include/G4ErrorMatrix.hh mode change 100755 => 100644 source/error_propagation/include/G4ErrorSymMatrix.hh mode change 100755 => 100644 source/error_propagation/include/G4ErrorSymMatrix.icc mode change 100755 => 100644 source/externals/clhep/include/CLHEP/Utility/defs.h mode change 100755 => 100644 source/externals/expat/COPYING mode change 100755 => 100644 source/externals/expat/README mode change 100755 => 100644 source/externals/expat/expat_config.h.cmake mode change 100755 => 100644 source/externals/expat/include/expat.h mode change 100755 => 100644 source/externals/expat/include/expat_external.h delete mode 100644 source/externals/expat/sources.cmake mode change 100755 => 100644 source/externals/expat/src/amigaconfig.h mode change 100755 => 100644 source/externals/expat/src/ascii.h mode change 100755 => 100644 source/externals/expat/src/asciitab.h mode change 100755 => 100644 source/externals/expat/src/iasciitab.h mode change 100755 => 100644 source/externals/expat/src/internal.h mode change 100755 => 100644 source/externals/expat/src/latin1tab.h mode change 100755 => 100644 source/externals/expat/src/macconfig.h mode change 100755 => 100644 source/externals/expat/src/nametab.h mode change 100755 => 100644 source/externals/expat/src/utf8tab.h mode change 100755 => 100644 source/externals/expat/src/winconfig.h mode change 100755 => 100644 source/externals/expat/src/xmlparse.cc mode change 100755 => 100644 source/externals/expat/src/xmlrole.cc mode change 100755 => 100644 source/externals/expat/src/xmlrole.h mode change 100755 => 100644 source/externals/expat/src/xmltok.cc mode change 100755 => 100644 source/externals/expat/src/xmltok.h mode change 100755 => 100644 source/externals/expat/src/xmltok_impl.cc mode change 100755 => 100644 source/externals/expat/src/xmltok_impl.h mode change 100755 => 100644 source/externals/expat/src/xmltok_ns.cc mode change 100755 => 100644 source/g3tog4/include/G3toG4Defs.hh create mode 100644 source/geometry/magneticfield/include/G4TCachedMagneticField.hh create mode 100644 source/geometry/magneticfield/include/G4TCashKarpRKF45.hh create mode 100644 source/geometry/magneticfield/include/G4TClassicalRK4.hh create mode 100644 source/geometry/magneticfield/include/G4TDormandPrince45.hh create mode 100644 source/geometry/magneticfield/include/G4TExplicitEuler.hh create mode 100644 source/geometry/magneticfield/include/G4TMagErrorStepper.hh create mode 100644 source/geometry/magneticfield/include/G4TMagFieldEquation.hh create mode 100644 source/geometry/magneticfield/include/G4TQuadrupoleMagField.hh create mode 100644 source/geometry/magneticfield/include/G4TSimpleHeum.hh create mode 100644 source/geometry/magneticfield/include/G4TSimpleRunge.hh create mode 100644 source/geometry/magneticfield/include/G4TUniformMagneticField.hh create mode 100644 source/global/management/include/G4Backtrace.hh create mode 100644 source/global/management/include/G4Profiler.hh create mode 100644 source/global/management/include/G4Profiler.icc create mode 100644 source/global/management/src/G4Profiler.cc create mode 100644 source/intercoms/include/G4ProfilerMessenger.hh create mode 100644 source/intercoms/include/G4UIcmdWithALongInt.hh create mode 100644 source/intercoms/src/G4ProfilerMessenger.cc create mode 100644 source/intercoms/src/G4UIcmdWithALongInt.cc create mode 100644 source/materials/include/G4MicroElecMaterialStructure.hh rename source/{processes/electromagnetic/lowenergy => materials}/include/G4MicroElecSiStructure.hh (100%) mode change 100755 => 100644 source/materials/include/G4UCNMaterialPropertiesTable.hh mode change 100755 => 100644 source/materials/include/G4UCNMicroRoughnessHelper.hh create mode 100644 source/materials/src/G4MicroElecMaterialStructure.cc rename source/{processes/electromagnetic/lowenergy => materials}/src/G4MicroElecSiStructure.cc (100%) mode change 100755 => 100644 source/materials/src/G4UCNMaterialPropertiesTable.cc mode change 100755 => 100644 source/materials/src/G4UCNMicroRoughnessHelper.cc mode change 100755 => 100644 source/persistency/gdml/schema/gdml.xsd mode change 100755 => 100644 source/persistency/gdml/schema/gdml_core.xsd mode change 100755 => 100644 source/persistency/gdml/schema/gdml_define.xsd mode change 100755 => 100644 source/persistency/gdml/schema/gdml_materials.xsd mode change 100755 => 100644 source/persistency/gdml/schema/gdml_parameterised.xsd mode change 100755 => 100644 source/persistency/gdml/schema/gdml_replicas.xsd mode change 100755 => 100644 source/persistency/gdml/schema/gdml_solids.xsd mode change 100755 => 100644 source/physics_lists/constructors/electromagnetic/include/G4EmDNAChemistry_option3.hh mode change 100755 => 100644 source/physics_lists/constructors/electromagnetic/include/G4EmModelActivator.hh mode change 100755 => 100644 source/physics_lists/constructors/electromagnetic/src/G4EmDNAChemistry_option3.cc rename source/physics_lists/{constructors/electromagnetic/include/G4OpticalProcessIndex.hh => util/include/G4HadProcesses.hh} (52%) create mode 100644 source/physics_lists/util/src/G4HadProcesses.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/models/include/G4DNAELSEPAElasticModel.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/models/include/G4DNAIRT.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/models/include/G4DNAPTBAugerModel.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/models/include/G4DNAPTBElasticModel.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/models/include/G4DNAPTBExcitationModel.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/models/include/G4DNAPTBIonisationModel.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/models/include/G4DNAVacuumModel.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/models/src/G4DNAELSEPAElasticModel.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/models/src/G4DNAIRT.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/models/src/G4DNAPTBAugerModel.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/models/src/G4DNAPTBExcitationModel.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/models/src/G4DNAVacuumModel.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/management/GNUmakefile mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/management/include/G4MolecularDissociationChannel.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/management/include/G4MolecularDissociationTable.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/management/include/G4Molecule.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/management/include/G4MoleculeDefinition.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/management/include/G4VMolecularDissociationDisplacer.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/management/src/G4MolecularDissociationChannel.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/management/src/G4MolecularDissociationTable.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/management/src/G4Molecule.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/management/src/G4MoleculeDefinition.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/management/src/G4VMolecularDissociationDisplacer.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/types/GNUmakefile mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/types/include/G4FakeMolecule.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/types/include/G4HO2.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/types/include/G4O2.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/types/include/G4O3.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/types/include/G4Oxygen.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/types/src/G4FakeMolecule.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/types/src/G4HO2.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/types/src/G4O2.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/types/src/G4O3.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/molecules/types/src/G4Oxygen.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/processes/include/G4DNAMolecularDissociation.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/processes/include/G4DNAWaterDissociationDisplacer.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/processes/src/G4DNAMolecularDissociation.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/processes/src/G4DNAWaterDissociationDisplacer.cc mode change 100755 => 100644 source/processes/electromagnetic/dna/utils/include/G4ErrorFunction.hh mode change 100755 => 100644 source/processes/electromagnetic/dna/utils/src/G4ErrorFunction.cc rename source/processes/electromagnetic/lowenergy/include/{G4MuElecSiStructure.hh => G4MIData.hh} (63%) mode change 100755 => 100644 rename source/processes/electromagnetic/lowenergy/include/{G4MuElecCrossSectionDataSet.hh => G4MicroElecCrossSectionDataSet_new.hh} (53%) create mode 100644 source/processes/electromagnetic/lowenergy/include/G4MicroElecElasticModel_new.hh create mode 100644 source/processes/electromagnetic/lowenergy/include/G4MicroElecInelasticModel_new.hh create mode 100644 source/processes/electromagnetic/lowenergy/include/G4MicroElecInelastic_new.hh create mode 100644 source/processes/electromagnetic/lowenergy/include/G4MicroElecLOPhononModel.hh rename source/processes/electromagnetic/lowenergy/include/{G4MuElecInelastic.hh => G4MicroElecLOPhononScattering.hh} (60%) mode change 100755 => 100644 create mode 100644 source/processes/electromagnetic/lowenergy/include/G4MicroElecSurface.hh delete mode 100755 source/processes/electromagnetic/lowenergy/include/G4MuElecElasticModel.hh delete mode 100755 source/processes/electromagnetic/lowenergy/include/G4MuElecInelasticModel.hh create mode 100644 source/processes/electromagnetic/lowenergy/include/G4PenelopeRayleighModelMI.hh mode change 100755 => 100644 source/processes/electromagnetic/lowenergy/include/G4VecpssrKModel.hh mode change 100755 => 100644 source/processes/electromagnetic/lowenergy/include/G4VecpssrLiModel.hh mode change 100755 => 100644 source/processes/electromagnetic/lowenergy/include/G4ecpssrBaseKxsModel.hh mode change 100755 => 100644 source/processes/electromagnetic/lowenergy/include/G4ecpssrBaseLixsModel.hh mode change 100755 => 100644 source/processes/electromagnetic/lowenergy/include/G4empCrossSection.hh rename source/processes/{hadronic/processes/include/G4AntiBMesonZeroInelasticProcess.hh => electromagnetic/lowenergy/src/G4MIData.cc} (74%) rename source/processes/electromagnetic/lowenergy/src/{G4MuElecCrossSectionDataSet.cc => G4MicroElecCrossSectionDataSet_new.cc} (68%) create mode 100644 source/processes/electromagnetic/lowenergy/src/G4MicroElecElasticModel_new.cc create mode 100644 source/processes/electromagnetic/lowenergy/src/G4MicroElecInelasticModel_new.cc create mode 100644 source/processes/electromagnetic/lowenergy/src/G4MicroElecInelastic_new.cc create mode 100644 source/processes/electromagnetic/lowenergy/src/G4MicroElecLOPhononModel.cc rename source/processes/electromagnetic/lowenergy/src/{G4MuElecElastic.cc => G4MicroElecLOPhononScattering.cc} (53%) mode change 100755 => 100644 create mode 100644 source/processes/electromagnetic/lowenergy/src/G4MicroElecSurface.cc delete mode 100755 source/processes/electromagnetic/lowenergy/src/G4MuElecElasticModel.cc delete mode 100755 source/processes/electromagnetic/lowenergy/src/G4MuElecInelastic.cc delete mode 100755 source/processes/electromagnetic/lowenergy/src/G4MuElecInelasticModel.cc create mode 100644 source/processes/electromagnetic/lowenergy/src/G4PenelopeRayleighModelMI.cc mode change 100755 => 100644 source/processes/electromagnetic/lowenergy/src/G4ecpssrBaseKxsModel.cc mode change 100755 => 100644 source/processes/electromagnetic/lowenergy/src/G4ecpssrBaseLixsModel.cc mode change 100755 => 100644 source/processes/electromagnetic/lowenergy/src/G4empCrossSection.cc create mode 100644 source/processes/electromagnetic/muons/include/G4ModifiedMephi.hh create mode 100644 source/processes/electromagnetic/muons/src/G4ModifiedMephi.cc mode change 100755 => 100644 source/processes/electromagnetic/standard/include/G4GoudsmitSaundersonMscModel.hh create mode 100644 source/processes/electromagnetic/standard/include/G4eDPWACoulombScatteringModel.hh create mode 100644 source/processes/electromagnetic/standard/include/G4eDPWAElasticDCS.hh mode change 100755 => 100644 source/processes/electromagnetic/standard/src/G4GoudsmitSaundersonMscModel.cc create mode 100644 source/processes/electromagnetic/standard/src/G4eDPWACoulombScatteringModel.cc create mode 100644 source/processes/electromagnetic/standard/src/G4eDPWAElasticDCS.cc mode change 100755 => 100644 source/processes/electromagnetic/utils/include/G4ElectronIonPair.hh mode change 100755 => 100644 source/processes/electromagnetic/utils/include/G4EmSaturation.hh mode change 100755 => 100644 source/processes/electromagnetic/utils/include/G4NIELCalculator.hh create mode 100644 source/processes/electromagnetic/utils/include/G4OpticalParameters.hh rename source/{physics_lists/constructors/electromagnetic/include/G4OpticalPhysicsMessenger.hh => processes/electromagnetic/utils/include/G4OpticalParametersMessenger.hh} (79%) mode change 100755 => 100644 source/processes/electromagnetic/utils/include/G4VAtomDeexcitation.hh mode change 100755 => 100644 source/processes/electromagnetic/utils/src/G4ElectronIonPair.cc mode change 100755 => 100644 source/processes/electromagnetic/utils/src/G4EmSaturation.cc mode change 100755 => 100644 source/processes/electromagnetic/utils/src/G4NIELCalculator.cc create mode 100644 source/processes/electromagnetic/utils/src/G4OpticalParameters.cc rename source/{physics_lists/constructors/electromagnetic/src/G4OpticalPhysicsMessenger.cc => processes/electromagnetic/utils/src/G4OpticalParametersMessenger.cc} (58%) mode change 100755 => 100644 source/processes/electromagnetic/utils/src/G4VAtomDeexcitation.cc create mode 100644 source/processes/hadronic/cross_sections/include/G4GammaNuclearXS.hh create mode 100644 source/processes/hadronic/cross_sections/include/G4IsotopeList.hh delete mode 100644 source/processes/hadronic/cross_sections/include/G4ProjectileFragmentCrossSection.hh create mode 100644 source/processes/hadronic/cross_sections/src/G4GammaNuclearXS.cc mode change 100755 => 100644 source/processes/hadronic/models/fission/include/G4FissLib.hh mode change 100755 => 100644 source/processes/hadronic/models/fission/include/G4FissionLibrary.hh mode change 100755 => 100644 source/processes/hadronic/models/fission/src/G4FissionLibrary.cc mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/include/G4ENDFTapeRead.hh mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/include/G4ENDFYieldDataContainer.hh mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/include/G4FFGEnumerations.hh mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/include/G4FPYBiasedLightFragmentDist.hh mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/include/G4FPYNormalFragmentDist.hh mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/include/G4FPYNubarValues.hh mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/include/G4FPYSamplingOps.hh mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/include/G4FPYTreeStructures.hh mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/include/G4FissionFragmentGenerator.hh mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/include/G4FissionProductYieldDist.hh mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/include/G4ShiftedGaussian.hh mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/include/G4TableTemplate.hh mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/include/G4WattFissionSpectrumValues.hh mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/src/G4ENDFTapeRead.cc mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/src/G4ENDFYieldDataContainer.cc mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/src/G4FPYBiasedLightFragmentDist.cc mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/src/G4FPYNormalFragmentDist.cc mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/src/G4FPYSamplingOps.cc mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/src/G4FissionFragmentGenerator.cc mode change 100755 => 100644 source/processes/hadronic/models/particle_hp/src/G4ShiftedGaussian.cc create mode 100644 source/processes/hadronic/models/theo_high_energy/include/G4CRCoalescence.hh create mode 100644 source/processes/hadronic/models/theo_high_energy/src/G4CRCoalescence.cc delete mode 100644 source/processes/hadronic/processes/include/G4AntiLambdacPlusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4AntiOmegabMinusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4AntiOmegacZeroInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4AntiXibMinusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4AntiXibZeroInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4AntiXicPlusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4AntiXicZeroInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4BMesonPlusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4BMesonZeroInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4BcMesonMinusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4BcMesonPlusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4BsMesonZeroInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4DMesonMinusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4DMesonPlusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4DMesonZeroInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4DsMesonMinusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4DsMesonPlusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4LambdabInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4LambdacPlusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4OmegabMinusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/include/G4OmegacZeroInelasticProcess.hh mode change 100755 => 100644 source/processes/hadronic/processes/include/G4UCNBoundaryProcessMessenger.hh delete mode 100644 source/processes/hadronic/processes/include/G4XibMinusInelasticProcess.hh delete mode 100644 source/processes/hadronic/processes/src/G4AntiBMesonZeroInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4AntiBsMesonZeroInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4AntiDMesonZeroInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4AntiLambdacPlusInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4AntiOmegabMinusInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4AntiXibMinusInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4AntiXibZeroInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4AntiXicPlusInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4AntiXicZeroInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4BMesonZeroInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4BcMesonMinusInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4BcMesonPlusInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4BsMesonZeroInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4DMesonMinusInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4DMesonZeroInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4DsMesonMinusInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4DsMesonPlusInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4LambdabInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4LambdacPlusInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4OmegabMinusInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4OmegacZeroInelasticProcess.cc mode change 100755 => 100644 source/processes/hadronic/processes/src/G4UCNBoundaryProcessMessenger.cc delete mode 100644 source/processes/hadronic/processes/src/G4XibMinusInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4XibZeroInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4XicPlusInelasticProcess.cc delete mode 100644 source/processes/hadronic/processes/src/G4XicZeroInelasticProcess.cc create mode 100644 source/processes/parameterisation/include/G4FastHit.hh create mode 100644 source/processes/parameterisation/include/G4FastSimHitMaker.hh create mode 100644 source/processes/parameterisation/include/G4VFastSimSensitiveDetector.hh create mode 100644 source/processes/parameterisation/src/G4FastHit.cc create mode 100644 source/processes/parameterisation/src/G4FastSimHitMaker.cc mode change 100755 => 100644 source/processes/scoring/include/G4ParallelWorldProcess.hh mode change 100755 => 100644 source/processes/scoring/include/G4ParallelWorldProcessStore.hh mode change 100755 => 100644 source/processes/scoring/src/G4ParallelWorldProcess.cc mode change 100755 => 100644 source/processes/scoring/src/G4ParallelWorldProcessStore.cc mode change 100755 => 100644 source/processes/solidstate/channeling/include/G4Channeling.hh mode change 100755 => 100644 source/processes/solidstate/channeling/include/G4ChannelingMaterialData.hh mode change 100755 => 100644 source/processes/solidstate/channeling/src/G4Channeling.cc mode change 100755 => 100644 source/processes/solidstate/channeling/src/G4ChannelingMaterialData.cc delete mode 100644 source/tasking/.README.txt delete mode 100644 source/tasking/README mode change 100755 => 100644 source/visualization/HepRep/include/HEPREP/Types.h mode change 100755 => 100644 source/visualization/HepRep/include/HEPREP/freehep-heprep.version mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/AbstractXMLWriter.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/BHepRepWriter.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DefaultHepRep.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DefaultHepRepAction.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DefaultHepRepAttDef.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DefaultHepRepAttValue.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DefaultHepRepAttribute.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DefaultHepRepDefinition.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DefaultHepRepFactory.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DefaultHepRepInstance.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DefaultHepRepInstanceTree.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DefaultHepRepPoint.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DefaultHepRepTreeID.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DefaultHepRepType.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DefaultHepRepTypeTree.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/DeflateOutputStreamBuffer.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/GZIPOutputStream.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/GZIPOutputStreamBuffer.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/IndentPrintWriter.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/XMLHepRepFactory.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/XMLHepRepWriter.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/XMLWriter.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/ZipEntry.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/ZipOutputStream.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/ZipOutputStreamBuffer.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/config.h mode change 100755 => 100644 source/visualization/HepRep/include/cheprep/freehep-cheprep.version mode change 100755 => 100644 source/visualization/HepRep/src/BHepRepWriter.cc mode change 100755 => 100644 source/visualization/HepRep/src/DeflateOutputStreamBuffer.cc mode change 100755 => 100644 source/visualization/HepRep/src/GZIPOutputStream.cc mode change 100755 => 100644 source/visualization/HepRep/src/GZIPOutputStreamBuffer.cc mode change 100755 => 100644 source/visualization/HepRep/src/ZipOutputStream.cc mode change 100755 => 100644 source/visualization/HepRep/src/ZipOutputStreamBuffer.cc create mode 100644 source/visualization/OpenInventor/include/ui_OIQtListsDialog.h create mode 100644 source/visualization/Qt3D/CMakeLists.txt create mode 100644 source/visualization/Qt3D/GNUmakefile create mode 100644 source/visualization/Qt3D/History rename source/{processes/hadronic/processes/include/G4XicZeroInelasticProcess.hh => visualization/Qt3D/include/G4Qt3D.hh} (76%) create mode 100644 source/visualization/Qt3D/include/G4Qt3DQEntity.hh create mode 100644 source/visualization/Qt3D/include/G4Qt3DSceneHandler.hh create mode 100644 source/visualization/Qt3D/include/G4Qt3DUtils.hh create mode 100644 source/visualization/Qt3D/include/G4Qt3DViewer.hh create mode 100644 source/visualization/Qt3D/sources.cmake create mode 100644 source/visualization/Qt3D/src/G4Qt3D.cc create mode 100644 source/visualization/Qt3D/src/G4Qt3DSceneHandler.cc create mode 100644 source/visualization/Qt3D/src/G4Qt3DUtils.cc create mode 100644 source/visualization/Qt3D/src/G4Qt3DViewer.cc diff --git a/CMakeLists.txt b/CMakeLists.txt index 2d4ff86a4a..a714957fd3 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -16,9 +16,10 @@ endif() #----------------------------------------------------------------------- # - Define CMake requirements and override make rules as needed # -cmake_minimum_required(VERSION 3.8 FATAL_ERROR) - -# - Any policy requirements should go here +cmake_minimum_required(VERSION 3.8...3.18 FATAL_ERROR) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() # - Make overrides for default flags, so they appear in interfaces set(CMAKE_USER_MAKE_RULES_OVERRIDE_CXX diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 0c15bf7afd..883c00d901 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -11,6 +11,6 @@ the development repository of Geant4, to be included in a future release or patch. For simple bug-fixes, it is anyhow recommended to use the official -[Bugzilla problem reporting system](https://bugzilla-geant4.kek.jp). +`Bugzilla problem reporting system `. The Geant4 Collaboration diff --git a/ReleaseNotes/Beta4.10.3-1.txt b/ReleaseNotes/Beta4.10.3-1.txt index 6708c988ae..5d734f9abb 100644 --- a/ReleaseNotes/Beta4.10.3-1.txt +++ b/ReleaseNotes/Beta4.10.3-1.txt @@ -224,8 +224,8 @@ List of features and fixes included in this Beta release since 10.2.p02: hadrons. - G4EmStandardPhysicsGS: set default range factor to 0.1. - DNA and ModelActivator constructors: corrected model/process names; - adjusted high energy threshold of solvation (kill) in respect to the - energy range of the elastic model. + adjusted high energy threshold of solvation (kill) in respect to the + energy range of the elastic model. Added G4DNAElectronSolvation to all DNA constructors. - Updated G4EmDNAPhysics_option5 and G4EmDNAChemistry. - Updated G4EmDNAPhysics_option7 constructor. diff --git a/ReleaseNotes/Beta4.10.7-1.txt b/ReleaseNotes/Beta4.10.7-1.txt index 027681990e..6bea03e120 100644 --- a/ReleaseNotes/Beta4.10.7-1.txt +++ b/ReleaseNotes/Beta4.10.7-1.txt @@ -7,7 +7,7 @@ Migration Notes & Main New Features ----------------------------------- - o Introducing new optional (experimental) tasking system, based on TBL + o Introducing new optional (experimental) tasking system, based on PTL (Parallel Tasking Library), dedicated run manager (G4TaskRunManager) and factory (G4RunManagerFactory), enabling use of tasks for the event loop. The tasking system is fully compatible with Intel TBB, which can be @@ -740,7 +740,7 @@ List of features and fixes included in this Beta release since 10.6.p02: o Tasking ------- + New module implementing a new Geant4 run manager, G4TaskRunManager, - enabling use of the TBL tasking system for the event loop. The tasking + enabling use of the PTL tasking system for the event loop. The tasking system is fully compatible with Intel TBB, which can be selected if GEANT4_USE_TBB=ON is specified when configuring CMake. The default behavior, however, is to submit the tasks to an internal thread-pool diff --git a/ReleaseNotes/Patch4.10.6-3.txt b/ReleaseNotes/Patch4.10.6-3.txt new file mode 100644 index 0000000000..32233ae6ae --- /dev/null +++ b/ReleaseNotes/Patch4.10.6-3.txt @@ -0,0 +1,114 @@ + + Geant4 10.6 - patch-03 Release Notes + ------------------------------------ + + 6 November 2020 + +List of fixes included in this public patch since the public release 10.6.p02: + + o Analysis: + -------- + + Fixed definition of UI commands in G4AnalysisMessenger (for 2D and + 3D histograms). + + Updated to g4tools 5.0.6: + o Changed usage of Google style fonts. + o Fixed compilation warnings on clang-10. + + o Event: + ----- + + Fixed misleading error message in G4SPSPosDistribution. + Addressing problem report #2275. + + o Global: + ------ + + Re-instate static pointer for 'masterG4coutDestination' in + G4coutDestination with proper symbol exporting on Windows + (necessary for MT builds). Restores trapping of G4cout from + workers in Qt GUI. + + Updated date and version for 10.6.p03. + + o Intercoms: + --------- + + Added StoL() method in G4UImessenger for parsing string to long int. + Addressing problem report #2276. + + o Interfaces: + ---------- + + Added fix in G4Qt to properly set GL on Windows (see Forum topic #3144). + + o Persistency - gdml: + ------------------ + + Fixed treatment of loops. Addressing problem report #2273. + + o Processes - Hadronic: + -------------------- + + cross_sections: + o G4CrossSectionElastic, G4CrossSectionInelastic: fix for ions and + anti-ions, where the max energy of applicability of the (elastic and + inelastic) cross-sections must scale with the absolute baryonic number; + however, the cross-sections objects are often shared between the + different types of ions (d, t, He3, alpha, and genericIon), therefore + we scale by a large value (256, safely larger than the number of + nucleons of the heaviest nuclides). + + models/de_excitation: + o G4NuclearLevelData: more safe initialisation of data in MT mode, use + mutex locks only within each method, whithout calls to other methods. + o G4ExcitationHandler: call to G4NuclearLevelData to initialise data for + levels for all elements possibly involved in the geometry. + o G4FermiFragmentsPoolVI: use old interface to nuclear levels. + + models/particle_hp: + o G4ParticleHPInelastic, G4ParticleHPInelasticData: improved error + message in the case that both G4PARTICLEHPDATA and the related + particle-specific environmental variable (e.g. G4PROTONHPDATA) are + not defined. The recommendation is to define only G4PARTICLEHPDATA. + + models/parton_string/diffraction: + o G4FTFModel: quasi-elastic is not applied any longer when the target + nucleus has one nucleon and the projectile hadron is not an ion. This + avoids to double count elastic scattering (as reported by NA61/SHINE + in 158 GeV/c proton interactions on liquid hydrogen). + Addressing problem report #2274. + + models/parton_string/hadronization: + o G4VLongitudinalStringDecay: fix in ProduceOneHadron() method, to remove + an inconsistency in the treatment of low-mass strings with respect to + the method G4QGSMFragmentation::FragmentString(). As consequence of + this inconsistency, interactions with fewer intra-nuclear collisions + were favored, therefore producing fewer secondary hadrons. + o G4QGSMFragmentation : proper exit in the method FragmentString() + when the string mass is below the threshold. + + models/parton_string/qgsm: + o G4BaryonSplitter: removed inexisting in Geant4 excited hyperon states + (Sigma* and Xi*). + + o Run: + --- + + Fix for rndmSaveThisEvent() not properly working in multi-threaded mode. + Addressing problem report #2278. + + Allow setting of seeds with 'long' values for '/random/setSeeds' + UI command. Addresses problem report #2276. + + o Visualization: + ------------- + + Fixed compilation warnings on clang-10 in gMocren and gl2ps. + + o Examples: + -------- + + advanced/brachytherapy + o Added missing call to "/run/initialize" in VisualisationMacro.mac. + + advanced/purging_magnet + + advanced/STCyclotron + o Fixed README. + + ---------------------------------------------------------------------------- + + Technical Notes + --------------- + + o This patch should be applied on top of release 10.6 or 10.6.p01/p02. + o Technical notes distributed for release 10.6 are also applicable and + valid for this patch. + +The code and rebuilt binary libraries for release 10.6.p03 are available +through the Geant4 "Download" Web page. + +Please refer to the Geant4 User Documentation for further information about +using Geant4. diff --git a/ReleaseNotes/ReleaseNotes4.10.0.html b/ReleaseNotes/ReleaseNotes4.10.0.html index 0c86b37270..61113d52d4 100644 --- a/ReleaseNotes/ReleaseNotes4.10.0.html +++ b/ReleaseNotes/ReleaseNotes4.10.0.html @@ -174,7 +174,7 @@ re-compilation) and a re-compilation of user applications is required.
  • The G4Polycone solid no longer supports the case in which either the outer or the inner surface has more than one cone or tube section over a finite interval of Z values. These shapes must use the - new class G4GenericPolycone instead. The general constructor + new class G4GenericPolycone instead. The general constructor of G4Polycone, which uses a series of vertices, includes a check whether the vertices are monotonic along Z for its inner and outer surfaces, and issues an error if not.
  • diff --git a/ReleaseNotes/ReleaseNotes4.10.7.html b/ReleaseNotes/ReleaseNotes4.10.7.html new file mode 100644 index 0000000000..9b138bb542 --- /dev/null +++ b/ReleaseNotes/ReleaseNotes4.10.7.html @@ -0,0 +1,2591 @@ + + +Geant4 10.7 Release Notes + + + +

    +
    +

    + +

    + +Geant4 10.7 Release Notes + + + + +
    + +December 4th, 2020 + +
    + +

    +


    +

    +The code and binary libraries for the supported systems are available +through our Source +Code Web page. +

    +

    +We are grateful for the efforts of Geant4 users who have provided + detailed feedback or comprehensive reports of issues. + We thank in particular those who have contributed corrections, + improvements or developments included in this release. +

    +

    +Please refer to the +Geant4 +User Documentation for further information about using Geant4. +

    + +

    Contents

    +
      +
    1. Supported and Tested Platforms
    2. +
    3. Supported CLHEP and VecGeom versions
    4. +
    5. Items for migration of the user code
    6. +
    7. New Developments and Capabilities
    8. +
    9. Expected effects on physics and performance
    10. +
    11. Known Run-Time Problems and Limitations
    12. +
    13. Compilation Warnings
    14. +
    15. Geant4 Software License
    16. +
    17. Detailed list of changes and fixes
    18. +
    + +

    + +
    + + + +

    1. Supported and Tested Platforms

    + +Platforms: + + +More verified and tested configurations (64 bits): + + +

    + +
    + + + +

    2. Supported CLHEP and VecGeom version

    + +This release of Geant4 requires and has been verified with +CLHEP, release 2.4.4.0. +Use of a different CLHEP version may cause incorrect simulation results.
    +NOTE: an internal module of the relevant CLHEP classes is provided and can be +used as alternative to an external CLHEP library installation.
    +A configuration option allows a Geant4 installation to use the +VecGeom Library +primitives, to replace the original Geant4 solids. VecGeom version +1.1.8 is required when using such configuration. + +

    + +
    + + + +

    3. Items for migration of the user code

    + +Listed here is some relevant information on developments included in this +release. +Note that for all users a full re-installation of libraries (or a full +re-compilation) and a re-compilation of user applications is required. + +

    +General +

    + + +

    +Geometry, Fields and Transportation +

    + + +

    +Electromagnetic and optical physics +

    + + +

    +Hadronic physics +

    + + +

    +Data Sets +

    + + + +
    + + + +

    4. New Developments and Capabilities

    + +General + + +Analysis + + +Digitization, Hits & Scoring + + +Geometry and Field + + +Materials + + +Electromagnetic physics + + +Hadronic physics + + +Physics Lists + + +Visualization and Interfaces + + +Examples + + + +
    + + + +

    5. Expected effects on physics and computing performance

    + +General + + +Electromagnetic physics + + +Hadronic physics + + +

    + +
    + + + +

    6. Known Run-Time Problems and Limitations

    +For a complete list of outstanding run-time problems and to submit any +problem you may find while running this version of Geant4, please refer +to the +Geant4 Problem +Reporting System. + +

    + +
    + + + +

    7. Compilation Warnings

    + +There may be a few compilation warnings on some platforms, particularly +on Windows with Visual Studio, where warnings level has been raised when +building examples. +We do not believe that any of these lead to incorrect run-time behaviour. + +

    + +
    + + + +

    8. Geant4 Software License

    + +A Software License applies to the Geant4 code. +Users must accept this license in order to use it. The details and the list of +copyright holders is available at +http://cern.ch/geant4/license +and also in the text file LICENSE distributed with the source code. + +

    + +
    + + + +

    9. Detailed list of changes and fixes

    + +These are the main new features/fixes included in this release since the +last patched public release (for more detailed lists of fixes/additions, +please refer to the corresponding History files provided in most packages): + +

    + + +

    Configuration

    + + + +

    Analysis

    + + + +

    Digitization & Hits

    + + + +

    Electromagnetic Processes

    + + + +

    Error Propagation

    + + + +

    Event

    + + + +

    Externals

    + + + +

    G3toG4

    + + + +

    General Processes

    + + + +

    Geometry

    + + + +

    Global

    + + + +

    Graphical Representations

    + + + +

    Hadronic Processes

    + + + +

    Intercoms

    + + + +

    Interfaces

    + + + +

    Materials

    + + + +

    Parameterisations

    + + + +

    Particles

    + + + +

    Persistency

    + + + +

    Physics lists

    + + + +

    Run

    + + + +

    Tasking

    + + + +

    Track & Tracking

    + + + +

    Visualization

    +
  • Use CMake AUTOMOC to automatically generate and compile Moc sources + and fixed CMake script to support new CMake system.
  • +
  • Fixed text typos in printout. Problem report + #2285 + and GitHub PR#15.
  • + + + +

    Environments

    + + + +

    Data sets

    + + + +

    Examples

    + + +
    + + + diff --git a/cmake/History b/cmake/History index dbbce7757e..567df3ce67 100644 --- a/cmake/History +++ b/cmake/History @@ -30,6 +30,93 @@ add this in the documentation for the changed file as [BUGFIX #BUGNUMBER]. ---------------------------------------------------------- +20th November 2020 - Ben Morgan (cmake-V10-06-46) +- Make GEANT4_USE_SYSTEM_PTL option advanced + +12th November 2020 - Jonathan Madsen (cmake-V10-06-45) +- Updated find package routines for timemory + +19th November 2020 - Ben Morgan (cmake-V10-06-44) +- Require VecGeom 1.1.8 or newer + +18th November 2020 - Ben Morgan (cmake-V10-06-43) +- Add GEANT4_BUILD_BUILTIN_BACKTRACE option to enable automatic + use of G4BackTrace signal handling in G4RunManager. + +17th November 2020 - Gunter Folger (cmake-V10-06-42) +- Bump CLHEP minimum required version to 2.4.4.0 + +4th November 2020 - Ben Morgan (cmake-V10-06-41) +- Make Qt53D driver optional based on find of required Qt5 modules + +2nd/3rd November 2020 - Gunter Folger (cmake-V10-06-40) +- Update to dataset RadioactiveDecay5.6 and PhotonEvaporation5.7 as + provided by Laurent + +30th October 2020 - Gunter Folger (cmake-V10-06-39) +- Update datasets as provided by Laurent: + - G4ENSDFSTATE2.3 + - PhotonEvaporation5.6 + - RadioactiveDecay5.5 + +29th October 2020 - Ben Morgan (cmake-V10-06-38) +- Remove obsolete Geant4MacroDefineModule and G4DeveloperAPI_OLD modules +- Make Geant4MacroLibraryTargets module a no-op pending final removal in + 2021 +- Remove GEANT4_USE_NEW_CMAKE option to complete migration to new system +- Use STRINGS cache property for enum options and CMAKE_BUILD_TYPE to + give easier interface in (G)UIs +- Remove pre CMake3 functionality from G4InstallData module + +27th October 2020 - Gunter Folger (cmake-V10-06-37) +- Add optional TENDL dataset + +26th October 2020 - Ben Morgan (cmake-V10-06-36) +- Explicitly initialize GEANT4_USE_QT3D to OFF to prevent + user override. + +26th October 2020 - Gunter Folger (cmake-V10-06-35) +- Switch to G4PARTICLEXS 3.1 + +23rd October 2020 - John Allison (cmake-V10-06-34) +- Introduce changes for Qt3D vis driver. + +20th October 2020 - Ben Morgan (cmake-V10-06-33) +- Update functions to use G4expat{-static} as custom built targets. + Fixes GitLab Issue #44. + +19th October 2020 - Ben Morgan (cmake-V10-06-32) +- Support CMake 3.8 through 3.18 +- Allow specification of C++20 for CMake 3.12 and above + +12th October 2020 - Daren Sawkey (cmake-V10-06-31) +- Switch to new data set G4RealSurface 2.2 + +12th October 2020 - Gunter Folger (cmake-V10-06-30) +- Switch to G4PARTICLEXS 3.0 + +24th September 2020 - Gunter Folger (cmake-V10-06-29) +- Switch to G4EMLOW 7.13 + +15 September 2020 - Jonathan Madsen (cmake-V10-06-28) +- Updated GEANT4_TEST_ENVIRONMENT to set G4RUN_MANAGER_TYPE=TBB when MT and + GEANT4_USE_TBB=ON + +28 August - Ben Morgan (cmake-V10-06-27) +- Improve support for Inventor (Coin) + - Simplify configuration options, handling co-working ones both + at configure time and by client applications. + - Separate out dependency finding to keep these in one place. + - Improve consistency of using XQuartz vs System OpenGL on + macOS. + - Remove obsolete FindInventor module + +21 July 2020 - Ben Morgan (cmake-V10-06-26) +- Provide new GEANT4_BUILD_PHP_AS_HP option to enable ParticleHP as + HP in G4processes. Replaces PHP_AS_HP environment variable. +- Add PHP_AS_HP "feature" in Geant4Config.cmake/geant4-config to allow + clients to check availability. + 17th June 2020 - Jonathan Madsen (cmake-V10-06-25) - Moved TBB before PTL - Forced PTL_USE_TBB to be set to GEANT4_USE_TBB when not diff --git a/cmake/Modules/FindInventor.cmake b/cmake/Modules/FindInventor.cmake deleted file mode 100644 index 96a8c6d0b2..0000000000 --- a/cmake/Modules/FindInventor.cmake +++ /dev/null @@ -1,260 +0,0 @@ -# - Locate Open Inventor -# -# The file tries to locate Open Inventor compatible library -# and associated libraries (SoXt, SoQt,...). -# -# Currently tested Open Inventor clones: -# - Coin (+SoXt and SoWin coming with Coin) -# - SGI Inventor -# -# Detection algorithms are described through the file. -# -# Author: PCJohn (Jan Peciva, jpeciva@strathmore.edu) -# http://www.cmake.org/pipermail/cmake/2008-August/023446.html -# Modifications by Ben Morgan (Ben.Morgan@warwick.ac.uk) -# -# This module defines: -# INVENTOR_FOUND, if false, do not try to link against Inventor. -# INVENTOR_INCLUDE_DIR, where to find headers. -# INVENTOR_LIBRARY, the library to link against. -# INVENTOR_LIBRARY_DEBUG, the debug library to link against. -# INVENTOR_SOWIN_LIBRARY, the SoWin library - window binding library for Inventor -# INVENTOR_SOWIN_LIBRARY_DEBUG, the SoWin debug library -# -# INVENTOR_SOXT_LIBRARY, the SoXt library - window binding library for Inventor -# INVENTOR_SOXT_LIBRARY_DEBUG, the SoXt debug library -# -# notes: -# - Coin is honored over SGI Inventor -# - Coin is detected by coin-config script, COINDIR environment variable, -# and finally standard system locations are searched -# - SGI Inventor is searched at standard system locations only -# - -# coin-config is used (if present) to find a prefix -execute_process (COMMAND coin-config --prefix - OUTPUT_VARIABLE COIN_PREFIX - OUTPUT_STRIP_TRAILING_WHITESPACE) - -# try to find Inventor includes (priority paths from coin-config and COINDIR) -FIND_PATH(INVENTOR_INCLUDE_DIR Inventor/So.h - ${COIN_PREFIX}/include - $ENV{COINDIR}/include - NO_DEFAULT_PATH -) - -# try to find Inventor includes (system paths) -FIND_PATH(INVENTOR_INCLUDE_DIR Inventor/So.h - /usr/local/include - /usr/include - /sw/include - /opt/local/include - /opt/csw/include - /opt/include -) - -# default Inventor lib search paths -SET(INVENTOR_LIB_SEARCH_PATH - /usr/local/lib - /usr/lib - /sw/lib - /opt/local/lib - /opt/csw/lib - /opt/lib -) - -# try to find Coin release lib (priority paths) -FIND_LIBRARY(INVENTOR_LIBRARY - NAMES coin5 coin4 coin3 coin2 coin1 Coin - PATHS ${COIN_PREFIX}/lib - $ENV{COINDIR}/lib - NO_DEFAULT_PATH -) - -# try to find Coin release lib (regular paths) -FIND_LIBRARY(INVENTOR_LIBRARY - NAMES coin5 coin4 coin3 coin2 coin1 Coin - PATHS ${INVENTOR_LIB_SEARCH_PATH} -) - -# try to find SGI Inventor lib -FIND_LIBRARY(INVENTOR_LIBRARY - NAMES Inventor - PATHS ${INVENTOR_LIB_SEARCH_PATH} -) - -# try to find Coin debug lib (priority paths) -#FIND_LIBRARY(INVENTOR_LIBRARY_DEBUG -# NAMES coin5d coin4d coin3d coin2d coin1d -# PATHS ${COIN_PREFIX}/lib -# $ENV{COINDIR}/lib -# NO_DEFAULT_PATH -#) - -# try to find Coin debug lib (regular paths) -#FIND_LIBRARY(INVENTOR_LIBRARY_DEBUG -# NAMES coin5d coin4d coin3d coin2d coin1d -# PATHS ${INVENTOR_LIB_SEARCH_PATH} -#) - -# set release to debug if only debug found -#IF(NOT INVENTOR_LIBRARY_RELEASE AND INVENTOR_LIBRARY_DEBUG) -# SET(INVENTOR_LIBRARY_RELEASE ${INVENTOR_LIBRARY_DEBUG}) -#ENDIF(NOT INVENTOR_LIBRARY_RELEASE AND INVENTOR_LIBRARY_DEBUG) - -# set debug to release (if only release found) -#IF(NOT INVENTOR_LIBRARY_DEBUG AND INVENTOR_LIBRARY_RELEASE) -# SET(INVENTOR_LIBRARY_DEBUG ${INVENTOR_LIBRARY_RELEASE}) -#ENDIF(NOT INVENTOR_LIBRARY_DEBUG AND INVENTOR_LIBRARY_RELEASE) - -# INVENTOR_LIBRARY -#IF (CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) -# SET(INVENTOR_LIBRARY -# optimized ${INVENTOR_LIBRARY_RELEASE} -# debug ${INVENTOR_LIBRARY_RELEASE}) -#ELSE(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) -# SET(INVENTOR_LIBRARY -# ${INVENTOR_LIBRARY_RELEASE}) -#ENDIF(CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE) - -# set INVENTOR_FOUND appropriately -SET(INVENTOR_FOUND "NO") -IF(INVENTOR_INCLUDE_DIR AND INVENTOR_LIBRARY) - SET(INVENTOR_FOUND "YES") -ENDIF(INVENTOR_INCLUDE_DIR AND INVENTOR_LIBRARY) - - -if(WIN32 AND NOT CYGWIN) - # - # SoWin - # - # notes: SoWin is searched by COINDIR environment variable - # (as expected to be located at Windows platform) - - # try to find SoWin lib (priority paths) - FIND_LIBRARY(INVENTOR_SOWIN_LIBRARY - NAMES sowin1 - PATHS $ENV{COINDIR}/lib - NO_DEFAULT_PATH - ) - - # try to find SoWin lib (regular paths) - FIND_LIBRARY(INVENTOR_SOWIN_LIBRARY - NAMES sowin1 - PATHS ${INVENTOR_LIB_SEARCH_PATH} - ) - - # try to find SoWin debug lib (priority paths) - FIND_LIBRARY(INVENTOR_SOWIN_LIBRARY_DEBUG - NAMES sowin1d - PATHS $ENV{COINDIR}/lib - NO_DEFAULT_PATH - ) - - # try to find SoWin debug lib (regular paths) - FIND_LIBRARY(INVENTOR_SOWIN_LIBRARY_DEBUG - NAMES sowin1d - PATHS ${INVENTOR_LIB_SEARCH_PATH} - ) - - # SoWin debug library defaults to non-debug lib - IF(NOT INVENTOR_SOWIN_LIBRARY_DEBUG) - IF(INVENTOR_SOWIN_LIBRARY) - SET(INVENTOR_SOWIN_LIBRARY_DEBUG INVENTOR_SOWIN_LIBRARY) - ENDIF(INVENTOR_SOWIN_LIBRARY) - ENDIF(NOT INVENTOR_SOWIN_LIBRARY_DEBUG) -endif() - - - -if(UNIX) - # - # SoXt - # - # notes: - # - SoXt is detected by soxt-config script (as expected by - # Coin's SoXt on Linux/Unix) and on standard system locations - # - SGI's InventorXt support is missing now - # - - # soxt-config tells much of SoXt instalation (if present) - execute_process (COMMAND soxt-config --prefix - OUTPUT_VARIABLE SOXT_PREFIX - OUTPUT_STRIP_TRAILING_WHITESPACE) - - # try to find Inventor includes (priority paths from coin-config and COINDIR) - FIND_PATH(INVENTOR_SOXT_INCLUDE_DIR Inventor/Xt/SoXt.h - ${SOXT_PREFIX}/include - $ENV{COINDIR}/include - NO_DEFAULT_PATH - ) - - # try to find Inventor includes (system paths) - FIND_PATH(INVENTOR_SOXT_INCLUDE_DIR Inventor/Xt/SoXt.h - /usr/local/include - /usr/include - /sw/include - /opt/local/include - /opt/csw/include - /opt/include - ) - - # try to find SoXt lib (priority paths) - FIND_LIBRARY(INVENTOR_SOXT_LIBRARY - NAMES soxt1 SoXt - PATHS ${SOXT_PREFIX}/lib - $ENV{COINDIR}/lib - NO_DEFAULT_PATH - ) - - # try to find SoXt lib (regular paths) - FIND_LIBRARY(INVENTOR_SOXT_LIBRARY - NAMES soxt1 SoXt - PATHS ${INVENTOR_LIB_SEARCH_PATH} - ) - - # - # SoQt - # - # notes: - # - SoQt is detected by soqt-config script (as expected by - # Coin's SoQt on Linux/Unix) and on standard system locations - # - - # soqt-config tells much of SoQt installation (if present) - execute_process (COMMAND soqt-config --prefix - OUTPUT_VARIABLE SOQT_PREFIX - OUTPUT_STRIP_TRAILING_WHITESPACE) - - # try to find Inventor includes (priority paths from coin-config and COINDIR) - FIND_PATH(INVENTOR_SOQT_INCLUDE_DIR Inventor/Qt/SoQt.h - ${SOQT_PREFIX}/include - $ENV{COINDIR}/include - NO_DEFAULT_PATH - ) - - # try to find Inventor includes (system paths) - FIND_PATH(INVENTOR_SOQT_INCLUDE_DIR Inventor/Qt/SoQt.h - /usr/local/include - /usr/include - /sw/include - /opt/local/include - /opt/csw/include - /opt/include - ) - - # try to find SoQt lib (priority paths) - FIND_LIBRARY(INVENTOR_SOQT_LIBRARY - NAMES soqt1 SoQt - PATHS ${SOQT_PREFIX}/lib - $ENV{COINDIR}/lib - NO_DEFAULT_PATH - ) - - # try to find SoQt lib (regular paths) - FIND_LIBRARY(INVENTOR_SOQT_LIBRARY - NAMES soqt1 SoQt - PATHS ${INVENTOR_LIB_SEARCH_PATH} - ) - -endif() diff --git a/cmake/Modules/FindXQuartzGL.cmake b/cmake/Modules/FindXQuartzGL.cmake index d30e40d350..c26754a611 100644 --- a/cmake/Modules/FindXQuartzGL.cmake +++ b/cmake/Modules/FindXQuartzGL.cmake @@ -41,7 +41,7 @@ The following cache variables may also be set # Just don't run if we're on macOS if(NOT APPLE) - message(FATAL_ERROR "FindXquartzGL is only for use on macOS platforms") + message(FATAL_ERROR "FindXQuartzGL is only for use on macOS platforms") endif() # - This is for X11 GL drivers, so we DON'T want Framework! @@ -79,7 +79,7 @@ mark_as_advanced(XQuartzGL_INCLUDE_DIR XQuartzGL_gl_LIBRARY XQuartzGL_glu_LIBRAR if(XQuartzGL_FOUND) if(NOT TARGET XQuartzGL::GL) add_library(XQuartzGL::GL UNKNOWN IMPORTED) - set_target_properties(XQuartzGL::GL PROPERTIES + set_target_properties(XQuartzGL::GL PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${XQuartzGL_INCLUDE_DIR}" IMPORTED_LOCATION "${XQuartzGL_gl_LIBRARY}" ) @@ -87,7 +87,7 @@ if(XQuartzGL_FOUND) if(NOT TARGET XQuartzGL::GLU AND XQuartzGL_glu_LIBRARY) add_library(XQuartzGL::GLU UNKNOWN IMPORTED) - set_target_properties(XQuartzGL::GLU PROPERTIES + set_target_properties(XQuartzGL::GLU PROPERTIES INTERFACE_INCLUDE_DIRECTORIES "${XQuartzGL_INCLUDE_DIR}" INTERFACE_LINK_LIBRARIES XQuartzGL::GL IMPORTED_LOCATION "${XQuartzGL_glu_LIBRARY}" diff --git a/cmake/Modules/G4BuildSettings.cmake b/cmake/Modules/G4BuildSettings.cmake index a4348bbb72..a4a67ff15e 100644 --- a/cmake/Modules/G4BuildSettings.cmake +++ b/cmake/Modules/G4BuildSettings.cmake @@ -117,6 +117,7 @@ mark_as_advanced(CMAKE_CXX_FLAGS_MAINTAINER) # if(NOT CMAKE_CONFIGURATION_TYPES) # Single mode build tools like Make, Ninja, + set(__g4buildmodes "" Release TestRelease MinSizeRel Debug Debug_FPE RelWithDebInfo MinSizeRel Maintainer) if(NOT CMAKE_BUILD_TYPE) # Default to a Release build if nothing else... set(CMAKE_BUILD_TYPE Release @@ -130,6 +131,7 @@ if(NOT CMAKE_CONFIGURATION_TYPES) FORCE ) endif() + set_property(CACHE CMAKE_BUILD_TYPE PROPERTY STRINGS ${__g4buildmodes}) else() # Multimode tools like VS, Xcode list(APPEND CMAKE_CONFIGURATION_TYPES Debug_FPE) @@ -154,14 +156,19 @@ endif() #NOT WIN32 # #.rst -# - ``GEANT4_BUILD_CXXSTD`` (Allowed values: 11, 14, 17, c++11, c++14, c++17) +# - ``GEANT4_BUILD_CXXSTD`` (Allowed values: 11, 14, 17, 20) # # - Choose C++ Standard to build against from supported list. # - Note that only C++17 is supported on Windows with MSVC +# - C++20 awareness is only available from CMake 3.12 onwards # -set(__g4_default_cxxstd 11 14 17 c++11 c++14 c++17) +set(__g4_default_cxxstd 11 14 17) if(MSVC) - set(__g4_default_cxxstd 17 c++17) + set(__g4_default_cxxstd 17) +endif() + +if(CMAKE_VERSION VERSION_GREATER_EQUAL 3.12) + list(APPEND __g4_default_cxxstd 20) endif() enum_option(GEANT4_BUILD_CXXSTD @@ -175,7 +182,9 @@ mark_as_advanced(GEANT4_BUILD_CXXSTD) geant4_add_feature(GEANT4_BUILD_CXXSTD "Compiling against C++ Standard '${GEANT4_BUILD_CXXSTD}'") -# Require at least C++11 with no extensions and the following features +# Require at minimal set of C++11 features plus user's selection of standard, no extensions +# Explicit features are retained for C++11 to identify use of old compilers with partial support. +# Here, the `cxx_std_11` epoch feature might not be sufficient. set(CMAKE_CXX_EXTENSIONS OFF) set(GEANT4_TARGET_COMPILE_FEATURES cxx_alias_templates @@ -190,36 +199,25 @@ set(GEANT4_TARGET_COMPILE_FEATURES cxx_range_for cxx_strong_enums cxx_uniform_initialization - # Features that MSVC 18.0 cannot support but in list of Geant4 coding - # guidelines - to be required once support for that compiler is dropped. - # Version 10.2 is coded without these being required. - #cxx_deleted_functions - #cxx_generalized_initializers - #cxx_constexpr - #cxx_inheriting_constructors - ) + cxx_std_${GEANT4_BUILD_CXXSTD}) -# If a standard higher than 11 has been selected, check that compiler has -# at least one feature from that standard and append these to the required -# feature list -if(GEANT4_BUILD_CXXSTD GREATER 11) - if(CMAKE_CXX${GEANT4_BUILD_CXXSTD}_COMPILE_FEATURES) - list(APPEND GEANT4_TARGET_COMPILE_FEATURES ${CMAKE_CXX${GEANT4_BUILD_CXXSTD}_COMPILE_FEATURES}) - else() - message(FATAL_ERROR "Geant4 requested to be compiled against C++ standard '${GEANT4_BUILD_CXXSTD}'\nbut detected compiler '${CMAKE_CXX_COMPILER_ID}', version '${CMAKE_CXX_COMPILER_VERSION}'\ndoes not support, or CMake (${CMAKE_VERSION}) is not aware of, any features of that standard.") - endif() +# Emit early fatal error if we don't have a record of the core standard +# in CMake's known features. CMake will check this for us as well, but doing +# the check here only emits one error. We can also give a better hint on the +# cause/resolution +if(NOT ("${CMAKE_CXX_COMPILE_FEATURES}" MATCHES "cxx_std_${GEANT4_BUILD_CXXSTD}")) + message(FATAL_ERROR + "Geant4 requested compilation using C++ standard '${GEANT4_BUILD_CXXSTD}' using compiler\n" + "'${CMAKE_CXX_COMPILER_ID}', version '${CMAKE_CXX_COMPILER_VERSION}'\n" + "but CMake ${CMAKE_VERSION} is not aware of any support for that standard by this compiler. You may need a newer CMake and/or compiler.\n") endif() # - Check for Standard Library Implementation Features -# Smart pointers are a library implementation feature -# Hashed containers are a library implementation feature -# Random numbers are a library implementation feature? -# An example of where a workaround is needed -# Rest of concurrency a library implementation feature +# e.g. Smart pointers are a library implementation feature +# and provide workarounds if needed # Hold any appropriate compile flag(s) in variable for later export to -# config files. Needed to support clients using late CMake 2.8 where compile features -# are not available. +# non-cmake config files set(GEANT4_CXXSTD_FLAGS "${CMAKE_CXX${GEANT4_BUILD_CXXSTD}_STANDARD_COMPILE_OPTION}") #----------------------------------------------------------------------- @@ -276,6 +274,27 @@ if(GEANT4_BUILD_MULTITHREADED) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${GEANT4_MULTITHREADED_CXX_FLAGS}") endif() +#----------------------------------------------------------------------- +# Physics +#----------------------------------------------------------------------- +#.rst: +# - ``GEANT4_BUILD_PHP_AS_HP`` (Default: OFF, ON if ``PHP_AS_HP`` set in environment) +# +# - Build ParticleHP as HP. +# - Use of the ``PHP_AS_HP`` environment variable to enable this build +# option is deprecated and will be removed in the next release +# +set(_default_build_php_as_hp OFF) +if(DEFINED ENV{PHP_AS_HP}) + message(WARNING "Use of the PHP_AS_HP environment variable to enable building ParticleHP as HP is deprecated. " + "Use the GEANT4_BUILD_PHP_AS_HP CMake option to enable this functionality.") + set(_default_build_php_as_hp ON) +endif() + +option(GEANT4_BUILD_PHP_AS_HP "Build ParticleHP as HP" ${_default_build_php_as_hp}) +mark_as_advanced(GEANT4_BUILD_PHP_AS_HP) +geant4_add_feature(GEANT4_BUILD_PHP_AS_HP "Building ParticleHP as HP") + #----------------------------------------------------------------------- # Miscellaneous #----------------------------------------------------------------------- @@ -303,6 +322,20 @@ option(GEANT4_BUILD_VERBOSE_CODE ON) mark_as_advanced(GEANT4_BUILD_VERBOSE_CODE) +#.rst: +# - ``GEANT4_BUILD_BUILTIN_BACKTRACE`` (Unix only, Default: OFF) +# +# - Setting to ``ON`` will build in automatic signal handling for ``G4RunManager`` +# through ``G4Backtrace``. Applications requiring/implenting their own signal +# handling should not enable this option. +# +if(UNIX) + option(GEANT4_BUILD_BUILTIN_BACKTRACE + "Enable automatic G4Backtrace signal handling in G4RunManager. Switch off for applications implementing their own signal handling" + OFF) + mark_as_advanced(GEANT4_BUILD_BUILTIN_BACKTRACE) +endif() + #.rst: # - ``GEANT4_BUILD_MSVC_MP`` (Windows only, Default: OFF) # diff --git a/cmake/Modules/G4CMakeMain.cmake b/cmake/Modules/G4CMakeMain.cmake index a700137de3..0aa2afd610 100644 --- a/cmake/Modules/G4CMakeMain.cmake +++ b/cmake/Modules/G4CMakeMain.cmake @@ -79,7 +79,7 @@ option(GEANT4_USE_PYTHON "Build Python bindings for Geant4" OFF) if(GEANT4_USE_PYTHON) # We can only build g4py with MT geant4 if TLS is global-dynamic (or auto?) if(GEANT4_BUILD_MULTITHREADED AND (NOT GEANT4_BUILD_TLS_MODEL MATCHES "global-dynamic")) - message(FATAL_ERROR "Geant4Py only supports 'global-dynamic' thread local storage + message(FATAL_ERROR "Geant4Py only supports 'global-dynamic' thread local storage, but '${GEANT4_BUILD_TLS_MODEL}' selected by GEANT4_BUILD_TLS_MODEL option ") endif() diff --git a/cmake/Modules/G4CMakeUtilities.cmake b/cmake/Modules/G4CMakeUtilities.cmake index 4e5023827d..511c4d9991 100644 --- a/cmake/Modules/G4CMakeUtilities.cmake +++ b/cmake/Modules/G4CMakeUtilities.cmake @@ -42,7 +42,6 @@ endif() # # This module includes the following modules: include(CMakeDependentOption) -include(Geant4MacroDefineModule) include(Geant4MacroLibraryTargets) #----------------------------------------------------------------------- @@ -118,6 +117,7 @@ function(enum_option _var) endif() endif() endif() + set_property(CACHE ${_var} PROPERTY STRINGS ${_ENUMOP_VALUES}) endfunction() #----------------------------------------------------------------------- diff --git a/cmake/Modules/G4CTest.cmake b/cmake/Modules/G4CTest.cmake index 93c25b8b32..d530fecd55 100644 --- a/cmake/Modules/G4CTest.cmake +++ b/cmake/Modules/G4CTest.cmake @@ -41,6 +41,12 @@ if(GEANT4_ENABLE_TESTING) if(GEANT4_USE_FREETYPE) list(APPEND GEANT4_TEST_ENVIRONMENT TOOLS_FONT_PATH=${PROJECT_SOURCE_DIR}/source/analysis/fonts) endif() + + # - Configure 'G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default)' + # to use TBB + if(GEANT4_BUILD_MULTITHREADED AND GEANT4_USE_TBB) + list(APPEND GEANT4_TEST_ENVIRONMENT G4RUN_MANAGER_TYPE=TBB) + endif() endif() #----------------------------------------------------------------------- diff --git a/cmake/Modules/G4ConfigurePkgConfigHelpers.cmake b/cmake/Modules/G4ConfigurePkgConfigHelpers.cmake index d3d846c078..3d6abd771a 100644 --- a/cmake/Modules/G4ConfigurePkgConfigHelpers.cmake +++ b/cmake/Modules/G4ConfigurePkgConfigHelpers.cmake @@ -123,6 +123,13 @@ if(NOT GEANT4_BUILD_GRANULAR_LIBS AND UNIX) set(G4_BUILTWITH_MULTITHREADING "no") endif() + # - PHP_AS_HP + if(GEANT4_BUILD_PHP_AS_HP) + set(G4_BUILTWITH_PHP_AS_HP "yes") + else() + set(G4_BUILTWITH_PHP_AS_HP "no") + endif() + # - Smart Stack if(GEANT4_USE_SMARTSTACK) set(G4_BUILTWITH_SMARTSTACK "yes") @@ -222,7 +229,7 @@ if(NOT GEANT4_BUILD_GRANULAR_LIBS AND UNIX) set(G4_BUILTWITH_FREETYPE "no") endif() - # - Freetype + # - HDF5 if(GEANT4_USE_HDF5) set(G4_BUILTWITH_HDF5 "yes") else() @@ -232,7 +239,7 @@ if(NOT GEANT4_BUILD_GRANULAR_LIBS AND UNIX) # - Qt if(GEANT4_USE_QT) set(G4_BUILTWITH_QT "yes") - set(G4_QT_INCLUDE_DIRS ${Qt5Core_INCLUDE_DIRS} ${Qt5Gui_INCLUDE_DIRS} ${Qt5Widgets_INCLUDE_DIRS} ${Qt5OpenGL_INCLUDE_DIRS} ${Qt5PrintSupport_INCLUDE_DIRS}) + set(G4_QT_INCLUDE_DIRS ${Qt5Core_INCLUDE_DIRS} ${Qt5Gui_INCLUDE_DIRS} ${Qt5Widgets_INCLUDE_DIRS} ${Qt5OpenGL_INCLUDE_DIRS} ${Qt5PrintSupport_INCLUDE_DIRS} ${Qt53DCore_INCLUDE_DIRS} ${Qt53DExtras_INCLUDE_DIRS} ${Qt53DRender_INCLUDE_DIRS}) list(REMOVE_DUPLICATES G4_QT_INCLUDE_DIRS) if(_cxx_compiler_dirs) diff --git a/cmake/Modules/G4DatasetDefinitions.cmake b/cmake/Modules/G4DatasetDefinitions.cmake index 6b7f1e34c7..aa9c7486ba 100644 --- a/cmake/Modules/G4DatasetDefinitions.cmake +++ b/cmake/Modules/G4DatasetDefinitions.cmake @@ -18,41 +18,41 @@ geant4_add_dataset( # - Low energy electromagnetics geant4_add_dataset( NAME G4EMLOW - VERSION 7.12 + VERSION 7.13 FILENAME G4EMLOW EXTENSION tar.gz ENVVAR G4LEDATA - MD5SUM 0d3d46eeb7420f2b996242fec756ee52 + MD5SUM 55922521aa331655a0494cdf8f9a70e8 ) # - Photon evaporation geant4_add_dataset( NAME PhotonEvaporation - VERSION 5.5 + VERSION 5.7 FILENAME G4PhotonEvaporation EXTENSION tar.gz ENVVAR G4LEVELGAMMADATA - MD5SUM 707514c864414089af9671db0f656e35 + MD5SUM 81ff27deb23af4aa225423e6b3a06b39 ) # - Radioisotopes geant4_add_dataset( NAME RadioactiveDecay - VERSION 5.4 + VERSION 5.6 FILENAME G4RadioactiveDecay EXTENSION tar.gz ENVVAR G4RADIOACTIVEDATA - MD5SUM 08abe2bcc0bcd1ac4bbe09f5ae69cdbe + MD5SUM acc1dbeb87b6b708b2874ced729a3a8f ) # - Particle XS - replaces Neutron XS geant4_add_dataset( NAME G4PARTICLEXS - VERSION 2.1 + VERSION 3.1 FILENAME G4PARTICLEXS EXTENSION tar.gz ENVVAR G4PARTICLEXSDATA - MD5SUM 24a68bb627a95629e2edcd098131d6b3 + MD5SUM 35a3fe5cf0a29d453e6805e2cfacacee ) # - PII @@ -68,11 +68,11 @@ geant4_add_dataset( # - Optical Surfaces geant4_add_dataset( NAME RealSurface - VERSION 2.1.1 + VERSION 2.2 FILENAME G4RealSurface EXTENSION tar.gz ENVVAR G4REALSURFACEDATA - MD5SUM 1d0fcc24c7082edae1e22a3d43fbb4d9 + MD5SUM ea8f1cfa8d8aafd64b71fb30b3e8a6d9 ) # - SAID @@ -109,10 +109,26 @@ geant4_add_dataset( # - ENSDFSTATE geant4_add_dataset( NAME G4ENSDFSTATE - VERSION 2.2 + VERSION 2.3 FILENAME G4ENSDFSTATE EXTENSION tar.gz ENVVAR G4ENSDFSTATEDATA - MD5SUM 495439cf600225753d7bd99825e5c6bc + MD5SUM 6f18fce8f217e7aaeaa3711be9b2c7bf + ) + +# - TENDL +option(GEANT4_INSTALL_DATASETS_TENDL "Install optional TENDL dataset" OFF) +mark_as_advanced(GEANT4_INSTALL_DATASETS_TENDL) + +if(GEANT4_INSTALL_DATASETS_TENDL) + geant4_add_dataset( + NAME G4TENDL + VERSION 1.4 + FILENAME G4TENDL + EXTENSION tar.gz + ENVVAR G4PARTICLEHPDATA + MD5SUM ecdad2f8234c10caecaac82ac0cb96f8 ) +endif() + diff --git a/cmake/Modules/G4DeveloperAPI.cmake b/cmake/Modules/G4DeveloperAPI.cmake index f75a52e4cd..03cf2ce80e 100644 --- a/cmake/Modules/G4DeveloperAPI.cmake +++ b/cmake/Modules/G4DeveloperAPI.cmake @@ -41,15 +41,6 @@ else() return() endif() -# Whilst we test, allow switching between old and new implementations -option(GEANT4_USE_NEW_CMAKE "Use new CMake module/library implementation" ON) -mark_as_advanced(GEANT4_USE_NEW_CMAKE) - -if(NOT GEANT4_USE_NEW_CMAKE) - include(G4DeveloperAPI_OLD) - return() -endif() - # Needed modules include(G4ClangFormat) @@ -499,12 +490,12 @@ function(geant4_compose_targets) endif() endforeach() - # Process all defined libraries, except for G4clhep{-static} - # G4clhep/G4ptl are a corner cases because its call to add_library happens + # Process all defined libraries, except for G4{clhep,expat,ptl}{-static} + # These are corner cases because its call to add_library happens # at a different (lower) directory level than all the other targets # This means we cannot install it here. That's left to it get_property(__g4definedlibraries GLOBAL PROPERTY GEANT4_DEFINED_CATEGORIES) - list(REMOVE_ITEM __g4definedlibraries G4clhep G4clhep-static G4ptl G4ptl-static) + list(REMOVE_ITEM __g4definedlibraries G4clhep G4clhep-static G4expat G4expat-static G4ptl G4ptl-static) set(__g4builtlibraries) set(__g4public_headers) @@ -670,8 +661,8 @@ endfunction() # GEANT4_LINK_LIBRARIES lib1 [lib2 ...] # LINK_LIBRARIES lib1 [lib2 ...]) # -# DEPRECATED: Maintained only for building internal G4clhep target because of its -# different include structure. +# Maintained for building internal G4clhep,G4expat targets because we try and +# reuse their upstream code/build layout as far as possible # function(geant4_library_target) cmake_parse_arguments(G4GLOBLIB @@ -681,7 +672,7 @@ function(geant4_library_target) ${ARGN} ) # Currently a hack to get G4clhep to build, so an error if used elsewhere - if(NOT (${G4GLOBLIB_NAME} STREQUAL "G4clhep")) + if(NOT (${G4GLOBLIB_NAME} MATCHES "G4clhep|G4expat")) message(FATAL_ERROR "geant4_library_target called for '${G4GLOBLIB_NAME}' in '${CMAKE_CURRENT_LIST_DIR}'") endif() @@ -856,8 +847,8 @@ endfunction() # This is used internally by the ``geant4_compose_targets`` command. # function(__geant4_add_library _name _type) - # TEMP HACK: G4clhep/G4ptl are a special cases, and build is handled separately - if(_name MATCHES "G4clhep|G4ptl") + # TEMP HACK: G4clhep/G4expat/G4ptl are a special cases, and build is handled separately + if(_name MATCHES "G4clhep|G4expat|G4ptl") return() endif() diff --git a/cmake/Modules/G4DeveloperAPI_OLD.cmake b/cmake/Modules/G4DeveloperAPI_OLD.cmake deleted file mode 100644 index 8e93cb8e94..0000000000 --- a/cmake/Modules/G4DeveloperAPI_OLD.cmake +++ /dev/null @@ -1,453 +0,0 @@ -#.rst: -# G4DeveloperAPI_OLD -# ------------------ -# -# Old style API for declaring Geant4 source code modules and -# compiling, linking and installing binary libraries composed -# from one or more source code modules. -# - -#----------------------------------------------------------------- -# License and Disclaimer -# -# The Geant4 software is copyright of the Copyright Holders of -# the Geant4 Collaboration. It is provided under the terms and -# conditions of the Geant4 Software License, included in the file -# LICENSE and available at http://cern.ch/geant4/license . These -# include a list of copyright holders. -# -# Neither the authors of this software system, nor their employing -# institutes,nor the agencies providing financial support for this -# work make any representation or warranty, express or implied, -# regarding this software system or assume any liability for its -# use. Please see the license in the file LICENSE and URL above -# for the full disclaimer and the limitation of liability. -# -# This code implementation is the result of the scientific and -# technical work of the GEANT4 collaboration. -# By using, copying, modifying or distributing the software (or -# any work based on the software) you agree to acknowledge its -# use in resulting scientific publications, and indicate your -# acceptance of all terms of the Geant4 Software license. -# -#----------------------------------------------------------------- - - -# - Include guard -if(NOT __G4DEVELOPERAPI_OLD_INCLUDED) - set(__G4DEVELOPERAPI_OLD_INCLUDED 1) -else() - return() -endif() - -# - Needed CMake modules -include(CMakeParseArguments) -include(G4ClangFormat) - -#----------------------------------------------------------------------- -#.rst: -# Source Code Module Declaration Functions -# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -# -# Geant4's source code is organised into categories composed of one or -# more "modules" of source code. Each module has the following layout -# of headers and sources: -# -# - include/ -# - Public headers -# - src/ -# - Implementations -# -# The functions here declare a module ready for it to be integrated -# by the library build functions described below. - -#----------------------------------------------------------------------- -# macro geant4_define_module(NAME -# HEADERS ... -# SOURCES ... -# GRANULAR_DEPENDENCIES ... -# GLOBAL_DEPENDENCIES ... -# LINK_LIBRARIES ... ) -# Define a Geant4 Module's sources and what internal and external -# libraries it links to. -# -# GEANT4_DEFINE_MODULE will take the name of the module, a list of header -# files, a list of source files and dependencies: -# -# GEANT4_DEFINE_MODULE(NAME name -# HEADERS hdr1 hdr2 ... -# SOURCES src1 src2 ... -# GRANULAR_DEPENDENCIES dep1 dep2 ... -# GLOBAL_DEPENDENCIES dep1 dep2 ... -# LINK_LIBRARIES lib1 lib2 ...) -# -# It assumes that it will be called from a CMake located in the module -# root directory (i.e. the directory containing the include and src -# subdirectories). It uses this location to define absolute paths to the -# headers and sources, and will ignore any absolute paths passed in HEADERS -# or SOURCES so that generated files can be passed in. -# -# The macro defines the variables -# -# G4MODULENAME = name -# ${G4MODULENAME}_HEADERS = List of absolute paths to files given in HEADERS -# ${G4MODULENAME}_SOURCES = List of absolute paths to files given in SOURCES -# ${G4MODULENAME}_GRANULAR_DEPS = List of granular libraries on which this -# module depends -# ${G4MODULENAME}_GLOBAL_DEPS = List of global libraries on which this module -# depends -# ${G4MODULENAME}_LINK_LIBRARIES = List of external libraries to be linked to -# this module -# -# It will also add the module include directory to the list of directories -# using include_directories -# -macro(geant4_define_module) - set(multiargs - HEADERS SOURCES GRANULAR_DEPENDENCIES GLOBAL_DEPENDENCIES LINK_LIBRARIES - HEADERS_EXCLUDE_FORMAT SOURCES_EXCLUDE_FORMAT) - cmake_parse_arguments(G4DEFMOD - "" - "NAME" - "${multiargs}" - ${ARGN} - ) - - set(G4MODULENAME ${G4DEFMOD_NAME}) - - get_filename_component(${G4MODULENAME}_BASEDIR ${CMAKE_CURRENT_LIST_FILE} PATH) - set(${G4MODULENAME}_SRCDIR ${${G4MODULENAME}_BASEDIR}/src) - set(${G4MODULENAME}_INCDIR ${${G4MODULENAME}_BASEDIR}/include) - - # We now create absolute paths to the headers and sources, - # ignoring any already absolute paths - foreach(_HDR ${G4DEFMOD_HEADERS}) - if(IS_ABSOLUTE ${_HDR}) - list(APPEND ${G4MODULENAME}_HEADERS ${_HDR}) - else() - list(APPEND ${G4MODULENAME}_HEADERS ${${G4MODULENAME}_INCDIR}/${_HDR}) - endif() - endforeach() - - foreach(_SRC ${G4DEFMOD_SOURCES}) - if(IS_ABSOLUTE ${_SRC}) - list(APPEND ${G4MODULENAME}_SOURCES ${_SRC}) - else() - list(APPEND ${G4MODULENAME}_SOURCES ${${G4MODULENAME}_SRCDIR}/${_SRC}) - endif() - endforeach() - - exclude_from_format( - HEADERS ${G4DEFMOD_HEADERS_EXCLUDE_FORMAT} - SOURCES ${G4DEFMOD_SOURCES_EXCLUDE_FORMAT}) - - foreach(_LIB ${G4DEFMOD_GRANULAR_DEPENDENCIES}) - list(APPEND ${G4MODULENAME}_GRANULAR_DEPENDENCIES ${_LIB}) - endforeach() - - foreach(_LIB ${G4DEFMOD_GLOBAL_DEPENDENCIES}) - list(APPEND ${G4MODULENAME}_GLOBAL_DEPENDENCIES ${_LIB}) - endforeach() - - foreach(_LIB ${G4DEFMOD_LINK_LIBRARIES}) - list(APPEND ${G4MODULENAME}_LINK_LIBRARIES ${_LIB}) - endforeach() -endmacro() - - -#----------------------------------------------------------------------- -# macro geant4_add_compile_definitions(SOURCES ... -# COMPILE_DEFINITIONS ... -# ) -# Add extra compile definitions to a specific list of sources -# in the current module. Macroized to handle the need to specify absolute paths. -# and *must* be called at the same level as geant4_define_module -# -macro(geant4_add_compile_definitions) - cmake_parse_arguments(G4ADDDEF - "" - "" - "SOURCES;COMPILE_DEFINITIONS" - ${ARGN} - ) - - # We assume that the sources have been added at the level of a - # a sources.cmake, so are inside the src subdir of the sources.cmake - get_filename_component(_ACD_BASE_PATH ${CMAKE_CURRENT_LIST_FILE} PATH) - - # Now for each file, add the definitions - foreach(_acd_source ${G4ADDDEF_SOURCES}) - # Extract any existing compile definitions - get_source_file_property( - _acd_existing_properties - ${_ACD_BASE_PATH}/src/${_acd_source} - COMPILE_DEFINITIONS) - - if(_acd_existing_properties) - set(_acd_new_defs ${_acd_existing_properties} - ${G4ADDDEF_COMPILE_DEFINITIONS}) - else() - set(_acd_new_defs ${G4ADDDEF_COMPILE_DEFINITIONS}) - endif() - - # quote compile defs because this must epand to space separated list - set_source_files_properties(${_ACD_BASE_PATH}/src/${_acd_source} - PROPERTIES COMPILE_DEFINITIONS "${_acd_new_defs}") - endforeach() -endmacro() - - -#----------------------------------------------------------------------- -#.rst: -# Library Declaration, Build and Install API -# ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ -# -# - Define useful macros for building and installing Geant4 library targets -# -# This file defines the following macros for Geant4 developers needing to -# add shared and static library targets. -# -# GEANT4_LIBRARY_TARGET - define standard Geant4 library targets -# -# The macro will take the name of the library and its sources, defining -# static and shared targets depending on the value of BUILD_SHARED_LIBS and -# BUILD_STATIC_LIBS. Install targets are also created. -# -# A custom compile definition "GEANT4_DEVELOPER_" is set on -# each target using the target property COMPILE_DEFINITIONS_ -# target property - - -#----------------------------------------------------------------------- - -#----------------------------------------------------------------------- -# - GEANT4_LIBRARY_TARGET -# General build and install of a Geant4 library target -# -macro(geant4_library_target) - cmake_parse_arguments(G4LIBTARGET - "" - "NAME" "SOURCES;GEANT4_LINK_LIBRARIES;LINK_LIBRARIES" - ${ARGN} - ) - - geant4_format_target(NAME ${G4LIBTARGET_NAME}-format SOURCES ${G4LIBTARGET_SOURCES}) - - if(BUILD_SHARED_LIBS) - # Add the shared library target and link its dependencies - # - Common shared lib commands - add_library(${G4LIBTARGET_NAME} SHARED ${G4LIBTARGET_SOURCES}) - target_compile_definitions(${G4LIBTARGET_NAME} PRIVATE GEANT4_DEVELOPER_$) - target_compile_features(${G4LIBTARGET_NAME} PUBLIC ${GEANT4_TARGET_COMPILE_FEATURES}) - - set(__sorted_link_libs ${G4LIBTARGET_GEANT4_LINK_LIBRARIES} ${G4LIBTARGET_LINK_LIBRARIES}) - if(__sorted_link_libs) - list(SORT __sorted_link_libs) - endif() - - target_link_libraries(${G4LIBTARGET_NAME} ${__sorted_link_libs}) - # DLL support, portable to all platforms - # G4LIB_BUILD_DLL is public as despite the name it indicates the shared/archive mode - # and clients must apply it when linking to the shared libs. The global - # category handles the exact import/export statements - target_compile_definitions(${G4LIBTARGET_NAME} PUBLIC G4LIB_BUILD_DLL) - set_target_properties(${G4LIBTARGET_NAME} PROPERTIES WINDOWS_EXPORT_ALL_SYMBOLS ON) - - # Set the include directory usage requirements - target_include_directories(${G4LIBTARGET_NAME} PUBLIC "$") - - # This property is set to prevent concurrent builds of static and - # shared libs removing each others files. - set_target_properties(${G4LIBTARGET_NAME} - PROPERTIES CLEAN_DIRECT_OUTPUT 1) - - # Use '@rpath' in install names of libraries on macOS to provide relocatibility - set_target_properties(${G4LIBTARGET_NAME} - PROPERTIES MACOSX_RPATH 1 - ) - # Add '@loader_path' to INSTALL_RPATH on macOS so that Geant4 - # libraries self-locate each other whilst remaining relocatable - if(APPLE) - set_property(TARGET ${G4LIBTARGET_NAME} - APPEND PROPERTY INSTALL_RPATH "@loader_path" - ) - endif() - - # Alias the library for transparent internal use in build or link contexts - add_library(Geant4::${G4LIBTARGET_NAME} ALIAS ${G4LIBTARGET_NAME}) - - # Install the library - note the use of RUNTIME, LIBRARY and ARCHIVE - # this helps with later DLL builds. - # Export to standard depends file for later install - install(TARGETS ${G4LIBTARGET_NAME} - EXPORT Geant4LibraryDepends - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Runtime - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Development - INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}) - endif() - - # - # As above, but for static rather than shared library - if(BUILD_STATIC_LIBS) - # We have to distinguish the static from shared lib, so use -static in - # name. Link its dependencies, and ensure we actually link to the - # -static targets (We should strictly do this for the external - # libraries as well if we want a pure static build). - add_library(${G4LIBTARGET_NAME}-static STATIC ${G4LIBTARGET_SOURCES}) - target_compile_definitions(${G4LIBTARGET_NAME}-static PRIVATE GEANT4_DEVELOPER_$) - target_compile_features(${G4LIBTARGET_NAME}-static PUBLIC ${GEANT4_TARGET_COMPILE_FEATURES}) - target_include_directories(${G4LIBTARGET_NAME}-static PUBLIC "$") - - set(G4LIBTARGET_GEANT4_LINK_LIBRARIES_STATIC ) - foreach(_tgt ${G4LIBTARGET_GEANT4_LINK_LIBRARIES}) - list(APPEND G4LIBTARGET_GEANT4_LINK_LIBRARIES_STATIC ${_tgt}-static) - endforeach() - - # If we are building both types of library and builtin clhep etc, - # we want to link shared->shared and static->static. - # Because externals like clhep appear in G4LIBTARGET_LINK_LIBRARIES, - # filter this list to replace shared builtins with their static variant - string(REGEX REPLACE - "(G4clhep|G4expat|G4zlib|G4ptl|G4geomUSolids)(;|$)" "\\1-static\\2" - G4LIBTARGET_LINK_LIBRARIES_STATIC - "${G4LIBTARGET_LINK_LIBRARIES}" - ) - - set(__sorted_link_libs ${G4LIBTARGET_GEANT4_LINK_LIBRARIES_STATIC} ${G4LIBTARGET_LINK_LIBRARIES_STATIC}) - if(__sorted_link_libs) - list(SORT __sorted_link_libs) - endif() - target_link_libraries(${G4LIBTARGET_NAME}-static PUBLIC ${__sorted_link_libs}) - - # But we can rename the output library to the correct name - # On WIN32 we *retain* the -static postfix to avoid name clashes - # with the DLL import lib. - if(NOT WIN32) - set_target_properties(${G4LIBTARGET_NAME}-static - PROPERTIES OUTPUT_NAME ${G4LIBTARGET_NAME}) - endif() - - set_target_properties(${G4LIBTARGET_NAME}-static - PROPERTIES CLEAN_DIRECT_OUTPUT 1) - - # Alias the library for transparent internal use in build or link contexts - add_library(Geant4::${G4LIBTARGET_NAME}-static ALIAS ${G4LIBTARGET_NAME}-static) - - install(TARGETS ${G4LIBTARGET_NAME}-static - EXPORT Geant4LibraryDepends - RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime - LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Runtime - ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Development - INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}) - endif() -endmacro() - -#----------------------------------------------------------------------- -# - GEANT4_HEADER_MODULE_TARGET -# Build and install for a header only Geant4 module. -# -macro(geant4_header_module_target) - CMAKE_PARSE_ARGUMENTS(G4HEADERMOD - "" - "COMPONENT" - "" - ${ARGN} - ) - - # Only has one component, and we just have to pick out the headers - include(${G4HEADERMOD_COMPONENT}) - - # Header install? - install(FILES ${${G4MODULENAME}_HEADERS} - DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME} - COMPONENT Development) - - # Store the include path of the component so that the build tree - # config file can pick up all needed header paths - set_property(GLOBAL APPEND - PROPERTY GEANT4_BUILDTREE_INCLUDE_DIRS "${${G4MODULENAME}_INCDIR}") -endmacro() - -#----------------------------------------------------------------------- -# - GEANT4_GRANULAR_LIBRARY_TARGET -# Build and install for a Geant4 module (granular) library -# -macro(geant4_granular_library_target) - cmake_parse_arguments(G4GRANLIB - "" - "COMPONENT" - "" - ${ARGN} - ) - - message(FATAL_ERROR "geant4_granular_library_target is no longer supported") -endmacro() - -#----------------------------------------------------------------------- -# - GEANT4_GLOBAL_LIBRARY_TARGET -# Build and install of a Geant4 category (global) library -# -macro(geant4_global_library_target) - cmake_parse_arguments(G4GLOBLIB - "" - "NAME" - "COMPONENTS" - ${ARGN} - ) - - # We loop over the component sources one at a time, - # appending properties as we go. - foreach(_comp ${G4GLOBLIB_COMPONENTS}) - include(${_comp}) - # In case we have a global lib with one component, ensure name gets set - if(NOT G4GLOBLIB_NAME) - set(G4GLOBLIB_NAME ${G4MODULENAME}) - endif() - - list(APPEND ${G4GLOBLIB_NAME}_GLOBAL_SOURCES ${${G4MODULENAME}_SOURCES}) - list(APPEND ${G4GLOBLIB_NAME}_GLOBAL_HEADERS ${${G4MODULENAME}_HEADERS}) - - list(APPEND ${G4GLOBLIB_NAME}_GLOBAL_DEPENDENCIES - ${${G4MODULENAME}_GLOBAL_DEPENDENCIES}) - - list(APPEND ${G4GLOBLIB_NAME}_LINK_LIBRARIES - ${${G4MODULENAME}_LINK_LIBRARIES}) - - list(APPEND ${G4GLOBLIB_NAME}_BUILDTREE_INCLUDES ${${G4MODULENAME}_INCDIR}) - endforeach() - - # Reset directory scope include dirs so we enforce usage requirements - set_directory_properties(PROPERTIES INCLUDE_DIRECTORIES "") - - # Filter out duplicates/self in GLOBAL_DEPENDENCIES and LINK_LIBRARIES - if(${G4GLOBLIB_NAME}_GLOBAL_DEPENDENCIES) - list(REMOVE_DUPLICATES ${G4GLOBLIB_NAME}_GLOBAL_DEPENDENCIES) - list(REMOVE_ITEM ${G4GLOBLIB_NAME}_GLOBAL_DEPENDENCIES ${G4GLOBLIB_NAME}) - endif() - if(${G4GLOBLIB_NAME}_LINK_LIBRARIES) - list(REMOVE_DUPLICATES ${G4GLOBLIB_NAME}_LINK_LIBRARIES) - endif() - - # Now add the library target - geant4_library_target(NAME ${G4GLOBLIB_NAME} - SOURCES - ${${G4GLOBLIB_NAME}_GLOBAL_SOURCES} - ${${G4GLOBLIB_NAME}_GLOBAL_HEADERS} - GEANT4_LINK_LIBRARIES - ${${G4GLOBLIB_NAME}_GLOBAL_DEPENDENCIES} - LINK_LIBRARIES - ${${G4GLOBLIB_NAME}_LINK_LIBRARIES}) - - # Header install? - install(FILES ${${G4GLOBLIB_NAME}_GLOBAL_HEADERS} - DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME} - COMPONENT Development) - - # Store the include path of the component. Only used so that - # other tools like GNUmake/pkg-config can be configured for the - # build tree - set_property(GLOBAL APPEND - PROPERTY GEANT4_BUILDTREE_INCLUDE_DIRS ${${G4GLOBLIB_NAME}_BUILDTREE_INCLUDES}) -endmacro() - diff --git a/cmake/Modules/G4InstallData.cmake b/cmake/Modules/G4InstallData.cmake index 7928c97875..263225bf2c 100644 --- a/cmake/Modules/G4InstallData.cmake +++ b/cmake/Modules/G4InstallData.cmake @@ -75,21 +75,6 @@ # If it is not installed, warn user that it will need installing # manually in destination. # -# -# Private API -# ----------- -# function _geant4_dataproject( -# PREFIX installdir -# SOURCE_DIR wheretounpack -# URL whattodownload -# URL_MD5 expectedMD5ofdownload -# TIMEOUT timeoutafter(seconds)) -# Download, unpack and install a dataset for CMake < 2.8.2 -# This largely replicates the functionality of ExternalProject -# so that CMake 2.6.4 can still be supported (It is also needed -# for CMake 2.8.{0,1} where ExternalProject does not provide MD5 -# validation. -# #----------------------------------------------------------------------- # GEANT4 PHYSICS DATA - GLOBAL CMAKE VARIABLES @@ -419,28 +404,17 @@ function(geant4_install_dataset _name _destination _timeout) # - Dispatch to ExternalProject or our own implementation. # Use of URL_MD5 *and* TIMEOUT require CMake 2.8.2 or higher. - if(${CMAKE_VERSION} VERSION_GREATER "2.8.1") - include(ExternalProject) - ExternalProject_Add(${_name} - PREFIX Externals/${_name}-${_ds_version} - SOURCE_DIR ${GEANT4_BUILD_FULL_DATADIR}/${_ds_dir} - URL ${_ds_url} - URL_MD5 ${_ds_md5sum} - TIMEOUT ${_timeout} - CONFIGURE_COMMAND "" - BUILD_COMMAND "" - INSTALL_COMMAND "" - ) - else() - _geant4_dataproject(${_name} - PREFIX Externals/${_name}-${_ds_version} - SOURCE_DIR ${GEANT4_BUILD_FULL_DATADIR} - URL ${_ds_url} - URL_MD5 ${_ds_md5sum} - TIMEOUT ${_timeout} - ) - endif() - + include(ExternalProject) + ExternalProject_Add(${_name} + PREFIX Externals/${_name}-${_ds_version} + SOURCE_DIR ${GEANT4_BUILD_FULL_DATADIR}/${_ds_dir} + URL ${_ds_url} + URL_MD5 ${_ds_md5sum} + TIMEOUT ${_timeout} + CONFIGURE_COMMAND "" + BUILD_COMMAND "" + INSTALL_COMMAND "" + ) # - Configure the dataset's build and install locations geant4_set_dataset_property(${_name} BUILD_DIR "${PROJECT_BINARY_DIR}/data/${_ds_dir}") geant4_set_dataset_property(${_name} INSTALL_DIR "${_destination}/${_ds_dir}") @@ -472,119 +446,6 @@ function(geant4_reuse_dataset _name _destination _ispresent) geant4_set_dataset_property(${_name} INSTALL_DIR "${_destination}/${_ds_dir}") endfunction() - -#----------------------------------------------------------------------- -# GEANT4 PHYSICS DATA - PRIVATE CMAKE API FOR DATASET HANDLING -#----------------------------------------------------------------------- -# function _geant4_dataproject( -# PREFIX installdir -# SOURCE_DIR wheretounpack -# URL whattodownload -# URL_MD5 expectedMD5ofdownload -# TIMEOUT timeoutafter(seconds)) -# Download, unpack and install a dataset for CMake < 2.8.2 -# This largely replicates the functionality of ExternalProject -# so that CMake 2.6.4 can still be supported (It is also needed -# for CMake 2.8.{0,1} where ExternalProject does not provide MD5 -# validation. -# -function(_geant4_dataproject _name) - # - Parse arguments and create any extra needed variables - set(oneValueArgs PREFIX SOURCE_DIR URL URL_MD5 TIMEOUT) - cmake_parse_arguments(_G4DATA "" "${oneValueArgs}" "" ${ARGN}) - get_filename_component(_G4DATA_FILE ${_G4DATA_URL} NAME) - - # - Write Download script - file(WRITE ${PROJECT_BINARY_DIR}/${_G4DATA_PREFIX}/${_name}-Download.cmake " - message(STATUS \"downloading ${_G4DATA_URL}...\") - file(DOWNLOAD - ${_G4DATA_URL} - \"${_G4DATA_PREFIX}/${_G4DATA_FILE}\" - TIMEOUT ${_G4DATA_TIMEOUT} - STATUS _status) - # LOG _log) - LOG with TIMEOUT fails due to curl issue, prefer TIMEOUT - list(GET _status 0 _status_code) - list(GET _status 1 _status_msg) - if(NOT _status_code EQUAL 0) - message(FATAL_ERROR \"error: downloading ${_G4DATA_URL} failed - status_code : \${_status_code} - status_msg : \${_status_msg} - #log : \${_log}\" - ) - endif() - ") - - # - Write Verify script - file(WRITE ${PROJECT_BINARY_DIR}/${_G4DATA_PREFIX}/${_name}-Verify.cmake " - message(STATUS \"verifying ${_G4DATA_FILE} ...\") - execute_process( - COMMAND \"${CMAKE_COMMAND}\" -E md5sum \"${PROJECT_BINARY_DIR}/${_G4DATA_PREFIX}/${_G4DATA_FILE}\" - OUTPUT_VARIABLE ov - OUTPUT_STRIP_TRAILING_WHITESPACE - RESULT_VARIABLE _result_code - ) - if(NOT _result_code EQUAL 0) - message(FATAL_ERROR \"error: computing md5sum of ${_G4DATA_FILE} failed\") - endif() - string(REGEX MATCH \"^([0-9A-Fa-f]+)\" md5_actual \"\${ov}\") - string(TOLOWER \"\${md5_actual}\" md5_actual) - string(TOLOWER \"${_G4DATA_URL_MD5}\" md5) - if(NOT \"\${md5}\" STREQUAL \"\${md5_actual}\") - message(FATAL_ERROR \"error: md5sum of '${_G4DATA_FILE}' does not match expected value - md5_expected: \${md5} - md5_actual: \${md5_actual} -\") - endif() - message(STATUS \"verifying ${_G4DATA_FILE} ... done\") - ") - - # - Write Unpack script - if(${_G4DATA_FILE} MATCHES "(\\.|=)(tar\\.gz|zip)$") - else() - message(FATAL_ERROR "error: do not know how to extract '${_G4DATA_FILE}' -- file needs to be .tar.gz or zip") - endif() - file(WRITE ${PROJECT_BINARY_DIR}/${_G4DATA_PREFIX}/${_name}-Unpack.cmake " - message(STATUS \"unpacking ${_G4DATA_FILE} ...\") - file(MAKE_DIRECTORY ${_G4DATA_SOURCE_DIR}) - execute_process(COMMAND - \${CMAKE_COMMAND} -E tar xfz \"${PROJECT_BINARY_DIR}/${_G4DATA_PREFIX}/${_G4DATA_FILE}\" - WORKING_DIRECTORY ${_G4DATA_SOURCE_DIR} - RESULT_VARIABLE rv) - if(NOT rv EQUAL 0) - message(STATUS \"extracting... [error clean up]\") - file(REMOVE_RECURSE \"${_G4DATA_SOURCE_DIR}\") - message(FATAL_ERROR \"error: extract of '${_G4DATA_FILE}' failed\") - endif() - message(STATUS \"unpacking ${_G4DATA_FILE} ... done\") - ") - - # - Add custom commands for each step, each depending on the last - foreach(_step Download Verify Unpack) - if(_last_step) - set(_deps DEPENDS ${PROJECT_BINARY_DIR}/${_G4DATA_PREFIX}/${_name}-${_last_step}.stamp) - endif() - - add_custom_command( - OUTPUT ${PROJECT_BINARY_DIR}/${_G4DATA_PREFIX}/${_name}-${_step}.stamp - COMMENT "${_step} ${_name}" - COMMAND "${CMAKE_COMMAND}" -P ${PROJECT_BINARY_DIR}/${_G4DATA_PREFIX}/${_name}-${_step}.cmake - COMMAND "${CMAKE_COMMAND}" -E touch ${PROJECT_BINARY_DIR}/${_G4DATA_PREFIX}/${_name}-${_step}.stamp - VERBATIM - ${_deps} - ) - - set(_last_step ${_step}) - endforeach() - - # - Add the main target which will run all the above steps - add_custom_target(${_name} ALL - COMMENT "Completed ${_name}" - DEPENDS ${PROJECT_BINARY_DIR}/${_G4DATA_PREFIX}/${_name}-${_last_step}.stamp - VERBATIM - ) -endfunction() - - #----------------------------------------------------------------------- # GEANT4 PHYSICS DATA - USER INTERFACE AND PROCESSING #----------------------------------------------------------------------- diff --git a/cmake/Modules/G4InterfaceOptions.cmake b/cmake/Modules/G4InterfaceOptions.cmake index 93a4517250..d21c350096 100644 --- a/cmake/Modules/G4InterfaceOptions.cmake +++ b/cmake/Modules/G4InterfaceOptions.cmake @@ -35,65 +35,108 @@ # Specific UI/Vis options are also handled here. # +#----------------------------------------------------------------------- +# Select options first because these are interdependent +# +# - Coin3D/So{XT,Win,Qt} +option(GEANT4_USE_INVENTOR "Build Geant4 OpenInventor Xt/Win Visualization Driver" OFF) +geant4_add_feature(GEANT4_USE_INVENTOR "Build OpenInventor Xt/Win Driver") + +option(GEANT4_USE_INVENTOR_QT "Build Geant4 OpenInventor Qt Visualization Driver" OFF) +geant4_add_feature(GEANT4_USE_INVENTOR_QT "Build OpenInventor Qt Driver") + +# GEANT4_USE_INVENTOR is a dual-purpose variable - it marks use of Xt/Win driver for +# user, and marks enablement of G4OpenInventor internally. Check that user-set options +# are consistent before setting *internal* value +if(GEANT4_USE_INVENTOR AND GEANT4_USE_INVENTOR_QT) + message(FATAL_ERROR "Only one of GEANT4_USE_INVENTOR and GEANT4_USE_INVENTOR_QT can be set ON, but both are ON.") +endif() + +# User settings o.k., so mark that we're enabling G4OpenInventor +if(GEANT4_USE_INVENTOR_QT) + set(GEANT4_USE_INVENTOR ON) +endif() + +# - Qt (may be required by Coin driver) +option(GEANT4_USE_QT "Build Geant4 with Qt support" OFF) +if(GEANT4_USE_INVENTOR_QT AND NOT GEANT4_USE_QT) + set(GEANT4_USE_QT ON CACHE BOOL "Build Geant4 with Qt support" FORCE) + message(STATUS "Forcing GEANT4_USE_QT to ON, required by GEANT4_USE_INVENTOR_QT") +endif() + +geant4_add_feature(GEANT4_USE_QT "Build Geant4 with Qt support") + +# - Unix only +if(UNIX) + # - Client/Server DAWN driver + # mark as advanced because user should know what they're doing here + option(GEANT4_USE_NETWORKDAWN "Build Dawn driver with Client/Server support" OFF) + geant4_add_feature(GEANT4_USE_NETWORKDAWN "Build Dawn driver with Client/Server support") + mark_as_advanced(GEANT4_USE_NETWORKDAWN) + + # - Client/Server VRML driver + option(GEANT4_USE_NETWORKVRML "Build VRML driver with Client/Server support" OFF) + geant4_add_feature(GEANT4_USE_NETWORKVRML "Build VRML driver with Client/Server support") + mark_as_advanced(GEANT4_USE_NETWORKVRML) + + # - Motif UI/Vis (may be required by Coin Vis driver) + option(GEANT4_USE_XM "Build Geant4 with Motif (X11) support" OFF) + if(GEANT4_USE_INVENTOR AND NOT GEANT4_USE_INVENTOR_QT AND NOT GEANT4_USE_XM) + set(GEANT4_USE_XM ON CACHE BOOL "Build Geant4 with Motif (X11) support" FORCE) + message(STATUS "Forcing GEANT4_USE_XM to ON, required by GEANT4_USE_INVENTOR") + endif() + + geant4_add_feature(GEANT4_USE_XM "Build Geant4 with Xm Support") + + # OpenGL/X11 Vis Driver + option(GEANT4_USE_OPENGL_X11 "Build Geant4 OpenGL driver with X11 support" OFF) + geant4_add_feature(GEANT4_USE_OPENGL_X11 "Build Geant4 OpenGL driver with X11 support") + + # RayTracer driver with X11 support + option(GEANT4_USE_RAYTRACER_X11 "Build RayTracer driver with X11 support" OFF) + geant4_add_feature(GEANT4_USE_RAYTRACER_X11 "Build RayTracer driver with X11 support") +endif() + +# Windows only +if(WIN32) + option(GEANT4_USE_OPENGL_WIN32 "Build OpenGL driver with Win32 support") + geant4_add_feature(GEANT4_USE_OPENGL_WIN32 "Build OpenGL driver with Win32 support") +endif() + +#----------------------------------------------------------------------- +# Find dependencies +# # Prefer Legacy GL when using CMake >= 3.10 set(OpenGL_GL_PREFERENCE "LEGACY") -#----------------------------------------------------------------------- -# Configure OpenInventor support -# -option(GEANT4_USE_INVENTOR "Build Geant4 OpenInventor Visualization Driver" OFF) -option(GEANT4_USE_INVENTOR_QT "Build Geant4 OpenInventor Qt Visualization Driver" OFF) - -if(GEANT4_USE_INVENTOR_QT) - set(GEANT4_USE_INVENTOR ON) - set(GEANT4_USE_QT ON) -endif() - +# - Coin plus So{Xt,Qt,Win} if(GEANT4_USE_INVENTOR) - # Always need Inventor and OpenGL - find_package(Inventor REQUIRED) - find_package(OpenGL REQUIRED) + find_package(Coin 4.0.0 REQUIRED) + geant4_save_package_variables(Inventor Coin_DIR) - # On UNIX, we also require Xm and X11 (inc. Xpm)... - if(UNIX) - if (GEANT4_USE_INVENTOR_QT) - if (NOT INVENTOR_SOQT_LIBRARY OR NOT INVENTOR_SOQT_INCLUDE_DIR) - message(FATAL_ERROR "Could not find SoQt library and/or headers") - endif() - set(INVENTOR_INCLUDE_DIR "${INVENTOR_INCLUDE_DIR}" "${INVENTOR_SOQT_INCLUDE_DIR}") - else() - if(NOT INVENTOR_SOXT_LIBRARY OR NOT INVENTOR_SOXT_INCLUDE_DIR) - message(FATAL_ERROR "Could not find SoXt library and/or headers") - endif() - set(INVENTOR_INCLUDE_DIR "${INVENTOR_INCLUDE_DIR}" "${INVENTOR_SOXT_INCLUDE_DIR}") - set(GEANT4_USE_XM ON) - find_package(Motif REQUIRED) - endif() - - find_package(X11 REQUIRED) - - if(NOT X11_Xpm_FOUND) - message(FATAL_ERROR "Could not find X11 Xpm headers and/or library (Required by GEANT4_USE_INVENTOR)") + if(GEANT4_USE_INVENTOR_QT) + find_package(SoQt 1.6.0 REQUIRED) + geant4_save_package_variables(Inventor SoQt_DIR) + else() + if(UNIX) + find_package(SoXt 1.4.0 REQUIRED) + geant4_save_package_variables(Inventor SoXt_DIR) + set(GEANT4_USE_INVENTOR_XT ON) + elseif(WIN32) + find_package(SoWin 1.4.0 REQUIRED) + geant4_save_package_variables(Inventor SoWin_DIR) + set(GEANT4_USE_INVENTOR_WIN ON) endif() endif() - - geant4_add_feature(GEANT4_USE_INVENTOR "Build OpenInventor Driver") endif() - -#----------------------------------------------------------------------- -# Configure Qt Support if needed (CROSSPLATFORM). -# -option(GEANT4_USE_QT "Build Geant4 with Qt support" OFF) - +# - Qt5 if(GEANT4_USE_QT) - # Find and configure Qt and OpenGL find_package(Qt5Core REQUIRED) find_package(Qt5Gui REQUIRED) find_package(Qt5Widgets REQUIRED) find_package(Qt5OpenGL REQUIRED) find_package(Qt5PrintSupport REQUIRED) - set(QT_QTCORE_LIBRARY Qt5::Core Qt5::PrintSupport) set(QT_QTGUI_LIBRARY Qt5::Gui Qt5::Widgets) set(QT_OPENGL_LIBRARY Qt5::Gui Qt5::OpenGL) @@ -101,90 +144,72 @@ if(GEANT4_USE_QT) get_target_property(QT_QMAKE_EXECUTABLE ${Qt5Core_QMAKE_EXECUTABLE} IMPORTED_LOCATION) geant4_save_package_variables(Qt5 Qt5Core_DIR Qt5Gui_DIR Qt5Widgets_DIR Qt5OpenGL_DIR Qt5PrintSupport_DIR) - find_package(OpenGL REQUIRED) - geant4_save_package_variables(OpenGL OPENGL_INCLUDE_DIR OPENGL_gl_LIBRARY) + # Qt3D is only supported on 5.15 and above, but always on if available + set(QT3D_MINIMUM_VERSION 5.15.0) + set(GEANT4_USE_QT3D OFF) + if(Qt5Core_VERSION GREATER_EQUAL QT3D_MINIMUM_VERSION) + find_package(Qt53DCore ${QT3D_MINIMUM_VERSION} QUIET) + find_package(Qt53DExtras ${QT3D_MINIMUM_VERSION} QUIET) + find_package(Qt53DRender ${QT3D_MINIMUM_VERSION} QUIET) + + if(Qt53DCore_FOUND AND Qt53DExtras_FOUND AND Qt53DRender_FOUND) + set(GEANT4_USE_QT3D ON) + geant4_save_package_variables(Qt5 Qt53DCore_DIR Qt53DExtras_DIR Qt53DRender_DIR) + geant4_add_feature(GEANT4_USE_QT3D "Build Geant4 Qt3D driver") + else() + set(_g4_qt53d_missing) + if(NOT Qt53DCore_FOUND) + list(APPEND _g4_qt53d_missing "Qt53DCore") + endif() + if(NOT Qt53DExtras_FOUND) + list(APPEND _g4_qt53d_missing "Qt53DExtras") + endif() + if(NOT Qt53DRender_FOUND) + list(APPEND _g4_qt53d_missing "Qt53DRender") + endif() + + message(STATUS "Disabling Geant4 Qt3D driver, missing Qt5 packages: ${_g4_qt53d_missing}") + endif() + endif() # Variables for export to GNUmake execute_process(COMMAND ${QT_QMAKE_EXECUTABLE} -query QT_INSTALL_PREFIX OUTPUT_VARIABLE G4QTHOME OUTPUT_STRIP_TRAILING_WHITESPACE) execute_process(COMMAND ${QT_QMAKE_EXECUTABLE} -query QT_INSTALL_LIBS OUTPUT_VARIABLE G4QTLIBPATH OUTPUT_STRIP_TRAILING_WHITESPACE) +endif() - # OpenGL part of Qt is in OpenGL component so mark the need to - # add OpenGL. +# - OpenGL +if(GEANT4_USE_INVENTOR + OR GEANT4_USE_QT + OR GEANT4_USE_OPENGL_X11 + OR GEANT4_USE_XM + OR GEANT4_USE_OPENGL_WIN32) + find_package(OpenGL REQUIRED) + geant4_save_package_variables(OpenGL OPENGL_INCLUDE_DIR OPENGL_gl_LIBRARY) + + # X11 drivers on macOS need XQuartzGL + if(APPLE AND (GEANT4_USE_INVENTOR_XT OR GEANT4_USE_OPENGL_X11 OR GEANT4_USE_XM)) + find_package(XQuartzGL REQUIRED) + geant4_save_package_variables(XQuartzGL XQuartzGL_INCLUDE_DIR XQuartzGL_gl_LIBRARY) + endif() + + # Enable driver set(GEANT4_USE_OPENGL ON) - geant4_add_feature(GEANT4_USE_QT "Build Geant4 with Qt support") endif() -#----------------------------------------------------------------------- -# Configure Wt Support -# -if(GEANT4_USE_WT) - message(WARNING "Support for Wt in Geant4 is no longer available and may be removed in future releases") -endif() -set(GEANT4_USE_WT OFF) - -#option(GEANT4_USE_WT "Build Geant4 with Wt4 support" OFF) -#mark_as_advanced(GEANT4_USE_WT) -# -#if(GEANT4_USE_WT) -# # Find and configure Wt and OpenGL -# find_package(Wt REQUIRED) -# find_package(OpenGL REQUIRED) -# -# geant4_save_package_variables(Wt Wt_INCLUDE_DIR Wt_LIBRARY_RELEASE Wt_LIBRARY_DEBUG Wt_HTTP_LIBRARY_RELEASE Wt_HTTP_LIBRARY_DEBUG) -# geant4_save_package_variables(OpenGL OPENGL_INCLUDE_DIR OPENGL_gl_LIBRARY) -# -# set(WT_DEFINITIONS "-DQT_NO_KEYWORDS") -# -# # WebGL part of Wt is in OpenGL component so mark the need to -# # add OpenGL. -# set(GEANT4_USE_OPENGL ON) -# geant4_add_feature(GEANT4_USE_WT "Build Geant4 with Wt support") -#endif() - - -#----------------------------------------------------------------------- -# UNIX PLATFORMS ONLY -#----------------------------------------------------------------------- if(UNIX) - # - Support for Client/Server DAWN driver - # mark as advanced because user should know what they're doing here - option(GEANT4_USE_NETWORKDAWN "Build Dawn driver with Client/Server support" OFF) - # - # Possible headers checks for needed network parts? - # - geant4_add_feature(GEANT4_USE_NETWORKDAWN "Build Dawn driver with Client/Server support") - mark_as_advanced(GEANT4_USE_NETWORKDAWN) - - # - Support for Client/Server VRML driver - # mark as advanced because user should know what they're doing to use this - option(GEANT4_USE_NETWORKVRML "Build VRML driver with Client/Server support" OFF) - geant4_add_feature(GEANT4_USE_NETWORKVRML "Build VRML driver with Client/Server support") - mark_as_advanced(GEANT4_USE_NETWORKVRML) - - # - Configure Xm support if requested - option(GEANT4_USE_XM "Build Geant4 with Motif (X11) support" OFF) - - # - Configure OpenGL X11 support if requested - option(GEANT4_USE_OPENGL_X11 "Build Geant4 OpenGL driver with X11 support" OFF) - - # - X11 Support for RayTracer driver - option(GEANT4_USE_RAYTRACER_X11 "Build RayTracer driver with X11 support" OFF) - - # -- Now configure needed X11, Motif and OpenGL packages - # We also have to be concerned with Inventor on UNIX, because - # that also needs the Xt configuration... # - X11 - if(GEANT4_USE_XM OR GEANT4_USE_OPENGL_X11 OR GEANT4_USE_RAYTRACER_X11 OR GEANT4_USE_INVENTOR) + if(GEANT4_USE_OPENGL_X11 + OR GEANT4_USE_RAYTRACER_X11 + OR GEANT4_USE_XM + OR GEANT4_USE_INVENTOR_XT) find_package(X11 REQUIRED) include("${CMAKE_CURRENT_LIST_DIR}/G4X11Shim.cmake") # Check for additional required X11 libraries - # - Xmu if(NOT X11_Xmu_FOUND) message(FATAL_ERROR "could not find X11 Xmu library and/or headers") endif() - # - Xt if(NOT X11_Xt_FOUND) message(FATAL_ERROR "could not find X11 Xt library and/or headers") endif() @@ -201,60 +226,14 @@ if(UNIX) X11_Xmu_INCLUDE_PATH X11_Xmu_LIB X11_Xt_INCLUDE_PATH - X11_Xt_LIB - ) - - # - If we got to this point, RayTracer is o.k., so add the feature - geant4_add_feature(GEANT4_USE_RAYTRACER_X11 "Build RayTracer driver with X11 support") + X11_Xt_LIB) endif() - #- OpenGL : we also do this for Inventor so that we pick up Mac X11 GL... - if(GEANT4_USE_INVENTOR OR GEANT4_USE_XM OR GEANT4_USE_OPENGL_X11) - # - Find native GL first - find_package(OpenGL REQUIRED) - geant4_save_package_variables(OpenGL OPENGL_INCLUDE_DIR OPENGL_gl_LIBRARY) - - # - If we're on Apple, also find the XQuartz GL libraries and append t. - if(APPLE) - find_package(XQuartzGL REQUIRED) - geant4_save_package_variables(XQuartzGL XQuartzGL_INCLUDE_DIR XQuartzGL_gl_LIBRARY) - endif() - - # Add feature for X11 GL - geant4_add_feature(GEANT4_USE_OPENGL_X11 "Build Geant4 OpenGL driver with X11 support") - endif() - - # - Add need for OpenGL in X11 case - if(GEANT4_USE_OPENGL_X11 OR GEANT4_USE_XM) - set(GEANT4_USE_OPENGL ON) - endif() - - # - Motif last of all, then can add the feature + # - Motif if(GEANT4_USE_XM) find_package(Motif REQUIRED) include("${CMAKE_CURRENT_LIST_DIR}/G4MotifShim.cmake") geant4_save_package_variables(Motif MOTIF_INCLUDE_DIR MOTIF_LIBRARIES) - geant4_add_feature(GEANT4_USE_XM "Build Geant4 with Xm Support") endif() endif() -#----------------------------------------------------------------------- -# WINDOWS PLATFORMS ONLY -#----------------------------------------------------------------------- -if(WIN32) - # - OpenGL Win32... - option(GEANT4_USE_OPENGL_WIN32 "Build OpenGL driver with Win32 support") - - if(GEANT4_USE_OPENGL_WIN32) - # Just need OpenGL and on Windows, this should be easy... - find_package(OpenGL REQUIRED) - - # This is part of the G4OpenGL component, so mark it as needed - set(GEANT4_USE_OPENGL ON) - geant4_add_feature(GEANT4_USE_OPENGL_WIN32 "Build OpenGL driver with Win32 support") - geant4_save_package_variables(OpenGL OPENGL_INCLUDE_DIR OPENGL_gl_LIBRARY) - endif() -endif() - -# - and we're done... - diff --git a/cmake/Modules/G4OptionalComponents.cmake b/cmake/Modules/G4OptionalComponents.cmake index 754fe77bfb..a1ab44bbbc 100644 --- a/cmake/Modules/G4OptionalComponents.cmake +++ b/cmake/Modules/G4OptionalComponents.cmake @@ -61,7 +61,7 @@ if(GEANT4_USE_SYSTEM_CLHEP) set(__system_clhep_mode " (granular)") endif() - find_package(CLHEP 2.3.3.0 REQUIRED ${__g4_clhep_components} CONFIG) + find_package(CLHEP 2.4.4.0 REQUIRED ${__g4_clhep_components} CONFIG) geant4_save_package_variables(CLHEP CLHEP_DIR) else() @@ -185,7 +185,7 @@ else() set(GEANT4_USE_BUILTIN_PTL TRUE) set(PTL_LIBRARIES G4ptl) endif() - +mark_as_advanced(GEANT4_USE_SYSTEM_PTL) geant4_add_feature(GEANT4_USE_SYSTEM_PTL "Using system PTL library") #----------------------------------------------------------------------- @@ -237,12 +237,20 @@ option(GEANT4_USE_TIMEMORY "Build Geant4 with TiMemory support" ${_default_use_t mark_as_advanced(GEANT4_USE_TIMEMORY) if(GEANT4_USE_TIMEMORY) - set(_G4timemory_DEFAULT_COMPONENTS headers caliper papi gotcha gperftools-cpu vector) + # by default just use the library which will import all the components that it + # was built with but once can add more + if(BUILD_SHARED_LIBS) + set(_G4timemory_DEFAULT_COMPONENTS cxx shared OPTIONAL_COMPONENTS) + else() + set(_G4timemory_DEFAULT_COMPONENTS cxx static OPTIONAL_COMPONENTS) + endif() set(G4timemory_COMPONENTS "${_G4timemory_DEFAULT_COMPONENTS}" CACHE STRING "timemory INTERFACE libraries that activate various capabilities in toolkit") - set(G4timemory_VERSION 3.0) + set(G4timemory_VERSION 3.2) set(timemory_FIND_COMPONENTS_INTERFACE geant4-timemory) + add_library(geant4-timemory INTERFACE) find_package(timemory ${G4timemory_VERSION} REQUIRED COMPONENTS ${G4timemory_COMPONENTS}) + install(TARGETS geant4-timemory EXPORT Geant4LibraryDepends) set(timemory_LIBRARIES geant4-timemory) geant4_save_package_variables(timemory timemory_DIR) endif() @@ -325,8 +333,7 @@ endif() # - Geant4 USolids/VecGom setup if(GEANT4_USE_ALL_USOLIDS OR GEANT4_USE_PARTIAL_USOLIDS) - # VecGeom's config file doesn't support versioning... - find_package(VecGeom REQUIRED) + find_package(VecGeom 1.1.8 REQUIRED) # Shim until VecGeom supports config mode properly include("${CMAKE_CURRENT_LIST_DIR}/G4VecGeomShim.cmake") # Backward Compatibility diff --git a/cmake/Modules/Geant4MacroDefineModule.cmake b/cmake/Modules/Geant4MacroDefineModule.cmake deleted file mode 100644 index 5780d0e8ea..0000000000 --- a/cmake/Modules/Geant4MacroDefineModule.cmake +++ /dev/null @@ -1,12 +0,0 @@ -# - Macros for organizing and specializing code in Geant4 modules -# - DEPRECATED: Functionality merged into G4DeveloperAPI/_OLD -# Retained as many modules still include it -# Simply forward to new module -# - Include guard -if(__GEANT4MACRODEFINEMODULE_INCLUDED) - return() -endif() -set(__GEANT4MACRODEFINEMODULE_INCLUDED YES) - -include(G4DeveloperAPI) - diff --git a/cmake/Modules/Geant4MacroLibraryTargets.cmake b/cmake/Modules/Geant4MacroLibraryTargets.cmake index 01d20afb72..7500e5a3d5 100644 --- a/cmake/Modules/Geant4MacroLibraryTargets.cmake +++ b/cmake/Modules/Geant4MacroLibraryTargets.cmake @@ -1,12 +1,3 @@ # - Define useful macros for building and installing Geant4 library targets # - DEPRECATED: Functionality merged into G4DeveloperAPI/_OLD -# Retained as many modules still include it -# Simply forward to new module -# - Include Guard -if(__GEANT4MACROLIBRARYTARGETS_INCLUDED) - return() -endif() -set(__GEANT4MACROLIBRARYTARGETS_INCLUDED TRUE) - -include(G4DeveloperAPI) - +# Retained as a no-op as many modules still include it diff --git a/cmake/Templates/Geant4Config.cmake.in b/cmake/Templates/Geant4Config.cmake.in index ed6d4444b1..edeaa3b62e 100644 --- a/cmake/Templates/Geant4Config.cmake.in +++ b/cmake/Templates/Geant4Config.cmake.in @@ -67,6 +67,8 @@ # # smartstack (G4event library G4StackManager uses G4SmartTrackStack) # +# php_as_hp (G4processes library ParticleHP built as HP) +# # Optional Components # ------------------- # gdml (GDML support) @@ -143,13 +145,6 @@ # #----------------------------------------------------------------------- -# Support CMake >= 3.8 -cmake_policy(VERSION 3.8) -if(CMAKE_VERSION VERSION_LESS 3.8) - message(FATAL_ERROR "Geant4Config requires CMake 3.8 or newer") -endif() -include(CMakeFindDependencyMacro) - #----------------------------------------------------------------------- # DEBUG : print out the variables passed via find_package arguments # @@ -166,6 +161,23 @@ if(Geant4_CONFIG_DEBUG) message(STATUS "G4CFG_DEBUG : Geant4_LIBDEPS_LOADED = ${Geant4_LIBDEPS_LOADED}") endif() +#----------------------------------------------------------------------- +# Check that consumers use the minimum needed CMake version +# Geant4 uses cxx_std_EP to define the standard it was built against +# 3.8 and above support EP=11,14,17. 3.12 and above add 20. We continue +# to support the earlier version whilst checking for consumers using 20 +cmake_policy(VERSION 3.8...3.18) +if(CMAKE_VERSION VERSION_LESS 3.8) + message(FATAL_ERROR "Projects consuming Geant4Config require CMake 3.8 or newer") +endif() + +if(("@GEANT4_BUILD_CXXSTD@" GREATER_EQUAL 20) AND (CMAKE_VERSION VERSION_LESS 3.12)) + message(FATAL_ERROR "Projects consuming Geant4Config require CMake 3.12 or newer") +endif() + +# - Help find dependencies +include(CMakeFindDependencyMacro) + #----------------------------------------------------------------------- # Locate ourselves, since all other config files should have been # installed alongside us... @@ -298,6 +310,9 @@ endif() # - Smart track stack set(Geant4_smartstack_FOUND @GEANT4_USE_SMARTSTACK@) +# - ParticleHP as HP +set(Geant4_php_as_hp_FOUND @GEANT4_BUILD_PHP_AS_HP@) + # - TBB set(Geant4_TBB_FOUND @GEANT4_USE_TBB@) if(Geant4_TBB_FOUND) @@ -309,8 +324,12 @@ set(Geant4_timemory_FOUND @GEANT4_USE_TIMEMORY@) if(Geant4_timemory_FOUND) set(_geant4_use_timemory_library ON) set(timemory_DIR "@timemory_DIR@" CACHE PATH "timemory installation for Geant4") - set(timemory_FIND_COMPONENTS_INTERFACE @timemory_FIND_COMPONENTS_INTERFACE@) - find_package(timemory @G4timemory_VERSION@ REQUIRED QUIET COMPONENTS @G4timemory_COMPONENTS@) + if(NOT TARGET @timemory_FIND_COMPONENTS_INTERFACE@) + add_library(@timemory_FIND_COMPONENTS_INTERFACE@ INTERFACE IMPORTED) + set(timemory_FIND_COMPONENTS_INTERFACE @timemory_FIND_COMPONENTS_INTERFACE@) + find_package(timemory @G4timemory_VERSION@ REQUIRED QUIET + COMPONENTS @G4timemory_COMPONENTS@) + endif() set(timemory_LIBRARIES @timemory_FIND_COMPONENTS_INTERFACE@) endif() @@ -415,6 +434,7 @@ endif() # - Qt (UI and Vis!) set(Geant4_qt_FOUND @GEANT4_USE_QT@) +set(Geant4_qt3d_FOUND @GEANT4_USE_QT3D@) if(Geant4_qt_FOUND) # Must always refind Qt5 to recreate imported targets. Because these # are in the public interface, always need linking. @@ -424,10 +444,19 @@ if(Geant4_qt_FOUND) find_dependency(Qt5OpenGL REQUIRED) find_dependency(Qt5PrintSupport REQUIRED) + if(Geant4_qt3d_FOUND) + find_dependency(Qt53DCore @QT3D_MINIMUM_VERSION@ REQUIRED) + find_dependency(Qt53DExtras @QT3D_MINIMUM_VERSION@ REQUIRED) + find_dependency(Qt53DRender @QT3D_MINIMUM_VERSION@ REQUIRED) + endif() + # Also require OpenGL find_dependency(OpenGL) - if(("qt" IN_LIST Geant4_FIND_COMPONENTS) OR Geant4_ui_all_FOUND OR Geant4_vis_all_FOUND) + # Qt must be activated both directly and for OpenInventor + if(("qt" IN_LIST Geant4_FIND_COMPONENTS) + OR ("vis_openinventor" IN_LIST Geant4_FIND_COMPONENTS) + OR Geant4_ui_all_FOUND OR Geant4_vis_all_FOUND) list(APPEND Geant4_DEFINITIONS -DG4INTY_USE_QT @@ -435,25 +464,11 @@ if(Geant4_qt_FOUND) -DG4VIS_USE_OPENGLQT ) set(_geant4_use_opengl_library ON) + # Qt3D is always on if available + set(_geant4_use_qt3D_library ${Geant4_qt3d_FOUND}) endif() endif() -# - Wt (UI and Vis!) -#set(Geant4_wt_FOUND @GEANT4_USE_WT@) -#if(Geant4_wt_FOUND) -# find_dependency(Wt) -# find_dependency(OpenGL) -# if(("wt" IN_LIST Geant4_FIND_COMPONENTS) OR Geant4_ui_all_FOUND OR Geant4_vis_all_FOUND) -# list(APPEND -# Geant4_DEFINITIONS -# -DG4INTY_USE_WT -# -DG4UI_USE_WT -# -DG4VIS_USE_OPENGLWT -# ) -# set(_geant4_use_opengl_library ON) -# endif() -#endif() - # - Motif (UI and Vis!) set(Geant4_motif_FOUND @GEANT4_USE_XM@) if(Geant4_motif_FOUND) @@ -461,12 +476,16 @@ if(Geant4_motif_FOUND) include("${CMAKE_CURRENT_LIST_DIR}/G4X11Shim.cmake") find_dependency(Motif) include("${CMAKE_CURRENT_LIST_DIR}/G4MotifShim.cmake") - find_dependency(OpenGL) if(APPLE) find_dependency(XQuartzGL) + else() + find_dependency(OpenGL) endif() - if(("motif" IN_LIST Geant4_FIND_COMPONENTS) OR Geant4_ui_all_FOUND OR Geant4_vis_all_FOUND) + # Motif can be activated both directly and for OpenInventor + if(("motif" IN_LIST Geant4_FIND_COMPONENTS) + OR ("vis_openinventor" IN_LIST Geant4_FIND_COMPONENTS) + OR Geant4_ui_all_FOUND OR Geant4_vis_all_FOUND) list(APPEND Geant4_DEFINITIONS -DG4INTY_USE_XT @@ -482,9 +501,10 @@ set(Geant4_vis_opengl_x11_FOUND @GEANT4_USE_OPENGL_X11@) if(Geant4_vis_opengl_x11_FOUND) find_dependency(X11) include("${CMAKE_CURRENT_LIST_DIR}/G4X11Shim.cmake") - find_dependency(OpenGL) if(APPLE) find_dependency(XQuartzGL) + else() + find_dependency(OpenGL) endif() if(("vis_opengl_x11" IN_LIST Geant4_FIND_COMPONENTS) OR Geant4_vis_all_FOUND) @@ -515,26 +535,31 @@ endif() set(Geant4_vis_openinventor_FOUND @GEANT4_USE_INVENTOR@) set(Geant4_vis_openinventor_qt_FOUND @GEANT4_USE_INVENTOR_QT@) if(Geant4_vis_openinventor_FOUND) + find_dependency(Coin) + + if(Geant4_vis_openinventor_qt_FOUND) + # Qt dependency handled by Geant4_vis_qt_FOUND earlier, + # always ON if Inventor_QT is + find_dependency(SoQt) + else() + if(WIN32) + find_dependency(SoWin) + else() + # Motif/X11/GL dependency handled by Geant4_motif_FOUND earlier, + # always ON if Inventor/Xt is. + find_dependency(SoXt) + endif() + endif() + if(("vis_openinventor" IN_LIST Geant4_FIND_COMPONENTS) OR Geant4_vis_all_FOUND) - if(UNIX AND NOT WIN32) - if(Geant4_vis_openinventor_qt_FOUND) - list(APPEND Geant4_DEFINITIONS - -DG4VIS_USE_OI - -DG4VIS_USE_OIQT - ) + if(Geant4_vis_openinventor_qt_FOUND) + list(APPEND Geant4_DEFINITIONS -DG4VIS_USE_OI -DG4VIS_USE_OIQT) + else() + if(WIN32) + list(APPEND Geant4_DEFINITIONS -G4INTY_USE_WIN32 -DG4VIS_USE_OI -DG4VIS_USE_OIWIN32) else() - list(APPEND Geant4_DEFINITIONS - -DG4INTY_USE_XT - -DG4VIS_USE_OI - -DG4VIS_USE_OIX - ) + list(APPEND Geant4_DEFINITIONS -DG4INTY_USE_XT -DG4VIS_USE_OI -DG4VIS_USE_OIX) endif() - elseif(WIN32) - list(APPEND Geant4_DEFINITIONS - -G4INTY_USE_WIN32 - -DG4VIS_USE_OI - -DG4VIS_USE_OIWIN32 - ) endif() set(_geant4_use_inventor_library ON) @@ -601,6 +626,14 @@ if(_geant4_use_opengl_library) list(APPEND Geant4_DEFINITIONS -DG4VIS_USE_OPENGL) endif() +# - Qt3D if it's requested. +if(_geant4_use_qt3D_library) + list(APPEND _geant4_internal_libraries + Geant4::G4visQt3D${_geant4_lib_use_suffix} + ) + list(APPEND Geant4_DEFINITIONS -DG4VIS_USE_QT3D) +endif() + # - G4OpenInventor if it's requested. if(_geant4_use_inventor_library) list(APPEND _geant4_internal_libraries diff --git a/cmake/Templates/geant4-config.in b/cmake/Templates/geant4-config.in index 45502b0db1..7716e7ad50 100644 --- a/cmake/Templates/geant4-config.in +++ b/cmake/Templates/geant4-config.in @@ -8,7 +8,7 @@ #----------------------------------------------------------------------- # Determine location of this script. # NB, we don't always use the result of this calculation, but it does not -# hurt to do it. Only possible error is if too long a chain of symbolic +# hurt to do it. Only possible error is if too long a chain of symbolic # links are used to point to the physical script. # # Resolve symbolic links to script - we should end up with a physical file @@ -32,8 +32,8 @@ while [ "x`readlink $script`" != "x" ] ; do fi done -# If we still have a relative path, then it must be relative to the -# calling dir. NB we don't attempt to resolve directory symbolic +# If we still have a relative path, then it must be relative to the +# calling dir. NB we don't attempt to resolve directory symbolic # links or remove '.' or '..' if [ ${script##/} = ${script##~} ] ; then script="$calldir/$script" @@ -102,6 +102,10 @@ if test "x${have_smartstack}" = "xyes" ; then cflags="-DG4_USESMARTSTACK ${cflags}" fi +# - ParticleHP was built as HP. Pure feature +have_php_as_hp="@G4_BUILTWITH_PHP_AS_HP@" +feature_list="${feature_list} php_as_hp[${have_php_as_hp}]" + # - Includes and Libs for g4incdir in ${includedirs} ; do cflags="${cflags} -I${g4incdir}" @@ -200,6 +204,12 @@ if test "x${have_qt}" = "xyes" ; then vis_cflags="${vis_cflags} \ -DG4INTY_USE_QT -DG4UI_USE_QT -DG4VIS_USE_OPENGLQT @G4_QT_CFLAGS@" +if test "x${qt_version}" \< "5.15.0" ; then + vis_libs="-lG4visQt3D ${vis_libs}" + libs="-lG4visQt3D ${libs}" + vis_cflags="${vis_cflags} -DG4UI_USE_QT3D" +fi + geant4_uses_opengl="yes" fi @@ -395,7 +405,7 @@ install_datasets() # Unpack bundle echo "+ untar ${dataset_file}" - ${G4TAR} -C ${g4downloaddir} -xf ${g4downloaddir}/${dataset_file} + ${G4TAR} -C ${g4downloaddir} -xf ${g4downloaddir}/${dataset_file} tar_status="$?" if [ "$tar_status" != "0" ] ; then echo "- untar of '${dataset_file}' failed : tar error $?" @@ -601,6 +611,9 @@ while test $# -gt 0 ; do openinventor) echo ${have_openinventor} ;; + php_as_hp) + echo ${have_php_as_hp} + ;; *) echo "no" ;; diff --git a/config/G4VIS_BUILD.gmk b/config/G4VIS_BUILD.gmk index c8c00e3059..fb22a00cfd 100644 --- a/config/G4VIS_BUILD.gmk +++ b/config/G4VIS_BUILD.gmk @@ -78,6 +78,11 @@ ifdef G4VIS_BUILD_OI_DRIVER INC_IV = 1 CPPFLAGS += -DG4VIS_BUILD_OI_DRIVER endif +ifdef G4VIS_BUILD_QT3D_DRIVER + G4INTY_BUILD_QT = 1 + INC_QT = 1 + CPPFLAGS += -DG4VIS_BUILD_QT3D_DRIVER +endif ifdef G4VIS_BUILD_RAYTRACERX_DRIVER CPPFLAGS += -DG4VIS_BUILD_RAYTRACERX_DRIVER diff --git a/config/G4VIS_USE.gmk b/config/G4VIS_USE.gmk index 64b69c9fcd..8119408c2f 100644 --- a/config/G4VIS_USE.gmk +++ b/config/G4VIS_USE.gmk @@ -118,6 +118,16 @@ ifdef G4VIS_USE_OI G4LIB_USE_GL2PS = 1 endif +ifdef G4VIS_USE_QT3D + CPPFLAGS += -DG4VIS_USE_QT3D + VISLIBS += -lG4visQt3D + ifneq ($(G4INCLUDE_EXEC),1) + CPPFLAGS += -I$(G4BASE)/visualization/Qt3D/include + endif + INC_QT = 1 + LOAD_3DQT = 1 +endif + ifdef G4VIS_USE_RAYTRACERX CPPFLAGS += -DG4VIS_USE_RAYTRACERX # CPPFLAGS += -I... and VISLIBS += set above. diff --git a/config/History b/config/History index 16a5281bcd..0ecb22b815 100644 --- a/config/History +++ b/config/History @@ -15,6 +15,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +22nd October 2020 Gabriele Cosmo (config-V10-06-07) +- Added configuration for Qt3D visualization driver. + 22nd June 2020 Gabriele Cosmo (config-V10-06-06) - Added -pthread to all builds in Linux targets. diff --git a/config/interactivity.gmk b/config/interactivity.gmk index 1691040148..8b263e5f65 100644 --- a/config/interactivity.gmk +++ b/config/interactivity.gmk @@ -31,6 +31,9 @@ endif ifdef LOAD_QT INTYLIBS += $(QTLIBS) endif +ifdef LOAD_3DQT + INTYLIBS += $(QT3DLIBS) +endif ifdef LOAD_GLQT INTYLIBS += $(GLQTLIBS) endif diff --git a/config/sys/Darwin-clang.gmk b/config/sys/Darwin-clang.gmk index ddec29465b..2391ec38af 100644 --- a/config/sys/Darwin-clang.gmk +++ b/config/sys/Darwin-clang.gmk @@ -105,9 +105,13 @@ ifeq ($(G4SYSTEM),Darwin-clang) QTMOC := /usr/bin/moc endif ifndef QTFLAGS - QTFLAGS := -I $(QTHOME)/QtCore.framework/Headers - QTFLAGS += -I $(QTHOME)/QtGui.framework/Headers + QTFLAGS := -I $(QTHOME)/QtCore.framework/Headers + QTFLAGS += -I $(QTHOME)/QtGui.framework/Headers + QTFLAGS += -I $(QTHOME)/QtWidgets.framework/Headers QTFLAGS += -I $(QTHOME)/QtOpenGL.framework/Headers + QTFLAGS += -I $(QTHOME)/Qt3DCore.framework/Headers + QTFLAGS += -I $(QTHOME)/Qt3DExtras.framework/Headers + QTFLAGS += -I $(QTHOME)/Qt3DRender.framework/Headers QTFLAGS += -I $(QTHOME)/include/Qt -I$(QTHOME)/include endif ifndef QTLIBPATH @@ -122,12 +126,20 @@ ifeq ($(G4SYSTEM),Darwin-clang) QTLIBS := -L$(QTLPATH) -lQtCore -lQtGui endif endif + ifndef QT3DLIBS + ifdef QT_AS_FRAMEWORK + QT3DLIBS := $(QTLIBPATH) -framework QtCore -framework QtGui + QT3DLIBS += -framework QtWidgets -framework Qt3DCore -framework Qt3DExtras -framework Qt3DRender + else + QT3DLIBS := -L$(QTLPATH) -lQtCore -lQtGui + QT3DLIBS += -lQtWidgets -lQt3DCore -lQt3DExtras -lQt3DRender + endif + endif ifndef GLQTLIBS ifdef QT_AS_FRAMEWORK - GLQTLIBS := $(QTLIBPATH) -framework QtCore -framework QtGui - GLQTLIBS += -framework QtOpenGL + GLQTLIBS := $(QTLIBPATH) -framework QtCore -framework QtGui -framework QtOpenGL else - GLQTLIBS := -L$(QTLPATH) -lQtCore -lQtGui -lQtOpenGL + GLQTLIBS := -L$(QTLPATH) -lQtCore -lQtGui -lQtOpenGL endif endif else @@ -140,6 +152,9 @@ ifeq ($(G4SYSTEM),Darwin-clang) QTFLAGS += -I $(QTLPATH)/QtGui.framework/Headers QTFLAGS += -I $(QTLPATH)/QtWidgets.framework/Headers QTFLAGS += -I $(QTLPATH)/QtOpenGL.framework/Headers + QTFLAGS += -I $(QTLPATH)/Qt3DCore.framework/Headers + QTFLAGS += -I $(QTLPATH)/Qt3DExtras.framework/Headers + QTFLAGS += -I $(QTLPATH)/Qt3DRender.framework/Headers QTFLAGS += -I $(QTLPATH)/QtPrintSupport.framework/Headers QTFLAGS += -I $(QTHOME)/include/Qt -I$(QTHOME)/include endif @@ -147,6 +162,12 @@ ifeq ($(G4SYSTEM),Darwin-clang) QTLIBS := -F$(QTLPATH) -framework QtCore -framework QtGui QTLIBS += -framework QtWidgets -framework QtPrintSupport endif + ifndef QT3DLIBS + QT3DLIBS := -F$(QTLPATH) -framework QtCore -framework QtGui + QT3DLIBS += -framework QtWidgets + QT3DLIBS += -framework Qt3DCore -framework Qt3DExtras -framework Qt3DRender + QT3DLIBS += -framework QtPrintSupport + endif ifndef GLQTLIBS GLQTLIBS := -F$(QTLPATH) -framework QtCore -framework QtGui GLQTLIBS += -framework QtWidgets diff --git a/config/sys/Darwin-g++.gmk b/config/sys/Darwin-g++.gmk index dda03b2a4c..a1b73d5f58 100644 --- a/config/sys/Darwin-g++.gmk +++ b/config/sys/Darwin-g++.gmk @@ -131,9 +131,13 @@ ifeq ($(G4SYSTEM),Darwin-g++) QTMOC := /usr/bin/moc endif ifndef QTFLAGS - QTFLAGS := -I $(QTHOME)/QtCore.framework/Headers - QTFLAGS += -I $(QTHOME)/QtGui.framework/Headers + QTFLAGS := -I $(QTHOME)/QtCore.framework/Headers + QTFLAGS += -I $(QTHOME)/QtGui.framework/Headers + QTFLAGS += -I $(QTHOME)/QtWidgets.framework/Headers QTFLAGS += -I $(QTHOME)/QtOpenGL.framework/Headers + QTFLAGS += -I $(QTHOME)/Qt3DCore.framework/Headers + QTFLAGS += -I $(QTHOME)/Qt3DExtras.framework/Headers + QTFLAGS += -I $(QTHOME)/Qt3DRender.framework/Headers QTFLAGS += -I $(QTHOME)/include/Qt -I$(QTHOME)/include endif ifndef QTLIBPATH @@ -148,12 +152,20 @@ ifeq ($(G4SYSTEM),Darwin-g++) QTLIBS := -L$(QTLPATH) -lQtCore -lQtGui endif endif + ifndef QT3DLIBS + ifdef QT_AS_FRAMEWORK + QT3DLIBS := $(QTLIBPATH) -framework QtCore -framework QtGui + QT3DLIBS += -framework QtWidgets -framework Qt3DCore -framework Qt3DExtras -framework Qt3DRender + else + QT3DLIBS := -L$(QTLPATH) -lQtCore -lQtGui + QT3DLIBS += -lQtWidgets -lQt3DCore -lQt3DExtras -lQt3DRender + endif + endif ifndef GLQTLIBS ifdef QT_AS_FRAMEWORK - GLQTLIBS := $(QTLIBPATH) -framework QtCore -framework QtGui - GLQTLIBS += -framework QtOpenGL + GLQTLIBS := $(QTLIBPATH) -framework QtCore -framework QtGui -framework QtOpenGL else - GLQTLIBS := -L$(QTLPATH) -lQtCore -lQtGui -lQtOpenGL + GLQTLIBS := -L$(QTLPATH) -lQtCore -lQtGui -lQtOpenGL endif endif else @@ -166,6 +178,9 @@ ifeq ($(G4SYSTEM),Darwin-g++) QTFLAGS += -I $(QTLPATH)/QtGui.framework/Headers QTFLAGS += -I $(QTLPATH)/QtWidgets.framework/Headers QTFLAGS += -I $(QTLPATH)/QtOpenGL.framework/Headers + QTFLAGS += -I $(QTLPATH)/Qt3DCore.framework/Headers + QTFLAGS += -I $(QTLPATH)/Qt3DExtras.framework/Headers + QTFLAGS += -I $(QTLPATH)/Qt3DRender.framework/Headers QTFLAGS += -I $(QTLPATH)/QtPrintSupport.framework/Headers QTFLAGS += -I $(QTHOME)/include/Qt -I$(QTHOME)/include endif @@ -173,6 +188,12 @@ ifeq ($(G4SYSTEM),Darwin-g++) QTLIBS := -F$(QTLPATH) -framework QtCore -framework QtGui QTLIBS += -framework QtWidgets -framework QtPrintSupport endif + ifndef QT3DLIBS + QT3DLIBS := -F$(QTLPATH) -framework QtCore -framework QtGui + QT3DLIBS += -framework QtWidgets + QT3DLIBS += -framework Qt3DCore -framework Qt3DExtras -framework Qt3DRender + QT3DLIBS += -framework QtPrintSupport + endif ifndef GLQTLIBS GLQTLIBS := -F$(QTLPATH) -framework QtCore -framework QtGui GLQTLIBS += -framework QtWidgets diff --git a/config/sys/Linux-clang.gmk b/config/sys/Linux-clang.gmk index 8ef23306af..65406a2f73 100644 --- a/config/sys/Linux-clang.gmk +++ b/config/sys/Linux-clang.gmk @@ -110,6 +110,9 @@ ifeq ($(G4SYSTEM),Linux-clang) QTFLAGS += -I $(QTHOME)/include/QtGui QTFLAGS += -I $(QTHOME)/include/QtWidgets QTFLAGS += -I $(QTHOME)/include/QtOpenGL + QTFLAGS += -I $(QTHOME)/include/Qt3DCore + QTFLAGS += -I $(QTHOME)/include/Qt3DExtras + QTFLAGS += -I $(QTHOME)/include/Qt3DRender QTFLAGS += -I $(QTHOME)/include/QtPrintSupport endif else # Qt4 @@ -131,6 +134,9 @@ ifeq ($(G4SYSTEM),Linux-clang) ifndef QTLIBS # Qt5 QTLIBS := -L$(QTLIBPATH) -lQt5Core -lQt5Gui -lQt5Widgets -lQt5PrintSupport endif + ifndef QT3DLIBS + QT3DLIBS := -L$(QTLIBPATH) -lQt5Core -lQt5Gui -lQt5Widgets -lQt53DCore -lQt53DExtras -lQt53DRender -lQt5PrintSupport + endif ifndef GLQTLIBS GLQTLIBS := -L$(QTLIBPATH) -lQt5Core -lQt5Gui -lQt5Widgets -lQt5OpenGL -lQt5PrintSupport endif diff --git a/config/sys/Linux-g++.gmk b/config/sys/Linux-g++.gmk index d23b0e2488..163197615d 100644 --- a/config/sys/Linux-g++.gmk +++ b/config/sys/Linux-g++.gmk @@ -108,6 +108,9 @@ ifeq ($(G4SYSTEM),Linux-g++) QTFLAGS += -I $(QTHOME)/include/QtGui QTFLAGS += -I $(QTHOME)/include/QtWidgets QTFLAGS += -I $(QTHOME)/include/QtOpenGL + QTFLAGS += -I $(QTHOME)/include/Qt3DCore + QTFLAGS += -I $(QTHOME)/include/Qt3DExtras + QTFLAGS += -I $(QTHOME)/include/Qt3DRender QTFLAGS += -I $(QTHOME)/include/QtPrintSupport endif else # Qt4 @@ -129,6 +132,9 @@ ifeq ($(G4SYSTEM),Linux-g++) ifndef QTLIBS # Qt5 QTLIBS := -L$(QTLIBPATH) -lQt5Core -lQt5Gui -lQt5Widgets -lQt5PrintSupport endif + ifndef QT3DLIBS + QT3DLIBS := -L$(QTLIBPATH) -lQt5Core -lQt5Gui -lQt5Widgets -lQt53DCore -lQt53DExtras -lQt53DRender -lQt5PrintSupport + endif ifndef GLQTLIBS GLQTLIBS := -L$(QTLIBPATH) -lQt5Core -lQt5Gui -lQt5Widgets -lQt5OpenGL -lQt5PrintSupport endif diff --git a/environments/g4py/CMakeLists.txt b/environments/g4py/CMakeLists.txt index d9dea8f61a..d4de53a8c1 100644 --- a/environments/g4py/CMakeLists.txt +++ b/environments/g4py/CMakeLists.txt @@ -8,7 +8,7 @@ # which Python an install of Boost Python uses)... find_package(PythonInterp 3.0 REQUIRED) find_package(PythonLibs REQUIRED) -find_package(Boost REQUIRED python) +find_package(Boost 1.65 REQUIRED python) # Variables and Functions to help build, organise, and install modules include(${CMAKE_CURRENT_SOURCE_DIR}/G4PythonHelpers.cmake) diff --git a/environments/g4py/G4PythonHelpers.cmake b/environments/g4py/G4PythonHelpers.cmake index b7c149a4c2..e1d2048f59 100644 --- a/environments/g4py/G4PythonHelpers.cmake +++ b/environments/g4py/G4PythonHelpers.cmake @@ -4,7 +4,8 @@ # any substructure set(GEANT4_PYTHON_OUTPUT_DIR "$/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}/site-packages") -set(CMAKE_INSTALL_PYTHONDIR "${CMAKE_INSTALL_LIBDIR}/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}/site-packages") +set(CMAKE_INSTALL_PYTHONDIR "${CMAKE_INSTALL_LIBDIR}/python${PYTHON_VERSION_MAJOR}.${PYTHON_VERSION_MINOR}/site-packages" CACHE PATH "Python modules/packages") +mark_as_advanced(CMAKE_INSTALL_PYTHONDIR) if(NOT IS_ABSOLUTE "${CMAKE_INSTALL_PYTHONDIR}") set(CMAKE_INSTALL_FULL_PYTHONDIR "${CMAKE_INSTALL_PREFIX}/${CMAKE_INSTALL_PYTHONDIR}") else() @@ -40,6 +41,10 @@ function(g4py_add_module target_name) # to be checked for Windows) target_include_directories(${target_name} PRIVATE ${PYTHON_INCLUDE_DIRS}) target_link_libraries(${target_name} PRIVATE Boost::python "$<$:-undefined dynamic_lookup>") + + # Workaround to suppress pragma message spam in Boost >= 1.73 + # - See https://github.com/boostorg/python/pull/315 + target_compile_definitions(${target_name} PRIVATE BOOST_BIND_GLOBAL_PLACEHOLDERS) endfunction() diff --git a/environments/g4py/History b/environments/g4py/History index 612f1b1033..690bfd6f1c 100644 --- a/environments/g4py/History +++ b/environments/g4py/History @@ -11,6 +11,25 @@ Geant4Py is a Geant4-Python bridge. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +16 Nov. 2020 B. Morgan (geant4py-V10-06-04) +- Boost 1.73 modified use of its bind and placeholder functionality, resulting + in Boost.Python spamming pragma messages about deprecation of this. + See https://github.com/boostorg/python/pull/315. Add BOOST_BIND_GLOBAL_PLACEHOLDERS + as a private compile definition to geant4py targets to suppress these. + +11 Nov. 2020 B. Morgan (geant4py-V10-06-03) +- Address Bugzilla 2283 +- Make CMAKE_INSTALL_PYTHONDIR a user-configurable cache variable +- RPATH issue is addressed by use of CMAKE_SKIP_INSTALL_RPATH variable by client + +6 Oct. 2020 B. Morgan (geant4py-V10-06-02) +- Add binding to G4PhysListFactory (GitHub PR #14, contributed by Daniel Hellfeld) +- Add simple test case of binding. + +25 Aug. 2020 B. Morgan (geant4py-V10-06-01) +- Remove obsolete boost.python indexing suite. Only required on + very old Boost versions <= 1.33 + 19 Mar. 2020 B. Morgan (geant4py-V10-06-00) - Integrate build, test, and install of geant4py with core Geant4 CMake buildsystem. diff --git a/environments/g4py/examples/education/lesson1/demo.py b/environments/g4py/examples/education/lesson1/demo.py old mode 100644 new mode 100755 diff --git a/environments/g4py/source/CMakeLists.txt b/environments/g4py/source/CMakeLists.txt index d19cd0d730..03480a5a50 100644 --- a/environments/g4py/source/CMakeLists.txt +++ b/environments/g4py/source/CMakeLists.txt @@ -1,8 +1,4 @@ # - add libs components -# Private interface library to help Boost.Python usage -add_library(pyG4Boost INTERFACE) -target_include_directories(pyG4Boost INTERFACE "${CMAKE_CURRENT_SOURCE_DIR}/boost") - # Core Geant4 bindings add_subdirectory(global) add_subdirectory(interface) diff --git a/environments/g4py/source/boost/container_utils.hpp b/environments/g4py/source/boost/container_utils.hpp deleted file mode 100644 index a25185d077..0000000000 --- a/environments/g4py/source/boost/container_utils.hpp +++ /dev/null @@ -1,52 +0,0 @@ - -// (C) Copyright Joel de Guzman 2003. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef PY_CONTAINER_UTILS_JDG20038_HPP -# define PY_CONTAINER_UTILS_JDG20038_HPP - -# include -# include -# include - -namespace boost { namespace python { namespace container_utils { - - template - void - extend_container(Container& container, object l) - { - typedef typename Container::value_type data_type; - - // l must be a list or some container - - for (int i = 0; i < l.attr("__len__")(); i++) - { - object elem(l[i]); - extract x(elem); - // try if elem is an exact data_type type - if (x.check()) - { - container.push_back(x()); - } - else - { - // try to convert elem to data_type type - extract x(elem); - if (x.check()) - { - container.push_back(x()); - } - else - { - PyErr_SetString(PyExc_TypeError, "Incompatible Data Type"); - throw_error_already_set(); - } - } - } - } - -}}} // namespace boost::python::container_utils - -#endif diff --git a/environments/g4py/source/boost/detail/indexing_suite_detail.hpp b/environments/g4py/source/boost/detail/indexing_suite_detail.hpp deleted file mode 100644 index bf4fe91c68..0000000000 --- a/environments/g4py/source/boost/detail/indexing_suite_detail.hpp +++ /dev/null @@ -1,759 +0,0 @@ -// (C) Copyright Joel de Guzman 2003. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef INDEXING_SUITE_DETAIL_JDG20036_HPP -# define INDEXING_SUITE_DETAIL_JDG20036_HPP - -# include -# include -# include -# include -# include -# include -# include -# include -#include - -namespace boost { namespace python { namespace detail { - -#if defined(NDEBUG) -#define BOOST_PYTHON_INDEXING_CHECK_INVARIANT -#else -#define BOOST_PYTHON_INDEXING_CHECK_INVARIANT check_invariant() -#endif - - template - struct compare_proxy_index - { - // This functor compares a proxy and an index. - // This is used by proxy_group::first_proxy to - // get first proxy with index i. - - template - bool operator()(PyObject* prox, Index i) const - { - typedef typename Proxy::policies_type policies_type; - Proxy& proxy = extract(prox)(); - return policies_type:: - compare_index(proxy.get_container(), proxy.get_index(), i); - } - }; - - // The proxy_group class holds a vector of container element - // proxies. First, what is a container element proxy? A container - // element proxy acts like a smart pointer holding a reference to - // a container and an index (see container_element, for details). - // - // The proxies are held in a vector always sorted by its index. - // Various functions manage the addition, removal and searching - // of proxies from the vector. - // - template - class proxy_group - { - public: - - typedef typename std::vector::const_iterator const_iterator; - typedef typename std::vector::iterator iterator; - typedef typename Proxy::index_type index_type; - typedef typename Proxy::policies_type policies_type; - - iterator - first_proxy(index_type i) - { - // Return the first proxy with index <= i - return boost::detail::lower_bound( - proxies.begin(), proxies.end(), - i, compare_proxy_index()); - } - - void - remove(Proxy& proxy) - { - // Remove a proxy - for (iterator iter = first_proxy(proxy.get_index()); - iter != proxies.end(); ++iter) - { - if (&extract(*iter)() == &proxy) - { - proxies.erase(iter); - break; - } - } - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - } - - void - add(PyObject* prox) - { - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // Add a proxy - proxies.insert( - first_proxy(extract(prox)().get_index()), prox); - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - } - - void - erase(index_type i, mpl::false_) - { - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // Erase the proxy with index i - replace(i, i+1, 0); - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - } - - void - erase(index_type i, mpl::true_) - { - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // Erase the proxy with index i - - iterator iter = first_proxy(i); - extract p(*iter); - - if (iter != proxies.end() && p().get_index() == i) - { - extract p(*iter); - p().detach(); - proxies.erase(iter); - } - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - } - - void - erase(index_type from, index_type to) - { - // note: this cannot be called when container is not sliceable - - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // Erase all proxies with indexes from..to - replace(from, to, 0); - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - } - - void - replace( - index_type from, - index_type to, - typename std::vector::size_type len) - { - // note: this cannot be called when container is not sliceable - - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // Erase all proxies with indexes from..to. - // Adjust the displaced indexes such that the - // final effect is that we have inserted *len* - // number of proxies in the vacated region. This - // procedure involves adjusting the indexes of - // the proxies. - - iterator left = first_proxy(from); - iterator right = proxies.end(); // we'll adjust this later - - for (iterator iter = left; iter != right; ++iter) - { - if (extract(*iter)().get_index() > to) - { - right = iter; // adjust right - break; - } - extract p(*iter); - p().detach(); - } - - typename std::vector::size_type - offset = left-proxies.begin(); - proxies.erase(left, right); - right = proxies.begin()+offset; - - while (right != proxies.end()) - { - typedef typename Proxy::container_type::difference_type difference_type; - extract p(*right); - p().set_index( - extract(*right)().get_index() - - (difference_type(to) - from - len) - ); - - ++right; - } - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - } - - PyObject* - find(index_type i) - { - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // Find the proxy with *exact* index i. - // Return 0 (null) if no proxy with the - // given index is found. - iterator iter = first_proxy(i); - if (iter != proxies.end() - && extract(*iter)().get_index() == i) - { - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - return *iter; - } - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - return 0; - } - - typename std::vector::size_type - size() const - { - BOOST_PYTHON_INDEXING_CHECK_INVARIANT; - // How many proxies are there so far? - return proxies.size(); - } - - private: - -#if !defined(NDEBUG) - void - check_invariant() const - { - for (const_iterator i = proxies.begin(); i != proxies.end(); ++i) - { - if ((*i)->ob_refcnt <= 0) - { - PyErr_SetString(PyExc_RuntimeError, - "Invariant: Proxy vector in an inconsistent state"); - throw_error_already_set(); - } - - if (i+1 != proxies.end()) - { - if (extract(*(i+1))().get_index() == - extract(*(i))().get_index()) - { - PyErr_SetString(PyExc_RuntimeError, - "Invariant: Proxy vector in an inconsistent state (duplicate proxy)"); - throw_error_already_set(); - } - } - } - } -#endif - - std::vector proxies; - }; - - // proxy_links holds a map of Container pointers (keys) - // with proxy_group(s) (data). Various functions manage - // the addition, removal and searching of proxies from - // the map. - // - template - class proxy_links - { - public: - - typedef std::map > links_t; - typedef typename Proxy::index_type index_type; - - void - remove(Proxy& proxy) - { - // Remove a proxy. - typename links_t::iterator r = links.find(&proxy.get_container()); - if (r != links.end()) - { - r->second.remove(proxy); - if (r->second.size() == 0) - links.erase(r); - } - } - - void - add(PyObject* prox, Container& container) - { - // Add a proxy - links[&container].add(prox); - } - - template - void erase(Container& container, index_type i, NoSlice no_slice) - { - // Erase the proxy with index i - typename links_t::iterator r = links.find(&container); - if (r != links.end()) - { - r->second.erase(i, no_slice); - if (r->second.size() == 0) - links.erase(r); - } - } - - void - erase(Container& container, index_type from, index_type to) - { - // Erase all proxies with indexes from..to - typename links_t::iterator r = links.find(&container); - if (r != links.end()) - { - r->second.erase(from, to); - if (r->second.size() == 0) - links.erase(r); - } - } - - void - replace( - Container& container, - index_type from, index_type to, index_type len) - { - // Erase all proxies with indexes from..to. - // Adjust the displaced indexes such that the - // final effect is that we have inserted *len* - // number of proxies in the vacated region. This - // procedure involves adjusting the indexes of - // the proxies. - - typename links_t::iterator r = links.find(&container); - if (r != links.end()) - { - r->second.replace(from, to, len); - if (r->second.size() == 0) - links.erase(r); - } - } - - PyObject* - find(Container& container, index_type i) - { - // Find the proxy with *exact* index i. - // Return 0 (null) if no proxy with the given - // index is found. - typename links_t::iterator r = links.find(&container); - if (r != links.end()) - return r->second.find(i); - return 0; - } - - private: - - links_t links; - }; - - // container_element is our container proxy class. - // This class acts like a smart pointer to a container - // element. The class holds an index and a reference to - // a container. Dereferencing the smart pointer will - // retrieve the nth (index) element from the container. - // - // A container_element can also be detached from the - // container. In such a detached state, the container_element - // holds a copy of the nth (index) element, which it - // returns when dereferenced. - // - template - class container_element - { - public: - - typedef Index index_type; - typedef Container container_type; - typedef typename Policies::data_type element_type; - typedef Policies policies_type; - typedef container_element self_t; - typedef proxy_group links_type; - - container_element(object container, Index index) - : ptr() - , container(container) - , index(index) - { - } - - container_element(container_element const& ce) - : ptr(ce.ptr.get() == 0 ? 0 : new element_type(*ce.ptr.get())) - , container(ce.container) - , index(ce.index) - { - } - - ~container_element() - { - if (!is_detached()) - get_links().remove(*this); - } - - element_type& operator*() const - { - if (is_detached()) - return *get_pointer(ptr); - return Policies::get_item(get_container(), index); - } - - element_type* get() const - { - if (is_detached()) - return get_pointer(ptr); - return &Policies::get_item(get_container(), index); - } - - void - detach() - { - if (!is_detached()) - { - ptr.reset( - new element_type( - Policies::get_item(get_container(), index))); - container = object(); // free container. reset it to None - } - } - - bool - is_detached() const - { - return get_pointer(ptr) != 0; - } - - Container& - get_container() const - { - return extract(container)(); - } - - Index - get_index() const - { - return index; - } - - void - set_index(Index i) - { - index = i; - } - - static proxy_links& - get_links() - { - // All container_element(s) maintain links to - // its container in a global map (see proxy_links). - // This global "links" map is a singleton. - - static proxy_links links; - return links; // singleton - } - - private: - - container_element& operator=(container_element const& ce); - - scoped_ptr ptr; - object container; - Index index; - }; - - template < - class Container - , class DerivedPolicies - , class ContainerElement - , class Index - > - struct no_proxy_helper - { - static void - register_container_element() - { - } - - template - static object - base_get_item_helper(DataType const& p, mpl::true_) - { - return object(ptr(p)); - } - - template - static object - base_get_item_helper(DataType const& x, mpl::false_) - { - return object(x); - } - - static object - base_get_item_(back_reference const& container, PyObject* i) - { - return base_get_item_helper( - DerivedPolicies::get_item( - container.get(), DerivedPolicies:: - convert_index(container.get(), i)) - , is_pointer() - ); - } - - static void - base_replace_indexes( - Container& container, Index from, - Index to, Index n) - { - } - - template - static void - base_erase_index( - Container& container, Index i, NoSlice no_slice) - { - } - - static void - base_erase_indexes(Container& container, Index from, Index to) - { - } - }; - - template < - class Container - , class DerivedPolicies - , class ContainerElement - , class Index - > - struct proxy_helper - { - static void - register_container_element() - { - register_ptr_to_python(); - } - - static object - base_get_item_(back_reference const& container, PyObject* i) - { - // Proxy - Index idx = DerivedPolicies::convert_index(container.get(), i); - - if (PyObject* shared = - ContainerElement::get_links().find(container.get(), idx)) - { - handle<> h(python::borrowed(shared)); - return object(h); - } - else - { - object prox(ContainerElement(container.source(), idx)); - ContainerElement:: - get_links().add(prox.ptr(), container.get()); - return prox; - } - } - - static void - base_replace_indexes( - Container& container, Index from, - Index to, Index n) - { - ContainerElement::get_links().replace(container, from, to, n); - } - - template - static void - base_erase_index( - Container& container, Index i, NoSlice no_slice) - { - ContainerElement::get_links().erase(container, i, no_slice); - } - - static void - base_erase_indexes( - Container& container, Index from, Index to) - { - ContainerElement::get_links().erase(container, from, to); - } - }; - - template < - class Container - , class DerivedPolicies - , class ProxyHandler - , class Data - , class Index - > - struct slice_helper - { - static object - base_get_slice(Container& container, PySliceObject* slice) - { - Index from, to; - base_get_slice_data(container, slice, from, to); - return DerivedPolicies::get_slice(container, from, to); - } - - static void - base_get_slice_data( - Container& container, PySliceObject* slice, Index& from_, Index& to_) - { - if (Py_None != slice->step) { - PyErr_SetString( PyExc_IndexError, "slice step size not supported."); - throw_error_already_set(); - } - - Index min_index = DerivedPolicies::get_min_index(container); - Index max_index = DerivedPolicies::get_max_index(container); - - if (Py_None == slice->start) { - from_ = min_index; - } - else { - long from = extract( slice->start); - if (from < 0) // Negative slice index - from += max_index; - if (from < 0) // Clip lower bounds to zero - from = 0; - from_ = boost::numeric_cast(from); - if (from_ > max_index) // Clip upper bounds to max_index. - from_ = max_index; - } - - if (Py_None == slice->stop) { - to_ = max_index; - } - else { - long to = extract( slice->stop); - if (to < 0) - to += max_index; - if (to < 0) - to = 0; - to_ = boost::numeric_cast(to); - if (to_ > max_index) - to_ = max_index; - } - } - - static void - base_set_slice(Container& container, PySliceObject* slice, PyObject* v) - { - Index from, to; - base_get_slice_data(container, slice, from, to); - - extract elem(v); - // try if elem is an exact Data - if (elem.check()) - { - ProxyHandler::base_replace_indexes(container, from, to, 1); - DerivedPolicies::set_slice(container, from, to, elem()); - } - else - { - // try to convert elem to Data - extract elem(v); - if (elem.check()) - { - ProxyHandler::base_replace_indexes(container, from, to, 1); - DerivedPolicies::set_slice(container, from, to, elem()); - } - else - { - // Otherwise, it must be a list or some container - handle<> l_(python::borrowed(v)); - object l(l_); - - std::vector temp; - for (int i = 0; i < l.attr("__len__")(); i++) - { - object elem(l[i]); - extract x(elem); - // try if elem is an exact Data type - if (x.check()) - { - temp.push_back(x()); - } - else - { - // try to convert elem to Data type - extract x(elem); - if (x.check()) - { - temp.push_back(x()); - } - else - { - PyErr_SetString(PyExc_TypeError, - "Invalid sequence element"); - throw_error_already_set(); - } - } - } - - ProxyHandler::base_replace_indexes(container, from, to, - temp.end()-temp.begin()); - DerivedPolicies::set_slice(container, from, to, - temp.begin(), temp.end()); - } - } - } - - static void - base_delete_slice(Container& container, PySliceObject* slice) - { - Index from, to; - base_get_slice_data(container, slice, from, to); - ProxyHandler::base_erase_indexes(container, from, to); - DerivedPolicies::delete_slice(container, from, to); - } - }; - - template < - class Container - , class DerivedPolicies - , class ProxyHandler - , class Data - , class Index - > - struct no_slice_helper - { - static void - slicing_not_suported() - { - PyErr_SetString(PyExc_RuntimeError, "Slicing not supported"); - throw_error_already_set(); - } - - static object - base_get_slice(Container& container, PySliceObject* slice) - { - slicing_not_suported(); - return object(); - } - - static void - base_set_slice(Container& container, PySliceObject* slice, PyObject* v) - { - slicing_not_suported(); - } - - static void - base_delete_slice(Container& container, PySliceObject* slice) - { - slicing_not_suported(); - } - }; - -#ifdef BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP -}} // namespace python::detail -#endif - - template - inline typename Policies::data_type* - get_pointer( - python::detail::container_element const& p) - { - // Get the pointer of a container_element smart pointer - return p.get(); - } - -#ifndef BOOST_NO_ARGUMENT_DEPENDENT_LOOKUP - // Don't hide these other get_pointer overloads - using boost::python::get_pointer; - using boost::get_pointer; -}} // namespace python::detail -#endif - -} // namespace boost - -#endif // INDEXING_SUITE_DETAIL_JDG20036_HPP diff --git a/environments/g4py/source/boost/indexing_suite.hpp b/environments/g4py/source/boost/indexing_suite.hpp deleted file mode 100644 index 66172c0fcf..0000000000 --- a/environments/g4py/source/boost/indexing_suite.hpp +++ /dev/null @@ -1,293 +0,0 @@ -// (C) Copyright Joel de Guzman 2003. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef INDEXING_SUITE_JDG20036_HPP -# define INDEXING_SUITE_JDG20036_HPP - -# include -# include -# include -# include "detail/indexing_suite_detail.hpp" -# include -# include -# include -# include - -namespace boost { namespace python { - - // indexing_suite class. This class is the protocol class for - // the management of C++ containers intended to be integrated - // to Python. The objective is make a C++ container look and - // feel and behave exactly as we'd expect a Python container. - // By default indexed elements are returned by proxy. This can be - // disabled by supplying *true* in the NoProxy template parameter. - // - // Derived classes provide the hooks needed by the indexing_suite - // to do its job: - // - // static data_type& - // get_item(Container& container, index_type i); - // - // static object - // get_slice(Container& container, index_type from, index_type to); - // - // static void - // set_item(Container& container, index_type i, data_type const& v); - // - // static void - // set_slice( - // Container& container, index_type from, - // index_type to, data_type const& v - // ); - // - // template - // static void - // set_slice(Container& container, index_type from, - // index_type to, Iter first, Iter last - // ); - // - // static void - // delete_item(Container& container, index_type i); - // - // static void - // delete_slice(Container& container, index_type from, index_type to); - // - // static size_t - // size(Container& container); - // - // template - // static bool - // contains(Container& container, T const& val); - // - // static index_type - // convert_index(Container& container, PyObject* i); - // - // static index_type - // adjust_index(index_type current, index_type from, - // index_type to, size_type len - // ); - // - // Most of these policies are self explanatory. convert_index and - // adjust_index, however, deserves some explanation. - // - // convert_index converts an Python index into a C++ index that the - // container can handle. For instance, negative indexes in Python, by - // convention, indexes from the right (e.g. C[-1] indexes the rightmost - // element in C). convert_index should handle the necessary conversion - // for the C++ container (e.g. convert -1 to C.size()-1). convert_index - // should also be able to convert the type of the index (A dynamic Python - // type) to the actual type that the C++ container expects. - // - // When a container expands or contracts, held indexes to its elements - // must be adjusted to follow the movement of data. For instance, if - // we erase 3 elements, starting from index 0 from a 5 element vector, - // what used to be at index 4 will now be at index 1: - // - // [a][b][c][d][e] ---> [d][e] - // ^ ^ - // 4 1 - // - // adjust_index takes care of the adjustment. Given a current index, - // the function should return the adjusted index when data in the - // container at index from..to is replaced by *len* elements. - // - - template < - class Container - , class DerivedPolicies - , bool NoProxy = false - , bool NoSlice = false - , class Data = typename Container::value_type - , class Index = typename Container::size_type - , class Key = typename Container::value_type - > - class indexing_suite - : public def_visitor< - indexing_suite< - Container - , DerivedPolicies - , NoProxy - , NoSlice - , Data - , Index - , Key - > > - { - private: - - typedef mpl::or_< - mpl::bool_ - , mpl::not_ > > - no_proxy; - - typedef detail::container_element - container_element_t; - -#if BOOST_WORKAROUND(BOOST_MSVC, == 1200) - struct return_policy : return_internal_reference<> {}; -#else - typedef return_internal_reference<> return_policy; -#endif - - typedef typename mpl::if_< - no_proxy - , iterator - , iterator >::type - def_iterator; - - typedef typename mpl::if_< - no_proxy - , detail::no_proxy_helper< - Container - , DerivedPolicies - , container_element_t - , Index> - , detail::proxy_helper< - Container - , DerivedPolicies - , container_element_t - , Index> >::type - proxy_handler; - - typedef typename mpl::if_< - mpl::bool_ - , detail::no_slice_helper< - Container - , DerivedPolicies - , proxy_handler - , Data - , Index> - , detail::slice_helper< - Container - , DerivedPolicies - , proxy_handler - , Data - , Index> >::type - slice_handler; - - public: - - template - void visit(Class& cl) const - { - // Hook into the class_ generic visitation .def function - proxy_handler::register_container_element(); - - cl - .def("__len__", base_size) - .def("__setitem__", &base_set_item) - .def("__delitem__", &base_delete_item) - .def("__getitem__", &base_get_item) - .def("__contains__", &base_contains) - .def("__iter__", def_iterator()) - ; - - DerivedPolicies::extension_def(cl); - } - - template - static void - extension_def(Class& cl) - { - // default. - // no more extensions - } - - private: - - static object - base_get_item(back_reference container, PyObject* i) - { - if (PySlice_Check(i)) - return slice_handler::base_get_slice( - container.get(), reinterpret_cast(i)); - - return proxy_handler::base_get_item_(container, i); - } - - static void - base_set_item(Container& container, PyObject* i, PyObject* v) - { - if (PySlice_Check(i)) - { - slice_handler::base_set_slice(container, - reinterpret_cast(i), v); - } - else - { - extract elem(v); - // try if elem is an exact Data - if (elem.check()) - { - DerivedPolicies:: - set_item(container, - DerivedPolicies:: - convert_index(container, i), elem()); - } - else - { - // try to convert elem to Data - extract elem(v); - if (elem.check()) - { - DerivedPolicies:: - set_item(container, - DerivedPolicies:: - convert_index(container, i), elem()); - } - else - { - PyErr_SetString(PyExc_TypeError, "Invalid assignment"); - throw_error_already_set(); - } - } - } - } - - static void - base_delete_item(Container& container, PyObject* i) - { - if (PySlice_Check(i)) - { - slice_handler::base_delete_slice( - container, reinterpret_cast(i)); - return; - } - - Index index = DerivedPolicies::convert_index(container, i); - proxy_handler::base_erase_index(container, index, mpl::bool_()); - DerivedPolicies::delete_item(container, index); - } - - static size_t - base_size(Container& container) - { - return DerivedPolicies::size(container); - } - - static bool - base_contains(Container& container, PyObject* key) - { - extract x(key); - // try if key is an exact Key type - if (x.check()) - { - return DerivedPolicies::contains(container, x()); - } - else - { - // try to convert key to Key type - extract x(key); - if (x.check()) - return DerivedPolicies::contains(container, x()); - else - return false; - } - } - }; - -}} // namespace boost::python - -#endif // INDEXING_SUITE_JDG20036_HPP diff --git a/environments/g4py/source/boost/map_indexing_suite.hpp b/environments/g4py/source/boost/map_indexing_suite.hpp deleted file mode 100644 index 4657cfe0f7..0000000000 --- a/environments/g4py/source/boost/map_indexing_suite.hpp +++ /dev/null @@ -1,181 +0,0 @@ -// (C) Copyright Joel de Guzman 2003. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef MAP_INDEXING_SUITE_JDG20038_HPP -# define MAP_INDEXING_SUITE_JDG20038_HPP - -# include "indexing_suite.hpp" -# include -# include -# include - -namespace boost { namespace python { - - // Forward declaration - template - class map_indexing_suite; - - namespace detail - { - template - class final_map_derived_policies - : public map_indexing_suite > {}; - } - - // The map_indexing_suite class is a predefined indexing_suite derived - // class for wrapping std::vector (and std::vector like) classes. It provides - // all the policies required by the indexing_suite (see indexing_suite). - // Example usage: - // - // class X {...}; - // - // ... - // - // class_ >("XMap") - // .def(map_indexing_suite >()) - // ; - // - // By default indexed elements are returned by proxy. This can be - // disabled by supplying *true* in the NoProxy template parameter. - // - template < - class Container, - bool NoProxy = false, - class DerivedPolicies - = detail::final_map_derived_policies > - class map_indexing_suite - : public indexing_suite< - Container - , DerivedPolicies - , NoProxy - , true - , typename Container::value_type::second_type - , typename Container::key_type - , typename Container::key_type - > - { - public: - - typedef typename Container::value_type value_type; - typedef typename Container::value_type::second_type data_type; - typedef typename Container::key_type key_type; - typedef typename Container::key_type index_type; - typedef typename Container::size_type size_type; - typedef typename Container::difference_type difference_type; - - template - static void - extension_def(Class& cl) - { - // Wrap the map's element (value_type) - std::string elem_name = "map_indexing_suite_"; - object class_name(cl.attr("__name__")); - extract class_name_extractor(class_name); - elem_name += class_name_extractor(); - elem_name += "_entry"; - - typedef typename mpl::if_< - is_class - , return_internal_reference<> - , default_call_policies - >::type get_data_return_policy; - - class_(elem_name.c_str()) - .def("__repr__", &DerivedPolicies::print_elem) - .def("data", &DerivedPolicies::get_data, get_data_return_policy()) - .def("key", &DerivedPolicies::get_key) - ; - } - - static object - print_elem(typename Container::value_type const& e) - { - return "(%s, %s)" % python::make_tuple(e.first, e.second); - } - - static - typename mpl::if_< - is_class - , data_type& - , data_type - >::type - get_data(typename Container::value_type& e) - { - return e.second; - } - - static typename Container::key_type - get_key(typename Container::value_type& e) - { - return e.first; - } - - static data_type& - get_item(Container& container, index_type i_) - { - typename Container::iterator i = container.find(i_); - if (i == container.end()) - { - PyErr_SetString(PyExc_KeyError, "Invalid key"); - throw_error_already_set(); - } - return i->second; - } - - static void - set_item(Container& container, index_type i, data_type const& v) - { - container[i] = v; - } - - static void - delete_item(Container& container, index_type i) - { - container.erase(i); - } - - static size_t - size(Container& container) - { - return container.size(); - } - - static bool - contains(Container& container, key_type const& key) - { - return container.find(key) != container.end(); - } - - static bool - compare_index(Container& container, index_type a, index_type b) - { - return container.key_comp()(a, b); - } - - static index_type - convert_index(Container& container, PyObject* i_) - { - extract i(i_); - if (i.check()) - { - return i(); - } - else - { - extract i(i_); - if (i.check()) - return i(); - } - - PyErr_SetString(PyExc_TypeError, "Invalid index type"); - throw_error_already_set(); - return index_type(); - } - }; - -}} // namespace boost::python - -#endif // MAP_INDEXING_SUITE_JDG20038_HPP diff --git a/environments/g4py/source/boost/vector_indexing_suite.hpp b/environments/g4py/source/boost/vector_indexing_suite.hpp deleted file mode 100644 index 96340779e2..0000000000 --- a/environments/g4py/source/boost/vector_indexing_suite.hpp +++ /dev/null @@ -1,243 +0,0 @@ -// (C) Copyright Joel de Guzman 2003. -// Distributed under the Boost Software License, Version 1.0. (See -// accompanying file LICENSE_1_0.txt or copy at -// http://www.boost.org/LICENSE_1_0.txt) - -#ifndef VECTOR_INDEXING_SUITE_JDG20036_HPP -# define VECTOR_INDEXING_SUITE_JDG20036_HPP - -# include "indexing_suite.hpp" -# include "container_utils.hpp" -# include - -namespace boost { namespace python { - - // Forward declaration - template - class vector_indexing_suite; - - namespace detail - { - template - class final_vector_derived_policies - : public vector_indexing_suite > {}; - } - - // The vector_indexing_suite class is a predefined indexing_suite derived - // class for wrapping std::vector (and std::vector like) classes. It provides - // all the policies required by the indexing_suite (see indexing_suite). - // Example usage: - // - // class X {...}; - // - // ... - // - // class_ >("XVec") - // .def(vector_indexing_suite >()) - // ; - // - // By default indexed elements are returned by proxy. This can be - // disabled by supplying *true* in the NoProxy template parameter. - // - template < - class Container, - bool NoProxy = false, - class DerivedPolicies - = detail::final_vector_derived_policies > - class vector_indexing_suite - : public indexing_suite - { - public: - - typedef typename Container::value_type data_type; - typedef typename Container::value_type key_type; - typedef typename Container::size_type index_type; - typedef typename Container::size_type size_type; - typedef typename Container::difference_type difference_type; - - template - static void - extension_def(Class& cl) - { - cl - .def("append", &base_append) - .def("push_back", &base_append) - .def("extend", &base_extend) - ; - } - - static - typename mpl::if_< - is_class - , data_type& - , data_type - >::type - get_item(Container& container, index_type i) - { - return container[i]; - } - - static object - get_slice(Container& container, index_type from, index_type to) - { - if (from > to) - return object(Container()); - return object(Container(container.begin()+from, container.begin()+to)); - } - - static void - set_item(Container& container, index_type i, data_type const& v) - { - container[i] = v; - } - - static void - set_slice(Container& container, index_type from, - index_type to, data_type const& v) - { - if (from > to) { - return; - } - else { - container.erase(container.begin()+from, container.begin()+to); - container.insert(container.begin()+from, v); - } - } - - template - static void - set_slice(Container& container, index_type from, - index_type to, Iter first, Iter last) - { - if (from > to) { - container.insert(container.begin()+from, first, last); - } - else { - container.erase(container.begin()+from, container.begin()+to); - container.insert(container.begin()+from, first, last); - } - } - - static void - delete_item(Container& container, index_type i) - { - container.erase(container.begin()+i); - } - - static void - delete_slice(Container& container, index_type from, index_type to) - { - if (from > to) { - // A null-op. - return; - } - container.erase(container.begin()+from, container.begin()+to); - } - - static size_t - size(Container& container) - { - return container.size(); - } - - static bool - contains(Container& container, key_type const& key) - { - return std::find(container.begin(), container.end(), key) - != container.end(); - } - - static index_type - get_min_index(Container& container) - { - return 0; - } - - static index_type - get_max_index(Container& container) - { - return container.size(); - } - - static bool - compare_index(Container& container, index_type a, index_type b) - { - return a < b; - } - - static index_type - convert_index(Container& container, PyObject* i_) - { - extract i(i_); - if (i.check()) - { - long index = i(); - if (index < 0) - index += DerivedPolicies::size(container); - if (index >= long(container.size()) || index < 0) - { - PyErr_SetString(PyExc_IndexError, "Index out of range"); - throw_error_already_set(); - } - return index; - } - - PyErr_SetString(PyExc_TypeError, "Invalid index type"); - throw_error_already_set(); - return index_type(); - } - - static void - append(Container& container, data_type const& v) - { - container.push_back(v); - } - - template - static void - extend(Container& container, Iter first, Iter last) - { - container.insert(container.end(), first, last); - } - - private: - - static void - base_append(Container& container, object v) - { - extract elem(v); - // try if elem is an exact Data - if (elem.check()) - { - DerivedPolicies::append(container, elem()); - } - else - { - // try to convert elem to data_type - extract elem(v); - if (elem.check()) - { - DerivedPolicies::append(container, elem()); - } - else - { - PyErr_SetString(PyExc_TypeError, - "Attempting to append an invalid type"); - throw_error_already_set(); - } - } - } - - static void - base_extend(Container& container, object v) - { - std::vector temp; - container_utils::extend_container(temp, v); - DerivedPolicies::extend(container, temp.begin(), temp.end()); - } - }; - -}} // namespace boost::python - -#endif // VECTOR_INDEXING_SUITE_JDG20036_HPP diff --git a/environments/g4py/source/global/CMakeLists.txt b/environments/g4py/source/global/CMakeLists.txt index 133cc60a6c..65f151a24f 100644 --- a/environments/g4py/source/global/CMakeLists.txt +++ b/environments/g4py/source/global/CMakeLists.txt @@ -23,5 +23,5 @@ geant4_add_pymodule(pyG4global pymodG4global.cc ) -target_link_libraries(pyG4global PRIVATE G4global G4track pyG4Boost) +target_link_libraries(pyG4global PRIVATE G4global G4track) install(TARGETS pyG4global DESTINATION "${CMAKE_INSTALL_PYTHONDIR}/Geant4") diff --git a/environments/g4py/source/global/pyG4UnitsTable.cc b/environments/g4py/source/global/pyG4UnitsTable.cc index 06a143f9d9..7adab84f48 100644 --- a/environments/g4py/source/global/pyG4UnitsTable.cc +++ b/environments/g4py/source/global/pyG4UnitsTable.cc @@ -29,7 +29,7 @@ // 2005 Q // ==================================================================== #include -#include "pyG4indexing.hh" +#include #include "G4UnitsTable.hh" using namespace boost::python; diff --git a/environments/g4py/source/global/pyglobals.cc b/environments/g4py/source/global/pyglobals.cc index aad3dd89dd..0a440b5e3b 100644 --- a/environments/g4py/source/global/pyglobals.cc +++ b/environments/g4py/source/global/pyglobals.cc @@ -29,7 +29,7 @@ // 2005 Q // ==================================================================== #include -#include "pyG4indexing.hh" +#include #include "G4Version.hh" #include "G4strstreambuf.hh" #include "G4UImanager.hh" diff --git a/environments/g4py/source/intercoms/pyG4UIcommandTree.cc b/environments/g4py/source/intercoms/pyG4UIcommandTree.cc index 05e59cb2d7..7a92ada318 100644 --- a/environments/g4py/source/intercoms/pyG4UIcommandTree.cc +++ b/environments/g4py/source/intercoms/pyG4UIcommandTree.cc @@ -66,7 +66,8 @@ void export_G4UIcommandTree() .def("CreateHTML", &G4UIcommandTree::CreateHTML) .def("GetGuidance", &G4UIcommandTree::GetGuidance, return_value_policy()) - .def("GetPathName", &G4UIcommandTree::GetPathName) + .def("GetPathName", &G4UIcommandTree::GetPathName, + return_value_policy()) // --- .def("GetTreeEntry", &G4UIcommandTree::GetTreeEntry) .def("GetCommandEntry", &G4UIcommandTree::GetCommandEntry) diff --git a/environments/g4py/source/intercoms/pyG4UIparameter.cc b/environments/g4py/source/intercoms/pyG4UIparameter.cc index 3be7ea5c98..78e8e4d5ba 100644 --- a/environments/g4py/source/intercoms/pyG4UIparameter.cc +++ b/environments/g4py/source/intercoms/pyG4UIparameter.cc @@ -45,13 +45,18 @@ void export_G4UIparameter() .def(init()) // --- .def("List", &G4UIparameter::List) - .def("GetDefaultValue", &G4UIparameter::GetDefaultValue) + .def("GetDefaultValue", &G4UIparameter::GetDefaultValue, + return_value_policy()) .def("GetParameterType", &G4UIparameter::GetParameterType) - .def("GetParameterRange", &G4UIparameter::GetParameterRange) - .def("GetParameterName", &G4UIparameter::GetParameterName) - .def("GetParameterCandidates", &G4UIparameter::GetParameterCandidates) + .def("GetParameterRange", &G4UIparameter::GetParameterRange, + return_value_policy()) + .def("GetParameterName", &G4UIparameter::GetParameterName, + return_value_policy()) + .def("GetParameterCandidates", &G4UIparameter::GetParameterCandidates, + return_value_policy()) .def("IsOmittable", &G4UIparameter::IsOmittable) .def("GetCurrentAsDefault", &G4UIparameter::GetCurrentAsDefault) - .def("GetParameterGuidance", &G4UIparameter::GetParameterGuidance) + .def("GetParameterGuidance", &G4UIparameter::GetParameterGuidance, + return_value_policy()) ; } diff --git a/environments/g4py/source/materials/CMakeLists.txt b/environments/g4py/source/materials/CMakeLists.txt index 662e4606e8..f50cc6c792 100644 --- a/environments/g4py/source/materials/CMakeLists.txt +++ b/environments/g4py/source/materials/CMakeLists.txt @@ -13,5 +13,5 @@ geant4_add_pymodule(pyG4materials pymodG4materials.cc ) -target_link_libraries(pyG4materials PRIVATE G4materials pyG4Boost) +target_link_libraries(pyG4materials PRIVATE G4materials) install(TARGETS pyG4materials DESTINATION "${CMAKE_INSTALL_PYTHONDIR}/Geant4") diff --git a/environments/g4py/source/materials/pyG4ElementTable.cc b/environments/g4py/source/materials/pyG4ElementTable.cc index 2398684dc5..9784807e29 100644 --- a/environments/g4py/source/materials/pyG4ElementTable.cc +++ b/environments/g4py/source/materials/pyG4ElementTable.cc @@ -29,7 +29,7 @@ // 2005 Q // ==================================================================== #include -#include "pyG4indexing.hh" +#include #include "G4Element.hh" #include "G4ElementTable.hh" diff --git a/environments/g4py/source/materials/pyG4ElementVector.cc b/environments/g4py/source/materials/pyG4ElementVector.cc index 76ca0f45d5..d2d935cd56 100644 --- a/environments/g4py/source/materials/pyG4ElementVector.cc +++ b/environments/g4py/source/materials/pyG4ElementVector.cc @@ -29,7 +29,7 @@ // 2005 Q // ==================================================================== #include -#include "pyG4indexing.hh" +#include #include "G4ElementVector.hh" using namespace boost::python; diff --git a/environments/g4py/source/materials/pyG4Isotope.cc b/environments/g4py/source/materials/pyG4Isotope.cc index 047fa74ffd..cafe8a05f5 100644 --- a/environments/g4py/source/materials/pyG4Isotope.cc +++ b/environments/g4py/source/materials/pyG4Isotope.cc @@ -29,8 +29,8 @@ // 2005 Q // ==================================================================== #include +#include #include "G4Version.hh" -#include "pyG4indexing.hh" #include "G4Isotope.hh" using namespace boost::python; diff --git a/environments/g4py/source/materials/pyG4MaterialTable.cc b/environments/g4py/source/materials/pyG4MaterialTable.cc index e0838198b2..b9a5f3b664 100644 --- a/environments/g4py/source/materials/pyG4MaterialTable.cc +++ b/environments/g4py/source/materials/pyG4MaterialTable.cc @@ -29,7 +29,7 @@ // 2005 Q // ==================================================================== #include -#include "pyG4indexing.hh" +#include #include "G4Material.hh" #include "G4MaterialTable.hh" diff --git a/environments/g4py/source/physics_lists/CMakeLists.txt b/environments/g4py/source/physics_lists/CMakeLists.txt index 7646835f28..be76a935c7 100644 --- a/environments/g4py/source/physics_lists/CMakeLists.txt +++ b/environments/g4py/source/physics_lists/CMakeLists.txt @@ -3,6 +3,7 @@ # library geant4_add_pymodule(pyG4physicslists pyPhysicsLists.cc + pyPhysListFactory.cc pymodG4physicslists.cc ) target_link_libraries(pyG4physicslists PRIVATE G4physicslists) diff --git a/environments/g4py/source/physics_lists/pyPhysListFactory.cc b/environments/g4py/source/physics_lists/pyPhysListFactory.cc new file mode 100644 index 0000000000..5a1f2112dc --- /dev/null +++ b/environments/g4py/source/physics_lists/pyPhysListFactory.cc @@ -0,0 +1,53 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// ==================================================================== +// pyPhysListFactory.cc +// +// 2020 Q +// ==================================================================== +#include +#include "G4PhysListFactory.hh" + +using namespace boost::python; + +// ==================================================================== +// module definition +// ==================================================================== +void export_PhysListFactory() +{ + class_ + ("G4PhysListFactory", "phys list factory") + .def("GetReferencePhysList", &G4PhysListFactory::GetReferencePhysList, + return_internal_reference<>()) + .def("ReferencePhysList", &G4PhysListFactory::ReferencePhysList, + return_internal_reference<>()) + .def("IsReferencePhysList", &G4PhysListFactory::IsReferencePhysList) + .def("AvailablePhysLists", &G4PhysListFactory::AvailablePhysLists, + return_value_policy()) + .def("AvailablePhysListsEM", &G4PhysListFactory::AvailablePhysListsEM, + return_value_policy()) + ; +} diff --git a/environments/g4py/source/physics_lists/pymodG4physicslists.cc b/environments/g4py/source/physics_lists/pymodG4physicslists.cc index 07e1b6e634..ba23846b42 100644 --- a/environments/g4py/source/physics_lists/pymodG4physicslists.cc +++ b/environments/g4py/source/physics_lists/pymodG4physicslists.cc @@ -36,9 +36,10 @@ using namespace boost::python; // module definition // ==================================================================== void export_PhysicsLists(); +void export_PhysListFactory(); BOOST_PYTHON_MODULE(G4physicslists) { export_PhysicsLists(); + export_PhysListFactory(); } - diff --git a/environments/g4py/source/processes/CMakeLists.txt b/environments/g4py/source/processes/CMakeLists.txt index 551842b6a7..39c3f3450b 100644 --- a/environments/g4py/source/processes/CMakeLists.txt +++ b/environments/g4py/source/processes/CMakeLists.txt @@ -14,5 +14,5 @@ geant4_add_pymodule(pyG4processes pymodG4processes.cc ) -target_link_libraries(pyG4processes PRIVATE G4processes pyG4Boost) +target_link_libraries(pyG4processes PRIVATE G4processes) install(TARGETS pyG4processes DESTINATION "${CMAKE_INSTALL_PYTHONDIR}/Geant4") diff --git a/environments/g4py/source/processes/pyG4ProcVector.cc b/environments/g4py/source/processes/pyG4ProcVector.cc index 33a0a67bce..7cd8507337 100644 --- a/environments/g4py/source/processes/pyG4ProcVector.cc +++ b/environments/g4py/source/processes/pyG4ProcVector.cc @@ -29,7 +29,7 @@ // 2005 Q // ==================================================================== #include -#include "pyG4indexing.hh" +#include #include "G4VProcess.hh" using namespace boost::python; diff --git a/environments/g4py/tests/CMakeLists.txt b/environments/g4py/tests/CMakeLists.txt index cac49a9d53..172298ade7 100644 --- a/environments/g4py/tests/CMakeLists.txt +++ b/environments/g4py/tests/CMakeLists.txt @@ -7,3 +7,4 @@ add_subdirectory(gtest04) add_subdirectory(gtest05) add_subdirectory(gtest06) add_subdirectory(gtest07) +add_subdirectory(gtest08) diff --git a/environments/g4py/tests/gtest08/CMakeLists.txt b/environments/g4py/tests/gtest08/CMakeLists.txt new file mode 100644 index 0000000000..aa44ddeaa5 --- /dev/null +++ b/environments/g4py/tests/gtest08/CMakeLists.txt @@ -0,0 +1,3 @@ +configure_file(test.py test.py) +add_test(NAME geant4py-test08 COMMAND ${PYTHON_EXECUTABLE} test.py) +set_tests_properties(geant4py-test08 PROPERTIES ENVIRONMENT "PYTHONPATH=${GEANT4_PYTHON_OUTPUT_DIR};${GEANT4_TEST_ENVIRONMENT}") \ No newline at end of file diff --git a/environments/g4py/tests/gtest08/test.py b/environments/g4py/tests/gtest08/test.py new file mode 100755 index 0000000000..5b03e6a769 --- /dev/null +++ b/environments/g4py/tests/gtest08/test.py @@ -0,0 +1,74 @@ +#!/usr/bin/python3 +# ================================================================== +# python script for Geant4Py test +# +# gtest09 +# - test for checking use of G4PhysListFactory +# ================================================================== + +from Geant4 import * + +# ================================================================== +# user actions in python +# ================================================================== +class MyDetectorConstruction(G4VUserDetectorConstruction): + "My Detector Construction" + + def __init__(self): + G4VUserDetectorConstruction.__init__(self) + + # ----------------------------------------------------------------- + def Construct(self): + # Python has automatic garbage collection system. + # Geometry objects must be defined as GLOBAL not to be deleted. + air= gNistManager.FindOrBuildMaterial("G4_AIR") + + # world volume + global sld_world, lv_world, pv_world + sld_world= G4Box("world", 1.*m, 1.*m, 1.*m) + lv_world= G4LogicalVolume(sld_world, air, "world") + pv_world= G4PVPlacement(G4Transform3D(), lv_world, "world", + None, False, 0) + + return pv_world + +class MyPrimaryGeneratorAction(G4VUserPrimaryGeneratorAction): + "My Primary Generator Action" + + def __init__(self): + G4VUserPrimaryGeneratorAction.__init__(self) + self.particleGun= G4ParticleGun(1) + + def GeneratePrimaries(self, event): + dx=0. + self.particleGun.SetParticleMomentumDirection(G4ThreeVector(dx, 0., 1.)) + self.particleGun.GeneratePrimaryVertex(event) + +# ================================================================== +# main +# ================================================================== +# set geometry +myDC = MyDetectorConstruction() +gRunManager.SetUserInitialization(myDC) + +# Create physics list +factory = G4PhysListFactory() +myPhysList = factory.GetReferencePhysList("FTFP_BERT") + +if myPhysList is None: + raise RuntimeError("No physics list named FTFP_BERT found") + +gRunManager.SetUserInitialization(myPhysList) + +# Event generator +myGenAction = MyPrimaryGeneratorAction() +myGenAction.particleGun.SetParticleByName("e-") +myGenAction.particleGun.SetParticleEnergy(200.*MeV) +myGenAction.particleGun.SetParticlePosition(G4ThreeVector(0.,0.,-14.9)*cm) + +gRunManager.SetUserAction(myGenAction) + +# Init, run terminate +gRunManager.Initialize() +gRunManager.BeamOn(10) +gTerminate() diff --git a/environments/zmq/pyclient/g4zmq.py b/environments/zmq/pyclient/g4zmq.py index 6aef5dc9e7..3da2b79e8e 100755 --- a/environments/zmq/pyclient/g4zmq.py +++ b/environments/zmq/pyclient/g4zmq.py @@ -1,4 +1,4 @@ -#/usr/bin/env python +#!/usr/bin/env python # ================================================================== # python client for zmq-geant4 # diff --git a/examples/.doxygen/Doxyfile b/examples/.doxygen/Doxyfile index 351755d776..73a3e0f971 100644 --- a/examples/.doxygen/Doxyfile +++ b/examples/.doxygen/Doxyfile @@ -152,7 +152,7 @@ FULL_PATH_NAMES = YES # will be relative from the directory where doxygen is started. # This tag requires that the tag FULL_PATH_NAMES is set to YES. -STRIP_FROM_PATH = /Users/ivana/work/packages/geant4/geant4_ref/examples/ +STRIP_FROM_PATH = /Users/ivana/work/packages/geant4/geant4-dev/examples/ # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the # path mentioned in the documentation of a class, which tells the reader which @@ -837,6 +837,7 @@ INPUT = Doxymain.h \ ../extended/exoticphysics/monopole/.README.txt \ ../extended/exoticphysics/phonon \ ../extended/exoticphysics/ucn \ + ../extended/exoticphysics/saxs \ ../extended/field \ ../extended/g3tog4 \ ../extended/geometry/.README.txt \ @@ -850,6 +851,7 @@ INPUT = Doxymain.h \ ../extended/hadronic/Hadr06/.README.txt \ ../extended/hadronic/Hadr07/.README.txt \ ../extended/hadronic/Hadr08/.README.txt \ + ../extended/hadronic/Hadr09/.README.txt \ ../extended/hadronic/FissionFragment \ ../extended/hadronic/NeutronSource/.README.txt \ ../extended/medical/.README.txt \ @@ -866,6 +868,7 @@ INPUT = Doxymain.h \ ../extended/medical/dna/chem3/.README.txt \ ../extended/medical/dna/chem4/.README.txt \ ../extended/medical/dna/chem5/.README.txt \ + ../extended/medical/dna/chem6/.README.txt \ ../extended/medical/dna/clustering/.README.txt \ ../extended/medical/dna/dnadamage1/.README.txt \ ../extended/medical/dna/dnaphysics/.README.txt \ diff --git a/examples/.doxygen/Doxyfile_standalone b/examples/.doxygen/Doxyfile_standalone index cd55935d8a..05dd637ee9 100644 --- a/examples/.doxygen/Doxyfile_standalone +++ b/examples/.doxygen/Doxyfile_standalone @@ -152,7 +152,7 @@ FULL_PATH_NAMES = YES # will be relative from the directory where doxygen is started. # This tag requires that the tag FULL_PATH_NAMES is set to YES. -STRIP_FROM_PATH = /Users/ivana/work/packages/geant4/geant4_ref/examples/ +STRIP_FROM_PATH = /Users/ivana/work/packages/geant4/geant4-dev/examples/ # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of the # path mentioned in the documentation of a class, which tells the reader which diff --git a/examples/.doxygen/Doxyfile_test b/examples/.doxygen/Doxyfile_test index a1a03cb2ec..92e61813fd 100644 --- a/examples/.doxygen/Doxyfile_test +++ b/examples/.doxygen/Doxyfile_test @@ -125,7 +125,7 @@ FULL_PATH_NAMES = YES # If left blank the directory from which doxygen is run is used as the # path to strip. -STRIP_FROM_PATH = /home/work/packages/geant4/geant4_ref/examples/ +STRIP_FROM_PATH = /home/work/packages/geant4/geant4-dev/examples/ # The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of # the path mentioned in the documentation of a class, which tells diff --git a/examples/.doxygen/Doxymodules_exoticphysics.h b/examples/.doxygen/Doxymodules_exoticphysics.h index 0070f71ef1..aba08f0aa9 100644 --- a/examples/.doxygen/Doxymodules_exoticphysics.h +++ b/examples/.doxygen/Doxymodules_exoticphysics.h @@ -36,21 +36,6 @@ /** @} */ -/** @defgroup extended_exoticphysics_ucn ucn - * Exotic physics example ucn - * @ingroup extended_exoticphysics - * @{ - */ - - class ExUCNActionInitialization {}; - class ExUCNDetectorConstruction {}; - class ExUCNExtraPhysics {}; - class ExUCNPhysicsList {}; - class ExUCNPrimaryGeneratorAction {}; - class ExUCNRunAction {}; - -/** @} */ - /** @defgroup extended_exoticphysics_phonon phonon * Exotic physics example phonon * @ingroup extended_exoticphysics @@ -67,4 +52,43 @@ /** @} */ +/** @defgroup extended_exoticphysics_saxs saxs + * Exotic physics example saxs + * @ingroup extended_exoticphysics + * @{ + */ + + class G4EmPenelopePhysicsMI {}; + class SAXSActionInitialization {}; + class SAXSAnalysis {}; + class SAXSDetectorConstruction {}; + class SAXSDetectorConstructionMessenger {}; + class SAXSEventAction {}; + class SAXSPhysicsList {}; + class SAXSPhysicsListMessenger {}; + class SAXSPrimaryGeneratorAction {}; + class SAXSRunAction {}; + class SAXSRunActionMessenger {}; + class SAXSSensitiveDetector {}; + class SAXSSensitiveDetectorHit {}; + class SAXSSensitiveDetectorMessenger {}; + class SAXSSteppingAction {}; + +/** @} */ + +/** @defgroup extended_exoticphysics_ucn ucn + * Exotic physics example ucn + * @ingroup extended_exoticphysics + * @{ + */ + + class ExUCNActionInitialization {}; + class ExUCNDetectorConstruction {}; + class ExUCNExtraPhysics {}; + class ExUCNPhysicsList {}; + class ExUCNPrimaryGeneratorAction {}; + class ExUCNRunAction {}; + +/** @} */ + /** @} */ diff --git a/examples/.doxygen/Doxymodules_hadronic.h b/examples/.doxygen/Doxymodules_hadronic.h index 3645ccf609..05f3ef04d7 100644 --- a/examples/.doxygen/Doxymodules_hadronic.h +++ b/examples/.doxygen/Doxymodules_hadronic.h @@ -81,6 +81,17 @@ /** @} */ +/** @} */ + +/** @defgroup extended_hadronic_Hadr09 Hadr09 + * The Hadr09 hadronic classes have their + * standalone documentation + * @ingroup extended_hadronic + * @{ + */ + +/** @} */ + /** @defgroup extended_hadronic_FissionFragment FissionFragment * Hadronic example FissionFragment * @ingroup extended_hadronic diff --git a/examples/.doxygen/Doxymodules_medical.h b/examples/.doxygen/Doxymodules_medical.h index b19d528a56..e598155150 100644 --- a/examples/.doxygen/Doxymodules_medical.h +++ b/examples/.doxygen/Doxymodules_medical.h @@ -167,6 +167,15 @@ /** @} */ +/** @defgroup extended_medical_dna_chem6 chem6 + * Medical dna chem6 example has its + * standalone documentation + * @ingroup extended_medical_dna + * @{ + */ + +/** @} */ + /** @defgroup extended_medical_dna_clustering clustering * Medical dna clustering example has its * standalone documentation diff --git a/examples/.doxygen/Doxymodules_parameterisations.h b/examples/.doxygen/Doxymodules_parameterisations.h index 91be472f54..21d2a78106 100644 --- a/examples/.doxygen/Doxymodules_parameterisations.h +++ b/examples/.doxygen/Doxymodules_parameterisations.h @@ -51,6 +51,24 @@ class Par02TrackingAction {}; /** @} */ +/** @defgroup extended_parameterisations_Par03 Par03 + * parameterisations example Par03 + * @{ + */ + +class Par03ActionInitialisation {}; +class Par03DetectorConstruction {}; +class Par03DetectorMessenger {}; +class Par03EMShowerMessenger {}; +class Par03EMShowerModel {}; +class Par03EventAction {}; +class Par03Hit {}; +class Par03PrimaryGeneratorAction {}; +class Par03RunAction {}; +class Par03SensitiveDetector {}; + +/** @} */ + /** @defgroup extended_parameterisations_gflash gflash * Extended examples parameterisations gflash classes * @{ diff --git a/examples/.doxygen/History b/examples/.doxygen/History index c8cb26f55f..cc345cf968 100644 --- a/examples/.doxygen/History +++ b/examples/.doxygen/History @@ -17,6 +17,23 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +9/11/20 I.Hrivnacova (doxygen-V10-06-03) +- Added new extended example Hadr09 in documentation + +6/11/20 I.Hrivnacova (doxygen-V10-06-02) +- Added new extended examples in documentation: + - exoticphysics/saxs + - medical/dna/chem6 + - parameterisation/Par03 + +6/8/20 I.Hrivnacova (doxygen-V10-06-01) +- More fixes in header/footer.html links (thanks to Gunter) + +3/8/20 I.Hrivnacova (doxygen-V10-06-00) +- Updated obsolete links to Geant4 pages in header/footer.html +- Removed not working links to search in Geant4 and web master +- Updated logo and color style + 28/11/19 I.Hrivnacova (doxygen-V10-05-03) - Updated for reorganization of gflash examples, added new GB07 in modules diff --git a/examples/.doxygen/extra_stylesheet.css b/examples/.doxygen/extra_stylesheet.css index 53d9c9109a..7fee8f57bc 100644 --- a/examples/.doxygen/extra_stylesheet.css +++ b/examples/.doxygen/extra_stylesheet.css @@ -4,8 +4,8 @@ /* header style */ #g4header { color: black; - background-color: #CCCC99; - border: 1px solid #999966; + background-color: #cfd6ed; + border: 1px solid #9ca3ba; /* border: 10px solid white; */ padding-top: .5em; padding-right: 1em; @@ -16,14 +16,14 @@ #g4header img { padding-left: 1em; - background: #cccc99; + background: #cfd6ed; } #breadcrumb { color: #003366; - background-color: #9999FF; + background-color: #cfd6ed; border: 0; - border-right: 1em solid white; +/* border-right: 1em solid white; */ font-weight: bold; text-align: left; font-size: 90%; diff --git a/examples/.doxygen/footer.html b/examples/.doxygen/footer.html index dee7adfb3c..6856ad1557 100644 --- a/examples/.doxygen/footer.html +++ b/examples/.doxygen/footer.html @@ -19,21 +19,9 @@ $generatedby  
    -
    Applications | -User Support | -Results & Publications | -Collaboration | -Site Map
    -

    - -

    +Applications | + User Support | + Publications | +Collaboration
    diff --git a/examples/.doxygen/generate_standalone.sh b/examples/.doxygen/generate_standalone.sh index d76f457f57..b4e49c9757 100755 --- a/examples/.doxygen/generate_standalone.sh +++ b/examples/.doxygen/generate_standalone.sh @@ -47,12 +47,12 @@ generate() { } # process examples in second level directory in extended -for DIR in analysis/shared analysis/AnaEx01 analysis/AnaEx02 analysis/AnaEx03 electromagnetic/TestEm0 electromagnetic/TestEm1 electromagnetic/TestEm2 electromagnetic/TestEm3 electromagnetic/TestEm4 electromagnetic/TestEm5 electromagnetic/TestEm6 electromagnetic/TestEm7 electromagnetic/TestEm8 electromagnetic/TestEm9 electromagnetic/TestEm10 electromagnetic/TestEm11 electromagnetic/TestEm12 electromagnetic/TestEm13 electromagnetic/TestEm14 electromagnetic/TestEm15 electromagnetic/TestEm16 electromagnetic/TestEm17 electromagnetic/TestEm18 eventgenerator/particleGun eventgenerator/exgps eventgenerator/userPrimaryGenerator exoticphysics/channeling exoticphysics/dmparticle exoticphysics/monopole geometry/transforms hadronic/Hadr00 hadronic/Hadr01 hadronic/Hadr02 hadronic/Hadr03 hadronic/Hadr04 hadronic/Hadr06 hadronic/Hadr07 hadronic/Hadr08 hadronic/NeutronSource medical/electronScattering medical/electronScattering2 medical/fanoCavity medical/fanoCavity2 medical/GammaTherapy optical/OpNovice2 physicslists/extensibleFactory physicslists/factory physicslists/genericPL polarisation/Pol01 radioactivedecay/Activation radioactivedecay/rdecay01 radioactivedecay/rdecay02; do +for DIR in analysis/shared analysis/AnaEx01 analysis/AnaEx02 analysis/AnaEx03 electromagnetic/TestEm0 electromagnetic/TestEm1 electromagnetic/TestEm2 electromagnetic/TestEm3 electromagnetic/TestEm4 electromagnetic/TestEm5 electromagnetic/TestEm6 electromagnetic/TestEm7 electromagnetic/TestEm8 electromagnetic/TestEm9 electromagnetic/TestEm10 electromagnetic/TestEm11 electromagnetic/TestEm12 electromagnetic/TestEm13 electromagnetic/TestEm14 electromagnetic/TestEm15 electromagnetic/TestEm16 electromagnetic/TestEm17 electromagnetic/TestEm18 eventgenerator/particleGun eventgenerator/exgps eventgenerator/userPrimaryGenerator exoticphysics/channeling exoticphysics/dmparticle exoticphysics/monopole geometry/transforms hadronic/Hadr00 hadronic/Hadr01 hadronic/Hadr02 hadronic/Hadr03 hadronic/Hadr04 hadronic/Hadr06 hadronic/Hadr07 hadronic/Hadr08 hadronic/Hadr09 hadronic/NeutronSource medical/electronScattering medical/electronScattering2 medical/fanoCavity medical/fanoCavity2 medical/GammaTherapy optical/OpNovice2 physicslists/extensibleFactory physicslists/factory physicslists/genericPL polarisation/Pol01 radioactivedecay/Activation radioactivedecay/rdecay01 radioactivedecay/rdecay02; do generate ${DIR} ${BACK_PATH2} done # process examples in third level directory in extended -for DIR in eventgenerator/HepMC/MCTruth medical/dna/chem1 medical/dna/chem2 medical/dna/chem3 medical/dna/chem4 medical/dna/chem5 medical/dna/clustering medical/dna/dnadamage1 medical/dna/dnaphysics medical/dna/icsd medical/dna/mfp medical/dna/microdosimetry medical/dna/microprox medical/dna/microyz medical/dna/neuron medical/dna/pdb4dna medical/dna/range medical/dna/slowing medical/dna/splitting medical/dna/spower medical/dna/svalue medical/dna/wholeNuclearDNA medical/dna/wvalue parameterisations/gflash/gflasha parallel/TopC/ParN02 parallel/TopC/ParN04; do +for DIR in eventgenerator/HepMC/MCTruth medical/dna/chem1 medical/dna/chem2 medical/dna/chem3 medical/dna/chem4 medical/dna/chem5 medical/dna/chem6 medical/dna/clustering medical/dna/dnadamage1 medical/dna/dnaphysics medical/dna/icsd medical/dna/mfp medical/dna/microdosimetry medical/dna/microprox medical/dna/microyz medical/dna/neuron medical/dna/pdb4dna medical/dna/range medical/dna/slowing medical/dna/splitting medical/dna/spower medical/dna/svalue medical/dna/wholeNuclearDNA medical/dna/wvalue parameterisations/gflash/gflasha parallel/TopC/ParN02 parallel/TopC/ParN04; do generate ${DIR} ${BACK_PATH3} done diff --git a/examples/.doxygen/header.html b/examples/.doxygen/header.html index e68f81183c..cd6eacae1f 100644 --- a/examples/.doxygen/header.html +++ b/examples/.doxygen/header.html @@ -26,42 +26,29 @@ $extrastylesheet
    - Geant4 Home + Geant4 Home - Download - | User - Forum | - Gallery
    - - Contact Us
    -
    - - - - - - - - -
    + Download | + User Forum
    | + Contact Us | + Bug Reports
    + -
    + + - - diff --git a/examples/.doxygen/images/geanttiny.gif b/examples/.doxygen/images/geanttiny.gif index bc6bf5b2162abb7bd118917e43e87977bf400b91..c53ede797f5334057e4dca250228eb1cbc215a4e 100644 GIT binary patch literal 70077 zcmZ6y1yohr7cac&ZX~1|>6Gqn5RmQ`>5>kW?(UTC?vhlxyW`N^`5pi7UGIG#<1o%R zYp?vxTyxGHqO2%|g7_8@000yjY4HyL0JR4I5DM_H;Fh>!iD>W_g1xks69C{){rQKG z`9OIF0EkLfVq(h5mUhl|PL_7|q%vY+r1p+>=2oB00N~4FhN^{{>OPLZ?dp}NT(Dof zoZW{v@T4C^!~C#gsOiWM&}Db+ z7aaQgal4#h_N{q4ob)dI@W1C6XACb}? zK!>k2C3AYFfB^1%`1$F{yWlzih%Zw}@IaSBS{Dmp&@0-3Xo@a`-#3UZ=NN7|ct31F z*dtQ301%dh@XJW1Rt2)50mC5^<1Ij$5iq3j-JJsbGVW45Apo6tvNsUfF#su+S+F=@ z$p@5;eGHWVG+6*_bGcp~V4e|Rke1uFdlTmzLFaoZ@uh{mD&pfz=pHW#0vv+?OQ)S zSU;PWT&fdjOMRqlm)kJ&8Z_a0AbWpNZuXw^@(VTyjRA!S(6TX zO9j&*Qam;Mk}aP+L^SqYAJycm>E;^4Bb4A8Cs6fC5W+Ktu}IGZ>PC(RUDLU1^A-Ru zTJ5^0Y2l&#EWd7yxxJnWJxgU%0e~b(ySjs z)kxK)i7o^jA$fvyC0kpruD9PLbCJePomo?(aI(|J z9qZl-gul-Ljh9-YEk+574X||W;lZ)@er93n?-8x$WO4a7Jm1mgh8ls8k6m!s2jAkBO{kzo|`cB))Lq9)~a&Pxdme-fmktVTw`)* zUurLD59-Pd871(|*MVRQTKqITI6Mn{H@wPZ`2zf@F#G{E7B1GqWKarPik-S9T?3uh zo0#8-39<>)2?TV^YQ-f5C95S!>X+(6YEi}ds@@fn>g=jp#R$`hrRpUa%7>~1susn3 zML{JNMRsaJKYX;FLtwRf~NRvtcU=jElj%f30=iLeYg3JpnyZZnbl0! zx+F0vQL|LKRHanvu>F0-abZS5yF{zjqd%(1fGmwJjg&>yC`<-ObwPEd5U~(PL4fzV zf~mwhpCG4I+^y5L@FY32L*Fk`-mY-fy&d#G=*|4B_H6S|crAsj30sRy3A=0rlC#5}Nct|F$_BP^D0lwg#!@hzr#f@`GJw)k=&8l6wWjO);Ts%8YpcpZLQHz`-?V1Ls3JMnM}>Lc7fJO zL!0e)Z62+BO?7R(TFLT^a;n+Z^43C(!e+%d#nQ}Ki=L|UhF=ZEjrdhN^RP=54K@wl zMi$1n7L9!sJtuMPao#Q75zhi}C_xLTr9|39K2CLx*t{QkS5rsRPlUYtt`hf|Ei}i_ z$L86$8nA}m^;%`9rcFs%;94|0eZ3403y}*LVoDNZN+alB8EoH{b-s4c+whpY&Pc0G z`*~cnRC)6L#OfqyIcu0B>s_W6yVH2jpxC;~&V&$BRsxIlTA7cMn3BImJ&1zYggHi| ze6Ff7->u}<=oDA*M$j>9OK^*yYn5$P%V3zRt8uV#NU6sz)8PA>m@mbv>8r=<1W@Ql z1z`ad;xFQ_1NnI8;YHRNDa5;Ec2l!(EE1mGEb>MqDxf@Ir@NfYa_}g+oa`2qJQ_1< zh5B9DXK!{K&S=*ttj7nL=6le0jXH zoOFUEOrQ7{xmq|{g!-AxwT5RjGc;vB%MtQ0(N(;+{oJwkbbJ}KnX!qq<%yfjJg8^y zo-_LM>U$whF%u>OZ=$e#up)Q-nFu;v5l%SO1(q9CB%=FIqMsJz%oFb?g6G9_>4+6C zr0EnqVvl0lINd4x*z*~7n!nK$N4LqN$giaFX5yr}lG?Bd@V2vljg5(R5G^57h-XUh~pt8`j87oB;RBx;DBDMvD=#L9}2`O`CR(4z9++OvAi$B;+?wVreG* z$nkLP@1rmD{)*WBp zNGvfYjnFQ&er*tI&g8naA2&p^A`_{kz0R8@+Nx8;9cos7a`2I11E;x#sB^qDcX@ z4^gx9hf=5mBpojqr*4cW?@`nv()%|l?8V);_iqu_Zi!KN7hS_W%QoPqNL-05h?qZ# zre35KN;^C=Clv%pRQ5B zJj!tQ!oGffHOS(*8T5vO^oNGb_0tW&4GkvmFV!|F2mfhSW_o#!+v!ZrzjWj$*_4-m zw5dPX@_e18AT%AU6H%ND+>d2LMUCMIKHA!W>Kci!E5 z6?ZHBD=BQ;+;mzdjGuLW(rNB0DSW{HKE`!FrL(cV{(8HUI3TgBSEL6<(e;)?m zjlfUC^csq7rvKAFfMKtf)G>Q2q1Or1_H$w8-*!?YURLS0LLVEt5U2k$bpUCw?O=f7 z6#*RTsWC`CRfYyn1ReVSd=Q+CtGwXh1I@!vR~3a-krm;8MosuC$8wXCR~B;#l**LX0tM2t2RM#) zG=GQr|7R~0#Na9ZK7q&F>lLn%Y~DHN{LL7ps`Ss4BGJM$uqx@Lj#CmP%g$Nqk`e!$ zGysoRIi+3&(js+kxVPi0!-U1_@VoiS1pSUMkMO^ppm`_IuBcnUK&4yhV}kxK4Mfl> z$3sNKO;1oX{<|q-cww2%e}4vmXUl4<@VUt0JfQJW68INqFkJi& zFM6mp$Z%14e>p6G)L#)9lTf>Yu6|kJ|LskxuVMQBhyBW;znXv)9y|!XEob?~ zOybjBIytA;3Fmcz#c@`-imm$-)XviVwA|kn@{k-INW{fC-GjUz{`BhhllzgS{^9gr z2$%)~1mPJHG=$7UF8?T`13|os43M*zHP3&jyZ6<29N{lVfY}ho`R}g)JV<3^520Fp zcf*Q+hIem~w&kz9U-qp+<{DKi|E>e(aJXosIH63I_(fr$DEm<9qn>n?2 zNu)>6KV%K45@R}f4i30+FW?>n0EJJ_ZC!XS$bYdBf%F#Mc=!TfMG~F$eK!|*Q*82= zIACUl8cgo0@4ThmSK7|Pg7YJ5++v4u@X-J2)GYRr)Hbd2FEj*nwX@20%XmRq{R?K5{?)uzC__XU(-(^XlcI?0+^y{x-hP8~7r3e^gi* z`+9?R@GtGi-!j*`z z+yK^8%a1%Hf!|FA3vqpaar*NVV$*Ob&EaFeYpB4#3ROBA4O2C?;$-qi!x%f$!++R0 zxI^^+r{i$0@Tyl|6Lt=t4YU;hqo>jlFkM7GODh-JB`4Xh`TXZpoARW%ZvSG72N@ma z8SbvozOQuv^S61^nGERxzozziq3sguv?TXG7Sk9)YkVv~@7R|}sr|3{5b1@i$<89P zj@Kd9*eQ4fZen!sFAGa|eECJ%MgKB(`a4q*A$kYY;7^nPRp@_kFjob=>Q($!z=iND zGxu@P-H|Qv{@3E9b8c_?yj5%Pp*@W=HO}i-X~slVx6$ z_>UKH1-IQo^!>2f)&JTj!f|K|Y=i%Gbl`J4NpWxCqx1juu)tygO?JrhuWUnl!*@09 z<^2Z;>FhY^f4N+eJD#!v4Su-Zy}0fH|347qc4o6#7p^N@M=n(+X6pRc`d-n1CGz_p zkC1aMR+uIjWAJsEy^TV{=N@~flJftc>n|v4sCyOBk9<=4+RRP_XlqBGt>O0jOr%x@ ze6=;4tJz28SJncBi%J>--V^=>c9PEis1@ULY2L!`vjptQWUgv+K`bD9d-g)0Icw6ZkqmpaQALG;u^Q095 zFu_Dac42uqbEyDo>J`X3L8MJT3wV&$Bz2eF@#0+hoL8{-JzQhV`8OXqVHnxg;rw2o z3j~plendgYzQpfF+1~$nIEXDBMVZ8xMlVz-xR+)9-bgh(mUv!xw~TpUvs(%)oWYaz zf0&vZMY0~|xsil<`Eyo>&jmBns8YK$LC9mvO~&(uN$2mofZVgA(a7Niz!m~nF~{X| zHZ_y}%ucN5#V2GEsT$0B*h&9+k#~k0Etk|z-O{}jB^4O#LOMr4Su#tRSr|$b&G)}oZJGnP%|l)PCyFg8uD$8Ka1#+gdT<7139*g~E$lke`A)XX z>RcUV%dPzE)z*|0e^mp^)ewU*L0* z!Vv&G7mSHhOKl*7NDBRo3w7W1<6K$pSI)L(9AWgXC5x7TH$&b?fG!(ga}9O3M4{x# z7pP71;Rh$e6)mIy3kd+d@;srzgoh9Lypwc8&HwzRp9>N~P!GY}m+mM?j%9f!WsB$6 zy8_0X@;n`7DS;5pTizpb!ATfP+&#q&JMT_I(c7rR@%EaSCG!s z@BIrZNq^x+@q2e*($jZ-N#MlP>AH!@*IL_JM^8lgJpbJ%()vyUTKL?xLq+}**FH{n z{tyMN{rfjOTB=b41NoUHPV@@h9gTHm;)S&i-vo47Fmm_&Y2C@d$KQbtj>QcRndT7} z5H|;I=hB51pyEJzXN6)S^^XehPHEN8*8?0Z#-fn z3#p^Z@zQwmH?e1Lo&ndy#DwW_EuPJIUh!@l&FPhQfy%fm18JdZq>)S^DwDX`Z02ofKN}IO$-M-)rJY02we7IcM0@ zLkR1$M8m*zjlGbN+@=|D#4~G8-YM0TVD)6={@lc85mmuV&vJ3)^co~FN0Bm5V`Jg4`;re0)UAw=>=HO*ysLoq8Y z8LA8v3h2=sE1x|N^pZswiO`@U*#HKb)@4Qg#7BPM_im$pzusTJ|!Tw#2aJ*O) z6NGZQ&z1{qx5Sr;?z+eU`Ho7KKEz-O}Y^ zzy|qmC93%}ZR=gG`q|+%-#c$#S>u}ugsssveyUSZ&u~v(zclHhDDmSTVpC7!bpUq$ z8~JE5L|d?;=%-|%4q)x}3h9?a7dwTahTH`KP$uEf{1}0woJF#595YH8BFNZp!w;nN zyq^R17l}jp*3Qm_PR3nE#PnpsKl#55XA)Ght$l=41`6I9$H|qFc?lHZ<2b2sZ4S|we!O{_a16Gz=4CL_fev&1VQP2d!nXSS<%iU-C)@HR zkHpPFR^_fQcb7@t&ma5m&rLeF9a^a)AkKbO7~-H3ZB9lEy)8h5w1)Mwd$BvjLc&%2 zxc`ABu!v<0t_nT!?tkiYCxL{i$fih>1Jk$3MekD6*jwp-aW`bkygVhaDe$w4~@cH)DxOCxd`wr0lMD!)_;@CR(c2BTo~PxS?;Q z%eiarr-Diwm-(q{4WEykDz)se4qyO8unrOes>;DyHK*1BTZYN@$)Lunkq~Jbz%Mj32AGUUqx&v+bWLRhSgFuJjUY*MgW9#913FFXs?d552Mwa0v*)Y0+&P_bn@LrAZNL8aK5V2h8o&pSt7QkPPam;^hK2ZaNz3%1q&|u`y)o4qG4v<`Jpp z5lfj`8K{I^sYDRXqLZY{qPn&!pqGm1gZ+0&{lW!q~Ij~DB|3oI@Yr1GM zCw0p~-6}PfO5po{Abqi$IZO$2XIo8Bzz`C}R&VmC8q84BUo6=D}oP(Pa8=N1lBX z2|3-cO3Us;fUvrt2K>5#!L#G{!-)aJ*>OfcJW>Ziq^`{>gX}fdo^KKeqosW zlzQkvn)|nIP>HMPj2Bn{4B@Xj>|s7v9M90)FyvKGNVW@GkSC@1$x)9fz&~4(D0p2! z`$dgM5*(3x)1L3yHD+8+b~^bCPahGKgMtuyB9_qS$_l0Hdz~ofTzBnt<`hsyn(%RL zahvuUq@_a9qOj*|%?vFX?u~?UhpG3pn)b|tt4NjyH*Il`XI-6f+WxxqE>}vVlVhkSZ5}o3roCy}5}s-pE#E zAktxd72$6gDwi{&XLrS|<^}YSPZPGL=c}B% z1c71VkcqZl>+0ZB^+~lm)y?-7J>+uA8<^u?x~*_O12g^c#~^1w!u+Q|05>BCBhXn% zd~EY(&yo*0s}ePI(#SNqkYT+C9#s!XSY@z111~*`2CrX{HI!Q^Xr%u6kI=+e^NBzb zbv?eE>c`TJd||{wiV69S_w_q!cO+R-eDPUHpcGmXjc;u60+;qB9eKPG7Gc1wexty1;1=;YvkxL zx3ekL(@W1dw6Hpx-NDgd)9I`12NJFGYcY*+M*rX#?kw1K>iJ=ZL$2rh-DA%=erXDj zg`&cWzxArmYcU^hYifH#8h42E=I{>D99V1b9dU;?%sM)|5{i(HBkLgr)(m2aJ>C_6 z!sTF;2Kxc9dH^+4@cTWV>T5z}y;@J*KT{PA1*y1j2ZTvW0Djg&Bj0`CVN&MP zY8dm8%nuzX2b|3(Hh@gd&O!s6C$xLr)VYpOPf|Ti7f>kYyj;6Ki!z{&QS5!IhxGR2 z^(wZ>D+#f*Rb;pL%HNYFdjBHz(uY(o>6hUbX%Si`w1GsS**)S-)}4_ zP)1&BLmef`)x|6WX3iAAF;R?o^GL}Eg=uJ% zGx@^zI$NyAn9aG2#Ou{r5}6;jIBvG5XgE1p43xHQrle$hV@;*C6kGng9}O;qKAuV! zEM>VY9%{==owLgO-89bDeAwHh2>u&@6ah&Tka`M_SU;N0Xf8`2Z z)x}i6<q3kxg)~Q}jf?5)Oe$@HMoCg9no$)vw8iUSr-TBaVsL%xFj;&rb z8WaQ%rm(`^!nSx1CCr8k^zkHgp8QHgWAY(3L_s$U zDGKKJqL0WmLFI<$>z4+Rw#SY@gO#h0%e}cQZX1UVn=xx7R1Lf46y3!~jUNW?=POYu z_^XUDFO8Emv62U5@k1w3ljvb=m0Dt+^`b?7ZI8+;6Zp10;)m-fneksWKg*2V z6*rp2ate?}SdgMBToUM`LbHB}hvLTV!dYsgnkD$3#g)pzInBc%$bHHFNG+&u{rtt$ zO}{m}EpM2MGsnJ5{C@;a-F$l6MT=&Ro4wQH zJl&{xPs%YT+PUwJsgmR^!8q`4wrvjXDyfbkhe~(Cb~#P+i4U9RSCFp@AyCc3HqxNj zy1f;DM+|A^9Yxp61KRZ^TIc<;moEx>%RLuv)&3}uowhc0{2n`v7PkwJU2Y4XxKHxf z37mCdNu(iZ>FO+Yle{Z#rqN6w0nlTDp8?V`8`h}xVrY*XF*%!0CfFE{5zG||_ z;J+LG2DIlBiE)&>G=cgkDEXV*j`?&piQAJKmba{Ouu$+(0O*JQy5Od+ZZtd-_7+F* zYAY_Q{iw!Cy~PHdax^GYy3^r@qG}NZDny zvGog*_tUSM*0D?Y0*jURL+=vvX7#w{wmuuok2Tximv*!`Wz2ScLpOT789NT>3>pN* zkg$puGJ8RDg2SeS>c7p1c}N0=zM-rbz^A0A|7%S z1pA#$V0cW0u2C_pIYy!?Mor+M-)^`TiX>u@!Pk&Yrx|}!;2cpir zC}5(;*FnDg^m@^{W|O6+9^*uTX1;<5QB%aiS3PVrRhm{xGHacitcelRjmn1af$;9IcW>iOn5Os%cH-Dpbz7&P!5 z=0~7M&>n71#lv|1j4-+>d;mS=B#a28Ni5IW-54}JWLy_?H}>GoC$^Zf@e(p0G01uJ zZe6Zjw=gGSsGQ$Fbq69`32bmAk|tb5*kDPyMSto}c}a$_&q!Twg~SX~;xQdoQq-&z zWB3Uk@?U%4%{n{(2^Pdx=9e9VGZTZNAFldZr?RHD6Zw!?@o}cHwaVD__D@{}Zd#9F zD&u#b#8qo;v7xg!why9b_>4v0OX)VRptN&|yqyWKspWSXXp=rY9;#MFCar?EL31){ z?CX}INFAST&7u-rs%~UV1^qFPq9Gg3?R+wX9_MlBHbibeK2afFd=!B|AFoNAnFBQR zRc;YYET0#-J`p#a_wyV()8o5r_ax>d^xluJ51waa{Rt+Kb6NB|TuOFAcNr901p9n- z5))2yX=*JWK|QP^6*Xjoo`6wt4uTfw>dHy`$p^21lo~R|KwtNk0%P@1G5MnhksqYO zWsne#7BPf8M!XivNI3j^n1b9jEv4ht%l&sUiMiQ$SHJ$7o-f-Y3EN9rcA&rp^Iw9 zauDk|JEgY}b4QT|K4R9|hL{#EHMiHLoD7na{4yrqO&#-?6^x>sKE_|oGiu&mf`d+X zQm7t4I2w_%y{H&1ECe%^VE1g>`f?`W zH@5rfXH2LQ#V-w0+Au+JAsmT^)yBA2LS(#6LZBqFEPQWNgsZFjK}k zir_E1*mWws9p2soiB7?GtvUjq^H-0uBrxw>Z#^D`{k_qzwJCm27y&QNrfGJo?`s`iG9bOHQ~t$QCDFFJhEH4?Z!FA`3(vEay@Nxm7C8dD6Oe2R7L2P|mTVQ3FrzkOlx zufyp9{N=w$3@b(}%uio>PUHUg#?NZlrekw%9E;^8Dp2juz^sB?TgTdR!s*LT|3?=A zPBHXwGQUu;hW(bm)3Lgw)HHQ)guPEDLR37<9km`f`jfr1hbdcY%qB?Ovu*%gDxgtW z!DZKyBv)tHXelUqN8khX1AN8H?1R>~+UJY!D{+b3Zv7mZC&!^yRGs&UCyt*7BB9*8 zem5{OT5BD%t{+HTSGG3`9%{GbhkwBV2J5L;!H#0j$MgYDRaC9hm5L_nD4ObDsV94% z-xgYh;sODo%r;HU2QyqB_4L6GTJ8P;6BIW|7o770COG3`Ak4k4-|cnsyNORh7CmdSj0Jp4NeU z6zLDf9HLMnkU(FVYI+cY*FeLu?ac%%($8VwhY$D1Dx6E|Vk zPNQ%2;G9>u3*?xrzZ`l}4OF&X{9b@)sSlUFfY3EoC|kP%r9JzPrsu3$YB_TK36N4! zn-VH1jPhj0ab7p=zj$l^kK=2aJ#=-Xo||@OvDkxJEZ1DtkJFr-%=yhx%CO(yXsG<; z2Io#Tk&B>Na3vk*p9{E^{ItF!0DRiD$88OfaqPye3zqfa;L-pJU^Ig~Qp)2L&c3E| z@oZStq@$EBWe!4k<=2crZ%MmXsvZlUguNZpehibvbDCgu*im^S$+6(R zyVWQ8UL(-j=Dl`I4CK7$`Q6Nl<4!=ve1zN`~ih9 z4xnv*+?lex#^Z1}wFN3HFjw>Rs$PCowZnDysyNIorFIlf81hd7lv^(VSOn&M51C+* zqco#RWlGBg9oq+vAx)}lC!hncx|^Y+9!ZHHz=sbzzJ8Szbf_~!#PS0dyBGz`VcMG@ zwFN8TY^d}fpGIL?&oSEEX?bewt^kX}mr7a7gY|^gaK-5>c{xDp3NvqOE+Pn7 zKRP+KvtxPbycIlaKXq3k3!<8}d>E^>_qcW^d9;<)dfGO-L*!U~OOubg^x?yGAqrpw=b$uw z|6HWIe@6`QdNalaeaIp#TXe2f$X24KV_22>_@~HX6PXq+8tR+wQlSn>Tjvh5n?ojz z)2QO(eFqnJQug6Cs}iL5x3i@vTwBE<*&@XuheisN!Lis~C`1?pxXL6_S?ogUvp-PCq4eB;XrZAm(R23Rp2-G46x7ZN4PLOnq+SY3{ zM0oA(CNU228U{Z$JNa2x?(@KBTP+N&dO@vwIsLlr==2kRIHQ5~M>E)zn5Y@76?ib3GC zlrQm`#|)z0nMF~qph2AO`{La?GCpF*nJc%-_^fwfE}ofBVmEoAiSBXm*(Hu<$&TTP z=_6Xd%jRmVZrDt{o0rGPsnaBAgIr6l9blzJA#2!A{pJLU2S5SnOvxEjigcwU2gF_I zx_-pSB;)G>kGJD72?Do$IAcQYn{>30XD5M~OMIHmY@fYzc9bSGQWM)hucRSA-l_!N zVstH!-z(P_XP4(0^($M(lLo&mS5M6`B)eQb(B^s(`2DdHtO$*?jPzD4FfaP5RiNYm zw^Y@l|0OYcW^`F8YH&_o5nNbG#;Mf_Szzr6jwRO} zV0k7&5Qg996s1Jx&r5JSGKrxV0SE|JMx%B@9iMBN?%24cI=0!KN~Tyy7Mjpm=pu88 zm&W~21bTV594*S0F29c@`D)F@v72^5L12`(k8WEgmNt!gBx={r(YwvEHzqnIs??$Z z;-T*vD+{F<+~V16KmOucA^TPi?G_vD*LJ?f^{oV*c+JL_`5>mRWook`gXJyD}YNn(owMn_Tvte5Nn+V4t9XE ziO3{TVwZsRpj^{F0z0D;*th zF3WTv>W4l&l@mTRg|#Q8N3dktkcWZOd$u$uAWGS7*=najyxGjf&4*Z4)1pBscoK*H zu+_oD(P;8pkSDx_r*vl+M2P;nov-Rd4$|Hp_D^UYP~hFj@bvis($A*EQM4_H?0f}T zy;k$hq~b&J4lw;irQ6PNw-%KYV?(gQP3FS0nAZPly(*jt~q{!#{8g%BRgc z_r%)0JRRR=wd57oo4**|EN$fJ;4DBt5Mu6uO?dBqm2orkvuSN~vr|@bnH74&k6_PUfyAI6ZHbg*ix-yc^p3w;J zSIZEEsU4bDGX~Gc6E~l}& zJd_Y4oc)4XCg|@!#`$qD@B4WV4`CQIgGU1b!o-ZXd^^L&7MAKzAuYNP%iWJSi zkrl=}K2uFp53sQ#$M_uK6>9JIMBxLI5EQJsHe!9b-Jin;hz!^tm(9i&*ovWq>HS>5 z@|*B=MXNyBw-Ou>#`7a6=NpQZJ9R$+2R_q29iZy6YuZ>JS|(3`jp>MdW|A^EVopRq z=L@z1#%lHsk|nG7Bs9)Piv}(g8;h$E40EC?{Q*u0;l&p1tQnqN$&hr_l91k-mtMz= zw@$3l-GI#GdI;PW!bm=O6*go25b=p=QU79JvMMDC|dP@`r zUaqXRxItx05rljD7b|(+w7-ot>s9f6;}siwyMOcfB$!3h5W(tjE5tp}ekPghWBG+C z(=6j}h;J`Jr;SMA*4!!!0iDmKZ#Zcb$?=dkEAs8Oe(HpZr5%??;WB5w(QU)qLE{e= z1?H>s(vKIsxerrlXawj}%dzW@%z)?&52PAZJAYDu(?uz-wv^oKm9XMzRxq@sS}Ad_ zL3gQqeTM6Gsa7vB8AQ1Ec@4DyY5~6y%HyWS4`9$&yIowoUZ9)|g2UCadvELMqr6ot zaB`PQ&)o6I8YK6K0}uph^Sgi*ftiZY`I;f+#4kucInYXn`DG-oH&|yr^%~Zfg8dhH z_CtOk9gf0^_)itp)$h=q4l9` zQUCQ6Z`jfh)F;}5QyT$)0*b^m|ESC3HVZ8kpSria(K71MQY7_gn>^Ga)}?JM$apPF zna{u}-fWZ8`3emmE}^FKlEB<~YH2YB%m3Jq3I2!Wf9VwkECrq6i{ohW@|nE_t!LE) zt#J-c?vN{B{9d0xTi@mkN*Q^pERJjfEPKBm@ z4+Fty_>6)Y%DsN2|DD%Ys<%+-V=MsseI{}s8 z;)^4ak_-*)kCX80&ET8OVR=yMpFqOes)OUQ;kDVyFEJ!Q6VjW_uiiQJPl;wBI%vPj z%%)PXdiQ7cWXguCghwbWURXq5+97f92P`50Ts)Dv;9C6V#k& zBnbj{p7sqOwCUETJhg8~ntZ?JMKH)G^A)y&{k%l|FOXcm8?(DTK@dQ39QCzAk1SrMs_TMVCnhA z-pnnQS8f}rVM_pP^n*nSIl37r8M$FK>KHKh#j<#2(=r}cHQ)F4y6@W;@92S3VxPcF zIm2?;$JBh43Hm+zLT$tHyXqbst=``KQ-GOHtClAvk-Yz7IA^B5rn#6icK#M3-JZHla2x@TM9G|V)KGJZ`VIRGJj+@7*^|`x$ z&G(rL6=1GBNYPrRJI$9uA9Q848Ji#VY#zry)Gze*o*inAV9BxV_@=K2-5=qiBQwun z)UjFG73T{(jhzc;N}S^(!|e!Uw6%iWTH`KiKeqizU_k+Q;w;%v{dn_jS!3zp z`Fcx`Y*~yj$?6rh`*64zXgxj8Snd{qIOvWEbj!{{PyIrB+E%~z2L7y=#bnGsbN0+K zrI#Y)69_bHTU?)Dc4)mtL6zZ@iG1S^0igeY-UhkojM8ia%um%wQ@bv922*~gzII$4 zPwTLR+?q)JntN~R8F#BU(r;Uq-8yO^ZdY2n?PY|ZeePI3jPByCcn!79HqM#*o)ijM z-%q>Ox~)(JUt71psNh^&Xc&P*ct+l&Jg_Vh)qH&I$l0WJZ>SYCXSTSP@7>oQg;?~n zUUONMSmD^5SL|D9VgxC9Iv)q_u0>>!Y2b5Tb9p3u2~Rec`{{uv0G%Z1AnpDBBnUPS zW2Br05&RAh7&32k5RV@|1(M-&fzaCL1eAncNlOn=Xn|ZvZqLi+0xA&@F+5~~28F-i zlbJ_WB4S{^d>CWrlh#8|N$j0m*7H02AdZ2jP`6;PqMTY2?M=R0s*+4=cY@?UNR z{U%k*q;&c*AJ7EP1nF+v01GRH#^la*!so`Qk*9&Q!`ccx=j&a1s%D=Es##8m@?2h}9!8`uBRVJ!6Xf$c=Zu4}x0YK08x`Uvh^d&efTSCW8rt zAp%%5Q&3ON6V2MFp03;A>NLhKpJ zZ%O_j!14t*{6)yiIbWqF!h)%|Sf=@IbnFPsO&r`~9<_fmOt2JAo*z9{TN_eWfV1EB zIH312`UvY#)*dI}hx&wj@Aq1Ec{J;PF-D;^X;~Y~D99D6P|}LFYBgj2_@8t4*OlJ(vztrrdKu|Gez+`xRyoqlvtFgsJ&dpJ)miE1fK=he8zw3@rn00H469T>OEI#w~{SKT4z@!ZcF`Ix_o`943^1?@L*a6mtVJY2v)wL5?VMg}aG{hSS2)%ud@Hd-EFuz>WZqk5rjV= zYvBL6`Qh2ZG4z8jqWND~`DanU9;Lsat*UTux3Hr@r1L8OMV*`SSlXY0%&O)F-?qa9 zvjBTagk%(nUjYnrkn7`D(0d}dZJFMv{+SSshl5&3&RP{Ywf@i#X9b3?i~0(mGDw)( zP(<9?mgh=~;C}L_j3tML_77QUyjR493qWB=x>YbJ}Xz? z)`bmXVQAmF@G}sAuWL#dy?K7YH{O>x;_G`%>ZpTA8b#S0^{o8NEXwEV2%6;t8DJ z)BU-(II`IWRhTlD^3V-ZPQoQ1R3&^Q2$$ai3$4#6j@zoH_Qx6%N*8-8t&k6Dnr#?e z>VW-Av)o+S(%t7ycxMsxXMMNL^X(r;q4B*(Tj1NGLNgD0Bp(jn7ELzTYazsAir#nL z7eCHJ1?}EVvlK1YYN;z3 zQa9ksV@zRt#xAX-Z%XXeuzwulQiBh9ql^cw%jh+K4aiKI-U!OU3>_w$3`Js=n>_iw5bCkZx4EyA%NdLFw+6 z?hd6JmF`rek*-ZkZMr)*u<1tXES~o{@A>D<+T-WCtKWxvvUm=3tL>X|o z%oGprty%Bqd$XWqpkcIUV`RVT<7bjfol{duJ5kGT4)e zkdi_|1uM5rRj`S3+IoCgDT;cy@*%M=SeOVTtjs>gPHyYU57v1_=D69gsr zFf1g*#E@mIg#*bE&NU5QkU^^RI!&;U5|#~N&WM5OAonn&LZoYzKs6a3zIfmp5aN&N zzR_M17%;-x_Q%R;qOQw_{2diX4OI8G!ZG@)><%hT9)|&E_O`~!dPo5|5bu&u*6ctD zL5#F4U~H(4J+e%t*40Xf?rqhT6AF0mBy{e$is66+fOTdfRT7;2Pm4}do1O3LA62f_ z!iwGoLj(y)@g#LkgdQ}oR(TQzGEc&>;7_f?5pAB3cW;UaVN*!d zm;w6^3*Cwk9v+)+i|XtG8d|Rz2QJ&$j%HvJuc=J%C>sRF*;KYEl}29>?%8*|L~>XxxnyBMTLB;)=YKM+|eOGleT^vCIOEX<9Mh$c|0Eb zF-qAN>!dn~xzxFYx2p{zxi3hwYSMIm5De`h@)y5R^>Ri;EhEI3e9q*;MUF!30CuFn z6I19?OMTuEq8R9FW)WxKYMA*p`8_SeWs&RW7>NzAFG@aU)`S?gPH4L~*f+LC_~HF{ z3X|^e4F>pbk`2=$9I5a2dO}V~b@M4(`6mtQe*6wGAwX!U~~Sd2os+V8WFr7X;`JIxd8g@HQv z7BD6HYH9A#RELSKJWX6i+_W^nc22jb{6ms`9%ih)Ieg`Hv*ZS)_Q$gt+F8DQBOw?V z8rp$fETZoFPweV5L{s8~3fjKbJS-cBNXXPZ{mOYwX5ymV@N3xP*+3sg+yg;jQVMEQ z87z<%%3)~LQqLSmNO#`OM0yr*U2{0nc4Y_XTviLL0N}ILkYxW6sTVnAjeUx*xev7X zyU_?x9VrQ!`Q&H<`xI;Utuq8WPeV-Y27^9VHy{Uka)3%d$4VuT)SVG{0bNTP>(Hf-~VvN z>ozY92zqbk#*^0fdGlBdO;DN)v(F=kh1VlD>v!vx?|rl_Tqs>%Td!*t)h!4DngtEL z1UP#wME-PpG1Q+Sh)r7%G+G@PMX%L!7{+2Ol$?ACb9O3t=4)cGuTSF8a1tC#Zr@#N zcz=2+a&>@c#%4=4)ZkJq@Rg5SEx!I))3P0-<|xlehj}v4M=@@ClGijdT|UB;AP&KW z%PQ|@35}9xCk7;laV_%Ku+D`S{weL&RMXPKs438YXLD!~ki&Dpt3P?b3s}`)p0+VL z(!HYwX988DnxDNo8M@M=OuSI?VDN_#S#FyZvyj#9)n9leYI$Gq{5di8Yj8p+;E5Mh zng{Mk-hI9%AO$^QiAX#^#J0!3fwh*CdCRz&XX_1I-Y%fW%j0qF>L^_FcoIYESZZd2 zCh{P@`yERY`Q@T!wDoE$QU7VfhAn%h$8DOG!SkjhylI_a!~2=*aic>y*xHRZXgkbd0EY~M4M zzgksSpey=scE7z`xBe_!!aqEjtCuKc`n+r*u#DP`gXC2+^EuIBt~-1!`z3&*erJ<9 z$cGw5;+OXJAB1z+dt%c0vm{CrYhya4{k({*eD+Z-^1nPxi2z~78EIlCg?Nx&?6^K7 zES6$f>0bTLCbmOhxJuJPdOAoh`-EHPybo|+b?d}YUliD3{HVcVPM;3yV}uOXaB zsbFm)@On+Xpp_)*jT35d&>S?aRHzj$1Dtrp=4r>%58> zMt`*dX~c|1p+%=ef7M7E1kDL@p`Aavhqs2=aP2JG^;Q$+lNs~wo9QKn2YX?N8CVV~ zaFj%;F~V!|aFk8E&cuZIhf0P!L#pt$0M0O5pP%C1M6?ddmrS#DaH7jg1f-~b!e)h% z)_=M=gb}$x(LU{e?EglbwS{{ql-i0uzgj*^n(`Q)np&!osoF-vW%GO_Y5&~zA#v}4 zKGMyW2zUi2UZ{RK)Lw;n-K$9-*$@~8!XA{gJ{8ZodBoUo|C3+~kh8p58&r#GM@i4^~tISZzc1NK8` z+HS7meyQc}1FpT`d!z+nvZxFU@lQz}N`UiO;6}vKLcnnlcGrgt5z`6mgu{*{Ltm1B zyNRt;3h=thwcbXN>nwY^7!TD;90gnd6M;K!2xxw8bsHp>oTyID+!M*eVUeyMY^DLw zUSqp78HtoXln)icR|uvvee4g&li4ZWl($qdn{heV2=V8nx`Pn;g>KPCEPhs_Sel#! z`YKIkXg9#s=dHS;HCKV;oY|JtkF6v-{<(j>CUb`+~Lboc@c8ZLoJ!%Cm&Q5eEJE74f6$r%xX4 znC8PhULG`kjn^gm?-mL;R=k-OHYl8c(fM%nZ?J5MJrEdku-A=|L{)N$n3?y;XMJ zefYv&D8Bpmq;%ooxVb1+fh5$%ji8EtGjnvyfpXMYdyedzzycHQSS~0(b!pqf)yhk& zjE*|oqCN`|L%UcgqQ~8aYuv5^9NM-|(H^XzO{JiO(rrZ%&tUQ%I~waqAZ6l1!eQ82 zuG^2BZeQRX#VsF9ahlsmYZU=V_h@POIWfbnodl>Wh2=$uu*!0-JXy_gX*F14;*!B&G|d!-Uhm zFO-fjZxAoQziq>b8H~sKCzhrqvKGFTAlHaK3*4T@raiH(a5!|e^_Ui)>FV*XsM<`} z)=pg$I;tyiAwHyX@bHOa_*a~P#7nw?b?o*_<@=h4s-q6n$G^Ao?(mA{eIQL~_VQ`L^5zy6Y>x>~gA&vg3Jzvif7H7n5^wX=T}{C32YI-}|qaJfx*4fuG45 z?mXS*&99agc)!@|axs>o9!vIR#|>wgDC5*8=}DTe+^sK}@yh@~z>tVi2z=yrSFUL5U}DPU!!SeXAF(a+4u$`%dB&aN-F zjPmE~cu?%NYW61O&mlp(poipAj@OXq8bg(Mxjd<5e^OhEyd1;_rky_+Q~#RGLhEA0p9dw^4W#_4uh%$md>raQc`JN=wTdipHw z-zh?E7C7M6&xnI>&R_Xm;IjATqj41pgx7X{sCxMbQ~P|( z6Hk7&u~hl)@LC`d(8GnmuS>BZuQ}I8iYv4Z$t4_$_7-XlGnVI}E#&n-mhDDlXwfs{ z3w2obQVaxG`oSSUaiet>QAuI1?XZzNZ5Q##(XL|0E;AYhlJZXW8>u$p{c2sWwFas) z)aTiJTV!6_DA{Onq;~`3H2YV2yBTdvu|%JmRXjKp>zr1=cC!$Ci`InoiSR>GS| zBGa~9?O;G%wvDXbsgrP8_s-vSDqDVkPsy*ZqES|bK<|But`|cG$6GQYM;s+Wio3d2?0Jvkprd8S<= zLzA-dTg@4K2x0cBlL8$_5*!6R`qj;2Yx57@hVFr2+g3Qi4u^e!l{bT?L$67DS!7ob zul`^(sl-;P7u2qQW8Z0&HPU>gG5SzTnfIfEVeuB7Lw()CjGg%~<_>-Hxcr~D9vPSo zuq?M}v#xK-?20eKFGcT*Uyc~KYu`JFe!71xafgHF?bm#pqL^{a$)xB@dehizyZ$wd z{(*_&*ZYy%%g7`QS4w} z(oc>?ixbdYaagIu4%!W%#Wmly;g=Xg0t25kk*>7HiCnk|CV&H#@f7pvXiV@)my&hw4T0~EuYpMJ_ICW*if=Mv ztfz8l{Q)#gwLyh+G7eYt&Q~ldWJuYeWIB!zUy`gYvC=?e>g!v>Uf(%(NalLlRh50? zp;l=2JDv8tH`A$-r!KD-4M?c~44NlfSS1SVCgkN}cnJ=Q{lO0D+Yd!aNd)RwN z{}o#j7XelWNBlqTthPf}M4MV4+Btx zO->PtG$q!U_oHc-BS7%cH@gmSIEvO2f3Ka5fbyagp6^HGTFjtTGtb4XV^5qw7c#=$ zp4J}D^89=SH|B09i9pq+Up6}2q=Lw_lCp86ZN#qZ{~RVl4oOJv>xKBVuKv(Y@~?`2 zhWL5nUYQ^r@~y0d`FZY-G@p28fBV5Xd@M#xH!0x}=~66L&tW=p4y8x8hu=cKIzfXl zEJd5`Zyh{RN64-&M!EaUlNm4HQ7)O!>NR-W1eDEPAl2Si__?{?cutr z3bp?k5a_Dm;D>5q3U5YX2ctq*b`C%l9TV8u{#dDq~_Dk0!Q&wl@=PHrCD>K z5@r+UBSFN6RFZ_MEslT_YQ#Bn((+T9NC#idIp6**NT9Ub5D?Ga5EW51`*tut{)XeZ zVPiqyaiRxy`&|>iZpL^2;&-j|WXe{h)WpZvS~xFY)_DPtWQ{dL+|0u|T#fR5FRzoo zNv_4{Gq;YwzR6e7-BXHHnem%}Y;U!(IMQ+2u%d|AO2e!I-Ts<8V$ul`GD zaE~Sw{b60;pg!W${TZ-K;6{%sHh*ImaXnD-7nI2 zxt#hxQ#d~*ubK$^y+7a~NrHMbR?5e>PizU>%vq56J1e^{WPL-wg0*J&DH9-=3Du(O zy>3_8bTF6fonHDR^@I}!4>gbKy6YG8F=WUv!AYx69|07q^DM&3AP3@D(4I=x1NXO8 z*m<*9N(umBfuywW8Zj^`l){qNQc-@;bcn+8kinS{YTcaw0C^WFB=M(KEHd6QMO5HB zR`ZBp9Jxhr7GhFyFSh?Qju$~j_N7J^Y^);R!E6yZdCyWx1*^{ND~^wrYSSCQSu1%GOGkVb!p5oE$pb^ zy7nk=p? zcn0~9I6;a)Z$)Bjr16aGFI;EhxkIUR9cVidLH!;!6Pr}K8a7`b2YVei;J$Np^XTUry%5}t8}SnR z$xx3PT=E@ngk0mXZwWRkFEjj=A+vy5%0v*;m6+*IUQfJ>eSO{;`dQE$T@j@O=tf-q zk=X{p$dP)k|J|4Yf}lf_z9^Dd*>?gziQ23h zdj(-r$hFf74%-3?>H6Xd8AUB~n+r`IpC@741w`{?qL0c=U6YZf`{5 zYR-9*B7}I7Cs`+T2?4T&_;4i)dAz6brRinZ`llO@Xy$v+>hb$MN3&>LsKJOzj>nBI znp%#JXav|m5>CYaFmFolSdYr69BQ3_%@}5DU6C#{OIdZb+9VUje%JCm%AYFmOa6`T zN}IzlC8+WE+kg1L@rtz^6w=6Ep6v9o28qYdTy%ih<){2ACo%lAi7*a#UF;?CRg8+X zW!$Y_WB%`TU!`=M`rib>qvm_)C{$Nc*GQ^sh~UkQlO2Fc`X}CqxJLs$7&lUw*nVaW z9f?eQ=ig#e)V5xu`-Ho{y(y2vXB+(KKXo;m;;+ezkn|9xfUfzT%n%H>V$Y-UFZKgz}Q*Y#4hz-s%t`e=qKi`Ww`+8}G zdJ=p2C1KVwx%NRTuD7?*1CHhrzC?`gam_o#&H)W-gYp1 zXS+|fj9}DnvYI+2*80W_s9(bIHAPuufXXi1gAovHT~sbI9Tp)yudUwHrgAUTW}YE4 zC*mjN`(^&k=2LXxi4q*nRXQRcEPo)qXpG=#Z~!I8tI|XA*Gad;5Pr#eu*!jw{f6{y zF69Hn?59r2!JKB$f*ZONBMJDjtgsXy;^P@wTG|jt*1wXRAf!Wg-KI{jHCiga|Fk^m zdm!gkINMgN_c`=q!2NeCZ#qFsGbv_itcl#TV?k$olH%N^nN~TUboC{s0x`SJ2Qpy! zz-~}K^I$xpsr@RgQ>wC{y(?tNSsu3d=VwjUs}8Dkdyfd%N4;g`LjGv+-7No8&29H{ zE9oC`1DHWvs5k<34t|)Bi%~w_$HS_quW0QpP7vWuj)3%kXX+9+R!brkJW8rH8Uyqap1MA@D9gdum$*8xNEH0Q7Oc7Al5h_mw=nw;_E(Dx(tGm_NY z+SlM_z&v|v{#8{~N5k1Qy#8d?@z4AN=d?9|7tC$HQm@1$~ z`(2jg2|VJi64-ig)WIA;$DDq7e!MHkUC>Ls#h`dbeY`vH-9UqvfrW}~Fe2`HV_6Qm9pkPn;ab=!w2+53n40%=dapsJI*llC>;Xnv@RgIu$;Ks^^Ki)4}?;zsn zdYR!OxU?LK{Uxh#-ZgmDo|IhmNXvb^xstpe3(rB zCh38t^Lg>|Zdif66(-~|y$=43Q1H(h8%qBHMR@x8ld^K{=QRhQ6h)4^I{mPmEt_?T z)8q3=JWvL>M4AQtuF9y6As1^;(#BJf%tAX2y11v#Gu4KC;u-H`F+9_!!+Uh_=>D248Z6ysY;$sW6jvRpcJFp>pX;+{%+VH>v%d+cCjp z;>{tP)tjugP5i>A6$KcjLt0=isI%vFFi|(PWGnr*bi`41f4_lwFC=6t?I)m91trfG zCRu5DOa}ss9~(Hmau!bRkB09ZPpbE*IW?C8%mMg7puk`gnl|YXj=JXt<7#^a-CB$$ zmp1CQn!35~TI+@Xz}|-p_WTbS=?oC!e7R^AaIXfP>BLxtq1yfHr7oisilkHj#pwNq z{k+K^)@Y+dyXVhP180Bp0!XIBkyz zk~C!j$#BxUAo*1b--ZQ0QgAuU7{o&!lL(k*E)8P5M*94yP|++5m;nvwex>7i@RN9k zS3AK6$(>CG>YOhxt1=UEp&>dn6yR69D5?r1^&30CD6&-;J+ z6ghuJS8x8oLu=dTca;4|1C<7O=E6{2UALoH8+iw&q@?G83qYFONHO{m1tGv*FjX%- zYm&dYipM(o=7bceX?y$<%mrHYdZWi}^XC$ww0TO}kud*T9^Zc*4mD3ZrtgRtxei)2 z<;vsoBJN1)=}D&YL#!AH7&p{z4?pPWO5r>){#zOH5lIp5EC4#AxFdXzd*y*S)-()G+--^aU znEraDXdPI86iC{A+1u1keh&9fmbDUHZcC3*$Qb+0y>*G~5bJp=M<+HfypQw@pJPT` zP&3;`H##h_v$nv(__o2Nl3LD2{v)F4_Yc&2X&ZgWyp3d%SuAuYfv^*1V#Gk$OdN%R zkcz<;R~;eyEL-w%LS#{&@jY~|Av0eaCRY_;p-gnun|_}>QnXWtnKm(gxqSY2WVQ?B z#6CcQmuN3b1)}6vr_U%ZI$Uoxq+L|ETSx9wrxa6E9!_s+iV}bOxJt8EJaJ*9rnS;v zZ+_u;Yl&Thv8b8o&@b6PvJ8!VD&HfTPf*K$Erl&yw$#yR^sglnaC_9d@eYOeG!021 zDdfOF6}%YBx#b}zA0#SQ^`!>xyDbYdDK+IUU$H)lJ9Dz`Sy0o*Lr)<|od0^gVPK|9AZD$BOCoyl& zt=V5^%Ej_m;N0lg{A$fz{ml$4Td;n0K8D}#p|?vV9hD?mpgFLN;260m*&-`i zSW+0|lKkr;Vyw5ahUS;^S<7*^V`*59*pD5zNNe~UQQ!-_7awd#>C)c0^~UJVEi~HQ zez>}_N}au6fluB#s-Sc{A4qfRFU-APgqmFmYrY?7TJ*gs>~GX>C;K*iLk@7jg{P6U zaE49(p&5cOPnjfe6_^kTBJpu?&QEKbCH z*kPtzx$q=^Fr$_iu) z(A_hV5}zv-u{fZBdN&(zh{%Zqc?&opO_oOuyPy&}f5_TDzu(|ahNFX4kxYHeoD#BD z!wqL_vtLv}t8aIj`h2N0rPuZGglW+AkI|q(G@OqayETuErWL$OGabOb*QRyF)zBgl@lfuDtk<#V!`^xU7B7R$Lmb8BXa zV^|hK6AYu4w5z?%Zk?7d6W@!nq@ZdhZ)_EBY&}n1YF%RQ%{<)GxGk-=gMPAc=W>Yf zZANLYzpsh3XvCtNX>w$X!0*;0O>OVg59oyN*5Q8m97 zXP-(=Olf_sVdsWL6)!1(#x6d8k|<{3DfQ9V3Fl%c-V!tL3J}FyRZ^|wA+4ItMsOqt zNe3w!gd84|t_{ZKCcyfZEqnbL(Zt!Wf=3@3^wd>qiCkR`kYytLg&Xyz92-mU(LeC> z{3egs5IuB84o1QI%Kmp8gP~Wy*4pMFg+AlU!6HWt%5kn8Us7L~ZjzHE(HINxR((lh&D+L9l=oX(V9^f#hoOf?lfHTrs}Wmw<`J-lZw50PKLY%m*XT8#Lt z|A6eKuSZc|x(i3x2S!i3sfpL;Bsjp{(@5@h4m|a#sx3)&U=nxxqWZY{<=&}}4iz!7 zC`?_f+iz|eY`VEaBmzkTuUI8^|y{4mu>hm$Vti^s&U!PUrP;uY?jfV?% zBhK7NW}wqpUw&rT++MF+p0C)&z(Mms1<3(xUwL@Pi4JY;UP=m;Oo}0{QJc`;V`iY4 z>skl}{A65FsswviAhrl}*pqBc`S|$*wFK)rd3L{BGmEDLibxQT9ql8nWU(5Sl=LOP z4jq&h|MqrBUC#I8NTjJ}POE8Woq@@J%e&eb|1EHxY|xtP4r&J_;J%dm-dW+cFWQ*A zFAfI(q}*AAgP-u4R zP8f9P)Hk!aJtT+&sGhQy#)Hw(()pIB9X0`#h~i~UFfLj-H~?`dZ)pUO|43bUf>au_n-O5eTnZ0R@Z6n*p6)>=%a zY4#bo$(AIAN;;az75Iqu-9=#3I}8ku?IEKY7`)69{Rp;dK9HE6TQUA{pX4aLa!8-ecgfrxpWn;_@}13G306t6Wi!vdtI;IzL;7lwnue*{E_fC zP%rjIly1K;R`n>qoV>p~?;zm&TT3>eu32wr<2_PhV#3Ta&L7^5aGT94Y9yoS4P{n} z8dJ36?hW#H`!aNc+=9uKwz_B*P~=)xD!YfZqp;VA zZMXhI1n7eXV`SrOj)0$q3rnN9HNWR%r_f#|IEhhy7!Az zO5cS1v{$i?yrTk_hji3*+gn)?gQk2AdD^K}^3gwvKW*3%gXF`{4!=Up!%fKFb_n($ zci_e~Q#?o_1P^#NY?=ysoQ8~SZ81^K2FPWk{3xe3Z0~m?3hk352;>Fa)!AM?vq2DD zX$~HP*cCmO84hI?p`Jqqzv%JZ7U;nh%9*7lyH<7*9JDWk81=j&sCX-RH#{Ix@r&$bF*x8~-22Z*vt-=E1%I}~r}N*+m437pP#=ts4dfn3aDtqXP=#$*4~b9IM(;cjdeV z+67lZingGR0S>e!X`sv`8r-4hxXgwkdiV@flVltT5phxN6JNp3x|IHyg<)>7{Sy;=-H5!_s1w`tCpGWU$iWt)-XHu7L&_ITjN6Qp~y|og-!? zPtr7_2Jz<2n!RgcU_k~SK0Z-pzy7vV;eDq!aD;TNg{ReXkE^)faFcY0@7Hm+NAhOF z|8gQ5=I6Q=(q`GR{7=GKx*$w^L;YhdL1ZUS`%SF{!LAsFcA4pq)Kr@Ajt)hJBpgzz zS5>dVo=O20G-4}|0PYDUey_z7E=;^aGpDh+r`7|zZ)c#&b@og1ov0n>URpbHSM%l( zC)PWxcN*71z@g4@wqR``Vm1f%fSkGd_iSI!bVJ9YFk-jbhCEB^X{XmH25Y)(-xFw^( zrx(glhiC+@*A4n%cG(ffXwPT{YvUR6>1>l7aMbv!1!pbec)sz4s4VXzTWs6E z7qcj4NhsU{?+_(UXX%5MsY&J61z~kyh6>(*MaLA*)BeNR%C_$_N*T(>Bhs?eZ^jMo zKKo89-qgY=Rau?n{8jdGKk5Te!&G3gpAQrCU|rP^_>y@eG?6o^iNQF)f{Fh_N+9m~ zdL^NxmtKpj)xYz}Z=mfYzfo^Jyv68}S`;HQ-;3qX)*7|)qKJ?COgs4VFl3RO$gD?H zAV&09wwaa{P_Bbs4#9PFy?P1b+`7luIHFbVohn351l`c2uxzEb8ZIgHNO<608s2S7 z-u{2RdHjdYQ?$pxhvdj_&3jaCim` z=5l~U;>m4tYY{_`Lfv#IL&Hf{l7^DmOv5ShHurf+8jg~JRB`}na0kX;>h{eQn9_-c z(%&%~@#U9F*RbD*?@7(K!~;L_1tVA~D0b7;i+tu$2bj7XgW`TFu=0vgA!3G_+k>m4 zR1%z40UI=Cjm`0qBu)YqmWFYpZc5655}ahwyQ_M^c@{xjKSnZ&G=@{lHKK>d7k1R> zg2X*fm$U;ivP;;7Yudg6m5A-GEyt7>QOTOOD-z}_JFy>JlayWR=;skC^~Qyc8twff z1-)rI+qjo&*aTJx&dTi(D)p19xJ1a&xVaqxqx9a`m<8wi3&Iy9hC;;F)`$3R_S#6& zS1VT!@zxW{0a;fcZSoqVCQm-?ERMy{6-L^{7v+iC73Bp6fzjNrAJw#2AxRYFMTd~Q z6j2(Cya1aA8TX*J3Ga=RfN7QLh8>FX<#k0;fhceD^J>uX=*rZ$Lu zB3I+13?9Xi3?raGrm5!u;1vw}WRuG>y6(iGDK&T_l@Ilxy z8U$c2W$gBzO6+BN2vsFaLt0m*IFT z2Pu|uxE?zDnVljg^1Rda9br~zBkxVnNXrkTA1TZS^Zd2&RI)OnGjDFLX@tngza{GV zIJ7vekKG{oR2ZEr6QEtGu-h2k0MneH24Ww~e*QTy}of51k1v54_Sg(8V%pe<;zG7ojX_S2#(OSl~92wf2#O4CC!g3*}G z<1pfic>7uoEiUw#5zm%wE_{Bhs1|nsT?5pw@tdA9Y1@kJ?lpF!YhTtpm%SHH_|l5J zP5D$1fv3hwTn)Q-DgE)sVjsLK=;d zbm7t&9v-+Txw{xUJ1wM=#DXhPr}qmqoRaZ76tqF&430^frZ{6%FUj;8widPf?sl@u z8$d@Yp)2x1zTx$CzF%;(OV`^bRdhJ39!=N^H(k_Oe2T!?QV8qg&{`YSn$HI*`v@QV z2Q1#;;#@kOouXir(A^dgYOYHa+87a9_-Wk_kebbW{5g+>9Q@0%IW{nYGQLo_ull8h zzB>+B58%7Fup>rD%%w+GhZ`FDVVz&oohq?9L2n^*ZX`2rd6%FQsBATeN2hzx(lEITvJ6ioE4^pD!aL_rxY2}1r}~^i@#UsdQjl#p>8qIvxe$o z8yQ%VVEO>W$kf5_*+GASa64&)yy_eFJ$EN)|?$XLi{KD-ivnx zy$NrH<1~b0WFFf5#6AePDHL4&qx|ZF5-yx`Uc;d4eSz9?V!={X@;sf&3`^SP6(04- zY}G5q4!FriGJC%wrNH!;aTso{MT)Sl3zT+{yX~satKIirwZXmN&%(?PuiFU1TMc7$ z?R&IT72>O>a3Y`E7Y*q+RHbk{bK8Kkt+n~f&K^UbAzzXBqyXK6GqEU>+HtV0g&(xe z3Wv>d5}VR;mG&WZl>71bc0$94(y7A`^5@siS4hd?`@}8fU3Rhi0U}=RB{ISI^ZB37pCi`{0 zj$xDUe=hsA-}s~Vb9dncA%I#o?-%Z`~n**eR1@+EoaAn zAMUR|Su)ol$;~(Dzo_3N=yD}iGt>Uq3l8ANXiQQQOGch3)uo~HW!C-S3MpZmo4yn! zEV7^07eF2-ObcQk^8{qU5bpvnFypAyz0f`}RzN3$OAvU5(-7cui>!BAAL@P2gz^_t zmpO`k(#N*u;%#}hi9VutQ=LmQbD&*-+b#E(_{3q_@u0(5*QG7#_x5eSYu1p}_;OZT zTnL@6GB=I~0&q-ZZ;s3EdV~x^#VQI}@4Zc;Ojp8)f+5dCkPzeVyYqM3uNSgE_zN~l z>WH|dsXg}i5WI5<9Z|t*8hkF0!?p9o{_Etca|p+vF>3>X852bz+NjZHAB&wm4qj7v z_$t{$v3{TDfrc#trbN)Ek3;;N_%*Qk)TLH`q^nB!+b+F-oi*tHxw|<90 z#%{wwxr~XcKE(Eq7x{*=Z_0d zv`vOK`^EH8QmdXUf;I0OMpH~aDWe2UMBrslM$j`>$}YFPeJK+^ic$|pU*D*Mz~``& z7YR}l!Q*v)$;jE;;E&G>&q7N~Oa^};hcNv9*7OZ?>R% z6h-tZ?{O90lE`F;gtVv+42xTFs^Q7x*zO0!e=iLlJdsm!+n85olRm+PVZ&^#rjwFd#PZ`DRkt?aGW)Br|aEcw-e;_bZcl-yAfEz7T$T4|RPc z_j{rLoIX(qNJQwW^@BYK9376t45xS>u2^Plh>2P@dG9284TQe*ny*kgxyO%wB{*TE zhIfq|s0LIZTsP14b^!*!u{t0dOVv|KFN@bl%8$T;tfJ@hsp0$pcM}CJFmR?buX@&6 z4udpCCry(>5`csQlrK1_!*Vt-VZ>fFVa#{5UCoyp{zWim7MInOm(_Tb^H! zLiX~I0Q-Mf$EPdJ$(6~16WR?%mW%JjW}3mu%x{=tsI+;w!j8J7&8h_preg>-lNu5R zD<2n|L7}dTd+3o}KMW``QJoe`DSkkV$^5qJjPVzGxn3;MjJ|Sn*=sBy*Dch?akRjP zpylbxQpd&ELwW2;?mu=ocxPhKdtmL{djQ1e!9!_$w|`;Gn42HnUbTSvkowRgV z+Vv}Vg4zo--2%0ohPKTrzip2B`D<*Shlru0ib1<(^thElO_fXPV}dZhg2PIiruRS3 zGDmFK-z0{N#rC*}rr6hNA-Q*zDd>QG^78J<4m#>c2nde!M9?!Wr6zdR663&B$8Emy z2!n)N7rn9vIWJhOi9e>Tf*1(S(}I6$kpN7EI}4KfVq&c&jWfq8htl6B3TV%^8G%(T z$H!XFo1+Q@fN8r-+I(t&Q>rxE#7Fv%SDmLbRpI^6iMFBXkQTc*@|r<(N(SKWR< zR?5wWfOy0Rc26C98@HzZEi}QB->yWK^RFfPHU@JzV7jxnW0d@O{%HRG(HsA_?5BB>)mj_whA%jzEbL)akvl}fEME?5tF4TLc=$E(6a>>t=kpq8I)}+r&>{rgD}0Z6a>n?RHFXB7WF>tKo@^E{!>QlJJ9x{TrN>I0umUrYb)1V6TmW^8!hlaR; zxAyUuMxMz?Wdri-k?PmMBQTiF?FW90)QYx^CW~9D-A1{HJ!MoxoP2B!<_z*o2_uLNHdi3!kPyS7vn&}q)hFzKp?A_W{a3J_kccmR1UI9>`(PRovf)@5(S zf~t|0X&6JCL}nY|yP`49^>0;RO;2flk0=wPt5@$cWrm-AR?O`;T?1=9T=roJ*Lj;;$6cPF^J zI|TOtA-KB*5ALo(fWz&lvW5cA8>%zbS{GU{O|#GEATYhOFIYM2JAv;wIDi#VYG9 zhukhlx5^R}4>$Ozh0k9MCK&4YTUfT*=Y`|y{JS$9n%9`v%MMsx$&&Vh5)OU{1^#QP zP+Dga;%^?QZ|TZRfpeVGcuYv8rDBzZ$(5861`$0|Pn7Eh=RzSw??eo;^}V9ol3s1= zYiJy_py?!6-yBE0d+v;HsbLGdPEqGcV#MDpq$8$~mj8I&3>Q_bATz)3if>&2#wRf~ zoEvcE5>=Lg1h}~Dw!K}Pg#x=V4km2xI*Fp8r`L43&OSoeb92n|d4b2Ho!us$2s|E< zR;_!VIu<zwg;`imK2vV_!V{@UX=q zim^VKR1g9hWM*sk(^8!nL?W*pQ^1tx(td;Cbaw~@zB(WhHYRL33oW4uf073>FcHLo zPA?z;acqvwFEGVaopnVh!wh!B0_YD%iV_r;)@w{MQKE5$49Jt9E+~#tx3iCv_D1V| zcdh>Tx$UDfCnRx!O&E;#7c=U%zj?RUiYBL@_P2P`?0Fx)Zm&HGKMO#Mkl0sVW-*?0 zvArX`OlA!jFt7#S#HyE{R7e6sgQcl7yDIWO)>$4=msY*DLf>>6zS`BJL$O=X{=yDK zb%5|JHbR#}3S5Rj61aIfvFmwP05-N+XZt2fOi{$fm!e0u}Uyh8vA|hyAAuTJ>SShWSrR+6-VrgB~axI{wUw5?U zxy~}^g;gNBunrQ(;g=zSLO}id3Z+48{WaX2`4|U~a8L4v!7-@Lj zwzdbV$lal_A_p+U0<$?*h)X}mjdEP5)q?}wRgW;n)I2!Pr3%SW&6n}3_g4C7 znE6v^RiCRm9uhclpwuKJu@^k}Qt}QX^4>1t3j-xXx}Y}KU?*t4s$zesh6WZ-ry{7t z;^(!_R|PM`w+i3?DQ&SnkjSiRo^^yt25tx%`+$lbUDwV^keDOs_KpCB91u(g|9j~R z9UbD$mfZRBa+ao3*jG*WK|+)MI=zi@&}wL~S47_V=RLM=4c?BJMnet}wjsUHk4YMd z&C4OYQwC4+jSSGZ;(xiq@xhkLtmDoRiy`p`IT$+?jm-PWt16^{Q6-lPb0j@+JCM=h zL(U+UiE>j_m#OeEM0;vWLY1p>zF*M{MiMXGGF!O5%FRTNkB`MAB}k}MC_LVE){{1f zss5)`!{pE9m5sY4j7l7Frr&%78>9NCzr@f?C1PSYtPANVip1A_h+7^6FhXeFx z?9Xd93%uN#EWhT(;2=I?lRm=YUF;{KclJ%^^dTH(_MCsfa_ zX#=T{^&P~0eVLj-NaB3rbca@Ltl{Pbb9FwL4|7{eia-pNHfu79h2f zNICcYAh}TXDT{X{W`9qeo=uWRvH)EkD_u@tO@o1Go{P=4G$V1BW7Lbs!h-TwMrsJ7BX{xoi*xL z1wZu7Q{_31uX09ED(T@970t?js$J7#Im7;gef{>Bre)N>jdmQqVt?v>)NJL}*PA#T zs<+U46uk=bUj@P5KM3+b(}%m!cl39k;d^qZuix5WumYbFD>FHxTK(EvO#k*}OJ#F? zktfA-pA~O32W6LoM6SLk>$;GXcJnV2XnTaM+t2gdr-H|+A@CrFN_%Nfy53_D^W6wh zMw>4~YU``f0)V4&PCwi4CM1+s3K$D1J{ zM(~Pjyuqc&1+AXSNcGFI?}yTxNzBh|&8Pw&B2<&T5HP5BjemuhFu(|PH#LH|xxuwC zme0dB#phsVIS3bA@HD5{!7PyWQlcP1ErR9scIL-*@=FrzX-^@#r1gIe+5)p4iG6>e z85-BYoR$FDw0g2R?W*Xn^G7j1vEX@=tOu_%)))Tc%K+MW?sv#zWbI4>j=s|tpV*!d znDAhy1(3ru)<1!=FyrK?<6sN2+aJwfP~TpBdSj>O{;Ao`+J4PWv}jF6ZM2EtpbysW zl*Tw-9P0Xv5N&$1^>e%i8_0Cxjwf>XNQM4?W^=kgas;q(EQFqO6QC>R7zJf#aV*;l zZ}^0jBGM$e%&Cgn5W9gUi7E!GfQky&<+E_pgDmo@&n!0!DRvtnJW6~&tK)hb%?yZB z#m$L<(ih1&;F|+0MF6ca4*2!*Yi&qZRw_d#MM(@g(k@^NC4Li9MA}W&1Iksr{3SGY z5`h2Lkb{K(xmXL3_AqcHmzR{O?8qcpc)et)Py?TucIyw0Jh37!$tW$?n0NP-#4Tlz zfj6sRA}B%nYbh^5&JG*>@2jGH$fAuWUGWb%ARdxJZXhsFP9&D^{Ih)K!C)!}BS?pd z3ST~$niS4-{8v<|gz7fpFI6reybySR4^GmSv*Z+#s076fB?&QqBzMU{#b@pE47k8>6)a#u5H|>2><17gFhOSk~2Pw+m z=E61e>p;Tbcx{Vd@(R0y*4Cou&Cm6zv2532om3$wjntvo1yYiP)jpjYAnb`rWM_JD z(QlgYy%fy@`CzsSx|dM|u}d8vH(D-s>oH2C3wrjbS_FO5Yo9Y4=)K8zlNf-dj#hI! zTW@jreg&`PNMb?C!gSo0m*sg~A_UvzJXFc!->d2joR_y897wXg!Xi1C;COHD7!t30gt0V${DQ+%S*(`zyB?x2=|k-Q(Te1UM~m1QVd^KAGj@OcSarj% zR*c`08CYu-N588EaltQjV$giraY2Lb~BhTLPEuR{X!Ieud;P_o<_eU!aJ zJYNSS1W-UA9&o?3oP}1jb~hs*5+GyX;fXoV5Dm!(5CZ?D_jnmuVRE2p%?A_VAg}`( z7M9g>t-csgT%n#nQhejTfWM{~rQ5vR@7)^-rT+{K@f&MH!Z4f61xyf32yt}mQBaOL zG@=bZQ6ZD!fQ9c)!7v>@SLZ9Ai4nM{hFs~vi-o<=OGEY(5OM+LQ#3f>W42`r1GZ)I ziB@dDa058PdkmdGc8I&{U= z_MP;zekHx|&=uhi&Tnt$@2BaUNavy9`9fvr2&gd{?#RpBTnowM2&^Iu~x_y@FM^o}=_|8R&vSYD_etjzEetdev&3L(y(ta$M<`GM_0fZuwzH7LB zULF(^t;m;7dcca3M<`(Q;{p~ld_X*U8vi$JYSj61Uq4vXQDjAsO-gT&@&g~M)OO`| zgEL^oFC>2xD!aVkIG&PSc)LSGyafG2fOE+^-f^ng5_WYzfy~YO=LElv%_`=6CH|LI zG^%A~$5FO^3XmEf=}v>(KLKhn6>jD&|IV=eLP?+=0J&ycZVsW$^$^Txo5v8Jak31M zr=}_L^WLDjdCtE0`U-u?Lq#F%;s%@$5Pzx0bK+qr*{xTf3|6%$xO2uOgqc4%Jq9>1v=~-mg5l| z!NeH0c9jAlx|uB!Hhm{2#3OUUo&p_6?}X47vJf-*w`!@Oo#>>fnu-uUIgC@AB<~n2 zOh8I1l+oKap|iK`DPgkmYfJfDPQ+A@z*Qo1xWnfeKW{)oiJ)h2o3h%6HfT%t1S?=9kxNg30l(Ta$ZlVi{*nxlOSV$v-G$*KwYpx_zy5kswGAWxcFyY{cZEBIoKJt*lSQ z*e@V`-{Q#S2Dh%+f+mQzZb?J)qk*stbP{_B>zLEC#z^mSm$8G6HAz zyW{SWiK$hQYVM|EAYMWpJ`2X%mGf4P@yF$rJ49`7D0v+H_tRhweKA5=>P*dBtKf|e z`Tk_IrJYUmJQ(x}P}tzPc2I##Ow&!|;WeXjOEJ=WCXD0or!z!|&Eu)f^C`+ZmtApe zxB<^Tznb5-Jf!H9ewoM+Rj_26`qTI)n`j(m$KI(?kIEQe2*>qCRjtmqfeYDBmY8^K z>J9aUY(#quU(g^^&0jDSK*Xb}vVL1bmn5UMP=30A!a3-}QRc`!f?pcDkk%+`1ijTqEnKTf_76( z>Sko?LsF|Jb7S8`YgsM8+6KHQ{Wn|~mY5$!fMdEm>bWljnJ4fRdWzG;TVLG?-~OL@ zp4a*%czt>8v|=RB^FmE~J2=ebz7xR&>M6(5*vgrO5P_6# zlO=>$1mcve{%OchkLO!Vql>Zv!^Q8t?!hc>>(B(^#a~k|>Zk4jwKWAFSdvjCb8nwi zwhW!_?XB|WeSnVp&o6KD@h!%%_xAG^i z7TXnTn?{C5YfG4nb5$QJOc4t;*+nH?MYX)DX07C129b)!jZsm64J_>c6&!8 zn4UPO!Ua$&e4-&rPlf`D1ctBjJj#$NRU6>uNpeDfxyp0lrLHCrcN3vLr0)_9$w!Je z+bI&|*fQuFbdUx-0}b|eAr-A#$eGY8wm}uGknBUMBxcQ|-J4%(KMNKln!u2wf(Hhf z60=YLpeuQJ^?fSBN9lJHEIU?Q{NZEG34Y1$Nug*H%IMB3&jRu)M7Y;Oko4=17|Z&O zn+~z2KRJtugBXcLo-lIZeSXS8b6!Vjl$t0`=Lf@eVYQDvRR&y%jMc zi#sM`PBy*3Y3Aok`sdWYr;By6M}M17sTJ3jWWSnj^WmGC{)}O>h2G~3hd~H}SZ}<` ze0;r3OLEt0Elr9S!#W4=bt-E<+$?1YPIVkU)1oTn=!RvwRAXNU`fMluz|3)2>kW-KfwJ4(v`B{KwGq|sG87X30|O`|31 zR{XLDDQCeoUIi}q;PrF89bxk`vZtX^i5IM5#(V4f^z3Q5?KqcjBT`fAZj8@ja2(d# z?CQ!&ZENv6Ay4vwemO0CiW>)(@N+E!3~hn6culSD)U8Wh0~>59Y0RP%AJSCaf4gy{ zTyIU;aNH=$kH!qTMH_o^ zhgCF;bFRDRHQXa)EaMM&aoaJ5h9)vFruTq^*|yjThbMfK#2iITxI!j*kw+QHd7l|1 z@+1TV@HU;ux(|hw$d%=N266bJY1htnoPYlk>*W3vYVUKJdJW$i^f=waX82bos^4>( zl*yBYa(!JSe<*rn8>oz6nYmR{Ie_!SsJEZ+yXJujC zU+&x^Zq!Ak`(kk}tF+YplV*m|P10ZVa^H*~q4%+F$mRNErjXJlAt$?Tk8Jj+DMQPg`=m z9EZBzO6PF-?Y)g~J;TkhuYi`-y)O>ruJ`4QnvGchO9-75Ef^KF!yortlQH%7gO?1o z(oLP1;MYFD_ZDPbWYCYrR_Sae2pMPg?MSm~iJOK!-@2~fb{BLMyORN~8&^FLEF1A}4;)9UJl0Ivdkcmd=rGt_91xn-z@rF}vB&NtsTYctC; z>RmRm*ktUWLW*PLzssGkrhQ?85Grj z%F(#T(-bq8&EN!god~HyoJRYTtH^b`2f^{w+fu%s$Z-4p`%1fN2RIBE=bFj_+ZoAS zOE$?x1FLjo1CQG!+OHsImW13mJa94`Hk}(z30G`RS5%3WKtW>5-k{gf9m&gWiRI&5 zIZvCfpf)eI#wGX6XBK}WY{ct>M+MSQQiEuvW6TOtf}#SNwfYm1R}ypTJn$tpT(X`$ z>N!1QiO*i&v2PC8x6vk8!rQ_wanTePzqS5z(FG&r zy6%XFl(p+T=Ub5jtH`^nfFL;k*q^iAXL!t$sPQ=Dl{s4$_zg+cH6qNnsatoUik(#V zcKS}yFYMaDOK75SC;JXPV^AiUxIYH~e)o`*vJ?j5+Q69_CvKjOU~_&aKDlaU=vhKZ zy=NZnWaLq2ECj`_x=b^RjtFb>!2b%YDSU`5AZXKZdk%{!Fj7OTz1VN0Cp6#56vlzK zY}JcDPR}WeHsD@x_*+wx{50Tm`B?OO%P+;)ks0_<({-BC+7#t97!eV$_KejzktLEO!dElUA)Z;`4+A!hS4E5J3EFfeG^@og zf~f+BM1K_D;IN}QM|LBOPATeq1OpS?DD4(FYg5?&+okwcDAf1oclZUNSBRSibHzTh z`lXQ116#u-1=^*7F2DF+O#S{d_k!;p8B`jpb?RY32ahobZVGar!!`eG#^S770trA+ zlQXg%$8J5eA>(;|B4{2v-5YD74d$*LhX0N~%`b#=vi16W$7XB^`6$-YkNqjsZ7&y> zTB3wWg8v|ShbNO931*Tk+rgW)a`Id!&1-bjs?4m@#Hglsd5m6a+U(6H`X};ud-5W|kW~E$cZfqvhJMLn&x&R-{+|Dt8~WA5%L?ch9)z#wZ2 z*Ls=SDJOv+2w{;3p#up?j{-qmFw9I1#4)ovQicY=KQ2~|S#iJz#LS%VB(!eD#MmlprHe8#(`4vT}Mm`qBy+zj+wG6r)6Qr8;-2m?PhV&}=DOal>suUov zg0rrOt05wl9-gwpwvbyi!W~+>IZA@^EOe}DMW2i z`I3s-`w}Xi4>YitUZ#@+O6#7dMI8>{f;e4Z&z9k}H+=6y$T((xB*2})JaB@YVYQi9 zASRKWUt4bS@>>OJem3+OjCRXIHcLi>NS#?O<0iCvj_6fK$q_WxzDO`acr9Y+0LJGe zHVRt{(*wIE{URs6BS(RW!SWnAa_wky{!7o;P3LU!#Z}V~A9nSxOJhJvg`B~7M%zUX zOk1{ElThRAioUr0-8H~O9NZ{uHe2#;vl9Y1p*vnY><%lPw68|r%#!ze8bwcG1mH&M zwGv+xLzBDGWCD@DSBVjusc48ATg(&%&WCb z7N8c$n$E%_hF%X3uLNc6)OqM51_5I9M1ve;7&yu z`ObU9{p6x}UOC&@NG0bja;uD;CB^Nh^-{i5`M%xd^WMF@ofS)&E|eMGPbaW<188mZ zW5rpz?5?<&srh9JrBL|lQIlZtT8(#a_ zJKv!=Fpnw}InZWxG^c99r2`4hJ-{<;uSL@Wid}SJm(F~C;j*&nOjqVZM@ZQ6!;5>i zO5sC?q1(JxqWUy3Sc3vw=DG$0;P4+)X$mhAfT@70S2e~0EP<@t@wc{Y-YK4>h%I#a z0pR)niv`%&JSF=(Aruu-&lD)LTb^y{7L|2-CTX4mUYe#)d$1xN4;(K& z8LhXa49!=xG_TGDwJxu-0)}(k{gd#Fd_owcHpd|v;hni!2T_hUol8Z-v5}BBqddAt zR|C3dD_@c0PF`T%+pp0&9%hiTFKsu;W&Tlp{;%{UtD)lM>dbF?I~qrmEuTAKC>HN< z*uEwLm1MZjheTvenog4sWot9urtx!rAAi;1VNXu@tNhzZ5n)A>{CSMSmp3l!o)EiRrDE%7YWNxVY(;AAZt46gl#3@5XfWtW-1(J} zxJ+f%=q~fdRla+474$i_!Q*q%!a~lUuhAy-8a-S308Xm&V20t&oZvc0pS;Vq;UjTt z$}GBUN{XQ)o)`e<>de8 zMw4!lkW?L|+ysG4(s;}Vl;{xWl01nJO*Rs*^VZ;<3{Po10oPf_Jy^X6S{ zqVIgbyuRH~+>>Kh_2v1sg8l+rI^yz>d`^7j3acVHB?eYCuN|rlJfm0P^vLy70|`Y9 zhB(yIih@J|Md+d+-iN4-_jLU=vu)aF=&7M@1wlK$lk`)H+;mNdY>EWqGg(ekaaW?2 zvo&9)!;T_d($4qk!2-5xqVd0(Y%V32t18kEauu86X2Wh^UUPGP-OUCPFXk}u! zRd@!aB`n5_TY`tn`aVFKx=YRnc592tSmZ?o`>g;~{T8U|hESSN`Y!$9*(+C9==-Q< zr$Ip|8F+9hcZ%a0{xhjd3;sN;U;>l^#G-3vZ8#u8&b1x7r~oazpyHV8txG*PZyJE; zVW7xGAB^y6jN3OeU>kRBpGEsw*>5suvemWC*hb*Bduci5_&KYC-%2-7{+v{d4xbnR z=(7;`(oBUqT@U#hndP9uXebNX!nBB4l^AOa`ULa2E$1xhSqT_uY<3};>M6vGW;4%w znQc#warxDP%8tQ3flwfS%Dmay#z@irj;qO_QiXf#^F;QeM#@wi9hWH{P$le67jtbO zYibQ?nXVOlI|yJTwSdzbux(7;qP1oJ1TaWQZ*!doYu~9*=&YBbVjG2NG9e`M-AgZl zmg8Es{T7jjBw8v%ziAy`9A4yl_WBo!wdrG;Qu~TqjMi^ugWgrGF$mS%J4NZZ6SG}j zNBq(}^L37qpB1Micvu?n<0hHTL58=&r-&VuK$!9OUdbPqB(KX4#CM)QzxwLcKk%R1 z$1S#>8lY1b5Fs9=!Q4itKH|WISBmo8pEfio17ln(TEU!aeu>2+J+p=SwR@`e@=!`G zaBI!LO2YPv+2WMzw4Z%e_qR^rtF$X-UV54F=p^6P|0`V=Hd70u>E+kE|msaN%J$n5`F_6Khgeyk@&7OCD|Bj0i(Jv&I<|d#6<; zkA9lP=sC4lCcP+laF7XoaG*BrpnzM%)vV56D_4dd>XObZM6-Lrj{j0BITV|-_t^_`& zwl3eAnz5eKwx9~S1B-N~Ofn4{{o*NXY^7pFPlaiy#nI(l%`X|f2!(p)mLl&KdJZBo z9*k!L;n4D=uHty@_(7zjv-1et;fRv@do9Vq081*7Oz*NlvLA*w<>-wd!Qb{6i>%it zKF_E&^K_zyohRV9xRy1-sq@~m2$7EpyHf<>pPJDWyjP995w&|>2r2Gyf?!%KGvp;( zvS?%?RP7%OjKW6*YJiilm8@K8uf4pVuKwlBKA{}Bax_pV0pz7JI+$x?FCC}T*IZlvX;(M`_+ubblk^@_f5HXW z>Vr06^u|6z5w?JWCV8O^M1PJx8ZLUW-hbC$;82k>5L>UkE`^sbRkNq9FMqX+kdW_j?0 zX;tt4wYk1hF}J?CoOoHnpW2;ox@Hy?xR9pf);te{pWX@%Uz|}9Pt+G+3=H7&g~+*Z zL?h5XioSGq83Lzm87vN4Da8FgD2+p5raka8EgyEoo>}nRQ9>i>sde04$Y95YV*lA4 zAC-jjG*P=~g5hq&71(q!E{?hiYfRzfg_@A+sa+lP{H5oan1o{*VSVd zKC9roLWtuCI_Jgnb!OD|el<{wk_~sf{q?tx^9SH!VSC>^9#rhm!L9fFbg>20X@f@K zX_Yg?@f$yKoBhCHPMf`#+rE?CmMOMgkMKr#PON|V0%$Qch|g3B`@;mNsD%)+TV#WgeUX55t^V?3Hzs{OS1B@B%?^QAXHz4z_yjK0ZTi>Iffwh<(r+^<4nk2>dC2URHhqGE^VQ9=Re zX(X}oU!8^mGJvS$Yg-GGdsTY(EkV2L^UT18YdEh1;}QmVGLlh=*r z%(naVwtxU3d0JI0FW*gv!!S^Uk;HFm)UOxht7H(`*dJb=JPO|0o*L4n#>b!JH|K%X zyw7X%(g}r4BpQfj^lC1A+eJ-r{s|nJmVK;7!KIUA{*NPGWJ_3k3Pw=OIslAr?dkwF z)J3B&Dm+MgENnF5$92N+IR>g;`|GRJ>N;P4Rw$nq&>7;Ld$AD-m%K>w9Qv*{#G`H$i35i7kkVpD1glQ8pQ12 zZ)o76X`ztO%P#qCVC;b7tJ-LvP>$$eM$R#E?1-pgQ5ftjXWgu2%AXeDWdf2c0?@+# zNGVZOonLuUdg`uR+vZ1h;`xNl z_2Y|9_Q_bfX1J*|J;s=0y&JPp=9Zn+-6J;({sn92!x0(aW+&Z|)%6x=%(0uJowxjy~ zqavrGWLHsiFFUAL{pE|ZKza#BhxAl;n~$CnNi$mc)*NvzEknKN0z1cygm&)W+cIv!!l+;&&Jhw;#uXMT)y) z@8N7bimwYE*KtPD_e122YgeBGnZSO=qt}7~oYc7v8k&V7>MuYKAq{ zoK%`74pT7|d8V!fvlas$DVG1QRAA#M;QaA-8)&OH|Cv5;QlvcTsCYS7GK#z!wPykKFX zl&ycK;wv8>Yf+=g;kHi$1Tmw>AD()vP!bZCYIy;fy|i1cao)-7;+a9M#e*HZaYT}_ z$@-O@!Gjy?i2^!$kjoT@`8ma)La}=Kwev`%m{LZmuu*`6&BYWEB>2&XPX2zN4nvLx zVJFnKu}jmtG@zwYPreB0Hug1OyXyIkFA6(i&59$7@jH21H|6~C4NS)Z9V*ddHqh2J z;D2n9q_XYlq0!M6jrts~uj>Rd4@s*n@uCLNcf9w`jC)j+WX;Ze$AJLSZsGY*^kJh% z#)i%_KW>fi5u>-=_$tznm&cE9&Gyp#a6aIlx$f}%o{ED~^}9Vlv=|6GA{E1>f3`O? zT9w)Q1HB6=)unArxhY>~ZzpNqooBk5vdE*!LNIhR+G8%Ba{sb4%scue`d0C;_S)Am zsSN-Te(X+e>poz4qsKmwq@D|x{mryutpPvlEk=th6sKk}sXlJC0dbz^Hh{jtFfy?cO8H=Pt8 z98=aNDz%v-YMD>ZGOth3BD_W+36R8o{EvUjUl}O zq)IF7rd%>~>oV^YS$5i;3;tS_=_DrN*fUjf(^^>S+HuMCTIP#_Z?(H&YbBn45Z!3q zkvfk-g5cZW+h~d^5pL=(!=f0WCR}`iLKBFOvvDS{BQ8BD>}fu=4og(EuKwzed~)@P zq{F@)Zo8V6TFLLXt+9*xjCE7grAs;K<()6&|Gw?A)VjJM6}MWekp10apO>H18$*&V zZ}COdbEZJ(K~MT>d^?N?x)by=h{(VMEBd}>I9ch>b9uy|Mhv6}ZCw43o;q`o+*9YW zd>VNznr!zlrr#U*IK`g{*X>=0Ga3HN=ChxOEe^j$C^+e4vh60(F^m~`mXoH~JiC3i zb9g*-flqmUIhDGaWxPqO*mf+MIKe*mN{`()EWQs0 zS!}i!&_xG4k0@lN(f2w6k|&+}k^x-1r<0lsvI;%olW*5cK0_Q^ONgc_h84}N|D@Q^ zLamzJRSx)jyWYcD&N2q0IU5z}QL_B+<2m;B&AY+S;x{Q9t`ql<^{*6(7L8FY1#~yQ z;o?@y8r{8m?oAc$0%as=hBgjT|EWyPSTmD|X5as?DJ!VI^|qADSa7Y-%-MC-wv^t} zRZ5meAro{R!zV+iIWPCf;&CYqXXJ@lHBe+)TKmBVAdiWOW-AaoaLhT#wGojYm893l zQ2RT+S4R7ZP|k8t_FK`q^y9Q8`we4T_AAh8*m2G}D=%I>Y$HB)HB?NM9E`38Dw&H6 zSkF>X{jht%ou$z%zqzzl?Ha;zTSV(MOQt;m=8a11bJd85KfKJ+t2E4$u~R!(FaSjO za?uu8Tlm*iMbq$6&`wseDiQI>HN=u~8kDt~&6nBHSat4Nnlp&})@Qfzl|g@JHBTyl zRYlRigkP3Uzr%-wY47+8TonEqa7WrpO1kDX$sI~HGDiVNkJtluvw-(F>=KXjij2qG z0H|aZpVHmx~oW|fY&+fMMJ@1Vv1HHyLSWw_^Oi;pBztru+p1TvDd=~ zdc7JkxF@aj2A{Q^R6h^mB%iXSHB|{QDhX%%M;!vKUhIhlQl?THJ{~1TW@Nm`EKUx_ z?-$lq6&>F!XoM;Iw~>%(d5!U+R)OO3Ye=fmr=T;qBG(zL>yTkBR9UI7C#zWis-3!Yg zvU^{dxx+v)3+NS$L-<3C!IlV-vbbzuhCgRP$EK)Yde%-X9JI>OhWXuH*O=p5EY%Pj zhgXJ=+Y-;MCN1;yY@Lt>uO5~SoRf_wNM<0WNqOp{el$JrouGogqqNgln|t_(Z2aZN%Onv65vh0T2z$LO7I>^ZCkWiT zjc$~BZwFYe-_-|fHuO~2v%TM;hjx-dwsyj&Lhqv8I?BzW_zYqAreonokgb*^dmU2QdTFGN&JZKce*SCDg&s(aYH5QLM41jaI&+0ew+7!*S33auxZ#VtAAgk|M}9|1?h8; zapHohj>oKIP6L1PdQjK6RU5ckvt)^12lunA?%pfMF7*O3q&J-ui2zLj`GXp$A^!Gf zHSY+mAjsItRcYFSduo{Yl1fj@c)x5N}~#`^b4f+c$6sA8xi zm`)@mcN6>EaLab@3UJAJsvGW?CQ&k#^ZpMYATH z%VfIoeaQ}M84OUX@=HDU$1uMQ7w3bq zC0%7h{Ux^}6QfoOZqxGH8(8^Jj|{>+ukGApsb{7N6^T_{#P{#?BeC9?G*Zn|AeJ$e zqX=6Zl|65%1jUtR8M)81JKDlxE#?EAI!qU&@%L%%>yzPG>Eddg(Q*+ZZ4})9H4J}B zr#cox^v;J>H0D`9YA0hWAWIAXgunDgFA+IPhBmk^ZE&c-0J>0InGvGO(W@G1XRgwe z1j!Iu&1O z%)-mc4m>$a%2qUTEiLWzDiaqwJ`x9!{SiA+Jff!^x)zW=cZtkYNC zL+WK3g=fWzc$)AB;e#2e`6CTYIX*(ol~rVD zydjG6{LH%y_4G|W+m&HN@U4)ghfBretTiaHi>Kkh9zq`tp4Y;R9sYq40~3vR={+uF zbF%h!7P*Tp(2vW4y`dzsWV&EDiyIMaQ(29QGecH~ibaS~EK;eItwVSPdC)@8!0gCB zF@2a3b9U4>HC7DXB2PY4^}!9V@Cd}E#9$uS133TUZg5V}pdU6&qtc$(ltMcuyg(pz( zb}|1H)tT&qh}jfmSansSgO?at_=$ok;C4e%+_jAtj!dw|h_)d@+0d zVt8l9a-PpLOLts-h6LVRbe`rG?yn}~qyUn&13kJoexiw9psdLp33ohH=6o#Ek_hB|FC7cT$Nxdw1Lh~1JL&&Q#1}4 zqAKCjS37?6g1+rn3~zM;7}IH}S2`lz%Fe%_8{iQwhrxx2CNXHSAy+e#cCO|N{Ad^f zw9OffF-=#}wMdou=%{GCdu&QJr#eRiiu%`^jADuJ(57RI`wNfPk3~P>y{cQ%*_NVE z)jMuH|5$cl;d~QW#of|7y|1WwCu8uv6Zup0VD@JUgg7=nytNXGhTG6^Rk_r>UF`UR z*u`~sO#JM>SKDtXT-9Embbcss4gnaFCv)?K&%_9BGEOF&?R9XM60^*cTwQ+X7pgC`F@dwD?yb2w^q2W2Ixm{Fm4{(bHE@Gts)}YeN|BNv!eWFEq)XOkLv2s9-XTRY;mL!@hYxwdkhO!U z)zXM8hs3lM$~pA)VseD6Mw_izIoVN0qXRX}nTnPv_d>r}9sl(;7l!_H7L;Y4X*@OS zzZM)QBMfS7WN}s-0uI^we8&xRuIm@WDr764VzMsR6y(kWD1S`L0gJ|KZUKiw$B4&+ zX^^)hqtwRXK;EzEfA#=?tOwO7mkh~-_p!8w?~8%x{AQmKGT-H(Vz>v12{vR~$(MThKJw{pD@p5Ne>m|a{B_~eridOrX+yse zGNXr(G4d5G{rQ7KLEj_NGZ&q5_WgfAXBKi-7gq}(u2alwmP#M?q+aUtUFvOdz5`8{ zd+y$*xWB$ezr)c{)6;(`p535ij)v*3n%iV5x>Y1=!i6S|{l_Y6zMd^&;#fFl*OzYD z1Mec1neMG(fU}h?=7Ip|ucl1PYDWw-@V0YyH#Zjo3|+3Z2_R>y^N_y`>wTT^7F0=E z)>^%O_E|-^;!v;fZc&F)Du|py^y}i7@o+qA5`6P|Zx-cOko1~vm0YiHB0hW5&{NuF zh`awn$5@v9RiBQKYGss^tqfbkS}A6JhbyA(`f?R?8?wjgJ*H9?-md2;gI6J^zbxE< z=W|~@<$dFM?!Cn6aAwjF_3P?ucat2|L_LdQI6?gCu(=FRiP#vSSS?dQK)_;$f)PgC z#FXSB>c-r5zf%A0ugYq&hj5e(qo*@G>6y0445wMOyZS9a!)mZKFn(;4h&g)nvvNFhoGV>=jzSiI#T`)}oh))3i0j?e&ys`0gSFsg*8LVQmhoEsT= zN_xP?z_3LnCDqp1oVL^IaXnewW^r4xV*J4q!CJ|(B!VJTY40LZ_BvTEzPPu(^QO@2OIZnU zyK{FX2)=eH)0~}i9d*t#3EunVt>}?&4e2^w35OgruvM&Zk+C2P$Y z=<7w*!e{;RT^3uJEXH$iM3N6rYoTr8+T$8?o$t|?^ZghcQ-s-6s|{eh-Ry*lfl_R!YF z!Q^cHSXa2u|HOm(2$hU&z;uxzo3B)E$9y&>jk<#yA%e9FJZ?b*I(&=<>#!)>=Y5!bCy3?Wrq)S9Vx>;iBl30=M6p-#-mQJNRmhM=3fhFGC&+q#l2Y?nR-X}E!Y!h3`+#(m@l7DZD+-aH zuH(R;`+o)yl~%j)ULAsC@6RY&$bIS3-hV`siaxg47OW?_?2ac<1-fgkm1Jm)XQnt%czd%ATF*=4mnh<`#S9F(*6A5=xWdZnq06GS?SkWygOn?Q{QCd*uvcv6y_t z(JxX8+*9kxRvx9WSMiIB+7e{O_C6QQx`rLcg1NDOCIjRDscXoUtPFX@!P&@$EUY zGRI#^lZK`sDLmi+BZ)GtT4$70M--tiC4HI#l?bkHx~xlJ7S|s=b(2J#5~D}DOvl%Q zq8MRT27!q+iAJ$SO}57QwG_sPEX07XvE3+$oortK_imJu$p5Va%d+ov#qDdB0s|jY z1`48l?iO+i`dA-;yEI?s;2 zttz9?#ZBIf%7$9P=-ufvRmgn}14_!P$rJq_-B&ZZJ83ui1?h1s4SGw6z&{LkukP5q z`lf|c337A4w__`WVg>c`+fQf2(g^)kui^7laAfIj#hG*=CEQZ^^U6z7rR8k4NF7gC zf*xySZete#?WlQ5%A;-Df}wrTvXa+zjZoHsQYz*kGn+FHWOi`3{Bf+EKo_!k4OYK< zoJxF8k53LaKi68ddoY{Z|04TSjp*I^+uz{#ers9%QymYOF+TFvD_`NRWl$0s`F;AA zfO1dBY`$}$QoXLw-(A1<>#Xx#M7pMUt{fm0tl;gr7#M85l<0o(!6v!(4TLQApnSB6 zFG9wlWi8#?IFu?R^D>nL=!ztv`k@B(4`cZ>?*MrAb zx3jIu=!W3`XkRKE(RDr!hIP*j|Iz#~?RT3p_*HoWW%*UP32M{R>f2I(t(_etV<9Ip zN2Sc78P&}-iL)`1^4qFqija~X-R=Hu)|Eau%S=1OE_S)lNicLs_%K5SG-0)fao5{a zZCt#+h01HU6(|usd|@Vi@?QJJA9n4g`{gx0EkMvOJG?fY1{pTIsPsN2vL1O-St&-w zQx(-S4FK5vYsH;4bb3ke{i?@9!XhoH-?9NLy`cULjPj1FJ|H&f*xOY@W$92RLg7Ii`O82qQ2CVcdw{C14HEVcQ5|t<-0PO3#OO-Ig6#OAUviP9I~Si zsXWJ+^;;*Etaf7J49w1Hn}9lpbK{CE2Av3NGx%OO9=%BLynBlhxuHmyg?1f;PJDcT z?-fvxSJ1;8-)o9(#kC)aD9gz&ljmfgwL(un!}m{@BfBOn2pVnhLVb}tA9bu6KW{USd!L>s z4>=JZ^=9+KBtCyFv3;lOh4S13WBf&3fn_9uxb~4X8_DB$9CeYcEBGN%~OqWtWw>v%l!TBD`dtvGDZiP*% zGg3X5%Mnj<@03~6UCq6%jLO-|Jp*l0V2UrkCkj;T5oO9#jb+b-+}{l@LkFtrgyCJ_g*D#n%^cD-?Y~_&?=hO71Sg7h5UfV zA%Kwnf+{1R!t=-8vg+5qMPu?FoVc9(#-iHz?06H$BU(-JDHf&mB=bhGD1)K_ig4bA z&!Cq>FX_cpq@9}+Bi~t&DCQKsoG{LH=3QX> zl*}fTcyg>-rtB{*Eh90rnE6h~&=@-8vlx5P1q^^x81n)5y=zh3`{bx@-}6TOuAg#@ z(=Y=&MS9X&N<_H!tjb0VK8A;w=1ZUQG+OF%Dx_Xy1s!ykBjLBQ9_dT+-Y%D~UH_C; zrn>4Q6XE}e<3RMCEnCluu6^2sT)7~6eAyfQ-=`GHe_5Bki0=a}u)<09QpA5L_S>^C z3Qg#!DWe7gWO6lkuQ^V7snFJ|mn{4Lx>2~fc;i1iOL^y0Lb7X>c&gzcAn7CeDBMtG zpjm6+&m6EZ2E;GI6g_0D#s{YR~gI+<7f)i(!ulN&=+| zb)Oo)7X;r7sE=kvUr57x^juKSCcK<{vB~Yn-P^g0eMggQDZnR&A7vfPLT)B{k#>;; zR{oS;zQva!lw?5QJsHWNt!?PTf0R-PxuX+<+*T4rSH5`MpT}^QccAC~{>-@#dg9bhGS*2nSz=F?3u) zz$rsq|B*5Lbxb#5u$IqN)*;oObLJL5!y2TBe`%y4Ouwq;-;e1Zk+zDLVCnm1PpuCsj8sr$4^Y07H_aFnqZf? zxS`?cp1Ap{)s;__hSKEiNnLq{>zWfo?ijn<-*8KJN)-?BQS)7>75cTf=jmZ>IR6uw zPl#8m5_==1jJOuVyoZnePsq*DILIE<8#EYkmV&(|m2vC#zI@jnv6c9JG&26zTd`mdl1g9P<2N1WA*ei$>GGcJnrfKq%*J~>qP1;Tr( zZ#h#b-$qr-b2c~Aj|pXxs1`jLVEBLlF?YY;Oi=_y4q`UuN~!b4u7X3exT) z!!YA~g2?3a&xSuOvb2dCOdyYzawj}@Z;bOE= zG%+Mvz|%Y3o4KE@VD#n7FE*mr6Z^z)D?$p#qt5*wMW@bF=y(nVcO4#`PU2-8NYd&~ z4O+@;WK~UpaaNod*72>p%JZG$$IpT0k1viH`Ay3bO4fThyU_=&k*ymMgHpI@BrE`8 zkDuq$sgAhM&YG`jzUE6tv7A0EGyspXFK#e25<_4bX06=BgD|Oo@zYr&PQC&dJ_#Wu zKuuk9`D9MjUBYr$UYutK%R%y8)1t|g__s_x7%#u|JgBqN*1LQBMPdb5M|Fxw|3CB9kB5WN$f-IuOyAF z2riJDZ2ZmByERq@eMgxu10naq>u)`MVj9-xshu%&-qXx5@V4d4B$wfMwauw*Zyh&( zI8cg+pSk)afbjx8;>Dum8xlyt29KvD^QIANd6Y44!9f8u5WM%EVcl)zv>8)wT&j~U zXoz2bWU>XVX4tmA6Z2d!O^m2MvS?-nMrc61rf?SGg^f;{1WVb}Q(!ii-(jeo|3$zU z&R~qw6e8W0l6pqT2EResY>{3iSC+L>xz?C@Cv($T$3J!Cm~iJ+msb>4E2c!GiL)|5 zm^;imb+277y$@jdVmk-QF@k@&fU+adR~H^HDx#6Q&t%AT#X6#!1B72aH!;P`F2v48 z5#NTBhSD>`_ifvG-%&P4a+vJ6oHjQI@9vtBazukg_zWgfTra16=eF{?5j#@ark*hl zqkd^AIjI1fALzc-E2LFL662HiR0J!rXDl9A6RJoR?)BBsH5tDS)SC8oWZJrHC~hAS z=6iw_(_wLSs*kNGV&zyLLzM`)W*-ahK9t0FjM6NR(7t=BvPm8YTxVG-wL_;%>-{sr z>?SHh#EX3qfd0P_88!csa>vg&i^EeoZZ-CJG0UX0x#vF&pLW`S$(+RWopyb~j2R(c znTI$>NsYdjxV%LF=_sBpiPcJ{$K?(`RiY}!86*WN&i<0A8nAsQ zQbK=@v8TuLTyiRJhRgKm*m*MrynqhtM}emBZOI25ai9(@cxdELejWA?0j3PD2Vf(9ZUKZhb>bESG zRZ*mVPMMwaCpmyB3A;!sffxj@$x;pk5%MEvo9%WcfW{To!(Iox1M#EmxUiMw^AA=)$?^?gEi-FoouCD zm0u6)Fh2>?z)>sv*G*Gma8$e-J}fq=d;G7dLR7Qf2M$2xFQxr`#@`Tc-863?)wxaD zIET)u)ul=zW^w^QC*7st$zwO6#{Zz$aC-GuCUyQz_!q#UB?hzgCjC~zL?R3sJlum#2D&wd-%B*d0$x?^Dspw+RC~UeI|9s`cN@r2~C) zoo2*ITe6e#ulfZpK6T|vVsv6ysWr^EAb;e$tsRc-nFz1ZU(&@|1@xYuU$ud8b#PWy zZ(flF!inM@X6uh*yH>JR{aalohAFHpbq*cgf3#+5h|w2cn>`H@uGUjmmt^A|qZmAh zedRE-fwGv5q1=cptwlD(*pLhidDg{buJ6f)wqnUGKFwh0E{Eu3qIR@8>eu){D=3Ep zvf-M-e0j_NLf`Z#e96k&`LpLH9Kg$^8}1Yra{B^>4k+L|^UlpMAnBF}peL?|&-pf# z{jxV>T*o0b7V*`m#{MU};UY5L1yi7ZnQ5>@&ajLQXoR{4i3ut*0APKQ5KP#XVNG|!NL^STshwCn}~W%}tINSkBG;o=wV zwc1zgh?Dn>?cFj96tdlkZc!zwvcHA^pnc%r$RF7sc~9Q)9vbbQ?zgOjUpJxvg0UbW z;{=p0x^n0$Fr-ulyQ44WkgE)Qr@P$dP-!|Lk_y8mpgo*NPuzN+U$DD1S#d-xd^}*q zG|aNun|wD%e);}^Gb5fYWrvVnu+V^FPx3b-b-{+AgUrE-SyZe@oJTM77;304T0*?g zxu3To?3ig))RU#E1>m1`-jGTg(8|C1-s(>IE{d`fO78uh^=y*7{d8?T@-~_6s;0=w zXt$im$2Y}K0O7m&_$#Vr;gH~p?Bv_ms*ADW)z_#Ut0jMm9Q-H7MI%D5q}*1gIiLG1 znK7Kd>1>VQgJk_CHN--P0@LjuudQB^9OM}2 zOiyLA+d7Du&g?m6@@cmz0!Zrk!Jt@twnV$H?^@j%naNoMdnFo2*xO?#-B|PSls&5e z#sQryDj)FY|M4B#Wl;fJ20L5Pwh^Q)-Lb%x^sE3dR=x&vhtnkq@HRmmk#&zA&{H$3 zM(+%uuOt7)oIILk3^V9{b@P6A`7&)Z$C&R}E#OxaV&3I&Gkq)A&1BZ3VA&v|B-S|c zJCAqf@kOy*GuzWp3+i5Nvq0_RaY3 zclRdn&3i(6sUhkX*TVC_KYhw0K0q?{K@#W%h>&?`U?`P0~*$Co$Oha7;4LD*lmO00SP1Qyx7BbSR;U0`0=`s8m!N-DrJs+CInL?y@*v&bHU+gz(cQo{pMcuNG8YA}6_q z|1cbGWDdwyU#`vgc6=V;unC-2hx=~SJuHVyiO8JNHVoNaM5>{fHt4kp66TBP;3V?e}Hhql~~61@{V2j`=zx8+ZWb)4*}YIvE)aGYb& z_U)ae=XP99J~BW6>1P8Ny|EZaTasLhTI;sUk1_jBF=Fx{=u=TT*n}s;=tn@`yz3O?}@bMt&n4G##^SG zJ}@ti9`%!T`K=OI@Vk}Nu#$IK+HR~8YHH!*Mj!*;tWP9djyCSQ=32ZQnF+eN2b9~E zJT#@vYMJKI{r2?;2|KUA4>|WFD?1)}d4|lyPd;iX1JIn}?Lm7b!rr+J`E^Va^@zSP zL}8^_-O8=}zL2D5P|@CTZU2)9j+%NcGe~@}yaw`ZwevqA(b5FJ$6RRieyDO_}r6UqqgO)yN@Wwo__LR4YOr&Jjc{ zF!+@4?bYLT-@}mq!)+Uj0L%S)+dc9p_YB(t5xbPUjy;hNW;K(4z*z$(76v`MaORwp z#81<8_(mXLDWiG|ugA*@>@ZHPVKPi+zCXxtqNehoEPH(`tZkmB>Ed1Za-?yds6piE z#C_Y-xqp>Yb01iPYfK!JCYV>oPS!4zjEF`cMP}8-D?pb&VQ%r{)Z!tNwE{4COJYjyJ*qXpy8b->tXzEPo?2m|& zQ#mSc*y_i0+bU!utv(%YHMKSFlHTha-_`lj?>%RM?X&;mN^z0Y*6GcQF0CWeCFD&F z0iCKvkr#8872`=7o9Ldpn!qTR=fiIK7nHG1C?OTn{~O9cXy?OZT}31Ipc2p%1Kc;s z?Xqu4wU1rbYeXj54^xPDu=K=V_Tc@|&_}_9h9d+5L3cb^x;WdXXjn#>XVCKm+dyN@ zce;U{@%PQ9gAY8kXDSb$zjrR~ziUbR+}8cGH|Bg5TZ;Xk`9`)<#%`G0D!E!BT<1Ag zKtj2~gP2KZJlfMI78m2)*NLz_x&fb`j}j1X-mU73yt6^|c?{?j_`el-JN9Or>96)g zzkNXJRiT%T_L|4CQGzCmlqL$UDP9#dFdQF47Pmb~3SJFq5; z&AuST@LTXZyZWmy*sI>n+TIbTyKT2w%7IzyQl%Z8b0q5VejDOA3#ZX$gNqLMu{`cz z37fg;^2Wo>IF%%u7Ic4LU9t?;NHxs@S5==8hI1BVv+oIRHtMckW$ls|BpDlfZ54)+ z{se2Q@1}ztlslR}t=cSs`JdNjOV#crA-NM0f-d;>M)V;+EFO1N9@?HbXci~2^E2Ea zgBVT1iNT9#Oc$z4xC)N3%4f}Xgr|PPO60H7!|~1i6TxB3{yUn8H)63gC(;RV$Qj5?TG88<(dXhY||`zFU;AH+vF@6NSd~>@3Ma-ux__Qccjd z2qt8%F9BefwDLxZs_%%#V9>Om7mJ*Ecdy~+UpR$&K8ILPdHsc(%3<9OtbghUI?bkU z8^BZNGM*uIvA=&sUBBB3yz0_GQ}5wq;58uCkyTIf$tuZiF4T9%-l=1-Q1sWebG(9g zEysuVlvaN(&0u@B7q{e+eKfeT{#5k=x;P{eZ?9HqxcXpZT$y)$W2v2`DB;x6)>%`w zmsY4+%Vk^Rr^RqB;UBG8fO<4!bQo6J%6xB)3iy7JHI*SEGq=ro#~hH`Y%OX!z#=nq z4Bhg(Q~r7sgzc)dbY@NTQGn?Eh4{4F&W4gq$84V;X;x2SNrsHzx&E%`a4>yC_sQv}TRE>qjNK zi;lMRuc`;-w$vCE$eoV{M!vQWE1CQG!H~#0DC34bOYq=of%@w?{~+9pI2Grs#IO7? z-&?aq$FmWytZ$r|d#2A^g#4J!z%OK^boiSTkA_Ju_0{3ZPf0+18-^v9JRc_scq5U= zDh>1TmVC}(lsS<+5V3y2U@cSAJzx)pOKmKp%Ixdt@JH0;R>!;Hnr)jjVe9f~=ETMP zorCY81Ob^8uAl0MQsMp&`&nV+uv^v6EBFjSXc-=w);ore1O=0qW+Vu?k{_>#vCNy| zUI_U%@e?Paj6%-t9vCqfeY~4ogYOZ<+SXV0SB{_BL?L95MRo7Byujkem536SXY}O) z6jXkPRF!He9V%DHG0qeTxsu3vz>20e#CkW@CszK*@iJwMc!T9w#EbZ7xS4Z@Catf@MIpN)}1vx^fA1;!cZ z&$3GRjL#T$_;1dn$I{+WS}M!`K#D7bR_=&KEfiZA#z4Y!6Zm1H`Y)40ul7a{ z?}Ye_C+qf-EXkjE#DwggQu1Ux4n9R5-AR=g6pg7f+CB<#MVsPsO{$BH-fWWq0zs~w^maL4xp=%;*|UL zEFJ8`yUb&uV3(+k$Q3j@0>8WBx9p<`Q3-mzk1g!B=zPa_ZyC!knMlZ;-%~g+m^Mo_ z7#ogi+-?Rzf!W0mzIopd28EpG*SR7t6SB|3zI!fjdflZ4ik3cH)k-8|ZUkTq*PQWe z^Ve}jJ+>jHSE6?Ax@_$0CDXqC(h*!;d8|FYs(<`)uTKPlKE3Wvsdo3j-6GBRG%B;d zzhe0)tNjeiT=X>=_;Z|x8_zO# zfRtt#hEwS7Ruz8ibn@AdFP$B6MZC(BpewWL;_MEVRyWO&_0O7H^2Qko=82G{EpoYYYIC`oxb_S(*` zsUGVzg9tZOAFGYpU`xxN$7p)7<$Xn#y~FjWLZgDzzi&%cROFsv$x#u1PzHhAwF7zH za=#m~)1JH5y23pCteqLJZQpsT^}(67#Nc7(x}P$k|5ozEeD_=VeMK;s{WI|O?LjkQ z#_(nW_P{y&v#rAvB5W(KPS5Pd!f+wCiH}^##CbrwTk9S3<5Wm;H0c06benO9I`A(U z(H2~3m&7W5A{oyz@=~cJZIx^wHv;sOk;6`kqsVuP=c!f9@Q_%U?Fj2wIW66zt2N(t z@p=dN$WVsLQzWDHX-aH~*>9q|rycKjCSH~q17dj=LeMQMM$L*w-M}uxJ~_cDR*Zi{ z>?}>W^=Cl98Z1c=T_)gWstytB|Yf2dx{@eaox?%GW@je!_x%m1YOv;T^z0r-}q@}Xjm$_D0_ ziFRgUC1}oWYi*tQq_Y}gtEa?y78<>KBMZtww0qR|CqegZEm+sUV%G&)yUt82e`)gm zBiBAo4C7~k(inPM*BgE|<-2qYsM=FXNVNB6q<-m!XE3m@XJ@6q)F~p#*#BYn@va`!|3&$q_!)>QC}H1GdS=)q7}wxcZZUky z5S*>&cCBw#L>QZfDArCfK>wAHwTI5>XJ|Fa=H{DJ`xwAp+EyZd)NHvy}y5$kjbz{F1sXK8wJ zIGAJ$4^qJOf|z`ZIWy$F)V*>|Z#UQIg9Bax7C}Y(V?Z7H(cHaG{oXmI-^~`48Z7D+S z1a74L@=9iI{TA~@C7nMu2iHoSl6M327~PD9PX((52;QhDeAmu*cIxWtD6%Cy9bP&? zCimRtM4HOlW6ALhXWgN?aSU5ZD*}(a(w=&;AC3=-?DOrI5=AIOk<=nqZ;7%XE zzHN%`y?KYac|m(kZ~a<;jU|Xgo45tjd00@Bdm>FEjs)OLuUE2CDJbaJ$ON9XSj}bA zhr0;BUPKTC;kubyyB=^$Ae3|(+X!@gEsPdq;*&z(+NFH0<5T~n$fK6wxO970Lo^%* zh#f7VNRk?fPBcV@mz>Hzsu)@`sziR|jb7)SnoQi=`Zh^jk($dkFqob9T1?yhih&J( zX!3#0?B$SaR^*TzjBxtrUtTS4AYcjOG8DO&KA82_^Lom`xMPB1O-UZH^1sfvO!Id2uT z#9Kk@=aB&wluMkky~*1C?UJ6c1uM0q`OlT~ic3;oD=nSNFeqN1!FV|Tt|Nngke?(q z;s{8pt%9{!lU3gCMP6ykV&D_kDNEjB1Rn%@Aq z@I^Tc^l-5!R8+e@p1+w|NPV8)eoTrm`gQu1FGHsO>~<01@RLQLO%Ih=__jzre8=*O zbv;D#Q`P&giqHOwZq;Z`A?DCL3S|Dk!(-s13w%n|d$LqcyFi#^ulPY}iAWDEIt2!A zFZbm76PyE*CrD!w6)Z{Rb-ss0O`@^WmF8{={nNIoaQ^kiR$e=Z1O=?XiV2o{%YW>R zO6eIj@4BxKT@3C>{z%tN-{JSR$LbC#L`hk0oMN^dzA+M?X!AXtAQjUv<#GLM1?RTH#z3??+_k&G>hZIBt{!5tkqghqfDWnWRS6C>+qwJyOwReR-{@$1s z7Is&|a!?43N*sq6o!6-^h$3#aR)z;)$KUn0X79IFV4Ul|*Qbmt);wN5x^UH<5|#Vz zxU--d|J!$yFH*_nsQA{gS6Eje(6aanQHbOTFT!%#9nd*OTG?QQJCB4H#5)QUi&gw$ z4ySB~e$6S1)ngQnru&xDTOB5?w6czy3!i;)%@WCCZ|51IS>2-tEso!4cJ@qs)JXnL z`?2%hWJ06Q@m9acKqu~{V&C?H0KxP>WB!7EbmjUD$LVE>ypJt@=9Ii=ToW3{>(9I# zQ_J1G_S9^^wF!aWtc^xFmPqQ{hb}C%jQ+@j-IzJ`cHKOcxnEnSdtUIjStsO%?Labp9CUc=Fwx4*}(gI?gqMlE? zyU%5RZXt~~&nWA$)Gv3QGO1GeGF+s9R z$vb!>VwCsnD}?8}fbz)Lb0YGQiu|t0Y9)`FVkkyJKNOoB4v!v^s+0#Ua|TlG&6^tk z)Ar=B@W*rY{D8XHJN^5Aw3bfaYSbz|A>D6mD)!^#WU=p%)*l5N(;i>Ypvf4d)}zXC~ipqW-i9Ux(Cy-1E*3Jkcc&QYb}Rw7$h=zbhL5Z}47 z_K~r{bT(gp8QZ)gj?OLDG^0HAr%y@AEw4te8mqp|6*uE^E>s^4N9uNBTQ+gWqm9asUSt4o4cK81 zAJf)>nrk_aFYuBYlG#n7;a}k7_Z$bAgN^bIFg5{40_A0{SSJW1r!0?QEd4E`v~OpQ zjBM(aC@B$fqn5F=7zqacwR&D#|2W1~yAYOHgGabaIAf!v^LZt6h`GF(fE6)7pvgn2yfmcKPB&ovnr*9pVGY`C!u4j0`4bDk_BA#Cytld{& zt#4Mpc*Fs4MMlQm4d}^1fU*PxX|Db92q*u6N3r0JU+sC4V&tV)wZs(Yd9QO|l$MvR zIn5%u*bL-l%510&cr^Jx2}%jN5qb#6j1JyHrEF={%J)aOrxxz)wb*FP!ZEo`8ROa- z*6@F}k2s1MrmRNcXJGa3B(tO%3}3Gg$Bv2EFfSpa-I$|m~>Cm->a^c1h5LA4>>y=s$6ObdyszW;OXQVYj&327 z0V>9_`SZ6WYl9s6Iu$tylE!auc~P=Um$E-ccV0fbRejrMlV>&H3x7`Ejg7bM7r%7t z{UhcqEg9pcIOB}^O7QShNZLR2zRWg znKH1gQxcv6wyVuc^{2}TTJWN&SS6)q=9`?A)a^OQd|3QIwE>^3G7XyV!$c@B1kt$C z9a{T~Xh*}8{cTO#Z^%Yj)0>@{&EjUtmS&3S|H?7vtaxcL57o}kDFAkNnpD{HC*sLV z!6qhZCZL-feacX|f-m^=-b>U4HaUBn;i_jJq9j$Nur^a!L9*bBTT4r8OG}|hQ6O=n z(l~y9cG50+%q#MDw2)+vXhD8^xFJBTkBx*3zRx)x&YDlW zNGnwP1=`n6EBf%Oxh`S5Mj)+7E#{_rI9VTf=S|iaepNE9ze~Kky%B3fOWwmHF!1i8{`<#+wYFb$zB7ycOt+SL z{Hpu|{|Yuj9=VMK#PT-eQJg#mC_U$KgHj+G>=}DV;r^2b*fYBtPNS9OD5pKrhTYN+ z%vFs@*Y>lIPzLtE#DZ_PUlOdu&L~Iyg6C8u;;w!9dd2FWtDe%ZkTusSp&Hnp&2auK zLz#USd*|jL_2Wwg!v_nA|2||aVy_*)f6gH?xcuV@iiQ(o8zYVeTT2uAXEK*eNBdZ) zL@NFH6Yf9@I7u#IxZnd#|e^gGfj z^f{*k%=s1QWm2Y$-y^-F-}wkp+j+f&%*n{?1U-@x!rd)Io!D1mSg4NByw`m;v0j^P zlfqW}9QSP`FmoDgRowoxGDyI5Nmw(AX$$TlZHLC#>qQ*pf_K4 zIUcNQ2_Md$_TMZ&)OEf;r;?^{2ZO}|`PVy#?@UA)i_r)%c;_&DBssM2&C)Eq0>5eZ zBJpoP#5@#!uSjO8kdG$V_3G&vrY035pM_gH@kkxD^dG~7MA;9@91cXzLd0S zF^g7LU$10>Xadf`^`Di==1G+|47#k(e*COofNR794S%xrxZ6M6s5*mcsFMAQeg{zt;2WO>2-oOmFwe zUX*^$G8<_G;@*49pmUe8Y6udu=gMicesuCHN>Y_Og`-mrcezNbjulhZ))1QUGUBOrY>o{1MS zTEpP^67>~<`Ea#~=kkGId5r%x{jfmw6CCdzTL-F;?@>Oy*PjeH;I2TKL5{@eLLo;c zLsoWK%G+HZWEn9XlL+L0Ikh73~(tA{^(wM3pXq@gH#li%9T(ksX*8uWeRf zxeC0DL+>#W@kX)!%K`YQn1?BPSZ(8@y??*BNl z4ZE2dF;(ZuwO?0EV^hroY$grshd1vtL$vYSESJoEapP!ITShXKfs zsuZ;`I4A5^lKwlz;I}{h7BvhjL^`3qYR4k3fAII@j1qPvtVs!%yQi)_M^MW$_}s9jA!9uRVvoEB5+$D}h!i$90&7H_%s4^M6jHGa4fvP}*Rk!-6$*wfMm_*LtCfNe>8p0tU& zlAOcR0|t#a%R2`qGZPrO&wSS_wVP1t{v|Gh{V|PBt%*{nkuw)7=?AG!31C`gfJk-XpdxOo-5stSZra7D8G<=hOg&6H zR$;b>n*N_9+Hci6s5m&nG*Fz~`?E*G70yHoh3lKV-8 z*OuntiMNo)hus~sR3o|nJps2%11RGr$@+@k(&f|>Z74E?aBE|G!akHc4Pv#}bip1s z{z^9NVW+0P{{uxH-e|m!@*iY@n4BZhlr7B7kv@N+SobUEamP*_=>0D60HBML-AfzhH)IluzfK=6oY;n+dPR*D$#r?|3yaYN-D5 z`dl;jIA}~Hknp5(g~AzJJ%4`%r!u`dAN};Ftdg-6<680r5_jUJvNY~}CNkU-;<3p~ z-I9CuH=qBn9`CJ{Os(MFj{h~wqM<|BSd1M9dzq~ z8u&)B#G6hqoLNu4OC>$O;2Be=|2@U}SL3tof{+c96Mxe=rlUVMSl_A$v3;y-aUN05 zmlo}-VdA8UIeD0xmvdkpCYNt1rxj1KNzCL(H5euMAze78^6q}_Zr3si+j5frZ=~T8 z{{J1aQW07Tx@5Xy4kKd2D?VUWlYD6r#|-shHGqzl$v%*Qk2QU3tE9jAgUaWI`xR0p z5xC@qZ13=AYC|p`9WDQT$GJ%;z57*8v5)yv8mKJGzC z6O7vl;%{yV#Ur~LR@mldShr5|WBV-Ob$Qgayx;WPm9U$`)F#6i)jxMbJkKVxc@9Xb zUTRr0yvDE1MSt2li^@v&IO{KB+&owTp_3H(S?mhkU$YIjbPaa1O5H~H@A#^8jj6tm zJdfyaBii)e>|V^OCO5_b=&a|2|9TaG+o zQj_WUqwCwIUF-f>{ZH9#J2=^YTYv2D-@o)d32pQ4=Q6l(jB9+(vx`1?9tC1#@BI`Cmn-81qW7xYpqL8&|!z5Exopn+XF#fQu^ zUo}p34@cKcK~h!^nE!slt%#1=bv#TzsR4&RXIoMXC@Aj@r99&oie}(WlKY=k2#LBy z<8dy(EsAB6F+k?jymy!Lo|M9Iz_v%F%_KTt0<731;fB$XQ|i?`<+(B^B9mNq8ObfJN} zd=wZfo#2;ZGy#1&{&_hLEZLpZ9^o3mZ;^;y)ev^q#m`cNo%uglEyzj#=TlM5^6CG+ z6KV%G-4vVb205K#duPiyAR#o15hue zV88LSCP~7w41fLNXW04w_Ti*(%coBVU$-th#%SX4;^h6?zY1R4{*?_svJ-6Ep{1@i z?aWTvAFeR;OA7w}{l?x=f{m%RBf0yVOI(qz-v#%UoeQD+q}+KpnG57eM( zwn?E!!Nl9ALU6tHEVmy1n9E61>gsN|=<6<3teQJn{e*OUifPoeqce@I+W7eEex{jt zKhM5@PwL|ZbIzsU`*BKp)%&mQfjjkrM_j6M^T# ZFl@e*TYCAG!#V~a@O1TaS?83{1OVfsKLP*% literal 2690 zcmV-|3VroQNk%w1VWa>k0K@?+R)z_k+QUTJ^ zo~>U2d3j%WIsvJufPidAR!ldsi%Y?A0icCVyu6NYSUAtmo1L6@+S{dKV^84Xs)2xH zrFb^M!IA&~0L;vpA^8LV00000EC2ui0HgpY000I5;3tkGsUT>oDrM`wa4gSsZQpon zDH!Gaj>7@y=wJ}6oN~!*I+qp%OAkK*f0gwnRI44J23k(w! z%E1?@0Ka+s4p5*lz=0}?5H`pg;P9U=1O)>B%pvFmLBL5@5-j8ZLxF=kcoMjJCvx8g z3LO-D!tek~z76z9n&c+R!yN(zE|kQ9GS-{`>?FWIQ1lWep7XE?C4u08(M<9fC>^2T zgbEa6XS96_S4La6+IG;Lnysw{2rB0kIDn)r-xvpD#Q}iz%7PabI$%Mz(^}ZIEh>i` zsSSex2M-{KuJFadhk`Fo{2={>bQlCBqagWVfV2Y^7&=f9EqX(g5}l`=}m_;R&UymE%i$`7RUaGmo9p#rq%p{`{xhN&m0h`&PK3xy=#Yggcqh0XyD z7#M)NQoI3#0~nM5K^N3np~Zm!On}<|3{^?fidF2qfB**z;o(jIJqd8Zf-Q(+!3EE# z_1yreRKl1*c?57kHe}T{4FM-^aS4nCu=t%v37pf&6%43n1s=#)0>A-Dl;xC63*^+F z9uWjc0|FN)1|uX`Re~M`72uI1MQHidfpR7sAkPK^xTH#w4@ROAWddlBgiQt9ArqI7 zP%;Mq8#rlGEN9BGKq^=SAd42o37On!2S^e?P773)4`wxW(A)w9s5wmnE||&Qlt=Be z;SB@)l1K%rT(VOE*8xW96)N6#+JIPmg=z*V&DaWI*-$`=lybBK%NCV1(8rAs6i|R- zap+|1vKd?e-&PsKlFYHv#_?GH3kpyWWEStFb*K%AoVI}-X%04K0k$gBECL2lcSS8d zZLlAu05r=23j)~Vt}+%uQ|F8g1n?fB8$^p0bp^yTkFzpB`ELUm?Aq8J%TZ8?C2EGn z!~pJcNzXn9jJs;31u*afbnhlS&jA%wNli0Sv1q`=?{2owKGMzzfB+&`5Gn&XW0CL$ z2M|5Pv)vr~Q2-1`tjDz_h$07NRAQHdO>ta85j-GUfB^(kw-SIeB--gpcl=mj0I-cF zEPw%^C?F{^%8EqK0b*?66gxYADFVAWTQXQ-hBXYd2c~A=07A%8l4%7~&!MK>WNLHQ z<(SWjt469qksknY>^~mNWq=W+{l!?&)cwhv$sM36yWNO z(wa!54cRs~#{+LOK5+u*U2w5ZRj0L<0<3+(+h~PUfa)=w=aa$r7dWs10HZ5Ij{xuK z9RSyA)mG~3Zp&@~1=8eUI|BnF3e#eP{Q|tp#u;7>Fkmnt2>?KhLm8&9r7dAA~FEnnFLW|q5;&s;OvNS1np4%BF+owJgg5{TSY_-a6Gu?zVjT+@clL3c z0BNU!K&oFm;`c)TNmbD}T!fF2N=2g$_$`NL91PMR(*dR7fe&3&UL~ML7LRy^8r|ZD z|NfS(d{Hq?0Vr0fWU>>_!9r2zTakVURf(NsjT$YK-`pr=944wUQSJ&r$=>JytJv=V zJQM)|r35i&As{g@vBUyWaDupDX)>I$Oyz)+n`z)-C;SM{rd**9XDsWO#_CR5D##xQ zLLdXsshbODCk;K6OoE?`WgAJ!$^g!hfyTo^1tvhw2$0HkQ;R@3IUqX>kO~W1*hw+T zl$tllL;{|h$49b2Ov+s&WE%kJGw4ylEiJm^N@yk@+l9F^deLPFhJ2R5WWLo zlwb7dNeWlhyV$*ue(SmB1ZzmqqH?noR?uh+6kq@un()$E1PJn^A45$vS_?V~0g^b?qLz51TYDE7AN-R8ZlyNJi zN3$S682HRlv52goB1?%zXi=1!z=Z{hq6a|2^nenIK(f@zG!s@(51oP(QFhoCw@NWB z67&qpiaO2t1(q6v)n8|wnpi$fMyfGj*Y}1?+-Fh?0O&Bz_tXL(pUG$wNg;bgIS&V*K%tJnq*19knFJ^`n=(4AMSEM#O8_^x6iACt zgiy3yy|0x*7^Er}u>iv+pj!+p0Rkd$Pqo4oWS0cwH4}V-3c^%mD>UCefA}${oVx0=i zBPY2a5na)OBjlN<^QZwzcM$7ZCAc;fY7tdINMSr7@v;5H$~dT!SD)aJ$Y!P4CDj!F z3_T3sp;zi{k&IzLn&ShBSiwj|6cE4{aKHl$Xdqg=f|%F7*%y0k37+{7KnDa+2<)0_ z&lm7amD7sVrR8H`DXiiJW#n3TW}#rDN-KMM2Z0TBAOkIvkymF|ZdV#|H5!$Y73RUj@ja$#*T0J_eY);rPpW-dn8InXp-rFHgBaaxFu zl9Y#f9VD<`K}HrJAQS}X4RINKUchkmq+M+)Cmw772fWP|lhW$DZq+tpD#8qBc&P|T>qM;W7q|B!;`2>LD>lY@bWi|0V75@ag>)9l}% z^L$Vb;5b<{(1H9G>zD^!Rx_?)x0-4e0UaR?GMfQgn2Uf14xp9RFTz%2nlN9)B`(~Z z!PB_gJp*sUjl7Qez4Kjwcn84yaN#a^xO4XuvgybLkb?J{z1$fAP#2 zHp+>@04TtFjdTDusqsC3C7%c=384r(@cl-nPyOU%Ya>;c{`6PMBHcXyORRRR+^SE0 w?kgb?nA?F+K2ZboUoKoRIJ03KGJnm=_5SS72LAD{gZ0Dz{QGx*BoG1sJH3{Dv;Y7A diff --git a/examples/History b/examples/History index d04dbaf55f..2198adceba 100644 --- a/examples/History +++ b/examples/History @@ -16,6 +16,60 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +4th December 2020 Gabriele Cosmo (examples-V10-07-00) +- Updated reference outputs according to reference tag geant4-10-07-ref-00. +- Includes tags: doxygen-V10-06-03, exadvanced-V10-06-00, air_shower-V10-06-04, + brachy-V10-06-03, fastAerosol-V10-06-02, gammaknife-V10-06-02, + gammaraytel-V10-06-03, gorad-V10-06-06, exhgcaltb-V10-06-00, + hadrontherapy-V10-06-07, human_phantom-V10-06-01, + ICRP110Phantoms-V10-06-01, microbeam-V10-06-01, DMX-V10-06-04, + microelectronics-V10-06-01, nanobeam-V10-06-01, LXe-V10-06-03, + radioprotection-V10-06-02, STCyclotron-V10-06-02, + xraytel-V10-06-01, exbasic-V10-06-03, exampleB4-V10-06-04, + exampleB5-V10-06-02, exextended-V10-06-00, exbiasing-V10-06-02, + analysisExample-V10-06-02, electromagnetic-V10-06-01, + exEventGenerator-V10-06-02, exExoticPhysics-V10-06-01, + fieldex-V10-06-01, g3tog4Tests-V10-06-01, exHadronic-V10-06-03, + exMedical-V10-06-01, pdb4dna-V10-06-01, OpNovice-V10-06-01, + OpNovice2-V10-06-07, exTopC-V10-06-00, rdecay01-V10-06-04, + WLS-V10-06-02, MPI-V10-06-00, ThreadsafeScorers-V10-06-03, + exParameterisations-V10-06-01, exPersistency-V10-06-02, + exPHysicsLists-V10-06-00, exPolarisation-V10-06-01, + exRunAndEvent-V10-06-02, exam-ext-vis-UVA-V10-06-01. + +31st October 2020 Gabriele Cosmo (examples-V10-06-10) +- Updated reference outputs according to reference tag geant4-10-06-ref-10. +- Includes tags: gorad-V10-06-02, hadrontherapy-V10-06-04, DMX-V10-06-01, + testem11-V10-06-01, testem12-V10-06-00, testem14-V10-06-01, + exhadr03-V10-06-04, exhadr04-V10-06-01, exhadr06-V10-06-03, + exhadr07-V10-06-02, NeutronSource-V10-06-02, DICOM-V10-06-00, + chem4-V10-06-00, LXe-V10-06-02, exParameterisations-V10-06-00, + OpNovice2-V10-06-06, expar03-V10-06-01, activation-V10-06-03, + rdecay01-V10-06-03. + +30th September 2020 Gabriele Cosmo (examples-V10-06-09) +- Added 'physicslists' category in the top extended examples in README + and CMake setup (I.Hrivnacova). +- Updated reference outputs according to reference tag geant4-10-06-ref-09. +- Includes tags: gorad-V10-06-01, hadrontherapy-V10-06-02, testem1-V10-06-02, + testem3-V10-06-01, testem5-V10-06-03, LXe-V10-06-00. + +31st August 2020 Gabriele Cosmo (examples-V10-06-08) +- Updated reference outputs according to reference tag geant4-10-06-ref-08. +- Includes tags: doxygen-V10-06-01, brachy-V10-06-01, iort_theraphy-V10-06-01, + testem1-V10-06-01, testem2-V10-06-00, exhadr03-V10-06-03, + testem4-V10-06-01, exExtHadFissFrag-V10-06-00, DMX-V10-06-00, + exhadr04-V10-06-00, exhadr06-V10-06-02, exhadr07-V10-06-01, + NeutronSource-V10-06-01, OpNovice-V10-06-00, WLS-V10-06-00, + OpNovice2-V10-06-05, activation-V10-06-02, rdecay01-V10-06-00, + rdecay02-V10-06-00. + +23rd July 2020 Gabriele Cosmo (examples-V10-06-07) +- Updated reference outputs according to reference tag geant4-10-06-ref-07. +- Includes tags: brachy-V10-06-00, purmag-V10-06-00, exbasic-V10-06-01, + exampleB4-V10-06-02, testem5-V10-06-01, exhadr01-V10-06-01, + OpNovice2-V10-06-04. + 26th June 2020 Gabriele Cosmo (examples-V10-06-06) - Updated reference outputs according to reference tag geant4-10-06-ref-06. - Includes tags: exampleB5-V10-06-00, exhadr03-V10-06-02, exhadr06-V10-06-01, diff --git a/examples/advanced/CMakeLists.txt b/examples/advanced/CMakeLists.txt index 49850fbb92..bd0a9479c0 100644 --- a/examples/advanced/CMakeLists.txt +++ b/examples/advanced/CMakeLists.txt @@ -1,6 +1,8 @@ -#---Adding all advanced examples subdirectories explicitly - -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +#---Adding all advanced examples subdirectories explicitly +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() #---------------------------------------------------------------------------- # some examples require Geant4 build with optional packages @@ -15,15 +17,15 @@ add_subdirectory(brachytherapy) if(Geant4_gdml_FOUND) add_subdirectory(ChargeExchangeMC) -else() - message(STATUS "G4 Examples: GDML not installed --> ChargeExchangeMC example disabled") +else() + message(STATUS "G4 Examples: GDML not installed --> ChargeExchangeMC example disabled") endif() if(NOT Geant4_builtin_clhep_FOUND) add_subdirectory(nanobeam) else() message(STATUS "G4 Examples: CLHEP external package not found --> nanobeam disabled") -endif() +endif() add_subdirectory(composite_calorimeter) @@ -31,7 +33,7 @@ if(ROOT_FOUND) add_subdirectory(doiPET) else() message(STATUS "G4 Examples: ROOT package not found --> doiPET disabled") -endif() +endif() add_subdirectory(eRosita) add_subdirectory(gammaknife) @@ -47,4 +49,4 @@ add_subdirectory(purging_magnet) add_subdirectory(underground_physics) add_subdirectory(xray_fluorescence) add_subdirectory(STCyclotron) - +add_subdirectory(HGCal_testbeam) diff --git a/examples/advanced/ChargeExchangeMC/CMakeLists.txt b/examples/advanced/ChargeExchangeMC/CMakeLists.txt index 68010d0eaf..3d1ec69cf8 100644 --- a/examples/advanced/ChargeExchangeMC/CMakeLists.txt +++ b/examples/advanced/ChargeExchangeMC/CMakeLists.txt @@ -1,4 +1,7 @@ -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() include(CMakeDependentOption) set(name ChargeExchangeMC) @@ -15,7 +18,7 @@ endif() include(${Geant4_USE_FILE}) -# Setup of ROOT ANALYSIS : optional. +# Setup of ROOT ANALYSIS : optional. find_package(ROOT QUIET) cmake_dependent_option(CEXMC_USE_HISTOGRAMING "Build example with analysis objects" ON "ROOT_FOUND" OFF) @@ -28,7 +31,7 @@ option(CEXMC_USE_PERSISTENCY (requires Boost Serialization library)" OFF) if(CEXMC_USE_PERSISTENCY) - find_package(Boost REQUIRED serialization) + find_package(Boost REQUIRED serialization) add_definitions(-DCEXMC_USE_PERSISTENCY) list(APPEND EXTRA_LIBRARIES Boost::serialization) message(STATUS "Library Boost::serialization was added to the linkage list") @@ -79,14 +82,14 @@ option(CEXMC_DEBUG_TP if(CEXMC_DEBUG_TP) add_definitions(-DCEXMC_DEBUG_TP) endif() - + if(CEXMC_USE_HISTOGRAMING) EXECUTE_PROCESS(COMMAND root-config --cflags OUTPUT_VARIABLE ROOT_CXX_FLAGS OUTPUT_STRIP_TRAILING_WHITESPACE) set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${ROOT_CXX_FLAGS}") EXECUTE_PROCESS(COMMAND root-config --libs OUTPUT_VARIABLE ROOT_LD_FLAGS OUTPUT_STRIP_TRAILING_WHITESPACE) set(CMAKE_EXE_LINKER_FLAGS ${ROOT_LD_FLAGS}) -endif(CEXMC_USE_HISTOGRAMING) - +endif(CEXMC_USE_HISTOGRAMING) + include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${CMAKE_CURRENT_SOURCE_DIR}/src/*.cc) diff --git a/examples/advanced/ChargeExchangeMC/ChargeExchangeMC.out b/examples/advanced/ChargeExchangeMC/ChargeExchangeMC.out index ad58af2595..ccdd36df6d 100644 --- a/examples/advanced/ChargeExchangeMC/ChargeExchangeMC.out +++ b/examples/advanced/ChargeExchangeMC/ChargeExchangeMC.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -43,7 +43,7 @@ Stripping off GDML names of materials, solids and volumes ... --- Cexmc --- ED Scorer of detector role 'VetoCounter' in volume 'vVetoCounter' --- Cexmc --- TP Scorer of detector role 'VetoCounter' in volume 'vVetoCounter' - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -144,10 +144,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -171,10 +172,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -202,9 +204,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -218,14 +220,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -234,9 +236,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -248,9 +250,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -261,9 +263,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -277,14 +279,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -293,9 +295,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -309,14 +311,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -325,9 +327,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -341,14 +343,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -357,9 +359,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -374,14 +376,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -390,9 +392,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -407,14 +409,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -423,9 +425,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -439,14 +441,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -455,9 +457,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -471,14 +473,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -507,6 +509,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -581,6 +605,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -692,8 +729,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -762,8 +799,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -804,7 +841,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -819,7 +855,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_MYLAR Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.61463 keV e- 329.273 keV e+ 318.428 keV proton 70 keV + Energy thresholds : gamma 2.6231 keV e- 331.226 keV e+ 320.282 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -833,35 +869,35 @@ Index : 2 used in the geometry : Yes Index : 3 used in the geometry : Yes Material : G4_Al Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 5.84069 keV e- 457.179 keV e+ 442.122 keV proton 70 keV + Energy thresholds : gamma 5.85564 keV e- 460.395 keV e+ 442.201 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 4 used in the geometry : Yes Material : G4_lH2 Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 990 eV e- 88.0084 keV e+ 87.4209 keV proton 70 keV + Energy thresholds : gamma 990 eV e- 88.1421 keV e+ 87.5518 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 5 used in the geometry : Yes Material : G4_Fe Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 17.1704 keV e- 955.109 keV e+ 905.28 keV proton 70 keV + Energy thresholds : gamma 17.2183 keV e- 951.321 keV e+ 901.528 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 6 used in the geometry : Yes Material : G4_Cu Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 20.4366 keV e- 1.03504 MeV e+ 981.043 keV proton 70 keV + Energy thresholds : gamma 20.6438 keV e- 1.03121 MeV e+ 977.24 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 7 used in the geometry : Yes Material : Scintillator Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.11022 keV e- 286.069 keV e+ 278.507 keV proton 70 keV + Energy thresholds : gamma 2.11555 keV e- 283.792 keV e+ 278.128 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -875,471 +911,447 @@ Index : 8 used in the geometry : Yes Index : 9 used in the geometry : Yes Material : CsI_Crystal Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 30.9566 keV e- 529.761 keV e+ 502.122 keV proton 70 keV + Energy thresholds : gamma 30.6889 keV e- 526.624 keV e+ 502.425 keV proton 70 keV Region(s) which use this couple : Calorimeter ================================================================== ### Run 0 starts. -Event 36 +Event 206 --- Reconstructed data: -- entry points: - left: -5.9067 -2.29858 -15 cm - right: -0.701155 4.98009 -15 cm + left: 0.279661 -3.90536 -15 cm + right: 8.66082 -4.0998 -15 cm target: 0 0 0 fm - -- the angle: 125.101 deg - -- mass of the output particle: 162.754 MeV - -- mass of the nucleus output particle: 1.34739 GeV + -- the angle: 121.601 deg + -- mass of the output particle: 490.583 MeV + -- mass of the nucleus output particle: 997.229 MeV -- production model data: Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV - Output particle (LAB) : eta 35.9747 1.4478 89.1782 MeV -- 189.0445 MeV - (SCM) : eta 35.9747 1.4478 7.8891 MeV -- 166.8752 MeV - Nucleus output particle (LAB) : neutron -35.9747 -1.4478 640.8218 MeV -- 1.4925 GeV - (SCM) : neutron -35.9747 -1.4478 -7.8891 MeV -- 1.3479 GeV + Output particle (LAB) : eta -120.9344 -38.9507 292.5657 MeV -- 585.1570 MeV + (SCM) : eta -120.9344 -38.9507 42.7675 MeV -- 508.5697 MeV + Nucleus output particle (LAB) : neutron 120.9344 38.9507 437.4343 MeV -- 1.0963 GeV + (SCM) : neutron 120.9344 38.9507 -42.7675 MeV -- 1.0062 GeV -- triggered angular ranges: 4 [ 0.4000, 0.2000) --- Energy Deposit - monitor : 430.38 keV + monitor : 660.907 keV vc (l) : 0 eV vc (r) : 0 eV - cal (l) : 117.444 MeV + cal (l) : 211.083 MeV 0 0 0 0 0 0 - 0 0 0 1.797 0 0.4987 - 0 0 0 91.2 22.61 1.339 + 0 0 1.304 1.382 0.5148 0 + 0 6.943 114.3 62.72 0.2671 1.437 + 0 1.395 12.47 7.873 0.4574 0 + cal (r) : 374.074 MeV 0 0 0 0 0 0 - cal (r) : 71.6004 MeV - 0 0.08572 3.637 6.241 1.701 0 - 0 0.173 35.12 23.69 0.955 0 - 0 0 0 0 0 0 - 0 0 0 0 0 0 -Event 43 + 3.746 2.703 3.565 0 0 0 + 1.268 290.5 6.137 1.015 0 0 + 12.19 47.1 5.896 0 0 0 +Event 704 --- Reconstructed data: -- entry points: - left: -12.2918 1.29805 -15 cm - right: -8.3073 -3.07391 -15 cm + left: -9.28523 2.79254 -15 cm + right: -0.0320336 -1.93889 -15 cm target: 0 0 0 fm - -- the angle: 126.318 deg - -- mass of the output particle: 304.443 MeV - -- mass of the nucleus output particle: 1.21011 GeV + -- the angle: 121.278 deg + -- mass of the output particle: 265.264 MeV + -- mass of the nucleus output particle: 1.24815 GeV -- production model data: Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV - Output particle (LAB) : eta -4.4747 -4.1670 155.8620 MeV -- 342.0757 MeV - (SCM) : eta -4.4747 -4.1670 8.1635 MeV -- 304.6136 MeV - Nucleus output particle (LAB) : neutron 4.4747 4.1670 574.1380 MeV -- 1.3394 GeV - (SCM) : neutron 4.4747 4.1670 -8.1635 MeV -- 1.2102 GeV + Output particle (LAB) : eta -16.1739 1.8692 148.4346 MeV -- 304.4060 MeV + (SCM) : eta -16.1739 1.8692 18.0724 MeV -- 266.3771 MeV + Nucleus output particle (LAB) : neutron 16.1739 -1.8692 581.5654 MeV -- 1.3771 GeV + (SCM) : neutron 16.1739 -1.8692 -18.0724 MeV -- 1.2484 GeV + -- triggered angular ranges: + 2 [ 0.8000, 0.6000) + --- Energy Deposit + monitor : 393.161 keV + vc (l) : 0 eV + vc (r) : 0 eV + cal (l) : 149.543 MeV + 0 0 0.6324 2.577 2.825 4.541 + 0 0 0 0 115.2 1.316 + 0 0 0 0 20.74 1.166 + 0 0 0 0 0.5066 0 + cal (r) : 154.863 MeV + 0 0 0.7944 0.3091 0 0 + 0 1.105 5.044 8.963 0 0 + 0 1.49 32.9 99.01 1.058 0 + 0 1.188 0.6085 1.907 0.4846 0 +Event 3675 + --- Reconstructed data: + -- entry points: + left: -8.12482 -1.2043 -15 cm + right: 11.831 -1.63642 -15 cm + target: 0 0 0 fm + -- the angle: 111.089 deg + -- mass of the output particle: 575.513 MeV + -- mass of the nucleus output particle: 920.846 MeV + -- production model data: + Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV + (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV + Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV + (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV + Output particle (LAB) : eta -45.6110 -16.5957 398.0663 MeV -- 701.4470 MeV + (SCM) : eta -45.6110 -16.5957 103.8377 MeV -- 586.8163 MeV + Nucleus output particle (LAB) : neutron 45.6110 16.5957 331.9337 MeV -- 980.0476 MeV + (SCM) : neutron 45.6110 16.5957 -103.8377 MeV -- 927.9523 MeV -- triggered angular ranges: 1 [ 1.0000, 0.8000) --- Energy Deposit - monitor : 400.027 keV - vc (l) : 41.7699 keV + monitor : 521.984 keV + vc (l) : 0 eV vc (r) : 0 eV - cal (l) : 183.247 MeV - 0 0 0 0 3.008 26.07 - 0 0 0 0.543 19.87 54.79 - 0 0 0 0.6705 24.26 52.27 - 0 0 0 0.363 0 1.394 - cal (r) : 158.829 MeV + cal (l) : 315.799 MeV + 0 0 0 0 0.3902 0.4047 + 0 0 0.6473 6.487 43.26 2.059 + 0 0 0 3.733 251.9 0.7607 + 0 0 0 3.717 2.4 0 + cal (r) : 385.648 MeV + 0.05533 0 0 0 0 0 + 47.89 25.94 0 0 0 0 + 85.79 219.3 0 0 0 0 + 5.496 1.215 0 0 0 0 +Event 5689 + --- Reconstructed data: + -- entry points: + left: -4.23162 -5.22164 -15 cm + right: -10.2049 0.257857 -15 cm + target: 0 0 0 fm + -- the angle: 135.429 deg + -- mass of the output particle: 571.676 MeV + -- mass of the nucleus output particle: 916.713 MeV + -- production model data: + Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV + (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV + Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV + (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV + Output particle (LAB) : eta 130.8992 -34.3615 259.4226 MeV -- 642.2060 MeV + (SCM) : eta 130.8992 -34.3615 -21.5165 MeV -- 587.8702 MeV + Nucleus output particle (LAB) : neutron -130.8992 34.3615 470.5774 MeV -- 1.0393 GeV + (SCM) : neutron -130.8992 34.3615 21.5165 MeV -- 926.8985 MeV + -- triggered angular ranges: + 6 [ 0.0000, -0.2000) + --- Energy Deposit + monitor : 430.919 keV + vc (l) : 0 eV + vc (r) : 0 eV + cal (l) : 408.742 MeV + 0 0 0 0 0 2.727 + 0 0.5286 0 0.9527 2.837 0 + 0 0 1.191 119.8 8.794 3.554 + 0 0.4311 10.28 246.7 10.39 0.523 + cal (r) : 233.464 MeV + 0 0 0 0 3.819 1.266 + 0 0 0 0 116.9 2.896 + 0 0 0 0.9959 84.82 20.72 + 0 0 0 0 2.019 0 +Event 7948 + --- Reconstructed data: + -- entry points: + left: -6.18349 6.41759 -15 cm + right: -8.19992 2.12718 -15 cm + target: 0 0 0 fm + -- the angle: 131.295 deg + -- mass of the output particle: 500.942 MeV + -- mass of the nucleus output particle: 976.569 MeV + -- production model data: + Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV + (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV + Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV + (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV + Output particle (LAB) : eta -150.4224 35.1231 213.7638 MeV -- 566.1255 MeV + (SCM) : eta -150.4224 35.1231 -35.5360 MeV -- 525.4197 MeV + Nucleus output particle (LAB) : neutron 150.4224 -35.1231 516.2362 MeV -- 1.1154 GeV + (SCM) : neutron 150.4224 -35.1231 35.5360 MeV -- 989.3489 MeV + -- triggered angular ranges: + 7 [-0.2000, -0.4000) + --- Energy Deposit + monitor : 461.389 keV + vc (l) : 0 eV + vc (r) : 30.236 keV + cal (l) : 215.709 MeV + 0 0 0.5764 56.62 97.49 0.9733 + 0 0 0 34.44 24.72 0 + 0 0 0 0.5898 0.2999 0 0 0 0 0 0 0 - 0 0 0 0.5168 1.797 1.045 - 0 0 0 10.46 139.1 1.176 - 0 0 0 1.325 3.288 0.1559 -Event 1343 + cal (r) : 350.416 MeV + 0 0 0.7501 0.765 4.834 2.178 + 0 0 6.003 9.046 297.5 13.69 + 0 0 0.1387 3.938 3.873 4.673 + 0 0 0 0.9534 0 2.104 +Event 8031 --- Track Points - monitor : pi- [1,bp] 725.8 MeV : -0.761 1.079 -0.125 cm [0.003715, -0.01055, 0.9999] - target : pi- [1,bp] 725.3 MeV : 2.689 4.215 0.7846 cm [-0.6395, -0.7687, -0.01008] - : eta [6,op] 351.1 MeV : -1.021 -0.2441 0.7262 cm [-0.5018, -0.8065, -0.3126] - : neutron [7,np] 409.5 MeV : -1.021 -0.2441 0.7262 cm [-0.7019, -0.6663, 0.2515] - : pi0 [10,opdp] 96.91 MeV : -1.021 -0.2441 0.7262 cm [-0.9651, -0.2597, 0.03299] - : pi0 [8,opdp] 262.5 MeV : -1.021 -0.2441 0.7262 cm [0.02303, -0.7166, -0.6971] + monitor : pi- [1,bp] 727.2 MeV : 1.59 0.4321 -0.125 cm [-0.000548, -0.02195, 0.9998] + target : pi- [1,bp] 725.9 MeV : 4.241 2.649 -0.2809 cm [-0.6432, -0.7653, -0.02504] + : eta [4,op] 367.5 MeV : 2.655 0.7615 -0.3427 cm [-0.8399, -0.5427, 0.001686] + : neutron [5,np] 389.5 MeV : 2.655 0.7615 -0.3427 cm [-0.4048, -0.9131, -0.04975] + : gamma [7,opdp] 399.7 MeV : 2.655 0.7615 -0.3427 cm [-0.9927, 0.1113, -0.04573] + : gamma [6,opdp] 260 MeV : 2.655 0.7615 -0.3427 cm [0.3388, -0.9381, 0.07267] + vc (l) : gamma [6,opdp] 260 MeV : -2.522 3.924 -0.25 cm [-0.08942, 0.07267, 0.9933] + vc (r) : gamma [7,opdp] 399.7 MeV : 7.827 -3.172 -0.25 cm [0.1495, -0.04573, 0.9877] + cal (l) : gamma [6,opdp] 260 MeV : -2.635 4.015 -15 cm [-0.08942, 0.07267, 0.9933] + cal (r) : gamma [7,opdp] 399.7 MeV : 8.016 -3.23 -15 cm [0.1495, -0.04573, 0.9877] + --- + angle between the eta decay products : 116.358 deg + --- Triggered angular ranges: + 3 [ 0.6000, 0.4000) + --- Production model data: + Incident particle (LAB) : pi- -0.4505 -18.7592 724.9999 MeV -- 738.5505 MeV + (SCM) : pi- -0.2796 -11.6420 449.9370 MeV -- 471.2311 MeV + Nucleus particle (LAB) : proton 0.0000 -0.0000 0.0000 eV -- 938.2720 MeV + (SCM) : proton 0.2796 11.6420 -449.9370 MeV -- 1.0406 GeV + Output particle (LAB) : eta -108.2704 0.6198 351.2239 MeV -- 659.7226 MeV + (SCM) : eta -108.0976 7.8146 73.1616 MeV -- 563.2509 MeV + Nucleus output particle (LAB) : neutron 107.8199 -19.3790 373.7760 MeV -- 1.0171 GeV + (SCM) : neutron 108.0976 -7.8146 -73.1616 MeV -- 948.6210 MeV + --- Reconstructed data: + -- entry points: + left: -2.97529 3.53056 -15 cm + right: 8.00899 -2.46863 -15 cm + target: 0 0 0 fm + -- the angle: 119.633 deg + -- mass of the output particle: 532.749 MeV + -- mass of the nucleus output particle: 963.383 MeV + -- production model data: + Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV + (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV + Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV + (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV + Output particle (LAB) : eta -100.4563 -0.8898 321.2709 MeV -- 630.1818 MeV + (SCM) : eta -100.4563 -0.8898 52.9339 MeV -- 544.7165 MeV + Nucleus output particle (LAB) : neutron 100.4563 0.8898 408.7291 MeV -- 1.0513 GeV + (SCM) : neutron 100.4563 0.8898 -52.9339 MeV -- 970.0522 MeV + -- triggered angular ranges: + 3 [ 0.6000, 0.4000) + --- Energy Deposit + monitor : 1.1986 MeV + vc (l) : 0 eV + vc (r) : 0 eV + cal (l) : 249.343 MeV + 0 0.7986 2.866 15.93 1.235 0 + 0 0 7.789 207.1 2.949 3.408 + 0 0 4.45 2.165 0.3889 0.3022 + 0 0 0 0 0 0 + cal (r) : 380.839 MeV + 0.378 0.9575 0.03518 0 0 0 + 2.085 5.011 5.489 0.2953 0 0 + 1.29 332.2 17.73 0.4702 0.2353 0 + 9.187 4.363 0.7379 0.4034 0 0 +Event 8453 + --- Track Points + monitor : pi- [1,bp] 734.3 MeV : 1.063 0.3207 -0.125 cm [0.002178, -0.0003897, 1] + target : pi- [1,bp] 733.6 MeV : 3.992 3.011 0.3062 cm [-0.641, -0.7676, -0.0008455] + : eta [4,op] 324.4 MeV : 3.458 2.371 0.3055 cm [-0.9083, -0.4113, 0.07661] + : neutron [5,np] 464.7 MeV : 3.458 2.371 0.3055 cm [-0.3779, -0.9243, -0.05437] + : gamma [7,opdp] 237.7 MeV : 3.458 2.371 0.3055 cm [0.3973, -0.9177, 0.001144] + : gamma [6,opdp] 398.9 MeV : 3.458 2.371 0.3055 cm [-0.9752, 0.2125, 0.06161] + vc (l) : gamma [7,opdp] 237.7 MeV : 2.483 0.3734 -0.25 cm [-0.0278, 0.001144, 0.9996] + vc (r) : gamma [6,opdp] 398.9 MeV : -0.2771 4.104 -0.25 cm [0.04716, 0.06161, 0.997] + cal (l) : gamma [7,opdp] 237.7 MeV : 2.448 0.3749 -15 cm [-0.0278, 0.001144, 0.9996] + cal (r) : gamma [6,opdp] 398.9 MeV : -0.218 4.181 -15 cm [0.04716, 0.06161, 0.997] + --- + angle between the eta decay products : 125.615 deg + --- Triggered angular ranges: + 5 [ 0.2000, 0.0000) + --- Production model data: + Incident particle (LAB) : pi- 1.6296 -0.4167 733.4303 MeV -- 746.5941 MeV + (SCM) : pi- 1.0080 -0.2578 453.6735 MeV -- 474.6583 MeV + Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV + (SCM) : proton -1.0080 0.2578 -453.6735 MeV -- 1.0422 GeV + Output particle (LAB) : eta -139.9160 24.8483 291.5661 MeV -- 636.6769 MeV + (SCM) : eta -140.5283 25.0049 15.9784 MeV -- 566.3758 MeV + Nucleus output particle (LAB) : neutron 141.5456 -25.2650 441.8642 MeV -- 1.0482 GeV + (SCM) : neutron 140.5283 -25.0049 -15.9784 MeV -- 950.4798 MeV + --- Reconstructed data: + -- entry points: + left: 2.89261 1.94969 -15 cm + right: 0.0704611 3.68174 -15 cm + target: 0 0 0 fm + -- the angle: 132.412 deg + -- mass of the output particle: 541.276 MeV + -- mass of the nucleus output particle: 937.661 MeV + -- production model data: + Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV + (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV + Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV + (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV + Output particle (LAB) : eta -153.7724 31.4244 251.0538 MeV -- 616.9614 MeV + (SCM) : eta -153.7724 31.4244 -18.6406 MeV -- 563.8802 MeV + Nucleus output particle (LAB) : neutron 153.7724 -31.4244 478.9462 MeV -- 1.0645 GeV + (SCM) : neutron 153.7724 -31.4244 18.6406 MeV -- 950.8885 MeV + -- triggered angular ranges: + 6 [ 0.0000, -0.2000) + --- Energy Deposit + monitor : 555.52 keV + vc (l) : 0 eV + vc (r) : 0 eV + cal (l) : 220.874 MeV + 0.1232 0.1965 1.72 0.3388 0 0 + 0.01192 0 187.3 1.338 0 0 + 0 0.6442 28.41 0.7547 0 0 + 0 0 0 0 0 0 + cal (r) : 396.088 MeV + 0 0.8454 14.69 5.46 0.1124 1.135 + 0 0.3678 275.4 88.15 6.208 0 + 0 1.166 1.208 0.9934 0.3767 0 + 0 0 0 0 0 0 +Event 8814 + --- Track Points + monitor : pi- [1,bp] 725.1 MeV : -0.8739 1.901 -0.125 cm [0.003236, -0.00523, 1] + target : pi- [1,bp] 724.6 MeV : 2.65 4.24 1.803 cm [-0.6372, -0.7707, -0.002644] + : eta [4,op] 241.2 MeV : -1.215 -0.4384 1.789 cm [-0.6156, -0.6279, -0.4762] + : neutron [5,np] 524.4 MeV : -1.215 -0.4384 1.789 cm [-0.5941, -0.7748, 0.2161] + : pi0 [8,opdp] 39.97 MeV : -1.215 -0.4384 1.789 cm [-0.689, -0.7116, -0.1376] + : pi0 [6,opdp] 195.9 MeV : -1.215 -0.4384 1.789 cm [0.2569, -0.7748, -0.5777] vc (l) : tp is not valid vc (r) : tp is not valid cal (l) : tp is not valid cal (r) : tp is not valid --- - angle between the eta decay products : 81.9006 deg - --- Triggered angular ranges: - 3 [ 0.6000, 0.4000) - --- Production model data: - Incident particle (LAB) : pi- 2.2433 -6.7421 724.0310 MeV -- 737.3949 MeV - (SCM) : pi- 1.3929 -4.1862 449.5490 MeV -- 470.7373 MeV - Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV - (SCM) : proton -1.3929 4.1862 -449.5490 MeV -- 1.0404 GeV - Output particle (LAB) : eta 47.0459 -109.7506 330.2058 MeV -- 650.7282 MeV - (SCM) : eta 46.1917 -107.1833 54.4977 MeV -- 562.8008 MeV - Nucleus output particle (LAB) : neutron -44.8026 103.0085 393.8252 MeV -- 1.0249 GeV - (SCM) : neutron -46.1917 107.1833 -54.4977 MeV -- 948.3538 MeV - --- Reconstructed data: - -- entry points: - left: -2.31253 -2.78457 -15 cm - right: 4.35408 3.79307 -15 cm - target: 0 0 0 fm - -- the angle: 123.726 deg - -- mass of the output particle: 128.75 MeV - -- mass of the nucleus output particle: 1.37645 GeV - -- production model data: - Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV - (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV - Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV - (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV - Output particle (LAB) : eta -47.4239 4.3214 74.4305 MeV -- 156.1542 MeV - (SCM) : eta -47.4239 4.3214 7.3687 MeV -- 137.4720 MeV - Nucleus output particle (LAB) : neutron 47.4239 -4.3214 655.5695 MeV -- 1.5253 GeV - (SCM) : neutron 47.4239 -4.3214 -7.3687 MeV -- 1.3773 GeV - -- triggered angular ranges: - 5 [ 0.2000, 0.0000) - --- Energy Deposit - monitor : 393.075 keV - vc (l) : 0 eV - vc (r) : 0 eV - cal (l) : 50.387 MeV - 0 0 1.936 0 0 0 - 0 0 0.6419 0 0 0 - 0 0 0.2233 43.04 0.2638 0 - 0 0 0.1139 3.132 1.031 0 - cal (r) : 105.767 MeV - 0 5.423 1.3 0.3921 0 0 - 0 11.56 83.95 0.6492 0 0 - 0 0 2.491 0 0 0 - 0 0 0 0 0 0 -Event 3701 - --- Reconstructed data: - -- entry points: - left: -5.07566 -3.64981 -15 cm - right: 3 2.6317 -15 cm - target: 0 0 0 fm - -- the angle: 122.381 deg - -- mass of the output particle: 139.782 MeV - -- mass of the nucleus output particle: 1.37136 GeV - -- production model data: - Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV - (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV - Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV - (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV - Output particle (LAB) : eta 28.9041 -3.1737 79.1612 MeV -- 163.2515 MeV - (SCM) : eta 28.9041 -3.1737 9.1998 MeV -- 143.0706 MeV - Nucleus output particle (LAB) : neutron -28.9041 3.1737 650.8388 MeV -- 1.5182 GeV - (SCM) : neutron -28.9041 3.1737 -9.1998 MeV -- 1.3717 GeV - -- triggered angular ranges: - 4 [ 0.4000, 0.2000) - --- Energy Deposit - monitor : 377.459 keV - vc (l) : 0 eV - vc (r) : 0 eV - cal (l) : 98.9609 MeV - 0 0 0 0 0 0 - 0 0 0 0.5817 0.2417 0.1484 - 0 0 0 69.97 23.2 0.06408 - 0 0 1.133 2.695 0.9288 0 - cal (r) : 64.2906 MeV - 0 0 0 0 0 0 - 0 0 64.02 0 0 0 - 0 0 0.2738 0 0 0 - 0 0 0 0 0 0 -Event 8189 - --- Reconstructed data: - -- entry points: - left: 8.54865 4.48527 -15 cm - right: 4.97776 -1.96609 -15 cm - target: 0 0 0 fm - -- the angle: 133.38 deg - -- mass of the output particle: 136.301 MeV - -- mass of the nucleus output particle: 1.3772 GeV - -- production model data: - Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV - (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV - Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV - (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV - Output particle (LAB) : eta -17.2473 1.7136 61.8785 MeV -- 150.6898 MeV - (SCM) : eta -17.2473 1.7136 -3.9314 MeV -- 137.4551 MeV - Nucleus output particle (LAB) : neutron 17.2473 -1.7136 668.1215 MeV -- 1.5308 GeV - (SCM) : neutron 17.2473 -1.7136 3.9314 MeV -- 1.3773 GeV - -- triggered angular ranges: - 7 [-0.2000, -0.4000) - --- Energy Deposit - monitor : 399.616 keV - vc (l) : 0 eV - vc (r) : 0 eV - cal (l) : 62.3043 MeV - 0.6582 9.939 0 0 0 0 - 6.484 24.41 20.81 0 0 0 - 0 0 0 0 0 0 - 0 0 0 0 0 0 - cal (r) : 88.3855 MeV - 0 0 0.3558 0.4282 0 0 - 0 1.157 0.0885 0.7418 0 0 - 0.3999 19.46 64.46 0 0 0 - 0 0.5647 0.7307 0 0 0 -Event 10459 - --- Track Points - monitor : pi- [1,bp] 729.7 MeV : -8.841 -8.849 -1.25 mm [-0.01192, 0.00229, 0.9999] - target : pi- [1,bp] 729.2 MeV : 2.144 4.517 -0.7797 cm [-0.6524, -0.7579, 0.003233] - : eta [3,op] 230.1 MeV : -2.913 -1.357 -0.7546 cm [-0.2118, -0.9522, 0.2201] - : neutron [4,np] 542.1 MeV : -2.913 -1.357 -0.7546 cm [-0.7838, -0.6143, -0.09131] - : gamma [6,opdp] 362 MeV : -2.913 -1.357 -0.7546 cm [0.4388, -0.8917, 0.111] - : gamma [5,opdp] 232.2 MeV : -2.913 -1.357 -0.7546 cm [-0.8937, 0.4464, 0.04514] - vc (l) : gamma [6,opdp] 362 MeV : -1.983 5.808 -0.25 cm [0.0208, 0.111, 0.9936] - vc (r) : gamma [5,opdp] 232.2 MeV : -9.427 1.841 -0.25 cm [-0.1998, 0.04514, 0.9788] - cal (l) : gamma [6,opdp] 362 MeV : -1.947 6 -14.53 cm [0.0208, 0.111, 0.9936] - cal (r) : gamma [5,opdp] 232.2 MeV : -9.682 1.899 -15 cm [-0.1998, 0.04514, 0.9788] - --- - angle between the eta decay products : 141.734 deg + angle between the eta decay products : 63.0106 deg --- Triggered angular ranges: 8 [-0.4000, -0.6000) --- Production model data: - Incident particle (LAB) : pi- -7.9134 1.1626 727.3671 MeV -- 740.6799 MeV - (SCM) : pi- -4.9068 0.7209 451.0121 MeV -- 472.1401 MeV - Nucleus particle (LAB) : proton -0.0000 0.0000 0.0000 eV -- 938.2720 MeV - (SCM) : proton 4.9068 -0.7209 -451.0121 MeV -- 1.0411 GeV - Output particle (LAB) : eta 103.5084 50.6584 199.1836 MeV -- 594.2282 MeV - (SCM) : eta 106.3799 50.2365 -64.7503 MeV -- 564.0796 MeV - Nucleus output particle (LAB) : neutron -111.4218 -49.4958 528.1836 MeV -- 1.0847 GeV - (SCM) : neutron -106.3799 -50.2365 64.7503 MeV -- 949.1133 MeV + Incident particle (LAB) : pi- 6.1133 -1.5483 722.9508 MeV -- 736.3270 MeV + (SCM) : pi- 3.7974 -0.9618 449.0754 MeV -- 470.2806 MeV + Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV + (SCM) : proton -3.7974 0.9618 -449.0754 MeV -- 1.0402 GeV + Output particle (LAB) : eta -16.4024 -114.8730 211.4647 MeV -- 598.6108 MeV + (SCM) : eta -18.6307 -114.3086 -52.0576 MeV -- 562.3845 MeV + Nucleus output particle (LAB) : neutron 22.5157 113.3247 511.4861 MeV -- 1.0760 GeV + (SCM) : neutron 18.6307 114.3086 52.0576 MeV -- 948.1069 MeV --- Reconstructed data: -- entry points: - left: 0.241024 4.76172 -15 cm - right: -11.003 2.73892 -15 cm + left: 3.70738 3.0377 -15 cm + right: -0.263301 6.30713 -15 cm target: 0 0 0 fm - -- the angle: 140.016 deg - -- mass of the output particle: 538.411 MeV - -- mass of the nucleus output particle: 943.955 MeV + -- the angle: 133.003 deg + -- mass of the output particle: 213.984 MeV + -- mass of the nucleus output particle: 1.29238 GeV -- production model data: Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV - Output particle (LAB) : eta 135.6376 39.7659 213.2071 MeV -- 596.0891 MeV - (SCM) : eta 135.6376 39.7659 -50.5941 MeV -- 558.9497 MeV - Nucleus output particle (LAB) : neutron -135.6376 -39.7659 516.7929 MeV -- 1.0854 GeV - (SCM) : neutron -135.6376 -39.7659 50.5941 MeV -- 955.8190 MeV - -- triggered angular ranges: - 7 [-0.2000, -0.4000) - --- Energy Deposit - monitor : 374.608 keV - vc (l) : 0 eV - vc (r) : 0 eV - cal (l) : 380.306 MeV - 0 0.02467 25.49 274.1 0.03377 0 - 0.4774 7.223 21.86 40.51 0.1217 0 - 0.5437 4.852 1.819 0.5596 0.7458 0.9547 - 0 0.9789 0 0 0 0 - cal (r) : 215.783 MeV - 0 0 0 2.45 2.623 8.507 - 0 0 0 0.8111 108.5 79.9 - 0 0 0 0.3829 6.732 4.774 - 0 0 0 0 1.135 0 -Event 14286 - --- Track Points - monitor : pi- [1,bp] 727.9 MeV : -1.554 0.9442 -0.125 cm [0.007357, 0.003993, 1] - target : pi- [1,bp] 727.4 MeV : 2.021 4.573 1.06 cm [-0.6387, -0.7694, 0.003665] - : eta [3,op] 366.6 MeV : -3.349 -1.895 1.091 cm [-0.3844, -0.9221, -0.04409] - : neutron [4,np] 391 MeV : -3.349 -1.895 1.091 cm [-0.8266, -0.5609, 0.04568] - : gamma [6,opdp] 269.5 MeV : -3.349 -1.895 1.091 cm [-0.9918, 0.1134, -0.05952] - : gamma [5,opdp] 389.7 MeV : -3.349 -1.895 1.091 cm [0.3243, -0.946, -0.0003141] - vc (l) : gamma [5,opdp] 389.7 MeV : -10.06 1.073 -0.25 cm [-0.1059, -0.0003141, 0.9944] - vc (r) : gamma [6,opdp] 269.5 MeV : 11.04 -2.285 -0.25 cm [0.1471, -0.05952, 0.9873] - cal (l) : gamma [5,opdp] 389.7 MeV : -10.19 1.072 -15 cm [-0.1059, -0.0003141, 0.9944] - cal (r) : gamma [6,opdp] 269.5 MeV : 11.23 -2.361 -15 cm [0.1471, -0.05952, 0.9873] - --- - angle between the eta decay products : 115.396 deg - --- Triggered angular ranges: - 3 [ 0.6000, 0.4000) - --- Production model data: - Incident particle (LAB) : pi- 2.7157 1.6918 725.2936 MeV -- 738.6073 MeV - (SCM) : pi- 1.6854 1.0499 450.1087 MeV -- 471.2554 MeV - Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV - (SCM) : proton -1.6854 -1.0499 -450.1087 MeV -- 1.0407 GeV - Output particle (LAB) : eta 109.3320 -16.1657 349.5698 MeV -- 659.2167 MeV - (SCM) : eta 108.2908 -16.8143 71.5130 MeV -- 563.2730 MeV - Nucleus output particle (LAB) : neutron -106.6162 17.8575 375.7237 MeV -- 1.0177 GeV - (SCM) : neutron -108.2908 16.8143 -71.5130 MeV -- 948.6342 MeV - --- Reconstructed data: - -- entry points: - left: -10.1577 2.86703 -15 cm - right: 12.7865 -3.73716 -15 cm - target: 0 0 0 fm - -- the angle: 108.478 deg - -- mass of the output particle: 488.91 MeV - -- mass of the nucleus output particle: 1.00148 GeV - -- production model data: - Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV - (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV - Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV - (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV - Output particle (LAB) : eta 79.0924 0.5719 354.2643 MeV -- 608.9266 MeV - (SCM) : eta 79.0924 0.5719 99.8020 MeV -- 505.2217 MeV - Nucleus output particle (LAB) : neutron -79.0924 -0.5719 375.7357 MeV -- 1.0726 GeV - (SCM) : neutron -79.0924 -0.5719 -99.8020 MeV -- 1.0095 GeV - -- triggered angular ranges: - 2 [ 0.8000, 0.6000) - --- Energy Deposit - monitor : 393.067 keV - vc (l) : 0 eV - vc (r) : 0 eV - cal (l) : 348.559 MeV - 0 0 0 0.9714 12.01 2.263 - 0 0 0 2.212 268.3 48.84 - 0 0 0 1.558 7.847 4.467 - 0 0 0 0 0 0.09546 - cal (r) : 260.367 MeV - 0 0 0 0 0 0 - 1.654 0.7717 0 0 0 0 - 177.1 62.63 0 0 0 0 - 14.35 3.822 0 0 0 0 -Event 14640 - --- Reconstructed data: - -- entry points: - left: 8.08415 -0.21177 -15 cm - right: -9.35195 0.743755 -15 cm - target: 0 0 0 fm - -- the angle: 146.53 deg - -- mass of the output particle: 223.409 MeV - -- mass of the nucleus output particle: 1.28056 GeV - -- production model data: - Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV - (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV - Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV - (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV - Output particle (LAB) : eta 52.0746 0.6147 69.5590 MeV -- 239.7128 MeV - (SCM) : eta 52.0746 0.6147 -38.3077 MeV -- 232.5753 MeV - Nucleus output particle (LAB) : neutron -52.0746 -0.6147 660.4410 MeV -- 1.4418 GeV - (SCM) : neutron -52.0746 -0.6147 38.3077 MeV -- 1.2822 GeV - -- triggered angular ranges: - 8 [-0.4000, -0.6000) - --- Energy Deposit - monitor : 398.251 keV - vc (l) : 0 eV - vc (r) : 0 eV - cal (l) : 147.416 MeV - 0 1.265 0 0 0 0 - 3.656 16.16 1.603 0.8852 0 0 - 0 119.1 4.737 0 0 0 - 0 0 0 0 0 0 - cal (r) : 92.2965 MeV - 0 0 0 0 0.2606 0 - 0 0 0 0.1823 84.62 0.7125 - 0 0 0 0.4276 4.34 0 - 0 0 0 0 0.4331 1.316 -Event 15894 - --- Reconstructed data: - -- entry points: - left: -8.44995 1.94401 -15 cm - right: -1.65893 -0.0051734 -15 cm - target: 0 0 0 fm - -- the angle: 123.548 deg - -- mass of the output particle: 529.923 MeV - -- mass of the nucleus output particle: 958.145 MeV - -- production model data: - Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV - (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV - Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV - (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV - Output particle (LAB) : eta 129.1505 12.8400 308.0124 MeV -- 626.5256 MeV - (SCM) : eta 129.1505 12.8400 39.9780 MeV -- 547.0475 MeV - Nucleus output particle (LAB) : neutron -129.1505 -12.8400 421.9876 MeV -- 1.0550 GeV - (SCM) : neutron -129.1505 -12.8400 -39.9780 MeV -- 967.7212 MeV - -- triggered angular ranges: - 4 [ 0.4000, 0.2000) - --- Energy Deposit - monitor : 384.529 keV - vc (l) : 0 eV - vc (r) : 0 eV - cal (l) : 401.018 MeV - 0 0 0 0.1682 0.5164 2.564 - 0 1.05 3.136 2.604 297 77.57 - 0 1.021 4.281 0.7735 3.653 5.719 - 0 0 0 0 0.9337 0 - cal (r) : 225.508 MeV - 0 0 0 0.3533 0.1934 0 - 0 0.4607 47.03 61.21 0.1372 0 - 0 0 3.327 110.4 0.12 0.4018 - 0 0 0.4771 0 1.364 0 -Event 17966 - --- Track Points - monitor : pi- [1,bp] 732.7 MeV : 4.217 8.887 -1.25 mm [0.001636, -0.003584, 1] - target : pi- [1,bp] 732.1 MeV : 3.566 3.505 0.809 cm [-0.6419, -0.7667, -0.003101] - : eta [4,op] 260.8 MeV : -2.18 -3.358 0.7807 cm [-0.9395, -0.34, 0.04194] - : neutron [5,np] 521.1 MeV : -2.18 -3.358 0.7807 cm [-0.4298, -0.9025, -0.0271] - : gamma [7,opdp] 372.1 MeV : -2.18 -3.358 0.7807 cm [-0.9472, 0.3201, -0.02046] - : gamma [6,opdp] 234.6 MeV : -2.18 -3.358 0.7807 cm [0.458, -0.8854, 0.07905] - vc (l) : gamma [6,opdp] 234.6 MeV : -1.072 5.275 -0.25 cm [0.04086, 0.07905, 0.996] - vc (r) : gamma [7,opdp] 372.1 MeV : 1.184 -3.984 -2.5 mm [-0.064, -0.02046, 0.9977] - cal (l) : gamma [6,opdp] 234.6 MeV : -1.02 5.374 -15 cm [0.04086, 0.07905, 0.996] - cal (r) : gamma [7,opdp] 372.1 MeV : 0.03821 -0.424 -15 cm [-0.064, -0.02046, 0.9977] - --- - angle between the eta decay products : 135.955 deg - --- Triggered angular ranges: - 7 [-0.2000, -0.4000) - --- Production model data: - Incident particle (LAB) : pi- 0.0444 -3.1869 729.6558 MeV -- 742.8914 MeV - (SCM) : pi- 0.0275 -1.9743 452.0217 MeV -- 473.0828 MeV - Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV - (SCM) : proton -0.0275 1.9743 -452.0217 MeV -- 1.0415 GeV - Output particle (LAB) : eta -130.6850 10.9376 225.4060 MeV -- 606.7609 MeV - (SCM) : eta -130.7013 12.1061 -42.1193 MeV -- 564.9391 MeV - Nucleus output particle (LAB) : neutron 130.7294 -14.1245 504.2498 MeV -- 1.0744 GeV - (SCM) : neutron 130.7013 -12.1061 42.1193 MeV -- 949.6244 MeV - --- Reconstructed data: - -- entry points: - left: -2.02331 5.60821 -15 cm - right: -1.92436 -0.434827 -15 cm - target: 0 0 0 fm - -- the angle: 129.747 deg - -- mass of the output particle: 524.85 MeV - -- mass of the nucleus output particle: 957.576 MeV - -- production model data: - Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV - (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV - Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV - (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV - Output particle (LAB) : eta -147.5307 18.0510 248.6759 MeV -- 599.4982 MeV - (SCM) : eta -147.5307 18.0510 -12.8643 MeV -- 545.6408 MeV - Nucleus output particle (LAB) : neutron 147.5307 -18.0510 481.3241 MeV -- 1.0820 GeV - (SCM) : neutron 147.5307 -18.0510 12.8643 MeV -- 969.1279 MeV + Output particle (LAB) : eta -51.2188 20.2650 95.6243 MeV -- 240.7637 MeV + (SCM) : eta -51.2188 20.2650 -9.8799 MeV -- 221.1804 MeV + Nucleus output particle (LAB) : neutron 51.2188 -20.2650 634.3757 MeV -- 1.4407 GeV + (SCM) : neutron 51.2188 -20.2650 9.8799 MeV -- 1.2936 GeV -- triggered angular ranges: 6 [ 0.0000, -0.2000) --- Energy Deposit - monitor : 418.518 keV + monitor : 411.97 keV vc (l) : 0 eV vc (r) : 0 eV - cal (l) : 223.363 MeV - 0 0.4055 5.822 118.6 0.1613 0 - 0 0 2.844 93.79 0.3101 0 - 0 0 0.6971 0.3144 0.4114 0 + cal (l) : 90.7073 MeV + 0.449 0.5764 0.5669 1.041 0 0 + 3.519 0.973 61.89 19.29 0 0 + 0.4262 0.5326 0.5577 0.8809 0 0 0 0 0 0 0 0 - cal (r) : 376.136 MeV - 0 0 0 0.6373 0.06954 0.3219 - 0 0.4277 18 30.89 9.964 0 - 0 0.825 28.51 285.3 1.163 0 + cal (r) : 150.056 MeV + 0.6575 1.975 11.35 82.03 0.3321 0 + 0 0.6641 4.814 47.44 0 0 + 0 0 0 0.786 0 0 + 0 0 0 0 0 0 +Event 9834 + --- Reconstructed data: + -- entry points: + left: -2.40254 5.40549 -15 cm + right: 9.8561 2.4964 -15 cm + target: 0 0 0 fm + -- the angle: 117.989 deg + -- mass of the output particle: 217.764 MeV + -- mass of the nucleus output particle: 1.29479 GeV + -- production model data: + Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV + (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV + Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV + (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV + Output particle (LAB) : eta -7.6121 16.2076 130.8642 MeV -- 254.6902 MeV + (SCM) : eta -7.6121 16.2076 22.5272 MeV -- 219.6569 MeV + Nucleus output particle (LAB) : neutron 7.6121 -16.2076 599.1358 MeV -- 1.4268 GeV + (SCM) : neutron 7.6121 -16.2076 -22.5272 MeV -- 1.2951 GeV + -- triggered angular ranges: + 2 [ 0.8000, 0.6000) + --- Energy Deposit + monitor : 556.783 keV + vc (l) : 0 eV + vc (r) : 0 eV + cal (l) : 118.429 MeV + 0 0 1.436 45.51 1.198 0 + 0 0 5.263 63.68 0.9284 0 + 0 0 0.4215 0 0 0 + 0 0 0 0 0 0 + cal (r) : 136.262 MeV + 1.732 9.715 0 0 0 0 + 4.061 110.7 0.8083 0 0 0 + 4.589 2.627 1.47 0 0 0 + 0 0.5151 0 0 0 0 +Event 9952 + --- Reconstructed data: + -- entry points: + left: 9.33026 -3.06906 -15 cm + right: 2.60776 6.36359 -15 cm + target: 0 0 0 fm + -- the angle: 136.381 deg + -- mass of the output particle: 458.847 MeV + -- mass of the nucleus output particle: 1.05006 GeV + -- production model data: + Incident particle (LAB) : pi- 0.0000 0.0000 730.0000 MeV -- 743.2226 MeV + (SCM) : pi- 0.0000 0.0000 452.1737 MeV -- 473.2239 MeV + Nucleus particle (LAB) : proton 0.0000 0.0000 0.0000 eV -- 938.2720 MeV + (SCM) : proton 0.0000 0.0000 -452.1737 MeV -- 1.0415 GeV + Output particle (LAB) : eta -50.3787 19.6171 191.0855 MeV -- 499.9774 MeV + (SCM) : eta -50.3787 19.6171 -28.8324 MeV -- 462.9201 MeV + Nucleus output particle (LAB) : neutron 50.3787 -19.6171 538.9145 MeV -- 1.1815 GeV + (SCM) : neutron 50.3787 -19.6171 28.8324 MeV -- 1.0518 GeV + -- triggered angular ranges: + 8 [-0.4000, -0.6000) + --- Energy Deposit + monitor : 634.172 keV + vc (l) : 0 eV + vc (r) : 0 eV + cal (l) : 212.164 MeV + 0 0 0 0 0 0 + 0.2423 3.486 1.298 0 0 0 + 7.724 191.7 0.687 0 0 0 + 0.4591 6.182 0.3836 0 0 0 + cal (r) : 287.814 MeV + 0 1.098 230.6 12.33 0 0 + 3.567 1.297 15.82 22.16 0 0 + 0 0.5338 0 0.3863 0 0 0 0 0 0 0 0 Run terminated. Run Summary - Number of events processed : 17967, effectively: 10 - User=34.300000s Real=34.930461s Sys=0.040000s + Number of events processed : 9953, effectively: 10 + User=8.210000s Real=8.820152s Sys=0.000000s --- Setup acceptances (range | real (trg / mon) | rec (trg / mon / all)): - 1 [ 1.0000, 0.8000) | 0.00000000 ( 0 / 511 ) | 0.00000000 ( 0 / 511 / 636 ) - 2 [ 0.8000, 0.6000) | 0.00000000 ( 0 / 492 ) | 0.00203252 ( 1 / 492 / 608 ) - 3 [ 0.6000, 0.4000) | 0.00393701 ( 2 / 508 ) | 0.00000000 ( 0 / 508 / 630 ) - 4 [ 0.4000, 0.2000) | 0.00000000 ( 0 / 513 ) | 0.00000000 ( 0 / 513 / 626 ) - 5 [ 0.2000, 0.0000) | 0.00000000 ( 0 / 525 ) | 0.00190476 ( 1 / 525 / 644 ) - 6 [ 0.0000, -0.2000) | 0.00000000 ( 0 / 517 ) | 0.00193424 ( 1 / 517 / 645 ) - 7 [-0.2000, -0.4000) | 0.00204082 ( 1 / 490 ) | 0.00204082 ( 1 / 490 / 605 ) - 8 [-0.4000, -0.6000) | 0.00197628 ( 1 / 506 ) | 0.00000000 ( 0 / 506 / 614 ) - 9 [-0.6000, -0.8000) | 0.00000000 ( 0 / 499 ) | 0.00000000 ( 0 / 499 / 620 ) - 10 [-0.8000, -1.0000) | 0.00000000 ( 0 / 515 ) | 0.00000000 ( 0 / 515 / 629 ) + 1 [ 1.0000, 0.8000) | 0.00000000 ( 0 / 274 ) | 0.00000000 ( 0 / 274 / 344 ) + 2 [ 0.8000, 0.6000) | 0.00000000 ( 0 / 315 ) | 0.00000000 ( 0 / 315 / 383 ) + 3 [ 0.6000, 0.4000) | 0.00349650 ( 1 / 286 ) | 0.00349650 ( 1 / 286 / 359 ) + 4 [ 0.4000, 0.2000) | 0.00000000 ( 0 / 264 ) | 0.00000000 ( 0 / 264 / 336 ) + 5 [ 0.2000, 0.0000) | 0.00364964 ( 1 / 274 ) | 0.00000000 ( 0 / 274 / 348 ) + 6 [ 0.0000, -0.2000) | 0.00000000 ( 0 / 276 ) | 0.00724638 ( 2 / 276 / 344 ) + 7 [-0.2000, -0.4000) | 0.00000000 ( 0 / 283 ) | 0.00000000 ( 0 / 283 / 335 ) + 8 [-0.4000, -0.6000) | 0.00361011 ( 1 / 277 ) | 0.00000000 ( 0 / 277 / 337 ) + 9 [-0.6000, -0.8000) | 0.00000000 ( 0 / 279 ) | 0.00000000 ( 0 / 279 / 360 ) + 10 [-0.8000, -1.0000) | 0.00000000 ( 0 / 321 ) | 0.00000000 ( 0 / 321 / 384 ) --- - False hits (edt | rec): 6 | 6 + False hits (edt | rec): 7 | 7 G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 16; of which, static: 3 -Dynamic pools deleted: 13 / Total memory freed: 1.1 MB +Dynamic pools deleted: 13 / Total memory freed: 0.85 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/advanced/ChargeExchangeMC/History b/examples/advanced/ChargeExchangeMC/History index 9c2fa94aed..2ddadb610e 100644 --- a/examples/advanced/ChargeExchangeMC/History +++ b/examples/advanced/ChargeExchangeMC/History @@ -7,8 +7,11 @@ cirrone@lns.infn.it History file of the ChargeExchangeMC application ==================================================== +02.11.2020 - B.Morgan, Tag ChargeExchangeMC-V10-06-01 + Support same CMake version range as core Geant4 + 08.04.2020 - S. Guatelli, Tag ChargeExchangeMC-V10-06-00 - Error removed from the main. CMakeList.txt updated. + Error removed from the main. CMakeList.txt updated. Dependence to Qt Libraries when using ROOT demoved as obsolete. 02.09.2019 - S. Guatelli, Tag ChargeExchangeMC-V10-05-02 @@ -31,18 +34,18 @@ cirrone@lns.infn.it Replace ROOT_INCLUDE_DIR with ROOT_INCLUDE_DIRS 31.10.2017 - L. Pandola, Tag ChargeExchangeMC-V10-03-06 - Clean up preinit.mac, to avoid a cerr when + Clean up preinit.mac, to avoid a cerr when ROOT is not available 26.10.2017 - L. Pandola, Tag ChargeExchangeMC-V10-03-05 - Edit CMakeLists.txt such to copy mac/gmdl in the + Edit CMakeLists.txt such to copy mac/gmdl in the build directory 25.10.2017 - L. Pandola, Tag ChargeExchangeMC-V10-03-04 Fix residual shadowing on gcc 4.9 23.10.2017 - A. Radkov, Tag ChargeExchangeMC-V10-03-03 - Fix shadowed variabiles (and removed flag from + Fix shadowed variabiles (and removed flag from CMakeLists.txt) 12.10.2017 - L. Pandola, Tag ChargeExchangeMC-V10-03-02 @@ -60,16 +63,16 @@ cirrone@lns.infn.it Remove icons.mac. Automatically include since interfaces-V10-02-07 09.12.2014 - A. Radkov, Tag ChargeExchangeMC-V10-01-00 - CERN ROOT histograming binding. Bug fix for online histogram - redrawing and easy online histogram showing from a dedicated + CERN ROOT histograming binding. Bug fix for online histogram + redrawing and easy online histogram showing from a dedicated menu bar (in graphical mode). 06.10.2014 - L.Pandola, Tag: ChargeExchangeMC-V10-00-01 Edited CMakeLists.txt file to allow for the integration - in the CDash testing + in the CDash testing -12.12.2013 - A. Radkov & L. Pandola, Tag: ChargeExchangeMC-V10-00-00 - Fix a few compiler warnings (shadowed variables, system of +12.12.2013 - A. Radkov & L. Pandola, Tag: ChargeExchangeMC-V10-00-00 + Fix a few compiler warnings (shadowed variables, system of units). FTFP_BERT replaces deprecated QGSP_BERT 22.11.2012 - L.Garnier Tag: ChargeExchangeMC-V09-05-05 @@ -86,7 +89,7 @@ cirrone@lns.infn.it 17.10.2012, L.Pandola & A.Radkov, Tag: ChargeExchangeMC-V09-05-01 - Fix to compile the code against Geant4 9.6 - - Edit GNUmakefile such that the default version does not + - Edit GNUmakefile such that the default version does not depend on boost 11.10.2012, G.Cosmo, Tag: ChargeExchangeMC-V09-05-00 diff --git a/examples/advanced/HGCal_testbeam/CMakeLists.txt b/examples/advanced/HGCal_testbeam/CMakeLists.txt new file mode 100644 index 0000000000..e1840bbc36 --- /dev/null +++ b/examples/advanced/HGCal_testbeam/CMakeLists.txt @@ -0,0 +1,88 @@ +#---------------------------------------------------------------------------- +# Setup the project +cmake_minimum_required(VERSION 3.8...3.18 FATAL_ERROR) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() + +project(HGCal_testbeam) + +#---------------------------------------------------------------------------- +# Find Geant4 package, activating all available UI and Vis drivers by default +# You can set WITH_GEANT4_UIVIS to OFF via the command line or ccmake/cmake-gui +# to build a batch mode only executable +# +option(WITH_GEANT4_UIVIS "Build example with Geant4 UI and Vis drivers" ON) +if(WITH_GEANT4_UIVIS) + find_package(Geant4 REQUIRED ui_all vis_all) +else() + find_package(Geant4 REQUIRED) +endif() + +#---------------------------------------------------------------------------- +# Find ROOT (required package only for reading input particles from file) +# +find_package(ROOT QUIET NO_SYSTEM_ENVIRONMENT_PATH NO_CMAKE_SYSTEM_PATH) +if (ROOT_FOUND) + message(STATUS "Found ROOT: ${ROOT_DIR}. Particles read from file can be used as generator.") + add_definitions(-DWITHROOT) + include_directories(${ROOT_INCLUDE_DIRS}) +endif() + + +#---------------------------------------------------------------------------- +# Setup Geant4 include directories and compile definitions +# +include(${Geant4_USE_FILE}) + +#---------------------------------------------------------------------------- +# Locate sources and headers for this project +# +include_directories(${PROJECT_SOURCE_DIR}/include + ${Geant4_INCLUDE_DIR}) +file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) +file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) + +#---------------------------------------------------------------------------- +# Add the executable, and link it to the Geant4 libraries +# +add_executable(HGCal_testbeam hgcal_testbeam.cc ${sources} ${headers}) +target_link_libraries(HGCal_testbeam ${Geant4_LIBRARIES}) +if (ROOT_FOUND) + target_link_libraries(HGCal_testbeam ${ROOT_LIBRARIES}) + set_target_properties(HGCal_testbeam PROPERTIES CXX_STANDARD 17) +endif() + +#---------------------------------------------------------------------------- +# Copy all scripts to the build directory, i.e. the directory in which we +# build HGCal)testbeam. This is so that we can run the executable directly because it +# relies on these scripts being in the current working directory. +# +set(HGCAL_SCRIPTS + init_vis.mac + run.mac + vis.mac + ) + +foreach(_script ${HGCAL_SCRIPTS}) + configure_file( + ${PROJECT_SOURCE_DIR}/${_script} + ${PROJECT_BINARY_DIR}/${_script} + COPYONLY + ) +endforeach() + +if (ROOT_FOUND) + configure_file( + ${PROJECT_SOURCE_DIR}/readFromFile.mac + ${PROJECT_BINARY_DIR}/readFromFile.mac + COPYONLY + ) +endif() + +#---------------------------------------------------------------------------- +# Install the executable to 'bin' directory under CMAKE_INSTALL_PREFIX +# +install(TARGETS HGCal_testbeam DESTINATION bin) + + diff --git a/examples/advanced/HGCal_testbeam/GNUmakefile b/examples/advanced/HGCal_testbeam/GNUmakefile new file mode 100644 index 0000000000..bada066b2f --- /dev/null +++ b/examples/advanced/HGCal_testbeam/GNUmakefile @@ -0,0 +1,16 @@ +# -------------------------------- +# GNUmakefile for examples module. +# -------------------------------- + +name := HGCal_testbeam +G4TARGET := $(name) +G4EXLIB := true + +ifndef G4INSTALL + G4INSTALL = ../.. +endif + +.PHONY: all +all: lib bin + +include $(G4INSTALL)/config/binmake.gmk diff --git a/examples/advanced/HGCal_testbeam/History b/examples/advanced/HGCal_testbeam/History new file mode 100644 index 0000000000..a197b00efc --- /dev/null +++ b/examples/advanced/HGCal_testbeam/History @@ -0,0 +1,18 @@ +------------------------------------------------------------------- + + ========================================================= + Geant4 - an Object-Oriented Toolkit for Simulation in HEP + ========================================================= + + Example HGCal_testbeam History file + --------------------------- +This file should be used by the G4 example coordinator to briefly +summarize all major modifications introduced in the code and keep +track of all tags. + + ---------------------------------------------------------- + * Reverse chronological order (last date on top), please * + ---------------------------------------------------------- + +02-Nov-20 A. Zaborowska (exhgcaltb-V10-06-00) +- Create HGCal_testbeam example based on Thorben Quast application \ No newline at end of file diff --git a/examples/advanced/HGCal_testbeam/README b/examples/advanced/HGCal_testbeam/README new file mode 100644 index 0000000000..93092d98eb --- /dev/null +++ b/examples/advanced/HGCal_testbeam/README @@ -0,0 +1,227 @@ +------------------------------------------------------------------- + + ========================================================= + Geant4 - an Object-Oriented Toolkit for Simulation in HEP + ========================================================= + + Example HGCal_testbeam + ---------------------- + + This example is based on the Geant4 standalone application developed + by Thorben Quast for the CMS HGCal studies: + https://github.com/ThorbenQuast/HGCal_TB_Geant4. + + The goal of this example is to demonstrate a test beam setup used + in HEP experiments, and as a base for the validation studies and + comparison with experiment data. + + It presents a test beam setup used in the HGCal studies in October + 2018. It can be easily extended to other configurations. + + Details on the High Granularity Calorimeter (HGCal) can be found + i.a. in the Technical Design Report: + https://cds.cern.ch/record/2293646/files/CMS-TDR-019.pdf + + 1. Detector description + ----------------------- + + Detector construction in this example assumes that the setup is + constructed with different elements placed one behind another along + z axis (beam axis). + There are 3 configurations user can choose from, and could be set + with UI command: + + /HGCalTestbeam/setup/configuration + + where by default is equal to 0, which means the HGCal testbeam + setup used in October 2018. + 1 builds the same calorimeter setup, but places in front of it + several beamline elements. + 2 builds a very simplistic test configuration. + + Whenever a silicon wafer or SiPM is placed in the detector, a sensitive + volume is attached to it, and will be used to collect signal. + + Silicon wafer is divided into cells (pixels), and each individual pixel + can collect signal. + + In order to change the maximum step size allowed in silicon pixels: + + /HGCalTestbeam/setup/stepSilicon + + where is value of the max step size in micrometres. By default + is equal to 30 um. + + 2. Signal + --------- + + Energy deposited within silicon pixels and SiPMs is registered in the + sensitive detectors. Each deposit is added individually to the vector + of hits, in order to allow the digitisation. + + Digitisation is performed at the end of the event. It accumulates the + energy deposits within pixels, taking into account the time cut on the + arrival of signal (global time of energy deposit). By default no time + cut is applied which means all the deposits are counted. It can be set + using UI command: + + /HGCalTestbeam/hits/timeCut " + ); +#endif +} + diff --git a/examples/advanced/gorad/src/GRParallelWorldBiasingProcess.cc b/examples/advanced/gorad/src/GRParallelWorldBiasingProcess.cc new file mode 100644 index 0000000000..20e6888f79 --- /dev/null +++ b/examples/advanced/gorad/src/GRParallelWorldBiasingProcess.cc @@ -0,0 +1,172 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Gorad (Geant4 Open-source Radiation Analysis and Design) +// +// Author : Makoto Asai (SLAC National Accelerator Laboratory) +// +// Development of Gorad is funded by NASA Johnson Space Center (JSC) +// under the contract NNJ15HK11B. +// +// ******************************************************************** +// +// GRParallelWorldBiasingProcess.cc +// A process that takes care of the geometry importance biasing. +// This class assumes the existance of a parallel world dedicated +// to the geometry importance biasing and biasing parameters are +// associated to the region defined in that parallel world. +// +// History +// September 8th, 2020 : first implementation +// +// ******************************************************************** + +#include "G4ios.hh" +#include "GRParallelWorldBiasingProcess.hh" +#include "G4Step.hh" +#include "G4Track.hh" +#include "G4Navigator.hh" +#include "G4PathFinder.hh" +#include "G4VTouchable.hh" +#include "G4VPhysicalVolume.hh" +#include "G4ParticleChange.hh" +#include "G4ParticleChangeForNothing.hh" +#include "Randomize.hh" +#include "G4Region.hh" +#include "GRBiasingRegionInfo.hh" + +GRParallelWorldBiasingProcess:: +GRParallelWorldBiasingProcess(const G4String& processName,G4ProcessType theType) +:G4ParallelWorldProcess(processName,theType) +{ + particleChange = new G4ParticleChange(); + emptyParticleChange = new G4ParticleChangeForNothing(); +} + +GRParallelWorldBiasingProcess::~GRParallelWorldBiasingProcess() +{;} + +G4VParticleChange* GRParallelWorldBiasingProcess::PostStepDoIt( + const G4Track& track, + const G4Step& step) +{ + fOldGhostTouchable = fGhostPostStepPoint->GetTouchableHandle(); + CopyStep(step); + + if(fOnBoundary) + { + fNewGhostTouchable = fPathFinder->CreateTouchableHandle(fNavigatorID); + } + else + { + fNewGhostTouchable = fOldGhostTouchable; + } + + fGhostPreStepPoint->SetTouchableHandle(fOldGhostTouchable); + fGhostPostStepPoint->SetTouchableHandle(fNewGhostTouchable); + + if(fNewGhostTouchable->GetVolume() == nullptr) + { + // world volume boundary + emptyParticleChange->Initialize(track); + return emptyParticleChange; + } + if(fNewGhostTouchable->GetVolume() == fOldGhostTouchable->GetVolume()) + { + // stayed in the same volume + emptyParticleChange->Initialize(track); + return emptyParticleChange; + } + + G4int preStepCopyNo = fOldGhostTouchable->GetReplicaNumber(); + G4int postStepCopyNo = fNewGhostTouchable->GetReplicaNumber(); + + GRBiasingRegionInfo* biasInfo = static_cast + (fNewGhostTouchable->GetVolume()->GetLogicalVolume()->GetRegion()->GetUserInformation()); + auto probability = biasInfo->GetProbability(); + if(probability < 1.) + { + // skip biasing to avoid over biasing + G4double ran = G4UniformRand(); + if(ran > probability) + { + emptyParticleChange->Initialize(track); + return emptyParticleChange; + } + } + + G4double trackWeight = track.GetWeight(); + particleChange->Initialize(track); + + auto biasFactor = biasInfo->GetBiasingFactor(); + if(biasFactor==1) + { + // not biasing + emptyParticleChange->Initialize(track); + return emptyParticleChange; + } + + if(preStepCopyNo < postStepCopyNo) + { + // getting into more important volume, i.e. do splitting + trackWeight /= biasFactor; + particleChange->ProposeParentWeight(trackWeight); + for(G4int iClone=1;iCloneSetWeight(trackWeight); + particleChange->AddSecondary(clonedTrack); + } + particleChange->SetSecondaryWeightByProcess(true); + } + else if(preStepCopyNo > postStepCopyNo) + { + // getting into less important volume, i.e. do Russian Rouletting + G4double survivalRate = 1.0/biasFactor; + G4double ran = G4UniformRand(); + if(ran > survivalRate) + { + // dead + particleChange->ProposeTrackStatus(fStopAndKill); + } + else + { + // survive + trackWeight *= biasFactor; + particleChange->ProposeParentWeight(trackWeight); + } + } + else + { + // This should not happen!! + G4ExceptionDescription ed; + ed << "pre step point : "<GetVolume()->GetName()<<" - copy no. "<GetReplicaNumber()<<"\n" + << "post step point : "<GetVolume()->GetName()<<" - copy no. "<GetReplicaNumber(); + G4Exception("GRParallelWorldBiasingProcess::PostStepDoIt()","GoradProc0001",FatalException,ed); + } + + return particleChange; +} + diff --git a/examples/advanced/gorad/src/GRParallelWorldPhysics.cc b/examples/advanced/gorad/src/GRParallelWorldPhysics.cc new file mode 100644 index 0000000000..4c8c2f8e86 --- /dev/null +++ b/examples/advanced/gorad/src/GRParallelWorldPhysics.cc @@ -0,0 +1,91 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Gorad (Geant4 Open-source Radiation Analysis and Design) +// +// Author : Makoto Asai (SLAC National Accelerator Laboratory) +// +// Development of Gorad is funded by NASA Johnson Space Center (JSC) +// under the contract NNJ15HK11B. +// +// ******************************************************************** +// +// GRParallelWorldPhysics.cc +// Utility class that adds GRParallelWorldBiasingProcess to the +// process managers of particles +// +// History +// September 8th, 2020 : first implementation +// +// ******************************************************************** + +#include "GRParallelWorldPhysics.hh" + +#include "G4ParticleDefinition.hh" +#include "G4ProcessManager.hh" + +#include "G4TransportationManager.hh" +#include "GRParallelWorldBiasingProcess.hh" + +// factory +#include "G4PhysicsConstructorFactory.hh" +// +G4_DECLARE_PHYSCONSTR_FACTORY(GRParallelWorldPhysics); + +GRParallelWorldPhysics::GRParallelWorldPhysics(const G4String& name, G4bool layeredMass) + : G4VPhysicsConstructor(name), fLayeredMass(layeredMass) +{;} + +GRParallelWorldPhysics::~GRParallelWorldPhysics() +{;} + +void GRParallelWorldPhysics::ConstructParticle() +{;} + +void GRParallelWorldPhysics::ConstructProcess() +{ + // Make sure the parallel world registered + G4TransportationManager::GetTransportationManager() + ->GetParallelWorld(namePhysics); + + // Add parallel world process + GRParallelWorldBiasingProcess* theParallelWorldProcess + = new GRParallelWorldBiasingProcess(namePhysics); + theParallelWorldProcess->SetParallelWorld(namePhysics); + theParallelWorldProcess->SetLayeredMaterialFlag(fLayeredMass); + + auto myParticleIterator=GetParticleIterator(); + myParticleIterator->reset(); + while( (*myParticleIterator)() ){ + G4ParticleDefinition* particle = myParticleIterator->value(); + G4ProcessManager* pmanager = particle->GetProcessManager(); + pmanager->AddProcess(theParallelWorldProcess); + if(theParallelWorldProcess->IsAtRestRequired(particle)) + {pmanager->SetProcessOrdering(theParallelWorldProcess, idxAtRest, 9900);} + pmanager->SetProcessOrderingToSecond(theParallelWorldProcess, idxAlongStep); + pmanager->SetProcessOrdering(theParallelWorldProcess, idxPostStep, 9900); + } +} + diff --git a/examples/advanced/gorad/src/GRPhysicsList.cc b/examples/advanced/gorad/src/GRPhysicsList.cc new file mode 100644 index 0000000000..7da0ae5d68 --- /dev/null +++ b/examples/advanced/gorad/src/GRPhysicsList.cc @@ -0,0 +1,252 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Gorad (Geant4 Open-source Radiation Analysis and Design) +// +// Author : Makoto Asai (SLAC National Accelerator Laboratory) +// +// Development of Gorad is funded by NASA Johnson Space Center (JSC) +// under the contract NNJ15HK11B. +// +// ******************************************************************** +// +// GRPhysicsList.cc +// Gorad Physics List +// +// History +// September 8th, 2020 : first implementation +// +// ******************************************************************** + +#include "GRPhysicsList.hh" +#include "GRPhysicsListMessenger.hh" +#include "G4SystemOfUnits.hh" +#include "G4PhysListFactory.hh" + +GRPhysicsList::GRPhysicsList() +: PLName("FTFP_BERT"), physList(nullptr), + EM_opt("Op_0"), Had_opt("FTFP_BERT"), + addHP(false), addRDM(false), addRMC(false), addOptical(false), + stepLimit_opt(-1) +{ + factory = nullptr; + messenger = new GRPhysicsListMessenger(this); + + globalCuts[0] = 0.7*mm; // e- + globalCuts[1] = 0.7*mm; // e+ + globalCuts[2] = 0.7*mm; // gamma + globalCuts[3] = 0.7*mm; // proton +} + +GRPhysicsList::~GRPhysicsList() +{ + delete factory; + if(physList) delete physList; + delete messenger; +} + +void GRPhysicsList::ConstructParticle() +{ + if(!physList) GeneratePL(); + physList->ConstructParticle(); +} + +void GRPhysicsList::ConstructProcess() +{ + if(!physList) GeneratePL(); + physList->ConstructProcess(); +} + +#include "G4Region.hh" +#include "G4ProductionCuts.hh" + +void GRPhysicsList::SetCuts() +{ + if(!physList) GeneratePL(); + physList->SetCutValue(globalCuts[2],"gamma"); // gamma should be defined first! + physList->SetCutValue(globalCuts[0],"e-"); + physList->SetCutValue(globalCuts[1],"e+"); + physList->SetCutValue(globalCuts[3],"proton"); +} + +void GRPhysicsList::SetGlobalCuts(G4double val) +{ + for(G4int i=0; i<4; i++) + { SetGlobalCut(i,val); } + if(physList) SetCuts(); +} + +void GRPhysicsList::SetGlobalCut(G4int i, G4double val) +{ + globalCuts[i] = val; + if(physList) SetCuts(); +} + +void GRPhysicsList::GeneratePLName() +{ + G4String plname = Had_opt; + if(addHP && Had_opt != "Shielding") plname += "_HP"; + + G4String EMopt = ""; + if(EM_opt=="Op_1") EMopt = "_EMV"; + else if(EM_opt=="Op_3") EMopt = "_EMY"; + else if(EM_opt=="Op_4") EMopt = "_EMZ"; + else if(EM_opt=="LIV") EMopt = "_LIV"; + else if(EM_opt=="LIV_Pol") G4cout << "EM option is under development." << G4endl; + plname += EMopt; + + auto valid = factory->IsReferencePhysList(plname); + if(valid) + { PLName = plname; } + else + { + G4ExceptionDescription ed; + ed << "Physics List <" << plname << "> is not a valid reference physics list."; + G4Exception("GRPhysicsList::GeneratePLName()","GRPHYS0001", + FatalException,ed); + } +} + +#include "G4RadioactiveDecayPhysics.hh" +#include "G4OpticalPhysics.hh" +#include "G4StepLimiterPhysics.hh" +#include "G4ParallelWorldPhysics.hh" +#include "G4GenericBiasingPhysics.hh" +#include "GRParallelWorldPhysics.hh" +#include "G4ProcessTable.hh" +#include "G4EmParameters.hh" +#include "G4HadronicParameters.hh" + +void GRPhysicsList::GeneratePL() +{ + if(physList) return; + + factory = new G4PhysListFactory(); + GeneratePLName(); + physList = factory->GetReferencePhysList(PLName); + G4cout << "Creating " << PLName << " physics list ################ " << applyGeomImpBias << G4endl; + + if(addRDM && Had_opt != "Shielding") + { physList->RegisterPhysics(new G4RadioactiveDecayPhysics()); + G4cout << "Adding G4RadioactiveDecayPhysics ################ " << G4endl; } + + if(addRMC) + { G4cout << "Reverse Monte Calro option is under development." << G4endl; } + + if(stepLimit_opt>=0) + { physList->RegisterPhysics(new G4StepLimiterPhysics()); + G4cout << "Adding G4StepLimiterPhysics ################ " << G4endl; } + + if(addOptical) // Optical processes should come last! + { physList->RegisterPhysics(new G4OpticalPhysics()); + G4cout << "Adding G4OpticalPhysics ################ " << G4endl; } + + if(applyGeomImpBias) // Geometry Importance Biasing with parallel world + { + physList->RegisterPhysics(new GRParallelWorldPhysics("GeomBias",false)); + G4cout << "Adding G4GenericBiasingPhysics for GeomBias ################ " << G4endl; + } + + G4int verbose = G4ProcessTable::GetProcessTable()->GetVerboseLevel(); + physList->SetVerboseLevel(verbose); + G4EmParameters::Instance()->SetVerbose(verbose); + G4HadronicParameters::Instance()->SetVerboseLevel(verbose); +} + +#include "G4RegionStore.hh" + +G4Region* GRPhysicsList::FindRegion(const G4String& reg) const +{ + auto store = G4RegionStore::GetInstance(); + return store->GetRegion(reg); +} + +G4Region* GRPhysicsList::SetLocalCut(const G4String& reg,G4int i,G4double val) +{ + auto regPtr = FindRegion(reg); + if(!regPtr) return regPtr; + + auto cuts = regPtr->GetProductionCuts(); + if(!cuts) + { + cuts = new G4ProductionCuts(); + regPtr->SetProductionCuts(cuts); + } + + cuts->SetProductionCut(val,i); + return regPtr; +} + +G4double GRPhysicsList::GetLocalCut(const G4String& reg,G4int i) const +{ + auto regPtr = FindRegion(reg); + G4double val = -1.0; + if(regPtr) + { + auto cuts = regPtr->GetProductionCuts(); + if(cuts) val = cuts->GetProductionCut(i); + } + return val; +} + +#include "G4UserLimits.hh" + +G4Region* GRPhysicsList::SetLocalStepLimit(const G4String& reg,G4double val) +{ + auto regPtr = FindRegion(reg); + if(!regPtr) return regPtr; + + auto uLim = regPtr->GetUserLimits(); + if(!uLim) + { + uLim = new G4UserLimits(val); + regPtr->SetUserLimits(uLim); + } + else + { uLim->SetMaxAllowedStep(val); } + return regPtr; +} + +#include "G4Track.hh" +G4double GRPhysicsList::GetLocalStepLimit(const G4String& reg) const +{ + static G4Track dummyTrack; + auto regPtr = FindRegion(reg); + G4double val = -1.0; + if(regPtr) + { + auto uLim = regPtr->GetUserLimits(); + if(uLim) val = uLim->GetMaxAllowedStep(dummyTrack); + } + return val; +} + +void GRPhysicsList::SetGlobalStepLimit(G4double val) +{ SetLocalStepLimit("DefaultRegionForTheWorld",val); } + +G4double GRPhysicsList::GetGlobalStepLimit() const +{ return GetLocalStepLimit("DefaultRegionForTheWorld"); } + + diff --git a/examples/advanced/gorad/src/GRPhysicsListMessenger.cc b/examples/advanced/gorad/src/GRPhysicsListMessenger.cc new file mode 100644 index 0000000000..bbcd38be48 --- /dev/null +++ b/examples/advanced/gorad/src/GRPhysicsListMessenger.cc @@ -0,0 +1,367 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Gorad (Geant4 Open-source Radiation Analysis and Design) +// +// Author : Makoto Asai (SLAC National Accelerator Laboratory) +// +// Development of Gorad is funded by NASA Johnson Space Center (JSC) +// under the contract NNJ15HK11B. +// +// ******************************************************************** +// +// GRPhysicsListMessenger.cc +// A messenger class that handles Gorad physics list options. +// +// History +// September 8th, 2020 : first implementation +// +// ******************************************************************** + +#include "GRPhysicsListMessenger.hh" + +#include "GRPhysicsList.hh" +#include "G4UIcommand.hh" +#include "G4UIparameter.hh" +#include "G4UIdirectory.hh" +#include "G4UIcmdWithAString.hh" +#include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIcmdWithoutParameter.hh" + +GRPhysicsListMessenger::GRPhysicsListMessenger(GRPhysicsList* pl) +: pPL(pl) +{ + G4UIparameter* param = nullptr; + + physDir = new G4UIdirectory("/gorad/physics/"); + physDir->SetGuidance("GORAD physics selection"); + + selectEMCmd = new G4UIcmdWithAString("/gorad/physics/EM",this); + selectEMCmd->AvailableForStates(G4State_PreInit); + selectEMCmd->SetToBeBroadcasted(false); + selectEMCmd->SetParameterName("EM_option",true); + selectEMCmd->SetCandidates("Op_0 Op_1 Op_3 Op_4 LIV LIV_Pol"); + selectEMCmd->SetDefaultValue("Op_0"); + selectEMCmd->SetGuidance("Select EM Physics option"); + selectEMCmd->SetGuidance(" Op_0 (default) : Suitable to medium and high energy applications"); + selectEMCmd->SetGuidance(" Op_1 : Faster than Op_0 because of less accurate MSC step limitation"); + selectEMCmd->SetGuidance(" Op_3 : Suitable for medical applications - more accurate MSC for all particles"); + selectEMCmd->SetGuidance(" Op_4 : Most accurate (GS MSC model with Mott correction and error-free stepping for e+/-"); + selectEMCmd->SetGuidance(" LIV : Livermore models for e-/gamma below 1 GeV, otherwise Op_0"); + selectEMCmd->SetGuidance(" LIV_Pol : Polarized extension of Livermore models (t.b.a.)"); + + selectHadCmd = new G4UIcmdWithAString("/gorad/physics/Hadronic",this); + selectHadCmd->AvailableForStates(G4State_PreInit); + selectHadCmd->SetToBeBroadcasted(false); + selectHadCmd->SetParameterName("Had_option",true); + selectHadCmd->SetCandidates("FTFP_BERT QGSP_BIC Shielding"); + selectHadCmd->SetDefaultValue("FTFP_BERT"); + selectHadCmd->SetGuidance("Select Hadronic Physics option"); + selectHadCmd->SetGuidance(" FTFP_BERT (default) : Fritiof string + Bertini cascade + Precompound de-excitation"); + selectHadCmd->SetGuidance(" suitable to most of midium and high energy applications"); + selectHadCmd->SetGuidance(" QGSP_BIC : Quark-Gluon-String + Fritiof string + Binary cascade + Precompound de-excitation"); + selectHadCmd->SetGuidance(" suitable for lower energy applications such as medical"); + selectHadCmd->SetGuidance(" Shielding : Similar to FTFP+BERT with better ion-ion interactions."); + selectHadCmd->SetGuidance(" High-Precision neutron and Radioactive Decay models are included by default."); + + addHPCmd = new G4UIcmdWithoutParameter("/gorad/physics/addHP",this); + addHPCmd->AvailableForStates(G4State_PreInit); + addHPCmd->SetToBeBroadcasted(false); + addHPCmd->SetGuidance("Add High-Precision neutron model."); + addHPCmd->SetGuidance(" Note: Shielding option has already had HP. This command does not make effect to Shielding option."); + + addRDMCmd = new G4UIcmdWithoutParameter("/gorad/physics/addRDM",this); + addRDMCmd->AvailableForStates(G4State_PreInit); + addRDMCmd->SetToBeBroadcasted(false); + addRDMCmd->SetGuidance("Add Radioactive Decay model."); + addRDMCmd->SetGuidance(" Note: Shielding option has already had RDM. This command does not make effect to Shielding option."); + + addRMCCmd = new G4UIcmdWithoutParameter("/gorad/physics/addRMC",this); + addRMCCmd->AvailableForStates(G4State_PreInit); + addRMCCmd->SetToBeBroadcasted(false); + addRMCCmd->SetGuidance("Add Reverse Monte Carlo."); + + addOpticalCmd = new G4UIcmdWithoutParameter("/gorad/physics/addOptical",this); + addOpticalCmd->AvailableForStates(G4State_PreInit); + addOpticalCmd->SetToBeBroadcasted(false); + addOpticalCmd->SetGuidance("Add Optical physics"); + + addStepLimitCmd = new G4UIcmdWithAString("/gorad/physics/addStepLimit",this); + addStepLimitCmd->AvailableForStates(G4State_PreInit); + addStepLimitCmd->SetToBeBroadcasted(false); + addStepLimitCmd->SetGuidance("Add step-limiter process to artificially limit step length."); + addStepLimitCmd->SetGuidance("Specify particle types to be applied."); + addStepLimitCmd->SetGuidance(" charged (default) : applied only to the charged particles"); + addStepLimitCmd->SetGuidance(" neutral : applied only to the neutral particles"); + addStepLimitCmd->SetGuidance(" all : applied to all particle types"); + addStepLimitCmd->SetGuidance(" e+/- : applied only to e+/e-"); + addStepLimitCmd->SetGuidance(" Note: In addition to this command, you need to specify the limitation value by"); + addStepLimitCmd->SetGuidance(" /gorad/physics/limit/stepLimit or /gorad/physics/limit/localStepLimt command."); + addStepLimitCmd->SetParameterName("particle",true); + addStepLimitCmd->SetDefaultValue("charged"); + addStepLimitCmd->SetCandidates("charged neutral all e+/-"); + + physLimitDir = new G4UIdirectory("/gorad/physics/limit/"); + physLimitDir->SetGuidance("Specify step limitation"); + + setStepLimitCmd = new G4UIcmdWithADoubleAndUnit("/gorad/physics/limit/stepLimit",this); + setStepLimitCmd->AvailableForStates(G4State_Idle); + setStepLimitCmd->SetToBeBroadcasted(false); + setStepLimitCmd->SetParameterName("length",false); + setStepLimitCmd->SetDefaultUnit("mm"); + setStepLimitCmd->SetGuidance("Define the limitation of the step length"); + setStepLimitCmd->SetGuidance("This limitation is applied to the entire geometry except regions that has its dedicated limit."); + + setRegionStepLimitCmd = new G4UIcommand("/gorad/physics/limit/regionStepLimit",this); + setRegionStepLimitCmd->AvailableForStates(G4State_Idle); + setRegionStepLimitCmd->SetToBeBroadcasted(false); + setRegionStepLimitCmd->SetGuidance("Define the limitation of the step length for the specified region"); + setRegionStepLimitCmd->SetGuidance(" [usage] /gorad/physics/limit/regionStepLimit region length [unit]"); + setRegionStepLimitCmd->SetGuidance(" region (string) : region name"); + setRegionStepLimitCmd->SetGuidance(" Note: Region has to be defined in advance to this command."); + setRegionStepLimitCmd->SetGuidance(" If new region is necessary, use /gorad/geometry/createRegion to create it."); + param = new G4UIparameter("region",'s',false); + setRegionStepLimitCmd->SetParameter(param); + param = new G4UIparameter("length",'d',false); + setRegionStepLimitCmd->SetParameter(param); + param = new G4UIparameter("unit",'s',true); + param->SetDefaultUnit("mm"); + setRegionStepLimitCmd->SetParameter(param); + + physCutDir = new G4UIdirectory("/gorad/physics/cuts/"); + physCutDir->SetGuidance("Specify production thresholds (a.k.a. cuts)"); + + setCutCmd = new G4UIcmdWithADoubleAndUnit("/gorad/physics/cuts/setCuts",this); + setCutCmd->AvailableForStates(G4State_PreInit, G4State_Idle); + setCutCmd->SetToBeBroadcasted(false); + setCutCmd->SetParameterName("length",false); + setCutCmd->SetDefaultUnit("mm"); + setCutCmd->SetGuidance("Specify production thresholds (a.k.a. cuts) that is applied to the entire geometry"); + setCutCmd->SetGuidance("This threshold is applied to all of e-, e+, gamma and proton."); + setCutCmd->SetGuidance("Threshold of each particle can be overwitted by /gorad/physics/cuts/setParticleCut command"); + + setCutParticleCmd = new G4UIcommand("/gorad/physics/cuts/setParticleCut",this); + setCutParticleCmd->AvailableForStates(G4State_PreInit, G4State_Idle); + setCutParticleCmd->SetToBeBroadcasted(false); + setCutParticleCmd->SetGuidance("Specify production threshold (a.k.a. cut) for the specified particle that is applied to the entire geometry"); + setCutParticleCmd->SetGuidance(" [usage] /gorad/physics/setParticleCut particle cut unit"); + param = new G4UIparameter("particle",'s',false); + param->SetParameterCandidates("e- e+ gamma proton"); + setCutParticleCmd->SetParameter(param); + param = new G4UIparameter("cut",'d',false); + setCutParticleCmd->SetParameter(param); + param = new G4UIparameter("unit",'s',true); + param->SetDefaultUnit("mm"); + setCutParticleCmd->SetParameter(param); + + setCutRegionCmd = new G4UIcommand("/gorad/physics/cuts/setRegionCut",this); + setCutRegionCmd->AvailableForStates(G4State_Idle); + setCutRegionCmd->SetToBeBroadcasted(false); + setCutRegionCmd->SetGuidance("Specify production threshold (a.k.a. cut) that is applied to the specified region"); + setCutRegionCmd->SetGuidance(" [usage] /gorad/physics/setRegionCut region cut unit"); + setCutRegionCmd->SetGuidance("This threshold is applied to all of e-, e+, gamma and proton."); + setCutRegionCmd->SetGuidance("Threshold of each particle can be overwitted by /gorad/physics/cuts/setRegionParticleCut command"); + setCutRegionCmd->SetGuidance(" Note: Region has to be defined in advance to this command."); + setCutRegionCmd->SetGuidance(" If new region is necessary, use /gorad/geometry/createRegion to create it."); + param = new G4UIparameter("region",'s',false); + setCutRegionCmd->SetParameter(param); + param = new G4UIparameter("cut",'d',false); + setCutRegionCmd->SetParameter(param); + param = new G4UIparameter("unit",'s',true); + param->SetDefaultUnit("mm"); + setCutRegionCmd->SetParameter(param); + + setCutRegionParticleCmd = new G4UIcommand("/gorad/physics/cuts/setRegionParticleCut",this); + setCutRegionParticleCmd->AvailableForStates(G4State_Idle); + setCutRegionParticleCmd->SetToBeBroadcasted(false); + setCutRegionParticleCmd->SetGuidance("Specify production threshold (a.k.a. cut) that is applied to the specified region"); + setCutRegionParticleCmd->SetGuidance(" [usage] /gorad/physics/setRegionParticleCut region particle cut unit"); + setCutRegionParticleCmd->SetGuidance(" Note: Region has to be defined in advance to this command."); + setCutRegionParticleCmd->SetGuidance(" If new region is necessary, use /gorad/geometry/createRegion to create it."); + param = new G4UIparameter("region",'s',false); + setCutRegionParticleCmd->SetParameter(param); + param = new G4UIparameter("particle",'s',false); + param->SetParameterCandidates("e- e+ gamma proton"); + setCutRegionParticleCmd->SetParameter(param); + param = new G4UIparameter("cut",'d',false); + setCutRegionParticleCmd->SetParameter(param); + param = new G4UIparameter("unit",'s',true); + param->SetDefaultUnit("mm"); + setCutRegionParticleCmd->SetParameter(param); + +} + +GRPhysicsListMessenger::~GRPhysicsListMessenger() +{ + delete selectEMCmd; + delete selectHadCmd; + delete addHPCmd; + delete addRDMCmd; + delete addRMCCmd; + delete addOpticalCmd; + delete addStepLimitCmd; + delete setStepLimitCmd; + delete setRegionStepLimitCmd; + delete setCutCmd; + delete setCutParticleCmd; + delete setCutRegionCmd; + delete setCutRegionParticleCmd; + + delete physLimitDir; + delete physCutDir; + delete physDir; +} + +#include "G4Tokenizer.hh" + +void GRPhysicsListMessenger::SetNewValue(G4UIcommand* cmd, G4String val) +{ + if(cmd==selectEMCmd) + { pPL->SetEM(val); } + else if(cmd==selectHadCmd) + { pPL->SetHad(val); } + else if(cmd==addHPCmd) + { pPL->AddHP(); } + else if(cmd==addRDMCmd) + { pPL->AddRDM(); } + else if(cmd==addRMCCmd) + { pPL->AddRMC(); } + else if(cmd==addOpticalCmd) + { G4cout<<"Not yet implemented."<AddStepLimit(opt); + } + else if(cmd==setStepLimitCmd) + { pPL->SetGlobalStepLimit(setStepLimitCmd->GetNewDoubleValue(val)); } + else if(cmd==setRegionStepLimitCmd) + { + G4Tokenizer next(val); + G4String reg = next(); + G4String newVal = next(); + newVal += " "; + newVal += next(); + auto regPtr = pPL->SetLocalStepLimit(reg,setRegionStepLimitCmd->ConvertToDimensionedDouble(newVal)); + if(!regPtr) + { + G4ExceptionDescription ed; + ed << "Region <" << reg << "> is not defined. Region has to be defined in advance to this command." + << "\nIf new region is necessary, use /gorad/geometry/createRegion to create it."; + setRegionStepLimitCmd->CommandFailed(ed); + } + } + else if(cmd==setCutCmd) + { pPL->SetGlobalCuts(setCutCmd->GetNewDoubleValue(val)); } + else if(cmd==setCutParticleCmd) + { + G4Tokenizer next(val); + G4String pat = next(); + G4String newVal = next(); + newVal += " "; + newVal += next(); + G4int i = 0; + if(pat=="e-") i = 0; + else if(pat=="e+") i = 1; + else if(pat=="gamma") i = 2; + else if(pat=="proton") i = 3; + pPL->SetGlobalCut(i,setCutParticleCmd->ConvertToDimensionedDouble(newVal)); + } + else if(cmd==setCutRegionCmd) + { + G4Tokenizer next(val); + G4String reg = next(); + G4String newVal = next(); + newVal += " "; + newVal += next(); + auto regPtr = pPL->SetLocalCuts(reg,setCutRegionCmd->ConvertToDimensionedDouble(newVal)); + if(!regPtr) + { + G4ExceptionDescription ed; + ed << "Region <" << reg << "> is not defined. Region has to be defined in advance to this command." + << "\nIf new region is necessary, use /gorad/geometry/createRegion to create it."; + setRegionStepLimitCmd->CommandFailed(ed); + } + } + else if(cmd==setCutRegionParticleCmd) + { + G4Tokenizer next(val); + G4String reg = next(); + G4String pat = next(); + G4int i = 0; + if(pat=="e-") i = 0; + else if(pat=="e+") i = 1; + else if(pat=="gamma") i = 2; + else if(pat=="proton") i = 3; + G4String newVal = next(); + newVal += " "; + newVal += next(); + auto regPtr = pPL->SetLocalCut(reg,i,setCutRegionParticleCmd->ConvertToDimensionedDouble(newVal)); + if(!regPtr) + { + G4ExceptionDescription ed; + ed << "Region <" << reg << "> is not defined. Region has to be defined in advance to this command." + << "\nIf new region is necessary, use /gorad/geometry/createRegion to create it."; + setRegionStepLimitCmd->CommandFailed(ed); + } + } + +} + +G4String GRPhysicsListMessenger::GetCurrentValue(G4UIcommand* cmd) +{ + G4String val(""); + + if(cmd==selectEMCmd) + { val = pPL->GetEM(); } + else if(cmd==selectHadCmd) + { val = pPL->GetHad(); } + else if(cmd==addHPCmd) + { val = cmd->ConvertToString(pPL->IfHP()); } + else if(cmd==addRDMCmd) + { val = cmd->ConvertToString(pPL->IfRDM()); } + else if(cmd==addRMCCmd) + { val = cmd->ConvertToString(pPL->IfRMC()); } + else if(cmd==addOpticalCmd) + { G4cout<<"Not yet implemented."<IfStepLimit(); + switch(opt) + { + case 0: val = "charged"; break; + case 1: val = "neutral"; break; + case 2: val = "all"; break; + case 3: val = "e+/-"; break; + default : val = "undefined"; break; + } + } + return val; +} + + diff --git a/examples/advanced/gorad/src/GRPrimGenActionMessenger.cc b/examples/advanced/gorad/src/GRPrimGenActionMessenger.cc new file mode 100644 index 0000000000..f4a01be12b --- /dev/null +++ b/examples/advanced/gorad/src/GRPrimGenActionMessenger.cc @@ -0,0 +1,202 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Gorad (Geant4 Open-source Radiation Analysis and Design) +// +// Author : Makoto Asai (SLAC National Accelerator Laboratory) +// +// Development of Gorad is funded by NASA Johnson Space Center (JSC) +// under the contract NNJ15HK11B. +// +// ******************************************************************** +// +// GRPrimGenActionMessenger.hh +// Header file of a messenger that handles primary generator action. +// Input radiation spectrum file should be in ASCII format and each +// row should have low-end kinetic energy and differential flux +// separated by a space. +// +// History +// September 8th, 2020 : first implementation +// +// ******************************************************************** + +#include "GRPrimGenActionMessenger.hh" + +#include "G4UIdirectory.hh" +#include "G4UIcommand.hh" +#include "G4UIparameter.hh" + +GRPrimGenActionMessenger::GRPrimGenActionMessenger(G4int verboseLvl) +: verboseLevel(verboseLvl) +{ + G4UIparameter* param = nullptr; + + srcDir = new G4UIdirectory("/gorad/source/"); + srcDir->SetGuidance("Define primary particle spectrum."); + + defCmd = new G4UIcommand("/gorad/source/define",this); + defCmd->SetGuidance("Define primary particle spectrum."); + defCmd->SetGuidance("[usage] /gorad/source/define pName fName srcType radius unit (x0 y0 z0)"); + defCmd->SetGuidance(" pName : Particle name."); + defCmd->SetGuidance(" fName : File name of the spectrum. Directory may be preceded to the file name."); + defCmd->SetGuidance(" srcType : defines how the primaries are generated."); + defCmd->SetGuidance(" Arb : Generate primaries along with the defined spectrum."); + defCmd->SetGuidance(" LW : Generate primaries in flat ditribution with track weight representing the spectrum."); + defCmd->SetGuidance(" radius : Radius of the source sphere. If it is set to -1 (default), radius is set to 98% of the world volume."); + defCmd->SetGuidance(" unit : Unit of radius value."); + defCmd->SetGuidance(" x0,y0,z0 : (Optional) location of the center of the sphere (same unit is applied as radius)."); + defCmd->SetGuidance(" By default the sphere is located at the center of the world volume."); + defCmd->SetGuidance("[note] This command is not mandatory but dwialternatively granular /gps/ commands can be used for defining primary particles."); + particlePara = new G4UIparameter("pName",'s',false); + defCmd->SetParameter(particlePara); + param = new G4UIparameter("fName",'s',false); + defCmd->SetParameter(param); + param = new G4UIparameter("srcType",'s',false); + param->SetParameterCandidates("Arb LW"); + defCmd->SetParameter(param); + param = new G4UIparameter("radius",'d',true); + param->SetParameterRange("radius == -1. || radius>0."); + param->SetDefaultValue(-1.); + defCmd->SetParameter(param); + param = new G4UIparameter("unit",'s',true); + param->SetDefaultUnit("m"); + defCmd->SetParameter(param); + param = new G4UIparameter("x0",'d',true); + param->SetDefaultValue(0.); + defCmd->SetParameter(param); + param = new G4UIparameter("y0",'d',true); + param->SetDefaultValue(0.); + defCmd->SetParameter(param); + param = new G4UIparameter("z0",'d',true); + param->SetDefaultValue(0.); + defCmd->SetParameter(param); + defCmd->AvailableForStates(G4State_Idle); + defCmd->SetToBeBroadcasted(false); +} + +GRPrimGenActionMessenger::~GRPrimGenActionMessenger() +{ + delete defCmd; + delete srcDir; +} + +#include "G4UImanager.hh" +#include "G4Threading.hh" +#include "G4Tokenizer.hh" +#include "G4UnitsTable.hh" +#include +#include "GRDetectorConstruction.hh" + +void GRPrimGenActionMessenger::SetNewValue(G4UIcommand * command,G4String newVal) +{ + auto UI = G4UImanager::GetUIpointer(); + if(verboseLevel>0) G4cout << newVal << G4endl; + + G4Tokenizer next(newVal); + G4String pName = next(); + G4String fName = next(); + std::ifstream specFile; + specFile.open(fName,std::ios::in); + if(specFile.fail()) + { + G4ExceptionDescription ed; + ed << "ERROR : File <" << fName << "> is not found."; + command->CommandFailed(ed); + return; + } + + G4String srcType = next(); + G4String radius = next(); + G4String unit = next(); + G4double r = StoD(radius); + if(r<0.) + { + r = GRDetectorConstruction::GetWorldSize() * 0.98; + radius = DtoS(r); + unit = "mm"; + G4cout<<"################ Radius of the GPS sphere is set to "<ApplyCommand("/gps/pos/shape Sphere"),ec); + cmd = "/gps/pos/centre " + pos + " " + unit; + ec = std::max(UI->ApplyCommand(cmd),ec); + cmd = "/gps/pos/radius " + radius + " " + unit; + ec = std::max(UI->ApplyCommand(cmd),ec); + ec = std::max(UI->ApplyCommand("/gps/pos/type Surface"),ec); + ec = std::max(UI->ApplyCommand("/gps/number 1"),ec); + cmd = "/gps/particle " + pName; + ec = std::max(UI->ApplyCommand(cmd),ec); + ec = std::max(UI->ApplyCommand("/gps/ang/type cos"),ec); + ec = std::max(UI->ApplyCommand("/gps/ang/maxtheta 90.0 deg"),ec); + ec = std::max(UI->ApplyCommand("/gps/ang/mintheta 0.0 deg"),ec); + cmd = "/gps/ene/type " + srcType; + ec = std::max(UI->ApplyCommand(cmd),ec); + ec = std::max(UI->ApplyCommand("/gps/hist/type arb"),ec); + + enum { bufsize = 128 }; + static char* line = new char[bufsize]; + while(specFile.good()) + { + specFile.getline(line,bufsize); + if(line[(size_t)0]=='#') continue; + G4String valStr(line); + valStr = valStr.strip(G4String::both); + valStr = valStr.strip(G4String::trailing,0x0d); + if(valStr.size()==0) continue; + cmd = "/gps/hist/point " + valStr; + ec = std::max(UI->ApplyCommand(cmd),ec); + if(specFile.eof()) break; + } + ec = std::max(UI->ApplyCommand("/gps/hist/inter Lin"),ec); + + if(ec>0) + { + G4ExceptionDescription ed; + ed << "ERROR : Internal error while processing /gorad/source/define command."; + command->CommandFailed(ec,ed); + } +} + +G4String GRPrimGenActionMessenger::GetCurrentValue(G4UIcommand* /*command*/) +{ + G4String val; + return val; +} + +#include "G4ParticleTable.hh" +void GRPrimGenActionMessenger::UpdateParticleList() +{ + auto particleTable = G4ParticleTable::GetParticleTable(); + G4String candList; + for(G4int i=0;ientries();i++) + { candList += particleTable->GetParticleName(i) + " "; } + candList += "ion"; + particlePara->SetParameterCandidates(candList); +} + diff --git a/examples/advanced/gorad/src/GRPrimaryGeneratorAction.cc b/examples/advanced/gorad/src/GRPrimaryGeneratorAction.cc new file mode 100644 index 0000000000..77757bde30 --- /dev/null +++ b/examples/advanced/gorad/src/GRPrimaryGeneratorAction.cc @@ -0,0 +1,87 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Gorad (Geant4 Open-source Radiation Analysis and Design) +// +// Author : Makoto Asai (SLAC National Accelerator Laboratory) +// +// Development of Gorad is funded by NASA Johnson Space Center (JSC) +// under the contract NNJ15HK11B. +// +// ******************************************************************** +// +// GRPrimaryGeneratorAction.cc +// Gorad primary generator action class +// +// History +// September 8th, 2020 : first implementation +// +// ******************************************************************** + +#include "GRPrimaryGeneratorAction.hh" + +#include "G4Event.hh" +#include "G4ParticleGun.hh" +#include "G4GeneralParticleSource.hh" +#include "G4ParticleTable.hh" +#include "G4ParticleDefinition.hh" +#include "G4SystemOfUnits.hh" +#include "Randomize.hh" + +GRPrimaryGeneratorAction::GRPrimaryGeneratorAction( + G4bool useParticleGun, G4bool useParticleSource) +: G4VUserPrimaryGeneratorAction(), + fParticleGun(nullptr), fParticleSource(nullptr) +{ + if(useParticleGun) + { + fParticleGun = new G4ParticleGun(1); + + auto particleTable = G4ParticleTable::GetParticleTable(); + auto fPion = particleTable->FindParticle("pi+"); + fParticleGun->SetParticleDefinition(fPion); + + // default particle kinematics + fParticleGun->SetParticlePosition(G4ThreeVector(0.,0.,0.)); + fParticleGun->SetParticleMomentumDirection(G4ThreeVector(1.,0.,0.)); + fParticleGun->SetParticleEnergy(1.*GeV); + } + + if(useParticleSource) + { fParticleSource = new G4GeneralParticleSource(); } +} + +GRPrimaryGeneratorAction::~GRPrimaryGeneratorAction() +{ + if(fParticleGun) delete fParticleGun; + if(fParticleSource) delete fParticleSource; +} + +void GRPrimaryGeneratorAction::GeneratePrimaries(G4Event* event) +{ + if(fParticleGun) fParticleGun->GeneratePrimaryVertex(event); + if(fParticleSource) fParticleSource->GeneratePrimaryVertex(event); +} + diff --git a/examples/advanced/gorad/src/GRRun.cc b/examples/advanced/gorad/src/GRRun.cc new file mode 100644 index 0000000000..38d0609b04 --- /dev/null +++ b/examples/advanced/gorad/src/GRRun.cc @@ -0,0 +1,160 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Gorad (Geant4 Open-source Radiation Analysis and Design) +// +// Author : Makoto Asai (SLAC National Accelerator Laboratory) +// +// Development of Gorad is funded by NASA Johnson Space Center (JSC) +// under the contract NNJ15HK11B. +// +// ******************************************************************** +// +// GRRun.cc +// Gorad Run class that handles filling histograms and profile plots +// with scores accumulated by scoeres for each event. +// +// History +// September 8th, 2020 : first implementation +// +// ******************************************************************** + +#include "GRRun.hh" +#include "GRRunAction.hh" +#include "GRAnalysis.hh" + +#include "G4MultiFunctionalDetector.hh" +#include "G4VPrimitiveScorer.hh" + +#include "G4PrimaryVertex.hh" +#include "G4PrimaryParticle.hh" + +GRRun::GRRun(GRRunAction* ra) : G4Run(),pRA(ra) +{ + ; +} + +GRRun::~GRRun() +{ + ; +} + +void GRRun::RecordEvent(const G4Event* anEvent) +{ + + numberOfEvent++; // This is an original line. + + G4HCofThisEvent* pHCE = anEvent->GetHCofThisEvent(); + + auto analysisManager = G4AnalysisManager::Instance(); + auto map = pRA->IDMap; + for(auto itr : map) + { + if(itr.second->pplotter!=nullptr) continue; // directly plotted by the PrimitivePlotter + + auto cID = itr.second->collID; + auto hID = itr.second->histID; + auto hTyp = itr.second->histType; + + if(hTyp==1) // 1D histogram + { + if(cID>=0) // scorer + { + if(!pHCE) continue; + auto score = (G4THitsMap*)(pHCE->GetHC(cID)); + G4double val = 0.; + for(auto hItr : *score) + { + if(itr.second->idx==-1 || itr.second->idx==hItr.first) + { val += *(hItr.second); } + } + analysisManager->FillH1(hID,val); + } + else // primary particle + { + auto pv = anEvent->GetPrimaryVertex(); + while(pv) + { + auto pp = pv->GetPrimary(); + while(pp) + { + auto primE = pp->GetKineticEnergy(); + G4double weight = 1.0; + if(itr.second->biasf) weight = pp->GetWeight(); + analysisManager->FillH1(hID,primE,weight); + pp = pp->GetNext(); + } + pv = pv->GetNext(); + } + } + } + + else if(hTyp==2) // 1D profile plot + { + if(!pHCE) continue; + auto score = (G4THitsMap*)(pHCE->GetHC(cID)); + for(auto hItr : *score) + { analysisManager->FillP1(hID,G4double(hItr.first),*(hItr.second)); } + } + + } + + auto ntmap = pRA->NTMap; + if(ntmap.size()>0) + { + for(auto ntitr : ntmap) + { + auto colID = ntitr.first; + auto cID = ntitr.second->collID; + G4double val = 0.; + if(cID>=0) + { + if(!pHCE) continue; + auto score = (G4THitsMap*)(pHCE->GetHC(cID)); + for(auto hItr : *score) + { + if(ntitr.second->idx==-1 || ntitr.second->idx==hItr.first) + { val += *(hItr.second); } + } + } + else + { + auto pv = anEvent->GetPrimaryVertex(); + auto pp = pv->GetPrimary(); + val = pp->GetKineticEnergy(); + } + analysisManager->FillNtupleDColumn(colID,val*(ntitr.second->fuct)); + } + analysisManager->AddNtupleRow(); + } + +} + +void GRRun::Merge(const G4Run * aRun) +{ + G4Run::Merge(aRun); +} + + diff --git a/examples/advanced/gorad/src/GRRunAction.cc b/examples/advanced/gorad/src/GRRunAction.cc new file mode 100644 index 0000000000..de1b1a99c4 --- /dev/null +++ b/examples/advanced/gorad/src/GRRunAction.cc @@ -0,0 +1,548 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Gorad (Geant4 Open-source Radiation Analysis and Design) +// +// Author : Makoto Asai (SLAC National Accelerator Laboratory) +// +// Development of Gorad is funded by NASA Johnson Space Center (JSC) +// under the contract NNJ15HK11B. +// +// ******************************************************************** +// +// GRRunAction.cc +// Gorad Run Action class that takes care of defining and handling +// histograms and n-tuple. +// Filling histograms is taken care by GRRun class. +// +// History +// September 8th, 2020 : first implementation +// +// ******************************************************************** + +#include "GRRunAction.hh" +#include "GRRunActionMessenger.hh" +#include "GRAnalysis.hh" + +#include "G4Run.hh" +#include "G4RunManager.hh" +#include "G4UnitsTable.hh" +#include "G4SystemOfUnits.hh" + +GRRunAction::GRRunAction() +:fileName("GoradOut"), fileOpen(false), verbose(0), ifCarry(false), + id_offset(100), id_factor(100) +{ + messenger = new GRRunActionMessenger(this); + auto analysisManager = G4AnalysisManager::Instance(); + G4cout << "Using " << analysisManager->GetType() << G4endl; + + analysisManager->SetVerboseLevel(verbose); + //analysisManager->SetNtupleMerging(true); +} + +GRRunAction::~GRRunAction() +{ + delete G4AnalysisManager::Instance(); + delete messenger; +} + +void GRRunAction::BeginOfRunAction(const G4Run* /*run*/) +{ + // Open an output file + // + OpenFile(); + + // Define nTuple column if needed + // + DefineNTColumn(); +} + +void GRRunAction::OpenFile() +{ + if(!fileOpen) + { + auto analysisManager = G4AnalysisManager::Instance(); + analysisManager->OpenFile(fileName); + if(verbose>0) G4cout << "GRRunAction::BeginOfRunAction ### <" << fileName << "> is opened." << G4endl; + fileOpen = true; + } +} + +void GRRunAction::EndOfRunAction(const G4Run* /*run*/) +{ + // print histogram statistics + // + if(!ifCarry) Flush(); +} + +void GRRunAction::Flush() +{ + auto analysisManager = G4AnalysisManager::Instance(); + + analysisManager->Write(); + analysisManager->CloseFile(); + if(verbose>0) G4cout << "GRRunAction::Flush ### <" << fileName << "> is closed." << G4endl; + + fileOpen = false; + + if(IsMaster()) MergeNtuple(); +} + +void GRRunAction::SetVerbose(G4int val) +{ + verbose = val; + auto analysisManager = G4AnalysisManager::Instance(); + analysisManager->SetVerboseLevel(verbose); +} + +void GRRunAction::ListHistograms() +{ + G4cout << "################## registered histograms/plots" << G4endl; + G4cout << "id\thistID\thistType\tdetName-X\tpsName-X\tcollID-X\tcopyNo-X\tdetName-Y\tpsName-Y\tcollID-Y\tcopyNo-Y" << G4endl; + for(auto itr : IDMap) + { + G4cout << itr.first << "\t" << itr.second->histID << "\t"; + if(itr.second->histType==1) // 1D histogram + { G4cout << "1-D hist\t" << itr.second->meshName << "\t" << itr.second->primName << "\t" << itr.second->collID << "\t" << itr.second->idx; } + else if(itr.second->histType==2) // 1D profile + { G4cout << "1-D prof\t" << itr.second->meshName << "\t" << itr.second->primName << "\t" << itr.second->collID; } + G4cout << G4endl; + } +} + +G4bool GRRunAction::Open(G4int id) +{ + auto hItr = IDMap.find(id); + return (hItr!=IDMap.end()); +} + +#include "G4SDManager.hh" +using namespace G4Analysis; + +G4bool GRRunAction::SetAllPlotting(G4bool val) +{ + G4bool valid = true; + for(auto hItr : IDMap) + { + valid = SetPlotting(hItr.first,val); + if(!valid) break; + } + return valid; +} + +G4bool GRRunAction::SetPlotting(G4int id,G4bool val) +{ + auto hItr = IDMap.find(id); + if(hItr==IDMap.end()) return false; + auto ht = hItr->second; + auto hTyp = ht->histType; + auto analysisManager = G4AnalysisManager::Instance(); + if(hTyp==1) // 1D histogram + { analysisManager->SetH1Plotting(ht->histID,val); } + else if(hTyp==2) // 1D profile + { analysisManager->SetP1Plotting(ht->histID,val); } + else + { return false; } + return true; +} + +// ------------- 1D histogram + +G4int GRRunAction::Create1D(G4String& mName,G4String& pName,G4int cn) +{ + G4String collName = mName; + collName += "/"; + collName += pName; + auto cID = G4SDManager::GetSDMpointer()->GetCollectionID(collName); + if(cID<0) return cID; + + G4int id = (cID+id_offset)*id_factor+cn+1; + auto histoTypeItr = IDMap.find(id); + if(histoTypeItr!=IDMap.end()) return false; + if(verbose) G4cout << "GRRunAction::Create1D for <" << collName + << ", copyNo=" << cn << "> is registered for hitCollectionID " + << cID << G4endl; + + auto histTyp = new GRHistoType; + histTyp->collID = cID; + histTyp->histType = 1; // 1D histogram + histTyp->meshName = mName; + histTyp->primName = pName; + histTyp->idx = cn; + IDMap[id] = histTyp; + return id; +} + +G4int GRRunAction::Create1DForPrimary(G4String& mName,G4bool wgt) +{ + G4int cn = wgt ? 1 : 0; + + G4int id = 99999 - cn; + auto histoTypeItr = IDMap.find(id); + if(histoTypeItr!=IDMap.end()) return false; + if(verbose) G4cout << "GRRunAction::Create1D for <" << mName + << "(weighted : " << cn << ")> is registered " << G4endl; + + auto histTyp = new GRHistoType; + histTyp->collID = -999; + histTyp->histType = 1; // 1D histogram + histTyp->meshName = "PrimPEnergy"; + histTyp->primName = mName; + histTyp->biasf = cn; + IDMap[id] = histTyp; + return id; +} + +#include "G4SDManager.hh" +#include "G4ScoringManager.hh" +#include "G4VScoringMesh.hh" +#include "G4VPrimitivePlotter.hh" +G4int GRRunAction::Create1DForPlotter(G4String& mName,G4String& pName,G4bool /*wgt*/) +{ + using MeshShape = G4VScoringMesh::MeshShape; + + G4String collName = mName; + collName += "/"; + collName += pName; + auto cID = G4SDManager::GetSDMpointer()->GetCollectionID(collName); + if(cID<0) return cID; + + auto sm = G4ScoringManager::GetScoringManagerIfExist(); + assert(sm!=nullptr); + auto mesh = sm->FindMesh(mName); + if(mesh==nullptr) + { return -2; } + auto shape = mesh->GetShape(); + if(shape!=MeshShape::realWorldLogVol && shape!=MeshShape::probe) + { return -3; } + G4int nBin[3]; + mesh->GetNumberOfSegments(nBin); + + auto prim = mesh->GetPrimitiveScorer(pName); + if(prim==nullptr) + { return -3; } + auto pp = dynamic_cast(prim); + if(pp==nullptr) + { return -4; } + + G4int id0 = (cID+id_offset)*id_factor+1; + for(G4int cn=0; cn is registered for hitCollectionID " + << cID << G4endl; + + auto histTyp = new GRHistoType; + histTyp->collID = cID; + histTyp->histType = 1; // 1D histogram + histTyp->histDup = nBin[0]; + histTyp->meshName = mName; + histTyp->primName = pName; + histTyp->idx = cn; + histTyp->pplotter = pp; + IDMap[id] = histTyp; + } + return id0; +} + +#include "G4UIcommand.hh" +G4bool GRRunAction::Set1D(G4int id0,G4int nBin,G4double valMin,G4double valMax,G4String& unit, + G4String& schem, G4bool logVal) +{ + OpenFile(); + + auto hIt = IDMap.find(id0); + if(hIt==IDMap.end()) return false; + + auto analysisManager = G4AnalysisManager::Instance(); + auto dup = (hIt->second)->histDup; + for(G4int ii=0;iisecond; + G4String mNam = ht->primName; + G4String nam = ht->meshName + "_" + ht->primName; + if(ht->idx>-1) + { + mNam += "_"; + mNam += G4UIcommand::ConvertToString(ht->idx); + nam += "_"; + nam += G4UIcommand::ConvertToString(ht->idx); + } + G4int hid = -1; + if(schem=="linear") + { hid = analysisManager->CreateH1(mNam,nam,nBin,valMin,valMax,unit,"none","linear"); } + else + { + if(logVal) + { hid = analysisManager->CreateH1(mNam,nam,nBin,valMin,valMax,unit,"log10","linear"); } + else + { + hid = analysisManager->CreateH1(mNam,nam,nBin,valMin,valMax,unit,"none","log"); + analysisManager->SetH1XAxisIsLog(hid,true); + } + } + + if(verbose) G4cout << "GRRunAction::Set1D for " << mNam << " / " << nam + << " has the histogram ID " << hid << G4endl; + ht->histID = hid; + auto pp = ht->pplotter; + if(pp!=nullptr) pp->Plot(ht->idx,hid); + } + return true; +} + +G4bool GRRunAction::Set1DTitle(G4int id,G4String& title,G4String& x_axis,G4String&y_axis) +{ + auto hItr = IDMap.find(id); + if(hItr==IDMap.end()) return false; + + auto analysisManager = G4AnalysisManager::Instance(); + auto hid = hItr->second->histID; + analysisManager->SetH1Title(hid,title); + analysisManager->SetH1XAxisTitle(hid,x_axis); + analysisManager->SetH1YAxisTitle(hid,y_axis); + return true; +} + +G4bool GRRunAction::Set1DYAxisLog(G4int id0,G4bool val) +{ + auto hIt = IDMap.find(id0); + if(hIt==IDMap.end()) return false; + auto analysisManager = G4AnalysisManager::Instance(); + auto dup = (hIt->second)->histDup; + for(G4int ii=0;iiSetH1YAxisIsLog(hItr->second->histID,val); + } + return true; +} + +// ------------- 1D profile + +G4int GRRunAction::Create1P(G4String& mName,G4String& pName,G4int cn) +{ + G4String collName = mName; + collName += "/"; + collName += pName; + auto cID = G4SDManager::GetSDMpointer()->GetCollectionID(collName); + if(cID<0) return cID; + + G4int id = (cID+2*id_offset)*id_factor; + auto histoTypeItr = IDMap.find(id); + if(histoTypeItr!=IDMap.end()) return false; + if(verbose) G4cout << "GRRunAction::Create1P for <" << collName + << "> is registered for hitCollectionID " + << cID << G4endl; + + auto histTyp = new GRHistoType; + histTyp->collID = cID; + histTyp->histType = 2; // 1D profile + histTyp->meshName = mName; + histTyp->primName = pName; + histTyp->idx = cn; + IDMap[id] = histTyp; + return id; +} + +G4bool GRRunAction::Set1P(G4int id,G4double valYMin,G4double valYMax,G4String& unit, + G4String& funcX,G4String& funcY,G4String& schem) +{ + OpenFile(); + + if(verbose) G4cout << "GRRunAction::Set1P for id = " << id << G4endl; + auto hItr = IDMap.find(id); + if(hItr==IDMap.end()) return false; + + auto ht = hItr->second; + if(verbose) G4cout << "GRRunAction::Set1P for " << ht->meshName << " / " << ht->primName << G4endl; + auto analysisManager = G4AnalysisManager::Instance(); + auto nBin = ht->idx; + G4double valMin = -0.5; + G4double valMax = G4double(nBin) - 0.5; + G4String nam = ht->meshName + "_" + ht->primName; + auto hid = analysisManager->CreateP1(nam,ht->primName,nBin, + valMin,valMax,valYMin,valYMax,"none",unit,funcX,funcY,schem); + + if(verbose) G4cout << "GRRunAction::Set1P for " << ht->meshName << " / " << ht->primName + << " has the histogram ID " << hid << G4endl; + ht->histID = hid; + return true; +} + +G4bool GRRunAction::Set1PTitle(G4int id,G4String& title,G4String& x_axis,G4String&y_axis) +{ + auto hItr = IDMap.find(id); + if(hItr==IDMap.end()) return false; + + auto analysisManager = G4AnalysisManager::Instance(); + auto hid = hItr->second->histID; + analysisManager->SetP1Title(hid,title); + analysisManager->SetP1XAxisTitle(hid,x_axis); + analysisManager->SetP1YAxisTitle(hid,y_axis); + return true; +} + +// ------------- Ntuple + +G4int GRRunAction::NtupleColumn(G4String& mName,G4String& pName,G4String& unit,G4int cn) +{ + G4String collName = mName; + collName += "/"; + collName += pName; + auto cID = G4SDManager::GetSDMpointer()->GetCollectionID(collName); + if(cID<0) return cID; + + G4int id = NTMap.size(); + if(verbose) G4cout << "GRRunAction::NtupleColumn : <" << collName + << ", copyNo=" << cn << "> is registered for nTuple column " + << id << G4endl; + + auto histTyp = new GRHistoType; + histTyp->collID = cID; + histTyp->meshName = mName; + histTyp->primName = pName; + histTyp->meshName2 = unit; + if(unit!="none") + { histTyp->fuct = 1./(G4UnitDefinition::GetValueOf(unit)); } + histTyp->idx = cn; + NTMap[id] = histTyp; + return id; +} + +#include "G4UIcommand.hh" + +void GRRunAction::DefineNTColumn() +{ + if(NTMap.size()==0) return; + + auto analysisManager = G4AnalysisManager::Instance(); + analysisManager->CreateNtuple("GRimNtuple","Scores for each event"); + + for(auto itr : NTMap) + { + G4String colNam = itr.second->meshName; + colNam += "_"; + colNam += itr.second->primName; + if(itr.second->idx != -1) + { colNam += "_"; colNam += G4UIcommand::ConvertToString(itr.second->idx); } + if(itr.second->meshName2 != "none") + { colNam += "["; colNam += itr.second->meshName2; colNam += "]"; } + analysisManager->CreateNtupleDColumn(colNam); + } + + analysisManager->FinishNtuple(); +} + +#include +#include "G4Threading.hh" +#include "G4UImanager.hh" + +void GRRunAction::MergeNtuple() +{ + if(NTMap.size()==0) return; + if(!(G4Threading::IsMultithreadedApplication())) return; + + auto analysisManager = G4AnalysisManager::Instance(); + + // This MergeNtuple() method is valid only for CSV file format + if(analysisManager->GetType()!="Csv") return; + + std::fstream target; + G4String targetFN = "GRimOut_nt_GRimNtuple_total.csv"; + target.open(targetFN,std::ios::out); + + enum { BUFSIZE = 4096 }; + char* line = new char[BUFSIZE]; + + G4String titleFN = "GRimOut_nt_GRimNtuple.csv"; + std::ifstream title; + title.open(titleFN,std::ios::in); + while(1) + { + title.getline(line,BUFSIZE); + if(title.eof()) break; + G4cout << line << G4endl; + target << line << G4endl; + } + title.close(); + + auto nWorker = G4Threading::GetNumberOfRunningWorkerThreads(); + G4String sourceFNBase = "GRimOut_nt_GRimNtuple_t"; + for(G4int i = 0; i < nWorker; i++) + { + G4String sourceFN = sourceFNBase; + sourceFN += G4UIcommand::ConvertToString(i); + sourceFN += ".csv"; + std::ifstream source; + source.open(sourceFN,std::ios::in); + if(!source) + { + G4ExceptionDescription ed; ed << "Source file <" << sourceFN << "> is not found."; + G4Exception("GRRunAction::MergeNtuple()","GRim12345",FatalException,ed); + } + while(1) + { + source.getline(line,BUFSIZE); + if(line[0]=='#') continue; + if(source.eof()) break; + target << line << G4endl; + } + source.close(); + G4String scmd = "rm -f "; + scmd += sourceFN; + auto rc = system(scmd); + if(rc<0) + { + G4ExceptionDescription ed; + ed << "File <" << sourceFN << "> could not be deleted, thought it is merged."; + G4Exception("GRRunAction::MergeNtuple()","GRim12345",JustWarning,ed); + } + } + + target.close(); + + G4String cmd = "mv "; + cmd += targetFN; + cmd += " "; + cmd += titleFN; + auto rcd = system(cmd); + if(rcd<0) + { + G4ExceptionDescription ed; + ed << "File <" << targetFN << "> could not be renamed."; + G4Exception("GRRunAction::MergeNtuple()","GRim12345",JustWarning,ed); + } +} + + diff --git a/examples/advanced/gorad/src/GRRunActionMessenger.cc b/examples/advanced/gorad/src/GRRunActionMessenger.cc new file mode 100644 index 0000000000..c0a43fb29f --- /dev/null +++ b/examples/advanced/gorad/src/GRRunActionMessenger.cc @@ -0,0 +1,575 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Gorad (Geant4 Open-source Radiation Analysis and Design) +// +// Author : Makoto Asai (SLAC National Accelerator Laboratory) +// +// Development of Gorad is funded by NASA Johnson Space Center (JSC) +// under the contract NNJ15HK11B. +// +// ******************************************************************** +// +// GRRunActionMessenger.cc +// A messenger class that defines histograms and n-tuple in GRRunAction. +// +// History +// September 8th, 2020 : first implementation +// +// ******************************************************************** + +#include "GRRunActionMessenger.hh" + +#include "GRRunAction.hh" +#include "G4UIcommand.hh" +#include "G4UIparameter.hh" +#include "G4UIdirectory.hh" +#include "G4UIcmdWithAString.hh" +#include "G4UIcmdWithABool.hh" +#include "G4UIcmdWithAnInteger.hh" +#include "G4UIcmdWithoutParameter.hh" +#include "G4UnitsTable.hh" + +GRRunActionMessenger::GRRunActionMessenger(GRRunAction* dc) +: pRA(dc), currentID(-1) +{ + G4UIparameter* para = nullptr; + + anaDir = new G4UIdirectory("/gorad/analysis/"); + anaDir->SetGuidance("GORAD analysis commands"); + + verboseCmd = new G4UIcmdWithAnInteger("/gorad/analysis/verbose",this); + verboseCmd->SetGuidance("Set verbose level"); + verboseCmd->SetParameterName("level",true); + verboseCmd->SetDefaultValue(0); + verboseCmd->SetRange("level>=0"); + verboseCmd->AvailableForStates(G4State_Idle); + + fileCmd = new G4UIcmdWithAString("/gorad/analysis/file",this); + fileCmd->SetGuidance("Define the output file name."); + fileCmd->SetParameterName("file",false); + fileCmd->AvailableForStates(G4State_Idle); + + listCmd = new G4UIcmdWithoutParameter("/gorad/analysis/list",this); + listCmd->SetGuidance("List defined histograms."); + listCmd->AvailableForStates(G4State_Idle); + + openCmd = new G4UIcmdWithAnInteger("/gorad/analysis/open",this); + openCmd->SetGuidance("Open a histogram that has already been created and closed."); + openCmd->SetGuidance("\"create\" command open the new histogram so you don't need to open it."); + openCmd->SetGuidance("A histogram is closed when another histogram is created. This \"open\" command is required only for reopening the closed histogram."); + openCmd->SetParameterName("id",false); + openCmd->AvailableForStates(G4State_Idle); + + plotCmd = new G4UIcmdWithAnInteger("/gorad/analysis/plot",this); + plotCmd->SetGuidance("Create an additional postscript plot for specified histogram/profile."); + plotCmd->SetGuidance("Regardless of this command, histogram is dumped to the output file."); + plotCmd->SetGuidance("If id is not specified, currently open histogram/profile is plotted."); + plotCmd->SetGuidance("If id = -1, all currently defined histograms/profiles are plotted."); + plotCmd->SetParameterName("id",true,true); + plotCmd->AvailableForStates(G4State_Idle); + + carryCmd = new G4UIcmdWithABool("/gorad/analysis/carry",this); + carryCmd->SetGuidance("Carry histograms over more than one runs."); + carryCmd->SetGuidance("Once this is set, histograms won't be output until /gorad/analysis/flush is explicitly issued."); + carryCmd->SetGuidance("This command has to be issued before starting the run to be carried over."); + carryCmd->SetParameterName("carry",true); + carryCmd->SetDefaultValue(true); + carryCmd->AvailableForStates(G4State_Idle); + + flushCmd = new G4UIcmdWithoutParameter("/gorad/analysis/flush",this); + flushCmd->SetGuidance("Make output. This command is necessary if /gorad/analysis/carry is set."); + flushCmd->AvailableForStates(G4State_Idle); + + resetCmd = new G4UIcmdWithoutParameter("/gorad/analysis/reset",this); + resetCmd->SetGuidance("Reset histograms without making output."); + resetCmd->AvailableForStates(G4State_Idle); + + idOffsetCmd = new G4UIcommand("/gorad/analysis/idOffset",this); + idOffsetCmd->SetGuidance("Define offset numbers of the histogram ID."); + idOffsetCmd->SetGuidance(" The hostogram ID is set as (scorer_id + ) * + copy_number - 1"); + para = new G4UIparameter("offset",'i',true); + para->SetParameterRange("offset>=0"); + para->SetDefaultValue(0); + idOffsetCmd->SetParameter(para); + para = new G4UIparameter("factor",'i',true); + para->SetParameterRange("factor>0"); + para->SetDefaultValue(1000); + idOffsetCmd->SetParameter(para); + idOffsetCmd->AvailableForStates(G4State_Idle); + + oneDDir = new G4UIdirectory("/gorad/analysis/1D/"); + oneDDir->SetGuidance("1-dimentional histogram"); + + create1DCmd = new G4UIcommand("/gorad/analysis/1D/create",this); + create1DCmd->SetGuidance("Create a 1D histogram and fill it with event-by-event score."); + create1DCmd->SetGuidance("Scoring mesh (logical volume for real-world volume scoring) and"); + create1DCmd->SetGuidance("primitive scorers must be defined prior to this command."); + para = new G4UIparameter("meshName",'s',false); + para->SetGuidance("Scoring mesh name. Logical volume name for real-world volume scoring."); + create1DCmd->SetParameter(para); + para = new G4UIparameter("primName",'s',false); + create1DCmd->SetParameter(para); + para = new G4UIparameter("idx",'i',true); + para->SetGuidance("Index (i.e. copy number) of the cell to be scored. \"-1\" (defult) to score all cells."); + para->SetDefaultValue(-1); + para->SetParameterRange("idx>=-1"); + create1DCmd->SetParameter(para); + create1DCmd->AvailableForStates(G4State_Idle); + + create1DPrimPCmd = new G4UIcommand("/gorad/analysis/1D/primary",this); + create1DPrimPCmd->SetGuidance("Create a 1D energy spectrum histogram and fill it with kinetic energy of each primary particle."); + create1DPrimPCmd->SetGuidance("Weight of each primary track is taken into account if the flag is set."); + para = new G4UIparameter("histName",'s',false); + para->SetGuidance("Histogram name"); + create1DPrimPCmd->SetParameter(para); + para = new G4UIparameter("weightFlag",'b',true); + para->SetGuidance("Weight of each primary track is taken into account"); + para->SetDefaultValue(true); + create1DPrimPCmd->SetParameter(para); + create1DPrimPCmd->AvailableForStates(G4State_Idle); + + create1DPlotPCmd = new G4UIcommand("/gorad/analysis/1D/spectrum",this); + create1DPlotPCmd->SetGuidance("Create a 1D energy spectrum histogram and fill it with each individual track that gets into the volume."); + create1DPlotPCmd->SetGuidance("Histogram is created for each physical volume separately."); + create1DPlotPCmd->SetGuidance("So, this command should not be used for Box or Cylinder mesh type due to memory consumption concern."); + create1DPlotPCmd->SetGuidance("Currently, this is supported only for volume flux scorer."); + para = new G4UIparameter("meshName",'s',false); + para->SetGuidance("Scoring mesh name. Logical volume name for real-world volume scoring."); + create1DPlotPCmd->SetParameter(para); + para = new G4UIparameter("primName",'s',false); + para->SetGuidance("Scoring primitive name."); + create1DPlotPCmd->SetParameter(para); + create1DPlotPCmd->AvailableForStates(G4State_Idle); + + set1DCmd = new G4UIcmdWithoutParameter("/gorad/analysis/1D/set",this); + set1DCmd->SetGuidance("This command is obsolete. Use /gorad/analysis/1D/config instead."); + + config1DCmd = new G4UIcommand("/gorad/analysis/1D/config",this); + config1DCmd->SetGuidance("Set binning parameters of the current 1D histogram."); + config1DCmd->SetGuidance(" is applied to and as well as filled value."); + para = new G4UIparameter("nBin",'i',false); + para->SetParameterRange("nBin>0"); + config1DCmd->SetParameter(para); + para = new G4UIparameter("minVal",'d',false); + config1DCmd->SetParameter(para); + para = new G4UIparameter("maxVal",'d',false); + config1DCmd->SetParameter(para); + para = new G4UIparameter("unit",'s',true); + para->SetDefaultValue("none"); + config1DCmd->SetParameter(para); + para = new G4UIparameter("scale",'s',true); + para->SetGuidance("Define the binning scale. (default: linear)"); + para->SetParameterCandidates("linear log"); + para->SetDefaultValue("linear"); + config1DCmd->SetParameter(para); + para = new G4UIparameter("logVal",'b',true); + para->SetDefaultValue(false); + config1DCmd->SetParameter(para); + config1DCmd->AvailableForStates(G4State_Idle); + + title1DCmd = new G4UIcommand("/gorad/analysis/1D/title",this); + title1DCmd->SetGuidance("Define histogram title"); + para = new G4UIparameter("title",'s',false); + title1DCmd->SetParameter(para); + para = new G4UIparameter("x_axis",'s',false); + title1DCmd->SetParameter(para); + para = new G4UIparameter("y_axis",'s',false); + title1DCmd->SetParameter(para); + title1DCmd->AvailableForStates(G4State_Idle); + + set1DYaxisLogCmd = new G4UIcmdWithABool("/gorad/analysis/1D/yaxisLog",this); + set1DYaxisLogCmd->SetGuidance("Set y-axis in log scale."); + set1DYaxisLogCmd->SetParameterName("flag",true); + set1DYaxisLogCmd->SetDefaultValue(true); + set1DYaxisLogCmd->AvailableForStates(G4State_Idle); + + onePDir = new G4UIdirectory("/gorad/analysis/1P/"); + onePDir->SetGuidance("1-dimentional profile plot"); + + create1PCmd = new G4UIcommand("/gorad/analysis/1P/create",this); + create1PCmd->SetGuidance("Create a 1D profile plot and fill it with event-by-event score."); + create1PCmd->SetGuidance("Scoring mesh (logical volume for real-world volume scoring) and"); + create1PCmd->SetGuidance("primitive scorers must be defined prior to this command."); + create1PCmd->SetGuidance("Copy number of the scoring cell is used as the x-axis value."); + para = new G4UIparameter("meshName",'s',false); + para->SetGuidance("Scoring mesh name. Logical volume name for real-world volume scoring."); + create1PCmd->SetParameter(para); + para = new G4UIparameter("primName",'s',false); + create1PCmd->SetParameter(para); + para = new G4UIparameter("idx",'i',false); + para->SetGuidance("Maximum index (i.e. copy number) of the cell to be scored."); + para->SetParameterRange("idx>0"); + create1PCmd->SetParameter(para); + create1PCmd->AvailableForStates(G4State_Idle); + + set1PCmd = new G4UIcommand("/gorad/analysis/1P/set",this); + set1PCmd->SetGuidance("Set binning parameters of the current 1D profile plot."); + set1PCmd->SetGuidance(" is applied to and as well as filled value."); + para = new G4UIparameter("minYVal",'d',false); + set1PCmd->SetParameter(para); + para = new G4UIparameter("maxYVal",'d',false); + set1PCmd->SetParameter(para); + para = new G4UIparameter("unit",'s',true); + para->SetDefaultValue("none"); + set1PCmd->SetParameter(para); + para = new G4UIparameter("func-x",'s',true); + para->SetGuidance("The function applied to the filled x-value (default: none)."); + para->SetParameterCandidates("log log10 exp none"); + para->SetDefaultValue("none"); + set1PCmd->SetParameter(para); + para = new G4UIparameter("func-y",'s',true); + para->SetGuidance("The function applied to the filled y-value (default: none)."); + para->SetParameterCandidates("log log10 exp none"); + para->SetDefaultValue("none"); + set1PCmd->SetParameter(para); + para = new G4UIparameter("scale",'s',true); + para->SetGuidance("Define the binning scale. (default: linear)"); + para->SetParameterCandidates("linear log"); + para->SetDefaultValue("linear"); + set1PCmd->SetParameter(para); + set1PCmd->AvailableForStates(G4State_Idle); + + title1PCmd = new G4UIcommand("/gorad/analysis/1P/title",this); + title1PCmd->SetGuidance("Define histogram title"); + para = new G4UIparameter("title",'s',false); + title1PCmd->SetParameter(para); + para = new G4UIparameter("x_axis",'s',false); + title1PCmd->SetParameter(para); + para = new G4UIparameter("y_axis",'s',false); + title1PCmd->SetParameter(para); + title1PCmd->AvailableForStates(G4State_Idle); + + ntupleDir = new G4UIdirectory("/gorad/analysis/ntuple/"); + onePDir->SetGuidance("Define an ntuple"); + + addColumnCmd = new G4UIcommand("/gorad/analysis/ntuple/addColumn",this); + addColumnCmd->SetGuidance("Define a column and fill it with event-by-event score."); + addColumnCmd->SetGuidance("Scoring mesh (logical volume for real-world volume scoring) and"); + addColumnCmd->SetGuidance("primitive scorers must be defined prior to this command."); + para = new G4UIparameter("meshName",'s',false); + para->SetGuidance("Scoring mesh name. Logical volume name for real-world volume scoring."); + addColumnCmd->SetParameter(para); + para = new G4UIparameter("primName",'s',false); + addColumnCmd->SetParameter(para); + para = new G4UIparameter("unit",'s',true); + para->SetDefaultValue("none"); + addColumnCmd->SetParameter(para); + para = new G4UIparameter("idx",'i',true); + para->SetGuidance("Index (i.e. copy number) of the cell to be scored. \"-1\" (defult) to score all cells."); + para->SetDefaultValue(-1); + para->SetParameterRange("idx>=-1"); + addColumnCmd->SetParameter(para); + addColumnCmd->AvailableForStates(G4State_Idle); +} + +GRRunActionMessenger::~GRRunActionMessenger() +{ + delete addColumnCmd; + delete ntupleDir; + + delete create1PCmd; + delete set1PCmd; + delete title1PCmd; + delete onePDir; + + delete create1DCmd; + delete create1DPrimPCmd; + delete create1DPlotPCmd; + delete set1DCmd; + delete config1DCmd; + delete title1DCmd; + delete set1DYaxisLogCmd; + delete oneDDir; + + delete fileCmd; + delete verboseCmd; + delete listCmd; + delete openCmd; + delete plotCmd; + delete carryCmd; + delete flushCmd; + delete resetCmd; + delete idOffsetCmd; + delete anaDir; +} + +#include "G4Tokenizer.hh" + +void GRRunActionMessenger::SetNewValue(G4UIcommand* cmd, G4String val) +{ + if(cmd==fileCmd) + { pRA->SetFileName(val); } + else if(cmd==verboseCmd) + { pRA->SetVerbose(verboseCmd->GetNewIntValue(val)); } + else if(cmd==listCmd) + { pRA->ListHistograms(); } + else if(cmd==openCmd) + { + auto id = openCmd->GetNewIntValue(val); + if(currentID!=id) + { + if(!CheckOpenID(cmd)) return; + auto valid = pRA->Open(id); + if(!valid) + { + G4ExceptionDescription ed; + ed << "<" << id << "> is not a valid histogram ID."; + cmd->CommandFailed(ed); + } + else + { currentID = id; } + } + } + else if(cmd==plotCmd) + { + auto id = plotCmd->GetNewIntValue(val); + G4bool valid = true; + if(id==-1) + { valid = pRA->SetAllPlotting(true); } + else + { valid = pRA->SetPlotting(id,true); } + if(!valid) + { + G4ExceptionDescription ed; + ed << "Histogram/profile id <" << id << "> is not valid."; + cmd->CommandFailed(ed); + } + } + else if(cmd==carryCmd) + { pRA->SetCarry(carryCmd->GetNewBoolValue(val)); } + else if(cmd==flushCmd) + { pRA->Flush(); } + else if(cmd==resetCmd) + { /*pRA->ResetHistograms();*/ } + else if(cmd==idOffsetCmd) + { + G4Tokenizer next(val); + G4int offset = StoI(next()); + G4int factor = StoI(next()); + pRA->SetOffset(offset,factor); + } + + // 1D histogram commands + + else if(cmd==create1DCmd) + { + if(!CheckOpenID(cmd)) return; + G4Tokenizer next(val); + G4String meshName = next(); + G4String primName = next(); + G4int idx = StoI(next()); + auto id = pRA->Create1D(meshName,primName,idx); + if(id<0) + { + G4ExceptionDescription ed; + ed << "1D histogram <" << val << "> cannot be created."; + cmd->CommandFailed(ed); + } + else + { currentID = id; } + } + else if(cmd==create1DPrimPCmd) + { + if(!CheckOpenID(cmd)) return; + G4Tokenizer next(val); + G4String meshName = next(); + G4bool wgt = StoB(next()); + auto id = pRA->Create1DForPrimary(meshName,wgt); + if(id<0) + { + G4ExceptionDescription ed; + ed << "1D histogram <" << val << "> cannot be created."; + cmd->CommandFailed(ed); + } + else + { currentID = id; } + } + else if(cmd==create1DPlotPCmd) + { + if(!CheckOpenID(cmd)) return; + G4Tokenizer next(val); + G4String meshName = next(); + G4String primName = next(); + G4bool wgt = true; + auto id = pRA->Create1DForPlotter(meshName,primName,wgt); + if(id<0) + { + G4ExceptionDescription ed; + ed << "1D histogram <" << val << "> cannot be created."; + cmd->CommandFailed(ed); + } + else + { currentID = id; } + } + else if(cmd==set1DCmd) + { + G4ExceptionDescription ed; + ed << "This command is OBSOLETE. Use /gorad/analysis/1D/config command!!"; + cmd->CommandFailed(ed); + } + else if(cmd==config1DCmd) + { + if(!CheckID(cmd)) return; + G4Tokenizer next(val); + G4int nBin = StoI(next()); + G4double minVal = StoD(next()); + G4double maxVal = StoD(next()); + G4String unit = next(); + G4String schem = next(); + G4bool logVal = StoB(next()); + if(unit!="none" && !(G4UnitDefinition::IsUnitDefined(unit))) + { + G4ExceptionDescription ed; + ed << "Unknown unit <" << unit << ">. Command failed."; + cmd->CommandFailed(ed); + } + else + { pRA->Set1D(currentID,nBin,minVal,maxVal,unit,schem,logVal); } + } + else if(cmd==title1DCmd) + { + if(!CheckID(cmd)) return; + G4Tokenizer next(val); + G4String title = next(); + G4String x_axis = next(); + G4String y_axis = next(); + pRA->Set1DTitle(currentID,title,x_axis,y_axis); + } + else if(cmd==set1DYaxisLogCmd) + { + if(!CheckID(cmd)) return; + auto succ = pRA->Set1DYAxisLog(currentID,set1DYaxisLogCmd->GetNewBoolValue(val)); + if(!succ) + { + G4ExceptionDescription ed; + ed << "This command is not available for this histogram."; + cmd->CommandFailed(ed); + } + } + + // 1D profile commands + + else if(cmd==create1PCmd) + { + if(!CheckOpenID(cmd)) return; + G4Tokenizer next(val); + G4String meshName = next(); + G4String primName = next(); + G4int cn = StoI(next()); + auto id = pRA->Create1P(meshName,primName,cn); + if(id<0) + { + G4ExceptionDescription ed; + ed << "1D histogram <" << val << "> cannot be created."; + cmd->CommandFailed(ed); + } + else + { currentID = id; } + } + else if(cmd==set1PCmd) + { + if(!CheckID(cmd)) return; + G4Tokenizer next(val); + G4double minYVal = StoD(next()); + G4double maxYVal = StoD(next()); + G4String unit = next(); + G4String funcX = next(); + G4String funcY = next(); + G4String schem = next(); + if(unit!="none" && !(G4UnitDefinition::IsUnitDefined(unit))) + { + G4ExceptionDescription ed; + ed << "Unknown unit <" << unit << ">. Command failed."; + cmd->CommandFailed(ed); + } + else + { pRA->Set1P(currentID,minYVal,maxYVal,unit,funcX,funcY,schem); } + } + else if(cmd==title1PCmd) + { + if(!CheckID(cmd)) return; + G4Tokenizer next(val); + G4String title = next(); + G4String x_axis = next(); + G4String y_axis = next(); + pRA->Set1PTitle(currentID,title,x_axis,y_axis); + } + + // ntuple commands + + else if(cmd==addColumnCmd) + { + G4Tokenizer next(val); + G4String meshName = next(); + G4String primName = next(); + G4String unit = next(); + G4int idx = StoI(next()); + if(unit!="none" && !(G4UnitDefinition::IsUnitDefined(unit))) + { + G4ExceptionDescription ed; + ed << "Unknown unit <" << unit << ">. Command failed."; + cmd->CommandFailed(ed); + } + else + { + auto id = pRA->NtupleColumn(meshName,primName,unit,idx); + if(id<0) + { + G4ExceptionDescription ed; + ed << "Ntuple column <" << val << "> cannot be created."; + cmd->CommandFailed(ed); + } + } + } +} + +G4String GRRunActionMessenger::GetCurrentValue(G4UIcommand* cmd) +{ + G4String val(""); + if(cmd==openCmd) + { val = openCmd->ConvertToString(currentID); } + if(cmd==fileCmd) + { val = pRA->GetFileName(); } + else if(cmd==verboseCmd) + { val = verboseCmd->ConvertToString(pRA->GetVerbose()); } + else if(cmd==plotCmd) + { val = plotCmd->ConvertToString(currentID); } + else if(cmd==carryCmd) + { val = carryCmd->ConvertToString(pRA->GetCarry()); } + else if(cmd==idOffsetCmd) + { + G4int offset = 0; + G4int factor = 0; + pRA->GetOffset(offset,factor); + val = idOffsetCmd->ConvertToString(offset); + val += " "; + val += idOffsetCmd->ConvertToString(factor); + } + + return val; +} + + diff --git a/examples/advanced/gorad/src/GRScoreWriter.cc b/examples/advanced/gorad/src/GRScoreWriter.cc new file mode 100644 index 0000000000..ced0b63927 --- /dev/null +++ b/examples/advanced/gorad/src/GRScoreWriter.cc @@ -0,0 +1,297 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Gorad (Geant4 Open-source Radiation Analysis and Design) +// +// Author : Makoto Asai (SLAC National Accelerator Laboratory) +// +// Development of Gorad is funded by NASA Johnson Space Center (JSC) +// under the contract NNJ15HK11B. +// +// ******************************************************************** +// +// GRScoreWriter.hh +// Defines the printout format of primitive scorer +// +// History +// September 8th, 2020 : first implementation +// +// ******************************************************************** + +#include "GRScoreWriter.hh" + +#include +#include + +#include "G4MultiFunctionalDetector.hh" +#include "G4SDParticleFilter.hh" +#include "G4VPrimitiveScorer.hh" +#include "G4VScoringMesh.hh" + +GRScoreWriter::GRScoreWriter() +{;} + +GRScoreWriter::~GRScoreWriter() +{;} + +void GRScoreWriter::DumpQuantityToFile(const G4String& psName, + const G4String& fileName, + const G4String& option) { + + // change the option string into lowercase to the case-insensitive. + G4String opt = option; + std::transform(opt.begin(), opt.end(), opt.begin(), (int (*)(int))(tolower)); + + // confirm the option + if(opt.size() == 0) opt = "csv"; + if(opt.find("csv") == std::string::npos && + opt.find("sequence") == std::string::npos) { + G4cerr << "ERROR : DumpToFile : Unknown option -> " + << option << G4endl; + return; + } + + // open the file + std::ofstream ofile(fileName); + if(!ofile) { + G4cerr << "ERROR : DumpToFile : File open error -> " + << fileName << G4endl; + return; + } + ofile << "# Mesh or volume name: " << fScoringMesh->GetWorldName() << G4endl; + + using MeshScoreMap = G4VScoringMesh::MeshScoreMap; + // retrieve the map + MeshScoreMap fSMap = fScoringMesh->GetScoreMap(); + + + MeshScoreMap::const_iterator msMapItr = fSMap.find(psName); + if(msMapItr == fSMap.end()) { + G4cerr << "ERROR : DumpToFile : Unknown quantity, \"" + << psName << "\"." << G4endl; + return; + } + + std::map * score = msMapItr->second->GetMap(); + ofile << "# Primitive scorer name: " << msMapItr->first << G4endl; + if(fact!=1.0) + { ofile << "# Multiplication factor : " << fact << G4endl; } + + G4double unitValue = fScoringMesh->GetPSUnitValue(psName); + G4String unit = fScoringMesh->GetPSUnit(psName); + G4String divisionAxisNames[3]; + fScoringMesh->GetDivisionAxisNames(divisionAxisNames); + ofile << "# First three integer entries: index of a cell of a mesh, just one cell for a volume tally." << G4endl; + ofile << "# Forth entry: sum of scores." << G4endl; + ofile << "# Fifth entry: sum of squared scores." << G4endl; + ofile << "# Sixth entry: number of events with non-zero effect." << G4endl; + ofile << "# Seventh entry: relative statistical error in %." << G4endl << G4endl; + // index of the cell + ofile << "# i" << divisionAxisNames[0] + << ", i" << divisionAxisNames[1] + << ", i" << divisionAxisNames[2]; + // unit of scored value + ofile << ", total(value) "; + if(unit.size() > 0) ofile << "[" << unit << "]"; + ofile << ", total(value^2), number of entries, relative error (%)" << G4endl; + + // "sequence" option: write header info + if(opt.find("sequence") != std::string::npos) { + ofile << fNMeshSegments[0] << " " << fNMeshSegments[1] << " " << fNMeshSegments[2] + << G4endl; + } + + // write quantity + long count = 0; + ofile << std::setprecision(16); // for double value with 8 bytes + for(int x = 0; x < fNMeshSegments[0]; x++) { + for(int y = 0; y < fNMeshSegments[1]; y++) { + for(int z = 0; z < fNMeshSegments[2]; z++) { + G4int idx = GetIndex(x, y, z); + + if(opt.find("csv") != std::string::npos) + ofile << x << "," << y << "," << z << ","; + + std::map::iterator value = score->find(idx); + if(value == score->end()) { + ofile << 0. << "," << 0. << "," << 0; + } else { + G4double x1 = value->second->sum_wx()/unitValue*fact; + G4double x2 = value->second->sum_wx2()/unitValue/unitValue*fact*fact; + G4int n = value->second->n(); + // rms is sigma = sqrt((x2-x1^2/n)/(n-1)) + // var = mean +/- rms/sqrt(n): means that the relative error of the sum = rms*sqrt(n)/x1 + G4double rms = value->second->rms()/unitValue*fact; + // Relative error in % + G4double relError = rms*std::sqrt(n)*100./x1; + ofile << x1 << ", " << x2 << ", " << n << ", " << relError; + ofile << G4endl; + G4double factor = relError*relError/100.; + if (factor > 1.) + { + G4cout << "# Mesh or volume name: " << fScoringMesh->GetWorldName() + << " -- # Primitive scorer name: " << msMapItr->first << G4endl + << " bin " << x << "," << y << "," << z << " : statistical error " << relError << "(%)" << G4endl + << " to reduce the statistical error below 10%, increase number of events approximately " + << factor << " times." << G4endl; + } + } + + if(opt.find("csv") != std::string::npos) { + ofile << G4endl; + } else if(opt.find("sequence") != std::string::npos) { + ofile << " "; + if(count++%5 == 4) ofile << G4endl; + } + + } // z + } // y + } // x + ofile << std::setprecision(6); + + // close the file + ofile.close(); +} + +void GRScoreWriter::DumpAllQuantitiesToFile(const G4String& fileName, + const G4String& option) { + + // change the option string into lowercase to the case-insensitive. + G4String opt = option; + std::transform(opt.begin(), opt.end(), opt.begin(), (int (*)(int))(tolower)); + + // confirm the option + if(opt.size() == 0) opt = "csv"; + if(opt.find("csv") == std::string::npos && + opt.find("sequence") == std::string::npos) { + G4cerr << "ERROR : DumpToFile : Unknown option -> " + << option << G4endl; + return; + } + + // open the file + std::ofstream ofile(fileName); + if(!ofile) { + G4cerr << "ERROR : DumpToFile : File open error -> " + << fileName << G4endl; + return; + } + ofile << "# Mesh or volume name: " << fScoringMesh->GetWorldName() << G4endl; + if(fact!=1.0) + { ofile << "# Multiplication factor : " << fact << G4endl; } + ofile << "# First three integer entries: index of a cell of a mesh, just one cell for a volume tally." << G4endl; + ofile << "# Forth entry: sum of scores." << G4endl; + ofile << "# Fifth entry: sum of squared scores." << G4endl; + ofile << "# Sixth entry: number of events with non-zero effect." << G4endl; + ofile << "# Seventh entry: relative statistical error in %." << G4endl << G4endl; + + // retrieve the map + using MeshScoreMap = G4VScoringMesh::MeshScoreMap; + MeshScoreMap fSMap = fScoringMesh->GetScoreMap(); + MeshScoreMap::const_iterator msMapItr = fSMap.begin(); + std::map * score; + for(; msMapItr != fSMap.end(); msMapItr++) { + + G4String psname = msMapItr->first; + + score = msMapItr->second->GetMap(); + ofile << "# Primitive scorer name: " << msMapItr->first << G4endl; + + G4double unitValue = fScoringMesh->GetPSUnitValue(psname); + G4String unit = fScoringMesh->GetPSUnit(psname); + G4String divisionAxisNames[3]; + fScoringMesh->GetDivisionAxisNames(divisionAxisNames); + // index order + ofile << "# i" << divisionAxisNames[0] + << ", i" << divisionAxisNames[1] + << ", i" << divisionAxisNames[2]; + // unit of scored value + ofile << ", total(value) "; + if(unit.size() > 0) ofile << "[" << unit << "]"; + ofile << ", total(value^2), number of entries, relative error (%)" << G4endl; + + + // "sequence" option: write header info + if(opt.find("sequence") != std::string::npos) { + ofile << fNMeshSegments[0] << " " << fNMeshSegments[1] << " " << fNMeshSegments[2] + << G4endl; + } + + // write quantity + long count = 0; + ofile << std::setprecision(16); // for double value with 8 bytes + for(int x = 0; x < fNMeshSegments[0]; x++) { + for(int y = 0; y < fNMeshSegments[1]; y++) { + for(int z = 0; z < fNMeshSegments[2]; z++) { + G4int idx = GetIndex(x, y, z); + + if(opt.find("csv") != std::string::npos) + ofile << x << "," << y << "," << z << ","; + + std::map::iterator value = score->find(idx); + if(value == score->end()) { + ofile << 0. << "," << 0. << "," << 0; + } else { + G4double x1 = value->second->sum_wx()/unitValue*fact; + G4double x2 = value->second->sum_wx2()/unitValue/unitValue*fact*fact; + G4int n = value->second->n(); + // rms is sigma = sqrt((x2-x1^2/n)/(n-1)) + // var = mean +/- rms/sqrt(n): means that the relative error of the sum = rms*sqrt(n)/x1 + G4double rms = value->second->rms()/unitValue*fact; + // Relative error in % + G4double relError = rms*std::sqrt(n)*100./x1; + ofile << x1 << ", " << x2 << ", " << n << ", " << relError; + ofile << G4endl; + G4double factor = relError*relError/100.; + if (factor > 1.) + { + G4cout << "# Mesh or volume name: " << fScoringMesh->GetWorldName() + << " -- # Primitive scorer name: " << msMapItr->first << G4endl + << " bin " << x << "," << y << "," << z << " : statistical error " << relError << "(%)" << G4endl + << " to reduce the statistical error below 10%, increase number of events approximately " + << factor << " times." << G4endl; + } + } + + if(opt.find("csv") != std::string::npos) { + ofile << G4endl; + } else if(opt.find("sequence") != std::string::npos) { + ofile << " "; + if(count++%5 == 4) ofile << G4endl; + } + + } // z + } // y + } // x + ofile << std::setprecision(6); + + } // for(; msMapItr ....) + + // close the file + ofile.close(); + +} + + diff --git a/examples/advanced/gorad/test.mac b/examples/advanced/gorad/test.mac new file mode 100644 index 0000000000..c64e15d3a4 --- /dev/null +++ b/examples/advanced/gorad/test.mac @@ -0,0 +1,86 @@ +####################################################### +# macro file of Gorad for system testing +####################################################### +# Set verbosities +####################################################### +/control/saveHistory +/run/verbose 1 +/control/verbose 2 +/event/verbose 0 +/tracking/verbose 0 +/process/verbose 0 + +####################################################### +# Geometry of the simulation +####################################################### +/gorad/geometry/selectGDML simpleCone.gdml +##/gorad/geometry/selectGDML orion.gdml + +####################################################### +# Define geometry importance biasing +####################################################### +/gorad/bias/geomImportance 5 + +####################################################### +# Physics of the simulation +####################################################### +/gorad/physics/EM Op_0 +/gorad/physics/Hadronic FTFP_BERT +/gorad/physics/cuts/setParticleCut gamma 1.0 mm +/gorad/physics/cuts/setParticleCut e- 1.0 mm +/gorad/physics/cuts/setParticleCut e+ 1.0 mm +/gorad/physics/cuts/setParticleCut proton 1.0 mm + +####################################################### +# GORAD and Geant4 initialization +####################################################### +/gorad/initialize + +####################################################### +# Selection of primary particle source +####################################################### +/gorad/source/define proton King.spec LW +##/gorad/source/define proton Trap.spec LW +##/control/execute gps_point.mac +##/control/execute gps_focus.mac + +####################################################### +# Define probes and scorers +####################################################### +/score/create/probe Probes 5 cm +/score/probe/material G4_WATER +/score/probe/locate 0 0 0 cm +/score/quantity/doseDeposit dose mGy +/score/quantity/volumeFlux volFlx +/score/quantity/volumeFlux protonFlux +/score/filter/particle protonFilter proton +/score/close + +####################################################### +# Define histograms for batch mode +####################################################### +/control/doifBatch /gorad/analysis/verbose 0 +/control/doifBatch /gorad/analysis/file KingSpecBias +/control/doifBatch /gorad/analysis/1D/primary primPE false +/control/doifBatch /gorad/analysis/1D/config 100 1.0 2.0e3 MeV log +/control/doifBatch /gorad/analysis/1D/yaxisLog true +/control/doifBatch /gorad/analysis/1D/primary Weighted true +/control/doifBatch /gorad/analysis/1D/config 100 1.0 2.0e3 MeV log +/control/doifBatch /gorad/analysis/1D/yaxisLog true +/control/doifBatch /gorad/analysis/1D/spectrum Probes volFlx +/control/doifBatch /gorad/analysis/1D/config 100 1.0e-2 2.0e3 MeV log +/control/doifBatch /gorad/analysis/1D/yaxisLog true +/control/doifBatch /gorad/analysis/1D/spectrum Probes protonFlux +/control/doifBatch /gorad/analysis/1D/config 100 1.0e-2 2.0e3 MeV log +/control/doifBatch /gorad/analysis/1D/yaxisLog true +/control/doifBatch /gorad/analysis/plot -1 +/control/doifBatch /analysis/plot/setLayout 1 2 + +####################################################### +# Run for batch mode +####################################################### +/control/doifBatch /run/eventModulo 0 1 +/control/doifBatch /run/beamOn 100000 +/control/doifBatch /score/dumpAllQuantitiesToFile Probes Probes.csv + +exit diff --git a/examples/advanced/gorad/vis.mac b/examples/advanced/gorad/vis.mac new file mode 100644 index 0000000000..afae387d08 --- /dev/null +++ b/examples/advanced/gorad/vis.mac @@ -0,0 +1,80 @@ +# +# Macro file for visualization of Gorad +# +# Set verbosity +# +/control/verbose 2 +# +# Use this open statement to create an OpenGL view: +/vis/open OGL 1200x1200-0+0 +# +# Use this open statement to create a .prim file suitable for +# viewing in DAWN: +#/vis/open DAWNFILE +# +# Use this open statement to create a .heprep file suitable for +# viewing in HepRApp: +#/vis/open HepRepFile +# +# Use this open statement to create a .wrl file suitable for +# viewing in a VRML viewer: +#/vis/open VRML2FILE +# +# Disable auto refresh and quieten vis messages whilst scene and +# trajectories are established: +/vis/viewer/set/autoRefresh false +/vis/verbose errors +# +# Draw geometry: +/vis/drawVolume worlds +# +# Specify view angle: +#/vis/viewer/set/viewpointThetaPhi 90. 0. +/vis/viewer/set/viewpointThetaPhi 80. -92. +# +# Specify zoom value: +/vis/viewer/zoom 1.3 +# +# Specify style (surface or wireframe): +#/vis/viewer/set/style wireframe +# +# Draw coordinate axes: +/vis/scene/add/axes 0 0 0 0.2 m +# +# Draw smooth trajectories at end of event, showing trajectory points +# as markers 2 pixels wide: +/vis/scene/add/trajectories smooth +/vis/modeling/trajectories/create/drawByCharge +/vis/modeling/trajectories/drawByCharge-0/default/setDrawStepPts true +/vis/modeling/trajectories/drawByCharge-0/default/setStepPtsSize 2 +# (if too many tracks cause core dump => /tracking/storeTrajectory 0) +# +# Draw hits at end of event: +#/vis/scene/add/hits +# +# To draw only gammas: +#/vis/filtering/trajectories/create/particleFilter +#/vis/filtering/trajectories/particleFilter-0/add gamma +# +# To invert the above, drawing all particles except gammas, +# keep the above two lines but also add: +#/vis/filtering/trajectories/particleFilter-0/invert true +# +# Many other options are available with /vis/modeling and /vis/filtering. +# For example, to select colour by particle ID: +#/vis/modeling/trajectories/create/drawByParticleID +#/vis/modeling/trajectories/drawByParticleID-0/set e- blue +# +# To superimpose all of the events from a given run: +#/vis/scene/endOfEventAction accumulate +# +# Re-establish auto refreshing and verbosity: +/vis/viewer/set/autoRefresh true +/vis/verbose warnings +# +# For file-based drivers, use this to create an empty detector view: +#/vis/viewer/flush +# +# Set visualization to accumulate events into one picture +# +/vis/scene/endOfEventAction accumulate diff --git a/examples/advanced/hadrontherapy/CMakeLists.txt b/examples/advanced/hadrontherapy/CMakeLists.txt index 5435b1b313..db4b50218b 100644 --- a/examples/advanced/hadrontherapy/CMakeLists.txt +++ b/examples/advanced/hadrontherapy/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(hadrontherapy) #---------------------------------------------------------------------------- diff --git a/examples/advanced/hadrontherapy/History b/examples/advanced/hadrontherapy/History index 1c014c2bac..392876c0f4 100644 --- a/examples/advanced/hadrontherapy/History +++ b/examples/advanced/hadrontherapy/History @@ -3,11 +3,37 @@ History File, 2004/02/27 G.A.P. Cirrone, Created cirrone@lns.infn.it https://twiki.cern.ch/twiki/bin/view/Geant4/AdvancedExamplesHadrontherapy ------------------------------------------------------------------------------- - + ==================================================== History file of the Hadrontherapy application ==================================================== +15.11.20 S. Guatelli; Tag hadrontherapy-V10-06-07 + - Migration to G4RunManagerFactory + +05.11.20 G.A.P. Cirrone; Tag hadrontherapy-V10-06-06 + - README update + - Minor changes in macro files + +02.11.20 B.Morgan, Tag: hadrontherapy-V10-06-05 + - Support same CMake version range as core Geant4 + +27.10.2020 L. Pandola, Tag: hadrontherapy-V10-06-04 + - Added protections against FPEs in RBE module + +23.10.2020 I. Hrivnacova; Tag: hadrontherapy-V10-06-03 + - Fixes in using analysis: + - Added test for open file before calling write & close + - Uncommented delete of analysis manager in RunAction + +25.09.2020 L. Pandola; Tag: hadrontherapy-V10-06-02 + - Further fix for the failures seen on Windows builds + +24.09.2020 G.A.P. Cirrone; Tag: hadrontherapy-V10-06-01 + - Added BEST beamline + - Code cleaning; fixed compiling errors in Windows related tp size_t G4int conversion and seg fault in MT; + + 06.03.2020 G.A.P. Cirrone; Tag: hadrontherapy-V10-06-00 - Many osolete macro files were deleted - Code cleaning; removed ROOT script folder, other cosmetics @@ -37,14 +63,14 @@ https://twiki.cern.ch/twiki/bin/view/Geant4/AdvancedExamplesHadrontherapy 19.08.2018 G.A.P.Cirrone, G.Petringa, Z.Mei; Tag: hadrontherapy-V10-04-06 - Fixed compilation erors in Windows - - LET class completely renewed with new calculation approaches + - LET class completely renewed with new calculation approaches 10.08.2018 G.A.P.Cirrone; hadrontherapy-V10-04-05 - - Trying to fix compilation error under Windows + - Trying to fix compilation error under Windows 09.08.2018 G.A.P.Cirrone; Tag: hadrontherapy-V10-04-04 - Updated History file; - - Corrected the pow use in the RBE class trying so solve a compilation problem under Windows + - Corrected the pow use in the RBE class trying so solve a compilation problem under Windows Tag: hadrontherapy-V10-04-03: History file not updated Tag: hadrontherapy-V10-04-02: History file not updated @@ -71,11 +97,11 @@ Tag: hadrontherapy-V10-04-02: History file not updated - LaserDrivenBeamLine.cc build fix 24.06.2017 G.A.P.Cirrone; Tag: hadrontherapy-V10-03-10 - - Added the batch.mac file + - Added the batch.mac file 23.06.2017 G.A.P.Cirrone; Tag: hadrontherapy-V10-03-09 - Removed the obsolete /experimentalData/iaeaBenchmark folder and batch.mac file - - Added the batch.mac file + - Added the batch.mac file 22.06.2017 G.A.P.Cirrone; Tag: hadrontherapy-V10-03-08 - Removed crash due to a bad pointer @@ -84,29 +110,29 @@ Tag: hadrontherapy-V10-04-02: History file not updated - Physics list cleaned - The local and obsolete ion-ion physics list has been removed -06.05.2017 G. Petringa, G.A.P. Cirrone, L. Pandola, F. Romano, F. Tommasino; Tag: hadrontherapy-V10-03-06 +06.05.2017 G. Petringa, G.A.P. Cirrone, L. Pandola, F. Romano, F. Tommasino; Tag: hadrontherapy-V10-03-06 - Removed the SetCuts() method from the PhysicsList.cc — RippleFilter geometry on PassiveCarbonBeamLine — Added TIFPA beam line - + 28.03.2017 L. Pandola, G.Petringa, G.A.P.Cirrone, G. Cuttone; Tag: hadrontherapy-V10-03-05 - G4SetCuts definition added in the PhysicsList 27.03.2017 G.Petringa, G.A.P.Cirrone, G. Cuttone; Tag: hadrontherapy-V10-03-04 - - Carbon beamline geometry corrected and updated and corresponding code + - Carbon beamline geometry corrected and updated and corresponding code revised; - G4Region definition corrected 22.03.2017 G.Petringa, G.A.P.Cirrone; Tag: hadrontherapy-V10-03-03 - Fixed cmakelist error - + 19.03.2017 G.Petringa, G.A.P.Cirrone; Tag: hadrontherapy-V10-03-02 - - Carbon beam line geometry corrected and new modulators added + - Carbon beam line geometry corrected and new modulators added 07.02.2017 G.A.P.Cirrone, G.Petringa; Tag: hadrontherapy-V10-03-01 - - Physics list corrected + - Physics list corrected 31.01.2017 G. Petringa, J.Pipek, L.Pandola, G.A.P.Cirrone; Tag: hadrontherapy-V10-03-00 - HadrontherapyAnalysisManager.cc class deleted and G4tools inserted in HadrontherapyMatrix.cc class - - Fixed Bugzilla #1879 (remaining edge cases) + - Fixed Bugzilla #1879 (remaining edge cases) 19.05.2016 F. Romano, B. Jia Tag: hadrontherapy-V10-02-00 - new modulator class implemented 31.10.2015 F. Romano, J. Pipek Tag: hadrontherapy-V10-01-03 @@ -154,7 +180,7 @@ Tag: hadrontherapy-V10-04-02: History file not updated no macro file is passed as argument; When a macro file is passed, the run is considered 'in batch mode' and no UI starts. - - Step max is setted bigger in the various macro files: the previous value was bringing + - Step max is setted bigger in the various macro files: the previous value was bringing computation times extremely long. - Author names updated in the main() file and various minor revisions - Now the PHYSLIST enviroment variable (to define an external Reference Physics @@ -164,38 +190,38 @@ Tag: hadrontherapy-V10-04-02: History file not updated 'bachMacro.mac' to be used only in batch-mode configuration. - PhysicsLists class complety updated: -- The G4EmStandardPhysics_option4 now substitute the G4EmStandardPhyscis_option3 builder. - G4EmStandardPhysics_option4 in, at moment, the most accurate + G4EmStandardPhysics_option4 in, at moment, the most accurate Electromagnetic physics in Geant4 - -- A new Physics List, called HADRONTHERAPY_1 and specifically implemented - for this application, has been defined. + -- A new Physics List, called HADRONTHERAPY_1 and specifically implemented + for this application, has been defined. HADONTHERAPY is defined as a collection of builders and is very similar to the QGSP_BIC_HP. - Reference Physcs List. + Reference Physcs List. HADRONTHERAPY_1 differs from the QGSP_BIC_HP in the followings: --> It contains G4EmStandardPhysics_option4 in place of G4EmStandardPhysics; --> It contains the builder G4RadioactiveDecayPhysics; - -- The defaults for the physics models are now complete and they corresponds - to the HADROTHERAPY_1 apart that: + -- The defaults for the physics models are now complete and they corresponds + to the HADROTHERAPY_1 apart that: --> G4HadronPhysicsQGSP_BIC is used in place of G4HadronPhysicsQGSP_BIC_HP --> G4HadronElasticPhysics is used in place of G4HadronElasticPhysics_HP Physics List - -- Cuts messengers completely removed. Now cuts can be defined using + -- Cuts messengers completely removed. Now cuts can be defined using the commands '/run/setCut' 'run/setCutForAGivenParticle', etc. -- Multiple G4Regions can now be defined in the PhysicsList class file, to apply specific CUTs values via the command '/run/setCutForRegion ' - -- The new physics list HADRONTHERAPY_2 is created. This list contains the local - implementation of a specific ion-ion inelastic hadronic physics. + -- The new physics list HADRONTHERAPY_2 is created. This list contains the local + implementation of a specific ion-ion inelastic hadronic physics. It use the QMD model to treat the ion-ion interactions. -- Livermore and Penelope electromagnetic physics removed - HadrontherapyPhysicsLists.hh header file cleaned. - - Corrected the command moving the simulated .root file to the experimental folder in the + - Corrected the command moving the simulated .root file to the experimental folder in the defaultMcro.mac and batch.mac macro files - The 'LocalINCLIonIonInelasticPhysic' has been removed - - The 'defaultMacro.mac', 'defaultMacroWithReferencePhysicsList.mac' and 'bachMacro.mac' have + - The 'defaultMacro.mac', 'defaultMacroWithReferencePhysicsList.mac' and 'bachMacro.mac' have been competely updated and adapted to the new physics list - Migration to MT have been done. - + 13.02.2014 L.Pandola; Tag: hadrontherapy-V10-00-01 - - Fix bug (missing inizialization) producing the problem + - Fix bug (missing inizialization) producing the problem observed with x86_64-mac108-gcc42. Remove debug printout 12.02.2014 L.Pandola; Tag: hadrontherapy-V10-00-00 @@ -225,7 +251,7 @@ Tag: hadrontherapy-V10-04-02: History file not updated data filed): in case of no ROOT found 30.07.2013 A.Dotti; Tag: hadrontherapy-V09-06-01 - - Fixing compilation warnings from clang32 (unused private + - Fixing compilation warnings from clang32 (unused private data filed) 03.02.2013 V.Ivanchenko; Tag: hadrontherapy-V09-06-00 @@ -243,7 +269,7 @@ Tag: hadrontherapy-V10-04-02: History file not updated 08.11.2012 F.Romano; Tag: hadrontherapy-V09-05-10 - hadrontherapy.cc: fixed problem for referencePhysList if condition. - README revised. - + 29.10.2012 F.Romano; Tag: hadrontherapy-V09-05-09 - Added explicit inclusion of units and constants headers where missing. - Executable renamed to the same name of the directory to avoid possible @@ -279,22 +305,22 @@ Tag: hadrontherapy-V10-04-02: History file not updated in HadrontherapyMatrix::ion. Fixes compilation warning on gcc-4.7. 08.12.2011 G.Folger; Tag: hadrontherapy-V09-05-00 - - Added CMakeLists.txt file + - Added CMakeLists.txt file 25.11.2011 G.Folger; Tag: hadrontherapy-V09-04-08 - - remove #include for not needed unistd.h in + - remove #include for not needed unistd.h in HadrontherapyMatrix.cc 21.11.2011 G.Folger; Tag: hadrontherapy-V09-04-07 - - remove #include for not needed unistd.h in + - remove #include for not needed unistd.h in HadrontherapyInteractionParameters; unistd.h does not exist on Windows - - Fix compilation error when G4ANALYSIS_USE_ROOT is set in + - Fix compilation error when G4ANALYSIS_USE_ROOT is set in HadrontherapyMatrix::TotalEnergyDeposit() 21.11.2011 G.A.P.Cirrone; Tag: hadrontherapy-V09-04-06 - Updated and cleaned physics - Updated macro files; - + 14.11.2011 G.A.P.Cirrone; Tag: hadrontherapy-V09-04-05 - Corrected macro files for a double call to the Decay physics - Added the complete physics to the batch.mac file @@ -318,8 +344,8 @@ Tag: hadrontherapy-V10-04-02: History file not updated - Removed obsolete hadron elastic builders 09.12.2010 S.E.Mazzaglia; Tag: hadrontherapy-V09-03-17 - - Changed materials definition (by macro command) for Range Shifter with the NIST one. - The same macro /beamLine/RangeShifter/RSMat must be used, but with + - Changed materials definition (by macro command) for Range Shifter with the NIST one. + The same macro /beamLine/RangeShifter/RSMat must be used, but with NIST material name as parameter. 26.11.2010 G.A.P.Cirrone; Tag: hadrontherapy-V09-03-16 @@ -339,9 +365,9 @@ Tag: hadrontherapy-V10-04-02: History file not updated - Deleted the addPackage command. Now the Reference Physics lists can be activated setting the enviroment variable PHYSLIST to the name of the list (i.e. export PHYSLIST=QGSP_BIC_EMY) - - The main file has been modified in order to launch different macro file + - The main file has been modified in order to launch different macro file depending if PHYSILIST variable is activated or not: if PHYSLIST is - activated the 'defaultMacroWithReferencePhysicsList.mac' file + activated the 'defaultMacroWithReferencePhysicsList.mac' file is used; if not the 'defaultMacro.mac' is used - The 'packageQGSP_BIC.mac' macro file has been removed as now the activation of the Reference Physiocs Lists is done via the PHYSLIST envitoment variable @@ -373,7 +399,7 @@ Tag: hadrontherapy-V10-04-02: History file not updated 19.10.2010 G.A.P.Cirrone; Tag: hadrontherapy-V09-03-06 - Physics list 'QGSP_BIC_EMY' definition has been updated - in the physics lists class to to be constistent with the definition + in the physics lists class to to be constistent with the definition of the one defined in the Geant4 kernel ($G4INSTALL/source/physics_lists/) - Macro file consequently updated @@ -392,7 +418,7 @@ Tag: hadrontherapy-V10-04-02: History file not updated - Main file updated 22.05.2010 S.E.Mazzaglia; Tag: hadrontherapy-V09-03-02 - - Updated ROOT scripts in folder RootScripts/proton/BraggPeak + - Updated ROOT scripts in folder RootScripts/proton/BraggPeak 21.05.2010 S.E.Mazzaglia; Tag: hadrontherapy-V09-03-01 - Solved some bugs related to the preprocessor variable G4ANALYSIS_USE_ROOT. @@ -405,7 +431,7 @@ Tag: hadrontherapy-V10-04-02: History file not updated - Added the possibility to store dose & fluence for all secondary particles produced in the same ASCII file. This feature can be switched on by the macro command: /analysis/secondaries true/false. - + 16.12.2009 S.E.Mazzaglia; Tag: hadrontherapy-V09-02-42 - Added the possibility to calculate the Let too, using an ASCII file to store it. @@ -413,12 +439,12 @@ Tag: hadrontherapy-V10-04-02: History file not updated - Minor revisions of the code. 27.11.2009 S.E.Mazzaglia; Tag: hadrontherapy-V09-02-41 - - Added the possibility to store dose and fluence for every particle/ion - produced during the simulation + - Added the possibility to store dose and fluence for every particle/ion + produced during the simulation 25.11.2009 S.E.Mazzaglia & F.Romano; Tag: hadrontherapy-V09-02-40 - - Corrected a bug in HadrontherapyDetectorConstruction class - - Added G4RadiactivedecayPhysics class to the Physics List. + - Corrected a bug in HadrontherapyDetectorConstruction class + - Added G4RadiactivedecayPhysics class to the Physics List. 22.11.2009 S.E.Mazzaglia; Tag: hadrontherapy-V09-02-39 - Correction in the initialization of the passiveProtonBeamLine class. @@ -434,30 +460,30 @@ Tag: hadrontherapy-V10-04-02: History file not updated - Correction for a missing function in the HadrontherapyPhysicsListMessenger.cc class file 18.11.2009 G.A.P.Cirrone; Tag: hadrontherapy-V09-02-35 - - Updated the README file and general code revision for the + - Updated the README file and general code revision for the Geant4 9.3 release 17.11.2009 S.E.Mazzaglia; Tag: hadrontherapy-V09-02-34 - - Added some functionalities in order to change, via messengers, the geometry, the voxelization + - Added some functionalities in order to change, via messengers, the geometry, the voxelization of the detector, and the disposition in the space of the detector/phantom. - Added the possibility to calculate the stopping powers for ions too. - Modified the HadrontherapyDetectorROGeometry class constructor. - Various additions and fixes to the matrix class. 10.11.2009 G.A.P.Cirrone; Tag: hadrontherapy-V09-02-33 - - Added the possibility to make a graphical user interface (GUI) using the QT libraries. - To start a GUI the correct enviroment variables must be configured (see the Geant4 installation - manual) and a QT version must be installed + - Added the possibility to make a graphical user interface (GUI) using the QT libraries. + To start a GUI the correct enviroment variables must be configured (see the Geant4 installation + manual) and a QT version must be installed 05.10.2009 P.Kaitaniemi; Tag: hadrontherapy-V09-02-32 - Fixed a compilation error with GCC 4.4 28.09.2009 S.E.Mazzaglia; Tag: hadrontherapy-V09-02-31 - Now the HadrontherapyDetectorConstruction class implements only phantom and detector [RO]geometry. - World volume and the rest of the geometry is inside another class whose messenger allows + World volume and the rest of the geometry is inside another class whose messenger allows modification by users with the same old syntax - - Removed HadrontherapyInteractionParameters from the HadrontherapyGeometryController class - + - Removed HadrontherapyInteractionParameters from the HadrontherapyGeometryController class + 20.09.2009 P.Kaitaniemi; Tag: hadrontherapy-V09-02-30 - Added ability to use command based scoring - IAEA geometry: produce Bragg peak using command based scoring @@ -469,7 +495,7 @@ Tag: hadrontherapy-V10-04-02: History file not updated 11.09.2009 G.A.P.Cirrone; Tag: hadrontherapy-V09-02-28 - Added messengers to control the event number and to draw only particular tracks. - The new command are accessible via the command /event/drawTracks and /event/PrintEventNumber + The new command are accessible via the command /event/drawTracks and /event/PrintEventNumber 08.09.2009 S.E.Mazzaglia; Tag: hadrontherapy-V09-02-27 - Added a method to retrieve stopping power values for protons, alphas and electrons. @@ -502,15 +528,15 @@ Tag: hadrontherapy-V10-04-02: History file not updated - ROOT script preparing an IAEA benchmark figure with data 08.07.2009 G.A.P.Cirrone; Tag: hadrontherapy-V09-02-21 - - Removed the README file in ASCII format + - Removed the README file in ASCII format 27.06.2009 G.A.P.Cirrone; Tag: hadrontherapy-V09-02-20 - Eliminated not necessary dependences in the SteppingAction class - - Added folders containing experimental data (its name is 'experimentalData') and + - Added folders containing experimental data (its name is 'experimentalData') and ROOT scripts ('RootScripts') where Root scripts are stored to perform a fast comparison with experimental data. A folder where simulation results are stored is also created. Its - name is 'simulationResults'. + name is 'simulationResults'. 27.06.2009 P. Kaitaniemi; Tag hadrontherapy-V09-02-19 - Added ability to change the name of the output file between runs @@ -525,11 +551,11 @@ Tag: hadrontherapy-V10-04-02: History file not updated - Local INCL/ABLA physics list for deuterons, tritons and alphas 26.06.2009 G.A.P.Cirrone; Tag hadrontherapy-V09-02-17 - - Corrected the definition of total inelastic cross section for light ions in the + - Corrected the definition of total inelastic cross section for light ions in the LocalIonIonInelasticPhysic.cc file 26.06.2009 G.A.P.Cirrone; Tag: hadrontherapy-V09-02-16 - - Momentarely removed the class for LET calculation + - Momentarely removed the class for LET calculation for a conflict with the general structure of Hadrontherapy 10.06.2009 G.A.P.Cirrone; Tag: hadrontherapy-V09-02-15 @@ -549,7 +575,7 @@ Tag: hadrontherapy-V10-04-02: History file not updated Activation can be done via macro commands in the usual way 19.05.2009 F.Romano; Tag hadrontherapy-V09-02-11 - - Corrected the stepMax value in each macro in order to avoid + - Corrected the stepMax value in each macro in order to avoid a wrong dose deposition in the first slice. - Modified and revised the README and macro files. @@ -564,7 +590,7 @@ Tag: hadrontherapy-V10-04-02: History file not updated - README file improved. 14.05.2009 G.A.P.Cirrone; Tag: hadrontherapy-V09-02-07 - - Physic implementation completely changed. Now Hadrontherapy can be launched + - Physic implementation completely changed. Now Hadrontherapy can be launched with physics lists, packages and built-in physic models; In the README we give some suggestion in the physic models to use. All models can be activated via macro command. @@ -610,19 +636,19 @@ Tag: hadrontherapy-V10-04-02: History file not updated - Corrected cross sections definitions for ions - Revised the definition and use of the electromagnetic options for the use with the Standard models - + 20.11.2008: G.A.P.Cirrone and M.Russo; Tag: hadrontherapy-V09-01-09 - - Updated readme and improved the comments. + - Updated readme and improved the comments. 20.11.2008: G.A.P.Cirrone and M.Russo; Tag: hadrontherapy-V09-01-08 - Add new approach for the choice of the physic models. - Now packaged physic lists can be used alternatively + Now packaged physic lists can be used alternatively to the the physic models implemented in the class files - EM, HE and HI. + EM, HE and HI. - Improved the electromagnetic models for the generic ions 22.09.2008 G.A.P.Cirrone; Tag: hadrontherapy-V09-01-07 - - Corrected the G4eBremsstrahlung() process in the file + - Corrected the G4eBremsstrahlung() process in the file EMElectronStandard.cc; - Updated the head of the History file; @@ -630,22 +656,22 @@ Tag: hadrontherapy-V10-04-02: History file not updated - Corrections in the Low Energy Electromagnetic physic lists. 15.06.2008 G.A.P.Cirrone; Tag: hadrontherapy-V09-01-05 - - Removed AIDA call from GNUmakefile + - Removed AIDA call from GNUmakefile 19.05.2008 G.A.P.Cirrone tag hadrontherapy-V09-01-04 - Added in the beam line the MOPI detector. MOPI is a microstrip detector that, in the real case, is able to check during the treatment, the beam simmetry of the therapy beam. - Its physical structure is here exactly simulated so that + Its physical structure is here exactly simulated so that the its contribute to the energy loss can be take into account; - A detailed description if the detector can be found in + A detailed description if the detector can be found in NIM A 572 (2007) 1094-1101 and its references. - Corrected the position of the Phantom and Detector; - Added variables to the HadrontherapyBeamLine.cc file; - Added comments to the HadrontherapyBeamLine.cc file to improve the clearness. - Updated the README file. - - Changed the default dimensions of histogram bins + - Changed the default dimensions of histogram bins (from 200 um to 100 um). 09.03.2008 G.A.P.Cirrone tag hadrontherapy-V09-01-03 @@ -657,9 +683,9 @@ Tag: hadrontherapy-V10-04-02: History file not updated - Added NIST definition materials in Material class; - Code review of the DetectorConstruction class; - Changed name of the volume where the energy deposited is collected - from "phantom" to "detector". "Detector" is a more appropiate + from "phantom" to "detector". "Detector" is a more appropiate name. - - Changed name of the volume where the detector is inserted from + - Changed name of the volume where the detector is inserted from "patient" to the more appropriate "Water Phantom"; 03.03.2008 G.A.P.Cirrone tag hadrontherapy-V09-01-01 @@ -667,13 +693,13 @@ Tag: hadrontherapy-V10-04-02: History file not updated - Removed a segmentation due to an uncorect pointer in the EMHadronIonStandard class; - Added options for an accurate use of Standard electromagnetic models - in the EMHadronIonStandard, EMElectronStandard, + in the EMHadronIonStandard, EMElectronStandard, EMPositronStandard, EMPhotonStandard and EMMuonStandard classes; - - Added a macro file (physicsElectromagneticStandard.mac) + - Added a macro file (physicsElectromagneticStandard.mac) for the use of Hadrontherapy with the Standard Electromagnetic models; - - Corrected in the defaultMacro.mac, a wrong command for the + - Corrected in the defaultMacro.mac, a wrong command for the activation of the Standard Electromagnetic models; - + 29.02.2007 G.A.P.Cirrone tag hadrontherapy-V09-01-00 - Updated README @@ -694,27 +720,27 @@ Tag: hadrontherapy-V10-04-02: History file not updated 04.06.2007 G.A.P. Cirrone (hadrontherapy-V09-00-00) - Changed the random engine. - + 10.05.2007 G.A.P. Cirrone (hadrontherapy-V08-03-02) - - Improved the modulator geometry and fixed a bug on its rotation; + - Improved the modulator geometry and fixed a bug on its rotation; 07.05.2007 G.A.P. Cirrone (hadrontherapy-V08-02-02) - - Geometry upgrade(hadrontherapyBeamLine class) according - to the experimental CATANA proton therapy beam line; + - Geometry upgrade(hadrontherapyBeamLine class) according + to the experimental CATANA proton therapy beam line; 23.04.2007 S. Guatelli (hadrontherapy-V08-02-01) - Compilation error corrected - human error of Susanna Guatelli. - The file src/HadrontherapyProtonBertiniElastic.cc and the file include/HadrontherapyProtonBertiniElastic.hh have been removed - - This class is part of the previous version of the hadrontherapy - application,and it not necessary anymore in the current version + - This class is part of the previous version of the hadrontherapy + application,and it not necessary anymore in the current version of the hadrontherapy application. 24.1.2007 S. Guatelli (hadrontherapy-V08-02-00) - Design iteration - Physics lists added - + 16.11.2006 S. Guatelli (hadrontherapy-V08-01-05) - Physics lists cleaned @@ -755,23 +781,23 @@ Tag: hadrontherapy-V10-04-02: History file not updated 06.12.2005 S. Guatelli (hadrontherapy-V07-01-05) - Particles updated - Updated macros - + 23.11.2005 S. Guatelli (hadrontherapy-V07-01-04) - File ASCII as output file deleted 02.09.2005 S. Guatelli (hadrontherapy-V07-01-03) - Added Hadronic physics models - + 08.07.2005 S. Guatelli (hadrontherapy-V07-01-02) - Added alternative stopping power parameterisations for protons: ICRU49, Ziegler 1977, Ziegler 1985, Ziegler (SRIM) 2000 - + 30.05.2005 G.A.P. Cirrone and S.Guatelli (hadrontherapy-V07-00-06) - Removed warnings; - Analisys with AIDA 3.2.1 and PI 1.3.3; - - Corrected bug in the modulator wheel; + - Corrected bug in the modulator wheel; - Added the hadronic physic list for proton and ion; - - Code review + - Code review 18.05.2005 Susanna Guatelli (hadrontherapy-V07-00-03) - Delete public variables @@ -790,11 +816,11 @@ Tag: hadrontherapy-V10-04-02: History file not updated 25.02.2005 - G.A.P. Cirrone & M.Piergentili, update of the physiscList class to correct some bugs. -30.11.2004 - S. Guatelli, +30.11.2004 - S. Guatelli, correct analysis, tag: hadrontherapy-V06-02-00 - + 16.07.2004 - G.A.P. Cirrone - AIDA classes inserted. Generation of an .hbk file + AIDA classes inserted. Generation of an .hbk file containing the depth dose distribution. 28.05.2004 - S. Guatelli diff --git a/examples/advanced/hadrontherapy/Modulators/Modulator009_02.txt b/examples/advanced/hadrontherapy/Modulators/Modulator009_02.txt old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/Modulators/Modulator010.txt b/examples/advanced/hadrontherapy/Modulators/Modulator010.txt old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/Modulators/Modulator011.txt b/examples/advanced/hadrontherapy/Modulators/Modulator011.txt old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/Modulators/ModulatorAM16FR.txt b/examples/advanced/hadrontherapy/Modulators/ModulatorAM16FR.txt old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/README b/examples/advanced/hadrontherapy/README index 54d64e1901..7b13fdabe4 100644 --- a/examples/advanced/hadrontherapy/README +++ b/examples/advanced/hadrontherapy/README @@ -1,14 +1,13 @@ - - ========================================================= - Text version of the Hadrontherapy README file - ========================================================= + ========================================================= + Text version of the Hadrontherapy README file + ========================================================= -Last revision: F.Romano, 5 November 2015; -Released with the Geant4 10.2 version (December 2015) +Last revision: +Released with the Geant4 10.7 version (December 2020) ------------------------------------------------------------------------------------------------ ADVERTISEMENT: this is the text version of the README file of the 'basic' hadrontherapy, -as it has been released in the official Geant4 9.6 release +as it has been released in the Geant4 10.7 release Visit the Hadrontherapy web site (https://twiki.cern.ch/twiki/bin/view/Geant4/AdvancedExamplesHadrontherapy) to request the complete version of this program, together with its documentation; @@ -17,54 +16,60 @@ Institute in the framework of the MC-INFN Group ------------------------------------------------------------------------------------------------- - ========================================================= - HADRONTHERAPY - ========================================================= + ========================================================= + HADRONTHERAPY + ========================================================= ==========> MAIN AUTHORS <========== - G.A.P. Cirrone(a)*, F.Romano(a), G.Cuttone(a), L. Pandola(a), G.Milluzzo(a), J.Pipek(a) - + G.A.P. Cirrone(a)*, L. Pandola(a), G.Milluzzo(a), G.Petringa(a) ==========> PAST AUTHORS <========== -R. Calcagno(a), G.Danielsen (b), F.Di Rosa(a), S.Guatelli(c), A.Heikkinen(b), P.Kaitaniemi(b), -A.Lechner(d), S.E.Mazzaglia(a), M.G.Pia(e), G.Russo(a), M.Russo(a), A.Varisano(a), A. Tramontana (a,f) +J.Pipek(a),R. Calcagno(a), G.Cuttone(a),G.Danielsen (b), F.Di Rosa(a), S.Guatelli(c), A.Heikkinen(b), P.Kaitaniemi(b), +A.Lechner(d), S.E.Mazzaglia(a), M.G.Pia(e), F.Romano(f), G.Russo(a), M.Russo(a), A.Varisano(a), A. Tramontana (a,f) (a) Laboratori Nazionali del Sud of the INFN, Catania, Italy (b) Helsinki Institute of Physics, Helsinki, Finland (c) University of Wollongong, Australia (d) CERN, (CH) -(e) INFN Section of Genova, genova, Italy -(f) Physics and Astronomy Department, Universituy of Catania, Catania, Italy +(e) INFN Section of Genova, Genova, Italy +(f) Physics and Astronomy Department, University of Catania, Catania, Italy - *Corresponding authors, email to: cirrone@lns.infn.it, francesco.romano@lns.infn.it + *Corresponding author, email to: cirrone@lns.infn.it ------------------------------------------------------------------------------------------------- + HADRONTHERAPY: WHAT IT IS, WHAT IT DOES AND WHAT IT WILL PROVIDE -'hadrontherapy' is a Geant4-based application specifically developed to address typical needs related to the proton and ion therapy. -Its first release was in 2004. At that time 'hadrontherapy' was only capable to simulate a well specified proton therapy facility: the passive transport beam line installed at Laboratori Nazionali del Sud (INFN) in Catania, Italy. +=================================================== -Today Hadrontontherapy, except that it is in continuous development, is more flexible and shows many additional capabilities with respect to the past. -Its geometrical set-up, for example, is now completely interchangeable permitting a simple switch between different geometrical configurations, which all share the same phantom (sensible detector) with the related features. -It is possible to do a simulation of a generic proton/ion transport beam line and laser-driven beam line. In this release, a module for dose average LET computations has been also included. -Deprecated ReadOutGeometry has been replaced by the use of Parallel World. +'hadrontherapy' is a Geant4-based application specifically developed to address typical needs related to proton and ion therapy. +Its first release was in 2004. At that time 'hadrontherapy' was only capable of simulating a well-specified proton therapy facility: the passive transport beam line installed at Laboratori Nazionali del Sud (INFN) in Catania, Italy. + +Today Hadrontherapy, except that it is in continuous development, is more flexible and shows many additional capabilities with respect to the past. +Its geometrical set-up, for example, is now completely interchangeable permitting a simple switch between different geometrical configurations, which all share the same phantom (sensitive detector) with the related features. +It is possible to do a simulation of a generic proton/ion transport beam line and laser-driven beam line. In this release, a module for dose average LET and RBE computations have been also included. The configurations are: - - Passive proton beam line, which is installed at the LNS-INFN facility in Catania for eye tumor treatment with protons at 62 MeV. It is simulated in PassiveProtonBeamLine.cc; +- Passive proton beam line, which is installed at the LNS-INFN facility in Catania for eye tumor treatment with protons at 62 MeV. It is simulated in PassiveProtonBeamLine.cc; (G.A.P. Cirrone et al., IEEE Nuclear Science Symposium Conference Record, 2003, 3, pp. 1756-1758, J2-5) - - Passive carbon beam line, which is the simulation of the transport beam line at LNS-INFN of Catania for experiments with carbon ion beams. It is simulated in PassiveCarbonBeamLine.cc; +- Passive carbon beam line, which is the simulation of the transport beam line at LNS-INFN of Catania for experiments with ion beams (Carbon, Oxygen and Helium). It is simulated in PassiveCarbonBeamLine.cc; - - Laser-driven beam line, which is the simulation of a beam line for the focusing, the handling and the transport of a laser-driven beam, a Faraday Cup is the eligible detector for this class. It is simulated in LaserDrivenBeamLine.cc; +- Laser-driven beam line, which is the simulation of a beam line for the focusing, the handling and the transport of a laser-driven beam, a Faraday Cup is the eligible detector for this class. It is simulated in LaserDrivenBeamLine.cc; +(A.Tramontana et al., A transport beamline solution for laser-driven proton beams +6th International Particle Accelerator Conference, IPAC 2015, 2015, pp. 2515-2518) + + - TIFPA passive proton beam line, which is installed at the Protontherapy Center of Trento (Italy), used for experiments with proton beams. Geometry is implemented in HadrontherapyTIFPAPassiveProtonBeamLine.cc +(F.Tommasino et al., A new facility for proton radiobiology at the Trento proton therapy centre: Design and implementation, Physica Medica 58 (2019) 99–106) + +- BEST passive proton beam line is the beamline INFN-LNS is developing for the BEST Cyclotron company for eye tumor treatment with 70 MeV protons. The geometry is implemented in BESTPassiveProtonBeamline.cc. - in PassiveProtonBeamLine.cc, in PassiveCarbonBeamLine.cc and in LaserDrivenBeamLine.cc, the user can change the geometrical characteristics of beam line elements. - Alternatively, the user can use the macro file. - +In PassiveProtonBeamLine.cc, in PassiveCarbonBeamLine.cc, in LaserDrivenBeamLine.cc,in HadrontherapyTIFPAPassiveProtonBeamLine.cc and in BESTPassiveProtonBeamline.cc, the user can change the geometrical characteristics of beam line elements. +Alternatively, the user can use the macro file. Folder structure of 'hadrontherapy' - 'hadrontherapy' distribution contain different sub-folders: \src: where source .cc files are stored @@ -73,78 +78,86 @@ Folder structure of 'hadrontherapy' \macro: where a set of ready-to-use macro files are provided -\field: where a set of ready-to-use .TABLE files are provided. These files are generated from OPERA & COMSOL codes for the laser-driven beam line. +\field: where a set of ready-to-use.TABLE files are provided. These files are generated from OPERA & COMSOL codes for the laser-driven beam line. -\experimentalData: in this directory, a set of reference (both experimental and analythical) data are stored. These data are then used to perform a direct comparison with simulation results that are stored in the simulationResults folder. Data stored are better described in the README file contained inside. +\experimentalData: in this directory, a set of reference (both experimental and analytical) data are stored. -\SimulationOutputs: when one of the .mac file contained in the macro folder is used, simulation results are directly stored in this directory. - -\RootScripts: if the ROOT program is installed the User can use scripts contained in this directory to compare directly results from the his/her simulation with reference data provided inside the experimentalData folder. - -Currently this folders structure is in development and reference data as well as ROOT scripts alongside the newly implemented features. Moreover some ROOT script can be missed. We apologize for this; please contact the authors if you need more information, clarification or useful discussion. +\data\rbe: contains the file lem1.csv including the alpha and beta values and rbe resulted from the radiobiological Local Effect Model (LEM) for three cell lines ( AG01522, U87 and HSG) Description of the \macro folder -Inside the "macro" folder, different macro files are provided. In particular, three macro files are related to the different beam lines: hadron_therapy.mac, carbon_beamline.mac and laserDrivenBeamline.mac. -The hadron_therapy.mac permits to run a simulation with the whole proton passive beam line installed in Catania. -The carbon_beamline.mac excludes all the elements (moving the origin of the ion beam close to the water phantom) and reproduce a simple passive beam line for the use with carbon ion beams. -The laserDrivenBeamline.mac simulates a typical laser-driven proton spectrum as input for a beam line made of a quadrupole system and an energy selector. +Inside the "macro" folder, different macro files are provided. +In particular, five macro files are related to the different beam lines: + +defaultMacro.mac: permits to run a simulation using the default geometry, i.e. the CATANA proton beam line in Catania. A 62 MeV gaussian proton beam with 0.25 MeV sigma and 0.028° as divergence (sigma) is launched. + You can modify by macro the range shifter thickness you + want to select. The entrance of the phantom is positioned at the isocentre ( (0,0,0) + coordinates). LET and RBE computation are activated. + +carbon_beamline.mac: reproduces a simple passive beam line for the use of carbon, oxygen and helium ion beams for multidisciplinary applications (selectGeometry Carbon). A parallel 62 MeV/u carbon beam with 0.740 MeV/u sigma is simulated. + +laserDrivenBeamline.mac: simulates a typical laser-driven proton spectrum as input for a beam line made of a quadrupole system, an energy selector and a Faraday Cup (selectGeometry LaserDriven) + + +Trento_parameters.mac: reproduces the experimental beam line installed at the Trento protontherapy centre and implements a typical source. + +BestBeamLine.mac: implements the elements of the beam line developed for the BEST company and simulates a 70 MeV proton beam as input of the simulation. Dose and LET longitudinal distributions are computed at the isocentre and a native dose scorer is also added to retrieve the lateral dose profiles. + +3 additional macro files are also included: + +modulatorMacro.mac : allows the reconstruction of the spread out bragg peak modulating the proton beams by means of a rotating modulator wheel. The wheel is rotated of 1 degree at each run and 1000 protons are simulated in each run. +stoppingPowers.mac : calculates the stopping power of protons and alpha particles in the energy range between 1 keV up to 200 MeV +detectorGeometry.mac : example of how to modify the detector geometry + +The main folder also includes an additional macro file, batch.mac which runs a simple simulation using the default geometry of the CATANA beamline.This macro is also used during the system testing process. DOWNLOAD AND INSTALLATION +=================================================== -'hadrontherapy' source code is actually released inside the official distribution of the Geant4 toolkit in the $G4INSTALL/examples/advanced folder. +'hadrontherapy' source code is released inside the distribution of the Geant4 toolkit in the $G4INSTALL/examples/advanced folder. -To run 'hadrontherapy' you must first install the Geant4 package. Once Geant4 is installed, the example must be first compiled. When compilation is completed the program can be executed. +To run 'hadrontherapy' you must first install the Geant4 package. Once Geant4 is installed, the example must be first compiled. When the compilation is completed the program can be executed. A complete guide for the Geant4 installation in different operating systems can be found inside the official installation Geant4 pages. -If you have troubles with the Geant4 installation please send an e-mail to us. - A CMakeLists.txt file (preferred) is provided together with a standard GNUmakefile for compilation. - -GEOMETRICAL SET-UP +GEOMETRIC SET-UP +=================================================== The idea of 'hadrontherapy' is to provide a tool useful for Users interested in the field of proton and ion therapy. These can include the simple calculation of dose distribution curves in water or other materials, the derivation of important transport parameters (stopping powers, ranges, etc.) in different geometrical set-ups and for different materials, up to the complete simulation of a real transport beam line for therapy. +The main component of the simulation is the phantom, a box that can be filled with different materials and where the scoring of different information (at moment the dose deposited in voxels) can be performed. A more complete description of the phantom is given in the next subsection. -The main component of the simulation is the phantom, a box that can be filled with different material and where the score of different information (at moment the dose deposited in voxels) can be performed. A more complete description of the phantom is given in the next subsection. +All these configurations will be set using macro commands. -At the moment the 'hadrontherapy' example includes the simulation of passive beam lines. -In the next future an ActiveProtonBeamLine.cc will be provided for the simulation of the active scanning treatment modality. -Moreover the possibility to add a very simple set-up (a beam, a phantom where collect the informations and some simple component) will be also provided. - -All these configuration will be set using macro commands. - -There is also a feature that allows the user to make a choice between alternative geometry set-ups. This can be done by using command: +There is also a feature that allows the user to make a choice between alternative geometry set-ups. This can be done by using the command: /geometrySetup/selectGeometry -where is either "default" for the standard 'hadrontherapy' geometry or "Carbon" for INFN-LNS transport beam line, -normally used for interdisciplinary researches at LNS-INFN in Catania with carbon and other ion beams or "LaserDriven" for the laser-driven beam line. - -At the end of the beam line a phantom (a box of uniform material) is reproduced. Inside it, a user-defined region is divided -in cubic and identical voxels. The voxels size can be varied as well as the voxelized region. -At the end of a simulation run, the dose deposited by primaries and secondaries in each voxel is collected. This information is available as an .out file or as a .root (if activated). +where is either "default" for the standard 'hadrontherapy' geometry, "Carbon" for INFN-LNS transport beam line, normally used for interdisciplinary researches at LNS-INFN in Catania with carbon and other ion beams, "LaserDriven" for the laser-driven beam line, "TrentoLine" for the TIFPA beam line and "BESTBeamLine" for the beam line designed for the BEST company. +At the end of the beam line a phantom (a box of uniform material) is reproduced. Inside it, a user-defined region is divided into cubic and identical voxels. The voxel size can be varied as well as the voxelized region. +At the end of a simulation run, the dose deposited by primaries and secondaries in each voxel is collected. This information is available as an .out file. The default size of the active voxelized region is 40x40x40 mm and actually the default voxel configuration is 200 x 1 x 1, which means 200 slices with 0.2 mm of thickness. -Of course this default can be modified in order to obtain, for example, a matrix of 80x80x80 cubic voxels each with a lateral dimension of 0.5 mm. +Of course, this default can be modified in order to obtain, for example, a matrix of 80x80x80 cubic voxels each with a lateral dimension of 0.5 mm. Concerning the cut and stepMax values, the default configuration implies a cut value of 1 mm in the whole world (use the command /run/setCut in order to set the cut for all, and the command /run/setCutForRegion to set the cut for the desired volume () only) and a stepMax of 0.01 mm just in the phantom and in other volumes of the laser-driven beam line (use the command /Step/waterPhantomStepMax 0.01 mm). -In any case it is strongly recommended to use a stepMax value not bigger than 5% of the dose slice thickness. +In any case, it is strongly recommended to use a stepMax value not bigger than 5% of the dose slice thickness. THE PROTON PASSIVE LINE CLASS FILE +=================================================== -The following is the description of the elements of the passive proton beam line of the Laboratori Nazionali del Sud in Catania (I). This line is completely simulated inside this class. +The following is the description of the elements of the passive proton beam line of the INFN, Laboratori Nazionali del Sud in Catania (I). This line is completely simulated inside this class. The main elements are: * The SCATTERING SYSTEM: to transversally enlarge the original beam * The COLLIMATORS: placed along the beam line to collimate the beam; * The RANGE SHIFTERS: to decrease the energy of the primary proton beam to a specific value; - * The MODULATOR WHEEL: to modulate the energy of the primary and mono-energetic beam in to a wide spectrum. The energy modulation is necessary to homogeneously irradiate a tumour volume that can extends in depth up to 20 mm; - * The MONITOR CHAMBERS: very thin ionisation chamber that permit the dose monitoring during the patient irradiation; - * The MOPI detector: microstrips, air free detector utilised for the check of the beam symmetry during the treatment; - * The PATIENT COLLIMATOR: a brass, tumour-shaped collimator able to confine the proton irradiation field in order to irradiate just the tumour mass in the transverse direction; + * The MODULATOR WHEEL: to modulate the energy of the primary and mono-energetic beam into a wide spectrum. The energy modulation is necessary to homogeneously irradiate a tumour volume that can extend in depth up to 20 mm; + * The MONITOR CHAMBERS: very thin ionisation chamber that permits the dose monitoring during the patient irradiation; + * The MOPI detector: microstrips, air-free detector utilised for the check of the beam symmetry during the treatment; + * The PATIENT COLLIMATOR: a brass, tumour-shaped collimator able to confine the proton irradiation field to irradiate just the tumour mass in the transverse direction; -The user has the possibility to vary, via messenger, almost all the geometrical characteristics of the beam line elements (i.e. their position along the beam line, their thickness, etc.). +The user can vary, via messenger, almost all the geometrical characteristics of the beam line elements (i.e. their position along the beam line, their thickness, etc.). The elements simulated in the PassiveBeamLine.cc file are: @@ -152,58 +165,117 @@ The elements simulated in the PassiveBeamLine.cc file are: 2. A system of collimators, to avoid the scattering radiation; -3. A modulation system that spreads the beam in energy and produces the so-called spread out Bragg peak; It is constituted by a rotating wheel of different thicknesses. The wheel rotates around its axis (parallel to the proton beam axis) and its movement can be obtained by means of a messenger between runs. +3. A modulation system that spreads the beam in energy and produces the so-called spread-out Bragg peak; It is constituted by a rotating wheel of different thicknesses. The wheel rotates around its axis (parallel to the proton beam axis) and its movement can be obtained employing a messenger between runs. 4. A set of monitor chambers (special transmission ionization chambers used to control the particle flux during the irradiation); 5. A final long collimator and a patient collimator defining the final shape of the beam before reaching the patient. -6. A water phantom: it is a box of water where the dose deposit is calculated. The use of the water phantom is required by the international protocol on the measure of dose in the case of proton and ion beams (IAEA 398, 2000). +6. A water phantom: it is a box of water where the dose deposit is calculated. The use of the water phantom is required by the international protocol on the measure of dose in the case of proton and ion beams (IAEA 398, 2000). + +THE CARBON PASSIVE LINE CLASS FILE +=================================================== + +The PassiveCarbonBeamLine.cc class implements the Zero Degree (ZD) beamline installed at LNS-INFN and entirely dedicated to in-air irradiation with ion beams (Z > 1, E ≤ 80AMeV ). +The beam line is composed of an exit 50 um Kapton window which separates the in vacuum pipe from the in air section. The beam then hits a scattering system composed by a 20 um tantalum foil and a brass central stopper. Moreover, two different systems for the beam modulation energy are simulated reproducing the available systems at LNS-INFN: a ripple filter specifically designed for 62 AMeV carbon ion beams and a ridge filter designed for 62 AMeV helium and oxygen ion beams. A transmission monitor ionization chamber providing the on-line monitoring of the delivered dose is also simulated. +The final collimator system is then composed by a brass tube (50 cm long and 27 mm in diameter) and a brass collimator with a variable in diameter from a maximum of 27 mm to 1 mm. +RIDGE FILTER +The ridge filter consists in a 2D array of pins, whose the shape and the thickness is optimized to obtain the desired SOBP. +The developed and simulated ridge filter is composed of 900 pins, each having a square base of 1.7 x 1.7 mm2 and height of 4.72 mm. The material chosen for its realization was plastic (C21 O4 N24) with a density of 1.18 g/cm3. The filter was designed and produced thanks to a collaboration between the INFN-LNS group and the GSI, Darmstadt(D). The reconstruction of the ridge geometry was obtained by superimposed native structures (with a trapezoid shape) already presented in Geant4 (G4Trp). + +RIPPLE FILTERS +=================================================== + +Due to the native norrower bragg peak of carbon ions with respect to protons, a configuration with two ripple filters is the most suggested for realizing a SOBP. +This solution was adopted at the ZD beam line and implemented in the simulation to obtain a flat longitudinal dose profile with carbon ions: the first filter is positioned at 7 cm from the exit window and the second one at 10 cm from the first. A single structure has a triangular section with a thin base of plexiglass (200 mm x 200 mm x 0.3 mm) and a basis 3 mm in thickness. The material density is 1.19 g/cm3. + + +LASER DRIVEN PROTON BEAMLINE +=================================================== + +Nowadays a big effort is being devoted to optically accelerate charged particles. There are several ion acceleration regimes that are being discussed in literature, but up to now the most experimentally investigated is the Target Normal Sheath Acceleration (TNSA) one. +The beam transport and focusing as well as the energy selection of these laser produced beams represents one of the critical points in order to make such beams suitable for clinical applications. In fact, in contrast to conventional accelerators, the beams produced by high intensity laser-matter interaction are typically characterized by a wide angular divergence (for example ± 25 degrees) and a 100 % energy spread. +Moreover due to the high current, conventional dosimetric systems cannot be used during the experimental sections (saturation issues) and for this reason the faraday cup detector has been proposed as the elegible absolute dosimetric device. + +The following is the description of the elements of the laser-driven beam line. This line is completely simulated inside this class. + +The main elements are: + + * The QUADRUPOLES SYSTEM: made of four quadrupoles, to focus/defocus protons with a different energy; + * The COLLIMATORS: placed along the beam line to collimate the beam; + * The ENERGY SELECTOR SYSTEM: made of four dipoles, that provide the spatial separation of charged particles with different energies; + * The FARADAY CUP: that provide the charge measurement and the distribution of the secondary electrons; + +The user can have the possibility to vary, via messenger, many characteristics of the beam line elements (i.e. their position along the beam line, their thickness, etc.). + + - /LaserDriven/EnergySelector/Disable -> to disable the Energy Selector + + - /LaserDriven/EnergySelector/FirstCollimator/Radius -> to set the Radius of the first collimator + - /LaserDriven/EnergySelector/FirstCollimator/thickness -> to set the Thickness of the first collimator + - /LaserDriven/EnergySelector/FirstCollimator/zPosizion -> to set the position of the first collimator hole along the radial plane + + - /LaserDriven/EnergySelector/SecondCollimator/Radius -> to set the Radius of the second collimator + - /LaserDriven/EnergySelector/SecondCollimator/thickness -> to set the Thickness of the second collimator + - /LaserDriven/EnergySelector/SecondCollimator/zPosizion -> to set the position of the second collimator hole along the radial plane + + - /LaserDriven/EnergySelector/Slit/thickness -> to set the Thickness of the slit, maximum value 10mm for geometric constraintconstrain + - /LaserDriven/EnergySelector/Slit/HoleDimensionY -> to set the Y dimension of the Slit Hole + - /LaserDriven/EnergySelector/Slit/HoleDimensionZ -> to set the Z dimension of the Slit Hole + - /LaserDriven/EnergySelector/Slit/HolePositionZ -> to set the Slit hole position in the Z direction as respect the Slit body center + + - /LaserDriven/Quadrupoles/DisableQuad -> to disable the Quadrupole system PHYSICS PROCESSES AND PHYSICS MODELS IMPLEMENTATION +=================================================== - Physics models in 'hadrontherapy', following the Geant4 organization, can be definied using four different approaches: + Physics models in 'hadrontherapy', following the Geant4 organization, can be defined using four different approaches: -A particular care is addressed to the simulation of the physic processes. +Particular care is addressed to the simulation of the physics processes. Three different approaches can be used for the choose of the physic models. Approach 1: Using the macro command: /physic/addPhysics/. -In this case the models (for electromagnetic, hadronic elastic and hadronic inelastic) can be +In this case, the models (for electromagnetic, hadronic elastic and hadronic inelastic) can be activated directly calling the name of the Physics Lists that are available inside the Geant4 kernel in the directory: $G4INSTALL/source/physics_lists/builders/include An example of the use of the Physics List can be found in the macro files: -hadron_therapy.mac and carbon_beamline.mac +default_macro.mac and carbon_beamline.mac Approach 2: -A set of built-in physic models are also contained inside the 'hadrontherapy' directory. These -are called Local*.cc and Local*.hh and can be activated using the macro command: + +A set of built-in physic lists are also defined and included in the class HadrontherapyPhisicsList.cc and can be activated by macro command: + /physic/addPhysics/. -NOTE: we do not recommend the use of local physics lists while we recommend the use of the Physics Lists or of the Reference Physics Lists (Approach 1 or 3) +Two different physics lists can be selected using this approach: +- HADRONTHERAPY_1: include HP hadronic physics models +- HADRONTHERAPY_2: HP physics models are switched off Approach 3: We developed this approach in order to simplify the choice of the physic models to be used in the application. With this approach the user must only insert a command line in his/her .mac file using the: /physics/addPackage -This permits to switch-on an already build physic package. +This permits to switch-on an already built physics package. Various packages are already present in the Geant4 tree: they are in the directory: geant4/source/physics_lists/lists/include Approach 4: Directly call a reference physics list by setting the variable PHYSLIST. Ex.: export PHYSLIST=QGSP_BIC_EMY -and the export QGSP_BIC_EMY refernce physics list will be setted +and the export QGSP_BIC_EMY reference physics list will be setted + INTERACTIVE COMMANDS +=================================================== + How to change Phantom and Detector geometries -In order to let the user to change phantom and detector geometries and voxelization, some interactive commands have been provided. All parameters are mandatory, except those inside square brackets. +In order to let the user change phantom and detector geometries and voxelization, some interactive commands have been provided. All parameters are mandatory, except those inside square brackets. Detector geometry @@ -211,10 +283,10 @@ The user can change: (1) The detector (box) size. -(2) The voxels sizes. Changing this parameters, and/or the detector sizes, user should choose values in order to be divisors of the detector correspondent sizes. +(2) The voxels sizes. Changing these parameters, and/or the detector sizes, users should choose values in order to be divisors of the detector correspondent sizes. For both above commands, zero or negative values mean << don't change it >> -(3) The displacement between the phantom and the detector. Displacement parameters refer to the lower left corner of the detector respect to that of the phantom, by the point of view of the beam. In this case zero or positive values are allowed, while the negatives ones mean: << don't change it>>. +(3) The displacement between the phantom and the detector. Displacement parameters refer to the lower-left corner of the detector with respect to that of the phantom, by the point of view of the beam. In this case, zero or positive values are allowed, while the negatives ones mean: << don't change it>>. Command synopsis: @@ -222,14 +294,13 @@ Command synopsis: /changeDetector/voxelSize <[unit]> /changeDetector/displacement <[unit]> -Default size values are 4x4x4 cm for the detector, 0.2x40x40 mm for any voxel and 0x18x18 cm -for the displacement. +Default size values are 4x4x4 cm for the detector, 0.2x40x40 mm for any voxel and 0x18x18 cm for the displacement. where the X dimension is that along the beam direction Phantom geometry -(1) The phantom size. As usually, zero or negatives values mean: <>. -(2) The phantom position respect to the world. In this case specified values refer to the three components of the position of the phantom's center respect to the world's. +(1) The phantom size. As usually, zero or negative values mean: <>. +(2) The phantom position respects the world. In this case, specified values refer to the three components of the position of the phantom's centre respect to the world. Command synopsis: @@ -237,9 +308,9 @@ Command synopsis: /changePhantom/position <[unit]> # 20 0 0 cm All these commands must be followed by the command /changePhantom/update -in order to check and eventually apply changes to the real geometry. -Moreover they must be issued between runs (so where you want but after the /run/initialize initialization command, or the G4State_Idle Geant4 state machine). -Obviously all the previous sizes must be set in order to maintain the detector fully inside the phantom, otherwise system complains. +to check and eventually apply changes to the real geometry. +Moreover, they must be issued between runs (so where you want but after the /run/initialize initialization command, or the G4State_Idle Geant4 state machine). +Obviously, all the previous sizes must be set in order to maintain the detector fully inside the phantom, otherwise, the system will give an error message. Some examples follow: @@ -254,7 +325,7 @@ Obviously all the previous sizes must be set in order to maintain the detector f /changeDetector/size 0 8 0 cm # Will extend the Y size to 8 cm. In this case voxel size Y doesn't change, but -# the number of voxel along Y doubles. +# the number of voxels along Y doubles. /changePhantom/update /changeDetector/voxelSize 100 0 0 um @@ -268,7 +339,7 @@ Obviously all the previous sizes must be set in order to maintain the detector f Stopping powers calculation -It is possible for the end-user to calculate, via macro command, stopping powers only for those materials inserted into G4NistMaterialBuilder class (about 300). +The end-user can calculate, via macro command, stopping powers only for those materials inserted into G4NistMaterialBuilder class (about 300). To get stopping powers user must provide this command line on the idle interactive terminal (or into a macro file) : /parameter/getstopping <[particle]> <[output_filename]> @@ -280,7 +351,7 @@ Parameters are respectively: The material (NIST) name (something like G4_..., the complete list of elements and materials is available into the G4NistMaterialBuilder class and can be printed to the terminal screen via the macro command: /parameter/nist ) Kinetic energy range in MeV and the number of data points to be retrieved (in a logarithmically uniform space) -The particle name (proton, e+, e-, He3, neutron,... a full list can be gotten via the macro command: /particle/list). +The particle name (proton, e+, e-, He3, neutron,... a full list can be produced via the macro command: /particle/list). Currently, it does not work with ions. The output filename: if users leave this blank then the standard output is used. @@ -288,50 +359,84 @@ Below is an example in order to calculate the stopping power for alphas into Hyd /parameter/getstopping G4_H 0.001 150 15 alpha - GEANT4 GENERAL PARTICLE SOURCE +=================================================== -The General Particle Source (GPS, G4 class name: G4GeneralParticleSource) is in the current version of 'hadrontherapy': it enables the user to use standard energy, angular and spatial distributions. The GPS includes also methods to bias the sampling distribution. +The General Particle Source (GPS, G4 class name: G4GeneralParticleSource) is in the current version of 'hadrontherapy': it enables the user to use standard energy, angular and spatial distributions. The GPS also includes methods to bias the sampling distribution. -The G4GeneralParticleSource can be utilized by typing commands from the /gps command directory, or include the /gps commands in a g4macro file. +The G4GeneralParticleSource can be utilized by typing commands from the /gps command directory, or include the /gps commands in a macro file. +RADIOBIOLOGICAL QUANTITIES: DOSE, LET, RBE +=================================================== LET calculation -'hadrontherapy' application simulates and calculates the averaged dose LET. +'hadrontherapy' application simulates and calculates the averaged LET-dose and LET-track fully accounting for the contribution of secondary particles generated in the target fragmentation +Dependencies as respect to the transport parameters adopted during the Monte Carlo simulations as the production cut of secondaries particles, voxel size and the maximum steps length are minimized in the LET calculation. The first implementation of LET calculation adopted in hadrontherapy is reported in F. Romano et al.,(2014) Phys Med Biol 59(12): 2863–8. Now, in ‘hadrontherapy’ is implemented the approach reported in G. Petringa et al., (2020) Phys Med Bio. (DOI: 10.1088/1361-6560/abaeb9) At run time, data needed to calculate LET are collected. At the end of simulation, LET mean values are calculated and stored into a file. The Let.out file will be produced at the end of a run, where you can -find the dose average LET for each tracked particles (both primary and +find the dose and track average LET for each tracked particles (both primary and secondary ones) and the total mean LET. + The file is structured as follows: - - The first three columns contains the voxel indexes (first index "i" refers to the beam direction); - - The fourth and fifth columns contain respectively total mean dose LET and primary mean dose LET; - - The rest of columns contain LET Dose for each single ion (whose name is in the top row of the file). + - The first three columns contain the voxel indexes (first index "i" refers to the beam direction); + - The fourth and fifth columns contain respectively total mean dose LET (LDT) and total mean track LET (LTT) + - The rest of columns contain LET Dose and Track for each single ion (whose name is in the top row of the file). To activate the LET computation (HadrontherapyLet.cc), you have to execute the following command: +/analysis/secondary true /analysis/computeLet +RBE and Survival calculation +A method was developed to assess the biological damages produced by proton and ion beams in terms of survival fraction curves, i.e of the number of cells able to survive after the irradiation at different dose. The approach is based on the combined use of Monte Carlo Geant4 simulations (to calculate the doses deposited and the energy spectra of particles interacting with cells) and of the Survival analytical code (Manganaro L, Russo G, et al. Survival: a simulation toolkit introducing a modular approach for radiobiological evaluations in ion beam therapy. Phys. Med. Biol. 2018;63(8). 08–01). +The Monte Carlo simulations permit the calculation of the Edep and Ekin distributions that, coupled with the radiobiological response model, allow the final and calculation of a survival curve. +The kinetic energy and the LET value of any primary ion and of the secondaries generated in each slice of the simulated water phantom are retrieved at each simulation step. The corresponding values of αi and βi, for each specific ion i with a kinetic energy Ei and a released dose Di, are then calculated by direct linear interpolation of the Look-up-tables provided by the Survival analytical code. +(G.Petringa et al., Physica Medica 58 (2019) 72–80) + +The AlphaAndBeta.out and RBE.out files are produced at the end of the run. +AlphaAndBeta.out contains the average alpha (first column) and beta (second column) parameters calculated for each slice (third column). + +RBE.out contains the following quantities: +Dose (Gy): the physical dose; +ln(S): the natural log of the Survival Fraction; +Survival Fraction; +DoseB (Gy): the biological dose; +RBE: relative biological effectiveness; +depth (slice): n. of the slice; + +To activate the RBE computation (HadrontherapyRBEcc), you have to execute +the following command: + +#you can choose the verbosity level +/rbe/verbose 2 + +#you have to indicate the name of the LUT inside the rbe folder +/rbe/loadLemTable data/rbe/lem.csv + +/rbe/calculation 1 +/rbe/accumulate 1 + +#you have to indicate the name of the cell line +/rbe/cellLine ARPE19 +/rbe/doseScale 7777770 SIMULATION OUTPUT +=================================================== Store results in an ASCII file A .out ASCII file is generated at the end of each run, Dose.out is its default name that can be changed in the HadrontherapyMatrix.cc file. -The file contains four columns; the first three columns represent the voxel indexes (that univocally identify the voxel volume), while the last column represents the dose deposited in that given voxel. -Alternatively, user can force store of data to a given filename, after any BeamOn command and before the program end, by the macro command /analysis/writeDoseFile . +The file contains four columns; the first three columns represent the voxel indexes (that unequivocally identify the voxel volume), while the last column represents the dose deposited in that given voxel. +Alternatively, users can force the store of data to a given filename, after any BeamOn command and before the program ends, by the macro command /analysis/writeDoseFile . Moreover, if the macro command /analysis/secondary is given, before the BeamOn command, ordinated dose and fluence, for every secondary produced, is added to the file. -If the macro command /analysis/computeLet is given, an the ascii file Let.out is written, with the dose average LET computations. +If the macro command /analysis/computeLet is given, and the ascii file Let.out is written, with the dose and track average LET computations. -User must take care that any change of the phantom geometry will clear all dose data. - -Setting the name of the ROOT output file - -By default the name of the ROOT output file is DoseDistribution.root. The name of the file can be set by using the macro command: analysis/setAnalysisFile +Users must take care that any change of the phantom geometry will clear all dose data. It is also possible to create multiple new output files in the same simulation session. For example: @@ -345,56 +450,6 @@ It is also possible to create multiple new output files in the same simulation s /run/beamOn 1000 /analysis/writeDoseFile secondRun.out -Use of the ROOT analysis - -It is possible to use ROOT data analysis package directly for the production of output files. -In the last version, anyway, this functionality must be implemented by User. This can be accomplished by setting an ad-hoc environment variable (i.e. G4ANALYSIS_USE_ROOT) to 1, adding in the code lines to create outputs with the ROOT libraries and recompiling the application. -In this case you must have the ROOT framework installed in your machine. - -Warning: If you plan to use ROOT analysis, please avoid compiling in the multi-threaded mode as the the ROOT library is not thread-safe. -In the next release, we plan to base the whole analysis on g4tools which will solve this issue an MT will be safe to use. - -LASER DRIVEN PROTON BEAMLINE - -Nowadays a big effort is being devoted for optically accelerated charged particles. There are several ion acceleration regimes that are being discussed in literature, but up to now the most experimentally investigated is the Target Normal Sheath Acceleration (TNSA) one. -The beam transport and focusing as well as the energy selection of these laser produced beams represents one of the critical points in order to make such kind of beams suitable for clinical applications. In fact, in contrast to conventional accelerators, the beams produced by high intensity laser-matter interaction are typically characterized by a wide angular divergence (for example ± 25 degrees) and a 100 % energy spread. -Moreover due to the high current, conventional dosimetric system cannot be used during the experimental sections (saturation issues) and for this reason the faraday cup detector has been proposed as the elegible absolute dosimetric device. - -The following is the description of the elements of the laser-driven beam line. This line is completely simulated inside this class. - -The main elements are: - - * The QUADRUPOLES SYSTEM: made of four quadrupoles, to focus/defocus protons with different energy; - * The COLLIMATORS: placed along the beam line to collimate the beam; - * The ENERGY SELECTOR SYSTEM: made of four dipoles, that provide the spatial separation of charged particles with different energies; - * The FARADAY CUP: that provide the charge measurement and the distribution of the secondary electrons; - -The user has the possibility to vary, via messenger, many characteristics of the beam line elements (i.e. their position along the beam line, their thickness, etc.). - - - /LaserDriven/EnergySelector/Disable -> to disable the Energy Selector - - - /LaserDriven/EnergySelector/FirstCollimator/Radius -> to set the Radius of the first collimator - - /LaserDriven/EnergySelector/FirstCollimator/thickness -> to set the Thickness of the first collimator - - /LaserDriven/EnergySelector/FirstCollimator/zPosizion -> to set the position of the first collimator hole along the radial plane - - - /LaserDriven/EnergySelector/SecondCollimator/Radius -> to set the Radius of the second collimator - - /LaserDriven/EnergySelector/SecondCollimator/thickness -> to set the Thickness of the second collimator - - /LaserDriven/EnergySelector/SecondCollimator/zPosizion -> to set the position of the second collimator hole along the radial plane - - - /LaserDriven/EnergySelector/Slit/thickness -> to set the Thickness of the slit, maximum value 10mm for geometric constrain - - /LaserDriven/EnergySelector/Slit/HoleDimensionY -> to set the Y dimension of the Slit Hole - - /LaserDriven/EnergySelector/Slit/HoleDimensionZ -> to set the Z dimension of the Slit Hole - - /LaserDriven/EnergySelector/Slit/HolePositionZ -> to set the Slit hole position in the Z direction as respect the Slit body center - - - /LaserDriven/Quadrupoles/DisableQuad -> to disable the Quadrupole system +Please contact cirrone@lns.infn.it for more details or suggestions and feedback on this document. -FUTURE CHALLENGES AND USERS' REQUESTS - -This is a list of future components and feature that will be added in 'hadrontherapy' and of main Users requests that we hope to fulfill in the next future. - -- A module for the RBE (Relative Biological Effectiveness) calculation will be also delivered. The Catania Group in Collaboration with the Turin one is working on this. This module is already implemented (in a preliminary version) in an internal version of 'hadrontherapy' and can be provided, if requested. Please, contact us. - -- A g4tools-compatible ROOT output from HadrontherapyAnalysisManager. - -Please contact cirrone@lns.infn.it or francesco.romano@lns.infn.it for more details or suggestions and feedbacks on this document. diff --git a/examples/advanced/hadrontherapy/data/rbe/lem1.csv b/examples/advanced/hadrontherapy/data/rbe/lem1.csv old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/hadrontherapy.cc b/examples/advanced/hadrontherapy/hadrontherapy.cc index 0128a73b2e..676fc901b9 100644 --- a/examples/advanced/hadrontherapy/hadrontherapy.cc +++ b/examples/advanced/hadrontherapy/hadrontherapy.cc @@ -87,14 +87,7 @@ #include "G4ParallelWorldPhysics.hh" #include #include "G4Timer.hh" - -//************************MT********************* -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif - +#include "G4RunManagerFactory.hh" #include "HadrontherapyActionInitialization.hh" #include "G4VisExecutive.hh" @@ -119,16 +112,13 @@ int main(int argc ,char ** argv) // in multithread CLHEP::RanluxEngine defaultEngine( 1234567, 4 ); G4Random::setTheEngine( &defaultEngine ); - G4int seed = time( NULL ); + G4int seed = (G4int) time( NULL ); G4Random::setTheSeed( seed ); - -#ifdef G4MULTITHREADED - - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif - + + auto* runManager = G4RunManagerFactory::CreateRunManager(); + G4int nThreads = 4; + runManager->SetNumberOfThreads(nThreads); + // Geometry controller is responsible for instantiating the // geometries. All geometry specific m tasks are now in class // HadrontherapyGeometryController. diff --git a/examples/advanced/hadrontherapy/include/BESTPassiveProtonBeamLine.hh b/examples/advanced/hadrontherapy/include/BESTPassiveProtonBeamLine.hh new file mode 100644 index 0000000000..a075cbce0b --- /dev/null +++ b/examples/advanced/hadrontherapy/include/BESTPassiveProtonBeamLine.hh @@ -0,0 +1,275 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Hadrontherapy advanced example for Geant4 +// See more at: https://twiki.cern.ch/twiki/bin/view/Geant4/AdvancedExamplesHadrontherapy + +#ifndef BESTPassiveProtonBeamLine_H +#define BESTPassiveProtonBeamLine_H 1 + +#include "globals.hh" +#include "G4VUserDetectorConstruction.hh" +#include "G4Box.hh" +#include "G4Tubs.hh" +#include "G4VisAttributes.hh" +#include "G4LogicalVolume.hh" + +class G4VPhysicalVolume; +class HadrontherapyDetectorConstruction; +class HadrontherapyModulator; +class BESTPassiveProtonBeamLineMessenger; +class HadrontherapyDetectorROGeometry; + +class BESTPassiveProtonBeamLine : public G4VUserDetectorConstruction +{ +public: + + BESTPassiveProtonBeamLine(); + ~BESTPassiveProtonBeamLine(); + // static G4bool doCalculation; + + G4VPhysicalVolume* Construct(); + //***************************** PW **************NON SERVE************************* + + static BESTPassiveProtonBeamLine* GetInstance(); + + //***************************** PW **************NON SERVE************************* + + void BESTBeamLineSupport(); + // Definition of the beam line support + + void BESTBeamScatteringFoils(); + // Definition of the first scattering foil, + // of the Kapton window, of the stopper + + void BESTRangeShifter(); + // This defines the "range shifter". Is is a slab + // (usually of PMMA" acting as energy degrader + // of primary beam + + void BESTBeamCollimators(); + // Definition of the first collimator, of the range shifter, + // of the second collimator, of the first and second + // collimator modulators + + void BESTBeamMonitoring(); + // Definition of three monitor chambers + + + void BESTBeamNozzle(); + // Definition of the beam noozle + + void BESTBeamFinalCollimator(); + // Definition of the final collimator + + // The following methods allow to change parameters + // of some beam line components + + void SetRangeShifterXSize(G4double halfSize); + // This method allows to change the size of the range shifter along + // the X axis + + void SetFirstScatteringFoilXSize(G4double); + // This method allows to change the size of the first scattering foil + // along the X axis + + void SetSecondScatteringFoilXSize(G4double); + // This method allows to change the size of the second scattering foil + // along the X axis + + void SetOuterRadiusStopper(G4double); + // This method allows to change the size of the outer radius of the stopper + + void SetInnerRadiusFinalCollimator(G4double); + // This method allows to change the size of the inner radius of the + // final collimator + + void SetRSMaterial(G4String); + // This method allows to change the material + // of the range shifter + + void SetModulatorAngle(G4double angle); + // This method allows moving the modulator through UI commands + + +private: + static BESTPassiveProtonBeamLine* instance; + //passive proton line dimensions + void SetDefaultDimensions(); + void ConstructBESTPassiveProtonBeamLine(); + + HadrontherapyModulator* modulator; // Pointer to the modulator + // geometry component + BESTPassiveProtonBeamLineMessenger* passiveMessenger; + G4VPhysicalVolume* physicalTreatmentRoom; + HadrontherapyDetectorConstruction* hadrontherapyDetectorConstruction; + + + G4Material* kapton; + + G4double BESTvacuumZoneXSize; + G4double BESTvacuumZoneYSize; + G4double BESTvacuumZoneZSize; + G4double BESTvacuumZoneXPosition; + + G4double BESTfirstScatteringFoilXSize; + G4double BESTfirstScatteringFoilYSize; + G4double BESTfirstScatteringFoilZSize; + G4double BESTfirstScatteringFoilXPosition; + + G4double BESTkaptonWindowXSize; + G4double BESTkaptonWindowYSize; + G4double BESTkaptonWindowZSize; + G4double BESTkaptonWindowXPosition; + + G4double BESTinnerRadiusStopper; + G4double BESTheightStopper; + G4double BESTstartAngleStopper; + G4double BESTspanningAngleStopper; + G4double BESTstopperXPosition; + G4double BESTstopperYPosition; + G4double BESTstopperZPosition; + G4double BESTouterRadiusStopper; + + G4double BESTsecondScatteringFoilXSize; + G4double BESTsecondScatteringFoilYSize; + G4double BESTsecondScatteringFoilZSize; + G4double BESTsecondScatteringFoilXPosition; + G4double BESTsecondScatteringFoilYPosition; + G4double BESTsecondScatteringFoilZPosition; + + G4double BESTrangeShifterXSize; + G4double BESTrangeShifterYSize; + G4double BESTrangeShifterZSize; + G4double BESTrangeShifterXPosition; + G4double BESTrangeShifterYPosition; + G4double BESTrangeShifterZPosition; + + + G4VPhysicalVolume* physiBeamLineSupport; + G4VPhysicalVolume* physiBeamLineCover; + G4VPhysicalVolume* physiBeamLineCover2; + G4Box* BESTfirstScatteringFoil; + G4VPhysicalVolume* physiBESTFirstScatteringFoil; + G4VPhysicalVolume* physiBESTKaptonWindow; + + G4Tubs* solidBESTStopper; + G4VPhysicalVolume* physiBESTStopper; + G4LogicalVolume* logicBESTStopper; + + G4Box* BESTsecondScatteringFoil; + G4VPhysicalVolume* physiBESTSecondScatteringFoil; + G4VPhysicalVolume* physiBESTFirstCollimator; + G4VPhysicalVolume* physiBESTHoleFirstCollimator; + G4Box* solidBESTRangeShifterBox; + G4LogicalVolume* logicBESTRangeShifterBox; + G4VPhysicalVolume* physiBESTRangeShifterBox; + G4VPhysicalVolume* physiBESTSecondCollimator; + G4VPhysicalVolume* physiBESTHoleSecondCollimator; + + G4VPhysicalVolume* physiBESTFirstCollimatorModulatorBox; + G4VPhysicalVolume* physiBESTHoleFirstCollimatorModulatorBox; + + G4VPhysicalVolume* physiBESTSecondCollimatorModulatorBox; + G4VPhysicalVolume* physiBESTHoleSecondCollimatorModulatorBox; + + G4double BESTinnerRadiusFinalCollimator; + G4VPhysicalVolume* mother; + + +G4VPhysicalVolume* chamberPhys; + G4VPhysicalVolume*innerchamberPhys; + G4VPhysicalVolume*enterWindowPhys; + G4VPhysicalVolume*enterElectrodePhys; + G4VPhysicalVolume* kaptonLayerPhys1; + G4VPhysicalVolume*copperLayerPhys1; + G4VPhysicalVolume*nickelLayerPhys1; + G4VPhysicalVolume*fFirstCavityPhys; + G4VPhysicalVolume*centralElectrode1Phys; + G4VPhysicalVolume*centralWindowPhys; + G4VPhysicalVolume*centralElectrode2Phys; +G4VPhysicalVolume*fSecondCavityPhys; + G4VPhysicalVolume*exitElectrodePhys; + G4VPhysicalVolume* kaptonLayerPhys2; + G4VPhysicalVolume*copperLayerPhys2; + G4VPhysicalVolume*nickelLayerPhys2; + +G4VPhysicalVolume* exitWindowPhys; + + G4Material* CopperLayerMaterial; + G4Material* NichelLayerMaterial; + G4Material* KaptonLayerMaterial; + G4Material* WindowMaterial; + G4Material* CentralWindowMaterial; + G4Material* wallMaterial; + G4Material* ElectrodeMaterial; + G4Material* CavityMaterial; + + + G4VPhysicalVolume* physiNozzleSupport; + G4VPhysicalVolume* physiHoleNozzleSupport; + G4VPhysicalVolume* physiBrassTube; + G4VPhysicalVolume* physiBrassTube2; + G4VPhysicalVolume* physiBrassTube3; + G4Tubs* solidFinalCollimator; + G4VPhysicalVolume* physiFinalCollimator; + + G4VisAttributes* blue; + G4VisAttributes* gray; + G4VisAttributes* white; + G4VisAttributes* red; + G4VisAttributes* yellow; + G4VisAttributes* green; + G4VisAttributes* darkGreen; + G4VisAttributes* darkOrange3; + G4VisAttributes* skyBlue; + + G4Material* rangeShifterMaterial; + G4Material* beamLineSupportMaterial; + G4Material* vacuumZoneMaterial; + G4Material* firstScatteringFoilMaterial; + G4Material* kaptonWindowMaterial; + G4Material* stopperMaterial; + G4Material* secondScatteringFoilMaterial; + G4Material* firstCollimatorMaterial; + G4Material* holeFirstCollimatorMaterial; + G4Material* modulatorBoxMaterial; + G4Material* holeModulatorBoxMaterial; + + + G4Material* nozzleSupportMaterial; + G4Material* holeNozzleSupportMaterial; + + G4Material* brassTubeMaterial; + G4Material* brassTube2Material; + G4Material* brassTube3Material; + G4Material* finalCollimatorMaterial; + + + HadrontherapyDetectorROGeometry* RO; + + +}; +#endif diff --git a/examples/advanced/hadrontherapy/include/BESTPassiveProtonBeamLineMessenger.hh b/examples/advanced/hadrontherapy/include/BESTPassiveProtonBeamLineMessenger.hh new file mode 100644 index 0000000000..c80edce4db --- /dev/null +++ b/examples/advanced/hadrontherapy/include/BESTPassiveProtonBeamLineMessenger.hh @@ -0,0 +1,107 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Hadrontherapy advanced example for Geant4 +// See more at: https://twiki.cern.ch/twiki/bin/view/Geant4/AdvancedExamplesHadrontherapy + +#ifndef PassiveProtonBeamLineMessenger_h +#define PassiveProtonBeamLineMessenger_h 1 + +#include "globals.hh" +#include "G4UImessenger.hh" + + +class BESTPassiveProtonBeamLine; +class G4UIdirectory; +class G4UIcmdWithADoubleAndUnit; +class G4UIcmdWithAString; + +class BESTPassiveProtonBeamLineMessenger: public G4UImessenger +{ + public: + BESTPassiveProtonBeamLineMessenger(BESTPassiveProtonBeamLine*); + ~BESTPassiveProtonBeamLineMessenger(); + + void SetNewValue(G4UIcommand*, G4String); + +private: + + // Pointer to the detector component + BESTPassiveProtonBeamLine* passiveProton; + + G4UIdirectory* changeTheBeamLineDir; + G4UIcmdWithAString* changeTheBeamLineNameCmd; // Control the name of the beam line + + G4UIdirectory* modulatorDir; // Control of the modulator + G4UIdirectory* beamLineDir; // Control of the beam line + + G4UIdirectory* rangeShifterDir; + // Control of the range shifter component of the beam line + + G4UIdirectory* firstScatteringFoilDir; + // Control of the first scattering foil component of the beam line + + G4UIdirectory* secondScatteringFoilDir; + // Control of the first scattering foil component of the beam line + + G4UIdirectory* rangeStopperDir; + // Control of the range stopper component of the beam line + + G4UIdirectory* finalCollimatorDir; + // Control of the final collimator component of the beam line + + G4UIcmdWithADoubleAndUnit* modulatorAngleCmd; + // UI command to rotate the modulator wheel + + G4UIcmdWithAString* rangeShifterMatCmd; + // UI command to set the material of the rangeShifter component of + // the beam line + + G4UIcmdWithADoubleAndUnit* rangeShifterXSizeCmd; + // UI command to set half of the X size of the rangeShifter component of + // the beam line + + G4UIcmdWithADoubleAndUnit* rangeShifterXPositionCmd; + // UI command to change the X position of the rangeShifter component of + // the beam line + + G4UIcmdWithADoubleAndUnit* firstScatteringFoilXSizeCmd; + // UI command to set half X size of the first scattering foil of + // the beam line + + G4UIcmdWithADoubleAndUnit* secondScatteringFoilXSizeCmd; + // UI command to set half X size of the second scattering foil + // the beam line + + G4UIcmdWithADoubleAndUnit* outerRadiusStopperCmd; + // UI command to set the outer radius of the range stopper component of + // the beam line + + G4UIcmdWithADoubleAndUnit* innerRadiusFinalCollimatorCmd; + // UI command to set the inner radius of the final collimator component of + // the beam line +}; +#endif + diff --git a/examples/advanced/hadrontherapy/include/Decay.hh b/examples/advanced/hadrontherapy/include/Decay.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/include/HadrontherapyElectricTabulatedField3D.hh b/examples/advanced/hadrontherapy/include/HadrontherapyElectricTabulatedField3D.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/include/HadrontherapyEventActionMessenger.hh b/examples/advanced/hadrontherapy/include/HadrontherapyEventActionMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/include/HadrontherapyInteractionParameters.hh b/examples/advanced/hadrontherapy/include/HadrontherapyInteractionParameters.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/include/HadrontherapyParameterMessenger.hh b/examples/advanced/hadrontherapy/include/HadrontherapyParameterMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/include/HadrontherapyPrimaryGeneratorAction.hh b/examples/advanced/hadrontherapy/include/HadrontherapyPrimaryGeneratorAction.hh index f711dae43d..f86faa8250 100644 --- a/examples/advanced/hadrontherapy/include/HadrontherapyPrimaryGeneratorAction.hh +++ b/examples/advanced/hadrontherapy/include/HadrontherapyPrimaryGeneratorAction.hh @@ -31,48 +31,33 @@ #include "G4VUserPrimaryGeneratorAction.hh" #include "globals.hh" -#include "HadrontherapyPrimaryGeneratorMessenger.hh" #include "G4RunManager.hh" #include "G4ParticleGun.hh" class G4GeneralParticleSource; -class G4Event; - class HadrontherapyPrimaryGeneratorMessenger; + class HadrontherapyPrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction { - public: - HadrontherapyPrimaryGeneratorAction(); - ~HadrontherapyPrimaryGeneratorAction(); +public: + HadrontherapyPrimaryGeneratorAction(); + ~HadrontherapyPrimaryGeneratorAction(); - public: - // Methods to change the parameters of primary particle generation - // interactively - void GeneratePrimaries(G4Event*); - static G4bool ReadFile; +public: + // Methods to change the parameters of primary particle generation + // interactively + void GeneratePrimaries(G4Event*); + inline void setNewSource(G4bool Varbool){fNewSource= Varbool;}; + inline void setCalculatedPhaseSpaceFileIN(G4String val){calculatedPhaseSpaceFileIN=val;} - inline void setNewSource(G4bool Varbool){NewSource= Varbool;}; - G4String PathSource; - G4bool Readfile; - G4bool NewSource; - inline void setCalculatedPhaseSpaceFileIN(G4String val){calculatedPhaseSpaceFileIN=val;} - - - private: - void SetDefaultPrimaryParticle(); - - - G4String calculatedPhaseSpaceFileIN; - void setGunCalculatedPhaseSpace(); - - HadrontherapyPrimaryGeneratorMessenger *PrimaryGeneratorMessenger; - G4ParticleGun *particleGuns; - - - private: - G4GeneralParticleSource* particleGun; - G4double sigmaX; - std::ofstream ofs; +private: + // void SetDefaultPrimaryParticle(); + G4bool fNewSource; + G4String calculatedPhaseSpaceFileIN; + void setGunCalculatedPhaseSpace(); + + HadrontherapyPrimaryGeneratorMessenger *PrimaryGeneratorMessenger; + G4GeneralParticleSource* particleGun; }; diff --git a/examples/advanced/hadrontherapy/include/HadrontherapyRBE.hh b/examples/advanced/hadrontherapy/include/HadrontherapyRBE.hh old mode 100755 new mode 100644 index 0d7a794bcb..40641543b1 --- a/examples/advanced/hadrontherapy/include/HadrontherapyRBE.hh +++ b/examples/advanced/hadrontherapy/include/HadrontherapyRBE.hh @@ -114,9 +114,9 @@ public: void StoreRBE(); // Information about voxels - size_t GetNumberOfVoxelsAlongX() const { return fNumberOfVoxelsAlongX; } - size_t GetNumberOfVoxelsAlongY() const { return fNumberOfVoxelsAlongY; } - size_t GetNumberOfVoxelsAlongZ() const { return fNumberOfVoxelsAlongZ; } + G4int GetNumberOfVoxelsAlongX() const { return fNumberOfVoxelsAlongX; } + G4int GetNumberOfVoxelsAlongY() const { return fNumberOfVoxelsAlongY; } + G4int GetNumberOfVoxelsAlongZ() const { return fNumberOfVoxelsAlongZ; } // Some basic output to the screen void PrintParameters(); diff --git a/examples/advanced/hadrontherapy/include/HadrontherapyRBEAccumulable.hh b/examples/advanced/hadrontherapy/include/HadrontherapyRBEAccumulable.hh old mode 100755 new mode 100644 index 35ff834cad..ae150ba038 --- a/examples/advanced/hadrontherapy/include/HadrontherapyRBEAccumulable.hh +++ b/examples/advanced/hadrontherapy/include/HadrontherapyRBEAccumulable.hh @@ -88,11 +88,16 @@ private: // How many voxels do we have? // ...along each axis - size_t fVoxelsAlongX; - size_t fVoxelsAlongY; - size_t fVoxelsAlongZ; + G4int fVoxelsAlongX; + G4int fVoxelsAlongY; + G4int fVoxelsAlongZ; + // ...and in total size_t fVoxels; + + + + }; #endif // HADRONTHERAPYRBEACCUMULABLE_HH diff --git a/examples/advanced/hadrontherapy/include/HadrontherapyTIFPAPassiveProtonBeamLineMessenger.hh b/examples/advanced/hadrontherapy/include/HadrontherapyTIFPAPassiveProtonBeamLineMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/include/PassiveCarbonBeamLine.hh b/examples/advanced/hadrontherapy/include/PassiveCarbonBeamLine.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/include/PassiveCarbonBeamLineMessenger.hh b/examples/advanced/hadrontherapy/include/PassiveCarbonBeamLineMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/include/PassiveProtonBeamLineMessenger.hh b/examples/advanced/hadrontherapy/include/PassiveProtonBeamLineMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/macro/BESTBeamLine.mac b/examples/advanced/hadrontherapy/macro/BESTBeamLine.mac new file mode 100644 index 0000000000..abf598a8fa --- /dev/null +++ b/examples/advanced/hadrontherapy/macro/BESTBeamLine.mac @@ -0,0 +1,157 @@ +############################## +####### BEST BEAM LINE ####### +############################## +# Set of the verboses +# +/control/verbose 1 +/tracking/verbose 0 +/run/verbose 1 +/event/verbose 0 + +########################## +# Set of the physic models +# +/Physics/addPhysics QGSP_BIC_EMY +/run/numberOfThreads 16 + +######## Geometry selection ####### +/geometrySetup/selectGeometry BESTBeamLine + +########################## +# Initialisation procedure +# +/run/initialize + +######################### +# Set the primary particle type, +# energy and position along the X direction +# +#---------------------------gps----------------- +####### BEST beam parameters ####### +/gps/pos/shape Circle +/gps/pos/centre -310. 0. 0. cm +/gps/pos/radius 0. mm +/gps/pos/sigma_r 3. mm +/gps/particle proton +/gps/pos/type Beam + + +# the incident surface is in the y-z plane + +/gps/pos/rot1 0 1 0 +/gps/pos/rot2 0 0 1 + +# the beam is travelling along the x-axis without any angular dispersion (angular despersion set to 0.0) +# + +/gps/ang/rot1 0 0 1 +/gps/ang/rot2 0 1 0 +/gps/ang/type beam1d +/gps/ang/sigma_r 0.16 deg + + +# the beam energy is in gaussian profile +# +/gps/ene/type Gauss +/gps/ene/mono 70 MeV +/gps/ene/sigma 0.3 MeV + + +######## Range shifter settings ######### +#/beamLine/BESTRangeShifter/RSMat G4_PLEXIGLASS +#/beamLine/BESTRangeShifter/thickness 13 mm +/beamLine/BESTFinalCollimator/halfInnerRad 12.5 mm + +########################## +# Set here the cut and the step max for the tracking. +# Suggested values of cut and step: +# Set cuts OUTSIDE the detector +# +/run/setCut 1 m + + + +# Set cuts ONLY inside the detector +# +/run/setCutForRegion DetectorLog 0.05 mm + +/Step/waterPhantomStepMax 1 mm + +######################### +############################################################################################################################## +# DETECTOR DESCRIPTION +################################################### +# USE THE FOLLOWING FOUR LINES FOR DEFINITION OF PHANTOM +################################################### +# +#/changePhantom/position 20. 0. 0. cm +#/changePhantom/update + +/changePhantom/size 40 40 40 cm +/changePhantom/position 20 0 0 cm + +################################################### +# USE THE FOLLOWING FOR A VOXELLIZED DETECTOR +################################################### +# + + +/changeDetector/size 4 1 1 cm +/changeDetector/voxelSize .1 10 10 mm + +# Put the detector in the lower left corner of the phantom +# +/changeDetector/displacement 0 19.5 19.5 cm +/changePhantom/update + + +# Visualisation +# +#/vis/scene/create +#/vis/open OGL +#/vis/viewer/flush +#/vis/viewer/set/viewpointThetaPhi 30 140 deg +#/vis/viewer/zoomTo 1 +#/vis/viewer/panTo 100 20 cm +#/vis/viewer/panTo -10 0 cm +#/vis/scene/add/trajectories +#/tracking/storeTrajectory 1 +#/vis/scene/endOfEventAction accumulate -1 +#/vis/viewer/update + +######################### +# Display the event number +# during the run +# +/event/printEventNumber 1 +/run/printProgress 1000 + +# Default material is liquid water (G4_WATER) +#/changePhantom/material G4_Pb + +/run/setCutForRegion DetectorLog 0.1 mm + + +/run/setCutForAGivenParticle e- 0.1 mm +/run/setCutForAGivenParticle e+ 0.1 mm +/run/setCutForAGivenParticle proton 0.1 mm + +# For dose/fleunce computation of primary and secondary particles +#/analysis/secondary true + +# For dose average LET computations of primary and secondary particles# + +/analysis/computeLet + +####### Dose scorer at the isocentre ####### +/score/create/boxMesh detector +/score/mesh/boxSize 1 20 20 mm +/score/mesh/nBin 1 80 80 +/score/mesh/translate/xyz 0.5 0 0 mm +/score/quantity/doseDeposit dose_detector +/score/close + +/run/beamOn 100 +######################### + +/score/dumpQuantityToFile detector dose_detector dose_70Mev.txt diff --git a/examples/advanced/hadrontherapy/macro/carbon_beamline.mac b/examples/advanced/hadrontherapy/macro/carbon_beamline.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/macro/laserDrivenBeamline.mac b/examples/advanced/hadrontherapy/macro/laserDrivenBeamline.mac index 4f4e8f1952..a4476c539a 100644 --- a/examples/advanced/hadrontherapy/macro/laserDrivenBeamline.mac +++ b/examples/advanced/hadrontherapy/macro/laserDrivenBeamline.mac @@ -49,19 +49,19 @@ #/gps/ang/maxtheta .1 deg ################### the beam energy is uniform profile from 4.0 MeV to 12 MeV -/gps/ene/type User -/gps/ene/type User -/gps/hist/type energy -/gps/hist/point 4.000001 0 -/gps/hist/point 12. 1 -/gps/direction 1 0 0 +#/gps/ene/type User +#/gps/ene/type User +#/gps/hist/type energy +#/gps/hist/point 4.000001 0 +#/gps/hist/point 12. 1 +#/gps/direction 1 0 0 ##################################################################### # TARANIS energy spectrum without angular dipendence: exp(-.44E) for energy between 1. to 12 MeV -###/gps/ene/type Exp -###/gps/ene/min 1. MeV -###/gps/ene/max 12. MeV -###/gps/ene/ezero 2.272727273 +/gps/ene/type Exp +/gps/ene/min 1. MeV +/gps/ene/max 12. MeV +/gps/ene/ezero 2.272727273 ###################################################################### ###/vis/scene/create diff --git a/examples/advanced/hadrontherapy/src/BESTPassiveProtonBeamline.cc b/examples/advanced/hadrontherapy/src/BESTPassiveProtonBeamline.cc new file mode 100644 index 0000000000..0e424e78c7 --- /dev/null +++ b/examples/advanced/hadrontherapy/src/BESTPassiveProtonBeamline.cc @@ -0,0 +1,1313 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Hadrontherapy advanced example for Geant4 +// See more at: https://twiki.cern.ch/twiki/bin/view/Geant4/AdvancedExamplesHadrontherapy + +#include "globals.hh" +#include "G4SystemOfUnits.hh" +#include "G4Box.hh" +#include "G4Tubs.hh" +#include "G4VisAttributes.hh" +#include "G4Colour.hh" +#include "G4RunManager.hh" +#include "G4LogicalVolume.hh" +#include "G4PVPlacement.hh" +#include "G4RotationMatrix.hh" +#include "G4NistManager.hh" +#include "G4NistElementBuilder.hh" +#include "HadrontherapyDetectorConstruction.hh" +#include "HadrontherapyModulator.hh" +#include "BESTPassiveProtonBeamLine.hh" +#include "BESTPassiveProtonBeamLineMessenger.hh" + + +//G4bool PassiveProtonBeamLine::doCalculation = false; +///////////////////////////////////////////////////////////////////////////// +BESTPassiveProtonBeamLine::BESTPassiveProtonBeamLine(): +modulator(0), physicalTreatmentRoom(0),hadrontherapyDetectorConstruction(0), +physiBeamLineSupport(0), physiBeamLineCover(0), physiBeamLineCover2(0), +BESTfirstScatteringFoil(0), physiBESTFirstScatteringFoil(0), physiBESTKaptonWindow(0), +solidBESTStopper(0), physiBESTStopper(0), BESTsecondScatteringFoil(0), physiBESTSecondScatteringFoil(0), +physiBESTFirstCollimator(0), solidBESTRangeShifterBox(0), logicBESTRangeShifterBox(0), +physiBESTRangeShifterBox(0), physiBESTSecondCollimator(0), physiBESTFirstCollimatorModulatorBox(0), +physiBESTHoleFirstCollimatorModulatorBox(0), physiBESTSecondCollimatorModulatorBox(0), +physiBESTHoleSecondCollimatorModulatorBox(0), +chamberPhys(0),innerchamberPhys(0),enterWindowPhys(0),enterElectrodePhys(0),kaptonLayerPhys1(0),copperLayerPhys1(0),nickelLayerPhys1(0),fFirstCavityPhys(0),centralElectrode1Phys(0), centralWindowPhys(0), centralElectrode2Phys(0),fSecondCavityPhys(0),exitElectrodePhys(0),kaptonLayerPhys2(0),copperLayerPhys2(0),nickelLayerPhys2(0),exitWindowPhys(0),physiNozzleSupport(0), physiBrassTube(0), solidFinalCollimator(0), physiFinalCollimator(0) +{ + // Messenger to change parameters of the passiveProtonBeamLine geometry + passiveMessenger = new BESTPassiveProtonBeamLineMessenger(this); + + //***************************** PW *************************************** + static G4String ROGeometryName = "DetectorROGeometry"; + RO = new HadrontherapyDetectorROGeometry(ROGeometryName); + + G4cout << "Going to register Parallel world..."; + RegisterParallelWorld(RO); + G4cout << "... done" << G4endl; + +} +///////////////////////////////////////////////////////////////////////////// +BESTPassiveProtonBeamLine::~BESTPassiveProtonBeamLine() +{ + // delete passiveMessenger; + delete hadrontherapyDetectorConstruction; + +} + +///////////////////////////////////////////////////////////////////////////// +G4VPhysicalVolume* BESTPassiveProtonBeamLine::Construct() +{ + // Sets default geometry and materials + SetDefaultDimensions(); + + // Construct the whole BEST Passive Beam Line + ConstructBESTPassiveProtonBeamLine(); + + //***************************** PW *************************************** + if (!hadrontherapyDetectorConstruction) + + //***************************** PW *************************************** + + // HadrontherapyDetectorConstruction builds ONLY the phantom and the detector with its associated ROGeometry + hadrontherapyDetectorConstruction = new HadrontherapyDetectorConstruction(physicalTreatmentRoom); + + + //***************************** PW *************************************** + + hadrontherapyDetectorConstruction->InitializeDetectorROGeometry(RO,hadrontherapyDetectorConstruction->GetDetectorToWorldPosition()); + + //***************************** PW *************************************** + + return physicalTreatmentRoom; +} + +// In the following method the DEFAULTS used in the geometry of +// passive beam line are provided +// HERE THE USER CAN CHANGE THE GEOMETRY CHARACTERISTICS OF BEAM +// LINE ELEMENTS, ALTERNATIVELY HE/SHE CAN USE THE MACRO FILE (IF A +// MESSENGER IS PROVIDED) +// +// DEFAULT MATERIAL ARE ALSO PROVIDED +// and COLOURS ARE ALSO DEFINED +// ---------------------------------------------------------- +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::SetDefaultDimensions() +{ + // Set of coulors that can be used + white = new G4VisAttributes( G4Colour()); + white -> SetVisibility(true); + white -> SetForceSolid(true); + + blue = new G4VisAttributes(G4Colour(0. ,0. ,1.)); + blue -> SetVisibility(true); + blue -> SetForceSolid(true); + + gray = new G4VisAttributes( G4Colour(0.5, 0.5, 0.5 )); + gray-> SetVisibility(true); + gray-> SetForceSolid(true); + + red = new G4VisAttributes(G4Colour(1. ,0. ,0.)); + red-> SetVisibility(true); + red-> SetForceSolid(true); + + yellow = new G4VisAttributes(G4Colour(1., 1., 0. )); + yellow-> SetVisibility(true); + yellow-> SetForceSolid(true); + + green = new G4VisAttributes( G4Colour(25/255. , 255/255. , 25/255. )); + green -> SetVisibility(true); + green -> SetForceSolid(true); + + darkGreen = new G4VisAttributes( G4Colour(0/255. , 100/255. , 0/255. )); + darkGreen -> SetVisibility(true); + darkGreen -> SetForceSolid(true); + + darkOrange3 = new G4VisAttributes( G4Colour(205/255. , 102/255. , 000/255. )); + darkOrange3 -> SetVisibility(true); + darkOrange3 -> SetForceSolid(true); + + skyBlue = new G4VisAttributes( G4Colour(135/255. , 206/255. , 235/255. )); + skyBlue -> SetVisibility(true); + skyBlue -> SetForceSolid(true); + + + // VACUUM PIPE: first track of the beam line is inside vacuum; + // The PIPE contains the FIRST SCATTERING FOIL and the KAPTON WINDOW + G4double defaultBESTVacuumZoneXSize = 100.0 *mm; + BESTvacuumZoneXSize = defaultBESTVacuumZoneXSize; + + G4double defaultBESTVacuumZoneYSize = 52.5 *mm; + BESTvacuumZoneYSize = defaultBESTVacuumZoneYSize; + + G4double defaultBESTVacuumZoneZSize = 52.5 *mm; + BESTvacuumZoneZSize = defaultBESTVacuumZoneZSize; + + G4double defaultBESTVacuumZoneXPosition = -3010.0 *mm; + BESTvacuumZoneXPosition = defaultBESTVacuumZoneXPosition; + + // FIRST SCATTERING FOIL: a thin foil performing a first scattering + // of the original beam + G4double defaultBESTFirstScatteringFoilXSize = 0.0075 *mm; + BESTfirstScatteringFoilXSize = defaultBESTFirstScatteringFoilXSize; + + G4double defaultBESTFirstScatteringFoilYSize = 52.5 *mm; + BESTfirstScatteringFoilYSize = defaultBESTFirstScatteringFoilYSize; + + G4double defaultBESTFirstScatteringFoilZSize = 52.5 *mm; + BESTfirstScatteringFoilZSize = defaultBESTFirstScatteringFoilZSize; + + G4double defaultBESTFirstScatteringFoilXPosition = 0.0 *mm; + BESTfirstScatteringFoilXPosition = defaultBESTFirstScatteringFoilXPosition; + + // KAPTON WINDOW: it prmits the passage of the beam from vacuum to air + G4double defaultBESTKaptonWindowXSize = 0.010*mm; + BESTkaptonWindowXSize = defaultBESTKaptonWindowXSize; + + G4double defaultBESTKaptonWindowYSize = 5.25*cm; + BESTkaptonWindowYSize = defaultBESTKaptonWindowYSize; + + G4double defaultBESTKaptonWindowZSize = 5.25*cm; + BESTkaptonWindowZSize = defaultBESTKaptonWindowZSize; + + G4double defaultBESTKaptonWindowXPosition = 100.0*mm - defaultBESTKaptonWindowXSize; + BESTkaptonWindowXPosition = defaultBESTKaptonWindowXPosition; + + // STOPPER: is a small cylinder able to stop the central component + // of the beam (having a gaussian shape). It is connected to the SECON SCATTERING FOIL + // and represent the second element of the scattering system + G4double defaultBESTInnerRadiusStopper = 0.*cm; + BESTinnerRadiusStopper = defaultBESTInnerRadiusStopper; + + G4double defaultBESTHeightStopper = 4.5*mm; + BESTheightStopper = defaultBESTHeightStopper; + + G4double defaultBESTStartAngleStopper = 0.*deg; + BESTstartAngleStopper = defaultBESTStartAngleStopper; + + G4double defaultBESTSpanningAngleStopper = 360.*deg; + BESTspanningAngleStopper = defaultBESTSpanningAngleStopper; + + G4double defaultBESTStopperXPosition = -2705.0 *mm; + BESTstopperXPosition = defaultBESTStopperXPosition; + + G4double defaultBESTStopperYPosition = 0.*m; + BESTstopperYPosition = defaultBESTStopperYPosition; + + G4double defaultBESTStopperZPosition = 0.*m; + BESTstopperZPosition = defaultBESTStopperZPosition; + + G4double defaultBESTOuterRadiusStopper = 3 *mm; + BESTouterRadiusStopper = defaultBESTOuterRadiusStopper; + + // SECOND SCATTERING FOIL: it is another thin foil and provides the + // final diffusion of the beam. It represents the third element of the scattering + // system; + G4double defaultBESTSecondScatteringFoilXSize = 0.0125 *mm; + BESTsecondScatteringFoilXSize = defaultBESTSecondScatteringFoilXSize; + + G4double defaultBESTSecondScatteringFoilYSize = 52.5 *mm; + BESTsecondScatteringFoilYSize = defaultBESTSecondScatteringFoilYSize; + + G4double defaultBESTSecondScatteringFoilZSize = 52.5 *mm; + BESTsecondScatteringFoilZSize = defaultBESTSecondScatteringFoilZSize; + + G4double defaultBESTSecondScatteringFoilXPosition = defaultBESTStopperXPosition + defaultBESTHeightStopper + defaultBESTSecondScatteringFoilXSize; + BESTsecondScatteringFoilXPosition = defaultBESTSecondScatteringFoilXPosition; + + G4double defaultBESTSecondScatteringFoilYPosition = 0 *mm; + BESTsecondScatteringFoilYPosition = defaultBESTSecondScatteringFoilYPosition; + + G4double defaultBESTSecondScatteringFoilZPosition = 0 *mm; + BESTsecondScatteringFoilZPosition = defaultBESTSecondScatteringFoilZPosition; + + // RANGE SHIFTER: is a slab of PMMA acting as energy degreader of + // primary beam + + //Default material of the range shifter + + G4double defaultBESTRangeShifterXSize = 5. *mm; + BESTrangeShifterXSize = defaultBESTRangeShifterXSize; + + G4double defaultBESTRangeShifterYSize = 176. *mm; + BESTrangeShifterYSize = defaultBESTRangeShifterYSize; + + G4double defaultBESTRangeShifterZSize = 176. *mm; + BESTrangeShifterZSize = defaultBESTRangeShifterZSize; + + G4double defaultBESTRangeShifterXPosition = -2393.0 *mm; + BESTrangeShifterXPosition = defaultBESTRangeShifterXPosition; + + G4double defaultBESTRangeShifterYPosition = 0. *mm; + BESTrangeShifterYPosition = defaultBESTRangeShifterYPosition; + + G4double defaultBESTRangeShifterZPosition = 0. *mm; + BESTrangeShifterZPosition = defaultBESTRangeShifterZPosition; + + + + // FINAL COLLIMATOR: is the collimator giving the final transversal shape + // of the beam + G4double defaultBESTinnerRadiusFinalCollimator = 7.5 *mm; + BESTinnerRadiusFinalCollimator = defaultBESTinnerRadiusFinalCollimator; + + // DEFAULT DEFINITION OF THE MATERIALS + // All elements and compound definition follows the NIST database + + // ELEMENTS + G4bool isotopes = false; + G4Material* aluminumNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_Al", isotopes); + G4Material* tantalumNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_Ta", isotopes); + G4Material* copperNistAsMaterial = G4NistManager::Instance()->FindOrBuildMaterial("G4_Cu", isotopes); + G4Element* zincNist = G4NistManager::Instance()->FindOrBuildElement("Zn"); + G4Element* copperNist = G4NistManager::Instance()->FindOrBuildElement("Cu"); + + // COMPOUND + G4Material* airNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_AIR", isotopes); + G4Material* kaptonNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_KAPTON", isotopes); + G4Material* galacticNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_Galactic", isotopes); + G4Material* PMMANist = G4NistManager::Instance()->FindOrBuildMaterial("G4_PLEXIGLASS", isotopes); + G4Material* mylarNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_MYLAR", isotopes); + +G4Material* nichelNistAsMaterial = G4NistManager::Instance()->FindOrBuildMaterial("G4_Ni", isotopes); + + + + + G4double d; // Density + G4int nComponents;// Number of components + G4double fractionmass; // Fraction in mass of an element in a material + + d = 8.40*g/cm3; + nComponents = 2; + G4Material* brass = new G4Material("Brass", d, nComponents); + brass -> AddElement(zincNist, fractionmass = 30 *perCent); + brass -> AddElement(copperNist, fractionmass = 70 *perCent); + + + //***************************** PW *************************************** + + // DetectorROGeometry Material + new G4Material("dummyMat", 1., 1.*g/mole, 1.*g/cm3); + + //***************************** PW *************************************** + + + + // MATERIAL ASSIGNMENT + // Range shifter + rangeShifterMaterial = airNist; + + // Support of the beam line + beamLineSupportMaterial = aluminumNist; + + // Vacuum pipe + vacuumZoneMaterial = galacticNist; + + // Material of the fisrt scattering foil + firstScatteringFoilMaterial = tantalumNist; + + // Material of kapton window + kaptonWindowMaterial = kaptonNist; + + // Material of the stopper + stopperMaterial = brass; + + // Material of the second scattering foil + secondScatteringFoilMaterial = tantalumNist; + + // Materials of the collimators + firstCollimatorMaterial = PMMANist; + holeFirstCollimatorMaterial = airNist; + + // Box containing the modulator wheel + modulatorBoxMaterial = aluminumNist; + holeModulatorBoxMaterial = airNist; + + // Materials of the monitor chamber + CopperLayerMaterial=copperNistAsMaterial; + NichelLayerMaterial=nichelNistAsMaterial; + KaptonLayerMaterial=kaptonNist; + WindowMaterial=mylarNist; + CentralWindowMaterial=mylarNist; + wallMaterial=aluminumNist; + ElectrodeMaterial=aluminumNist; + CavityMaterial=airNist; + + + // material of the final nozzle + nozzleSupportMaterial = PMMANist; + brassTubeMaterial = brassTube2Material = brassTube3Material = brass; + holeNozzleSupportMaterial = airNist; + + // Material of the final collimator + finalCollimatorMaterial = brass; +} + +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::ConstructBESTPassiveProtonBeamLine() +{ + // ----------------------------- + // Treatment room - World volume + //------------------------------ + // Treatment room sizes + const G4double worldX = 400.0 *cm; + const G4double worldY = 400.0 *cm; + const G4double worldZ = 400.0 *cm; + G4bool isotopes = false; + + G4Material* airNist = G4NistManager::Instance()->FindOrBuildMaterial("G4_AIR", isotopes); + G4Box* treatmentRoom = new G4Box("TreatmentRoom",worldX,worldY,worldZ); + G4LogicalVolume* logicTreatmentRoom = new G4LogicalVolume(treatmentRoom, + airNist, + "logicTreatmentRoom", + 0,0,0); + physicalTreatmentRoom = new G4PVPlacement(0, + G4ThreeVector(), + "physicalTreatmentRoom", + logicTreatmentRoom, + 0,false,0); + + + // The treatment room is invisible in the Visualisation + //logicTreatmentRoom -> SetVisAttributes(G4VisAttributes::Invisible); + + // Components of the BEST Passive Proton Beam Line + BESTBeamLineSupport(); + BESTBeamScatteringFoils(); + BESTRangeShifter(); + BESTBeamCollimators(); + BESTBeamMonitoring(); + BESTBeamNozzle(); + BESTBeamFinalCollimator(); + + // The following lines construc a typical modulator wheel inside the Passive Beam line. + // Please remember to set the nodulator material (default is air, i.e. no modulator!) + // in the HadrontherapyModulator.cc file + modulator = new HadrontherapyModulator(); + modulator -> BuildModulator(physicalTreatmentRoom); +} + +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::BESTBeamLineSupport() +{ + // ------------------// + // BEAM LINE SUPPORT // + //-------------------// + const G4double beamLineSupportXSize = 1.5*m; + const G4double beamLineSupportYSize = 20.*mm; + const G4double beamLineSupportZSize = 600.*mm; + + const G4double beamLineSupportXPosition = -1745.09 *mm; + const G4double beamLineSupportYPosition = -230. *mm; + const G4double beamLineSupportZPosition = 0.*mm; + + G4Box* beamLineSupport = new G4Box("BeamLineSupport", + beamLineSupportXSize, + beamLineSupportYSize, + beamLineSupportZSize); + + G4LogicalVolume* logicBeamLineSupport = new G4LogicalVolume(beamLineSupport, + beamLineSupportMaterial, + "BeamLineSupport"); + physiBeamLineSupport = new G4PVPlacement(0, G4ThreeVector(beamLineSupportXPosition, + beamLineSupportYPosition, + beamLineSupportZPosition), + "BeamLineSupport", + logicBeamLineSupport, + physicalTreatmentRoom, false, 0); + + // Visualisation attributes of the beam line support + + logicBeamLineSupport -> SetVisAttributes(gray); + + //---------------------------------// + // Beam line cover 1 (left panel) // + //---------------------------------// + const G4double beamLineCoverXSize = 1.5*m; + const G4double beamLineCoverYSize = 750.*mm; + const G4double beamLineCoverZSize = 10.*mm; + + const G4double beamLineCoverXPosition = -1745.09 *mm; + const G4double beamLineCoverYPosition = -1000.*mm; + const G4double beamLineCoverZPosition = 600.*mm; + + G4Box* beamLineCover = new G4Box("BeamLineCover", + beamLineCoverXSize, + beamLineCoverYSize, + beamLineCoverZSize); + + G4LogicalVolume* logicBeamLineCover = new G4LogicalVolume(beamLineCover, + beamLineSupportMaterial, + "BeamLineCover"); + + physiBeamLineCover = new G4PVPlacement(0, G4ThreeVector(beamLineCoverXPosition, + beamLineCoverYPosition, + beamLineCoverZPosition), + "BeamLineCover", + logicBeamLineCover, + physicalTreatmentRoom, + false, + 0); + + // ---------------------------------// + // Beam line cover 2 (rigth panel) // + // ---------------------------------// + // It has the same characteristic of beam line cover 1 but set in a different position + physiBeamLineCover2 = new G4PVPlacement(0, G4ThreeVector(beamLineCoverXPosition, + beamLineCoverYPosition, + - beamLineCoverZPosition), + "BeamLineCover2", + logicBeamLineCover, + physicalTreatmentRoom, + false, + 0); + + logicBeamLineCover -> SetVisAttributes(blue); + + } + +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::BESTBeamScatteringFoils() +{ + // ------------// + // VACUUM PIPE // + //-------------// + // + // First track of the beam line is inside vacuum; + // The PIPE contains the FIRST SCATTERING FOIL and the KAPTON WINDOW + G4Box* BESTvacuumZone = new G4Box("VacuumZone", BESTvacuumZoneXSize, BESTvacuumZoneYSize, BESTvacuumZoneZSize); + G4LogicalVolume* logicBESTVacuumZone = new G4LogicalVolume(BESTvacuumZone, vacuumZoneMaterial, "VacuumZone"); + G4VPhysicalVolume* physiBESTVacuumZone = new G4PVPlacement(0, G4ThreeVector(BESTvacuumZoneXPosition, 0., 0.), + "VacuumZone",logicBESTVacuumZone, physicalTreatmentRoom, false, 0); + // --------------------------// + // THE FIRST SCATTERING FOIL // + // --------------------------// + // A thin foil performing a first scattering + // of the original beam + BESTfirstScatteringFoil = new G4Box("FirstScatteringFoil", + BESTfirstScatteringFoilXSize, + BESTfirstScatteringFoilYSize, + BESTfirstScatteringFoilZSize); + + G4LogicalVolume* logicBESTFirstScatteringFoil = new G4LogicalVolume(BESTfirstScatteringFoil, + firstScatteringFoilMaterial, + "FirstScatteringFoil"); + + physiBESTFirstScatteringFoil = new G4PVPlacement(0, G4ThreeVector(BESTfirstScatteringFoilXPosition, 0.,0.), + "FirstScatteringFoil", logicBESTFirstScatteringFoil, physiBESTVacuumZone, + false, 0); + + logicBESTFirstScatteringFoil -> SetVisAttributes(skyBlue); + // -------------------// + // THE KAPTON WINDOWS // + //--------------------// + //It prmits the passage of the beam from vacuum to air + + G4Box* solidBESTKaptonWindow = new G4Box("BESTKaptonWindow", + BESTkaptonWindowXSize, + BESTkaptonWindowYSize, + BESTkaptonWindowZSize); + + G4LogicalVolume* logicBESTKaptonWindow = new G4LogicalVolume(solidBESTKaptonWindow, + kaptonWindowMaterial, + "BESTKaptonWindow"); + + physiBESTKaptonWindow = new G4PVPlacement(0, G4ThreeVector(BESTkaptonWindowXPosition, 0., 0.), + "BESTKaptonWindow", logicBESTKaptonWindow, + physiBESTVacuumZone, false, 0); + + logicBESTKaptonWindow -> SetVisAttributes(darkOrange3); + + // ------------// + // THE STOPPER // + //-------------// + // Is a small cylinder able to stop the central component + // of the beam (having a gaussian shape). It is connected to the SECON SCATTERING FOIL + // and represent the second element of the scattering system + G4double phi = 90. *deg; + // Matrix definition for a 90 deg rotation with respect to Y axis + G4RotationMatrix rm; + rm.rotateY(phi); + + solidBESTStopper = new G4Tubs("Stopper", + BESTinnerRadiusStopper, + BESTouterRadiusStopper, + BESTheightStopper, + BESTstartAngleStopper, + BESTspanningAngleStopper); + + logicBESTStopper = new G4LogicalVolume(solidBESTStopper, + stopperMaterial, + "Stopper", + 0, 0, 0); + + physiBESTStopper = new G4PVPlacement(G4Transform3D(rm, G4ThreeVector(BESTstopperXPosition, + BESTstopperYPosition, + BESTstopperZPosition)), + "BESTStopper", + logicBESTStopper, + physicalTreatmentRoom, + false, + 0); + + logicBESTStopper -> SetVisAttributes(red); + + // ---------------------------// + // THE SECOND SCATTERING FOIL // + // ---------------------------// + // It is another thin foil and provides the + // final diffusion of the beam. It represents the third element of the scattering + // system; + + BESTsecondScatteringFoil = new G4Box("SecondScatteringFoil", + BESTsecondScatteringFoilXSize, + BESTsecondScatteringFoilYSize, + BESTsecondScatteringFoilZSize); + + G4LogicalVolume* logicBESTSecondScatteringFoil = new G4LogicalVolume(BESTsecondScatteringFoil, + secondScatteringFoilMaterial, + "SecondScatteringFoil"); + + physiBESTSecondScatteringFoil = new G4PVPlacement(0, G4ThreeVector(BESTsecondScatteringFoilXPosition, + BESTsecondScatteringFoilYPosition, + BESTsecondScatteringFoilZPosition), + "SeconScatteringFoil", + logicBESTSecondScatteringFoil, + physicalTreatmentRoom, + false, + 0); + + logicBESTSecondScatteringFoil -> SetVisAttributes(skyBlue); + + +} +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::BESTRangeShifter() +{ + // ---------------------------- // + // THE RANGE SHIFTER // + // -----------------------------// + // It is a slab of PMMA acting as energy degreader of + // primary beam + + + solidBESTRangeShifterBox = new G4Box("RangeShifterBox", + BESTrangeShifterXSize, + BESTrangeShifterYSize, + BESTrangeShifterZSize); + + logicBESTRangeShifterBox = new G4LogicalVolume(solidBESTRangeShifterBox, + rangeShifterMaterial, + "RangeShifterBox"); + physiBESTRangeShifterBox = new G4PVPlacement(0, + G4ThreeVector(BESTrangeShifterXPosition, 0., 0.), + "RangeShifterBox", + logicBESTRangeShifterBox, + physicalTreatmentRoom, + false, + 0); + + + logicBESTRangeShifterBox -> SetVisAttributes(yellow); + + +} +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::BESTBeamCollimators() +{ + + + // -----------------// + // FIRST COLLIMATOR // + // -----------------// + // It is a slab of PMMA with an hole in its center + const G4double firstCollimatorXSize = 20.*mm; + const G4double firstCollimatorYSize = 100.*mm; + const G4double firstCollimatorZSize = 100.*mm; + + const G4double firstCollimatorXPosition = -2673.00*mm; + const G4double firstCollimatorYPosition = 0.*mm; + const G4double firstCollimatorZPosition = 0.*mm; + + + G4Box* solidBESTFirstCollimator = new G4Box("FirstCollimator", + firstCollimatorXSize, + firstCollimatorYSize, + firstCollimatorZSize); + + G4LogicalVolume* logicBESTFirstCollimator = new G4LogicalVolume(solidBESTFirstCollimator, + firstCollimatorMaterial, + "FirstCollimator"); + + physiBESTFirstCollimator = new G4PVPlacement(0, G4ThreeVector(firstCollimatorXPosition, + firstCollimatorYPosition, + firstCollimatorZPosition), + "FirstCollimator", + logicBESTFirstCollimator, + physicalTreatmentRoom, + false, + 0); + // ----------------------------// + // Hole of the first collimator// + //-----------------------------// + G4double innerRadiusHoleFirstCollimator = 0.*mm; + G4double outerRadiusHoleFirstCollimator = 15.*mm; + G4double hightHoleFirstCollimator = 20.*mm; + G4double startAngleHoleFirstCollimator = 0.*deg; + G4double spanningAngleHoleFirstCollimator = 360.*deg; + + G4Tubs* solidBESTHoleFirstCollimator = new G4Tubs("HoleFirstCollimator", + innerRadiusHoleFirstCollimator, + outerRadiusHoleFirstCollimator, + hightHoleFirstCollimator, + startAngleHoleFirstCollimator, + spanningAngleHoleFirstCollimator); + + G4LogicalVolume* logicBESTHoleFirstCollimator = new G4LogicalVolume(solidBESTHoleFirstCollimator, + holeFirstCollimatorMaterial, + "HoleFirstCollimator", + 0, 0, 0); + G4double phi = 90. *deg; + // Matrix definition for a 90 deg rotation. Also used for other volumes + G4RotationMatrix rm; + rm.rotateY(phi); + + physiBESTHoleFirstCollimator = new G4PVPlacement(G4Transform3D(rm, G4ThreeVector()), + "HoleFirstCollimator", + logicBESTHoleFirstCollimator, + physiBESTFirstCollimator, + false, + 0); + // ------------------// + // SECOND COLLIMATOR // + //-------------------// + // It is a slab of PMMA with an hole in its center + const G4double secondCollimatorXPosition = -1900.00*mm; + const G4double secondCollimatorYPosition = 0*mm; + const G4double secondCollimatorZPosition = 0*mm; + + physiBESTSecondCollimator = new G4PVPlacement(0, G4ThreeVector(secondCollimatorXPosition, + secondCollimatorYPosition, + secondCollimatorZPosition), + "SecondCollimator", + logicBESTFirstCollimator, + physicalTreatmentRoom, + false, + 0); + + // ------------------------------// + // Hole of the second collimator // + // ------------------------------// + physiBESTHoleSecondCollimator = new G4PVPlacement(G4Transform3D(rm, G4ThreeVector()), + "HoleSecondCollimator", + logicBESTHoleFirstCollimator, + physiBESTSecondCollimator, + false, + 0); + + // --------------------------------------// + // FIRST SIDE OF THE MODULATOR BOX // + // --------------------------------------// + // The modulator box is an aluminum box in which + // the range shifter and the energy modulator are located + // In this example only the entrance and exit + // faces of the box are simulated. + // Each face is an aluminum slab with an hole in its center + + const G4double firstCollimatorModulatorXSize = 10.*mm; + const G4double firstCollimatorModulatorYSize = 200.*mm; + const G4double firstCollimatorModulatorZSize = 200.*mm; + + const G4double firstCollimatorModulatorXPosition = -2523.00*mm; + const G4double firstCollimatorModulatorYPosition = 0.*mm; + const G4double firstCollimatorModulatorZPosition = 0.*mm; + + G4Box* solidBESTFirstCollimatorModulatorBox = new G4Box("FirstCollimatorModulatorBox", + firstCollimatorModulatorXSize, + firstCollimatorModulatorYSize, + firstCollimatorModulatorZSize); + + G4LogicalVolume* logicBESTFirstCollimatorModulatorBox = new G4LogicalVolume(solidBESTFirstCollimatorModulatorBox, + modulatorBoxMaterial, + "FirstCollimatorModulatorBox"); + + physiBESTFirstCollimatorModulatorBox = new G4PVPlacement(0, G4ThreeVector(firstCollimatorModulatorXPosition, + firstCollimatorModulatorYPosition, + firstCollimatorModulatorZPosition), + "FirstCollimatorModulatorBox", + logicBESTFirstCollimatorModulatorBox, + physicalTreatmentRoom, false, 0); + + // ----------------------------------------------------// + // Hole of the first collimator of the modulator box // + // ----------------------------------------------------// + const G4double innerRadiusHoleFirstCollimatorModulatorBox = 0.*mm; + const G4double outerRadiusHoleFirstCollimatorModulatorBox = 31.*mm; + const G4double hightHoleFirstCollimatorModulatorBox = 10.*mm; + const G4double startAngleHoleFirstCollimatorModulatorBox = 0.*deg; + const G4double spanningAngleHoleFirstCollimatorModulatorBox = 360.*deg; + + G4Tubs* solidBESTHoleFirstCollimatorModulatorBox = new G4Tubs("HoleFirstCollimatorModulatorBox", + innerRadiusHoleFirstCollimatorModulatorBox, + outerRadiusHoleFirstCollimatorModulatorBox, + hightHoleFirstCollimatorModulatorBox , + startAngleHoleFirstCollimatorModulatorBox, + spanningAngleHoleFirstCollimatorModulatorBox); + + G4LogicalVolume* logicBESTHoleFirstCollimatorModulatorBox = new G4LogicalVolume(solidBESTHoleFirstCollimatorModulatorBox, + holeModulatorBoxMaterial, + "HoleFirstCollimatorModulatorBox", + 0, 0, 0); + + physiBESTHoleFirstCollimatorModulatorBox = new G4PVPlacement(G4Transform3D(rm, G4ThreeVector()), + "HoleFirstCollimatorModulatorBox", + logicBESTHoleFirstCollimatorModulatorBox, + physiBESTFirstCollimatorModulatorBox, false, 0); + + // --------------------------------------------------// + // SECOND SIDE OF THE MODULATOR BOX // + // --------------------------------------------------// + const G4double secondCollimatorModulatorXSize = 10.*mm; + const G4double secondCollimatorModulatorYSize = 200.*mm; + const G4double secondCollimatorModulatorZSize = 200.*mm; + + const G4double secondCollimatorModulatorXPosition = -1953.00 *mm; + + const G4double secondCollimatorModulatorYPosition = 0.*mm; + const G4double secondCollimatorModulatorZPosition = 0.*mm; + + G4Box* solidBESTSecondCollimatorModulatorBox = new G4Box("SecondCollimatorModulatorBox", + secondCollimatorModulatorXSize, + secondCollimatorModulatorYSize, + secondCollimatorModulatorZSize); + + G4LogicalVolume* logicBESTSecondCollimatorModulatorBox = new G4LogicalVolume(solidBESTSecondCollimatorModulatorBox, + modulatorBoxMaterial, + "SecondCollimatorModulatorBox"); + + physiBESTSecondCollimatorModulatorBox = new G4PVPlacement(0, G4ThreeVector(secondCollimatorModulatorXPosition, + secondCollimatorModulatorYPosition, + secondCollimatorModulatorZPosition), + "SecondCollimatorModulatorBox", + logicBESTSecondCollimatorModulatorBox, + physicalTreatmentRoom, false, 0); + + // ----------------------------------------------// + // Hole of the second collimator modulator box // + // ----------------------------------------------// + const G4double innerRadiusHoleSecondCollimatorModulatorBox = 0.*mm; + const G4double outerRadiusHoleSecondCollimatorModulatorBox = 31.*mm; + const G4double hightHoleSecondCollimatorModulatorBox = 10.*mm; + const G4double startAngleHoleSecondCollimatorModulatorBox = 0.*deg; + const G4double spanningAngleHoleSecondCollimatorModulatorBox = 360.*deg; + + G4Tubs* solidBESTHoleSecondCollimatorModulatorBox = new G4Tubs("HoleSecondCollimatorModulatorBox", + innerRadiusHoleSecondCollimatorModulatorBox, + outerRadiusHoleSecondCollimatorModulatorBox, + hightHoleSecondCollimatorModulatorBox , + startAngleHoleSecondCollimatorModulatorBox, + spanningAngleHoleSecondCollimatorModulatorBox); + + G4LogicalVolume* logicHBESToleSecondCollimatorModulatorBox = new G4LogicalVolume(solidBESTHoleSecondCollimatorModulatorBox, + holeModulatorBoxMaterial, + "HoleSecondCollimatorModulatorBox", + 0, 0, 0); + + physiBESTHoleSecondCollimatorModulatorBox = new G4PVPlacement(G4Transform3D(rm, G4ThreeVector()), + "HoleSecondCollimatorModulatorBox", + logicHBESToleSecondCollimatorModulatorBox, + physiBESTSecondCollimatorModulatorBox, false, 0); + + logicBESTFirstCollimator -> SetVisAttributes(yellow); + logicBESTFirstCollimatorModulatorBox -> SetVisAttributes(blue); + logicBESTSecondCollimatorModulatorBox -> SetVisAttributes(blue); + + + + } + +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::BESTBeamMonitoring() +{ + +//////// Double-GAP Monitor Chamber //////////// + + G4double fBoxOuterThickness { 100 * mm }; + G4double fBoxOuterHeight { 42 * cm }; + G4double fBoxOuterWidth { 42 * cm }; + G4double fEnterWindowThickness { 25 * um }; + G4double fCentralWindowThickness { 20 * um }; + G4double fExitWindowThickness { 25 * um }; + G4double fBoxInnerThickness { fBoxOuterThickness - fEnterWindowThickness - fExitWindowThickness }; + G4double fBoxInnerHeight { 41.95 * cm }; + G4double fBoxInnerWidth { 41.95 * cm }; + G4double fInnerHeight { 16 * cm }; + G4double fInnerWidth { 16 * cm }; + G4double fCentralElectrodeThickness { 2 * um }; + G4double fCopperLayerThickness { 5 * um }; + G4double fKaptonLayerThickness { 25 * um }; + G4double fNickelLayerThickness { 2 * um }; + G4double fFirstCavityThickness { 5 * mm }; + G4double fSecondCavityThickness { 10 * mm }; + + G4double monitor1XPosition = -1059.0 *mm; + G4String name; + +G4double phi = 90. *deg; + // Matrix definition for a 90 deg rotation. Also used for other volumes + G4RotationMatrix rm; + rm.rotateY(phi); + + + name = "monitorChamber-externalBox"; + G4Box* chamberSolid = new G4Box(name, fBoxOuterWidth / 2, fBoxOuterHeight / 2, fBoxOuterThickness / 2); + G4LogicalVolume* chamberLog = new G4LogicalVolume(chamberSolid, wallMaterial, name); + chamberPhys=new G4PVPlacement(G4Transform3D(rm, G4ThreeVector(monitor1XPosition-10*cm,0.*cm,0.*cm)),name,chamberLog,physicalTreatmentRoom, + false, + 0); + // chamberLog->SetVisAttributes(green); + + name = "monitorChamber-innerBox"; + + G4Box* innerchamberSolid = new G4Box(name, fBoxInnerWidth / 2, fBoxInnerHeight / 2, fBoxInnerThickness / 2); + G4LogicalVolume* innerchamberLog = new G4LogicalVolume(innerchamberSolid, CavityMaterial, name); + innerchamberPhys=new G4PVPlacement(0, G4ThreeVector(0,0,0), name,innerchamberLog, chamberPhys, false, 0); + // innerchamberLog->SetVisAttributes(green); + + name = "monitorChamber-enterWindow"; + + + G4Box* enterWindowSolid = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, fEnterWindowThickness / 2); + G4LogicalVolume* enterWindowLog = new G4LogicalVolume(enterWindowSolid, WindowMaterial, name); + enterWindowPhys= new G4PVPlacement(0, G4ThreeVector((-fBoxOuterThickness + fEnterWindowThickness) / 2,0, 0), name,enterWindowLog, chamberPhys, false, 0); + enterWindowLog->SetVisAttributes(green); + + name = "monitorChamber-enterElectrode"; + G4double enterElectrodeThickness = fCopperLayerThickness + fKaptonLayerThickness + fNickelLayerThickness; + G4double exitElectrodeThickness = enterElectrodeThickness; + + G4Box* enterElectrodeSolid = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, enterElectrodeThickness / 2); + G4LogicalVolume* enterElectrodeLog = new G4LogicalVolume(enterElectrodeSolid, CavityMaterial, name); + + enterElectrodePhys=new G4PVPlacement(0, G4ThreeVector(-(fCentralWindowThickness + enterElectrodeThickness) / 2 - (fCentralElectrodeThickness + fFirstCavityThickness),0,0), name,enterElectrodeLog, innerchamberPhys, false, 0); + enterElectrodeLog->SetVisAttributes(green); + + name = "monitorChamber-kaptonLayer1"; + G4double position_kaptonLayer1 =-enterElectrodeThickness+fKaptonLayerThickness / 2; + G4Box* kaptonLayerSolid1 = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, fKaptonLayerThickness / 2); + G4LogicalVolume* kaptonLayerLog1 = new G4LogicalVolume(kaptonLayerSolid1, KaptonLayerMaterial, name); + kaptonLayerPhys1= new G4PVPlacement(0, G4ThreeVector(position_kaptonLayer1,0,0), name,kaptonLayerLog1, enterElectrodePhys, false, 0); + kaptonLayerLog1->SetVisAttributes(green); + + name = "monitorChamber-copperLayer1"; + +G4double position_copperLayer1=position_kaptonLayer1+(fKaptonLayerThickness+fCopperLayerThickness)/2; + G4Box* copperLayerSolid1 = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, fCopperLayerThickness / 2); + G4LogicalVolume* copperLayerLog1 = new G4LogicalVolume(copperLayerSolid1, CopperLayerMaterial, name); + copperLayerPhys1=new G4PVPlacement(0, G4ThreeVector(position_copperLayer1,0,0), name,copperLayerLog1, enterElectrodePhys, false, 0); + + name = "monitorChamber-nickelLayer1"; + +G4double position_nichelLayer1=position_copperLayer1+(fCopperLayerThickness + fNickelLayerThickness)/2; + + G4Box* nickelLayerSolid = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, fNickelLayerThickness / 2); + G4LogicalVolume* nickelLayerLog1 = new G4LogicalVolume(nickelLayerSolid, NichelLayerMaterial, name); + nickelLayerPhys1=new G4PVPlacement(0, G4ThreeVector(position_nichelLayer1,0,0), name,nickelLayerLog1, enterElectrodePhys, false, 0); + + name = "monitorChamber-firstCavity"; + + +G4double position_firstCavity=-fCentralWindowThickness/2-fCentralElectrodeThickness-(fFirstCavityThickness) / 2; + G4Box* firstCavitySolid = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, fFirstCavityThickness / 2); + G4LogicalVolume*fFirstCavityLog = new G4LogicalVolume(firstCavitySolid, CavityMaterial, name); + fFirstCavityPhys=new G4PVPlacement(0, G4ThreeVector( position_firstCavity,0,0), name, fFirstCavityLog, innerchamberPhys, false, 0); + + name = "monitorChamber-centralElectrode1"; + +G4double position_centralElectrode1=(-fCentralWindowThickness-fCentralElectrodeThickness) / 2; + G4Box* centralElectrode1Solid = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, fCentralElectrodeThickness / 2); + G4LogicalVolume* centralElectrode1Log = new G4LogicalVolume(centralElectrode1Solid, ElectrodeMaterial, name); + centralElectrode1Phys=new G4PVPlacement(0, G4ThreeVector(position_centralElectrode1,0,0), name,centralElectrode1Log, innerchamberPhys, false, 0); + + name = "monitorChamber-centralWindow"; + // position={0,0,0}; + G4Box* centralWindowSolid = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, fCentralWindowThickness / 2); + G4LogicalVolume* centralWindowLog = new G4LogicalVolume(centralWindowSolid, CentralWindowMaterial, name); + centralWindowPhys =new G4PVPlacement(0, G4ThreeVector(0,0,0), name,centralWindowLog, innerchamberPhys, false, 0); + centralWindowLog->SetVisAttributes(green); + + name = "monitorChamber-centralElectrode2"; + +G4double position_centralElectrode2=(fCentralWindowThickness+fCentralElectrodeThickness) / 2; + G4Box* centralElectrode2Solid = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, fCentralElectrodeThickness / 2); + G4LogicalVolume* centralElectrode2Log = new G4LogicalVolume(centralElectrode2Solid, ElectrodeMaterial, name); + centralElectrode2Phys= new G4PVPlacement(0, G4ThreeVector(position_centralElectrode2,0,0),name, centralElectrode2Log,innerchamberPhys, false, 0); + + name = "monitorChamber-secondCavity"; + +G4double position_secondCavity=(fCentralWindowThickness)/2+fCentralElectrodeThickness+(fSecondCavityThickness) / 2; + G4Box* secondCavitySolid = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, fSecondCavityThickness / 2); + G4LogicalVolume*fSecondCavityLog = new G4LogicalVolume(secondCavitySolid, CavityMaterial, name); + fSecondCavityPhys=new G4PVPlacement(0, G4ThreeVector(position_secondCavity,0,0), name, fSecondCavityLog, innerchamberPhys, false, 0); + + name="monitorChamber-exitElectrode"; + +G4double position_exitElectrode=(fCentralWindowThickness)/2+fCentralElectrodeThickness+fSecondCavityThickness+(exitElectrodeThickness) / 2; + G4Box* exitElectrodeSolid = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, exitElectrodeThickness / 2); + G4LogicalVolume* exitElectrodeLog = new G4LogicalVolume(exitElectrodeSolid, ElectrodeMaterial, name); + exitElectrodePhys=new G4PVPlacement(0, G4ThreeVector(position_exitElectrode,0,0), name,exitElectrodeLog,innerchamberPhys, false, 0); + exitElectrodeLog->SetVisAttributes(green); + + name = "monitorChamber-kaptonLayer2"; + +G4double position_kaptonLayer2=(exitElectrodeThickness-fKaptonLayerThickness) / 2; + G4Box* kaptonLayerSolid2 = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, fKaptonLayerThickness / 2); + G4LogicalVolume* kaptonLayerLog2 = new G4LogicalVolume(kaptonLayerSolid2, KaptonLayerMaterial, name); + kaptonLayerPhys2=new G4PVPlacement(0, G4ThreeVector(position_kaptonLayer2,0,0), name,kaptonLayerLog2, exitElectrodePhys, false, 0); + + name = "monitorChamber-copperLayer2"; + +G4double position_copperLayer2=(exitElectrodeThickness)/2-fKaptonLayerThickness-(fCopperLayerThickness)/2; + G4Box* copperLayerSolid2 = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, fCopperLayerThickness / 2); + G4LogicalVolume* copperLayerLog2 = new G4LogicalVolume(copperLayerSolid2, CopperLayerMaterial, name); + copperLayerPhys2=new G4PVPlacement(0, G4ThreeVector(position_copperLayer2,0,0), name, copperLayerLog2, exitElectrodePhys, false, 0); + + name = "monitorChamber-nickelLayer2"; + +G4double position_nichelLayer2=(exitElectrodeThickness)/2-fKaptonLayerThickness-fCopperLayerThickness-fNickelLayerThickness/2; + + G4Box* nickelLayerSolid2 = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, fNickelLayerThickness / 2); + G4LogicalVolume* nickelLayerLog2 = new G4LogicalVolume(nickelLayerSolid2, NichelLayerMaterial, name); + nickelLayerPhys2=new G4PVPlacement(0, G4ThreeVector(position_nichelLayer2,0,0), name,nickelLayerLog2, exitElectrodePhys, false, 0); + + name = "monitorChamber-exitWindow"; + +G4double position_exitWindow=(fBoxOuterThickness - fEnterWindowThickness) / 2; + G4Box* exitWindowSolid = new G4Box(name, fInnerWidth / 2, fInnerHeight / 2, fExitWindowThickness / 2); + G4LogicalVolume* exitWindowLog = new G4LogicalVolume(exitWindowSolid, WindowMaterial, name); + exitWindowPhys= new G4PVPlacement(0, G4ThreeVector(position_exitWindow,0,0), name,exitWindowLog, chamberPhys, false, 0); + exitWindowLog->SetVisAttributes(green); + + + } +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::BESTBeamNozzle() +{ + // ------------------------------// + // THE FINAL TUBE AND COLLIMATOR // + //-------------------------------// + // The last part of the transport beam line consists of + // a 59 mm thick PMMA slab (to stop all the diffused radiation), a 370 mm brass tube + // (to well collimate the proton beam) and a final collimator with 25 mm diameter + // aperture (that provide the final trasversal shape of the beam) + + // -------------------// + // PMMA SUPPORT // + // -------------------// + const G4double nozzleSupportXSize = 29.5 *mm; + const G4double nozzleSupportYSize = 180. *mm; + const G4double nozzleSupportZSize = 180. *mm; + + const G4double nozzleSupportXPosition = -397.50 *mm; + + G4double phi = 90. *deg; + // Matrix definition for a 90 deg rotation. Also used for other volumes + G4RotationMatrix rm; + rm.rotateY(phi); + + G4Box* solidNozzleSupport = new G4Box("NozzleSupport", + nozzleSupportXSize, + nozzleSupportYSize, + nozzleSupportZSize); + + G4LogicalVolume* logicNozzleSupport = new G4LogicalVolume(solidNozzleSupport, + nozzleSupportMaterial, + "NozzleSupport"); + + physiNozzleSupport = new G4PVPlacement(0, G4ThreeVector(nozzleSupportXPosition,0., 0.), + "NozzleSupport", + logicNozzleSupport, + physicalTreatmentRoom, + false, + 0); + + logicNozzleSupport -> SetVisAttributes(yellow); + + + + //------------------------------------// + // HOLE IN THE SUPPORT // + //------------------------------------// + const G4double innerRadiusHoleNozzleSupport = 0.*mm; + const G4double outerRadiusHoleNozzleSupport = 21.5*mm; + const G4double hightHoleNozzleSupport = 29.5 *mm; + const G4double startAngleHoleNozzleSupport = 0.*deg; + const G4double spanningAngleHoleNozzleSupport = 360.*deg; + + G4Tubs* solidHoleNozzleSupport = new G4Tubs("HoleNozzleSupport", + innerRadiusHoleNozzleSupport, + outerRadiusHoleNozzleSupport, + hightHoleNozzleSupport, + startAngleHoleNozzleSupport, + spanningAngleHoleNozzleSupport); + + G4LogicalVolume* logicHoleNozzleSupport = new G4LogicalVolume(solidHoleNozzleSupport, + holeNozzleSupportMaterial, + "HoleNozzleSupport", + 0, + 0, + 0); + + + physiHoleNozzleSupport = new G4PVPlacement(G4Transform3D(rm, G4ThreeVector()), + "HoleNozzleSupport", + logicHoleNozzleSupport, + physiNozzleSupport, + false, 0); + + logicHoleNozzleSupport -> SetVisAttributes(darkOrange3); + + // ---------------------------------// + // BRASS TUBE 1 (phantom side) // + // ---------------------------------// + const G4double innerRadiusBrassTube= 18.*mm; + const G4double outerRadiusBrassTube = 21.5 *mm; + const G4double hightBrassTube = 140.5*mm; + const G4double startAngleBrassTube = 0.*deg; + const G4double spanningAngleBrassTube = 360.*deg; + + const G4double brassTubeXPosition = -227.5 *mm; + + G4Tubs* solidBrassTube = new G4Tubs("BrassTube", + innerRadiusBrassTube, + outerRadiusBrassTube, + hightBrassTube, + startAngleBrassTube, + spanningAngleBrassTube); + + G4LogicalVolume* logicBrassTube = new G4LogicalVolume(solidBrassTube, + brassTubeMaterial, + "BrassTube", + 0, 0, 0); + + physiBrassTube = new G4PVPlacement(G4Transform3D(rm, + G4ThreeVector(brassTubeXPosition, + 0., + 0.)), + "BrassTube", + logicBrassTube, + physicalTreatmentRoom, + false, + 0); + + logicBrassTube -> SetVisAttributes(darkOrange3); + + // ----------------------------------------------// + // BRASS TUBE 2 (inside the PMMA support) // + // ----------------------------------------------// + const G4double innerRadiusBrassTube2= 18.*mm; + const G4double outerRadiusBrassTube2 = 21.5 *mm; + const G4double hightBrassTube2 = 29.5*mm; + const G4double startAngleBrassTube2 = 0.*deg; + const G4double spanningAngleBrassTube2 = 360.*deg; + + + G4Tubs* solidBrassTube2 = new G4Tubs("BrassTube2", + innerRadiusBrassTube2, + outerRadiusBrassTube2, + hightBrassTube2, + startAngleBrassTube2, + spanningAngleBrassTube2); + + G4LogicalVolume* logicBrassTube2 = new G4LogicalVolume(solidBrassTube2, + brassTube2Material, + "BrassTube2", + 0, 0, 0); + + physiBrassTube2 = new G4PVPlacement(0, + G4ThreeVector(0,0.,0.), + logicBrassTube2, + "BrassTube2", + logicHoleNozzleSupport, + false, + 0); + + logicBrassTube2 -> SetVisAttributes(darkOrange3); + + + // --------------------------------------// + // BRASS TUBE 3 (beam line side) // + // -------------------------------------// + const G4double innerRadiusBrassTube3= 18.*mm; + const G4double outerRadiusBrassTube3 = 21.5 *mm; + const G4double hightBrassTube3 = 10.0 *mm; + const G4double startAngleBrassTube3 = 0.*deg; + const G4double spanningAngleBrassTube3 = 360.*deg; + + const G4double brassTube3XPosition = -437 *mm; + + G4Tubs* solidBrassTube3 = new G4Tubs("BrassTube3", + innerRadiusBrassTube3, + outerRadiusBrassTube3, + hightBrassTube3, + startAngleBrassTube3, + spanningAngleBrassTube3); + + G4LogicalVolume* logicBrassTube3 = new G4LogicalVolume(solidBrassTube3, + brassTube3Material, + "BrassTube3", + 0, 0, 0); + + physiBrassTube3 = new G4PVPlacement(G4Transform3D(rm, + G4ThreeVector(brassTube3XPosition, + 0., + 0.)), + "BrassTube3", + logicBrassTube3, + physicalTreatmentRoom, + false, + 0); + + logicBrassTube3 -> SetVisAttributes(darkOrange3); +} + +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::BESTBeamFinalCollimator() +{ + // -----------------------// + // FINAL COLLIMATOR // + //------------------------// + const G4double outerRadiusFinalCollimator = 21.5*mm; + const G4double hightFinalCollimator = 4.5*mm; + const G4double startAngleFinalCollimator = 0.*deg; + const G4double spanningAngleFinalCollimator = 360.*deg; + const G4double finalCollimatorXPosition = -82.5 *mm; + + G4double phi = 90. *deg; + + // Matrix definition for a 90 deg rotation. Also used for other volumes + G4RotationMatrix rm; + rm.rotateY(phi); + + solidFinalCollimator = new G4Tubs("FinalCollimator", + BESTinnerRadiusFinalCollimator, + outerRadiusFinalCollimator, + hightFinalCollimator, + startAngleFinalCollimator, + spanningAngleFinalCollimator); + + G4LogicalVolume* logicFinalCollimator = new G4LogicalVolume(solidFinalCollimator, + finalCollimatorMaterial, + "FinalCollimator", + 0, + 0, + 0); + + physiFinalCollimator = new G4PVPlacement(G4Transform3D(rm, G4ThreeVector(finalCollimatorXPosition,0.,0.)), + "FinalCollimator", logicFinalCollimator, physicalTreatmentRoom, false, 0); + + logicFinalCollimator -> SetVisAttributes(yellow); +} +/////////////////////////// MESSENGER /////////////////////////////////////// +///////////////////////////////////////////////////////////////////////////// + + +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::SetRangeShifterXSize(G4double value) +{ + solidBESTRangeShifterBox -> SetXHalfLength(value) ; + G4cout << "RangeShifter size X (mm): "<< ((solidBESTRangeShifterBox -> GetXHalfLength())*2.)/mm + << G4endl; + G4RunManager::GetRunManager() -> GeometryHasBeenModified(); +} + +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::SetFirstScatteringFoilXSize(G4double value) +{ + BESTfirstScatteringFoil -> SetXHalfLength(value); + G4RunManager::GetRunManager() -> GeometryHasBeenModified(); + G4cout <<"The X size of the first scattering foil is (mm):"<< + ((BESTfirstScatteringFoil -> GetXHalfLength())*2.)/mm + << G4endl; +} + +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::SetSecondScatteringFoilXSize(G4double value) +{ + BESTsecondScatteringFoil -> SetXHalfLength(value); + G4RunManager::GetRunManager() -> GeometryHasBeenModified(); + G4cout <<"The X size of the second scattering foil is (mm):"<< + ((BESTsecondScatteringFoil -> GetXHalfLength())*2.)/mm + << G4endl; +} + +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::SetOuterRadiusStopper(G4double value) +{ + solidBESTStopper -> SetOuterRadius(value); + G4RunManager::GetRunManager() -> GeometryHasBeenModified(); + G4cout << "OuterRadius od the Stopper is (mm):" + << solidBESTStopper -> GetOuterRadius()/mm + << G4endl; +} + +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::SetInnerRadiusFinalCollimator(G4double value) +{ + solidFinalCollimator -> SetInnerRadius(value); + G4RunManager::GetRunManager() -> GeometryHasBeenModified(); + G4cout<<"Inner Radius of the final collimator is (mm):" + << solidFinalCollimator -> GetInnerRadius()/mm + << G4endl; +} + +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::SetRSMaterial(G4String materialChoice) +{ + if (G4Material* pttoMaterial = G4NistManager::Instance()->FindOrBuildMaterial(materialChoice, false) ) + { + if (pttoMaterial) + { + rangeShifterMaterial = pttoMaterial; + logicBESTRangeShifterBox -> SetMaterial(pttoMaterial); + G4cout << "The material of the Range Shifter has been changed to " << materialChoice << G4endl; + } + } + else + { + G4cout << "WARNING: material \"" << materialChoice << "\" doesn't exist in NIST elements/materials" + " table [located in $G4INSTALL/source/materials/src/G4NistMaterialBuilder.cc]" << G4endl; + G4cout << "Use command \"/parameter/nist\" to see full materials list!" << G4endl; + } +} + +///////////////////////////////////////////////////////////////////////////// +void BESTPassiveProtonBeamLine::SetModulatorAngle(G4double value) +{ + modulator -> SetModulatorAngle(value); + //G4RunManager::GetRunManager() -> GeometryHasBeenModified(); +} +///////////////////////////////////////////////////////////////////////////// diff --git a/examples/advanced/hadrontherapy/src/BESTPassiveProtonBeamlineMessenger.cc b/examples/advanced/hadrontherapy/src/BESTPassiveProtonBeamlineMessenger.cc new file mode 100644 index 0000000000..c384b9ac61 --- /dev/null +++ b/examples/advanced/hadrontherapy/src/BESTPassiveProtonBeamlineMessenger.cc @@ -0,0 +1,175 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Hadrontherapy advanced example for Geant4 +// See more at: https://twiki.cern.ch/twiki/bin/view/Geant4/AdvancedExamplesHadrontherapy + +#include "BESTPassiveProtonBeamLineMessenger.hh" +#include "BESTPassiveProtonBeamLine.hh" +#include "G4UIdirectory.hh" +#include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIcmdWithAString.hh" +#include "G4SystemOfUnits.hh" + + BESTPassiveProtonBeamLineMessenger::BESTPassiveProtonBeamLineMessenger(BESTPassiveProtonBeamLine* beamLine) +:passiveProton(beamLine) + +{ + changeTheBeamLineDir = new G4UIdirectory("/ChangeBeamLine/"); + changeTheBeamLineDir -> SetGuidance("Command to change the transport beam line"); + + changeTheBeamLineNameCmd = new G4UIcmdWithAString("/ChangeBeamLine/beamLineName",this); + changeTheBeamLineNameCmd -> SetGuidance("Insert the name of the beam line you want simulate"); + changeTheBeamLineNameCmd -> SetParameterName("List",false); + changeTheBeamLineNameCmd -> AvailableForStates(G4State_PreInit); + + modulatorDir = new G4UIdirectory("/modulator/"); + modulatorDir -> SetGuidance("Command to rotate the modulator wheel"); + + beamLineDir = new G4UIdirectory("/beamLine/"); + beamLineDir -> SetGuidance("set specification of range shifter"); + + rangeShifterDir = new G4UIdirectory("/beamLine/BESTRangeShifter/"); + rangeShifterDir -> SetGuidance("set specification of range shifter"); + + firstScatteringFoilDir = new G4UIdirectory("/beamLine/BESTScatteringFoil1/"); + firstScatteringFoilDir -> SetGuidance("set specification of first scattering foil"); + + secondScatteringFoilDir = new G4UIdirectory("/beamLine/BESTScatteringFoil2/"); + secondScatteringFoilDir -> SetGuidance("set specification of second scattering foil"); + + rangeStopperDir = new G4UIdirectory("/beamLine/BESTStopper/"); + rangeStopperDir -> SetGuidance("set specification of stopper"); + + finalCollimatorDir = new G4UIdirectory("/beamLine/BESTFinalCollimator/"); + finalCollimatorDir -> SetGuidance("set specification of final collimator"); + + modulatorAngleCmd = new G4UIcmdWithADoubleAndUnit("/modulator/angle",this); + modulatorAngleCmd -> SetGuidance("Set Modulator Angle"); + modulatorAngleCmd -> SetParameterName("Size",false); + modulatorAngleCmd -> SetRange("Size>=0."); + modulatorAngleCmd -> SetUnitCategory("Angle"); + modulatorAngleCmd -> AvailableForStates(G4State_Idle); + + rangeShifterMatCmd = new G4UIcmdWithAString("/beamLine/BESTRangeShifter/RSMat",this); + rangeShifterMatCmd -> SetGuidance("Set material of range shifter"); + rangeShifterMatCmd -> SetParameterName("choice",false); + rangeShifterMatCmd -> AvailableForStates(G4State_Idle); + + rangeShifterXSizeCmd = new G4UIcmdWithADoubleAndUnit("/beamLine/BESTRangeShifter/thickness",this); + rangeShifterXSizeCmd -> SetGuidance("Set half of the thickness of range shifter along X axis"); + rangeShifterXSizeCmd -> SetParameterName("Size",false); + rangeShifterXSizeCmd -> SetDefaultUnit("mm"); + rangeShifterXSizeCmd -> SetUnitCandidates("mm cm m"); + rangeShifterXSizeCmd -> AvailableForStates(G4State_Idle); + + rangeShifterXPositionCmd = new G4UIcmdWithADoubleAndUnit("/beamLine/BESTRangeShifter/position",this); + rangeShifterXPositionCmd -> SetGuidance("Set position of range shifter"); + rangeShifterXPositionCmd -> SetParameterName("Size",false); + rangeShifterXPositionCmd -> SetDefaultUnit("mm"); + rangeShifterXPositionCmd -> SetUnitCandidates("mm cm m"); + rangeShifterXPositionCmd -> AvailableForStates(G4State_Idle); + + firstScatteringFoilXSizeCmd = new G4UIcmdWithADoubleAndUnit("/beamLine/BESTScatteringFoil1/thickness",this); + firstScatteringFoilXSizeCmd -> SetGuidance("Set half thickness of first scattering foil"); + firstScatteringFoilXSizeCmd -> SetParameterName("Size",false); + firstScatteringFoilXSizeCmd -> SetDefaultUnit("mm"); + firstScatteringFoilXSizeCmd -> SetUnitCandidates("mm cm m"); + firstScatteringFoilXSizeCmd -> AvailableForStates(G4State_Idle); + + secondScatteringFoilXSizeCmd = new G4UIcmdWithADoubleAndUnit("/beamLine/BESTScatteringFoil2/thickness",this); + secondScatteringFoilXSizeCmd -> SetGuidance("Set half thickness of second scattering foil"); + secondScatteringFoilXSizeCmd -> SetParameterName("Size",false); + secondScatteringFoilXSizeCmd -> SetDefaultUnit("mm"); + secondScatteringFoilXSizeCmd -> SetUnitCandidates("mm cm m"); + secondScatteringFoilXSizeCmd -> AvailableForStates(G4State_Idle); + + outerRadiusStopperCmd = new G4UIcmdWithADoubleAndUnit("/beamLine/BESTStopper/outRadius",this); + outerRadiusStopperCmd -> SetGuidance("Set size of outer radius"); + outerRadiusStopperCmd -> SetParameterName("Size",false); + outerRadiusStopperCmd -> SetDefaultUnit("mm"); + outerRadiusStopperCmd -> SetUnitCandidates("mm cm m"); + outerRadiusStopperCmd -> AvailableForStates(G4State_Idle); + + innerRadiusFinalCollimatorCmd = new G4UIcmdWithADoubleAndUnit("/beamLine/BESTFinalCollimator/halfInnerRad",this); + innerRadiusFinalCollimatorCmd -> SetGuidance("Set size of inner radius ( max 21.5 mm)"); + innerRadiusFinalCollimatorCmd -> SetParameterName("Size",false); + innerRadiusFinalCollimatorCmd -> SetDefaultUnit("mm"); + innerRadiusFinalCollimatorCmd -> SetUnitCandidates("mm cm m"); + innerRadiusFinalCollimatorCmd -> AvailableForStates(G4State_Idle); +} + +BESTPassiveProtonBeamLineMessenger::~BESTPassiveProtonBeamLineMessenger() +{ + delete innerRadiusFinalCollimatorCmd; + delete outerRadiusStopperCmd; + delete secondScatteringFoilXSizeCmd; + delete firstScatteringFoilXSizeCmd; + delete rangeShifterXPositionCmd; + delete rangeShifterXSizeCmd; + delete rangeShifterMatCmd; + delete modulatorAngleCmd; + delete finalCollimatorDir; + delete rangeStopperDir; + delete secondScatteringFoilDir; + delete firstScatteringFoilDir; + delete rangeShifterDir; + delete beamLineDir; + delete modulatorDir; +} + + + + +void BESTPassiveProtonBeamLineMessenger::SetNewValue(G4UIcommand* command,G4String newValue) +{ + if( command == modulatorAngleCmd ) + { passiveProton -> SetModulatorAngle + (modulatorAngleCmd -> GetNewDoubleValue(newValue));} + + else if( command == rangeShifterMatCmd ) + { passiveProton -> SetRSMaterial(newValue);} + + else if( command == rangeShifterXSizeCmd ) + { passiveProton -> SetRangeShifterXSize + (rangeShifterXSizeCmd -> GetNewDoubleValue(newValue));} + + else if( command == firstScatteringFoilXSizeCmd ) + { passiveProton -> SetFirstScatteringFoilXSize + (firstScatteringFoilXSizeCmd -> GetNewDoubleValue(newValue));} + + else if( command == secondScatteringFoilXSizeCmd ) + { passiveProton -> SetSecondScatteringFoilXSize + (secondScatteringFoilXSizeCmd -> GetNewDoubleValue(newValue));} + + else if( command == outerRadiusStopperCmd ) + { passiveProton -> SetOuterRadiusStopper( + outerRadiusStopperCmd -> GetNewDoubleValue(newValue));} + + else if( command == innerRadiusFinalCollimatorCmd ) + { passiveProton -> SetInnerRadiusFinalCollimator + (innerRadiusFinalCollimatorCmd -> GetNewDoubleValue(newValue));} +} + diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyDetectorConstruction.cc b/examples/advanced/hadrontherapy/src/HadrontherapyDetectorConstruction.cc index d69c7820e0..b0c7cb3f84 100644 --- a/examples/advanced/hadrontherapy/src/HadrontherapyDetectorConstruction.cc +++ b/examples/advanced/hadrontherapy/src/HadrontherapyDetectorConstruction.cc @@ -52,7 +52,7 @@ #include "HadrontherapyMatrix.hh" #include "HadrontherapyLet.hh" #include "PassiveProtonBeamLine.hh" - +#include "BESTPassiveProtonBeamLine.hh" #include "HadrontherapyMatrix.hh" #include "HadrontherapyRBE.hh" diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyDetectorSD.cc b/examples/advanced/hadrontherapy/src/HadrontherapyDetectorSD.cc index 988d355228..2fa2fd4c93 100644 --- a/examples/advanced/hadrontherapy/src/HadrontherapyDetectorSD.cc +++ b/examples/advanced/hadrontherapy/src/HadrontherapyDetectorSD.cc @@ -231,8 +231,10 @@ G4bool HadrontherapyDetectorSD::ProcessHits(G4Step* aStep, G4TouchableHistory* ) G4Exception("HadrontherapyDetectorSD::ProcessHits", "NoAccumulable", FatalException, "Accumulable RBE not found."); } } - - fRBEAccumulable->Accumulate(kineticEnergy / A, energyDeposit, DX, Z, i, j, k); + if (A>0) //protect against gammas, e- , etc + { + fRBEAccumulable->Accumulate(kineticEnergy / A, energyDeposit, DX, Z, i, j, k); + } } diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyElectricTabulatedField3D.cc b/examples/advanced/hadrontherapy/src/HadrontherapyElectricTabulatedField3D.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyEventAction.cc b/examples/advanced/hadrontherapy/src/HadrontherapyEventAction.cc index 7892ca0ab1..de9a8af802 100644 --- a/examples/advanced/hadrontherapy/src/HadrontherapyEventAction.cc +++ b/examples/advanced/hadrontherapy/src/HadrontherapyEventAction.cc @@ -84,8 +84,8 @@ void HadrontherapyEventAction::EndOfEventAction(const G4Event* evt) // Fill the matrix with the information: voxel and associated energy deposit // in the detector at the end of the event - G4int HitCount = CHC -> entries(); - for (G4int h=0; h entries(); + for (size_t h=0; h GetXID(); G4int j = ((*CHC)[h]) -> GetYID(); diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyEventActionMessenger.cc b/examples/advanced/hadrontherapy/src/HadrontherapyEventActionMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyGeometryController.cc b/examples/advanced/hadrontherapy/src/HadrontherapyGeometryController.cc index 008d987a3d..019bf9f96d 100644 --- a/examples/advanced/hadrontherapy/src/HadrontherapyGeometryController.cc +++ b/examples/advanced/hadrontherapy/src/HadrontherapyGeometryController.cc @@ -32,6 +32,7 @@ #include "HadrontherapyDetectorROGeometry.hh" #include "HadrontherapyTIFPAPassiveProtonBeamLine.hh" #include "PassiveProtonBeamLine.hh" +#include "BESTPassiveProtonBeamLine.hh" #include "PassiveCarbonBeamLine.hh" #include "LaserDrivenBeamLine.hh" #include "G4RunManager.hh" @@ -67,6 +68,11 @@ void HadrontherapyGeometryController::SetGeometry(G4String name) { registerGeometry(new TrentoPassiveProtonBeamLine()); } + else if(name == "BESTBeamLine") + { + registerGeometry(new BESTPassiveProtonBeamLine()); + } + else { G4cout <<"Unknown geometry: " << name << ". Geometry not changed." << G4endl; diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyInteractionParameters.cc b/examples/advanced/hadrontherapy/src/HadrontherapyInteractionParameters.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyParameterMessenger.cc b/examples/advanced/hadrontherapy/src/HadrontherapyParameterMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyPrimaryGeneratorAction.cc b/examples/advanced/hadrontherapy/src/HadrontherapyPrimaryGeneratorAction.cc index 144b362316..26815d07ff 100644 --- a/examples/advanced/hadrontherapy/src/HadrontherapyPrimaryGeneratorAction.cc +++ b/examples/advanced/hadrontherapy/src/HadrontherapyPrimaryGeneratorAction.cc @@ -52,81 +52,74 @@ ///////////////////////////////////////////////////////////////////////////// -HadrontherapyPrimaryGeneratorAction::HadrontherapyPrimaryGeneratorAction() +HadrontherapyPrimaryGeneratorAction::HadrontherapyPrimaryGeneratorAction() : + fNewSource(false) { PrimaryGeneratorMessenger = new HadrontherapyPrimaryGeneratorMessenger(this); - SetDefaultPrimaryParticle(); particleGun = new G4GeneralParticleSource(); - + calculatedPhaseSpaceFileIN = "NULL"; } ///////////////////////////////////////////////////////////////////////////// HadrontherapyPrimaryGeneratorAction::~HadrontherapyPrimaryGeneratorAction() { delete PrimaryGeneratorMessenger; - delete particleGun; -} - -///////////////////////////////////////////////////////////////////////////// -void HadrontherapyPrimaryGeneratorAction::SetDefaultPrimaryParticle() -{ - + delete particleGun; } ///////////////////////////////////////////////////////////////////////////// void HadrontherapyPrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) { - - if(NewSource==true) + if(fNewSource==true) { - std::ifstream in(calculatedPhaseSpaceFileIN); - G4double e, xpos, ypos, zpos,dirx,diry,dirz; - G4int PDG; - G4ThreeVector pos,dir; - - if(in.eof()) + std::ifstream in(calculatedPhaseSpaceFileIN); + G4double e, xpos, ypos, zpos,dirx,diry,dirz; + G4int PDG; + G4ThreeVector pos,dir; + + if(in.eof()) { - G4Exception("HadrontherapyPrimaryGeneratorAction", "NoParticles", FatalException, "No more particles in the file"); + G4Exception("HadrontherapyPrimaryGeneratorAction", "NoParticles", FatalException, "No more particles in the file"); } - - while(!in.eof()) + + while(!in.eof()) { - - in >> e >> xpos >> ypos >>zpos >>dirx>>diry>>dirz >> PDG; - dir= G4ThreeVector(dirx,diry,dirz); - particleGun->GetCurrentSource()->GetEneDist()->SetMonoEnergy(e); - - particleGun->GetCurrentSource()->GetParticlePosition().setX(xpos); - particleGun->GetCurrentSource()->GetParticlePosition().setY(ypos); - particleGun->GetCurrentSource()->GetParticlePosition().setZ(zpos); - particleGun->GetCurrentSource()->GetAngDist()->SetParticleMomentumDirection(dir); - - G4ParticleDefinition* particleDef = nullptr; - if (PDG > 1000000000) + + in >> e >> xpos >> ypos >>zpos >>dirx>>diry>>dirz >> PDG; + dir= G4ThreeVector(dirx,diry,dirz); + particleGun->GetCurrentSource()->GetEneDist()->SetMonoEnergy(e); + + particleGun->GetCurrentSource()->GetParticlePosition().setX(xpos); + particleGun->GetCurrentSource()->GetParticlePosition().setY(ypos); + particleGun->GetCurrentSource()->GetParticlePosition().setZ(zpos); + particleGun->GetCurrentSource()->GetAngDist()->SetParticleMomentumDirection(dir); + + G4ParticleDefinition* particleDef = nullptr; + if (PDG > 1000000000) { - int a=(PDG-1000000000)-(((PDG-1000000000)/10)*10); - if(a>0) + int a=(PDG-1000000000)-(((PDG-1000000000)/10)*10); + if(a>0) { - PDG=PDG-a; - particleDef = G4IonTable::GetIonTable()->GetIon(PDG); - G4String Nome = particleDef->GetParticleName(); + PDG=PDG-a; + particleDef = G4IonTable::GetIonTable()->GetIon(PDG); + G4String Nome = particleDef->GetParticleName(); } - - else + + else { - particleDef = G4IonTable::GetIonTable()->GetIon(PDG); - G4String Nome = particleDef->GetParticleName(); + particleDef = G4IonTable::GetIonTable()->GetIon(PDG); + G4String Nome = particleDef->GetParticleName(); } } - - else + + else { - particleDef = G4ParticleTable::GetParticleTable()->FindParticle(PDG); + particleDef = G4ParticleTable::GetParticleTable()->FindParticle(PDG); } - - particleGun->GetCurrentSource()->SetParticleDefinition(particleDef); - particleGun->GeneratePrimaryVertex(anEvent); - + + particleGun->GetCurrentSource()->SetParticleDefinition(particleDef); + particleGun->GeneratePrimaryVertex(anEvent); + } in.close(); diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyRBE.cc b/examples/advanced/hadrontherapy/src/HadrontherapyRBE.cc old mode 100755 new mode 100644 index d7290c4eb1..24eadefa9e --- a/examples/advanced/hadrontherapy/src/HadrontherapyRBE.cc +++ b/examples/advanced/hadrontherapy/src/HadrontherapyRBE.cc @@ -172,7 +172,7 @@ void HadrontherapyRBE::LoadLEMTable(G4String path) } else { - columnIndices[columnName] = distance(header.begin(), pos); + columnIndices[columnName] = (G4int) distance(header.begin(), pos); } } @@ -332,7 +332,7 @@ std::tuple HadrontherapyRBE::GetHitAlphaAndBeta(G4double E, // Find the row in energy tables const auto eLarger = upper_bound(begin(vecEnergy), end(vecEnergy), E); - const G4int lower = distance(begin(vecEnergy), eLarger) - 1; + const G4int lower = (G4int) distance(begin(vecEnergy), eLarger) - 1; const G4int upper = lower + 1; // Interpolation @@ -358,11 +358,23 @@ void HadrontherapyRBE::ComputeAlphaAndBeta() { G4cout << "RBE: Computing alpha and beta..." << G4endl; } - fAlpha = fAlphaNumerator / (fDenominator * gray); - - fBeta = pow(fBetaNumerator / fDenominator * gray, 2.0); - - //g4pow -> powN(fBetaNumerator / fDenominator * gray, 2) + //Re-inizialize the number of voxels + fAlpha.resize(fAlphaNumerator.size()); //Initialize with the same number of elements + fBeta.resize(fBetaNumerator.size()); //Initialize with the same number of elements + for (size_t ii=0; ii 0) + { + fAlpha[ii] = fAlphaNumerator[ii] / (fDenominator[ii] * gray); + fBeta[ii] = std::pow(fBetaNumerator[ii] / (fDenominator[ii] * gray), 2.0); + } + else + { + fAlpha[ii] = 0.; + fBeta[ii] = 0.; + } + } + } void HadrontherapyRBE::ComputeRBE() @@ -398,7 +410,9 @@ void HadrontherapyRBE::ComputeRBE() fDoseX[i] = ( (-fLnS[i] + ln_Scut) / smax ) + fDoseCut; } } - fRBE = fDoseX / fDose; + fRBE.resize(fDoseX.size()); + for (size_t ii=0;ii 0) ? fDoseX[ii] / fDose[ii] : 0.; fSurvival = exp(fLnS); } diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyRBEAccumulable.cc b/examples/advanced/hadrontherapy/src/HadrontherapyRBEAccumulable.cc old mode 100755 new mode 100644 index 55cefb6e0d..7a0b100f49 --- a/examples/advanced/hadrontherapy/src/HadrontherapyRBEAccumulable.cc +++ b/examples/advanced/hadrontherapy/src/HadrontherapyRBEAccumulable.cc @@ -116,7 +116,7 @@ void HadrontherapyRBEAccumulable::Initialize() fVoxelsAlongX = rbe->GetNumberOfVoxelsAlongX(); fVoxelsAlongY = rbe->GetNumberOfVoxelsAlongY(); fVoxelsAlongZ = rbe->GetNumberOfVoxelsAlongZ(); - fVoxels = fVoxelsAlongX * fVoxelsAlongY * fVoxelsAlongZ; + fVoxels = (size_t) (fVoxelsAlongX * fVoxelsAlongY * fVoxelsAlongZ); if (GetVerboseLevel() > 1) { diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyRunAction.cc b/examples/advanced/hadrontherapy/src/HadrontherapyRunAction.cc index cfbea70aa5..14a3ce69d5 100644 --- a/examples/advanced/hadrontherapy/src/HadrontherapyRunAction.cc +++ b/examples/advanced/hadrontherapy/src/HadrontherapyRunAction.cc @@ -55,7 +55,7 @@ HadrontherapyRunAction::HadrontherapyRunAction() ///////////////////////////////////////////////////////////////////////////// HadrontherapyRunAction::~HadrontherapyRunAction() { - //delete G4AnalysisManager::Instance(); + delete G4AnalysisManager::Instance(); } ///////////////////////////////////////////////////////////////////////////// @@ -108,9 +108,10 @@ void HadrontherapyRunAction::EndOfRunAction(const G4Run*) rbe->StoreRBE(); } - analysisManager->Write(); - analysisManager->CloseFile(); - + if (analysisManager->IsOpenFile()) { + analysisManager->Write(); + analysisManager->CloseFile(); + } } ///////////////////////////////////////////////////////////////////////////// void HadrontherapyRunAction::AddEMProcess() diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyTIFPAPassiveProtonBeamLine.cc b/examples/advanced/hadrontherapy/src/HadrontherapyTIFPAPassiveProtonBeamLine.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/src/HadrontherapyTIFPAPassiveProtonBeamLineMessenger.cc b/examples/advanced/hadrontherapy/src/HadrontherapyTIFPAPassiveProtonBeamLineMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/src/PassiveCarbonBeamLine.cc b/examples/advanced/hadrontherapy/src/PassiveCarbonBeamLine.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/src/PassiveCarbonBeamLineMessenger.cc b/examples/advanced/hadrontherapy/src/PassiveCarbonBeamLineMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/src/PassiveProtonBeamLine.cc b/examples/advanced/hadrontherapy/src/PassiveProtonBeamLine.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/hadrontherapy/src/PassiveProtonBeamLineMessenger.cc b/examples/advanced/hadrontherapy/src/PassiveProtonBeamLineMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/CMakeLists.txt b/examples/advanced/human_phantom/CMakeLists.txt index 2ae4a57108..560ece387a 100644 --- a/examples/advanced/human_phantom/CMakeLists.txt +++ b/examples/advanced/human_phantom/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(human_phantom) #---------------------------------------------------------------------------- @@ -20,7 +23,7 @@ endif() # include(${Geant4_USE_FILE}) -# Setup of ROOT ANALYSIS : optional. +# Setup of ROOT ANALYSIS : optional. option(WITH_ANALYSIS_USE "Build example with analysis objects" OFF) if(WITH_ANALYSIS_USE) add_definitions(-DANALYSIS_USE) @@ -28,7 +31,7 @@ else() endif() #---------------------------------------------------------------------------- -# Setup of GDML : optional. +# Setup of GDML : optional. option(WITH_GDML_USE "Build example with GDML" OFF) if(WITH_GDML_USE) add_definitions(-DG4LIB_USE_GDML) @@ -38,7 +41,7 @@ endif() #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR} ${GDML_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) @@ -56,7 +59,7 @@ target_link_libraries(phantom ${Geant4_LIBRARIES} ${GDML_LIBRARIES} ) # relies on these scripts being in the current working directory. # set(human_phantom_SCRIPTS - adultHead.mac adultMIRDFemale.mac adultMIRDMale.mac adultMIXFemale.mac adultORNLFemale.mac adultORNLMale.mac batch.mac dawnVis.mac default.mac openGLVis.mac vrmlVis.mac primary.mac macro.C + adultHead.mac adultMIRDFemale.mac adultMIRDMale.mac adultMIXFemale.mac adultORNLFemale.mac adultORNLMale.mac batch.mac dawnVis.mac default.mac openGLVis.mac vrmlVis.mac primary.mac macro.C ) foreach(_script ${human_phantom_SCRIPTS}) diff --git a/examples/advanced/human_phantom/History b/examples/advanced/human_phantom/History index 71c72a8970..a2f25957d5 100644 --- a/examples/advanced/human_phantom/History +++ b/examples/advanced/human_phantom/History @@ -16,9 +16,14 @@ committal in the CVS repository ! ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Nov 15, 2020, S. Guatelli tag human_phantom-V10-06-01 +- Migration to G4RunManagerFactory + +Nov 2, 2020, B.Morgan tag human_phantom-V10-06-00 +- Support same CMake version range as core Geant4 Dec 5, 201, S. Guatelli tag human_phantom_V10-05-01 -- Geometry bug resolved (Left and right clavicles in the MIRD model, +- Geometry bug resolved (Left and right clavicles in the MIRD model, position translated of 2 cm in the y direction Jan 31, 2019, I.Hrivnacova tag human_phantom-V10-05-00 @@ -39,7 +44,7 @@ May 19, 2016, G. Cosmo tag human_phantom-V10-02-00 - Fixed compilation warning on gcc-6.1 in G4CustomFemalBuilder. Mar 7, 2015, A. Dotti tag human_phantom-V10-01-01 -- Fixing compilaiton warning from previous tag on clang35 +- Fixing compilaiton warning from previous tag on clang35 Mar 6, 2015, A. Dotti tag human_phantom-V10-01-00 - removing unnecessary GPS in master @@ -58,7 +63,7 @@ Nov 6, 2013, S. Guatelli tag human_phantom-V09-06-05 Nov 6, 2013, S. Guatelli tag human_phantom-V09-06-04 - Testes and Genitalia modelling added for MIRD model -- MT mode +- MT mode Jul 30, 2013, A. Dotti, tag human_phantom-V09-06-03 - Bug fixing for compilation warning for clang32 @@ -71,7 +76,7 @@ May 17, 2013, S. Guatelli, tag human_phantom-V09-06-01 - G4 analysis component introduced - G4 General Particle Source used - General cleaning in macro files -- macro.C added to print the content of the ntuple generated +- macro.C added to print the content of the ntuple generated in the simulation. December 12, 2012, V.Ivanchenko tag human_phantom-V09-06-00 @@ -97,7 +102,7 @@ December 8, 2011, P. Mato, tag human_phantom-V09-05-00 November 17, 2011, G. Folger, tag human_phantom-V09-04-04 - Fix compilation warning at end of G4HumanPhantomConstruction::Construct(). - (delete must be before return) + (delete must be before return) November 3, 2011, G. Folger, tag human_phantom-V09-04-03 - Add batch.mac to allow testing without display. @@ -109,7 +114,7 @@ September 27, 2011, S. Guatelli, tag human_phantom-V09-04-01 - G4Analysis component introduced, subtituting PI-AIDA analysis January 17, 2011, L. Pandola, tag human_phantom-V09-04-00 -- edited G4VoxelLeftBreast and G4VoxelRightBreast to ensure +- edited G4VoxelLeftBreast and G4VoxelRightBreast to ensure compliance with CLHEP 2.1.0.0 November 26, 2010, S. Guatelli, tag human_phantom-V09-03-05 @@ -127,7 +132,7 @@ June 4, 2010, J. Perl, tag: human_phantom-V09-03-02 - Updated vis usage June 4, 2010, S. Guatelli, tag: human_phantom-V09-03-01 -- Migration of Physics List +- Migration of Physics List April 29, 2010, G. Cosmo, tag: human_phantom-V09-03-00 - Added missing includes of G4PVPlacement, causing compilation error. @@ -182,13 +187,13 @@ February 21, 2007, S. Guatelli tag:human_phantom-V08-02-02 January 17, 2007, S. Guatelli tag:human_phantom-V08-02-00 November 30, 2006, S. Guatelli tag: human_phantom-V08-01-03 -- Corrected bug in the definition of materials for MIRD phantom model. +- Corrected bug in the definition of materials for MIRD phantom model. November 30, 2006, S. Guatelli tag: human_phantom-V08-01-01 human_phantom-V08-01-02 - Geantino introduced as primary particles - MIRD model is hard-coded -- ORNL model is defined through GDML files +- ORNL model is defined through GDML files - No overlapping volumes - Translation for the legs is set to:x="-7.01" y="-39.1" z="0" instead of x="-7." y="-39." z="0", to avoid volume overlaps @@ -218,6 +223,6 @@ June 20, 2005 G. Guerrieri -- Model pf Phantom -- Name of body part to be built and their sensitivity -June 15rd, 2005 G. Guerrieri +June 15rd, 2005 G. Guerrieri - First implementation of phantom using GDML file for description persistency. diff --git a/examples/advanced/human_phantom/adultHead.mac b/examples/advanced/human_phantom/adultHead.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/adultMIRDFemale.mac b/examples/advanced/human_phantom/adultMIRDFemale.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/adultMIRDMale.mac b/examples/advanced/human_phantom/adultMIRDMale.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/adultMIXFemale.mac b/examples/advanced/human_phantom/adultMIXFemale.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/batch.mac b/examples/advanced/human_phantom/batch.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/default.mac b/examples/advanced/human_phantom/default.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/human_phantom.out b/examples/advanced/human_phantom/human_phantom.out index ec05fea578..d51d78c45f 100644 --- a/examples/advanced/human_phantom/human_phantom.out +++ b/examples/advanced/human_phantom/human_phantom.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +27,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -173,28 +176,28 @@ sensitivity : 0 Construct UpperSpine with mother volume physicalHead Checking overlaps for volume physicalUpperSpine (G4SubtractionSolid) ... OK! UpperSpine created !!!!!! -Volume of UpperSpine = 126.526 cm^3 +Volume of UpperSpine = 126.519 cm^3 Material of UpperSpine = skeleton Density of Material = 1.4862 g/cm^3 -Mass of UpperSpine = 188.044 g +Mass of UpperSpine = 188.033 g MotherVolume: physicalTrunk sensitivity : 0 Construct LeftScapula with mother volume physicalTrunk Checking overlaps for volume physicalLeftScapula (G4SubtractionSolid) ... OK! LeftScapula created !!!!!! -Volume of LeftScapula = 99.759 cm^3 +Volume of LeftScapula = 99.8079 cm^3 Material of LeftScapula = skeleton Density of Material = 1.4862 g/cm^3 -Mass of LeftScapula = 148.262 g +Mass of LeftScapula = 148.334 g MotherVolume: physicalTrunk sensitivity : 0 Construct RightScapula with mother volume physicalTrunk Checking overlaps for volume physicalRightScapula (G4SubtractionSolid) ... OK! RightScapula created !!!!!! -Volume of RightScapula = 103.167 cm^3 +Volume of RightScapula = 100.761 cm^3 Material of RightScapula = skeleton Density of Material = 1.4862 g/cm^3 -Mass of RightScapula = 153.327 g +Mass of RightScapula = 149.75 g Construct LeftAdrenal with mother physicalTrunk Checking overlaps for volume physicalLeftAdrenal (G4Ellipsoid) ... OK! Left LeftAdrenal created !!!!!! @@ -256,10 +259,10 @@ Checking overlaps for volume physicalRib (G4SubtractionSolid) ... OK! Checking overlaps for volume physicalRib (G4SubtractionSolid) ... OK! Checking overlaps for volume physicalRib (G4SubtractionSolid) ... OK! RibCage created !!!!!! -Volume of RibCage = 693.651 cm^3 +Volume of RibCage = 698.499 cm^3 Material of RibCage = skeleton Density of Material = 1.4862 g/cm^3 -Mass of RibCage = 1030.9 g +Mass of RibCage = 1038.11 g MotherVolume: physicalTrunk sensitivity : 0 Construct MiddleLowerSpine with mother volume physicalTrunk @@ -272,10 +275,10 @@ Mass of MiddleLowerSpine = 1120.57 g Construct Pelvis with mother volume physicalTrunk Checking overlaps for volume physicalPelvis (G4SubtractionSolid) ... OK! Pelvis created !!!!!! -Volume of Pelvis = 605.932 cm^3 +Volume of Pelvis = 605.134 cm^3 Material of Pelvis = skeleton Density of Material = 1.4862 g/cm^3 -Mass of Pelvis = 900.536 g +Mass of Pelvis = 899.35 g Construct Stomach with mother volume physicalTrunk Checking overlaps for volume physicalStomach (G4Ellipsoid) ... OK! Stomach created !!!!!! @@ -286,17 +289,17 @@ Mass of Stomach = 396.856 g Construct UpperLargeIntestine with mother volume physicalTrunk Checking overlaps for volume physicalUpperLargeIntestine (G4UnionSolid) ... OK! UpperLargeIntestine created !!!!!! -Volume of UpperLargeIntestine = 434.039 cm^3 +Volume of UpperLargeIntestine = 435.304 cm^3 Material of UpperLargeIntestine = soft_tissue Density of Material = 0.9869 g/cm^3 -Mass of UpperLargeIntestine = 428.353 g +Mass of UpperLargeIntestine = 429.601 g Construct LowerLargeIntestine with mother volume physicalTrunk Checking overlaps for volume physicalLowerLargeIntestine (G4UnionSolid) ... OK! LowerLargeIntestine created !!!!!! -Volume of LowerLargeIntestine = 343.562 cm^3 +Volume of LowerLargeIntestine = 344.198 cm^3 Material of LowerLargeIntestine = soft_tissue Density of Material = 0.9869 g/cm^3 -Mass of LowerLargeIntestine = 339.062 g +Mass of LowerLargeIntestine = 339.689 g Construct Spleen with mother volume physicalTrunk Checking overlaps for volume physicalSpleen (G4Ellipsoid) ... OK! Spleen created !!!!!! @@ -307,40 +310,40 @@ Mass of Spleen = 173.625 g Construct Pancreas with mother volume physicalTrunk Checking overlaps for volume physicalPancreas (G4SubtractionSolid) ... OK! Pancreas created !!!!!! -Volume of Pancreas = 61.0776 cm^3 +Volume of Pancreas = 61.0518 cm^3 Material of Pancreas = soft_tissue Density of Material = 0.9869 g/cm^3 -Mass of Pancreas = 60.2775 g +Mass of Pancreas = 60.2521 g Construct LeftKidney with mother volume physicalTrunk Checking overlaps for volume physicalLeftKidney (G4SubtractionSolid) ... OK! Left LeftKidney created !!!!!! -Volume of LeftKidney = 144.133 cm^3 +Volume of LeftKidney = 144.061 cm^3 Material of LeftKidney = soft_tissue Density of Material = 0.9869 g/cm^3 -Mass of LeftKidney = 142.245 g +Mass of LeftKidney = 142.174 g Construct RightKidney with mother volume physicalTrunk Checking overlaps for volume physicalRightKidney (G4SubtractionSolid) ... OK! RightKidney created !!!!!! -Volume of RightKidney = 144.273 cm^3 +Volume of RightKidney = 144.161 cm^3 Material of RightKidney = soft_tissue Density of Material = 0.9869 g/cm^3 -Mass of RightKidney = 142.383 g +Mass of RightKidney = 142.272 g Construct UrinaryBladder with mother volume physicalTrunk Checking overlaps for volume physicalUrinaryBladder (G4SubtractionSolid) ... OK! UrinaryBladder created !!!!!! -Volume of UrinaryBladder = 45.7625 cm^3 +Volume of UrinaryBladder = 45.7445 cm^3 Material of UrinaryBladder = soft_tissue Density of Material = 0.9869 g/cm^3 -Mass of UrinaryBladder = 45.163 g +Mass of UrinaryBladder = 45.1452 g MotherVolume: physicalWorld sensitivity : 0 Construct MaleGenitalia with mother volume physicalWorld Checking overlaps for volume physicalMaleGenitalia (G4SubtractionSolid) ... OK! MaleGenitalia created !!!!!! -Volume of MaleGenitalia = 229.44 cm^3 +Volume of MaleGenitalia = 229.292 cm^3 Material of MaleGenitalia = soft_tissue Density of Material = 0.9869 g/cm^3 -Mass of MaleGenitalia = 226.434 g +Mass of MaleGenitalia = 226.288 g MotherVolume: physicalWorld sensitivity : 0 Construct LeftTeste with mother volume physicalMaleGenitalia @@ -414,10 +417,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -440,7 +444,7 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 @@ -449,10 +453,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -475,7 +480,7 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -488,9 +493,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -504,7 +509,7 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for proton SubType=4 @@ -512,7 +517,7 @@ hPairProd: for proton SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -525,9 +530,9 @@ nuclearStopping: for proton SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -541,9 +546,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -558,9 +563,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -574,7 +579,7 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for anti_proton SubType=4 @@ -582,7 +587,7 @@ hPairProd: for anti_proton SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -591,9 +596,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -607,7 +612,7 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for kaon+ SubType=4 @@ -615,7 +620,7 @@ hPairProd: for kaon+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -624,9 +629,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -640,7 +645,7 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for kaon- SubType=4 @@ -648,7 +653,7 @@ hPairProd: for kaon- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -657,9 +662,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -674,7 +679,7 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied muPairProd: for mu+ SubType=4 @@ -682,7 +687,7 @@ muPairProd: for mu+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -691,9 +696,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -708,7 +713,7 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied muPairProd: for mu- SubType=4 @@ -716,7 +721,7 @@ muPairProd: for mu- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -725,9 +730,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -741,7 +746,7 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for pi+ SubType=4 @@ -749,7 +754,7 @@ hPairProd: for pi+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -758,9 +763,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -774,7 +779,7 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for pi- SubType=4 @@ -782,7 +787,7 @@ hPairProd: for pi- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -795,21 +800,21 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Index : 0 used in the geometry : Yes Material : Air Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 250 eV e- 334.972 eV e+ 332.026 eV proton 100 keV + Energy thresholds : gamma 250 eV e- 339.229 eV e+ 333.259 eV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 1 used in the geometry : Yes Material : soft_tissue Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.79296 keV e- 348.589 keV e+ 336.147 keV proton 100 keV + Energy thresholds : gamma 2.79506 keV e- 349.375 keV e+ 336.864 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : skeleton Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 4.01712 keV e- 439.884 keV e+ 424.182 keV proton 100 keV + Energy thresholds : gamma 3.99576 keV e- 444.448 keV e+ 425.418 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -820,47 +825,50 @@ See commands in /vis/modeling/trajectories/ for other options. ### Run 0 start. Number of events = 100 Energy Total in Run:logicalBrain, ID: 0, Energy Deposition (MeV): 0 -Energy Total in Run:logicalHead, ID: 1, Energy Deposition (MeV): 1.71365 +Energy Total in Run:logicalHead, ID: 1, Energy Deposition (MeV): 5.64505 Energy Total in Run:logicalHeart, ID: 2, Energy Deposition (MeV): 0 Energy Total in Run:logicalLeftAdrenal, ID: 3, Energy Deposition (MeV): 0 Energy Total in Run:logicalLeftArmBone, ID: 4, Energy Deposition (MeV): 0 Energy Total in Run:logicalLeftBreast, ID: 5, Energy Deposition (MeV): 0 Energy Total in Run:logicalLeftClavicle, ID: 6, Energy Deposition (MeV): 0 Energy Total in Run:logicalLeftKidney, ID: 7, Energy Deposition (MeV): 0 -Energy Total in Run:logicalLeftLeg, ID: 8, Energy Deposition (MeV): 8.23014 +Energy Total in Run:logicalLeftLeg, ID: 8, Energy Deposition (MeV): 6.5974 Energy Total in Run:logicalLeftLegBone, ID: 9, Energy Deposition (MeV): 0 Energy Total in Run:logicalLeftLung, ID: 10, Energy Deposition (MeV): 0 Energy Total in Run:logicalLeftOvary, ID: 11, Energy Deposition (MeV): 0 Energy Total in Run:logicalLeftScapula, ID: 12, Energy Deposition (MeV): 0 Energy Total in Run:logicalLeftTeste, ID: 13, Energy Deposition (MeV): 0 Energy Total in Run:logicalLowerLargeIntestine, ID: 14, Energy Deposition (MeV): 0 -Energy Total in Run:logicalMaleGenitalia, ID: 15, Energy Deposition (MeV): 0 +Energy Total in Run:logicalMaleGenitalia, ID: 15, Energy Deposition (MeV): 0.962342 Energy Total in Run:logicalMiddleLowerSpine, ID: 16, Energy Deposition (MeV): 0 Energy Total in Run:logicalPancreas, ID: 17, Energy Deposition (MeV): 0 Energy Total in Run:logicalPelvis, ID: 18, Energy Deposition (MeV): 0 -Energy Total in Run:logicalRibCage, ID: 19, Energy Deposition (MeV): 1.2929 +Energy Total in Run:logicalRibCage, ID: 19, Energy Deposition (MeV): 0.272076 Energy Total in Run:logicalRightAdrenal, ID: 20, Energy Deposition (MeV): 0 Energy Total in Run:logicalRightArmBone, ID: 21, Energy Deposition (MeV): 0 Energy Total in Run:logicalRightBreast, ID: 22, Energy Deposition (MeV): 0 Energy Total in Run:logicalRightClavicle, ID: 23, Energy Deposition (MeV): 0 Energy Total in Run:logicalRightKidney, ID: 24, Energy Deposition (MeV): 0 -Energy Total in Run:logicalRightLeg, ID: 25, Energy Deposition (MeV): 6.38203 +Energy Total in Run:logicalRightLeg, ID: 25, Energy Deposition (MeV): 12.2944 Energy Total in Run:logicalRightLegBone, ID: 26, Energy Deposition (MeV): 0 Energy Total in Run:logicalRightLung, ID: 27, Energy Deposition (MeV): 0 Energy Total in Run:logicalRightOvary, ID: 28, Energy Deposition (MeV): 0 Energy Total in Run:logicalRightScapula, ID: 29, Energy Deposition (MeV): 0 Energy Total in Run:logicalRightTeste, ID: 30, Energy Deposition (MeV): 0 -Energy Total in Run:logicalSkull, ID: 31, Energy Deposition (MeV): 0.218034 +Energy Total in Run:logicalSkull, ID: 31, Energy Deposition (MeV): 0.0781642 Energy Total in Run:logicalSmallIntestine, ID: 32, Energy Deposition (MeV): 0 Energy Total in Run:logicalSpleen, ID: 33, Energy Deposition (MeV): 0 Energy Total in Run:logicalStomach, ID: 34, Energy Deposition (MeV): 0 Energy Total in Run:logicalThymus, ID: 35, Energy Deposition (MeV): 0 Energy Total in Run:logicalThyroid, ID: 36, Energy Deposition (MeV): 0 -Energy Total in Run:logicalTrunk, ID: 37, Energy Deposition (MeV): 30.2285 +Energy Total in Run:logicalTrunk, ID: 37, Energy Deposition (MeV): 28.8936 Energy Total in Run:logicalUpperLargeIntestine, ID: 38, Energy Deposition (MeV): 0 Energy Total in Run:logicalUpperSpine, ID: 39, Energy Deposition (MeV): 0 Energy Total in Run:logicalUrinaryBladder, ID: 40, Energy Deposition (MeV): 0 Energy Total in Run:logicalUterus, ID: 41, Energy Deposition (MeV): 0 -Total Energy deposit in the body is: 48.0653 MeV +Total Energy deposit in the body is: 54.7431 MeV +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/advanced/human_phantom/include/G4MIRDLeftAdrenal.hh b/examples/advanced/human_phantom/include/G4MIRDLeftAdrenal.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/include/G4MIRDLeftClavicle.hh b/examples/advanced/human_phantom/include/G4MIRDLeftClavicle.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/include/G4MIRDLeftScapula.hh b/examples/advanced/human_phantom/include/G4MIRDLeftScapula.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/include/G4MIRDRightAdrenal.hh b/examples/advanced/human_phantom/include/G4MIRDRightAdrenal.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/include/G4MIRDRightClavicle.hh b/examples/advanced/human_phantom/include/G4MIRDRightClavicle.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/include/G4MIRDRightScapula.hh b/examples/advanced/human_phantom/include/G4MIRDRightScapula.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/phantom.cc b/examples/advanced/human_phantom/phantom.cc index 6a218bac1b..431fec61d0 100644 --- a/examples/advanced/human_phantom/phantom.cc +++ b/examples/advanced/human_phantom/phantom.cc @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // Previous authors: G. Guerrieri, S. Guatelli and M. G. Pia, INFN Genova, Italy -// Authors (since 2007): S. Guatelli,University of Wollongong, Australia +// Maintener (since 2007): S. Guatelli,University of Wollongong, Australia // Contributions by F. Ambroglini, INFN Perugia, Italy #include @@ -35,26 +35,16 @@ #include "G4TransportationManager.hh" #include "G4VisExecutive.hh" #include "G4UIExecutive.hh" - - #include "G4HumanPhantomConstruction.hh" #include "G4HumanPhantomPhysicsList.hh" #include "G4HumanPhantomActionInitialization.hh" - -#ifdef G4MULTITHREADED - #include "G4MTRunManager.hh" -#else - #include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" int main(int argc,char** argv) { -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; - runManager->SetNumberOfThreads(4); // Is equal to 2 by default -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = G4RunManagerFactory::CreateRunManager(); + G4int nThreads = 4; + runManager->SetNumberOfThreads(nThreads); // Set mandatory initialization classes G4HumanPhantomConstruction* userPhantom = new G4HumanPhantomConstruction(); diff --git a/examples/advanced/human_phantom/src/G4MIRDLeftAdrenal.cc b/examples/advanced/human_phantom/src/G4MIRDLeftAdrenal.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/src/G4MIRDLeftScapula.cc b/examples/advanced/human_phantom/src/G4MIRDLeftScapula.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/src/G4MIRDRightAdrenal.cc b/examples/advanced/human_phantom/src/G4MIRDRightAdrenal.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/human_phantom/src/G4MIRDRightScapula.cc b/examples/advanced/human_phantom/src/G4MIRDRightScapula.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/CMakeLists.txt b/examples/advanced/iort_therapy/CMakeLists.txt index 23acbe03ad..992f588b18 100644 --- a/examples/advanced/iort_therapy/CMakeLists.txt +++ b/examples/advanced/iort_therapy/CMakeLists.txt @@ -1,33 +1,22 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(iort_therapy) -option(WITH_GEANT4_UIVIS "Build example with Geant4 UI and Vis drivers" ON) -if(WITH_GEANT4_UIVIS) - find_package(Geant4 REQUIRED ui_all vis_all) -else() - find_package(Geant4 REQUIRED) +option(WITH_GEANT4_UIVIS "Build example with Geant4 UI and Vis drivers" ON) +if(WITH_GEANT4_UIVIS) + find_package(Geant4 REQUIRED ui_all vis_all) +else() + find_package(Geant4 REQUIRED) endif() #---------------------------------------------------------------------------- # Setup Geant4 include directories and compile definitions # include(${Geant4_USE_FILE}) - -#---------------------------------------------------------------------------- -# Find ROOT (optional package) -# -#find_package(ROOT QUIET) -#if(ROOT_FOUND) -# message(STATUS "G4 Examples: ROOT found. --> iort_therapy example with ROOT plotter enabled.") -# # Uncomment this line if suitable (some customization may be needed) -# add_definitions(-DG4ANALYSIS_USE_ROOT) -# include_directories(${PROJECT_SOURCE_DIR}/include -# ${Geant4_INCLUDE_DIR} -# ${ROOT_INCLUDE_DIRS}) -#else() -#message(STATUS "G4 Examples: ROOT not found. --> iort_therapy example with ROOT plotter disabled.") include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) #endif() @@ -42,12 +31,7 @@ file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) # Add the executable, and link it to the Geant4 libraries # add_executable(iort_therapy iort_therapy.cc ${sources} ${headers}) - -#if(ROOT_FOUND) -# target_link_libraries(iort_therapy ${Geant4_LIBRARIES} ${ROOT_LIBRARIES}) -#else() target_link_libraries(iort_therapy ${Geant4_LIBRARIES}) -#endif() #---------------------------------------------------------------------------- # Copy all scripts to the build directory, i.e. the directory in which we diff --git a/examples/advanced/iort_therapy/History b/examples/advanced/iort_therapy/History index 7dcc1740c5..7c0dd6e45e 100644 --- a/examples/advanced/iort_therapy/History +++ b/examples/advanced/iort_therapy/History @@ -6,6 +6,11 @@ carlo.casarino@polooncologicocefalu.it ==================================================== History file of the IORT application ==================================================== +02.11.2020 - B.Morgan tag iort_therapy-V10-06-02 + Support same CMake version range as core Geant4 + +13.08.2020 - S. Guatelli tag iort_therapy-V10-06-01 + Unnecessary in CMakeLists.tst dependance to ROOT removed. 13.11.2018 - G. Cosmo tag iort_therapy-V10-04-06 IORTDetectorConstruction: fixed initialisation setting of inner @@ -22,21 +27,21 @@ carlo.casarino@polooncologicocefalu.it unused variable deleted 17.09.2018 - S. Guatelli tag iort_therapy-V10-04-02 - CMakeList.txt updated + CMakeList.txt updated 17.09.2018 - S. Guatelli tag iort_therapy-V10-04-01 - delete macro directory. + delete macro directory. 12.09.2018 - S. Guatelli tag iort_therapy-V10-04-00 - removed RO geometry together with Hit class. Scoring mesh included. + removed RO geometry together with Hit class. Scoring mesh included. G4_UI_USE and G4_VIS_USE removed. - How to delete the geometry of the disk has been changed (bug eliminated). + How to delete the geometry of the disk has been changed (bug eliminated). Analysis class deleted (no analysis directly connected with the IORT example) G4Decay and IORTMatrix deleted as they are not needed. Protontherapy removed as it is out of the scope. - G4SystemOfUnits.hh included - README updated accordingly to changes. - + G4SystemOfUnits.hh included + README updated accordingly to changes. + 28.11.2017 - B.Morgan tag iort_therapy-V10-03-01 Replace ROOT_INCLUDE_DIR with ROOT_INCLUDE_DIRS @@ -90,7 +95,7 @@ carlo.casarino@polooncologicocefalu.it Use std::string::size_type for string length instead of int in IORTMatrix::ion. Fixes compilation warning on gcc-4.7. 15.12.2011 - P.Mato; Tag: iort_therapy-V09-05-01 - Tagged changes made by Gunter (windows line endings, + Tagged changes made by Gunter (windows line endings, invalid header files, etc.) 24.11.2011 - P.Mato; Tag: iort_therapy-V09-05-00 Added CMakeLists.txt file diff --git a/examples/advanced/iort_therapy/README b/examples/advanced/iort_therapy/README index 824cafa22a..9ee57af8eb 100644 --- a/examples/advanced/iort_therapy/README +++ b/examples/advanced/iort_therapy/README @@ -12,11 +12,11 @@ Past Authors: G.Arnetta(c), S.E.Mazzaglia(d) - (a) Fondazione Istituto San Raffaele G.Giglio, Cefalù, Italy + (a) Fondazione Istituto San Raffaele G.Giglio, Cefalù, Italy (b) IBFM-CNR , Segrate (Milano), Italy - (c) LATO (Laboratorio di Tecnologie Oncologiche), Cefalù, Italy + (c) LATO (Laboratorio di Tecnologie Oncologiche), Cefalù, Italy (d) Laboratori Nazionali del Sud of the INFN, Catania, Italy @@ -32,7 +32,7 @@ WHAT IT IS, WHAT IT DOES AND WHAT IT WILL PROVIDE iort_therapy is a Geant4-based application specifically developed to address typical needs related to the Intra-Operative Radio-Therapy (IORT) technique. -iort_therapy is capable to simulate a well specified intra-operative electron radio-therapy facility: the collimator beam line system of a typical medical mobile linac and the relative target (water-phantom). iort_therapy application is currently used by the G.Russo team in clinical and research activities carried out in Fondazione Istituto San Raffaele G.Giglio Hospital (Cefalù, Italy) where a NOVAC7 linac is installed. +iort_therapy is capable to simulate a well specified intra-operative electron radio-therapy facility: the collimator beam line system of a typical medical mobile linac and the relative target (water-phantom). iort_therapy application is currently used by the G.Russo team in clinical and research activities carried out in Fondazione Istituto San Raffaele G.Giglio Hospital (Cefalù, Italy) where a NOVAC7 linac is installed. iort_therapy, is flexible and show many capabilities. Its geometrical set-up, for example, is completely interchangeable permitting a simple switch between different geometrical collimator system configurations; the possibility to simulate a composite metallic shielding disc inside the water-phantom was also implemented. diff --git a/examples/advanced/iort_therapy/include/Collimator100BeamLineMessenger.hh b/examples/advanced/iort_therapy/include/Collimator100BeamLineMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/include/Collimator40BeamLineMessenger.hh b/examples/advanced/iort_therapy/include/Collimator40BeamLineMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/include/Collimator50BeamLineMessenger.hh b/examples/advanced/iort_therapy/include/Collimator50BeamLineMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/include/Collimator60BeamLineMessenger.hh b/examples/advanced/iort_therapy/include/Collimator60BeamLineMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/include/Collimator70BeamLineMessenger.hh b/examples/advanced/iort_therapy/include/Collimator70BeamLineMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/include/Collimator80BeamLineMessenger.hh b/examples/advanced/iort_therapy/include/Collimator80BeamLineMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/include/IORTEventActionMessenger.hh b/examples/advanced/iort_therapy/include/IORTEventActionMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/iort_therapy.out b/examples/advanced/iort_therapy/iort_therapy.out index 81eff4d83f..708d900933 100644 --- a/examples/advanced/iort_therapy/iort_therapy.out +++ b/examples/advanced/iort_therapy/iort_therapy.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +26,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -134,9 +136,9 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -158,12 +160,12 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -185,16 +187,16 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -208,23 +210,23 @@ hBrems: for proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi nuclearStopping: for proton SubType=8 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -238,9 +240,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -255,9 +257,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -271,19 +273,19 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -297,19 +299,19 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -323,19 +325,19 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -350,19 +352,19 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -377,19 +379,19 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -403,19 +405,19 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -429,14 +431,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi ========= Table of registered couples ============================ @@ -457,35 +459,35 @@ Index : 1 used in the geometry : Yes Index : 2 used in the geometry : Yes Material : G4_Ti Range cuts : gamma 10 um e- 10 um e+ 10 um proton 100 um - Energy thresholds : gamma 1.28552 keV e- 42.6948 keV e+ 42.4098 keV proton 10 keV + Energy thresholds : gamma 1.28664 keV e- 42.9443 keV e+ 42.0872 keV proton 10 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 3 used in the geometry : Yes Material : G4_PLEXIGLASS Range cuts : gamma 10 um e- 10 um e+ 10 um proton 100 um - Energy thresholds : gamma 990 eV e- 18.4904 keV e+ 17.8006 keV proton 10 keV + Energy thresholds : gamma 990 eV e- 18.2368 keV e+ 17.8256 keV proton 10 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 4 used in the geometry : Yes Material : G4_Al Range cuts : gamma 10 um e- 10 um e+ 10 um proton 100 um - Energy thresholds : gamma 990 eV e- 34.2283 keV e+ 33.7728 keV proton 10 keV + Energy thresholds : gamma 990 eV e- 34.1725 keV e+ 33.9436 keV proton 10 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 5 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 10 um e- 10 um e+ 10 um proton 100 um - Energy thresholds : gamma 990 eV e- 14.1795 keV e+ 13.7742 keV proton 10 keV + Energy thresholds : gamma 990 eV e- 14.0874 keV e+ 14.0874 keV proton 10 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 6 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 10 um e- 10 um e+ 10 um proton 0 fm - Energy thresholds : gamma 990 eV e- 14.1795 keV e+ 13.7742 keV proton 0 eV + Energy thresholds : gamma 990 eV e- 14.0874 keV e+ 14.0874 keV proton 0 eV Region(s) which use this couple : DetectorLog @@ -502,13 +504,16 @@ Run 0 starts ... Run terminated. Run Summary Number of events processed : 2000 - User=23.070000s Real=23.705487s Sys=0.190000s + User=9.100000s Real=11.759469s Sys=0.190000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /score/dumpQuantityToFile boxMesh_1 dose dose.out Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 11 of which, static: 0 -Dynamic pools deleted: 11 / Total memory freed: 0.16 MB +Dynamic pools deleted: 11 / Total memory freed: 0.17 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/advanced/iort_therapy/src/Collimator100BeamLine.cc b/examples/advanced/iort_therapy/src/Collimator100BeamLine.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/src/Collimator100BeamLineMessenger.cc b/examples/advanced/iort_therapy/src/Collimator100BeamLineMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/src/Collimator40BeamLine.cc b/examples/advanced/iort_therapy/src/Collimator40BeamLine.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/src/Collimator40BeamLineMessenger.cc b/examples/advanced/iort_therapy/src/Collimator40BeamLineMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/src/Collimator50BeamLine.cc b/examples/advanced/iort_therapy/src/Collimator50BeamLine.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/src/Collimator50BeamLineMessenger.cc b/examples/advanced/iort_therapy/src/Collimator50BeamLineMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/src/Collimator60BeamLine.cc b/examples/advanced/iort_therapy/src/Collimator60BeamLine.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/src/Collimator60BeamLineMessenger.cc b/examples/advanced/iort_therapy/src/Collimator60BeamLineMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/src/Collimator70BeamLine.cc b/examples/advanced/iort_therapy/src/Collimator70BeamLine.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/src/Collimator70BeamLineMessenger.cc b/examples/advanced/iort_therapy/src/Collimator70BeamLineMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/src/Collimator80BeamLine.cc b/examples/advanced/iort_therapy/src/Collimator80BeamLine.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/src/Collimator80BeamLineMessenger.cc b/examples/advanced/iort_therapy/src/Collimator80BeamLineMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/iort_therapy/src/IORTEventActionMessenger.cc b/examples/advanced/iort_therapy/src/IORTEventActionMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/lAr_calorimeter/CMakeLists.txt b/examples/advanced/lAr_calorimeter/CMakeLists.txt index 5f756bc436..62abbc9e10 100644 --- a/examples/advanced/lAr_calorimeter/CMakeLists.txt +++ b/examples/advanced/lAr_calorimeter/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(lArCal) #---------------------------------------------------------------------------- @@ -59,13 +62,13 @@ endforeach() file( MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/data-tracks) file(GLOB _datatracks ${PROJECT_SOURCE_DIR}/data-tracks/*.dat) foreach(_datatrackfile ${_datatracks}) - configure_file( ${_datatrackfile} ${PROJECT_BINARY_DIR}/data-tracks) + configure_file( ${_datatrackfile} ${PROJECT_BINARY_DIR}/data-tracks) endforeach() file( MAKE_DIRECTORY ${PROJECT_BINARY_DIR}/geom_data) file(GLOB _geomdata ${PROJECT_SOURCE_DIR}/geom_data/*.dat) foreach(_geomdatafile ${_geomdata}) - configure_file( ${_geomdatafile} ${PROJECT_BINARY_DIR}/geom_data) + configure_file( ${_geomdatafile} ${PROJECT_BINARY_DIR}/geom_data) endforeach() diff --git a/examples/advanced/lAr_calorimeter/History b/examples/advanced/lAr_calorimeter/History index 9125669a65..5a957a430d 100644 --- a/examples/advanced/lAr_calorimeter/History +++ b/examples/advanced/lAr_calorimeter/History @@ -8,6 +8,9 @@ Hi------------------------------------------------------------------- Category History file --------------------- +02.11.2020 - B.Morgan (lAr_calorimeter-V10-06-00) + Support same CMake version range as core Geant4 + 31.01.2019 - I.Hrivnacova (lAr_calorimeter-V10-05-00) Merged GitHub PR #4: all Boolean operators now return G4bool. @@ -18,8 +21,8 @@ Hi------------------------------------------------------------------- G4VIS_USE and G4UI_USE deleted 10.05.2018 - B. Morgan (lAr_calorimeter-V10-04-00) - Include G4Types before use of G4MULTITHREADED. For forward - compatibility with move to #defines over -D for G4 preprocessor + Include G4Types before use of G4MULTITHREADED. For forward + compatibility with move to #defines over -D for G4 preprocessor symbols. 02.11.2016 - L. Garnier (lAr_calorimeter-V10-02-00) @@ -30,12 +33,12 @@ Hi------------------------------------------------------------------- provides crashes in MT mode, which are difficult to explain 31.10.2014 - L.Pandola Tag (lAr_calorimeter-V10-00-04) - Changed interface of FCALMaterialConsultant to avoid multiple + Changed interface of FCALMaterialConsultant to avoid multiple definition of materials Fix casting warning in FCALSteppingVerbose.cc (seen on Win) 16.10.2014 - A.Dotti Tag (lAr_calorimeter-V10-00-02, lAr_calorimeter-V10-00-03) - Bug fixing for clang warnings + Bug fixing for clang warnings 15.10.2014 - A.Dotti Tag (lAr_calorimeter-V10-00-01) Removing output to txt file (non thread safe) @@ -48,24 +51,24 @@ Hi------------------------------------------------------------------- Bug fixing for clang32 compilation warnings 21.03.2013 - L.Pandola Tag (lAr_calorimeter-V09-06-04) - Remove other compiler warnings (showing up only for + Remove other compiler warnings (showing up only for some systems/compilers) 19.03.2013 - L.Pandola Tag (lAr_calorimeter-V09-06-03) - Remove compiler warning (shadowing a class member by + Remove compiler warning (shadowing a class member by a local variable). 14.03.2013 - A.Dotti and L.Pandola Tag (lAr_calorimeter-V09-06-02) - Changed CMakeLists.txt to copy the content of the directories + Changed CMakeLists.txt to copy the content of the directories data-tracks and geom_data (used at run time). Modified macros. Cleaning in FCALPrimaryGeneratorAction 12.03.2013 - L.Pandola Tag (lAr_calorimeter-V09-06-01) - Migrated analysis to g4tools (removed AIDA dependency) and other small + Migrated analysis to g4tools (removed AIDA dependency) and other small cosmetics. CMakeLists.txt and README updated accordingly 12.03.2013 - L.Pandola Tag (lAr_calorimeter-V09-06-00) - Fix bug in the primary generator, which caused the abort + Fix bug in the primary generator, which caused the abort of all events in the run (run1.mac) 02.11.2012 - L.Garnier Tag (lAr_calorimeter-V09-05-03) @@ -78,7 +81,7 @@ Hi------------------------------------------------------------------- Explicit inclusion of units and constants headers. 11.10.2012 Andrea Dotti (lAr_calorimeter-V09-05-00) - Use of PhyListFactory instead of explicit instantiaion of + Use of PhyListFactory instead of explicit instantiaion of physics lists. Adding CMakeList.txt file @@ -111,7 +114,7 @@ Hi------------------------------------------------------------------- Fixed some uninitialization problems. 08.12.2005 - A.Ribon (lAr_calorimeter-V07-01-00) - Migration to CLHEP namespace. + Migration to CLHEP namespace. Removed also old header files. 3rd May 2005 John Allison (examples-V07-00-03) diff --git a/examples/advanced/lAr_calorimeter/lAr_calorimeter.out b/examples/advanced/lAr_calorimeter/lAr_calorimeter.out index 98ae60fd86..8c14185772 100644 --- a/examples/advanced/lAr_calorimeter/lAr_calorimeter.out +++ b/examples/advanced/lAr_calorimeter/lAr_calorimeter.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -34,10 +34,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -78,7 +80,7 @@ Constructing materials...... done ********* Number of Rods in FCAL2 : 2546 TBSetupSD is not found in /FCALTB/ - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -109,10 +111,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -136,10 +139,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -167,9 +171,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -183,14 +187,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -199,9 +203,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -213,9 +217,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -226,9 +230,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -242,14 +246,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -258,9 +262,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -274,14 +278,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -290,9 +294,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -306,14 +310,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -322,9 +326,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -339,14 +343,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -355,9 +359,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -372,14 +376,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -388,9 +392,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -404,14 +408,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -420,9 +424,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -436,14 +440,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -472,6 +476,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -546,6 +572,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -657,8 +696,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -723,8 +762,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -742,6 +781,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV ================================================================ +### G4LevelReader: broken transition 0 from level 24 to 24 for isotope Z= 89 A= 219 - use ground level ======================================================================= ====== Pre-compound/De-excitation Physics Parameters ======== ======================================================================= @@ -765,7 +805,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= Region -- -- appears in world volume @@ -793,7 +832,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Polystyrene Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.11022 keV e- 278.507 keV e+ 271.144 keV proton 70 keV + Energy thresholds : gamma 2.10846 keV e- 280.946 keV e+ 272.577 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -807,70 +846,70 @@ Index : 2 used in the geometry : Yes Index : 3 used in the geometry : Yes Material : Lead Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 94.7372 keV e- 1.00768 MeV e+ 948.734 keV proton 70 keV + Energy thresholds : gamma 94.5861 keV e- 1.00386 MeV e+ 951.321 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 4 used in the geometry : Yes Material : Aluminium Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 5.84069 keV e- 457.179 keV e+ 442.122 keV proton 70 keV + Energy thresholds : gamma 5.87535 keV e- 460.395 keV e+ 442.201 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 5 used in the geometry : Yes Material : Iron Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 17.1704 keV e- 955.109 keV e+ 905.28 keV proton 70 keV + Energy thresholds : gamma 17.2183 keV e- 951.321 keV e+ 901.528 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 6 used in the geometry : Yes Material : ShieldingConcrete Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 5.28242 keV e- 451.096 keV e+ 439.171 keV proton 70 keV + Energy thresholds : gamma 5.31198 keV e- 451.206 keV e+ 436.298 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 7 used in the geometry : Yes Material : LiquidArgon Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 5.22961 keV e- 272.967 keV e+ 267.537 keV proton 70 keV + Energy thresholds : gamma 5.20596 keV e- 274.415 keV e+ 267.137 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 8 used in the geometry : Yes Material : Copper Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 20.4366 keV e- 1.03504 MeV e+ 981.043 keV proton 70 keV + Energy thresholds : gamma 20.6438 keV e- 1.03121 MeV e+ 977.24 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 9 used in the geometry : Yes Material : FCAL1CuArKap Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 14.5231 keV e- 678.742 keV e+ 652.007 keV proton 70 keV + Energy thresholds : gamma 14.4581 keV e- 679.834 keV e+ 652.968 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 10 used in the geometry : Yes Material : FCAL2WFeNi Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 96.3369 keV e- 1.58899 MeV e+ 1.48605 MeV proton 70 keV + Energy thresholds : gamma 96.1886 keV e- 1.60683 MeV e+ 1.5024 MeV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 11 used in the geometry : Yes Material : FCAL2CuArKap Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 14.5231 keV e- 678.742 keV e+ 652.007 keV proton 70 keV + Energy thresholds : gamma 14.4581 keV e- 679.834 keV e+ 652.968 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 12 used in the geometry : Yes Material : Tungsten Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 97.6361 keV e- 1.65415 MeV e+ 1.54698 MeV proton 70 keV + Energy thresholds : gamma 97.4901 keV e- 1.63955 MeV e+ 1.54333 MeV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -879,32 +918,32 @@ Index : 12 used in the geometry : Yes Start closing geometry. G4GeometryManager::ReportVoxelStats -- Voxel Statistics - Total memory consumed for geometry optimisation: 586 kByte - Total CPU time elapsed for geometry optimisation: 1.8 seconds + Total memory consumed for geometry optimisation: 395 kByte + Total CPU time elapsed for geometry optimisation: 0.3 seconds Voxelisation: top CPU users: Percent Total CPU System CPU Memory Volume ------- ---------- ---------- -------- ---------- - 66.67 1.22 0.00 224k EmModuleLogical - 32.79 0.60 0.00 355k HadModuleLogical - 0.55 0.01 0.01 0k FCALEnvelopeLogical - 0.00 0.00 0.00 5k Mother + 53.33 0.16 0.00 152k EmModuleLogical + 46.67 0.14 0.00 238k HadModuleLogical + 0.00 0.00 0.00 4k Mother 0.00 0.00 0.00 0k CryostatLogical 0.00 0.00 0.00 0k LArgLogical - 0.00 0.00 0.00 1k SolidWLogical - 0.00 0.00 0.00 1k CuPlateLogical + 0.00 0.00 0.00 0k FCALEnvelopeLogical + 0.00 0.00 0.00 0k SolidWLogical + 0.00 0.00 0.00 0k CuPlateLogical Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume ------- -------- ------ ------ -------- ---------- ---------- - 60.58 355k 1385 2370 3792 0.60 HadModuleLogical - 38.11 223k 1129 1152 2426 1.22 EmModuleLogical - 0.89 5k 8 42 146 0.00 Mother + 60.17 238k 1385 2370 3792 0.14 HadModuleLogical + 38.50 152k 1129 1152 2426 0.16 EmModuleLogical + 0.93 3k 8 42 146 0.00 Mother 0.12 0k 1 7 8 0.00 SolidWLogical 0.12 0k 1 7 8 0.00 CuPlateLogical 0.08 0k 1 4 6 0.00 LArgLogical - 0.05 0k 1 2 4 0.01 FCALEnvelopeLogical 0.05 0k 1 2 4 0.00 CryostatLogical + 0.05 0k 1 2 4 0.00 FCALEnvelopeLogical G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. @@ -916,352 +955,355 @@ Read 2001 events from file data-tracks/tracks-20GeV.dat ---> Begin of event: 1 **** Primary : 1 Vertex : (5.55552,7.16569,32740) -Number of F1 Tiles with Positive energy : 46 +Number of F1 Tiles with Positive energy : 51 Number of F2 tiles with Positive energy : 0 Visisble Energy in S1 , S2 , S3 in (MeV) -1.61841 1.68087 1.78206 +1.61856 1.68112 1.78247 Visible Energy in Hole Counter (MeV) 0 0 Visible Energy in Upstream Dead Materials -1.57371 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0 0 0 0 0 -N Tracks out of world 8 -N Secondaries 123 -EmEdep is=19763.2 MeV -HadEdep is=0.157714 MeV -Edep in FCAL1 FCAl2 : 19763.2 0.157714 - **** Primary : 2 - Vertex : (-3.76032,10.9751,32740) -Number of F1 Tiles with Positive energy : 55 -Number of F2 tiles with Positive energy : 0 - Visisble Energy in S1 , S2 , S3 in (MeV) -1.86019 1.7153 2.14082 - Visible Energy in Hole Counter (MeV) -0 115.362 - Visible Energy in Upstream Dead Materials -1841.88 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0 0 0 0 0 -N Tracks out of world 70 -N Secondaries 308 -EmEdep is=16604.6 MeV -HadEdep is=0 MeV -Edep in FCAL1 FCAl2 : 16604.6 0 - **** Primary : 3 - Vertex : (13.1951,2.677,32740) -Number of F1 Tiles with Positive energy : 43 -Number of F2 tiles with Positive energy : 0 - Visisble Energy in S1 , S2 , S3 in (MeV) -1.87613 1.68927 2.34292 - Visible Energy in Hole Counter (MeV) -0 0.240047 - Visible Energy in Upstream Dead Materials -29.678 +2.58331 Visible Energy in Tail Catcher Scintillator 0 0 0 0 0 0 0 Visible Energy in Tail Catcher Absorber 0 0 0 0 0 0 N Tracks out of world 6 -N Secondaries 238 -EmEdep is=19597.8 MeV -HadEdep is=3.07211 MeV -Edep in FCAL1 FCAl2 : 19597.8 3.07211 - **** Primary : 4 - Vertex : (-8.66148,-8.80731,32740) -Number of F1 Tiles with Positive energy : 44 +N Secondaries 126 +EmEdep is=19660.2 MeV +HadEdep is=1.50161 MeV +Edep in FCAL1 FCAl2 : 19660.2 1.50161 + **** Primary : 2 + Vertex : (-3.76032,10.9751,32740) +Number of F1 Tiles with Positive energy : 41 Number of F2 tiles with Positive energy : 0 Visisble Energy in S1 , S2 , S3 in (MeV) -1.80085 1.54521 1.49053 +2.10049 3.2282 2.60084 + Visible Energy in Hole Counter (MeV) +0 96.3864 + Visible Energy in Upstream Dead Materials +861.152 + Visible Energy in Tail Catcher Scintillator +0 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 56 +N Secondaries 267 +EmEdep is=17871.9 MeV +HadEdep is=0.455584 MeV +Edep in FCAL1 FCAl2 : 17871.9 0.455584 + **** Primary : 3 + Vertex : (13.1951,2.677,32740) +Number of F1 Tiles with Positive energy : 41 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +1.96109 1.62536 1.699 Visible Energy in Hole Counter (MeV) 0 0 Visible Energy in Upstream Dead Materials -8.41841 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0 0 0 0 0 -N Tracks out of world 1 -N Secondaries 265 -EmEdep is=19699.4 MeV -HadEdep is=0 MeV -Edep in FCAL1 FCAl2 : 19699.4 0 - **** Primary : 5 - Vertex : (4.75859,7.01622,32740) -Number of F1 Tiles with Positive energy : 46 -Number of F2 tiles with Positive energy : 0 - Visisble Energy in S1 , S2 , S3 in (MeV) -1.62118 1.50906 1.63526 - Visible Energy in Hole Counter (MeV) -0 0 - Visible Energy in Upstream Dead Materials -3.66909 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0 0 0 0 0 -N Tracks out of world 2 -N Secondaries 167 -EmEdep is=19708.2 MeV -HadEdep is=0.351231 MeV -Edep in FCAL1 FCAl2 : 19708.2 0.351231 - **** Primary : 6 - Vertex : (1.94335,14.9228,32740) -Number of F1 Tiles with Positive energy : 60 -Number of F2 tiles with Positive energy : 0 - Visisble Energy in S1 , S2 , S3 in (MeV) -1.81453 1.90669 1.69107 - Visible Energy in Hole Counter (MeV) -0 85.5408 - Visible Energy in Upstream Dead Materials -2801.94 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0 0 0 0 0 -N Tracks out of world 124 -N Secondaries 92 -EmEdep is=16258.3 MeV -HadEdep is=0 MeV -Edep in FCAL1 FCAl2 : 16258.3 0 - **** Primary : 7 - Vertex : (-10.9878,-6.7949,32740) -Number of F1 Tiles with Positive energy : 68 -Number of F2 tiles with Positive energy : 0 - Visisble Energy in S1 , S2 , S3 in (MeV) -1.67513 1.63653 1.6685 - Visible Energy in Hole Counter (MeV) -0 170.557 - Visible Energy in Upstream Dead Materials -5654.55 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0 0 0 0 0 -N Tracks out of world 199 -N Secondaries 167 -EmEdep is=12138.5 MeV -HadEdep is=0.251775 MeV -Edep in FCAL1 FCAl2 : 12138.5 0.251775 - **** Primary : 8 - Vertex : (10.9757,-1.49585,32740) -Number of F1 Tiles with Positive energy : 51 -Number of F2 tiles with Positive energy : 0 - Visisble Energy in S1 , S2 , S3 in (MeV) -2.07346 1.61897 1.55077 - Visible Energy in Hole Counter (MeV) -0 0 - Visible Energy in Upstream Dead Materials -9.99443 +20.776 Visible Energy in Tail Catcher Scintillator 0 0 0 0 0 0 0 Visible Energy in Tail Catcher Absorber 0 0 0 0 0 0 N Tracks out of world 3 +N Secondaries 175 +EmEdep is=19570.5 MeV +HadEdep is=0 MeV +Edep in FCAL1 FCAl2 : 19570.5 0 + **** Primary : 4 + Vertex : (-8.66148,-8.80731,32740) +Number of F1 Tiles with Positive energy : 36 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +1.41397 2.10419 2.49441 + Visible Energy in Hole Counter (MeV) +0 0 + Visible Energy in Upstream Dead Materials +4.54741 + Visible Energy in Tail Catcher Scintillator +0 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 5 N Secondaries 172 -EmEdep is=19575.7 MeV -HadEdep is=0 MeV -Edep in FCAL1 FCAl2 : 19575.7 0 - **** Primary : 9 - Vertex : (-27.7734,3.36444,32740) -Number of F1 Tiles with Positive energy : 60 +EmEdep is=19704.6 MeV +HadEdep is=3.78922 MeV +Edep in FCAL1 FCAl2 : 19704.6 3.78922 + **** Primary : 5 + Vertex : (4.75859,7.01622,32740) +Number of F1 Tiles with Positive energy : 47 Number of F2 tiles with Positive energy : 0 Visisble Energy in S1 , S2 , S3 in (MeV) -1.88399 1.55811 2.29651 - Visible Energy in Hole Counter (MeV) -0 61.6681 - Visible Energy in Upstream Dead Materials -6902.85 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0.00104924 0 0 0 0 -N Tracks out of world 152 -N Secondaries 139 -EmEdep is=11240.3 MeV -HadEdep is=0 MeV -Edep in FCAL1 FCAl2 : 11240.3 0 - **** Primary : 10 - Vertex : (-22.5474,4.1006,32740) -Number of F1 Tiles with Positive energy : 42 -Number of F2 tiles with Positive energy : 0 - Visisble Energy in S1 , S2 , S3 in (MeV) -1.81684 2.06099 2.085 +2.04288 1.60474 1.50975 Visible Energy in Hole Counter (MeV) 0 0 Visible Energy in Upstream Dead Materials -5.8061 +19.7247 Visible Energy in Tail Catcher Scintillator 0 0 0 0 0 0 0 Visible Energy in Tail Catcher Absorber 0 0 0 0 0 0 -N Tracks out of world 2 -N Secondaries 182 -EmEdep is=19848.5 MeV +N Tracks out of world 1 +N Secondaries 177 +EmEdep is=19850.5 MeV HadEdep is=0 MeV -Edep in FCAL1 FCAl2 : 19848.5 0 - ----> Begin of event: 11 - **** Primary : 11 - Vertex : (-6.31939,21.5056,32740) -Number of F1 Tiles with Positive energy : 60 +Edep in FCAL1 FCAl2 : 19850.5 0 + **** Primary : 6 + Vertex : (1.94335,14.9228,32740) +Number of F1 Tiles with Positive energy : 46 Number of F2 tiles with Positive energy : 0 Visisble Energy in S1 , S2 , S3 in (MeV) -1.93863 1.80056 1.6823 - Visible Energy in Hole Counter (MeV) -0 68.7432 - Visible Energy in Upstream Dead Materials -677.472 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0 0 0 0 0 -N Tracks out of world 27 -N Secondaries 150 -EmEdep is=18126 MeV -HadEdep is=10.8009 MeV -Edep in FCAL1 FCAl2 : 18126 10.8009 - **** Primary : 12 - Vertex : (17.1015,6.30557,32740) -Number of F1 Tiles with Positive energy : 43 -Number of F2 tiles with Positive energy : 0 - Visisble Energy in S1 , S2 , S3 in (MeV) -1.81973 1.56323 1.52153 +1.6695 2.26866 1.5354 Visible Energy in Hole Counter (MeV) 0 0 Visible Energy in Upstream Dead Materials -10.2281 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0 0 0 0 0 -N Tracks out of world 2 -N Secondaries 314 -EmEdep is=19782.4 MeV -HadEdep is=0 MeV -Edep in FCAL1 FCAl2 : 19782.4 0 - **** Primary : 13 - Vertex : (-24.9484,11.8659,32740) -Number of F1 Tiles with Positive energy : 37 -Number of F2 tiles with Positive energy : 0 - Visisble Energy in S1 , S2 , S3 in (MeV) -1.70701 1.85505 1.83587 - Visible Energy in Hole Counter (MeV) -0 123.616 - Visible Energy in Upstream Dead Materials -17255.2 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0 0 0 0 0 -N Tracks out of world 238 -N Secondaries 141 -EmEdep is=1205.64 MeV -HadEdep is=0.776199 MeV -Edep in FCAL1 FCAl2 : 1205.64 0.776199 - **** Primary : 14 - Vertex : (-0.133696,18.3151,32740) -Number of F1 Tiles with Positive energy : 42 -Number of F2 tiles with Positive energy : 0 - Visisble Energy in S1 , S2 , S3 in (MeV) -1.76985 1.71243 1.79299 - Visible Energy in Hole Counter (MeV) -0 0 - Visible Energy in Upstream Dead Materials -2.99414 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0 0 0 0 0 -N Tracks out of world 4 -N Secondaries 156 -EmEdep is=19891.7 MeV -HadEdep is=0 MeV -Edep in FCAL1 FCAl2 : 19891.7 0 - **** Primary : 15 - Vertex : (17.3196,17.6617,32740) -Number of F1 Tiles with Positive energy : 39 -Number of F2 tiles with Positive energy : 0 - Visisble Energy in S1 , S2 , S3 in (MeV) -1.44933 2.72408 1.66292 - Visible Energy in Hole Counter (MeV) -0 0 - Visible Energy in Upstream Dead Materials -6.38177 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0 0 0 0 0 -N Tracks out of world 7 -N Secondaries 244 -EmEdep is=19764.2 MeV -HadEdep is=0 MeV -Edep in FCAL1 FCAl2 : 19764.2 0 - **** Primary : 16 - Vertex : (-20.8489,10.8988,32740) -Number of F1 Tiles with Positive energy : 76 -Number of F2 tiles with Positive energy : 0 - Visisble Energy in S1 , S2 , S3 in (MeV) -1.87237 2.21867 1.59889 - Visible Energy in Hole Counter (MeV) -0 94.2623 - Visible Energy in Upstream Dead Materials -5468.68 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0 0 0 0 0 -N Tracks out of world 194 -N Secondaries 132 -EmEdep is=12379.2 MeV -HadEdep is=0 MeV -Edep in FCAL1 FCAl2 : 12379.2 0 - **** Primary : 17 - Vertex : (-9.96316,-9.33478,32740) -Number of F1 Tiles with Positive energy : 42 -Number of F2 tiles with Positive energy : 0 - Visisble Energy in S1 , S2 , S3 in (MeV) -2.09965 1.54181 2.75527 - Visible Energy in Hole Counter (MeV) -0 12.5654 - Visible Energy in Upstream Dead Materials -760.9 - Visible Energy in Tail Catcher Scintillator -0 0 0 0 0 0 0 - Visible Energy in Tail Catcher Absorber -0 0 0 0 0 0 -N Tracks out of world 18 -N Secondaries 202 -EmEdep is=19065.1 MeV -HadEdep is=4.01022 MeV -Edep in FCAL1 FCAl2 : 19065.1 4.01022 - **** Primary : 18 - Vertex : (-9.96316,-9.33478,32740) -Number of F1 Tiles with Positive energy : 40 -Number of F2 tiles with Positive energy : 1 - Visisble Energy in S1 , S2 , S3 in (MeV) -1.8753 4.42885 2.2338 - Visible Energy in Hole Counter (MeV) -0 5.37756 - Visible Energy in Upstream Dead Materials -10.6687 +2.18754 Visible Energy in Tail Catcher Scintillator 0 0 0 0 0 0 0 Visible Energy in Tail Catcher Absorber 0 0 0 0 0 0 N Tracks out of world 6 -N Secondaries 219 -EmEdep is=19841.5 MeV -HadEdep is=4.96301 MeV -Edep in FCAL1 FCAl2 : 19841.5 4.96301 +N Secondaries 173 +EmEdep is=19758.6 MeV +HadEdep is=14.8503 MeV +Edep in FCAL1 FCAl2 : 19758.6 14.8503 + **** Primary : 7 + Vertex : (-10.9878,-6.7949,32740) +Number of F1 Tiles with Positive energy : 65 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +1.78233 1.78281 1.72558 + Visible Energy in Hole Counter (MeV) +0 125.806 + Visible Energy in Upstream Dead Materials +7042.02 + Visible Energy in Tail Catcher Scintillator +0 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 265 +N Secondaries 137 +EmEdep is=10409.2 MeV +HadEdep is=0.598729 MeV +Edep in FCAL1 FCAl2 : 10409.2 0.598729 + **** Primary : 8 + Vertex : (10.9757,-1.49585,32740) +Number of F1 Tiles with Positive energy : 47 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +1.91619 1.61862 1.65682 + Visible Energy in Hole Counter (MeV) +0 0 + Visible Energy in Upstream Dead Materials +7.55802 + Visible Energy in Tail Catcher Scintillator +0 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 3 +N Secondaries 138 +EmEdep is=19737.5 MeV +HadEdep is=0.0695529 MeV +Edep in FCAL1 FCAl2 : 19737.5 0.0695529 + **** Primary : 9 + Vertex : (-27.7734,3.36444,32740) +Number of F1 Tiles with Positive energy : 75 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +1.47406 1.65148 2.84712 + Visible Energy in Hole Counter (MeV) +0 182.533 + Visible Energy in Upstream Dead Materials +6559.38 + Visible Energy in Tail Catcher Scintillator +0 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 187 +N Secondaries 201 +EmEdep is=10601.1 MeV +HadEdep is=0 MeV +Edep in FCAL1 FCAl2 : 10601.1 0 + **** Primary : 10 + Vertex : (-22.5474,4.1006,32740) +Number of F1 Tiles with Positive energy : 47 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +2.56708 2.90071 3.40503 + Visible Energy in Hole Counter (MeV) +0 8.25986 + Visible Energy in Upstream Dead Materials +702.961 + Visible Energy in Tail Catcher Scintillator +0 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 22 +N Secondaries 133 +EmEdep is=19091.3 MeV +HadEdep is=0.362852 MeV +Edep in FCAL1 FCAl2 : 19091.3 0.362852 + +---> Begin of event: 11 + **** Primary : 11 + Vertex : (-6.31939,21.5056,32740) +Number of F1 Tiles with Positive energy : 49 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +1.66901 1.54846 1.97867 + Visible Energy in Hole Counter (MeV) +0 90.2259 + Visible Energy in Upstream Dead Materials +992.163 + Visible Energy in Tail Catcher Scintillator +0 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 51 +N Secondaries 189 +EmEdep is=17887.4 MeV +HadEdep is=1.11466 MeV +Edep in FCAL1 FCAl2 : 17887.4 1.11466 + **** Primary : 12 + Vertex : (17.1015,6.30557,32740) +Number of F1 Tiles with Positive energy : 52 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +1.80598 1.6025 1.41442 + Visible Energy in Hole Counter (MeV) +0 0 + Visible Energy in Upstream Dead Materials +3.97333 + Visible Energy in Tail Catcher Scintillator +0.0322714 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 4 +N Secondaries 190 +EmEdep is=19690.6 MeV +HadEdep is=6.4729 MeV +Edep in FCAL1 FCAl2 : 19690.6 6.4729 + **** Primary : 13 + Vertex : (-24.9484,11.8659,32740) +Number of F1 Tiles with Positive energy : 34 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +1.67457 1.78769 1.73725 + Visible Energy in Hole Counter (MeV) +0 63.0895 + Visible Energy in Upstream Dead Materials +17561.2 + Visible Energy in Tail Catcher Scintillator +0 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 193 +N Secondaries 216 +EmEdep is=971.775 MeV +HadEdep is=0 MeV +Edep in FCAL1 FCAl2 : 971.775 0 + **** Primary : 14 + Vertex : (-0.133696,18.3151,32740) +Number of F1 Tiles with Positive energy : 47 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +1.79273 1.8285 3.74908 + Visible Energy in Hole Counter (MeV) +0 0 + Visible Energy in Upstream Dead Materials +3.9163 + Visible Energy in Tail Catcher Scintillator +0 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 1 +N Secondaries 159 +EmEdep is=19868.3 MeV +HadEdep is=0 MeV +Edep in FCAL1 FCAl2 : 19868.3 0 + **** Primary : 15 + Vertex : (17.3196,17.6617,32740) +Number of F1 Tiles with Positive energy : 41 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +2.19884 1.74236 1.54607 + Visible Energy in Hole Counter (MeV) +0 0 + Visible Energy in Upstream Dead Materials +3.57927 + Visible Energy in Tail Catcher Scintillator +0 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 5 +N Secondaries 150 +EmEdep is=19805.5 MeV +HadEdep is=0 MeV +Edep in FCAL1 FCAl2 : 19805.5 0 + **** Primary : 16 + Vertex : (-20.8489,10.8988,32740) +Number of F1 Tiles with Positive energy : 71 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +1.85468 2.84319 5.7566 + Visible Energy in Hole Counter (MeV) +0 188.031 + Visible Energy in Upstream Dead Materials +7456.88 + Visible Energy in Tail Catcher Scintillator +0 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 243 +N Secondaries 289 +EmEdep is=9803.69 MeV +HadEdep is=0.484625 MeV +Edep in FCAL1 FCAl2 : 9803.69 0.484625 + **** Primary : 17 + Vertex : (-9.96316,-9.33478,32740) +Number of F1 Tiles with Positive energy : 50 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +2.05069 4.06838 4.38148 + Visible Energy in Hole Counter (MeV) +0 0 + Visible Energy in Upstream Dead Materials +4.38 + Visible Energy in Tail Catcher Scintillator +0 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 3 +N Secondaries 214 +EmEdep is=19773 MeV +HadEdep is=6.03239 MeV +Edep in FCAL1 FCAl2 : 19773 6.03239 + **** Primary : 18 + Vertex : (-9.96316,-9.33478,32740) +Number of F1 Tiles with Positive energy : 50 +Number of F2 tiles with Positive energy : 0 + Visisble Energy in S1 , S2 , S3 in (MeV) +1.71302 1.469 1.76247 + Visible Energy in Hole Counter (MeV) +0 4.01464 + Visible Energy in Upstream Dead Materials +1096.6 + Visible Energy in Tail Catcher Scintillator +0 0 0 0 0 0 0 + Visible Energy in Tail Catcher Absorber +0 0 0 0 0 0 +N Tracks out of world 26 +N Secondaries 166 +EmEdep is=17933.9 MeV +HadEdep is=6.89984 MeV +Edep in FCAL1 FCAl2 : 17933.9 6.89984 Run terminated. Run Summary Number of events processed : 18 - User=13.120000s Real=13.191338s Sys=0.010000s + User=8.040000s Real=8.263799s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. @@ -1275,22 +1317,22 @@ G4SDManager deleted. EventManager deleted. Units table cleared. TransportationManager deleted. -Total navigation history collections cleaned: 42 +Total navigation history collections cleaned: 44 ================== Deleting memory pools =================== -Pool ID '20G4NavigationLevelRep', size : 0.0596 MB +Pool ID '20G4NavigationLevelRep', size : 0.0625 MB Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB Pool ID '7G4Event', size : 0.000961 MB Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.000961 MB Pool ID '15G4HCofThisEvent', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.11 MB -Pool ID '7G4Track', size : 0.218 MB -Pool ID '18G4TouchableHistory', size : 0.00481 MB +Pool ID '17G4DynamicParticle', size : 0.0981 MB +Pool ID '7G4Track', size : 0.196 MB +Pool ID '18G4TouchableHistory', size : 0.00577 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB -Pool ID '10G4Fragment', size : 0.00192 MB -Pool ID '17G4ReactionProduct', size : 0.00192 MB +Pool ID '10G4Fragment', size : 0.00288 MB +Pool ID '17G4ReactionProduct', size : 0.00288 MB Number of memory pools allocated: 12 of which, static: 0 -Dynamic pools deleted: 12 / Total memory freed: 0.4 MB +Dynamic pools deleted: 12 / Total memory freed: 0.37 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/advanced/medical_linac/CMakeLists.txt b/examples/advanced/medical_linac/CMakeLists.txt index e77b6d3b7a..944403a0fa 100644 --- a/examples/advanced/medical_linac/CMakeLists.txt +++ b/examples/advanced/medical_linac/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(medical_linac) #---------------------------------------------------------------------------- @@ -23,7 +26,7 @@ include(${Geant4_USE_FILE}) #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) @@ -40,7 +43,7 @@ target_link_libraries(ml2 ${Geant4_LIBRARIES} ) # relies on these scripts being in the current working directory. # set(medical_linac_SCRIPTS - ml2.mac + ml2.mac batch.mac acc1.mac macroAndData/macro_files/accelerator/acc1.mac @@ -48,14 +51,14 @@ set(medical_linac_SCRIPTS macroAndData/macro_files/accelerator/acc2_6MeV_10x10.mac macroAndData/macro_files/accelerator/acc2_15MeV_3x3.mac macroAndData/macro_files/accelerator/accSaturn.mac - macroAndData/macro_files/main/batch.mac - macroAndData/macro_files/main/ml2.mac + macroAndData/macro_files/main/batch.mac + macroAndData/macro_files/main/ml2.mac macroAndData/macro_files/main/vis.mac macroAndData/experimental/VoxelsTest_In.txt macroAndData/experimental/EXP_Saturn_Cal_Data.txt macroAndData/results/PhSp/PhSp_Acc1.txt macroAndData/results/ROG/ROG_Out.txt - macroAndData/results/experimental/VoxelsTest_Out.m + macroAndData/results/experimental/VoxelsTest_Out.m ) foreach(_script ${medical_linac_SCRIPTS}) diff --git a/examples/advanced/medical_linac/History b/examples/advanced/medical_linac/History index 470b9888bf..29d6e3fb5c 100644 --- a/examples/advanced/medical_linac/History +++ b/examples/advanced/medical_linac/History @@ -14,13 +14,16 @@ and keep track of all category-tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +02.11.2020 B.Morgan tag medical_linac-V10-06-00 + Support same CMake version range as core Geant4 + 12.11.2018 V.Ivanchenko tag medical_linac-V10-04-08 ML2AcceleratorConstructionMessenger, ML2PhantomConstructionMessenger - should not trigger /run/beamOn during detector construction 09.11.2018 V.Ivanchenko tag medical_linac-V10-04-07 - do not explicitly delete singletons, add extra + do not explicitly delete singletons, add extra initialisation 08.11.2018 V.Ivanchenko tag medical_linac-V10-04-06 @@ -42,9 +45,9 @@ and keep track of all category-tags. 07.09.2018 S. Guatelli tag medical_linac-V10-04-00 Directory MacroAndData included - Migration from RO Geometry to Multifunctional Detector + Migration from RO Geometry to Multifunctional Detector Phase Space creation deleted. This needs to be implemented again - G4VIS_USE and G4UI_USE deleted + G4VIS_USE and G4UI_USE deleted 06.11.2017 L.Pandola tag medical_linac-V10-03-02 re-tag, fix directory @@ -61,7 +64,7 @@ and keep track of all category-tags. 25.11.2013 G. Folger, tag medical_linac-V09-06-03 fix MS VC 18 compilation error in ML2PrimaryGenerationAction.cc - + 22.11.2013 G. Folger, tag medical_linac-V09-06-02 fix MS VC 18 compilation error in ML2ExpVoxels.cc @@ -103,7 +106,7 @@ and keep track of all category-tags. 11.05.2012 G.Folger,G.A.P.Cirrone, medical_linac-V09-05-03 - Correction of all warnings for gcc4.6 - add batch.mac to run without graphics output - + 04.05.2012 G.A.P.Cirrone, medical_linac-V09-05-02 - Correction to remove additional warnings @@ -111,10 +114,10 @@ and keep track of all category-tags. - Removed warnings related to the DICOM part 08.12.2011 P. Mato, medical_linac-V09-05-00 - - Added CMakeLists.txt file + - Added CMakeLists.txt file 24.11.2011 G.Folger, medical_linac-V09-04-03 - - Warning removed for gcc41: correct return type of + - Warning removed for gcc41: correct return type of ML2PrimaryGenerationAction::getNrecycling to G4int. 22.11.2011 C.Andenna, G.A.P.Cirrone, medical_linac-V09-04-02 @@ -170,10 +173,10 @@ and keep track of all category-tags. resolve external reference. 03.06.2010 J.Perl tag medical_linac-V09-03-00 - Update vis usage + Update vis usage 19.11.2009 C. Andenna, B. Caccia, G.A.P.Cirrone tag medical_linac-V09-02-05 - History corrected, changed the local environmental variables name + History corrected, changed the local environmental variables name 18.11.2009 C. Andenna, B. Caccia, G.A.P.Cirrone tag medical_linac-V09-02-04 updated of the include and src files, written the README_MedLinac2.txt. @@ -199,7 +202,7 @@ and keep track of all category-tags. 06.07.2007 Michela Piergentili, tag medical_linac-V08-03-02 bug 880 fixed in Detector Construction - + 01.07.2007 Michela Piergentili, tag medical_linac-V08-03-01 macro updated @@ -210,7 +213,7 @@ and keep track of all category-tags. 08.12.2005 Michela Piergentili , tag medical_linac-V07-01-05 updated macro for visualization - + 07.12.2005 Susanna Guatelli, tag medical_linac-V07-01-04 The example compiles with CLHEP 2.0.2.2 @@ -249,7 +252,7 @@ and keep track of all category-tags. Maintenance of the code. 24.11.2004 Michela Piergentili, tag medical_linac-V07-00-01 - Added MedLinacTrackingAction, MedLinacMLCDecorator + Added MedLinacTrackingAction, MedLinacMLCDecorator and MedLinacMLCMessenger. 24.11.2004 Michela Piergentili, tag medical_linac-V07-00-00 @@ -262,7 +265,7 @@ and keep track of all category-tags. added README 14.05.2004 Michela Piergentili, tag medical_linac-V06-01-01 - decorator design iteration implemented, bug fixed in + decorator design iteration implemented, bug fixed in MedLinacPhantomSD, cut per region introduced for the first collimator diff --git a/examples/advanced/medical_linac/README b/examples/advanced/medical_linac/README old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/batch.mac b/examples/advanced/medical_linac/batch.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2Acc1.hh b/examples/advanced/medical_linac/include/ML2Acc1.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2Acc1Messenger.hh b/examples/advanced/medical_linac/include/ML2Acc1Messenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2AcceleratorConstruction.hh b/examples/advanced/medical_linac/include/ML2AcceleratorConstruction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2AcceleratorConstructionMessenger.hh b/examples/advanced/medical_linac/include/ML2AcceleratorConstructionMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2CInputData.hh b/examples/advanced/medical_linac/include/ML2CInputData.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2Convergence.hh b/examples/advanced/medical_linac/include/ML2Convergence.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2EventAction.hh b/examples/advanced/medical_linac/include/ML2EventAction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2ExpVoxels.hh b/examples/advanced/medical_linac/include/ML2ExpVoxels.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2Main.hh b/examples/advanced/medical_linac/include/ML2Main.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2MainMessenger.hh b/examples/advanced/medical_linac/include/ML2MainMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2Ph_BoxInBox.hh b/examples/advanced/medical_linac/include/ML2Ph_BoxInBox.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2Ph_FullWater.hh b/examples/advanced/medical_linac/include/ML2Ph_FullWater.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2PhantomConstruction.hh b/examples/advanced/medical_linac/include/ML2PhantomConstruction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2PhantomConstructionMessenger.hh b/examples/advanced/medical_linac/include/ML2PhantomConstructionMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2PhaseSpaces.hh b/examples/advanced/medical_linac/include/ML2PhaseSpaces.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2PhysicsList.hh b/examples/advanced/medical_linac/include/ML2PhysicsList.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2PrimaryGenerationAction.hh b/examples/advanced/medical_linac/include/ML2PrimaryGenerationAction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2PrimaryGenerationActionMessenger.hh b/examples/advanced/medical_linac/include/ML2PrimaryGenerationActionMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2RunAction.hh b/examples/advanced/medical_linac/include/ML2RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2SinputData.hh b/examples/advanced/medical_linac/include/ML2SinputData.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2SteppingAction.hh b/examples/advanced/medical_linac/include/ML2SteppingAction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2TrackingAction.hh b/examples/advanced/medical_linac/include/ML2TrackingAction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/include/ML2WorldConstruction.hh b/examples/advanced/medical_linac/include/ML2WorldConstruction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/medical_linac.out b/examples/advanced/medical_linac/medical_linac.out index ffc48a1ab3..a77ad75c40 100644 --- a/examples/advanced/medical_linac/medical_linac.out +++ b/examples/advanced/medical_linac/medical_linac.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -276,10 +276,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -302,7 +303,7 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 @@ -311,10 +312,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -336,7 +338,7 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -349,9 +351,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -365,14 +367,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -385,9 +387,9 @@ nuclearStopping: for proton SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -401,9 +403,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -418,9 +420,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -434,14 +436,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -450,9 +452,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -466,14 +468,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -482,9 +484,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -498,14 +500,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -514,9 +516,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -531,14 +533,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -547,9 +549,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -564,14 +566,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -580,9 +582,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -596,14 +598,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -612,9 +614,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -628,14 +630,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -752,42 +754,42 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_W Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 106.162 keV e- 2.28137 MeV e+ 2.13357 MeV proton 100 keV + Energy thresholds : gamma 106.569 keV e- 2.30976 MeV e+ 2.13081 MeV proton 100 keV Region(s) which use this couple : targetR Index : 2 used in the geometry : Yes Material : G4_Cu Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 24.8178 keV e- 1.40852 MeV e+ 1.31727 MeV proton 100 keV + Energy thresholds : gamma 24.7508 keV e- 1.39534 MeV e+ 1.31345 MeV proton 100 keV Region(s) which use this couple : targetR Index : 3 used in the geometry : Yes Material : G4_Be Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.01357 keV e- 466.458 keV e+ 451.096 keV proton 100 keV + Energy thresholds : gamma 2.01157 keV e- 466.625 keV e+ 457.312 keV proton 100 keV Region(s) which use this couple : BeWindow Index : 4 used in the geometry : Yes Material : G4_KAPTON Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.96945 keV e- 416.259 keV e+ 405.255 keV proton 100 keV + Energy thresholds : gamma 2.98035 keV e- 419.056 keV e+ 405.209 keV proton 100 keV Region(s) which use this couple : ionizationChamber Index : 5 used in the geometry : Yes Material : G4_Cu Range cuts : gamma 5 mm e- 5 mm e+ 5 mm proton 5 mm - Energy thresholds : gamma 55.2539 keV e- 6.7518 MeV e+ 6.31439 MeV proton 500 keV + Energy thresholds : gamma 55.0667 keV e- 6.8606 MeV e+ 6.41471 MeV proton 500 keV Region(s) which use this couple : flatfilterR Index : 6 used in the geometry : Yes Material : G4_MYLAR Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 3.0095 keV e- 419.056 keV e+ 405.255 keV proton 100 keV + Energy thresholds : gamma 3.02067 keV e- 419.056 keV e+ 405.209 keV proton 100 keV Region(s) which use this couple : Mirror @@ -801,49 +803,49 @@ Index : 7 used in the geometry : Yes Index : 8 used in the geometry : Yes Material : G4_W Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 106.162 keV e- 2.28137 MeV e+ 2.13357 MeV proton 100 keV + Energy thresholds : gamma 106.569 keV e- 2.30976 MeV e+ 2.13081 MeV proton 100 keV Region(s) which use this couple : PrymCollR Index : 9 used in the geometry : Yes Material : G4_Fe Range cuts : gamma 1 cm e- 1 cm e+ 1 cm proton 1 cm - Energy thresholds : gamma 60.4828 keV e- 12.9292 MeV e+ 12.0109 MeV proton 1 MeV + Energy thresholds : gamma 60.499 keV e- 13.0779 MeV e+ 12.2279 MeV proton 1 MeV Region(s) which use this couple : MLCR Index : 10 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws1XR Index : 11 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws2XR Index : 12 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws1YR Index : 13 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws2YR Index : 14 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 1.10939 keV e- 85.1099 keV e+ 83.4168 keV proton 10 keV + Energy thresholds : gamma 1.10981 keV e- 84.6589 keV e+ 83.5287 keV proton 10 keV Region(s) which use this couple : fullWaterPhantomR @@ -852,26 +854,26 @@ Index : 14 used in the geometry : Yes Start closing geometry. G4GeometryManager::ReportVoxelStats -- Voxel Statistics - Total memory consumed for geometry optimisation: 15 kByte - Total CPU time elapsed for geometry optimisation: 0.01 seconds + Total memory consumed for geometry optimisation: 10 kByte + Total CPU time elapsed for geometry optimisation: 0 seconds Voxelisation: top CPU users: Percent Total CPU System CPU Memory Volume ------- ---------- ---------- -------- ---------- - 100.00 0.01 0.00 7k accWorldL 0.00 0.00 0.00 0k worldL - 0.00 0.00 0.00 3k fullWaterPhantomLV - 0.00 0.00 0.00 3k RepY - 0.00 0.00 0.00 3k RepX + 0.00 0.00 0.00 5k accWorldL + 0.00 0.00 0.00 2k fullWaterPhantomLV + 0.00 0.00 0.00 2k RepY + 0.00 0.00 0.00 2k RepX Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume ------- -------- ------ ------ -------- ---------- ---------- - 44.65 6k 12 50 220 0.01 accWorldL - 17.48 2k 1 30 30 0.00 fullWaterPhantomLV - 17.48 2k 1 30 30 0.00 RepY - 17.48 2k 1 30 30 0.00 RepX - 2.91 0k 1 4 4 0.00 worldL + 47.50 4k 12 50 220 0.00 accWorldL + 16.57 1k 1 30 30 0.00 fullWaterPhantomLV + 16.57 1k 1 30 30 0.00 RepY + 16.57 1k 1 30 30 0.00 RepX + 2.80 0k 1 4 4 0.00 worldL ++ PhantomSD/TotalDose id 0 ### Run 0 starts. ### Run 0 start. @@ -887,10 +889,10 @@ Launched 50000 random primary particles Run terminated. Run Summary Number of events processed : 50000 - User=46.670000s Real=47.423487s Sys=0.020000s + User=16.420000s Real=18.202365s Sys=0.010000s PrimitiveScorer RUN PhantomSD,TotalDose - Number of entries 141 -loop elapsed time [s] : 46.73 + Number of entries 137 +loop elapsed time [s] : 16.47 Region -- -- appears in world volume @@ -1002,42 +1004,42 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_W Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 106.162 keV e- 2.28137 MeV e+ 2.13357 MeV proton 100 keV + Energy thresholds : gamma 106.569 keV e- 2.30976 MeV e+ 2.13081 MeV proton 100 keV Region(s) which use this couple : targetR Index : 2 used in the geometry : Yes Material : G4_Cu Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 24.8178 keV e- 1.40852 MeV e+ 1.31727 MeV proton 100 keV + Energy thresholds : gamma 24.7508 keV e- 1.39534 MeV e+ 1.31345 MeV proton 100 keV Region(s) which use this couple : targetR Index : 3 used in the geometry : Yes Material : G4_Be Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.01357 keV e- 466.458 keV e+ 451.096 keV proton 100 keV + Energy thresholds : gamma 2.01157 keV e- 466.625 keV e+ 457.312 keV proton 100 keV Region(s) which use this couple : BeWindow Index : 4 used in the geometry : Yes Material : G4_KAPTON Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.96945 keV e- 416.259 keV e+ 405.255 keV proton 100 keV + Energy thresholds : gamma 2.98035 keV e- 419.056 keV e+ 405.209 keV proton 100 keV Region(s) which use this couple : ionizationChamber Index : 5 used in the geometry : Yes Material : G4_Cu Range cuts : gamma 5 mm e- 5 mm e+ 5 mm proton 5 mm - Energy thresholds : gamma 55.2539 keV e- 6.7518 MeV e+ 6.31439 MeV proton 500 keV + Energy thresholds : gamma 55.0667 keV e- 6.8606 MeV e+ 6.41471 MeV proton 500 keV Region(s) which use this couple : flatfilterR Index : 6 used in the geometry : Yes Material : G4_MYLAR Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 3.0095 keV e- 419.056 keV e+ 405.255 keV proton 100 keV + Energy thresholds : gamma 3.02067 keV e- 419.056 keV e+ 405.209 keV proton 100 keV Region(s) which use this couple : Mirror @@ -1051,49 +1053,49 @@ Index : 7 used in the geometry : Yes Index : 8 used in the geometry : Yes Material : G4_W Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 106.162 keV e- 2.28137 MeV e+ 2.13357 MeV proton 100 keV + Energy thresholds : gamma 106.569 keV e- 2.30976 MeV e+ 2.13081 MeV proton 100 keV Region(s) which use this couple : PrymCollR Index : 9 used in the geometry : Yes Material : G4_Fe Range cuts : gamma 1 cm e- 1 cm e+ 1 cm proton 1 cm - Energy thresholds : gamma 60.4828 keV e- 12.9292 MeV e+ 12.0109 MeV proton 1 MeV + Energy thresholds : gamma 60.499 keV e- 13.0779 MeV e+ 12.2279 MeV proton 1 MeV Region(s) which use this couple : MLCR Index : 10 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws1XR Index : 11 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws2XR Index : 12 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws1YR Index : 13 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws2YR Index : 14 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 1.10939 keV e- 85.1099 keV e+ 83.4168 keV proton 10 keV + Energy thresholds : gamma 1.10981 keV e- 84.6589 keV e+ 83.5287 keV proton 10 keV Region(s) which use this couple : fullWaterPhantomR @@ -1114,10 +1116,10 @@ Launched 50000 random primary particles Run terminated. Run Summary Number of events processed : 50000 - User=48.280000s Real=48.609713s Sys=0.010000s + User=16.430000s Real=17.183352s Sys=0.020000s PrimitiveScorer RUN PhantomSD,TotalDose - Number of entries 203 -loop elapsed time [s] : 48.32 + Number of entries 206 +loop elapsed time [s] : 16.47 ################ END NEW GEOMETRY ######################## /run/geometryModified @@ -1276,42 +1278,42 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_W Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 106.162 keV e- 2.28137 MeV e+ 2.13357 MeV proton 100 keV + Energy thresholds : gamma 106.569 keV e- 2.30976 MeV e+ 2.13081 MeV proton 100 keV Region(s) which use this couple : targetR Index : 2 used in the geometry : Yes Material : G4_Cu Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 24.8178 keV e- 1.40852 MeV e+ 1.31727 MeV proton 100 keV + Energy thresholds : gamma 24.7508 keV e- 1.39534 MeV e+ 1.31345 MeV proton 100 keV Region(s) which use this couple : targetR Index : 3 used in the geometry : Yes Material : G4_Be Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.01357 keV e- 466.458 keV e+ 451.096 keV proton 100 keV + Energy thresholds : gamma 2.01157 keV e- 466.625 keV e+ 457.312 keV proton 100 keV Region(s) which use this couple : BeWindow Index : 4 used in the geometry : Yes Material : G4_KAPTON Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.96945 keV e- 416.259 keV e+ 405.255 keV proton 100 keV + Energy thresholds : gamma 2.98035 keV e- 419.056 keV e+ 405.209 keV proton 100 keV Region(s) which use this couple : ionizationChamber Index : 5 used in the geometry : Yes Material : G4_Cu Range cuts : gamma 5 mm e- 5 mm e+ 5 mm proton 5 mm - Energy thresholds : gamma 55.2539 keV e- 6.7518 MeV e+ 6.31439 MeV proton 500 keV + Energy thresholds : gamma 55.0667 keV e- 6.8606 MeV e+ 6.41471 MeV proton 500 keV Region(s) which use this couple : flatfilterR Index : 6 used in the geometry : Yes Material : G4_MYLAR Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 3.0095 keV e- 419.056 keV e+ 405.255 keV proton 100 keV + Energy thresholds : gamma 3.02067 keV e- 419.056 keV e+ 405.209 keV proton 100 keV Region(s) which use this couple : Mirror @@ -1325,49 +1327,49 @@ Index : 7 used in the geometry : Yes Index : 8 used in the geometry : Yes Material : G4_W Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 106.162 keV e- 2.28137 MeV e+ 2.13357 MeV proton 100 keV + Energy thresholds : gamma 106.569 keV e- 2.30976 MeV e+ 2.13081 MeV proton 100 keV Region(s) which use this couple : PrymCollR Index : 9 used in the geometry : Yes Material : G4_Fe Range cuts : gamma 1 cm e- 1 cm e+ 1 cm proton 1 cm - Energy thresholds : gamma 60.4828 keV e- 12.9292 MeV e+ 12.0109 MeV proton 1 MeV + Energy thresholds : gamma 60.499 keV e- 13.0779 MeV e+ 12.2279 MeV proton 1 MeV Region(s) which use this couple : MLCR Index : 10 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws1XR Index : 11 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws2XR Index : 12 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws1YR Index : 13 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws2YR Index : 14 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 1.10939 keV e- 85.1099 keV e+ 83.4168 keV proton 10 keV + Energy thresholds : gamma 1.10981 keV e- 84.6589 keV e+ 83.5287 keV proton 10 keV Region(s) which use this couple : fullWaterPhantomR @@ -1376,26 +1378,26 @@ Index : 14 used in the geometry : Yes Start closing geometry. G4GeometryManager::ReportVoxelStats -- Voxel Statistics - Total memory consumed for geometry optimisation: 15 kByte + Total memory consumed for geometry optimisation: 10 kByte Total CPU time elapsed for geometry optimisation: 0 seconds Voxelisation: top CPU users: Percent Total CPU System CPU Memory Volume ------- ---------- ---------- -------- ---------- 0.00 0.00 0.00 0k worldL - 0.00 0.00 0.00 7k accWorldL - 0.00 0.00 0.00 3k fullWaterPhantomLV - 0.00 0.00 0.00 3k RepY - 0.00 0.00 0.00 3k RepX + 0.00 0.00 0.00 5k accWorldL + 0.00 0.00 0.00 2k fullWaterPhantomLV + 0.00 0.00 0.00 2k RepY + 0.00 0.00 0.00 2k RepX Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume ------- -------- ------ ------ -------- ---------- ---------- - 44.88 6k 12 50 220 0.00 accWorldL - 17.57 2k 1 30 30 0.00 fullWaterPhantomLV - 17.57 2k 1 30 30 0.00 RepY - 17.57 2k 1 30 30 0.00 RepX - 2.41 0k 1 3 4 0.00 worldL + 47.72 4k 12 50 220 0.00 accWorldL + 16.64 1k 1 30 30 0.00 fullWaterPhantomLV + 16.64 1k 1 30 30 0.00 RepY + 16.64 1k 1 30 30 0.00 RepX + 2.36 0k 1 3 4 0.00 worldL ++ PhantomSD/TotalDose id 0 ### Run 2 starts. ### Run 2 start. @@ -1411,10 +1413,10 @@ Launched 50000 random primary particles Run terminated. Run Summary Number of events processed : 50000 - User=47.860000s Real=48.359570s Sys=0.010000s + User=16.660000s Real=18.976479s Sys=0.020000s PrimitiveScorer RUN PhantomSD,TotalDose - Number of entries 92 -loop elapsed time [s] : 47.9 + Number of entries 102 +loop elapsed time [s] : 16.7 Region -- -- appears in world volume @@ -1526,42 +1528,42 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_W Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 106.162 keV e- 2.28137 MeV e+ 2.13357 MeV proton 100 keV + Energy thresholds : gamma 106.569 keV e- 2.30976 MeV e+ 2.13081 MeV proton 100 keV Region(s) which use this couple : targetR Index : 2 used in the geometry : Yes Material : G4_Cu Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 24.8178 keV e- 1.40852 MeV e+ 1.31727 MeV proton 100 keV + Energy thresholds : gamma 24.7508 keV e- 1.39534 MeV e+ 1.31345 MeV proton 100 keV Region(s) which use this couple : targetR Index : 3 used in the geometry : Yes Material : G4_Be Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.01357 keV e- 466.458 keV e+ 451.096 keV proton 100 keV + Energy thresholds : gamma 2.01157 keV e- 466.625 keV e+ 457.312 keV proton 100 keV Region(s) which use this couple : BeWindow Index : 4 used in the geometry : Yes Material : G4_KAPTON Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.96945 keV e- 416.259 keV e+ 405.255 keV proton 100 keV + Energy thresholds : gamma 2.98035 keV e- 419.056 keV e+ 405.209 keV proton 100 keV Region(s) which use this couple : ionizationChamber Index : 5 used in the geometry : Yes Material : G4_Cu Range cuts : gamma 5 mm e- 5 mm e+ 5 mm proton 5 mm - Energy thresholds : gamma 55.2539 keV e- 6.7518 MeV e+ 6.31439 MeV proton 500 keV + Energy thresholds : gamma 55.0667 keV e- 6.8606 MeV e+ 6.41471 MeV proton 500 keV Region(s) which use this couple : flatfilterR Index : 6 used in the geometry : Yes Material : G4_MYLAR Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 3.0095 keV e- 419.056 keV e+ 405.255 keV proton 100 keV + Energy thresholds : gamma 3.02067 keV e- 419.056 keV e+ 405.209 keV proton 100 keV Region(s) which use this couple : Mirror @@ -1575,49 +1577,49 @@ Index : 7 used in the geometry : Yes Index : 8 used in the geometry : Yes Material : G4_W Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 106.162 keV e- 2.28137 MeV e+ 2.13357 MeV proton 100 keV + Energy thresholds : gamma 106.569 keV e- 2.30976 MeV e+ 2.13081 MeV proton 100 keV Region(s) which use this couple : PrymCollR Index : 9 used in the geometry : Yes Material : G4_Fe Range cuts : gamma 1 cm e- 1 cm e+ 1 cm proton 1 cm - Energy thresholds : gamma 60.4828 keV e- 12.9292 MeV e+ 12.0109 MeV proton 1 MeV + Energy thresholds : gamma 60.499 keV e- 13.0779 MeV e+ 12.2279 MeV proton 1 MeV Region(s) which use this couple : MLCR Index : 10 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws1XR Index : 11 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws2XR Index : 12 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws1YR Index : 13 used in the geometry : Yes Material : steel1 Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 81.2117 keV e- 28.3074 MeV e+ 26.4736 MeV proton 2 MeV + Energy thresholds : gamma 81.0405 keV e- 28.1348 MeV e+ 26.3063 MeV proton 2 MeV Region(s) which use this couple : Jaws2YR Index : 14 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 1.10939 keV e- 85.1099 keV e+ 83.4168 keV proton 10 keV + Energy thresholds : gamma 1.10981 keV e- 84.6589 keV e+ 83.5287 keV proton 10 keV Region(s) which use this couple : fullWaterPhantomR @@ -1638,13 +1640,13 @@ Launched 50000 random primary particles Run terminated. Run Summary Number of events processed : 50000 - User=46.970000s Real=47.491599s Sys=0.020000s + User=17.220000s Real=19.530983s Sys=0.050000s PrimitiveScorer RUN PhantomSD,TotalDose - Number of entries 89 -loop elapsed time [s] : 47.02 + Number of entries 117 +loop elapsed time [s] : 17.26 ################ END NEW GEOMETRY ######################## -loop elapsed time [s] : 195.38 +loop elapsed time [s] : 70.17 G4 kernel has come to Quit state. UserDetectorConstruction deleted. @@ -1656,24 +1658,24 @@ G4SDManager deleted. EventManager deleted. Units table cleared. TransportationManager deleted. -Total navigation history collections cleaned: 23 +Total navigation history collections cleaned: 19 ================== Deleting memory pools =================== -Pool ID '20G4NavigationLevelRep', size : 0.0336 MB +Pool ID '20G4NavigationLevelRep', size : 0.0269 MB Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB Pool ID '16G4HitsCollection', size : 0 MB Pool ID '7G4Event', size : 0.000961 MB Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.000961 MB Pool ID '15G4HCofThisEvent', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.00385 MB -Pool ID '7G4Track', size : 0.00673 MB -Pool ID '18G4TouchableHistory', size : 0.00288 MB +Pool ID '17G4DynamicParticle', size : 0.00288 MB +Pool ID '7G4Track', size : 0.00577 MB +Pool ID '18G4TouchableHistory', size : 0.00192 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Pool ID '12G4Trajectory', size : 0.00288 MB -Pool ID '17G4TrajectoryPoint', size : 0.0365 MB +Pool ID '17G4TrajectoryPoint', size : 0.0346 MB Pool ID '21G4TrajectoryContainer', size : 0.000961 MB Number of memory pools allocated: 14 of which, static: 0 -Dynamic pools deleted: 14 / Total memory freed: 0.093 MB +Dynamic pools deleted: 14 / Total memory freed: 0.082 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/advanced/medical_linac/ml2.cc b/examples/advanced/medical_linac/ml2.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/ml2.mac b/examples/advanced/medical_linac/ml2.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2Acc1.cc b/examples/advanced/medical_linac/src/ML2Acc1.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2Acc1Messenger.cc b/examples/advanced/medical_linac/src/ML2Acc1Messenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2AcceleratorConstruction.cc b/examples/advanced/medical_linac/src/ML2AcceleratorConstruction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2AcceleratorConstructionMessenger.cc b/examples/advanced/medical_linac/src/ML2AcceleratorConstructionMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2CInputData.cc b/examples/advanced/medical_linac/src/ML2CInputData.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2Convergence.cc b/examples/advanced/medical_linac/src/ML2Convergence.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2EventAction.cc b/examples/advanced/medical_linac/src/ML2EventAction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2ExpVoxels.cc b/examples/advanced/medical_linac/src/ML2ExpVoxels.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2MainMessenger.cc b/examples/advanced/medical_linac/src/ML2MainMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2Ph_BoxInBox.cc b/examples/advanced/medical_linac/src/ML2Ph_BoxInBox.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2Ph_FullWater.cc b/examples/advanced/medical_linac/src/ML2Ph_FullWater.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2PhantomConstruction.cc b/examples/advanced/medical_linac/src/ML2PhantomConstruction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2PhantomConstructionMessenger.cc b/examples/advanced/medical_linac/src/ML2PhantomConstructionMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2PhaseSpaces.cc b/examples/advanced/medical_linac/src/ML2PhaseSpaces.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2PhysicsList.cc b/examples/advanced/medical_linac/src/ML2PhysicsList.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2PrimaryGenerationAction.cc b/examples/advanced/medical_linac/src/ML2PrimaryGenerationAction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2PrimaryGenerationActionMessenger.cc b/examples/advanced/medical_linac/src/ML2PrimaryGenerationActionMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2RunAction.cc b/examples/advanced/medical_linac/src/ML2RunAction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2SteppingAction.cc b/examples/advanced/medical_linac/src/ML2SteppingAction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2TrackingAction.cc b/examples/advanced/medical_linac/src/ML2TrackingAction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/src/ML2WorldConstruction.cc b/examples/advanced/medical_linac/src/ML2WorldConstruction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/medical_linac/totDose.txt b/examples/advanced/medical_linac/totDose.txt index 3bb978b132..4660e7d326 100644 --- a/examples/advanced/medical_linac/totDose.txt +++ b/examples/advanced/medical_linac/totDose.txt @@ -263,7 +263,7 @@ 22 8 0 0 23 8 0 0 24 8 0 0 -25 8 0 1.41816e-12 +25 8 0 0 26 8 0 0 27 8 0 0 28 8 0 0 @@ -331,7 +331,7 @@ 0 11 0 0 1 11 0 0 2 11 0 0 -3 11 0 0 +3 11 0 1.74602e-11 4 11 0 0 5 11 0 0 6 11 0 0 @@ -764,7 +764,7 @@ 13 25 0 0 14 25 0 0 15 25 0 0 -16 25 0 0 +16 25 0 7.6827e-13 17 25 0 0 18 25 0 0 19 25 0 0 @@ -1110,7 +1110,7 @@ 29 6 1 0 0 7 1 0 1 7 1 0 -2 7 1 0 +2 7 1 1.15429e-10 3 7 1 0 4 7 1 0 5 7 1 0 @@ -2115,7 +2115,7 @@ 14 10 2 0 15 10 2 0 16 10 2 0 -17 10 2 1.49792e-11 +17 10 2 0 18 10 2 0 19 10 2 0 20 10 2 0 @@ -2478,7 +2478,7 @@ 17 22 2 0 18 22 2 0 19 22 2 0 -20 22 2 0 +20 22 2 3.9175e-11 21 22 2 0 22 22 2 0 23 22 2 0 @@ -2536,7 +2536,7 @@ 15 24 2 0 16 24 2 0 17 24 2 0 -18 24 2 0 +18 24 2 1.64393e-13 19 24 2 0 20 24 2 0 21 24 2 0 @@ -3439,7 +3439,7 @@ 18 24 3 0 19 24 3 0 20 24 3 0 -21 24 3 0 +21 24 3 6.17504e-12 22 24 3 0 23 24 3 0 24 24 3 0 @@ -3567,7 +3567,7 @@ 26 28 3 0 27 28 3 0 28 28 3 0 -29 28 3 5.88773e-12 +29 28 3 0 0 29 3 0 1 29 3 0 2 29 3 0 @@ -3583,7 +3583,7 @@ 12 29 3 0 13 29 3 0 14 29 3 0 -15 29 3 0 +15 29 3 1.28644e-10 16 29 3 0 17 29 3 0 18 29 3 0 @@ -4157,7 +4157,7 @@ 16 18 4 0 17 18 4 0 18 18 4 0 -19 18 4 8.23014e-12 +19 18 4 0 20 18 4 0 21 18 4 0 22 18 4 0 @@ -4467,7 +4467,7 @@ 26 28 4 0 27 28 4 0 28 28 4 0 -29 28 4 7.8221e-11 +29 28 4 0 0 29 4 0 1 29 4 0 2 29 4 0 @@ -5244,7 +5244,7 @@ 23 24 5 0 24 24 5 0 25 24 5 0 -26 24 5 1.8033e-12 +26 24 5 0 27 24 5 0 28 24 5 0 29 24 5 0 @@ -6173,7 +6173,7 @@ 22 25 6 0 23 25 6 0 24 25 6 0 -25 25 6 6.61618e-12 +25 25 6 0 26 25 6 0 27 25 6 0 28 25 6 0 @@ -6982,11 +6982,11 @@ 21 22 7 0 22 22 7 0 23 22 7 0 -24 22 7 2.19576e-13 +24 22 7 0 25 22 7 0 26 22 7 0 27 22 7 0 -28 22 7 1.84806e-12 +28 22 7 0 29 22 7 0 0 23 7 0 1 23 7 0 @@ -7915,7 +7915,7 @@ 24 23 8 0 25 23 8 0 26 23 8 0 -27 23 8 1.4643e-11 +27 23 8 0 28 23 8 0 29 23 8 0 0 24 8 0 @@ -8020,7 +8020,7 @@ 9 27 8 0 10 27 8 0 11 27 8 0 -12 27 8 0 +12 27 8 9.96885e-12 13 27 8 0 14 27 8 0 15 27 8 0 @@ -8378,7 +8378,7 @@ 7 9 9 0 8 9 9 0 9 9 9 0 -10 9 9 1.39046e-10 +10 9 9 0 11 9 9 0 12 9 9 0 13 9 9 0 @@ -8776,7 +8776,7 @@ 15 22 9 0 16 22 9 0 17 22 9 0 -18 22 9 0 +18 22 9 1.71386e-11 19 22 9 0 20 22 9 0 21 22 9 0 @@ -8900,7 +8900,7 @@ 19 26 9 0 20 26 9 0 21 26 9 0 -22 26 9 0 +22 26 9 3.51546e-11 23 26 9 0 24 26 9 0 25 26 9 0 @@ -8952,7 +8952,7 @@ 11 28 9 0 12 28 9 0 13 28 9 0 -14 28 9 0 +14 28 9 3.41589e-12 15 28 9 0 16 28 9 0 17 28 9 0 @@ -9790,7 +9790,7 @@ 9 26 10 0 10 26 10 0 11 26 10 0 -12 26 10 0 +12 26 10 3.69847e-12 13 26 10 0 14 26 10 0 15 26 10 0 @@ -9799,7 +9799,7 @@ 18 26 10 0 19 26 10 0 20 26 10 0 -21 26 10 0 +21 26 10 1.00691e-12 22 26 10 0 23 26 10 0 24 26 10 0 @@ -9880,8 +9880,8 @@ 9 29 10 0 10 29 10 0 11 29 10 0 -12 29 10 0 -13 29 10 0 +12 29 10 7.29546e-11 +13 29 10 5.50679e-11 14 29 10 0 15 29 10 0 16 29 10 0 @@ -10576,7 +10576,7 @@ 15 22 11 0 16 22 11 0 17 22 11 0 -18 22 11 0 +18 22 11 1.62387e-13 19 22 11 0 20 22 11 0 21 22 11 0 @@ -10699,7 +10699,7 @@ 18 26 11 0 19 26 11 0 20 26 11 0 -21 26 11 0 +21 26 11 1.55458e-10 22 26 11 0 23 26 11 0 24 26 11 0 @@ -10729,7 +10729,7 @@ 18 27 11 0 19 27 11 0 20 27 11 0 -21 27 11 0 +21 27 11 6.38243e-12 22 27 11 0 23 27 11 0 24 27 11 0 @@ -11378,7 +11378,7 @@ 7 19 12 0 8 19 12 0 9 19 12 0 -10 19 12 7.20191e-11 +10 19 12 0 11 19 12 0 12 19 12 0 13 19 12 0 @@ -11765,7 +11765,7 @@ 4 2 13 0 5 2 13 0 6 2 13 0 -7 2 13 6.13781e-12 +7 2 13 0 8 2 13 0 9 2 13 0 10 2 13 0 @@ -12465,8 +12465,8 @@ 14 25 13 0 15 25 13 0 16 25 13 0 -17 25 13 0 -18 25 13 0 +17 25 13 4.0573e-11 +18 25 13 4.6709e-11 19 25 13 0 20 25 13 0 21 25 13 0 @@ -12583,7 +12583,7 @@ 12 29 13 0 13 29 13 0 14 29 13 0 -15 29 13 6.21068e-11 +15 29 13 0 16 29 13 0 17 29 13 0 18 29 13 0 @@ -12665,7 +12665,7 @@ 4 2 14 0 5 2 14 0 6 2 14 0 -7 2 14 8.09073e-12 +7 2 14 0 8 2 14 0 9 2 14 0 10 2 14 0 @@ -13179,7 +13179,7 @@ 8 19 14 0 9 19 14 0 10 19 14 0 -11 19 14 4.362e-12 +11 19 14 0 12 19 14 0 13 19 14 0 14 19 14 0 @@ -13325,7 +13325,7 @@ 4 24 14 0 5 24 14 0 6 24 14 0 -7 24 14 2.29306e-10 +7 24 14 0 8 24 14 0 9 24 14 0 10 24 14 0 @@ -13355,14 +13355,14 @@ 4 25 14 0 5 25 14 0 6 25 14 0 -7 25 14 6.93591e-11 +7 25 14 0 8 25 14 0 9 25 14 0 10 25 14 0 11 25 14 0 12 25 14 0 13 25 14 0 -14 25 14 1.56317e-12 +14 25 14 0 15 25 14 0 16 25 14 0 17 25 14 0 @@ -13483,7 +13483,7 @@ 12 29 14 0 13 29 14 0 14 29 14 0 -15 29 14 7.04902e-13 +15 29 14 0 16 29 14 0 17 29 14 0 18 29 14 0 @@ -14165,7 +14165,7 @@ 4 22 15 0 5 22 15 0 6 22 15 0 -7 22 15 1.10553e-11 +7 22 15 0 8 22 15 0 9 22 15 0 10 22 15 0 @@ -14255,7 +14255,7 @@ 4 25 15 0 5 25 15 0 6 25 15 0 -7 25 15 7.12536e-11 +7 25 15 0 8 25 15 0 9 25 15 0 10 25 15 0 @@ -14297,7 +14297,7 @@ 16 26 15 0 17 26 15 0 18 26 15 0 -19 26 15 0 +19 26 15 2.04346e-11 20 26 15 0 21 26 15 0 22 26 15 0 @@ -14355,7 +14355,7 @@ 14 28 15 0 15 28 15 0 16 28 15 0 -17 28 15 0 +17 28 15 2.75374e-10 18 28 15 0 19 28 15 0 20 28 15 0 @@ -14385,7 +14385,7 @@ 14 29 15 0 15 29 15 0 16 29 15 0 -17 29 15 0 +17 29 15 3.26622e-11 18 29 15 0 19 29 15 0 20 29 15 0 @@ -14744,7 +14744,7 @@ 13 11 16 0 14 11 16 0 15 11 16 0 -16 11 16 1.46824e-11 +16 11 16 0 17 11 16 0 18 11 16 0 19 11 16 0 @@ -14826,7 +14826,7 @@ 5 14 16 0 6 14 16 0 7 14 16 0 -8 14 16 8.32541e-12 +8 14 16 0 9 14 16 0 10 14 16 0 11 14 16 0 @@ -14914,7 +14914,7 @@ 3 17 16 0 4 17 16 0 5 17 16 0 -6 17 16 0 +6 17 16 2.1299e-11 7 17 16 0 8 17 16 0 9 17 16 0 @@ -14943,7 +14943,7 @@ 2 18 16 0 3 18 16 0 4 18 16 0 -5 18 16 0 +5 18 16 8.08471e-12 6 18 16 0 7 18 16 0 8 18 16 0 @@ -15044,7 +15044,7 @@ 13 21 16 0 14 21 16 0 15 21 16 0 -16 21 16 0 +16 21 16 1.53166e-10 17 21 16 0 18 21 16 0 19 21 16 0 @@ -15069,17 +15069,17 @@ 8 22 16 0 9 22 16 0 10 22 16 0 -11 22 16 2.64482e-11 +11 22 16 0 12 22 16 0 13 22 16 0 14 22 16 0 15 22 16 0 -16 22 16 0 +16 22 16 1.04773e-10 17 22 16 0 18 22 16 0 19 22 16 0 20 22 16 0 -21 22 16 0 +21 22 16 1.15445e-11 22 22 16 0 23 22 16 0 24 22 16 0 @@ -15099,8 +15099,8 @@ 8 23 16 0 9 23 16 0 10 23 16 0 -11 23 16 2.18037e-11 -12 23 16 1.0969e-10 +11 23 16 0 +12 23 16 0 13 23 16 0 14 23 16 0 15 23 16 0 @@ -15108,7 +15108,7 @@ 17 23 16 0 18 23 16 0 19 23 16 0 -20 23 16 0 +20 23 16 5.84815e-11 21 23 16 0 22 23 16 0 23 23 16 0 @@ -15226,7 +15226,7 @@ 15 27 16 0 16 27 16 0 17 27 16 0 -18 27 16 0 +18 27 16 3.92843e-11 19 27 16 0 20 27 16 0 21 27 16 0 @@ -15255,8 +15255,8 @@ 14 28 16 0 15 28 16 0 16 28 16 0 -17 28 16 1.21365e-10 -18 28 16 0 +17 28 16 5.13196e-11 +18 28 16 1.669e-10 19 28 16 0 20 28 16 0 21 28 16 0 @@ -15278,7 +15278,7 @@ 7 29 16 0 8 29 16 0 9 29 16 0 -10 29 16 2.82401e-11 +10 29 16 0 11 29 16 0 12 29 16 0 13 29 16 0 @@ -15967,7 +15967,7 @@ 6 22 17 0 7 22 17 0 8 22 17 0 -9 22 17 1.96322e-11 +9 22 17 0 10 22 17 0 11 22 17 0 12 22 17 0 @@ -16068,7 +16068,7 @@ 17 25 17 0 18 25 17 0 19 25 17 0 -20 25 17 0 +20 25 17 9.96447e-13 21 25 17 0 22 25 17 0 23 25 17 0 @@ -16099,8 +16099,8 @@ 18 26 17 0 19 26 17 0 20 26 17 0 -21 26 17 0 -22 26 17 0 +21 26 17 1.94306e-10 +22 26 17 4.34698e-11 23 26 17 0 24 26 17 0 25 26 17 0 @@ -16110,7 +16110,7 @@ 29 26 17 0 0 27 17 0 1 27 17 0 -2 27 17 0 +2 27 17 2.51186e-11 3 27 17 0 4 27 17 0 5 27 17 0 @@ -16129,7 +16129,7 @@ 18 27 17 0 19 27 17 0 20 27 17 0 -21 27 17 0 +21 27 17 1.28211e-10 22 27 17 0 23 27 17 0 24 27 17 0 @@ -16158,7 +16158,7 @@ 17 28 17 0 18 28 17 0 19 28 17 0 -20 28 17 0 +20 28 17 3.40847e-13 21 28 17 0 22 28 17 0 23 28 17 0 @@ -16233,7 +16233,7 @@ 2 1 18 0 3 1 18 0 4 1 18 0 -5 1 18 8.08388e-12 +5 1 18 0 6 1 18 0 7 1 18 0 8 1 18 0 @@ -16253,8 +16253,8 @@ 22 1 18 0 23 1 18 0 24 1 18 0 -25 1 18 2.20742e-11 -26 1 18 2.42973e-11 +25 1 18 0 +26 1 18 0 27 1 18 0 28 1 18 0 29 1 18 0 @@ -16871,7 +16871,7 @@ 10 22 18 0 11 22 18 0 12 22 18 0 -13 22 18 1.86619e-12 +13 22 18 0 14 22 18 0 15 22 18 0 16 22 18 0 @@ -16891,7 +16891,7 @@ 0 23 18 0 1 23 18 0 2 23 18 0 -3 23 18 1.42611e-11 +3 23 18 0 4 23 18 0 5 23 18 0 6 23 18 0 @@ -16956,7 +16956,7 @@ 5 25 18 0 6 25 18 0 7 25 18 0 -8 25 18 7.57547e-11 +8 25 18 0 9 25 18 0 10 25 18 0 11 25 18 0 @@ -17028,7 +17028,7 @@ 17 27 18 0 18 27 18 0 19 27 18 0 -20 27 18 0 +20 27 18 1.54237e-10 21 27 18 0 22 27 18 0 23 27 18 0 @@ -17476,8 +17476,8 @@ 15 12 19 0 16 12 19 0 17 12 19 0 -18 12 19 0 -19 12 19 0 +18 12 19 7.16549e-11 +19 12 19 4.8434e-12 20 12 19 0 21 12 19 0 22 12 19 0 @@ -17706,7 +17706,7 @@ 5 20 19 0 6 20 19 0 7 20 19 0 -8 20 19 0 +8 20 19 6.35082e-12 9 20 19 0 10 20 19 0 11 20 19 0 @@ -17715,7 +17715,7 @@ 14 20 19 0 15 20 19 0 16 20 19 0 -17 20 19 0 +17 20 19 7.11164e-12 18 20 19 0 19 20 19 0 20 20 19 0 @@ -17855,7 +17855,7 @@ 4 25 19 0 5 25 19 0 6 25 19 0 -7 25 19 0 +7 25 19 6.40407e-11 8 25 19 0 9 25 19 0 10 25 19 0 @@ -17917,7 +17917,7 @@ 6 27 19 0 7 27 19 0 8 27 19 0 -9 27 19 2.5524e-10 +9 27 19 0 10 27 19 0 11 27 19 0 12 27 19 0 @@ -17949,10 +17949,10 @@ 8 28 19 0 9 28 19 0 10 28 19 0 -11 28 19 0 +11 28 19 8.31355e-11 12 28 19 0 13 28 19 0 -14 28 19 0 +14 28 19 3.583e-11 15 28 19 0 16 28 19 0 17 28 19 0 @@ -17971,7 +17971,7 @@ 0 29 19 0 1 29 19 0 2 29 19 0 -3 29 19 0 +3 29 19 8.9673e-11 4 29 19 0 5 29 19 0 6 29 19 0 @@ -18313,7 +18313,7 @@ 12 10 20 0 13 10 20 0 14 10 20 0 -15 10 20 3.3286e-11 +15 10 20 0 16 10 20 0 17 10 20 0 18 10 20 0 @@ -18343,7 +18343,7 @@ 12 11 20 0 13 11 20 0 14 11 20 0 -15 11 20 1.093e-10 +15 11 20 0 16 11 20 0 17 11 20 0 18 11 20 0 @@ -18375,7 +18375,7 @@ 14 12 20 0 15 12 20 0 16 12 20 0 -17 12 20 0 +17 12 20 2.87535e-11 18 12 20 0 19 12 20 0 20 12 20 0 @@ -18558,7 +18558,7 @@ 17 18 20 0 18 18 20 0 19 18 20 0 -20 18 20 0 +20 18 20 1.72836e-12 21 18 20 0 22 18 20 0 23 18 20 0 @@ -18644,7 +18644,7 @@ 13 21 20 0 14 21 20 0 15 21 20 0 -16 21 20 0 +16 21 20 6.23026e-11 17 21 20 0 18 21 20 0 19 21 20 0 @@ -18676,8 +18676,8 @@ 15 22 20 0 16 22 20 0 17 22 20 0 -18 22 20 0 -19 22 20 0 +18 22 20 9.32874e-11 +19 22 20 4.02953e-11 20 22 20 0 21 22 20 0 22 22 20 0 @@ -18720,7 +18720,7 @@ 29 23 20 0 0 24 20 0 1 24 20 0 -2 24 20 6.98077e-12 +2 24 20 0 3 24 20 0 4 24 20 0 5 24 20 0 @@ -18754,8 +18754,8 @@ 3 25 20 0 4 25 20 0 5 25 20 0 -6 25 20 0 -7 25 20 0 +6 25 20 1.15212e-10 +7 25 20 7.50648e-11 8 25 20 0 9 25 20 0 10 25 20 0 @@ -18817,12 +18817,12 @@ 6 27 20 0 7 27 20 0 8 27 20 0 -9 27 20 3.56991e-10 +9 27 20 0 10 27 20 0 11 27 20 0 12 27 20 0 13 27 20 0 -14 27 20 0 +14 27 20 7.05196e-11 15 27 20 0 16 27 20 0 17 27 20 0 @@ -18852,7 +18852,7 @@ 11 28 20 0 12 28 20 0 13 28 20 0 -14 28 20 0 +14 28 20 1.22659e-10 15 28 20 0 16 28 20 0 17 28 20 0 @@ -18881,7 +18881,7 @@ 10 29 20 0 11 29 20 0 12 29 20 0 -13 29 20 0 +13 29 20 9.97118e-11 14 29 20 0 15 29 20 0 16 29 20 0 @@ -19212,8 +19212,8 @@ 11 10 21 0 12 10 21 0 13 10 21 0 -14 10 21 1.24363e-10 -15 10 21 3.60683e-10 +14 10 21 0 +15 10 21 0 16 10 21 0 17 10 21 0 18 10 21 0 @@ -19477,7 +19477,7 @@ 6 19 21 0 7 19 21 0 8 19 21 0 -9 19 21 1.05293e-12 +9 19 21 0 10 19 21 0 11 19 21 0 12 19 21 0 @@ -19512,14 +19512,14 @@ 11 20 21 0 12 20 21 0 13 20 21 0 -14 20 21 0 +14 20 21 1.13919e-10 15 20 21 0 16 20 21 0 17 20 21 0 18 20 21 0 19 20 21 0 20 20 21 0 -21 20 21 0 +21 20 21 3.41309e-10 22 20 21 0 23 20 21 0 24 20 21 0 @@ -19542,9 +19542,9 @@ 11 21 21 0 12 21 21 0 13 21 21 0 -14 21 21 0 +14 21 21 1.26931e-10 15 21 21 0 -16 21 21 0 +16 21 21 9.19741e-11 17 21 21 0 18 21 21 0 19 21 21 0 @@ -19603,7 +19603,7 @@ 12 23 21 0 13 23 21 0 14 23 21 0 -15 23 21 0 +15 23 21 1.06183e-12 16 23 21 0 17 23 21 0 18 23 21 0 @@ -19630,8 +19630,8 @@ 9 24 21 0 10 24 21 0 11 24 21 0 -12 24 21 0 -13 24 21 0 +12 24 21 6.87699e-11 +13 24 21 4.09044e-10 14 24 21 0 15 24 21 0 16 24 21 0 @@ -19661,9 +19661,9 @@ 10 25 21 0 11 25 21 0 12 25 21 0 -13 25 21 0 +13 25 21 2.29678e-11 14 25 21 0 -15 25 21 0 +15 25 21 1.64531e-11 16 25 21 0 17 25 21 0 18 25 21 0 @@ -19689,12 +19689,12 @@ 8 26 21 0 9 26 21 0 10 26 21 0 -11 26 21 0 +11 26 21 1.62419e-10 12 26 21 0 13 26 21 0 14 26 21 0 15 26 21 0 -16 26 21 1.00571e-10 +16 26 21 0 17 26 21 0 18 26 21 0 19 26 21 0 @@ -20222,7 +20222,7 @@ 1 14 22 0 2 14 22 0 3 14 22 0 -4 14 22 0 +4 14 22 3.77954e-12 5 14 22 0 6 14 22 0 7 14 22 0 @@ -20299,7 +20299,7 @@ 18 16 22 0 19 16 22 0 20 16 22 0 -21 16 22 0 +21 16 22 9.70707e-12 22 16 22 0 23 16 22 0 24 16 22 0 @@ -20316,7 +20316,7 @@ 5 17 22 0 6 17 22 0 7 17 22 0 -8 17 22 2.43897e-12 +8 17 22 0 9 17 22 0 10 17 22 0 11 17 22 0 @@ -20361,7 +20361,7 @@ 20 18 22 0 21 18 22 0 22 18 22 0 -23 18 22 0 +23 18 22 8.58985e-11 24 18 22 0 25 18 22 0 26 18 22 0 @@ -20412,7 +20412,7 @@ 11 20 22 0 12 20 22 0 13 20 22 0 -14 20 22 0 +14 20 22 3.47827e-10 15 20 22 0 16 20 22 0 17 20 22 0 @@ -20473,7 +20473,7 @@ 12 22 22 0 13 22 22 0 14 22 22 0 -15 22 22 0 +15 22 22 1.04425e-10 16 22 22 0 17 22 22 0 18 22 22 0 @@ -20502,7 +20502,7 @@ 11 23 22 0 12 23 22 0 13 23 22 0 -14 23 22 1.09247e-11 +14 23 22 0 15 23 22 0 16 23 22 0 17 23 22 0 @@ -20531,7 +20531,7 @@ 10 24 22 0 11 24 22 0 12 24 22 0 -13 24 22 0 +13 24 22 1.25468e-10 14 24 22 0 15 24 22 0 16 24 22 0 @@ -20589,7 +20589,7 @@ 8 26 22 0 9 26 22 0 10 26 22 0 -11 26 22 0 +11 26 22 2.11391e-10 12 26 22 0 13 26 22 0 14 26 22 0 @@ -20616,7 +20616,7 @@ 5 27 22 0 6 27 22 0 7 27 22 0 -8 27 22 0 +8 27 22 1.45694e-10 9 27 22 0 10 27 22 0 11 27 22 0 @@ -20643,7 +20643,7 @@ 2 28 22 0 3 28 22 0 4 28 22 0 -5 28 22 2.32863e-13 +5 28 22 0 6 28 22 0 7 28 22 0 8 28 22 0 @@ -21110,7 +21110,7 @@ 19 13 23 0 20 13 23 0 21 13 23 0 -22 13 23 0 +22 13 23 1.0996e-11 23 13 23 0 24 13 23 0 25 13 23 0 @@ -21256,8 +21256,8 @@ 15 18 23 0 16 18 23 0 17 18 23 0 -18 18 23 0 -19 18 23 0 +18 18 23 9.52579e-11 +19 18 23 2.56123e-11 20 18 23 0 21 18 23 0 22 18 23 0 @@ -21373,7 +21373,7 @@ 12 22 23 0 13 22 23 0 14 22 23 0 -15 22 23 0 +15 22 23 2.54167e-10 16 22 23 0 17 22 23 0 18 22 23 0 @@ -21405,7 +21405,7 @@ 14 23 23 0 15 23 23 0 16 23 23 0 -17 23 23 0 +17 23 23 6.07544e-11 18 23 23 0 19 23 23 0 20 23 23 0 @@ -21435,7 +21435,7 @@ 14 24 23 0 15 24 23 0 16 24 23 0 -17 24 23 0 +17 24 23 1.22727e-11 18 24 23 0 19 24 23 0 20 24 23 0 @@ -21452,7 +21452,7 @@ 1 25 23 0 2 25 23 0 3 25 23 0 -4 25 23 0 +4 25 23 4.9197e-11 5 25 23 0 6 25 23 0 7 25 23 0 @@ -21817,7 +21817,7 @@ 6 7 24 0 7 7 24 0 8 7 24 0 -9 7 24 0 +9 7 24 1.89309e-12 10 7 24 0 11 7 24 0 12 7 24 0 @@ -21847,7 +21847,7 @@ 6 8 24 0 7 8 24 0 8 8 24 0 -9 8 24 0 +9 8 24 9.75364e-12 10 8 24 0 11 8 24 0 12 8 24 0 @@ -21876,7 +21876,7 @@ 5 9 24 0 6 9 24 0 7 9 24 0 -8 9 24 2.75506e-11 +8 9 24 0 9 9 24 0 10 9 24 0 11 9 24 0 @@ -21932,7 +21932,7 @@ 1 11 24 0 2 11 24 0 3 11 24 0 -4 11 24 0 +4 11 24 9.16955e-12 5 11 24 0 6 11 24 0 7 11 24 0 @@ -21970,7 +21970,7 @@ 9 12 24 0 10 12 24 0 11 12 24 0 -12 12 24 4.70978e-12 +12 12 24 0 13 12 24 0 14 12 24 0 15 12 24 0 @@ -22010,7 +22010,7 @@ 19 13 24 0 20 13 24 0 21 13 24 0 -22 13 24 0 +22 13 24 2.81246e-11 23 13 24 0 24 13 24 0 25 13 24 0 @@ -22029,7 +22029,7 @@ 8 14 24 0 9 14 24 0 10 14 24 0 -11 14 24 1.73122e-11 +11 14 24 0 12 14 24 0 13 14 24 0 14 14 24 0 @@ -22180,7 +22180,7 @@ 9 19 24 0 10 19 24 0 11 19 24 0 -12 19 24 8.34621e-12 +12 19 24 0 13 19 24 0 14 19 24 0 15 19 24 0 @@ -22451,7 +22451,7 @@ 10 28 24 0 11 28 24 0 12 28 24 0 -13 28 24 1.11993e-10 +13 28 24 0 14 28 24 0 15 28 24 0 16 28 24 0 @@ -22487,13 +22487,13 @@ 16 29 24 0 17 29 24 0 18 29 24 0 -19 29 24 2.0059e-10 -20 29 24 0 +19 29 24 0 +20 29 24 1.93536e-11 21 29 24 0 22 29 24 0 23 29 24 0 24 29 24 0 -25 29 24 0 +25 29 24 5.50953e-12 26 29 24 0 27 29 24 0 28 29 24 0 @@ -22841,7 +22841,7 @@ 10 11 25 0 11 11 25 0 12 11 25 0 -13 11 25 5.02658e-12 +13 11 25 0 14 11 25 0 15 11 25 0 16 11 25 0 @@ -22895,7 +22895,7 @@ 4 13 25 0 5 13 25 0 6 13 25 0 -7 13 25 0 +7 13 25 2.18121e-11 8 13 25 0 9 13 25 0 10 13 25 0 @@ -22931,8 +22931,8 @@ 10 14 25 0 11 14 25 0 12 14 25 0 -13 14 25 7.84685e-13 -14 14 25 1.99405e-10 +13 14 25 0 +14 14 25 0 15 14 25 0 16 14 25 0 17 14 25 0 @@ -22958,10 +22958,10 @@ 7 15 25 0 8 15 25 0 9 15 25 0 -10 15 25 7.0948e-11 -11 15 25 1.79919e-11 +10 15 25 0 +11 15 25 0 12 15 25 0 -13 15 25 0 +13 15 25 1.41789e-11 14 15 25 0 15 15 25 0 16 15 25 0 @@ -22991,7 +22991,7 @@ 10 16 25 0 11 16 25 0 12 16 25 0 -13 16 25 2.44622e-12 +13 16 25 1.64866e-11 14 16 25 0 15 16 25 0 16 16 25 0 @@ -23117,8 +23117,8 @@ 16 20 25 0 17 20 25 0 18 20 25 0 -19 20 25 5.5957e-12 -20 20 25 1.44426e-11 +19 20 25 0 +20 20 25 0 21 20 25 0 22 20 25 0 23 20 25 0 @@ -23264,7 +23264,7 @@ 13 25 25 0 14 25 25 0 15 25 25 0 -16 25 25 1.80563e-11 +16 25 25 0 17 25 25 0 18 25 25 0 19 25 25 0 @@ -23287,13 +23287,13 @@ 6 26 25 0 7 26 25 0 8 26 25 0 -9 26 25 1.51423e-10 +9 26 25 0 10 26 25 0 11 26 25 0 12 26 25 0 13 26 25 0 14 26 25 0 -15 26 25 1.55552e-11 +15 26 25 0 16 26 25 0 17 26 25 0 18 26 25 0 @@ -23375,7 +23375,7 @@ 4 29 25 0 5 29 25 0 6 29 25 0 -7 29 25 0 +7 29 25 1.46753e-10 8 29 25 0 9 29 25 0 10 29 25 0 @@ -23745,7 +23745,7 @@ 14 11 26 0 15 11 26 0 16 11 26 0 -17 11 26 0 +17 11 26 2.63915e-12 18 11 26 0 19 11 26 0 20 11 26 0 @@ -23829,7 +23829,7 @@ 8 14 26 0 9 14 26 0 10 14 26 0 -11 14 26 1.13693e-12 +11 14 26 0 12 14 26 0 13 14 26 0 14 14 26 0 @@ -23860,8 +23860,8 @@ 9 15 26 0 10 15 26 0 11 15 26 0 -12 15 26 0 -13 15 26 0 +12 15 26 6.44242e-11 +13 15 26 2.82981e-10 14 15 26 0 15 15 26 0 16 15 26 0 @@ -24013,7 +24013,7 @@ 12 20 26 0 13 20 26 0 14 20 26 0 -15 20 26 0 +15 20 26 1.83992e-11 16 20 26 0 17 20 26 0 18 20 26 0 @@ -24044,7 +24044,7 @@ 13 21 26 0 14 21 26 0 15 21 26 0 -16 21 26 1.24366e-10 +16 21 26 0 17 21 26 0 18 21 26 0 19 21 26 0 @@ -24067,7 +24067,7 @@ 6 22 26 0 7 22 26 0 8 22 26 0 -9 22 26 4.87148e-11 +9 22 26 0 10 22 26 0 11 22 26 0 12 22 26 0 @@ -24101,7 +24101,7 @@ 10 23 26 0 11 23 26 0 12 23 26 0 -13 23 26 0 +13 23 26 1.40857e-11 14 23 26 0 15 23 26 0 16 23 26 0 @@ -24134,7 +24134,7 @@ 13 24 26 0 14 24 26 0 15 24 26 0 -16 24 26 2.39399e-10 +16 24 26 0 17 24 26 0 18 24 26 0 19 24 26 0 @@ -24164,9 +24164,9 @@ 13 25 26 0 14 25 26 0 15 25 26 0 -16 25 26 6.21835e-13 +16 25 26 0 17 25 26 0 -18 25 26 0 +18 25 26 1.92653e-11 19 25 26 0 20 25 26 0 21 25 26 0 @@ -24220,7 +24220,7 @@ 9 27 26 0 10 27 26 0 11 27 26 0 -12 27 26 0 +12 27 26 1.61184e-10 13 27 26 0 14 27 26 0 15 27 26 0 @@ -24728,7 +24728,7 @@ 7 14 27 0 8 14 27 0 9 14 27 0 -10 14 27 3.37544e-11 +10 14 27 0 11 14 27 0 12 14 27 0 13 14 27 0 @@ -24778,7 +24778,7 @@ 27 15 27 0 28 15 27 0 29 15 27 0 -0 16 27 1.90719e-10 +0 16 27 0 1 16 27 0 2 16 27 0 3 16 27 0 @@ -24790,7 +24790,7 @@ 9 16 27 0 10 16 27 0 11 16 27 0 -12 16 27 1.0781e-11 +12 16 27 0 13 16 27 0 14 16 27 0 15 16 27 0 @@ -24808,7 +24808,7 @@ 27 16 27 0 28 16 27 0 29 16 27 0 -0 17 27 2.86213e-10 +0 17 27 0 1 17 27 0 2 17 27 0 3 17 27 0 @@ -24820,7 +24820,7 @@ 9 17 27 0 10 17 27 0 11 17 27 0 -12 17 27 4.33633e-11 +12 17 27 0 13 17 27 0 14 17 27 0 15 17 27 0 @@ -24921,7 +24921,7 @@ 20 20 27 0 21 20 27 0 22 20 27 0 -23 20 27 0 +23 20 27 1.52849e-12 24 20 27 0 25 20 27 0 26 20 27 0 @@ -24937,7 +24937,7 @@ 6 21 27 0 7 21 27 0 8 21 27 0 -9 21 27 2.20641e-10 +9 21 27 0 10 21 27 0 11 21 27 0 12 21 27 0 @@ -24967,7 +24967,7 @@ 6 22 27 0 7 22 27 0 8 22 27 0 -9 22 27 6.45904e-11 +9 22 27 0 10 22 27 0 11 22 27 0 12 22 27 0 @@ -25060,8 +25060,8 @@ 9 25 27 0 10 25 27 0 11 25 27 0 -12 25 27 0 -13 25 27 0 +12 25 27 2.48617e-11 +13 25 27 3.27113e-10 14 25 27 0 15 25 27 0 16 25 27 0 @@ -25082,7 +25082,7 @@ 1 26 27 0 2 26 27 0 3 26 27 0 -4 26 27 7.23918e-11 +4 26 27 0 5 26 27 0 6 26 27 0 7 26 27 0 @@ -25091,7 +25091,7 @@ 10 26 27 0 11 26 27 0 12 26 27 0 -13 26 27 1.56058e-10 +13 26 27 0 14 26 27 0 15 26 27 0 16 26 27 0 @@ -25122,7 +25122,7 @@ 11 27 27 0 12 27 27 0 13 27 27 0 -14 27 27 2.24494e-11 +14 27 27 0 15 27 27 0 16 27 27 0 17 27 27 0 @@ -25598,7 +25598,7 @@ 7 13 28 0 8 13 28 0 9 13 28 0 -10 13 28 0 +10 13 28 8.82429e-12 11 13 28 0 12 13 28 0 13 13 28 0 @@ -25781,10 +25781,10 @@ 10 19 28 0 11 19 28 0 12 19 28 0 -13 19 28 0 +13 19 28 4.91048e-12 14 19 28 0 15 19 28 0 -16 19 28 0 +16 19 28 1.72462e-10 17 19 28 0 18 19 28 0 19 19 28 0 @@ -25807,14 +25807,14 @@ 6 20 28 0 7 20 28 0 8 20 28 0 -9 20 28 2.39652e-10 +9 20 28 0 10 20 28 0 11 20 28 0 12 20 28 0 13 20 28 0 14 20 28 0 15 20 28 0 -16 20 28 0 +16 20 28 6.49428e-11 17 20 28 0 18 20 28 0 19 20 28 0 @@ -25837,7 +25837,7 @@ 6 21 28 0 7 21 28 0 8 21 28 0 -9 21 28 1.82319e-10 +9 21 28 0 10 21 28 0 11 21 28 0 12 21 28 0 @@ -25871,7 +25871,7 @@ 10 22 28 0 11 22 28 0 12 22 28 0 -13 22 28 0 +13 22 28 5.69003e-11 14 22 28 0 15 22 28 0 16 22 28 0 @@ -25967,7 +25967,7 @@ 16 25 28 0 17 25 28 0 18 25 28 0 -19 25 28 0 +19 25 28 2.33241e-10 20 25 28 0 21 25 28 0 22 25 28 0 @@ -25982,7 +25982,7 @@ 1 26 28 0 2 26 28 0 3 26 28 0 -4 26 28 9.87656e-11 +4 26 28 0 5 26 28 0 6 26 28 0 7 26 28 0 @@ -26012,7 +26012,7 @@ 1 27 28 0 2 27 28 0 3 27 28 0 -4 27 28 6.92165e-12 +4 27 28 0 5 27 28 0 6 27 28 0 7 27 28 0 @@ -26083,7 +26083,7 @@ 12 29 28 0 13 29 28 0 14 29 28 0 -15 29 28 0 +15 29 28 2.50045e-11 16 29 28 0 17 29 28 0 18 29 28 0 @@ -26682,9 +26682,9 @@ 11 19 29 0 12 19 29 0 13 19 29 0 -14 19 29 0 +14 19 29 1.56156e-10 15 19 29 0 -16 19 29 0 +16 19 29 7.7756e-12 17 19 29 0 18 19 29 0 19 19 29 0 @@ -26714,8 +26714,8 @@ 13 20 29 0 14 20 29 0 15 20 29 0 -16 20 29 0 -17 20 29 0 +16 20 29 1.31126e-10 +17 20 29 3.00021e-11 18 20 29 0 19 20 29 0 20 20 29 0 @@ -26744,7 +26744,7 @@ 13 21 29 0 14 21 29 0 15 21 29 0 -16 21 29 5.28974e-12 +16 21 29 0 17 21 29 0 18 21 29 0 19 21 29 0 @@ -26779,7 +26779,7 @@ 18 22 29 0 19 22 29 0 20 22 29 0 -21 22 29 0 +21 22 29 2.38118e-12 22 22 29 0 23 22 29 0 24 22 29 0 @@ -26800,10 +26800,10 @@ 9 23 29 0 10 23 29 0 11 23 29 0 -12 23 29 0 +12 23 29 7.65849e-11 13 23 29 0 14 23 29 0 -15 23 29 1.12667e-10 +15 23 29 0 16 23 29 0 17 23 29 0 18 23 29 0 @@ -26831,9 +26831,9 @@ 10 24 29 0 11 24 29 0 12 24 29 0 -13 24 29 3.04142e-11 +13 24 29 0 14 24 29 0 -15 24 29 1.16638e-10 +15 24 29 0 16 24 29 0 17 24 29 0 18 24 29 0 @@ -26841,7 +26841,7 @@ 20 24 29 0 21 24 29 0 22 24 29 0 -23 24 29 0 +23 24 29 4.34557e-12 24 24 29 0 25 24 29 0 26 24 29 0 @@ -26892,7 +26892,7 @@ 11 26 29 0 12 26 29 0 13 26 29 0 -14 26 29 4.1521e-12 +14 26 29 0 15 26 29 0 16 26 29 0 17 26 29 0 @@ -26927,7 +26927,7 @@ 16 27 29 0 17 27 29 0 18 27 29 0 -19 27 29 0 +19 27 29 1.25066e-11 20 27 29 0 21 27 29 0 22 27 29 0 diff --git a/examples/advanced/microbeam/CMakeLists.txt b/examples/advanced/microbeam/CMakeLists.txt index d8b21d445c..5bb360dd64 100644 --- a/examples/advanced/microbeam/CMakeLists.txt +++ b/examples/advanced/microbeam/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(microbeam) #---------------------------------------------------------------------------- @@ -23,7 +26,7 @@ include(${Geant4_USE_FILE}) #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) diff --git a/examples/advanced/microbeam/GNUmakefile b/examples/advanced/microbeam/GNUmakefile old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/History b/examples/advanced/microbeam/History index d9b46f6375..e570f2abf2 100644 --- a/examples/advanced/microbeam/History +++ b/examples/advanced/microbeam/History @@ -7,6 +7,11 @@ Package History file -------------------- +15 Nov 2020 - S. Guatelli - tag microbeam-V10-06-01 +- Migration to G4RunManagerFactory + +02 Nov 2020 - B.Morgan - tag microbeam-V10-06-00 +- Support same CMake version range as core Geant4 04 Sep 2018 - S. Incerti - tag microbeam-V10-04-04 - updated visualization @@ -74,7 +79,7 @@ and SetMaximumEpsilonStep - switched to OGLIXm in vis.mac 16 Jan 2015 - S.Incerti - tag microbeam-V10-01-00 -- added protection against loops +- added protection against loops 14 Oct 2014 - S.Incerti - tag microbeam-V10-00-06 - warnings fix for Windows @@ -117,7 +122,7 @@ and SetMaximumEpsilonStep - Migration to MT 30 May 2013 - L. Pandola - tag microbeam-V09-06-01 -- Migrate analysis from AIDA to g4tools (no AIDA +- Migrate analysis from AIDA to g4tools (no AIDA dependency any longer). Minor fix in the CMakeLists.txt 19 April 2013 - S. Incerti - tag microbeam-V09-06-00 @@ -152,10 +157,10 @@ and SetMaximumEpsilonStep - more clean-up after Gunter's improvements 03 October 2011 - G.Folger - tag microbeam-V09-04-03 -- fix missed compilation warnings from gcc46 in MicrobeamEMField.cc +- fix missed compilation warnings from gcc46 in MicrobeamEMField.cc 03 October 2011 - G.Folger - tag microbeam-V09-04-02 -- fix compilation warnings from gcc46 in MicrobeamEMField.cc +- fix compilation warnings from gcc46 in MicrobeamEMField.cc and MicrobeamPhantomConfiguration.cc 11 August 2011 - S. Incerti - tag microbeam-V09-04-01 @@ -186,7 +191,7 @@ and SetMaximumEpsilonStep - Have vis.mac disabled by default 09 June 2010 - S. Incerti - tag microbeam-V09-03-04 -- Switched to physics_list library. microbeam.mac adapted. +- Switched to physics_list library. microbeam.mac adapted. 06 June 2010 - S. Incerti - tag microbeam-V09-03-03 - Removed unused variable (evt) in MicrobeamEventAction.cc @@ -205,11 +210,11 @@ and SetMaximumEpsilonStep 30 April 2009 - S. Incerti - tag microbeam-V09-02-01 - Updated Physics list to migrated Livermore processes - Corrected plot.C -- Corrected switching field value +- Corrected switching field value 26 February 2009 - G.Folger - tag microbeam-V09-02-00 - Correct MicrobeamEMField.cc to use logical &&, not bit & in if(). - + 23 October 2008 - tag microbeam-V09-01-03 - Corrected typos in zero field region in MicrobeamEMField.cc @@ -217,7 +222,7 @@ and SetMaximumEpsilonStep - Modified process ordering of G4eBremsstrahlung and G4StepLimiter in MicrobeamPhysicstList.cc 16 June 2008 - tag microbeam-V09-01-01 -- Added units in MicrobeamPhantomconfiguration.cc and +- Added units in MicrobeamPhantomconfiguration.cc and MicrobeamSteppingAction.cc 28 August 2007 - tag microbeam-V09-00-03 - G. Cosmo @@ -225,7 +230,7 @@ and SetMaximumEpsilonStep to allow for compilation on WIN32-VC systems. 22 August 2007 - tag microbeam-V09-00-02 - S. Incerti -- Updated dose computation to take into account volume edges in src/MicrobeamSteppingAction.cc +- Updated dose computation to take into account volume edges in src/MicrobeamSteppingAction.cc 21 August 2007 - tag microbeam-V09-00-01 - S. Incerti - Changed number of incident alpha particles in microbeam.mac @@ -237,13 +242,13 @@ and SetMaximumEpsilonStep - Updated dose computation for very low energy secondaries in src/MicrobeamSteppingAction.cc 27 Fev 2007 - S. Incerti -- Modified dE/dX calculation in src/MicrobeamSteppingAction.cc -in order to average on Pre/Post step. +- Modified dE/dX calculation in src/MicrobeamSteppingAction.cc +in order to average on Pre/Post step. - Updated README and html files with publications. 23 Nov 2006 - S. Incerti (microbeam-V08-01-01) -- Replaced G4MultipleScattering process for alphas by -G4hMultipleScattering process in src/MicrobeamPhysicsList.cc. +- Replaced G4MultipleScattering process for alphas by +G4hMultipleScattering process in src/MicrobeamPhysicsList.cc. 22 Nov 2006 - G. Cosmo (microbeam-V08-01-00) - Removed obsolete vis-manager classes. Now using G4VisExecutive. diff --git a/examples/advanced/microbeam/include/CellParameterisation.hh b/examples/advanced/microbeam/include/CellParameterisation.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/include/DetectorConstruction.hh b/examples/advanced/microbeam/include/DetectorConstruction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/include/EMField.hh b/examples/advanced/microbeam/include/EMField.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/include/EventAction.hh b/examples/advanced/microbeam/include/EventAction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/include/PhysicsList.hh b/examples/advanced/microbeam/include/PhysicsList.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/include/PrimaryGeneratorAction.hh b/examples/advanced/microbeam/include/PrimaryGeneratorAction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/include/RunAction.hh b/examples/advanced/microbeam/include/RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/include/SteppingAction.hh b/examples/advanced/microbeam/include/SteppingAction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/microbeam.cc b/examples/advanced/microbeam/microbeam.cc old mode 100755 new mode 100644 index 6aefee5549..ee3f536350 --- a/examples/advanced/microbeam/microbeam.cc +++ b/examples/advanced/microbeam/microbeam.cc @@ -33,13 +33,7 @@ // Rad. Prot. Dos. 133 (2009) 2-11 #include "G4Types.hh" - -#ifdef G4MULTITHREADED - #include "G4MTRunManager.hh" -#else - #include "G4RunManager.hh" -#endif - +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIExecutive.hh" #include "G4VisExecutive.hh" @@ -59,12 +53,9 @@ int main(int argc,char** argv) { // Construct the default run manager -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; - //runManager->SetNumberOfThreads(1); -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = G4RunManagerFactory::CreateRunManager(); + G4int nThreads = 4; + runManager->SetNumberOfThreads(nThreads); // Set mandatory user initialization classes diff --git a/examples/advanced/microbeam/microbeam.mac b/examples/advanced/microbeam/microbeam.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/microbeam.out b/examples/advanced/microbeam/microbeam.out index a1bdbfc9ce..fb16c0b0ee 100644 --- a/examples/advanced/microbeam/microbeam.out +++ b/examples/advanced/microbeam/microbeam.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -16,7 +17,7 @@ ***** Table : Nb of materials = 16 ***** - Material: Vacuum density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Vacuum density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -55,7 +56,7 @@ ElmMassFraction: 30.00 % ElmAbundance 27.29 % - Material: LPAir density: 0.000 kg/m3 RadL: 56273234.858 km Nucl.Int.Length: 135377118.068 km + Material: LPAir density: 0.000 mg/cm3 RadL: 56273233.937 km Nucl.Int.Length: 135377128.802 km Imean: 87.351 eV temperature: 293.16 K pressure: 1.00 atm ---> Element: Nitrogen (N) Z = 7.0 N = 14 A = 14.010 g/mole @@ -89,7 +90,7 @@ ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: Butane density: 0.026 kg/m3 RadL: 17.729 km Nucl.Int.Length: 25.658 km + Material: Butane density: 0.026 mg/cm3 RadL: 17.729 km Nucl.Int.Length: 25.658 km Imean: 53.040 eV temperature: 293.16 K pressure: 0.01 atm ---> Element: Carbon (C) Z = 6.0 N = 12 A = 12.011 g/mole @@ -333,10 +334,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -399,10 +402,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -425,7 +429,7 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 @@ -435,10 +439,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 UserMaxStep: SubType= 401 Step limit(mm)= 1 msc: for e+ SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -460,7 +465,7 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -473,9 +478,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -489,14 +494,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -509,9 +514,9 @@ nuclearStopping: for proton SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -525,9 +530,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -542,9 +547,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -558,14 +563,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -574,9 +579,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -590,14 +595,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -606,9 +611,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -622,14 +627,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -638,9 +643,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -655,14 +660,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -671,9 +676,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -688,14 +693,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -704,9 +709,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -720,14 +725,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -736,9 +741,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -752,14 +757,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -768,7 +773,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. -##### Create analysis manager 0xd6edc0 +##### Create analysis manager 0x1147c00 Using Root analysis manager All Ntuples have been created -> Event # 1 generated @@ -776,8 +781,8 @@ All Ntuples have been created -> Event # 2 generated ===> The incident alpha particle has reached the targeted cell : - -----> total absorbed dose within Nucleus is (Gy) = 0.29740803860634 - -----> total absorbed dose within Cytoplasm is (Gy) = 0.037565343881787 + -----> total absorbed dose within Nucleus is (Gy) = 0.29742495970773 + -----> total absorbed dose within Cytoplasm is (Gy) = 0.037565763424155 -> Event # 3 generated ===> Sorry, the incident alpha particle has missed the targeted cell ! @@ -793,8 +798,8 @@ All Ntuples have been created -> Event # 7 generated ===> The incident alpha particle has reached the targeted cell : - -----> total absorbed dose within Nucleus is (Gy) = 0.32122916718422 - -----> total absorbed dose within Cytoplasm is (Gy) = 0.058497592392078 + -----> total absorbed dose within Nucleus is (Gy) = 0.32122858198003 + -----> total absorbed dose within Cytoplasm is (Gy) = 0.058497168531552 -> Event # 8 generated ===> Sorry, the incident alpha particle has missed the targeted cell ! @@ -804,10 +809,13 @@ All Ntuples have been created -> Event # 10 generated ===> The incident alpha particle has reached the targeted cell : - -----> total absorbed dose within Nucleus is (Gy) = 0.30452950463919 - -----> total absorbed dose within Cytoplasm is (Gy) = 0.048417249752158 + -----> total absorbed dose within Nucleus is (Gy) = 0.30452574139331 + -----> total absorbed dose within Cytoplasm is (Gy) = 0.048417545393397 -> Total number of particles detected by the gas detector : 3 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/advanced/microbeam/phantom.dat b/examples/advanced/microbeam/phantom.dat old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/plot.C b/examples/advanced/microbeam/plot.C old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/src/CellParameterisation.cc b/examples/advanced/microbeam/src/CellParameterisation.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/src/DetectorConstruction.cc b/examples/advanced/microbeam/src/DetectorConstruction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/src/EMField.cc b/examples/advanced/microbeam/src/EMField.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/src/EventAction.cc b/examples/advanced/microbeam/src/EventAction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/src/PhysicsList.cc b/examples/advanced/microbeam/src/PhysicsList.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/src/PrimaryGeneratorAction.cc b/examples/advanced/microbeam/src/PrimaryGeneratorAction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/src/RunAction.cc b/examples/advanced/microbeam/src/RunAction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/microbeam/src/SteppingAction.cc b/examples/advanced/microbeam/src/SteppingAction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/microelectronics/CMakeLists.txt b/examples/advanced/microelectronics/CMakeLists.txt index 26e6bd76c0..b736c90f2c 100644 --- a/examples/advanced/microelectronics/CMakeLists.txt +++ b/examples/advanced/microelectronics/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() set(name microelectronics) project(${name}) @@ -27,7 +30,7 @@ include(${Geant4_USE_FILE}) include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) -file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) +file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) #---------------------------------------------------------------------------- # Add the executable, and link it to the Geant4 libraries @@ -42,7 +45,7 @@ target_link_libraries(${name} ${Geant4_LIBRARIES}) # set(MICROELECTRONICS_SCRIPTS microelectronics.mac - microelectronics.in + microelectronics.in vis.mac plot.C ) diff --git a/examples/advanced/microelectronics/History b/examples/advanced/microelectronics/History index 46b4fc506a..56619cdee2 100644 --- a/examples/advanced/microelectronics/History +++ b/examples/advanced/microelectronics/History @@ -7,10 +7,15 @@ Package History file -------------------- +15 November 2020 - S. Guatelli microelectronics-V10-06-01 +- Migration to G4RunManagerFactory + +2 November 2020 - B.Morgan microelectronics-V10-06-00 +- Support same CMake version range as core Geant4 + 30.08.2019 - S. Guatelli - microelectronics-V10-05-00 -G4VIS_USE cleaned. WARNING deleted when executing microelectronic.in. - 10 May 2018 - B. Morgan - microelectronics-V10-04-00 - Include G4Types before use of G4MULTITHREADED. For forward compatibility with move to #defines over -D for G4 preprocessor @@ -22,7 +27,7 @@ 28 October 2016 - G.Folger - microelectronics-V10-02-02 Remove direct use of theParticleIterator, use GetParticleTableIterator(). fix required by clang39 on Linux and MAC - + 4 June 2016 - V.Ivanchenko - microelectronics-V10-02-01 4 June 2016 - V.Ivanchenko - microelectronics-V10-02-00 - Fix msc definition in PhysicsList @@ -41,7 +46,7 @@ 29 October 2014 - L. Garnier from M. Raine - microelectronics-V09-06-04 microelectronics.mac : Change some decorations - microelectronics.cc : + microelectronics.cc : o Replace use of G4UITerminal by G4UIExecutive o Move creation if G4UIExecutive at the beginning o Remove G4UI_USE and G4VIS_USE @@ -58,7 +63,7 @@ remove setting number of threads from macro files 31 October 2013 - L. Pandola - microelectronics-V09-06-01 - Edited CMakeLists.txt to make the test work on + Edited CMakeLists.txt to make the test work on Windows 29 October 2013 - M. Raine - microelectronics-V09-06-00 diff --git a/examples/advanced/microelectronics/microelectronics.cc b/examples/advanced/microelectronics/microelectronics.cc index 2589cf755f..ab728270ec 100644 --- a/examples/advanced/microelectronics/microelectronics.cc +++ b/examples/advanced/microelectronics/microelectronics.cc @@ -29,17 +29,9 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... #include "G4Types.hh" - -#ifdef G4MULTITHREADED - #include "G4MTRunManager.hh" -#else - #include "G4RunManager.hh" -#endif - +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" - #include "G4UIExecutive.hh" - #include "G4VisExecutive.hh" #include "ActionInitialization.hh" #include "DetectorConstruction.hh" @@ -61,13 +53,10 @@ int main(int argc,char** argv) // Construct the default run manager -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; - // runManager->SetNumberOfThreads(2); // Is equal to 2 by default -#else - G4RunManager* runManager = new G4RunManager; -#endif - + auto* runManager = G4RunManagerFactory::CreateRunManager(); + G4int nThreads = 4; + runManager->SetNumberOfThreads(nThreads); + // Set mandatory user initialization classes DetectorConstruction* detector = new DetectorConstruction; runManager->SetUserInitialization(detector); diff --git a/examples/advanced/microelectronics/microelectronics.out b/examples/advanced/microelectronics/microelectronics.out index e3e6ebcb70..6052837f5c 100644 --- a/examples/advanced/microelectronics/microelectronics.out +++ b/examples/advanced/microelectronics/microelectronics.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -29,10 +30,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -78,11 +81,12 @@ Some /vis commands (optionally) take a string to specify colour. ### === PIXE model for e+-: Livermore msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== UrbanMsc : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -96,19 +100,21 @@ eIoni: for e- SubType=2 e-_G4MicroElecElastic: for e- SubType=51 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== MicroElecElasticModel : Emin= 0 eV Emax= 100 MeV e-_G4MicroElecInelastic: for e- SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== MicroElecInelasticModel : Emin= 0 eV Emax= 100 MeV deltaVI Fluo msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -124,14 +130,16 @@ hIoni: for proton SubType=2 p_G4MicroElecInelastic: for proton SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== MicroElecInelasticModel : Emin= 50 keV Emax= 10 GeV deltaVI Fluo DummyModel : Emin= 10 GeV Emax= 10 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -148,9 +156,11 @@ ionIoni: for GenericIon SubType=2 ion_G4MicroElecInelastic: for GenericIon SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== MicroElecInelasticModel : Emin= 50 keV Emax= 10 GeV deltaVI Fluo DummyModel : Emin= 10 GeV Emax= 10 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 Region -- -- appears in world volume This region is in the mass world. @@ -198,19 +208,23 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -##### Create analysis manager 0x2235680 +##### Create analysis manager 0x2589460 Using Root analysis manager -... open Root analysis file : microelectronics.root - done +... create file : microelectronics.root - done +... open analysis file : microelectronics.root - done Run terminated. Run Summary Number of events processed : 10 - User=0.020000s Real=0.017347s Sys=0.000000s -... write Root file : microelectronics.root - done -... close Root file : microelectronics.root - done + User=0.000000s Real=0.005601s Sys=0.000000s +... write file : microelectronics.root - done +... close file : microelectronics.root - done Number and type of particles created outside region "Target" : _______________________ Number and type of particles created in region "Target" : N e- : 130 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. diff --git a/examples/advanced/nanobeam/CMakeLists.txt b/examples/advanced/nanobeam/CMakeLists.txt index 4dec52afce..da0cdd0b2b 100644 --- a/examples/advanced/nanobeam/CMakeLists.txt +++ b/examples/advanced/nanobeam/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(nanobeam) #---------------------------------------------------------------------------- @@ -23,11 +26,11 @@ include(${Geant4_USE_FILE}) if(Geant4_builtin_clhep_FOUND) message(STATUS "G4 Examples: CLHEP external package not found --> nanobeam disabled") return() -endif() +endif() #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) diff --git a/examples/advanced/nanobeam/History b/examples/advanced/nanobeam/History index 13932d74a0..284654c1ce 100644 --- a/examples/advanced/nanobeam/History +++ b/examples/advanced/nanobeam/History @@ -7,6 +7,11 @@ Package History file -------------------- +15 Nov 2020 - S. Guatelli tag nanobeam-V10-06-01 +- Migration to G4RunManagerFactory + +02 Nov 2020 - B.Morgan tag nanobeam-V10-06-00 +- Support same CMake version range as core Geant4 19 Nov 2019 - G. Folger tag nanobeam-V10-05-01 - remove using namespace std from header file TabulatedField3D.hh @@ -97,15 +102,15 @@ - Coding style cleaning 29 May 2013 - tag nanobeam-V09-06-03 -L. Pandola -- Migrate analysis from AIDA (in a singleton class) to the -g4analysis tools. AIDA dependency is removed. Output file is +- Migrate analysis from AIDA (in a singleton class) to the +g4analysis tools. AIDA dependency is removed. Output file is unchanged (still a ROOT file named nanobeam.root) 7 May 2013 - tag nanobeam-V09-06-02 - S. Incerti, B. Morgan - Updated CMakeLists.txt thanks to Ben (example requires external CLHEP) 8 March 2013 - tag nanobeam-V09-06-01 - A. Dotti -- Adding protection in case Geant4 is build with internal CLHEP +- Adding protection in case Geant4 is build with internal CLHEP (example requires external CLHEP) 4 December 2012 - tag nanobeam-V09-06-00 - G. Cosmo @@ -115,10 +120,10 @@ unchanged (still a ROOT file named nanobeam.root) - Fixed compilation warning and corrected CMakeLists.txt 3 November 2012 - tag nanobeam-V09-05-05 - S. Incerti -- Removed shadowing in SteppingAction and TabulatedField3D +- Removed shadowing in SteppingAction and TabulatedField3D 1 November 2012 - tag nanobeam-V09-05-04 - S. Incerti -- Switched to touchables +- Switched to touchables 26 October 2012 - tag nanobeam-V09-05-03 - L. Pandola - Changed CMakeLists.txt to deal with UI and AIDA @@ -132,10 +137,10 @@ unchanged (still a ROOT file named nanobeam.root) 12 October 2012 - tag nanobeam-V09-05-00 - G. Cosmo - Explicit inclusion of units and constants headers. -05 November 2011- tag nanobeam-V09-04-06 - S. Incerti +05 November 2011- tag nanobeam-V09-04-06 - S. Incerti - removed export=root option in HistoManager.cc -03 October 2011- tag nanobeam-V09-04-05 - G. Folger +03 October 2011- tag nanobeam-V09-04-05 - G. Folger - fix compilation warnings from gcc46 in TabulatedField3D.cc 19 August 2011- tag nanobeam-V09-04-04 - S. Incerti @@ -172,11 +177,11 @@ unchanged (still a ROOT file named nanobeam.root) - updated multiple scattering class for e+- and mu 2-March 2009 - tag nanobeam-V09-02-01 - G.Folger -- correct for gcc4.3/slc5 warning +- correct for gcc4.3/slc5 warning 26 February 2009 - tag nanobeam-V09-02-00 - G.Folger - Correct TabulatedField3D.cc to use logical AND (&&) in few if() - + 21 June 2008 - tag nanobeam-V09-01-11 - S. Incerti - several tags to try to resolve conflict with system testing diff --git a/examples/advanced/nanobeam/default.mac b/examples/advanced/nanobeam/default.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/include/DetectorConstruction.hh b/examples/advanced/nanobeam/include/DetectorConstruction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/include/PhysicsList.hh b/examples/advanced/nanobeam/include/PhysicsList.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/include/PrimaryGeneratorAction.hh b/examples/advanced/nanobeam/include/PrimaryGeneratorAction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/include/RunAction.hh b/examples/advanced/nanobeam/include/RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/include/SteppingAction.hh b/examples/advanced/nanobeam/include/SteppingAction.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/include/TabulatedField3D.hh b/examples/advanced/nanobeam/include/TabulatedField3D.hh old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/macros/coef-enge.mac b/examples/advanced/nanobeam/macros/coef-enge.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/macros/coef-map.mac b/examples/advanced/nanobeam/macros/coef-map.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/macros/coef-square.mac b/examples/advanced/nanobeam/macros/coef-square.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/macros/grid-enge.mac b/examples/advanced/nanobeam/macros/grid-enge.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/macros/grid-map.mac b/examples/advanced/nanobeam/macros/grid-map.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/macros/grid-square.mac b/examples/advanced/nanobeam/macros/grid-square.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/macros/image-enge.mac b/examples/advanced/nanobeam/macros/image-enge.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/macros/image-map.mac b/examples/advanced/nanobeam/macros/image-map.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/macros/image-square.mac b/examples/advanced/nanobeam/macros/image-square.mac old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/nanobeam.cc b/examples/advanced/nanobeam/nanobeam.cc old mode 100755 new mode 100644 index 02e4604883..6b5f48e93a --- a/examples/advanced/nanobeam/nanobeam.cc +++ b/examples/advanced/nanobeam/nanobeam.cc @@ -27,12 +27,7 @@ // Nucl.Instrum.Meth.B260:20-27, 2007 #include "G4Types.hh" - -#ifdef G4MULTITHREADED - #include "G4MTRunManager.hh" -#else - #include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" @@ -48,20 +43,15 @@ int main(int argc,char** argv) { // Construct the default run manager -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); + G4int nThreads = 1; + runManager->SetNumberOfThreads(nThreads); // Use only one thread for aberration coefficient calculation ("coef*" macros) // // For high statistics (no aberration coefficient calculation, "image*" & "grid*" macros), // switch to more threads - runManager->SetNumberOfThreads(1); - -#else - G4RunManager* runManager = new G4RunManager; -#endif - // Set mandatory initialization classes DetectorConstruction* detector = new DetectorConstruction; diff --git a/examples/advanced/nanobeam/nanobeam.out b/examples/advanced/nanobeam/nanobeam.out index c5cc084842..1bf149878f 100644 --- a/examples/advanced/nanobeam/nanobeam.out +++ b/examples/advanced/nanobeam/nanobeam.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-04 (30-April-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -16,7 +17,7 @@ ***** Table : Nb of materials = 1 ***** - Material: Vacuum density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Vacuum density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -36,14 +37,13 @@ G2 (T/m) = 16.4947 G3 (T/m) = 9.86677 G4 (T/m) = -6.24449 - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 1e-06 numVar= 6 PhysicsList::SetCuts:CutLength : 1 um G4Material WARNING: duplicate name of material Vacuum ***** Table : Nb of materials = 3 ***** - Material: Vacuum density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Vacuum density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -64,7 +64,7 @@ G4Material WARNING: duplicate name of material Vacuum ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: Vacuum density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Vacuum density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -84,7 +84,6 @@ G4Material WARNING: duplicate name of material Vacuum G2 (T/m) = 16.4953 G3 (T/m) = 9.86726 G4 (T/m) = -6.2448 - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 1e-06 numVar= 6 phot: for gamma SubType=12 BuildTable=0 LambdaPrime table from 200 keV to 100 TeV in 61 bins @@ -103,9 +102,9 @@ conv: for gamma SubType=14 BuildTable=1 BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -123,9 +122,9 @@ eBrem: for e- SubType=3 eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -147,9 +146,9 @@ annihil: for e+, integral:1 SubType=5 BuildTable=0 eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -163,19 +162,19 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -187,9 +186,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -199,7 +198,7 @@ ionIoni: for alpha SubType=2 BraggIon : Emin= 0 eV Emax=7.9452 MeV BetheBloch : Emin=7.9452 MeV Emax= 100 TeV -========= Table of registered couples ============================== +========= Table of registered couples ============================ Index : 0 used in the geometry : Yes Material : Vacuum @@ -208,9 +207,9 @@ Index : 0 used in the geometry : Yes Region(s) which use this couple : DefaultRegionForTheWorld -==================================================================== +================================================================== -##### Create analysis manager 0x14cf3f0 +##### Create analysis manager 0x1c02ac0 Using Root analysis manager Ntuple-1 created Ntuple-2 created @@ -246,7 +245,7 @@ Ntuple-3 created =>IMAGE : X(microns)=11.739796819681 Y(microns)=-1.2386815553063 THETA(mrad)=8.0886256100935 PHI(mrad)=-6.5213432754334 -> Event= 24: X0(mm)= -1.6440171508071 X0(mm) = 0.1811453908911 Z0(m) = -8.87 THETA(mrad)= -0.09956438716731 PHI(mrad)= 0.0025997657493583 E0(MeV)= 3.0000024453136 - =>IMAGE : X(microns)=-277.93813703976 Y(microns)=4.1394119767572 THETA(mrad)=-27.914598183369 PHI(mrad)=5.1888302083521 + =>IMAGE : X(microns)=-277.93345473216 Y(microns)=4.1389707020423 THETA(mrad)=-27.914589558642 PHI(mrad)=5.1888288561074 -> Event= 31: X0(mm)= -0.016022163470015 X0(mm) = 0.041404162571301 Z0(m) = -8.87 THETA(mrad)= 0.028542617532504 PHI(mrad)= 0.088134758705809 E0(MeV)= 3.0000432110726 =>IMAGE : X(microns)=0.1094027977376 Y(microns)=0.73278491257216 THETA(mrad)=1.6453108565386 PHI(mrad)=10.062577768408 @@ -258,10 +257,10 @@ Ntuple-3 created =>IMAGE : X(microns)=0.16317907584152 Y(microns)=0.55650397305418 THETA(mrad)=1.3321705383455 PHI(mrad)=-3.2844916125969 -> Event= 45: X0(mm)= 1.0359873985916 X0(mm) = 1.4585907714292 Z0(m) = -8.87 THETA(mrad)= 0.049847294080646 PHI(mrad)= 0.085519303927924 E0(MeV)= 3.0000424805792 - =>IMAGE : X(microns)=93.212267900392 Y(microns)=39.663681068242 THETA(mrad)=16.573463116366 PHI(mrad)=48.307503421516 + =>IMAGE : X(microns)=93.216485952497 Y(microns)=39.658363369997 THETA(mrad)=16.573475748505 PHI(mrad)=48.307485770058 -> Event= 49: X0(mm)= 0.69762782443828 X0(mm) = -1.6249490563253 Z0(m) = -8.87 THETA(mrad)= 0.040619733867931 PHI(mrad)= -0.076739556760004 E0(MeV)= 2.9999358606204 - =>IMAGE : X(microns)=48.940668495895 Y(microns)=-42.304503052802 THETA(mrad)=11.587426099965 PHI(mrad)=-51.921911885198 + =>IMAGE : X(microns)=48.93779215545 Y(microns)=-42.312570408262 THETA(mrad)=11.587416807211 PHI(mrad)=-51.921938678405 -> Event= 51: X0(mm)= 0.029132094194837 X0(mm) = 0.23781110045416 Z0(m) = -8.87 THETA(mrad)= 0.068763552807069 PHI(mrad)= 0.025225497903624 E0(MeV)= 2.9999801399332 =>IMAGE : X(microns)=2.8236454534197 Y(microns)=2.7442922247997 THETA(mrad)=4.8296688679511 PHI(mrad)=9.0095603631758 @@ -270,7 +269,7 @@ Ntuple-3 created =>IMAGE : X(microns)=8.2845160209151 Y(microns)=3.4543118589059 THETA(mrad)=6.7239668455362 PHI(mrad)=11.919753303181 -> Event= 55: X0(mm)= -0.85375717958006 X0(mm) = 0.3573014582006 Z0(m) = -8.87 THETA(mrad)= -0.074501244846954 PHI(mrad)= 0.039440666297839 E0(MeV)= 2.999966559615 - =>IMAGE : X(microns)=-64.022657044574 Y(microns)=6.1167393046648 THETA(mrad)=-15.804350835721 PHI(mrad)=13.702920781475 + =>IMAGE : X(microns)=-64.025187461689 Y(microns)=6.1155711944451 THETA(mrad)=-15.804358305202 PHI(mrad)=13.702917585895 -> Event= 56: X0(mm)= 0.1454709674432 X0(mm) = -0.011799618926587 Z0(m) = -8.87 THETA(mrad)= -0.03021980519692 PHI(mrad)= 0.027948785176419 E0(MeV)= 2.9999781445788 =>IMAGE : X(microns)=2.2280357803426 Y(microns)=-0.065990321511344 THETA(mrad)=-0.10470310153243 PHI(mrad)=2.5149549454001 @@ -309,7 +308,7 @@ Ntuple-3 created =>IMAGE : X(microns)=0.50775463051147 Y(microns)=0.14714703947499 THETA(mrad)=1.1094803619608 PHI(mrad)=-5.7501242243973 -> Event= 85: X0(mm)= 1.0674724333131 X0(mm) = -1.0663214971145 Z0(m) = -8.87 THETA(mrad)= 0.063205803646676 PHI(mrad)= -0.055370508485 E0(MeV)= 3.000051629789 - =>IMAGE : X(microns)=97.274009939425 Y(microns)=-23.478946376012 THETA(mrad)=17.851751504662 PHI(mrad)=-34.581636579734 + =>IMAGE : X(microns)=97.290844140945 Y(microns)=-23.472399708891 THETA(mrad)=17.851795504956 PHI(mrad)=-34.58162314867 -> Event= 86: X0(mm)= -0.19481916629754 X0(mm) = 0.95206247986366 Z0(m) = -8.87 THETA(mrad)= -0.0050314491063534 PHI(mrad)= 0.088572692400845 E0(MeV)= 2.9999719319194 =>IMAGE : X(microns)=-5.6749369137073 Y(microns)=16.635361610945 THETA(mrad)=-2.8117399104848 PHI(mrad)=34.820400204571 diff --git a/examples/advanced/nanobeam/plot.C b/examples/advanced/nanobeam/plot.C old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/src/DetectorConstruction.cc b/examples/advanced/nanobeam/src/DetectorConstruction.cc old mode 100755 new mode 100644 index f035c53cff..1579d49cc4 --- a/examples/advanced/nanobeam/src/DetectorConstruction.cc +++ b/examples/advanced/nanobeam/src/DetectorConstruction.cc @@ -159,7 +159,7 @@ G4VPhysicalVolume* DetectorConstruction::ConstructVolumes() G4double x_grid=5.0*mm; G4double y_grid=5.0*mm; - G4double grid_Zpos=(250+200)*mm; // 250+10 mm for object size of 50µm diam + G4double grid_Zpos=(250+200)*mm; // 250+10 mm for object size of 50µm diam //G4double thickness_grid=10*micrometer; G4double thickness_grid=100*micrometer; diff --git a/examples/advanced/nanobeam/src/PhysicsList.cc b/examples/advanced/nanobeam/src/PhysicsList.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/src/PrimaryGeneratorAction.cc b/examples/advanced/nanobeam/src/PrimaryGeneratorAction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/src/RunAction.cc b/examples/advanced/nanobeam/src/RunAction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/src/SteppingAction.cc b/examples/advanced/nanobeam/src/SteppingAction.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/nanobeam/src/TabulatedField3D.cc b/examples/advanced/nanobeam/src/TabulatedField3D.cc old mode 100755 new mode 100644 diff --git a/examples/advanced/purging_magnet/CMakeLists.txt b/examples/advanced/purging_magnet/CMakeLists.txt index edc5978f15..c867ff6463 100644 --- a/examples/advanced/purging_magnet/CMakeLists.txt +++ b/examples/advanced/purging_magnet/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(purging_magnet) #---------------------------------------------------------------------------- @@ -35,7 +38,7 @@ endif() #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) diff --git a/examples/advanced/purging_magnet/History b/examples/advanced/purging_magnet/History index c6f58c07fa..3a2438029d 100644 --- a/examples/advanced/purging_magnet/History +++ b/examples/advanced/purging_magnet/History @@ -8,6 +8,12 @@ Category History file --------------------- +02.11.2020 B.Morgan (purmag-V10-06-01) +- Support same CMake version range as core Geant4 + +13.07.2020 G. Cosmo (purmag-V10-06-00) +- Corrected README. No functional changes. + 20.11.2019 G. Folger (purmag-V10-05-00) - remove using namespace std from header file PurgMagTabulatedField3D.hh and correct follow-on problems. @@ -16,10 +22,10 @@ - Switch back to csv output format. 29.10.2018 - L. Pandola (purmag-V10-04-01) -- Remove the useless buffer singleton PurgMagAnalysisManager class, - and call directly G4AnalysisManager tools. Clean-up in the SteppingAction. +- Remove the useless buffer singleton PurgMagAnalysisManager class, + and call directly G4AnalysisManager tools. Clean-up in the SteppingAction. Use root instead of csv as output format. - + 10.05.2018 - B. Morgan (purmag-V10-04-00) - Include G4Types before use of G4MULTITHREADED. For forward compatibility with move to #defines over -D for G4 preprocessor @@ -35,7 +41,7 @@ - Actual MT migration: use G4MTRunManager, if applicable 15.10.2014 - Luciano Pandola (purmag-V10-00-01) -- Added ConstructSDandField() and registered magnetic field in a +- Added ConstructSDandField() and registered magnetic field in a G4Cache - Added a protection in the case the input field file is not found - Registered RunAction in master and workers @@ -43,7 +49,7 @@ 14.10.2014 - Luciano Pandola (purmag-V10-00-00) - Added ActionInitialization class (first step for MT migration) - Add const qualifiers for methods of DetectorConstruction -- Changed signature of SteppingAction, to get a const pointer to +- Changed signature of SteppingAction, to get a const pointer to geometry 30.07.2013 - Andrea Dotti (purmag-V09-06-02) @@ -54,8 +60,8 @@ analysis module. 17.04.2013 - Luciano Pandola (purmag-V09-06-00) -- Migrate analysis from AIDA to g4analysis (remove the - external AIDA dependency). Some clean-up in other +- Migrate analysis from AIDA to g4analysis (remove the + external AIDA dependency). Some clean-up in other classe (RunAction, EventAction, StepAction) 06.11.2012 - Luciano Pandola (purmag-V09-05-03) @@ -107,10 +113,10 @@ 27.05.2004 . S. Larsson purtag-V06-01-01 Migration to PI - Setup in README updated - Tagged + Tagged 25.05.2004 - J. Apostolakis purtag-V06-01-00 - Tagged + Tagged 24.05.2004 - J. Apostolakis Modified README file diff --git a/examples/advanced/purging_magnet/README b/examples/advanced/purging_magnet/README index fba07b7cf2..5f613270a6 100644 --- a/examples/advanced/purging_magnet/README +++ b/examples/advanced/purging_magnet/README @@ -32,19 +32,13 @@ commenting/uncommenting the appropriate #includes in PurgMagAnalysisManager.hh) 1. Setting up the environment variables --------------------------------------- --example enviroment with the compiler 3.2.3 - -a standard Geant4 example GNUmakefile is provided - -setup with: -compiler = gcc-3.2.3 -G4SYSTEM = linux-g++ The following environment variables need to be set: G4LEDATA: points to low energy data base -The required data-file for the field map can be downloaded from: - http://cern.ch/geant4/source/source/PurgMag3D.TABLE.gz +The required data-file for the detailed field map can be downloaded from: + http://cern.ch/geant4-data/datasets/PurgMag3D.TABLE.gz 2. How to run the example @@ -53,7 +47,6 @@ The required data-file for the field map can be downloaded from: - Run the "PurgMag" executable. - File PurgMag.TABLE needs to be available in the current directory in order to run correctly. - For visualisation use vis.mac. - Default visualization is with OpenGL - Interactive or batch modes possible. Default: Interactive mode. @@ -72,9 +65,9 @@ idle> exit 3)Ntuple with position, energy and momentum for positrons (not needed in this example, will be used in further development) -A default vizualisation macro (vis.mac) is pre-loaded before interactive runs. -Executing it - osmachine.3% $G4WORKDIR/bin/Linux-g++/PurgMag +A default visualisation macro (vis.mac) is pre-loaded before interactive runs. +Executing it from the build directory: + $ ./PurgMag runs vis.mac before giving you an interactive prompt. diff --git a/examples/advanced/purging_magnet/purging_magnet.out b/examples/advanced/purging_magnet/purging_magnet.out index e442949faa..59e112eb99 100644 --- a/examples/advanced/purging_magnet/purging_magnet.out +++ b/examples/advanced/purging_magnet/purging_magnet.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +26,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -108,7 +110,7 @@ Some /vis commands (optionally) take a string to specify colour. ElmMassFraction: 30.00 % ElmAbundance 27.29 % - Material: vacuum density: 0.010 kg/m3 RadL: 36.786 km Nucl.Int.Length: 85.486 km + Material: vacuum density: 0.010 mg/cm3 RadL: 36.786 km Nucl.Int.Length: 85.486 km Imean: 85.703 eV temperature: 273.15 K pressure: 0.02 atm ---> Element: Nitrogen (N) Z = 7.0 N = 14 A = 14.010 g/mole @@ -152,7 +154,7 @@ Some /vis commands (optionally) take a string to specify colour. ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: LaboratoryVacuum density: 0.000 kg/m3 RadL: 28329263.098 km Nucl.Int.Length: 66178552.901 km + Material: LaboratoryVacuum density: 0.000 mg/cm3 RadL: 28329262.634 km Nucl.Int.Length: 66178558.148 km Imean: 85.664 eV temperature: 273.15 K pressure: 0.00 atm ---> Element: Nitrogen (N) Z = 7.0 N = 14 A = 14.010 g/mole @@ -254,9 +256,9 @@ eIoni: for e- SubType=2 MollerBhabha : Emin= 0 eV Emax= 100 TeV msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eBrem: for e+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -274,23 +276,23 @@ eIoni: for e+ SubType=2 MollerBhabha : Emin= 0 eV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ========= Table of registered couples ============================ @@ -304,7 +306,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Iron Range cuts : gamma 1 um e- 1 um e+ 1 um proton 1 um - Energy thresholds : gamma 990 eV e- 5.80634 keV e+ 5.68259 keV proton 100 eV + Energy thresholds : gamma 990 eV e- 5.89219 keV e+ 5.76551 keV proton 100 eV Region(s) which use this couple : DefaultRegionForTheWorld @@ -327,7 +329,10 @@ Total number of event = 5000 --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 577094415, 1114816300 + Current couple of seeds = 1450407308, 1749470055 ---------------------------------------- +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/advanced/radioprotection/CMakeLists.txt b/examples/advanced/radioprotection/CMakeLists.txt index f271bad832..4d03ae2d50 100644 --- a/examples/advanced/radioprotection/CMakeLists.txt +++ b/examples/advanced/radioprotection/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(radioprotection) #---------------------------------------------------------------------------- @@ -8,17 +11,17 @@ project(radioprotection) # You can set WITH_GEANT4_VIS to OFF via the command line or ccmake/cmake-gui # to build a batch mode only executable # -option(WITH_GEANT4_UIVIS "Build example with Geant4 UI and Vis drivers" ON) -if(WITH_GEANT4_UIVIS) - find_package(Geant4 REQUIRED ui_all vis_all) -else() - find_package(Geant4 REQUIRED) -endif() +option(WITH_GEANT4_UIVIS "Build example with Geant4 UI and Vis drivers" ON) +if(WITH_GEANT4_UIVIS) + find_package(Geant4 REQUIRED ui_all vis_all) +else() + find_package(Geant4 REQUIRED) +endif() #---------------------------------------------------------------------------- # Setup Geant4 include directories and compile definitions # include(${Geant4_USE_FILE}) -# Setup of ROOT ANALYSIS : optional. +# Setup of ROOT ANALYSIS : optional. option(WITH_ANALYSIS_USE "Build example with analysis objects" OFF) if(WITH_ANALYSIS_USE) add_definitions(-DANALYSIS_USE) @@ -28,7 +31,7 @@ endif() #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR} ) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) @@ -45,7 +48,7 @@ target_link_libraries(radioprotection ${Geant4_LIBRARIES}) # relies on these scripts being in the current working directory. # set(radioprotection_SCRIPTS - vis.mac physics.mac primary.mac run.mac MergeFiles LoadPlotNtuple.C + vis.mac physics.mac primary.mac run.mac geometry.mac MergeFiles LoadPlotNtuple.C ) foreach(_script ${radioprotection_SCRIPTS}) diff --git a/examples/advanced/radioprotection/History b/examples/advanced/radioprotection/History index dee37d4868..a9fe524c91 100644 --- a/examples/advanced/radioprotection/History +++ b/examples/advanced/radioprotection/History @@ -7,6 +7,37 @@ Category History file --------------------- +17.11.2020 - S. Guatelli tag radioprotection-V10-06-02 + Migration to G4RunManagerFactory + +02.11.2020 - F. Romano and J. Magini tag radioprotection-V10-06-01 + - radioprotection.cc : + added new parameter to DetectorConstruction constructor + added instance of DetectorManager + - DetectorConstruction.hh : + defined private methods to construct a specific type of detector ("Silicon", "Diamond", and "MicroDiamond") + added detectorType private string to store the name of the one in use + added a variable to the constructor + added declaration for DetectorMessenger class + - DetectorConstruction.cc : + modifed the constructor to store the detector type + rewrote Construct so that it calls the specific method of the selected detector type + moved the previous diamond detector geometry to ConstructDiamondDetector, and added new possible geometries (silicon and microdiamond) from scratch via the other two methods + - DetectorMessenger.hh : + created the file in order to switch detector type + - DetectorMessenger.cc : + created the file in order to switch detector type + - geometry.mac : + create the macro in order to select a specific detector at runtime (by default, all options are commented out) + - vis.mac : + added a line to execute geometry.mac before launching the GUI (at which point it wouldn't be possible to change the geometry anymore) + - run.mac: + added a line to execute geometry.mac + - CMakeLists.txt : + added geometry.mac to the list of files to be copied to the build directory + +02.11.2020 - B.Morgan tag radioprotection-V10-06-00 + Support same CMake version range as core Geant4 30.10.2019 - S. Guatelli tag radioprotection-V10-05-01 using namespace std removed @@ -33,10 +64,10 @@ 08.11.2013 - S. Guatelli. tag radioprotection-V09-06-03 MT mode + analysis working -20.09.2013 - S. Guatelli. tag radioprotection-V09-06-02 +20.09.2013 - S. Guatelli. tag radioprotection-V09-06-02 REMSIM example dismissed as it is out of date. - Replaced with characterisation of novel diamond detector for - radiation protection, using microdosimetric approach. + Replaced with characterisation of novel diamond detector for + radiation protection, using microdosimetric approach. 04.02.2013 - G.Folger; tag radioprotection-V09-06-01 RemSimPhysicsList.cc: Update for renamed physics builders @@ -64,7 +95,7 @@ G4Analysis component subtitutes AIDA/PI analysis tag radioprotection-V09-04-01 -21.09.2011 S. Guatelli. Update of the physics list, +21.09.2011 S. Guatelli. Update of the physics list, tag radioprotection-V09-04-00 18.11.2010 J.Allison, tag radioprotection-V09-03-03 @@ -74,13 +105,13 @@ Fix AIDA file option 06.06.2010 J. Perl, tag radioprotection-V09-03-01 - Remove unused variable in EventAction + Remove unused variable in EventAction 03.06.2010 J. Perl, tag radioprotection-V09-03-00 - Update vis usage + Update vis usage 16.11.2009 S. Guatelli, tag radioprotection-V09-02-04 - analysis output format is changed to xml + analysis output format is changed to xml 12.11.2009 S. Guatelli, tag radioprotection-V09-02-01 Physics List updated @@ -102,12 +133,12 @@ 31th May 2006 Susanna Guatelli(radioprotection-V08-00-01) - Added histograms -- Added comments +- Added comments 15th March 2006 Susanna Guatelli(radioprotection-V08-00-00) - Pion absorption at rest introduced in RemSimHadronicBinary.cc - Added more histograms -- Primary particle generator can handle spectra +- Primary particle generator can handle spectra 7th December 2005 Susanna Guatelli (radioprotection-V07-01-04) - Macros updated @@ -123,7 +154,7 @@ - Ions introduced 23th November 2005 Susanna Guatelli (radioprotection-V07-01-01) -- Deleted warning due to standard C++ libraries concerning reading +- Deleted warning due to standard C++ libraries concerning reading external files - Added Eta and EtaPrime as particles @@ -143,8 +174,8 @@ external files 11.2004 - Option to define the format of the output file hbook or xml -11.2004 - Add histograms - +11.2004 - Add histograms + 05.2004 - Design iteration with Decorator Design pattern 01.2004 - S.Guatelli diff --git a/examples/advanced/radioprotection/README b/examples/advanced/radioprotection/README index a72548be35..bd53d2b5db 100644 --- a/examples/advanced/radioprotection/README +++ b/examples/advanced/radioprotection/README @@ -1,4 +1,3 @@ - ========================================================= Geant4 - Radioprotection example ========================================================= @@ -7,33 +6,43 @@ --------------------- -The radioprotection example is developed and mantained by Susanna Guatelli and Jeremy Davis, -Centre For Medical Radiation Physics (CMRP), University of Wollongong, NSW, Australia. +The radioprotection example is developed and mantained by Susanna Guatelli (Centre For Medical Radiation Physics (CMRP), University of Wollongong, NSW, Australia) and Francesco Romano (INFN - Sezione di Catania, Catania, Italy) ------------------------------------------------------------------------ Contact: susanna@uow.edu.au - jad028@uowmail.edu.au + francesco.romano@ct.infn.it geant4-advanced-examples@cern.ch ------------------------------------------------------------------------ -List of authors: -S. Guatelli and J. Davis. +List of external collaborators: +J. Magini and G. Parisi - University of Surrey, United Kingdom +J. Davis. - University of Wollongong, NSW, Australia ----------------------------------------------------------------- ----> Introduction. -Radioprotection example models a simplified diamond microdosimeter, developed by -Prof. Anatoly Rosenfeld and his team at the Centre For Medical Radiation Physics, -CMRP, University of Wollongong, NSW, Australia. The design of the device is documented in -J. Davis, et al., "Characterisation of a novel diamond-based microdosimeter prototype +Radioprotection example models different detectors for microdosimetry in space applications. The example lets the user +choose between the models of a simplified diamond (1), a micro-diamond (2) and a silicon microdosimeter (3): + +1) A semplified diamond microdosimeter is based on the detector developed by Prof. Anatoly Rosenfeld and his team at the Centre For Medical Radiation Physics, CMRP, University of Wollongong, NSW, Australia. The design of the device is documented in J. Davis, et al., "Characterisation of a novel diamond-based microdosimeter prototype for radioprotection applications in space environments",IEEE Transactions on Nuclear Science, Vol. 59, pp. 3110-3116, 2012. -The diamond microdosimeter is set in a vacuum. An isotropic field of Galactic Cosmic Rays (GCR) protons -is incident on the device. -The energy deposition is calculated in one of the sensitive detectors. +2) The microdiamond detector is based on the detectors developed by the Research Group of The University of Rome "Tor Vergata". The design and performances of the detector are documented in C. Verona et al., "Spectroscopic properties and radiation damage investigation of a diamond based Schottky diode for ion-beam therapy microdosimetry", Journal of Applied Physics, vol. 118, 2015, and in C. Verona et al., "Toward the use of single crystal diamond based detector for ion-beam therapy microdosimetry", Radiation Measurements, vol. 110, 2018. + + +3) The silicon microdosimeter is based on the detector, developed by the Centre For Medical Radiation physics, +University of Wollongong, documented in D. Bolst et al “Validation of Geant4 for silicon microdosimetry +in heavy ion therapyâ€, 2020 Phys. Med. Biol. 65 045014. + + +All the microdosimeters are set in vacuum and it is possible to select among the avilable detectors +via a macro command (/geometrySetup/selectDetector "..."), which is included in the "geometry.mac" macro. +This macro is, in turn, called in both the vis.mac and run.mac macro files. +An isotropic field of Galactic Cosmic Rays (GCR) protons is incident on the device. +The energy deposition is calculated in the sensitive detectors. In particular in this example it is shown how to: - model a realistic isotropic field of GCRs by means of the General Particle Source @@ -116,8 +125,9 @@ For any problem or question please contact Susanna Guatelli, susanna@uow.edu.au ------------------------------------------------------------------------------ -----> Future developments -1) The code will be refined. -2) A silicon microdosimeter will be modelled as well in the next future. +1) The code will be refined and analysis improved +2) scripts for micorodosimetric spectra analysis will be implemented +3) Different models of detectors will be also included diff --git a/examples/advanced/radioprotection/geometry.mac b/examples/advanced/radioprotection/geometry.mac new file mode 100644 index 0000000000..7339b13e31 --- /dev/null +++ b/examples/advanced/radioprotection/geometry.mac @@ -0,0 +1,6 @@ +# Uncomment a line to select a specific detector type +# Leave both commented to use the default one + +#/geometrySetup/selectDetector Diamond +#/geometrySetup/selectDetector MicroDiamond +#/geometrySetup/selectDetector Silicon \ No newline at end of file diff --git a/examples/advanced/radioprotection/include/ActionInitialization.hh b/examples/advanced/radioprotection/include/ActionInitialization.hh index dab0f2dd33..22e357b312 100644 --- a/examples/advanced/radioprotection/include/ActionInitialization.hh +++ b/examples/advanced/radioprotection/include/ActionInitialization.hh @@ -23,9 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au -// +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it #ifndef ActionInitialization_h #define ActionInitialization_h 1 diff --git a/examples/advanced/radioprotection/include/AnalysisManager.hh b/examples/advanced/radioprotection/include/AnalysisManager.hh index 75256b853f..a993ff3d8b 100644 --- a/examples/advanced/radioprotection/include/AnalysisManager.hh +++ b/examples/advanced/radioprotection/include/AnalysisManager.hh @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // diff --git a/examples/advanced/radioprotection/include/DetectorConstruction.hh b/examples/advanced/radioprotection/include/DetectorConstruction.hh index c970c7db1c..1b136e76d0 100644 --- a/examples/advanced/radioprotection/include/DetectorConstruction.hh +++ b/examples/advanced/radioprotection/include/DetectorConstruction.hh @@ -23,9 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au -// +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it + +// Modified by Jacopo Magini: j.magini@surrey.ac.uk #ifndef DetectorConstruction_H #define DetectorConstruction_H 1 @@ -40,7 +41,7 @@ class G4LogicalVolume; class DetectorConstruction : public G4VUserDetectorConstruction { public: - DetectorConstruction(AnalysisManager* analysis); + DetectorConstruction(AnalysisManager* analysis, G4String detector); ~DetectorConstruction(); G4VPhysicalVolume* Construct(); @@ -48,6 +49,13 @@ public: void ConstructSDandField(); private: - AnalysisManager* analysis; + AnalysisManager* analysis; + + G4String detectorType; + + // Methods called by Construct() depending on the chosen setup + G4VPhysicalVolume* ConstructDiamondDetector(); + G4VPhysicalVolume* ConstructMicroDiamondDetector(); + G4VPhysicalVolume* ConstructSiliconDetector(); }; #endif diff --git a/examples/advanced/radioprotection/include/DetectorMessenger.hh b/examples/advanced/radioprotection/include/DetectorMessenger.hh new file mode 100644 index 0000000000..ecad06f028 --- /dev/null +++ b/examples/advanced/radioprotection/include/DetectorMessenger.hh @@ -0,0 +1,60 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it +// +// Adapted from Hadrontherapy example +// by Jacopo Magini: j.magini@surrey.ac.uk + +#ifndef DetectorMessenger_h +#define DetectorMessenger_h 1 + +#include "globals.hh" +#include "G4UImessenger.hh" +#include "G4String.hh" + +#include "AnalysisManager.hh" + +class G4UIdirectory; +class G4UIcmdWithADoubleAndUnit; +class G4UIcmdWithAString; + +class DetectorMessenger: public G4UImessenger +{ +public: + DetectorMessenger(AnalysisManager* analysis); + ~DetectorMessenger(); + + void SetNewValue(G4UIcommand*, G4String); + +private: + G4UIdirectory *changeTheGeometryDir; ///> UI directory for the geometry control + G4UIcmdWithAString *changeTheDetectorCmd; ///> Select the detector type + + AnalysisManager* analysis; +}; +#endif + diff --git a/examples/advanced/radioprotection/include/PhysicsList.hh b/examples/advanced/radioprotection/include/PhysicsList.hh index dde65b8e9a..5e0e201cb5 100644 --- a/examples/advanced/radioprotection/include/PhysicsList.hh +++ b/examples/advanced/radioprotection/include/PhysicsList.hh @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // // Code based on the hadrontherapy advanced example diff --git a/examples/advanced/radioprotection/include/PhysicsListMessenger.hh b/examples/advanced/radioprotection/include/PhysicsListMessenger.hh index 2977b0b2b0..482c47595a 100644 --- a/examples/advanced/radioprotection/include/PhysicsListMessenger.hh +++ b/examples/advanced/radioprotection/include/PhysicsListMessenger.hh @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // // Code based on the hadrontherapy advanced example diff --git a/examples/advanced/radioprotection/include/PrimaryGeneratorAction.hh b/examples/advanced/radioprotection/include/PrimaryGeneratorAction.hh index 113ef49af7..228ae29b90 100644 --- a/examples/advanced/radioprotection/include/PrimaryGeneratorAction.hh +++ b/examples/advanced/radioprotection/include/PrimaryGeneratorAction.hh @@ -23,9 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au -// +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it #ifndef PrimaryGeneratorAction_hh diff --git a/examples/advanced/radioprotection/include/RunAction.hh b/examples/advanced/radioprotection/include/RunAction.hh index f644302861..c3286fb2a4 100644 --- a/examples/advanced/radioprotection/include/RunAction.hh +++ b/examples/advanced/radioprotection/include/RunAction.hh @@ -23,9 +23,9 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: S. Guatelli and J. Davis, CMRP, UOW +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // -// #ifndef RunAction_h #define RunAction_h 1 diff --git a/examples/advanced/radioprotection/include/SensitiveDetector.hh b/examples/advanced/radioprotection/include/SensitiveDetector.hh index df3438725f..fb475b9d74 100644 --- a/examples/advanced/radioprotection/include/SensitiveDetector.hh +++ b/examples/advanced/radioprotection/include/SensitiveDetector.hh @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // // Code based on basic example B2 diff --git a/examples/advanced/radioprotection/include/SensitiveDetectorHit.hh b/examples/advanced/radioprotection/include/SensitiveDetectorHit.hh index ca57e00849..75395c1cde 100644 --- a/examples/advanced/radioprotection/include/SensitiveDetectorHit.hh +++ b/examples/advanced/radioprotection/include/SensitiveDetectorHit.hh @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // // Code based on the basic example B02 diff --git a/examples/advanced/radioprotection/include/SteppingAction.hh b/examples/advanced/radioprotection/include/SteppingAction.hh index fd99d87bd5..ae67cbcdf9 100644 --- a/examples/advanced/radioprotection/include/SteppingAction.hh +++ b/examples/advanced/radioprotection/include/SteppingAction.hh @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // #ifndef SteppingAction_h diff --git a/examples/advanced/radioprotection/radioprotection.cc b/examples/advanced/radioprotection/radioprotection.cc index a11b35f007..15fd025b12 100644 --- a/examples/advanced/radioprotection/radioprotection.cc +++ b/examples/advanced/radioprotection/radioprotection.cc @@ -24,34 +24,36 @@ // ******************************************************************** // // radioprotection.cc -// Authors: Susanna Guatelli and Jeremy Davis -// susanna@uow.edu.au, jad028@uow.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it #include "G4RunManager.hh" #include "DetectorConstruction.hh" #include "PhysicsList.hh" #include "G4UImanager.hh" #include "G4VisExecutive.hh" -#include "G4MTRunManager.hh" +#include "G4RunManagerFactory.hh" #include "AnalysisManager.hh" #include "ActionInitialization.hh" #include "AnalysisManager.hh" #include "G4UIExecutive.hh" +#include "DetectorMessenger.hh" int main(int argc, char** argv) { -#ifdef G4MULTITHREADED - G4MTRunManager* pRunManager = new G4MTRunManager; - pRunManager->SetNumberOfThreads(4); // Is equal to 2 by default -#else - G4RunManager* pRunManager = new G4RunManager; -#endif + auto* pRunManager = G4RunManagerFactory::CreateRunManager(); + G4int nThreads = 4; + pRunManager->SetNumberOfThreads(nThreads); AnalysisManager* analysis = new AnalysisManager(); - DetectorConstruction* detector = new DetectorConstruction(analysis); + // Construct geometry + + G4String defaultDetector = "Diamond"; + + DetectorConstruction* detector = new DetectorConstruction(analysis, defaultDetector); pRunManager -> SetUserInitialization(detector); @@ -64,6 +66,10 @@ int main(int argc, char** argv) ActionInitialization* actions = new ActionInitialization(analysis); pRunManager->SetUserInitialization(actions); + // Geometry messenger + + DetectorMessenger* detMess = new DetectorMessenger(analysis); + G4VisManager* visManager = new G4VisExecutive(); visManager->Initialize(); @@ -92,6 +98,7 @@ int main(int argc, char** argv) delete visManager; delete analysis; delete pRunManager; + delete detMess; return 0; } diff --git a/examples/advanced/radioprotection/radioprotection.out b/examples/advanced/radioprotection/radioprotection.out index 91231545fc..5718e1203c 100644 --- a/examples/advanced/radioprotection/radioprotection.out +++ b/examples/advanced/radioprotection/radioprotection.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +27,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -119,10 +122,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -145,7 +149,7 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 @@ -154,10 +158,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -179,7 +184,7 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -192,9 +197,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -209,7 +214,7 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for proton SubType=4 @@ -217,7 +222,7 @@ hPairProd: for proton SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -230,9 +235,9 @@ nuclearStopping: for proton SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -261,9 +266,9 @@ Use Bearden atomic level energies 0 ====================================================================== msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -279,9 +284,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -296,7 +301,7 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for anti_proton SubType=4 @@ -304,7 +309,7 @@ hPairProd: for anti_proton SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -313,9 +318,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -330,7 +335,7 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for kaon+ SubType=4 @@ -338,7 +343,7 @@ hPairProd: for kaon+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -347,9 +352,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -364,7 +369,7 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for kaon- SubType=4 @@ -372,7 +377,7 @@ hPairProd: for kaon- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -381,9 +386,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -399,7 +404,7 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied muPairProd: for mu+ SubType=4 @@ -407,7 +412,7 @@ muPairProd: for mu+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -416,9 +421,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -434,7 +439,7 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied muPairProd: for mu- SubType=4 @@ -442,7 +447,7 @@ muPairProd: for mu- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -457,14 +462,27 @@ NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use / NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + UseOnlyPhotoEvaporation ? 0 + SkipMissingIsotopes ? 0 + NeglectDoppler ? 0 + DoNotAdjustFinalState ? 0 + ProduceFissionFragments ? 0 + UseWendtFissionModel ? 0 + UseNRESP71Model ? 0 +======================================================= + @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -479,7 +497,7 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for pi+ SubType=4 @@ -487,7 +505,7 @@ hPairProd: for pi+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -496,9 +514,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -513,7 +531,7 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for pi- SubType=4 @@ -521,7 +539,7 @@ hPairProd: for pi- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -575,9 +593,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_He3Inelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV --------------------------------------------------- @@ -589,9 +605,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_alphaInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV --------------------------------------------------- @@ -603,11 +617,21 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_deuteronInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -617,9 +641,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_neutronInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV --------------------------------------------------- @@ -631,9 +653,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_protonInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV --------------------------------------------------- @@ -645,9 +665,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_tritonInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV --------------------------------------------------- @@ -696,10 +714,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -778,10 +795,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -820,7 +836,6 @@ Store e- internal conversion data 1 Electron internal conversion ID 0 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -866,5 +881,8 @@ G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 start. Number of events = 1000 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/advanced/radioprotection/run.mac b/examples/advanced/radioprotection/run.mac index aa9f4d5ef4..fb146b915c 100644 --- a/examples/advanced/radioprotection/run.mac +++ b/examples/advanced/radioprotection/run.mac @@ -1,3 +1,4 @@ +/control/execute geometry.mac #control the physics /control/execute physics.mac #/tracking/verbose 1 diff --git a/examples/advanced/radioprotection/src/ActionInitialization.cc b/examples/advanced/radioprotection/src/ActionInitialization.cc index de3fc9ffba..c9ea2463a7 100644 --- a/examples/advanced/radioprotection/src/ActionInitialization.cc +++ b/examples/advanced/radioprotection/src/ActionInitialization.cc @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // #include "ActionInitialization.hh" diff --git a/examples/advanced/radioprotection/src/AnalysisManager.cc b/examples/advanced/radioprotection/src/AnalysisManager.cc index 7178e04708..f8f3762c8e 100644 --- a/examples/advanced/radioprotection/src/AnalysisManager.cc +++ b/examples/advanced/radioprotection/src/AnalysisManager.cc @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // #include diff --git a/examples/advanced/radioprotection/src/DetectorConstruction.cc b/examples/advanced/radioprotection/src/DetectorConstruction.cc index 72fefe61f2..e05e523b8b 100644 --- a/examples/advanced/radioprotection/src/DetectorConstruction.cc +++ b/examples/advanced/radioprotection/src/DetectorConstruction.cc @@ -23,9 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au -// +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it + +// Modified by Jacopo Magini: j.magini@surrey.ac.uk #include "DetectorConstruction.hh" #include "globals.hh" @@ -50,9 +51,13 @@ #include "G4GeometryManager.hh" #include "G4SystemOfUnits.hh" -DetectorConstruction::DetectorConstruction(AnalysisManager* analysis_manager) +#include "G4NistManager.hh" + +DetectorConstruction::DetectorConstruction(AnalysisManager* analysis_manager, G4String detector) { -analysis = analysis_manager; + analysis = analysis_manager; + + detectorType = detector; } DetectorConstruction::~DetectorConstruction(){ @@ -60,6 +65,24 @@ DetectorConstruction::~DetectorConstruction(){ } G4VPhysicalVolume* DetectorConstruction::Construct() +{ + + if( detectorType == "Diamond" ) return ConstructDiamondDetector(); + + else if( detectorType == "MicroDiamond" ) return ConstructMicroDiamondDetector(); + + else if( detectorType == "Silicon" ) return ConstructSiliconDetector(); + + else + { + G4cout << "ERROR: " << detectorType << " is not an allowed detector type. "; + G4cout << "Did you change some code in radioprotection.cc and/or DetectorMessenger.cc ?" << G4endl; + + return 0; + } +} + +G4VPhysicalVolume* DetectorConstruction::ConstructDiamondDetector() { //Define each individual element @@ -325,6 +348,321 @@ return physical_world; } +G4VPhysicalVolume* DetectorConstruction::ConstructMicroDiamondDetector() +{ + //Define each individual element + //Define Nitrogen + G4double A = 14.01 * g/mole; + G4double Z = 7; + G4Element* elN = new G4Element ("Nitrogen", "N", Z, A); + + //Define Oxygen + A = 16.0 * g/mole; + Z = 8; + G4Element* elO = new G4Element ("Oxygen", "O", Z, A); + + //Define Boron + A = 10.8 * g/mole; + Z = 5; + G4Element* elB = new G4Element ("Boron", "B", Z, A); + + //Define Carbon + A = 12.01 * g/mole; + Z = 6; + G4Element* elC = new G4Element ("Carbon", "C", Z, A); + + //Define Air + G4Material* Air = new G4Material("Air", 1.29*mg/cm3, 2); + Air -> AddElement(elN, 70*perCent); + Air -> AddElement(elO, 30*perCent); + + //Define diamond + A = 12.01 * g/mole; + Z = 6; + G4Material* diamond = new G4Material("diamond", Z, A, 3.515*g/cm3); + + //Define p-type diamond (boron doped diamond) + G4Material* p_diamond = new G4Material("p_diamond", 3.514*g/cm3, 2); + // Boron concentration used is 1e20 cm-3, considering the diamond density and a Boron atomic weight of 10.811u + p_diamond -> AddElement(elC, 99.94887*perCent); + p_diamond -> AddElement(elB, 0.05113*perCent); + + //Define chromium contact + G4Material* chromium = G4NistManager::Instance()->FindOrBuildMaterial("G4_Cr"); + + //Define Vacuum + G4double vacuumDensity = 1.e-25 *g/cm3; + G4double pressure = 3.e-18*pascal; + G4double temperature = 2.73*kelvin; + G4Material* vacuum = new G4Material("Galactic", Z=1., A=1.01*g/mole, + vacuumDensity,kStateGas,temperature,pressure); + + //Define volumes + // World volume has size 1cm + G4double worldx = 0.5 * m; //half length!!!! + G4double worldy = 0.5 * m; + G4double worldz = 0.5 * m; + + // World volume, containing all geometry + G4Box* world = new G4Box("world_box", worldx, worldy, worldz); + + G4LogicalVolume* logical_world = new G4LogicalVolume(world, vacuum, "world_log", 0,0,0); + + //set the logical world volume invisible + logical_world -> SetVisAttributes(G4VisAttributes::GetInvisible()); + + G4VPhysicalVolume* physical_world = new G4PVPlacement(0, + G4ThreeVector(), + logical_world, + "world_phys", + 0, + false, + 0); + + // sentive volume + G4double SVside = 100.*um /2.; + G4double SVthickness = 8.*um /2.; + G4double SVspacing = 200.*um; //edge-edge distance + + G4Box* SV_box = new G4Box("SV_box", SVside, SVside, SVthickness); + + G4LogicalVolume* logical_SV = new G4LogicalVolume(SV_box, diamond, "SV_log", 0,0,0); + + G4VisAttributes SVcolour(G4Colour(0.5, 0.5, 0.5)); + SVcolour.SetForceSolid(true); + logical_SV -> SetVisAttributes(SVcolour); + + // chromium front-electrode + G4double feThickness = 50.*nm /2.; // front-electrode thickness + + G4Box* fe_box = new G4Box("frontElec_box", SVside, SVside, feThickness); + + G4LogicalVolume* logical_fe = new G4LogicalVolume(fe_box, chromium, "frontElec_log", 0,0,0); + + G4VisAttributes fe_colour(G4Colour::Brown()); + fe_colour.SetForceSolid(false); + logical_fe -> SetVisAttributes(fe_colour); + + // p-type diamond + G4double pDthickness = 1.*um /2.; // p-type diamond back-electrode thickness + + G4Box* pD_box = new G4Box("pDiam_box", SVside, SVside, pDthickness); + + G4LogicalVolume* logical_pD = new G4LogicalVolume(pD_box, p_diamond, "pDiam_box", 0,0,0); + + G4VisAttributes pDcolour(G4Colour::Blue()); + pDcolour.SetForceSolid(false); + + logical_pD -> SetVisAttributes(pDcolour); + + // put them in place + G4ThreeVector SVposition = {0., 0., SVthickness}; //position of the first edge (left) + G4ThreeVector fePosition = {0., 0., 2.*SVthickness + feThickness}; + G4ThreeVector pDposition = {0., 0., -pDthickness}; + + G4double SVposition_x[4] = { -3.*SVside -1.5*SVspacing, -SVside -0.5*SVspacing, +SVside +0.5*SVspacing, +3.*SVside +1.5*SVspacing }; + + std::ostringstream PVName; + + for( int i=0; i<4; i++) + { + // sensitive volume + SVposition[0] = SVposition_x[i]; + PVName << "SV_phys" << i; + new G4PVPlacement(0, SVposition, logical_SV, PVName.str(), + logical_world, + false, 0, true); + PVName.str(""); //reset the string + + // chromium front-electrode + PVName << "frontElec_phys" << i; + fePosition[0] = SVposition[0]; + new G4PVPlacement(0, fePosition, logical_fe, PVName.str(), + logical_world, + false, 0, true); + PVName.str(""); + + // p-type diamond back-electrode + PVName << "pD_phys" << i; + pDposition[0] = SVposition[0]; + new G4PVPlacement(0, pDposition, logical_pD, PVName.str(), + logical_world, + false, 0, true); + PVName.str(""); + } + + // HPHT diamond substrate (only one big substrate for simplicity) + G4double subs_x = 2.*mm /2.; + G4double subs_y = 0.5*mm /2.; + G4double sub_z = 300.*micrometer /2.; + + G4Box* sub_box = new G4Box("sub_box", subs_x, subs_y, sub_z); + + G4LogicalVolume* logical_sub = new G4LogicalVolume(sub_box, diamond, "sub_log", 0,0,0); + + G4ThreeVector subPosition = {0,0, -2.*pDthickness -sub_z}; + + new G4PVPlacement(0, subPosition, logical_sub, "sub_phys", + logical_world, + false, 0, true); + + G4VisAttributes subColour(G4Colour(0.5, 0.5, 0.5)); + subColour.SetForceSolid(false); + logical_sub -> SetVisAttributes(subColour); + + return physical_world; +} + +G4VPhysicalVolume* DetectorConstruction::ConstructSiliconDetector() +{ + //load NIST database + G4NistManager* nist = G4NistManager::Instance(); + nist->SetVerbose(1); + + //Define each individual element + //Define Nitrogen + G4double A = 14.01 * g/mole; + G4double Z = 7; + G4Element* elN = new G4Element ("Nitrogen", "N", Z, A); + + //Define Oxygen + A = 16.0 * g/mole; + Z = 8; + G4Element* elO = new G4Element ("Oxygen", "O", Z, A); + + //Define Hydrogen + A = 1.01 * g/mole; + Z = 1; + G4Element* elH = new G4Element ("Hydrogen", "H", Z, A); + + //Define Carbon + A = 12.01 * g/mole; + Z = 6; + G4Element* elC = new G4Element ("Carbon", "C", Z, A); + + //Define Air + G4Material* Air = new G4Material("Air", 1.29*mg/cm3, 2); + Air -> AddElement(elN, 70*perCent); + Air -> AddElement(elO, 30*perCent); + + //Define PMMA (C502H8) + // NIST reference + G4Material* PMMA = new G4Material("PMMA", 1.19*g/cm3, 3); + PMMA -> AddElement(elC, 5); + PMMA -> AddElement(elO, 2); + PMMA -> AddElement(elH, 8); + + //define materials + G4Material* silicon = nist->FindOrBuildMaterial("G4_Si"); + G4Material* SiO2 = nist->FindOrBuildMaterial("G4_SILICON_DIOXIDE"); + + //Define Vacuum + G4double vacuumDensity = 1.e-25 *g/cm3; + G4double pressure = 3.e-18*pascal; + G4double temperature = 2.73*kelvin; + G4Material* vacuum = new G4Material("Galactic", Z=1., A=1.01*g/mole, + vacuumDensity,kStateGas,temperature,pressure); + + //Define volumes + // World volume has size 1cm + G4double worldx = 0.5 * m; //half length!!!! + G4double worldy = 0.5 * m; + G4double worldz = 0.5 * m; + + // World volume, containing all geometry + G4Box* world = new G4Box("world_box", worldx, worldy, worldz); + + G4LogicalVolume* logical_world = new G4LogicalVolume(world, vacuum, "world_log", 0,0,0); + + //set the logical world volume invisible + logical_world -> SetVisAttributes(G4VisAttributes::GetInvisible()); + + G4VPhysicalVolume* physical_world = new G4PVPlacement(0, + G4ThreeVector(), + logical_world, + "world_phys", + 0, + false, + 0); + + // I need to set the size of the SV now, because some other parameters depend on it + G4double SV_thick = 25.*um /2.; + + // PMMA + G4double PMMA_x = 200.*um /2.; + G4double PMMA_y = 200.*um /2.; + G4double PMMA_z = SV_thick; + + G4Box* PMMA_box = new G4Box("PMMA_box", PMMA_x, PMMA_y, PMMA_z); + + G4LogicalVolume* logical_PMMA = new G4LogicalVolume(PMMA_box, PMMA, "PMMA_log", 0,0,0); + + new G4PVPlacement(0, G4ThreeVector(), logical_PMMA, "PMMA_phys", + logical_world, + false, 0, true); + + logical_PMMA -> SetVisAttributes(G4VisAttributes(G4Colour(0., 1., 0.))); + + // sensitive volumes + G4double SV_radius = SV_thick *2; // full length + + G4Tubs* SV_cyl = new G4Tubs("SV_cyl", 0., SV_radius, SV_thick, 0.*deg, 360.*deg); + //G4RotationMatrix* cylRot = new G4RotationMatrix; + //cylRot->rotateY(M_PI/2.*rad); + + G4LogicalVolume* logical_SV = new G4LogicalVolume(SV_cyl, silicon, "SV_log", 0,0,0); + + G4VisAttributes SVcolour(G4Colour(0.5, 0.5, 0.5)); + SVcolour.SetForceSolid(true); + logical_SV -> SetVisAttributes(SVcolour); + + G4ThreeVector SVposition; //if(volumeName != "SV_phys1") + + G4double SVspacing = 10.*um; // distance between the edges of two SV + + SVposition = { +SVspacing/2. +SV_radius, +SVspacing/2. +SV_radius, 0. }; + new G4PVPlacement(0, SVposition, logical_SV, "SV_phys1", + logical_PMMA, + false, 0, true); + /*new G4PVPlacement(cylRot, SVposition, logical_SV, "SV_phys1", + logical_PMMA, + false, 0, true);*/ + + SVposition = { -SVspacing/2. -SV_radius, +SVspacing/2. +SV_radius, 0. }; + new G4PVPlacement(0, SVposition, logical_SV, "SV_phys2", + logical_PMMA, + false, 0, true); + + SVposition = { -SVspacing/2. -SV_radius, -SVspacing/2. -SV_radius, 0. }; + new G4PVPlacement(0, SVposition, logical_SV, "SV_phys3", + logical_PMMA, + false, 0, true); + + SVposition = { +SVspacing/2. +SV_radius, -SVspacing/2. -SV_radius, 0. }; + new G4PVPlacement(0, SVposition, logical_SV, "SV_phys4", + logical_PMMA, + false, 0, true); + + // Si02 layer + G4double oxyde_x = PMMA_x; + G4double oxyde_y = PMMA_y; + G4double oxyde_z = 1.*um /2.; + + G4Box* oxyde_box = new G4Box("oxyde_box", oxyde_x, oxyde_y, oxyde_z); + + G4LogicalVolume* logical_oxyde = new G4LogicalVolume(oxyde_box, SiO2, "oxyde_log", 0,0,0); + + G4ThreeVector oxyde_position = G4ThreeVector( 0, 0, PMMA_z + oxyde_z ); + new G4PVPlacement(0, oxyde_position, logical_oxyde, "oxyde_phys", + logical_world, + false, 0, true); + + logical_oxyde -> SetVisAttributes(G4VisAttributes(G4Colour(0.6, 0.6, 0.6))); + + return physical_world; + +} + void DetectorConstruction::ConstructSDandField() { SensitiveDetector* SD = new SensitiveDetector("SD", "DetectorHitsCollection", analysis); diff --git a/examples/advanced/radioprotection/src/DetectorMessenger.cc b/examples/advanced/radioprotection/src/DetectorMessenger.cc new file mode 100644 index 0000000000..c6d26ebaca --- /dev/null +++ b/examples/advanced/radioprotection/src/DetectorMessenger.cc @@ -0,0 +1,77 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it +// +// Created by Jacopo Magini: j.magini@surrey.ac.uk + +#include "DetectorMessenger.hh" +#include "G4UIdirectory.hh" +#include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIcmdWithAString.hh" + +#include "DetectorConstruction.hh" +#include "G4RunManager.hh" + +DetectorMessenger::DetectorMessenger(AnalysisManager* analysis_manager) +{ + changeTheGeometryDir = new G4UIdirectory("/geometrySetup/"); + changeTheGeometryDir -> SetGuidance("Geometry setup"); + + changeTheDetectorCmd = new G4UIcmdWithAString("/geometrySetup/selectDetector",this); + changeTheDetectorCmd -> SetGuidance("Select the type of detector you wish to use"); + changeTheDetectorCmd -> SetParameterName("Material",false); + changeTheDetectorCmd -> AvailableForStates(G4State_PreInit); + + analysis = analysis_manager; +} + +DetectorMessenger::~DetectorMessenger() +{ + delete changeTheGeometryDir; + delete changeTheDetectorCmd; +} + +void DetectorMessenger::SetNewValue(G4UIcommand* command, G4String newDetectorName) +{ + + if( command == changeTheDetectorCmd ) + { + if( newDetectorName == "Diamond" || newDetectorName == "MicroDiamond" || newDetectorName == "Silicon" ) + { + DetectorConstruction* newDetector = new DetectorConstruction(analysis, newDetectorName); + + G4RunManager *runManager = G4RunManager::GetRunManager(); + runManager -> SetUserInitialization(newDetector); + runManager -> GeometryHasBeenModified(); + } + + else + { + G4cout <<"Unknown detector type: " << newDetectorName << ". Geometry not changed." << G4endl; + } + } +} diff --git a/examples/advanced/radioprotection/src/PhysicsList.cc b/examples/advanced/radioprotection/src/PhysicsList.cc index b8a02f8a3f..c390e08b7f 100644 --- a/examples/advanced/radioprotection/src/PhysicsList.cc +++ b/examples/advanced/radioprotection/src/PhysicsList.cc @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // // Code based on the hadrontherapy advanced example diff --git a/examples/advanced/radioprotection/src/PhysicsListMessenger.cc b/examples/advanced/radioprotection/src/PhysicsListMessenger.cc index e5b80bd228..c5b9b2c7c4 100644 --- a/examples/advanced/radioprotection/src/PhysicsListMessenger.cc +++ b/examples/advanced/radioprotection/src/PhysicsListMessenger.cc @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // // Code based on the hadrontherapy advanced example diff --git a/examples/advanced/radioprotection/src/PrimaryGeneratorAction.cc b/examples/advanced/radioprotection/src/PrimaryGeneratorAction.cc index 017226c739..760a7cf86d 100644 --- a/examples/advanced/radioprotection/src/PrimaryGeneratorAction.cc +++ b/examples/advanced/radioprotection/src/PrimaryGeneratorAction.cc @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // #include "PrimaryGeneratorAction.hh" diff --git a/examples/advanced/radioprotection/src/RunAction.cc b/examples/advanced/radioprotection/src/RunAction.cc index 47c7532727..ea82602032 100644 --- a/examples/advanced/radioprotection/src/RunAction.cc +++ b/examples/advanced/radioprotection/src/RunAction.cc @@ -23,7 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: S. Guatelli and J. Davis, CMPR, UOW +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // #include "RunAction.hh" diff --git a/examples/advanced/radioprotection/src/SensitiveDetector.cc b/examples/advanced/radioprotection/src/SensitiveDetector.cc index fe2e33ca0a..70d90db47d 100644 --- a/examples/advanced/radioprotection/src/SensitiveDetector.cc +++ b/examples/advanced/radioprotection/src/SensitiveDetector.cc @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // // code based on the basic example B2 // diff --git a/examples/advanced/radioprotection/src/SensitiveDetectorHit.cc b/examples/advanced/radioprotection/src/SensitiveDetectorHit.cc index 4c0cf5e07e..dcd9efc6ae 100644 --- a/examples/advanced/radioprotection/src/SensitiveDetectorHit.cc +++ b/examples/advanced/radioprotection/src/SensitiveDetectorHit.cc @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // // Code based on basic example B02 // diff --git a/examples/advanced/radioprotection/src/SteppingAction.cc b/examples/advanced/radioprotection/src/SteppingAction.cc index 5700f35dbf..b50f8ab954 100644 --- a/examples/advanced/radioprotection/src/SteppingAction.cc +++ b/examples/advanced/radioprotection/src/SteppingAction.cc @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// Authors: Susanna Guatelli, susanna@uow.edu.au, -// Authors: Jeremy Davis, jad028@uowmail.edu.au +// Authors: Susanna Guatelli and Francesco Romano +// susanna@uow.edu.au, francesco.romano@ct.infn.it // #include "G4ios.hh" diff --git a/examples/advanced/radioprotection/vis.mac b/examples/advanced/radioprotection/vis.mac index 458d81b11e..75b7a461bc 100644 --- a/examples/advanced/radioprotection/vis.mac +++ b/examples/advanced/radioprotection/vis.mac @@ -2,6 +2,7 @@ # THE SIMULATION IS EXECUTE IN INTERACTIVE MODE # # +/control/execute geometry.mac /control/execute physics.mac /run/initialize /control/execute primary.mac diff --git a/examples/advanced/underground_physics/CMakeLists.txt b/examples/advanced/underground_physics/CMakeLists.txt index f62cc2d876..183285a801 100644 --- a/examples/advanced/underground_physics/CMakeLists.txt +++ b/examples/advanced/underground_physics/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(underground_physics) #---------------------------------------------------------------------------- @@ -21,7 +24,7 @@ endif() include(${Geant4_USE_FILE}) #Check here for DMXENV_GPS_USE -#Use GPS if the environment variable is set, and the user has *not* supplied the CMake +#Use GPS if the environment variable is set, and the user has *not* supplied the CMake #command line argument. Otherwise, the argument of the command line has the priority. # if("$ENV{DMXENV_GPS_USE}" AND NOT DEFINED DMXENV_GPS_USE) @@ -40,7 +43,7 @@ endif() #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) diff --git a/examples/advanced/underground_physics/DMX.cc b/examples/advanced/underground_physics/DMX.cc index 72c5870dda..a98a843812 100644 --- a/examples/advanced/underground_physics/DMX.cc +++ b/examples/advanced/underground_physics/DMX.cc @@ -40,12 +40,7 @@ // -------------------------------------------------------------- #include "G4Types.hh" - -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "Randomize.hh" @@ -64,12 +59,9 @@ int main(int argc,char** argv) { G4Random::setTheEngine(new CLHEP::RanecuEngine); // Construct the default run manager -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; - //runManager->SetNumberOfThreads(2); -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = G4RunManagerFactory::CreateRunManager(); + G4int nThreads = 4; + runManager->SetNumberOfThreads(nThreads); // set mandatory initialization classes runManager->SetUserInitialization(new DMXDetectorConstruction); diff --git a/examples/advanced/underground_physics/History b/examples/advanced/underground_physics/History index 20c451e904..647d12f047 100644 --- a/examples/advanced/underground_physics/History +++ b/examples/advanced/underground_physics/History @@ -7,21 +7,38 @@ Category History file --------------------- +17.11.2020 - S. Guatelli (DMX-V10-06-04) + Migration to G4RunManagerFactory + +03.11.2020 - D.Sawkey (DMX-V10-06-03) + Build material property tables using std::vectors + +02.11.2020 - B.Morgan (DMX-V10-06-02) + Support same CMake version range as core Geant4 + +14.10.2020 - V. Ribon (DMX-V10-06-01) + neutron.mac, ambe_spectrum.mac : removed unneeded + command "/process/had/rdm/analogueMC 1". + +05.08.2020 - V. Ribon (DMX-V10-06-00) + neutron.mac, ambe_spectrum.mac, UserRequirements.txt : migrated + UI commands from "/grdm/..." to "/process/had/rdm/..." + 09.11.2019 - V. Ivanchenko (DMX-V10-05-03) DMXPhysicsList : clean-up both EM, hadronic and radioactive decay -30.08.2019 - S. Guatelli (DMX-V10-05-02) +30.08.2019 - S. Guatelli (DMX-V10-05-02) G4VIS_USE deleted 10.05.2019 - V. Ivanchenko (DMX-V10-05-01) - DMXPhysicsList : add Glauber-Gribov cross section for all elastic - processes + DMXPhysicsList : add Glauber-Gribov cross section for all elastic + processes 31.01.2019 - I.Hrivnacova (DMX-V10-05-00) Merged GitHub PR #4: all Boolean operators now return G4bool. 09.08.2018 - A. Ribon (DMX-V10-04-01) - DMXPhysicsList : replaced the explicit high-energy limit of + DMXPhysicsList : replaced the explicit high-energy limit of hadronic physics with the one from G4HadronicParameters . 10.05.2018 - B. Morgan (DMX-V10-04-00) @@ -63,34 +80,34 @@ 23.05.2014 - L. Pandola (DMX-V10-00-04) Actual MT migration. Use G4MTRunManager - Added G4ShortLivedConstructor in the physics list, to + Added G4ShortLivedConstructor in the physics list, to avoid G4Exception PART10116. 21.05.2014 - L. Pandola (DMX-V10-00-03) - Edit constructor of DMXSteppingAction, make const + Edit constructor of DMXSteppingAction, make const Getters in DMXEventAction. Instantiate DMXRunAction also in the master Fix a problem with the names of the ASCII files 20.05.2014 - L. Pandola (DMX-V10-00-02) - Edit the constructor of DMXEventAction + Edit the constructor of DMXEventAction Make Getters const in RunAction and PrimaryGenerator - ASCII files are created per-thread. Not open at every + ASCII files are created per-thread. Not open at every event, but kept as private class members. 13.05.2014 - L. Pandola (DMX-V10-00-01) Analysis files closed at the end of execution (not - end of event). + end of event). Added ConstructSDandField() method in the Detector Clean up the detector construction messenger Made Hits allocators as ThreadLocal Remove CLHEP::Random 08.05.2014 - L. Pandola (DMX-V10-00-00) - Added ActionInitialization class + Added ActionInitialization class 07.11.2013 - L. Pandola (DMX-V09-06-08) - Remove dependency from the deprecated LEP and HEP + Remove dependency from the deprecated LEP and HEP models from Geisha 30.07.2013 - A. Dotti (DMX-V09-06-07) @@ -98,19 +115,19 @@ unused private data members 31.05.2013 - L. Pandola (DMX-V09-06-06) - Migrate analysis from the AIDA-based local singleton - class to the g4analysis tools (no AIDA dependency + Migrate analysis from the AIDA-based local singleton + class to the g4analysis tools (no AIDA dependency any longer). Clean-up of README and CMakeLists.txt. Some cosmetics in the code. - + 18.04.2013 - L. Pandola (DMX-V09-06-05) - In DMXMinEkineCuts.cc, migrate calculation of the range - from G4EnergyLossTable (obsolete class) to - G4LossTableManager. This should hopefully fix the problems + In DMXMinEkineCuts.cc, migrate calculation of the range + from G4EnergyLossTable (obsolete class) to + G4LossTableManager. This should hopefully fix the problems observed in DMX-V09-06-04. Other minor cosmetics. 16.04.2013 - L. Pandola (DMX-V09-06-04) - - Trying to understand the origin of the crashes which + - Trying to understand the origin of the crashes which caused the rejection of DMX-V09-06-03 21.03.2013 - L. Pandola (DMX-V09-06-03) @@ -131,8 +148,8 @@ - Fix the CMakeLists.txt file (AIDA optional dependency) 16.10.2012 - L.Pandola (DMX-V09-05-02) - - Change the logic of the CMakeLists.txt file. The env variable - and the cmake line command can be used (the cmake commands gets + - Change the logic of the CMakeLists.txt file. The env variable + and the cmake line command can be used (the cmake commands gets the priority) 12.10.2012 - L.Pandola (DMX-V09-05-01) @@ -156,23 +173,23 @@ Change /vis/open OGLxxx to /vis/open OGL 16.02.2010 - L. Pandola (DMX-V09-03-00) - Copy of the previous tag, DMX-V09-02-02, which was not submitted for + Copy of the previous tag, DMX-V09-02-02, which was not submitted for testing. 26.10.2009 - L. Pandola (DMX-V09-02-02) - Physics list migrated from LowEnergy processes to the new Livermore - models. Physics results unchanged for gamma/e-. Possible differences + Physics list migrated from LowEnergy processes to the new Livermore + models. Physics results unchanged for gamma/e-. Possible differences with ions/protons, since we don't use anymore G4hLowEnergyIonisation 22.10.2009 - L. Pandola (DMX-V09-02-01) Correct Analysis manager to solve a problem with the HBOOK output files - (ntuples not filled, histograms not saved). Still at the stage of + (ntuples not filled, histograms not saved). Still at the stage of pre-migration. 22.10.2009 - L. Pandola (DMX-V09-02-00) Get rid of a warning message and allocation problems with ntuple2 - Meant to be the reference to verify the migration to new - Livermore models. + Meant to be the reference to verify the migration to new + Livermore models. 16.06.2008 - G.A.P.Cirrone (DMX-V09-01-01) Removed AIDA command from GNUmakefile diff --git a/examples/advanced/underground_physics/UserRequirements.txt b/examples/advanced/underground_physics/UserRequirements.txt index d9e5b0b608..219235aa77 100644 --- a/examples/advanced/underground_physics/UserRequirements.txt +++ b/examples/advanced/underground_physics/UserRequirements.txt @@ -75,31 +75,31 @@ PHYSICS: The following areas of physics should be included: -UR 3.1: · Low Energy Electromagnetic - to 250eV for both e and photons +UR 3.1: · Low Energy Electromagnetic - to 250eV for both e and photons Maximum energy range around 10 MeV for any particle -UR 3.2: · Compton Scattering -UR 3.3: · Photoelectric Effect -UR 3.4: · Bremsstrahlung -UR 3.5: · Rayleigh Scattering - for both optical photons and hard +UR 3.2: · Compton Scattering +UR 3.3: · Photoelectric Effect +UR 3.4: · Bremsstrahlung +UR 3.5: · Rayleigh Scattering - for both optical photons and hard X-rays/Gammas -UR 3.6: · Electromagnetic ionisation -UR 3.7: · Delta Rays +UR 3.6: · Electromagnetic ionisation +UR 3.7: · Delta Rays Produced discretely down to 250eV to allow secondaries and tertiaries to be properly handled -UR 3.8: · Heavy Ion Transport - to 250eV for protons, alphas and nuclei +UR 3.8: · Heavy Ion Transport - to 250eV for protons, alphas and nuclei Allows separate scintillation time and yield compared to gammas (electrons) -UR 3.9: · Radioactive Decay - induced +UR 3.9: · Radioactive Decay - induced All materials are sensitive to induced activity as a consequence of photo-nuclear or neutron capture -UR 3.10: · Radioactive Decay - sources +UR 3.10: · Radioactive Decay - sources Specific nuclei can be decayed within the geometry to reproduce experimental calibration the experiment -UR 3.11: · Neutron tracking from medium energy (few MeV) to thermal capture +UR 3.11: · Neutron tracking from medium energy (few MeV) to thermal capture Discretely transported through-out the volume to give full detector response for both neutron capture activation and elastic and inelastic interaction in the target volume -UR 3.12: · Scintillation light production and ray-tracing to PMT +UR 3.12: · Scintillation light production and ray-tracing to PMT Optical photon transport introduced to allow realistic detector response to be produced. @@ -212,7 +212,7 @@ The user should have the ability to change several features including /run/verbose /tracking/verbose /hits/verbose - /grdm/verbose + /process/had/rdm/verbose /dmx/gun/verbose diff --git a/examples/advanced/underground_physics/ambe_spectrum.mac b/examples/advanced/underground_physics/ambe_spectrum.mac index 3016a206c4..c9bee1596f 100644 --- a/examples/advanced/underground_physics/ambe_spectrum.mac +++ b/examples/advanced/underground_physics/ambe_spectrum.mac @@ -29,9 +29,8 @@ /dmx/KillGammasInConcrete 0 # # radioactive decay module -/grdm/analogueMC 1 -/grdm/verbose 0 -/grdm/allVolumes +/process/had/rdm/verbose 0 +/process/had/rdm/allVolumes # # # using GPS for ambe_spectrum: diff --git a/examples/advanced/underground_physics/neutron.mac b/examples/advanced/underground_physics/neutron.mac index be27c86f85..763ad8ef2d 100644 --- a/examples/advanced/underground_physics/neutron.mac +++ b/examples/advanced/underground_physics/neutron.mac @@ -26,9 +26,8 @@ /dmx/KillGammasInConcrete 0 # # radioactive decay module -/grdm/analogueMC 1 -/grdm/verbose 0 -/grdm/allVolumes +/process/had/rdm/verbose 0 +/process/had/rdm/allVolumes # # gun: particle /dmx/gun/verbose 1 diff --git a/examples/advanced/underground_physics/src/DMXDetectorConstruction.cc b/examples/advanced/underground_physics/src/DMXDetectorConstruction.cc index 792e99838d..9aca2b6e3e 100644 --- a/examples/advanced/underground_physics/src/DMXDetectorConstruction.cc +++ b/examples/advanced/underground_physics/src/DMXDetectorConstruction.cc @@ -569,11 +569,10 @@ G4VPhysicalVolume* DMXDetectorConstruction::Construct() { ("Vessel", liqPhase_phys, vessel_phys, OpVesselSurface); */ - const G4int NUM = 2; - G4double vessel_PP[NUM] = { 6.5*eV, 7.50*eV }; - G4double vessel_REFL[NUM] = { 0.2, 0.2 }; + std::vector vessel_PP = { 6.5*eV, 7.50*eV }; + std::vector vessel_REFL = { 0.2, 0.2 }; G4MaterialPropertiesTable* vessel_mt = new G4MaterialPropertiesTable(); - vessel_mt->AddProperty("REFLECTIVITY", vessel_PP, vessel_REFL, NUM); + vessel_mt->AddProperty("REFLECTIVITY", vessel_PP, vessel_REFL); OpVesselSurface->SetMaterialPropertiesTable(vessel_mt); // G4LogicalBorderSurface* VesselTopSurface = @@ -628,13 +627,12 @@ G4VPhysicalVolume* DMXDetectorConstruction::Construct() { new G4LogicalBorderSurface ("Shield", LXe_phys, CuShield_phys, OpCuShieldSurface); - G4double CuShield_PP[NUM] = { 7.0*eV, 7.50*eV }; - G4double CuShield_REFL[NUM] = { 0.3, 0.2 }; + std::vector CuShield_PP = { 7.0*eV, 7.50*eV }; + std::vector CuShield_REFL = { 0.3, 0.2 }; G4MaterialPropertiesTable *CuShield_mt = new G4MaterialPropertiesTable(); - CuShield_mt->AddProperty("REFLECTIVITY", CuShield_PP, CuShield_REFL, NUM); + CuShield_mt->AddProperty("REFLECTIVITY", CuShield_PP, CuShield_REFL); OpCuShieldSurface->SetMaterialPropertiesTable(CuShield_mt); - // rings *************************************************************** G4double ringHeight = 4.*mm; @@ -648,10 +646,10 @@ G4VPhysicalVolume* DMXDetectorConstruction::Construct() { ring_log = new G4LogicalVolume(ring_tube, ring_mat, "ring_log"); // optical surface: ring materials table - G4double ring_PP[NUM] = { 6.00*eV, 7.50*eV }; - G4double ring_REFL[NUM] = { 0.7, 0.65 }; + std::vector ring_PP = { 6.00*eV, 7.50*eV }; + std::vector ring_REFL = { 0.7, 0.65 }; G4MaterialPropertiesTable *ring_mt = new G4MaterialPropertiesTable(); - ring_mt->AddProperty("REFLECTIVITY", ring_PP, ring_REFL, NUM); + ring_mt->AddProperty("REFLECTIVITY", ring_PP, ring_REFL); G4OpticalSurface* OpRingSurface = new G4OpticalSurface ("RingSurface", unified, ground, dielectric_metal, sigalpha=10.*deg); @@ -751,13 +749,12 @@ G4VPhysicalVolume* DMXDetectorConstruction::Construct() { new G4LogicalBorderSurface ("Mirror", GXe_phys, mirror_phys, OpMirrorSurface); - G4double mirror_PP[NUM] = { 6.00*eV, 7.50*eV }; - G4double mirror_REFL[NUM] = { 0.83, 0.78 }; + std::vector mirror_PP = { 6.00*eV, 7.50*eV }; + std::vector mirror_REFL = { 0.83, 0.78 }; G4MaterialPropertiesTable *mirror_mt = new G4MaterialPropertiesTable(); - mirror_mt->AddProperty("REFLECTIVITY", mirror_PP, mirror_REFL, NUM); + mirror_mt->AddProperty("REFLECTIVITY", mirror_PP, mirror_REFL); OpMirrorSurface->SetMaterialPropertiesTable(mirror_mt); - // Grids ************************************************************* G4double gridHeight = 0.100*mm; @@ -820,10 +817,10 @@ G4VPhysicalVolume* DMXDetectorConstruction::Construct() { new G4LogicalBorderSurface ("Alpha", LXe_phys, alpha_phys, OpAlphaSurface); - G4double alpha_PP[NUM] = { 6.00*eV, 7.50*eV }; - G4double alpha_REFL[NUM] = { 0.05, 0.05 }; + std::vector alpha_PP = { 6.00*eV, 7.50*eV }; + std::vector alpha_REFL = { 0.05, 0.05 }; G4MaterialPropertiesTable *alpha_mt = new G4MaterialPropertiesTable(); - alpha_mt->AddProperty("REFLECTIVITY", alpha_PP, alpha_REFL, NUM); + alpha_mt->AddProperty("REFLECTIVITY", alpha_PP, alpha_REFL); OpAlphaSurface->SetMaterialPropertiesTable(alpha_mt); // americium *********************************************************** @@ -852,10 +849,10 @@ G4VPhysicalVolume* DMXDetectorConstruction::Construct() { new G4LogicalBorderSurface ("Americium", LXe_phys, americium_phys, OpAmericiumSurface); - G4double americium_PP[NUM] = { 6.00*eV, 7.50*eV }; - G4double americium_REFL[NUM] = { 0.7, 0.65 }; + std::vector americium_PP = { 6.00*eV, 7.50*eV }; + std::vector americium_REFL = { 0.7, 0.65 }; G4MaterialPropertiesTable *americium_mt = new G4MaterialPropertiesTable(); - americium_mt->AddProperty("REFLECTIVITY", americium_PP, americium_REFL, NUM); + americium_mt->AddProperty("REFLECTIVITY", americium_PP, americium_REFL); OpAlphaSurface->SetMaterialPropertiesTable(americium_mt); G4VisAttributes* americium_vat= new G4VisAttributes(cyan); @@ -915,27 +912,26 @@ G4VPhysicalVolume* DMXDetectorConstruction::Construct() { new G4LogicalBorderSurface ("phcath_surf", pmt_phys, phcath_phys, phcath_opsurf); - G4double phcath_PP[NUM] = { 6.00*eV, 7.50*eV }; - // G4double phcath_REFL[NUM] = { 0.0, 0.0}; + std::vector phcath_PP = { 6.00*eV, 7.50*eV }; + // std::vector phcath_REFL = { 0.0, 0.0}; // G4MaterialPropertiesTable* phcath_mt = new G4MaterialPropertiesTable(); - // phcath_mt->AddProperty("REFLECTIVITY", phcath_PP, phcath_REFL, NUM); + // phcath_mt->AddProperty("REFLECTIVITY", phcath_PP, phcath_REFL); // phcath_opsurf->SetMaterialPropertiesTable(phcath_mt); //**Photocathode surface properties - G4double photocath_EFF[NUM]={1.,1.}; //Enables 'detection' of photons - G4double photocath_ReR[NUM]={1.92,1.92}; - G4double photocath_ImR[NUM]={1.69,1.69}; + std::vector photocath_EFF={1.,1.}; //Enables 'detection' of photons + std::vector photocath_ReR={1.92,1.92}; + std::vector photocath_ImR={1.69,1.69}; G4MaterialPropertiesTable* photocath_mt = new G4MaterialPropertiesTable(); - photocath_mt->AddProperty("EFFICIENCY",phcath_PP,photocath_EFF,NUM); - photocath_mt->AddProperty("REALRINDEX",phcath_PP,photocath_ReR,NUM); - photocath_mt->AddProperty("IMAGINARYRINDEX",phcath_PP,photocath_ImR,NUM); + photocath_mt->AddProperty("EFFICIENCY",phcath_PP,photocath_EFF); + photocath_mt->AddProperty("REALRINDEX",phcath_PP,photocath_ReR); + photocath_mt->AddProperty("IMAGINARYRINDEX",phcath_PP,photocath_ImR); G4OpticalSurface* photocath_opsurf= new G4OpticalSurface("photocath_opsurf",glisur,polished, dielectric_metal); photocath_opsurf->SetMaterialPropertiesTable(photocath_mt); - G4VisAttributes* phcath_vat= new G4VisAttributes(lblue); phcath_vat->SetForceSolid(true); phcath_vat->SetVisibility(true); diff --git a/examples/advanced/underground_physics/src/DMXDetectorMaterial.icc b/examples/advanced/underground_physics/src/DMXDetectorMaterial.icc index 6d8862840f..2207975679 100644 --- a/examples/advanced/underground_physics/src/DMXDetectorMaterial.icc +++ b/examples/advanced/underground_physics/src/DMXDetectorMaterial.icc @@ -61,17 +61,16 @@ LXe->AddElement( elementXe, 1); GXe->AddElement( elementXe, 1); - const G4int NUMENTRIES = 3; - // G4double LXe_PP[NUMENTRIES] = { 7.07*eV, 7.07*eV }; - G4double LXe_PP[NUMENTRIES] = { 7.0*eV , 7.07*eV, 7.14*eV }; - G4double LXe_SCINT[NUMENTRIES] = { 0.1, 1.0, 0.1 }; - G4double LXe_RIND[NUMENTRIES] = { 1.59 , 1.57, 1.54 }; - G4double LXe_ABSL[NUMENTRIES] = { 35.*cm, 35.*cm, 35.*cm}; //atten length + // std::vector LXe_PP = { 7.07*eV, 7.07*eV }; + std::vector LXe_PP = { 7.0*eV , 7.07*eV, 7.14*eV }; + std::vector LXe_SCINT = { 0.1, 1.0, 0.1 }; + std::vector LXe_RIND = { 1.59 , 1.57, 1.54 }; + std::vector LXe_ABSL = { 35.*cm, 35.*cm, 35.*cm}; //atten length G4MaterialPropertiesTable *LXe_mt = new G4MaterialPropertiesTable(); - LXe_mt->AddProperty("FASTCOMPONENT", LXe_PP, LXe_SCINT, NUMENTRIES); - LXe_mt->AddProperty("SLOWCOMPONENT", LXe_PP, LXe_SCINT, NUMENTRIES); - LXe_mt->AddProperty("RINDEX", LXe_PP, LXe_RIND, NUMENTRIES); - LXe_mt->AddProperty("ABSLENGTH", LXe_PP, LXe_ABSL, NUMENTRIES); + LXe_mt->AddProperty("FASTCOMPONENT", LXe_PP, LXe_SCINT); + LXe_mt->AddProperty("SLOWCOMPONENT", LXe_PP, LXe_SCINT); + LXe_mt->AddProperty("RINDEX", LXe_PP, LXe_RIND); + LXe_mt->AddProperty("ABSLENGTH", LXe_PP, LXe_ABSL); LXe_mt->AddConstProperty("SCINTILLATIONYIELD",12000./MeV); // include QE 20% // and 13eV creation energy for photons - may be 15eV? // Fano factor assumed 1; should be much less for Xe ~ 0.13 @@ -83,16 +82,16 @@ LXe_mt->AddConstProperty("YIELDRATIO",1.0); LXe->SetMaterialPropertiesTable(LXe_mt); - // G4double GXe_PP[NUMENTRIES] = { 7.07*eV, 7.07*eV }; - G4double GXe_PP[NUMENTRIES] = { 7.0*eV, 7.07*eV, 7.14*eV }; - G4double GXe_SCINT[NUMENTRIES] = { 0.1, 1.0, 0.1 }; - G4double GXe_RIND[NUMENTRIES] = { 1.00, 1.00, 1.00 }; - G4double GXe_ABSL[NUMENTRIES] = { 100*m, 100*m, 100*m}; //atten length + // std::vector GXe_PP = { 7.07*eV, 7.07*eV }; + std::vector GXe_PP = { 7.0*eV, 7.07*eV, 7.14*eV }; + std::vector GXe_SCINT = { 0.1, 1.0, 0.1 }; + std::vector GXe_RIND = { 1.00, 1.00, 1.00 }; + std::vector GXe_ABSL = { 100*m, 100*m, 100*m}; //atten length G4MaterialPropertiesTable *GXe_mt = new G4MaterialPropertiesTable(); - GXe_mt->AddProperty("FASTCOMPONENT", GXe_PP, GXe_SCINT, NUMENTRIES); - GXe_mt->AddProperty("SLOWCOMPONENT", GXe_PP, GXe_SCINT, NUMENTRIES); - GXe_mt->AddProperty("RINDEX", GXe_PP, GXe_RIND, NUMENTRIES); - GXe_mt->AddProperty("ABSLENGTH", GXe_PP, GXe_ABSL, NUMENTRIES); + GXe_mt->AddProperty("FASTCOMPONENT", GXe_PP, GXe_SCINT); + GXe_mt->AddProperty("SLOWCOMPONENT", GXe_PP, GXe_SCINT); + GXe_mt->AddProperty("RINDEX", GXe_PP, GXe_RIND); + GXe_mt->AddProperty("ABSLENGTH", GXe_PP, GXe_ABSL); GXe_mt->AddConstProperty("SCINTILLATIONYIELD",12000./MeV); // include QE 20% GXe_mt->AddConstProperty("RESOLUTIONSCALE",1.0); GXe_mt->AddConstProperty("FASTTIMECONSTANT",20.*ns); @@ -111,13 +110,13 @@ quartz->AddElement(Si, 1); quartz->AddElement(O , 2); - G4double quartz_PP[NUMENTRIES] = { 5.0*eV, 6.69*eV, 7.50*eV }; // lambda range 4 ri - G4double quartz_RIND[NUMENTRIES] = { 1.51, 1.57, 1.61 }; // ref index - // G4double quartz_RIND[NUMENTRIES] = { 1.45, 1.51, 1.54 }; // ref index - G4double quartz_ABSL[NUMENTRIES] = { 3.0*cm, 3.0*cm, 3.0*cm };// atten length + std::vector quartz_PP = { 5.0*eV, 6.69*eV, 7.50*eV }; // lambda range 4 ri + std::vector quartz_RIND = { 1.51, 1.57, 1.61 }; // ref index + // std::vector quartz_RIND = { 1.45, 1.51, 1.54 }; // ref index + std::vector quartz_ABSL = { 3.0*cm, 3.0*cm, 3.0*cm };// atten length G4MaterialPropertiesTable *quartz_mt = new G4MaterialPropertiesTable(); - quartz_mt->AddProperty("RINDEX", quartz_PP, quartz_RIND, NUMENTRIES); - quartz_mt->AddProperty("ABSLENGTH", quartz_PP, quartz_ABSL, NUMENTRIES); + quartz_mt->AddProperty("RINDEX", quartz_PP, quartz_RIND); + quartz_mt->AddProperty("ABSLENGTH", quartz_PP, quartz_ABSL); quartz->SetMaterialPropertiesTable(quartz_mt); @@ -134,13 +133,13 @@ (name="CathodeMetalAluminium", density=2.700*g/cm3, ncomponents=1); cathmetalAl->AddElement(Al, 1); - G4double cathmetal_PP[NUMENTRIES] = { 5.0*eV, 6.69*eV, 7.50*eV }; - G4double cathmetal_RIND[NUMENTRIES] = { 1.51, 1.57, 1.61 }; // ref index - G4double cathmetal_ABSL[NUMENTRIES] = { 1.e-20*m, 1.e-20*m, 1.e-20*m };// atten length -// G4double cathmetal_ABSL[NUMENTRIES] = { 3.0*cm, 3.0*cm, 3.0*cm };// atten length + std::vector cathmetal_PP = { 5.0*eV, 6.69*eV, 7.50*eV }; + std::vector cathmetal_RIND = { 1.51, 1.57, 1.61 }; // ref index + std::vector cathmetal_ABSL = { 1.e-20*m, 1.e-20*m, 1.e-20*m };// atten length +// std::vector cathmetal_ABSL = { 3.0*cm, 3.0*cm, 3.0*cm };// atten length G4MaterialPropertiesTable *cathmetal_mt = new G4MaterialPropertiesTable(); - cathmetal_mt->AddProperty("RINDEX", cathmetal_PP, cathmetal_RIND,NUMENTRIES); - cathmetal_mt->AddProperty("ABSLENGTH", cathmetal_PP, cathmetal_ABSL, NUMENTRIES); + cathmetal_mt->AddProperty("RINDEX", cathmetal_PP, cathmetal_RIND); + cathmetal_mt->AddProperty("ABSLENGTH", cathmetal_PP, cathmetal_ABSL); cathmetalAl->SetMaterialPropertiesTable(cathmetal_mt); diff --git a/examples/advanced/underground_physics/underground_physics.out b/examples/advanced/underground_physics/underground_physics.out index e5965663c4..d66d715f0c 100644 --- a/examples/advanced/underground_physics/underground_physics.out +++ b/examples/advanced/underground_physics/underground_physics.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +27,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -115,9 +118,9 @@ conv: for gamma SubType=14 BuildTable=1 BetheHeitler5D : Emin= 0 eV Emax= 100 GeV ModifiedTsai msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 GeV Nbins=180 100 eV - 100 GeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 GeV in 180 bins @@ -136,9 +139,9 @@ eBrem: for e- SubType=3 eBremLPM : Emin= 1 GeV Emax= 100 GeV ModifiedTsai msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 GeV Nbins=180 100 eV - 100 GeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 GeV in 180 bins @@ -160,9 +163,9 @@ annihil: for e+, integral:1 SubType=5 BuildTable=0 eplus2gg : Emin= 0 eV Emax= 100 GeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 GeV Nbins=180 100 eV - 100 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 GeV in 180 bins @@ -177,13 +180,13 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 GeV in 180 bins Lambda tables from threshold to 100 GeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 GeV + hBrem : Emin= 0 eV Emax= 100 GeV ModifiedMephi ===== Limit on energy threshold has been applied msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 GeV in 180 bins @@ -208,9 +211,9 @@ Use Bearden atomic level energies 0 ====================================================================== msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 GeV Nbins=180 100 eV - 100 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 GeV in 180 bins @@ -222,9 +225,9 @@ ionIoni: for alpha SubType=2 ===== Limit on energy threshold has been applied msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 GeV Nbins=180 100 eV - 100 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 GeV in 180 bins @@ -236,9 +239,9 @@ hIoni: for anti_proton SubType=2 ===== Limit on energy threshold has been applied msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 GeV Nbins=180 100 eV - 100 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 GeV in 180 bins @@ -250,9 +253,9 @@ hIoni: for kaon+ SubType=2 ===== Limit on energy threshold has been applied msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 GeV Nbins=180 100 eV - 100 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 GeV in 180 bins @@ -264,9 +267,9 @@ hIoni: for kaon- SubType=2 ===== Limit on energy threshold has been applied msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 GeV Nbins=180 100 eV - 100 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 GeV in 180 bins @@ -282,7 +285,7 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 GeV in 180 bins Lambda tables from threshold to 100 GeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 GeV + MuBrem : Emin= 0 eV Emax= 100 GeV ModifiedMephi ===== Limit on energy threshold has been applied muPairProd: for mu+ SubType=4 @@ -290,12 +293,12 @@ muPairProd: for mu+ SubType=4 Lambda tables from threshold to 100 GeV, 20 bins/decade, spline: 1 Sampling table 9x1001 from 1 GeV to 0.1 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 GeV + muPairProd : Emin= 0 eV Emax= 100 GeV ModifiedMephi msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 GeV Nbins=180 100 eV - 100 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 GeV in 180 bins @@ -311,7 +314,7 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 GeV in 180 bins Lambda tables from threshold to 100 GeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 GeV + MuBrem : Emin= 0 eV Emax= 100 GeV ModifiedMephi ===== Limit on energy threshold has been applied muPairProd: for mu- SubType=4 @@ -319,18 +322,31 @@ muPairProd: for mu- SubType=4 Lambda tables from threshold to 100 GeV, 20 bins/decade, spline: 1 Sampling table 9x1001 from 1 GeV to 0.1 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 GeV + muPairProd : Emin= 0 eV Emax= 100 GeV ModifiedMephi NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + UseOnlyPhotoEvaporation ? 0 + SkipMissingIsotopes ? 0 + NeglectDoppler ? 0 + DoNotAdjustFinalState ? 0 + ProduceFissionFragments ? 0 + UseWendtFissionModel ? 0 + UseNRESP71Model ? 0 +======================================================= + @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 GeV Nbins=180 100 eV - 100 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 GeV in 180 bins @@ -345,13 +361,13 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 GeV in 180 bins Lambda tables from threshold to 100 GeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 GeV + hBrem : Emin= 0 eV Emax= 100 GeV ModifiedMephi ===== Limit on energy threshold has been applied msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 GeV Nbins=180 100 eV - 100 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 GeV in 180 bins @@ -366,7 +382,7 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 GeV in 180 bins Lambda tables from threshold to 100 GeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 GeV + hBrem : Emin= 0 eV Emax= 100 GeV ModifiedMephi ===== Limit on energy threshold has been applied ========= Table of registered couples ============================ @@ -374,7 +390,7 @@ hBrems: for pi- SubType=3 Index : 0 used in the geometry : Yes Material : Concrete Range cuts : gamma 1 um e- 1 nm e+ 1 um proton 1 um - Energy thresholds : gamma 250 eV e- 250 eV e+ 1.01493 keV proton 100 eV + Energy thresholds : gamma 250 eV e- 250 eV e+ 1.02131 keV proton 100 eV Region(s) which use this couple : DefaultRegionForTheWorld @@ -395,14 +411,14 @@ Index : 2 used in the geometry : Yes Index : 3 used in the geometry : Yes Material : MetalAluminium Range cuts : gamma 1 um e- 1 nm e+ 1 um proton 1 um - Energy thresholds : gamma 250 eV e- 250 eV e+ 1.08005 keV proton 100 eV + Energy thresholds : gamma 250 eV e- 250 eV e+ 1.08638 keV proton 100 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 4 used in the geometry : Yes Material : Steel Range cuts : gamma 1 um e- 1 nm e+ 1 um proton 1 um - Energy thresholds : gamma 250 eV e- 250 eV e+ 5.56977 keV proton 100 eV + Energy thresholds : gamma 250 eV e- 250 eV e+ 5.56091 keV proton 100 eV Region(s) which use this couple : DefaultRegionForTheWorld @@ -423,42 +439,42 @@ Index : 6 used in the geometry : Yes Index : 7 used in the geometry : Yes Material : MetalCopper Range cuts : gamma 1 um e- 1 nm e+ 1 um proton 1 um - Energy thresholds : gamma 250 eV e- 250 eV e+ 6.69738 keV proton 100 eV + Energy thresholds : gamma 250 eV e- 250 eV e+ 6.61021 keV proton 100 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 8 used in the geometry : Yes Material : LXe Range cuts : gamma 1 um e- 1 nm e+ 1 um proton 1 um - Energy thresholds : gamma 250 eV e- 250 eV e+ 874.731 eV proton 100 eV + Energy thresholds : gamma 250 eV e- 250 eV e+ 870.716 eV proton 100 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 9 used in the geometry : Yes Material : MetalLead Range cuts : gamma 1 um e- 1 nm e+ 1 um proton 1 um - Energy thresholds : gamma 1.21946 keV e- 250 eV e+ 6.45177 keV proton 100 eV + Energy thresholds : gamma 1.22592 keV e- 250 eV e+ 6.51042 keV proton 100 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 10 used in the geometry : Yes Material : UraniumSource Range cuts : gamma 1 um e- 1 nm e+ 1 um proton 1 um - Energy thresholds : gamma 1.49473 keV e- 250 eV e+ 8.05541 keV proton 100 eV + Energy thresholds : gamma 1.50367 keV e- 250 eV e+ 8.13314 keV proton 100 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 11 used in the geometry : Yes Material : quartz Range cuts : gamma 1 um e- 1 nm e+ 1 um proton 1 um - Energy thresholds : gamma 250 eV e- 250 eV e+ 803.488 eV proton 100 eV + Energy thresholds : gamma 250 eV e- 250 eV e+ 800.144 eV proton 100 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 12 used in the geometry : Yes Material : CathodeMetalAluminium Range cuts : gamma 1 um e- 1 nm e+ 1 um proton 1 um - Energy thresholds : gamma 250 eV e- 250 eV e+ 1.08005 keV proton 100 eV + Energy thresholds : gamma 250 eV e- 250 eV e+ 1.08638 keV proton 100 eV Region(s) which use this couple : DefaultRegionForTheWorld @@ -479,7 +495,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 10 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 65 + Total energy in LXe: 60 keV + Average light collection time: 17.6859 ns + Number of PMT hits (photoelectron equivalent): 54 + Event summary in file gamma_1000.out ---> End of event: 10 @@ -487,12 +508,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 20 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 61 - Total energy in LXe: 60 keV - Average light collection time: 19.5176 ns - Number of PMT hits (photoelectron equivalent): 69 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 20 @@ -500,7 +516,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 30 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 52 + Total energy in LXe: 60 keV + Average light collection time: 20.7287 ns + Number of PMT hits (photoelectron equivalent): 62 + Event summary in file gamma_1000.out ---> End of event: 30 @@ -532,12 +553,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 70 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 51 - Total energy in LXe: 60 keV - Average light collection time: 18.0471 ns - Number of PMT hits (photoelectron equivalent): 43 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 70 @@ -546,10 +562,10 @@ See commands in /vis/modeling/trajectories/ for other options. Primary Energy: 60 keV First hit in LXe: gamma - Number of hits in LXe: 60 - Total energy in LXe: 60 keV - Average light collection time: 19.1933 ns - Number of PMT hits (photoelectron equivalent): 51 + Number of hits in LXe: 16 + Total energy in LXe: 25.4564 keV + Average light collection time: 17.5472 ns + Number of PMT hits (photoelectron equivalent): 28 Event summary in file gamma_1000.out ---> End of event: 80 @@ -566,12 +582,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 100 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 69 - Total energy in LXe: 60 keV - Average light collection time: 19.4032 ns - Number of PMT hits (photoelectron equivalent): 61 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 100 @@ -588,10 +599,10 @@ See commands in /vis/modeling/trajectories/ for other options. Primary Energy: 60 keV First hit in LXe: gamma - Number of hits in LXe: 63 + Number of hits in LXe: 65 Total energy in LXe: 60 keV - Average light collection time: 19.2767 ns - Number of PMT hits (photoelectron equivalent): 65 + Average light collection time: 19.4078 ns + Number of PMT hits (photoelectron equivalent): 76 Event summary in file gamma_1000.out ---> End of event: 120 @@ -608,7 +619,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 140 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 54 + Total energy in LXe: 60 keV + Average light collection time: 21.8596 ns + Number of PMT hits (photoelectron equivalent): 65 + Event summary in file gamma_1000.out ---> End of event: 140 @@ -616,12 +632,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 150 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 58 - Total energy in LXe: 60 keV - Average light collection time: 21.5151 ns - Number of PMT hits (photoelectron equivalent): 47 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 150 @@ -629,12 +640,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 160 Primary Energy: 60 keV - First hit in LXe: e- - Number of hits in LXe: 13 - Total energy in LXe: 7.1324 keV - Average light collection time: 16.9744 ns - Number of PMT hits (photoelectron equivalent): 5 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 160 @@ -642,7 +648,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 170 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 54 + Total energy in LXe: 60 keV + Average light collection time: 21.3632 ns + Number of PMT hits (photoelectron equivalent): 71 + Event summary in file gamma_1000.out ---> End of event: 170 @@ -650,12 +661,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 180 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 50 - Total energy in LXe: 60 keV - Average light collection time: 18.3384 ns - Number of PMT hits (photoelectron equivalent): 49 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 180 @@ -664,10 +670,10 @@ See commands in /vis/modeling/trajectories/ for other options. Primary Energy: 60 keV First hit in LXe: gamma - Number of hits in LXe: 53 + Number of hits in LXe: 64 Total energy in LXe: 60 keV - Average light collection time: 19.9039 ns - Number of PMT hits (photoelectron equivalent): 50 + Average light collection time: 18.78 ns + Number of PMT hits (photoelectron equivalent): 55 Event summary in file gamma_1000.out ---> End of event: 190 @@ -684,7 +690,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 210 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 28 + Total energy in LXe: 30.2187 keV + Average light collection time: 24.0206 ns + Number of PMT hits (photoelectron equivalent): 35 + Event summary in file gamma_1000.out ---> End of event: 210 @@ -700,7 +711,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 230 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 26 + Total energy in LXe: 30.5479 keV + Average light collection time: 20.9441 ns + Number of PMT hits (photoelectron equivalent): 34 + Event summary in file gamma_1000.out ---> End of event: 230 @@ -717,10 +733,10 @@ See commands in /vis/modeling/trajectories/ for other options. Primary Energy: 60 keV First hit in LXe: gamma - Number of hits in LXe: 56 + Number of hits in LXe: 53 Total energy in LXe: 60 keV - Average light collection time: 19.5757 ns - Number of PMT hits (photoelectron equivalent): 57 + Average light collection time: 18.5163 ns + Number of PMT hits (photoelectron equivalent): 99 Event summary in file gamma_1000.out ---> End of event: 250 @@ -729,7 +745,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 260 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 56 + Total energy in LXe: 60 keV + Average light collection time: 17.9537 ns + Number of PMT hits (photoelectron equivalent): 64 + Event summary in file gamma_1000.out ---> End of event: 260 @@ -746,10 +767,10 @@ See commands in /vis/modeling/trajectories/ for other options. Primary Energy: 60 keV First hit in LXe: gamma - Number of hits in LXe: 58 - Total energy in LXe: 60 keV - Average light collection time: 21.5468 ns - Number of PMT hits (photoelectron equivalent): 57 + Number of hits in LXe: 8 + Total energy in LXe: 11.6607 keV + Average light collection time: 18.7883 ns + Number of PMT hits (photoelectron equivalent): 12 Event summary in file gamma_1000.out ---> End of event: 280 @@ -758,12 +779,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 290 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 37 - Total energy in LXe: 30.2187 keV - Average light collection time: 14.3239 ns - Number of PMT hits (photoelectron equivalent): 33 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 290 @@ -772,10 +788,10 @@ See commands in /vis/modeling/trajectories/ for other options. Primary Energy: 60 keV First hit in LXe: gamma - Number of hits in LXe: 51 - Total energy in LXe: 60 keV - Average light collection time: 20.5417 ns - Number of PMT hits (photoelectron equivalent): 72 + Number of hits in LXe: 23 + Total energy in LXe: 20.2658 keV + Average light collection time: 12.9135 ns + Number of PMT hits (photoelectron equivalent): 18 Event summary in file gamma_1000.out ---> End of event: 300 @@ -792,12 +808,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 320 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 50 - Total energy in LXe: 60 keV - Average light collection time: 16.5742 ns - Number of PMT hits (photoelectron equivalent): 50 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 320 @@ -805,7 +816,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 330 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 35 + Total energy in LXe: 42.875 keV + Average light collection time: 19.7416 ns + Number of PMT hits (photoelectron equivalent): 40 + Event summary in file gamma_1000.out ---> End of event: 330 @@ -813,12 +829,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 340 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 59 - Total energy in LXe: 60 keV - Average light collection time: 17.9954 ns - Number of PMT hits (photoelectron equivalent): 63 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 340 @@ -834,12 +845,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 360 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 23 - Total energy in LXe: 30.5479 keV - Average light collection time: 16.7678 ns - Number of PMT hits (photoelectron equivalent): 23 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 360 @@ -847,7 +853,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 370 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 51 + Total energy in LXe: 60 keV + Average light collection time: 18.8961 ns + Number of PMT hits (photoelectron equivalent): 76 + Event summary in file gamma_1000.out ---> End of event: 370 @@ -855,7 +866,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 380 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 43 + Total energy in LXe: 43.9996 keV + Average light collection time: 25.7263 ns + Number of PMT hits (photoelectron equivalent): 33 + Event summary in file gamma_1000.out ---> End of event: 380 @@ -863,7 +879,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 390 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 24 + Total energy in LXe: 26.4335 keV + Average light collection time: 17.4733 ns + Number of PMT hits (photoelectron equivalent): 16 + Event summary in file gamma_1000.out ---> End of event: 390 @@ -871,12 +892,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 400 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 91 - Total energy in LXe: 58.6274 keV - Average light collection time: 18.7551 ns - Number of PMT hits (photoelectron equivalent): 53 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 400 @@ -885,10 +901,10 @@ See commands in /vis/modeling/trajectories/ for other options. Primary Energy: 60 keV First hit in LXe: gamma - Number of hits in LXe: 62 + Number of hits in LXe: 56 Total energy in LXe: 60 keV - Average light collection time: 25.8271 ns - Number of PMT hits (photoelectron equivalent): 59 + Average light collection time: 21.0589 ns + Number of PMT hits (photoelectron equivalent): 51 Event summary in file gamma_1000.out ---> End of event: 410 @@ -897,12 +913,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 420 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 59 - Total energy in LXe: 60 keV - Average light collection time: 21.8307 ns - Number of PMT hits (photoelectron equivalent): 47 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 420 @@ -919,10 +930,10 @@ See commands in /vis/modeling/trajectories/ for other options. Primary Energy: 60 keV First hit in LXe: gamma - Number of hits in LXe: 16 - Total energy in LXe: 30.2187 keV - Average light collection time: 16.5877 ns - Number of PMT hits (photoelectron equivalent): 31 + Number of hits in LXe: 56 + Total energy in LXe: 60 keV + Average light collection time: 19.9232 ns + Number of PMT hits (photoelectron equivalent): 47 Event summary in file gamma_1000.out ---> End of event: 440 @@ -932,10 +943,10 @@ See commands in /vis/modeling/trajectories/ for other options. Primary Energy: 60 keV First hit in LXe: gamma - Number of hits in LXe: 62 + Number of hits in LXe: 54 Total energy in LXe: 60 keV - Average light collection time: 15.4194 ns - Number of PMT hits (photoelectron equivalent): 44 + Average light collection time: 15.7711 ns + Number of PMT hits (photoelectron equivalent): 75 Event summary in file gamma_1000.out ---> End of event: 450 @@ -953,10 +964,10 @@ See commands in /vis/modeling/trajectories/ for other options. Primary Energy: 60 keV First hit in LXe: gamma - Number of hits in LXe: 53 + Number of hits in LXe: 52 Total energy in LXe: 60 keV - Average light collection time: 17.6083 ns - Number of PMT hits (photoelectron equivalent): 67 + Average light collection time: 20.3743 ns + Number of PMT hits (photoelectron equivalent): 45 Event summary in file gamma_1000.out ---> End of event: 470 @@ -973,12 +984,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 490 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 60 - Total energy in LXe: 60 keV - Average light collection time: 16.3806 ns - Number of PMT hits (photoelectron equivalent): 60 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 490 @@ -986,12 +992,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 500 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 57 - Total energy in LXe: 60 keV - Average light collection time: 23.6077 ns - Number of PMT hits (photoelectron equivalent): 65 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 500 @@ -1000,10 +1001,10 @@ See commands in /vis/modeling/trajectories/ for other options. Primary Energy: 60 keV First hit in LXe: gamma - Number of hits in LXe: 18 - Total energy in LXe: 26.4335 keV - Average light collection time: 20.8887 ns - Number of PMT hits (photoelectron equivalent): 29 + Number of hits in LXe: 74 + Total energy in LXe: 60 keV + Average light collection time: 18.8738 ns + Number of PMT hits (photoelectron equivalent): 69 Event summary in file gamma_1000.out ---> End of event: 510 @@ -1012,12 +1013,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 520 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 64 - Total energy in LXe: 60 keV - Average light collection time: 24.3046 ns - Number of PMT hits (photoelectron equivalent): 45 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 520 @@ -1025,12 +1021,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 530 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 20 - Total energy in LXe: 15.7621 keV - Average light collection time: 10.2769 ns - Number of PMT hits (photoelectron equivalent): 15 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 530 @@ -1038,12 +1029,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 540 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 47 - Total energy in LXe: 60 keV - Average light collection time: 22.9699 ns - Number of PMT hits (photoelectron equivalent): 56 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 540 @@ -1059,7 +1045,10 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 560 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: e- + Number of hits in LXe: 3 + Total energy in LXe: 251.922 eV + Event summary in file gamma_1000.out ---> End of event: 560 @@ -1083,7 +1072,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 590 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 59 + Total energy in LXe: 60 keV + Average light collection time: 22.1566 ns + Number of PMT hits (photoelectron equivalent): 72 + Event summary in file gamma_1000.out ---> End of event: 590 @@ -1091,7 +1085,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 600 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 34 + Total energy in LXe: 30.5479 keV + Average light collection time: 28.0193 ns + Number of PMT hits (photoelectron equivalent): 23 + Event summary in file gamma_1000.out ---> End of event: 600 @@ -1099,12 +1098,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 610 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 64 - Total energy in LXe: 60 keV - Average light collection time: 20.3706 ns - Number of PMT hits (photoelectron equivalent): 85 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 610 @@ -1128,12 +1122,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 640 Primary Energy: 60 keV - First hit in LXe: e- - Number of hits in LXe: 94 - Total energy in LXe: 45.1323 keV - Average light collection time: 23.8291 ns - Number of PMT hits (photoelectron equivalent): 54 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 640 @@ -1141,12 +1130,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 650 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 72 - Total energy in LXe: 60 keV - Average light collection time: 22.773 ns - Number of PMT hits (photoelectron equivalent): 161 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 650 @@ -1178,12 +1162,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 690 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 49 - Total energy in LXe: 60 keV - Average light collection time: 16.9408 ns - Number of PMT hits (photoelectron equivalent): 55 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 690 @@ -1199,12 +1178,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 710 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 68 - Total energy in LXe: 60 keV - Average light collection time: 19.1814 ns - Number of PMT hits (photoelectron equivalent): 63 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 710 @@ -1212,12 +1186,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 720 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 59 - Total energy in LXe: 60 keV - Average light collection time: 19.6445 ns - Number of PMT hits (photoelectron equivalent): 44 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 720 @@ -1233,12 +1202,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 740 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 41 - Total energy in LXe: 60 keV - Average light collection time: 23.8298 ns - Number of PMT hits (photoelectron equivalent): 81 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 740 @@ -1246,12 +1210,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 750 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 50 - Total energy in LXe: 60 keV - Average light collection time: 24.0195 ns - Number of PMT hits (photoelectron equivalent): 59 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 750 @@ -1267,12 +1226,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 770 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 29 - Total energy in LXe: 30.2187 keV - Average light collection time: 25.6629 ns - Number of PMT hits (photoelectron equivalent): 30 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 770 @@ -1280,12 +1234,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 780 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 14 - Total energy in LXe: 10.2198 keV - Average light collection time: 15.6699 ns - Number of PMT hits (photoelectron equivalent): 15 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 780 @@ -1293,12 +1242,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 790 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 47 - Total energy in LXe: 45.0345 keV - Average light collection time: 20.8499 ns - Number of PMT hits (photoelectron equivalent): 39 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 790 @@ -1306,12 +1250,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 800 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 60 - Total energy in LXe: 60 keV - Average light collection time: 21.0507 ns - Number of PMT hits (photoelectron equivalent): 54 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 800 @@ -1319,7 +1258,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 810 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 65 + Total energy in LXe: 60 keV + Average light collection time: 17.2532 ns + Number of PMT hits (photoelectron equivalent): 71 + Event summary in file gamma_1000.out ---> End of event: 810 @@ -1343,12 +1287,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 840 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 46 - Total energy in LXe: 60 keV - Average light collection time: 19.0776 ns - Number of PMT hits (photoelectron equivalent): 51 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 840 @@ -1356,12 +1295,7 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 850 Primary Energy: 60 keV - First hit in LXe: gamma - Number of hits in LXe: 24 - Total energy in LXe: 25.592 keV - Average light collection time: 20.9687 ns - Number of PMT hits (photoelectron equivalent): 23 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 850 @@ -1377,7 +1311,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 870 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 57 + Total energy in LXe: 60 keV + Average light collection time: 25.4721 ns + Number of PMT hits (photoelectron equivalent): 46 + Event summary in file gamma_1000.out ---> End of event: 870 @@ -1393,7 +1332,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 890 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 29 + Total energy in LXe: 30.2187 keV + Average light collection time: 22.8574 ns + Number of PMT hits (photoelectron equivalent): 36 + Event summary in file gamma_1000.out ---> End of event: 890 @@ -1433,7 +1377,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 940 Primary Energy: 60 keV - Total energy in LXe: 0 eV + First hit in LXe: gamma + Number of hits in LXe: 61 + Total energy in LXe: 60 keV + Average light collection time: 20.7839 ns + Number of PMT hits (photoelectron equivalent): 38 + Event summary in file gamma_1000.out ---> End of event: 940 @@ -1458,10 +1407,10 @@ See commands in /vis/modeling/trajectories/ for other options. Primary Energy: 60 keV First hit in LXe: gamma - Number of hits in LXe: 53 - Total energy in LXe: 60 keV - Average light collection time: 19.1488 ns - Number of PMT hits (photoelectron equivalent): 70 + Number of hits in LXe: 29 + Total energy in LXe: 30.2187 keV + Average light collection time: 13.7938 ns + Number of PMT hits (photoelectron equivalent): 31 Event summary in file gamma_1000.out ---> End of event: 970 @@ -1478,14 +1427,12 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 990 Primary Energy: 60 keV - First hit in LXe: e- - Number of hits in LXe: 52 - Total energy in LXe: 30.4145 keV - Average light collection time: 19.8044 ns - Number of PMT hits (photoelectron equivalent): 31 - Event summary in file gamma_1000.out + Total energy in LXe: 0 eV ---> End of event: 990 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/advanced/xray_fluorescence/CMakeLists.txt b/examples/advanced/xray_fluorescence/CMakeLists.txt index e6646ae741..4401a111b4 100644 --- a/examples/advanced/xray_fluorescence/CMakeLists.txt +++ b/examples/advanced/xray_fluorescence/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(xray_fluorescence) #---------------------------------------------------------------------------- @@ -29,7 +32,7 @@ set(CMAKE_MODULE_PATH ${PROJECT_SOURCE_DIR}/cmake ${CMAKE_MODULE_PATH}) #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) @@ -46,7 +49,7 @@ target_link_libraries(XrayFluo ${Geant4_LIBRARIES} ) # relies on these scripts being in the current working directory. # set(xray_fluorescence_SCRIPTS - initInter.mac livermore.mac vis.mac SILIefficiency.dat SILIresponse.dat + initInter.mac livermore.mac vis.mac SILIefficiency.dat SILIresponse.dat B_flare.dat C_flare.dat M_flare.dat response.dat ) diff --git a/examples/advanced/xray_fluorescence/FlatSpectrum.dat b/examples/advanced/xray_fluorescence/FlatSpectrum.dat old mode 100755 new mode 100644 diff --git a/examples/advanced/xray_fluorescence/History b/examples/advanced/xray_fluorescence/History index 662e526c9a..db8c54b95b 100644 --- a/examples/advanced/xray_fluorescence/History +++ b/examples/advanced/xray_fluorescence/History @@ -14,6 +14,9 @@ and keep track of all category-tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +02.11.2020 Ben Morgan Tag:XRayFluo-V10-06-00 +- Support same CMake version range as core Geant4 + 30.08.2019 Susanna Guatelli Tag:XRayFluo-V10-05-01 - G4VIS_USE and G4UI_USE deleted @@ -42,16 +45,16 @@ and keep track of all category-tags. - Updated macro livermore.mac 06-06-2014 L.Pandola Tag: XrayFluo-V10-00-10 -- Changed verbosity in livermore.mac to bring the output +- Changed verbosity in livermore.mac to bring the output below 1 MB (as requested for system testing) 20-05-2014 L.Pandola Tag: XrayFluo-V10-00-09 -- Migrated SteppingVerbose, registered now through the +- Migrated SteppingVerbose, registered now through the ActionInitialization class. 16-05-2014 L.Pandola Tag: XrayFluo-V10-00-08 - Real MT migration: use the G4MTRunManager -- Add PhysicsHasBeenChanged() to the commands of the physics list +- Add PhysicsHasBeenChanged() to the commands of the physics list messenger 13-05-2014 L.Pandola Tag: XrayFluo-V10-00-07 @@ -61,17 +64,17 @@ below 1 MB (as requested for system testing) 08-05-2014 L.Pandola Tag: XrayFluo-V10-00-06 - Updated hit class to make it MT-compliant - Fixed the procedure for the update of geometry between runs -- Make const methods in the RunAction. Revised logic of RunAction: only +- Make const methods in the RunAction. Revised logic of RunAction: only the master RunAction loads data - Take RunAction pointer in XrayFluoPrimaryGeneratorAction - Remove unused verbosity in XrayFluoDataSet -- Revise logic for reading external events (MT-compliant). +- Revise logic for reading external events (MT-compliant). - Protect methods of the singleton analysis class by Mutex. 22-04-2014 L.Pandola Tag: XrayFluo-V10-00-05 -- Created and integrated an action initialization class. -- Make const methods and add ConstructSDandField() in the detector - construction classes. +- Created and integrated an action initialization class. +- Make const methods and add ConstructSDandField() in the detector + construction classes. - Getting prepared for the MT migration 17-04-2014 L.Pandola Tag: XrayFluo-V10-00-04 @@ -80,7 +83,7 @@ the master RunAction loads data (following the fix in analysis-V10-00-09) 15-04-2014 L.Pandola Tag: XrayFluo-V10-00-03 -- Remove compiler warning which caused the rejection of +- Remove compiler warning which caused the rejection of XrayFluo-V10-00-02 14-04-2014 L.Pandola Tag: XrayFluo-V10-00-02 @@ -89,23 +92,23 @@ Method XrayFluoAnalysisManager::LoadGunData() is restored by using the new G4AnalysisReader interface. 13-12-2013 L.Pandola Tag: XrayFluo-V10-00-01 -- First partial migration to g4tools (internal tag). Removed AIDA -dependency. Output works properly, but the application is presently -unable to use the method +- First partial migration to g4tools (internal tag). Removed AIDA +dependency. Output works properly, but the application is presently +unable to use the method XrayFluoAnalysisManager::LoadGunData() to open a phase space file and feed data to the primary generator. 13-12-2013 L.Pandola Tag: XrayFluo-V10-00-00 -- Fix shadowed variables and compilation errors due to the #include of -G4SystemOfUnits. Do not show up in system testing, but only when AIDA +- Fix shadowed variables and compilation errors due to the #include of +G4SystemOfUnits. Do not show up in system testing, but only when AIDA is available. 25-11-2013 G.Folger Tag: XrayFluo-V09-06-02 -- Fix one more typo in XrayFluoDetectorConstruction.cc: G4cout replaced by G4endl; +- Fix one more typo in XrayFluoDetectorConstruction.cc: G4cout replaced by G4endl; 22-11-2013 G.Folger Tag: XrayFluo-V09-06-01 -- Fix typo in XrayFluoDetectorConstruction.cc: G4cout replaced by G4endl; - +- Fix typo in XrayFluoDetectorConstruction.cc: G4cout replaced by G4endl; + 18-06-2013 A. Dotti Tag: XrayFluo-V09-06-00 - Fixed compilation warnings with most recent clang compiler (unused private data fields) @@ -126,7 +129,7 @@ is available. - Fixed compilation warnings for extra parenthesis from MacOSX/clang. 15-12-2011 P. Mato Tag: XrayFluo-V09-05-01 -- XrayFluoNistMaterials.cc +- XrayFluoNistMaterials.cc Fixed the induced memory corruption problem only intermittently visible on MacOSX. The vectors to define materials needed to be cleared properly. @@ -154,7 +157,7 @@ is available. 07-02-2011 A.Mantero Tag: XrayFluo-V09-04-00 - migrated physicslist to standard EM+Fluo (with PIXE) - added several files (XrayFluoPhysListEmStandardFLUO.cc, XrayFluoStepMax.cc - XrayFluoStepMaxMessenger.cc and relative headers) + XrayFluoStepMaxMessenger.cc and relative headers) and modified accordingly others. 18-11-2010 G.A.P.Cirrone, Tag: XrayFluo-V09-03-03 @@ -188,10 +191,10 @@ is available. 10-12-2004 Alfonso Mantero: XrayFluo-V06-02-01 - Can now be used in batch mode without histograms. -8-12-2004 Alfonso Mantero: XrayFluo-V06-02-00 +8-12-2004 Alfonso Mantero: XrayFluo-V06-02-00 - General update, including migration to . -4-12-2003 Susanna Guatelli: XrayFluo-V05-02-08 +4-12-2003 Susanna Guatelli: XrayFluo-V05-02-08 - Removed the compilation warnings, introduction of VRML viewer. This tag referes to the tag examples-V05-02-07 prepared for Geant4 6.0 release. diff --git a/examples/advanced/xray_fluorescence/xray_fluorescence.out b/examples/advanced/xray_fluorescence/xray_fluorescence.out index 2907f4c9a0..4dd0c38d0f 100644 --- a/examples/advanced/xray_fluorescence/xray_fluorescence.out +++ b/examples/advanced/xray_fluorescence/xray_fluorescence.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -14,28 +14,28 @@ Using the sequential Run Manager XrayFluoAnalysisManager created -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. G4Material WARNING: duplicate name of material Dolorite -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. ***** Table : Nb of materials = 26 ***** @@ -72,7 +72,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 0.15 % ElmAbundance 0.06 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 8.14 % ElmAbundance 7.55 % @@ -302,7 +302,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 0.15 % ElmAbundance 0.06 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 8.06 % ElmAbundance 7.53 % @@ -520,7 +520,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 0.19 % ElmAbundance 0.08 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 3.49 % ElmAbundance 3.31 % @@ -728,7 +728,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 0.19 % ElmAbundance 0.08 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 3.48 % ElmAbundance 3.31 % @@ -930,7 +930,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 6.76 % ElmAbundance 5.76 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 0.08 % ElmAbundance 0.08 % @@ -1204,7 +1204,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 6.74 % ElmAbundance 5.75 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 0.08 % ElmAbundance 0.08 % @@ -1272,7 +1272,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 10.33 % ElmAbundance 8.22 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 2.42 % ElmAbundance 2.13 % @@ -1552,7 +1552,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 10.28 % ElmAbundance 8.21 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 2.41 % ElmAbundance 2.13 % @@ -1620,7 +1620,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 13.29 % ElmAbundance 10.93 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 0.24 % ElmAbundance 0.22 % @@ -1680,7 +1680,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 10.38 % ElmAbundance 8.51 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 1.93 % ElmAbundance 1.76 % @@ -1739,7 +1739,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 11.34 % ElmAbundance 4.52 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 3.50 % ElmAbundance 3.21 % @@ -1803,7 +1803,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 0.23 % ElmAbundance 0.09 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 2.35 % ElmAbundance 2.17 % @@ -1863,7 +1863,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 12.24 % ElmAbundance 4.99 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 8.38 % ElmAbundance 7.86 % @@ -1927,7 +1927,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 0.15 % ElmAbundance 0.06 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 8.37 % ElmAbundance 7.92 % @@ -1994,7 +1994,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 1.76 % ElmAbundance 1.70 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 2.45 % ElmAbundance 2.24 % @@ -2049,7 +2049,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ---> Element: Pd (Pd) Z = 46.0 N = 106 A = 106.415 g/mole ---> Isotope: Pd102 Z = 46 N = 102 A = 101.91 g/mole abundance: 1.020 % ---> Isotope: Pd104 Z = 46 N = 104 A = 103.90 g/mole abundance: 11.140 % - ---> Isotope: Pd105 Z = 46 N = 105 A = 104.91 g/mole abundance: 22.330 % + ---> Isotope: Pd105 Z = 46 N = 105 A = 104.90 g/mole abundance: 22.330 % ---> Isotope: Pd106 Z = 46 N = 106 A = 105.90 g/mole abundance: 27.330 % ---> Isotope: Pd108 Z = 46 N = 108 A = 107.90 g/mole abundance: 26.460 % ---> Isotope: Pd110 Z = 46 N = 110 A = 109.91 g/mole abundance: 11.720 % @@ -2063,11 +2063,11 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ---> Isotope: Cd112 Z = 48 N = 112 A = 111.90 g/mole abundance: 24.130 % ---> Isotope: Cd113 Z = 48 N = 113 A = 112.90 g/mole abundance: 12.220 % ---> Isotope: Cd114 Z = 48 N = 114 A = 113.90 g/mole abundance: 28.730 % - ---> Isotope: Cd116 Z = 48 N = 116 A = 115.90 g/mole abundance: 7.490 % + ---> Isotope: Cd116 Z = 48 N = 116 A = 115.91 g/mole abundance: 7.490 % ElmMassFraction: 0.02 % ElmAbundance 0.00 % ---> Element: Ag (Ag) Z = 47.0 N = 108 A = 107.868 g/mole - ---> Isotope: Ag107 Z = 47 N = 107 A = 106.90 g/mole abundance: 51.839 % + ---> Isotope: Ag107 Z = 47 N = 107 A = 106.91 g/mole abundance: 51.839 % ---> Isotope: Ag109 Z = 47 N = 109 A = 108.91 g/mole abundance: 48.161 % ElmMassFraction: 0.05 % ElmAbundance 0.01 % @@ -2133,7 +2133,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 0.13 % ElmAbundance 0.06 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 8.35 % ElmAbundance 7.89 % @@ -2195,7 +2195,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 8.53 % ElmAbundance 52.63 % - Material: Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -2242,7 +2242,7 @@ G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found o ElmMassFraction: 7.10 % ElmAbundance 5.87 % ---> Element: Mg (Mg) Z = 12.0 N = 24 A = 24.305 g/mole - ---> Isotope: Mg24 Z = 12 N = 24 A = 23.98 g/mole abundance: 78.990 % + ---> Isotope: Mg24 Z = 12 N = 24 A = 23.99 g/mole abundance: 78.990 % ---> Isotope: Mg25 Z = 12 N = 25 A = 24.99 g/mole abundance: 10.000 % ---> Isotope: Mg26 Z = 12 N = 26 A = 25.98 g/mole abundance: 11.010 % ElmMassFraction: 5.90 % ElmAbundance 5.42 % @@ -2307,10 +2307,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -2429,10 +2431,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -2456,7 +2459,7 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 @@ -2465,10 +2468,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -2491,7 +2495,7 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -2504,9 +2508,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -2522,7 +2526,7 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for proton SubType=4 @@ -2530,7 +2534,7 @@ hPairProd: for proton SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -2543,9 +2547,9 @@ nuclearStopping: for proton SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -2561,9 +2565,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -2580,9 +2584,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -2598,7 +2602,7 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for anti_proton SubType=4 @@ -2606,7 +2610,7 @@ hPairProd: for anti_proton SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -2615,9 +2619,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -2633,7 +2637,7 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for kaon+ SubType=4 @@ -2641,7 +2645,7 @@ hPairProd: for kaon+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -2650,9 +2654,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -2668,7 +2672,7 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for kaon- SubType=4 @@ -2676,7 +2680,7 @@ hPairProd: for kaon- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -2685,9 +2689,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -2704,7 +2708,7 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied muPairProd: for mu+ SubType=4 @@ -2712,7 +2716,7 @@ muPairProd: for mu+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -2721,9 +2725,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -2740,7 +2744,7 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied muPairProd: for mu- SubType=4 @@ -2748,7 +2752,7 @@ muPairProd: for mu- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -2757,9 +2761,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -2775,7 +2779,7 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for pi+ SubType=4 @@ -2783,7 +2787,7 @@ hPairProd: for pi+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -2792,9 +2796,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -2810,7 +2814,7 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for pi- SubType=4 @@ -2818,7 +2822,7 @@ hPairProd: for pi- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -2895,13 +2899,13 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Percent Total CPU System CPU Memory Volume ------- ---------- ---------- -------- ---------- 0.00 0.00 0.00 1k World - 0.00 0.00 0.00 1k HPGeDetector + 0.00 0.00 0.00 0k HPGeDetector Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume ------- -------- ------ ------ -------- ---------- ---------- - 69.55 1k 3 9 24 0.00 World - 30.45 0k 2 3 11 0.00 HPGeDetector + 69.08 0k 3 9 24 0.00 World + 30.92 0k 2 3 11 0.00 HPGeDetector G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. @@ -2918,12 +2922,15 @@ Created histos Run terminated. Run Summary Number of events processed : 10 - User=1.910000s Real=1.925353s Sys=0.000000s + User=0.730000s Real=0.749298s Sys=0.000000s Going to save histograms -... write Root file : xrayfluo.root - done -... close Root file : xrayfluo.root - done +... write file : xrayfluo.root - done +... close file : xrayfluo.root - done /vis/viewer/update WARNING: command "/vis/viewer/update" could not be applied: no current viewer. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... visManager deleted @@ -2950,12 +2957,12 @@ Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.000961 MB Pool ID '15G4HCofThisEvent', size : 0.000961 MB Pool ID '16G4HitsCollection', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.325 MB -Pool ID '7G4Track', size : 0.65 MB +Pool ID '17G4DynamicParticle', size : 0.321 MB +Pool ID '7G4Track', size : 0.642 MB Pool ID '18G4TouchableHistory', size : 0.000961 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Number of memory pools allocated: 11 of which, static: 0 -Dynamic pools deleted: 11 / Total memory freed: 0.99 MB +Dynamic pools deleted: 11 / Total memory freed: 0.98 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/advanced/xray_telescope/CMakeLists.txt b/examples/advanced/xray_telescope/CMakeLists.txt index b2e38d1a97..804d5ebc53 100644 --- a/examples/advanced/xray_telescope/CMakeLists.txt +++ b/examples/advanced/xray_telescope/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(xray_telescope) #---------------------------------------------------------------------------- @@ -24,7 +27,7 @@ include(${Geant4_USE_FILE}) #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) diff --git a/examples/advanced/xray_telescope/History b/examples/advanced/xray_telescope/History index 76c3675ec8..e4dccbf586 100644 --- a/examples/advanced/xray_telescope/History +++ b/examples/advanced/xray_telescope/History @@ -15,9 +15,15 @@ committal in the CVS repository ! ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +17.11.2020 S. Guatelli, tag xraytel-V10-06-01 + Migration to G4RunManagerFactory + +02.11.2020 B.Morgan, tag xraytel-V10-06-00 + Support same CMake version range as core Geant4 + 30.08.2019 S. Guatelli, tag xraytel-V10-05-00 G4VIS_USE and G4UI_USE deleted - + 10.05.2018 B.Morgan, tag xraytel-V10-04-00 Include G4Types before use of G4MULTITHREADED. For forward compatibility with move to #defines over -D for G4 preprocessor @@ -34,7 +40,7 @@ committal in the CVS repository ! Migration to new MT compliant GPS 23.05.2014 Luciano Pandola, tag xraytel-V10-00-02 - Fix compiler warning which caused the rejection + Fix compiler warning which caused the rejection of tag xraytel-V10-00-01 22.05.2014 Luciano Pandola, tag xraytel-V10-00-01 @@ -45,19 +51,19 @@ committal in the CVS repository ! 21.05.2014 Luciano Pandola, tag xraytel-V10-00-00 Added ActionInitialization class - Move the method Update() from RunAction (thread-local) to - Analysis (global) + Move the method Update() from RunAction (thread-local) to + Analysis (global) Protect analysis singleton by Mutex Changed named scheme of output objects 19.03.2013 Luciano Pandola, tag xraytel-V09-06-00 - Migrated analysis to g4tools (removed AIDA dependency) - and other small cosmetics. CMakeLists.txt, GNUmakefile + Migrated analysis to g4tools (removed AIDA dependency) + and other small cosmetics. CMakeLists.txt, GNUmakefile and README updated accordingly 26.10.2012 Luciano Pandola, tag xraytel-V09-05-01 - Edit main(): added #ifdef to protect G4VisExecutive and - G4UIExecutive. + Edit main(): added #ifdef to protect G4VisExecutive and + G4UIExecutive. Create CMakeLists.txt file 12.10.2012 Gabriele Cosmo, Tag xraytel-V09-05-00 @@ -111,12 +117,12 @@ committal in the CVS repository ! Small design iteration by MGP implemented 07.11.2001 - RN, tag xraytel-V02-00-13 - Cleaned up code to avoid compilation warnings arising + Cleaned up code to avoid compilation warnings arising from "ANSI" and "pedantic" options Implemented new "/vis" commands in macro files 07.11.2001 - RN, tag xraytel-V02-00-12 - Error tag, same as 11 + Error tag, same as 11 18.06.2001 - RN, tag xraytel-V02-00-11 tested with latest global tag geant4-03-01-ref-02 @@ -129,24 +135,24 @@ committal in the CVS repository ! Removed longsection.macro file from cvs 30.11.2000 - RN, tag xraytel-V02-00-08 - Implemented AnalysisManager class and related histograming + Implemented AnalysisManager class and related histograming code. Analysis is limited to the Lizard package for now. 16.11.2000 - RN, tag xraytel-V02-00-07 Removed analysis directory -16.11.2000 - RN, tag xraytel-V02-00-06 +16.11.2000 - RN, tag xraytel-V02-00-06 Replace standard gun with General Particle Source Remove all code related to old Histogram implementation Modified all macros to work with GPS Cleaned GNUmakefile Started drafting README file -08.11.2000 - RN, tag xraytel-V02-00-05 +08.11.2000 - RN, tag xraytel-V02-00-05 Tydied up macros Small bug fixes to compile on Linux, SUN and DEC platforms -06.11.2000 - RN, tag xraytel-V02-00-04 +06.11.2000 - RN, tag xraytel-V02-00-04 Tydied up code added headers 18.10.2000 - RN, tag xraytel-V02-00-03 diff --git a/examples/advanced/xray_telescope/XrayTel.cc b/examples/advanced/xray_telescope/XrayTel.cc index 97a91fa98d..2101bbc0f0 100644 --- a/examples/advanced/xray_telescope/XrayTel.cc +++ b/examples/advanced/xray_telescope/XrayTel.cc @@ -76,13 +76,7 @@ // ********************************************************************** #include "G4Types.hh" - -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif - +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "XrayTelDetectorConstruction.hh" #include "XrayTelPhysicsList.hh" @@ -93,12 +87,10 @@ int main( int argc, char** argv ) { // Construct the default run manager -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif - + auto* runManager = G4RunManagerFactory::CreateRunManager(); + G4int nThreads = 4; + runManager->SetNumberOfThreads(nThreads); + // set mandatory initialization classes runManager->SetUserInitialization(new XrayTelDetectorConstruction ) ; runManager->SetUserInitialization(new XrayTelPhysicsList); diff --git a/examples/advanced/xray_telescope/xray_telescope.out b/examples/advanced/xray_telescope/xray_telescope.out index 1b571ab6ba..452fc63149 100644 --- a/examples/advanced/xray_telescope/xray_telescope.out +++ b/examples/advanced/xray_telescope/xray_telescope.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +27,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -81,9 +84,9 @@ conv: for gamma SubType=14 BuildTable=1 BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -101,9 +104,9 @@ eBrem: for e- SubType=3 eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -125,9 +128,9 @@ annihil: for e+, integral:1 SubType=5 BuildTable=0 eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -141,19 +144,19 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -165,9 +168,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -178,9 +181,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -191,9 +194,9 @@ hIoni: for anti_proton SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -204,9 +207,9 @@ hIoni: for kaon+ SubType=2 BetheBloch : Emin=1.05231 MeV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -217,9 +220,9 @@ hIoni: for kaon- SubType=2 BetheBloch : Emin=1.05231 MeV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -234,19 +237,19 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -261,19 +264,19 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -287,19 +290,19 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -313,14 +316,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi ========= Table of registered couples ============================ @@ -348,28 +351,28 @@ Index : 2 used in the geometry : Yes Index : 3 used in the geometry : Yes Material : Aluminium Range cuts : gamma 1 m e- 1 m e+ 1 m proton 2 mm - Energy thresholds : gamma 10 GeV e- 1.18852 GeV e+ 1.1417 GeV proton 200 keV + Energy thresholds : gamma 10 GeV e- 1.19608 GeV e+ 1.13347 GeV proton 200 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 4 used in the geometry : Yes Material : Carbon Fibre Range cuts : gamma 1 m e- 1 m e+ 1 m proton 2 mm - Energy thresholds : gamma 3.31962 MeV e- 774.181 MeV e+ 743.686 MeV proton 200 keV + Energy thresholds : gamma 3.23215 MeV e- 777.993 MeV e+ 737.272 MeV proton 200 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 5 used in the geometry : Yes Material : Titanium Range cuts : gamma 1 m e- 1 m e+ 1 m proton 2 mm - Energy thresholds : gamma 10 GeV e- 6.0108 GeV e+ 5.6972 GeV proton 200 keV + Energy thresholds : gamma 10 GeV e- 6.00061 GeV e+ 5.68653 GeV proton 200 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 6 used in the geometry : Yes Material : Silicon Range cuts : gamma 1 m e- 1 m e+ 1 m proton 2 mm - Energy thresholds : gamma 10 GeV e- 1.01203 GeV e+ 972.168 MeV proton 200 keV + Energy thresholds : gamma 10 GeV e- 1.01792 GeV e+ 964.644 MeV proton 200 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -385,9 +388,12 @@ Opening output file xraytel ... done Run terminated. Run Summary Number of events processed : 1000 - User=0.030000s Real=0.027498s Sys=0.000000s + User=0.010000s Real=0.021192s Sys=0.000000s ########################################## WARNING: command "/vis/viewer/update" could not be applied: no current viewer. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. diff --git a/examples/basic/.README.txt b/examples/basic/.README.txt index 4789148642..b80580b167 100644 --- a/examples/basic/.README.txt +++ b/examples/basic/.README.txt @@ -49,7 +49,7 @@ development. G4 sensitive detector and hits - Geant4 physics list (FTFP_BERT) with step limiter - UI commans defined using G4GenericMessenger - - Histograms (1D, 2D) and ntuple saved in the output file + - Histograms (1D, 2D) and ntuple saved in two output files - Started from extended/analysis/A01 */ diff --git a/examples/basic/B1/CMakeLists.txt b/examples/basic/B1/CMakeLists.txt index 9b3b282f2a..f299313250 100644 --- a/examples/basic/B1/CMakeLists.txt +++ b/examples/basic/B1/CMakeLists.txt @@ -1,7 +1,9 @@ - #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B1) #---------------------------------------------------------------------------- @@ -23,7 +25,6 @@ endif() include(${Geant4_USE_FILE}) include_directories(${PROJECT_SOURCE_DIR}/include) - #---------------------------------------------------------------------------- # Locate sources and headers for this project # NB: headers are included so they will show up in IDEs @@ -69,5 +70,3 @@ add_custom_target(B1 DEPENDS exampleB1) # Install the executable to 'bin' directory under CMAKE_INSTALL_PREFIX # install(TARGETS exampleB1 DESTINATION bin) - - diff --git a/examples/basic/B1/History b/examples/basic/B1/History index ca23587ef3..6b1d36562f 100644 --- a/examples/basic/B1/History +++ b/examples/basic/B1/History @@ -13,7 +13,14 @@ track of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- - + +02/11/20 B.Morgan (exampleB1-V10-06-01) +- Support same CMake version range as core Geant4 + +30/06/20 G. Cosmo (exampleB1-V10-06-00) +- Migrated to use G4RunManagerFactory, therefore implicitly enabling + tasking by default in MT builds. + 21/11/19 G. Cosmo (exampleB1-V10-05-00) - Use default MixMax random engine. @@ -30,13 +37,13 @@ track of all tags. 04/05/15 I. Hrivnacova (exampleB1-V10-01-02) - Coding guidelines: removed empty lines - + 23/04/15 mma (exampleB1-V10-01-01) - RunAction : come back to previous formula - + 21/04/15 mma (exampleB1-V10-01-00) - RunAction : correct calculation of rmsEdep - + 29/11/14 I. Hrivnacova - Use G4endl instead of \n in G4cout; this makes each new line in the output on threads preceded with @@ -49,7 +56,7 @@ track of all tags. 28/10/13 I. Hrivnacova (exampleB1-V09-06-06) - Removed SetNumberOfThreads(4) from main (use Geant4 default) - + 26/10/13 mma (exampleB1-V09-06-05) - Use /run/printProgress. Cleanup in EventAction @@ -57,10 +64,10 @@ track of all tags. - Removed B1EventInformation for keeping maximum simplicity - Improved documentation (added paragraph on Run::Merge()) - Code clean-up - + 09/06/13 I. Hrivnacova (exampleB1-V09-06-03) - clarify local names in user actions - + 05/06/13 mma (exampleB1-V09-06-02) - add section about ACTION INITALIZATION to README and .README - update section DETECTOR RESPONSE @@ -86,11 +93,11 @@ track of all tags. 14/11/11 I. Hrivnacova - The first tagged version of the new B1 example - (tagged in basic) + (tagged in basic) 31/10/11 I. Hrivnacova - change volume names -- scoring in 1 volume only, with new scheme - +- scoring in 1 volume only, with new scheme + 05/09/11 M. Maire, P. Gueye - Created. diff --git a/examples/basic/B1/exampleB1.cc b/examples/basic/B1/exampleB1.cc index c062a058d9..f5dcbe5985 100644 --- a/examples/basic/B1/exampleB1.cc +++ b/examples/basic/B1/exampleB1.cc @@ -30,11 +30,7 @@ #include "B1DetectorConstruction.hh" #include "B1ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "QBBC.hh" @@ -60,11 +56,8 @@ int main(int argc,char** argv) // Construct the default run manager // -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = + G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default); // Set mandatory initialization classes // diff --git a/examples/basic/B1/exampleB1.out b/examples/basic/B1/exampleB1.out index c681fc19be..1797737174 100644 --- a/examples/basic/B1/exampleB1.out +++ b/examples/basic/B1/exampleB1.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -27,10 +28,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -67,6 +70,10 @@ Some /vis commands (optionally) take a string to specify colour. Checking overlaps for volume Envelope (G4Box) ... OK! Checking overlaps for volume Shape1 (G4Cons) ... OK! Checking overlaps for volume Shape2 (G4Trd) ... OK! +### HadronInelasticQBBC Construct Process: + Emin(FTFP)= 3 GeV Emax(FTFP)= 100000 GeV + Emin(BERT)= 1 GeV Emax(BERT)= 6 GeV Emax(BERTpions)= 12 GeV + Emin(BIC) = 0 GeV Emax(BIC)= 1.5 GeV. ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 phot: for gamma SubType=12 BuildTable=0 @@ -92,10 +99,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -119,10 +127,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -150,9 +159,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -166,14 +175,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -182,9 +191,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -196,9 +205,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -209,9 +218,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -225,14 +234,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -241,9 +250,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -257,14 +266,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -273,9 +282,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -289,14 +298,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -305,9 +314,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -322,14 +331,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -338,9 +347,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -355,14 +364,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -371,9 +380,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -387,14 +396,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -403,9 +412,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -419,14 +428,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -456,6 +465,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -534,6 +565,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -674,7 +718,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi+Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -686,7 +731,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi-Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -754,7 +800,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. @@ -772,9 +817,12 @@ See commands in /vis/modeling/trajectories/ for other options. --------------------End of Global Run----------------------- The run consists of 1000 gamma of 6 MeV - Cumulated dose per run, in scoring volume : 40.6239 picoGy rms = 3.75185 picoGy + Cumulated dose per run, in scoring volume : 45.6428 picoGy rms = 3.94852 picoGy ------------------------------------------------------------ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 1 starts. --> Event 0 starts. --> Event 100 starts. @@ -789,8 +837,11 @@ See commands in /vis/modeling/trajectories/ for other options. --------------------End of Global Run----------------------- The run consists of 1000 proton of 210 MeV - Cumulated dose per run, in scoring volume : 5.16439 nanoGy rms = 144.962 picoGy + Cumulated dose per run, in scoring volume : 4.75061 nanoGy rms = 147.024 picoGy ------------------------------------------------------------ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/basic/B2/B2a/CMakeLists.txt b/examples/basic/B2/B2a/CMakeLists.txt index 4d1db6d47e..be2f73f159 100644 --- a/examples/basic/B2/B2a/CMakeLists.txt +++ b/examples/basic/B2/B2a/CMakeLists.txt @@ -1,8 +1,10 @@ - #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B2a) #---------------------------------------------------------------------------- @@ -64,4 +66,3 @@ endforeach() # Install the executable to 'bin' directory under CMAKE_INSTALL_PREFIX # install(TARGETS exampleB2a DESTINATION bin) - diff --git a/examples/basic/B2/B2a/exampleB2a.cc b/examples/basic/B2/B2a/exampleB2a.cc index f8967e2671..58e1d64b6f 100644 --- a/examples/basic/B2/B2a/exampleB2a.cc +++ b/examples/basic/B2/B2a/exampleB2a.cc @@ -30,11 +30,7 @@ #include "B2aDetectorConstruction.hh" #include "B2ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "FTFP_BERT.hh" @@ -61,11 +57,8 @@ int main(int argc,char** argv) // Construct the default run manager // -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = + G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default); // Set mandatory initialization classes // diff --git a/examples/basic/B2/B2a/exampleB2a.out b/examples/basic/B2/B2a/exampleB2a.out index e34fe539a6..e0f2efab2f 100644 --- a/examples/basic/B2/B2a/exampleB2a.out +++ b/examples/basic/B2/B2a/exampleB2a.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -28,10 +29,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -114,7 +117,7 @@ Some /vis commands (optionally) take a string to specify colour. ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -135,7 +138,7 @@ Checking overlaps for volume Chamber_PV (G4Tubs) ... OK! Checking overlaps for volume Chamber_PV (G4Tubs) ... OK! Checking overlaps for volume Chamber_PV (G4Tubs) ... OK! - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -166,10 +169,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -193,10 +197,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -224,9 +229,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -240,14 +245,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -256,9 +261,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -270,9 +275,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -283,9 +288,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -299,14 +304,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -315,9 +320,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -331,14 +336,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -347,9 +352,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -363,14 +368,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -379,9 +384,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -396,14 +401,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -412,9 +417,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -429,14 +434,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -445,9 +450,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -461,14 +466,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -477,9 +482,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -493,14 +498,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -529,6 +534,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -603,6 +630,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -714,8 +754,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -780,8 +820,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -822,7 +862,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. @@ -843,13 +882,13 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 6 0 hits stored in this event >>> Event: 7 - 27 hits stored in this event + 0 hits stored in this event >>> Event: 8 0 hits stored in this event >>> Event: 9 - 72 hits stored in this event ->>> Event: 10 0 hits stored in this event +>>> Event: 10 + 29 hits stored in this event >>> Event: 11 0 hits stored in this event >>> Event: 12 @@ -867,7 +906,7 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 18 0 hits stored in this event >>> Event: 19 - 0 hits stored in this event + 3 hits stored in this event >>> Event: 20 0 hits stored in this event >>> Event: 21 @@ -875,15 +914,15 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 22 0 hits stored in this event >>> Event: 23 - 0 hits stored in this event + 60 hits stored in this event >>> Event: 24 0 hits stored in this event >>> Event: 25 - 59 hits stored in this event + 0 hits stored in this event >>> Event: 26 - 12 hits stored in this event + 178 hits stored in this event >>> Event: 27 - 73 hits stored in this event + 0 hits stored in this event >>> Event: 28 0 hits stored in this event >>> Event: 29 @@ -893,7 +932,7 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 31 0 hits stored in this event >>> Event: 32 - 0 hits stored in this event + 63 hits stored in this event >>> Event: 33 0 hits stored in this event >>> Event: 34 @@ -903,9 +942,9 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 36 0 hits stored in this event >>> Event: 37 - 152 hits stored in this event + 144 hits stored in this event >>> Event: 38 - 0 hits stored in this event + 80 hits stored in this event >>> Event: 39 0 hits stored in this event >>> Event: 40 @@ -913,19 +952,19 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 41 0 hits stored in this event >>> Event: 42 - 32 hits stored in this event + 132 hits stored in this event >>> Event: 43 0 hits stored in this event >>> Event: 44 0 hits stored in this event >>> Event: 45 - 0 hits stored in this event + 62 hits stored in this event >>> Event: 46 0 hits stored in this event >>> Event: 47 - 127 hits stored in this event ->>> Event: 48 0 hits stored in this event +>>> Event: 48 + 29 hits stored in this event >>> Event: 49 0 hits stored in this event >>> Event: 50 @@ -935,9 +974,9 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 52 0 hits stored in this event >>> Event: 53 - 0 hits stored in this event + 38 hits stored in this event >>> Event: 54 - 109 hits stored in this event + 0 hits stored in this event >>> Event: 55 0 hits stored in this event >>> Event: 56 @@ -951,17 +990,17 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 60 0 hits stored in this event >>> Event: 61 - 0 hits stored in this event + 15 hits stored in this event >>> Event: 62 0 hits stored in this event >>> Event: 63 - 0 hits stored in this event + 49 hits stored in this event >>> Event: 64 0 hits stored in this event >>> Event: 65 0 hits stored in this event >>> Event: 66 - 92 hits stored in this event + 0 hits stored in this event >>> Event: 67 0 hits stored in this event >>> Event: 68 @@ -975,31 +1014,31 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 72 0 hits stored in this event >>> Event: 73 - 0 hits stored in this event + 42 hits stored in this event >>> Event: 74 - 0 hits stored in this event + 34 hits stored in this event >>> Event: 75 0 hits stored in this event >>> Event: 76 - 33 hits stored in this event ->>> Event: 77 - 29 hits stored in this event ->>> Event: 78 0 hits stored in this event +>>> Event: 77 + 182 hits stored in this event +>>> Event: 78 + 23 hits stored in this event >>> Event: 79 - 32 hits stored in this event + 0 hits stored in this event >>> Event: 80 0 hits stored in this event >>> Event: 81 - 113 hits stored in this event + 0 hits stored in this event >>> Event: 82 0 hits stored in this event >>> Event: 83 - 21 hits stored in this event + 0 hits stored in this event >>> Event: 84 - 41 hits stored in this event + 0 hits stored in this event >>> Event: 85 - 89 hits stored in this event + 24 hits stored in this event >>> Event: 86 0 hits stored in this event >>> Event: 87 @@ -1017,9 +1056,9 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 93 0 hits stored in this event >>> Event: 94 - 0 hits stored in this event + 254 hits stored in this event >>> Event: 95 - 0 hits stored in this event + 180 hits stored in this event >>> Event: 96 4 hits stored in this event >>> Event: 97 @@ -1028,208 +1067,214 @@ See commands in /vis/modeling/trajectories/ for other options. 0 hits stored in this event >>> Event: 99 0 hits stored in this event +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 1 starts. --> Event 0 starts. >>> Event: 0 - 745 hits stored in this event + 438 hits stored in this event >>> Event: 1 - 98 hits stored in this event + 108 hits stored in this event >>> Event: 2 - 3975 hits stored in this event + 110 hits stored in this event >>> Event: 3 - 80 hits stored in this event + 61 hits stored in this event >>> Event: 4 - 74 hits stored in this event + 99 hits stored in this event >>> Event: 5 - 178 hits stored in this event + 76 hits stored in this event >>> Event: 6 - 59 hits stored in this event + 66 hits stored in this event >>> Event: 7 - 212 hits stored in this event + 135 hits stored in this event >>> Event: 8 - 203 hits stored in this event + 97 hits stored in this event >>> Event: 9 - 929 hits stored in this event + 235 hits stored in this event >>> Event: 10 - 73 hits stored in this event + 78 hits stored in this event >>> Event: 11 - 58 hits stored in this event + 59 hits stored in this event >>> Event: 12 - 152 hits stored in this event + 1609 hits stored in this event >>> Event: 13 - 134 hits stored in this event + 59 hits stored in this event >>> Event: 14 - 58 hits stored in this event + 108 hits stored in this event >>> Event: 15 - 74 hits stored in this event + 260 hits stored in this event >>> Event: 16 - 73 hits stored in this event + 104 hits stored in this event >>> Event: 17 - 252 hits stored in this event + 65 hits stored in this event >>> Event: 18 - 244 hits stored in this event + 73 hits stored in this event >>> Event: 19 83 hits stored in this event >>> Event: 20 - 132 hits stored in this event + 454 hits stored in this event >>> Event: 21 - 165 hits stored in this event ->>> Event: 22 - 77 hits stored in this event ->>> Event: 23 - 60 hits stored in this event ->>> Event: 24 - 87 hits stored in this event ->>> Event: 25 - 317 hits stored in this event ->>> Event: 26 - 164 hits stored in this event ->>> Event: 27 - 65 hits stored in this event ->>> Event: 28 - 62 hits stored in this event ->>> Event: 29 - 214 hits stored in this event ->>> Event: 30 - 79 hits stored in this event ->>> Event: 31 - 73 hits stored in this event ->>> Event: 32 - 53 hits stored in this event ->>> Event: 33 86 hits stored in this event ->>> Event: 34 - 295 hits stored in this event ->>> Event: 35 - 112 hits stored in this event ->>> Event: 36 - 140 hits stored in this event ->>> Event: 37 - 82 hits stored in this event ->>> Event: 38 - 147 hits stored in this event ->>> Event: 39 - 95 hits stored in this event ->>> Event: 40 - 67 hits stored in this event ->>> Event: 41 - 122 hits stored in this event ->>> Event: 42 - 95 hits stored in this event ->>> Event: 43 - 52 hits stored in this event ->>> Event: 44 - 83 hits stored in this event ->>> Event: 45 - 70 hits stored in this event ->>> Event: 46 - 80 hits stored in this event ->>> Event: 47 - 1256 hits stored in this event ->>> Event: 48 - 54 hits stored in this event ->>> Event: 49 - 49 hits stored in this event ->>> Event: 50 - 98 hits stored in this event ->>> Event: 51 - 347 hits stored in this event ->>> Event: 52 - 36 hits stored in this event ->>> Event: 53 - 178 hits stored in this event ->>> Event: 54 - 70 hits stored in this event ->>> Event: 55 - 290 hits stored in this event ->>> Event: 56 - 82 hits stored in this event ->>> Event: 57 - 216 hits stored in this event ->>> Event: 58 - 63 hits stored in this event ->>> Event: 59 - 64 hits stored in this event ->>> Event: 60 - 248 hits stored in this event ->>> Event: 61 - 74 hits stored in this event ->>> Event: 62 - 89 hits stored in this event ->>> Event: 63 - 111 hits stored in this event ->>> Event: 64 - 415 hits stored in this event ->>> Event: 65 - 63 hits stored in this event ->>> Event: 66 - 180 hits stored in this event ->>> Event: 67 - 63 hits stored in this event ->>> Event: 68 - 71 hits stored in this event ->>> Event: 69 - 540 hits stored in this event ->>> Event: 70 - 38 hits stored in this event ->>> Event: 71 - 75 hits stored in this event ->>> Event: 72 - 92 hits stored in this event ->>> Event: 73 +>>> Event: 22 69 hits stored in this event ->>> Event: 74 - 110 hits stored in this event ->>> Event: 75 - 602 hits stored in this event ->>> Event: 76 - 135 hits stored in this event ->>> Event: 77 - 416 hits stored in this event ->>> Event: 78 - 129 hits stored in this event ->>> Event: 79 - 53 hits stored in this event ->>> Event: 80 - 171 hits stored in this event ->>> Event: 81 - 68 hits stored in this event ->>> Event: 82 - 1230 hits stored in this event ->>> Event: 83 - 104 hits stored in this event ->>> Event: 84 - 1055 hits stored in this event ->>> Event: 85 - 168 hits stored in this event ->>> Event: 86 - 77 hits stored in this event ->>> Event: 87 - 119 hits stored in this event ->>> Event: 88 - 67 hits stored in this event ->>> Event: 89 - 213 hits stored in this event ->>> Event: 90 - 63 hits stored in this event ->>> Event: 91 +>>> Event: 23 + 337 hits stored in this event +>>> Event: 24 + 112 hits stored in this event +>>> Event: 25 + 107 hits stored in this event +>>> Event: 26 + 94 hits stored in this event +>>> Event: 27 + 128 hits stored in this event +>>> Event: 28 74 hits stored in this event +>>> Event: 29 + 77 hits stored in this event +>>> Event: 30 + 60 hits stored in this event +>>> Event: 31 + 50 hits stored in this event +>>> Event: 32 + 83 hits stored in this event +>>> Event: 33 + 460 hits stored in this event +>>> Event: 34 + 59 hits stored in this event +>>> Event: 35 + 68 hits stored in this event +>>> Event: 36 + 196 hits stored in this event +>>> Event: 37 + 175 hits stored in this event +>>> Event: 38 + 80 hits stored in this event +>>> Event: 39 + 397 hits stored in this event +>>> Event: 40 + 104 hits stored in this event +>>> Event: 41 + 233 hits stored in this event +>>> Event: 42 + 106 hits stored in this event +>>> Event: 43 + 97 hits stored in this event +>>> Event: 44 + 90 hits stored in this event +>>> Event: 45 + 796 hits stored in this event +>>> Event: 46 + 19250 hits stored in this event +>>> Event: 47 + 102 hits stored in this event +>>> Event: 48 + 116 hits stored in this event +>>> Event: 49 + 84 hits stored in this event +>>> Event: 50 + 122 hits stored in this event +>>> Event: 51 + 157 hits stored in this event +>>> Event: 52 + 126 hits stored in this event +>>> Event: 53 + 83 hits stored in this event +>>> Event: 54 + 68 hits stored in this event +>>> Event: 55 + 76 hits stored in this event +>>> Event: 56 + 69 hits stored in this event +>>> Event: 57 + 217 hits stored in this event +>>> Event: 58 + 86 hits stored in this event +>>> Event: 59 + 154 hits stored in this event +>>> Event: 60 + 78 hits stored in this event +>>> Event: 61 + 71 hits stored in this event +>>> Event: 62 + 683 hits stored in this event +>>> Event: 63 + 896 hits stored in this event +>>> Event: 64 + 92 hits stored in this event +>>> Event: 65 + 100 hits stored in this event +>>> Event: 66 + 2254 hits stored in this event +>>> Event: 67 + 90 hits stored in this event +>>> Event: 68 + 89 hits stored in this event +>>> Event: 69 + 94 hits stored in this event +>>> Event: 70 + 53 hits stored in this event +>>> Event: 71 + 420 hits stored in this event +>>> Event: 72 + 113 hits stored in this event +>>> Event: 73 + 245 hits stored in this event +>>> Event: 74 + 78 hits stored in this event +>>> Event: 75 + 87 hits stored in this event +>>> Event: 76 + 60 hits stored in this event +>>> Event: 77 + 86 hits stored in this event +>>> Event: 78 + 63 hits stored in this event +>>> Event: 79 + 80 hits stored in this event +>>> Event: 80 + 53 hits stored in this event +>>> Event: 81 + 60 hits stored in this event +>>> Event: 82 + 60 hits stored in this event +>>> Event: 83 + 59 hits stored in this event +>>> Event: 84 + 81 hits stored in this event +>>> Event: 85 + 119 hits stored in this event +>>> Event: 86 + 54 hits stored in this event +>>> Event: 87 + 262 hits stored in this event +>>> Event: 88 + 71 hits stored in this event +>>> Event: 89 + 147 hits stored in this event +>>> Event: 90 + 506 hits stored in this event +>>> Event: 91 + 474 hits stored in this event >>> Event: 92 - 85 hits stored in this event + 58 hits stored in this event >>> Event: 93 - 2820 hits stored in this event + 92 hits stored in this event >>> Event: 94 - 271 hits stored in this event + 119 hits stored in this event >>> Event: 95 - 140 hits stored in this event + 52 hits stored in this event >>> Event: 96 - 96 hits stored in this event + 125 hits stored in this event >>> Event: 97 - 65 hits stored in this event + 109 hits stored in this event >>> Event: 98 - 40 hits stored in this event + 304 hits stored in this event >>> Event: 99 - 42 hits stored in this event + 609 hits stored in this event +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 2 starts. --> Event 0 starts. @@ -1255,5 +1300,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 14 0 0 2.94e+03 1e+06 0 540 5.88e+03 OutOfWorld Transportation >>> Event: 0 0 hits stored in this event +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/basic/B2/B2b/CMakeLists.txt b/examples/basic/B2/B2b/CMakeLists.txt index a233a3e4b1..c74dca658a 100644 --- a/examples/basic/B2/B2b/CMakeLists.txt +++ b/examples/basic/B2/B2b/CMakeLists.txt @@ -1,8 +1,10 @@ - #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B2b) #---------------------------------------------------------------------------- @@ -64,4 +66,3 @@ endforeach() # Install the executable to 'bin' directory under CMAKE_INSTALL_PREFIX # install(TARGETS exampleB2b DESTINATION bin) - diff --git a/examples/basic/B2/B2b/exampleB2b.cc b/examples/basic/B2/B2b/exampleB2b.cc index 2dd8b332b8..ea7eda6991 100644 --- a/examples/basic/B2/B2b/exampleB2b.cc +++ b/examples/basic/B2/B2b/exampleB2b.cc @@ -30,11 +30,7 @@ #include "B2bDetectorConstruction.hh" #include "B2ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "FTFP_BERT.hh" @@ -61,11 +57,8 @@ int main(int argc,char** argv) // Construct the default run manager // -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = + G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default); // Set mandatory initialization classes // diff --git a/examples/basic/B2/B2b/exampleB2b.out b/examples/basic/B2/B2b/exampleB2b.out index eff5a2e5cf..3ddb87aa12 100644 --- a/examples/basic/B2/B2b/exampleB2b.out +++ b/examples/basic/B2/B2b/exampleB2b.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -28,10 +29,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -114,7 +117,7 @@ Some /vis commands (optionally) take a string to specify colour. ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -131,7 +134,7 @@ There are 5 chambers in the tracker region. The chambers are 20 cm of G4_Xe The distance between chamber is 80 cm - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -162,10 +165,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -189,10 +193,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -220,9 +225,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -236,14 +241,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -252,9 +257,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -266,9 +271,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -279,9 +284,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -295,14 +300,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -311,9 +316,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -327,14 +332,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -343,9 +348,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -359,14 +364,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -375,9 +380,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -392,14 +397,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -408,9 +413,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -425,14 +430,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -441,9 +446,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -457,14 +462,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -473,9 +478,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -489,14 +494,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -525,6 +530,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -599,6 +626,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -710,8 +750,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -776,8 +816,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -818,7 +858,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. @@ -833,41 +872,41 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 3 0 hits stored in this event >>> Event: 4 - 0 hits stored in this event + 3 hits stored in this event >>> Event: 5 0 hits stored in this event >>> Event: 6 0 hits stored in this event >>> Event: 7 - 152 hits stored in this event ->>> Event: 8 - 107 hits stored in this event ->>> Event: 9 0 hits stored in this event +>>> Event: 8 + 14 hits stored in this event +>>> Event: 9 + 74 hits stored in this event >>> Event: 10 0 hits stored in this event >>> Event: 11 0 hits stored in this event >>> Event: 12 - 0 hits stored in this event + 49 hits stored in this event >>> Event: 13 0 hits stored in this event >>> Event: 14 - 114 hits stored in this event + 0 hits stored in this event >>> Event: 15 - 30 hits stored in this event + 0 hits stored in this event >>> Event: 16 0 hits stored in this event >>> Event: 17 - 0 hits stored in this event + 133 hits stored in this event >>> Event: 18 0 hits stored in this event >>> Event: 19 - 127 hits stored in this event + 0 hits stored in this event >>> Event: 20 0 hits stored in this event >>> Event: 21 - 57 hits stored in this event + 0 hits stored in this event >>> Event: 22 0 hits stored in this event >>> Event: 23 @@ -883,7 +922,7 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 28 0 hits stored in this event >>> Event: 29 - 16 hits stored in this event + 0 hits stored in this event >>> Event: 30 0 hits stored in this event >>> Event: 31 @@ -891,17 +930,17 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 32 0 hits stored in this event >>> Event: 33 - 0 hits stored in this event + 169 hits stored in this event >>> Event: 34 - 0 hits stored in this event + 84 hits stored in this event >>> Event: 35 - 0 hits stored in this event + 58 hits stored in this event >>> Event: 36 - 0 hits stored in this event + 90 hits stored in this event >>> Event: 37 0 hits stored in this event >>> Event: 38 - 0 hits stored in this event + 11 hits stored in this event >>> Event: 39 0 hits stored in this event >>> Event: 40 @@ -911,11 +950,11 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 42 0 hits stored in this event >>> Event: 43 - 0 hits stored in this event + 128 hits stored in this event >>> Event: 44 0 hits stored in this event >>> Event: 45 - 59 hits stored in this event + 0 hits stored in this event >>> Event: 46 0 hits stored in this event >>> Event: 47 @@ -923,7 +962,7 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 48 0 hits stored in this event >>> Event: 49 - 0 hits stored in this event + 155 hits stored in this event >>> Event: 50 0 hits stored in this event >>> Event: 51 @@ -931,7 +970,7 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 52 0 hits stored in this event >>> Event: 53 - 0 hits stored in this event + 10 hits stored in this event >>> Event: 54 0 hits stored in this event >>> Event: 55 @@ -941,9 +980,9 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 57 0 hits stored in this event >>> Event: 58 - 0 hits stored in this event + 89 hits stored in this event >>> Event: 59 - 0 hits stored in this event + 130 hits stored in this event >>> Event: 60 0 hits stored in this event >>> Event: 61 @@ -951,7 +990,7 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 62 0 hits stored in this event >>> Event: 63 - 58 hits stored in this event + 0 hits stored in this event >>> Event: 64 0 hits stored in this event >>> Event: 65 @@ -963,23 +1002,23 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 68 0 hits stored in this event >>> Event: 69 - 99 hits stored in this event + 0 hits stored in this event >>> Event: 70 0 hits stored in this event >>> Event: 71 0 hits stored in this event >>> Event: 72 - 123 hits stored in this event + 0 hits stored in this event >>> Event: 73 - 55 hits stored in this event + 0 hits stored in this event >>> Event: 74 - 81 hits stored in this event + 0 hits stored in this event >>> Event: 75 0 hits stored in this event >>> Event: 76 0 hits stored in this event >>> Event: 77 - 0 hits stored in this event + 27 hits stored in this event >>> Event: 78 0 hits stored in this event >>> Event: 79 @@ -991,11 +1030,11 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 82 0 hits stored in this event >>> Event: 83 - 78 hits stored in this event + 0 hits stored in this event >>> Event: 84 - 127 hits stored in this event + 0 hits stored in this event >>> Event: 85 - 81 hits stored in this event + 0 hits stored in this event >>> Event: 86 0 hits stored in this event >>> Event: 87 @@ -1007,15 +1046,15 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 90 0 hits stored in this event >>> Event: 91 - 38 hits stored in this event + 0 hits stored in this event >>> Event: 92 0 hits stored in this event >>> Event: 93 - 0 hits stored in this event + 36 hits stored in this event >>> Event: 94 0 hits stored in this event >>> Event: 95 - 21 hits stored in this event + 0 hits stored in this event >>> Event: 96 0 hits stored in this event >>> Event: 97 @@ -1023,209 +1062,215 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Event: 98 0 hits stored in this event >>> Event: 99 - 1 hits stored in this event + 38 hits stored in this event +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 1 starts. --> Event 0 starts. >>> Event: 0 - 293 hits stored in this event ->>> Event: 1 - 111 hits stored in this event ->>> Event: 2 - 165 hits stored in this event ->>> Event: 3 - 4251 hits stored in this event ->>> Event: 4 - 105 hits stored in this event ->>> Event: 5 - 66 hits stored in this event ->>> Event: 6 - 86 hits stored in this event ->>> Event: 7 - 273 hits stored in this event ->>> Event: 8 - 1054 hits stored in this event ->>> Event: 9 - 79 hits stored in this event ->>> Event: 10 - 50 hits stored in this event ->>> Event: 11 - 111 hits stored in this event ->>> Event: 12 - 71 hits stored in this event ->>> Event: 13 - 118 hits stored in this event ->>> Event: 14 - 49 hits stored in this event ->>> Event: 15 - 37 hits stored in this event ->>> Event: 16 - 243 hits stored in this event ->>> Event: 17 - 62 hits stored in this event ->>> Event: 18 - 234 hits stored in this event ->>> Event: 19 - 136 hits stored in this event ->>> Event: 20 - 70 hits stored in this event ->>> Event: 21 - 69 hits stored in this event ->>> Event: 22 - 1242 hits stored in this event ->>> Event: 23 - 43 hits stored in this event ->>> Event: 24 - 58 hits stored in this event ->>> Event: 25 - 63 hits stored in this event ->>> Event: 26 - 115 hits stored in this event ->>> Event: 27 - 90 hits stored in this event ->>> Event: 28 - 185 hits stored in this event ->>> Event: 29 - 1122 hits stored in this event ->>> Event: 30 - 83 hits stored in this event ->>> Event: 31 73 hits stored in this event ->>> Event: 32 - 63 hits stored in this event ->>> Event: 33 - 89 hits stored in this event ->>> Event: 34 - 323 hits stored in this event ->>> Event: 35 - 92 hits stored in this event ->>> Event: 36 - 123 hits stored in this event ->>> Event: 37 - 136 hits stored in this event ->>> Event: 38 - 925 hits stored in this event ->>> Event: 39 - 63 hits stored in this event ->>> Event: 40 - 64 hits stored in this event ->>> Event: 41 - 56 hits stored in this event ->>> Event: 42 - 66 hits stored in this event ->>> Event: 43 - 87 hits stored in this event ->>> Event: 44 - 552 hits stored in this event ->>> Event: 45 - 419 hits stored in this event ->>> Event: 46 - 140 hits stored in this event ->>> Event: 47 - 102 hits stored in this event ->>> Event: 48 - 82 hits stored in this event ->>> Event: 49 - 107 hits stored in this event ->>> Event: 50 - 171 hits stored in this event ->>> Event: 51 - 189 hits stored in this event ->>> Event: 52 - 63 hits stored in this event ->>> Event: 53 - 217 hits stored in this event ->>> Event: 54 - 195 hits stored in this event ->>> Event: 55 - 198 hits stored in this event ->>> Event: 56 +>>> Event: 1 + 104 hits stored in this event +>>> Event: 2 + 73 hits stored in this event +>>> Event: 3 100 hits stored in this event ->>> Event: 57 - 64 hits stored in this event ->>> Event: 58 - 95 hits stored in this event ->>> Event: 59 - 101 hits stored in this event ->>> Event: 60 - 76 hits stored in this event ->>> Event: 61 - 58 hits stored in this event ->>> Event: 62 - 108 hits stored in this event ->>> Event: 63 - 92 hits stored in this event ->>> Event: 64 - 108 hits stored in this event ->>> Event: 65 - 49 hits stored in this event ->>> Event: 66 - 164 hits stored in this event ->>> Event: 67 - 114 hits stored in this event ->>> Event: 68 - 95 hits stored in this event ->>> Event: 69 - 152 hits stored in this event ->>> Event: 70 - 47 hits stored in this event ->>> Event: 71 - 241 hits stored in this event ->>> Event: 72 - 132 hits stored in this event ->>> Event: 73 - 46 hits stored in this event ->>> Event: 74 - 49 hits stored in this event ->>> Event: 75 - 514 hits stored in this event ->>> Event: 76 - 89 hits stored in this event ->>> Event: 77 - 93 hits stored in this event ->>> Event: 78 - 54 hits stored in this event ->>> Event: 79 - 674 hits stored in this event ->>> Event: 80 - 376 hits stored in this event ->>> Event: 81 - 97 hits stored in this event ->>> Event: 82 - 72 hits stored in this event ->>> Event: 83 - 87 hits stored in this event ->>> Event: 84 - 67 hits stored in this event ->>> Event: 85 - 98 hits stored in this event ->>> Event: 86 - 109 hits stored in this event ->>> Event: 87 - 60 hits stored in this event ->>> Event: 88 - 78 hits stored in this event ->>> Event: 89 - 703 hits stored in this event ->>> Event: 90 - 96 hits stored in this event ->>> Event: 91 - 125 hits stored in this event ->>> Event: 92 - 267 hits stored in this event ->>> Event: 93 - 56 hits stored in this event ->>> Event: 94 +>>> Event: 4 84 hits stored in this event ->>> Event: 95 - 133 hits stored in this event ->>> Event: 96 +>>> Event: 5 + 120 hits stored in this event +>>> Event: 6 + 77 hits stored in this event +>>> Event: 7 + 66 hits stored in this event +>>> Event: 8 + 118 hits stored in this event +>>> Event: 9 + 220 hits stored in this event +>>> Event: 10 + 109 hits stored in this event +>>> Event: 11 + 77 hits stored in this event +>>> Event: 12 + 114 hits stored in this event +>>> Event: 13 + 84 hits stored in this event +>>> Event: 14 + 56 hits stored in this event +>>> Event: 15 + 232 hits stored in this event +>>> Event: 16 + 211 hits stored in this event +>>> Event: 17 + 1225 hits stored in this event +>>> Event: 18 + 339 hits stored in this event +>>> Event: 19 + 107 hits stored in this event +>>> Event: 20 + 628 hits stored in this event +>>> Event: 21 + 82 hits stored in this event +>>> Event: 22 + 146 hits stored in this event +>>> Event: 23 + 66 hits stored in this event +>>> Event: 24 + 109 hits stored in this event +>>> Event: 25 + 58 hits stored in this event +>>> Event: 26 + 87 hits stored in this event +>>> Event: 27 + 51 hits stored in this event +>>> Event: 28 + 682 hits stored in this event +>>> Event: 29 + 151 hits stored in this event +>>> Event: 30 + 342 hits stored in this event +>>> Event: 31 + 141 hits stored in this event +>>> Event: 32 + 171 hits stored in this event +>>> Event: 33 + 95 hits stored in this event +>>> Event: 34 + 106 hits stored in this event +>>> Event: 35 + 55 hits stored in this event +>>> Event: 36 + 66 hits stored in this event +>>> Event: 37 + 84 hits stored in this event +>>> Event: 38 + 78 hits stored in this event +>>> Event: 39 + 55 hits stored in this event +>>> Event: 40 + 54 hits stored in this event +>>> Event: 41 + 79 hits stored in this event +>>> Event: 42 + 270 hits stored in this event +>>> Event: 43 + 49 hits stored in this event +>>> Event: 44 + 229 hits stored in this event +>>> Event: 45 + 794 hits stored in this event +>>> Event: 46 + 82 hits stored in this event +>>> Event: 47 + 42 hits stored in this event +>>> Event: 48 + 81 hits stored in this event +>>> Event: 49 + 105 hits stored in this event +>>> Event: 50 + 123 hits stored in this event +>>> Event: 51 + 146 hits stored in this event +>>> Event: 52 + 78 hits stored in this event +>>> Event: 53 + 86 hits stored in this event +>>> Event: 54 + 80 hits stored in this event +>>> Event: 55 + 82 hits stored in this event +>>> Event: 56 + 234 hits stored in this event +>>> Event: 57 + 184 hits stored in this event +>>> Event: 58 + 68 hits stored in this event +>>> Event: 59 + 88 hits stored in this event +>>> Event: 60 + 46 hits stored in this event +>>> Event: 61 + 192 hits stored in this event +>>> Event: 62 + 333 hits stored in this event +>>> Event: 63 + 704 hits stored in this event +>>> Event: 64 + 970 hits stored in this event +>>> Event: 65 + 862 hits stored in this event +>>> Event: 66 + 76 hits stored in this event +>>> Event: 67 + 286 hits stored in this event +>>> Event: 68 + 81 hits stored in this event +>>> Event: 69 + 76 hits stored in this event +>>> Event: 70 + 53 hits stored in this event +>>> Event: 71 + 74 hits stored in this event +>>> Event: 72 61 hits stored in this event +>>> Event: 73 + 85 hits stored in this event +>>> Event: 74 + 217 hits stored in this event +>>> Event: 75 + 63 hits stored in this event +>>> Event: 76 + 69 hits stored in this event +>>> Event: 77 + 72 hits stored in this event +>>> Event: 78 + 248 hits stored in this event +>>> Event: 79 + 94 hits stored in this event +>>> Event: 80 + 1352 hits stored in this event +>>> Event: 81 + 2476 hits stored in this event +>>> Event: 82 + 138 hits stored in this event +>>> Event: 83 + 80 hits stored in this event +>>> Event: 84 + 72 hits stored in this event +>>> Event: 85 + 97 hits stored in this event +>>> Event: 86 + 91 hits stored in this event +>>> Event: 87 + 149 hits stored in this event +>>> Event: 88 + 310 hits stored in this event +>>> Event: 89 + 75 hits stored in this event +>>> Event: 90 + 90 hits stored in this event +>>> Event: 91 + 94 hits stored in this event +>>> Event: 92 + 105 hits stored in this event +>>> Event: 93 + 108 hits stored in this event +>>> Event: 94 + 1445 hits stored in this event +>>> Event: 95 + 65 hits stored in this event +>>> Event: 96 + 66 hits stored in this event >>> Event: 97 - 125 hits stored in this event + 149 hits stored in this event >>> Event: 98 - 179 hits stored in this event + 103 hits stored in this event >>> Event: 99 - 131 hits stored in this event + 102 hits stored in this event +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 2 starts. --> Event 0 starts. @@ -1251,5 +1296,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 14 0 0 2.94e+03 1e+06 0 540 5.88e+03 OutOfWorld Transportation >>> Event: 0 0 hits stored in this event +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/basic/B2/CMakeLists.txt b/examples/basic/B2/CMakeLists.txt index dee5e21444..0ec9967aeb 100644 --- a/examples/basic/B2/CMakeLists.txt +++ b/examples/basic/B2/CMakeLists.txt @@ -1,8 +1,9 @@ - -#---Adding example B2 subdirectories explicitly +#---Adding example B2 subdirectories explicitly # and a custom target to for building all example B2 options ---------- - -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(B2a) add_subdirectory(B2b) diff --git a/examples/basic/B2/History b/examples/basic/B2/History index d49352eaf4..bc85fee1ef 100644 --- a/examples/basic/B2/History +++ b/examples/basic/B2/History @@ -14,9 +14,16 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +02/11/20 B.Morgan (exampleB2-V10-06-02) +- Support same CMake version range as core Geant4 + +30/06/20 G. Cosmo (exampleB2-V10-06-01) +- Migrated examples to use G4RunManagerFactory, therefore implicitly enabling + tasking by default in MT builds. + 13/02/20 I. Hrivnacova (exampleB2-V10-06-00) - Updated READMEs and added a comment in B2PrimaryGeneratorAction - that starting a primary particle on the world boundary + that starting a primary particle on the world boundary requires shooting in a direction towards inside the world 21/11/19 G. Cosmo (exampleB2-V10-05-00) @@ -48,13 +55,13 @@ track of all tags. - Fix a warning "'ui' may be used uninitialized in this function" 31/10/14 L. Garnier (exampleB2-V10-00-01) - exampleB2a/exampleB2b : + exampleB2a/exampleB2b : - Remove old G4UI_USE/G4VIS_USE - - Move G4UIExecutive at the beginning of main() + - Move G4UIExecutive at the beginning of main() -02 December 2013 Ivana Hrivnacova +02 December 2013 Ivana Hrivnacova - Fixed gui.mac: - corrected wireframe parameter, removed run2.mac from gui + corrected wireframe parameter, removed run2.mac from gui 30/11/13 I. Hrivnacova - Fixed B2a/gui.mac @@ -66,7 +73,7 @@ track of all tags. - Fixed deleting fMagFieldMessenger with use of G4AutoDelete utility 12/11/13 I. Hrivnacova (exampleB2-V09-06-10) -- Avoid long lines +- Avoid long lines 29/10/13 I. Hrivnacova (exampleB2-V09-06-09) - Using G4RunManager::SetPrintProgress() @@ -100,13 +107,13 @@ track of all tags. 10/05/13 I. Hrivnacova (exampleB2-V09-06-01) - Minor fixes in documentation - Added initialization of base class in constructors where missing - + 09/05/13 M. Asai - Migration to multi-threading 28/02/13 I. Hrivnacova - When building materials with NistManager - do not set fromIsotopes argument (which was set to false), + do not set fromIsotopes argument (which was set to false), as since 9.6 all materials have to be built from isotopes. Thanks to V. Ivantchenko for pointing at this. @@ -118,64 +125,64 @@ track of all tags. - Updated vis.mac (on suggestions by John Al.): - Activating drawing hits in vis.mac macros - Increased hit screen size (from 2 to 4) - - In TrackerSD: removing obsolete line with + - In TrackerSD: removing obsolete line with //newHit->Draw(); - General changes (see basic/History) -15/11/11 I. Hrivnacova +15/11/11 I. Hrivnacova - Migration to new G4Exception in B2aDetectorConstruction.cc and B2bChamberParameterisation.cc. - + 14/11/11 I. Hrivnacova - The first tagged version of the new B2 example created from N02 example by P. Gumplinger (tagged in basic). Started from novice/N03. -05-07-11 gum +05-07-11 gum migrate to new novice example code guidelines -03-06-11 mma (exampleN02-V09-04-02) +03-06-11 mma (exampleN02-V09-04-02) PhysicsList migrated to new scheme G4PhysListHelper - + 10-02-11 mma (exampleN02-V09-04-01) - update SteppingVerbose - + 01-02-11 mma (exampleN02-V09-04-00) - /vis/modeling/trajectories/drawByCharge-0/default/setStepPtsSize 1 04-06-10 J.Perl (exampleN02-V09-03-01) - Updated vis usage - + 22-01-10 mma (exampleN02-V09-03-00) - DetectorConstruction::SetMagField() : fpMagField->SetMagFieldValue() - + 15-11-09 mma (exampleN02-V09-02-01) - Use G4MuMultipleScattering for muons -- Separate alpha from GenericIon - +- Separate alpha from GenericIon + 30 October 2009 John Allison (exampleN02-V09-02-00) -- Introduced G4UIExecutive. +- Introduced G4UIExecutive. 17-12-08 mma -- vis.mac : /vis/scene/add/trajectories smooth +- vis.mac : /vis/scene/add/trajectories smooth 31-10-08 mma (exampleN02-V09-01-04) - Use G4hMultipleScattering for muons and protons - + 26-10-08 mma (exampleN02-V09-01-03) - Update PhysicsList for proton and ions - + 22-09-08 mma (exampleN02-V09-01-02) - PhysicsList : AddStepMax() for G4StepLimiter - DetectorConstruction : SetMaxStep(value) - DetectorMessenger : /N02/det/stepMax - + 07-05-08 J.Allison (exampleN02-V09-01-01) - Protected "/control/execute vis.mac" with G4VIS_USE flag. - + 03-05-08 mma (exampleN02-V09-01-00) - PhysicsList : replace G4MultipleScattering by G4eMultipleScattering - + 17-10-07 G.Cosmo (exampleN02-V09-00-02) - Explicitely delete allocated parameterisation and step-limit objects in ExN02DetectorConstruction class. @@ -205,16 +212,16 @@ PhysicsList migrated to new scheme G4PhysListHelper 02-06-06 mma (exampleN02-V08-00-01) - ExN02TrackerSD.cc: replace Touchable by TouchableHandle - + 31-03-06 mma (exampleN02-V08-00-00) - Add a sentence in README for G4UserLimits and G4StepLimiter. - + 01-06-05 J.Allison (exampleN02-V07-00-03) - ExN02TrackerHit.cc: Changed screen size to 2 pixels. - + 31-05-05 mma (exampleN02-V07-00-02) - G4UserLimits + G4StepLimiter become uncommented - + 30-05-05 J.Allison (exampleN02-V07-00-01) - Completed replacement of vis manager with G4VisExecutive. @@ -223,20 +230,20 @@ PhysicsList migrated to new scheme G4PhysListHelper 28-01-05 mma (exampleN02-V07-00-00) - PhysicsList: add G4StepLimiter (in a commented line) - + 16-09-04 mma (exampleN02-V06-02-01) - DetectorConstruction: modify a comment in PVPlacement. // copy number - + 08-09-04 J.Allison (exampleN02-V06-02-00) - Removed trajectory printing from ExN02EventAction - now available with /vis/scene/add/trajectories, which is now included in vis.mac. 05-04-04 mma (exampleN02-V06-01-00) - ExN02DetectorConstruction: correct definition of XenonGas - + 19-03-04 mma (exampleN02-V06-00-01) - ExN02PhysicsList: cleanup of include - + 08-03-04 mma (exampleN02-V06-00-00) - ExN02RunAction: removed ApplyCommand("/vis/...") statements. @@ -249,7 +256,7 @@ PhysicsList migrated to new scheme G4PhysListHelper 24-10-03 mma (exampleN02-V05-02-01) - PhysicsList: AddProcess(Bremsstrahlung,-1,3,3) ..etc.. - + 06-10-03 mma (exampleN02-V05-02-00) - cosmetic cleanup in material definitions @@ -257,11 +264,11 @@ PhysicsList migrated to new scheme G4PhysListHelper - Get rid of pedantic warnings... 25-03-03 mma (exampleN02-V05-00-02) -- Use G4PVPlacement and G4PVParametrised constructors in logical mother. - +- Use G4PVPlacement and G4PVParametrised constructors in logical mother. + 11-02-03 mma (exampleN02-V05-00-00) - a blank in SteppingVerbose - + 27-11-01 mma (exampleN02-V03-02-04) - vis.mac: /vis/viewer/set/viewpointThetaPhi @@ -269,21 +276,21 @@ PhysicsList migrated to new scheme G4PhysListHelper - Updated ExN02VisManager.cc for new graphics systems and defaults. 07-11-01 S.Tanaka (exampleN02-V03-02-02) -- vis.mac: /vis/viewer/refresh + /vis/viewer/update is replaced - with their equivalent command /vis/viewer/flush. - +- vis.mac: /vis/viewer/refresh + /vis/viewer/update is replaced + with their equivalent command /vis/viewer/flush. + 24-10-01 mma (exampleN02-V03-02-01) - initInter.mac renamed vis.mac - + 19-10-01 S.O'Neale (examples-V03-02-00) - Update reference output 11-10-01 mma (exampleN02-V03-02-00) - adapted to new visualisation commands (initInter and EventAction) - 80 columns max everywhere - + 12-07-01 mma -- DetectorMessenger: setField, help: magnetic field in X dirction +- DetectorMessenger: setField, help: magnetic field in X dirction 20-02-01 S.O'Neale (exampleN02-V03-00-03) update reference outputs following materials-V03-00-04 (tagset 268) @@ -329,7 +336,7 @@ PhysicsList migrated to new scheme G4PhysListHelper - TrackerHit: a Hit = 4 informations: trackID, chamberNb, edep, position. Draw and Print - TrackerSD: ProcessHits. - Print HitsCollection at end of event + Print HitsCollection at end of event 25th November 2000 Steve O'Neale (tagset210) - Update test outputs for min.delta energy cut @@ -354,11 +361,11 @@ June 17, 2000 John Allison (exampleN02-V01-01-00) - Updated exampleN02.out for geant4-01-01-ref-06. 25-02-00 H.Kurashige -- removed RhoZeroDefinition from PhysicsList +- removed RhoZeroDefinition from PhysicsList 15-11-99 M.Maire - example of user SteppingVerbose class: verbose with units - + 16th April 1999 H.Kurashige - modify ExN02SteppingAction::UserSteppingAction - modify ExN02PhysicsList::SetCuts @@ -367,13 +374,13 @@ June 17, 2000 John Allison (exampleN02-V01-01-00) - corrected the Magnetic Field SetField methods - cosmetic change to the name of a volume (chamber), as it was too long. - + 12th Sptember 1998 Michel Maire -- removed the function SetEmProcess() ( contained cin) +- removed the function SetEmProcess() ( contained cin) and the class ExN02PhysicsListMessenger Interchanged N02 and N03. - + 9th August 1998 John Allison - Removed trackerChamber_logVisAtt->SetForceWireframe(true); - Removed G4_SOLVE_TEMPLATES macros (now done in architecture.gmk). @@ -392,7 +399,7 @@ June 17, 2000 John Allison (exampleN02-V01-01-00) - Simplified ExN03VisManager. June 29 , 98 H.Kurashige -- Modified ExN03PhysicsList. +- Modified ExN03PhysicsList. May 15, 98 G. Cosmo @@ -413,8 +420,8 @@ May 05, 98 J. Apostolakis May 01, 98 J. Apostolakis -- Files created by copying from exampleEmPhys2, renaming the files - and the classes within them, changing the string "My" into +- Files created by copying from exampleEmPhys2, renaming the files + and the classes within them, changing the string "My" into - Major changes made: * Event action: deleted energy counting. diff --git a/examples/basic/B3/B3a/CMakeLists.txt b/examples/basic/B3/B3a/CMakeLists.txt index 7f6317f7dd..99e2a7f9f1 100644 --- a/examples/basic/B3/B3a/CMakeLists.txt +++ b/examples/basic/B3/B3a/CMakeLists.txt @@ -1,8 +1,10 @@ - #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B3a) #---------------------------------------------------------------------------- diff --git a/examples/basic/B3/B3a/exampleB3a.cc b/examples/basic/B3/B3a/exampleB3a.cc index 9d3580a0a1..0795e02178 100644 --- a/examples/basic/B3/B3a/exampleB3a.cc +++ b/examples/basic/B3/B3a/exampleB3a.cc @@ -29,11 +29,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4VisExecutive.hh" @@ -64,11 +60,8 @@ int main(int argc,char** argv) // Construct the default run manager // -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = + G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default); // Set mandatory initialization classes // diff --git a/examples/basic/B3/B3a/exampleB3a.out b/examples/basic/B3/B3a/exampleB3a.out index 6074c207b5..50a519c400 100644 --- a/examples/basic/B3/B3a/exampleB3a.out +++ b/examples/basic/B3/B3a/exampleB3a.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +27,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -231,7 +234,8 @@ G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. ### Run 0 start. -... open Root analysis file : scoring.root - done +... create file : scoring.root - done +... open analysis file : scoring.root - done --> Event 0 starts. --> Event 1000 starts. --> Event 2000 starts. @@ -244,11 +248,14 @@ See commands in /vis/modeling/trajectories/ for other options. --> Event 9000 starts. --------------------End of Global Run----------------------- - The run was 10000 events Nb of 'good' e+ annihilations: 1356 - Total dose in patient : 305.61 picoGy + The run was 10000 events Nb of 'good' e+ annihilations: 1290 + Total dose in patient : 307.356 picoGy ------------------------------------------------------------ -... write Root file : scoring.root - done -... close Root file : scoring.root - done +... write file : scoring.root - done +... close file : scoring.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/basic/B3/B3b/CMakeLists.txt b/examples/basic/B3/B3b/CMakeLists.txt index 434e55336e..9627b61cca 100644 --- a/examples/basic/B3/B3b/CMakeLists.txt +++ b/examples/basic/B3/B3b/CMakeLists.txt @@ -1,8 +1,10 @@ - #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B3b) #---------------------------------------------------------------------------- diff --git a/examples/basic/B3/B3b/exampleB3b.cc b/examples/basic/B3/B3b/exampleB3b.cc index 4891e7b851..6e326ae522 100644 --- a/examples/basic/B3/B3b/exampleB3b.cc +++ b/examples/basic/B3/B3b/exampleB3b.cc @@ -29,11 +29,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4VisExecutive.hh" @@ -64,11 +60,8 @@ int main(int argc,char** argv) // Construct the default run manager // -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = + G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default); // Set mandatory initialization classes // diff --git a/examples/basic/B3/B3b/exampleB3b.out b/examples/basic/B3/B3b/exampleB3b.out index 1094b16343..11b14bab10 100644 --- a/examples/basic/B3/B3b/exampleB3b.out +++ b/examples/basic/B3/B3b/exampleB3b.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +27,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -231,7 +234,8 @@ G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. ### Run 0 start. -... open Root analysis file : scoring.root - done +... create file : scoring.root - done +... open analysis file : scoring.root - done --> Event 0 starts. ---> end of event: 0 @@ -246,12 +250,15 @@ See commands in /vis/modeling/trajectories/ for other options. --> Event 9000 starts. --------------------End of Global Run----------------------- - The run was 10000 events Nb of 'good' e+ annihilations: 1356 - Total dose in patient : 305.61 picoGy - Total dose in patient : 3.0561e-10 [sigma: 1.73976e-14 | error: 0.00569274 | coeff: 0.00569274 | eff: 1 | fom: 2805.2 | r2int: 3.24041e-05 | r2eff: 0 | hits: 10000 ] Gy + The run was 10000 events Nb of 'good' e+ annihilations: 1290 + Total dose in patient : 307.356 picoGy + Total dose in patient : 3.07356e-10 [sigma: 1.76019e-14 | error: 0.00572687 | coeff: 0.00572687 | eff: 1 | fom: 30490.6 | r2int: 3.27938e-05 | r2eff: 0 | hits: 10000 ] Gy ------------------------------------------------------------ -... write Root file : scoring.root - done -... close Root file : scoring.root - done +... write file : scoring.root - done +... close file : scoring.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/basic/B3/CMakeLists.txt b/examples/basic/B3/CMakeLists.txt index 6ec1a12534..b87637aab3 100644 --- a/examples/basic/B3/CMakeLists.txt +++ b/examples/basic/B3/CMakeLists.txt @@ -1,8 +1,9 @@ - -#---Adding example B2 subdirectories explicitly +#---Adding example B3 subdirectories explicitly # and a custom target to for building all example B2 options ---------- - -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(B3a) add_subdirectory(B3b) diff --git a/examples/basic/B3/History b/examples/basic/B3/History index 3780df09fb..d4eb364353 100644 --- a/examples/basic/B3/History +++ b/examples/basic/B3/History @@ -14,6 +14,13 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +02/11/20 B.Morgan (exampleB3-V10-06-01) +- Support same CMake version range as core Geant4 + +30/06/20 G. Cosmo (exampleB3-V10-06-00) +- Migrated examples to use G4RunManagerFactory, therefore implicitly enabling + tasking by default in MT builds. + 21/11/19 G. Cosmo (exampleB3-V10-05-02) - Use default MixMax random engine. @@ -25,7 +32,7 @@ track of all tags. 30/11/18 I. Hrivnacova (exampleB3-V10-04-05) - Moved the previous update from B3b in B3 documentation - and removed obsolete README files from B3a and B3b. + and removed obsolete README files from B3a and B3b. 16/11/18 J. Madsen (exampleB3-V10-04-04) - Updated documentation for example B3b @@ -35,7 +42,7 @@ track of all tags. to demonstrate statistical computations in a basic example 30/10/18 I. Hrivnacova (exampleB3-V10-04-02) -- Removed usage of G4ScoreNtupleWriter; +- Removed usage of G4ScoreNtupleWriter; will be demonstrated in a new extended analysis example 26/10/18 I. Hrivnacova (exampleB3-V10-04-01) @@ -72,12 +79,12 @@ track of all tags. 05/11/15 I. Hrivnacova (exampleB3-V10-01-01) - Splitting example in two variants of merging data: - -B3a (new) with the code based on G4Parameter + -B3a (new) with the code based on G4Parameter -B3b (as previous B3) with the code based on G4Run 04/05/15 I. Hrivnacova (exampleB3-V10-01-00) - Coding guidelines: removed empty lines - + 29/11/14 I. Hrivnacova - Use G4endl instead of \n in G4cout; this makes each new line in the output on threads preceded with @@ -91,12 +98,12 @@ track of all tags. 04/11/14 L. Garnier (exampleB3-V10-00-01) - Remove old G4UI_USE/G4VIS_USE -- Move G4UIExecutive at the beginning of main() +- Move G4UIExecutive at the beginning of main() 29/10/13 I. Hrivnacova (exampleB3-V09-06-06) - Removed SetNumberOfThreads(4) from main (use Geant4 default) - Updated README - + 09/09/13 M.Asai (exampleB3-V09-06-05) - B3PrimaryGeneratorAction.cc : Change G4ParticleTable::GetIon() to G4IonTable::GetIon(), as the former method becomes obsolete. @@ -107,44 +114,44 @@ track of all tags. - Get hits collection IDs in B3Run::RecordEvent (and not B3Run constructor) - Add a test for primary generator action in B3RunAction::EndOfRunAction() as it does not exist on master - + 05/06/13 mma (exampleB3-V09-06-03) - add section about ACTION INITALIZATION to README and .README - + 01/06/13 mma (exampleB3-V09-06-02) - Migration for MT: forgotten to add B3Run - + 31/05/13 mma (exampleB3-V09-06-01) - Migration for MT: Added B3ActionInitialization, B3Run Removed B3EventAction and updated actions classes accordingly. README files still need to be updated. - + 28/02/13 I. Hrivnacova - When building materials with NistManager - do not set fromIsotopes argument (which was set to false), + do not set fromIsotopes argument (which was set to false), as since 9.6 all materials have to be built from isotopes. Thanks to V. Ivantchenko for pointing at this. -21/11/11 I. Hrivnacova +21/11/11 I. Hrivnacova - Improved vis.mac -- Removed alternative detector construction class +- Removed alternative detector construction class 14/11/11 I. Hrivnacova - The first tagged version of the new B3 example (tagged in basic). -11-11-11 (mma) +11-11-11 (mma) - EventAction: printModulo 10000 - -01-11-11 (mma) + +01-11-11 (mma) - DetectorConstruction2: - add an offset when replicate dPhi - -29-09-11 (mma) + +29-09-11 (mma) - DetectorConstruction: - replace crystal shape Trd by Box - add a gap for wrapping - -27-06-11 michel maire + +27-06-11 michel maire - Created. diff --git a/examples/basic/B4/B4a/CMakeLists.txt b/examples/basic/B4/B4a/CMakeLists.txt index 65f10f09fc..dfa00d9cb9 100644 --- a/examples/basic/B4/B4a/CMakeLists.txt +++ b/examples/basic/B4/B4a/CMakeLists.txt @@ -1,8 +1,10 @@ - #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B4a) #---------------------------------------------------------------------------- diff --git a/examples/basic/B4/B4a/exampleB4a.cc b/examples/basic/B4/B4a/exampleB4a.cc index b8d7182a2f..443c78412f 100644 --- a/examples/basic/B4/B4a/exampleB4a.cc +++ b/examples/basic/B4/B4a/exampleB4a.cc @@ -30,11 +30,7 @@ #include "B4DetectorConstruction.hh" #include "B4aActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIcommand.hh" @@ -99,13 +95,12 @@ int main(int argc,char** argv) // Construct the default run manager // + auto* runManager = + G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default); #ifdef G4MULTITHREADED - auto runManager = new G4MTRunManager; if ( nThreads > 0 ) { runManager->SetNumberOfThreads(nThreads); } -#else - auto runManager = new G4RunManager; #endif // Set mandatory initialization classes diff --git a/examples/basic/B4/B4a/exampleB4a.out b/examples/basic/B4/B4a/exampleB4a.out index deafd6dabb..353c30650d 100644 --- a/examples/basic/B4/B4a/exampleB4a.out +++ b/examples/basic/B4/B4a/exampleB4a.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,6 +16,15 @@ <<< Geant4 Physics List simulation engine: FTFP_BERT Using Root + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : Analysis_W013 + issued by : G4RootNtupleFileManager::SetNtupleMergingMode +Merging ntuples is not applicable in sequential application. +Setting was ignored. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... @@ -29,10 +39,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -90,7 +102,7 @@ Some /vis commands (optionally) take a string to specify colour. ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -108,7 +120,7 @@ Checking overlaps for volume Gap (G4Box) ... OK! ---> The calorimeter is 10 layers of: [ 10mm of G4_Pb + 5mm of liquidArgon ] ------------------------------------------------------------ - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -139,10 +151,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -166,10 +179,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -197,9 +211,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -213,14 +227,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -229,9 +243,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -243,9 +257,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -256,9 +270,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -272,14 +286,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -288,9 +302,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -304,14 +318,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -320,9 +334,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -336,14 +350,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -352,9 +366,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -369,14 +383,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -385,9 +399,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -402,14 +416,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -418,9 +432,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -434,14 +448,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -450,9 +464,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -466,14 +480,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -502,6 +516,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -576,6 +612,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -687,8 +736,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -753,8 +802,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -795,25 +844,28 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -... open Root analysis file : B4.root - done +... create file : B4.root - done +... open analysis file : B4.root - done --> Event 0 starts. ---> End of event: 0 - Absorber: total energy: 270.018 MeV total track length: 19.2794 cm - Gap: total energy: 26.6652 MeV total track length: 13.6558 cm + Absorber: total energy: 272.576 MeV total track length: 19.7955 cm + Gap: total energy: 14.3219 MeV total track length: 6.97335 cm ----> print histograms statistic for the entire run - EAbs : mean = 270.018 MeV rms = 0 eV - EGap : mean = 26.6652 MeV rms = 0 eV - LAbs : mean = 19.2794 cm rms = 0 fm - LGap : mean = 13.6558 cm rms = 0 fm -... write Root file : B4.root - done -... close Root file : B4.root - done + EAbs : mean = 272.576 MeV rms = 0 eV + EGap : mean = 14.3219 MeV rms = 0 eV + LAbs : mean = 19.7955 cm rms = 0 fm + LGap : mean = 6.97335 cm rms = 0 fm +... write file : B4.root - done +... close file : B4.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Transportation, phot, compt, conv Rayl, msc, eIoni, eBrem CoulombScat, msc, eIoni, eBrem @@ -829,8 +881,21 @@ See commands in /vis/modeling/trajectories/ for other options. hIoni, hIoni, hIoni, hIoni hIoni, hIoni, hIoni, hIoni hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni hIoni, hIoni, photonNuclear, electronNuclear muonNuclear, Decay, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic @@ -840,14 +905,22 @@ See commands in /vis/modeling/trajectories/ for other options. hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, neutronInelastic, nCapture protonInelastic, pi+Inelastic, pi-Inelastic, kaon+Inelastic - kaon-Inelastic, kaon0LInelastic, kaon0SInelastic, lambdaInelastic -anti-lambdaInelastic, sigma-Inelastic,anti_sigma-Inelastic, sigma+Inelastic -anti_sigma+Inelastic, xi-Inelastic, anti_xi-Inelastic, xi0Inelastic - anti_xi0Inelastic, omega-Inelastic,anti_omega-Inelastic,anti_protonInelastic + kaon-Inelastic, kaon0LInelastic, kaon0SInelastic,anti_protonInelastic anti_neutronInelastic,anti_deuteronInelastic,anti_tritonInelastic, anti_He3Inelastic -anti_alphaInelastic,hFritiofCaptureAtRest,hBertiniCaptureAtRest,muMinusCaptureAtRest - dInelastic, tInelastic, He3Inelastic, alphaInelastic - ionInelastic, nKiller +anti_alphaInelastic, lambdaInelastic, sigma+Inelastic, sigma-Inelastic + xi0Inelastic, xi-Inelastic, omega-Inelastic,anti_lambdaInelastic +anti_sigma+Inelastic,anti_sigma-Inelastic, anti_xi0Inelastic, anti_xi-Inelastic +anti_omega-Inelastic, D+Inelastic, D0Inelastic, D-Inelastic + anti_D0Inelastic, Ds+Inelastic, Ds-Inelastic, B+Inelastic + B0Inelastic, B-Inelastic, anti_B0Inelastic, Bs0Inelastic + anti_Bs0Inelastic, Bc+Inelastic, Bc-Inelastic, lambda_c+Inelastic + xi_c+Inelastic, xi_c0Inelastic, omega_c0Inelastic, lambda_bInelastic + xi_b0Inelastic, xi_b-Inelastic, omega_b-Inelastic,anti_lambda_c+Inelastic +anti_xi_c+Inelastic,anti_xi_c0Inelastic,anti_omega_c0Inelastic,anti_lambda_bInelastic +anti_xi_b0Inelastic,anti_xi_b-Inelastic,anti_omega_b-Inelastic,hFritiofCaptureAtRest +hBertiniCaptureAtRest,muMinusCaptureAtRest, dInelastic, tInelastic + He3Inelastic, alphaInelastic, ionInelastic, nKiller + phot: for gamma SubType=12 BuildTable=0 LambdaPrime table from 200 keV to 100 TeV in 61 bins @@ -872,10 +945,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -899,10 +973,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -930,9 +1005,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -946,14 +1021,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -962,9 +1037,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -976,9 +1051,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -989,9 +1064,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1005,14 +1080,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1021,9 +1096,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1037,14 +1112,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1053,9 +1128,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1069,14 +1144,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -1085,9 +1160,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1102,14 +1177,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1118,9 +1193,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1135,14 +1210,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -1151,9 +1226,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1167,14 +1242,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1183,9 +1258,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1199,14 +1274,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1214,20 +1289,24 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV ### Run 1 starts. -... open Root analysis file : B4.root - done +... create file : B4.root - done +... open analysis file : B4.root - done --> Event 0 starts. ---> End of event: 0 - Absorber: total energy: 282.358 MeV total track length: 20.3959 cm - Gap: total energy: 17.2963 MeV total track length: 8.12105 cm + Absorber: total energy: 281.551 MeV total track length: 20.6175 cm + Gap: total energy: 17.2447 MeV total track length: 8.06701 cm ----> print histograms statistic for the entire run - EAbs : mean = 282.358 MeV rms = 0 eV - EGap : mean = 17.2963 MeV rms = 0 eV - LAbs : mean = 20.3959 cm rms = 0 fm - LGap : mean = 8.12105 cm rms = 0 fm -... write Root file : B4.root - done -... close Root file : B4.root - done + EAbs : mean = 281.551 MeV rms = 0 eV + EGap : mean = 17.2447 MeV rms = 0 eV + LAbs : mean = 20.6175 cm rms = 0 fm + LGap : mean = 8.06701 cm rms = 0 fm +... write file : B4.root - done +... close file : B4.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. phot: for gamma SubType=12 BuildTable=0 LambdaPrime table from 200 keV to 100 TeV in 61 bins @@ -1252,10 +1331,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1279,10 +1359,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1310,9 +1391,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1326,14 +1407,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1342,9 +1423,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1356,9 +1437,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1369,9 +1450,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1385,14 +1466,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1401,9 +1482,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1417,14 +1498,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1433,9 +1514,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1449,14 +1530,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -1465,9 +1546,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1482,14 +1563,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1498,9 +1579,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1515,14 +1596,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -1531,9 +1612,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1547,14 +1628,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1563,9 +1644,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1579,14 +1660,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1594,19 +1675,23 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV ### Run 2 starts. -... open Root analysis file : B4.root - done +... create file : B4.root - done +... open analysis file : B4.root - done --> Event 0 starts. ---> End of event: 0 - Absorber: total energy: 466.54 MeV total track length: 33.5574 cm - Gap: total energy: 17.0074 MeV total track length: 8.40768 cm + Absorber: total energy: 442.375 MeV total track length: 31.86 cm + Gap: total energy: 26.8732 MeV total track length: 13.3258 cm ----> print histograms statistic for the entire run - EAbs : mean = 466.54 MeV rms = 0 eV - EGap : mean = 17.0074 MeV rms = 0 eV - LAbs : mean = 33.5574 cm rms = 0 fm - LGap : mean = 8.40768 cm rms = 0 fm -... write Root file : B4.root - done -... close Root file : B4.root - done + EAbs : mean = 442.375 MeV rms = 0 eV + EGap : mean = 26.8732 MeV rms = 0 eV + LAbs : mean = 31.86 cm rms = 0 fm + LGap : mean = 13.3258 cm rms = 0 fm +... write file : B4.root - done +... close file : B4.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/basic/B4/B4a/include/B4Analysis.hh b/examples/basic/B4/B4a/include/B4Analysis.hh index 473be8e963..78c4412df4 100644 --- a/examples/basic/B4/B4a/include/B4Analysis.hh +++ b/examples/basic/B4/B4a/include/B4Analysis.hh @@ -34,4 +34,7 @@ //#include "g4csv.hh" //#include "g4xml.hh" +//#include "G4GenericAnalysisManager.hh" +//using G4AnalysisManager = G4GenericAnalysisManager; + #endif diff --git a/examples/basic/B4/B4a/run2.mac b/examples/basic/B4/B4a/run2.mac index 3de3c49bec..35e16a6901 100644 --- a/examples/basic/B4/B4a/run2.mac +++ b/examples/basic/B4/B4a/run2.mac @@ -4,6 +4,8 @@ # % exampleB4[a,b,c,d] run2.mac # #/run/numberOfThreads 4 +#/control/cout/ignoreThreadsExcept 0 +# /run/initialize # # Default kinemtics: diff --git a/examples/basic/B4/B4b/CMakeLists.txt b/examples/basic/B4/B4b/CMakeLists.txt index 5b2a36df8e..e117b14e01 100644 --- a/examples/basic/B4/B4b/CMakeLists.txt +++ b/examples/basic/B4/B4b/CMakeLists.txt @@ -1,8 +1,10 @@ - #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B4b) #---------------------------------------------------------------------------- diff --git a/examples/basic/B4/B4b/exampleB4b.cc b/examples/basic/B4/B4b/exampleB4b.cc index f1b55c693b..dafb0b6f6b 100644 --- a/examples/basic/B4/B4b/exampleB4b.cc +++ b/examples/basic/B4/B4b/exampleB4b.cc @@ -30,11 +30,7 @@ #include "B4DetectorConstruction.hh" #include "B4bActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIcommand.hh" @@ -99,13 +95,12 @@ int main(int argc,char** argv) // Construct the default run manager // + auto* runManager = + G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default); #ifdef G4MULTITHREADED - auto runManager = new G4MTRunManager; if ( nThreads > 0 ) { runManager->SetNumberOfThreads(nThreads); } -#else - auto runManager = new G4RunManager; #endif // Set mandatory initialization classes diff --git a/examples/basic/B4/B4b/exampleB4b.out b/examples/basic/B4/B4b/exampleB4b.out index 617329b890..84c87f78fd 100644 --- a/examples/basic/B4/B4b/exampleB4b.out +++ b/examples/basic/B4/B4b/exampleB4b.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,6 +16,15 @@ <<< Geant4 Physics List simulation engine: FTFP_BERT Using Root + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : Analysis_W013 + issued by : G4RootNtupleFileManager::SetNtupleMergingMode +Merging ntuples is not applicable in sequential application. +Setting was ignored. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... @@ -29,10 +39,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -90,7 +102,7 @@ Some /vis commands (optionally) take a string to specify colour. ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -108,7 +120,7 @@ Checking overlaps for volume Gap (G4Box) ... OK! ---> The calorimeter is 10 layers of: [ 10mm of G4_Pb + 5mm of liquidArgon ] ------------------------------------------------------------ - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -139,10 +151,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -166,10 +179,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -197,9 +211,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -213,14 +227,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -229,9 +243,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -243,9 +257,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -256,9 +270,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -272,14 +286,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -288,9 +302,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -304,14 +318,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -320,9 +334,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -336,14 +350,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -352,9 +366,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -369,14 +383,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -385,9 +399,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -402,14 +416,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -418,9 +432,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -434,14 +448,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -450,9 +464,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -466,14 +480,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -502,6 +516,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -576,6 +612,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -687,8 +736,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -753,8 +802,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -795,26 +844,29 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. ### Run 0 start. -... open Root analysis file : B4.root - done +... create file : B4.root - done +... open analysis file : B4.root - done --> Event 0 starts. ---> End of event: 0 - Absorber: total energy: 270.018 MeV total track length: 19.2794 cm - Gap: total energy: 26.6652 MeV total track length: 13.6558 cm + Absorber: total energy: 272.576 MeV total track length: 19.7955 cm + Gap: total energy: 14.3219 MeV total track length: 6.97335 cm ----> print histograms statistic for the entire run - EAbs : mean = 270.018 MeV rms = 0 eV - EGap : mean = 26.6652 MeV rms = 0 eV - LAbs : mean = 19.2794 cm rms = 0 fm - LGap : mean = 13.6558 cm rms = 0 fm -... write Root file : B4.root - done -... close Root file : B4.root - done + EAbs : mean = 272.576 MeV rms = 0 eV + EGap : mean = 14.3219 MeV rms = 0 eV + LAbs : mean = 19.7955 cm rms = 0 fm + LGap : mean = 6.97335 cm rms = 0 fm +... write file : B4.root - done +... close file : B4.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Transportation, phot, compt, conv Rayl, msc, eIoni, eBrem CoulombScat, msc, eIoni, eBrem @@ -830,8 +882,21 @@ See commands in /vis/modeling/trajectories/ for other options. hIoni, hIoni, hIoni, hIoni hIoni, hIoni, hIoni, hIoni hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni hIoni, hIoni, photonNuclear, electronNuclear muonNuclear, Decay, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic @@ -841,14 +906,22 @@ See commands in /vis/modeling/trajectories/ for other options. hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, neutronInelastic, nCapture protonInelastic, pi+Inelastic, pi-Inelastic, kaon+Inelastic - kaon-Inelastic, kaon0LInelastic, kaon0SInelastic, lambdaInelastic -anti-lambdaInelastic, sigma-Inelastic,anti_sigma-Inelastic, sigma+Inelastic -anti_sigma+Inelastic, xi-Inelastic, anti_xi-Inelastic, xi0Inelastic - anti_xi0Inelastic, omega-Inelastic,anti_omega-Inelastic,anti_protonInelastic + kaon-Inelastic, kaon0LInelastic, kaon0SInelastic,anti_protonInelastic anti_neutronInelastic,anti_deuteronInelastic,anti_tritonInelastic, anti_He3Inelastic -anti_alphaInelastic,hFritiofCaptureAtRest,hBertiniCaptureAtRest,muMinusCaptureAtRest - dInelastic, tInelastic, He3Inelastic, alphaInelastic - ionInelastic, nKiller +anti_alphaInelastic, lambdaInelastic, sigma+Inelastic, sigma-Inelastic + xi0Inelastic, xi-Inelastic, omega-Inelastic,anti_lambdaInelastic +anti_sigma+Inelastic,anti_sigma-Inelastic, anti_xi0Inelastic, anti_xi-Inelastic +anti_omega-Inelastic, D+Inelastic, D0Inelastic, D-Inelastic + anti_D0Inelastic, Ds+Inelastic, Ds-Inelastic, B+Inelastic + B0Inelastic, B-Inelastic, anti_B0Inelastic, Bs0Inelastic + anti_Bs0Inelastic, Bc+Inelastic, Bc-Inelastic, lambda_c+Inelastic + xi_c+Inelastic, xi_c0Inelastic, omega_c0Inelastic, lambda_bInelastic + xi_b0Inelastic, xi_b-Inelastic, omega_b-Inelastic,anti_lambda_c+Inelastic +anti_xi_c+Inelastic,anti_xi_c0Inelastic,anti_omega_c0Inelastic,anti_lambda_bInelastic +anti_xi_b0Inelastic,anti_xi_b-Inelastic,anti_omega_b-Inelastic,hFritiofCaptureAtRest +hBertiniCaptureAtRest,muMinusCaptureAtRest, dInelastic, tInelastic + He3Inelastic, alphaInelastic, ionInelastic, nKiller + phot: for gamma SubType=12 BuildTable=0 LambdaPrime table from 200 keV to 100 TeV in 61 bins @@ -873,10 +946,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -900,10 +974,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -931,9 +1006,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -947,14 +1022,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -963,9 +1038,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -977,9 +1052,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -990,9 +1065,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1006,14 +1081,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1022,9 +1097,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1038,14 +1113,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1054,9 +1129,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1070,14 +1145,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -1086,9 +1161,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1103,14 +1178,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1119,9 +1194,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1136,14 +1211,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -1152,9 +1227,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1168,14 +1243,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1184,9 +1259,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1200,14 +1275,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1216,20 +1291,24 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV ### Run 1 starts. ### Run 1 start. -... open Root analysis file : B4.root - done +... create file : B4.root - done +... open analysis file : B4.root - done --> Event 0 starts. ---> End of event: 0 - Absorber: total energy: 282.358 MeV total track length: 20.3959 cm - Gap: total energy: 17.2963 MeV total track length: 8.12105 cm + Absorber: total energy: 281.551 MeV total track length: 20.6175 cm + Gap: total energy: 17.2447 MeV total track length: 8.06701 cm ----> print histograms statistic for the entire run - EAbs : mean = 282.358 MeV rms = 0 eV - EGap : mean = 17.2963 MeV rms = 0 eV - LAbs : mean = 20.3959 cm rms = 0 fm - LGap : mean = 8.12105 cm rms = 0 fm -... write Root file : B4.root - done -... close Root file : B4.root - done + EAbs : mean = 281.551 MeV rms = 0 eV + EGap : mean = 17.2447 MeV rms = 0 eV + LAbs : mean = 20.6175 cm rms = 0 fm + LGap : mean = 8.06701 cm rms = 0 fm +... write file : B4.root - done +... close file : B4.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. phot: for gamma SubType=12 BuildTable=0 LambdaPrime table from 200 keV to 100 TeV in 61 bins @@ -1254,10 +1333,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1281,10 +1361,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1312,9 +1393,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1328,14 +1409,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1344,9 +1425,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1358,9 +1439,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1371,9 +1452,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1387,14 +1468,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1403,9 +1484,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1419,14 +1500,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1435,9 +1516,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1451,14 +1532,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -1467,9 +1548,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1484,14 +1565,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1500,9 +1581,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1517,14 +1598,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -1533,9 +1614,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1549,14 +1630,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1565,9 +1646,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1581,14 +1662,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1597,19 +1678,23 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV ### Run 2 starts. ### Run 2 start. -... open Root analysis file : B4.root - done +... create file : B4.root - done +... open analysis file : B4.root - done --> Event 0 starts. ---> End of event: 0 - Absorber: total energy: 466.54 MeV total track length: 33.5574 cm - Gap: total energy: 17.0074 MeV total track length: 8.40768 cm + Absorber: total energy: 442.375 MeV total track length: 31.86 cm + Gap: total energy: 26.8732 MeV total track length: 13.3258 cm ----> print histograms statistic for the entire run - EAbs : mean = 466.54 MeV rms = 0 eV - EGap : mean = 17.0074 MeV rms = 0 eV - LAbs : mean = 33.5574 cm rms = 0 fm - LGap : mean = 8.40768 cm rms = 0 fm -... write Root file : B4.root - done -... close Root file : B4.root - done + EAbs : mean = 442.375 MeV rms = 0 eV + EGap : mean = 26.8732 MeV rms = 0 eV + LAbs : mean = 31.86 cm rms = 0 fm + LGap : mean = 13.3258 cm rms = 0 fm +... write file : B4.root - done +... close file : B4.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/basic/B4/B4b/include/B4Analysis.hh b/examples/basic/B4/B4b/include/B4Analysis.hh index 473be8e963..78c4412df4 100644 --- a/examples/basic/B4/B4b/include/B4Analysis.hh +++ b/examples/basic/B4/B4b/include/B4Analysis.hh @@ -34,4 +34,7 @@ //#include "g4csv.hh" //#include "g4xml.hh" +//#include "G4GenericAnalysisManager.hh" +//using G4AnalysisManager = G4GenericAnalysisManager; + #endif diff --git a/examples/basic/B4/B4b/run2.mac b/examples/basic/B4/B4b/run2.mac index 3de3c49bec..35e16a6901 100644 --- a/examples/basic/B4/B4b/run2.mac +++ b/examples/basic/B4/B4b/run2.mac @@ -4,6 +4,8 @@ # % exampleB4[a,b,c,d] run2.mac # #/run/numberOfThreads 4 +#/control/cout/ignoreThreadsExcept 0 +# /run/initialize # # Default kinemtics: diff --git a/examples/basic/B4/B4c/CMakeLists.txt b/examples/basic/B4/B4c/CMakeLists.txt index 779f68db1b..6d7c5ea701 100644 --- a/examples/basic/B4/B4c/CMakeLists.txt +++ b/examples/basic/B4/B4c/CMakeLists.txt @@ -1,8 +1,10 @@ - #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B4c) #---------------------------------------------------------------------------- diff --git a/examples/basic/B4/B4c/exampleB4c.cc b/examples/basic/B4/B4c/exampleB4c.cc index 1066945f95..c1567f9aef 100644 --- a/examples/basic/B4/B4c/exampleB4c.cc +++ b/examples/basic/B4/B4c/exampleB4c.cc @@ -30,11 +30,7 @@ #include "B4cDetectorConstruction.hh" #include "B4cActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIcommand.hh" @@ -99,13 +95,12 @@ int main(int argc,char** argv) // Construct the default run manager // + auto* runManager = + G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default); #ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; if ( nThreads > 0 ) { runManager->SetNumberOfThreads(nThreads); } -#else - G4RunManager * runManager = new G4RunManager; #endif // Set mandatory initialization classes diff --git a/examples/basic/B4/B4c/exampleB4c.out b/examples/basic/B4/B4c/exampleB4c.out index deafd6dabb..353c30650d 100644 --- a/examples/basic/B4/B4c/exampleB4c.out +++ b/examples/basic/B4/B4c/exampleB4c.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,6 +16,15 @@ <<< Geant4 Physics List simulation engine: FTFP_BERT Using Root + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : Analysis_W013 + issued by : G4RootNtupleFileManager::SetNtupleMergingMode +Merging ntuples is not applicable in sequential application. +Setting was ignored. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... @@ -29,10 +39,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -90,7 +102,7 @@ Some /vis commands (optionally) take a string to specify colour. ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -108,7 +120,7 @@ Checking overlaps for volume Gap (G4Box) ... OK! ---> The calorimeter is 10 layers of: [ 10mm of G4_Pb + 5mm of liquidArgon ] ------------------------------------------------------------ - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -139,10 +151,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -166,10 +179,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -197,9 +211,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -213,14 +227,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -229,9 +243,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -243,9 +257,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -256,9 +270,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -272,14 +286,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -288,9 +302,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -304,14 +318,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -320,9 +334,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -336,14 +350,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -352,9 +366,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -369,14 +383,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -385,9 +399,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -402,14 +416,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -418,9 +432,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -434,14 +448,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -450,9 +464,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -466,14 +480,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -502,6 +516,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -576,6 +612,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -687,8 +736,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -753,8 +802,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -795,25 +844,28 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -... open Root analysis file : B4.root - done +... create file : B4.root - done +... open analysis file : B4.root - done --> Event 0 starts. ---> End of event: 0 - Absorber: total energy: 270.018 MeV total track length: 19.2794 cm - Gap: total energy: 26.6652 MeV total track length: 13.6558 cm + Absorber: total energy: 272.576 MeV total track length: 19.7955 cm + Gap: total energy: 14.3219 MeV total track length: 6.97335 cm ----> print histograms statistic for the entire run - EAbs : mean = 270.018 MeV rms = 0 eV - EGap : mean = 26.6652 MeV rms = 0 eV - LAbs : mean = 19.2794 cm rms = 0 fm - LGap : mean = 13.6558 cm rms = 0 fm -... write Root file : B4.root - done -... close Root file : B4.root - done + EAbs : mean = 272.576 MeV rms = 0 eV + EGap : mean = 14.3219 MeV rms = 0 eV + LAbs : mean = 19.7955 cm rms = 0 fm + LGap : mean = 6.97335 cm rms = 0 fm +... write file : B4.root - done +... close file : B4.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Transportation, phot, compt, conv Rayl, msc, eIoni, eBrem CoulombScat, msc, eIoni, eBrem @@ -829,8 +881,21 @@ See commands in /vis/modeling/trajectories/ for other options. hIoni, hIoni, hIoni, hIoni hIoni, hIoni, hIoni, hIoni hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni hIoni, hIoni, photonNuclear, electronNuclear muonNuclear, Decay, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic @@ -840,14 +905,22 @@ See commands in /vis/modeling/trajectories/ for other options. hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, neutronInelastic, nCapture protonInelastic, pi+Inelastic, pi-Inelastic, kaon+Inelastic - kaon-Inelastic, kaon0LInelastic, kaon0SInelastic, lambdaInelastic -anti-lambdaInelastic, sigma-Inelastic,anti_sigma-Inelastic, sigma+Inelastic -anti_sigma+Inelastic, xi-Inelastic, anti_xi-Inelastic, xi0Inelastic - anti_xi0Inelastic, omega-Inelastic,anti_omega-Inelastic,anti_protonInelastic + kaon-Inelastic, kaon0LInelastic, kaon0SInelastic,anti_protonInelastic anti_neutronInelastic,anti_deuteronInelastic,anti_tritonInelastic, anti_He3Inelastic -anti_alphaInelastic,hFritiofCaptureAtRest,hBertiniCaptureAtRest,muMinusCaptureAtRest - dInelastic, tInelastic, He3Inelastic, alphaInelastic - ionInelastic, nKiller +anti_alphaInelastic, lambdaInelastic, sigma+Inelastic, sigma-Inelastic + xi0Inelastic, xi-Inelastic, omega-Inelastic,anti_lambdaInelastic +anti_sigma+Inelastic,anti_sigma-Inelastic, anti_xi0Inelastic, anti_xi-Inelastic +anti_omega-Inelastic, D+Inelastic, D0Inelastic, D-Inelastic + anti_D0Inelastic, Ds+Inelastic, Ds-Inelastic, B+Inelastic + B0Inelastic, B-Inelastic, anti_B0Inelastic, Bs0Inelastic + anti_Bs0Inelastic, Bc+Inelastic, Bc-Inelastic, lambda_c+Inelastic + xi_c+Inelastic, xi_c0Inelastic, omega_c0Inelastic, lambda_bInelastic + xi_b0Inelastic, xi_b-Inelastic, omega_b-Inelastic,anti_lambda_c+Inelastic +anti_xi_c+Inelastic,anti_xi_c0Inelastic,anti_omega_c0Inelastic,anti_lambda_bInelastic +anti_xi_b0Inelastic,anti_xi_b-Inelastic,anti_omega_b-Inelastic,hFritiofCaptureAtRest +hBertiniCaptureAtRest,muMinusCaptureAtRest, dInelastic, tInelastic + He3Inelastic, alphaInelastic, ionInelastic, nKiller + phot: for gamma SubType=12 BuildTable=0 LambdaPrime table from 200 keV to 100 TeV in 61 bins @@ -872,10 +945,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -899,10 +973,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -930,9 +1005,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -946,14 +1021,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -962,9 +1037,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -976,9 +1051,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -989,9 +1064,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1005,14 +1080,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1021,9 +1096,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1037,14 +1112,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1053,9 +1128,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1069,14 +1144,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -1085,9 +1160,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1102,14 +1177,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1118,9 +1193,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1135,14 +1210,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -1151,9 +1226,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1167,14 +1242,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1183,9 +1258,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1199,14 +1274,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1214,20 +1289,24 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV ### Run 1 starts. -... open Root analysis file : B4.root - done +... create file : B4.root - done +... open analysis file : B4.root - done --> Event 0 starts. ---> End of event: 0 - Absorber: total energy: 282.358 MeV total track length: 20.3959 cm - Gap: total energy: 17.2963 MeV total track length: 8.12105 cm + Absorber: total energy: 281.551 MeV total track length: 20.6175 cm + Gap: total energy: 17.2447 MeV total track length: 8.06701 cm ----> print histograms statistic for the entire run - EAbs : mean = 282.358 MeV rms = 0 eV - EGap : mean = 17.2963 MeV rms = 0 eV - LAbs : mean = 20.3959 cm rms = 0 fm - LGap : mean = 8.12105 cm rms = 0 fm -... write Root file : B4.root - done -... close Root file : B4.root - done + EAbs : mean = 281.551 MeV rms = 0 eV + EGap : mean = 17.2447 MeV rms = 0 eV + LAbs : mean = 20.6175 cm rms = 0 fm + LGap : mean = 8.06701 cm rms = 0 fm +... write file : B4.root - done +... close file : B4.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. phot: for gamma SubType=12 BuildTable=0 LambdaPrime table from 200 keV to 100 TeV in 61 bins @@ -1252,10 +1331,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1279,10 +1359,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1310,9 +1391,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1326,14 +1407,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1342,9 +1423,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1356,9 +1437,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1369,9 +1450,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1385,14 +1466,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1401,9 +1482,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1417,14 +1498,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1433,9 +1514,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1449,14 +1530,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -1465,9 +1546,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1482,14 +1563,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1498,9 +1579,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1515,14 +1596,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -1531,9 +1612,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1547,14 +1628,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1563,9 +1644,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1579,14 +1660,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1594,19 +1675,23 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV ### Run 2 starts. -... open Root analysis file : B4.root - done +... create file : B4.root - done +... open analysis file : B4.root - done --> Event 0 starts. ---> End of event: 0 - Absorber: total energy: 466.54 MeV total track length: 33.5574 cm - Gap: total energy: 17.0074 MeV total track length: 8.40768 cm + Absorber: total energy: 442.375 MeV total track length: 31.86 cm + Gap: total energy: 26.8732 MeV total track length: 13.3258 cm ----> print histograms statistic for the entire run - EAbs : mean = 466.54 MeV rms = 0 eV - EGap : mean = 17.0074 MeV rms = 0 eV - LAbs : mean = 33.5574 cm rms = 0 fm - LGap : mean = 8.40768 cm rms = 0 fm -... write Root file : B4.root - done -... close Root file : B4.root - done + EAbs : mean = 442.375 MeV rms = 0 eV + EGap : mean = 26.8732 MeV rms = 0 eV + LAbs : mean = 31.86 cm rms = 0 fm + LGap : mean = 13.3258 cm rms = 0 fm +... write file : B4.root - done +... close file : B4.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/basic/B4/B4c/include/B4Analysis.hh b/examples/basic/B4/B4c/include/B4Analysis.hh index 473be8e963..78c4412df4 100644 --- a/examples/basic/B4/B4c/include/B4Analysis.hh +++ b/examples/basic/B4/B4c/include/B4Analysis.hh @@ -34,4 +34,7 @@ //#include "g4csv.hh" //#include "g4xml.hh" +//#include "G4GenericAnalysisManager.hh" +//using G4AnalysisManager = G4GenericAnalysisManager; + #endif diff --git a/examples/basic/B4/B4c/run2.mac b/examples/basic/B4/B4c/run2.mac index 3de3c49bec..35e16a6901 100644 --- a/examples/basic/B4/B4c/run2.mac +++ b/examples/basic/B4/B4c/run2.mac @@ -4,6 +4,8 @@ # % exampleB4[a,b,c,d] run2.mac # #/run/numberOfThreads 4 +#/control/cout/ignoreThreadsExcept 0 +# /run/initialize # # Default kinemtics: diff --git a/examples/basic/B4/B4d/CMakeLists.txt b/examples/basic/B4/B4d/CMakeLists.txt index dc4e0ee9ad..c6d628e7ec 100644 --- a/examples/basic/B4/B4d/CMakeLists.txt +++ b/examples/basic/B4/B4d/CMakeLists.txt @@ -1,8 +1,10 @@ - #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B4d) #---------------------------------------------------------------------------- diff --git a/examples/basic/B4/B4d/exampleB4d.cc b/examples/basic/B4/B4d/exampleB4d.cc index 3b2f5ee38e..002f86ca0f 100644 --- a/examples/basic/B4/B4d/exampleB4d.cc +++ b/examples/basic/B4/B4d/exampleB4d.cc @@ -31,11 +31,7 @@ #include "B4dActionInitialization.hh" #include "B4Analysis.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "FTFP_BERT.hh" @@ -98,13 +94,13 @@ int main(int argc,char** argv) // Construct the MT run manager // + + auto* runManager = + G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default); #ifdef G4MULTITHREADED - auto runManager = new G4MTRunManager; - if ( nThreads > 0 ) { + if ( nThreads > 0 ) { runManager->SetNumberOfThreads(nThreads); - } -#else - auto runManager = new G4RunManager; + } #endif // Set mandatory initialization classes diff --git a/examples/basic/B4/B4d/exampleB4d.out b/examples/basic/B4/B4d/exampleB4d.out index 9cfce3f89b..ab6513fbc5 100644 --- a/examples/basic/B4/B4d/exampleB4d.out +++ b/examples/basic/B4/B4d/exampleB4d.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,6 +16,15 @@ <<< Geant4 Physics List simulation engine: FTFP_BERT Using Root + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : Analysis_W013 + issued by : G4RootNtupleFileManager::SetNtupleMergingMode +Merging ntuples is not applicable in sequential application. +Setting was ignored. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... @@ -29,10 +39,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -90,7 +102,7 @@ Some /vis commands (optionally) take a string to specify colour. ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -112,7 +124,7 @@ G4SDManager::AddNewCollection : the collection is registe G4SDManager::AddNewCollection : the collection is registered at 3 G4SDManager::AddNewCollection : the collection is registered at 4 - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -143,10 +155,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -170,10 +183,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -201,9 +215,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -217,14 +231,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -233,9 +247,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -247,9 +261,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -260,9 +274,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -276,14 +290,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -292,9 +306,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -308,14 +322,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -324,9 +338,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -340,14 +354,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -356,9 +370,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -373,14 +387,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -389,9 +403,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -406,14 +420,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -422,9 +436,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -438,14 +452,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -454,9 +468,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -470,14 +484,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -506,6 +520,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -580,6 +616,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -691,8 +740,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -757,8 +806,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -799,25 +848,28 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -... open Root analysis file : B4.root - done +... create file : B4.root - done +... open analysis file : B4.root - done --> Event 0 starts. ---> End of event: 0 - Absorber: total energy: 270.018 MeV total track length: 19.2794 cm - Gap: total energy: 26.6652 MeV total track length: 13.6558 cm + Absorber: total energy: 272.576 MeV total track length: 19.7955 cm + Gap: total energy: 14.3219 MeV total track length: 6.97335 cm ----> print histograms statistic for the entire run - EAbs : mean = 270.018 MeV rms = 0 eV - EGap : mean = 26.6652 MeV rms = 0 eV - LAbs : mean = 19.2794 cm rms = 0 fm - LGap : mean = 13.6558 cm rms = 0 fm -... write Root file : B4.root - done -... close Root file : B4.root - done + EAbs : mean = 272.576 MeV rms = 0 eV + EGap : mean = 14.3219 MeV rms = 0 eV + LAbs : mean = 19.7955 cm rms = 0 fm + LGap : mean = 6.97335 cm rms = 0 fm +... write file : B4.root - done +... close file : B4.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Transportation, phot, compt, conv Rayl, msc, eIoni, eBrem CoulombScat, msc, eIoni, eBrem @@ -833,8 +885,21 @@ See commands in /vis/modeling/trajectories/ for other options. hIoni, hIoni, hIoni, hIoni hIoni, hIoni, hIoni, hIoni hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni hIoni, hIoni, photonNuclear, electronNuclear muonNuclear, Decay, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic @@ -844,14 +909,22 @@ See commands in /vis/modeling/trajectories/ for other options. hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, neutronInelastic, nCapture protonInelastic, pi+Inelastic, pi-Inelastic, kaon+Inelastic - kaon-Inelastic, kaon0LInelastic, kaon0SInelastic, lambdaInelastic -anti-lambdaInelastic, sigma-Inelastic,anti_sigma-Inelastic, sigma+Inelastic -anti_sigma+Inelastic, xi-Inelastic, anti_xi-Inelastic, xi0Inelastic - anti_xi0Inelastic, omega-Inelastic,anti_omega-Inelastic,anti_protonInelastic + kaon-Inelastic, kaon0LInelastic, kaon0SInelastic,anti_protonInelastic anti_neutronInelastic,anti_deuteronInelastic,anti_tritonInelastic, anti_He3Inelastic -anti_alphaInelastic,hFritiofCaptureAtRest,hBertiniCaptureAtRest,muMinusCaptureAtRest - dInelastic, tInelastic, He3Inelastic, alphaInelastic - ionInelastic, nKiller +anti_alphaInelastic, lambdaInelastic, sigma+Inelastic, sigma-Inelastic + xi0Inelastic, xi-Inelastic, omega-Inelastic,anti_lambdaInelastic +anti_sigma+Inelastic,anti_sigma-Inelastic, anti_xi0Inelastic, anti_xi-Inelastic +anti_omega-Inelastic, D+Inelastic, D0Inelastic, D-Inelastic + anti_D0Inelastic, Ds+Inelastic, Ds-Inelastic, B+Inelastic + B0Inelastic, B-Inelastic, anti_B0Inelastic, Bs0Inelastic + anti_Bs0Inelastic, Bc+Inelastic, Bc-Inelastic, lambda_c+Inelastic + xi_c+Inelastic, xi_c0Inelastic, omega_c0Inelastic, lambda_bInelastic + xi_b0Inelastic, xi_b-Inelastic, omega_b-Inelastic,anti_lambda_c+Inelastic +anti_xi_c+Inelastic,anti_xi_c0Inelastic,anti_omega_c0Inelastic,anti_lambda_bInelastic +anti_xi_b0Inelastic,anti_xi_b-Inelastic,anti_omega_b-Inelastic,hFritiofCaptureAtRest +hBertiniCaptureAtRest,muMinusCaptureAtRest, dInelastic, tInelastic + He3Inelastic, alphaInelastic, ionInelastic, nKiller + phot: for gamma SubType=12 BuildTable=0 LambdaPrime table from 200 keV to 100 TeV in 61 bins @@ -876,10 +949,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -903,10 +977,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -934,9 +1009,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -950,14 +1025,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -966,9 +1041,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -980,9 +1055,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -993,9 +1068,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1009,14 +1084,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1025,9 +1100,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1041,14 +1116,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1057,9 +1132,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1073,14 +1148,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -1089,9 +1164,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1106,14 +1181,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1122,9 +1197,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1139,14 +1214,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -1155,9 +1230,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1171,14 +1246,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1187,9 +1262,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1203,14 +1278,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1218,20 +1293,24 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV ### Run 1 starts. -... open Root analysis file : B4.root - done +... create file : B4.root - done +... open analysis file : B4.root - done --> Event 0 starts. ---> End of event: 0 - Absorber: total energy: 282.358 MeV total track length: 20.3959 cm - Gap: total energy: 17.2963 MeV total track length: 8.12105 cm + Absorber: total energy: 281.551 MeV total track length: 20.6175 cm + Gap: total energy: 17.2447 MeV total track length: 8.06701 cm ----> print histograms statistic for the entire run - EAbs : mean = 282.358 MeV rms = 0 eV - EGap : mean = 17.2963 MeV rms = 0 eV - LAbs : mean = 20.3959 cm rms = 0 fm - LGap : mean = 8.12105 cm rms = 0 fm -... write Root file : B4.root - done -... close Root file : B4.root - done + EAbs : mean = 281.551 MeV rms = 0 eV + EGap : mean = 17.2447 MeV rms = 0 eV + LAbs : mean = 20.6175 cm rms = 0 fm + LGap : mean = 8.06701 cm rms = 0 fm +... write file : B4.root - done +... close file : B4.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. phot: for gamma SubType=12 BuildTable=0 LambdaPrime table from 200 keV to 100 TeV in 61 bins @@ -1256,10 +1335,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1283,10 +1363,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1314,9 +1395,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1330,14 +1411,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1346,9 +1427,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1360,9 +1441,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1373,9 +1454,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1389,14 +1470,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1405,9 +1486,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1421,14 +1502,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1437,9 +1518,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1453,14 +1534,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -1469,9 +1550,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1486,14 +1567,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1502,9 +1583,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1519,14 +1600,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -1535,9 +1616,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1551,14 +1632,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1567,9 +1648,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1583,14 +1664,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1598,20 +1679,24 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV ### Run 2 starts. -... open Root analysis file : B4.root - done +... create file : B4.root - done +... open analysis file : B4.root - done --> Event 0 starts. ---> End of event: 0 - Absorber: total energy: 466.54 MeV total track length: 33.5574 cm - Gap: total energy: 17.0074 MeV total track length: 8.40768 cm + Absorber: total energy: 442.375 MeV total track length: 31.86 cm + Gap: total energy: 26.8732 MeV total track length: 13.3258 cm ----> print histograms statistic for the entire run - EAbs : mean = 466.54 MeV rms = 0 eV - EGap : mean = 17.0074 MeV rms = 0 eV - LAbs : mean = 33.5574 cm rms = 0 fm - LGap : mean = 8.40768 cm rms = 0 fm -... write Root file : B4.root - done -... close Root file : B4.root - done + EAbs : mean = 442.375 MeV rms = 0 eV + EGap : mean = 26.8732 MeV rms = 0 eV + LAbs : mean = 31.86 cm rms = 0 fm + LGap : mean = 13.3258 cm rms = 0 fm +... write file : B4.root - done +... close file : B4.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... -### deleting chargedFilter 0x1c3efd0 +### deleting chargedFilter 0x100a060 diff --git a/examples/basic/B4/B4d/include/B4Analysis.hh b/examples/basic/B4/B4d/include/B4Analysis.hh index 473be8e963..78c4412df4 100644 --- a/examples/basic/B4/B4d/include/B4Analysis.hh +++ b/examples/basic/B4/B4d/include/B4Analysis.hh @@ -34,4 +34,7 @@ //#include "g4csv.hh" //#include "g4xml.hh" +//#include "G4GenericAnalysisManager.hh" +//using G4AnalysisManager = G4GenericAnalysisManager; + #endif diff --git a/examples/basic/B4/B4d/run2.mac b/examples/basic/B4/B4d/run2.mac index 370ba78ae3..e301402e42 100644 --- a/examples/basic/B4/B4d/run2.mac +++ b/examples/basic/B4/B4d/run2.mac @@ -4,6 +4,8 @@ # % exampleB4[a,b,c,d] run2.mac # #/run/numberOfThreads 4 +#/control/cout/ignoreThreadsExcept 0 +# /run/initialize # # Default kinemtics: diff --git a/examples/basic/B4/CMakeLists.txt b/examples/basic/B4/CMakeLists.txt index 591fead066..f1422fa780 100644 --- a/examples/basic/B4/CMakeLists.txt +++ b/examples/basic/B4/CMakeLists.txt @@ -1,8 +1,9 @@ - -#---Adding example N3 subdirectories explicitly +#---Adding example N3 subdirectories explicitly # and a custom target to for building all example N3 options ---------- - -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(B4a) add_subdirectory(B4b) diff --git a/examples/basic/B4/History b/examples/basic/B4/History index e37f0571f6..58faa3f583 100644 --- a/examples/basic/B4/History +++ b/examples/basic/B4/History @@ -13,7 +13,24 @@ track of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- - + +06/11/20 I. Hrivnacova (exampleB4-V10-06-04) +- Updated B4Analysis.hh with commented lines for using new generic analysis manager +- Added "ignoreThreadsExcept 0" setting in run2.mac (commented) + +02/11/20 B.Morgan (exampleB4-V10-06-03) +- Support same CMake version range as core Geant4 + +19/07/20 G. Cosmo (exampleB4-V10-06-02) +- Removed redundant inclusion of headers in example B4d main(). + +17/07/20 I. Hrivnacova (exampleB4-V10-06-01) +- Migrated B4d example to use G4RunManagerFactory. + +30/06/20 G. Cosmo (exampleB4-V10-06-00) +- Migrated examples (except for B4d) to use G4RunManagerFactory, therefore + implicitly enabling tasking by default in MT builds. + 21/11/19 G. Cosmo (exampleB4-V10-05-04) - Use default MixMax random engine. @@ -31,14 +48,14 @@ track of all tags. - Corrected name of include file: csv.hh. 07/11/18 I. Hrivnacova (exampleB4-V10-04-03) -- Fixed CMake: added missing plotNtuple.C +- Fixed CMake: added missing plotNtuple.C 30/10/18 I. Hrivnacova (exampleB4-V10-04-02) -- Removed usage of G4ScoreNtupleWriter; +- Removed usage of G4ScoreNtupleWriter; will be demonstrated in a new extended analysis example 26/10/18 I. Hrivnacova (exampleB4-V10-04-01) -- Activated storing scorers hits in B4d in Root file using +- Activated storing scorers hits in B4d in Root file using new G4ScoreNtupleWriter - Updated README @@ -73,10 +90,10 @@ track of all tags. 04/05/15 I. Hrivnacova (exampleB4-V10-01-02) - Coding guidelines: removed empty lines - + 18/02/15 I. Hrivnacova (exampleB4-V10-01-01) - Fixed accessing gapHit (problem report #1714) - + 02/02/15 I. Hrivnacova (exampleB4-V10-01-00) - Fixed documentation @@ -102,9 +119,9 @@ track of all tags. 11/08/14 mma (exampleB4-V10-00-00) - Restaure drawing in README and .README -02 December 2013 Ivana Hrivnacova +02 December 2013 Ivana Hrivnacova - Fixed gui.mac: - corrected wireframe parameter, removed run2.mac from gui + corrected wireframe parameter, removed run2.mac from gui 28/11/13 I. Hrivnacova (exampleB4-V09-06-18) - Clean-up macros (fixed obsolete comments) @@ -113,7 +130,7 @@ track of all tags. - Fixed deleting fMagFieldMessenger with use of G4AutoDelete utility 30/10/13 I. Hrivnacova (exampleB4-V09-06-16) -- Added a protection when /run/printProgress value is set to zero +- Added a protection when /run/printProgress value is set to zero 30/10/13 I. Hrivnacova (exampleB4-V09-06-15) - Updated README @@ -128,12 +145,12 @@ track of all tags. - Using Gent4 default number of threads when not set via command line - Updated README -01/10/13 I. Hrivnacova (exampleB4-V09-06-12) +01/10/13 I. Hrivnacova (exampleB4-V09-06-12) - Updated for changes in analysis: removal of G4AnalysisManager::Create(isMaster) 19/08/13 I. Hrivnacova (exampleB4-V09-06-11) -- Fixed B4[b]RunAction::EndOfRunAction() again: to get the printed +- Fixed B4[b]RunAction::EndOfRunAction() again: to get the printed histogram statistics correct 24/07/13 P. Gumplinger (exampleB4-V09-06-10) @@ -156,20 +173,20 @@ track of all tags. 29/05/13 I. Hrivnacova (exampleB4-V09-06-05) - Fixed detector construction classes: - Moving creating setMagField command from the constructor in + Moving creating setMagField command from the constructor in ConstructSDandField(), as the command has to be created per thread, - and declaring fMagField and fMessenger data members as static + and declaring fMagField and fMessenger data members as static G4ThreadLocal 24/04/13 M. Asai (exampleB4-V09-06-04) - Recover GNUmakefiles. 23/04/13 I. Hrivnacova (exampleB4-V09-06-03) -- Use G4Random::setTheEngine instead of CLHEP::HepRandom in main +- Use G4Random::setTheEngine instead of CLHEP::HepRandom in main (needed for MT) - In B4b: merged B4bRunAction and B4RunAction in one class - Removed unnecessary includes in run action files -- Minor fixes of coding guidelines +- Minor fixes of coding guidelines 18/04/13 M. Asai (exampleB4-V09-06-02) - Migrated to the new G4VUserActionInitialization class. @@ -182,7 +199,7 @@ track of all tags. 28/02/13 I. Hrivnacova - When building materials with NistManager - do not set fromIsotopes argument (which was set to false), + do not set fromIsotopes argument (which was set to false), as since 9.6 all materials have to be built from isotopes. Thanks to V. Ivantchenko for pointing at this. @@ -194,7 +211,7 @@ track of all tags. 18/09/12 I. Hrivnacova - Updated code using analysis: - - Now only a selected analysis manager is included + - Now only a selected analysis manager is included - Making directories in output file is optional - Adding a line using G4AnalysisManager::GetType() - General changes (see basic/History) @@ -205,7 +222,7 @@ track of all tags. constructors in the constructor body and not in the initialization list (to avoid passing 'this' in the initializer list). -14/11/11 I. Hrivnacova +14/11/11 I. Hrivnacova - The first tagged version of the new B4 example - (tagged in basic). + (tagged in basic). Started from novice/N03. diff --git a/examples/basic/B4/macros/run2.mac b/examples/basic/B4/macros/run2.mac index 3de3c49bec..35e16a6901 100644 --- a/examples/basic/B4/macros/run2.mac +++ b/examples/basic/B4/macros/run2.mac @@ -4,6 +4,8 @@ # % exampleB4[a,b,c,d] run2.mac # #/run/numberOfThreads 4 +#/control/cout/ignoreThreadsExcept 0 +# /run/initialize # # Default kinemtics: diff --git a/examples/basic/B5/.README.txt b/examples/basic/B5/.README.txt index 71f637922f..359f82a4c9 100644 --- a/examples/basic/B5/.README.txt +++ b/examples/basic/B5/.README.txt @@ -204,8 +204,19 @@ - Vector of energy deposits in EM calorimeter cells - Vector of energy deposits in Hadronic calorimeter cells - The histograms and ntuple are saved in the output file in a format - according to a technology selected in B5Analysis.hh. + The histograms and ntuple are saved in two output files in a default + (Root) file format. + + Another file format (for example xml) can be selected either by + changing the generic analysis manager default file type: +\verbatim +analysisManager->SetDefaultFileType("xml"); +\endverbatim + or by providing the file names with the extension: +\verbatim +analysisManager->SetFileName("B5.xml"); +analysisManager->SetNtupleFileName(0, "B4ntuple.xml"); +\endverbatim When running in multi-threading mode, the histograms and ntuple accumulated on threads are automatically merged in a single output file. diff --git a/examples/basic/B5/CMakeLists.txt b/examples/basic/B5/CMakeLists.txt index add72789c9..236f4195c0 100644 --- a/examples/basic/B5/CMakeLists.txt +++ b/examples/basic/B5/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B5) #---------------------------------------------------------------------------- @@ -25,7 +28,7 @@ include(${Geant4_USE_FILE}) # Locate sources and headers for this project # NB: headers are included so they will show up in IDEs # -include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include +include_directories(${CMAKE_CURRENT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) @@ -42,15 +45,15 @@ target_link_libraries(exampleB5 ${Geant4_LIBRARIES}) # relies on these scripts being in the current working directory. # set(B5_SCRIPTS - exampleB5.in - exampleB5.out + exampleB5.in + exampleB5.out icons.mac gui.mac run.png - init.mac - init_vis.mac - run1.mac - run2.mac + init.mac + init_vis.mac + run1.mac + run2.mac vis.mac ) diff --git a/examples/basic/B5/History b/examples/basic/B5/History index 49a5aaffd3..8a0b17ccd7 100644 --- a/examples/basic/B5/History +++ b/examples/basic/B5/History @@ -14,6 +14,14 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +06 Nov 2020 I. Hrivnacova (exampleB5-V10-06-02) +- Replaced use of G4Analysis::ManagerInstance("root") with new + generic analysis manager +- Storing ntuple in a separate file + +02 Nov 2020 B.Morgan (exampleB5-V10-06-01) +- Support same CMake version range as core Geant4 + 10 June 2020 Jonathan Madsen (exampleB5-V10-06-00) - Migrated to new G4RunManagerFactory diff --git a/examples/basic/B5/README b/examples/basic/B5/README index f2daf5940f..a34647d92a 100644 --- a/examples/basic/B5/README +++ b/examples/basic/B5/README @@ -201,8 +201,15 @@ - Vector of energy deposits in EM calorimeter cells - Vector of energy deposits in Hadronic calorimeter cells - The histograms and ntuple are saved in the output file in a format - according to a technology selected in B5Analysis.hh. + The histograms and ntuple are saved in two output files in a default + (Root) file format. + + Another file format (for example xml) can be selected either by + changing the generic analysis manager default file type: + analysisManager->SetDefaultFileType("xml"); + or by providing the file names with the extension: + analysisManager->SetFileName("B5.xml"); + analysisManager->SetNtupleFileName(0, "B4ntuple.xml"); When running in multi-threading mode, the histograms and ntuple accumulated on threads are automatically merged in a single output file. diff --git a/examples/basic/B5/exampleB5.in b/examples/basic/B5/exampleB5.in index 97a519d7ce..d8f279466d 100644 --- a/examples/basic/B5/exampleB5.in +++ b/examples/basic/B5/exampleB5.in @@ -10,6 +10,8 @@ /B5/generator/sigmaAngle 0. /run/printProgress 5 # +/analysis/ntuple/setFileName 0 B5ntuple +# /B5/detector/armAngle 30. deg /gun/particle proton /B5/generator/momentum 100. GeV diff --git a/examples/basic/B5/exampleB5.out b/examples/basic/B5/exampleB5.out index ea87ef5b2c..30da31d4c6 100644 --- a/examples/basic/B5/exampleB5.out +++ b/examples/basic/B5/exampleB5.out @@ -5,7 +5,7 @@ Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Fo ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,7 +15,6 @@ Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Fo <<< Geant4 Physics List simulation engine: FTFP_BERT -Using Root Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... @@ -30,10 +29,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -206,7 +207,7 @@ Checking overlaps for volume EMcalorimeterPhysical (G4Box) ... OK! Checking overlaps for volume HadCalorimeterPhysical (G4Box) ... OK! Checking overlaps for volume HadCalScintiPhysical (G4Box) ... OK! - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -237,10 +238,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -264,10 +266,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -295,9 +298,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -311,14 +314,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -327,9 +330,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -341,9 +344,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -354,9 +357,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -370,14 +373,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -386,9 +389,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -402,14 +405,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -418,9 +421,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -434,14 +437,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -450,9 +453,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -467,14 +470,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -483,9 +486,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -500,14 +503,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -516,9 +519,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -532,14 +535,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -548,9 +551,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -564,14 +567,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -600,6 +603,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -674,6 +699,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -785,8 +823,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -851,8 +889,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -893,275 +931,455 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -... open Root analysis file : B5.root - done + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : Analysis_W013 + issued by : G4RootNtupleFileManager::SetNtupleMergingMode +Merging ntuples is not applicable in sequential application. +Setting was ignored. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +... set ntuple merging row mode : row-wise - done +... create file : B5.root - done +... open analysis file : B5.root - done +... create file : B5ntuple.root - done +... open analysis file : B5.root - done --> Event 0 starts. ->>> Event 0 >>> Simulation truth : proton (-0,0,100000) -Hodoscope 1 has 1 hits. - Hodoscope[7] 4.9870027261557 (nsec) -Hodoscope 2 has 1 hits. - Hodoscope[9] 43.187767429169 (nsec) -Drift Chamber 1 has 5 hits. - Layer[0] : time 6.6712419780455 (nsec) --- local (x,y) -5.3816581045659e-06, 0.029469950603338 - Layer[1] : time 8.3391358702888 (nsec) --- local (x,y) 0.0039403033048055, 0.045850254927428 - Layer[2] : time 10.007029762659 (nsec) --- local (x,y) 0.0061594315069119, 0.062257752934165 - Layer[3] : time 11.674923655205 (nsec) --- local (x,y) 0.0085005625115272, 0.078703962193856 - Layer[4] : time 13.342817548482 (nsec) --- local (x,y) 0.0095267934119525, 0.10003616245362 -Drift Chamber 2 has 5 hits. - Layer[0] : time 34.850155213985 (nsec) --- local (x,y) -147.62778847714, 0.31765148478652 - Layer[1] : time 36.520953307849 (nsec) --- local (x,y) -177.14687642028, 0.33322779577552 - Layer[2] : time 38.191750421046 (nsec) --- local (x,y) -206.66097568322, 0.34727480745701 - Layer[3] : time 39.862547483613 (nsec) --- local (x,y) -236.17481578384, 0.36283841743334 - Layer[4] : time 41.533344489855 (nsec) --- local (x,y) -265.68836749443, 0.38038390661612 -EM Calorimeter has 54 hits. Total Edep is 595.07557245769 (MeV) -Hadron Calorimeter has 14 hits. Total Edep is 4383.6695253596 (MeV) -... write Root file : B5.root - done -... close Root file : B5.root - done +>>> Event 0 >>> Simulation truth : proton (0,0,100000) +Hodoscope 1 has 5 hits. + Hodoscope[7] 4.9870027260872 (nsec) + Hodoscope[14] 7.2448864539246 (nsec) + Hodoscope[3] 42.462858133338 (nsec) + Hodoscope[12] 6.6437866640662 (nsec) + Hodoscope[13] 6.9033255615942 (nsec) +Hodoscope 2 has 0 hits. +Drift Chamber 1 has 131 hits. + Layer[0] : time 8.3219299395741 (nsec) --- local (x,y) 372.02334871086, -289.68758575273 + Layer[0] : time 6.6894434711511 (nsec) --- local (x,y) 52.168105754942, 49.803929032904 + Layer[0] : time 6.6780679630494 (nsec) --- local (x,y) 3.1892065828707, -42.792676644112 + Layer[0] : time 6.8735075262109 (nsec) --- local (x,y) 100.31280015755, 176.09282433894 + Layer[0] : time 7.3050130493383 (nsec) --- local (x,y) 371.03015215419, 4.175509828231 + Layer[0] : time 6.7003558450509 (nsec) --- local (x,y) -34.060477562379, 62.025576889823 + Layer[0] : time 6.6974203973329 (nsec) --- local (x,y) 7.4118978978207, -89.05468250264 + Layer[0] : time 6.6948299309499 (nsec) --- local (x,y) 25.872111767864, -80.765400225554 + Layer[0] : time 7.1690806334948 (nsec) --- local (x,y) 241.38933202166, 54.544742307022 + Layer[0] : time 6.8407841254743 (nsec) --- local (x,y) -177.12018170439, 82.957397640925 + Layer[0] : time 6.6759633223697 (nsec) --- local (x,y) 10.877761185656, 7.6831425233694 + Layer[0] : time 41.019572340664 (nsec) --- local (x,y) 654.21881232109, 165.19110198813 + Layer[0] : time 6.6756475061797 (nsec) --- local (x,y) 8.8688685900449, 30.979955136027 + Layer[0] : time 6.6839214255333 (nsec) --- local (x,y) 15.684033225054, 46.827247181047 + Layer[0] : time 6.6876539473304 (nsec) --- local (x,y) 37.586095385661, 37.083267660331 + Layer[0] : time 6.6717094718954 (nsec) --- local (x,y) 0.14206342076317, 11.375303832467 + Layer[0] : time 6.6713860276552 (nsec) --- local (x,y) -5.1792151840917, -3.0802168713589 + Layer[0] : time 6.7751789611508 (nsec) --- local (x,y) 105.55149550869, 89.992118334057 + Layer[0] : time 6.9473327377988 (nsec) --- local (x,y) 120.38991125414, 187.79053746762 + Layer[0] : time 6.6801379510467 (nsec) --- local (x,y) 26.1625476015, 40.429698260424 + Layer[0] : time 6.8421771147668 (nsec) --- local (x,y) 152.89578334038, 60.314858527738 + Layer[0] : time 6.8651496801925 (nsec) --- local (x,y) -144.52802346595, 172.15955233503 + Layer[0] : time 6.9130284243888 (nsec) --- local (x,y) -5.5545990593387, 174.82417912253 + Layer[0] : time 7.0973727999711 (nsec) --- local (x,y) 229.57729880475, 281.95525985854 + Layer[0] : time 7.4746925361198 (nsec) --- local (x,y) -69.082459892363, 103.44579730238 + Layer[0] : time 6.7006508569527 (nsec) --- local (x,y) -27.604099184534, -44.387425404196 + Layer[0] : time 6.7023240668237 (nsec) --- local (x,y) 16.756449527263, 53.202782804292 + Layer[0] : time 6.758695879515 (nsec) --- local (x,y) -2.1286183430872, -151.9192847876 + Layer[0] : time 6.7389584766016 (nsec) --- local (x,y) 100.85477058146, 3.4159354445234 + Layer[0] : time 6.7280078034071 (nsec) --- local (x,y) 9.5238855236391, -117.39212852481 + Layer[0] : time 6.8035262152832 (nsec) --- local (x,y) -61.95506242562, -40.059170440469 + Layer[0] : time 6.6779320125981 (nsec) --- local (x,y) -7.7273702918383, -4.2605088339714 + Layer[0] : time 40.800119981778 (nsec) --- local (x,y) -360.03396985402, -96.047480695174 + Layer[0] : time 41.697436445803 (nsec) --- local (x,y) -689.70046338034, -140.04756788261 + Layer[0] : time 6.7506514398177 (nsec) --- local (x,y) 29.111739950945, -79.219466030769 + Layer[0] : time 6.7693108978428 (nsec) --- local (x,y) -77.817298757083, -76.771817869252 + Layer[1] : time 8.3754245964294 (nsec) --- local (x,y) 103.98651380303, 99.271300791016 + Layer[1] : time 8.352695460411 (nsec) --- local (x,y) 6.555518261023, -85.121356343318 + Layer[1] : time 9.6001892193585 (nsec) --- local (x,y) 738.41255797694, 8.93124245504 + Layer[1] : time 8.3972578725325 (nsec) --- local (x,y) -67.897594795389, 123.83664184469 + Layer[1] : time 8.3913023681658 (nsec) --- local (x,y) 14.80266093167, -177.48237903757 + Layer[1] : time 8.386171846615 (nsec) --- local (x,y) 51.424691600717, -161.06695348812 + Layer[1] : time 9.3322561292104 (nsec) --- local (x,y) 481.47865632542, 108.32793645796 + Layer[1] : time 8.6763648593226 (nsec) --- local (x,y) -352.55465294144, 164.99296661407 + Layer[1] : time 8.3485451494172 (nsec) --- local (x,y) 21.602996488186, 15.381369529952 + Layer[1] : time 39.33264795741 (nsec) --- local (x,y) 587.72580814466, 157.50193111037 + Layer[1] : time 8.3479077561875 (nsec) --- local (x,y) 17.605382612641, 61.712749795608 + Layer[1] : time 8.3644619055566 (nsec) --- local (x,y) 31.296525254824, 93.482417677272 + Layer[1] : time 8.3718014984566 (nsec) --- local (x,y) 74.816034379717, 73.805210405843 + Layer[1] : time 8.3400676624241 (nsec) --- local (x,y) 0.3656856139623, 22.662524653797 + Layer[1] : time 8.339422960729 (nsec) --- local (x,y) -10.325576326138, -6.1528428650018 + Layer[1] : time 8.5462658925584 (nsec) --- local (x,y) 210.21642029489, 179.46039316184 + Layer[1] : time 8.3568424129437 (nsec) --- local (x,y) 52.060141882974, 80.527068088821 + Layer[1] : time 8.7970096933627 (nsec) --- local (x,y) 440.31392272836, 82.720315563819 + Layer[1] : time 9.9507623535976 (nsec) --- local (x,y) -138.51691410206, 205.5234658383 + Layer[1] : time 8.3977495656969 (nsec) --- local (x,y) -55.101491614636, -88.422975135055 + Layer[1] : time 8.4011505272342 (nsec) --- local (x,y) 33.179313590761, 106.26526013804 + Layer[1] : time 8.4742703856605 (nsec) --- local (x,y) 201.24836514753, 6.4268707864644 + Layer[1] : time 8.4523545390445 (nsec) --- local (x,y) 19.067377919916, -234.07473010685 + Layer[1] : time 8.6028372633319 (nsec) --- local (x,y) -123.61068613441, -79.790663034956 + Layer[1] : time 8.3524714152619 (nsec) --- local (x,y) -15.469640581817, -8.4125398819454 + Layer[1] : time 39.120912395177 (nsec) --- local (x,y) -322.08612952714, -90.945843999291 + Layer[1] : time 8.4974052918449 (nsec) --- local (x,y) 58.058947941227, -157.87707214159 + Layer[1] : time 8.5348770426582 (nsec) --- local (x,y) -154.33186442021, -154.27470003271 + Layer[1] : time 8.5350563810033 (nsec) --- local (x,y) -154.33962221833, -154.28256705233 + Layer[1] : time 8.5350563810033 (nsec) --- local (x,y) -154.33962221833, -154.28256705233 + Layer[1] : time 8.5363239495629 (nsec) --- local (x,y) -154.40716093881, -154.28076727912 + Layer[1] : time 8.5376006546804 (nsec) --- local (x,y) -154.47515556104, -154.2865757132 + Layer[1] : time 8.538893912609 (nsec) --- local (x,y) -154.54197866244, -154.2831265858 + Layer[2] : time 10.06142382778 (nsec) --- local (x,y) 155.81526457003, 148.78304075689 + Layer[2] : time 10.02729864177 (nsec) --- local (x,y) 9.9657264789543, -127.36010308057 + Layer[2] : time 10.094285765017 (nsec) --- local (x,y) -101.95382053943, 185.82727281437 + Layer[2] : time 10.085159924479 (nsec) --- local (x,y) 22.397385513154, -265.85053390667 + Layer[2] : time 10.077477559108 (nsec) --- local (x,y) 76.87222651662, -241.3333192603 + Layer[2] : time 11.497305235466 (nsec) --- local (x,y) 722.16184469932, 163.5381615878 + Layer[2] : time 10.511595881967 (nsec) --- local (x,y) -527.59725437555, 247.17230151976 + Layer[2] : time 10.021134181234 (nsec) --- local (x,y) 32.3891643856, 23.124874821087 + Layer[2] : time 37.645720251688 (nsec) --- local (x,y) 521.22360316108, 149.81858966058 + Layer[2] : time 10.020163186239 (nsec) --- local (x,y) 26.317036841585, 92.428824150849 + Layer[2] : time 10.044989561365 (nsec) --- local (x,y) 46.942559431561, 140.0836686204 + Layer[2] : time 10.055988570902 (nsec) --- local (x,y) 112.09196851999, 110.63908722639 + Layer[2] : time 10.008429120383 (nsec) --- local (x,y) 0.60009844308239, 33.992824722369 + Layer[2] : time 10.007459782389 (nsec) --- local (x,y) -15.469906838505, -9.2233668202928 + Layer[2] : time 10.317654294153 (nsec) --- local (x,y) 315.13393940544, 269.12728461801 + Layer[2] : time 10.033540279559 (nsec) --- local (x,y) 77.955751515532, 120.60071248499 + Layer[2] : time 10.718972488955 (nsec) --- local (x,y) 705.82694453088, 122.72611163328 + Layer[2] : time 10.094826381602 (nsec) --- local (x,y) -82.599270191941, -132.38094180393 + Layer[2] : time 10.099979310943 (nsec) --- local (x,y) 49.516077803296, 159.34733868225 + Layer[2] : time 10.210223056213 (nsec) --- local (x,y) 302.54916658582, 9.8086103529724 + Layer[2] : time 10.402198714506 (nsec) --- local (x,y) -185.36914178043, -119.50544282838 + Layer[2] : time 10.027013166407 (nsec) --- local (x,y) -23.244564025618, -12.563808677952 + Layer[2] : time 37.441685057774 (nsec) --- local (x,y) -284.0270633511, -86.018563569992 + Layer[2] : time 10.244165890164 (nsec) --- local (x,y) 86.965575821147, -236.55550121965 + Layer[2] : time 10.300224239373 (nsec) --- local (x,y) -230.65776780411, -231.48543321625 + Layer[3] : time 11.747414934007 (nsec) --- local (x,y) 207.63699038167, 198.27713321867 + Layer[3] : time 11.701897699736 (nsec) --- local (x,y) 13.374654514637, -169.58418001113 + Layer[3] : time 11.791455662691 (nsec) --- local (x,y) -136.23129806078, 248.03566232219 + Layer[3] : time 13.661043991706 (nsec) --- local (x,y) 962.50998951526, 215.71962132703 + Layer[3] : time 11.693726673357 (nsec) --- local (x,y) 43.18279824159, 30.917070126605 + Layer[3] : time 35.958852949458 (nsec) --- local (x,y) 454.85687351931, 142.13991869595 + Layer[3] : time 11.692428158191 (nsec) --- local (x,y) 34.968719102473, 123.20799193183 + Layer[3] : time 11.725477127892 (nsec) --- local (x,y) 62.658576226741, 186.53057368828 + Layer[3] : time 11.740214153518 (nsec) --- local (x,y) 149.5174322188, 147.47619905331 + Layer[3] : time 11.676790240438 (nsec) --- local (x,y) 0.84484534881939, 45.318405414698 + Layer[3] : time 11.675495517709 (nsec) --- local (x,y) -20.58997027824, -12.281314928143 + Layer[3] : time 11.837668515094 (nsec) --- local (x,y) -16.463381444533, -14.795287181151 + Layer[3] : time 11.710229463771 (nsec) --- local (x,y) 103.90170443574, 160.6087217737 + Layer[3] : time 11.791906751786 (nsec) --- local (x,y) -110.08004639523, -176.35966208441 + Layer[3] : time 11.798760291625 (nsec) --- local (x,y) 65.768158045716, 212.29948073067 + Layer[3] : time 11.946214673663 (nsec) --- local (x,y) 403.86168256452, 13.519190413819 + Layer[3] : time 12.201577929172 (nsec) --- local (x,y) -247.13532186772, -159.23106718389 + Layer[3] : time 11.701555312325 (nsec) --- local (x,y) -31.058438988669, -16.628496137139 + Layer[3] : time 11.70178431669 (nsec) --- local (x,y) -31.059497933911, -16.629056939259 + Layer[3] : time 35.762409231026 (nsec) --- local (x,y) -245.75336519237, -81.256499216551 + Layer[3] : time 11.70178431669 (nsec) --- local (x,y) -31.059497933911, -16.629056939259 + Layer[4] : time 13.433562975916 (nsec) --- local (x,y) 259.80178290258, 247.89006012623 + Layer[4] : time 13.376496880805 (nsec) --- local (x,y) 16.829022742418, -211.80491048316 + Layer[4] : time 13.366331796898 (nsec) --- local (x,y) 54.055927007096, 38.824189971822 + Layer[4] : time 34.271991272884 (nsec) --- local (x,y) 388.50188844158, 134.45573739026 + Layer[4] : time 13.364695289121 (nsec) --- local (x,y) 43.611701983896, 153.99983989542 + Layer[4] : time 13.405979794663 (nsec) --- local (x,y) 78.404248524713, 233.01471950535 + Layer[4] : time 13.424499790917 (nsec) --- local (x,y) 187.14240797397, 184.35041048461 + Layer[4] : time 13.345151006524 (nsec) --- local (x,y) 1.0957820359101, 56.639134612872 + Layer[4] : time 13.34353158406 (nsec) --- local (x,y) -25.735728723708, -15.312061018056 + Layer[4] : time 13.386918763922 (nsec) --- local (x,y) 129.84453675532, 200.6188570373 + Layer[4] : time 13.488988937323 (nsec) --- local (x,y) -137.54203526055, -220.35370670384 + Layer[4] : time 13.497492077208 (nsec) --- local (x,y) 81.807900760517, 265.16622571508 + Layer[4] : time 13.682168027361 (nsec) --- local (x,y) 505.11716536453, 16.850026637575 + Layer[4] : time 14.000924579822 (nsec) --- local (x,y) -308.85700774706, -198.86665371013 + Layer[4] : time 13.376095837154 (nsec) --- local (x,y) -38.756437993682, -20.81880563142 + Layer[4] : time 34.083159801808 (nsec) --- local (x,y) -207.59803265574, -76.363141153998 +Drift Chamber 2 has 0 hits. +EM Calorimeter has 4 hits. Total Edep is 207.71695512202 (MeV) +Hadron Calorimeter has 7 hits. Total Edep is 85.102265651913 (MeV) +... write file : B5.root - done +... write file : B5ntuple.root - done +... close file : B5.root - done +... close file : B5ntuple.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 1 starts. -... open Root analysis file : B5.root - done +... create file : B5.root - done +... open analysis file : B5.root - done +... create file : B5ntuple.root - done +... open analysis file : B5.root - done --> Event 0 starts. >>> Event 0 >>> Simulation truth : pi+ (-0,0,100000) Hodoscope 1 has 1 hits. - Hodoscope[7] 4.9867880803875 (nsec) -Hodoscope 2 has 4 hits. - Hodoscope[10] 42.694721758822 (nsec) - Hodoscope[18] 1078.3916625506 (nsec) - Hodoscope[20] 1019.4367730816 (nsec) - Hodoscope[17] 864.24898031894 (nsec) + Hodoscope[7] 4.9867880803409 (nsec) +Hodoscope 2 has 3 hits. + Hodoscope[10] 42.694786460572 (nsec) + Hodoscope[12] 464.36688550841 (nsec) + Hodoscope[17] 227.90743470914 (nsec) Drift Chamber 1 has 5 hits. - Layer[0] : time 6.6709548385693 (nsec) --- local (x,y) 0.019578771168465, -0.014671872174261 - Layer[1] : time 8.338776940138 (nsec) --- local (x,y) 0.033882711724334, -0.025393563196954 - Layer[2] : time 10.006599041776 (nsec) --- local (x,y) 0.049269018285257, -0.035509453536461 - Layer[3] : time 11.674421143653 (nsec) --- local (x,y) 0.068090845719683, -0.042747814348986 - Layer[4] : time 13.342243245595 (nsec) --- local (x,y) 0.088008709966376, -0.048258805126616 + Layer[0] : time 6.670954837777 (nsec) --- local (x,y) 0.014374186995306, 0.0016904633957184 + Layer[1] : time 8.3387769386408 (nsec) --- local (x,y) 0.024819947410655, 0.0012149965419307 + Layer[2] : time 10.006599039761 (nsec) --- local (x,y) 0.037789503212208, -0.0017057307818501 + Layer[3] : time 11.674421141025 (nsec) --- local (x,y) 0.052481163824864, -0.0051113213589585 + Layer[4] : time 13.342243242516 (nsec) --- local (x,y) 0.069066710402967, -0.009396563863963 Drift Chamber 2 has 5 hits. - Layer[0] : time 34.367387042506 (nsec) --- local (x,y) -82.657201555871, -0.061812124045092 - Layer[1] : time 36.036125116909 (nsec) --- local (x,y) -99.230589431319, -0.061582068537225 - Layer[2] : time 37.704862971544 (nsec) --- local (x,y) -115.80198801828, -0.064686130671438 - Layer[3] : time 39.373600592716 (nsec) --- local (x,y) -132.37127220503, -0.072107225359433 - Layer[4] : time 41.042337936069 (nsec) --- local (x,y) -148.93804130157, -0.07990024655651 -EM Calorimeter has 63 hits. Total Edep is 24346.276901605 (MeV) -Hadron Calorimeter has 19 hits. Total Edep is 3399.8881297235 (MeV) -... write Root file : B5.root - done -... close Root file : B5.root - done + Layer[0] : time 34.367446582368 (nsec) --- local (x,y) -82.628088808706, -0.094589895835362 + Layer[1] : time 36.036185159872 (nsec) --- local (x,y) -99.206028424542, -0.09801612125946 + Layer[2] : time 37.704923670234 (nsec) --- local (x,y) -115.7833609481, -0.09731992147312 + Layer[3] : time 39.373662218472 (nsec) --- local (x,y) -132.36103594442, -0.098536328012051 + Layer[4] : time 41.042401049337 (nsec) --- local (x,y) -148.9412677891, -0.09791013108737 +EM Calorimeter has 67 hits. Total Edep is 2293.2573847598 (MeV) +Hadron Calorimeter has 17 hits. Total Edep is 3722.2689932584 (MeV) +... write file : B5.root - done +... write file : B5ntuple.root - done +... close file : B5.root - done +... close file : B5ntuple.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 2 starts. -... open Root analysis file : B5.root - done +... create file : B5.root - done +... open analysis file : B5.root - done +... create file : B5ntuple.root - done +... open analysis file : B5.root - done --> Event 0 starts. ->>> Event 0 >>> Simulation truth : e+ (-0,0,100000) +>>> Event 0 >>> Simulation truth : e+ (0,0,100000) Hodoscope 1 has 1 hits. - Hodoscope[7] 4.9867832233928 (nsec) -Hodoscope 2 has 2 hits. - Hodoscope[9] 43.185696457607 (nsec) - Hodoscope[14] 57.174873813019 (nsec) + Hodoscope[7] 4.9867832232337 (nsec) +Hodoscope 2 has 1 hits. + Hodoscope[9] 43.185965714274 (nsec) Drift Chamber 1 has 5 hits. - Layer[0] : time 6.6709483405551 (nsec) --- local (x,y) 0.00046427362189043, 0.017356305892975 - Layer[1] : time 8.3387688170777 (nsec) --- local (x,y) -0.0082047024963933, 0.026481487979029 - Layer[2] : time 10.006589293801 (nsec) --- local (x,y) -0.016671838929466, 0.038581024213995 - Layer[3] : time 11.674409770971 (nsec) --- local (x,y) -0.026247762759393, 0.054659050783337 - Layer[4] : time 13.34223024825 (nsec) --- local (x,y) -0.0360287966125, 0.071669349928585 + Layer[0] : time 6.6709483400656 (nsec) --- local (x,y) -0.0048840958355261, -0.0057162009442672 + Layer[1] : time 8.3387688161326 (nsec) --- local (x,y) -0.0071321957926361, -0.0097698086910614 + Layer[2] : time 10.006589292198 (nsec) --- local (x,y) -0.0087608019245764, -0.014154272270479 + Layer[3] : time 11.674409768268 (nsec) --- local (x,y) -0.012185571281507, -0.017594467658009 + Layer[4] : time 13.342230244346 (nsec) --- local (x,y) -0.014943705030338, -0.021843001403842 Drift Chamber 2 has 5 hits. - Layer[0] : time 34.848450377552 (nsec) --- local (x,y) -147.67521150831, 0.37461910528575 - Layer[1] : time 36.519173875446 (nsec) --- local (x,y) -177.188946869, 0.40500094681147 - Layer[2] : time 38.189897987573 (nsec) --- local (x,y) -206.70580772885, 0.43481287732162 - Layer[3] : time 39.860622162714 (nsec) --- local (x,y) -236.2229890655, 0.46469897428743 - Layer[4] : time 41.531345741375 (nsec) --- local (x,y) -265.73713469156, 0.49572042852751 -EM Calorimeter has 38 hits. Total Edep is 91553.439084278 (MeV) -Hadron Calorimeter has 9 hits. Total Edep is 51.537413476158 (MeV) -... write Root file : B5.root - done -... close Root file : B5.root - done + Layer[0] : time 34.848593374549 (nsec) --- local (x,y) -148.22171592962, -0.073559872418172 + Layer[1] : time 36.519342688437 (nsec) --- local (x,y) -177.86652101751, -0.071600812452987 + Layer[2] : time 38.190092008217 (nsec) --- local (x,y) -207.51135593581, -0.069692028401123 + Layer[3] : time 39.860841428016 (nsec) --- local (x,y) -237.15669750689, -0.068052975036924 + Layer[4] : time 41.531590827088 (nsec) --- local (x,y) -266.80193391688, -0.064643297102022 +EM Calorimeter has 45 hits. Total Edep is 89207.251965643 (MeV) +Hadron Calorimeter has 7 hits. Total Edep is 49.050133900306 (MeV) +... write file : B5.root - done +... write file : B5ntuple.root - done +... close file : B5.root - done +... close file : B5ntuple.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 3 starts. -... open Root analysis file : B5.root - done +... create file : B5.root - done +... open analysis file : B5.root - done +... create file : B5ntuple.root - done +... open analysis file : B5.root - done --> Event 0 starts. --------- WWWW ------- G4Exception-START -------- WWWW ------- -*** G4Exception : GeomNav1002 - issued by : G4Navigator::ComputeStep() -Stuck Track: potential geometry or navigation problem. - Track stuck, not moving for 10 steps. - Current phys volume: 'worldPhysical' - - at position : (250.9360426829866,396.3672801231104,-968.0036686307559) - in direction: (0.3254591670676805,0.5790422146261698,0.7475201965515262) - (local position: (250.9360426829866,396.3672801231104,-968.0036686307559)) - (local direction: (0.3254591670676805,0.5790422146261698,0.7475201965515262)). - Previous phys volume: 'magneticPhysical' - - Likely geometry overlap - else navigation problem ! - *** Trying to get *unstuck* using a push - expanding step to 1e-07 (mm) ... Potential overlap in geometry ! - -*** This is just a warning message. *** --------- WWWW -------- G4Exception-END --------- WWWW ------- - - >>> Event 0 >>> Simulation truth : proton (0,0,10000) Hodoscope 1 has 1 hits. - Hodoscope[7] 5.0086862936098 (nsec) -Hodoscope 2 has 1 hits. - Hodoscope[9] 43.376766892336 (nsec) + Hodoscope[7] 5.0086870593255 (nsec) +Hodoscope 2 has 2 hits. + Hodoscope[9] 43.376285565383 (nsec) + Hodoscope[20] 146.02132159158 (nsec) Drift Chamber 1 has 5 hits. - Layer[0] : time 6.7002515101884 (nsec) --- local (x,y) 0.11714836451215, -0.13635154599439 - Layer[1] : time 8.375400424831 (nsec) --- local (x,y) 0.17006302533369, -0.18896823778043 - Layer[2] : time 10.050549520142 (nsec) --- local (x,y) 0.19236554372192, -0.24973322678072 - Layer[3] : time 11.725698758859 (nsec) --- local (x,y) 0.21529765827083, -0.32562153668392 - Layer[4] : time 13.400848135813 (nsec) --- local (x,y) 0.25493966859021, -0.41265118623807 + Layer[0] : time 6.7002536147477 (nsec) --- local (x,y) 0.029986951958968, 0.097432310106192 + Layer[1] : time 8.3754039586784 (nsec) --- local (x,y) 0.080198913060444, 0.17525847369326 + Layer[2] : time 10.050554438979 (nsec) --- local (x,y) 0.11847565885133, 0.25507502419578 + Layer[3] : time 11.725705041787 (nsec) --- local (x,y) 0.15233689185912, 0.32765839631968 + Layer[4] : time 13.400855769404 (nsec) --- local (x,y) 0.15823599980624, 0.38692004138514 Drift Chamber 2 has 5 hits. - Layer[0] : time 35.002755367638 (nsec) --- local (x,y) -147.32439707914, -2.4070480869524 - Layer[1] : time 36.680843350302 (nsec) --- local (x,y) -176.9414808424, -2.6184885092347 - Layer[2] : time 38.358934628387 (nsec) --- local (x,y) -206.57458022827, -2.818543950699 - Layer[3] : time 40.037022707615 (nsec) --- local (x,y) -236.19084396452, -3.0164728145326 - Layer[4] : time 41.715114114229 (nsec) --- local (x,y) -265.82291309248, -3.2534243451444 -EM Calorimeter has 46 hits. Total Edep is 2607.5709339474 (MeV) -Hadron Calorimeter has 12 hits. Total Edep is 259.61616918922 (MeV) -... write Root file : B5.root - done -... close Root file : B5.root - done + Layer[0] : time 35.002071104019 (nsec) --- local (x,y) -148.67624410277, 0.41497691047761 + Layer[1] : time 36.680196879876 (nsec) --- local (x,y) -178.47713703279, 0.37172154193224 + Layer[2] : time 38.358326357012 (nsec) --- local (x,y) -208.29601183663, 0.34592357074414 + Layer[3] : time 40.036460240549 (nsec) --- local (x,y) -238.13640118239, 0.30826749200858 + Layer[4] : time 41.714594059709 (nsec) --- local (x,y) -267.97577799805, 0.28859893189953 +EM Calorimeter has 40 hits. Total Edep is 3695.2421609469 (MeV) +Hadron Calorimeter has 11 hits. Total Edep is 240.41855719607 (MeV) +... write file : B5.root - done +... write file : B5ntuple.root - done +... close file : B5.root - done +... close file : B5ntuple.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 4 starts. -... open Root analysis file : B5.root - done +... create file : B5.root - done +... open analysis file : B5.root - done +... create file : B5ntuple.root - done +... open analysis file : B5.root - done --> Event 0 starts. >>> Event 0 >>> Simulation truth : pi+ (-0,0,10000) Hodoscope 1 has 1 hits. - Hodoscope[7] 4.9872689432935 (nsec) -Hodoscope 2 has 5 hits. - Hodoscope[10] 42.69413899763 (nsec) - Hodoscope[16] 126.13427116225 (nsec) - Hodoscope[5] 279.99745125618 (nsec) - Hodoscope[6] 56.160068430279 (nsec) - Hodoscope[3] 55.736406483313 (nsec) -Drift Chamber 1 has 7 hits. - Layer[0] : time 6.6715981859636 (nsec) --- local (x,y) -0.20292947082738, 0.050862548137455 - Layer[1] : time 8.3395812038101 (nsec) --- local (x,y) -0.28858339302418, 0.07288570940768 - Layer[2] : time 10.007564251349 (nsec) --- local (x,y) -0.41322308547669, 0.076259255086687 - Layer[3] : time 11.675547290371 (nsec) --- local (x,y) -0.52252636396468, 0.086358496614532 - Layer[4] : time 13.343530327467 (nsec) --- local (x,y) -0.62312221923284, 0.072594144329612 - Layer[4] : time 13.344026863315 (nsec) --- local (x,y) -0.62315088335518, 0.072589157179621 - Layer[4] : time 13.344026863315 (nsec) --- local (x,y) -0.62315088335518, 0.072589157179621 + Hodoscope[7] 4.9872689310717 (nsec) +Hodoscope 2 has 1 hits. + Hodoscope[10] 42.703271073219 (nsec) +Drift Chamber 1 has 5 hits. + Layer[0] : time 6.6715981858426 (nsec) --- local (x,y) 0.086334604923717, 0.044078676675813 + Layer[1] : time 8.3395812350917 (nsec) --- local (x,y) 0.21429148487059, 0.010752318528263 + Layer[2] : time 10.007564295616 (nsec) --- local (x,y) 0.35591111356628, -0.0065730693560991 + Layer[3] : time 11.675547335646 (nsec) --- local (x,y) 0.46933520465195, -0.0074475933979333 + Layer[4] : time 13.343530379259 (nsec) --- local (x,y) 0.5778646755618, 0.016765916412075 Drift Chamber 2 has 5 hits. - Layer[0] : time 34.366073715826 (nsec) --- local (x,y) -83.267148612568, 0.093313640184855 - Layer[1] : time 36.034956548983 (nsec) --- local (x,y) -99.692459168957, 0.11371883250547 - Layer[2] : time 37.703840516038 (nsec) --- local (x,y) -116.12806541472, 0.14637334603259 - Layer[3] : time 39.372725268679 (nsec) --- local (x,y) -132.57078091982, 0.18728133393012 - Layer[4] : time 41.041610220079 (nsec) --- local (x,y) -149.01528776443, 0.22256844936942 -EM Calorimeter has 43 hits. Total Edep is 6675.9496565692 (MeV) -Hadron Calorimeter has 11 hits. Total Edep is 31.295330554065 (MeV) -... write Root file : B5.root - done -... close Root file : B5.root - done + Layer[0] : time 34.37488911915 (nsec) --- local (x,y) -83.058114534785, 0.2845533118211 + Layer[1] : time 36.0438334784 (nsec) --- local (x,y) -100.03573577586, 0.18879916945713 + Layer[2] : time 37.712777916343 (nsec) --- local (x,y) -117.01408791381, 0.10443356638372 + Layer[3] : time 39.381726172123 (nsec) --- local (x,y) -134.0260554731, 0.015645064234873 + Layer[4] : time 41.050676188231 (nsec) --- local (x,y) -151.05357777194, -0.060766902334357 +EM Calorimeter has 4 hits. Total Edep is 185.29721908126 (MeV) +Hadron Calorimeter has 4 hits. Total Edep is 177.29494289352 (MeV) +... write file : B5.root - done +... write file : B5ntuple.root - done +... close file : B5.root - done +... close file : B5ntuple.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 5 starts. -... open Root analysis file : B5.root - done +... create file : B5.root - done +... open analysis file : B5.root - done +... create file : B5ntuple.root - done +... open analysis file : B5.root - done --> Event 0 starts. ->>> Event 0 >>> Simulation truth : e+ (-0,0,10000) +>>> Event 0 >>> Simulation truth : e+ (0,0,10000) Hodoscope 1 has 1 hits. - Hodoscope[7] 4.9867832244549 (nsec) + Hodoscope[7] 4.9867832345473 (nsec) Hodoscope 2 has 1 hits. - Hodoscope[9] 43.182786906833 (nsec) -Drift Chamber 1 has 5 hits. - Layer[0] : time 6.6709484223499 (nsec) --- local (x,y) -0.13114054789848, 0.053280158396233 - Layer[1] : time 8.3387689639092 (nsec) --- local (x,y) -0.25613935244637, 0.11665037064438 - Layer[2] : time 10.006589509428 (nsec) --- local (x,y) -0.38290053055913, 0.18554963886359 - Layer[3] : time 11.674410080867 (nsec) --- local (x,y) -0.53891967756294, 0.25043435123513 - Layer[4] : time 13.342230660346 (nsec) --- local (x,y) -0.70498720654586, 0.30899407609406 + Hodoscope[5] 43.253138378076 (nsec) +Drift Chamber 1 has 13 hits. + Layer[0] : time 6.6709484232547 (nsec) --- local (x,y) 0.038488751051262, 0.085395706053151 + Layer[0] : time 7.0868070470494 (nsec) --- local (x,y) -321.66394556644, 47.548186172922 + Layer[1] : time 8.3387689792851 (nsec) --- local (x,y) 0.18695143977491, 0.12852447969726 + Layer[1] : time 9.0215293711672 (nsec) --- local (x,y) -536.1383379965, 136.56293427389 + Layer[1] : time 9.022108943936 (nsec) --- local (x,y) -536.20863830569, 136.56345986502 + Layer[1] : time 9.022108943936 (nsec) --- local (x,y) -536.20863830569, 136.56345986502 + Layer[1] : time 9.0230024694894 (nsec) --- local (x,y) -536.21200161438, 136.54279533512 + Layer[1] : time 9.0240087873392 (nsec) --- local (x,y) -536.22712336251, 136.53343971751 + Layer[2] : time 10.006589554488 (nsec) --- local (x,y) 0.35754709225492, 0.15236727775874 + Layer[2] : time 11.06177213832 (nsec) --- local (x,y) -817.65864083819, 163.01182498938 + Layer[3] : time 11.674410152648 (nsec) --- local (x,y) 0.54860784362149, 0.146557079419 + Layer[3] : time 12.868286921344 (nsec) --- local (x,y) -821.19691727132, 137.45094268111 + Layer[4] : time 13.342230763209 (nsec) --- local (x,y) 0.74914712348409, 0.14133331589417 Drift Chamber 2 has 5 hits. - Layer[0] : time 34.845354733956 (nsec) --- local (x,y) -150.24568819303, 0.07843419559039 - Layer[1] : time 36.516117147032 (nsec) --- local (x,y) -179.95652161946, -0.0430729343988 - Layer[2] : time 38.186879476374 (nsec) --- local (x,y) -209.66695557112, -0.15713768107259 - Layer[3] : time 39.857640400921 (nsec) --- local (x,y) -239.37040892813, -0.23578217859622 - Layer[4] : time 41.528400825918 (nsec) --- local (x,y) -269.0713646173, -0.30187037440295 -EM Calorimeter has 17 hits. Total Edep is 9763.3228871895 (MeV) -Hadron Calorimeter has 1 hits. Total Edep is 0.26911938083171 (MeV) -... write Root file : B5.root - done -... close Root file : B5.root - done + Layer[0] : time 34.859577933344 (nsec) --- local (x,y) -324.51055537179, -1.3034640036202 + Layer[1] : time 36.541591675309 (nsec) --- local (x,y) -389.87959266698, -1.4717564664295 + Layer[2] : time 38.223611256627 (nsec) --- local (x,y) -455.26217129225, -1.6241932345234 + Layer[3] : time 39.905618518339 (nsec) --- local (x,y) -520.61619503141, -1.8022987381915 + Layer[4] : time 41.587620465371 (nsec) --- local (x,y) -585.95787527518, -1.9974042191237 +EM Calorimeter has 17 hits. Total Edep is 8572.0632815154 (MeV) +Hadron Calorimeter has 2 hits. Total Edep is 0.58633521636629 (MeV) +... write file : B5.root - done +... write file : B5ntuple.root - done +... close file : B5.root - done +... close file : B5ntuple.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 6 starts. -... open Root analysis file : B5.root - done +... create file : B5.root - done +... open analysis file : B5.root - done +... create file : B5ntuple.root - done +... open analysis file : B5.root - done --> Event 0 starts. >>> Event 0 >>> Simulation truth : proton (-0,0,1000) Hodoscope 1 has 1 hits. - Hodoscope[7] 6.8388970224628 (nsec) + Hodoscope[7] 6.8404969894099 (nsec) Hodoscope 2 has 1 hits. - Hodoscope[9] 59.426512303827 (nsec) + Hodoscope[9] 59.375923623088 (nsec) Drift Chamber 1 has 5 hits. - Layer[0] : time 9.1532138170218 (nsec) --- local (x,y) 1.5963264847741, -2.0843883172687 - Layer[1] : time 11.445406517333 (nsec) --- local (x,y) 2.3730181798313, -2.2773395954539 - Layer[2] : time 13.737792871257 (nsec) --- local (x,y) 3.3044958038516, -2.6322749827299 - Layer[3] : time 16.030788664851 (nsec) --- local (x,y) 4.3083761438837, -3.6959886638483 - Layer[4] : time 18.324143147788 (nsec) --- local (x,y) 4.9458854000674, -5.1939623868139 -Drift Chamber 2 has 12 hits. - Layer[0] : time 47.939762951444 (nsec) --- local (x,y) -153.20802312247, -16.661816141523 - Layer[1] : time 50.241273821011 (nsec) --- local (x,y) -185.19250355654, -17.621822053202 - Layer[1] : time 50.250988373414 (nsec) --- local (x,y) -185.02508953715, -17.495152925171 - Layer[1] : time 50.251800147475 (nsec) --- local (x,y) -184.99774114762, -17.50587842985 - Layer[1] : time 50.252615923542 (nsec) --- local (x,y) -184.98181945717, -17.518960378539 - Layer[1] : time 50.253457586957 (nsec) --- local (x,y) -184.95582258957, -17.532592701197 - Layer[1] : time 50.25433926414 (nsec) --- local (x,y) -184.92820100349, -17.527354035994 - Layer[1] : time 50.255226694212 (nsec) --- local (x,y) -184.90271131178, -17.513821825766 - Layer[1] : time 50.256125449414 (nsec) --- local (x,y) -184.91505492653, -17.514889683347 - Layer[2] : time 52.542987340712 (nsec) --- local (x,y) -217.22114371742, -18.813691973097 - Layer[3] : time 54.844851408357 (nsec) --- local (x,y) -249.026461306, -20.37610032336 - Layer[4] : time 57.146873659335 (nsec) --- local (x,y) -280.39516679399, -22.263209958429 -EM Calorimeter has 1 hits. Total Edep is 301.49823117637 (MeV) + Layer[0] : time 9.1553076589262 (nsec) --- local (x,y) -1.6929652148303, -5.7091360488551 + Layer[1] : time 11.447960468074 (nsec) --- local (x,y) -2.3419547890363, -7.9016238607817 + Layer[2] : time 13.74083543237 (nsec) --- local (x,y) -2.5638030808702, -10.317266298763 + Layer[3] : time 16.033895156997 (nsec) --- local (x,y) -2.9216744773845, -12.664221279455 + Layer[4] : time 18.327178376945 (nsec) --- local (x,y) -3.4136138861673, -15.217082831743 +Drift Chamber 2 has 5 hits. + Layer[0] : time 47.894116558768 (nsec) --- local (x,y) -167.72187924283, -32.566489682848 + Layer[1] : time 50.194665048673 (nsec) --- local (x,y) -198.96518311334, -33.783333404985 + Layer[2] : time 52.495353328915 (nsec) --- local (x,y) -229.99465639818, -35.629565418799 + Layer[3] : time 54.796190488981 (nsec) --- local (x,y) -260.87775052467, -37.263801878705 + Layer[4] : time 57.097213707617 (nsec) --- local (x,y) -291.65864654475, -39.086614029131 +EM Calorimeter has 1 hits. Total Edep is 296.50032832861 (MeV) Hadron Calorimeter has 0 hits. Total Edep is 0 (MeV) -... write Root file : B5.root - done -... close Root file : B5.root - done +... write file : B5.root - done +... write file : B5ntuple.root - done +... close file : B5.root - done +... close file : B5ntuple.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 7 starts. -... open Root analysis file : B5.root - done +... create file : B5.root - done +... open analysis file : B5.root - done +... create file : B5ntuple.root - done +... open analysis file : B5.root - done --> Event 0 starts. ->>> Event 0 >>> Simulation truth : pi+ (0,0,1000) +>>> Event 0 >>> Simulation truth : pi+ (-0,0,1000) Hodoscope 1 has 1 hits. - Hodoscope[7] 5.0351315339736 (nsec) + Hodoscope[7] 5.0351333254013 (nsec) Hodoscope 2 has 1 hits. - Hodoscope[11] 43.007226522188 (nsec) -Drift Chamber 1 has 10 hits. - Layer[0] : time 6.736074911808 (nsec) --- local (x,y) -0.89996517156278, -0.61925440088022 - Layer[0] : time 6.7855899965257 (nsec) --- local (x,y) 139.70531940984, 13.053943402761 - Layer[1] : time 8.4205160875115 (nsec) --- local (x,y) -1.8893207164181, -1.357232573233 - Layer[1] : time 8.532016983012 (nsec) --- local (x,y) 292.43829261264, 9.9548502159966 - Layer[2] : time 10.104962088392 (nsec) --- local (x,y) -2.7615616323964, -2.2982642963998 - Layer[2] : time 10.266085944318 (nsec) --- local (x,y) 431.16318181277, 25.98885054088 - Layer[3] : time 11.789412337212 (nsec) --- local (x,y) -3.9119980982133, -3.1388707057076 - Layer[3] : time 11.973910436299 (nsec) --- local (x,y) 537.95279994682, 33.559964456635 - Layer[4] : time 13.473864608609 (nsec) --- local (x,y) -5.0727598998947, -3.8321130919014 - Layer[4] : time 13.689106239335 (nsec) --- local (x,y) 653.57752460761, 50.319383256785 -Drift Chamber 2 has 5 hits. - Layer[0] : time 34.625951755231 (nsec) --- local (x,y) -87.801154646862, -7.1427344888945 - Layer[1] : time 36.305492176082 (nsec) --- local (x,y) -99.586877276189, -5.3182902668631 - Layer[2] : time 37.985012938653 (nsec) --- local (x,y) -111.08625919221, -3.4692813386103 - Layer[3] : time 39.664568649833 (nsec) --- local (x,y) -122.99244809846, -1.5614699784504 - Layer[4] : time 41.344117889993 (nsec) --- local (x,y) -134.73397656125, 0.64053446798831 -EM Calorimeter has 1 hits. Total Edep is 164.00742210458 (MeV) -Hadron Calorimeter has 3 hits. Total Edep is 26.482546789182 (MeV) -... write Root file : B5.root - done -... close Root file : B5.root - done + Hodoscope[10] 43.147361784842 (nsec) +Drift Chamber 1 has 5 hits. + Layer[0] : time 6.7357002393968 (nsec) --- local (x,y) 1.403054821702, -2.0300980448904 + Layer[1] : time 8.4197664336677 (nsec) --- local (x,y) 2.6314680393983, -3.0115742900775 + Layer[2] : time 10.103832125501 (nsec) --- local (x,y) 3.6325597517103, -3.73766727203 + Layer[3] : time 11.787903389636 (nsec) --- local (x,y) 4.5024724838869, -4.6026452482534 + Layer[4] : time 13.471977780492 (nsec) --- local (x,y) 5.5281668522208, -4.7655797915379 +Drift Chamber 2 has 9 hits. + Layer[0] : time 34.73636070506 (nsec) --- local (x,y) -90.244772844079, -15.699739219058 + Layer[1] : time 36.42187338331 (nsec) --- local (x,y) -110.54421555139, -16.996474424229 + Layer[1] : time 36.422311164929 (nsec) --- local (x,y) -110.54947146332, -16.996733662971 + Layer[1] : time 36.422311164929 (nsec) --- local (x,y) -110.54947146332, -16.996733662971 + Layer[1] : time 36.423470128621 (nsec) --- local (x,y) -110.52433194548, -17.019852291994 + Layer[1] : time 36.424678157501 (nsec) --- local (x,y) -110.51662566869, -17.054330945122 + Layer[2] : time 38.107390262517 (nsec) --- local (x,y) -130.86908700026, -17.848165749128 + Layer[3] : time 39.792909381578 (nsec) --- local (x,y) -151.20403678734, -18.451871337781 + Layer[4] : time 41.478409233334 (nsec) --- local (x,y) -171.35636441898, -19.269663023791 +EM Calorimeter has 3 hits. Total Edep is 178.15823375337 (MeV) +Hadron Calorimeter has 2 hits. Total Edep is 23.812697590249 (MeV) +... write file : B5.root - done +... write file : B5ntuple.root - done +... close file : B5.root - done +... close file : B5ntuple.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 8 starts. -... open Root analysis file : B5.root - done +... create file : B5.root - done +... open analysis file : B5.root - done +... create file : B5ntuple.root - done +... open analysis file : B5.root - done --> Event 0 starts. >>> Event 0 >>> Simulation truth : e+ (0,0,1000) Hodoscope 1 has 1 hits. - Hodoscope[7] 4.9867859207693 (nsec) -Hodoscope 2 has 1 hits. - Hodoscope[9] 43.199285597455 (nsec) + Hodoscope[7] 4.9867843621864 (nsec) +Hodoscope 2 has 2 hits. + Hodoscope[9] 43.198872804479 (nsec) + Hodoscope[11] 339.49750014424 (nsec) Drift Chamber 1 has 5 hits. - Layer[0] : time 6.6709593413831 (nsec) --- local (x,y) 0.73434475533621, 2.5566605982348 - Layer[1] : time 8.3387884912234 (nsec) --- local (x,y) 1.8418367967083, 3.7238511628319 - Layer[2] : time 10.006621853493 (nsec) --- local (x,y) 3.361512297373, 4.968187271021 - Layer[3] : time 11.674452456398 (nsec) --- local (x,y) 4.5408807803748, 6.2489457839785 - Layer[4] : time 13.34227960022 (nsec) --- local (x,y) 5.6272994126665, 7.1359034512623 + Layer[0] : time 6.6709534152651 (nsec) --- local (x,y) -1.3238319647763, -0.95890350055006 + Layer[1] : time 8.3387765546036 (nsec) --- local (x,y) -1.7720308511042, -1.7223515788165 + Layer[2] : time 10.006599780114 (nsec) --- local (x,y) -2.0562308860004, -2.5830080178486 + Layer[3] : time 11.674423322826 (nsec) --- local (x,y) -2.105171886712, -3.5204674049499 + Layer[4] : time 13.342248066494 (nsec) --- local (x,y) -1.6528433173052, -4.5187468244154 Drift Chamber 2 has 5 hits. - Layer[0] : time 34.859405624665 (nsec) --- local (x,y) -148.81293524047, 21.129203552863 - Layer[1] : time 36.53054939466 (nsec) --- local (x,y) -180.36365041304, 22.486468209626 - Layer[2] : time 38.201801383585 (nsec) --- local (x,y) -212.42764594016, 23.782525521428 - Layer[3] : time 39.873072245322 (nsec) --- local (x,y) -244.57580168089, 25.184199988755 - Layer[4] : time 41.544370003997 (nsec) --- local (x,y) -276.85578349368, 26.426303559709 -EM Calorimeter has 7 hits. Total Edep is 984.67520392772 (MeV) + Layer[0] : time 34.859511463551 (nsec) --- local (x,y) -153.01856237232, -13.892895410658 + Layer[1] : time 36.530771459711 (nsec) --- local (x,y) -185.14623913488, -13.932679715637 + Layer[2] : time 38.201913458571 (nsec) --- local (x,y) -216.70423119237, -13.012116594602 + Layer[3] : time 39.873062889848 (nsec) --- local (x,y) -248.29460251796, -11.992883736508 + Layer[4] : time 41.544158974461 (nsec) --- local (x,y) -279.6276773147, -10.903351881781 +EM Calorimeter has 10 hits. Total Edep is 965.10165267599 (MeV) Hadron Calorimeter has 0 hits. Total Edep is 0 (MeV) -... write Root file : B5.root - done -... close Root file : B5.root - done +... write file : B5.root - done +... write file : B5ntuple.root - done +... close file : B5.root - done +... close file : B5ntuple.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/basic/B5/run2.mac b/examples/basic/B5/run2.mac index 14aeccd359..b9e25ccbd0 100644 --- a/examples/basic/B5/run2.mac +++ b/examples/basic/B5/run2.mac @@ -4,6 +4,8 @@ # % exampleB5 run2.mac # #/run/numberOfThreads 4 +/control/cout/ignoreThreadsExcept 0 +# /run/initialize # # turn off randomization @@ -19,6 +21,7 @@ /B5/generator/momentum 100. GeV /B5/field/value 100. tesla /analysis/setFileName B5_proton +/analysis/ntuple/setFileName 0 B5ntuple_proton /run/beamOn 30 # /B5/detector/armAngle 60. deg @@ -26,6 +29,7 @@ /B5/generator/momentum 100. GeV /B5/field/value 200. tesla /analysis/setFileName B5_pi+ +/analysis/ntuple/setFileName 0 B5ntuple_pi+ /run/beamOn 30 # /gun/particle e+ @@ -33,5 +37,6 @@ /B5/generator/momentum 100. GeV /B5/field/value 100. tesla /analysis/setFileName B5_e+ +/analysis/ntuple/setFileName 0 B5ntuple_e+ /run/beamOn 30 diff --git a/examples/basic/B5/src/B5RunAction.cc b/examples/basic/B5/src/B5RunAction.cc index 702d2c1b65..c6be66c51c 100644 --- a/examples/basic/B5/src/B5RunAction.cc +++ b/examples/basic/B5/src/B5RunAction.cc @@ -33,7 +33,9 @@ #include "G4Run.hh" #include "G4UnitsTable.hh" #include "G4SystemOfUnits.hh" -#include "g4analysis.hh" +#include "G4GenericAnalysisManager.hh" + +using G4AnalysisManager = G4GenericAnalysisManager; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -41,19 +43,21 @@ B5RunAction::B5RunAction(B5EventAction* eventAction) : G4UserRunAction(), fEventAction(eventAction) { - // Create the analysis manager using a new factory method. - // The choice of analysis technology is done via the function argument. - auto analysisManager = G4Analysis::ManagerInstance("root"); - G4cout << "Using " << analysisManager->GetType() << G4endl; + // Create the generic analysis manager + // The choice of analysis technology is done according to the file extension + auto analysisManager = G4AnalysisManager::Instance(); + analysisManager->SetVerboseLevel(1); // Default settings analysisManager->SetNtupleMerging(true); // Note: merging ntuples is available only with Root output - analysisManager->SetVerboseLevel(1); analysisManager->SetFileName("B5"); + // If the filename extension is not provided, the default file type (root) + // will be used for all files specified without extension. + // analysisManager->SetDefaultFileType("xml"); + // The default file type (root) can be redefined by the user. // Book histograms, ntuple - // // Creating 1D histograms analysisManager @@ -70,7 +74,6 @@ B5RunAction::B5RunAction(B5EventAction* eventAction) 50, -1500., 1500, 50, -300., 300.); // Creating ntuple - // if ( fEventAction ) { analysisManager->CreateNtuple("B5", "Hits"); analysisManager->CreateNtupleIColumn("Dc1Hits"); // column Id = 0 @@ -85,6 +88,9 @@ B5RunAction::B5RunAction(B5EventAction* eventAction) ->CreateNtupleDColumn("HCEnergyVector", fEventAction->GetHadCalEdep()); analysisManager->FinishNtuple(); } + + // Set ntuple output file + analysisManager->SetNtupleFileName(0, "B4ntuple"); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/basic/CMakeLists.txt b/examples/basic/CMakeLists.txt index 7bcfb393d8..098c34a538 100644 --- a/examples/basic/CMakeLists.txt +++ b/examples/basic/CMakeLists.txt @@ -1,8 +1,9 @@ - -#---Adding examples subdirectories explicitly +#---Adding examples subdirectories explicitly # and a custom target to for building all basic examples ------------- - -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(B1) add_subdirectory(B2) diff --git a/examples/basic/History b/examples/basic/History index 605c279da7..df322b9770 100644 --- a/examples/basic/History +++ b/examples/basic/History @@ -6,7 +6,7 @@ Examples basic History file ---------------------------- - + This file should be used by the G4 example coordinator to briefly summarize all major modifications introduced in the code and keep track of all tags. @@ -15,6 +15,16 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +06/11/20, I. Hrivnacova (exbasic-V10-06-03) +- Updated category README + +02/11/20, B. Morgan (exbasic-V10-06-02) +- Support same CMake version range as core Geant4 + +30/06/20, G. Cosmo (exbasic-V10-06-01) +- Migrated all basic examples to use G4RunManagerFactory, therefore + implicitly enabling tasking by default in MT builds. + 24/01/20, A. Zaborowska (exbasic-V10-06-00) - Fix suggested in macros command /run/numberOfThreads @@ -42,10 +52,10 @@ track of all tags. 02/12/13 I. Hrivnacova (exbasic-V09-06-03) - Fixed gui.mac in B2, B4 and B5: - corrected wireframe parameter, removed run2.mac from gui + corrected wireframe parameter, removed run2.mac from gui 30/11/13 I. Hrivnacova (exbasic-V09-06-02) -- Fixes in documentation +- Fixes in documentation - Fixed B2a/gui.mac and obsolete comments in a few more macros 09/11/13 I. Hrivnacova (exbasic-V09-06-01) @@ -54,7 +64,7 @@ track of all tags. 28/02/13 I. Hrivnacova (exbasic-V09-06-00) - When building materials with NistManager - do not set fromIsotopes argument (which was set to false), + do not set fromIsotopes argument (which was set to false), as since 9.6 all materials have to be built from isotopes. Thanks to V. Ivantchenko for pointing at this. @@ -69,7 +79,7 @@ track of all tags. - Updated documentation: - Fixed .README files for artefacts from Markdown support - Removed obsolete instructions (how to compile & link) - - Updated info about used physics lists and needed data files + - Updated info about used physics lists and needed data files 02/11/12 I. Hrivnacova (exbasic-V09-05-02) - Fixed CMake build for added macros in B2, B4 @@ -84,20 +94,20 @@ track of all tags. 18/09/12 I. Hrivnacova (exbasic-V09-05-00) - Adding explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh where needed -- Replaced tabulators with space characters +- Replaced tabulators with space characters - Updated .README 29/11/11 B.Morgan (exbasic-V09-04-05) - Fixed CMakeLists.txt to setup UI and VIS as needed, and copy all macros to build directory so executable is runnable directly. -23/11/11 I. Hrivnacova (exbasic-V09-04-04) +23/11/11 I. Hrivnacova (exbasic-V09-04-04) - Fixed the example name in the top comment line in init.mac and - init_vis.mac + init_vis.mac -21/11/11 I. Hrivnacova (exbasic-V09-04-03) -- Improved vis.mac -- Removed alternative detector construction class in B3 +21/11/11 I. Hrivnacova (exbasic-V09-04-03) +- Improved vis.mac +- Removed alternative detector construction class in B3 18/11/11 I. Hrivnacova (exbasic-V09-04-02) - Fixes in macros and README files @@ -105,7 +115,7 @@ track of all tags. 15/11/11 I. Hrivnacova (exbasic-V09-04-01) - Migration to new G4Exception in B2aDetectorConstruction.cc and B2bChamberParameterisation.cc. - + 14/11/11 I. Hrivnacova (exbasic-V09-04-00) - The first tagged version of the new basic examples. diff --git a/examples/basic/README b/examples/basic/README index 40548d814a..176d4e3bc2 100644 --- a/examples/basic/README +++ b/examples/basic/README @@ -52,5 +52,5 @@ G4 sensitive detector and hits - Geant4 physics list (FTFP_BERT) with step limiter - UI commans defined using G4GenericMessenger - - Histograms (1D, 2D) and ntuple saved in the output file + - Histograms (1D, 2D) and ntuple saved in two output files - Started from extended/analysis/A01 diff --git a/examples/extended/.README.txt b/examples/extended/.README.txt index dcb59eb659..b751c7359c 100644 --- a/examples/extended/.README.txt +++ b/examples/extended/.README.txt @@ -33,7 +33,7 @@ Webified README pages are not yet available for all examples. - \link Examples_g3tog4 g3tog3 \endlink - Examples of usage of the g3tog4 converter tool - \link Examples_geometry geometry \endlink - - Specific geometry examples and tools, OLAP tool for detection of overlapping geometries, + - Specific geometry examples - \link Examples_hadronic hadronic \endlink - Specific hadronic physics simulation with histogramming - \link Examples_medical medical \endlink @@ -48,6 +48,8 @@ Webified README pages are not yet available for all examples. (gflash) - \link Examples_persistency persistency \endlink - Persistency of geometry (GDML or ASCII) and simulation output +- \link Examples_physicslists physicslists \endlink + - Examples to demonstrate usage of Geant4 reference physics lists and physics builders - \link Examples_polarisation polarisation \endlink - Use of physics processes including polarization - \link Examples_radioactivedecay radioactivedecay \endlink diff --git a/examples/extended/CMakeLists.txt b/examples/extended/CMakeLists.txt index 9f8f2ecd11..a23518a174 100644 --- a/examples/extended/CMakeLists.txt +++ b/examples/extended/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all extended examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(analysis) add_subdirectory(biasing) @@ -18,6 +21,7 @@ add_subdirectory(optical) add_subdirectory(parallel) add_subdirectory(parameterisations) add_subdirectory(persistency) +add_subdirectory(physicslists) add_subdirectory(polarisation) add_subdirectory(radioactivedecay) add_subdirectory(runAndEvent) diff --git a/examples/extended/analysis/AnaEx01/.README.txt b/examples/extended/analysis/AnaEx01/.README.txt index 958a3fa28e..0eb95ceda6 100644 --- a/examples/extended/analysis/AnaEx01/.README.txt +++ b/examples/extended/analysis/AnaEx01/.README.txt @@ -4,17 +4,17 @@ /*! \page ExampleAnaEx01 Example AnaEx01 - Examples AnaEx01, AnaEx02 and AnaEx03 show the usage of histogram and tuple + Examples AnaEx01, AnaEx02 and AnaEx03 show the usage of histogram and tuple manipulations using G4Analysis, ROOT and AIDA compliant systems on the same - scenario. All analysis manipulations (histo booking, filling, saving histos - in a file, etc...) are located in one class : HistoManager, implementation of - which is different in each example. All the other classes are same in all + scenario. All analysis manipulations (histo booking, filling, saving histos + in a file, etc...) are located in one class : HistoManager, implementation of + which is different in each example. All the other classes are same in all three examples. - - This example shows the usage of histogram and tuple manipulations using + + This example shows the usage of histogram and tuple manipulations using G4Analysis system. - - The example is an adaptation of examples/novice/N03. It describes a simple + + The example is an adaptation of examples/novice/N03. It describes a simple sampling calorimeter setup. \section AnaEx01_s1 Detector description @@ -22,15 +22,15 @@ The calorimeter is a box made of a given number of layers. A layer consists of an absorber plate and of a detection gap. The layer is replicated. - + Six parameters define the calorimeter : - the material of the absorber, - the thickness of an absorber plate, - the material of the detection gap, - the thickness of a gap, - the number of layers, - - the transverse size of the calorimeter (the input face is a square). - + - the transverse size of the calorimeter (the input face is a square). + The default geometry is constructed in DetectorConstruction class, but all of the above parameters can be modified interactively via the commands defined in the DetectorMessenger class. @@ -47,7 +47,7 @@ ========================================================================== - + \section AnaEx01_s2 Physics list The particle's type and the physic processes which will be available @@ -55,20 +55,20 @@ \section AnaEx01_s3 Action Initialization - A newly introduced class, ActionInitialization, - instantiates and registers to Geant4 kernel all user action classes + A newly introduced class, ActionInitialization, + instantiates and registers to Geant4 kernel all user action classes which are defined thread-local and a run action class which is defined both thread-local and global. - - The thread-local action classes are defined in - ActionInitialization::Build() - and the global run action class is defined in + + The thread-local action classes are defined in + ActionInitialization::Build() + and the global run action class is defined in ActionInitialization::BuildForMaster(). - Note that ActionInitialization::Build() is also used to + Note that ActionInitialization::Build() is also used to instatiate user action clasess in sequential mode. \section AnaEx01_s4 An event : PrimaryGeneratorAction - + The primary kinematic consists of a single particle which hits the calorimeter perpendicular to the input face. The type of the particle and its energy are set in the PrimaryGeneratorAction class, and can @@ -78,31 +78,31 @@ \section AnaEx01_s5 Histograms AnaEx01 can produce 4 histograms : - + - EAbs : total energy deposit in absorber per event - - EGap : total energy deposit in gap per event - - LAbs : total track length of charged particles in absorber per event - - LGap : total track length of charged particles in gap per event - + - EGap : total energy deposit in gap per event + - LAbs : total track length of charged particles in absorber per event + - LGap : total track length of charged particles in gap per event + And 2 Ntuples : - Ntuple1: - one row per event : EnergyAbs EnergyGap - Ntuple2: - one row per event : TrackLAbs TrackLGap - - These histos and ntuples are booked in HistoManager and filled from + + These histos and ntuples are booked in HistoManager and filled from EventAction. - + One can control the name of the histograms file and its format: - - default name : AnaEx01 + - default name : AnaEx01 The format of the histogram file can be : root (default), - xml, csv. Include correct g4nnn.hh in HistoManager.hh - + xml, csv. Include correct g4nnn.hh in HistoManager.hh + \section AnaEx01_s7 How to build An additional step is needed when building the example with GNUmake - due to using the extra shared directory: -\verbatim + due to using the extra shared directory: +\verbatim % cd path_to_AnaEx01/AnaEx01 % gmake setup % gmake @@ -110,7 +110,7 @@ This will copy the files from shared in the example include and src; to remove these files: -\verbatim +\verbatim % gmake clean_setup \endverbatim @@ -122,24 +122,24 @@ and type in the commands from run.mac line by line: Idle> /control/verbose 2 Idle> /tracking/verbose 1 -Idle> /run/beamOn 10 +Idle> /run/beamOn 10 Idle> ... Idle> exit -\endverbatim +\endverbatim or \verbatim Idle> /control/execute run.mac .... Idle> exit -\endverbatim +\endverbatim -- Execute AnaEx01 in the 'batch' mode from macro files +- Execute AnaEx01 in the 'batch' mode from macro files (without visualization) \verbatim % ./AnaEx01 run.mac % ./AnaEx01 run.mac > run.out -\endverbatim +\endverbatim The AnaEx01.in macro is used in Geant4 testing. - + */ diff --git a/examples/extended/analysis/AnaEx01/AnaEx01.cc b/examples/extended/analysis/AnaEx01/AnaEx01.cc index 6b18824131..ce9764c9f4 100644 --- a/examples/extended/analysis/AnaEx01/AnaEx01.cc +++ b/examples/extended/analysis/AnaEx01/AnaEx01.cc @@ -35,11 +35,7 @@ #include "DetectorConstruction.hh" #include "ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "FTFP_BERT.hh" @@ -50,7 +46,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) -{ +{ // Detect interactive mode (if no arguments) and define UI session // G4UIExecutive* ui = 0; @@ -60,13 +56,9 @@ int main(int argc,char** argv) // Construct the default run manager // -#ifdef G4MULTITHREADED + auto* runManager = G4RunManagerFactory::CreateRunManager(); G4int nThreads = 4; - G4MTRunManager * runManager = new G4MTRunManager; runManager->SetNumberOfThreads(nThreads); -#else - G4RunManager * runManager = new G4RunManager; -#endif // Set mandatory initialization classes // @@ -83,20 +75,20 @@ int main(int argc,char** argv) // Get the pointer to the User Interface manager // G4UImanager* UImanager = G4UImanager::GetUIpointer(); - + if ( ! ui ) { // batch mode G4String command = "/control/execute "; G4String fileName = argv[1]; - UImanager->ApplyCommand(command+fileName); + UImanager->ApplyCommand(command+fileName); } - else { + else { // interactive mode - UImanager->ApplyCommand("/control/execute init_vis.mac"); + UImanager->ApplyCommand("/control/execute init_vis.mac"); ui->SessionStart(); delete ui; } - + // Job termination delete visManager; delete runManager; diff --git a/examples/extended/analysis/AnaEx01/AnaEx01.out b/examples/extended/analysis/AnaEx01/AnaEx01.out index 47ac4a00e2..dc265e5a08 100644 --- a/examples/extended/analysis/AnaEx01/AnaEx01.out +++ b/examples/extended/analysis/AnaEx01/AnaEx01.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,7 +16,7 @@ ***** Table : Nb of materials = 3 ***** - Material: G4_Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: G4_Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 21.800 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -62,10 +63,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -104,7 +107,7 @@ Some /vis commands (optionally) take a string to specify colour. ---> The calorimeter is 10 layers of: [ 10mm of G4_Pb + 5mm of G4_lAr ] ------------------------------------------------------------ - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -135,10 +138,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -162,10 +166,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -193,9 +198,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -209,14 +214,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -225,9 +230,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -239,9 +244,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -252,9 +257,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -268,14 +273,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -284,9 +289,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -300,14 +305,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -316,9 +321,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -332,14 +337,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -348,9 +353,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -365,14 +370,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -381,9 +386,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -398,14 +403,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -414,9 +419,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -430,14 +435,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -446,9 +451,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -462,14 +467,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -498,6 +503,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -572,6 +599,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -683,8 +723,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -749,8 +789,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -791,12 +831,12 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 start. -... open Root analysis file : AnaEx01.root - done +... create file : AnaEx01.root - done +... open analysis file : AnaEx01.root - done ----> Output file is open in AnaEx01.root @@ -822,25 +862,28 @@ See commands in /vis/modeling/trajectories/ for other options. --------------------End of Run------------------------------ - mean Energy in Absorber : 453.814 MeV +- 12.6767 MeV - mean Energy in Gap : 23.9168 MeV +- 6.98106 MeV + mean Energy in Absorber : 452.725 MeV +- 15.8845 MeV + mean Energy in Gap : 24.7025 MeV +- 7.34604 MeV - mean trackLength in Absorber : 32.6945 cm +- 9.87423 mm - mean trackLength in Gap : 11.8371 cm +- 3.57806 cm + mean trackLength in Absorber : 32.576 cm +- 1.26658 cm + mean trackLength in Gap : 12.2313 cm +- 3.75875 cm ------------------------------------------------------------ ----> print histograms statistic -EAbs: mean = 453.814 MeV rms = 12.6767 MeV -EGap: mean = 23.9168 MeV rms = 6.98106 MeV -LAbs: mean = 32.6945 cm rms = 9.87423 mm -LGap: mean = 11.8371 cm rms = 3.57806 cm -... write Root file : AnaEx01.root - done -... close Root file : AnaEx01.root - done +EAbs: mean = 452.725 MeV rms = 15.8845 MeV +EGap: mean = 24.7025 MeV rms = 7.34604 MeV +LAbs: mean = 32.576 cm rms = 1.26658 cm +LGap: mean = 12.2313 cm rms = 3.75875 cm +... write file : AnaEx01.root - done +... close file : AnaEx01.root - done ----> Histograms and ntuples are saved +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # /det/setAbsMat G4_Al /det/setGapMat G4_Air @@ -882,10 +925,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -909,10 +953,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -940,9 +985,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -956,14 +1001,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -972,9 +1017,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -986,9 +1031,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -999,9 +1044,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1015,14 +1060,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1031,9 +1076,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1047,14 +1092,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1063,9 +1108,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1079,14 +1124,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -1095,9 +1140,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1112,14 +1157,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1128,9 +1173,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1145,14 +1190,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -1161,9 +1206,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1177,14 +1222,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1193,9 +1238,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1209,14 +1254,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1224,7 +1269,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV ### Run 1 start. -... open Root analysis file : AnaEx01.root - done +... create file : AnaEx01.root - done +... open analysis file : AnaEx01.root - done ----> Output file is open in AnaEx01.root @@ -1232,24 +1278,27 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 --------------------End of Run------------------------------ - mean Energy in Absorber : 149.44 MeV +- 0 eV - mean Energy in Gap : 37.341 MeV +- 0 eV + mean Energy in Absorber : 234.77 MeV +- 0 eV + mean Energy in Gap : 57.6799 MeV +- 0 eV - mean trackLength in Absorber : 37.7896 cm +- 0 fm - mean trackLength in Gap : 18.4465 cm +- 0 fm + mean trackLength in Absorber : 57.4741 cm +- 0 fm + mean trackLength in Gap : 29.6956 cm +- 0 fm ------------------------------------------------------------ ----> print histograms statistic -EAbs: mean = 149.44 MeV rms = 0 eV -EGap: mean = 37.341 MeV rms = 0 eV -LAbs: mean = 37.7896 cm rms = 0 fm -LGap: mean = 18.4465 cm rms = 0 fm -... write Root file : AnaEx01.root - done -... close Root file : AnaEx01.root - done +EAbs: mean = 234.77 MeV rms = 0 eV +EGap: mean = 57.6799 MeV rms = 0 eV +LAbs: mean = 57.4741 cm rms = 0 fm +LGap: mean = 29.6956 cm rms = 0 fm +... write file : AnaEx01.root - done +... close file : AnaEx01.root - done ----> Histograms and ntuples are saved +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/analysis/AnaEx01/CMakeLists.txt b/examples/extended/analysis/AnaEx01/CMakeLists.txt index 280ea3792b..6f07cc43ec 100644 --- a/examples/extended/analysis/AnaEx01/CMakeLists.txt +++ b/examples/extended/analysis/AnaEx01/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(AnaEx01) #---------------------------------------------------------------------------- diff --git a/examples/extended/analysis/AnaEx01/History b/examples/extended/analysis/AnaEx01/History index 55cd0bb1ec..b0eb400e49 100644 --- a/examples/extended/analysis/AnaEx01/History +++ b/examples/extended/analysis/AnaEx01/History @@ -14,8 +14,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-20 B. Morgan, I. Hrivnacova (AnaEx01-V10-06-00) +- Migration to G4RunManagerFactory. +- Call SetNtupleMerging only in MT to suppress warning in Seq mode. + 15-10-18 G. Cosmo (AnaEx01-V10-04-02) -- Added missing include of G4SteateManager.hh in DetectorConstruction source. +- Added missing include of G4StateManager.hh in DetectorConstruction source. 04-07-18 I. Hrivnacova (AnaEx01-V10-04-01) - Fixed compilation error introduced in previous tag @@ -23,7 +27,7 @@ track of all tags. 03-07-18 I. Hrivnacova (AnaEx01-V10-04-00) - Macro & commands review: - Removed obsolete /N03 top command directory - - Added protection against warnings issued from ReinitializeGeometry() if + - Added protection against warnings issued from ReinitializeGeometry() if called in PreInit phase - Added test for all commands defined in this example in AnaEx01.in - Updated README files @@ -48,7 +52,7 @@ track of all tags. - Updated hbook for developments in analysis category 01-09-15 I. Hrivnacova (AnaEx01-V10-01-08) -- New attempt to fix compilation on Windows +- New attempt to fix compilation on Windows 30-08-15 I. Hrivnacova (AnaEx01-V10-01-07) - Corrected previous update which caused compilation error @@ -61,8 +65,8 @@ track of all tags. 27-08-15 I. Hrivnacova (AnaEx01-V10-01-04) - Introduced meaningful histograms and ntuple names instead of numbers - in all AnaEx0N examples and use histogram ids starting from 0 -- Simplified HistoManager class and fixed function names to follow + in all AnaEx0N examples and use histogram ids starting from 0 +- Simplified HistoManager class and fixed function names to follow coding guidelines - In hbook: - Fixed Set*AxisTitle methods @@ -81,16 +85,16 @@ track of all tags. 24-08-15 I. Hrivnacova (AnaEx01-V10-01-02) - Fix in hbook: - Do not delete h1, h2 and p1 in Reset(); + Do not delete h1, h2 and p1 in Reset(); this avoids error message at CloseFile(): - ***** ERROR in HDELET : Unknown histogram : ID= 1 -... close Hbook file : AnaEx01.hbook - done + ***** ERROR in HDELET : Unknown histogram : ID= 1 +... close Hbook file : AnaEx01.hbook - done 17-08-15 I. Hrivnacova (AnaEx01-V10-01-01) - Updated hbook for developments in analysis category: - new G4VAnalysisManager functions: + new G4VAnalysisManager functions: virtual G4bool PlotImpl(); - virtual G4bool MergeImpl(tools::histo::hmpi* hmpi); + virtual G4bool MergeImpl(tools::histo::hmpi* hmpi); 09-06-15 I. Hrivnacova (AnaEx01-V10-01-00) - Updated hbook for developments in analysis category: @@ -104,28 +108,28 @@ track of all tags. 05-11-14 I. Hrivnacova (AnaEx01-V10-00-04) - Including shared directory directly in the example to avoid out-of-project sources - - based on analysisShared-V10-00-00 + - based on analysisShared-V10-00-00 - Adding utility scripts for GNUmake build (much simpler replacement for scripts from common) \ - - based on analysisScripts-V10-00-00 -- Moved implementation of G4AnalysisManager for hbook from - extended/common/analysis in hbook sub-directory + - based on analysisScripts-V10-00-00 +- Moved implementation of G4AnalysisManager for hbook from + extended/common/analysis in hbook sub-directory 13-08-14 mma (AnaEx01-V10-00-03) - update Readme and .Readme again 12-08-14 mma (AnaEx01-V10-00-02) -- restaure calorimeter drawing in Readme and .Readme +- restaure calorimeter drawing in Readme and .Readme 17-06-14 I. Hrivnacova (AnaEx01-V10-00-01) - Fixed problems reported by Davide Mancusi: - - Moving tools/hbook/*.f files in examples/extended/common/analysis/src - to avoid their retrieval from Geant4 source/includes which causes problem - when building examples against Geant4 build directory. - - Added -lkernlib in list of libraries (required with Debian cernlib + - Moving tools/hbook/*.f files in examples/extended/common/analysis/src + to avoid their retrieval from Geant4 source/includes which causes problem + when building examples against Geant4 build directory. + - Added -lkernlib in list of libraries (required with Debian cernlib distribution 20061220) -- In CMake build: replaced explicit use of gfortran with - enable_language(Fortran) and using fortran_sources variable in analogous +- In CMake build: replaced explicit use of gfortran with + enable_language(Fortran) and using fortran_sources variable in analogous way as sources 11-06-14 I. Hrivnacova (AnaEx01-V10-00-00) @@ -136,10 +140,10 @@ track of all tags. - Fixed path to hbook *.f files in GNUmakefile.tools_hbook 28-05-14 I. Hrivnacova -- Use Geant4 physics list (FTFP_BERT) in AnaEx01,02,03, +- Use Geant4 physics list (FTFP_BERT) in AnaEx01,02,03, removed PhysicList class from shared (tag in examples/analysis) - + 16-09-13 I. Hrivnacova (AnaEx01-V09-06-02) - Updated SharedFilesList.txt for addedActionInitialization class (missing in analysisExample-V09-06-02 in top directory) @@ -147,44 +151,44 @@ track of all tags. 11-07-13 I. Hrivnacova (AnaEx01-V09-06-01) - Updated CMakeLists.txt and SharedFilesList.txt for added classes in Hbook analysis code - -02-04-13 I. Hrivnacova (AnaEx01-V09-06-00) -- Create two ntuples instead of one in order to demonstrate - how to do this with all tools. - -31-08-12 I. Hrivnacova (AnaEx01-V09-05-05) -- Updated CMakeLists.tx: - adding visualization, copying macros, install target and comment lines -- Adding .README -06-04-12 mma (AnaEx01-V09-05-04) +02-04-13 I. Hrivnacova (AnaEx01-V09-06-00) +- Create two ntuples instead of one in order to demonstrate + how to do this with all tools. + +31-08-12 I. Hrivnacova (AnaEx01-V09-05-05) +- Updated CMakeLists.tx: + adding visualization, copying macros, install target and comment lines +- Adding .README + +06-04-12 mma (AnaEx01-V09-05-04) - AnaEx01.cc : change order of UI and Vis - -22-02-12 mma (AnaEx01-V09-05-03) + +22-02-12 mma (AnaEx01-V09-05-03) - HistoManager : suppress SetFirstNtupleId() - file G4HbookAnalysisManager renamed ExG4HbookAnalysisManager - -15-02-12 mma (AnaEx01-V09-05-02) + +15-02-12 mma (AnaEx01-V09-05-02) - HistoManager : new handle namespace and fileName[2] - HistoManager : add protections for histo file management - -22-01-12 mma (AnaEx01-V09-05-01) + +22-01-12 mma (AnaEx01-V09-05-01) - HistoManager.hh and .cc : add hbook option. New files : GNUmakefile.tools_hbook and ExG4HbookAnalysisManager.hh .cc - -21-01-12 mma (AnaEx01-V09-05-00) + +21-01-12 mma (AnaEx01-V09-05-00) - HistoManager.hh and .cc : migrate to new g4tools histogramming system Do not need aida anymore, nor G4ANALYSIS_USE - HistoManager : histId and histPt - HistoManager : coding conventions - Update Readme accordingly - -07-06-11 mma (AnaEx01-V09-04-01) + +07-06-11 mma (AnaEx01-V09-04-01) PhysicsList migrated to new scheme G4PhysListHelper - + 03 February 2011 mma (AnaEx01-V09-04-00) - delete subdirectory analysis - + 08 November 2010 Michel Maire (AnaEx01-V09-03-00) - revised version of example : class HistoManager to replace AnaEx01AnalysisManager @@ -198,7 +202,7 @@ PhysicsList migrated to new scheme G4PhysListHelper In fact the analysis directory should not be distributed anymore. - have a run.mac in the main example directory. - AnaEx01AnalysisManager : arrange to have histo and tuple name - as interger in case of hbook file format. + as interger in case of hbook file format. 5 March 2009 Guy Barrand - GNUmakefile : remove the G4ANALYSIS_USE logic found in this file, since diff --git a/examples/extended/analysis/AnaEx01/src/HistoManager.cc b/examples/extended/analysis/AnaEx01/src/HistoManager.cc index 1432980daf..0d534f2e6f 100644 --- a/examples/extended/analysis/AnaEx01/src/HistoManager.cc +++ b/examples/extended/analysis/AnaEx01/src/HistoManager.cc @@ -27,9 +27,9 @@ /// \brief Implementation of the HistoManager class // // -// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #include "HistoManager.hh" #include "G4UnitsTable.hh" @@ -55,26 +55,29 @@ void HistoManager::Book() // in HistoManager.hh G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); analysisManager->SetVerboseLevel(1); + // Only merge in MT mode to avoid warning when running in Sequential mode +#ifdef G4MULTITHREADED analysisManager->SetNtupleMerging(true); - - // Create directories +#endif + + // Create directories analysisManager->SetHistoDirectoryName("histo"); analysisManager->SetNtupleDirectoryName("ntuple"); - + // Open an output file // G4bool fileOpen = analysisManager->OpenFile("AnaEx01"); if (! fileOpen) { - G4cerr << "\n---> HistoManager::Book(): cannot open " + G4cerr << "\n---> HistoManager::Book(): cannot open " << analysisManager->GetFileName() << G4endl; return; } - + // Create histograms. // Histogram ids are generated automatically starting from 0. // The start value can be changed by: - // analysisManager->SetFirstHistoId(1); - + // analysisManager->SetFirstHistoId(1); + // id = 0 analysisManager->CreateH1("EAbs","Edep in absorber (MeV)", 100, 0., 800*MeV); // id = 1 @@ -87,8 +90,8 @@ void HistoManager::Book() // Create ntuples. // Ntuples ids are generated automatically starting from 0. // The start value can be changed by: - // analysisManager->SetFirstMtupleId(1); - + // analysisManager->SetFirstMtupleId(1); + // Create 1st ntuple (id = 0) analysisManager->CreateNtuple("Ntuple1", "Edep"); analysisManager->CreateNtupleDColumn("Eabs"); // column Id = 0 @@ -96,16 +99,16 @@ void HistoManager::Book() analysisManager->FinishNtuple(); // Create 2nd ntuple (id = 1) - // + // analysisManager->CreateNtuple("Ntuple2", "TrackL"); analysisManager->CreateNtupleDColumn("Labs"); // column Id = 0 analysisManager->CreateNtupleDColumn("Lgap"); // column Id = 1 analysisManager->FinishNtuple(); - - fFactoryOn = true; - G4cout << "\n----> Output file is open in " - << analysisManager->GetFileName() << "." + fFactoryOn = true; + + G4cout << "\n----> Output file is open in " + << analysisManager->GetFileName() << "." << analysisManager->GetFileType() << G4endl; } @@ -114,13 +117,13 @@ void HistoManager::Book() void HistoManager::Save() { if (! fFactoryOn) return; - - G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); + + G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); analysisManager->Write(); - analysisManager->CloseFile(); - + analysisManager->CloseFile(); + G4cout << "\n----> Histograms and ntuples are saved\n" << G4endl; - + delete G4AnalysisManager::Instance(); fFactoryOn = false; } @@ -129,7 +132,7 @@ void HistoManager::Save() void HistoManager::FillHisto(G4int ih, G4double xbin, G4double weight) { - G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); + G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); analysisManager->FillH1(ih, xbin, weight); } @@ -137,7 +140,7 @@ void HistoManager::FillHisto(G4int ih, G4double xbin, G4double weight) void HistoManager::Normalize(G4int ih, G4double fac) { - G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); + G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); G4H1* h1 = analysisManager->GetH1(ih); if (h1) h1->scale(fac); } @@ -146,17 +149,17 @@ void HistoManager::Normalize(G4int ih, G4double fac) void HistoManager::FillNtuple(G4double energyAbs, G4double energyGap, G4double trackLAbs, G4double trackLGap) -{ +{ G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); // Fill 1st ntuple ( id = 0) analysisManager->FillNtupleDColumn(0, 0, energyAbs); analysisManager->FillNtupleDColumn(0, 1, energyGap); - analysisManager->AddNtupleRow(0); + analysisManager->AddNtupleRow(0); // Fill 2nd ntuple ( id = 1) analysisManager->FillNtupleDColumn(1, 0, trackLAbs); analysisManager->FillNtupleDColumn(1, 1, trackLGap); - analysisManager->AddNtupleRow(1); -} + analysisManager->AddNtupleRow(1); +} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -165,21 +168,21 @@ void HistoManager::PrintStatistic() if (! fFactoryOn) return; G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); - + G4cout << "\n ----> print histograms statistic \n" << G4endl; for ( G4int i=0; iGetNofH1s(); ++i ) { G4String name = analysisManager->GetH1Name(i); G4H1* h1 = analysisManager->GetH1(i); - + G4String unitCategory; - if (name[0U] == 'E' ) unitCategory = "Energy"; + if (name[0U] == 'E' ) unitCategory = "Energy"; if (name[0U] == 'L' ) unitCategory = "Length"; // we use an explicit unsigned int type for operator [] argument // to avoid problems with windows compiler G4cout << name - << ": mean = " << G4BestUnit(h1->mean(), unitCategory) - << " rms = " << G4BestUnit(h1->rms(), unitCategory ) + << ": mean = " << G4BestUnit(h1->mean(), unitCategory) + << " rms = " << G4BestUnit(h1->rms(), unitCategory ) << G4endl; } } diff --git a/examples/extended/analysis/AnaEx02/AnaEx02.cc b/examples/extended/analysis/AnaEx02/AnaEx02.cc index 8ac444665f..3d70ab9db3 100644 --- a/examples/extended/analysis/AnaEx02/AnaEx02.cc +++ b/examples/extended/analysis/AnaEx02/AnaEx02.cc @@ -32,7 +32,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "FTFP_BERT.hh" @@ -49,7 +49,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) -{ +{ // Detect interactive mode (if no arguments) and define UI session // G4UIExecutive* ui = 0; @@ -57,9 +57,9 @@ int main(int argc,char** argv) ui = new G4UIExecutive(argc, argv); } - // Construct the default run manager + // Construct a serial run manager // - G4RunManager * runManager = new G4RunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); // Set mandatory initialization classes // @@ -67,18 +67,18 @@ int main(int argc,char** argv) runManager->SetUserInitialization(detector); // runManager->SetUserInitialization(new FTFP_BERT); - + // set an HistoManager // HistoManager* histo = new HistoManager(); - + // Set user action classes // - PrimaryGeneratorAction* gen_action = + PrimaryGeneratorAction* gen_action = new PrimaryGeneratorAction(detector); runManager->SetUserAction(gen_action); // - RunAction* run_action = new RunAction(histo); + RunAction* run_action = new RunAction(histo); runManager->SetUserAction(run_action); // EventAction* event_action = new EventAction(run_action,histo); @@ -87,7 +87,7 @@ int main(int argc,char** argv) SteppingAction* stepping_action = new SteppingAction(detector, event_action); runManager->SetUserAction(stepping_action); - + // Initialize G4 kernel // runManager->Initialize(); @@ -100,23 +100,23 @@ int main(int argc,char** argv) // Get the pointer to the User Interface manager // G4UImanager* UImanager = G4UImanager::GetUIpointer(); - + if ( ! ui ) { // batch mode G4String command = "/control/execute "; G4String fileName = argv[1]; - UImanager->ApplyCommand(command+fileName); + UImanager->ApplyCommand(command+fileName); } - else { + else { // interactive mode - UImanager->ApplyCommand("/control/execute init_vis.mac"); + UImanager->ApplyCommand("/control/execute init_vis.mac"); ui->SessionStart(); delete ui; } - + // Job termination delete visManager; - delete histo; + delete histo; delete runManager; return 0; diff --git a/examples/extended/analysis/AnaEx02/AnaEx02.out b/examples/extended/analysis/AnaEx02/AnaEx02.out index f9f278108a..17c7fb7110 100644 --- a/examples/extended/analysis/AnaEx02/AnaEx02.out +++ b/examples/extended/analysis/AnaEx02/AnaEx02.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,7 +15,7 @@ ***** Table : Nb of materials = 3 ***** - Material: G4_Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: G4_Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 21.800 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -53,7 +53,7 @@ ---> The calorimeter is 10 layers of: [ 10mm of G4_Pb + 5mm of G4_lAr ] ------------------------------------------------------------ - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -74,10 +74,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -135,10 +137,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -162,10 +165,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -193,9 +197,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -209,14 +213,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -225,9 +229,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -239,9 +243,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -252,9 +256,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -268,14 +272,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -284,9 +288,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -300,14 +304,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -316,9 +320,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -332,14 +336,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -348,9 +352,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -365,14 +369,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -381,9 +385,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -398,14 +402,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -414,9 +418,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -430,14 +434,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -446,9 +450,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -462,14 +466,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -498,6 +502,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -572,6 +598,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -683,8 +722,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -749,8 +788,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -791,7 +830,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. @@ -821,23 +859,26 @@ See commands in /vis/modeling/trajectories/ for other options. --------------------End of Run------------------------------ - mean Energy in Absorber : 453.814 MeV +- 12.6767 MeV - mean Energy in Gap : 23.9168 MeV +- 6.98106 MeV + mean Energy in Absorber : 452.725 MeV +- 15.8845 MeV + mean Energy in Gap : 24.7025 MeV +- 7.34604 MeV - mean trackLength in Absorber : 32.6945 cm +- 9.87423 mm - mean trackLength in Gap : 11.8371 cm +- 3.57806 cm + mean trackLength in Absorber : 32.576 cm +- 1.26658 cm + mean trackLength in Gap : 12.2313 cm +- 3.75875 cm ------------------------------------------------------------ ----> print histograms statistic -EAbs: mean = 453.814 MeV rms = 12.6767 MeV -EGap: mean = 23.9168 MeV rms = 6.98106 MeV -LAbs: mean = 32.6945 cm rms = 9.87423 mm -LGap: mean = 11.8371 cm rms = 3.57806 cm +EAbs: mean = 452.725 MeV rms = 15.8845 MeV +EGap: mean = 24.7025 MeV rms = 7.34604 MeV +LAbs: mean = 32.576 cm rms = 1.26658 cm +LGap: mean = 12.2313 cm rms = 3.75875 cm ----> Histograms and ntuples are saved +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # /det/setAbsMat G4_Al /det/setGapMat G4_Air @@ -879,10 +920,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -906,10 +948,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -937,9 +980,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -953,14 +996,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -969,9 +1012,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -983,9 +1026,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -996,9 +1039,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1012,14 +1055,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1028,9 +1071,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1044,14 +1087,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1060,9 +1103,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1076,14 +1119,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -1092,9 +1135,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1109,14 +1152,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1125,9 +1168,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1142,14 +1185,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -1158,9 +1201,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1174,14 +1217,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1190,9 +1233,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1206,14 +1249,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1228,22 +1271,25 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 --------------------End of Run------------------------------ - mean Energy in Absorber : 149.44 MeV +- 0 eV - mean Energy in Gap : 37.341 MeV +- 0 eV + mean Energy in Absorber : 234.77 MeV +- 0 eV + mean Energy in Gap : 57.6799 MeV +- 0 eV - mean trackLength in Absorber : 37.7896 cm +- 0 fm - mean trackLength in Gap : 18.4465 cm +- 0 fm + mean trackLength in Absorber : 57.4741 cm +- 0 fm + mean trackLength in Gap : 29.6956 cm +- 0 fm ------------------------------------------------------------ ----> print histograms statistic -EAbs: mean = 149.44 MeV rms = 0 eV -EGap: mean = 37.341 MeV rms = 0 eV -LAbs: mean = 37.7896 cm rms = 0 fm -LGap: mean = 18.4465 cm rms = 0 fm +EAbs: mean = 234.77 MeV rms = 0 eV +EGap: mean = 57.6799 MeV rms = 0 eV +LAbs: mean = 57.4741 cm rms = 0 fm +LGap: mean = 29.6956 cm rms = 0 fm ----> Histograms and ntuples are saved +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/analysis/AnaEx02/CMakeLists.txt b/examples/extended/analysis/AnaEx02/CMakeLists.txt index 2ba0c1cdc7..69bac1e99a 100644 --- a/examples/extended/analysis/AnaEx02/CMakeLists.txt +++ b/examples/extended/analysis/AnaEx02/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(AnaEx02) #---------------------------------------------------------------------------- diff --git a/examples/extended/analysis/AnaEx02/History b/examples/extended/analysis/AnaEx02/History index 2bf8a5e94d..c60a0f6128 100644 --- a/examples/extended/analysis/AnaEx02/History +++ b/examples/extended/analysis/AnaEx02/History @@ -14,13 +14,19 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +13-11-20 B. Morgan (AnaEx02-V10-06-01) +- Enforce use of Serial RunManager. + +10-11-20 B. Morgan (AnaEx02-V10-06-00) +- Migration to G4RunManagerFactory. + 15-10-18 G. Cosmo (AnaEx02-V10-04-01) - Added missing include of G4SteateManager.hh in DetectorConstruction source. 05-07-18 I. Hrivnacova (AnaEx02-V10-04-00) - Macro & commands review: - Removed obsolete /N03 top command directory - - Added protection against warnings issued from ReinitializeGeometry() if + - Added protection against warnings issued from ReinitializeGeometry() if called in PreInit phase - Added test for all commands defined in this example in AnaEx01.in - Updated README files @@ -48,8 +54,8 @@ track of all tags. 27-08-15 I. Hrivnacova (AnaEx02-V10-01-00) - Introduced meaningful histograms and ntuple names instead of numbers - in all AnaEx0N examples and use histogram ids starting from 0 -- Simplified HistoManager classes and fixed function names to follow + in all AnaEx0N examples and use histogram ids starting from 0 +- Simplified HistoManager classes and fixed function names to follow coding guidelines 06-11-14 I. Hrivnacova (AnaEx02-V10-00-04) @@ -59,17 +65,17 @@ track of all tags. 05-11-14 I. Hrivnacova (AnaEx02-V10-00-03) - Including shared directory directly in the example to avoid out-of-project sources - - based on analysisShared-V10-00-00 + - based on analysisShared-V10-00-00 - Adding utility scripts for GNUmake build (much simpler replacement for scripts from common) \ - - based on analysisScripts-V10-00-00 + - based on analysisScripts-V10-00-00 13-08-14 mma (AnaEx02-V10-00-02) - update Readme and .Readme again 12-08-14 mma (AnaEx02-V10-00-01) - restaure calorimeter drawing in Readme and .Readme - + 11-06-14 I. Hrivnacova (AnaEx02-V10-00-00) - Fixed path to copy_files.sh, clean_files.sh in GNUmalefile (this makes GNUmake build working with Geant4 installation via @@ -77,41 +83,41 @@ track of all tags. - Fixed SharedFilesList.txt - removed PhysicList class 28-05-14 I. Hrivnacova -- Use Geant4 physics list (FTFP_BERT) in AnaEx01,02,03, +- Use Geant4 physics list (FTFP_BERT) in AnaEx01,02,03, removed PhysicList class from shared (tag in examples/analysis) - + 02-04-13 I. Hrivnacova (AnaEx02-V09-06-00) -- Create two ntuples instead of one in order to demonstrate +- Create two ntuples instead of one in order to demonstrate how to do this with all tools. - -28-11-12 G. Cosmo (AnaEx02-V09-05-04) + +28-11-12 G. Cosmo (AnaEx02-V09-05-04) - Fixed cases of variable shadowing. -31-08-12 I. Hrivnacova (AnaEx02-V09-05-03) +31-08-12 I. Hrivnacova (AnaEx02-V09-05-03) - Updated CMakeLists.tx: adding install target, minor fixes -- Adding .README +- Adding .README 21-06-12 Ivana Hrivnacova (AnaEx02-V09-05-02) - G4ANALYSIS_USE flag removed from both GNUmakefile and HistoManager.cc - ROOT support added in CMakeLists.txt - + 20-06-12 Gabriele Cosmo (AnaEx02-V09-05-01) - GNUmakefile: protect ROOT setup by G4ANALYSIS_USE flag. 20-06-12 Ivana Hrivnacova - Added Doxygen comments. -10-04-12 mma (AnaEx02-V09-05-00) -- AnaEx02.cc : change order of UI and Vis - -07-06-11 mma (AnaEx02-V09-04-02) +10-04-12 mma (AnaEx02-V09-05-00) +- AnaEx02.cc : change order of UI and Vis + +07-06-11 mma (AnaEx02-V09-04-02) PhysicsList migrated to new scheme G4PhysListHelper 3 February 2011 Jean Jacquemier (AnaEx02-V09-04-01) AnaEx02.cc: fixe in interactive session - + 2 February 2011 Jean Jacquemier (AnaEx02-V09-04-00) - identical to AnaEx01 class HistoManager : direct interface to ROOT system diff --git a/examples/extended/analysis/AnaEx03/AnaEx03.cc b/examples/extended/analysis/AnaEx03/AnaEx03.cc index f3d1aca52a..d19ba7c0e5 100644 --- a/examples/extended/analysis/AnaEx03/AnaEx03.cc +++ b/examples/extended/analysis/AnaEx03/AnaEx03.cc @@ -32,7 +32,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "FTFP_BERT.hh" @@ -49,7 +49,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) -{ +{ // Detect interactive mode (if no arguments) and define UI session // G4UIExecutive* ui = 0; @@ -59,7 +59,7 @@ int main(int argc,char** argv) // Construct the default run manager // - G4RunManager * runManager = new G4RunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); // Set mandatory initialization classes // @@ -67,18 +67,18 @@ int main(int argc,char** argv) runManager->SetUserInitialization(detector); // runManager->SetUserInitialization(new FTFP_BERT); - + // set an HistoManager // HistoManager* histo = new HistoManager(); - + // Set user action classes // - PrimaryGeneratorAction* gen_action = + PrimaryGeneratorAction* gen_action = new PrimaryGeneratorAction(detector); runManager->SetUserAction(gen_action); // - RunAction* run_action = new RunAction(histo); + RunAction* run_action = new RunAction(histo); runManager->SetUserAction(run_action); // EventAction* event_action = new EventAction(run_action,histo); @@ -87,11 +87,11 @@ int main(int argc,char** argv) SteppingAction* stepping_action = new SteppingAction(detector, event_action); runManager->SetUserAction(stepping_action); - + // Initialize G4 kernel // runManager->Initialize(); - + // Initialize visualization // G4VisManager* visManager = new G4VisExecutive; @@ -105,18 +105,18 @@ int main(int argc,char** argv) // batch mode G4String command = "/control/execute "; G4String fileName = argv[1]; - UImanager->ApplyCommand(command+fileName); + UImanager->ApplyCommand(command+fileName); } - else { + else { // interactive mode - UImanager->ApplyCommand("/control/execute init_vis.mac"); + UImanager->ApplyCommand("/control/execute init_vis.mac"); ui->SessionStart(); delete ui; } - + // Job termination delete visManager; - delete histo; + delete histo; delete runManager; return 0; diff --git a/examples/extended/analysis/AnaEx03/CMakeLists.txt b/examples/extended/analysis/AnaEx03/CMakeLists.txt index c0199a4e8a..69e3073804 100644 --- a/examples/extended/analysis/AnaEx03/CMakeLists.txt +++ b/examples/extended/analysis/AnaEx03/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(AnaEx03) #---------------------------------------------------------------------------- diff --git a/examples/extended/analysis/AnaEx03/History b/examples/extended/analysis/AnaEx03/History index 7822cfad8a..2a0268a90c 100644 --- a/examples/extended/analysis/AnaEx03/History +++ b/examples/extended/analysis/AnaEx03/History @@ -14,6 +14,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +13-11-20 B. Morgan (AnaEx03-V10-06-01) +- Enforce use of Serial RunManager. + +10-11-20 B. Morgan (AnaEx03-V10-06-00) +- Migration to G4RunManagerFactory. + 26-11-19 I. Hrivnacova (AnaEx03-V10-05-00) - Fixed Doxygen warning @@ -23,7 +29,7 @@ track of all tags. 05-07-18 I. Hrivnacova (AnaEx03-V10-04-00) - Macro & commands review: - Removed obsolete /N03 top command directory - - Added protection against warnings issued from ReinitializeGeometry() if + - Added protection against warnings issued from ReinitializeGeometry() if called in PreInit phase - Added test for all commands defined in this example in AnaEx01.in - Updated README files @@ -45,11 +51,11 @@ track of all tags. 28-08-15 I. Hrivnacova (AnaEx03-V10-01-01) - Fixed compilation on Windows - + 27-08-15 I. Hrivnacova (AnaEx03-V10-01-00) - Introduced meaningful histograms and ntuple names instead of numbers - in all AnaEx0N examples and use histogram ids starting from 0 -- Simplified HistoManager classes and fixed function names to follow + in all AnaEx0N examples and use histogram ids starting from 0 +- Simplified HistoManager classes and fixed function names to follow coding guidelines - Removed G4ANALYSIS_USE ifdefs from AnaEx03, as this example is now build only with AIDA @@ -61,16 +67,16 @@ track of all tags. 05-11-14 I. Hrivnacova (AnaEx03-V10-00-03) - Including shared directory directly in the example to avoid out-of-project sources - - based on analysisShared-V10-00-00 + - based on analysisShared-V10-00-00 - Adding utility scripts for GNUmake build (much simpler replacement for scripts from common) \ - - based on analysisScripts-V10-00-00 + - based on analysisScripts-V10-00-00 13-08-14 mma (AnaEx03-V10-00-02) - update Readme and .Readme again 12-08-14 mma (AnaEx03-V10-00-01) -- restaure calorimeter drawing in Readme and .Readme +- restaure calorimeter drawing in Readme and .Readme 11-06-14 I. Hrivnacova (AnaEx03-V10-00-00) - Fixed path to copy_files.sh, clean_files.sh in GNUmalefile @@ -79,44 +85,44 @@ track of all tags. - Fixed SharedFilesList.txt - removed PhysicList class 28-05-14 I. Hrivnacova -- Use Geant4 physics list (FTFP_BERT) in AnaEx01,02,03, +- Use Geant4 physics list (FTFP_BERT) in AnaEx01,02,03, removed PhysicList class from shared (tag in examples/analysis) - -13-11-12 I. Hrivnacova (AnaEx03-V09-05-05) + +13-11-12 I. Hrivnacova (AnaEx03-V09-05-05) - Fixed order of instatiating G4VisExecutive and G4UIExecutive (required when Qt driver is activated). -03-09-12 I. Hrivnacova (AnaEx03-V09-05-04) +03-09-12 I. Hrivnacova (AnaEx03-V09-05-04) - New tag to be synchronized with the update in tests/ctest; - no changes in the example itself + no changes in the example itself -31-08-12 I. Hrivnacova (AnaEx03-V09-05-03) +31-08-12 I. Hrivnacova (AnaEx03-V09-05-03) - Updated CMakeLists.tx: adding install target, minor fixes - Added .README -- UseOpenScientist.txt, InstallAida.txt moved in A01 +- UseOpenScientist.txt, InstallAida.txt moved in A01 (as README.AIDA, README.OpenScientist) -21 June 2012 Ivana Hrivnacova (AnaEx03-V09-05-02) -- Updated CMakeLists.txt to get FindAIDA.cmake module found +21 June 2012 Ivana Hrivnacova (AnaEx03-V09-05-02) +- Updated CMakeLists.txt to get FindAIDA.cmake module found by CMake automatically - -21 June 2012 Ivana Hrivnacova (AnaEx03-V09-05-01) + +21 June 2012 Ivana Hrivnacova (AnaEx03-V09-05-01) - Added AIDA support in CMake build -15 June 2012 Gabriele Cosmo (AnaEx03-V09-05-00) +15 June 2012 Gabriele Cosmo (AnaEx03-V09-05-00) - Fixed compilation warnings in case analysis is not used... 16 April 2012 Ivana Hrivnacova - Restored AnaEx01 example with AIDA under new name AnaEx03. -07 June 2011 mma (AnaEx01-V09-04-01) +07 June 2011 mma (AnaEx01-V09-04-01) - PhysicsList migrated to new scheme G4PhysListHelper - + 03 February 2011 mma (AnaEx01-V09-04-00) - delete subdirectory analysis - + 08 November 2010 Michel Maire (AnaEx01-V09-03-00) - revised version of example : class HistoManager to replace AnaEx01AnalysisManager @@ -130,7 +136,7 @@ track of all tags. In fact the analysis directory should not be distributed anymore. - have a run.mac in the main example directory. - AnaEx01AnalysisManager : arrange to have histo and tuple name - as interger in case of hbook file format. + as interger in case of hbook file format. 5 March 2009 Guy Barrand - GNUmakefile : remove the G4ANALYSIS_USE logic found in this file, since diff --git a/examples/extended/analysis/B1Con/CMakeLists.txt b/examples/extended/analysis/B1Con/CMakeLists.txt index 32ee1e28d2..4063da259b 100644 --- a/examples/extended/analysis/B1Con/CMakeLists.txt +++ b/examples/extended/analysis/B1Con/CMakeLists.txt @@ -1,7 +1,10 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B1Con) #---------------------------------------------------------------------------- diff --git a/examples/extended/analysis/B1Con/History b/examples/extended/analysis/B1Con/History index afd495f62a..4ee947bea9 100644 --- a/examples/extended/analysis/B1Con/History +++ b/examples/extended/analysis/B1Con/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10/11/20 B. Morgan (B1Con-V10-06-00) +- Migration to G4RunManagerFactory. + 28/11/19 I. Hrivnacova (B1Con-V10-05-00) - Fixed formatting in .README.txt @@ -29,7 +32,7 @@ track of all tags. - Fixed tag name 05/02/14 I. Hrivnacova (B1Con-V010-00-00) -- Increasing number of events of run1.mac to fit the purpose +- Increasing number of events of run1.mac to fit the purpose of this example (T. Koi) 10/10/13 I. Hrivnacova (B1Con-V09-06-03) @@ -42,13 +45,13 @@ track of all tags. Update README and .README 10/02/13 KOI, Tatsumi (B1Con-V09-06-01) -- Added "name" for convergence tester in B1RunAction +- Added "name" for convergence tester in B1RunAction Added comments for FOM in README Changed output example in README 09/30/13 I. Hrivnacova (B1Con-V09-06-00) -- Added .README and tagged - +- Added .README and tagged + 09/27/13 KOI, Tatsumi - Incorporate comments from Ivana Hrivnacova diff --git a/examples/extended/analysis/B1Con/exampleB01Con.out b/examples/extended/analysis/B1Con/exampleB01Con.out index c08ee6966e..10bcf5f5b4 100644 --- a/examples/extended/analysis/B1Con/exampleB01Con.out +++ b/examples/extended/analysis/B1Con/exampleB01Con.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -16,6 +17,10 @@ Checking overlaps for volume Envelope (G4Box) ... OK! Checking overlaps for volume Shape1 (G4Cons) ... OK! Checking overlaps for volume Shape2 (G4Trd) ... OK! +### HadronInelasticQBBC Construct Process: + Emin(FTFP)= 3 GeV Emax(FTFP)= 100000 GeV + Emin(BERT)= 1 GeV Emax(BERT)= 6 GeV Emax(BERTpions)= 12 GeV + Emin(BIC) = 0 GeV Emax(BIC)= 1.5 GeV. ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... @@ -31,10 +36,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -92,10 +99,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -119,10 +127,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -150,9 +159,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -166,14 +175,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -182,9 +191,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -196,9 +205,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -209,9 +218,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -225,14 +234,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -241,9 +250,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -257,14 +266,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -273,9 +282,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -289,14 +298,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -305,9 +314,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -322,14 +331,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -338,9 +347,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -355,14 +364,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -371,9 +380,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -387,14 +396,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -403,9 +412,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -419,14 +428,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -456,6 +465,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -534,6 +565,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -674,7 +718,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi+Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -686,7 +731,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi-Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -754,7 +800,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. @@ -781,55 +826,58 @@ See commands in /vis/modeling/trajectories/ for other options. ---> Begin of event: 900 G4ConvergenceTester Output Result of DOSE_TALLY - EFFICIENCY = 0.183 - MEAN = 4.51187e-14 - VAR = 1.62192e-26 - SD = 1.27355e-13 - R = 0.0892602 - SHIFT = 1.81003e-13 - VOV = 0.00872467 - FOM = 2091.86 -THE LARGEST SCORE = 5.45677e-13 and it happened at 548th event - Affected Mean = 4.56188e-14 and its ratio to original is 1.01108 - Affected VAR = 1.64533e-26 and its ratio to original is 1.01443 - Affected R = 0.0888721 and its ratio to original is 0.995652 - Affected SHIFT = 1.81308e-13 and its ratio to original is 1.00168 - Affected FOM = 2091.86 and its ratio to original is 1 -MEAN distribution is RANDOM + EFFICIENCY = 0.193 + MEAN = 4.43668e-14 + VAR = 1.51198e-26 + SD = 1.22963e-13 + R = 0.0876424 + SHIFT = 1.76359e-13 + VOV = 0.00902062 + FOM = 4339.61 +THE LARGEST SCORE = 5.48793e-13 and it happened at 830th event + Affected Mean = 4.48708e-14 and its ratio to original is 1.01136 + Affected VAR = 1.53589e-26 and its ratio to original is 1.01581 + Affected R = 0.0872969 and its ratio to original is 0.996058 + Affected SHIFT = 1.76859e-13 and its ratio to original is 1.00284 + Affected FOM = 4339.61 and its ratio to original is 1 +MEAN distribution is not RANDOM r follows 1/std::sqrt(N) r is monotonically decrease -r is less than 0.1. r = 0.0892602 +r is less than 0.1. r = 0.0876424 VOV follows 1/std::sqrt(N) VOV is monotonically decrease FOM distribution is not RANDOM Number of non zero history too small to calculate SLOPE -This result passes 6 / 8 Convergence Test. +This result passes 5 / 8 Convergence Test. G4ConvergenceTester Output History of DOSE_TALLY i/16 till_ith mean var sd r vov fom shift e r2eff r2int - 1 62 5.69479e-14 1.89462e-26 1.37645e-13 0.304518 0.104968 179.731 1.64797e-13 0.222222 0.0555556 0.0357037 - 2 124 5.87962e-14 2.02755e-26 1.42392e-13 0.216612 0.0459599 355.21 1.63432e-13 0.208 0.0304615 0.0160837 - 3 187 5.18731e-14 1.88947e-26 1.37458e-13 0.193263 0.0386885 446.223 1.78758e-13 0.191489 0.0224586 0.0146933 - 4 249 5.71229e-14 2.08688e-26 1.4446e-13 0.159944 0.0261199 651.494 1.77164e-13 0.2 0.016 0.00947988 - 5 312 5.35407e-14 1.9449e-26 1.3946e-13 0.147229 0.0229338 768.887 1.79066e-13 0.191693 0.0134718 0.00813531 - 6 374 4.95449e-14 1.82308e-26 1.35022e-13 0.140731 0.0209222 841.533 1.82063e-13 0.186667 0.011619 0.00813325 - 7 437 5.17856e-14 1.87494e-26 1.36929e-13 0.126342 0.0167059 1044.13 1.7796e-13 0.194064 0.0094816 0.00644426 - 8 499 4.9677e-14 1.79468e-26 1.33966e-13 0.120602 0.0153676 1145.89 1.78511e-13 0.188 0.0086383 0.00587739 - 9 562 4.7757e-14 1.72812e-26 1.31458e-13 0.11601 0.0143126 1238.39 1.79434e-13 0.182948 0.00793254 0.0055019 - 10 624 4.90168e-14 1.7609e-26 1.32699e-13 0.108288 0.0126029 1421.3 1.78721e-13 0.1888 0.00687458 0.00483305 - 11 687 5.01267e-14 1.80129e-26 1.34212e-13 0.102077 0.011144 1599.53 1.78415e-13 0.196221 0.00595392 0.00445067 - 12 749 4.87848e-14 1.73539e-26 1.31734e-13 0.0986014 0.0105946 1714.28 1.78062e-13 0.196 0.00546939 0.00423989 - 13 812 4.77853e-14 1.71614e-26 1.31002e-13 0.0961473 0.0099899 1802.91 1.79434e-13 0.190652 0.0052216 0.00401134 - 14 874 4.71515e-14 1.69692e-26 1.30266e-13 0.0933968 0.00944027 1910.66 1.80087e-13 0.189714 0.00488124 0.00383176 - 15 937 4.55234e-14 1.63593e-26 1.27903e-13 0.0917373 0.00920023 1980.42 1.80741e-13 0.184435 0.00471425 0.00369252 - 16 999 4.51187e-14 1.62192e-26 1.27355e-13 0.0892602 0.00872467 2091.86 1.81003e-13 0.183 0.00446448 0.00349494 + 1 62 3.26925e-14 1.06557e-26 1.03226e-13 0.397807 0.182008 210.637 1.65604e-13 0.190476 0.0674603 0.0882781 + 2 124 3.01629e-14 1.03554e-26 1.01762e-13 0.301757 0.110967 366.071 1.81297e-13 0.168 0.039619 0.0507095 + 3 187 4.52477e-14 1.42501e-26 1.19374e-13 0.192413 0.0451544 900.349 1.63982e-13 0.218085 0.0190711 0.0177547 + 4 249 4.43685e-14 1.3749e-26 1.17256e-13 0.167144 0.0350421 1193.16 1.6364e-13 0.22 0.0141818 0.0136436 + 5 312 4.63181e-14 1.50697e-26 1.22759e-13 0.149806 0.0266475 1485.32 1.68124e-13 0.210863 0.0119566 0.0104135 + 6 374 4.523e-14 1.45197e-26 1.20498e-13 0.137574 0.0230128 1761.19 1.67707e-13 0.210667 0.00999156 0.00888457 + 7 437 4.64687e-14 1.51816e-26 1.23214e-13 0.126696 0.0190601 2076.62 1.69223e-13 0.207763 0.00870591 0.0073092 + 8 499 4.33295e-14 1.42511e-26 1.19378e-13 0.123213 0.01854 2195.68 1.72957e-13 0.202 0.00790099 0.00724998 + 9 562 4.40804e-14 1.44485e-26 1.20202e-13 0.114924 0.0159061 2523.8 1.71001e-13 0.202487 0.00699573 0.00618842 + 10 624 4.49388e-14 1.48585e-26 1.21895e-13 0.108499 0.013961 2831.57 1.71452e-13 0.2016 0.00633651 0.00541668 + 11 687 4.4329e-14 1.47346e-26 1.21386e-13 0.104397 0.0129914 3058.48 1.72902e-13 0.196221 0.00595392 0.0049289 + 12 749 4.52769e-14 1.53981e-26 1.24089e-13 0.100075 0.0117715 3328.33 1.75967e-13 0.198667 0.00537808 0.00462361 + 13 812 4.53974e-14 1.52164e-26 1.23355e-13 0.0952969 0.0107777 3670.46 1.73851e-13 0.199262 0.00494283 0.00412751 + 14 874 4.46889e-14 1.50095e-26 1.22513e-13 0.0926786 0.010344 3880.79 1.75406e-13 0.197714 0.00463749 0.00394201 + 15 937 4.48557e-14 1.51884e-26 1.23241e-13 0.0897092 0.00958155 4141.95 1.7601e-13 0.196162 0.00436868 0.00367048 + 16 999 4.43668e-14 1.51198e-26 1.22963e-13 0.0876424 0.00902062 4339.61 1.76359e-13 0.193 0.00418135 0.00349216 --------------------End of Global Run----------------------- The run consists of 1000 gamma of 6 MeV - Dose in scoring volume : 45.1187 picoGy +- 4.02529 picoGy + Dose in scoring volume : 44.3668 picoGy +- 3.88647 picoGy ------------------------------------------------------------ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 1 start. ---> Begin of event: 0 @@ -853,24 +901,24 @@ i/16 till_ith mean var sd r vov ---> Begin of event: 900 G4ConvergenceTester Output Result of DOSE_TALLY - EFFICIENCY = 0.635 - MEAN = 5.14496e-12 - VAR = 2.13357e-23 - SD = 4.61906e-12 - R = 0.0283904 - SHIFT = -9.70653e-14 - VOV = 0.000164761 - FOM = 1159.51 -THE LARGEST SCORE = 1.07769e-11 and it happened at 790th event - Affected Mean = 5.15058e-12 and its ratio to original is 1.00109 - Affected VAR = 2.1346e-23 and its ratio to original is 1.00049 - Affected R = 0.0283521 and its ratio to original is 0.998651 - Affected SHIFT = -1.01172e-13 and its ratio to original is 1.04231 - Affected FOM = 1159.51 and its ratio to original is 1 + EFFICIENCY = 0.642 + MEAN = 5.14718e-12 + VAR = 2.08772e-23 + SD = 4.56916e-12 + R = 0.0280716 + SHIFT = -9.60659e-14 + VOV = 0.000195338 + FOM = 4880.82 +THE LARGEST SCORE = 1.06991e-11 and it happened at 20th event + Affected Mean = 5.15273e-12 and its ratio to original is 1.00108 + Affected VAR = 2.08872e-23 and its ratio to original is 1.00047 + Affected R = 0.028034 and its ratio to original is 0.998662 + Affected SHIFT = -1.00143e-13 and its ratio to original is 1.04244 + Affected FOM = 4880.82 and its ratio to original is 1 MEAN distribution is not RANDOM r follows 1/std::sqrt(N) r is monotonically decrease -r is less than 0.1. r = 0.0283904 +r is less than 0.1. r = 0.0280716 VOV follows 1/std::sqrt(N) VOV is monotonically decrease FOM distribution is not RANDOM @@ -880,27 +928,30 @@ This result passes 5 / 8 Convergence Test. G4ConvergenceTester Output History of DOSE_TALLY i/16 till_ith mean var sd r vov fom shift e r2eff r2int - 1 62 4.06696e-12 2.08244e-23 4.56337e-12 0.141366 0.00497919 46.7654 8.68644e-13 0.52381 0.01443 0.00523719 - 2 124 4.69201e-12 2.16925e-23 4.65752e-12 0.0887853 0.00126154 118.559 3.17884e-13 0.584 0.00569863 0.00212114 - 3 187 4.90719e-12 2.13484e-23 4.62043e-12 0.0686706 0.000848507 198.187 1.32292e-13 0.62766 0.00315543 0.00153514 - 4 249 4.93084e-12 2.1369e-23 4.62266e-12 0.0592927 0.000645691 265.836 1.00732e-13 0.628 0.00236943 0.00113214 - 5 312 5.11497e-12 2.14231e-23 4.62851e-12 0.0511477 0.000515882 357.243 -6.28894e-14 0.642173 0.00178024 0.000827492 - 6 374 5.08663e-12 2.13819e-23 4.62406e-12 0.0469437 0.00043953 424.094 -2.73376e-14 0.64 0.0015 0.000697834 - 7 437 5.10279e-12 2.15696e-23 4.6443e-12 0.0434886 0.000350757 494.157 -4.99938e-14 0.639269 0.00128832 0.00059862 - 8 499 5.11133e-12 2.16605e-23 4.65409e-12 0.0407207 0.000299299 563.618 -6.94908e-14 0.63 0.0011746 0.000480258 - 9 562 5.0492e-12 2.14282e-23 4.62906e-12 0.0386381 0.000282423 626.015 -1.62212e-14 0.628774 0.00104866 0.000441592 - 10 624 5.11934e-12 2.14353e-23 4.62983e-12 0.0361752 0.000258651 714.158 -7.84205e-14 0.632 0.000931646 0.000374905 - 11 687 5.16249e-12 2.13357e-23 4.61906e-12 0.0341115 0.00024384 803.184 -1.18682e-13 0.638081 0.000824416 0.000337485 - 12 749 5.19529e-12 2.13729e-23 4.62309e-12 0.0324931 0.000221215 885.183 -1.48593e-13 0.641333 0.000745669 0.000308728 - 13 812 5.18032e-12 2.12478e-23 4.60954e-12 0.0312073 0.000208488 959.633 -1.30774e-13 0.643296 0.000682034 0.000290661 - 14 874 5.14851e-12 2.1225e-23 4.60706e-12 0.0302509 0.00019327 1021.27 -1.00706e-13 0.64 0.000642857 0.000271213 - 15 937 5.14102e-12 2.12664e-23 4.61155e-12 0.0292884 0.000177807 1089.49 -9.28526e-14 0.637527 0.000606143 0.000250754 - 16 999 5.14496e-12 2.13357e-23 4.61906e-12 0.0283904 0.000164761 1159.51 -9.70653e-14 0.635 0.000574803 0.000230406 + 1 62 4.5253e-12 2.34085e-23 4.83823e-12 0.1347 0.0022136 211.977 5.15321e-13 0.603175 0.0104428 0.00741344 + 2 124 5.07914e-12 2.24777e-23 4.74106e-12 0.0834893 0.00110103 551.779 -2.27529e-14 0.648 0.00434568 0.00256902 + 3 187 5.00811e-12 2.20288e-23 4.69348e-12 0.0683506 0.000830051 823.27 3.22726e-14 0.62234 0.00322786 0.00141909 + 4 249 4.92216e-12 2.15564e-23 4.64289e-12 0.0596572 0.000658972 1080.69 8.75362e-14 0.612 0.00253595 0.0010088 + 5 312 5.06441e-12 2.17141e-23 4.65984e-12 0.052008 0.000521823 1421.96 -2.82951e-14 0.619808 0.00195975 0.00073644 + 6 374 5.10571e-12 2.16318e-23 4.651e-12 0.0470408 0.000439654 1738.11 -6.06809e-14 0.626667 0.00158865 0.000618279 + 7 437 5.11358e-12 2.142e-23 4.62817e-12 0.0432461 0.000391003 2056.52 -8.02445e-14 0.625571 0.00136653 0.000499424 + 8 499 5.04846e-12 2.12203e-23 4.60654e-12 0.0408067 0.000357707 2309.74 -2.29392e-14 0.624 0.00120513 0.000456729 + 9 562 4.84078e-12 2.11742e-23 4.60154e-12 0.0400621 0.000326485 2396.39 1.70206e-13 0.605684 0.00115635 0.000445772 + 10 624 4.87931e-12 2.10272e-23 4.58554e-12 0.0375917 0.000301029 2721.71 1.34783e-13 0.6128 0.00101097 0.00039991 + 11 687 4.95198e-12 2.09917e-23 4.58167e-12 0.0352737 0.000273146 3091.19 7.24355e-14 0.619186 0.000893929 0.000348493 + 12 749 4.97479e-12 2.1078e-23 4.59108e-12 0.0336984 0.00024486 3386.94 5.48528e-14 0.621333 0.000812589 0.000321481 + 13 812 5.07739e-12 2.11261e-23 4.59632e-12 0.0317486 0.000223897 3815.73 -3.22864e-14 0.630996 0.000719305 0.000287428 + 14 874 5.10773e-12 2.09814e-23 4.58054e-12 0.0303169 0.000215807 4184.63 -5.5276e-14 0.636571 0.000652475 0.000265589 + 15 937 5.112e-12 2.09475e-23 4.57684e-12 0.0292331 0.000203931 4500.68 -5.62272e-14 0.636461 0.000608944 0.000244717 + 16 999 5.14718e-12 2.08772e-23 4.56916e-12 0.0280716 0.000195338 4880.82 -9.60659e-14 0.642 0.000557632 0.000229594 --------------------End of Global Run----------------------- The run consists of 1000 proton of 210 MeV - Dose in scoring volume : 5.14496 nanoGy +- 145.994 picoGy + Dose in scoring volume : 5.14718 nanoGy +- 144.417 picoGy ------------------------------------------------------------ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/analysis/B1Con/exampleB1Con.cc b/examples/extended/analysis/B1Con/exampleB1Con.cc index 1d1293d821..8497cc4387 100644 --- a/examples/extended/analysis/B1Con/exampleB1Con.cc +++ b/examples/extended/analysis/B1Con/exampleB1Con.cc @@ -30,11 +30,7 @@ #include "B1DetectorConstruction.hh" #include "B1ConActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "QBBC.hh" @@ -57,15 +53,11 @@ int main(int argc,char** argv) // Choose the Random engine // G4Random::setTheEngine(new CLHEP::RanecuEngine); - + // Construct the default run manager // -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(8); -#else - G4RunManager* runManager = new G4RunManager; -#endif // Set mandatory initialization classes // @@ -76,14 +68,14 @@ int main(int argc,char** argv) G4VModularPhysicsList* physicsList = new QBBC; physicsList->SetVerboseLevel(1); runManager->SetUserInitialization(physicsList); - + // User action initialization runManager->SetUserInitialization(new B1ConActionInitialization()); // Initialize G4 kernel // runManager->Initialize(); - + // Initialize visualization G4VisManager* visManager = new G4VisExecutive; // G4VisExecutive can take a verbosity argument - see /vis/verbose guidance. @@ -108,9 +100,9 @@ int main(int argc,char** argv) // Job termination // Free the store: user actions, physics_list and detector_description are - // owned and deleted by the run manager, so they should not be deleted + // owned and deleted by the run manager, so they should not be deleted // in the main() program ! - + delete visManager; delete runManager; diff --git a/examples/extended/analysis/CMakeLists.txt b/examples/extended/analysis/CMakeLists.txt index 5d5faf63f3..06fe004796 100644 --- a/examples/extended/analysis/CMakeLists.txt +++ b/examples/extended/analysis/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all analysis examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() find_package(Geant4) include(${Geant4_USE_FILE}) diff --git a/examples/extended/analysis/History b/examples/extended/analysis/History index 981b8e1948..fd511f3c84 100644 --- a/examples/extended/analysis/History +++ b/examples/extended/analysis/History @@ -8,6 +8,15 @@ * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +13th November 2020 B. Morgan (analysisExample-V10-06-02) +- Enforce use of Serial RunManager for serial-only examples. + +10th November 2020 B. Morgan (analysisExample-V10-06-01) +- Migration to G4RunManagerFactory. + +3rd November 2020 B. Morgan (analysisExample-V10-06-00) +- Support same CMake version range as core Geant4 + 10th July 2019 I. Hrivnacova (analysisExample-V10-05-00) - Removed B3aScoreWriter, B4dScoreWriter examples The score ntuple writer is now provided with Geant4 source @@ -18,7 +27,7 @@ in CMake and README's 28th May 2014 I. Hrivnacova (analysisExample-V10-00-00) -- Use Geant4 physics list (FTFP_BERT) in AnaEx01,02,03, +- Use Geant4 physics list (FTFP_BERT) in AnaEx01,02,03, removed PhysicList class from shared 21th November 2013 A. Dotti (analysisExample-V09-06-06) @@ -32,8 +41,8 @@ - Removed A01, as it was transformed in basic/B5 22th October 2013 I. Hrivnacova (analysisExample-V09-06-04) -- N03Con replaced with B1Con -- Adding README files on AIDA and OpenScientist form A01 +- N03Con replaced with B1Con +- Adding README files on AIDA and OpenScientist form A01 (which is being migrated to g4tools in B5) in AnaEx03 30th September 2013 I. Hrivnacova (analysisExample-V09-06-03) @@ -60,8 +69,8 @@ 18th September 2012 Ivana Hrivnacova (analysisExample-V09-05-04) - Adding explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh where needed -- Replaced tabulators with space characters - +- Replaced tabulators with space characters + 08th June 2012 mma (analysisExample-V09-05-03) - apply coding conventions in shared diff --git a/examples/extended/biasing/B01/CMakeLists.txt b/examples/extended/biasing/B01/CMakeLists.txt index 9d55b22342..8886a847d7 100644 --- a/examples/extended/biasing/B01/CMakeLists.txt +++ b/examples/extended/biasing/B01/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B01) #---------------------------------------------------------------------------- diff --git a/examples/extended/biasing/B01/History b/examples/extended/biasing/B01/History index 82fdaf5901..5ee25426e4 100644 --- a/examples/extended/biasing/B01/History +++ b/examples/extended/biasing/B01/History @@ -16,6 +16,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 Ben Morgan - B01-V10-06-00 +- Migration to G4RunManagerFactory. + May 8th, 2018 B. Morgan - B01-V10-04-00 - Include G4Types before use of G4MULTITHREADED. For forward compatibility with move to #defines over -D for G4 preprocessor @@ -32,35 +35,35 @@ Nov 22nd, 2013 A. Howard - B01-V09-06-12 Nov 22nd, 2013 A. Howard - B01-V09-06-11 - changed main() to standard number of threads -- co-working with +- co-working with geombias-V09-06-05 phys-ctor-limiters-V09-06-012 procbiasing-V09-06-09 Nov 22nd, 2013 A. Howard - B01-V09-06-10 - updated History file for the co-working tags -- co-working with +- co-working with geombias-V09-06-05 phys-ctor-limiters-V09-06-012 procbiasing-V09-06-09 Nov 22nd, 2013 A. Howard - B01-V09-06-09 - updated History file for the co-working tags -- co-working with +- co-working with geombias-V09-06-05 phys-ctor-limiters-V09-06-012 procbiasing-V09-06-09 Nov 22nd, 2013 A. Howard - B01-V09-06-08 - fixed erroneous pointer reference and cleaned code a little -- co-working with +- co-working with geombias-V09-06-05 phys-ctor-limiters-V09-06-012 procbiasing-V09-06-09 Nov 22nd, 2013 A. Howard - B01-V09-06-07 - migrated to MT (new modular physicslist based implementation) -- co-working with +- co-working with geombias-V09-06-05 phys-ctor-limiters-V09-06-012 procbiasing-V09-06-09 @@ -81,7 +84,7 @@ May 22nd, 2013 A.Howard - B01-V09-06-02 - Applied coding guidelines for extended examples more correctly May 22nd, 2013 A.Howard - B01-V09-06-01 -- Applied coding guidelines for extended examples +- Applied coding guidelines for extended examples Dec 17th, 2012 A.Howard - B01-V09-06-00 - Removed reference to obsolete G4CellScorer classes diff --git a/examples/extended/biasing/B01/exampleB01.cc b/examples/extended/biasing/B01/exampleB01.cc index 7479b21b60..378918bdbc 100644 --- a/examples/extended/biasing/B01/exampleB01.cc +++ b/examples/extended/biasing/B01/exampleB01.cc @@ -61,11 +61,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4VPhysicalVolume.hh" #include "G4UImanager.hh" @@ -97,15 +93,8 @@ int main(int argc, char **argv) G4int numberOfEvents = 100; G4long myseed = 345354; -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - G4cout << " Number of cores: " << G4Threading::G4GetNumberOfCores() << G4endl; - G4cout << " and using 2 of them! " << G4endl; + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(2); - // runManager->SetNumberOfThreads(G4Threading::G4GetNumberOfCores()); -#else - G4RunManager * runManager = new G4RunManager; -#endif G4Random::setTheSeed(myseed); diff --git a/examples/extended/biasing/B01/exampleB01.out b/examples/extended/biasing/B01/exampleB01.out index 3adf355ed5..b77f45e29f 100644 --- a/examples/extended/biasing/B01/exampleB01.out +++ b/examples/extended/biasing/B01/exampleB01.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,7 +16,7 @@ <<< Geant4 Physics List simulation engine: FTFP_BERT - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -120,10 +121,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -147,10 +149,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -178,9 +181,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -194,14 +197,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -210,9 +213,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -224,9 +227,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -237,9 +240,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -253,14 +256,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -269,9 +272,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -285,14 +288,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -301,9 +304,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -317,14 +320,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -333,9 +336,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -350,14 +353,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -366,9 +369,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -383,14 +386,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -399,9 +402,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -415,14 +418,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -431,9 +434,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -447,14 +450,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -483,6 +486,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -557,6 +582,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -668,8 +706,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -734,8 +772,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -776,7 +814,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ++ ConcreteSD/Collisions id 0 ++ ConcreteSD/CollWeight id 1 @@ -795,24 +832,24 @@ Upload data before 1st event for Z < 9 ============================================================= ============================================================= Volume | Tr.Entering | Population | Collisions | Coll*WGT | NumWGTedE | FluxWGTedE | Av.Tr.WGT | SL | SLW | SLW_v | SLWE | SLWE_v | - cell_00 | 41 | 133 | 41 | 41 | 0.0114742 | 2.61935 | 1 | 8262.39 | 8262.39 | 70568.4 | 21642.1 | 809.715 | - cell_01 | 155 | 184 | 683 | 683 | 0.0144468 | 4.03984 | 1 | 27030.6 | 27030.6 | 215900 | 109199 | 3119.07 | - cell_02 | 171 | 279 | 1149 | 574.5 | 0.0107531 | 2.83452 | 0.5 | 43565.9 | 21783 | 180926 | 61744.3 | 1945.51 | - cell_03 | 231 | 368 | 1950 | 487.5 | 0.00625326 | 2.02264 | 0.25 | 64350.4 | 16087.6 | 179636 | 32539.4 | 1123.31 | - cell_04 | 282 | 429 | 2405 | 300.625 | 0.00516999 | 1.83522 | 0.125 | 76018 | 9502.24 | 117936 | 17438.7 | 609.73 | - cell_05 | 320 | 471 | 2855 | 178.438 | 0.00294789 | 1.61307 | 0.0625 | 87607.6 | 5475.47 | 107096 | 8832.31 | 315.706 | - cell_06 | 308 | 471 | 3096 | 96.75 | 0.00379788 | 1.50745 | 0.03125 | 91203 | 2850.09 | 42529 | 4296.37 | 161.52 | - cell_07 | 249 | 394 | 2471 | 38.6094 | 0.0040252 | 1.65785 | 0.015625 | 74738.5 | 1167.79 | 17361.5 | 1936.02 | 69.8835 | - cell_08 | 248 | 384 | 2261 | 17.6641 | 0.0042407 | 1.78337 | 0.0078125 | 70670.7 | 552.115 | 8136.45 | 984.626 | 34.5042 | - cell_09 | 270 | 417 | 2486 | 9.71094 | 0.00470181 | 1.47427 | 0.00390625 | 79129.1 | 309.098 | 3783.55 | 455.695 | 17.7895 | - cell_10 | 283 | 432 | 2626 | 5.12891 | 0.00329161 | 1.27387 | 0.00195312 | 80575.3 | 157.374 | 2497.6 | 200.473 | 8.22112 | - cell_11 | 286 | 415 | 2621 | 2.55957 | 0.0028286 | 1.22342 | 0.000976562 | 77774.4 | 75.9516 | 1310.57 | 92.9207 | 3.70707 | - cell_12 | 302 | 442 | 2666 | 1.30176 | 0.00355503 | 1.36986 | 0.000488281 | 81187.3 | 39.6422 | 605.589 | 54.3044 | 2.15289 | - cell_13 | 320 | 452 | 2689 | 0.656494 | 0.00393935 | 1.44469 | 0.000244141 | 82724.1 | 20.1963 | 281.613 | 29.1775 | 1.10937 | - cell_14 | 340 | 479 | 3022 | 0.368896 | 0.00290785 | 1.27517 | 0.00012207 | 90343.9 | 11.0283 | 190.088 | 14.0629 | 0.552749 | - cell_15 | 337 | 486 | 3229 | 0.197083 | 0.00269503 | 1.09119 | 6.10352e-05 | 93652.9 | 5.71612 | 97.7005 | 6.23735 | 0.263306 | - cell_16 | 307 | 434 | 2925 | 0.0892639 | 0.0031072 | 1.00337 | 3.05176e-05 | 85343.9 | 2.60449 | 38.4399 | 2.61327 | 0.11944 | - cell_17 | 252 | 364 | 2587 | 0.0394745 | 0.00255044 | 0.856081 | 1.52588e-05 | 73062.5 | 1.11485 | 17.7082 | 0.954398 | 0.0451635 | - cell_18 | 155 | 290 | 1860 | 0.0141907 | 0.00228971 | 1.04296 | 7.62939e-06 | 50860 | 0.388031 | 7.65438 | 0.404702 | 0.0175263 | - cell_19 | 93 | 93 | 93 | 0.000709534 | 0.0078078 | 1.72125 | 7.62939e-06 | 14984.9 | 0.114326 | 0.978376 | 0.196783 | 0.00763896 | + cell_00 | 43 | 135 | 43 | 43 | 0.0265346 | 3.26696 | 1 | 8600.56 | 8600.56 | 33965.6 | 28097.7 | 901.263 | + cell_01 | 160 | 193 | 709 | 709 | 0.00714699 | 3.69104 | 1 | 26890.5 | 26890.5 | 401920 | 99253.9 | 2872.52 | + cell_02 | 167 | 276 | 1360 | 680 | 0.00966465 | 2.47181 | 0.5 | 47653 | 23826.5 | 199903 | 58894.5 | 1931.99 | + cell_03 | 204 | 313 | 1802 | 450.5 | 0.00470968 | 2.00375 | 0.25 | 54143.5 | 13535.9 | 192468 | 27122.5 | 906.464 | + cell_04 | 251 | 340 | 2078 | 259.75 | 0.00471143 | 1.86693 | 0.125 | 65163.4 | 8145.43 | 113148 | 15206.9 | 533.088 | + cell_05 | 250 | 381 | 2426 | 151.625 | 0.00384781 | 1.52464 | 0.0625 | 73185.4 | 4574.09 | 67826 | 6973.82 | 260.982 | + cell_06 | 221 | 339 | 2042 | 63.8125 | 0.00356722 | 1.34279 | 0.03125 | 58814.9 | 1837.97 | 26895.1 | 2468.01 | 95.9407 | + cell_07 | 179 | 291 | 1586 | 24.7812 | 0.00433113 | 1.42051 | 0.015625 | 49959.6 | 780.618 | 10490.9 | 1108.88 | 45.4374 | + cell_08 | 175 | 243 | 1585 | 12.3828 | 0.00330705 | 1.10187 | 0.0078125 | 48082.8 | 375.647 | 5697.56 | 413.916 | 18.8421 | + cell_09 | 182 | 263 | 1949 | 7.61328 | 0.00278889 | 0.856874 | 0.00390625 | 56004.5 | 218.768 | 3404.26 | 187.456 | 9.49412 | + cell_10 | 167 | 232 | 1628 | 3.17969 | 0.00259748 | 0.867633 | 0.00195312 | 49097.4 | 95.8933 | 1655.54 | 83.2002 | 4.30023 | + cell_11 | 162 | 234 | 1615 | 1.57715 | 0.00213198 | 0.712255 | 0.000976562 | 44714.2 | 43.6662 | 755.673 | 31.1015 | 1.61108 | + cell_12 | 132 | 180 | 1331 | 0.649902 | 0.00277106 | 0.725705 | 0.000488281 | 38332.5 | 18.717 | 276.055 | 13.583 | 0.764966 | + cell_13 | 100 | 145 | 1035 | 0.252686 | 0.00141925 | 0.528448 | 0.000244141 | 25831.1 | 6.30643 | 136.507 | 3.33262 | 0.193738 | + cell_14 | 79 | 104 | 810 | 0.098877 | 0.00192308 | 0.630622 | 0.00012207 | 22260.9 | 2.71739 | 50.8406 | 1.71365 | 0.0977703 | + cell_15 | 75 | 98 | 732 | 0.0446777 | 0.00135246 | 0.443984 | 6.10352e-05 | 20917.3 | 1.27669 | 27.2311 | 0.56683 | 0.0368291 | + cell_16 | 47 | 70 | 465 | 0.0141907 | 0.000991746 | 0.441644 | 3.05176e-05 | 11676.5 | 0.356337 | 10.0858 | 0.157374 | 0.0100025 | + cell_17 | 18 | 29 | 197 | 0.00300598 | 0.00165601 | 0.579703 | 1.52588e-05 | 5085.96 | 0.0776056 | 1.53803 | 0.0449882 | 0.00254699 | + cell_18 | 6 | 12 | 61 | 0.000465393 | 0.00297842 | 0.905377 | 7.62939e-06 | 1516.71 | 0.0115716 | 0.195658 | 0.0104766 | 0.000582751 | + cell_19 | 2 | 2 | 2 | 1.52588e-05 | 2.74336 | 2.92761 | 7.62939e-06 | 206.53 | 0.0015757 | 7.00956e-05 | 0.00461303 | 0.000192298 | ============================================= diff --git a/examples/extended/biasing/B02/CMakeLists.txt b/examples/extended/biasing/B02/CMakeLists.txt index 010b56afc4..560ef9258e 100644 --- a/examples/extended/biasing/B02/CMakeLists.txt +++ b/examples/extended/biasing/B02/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B02) #---------------------------------------------------------------------------- diff --git a/examples/extended/biasing/B02/History b/examples/extended/biasing/B02/History index 6dc4a063e7..a06352f897 100644 --- a/examples/extended/biasing/B02/History +++ b/examples/extended/biasing/B02/History @@ -16,6 +16,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 Ben Morgan - B02-V10-06-00 +- Migration to G4RunManagerFactory. + May 8th, 2018 B. Morgan - B02-V10-04-00 - Include G4Types before use of G4MULTITHREADED. For forward compatibility with move to #defines over -D for G4 preprocessor @@ -33,7 +36,7 @@ Nov 22nd, 2013 A.Howard - B02-V09-06-10 Nov 22nd, 2013 A.Howard - B02-V09-06-09 - Migrated to new MT compliant interface with modular physicslist -- co-working with +- co-working with geombias-V09-06-05 phys-ctor-limiters-V09-06-012 procbiasing-V09-06-09 @@ -93,7 +96,7 @@ March 17th, 2005 G.Daquino - B02-V07-00-00 Jun 18th, 2004 G.Daquino - B02-V06-01-00 - porting B02 from Anaphe (Lizard) to PI. Actually, PI 1.2.1 still DOES NOT allow the plotting in the same way, previously set in Anaphe. Therefore the - HBOOk file produced at the end of the example still needs other packages to + HBOOk file produced at the end of the example still needs other packages to be displayed. However, future PI releases could contain python modules with this property. README file has been updated accordingly. diff --git a/examples/extended/biasing/B02/exampleB02.cc b/examples/extended/biasing/B02/exampleB02.cc index b6d0db05bc..30d1afc09c 100644 --- a/examples/extended/biasing/B02/exampleB02.cc +++ b/examples/extended/biasing/B02/exampleB02.cc @@ -53,11 +53,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4VPhysicalVolume.hh" #include "G4UImanager.hh" @@ -94,15 +90,8 @@ int main(int argc, char **argv) G4int numberOfEvents = 100; G4long myseed = 345354; -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - G4cout << " Number of cores: " << G4Threading::G4GetNumberOfCores() << G4endl; - G4cout << " but using two! " << G4endl; + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(2); - // runManager->SetNumberOfThreads(G4Threading::G4GetNumberOfCores()); -#else - G4RunManager * runManager = new G4RunManager; -#endif G4Random::setTheSeed(myseed); diff --git a/examples/extended/biasing/B02/exampleB02.out b/examples/extended/biasing/B02/exampleB02.out index ab69bcebcb..768f9e48ff 100644 --- a/examples/extended/biasing/B02/exampleB02.out +++ b/examples/extended/biasing/B02/exampleB02.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -18,7 +19,7 @@ B02ImportanceDetectorConstruction:: ghostWorldName = ParallelBiasingWorld --- G4CoupledTransportation is used - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -147,10 +148,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -174,10 +176,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -205,9 +208,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -221,14 +224,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -237,9 +240,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -251,9 +254,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -264,9 +267,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -280,14 +283,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -296,9 +299,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -312,14 +315,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -328,9 +331,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -344,14 +347,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -360,9 +363,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -377,14 +380,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -393,9 +396,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -410,14 +413,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -426,9 +429,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -442,14 +445,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -458,9 +461,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -474,14 +477,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -510,6 +513,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -584,6 +609,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -695,8 +733,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -761,8 +799,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -803,7 +841,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ++ ConcreteSD/Collisions id 0 ++ ConcreteSD/CollWeight id 1 @@ -822,24 +859,24 @@ Upload data before 1st event for Z < 9 ============================================================= ============================================================= Volume | Tr.Entering | Population | Collisions | Coll*WGT | NumWGTedE | FluxWGTedE | Av.Tr.WGT | SL | SLW | SLW_v | SLWE | SLWE_v | - cell_00 | 44 | 137 | 0 | 0 | 0.11279 | 2.05928 | 1 | 7206.45 | 7206.45 | 5483.87 | 14840.1 | 618.524 | - cell_01 | 145 | 181 | 546 | 546 | 0.0215203 | 4.45479 | 1 | 24208 | 24208 | 142267 | 107841 | 3061.63 | - cell_02 | 161 | 247 | 1240 | 620 | 0.0117777 | 2.90435 | 0.5 | 43916.4 | 21958.2 | 165638 | 63774.3 | 1950.83 | - cell_03 | 206 | 328 | 1685 | 421.25 | 0.00644696 | 2.58971 | 0.25 | 57500.8 | 14375.2 | 179936 | 37227.7 | 1160.04 | - cell_04 | 270 | 405 | 2141 | 267.625 | 0.00633287 | 2.18008 | 0.125 | 71061.7 | 8882.72 | 103531 | 19365 | 655.647 | - cell_05 | 342 | 493 | 2896 | 181 | 0.00647144 | 1.87094 | 0.0625 | 94917.9 | 5932.37 | 62553.1 | 11099.1 | 404.809 | - cell_06 | 397 | 582 | 3731 | 116.594 | 0.00419539 | 1.52926 | 0.03125 | 113395 | 3543.6 | 48340.1 | 5419.09 | 202.805 | - cell_07 | 426 | 624 | 3873 | 60.5156 | 0.00372682 | 1.39665 | 0.015625 | 114896 | 1795.26 | 26534 | 2507.35 | 98.8875 | - cell_08 | 454 | 634 | 4145 | 32.3828 | 0.00331807 | 1.19275 | 0.0078125 | 121603 | 950.02 | 13988.9 | 1133.14 | 46.4162 | - cell_09 | 417 | 604 | 3928 | 15.3438 | 0.00258224 | 1.07172 | 0.00390625 | 109253 | 426.77 | 7474.39 | 457.376 | 19.3007 | - cell_10 | 342 | 504 | 3263 | 6.37305 | 0.00257193 | 1.12321 | 0.00195312 | 91412.1 | 178.539 | 3174.68 | 200.538 | 8.16506 | - cell_11 | 267 | 401 | 2497 | 2.43848 | 0.00302537 | 1.19636 | 0.000976562 | 71208.5 | 69.5395 | 1127.49 | 83.1942 | 3.41107 | - cell_12 | 224 | 335 | 2337 | 1.14111 | 0.0030635 | 1.121 | 0.000488281 | 70619 | 34.4819 | 539.874 | 38.6544 | 1.65391 | - cell_13 | 225 | 324 | 2270 | 0.554199 | 0.00240101 | 1.16859 | 0.000244141 | 63445 | 15.4895 | 310.248 | 18.1008 | 0.74491 | - cell_14 | 183 | 278 | 1801 | 0.219849 | 0.00313682 | 1.34018 | 0.00012207 | 51725.6 | 6.31416 | 109.153 | 8.46212 | 0.342393 | - cell_15 | 170 | 250 | 1518 | 0.0926514 | 0.00340284 | 1.38748 | 6.10352e-05 | 47881 | 2.92242 | 47.7143 | 4.05482 | 0.162364 | - cell_16 | 157 | 238 | 1588 | 0.0484619 | 0.00421738 | 1.1852 | 3.05176e-05 | 47455.3 | 1.44822 | 17.6694 | 1.71643 | 0.0745187 | - cell_17 | 147 | 210 | 1452 | 0.0221558 | 0.00274644 | 0.956596 | 1.52588e-05 | 42778.1 | 0.652742 | 10.1936 | 0.62441 | 0.0279961 | - cell_18 | 88 | 165 | 1006 | 0.00767517 | 0.0029308 | 0.973851 | 7.62939e-06 | 28004.6 | 0.213658 | 2.99047 | 0.208071 | 0.00876448 | - cell_19 | 56 | 56 | 0 | 0 | 0.00406801 | 2.12524 | 7.62939e-06 | 8109.45 | 0.0618702 | 1.10211 | 0.131489 | 0.0044834 | + cell_00 | 34 | 128 | 0 | 0 | 0.0121994 | 2.84693 | 1 | 6087.68 | 6087.68 | 45991.2 | 17331.2 | 561.065 | + cell_01 | 141 | 160 | 455 | 455 | 0.0285801 | 4.84519 | 1 | 22969.6 | 22969.6 | 106983 | 111292 | 3057.59 | + cell_02 | 190 | 298 | 1297 | 648.5 | 0.0126788 | 3.1286 | 0.5 | 51321.7 | 25660.8 | 193526 | 80282.5 | 2453.68 | + cell_03 | 277 | 429 | 2366 | 591.5 | 0.00675282 | 2.14138 | 0.25 | 73783.5 | 18445.9 | 193128 | 39499.6 | 1304.16 | + cell_04 | 301 | 461 | 2621 | 327.625 | 0.00415471 | 1.8577 | 0.125 | 83305.8 | 10413.2 | 161506 | 19344.6 | 671.01 | + cell_05 | 334 | 481 | 2533 | 158.312 | 0.00487269 | 1.9127 | 0.0625 | 83384.5 | 5211.53 | 72698 | 9968.12 | 354.235 | + cell_06 | 396 | 561 | 3568 | 111.5 | 0.00423494 | 1.44554 | 0.03125 | 109664 | 3427 | 45543.8 | 4953.88 | 192.875 | + cell_07 | 419 | 605 | 3870 | 60.4688 | 0.00353646 | 1.22324 | 0.015625 | 113973 | 1780.82 | 25157.5 | 2178.37 | 88.9683 | + cell_08 | 409 | 589 | 3808 | 29.75 | 0.00276421 | 1.06666 | 0.0078125 | 111241 | 869.069 | 14298.1 | 927.001 | 39.523 | + cell_09 | 346 | 520 | 3407 | 13.3086 | 0.00225956 | 1.01633 | 0.00390625 | 94399.6 | 368.748 | 7158.37 | 374.771 | 16.1748 | + cell_10 | 309 | 422 | 3220 | 6.28906 | 0.00245712 | 0.988833 | 0.00195312 | 89796.7 | 175.384 | 3175.84 | 173.426 | 7.80342 | + cell_11 | 271 | 390 | 2687 | 2.62402 | 0.00275 | 1.03314 | 0.000976562 | 76617.6 | 74.8219 | 1232.76 | 77.3015 | 3.39008 | + cell_12 | 235 | 354 | 2121 | 1.03564 | 0.00293566 | 0.981251 | 0.000488281 | 60092.3 | 29.342 | 434.672 | 28.7918 | 1.27605 | + cell_13 | 214 | 314 | 2003 | 0.489014 | 0.0023436 | 1.00819 | 0.000244141 | 57793.6 | 14.1098 | 259.76 | 14.2254 | 0.608773 | + cell_14 | 206 | 302 | 1906 | 0.232666 | 0.00229392 | 0.981399 | 0.00012207 | 56141.8 | 6.85324 | 134.413 | 6.72576 | 0.308332 | + cell_15 | 200 | 273 | 1803 | 0.110046 | 0.00240158 | 0.856882 | 6.10352e-05 | 52415 | 3.19916 | 56.1727 | 2.7413 | 0.134903 | + cell_16 | 162 | 230 | 1597 | 0.0487366 | 0.00244791 | 0.808782 | 3.05176e-05 | 45532.3 | 1.38954 | 23.073 | 1.12383 | 0.0564807 | + cell_17 | 142 | 216 | 1396 | 0.0213013 | 0.00255549 | 1.00471 | 1.52588e-05 | 41172.6 | 0.628245 | 10.9254 | 0.631205 | 0.0279199 | + cell_18 | 95 | 179 | 1120 | 0.00854492 | 0.00387415 | 1.21765 | 7.62939e-06 | 36134 | 0.27568 | 3.94027 | 0.335682 | 0.0152652 | + cell_19 | 75 | 75 | 0 | 0 | 0.0268231 | 1.84002 | 7.62939e-06 | 13788.5 | 0.105198 | 0.28126 | 0.193566 | 0.00754426 | ============================================= diff --git a/examples/extended/biasing/B03/CMakeLists.txt b/examples/extended/biasing/B03/CMakeLists.txt index 7505c80f8f..226a17853e 100644 --- a/examples/extended/biasing/B03/CMakeLists.txt +++ b/examples/extended/biasing/B03/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B03) #---------------------------------------------------------------------------- diff --git a/examples/extended/biasing/B03/History b/examples/extended/biasing/B03/History index 2907842224..90031ffbdd 100644 --- a/examples/extended/biasing/B03/History +++ b/examples/extended/biasing/B03/History @@ -16,6 +16,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 Ben Morgan - B03-V10-06-00 +- Migration to G4RunManagerFactory. + May 29th, 2019 V. Ivanchenko - B03-V10-05-01 - B03PhysicsList : use G4NeutronInelasticXS cross section @@ -36,7 +39,7 @@ Feb 15th, 2018 A. Howard - B03-V10-04-00 in MT mode. Now everything is handled with B03PhysicsList.cc Mar 8th, 2017 A. Howard - B03-V10-03-01 -- B03PhysicsList - removed obsolete unnececssary instantiation of +- B03PhysicsList - removed obsolete unnececssary instantiation of de-excitation sub-models Mar 7th, 2017 A. Howard - B03-V10-03-00 diff --git a/examples/extended/biasing/B03/exampleB03.cc b/examples/extended/biasing/B03/exampleB03.cc index 8af9b1ac70..4cbbaf1df6 100644 --- a/examples/extended/biasing/B03/exampleB03.cc +++ b/examples/extended/biasing/B03/exampleB03.cc @@ -57,11 +57,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4VPhysicalVolume.hh" #include "G4UImanager.hh" @@ -90,15 +86,8 @@ int main(int , char **) G4long myseed = 345354; -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - G4cout << " Number of cores: " << G4Threading::G4GetNumberOfCores() << G4endl; - G4cout << " but using only two! " << G4endl; + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(2); - // runManager->SetNumberOfThreads(G4Threading::G4GetNumberOfCores()); -#else - G4RunManager * runManager = new G4RunManager; -#endif G4Random::setTheSeed(myseed); diff --git a/examples/extended/biasing/B03/exampleB03.out b/examples/extended/biasing/B03/exampleB03.out index dfac5a778d..619e281117 100644 --- a/examples/extended/biasing/B03/exampleB03.out +++ b/examples/extended/biasing/B03/exampleB03.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -103,9 +104,9 @@ phot: for gamma SubType=12 BuildTable=0 PhotoElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -123,9 +124,9 @@ eBrem: for e- SubType=3 eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -147,9 +148,9 @@ annihil: for e+, integral:1 SubType=5 BuildTable=0 eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -160,9 +161,9 @@ hIoni: for proton SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -173,9 +174,9 @@ hIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -186,9 +187,9 @@ hIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -199,9 +200,9 @@ hIoni: for anti_proton SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -212,9 +213,9 @@ hIoni: for kaon+ SubType=2 BetheBloch : Emin=1.05231 MeV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -225,9 +226,9 @@ hIoni: for kaon- SubType=2 BetheBloch : Emin=1.05231 MeV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -242,19 +243,19 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -269,19 +270,19 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -292,9 +293,9 @@ hIoni: for pi+ SubType=2 BetheBloch : Emin=297.505 keV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -321,6 +322,17 @@ hIoni: for pi- SubType=2 Cr_sctns: Tripathi: 0 eV ---> 100 TeV Cr_sctns: IonsShen: 0 eV ---> 100 TeV +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: inelastic + Model: ANTI-FTFP: 0 eV ---> 20 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -499,7 +511,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 0 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ======================================================================= ====== Pre-compound/De-excitation Physics Parameters ======== @@ -524,7 +535,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 0 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ++ ConcreteSD/Collisions id 0 ++ ConcreteSD/CollWeight id 1 @@ -541,7 +551,7 @@ Upload data before 1st event for Z < 9 *** G4Exception : GeomBias1001 issued by : G4ImportanceAlgorithm::Warning() Calculate() - ipre_over_ipost ! in [0.25, 4]. -ipre_over_ipost = 8192. +ipre_over_ipost = 1024. *** This is just a warning message. *** -------- WWWW -------- G4Exception-END --------- WWWW ------- @@ -561,24 +571,24 @@ ipre_over_ipost = 8192. ============================================================= ============================================================= Volume | Tr.Entering | Population | Collisions | Coll*WGT | NumWGTedE | FluxWGTedE | Av.Tr.WGT | SL | SLW | SLW_v | SLWE | SLWE_v | - cell_00 | 51 | 150 | 0 | 0 | 0.00041335 | 0.806127 | 1 | 9270.98 | 9270.98 | 1.0341e+06 | 7473.59 | 427.447 | - cell_01 | 157 | 195 | 462 | 462 | 0.00201138 | 3.81215 | 1 | 26586.2 | 26586.2 | 1.47298e+06 | 101350 | 2962.73 | - cell_02 | 205 | 310 | 906 | 453 | 0.00106396 | 2.54889 | 0.5 | 53737.8 | 26868.9 | 2.01423e+06 | 68486 | 2143.06 | - cell_03 | 371 | 505 | 1901 | 475.25 | 0.000540399 | 1.83073 | 0.25 | 98081.4 | 24520.3 | 2.83796e+06 | 44890.1 | 1533.63 | - cell_04 | 545 | 756 | 3148 | 393.5 | 0.000415379 | 1.30726 | 0.125 | 156137 | 19517.1 | 2.2773e+06 | 25513.9 | 945.943 | - cell_05 | 720 | 984 | 4252 | 265.75 | 0.000250176 | 1.02835 | 0.0625 | 203078 | 12692.4 | 2.04685e+06 | 13052.2 | 512.074 | - cell_06 | 1007 | 1327 | 6091 | 190.344 | 0.00015372 | 0.836505 | 0.03125 | 280166 | 8755.18 | 1.90781e+06 | 7323.75 | 293.268 | - cell_07 | 1261 | 1699 | 7980 | 124.688 | 0.000115027 | 0.734521 | 0.015625 | 361420 | 5647.19 | 1.48321e+06 | 4147.98 | 170.61 | - cell_08 | 1416 | 1988 | 8972 | 70.0938 | 0.000115607 | 0.703193 | 0.0078125 | 403417 | 3151.7 | 818129 | 2216.25 | 94.5815 | - cell_09 | 1643 | 2286 | 10361 | 40.4727 | 0.0001031 | 0.627085 | 0.00390625 | 471536 | 1841.94 | 491188 | 1155.05 | 50.6412 | - cell_10 | 1970 | 2731 | 12359 | 24.1387 | 9.83468e-05 | 0.567418 | 0.00195312 | 551566 | 1077.28 | 287521 | 611.266 | 28.2768 | - cell_11 | 2272 | 3101 | 14744 | 14.3984 | 7.28792e-05 | 0.486509 | 0.000976562 | 652192 | 636.906 | 207312 | 309.861 | 15.1087 | - cell_12 | 2543 | 3454 | 16466 | 8.04004 | 6.31682e-05 | 0.408086 | 0.000488281 | 721977 | 352.528 | 114809 | 143.862 | 7.25226 | - cell_13 | 2913 | 3952 | 18866 | 4.60596 | 5.80549e-05 | 0.369131 | 0.000244141 | 816147 | 199.255 | 66386.6 | 73.551 | 3.85407 | - cell_14 | 3044 | 4272 | 20029 | 2.44495 | 5.60355e-05 | 0.358215 | 0.00012207 | 864449 | 105.524 | 34289.1 | 37.8002 | 1.92141 | - cell_15 | 3113 | 4359 | 20172 | 1.2312 | 5.3627e-05 | 0.357486 | 6.10352e-05 | 869517 | 53.0711 | 18059.1 | 18.9722 | 0.968455 | - cell_16 | 3214 | 4540 | 21468 | 0.655151 | 5.87162e-05 | 0.376187 | 3.05176e-05 | 920733 | 28.0985 | 9338.57 | 10.5703 | 0.548325 | - cell_17 | 3141 | 4572 | 20966 | 0.319916 | 5.23795e-05 | 0.359787 | 1.52588e-05 | 905471 | 13.8164 | 4949.46 | 4.97096 | 0.25925 | - cell_18 | 2281 | 4252 | 17918 | 0.136703 | 5.00943e-05 | 0.358938 | 7.62939e-06 | 772012 | 5.88999 | 2235.37 | 2.11414 | 0.111979 | - cell_19 | 1892 | 1892 | 0 | 0 | 9.64836e-05 | 0.48094 | 7.62939e-06 | 305003 | 2.32699 | 583.401 | 1.11914 | 0.0562886 | + cell_00 | 50 | 150 | 0 | 0 | 0.000572435 | 1.13863 | 1 | 8289.91 | 8289.91 | 853622 | 9439.1 | 488.643 | + cell_01 | 151 | 201 | 385 | 385 | 0.00155376 | 4.02942 | 1 | 25476.8 | 25476.8 | 1.86856e+06 | 102657 | 2903.28 | + cell_02 | 182 | 272 | 872 | 436 | 0.000576059 | 2.48285 | 0.5 | 50561.7 | 25280.9 | 3.39266e+06 | 62768.6 | 1954.37 | + cell_03 | 297 | 435 | 1681 | 420.25 | 0.000512095 | 1.81689 | 0.25 | 85195.9 | 21299 | 2.44471e+06 | 38697.8 | 1251.92 | + cell_04 | 420 | 608 | 2355 | 294.375 | 0.000409911 | 1.72758 | 0.125 | 123340 | 15417.5 | 2.17919e+06 | 26635 | 893.277 | + cell_05 | 549 | 789 | 3242 | 202.625 | 0.000221909 | 1.40566 | 0.0625 | 160853 | 10053.3 | 2.21366e+06 | 14131.5 | 491.23 | + cell_06 | 694 | 993 | 3992 | 124.75 | 0.000247495 | 1.23858 | 0.03125 | 196787 | 6149.58 | 1.12124e+06 | 7616.72 | 277.502 | + cell_07 | 944 | 1272 | 5369 | 83.8906 | 0.000221925 | 0.965789 | 0.015625 | 258873 | 4044.89 | 690296 | 3906.51 | 153.194 | + cell_08 | 1156 | 1605 | 7132 | 55.7188 | 0.000142652 | 0.868004 | 0.0078125 | 325050 | 2539.45 | 617169 | 2204.25 | 88.0406 | + cell_09 | 1367 | 1908 | 8293 | 32.3945 | 0.000126322 | 0.733395 | 0.00390625 | 382405 | 1493.77 | 366140 | 1095.52 | 46.2516 | + cell_10 | 1687 | 2322 | 10416 | 20.3438 | 0.000131752 | 0.722761 | 0.00195312 | 480030 | 937.56 | 219100 | 677.631 | 28.8669 | + cell_11 | 2035 | 2820 | 12556 | 12.2617 | 0.000121446 | 0.672399 | 0.000976562 | 577253 | 563.724 | 135865 | 379.047 | 16.5002 | + cell_12 | 2385 | 3274 | 14531 | 7.09521 | 0.000106975 | 0.584826 | 0.000488281 | 659911 | 322.222 | 80305.6 | 188.444 | 8.59073 | + cell_13 | 2748 | 3794 | 17686 | 4.31787 | 8.78157e-05 | 0.527393 | 0.000244141 | 780803 | 190.626 | 54017.8 | 100.535 | 4.74362 | + cell_14 | 3099 | 4233 | 19665 | 2.40051 | 9.0948e-05 | 0.490706 | 0.00012207 | 874376 | 106.735 | 27849.6 | 52.3757 | 2.53287 | + cell_15 | 3558 | 4921 | 22657 | 1.38287 | 7.60335e-05 | 0.476441 | 6.10352e-05 | 992197 | 60.5589 | 18275.4 | 28.8527 | 1.38954 | + cell_16 | 3853 | 5352 | 24988 | 0.762573 | 6.59712e-05 | 0.429342 | 3.05176e-05 | 1.09127e+06 | 33.3029 | 10747.2 | 14.2983 | 0.709006 | + cell_17 | 3835 | 5606 | 25812 | 0.39386 | 6.59833e-05 | 0.42243 | 1.52588e-05 | 1.12673e+06 | 17.1926 | 5441.49 | 7.26266 | 0.359048 | + cell_18 | 2770 | 5208 | 21406 | 0.163315 | 8.16843e-05 | 0.504267 | 7.62939e-06 | 948924 | 7.23972 | 2164.34 | 3.65075 | 0.176793 | + cell_19 | 2425 | 2425 | 0 | 0 | 0.000134196 | 0.728058 | 7.62939e-06 | 385053 | 2.93772 | 730.039 | 2.13883 | 0.0979681 | ============================================= diff --git a/examples/extended/biasing/CMakeLists.txt b/examples/extended/biasing/CMakeLists.txt index 3ef85dfb01..f31ee0d13a 100644 --- a/examples/extended/biasing/CMakeLists.txt +++ b/examples/extended/biasing/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all biasing examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(B01) add_subdirectory(B02) diff --git a/examples/extended/biasing/GB01/CMakeLists.txt b/examples/extended/biasing/GB01/CMakeLists.txt index 65ee116a7c..7984ee93aa 100644 --- a/examples/extended/biasing/GB01/CMakeLists.txt +++ b/examples/extended/biasing/GB01/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(GB01project) #---------------------------------------------------------------------------- diff --git a/examples/extended/biasing/GB01/History b/examples/extended/biasing/GB01/History index 624cdcc815..0a9884a803 100644 --- a/examples/extended/biasing/GB01/History +++ b/examples/extended/biasing/GB01/History @@ -16,6 +16,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 Ben Morgan - GB01-V10-06-00 +- Migration to G4RunManagerFactory. + May 8th, 2018 J. Allison - GB01-V10-04-01 - Remove G4UI_USE and G4VIS_USE. - Move instantiation of G4UIExecutive nearer to start of main. @@ -29,7 +32,7 @@ Nov 02, 2016 I. Hrivnacova - Added files description (for Doxygen) Jul 20, 2016 I. Hrivnacova -- Coding guidelines +- Coding guidelines (redundant empty lines, class data member names, separators) Nov 14, 2014, M. Verderi diff --git a/examples/extended/biasing/GB01/exampleGB01.cc b/examples/extended/biasing/GB01/exampleGB01.cc index 0e932278fa..98806621b4 100644 --- a/examples/extended/biasing/GB01/exampleGB01.cc +++ b/examples/extended/biasing/GB01/exampleGB01.cc @@ -30,11 +30,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "GB01ActionInitialization.hh" #include "G4UImanager.hh" @@ -97,15 +93,8 @@ int main(int argc,char** argv) } // -- Construct the run manager : MT or sequential one -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - G4cout << " ********** Run Manager constructed in MT mode ************ " << G4endl; - // -- Choose 4 threads: + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(4); -#else - G4RunManager * runManager = new G4RunManager; - G4cout << " ********** Run Manager constructed in sequential mode ************ " << G4endl; -#endif // -- Set mandatory initialization classes GB01DetectorConstruction* detector = new GB01DetectorConstruction(); diff --git a/examples/extended/biasing/GB01/exampleGB01.out b/examples/extended/biasing/GB01/exampleGB01.out index 0d2dad1113..8376e77dd0 100644 --- a/examples/extended/biasing/GB01/exampleGB01.out +++ b/examples/extended/biasing/GB01/exampleGB01.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,7 +13,6 @@ WWW : http://geant4.org/ ************************************************************** - ********** Run Manager constructed in sequential mode ************ <<< Geant4 Physics List simulation engine: FTFP_BERT ********************************************************* @@ -20,7 +20,7 @@ ********************************************************* Attaching biasing operator TestManyExponentialTransform to logical volume test.logical - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -41,10 +41,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -102,10 +104,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -129,10 +132,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -160,9 +164,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -176,14 +180,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -192,9 +196,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -206,9 +210,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -219,9 +223,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -235,14 +239,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -251,9 +255,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -267,14 +271,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -283,9 +287,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -299,14 +303,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -315,9 +319,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -332,14 +336,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -348,9 +352,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -365,14 +369,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -381,9 +385,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -397,14 +401,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -413,9 +417,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -429,14 +433,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -465,6 +469,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -539,6 +565,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -650,8 +689,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -716,8 +755,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -758,7 +797,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. @@ -771,10 +809,10 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 0 0 -500 1 0 0 0 World initStep 1 0 0 0 1 0 500 500 test.phys Transportation 2 0 0 120 0.804 0 120 620 test.phys biasWrapper(compt) - 3 -0.873 -1.3 123 0.475 0 3.23 623 test.phys biasWrapper(compt) - 4 -3.17 2.18 128 0.4 0 6.58 630 test.phys biasWrapper(compt) - 5 -35.5 -0.894 172 0.387 0 54.9 685 test.phys biasWrapper(compt) - 6 -72.4 -5 200 0.387 0 46.5 731 World Transportation + 3 -0.886 -1.32 123 0.475 0 3.28 623 test.phys biasWrapper(compt) + 4 -3.18 2.16 128 0.4 0 6.58 630 test.phys biasWrapper(compt) + 5 -35.6 -0.915 172 0.387 0 54.9 685 test.phys biasWrapper(compt) + 6 -72.4 -5.02 200 0.387 0 46.4 731 World Transportation 7 -1e+04 -1.11e+03 7.74e+03 0.387 0 1.25e+04 1.32e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -782,25 +820,25 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -35.5 -0.894 172 0.0127 0 0 0 test.phys initStep - 1 -35.5 -0.894 172 0 0.0127 0.00538 0.00538 test.phys eIoni + 0 -35.6 -0.915 172 0.0127 0 0 0 test.phys initStep + 1 -35.6 -0.915 172 0 0.0127 0.00538 0.00538 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.17 2.18 128 0.0746 0 0 0 test.phys initStep - 1 -3.15 2.24 128 0 0.0746 0.121 0.121 test.phys eIoni + 0 -3.18 2.16 128 0.0746 0 0 0 test.phys initStep + 1 -3.16 2.22 128 0 0.0746 0.121 0.121 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.873 -1.3 123 0.329 0 0 0 test.phys initStep - 1 -0.926 -1.9 123 0.0691 0.26 1.28 1.28 test.phys eIoni - 2 -0.937 -1.95 123 0 0.0691 0.106 1.38 test.phys eIoni + 0 -0.886 -1.32 123 0.329 0 0 0 test.phys initStep + 1 -0.94 -1.92 123 0.0691 0.26 1.28 1.28 test.phys eIoni + 2 -0.95 -1.97 123 0 0.0691 0.106 1.38 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -964,10 +1002,10 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 0 0 -500 1 0 0 0 World initStep 1 0 0 0 1 0 500 500 test.phys Transportation 2 0 0 9.42 0.594 0 9.42 509 test.phys biasWrapper(compt) - 3 -41.8 10.5 46.3 0.315 0 56.8 566 test.phys biasWrapper(compt) - 4 -44.3 8.36 45.4 0.233 0 3.42 570 test.phys biasWrapper(compt) - 5 -79 27.1 14.4 0.214 0 50.2 620 test.phys biasWrapper(compt) - 6 -108 77.7 0 0.214 0 60.2 680 World Transportation + 3 -41.9 10.6 46.4 0.315 0 56.9 566 test.phys biasWrapper(compt) + 4 -44.4 8.4 45.5 0.233 0 3.42 570 test.phys biasWrapper(compt) + 5 -79.2 27.1 14.5 0.214 0 50.2 620 test.phys biasWrapper(compt) + 6 -109 78.1 -7.11e-15 0.214 0 60.7 681 World Transportation 7 -5.88e+03 1e+04 -2.82e+03 0.214 0 1.18e+04 1.25e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -975,25 +1013,25 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -79 27.1 14.4 0.0197 0 0 0 test.phys initStep - 1 -79 27.1 14.4 0 0.0197 0.0117 0.0117 test.phys eIoni + 0 -79.2 27.1 14.5 0.0197 0 0 0 test.phys initStep + 1 -79.2 27.1 14.5 0 0.0197 0.0117 0.0117 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -44.3 8.36 45.4 0.0821 0 0 0 test.phys initStep - 1 -44.3 8.3 45.4 0 0.0821 0.143 0.143 test.phys eIoni + 0 -44.4 8.4 45.5 0.0821 0 0 0 test.phys initStep + 1 -44.4 8.33 45.5 0 0.0821 0.143 0.143 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -41.8 10.5 46.3 0.278 0 0 0 test.phys initStep - 1 -42 10.8 46.7 0.0191 0.259 1.05 1.05 test.phys eIoni - 2 -42 10.8 46.7 0 0.0191 0.0111 1.06 test.phys eIoni + 0 -41.9 10.6 46.4 0.278 0 0 0 test.phys initStep + 1 -42.1 10.8 46.9 0.0191 0.259 1.05 1.05 test.phys eIoni + 2 -42.1 10.8 46.9 0 0.0191 0.0111 1.06 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -1021,9 +1059,9 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 0 0 -500 1 0 0 0 World initStep 1 0 0 0 1 0 500 500 test.phys Transportation 2 0 0 3.62 0.777 0 3.62 504 test.phys biasWrapper(compt) - 3 6.05 -67.5 114 0.507 0 130 633 test.phys biasWrapper(compt) - 4 33.8 -57.8 160 0.415 0 54.5 688 test.phys biasWrapper(compt) - 5 46.1 -78.4 200 0.415 0 46.4 734 World Transportation + 3 6.14 -68.5 116 0.507 0 132 635 test.phys biasWrapper(compt) + 4 33.9 -58.8 162 0.415 0 54.5 690 test.phys biasWrapper(compt) + 5 45.7 -78.6 200 0.415 0 44.6 734 World Transportation 6 3.07e+03 -5.16e+03 1e+04 0.415 0 1.14e+04 1.22e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -1031,16 +1069,16 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 33.8 -57.8 160 0.092 0 0 0 test.phys initStep - 1 33.9 -57.7 160 0 0.092 0.173 0.173 test.phys eIoni + 0 33.9 -58.8 162 0.092 0 0 0 test.phys initStep + 1 33.9 -58.7 162 0 0.092 0.173 0.173 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.05 -67.5 114 0.27 0 0 0 test.phys initStep - 1 5.86 -67.9 115 0 0.27 1 1 test.phys eIoni + 0 6.14 -68.5 116 0.27 0 0 0 test.phys initStep + 1 5.94 -68.9 116 0 0.27 1 1 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -1048,7 +1086,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 3.62 0.223 0 0 0 test.phys initStep - 1 -0.026 0.29 3.86 0 0.223 0.745 0.745 test.phys eIoni + 1 -0.026 0.29 3.86 0 0.223 0.746 0.746 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -1058,16 +1096,16 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 0 0 -500 1 0 0 0 World initStep 1 0 0 0 1 0 500 500 test.phys Transportation 2 0 0 22 0.942 0 22 522 test.phys biasWrapper(compt) - 3 4.16 -9.92 63.7 0.591 0 43.1 565 test.phys biasWrapper(compt) - 4 -0.412 -48.9 86.8 0.462 0 45.5 611 test.phys biasWrapper(compt) - 5 27.5 -195 69.2 0.169 0 150 761 test.phys biasWrapper(compt) - 6 26.5 -188 73.6 0.132 0 8.64 769 test.phys biasWrapper(compt) - 7 169 -118 36.9 0.0968 0 163 932 test.phys biasWrapper(compt) - 8 -22.7 46.8 64.7 0.0715 0 254 1.19e+03 test.phys biasWrapper(compt) - 9 12.5 39.8 57.7 0.0562 0 36.6 1.22e+03 test.phys biasWrapper(compt) - 10 -61.3 33 62.8 0.0535 0 74.3 1.3e+03 test.phys biasWrapper(compt) - 11 -94.5 52.1 26.9 0.0534 0 52.5 1.35e+03 test.phys biasWrapper(compt) - 12 -109 63.3 1.07e-14 0.0534 0 32.7 1.38e+03 World Transportation + 3 4.2 -10 64.1 0.591 0 43.5 565 test.phys biasWrapper(compt) + 4 -0.386 -49.1 87.2 0.462 0 45.7 611 test.phys biasWrapper(compt) + 5 27.6 -196 69.7 0.169 0 150 761 test.phys biasWrapper(compt) + 6 26.5 -188 74.1 0.132 0 8.64 770 test.phys biasWrapper(compt) + 7 169 -118 37.4 0.0968 0 163 933 test.phys biasWrapper(compt) + 8 -22.7 46.6 65.2 0.0715 0 254 1.19e+03 test.phys biasWrapper(compt) + 9 12.5 39.6 58.2 0.0562 0 36.6 1.22e+03 test.phys biasWrapper(compt) + 10 -61.3 32.8 63.3 0.0535 0 74.3 1.3e+03 test.phys biasWrapper(compt) + 11 -94.5 51.9 27.4 0.0534 0 52.5 1.35e+03 test.phys biasWrapper(compt) + 12 -110 63.3 7.11e-15 0.0534 0 33.3 1.38e+03 World Transportation 13 -5.6e+03 4.22e+03 -1e+04 0.0534 0 1.21e+04 1.35e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -1075,74 +1113,74 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -94.5 52.1 26.9 0.000147 0 0 0 test.phys initStep - 1 -94.5 52.1 26.9 0 0.000147 1.07e-05 1.07e-05 test.phys eIoni + 0 -94.5 51.9 27.4 0.000147 0 0 0 test.phys initStep + 1 -94.5 51.9 27.4 0 0.000147 1.07e-05 1.07e-05 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 10, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -61.3 33 62.8 0.00266 0 0 0 test.phys initStep - 1 -61.3 33 62.8 0 0.00266 0.000375 0.000375 test.phys eIoni + 0 -61.3 32.8 63.3 0.00266 0 0 0 test.phys initStep + 1 -61.3 32.8 63.3 0 0.00266 0.000375 0.000375 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 9, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 12.5 39.8 57.7 0.0153 0 0 0 test.phys initStep - 1 12.5 39.8 57.7 0 0.0153 0.00753 0.00753 test.phys eIoni + 0 12.5 39.6 58.2 0.0153 0 0 0 test.phys initStep + 1 12.5 39.6 58.2 0 0.0153 0.00753 0.00753 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 8, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -22.7 46.8 64.7 0.0253 0 0 0 test.phys initStep - 1 -22.7 46.8 64.7 0 0.0253 0.0183 0.0183 test.phys eIoni + 0 -22.7 46.6 65.2 0.0253 0 0 0 test.phys initStep + 1 -22.7 46.7 65.2 0 0.0253 0.0183 0.0183 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 169 -118 36.9 0.0351 0 0 0 test.phys initStep - 1 169 -118 36.9 0 0.0351 0.0325 0.0325 test.phys eIoni + 0 169 -118 37.4 0.0351 0 0 0 test.phys initStep + 1 169 -118 37.4 0 0.0351 0.0325 0.0325 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 26.5 -188 73.6 0.037 0 0 0 test.phys initStep - 1 26.5 -188 73.6 0 0.037 0.0357 0.0357 test.phys eIoni + 0 26.5 -188 74.1 0.037 0 0 0 test.phys initStep + 1 26.5 -188 74.1 0 0.037 0.0357 0.0357 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 27.5 -195 69.2 0.293 0 0 0 test.phys initStep - 1 27.6 -196 69.1 0.0314 0.261 1.12 1.12 test.phys eIoni - 2 27.6 -196 69.1 0 0.0314 0.0266 1.15 test.phys eIoni + 0 27.6 -196 69.7 0.293 0 0 0 test.phys initStep + 1 27.7 -196 69.6 0.0314 0.261 1.12 1.12 test.phys eIoni + 2 27.7 -196 69.6 0 0.0314 0.0266 1.15 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.412 -48.9 86.8 0.13 0 0 0 test.phys initStep - 1 -0.47 -48.9 86.9 0 0.13 0.309 0.309 test.phys eIoni + 0 -0.386 -49.1 87.2 0.13 0 0 0 test.phys initStep + 1 -0.444 -49.1 87.4 0 0.13 0.309 0.309 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 4.16 -9.92 63.7 0.35 0 0 0 test.phys initStep - 1 4.32 -9.61 64.3 0.112 0.239 1.36 1.36 test.phys eIoni - 2 4.35 -9.57 64.4 0 0.112 0.241 1.6 test.phys eIoni + 0 4.2 -10 64.1 0.35 0 0 0 test.phys initStep + 1 4.36 -9.7 64.7 0.112 0.239 1.36 1.36 test.phys eIoni + 2 4.4 -9.66 64.9 0 0.112 0.241 1.6 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -1269,8 +1307,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 71 0.757 0 0 0 test.phys initStep 1 0.135 0.266 72.8 0.489 0.268 2.28 2.28 test.phys eIoni - 2 0.217 1.03 73.6 0.26 0.228 1.74 4.02 test.phys eIoni - 3 0.507 0.734 73.9 0 0.26 0.946 4.97 test.phys eIoni + 2 0.217 1.03 73.6 0.261 0.228 1.74 4.02 test.phys eIoni + 3 0.507 0.734 73.9 0 0.261 0.948 4.97 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -1280,11 +1318,11 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 0 0 -500 1 0 0 0 World initStep 1 0 0 0 1 0 500 500 test.phys Transportation 2 0 0 46.9 0.732 0 46.9 547 test.phys biasWrapper(compt) - 3 4.43 1.65 53.5 0.45 0 8.12 555 test.phys biasWrapper(compt) - 4 9.95 7.12 53.8 0.319 0 7.77 563 test.phys biasWrapper(compt) - 5 15.4 7.06 49.7 0.16 0 6.81 570 test.phys biasWrapper(compt) - 6 11.1 14.9 53.7 0.105 0 9.81 579 test.phys biasWrapper(compt) - 7 88 3.14 0 0.105 0 94.5 674 World Transportation + 3 4.49 1.67 53.6 0.45 0 8.22 555 test.phys biasWrapper(compt) + 4 10 7.14 53.9 0.319 0 7.77 563 test.phys biasWrapper(compt) + 5 15.4 7.08 49.8 0.16 0 6.82 570 test.phys biasWrapper(compt) + 6 11.2 15 53.8 0.105 0 9.81 580 test.phys biasWrapper(compt) + 7 88.2 3.14 0 0.105 0 94.7 674 World Transportation 8 1e+04 -1.52e+03 -6.92e+03 0.105 0 1.22e+04 1.29e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -1292,32 +1330,32 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 11.1 14.9 53.7 0.0551 0 0 0 test.phys initStep - 1 11.1 15 53.7 0 0.0551 0.0716 0.0716 test.phys eIoni + 0 11.2 15 53.8 0.0551 0 0 0 test.phys initStep + 1 11.2 15 53.8 0 0.0551 0.0716 0.0716 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 15.4 7.06 49.7 0.16 0 0 0 test.phys initStep - 1 15.5 6.99 49.6 0 0.16 0.435 0.435 test.phys eIoni + 0 15.4 7.08 49.8 0.16 0 0 0 test.phys initStep + 1 15.6 7.01 49.7 0 0.16 0.435 0.435 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 9.95 7.12 53.8 0.131 0 0 0 test.phys initStep - 1 9.97 7.25 53.9 0 0.131 0.315 0.315 test.phys eIoni + 0 10 7.14 53.9 0.131 0 0 0 test.phys initStep + 1 10 7.27 54 0 0.131 0.315 0.315 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 4.43 1.65 53.5 0.281 0 0 0 test.phys initStep - 1 4.51 1.5 54 0 0.281 1.06 1.06 test.phys eIoni + 0 4.49 1.67 53.6 0.281 0 0 0 test.phys initStep + 1 4.56 1.52 54.1 0 0.281 1.06 1.06 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -1354,7 +1392,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 102 0.495 0 0 0 test.phys initStep 1 -0.473 0.358 103 0.24 0.255 1.76 1.76 test.phys eIoni - 2 -0.868 0.38 103 0 0.24 0.834 2.59 test.phys eIoni + 2 -0.869 0.38 103 0 0.24 0.834 2.59 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -1364,9 +1402,9 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 0 0 -500 1 0 0 0 World initStep 1 0 0 0 1 0 500 500 test.phys Transportation 2 0 0 102 0.897 0 102 602 test.phys biasWrapper(compt) - 3 -4.91 -22.4 166 0.701 0 68.1 670 test.phys biasWrapper(compt) - 4 -2.9 -24.8 169 0.469 0 4.7 674 test.phys biasWrapper(compt) - 5 -20.3 -46.5 200 0.469 0 41.4 716 World Transportation + 3 -4.98 -22.7 167 0.701 0 69 671 test.phys biasWrapper(compt) + 4 -2.95 -25.1 170 0.469 0 4.75 675 test.phys biasWrapper(compt) + 5 -19.8 -46.2 200 0.469 0 40.2 716 World Transportation 6 -5.58e+03 -6.97e+03 1e+04 0.469 0 1.32e+04 1.39e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -1374,16 +1412,16 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -2.9 -24.8 169 0.232 0 0 0 test.phys initStep - 1 -2.53 -24.9 169 0 0.232 0.789 0.789 test.phys eIoni + 0 -2.95 -25.1 170 0.232 0 0 0 test.phys initStep + 1 -2.58 -25.2 170 0 0.232 0.789 0.789 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.91 -22.4 166 0.196 0 0 0 test.phys initStep - 1 -5.14 -22.4 166 0 0.196 0.609 0.609 test.phys eIoni + 0 -4.98 -22.7 167 0.196 0 0 0 test.phys initStep + 1 -5.21 -22.7 167 0 0.196 0.609 0.609 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -1392,6 +1430,9 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 102 0.103 0 0 0 test.phys initStep 1 0.0198 0.0904 102 0 0.103 0.209 0.209 test.phys eIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -1408,297 +1449,306 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 18.8 28.9 0 0 0 test.phys initStep - 1 2.43 -2.42 54.7 24.3 4.35 36.2 36.2 test.phys eIoni - 2 2.9 -2.67 60.1 23.6 0.743 5.41 41.7 test.phys eBrem - 3 5.26 -2.5 71.8 22.1 1.36 11.9 53.6 test.phys eBrem - 4 6.16 -2.34 78.2 20.6 0.893 6.56 60.1 test.phys eIoni - 5 7.14 -2.29 84.5 19.7 0.677 6.31 66.4 test.phys eBrem - 6 8.88 -1.89 98.9 17.7 1.94 14.6 81 test.phys eBrem - 7 9.2 -1.71 101 0 0.247 2.1 83.1 test.phys annihil + 1 2.47 -2.47 55.1 24.2 4.4 36.7 36.7 test.phys eIoni + 2 2.92 -2.7 60.1 23.6 0.68 4.96 41.6 test.phys eBrem + 3 5.29 -2.57 71.7 22.1 1.36 11.9 53.6 test.phys eBrem + 4 6.28 -2.4 79 20.5 0.994 7.3 60.9 test.phys eIoni + 5 7.14 -2.35 84.4 19.7 0.592 5.56 66.4 test.phys eBrem + 6 8.83 -1.85 98.9 17.7 1.95 14.6 81 test.phys eBrem + 7 9.14 -1.66 101 0 0.249 2.12 83.1 test.phys annihil ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 9.2 -1.71 101 13.6 0 0 0 test.phys initStep - 1 11.6 10.6 200 13.6 0 99.8 99.8 World Transportation - 2 253 1.23e+03 1e+04 13.6 0 9.88e+03 9.98e+03 OutOfWorld Transportation + 0 9.14 -1.66 101 13.6 0 0 0 test.phys initStep + 1 10.7 10.7 200 13.6 0 99.8 99.8 World Transportation + 2 170 1.24e+03 1e+04 13.6 0 9.88e+03 9.98e+03 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 9.2 -1.71 101 4.88 0 0 0 test.phys initStep - 1 63.7 17.2 186 0 0 103 103 test.phys biasWrapper(conv) + 0 9.14 -1.66 101 4.88 0 0 0 test.phys initStep + 1 62.5 20.4 187 0 0 103 103 test.phys biasWrapper(conv) ********************************************************************************************************* * G4Track Information: Particle = e+, Track ID = 12, Parent ID = 9 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 63.7 17.2 186 1.53 0 0 0 test.phys initStep - 1 62 14.6 186 1.12 0.412 3.63 3.63 test.phys eIoni - 2 60 13 186 0.693 0.428 2.93 6.56 test.phys eIoni - 3 58.6 12.2 186 0.413 0.28 2.17 8.73 test.phys eIoni - 4 58 12.2 186 0.289 0.12 0.82 9.55 test.phys eBrem - 5 57.6 12.6 186 0.0801 0.209 1.08 10.6 test.phys eIoni - 6 57.5 12.5 186 0 0.0801 0.129 10.8 test.phys eIoni - 7 57.5 12.5 186 0 0 0 10.8 test.phys annihil + 0 62.5 20.4 187 1.53 0 0 0 test.phys initStep + 1 60.9 17.7 186 1.12 0.411 3.63 3.63 test.phys eIoni + 2 59 16 186 0.692 0.427 2.93 6.55 test.phys eIoni + 3 57.7 15.1 186 0.412 0.28 2.16 8.72 test.phys eIoni + 4 57 15.1 186 0.287 0.122 0.83 9.55 test.phys eBrem + 5 56.6 15.4 186 0.0775 0.209 1.07 10.6 test.phys eIoni + 6 56.5 15.4 186 0 0.0775 0.122 10.7 test.phys eIoni + 7 56.5 15.4 186 0 0 0 10.7 test.phys annihil ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 12 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 57.5 12.5 186 0.511 0 0 0 test.phys initStep - 1 70 -6.43 161 0.209 0 33.8 33.8 test.phys biasWrapper(compt) - 2 76 -0.677 165 0.135 0 9.3 43.1 test.phys biasWrapper(compt) - 3 76.2 -7.46 168 0.127 0 7.58 50.6 test.phys biasWrapper(compt) - 4 90.8 -191 120 0.119 0 190 241 test.phys biasWrapper(compt) - 5 90.6 -191 120 0.0913 0 0.483 241 test.phys biasWrapper(compt) - 6 89.3 -189 120 0.0784 0 2.16 243 test.phys biasWrapper(compt) - 7 43.9 -212 85.3 0.077 0 61.7 305 test.phys biasWrapper(compt) - 8 -83.3 -258 67.6 0.0728 0 136 441 test.phys biasWrapper(compt) - 9 -105 -326 63.3 0.0583 0 71.9 513 test.phys biasWrapper(compt) - 10 -69.7 -247 151 0.0549 0 124 637 test.phys biasWrapper(compt) - 11 -87.4 -216 154 0.0541 0 35.3 672 test.phys biasWrapper(compt) - 12 -89.8 -138 173 0.0539 0 80.3 753 test.phys biasWrapper(compt) - 13 -98 -115 177 0.0532 0 25 778 test.phys biasWrapper(compt) - 14 -105 -78.3 166 0 0.000405 38.9 817 test.phys biasWrapper(phot) + 0 56.5 15.4 186 0.511 0 0 0 test.phys initStep + 1 69 -3.56 161 0.209 0 33.8 33.8 test.phys biasWrapper(compt) + 2 75 2.19 165 0.135 0 9.3 43.1 test.phys biasWrapper(compt) + 3 75.2 -4.59 168 0.127 0 7.58 50.6 test.phys biasWrapper(compt) + 4 89.8 -188 121 0.119 0 190 241 test.phys biasWrapper(compt) + 5 89.6 -188 120 0.0913 0 0.483 241 test.phys biasWrapper(compt) + 6 88.3 -186 121 0.0784 0 2.16 243 test.phys biasWrapper(compt) + 7 42.9 -209 85.4 0.077 0 61.7 305 test.phys biasWrapper(compt) + 8 -84.3 -255 67.7 0.0728 0 136 441 test.phys biasWrapper(compt) + 9 -106 -323 63.5 0.0583 0 71.9 513 test.phys biasWrapper(compt) + 10 -70.7 -244 152 0.0549 0 124 637 test.phys biasWrapper(compt) + 11 -88.4 -213 154 0.0541 0 35.3 672 test.phys biasWrapper(compt) + 12 -90.8 -135 173 0.0539 0 80.3 753 test.phys biasWrapper(compt) + 13 -99 -112 177 0.0532 0 25 778 test.phys biasWrapper(compt) + 14 -106 -75.5 166 0 0.000405 38.9 817 test.phys biasWrapper(phot) ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 29, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -105 -78.3 166 0.0528 0 0 0 test.phys initStep - 1 -105 -78.3 166 0 0.0528 0.0665 0.0665 test.phys eIoni + 0 -106 -75.5 166 0.0528 0 0 0 test.phys initStep + 1 -106 -75.5 166 0 0.0528 0.0665 0.0665 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 28, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -98 -115 177 0.000604 0 0 0 test.phys initStep - 1 -98 -115 177 0 0.000604 4.22e-05 4.22e-05 test.phys eIoni + 0 -99 -112 177 0.000604 0 0 0 test.phys initStep + 1 -99 -112 177 0 0.000604 4.22e-05 4.22e-05 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 27, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -89.8 -138 173 0.000272 0 0 0 test.phys initStep - 1 -89.8 -138 173 0 0.000272 1.72e-05 1.72e-05 test.phys eIoni + 0 -90.8 -135 173 0.000272 0 0 0 test.phys initStep + 1 -90.8 -135 173 0 0.000272 1.72e-05 1.72e-05 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 26, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -87.4 -216 154 0.000775 0 0 0 test.phys initStep - 1 -87.4 -216 154 0 0.000775 5.85e-05 5.85e-05 test.phys eIoni + 0 -88.4 -213 154 0.000775 0 0 0 test.phys initStep + 1 -88.4 -213 154 0 0.000775 5.85e-05 5.85e-05 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 25, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -69.7 -247 151 0.00344 0 0 0 test.phys initStep - 1 -69.7 -247 151 0 0.00344 0.000574 0.000574 test.phys eIoni + 0 -70.7 -244 152 0.00344 0 0 0 test.phys initStep + 1 -70.7 -244 152 0 0.00344 0.000574 0.000574 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 24, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -105 -326 63.3 0.0145 0 0 0 test.phys initStep - 1 -105 -326 63.3 0 0.0145 0.00679 0.00679 test.phys eIoni + 0 -106 -323 63.5 0.0145 0 0 0 test.phys initStep + 1 -106 -323 63.5 0 0.0145 0.00679 0.00679 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 23, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -83.3 -258 67.6 0.00425 0 0 0 test.phys initStep - 1 -83.3 -258 67.6 0 0.00425 0.000815 0.000815 test.phys eIoni + 0 -84.3 -255 67.7 0.00425 0 0 0 test.phys initStep + 1 -84.3 -255 67.7 0 0.00425 0.000815 0.000815 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 22, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 43.9 -212 85.3 0.00137 0 0 0 test.phys initStep - 1 43.9 -212 85.3 0 0.00137 0.000133 0.000133 test.phys eIoni + 0 42.9 -209 85.4 0.00137 0 0 0 test.phys initStep + 1 42.9 -209 85.4 0 0.00137 0.000133 0.000133 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 21, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 89.3 -189 120 0.0128 0 0 0 test.phys initStep - 1 89.3 -189 120 0 0.0128 0.00551 0.00551 test.phys eIoni + 0 88.3 -186 121 0.0128 0 0 0 test.phys initStep + 1 88.3 -186 121 0 0.0128 0.00551 0.00551 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 20, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 90.6 -191 120 0.0277 0 0 0 test.phys initStep - 1 90.6 -191 120 0 0.0277 0.0214 0.0214 test.phys eIoni + 0 89.6 -188 120 0.0277 0 0 0 test.phys initStep + 1 89.6 -188 120 0 0.0277 0.0214 0.0214 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 19, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 90.8 -191 120 0.00799 0 0 0 test.phys initStep - 1 90.8 -191 120 0 0.00799 0.00241 0.00241 test.phys eIoni + 0 89.8 -188 121 0.00799 0 0 0 test.phys initStep + 1 89.8 -188 121 0 0.00799 0.00241 0.00241 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 18, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 76.2 -7.46 168 0.00828 0 0 0 test.phys initStep - 1 76.2 -7.46 168 0 0.00828 0.00256 0.00256 test.phys eIoni + 0 75.2 -4.59 168 0.00828 0 0 0 test.phys initStep + 1 75.2 -4.59 168 0 0.00828 0.00256 0.00256 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 17, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 76 -0.677 165 0.0736 0 0 0 test.phys initStep - 1 76 -0.626 165 0 0.0736 0.118 0.118 test.phys eIoni + 0 75 2.19 165 0.0736 0 0 0 test.phys initStep + 1 75 2.25 165 0 0.0736 0.118 0.118 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 16, Parent ID = 15 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 70 -6.43 161 0.302 0 0 0 test.phys initStep - 1 70.1 -6.83 160 0 0.302 1.16 1.16 test.phys eIoni + 0 69 -3.56 161 0.302 0 0 0 test.phys initStep + 1 69.1 -3.96 160 0 0.302 1.16 1.16 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 12 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 57.5 12.5 186 0.511 0 0 0 test.phys initStep - 1 53.1 19.2 194 0.216 0 11.9 11.9 test.phys biasWrapper(compt) - 2 103 46.4 168 0.178 0 62.8 74.7 test.phys biasWrapper(compt) - 3 137 82.8 200 0.178 0 59.5 134 World Transportation - 4 9.46e+03 1e+04 9.02e+03 0.178 0 1.62e+04 1.64e+04 OutOfWorld Transportation + 0 56.5 15.4 186 0.511 0 0 0 test.phys initStep + 1 52.1 22.1 195 0.216 0 11.9 11.9 test.phys biasWrapper(compt) + 2 102 49.3 168 0.178 0 62.8 74.7 test.phys biasWrapper(compt) + 3 136 85.6 200 0.178 0 59.3 134 World Transportation + 4 9.45e+03 1e+04 9.02e+03 0.178 0 1.62e+04 1.63e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 31, Parent ID = 14 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 103 46.4 168 0.0383 0 0 0 test.phys initStep - 1 103 46.4 168 0 0.0383 0.0379 0.0379 test.phys eIoni + 0 102 49.3 168 0.0383 0 0 0 test.phys initStep + 1 102 49.3 168 0 0.0383 0.0379 0.0379 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 30, Parent ID = 14 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 53.1 19.2 194 0.295 0 0 0 test.phys initStep - 1 52.8 19.4 195 0.0908 0.204 1.13 1.13 test.phys eIoni - 2 52.8 19.4 195 0 0.0908 0.17 1.3 test.phys eIoni + 0 52.1 22.1 195 0.295 0 0 0 test.phys initStep + 1 51.8 22.2 195 0.0908 0.204 1.13 1.13 test.phys eIoni + 2 51.8 22.3 195 0 0.0908 0.17 1.3 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 12 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 58 12.2 186 0.00356 0 0 0 test.phys initStep - 1 58 12.3 186 0 0.000405 0.0555 0.0555 test.phys biasWrapper(phot) + 0 57 15.1 186 0.00355 0 0 0 test.phys initStep + 1 57 15.1 186 0 0.000405 0.0553 0.0553 test.phys biasWrapper(phot) ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 32, Parent ID = 13 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 58 12.3 186 0.00315 0 0 0 test.phys initStep - 1 58 12.3 186 0 0.00315 0.000496 0.000496 test.phys eIoni + 0 57 15.1 186 0.00315 0 0 0 test.phys initStep + 1 57 15.1 186 0 0.00315 0.000494 0.000494 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 11, Parent ID = 9 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 63.7 17.2 186 2.33 0 0 0 test.phys initStep - 1 65.4 20.5 189 1.66 0.666 4.92 4.92 test.phys eIoni - 2 64.9 24 190 1.2 0.466 3.82 8.74 test.phys eIoni - 3 64.2 26.2 189 0.889 0.306 3.04 11.8 test.phys eIoni - 4 63.3 27.8 190 0.6 0.289 2.52 14.3 test.phys eIoni - 5 63.4 29 190 0.349 0.251 1.98 16.3 test.phys eIoni - 6 64 29.1 191 0.129 0.22 1.35 17.6 test.phys eIoni - 7 64 28.9 191 0 0.129 0.308 17.9 test.phys eIoni + 0 62.5 20.4 187 2.32 0 0 0 test.phys initStep + 1 65.1 23 189 1.7 0.628 4.92 4.92 test.phys eIoni + 2 64.9 25.9 191 1.3 0.392 3.88 8.79 test.phys eIoni + 3 64.6 27.7 193 0.958 0.346 3.22 12 test.phys eIoni + 4 64.6 29.2 195 0.679 0.279 2.64 14.7 test.phys eIoni + 5 64.2 30.5 195 0.418 0.261 2.14 16.8 test.phys eIoni + 6 64.5 31.2 196 0.184 0.234 1.56 18.4 test.phys eIoni + 7 64.7 31.1 196 0 0.184 0.546 18.9 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 8.88 -1.89 98.9 0.00999 0 0 0 test.phys initStep - 1 10 -1.46 104 0 0.000405 4.92 4.92 test.phys biasWrapper(phot) + 0 8.83 -1.85 98.9 0.00998 0 0 0 test.phys initStep + 1 9.9 -1.38 104 0 0.000405 4.83 4.83 test.phys biasWrapper(phot) ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 33, Parent ID = 8 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 10 -1.46 104 0.00959 0 0 0 test.phys initStep - 1 10 -1.46 104 0 0.00959 0.00331 0.00331 test.phys eIoni + 0 9.9 -1.38 104 0.00958 0 0 0 test.phys initStep + 1 9.9 -1.38 104 0 0.00958 0.0033 0.0033 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 7.14 -2.29 84.5 0.232 0 0 0 test.phys initStep - 1 20.4 -7.04 166 0.185 0 83.2 83.2 test.phys biasWrapper(compt) - 2 -1.45 38.1 200 0.185 0 60.4 144 World Transportation - 3 -4.83e+03 1e+04 7.59e+03 0.185 0 1.33e+04 1.35e+04 OutOfWorld Transportation + 0 7.14 -2.35 84.4 0.232 0 0 0 test.phys initStep + 1 11.8 -3.79 113 0.141 0 29.2 29.2 test.phys biasWrapper(compt) + 2 -52.3 240 24.3 0.137 0 268 297 test.phys biasWrapper(compt) + 3 -66.7 262 0 0.137 0 35.5 332 World Transportation + 4 -5.99e+03 9.06e+03 -1e+04 0.137 0 1.46e+04 1.49e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 35, Parent ID = 7 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -52.3 240 24.3 0.00469 0 0 0 test.phys initStep + 1 -52.3 240 24.3 0 0.00469 0.000964 0.000964 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 34, Parent ID = 7 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 20.4 -7.04 166 0.0465 0 0 0 test.phys initStep - 1 20.5 -7.06 166 0 0.0465 0.0532 0.0532 test.phys eIoni + 0 11.8 -3.79 113 0.0903 0 0 0 test.phys initStep + 1 11.8 -3.83 113 0 0.0903 0.168 0.168 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.16 -2.34 78.2 0.609 0 0 0 test.phys initStep - 1 6.26 -3.44 79.2 0.356 0.252 2 2 test.phys eIoni - 2 6.44 -4.14 78.9 0.114 0.242 1.38 3.38 test.phys eIoni - 3 6.55 -4.21 78.9 0 0.114 0.25 3.63 test.phys eIoni + 0 6.28 -2.4 79 0.615 0 0 0 test.phys initStep + 1 6.38 -3.51 79.9 0.333 0.282 2.01 2.01 test.phys eIoni + 2 6.12 -4.02 80.3 0.123 0.211 1.29 3.31 test.phys eIoni + 3 6.19 -4.08 80.4 0 0.123 0.281 3.59 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 5.26 -2.5 71.8 0.11 0 0 0 test.phys initStep - 1 26.2 0.233 200 0.11 0 130 130 World Transportation - 2 1.63e+03 209 1e+04 0.11 0 9.93e+03 1.01e+04 OutOfWorld Transportation + 0 5.29 -2.57 71.7 0.11 0 0 0 test.phys initStep + 1 26.4 -0.218 200 0.11 0 130 130 World Transportation + 2 1.64e+03 179 1e+04 0.11 0 9.93e+03 1.01e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 2.43 -2.42 54.7 0.301 0 0 0 test.phys initStep - 1 1.97 -2.24 55.1 0.0558 0.245 1.16 1.16 test.phys eIoni - 2 1.96 -2.22 55.1 0 0.0558 0.0731 1.23 test.phys eIoni + 0 2.47 -2.47 55.1 0.304 0 0 0 test.phys initStep + 1 2.01 -2.28 55.5 0.0814 0.223 1.17 1.17 test.phys eIoni + 2 2.01 -2.22 55.5 0 0.0814 0.141 1.31 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -1706,72 +1756,156 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 18.8 70 0 0 0 test.phys initStep - 1 0.562 -0.242 37.9 55.7 2.45 19.1 19.1 test.phys eBrem - 2 1.67 -0.804 58.5 53.4 2.38 20.6 39.7 test.phys eBrem - 3 1.9 -0.937 63.1 51.9 0.753 4.62 44.4 test.phys eIoni - 4 1.77 -2.38 91.3 48.1 3.54 28.3 72.7 test.phys eIoni - 5 13.1 -16.6 145 40.2 7.89 56.9 130 test.phys eBrem - 6 24.5 -31.1 200 32.8 7.45 58.4 188 World Transportation - 7 1.38e+03 -3.59e+03 1e+04 32.8 3.51e-22 1.05e+04 1.07e+04 OutOfWorld Transportation + 1 -0.348 -0.328 38.8 66.7 2.92 20 20 test.phys eIoni + 2 -0.287 -0.442 41.3 65.9 0.372 2.49 22.5 test.phys eIoni + 3 -0.138 -1.06 61.1 62.4 2.84 19.9 42.4 test.phys eBrem + 4 -0.287 -1.4 70.2 28.7 1.12 9.03 51.4 test.phys eBrem + 5 -0.264 -2.07 83.3 26.8 1.89 13.2 64.6 test.phys eBrem + 6 -3.11 -2.33 106 24.1 2.64 23.4 88 test.phys eBrem + 7 -6.33 -0.605 133 20.6 3.14 26.8 115 test.phys eIoni + 8 -12.2 7.78 165 16.1 4.49 34.2 149 test.phys eIoni + 9 -15.3 9.84 173 15.2 0.948 8.61 158 test.phys eBrem + 10 -22.3 19 196 12.2 3.04 25.6 183 test.phys eIoni + 11 -24 20.3 200 11.6 0.549 4.93 188 World Transportation + 12 -3.37e+03 4.12e+03 1e+04 11.6 3.38e-22 1.11e+04 1.13e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 43, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -15.3 9.84 173 0.00348 0 0 0 test.phys initStep + 1 -15.4 9.91 173 0 0.000405 0.3 0.3 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 44, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -15.4 9.91 173 0.00307 0 0 0 test.phys initStep + 1 -15.4 9.91 173 0 0.00307 0.000475 0.000475 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 42, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.33 -0.605 133 0.305 0 0 0 test.phys initStep + 1 -6.35 -0.734 133 0.2 0.0226 0.171 0.171 test.phys eBrem + 2 -6.36 -0.995 133 0 0.2 0.628 0.799 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 45, Parent ID = 42 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.35 -0.734 133 0.0824 0 0 0 test.phys initStep + 1 -30.1 -15.2 200 0.0824 0 72.6 72.6 World Transportation + 2 -3.5e+03 -2.14e+03 1e+04 0.0824 0 1.06e+04 1.07e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 41, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -3.11 -2.33 106 0.0364 0 0 0 test.phys initStep + 1 -6.7 -2.99 153 0.036 0 46.4 46.4 test.phys biasWrapper(compt) + 2 -17.8 -4.98 167 0 0.000405 18 64.4 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 47, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -17.8 -4.98 167 0.0356 0 0 0 test.phys initStep + 1 -17.8 -4.96 167 0 0.0356 0.0332 0.0332 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.99 153 0.000451 0 0 0 test.phys initStep + 1 -6.7 -2.99 153 0 0.000451 2.95e-05 2.95e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 40, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.264 -2.07 83.3 0.00594 0 0 0 test.phys initStep + 1 -0.264 -2.08 83.3 0 0.000405 0.0127 0.0127 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.264 -2.08 83.3 0.00553 0 0 0 test.phys initStep + 1 -0.265 -2.08 83.3 0 0.00553 0.00128 0.00128 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 39, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 13.1 -16.6 145 0.00457 0 0 0 test.phys initStep - 1 13.1 -16.6 145 0 0.000405 0.0789 0.0789 test.phys biasWrapper(phot) + 0 -0.287 -1.4 70.2 32.6 0 0 0 test.phys initStep + 1 -4.47 5.63 200 32.6 0 130 130 World Transportation + 2 -320 536 1e+04 32.6 0 9.82e+03 9.95e+03 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 40, Parent ID = 39 +* G4Track Information: Particle = gamma, Track ID = 38, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 13.1 -16.6 145 0.00417 0 0 0 test.phys initStep - 1 13.1 -16.6 145 0 0.00417 0.00079 0.00079 test.phys eIoni + 0 -0.138 -1.06 61.1 0.623 0 0 0 test.phys initStep + 1 -0.364 -1.95 147 0.379 0 85.5 85.5 test.phys biasWrapper(compt) + 2 -0.236 -17.9 155 0.165 0 18 104 test.phys biasWrapper(compt) + 3 -43.8 40.5 150 0.119 0 73 177 test.phys biasWrapper(compt) + 4 -14 11.5 0 0.119 0 156 332 World Transportation + 5 1.97e+03 -1.92e+03 -1e+04 0.119 0 1.04e+04 1.07e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 38, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 38 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.77 -2.38 91.3 0.235 0 0 0 test.phys initStep - 1 1.88 -2.06 91.5 0 0.235 0.808 0.808 test.phys eIoni + 0 -43.8 40.5 150 0.0461 0 0 0 test.phys initStep + 1 -43.8 40.5 150 0 0.0461 0.0525 0.0525 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 50, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.236 -17.9 155 0.214 0 0 0 test.phys initStep + 1 -0.166 -18.2 155 0 0.214 0.697 0.697 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.364 -1.95 147 0.243 0 0 0 test.phys initStep + 1 -0.368 -1.69 147 0 0.243 0.853 0.853 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 37, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.9 -0.937 63.1 0.717 0 0 0 test.phys initStep - 1 2.96 -1.73 64.1 0.464 0.254 2.21 2.21 test.phys eIoni - 2 3.53 -1.91 65 0.176 0.288 1.68 3.89 test.phys eIoni - 3 3.62 -2.02 64.8 0 0.176 0.509 4.4 test.phys eIoni + 0 -0.287 -0.442 41.3 0.445 0 0 0 test.phys initStep + 1 -1.09 -0.757 41.9 0.0249 0.42 1.64 1.64 test.phys eIoni + 2 -1.09 -0.759 41.9 0 0.0249 0.0178 1.65 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 36, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 36, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.67 -0.804 58.5 0.00301 0 0 0 test.phys initStep - 1 1.68 -0.811 58.6 0 0.000405 0.179 0.179 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 36 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.68 -0.811 58.6 0.0026 0 0 0 test.phys initStep - 1 1.68 -0.811 58.6 0 0.0026 0.000362 0.000362 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 35, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.562 -0.242 37.9 11.8 0 0 0 test.phys initStep - 1 4.72 0.601 200 11.8 0 162 162 World Transportation - 2 256 51.5 1e+04 11.8 0 9.8e+03 9.97e+03 OutOfWorld Transportation + 0 -0.348 -0.328 38.8 0.431 0 0 0 test.phys initStep + 1 -0.82 0.341 39.4 0.152 0.279 1.6 1.6 test.phys eIoni + 2 -0.713 0.497 39.3 0 0.152 0.4 2 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -1780,771 +1914,449 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -500 100 0 0 0 World initStep 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 62.5 0 0 62.5 563 test.phys biasWrapper(conv) + 2 0 0 200 100 0 200 700 World Transportation + 3 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 19.4 0 0 19.4 519 test.phys biasWrapper(conv) ********************************************************************************************************* * G4Track Information: Particle = e+, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 62.5 38.6 0 0 0 test.phys initStep - 1 -0.204 0.0615 68.2 33.1 0.888 5.7 5.7 test.phys eBrem - 2 -1.39 2.6 96.6 28.6 3.69 28.6 34.3 test.phys eIoni - 3 -1.75 3.03 103 27.4 0.845 6.35 40.6 test.phys eBrem - 4 -1.87 2.11 123 24.5 2.82 20.6 61.2 test.phys eBrem - 5 -1.82 0.932 132 23.1 1.15 8.7 69.9 test.phys eIoni - 6 -1.12 -0.358 142 21.8 1.17 9.8 79.7 test.phys eBrem - 7 0.157 -2.55 153 19.5 1.57 11.5 91.2 test.phys eBrem - 8 1.65 -4.95 162 17.4 1.31 9.36 101 test.phys eIoni - 9 0.695 -16.8 188 13.5 3.81 29.1 130 test.phys eIoni - 10 -0.917 -20.9 200 12.2 1.38 12.8 143 World Transportation - 11 -819 -2.61e+03 1e+04 12.2 3.1e-22 1.02e+04 1.03e+04 OutOfWorld Transportation + 0 0 0 19.4 64 0 0 0 test.phys initStep + 1 0.151 -0.037 27.8 62.8 1.19 8.47 8.47 test.phys eBrem + 2 0.341 0.18 38.3 60.9 1.13 10.4 18.9 test.phys eBrem + 3 2.79 0.741 76.9 56 4.67 38.8 57.7 test.phys eBrem + 4 7.99 -0.916 123 35.7 5.32 46 104 test.phys eBrem + 5 8.92 -0.888 130 34.3 0.795 7.36 111 test.phys eIoni + 6 9.2 -0.829 132 32.7 0.173 1.78 113 test.phys eBrem + 7 11.2 0.0982 144 30.7 1.39 12.3 125 test.phys eIoni + 8 19.1 -3.41 187 24.5 5.5 44.3 169 test.phys eBrem + 9 28.3 -12.4 200 21.9 2.64 18.5 188 World Transportation + 10 7.97e+03 -9.31e+03 1e+04 21.9 5.05e-22 1.57e+04 1.59e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 3 +* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.65 -4.95 162 0.871 0 0 0 test.phys initStep - 1 0.867 -4.31 164 0.428 0.443 2.48 2.48 test.phys eIoni - 2 0.692 -3.37 164 0.165 0.263 1.59 4.07 test.phys eIoni - 3 0.464 -3.39 164 0 0.165 0.459 4.53 test.phys eIoni + 0 19.1 -3.41 187 0.66 0 0 0 test.phys initStep + 1 28.3 -12.8 200 0.66 0 18.6 18.6 World Transportation + 2 6.9e+03 -7.02e+03 1e+04 0.66 0 1.39e+04 1.39e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 3 +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.157 -2.55 153 0.727 0 0 0 test.phys initStep - 1 0.198 -11.1 200 0.727 0 47.9 47.9 World Transportation - 2 8.86 -1.78e+03 1e+04 0.727 0 9.96e+03 1e+04 OutOfWorld Transportation + 0 11.2 0.0982 144 0.598 0 0 0 test.phys initStep + 1 11.1 1.23 145 0.357 0.241 1.98 1.98 test.phys eIoni + 2 10.8 1.45 145 0.128 0.229 1.38 3.36 test.phys eIoni + 3 10.9 1.41 145 0 0.128 0.303 3.66 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.12 -0.358 142 0.0848 0 0 0 test.phys initStep - 1 2.67 -11.1 200 0.0848 0 59.4 59.4 World Transportation - 2 640 -1.82e+03 1e+04 0.0848 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 9.2 -0.829 132 1.47 0 0 0 test.phys initStep + 1 20.9 0.0575 200 1.47 0 69.4 69.4 World Transportation + 2 1.69e+03 127 1e+04 1.47 0 9.94e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 8, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.82 0.932 132 0.266 0 0 0 test.phys initStep - 1 -2.24 0.947 132 0 0.266 0.978 0.978 test.phys eIoni + 0 8.92 -0.888 130 0.627 0 0 0 test.phys initStep + 1 8.76 0.273 131 0.328 0.299 2.04 2.04 test.phys eIoni + 2 8.12 0.00282 131 0 0.328 1.27 3.31 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.87 2.11 123 0.0336 0 0 0 test.phys initStep - 1 -3.64 -5.81 178 0 0.000405 55.5 55.5 test.phys biasWrapper(phot) + 0 7.99 -0.916 123 14.9 0 0 0 test.phys initStep + 1 17.8 0.0094 180 0 0 58.4 58.4 test.phys biasWrapper(conv) + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 13, Parent ID = 7 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.8 0.0094 180 10.6 0 0 0 test.phys initStep + 1 23.3 1.57 197 8.42 2.19 18.4 18.4 test.phys eIoni + 2 25.5 2.13 200 8.04 0.381 3.64 22 World Transportation + 3 8.29e+03 1.01e+03 1e+04 8.04 3.78e-22 1.29e+04 1.29e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 12, Parent ID = 7 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.64 -5.81 178 0.0332 0 0 0 test.phys initStep - 1 -3.65 -5.8 178 0 0.0332 0.0294 0.0294 test.phys eIoni + 0 17.8 0.0094 180 3.26 0 0 0 test.phys initStep + 1 18.7 -0.267 186 2.33 0.934 6.45 6.45 test.phys eIoni + 2 20.6 1.58 190 1.69 0.636 4.92 11.4 test.phys eIoni + 3 17.6 2.67 191 1.23 0.46 3.87 15.2 test.phys eIoni + 4 15 2.29 191 0.815 0.418 3.11 18.4 test.phys eIoni + 5 13.6 3.53 191 0.324 0.49 2.38 20.7 test.phys eIoni + 6 13 3.71 191 0.103 0.221 1.26 22 test.phys eIoni + 7 13.1 3.76 191 0 0.103 0.212 22.2 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.75 3.03 103 0.43 0 0 0 test.phys initStep - 1 -5.28 5.96 200 0.43 0 97.2 97.2 World Transportation - 2 -361 301 1e+04 0.43 0 9.81e+03 9.91e+03 OutOfWorld Transportation + 0 2.79 0.741 76.9 0.321 0 0 0 test.phys initStep + 1 5.56 -2.1 115 0.171 0 38.6 38.6 test.phys biasWrapper(compt) + 2 -80.2 19.3 85.4 0.136 0 93.3 132 test.phys biasWrapper(compt) + 3 -147 27.4 189 0.11 0 124 256 test.phys biasWrapper(compt) + 4 -160 73.3 183 0.0804 0 47.9 304 test.phys biasWrapper(compt) + 5 -180 -16.9 132 0.0657 0 106 409 test.phys biasWrapper(compt) + 6 -152 -13 140 0.0549 0 29.6 439 test.phys biasWrapper(compt) + 7 -185 -84 136 0.0513 0 78.5 517 test.phys biasWrapper(compt) + 8 -192 -88.4 150 0.0505 0 16.4 534 test.phys biasWrapper(compt) + 9 -194 -95.7 156 0 0.000405 9.89 544 test.phys biasWrapper(phot) ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 +* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.39 2.6 96.6 0.77 0 0 0 test.phys initStep - 1 -0.161 2.16 97.8 0.525 0.245 2.3 2.3 test.phys eIoni - 2 0.48 2.49 98.8 0.288 0.237 1.83 4.13 test.phys eIoni - 3 0.377 1.93 98.9 0.0339 0.254 1.1 5.23 test.phys eIoni - 4 0.388 1.94 98.9 0 0.0339 0.0305 5.26 test.phys eIoni + 0 -194 -95.7 156 0.0501 0 0 0 test.phys initStep + 1 -194 -95.7 156 0 0.0501 0.0607 0.0607 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 3 +* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.204 0.0615 68.2 4.57 0 0 0 test.phys initStep - 1 -9.92 -0.394 200 4.57 0 132 132 World Transportation - 2 -732 -34.3 1e+04 4.57 0 9.83e+03 9.96e+03 OutOfWorld Transportation + 0 -192 -88.4 150 0.000781 0 0 0 test.phys initStep + 1 -192 -88.4 150 0 0.000781 5.91e-05 5.91e-05 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 62.5 60.4 0 0 0 test.phys initStep - 1 -0.22 0.186 74.6 58.5 1.47 12.1 12.1 test.phys eBrem - 2 -0.517 0.755 86.7 56.4 1.81 12.1 24.2 test.phys eIoni - 3 -0.695 1.2 95.6 55.3 1.09 8.97 33.2 test.phys eBrem - 4 7.3 10.1 181 44.4 10.7 86.7 120 test.phys eIoni - 5 7.66 10.3 183 43.8 0.363 2.23 122 test.phys eBrem - 6 7.75 10.3 184 43.5 0.0774 0.52 123 test.phys eIoni - 7 8.57 10.8 190 42.9 0.599 5.76 128 test.phys eBrem - 8 10 11.9 200 41.5 1.38 10.5 139 World Transportation - 9 1.43e+03 1.3e+03 1e+04 41.5 3.41e-22 9.98e+03 1.01e+04 OutOfWorld Transportation + 0 -185 -84 136 0.00352 0 0 0 test.phys initStep + 1 -185 -84 136 0 0.00352 0.000597 0.000597 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 19, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 8.57 10.8 190 0.0197 0 0 0 test.phys initStep - 1 8.99 11.1 193 0 0.000405 3.05 3.05 test.phys biasWrapper(phot) + 0 -152 -13 140 0.0108 0 0 0 test.phys initStep + 1 -152 -13 140 0 0.0108 0.00408 0.00408 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 19 +* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 8.99 11.1 193 0.0193 0 0 0 test.phys initStep - 1 8.99 11.1 193 0 0.0193 0.0113 0.0113 test.phys eIoni + 0 -180 -16.9 132 0.0148 0 0 0 test.phys initStep + 1 -180 -16.9 132 0 0.0148 0.00703 0.00703 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 7.75 10.3 184 0.223 0 0 0 test.phys initStep - 1 8.11 10.2 184 0 0.223 0.744 0.744 test.phys eIoni + 0 -160 73.3 183 0.0295 0 0 0 test.phys initStep + 1 -160 73.3 183 0 0.0295 0.0239 0.0239 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 7.66 10.3 183 0.259 0 0 0 test.phys initStep - 1 10.6 11.1 200 0.259 0 16.8 16.8 World Transportation - 2 1.77e+03 519 1e+04 0.259 0 9.97e+03 9.99e+03 OutOfWorld Transportation + 0 -147 27.4 189 0.0265 0 0 0 test.phys initStep + 1 -147 27.4 189 0 0.0265 0.0197 0.0197 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 7.3 10.1 181 0.252 0 0 0 test.phys initStep - 1 6.98 9.94 182 0 0.252 0.901 0.901 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.695 1.2 95.6 0.00423 0 0 0 test.phys initStep - 1 -0.684 1.26 96.2 0 0.000405 0.569 0.569 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 15 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.684 1.26 96.2 0.00382 0 0 0 test.phys initStep - 1 -0.684 1.26 96.2 0 0.00382 0.000683 0.000683 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.517 0.755 86.7 0.244 0 0 0 test.phys initStep - 1 -0.457 0.38 86.9 0 0.244 0.859 0.859 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.22 0.186 74.6 0.46 0 0 0 test.phys initStep - 1 -2.48 1.32 100 0.233 0 25.9 25.9 test.phys biasWrapper(compt) - 2 3.31 -25.6 99.8 0.228 0 27.5 53.4 test.phys biasWrapper(compt) - 3 80.7 -173 127 0.173 0 168 222 test.phys biasWrapper(compt) - 4 74.1 -179 130 0.106 0 9.66 231 test.phys biasWrapper(compt) - 5 92.5 -137 127 0.0851 0 46 277 test.phys biasWrapper(compt) - 6 176 -192 146 0.0748 0 102 379 test.phys biasWrapper(compt) - 7 281 -93.6 105 0.0721 0 149 528 test.phys biasWrapper(compt) - 8 281 -82.4 102 0.0595 0 11.6 540 test.phys biasWrapper(compt) - 9 314 -107 163 0.0543 0 73.8 614 test.phys biasWrapper(compt) - 10 313 -106 165 0.0543 0 2 616 test.phys biasWrapper(Rayl) - 11 291 -53 200 0.0543 0 67.4 683 World Transportation - 12 -3.99e+03 1e+04 6.95e+03 0.0543 0 1.28e+04 1.35e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 30, Parent ID = 13 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 314 -107 163 0.00522 0 0 0 test.phys initStep - 1 314 -107 163 0 0.00522 0.00116 0.00116 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 29, Parent ID = 13 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 281 -82.4 102 0.0127 0 0 0 test.phys initStep - 1 281 -82.4 102 0 0.0127 0.00538 0.00538 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 28, Parent ID = 13 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 281 -93.6 105 0.00262 0 0 0 test.phys initStep - 1 281 -93.6 105 0 0.00262 0.000365 0.000365 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 13 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 176 -192 146 0.0103 0 0 0 test.phys initStep - 1 176 -192 146 0 0.0103 0.00375 0.00375 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 13 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 92.5 -137 127 0.0207 0 0 0 test.phys initStep - 1 92.5 -137 127 0 0.0207 0.0127 0.0127 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 13 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 74.1 -179 130 0.0674 0 0 0 test.phys initStep - 1 74 -179 130 0 0.0674 0.102 0.102 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 13 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 80.7 -173 127 0.0546 0 0 0 test.phys initStep - 1 80.8 -173 127 0 0.0546 0.0704 0.0704 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 13 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 3.31 -25.6 99.8 0.00544 0 0 0 test.phys initStep - 1 3.31 -25.6 99.8 0 0.00544 0.00124 0.00124 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 13 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -2.48 1.32 100 0.227 0 0 0 test.phys initStep - 1 -2.54 1.51 101 0 0.227 0.764 0.764 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 98.3 0 0 98.3 598 test.phys biasWrapper(conv) - -********************************************************************************************************* -* G4Track Information: Particle = e+, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 98.3 40.7 0 0 0 test.phys initStep - 1 -0.0807 -0.733 108 36.7 1.34 10.1 10.1 test.phys eIoni - 2 -0.178 -0.74 112 36.1 0.461 3.96 14 test.phys eBrem - 3 3.45 -5.04 171 28.4 7.75 59 73 test.phys eIoni - 4 2.2 -11.1 200 24.4 3.92 30.1 103 World Transportation - 5 -902 -2.59e+03 1e+04 24.4 3.31e-22 1.02e+04 1.03e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.178 -0.74 112 0.105 0 0 0 test.phys initStep - 1 -1.01 -1.33 177 0.0823 0 64.8 64.8 test.phys biasWrapper(compt) - 2 -53.7 50.3 152 0.0689 0 77.9 143 test.phys biasWrapper(compt) - 3 -34 50.8 130 0.0544 0 29.3 172 test.phys biasWrapper(compt) - 4 -40 49 137 0.0536 0 9.07 181 test.phys biasWrapper(compt) - 5 -44.7 44.5 140 0.05 0 7.37 189 test.phys biasWrapper(compt) - 6 -32.7 45.1 192 0.0427 0 53.4 242 test.phys biasWrapper(compt) - 7 -40.2 36.7 183 0.0383 0 14.6 256 test.phys biasWrapper(compt) - 8 -42.3 112 163 0 0.000405 78 334 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 5 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -42.3 112 163 0.0379 0 0 0 test.phys initStep - 1 -42.3 112 163 0 0.0379 0.0371 0.0371 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 5 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -40.2 36.7 183 0.00442 0 0 0 test.phys initStep - 1 -40.2 36.7 183 0 0.00442 0.000872 0.000872 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 5 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -32.7 45.1 192 0.00725 0 0 0 test.phys initStep - 1 -32.7 45.1 192 0 0.00725 0.00203 0.00203 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 5 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -44.7 44.5 140 0.00369 0 0 0 test.phys initStep - 1 -44.7 44.5 140 0 0.00369 0.000645 0.000645 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 5 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -40 49 137 0.000737 0 0 0 test.phys initStep - 1 -40 49 137 0 0.000737 5.48e-05 5.48e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 5 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -34 50.8 130 0.0146 0 0 0 test.phys initStep - 1 -34 50.8 130 0 0.0146 0.00687 0.00687 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 5 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -53.7 50.3 152 0.0134 0 0 0 test.phys initStep - 1 -53.7 50.3 152 0 0.0134 0.00593 0.00593 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 5 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.01 -1.33 177 0.0222 0 0 0 test.phys initStep - 1 -1.01 -1.33 177 0 0.0222 0.0145 0.0145 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0807 -0.733 108 2.72 0 0 0 test.phys initStep - 1 -0.176 -2.84 111 2.28 0.436 3.98 3.98 test.phys eBrem - 2 -0.6 -5.72 115 1.77 0.513 4.85 8.83 test.phys eIoni - 3 0.464 -6.78 118 1.35 0.421 4 12.8 test.phys eIoni - 4 1.14 -8.99 120 1.03 0.323 3.3 16.1 test.phys eIoni - 5 2.37 -9.26 122 0.651 0.377 2.76 18.9 test.phys eIoni - 6 3.27 -9.39 123 0.375 0.276 2.08 21 test.phys eIoni - 7 4.03 -9.33 123 0.00417 0.371 1.44 22.4 test.phys eIoni - 8 4.03 -9.33 123 0 0.00417 0.000791 22.4 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 98.3 58.2 0 0 0 test.phys initStep - 1 -0.119 0.00582 106 56.8 1.02 8.03 8.03 test.phys eBrem - 2 -0.185 -0.0369 113 55.7 0.929 6.68 14.7 test.phys eBrem - 3 -0.195 -0.0514 114 55.2 0.0951 0.946 15.7 test.phys eIoni - 4 -1.45 0.0938 198 44.6 10.3 84.7 100 test.phys eBrem - 5 -1.49 0.104 200 44.4 0.231 1.85 102 World Transportation - 6 -121 -74.8 1e+04 44.4 3.36e-22 9.8e+03 9.9e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.45 0.0938 198 0.324 0 0 0 test.phys initStep - 1 -1.4 0.0301 200 0.324 0 1.86 1.86 World Transportation - 2 258 -337 1e+04 0.324 0 9.81e+03 9.81e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.195 -0.0514 114 0.418 0 0 0 test.phys initStep - 1 -0.93 0.298 114 0.0147 0.403 1.56 1.56 test.phys eIoni - 2 -0.927 0.298 114 0 0.0147 0.00698 1.57 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.185 -0.0369 113 0.12 0 0 0 test.phys initStep - 1 -0.959 -0.168 141 0.082 0 28.3 28.3 test.phys biasWrapper(compt) - 2 -15.6 9.68 30 0.082 0 113 141 test.phys biasWrapper(Rayl) - 3 -17.1 3.58 0 0.082 0 30.6 172 World Transportation - 4 -510 -2.03e+03 -1e+04 0.082 0 1.02e+04 1.04e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 15 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.959 -0.168 141 0.0383 0 0 0 test.phys initStep - 1 -0.958 -0.168 141 0 0.0383 0.0379 0.0379 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.119 0.00582 106 0.421 0 0 0 test.phys initStep - 1 -1.81 -1.35 158 0.165 0 52.1 52.1 test.phys biasWrapper(compt) - 2 13.7 -12.2 123 0.143 0 40 92.1 test.phys biasWrapper(compt) - 3 15.8 -10.1 121 0.111 0 3.49 95.6 test.phys biasWrapper(compt) - 4 -60.2 104 176 0.0992 0 147 243 test.phys biasWrapper(compt) - 5 -60.2 104 175 0.0962 0 0.994 244 test.phys biasWrapper(compt) - 6 -54.6 118 172 0.0921 0 14.6 258 test.phys biasWrapper(compt) - 7 -38.9 155 124 0.0678 0 62.7 321 test.phys biasWrapper(compt) - 8 -57.6 107 172 0.0542 0 69.7 391 test.phys biasWrapper(compt) - 9 -43 116 151 0.0482 0 27.1 418 test.phys biasWrapper(compt) - 10 -9.99 71.8 169 0.0478 0 57.8 476 test.phys biasWrapper(compt) - 11 14.9 52.8 195 0.042 0 40.6 516 test.phys biasWrapper(compt) - 12 15.5 53.4 193 0.0374 0 1.51 518 test.phys biasWrapper(compt) - 13 15.9 53 194 0.0338 0 0.702 518 test.phys biasWrapper(compt) - 14 14.4 53.9 194 0 0.000405 1.87 520 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 14.4 53.9 194 0.0334 0 0 0 test.phys initStep - 1 14.4 54 194 0 0.0334 0.0297 0.0297 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 31, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 15.9 53 194 0.00365 0 0 0 test.phys initStep - 1 15.9 53 194 0 0.00365 0.000633 0.000633 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 30, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 15.5 53.4 193 0.00456 0 0 0 test.phys initStep - 1 15.5 53.4 193 0 0.00456 0.000921 0.000921 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 29, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 14.9 52.8 195 0.00575 0 0 0 test.phys initStep - 1 14.9 52.8 195 0 0.00575 0.00137 0.00137 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 28, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -9.99 71.8 169 0.000435 0 0 0 test.phys initStep - 1 -9.99 71.8 169 0 0.000435 2.83e-05 2.83e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -43 116 151 0.00599 0 0 0 test.phys initStep - 1 -43 116 151 0 0.00599 0.00146 0.00146 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -57.6 107 172 0.0136 0 0 0 test.phys initStep - 1 -57.6 107 172 0 0.0136 0.00609 0.00609 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -38.9 155 124 0.0243 0 0 0 test.phys initStep - 1 -38.9 155 124 0 0.0243 0.017 0.017 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -54.6 118 172 0.0041 0 0 0 test.phys initStep - 1 -54.6 118 172 0 0.0041 0.000767 0.000767 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -60.2 104 175 0.00304 0 0 0 test.phys initStep - 1 -60.2 104 175 0 0.00304 0.000467 0.000467 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -60.2 104 176 0.0116 0 0 0 test.phys initStep - 1 -60.2 104 176 0 0.0116 0.00461 0.00461 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 15.8 -10.1 121 0.032 0 0 0 test.phys initStep - 1 15.9 -10.1 121 0 0.032 0.0276 0.0276 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 13.7 -12.2 123 0.0221 0 0 0 test.phys initStep - 1 13.7 -12.2 123 0 0.0221 0.0143 0.0143 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.81 -1.35 158 0.256 0 0 0 test.phys initStep - 1 -1.85 -1.33 159 0.173 0.0543 0.334 0.334 test.phys eBrem - 2 -1.97 -1.34 159 0 0.173 0.498 0.832 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 33, Parent ID = 19 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.85 -1.33 159 0.0288 0 0 0 test.phys initStep - 1 -5.31 -0.348 163 0.0264 0 5.99 5.99 test.phys biasWrapper(compt) - 2 3.11 12.1 152 0 0.000405 18.7 24.7 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 35, Parent ID = 33 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 3.11 12.1 152 0.026 0 0 0 test.phys initStep - 1 3.12 12.1 152 0 0.026 0.0191 0.0191 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 33 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -5.31 -0.348 163 0.00241 0 0 0 test.phys initStep - 1 -5.31 -0.348 163 0 0.00241 0.00032 0.00032 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 200 100 0 200 700 World Transportation - 3 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 133 0 0 133 633 test.phys biasWrapper(conv) - -********************************************************************************************************* -* G4Track Information: Particle = e+, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 133 43.3 0 0 0 test.phys initStep - 1 2.07 0.302 163 30.2 3.63 30.1 30.1 test.phys eBrem - 2 2.66 0.531 167 29.7 0.472 4.26 34.3 test.phys eBrem - 3 3.44 0.988 172 29.1 0.583 4.92 39.3 test.phys eBrem - 4 4.36 1.44 177 28.4 0.528 4.73 44 test.phys eBrem - 5 5.32 1.77 182 27.9 0.545 5.04 49 test.phys eBrem - 6 9.19 2.76 200 25.7 2.15 18.7 67.8 World Transportation - 7 3.95e+03 1.45e+03 1e+04 25.7 3.48e-22 1.07e+04 1.07e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 5.32 1.77 182 0.00599 0 0 0 test.phys initStep - 1 5.74 1.81 184 0 0.000405 1.85 1.85 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 8 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 5.74 1.81 184 0.00558 0 0 0 test.phys initStep - 1 5.74 1.81 184 0 0.00558 0.0013 0.0013 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 4.36 1.44 177 0.107 0 0 0 test.phys initStep - 1 5.57 2.07 182 0.102 0 5.75 5.75 test.phys biasWrapper(compt) - 2 5.2 19 200 0.102 0 24.4 30.2 World Transportation - 3 -202 9.47e+03 1e+04 0.102 0 1.36e+04 1.36e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 7 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 5.57 2.07 182 0.00485 0 0 0 test.phys initStep - 1 5.57 2.07 182 0 0.00485 0.00102 0.00102 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 3.44 0.988 172 0.0809 0 0 0 test.phys initStep - 1 3.77 1.26 174 0.0793 0 2.21 2.21 test.phys biasWrapper(compt) - 2 0.208 0.376 185 0.0607 0 11.2 13.4 test.phys biasWrapper(compt) - 3 24.1 -7.87 133 0.0575 0 58.2 71.6 test.phys biasWrapper(compt) - 4 -30.8 48.9 15.7 0.0557 0 141 213 test.phys biasWrapper(compt) - 5 -36.5 42.4 0 0.0557 0 17.9 231 World Transportation - 6 -3.72e+03 -4.09e+03 -1e+04 0.0557 0 1.14e+04 1.17e+04 OutOfWorld Transportation + 0 -80.2 19.3 85.4 0.0344 0 0 0 test.phys initStep + 1 -80.2 19.3 85.4 0 0.0344 0.0313 0.0313 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 14, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -30.8 48.9 15.7 0.00185 0 0 0 test.phys initStep - 1 -30.8 48.9 15.7 0 0.00185 0.00021 0.00021 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 24.1 -7.87 133 0.00321 0 0 0 test.phys initStep - 1 24.1 -7.87 133 0 0.00321 0.000511 0.000511 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.208 0.376 185 0.0186 0 0 0 test.phys initStep - 1 0.206 0.376 185 0 0.0186 0.0105 0.0105 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 3.77 1.26 174 0.00164 0 0 0 test.phys initStep - 1 3.77 1.26 174 0 0.00164 0.000175 0.000175 test.phys eIoni + 0 5.56 -2.1 115 0.15 0 0 0 test.phys initStep + 1 5.65 -2.13 115 0 0.15 0.395 0.395 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 2.66 0.531 167 0.0206 0 0 0 test.phys initStep - 1 7.21 2.74 200 0.0206 0 33 33 World Transportation - 2 1.37e+03 667 1e+04 0.0206 0 9.92e+03 9.95e+03 OutOfWorld Transportation + 0 0.341 0.18 38.3 0.731 0 0 0 test.phys initStep + 1 0.558 0.535 47.1 0.33 0 8.83 8.83 test.phys biasWrapper(compt) + 2 -66.2 -21.1 60.5 0.329 0 71.5 80.3 test.phys biasWrapper(compt) + 3 -241 -56.8 89.2 0.169 0 181 261 test.phys biasWrapper(compt) + 4 -235 -33.7 73.1 0.126 0 28.9 290 test.phys biasWrapper(compt) + 5 -234 -33.3 74 0.123 0 1.14 291 test.phys biasWrapper(compt) + 6 -220 -35 109 0.0926 0 37.7 329 test.phys biasWrapper(compt) + 7 -218 -41.2 105 0.0692 0 7.31 337 test.phys biasWrapper(compt) + 8 -218 -37.6 105 0.069 0 3.64 340 test.phys biasWrapper(compt) + 9 -218 -35.8 105 0.0638 0 1.85 342 test.phys biasWrapper(compt) + 10 -184 -15 134 0.052 0 49.2 391 test.phys biasWrapper(compt) + 11 -203 -22.2 133 0.0513 0 20.3 412 test.phys biasWrapper(compt) + 12 -207 -27.4 131 0.0479 0 7.34 419 test.phys biasWrapper(compt) + 13 -222 -54.4 175 0.0412 0 53.2 472 test.phys biasWrapper(compt) + 14 -224 -41.1 169 0.0371 0 14.6 487 test.phys biasWrapper(compt) + 15 -96.2 -128 90.7 0.0337 0 173 660 test.phys biasWrapper(compt) + 16 -100 -128 88 0.0311 0 5.11 665 test.phys biasWrapper(compt) + 17 -42.3 -88.8 39.7 0.0281 0 85.2 750 test.phys biasWrapper(compt) + 18 -110 -191 42.2 0.0275 0 122 873 test.phys biasWrapper(compt) + 19 -130 -195 52.3 0 0.000405 23.3 896 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -130 -195 52.3 0.0271 0 0 0 test.phys initStep + 1 -130 -195 52.3 0 0.0271 0.0206 0.0206 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 40, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -110 -191 42.2 0.000541 0 0 0 test.phys initStep + 1 -110 -191 42.2 0 0.000541 3.68e-05 3.68e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 39, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -42.3 -88.8 39.7 0.00302 0 0 0 test.phys initStep + 1 -42.3 -88.8 39.7 0 0.00302 0.000463 0.000463 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 38, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -100 -128 88 0.00261 0 0 0 test.phys initStep + 1 -100 -128 88 0 0.00261 0.000365 0.000365 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 37, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -96.2 -128 90.7 0.00337 0 0 0 test.phys initStep + 1 -96.2 -128 90.7 0 0.00337 0.000554 0.000554 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 36, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -224 -41.1 169 0.00414 0 0 0 test.phys initStep + 1 -224 -41 169 0 0.00414 0.00078 0.00078 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 35, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -222 -54.4 175 0.00672 0 0 0 test.phys initStep + 1 -222 -54.4 175 0 0.00672 0.00178 0.00178 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -207 -27.4 131 0.00341 0 0 0 test.phys initStep + 1 -207 -27.4 131 0 0.00341 0.000566 0.000566 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -203 -22.2 133 0.000682 0 0 0 test.phys initStep + 1 -203 -22.2 133 0 0.000682 4.94e-05 4.94e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -184 -15 134 0.0118 0 0 0 test.phys initStep + 1 -184 -15 134 0 0.0118 0.00477 0.00477 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 31, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -218 -35.8 105 0.00517 0 0 0 test.phys initStep + 1 -218 -35.8 105 0 0.00517 0.00114 0.00114 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 30, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -218 -37.6 105 0.000213 0 0 0 test.phys initStep + 1 -218 -37.6 105 0 0.000213 1.39e-05 1.39e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 29, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -218 -41.2 105 0.0234 0 0 0 test.phys initStep + 1 -218 -41.2 105 0 0.0234 0.0159 0.0159 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 28, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -220 -35 109 0.0303 0 0 0 test.phys initStep + 1 -220 -35 109 0 0.0303 0.0251 0.0251 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -234 -33.3 74 0.00296 0 0 0 test.phys initStep + 1 -234 -33.3 74 0 0.00296 0.000447 0.000447 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -235 -33.7 73.1 0.043 0 0 0 test.phys initStep + 1 -235 -33.7 73.1 0 0.043 0.0464 0.0464 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -241 -56.8 89.2 0.16 0 0 0 test.phys initStep + 1 -242 -56.9 89.3 0 0.16 0.436 0.436 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -66.2 -21.1 60.5 0.0014 0 0 0 test.phys initStep + 1 -66.2 -21.1 60.5 0 0.0014 0.000137 0.000137 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.558 0.535 47.1 0.4 0 0 0 test.phys initStep + 1 0.953 0.692 47.9 0.0584 0.342 1.51 1.51 test.phys eIoni + 2 0.96 0.73 47.9 0 0.0584 0.0793 1.59 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 2.07 0.302 163 9.49 0 0 0 test.phys initStep - 1 7.26 3.05 200 9.49 0 37.3 37.3 World Transportation - 2 1.39e+03 735 1e+04 9.49 0 9.92e+03 9.96e+03 OutOfWorld Transportation + 0 0.151 -0.037 27.8 0.00752 0 0 0 test.phys initStep + 1 0.153 -0.037 27.9 0 0.000405 0.0824 0.0824 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 42, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.153 -0.037 27.9 0.00711 0 0 0 test.phys initStep + 1 0.153 -0.0369 27.9 0 0.00711 0.00197 0.00197 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 133 55.6 0 0 0 test.phys initStep - 1 -0.11 0.03 142 54.2 1.21 9.25 9.25 test.phys eBrem - 2 0.731 1.16 176 49.8 4 33.2 42.4 test.phys eIoni - 3 1.09 0.477 180 48.9 0.58 4.39 46.8 test.phys eIoni - 4 3.3 -2.07 200 46.3 2.58 20.4 67.2 World Transportation - 5 1.15e+03 -1.41e+03 1e+04 46.3 3.43e-22 9.97e+03 1e+04 OutOfWorld Transportation + 0 0 0 19.4 35 0 0 0 test.phys initStep + 1 0.517 -0.35 29.7 10.7 1.23 10.4 10.4 test.phys eBrem + 2 0.631 -0.51 31.5 10.2 0.236 1.79 12.2 test.phys eIoni + 3 -0.612 -2.01 48.8 8.23 1.99 17.7 29.8 test.phys eIoni + 4 -1.57 -6.27 62.4 6.29 1.94 14.5 44.3 test.phys eIoni + 5 -11.4 -10.2 62.8 4.11 1.56 11 55.4 test.phys eIoni + 6 -15.9 -15.8 64.9 3.03 1.08 7.83 63.2 test.phys eIoni + 7 -19 -19.3 67.9 2.35 0.683 6.08 69.3 test.phys eIoni + 8 -22.9 -20.4 69.9 1.73 0.623 4.96 74.2 test.phys eIoni + 9 -25.8 -20 71.8 1.21 0.522 3.93 78.2 test.phys eIoni + 10 -26 -21 74.2 0.673 0.533 3.06 81.2 test.phys eIoni + 11 -26.7 -19.6 74.4 0.314 0.359 2.12 83.4 test.phys eIoni + 12 -26.9 -19 74.6 0.0744 0.239 1.21 84.6 test.phys eIoni + 13 -26.9 -19 74.6 0 0.0744 0.121 84.7 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 45, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.09 0.477 180 0.352 0 0 0 test.phys initStep - 1 1.6 -0.0382 180 0.112 0.24 1.36 1.36 test.phys eIoni - 2 1.62 -0.151 180 0 0.112 0.243 1.61 test.phys eIoni + 0 -11.4 -10.2 62.8 0.621 0 0 0 test.phys initStep + 1 -12.1 -10.1 63.3 0.448 0.17 0.956 0.956 test.phys eBrem + 2 -12.9 -9.6 63.6 0.136 0.312 1.64 2.6 test.phys eIoni + 3 -13.1 -9.59 63.6 0 0.136 0.333 2.93 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 2 +* G4Track Information: Particle = gamma, Track ID = 46, Parent ID = 45 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.731 1.16 176 0.38 0 0 0 test.phys initStep - 1 0.0699 1.32 176 0.118 0.262 1.45 1.45 test.phys eIoni - 2 0.0844 1.23 176 0 0.118 0.266 1.72 test.phys eIoni + 0 -12.1 -10.1 63.3 0.00271 0 0 0 test.phys initStep + 1 -12.1 -10.1 63.3 0 0.000405 0.00828 0.00828 test.phys biasWrapper(phot) ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 47, Parent ID = 46 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.11 0.03 142 0.188 0 0 0 test.phys initStep - 1 -0.3 -0.619 200 0.188 0 57.6 57.6 World Transportation - 2 -32.7 -111 1e+04 0.188 0 9.8e+03 9.86e+03 OutOfWorld Transportation + 0 -12.1 -10.1 63.3 0.0023 0 0 0 test.phys initStep + 1 -12.1 -10.1 63.3 0 0.0023 0.000297 0.000297 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 44, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.631 -0.51 31.5 0.261 0 0 0 test.phys initStep + 1 0.532 -0.934 31.7 0 0.261 0.948 0.948 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 43, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.517 -0.35 29.7 23 0 0 0 test.phys initStep + 1 2.47 -3.17 200 23 0 170 170 World Transportation + 2 115 -166 1e+04 23 0 9.8e+03 9.97e+03 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -2553,69 +2365,386 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -500 100 0 0 0 World initStep 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 200 100 0 200 700 World Transportation - 3 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 183 0 0 183 683 test.phys biasWrapper(conv) + 2 0 0 54.1 0 0 54.1 554 test.phys biasWrapper(conv) ********************************************************************************************************* * G4Track Information: Particle = e+, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 183 35.3 0 0 0 test.phys initStep - 1 0.0553 0.0118 184 32.8 0.214 1.47 1.47 test.phys eIoni - 2 0.822 -0.371 200 30.8 1.99 15.9 17.4 World Transportation - 3 -784 -1.17e+03 1e+04 30.8 3.29e-22 9.9e+03 9.92e+03 OutOfWorld Transportation + 0 0 0 54.1 60.3 0 0 0 test.phys initStep + 1 0.21 -0.268 70.1 58 2.11 16.1 16.1 test.phys eIoni + 2 0.24 -0.346 73.1 57.6 0.407 2.96 19 test.phys eBrem + 3 -0.366 -1.38 93.5 39.3 2.5 20.5 39.5 test.phys eBrem + 4 -0.627 -1.58 96.5 38.7 0.295 2.97 42.5 test.phys eIoni + 5 -0.791 -1.83 99.5 36.4 0.332 3.01 45.5 test.phys eIoni + 6 0.251 -3.17 139 31.5 4.85 39.4 84.9 test.phys eBrem + 7 3.19 -4.61 167 26.6 3.43 28 113 test.phys eBrem + 8 4.48 -4.53 183 24.3 2.28 16.7 130 test.phys eBrem + 9 4.98 -4.84 200 22.1 2.25 17 147 World Transportation + 10 1.47e+03 394 1e+04 22.1 3.2e-22 9.92e+03 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 4.48 -4.53 183 0.00347 0 0 0 test.phys initStep + 1 4.49 -4.52 183 0 0.000405 0.325 0.325 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 11 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 4.49 -4.52 183 0.00306 0 0 0 test.phys initStep + 1 4.49 -4.52 183 0 0.00306 0.000473 0.000473 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.19 -4.61 167 1.45 0 0 0 test.phys initStep + 1 6.26 -5.37 200 1.45 0 33.6 33.6 World Transportation + 2 906 -227 1e+04 1.45 0 9.84e+03 9.88e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.251 -3.17 139 0.00321 0 0 0 test.phys initStep + 1 0.272 -3.17 139 0 0.000405 0.116 0.116 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 9 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.272 -3.17 139 0.00281 0 0 0 test.phys initStep + 1 0.272 -3.17 139 0 0.00281 0.00041 0.00041 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.791 -1.83 99.5 2 0 0 0 test.phys initStep + 1 -1.42 0.0899 103 1.5 0.501 4.39 4.39 test.phys eIoni + 2 0.383 0.365 105 1.06 0.444 3.56 7.94 test.phys eIoni + 3 1.8 -0.0085 107 0.695 0.362 2.81 10.7 test.phys eIoni + 4 1.92 -0.399 108 0.483 0.206 1.66 12.4 test.phys eBrem + 5 1.94 -0.119 110 0.23 0.254 1.73 14.1 test.phys eIoni + 6 2.03 0.201 110 0 0.23 0.778 14.9 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 8 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 1.92 -0.399 108 0.00643 0 0 0 test.phys initStep + 1 1.93 -0.383 109 0 0.000405 0.102 0.102 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 14 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 1.93 -0.383 109 0.00603 0 0 0 test.phys initStep + 1 1.93 -0.383 109 0 0.00603 0.00148 0.00148 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.627 -1.58 96.5 0.27 0 0 0 test.phys initStep + 1 -0.95 -1.26 96.7 0 0.27 0.999 0.999 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.366 -1.38 93.5 15.8 0 0 0 test.phys initStep + 1 -9.71 -10.2 200 15.8 0 107 107 World Transportation + 2 -870 -826 1e+04 15.8 0 9.87e+03 9.98e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.24 -0.346 73.1 0.0198 0 0 0 test.phys initStep + 1 0.204 -0.523 80.4 0.0193 0 7.26 7.26 test.phys biasWrapper(compt) + 2 0.569 -0.878 80.6 0 0.000405 0.547 7.81 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.569 -0.878 80.6 0.0189 0 0 0 test.phys initStep + 1 0.57 -0.877 80.6 0 0.0189 0.0109 0.0109 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.204 -0.523 80.4 0.000468 0 0 0 test.phys initStep + 1 0.204 -0.522 80.4 0 0.000468 3.08e-05 3.08e-05 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0553 0.0118 184 2.3 0 0 0 test.phys initStep - 1 -0.0119 3.58 187 1.68 0.616 4.87 4.87 test.phys eIoni - 2 0.499 6.51 189 1.28 0.405 3.86 8.73 test.phys eIoni - 3 1.01 8.8 190 0.852 0.425 3.18 11.9 test.phys eIoni - 4 0.00512 10.4 190 0.569 0.283 2.45 14.4 test.phys eIoni - 5 -1.14 10.5 189 0.194 0.375 1.92 16.3 test.phys eIoni - 6 -1.38 10.3 189 0 0.194 0.599 16.9 test.phys eIoni + 0 0.21 -0.268 70.1 0.245 0 0 0 test.phys initStep + 1 0.146 0.119 70.3 0 0.245 0.861 0.861 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 183 63.7 0 0 0 test.phys initStep - 1 0.0227 -0.199 192 58.6 1.06 9.2 9.2 test.phys eBrem - 2 -0.015 -0.3 194 58 0.575 2.49 11.7 test.phys eBrem - 3 -0.148 -0.496 200 57.4 0.594 5.64 17.3 World Transportation - 4 -251 -406 1e+04 57.4 3.44e-22 9.81e+03 9.83e+03 OutOfWorld Transportation + 0 0 0 54.1 38.6 0 0 0 test.phys initStep + 1 4.28 -2.47 98.1 28.9 5.45 44.5 44.5 test.phys eBrem + 2 7.06 -3.02 110 26.6 1.33 11.8 56.3 test.phys eIoni + 3 9.58 -3.34 117 23.3 1.27 8.28 64.6 test.phys eBrem + 4 20.8 -8.81 153 18.7 4.47 38 103 test.phys eBrem + 5 21.3 -8.9 154 18.1 0.124 1.24 104 test.phys eIoni + 6 29.7 -10.8 169 11.1 2.24 17.5 121 test.phys eBrem + 7 29.8 -10.8 169 11 0.0328 0.114 121 test.phys eBrem + 8 34 -11.4 175 10.2 0.782 6.73 128 test.phys eBrem + 9 36.9 -12.3 176 9.22 0.384 3.52 132 test.phys eIoni + 10 41.8 -13.6 180 7.71 0.83 6.08 138 test.phys eIoni + 11 53.3 -16.5 186 6.18 1.53 13.6 151 test.phys eIoni + 12 54.5 -16.6 187 3.34 0.266 1.48 153 test.phys eBrem + 13 58.7 -18.1 191 2.48 0.859 6.58 159 test.phys eIoni + 14 60.2 -19.1 196 1.95 0.524 5.17 165 test.phys eIoni + 15 62.4 -19.2 199 1.47 0.485 4.31 169 test.phys eIoni + 16 62.9 -16.6 197 1.1 0.367 3.5 172 test.phys eIoni + 17 61.6 -14.2 197 0.791 0.311 2.88 175 test.phys eIoni + 18 60.2 -13.2 196 0.505 0.286 2.34 178 test.phys eIoni + 19 59.5 -13.9 195 0.227 0.278 1.78 179 test.phys eIoni + 20 59.8 -13.7 195 0 0.227 0.767 180 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 2 +* G4Track Information: Particle = gamma, Track ID = 28, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.015 -0.3 194 0.0784 0 0 0 test.phys initStep - 1 -0.175 -0.418 200 0.0784 0 5.63 5.63 World Transportation - 2 -279 -207 1e+04 0.0784 0 9.81e+03 9.81e+03 OutOfWorld Transportation + 0 54.5 -16.6 187 2.58 0 0 0 test.phys initStep + 1 74.3 -19.7 200 2.58 0 24 24 World Transportation + 2 1e+04 -1.59e+03 6.83e+03 2.58 0 1.2e+04 1.21e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0227 -0.199 192 4.01 0 0 0 test.phys initStep - 1 0.000605 -0.495 200 4.01 0 8.12 8.12 World Transportation - 2 -26.7 -358 1e+04 4.01 0 9.81e+03 9.81e+03 OutOfWorld Transportation + 0 41.8 -13.6 180 0.678 0 0 0 test.phys initStep + 1 43.2 -14.3 179 0.332 0.346 2.13 2.13 test.phys eIoni + 2 43.5 -14 179 0.0801 0.252 1.29 3.42 test.phys eIoni + 3 43.5 -14 179 0 0.0801 0.137 3.56 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 36.9 -12.3 176 0.63 0 0 0 test.phys initStep + 1 38.3 -11.7 176 0.223 0.407 2.04 2.04 test.phys eIoni + 2 38.4 -11.3 176 0 0.223 0.746 2.79 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 25, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 34 -11.4 175 0.0033 0 0 0 test.phys initStep + 1 34 -11.4 175 0 0.000405 0.0241 0.0241 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 29, Parent ID = 25 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 34 -11.4 175 0.00289 0 0 0 test.phys initStep + 1 34 -11.4 175 0 0.00289 0.00043 0.00043 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 24, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 29.8 -10.8 169 0.0597 0 0 0 test.phys initStep + 1 40.7 -13.5 186 0.0499 0 20 20 test.phys biasWrapper(compt) + 2 43.3 8.64 159 0.0499 0 35.2 55.2 test.phys biasWrapper(Rayl) + 3 43.3 13 152 0.0422 0 7.6 62.8 test.phys biasWrapper(compt) + 4 41 8.93 156 0 0.000405 5.71 68.5 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 24 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 41 8.93 156 0.0418 0 0 0 test.phys initStep + 1 41 8.91 156 0 0.0418 0.0441 0.0441 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 31, Parent ID = 24 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 43.3 13 152 0.00773 0 0 0 test.phys initStep + 1 43.3 13 152 0 0.00773 0.00227 0.00227 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 30, Parent ID = 24 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 40.7 -13.5 186 0.00984 0 0 0 test.phys initStep + 1 40.7 -13.5 186 0 0.00984 0.00346 0.00346 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 23, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 29.7 -10.8 169 4.76 0 0 0 test.phys initStep + 1 49.6 -12.6 200 4.76 0 36.6 36.6 World Transportation + 2 6.4e+03 -583 1e+04 4.76 0 1.17e+04 1.17e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 21.3 -8.9 154 0.444 0 0 0 test.phys initStep + 1 21.1 -8.21 155 0.0759 0.368 1.63 1.63 test.phys eIoni + 2 21.1 -8.24 155 0 0.0759 0.125 1.76 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 21, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 20.8 -8.81 153 0.182 0 0 0 test.phys initStep + 1 35.9 -10.6 193 0.115 0 42.5 42.5 test.phys biasWrapper(compt) + 2 42 -5.74 182 0.103 0 13.6 56.1 test.phys biasWrapper(compt) + 3 103 -3.38 180 0.0773 0 60.8 117 test.phys biasWrapper(compt) + 4 79.1 1.23 156 0.0594 0 33.9 151 test.phys biasWrapper(compt) + 5 94.3 -4.82 175 0.0491 0 25.5 176 test.phys biasWrapper(compt) + 6 93.4 -5.63 173 0.048 0 2.89 179 test.phys biasWrapper(compt) + 7 74 10.1 139 0.048 1.55e-05 41.6 221 test.phys biasWrapper(compt) + 8 72.8 10.9 138 0.0438 0 2.12 223 test.phys biasWrapper(compt) + 9 94.1 -45.5 95 0.0387 0 73.9 297 test.phys biasWrapper(compt) + 10 121 -28 127 0 2.31e-05 45 342 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 121 -28 127 0.0387 0 0 0 test.phys initStep + 1 121 -28 127 0 0.0387 0.0385 0.0385 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 40, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 94.1 -45.5 95 0.00508 0 0 0 test.phys initStep + 1 94.1 -45.5 95 0 0.00508 0.0011 0.0011 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 39, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 72.8 10.9 138 0.00423 0 0 0 test.phys initStep + 1 72.8 10.9 138 0 0.00423 0.00081 0.00081 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 38, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 93.4 -5.63 173 0.00109 0 0 0 test.phys initStep + 1 93.4 -5.63 173 0 0.00109 9.46e-05 9.46e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 37, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 94.3 -4.82 175 0.0103 0 0 0 test.phys initStep + 1 94.3 -4.82 175 0 0.0103 0.00377 0.00377 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 36, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 79.1 1.23 156 0.0179 0 0 0 test.phys initStep + 1 79.1 1.23 156 0 0.0179 0.00986 0.00986 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 35, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 103 -3.38 180 0.0261 0 0 0 test.phys initStep + 1 103 -3.38 180 0 0.0261 0.0193 0.0193 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 42 -5.74 182 0.012 0 0 0 test.phys initStep + 1 42 -5.74 182 0 0.012 0.00489 0.00489 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 35.9 -10.6 193 0.0668 0 0 0 test.phys initStep + 1 35.9 -10.6 193 0 0.0668 0.1 0.1 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 20, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 9.58 -3.34 117 2.04 0 0 0 test.phys initStep + 1 41.3 -7.92 200 2.04 0 88.5 88.5 World Transportation + 2 3.81e+03 -552 1e+04 2.04 0 1.05e+04 1.06e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 7.06 -3.02 110 0.909 0 0 0 test.phys initStep + 1 6.16 -2.43 111 0.615 0.293 2.55 2.55 test.phys eIoni + 2 5.49 -2.24 113 0.345 0.27 2.01 4.56 test.phys eIoni + 3 4.97 -1.97 113 0.0901 0.255 1.34 5.9 test.phys eIoni + 4 5.03 -1.92 113 0 0.0901 0.167 6.07 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 18, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 4.28 -2.47 98.1 4.33 0 0 0 test.phys initStep + 1 17.2 -1.61 200 4.33 0 103 103 World Transportation + 2 1.26e+03 81.4 1e+04 4.33 0 9.88e+03 9.98e+03 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -2634,26 +2763,263 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -500 100 0 0 0 World initStep 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 194 0 0 194 694 test.phys biasWrapper(conv) + 2 0 0 200 100 0 200 700 World Transportation + 3 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 148 0 0 148 648 test.phys biasWrapper(conv) ********************************************************************************************************* * G4Track Information: Particle = e+, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 194 95.6 0 0 0 test.phys initStep - 1 -0.0432 0.0123 200 94.5 1.13 6.45 6.45 World Transportation - 2 100 7.58 1e+04 94.5 3.59e-22 9.8e+03 9.81e+03 OutOfWorld Transportation + 0 0 0 148 6.89 0 0 0 test.phys initStep + 1 -0.0923 -0.147 150 6.69 0.162 1.47 1.47 test.phys eBrem + 2 -1.25 -1.1 161 5.06 1.63 12.1 13.5 test.phys eIoni + 3 -0.394 -2 166 4.45 0.609 4.69 18.2 test.phys eBrem + 4 2.27 -3.89 173 3.35 1.1 8.43 26.7 test.phys eIoni + 5 3.13 -6.68 179 2.63 0.721 6.64 33.3 test.phys eIoni + 6 5.68 -9.4 182 1.99 0.64 5.45 38.7 test.phys eIoni + 7 8.62 -11.7 183 1.32 0.672 4.39 43.1 test.phys eIoni + 8 10.2 -12.8 185 0.826 0.49 3.26 46.4 test.phys eIoni + 9 11 -14.5 185 0.538 0.288 2.41 48.8 test.phys eIoni + 10 10.4 -15.3 184 0.2 0.339 1.85 50.7 test.phys eIoni + 11 10.5 -15.5 184 0 0.2 0.603 51.3 test.phys eIoni + 12 10.5 -15.5 184 0 0 0 51.3 test.phys annihil + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 10.5 -15.5 184 0.511 0 0 0 test.phys initStep + 1 21.5 21.5 200 0.511 0 41.7 41.7 World Transportation + 2 2.98e+03 1e+04 4.42e+03 0.511 0 1.12e+04 1.13e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 10.5 -15.5 184 0.511 0 0 0 test.phys initStep + 1 -3.59 -63.1 164 0.335 0 53.5 53.5 test.phys biasWrapper(compt) + 2 42.4 -146 200 0.335 0 102 155 World Transportation + 3 5.49e+03 -1e+04 4.44e+03 0.335 0 1.2e+04 1.22e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -3.59 -63.1 164 0.176 0 0 0 test.phys initStep + 1 -3.75 -63.2 164 0 0.176 0.509 0.509 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.394 -2 166 0.00554 0 0 0 test.phys initStep + 1 0.0233 -2.25 167 0 0.000405 1.01 1.01 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0233 -2.25 167 0.00514 0 0 0 test.phys initStep + 1 0.0236 -2.25 167 0 0.00514 0.00113 0.00113 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0923 -0.147 150 0.0319 0 0 0 test.phys initStep + 1 -6.97 -0.756 178 0.0292 0 29.4 29.4 test.phys biasWrapper(compt) + 2 4.98 3.01 175 0 0.000405 13 42.3 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 4.98 3.01 175 0.0288 0 0 0 test.phys initStep + 1 4.99 3.02 175 0 0.0288 0.023 0.023 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.97 -0.756 178 0.00268 0 0 0 test.phys initStep + 1 -6.97 -0.756 178 0 0.00268 0.000381 0.000381 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 194 3.38 0 0 0 test.phys initStep - 1 4.27 -1.3 198 2.48 0.902 6.65 6.65 test.phys eIoni - 2 6.01 -1.71 200 2.21 0.271 2.77 9.41 World Transportation - 3 4.97e+03 4.83e+03 1e+04 2.21 3.2e-22 1.2e+04 1.2e+04 OutOfWorld Transportation + 0 0 0 148 92.1 0 0 0 test.phys initStep + 1 9.04e-05 9.2e-07 148 92 0.0334 0.116 0.116 test.phys eBrem + 2 0.0132 0.00141 200 85.7 6.38 51.6 51.7 World Transportation + 3 -765 -532 1e+04 85.7 3.57e-22 9.84e+03 9.9e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 9.04e-05 9.2e-07 148 0.009 0 0 0 test.phys initStep + 1 -0.000568 0.00027 151 0 0.000405 2.53 2.53 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 12 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.000568 0.00027 151 0.0086 0 0 0 test.phys initStep + 1 -0.00138 -0.000508 151 0 0.0086 0.00273 0.00273 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 156 0 0 156 656 test.phys biasWrapper(conv) + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 156 80.4 0 0 0 test.phys initStep + 1 -0.111 0.465 170 77 1.68 14.2 14.2 test.phys eIoni + 2 -0.312 0.719 184 74.9 1.76 13.4 27.7 test.phys eIoni + 3 -0.677 0.933 200 73 1.93 16.3 44 World Transportation + 4 -685 321 1e+04 73 3.52e-22 9.83e+03 9.87e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.312 0.719 184 0.319 0 0 0 test.phys initStep + 1 0.126 1.1 184 0.093 0.226 1.24 1.24 test.phys eIoni + 2 0.129 1.07 184 0 0.093 0.177 1.41 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.111 0.465 170 1.7 0 0 0 test.phys initStep + 1 -1.78 1.84 173 1.28 0.42 3.88 3.88 test.phys eIoni + 2 -1.51 2.22 176 0.681 0.599 3.18 7.07 test.phys eIoni + 3 -1.46 1.92 177 0.275 0.147 1.34 8.41 test.phys eBrem + 4 -1.11 2.26 177 0.0772 0.198 1.03 9.44 test.phys eIoni + 5 -1.1 2.3 177 0 0.0772 0.129 9.57 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.46 1.92 177 0.259 0 0 0 test.phys initStep + 1 -1.7 11.7 185 0.156 0 13.1 13.1 test.phys biasWrapper(compt) + 2 354 -49 92.7 0.143 0 373 386 test.phys biasWrapper(compt) + 3 379 -56.2 108 0.141 0 30.6 416 test.phys biasWrapper(compt) + 4 381 -56.8 109 0.098 0 1.8 418 test.phys biasWrapper(compt) + 5 372 -32.5 76.6 0.0969 0 41.1 459 test.phys biasWrapper(compt) + 6 373 -27.6 71.6 0.0867 0 7.02 466 test.phys biasWrapper(compt) + 7 437 -47.3 13.9 0.079 0 88.7 555 test.phys biasWrapper(compt) + 8 441 -33 -7.11e-15 0.079 0 20.2 575 World Transportation + 9 2.94e+03 1e+04 -9.82e+03 0.079 0 1.43e+04 1.48e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 437 -47.3 13.9 0.00778 0 0 0 test.phys initStep + 1 437 -47.3 13.9 0 0.00778 0.0023 0.0023 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 373 -27.6 71.6 0.0102 0 0 0 test.phys initStep + 1 373 -27.6 71.6 0 0.0102 0.00367 0.00367 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 372 -32.5 76.6 0.0011 0 0 0 test.phys initStep + 1 372 -32.5 76.6 0 0.0011 9.6e-05 9.6e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 381 -56.8 109 0.0428 0 0 0 test.phys initStep + 1 381 -56.9 109 0 0.0428 0.0459 0.0459 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 379 -56.2 108 0.00221 0 0 0 test.phys initStep + 1 379 -56.2 108 0 0.00221 0.000279 0.000279 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 354 -49 92.7 0.0128 0 0 0 test.phys initStep + 1 354 -49 92.7 0 0.0128 0.00552 0.00552 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.7 11.7 185 0.103 0 0 0 test.phys initStep + 1 -1.75 11.8 185 0 0.103 0.21 0.21 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 156 18.6 0 0 0 test.phys initStep + 1 3.54 1.86 187 15 3.61 31 31 test.phys eIoni + 2 4.52 3.22 196 10 1.2 9.88 40.9 test.phys eIoni + 3 5.81 5.02 200 9.57 0.464 4.4 45.3 World Transportation + 4 844 3.9e+03 1e+04 9.57 3.16e-22 1.06e+04 1.06e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 4.52 3.22 196 3.74 0 0 0 test.phys initStep + 1 4.95 2.83 200 3.13 0.609 3.94 3.94 World Transportation + 2 -1.13e+03 -1.82e+03 1e+04 3.13 2.73e-22 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -2666,83 +3032,277 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 3 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 76 0.997 0.00323 76 576 test.phys biasWrapper(hadElastic) - 3 3.75 -7.33 114 0.96 0.0365 39.1 615 test.phys biasWrapper(hadElastic) - 4 -17.8 -21.5 143 0.863 0 38.5 654 test.phys biasWrapper(hadElastic) - 5 -73.4 -77 104 0.817 0.0456 87.7 741 test.phys biasWrapper(hadElastic) - 6 -89.2 -73.1 94.2 0.815 0.00166 18.9 760 test.phys biasWrapper(hadElastic) - 7 -106 -72.1 83.1 0.763 0.0522 20.2 780 test.phys biasWrapper(hadElastic) - 8 -142 48.6 0 0.763 0 151 931 World Transportation - 9 -3.15e+03 1e+04 -6.85e+03 0.763 0 1.24e+04 1.34e+04 OutOfWorld Transportation + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 59 0 0 59 559 test.phys biasWrapper(conv) ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 +* G4Track Information: Particle = e+, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -17.8 -21.5 143 0.0975 0 0 0 test.phys initStep - 1 -17.8 -21.5 143 0 0.0975 0.00114 0.00114 test.phys ionIoni + 0 0 0 59 35.6 0 0 0 test.phys initStep + 1 0.393 0.225 66.5 34.4 0.946 7.5 7.5 test.phys eIoni + 2 0.483 0.866 71 33.3 0.582 4.55 12.1 test.phys eIoni + 3 -2.44 6.11 125 26.5 6.81 54.6 66.6 test.phys eIoni + 4 -6.78 11.6 163 18.3 4.49 38.9 106 test.phys eBrem + 5 -8.44 16 177 16.3 1.75 14.4 120 test.phys eIoni + 6 -9.44 17.5 184 15.3 0.863 7.47 127 test.phys eBrem + 7 -10.5 20.2 193 14.1 1.21 9.39 137 test.phys eBrem + 8 -11.7 22.7 200 13.1 0.994 7.79 145 World Transportation + 9 406 4.28e+03 1e+04 13.1 3.28e-22 1.07e+04 1.08e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 63.6 0.836 0 63.6 564 test.phys biasWrapper(hadElastic) - 3 107 -138 20.2 0.657 0 180 744 test.phys biasWrapper(hadElastic) - 4 70 -108 106 0.511 0 98.4 842 test.phys biasWrapper(hadElastic) - 5 74.1 -104 99.3 0.408 0 8.86 851 test.phys biasWrapper(hadElastic) - 6 84.2 -285 144 0.319 0 187 1.04e+03 test.phys biasWrapper(hadElastic) - 7 32.6 -182 200 0.319 0 128 1.17e+03 World Transportation - 8 -5.05e+03 1e+04 5.67e+03 0.319 0 1.26e+04 1.38e+04 OutOfWorld Transportation + 0 -10.5 20.2 193 0.0228 0 0 0 test.phys initStep + 1 -12.1 22.9 200 0.0228 0 7.88 7.88 World Transportation + 2 -2.18e+03 3.63e+03 1e+04 0.0228 0 1.07e+04 1.07e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 6, Parent ID = 1 +* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 84.2 -285 144 0.0887 0 0 0 test.phys initStep - 1 84.2 -285 144 0 0.0887 0.00107 0.00107 test.phys ionIoni + 0 -9.44 17.5 184 0.116 0 0 0 test.phys initStep + 1 -11.7 20.9 200 0.116 0 16.6 16.6 World Transportation + 2 -1.37e+03 2.07e+03 1e+04 0.116 0 1.01e+04 1.01e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 5, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 74.1 -104 99.3 0.103 0 0 0 test.phys initStep - 1 74.1 -104 99.3 0 0.103 0.00118 0.00118 test.phys ionIoni + 0 -8.44 16 177 0.282 0 0 0 test.phys initStep + 1 -8.48 16.6 177 0 0.282 1.07 1.07 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 4, Parent ID = 1 +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 70 -108 106 0.146 0 0 0 test.phys initStep - 1 70 -108 106 0 0.146 0.00148 0.00148 test.phys ionIoni + 0 -6.78 11.6 163 3.72 0 0 0 test.phys initStep + 1 -10.4 21.8 200 3.72 0 38.5 38.5 World Transportation + 2 -962 2.71e+03 1e+04 3.72 0 1.02e+04 1.02e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 107 -138 20.2 0.179 0 0 0 test.phys initStep - 1 107 -138 20.2 0 0.179 0.00168 0.00168 test.phys ionIoni + 0 0.483 0.866 71 0.491 0 0 0 test.phys initStep + 1 -0.33 1.41 71.6 0.262 0.229 1.75 1.75 test.phys eIoni + 2 -0.516 1.11 72 0 0.262 0.956 2.7 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 63.6 0.164 0 0 0 test.phys initStep - 1 -0.00051 0.000654 63.6 0 0.164 0.00159 0.00159 test.phys ionIoni + 0 0.393 0.225 66.5 0.258 0 0 0 test.phys initStep + 1 0.205 -0.121 66.8 0 0.258 0.934 0.934 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 59 63.4 0 0 0 test.phys initStep + 1 -0.0286 0.0138 61.8 62.7 0.28 2.75 2.75 test.phys eIoni + 2 -0.0892 0.629 81.5 57.7 2.65 19.8 22.5 test.phys eBrem + 3 -0.18 0.646 87.7 56.9 0.671 6.13 28.6 test.phys eBrem + 4 0.4 -0.515 110 53.2 3.41 22.6 51.2 test.phys eIoni + 5 0.341 -0.783 112 47.9 0.246 2.04 53.3 test.phys eBrem + 6 0.288 -0.977 114 47.5 0.189 1.44 54.7 test.phys eBrem + 7 0.139 -1.97 121 46.4 0.852 7.38 62.1 test.phys eIoni + 8 -1.34 -6.7 150 29.7 3.63 29.1 91.2 test.phys eBrem + 9 -1.5 -7.58 156 28.4 0.65 6.15 97.4 test.phys eIoni + 10 -1.48 -9.56 167 24.6 1.53 11.9 109 test.phys eIoni + 11 -1.48 -10.3 173 23.9 0.687 6.02 115 test.phys eBrem + 12 -1.73 -11.7 181 22.8 0.987 8.12 123 test.phys eBrem + 13 -1.79 -11.9 182 21.8 0.0728 0.409 124 test.phys eIoni + 14 -2.13 -16.7 192 20.1 1.47 11.5 135 test.phys eIoni + 15 -2.85 -20.4 200 19 1.05 8.72 144 World Transportation + 16 -1.27e+03 -4.47e+03 1e+04 19 3.45e-22 1.08e+04 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.13 -16.7 192 0.242 0 0 0 test.phys initStep + 1 -2.09 -16.4 193 0 0.242 0.847 0.847 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.79 -11.9 182 0.974 0 0 0 test.phys initStep + 1 -3.13 -11.6 183 0.66 0.315 2.66 2.66 test.phys eIoni + 2 -3.32 -11.4 185 0.386 0.274 2.1 4.76 test.phys eIoni + 3 -3.51 -10.8 186 0.18 0.205 1.47 6.24 test.phys eIoni + 4 -3.44 -10.6 186 0 0.18 0.531 6.77 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 21, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.73 -11.7 181 0.0847 0 0 0 test.phys initStep + 1 -5.87 -20.3 200 0.0847 0 20.9 20.9 World Transportation + 2 -2.18e+03 -4.51e+03 1e+04 0.0847 0 1.1e+04 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 20, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.48 -10.3 173 0.0323 0 0 0 test.phys initStep + 1 -1.31 -12.4 188 0.0319 0 14.4 14.4 test.phys biasWrapper(compt) + 2 2.18 -6.09 200 0.0319 0 14.3 28.7 World Transportation + 3 2.77e+03 5e+03 1e+04 0.0319 0 1.13e+04 1.14e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 20 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.31 -12.4 188 0.000416 0 0 0 test.phys initStep + 1 -1.31 -12.4 188 0 0.000416 2.69e-05 2.69e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.48 -9.56 167 2.2 0 0 0 test.phys initStep + 1 -1.9 -12.3 171 1.65 0.546 4.71 4.71 test.phys eIoni + 2 -0.438 -15 172 1.22 0.439 3.81 8.52 test.phys eIoni + 3 -0.289 -15.2 175 0.897 0.319 3.08 11.6 test.phys eIoni + 4 1.34 -15.9 176 0.584 0.313 2.53 14.1 test.phys eIoni + 5 1.01 -16.7 177 0.239 0.344 1.95 16.1 test.phys eIoni + 6 1.37 -16.7 177 0 0.239 0.831 16.9 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.5 -7.58 156 0.685 0 0 0 test.phys initStep + 1 -0.564 -6.97 157 0.367 0.317 2.15 2.15 test.phys eIoni + 2 0.25 -6.94 157 0.113 0.254 1.41 3.56 test.phys eIoni + 3 0.277 -6.85 157 0 0.113 0.246 3.81 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.34 -6.7 150 13.1 0 0 0 test.phys initStep + 1 -3.07 -16 200 13.1 0 51.3 51.3 World Transportation + 2 -339 -1.82e+03 1e+04 13.1 0 9.97e+03 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.139 -1.97 121 0.247 0 0 0 test.phys initStep + 1 0.485 -2.19 121 0 0.247 0.875 0.875 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.288 -0.977 114 0.209 0 0 0 test.phys initStep + 1 -7.1 -12.1 200 0.209 0 87.4 87.4 World Transportation + 2 -846 -1.28e+03 1e+04 0.209 0 9.92e+03 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.341 -0.783 112 5.02 0 0 0 test.phys initStep + 1 -2.22 -13 200 5.02 0 88.7 88.7 World Transportation + 2 -288 -1.38e+03 1e+04 5.02 0 9.9e+03 9.99e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.4 -0.515 110 0.288 0 0 0 test.phys initStep + 1 0.754 -0.199 111 0.00982 0.279 1.1 1.1 test.phys eIoni + 2 0.755 -0.2 111 0 0.00982 0.00345 1.1 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.18 0.646 87.7 0.12 0 0 0 test.phys initStep + 1 -0.59 -0.884 148 0.118 0 60.4 60.4 test.phys biasWrapper(compt) + 2 1.45 7.58 169 0.118 0 22.4 82.8 test.phys biasWrapper(compt) + 3 1.1 25.4 200 0.118 0 36 119 World Transportation + 4 -106 5.6e+03 1e+04 0.118 0 1.13e+04 1.14e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 12 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 1.45 7.58 169 0.000359 0 0 0 test.phys initStep + 1 1.45 7.58 169 0 0.000359 2.28e-05 2.28e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 12 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.59 -0.884 148 0.00248 0 0 0 test.phys initStep + 1 -0.59 -0.885 148 0 0.00248 0.000334 0.000334 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0892 0.629 81.5 2.36 0 0 0 test.phys initStep + 1 -0.0243 1.33 110 1.36 0 28.8 28.8 test.phys biasWrapper(compt) + 2 -55.9 -9.19 200 1.36 0 106 135 World Transportation + 3 -6.16e+03 -1.16e+03 1e+04 1.36 0 1.16e+04 1.17e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 11 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0243 1.33 110 1 0 0 0 test.phys initStep + 1 1.11 1.63 112 0.544 0.458 2.71 2.71 test.phys eIoni + 2 1.01 2.79 113 0.286 0.258 1.87 4.58 test.phys eIoni + 3 1.53 2.63 113 0.0612 0.225 1.09 5.66 test.phys eIoni + 4 1.56 2.6 113 0 0.0612 0.0858 5.75 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0286 0.0138 61.8 0.371 0 0 0 test.phys initStep + 1 0.673 -0.00946 62.2 0.122 0.249 1.43 1.43 test.phys eIoni + 2 0.623 0.118 62.2 0 0.122 0.28 1.71 test.phys eIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ********************************************************************************************************* * G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 @@ -2761,17 +3321,28 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -500 1 0 0 0 World initStep 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 6.05 0.843 0 6.05 506 test.phys biasWrapper(hadElastic) - 3 26.9 -19.2 2.66e-15 0.843 0 33.6 540 World Transportation - 4 1e+04 -7.11e+03 -2.24e+03 0.843 0 1.24e+04 1.3e+04 OutOfWorld Transportation + 2 0 0 97.7 0.908 0 97.7 598 test.phys biasWrapper(hadElastic) + 3 -0.747 -2.79 98.7 0.841 0.0664 3.06 601 test.phys biasWrapper(hadElastic) + 4 -0.0935 -4.24 106 0.74 0 7.68 608 test.phys biasWrapper(hadElastic) + 5 -6.8 -53.7 103 0.683 0.0574 50 658 test.phys biasWrapper(hadElastic) + 6 -45 -93.7 0 0.683 0 117 775 World Transportation + 7 -3.75e+03 -3.98e+03 -1e+04 0.683 0 1.14e+04 1.21e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0935 -4.24 106 0.101 0 0 0 test.phys initStep + 1 -0.0934 -4.24 106 0 0.101 0.00117 0.00117 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 6.05 0.157 0 0 0 test.phys initStep - 1 -0.000679 0.000483 6.05 0 0.157 0.00154 0.00154 test.phys ionIoni + 0 0 0 97.7 0.0923 0 0 0 test.phys initStep + 1 0.000179 0.000668 97.7 0 0.0923 0.0011 0.0011 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 @@ -2780,38 +3351,47 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -500 1 0 0 0 World initStep 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 53.6 0.975 0.0254 53.6 554 test.phys biasWrapper(hadElastic) - 3 -29.3 6.46 96.8 0.889 0 52.6 606 test.phys biasWrapper(hadElastic) - 4 -8.28 4.01 128 0.763 0 38 644 test.phys biasWrapper(hadElastic) - 5 32.4 14.9 98.2 0.724 0.0384 51.8 696 test.phys biasWrapper(hadElastic) - 6 139 -15.8 108 0.714 0.0104 111 807 test.phys biasWrapper(hadElastic) - 7 205 -64.9 91.8 0.573 0 83.9 891 test.phys biasWrapper(hadElastic) - 8 51.1 -131 200 0.573 0 199 1.09e+03 World Transportation - 9 -1e+04 -4.46e+03 7.28e+03 0.573 0 1.3e+04 1.41e+04 OutOfWorld Transportation + 2 0 0 34.9 0.948 0.0522 34.9 535 test.phys biasWrapper(hadElastic) + 3 -46.6 -97.6 122 0.879 0.069 139 674 test.phys biasWrapper(hadElastic) + 4 -47 -95.4 132 0.796 0 10.3 684 test.phys biasWrapper(hadElastic) + 5 -37.2 -123 150 0.672 0 34.6 719 test.phys biasWrapper(hadElastic) + 6 -140 -107 193 0.52 0 113 832 test.phys biasWrapper(hadElastic) + 7 -132 -117 181 0.449 0 17.9 849 test.phys biasWrapper(hadElastic) + 8 -131 -117 181 0.441 0.00797 0.579 850 test.phys biasWrapper(hadElastic) + 9 -112 -91.8 200 0.441 0 36.7 887 World Transportation + 10 7.59e+03 1e+04 7.66e+03 0.441 0 1.47e+04 1.56e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -132 -117 181 0.0712 0 0 0 test.phys initStep + 1 -132 -117 181 0 0.0712 0.000931 0.000931 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 205 -64.9 91.8 0.14 0 0 0 test.phys initStep - 1 205 -64.9 91.8 0 0.14 0.00144 0.00144 test.phys ionIoni + 0 -140 -107 193 0.151 0 0 0 test.phys initStep + 1 -140 -107 193 0 0.151 0.00151 0.00151 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -8.28 4.01 128 0.127 0 0 0 test.phys initStep - 1 -8.28 4.01 128 0 0.127 0.00135 0.00135 test.phys ionIoni + 0 -37.2 -123 150 0.125 0 0 0 test.phys initStep + 1 -37.2 -123 150 0 0.125 0.00133 0.00133 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -29.3 6.46 96.8 0.0853 0 0 0 test.phys initStep - 1 -29.3 6.46 96.8 0 0.0853 0.00105 0.00105 test.phys ionIoni + 0 -47 -95.4 132 0.0827 0 0 0 test.phys initStep + 1 -47 -95.4 132 0 0.0827 0.00102 0.00102 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 @@ -2820,84 +3400,40 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -500 1 0 0 0 World initStep 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 9.6 0.855 0 9.6 510 test.phys biasWrapper(hadElastic) - 3 27.5 -65.1 3.79 0.774 0 71 581 test.phys biasWrapper(hadElastic) - 4 34.9 -64.4 1.33e-15 0.774 0 8.37 589 World Transportation - 5 1e+04 868 -5.09e+03 0.774 0 1.12e+04 1.18e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 27.5 -65.1 3.79 0.0817 0 0 0 test.phys initStep - 1 27.5 -65.1 3.79 0 0.0817 0.00102 0.00102 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 9.6 0.145 0 0 0 test.phys initStep - 1 -0.000323 0.000765 9.6 0 0.145 0.00147 0.00147 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 21.1 0.914 0 21.1 521 test.phys biasWrapper(hadElastic) - 3 -7.72 0.114 24.2 0.91 0.00361 8.33 529 test.phys biasWrapper(hadElastic) - 4 -254 0.729 200 0.91 0 303 832 World Transportation - 5 -1e+04 25 7.15e+03 0.91 0 1.2e+04 1.28e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 21.1 0.0863 0 0 0 test.phys initStep - 1 0.000663 -9.82e-06 21.1 0 0.0863 0.00105 0.00105 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 103 0.82 0 103 603 test.phys biasWrapper(hadElastic) - 3 -13.1 -17 94.7 0.715 0 23.1 626 test.phys biasWrapper(hadElastic) - 4 -44.5 14.6 73.9 0.641 0 49.1 675 test.phys biasWrapper(hadElastic) - 5 -39.2 18.9 66.8 0.621 0.0197 9.91 685 test.phys biasWrapper(hadElastic) - 6 -40.7 104 0 0.621 0 108 793 World Transportation - 7 -210 1e+04 -7.81e+03 0.621 0 1.26e+04 1.34e+04 OutOfWorld Transportation + 2 0 0 36.2 0.931 0.0687 36.2 536 test.phys biasWrapper(hadElastic) + 3 2.4 -11.6 43.2 0.928 0.00333 13.8 550 test.phys biasWrapper(hadElastic) + 4 6.17 -23.3 54.4 0.716 0 16.5 567 test.phys biasWrapper(hadElastic) + 5 18 50.9 37.2 0.701 0.0154 77 644 test.phys biasWrapper(hadElastic) + 6 20.1 53.7 37.4 0.536 0 3.53 647 test.phys biasWrapper(hadElastic) + 7 15.9 32.6 43.5 0.529 0.00741 22.3 669 test.phys biasWrapper(hadElastic) + 8 -9.96 -2.12 51.3 0.526 0.00326 44 713 test.phys biasWrapper(hadElastic) + 9 -103 -104 119 0.445 0 154 868 test.phys biasWrapper(hadElastic) + 10 -113 -146 0 0.445 0 127 995 World Transportation + 11 -935 -3.68e+03 -1e+04 0.445 0 1.06e+04 1.16e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -44.5 14.6 73.9 0.0739 0 0 0 test.phys initStep - 1 -44.5 14.6 73.9 0 0.0739 0.000953 0.000953 test.phys ionIoni + 0 -103 -104 119 0.0804 0 0 0 test.phys initStep + 1 -103 -104 119 0 0.0804 0.00101 0.00101 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -13.1 -17 94.7 0.106 0 0 0 test.phys initStep - 1 -13.1 -17 94.7 0 0.106 0.0012 0.0012 test.phys ionIoni + 0 20.1 53.7 37.4 0.164 0 0 0 test.phys initStep + 1 20.1 53.7 37.4 0 0.164 0.00159 0.00159 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 103 0.18 0 0 0 test.phys initStep - 1 0.00049 0.000636 103 0 0.18 0.00168 0.00168 test.phys ionIoni + 0 6.17 -23.3 54.4 0.212 0 0 0 test.phys initStep + 1 6.17 -23.3 54.4 0 0.212 0.0018 0.0018 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 @@ -2906,10 +3442,20 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -500 1 0 0 0 World initStep 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 94.7 0.933 0.067 94.7 595 test.phys biasWrapper(hadElastic) - 3 35.2 27.7 122 0.915 0.0178 52.4 647 test.phys biasWrapper(hadElastic) - 4 58.1 86.6 200 0.915 0 100 748 World Transportation - 5 2.94e+03 7.5e+03 1e+04 0.915 0 1.26e+04 1.34e+04 OutOfWorld Transportation + 2 0 0 33.5 0.971 0.0289 33.5 533 test.phys biasWrapper(hadElastic) + 3 -35.6 -31.8 96.4 0.893 0 79 612 test.phys biasWrapper(hadElastic) + 4 -15.1 -50.4 117 0.883 0.00965 34.3 647 test.phys biasWrapper(hadElastic) + 5 6.81 -82.4 176 0.868 0.0152 70.8 718 test.phys biasWrapper(hadElastic) + 6 31.1 -120 200 0.868 0 50.8 768 World Transportation + 7 6.41e+03 -1e+04 6.55e+03 0.868 0 1.34e+04 1.41e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -35.6 -31.8 96.4 0.078 0 0 0 test.phys initStep + 1 -35.6 -31.8 96.4 0 0.078 0.000987 0.000987 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 @@ -2918,74 +3464,176 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -500 1 0 0 0 World initStep 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 98.9 0.869 0 98.9 599 test.phys biasWrapper(hadElastic) - 3 -0.942 13.5 99.3 0.658 0 13.6 612 test.phys biasWrapper(hadElastic) - 4 1.27 -56.6 125 0.534 0 74.6 687 test.phys biasWrapper(hadElastic) - 5 145 28.5 130 0.493 0.0408 167 855 test.phys biasWrapper(hadElastic) - 6 145 48 124 0.427 0.0663 20.4 875 test.phys biasWrapper(hadElastic) - 7 -5.19 66.8 200 0.427 0 169 1.04e+03 World Transportation - 8 -1e+04 1.32e+03 5.25e+03 0.427 0 1.13e+04 1.23e+04 OutOfWorld Transportation + 2 0 0 35.2 0.845 0 35.2 535 test.phys biasWrapper(hadElastic) + 3 -6.67 -3.08 33.9 0.754 0 7.45 543 test.phys biasWrapper(hadElastic) + 4 -38.9 21 75.4 0.571 0 57.7 600 test.phys biasWrapper(hadElastic) + 5 -19.6 -11.2 52.6 0.547 0.0249 43.9 644 test.phys biasWrapper(hadElastic) + 6 7.71 -30.8 58 0.528 0.0183 34 678 test.phys biasWrapper(hadElastic) + 7 75.6 -147 0 0.528 0 147 825 World Transportation + 8 5.82e+03 -1e+04 -4.91e+03 0.528 0 1.24e+04 1.32e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.27 -56.6 125 0.124 0 0 0 test.phys initStep - 1 1.27 -56.6 125 0 0.124 0.00133 0.00133 test.phys ionIoni + 0 -38.9 21 75.4 0.183 0 0 0 test.phys initStep + 1 -38.9 21 75.4 0 0.183 0.00169 0.00169 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.942 13.5 99.3 0.211 0 0 0 test.phys initStep - 1 -0.942 13.5 99.3 0 0.211 0.0018 0.0018 test.phys ionIoni + 0 -6.67 -3.08 33.9 0.091 0 0 0 test.phys initStep + 1 -6.67 -3.08 33.9 0 0.091 0.00109 0.00109 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 98.9 0.131 0 0 0 test.phys initStep - 1 5.65e-05 -0.000811 98.9 0 0.131 0.00138 0.00138 test.phys ionIoni + 0 0 0 35.2 0.155 0 0 0 test.phys initStep + 1 0.000756 0.00035 35.2 0 0.155 0.00153 0.00153 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 80.9 99.9 0 80.9 581 test.phys biasWrapper(hadElastic) - 3 -0.0698 -6.01 124 99.3 0 43.7 625 test.phys biasWrapper(hadElastic) - 4 -1.63 -4.12 141 98.9 0 16.6 641 test.phys biasWrapper(hadElastic) - 5 5.66 6.07 200 98.9 0 60.7 702 World Transportation - 6 1.21e+03 1.69e+03 1e+04 98.9 0 1e+04 1.07e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.63 -4.12 141 0.367 0 0 0 test.phys initStep - 1 -1.63 -4.12 141 0 0.367 0.00217 0.00217 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0698 -6.01 124 0.542 0 0 0 test.phys initStep - 1 -0.069 -6.02 124 0 0.542 0.00244 0.00244 test.phys ionIoni + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 28.7 0.888 0 28.7 529 test.phys biasWrapper(hadElastic) + 3 -250 -26.1 73.1 0.83 0.0576 256 784 test.phys biasWrapper(hadElastic) + 4 -321 -83.4 0 0.83 0 117 901 World Transportation + 5 -1e+04 -7.93e+03 -9.99e+03 0.83 0 1.6e+04 1.69e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 80.9 0.144 0 0 0 test.phys initStep - 1 1.47e-05 0.00127 80.9 0 0.144 0.00146 0.00146 test.phys ionIoni + 0 0 0 28.7 0.112 0 0 0 test.phys initStep + 1 0.000765 7.96e-05 28.7 0 0.112 0.00125 0.00125 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 46.6 0.859 0 46.6 547 test.phys biasWrapper(hadElastic) + 3 1.45 2.29 46.4 0.839 0.0206 2.71 549 test.phys biasWrapper(hadElastic) + 4 17.4 10.4 40.6 0.743 0 18.8 568 test.phys biasWrapper(hadElastic) + 5 34.3 -19.2 26.9 0.694 0.0492 36.7 605 test.phys biasWrapper(hadElastic) + 6 24.9 -49.7 34.9 0.69 0.0039 32.9 638 test.phys biasWrapper(hadElastic) + 7 24.2 -52.7 36.6 0.682 0.00755 3.55 641 test.phys biasWrapper(hadElastic) + 8 -17.6 -112 65.3 0.619 0.0636 78.1 719 test.phys biasWrapper(hadElastic) + 9 0.00626 -126 91.8 0.566 0.0532 34.9 754 test.phys biasWrapper(hadElastic) + 10 18.5 -108 104 0.484 0 29.2 783 test.phys biasWrapper(hadElastic) + 11 4.15 -113 128 0.443 0.0412 28.4 812 test.phys biasWrapper(hadElastic) + 12 39.9 -96.5 184 0.43 0.0131 67.8 880 test.phys biasWrapper(hadElastic) + 13 44.8 -99.1 188 0.417 0.0126 7.12 887 test.phys biasWrapper(hadElastic) + 14 353 -213 200 0.417 0 329 1.22e+03 World Transportation + 15 1e+04 -3.78e+03 570 0.417 0 1.03e+04 1.15e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 18.5 -108 104 0.0811 0 0 0 test.phys initStep + 1 18.5 -108 104 0 0.0811 0.00101 0.00101 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.4 10.4 40.6 0.0959 0 0 0 test.phys initStep + 1 17.4 10.4 40.6 0 0.0959 0.00113 0.00113 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 46.6 0.141 0 0 0 test.phys initStep + 1 -0.000442 -0.000698 46.6 0 0.141 0.00144 0.00144 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 103 0.973 0.0268 103 603 test.phys biasWrapper(hadElastic) + 3 -13.7 11.4 128 0.822 0 30.5 633 test.phys biasWrapper(hadElastic) + 4 -30.1 -29.5 128 0.737 0 44.1 677 test.phys biasWrapper(hadElastic) + 5 -30.2 -30.1 131 0.726 0.0104 2.4 680 test.phys biasWrapper(hadElastic) + 6 -22.4 -41.8 150 0.62 0 24 704 test.phys biasWrapper(hadElastic) + 7 -185 -31 200 0.62 0 170 874 World Transportation + 8 -1e+04 622 3.22e+03 0.62 0 1.03e+04 1.12e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -22.4 -41.8 150 0.107 0 0 0 test.phys initStep + 1 -22.4 -41.8 150 0 0.107 0.00121 0.00121 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -30.1 -29.5 128 0.0854 0 0 0 test.phys initStep + 1 -30.1 -29.5 128 0 0.0854 0.00105 0.00105 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -13.7 11.4 128 0.151 0 0 0 test.phys initStep + 1 -13.7 11.4 128 0 0.151 0.00151 0.00151 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 67 0.882 0 67 567 test.phys biasWrapper(hadElastic) + 3 266 223 113 0.855 0.0276 350 917 test.phys biasWrapper(hadElastic) + 4 276 239 131 0.674 0 25.9 943 test.phys biasWrapper(hadElastic) + 5 276 242 76 0.636 0.0383 54.9 998 test.phys biasWrapper(hadElastic) + 6 279 247 72.5 0.616 0.0199 6.48 1e+03 test.phys biasWrapper(hadElastic) + 7 286 271 0 0.616 0 76.7 1.08e+03 World Transportation + 8 1.21e+03 3.59e+03 -1e+04 0.616 0 1.06e+04 1.17e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 276 239 131 0.18 0 0 0 test.phys initStep + 1 276 239 131 0 0.18 0.00168 0.00168 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 67 0.118 0 0 0 test.phys initStep + 1 -0.000601 -0.000504 67 0 0.118 0.00129 0.00129 test.phys ionIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ********************************************************************************************************* * G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 @@ -3014,17 +3662,36 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -500 100 0 0 0 World initStep 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 167 99.7 0 167 667 test.phys biasWrapper(hadElastic) - 3 -5.29 -3.99 200 99.7 0 33.2 701 World Transportation - 4 -1.6e+03 -1.21e+03 1e+04 99.7 0 1e+04 1.07e+04 OutOfWorld Transportation + 2 0 0 200 100 0 200 700 World Transportation + 3 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 14.6 99.4 0 14.6 515 test.phys biasWrapper(hadElastic) + 3 -4.24 8.92 49.5 99.1 0 36.3 551 test.phys biasWrapper(hadElastic) + 4 0.642 22.2 200 99.1 0 151 702 World Transportation + 5 319 889 1e+04 99.1 0 9.84e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -4.24 8.92 49.5 0.362 0 0 0 test.phys initStep + 1 -4.25 8.92 49.5 0 0.362 0.00216 0.00216 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 167 0.305 0 0 0 test.phys initStep - 1 0.00156 0.00117 167 0 0.305 0.00206 0.00206 test.phys ionIoni + 0 0 0 14.6 0.57 0 0 0 test.phys initStep + 1 0.00103 -0.00217 14.6 0 0.57 0.00247 0.00247 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 @@ -3033,465 +3700,201 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -500 100 0 0 0 World initStep 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 4.67 99.8 0 4.67 505 test.phys biasWrapper(hadElastic) - 3 29.6 -0.761 200 99.8 0 198 702 World Transportation - 4 1.51e+03 -38.9 1e+04 99.8 0 9.91e+03 1.06e+04 OutOfWorld Transportation + 2 0 0 38 0 0 38 538 test.phys biasWrapper(neutronInelastic) ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 +* G4Track Information: Particle = C13, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 4.67 0.171 0 0 0 test.phys initStep - 1 -0.00145 3.73e-05 4.67 0 0.171 0.00164 0.00164 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 84.6 0 0 84.6 585 test.phys biasWrapper(neutronInelastic) - -********************************************************************************************************* -* G4Track Information: Particle = Be8, Track ID = 8, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 84.6 2.5 0 0 0 test.phys initStep - 1 -0.0057 0.0005 84.7 0 2.5 0.00604 0.00604 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = alpha, Track ID = 7, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 84.6 2.46 0 0 0 test.phys initStep - 1 0.0117 0.0116 84.6 0 2.46 0.0166 0.0166 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 84.6 0.13 0 0 0 test.phys initStep - 1 -9.67 -33.5 99.1 0.129 0 37.8 37.8 test.phys biasWrapper(compt) - 2 -33.1 -90.6 111 0.104 0 62.9 101 test.phys biasWrapper(compt) - 3 -54.2 -83.9 106 0.0924 0 22.9 124 test.phys biasWrapper(compt) - 4 -58.6 -37.8 101 0.0911 0 46.6 170 test.phys biasWrapper(compt) - 5 -9.68 249 159 0.0907 0 297 467 test.phys biasWrapper(compt) - 6 -8.94 293 175 0.0796 0 47.2 514 test.phys biasWrapper(compt) - 7 -135 322 180 0.077 0 129 643 test.phys biasWrapper(compt) - 8 -164 355 196 0.0703 0 46.9 690 test.phys biasWrapper(compt) - 9 -163 375 184 0.0695 0 23.5 714 test.phys biasWrapper(compt) - 10 -151 411 174 0.0677 0 40.2 754 test.phys biasWrapper(compt) - 11 -109 448 129 0.0583 0 71.6 826 test.phys biasWrapper(compt) - 12 -90.8 481 200 0.0583 0 80.2 906 World Transportation - 13 2.36e+03 5.03e+03 1e+04 0.0583 0 1.11e+04 1.2e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -109 448 129 0.0094 0 0 0 test.phys initStep - 1 -109 448 129 0 0.0094 0.00319 0.00319 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -151 411 174 0.0018 0 0 0 test.phys initStep - 1 -151 411 174 0 0.0018 0.000201 0.000201 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -163 375 184 0.000811 0 0 0 test.phys initStep - 1 -163 375 184 0 0.000811 6.22e-05 6.22e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -164 355 196 0.00672 0 0 0 test.phys initStep - 1 -164 355 196 0 0.00672 0.00178 0.00178 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -135 322 180 0.00258 0 0 0 test.phys initStep - 1 -135 322 180 0 0.00258 0.000356 0.000356 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -8.94 293 175 0.0112 0 0 0 test.phys initStep - 1 -8.93 293 175 0 0.0112 0.00433 0.00433 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -9.68 249 159 0.000377 0 0 0 test.phys initStep - 1 -9.68 249 159 0 0.000377 2.41e-05 2.41e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -58.6 -37.8 101 0.00127 0 0 0 test.phys initStep - 1 -58.6 -37.8 101 0 0.00127 0.000118 0.000118 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -54.2 -83.9 106 0.0112 0 0 0 test.phys initStep - 1 -54.2 -83.9 106 0 0.0112 0.00436 0.00436 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -33.1 -90.6 111 0.0254 0 0 0 test.phys initStep - 1 -33.1 -90.6 111 0 0.0254 0.0183 0.0183 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -9.67 -33.5 99.1 0.000801 0 0 0 test.phys initStep - 1 -9.67 -33.5 99.1 0 0.000801 6.13e-05 6.13e-05 test.phys eIoni + 0 0 0 38 1.92 0 0 0 test.phys initStep + 1 -9.82e-05 -0.00259 38 0 1.92 0.00385 0.00385 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 84.6 0.518 0 0 0 test.phys initStep - 1 -20.2 37.4 122 0.275 0 56.5 56.5 test.phys biasWrapper(compt) - 2 -381 -139 183 0.17 0 406 462 test.phys biasWrapper(compt) - 3 -411 -58.9 141 0.158 0 95.4 558 test.phys biasWrapper(compt) - 4 -415 -43.4 104 0.147 0 40.4 598 test.phys biasWrapper(compt) - 5 -421 146 8.1 0.113 0 212 810 test.phys biasWrapper(compt) - 6 -422 141 0 0.113 0 9.34 819 World Transportation - 7 -1.66e+03 -5.45e+03 -1e+04 0.113 0 1.15e+04 1.23e+04 OutOfWorld Transportation + 0 0 0 38 0.35 0 0 0 test.phys initStep + 1 -61.6 -42.3 22.1 0.186 0 76.4 76.4 test.phys biasWrapper(compt) + 2 -79.4 0.491 80.3 0.11 0 74.4 151 test.phys biasWrapper(compt) + 3 -40.6 -61.4 42.5 0.108 0 82.2 233 test.phys biasWrapper(compt) + 4 52.7 -132 7.8 0.101 0 122 355 test.phys biasWrapper(compt) + 5 55.4 -135 7.11e-15 0.101 0 8.8 364 World Transportation + 6 3.5e+03 -4.05e+03 -1e+04 0.101 0 1.13e+04 1.16e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 5 +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 5 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -421 146 8.1 0.0337 0 0 0 test.phys initStep - 1 -421 146 8.11 0 0.0337 0.0303 0.0303 test.phys eIoni + 0 52.7 -132 7.8 0.00673 0 0 0 test.phys initStep + 1 52.7 -132 7.8 0 0.00673 0.00179 0.00179 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 5 +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 5 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -415 -43.4 104 0.011 0 0 0 test.phys initStep - 1 -415 -43.4 104 0 0.011 0.00418 0.00418 test.phys eIoni + 0 -40.6 -61.4 42.5 0.00169 0 0 0 test.phys initStep + 1 -40.6 -61.4 42.5 0 0.00169 0.000183 0.000183 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 5 +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 5 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -411 -58.9 141 0.0126 0 0 0 test.phys initStep - 1 -411 -58.9 141 0 0.0126 0.0053 0.0053 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 5 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -381 -139 183 0.105 0 0 0 test.phys initStep - 1 -381 -139 183 0 0.105 0.217 0.217 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 5 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -20.2 37.4 122 0.243 0 0 0 test.phys initStep - 1 -20.1 37.7 122 0 0.243 0.85 0.85 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 84.6 1.31 0 0 0 test.phys initStep - 1 7.06 -11.2 0 1.31 0 85.7 85.7 World Transportation - 2 841 -1.33e+03 -1e+04 1.31 0 1.01e+04 1.02e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 84.6 22.9 0 0 0 test.phys initStep - 1 -42 -62.2 200 22.9 0 138 138 World Transportation - 2 -3.61e+03 -5.35e+03 1e+04 22.9 0 1.17e+04 1.18e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 84.6 50.3 0 0 0 test.phys initStep - 1 3.03 -0.203 90.3 44.3 6 6.43 6.43 test.phys hIoni - 2 5.51 -0.383 94.8 38.9 5.36 5.15 11.6 test.phys hIoni - 3 7.47 -0.523 98.4 34.3 4.64 4.11 15.7 test.phys hIoni - 4 9.01 -0.644 101 30.3 3.97 3.3 19 test.phys hIoni - 5 10.2 -0.695 104 26.5 3.83 2.67 21.7 test.phys hIoni - 6 11.2 -0.762 106 22.9 3.57 2.13 23.8 test.phys hIoni - 7 11.9 -0.814 107 20 2.93 1.68 25.5 test.phys hIoni - 8 12.6 -0.886 108 17.5 2.49 1.35 26.8 test.phys hIoni - 9 13 -0.938 109 15.1 2.36 1.09 27.9 test.phys hIoni - 10 13.4 -0.97 110 12.9 2.23 0.878 28.8 test.phys hIoni - 11 13.7 -0.965 111 11 1.93 0.698 29.5 test.phys hIoni - 12 13.9 -0.961 111 9.07 1.89 0.561 30 test.phys hIoni - 13 14.1 -0.963 112 7.42 1.66 0.444 30.5 test.phys hIoni - 14 14.2 -0.972 112 5.8 1.61 0.355 30.8 test.phys hIoni - 15 14.3 -0.984 112 4.22 1.58 0.28 31.1 test.phys hIoni - 16 14.4 -0.991 112 2.6 1.62 0.215 31.3 test.phys hIoni - 17 14.4 -0.994 113 0.694 1.91 0.145 31.5 test.phys hIoni - 18 14.4 -0.995 113 0.111 0.583 0.0201 31.5 test.phys hIoni - 19 14.4 -0.995 113 0.0295 0.0815 0.00245 31.5 test.phys hIoni - 20 14.4 -0.995 113 0.00623 0.0232 0.00107 31.5 test.phys hIoni - 21 14.4 -0.995 113 0 0.00623 0.000489 31.5 test.phys hIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 105 0 0 105 605 test.phys biasWrapper(neutronInelastic) - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 105 0.942 0 0 0 test.phys initStep - 1 -0.00068 -0.00261 105 0 0.942 0.00281 0.00281 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 105 0.0743 0 0 0 test.phys initStep - 1 -122 47.3 197 0.0655 0 160 160 test.phys biasWrapper(compt) - 2 -122 43.4 200 0.0655 0 5.14 165 World Transportation - 3 1.26e+03 -1e+04 8.93e+03 0.0655 0 1.34e+04 1.35e+04 OutOfWorld Transportation + 0 -79.4 0.491 80.3 0.0761 0 0 0 test.phys initStep + 1 -79.4 0.531 80.4 0 0.0761 0.125 0.125 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 7, Parent ID = 5 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -122 47.3 197 0.00884 0 0 0 test.phys initStep - 1 -122 47.3 197 0 0.00884 0.00287 0.00287 test.phys eIoni + 0 -61.6 -42.3 22.1 0.164 0 0 0 test.phys initStep + 1 -61.7 -42.5 22 0 0.164 0.454 0.454 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 105 1.1 0 0 0 test.phys initStep - 1 -154 50.4 34.7 0.868 0 177 177 test.phys biasWrapper(compt) - 2 -213 36.2 0 0.868 0 69.8 246 World Transportation - 3 -1e+04 -2.32e+03 -5.76e+03 0.868 0 1.16e+04 1.18e+04 OutOfWorld Transportation + 0 0 0 38 3.69 0 0 0 test.phys initStep + 1 164 -122 200 3.69 0 261 261 World Transportation + 2 1e+04 -7.43e+03 9.9e+03 3.69 0 1.56e+04 1.59e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 4 +* G4Track Information: Particle = neutron, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -154 50.4 34.7 0.233 0 0 0 test.phys initStep - 1 -154 50.7 34.7 0 0.233 0.795 0.795 test.phys eIoni + 0 0 0 38 4.75 0 0 0 test.phys initStep + 1 -2.39 -4.97 34.7 0 0 6.41 6.41 test.phys biasWrapper(neutronInelastic) ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 +* G4Track Information: Particle = C14, Track ID = 14, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 105 2.95 0 0 0 test.phys initStep - 1 17 -95.3 200 2.95 0 135 135 World Transportation - 2 1.78e+03 -9.95e+03 1e+04 2.95 0 1.4e+04 1.41e+04 OutOfWorld Transportation + 0 -2.39 -4.97 34.7 0.596 0 0 0 test.phys initStep + 1 -2.39 -4.98 34.7 0 0.596 0.00295 0.00295 test.phys ionIoni ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +* G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 105 94.9 0 0 0 test.phys initStep - 1 6.09 23.3 169 0 0 67.8 67.8 test.phys biasWrapper(neutronInelastic) - -********************************************************************************************************* -* G4Track Information: Particle = C12, Track ID = 15, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.09 23.3 169 1.02 0 0 0 test.phys initStep - 1 6.08 23.3 169 0 1.02 0.00303 0.00303 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.09 23.3 169 0.0806 0 0 0 test.phys initStep - 1 23.2 59.5 170 0.0804 0 40.1 40.1 test.phys biasWrapper(compt) - 2 24.8 65.7 170 0.0697 0 6.41 46.5 test.phys biasWrapper(compt) - 3 46.9 59.7 200 0.0697 0 37.8 84.3 World Transportation - 4 7.24e+03 -1.9e+03 1e+04 0.0697 0 1.23e+04 1.24e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 24.8 65.7 170 0.0108 0 0 0 test.phys initStep - 1 24.8 65.7 170 0 0.0108 0.00405 0.00405 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 23.2 59.5 170 0.000213 0 0 0 test.phys initStep - 1 23.2 59.5 170 0 0.000213 1.39e-05 1.39e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.09 23.3 169 0.865 0 0 0 test.phys initStep - 1 112 -64.5 104 0.262 0 152 152 test.phys biasWrapper(compt) - 2 -27.3 -46.9 0 0.262 0 174 327 World Transportation - 3 -1e+04 1.21e+03 -7.41e+03 0.262 0 1.25e+04 1.28e+04 OutOfWorld Transportation + 0 -2.39 -4.97 34.7 0.268 0 0 0 test.phys initStep + 1 -52 5.13 93.9 0.15 0 77.8 77.8 test.phys biasWrapper(compt) + 2 -35.8 9.92 95.4 0.117 0 16.9 94.7 test.phys biasWrapper(compt) + 3 -36.2 11.1 96.2 0.109 0 1.49 96.2 test.phys biasWrapper(compt) + 4 -30.4 165 64 0.105 0 157 254 test.phys biasWrapper(compt) + 5 -98.4 272 7.11e-15 0.105 0 142 395 World Transportation + 6 -6.29e+03 1e+04 -5.83e+03 0.105 0 1.29e+04 1.33e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 18, Parent ID = 13 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 112 -64.5 104 0.603 0 0 0 test.phys initStep - 1 113 -65.3 103 0.335 0.268 1.99 1.99 test.phys eIoni - 2 114 -64.9 103 0.1 0.235 1.3 3.29 test.phys eIoni - 3 114 -64.9 103 0 0.1 0.2 3.49 test.phys eIoni + 0 -30.4 165 64 0.00421 0 0 0 test.phys initStep + 1 -30.4 165 64 0 0.00421 0.000803 0.000803 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 12, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 13 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.09 23.3 169 2.46 0 0 0 test.phys initStep - 1 6.03 23.2 169 0.494 1.96 0.137 0.137 test.phys hIoni - 2 6.02 23.2 169 0.0367 0.457 0.0122 0.15 test.phys hIoni - 3 6.02 23.2 169 0.0102 0.0265 0.00121 0.151 test.phys hIoni - 4 6.02 23.2 169 0 0.0102 0.00061 0.151 test.phys hIoni + 0 -36.2 11.1 96.2 0.0081 0 0 0 test.phys initStep + 1 -36.2 11.1 96.2 0 0.0081 0.00246 0.00246 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 13 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.09 23.3 169 4.71 0 0 0 test.phys initStep - 1 -510 -119 122 1.56 0 538 538 test.phys biasWrapper(compt) - 2 -530 -112 124 0.58 0 21.1 559 test.phys biasWrapper(compt) - 3 -541 25.9 180 0.362 0 149 707 test.phys biasWrapper(compt) - 4 -530 30.4 200 0.362 0 23.5 731 World Transportation - 5 4.57e+03 2.2e+03 1e+04 0.362 0 1.13e+04 1.2e+04 OutOfWorld Transportation + 0 -35.8 9.92 95.4 0.0328 0 0 0 test.phys initStep + 1 -35.8 9.92 95.4 0 0.0328 0.0288 0.0288 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 11 +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 13 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -541 25.9 180 0.218 0 0 0 test.phys initStep - 1 -541 26.2 179 0 0.218 0.716 0.716 test.phys eIoni + 0 -52 5.13 93.9 0.118 0 0 0 test.phys initStep + 1 -52.1 5.13 93.9 0 0.118 0.264 0.264 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 11 +* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -530 -112 124 0.982 0 0 0 test.phys initStep - 1 -532 -111 124 0.585 0.396 2.68 2.68 test.phys eIoni - 2 -533 -112 124 0.242 0.343 1.95 4.63 test.phys eIoni - 3 -533 -112 124 0 0.242 0.846 5.48 test.phys eIoni + 0 -2.39 -4.97 34.7 1.92 0 0 0 test.phys initStep + 1 -29.5 42.8 184 1.39 0 159 159 test.phys biasWrapper(compt) + 2 -38 42.5 200 1.39 0 17.8 177 World Transportation + 3 -5.42e+03 -162 1e+04 1.39 0 1.12e+04 1.14e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 11 +* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 12 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -510 -119 122 3.15 0 0 0 test.phys initStep - 1 -515 -122 121 2.53 0.619 6.27 6.27 test.phys eIoni - 2 -517 -126 122 1.9 0.628 5.25 11.5 test.phys eIoni - 3 -518 -130 124 1.41 0.488 4.22 15.7 test.phys eIoni - 4 -517 -132 124 1.01 0.4 3.41 19.1 test.phys eIoni - 5 -516 -133 124 0.889 0.117 1.15 20.3 test.phys eBrem - 6 -515 -134 123 0.496 0.393 2.52 22.8 test.phys eIoni - 7 -514 -134 124 0.225 0.271 1.76 24.6 test.phys eIoni - 8 -513 -134 124 0 0.225 0.755 25.3 test.phys eIoni + 0 -29.5 42.8 184 0.529 0 0 0 test.phys initStep + 1 -29 43.7 185 0.276 0.253 1.83 1.83 test.phys eIoni + 2 -28.8 43.5 186 0 0.276 1.03 2.87 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 22, Parent ID = 19 +* G4Track Information: Particle = proton, Track ID = 11, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -516 -133 124 0.00518 0 0 0 test.phys initStep - 1 -516 -133 124 0 0.000405 0.29 0.29 test.phys biasWrapper(phot) + 0 -2.39 -4.97 34.7 2.53 0 0 0 test.phys initStep + 1 -2.27 -5.03 34.8 0.678 1.85 0.141 0.141 test.phys hIoni + 2 -2.25 -5.04 34.8 0.0442 0.633 0.0194 0.161 test.phys hIoni + 3 -2.25 -5.04 34.8 0.019 0.0252 0.00135 0.162 test.phys hIoni + 4 -2.25 -5.04 34.8 0.00881 0.0102 0.000831 0.163 test.phys hIoni + 5 -2.25 -5.04 34.8 0.00721 0.0016 0.000579 0.164 test.phys hIoni + 6 -2.25 -5.04 34.8 0 0.00721 0.000526 0.164 test.phys hIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 22 +* G4Track Information: Particle = proton, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -516 -133 124 0.00477 0 0 0 test.phys initStep - 1 -516 -133 124 0 0.00477 0.000993 0.000993 test.phys eIoni + 0 0 0 38 81.7 0 0 0 test.phys initStep + 1 1.47 8.36 50.5 71.9 9.86 15.2 15.2 test.phys hIoni + 2 2.63 15.1 60.5 63.3 8.55 12.1 27.2 test.phys hIoni + 3 3.54 20.5 68.5 56.1 7.24 9.66 36.9 test.phys hIoni + 4 4.18 24.7 75 49.3 6.78 7.79 44.7 test.phys hIoni + 5 4.54 28.1 80.2 43.5 5.76 6.21 50.9 test.phys hIoni + 6 4.72 30.8 84.4 38.3 5.21 5 55.9 test.phys hIoni + 7 4.85 33 87.7 33.5 4.77 4 59.9 test.phys hIoni + 8 4.88 34.8 90.3 29.1 4.43 3.18 63.1 test.phys hIoni + 9 4.87 36.2 92.4 25.4 3.67 2.5 65.6 test.phys hIoni + 10 4.85 37.4 94 22.3 3.11 1.99 67.6 test.phys hIoni + 11 4.8 38.3 95.3 19.4 2.91 1.61 69.2 test.phys hIoni + 12 4.79 39 96.4 16.9 2.54 1.29 70.5 test.phys hIoni + 13 4.79 39.4 97 15.2 1.5 0.673 71.1 test.phys hadElastic + 14 5.1 40 97.5 13.1 2.06 0.882 72 test.phys hIoni + 15 5.37 40.5 97.9 11.1 1.96 0.714 72.7 test.phys hIoni + 16 5.58 40.9 98.3 9.22 1.91 0.573 73.3 test.phys hIoni + 17 5.74 41.2 98.6 7.5 1.72 0.453 73.8 test.phys hIoni + 18 5.87 41.5 98.8 5.85 1.66 0.36 74.1 test.phys hIoni + 19 5.96 41.7 99 4.29 1.56 0.282 74.4 test.phys hIoni + 20 6.05 41.8 99.1 2.63 1.65 0.218 74.6 test.phys hIoni + 21 6.11 41.9 99.2 0.717 1.92 0.147 74.8 test.phys hIoni + 22 6.11 41.9 99.2 0.0392 0.678 0.0211 74.8 test.phys hIoni + 23 6.11 41.9 99.2 0.00515 0.034 0.00126 74.8 test.phys hIoni + 24 6.11 41.9 99.2 0 0.00515 0.000444 74.8 test.phys hIoni ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 10, Parent ID = 2 +* G4Track Information: Particle = N14, Track ID = 20, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.09 23.3 169 15.1 0 0 0 test.phys initStep - 1 21.5 34.4 200 15.1 0 36.8 36.8 World Transportation - 2 4.84e+03 3.5e+03 1e+04 15.1 0 1.15e+04 1.15e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.09 23.3 169 58.1 0 0 0 test.phys initStep - 1 24.7 43.5 200 58.1 0 41.8 41.8 World Transportation - 2 5.82e+03 6.35e+03 1e+04 58.1 0 1.3e+04 1.31e+04 OutOfWorld Transportation + 0 4.79 39.4 97 0.219 0 0 0 test.phys initStep + 1 4.79 39.4 97 0 0.219 0.00183 0.00183 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 @@ -3500,17 +3903,17 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -500 100 0 0 0 World initStep 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 134 99.8 0 134 634 test.phys biasWrapper(hadElastic) - 3 8.78 4.65 200 99.8 0 66.6 701 World Transportation - 4 1.32e+03 696 1e+04 99.8 0 9.91e+03 1.06e+04 OutOfWorld Transportation + 2 0 0 21.2 99.2 0 21.2 521 test.phys biasWrapper(hadElastic) + 3 30.8 53.7 200 99.2 0 189 710 World Transportation + 4 1.72e+03 3e+03 1e+04 99.2 0 1.04e+04 1.11e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 134 0.17 0 0 0 test.phys initStep - 1 -0.00127 -0.000674 134 0 0.17 0.00162 0.00162 test.phys ionIoni + 0 0 0 21.2 0.832 0 0 0 test.phys initStep + 1 -0.00132 -0.0023 21.2 0 0.832 0.00273 0.00273 test.phys ionIoni ********************************************************************************************************* * G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 @@ -3519,88 +3922,384 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -500 100 0 0 0 World initStep 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 132 0 0 132 632 test.phys biasWrapper(neutronInelastic) + 2 0 0 135 100 0.0388 135 635 test.phys biasWrapper(hadElastic) + 3 4.55 0.462 199 0 0 64.1 699 test.phys biasWrapper(neutronInelastic) ********************************************************************************************************* -* G4Track Information: Particle = alpha, Track ID = 8, Parent ID = 1 +* G4Track Information: Particle = C12, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 4.33 0 0 0 test.phys initStep - 1 -0.0327 0.0202 132 0 4.33 0.039 0.039 test.phys ionIoni + 0 4.55 0.462 199 8.07 0 0 0 test.phys initStep + 1 4.55 0.458 199 0 8.07 0.0104 0.0104 test.phys ionIoni ********************************************************************************************************* -* G4Track Information: Particle = alpha, Track ID = 7, Parent ID = 1 +* G4Track Information: Particle = deuteron, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 4.26 0 0 0 test.phys initStep - 1 0.0335 -0.00165 132 0 4.26 0.038 0.038 test.phys ionIoni + 0 4.55 0.462 199 3.71 0 0 0 test.phys initStep + 1 4.69 0.531 199 1.32 2.39 0.156 0.156 test.phys hIoni + 2 4.72 0.548 199 0 1.32 0.0372 0.193 test.phys hIoni ********************************************************************************************************* -* G4Track Information: Particle = alpha, Track ID = 6, Parent ID = 1 +* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 10.4 0 0 0 test.phys initStep - 1 0.137 -0.0309 132 2.77 7.61 0.145 0.145 test.phys ionIoni - 2 0.155 -0.036 132 0 2.77 0.0197 0.164 test.phys ionIoni + 0 4.55 0.462 199 0.251 0 0 0 test.phys initStep + 1 47.9 172 170 0.151 0 179 179 test.phys biasWrapper(compt) + 2 82.2 149 184 0.115 0 43.3 222 test.phys biasWrapper(compt) + 3 81.4 149 185 0.115 0 1.26 224 test.phys biasWrapper(compt) + 4 73.1 146 200 0.115 0 17.3 241 World Transportation + 5 -5.43e+03 -2.21e+03 1e+04 0.115 0 1.15e+04 1.17e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 1.95 0 0 0 test.phys initStep - 1 -8.5 -15.1 200 1.95 0 69.9 69.9 World Transportation - 2 -1.24e+03 -2.19e+03 1e+04 1.95 0 1.01e+04 1.02e+04 OutOfWorld Transportation + 0 81.4 149 185 0.000346 0 0 0 test.phys initStep + 1 81.4 149 185 0 0.000346 2.19e-05 2.19e-05 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 4, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 4.03 0 0 0 test.phys initStep - 1 45.6 -34.4 130 3.35 0 57.2 57.2 test.phys biasWrapper(hadElastic) - 2 0.871 -59.4 200 3.35 0 86.9 144 World Transportation - 3 -6.26e+03 -3.55e+03 1e+04 3.35 0 1.21e+04 1.23e+04 OutOfWorld Transportation + 0 82.2 149 184 0.0356 0 0 0 test.phys initStep + 1 82.2 149 184 0 0.0356 0.0333 0.0333 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 9, Parent ID = 4 +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 45.6 -34.4 130 0.678 0 0 0 test.phys initStep - 1 45.6 -34.4 130 0 0.678 0.00259 0.00259 test.phys ionIoni + 0 47.9 172 170 0.1 0 0 0 test.phys initStep + 1 47.8 172 170 0 0.1 0.2 0.2 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 3, Parent ID = 1 +* G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 19.1 0 0 0 test.phys initStep - 1 -1.14 -0.257 133 16.6 2.46 1.25 1.25 test.phys hIoni - 2 -2.07 -0.449 133 14.3 2.34 1.01 2.27 test.phys hIoni - 3 -2.8 -0.6 133 12.2 2.14 0.809 3.07 test.phys hIoni - 4 -3.39 -0.728 134 10.2 1.95 0.644 3.72 test.phys hIoni - 5 -3.85 -0.823 134 8.45 1.76 0.513 4.23 test.phys hIoni - 6 -4.22 -0.9 134 6.71 1.74 0.409 4.64 test.phys hIoni - 7 -4.51 -0.955 134 5.06 1.64 0.321 4.96 test.phys hIoni - 8 -4.74 -0.994 134 3.47 1.6 0.249 5.21 test.phys hIoni - 9 -4.91 -1.02 134 1.74 1.73 0.185 5.4 test.phys hIoni - 10 -4.98 -1.04 134 0.0449 1.69 0.0853 5.48 test.phys hIoni - 11 -4.99 -1.04 134 0.0102 0.0346 0.00136 5.48 test.phys hIoni - 12 -4.99 -1.04 134 0 0.0102 0.000612 5.48 test.phys hIoni + 0 4.55 0.462 199 1.12 0 0 0 test.phys initStep + 1 0.947 -71.4 171 0.248 0 77.1 77.1 test.phys biasWrapper(compt) + 2 -44.9 -39.2 200 0.248 0 62.9 140 World Transportation + 3 -1e+04 6.94e+03 6.39e+03 0.248 0 1.36e+04 1.38e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.947 -71.4 171 0.871 0 0 0 test.phys initStep + 1 1.15 -73.2 171 0.376 0.495 2.49 2.49 test.phys eIoni + 2 0.989 -74 170 0.121 0.255 1.44 3.93 test.phys eIoni + 3 1.05 -74.1 170 0 0.121 0.275 4.2 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 36.1 0 0 0 test.phys initStep - 1 -51.3 20.4 192 36 0.0698 81.2 81.2 test.phys biasWrapper(hadElastic) - 2 -58 21.3 200 36 0 10.6 91.8 World Transportation - 3 -8.21e+03 1.2e+03 1e+04 36 0 1.28e+04 1.29e+04 OutOfWorld Transportation + 0 4.55 0.462 199 76.5 0 0 0 test.phys initStep + 1 5.48 0.815 200 76.5 0 1.35 1.35 World Transportation + 2 9.94e+03 3.77e+03 1e+04 76.5 0 1.45e+04 1.45e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 60.7 0 0 60.7 561 test.phys biasWrapper(neutronInelastic) + +********************************************************************************************************* +* G4Track Information: Particle = alpha, Track ID = 8, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 60.7 7.63 0 0 0 test.phys initStep + 1 -0.0834 -0.0404 60.7 0 7.63 0.0981 0.0981 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = alpha, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 60.7 4.46 0 0 0 test.phys initStep + 1 0.023 -0.0272 60.7 0 4.46 0.0408 0.0408 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = alpha, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 60.7 10.2 0 0 0 test.phys initStep + 1 -0.0255 0.13 60.8 2.49 7.76 0.143 0.143 test.phys ionIoni + 2 -0.0287 0.145 60.8 0 2.49 0.0169 0.16 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 60.7 2.51 0 0 0 test.phys initStep + 1 -6.39 -1.35 0 2.51 0 61.1 61.1 World Transportation + 2 -1.06e+03 -223 -1e+04 2.51 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 60.7 10.5 0 0 0 test.phys initStep + 1 2.1 -2.44 65.8 0 0 6.06 6.06 test.phys biasWrapper(neutronInelastic) + +********************************************************************************************************* +* G4Track Information: Particle = C14, Track ID = 12, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.1 -2.44 65.8 0.306 0 0 0 test.phys initStep + 1 2.1 -2.44 65.8 0 0.306 0.0024 0.0024 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.1 -2.44 65.8 1 0 0 0 test.phys initStep + 1 -60.6 -26.2 176 0.661 0 129 129 test.phys biasWrapper(compt) + 2 -64.5 -13.7 200 0.661 0 27.4 156 World Transportation + 3 -1.65e+03 5.05e+03 1e+04 0.661 0 1.11e+04 1.13e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 11 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -60.6 -26.2 176 0.341 0 0 0 test.phys initStep + 1 -61 -26.7 176 0.0894 0.252 1.32 1.32 test.phys eIoni + 2 -61 -26.7 176 0 0.0894 0.165 1.49 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.1 -2.44 65.8 3.84 0 0 0 test.phys initStep + 1 39.3 -4.33 55.2 3.57 0 38.7 38.7 test.phys biasWrapper(compt) + 2 165 -17.2 0 3.57 0 138 176 World Transportation + 3 1e+04 -1.03e+03 -4.33e+03 3.57 0 1.08e+04 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 10 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 39.3 -4.33 55.2 0.27 0 0 0 test.phys initStep + 1 39.6 -4.2 55.5 0.061 0.209 1 1 test.phys eIoni + 2 39.7 -4.19 55.5 0 0.061 0.0854 1.09 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = proton, Track ID = 9, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.1 -2.44 65.8 5.9 0 0 0 test.phys initStep + 1 2.01 -2.63 66 4.28 1.62 0.284 0.284 test.phys hIoni + 2 1.95 -2.76 66.2 2.66 1.62 0.218 0.502 test.phys hIoni + 3 1.9 -2.85 66.3 0.846 1.82 0.149 0.651 test.phys hIoni + 4 1.9 -2.87 66.3 0.0612 0.785 0.0271 0.678 test.phys hIoni + 5 1.9 -2.87 66.3 0.0141 0.0471 0.00164 0.679 test.phys hIoni + 6 1.9 -2.87 66.3 0.014 0.000114 0.00071 0.68 test.phys hIoni + 7 1.9 -2.87 66.3 0 0.014 0.000707 0.681 test.phys hIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 60.7 14.5 0 0 0 test.phys initStep + 1 197 -133 72.5 12.1 0 238 238 test.phys biasWrapper(hadElastic) + 2 178 -107 165 0 0 97.3 335 test.phys biasWrapper(neutronInelastic) + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 20, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 178 -107 165 0.155 0 0 0 test.phys initStep + 1 178 -107 165 0 0.155 0.00153 0.00153 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 19, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 178 -107 165 0.158 0 0 0 test.phys initStep + 1 190 -99.2 103 0.15 0 63.8 63.8 test.phys biasWrapper(compt) + 2 176 -96.4 68.5 0.125 0 37 101 test.phys biasWrapper(compt) + 3 78.6 -151 65.3 0.0935 0 112 213 test.phys biasWrapper(compt) + 4 78.5 -149 64.4 0.0935 0 1.73 214 test.phys biasWrapper(Rayl) + 5 80.1 -89 29.7 0.0784 0 69.5 284 test.phys biasWrapper(compt) + 6 78.8 -89 29.8 0.0717 0 1.26 285 test.phys biasWrapper(compt) + 7 73.3 -97.4 20.7 0.068 0 13.5 299 test.phys biasWrapper(compt) + 8 56.2 -93.4 6.77 0.059 0 22.4 321 test.phys biasWrapper(compt) + 9 41.9 -118 25.8 0.0531 0 34 355 test.phys biasWrapper(compt) + 10 30.1 -133 -7.11e-15 0.0531 0 32 387 World Transportation + 11 -4.53e+03 -5.89e+03 -1e+04 0.0531 0 1.24e+04 1.28e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 28, Parent ID = 19 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 41.9 -118 25.8 0.0059 0 0 0 test.phys initStep + 1 41.9 -118 25.8 0 0.0059 0.00143 0.00143 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 19 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 56.2 -93.4 6.77 0.00904 0 0 0 test.phys initStep + 1 56.2 -93.4 6.77 0 0.00904 0.00298 0.00298 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 19 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 73.3 -97.4 20.7 0.00365 0 0 0 test.phys initStep + 1 73.3 -97.4 20.7 0 0.00365 0.000632 0.000632 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 19 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 78.8 -89 29.8 0.00677 0 0 0 test.phys initStep + 1 78.8 -89 29.8 0 0.00677 0.00181 0.00181 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 19 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 80.1 -89 29.7 0.0151 0 0 0 test.phys initStep + 1 80.1 -89 29.7 0 0.0151 0.00729 0.00729 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 19 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 78.6 -151 65.3 0.0317 0 0 0 test.phys initStep + 1 78.5 -151 65.3 0 0.0317 0.0272 0.0272 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 19 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 176 -96.4 68.5 0.0249 0 0 0 test.phys initStep + 1 176 -96.4 68.5 0 0.0249 0.0178 0.0178 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 19 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 190 -99.2 103 0.00786 0 0 0 test.phys initStep + 1 190 -99.2 103 0 0.00786 0.00234 0.00234 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 18, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 178 -107 165 0.597 0 0 0 test.phys initStep + 1 178 -130 167 0.192 0 22.3 22.3 test.phys biasWrapper(compt) + 2 180 -127 166 0.126 0 3.3 25.6 test.phys biasWrapper(compt) + 3 228 -196 186 0.126 0 86.3 112 test.phys biasWrapper(compt) + 4 248 -218 200 0.126 0 33.2 145 World Transportation + 5 9.35e+03 -1e+04 6.36e+03 0.126 0 1.47e+04 1.49e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 31, Parent ID = 18 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 228 -196 186 0.000875 0 0 0 test.phys initStep + 1 228 -196 186 0 0.000875 6.91e-05 6.91e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 30, Parent ID = 18 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 180 -127 166 0.0653 0 0 0 test.phys initStep + 1 180 -127 166 0 0.0653 0.0962 0.0962 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 29, Parent ID = 18 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 178 -130 167 0.406 0 0 0 test.phys initStep + 1 178 -130 167 0.0674 0.338 1.53 1.53 test.phys eIoni + 2 178 -130 167 0 0.0674 0.101 1.63 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 178 -107 165 4.34 0 0 0 test.phys initStep + 1 249 -151 200 4.34 0 90.7 90.7 World Transportation + 2 1e+04 -6.05e+03 5.04e+03 4.34 0 1.24e+04 1.25e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 16, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 178 -107 165 6.83 0 0 0 test.phys initStep + 1 180 -107 200 6.83 0 35.5 35.5 World Transportation + 2 880 101 1e+04 6.83 0 9.83e+03 9.86e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 15, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 197 -133 72.5 2.43 0 0 0 test.phys initStep + 1 197 -133 72.5 0 2.43 0.00366 0.00366 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = proton, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 60.7 30.3 0 0 0 test.phys initStep + 1 -0.409 1.31 63 26.6 3.65 2.67 2.67 test.phys hIoni + 2 -0.719 2.41 64.8 23.4 3.25 2.15 4.82 test.phys hIoni + 3 -0.95 3.32 66.3 20.2 3.2 1.74 6.56 test.phys hIoni + 4 -1.13 4.03 67.4 17.7 2.48 1.37 7.93 test.phys hIoni + 5 -1.27 4.59 68.4 15.5 2.19 1.11 9.04 test.phys hIoni + 6 -1.38 5.06 69.2 13.4 2.13 0.912 9.95 test.phys hIoni + 7 -1.45 5.45 69.8 11.3 2.05 0.736 10.7 test.phys hIoni + 8 -1.54 5.76 70.3 9.46 1.88 0.586 11.3 test.phys hIoni + 9 -1.6 5.99 70.7 7.72 1.73 0.467 11.7 test.phys hIoni + 10 -1.65 6.19 71 6.11 1.61 0.371 12.1 test.phys hIoni + 11 -1.68 6.34 71.2 4.45 1.66 0.294 12.4 test.phys hIoni + 12 -1.69 6.44 71.4 2.88 1.57 0.224 12.6 test.phys hIoni + 13 -1.71 6.52 71.6 1.11 1.77 0.159 12.8 test.phys hIoni + 14 -1.71 6.54 71.6 0 1.11 0.0413 12.8 test.phys hIoni ********************************************************************************************************* * G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 @@ -3611,5 +4310,18 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 1 0 0 0 100 0 500 500 test.phys Transportation 2 0 0 200 100 0 200 700 World Transportation 3 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 200 100 0 200 700 World Transportation + 3 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/biasing/GB02/CMakeLists.txt b/examples/extended/biasing/GB02/CMakeLists.txt index 8654a3b033..b9f10386fd 100644 --- a/examples/extended/biasing/GB02/CMakeLists.txt +++ b/examples/extended/biasing/GB02/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(GB02project) #---------------------------------------------------------------------------- diff --git a/examples/extended/biasing/GB02/History b/examples/extended/biasing/GB02/History index d53af0bef0..38890eb59d 100644 --- a/examples/extended/biasing/GB02/History +++ b/examples/extended/biasing/GB02/History @@ -16,6 +16,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 Ben Morgan - GB02-V10-06-00 +- Migration to G4RunManagerFactory. + May 20, 2018 J. Allison - GB02-V10-04-01 - Remove G4UI_USE and G4VIS_USE. - Move instantiation of G4UIExecutive nearer to start of main. @@ -29,7 +32,7 @@ Nov 02, 2016 I. Hrivnacova - Added files description (for Doxygen) Jul 20, 2016 I. Hrivnacova -- Coding guidelines +- Coding guidelines (redundant empty lines, class data member names, separators) Nov 6, 2015, M. Verderi diff --git a/examples/extended/biasing/GB02/exampleGB02.cc b/examples/extended/biasing/GB02/exampleGB02.cc index e55375c937..96af0e31a2 100644 --- a/examples/extended/biasing/GB02/exampleGB02.cc +++ b/examples/extended/biasing/GB02/exampleGB02.cc @@ -30,11 +30,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "GB02ActionInitialization.hh" #include "G4UImanager.hh" @@ -97,15 +93,8 @@ int main(int argc,char** argv) } // -- Construct the run manager : MT or sequential one -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - G4cout << " ********** Run Manager constructed in MT mode ************ " << G4endl; - // -- Choose 4 threads: + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(4); -#else - G4RunManager * runManager = new G4RunManager; - G4cout << " ********** Run Manager constructed in sequential mode ************ " << G4endl; -#endif // -- Set mandatory initialization classes GB02DetectorConstruction* detector = new GB02DetectorConstruction(); diff --git a/examples/extended/biasing/GB02/exampleGB02.out b/examples/extended/biasing/GB02/exampleGB02.out index 547c676ebb..f02f6c2378 100644 --- a/examples/extended/biasing/GB02/exampleGB02.out +++ b/examples/extended/biasing/GB02/exampleGB02.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,7 +13,6 @@ WWW : http://geant4.org/ ************************************************************** - ********** Run Manager constructed in sequential mode ************ <<< Geant4 Physics List simulation engine: FTFP_BERT ********************************************************* @@ -20,7 +20,7 @@ ********************************************************* Attaching biasing operator TestManyForceCollision to logical volume test.logical - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -41,10 +41,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -102,10 +104,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -129,10 +132,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -160,9 +164,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -176,14 +180,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -192,9 +196,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -206,9 +210,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -219,9 +223,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -235,14 +239,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -251,9 +255,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -267,14 +271,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -283,9 +287,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -299,14 +303,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -315,9 +319,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -332,14 +336,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -348,9 +352,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -365,14 +369,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -381,9 +385,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -397,14 +401,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -413,9 +417,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -429,14 +433,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -465,6 +469,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -539,6 +565,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -650,8 +689,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -716,8 +755,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -758,7 +797,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. @@ -791,8 +829,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 17.9 0.784 0 0 0 test.phys initStep 1 0.117 -0.124 19.7 0.311 0.473 2.33 2.33 test.phys eIoni - 2 0.36 -0.204 20.3 0.0827 0.228 1.2 3.53 test.phys eIoni - 3 0.417 -0.167 20.3 0 0.0827 0.144 3.68 test.phys eIoni + 2 0.36 -0.204 20.3 0.0824 0.228 1.2 3.53 test.phys eIoni + 3 0.417 -0.167 20.3 0 0.0824 0.144 3.68 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -813,7 +851,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 0 0 0 1 0 0 500 test.phys initStep 1 0 0 119 0.453 0 119 619 test.phys biasWrapper(compt) 2 -94.4 163 196 0.284 0 203 822 test.phys biasWrapper(compt) - 3 -98.1 161 200 0.284 0 5.39 828 World Transportation + 3 -98.1 161 200 0.284 0 5.42 828 World Transportation 4 -1e+04 -4.22e+03 9.72e+03 0.284 0 1.44e+04 1.52e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -860,7 +898,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 39.9 0.0746 0 0 0 test.phys initStep - 1 -0.0185 0.0517 39.9 0 0.0746 0.121 0.121 test.phys eIoni + 1 -0.0185 0.0516 39.9 0 0.0746 0.121 0.121 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -939,8 +977,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1 0 0 500 test.phys initStep 1 0 0 120 0.746 0 120 620 test.phys biasWrapper(compt) - 2 10 14.9 147 0.646 0 31.9 652 test.phys biasWrapper(compt) - 3 40.9 17.7 200 0.646 0 61.7 714 World Transportation + 2 10.2 15.1 147 0.646 0 32.3 653 test.phys biasWrapper(compt) + 3 40.8 17.9 200 0.646 0 61.3 714 World Transportation 4 5.7e+03 535 1e+04 0.646 0 1.13e+04 1.2e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -948,8 +986,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 10 14.9 147 0.101 0 0 0 test.phys initStep - 1 10 15 147 0 0.101 0.202 0.202 test.phys eIoni + 0 10.2 15.1 147 0.101 0 0 0 test.phys initStep + 1 10.1 15.2 147 0 0.101 0.202 0.202 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 @@ -977,8 +1015,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1 0 0 500 test.phys initStep 1 0 0 110 0.258 0 110 610 test.phys biasWrapper(compt) - 2 146 24.7 30.6 0.129 0 169 779 test.phys biasWrapper(compt) - 3 97.8 14.7 49.3 0.129 0 53.1 832 test.phys biasWrapper(Rayl) + 2 146 24.7 30.6 0.129 0 168 779 test.phys biasWrapper(compt) + 3 97.8 14.7 49.3 0.129 0 53 832 test.phys biasWrapper(Rayl) 4 82 13 55.7 0.102 0 17.2 849 test.phys biasWrapper(compt) 5 67.3 57.4 26.7 0.081 0 55 904 test.phys biasWrapper(compt) 6 115 33.5 3.55e-15 0.081 0 59.6 964 World Transportation @@ -998,7 +1036,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 82 13 55.7 0.0265 0 0 0 test.phys initStep - 1 82 13 55.7 0 0.0265 0.0198 0.0198 test.phys eIoni + 1 82 13 55.8 0 0.0265 0.0198 0.0198 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 @@ -1014,9 +1052,9 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 110 0.742 0 0 0 test.phys initStep - 1 -0.339 -0.057 112 0.444 0.298 2.25 2.25 test.phys eIoni - 2 0.221 0.163 113 0.168 0.276 1.63 3.89 test.phys eIoni - 3 0.0912 0.219 113 0 0.168 0.473 4.36 test.phys eIoni + 1 -0.339 -0.057 112 0.445 0.298 2.25 2.25 test.phys eIoni + 2 0.221 0.163 113 0.168 0.276 1.64 3.89 test.phys eIoni + 3 0.091 0.219 113 0 0.168 0.474 4.36 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -1036,7 +1074,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1 0 0 500 test.phys initStep 1 0 0 29.5 0.235 0 29.5 530 test.phys biasWrapper(compt) - 2 -9.92 -31.4 0 0.235 0 44.2 574 World Transportation + 2 -9.92 -31.4 1.07e-14 0.235 0 44.2 574 World Transportation 3 -3.16e+03 -1e+04 -9.38e+03 0.235 0 1.4e+04 1.46e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -1046,8 +1084,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 29.5 0.765 0 0 0 test.phys initStep 1 0.08 0.253 31.3 0.52 0.245 2.3 2.3 test.phys eIoni - 2 -0.0317 -0.91 31.7 0.0666 0.454 1.81 4.11 test.phys eIoni - 3 -0.05 -0.955 31.7 0 0.0666 0.0994 4.21 test.phys eIoni + 2 -0.0317 -0.91 31.7 0.0655 0.455 1.81 4.11 test.phys eIoni + 3 -0.0496 -0.954 31.7 0 0.0655 0.0968 4.21 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -1099,7 +1137,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 2 13.7 4.89 39.6 0.13 0 18.9 570 test.phys biasWrapper(compt) 3 -41.8 -34.3 45.6 0.113 0 68.3 639 test.phys biasWrapper(compt) 4 -83.3 -15.2 25.5 0.0865 0 49.9 689 test.phys biasWrapper(compt) - 5 -45.7 -6.96 3.55e-15 0.0865 0 46.2 735 World Transportation + 5 -45.7 -6.96 0 0.0865 0 46.2 735 World Transportation 6 1e+04 2.2e+03 -6.82e+03 0.0865 0 1.23e+04 1.31e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -1133,8 +1171,11 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 51.6 0.762 0 0 0 test.phys initStep 1 -0.264 -0.0939 53.3 0.388 0.374 2.29 2.29 test.phys eIoni - 2 -0.05 -0.541 54.1 0.167 0.221 1.48 3.77 test.phys eIoni - 3 -0.133 -0.329 54 0 0.167 0.47 4.24 test.phys eIoni + 2 -0.0499 -0.542 54.1 0.168 0.221 1.48 3.77 test.phys eIoni + 3 -0.133 -0.329 54 0 0.168 0.471 4.24 test.phys eIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -1162,7 +1203,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 195 80.2 0 0 0 test.phys initStep 1 0.0203 0.0144 197 79.5 0.202 1.77 1.77 test.phys eBrem - 2 0.0592 0.0368 200 79.2 0.343 3.12 4.89 World Transportation + 2 0.0593 0.0368 200 79.2 0.343 3.12 4.89 World Transportation 3 319 174 1e+04 79.2 3.54e-22 9.81e+03 9.81e+03 OutOfWorld Transportation ********************************************************************************************************* @@ -1208,134 +1249,143 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 17.3 62.2 0 0 0 test.phys initStep - 1 0.216 -0.665 46.1 56.8 4.5 28.8 28.8 test.phys eBrem - 2 0.307 -0.656 50.5 56 0.486 4.4 33.2 test.phys eIoni - 3 0.305 -0.653 51.8 55.5 0.19 1.37 34.6 test.phys eIoni - 4 -0.079 -0.416 65.8 49.8 1.66 13.9 48.5 test.phys eBrem - 5 -0.359 -0.228 74.9 48.4 1.41 9.14 57.7 test.phys eBrem - 6 -0.427 -0.109 77.6 40.5 0.334 2.75 60.4 test.phys eBrem - 7 -0.434 0.433 82.6 39.5 0.725 5.01 65.4 test.phys eIoni - 8 -2.81 4.38 118 34.3 4.68 35.6 101 test.phys eBrem - 9 -3.5 5.17 123 33.2 0.569 5.71 107 test.phys eIoni - 10 -10.6 7.88 169 27.1 5.57 46.3 153 test.phys eBrem - 11 -11 8.11 172 14.4 0.282 2.71 156 test.phys eBrem - 12 -17.6 10.1 195 9.7 3.16 24.3 180 test.phys eIoni - 13 -18.7 9.57 200 9.08 0.618 5.54 186 World Transportation - 14 -3.44e+03 -2.94e+03 1e+04 9.08 3.2e-22 1.08e+04 1.1e+04 OutOfWorld Transportation + 1 0.217 -0.665 46.1 56.8 4.5 28.8 28.8 test.phys eBrem + 2 0.319 -0.654 50.9 56 0.532 4.79 33.6 test.phys eIoni + 3 0.317 -0.652 52.3 55.5 0.193 1.38 35 test.phys eIoni + 4 -0.0665 -0.452 65.8 49.8 1.61 13.5 48.5 test.phys eBrem + 5 -0.356 -0.292 74.9 48.4 1.41 9.14 57.7 test.phys eBrem + 6 -0.431 -0.18 77.6 40.5 0.334 2.75 60.4 test.phys eBrem + 7 -0.481 0.45 83.4 39.4 0.838 5.8 66.2 test.phys eIoni + 8 -3.13 4.32 118 34.3 4.58 34.8 101 test.phys eBrem + 9 -4.08 5.26 125 33 0.706 7 108 test.phys eIoni + 10 -11.3 7.56 169 27.1 5.41 45 153 test.phys eBrem + 11 -11.8 7.77 171 14.4 0.282 2.71 156 test.phys eBrem + 12 -18.6 9.39 195 11.2 3.17 24.4 180 test.phys eIoni + 13 -19.3 9.4 197 10.1 0.416 2.29 182 test.phys eIoni + 14 -20.2 9.57 200 9.74 0.383 3.37 186 World Transportation + 15 -2.41e+03 722 1e+04 9.74 3.02e-22 1.01e+04 1.03e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 16, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -17.6 10.1 195 1.52 0 0 0 test.phys initStep - 1 -20.2 10.1 197 1.07 0.454 3.48 3.48 test.phys msc - 2 -20.3 9.69 199 0.769 0.297 2.82 6.3 test.phys eIoni - 3 -19.8 9.69 200 0.669 0.1 0.934 7.23 World Transportation - 4 4.03e+03 4.19e+03 1e+04 0.669 3.25e-22 1.14e+04 1.14e+04 OutOfWorld Transportation + 0 -19.3 9.4 197 0.671 0 0 0 test.phys initStep + 1 -20 8.29 198 0.412 0.259 2.12 2.12 test.phys eIoni + 2 -20.8 8.08 197 0.196 0.216 1.55 3.67 test.phys eIoni + 3 -20.6 7.91 197 0 0.196 0.607 4.27 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -11 8.11 172 12.4 0 0 0 test.phys initStep - 1 -14.6 12.5 200 12.4 0 29 29 World Transportation - 2 -1.25e+03 1.53e+03 1e+04 12.4 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -11.8 7.77 171 12.4 0 0 0 test.phys initStep + 1 -15.8 12 200 12.4 0 29.1 29.1 World Transportation + 2 -1.39e+03 1.48e+03 1e+04 12.4 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -10.6 7.88 169 0.572 0 0 0 test.phys initStep - 1 -14 11.2 200 0.572 0 31.4 31.4 World Transportation - 2 -1.08e+03 1.06e+03 1e+04 0.572 0 9.91e+03 9.94e+03 OutOfWorld Transportation + 0 -11.3 7.56 169 0.572 0 0 0 test.phys initStep + 1 -15 10.7 200 0.572 0 31.5 31.5 World Transportation + 2 -1.19e+03 1.01e+03 1e+04 0.572 0 9.92e+03 9.95e+03 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 13, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.5 5.17 123 0.539 0 0 0 test.phys initStep - 1 -3.25 4.31 124 0.0479 0.491 1.86 1.86 test.phys eIoni - 2 -3.26 4.29 124 0 0.0479 0.056 1.91 test.phys eIoni + 0 -4.08 5.26 125 0.545 0 0 0 test.phys initStep + 1 -3.76 4.42 126 0.185 0.36 1.87 1.87 test.phys eIoni + 2 -3.49 4.41 126 0 0.185 0.553 2.42 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -2.81 4.38 118 0.477 0 0 0 test.phys initStep - 1 -11.1 14.1 200 0.477 0 83.2 83.2 World Transportation - 2 -1e+03 1.17e+03 1e+04 0.477 0 9.92e+03 1e+04 OutOfWorld Transportation + 0 -3.13 4.32 118 0.477 0 0 0 test.phys initStep + 1 -10 11.5 180 0.351 0 62.6 62.6 test.phys biasWrapper(compt) + 2 -33.7 39.9 200 0.351 0 42.2 105 World Transportation + 3 -8.33e+03 1e+04 7.34e+03 0.351 0 1.48e+04 1.49e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 12 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -10 11.5 180 0.126 0 0 0 test.phys initStep + 1 -9.95 11.4 180 0 0.126 0.294 0.294 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 11, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.434 0.433 82.6 0.302 0 0 0 test.phys initStep - 1 -0.896 0.195 83 0 0.302 1.16 1.16 test.phys eIoni + 0 -0.481 0.45 83.4 0.305 0 0 0 test.phys initStep + 1 -0.93 0.175 83.7 0 0.305 1.18 1.18 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.427 -0.109 77.6 7.58 0 0 0 test.phys initStep - 1 -5.03 5.31 200 7.58 0 123 123 World Transportation - 2 -373 440 1e+04 7.58 0 9.82e+03 9.94e+03 OutOfWorld Transportation + 0 -0.431 -0.18 77.6 7.58 0 0 0 test.phys initStep + 1 -5.4 4.8 200 7.58 0 123 123 World Transportation + 2 -403 404 1e+04 7.58 0 9.82e+03 9.94e+03 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.359 -0.228 74.9 0.0047 0 0 0 test.phys initStep - 1 -0.361 -0.226 75 0 0.000405 0.0749 0.0749 test.phys biasWrapper(phot) + 0 -0.356 -0.292 74.9 0.0047 0 0 0 test.phys initStep + 1 -0.357 -0.291 74.9 0 0.000405 0.0309 0.0309 test.phys biasWrapper(phot) ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 9 +* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 9 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.361 -0.226 75 0.0043 0 0 0 test.phys initStep - 1 -0.361 -0.225 75 0 0.0043 0.000832 0.000832 test.phys eIoni + 0 -0.357 -0.291 74.9 0.00429 0 0 0 test.phys initStep + 1 -0.357 -0.291 74.9 0 0.00429 0.000831 0.000831 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.079 -0.416 65.8 4.06 0 0 0 test.phys initStep - 1 -1.83 7.51 200 4.06 0 134 134 World Transportation - 2 -129 586 1e+04 4.06 0 9.82e+03 9.95e+03 OutOfWorld Transportation + 0 -0.0665 -0.452 65.8 4.05 0 0 0 test.phys initStep + 1 -2.33 7.23 200 4.05 0 134 134 World Transportation + 2 -168 568 1e+04 4.05 0 9.82e+03 9.95e+03 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.305 -0.653 51.8 0.311 0 0 0 test.phys initStep - 1 0.706 -0.267 52.2 0.0102 0.3 1.2 1.2 test.phys eIoni - 2 0.705 -0.267 52.2 0 0.0102 0.00368 1.2 test.phys eIoni + 0 0.317 -0.652 52.3 0.314 0 0 0 test.phys initStep + 1 0.707 -0.241 52.6 0.0678 0.246 1.22 1.22 test.phys eIoni + 2 0.751 -0.24 52.6 0 0.0678 0.103 1.32 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.307 -0.656 50.5 0.272 0 0 0 test.phys initStep - 1 0.678 -0.379 50.7 0.0419 0.23 1.01 1.01 test.phys eIoni - 2 0.666 -0.391 50.7 0 0.0419 0.0443 1.05 test.phys eIoni + 0 0.319 -0.654 50.9 0.275 0 0 0 test.phys initStep + 1 0.693 -0.369 51.1 0.0355 0.239 1.03 1.03 test.phys eIoni + 2 0.706 -0.363 51.1 0 0.0355 0.033 1.06 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.216 -0.665 46.1 0.89 0 0 0 test.phys initStep + 0 0.217 -0.665 46.1 0.89 0 0 0 test.phys initStep 1 -1.94 0.415 200 0.89 0 154 154 World Transportation 2 -139 69.2 1e+04 0.89 0 9.8e+03 9.96e+03 OutOfWorld Transportation @@ -1345,131 +1395,225 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 17.3 36.8 0 0 0 test.phys initStep - 1 2.83 1.42 55.8 29.2 5.06 38.7 38.7 test.phys eIoni - 2 2.97 1.66 63.4 28.1 0.8 7.66 46.4 test.phys eIoni - 3 7.11 6.19 109 22 6.09 46.1 92.5 test.phys eIoni - 4 7.13 6.22 109 21.7 0.0421 0.189 92.7 test.phys eIoni - 5 10.3 11.7 132 18.6 2.98 23.5 116 test.phys eBrem - 6 13.4 15.7 145 16.8 1.87 14.8 131 test.phys eBrem - 7 20.5 27.7 170 13 3.76 28.1 159 test.phys eIoni - 8 22.7 31.9 176 5.84 1.1 8.11 167 test.phys eBrem - 9 23.9 41.4 180 4.63 1.21 10.6 178 test.phys eIoni - 10 27 47.3 182 3.93 0.691 6.97 185 test.phys eBrem - 11 30.5 52.8 185 3 0.927 7.54 192 test.phys eIoni - 12 30.5 52.8 185 2.65 0.00188 0.0172 192 test.phys eIoni - 13 31.9 54 187 2.12 0.298 2.79 195 test.phys eBrem - 14 31.7 56 191 1.6 0.512 4.58 200 test.phys eIoni - 15 29.7 55.3 194 1.22 0.388 3.73 203 test.phys eIoni - 16 27.7 55.8 196 0.846 0.371 3.08 207 test.phys eIoni - 17 27.2 56.5 198 0.529 0.317 2.44 209 test.phys eIoni - 18 27.6 57.5 199 0.307 0.222 1.83 211 test.phys eIoni - 19 28 58.3 199 0.0403 0.266 1.18 212 test.phys eIoni - 20 28 58.3 199 0 0.0403 0.0414 212 test.phys eIoni + 1 1.52 -0.908 43.3 27 3.37 26.1 26.1 test.phys eIoni + 2 10.2 -0.283 86.5 21.7 5.3 44.3 70.4 test.phys eIoni + 3 10.4 -0.283 87.5 21.1 0.128 1.02 71.4 test.phys eIoni + 4 16 -2.52 115 17.3 3.56 28.5 99.9 test.phys eIoni + 5 18 -2.66 122 16.3 0.943 7.56 108 test.phys eBrem + 6 22.1 -3.93 137 14.3 1.91 15.1 123 test.phys eBrem + 7 32.9 -5.35 158 11.1 3.27 24.2 147 test.phys eIoni + 8 39.7 -6.2 169 4.49 1.75 13.2 160 test.phys eBrem + 9 45.7 -3.77 174 3.56 0.928 8.45 168 test.phys eIoni + 10 52.1 -3.03 175 2.82 0.747 6.94 175 test.phys eIoni + 11 54.9 -0.795 174 2.37 0.409 3.74 179 test.phys eBrem + 12 56.8 3.01 173 1.73 0.632 4.99 184 test.phys eIoni + 13 56.5 4.31 170 1.32 0.413 3.94 188 test.phys eIoni + 14 54.6 4.45 168 0.965 0.357 3.26 191 test.phys eIoni + 15 53.1 5.45 166 0.666 0.299 2.65 194 test.phys eIoni + 16 52.5 6.91 166 0.422 0.244 2.11 196 test.phys eIoni + 17 53.3 7.47 166 0.149 0.273 1.57 198 test.phys eIoni + 18 53.4 7.56 166 0 0.149 0.387 198 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 26, Parent ID = 3 +* G4Track Information: Particle = gamma, Track ID = 25, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 31.9 54 187 0.232 0 0 0 test.phys initStep - 1 35.3 65.8 200 0.232 0 17.7 17.7 World Transportation - 2 2.71e+03 9.11e+03 1e+04 0.232 0 1.36e+04 1.36e+04 OutOfWorld Transportation + 0 54.9 -0.795 174 0.0412 0 0 0 test.phys initStep + 1 135 168 124 0.0376 0 193 193 test.phys biasWrapper(compt) + 2 201 101 74.1 0 0.000405 106 300 test.phys biasWrapper(phot) ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 3 +* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 25 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 30.5 52.8 185 0.355 0 0 0 test.phys initStep - 1 31 53.4 185 0 0.355 1.37 1.37 test.phys eIoni + 0 201 101 74.1 0.0372 0 0 0 test.phys initStep + 1 201 101 74 0 0.0372 0.036 0.036 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 25 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 135 168 124 0.00353 0 0 0 test.phys initStep + 1 135 168 124 0 0.00353 0.000599 0.000599 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 24, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 27 47.3 182 0.00344 0 0 0 test.phys initStep - 1 27 47.7 182 0 0.000405 0.373 0.373 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 24 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 27 47.7 182 0.00303 0 0 0 test.phys initStep - 1 27 47.7 182 0 0.00303 0.000465 0.000465 test.phys eIoni + 0 39.7 -6.2 169 4.85 0 0 0 test.phys initStep + 1 35.2 -25.4 200 4.85 0 36.5 36.5 World Transportation + 2 -1.41e+03 -6.14e+03 1e+04 4.85 0 1.16e+04 1.17e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 23, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 22.7 31.9 176 6.06 0 0 0 test.phys initStep - 1 34.7 29.7 200 6.06 0 26.8 26.8 World Transportation - 2 4.94e+03 -866 1e+04 6.06 0 1.1e+04 1.1e+04 OutOfWorld Transportation + 0 22.1 -3.93 137 0.00229 0 0 0 test.phys initStep + 1 22.2 -3.94 137 0 0.000405 0.107 0.107 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 28, Parent ID = 23 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 22.2 -3.94 137 0.00189 0 0 0 test.phys initStep + 1 22.2 -3.94 137 0 0.00189 0.000216 0.000216 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 22, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 13.4 15.7 145 0.0023 0 0 0 test.phys initStep - 1 13.4 15.7 145 0 0.000405 0.0167 0.0167 test.phys biasWrapper(phot) + 0 18 -2.66 122 0.11 0 0 0 test.phys initStep + 1 44.5 5.46 200 0.11 0 82.4 82.4 World Transportation + 2 3.39e+03 1.03e+03 1e+04 0.11 0 1.04e+04 1.05e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 28, Parent ID = 22 +* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 13.4 15.7 145 0.00189 0 0 0 test.phys initStep - 1 13.4 15.7 145 0 0.00189 0.000217 0.000217 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 21, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 10.3 11.7 132 0.117 0 0 0 test.phys initStep - 1 16.2 39.7 200 0.117 0 74.1 74.1 World Transportation - 2 858 4.06e+03 1e+04 0.117 0 1.06e+04 1.07e+04 OutOfWorld Transportation + 0 16 -2.52 115 0.229 0 0 0 test.phys initStep + 1 15.7 -2.46 115 0 0.229 0.773 0.773 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 20, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 7.13 6.22 109 0.226 0 0 0 test.phys initStep - 1 6.93 5.97 109 0 0.226 0.759 0.759 test.phys eIoni + 0 10.4 -0.283 87.5 0.44 0 0 0 test.phys initStep + 1 10.7 -1.12 88 0.204 0.236 1.62 1.62 test.phys eIoni + 2 10.6 -1.37 88.2 0 0.204 0.648 2.27 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 19, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 2.97 1.66 63.4 0.247 0 0 0 test.phys initStep - 1 3.1 1.29 63.6 0 0.247 0.874 0.874 test.phys eIoni + 0 1.52 -0.908 43.3 6.44 0 0 0 test.phys initStep + 1 0.28 -4.06 53.9 4.64 1.81 11.6 11.6 test.phys eIoni + 2 -1.65 -7.39 61.2 3.58 1.05 8.69 20.3 test.phys eIoni + 3 -0.358 -10.7 66.7 2.64 0.948 6.98 27.3 test.phys eIoni + 4 -0.253 -11.7 67.5 0.124 0.165 1.32 28.6 test.phys eBrem + 5 -0.314 -11.8 67.5 0 0.124 0.286 28.9 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 3 +* G4Track Information: Particle = gamma, Track ID = 29, Parent ID = 19 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 2.83 1.42 55.8 2.58 0 0 0 test.phys initStep - 1 2.79 0.522 57.3 1.76 0.311 1.87 1.87 test.phys eIoni - 2 3.1 -0.458 60.7 1.26 0.501 3.99 5.86 test.phys eIoni - 3 2.59 -2.55 59.1 0.877 0.383 3.15 9.01 test.phys eIoni - 4 1.74 -4.35 59 0.394 0.483 2.5 11.5 test.phys eIoni - 5 1.34 -5.15 59.1 0.17 0.225 1.5 13 test.phys eIoni - 6 1.29 -5.36 59 0 0.17 0.48 13.5 test.phys eIoni + 0 -0.253 -11.7 67.5 2.35 0 0 0 test.phys initStep + 1 75.7 -82.7 149 0.236 0 132 132 test.phys biasWrapper(compt) + 2 71.3 -81.2 145 0.225 0 5.94 138 test.phys biasWrapper(compt) + 3 -14.6 -97.6 97.3 0.221 0 99.8 238 test.phys biasWrapper(compt) + 4 -89 -95.3 76.1 0.156 0 77.4 315 test.phys biasWrapper(compt) + 5 -88.8 -89.1 75 0.131 0 6.27 322 test.phys biasWrapper(compt) + 6 -110 -79 40.9 0.0899 0 41.4 363 test.phys biasWrapper(compt) + 7 -103 -100 55.7 0.0827 0 26.8 390 test.phys biasWrapper(compt) + 8 -76.7 -96.1 89.1 0.0824 0 42.9 433 test.phys biasWrapper(compt) + 9 -67.8 -94.9 96.3 0.0727 0 11.5 444 test.phys biasWrapper(compt) + 10 -66 -111 102 0.0716 0 17.5 462 test.phys biasWrapper(compt) + 11 -4.79 -218 186 0.0627 0 149 611 test.phys biasWrapper(compt) + 12 1.08 -203 200 0.0627 0 20.7 632 World Transportation + 13 4.11e+03 1e+04 9.68e+03 0.0627 0 1.45e+04 1.52e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 29, Parent ID = 18 +* G4Track Information: Particle = e-, Track ID = 40, Parent ID = 29 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 2.79 0.522 57.3 0.504 0 0 0 test.phys initStep - 1 3.02 -0.634 57.6 0.182 0.322 1.78 1.78 test.phys eIoni - 2 3.04 -0.854 57.7 0 0.182 0.537 2.31 test.phys eIoni + 0 -4.79 -218 186 0.00889 0 0 0 test.phys initStep + 1 -4.79 -218 186 0 0.00889 0.0029 0.0029 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 39, Parent ID = 29 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -66 -111 102 0.00112 0 0 0 test.phys initStep + 1 -66 -111 102 0 0.00112 9.79e-05 9.79e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 38, Parent ID = 29 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -67.8 -94.9 96.3 0.00974 0 0 0 test.phys initStep + 1 -67.8 -94.9 96.3 0 0.00974 0.0034 0.0034 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 37, Parent ID = 29 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -76.7 -96.1 89.1 0.000317 0 0 0 test.phys initStep + 1 -76.7 -96.1 89.1 0 0.000317 2e-05 2e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 36, Parent ID = 29 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -103 -100 55.7 0.0072 0 0 0 test.phys initStep + 1 -103 -100 55.7 0 0.0072 0.00201 0.00201 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 35, Parent ID = 29 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -110 -79 40.9 0.0409 0 0 0 test.phys initStep + 1 -110 -79 40.9 0 0.0409 0.0425 0.0425 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 29 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -88.8 -89.1 75 0.0252 0 0 0 test.phys initStep + 1 -88.8 -89.1 75 0 0.0252 0.0181 0.0181 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 29 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -89 -95.3 76.1 0.0647 0 0 0 test.phys initStep + 1 -89.1 -95.3 76.1 0 0.0647 0.0946 0.0946 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 29 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -14.6 -97.6 97.3 0.00444 0 0 0 test.phys initStep + 1 -14.6 -97.6 97.3 0 0.00444 0.000879 0.000879 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 31, Parent ID = 29 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 71.3 -81.2 145 0.0109 0 0 0 test.phys initStep + 1 71.3 -81.2 145 0 0.0109 0.00415 0.00415 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 30, Parent ID = 29 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 75.7 -82.7 149 2.11 0 0 0 test.phys initStep + 1 78.1 -84.8 152 1.6 0.512 4.57 4.57 test.phys eIoni + 2 79.6 -87.7 152 1.22 0.378 3.72 8.28 test.phys eIoni + 3 81.5 -88.9 154 0.817 0.404 3.09 11.4 test.phys eIoni + 4 82.8 -90.2 153 0.543 0.274 2.39 13.8 test.phys eIoni + 5 82.9 -90.9 152 0.25 0.292 1.86 15.6 test.phys eIoni + 6 83.2 -90.8 152 0 0.25 0.891 16.5 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 @@ -1488,2262 +1632,185 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 164 0 0 164 664 test.phys biasWrapper(conv) - -********************************************************************************************************* -* G4Track Information: Particle = e+, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 164 80.8 0 0 0 test.phys initStep - 1 0.0119 0.00268 165 79.7 0.118 1.09 1.09 test.phys eIoni - 2 -0.576 -0.575 190 75.8 3.5 25 26.1 test.phys eIoni - 3 -0.677 -0.63 193 74.6 0.54 3.33 29.4 test.phys eIoni - 4 -0.827 -0.784 200 73.6 1.02 6.68 36.1 World Transportation - 5 -79.6 -66.9 1e+04 73.6 3.51e-22 9.8e+03 9.84e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.677 -0.63 193 0.662 0 0 0 test.phys initStep - 1 -1.86 -0.283 194 0.324 0.339 2.1 2.1 test.phys eIoni - 2 -2.54 -0.284 194 0.0928 0.231 1.25 3.36 test.phys eIoni - 3 -2.61 -0.337 194 0 0.0928 0.176 3.53 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.576 -0.575 190 0.348 0 0 0 test.phys initStep - 1 -0.414 -1.21 190 0.0966 0.251 1.35 1.35 test.phys eIoni - 2 -0.466 -1.29 190 0 0.0966 0.189 1.54 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0119 0.00268 165 1.02 0 0 0 test.phys initStep - 1 1.5 0.593 167 0.696 0.323 2.74 2.74 test.phys eIoni - 2 2.24 0.572 168 0.321 0.375 2.17 4.91 test.phys eIoni - 3 2.19 0.639 169 0 0.321 1.24 6.15 test.phys eIoni + 1 0 0 8.49 15.5 0 8.49 508 test.phys biasWrapper(compt) + 2 -39.9 -23.2 200 15.5 0 197 705 World Transportation + 3 -2.08e+03 -1.21e+03 1e+04 15.5 0 1.01e+04 1.08e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 164 18.2 0 0 0 test.phys initStep - 1 -1.76 0.54 178 16.1 2.01 14.7 14.7 test.phys eBrem - 2 -4.61 1.16 190 13.9 1.64 12 26.7 test.phys eBrem - 3 -6.14 1.38 195 12.4 0.666 4.77 31.5 test.phys eIoni - 4 -8.23 2.1 200 11.6 0.756 5.85 37.3 World Transportation - 5 -3.14e+03 2.15e+03 1e+04 11.6 3.19e-22 1.05e+04 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -6.14 1.38 195 0.819 0 0 0 test.phys initStep - 1 -5.22 1.65 196 0.563 0.256 2.39 2.39 test.phys eIoni - 2 -5.23 2.59 197 0.146 0.417 1.91 4.3 test.phys eIoni - 3 -5.14 2.75 197 0 0.146 0.374 4.67 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.61 1.16 190 0.582 0 0 0 test.phys initStep - 1 -5.69 2.81 200 0.582 0 10.1 10.1 World Transportation - 2 -1.08e+03 1.64e+03 1e+04 0.582 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.76 0.54 178 0.074 0 0 0 test.phys initStep - 1 -5.74 2.47 200 0.074 0 22 22 World Transportation - 2 -1.82e+03 881 1e+04 0.074 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 59.2 0 0 59.2 559 test.phys biasWrapper(conv) - -********************************************************************************************************* -* G4Track Information: Particle = e+, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 59.2 62.6 0 0 0 test.phys initStep - 1 -0.321 2.34 111 56.1 6.15 52.3 52.3 test.phys eIoni - 2 -1.79 5.02 141 52.7 3.45 29.5 81.8 test.phys eBrem - 3 -1.33 8.53 168 49.1 3.28 27.6 109 test.phys eIoni - 4 -1.22 9.26 174 48.4 0.752 5.66 115 test.phys eBrem - 5 -1.25 10.5 182 46.9 0.972 8.07 123 test.phys eIoni - 6 -1.29 11.4 187 45.7 0.828 5.66 129 test.phys eIoni - 7 -1.26 13 200 44.3 1.41 13 142 World Transportation - 8 -411 1.32e+03 1e+04 44.3 3.39e-22 9.89e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.29 11.4 187 0.357 0 0 0 test.phys initStep - 1 -0.684 11.1 188 0.116 0.241 1.38 1.38 test.phys eIoni - 2 -0.582 11.1 188 0 0.116 0.256 1.64 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.25 10.5 182 0.487 0 0 0 test.phys initStep - 1 -1.37 9.67 182 0.263 0.223 1.74 1.74 test.phys eIoni - 2 -1.08 9.56 183 0 0.263 0.963 2.7 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.22 9.26 174 0.00418 0 0 0 test.phys initStep - 1 -1.21 9.29 174 0 0.000405 0.196 0.196 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 8 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.21 9.29 174 0.00377 0 0 0 test.phys initStep - 1 -1.21 9.29 174 0 0.00377 0.000669 0.000669 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.33 8.53 168 0.284 0 0 0 test.phys initStep - 1 -1.81 8.46 168 0 0.284 1.07 1.07 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.79 5.02 141 0.00412 0 0 0 test.phys initStep - 1 -1.79 5.04 141 0 0.000405 0.0934 0.0934 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.79 5.04 141 0.00372 0 0 0 test.phys initStep - 1 -1.79 5.04 141 0 0.00372 0.000652 0.000652 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.321 2.34 111 0.313 0 0 0 test.phys initStep - 1 0.193 2.6 112 0.1 0.213 1.21 1.21 test.phys eIoni - 2 0.204 2.51 112 0 0.1 0.2 1.41 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 59.2 36.4 0 0 0 test.phys initStep - 1 0.0684 -0.0503 62.4 35.7 0.4 3.23 3.23 test.phys eIoni - 2 -2.06 -4.99 118 28.1 7.05 56.4 59.6 test.phys eIoni - 3 1.5 -11.8 164 22.2 5.97 46.2 106 test.phys eIoni - 4 -1.55 -24.2 195 14.2 4.31 34.1 140 test.phys eBrem - 5 -2.63 -25.8 200 13.5 0.728 5.52 145 World Transportation - 6 -708 -3.12e+03 1e+04 13.5 3.17e-22 1.03e+04 1.04e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.55 -24.2 195 3.66 0 0 0 test.phys initStep - 1 -3.26 -25.7 200 3.66 0 5.62 5.62 World Transportation - 2 -3.28e+03 -2.97e+03 1e+04 3.66 0 1.07e+04 1.08e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -2.06 -4.99 118 0.558 0 0 0 test.phys initStep - 1 -2.39 -4.01 119 0.322 0.236 1.9 1.9 test.phys eIoni - 2 -2.83 -4.45 119 0.0714 0.251 1.25 3.15 test.phys eIoni - 3 -2.8 -4.44 119 0 0.0714 0.112 3.26 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0684 -0.0503 62.4 0.235 0 0 0 test.phys initStep - 1 -0.0807 0.286 62.6 0 0.235 0.808 0.808 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 109 0.275 0 109 609 test.phys biasWrapper(compt) - 2 20.4 -12 70.4 0.138 0 45.6 655 test.phys biasWrapper(compt) - 3 18.3 -9 72.5 0.137 0 4.24 659 test.phys biasWrapper(compt) - 4 16.9 -7.49 73.3 0.121 0 2.15 661 test.phys biasWrapper(compt) - 5 33.2 27.4 114 0.085 0 56.1 717 test.phys biasWrapper(compt) - 6 20.6 10.1 110 0.0834 0 21.9 739 test.phys biasWrapper(compt) - 7 19.3 3.07 106 0.0755 0 7.87 747 test.phys biasWrapper(compt) - 8 20 -37.8 145 0.0603 0 56.3 803 test.phys biasWrapper(compt) - 9 11.2 -26.1 142 0.052 0 15 818 test.phys biasWrapper(compt) - 10 154 -19.8 40.2 0.0457 0 176 994 test.phys biasWrapper(compt) - 11 150 -22.4 38 0.041 0 5.13 999 test.phys biasWrapper(compt) - 12 164 19.9 0 0.041 0 58.6 1.06e+03 World Transportation - 13 3.47e+03 1e+04 -8.95e+03 0.041 0 1.38e+04 1.49e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 150 -22.4 38 0.00464 0 0 0 test.phys initStep - 1 150 -22.4 38 0 0.00464 0.000949 0.000949 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 154 -19.8 40.2 0.00637 0 0 0 test.phys initStep - 1 154 -19.8 40.2 0 0.00637 0.00163 0.00163 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 11.2 -26.1 142 0.00825 0 0 0 test.phys initStep - 1 11.2 -26.1 142 0 0.00825 0.00254 0.00254 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 20 -37.8 145 0.0152 0 0 0 test.phys initStep - 1 20 -37.8 145 0 0.0152 0.00742 0.00742 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 19.3 3.07 106 0.00792 0 0 0 test.phys initStep - 1 19.3 3.07 106 0 0.00792 0.00237 0.00237 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 20.6 10.1 110 0.00158 0 0 0 test.phys initStep - 1 20.6 10.1 110 0 0.00158 0.000164 0.000164 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 33.2 27.4 114 0.0365 0 0 0 test.phys initStep - 1 33.2 27.4 114 0 0.0365 0.0348 0.0348 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 16.9 -7.49 73.3 0.016 0 0 0 test.phys initStep - 1 16.9 -7.49 73.3 0 0.016 0.0081 0.0081 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 18.3 -9 72.5 0.000645 0 0 0 test.phys initStep - 1 18.3 -9 72.5 0 0.000645 4.59e-05 4.59e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 20.4 -12 70.4 0.137 0 0 0 test.phys initStep - 1 20.5 -12 70.3 0 0.137 0.337 0.337 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 109 99.7 0 0 0 test.phys initStep - 1 -1.7 0.742 162 92.3 6.41 53 53 test.phys eBrem - 2 -2.1 1.11 200 87.8 4.5 37.7 90.7 World Transportation - 3 409 -50.5 1e+04 87.8 3.57e-22 9.81e+03 9.9e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.7 0.742 162 0.997 0 0 0 test.phys initStep - 1 -2.01 1.06 200 0.997 0 37.7 37.7 World Transportation - 2 -81.5 83.5 1e+04 0.997 0 9.8e+03 9.84e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 11.6 17.3 0 11.6 512 test.phys biasWrapper(compt) - 2 39.6 -15.4 200 17.3 0 193 705 World Transportation - 3 2.1e+03 -816 1e+04 17.3 0 1e+04 1.08e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 11.6 82.7 0 0 0 test.phys initStep - 1 -0.27 0.2 18.2 64.6 0.937 6.58 6.58 test.phys eBrem - 2 -3.93 -1.54 73.8 56.8 7.42 55.9 62.5 test.phys eBrem - 3 -3.94 -1.54 73.9 56.7 0.0066 0.0733 62.5 test.phys eBrem - 4 -4.58 -1.8 87.1 54.7 1.69 13.2 75.8 test.phys eIoni - 5 -6.71 -0.271 126 49.8 4.71 38.7 114 test.phys eIoni - 6 -7.11 0.109 132 45.6 0.785 6.47 121 test.phys eBrem - 7 -7.29 0.278 134 44.9 0.261 2.35 123 test.phys eIoni - 8 -9.24 2.34 153 42.3 2.32 18.5 142 test.phys eIoni - 9 -13.1 7.03 179 38.6 3.22 26.9 169 test.phys eIoni - 10 -14.1 8.22 185 37.5 0.879 6.78 175 test.phys eIoni - 11 -16.6 10.4 200 35.6 1.95 14.9 190 World Transportation - 12 -1.53e+03 1.29e+03 1e+04 35.6 3.36e-22 1e+04 1.02e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -14.1 8.22 185 0.222 0 0 0 test.phys initStep - 1 -13.9 8.5 186 0 0.222 0.74 0.74 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -13.1 7.03 179 0.467 0 0 0 test.phys initStep - 1 -14 7.57 179 0 0.467 1.69 1.69 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -9.24 2.34 153 0.267 0 0 0 test.phys initStep - 1 -9.6 2.66 153 0 0.267 0.983 0.983 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -7.29 0.278 134 0.416 0 0 0 test.phys initStep - 1 -6.56 0.528 135 0.174 0.241 1.56 1.56 test.phys eIoni - 2 -6.72 0.687 135 0 0.174 0.503 2.06 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -7.11 0.109 132 3.42 0 0 0 test.phys initStep - 1 -11.5 5.87 200 3.42 0 68.3 68.3 World Transportation - 2 -652 837 1e+04 3.42 0 9.86e+03 9.92e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -6.71 -0.271 126 0.234 0 0 0 test.phys initStep - 1 -6.89 -0.588 126 0 0.234 0.804 0.804 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.58 -1.8 87.1 0.257 0 0 0 test.phys initStep - 1 -4.82 -1.44 87.3 0 0.257 0.925 0.925 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.94 -1.54 73.9 0.122 0 0 0 test.phys initStep - 1 -7.65 -6.7 200 0.122 0 126 126 World Transportation - 2 -296 -408 1e+04 0.122 0 9.81e+03 9.94e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.93 -1.54 73.8 0.405 0 0 0 test.phys initStep - 1 -7.6 -9.8 200 0.405 0 126 126 World Transportation - 2 -292 -651 1e+04 0.405 0 9.83e+03 9.95e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.27 0.2 18.2 17.2 0 0 0 test.phys initStep - 1 -7.33 4.85 200 17.2 0 182 182 World Transportation - 2 -388 256 1e+04 17.2 0 9.81e+03 9.99e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 51.3 3.49 0 51.3 551 test.phys biasWrapper(compt) - 2 7.18 -5.63 66.6 0.314 0 17.8 569 test.phys biasWrapper(compt) - 3 -8.19 -8.1 64.1 0.29 0 15.8 585 test.phys biasWrapper(compt) - 4 -158 -128 0 0.29 0 203 788 World Transportation - 5 -1e+04 -8.01e+03 -4.2e+03 0.29 0 1.33e+04 1.41e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -8.19 -8.1 64.1 0.0242 0 0 0 test.phys initStep - 1 -8.19 -8.09 64.1 0 0.0242 0.0168 0.0168 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 7.18 -5.63 66.6 3.17 0 0 0 test.phys initStep - 1 9.94 -7.33 71.5 2.46 0.716 6.31 6.31 test.phys eIoni - 2 12.5 -11.1 72.5 1.84 0.616 5.13 11.4 test.phys eIoni - 3 13.9 -13.2 75.1 1.43 0.414 4.12 15.6 test.phys eIoni - 4 15.1 -14.3 77.7 0.96 0.465 3.43 19 test.phys eIoni - 5 16.3 -14.5 79.5 0.617 0.343 2.64 21.6 test.phys eIoni - 6 17.5 -14.5 80.2 0.326 0.292 2.02 23.6 test.phys eIoni - 7 17.9 -13.9 80.3 0.058 0.268 1.26 24.9 test.phys eIoni - 8 17.9 -13.8 80.3 0 0.058 0.0782 25 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 51.3 96.5 0 0 0 test.phys initStep - 1 -0.0916 -0.153 72.1 92.5 2.48 20.8 20.8 test.phys eIoni - 2 -0.03 -0.27 80.4 91.3 0.921 8.31 29.1 test.phys eIoni - 3 0.00736 -0.309 83.2 76 0.491 2.78 31.9 test.phys eBrem - 4 0.854 0.189 115 72 3.75 32 63.9 test.phys eIoni - 5 0.891 0.386 126 70.4 1.52 11.3 75.2 test.phys eBrem - 6 0.918 0.448 137 69 1.38 10.7 86 test.phys eBrem - 7 0.454 0.0401 150 66.7 1.84 13.2 99.2 test.phys eIoni - 8 0.421 0.0231 151 64.6 0.067 0.607 99.8 test.phys eBrem - 9 0.0745 -0.375 163 20.3 1.61 12.4 112 test.phys eBrem - 10 -1.14 -0.204 174 18.7 1.31 10.5 123 test.phys eIoni - 11 -2.39 -0.0553 182 17.5 1.04 8.56 131 test.phys eBrem - 12 -2.47 -0.116 183 17.2 0.0651 0.46 132 test.phys eIoni - 13 -5.68 -2.72 200 15.1 2.02 17.9 150 World Transportation - 14 389 -791 1e+04 15.1 3.06e-22 9.84e+03 9.99e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -2.47 -0.116 183 0.279 0 0 0 test.phys initStep - 1 -2.13 0.121 183 0 0.279 1.05 1.05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 16, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -2.39 -0.0553 182 0.189 0 0 0 test.phys initStep - 1 -5.76 -3.01 200 0.189 0 18.2 18.2 World Transportation - 2 -1.87e+03 -1.64e+03 1e+04 0.189 0 1.01e+04 1.01e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.14 -0.204 174 0.297 0 0 0 test.phys initStep - 1 -1.6 0.0864 174 0.0435 0.254 1.14 1.14 test.phys eIoni - 2 -1.58 0.0897 174 0 0.0435 0.0474 1.19 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0745 -0.375 163 42.6 0 0 0 test.phys initStep - 1 -1.12 -1.09 200 42.6 0 36.6 36.6 World Transportation - 2 -320 -192 1e+04 42.6 0 9.81e+03 9.84e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.421 0.0231 151 2.05 0 0 0 test.phys initStep - 1 -2.02 -0.228 200 2.05 0 49 49 World Transportation - 2 -490 -50.4 1e+04 2.05 0 9.81e+03 9.86e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.454 0.0401 150 0.457 0 0 0 test.phys initStep - 1 -0.445 -0.19 151 0.185 0.272 1.67 1.67 test.phys eIoni - 2 -0.432 0.0869 151 0 0.185 0.551 2.22 test.phys eIoni + 0 0 0 8.49 84.5 0 0 0 test.phys initStep + 1 0.22 0.135 13.2 83.6 0.543 4.75 4.75 test.phys eIoni + 2 0.417 0.216 18.5 82.8 0.599 5.23 9.98 test.phys eIoni + 3 0.82 1.13 39.6 80.4 2.41 21.2 31.2 test.phys eBrem + 4 1.14 1.43 54.4 77.2 1.83 14.8 46 test.phys eIoni + 5 2.76 1.92 74.1 74.4 2.44 19.8 65.7 test.phys eBrem + 6 7.29 -0.0456 151 57.8 9.78 76.8 143 test.phys eBrem + 7 8.54 -3.12 169 53.8 2.36 18.6 161 test.phys eIoni + 8 9.85 -7.52 193 50.5 3.16 24.6 186 test.phys eBrem + 9 10.2 -8.67 200 49.7 0.814 7.12 193 World Transportation + 10 739 -1.48e+03 1e+04 49.7 3.44e-22 9.94e+03 1.01e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.918 0.448 137 0.0898 0 0 0 test.phys initStep - 1 -0.342 -1.58 190 0.0681 0 53.1 53.1 test.phys biasWrapper(compt) - 2 -40.8 3.96 129 0.0653 0 73.2 126 test.phys biasWrapper(compt) - 3 -97.3 -16.1 115 0.0605 0 61.8 188 test.phys biasWrapper(compt) - 4 -95.7 -67 82.4 0.0568 0 60.3 248 test.phys biasWrapper(compt) - 5 -78.9 -131 119 0.0535 0 75.8 324 test.phys biasWrapper(compt) - 6 -67.6 -129 141 0.0443 0 24.9 349 test.phys biasWrapper(compt) - 7 -92.6 -141 97.9 0.0412 0 51.4 400 test.phys biasWrapper(compt) - 8 -103 -140 102 0 0.000405 11.1 412 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -103 -140 102 0.0408 0 0 0 test.phys initStep - 1 -103 -140 102 0 0.0408 0.0423 0.0423 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -92.6 -141 97.9 0.00309 0 0 0 test.phys initStep - 1 -92.6 -141 97.9 0 0.00309 0.000481 0.000481 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -67.6 -129 141 0.00922 0 0 0 test.phys initStep - 1 -67.6 -129 141 0 0.00922 0.00309 0.00309 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -78.9 -131 119 0.00331 0 0 0 test.phys initStep - 1 -78.9 -131 119 0 0.00331 0.000538 0.000538 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -95.7 -67 82.4 0.00363 0 0 0 test.phys initStep - 1 -95.7 -67 82.4 0 0.00363 0.000627 0.000627 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -97.3 -16.1 115 0.00481 0 0 0 test.phys initStep - 1 -97.3 -16.1 115 0 0.00481 0.00101 0.00101 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -40.8 3.96 129 0.0028 0 0 0 test.phys initStep - 1 -40.8 3.96 129 0 0.0028 0.000408 0.000408 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.342 -1.58 190 0.0218 0 0 0 test.phys initStep - 1 -0.34 -1.58 190 0 0.0218 0.014 0.014 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.891 0.386 126 0.0111 0 0 0 test.phys initStep - 1 0.888 0.391 127 0 2.31e-05 0.349 0.349 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 10 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.888 0.391 127 0.011 0 0 0 test.phys initStep - 1 0.89 0.392 127 0 0.011 0.00423 0.00423 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.854 0.189 115 0.294 0 0 0 test.phys initStep - 1 1.01 0.404 115 0.124 0.138 0.35 0.35 test.phys eBrem - 2 1.05 0.499 115 0 0.124 0.288 0.638 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 27, Parent ID = 9 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.01 0.404 115 0.032 0 0 0 test.phys initStep - 1 -1.51 21.8 115 0.032 0 21.6 21.6 test.phys biasWrapper(Rayl) - 2 -2.98 190 99 0.032 0 169 190 test.phys biasWrapper(Rayl) - 3 -9.74 228 109 0.0309 0 40.6 231 test.phys biasWrapper(compt) - 4 -31.3 264 68 0.0282 0 58.6 289 test.phys biasWrapper(compt) - 5 -25.4 273 102 0.0273 0 35.3 325 test.phys biasWrapper(compt) - 6 3.94 276 108 0.0264 0 30.3 355 test.phys biasWrapper(compt) - 7 6.64 292 110 0.0262 0 15.7 370 test.phys biasWrapper(compt) - 8 5.72 295 111 0.0257 0 3.46 374 test.phys biasWrapper(compt) - 9 5.79 297 110 0.0257 0 1.98 376 test.phys biasWrapper(Rayl) - 10 3.23 310 105 0 0.000405 15 391 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 27 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 3.23 310 105 0.0253 0 0 0 test.phys initStep - 1 3.23 310 105 0 0.0253 0.0182 0.0182 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 27 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 5.72 295 111 0.000454 0 0 0 test.phys initStep - 1 5.72 295 111 0 0.000454 2.97e-05 2.97e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 27 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.64 292 110 0.000176 0 0 0 test.phys initStep - 1 6.64 292 110 0 0.000176 1.21e-05 1.21e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 31, Parent ID = 27 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 3.94 276 108 0.000985 0 0 0 test.phys initStep - 1 3.94 276 108 0 0.000985 8.15e-05 8.15e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 30, Parent ID = 27 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -25.4 273 102 0.000899 0 0 0 test.phys initStep - 1 -25.4 273 102 0 0.000899 7.17e-05 7.17e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 29, Parent ID = 27 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -31.3 264 68 0.0027 0 0 0 test.phys initStep - 1 -31.3 264 68 0 0.0027 0.000384 0.000384 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 28, Parent ID = 27 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -9.74 228 109 0.00106 0 0 0 test.phys initStep - 1 -9.74 228 109 0 0.00106 9.04e-05 9.04e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00736 -0.309 83.2 14.8 0 0 0 test.phys initStep - 1 1.15 -2.12 200 14.8 0 117 117 World Transportation - 2 97.3 -154 1e+04 14.8 0 9.8e+03 9.92e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.03 -0.27 80.4 0.235 0 0 0 test.phys initStep - 1 0.266 -0.498 80.6 0 0.235 0.807 0.807 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0916 -0.153 72.1 1.54 0 0 0 test.phys initStep - 1 -2.1 0.0581 74.6 1.04 0.496 3.61 3.61 test.phys eIoni - 2 -4 1.05 75.4 0.623 0.417 2.78 6.39 test.phys eIoni - 3 -5.41 1.42 75.1 0.334 0.289 2.03 8.42 test.phys eIoni - 4 -5.43 1.28 74.4 0.0737 0.26 1.3 9.71 test.phys eIoni - 5 -5.39 1.26 74.4 0 0.0737 0.118 9.83 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 5.29 0.501 0 5.29 505 test.phys biasWrapper(compt) - 2 -25 18.2 4.81 0.411 0 31 536 test.phys biasWrapper(compt) - 3 -29.9 21.3 1.78e-15 0.411 0 7.54 544 World Transportation - 4 -1e+04 6.26e+03 -9.77e+03 0.411 0 1.53e+04 1.58e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -25 18.2 4.81 0.0897 0 0 0 test.phys initStep - 1 -25.1 18.3 4.88 0 0.0897 0.166 0.166 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 5.29 99.5 0 0 0 test.phys initStep - 1 0.597 0.414 33.9 95.7 3.8 28.6 28.6 test.phys eBrem - 2 0.842 0.438 42.4 94 1.09 8.52 37.2 test.phys eIoni - 3 1.35 0.21 55.8 92.3 1.72 13.4 50.5 test.phys eBrem - 4 1.68 0.265 64.5 39.9 0.986 8.76 59.3 test.phys eBrem - 5 1.75 0.262 66.3 39.5 0.223 1.71 61 test.phys eIoni - 6 1.48 -0.219 83.3 36 2 17.1 78.1 test.phys eBrem - 7 1.47 -0.224 83.4 35.7 0.0686 0.151 78.2 test.phys eIoni - 8 3.73 -0.751 120 31.2 4.34 36.7 115 test.phys eBrem - 9 3.95 -0.765 121 30.7 0.123 1.14 116 test.phys eIoni - 10 6.23 -1.35 130 28.3 1.18 9.43 125 test.phys eIoni - 11 16.8 -8.27 175 22.6 5.69 46.4 172 test.phys eIoni - 12 17.6 -14.5 200 19.5 3.05 26.5 198 World Transportation - 13 -1.29e+03 -1.81e+03 1e+04 19.5 3.2e-22 1e+04 1.02e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.23 -1.35 130 1.25 0 0 0 test.phys initStep - 1 7.97 -2.64 132 0.937 0.315 3.14 3.14 test.phys eIoni - 2 9.02 -3.49 133 0.423 0.514 2.6 5.74 test.phys eIoni - 3 9.05 -4.16 134 0.19 0.233 1.58 7.32 test.phys eIoni - 4 9.34 -4.14 134 0 0.19 0.577 7.9 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 3.95 -0.765 121 0.402 0 0 0 test.phys initStep - 1 3.29 -0.694 122 0.112 0.29 1.52 1.52 test.phys eIoni - 2 3.32 -0.586 122 0 0.112 0.242 1.76 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 3.73 -0.751 120 0.155 0 0 0 test.phys initStep - 1 10.3 -2.06 152 0.15 0 33.2 33.2 test.phys biasWrapper(compt) - 2 2.08 9.32 200 0.15 0 49.6 82.8 World Transportation - 3 -1.69e+03 2.35e+03 1e+04 0.15 0 1.02e+04 1.03e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 12 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 10.3 -2.06 152 0.00465 0 0 0 test.phys initStep - 1 10.3 -2.06 152 0 0.00465 0.000951 0.000951 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.47 -0.224 83.4 0.233 0 0 0 test.phys initStep - 1 1.57 -0.582 83.6 0 0.233 0.798 0.798 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.48 -0.219 83.3 1.46 0 0 0 test.phys initStep - 1 1.72 -3.58 200 1.46 0 117 117 World Transportation - 2 22 -286 1e+04 1.46 0 9.8e+03 9.92e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.75 0.262 66.3 0.222 0 0 0 test.phys initStep - 1 1.69 0.596 66.4 0 0.222 0.741 0.741 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.68 0.265 64.5 51.4 0 0 0 test.phys initStep - 1 4.08 -0.683 159 2.35 0 94.7 94.7 test.phys biasWrapper(compt) - 2 6.07 11 175 0.76 0 19.5 114 test.phys biasWrapper(compt) - 3 6.27 1.8 200 0.76 0 26.8 141 World Transportation - 4 86.3 -3.56e+03 1e+04 0.76 0 1.04e+04 1.06e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 8 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.07 11 175 1.59 0 0 0 test.phys initStep - 1 6.44 13.6 177 1.22 0.369 3.7 3.7 test.phys eIoni - 2 4.08 13.7 178 0.896 0.324 3.08 6.79 test.phys eIoni - 3 2.99 14.4 179 0.627 0.27 2.53 9.32 test.phys eIoni - 4 2.58 14.1 179 0.515 0.111 0.534 9.85 test.phys eIoni - 5 1.37 14 179 0.279 0.236 1.8 11.7 test.phys eIoni - 6 0.841 13.9 179 0 0.279 1.05 12.7 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 8 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 4.08 -0.683 159 49 0 0 0 test.phys initStep - 1 4.24 -0.921 164 42.7 0.492 4.63 4.63 test.phys eBrem - 2 5.51 -2.72 200 38.2 4.45 36.4 41 World Transportation - 3 113 -1.05e+03 1e+04 38.2 3.34e-22 9.86e+03 9.9e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 18, Parent ID = 16 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 4.24 -0.921 164 5.85 0 0 0 test.phys initStep - 1 5.53 -2.65 200 5.85 0 36.2 36.2 World Transportation - 2 353 -472 1e+04 5.85 0 9.82e+03 9.85e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.35 0.21 55.8 0.00765 0 0 0 test.phys initStep - 1 1.4 0.199 57.3 0 0.000405 1.52 1.52 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 7 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.4 0.199 57.3 0.00725 0 0 0 test.phys initStep - 1 1.4 0.2 57.3 0 0.00725 0.00203 0.00203 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.842 0.438 42.4 0.536 0 0 0 test.phys initStep - 1 1.87 0.63 43.1 0.278 0.258 1.85 1.85 test.phys eIoni - 2 2.4 0.715 43.2 0.0606 0.217 1.04 2.89 test.phys eIoni - 3 2.41 0.71 43.2 0 0.0606 0.0846 2.98 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.597 0.414 33.9 0.0455 0 0 0 test.phys initStep - 1 6.29 1.93 200 0.0455 0 166 166 World Transportation - 2 342 91.5 1e+04 0.0455 0 9.81e+03 9.97e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 199 0 0 199 699 test.phys biasWrapper(conv) - -********************************************************************************************************* -* G4Track Information: Particle = e+, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 199 41.4 0 0 0 test.phys initStep - 1 0.0214 -0.0296 200 41.2 0.171 1.36 1.36 World Transportation - 2 -110 -87.5 1e+04 41.2 3.34e-22 9.8e+03 9.8e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 199 57.6 0 0 0 test.phys initStep - 1 -0.00144 0.002 200 57.5 0.137 1.36 1.36 World Transportation - 2 -41.8 36.3 1e+04 57.5 3.44e-22 9.8e+03 9.8e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 130 0 0 130 630 test.phys biasWrapper(conv) - -********************************************************************************************************* -* G4Track Information: Particle = e+, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 130 66.8 0 0 0 test.phys initStep - 1 -0.281 1 159 62.7 3.37 28.8 28.8 test.phys eIoni - 2 -0.304 1.63 186 56.8 3.47 27.3 56.1 test.phys eBrem - 3 -0.0457 2.02 198 49.9 1.37 11.7 67.8 test.phys eBrem - 4 -0.0296 2.04 199 49.3 0.117 0.556 68.4 test.phys eIoni - 5 0.00588 2.07 200 49.2 0.156 1.35 69.7 World Transportation - 6 164 191 1e+04 49.2 3.39e-22 9.8e+03 9.87e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0296 2.04 199 0.464 0 0 0 test.phys initStep - 1 0.0679 2.66 199 0.387 0.0775 0.673 0.673 test.phys msc - 2 0.512 3.03 198 0.179 0.208 0.794 1.47 test.phys msc - 3 0.759 3.12 198 0 0.179 0.522 1.99 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0457 2.02 198 5.5 0 0 0 test.phys initStep - 1 -0.0382 2.12 200 5.5 0 1.91 1.91 World Transportation - 2 38.7 513 1e+04 5.5 0 9.81e+03 9.82e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.304 1.63 186 2.51 0 0 0 test.phys initStep - 1 -0.477 2.06 200 2.51 0 13.6 13.6 World Transportation - 2 -125 311 1e+04 2.51 0 9.81e+03 9.82e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.281 1 159 0.658 0 0 0 test.phys initStep - 1 0.829 0.521 160 0.403 0.255 2.1 2.1 test.phys eIoni - 2 0.985 1.27 161 0.174 0.228 1.52 3.62 test.phys eIoni - 3 1.17 1.42 161 0 0.174 0.502 4.12 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 130 32.2 0 0 0 test.phys initStep - 1 -1.24 -3.81 174 26.7 5.44 43.8 43.8 test.phys eBrem - 2 -2.58 -7.35 181 24.7 1.15 8.29 52.1 test.phys eIoni - 3 -5.8 -14.1 194 22.7 1.75 14.6 66.7 test.phys eIoni - 4 -7.01 -16.3 198 21.9 0.567 5.1 71.8 test.phys eIoni - 5 -7.41 -17.2 200 21.7 0.222 2.12 73.9 World Transportation - 6 -2.26e+03 -4.52e+03 1e+04 21.7 3.55e-22 1.1e+04 1.11e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -7.01 -16.3 198 0.25 0 0 0 test.phys initStep - 1 -7.37 -16.6 198 0 0.25 0.889 0.889 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -5.8 -14.1 194 0.295 0 0 0 test.phys initStep - 1 -5.88 -14.7 194 0.136 0.14 0.811 0.811 test.phys eBrem - 2 -6.04 -14.7 194 0 0.136 0.335 1.15 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -5.88 -14.7 194 0.0182 0 0 0 test.phys initStep - 1 -10.8 -24.6 189 0.0171 0 11.9 11.9 test.phys biasWrapper(compt) - 2 0.664 -20.2 194 0.0167 0 13 24.9 test.phys biasWrapper(compt) - 3 -3.73 11.6 193 0.0163 0 32 56.9 test.phys biasWrapper(compt) - 4 -3.61 11.6 193 0 0.000405 0.402 57.3 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 13 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.61 11.6 193 0.0158 0 0 0 test.phys initStep - 1 -3.61 11.6 193 0 0.0158 0.00798 0.00798 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 13 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.73 11.6 193 0.000454 0 0 0 test.phys initStep - 1 -3.73 11.6 193 0 0.000454 2.97e-05 2.97e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 13 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.664 -20.2 194 0.000442 0 0 0 test.phys initStep - 1 0.664 -20.2 194 0 0.000442 2.88e-05 2.88e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 13 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -10.8 -24.6 189 0.00108 0 0 0 test.phys initStep - 1 -10.8 -24.6 189 0 0.00108 9.33e-05 9.33e-05 test.phys eIoni + 0 9.85 -7.52 193 0.0914 0 0 0 test.phys initStep + 1 10.2 -8.76 200 0.0914 0 7.13 7.13 World Transportation + 2 567 -1.73e+03 1e+04 0.0914 0 9.97e+03 9.97e+03 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 10, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -2.58 -7.35 181 0.844 0 0 0 test.phys initStep - 1 -2.04 -7.88 182 0.657 0.112 1.03 1.03 test.phys eBrem - 2 -1.36 -8.2 183 0.372 0.285 2.09 3.13 test.phys eIoni - 3 -1.51 -7.94 184 0.147 0.225 1.43 4.55 test.phys eIoni - 4 -1.52 -8.05 184 0 0.147 0.378 4.93 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 18, Parent ID = 10 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -2.04 -7.88 182 0.0746 0 0 0 test.phys initStep - 1 1.17 -12.6 200 0.0746 0 19.2 19.2 World Transportation - 2 1.72e+03 -2.56e+03 1e+04 0.0746 0 1.03e+04 1.03e+04 OutOfWorld Transportation + 0 8.54 -3.12 169 1.71 0 0 0 test.phys initStep + 1 7.03 -4.79 172 1.28 0.431 3.9 3.9 test.phys eIoni + 2 5.26 -5.99 173 0.727 0.553 3.18 7.09 test.phys eIoni + 3 3.69 -6.38 174 0.461 0.266 2.23 9.31 test.phys eIoni + 4 2.87 -6.94 174 0.21 0.25 1.68 11 test.phys eIoni + 5 2.65 -7.2 174 0 0.21 0.677 11.7 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.24 -3.81 174 0.0215 0 0 0 test.phys initStep - 1 -5.97 -15.4 200 0.0215 0 29 29 World Transportation - 2 -1.77e+03 -4.35e+03 1e+04 0.0215 0 1.09e+04 1.09e+04 OutOfWorld Transportation + 0 7.29 -0.0456 151 6.82 0 0 0 test.phys initStep + 1 11.5 -9.92 200 6.82 0 50.5 50.5 World Transportation + 2 854 -1.97e+03 1e+04 6.82 0 1e+04 1.01e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 1 0 200 700 World Transportation - 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation + 0 2.76 1.92 74.1 0.333 0 0 0 test.phys initStep + 1 10.9 5.9 200 0.333 0 126 126 World Transportation + 2 644 316 1e+04 0.333 0 9.83e+03 9.95e+03 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1 0 0 500 test.phys initStep - 1 0 0 8.38 0.995 0.0046 8.38 508 test.phys biasWrapper(hadElastic) - 2 -1.94 -49.6 200 0.995 0 198 706 World Transportation - 3 -101 -2.59e+03 1e+04 0.995 0 1.01e+04 1.08e+04 OutOfWorld Transportation + 0 1.14 1.43 54.4 1.36 0 0 0 test.phys initStep + 1 -0.534 2.08 56.6 1.02 0.349 3.33 3.33 test.phys eIoni + 2 -0.0212 3.84 58 0.722 0.294 2.74 6.06 test.phys eIoni + 3 -0.234 5.46 58.4 0.433 0.289 2.22 8.28 test.phys eIoni + 4 -0.676 4.71 58.1 0.095 0.173 1.31 9.59 test.phys eBrem + 5 -0.628 4.76 58.1 0 0.095 0.183 9.77 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 7 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 1 0 200 700 World Transportation - 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation + 0 -0.676 4.71 58.1 0.166 0 0 0 test.phys initStep + 1 21.3 30.6 114 0.16 0 65.6 65.6 test.phys biasWrapper(compt) + 2 45.9 72 147 0.125 0 58.2 124 test.phys biasWrapper(compt) + 3 94.8 84.9 105 0.0869 0 65.3 189 test.phys biasWrapper(compt) + 4 87.8 79.6 107 0.0687 0 8.91 198 test.phys biasWrapper(compt) + 5 87.8 87.7 108 0.0619 0 8.28 206 test.phys biasWrapper(compt) + 6 86.1 88.5 107 0.0529 0 2.59 209 test.phys biasWrapper(compt) + 7 109 -59.7 99.5 0.0455 0 150 359 test.phys biasWrapper(compt) + 8 55.3 -7.1 182 0.0455 0 111 470 test.phys biasWrapper(Rayl) + 9 44.5 4.21 200 0.0455 0 24.1 494 World Transportation + 10 -5.66e+03 6.01e+03 1e+04 0.0455 0 1.28e+04 1.33e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 12 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1 0 0 500 test.phys initStep - 1 0 0 61.1 0.9 0 61.1 561 test.phys biasWrapper(hadElastic) - 2 28 -97.4 89.3 0.87 0.0301 105 666 test.phys biasWrapper(hadElastic) - 3 273 -250 200 0.87 0 309 975 World Transportation - 4 1e+04 -6.3e+03 4.59e+03 0.87 0 1.23e+04 1.32e+04 OutOfWorld Transportation + 0 109 -59.7 99.5 0.00743 0 0 0 test.phys initStep + 1 109 -59.7 99.5 0 0.00743 0.00212 0.00212 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 12 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 61.1 0.1 0 0 0 test.phys initStep - 1 -0.000201 0.000698 61.1 0 0.1 0.00116 0.00116 test.phys ionIoni + 0 86.1 88.5 107 0.00898 0 0 0 test.phys initStep + 1 86.1 88.5 107 0 0.00898 0.00295 0.00295 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 12 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 1 0 200 700 World Transportation - 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation + 0 87.8 87.7 108 0.0068 0 0 0 test.phys initStep + 1 87.8 87.7 108 0 0.0068 0.00182 0.00182 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 12 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1 0 0 500 test.phys initStep - 1 0 0 53.4 0.852 0 53.4 553 test.phys biasWrapper(hadElastic) - 2 192 -52.8 31.8 0.677 0 200 753 test.phys biasWrapper(hadElastic) - 3 175 -8.6 46.7 0.6 0 49.7 803 test.phys biasWrapper(hadElastic) - 4 152 -29.7 141 0.584 0.0167 99.3 902 test.phys biasWrapper(hadElastic) - 5 106 -95.9 200 0.584 0 100 1e+03 World Transportation - 6 -6.82e+03 -1e+04 9.01e+03 0.584 0 1.5e+04 1.6e+04 OutOfWorld Transportation + 0 87.8 79.6 107 0.0182 0 0 0 test.phys initStep + 1 87.8 79.6 107 0 0.0182 0.0102 0.0102 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 5, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 12 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 175 -8.6 46.7 0.0762 0 0 0 test.phys initStep - 1 175 -8.6 46.7 0 0.0762 0.000972 0.000972 test.phys ionIoni + 0 94.8 84.9 105 0.0383 0 0 0 test.phys initStep + 1 94.8 85 105 0 0.0383 0.0378 0.0378 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 4, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 12 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 192 -52.8 31.8 0.176 0 0 0 test.phys initStep - 1 192 -52.8 31.8 0 0.176 0.00166 0.00166 test.phys ionIoni + 0 45.9 72 147 0.0352 0 0 0 test.phys initStep + 1 45.9 72 147 0 0.0352 0.0327 0.0327 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 12 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 53.4 0.148 0 0 0 test.phys initStep - 1 -0.000802 0.000221 53.4 0 0.148 0.00149 0.00149 test.phys ionIoni + 0 21.3 30.6 114 0.0051 0 0 0 test.phys initStep + 1 21.3 30.6 114 0 0.0051 0.00111 0.00111 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 1 0 200 700 World Transportation - 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1 0 0 500 test.phys initStep - 1 0 0 142 0.926 0 142 642 test.phys biasWrapper(hadElastic) - 2 -110 -3.13 200 0.926 0 124 766 World Transportation - 3 -1e+04 -286 5.48e+03 0.926 0 1.12e+04 1.2e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 142 0.0736 0 0 0 test.phys initStep - 1 0.000592 1.69e-05 142 0 0.0736 0.000951 0.000951 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 1 0 200 700 World Transportation - 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1 0 0 500 test.phys initStep - 1 0 0 75.3 0.862 0 75.3 575 test.phys biasWrapper(hadElastic) - 2 -32.3 -310 67.4 0.712 0 312 887 test.phys biasWrapper(hadElastic) - 3 -67.6 -262 200 0.712 0 145 1.03e+03 World Transportation - 4 -2.68e+03 3.29e+03 1e+04 0.712 0 1.07e+04 1.18e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -32.3 -310 67.4 0.15 0 0 0 test.phys initStep - 1 -32.3 -310 67.4 0 0.15 0.0015 0.0015 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 75.3 0.138 0 0 0 test.phys initStep - 1 8.53e-05 0.000819 75.3 0 0.138 0.00142 0.00142 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 1 0 200 700 World Transportation - 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1 0 0 500 test.phys initStep - 1 0 0 33.4 0.88 0 33.4 533 test.phys biasWrapper(hadElastic) - 2 -35.5 2.72 37.4 0.763 0 35.9 569 test.phys biasWrapper(hadElastic) - 3 -31.9 128 0 0.763 0 130 700 World Transportation - 4 253 1e+04 -2.96e+03 0.763 0 1.03e+04 1.1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -35.5 2.72 37.4 0.117 0 0 0 test.phys initStep - 1 -35.5 2.72 37.4 0 0.117 0.00128 0.00128 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 33.4 0.12 0 0 0 test.phys initStep - 1 0.000788 -6.03e-05 33.4 0 0.12 0.0013 0.0013 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 1 0 200 700 World Transportation - 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1 0 0 500 test.phys initStep - 1 0 0 6.99 0.853 0 6.99 507 test.phys biasWrapper(hadElastic) - 2 -14.8 -19 4.52 0.751 0 24.2 531 test.phys biasWrapper(hadElastic) - 3 -16 -18.2 -3.55e-15 0.751 0 4.75 536 World Transportation - 4 -2.69e+03 1.73e+03 -1e+04 0.751 0 1.05e+04 1.1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -14.8 -19 4.52 0.102 0 0 0 test.phys initStep - 1 -14.8 -19 4.52 0 0.102 0.00117 0.00117 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 6.99 0.147 0 0 0 test.phys initStep - 1 0.000511 0.000656 6.99 0 0.147 0.00148 0.00148 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 1 0 200 700 World Transportation - 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1 0 0 500 test.phys initStep - 1 0 0 19 0.76 0 19 519 test.phys biasWrapper(hadElastic) - 2 -9.18 -1.02 3.55e-15 0.76 0 21.1 540 World Transportation - 3 -4.84e+03 -538 -1e+04 0.76 0 1.11e+04 1.17e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 19 0.24 0 0 0 test.phys initStep - 1 0.000366 4.07e-05 19 0 0.24 0.0019 0.0019 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 1 0 200 700 World Transportation - 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1 0 0 500 test.phys initStep - 1 0 0 41.9 0.993 0.0069 41.9 542 test.phys biasWrapper(hadElastic) - 2 -23.3 45.2 200 0.993 0 166 708 World Transportation - 3 -1.47e+03 2.84e+03 1e+04 0.993 0 1.03e+04 1.1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 1 0 0 0 World initStep - 1 0 0 0 1 0 500 500 test.phys Transportation - 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 1 0 200 700 World Transportation - 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1 0 0 500 test.phys initStep - 1 0 0 151 0.946 0.0543 151 651 test.phys biasWrapper(hadElastic) - 2 -1.88 2.23 154 0.941 0.00475 3.7 655 test.phys biasWrapper(hadElastic) - 3 -47.9 85.4 200 0.941 0 106 761 World Transportation - 4 -5.53e+03 1e+04 5.71e+03 0.941 0 1.26e+04 1.34e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 1.78 99.8 0 1.78 502 test.phys biasWrapper(hadElastic) - 2 -25.7 -18.2 200 99.8 0 201 702 World Transportation - 3 -1.3e+03 -917 1e+04 99.8 0 9.92e+03 1.06e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 1.78 0.188 0 0 0 test.phys initStep - 1 0.00126 0.000889 1.78 0 0.188 0.00171 0.00171 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 36.1 99.7 0 36.1 536 test.phys biasWrapper(hadElastic) - 2 -4.31 -2.48 60.6 0 0 25 561 test.phys biasWrapper(neutronInelastic) - -********************************************************************************************************* -* G4Track Information: Particle = C12, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.31 -2.48 60.6 5.21 0 0 0 test.phys initStep - 1 -4.31 -2.48 60.6 0 5.21 0.00669 0.00669 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.31 -2.48 60.6 0.145 0 0 0 test.phys initStep - 1 -116 45.8 200 0.145 0 185 185 World Transportation - 2 -7.96e+03 3.44e+03 1e+04 0.145 0 1.3e+04 1.32e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.31 -2.48 60.6 1.68 0 0 0 test.phys initStep - 1 -41.7 -239 91.2 1.19 0 242 242 test.phys biasWrapper(compt) - 2 -25.4 -350 57.9 0.851 0 117 359 test.phys biasWrapper(compt) - 3 79.4 -459 0 0.851 0 162 521 World Transportation - 4 9.24e+03 -1e+04 -5.07e+03 0.851 0 1.42e+04 1.47e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 7 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -25.4 -350 57.9 0.334 0 0 0 test.phys initStep - 1 -25.8 -351 57.9 0.0191 0.315 1.3 1.3 test.phys eIoni - 2 -25.8 -351 57.9 0 0.0191 0.0111 1.31 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 7 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -41.7 -239 91.2 0.5 0 0 0 test.phys initStep - 1 -42.2 -240 92 0.211 0.289 1.77 1.77 test.phys eIoni - 2 -42.1 -240 92.3 0 0.211 0.683 2.45 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 6, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.31 -2.48 60.6 4.95 0 0 0 test.phys initStep - 1 -4.29 -2.71 60.5 3.32 1.63 0.244 0.244 test.phys hIoni - 2 -4.27 -2.88 60.5 1.63 1.68 0.179 0.423 test.phys hIoni - 3 -4.27 -2.95 60.5 0 1.63 0.077 0.5 test.phys hIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.31 -2.48 60.6 27.7 0 0 0 test.phys initStep - 1 10.9 122 145 27.7 0.0348 151 151 test.phys biasWrapper(hadElastic) - 2 34.9 208 200 27.7 0 105 256 World Transportation - 3 2.76e+03 1e+04 6.48e+03 27.7 0 1.19e+04 1.22e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.31 -2.48 60.6 47.4 0 0 0 test.phys initStep - 1 -19.8 -32.3 63.2 47.2 0 33.7 33.7 test.phys biasWrapper(hadElastic) - 2 -31.3 -60.7 73.1 46.1 0 32.1 65.9 test.phys biasWrapper(hadElastic) - 3 -51.2 -91.9 64.2 46.1 0.0242 38.1 104 test.phys biasWrapper(hadElastic) - 4 -109 -195 43.8 0 0 119 223 test.phys biasWrapper(neutronInelastic) - -********************************************************************************************************* -* G4Track Information: Particle = C12, Track ID = 19, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -109 -195 43.8 1.01 0 0 0 test.phys initStep - 1 -109 -195 43.8 0 1.01 0.00302 0.00302 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 18, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -109 -195 43.8 4.54 0 0 0 test.phys initStep - 1 -27.3 -443 200 4.54 0 305 305 World Transportation - 2 3.09e+03 -1e+04 6.2e+03 4.54 0 1.17e+04 1.2e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -109 -195 43.8 4.59 0 0 0 test.phys initStep - 1 -208 -250 200 4.59 0 193 193 World Transportation - 2 -6.44e+03 -3.72e+03 1e+04 4.59 0 1.21e+04 1.23e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 16, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -109 -195 43.8 5.48 0 0 0 test.phys initStep - 1 -109 -195 44 3.92 1.57 0.267 0.267 test.phys hIoni - 2 -109 -195 44.1 2.23 1.68 0.203 0.47 test.phys hIoni - 3 -109 -195 44.2 0.272 1.96 0.124 0.594 test.phys hIoni - 4 -109 -195 44.2 0 0.272 0.00567 0.599 test.phys hIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -109 -195 43.8 5.69 0 0 0 test.phys initStep - 1 -117 -191 0 5.69 0 44.6 44.6 World Transportation - 2 -1.96e+03 507 -1e+04 5.69 0 1.02e+04 1.02e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 14, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -109 -195 43.8 12.2 0 0 0 test.phys initStep - 1 -146 -205 0 12.2 0 58.5 58.5 World Transportation - 2 -8.66e+03 -2.63e+03 -1e+04 12.2 0 1.34e+04 1.34e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 13, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -31.3 -60.7 73.1 1.11 0 0 0 test.phys initStep - 1 -31.3 -60.7 73.1 0 1.11 0.00292 0.00292 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 12, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -19.8 -32.3 63.2 0.222 0 0 0 test.phys initStep - 1 -19.8 -32.3 63.2 0 0.222 0.00184 0.00184 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 36.1 0.303 0 0 0 test.phys initStep - 1 0.00168 0.000968 36.1 0 0.303 0.00206 0.00206 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 58 99.7 0 58 558 test.phys biasWrapper(hadElastic) - 2 -20.8 18.3 200 99.7 0 145 703 World Transportation - 3 -1.46e+03 1.28e+03 1e+04 99.7 0 9.98e+03 1.07e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 58 0.28 0 0 0 test.phys initStep - 1 0.00142 -0.00124 58 0 0.28 0.002 0.002 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 132 0 0 132 632 test.phys biasWrapper(neutronInelastic) - -********************************************************************************************************* -* G4Track Information: Particle = C12, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 0.121 0 0 0 test.phys initStep - 1 -0.00104 -0.000434 132 0 0.121 0.00145 0.00145 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 0.275 0 0 0 test.phys initStep - 1 46.4 24.7 200 0.275 0 85.7 85.7 World Transportation - 2 6.77e+03 3.6e+03 1e+04 0.275 0 1.24e+04 1.25e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 0.356 0 0 0 test.phys initStep - 1 -29.2 -53.4 200 0.356 0 91 91 World Transportation - 2 -4.26e+03 -7.79e+03 1e+04 0.356 0 1.32e+04 1.33e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 3.15 0 0 0 test.phys initStep - 1 615 -179 48.5 0.959 0 646 646 test.phys biasWrapper(compt) - 2 895 14 36.4 0.404 0 340 986 test.phys biasWrapper(compt) - 3 872 84.9 57.4 0.301 0 77.4 1.06e+03 test.phys biasWrapper(compt) - 4 988 221 200 0.301 0 229 1.29e+03 World Transportation - 5 8.97e+03 9.59e+03 1e+04 0.301 0 1.57e+04 1.7e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 872 84.9 57.4 0.103 0 0 0 test.phys initStep - 1 872 85 57.3 0 0.103 0.212 0.212 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 895 14 36.4 0.555 0 0 0 test.phys initStep - 1 896 14.2 36.2 0.321 0.234 1.89 1.89 test.phys eIoni - 2 896 13.7 35.8 0 0.321 1.25 3.13 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 615 -179 48.5 2.19 0 0 0 test.phys initStep - 1 619 -182 47.9 1.61 0.583 4.7 4.7 test.phys eIoni - 2 621 -179 47.2 1.01 0.599 3.73 8.43 test.phys eIoni - 3 621 -177 46.5 0.688 0.32 2.72 11.2 test.phys eIoni - 4 622 -176 45.6 0.34 0.348 2.15 13.3 test.phys eIoni - 5 622 -175 46.1 0.059 0.281 1.32 14.6 test.phys eIoni - 6 622 -175 46 0 0.059 0.0806 14.7 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 4.2 0 0 0 test.phys initStep - 1 102 -142 200 4.2 0 187 187 World Transportation - 2 7.18e+03 -1e+04 4.9e+03 4.2 0 1.3e+04 1.32e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 21.6 0 0 0 test.phys initStep - 1 23.2 97.3 200 21.6 0 121 121 World Transportation - 2 2.39e+03 1e+04 7.08e+03 21.6 0 1.23e+04 1.24e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 132 57.8 0 0 0 test.phys initStep - 1 -1.16 -1.89 140 50.7 7.12 8.21 8.21 test.phys hIoni - 2 -2.05 -3.54 146 44.6 6.06 6.52 14.7 test.phys hIoni - 3 -2.76 -4.88 151 39.2 5.37 5.21 19.9 test.phys hIoni - 4 -3.28 -5.95 155 34.5 4.69 4.17 24.1 test.phys hIoni - 5 -3.75 -6.8 159 30.3 4.24 3.34 27.5 test.phys hIoni - 6 -4.16 -7.47 161 26.5 3.79 2.67 30.1 test.phys hIoni - 7 -4.48 -8 163 23.1 3.4 2.14 32.3 test.phys hIoni - 8 -4.68 -8.41 165 20.2 2.89 1.7 34 test.phys hIoni - 9 -4.89 -8.73 166 17.7 2.52 1.37 35.3 test.phys hIoni - 10 -5.04 -8.99 167 15.1 2.6 1.11 36.5 test.phys hIoni - 11 -5.17 -9.19 168 13 2.07 0.877 37.3 test.phys hIoni - 12 -5.27 -9.35 169 11.1 1.91 0.71 38 test.phys hIoni - 13 -5.35 -9.49 169 9.36 1.78 0.573 38.6 test.phys hIoni - 14 -5.42 -9.6 170 7.59 1.77 0.461 39.1 test.phys hIoni - 15 -5.47 -9.68 170 5.97 1.62 0.364 39.4 test.phys hIoni - 16 -5.51 -9.74 170 4.41 1.57 0.288 39.7 test.phys hIoni - 17 -5.55 -9.79 171 2.75 1.66 0.223 40 test.phys hIoni - 18 -5.58 -9.82 171 0.89 1.86 0.153 40.1 test.phys hIoni - 19 -5.58 -9.83 171 0.258 0.632 0.0293 40.1 test.phys hIoni - 20 -5.58 -9.83 171 0 0.258 0.00535 40.1 test.phys hIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 57.7 99.5 0 57.7 558 test.phys biasWrapper(hadElastic) - 2 -28.7 -24 200 99.5 0 147 705 World Transportation - 3 -2e+03 -1.68e+03 1e+04 99.5 0 1.01e+04 1.08e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 57.7 0.498 0 0 0 test.phys initStep - 1 0.00177 0.00148 57.7 0 0.498 0.00238 0.00238 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 141 0 0 141 641 test.phys biasWrapper(neutronInelastic) - -********************************************************************************************************* -* G4Track Information: Particle = Be8, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 141 5.51 0 0 0 test.phys initStep - 1 -0.00251 -0.0116 141 0 5.51 0.0132 0.0132 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = alpha, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 141 2.48 0 0 0 test.phys initStep - 1 0.000641 0.0155 141 0 2.48 0.0168 0.0168 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 141 0.457 0 0 0 test.phys initStep - 1 -37.1 71.8 0 0.457 0 162 162 World Transportation - 2 -2.67e+03 5.17e+03 -1e+04 0.457 0 1.15e+04 1.17e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 141 1.1 0 0 0 test.phys initStep - 1 3.16 -13 200 1.1 0 60.8 60.8 World Transportation - 2 525 -2.17e+03 1e+04 1.1 0 1e+04 1.01e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 141 5.74 0 0 0 test.phys initStep - 1 2.31 -57.1 200 5.74 0 82.4 82.4 World Transportation - 2 385 -9.49e+03 1e+04 5.74 0 1.36e+04 1.37e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 141 18.6 0 0 0 test.phys initStep - 1 -0.804 0.848 140 16 2.56 1.2 1.2 test.phys hIoni - 2 -1.44 1.53 140 13.7 2.33 0.955 2.15 test.phys hIoni - 3 -1.95 2.07 140 11.5 2.16 0.759 2.91 test.phys hIoni - 4 -2.35 2.5 140 9.71 1.81 0.599 3.51 test.phys hIoni - 5 -2.68 2.84 140 7.88 1.82 0.482 3.99 test.phys hIoni - 6 -2.93 3.11 140 6.18 1.71 0.379 4.37 test.phys hIoni - 7 -3.13 3.32 140 4.59 1.59 0.297 4.67 test.phys hIoni - 8 -3.3 3.48 140 2.93 1.66 0.23 4.9 test.phys hIoni - 9 -3.41 3.58 140 1.12 1.81 0.162 5.06 test.phys hIoni - 10 -3.44 3.61 140 0.129 0.989 0.0419 5.1 test.phys hIoni - 11 -3.45 3.61 140 0 0.129 0.00275 5.1 test.phys hIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 141 46.2 0 0 0 test.phys initStep - 1 43.7 17 200 46.2 0 75.6 75.6 World Transportation - 2 7.27e+03 2.82e+03 1e+04 46.2 0 1.25e+04 1.26e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 30.3 0 0 30.3 530 test.phys biasWrapper(neutronInelastic) - -********************************************************************************************************* -* G4Track Information: Particle = C11, Track ID = 10, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 30.3 1.21 0 0 0 test.phys initStep - 1 -0.00242 0.00159 30.3 0 1.21 0.00298 0.00298 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 30.3 0.506 0 0 0 test.phys initStep - 1 -10.3 5.86 58 0.215 0 30.1 30.1 test.phys biasWrapper(compt) - 2 96.2 89.7 24.3 0.137 0 140 170 test.phys biasWrapper(compt) - 3 44.2 110 7.11e-15 0.137 0 61 231 World Transportation - 4 -1e+04 4.11e+03 -4.69e+03 0.137 0 1.18e+04 1.2e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 9 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 96.2 89.7 24.3 0.078 0 0 0 test.phys initStep - 1 96.2 89.7 24.3 0 0.078 0.131 0.131 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 9 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -10.3 5.86 58 0.291 0 0 0 test.phys initStep - 1 -10.6 5.84 58.5 0.0558 0.235 1.11 1.11 test.phys eIoni - 2 -10.6 5.86 58.5 0 0.0558 0.0732 1.18 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 30.3 1.41 0 0 0 test.phys initStep - 1 119 120 13.2 1.16 0 170 170 test.phys biasWrapper(compt) - 2 300 404 93.7 0.432 0 346 516 test.phys biasWrapper(compt) - 3 349 433 0 0.432 0 110 626 World Transportation - 4 5.6e+03 3.61e+03 -1e+04 0.432 0 1.17e+04 1.24e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 8 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 300 404 93.7 0.73 0 0 0 test.phys initStep - 1 300 405 94.7 0.404 0.326 2.23 2.23 test.phys eIoni - 2 300 404 95.2 0.125 0.279 1.53 3.76 test.phys eIoni - 3 300 404 95.2 0 0.125 0.292 4.05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 8 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 119 120 13.2 0.252 0 0 0 test.phys initStep - 1 119 120 12.9 0 0.252 0.898 0.898 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 30.3 6.72 0 0 0 test.phys initStep - 1 0.148 -0.131 30.6 5.09 1.63 0.322 0.322 test.phys hIoni - 2 0.272 -0.243 30.8 3.44 1.65 0.25 0.572 test.phys hIoni - 3 0.357 -0.321 30.9 1.74 1.7 0.184 0.756 test.phys hIoni - 4 0.389 -0.36 31 0.266 1.47 0.0852 0.841 test.phys hIoni - 5 0.391 -0.362 31 0 0.266 0.00555 0.847 test.phys hIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 30.3 7.09 0 0 0 test.phys initStep - 1 102 324 182 0.308 0 372 372 test.phys biasWrapper(compt) - 2 -9.19 304 66.2 0.189 0 162 534 test.phys biasWrapper(compt) - 3 -55.5 231 131 0.129 0 107 641 test.phys biasWrapper(compt) - 4 13.9 191 99.4 0.0932 0 86.1 727 test.phys biasWrapper(compt) - 5 -54 146 138 0.092 0 90 817 test.phys biasWrapper(compt) - 6 -88.9 133 142 0.0822 0 37.7 855 test.phys biasWrapper(compt) - 7 -89.6 121 158 0.0779 0 19.6 874 test.phys biasWrapper(compt) - 8 -100 130 200 0.0779 0 44.2 919 World Transportation - 9 -2.64e+03 2.26e+03 1e+04 0.0779 0 1.03e+04 1.13e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -89.6 121 158 0.0043 0 0 0 test.phys initStep - 1 -89.6 121 158 0 0.0043 0.000834 0.000834 test.phys eIoni + 0 0.82 1.13 39.6 0.00568 0 0 0 test.phys initStep + 1 0.831 1.15 40.1 0 0.000405 0.475 0.475 test.phys biasWrapper(phot) ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 20, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -88.9 133 142 0.0098 0 0 0 test.phys initStep - 1 -88.9 133 142 0 0.0098 0.00343 0.00343 test.phys eIoni + 0 0.831 1.15 40.1 0.00527 0 0 0 test.phys initStep + 1 0.831 1.15 40.1 0 0.00527 0.00118 0.00118 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 6 +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -54 146 138 0.00119 0 0 0 test.phys initStep - 1 -54 146 138 0 0.00119 0.000107 0.000107 test.phys eIoni + 0 0.417 0.216 18.5 0.223 0 0 0 test.phys initStep + 1 0.46 -0.121 18.6 0 0.223 0.744 0.744 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 6 +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 13.9 191 99.4 0.0359 0 0 0 test.phys initStep - 1 13.9 191 99.4 0 0.0359 0.0338 0.0338 test.phys eIoni + 0 0.22 0.135 13.2 0.298 0 0 0 test.phys initStep + 1 0.261 0.668 13.5 0 0.298 1.15 1.15 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -55.5 231 131 0.0596 0 0 0 test.phys initStep - 1 -55.5 231 131 0 0.0596 0.082 0.082 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -9.19 304 66.2 0.119 0 0 0 test.phys initStep - 1 -9.23 304 66.1 0 0.119 0.268 0.268 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 102 324 182 6.78 0 0 0 test.phys initStep - 1 102 324 182 6.68 0.0106 0.103 0.103 test.phys eBrem - 2 103 332 186 3 1.01 9.13 9.23 test.phys eIoni - 3 105 335 191 2.21 0.79 6.02 15.3 test.phys eIoni - 4 108 337 194 1.4 0.802 4.72 20 test.phys eIoni - 5 108 340 195 1.05 0.354 3.39 23.4 test.phys eIoni - 6 108 342 197 0.722 0.329 2.8 26.2 test.phys eIoni - 7 110 341 198 0.365 0.357 2.22 28.4 test.phys eIoni - 8 110 341 198 0.0191 0.346 1.41 29.8 test.phys eIoni - 9 110 341 198 0 0.0191 0.0111 29.8 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 15 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 103 332 186 2.67 0 0 0 test.phys initStep - 1 104 333 187 2.45 0.221 1.51 1.51 test.phys eBrem - 2 102 336 191 1.86 0.591 5.12 6.64 test.phys eIoni - 3 100 338 194 1.33 0.531 4.15 10.8 test.phys eIoni - 4 99.4 341 193 0.726 0.6 3.26 14 test.phys eIoni - 5 98.4 342 194 0.456 0.271 2.22 16.3 test.phys eIoni - 6 97.5 342 194 0.164 0.292 1.66 17.9 test.phys eIoni - 7 97.6 342 194 0 0.164 0.454 18.4 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 24, Parent ID = 23 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 104 333 187 0.00317 0 0 0 test.phys initStep - 1 104 333 187 0 0.000405 0.0533 0.0533 test.phys biasWrapper(phot) - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 24 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 104 333 187 0.00277 0 0 0 test.phys initStep - 1 104 333 187 0 0.00277 0.000401 0.000401 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 22, Parent ID = 15 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 102 324 182 0.0883 0 0 0 test.phys initStep - 1 122 386 200 0.0883 0 67.9 67.9 World Transportation - 2 3.1e+03 1e+04 3e+03 0.0883 0 1.04e+04 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 30.3 10.3 0 0 0 test.phys initStep - 1 -3.08 568 200 10.3 0 593 593 World Transportation - 2 -54.2 1e+04 3.02e+03 10.3 0 9.84e+03 1.04e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 30.3 17.7 0 0 0 test.phys initStep - 1 244 -243 200 17.7 0 384 384 World Transportation - 2 1e+04 -9.96e+03 6.98e+03 17.7 0 1.53e+04 1.57e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 30.3 23.7 0 0 0 test.phys initStep - 1 -2.03 -3.12 40 23 0 10.3 10.3 test.phys biasWrapper(hadElastic) - 2 -11.2 52 200 23 0 169 180 World Transportation - 3 -573 3.43e+03 1e+04 23 0 1.04e+04 1.06e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 26, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -2.03 -3.12 40 0.705 0 0 0 test.phys initStep - 1 -2.03 -3.12 40 0 0.705 0.00262 0.00262 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName @@ -3754,418 +1821,2167 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 17.7 0 0 17.7 518 test.phys biasWrapper(neutronInelastic) + 1 0 0 123 0 0 123 623 test.phys biasWrapper(conv) ********************************************************************************************************* -* G4Track Information: Particle = C12, Track ID = 9, Parent ID = 2 +* G4Track Information: Particle = e+, Track ID = 4, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 17.7 0.68 0 0 0 test.phys initStep - 1 0.00201 0.00172 17.7 0 0.68 0.00273 0.00273 test.phys ionIoni + 0 0 0 123 10.4 0 0 0 test.phys initStep + 1 0.312 0.335 141 8.43 1.93 18 18 test.phys eIoni + 2 1.67 -5.56 154 6.57 1.86 14.9 32.8 test.phys eIoni + 3 -3.46 -12.7 161 4.91 1.66 11.9 44.7 test.phys eIoni + 4 -9.36 -16 167 3.92 0.986 9.18 53.9 test.phys eIoni + 5 -10.3 -21.6 171 3.01 0.913 7.58 61.5 test.phys eIoni + 6 -10.9 -26.5 174 2.24 0.771 6.08 67.6 test.phys eIoni + 7 -12 -30.3 176 1.68 0.561 4.81 72.4 test.phys eIoni + 8 -10.2 -30.4 179 1.27 0.406 3.87 76.2 test.phys eIoni + 9 -10.6 -29.8 181 0.917 0.354 3.19 79.4 test.phys eIoni + 10 -10.2 -29.7 183 0.634 0.283 2.58 82 test.phys eIoni + 11 -10.7 -31 184 0.367 0.267 2.05 84 test.phys eIoni + 12 -10.2 -31.6 184 0.0954 0.271 1.4 85.4 test.phys eIoni + 13 -10.2 -31.7 184 0 0.0954 0.174 85.6 test.phys eIoni + 14 -10.2 -31.7 184 0 0 0 85.6 test.phys annihil ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 2 +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 17.7 0.191 0 0 0 test.phys initStep - 1 -105 -36.5 165 0.115 0 185 185 test.phys biasWrapper(compt) - 2 7.65 3.78 141 0.0957 0 122 306 test.phys biasWrapper(compt) - 3 2.31 79.3 200 0.0957 0 96.2 403 World Transportation - 4 -699 1e+04 8e+03 0.0957 0 1.26e+04 1.3e+04 OutOfWorld Transportation + 0 -10.2 -31.7 184 0.511 0 0 0 test.phys initStep + 1 8.86 -11 0 0.511 0 186 186 World Transportation + 2 1.04e+03 1.11e+03 -1e+04 0.511 0 1.01e+04 1.03e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 8 +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 7.65 3.78 141 0.0198 0 0 0 test.phys initStep - 1 7.66 3.78 141 0 0.0198 0.0118 0.0118 test.phys eIoni + 0 -10.2 -31.7 184 0.511 0 0 0 test.phys initStep + 1 -11.9 -33.5 200 0.511 0 16.1 16.1 World Transportation + 2 -1.03e+03 -1.14e+03 1e+04 0.511 0 9.91e+03 9.93e+03 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 8 +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -105 -36.5 165 0.0755 0 0 0 test.phys initStep - 1 -105 -36.5 165 0 0.0755 0.124 0.124 test.phys eIoni + 0 0 0 123 88.6 0 0 0 test.phys initStep + 1 -0.00428 0.00146 124 88.5 0.0945 0.875 0.875 test.phys eBrem + 2 0.134 -0.243 138 86.8 1.67 14.2 15.1 test.phys eBrem + 3 0.58 -1.41 159 83.8 2.64 20.8 35.9 test.phys eIoni + 4 0.782 -2.07 174 81.2 1.86 14.5 50.3 test.phys eIoni + 5 1.31 -2.72 200 77.9 3.25 26.4 76.8 World Transportation + 6 11.3 -169 1e+04 77.9 3.53e-22 9.8e+03 9.88e+03 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 17.7 0.604 0 0 0 test.phys initStep - 1 -35.7 7.84 -3.55e-15 0.604 0 40.6 40.6 World Transportation - 2 -1e+04 2.19e+03 -4.92e+03 0.604 0 1.13e+04 1.14e+04 OutOfWorld Transportation + 0 0.782 -2.07 174 0.768 0 0 0 test.phys initStep + 1 0.695 -3.44 175 0.481 0.288 2.3 2.3 test.phys eIoni + 2 0.916 -3.81 176 0.181 0.299 1.72 4.03 test.phys eIoni + 3 0.738 -4.02 176 0 0.181 0.535 4.56 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 6, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 17.7 1.76 0 0 0 test.phys initStep - 1 -6.34 17.2 12.5 1.53 0 19.1 19.1 test.phys biasWrapper(hadElastic) - 2 -28.1 22.7 54.4 1.31 0 47.5 66.6 test.phys biasWrapper(hadElastic) - 3 -116 13.9 0 1.31 0 104 170 World Transportation - 4 -1e+04 -974 -6.1e+03 1.31 0 1.17e+04 1.18e+04 OutOfWorld Transportation + 0 0.58 -1.41 159 0.346 0 0 0 test.phys initStep + 1 0.866 -2.01 159 0.101 0.244 1.34 1.34 test.phys eIoni + 2 0.85 -2.06 159 0 0.101 0.205 1.54 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 13, Parent ID = 6 +* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -28.1 22.7 54.4 0.222 0 0 0 test.phys initStep - 1 -28.1 22.7 54.4 0 0.222 0.00184 0.00184 test.phys ionIoni + 0 0.134 -0.243 138 0.0359 0 0 0 test.phys initStep + 1 1.33 -2.4 200 0.0359 0 61.6 61.6 World Transportation + 2 191 -346 1e+04 0.0359 0 9.81e+03 9.87e+03 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 12, Parent ID = 6 +* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -6.34 17.2 12.5 0.233 0 0 0 test.phys initStep - 1 -6.34 17.2 12.5 0 0.233 0.00187 0.00187 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 17.7 8.29 0 0 0 test.phys initStep - 1 192 -216 67.8 0.302 0 293 293 test.phys biasWrapper(compt) - 2 140 -33 200 0.302 0 232 525 World Transportation - 3 -2.7e+03 1e+04 7.44e+03 0.302 0 1.27e+04 1.32e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 5 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 192 -216 67.8 7.99 0 0 0 test.phys initStep - 1 201 -226 72.3 6.45 1.54 14.1 14.1 test.phys eIoni - 2 207 -234 75.4 4.97 1.48 11.6 25.7 test.phys eIoni - 3 207 -235 75.6 3.8 0.0645 0.618 26.3 test.phys eIoni - 4 210 -240 76.5 2.79 0.916 6.5 32.8 test.phys eBrem - 5 212 -245 76.6 2.18 0.608 5.67 38.5 test.phys eIoni - 6 212 -248 75.7 1 0.286 2.78 41.3 test.phys eIoni - 7 213 -250 75.6 0.716 0.286 2.71 44 test.phys eIoni - 8 214 -251 75.4 0.375 0.341 2.2 46.2 test.phys eIoni - 9 214 -252 75.5 0.157 0.218 1.44 47.6 test.phys eIoni - 10 214 -252 75.6 0 0.157 0.426 48.1 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 212 -248 75.7 0.889 0 0 0 test.phys initStep - 1 212 -248 73.9 0.615 0.274 2.52 2.52 test.phys eIoni - 2 213 -248 72.7 0.38 0.235 2.01 4.53 test.phys eIoni - 3 214 -248 72.2 0.0986 0.281 1.45 5.98 test.phys eIoni - 4 214 -248 72.1 0 0.0986 0.195 6.18 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 16, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 210 -240 76.5 0.0977 0 0 0 test.phys initStep - 1 232 -371 85.5 0.0722 0 133 133 test.phys biasWrapper(compt) - 2 289 -76.9 200 0.0722 0 321 454 World Transportation - 3 2.24e+03 1e+04 4.12e+03 0.0722 0 1.1e+04 1.14e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 16 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 232 -371 85.5 0.0255 0 0 0 test.phys initStep - 1 232 -371 85.5 0 0.0255 0.0185 0.0185 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 207 -235 75.6 1.1 0 0 0 test.phys initStep - 1 207 -236 77.4 0.73 0.372 2.88 2.88 test.phys eIoni - 2 206 -238 78.1 0.473 0.257 2.23 5.11 test.phys eIoni - 3 205 -237 77.5 0.194 0.279 1.7 6.82 test.phys eIoni - 4 206 -237 77.6 0 0.194 0.595 7.41 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 17.7 10.7 0 0 0 test.phys initStep - 1 57.9 14.5 164 0 0 158 158 test.phys biasWrapper(neutronInelastic) - -********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 22, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 57.9 14.5 164 0.754 0 0 0 test.phys initStep - 1 57.9 14.5 164 0 0.754 0.00266 0.00266 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 21, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 57.9 14.5 164 1.24 0 0 0 test.phys initStep - 1 21.8 62.3 200 1.24 0 69.8 69.8 World Transportation - 2 -7.48e+03 1e+04 7.65e+03 1.24 0 1.45e+04 1.46e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 20, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 57.9 14.5 164 2.1 0 0 0 test.phys initStep - 1 18.9 24.1 196 2.08 0.0226 51.5 51.5 test.phys biasWrapper(hadElastic) - 2 14.6 23 200 2.08 0 5.69 57.2 World Transportation - 3 -1e+04 -2.63e+03 8.43e+03 2.08 0 1.32e+04 1.33e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 19, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 57.9 14.5 164 6.62 0 0 0 test.phys initStep - 1 -557 -505 99.8 6.08 0 808 808 test.phys biasWrapper(compt) - 2 -724 -625 65.3 5.14 0 208 1.02e+03 test.phys biasWrapper(compt) - 3 -774 -663 43.2 1.17 0 66.7 1.08e+03 test.phys biasWrapper(compt) - 4 -775 -706 2.46 0.863 0 58.7 1.14e+03 test.phys biasWrapper(compt) - 5 -777 -708 0 0.863 0 3.96 1.15e+03 World Transportation - 6 -9.67e+03 -9.67e+03 -1e+04 0.863 0 1.61e+04 1.73e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 19 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -775 -706 2.46 0.308 0 0 0 test.phys initStep - 1 -774 -706 2.19 0.0754 0.233 1.19 1.19 test.phys eIoni - 2 -774 -706 2.25 0 0.0754 0.123 1.31 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 19 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -774 -663 43.2 3.97 0 0 0 test.phys initStep - 1 -780 -667 41.8 3 0.969 7.61 7.61 test.phys eIoni - 2 -785 -669 41.4 2.33 0.673 6.03 13.6 test.phys eIoni - 3 -789 -670 39.8 1.69 0.634 4.92 18.6 test.phys eIoni - 4 -790 -667 37.9 1.21 0.484 3.88 22.4 test.phys eIoni - 5 -791 -666 35.6 0.793 0.416 3.07 25.5 test.phys eIoni - 6 -792 -665 36.7 0.492 0.301 2.35 27.8 test.phys eIoni - 7 -792 -664 37.5 0.186 0.306 1.75 29.6 test.phys eIoni - 8 -791 -664 37.7 0 0.186 0.556 30.1 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 19 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -724 -625 65.3 0.938 0 0 0 test.phys initStep - 1 -725 -626 66.4 0.63 0.308 2.6 2.6 test.phys eIoni - 2 -726 -627 66.1 0.381 0.25 2.04 4.64 test.phys eIoni - 3 -726 -628 67 0.169 0.212 1.46 6.1 test.phys eIoni - 4 -726 -628 67.1 0 0.169 0.477 6.58 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 19 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -557 -505 99.8 0.543 0 0 0 test.phys initStep - 1 -557 -506 100 0.301 0.242 1.86 1.86 test.phys eIoni - 2 -557 -507 100 0.0494 0.251 1.16 3.02 test.phys eIoni - 3 -557 -507 100 0 0.0494 0.0591 3.08 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 17.7 65.2 0 0 0 test.phys initStep - 1 -3.7 -3.93 26.3 57.5 7.67 10.2 10.2 test.phys hIoni - 2 -6.59 -7.04 33.2 50.8 6.77 8.15 18.3 test.phys hIoni - 3 -8.93 -9.64 38.8 44.6 6.17 6.54 24.9 test.phys hIoni - 4 -10.7 -11.6 43.3 39 5.6 5.21 30.1 test.phys hIoni - 5 -12.1 -13.3 46.8 34.2 4.77 4.12 34.2 test.phys hIoni - 6 -13.3 -14.6 49.5 30 4.21 3.29 37.5 test.phys hIoni - 7 -14.2 -15.6 51.8 26.4 3.6 2.63 40.1 test.phys hIoni - 8 -14.9 -16.5 53.6 22.9 3.46 2.12 42.2 test.phys hIoni - 9 -15.4 -17.3 55 20 2.96 1.68 43.9 test.phys hIoni - 10 -15.8 -17.9 56.1 17.4 2.6 1.35 45.3 test.phys hIoni - 11 -16.2 -18.4 57 14.9 2.45 1.08 46.4 test.phys hIoni - 12 -16.4 -18.8 57.7 12.8 2.09 0.862 47.2 test.phys hIoni - 13 -16.6 -19.1 58.3 10.8 2.02 0.695 47.9 test.phys hIoni - 14 -16.8 -19.4 58.7 9.04 1.79 0.552 48.5 test.phys hIoni - 15 -17 -19.6 59.1 7.36 1.67 0.442 48.9 test.phys hIoni - 16 -17.1 -19.8 59.3 5.73 1.63 0.353 49.3 test.phys hIoni - 17 -17.2 -19.9 59.5 4.24 1.49 0.277 49.5 test.phys hIoni - 18 -17.3 -20.1 59.7 2.66 1.58 0.216 49.7 test.phys hIoni - 19 -17.4 -20.1 59.8 0.759 1.9 0.149 49.9 test.phys hIoni - 20 -17.4 -20.2 59.8 0 0.759 0.023 49.9 test.phys hIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -500 100 0 0 0 World initStep - 1 0 0 0 100 0 500 500 test.phys Transportation - 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) - 3 0 0 200 100 0 200 700 World Transportation - 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 86.9 0 0 86.9 587 test.phys biasWrapper(neutronInelastic) - -********************************************************************************************************* -* G4Track Information: Particle = Be8, Track ID = 10, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 86.9 1.04 0 0 0 test.phys initStep - 1 -0.00315 -0.00207 86.9 0 1.04 0.00379 0.00379 test.phys ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = deuteron, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 86.9 4.29 0 0 0 test.phys initStep - 1 0.133 -0.0759 87 1.97 2.32 0.175 0.175 test.phys hIoni - 2 0.187 -0.105 87 0 1.97 0.0689 0.244 test.phys hIoni - -********************************************************************************************************* -* G4Track Information: Particle = deuteron, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 86.9 14.4 0 0 0 test.phys initStep - 1 -0.048 0.0865 87.4 11.8 2.58 0.539 0.539 test.phys hIoni - 2 -0.0786 0.164 87.9 9.44 2.33 0.425 0.965 test.phys hIoni - 3 -0.0991 0.226 88.2 7.26 2.18 0.336 1.3 test.phys hIoni - 4 -0.114 0.269 88.4 5.17 2.1 0.264 1.57 test.phys hIoni - 5 -0.126 0.302 88.6 2.93 2.24 0.202 1.77 test.phys hIoni - 6 -0.127 0.318 88.8 0.177 2.76 0.124 1.89 test.phys hIoni - 7 -0.126 0.319 88.8 0 0.177 0.00418 1.9 test.phys hIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 86.9 1.03 0 0 0 test.phys initStep - 1 97.9 -195 140 1.01 0 225 225 test.phys biasWrapper(compt) - 2 159 -363 200 1.01 0 188 413 World Transportation - 3 3.65e+03 -1e+04 3.63e+03 1.01 0 1.08e+04 1.12e+04 OutOfWorld Transportation + 0 -0.00428 0.00146 124 0.00749 0 0 0 test.phys initStep + 1 0.00749 0.0224 125 0 0.000405 0.823 0.823 test.phys biasWrapper(phot) ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 11, Parent ID = 7 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 97.9 -195 140 0.0198 0 0 0 test.phys initStep - 1 97.9 -195 140 0 0.0198 0.0118 0.0118 test.phys eIoni + 0 0.00749 0.0224 125 0.00709 0 0 0 test.phys initStep + 1 0.00714 0.0216 125 0 0.00709 0.00196 0.00196 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 2 +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 86.9 2.83 0 0 0 test.phys initStep - 1 -324 145 41.4 2.69 0 358 358 test.phys biasWrapper(compt) - 2 -617 229 0 2.69 0 308 666 World Transportation - 3 -1e+04 2.92e+03 -1.33e+03 2.69 0 9.85e+03 1.05e+04 OutOfWorld Transportation + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 6 +* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -324 145 41.4 0.147 0 0 0 test.phys initStep - 1 -324 145 41.4 0 0.147 0.379 0.379 test.phys eIoni + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 163 0 0 163 663 test.phys biasWrapper(conv) ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 5, Parent ID = 2 +* G4Track Information: Particle = e+, Track ID = 4, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 86.9 6.54 0 0 0 test.phys initStep - 1 302 48.4 1.13 6.51 0.0238 317 317 test.phys biasWrapper(hadElastic) - 2 306 50 0 6.51 0 4.4 322 World Transportation - 3 1e+04 4.06e+03 -2.8e+03 6.51 0 1.09e+04 1.12e+04 OutOfWorld Transportation + 0 0 0 163 8.17 0 0 0 test.phys initStep + 1 -4.55 2.6 176 6.49 1.68 14.5 14.5 test.phys eIoni + 2 -9.64 8.13 185 5.13 1.36 11.8 26.2 test.phys eIoni + 3 -16.3 13.8 182 4.02 1.11 9.55 35.7 test.phys eIoni + 4 -17.8 20.7 184 3.14 0.873 7.73 43.5 test.phys eIoni + 5 -20 25.5 187 2.29 0.854 6.3 49.8 test.phys eIoni + 6 -23.4 28.7 188 1.78 0.506 4.89 54.7 test.phys eIoni + 7 -26.4 30.5 187 1.31 0.473 4.05 58.7 test.phys eIoni + 8 -28.9 31.6 186 0.901 0.411 3.26 62 test.phys eIoni + 9 -29.5 32.3 184 0.607 0.294 2.55 64.5 test.phys eIoni + 10 -28.8 33.3 184 0.31 0.297 2 66.5 test.phys eIoni + 11 -28.2 33.5 184 0.0947 0.215 1.18 67.7 test.phys eIoni + 12 -28.2 33.4 184 0 0.0947 0.172 67.9 test.phys eIoni + 13 -28.2 33.4 184 0 0 0 67.9 test.phys annihil ********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 4, Parent ID = 2 +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 86.9 7.91 0 0 0 test.phys initStep - 1 52.8 128 142 7.01 0 149 149 test.phys biasWrapper(hadElastic) - 2 279 95.3 103 6.97 0.0418 232 381 test.phys biasWrapper(hadElastic) - 3 421 108 104 6.66 0 143 524 test.phys biasWrapper(hadElastic) - 4 577 12.5 0 6.66 0 210 734 World Transportation - 5 1e+04 -5.79e+03 -6.28e+03 6.66 0 1.27e+04 1.35e+04 OutOfWorld Transportation + 0 -28.2 33.4 184 0.511 0 0 0 test.phys initStep + 1 -20.3 36.3 195 0.172 0 14.2 14.2 test.phys biasWrapper(compt) + 2 -26.8 34.5 190 0.124 0 8.65 22.8 test.phys biasWrapper(compt) + 3 -21 36.5 184 0.087 0 8.32 31.2 test.phys biasWrapper(compt) + 4 -23.8 38.4 200 0.087 0 16.3 47.5 World Transportation + 5 -1.78e+03 1.25e+03 1e+04 0.087 0 1e+04 1.01e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 14, Parent ID = 4 +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 421 108 104 0.301 0 0 0 test.phys initStep - 1 421 108 104 0 0.301 0.00205 0.00205 test.phys ionIoni + 0 -21 36.5 184 0.0369 0 0 0 test.phys initStep + 1 -21 36.5 184 0 0.0369 0.0354 0.0354 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = N14, Track ID = 13, Parent ID = 4 +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 52.8 128 142 0.904 0 0 0 test.phys initStep - 1 52.8 128 142 0 0.904 0.00278 0.00278 test.phys ionIoni + 0 -26.8 34.5 190 0.0486 0 0 0 test.phys initStep + 1 -26.9 34.5 190 0 0.0486 0.0575 0.0575 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 3, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 86.9 18.3 0 0 0 test.phys initStep - 1 -0.742 -0.227 87.8 15.9 2.4 1.17 1.17 test.phys hIoni - 2 -1.33 -0.414 88.5 13.6 2.24 0.941 2.11 test.phys hIoni - 3 -1.79 -0.558 89.1 11.5 2.1 0.753 2.86 test.phys hIoni - 4 -2.18 -0.65 89.5 9.7 1.81 0.598 3.46 test.phys hIoni - 5 -2.48 -0.721 89.9 7.99 1.71 0.481 3.94 test.phys hIoni - 6 -2.73 -0.77 90.2 6.48 1.51 0.385 4.33 test.phys hIoni - 7 -2.94 -0.809 90.4 4.95 1.53 0.31 4.64 test.phys hIoni - 8 -3.09 -0.842 90.6 3.39 1.56 0.244 4.88 test.phys hIoni - 9 -3.21 -0.869 90.7 1.7 1.69 0.182 5.06 test.phys hIoni - 10 -3.26 -0.879 90.8 0.252 1.45 0.0821 5.15 test.phys hIoni - 11 -3.26 -0.879 90.8 0.0202 0.232 0.0052 5.15 test.phys hIoni - 12 -3.26 -0.879 90.8 0.0114 0.00884 0.000859 5.15 test.phys hIoni - 13 -3.26 -0.879 90.8 0.0112 0.000183 0.00064 5.15 test.phys hIoni - 14 -3.26 -0.878 90.8 0.0103 0.0009 0.000635 5.15 test.phys hIoni - 15 -3.26 -0.878 90.8 0.00887 0.00141 0.000613 5.15 test.phys hIoni - 16 -3.26 -0.878 90.8 0.00598 0.00289 0.00058 5.15 test.phys hIoni - 17 -3.26 -0.878 90.8 0 0.00598 0.000479 5.16 test.phys hIoni + 0 -20.3 36.3 195 0.339 0 0 0 test.phys initStep + 1 -19.9 36.4 196 0.011 0.328 1.31 1.31 test.phys eIoni + 2 -19.9 36.4 196 0 0.011 0.00418 1.32 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -28.2 33.4 184 0.511 0 0 0 test.phys initStep + 1 -38.9 29.6 168 0.438 0 19.2 19.2 test.phys biasWrapper(compt) + 2 -39.2 28.7 157 0.192 0 11.4 30.6 test.phys biasWrapper(compt) + 3 -14.1 93.2 189 0.11 0 76.3 107 test.phys biasWrapper(compt) + 4 -35.8 33 146 0.0785 0 76.8 184 test.phys biasWrapper(compt) + 5 -16 52.2 154 0.067 0 28.6 212 test.phys biasWrapper(compt) + 6 15.7 3.36 169 0.0662 0 60 272 test.phys biasWrapper(compt) + 7 41 -19.7 193 0.0558 0 42 314 test.phys biasWrapper(compt) + 8 41.6 -19.1 192 0.0481 0 1.54 316 test.phys biasWrapper(compt) + 9 42 -19.5 192 0.0422 0 0.708 317 test.phys biasWrapper(compt) + 10 25.5 -8.47 200 0.0422 0 21.4 338 World Transportation + 11 -1e+04 6.67e+03 4.97e+03 0.0422 0 1.3e+04 1.33e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 42 -19.5 192 0.00584 0 0 0 test.phys initStep + 1 42 -19.5 192 0 0.00584 0.0014 0.0014 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 41.6 -19.1 192 0.00775 0 0 0 test.phys initStep + 1 41.6 -19.1 192 0 0.00775 0.00228 0.00228 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 41 -19.7 193 0.0103 0 0 0 test.phys initStep + 1 41 -19.7 193 0 0.0103 0.00377 0.00377 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 15.7 3.36 169 0.000814 0 0 0 test.phys initStep + 1 15.7 3.36 169 0 0.000814 6.26e-05 6.26e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -16 52.2 154 0.0115 0 0 0 test.phys initStep + 1 -16 52.2 154 0 0.0115 0.00453 0.00453 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -35.8 33 146 0.0316 0 0 0 test.phys initStep + 1 -35.8 33 146 0 0.0316 0.027 0.027 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -14.1 93.2 189 0.0824 0 0 0 test.phys initStep + 1 -14 93.3 189 0 0.0824 0.144 0.144 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -39.2 28.7 157 0.246 0 0 0 test.phys initStep + 1 -39.3 28.6 156 0 0.246 0.865 0.865 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -38.9 29.6 168 0.0728 0 0 0 test.phys initStep + 1 -39 29.5 168 0 0.0728 0.116 0.116 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 163 90.8 0 0 0 test.phys initStep + 1 0.178 -0.231 172 85.2 1.35 9.17 9.17 test.phys eIoni + 2 0.306 -0.518 182 83.5 1.39 10.4 19.6 test.phys eIoni + 3 0.302 -0.765 193 81.7 1.35 10 29.6 test.phys eIoni + 4 0.219 -1.04 199 58.2 0.719 6.08 35.7 test.phys eBrem + 5 0.178 -1.12 200 58.1 0.134 1.43 37.1 World Transportation + 6 -260 -522 1e+04 58.1 3.45e-22 9.82e+03 9.85e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 22, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.219 -1.04 199 22.7 0 0 0 test.phys initStep + 1 0.179 -1.11 200 22.7 0 1.43 1.43 World Transportation + 2 -278 -523 1e+04 22.7 0 9.82e+03 9.82e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.302 -0.765 193 0.432 0 0 0 test.phys initStep + 1 1.14 -0.859 193 0.169 0.263 1.6 1.6 test.phys eIoni + 2 1.26 -0.977 193 0 0.169 0.476 2.08 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.306 -0.518 182 0.346 0 0 0 test.phys initStep + 1 0.489 -1.16 183 0.0858 0.261 1.34 1.34 test.phys eIoni + 2 0.42 -1.16 183 0 0.0858 0.154 1.5 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.178 -0.231 172 4.27 0 0 0 test.phys initStep + 1 0.412 -2.39 176 3.16 0.624 4.85 4.85 test.phys eIoni + 2 0.0319 -6.7 180 2.46 0.704 6.29 11.1 test.phys eIoni + 3 -0.556 -8.26 185 1.81 0.649 5.14 16.3 test.phys eIoni + 4 -0.516 -10.8 187 1.39 0.423 4.06 20.3 test.phys eIoni + 5 1.44 -12.9 188 1.01 0.371 3.36 23.7 test.phys eIoni + 6 2.09 -12.9 185 0.569 0.445 2.73 26.4 test.phys eIoni + 7 1.97 -13.8 185 0.225 0.344 1.92 28.4 test.phys eIoni + 8 1.8 -14 184 0 0.225 0.753 29.1 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 19 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.412 -2.39 176 0.488 0 0 0 test.phys initStep + 1 0.138 -2.14 177 0.244 0.244 1.74 1.74 test.phys eIoni + 2 -0.0291 -2.02 178 0 0.244 0.856 2.6 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 15.2 0 0 15.2 515 test.phys biasWrapper(conv) + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 15.2 78.5 0 0 0 test.phys initStep + 1 -0.0727 0.049 19 77.8 0.369 3.8 3.8 test.phys eIoni + 2 -0.0124 0.36 33.6 75.1 1.65 14.5 18.3 test.phys eIoni + 3 -4.2 -1.31 115 64.7 10.3 81.7 100 test.phys eBrem + 4 -4.74 -3.16 125 62.9 1.4 10.5 111 test.phys eIoni + 5 -4.99 -4.16 130 61.1 0.742 5.25 116 test.phys eBrem + 6 -6.56 -8.17 155 57.8 3.27 24.5 140 test.phys eBrem + 7 -5.51 -15.4 200 52.4 5.42 46.1 186 World Transportation + 8 532 -294 1e+04 52.4 3.42e-22 9.82e+03 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.56 -8.17 155 0.00695 0 0 0 test.phys initStep + 1 -6.56 -8.2 155 0 0.000405 0.136 0.136 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 10 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.56 -8.2 155 0.00655 0 0 0 test.phys initStep + 1 -6.56 -8.2 155 0 0.00655 0.00171 0.00171 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -4.99 -4.16 130 1.05 0 0 0 test.phys initStep + 1 -8.28 -18.2 200 1.05 0 71 71 World Transportation + 2 -473 -1.99e+03 1e+04 1.05 0 1e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -4.74 -3.16 125 0.431 0 0 0 test.phys initStep + 1 -4.49 -2.47 126 0.151 0.28 1.6 1.6 test.phys eIoni + 2 -4.48 -2.28 126 0 0.151 0.396 2 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -4.2 -1.31 115 0.0342 0 0 0 test.phys initStep + 1 -4.21 -1.36 115 0.0306 0 0.304 0.304 test.phys biasWrapper(compt) + 2 -16.7 33.6 82.9 0 0.000405 49.3 49.6 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 7 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -16.7 33.6 82.9 0.0302 0 0 0 test.phys initStep + 1 -16.7 33.6 82.9 0 0.0302 0.0249 0.0249 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 7 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -4.21 -1.36 115 0.00357 0 0 0 test.phys initStep + 1 -4.21 -1.36 115 0 0.00357 0.00061 0.00061 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0124 0.36 33.6 1.13 0 0 0 test.phys initStep + 1 1.25 -0.704 35.4 0.77 0.359 2.93 2.93 test.phys eIoni + 2 -0.332 0.102 35.2 0.498 0.272 2.3 5.23 test.phys eIoni + 3 -1.33 -0.315 34.7 0.131 0.367 1.76 7 test.phys eIoni + 4 -1.38 -0.448 34.8 0 0.131 0.314 7.31 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0727 0.049 19 0.252 0 0 0 test.phys initStep + 1 -0.269 0.413 19.2 0 0.252 0.899 0.899 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 15.2 20.5 0 0 0 test.phys initStep + 1 0.893 1.4 34.5 17.9 2.3 19.4 19.4 test.phys eIoni + 2 6.35 3.99 58.5 13.3 3.64 24.9 44.3 test.phys eIoni + 3 9.02 7.9 73.4 11.2 1.85 15.8 60.1 test.phys eIoni + 4 13 12.5 90.5 7.01 2.26 18.6 78.7 test.phys eBrem + 5 14 15.8 99.6 5.42 1.2 9.97 88.6 test.phys eIoni + 6 14.7 17.1 103 4.96 0.464 4.12 92.8 test.phys eBrem + 7 15.8 18.5 112 3.79 1.17 9.21 102 test.phys eIoni + 8 16.8 19.3 119 2.99 0.804 7.32 109 test.phys eIoni + 9 17 18.2 124 2.37 0.616 6.01 115 test.phys eIoni + 10 17.2 17 128 1.76 0.613 5 120 test.phys eIoni + 11 18.9 16.1 131 1.34 0.416 3.98 124 test.phys eIoni + 12 19 16.2 132 0.658 0.0606 0.658 125 test.phys eBrem + 13 19.6 17.1 133 0.373 0.286 2.1 127 test.phys eIoni + 14 19.3 17.8 134 0.0897 0.283 1.43 128 test.phys eIoni + 15 19.3 17.9 134 0 0.0897 0.166 129 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 19, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 19 16.2 132 0.624 0 0 0 test.phys initStep + 1 -28.7 29.8 200 0.624 0 84.1 84.1 World Transportation + 2 -6.91e+03 1.98e+03 1e+04 0.624 0 1.21e+04 1.22e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 14 15.8 99.6 0.385 0 0 0 test.phys initStep + 1 13.4 15.8 100 0.131 0.254 1.47 1.47 test.phys eIoni + 2 13.2 15.9 100 0 0.131 0.314 1.78 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 13 12.5 90.5 1.91 0 0 0 test.phys initStep + 1 21.6 25.4 126 0.331 0 38.8 38.8 test.phys biasWrapper(compt) + 2 52.5 -39.4 120 0.304 0 72 111 test.phys biasWrapper(compt) + 3 26.7 -351 82.3 0.249 0 315 425 test.phys biasWrapper(compt) + 4 91.5 -481 184 0.127 0 178 603 test.phys biasWrapper(compt) + 5 83.3 -470 173 0.125 0 18 621 test.phys biasWrapper(compt) + 6 62.1 -398 101 0.125 0 103 725 test.phys biasWrapper(compt) + 7 51.4 -370 66.1 0.087 0 46.3 771 test.phys biasWrapper(compt) + 8 63.7 -387 71.1 0.0864 0 21.3 792 test.phys biasWrapper(compt) + 9 180 -473 101 0.0837 0 148 940 test.phys biasWrapper(compt) + 10 184 -475 98.8 0.08 0 4.82 945 test.phys biasWrapper(compt) + 11 233 -462 89.3 0.0631 0 52 997 test.phys biasWrapper(compt) + 12 180 -438 78 0.0573 0 59.6 1.06e+03 test.phys biasWrapper(compt) + 13 143 -486 87.9 0.0564 0 62 1.12e+03 test.phys biasWrapper(compt) + 14 136 -499 82.2 0.0463 0 15.7 1.13e+03 test.phys biasWrapper(compt) + 15 157 -474 97 0.0437 0 36.4 1.17e+03 test.phys biasWrapper(compt) + 16 185 -493 138 0.0382 0 53.6 1.22e+03 test.phys biasWrapper(compt) + 17 191 -491 107 0.0333 0 31.6 1.26e+03 test.phys biasWrapper(compt) + 18 187 -490 132 0.0297 0 24.8 1.28e+03 test.phys biasWrapper(compt) + 19 187 -488 129 0 0.000405 2.84 1.28e+03 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 38, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 187 -488 129 0.0293 0 0 0 test.phys initStep + 1 187 -488 129 0 0.0293 0.0237 0.0237 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 37, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 187 -490 132 0.00352 0 0 0 test.phys initStep + 1 187 -490 132 0 0.00352 0.000595 0.000595 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 36, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 191 -491 107 0.00495 0 0 0 test.phys initStep + 1 191 -491 107 0 0.00495 0.00106 0.00106 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 35, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 185 -493 138 0.00554 0 0 0 test.phys initStep + 1 185 -493 138 0 0.00554 0.00128 0.00128 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 157 -474 97 0.00252 0 0 0 test.phys initStep + 1 157 -474 97 0 0.00252 0.000345 0.000345 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 136 -499 82.2 0.0101 0 0 0 test.phys initStep + 1 136 -499 82.2 0 0.0101 0.00362 0.00362 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 143 -486 87.9 0.000958 0 0 0 test.phys initStep + 1 143 -486 87.9 0 0.000958 7.84e-05 7.84e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 31, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 180 -438 78 0.00579 0 0 0 test.phys initStep + 1 180 -438 78 0 0.00579 0.00138 0.00138 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 30, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 233 -462 89.3 0.0169 0 0 0 test.phys initStep + 1 233 -462 89.3 0 0.0169 0.00892 0.00892 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 29, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 184 -475 98.8 0.00369 0 0 0 test.phys initStep + 1 184 -475 98.8 0 0.00369 0.000645 0.000645 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 28, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 180 -473 101 0.00274 0 0 0 test.phys initStep + 1 180 -473 101 0 0.00274 0.000394 0.000394 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 63.7 -387 71.1 0.000624 0 0 0 test.phys initStep + 1 63.7 -387 71.1 0 0.000624 4.4e-05 4.4e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 51.4 -370 66.1 0.0382 0 0 0 test.phys initStep + 1 51.4 -370 66 0 0.0382 0.0376 0.0376 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 62.1 -398 101 0.00019 0 0 0 test.phys initStep + 1 62.1 -398 101 0 0.00019 1.27e-05 1.27e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 83.3 -470 173 0.00111 0 0 0 test.phys initStep + 1 83.3 -470 173 0 0.00111 9.72e-05 9.72e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 91.5 -481 184 0.122 0 0 0 test.phys initStep + 1 91.5 -481 184 0 0.122 0.281 0.281 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 26.7 -351 82.3 0.0552 0 0 0 test.phys initStep + 1 26.7 -351 82.2 0 0.0552 0.0719 0.0719 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 52.5 -39.4 120 0.0266 0 0 0 test.phys initStep + 1 52.5 -39.4 120 0 0.0266 0.0199 0.0199 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 21.6 25.4 126 1.58 0 0 0 test.phys initStep + 1 22 26.9 129 0.997 0.587 3.69 3.69 test.phys eIoni + 2 22.5 28.6 130 0.639 0.357 2.7 6.4 test.phys eIoni + 3 22.1 30.1 130 0.339 0.3 2.06 8.46 test.phys eIoni + 4 22.8 30.3 130 0.0587 0.28 1.32 9.77 test.phys eIoni + 5 22.8 30.3 130 0 0.0587 0.08 9.85 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 9.02 7.9 73.4 0.317 0 0 0 test.phys initStep + 1 9.28 8.49 73.5 0.0457 0.271 1.23 1.23 test.phys eIoni + 2 9.27 8.51 73.6 0 0.0457 0.0516 1.28 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.35 3.99 58.5 0.909 0 0 0 test.phys initStep + 1 7.12 2.84 60 0.621 0.288 2.55 2.55 test.phys eIoni + 2 6.02 2.35 60.9 0.303 0.317 2.02 4.57 test.phys eIoni + 3 5.55 2.57 61.2 0.0256 0.278 1.17 5.74 test.phys eIoni + 4 5.54 2.58 61.2 0 0.0256 0.0187 5.76 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.893 1.4 34.5 0.319 0 0 0 test.phys initStep + 1 1.23 0.941 34.9 0.0853 0.234 1.24 1.24 test.phys eIoni + 2 1.3 0.953 34.9 0 0.0853 0.152 1.39 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 179 0.35 0 179 679 test.phys biasWrapper(compt) + 2 -304 -177 0.273 0.255 0 394 1.07e+03 test.phys biasWrapper(compt) + 3 -378 -266 75.9 0.135 0 139 1.21e+03 test.phys biasWrapper(compt) + 4 -378 -254 49.5 0.0896 0 29.3 1.24e+03 test.phys biasWrapper(compt) + 5 -391 -282 81.4 0.0774 0 45 1.29e+03 test.phys biasWrapper(compt) + 6 -385 -265 104 0.0767 0 28.6 1.31e+03 test.phys biasWrapper(compt) + 7 -395 -229 157 0.0661 0 65.5 1.38e+03 test.phys biasWrapper(compt) + 8 -507 -187 96.6 0.0589 0 134 1.51e+03 test.phys biasWrapper(compt) + 9 -515 -152 129 0.0583 0 48.4 1.56e+03 test.phys biasWrapper(compt) + 10 -508 -125 180 0.0583 0 57.7 1.62e+03 test.phys biasWrapper(Rayl) + 11 -496 -121 200 0.0583 0 24.4 1.64e+03 World Transportation + 12 5.79e+03 2.04e+03 1e+04 0.0583 0 1.18e+04 1.35e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -515 -152 129 0.000574 0 0 0 test.phys initStep + 1 -515 -152 129 0 0.000574 3.96e-05 3.96e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -507 -187 96.6 0.00719 0 0 0 test.phys initStep + 1 -507 -187 96.6 0 0.00719 0.00201 0.00201 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -395 -229 157 0.0107 0 0 0 test.phys initStep + 1 -395 -229 157 0 0.0107 0.00399 0.00399 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -385 -265 104 0.000683 0 0 0 test.phys initStep + 1 -385 -265 104 0 0.000683 4.95e-05 4.95e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -391 -282 81.4 0.0122 0 0 0 test.phys initStep + 1 -391 -282 81.4 0 0.0122 0.00502 0.00502 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -378 -254 49.5 0.0455 0 0 0 test.phys initStep + 1 -378 -254 49.5 0 0.0455 0.0512 0.0512 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -378 -266 75.9 0.12 0 0 0 test.phys initStep + 1 -378 -266 76 0 0.12 0.271 0.271 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -304 -177 0.273 0.0953 0 0 0 test.phys initStep + 1 -304 -177 0.19 0 0.0953 0.184 0.184 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 179 99.6 0 0 0 test.phys initStep + 1 -0.189 0.0408 193 92.3 2.01 13.6 13.6 test.phys eBrem + 2 -0.186 0.0454 200 91.4 0.862 7.27 20.9 World Transportation + 3 18.3 57.6 1e+04 91.4 3.58e-22 9.8e+03 9.82e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.189 0.0408 193 5.35 0 0 0 test.phys initStep + 1 -0.19 0.072 200 5.35 0 7.27 7.27 World Transportation + 2 -1.51 42.1 1e+04 5.35 0 9.8e+03 9.81e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 40.1 0 0 40.1 540 test.phys biasWrapper(conv) + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 40.1 34.8 0 0 0 test.phys initStep + 1 -5.35 1.17 94.5 28.1 6.71 54.9 54.9 test.phys eBrem + 2 -6.87 2.02 109 25.7 1.86 14.8 69.7 test.phys eIoni + 3 -8.03 1.82 115 24.2 1.05 6.06 75.8 test.phys eIoni + 4 -8.54 2.08 117 23.9 0.255 2.3 78.1 test.phys eBrem + 5 -11.8 3.09 130 21.1 1.88 13.1 91.1 test.phys eBrem + 6 -13.4 3.25 135 19.1 0.615 5.45 96.6 test.phys eIoni + 7 -20.7 1.3 154 16.3 2.78 20.4 117 test.phys eBrem + 8 -30.8 -2.85 179 12.9 3.37 27.5 144 test.phys eIoni + 9 -41.8 -6.85 197 10.1 2.83 22.1 166 test.phys eIoni + 10 -43.1 -7.47 200 9.53 0.587 3.12 170 World Transportation + 11 -4.19e+03 -2.85e+03 1e+04 9.53 3.28e-22 1.1e+04 1.12e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -20.7 1.3 154 0.00923 0 0 0 test.phys initStep + 1 -23.8 0.6 159 0 0.000405 6.3 6.3 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 11 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -23.8 0.6 159 0.00882 0 0 0 test.phys initStep + 1 -23.8 0.601 159 0 0.00882 0.00286 0.00286 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -13.4 3.25 135 1.43 0 0 0 test.phys initStep + 1 -13.2 4.99 138 1.03 0.4 3.44 3.44 test.phys eIoni + 2 -15 5.18 139 0.702 0.327 2.76 6.2 test.phys eIoni + 3 -16.1 5.13 139 0.428 0.274 1.21 7.4 test.phys eIoni + 4 -17 5.14 139 0.153 0.275 1.59 9 test.phys eIoni + 5 -17.2 5.1 139 0 0.153 0.406 9.4 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -11.8 3.09 130 0.903 0 0 0 test.phys initStep + 1 -30.5 5.43 200 0.903 0 72.6 72.6 World Transportation + 2 -2.64e+03 333 1e+04 0.903 0 1.01e+04 1.02e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.54 2.08 117 0.0475 0 0 0 test.phys initStep + 1 -11.7 3.77 133 0.0459 0 16 16 test.phys biasWrapper(compt) + 2 -77.5 -27.1 177 0.0442 0 85.1 101 test.phys biasWrapper(compt) + 3 -122 -35.3 158 0.0442 0 49.3 150 test.phys biasWrapper(Rayl) + 4 -145 -39.9 144 0 0.000405 27.4 178 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 8 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -145 -39.9 144 0.0438 0 0 0 test.phys initStep + 1 -145 -39.9 144 0 0.0438 0.0478 0.0478 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 8 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -77.5 -27.1 177 0.00173 0 0 0 test.phys initStep + 1 -77.5 -27.1 177 0 0.00173 0.000189 0.000189 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 8 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -11.7 3.77 133 0.00163 0 0 0 test.phys initStep + 1 -11.7 3.77 133 0 0.00163 0.000172 0.000172 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.03 1.82 115 0.443 0 0 0 test.phys initStep + 1 -8.95 2.16 115 0.123 0.32 1.63 1.63 test.phys eIoni + 2 -8.98 2.3 115 0 0.123 0.283 1.91 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.87 2.02 109 0.467 0 0 0 test.phys initStep + 1 -6.95 2.95 110 0.228 0.239 1.69 1.69 test.phys eIoni + 2 -7.28 2.83 110 0 0.228 0.772 2.46 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -5.35 1.17 94.5 0.0495 0 0 0 test.phys initStep + 1 -5.37 1.19 94.7 0.0492 0 0.255 0.255 test.phys biasWrapper(compt) + 2 -5.86 0.602 97.1 0.0463 0 2.53 2.79 test.phys biasWrapper(compt) + 3 -27.6 -4.21 99.7 0.0459 0 22.5 25.2 test.phys biasWrapper(compt) + 4 -62.6 -1.2 115 0.045 0 38.5 63.7 test.phys biasWrapper(compt) + 5 -106 22.8 110 0.045 0 50 114 test.phys biasWrapper(Rayl) + 6 -123 31.7 109 0.0428 0 18.7 132 test.phys biasWrapper(compt) + 7 -120 65.8 115 0.0412 0 34.7 167 test.phys biasWrapper(compt) + 8 -161 93.6 139 0.0359 0 54.8 222 test.phys biasWrapper(compt) + 9 -63.9 96.1 113 0 0.000405 101 323 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -63.9 96.1 113 0.0355 0 0 0 test.phys initStep + 1 -63.9 96.1 113 0 0.0355 0.0331 0.0331 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -161 93.6 139 0.00526 0 0 0 test.phys initStep + 1 -161 93.6 139 0 0.00526 0.00117 0.00117 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -120 65.8 115 0.00162 0 0 0 test.phys initStep + 1 -120 65.8 115 0 0.00162 0.00017 0.00017 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -123 31.7 109 0.00225 0 0 0 test.phys initStep + 1 -123 31.7 109 0 0.00225 0.000286 0.000286 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -62.6 -1.2 115 0.000875 0 0 0 test.phys initStep + 1 -62.6 -1.2 115 0 0.000875 6.91e-05 6.91e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -27.6 -4.21 99.7 0.000366 0 0 0 test.phys initStep + 1 -27.6 -4.21 99.7 0 0.000366 2.33e-05 2.33e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -5.86 0.602 97.1 0.00291 0 0 0 test.phys initStep + 1 -5.86 0.602 97.1 0 0.00291 0.000435 0.000435 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -5.37 1.19 94.7 0.000295 0 0 0 test.phys initStep + 1 -5.37 1.19 94.7 0 0.000295 1.86e-05 1.86e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 40.1 64.2 0 0 0 test.phys initStep + 1 0.377 -0.745 67.6 60.7 3.47 27.5 27.5 test.phys eBrem + 2 0.326 -0.772 73.4 59.5 0.762 5.84 33.4 test.phys eIoni + 3 -0.732 -0.353 103 55.1 4.14 29.4 62.7 test.phys eBrem + 4 -1.72 -0.224 121 52.6 2.08 17.8 80.6 test.phys eIoni + 5 -1.61 0.834 158 43.5 4.51 37.2 118 test.phys eBrem + 6 -0.364 1.37 168 41.7 1.32 10.1 128 test.phys eIoni + 7 2.19 1.83 182 39.5 1.87 15 143 test.phys eIoni + 8 5.11 1.32 200 37.4 2.02 17.8 161 World Transportation + 9 1.61e+03 -335 1e+04 37.4 3.36e-22 9.94e+03 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 30, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.19 1.83 182 0.37 0 0 0 test.phys initStep + 1 2.14 2.51 183 0.0981 0.272 1.42 1.42 test.phys eIoni + 2 2.09 2.51 183 0 0.0981 0.193 1.62 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 29, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.364 1.37 168 0.471 0 0 0 test.phys initStep + 1 -0.985 0.834 168 0.239 0.232 1.7 1.7 test.phys eIoni + 2 -0.874 0.507 168 0 0.239 0.828 2.53 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 28, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.61 0.834 158 4.59 0 0 0 test.phys initStep + 1 -0.807 1.6 169 3.09 0 11.8 11.8 test.phys biasWrapper(compt) + 2 -8.68 1.02 200 3.09 0 31.6 43.3 World Transportation + 3 -2.53e+03 -184 1e+04 3.09 0 1.01e+04 1.02e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 31, Parent ID = 28 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.807 1.6 169 1.51 0 0 0 test.phys initStep + 1 0.925 2.16 172 1.1 0.404 3.57 3.57 test.phys eIoni + 2 2.3 3.31 174 0.788 0.317 2.89 6.46 test.phys eIoni + 3 3.92 3.64 173 0.488 0.301 2.34 8.79 test.phys eIoni + 4 4.89 4.24 173 0.191 0.297 1.74 10.5 test.phys eIoni + 5 5.13 4.22 173 0 0.191 0.582 11.1 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.72 -0.224 121 0.458 0 0 0 test.phys initStep + 1 -1.17 -0.901 121 0.25 0.208 1.67 1.67 test.phys eIoni + 2 -0.805 -0.704 121 0 0.25 0.888 2.56 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 26, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.732 -0.353 103 0.246 0 0 0 test.phys initStep + 1 -2 -1.11 146 0.231 0 43.4 43.4 test.phys biasWrapper(compt) + 2 -5.34 -1.49 152 0.227 0 6.34 49.8 test.phys biasWrapper(compt) + 3 -51.7 6.49 200 0.227 0 67.5 117 World Transportation + 4 -9.43e+03 1.62e+03 1e+04 0.227 0 1.37e+04 1.38e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 26 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -5.34 -1.49 152 0.00377 0 0 0 test.phys initStep + 1 -5.34 -1.49 152 0 0.00377 0.000668 0.000668 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 26 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2 -1.11 146 0.0152 0 0 0 test.phys initStep + 1 -2 -1.11 146 0 0.0152 0.00737 0.00737 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.326 -0.772 73.4 0.403 0 0 0 test.phys initStep + 1 -0.443 -0.913 73.9 0.103 0.3 1.52 1.52 test.phys eIoni + 2 -0.372 -0.883 74 0 0.103 0.211 1.73 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 24, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.377 -0.745 67.6 0.00472 0 0 0 test.phys initStep + 1 0.375 -0.752 67.8 0 2.31e-05 0.233 0.233 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 24 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.375 -0.752 67.8 0.00469 0 0 0 test.phys initStep + 1 0.374 -0.752 67.8 0 0.00469 0.000966 0.000966 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 50.7 0 0 50.7 551 test.phys biasWrapper(conv) + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 50.7 8.48 0 0 0 test.phys initStep + 1 1.83 2.7 65 6.33 2.14 14.9 14.9 test.phys eIoni + 2 5.45 4.01 75.4 5 1.33 11.5 26.4 test.phys eIoni + 3 5.86 2.9 77.8 0 0.333 2.76 29.2 test.phys annihil + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 5.86 2.9 77.8 4.72 0 0 0 test.phys initStep + 1 198 -103 200 4.72 0 251 251 World Transportation + 2 1e+04 -5.53e+03 6.43e+03 4.72 0 1.28e+04 1.31e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 5.86 2.9 77.8 0.97 0 0 0 test.phys initStep + 1 -5.72 15.9 200 0.97 0 123 123 World Transportation + 2 -934 1.06e+03 1e+04 0.97 0 9.9e+03 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 50.7 90.5 0 0 0 test.phys initStep + 1 0.0303 -0.0395 55.1 90 0.5 4.44 4.44 test.phys eBrem + 2 -0.251 -1.2 83 83.9 3.59 27.9 32.4 test.phys eIoni + 3 -0.343 -1.65 94.4 82.6 1.32 11.4 43.7 test.phys eBrem + 4 -0.394 -1.8 97.5 81.6 0.359 3.11 46.9 test.phys eIoni + 5 -0.564 -2.12 102 77.3 0.601 4.15 51 test.phys eBrem + 6 -2.12 -3.49 132 73.2 3.9 30.9 81.9 test.phys eBrem + 7 -2.56 -4.59 145 71.6 1.54 12.7 94.6 test.phys eBrem + 8 -2.56 -4.59 145 66.2 0.000875 0.00977 94.6 test.phys eIoni + 9 -3.01 -4.91 153 65.2 0.974 8.14 103 test.phys eBrem + 10 -4.36 -6.11 171 62.5 2.06 17.6 120 test.phys eIoni + 11 -4.7 -6.73 176 61.9 0.598 5.72 126 test.phys eBrem + 12 -6.27 -9.17 200 59 2.89 23.9 150 World Transportation + 13 -831 -995 1e+04 59 3.48e-22 9.88e+03 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -4.7 -6.73 176 0.0127 0 0 0 test.phys initStep + 1 -5.15 -7.3 183 0 0.000405 6.54 6.54 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 17 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -5.15 -7.3 183 0.0123 0 0 0 test.phys initStep + 1 -5.15 -7.3 183 0 0.0123 0.00514 0.00514 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -4.36 -6.11 171 0.566 0 0 0 test.phys initStep + 1 -3.37 -6.46 171 0.265 0.301 1.91 1.91 test.phys eIoni + 2 -3.08 -6.86 171 0 0.265 0.974 2.89 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -3.01 -4.91 153 0.0502 0 0 0 test.phys initStep + 1 -6.29 -6.84 200 0.0502 0 47 47 World Transportation + 2 -692 -412 1e+04 0.0502 0 9.83e+03 9.88e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.56 -4.59 145 5.46 0 0 0 test.phys initStep + 1 -1.33 -8.63 154 4.42 1.04 10 10 test.phys eIoni + 2 0.603 -12.7 160 3.35 1.07 8.34 18.4 test.phys eIoni + 3 0.383 -13.1 161 2.27 0.0683 0.668 19 test.phys eIoni + 4 -1.35 -15.2 164 1.56 0.704 4.82 23.8 test.phys eIoni + 5 -1.66 -17.3 166 1.17 0.389 3.66 27.5 test.phys eIoni + 6 -2.13 -19.5 166 0.455 0.482 2.92 30.4 test.phys eIoni + 7 -1.34 -20.2 165 0.225 0.23 1.66 32.1 test.phys eIoni + 8 -1.1 -20.2 165 0 0.225 0.752 32.8 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 14 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.13 -19.5 166 0.236 0 0 0 test.phys initStep + 1 -2.08 -19.5 165 0 0.236 0.813 0.813 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 14 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.383 -13.1 161 1.01 0 0 0 test.phys initStep + 1 -0.0796 -14.5 161 0.851 0.163 1.55 1.55 test.phys eIoni + 2 0.194 -16.3 161 0.555 0.296 2.45 4 test.phys eIoni + 3 0.384 -17.6 161 0.265 0.29 1.89 5.89 test.phys eIoni + 4 0.153 -18 161 0 0.265 0.972 6.87 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.56 -4.59 145 0.0165 0 0 0 test.phys initStep + 1 -2.65 -4.9 149 0 0.000405 3.74 3.74 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 13 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.65 -4.9 149 0.0161 0 0 0 test.phys initStep + 1 -2.64 -4.9 149 0 0.0161 0.00821 0.00821 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.12 -3.49 132 0.214 0 0 0 test.phys initStep + 1 -4.23 -6.38 169 0.173 0 36.7 36.7 test.phys biasWrapper(compt) + 2 40.6 19.7 200 0.173 0 60.5 97.2 World Transportation + 3 1e+04 5.81e+03 7.09e+03 0.173 0 1.34e+04 1.35e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 12 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -4.23 -6.38 169 0.041 0 0 0 test.phys initStep + 1 -4.24 -6.39 169 0 0.041 0.0426 0.0426 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.564 -2.12 102 3.7 0 0 0 test.phys initStep + 1 -0.923 -2.99 114 0.305 0 12.7 12.7 test.phys biasWrapper(compt) + 2 30.1 -17.6 92.2 0.236 0 40.8 53.5 test.phys biasWrapper(compt) + 3 118 4.63 114 0.135 0 93.3 147 test.phys biasWrapper(compt) + 4 110 -1.4 92.8 0.135 0 23.3 170 test.phys biasWrapper(Rayl) + 5 98.9 -36.9 0 0.135 0 100 270 World Transportation + 6 -1.09e+03 -3.87e+03 -1e+04 0.135 0 1.08e+04 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 11 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 118 4.63 114 0.1 0 0 0 test.phys initStep + 1 118 4.66 114 0 0.1 0.201 0.201 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 11 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 30.1 -17.6 92.2 0.0694 0 0 0 test.phys initStep + 1 30.1 -17.6 92.1 0 0.0694 0.107 0.107 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 11 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.923 -2.99 114 3.4 0 0 0 test.phys initStep + 1 -1.47 -3.22 120 2.65 0.745 6.67 6.67 test.phys eIoni + 2 1.19 -4.2 125 2.05 0.6 5.45 12.1 test.phys eIoni + 3 0.805 -3.78 128 1.31 0.495 3.95 16.1 test.phys eIoni + 4 1.52 -2.83 131 0.886 0.425 3.24 19.3 test.phys eIoni + 5 1.74 -2.55 131 0.81 0.0478 0.44 19.8 test.phys eBrem + 6 2.65 -1.58 132 0.554 0.256 2.38 22.1 test.phys eIoni + 7 3 -0.614 132 0.302 0.249 1.29 23.4 test.phys eBrem + 8 3.1 -0.416 132 0.0315 0.271 1.16 24.6 test.phys eIoni + 9 3.09 -0.422 132 0 0.0315 0.0269 24.6 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 28, Parent ID = 23 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3 -0.614 132 0.00252 0 0 0 test.phys initStep + 1 3.12 -0.565 132 0 0.000405 0.144 0.144 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 29, Parent ID = 28 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.12 -0.565 132 0.00212 0 0 0 test.phys initStep + 1 3.12 -0.565 132 0 0.00212 0.00026 0.00026 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 27, Parent ID = 23 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 1.74 -2.55 131 0.0278 0 0 0 test.phys initStep + 1 23.9 -2.53 200 0.0278 0 72.5 72.5 World Transportation + 2 3.17e+03 -0.173 1e+04 0.0278 0 1.03e+04 1.04e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 23 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.805 -3.78 128 0.246 0 0 0 test.phys initStep + 1 1.13 -4.03 128 0 0.246 0.865 0.865 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.394 -1.8 97.5 0.566 0 0 0 test.phys initStep + 1 -1.48 -1.65 98.2 0.188 0.379 1.91 1.91 test.phys eIoni + 2 -1.66 -1.55 98.4 0 0.188 0.566 2.48 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.343 -1.65 94.4 0.0632 0 0 0 test.phys initStep + 1 -0.355 -1.74 96.3 0.0579 0 1.98 1.98 test.phys biasWrapper(compt) + 2 -12.1 -134 127 0.0536 0 136 138 test.phys biasWrapper(compt) + 3 -6.47 -136 127 0.0536 0 6.02 144 test.phys biasWrapper(Rayl) + 4 12.6 -141 125 0.0513 0 19.8 164 test.phys biasWrapper(compt) + 5 85.7 -119 22.3 0.0459 0 128 292 test.phys biasWrapper(compt) + 6 83.1 -135 20.9 0.0419 0 16.7 308 test.phys biasWrapper(compt) + 7 193 -150 65.1 0.0417 0 119 428 test.phys biasWrapper(compt) + 8 193 -150 65.1 0.0364 0 0.103 428 test.phys biasWrapper(compt) + 9 166 -149 71.5 0.0364 0 27.9 456 test.phys biasWrapper(Rayl) + 10 71.6 -144 92.9 0.0336 0 97 553 test.phys biasWrapper(compt) + 11 81.1 -36.2 -1.42e-14 0.0336 0 143 696 World Transportation + 12 968 1e+04 -8.61e+03 0.0336 0 1.33e+04 1.4e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 37, Parent ID = 9 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 71.6 -144 92.9 0.0028 0 0 0 test.phys initStep + 1 71.6 -144 92.9 0 0.0028 0.000408 0.000408 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 36, Parent ID = 9 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 193 -150 65.1 0.00532 0 0 0 test.phys initStep + 1 193 -150 65.1 0 0.00532 0.0012 0.0012 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 35, Parent ID = 9 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 193 -150 65.1 0.000151 0 0 0 test.phys initStep + 1 193 -150 65.1 0 0.000151 1.09e-05 1.09e-05 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 9 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 83.1 -135 20.9 0.00397 0 0 0 test.phys initStep + 1 83.1 -135 20.9 0 0.00397 0.000729 0.000729 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 9 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 85.7 -119 22.3 0.00549 0 0 0 test.phys initStep + 1 85.7 -119 22.3 0 0.00549 0.00126 0.00126 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 9 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 12.6 -141 125 0.00222 0 0 0 test.phys initStep + 1 12.6 -141 125 0 0.00222 0.000281 0.000281 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 31, Parent ID = 9 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -12.1 -134 127 0.00435 0 0 0 test.phys initStep + 1 -12.1 -134 127 0 0.00435 0.00085 0.00085 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 30, Parent ID = 9 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.355 -1.74 96.3 0.00525 0 0 0 test.phys initStep + 1 -0.355 -1.74 96.3 0 0.00525 0.00117 0.00117 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.251 -1.2 83 2.45 0 0 0 test.phys initStep + 1 -1.16 -3.71 86.8 1.78 0.673 5.13 5.13 test.phys eIoni + 2 -1.58 -6 88.1 1.21 0.317 2.84 7.97 test.phys eIoni + 3 -2.94 -8.2 87.8 0.881 0.324 3.06 11 test.phys eIoni + 4 -2.81 -10.2 87.8 0.494 0.388 2.5 13.5 test.phys eIoni + 5 -2.45 -10.2 88.9 0.247 0.247 1.75 15.3 test.phys eIoni + 6 -2.03 -10.2 89.1 0 0.247 0.872 16.2 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 38, Parent ID = 8 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.58 -6 88.1 0.258 0 0 0 test.phys initStep + 1 -1.34 -6.31 87.8 0 0.258 0.931 0.931 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0303 -0.0395 55.1 0.0171 0 0 0 test.phys initStep + 1 0.123 -0.273 64.9 0.0171 0 9.81 9.81 test.phys biasWrapper(Rayl) + 2 10.2 1.38 74.6 0.0171 0 14.1 23.9 test.phys biasWrapper(Rayl) + 3 -18.1 13.8 104 0 0.000405 42.7 66.6 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 39, Parent ID = 7 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -18.1 13.8 104 0.0167 0 0 0 test.phys initStep + 1 -18.1 13.8 104 0 0.0167 0.00876 0.00876 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 90.9 0 0 90.9 591 test.phys biasWrapper(conv) + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 90.9 24.6 0 0 0 test.phys initStep + 1 -0.623 0.0797 102 22.8 1.54 10.7 10.7 test.phys eIoni + 2 -4.69 0.194 119 20.7 2.13 17.7 28.3 test.phys eBrem + 3 -6.68 1.98 131 17 1.71 12.6 41 test.phys eIoni + 4 -9.29 2.83 146 14.9 2.02 15.8 56.8 test.phys eBrem + 5 -15.1 -0.234 169 11.8 3.09 23.5 80.3 test.phys eBrem + 6 -18.8 -5.83 188 9.02 2.83 20.3 101 test.phys eIoni + 7 -19 -6.6 191 8.26 0.339 3.1 104 test.phys eIoni + 8 -18.5 -9.01 200 7.08 1.18 9.72 113 World Transportation + 9 -2.52e+03 -8.19e+03 1e+04 7.08 3.78e-22 1.3e+04 1.31e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -19 -6.6 191 0.42 0 0 0 test.phys initStep + 1 -18.1 -6.92 191 0.138 0.282 1.57 1.57 test.phys eIoni + 2 -18.2 -7.06 191 0 0.138 0.342 1.91 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -15.1 -0.234 169 0.00252 0 0 0 test.phys initStep + 1 -15.2 -0.243 169 0 0.000405 0.0489 0.0489 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 9 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -15.2 -0.243 169 0.00211 0 0 0 test.phys initStep + 1 -15.2 -0.243 169 0 0.00211 0.000259 0.000259 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9.29 2.83 146 0.0254 0 0 0 test.phys initStep + 1 -23 2.7 200 0.0254 0 55.3 55.3 World Transportation + 2 -2.54e+03 -22.1 1e+04 0.0254 0 1.01e+04 1.02e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.68 1.98 131 1.99 0 0 0 test.phys initStep + 1 -5.32 3.05 133 1.38 0.315 3.05 3.05 test.phys eIoni + 2 -3.43 3.42 135 0.918 0.46 3.35 6.4 test.phys eIoni + 3 -1.86 4.54 136 0.63 0.289 2.57 8.96 test.phys eIoni + 4 -1.61 5.9 137 0.389 0.24 2.04 11 test.phys eIoni + 5 -1.46 6.76 137 0.0603 0.329 1.48 12.5 test.phys eIoni + 6 -1.48 6.78 137 0 0.0603 0.0836 12.6 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 7 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -5.32 3.05 133 0.293 0 0 0 test.phys initStep + 1 -5.27 2.56 134 0.0642 0.229 1.12 1.12 test.phys eIoni + 2 -5.25 2.6 134 0 0.0642 0.0935 1.21 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -4.69 0.194 119 0.00262 0 0 0 test.phys initStep + 1 -4.69 0.194 119 0 0.000405 0.00316 0.00316 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -4.69 0.194 119 0.00221 0 0 0 test.phys initStep + 1 -4.69 0.194 119 0 0.00221 0.000278 0.000278 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.623 0.0797 102 0.243 0 0 0 test.phys initStep + 1 -0.853 0.416 102 0 0.243 0.853 0.853 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 90.9 74.4 0 0 0 test.phys initStep + 1 -0.271 -0.204 115 71.2 3.16 24.2 24.2 test.phys eBrem + 2 -0.301 -0.198 116 71 0.18 1.37 25.6 test.phys eBrem + 3 -0.337 -0.0759 127 69.1 1.31 10.4 36 test.phys eIoni + 4 0.106 -0.854 161 64.4 4.58 34.3 70.3 test.phys eBrem + 5 0.825 -1.48 165 59.1 0.401 4.12 74.5 test.phys eBrem + 6 3.67 -3.44 179 57.2 1.91 14.1 88.6 test.phys eBrem + 7 6.18 -4.8 191 55.8 1.38 12.3 101 test.phys eBrem + 8 7.54 -5.89 200 54.5 1.32 9.35 110 World Transportation + 9 1.6e+03 -527 1e+04 54.5 3.47e-22 9.94e+03 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 20, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.18 -4.8 191 0.0243 0 0 0 test.phys initStep + 1 7.48 -5.88 200 0.0243 0 9.34 9.34 World Transportation + 2 1.39e+03 -1.16e+03 1e+04 0.0243 0 9.96e+03 9.97e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 19, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.67 -3.44 179 0.0054 0 0 0 test.phys initStep + 1 3.75 -3.49 179 0 0.000405 0.397 0.397 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 19 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.75 -3.49 179 0.005 0 0 0 test.phys initStep + 1 3.75 -3.49 179 0 0.005 0.00107 0.00107 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 18, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.825 -1.48 165 4.9 0 0 0 test.phys initStep + 1 7.36 -7 200 4.9 0 35.8 35.8 World Transportation + 2 1.85e+03 -1.56e+03 1e+04 4.9 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.106 -0.854 161 0.149 0 0 0 test.phys initStep + 1 6.66 -6.31 200 0.149 0 39.7 39.7 World Transportation + 2 1.66e+03 -1.38e+03 1e+04 0.149 0 1e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.337 -0.0759 127 0.539 0 0 0 test.phys initStep + 1 0.542 0.485 128 0.281 0.258 1.85 1.85 test.phys eIoni + 2 0.912 0.674 128 0.0124 0.268 1.06 2.91 test.phys eIoni + 3 0.91 0.675 128 0 0.0124 0.00519 2.92 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.301 -0.198 116 0.0166 0 0 0 test.phys initStep + 1 -0.58 -0.284 130 0.0166 0 13.6 13.6 test.phys biasWrapper(Rayl) + 2 0.159 -1.07 125 0.0165 6.79e-05 4.92 18.6 test.phys biasWrapper(compt) + 3 -2.74 0.708 114 0 0.000405 11.8 30.4 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 15 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.74 0.708 114 0.0161 0 0 0 test.phys initStep + 1 -2.74 0.705 114 0 0.0161 0.0082 0.0082 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.271 -0.204 115 0.0313 0 0 0 test.phys initStep + 1 -0.548 -0.0939 123 0.0313 7.16e-05 7.86 7.86 test.phys biasWrapper(compt) + 2 0.747 1.73 131 0.0307 0 8.61 16.5 test.phys biasWrapper(compt) + 3 35.9 27.5 157 0.0306 4.55e-05 50.4 66.9 test.phys biasWrapper(compt) + 4 64.8 55.2 171 0 0.000405 42.5 109 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 14 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 64.8 55.2 171 0.0302 0 0 0 test.phys initStep + 1 64.8 55.2 171 0 0.0302 0.025 0.025 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 14 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.747 1.73 131 0.000565 0 0 0 test.phys initStep + 1 0.747 1.73 131 0 0.000565 3.89e-05 3.89e-05 test.phys eIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 1 0 200 700 World Transportation + 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1 0 0 500 test.phys initStep + 1 0 0 4.94 0.805 0 4.94 505 test.phys biasWrapper(hadElastic) + 2 -6.95 4.97 8.88e-16 0.805 0 9.87 515 World Transportation + 3 -1e+04 7.16e+03 -7.11e+03 0.805 0 1.42e+04 1.47e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 4.94 0.195 0 0 0 test.phys initStep + 1 0.000607 -0.000434 4.94 0 0.195 0.00174 0.00174 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 1 0 200 700 World Transportation + 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1 0 0 500 test.phys initStep + 1 0 0 135 0.875 0 135 635 test.phys biasWrapper(hadElastic) + 2 -663 500 200 0.875 0 833 1.47e+03 World Transportation + 3 -1e+04 7.54e+03 1.12e+03 0.875 0 1.17e+04 1.32e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 135 0.125 0 0 0 test.phys initStep + 1 0.000639 -0.000482 135 0 0.125 0.00133 0.00133 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 1 0 200 700 World Transportation + 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1 0 0 500 test.phys initStep + 1 0 0 43.5 0.834 0 43.5 544 test.phys biasWrapper(hadElastic) + 2 74 148 0 0.834 0 171 714 World Transportation + 3 5.01e+03 1e+04 -2.9e+03 0.834 0 1.14e+04 1.21e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 43.5 0.166 0 0 0 test.phys initStep + 1 -0.000371 -0.00074 43.5 0 0.166 0.0016 0.0016 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 1 0 200 700 World Transportation + 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1 0 0 500 test.phys initStep + 1 0 0 103 0.79 0 103 603 test.phys biasWrapper(hadElastic) + 2 -31.8 -30.3 66.7 0.701 0 57 660 test.phys biasWrapper(hadElastic) + 3 -31.7 -31 67 0.531 0 0.717 661 test.phys biasWrapper(hadElastic) + 4 -75.8 56.6 51 0.434 0 99.4 760 test.phys biasWrapper(hadElastic) + 5 -54.3 53.1 36.3 0.342 0 26.3 786 test.phys biasWrapper(hadElastic) + 6 -66.5 51.5 125 0.316 0.0252 89.1 875 test.phys biasWrapper(hadElastic) + 7 -57.8 66.9 136 0.306 0.0105 21.1 897 test.phys biasWrapper(hadElastic) + 8 -60.1 74.6 149 0.262 0.044 15.2 912 test.phys biasWrapper(hadElastic) + 9 -232 108 80.1 0.26 0.00151 188 1.1e+03 test.phys biasWrapper(hadElastic) + 10 -251 114 77.8 0.219 0.041 19.8 1.12e+03 test.phys biasWrapper(hadElastic) + 11 -224 118 0 0.219 0 82.5 1.2e+03 World Transportation + 12 3.27e+03 594 -1e+04 0.219 0 1.06e+04 1.18e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -54.3 53.1 36.3 0.0928 0 0 0 test.phys initStep + 1 -54.3 53.1 36.3 0 0.0928 0.0011 0.0011 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -75.8 56.6 51 0.0966 0 0 0 test.phys initStep + 1 -75.8 56.6 51 0 0.0966 0.00113 0.00113 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -31.7 -31 67 0.17 0 0 0 test.phys initStep + 1 -31.7 -31 67 0 0.17 0.00163 0.00163 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -31.8 -30.3 66.7 0.0887 0 0 0 test.phys initStep + 1 -31.8 -30.3 66.7 0 0.0887 0.00107 0.00107 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 103 0.21 0 0 0 test.phys initStep + 1 0.000479 0.000457 103 0 0.21 0.0018 0.0018 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 1 0 200 700 World Transportation + 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1 0 0 500 test.phys initStep + 1 0 0 19.7 0.976 0.0244 19.7 520 test.phys biasWrapper(hadElastic) + 2 119 6.65 196 0.888 0 213 733 test.phys biasWrapper(hadElastic) + 3 251 -13.4 166 0.799 0 137 870 test.phys biasWrapper(hadElastic) + 4 258 3.45 79.8 0.762 0.0378 88.5 958 test.phys biasWrapper(hadElastic) + 5 289 95.8 24.4 0.649 0 112 1.07e+03 test.phys biasWrapper(hadElastic) + 6 307 69.9 -3.55e-15 0.649 0 40.3 1.11e+03 World Transportation + 7 7.62e+03 -1e+04 -9.49e+03 0.649 0 1.56e+04 1.68e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 289 95.8 24.4 0.112 0 0 0 test.phys initStep + 1 289 95.8 24.4 0 0.112 0.00125 0.00125 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 251 -13.4 166 0.0889 0 0 0 test.phys initStep + 1 251 -13.4 166 0 0.0889 0.00107 0.00107 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 119 6.65 196 0.0872 0 0 0 test.phys initStep + 1 119 6.65 196 0 0.0872 0.00106 0.00106 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 1 0 200 700 World Transportation + 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1 0 0 500 test.phys initStep + 1 0 0 111 0.844 0 111 611 test.phys biasWrapper(hadElastic) + 2 -494 45.7 24.1 0.836 0.00837 503 1.11e+03 test.phys biasWrapper(hadElastic) + 3 -505 50.8 24.1 0.661 0 12.6 1.13e+03 test.phys biasWrapper(hadElastic) + 4 -306 133 125 0.567 0 238 1.36e+03 test.phys biasWrapper(hadElastic) + 5 -295 92.5 130 0.466 0 42 1.41e+03 test.phys biasWrapper(hadElastic) + 6 -311 126 200 0.466 0 79.2 1.49e+03 World Transportation + 7 -2.49e+03 4.81e+03 1e+04 0.466 0 1.11e+04 1.26e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -295 92.5 130 0.101 0 0 0 test.phys initStep + 1 -295 92.5 130 0 0.101 0.00116 0.00116 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -306 133 125 0.0942 0 0 0 test.phys initStep + 1 -306 133 125 0 0.0942 0.00111 0.00111 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -505 50.8 24.1 0.174 0 0 0 test.phys initStep + 1 -505 50.8 24.1 0 0.174 0.00165 0.00165 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 111 0.156 0 0 0 test.phys initStep + 1 0.000829 -7.67e-05 111 0 0.156 0.00154 0.00154 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 1 0 200 700 World Transportation + 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1 0 0 500 test.phys initStep + 1 0 0 81 0.98 0.0199 81 581 test.phys biasWrapper(hadElastic) + 2 -23.4 22 135 0.939 0.0414 63 644 test.phys biasWrapper(hadElastic) + 3 -27.2 27.9 137 0.828 0 7.24 651 test.phys biasWrapper(hadElastic) + 4 -27.4 27.8 137 0.777 0.0502 0.263 652 test.phys biasWrapper(hadElastic) + 5 -139 20.6 200 0.777 0 128 780 World Transportation + 6 -1e+04 -618 5.77e+03 0.777 0 1.13e+04 1.21e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -27.2 27.9 137 0.111 0 0 0 test.phys initStep + 1 -27.2 27.9 137 0 0.111 0.00124 0.00124 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 1 0 200 700 World Transportation + 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1 0 0 500 test.phys initStep + 1 0 0 46.6 0.966 0.0342 46.6 547 test.phys biasWrapper(hadElastic) + 2 -7.2 -5.26 57 0.94 0.0255 13.7 560 test.phys biasWrapper(hadElastic) + 3 -7.76 -9.09 84.9 0.825 0 28.2 589 test.phys biasWrapper(hadElastic) + 4 -343 -387 75.2 0.741 0 506 1.09e+03 test.phys biasWrapper(hadElastic) + 5 -330 -407 80.3 0.594 0 24.5 1.12e+03 test.phys biasWrapper(hadElastic) + 6 -374 -396 105 0.524 0.0699 51.6 1.17e+03 test.phys biasWrapper(hadElastic) + 7 -396 -330 57.8 0.509 0.0154 83.9 1.25e+03 test.phys biasWrapper(hadElastic) + 8 -368 -278 7.11e-15 0.509 0 82.7 1.34e+03 World Transportation + 9 4.59e+03 8.69e+03 -1e+04 0.509 0 1.43e+04 1.57e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -330 -407 80.3 0.148 0 0 0 test.phys initStep + 1 -330 -407 80.3 0 0.148 0.00149 0.00149 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -343 -387 75.2 0.0838 0 0 0 test.phys initStep + 1 -343 -387 75.2 0 0.0838 0.00103 0.00103 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -7.76 -9.09 84.9 0.115 0 0 0 test.phys initStep + 1 -7.76 -9.09 84.9 0 0.115 0.00127 0.00127 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 1 0 200 700 World Transportation + 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1 0 0 500 test.phys initStep + 1 0 0 74.5 0.915 0 74.5 575 test.phys biasWrapper(hadElastic) + 2 9.96 -21.5 84.4 0.914 0.00147 25.7 600 test.phys biasWrapper(hadElastic) + 3 22.4 -40.8 96.2 0.909 0.00508 25.8 626 test.phys biasWrapper(hadElastic) + 4 68.8 -151 200 0.909 0 159 785 World Transportation + 5 4.19e+03 -1e+04 9.43e+03 0.909 0 1.41e+04 1.49e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 74.5 0.0848 0 0 0 test.phys initStep + 1 -0.000275 0.000595 74.5 0 0.0848 0.00104 0.00104 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 1 0 0 0 World initStep + 1 0 0 0 1 0 500 500 test.phys Transportation + 2 0 0 0 1 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 1 0 200 700 World Transportation + 4 0 0 1e+04 1 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1 0 0 500 test.phys initStep + 1 0 0 10.1 0.945 0.0549 10.1 510 test.phys biasWrapper(hadElastic) + 2 82.4 62.5 89.5 0.78 0 130 640 test.phys biasWrapper(hadElastic) + 3 90.7 53 79.7 0.647 0 15.9 656 test.phys biasWrapper(hadElastic) + 4 -117 -110 200 0.647 0 290 946 World Transportation + 5 -1e+04 -7.87e+03 5.94e+03 0.647 0 1.38e+04 1.48e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 90.7 53 79.7 0.133 0 0 0 test.phys initStep + 1 90.7 53 79.7 0 0.133 0.00139 0.00139 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 82.4 62.5 89.5 0.165 0 0 0 test.phys initStep + 1 82.4 62.5 89.5 0 0.165 0.0016 0.0016 test.phys ionIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ********************************************************************************************************* * G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 @@ -4184,16 +4000,779 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 100 0 0 500 test.phys initStep - 1 0 0 174 99.9 0 174 674 test.phys biasWrapper(hadElastic) - 2 -2.6 -0.175 200 99.9 0 26.2 700 World Transportation - 3 -982 -65.9 1e+04 99.9 0 9.85e+03 1.05e+04 OutOfWorld Transportation + 1 0 0 21.7 0 0 21.7 522 test.phys biasWrapper(neutronInelastic) + +********************************************************************************************************* +* G4Track Information: Particle = C12, Track ID = 9, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 21.7 9.26 0 0 0 test.phys initStep + 1 -0.00107 -0.00816 21.7 0 9.26 0.0121 0.0121 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 21.7 0.182 0 0 0 test.phys initStep + 1 -28.1 -3.07 3.55e-15 0.182 0 35.7 35.7 World Transportation + 2 -1e+04 -1.09e+03 -7.7e+03 0.182 0 1.26e+04 1.27e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 21.7 0.862 0 0 0 test.phys initStep + 1 -5.16 20.4 3.55e-15 0.862 0 30.3 30.3 World Transportation + 2 -2.38e+03 9.43e+03 -1e+04 0.862 0 1.39e+04 1.4e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 21.7 1.86 0 0 0 test.phys initStep + 1 -3.69 16.2 27 1.56 0 17.4 17.4 test.phys biasWrapper(hadElastic) + 2 24.9 -17.8 90.1 1.5 0.0598 77.2 94.6 test.phys biasWrapper(hadElastic) + 3 50.9 13.9 200 1.5 0 117 212 World Transportation + 4 2.37e+03 2.84e+03 1e+04 1.5 0 1.05e+04 1.07e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 10, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -3.69 16.2 27 0.306 0 0 0 test.phys initStep + 1 -3.69 16.2 27 0 0.306 0.00206 0.00206 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 21.7 3.92 0 0 0 test.phys initStep + 1 295 -7.28 200 3.92 0 345 345 World Transportation + 2 1e+04 -247 6.07e+03 3.92 0 1.13e+04 1.17e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = proton, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 21.7 5.19 0 0 0 test.phys initStep + 1 -0.133 -0.147 21.6 3.56 1.63 0.254 0.254 test.phys hIoni + 2 -0.237 -0.26 21.5 1.9 1.66 0.189 0.443 test.phys hIoni + 3 -0.293 -0.315 21.4 0.225 1.68 0.0987 0.542 test.phys hIoni + 4 -0.295 -0.318 21.4 0 0.225 0.0046 0.546 test.phys hIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 21.7 66.2 0 0 0 test.phys initStep + 1 83.2 253 147 66 0 294 294 test.phys biasWrapper(hadElastic) + 2 144 404 200 66 0 172 466 World Transportation + 3 4e+03 1e+04 3.52e+03 66 0 1.09e+04 1.13e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 11, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 83.2 253 147 0.102 0 0 0 test.phys initStep + 1 83.2 253 147 0 0.102 0.00117 0.00117 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 48.3 99.9 0 48.3 548 test.phys biasWrapper(hadElastic) + 2 15.1 2.26 200 99.9 0 153 701 World Transportation + 3 991 148 1e+04 99.9 0 9.85e+03 1.06e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 174 0.0755 0 0 0 test.phys initStep - 1 0.00072 4.83e-05 174 0 0.0755 0.000967 0.000967 test.phys ionIoni + 0 0 0 48.3 0.0763 0 0 0 test.phys initStep + 1 -0.000721 -0.000108 48.3 0 0.0763 0.000973 0.000973 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 24.9 99.7 0 24.9 525 test.phys biasWrapper(hadElastic) + 2 -9.64 -32.4 200 99.7 0 178 703 World Transportation + 3 -549 -1.84e+03 1e+04 99.7 0 9.98e+03 1.07e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 24.9 0.274 0 0 0 test.phys initStep + 1 0.000532 0.00179 24.9 0 0.274 0.00199 0.00199 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 109 0 0 109 609 test.phys biasWrapper(neutronInelastic) + +********************************************************************************************************* +* G4Track Information: Particle = C12, Track ID = 9, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 109 1.11 0 0 0 test.phys initStep + 1 0.00183 0.00243 109 0 1.11 0.00309 0.00309 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 109 0.0921 0 0 0 test.phys initStep + 1 0.443 -0.69 108 0.0921 0 1.46 1.46 test.phys biasWrapper(Rayl) + 2 35.3 -61.7 1.42e-14 0.0921 0 129 130 World Transportation + 3 3.28e+03 -5.73e+03 -1e+04 0.0921 0 1.19e+04 1.21e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 109 1.31 0 0 0 test.phys initStep + 1 137 43.7 200 1.31 0 171 171 World Transportation + 2 1e+04 3.18e+03 6.74e+03 1.31 0 1.22e+04 1.24e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 109 1.34 0 0 0 test.phys initStep + 1 47.2 134 198 1.07 0 168 168 test.phys biasWrapper(hadElastic) + 2 230 -64.2 114 1.02 0.046 282 450 test.phys biasWrapper(hadElastic) + 3 230 -77.7 115 0.948 0 13.5 463 test.phys biasWrapper(hadElastic) + 4 305 -158 -1.42e-14 0.948 0 159 623 World Transportation + 5 6.82e+03 -7.1e+03 -1e+04 0.948 0 1.38e+04 1.44e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 11, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 230 -77.7 115 0.0764 0 0 0 test.phys initStep + 1 230 -77.7 115 0 0.0764 0.000974 0.000974 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 10, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 47.2 134 198 0.266 0 0 0 test.phys initStep + 1 47.2 134 198 0 0.266 0.00197 0.00197 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 109 1.9 0 0 0 test.phys initStep + 1 252 28.4 123 1.45 0 254 254 test.phys biasWrapper(compt) + 2 346 1.35 142 0.724 0 99.5 354 test.phys biasWrapper(compt) + 3 538 -243 0 0.724 0 341 695 World Transportation + 4 8.21e+03 -1e+04 -5.68e+03 0.724 0 1.36e+04 1.43e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 346 1.35 142 0.727 0 0 0 test.phys initStep + 1 348 1.54 143 0.455 0.272 2.22 2.22 test.phys eIoni + 2 348 1.38 144 0.225 0.229 1.66 3.89 test.phys eIoni + 3 348 1.63 144 0 0.225 0.756 4.64 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 252 28.4 123 0.451 0 0 0 test.phys initStep + 1 253 29.2 123 0.106 0.345 1.65 1.65 test.phys eIoni + 2 253 29.3 123 0 0.106 0.221 1.87 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 109 5.4 0 0 0 test.phys initStep + 1 -19.1 -308 200 5.4 0 322 322 World Transportation + 2 -621 -1e+04 3.07e+03 5.4 0 1.01e+04 1.04e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = proton, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 109 76.3 0 0 0 test.phys initStep + 1 -3.63 -2.38 122 67 9.37 13.4 13.4 test.phys hIoni + 2 -6.74 -4.3 132 58.8 8.15 10.7 24.1 test.phys hIoni + 3 -9.17 -5.78 140 51.8 7.05 8.48 32.6 test.phys hIoni + 4 -11.2 -6.98 146 45.7 6.03 6.77 39.3 test.phys hIoni + 5 -12.9 -7.86 151 40.2 5.53 5.45 44.8 test.phys hIoni + 6 -14.1 -8.52 155 35.2 4.97 4.35 49.1 test.phys hIoni + 7 -15.2 -9.03 158 31.1 4.13 3.46 52.6 test.phys hIoni + 8 -16.1 -9.41 161 27.4 3.69 2.8 55.4 test.phys hIoni + 9 -16.9 -9.72 163 24 3.41 2.26 57.7 test.phys hIoni + 10 -17.5 -10 165 21 3.04 1.81 59.5 test.phys hIoni + 11 -17.9 -10.2 166 18.2 2.75 1.45 60.9 test.phys hIoni + 12 -18.3 -10.4 167 15.8 2.4 1.16 62.1 test.phys hIoni + 13 -18.6 -10.5 168 13.6 2.27 0.939 63 test.phys hIoni + 14 -18.8 -10.6 169 11.6 1.96 0.749 63.8 test.phys hIoni + 15 -19 -10.7 169 9.71 1.88 0.604 64.4 test.phys hIoni + 16 -19.1 -10.8 170 7.92 1.79 0.482 64.9 test.phys hIoni + 17 -19.2 -10.9 170 6.36 1.56 0.381 65.2 test.phys hIoni + 18 -19.3 -10.9 170 4.8 1.56 0.305 65.5 test.phys hIoni + 19 -19.4 -11 171 3.19 1.61 0.238 65.8 test.phys hIoni + 20 -19.4 -11.1 171 1.43 1.76 0.173 66 test.phys hIoni + 21 -19.5 -11.1 171 0.0206 1.4 0.0617 66 test.phys hIoni + 22 -19.5 -11.1 171 0.0104 0.0102 0.000867 66 test.phys hIoni + 23 -19.5 -11.1 171 0.00822 0.00218 0.000616 66 test.phys hIoni + 24 -19.5 -11.1 171 0 0.00822 0.000562 66 test.phys hIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 79.2 99.8 0 79.2 579 test.phys biasWrapper(hadElastic) + 2 7.12 14.9 173 0 0 95.6 675 test.phys biasWrapper(neutronInelastic) + +********************************************************************************************************* +* G4Track Information: Particle = C14, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 7.12 14.9 173 2.45 0 0 0 test.phys initStep + 1 7.11 14.9 173 0 2.45 0.00442 0.00442 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 7.12 14.9 173 0.179 0 0 0 test.phys initStep + 1 9.43 27.5 188 0.12 0 19.2 19.2 test.phys biasWrapper(compt) + 2 51.7 54.9 99.3 0.113 0 102 121 test.phys biasWrapper(compt) + 3 39.4 33.9 0 0.113 0 102 223 World Transportation + 4 -1.21e+03 -2.08e+03 -1e+04 0.113 0 1.03e+04 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 51.7 54.9 99.3 0.0069 0 0 0 test.phys initStep + 1 51.8 54.9 99.3 0 0.0069 0.00187 0.00187 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 9.43 27.5 188 0.0597 0 0 0 test.phys initStep + 1 9.42 27.5 188 0 0.0597 0.0823 0.0823 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 7.12 14.9 173 1.32 0 0 0 test.phys initStep + 1 -5.72 19.8 163 1.02 0 17 17 test.phys biasWrapper(compt) + 2 -64.7 88.8 124 0.457 0 98.9 116 test.phys biasWrapper(compt) + 3 -60 94.4 117 0.339 0 10 126 test.phys biasWrapper(compt) + 4 -32.6 62.5 0 0.339 0 124 250 World Transportation + 5 2.3e+03 -2.66e+03 -1e+04 0.339 0 1.06e+04 1.09e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -60 94.4 117 0.118 0 0 0 test.phys initStep + 1 -59.9 94.5 117 0 0.118 0.266 0.266 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -64.7 88.8 124 0.562 0 0 0 test.phys initStep + 1 -65.8 89.5 124 0.311 0.251 1.9 1.9 test.phys eIoni + 2 -66.3 89.9 124 0 0.311 1.2 3.1 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -5.72 19.8 163 0.306 0 0 0 test.phys initStep + 1 -6.11 19.5 163 0.0865 0.22 1.18 1.18 test.phys eIoni + 2 -6.09 19.6 163 0 0.0865 0.156 1.34 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = proton, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 7.12 14.9 173 96.4 0 0 0 test.phys initStep + 1 10.8 6.78 192 85.1 11.3 20.3 20.3 test.phys hIoni + 2 12.6 3.13 200 79.6 5.52 9.34 29.6 World Transportation + 3 2.29e+03 -4.19e+03 1e+04 79.6 1.4e-21 1.09e+04 1.09e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 79.2 0.229 0 0 0 test.phys initStep + 1 -0.000737 -0.00155 79.2 0 0.229 0.00186 0.00186 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 17.9 0 0 17.9 518 test.phys biasWrapper(neutronInelastic) + +********************************************************************************************************* +* G4Track Information: Particle = Be8, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 17.9 4.56 0 0 0 test.phys initStep + 1 0.00949 0.00436 17.9 0 4.56 0.0106 0.0106 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = alpha, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 17.9 2.46 0 0 0 test.phys initStep + 1 -0.00117 -0.00104 17.9 0 2.46 0.0166 0.0166 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 17.9 7.46 0 0 0 test.phys initStep + 1 -916 -366 105 6.13 0 990 990 test.phys biasWrapper(hadElastic) + 2 -892 -342 0 6.13 0 111 1.1e+03 World Transportation + 3 1.33e+03 1.95e+03 -1e+04 6.13 0 1.05e+04 1.16e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 8, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -916 -366 105 1.34 0 0 0 test.phys initStep + 1 -916 -366 106 0 1.34 0.00305 0.00305 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = proton, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 17.9 9.48 0 0 0 test.phys initStep + 1 0.303 -0.206 18.2 7.64 1.84 0.468 0.468 test.phys hIoni + 2 0.534 -0.363 18.5 6.06 1.58 0.367 0.835 test.phys hIoni + 3 0.723 -0.479 18.6 4.44 1.62 0.291 1.13 test.phys hIoni + 4 0.864 -0.572 18.8 2.81 1.63 0.224 1.35 test.phys hIoni + 5 0.96 -0.639 18.9 1.05 1.76 0.156 1.51 test.phys hIoni + 6 0.984 -0.656 18.9 0.0598 0.991 0.038 1.54 test.phys hIoni + 7 0.985 -0.657 18.9 0.0158 0.044 0.00162 1.55 test.phys hIoni + 8 0.985 -0.657 18.9 0.0145 0.0013 0.000754 1.55 test.phys hIoni + 9 0.985 -0.657 18.9 0.00442 0.0101 0.000721 1.55 test.phys hIoni + 10 0.985 -0.657 18.9 0 0.00442 0.000412 1.55 test.phys hIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 17.9 56.1 0 0 0 test.phys initStep + 1 -51.3 1.05 84.8 55.8 0 84.3 84.3 test.phys biasWrapper(hadElastic) + 2 -97 12 200 55.8 0 124 209 World Transportation + 3 -3.98e+03 947 1e+04 55.8 0 1.06e+04 1.08e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 9, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -51.3 1.05 84.8 0.34 0 0 0 test.phys initStep + 1 -51.3 1.05 84.8 0 0.34 0.00213 0.00213 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 143 0 0 143 643 test.phys biasWrapper(neutronInelastic) + +********************************************************************************************************* +* G4Track Information: Particle = C13, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 143 1.63 0 0 0 test.phys initStep + 1 0.0026 0.00191 143 0 1.63 0.00365 0.00365 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 143 0.19 0 0 0 test.phys initStep + 1 -26 13.5 115 0.144 0 40.6 40.6 test.phys biasWrapper(compt) + 2 -26.8 12.3 114 0.124 0 1.45 42.1 test.phys biasWrapper(compt) + 3 -22.2 2.53 104 0.114 0 15.2 57.3 test.phys biasWrapper(compt) + 4 -35.6 -11 87.6 0.0922 0 24.9 82.2 test.phys biasWrapper(compt) + 5 -23.7 -40.6 106 0.0794 0 36.7 119 test.phys biasWrapper(compt) + 6 -6.68 -110 8.3 0.0749 0 120 239 test.phys biasWrapper(compt) + 7 -8.04 -276 0 0.0749 0 167 406 World Transportation + 8 -87.7 -1e+04 -485 0.0749 0 9.74e+03 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.68 -110 8.3 0.00453 0 0 0 test.phys initStep + 1 -6.68 -110 8.3 0 0.00453 0.000911 0.000911 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -23.7 -40.6 106 0.0127 0 0 0 test.phys initStep + 1 -23.7 -40.6 106 0 0.0127 0.00543 0.00543 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -35.6 -11 87.6 0.0216 0 0 0 test.phys initStep + 1 -35.6 -11 87.6 0 0.0216 0.0138 0.0138 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -22.2 2.53 104 0.00989 0 0 0 test.phys initStep + 1 -22.2 2.53 104 0 0.00989 0.00349 0.00349 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -26.8 12.3 114 0.0201 0 0 0 test.phys initStep + 1 -26.8 12.3 114 0 0.0201 0.0121 0.0121 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -26 13.5 115 0.0464 0 0 0 test.phys initStep + 1 -26 13.5 114 0 0.0464 0.053 0.053 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 143 1.23 0 0 0 test.phys initStep + 1 48.1 53.2 81.4 0.532 0 94.4 94.4 test.phys biasWrapper(compt) + 2 180 15.5 54.4 0.252 0 140 234 test.phys biasWrapper(compt) + 3 179 13 55.5 0.188 0 2.79 237 test.phys biasWrapper(compt) + 4 16.5 19.8 107 0.115 0 171 408 test.phys biasWrapper(compt) + 5 62.9 -7.05 25.4 0.101 0 97.9 506 test.phys biasWrapper(compt) + 6 81.8 -30.7 29.9 0.0743 0 30.6 536 test.phys biasWrapper(compt) + 7 80.8 -19 29.1 0.0583 0 11.8 548 test.phys biasWrapper(compt) + 8 100 -54.4 40.2 0 0.000405 41.9 590 test.phys biasWrapper(phot) + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 100 -54.4 40.2 0.0579 0 0 0 test.phys initStep + 1 100 -54.4 40.2 0 0.0579 0.078 0.078 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 80.8 -19 29.1 0.0161 0 0 0 test.phys initStep + 1 80.8 -19 29.1 0 0.0161 0.00818 0.00818 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 81.8 -30.7 29.9 0.0269 0 0 0 test.phys initStep + 1 81.8 -30.7 29.9 0 0.0269 0.0204 0.0204 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 62.9 -7.05 25.4 0.0141 0 0 0 test.phys initStep + 1 62.9 -7.05 25.4 0 0.0141 0.00652 0.00652 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 16.5 19.8 107 0.0731 0 0 0 test.phys initStep + 1 16.4 19.8 107 0 0.0731 0.117 0.117 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 179 13 55.5 0.0637 0 0 0 test.phys initStep + 1 179 12.9 55.5 0 0.0637 0.092 0.092 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 180 15.5 54.4 0.28 0 0 0 test.phys initStep + 1 180 15.6 54.3 0.04 0.24 1.06 1.06 test.phys eIoni + 2 180 15.6 54.3 0 0.04 0.0409 1.1 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 48.1 53.2 81.4 0.703 0 0 0 test.phys initStep + 1 48.3 54.5 80.3 0.426 0.277 2.18 2.18 test.phys eIoni + 2 48.3 54.7 79.4 0.0369 0.389 1.59 3.77 test.phys eIoni + 3 48.2 54.7 79.4 0 0.0369 0.0354 3.8 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 143 1.94 0 0 0 test.phys initStep + 1 7.25 -6.79 141 1.9 0.0372 10.1 10.1 test.phys biasWrapper(hadElastic) + 2 300 -99.8 174 1.86 0.0436 309 319 test.phys biasWrapper(hadElastic) + 3 436 -72 151 1.81 0.0524 141 459 test.phys biasWrapper(hadElastic) + 4 527 -38.2 200 1.81 0 109 568 World Transportation + 5 1e+04 3.46e+03 5.23e+03 1.81 0 1.13e+04 1.19e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = proton, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 143 87.4 0 0 0 test.phys initStep + 1 -7.66 -2.65 158 76.3 11.1 17.1 17.1 test.phys hIoni + 2 -14 -4.75 169 67 9.25 13.4 30.5 test.phys hIoni + 3 -19 -6.44 179 59 8.08 10.7 41.2 test.phys hIoni + 4 -23 -7.82 186 52.1 6.89 8.51 49.7 test.phys hIoni + 5 -26.1 -9.1 192 45.9 6.2 6.84 56.5 test.phys hIoni + 6 -28.7 -10.3 197 40.3 5.61 5.47 62 test.phys hIoni + 7 -30.5 -11 200 36 4.23 3.87 65.9 World Transportation + 8 -5.48e+03 -1.93e+03 1e+04 36 2.86e-21 1.14e+04 1.14e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 19.4 99.7 0 19.4 519 test.phys biasWrapper(hadElastic) + 2 -31 14.4 200 99.7 0 184 703 World Transportation + 3 -1.71e+03 795 1e+04 99.7 0 9.97e+03 1.07e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 19.4 0.264 0 0 0 test.phys initStep + 1 0.00166 -0.000772 19.4 0 0.264 0.00196 0.00196 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 164 99.8 0 164 664 test.phys biasWrapper(hadElastic) + 2 5.74 2.66 200 99.8 0 36.2 701 World Transportation + 3 1.58e+03 734 1e+04 99.8 0 9.95e+03 1.07e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 164 0.233 0 0 0 test.phys initStep + 1 -0.00157 -0.000727 164 0 0.233 0.00187 0.00187 test.phys ionIoni + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -500 100 0 0 0 World initStep + 1 0 0 0 100 0 500 500 test.phys Transportation + 2 0 0 0 100 0 0 500 test.phys biasWrapper(0) + 3 0 0 200 100 0 200 700 World Transportation + 4 0 0 1e+04 100 0 9.8e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = neutron, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 100 0 0 500 test.phys initStep + 1 0 0 27.5 99.8 0 27.5 527 test.phys biasWrapper(hadElastic) + 2 26.1 -14.8 200 99.8 0 175 703 World Transportation + 3 1.51e+03 -858 1e+04 99.8 0 9.95e+03 1.06e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = N14, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 27.5 0.225 0 0 0 test.phys initStep + 1 -0.00148 0.00084 27.5 0 0.225 0.00185 0.00185 test.phys ionIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/biasing/GB03/CMakeLists.txt b/examples/extended/biasing/GB03/CMakeLists.txt index b97890f128..5270dfb1bb 100644 --- a/examples/extended/biasing/GB03/CMakeLists.txt +++ b/examples/extended/biasing/GB03/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(GB03project) #---------------------------------------------------------------------------- diff --git a/examples/extended/biasing/GB03/History b/examples/extended/biasing/GB03/History index 9f4bbee5e5..0c61c624d3 100644 --- a/examples/extended/biasing/GB03/History +++ b/examples/extended/biasing/GB03/History @@ -16,6 +16,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 Ben Morgan - GB03-V10-06-00 +- Migration to G4RunManagerFactory. + Sep 11th, 2018, M. Verderi - GB03-V10-04-02 - Bug fix in GB03BOptnSplitOrKillOnBoundary.cc in the computation of the killing probability. diff --git a/examples/extended/biasing/GB03/exampleGB03.cc b/examples/extended/biasing/GB03/exampleGB03.cc index c86c7ec042..e7792e49e4 100644 --- a/examples/extended/biasing/GB03/exampleGB03.cc +++ b/examples/extended/biasing/GB03/exampleGB03.cc @@ -26,11 +26,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4VisExecutive.hh" #include "G4UIExecutive.hh" @@ -52,15 +48,8 @@ int main(int argc,char** argv) } // -- Construct the run manager : MT or sequential one -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - G4cout << " ********** Run Manager constructed in MT mode ************ " << G4endl; - // -- Choose 4 threads: + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(4); -#else - G4RunManager * runManager = new G4RunManager; - G4cout << " ********** Run Manager constructed in sequential mode ************ " << G4endl; -#endif // -- Set mandatory initialization classes G4VUserDetectorConstruction* detector = new GB03DetectorConstruction; diff --git a/examples/extended/biasing/GB03/exampleGB03.out b/examples/extended/biasing/GB03/exampleGB03.out index 9e52d372f5..01299e27b2 100644 --- a/examples/extended/biasing/GB03/exampleGB03.out +++ b/examples/extended/biasing/GB03/exampleGB03.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,7 +13,6 @@ WWW : http://geant4.org/ ************************************************************** - ********** Run Manager constructed in sequential mode ************ <<< Geant4 Physics List simulation engine: FTFP_BERT Visualization Manager instantiating with verbosity "warnings (3)"... @@ -29,10 +29,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -77,7 +79,7 @@ G4SDManager::AddNewCollection : the collection is registered at G4SDManager::AddNewCollection : the collection is registered at 5 G4SDManager::AddNewCollection : the collection is registered at 6 - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -108,10 +110,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -135,10 +138,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -166,9 +170,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -182,14 +186,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -198,9 +202,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -212,9 +216,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -225,9 +229,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -241,14 +245,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -257,9 +261,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -273,14 +277,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -289,9 +293,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -305,14 +309,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -321,9 +325,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -338,14 +342,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -354,9 +358,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -371,14 +375,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -387,9 +391,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -403,14 +407,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -419,9 +423,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -435,14 +439,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -471,6 +475,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -545,6 +571,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -656,8 +695,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -722,8 +761,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -741,6 +780,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV ================================================================ +### G4LevelReader: broken transition 0 from level 24 to 24 for isotope Z= 89 A= 219 - use ground level ======================================================================= ====== Pre-compound/De-excitation Physics Parameters ======== ======================================================================= @@ -764,7 +804,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= Region -- -- appears in world volume @@ -792,14 +831,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Lead Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 94.7372 keV e- 1.00768 MeV e+ 948.734 keV proton 70 keV + Energy thresholds : gamma 94.5861 keV e- 1.00386 MeV e+ 951.321 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : Scintillator Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.10317 keV e- 282.263 keV e+ 272.967 keV proton 70 keV + Energy thresholds : gamma 2.09434 keV e- 281.891 keV e+ 276.265 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -827,7 +866,10 @@ GB03BOptrGeometryBasedBiasing : starting run with splitting factor = 2, and prob Run terminated. Run Summary Number of events processed : 10 - User=0.240000s Real=0.251813s Sys=0.000000s + User=0.110000s Real=0.181399s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Region -- -- appears in world volume This region is in the mass world. @@ -854,14 +896,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Lead Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 94.7372 keV e- 1.00768 MeV e+ 948.734 keV proton 70 keV + Energy thresholds : gamma 94.5861 keV e- 1.00386 MeV e+ 951.321 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : Scintillator Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.10317 keV e- 282.263 keV e+ 272.967 keV proton 70 keV + Energy thresholds : gamma 2.09434 keV e- 281.891 keV e+ 276.265 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -876,7 +918,7 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Voxelisation: top CPU users: Percent Total CPU System CPU Memory Volume ------- ---------- ---------- -------- ---------- - 0.00 0.00 0.00 2k Calor + 0.00 0.00 0.00 1k Calor Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume @@ -887,7 +929,10 @@ GB03BOptrGeometryBasedBiasing : starting run with splitting factor = 2, and prob Run terminated. Run Summary Number of events processed : 10 - User=0.700000s Real=0.695625s Sys=0.000000s + User=0.130000s Real=0.142235s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. @@ -900,9 +945,9 @@ G4SDManager deleted. EventManager deleted. Units table cleared. TransportationManager deleted. -Total navigation history collections cleaned: 15 +Total navigation history collections cleaned: 14 ================== Deleting memory pools =================== -Pool ID '20G4NavigationLevelRep', size : 0.0211 MB +Pool ID '20G4NavigationLevelRep', size : 0.0202 MB Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB Pool ID '7G4Event', size : 0.000961 MB Pool ID '15G4PrimaryVertex', size : 0.000961 MB @@ -910,13 +955,12 @@ Pool ID '17G4PrimaryParticle', size : 0.000961 MB Pool ID '15G4HCofThisEvent', size : 0.000961 MB Pool ID '16G4HitsCollection', size : 0 MB Pool ID '17G4DynamicParticle', size : 0.00481 MB -Pool ID '7G4Track', size : 0.00961 MB +Pool ID '7G4Track', size : 0.00865 MB Pool ID '18G4TouchableHistory', size : 0.00192 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Pool ID '10G4Fragment', size : 0.000961 MB -Pool ID '17G4ReactionProduct', size : 0.000961 MB -Number of memory pools allocated: 13 of which, static: 0 -Dynamic pools deleted: 13 / Total memory freed: 0.045 MB +Number of memory pools allocated: 12 of which, static: 0 +Dynamic pools deleted: 12 / Total memory freed: 0.042 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/extended/biasing/GB04/CMakeLists.txt b/examples/extended/biasing/GB04/CMakeLists.txt index 6e91d20236..9065ca757f 100644 --- a/examples/extended/biasing/GB04/CMakeLists.txt +++ b/examples/extended/biasing/GB04/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(GB04project) #---------------------------------------------------------------------------- diff --git a/examples/extended/biasing/GB04/History b/examples/extended/biasing/GB04/History index ba49617bb1..d8e5d2606f 100644 --- a/examples/extended/biasing/GB04/History +++ b/examples/extended/biasing/GB04/History @@ -16,6 +16,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 Ben Morgan - GB04-V10-06-00 +- Migration to G4RunManagerFactory. + May 20, 2018 J. Allison (GB04-V10-04-01) - Remove G4UI_USE and G4VIS_USE. - Move instantiation of G4UIExecutive nearer to start of main. @@ -29,7 +32,7 @@ Jul 20, 2016 I. Hrivnacova - Coding guidelines(redundant empty lines, class data member names) Jun 05, 2015, M. Verderi (GB04-V10-01-00) -- Bug fix in GB04BOptnBremSplitting.cc : missing +- Bug fix in GB04BOptnBremSplitting.cc : missing fParticleChange.SetSecondaryWeightByProcess(true); as reported privately by Akihisa WAKITA. diff --git a/examples/extended/biasing/GB04/exampleGB04.cc b/examples/extended/biasing/GB04/exampleGB04.cc index 715bd8f678..2638ddeb5c 100644 --- a/examples/extended/biasing/GB04/exampleGB04.cc +++ b/examples/extended/biasing/GB04/exampleGB04.cc @@ -30,11 +30,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "GB04ActionInitialization.hh" #include "G4UImanager.hh" @@ -97,17 +93,8 @@ int main(int argc,char** argv) } // -- Construct the run manager : MT or sequential one -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - G4cout << " ********** Run Manager constructed in MT mode ************ " - << G4endl; - // -- Choose 4 threads: + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(4); -#else - G4RunManager * runManager = new G4RunManager; - G4cout << " ********** Run Manager constructed in sequential mode ************ " - << G4endl; -#endif // -- Set mandatory initialization classes GB04DetectorConstruction* detector = new GB04DetectorConstruction(); diff --git a/examples/extended/biasing/GB04/exampleGB04.out b/examples/extended/biasing/GB04/exampleGB04.out index dacbb676ef..62b854415f 100644 --- a/examples/extended/biasing/GB04/exampleGB04.out +++ b/examples/extended/biasing/GB04/exampleGB04.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,7 +13,6 @@ WWW : http://geant4.org/ ************************************************************** - ********** Run Manager constructed in sequential mode ************ <<< Geant4 Physics List simulation engine: FTFP_BERT ********************************************************* @@ -20,7 +20,7 @@ ********************************************************* Attaching biasing operator BremSplittingOperator to logical volume test.logical - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -41,10 +41,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -102,10 +104,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -129,10 +132,11 @@ eBrem: for e- SubType=3 eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -160,9 +164,9 @@ eBrem: for e+ SubType=3 eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -176,14 +180,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -192,9 +196,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -206,9 +210,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -219,9 +223,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -235,14 +239,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -251,9 +255,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -267,14 +271,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -283,9 +287,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -299,14 +303,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -315,9 +319,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -332,14 +336,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -348,9 +352,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -365,14 +369,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -381,9 +385,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -397,14 +401,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -413,9 +417,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -429,14 +433,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -465,6 +469,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -539,6 +565,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -650,8 +689,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -716,8 +755,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -758,7 +797,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= Region -- -- appears in world volume @@ -786,7 +824,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_Al Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 5.84069 keV e- 457.179 keV e+ 442.122 keV proton 70 keV + Energy thresholds : gamma 5.85564 keV e- 460.395 keV e+ 442.201 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -809,9 +847,9 @@ See commands in /vis/modeling/trajectories/ for other options. Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 1.85e-05 -5.14e-05 0.0295 99.7 0.00952 0.0295 1e+03 test.phys biasWrapper(eBrem) + 2 1.85e-05 -5.15e-05 0.0295 99.7 0.00952 0.0295 1e+03 test.phys biasWrapper(eBrem) 3 0.00671 0.000115 0.719 98.6 0.361 0.689 1e+03 test.phys biasWrapper(eBrem) - 4 0.031 0.143 4.8 97 1.55 4.09 1e+03 test.phys biasWrapper(eBrem) + 4 0.031 0.143 4.81 97 1.55 4.09 1e+03 test.phys biasWrapper(eBrem) 5 -0.101 0.209 10 94.8 2.25 5.2 1.01e+03 World Transportation 6 -183 -198 1e+04 94.8 3.66e-22 9.99e+03 1.1e+04 OutOfWorld Transportation @@ -820,34 +858,34 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.031 0.143 4.8 0.00587 0 0 0 test.phys initStep - 1 0.0298 0.144 4.86 0 0.00155 0.055 0.055 test.phys phot + 0 0.031 0.143 4.81 0.00588 0 0 0 test.phys initStep + 1 0.0298 0.144 4.86 0 0.00155 0.0554 0.0554 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0298 0.144 4.86 0.00432 0 0 0 test.phys initStep - 1 0.0298 0.144 4.86 0 0.00432 0.000329 0.000329 test.phys eIoni + 0 0.0298 0.144 4.86 0.00433 0 0 0 test.phys initStep + 1 0.0298 0.144 4.86 0 0.00433 0.00033 0.00033 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00671 0.000115 0.719 0.745 0 0 0 test.phys initStep - 1 0.297 0.143 10 0.745 0 9.29 9.29 World Transportation - 2 313 154 1e+04 0.745 0 1e+04 1e+04 OutOfWorld Transportation + 0 0.00671 0.000115 0.719 0.746 0 0 0 test.phys initStep + 1 0.297 0.143 10 0.746 0 9.29 9.29 World Transportation + 2 313 154 1e+04 0.746 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.85e-05 -5.14e-05 0.0295 0.278 0 0 0 test.phys initStep + 0 1.85e-05 -5.15e-05 0.0295 0.278 0 0 0 test.phys initStep 1 -0.00224 0.00143 1.64 0.212 0 1.61 1.61 test.phys compt - 2 -15 9.45 10 0.212 0 19.6 21.2 World Transportation + 2 -15 9.44 10 0.212 0 19.6 21.2 World Transportation 3 -1e+04 6.3e+03 5.57e+03 0.212 0 1.3e+04 1.31e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -855,8 +893,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00224 0.00143 1.64 0.066 0 0 0 test.phys initStep - 1 0.00472 -0.00295 1.65 0 0.066 0.0344 0.0344 test.phys eIoni + 0 -0.00224 0.00143 1.64 0.0661 0 0 0 test.phys initStep + 1 0.00473 -0.00296 1.65 0 0.0661 0.0345 0.0345 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -865,36 +903,36 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 -0.0163 0.00245 1.33 98.4 0.471 1.33 1e+03 test.phys eIoni - 3 -0.251 0.114 8.92 95.6 2.83 7.6 1.01e+03 test.phys biasWrapper(eBrem) - 4 -0.313 0.139 10 95.2 0.368 1.08 1.01e+03 World Transportation - 5 -469 145 1e+04 95.2 3.66e-22 1e+04 1.1e+04 OutOfWorld Transportation + 2 -0.0165 0.00247 1.34 98.4 0.474 1.34 1e+03 test.phys eIoni + 3 -0.251 0.114 8.92 95.6 2.83 7.59 1.01e+03 test.phys biasWrapper(eBrem) + 4 -0.313 0.138 10 95.2 0.367 1.08 1.01e+03 World Transportation + 5 -470 145 1e+04 95.2 3.66e-22 1e+04 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.251 0.114 8.92 0.00621 0 0 0 test.phys initStep - 1 -0.252 0.115 8.93 0 0.00155 0.0136 0.0136 test.phys phot + 0 -0.251 0.114 8.92 0.00622 0 0 0 test.phys initStep + 1 -0.252 0.114 8.93 0 0.00155 0.0137 0.0137 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.252 0.115 8.93 0.00466 0 0 0 test.phys initStep - 1 -0.252 0.115 8.93 0 0.00466 0.000371 0.000371 test.phys eIoni + 0 -0.252 0.114 8.93 0.00467 0 0 0 test.phys initStep + 1 -0.252 0.114 8.93 0 0.00467 0.000373 0.000373 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0163 0.00245 1.33 1.09 0 0 0 test.phys initStep - 1 0.341 0.429 1.52 0.587 0.506 0.643 0.643 test.phys msc - 2 0.591 0.734 1.47 0.0805 0.507 1.05 1.69 test.phys eIoni - 3 0.606 0.731 1.48 0 0.0805 0.0482 1.74 test.phys eIoni + 0 -0.0165 0.00247 1.34 1.1 0 0 0 test.phys initStep + 1 0.343 0.431 1.54 0.593 0.508 0.648 0.648 test.phys msc + 2 0.596 0.74 1.49 0.0843 0.508 1.06 1.71 test.phys eIoni + 3 0.613 0.738 1.49 0 0.0843 0.0521 1.76 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -904,35 +942,34 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation 2 -0.00613 -0.00188 0.708 99.7 0.263 0.708 1e+03 test.phys biasWrapper(eBrem) - 3 0.104 0.0818 6.94 97.4 2.32 6.23 1.01e+03 test.phys biasWrapper(eBrem) - 4 0.117 0.121 8.39 96 0.455 1.45 1.01e+03 test.phys eIoni - 5 0.126 0.149 10 95.1 0.957 1.61 1.01e+03 World Transportation - 6 -94.3 -130 1e+04 95.1 3.66e-22 9.99e+03 1.1e+04 OutOfWorld Transportation + 3 0.104 0.0819 6.94 97.4 2.32 6.23 1.01e+03 test.phys biasWrapper(eBrem) + 4 0.117 0.123 8.45 96 0.474 1.51 1.01e+03 test.phys eIoni + 5 0.125 0.15 10 95.1 0.937 1.55 1.01e+03 World Transportation + 6 -89.5 -124 1e+04 95.1 3.66e-22 9.99e+03 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.117 0.121 8.39 0.877 0 0 0 test.phys initStep - 1 -0.429 0.582 8.84 0.301 0.576 1 1 test.phys msc - 2 -0.423 0.6 8.98 0 0.301 0.405 1.41 test.phys eIoni + 0 0.117 0.123 8.45 0.883 0 0 0 test.phys initStep + 1 0.149 0.643 8.91 0 0.883 1.5 1.5 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.104 0.0818 6.94 0.00858 0 0 0 test.phys initStep - 1 0.109 0.0857 7.14 0 0.00155 0.199 0.199 test.phys phot + 0 0.104 0.0819 6.94 0.0086 0 0 0 test.phys initStep + 1 0.104 0.082 6.94 0 0.00155 0.00484 0.00484 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.109 0.0857 7.14 0.00703 0 0 0 test.phys initStep - 1 0.109 0.0859 7.14 0 0.00703 0.000732 0.000732 test.phys eIoni + 0 0.104 0.082 6.94 0.00705 0 0 0 test.phys initStep + 1 0.104 0.0821 6.94 0 0.00705 0.000734 0.000734 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 @@ -951,8 +988,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation 2 -0.158 0.139 7.26 82.6 2.81 7.26 1.01e+03 test.phys biasWrapper(eBrem) - 3 -0.152 0.181 10 81.4 1.14 2.75 1.01e+03 World Transportation - 4 552 -149 1e+04 81.4 3.62e-22 1e+04 1.1e+04 OutOfWorld Transportation + 3 -0.152 0.181 10 81.4 1.14 2.74 1.01e+03 World Transportation + 4 552 -148 1e+04 81.4 3.62e-22 1e+04 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 @@ -960,7 +997,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 -0.158 0.139 7.26 14.6 0 0 0 test.phys initStep - 1 -0.0934 0.184 10 14.6 0 2.75 2.75 World Transportation + 1 -0.0935 0.184 10 14.6 0 2.74 2.74 World Transportation 2 236 167 1e+04 14.6 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -980,28 +1017,28 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 0.0816 -0.12 5.66 96.7 2.2 5.66 1.01e+03 test.phys eIoni - 3 0.0432 -0.131 8.23 95.8 0.892 2.57 1.01e+03 test.phys biasWrapper(eBrem) - 4 0.0183 -0.111 10 95.1 0.667 1.77 1.01e+03 World Transportation - 5 -376 -91 1e+04 95.1 3.66e-22 1e+04 1.1e+04 OutOfWorld Transportation + 2 0.0825 -0.121 5.7 96.7 2.21 5.7 1.01e+03 test.phys eIoni + 3 0.0448 -0.133 8.23 95.8 0.878 2.53 1.01e+03 test.phys biasWrapper(eBrem) + 4 0.0202 -0.113 10 95.1 0.667 1.77 1.01e+03 World Transportation + 5 -373 -96 1e+04 95.1 3.66e-22 1e+04 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0432 -0.131 8.23 0.0259 0 0 0 test.phys initStep - 1 0.0201 -0.111 10 0.0259 0 1.77 1.77 World Transportation - 2 -130 114 1e+04 0.0259 0 9.99e+03 9.99e+03 OutOfWorld Transportation + 0 0.0448 -0.133 8.23 0.0259 0 0 0 test.phys initStep + 1 0.0219 -0.113 10 0.0259 0 1.77 1.77 World Transportation + 2 -129 112 1e+04 0.0259 0 9.99e+03 9.99e+03 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0816 -0.12 5.66 1.09 0 0 0 test.phys initStep - 1 0.124 0.5 6.31 0.443 0.645 1.71 1.71 test.phys eIoni - 2 0.341 0.472 6.46 0 0.443 0.71 2.42 test.phys eIoni + 0 0.0825 -0.121 5.7 1.1 0 0 0 test.phys initStep + 1 0.126 0.503 6.36 0.449 0.646 1.72 1.72 test.phys eIoni + 2 0.347 0.474 6.51 0 0.449 0.725 2.44 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1011,9 +1048,9 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation 2 -0.00439 0.00237 0.599 99.6 0.173 0.599 1e+03 test.phys biasWrapper(eBrem) - 3 -0.144 0.089 6.66 95.6 3.22 6.06 1.01e+03 test.phys biasWrapper(eBrem) + 3 -0.144 0.0891 6.66 95.6 3.23 6.06 1.01e+03 test.phys biasWrapper(eBrem) 4 -0.224 0.0946 8.15 90.9 0.559 1.49 1.01e+03 test.phys biasWrapper(eBrem) - 5 -0.312 0.105 10 90.3 0.613 1.85 1.01e+03 World Transportation + 5 -0.312 0.105 10 90.3 0.612 1.85 1.01e+03 World Transportation 6 -548 -17.7 1e+04 90.3 3.65e-22 1e+04 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -1030,9 +1067,9 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.144 0.089 6.66 0.799 0 0 0 test.phys initStep - 1 -0.354 0.143 10 0.799 0 3.35 3.35 World Transportation - 2 -626 160 1e+04 0.799 0 1e+04 1e+04 OutOfWorld Transportation + 0 -0.144 0.0891 6.66 0.8 0 0 0 test.phys initStep + 1 -0.354 0.143 10 0.8 0 3.35 3.35 World Transportation + 2 -626 160 1e+04 0.8 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 @@ -1051,8 +1088,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation 2 0.015 0.101 4.47 98.4 1.59 4.48 1e+03 test.phys biasWrapper(eBrem) - 3 0.0776 0.123 6.7 97.1 1.06 2.23 1.01e+03 test.phys biasWrapper(eBrem) - 4 0.102 0.152 7.53 88.5 0.356 0.832 1.01e+03 test.phys biasWrapper(eBrem) + 3 0.0777 0.123 6.7 97.1 1.06 2.23 1.01e+03 test.phys biasWrapper(eBrem) + 4 0.102 0.152 7.53 88.5 0.357 0.832 1.01e+03 test.phys biasWrapper(eBrem) 5 0.117 0.163 7.85 88.1 0.169 0.318 1.01e+03 test.phys biasWrapper(eBrem) 6 0.217 0.231 10 87.2 0.936 2.16 1.01e+03 World Transportation 7 897 -370 1e+04 87.2 3.65e-22 1e+04 1.1e+04 OutOfWorld Transportation @@ -1063,7 +1100,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0.117 0.163 7.85 0.202 0 0 0 test.phys initStep - 1 0.145 0.191 10 0.202 0 2.15 2.15 World Transportation + 1 0.146 0.191 10 0.202 0 2.15 2.15 World Transportation 2 134 130 1e+04 0.202 0 9.99e+03 9.99e+03 OutOfWorld Transportation ********************************************************************************************************* @@ -1080,8 +1117,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0776 0.123 6.7 0.245 0 0 0 test.phys initStep - 1 0.221 0.222 10 0.245 0 3.31 3.31 World Transportation + 0 0.0777 0.123 6.7 0.245 0 0 0 test.phys initStep + 1 0.221 0.222 10 0.245 0 3.3 3.3 World Transportation 2 435 300 1e+04 0.245 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -1089,16 +1126,16 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.015 0.101 4.47 0.0485 0 0 0 test.phys initStep - 1 0.0743 0.139 9.83 0 0.00155 5.36 5.36 test.phys phot + 0 0.015 0.101 4.47 0.0486 0 0 0 test.phys initStep + 1 0.0745 0.139 9.85 0 0.00155 5.38 5.38 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0743 0.139 9.83 0.047 0 0 0 test.phys initStep - 1 0.0695 0.134 9.83 0 0.047 0.0191 0.0191 test.phys eIoni + 0 0.0745 0.139 9.85 0.047 0 0 0 test.phys initStep + 1 0.0697 0.135 9.85 0 0.047 0.0192 0.0192 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1122,7 +1159,10 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Run terminated. Run Summary Number of events processed : 10 - User=0.000000s Real=0.003308s Sys=0.010000s + User=0.010000s Real=0.002431s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Region -- -- appears in world volume This region is in the mass world. @@ -1149,7 +1189,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_Al Range cuts : gamma 699.9999999999999 um e- 699.9999999999999 um e+ 699.9999999999999 um proton 699.9999999999999 um - Energy thresholds : gamma 5.840692980827837 keV e- 457.178984305202 keV e+ 442.122188991513 keV proton 69.99999999999999 keV + Energy thresholds : gamma 5.855642656998619 keV e- 460.3952044723037 keV e+ 442.2011618379343 keV proton 69.99999999999999 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -1166,18 +1206,18 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation 2 -0.0829 -0.000792 3.9 98.3 1.65 3.9 1e+03 test.phys biasWrapper(eBrem) - 3 -0.0724 -0.165 7.51 92.1 1.27 3.61 1.01e+03 test.phys biasWrapper(eBrem) - 4 -0.0536 -0.28 10 91.2 0.915 2.5 1.01e+03 World Transportation - 5 336 -602 1e+04 91.2 3.65e-22 1e+04 1.1e+04 OutOfWorld Transportation + 3 -0.0724 -0.166 7.51 92.1 1.27 3.61 1.01e+03 test.phys biasWrapper(eBrem) + 4 -0.0537 -0.28 10 91.2 0.915 2.5 1.01e+03 World Transportation + 5 335 -602 1e+04 91.2 3.65e-22 1e+04 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0724 -0.165 7.51 4.93 0 0 0 test.phys initStep - 1 -0.00933 -0.263 10 4.93 0 2.5 2.5 World Transportation - 2 253 -389 1e+04 4.93 0 1e+04 1e+04 OutOfWorld Transportation + 0 -0.0724 -0.166 7.51 4.94 0 0 0 test.phys initStep + 1 -0.00938 -0.263 10 4.94 0 2.5 2.5 World Transportation + 2 253 -389 1e+04 4.94 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 @@ -1185,15 +1225,15 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 -0.0829 -0.000792 3.9 0.1 0 0 0 test.phys initStep - 1 -0.0985 -0.067 6.02 0 0.00155 2.13 2.13 test.phys phot + 1 -0.0986 -0.0672 6.03 0 0.00155 2.13 2.13 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 13, Parent ID = 11 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0985 -0.067 6.02 0.0985 0 0 0 test.phys initStep - 1 -0.105 -0.0865 6.03 0 0.0985 0.0678 0.0678 test.phys eIoni + 0 -0.0986 -0.0672 6.03 0.0986 0 0 0 test.phys initStep + 1 -0.105 -0.0867 6.04 0 0.0986 0.0679 0.0679 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 @@ -1209,9 +1249,9 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0829 -0.000792 3.9 0.168 0 0 0 test.phys initStep - 1 -0.0903 -0.0845 5.56 0.161 0 1.66 1.66 test.phys compt - 2 2.36 -1.09 10 0.161 0 5.17 6.83 World Transportation + 0 -0.0829 -0.000792 3.9 0.169 0 0 0 test.phys initStep + 1 -0.0904 -0.0845 5.56 0.161 0 1.67 1.67 test.phys compt + 2 2.35 -1.09 10 0.161 0 5.16 6.83 World Transportation 3 5.51e+03 -2.27e+03 1e+04 0.161 0 1.16e+04 1.16e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -1219,8 +1259,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0903 -0.0845 5.56 0.00714 0 0 0 test.phys initStep - 1 -0.0905 -0.0844 5.56 0 0.00714 0.000751 0.000751 test.phys eIoni + 0 -0.0904 -0.0845 5.56 0.00715 0 0 0 test.phys initStep + 1 -0.0906 -0.0844 5.56 0 0.00715 0.000753 0.000753 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 @@ -1229,7 +1269,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 -0.0829 -0.000792 3.9 30.7 0 0 0 test.phys initStep 1 -0.118 -0.342 10 30.7 0 6.11 6.11 World Transportation - 2 -58.1 -558 1e+04 30.7 0 1e+04 1e+04 OutOfWorld Transportation + 2 -58.1 -559 1e+04 30.7 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 @@ -1263,16 +1303,16 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0829 -0.000792 3.9 0.00666 0 0 0 test.phys initStep - 1 -0.0833 -0.001 3.92 0 0.00155 0.0189 0.0189 test.phys phot + 0 -0.0829 -0.000792 3.9 0.00667 0 0 0 test.phys initStep + 1 -0.0833 -0.001 3.92 0 0.00155 0.019 0.019 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 15, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0833 -0.001 3.92 0.00511 0 0 0 test.phys initStep - 1 -0.0831 -0.00102 3.92 0 0.00511 0.000432 0.000432 test.phys eIoni + 0 -0.0833 -0.001 3.92 0.00512 0 0 0 test.phys initStep + 1 -0.0832 -0.00102 3.92 0 0.00512 0.000434 0.000434 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 @@ -1280,24 +1320,24 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 -0.0829 -0.000792 3.9 0.0186 0 0 0 test.phys initStep - 1 -0.0874 -0.00904 4.21 0 0.00155 0.308 0.308 test.phys phot + 1 -0.0875 -0.00907 4.21 0 0.00155 0.309 0.309 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 16, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0874 -0.00904 4.21 0.0171 0 0 0 test.phys initStep - 1 -0.0879 -0.00929 4.21 0 0.0171 0.00331 0.00331 test.phys eIoni + 0 -0.0875 -0.00907 4.21 0.0171 0 0 0 test.phys initStep + 1 -0.0879 -0.00933 4.21 0 0.0171 0.00332 0.00332 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0829 -0.000792 3.9 0.0718 0 0 0 test.phys initStep - 1 -0.138 -0.216 10 0.0718 0 6.1 6.1 World Transportation - 2 -90 -352 1e+04 0.0718 0 1e+04 1e+04 OutOfWorld Transportation + 0 -0.0829 -0.000792 3.9 0.0719 0 0 0 test.phys initStep + 1 -0.138 -0.216 10 0.0719 0 6.1 6.1 World Transportation + 2 -90 -352 1e+04 0.0719 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1316,8 +1356,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 -0.00675 -0.00322 0.784 99.4 0.25 0.784 1e+03 test.phys biasWrapper(eBrem) - 3 -0.0642 -0.00721 10 96.1 3.26 9.23 1.01e+03 World Transportation + 2 -0.00675 -0.00322 0.785 99.4 0.25 0.785 1e+03 test.phys biasWrapper(eBrem) + 3 -0.0642 -0.00722 10 96.1 3.26 9.23 1.01e+03 World Transportation 4 -166 -428 1e+04 96.1 3.66e-22 1e+04 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -1325,8 +1365,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00675 -0.00322 0.784 44.7 0 0 0 test.phys initStep - 1 -0.00458 -0.0411 10 44.7 0 9.22 9.22 World Transportation + 0 -0.00675 -0.00322 0.785 44.7 0 0 0 test.phys initStep + 1 -0.00459 -0.0411 10 44.7 0 9.22 9.22 World Transportation 2 2.34 -41.1 1e+04 44.7 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -1334,73 +1374,73 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00675 -0.00322 0.784 0.0351 0 0 0 test.phys initStep - 1 0.0442 0.0158 2.35 0.0322 0 1.57 1.57 test.phys compt - 2 -0.233 -0.586 2.17 0 0.00155 0.687 2.26 test.phys phot + 0 -0.00675 -0.00322 0.785 0.0351 0 0 0 test.phys initStep + 1 0.0442 0.0158 2.35 0.0323 0 1.57 1.57 test.phys compt + 2 -0.236 -0.592 2.17 0 0.00155 0.693 2.26 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 13, Parent ID = 10 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.233 -0.586 2.17 0.0307 0 0 0 test.phys initStep - 1 -0.233 -0.584 2.17 0 0.0307 0.00915 0.00915 test.phys eIoni + 0 -0.236 -0.592 2.17 0.0307 0 0 0 test.phys initStep + 1 -0.236 -0.589 2.17 0 0.0307 0.00916 0.00916 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 12, Parent ID = 10 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0442 0.0158 2.35 0.00284 0 0 0 test.phys initStep - 1 0.0442 0.0158 2.35 0 0.00284 0.00017 0.00017 test.phys eIoni + 0 0.0442 0.0158 2.35 0.00285 0 0 0 test.phys initStep + 1 0.0442 0.0158 2.35 0 0.00285 0.00017 0.00017 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00675 -0.00322 0.784 5.66 0 0 0 test.phys initStep - 1 -0.0563 -0.00696 10 5.66 0 9.22 9.22 World Transportation - 2 -53.7 -4.06 1e+04 5.66 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.00675 -0.00322 0.785 5.67 0 0 0 test.phys initStep + 1 -0.0563 -0.00696 10 5.67 0 9.22 9.22 World Transportation + 2 -53.7 -4.07 1e+04 5.67 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00675 -0.00322 0.784 0.00697 0 0 0 test.phys initStep - 1 -0.00675 -0.00322 0.784 0 0.00155 2.57e-05 2.57e-05 test.phys phot + 0 -0.00675 -0.00322 0.785 0.00699 0 0 0 test.phys initStep + 1 -0.00675 -0.00322 0.785 0 0.00155 2.58e-05 2.58e-05 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 14, Parent ID = 8 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00675 -0.00322 0.784 0.00542 0 0 0 test.phys initStep - 1 -0.00676 -0.00336 0.784 0 0.00542 0.000476 0.000476 test.phys eIoni + 0 -0.00675 -0.00322 0.785 0.00544 0 0 0 test.phys initStep + 1 -0.00677 -0.00336 0.785 0 0.00544 0.000478 0.000478 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00675 -0.00322 0.784 0.0072 0 0 0 test.phys initStep - 1 -0.00688 -0.00316 0.795 0 0.00155 0.0102 0.0102 test.phys phot + 0 -0.00675 -0.00322 0.785 0.00722 0 0 0 test.phys initStep + 1 -0.00688 -0.00316 0.795 0 0.00155 0.0103 0.0103 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 15, Parent ID = 7 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00688 -0.00316 0.795 0.00565 0 0 0 test.phys initStep - 1 -0.00695 -0.00323 0.795 0 0.00565 0.000509 0.000509 test.phys eIoni + 0 -0.00688 -0.00316 0.795 0.00567 0 0 0 test.phys initStep + 1 -0.00695 -0.00323 0.795 0 0.00567 0.000512 0.000512 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00675 -0.00322 0.784 13.6 0 0 0 test.phys initStep + 0 -0.00675 -0.00322 0.785 13.6 0 0 0 test.phys initStep 1 -0.0758 0.0276 10 13.6 0 9.22 9.22 World Transportation 2 -74.9 33.5 1e+04 13.6 0 9.99e+03 1e+04 OutOfWorld Transportation @@ -1409,7 +1449,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00675 -0.00322 0.784 41.8 0 0 0 test.phys initStep + 0 -0.00675 -0.00322 0.785 41.8 0 0 0 test.phys initStep 1 -0.0215 -0.0054 10 41.8 0 9.22 9.22 World Transportation 2 -16 -2.37 1e+04 41.8 0 9.99e+03 1e+04 OutOfWorld Transportation @@ -1418,7 +1458,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00675 -0.00322 0.784 0.138 0 0 0 test.phys initStep + 0 -0.00675 -0.00322 0.785 0.138 0 0 0 test.phys initStep 1 -0.0452 -0.0708 10 0.138 0 9.22 9.22 World Transportation 2 -41.7 -73.3 1e+04 0.138 0 9.99e+03 1e+04 OutOfWorld Transportation @@ -1427,16 +1467,16 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00675 -0.00322 0.784 0.296 0 0 0 test.phys initStep + 0 -0.00675 -0.00322 0.785 0.296 0 0 0 test.phys initStep 1 -0.014 0.0727 10 0.296 0 9.22 9.22 World Transportation - 2 -7.83 82.4 1e+04 0.296 0 9.99e+03 1e+04 OutOfWorld Transportation + 2 -7.84 82.4 1e+04 0.296 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00675 -0.00322 0.784 0.351 0 0 0 test.phys initStep + 0 -0.00675 -0.00322 0.785 0.351 0 0 0 test.phys initStep 1 0.149 -0.0386 10 0.351 0 9.22 9.22 World Transportation 2 169 -38.4 1e+04 0.351 0 9.99e+03 1e+04 OutOfWorld Transportation @@ -1466,9 +1506,9 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0376 0.0183 2.47 0.0799 0 0 0 test.phys initStep - 1 0.186 0.227 10 0.0799 0 7.53 7.53 World Transportation - 2 197 277 1e+04 0.0799 0 1e+04 1e+04 OutOfWorld Transportation + 0 0.0376 0.0183 2.47 0.08 0 0 0 test.phys initStep + 1 0.186 0.227 10 0.08 0 7.53 7.53 World Transportation + 2 197 277 1e+04 0.08 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 @@ -1476,15 +1516,15 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0.0376 0.0183 2.47 0.0363 0 0 0 test.phys initStep - 1 0.222 0.113 8.98 0 0.00155 6.51 6.51 test.phys phot + 1 0.223 0.114 9 0 0.00155 6.54 6.54 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 12, Parent ID = 10 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.222 0.113 8.98 0.0348 0 0 0 test.phys initStep - 1 0.224 0.116 8.98 0 0.0348 0.0113 0.0113 test.phys eIoni + 0 0.223 0.114 9 0.0348 0 0 0 test.phys initStep + 1 0.225 0.117 9.01 0 0.0348 0.0114 0.0114 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 @@ -1500,16 +1540,16 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0376 0.0183 2.47 0.00978 0 0 0 test.phys initStep - 1 0.0351 0.0239 2.77 0 0.00155 0.297 0.297 test.phys phot + 0 0.0376 0.0183 2.47 0.0098 0 0 0 test.phys initStep + 1 0.0351 0.0239 2.77 0 0.00155 0.298 0.298 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 13, Parent ID = 8 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0351 0.0239 2.77 0.00823 0 0 0 test.phys initStep - 1 0.0352 0.0236 2.77 0 0.00823 0.000953 0.000953 test.phys eIoni + 0 0.0351 0.0239 2.77 0.00825 0 0 0 test.phys initStep + 1 0.0352 0.0237 2.77 0 0.00825 0.000956 0.000956 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 @@ -1526,7 +1566,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0.0376 0.0183 2.47 0.0103 0 0 0 test.phys initStep - 1 0.0383 0.0191 2.52 0 0.000119 0.0488 0.0488 test.phys phot + 1 0.0383 0.0191 2.52 0 0.000119 0.049 0.049 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 14, Parent ID = 6 @@ -1569,7 +1609,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0.0376 0.0183 2.47 4.41 0 0 0 test.phys initStep - 1 0.068 0.221 10 4.41 0 7.53 7.53 World Transportation + 1 0.0681 0.221 10 4.41 0 7.53 7.53 World Transportation 2 40.4 269 1e+04 4.41 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* @@ -1579,95 +1619,95 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 -0.00735 0.017 1.44 94.2 0.535 1.44 1e+03 test.phys eIoni - 3 0.0131 0.0352 2.77 91.5 0.675 1.33 1e+03 test.phys biasWrapper(eBrem) - 4 0.24 0.212 10 88.7 2.75 7.24 1.01e+03 World Transportation - 5 548 380 1e+04 88.7 3.64e-22 1e+04 1.1e+04 OutOfWorld Transportation + 2 -0.00742 0.0172 1.45 94.1 0.539 1.45 1e+03 test.phys eIoni + 3 0.013 0.0354 2.77 91.4 0.672 1.32 1e+03 test.phys biasWrapper(eBrem) + 4 0.239 0.213 10 88.7 2.75 7.24 1.01e+03 World Transportation + 5 548 382 1e+04 88.7 3.64e-22 1e+04 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0131 0.0352 2.77 0.0145 0 0 0 test.phys initStep - 1 0.0158 0.0376 2.86 0 0.00155 0.0923 0.0923 test.phys phot + 0 0.013 0.0354 2.77 0.0145 0 0 0 test.phys initStep + 1 0.0157 0.0378 2.86 0 0.00155 0.0926 0.0926 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 13, Parent ID = 12 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0158 0.0376 2.86 0.0129 0 0 0 test.phys initStep - 1 0.0156 0.0371 2.86 0 0.0129 0.00205 0.00205 test.phys eIoni + 0 0.0157 0.0378 2.86 0.0129 0 0 0 test.phys initStep + 1 0.0155 0.0373 2.86 0 0.0129 0.00205 0.00205 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0131 0.0352 2.77 3.05 0 0 0 test.phys initStep - 1 0.265 0.234 10 3.05 0 7.24 7.24 World Transportation - 2 348 275 1e+04 3.05 0 1e+04 1e+04 OutOfWorld Transportation + 0 0.013 0.0354 2.77 3.06 0 0 0 test.phys initStep + 1 0.264 0.235 10 3.06 0 7.24 7.24 World Transportation + 2 348 276 1e+04 3.06 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0131 0.0352 2.77 0.0136 0 0 0 test.phys initStep - 1 0.0224 0.0461 3.09 0 0.00155 0.325 0.325 test.phys phot + 0 0.013 0.0354 2.77 0.0136 0 0 0 test.phys initStep + 1 0.0223 0.0464 3.1 0 0.00155 0.326 0.326 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 14, Parent ID = 10 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0224 0.0461 3.09 0.0121 0 0 0 test.phys initStep - 1 0.0225 0.0467 3.09 0 0.0121 0.00182 0.00182 test.phys eIoni + 0 0.0223 0.0464 3.1 0.0121 0 0 0 test.phys initStep + 1 0.0224 0.047 3.1 0 0.0121 0.00183 0.00183 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0131 0.0352 2.77 0.847 0 0 0 test.phys initStep - 1 0.253 0.256 10 0.847 0 7.24 7.24 World Transportation - 2 332 305 1e+04 0.847 0 1e+04 1e+04 OutOfWorld Transportation + 0 0.013 0.0354 2.77 0.848 0 0 0 test.phys initStep + 1 0.253 0.257 10 0.848 0 7.24 7.24 World Transportation + 2 332 307 1e+04 0.848 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0131 0.0352 2.77 3.97 0 0 0 test.phys initStep - 1 0.267 0.229 10 3.97 0 7.24 7.24 World Transportation - 2 351 268 1e+04 3.97 0 1e+04 1e+04 OutOfWorld Transportation + 0 0.013 0.0354 2.77 3.97 0 0 0 test.phys initStep + 1 0.267 0.23 10 3.97 0 7.24 7.24 World Transportation + 2 351 269 1e+04 3.97 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0131 0.0352 2.77 3.08 0 0 0 test.phys initStep - 1 0.432 -0.14 10 3.08 0 7.25 7.25 World Transportation - 2 579 -242 1e+04 3.08 0 1e+04 1e+04 OutOfWorld Transportation + 0 0.013 0.0354 2.77 3.08 0 0 0 test.phys initStep + 1 0.433 -0.139 10 3.08 0 7.25 7.25 World Transportation + 2 580 -241 1e+04 3.08 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0131 0.0352 2.77 0.278 0 0 0 test.phys initStep - 1 0.111 0.112 5.57 0.235 0 2.8 2.8 test.phys compt - 2 3.26 -3.8 10 0.235 0 6.7 9.5 World Transportation - 3 7.1e+03 -8.83e+03 1e+04 0.235 0 1.51e+04 1.51e+04 OutOfWorld Transportation + 0 0.013 0.0354 2.77 0.278 0 0 0 test.phys initStep + 1 0.111 0.113 5.57 0.235 0 2.8 2.8 test.phys compt + 2 3.27 -3.79 10 0.235 0 6.7 9.5 World Transportation + 3 7.12e+03 -8.81e+03 1e+04 0.235 0 1.51e+04 1.51e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 15, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.111 0.112 5.57 0.0433 0 0 0 test.phys initStep + 0 0.111 0.113 5.57 0.0433 0 0 0 test.phys initStep 1 0.108 0.116 5.57 0 0.0433 0.0166 0.0166 test.phys eIoni ********************************************************************************************************* @@ -1675,70 +1715,63 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0131 0.0352 2.77 0.0158 0 0 0 test.phys initStep - 1 0.0169 0.0384 2.89 0 0.00155 0.122 0.122 test.phys phot + 0 0.013 0.0354 2.77 0.0158 0 0 0 test.phys initStep + 1 0.0168 0.0386 2.89 0 0.00155 0.122 0.122 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 16, Parent ID = 5 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0169 0.0384 2.89 0.0143 0 0 0 test.phys initStep - 1 0.0174 0.0385 2.89 0 0.0143 0.00243 0.00243 test.phys eIoni + 0 0.0168 0.0386 2.89 0.0143 0 0 0 test.phys initStep + 1 0.0173 0.0387 2.89 0 0.0143 0.00244 0.00244 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0131 0.0352 2.77 0.0532 0 0 0 test.phys initStep - 1 0.157 0.164 7.66 0 0.00155 4.89 4.89 test.phys phot + 0 0.013 0.0354 2.77 0.0532 0 0 0 test.phys initStep + 1 0.157 0.165 7.67 0 0.00155 4.91 4.91 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 17, Parent ID = 4 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.157 0.164 7.66 0.0516 0 0 0 test.phys initStep - 1 0.149 0.163 7.66 0 0.0516 0.0225 0.0225 test.phys eIoni + 0 0.157 0.165 7.67 0.0517 0 0 0 test.phys initStep + 1 0.149 0.164 7.67 0 0.0517 0.0225 0.0225 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0131 0.0352 2.77 2.04 0 0 0 test.phys initStep - 1 0.268 0.232 10 2.04 0 7.24 7.24 World Transportation - 2 353 272 1e+04 2.04 0 1e+04 1e+04 OutOfWorld Transportation + 0 0.013 0.0354 2.77 2.04 0 0 0 test.phys initStep + 1 0.268 0.233 10 2.04 0 7.24 7.24 World Transportation + 2 353 273 1e+04 2.04 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00735 0.017 1.44 5.29 0 0 0 test.phys initStep - 1 -0.878 -2.29 4.58 3.82 1.47 4.21 4.21 test.phys eIoni - 2 -2.24 -3.37 7.25 2.6 1.22 3.42 7.63 test.phys eIoni - 3 -3.51 -3.14 9.27 1.65 0.951 2.73 10.4 test.phys eIoni - 4 -3.68 -3.18 9.52 1.53 0.108 0.311 10.7 test.phys biasWrapper(eBrem) - 5 -4.02 -3 10 1.3 0.235 0.709 11.4 World Transportation - 6 -5.69e+03 8.3e+03 1e+04 1.3 3.78e-22 1.42e+04 1.42e+04 OutOfWorld Transportation + 0 -0.00742 0.0172 1.45 5.33 0 0 0 test.phys initStep + 1 -0.881 -2.29 4.61 3.85 1.48 4.23 4.23 test.phys eIoni + 2 -2.25 -3.37 7.29 2.62 1.23 3.43 7.66 test.phys eIoni + 3 -3.51 -3.2 9.3 1.67 0.955 2.74 10.4 test.phys eIoni + 4 -3.64 -3.24 9.5 1.57 0.0649 0.236 10.6 test.phys biasWrapper(eBrem) + 5 -4 -3.12 10 1.24 0.337 0.722 11.4 World Transportation + 6 310 6.59e+03 1e+04 1.24 3.2e-22 1.2e+04 1.2e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 18, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.68 -3.18 9.52 0.00992 0 0 0 test.phys initStep - 1 -3.68 -3.18 9.52 0 0.00155 0.00097 0.00097 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 18 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.68 -3.18 9.52 0.00837 0 0 0 test.phys initStep - 1 -3.68 -3.18 9.52 0 0.00837 0.00098 0.00098 test.phys eIoni + 0 -3.64 -3.24 9.5 0.0316 0 0 0 test.phys initStep + 1 -3.76 -3.1 10 0.0316 0 0.538 0.538 World Transportation + 2 -2.48e+03 2.75e+03 1e+04 0.0316 0 1.07e+04 1.07e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1747,146 +1780,139 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 0.00024 -0.0237 1.69 98.7 0.853 1.69 1e+03 test.phys biasWrapper(eBrem) - 3 0.00841 -0.0228 2.8 97.8 0.343 1.11 1e+03 test.phys eIoni - 4 0.00621 0.00561 10 95 2.8 7.2 1.01e+03 World Transportation - 5 -160 148 1e+04 95 3.66e-22 9.99e+03 1.1e+04 OutOfWorld Transportation + 2 0 0 10 95.5 4.52 10 1.01e+03 World Transportation + 3 573 216 1e+04 95.5 3.67e-22 1e+04 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00841 -0.0228 2.8 0.614 0 0 0 test.phys initStep - 1 0.246 -0.258 3.06 0 0.614 1.1 1.1 test.phys eIoni + 0 0 0 -1e+03 100 0 0 0 World initStep + 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation + 2 0.0219 -0.0421 2.69 98.5 1.14 2.69 1e+03 test.phys biasWrapper(eBrem) + 3 0.0976 -0.187 10 95.9 2.63 7.32 1.01e+03 World Transportation + 4 439 -699 1e+04 95.9 3.67e-22 1e+04 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00024 -0.0237 1.69 36.5 0 0 0 test.phys initStep - 1 -0.0207 -0.153 10 36.5 0 8.31 8.31 World Transportation - 2 -25.2 -155 1e+04 36.5 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0219 -0.0421 2.69 0.348 0 0 0 test.phys initStep + 1 0.055 -0.146 10 0.348 0 7.31 7.31 World Transportation + 2 45.3 -143 1e+04 0.348 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00024 -0.0237 1.69 0.324 0 0 0 test.phys initStep - 1 0.0356 -0.13 10 0.324 0 8.31 8.31 World Transportation - 2 42.6 -128 1e+04 0.324 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0219 -0.0421 2.69 1.87 0 0 0 test.phys initStep + 1 -0.0134 -0.204 10 1.87 0 7.31 7.31 World Transportation + 2 -48.2 -221 1e+04 1.87 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00024 -0.0237 1.69 2.84 0 0 0 test.phys initStep - 1 -0.001 -0.121 9.42 2.16 0 7.73 7.73 test.phys compt - 2 -0.166 -0.0099 10 2.16 0 0.614 8.34 World Transportation - 3 -2.84e+03 1.9e+03 1e+04 2.16 0 1.06e+04 1.06e+04 OutOfWorld Transportation + 0 0.0219 -0.0421 2.69 0.0118 0 0 0 test.phys initStep + 1 0.0223 -0.0425 2.71 0 0.00155 0.0237 0.0237 test.phys phot ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 9 +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 9 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.001 -0.121 9.42 0.675 0 0 0 test.phys initStep - 1 0.144 -0.332 9.54 0.572 0.102 0.307 0.307 test.phys msc - 2 0.34 -0.484 9.66 0.476 0.0958 0.311 0.618 test.phys msc - 3 0.452 -0.583 9.68 0.41 0.0663 0.163 0.781 test.phys msc - 4 0.591 -0.602 9.73 0.353 0.0565 0.165 0.946 test.phys msc - 5 0.69 -0.646 9.69 0.307 0.0462 0.127 1.07 test.phys msc - 6 0.731 -0.502 9.64 0.208 0.0997 0.186 1.26 test.phys msc - 7 0.693 -0.436 9.62 0 0.208 0.229 1.49 test.phys eIoni + 0 0.0223 -0.0425 2.71 0.0103 0 0 0 test.phys initStep + 1 0.0225 -0.0423 2.71 0 0.0103 0.00139 0.00139 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00024 -0.0237 1.69 2.3 0 0 0 test.phys initStep - 1 -0.0683 -0.184 10 2.3 0 8.31 8.31 World Transportation - 2 -82.5 -193 1e+04 2.3 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0219 -0.0421 2.69 0.237 0 0 0 test.phys initStep + 1 0.147 -0.222 10 0.237 0 7.32 7.32 World Transportation + 2 171 -247 1e+04 0.237 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00024 -0.0237 1.69 6.4 0 0 0 test.phys initStep - 1 -0.0591 -0.055 10 6.4 0 8.31 8.31 World Transportation - 2 -71.4 -37.7 1e+04 6.4 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0219 -0.0421 2.69 0.0176 0 0 0 test.phys initStep + 1 0.027 -0.0527 3.14 0 0.00155 0.452 0.452 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 7 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.027 -0.0527 3.14 0.0161 0 0 0 test.phys initStep + 1 0.0262 -0.0526 3.14 0 0.0161 0.00298 0.00298 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00024 -0.0237 1.69 0.128 0 0 0 test.phys initStep - 1 0.00693 -0.0401 2.63 0.125 0 0.944 0.944 test.phys compt - 2 0.669 0.456 4.71 0 0.00155 2.23 3.17 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.669 0.456 4.71 0.124 0 0 0 test.phys initStep - 1 0.673 0.489 4.71 0 0.124 0.0991 0.0991 test.phys eIoni + 0 0.0219 -0.0421 2.69 0.00764 0 0 0 test.phys initStep + 1 0.0214 -0.0451 2.76 0 0.00155 0.0721 0.0721 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 14, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00693 -0.0401 2.63 0.00229 0 0 0 test.phys initStep - 1 0.0069 -0.0401 2.63 0 0.00229 0.000122 0.000122 test.phys eIoni + 0 0.0214 -0.0451 2.76 0.00609 0 0 0 test.phys initStep + 1 0.0214 -0.045 2.76 0 0.00609 0.000577 0.000577 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00024 -0.0237 1.69 1.38 0 0 0 test.phys initStep - 1 -0.0197 -0.15 10 1.38 0 8.31 8.31 World Transportation - 2 -24 -152 1e+04 1.38 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0219 -0.0421 2.69 0.0829 0 0 0 test.phys initStep + 1 0.06 -0.178 10 0.0829 0 7.31 7.31 World Transportation + 2 52.2 -186 1e+04 0.0829 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00024 -0.0237 1.69 0.131 0 0 0 test.phys initStep - 1 0.0413 -0.119 10 0.131 0 8.31 8.31 World Transportation - 2 49.5 -114 1e+04 0.131 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0219 -0.0421 2.69 0.532 0 0 0 test.phys initStep + 1 0.0933 -0.124 7.37 0.345 0 4.69 4.69 test.phys compt + 2 3.93 2.84 10 0.345 0 5.52 10.2 World Transportation + 3 1e+04 7.72e+03 6.85e+03 0.345 0 1.44e+04 1.44e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0933 -0.124 7.37 0.188 0 0 0 test.phys initStep + 1 0.0603 -0.151 7.42 0 0.188 0.195 0.195 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00024 -0.0237 1.69 0.0208 0 0 0 test.phys initStep - 1 0.00446 -0.0367 2.61 0 0.00155 0.916 0.916 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00446 -0.0367 2.61 0.0192 0 0 0 test.phys initStep - 1 0.00351 -0.037 2.61 0 0.0192 0.00405 0.00405 test.phys eIoni + 0 0.0219 -0.0421 2.69 42.6 0 0 0 test.phys initStep + 1 0.0712 -0.247 10 42.6 0 7.32 7.32 World Transportation + 2 67.4 -280 1e+04 42.6 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00024 -0.0237 1.69 0.423 0 0 0 test.phys initStep - 1 0.0587 -0.158 10 0.423 0 8.31 8.31 World Transportation - 2 70.4 -162 1e+04 0.423 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0219 -0.0421 2.69 0.339 0 0 0 test.phys initStep + 1 0.107 -0.244 10 0.339 0 7.32 7.32 World Transportation + 2 116 -276 1e+04 0.339 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1895,274 +1921,161 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 0.00373 -0.00642 0.78 98.8 0.428 0.78 1e+03 test.phys eIoni - 3 0.0078 -0.00423 1.11 95.6 0.152 0.326 1e+03 test.phys biasWrapper(eBrem) - 4 0.149 0.0592 10 91.8 3.73 8.9 1.01e+03 World Transportation - 5 139 229 1e+04 91.8 3.65e-22 9.99e+03 1.1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0078 -0.00423 1.11 0.969 0 0 0 test.phys initStep - 1 0.178 0.107 10 0.969 0 8.9 8.9 World Transportation - 2 191 125 1e+04 0.969 0 9.99e+03 1e+04 OutOfWorld Transportation + 2 -0.0133 -0.0361 2.34 83.8 1.02 2.34 1e+03 test.phys biasWrapper(eBrem) + 3 -0.068 -0.142 10 80.8 2.99 7.67 1.01e+03 World Transportation + 4 -536 154 1e+04 80.8 3.61e-22 1e+04 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0078 -0.00423 1.11 3.02 0 0 0 test.phys initStep - 1 0.159 0.157 10 3.02 0 8.9 8.9 World Transportation - 2 170 182 1e+04 3.02 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.0133 -0.0361 2.34 0.0117 0 0 0 test.phys initStep + 1 -0.0135 -0.0367 2.37 0 0.00155 0.0319 0.0319 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 11 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0135 -0.0367 2.37 0.0101 0 0 0 test.phys initStep + 1 -0.0136 -0.0368 2.37 0 0.0101 0.00135 0.00135 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0078 -0.00423 1.11 0.0735 0 0 0 test.phys initStep - 1 0.00976 -0.00369 1.25 0.0693 0 0.145 0.145 test.phys compt - 2 7.16 4.67 7.13 0.0583 0 10.4 10.5 test.phys compt - 3 1.95 10.1 3.22 0 0.00155 8.49 19 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 10 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.95 10.1 3.22 0.0568 0 0 0 test.phys initStep - 1 1.95 10.1 3.22 0 0.0568 0.0265 0.0265 test.phys eIoni + 0 -0.0133 -0.0361 2.34 0.402 0 0 0 test.phys initStep + 1 0.0219 -0.0779 6.66 0.21 0 4.32 4.32 test.phys compt + 2 -9.6 -5.8 4.82 0.209 0 11.3 15.7 test.phys compt + 3 -24.4 -13.1 0 0.209 0 17.2 32.8 World Transportation + 4 -1e+04 -4.95e+03 -3.26e+03 0.209 0 1.16e+04 1.16e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 14, Parent ID = 10 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 7.16 4.67 7.13 0.011 0 0 0 test.phys initStep - 1 7.16 4.67 7.13 0 0.011 0.00156 0.00156 test.phys eIoni + 0 -9.6 -5.8 4.82 0.000881 0 0 0 test.phys initStep + 1 -9.6 -5.8 4.82 0 0.000881 3.13e-05 3.13e-05 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 13, Parent ID = 10 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00976 -0.00369 1.25 0.00421 0 0 0 test.phys initStep - 1 0.00969 -0.00374 1.25 0 0.00421 0.000316 0.000316 test.phys eIoni + 0 0.0219 -0.0779 6.66 0.192 0 0 0 test.phys initStep + 1 0.0484 -0.063 6.72 0 0.192 0.202 0.202 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0078 -0.00423 1.11 0.212 0 0 0 test.phys initStep - 1 0.145 0.0363 10 0.212 0 8.89 8.89 World Transportation - 2 154 45.5 1e+04 0.212 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.0133 -0.0361 2.34 0.14 0 0 0 test.phys initStep + 1 -0.0594 -0.138 10 0.14 0 7.66 7.66 World Transportation + 2 -60.2 -133 1e+04 0.14 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0078 -0.00423 1.11 1.45 0 0 0 test.phys initStep - 1 0.172 0.0667 10 1.45 0 8.9 8.9 World Transportation - 2 184 79.8 1e+04 1.45 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.0133 -0.0361 2.34 0.053 0 0 0 test.phys initStep + 1 -0.0832 -0.244 10 0.053 0 7.66 7.66 World Transportation + 2 -91.3 -271 1e+04 0.053 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0078 -0.00423 1.11 28 0 0 0 test.phys initStep - 1 0.205 0.0672 10 28 0 8.9 8.9 World Transportation - 2 222 80.3 1e+04 28 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.0133 -0.0361 2.34 44.9 0 0 0 test.phys initStep + 1 -0.0454 -0.152 10 44.9 0 7.66 7.66 World Transportation + 2 -42 -151 1e+04 44.9 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0078 -0.00423 1.11 0.0587 0 0 0 test.phys initStep - 1 0.145 0.0605 10 0.0587 0 8.89 8.89 World Transportation - 2 154 72.8 1e+04 0.0587 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.0133 -0.0361 2.34 0.0861 0 0 0 test.phys initStep + 1 -0.101 -0.179 10 0.0861 0 7.66 7.66 World Transportation + 2 -115 -187 1e+04 0.0861 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0078 -0.00423 1.11 3.69 0 0 0 test.phys initStep - 1 0.108 -0.018 10 3.69 0 8.89 8.89 World Transportation - 2 113 -15.5 1e+04 3.69 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.0133 -0.0361 2.34 1.01 0 0 0 test.phys initStep + 1 -0.0568 -0.133 10 1.01 0 7.66 7.66 World Transportation + 2 -56.8 -127 1e+04 1.01 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0078 -0.00423 1.11 0.0529 0 0 0 test.phys initStep - 1 0.00201 0.434 10 0.0529 0 8.9 8.9 World Transportation - 2 -6.5 493 1e+04 0.0529 0 1e+04 1e+04 OutOfWorld Transportation + 0 -0.0133 -0.0361 2.34 2.23 0 0 0 test.phys initStep + 1 -0.0439 0.114 10 2.23 0 7.66 7.66 World Transportation + 2 -39.9 196 1e+04 2.23 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0078 -0.00423 1.11 3.13 0 0 0 test.phys initStep - 1 0.136 0.0658 10 3.13 0 8.89 8.89 World Transportation - 2 144 78.7 1e+04 3.13 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00373 -0.00642 0.78 0.739 0 0 0 test.phys initStep - 1 -0.0287 -0.304 1.02 0.58 0.16 0.425 0.425 test.phys msc - 2 0.323 -0.412 1.3 0.272 0.308 0.552 0.977 test.phys msc - 3 0.393 -0.34 1.23 0 0.272 0.348 1.32 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -1e+03 100 0 0 0 World initStep - 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 0.000235 0.0191 1.46 99.5 0.479 1.46 1e+03 test.phys biasWrapper(eBrem) - 3 -0.0216 0.0413 3.78 92.5 0.819 2.32 1e+03 test.phys biasWrapper(eBrem) - 4 -0.0445 -0.0147 10 90 2.52 6.22 1.01e+03 World Transportation - 5 27.2 -369 1e+04 90 3.64e-22 1e+04 1.1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0216 0.0413 3.78 6.21 0 0 0 test.phys initStep - 1 -0.0461 -0.0123 10 6.21 0 6.22 6.22 World Transportation - 2 -39.5 -86.1 1e+04 6.21 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000235 0.0191 1.46 45.3 0 0 0 test.phys initStep - 1 0.00456 0.239 10 45.3 0 8.54 8.54 World Transportation - 2 5.06 257 1e+04 45.3 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000235 0.0191 1.46 0.576 0 0 0 test.phys initStep - 1 -0.0262 0.206 10 0.576 0 8.54 8.54 World Transportation - 2 -30.9 219 1e+04 0.576 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000235 0.0191 1.46 12.6 0 0 0 test.phys initStep - 1 -0.0281 0.271 10 12.6 0 8.54 8.54 World Transportation - 2 -33.2 296 1e+04 12.6 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000235 0.0191 1.46 4.53 0 0 0 test.phys initStep - 1 -0.0122 0.231 10 4.53 0 8.54 8.54 World Transportation - 2 -14.6 249 1e+04 4.53 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000235 0.0191 1.46 45.4 0 0 0 test.phys initStep - 1 -0.0299 0.341 10 45.4 0 8.54 8.54 World Transportation - 2 -35.3 377 1e+04 45.4 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000235 0.0191 1.46 0.0085 0 0 0 test.phys initStep - 1 -0.000396 0.0214 1.59 0 0.00155 0.125 0.125 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000396 0.0214 1.59 0.00695 0 0 0 test.phys initStep - 1 -0.000523 0.0212 1.59 0 0.00695 0.000718 0.000718 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000235 0.0191 1.46 0.0239 0 0 0 test.phys initStep - 1 0.0317 0.239 10 0.0239 0 8.54 8.54 World Transportation - 2 36.8 258 1e+04 0.0239 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000235 0.0191 1.46 0.00646 0 0 0 test.phys initStep - 1 0.000199 0.0206 1.52 0 0.00155 0.0547 0.0547 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000199 0.0206 1.52 0.00491 0 0 0 test.phys initStep - 1 0.00026 0.0205 1.52 0 0.00491 0.000404 0.000404 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000235 0.0191 1.46 0.0244 0 0 0 test.phys initStep - 1 0.0103 0.0755 3.12 0 0.00155 1.66 1.66 test.phys phot + 0 -0.0133 -0.0361 2.34 8.05 0 0 0 test.phys initStep + 1 -0.0413 -0.09 6.77 0.713 0 4.43 4.43 test.phys compt + 2 7.07 4.44 10 0.713 0 9.03 13.5 World Transportation + 3 1e+04 6.38e+03 4.55e+03 0.713 0 1.27e+04 1.27e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 15, Parent ID = 3 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0103 0.0755 3.12 0.0229 0 0 0 test.phys initStep - 1 0.0106 0.0744 3.12 0 0.0229 0.00548 0.00548 test.phys eIoni + 0 -0.0413 -0.09 6.77 7.34 0 0 0 test.phys initStep + 1 -0.185 -0.265 7.79 7.01 0.316 1.05 1.05 test.phys biasWrapper(eBrem) + 2 -0.241 -0.259 8.52 6.66 0.283 0.741 1.79 test.phys biasWrapper(eBrem) + 3 -0.651 0.334 10 6.12 0.545 1.69 3.48 World Transportation + 4 -1.84e+03 4.4e+03 1e+04 6.12 3.17e-22 1.11e+04 1.11e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 15 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.241 -0.259 8.52 0.0662 0 0 0 test.phys initStep + 1 -0.579 0.337 10 0.0662 0 1.63 1.63 World Transportation + 2 -2.29e+03 4.03e+03 1e+04 0.0662 0 1.1e+04 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 16, Parent ID = 15 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.185 -0.265 7.79 0.0093 0 0 0 test.phys initStep + 1 -0.183 -0.274 7.82 0 0.00155 0.0295 0.0295 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 16 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.183 -0.274 7.82 0.00775 0 0 0 test.phys initStep + 1 -0.183 -0.274 7.82 0 0.00775 0.00086 0.00086 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000235 0.0191 1.46 0.0225 0 0 0 test.phys initStep - 1 -0.0357 0.0482 3.56 0 0.00155 2.1 2.1 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0357 0.0482 3.56 0.021 0 0 0 test.phys initStep - 1 -0.0371 0.0478 3.56 0 0.021 0.00472 0.00472 test.phys eIoni + 0 -0.0133 -0.0361 2.34 15.1 0 0 0 test.phys initStep + 1 0.0609 -0.186 10 15.1 0 7.66 7.66 World Transportation + 2 96.7 -196 1e+04 15.1 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -2171,189 +2084,195 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 -0.00375 0.00281 0.575 75.6 0.251 0.575 1e+03 test.phys biasWrapper(eBrem) - 3 -0.0064 -0.00357 0.886 75.4 0.101 0.312 1e+03 test.phys biasWrapper(eBrem) - 4 -0.0411 -0.0879 3 74.3 0.693 2.11 1e+03 test.phys biasWrapper(eBrem) - 5 -0.0501 -0.475 8.95 71.3 2.97 5.97 1.01e+03 test.phys biasWrapper(eBrem) - 6 -0.0118 -0.487 9.46 67.8 0.28 0.503 1.01e+03 test.phys biasWrapper(eBrem) - 7 0.0293 -0.49 10 67.6 0.181 0.546 1.01e+03 World Transportation - 8 795 -367 1e+04 67.6 3.57e-22 1e+04 1.1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0118 -0.487 9.46 3.21 0 0 0 test.phys initStep - 1 0.0297 -0.488 10 3.21 0 0.545 0.545 World Transportation - 2 763 -17 1e+04 3.21 0 1e+04 1e+04 OutOfWorld Transportation + 2 0.0179 0.00895 1.51 94.6 0.548 1.51 1e+03 test.phys biasWrapper(eBrem) + 3 0.131 0.112 3.09 90.5 0.81 1.59 1e+03 test.phys biasWrapper(eBrem) + 4 0.452 0.286 6.44 48.1 1.77 3.37 1.01e+03 test.phys biasWrapper(eBrem) + 5 0.604 0.405 8.9 43.8 0.869 2.46 1.01e+03 test.phys biasWrapper(eBrem) + 6 0.633 0.433 10 43.4 0.419 1.11 1.01e+03 World Transportation + 7 305 483 1e+04 43.4 3.43e-22 1e+04 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0501 -0.475 8.95 0.0176 0 0 0 test.phys initStep - 1 0.024 -0.511 10 0.0176 0 1.05 1.05 World Transportation - 2 708 -343 1e+04 0.0176 0 1e+04 1e+04 OutOfWorld Transportation + 0 0.604 0.405 8.9 3.41 0 0 0 test.phys initStep + 1 0.633 0.432 10 3.41 0 1.1 1.1 World Transportation + 2 265 247 1e+04 3.41 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0411 -0.0879 3 0.389 0 0 0 test.phys initStep - 1 -0.157 -0.324 10 0.389 0 7.01 7.01 World Transportation - 2 -166 -337 1e+04 0.389 0 1e+04 1e+04 OutOfWorld Transportation + 0 0.452 0.286 6.44 40.6 0 0 0 test.phys initStep + 1 0.809 0.419 10 40.6 0 3.58 3.58 World Transportation + 2 1e+03 373 1e+04 40.6 0 1e+04 1.01e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0064 -0.00357 0.886 0.0654 0 0 0 test.phys initStep - 1 -0.0675 -0.117 7.56 0 0.00155 6.68 6.68 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 12 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0675 -0.117 7.56 0.0638 0 0 0 test.phys initStep - 1 -0.07 -0.124 7.56 0 0.0638 0.0324 0.0324 test.phys eIoni + 0 0.131 0.112 3.09 3.36 0 0 0 test.phys initStep + 1 0.65 0.537 10 3.36 0 6.94 6.94 World Transportation + 2 751 614 1e+04 3.36 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00375 0.00281 0.575 0.00777 0 0 0 test.phys initStep - 1 -0.00365 0.00177 0.64 0 0.00155 0.0657 0.0657 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00365 0.00177 0.64 0.00622 0 0 0 test.phys initStep - 1 -0.00378 0.00168 0.64 0 0.00622 0.000596 0.000596 test.phys eIoni + 0 0.0179 0.00895 1.51 0.792 0 0 0 test.phys initStep + 1 0.614 0.397 10 0.792 0 8.52 8.52 World Transportation + 2 702 457 1e+04 0.792 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00375 0.00281 0.575 0.733 0 0 0 test.phys initStep - 1 0.162 -0.211 10 0.733 0 9.43 9.43 World Transportation - 2 176 -227 1e+04 0.733 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0179 0.00895 1.51 0.012 0 0 0 test.phys initStep + 1 0.0348 0.02 1.76 0 0.00155 0.246 0.246 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 10 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0348 0.02 1.76 0.0104 0 0 0 test.phys initStep + 1 0.0352 0.02 1.76 0 0.0104 0.00142 0.00142 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00375 0.00281 0.575 1.59 0 0 0 test.phys initStep - 1 0.0337 -0.113 10 1.59 0 9.43 9.43 World Transportation - 2 39.8 -123 1e+04 1.59 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0179 0.00895 1.51 4.08 0 0 0 test.phys initStep + 1 0.66 0.612 10 4.08 0 8.54 8.54 World Transportation + 2 757 710 1e+04 4.08 0 1e+04 1.01e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00375 0.00281 0.575 13 0 0 0 test.phys initStep - 1 0.0389 -0.109 10 13 0 9.43 9.43 World Transportation - 2 45.3 -119 1e+04 13 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0179 0.00895 1.51 0.0164 0 0 0 test.phys initStep + 1 0.107 0.0743 2.57 0 0.00155 1.06 1.06 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 8 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.107 0.0743 2.57 0.0149 0 0 0 test.phys initStep + 1 0.107 0.0751 2.57 0 0.0149 0.00261 0.00261 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00375 0.00281 0.575 0.118 0 0 0 test.phys initStep - 1 0.0139 -0.116 5.93 0.107 0 5.35 5.35 test.phys compt - 2 2.71 -4.93 9.71 0.0773 0 6.68 12 test.phys compt - 3 -4.01 -2.11 0.893 0 0.00155 11.4 23.5 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 7 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.01 -2.11 0.893 0.0757 0 0 0 test.phys initStep - 1 -4.01 -2.09 0.887 0 0.0757 0.0435 0.0435 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 7 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 2.71 -4.93 9.71 0.03 0 0 0 test.phys initStep - 1 2.71 -4.93 9.71 0 0.03 0.00881 0.00881 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 7 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0139 -0.116 5.93 0.0103 0 0 0 test.phys initStep - 1 0.0137 -0.116 5.93 0 0.0103 0.00139 0.00139 test.phys eIoni + 0 0.0179 0.00895 1.51 0.118 0 0 0 test.phys initStep + 1 0.201 0.134 4.06 0.118 0 2.56 2.56 test.phys Rayl + 2 1.16 1.23 10 0.118 0 6.12 8.68 World Transportation + 3 1.62e+03 1.85e+03 1e+04 0.118 0 1.03e+04 1.03e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00375 0.00281 0.575 0.0879 0 0 0 test.phys initStep - 1 -0.0592 -0.156 10 0.0879 0 9.43 9.43 World Transportation - 2 -58.9 -168 1e+04 0.0879 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0179 0.00895 1.51 0.434 0 0 0 test.phys initStep + 1 0.255 0.154 4.66 0.274 0 3.16 3.16 test.phys compt + 2 13.6 13.5 9.13 0.242 0 19.4 22.6 test.phys compt + 3 19 20 4.79 0.176 0 9.43 32 test.phys compt + 4 9.85 28.2 0 0.176 0 13.2 45.2 World Transportation + 5 -1e+04 9.08e+03 -5.26e+03 0.176 0 1.45e+04 1.45e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 19 20 4.79 0.0662 0 0 0 test.phys initStep + 1 19 20 4.79 0 0.0662 0.0345 0.0345 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 13.6 13.5 9.13 0.0319 0 0 0 test.phys initStep + 1 13.6 13.5 9.13 0 0.0319 0.00976 0.00976 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 6 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.255 0.154 4.66 0.16 0 0 0 test.phys initStep + 1 0.236 0.134 4.71 0 0.16 0.151 0.151 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00375 0.00281 0.575 25.7 0 0 0 test.phys initStep - 1 0.0511 -0.177 10 25.7 0 9.43 9.43 World Transportation - 2 58.2 -191 1e+04 25.7 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0179 0.00895 1.51 0.049 0 0 0 test.phys initStep + 1 0.243 0.157 4.5 0.049 0 3 3 test.phys Rayl + 2 -1.42 5.59 10 0.049 0 7.9 10.9 World Transportation + 3 -3.02e+03 9.87e+03 1e+04 0.049 0 1.44e+04 1.44e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00375 0.00281 0.575 0.0274 0 0 0 test.phys initStep - 1 -0.0197 -0.0393 2.39 0 0.00155 1.82 1.82 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0197 -0.0393 2.39 0.0258 0 0 0 test.phys initStep - 1 -0.0211 -0.0408 2.39 0 0.0258 0.00678 0.00678 test.phys eIoni + 0 0.0179 0.00895 1.51 17.5 0 0 0 test.phys initStep + 1 0.37 0.539 10 17.5 0 8.51 8.51 World Transportation + 2 415 625 1e+04 17.5 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00375 0.00281 0.575 4.29 0 0 0 test.phys initStep - 1 -0.0131 -0.144 10 4.29 0 9.43 9.43 World Transportation - 2 -9.91 -156 1e+04 4.29 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0179 0.00895 1.51 0.0401 0 0 0 test.phys initStep + 1 0.0599 0.0401 2.09 0.0393 0 0.578 0.578 test.phys compt + 2 0.266 1.3 3.33 0 0.00155 1.78 2.36 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.266 1.3 3.33 0.0378 0 0 0 test.phys initStep + 1 0.266 1.3 3.33 0 0.0378 0.0131 0.0131 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0599 0.0401 2.09 0.000799 0 0 0 test.phys initStep + 1 0.0599 0.04 2.09 0 0.000799 2.75e-05 2.75e-05 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00375 0.00281 0.575 24.2 0 0 0 test.phys initStep - 1 0.0252 -0.137 10 24.2 0 9.43 9.43 World Transportation - 2 30.7 -149 1e+04 24.2 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0179 0.00895 1.51 4.83 0 0 0 test.phys initStep + 1 0.606 0.438 10 4.83 0 8.52 8.52 World Transportation + 2 693 505 1e+04 4.83 0 1e+04 1e+04 OutOfWorld Transportation Run terminated. Run Summary Number of events processed : 10 - User=0.010000s Real=0.006706s Sys=0.000000s + User=0.000000s Real=0.016643s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Region -- -- appears in world volume This region is in the mass world. @@ -2380,7 +2299,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_Al Range cuts : gamma 699.9999999999999 um e- 699.9999999999999 um e+ 699.9999999999999 um proton 699.9999999999999 um - Energy thresholds : gamma 5.840692980827837 keV e- 457.178984305202 keV e+ 442.122188991513 keV proton 69.99999999999999 keV + Energy thresholds : gamma 5.855642656998619 keV e- 460.3952044723037 keV e+ 442.2011618379343 keV proton 69.99999999999999 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -2396,767 +2315,230 @@ BremSplittingOperator : starting run with brem. splitting factor = 10, biasing p Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 -0.112 0.0114 4.77 62.6 1.78 4.77 1e+03 test.phys biasWrapper(eBrem) - 3 -0.136 0.0244 5.78 62.3 0.328 1.02 1.01e+03 test.phys biasWrapper(eBrem) - 4 -0.259 0.104 10 60.7 1.6 4.22 1.01e+03 World Transportation - 5 260 309 1e+04 60.7 3.52e-22 1e+04 1.1e+04 OutOfWorld Transportation + 2 0 0 10 96.4 3.59 10 1.01e+03 World Transportation + 3 748 -9.9 1e+04 96.4 3.67e-22 1e+04 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -1e+03 100 0 0 0 World initStep + 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation + 2 -0.016 0.0202 1.79 98.2 0.596 1.79 1e+03 test.phys biasWrapper(eBrem) + 3 0.0672 0.19 8.32 89.4 2.92 6.54 1.01e+03 test.phys biasWrapper(eBrem) + 4 0.122 0.217 10 88.3 1.14 1.68 1.01e+03 World Transportation + 5 115 224 1e+04 88.3 3.64e-22 9.99e+03 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 21, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.136 0.0244 5.78 0.0125 0 0 0 test.phys initStep - 1 -0.177 0.0366 6.49 0 0.00155 0.706 0.706 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 21 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.177 0.0366 6.49 0.011 0 0 0 test.phys initStep - 1 -0.176 0.0366 6.49 0 0.011 0.00155 0.00155 test.phys eIoni + 0 0.0672 0.19 8.32 0.215 0 0 0 test.phys initStep + 1 0.185 0.239 10 0.215 0 1.68 1.68 World Transportation + 2 699 290 1e+04 0.215 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 20, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.136 0.0244 5.78 0.0396 0 0 0 test.phys initStep - 1 -0.276 0.106 10 0.0396 0 4.22 4.22 World Transportation - 2 -331 192 1e+04 0.0396 0 1e+04 1e+04 OutOfWorld Transportation + 0 0.0672 0.19 8.32 0.123 0 0 0 test.phys initStep + 1 0.127 0.214 10 0.123 0 1.68 1.68 World Transportation + 2 359 138 1e+04 0.123 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 19, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.136 0.0244 5.78 0.127 0 0 0 test.phys initStep - 1 -0.125 0.14 10 0.127 0 4.22 4.22 World Transportation - 2 27.4 275 1e+04 0.127 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0672 0.19 8.32 2.25 0 0 0 test.phys initStep + 1 0.121 0.211 10 2.25 0 1.68 1.68 World Transportation + 2 323 121 1e+04 2.25 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 18, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.136 0.0244 5.78 52.4 0 0 0 test.phys initStep - 1 -0.235 0.11 10 52.4 0 4.22 4.22 World Transportation - 2 -236 203 1e+04 52.4 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0672 0.19 8.32 0.022 0 0 0 test.phys initStep + 1 0.0926 0.201 9.05 0 0.00155 0.731 0.731 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 18 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0926 0.201 9.05 0.0204 0 0 0 test.phys initStep + 1 0.0936 0.201 9.05 0 0.0204 0.00452 0.00452 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.136 0.0244 5.78 0.051 0 0 0 test.phys initStep - 1 -0.191 0.126 10 0.051 0 4.22 4.22 World Transportation - 2 -130 241 1e+04 0.051 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 0.0672 0.19 8.32 1.99 0 0 0 test.phys initStep + 1 0.119 0.226 10 1.99 0 1.68 1.68 World Transportation + 2 311 211 1e+04 1.99 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 16, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.136 0.0244 5.78 1.17 0 0 0 test.phys initStep - 1 -0.256 0.127 10 1.17 0 4.22 4.22 World Transportation - 2 -285 244 1e+04 1.17 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.136 0.0244 5.78 0.0128 0 0 0 test.phys initStep - 1 -0.143 0.025 5.95 0 0.00155 0.169 0.169 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 15 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.143 0.025 5.95 0.0112 0 0 0 test.phys initStep - 1 -0.144 0.025 5.95 0 0.0112 0.00161 0.00161 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.136 0.0244 5.78 0.494 0 0 0 test.phys initStep - 1 -0.306 0.171 10 0.494 0 4.22 4.22 World Transportation - 2 -402 349 1e+04 0.494 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.136 0.0244 5.78 11.2 0 0 0 test.phys initStep - 1 -0.587 -0.0582 10 11.2 0 4.24 4.24 World Transportation - 2 -1.07e+03 -196 1e+04 11.2 0 1e+04 1.01e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.136 0.0244 5.78 0.0168 0 0 0 test.phys initStep - 1 -0.137 0.0255 5.82 0 0.00155 0.0348 0.0348 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 12 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.137 0.0255 5.82 0.0153 0 0 0 test.phys initStep - 1 -0.137 0.0263 5.82 0 0.0153 0.00273 0.00273 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.112 0.0114 4.77 0.374 0 0 0 test.phys initStep - 1 -0.329 0.000502 10 0.374 0 5.24 5.24 World Transportation - 2 -415 -20.7 1e+04 0.374 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.112 0.0114 4.77 0.0193 0 0 0 test.phys initStep - 1 -0.198 0.0168 6.75 0 0.00155 1.98 1.98 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 10 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.198 0.0168 6.75 0.0178 0 0 0 test.phys initStep - 1 -0.198 0.0179 6.75 0 0.0178 0.00355 0.00355 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.112 0.0114 4.77 42.8 0 0 0 test.phys initStep - 1 -0.303 0.0182 10 42.8 0 5.24 5.24 World Transportation - 2 -366 13.1 1e+04 42.8 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.112 0.0114 4.77 0.281 0 0 0 test.phys initStep - 1 -0.302 -0.0201 10 0.281 0 5.24 5.24 World Transportation - 2 -364 -60.1 1e+04 0.281 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.112 0.0114 4.77 4.59 0 0 0 test.phys initStep - 1 -0.344 0.0358 10 4.59 0 5.24 5.24 World Transportation - 2 -444 46.7 1e+04 4.59 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.112 0.0114 4.77 0.0172 0 0 0 test.phys initStep - 1 -0.193 0.0118 7.14 0 0.00155 2.37 2.37 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.193 0.0118 7.14 0.0157 0 0 0 test.phys initStep - 1 -0.194 0.011 7.14 0 0.0157 0.00285 0.00285 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.112 0.0114 4.77 37.7 0 0 0 test.phys initStep - 1 -0.307 0.0149 10 37.7 0 5.24 5.24 World Transportation - 2 -373 6.71 1e+04 37.7 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.112 0.0114 4.77 1.41 0 0 0 test.phys initStep - 1 -0.246 -0.0117 10 1.41 0 5.23 5.23 World Transportation - 2 -257 -44 1e+04 1.41 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.112 0.0114 4.77 0.0175 0 0 0 test.phys initStep - 1 -0.133 0.00855 5.33 0 0.00155 0.558 0.558 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.133 0.00855 5.33 0.0159 0 0 0 test.phys initStep - 1 -0.132 0.008 5.33 0 0.0159 0.00293 0.00293 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.112 0.0114 4.77 35.6 0 0 0 test.phys initStep - 1 -0.323 0.00367 10 35.6 0 5.24 5.24 World Transportation - 2 -403 -14.7 1e+04 35.6 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -1e+03 100 0 0 0 World initStep - 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 0 0 10 96.4 3.62 10 1.01e+03 World Transportation - 3 -693 14.4 1e+04 96.4 3.67e-22 1e+04 1.1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -1e+03 100 0 0 0 World initStep - 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 -0.111 -0.191 7.48 94.5 2.8 7.49 1.01e+03 test.phys eIoni - 3 -0.112 -0.237 10 93.3 1.25 2.52 1.01e+03 World Transportation - 4 47.6 -298 1e+04 93.3 3.65e-22 9.99e+03 1.1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.111 -0.191 7.48 2.66 0 0 0 test.phys initStep - 1 -0.757 -0.867 8.5 2.1 0.556 1.46 1.46 test.phys msc - 2 -1.46 -1.38 8.35 1.82 0.284 0.93 2.39 test.phys msc - 3 -2.11 -2.03 8.37 1.31 0.513 0.977 3.36 test.phys msc - 4 -2.16 -2.91 8.32 1.02 0.289 0.977 4.34 test.phys msc - 5 -2.28 -3.74 8.78 0.469 0.549 1.12 5.46 test.phys msc - 6 -2.04 -3.68 8.93 0 0.469 0.769 6.23 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -1e+03 100 0 0 0 World initStep - 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 6.7e-05 -5.1e-06 0.0339 100 0.0144 0.0339 1e+03 test.phys biasWrapper(eBrem) - 3 0.0284 -0.0912 4.1 97 1.54 4.07 1e+03 test.phys biasWrapper(eBrem) - 4 0.0453 -0.0914 6.93 95.5 0.97 2.83 1.01e+03 test.phys eIoni - 5 0.157 -0.0895 10 94.3 1.23 3.07 1.01e+03 World Transportation - 6 667 163 1e+04 94.3 3.66e-22 1e+04 1.1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0453 -0.0914 6.93 0.513 0 0 0 test.phys initStep - 1 -0.143 0.0886 7.12 0 0.513 0.871 0.871 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 21, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0284 -0.0912 4.1 0.323 0 0 0 test.phys initStep - 1 0.0198 -0.195 7.23 0.246 0 3.13 3.13 test.phys compt - 2 -4.5 -2.06 10 0.246 0 5.62 8.75 World Transportation - 3 -1e+04 -4.13e+03 6.15e+03 0.246 0 1.24e+04 1.24e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 21 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0198 -0.195 7.23 0.0768 0 0 0 test.phys initStep - 1 0.03 -0.192 7.24 0 0.0768 0.0445 0.0445 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 20, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0284 -0.0912 4.1 7.87 0 0 0 test.phys initStep - 1 -0.0386 -0.161 10 7.87 0 5.9 5.9 World Transportation - 2 -113 -118 1e+04 7.87 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 19, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0284 -0.0912 4.1 1.32 0 0 0 test.phys initStep - 1 0.069 -0.205 10 1.32 0 5.9 5.9 World Transportation - 2 68.8 -193 1e+04 1.32 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 18, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0284 -0.0912 4.1 0.371 0 0 0 test.phys initStep - 1 -0.0163 -0.265 10 0.371 0 5.9 5.9 World Transportation - 2 -75.6 -294 1e+04 0.371 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0284 -0.0912 4.1 0.114 0 0 0 test.phys initStep - 1 0.0601 -0.2 10 0.114 0 5.9 5.9 World Transportation - 2 53.8 -184 1e+04 0.114 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 16, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0284 -0.0912 4.1 0.0317 0 0 0 test.phys initStep - 1 0.00716 -0.199 8.59 0 0.00155 4.5 4.5 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 16 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00716 -0.199 8.59 0.0302 0 0 0 test.phys initStep - 1 0.00634 -0.197 8.6 0 0.0302 0.00887 0.00887 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0284 -0.0912 4.1 0.222 0 0 0 test.phys initStep - 1 0.0554 -0.238 10 0.222 0 5.9 5.9 World Transportation - 2 45.9 -249 1e+04 0.222 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0284 -0.0912 4.1 0.0264 0 0 0 test.phys initStep - 1 0.013 -0.229 10 0.0264 0 5.9 5.9 World Transportation - 2 -26.1 -234 1e+04 0.0264 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0284 -0.0912 4.1 24.9 0 0 0 test.phys initStep - 1 0.116 -0.288 10 24.9 0 5.9 5.9 World Transportation - 2 149 -334 1e+04 24.9 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0284 -0.0912 4.1 1.44 0 0 0 test.phys initStep - 1 0.0128 -0.278 10 1.44 0 5.9 5.9 World Transportation - 2 -26.3 -317 1e+04 1.44 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.7e-05 -5.1e-06 0.0339 0.0697 0 0 0 test.phys initStep - 1 0.0165 0.00523 6.13 0 0.00155 6.09 6.09 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0165 0.00523 6.13 0.0682 0 0 0 test.phys initStep - 1 0.00874 -0.00191 6.13 0 0.0682 0.0363 0.0363 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.7e-05 -5.1e-06 0.0339 0.051 0 0 0 test.phys initStep - 1 0.00714 0.0189 9.22 0.0426 0 9.19 9.19 test.phys compt - 2 -2.19 1.58 0 0.0426 0 9.61 18.8 World Transportation - 3 -2.38e+03 1.69e+03 -1e+04 0.0426 0 1.04e+04 1.04e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 10 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00714 0.0189 9.22 0.00833 0 0 0 test.phys initStep - 1 0.00717 0.0189 9.22 0 0.00833 0.000972 0.000972 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.7e-05 -5.1e-06 0.0339 0.0194 0 0 0 test.phys initStep - 1 0.00138 0.00275 0.862 0 0.00155 0.828 0.828 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 9 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00138 0.00275 0.862 0.0178 0 0 0 test.phys initStep - 1 0.00238 0.00323 0.862 0 0.0178 0.00357 0.00357 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.7e-05 -5.1e-06 0.0339 0.265 0 0 0 test.phys initStep - 1 0.00824 0.0485 10 0.265 0 9.97 9.97 World Transportation - 2 8.21 48.6 1e+04 0.265 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.7e-05 -5.1e-06 0.0339 31.7 0 0 0 test.phys initStep - 1 0.0181 -0.0217 10 31.7 0 9.97 9.97 World Transportation - 2 18.1 -21.7 1e+04 31.7 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.7e-05 -5.1e-06 0.0339 2.98 0 0 0 test.phys initStep - 1 0.108 0.0175 10 2.98 0 9.97 9.97 World Transportation - 2 109 17.6 1e+04 2.98 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.7e-05 -5.1e-06 0.0339 1.57 0 0 0 test.phys initStep - 1 0.0668 -0.194 10 1.57 0 9.97 9.97 World Transportation - 2 66.9 -195 1e+04 1.57 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.7e-05 -5.1e-06 0.0339 0.158 0 0 0 test.phys initStep - 1 0.0231 -0.0728 4.67 0.1 0 4.63 4.63 test.phys compt - 2 -2.78 -0.424 0 0.1 0 5.45 10.1 World Transportation - 3 -6.01e+03 -754 -1e+04 0.1 0 1.17e+04 1.17e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 28, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0231 -0.0728 4.67 0.0575 0 0 0 test.phys initStep - 1 0.025 -0.0727 4.67 0 0.0575 0.0271 0.0271 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.7e-05 -5.1e-06 0.0339 0.00976 0 0 0 test.phys initStep - 1 -0.000868 -0.000632 0.238 0 0.00155 0.204 0.204 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 29, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000868 -0.000632 0.238 0.00821 0 0 0 test.phys initStep - 1 -0.00107 -0.000722 0.238 0 0.00821 0.000948 0.000948 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 6.7e-05 -5.1e-06 0.0339 0.0118 0 0 0 test.phys initStep - 1 0.000254 -0.000356 0.067 0 0.00155 0.0332 0.0332 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 30, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000254 -0.000356 0.067 0.0103 0 0 0 test.phys initStep - 1 0.00044 5.71e-06 0.0672 0 0.0103 0.00139 0.00139 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -1e+03 100 0 0 0 World initStep - 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 0 0 10 96.1 3.85 10 1.01e+03 World Transportation - 3 41.6 -267 1e+04 96.1 3.66e-22 9.99e+03 1.1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -1e+03 100 0 0 0 World initStep - 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 -0.0236 0.0245 2.15 97.9 0.774 2.16 1e+03 test.phys biasWrapper(eBrem) - 3 -0.000174 -0.0803 6.83 85.8 1.79 4.68 1.01e+03 test.phys biasWrapper(eBrem) - 4 -0.138 -0.59 10 84.8 1.05 3.21 1.01e+03 World Transportation - 5 -407 -1.89e+03 1e+04 84.8 3.69e-22 1.02e+04 1.12e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 21, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000174 -0.0803 6.83 2.11 0 0 0 test.phys initStep - 1 -0.143 -0.627 10 2.11 0 3.22 3.22 World Transportation - 2 -451 -1.73e+03 1e+04 2.11 0 1.01e+04 1.02e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 20, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000174 -0.0803 6.83 0.794 0 0 0 test.phys initStep - 1 -0.145 -0.586 10 0.794 0 3.21 3.21 World Transportation - 2 -458 -1.6e+03 1e+04 0.794 0 1.01e+04 1.01e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 19, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000174 -0.0803 6.83 31.5 0 0 0 test.phys initStep - 1 -0.143 -0.599 10 31.5 0 3.21 3.21 World Transportation - 2 -450 -1.64e+03 1e+04 31.5 0 1.01e+04 1.01e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 18, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000174 -0.0803 6.83 44.6 0 0 0 test.phys initStep - 1 -0.134 -0.591 10 44.6 0 3.21 3.21 World Transportation - 2 -423 -1.61e+03 1e+04 44.6 0 1.01e+04 1.01e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000174 -0.0803 6.83 0.0752 0 0 0 test.phys initStep - 1 -0.0412 -0.196 7.57 0 0.00155 0.747 0.747 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 17 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0412 -0.196 7.57 0.0736 0 0 0 test.phys initStep - 1 -0.0499 -0.189 7.58 0 0.0736 0.0414 0.0414 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 16, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000174 -0.0803 6.83 0.00603 0 0 0 test.phys initStep - 1 -0.00884 -0.0987 6.94 0 0.00155 0.105 0.105 test.phys phot + 0 0.0672 0.19 8.32 0.00801 0 0 0 test.phys initStep + 1 0.0677 0.19 8.33 0 0.00155 0.0113 0.0113 test.phys phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 23, Parent ID = 16 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00884 -0.0987 6.94 0.00448 0 0 0 test.phys initStep - 1 -0.00892 -0.0987 6.94 0 0.00448 0.000349 0.000349 test.phys eIoni + 0 0.0677 0.19 8.33 0.00646 0 0 0 test.phys initStep + 1 0.0676 0.19 8.33 0 0.00646 0.000635 0.000635 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000174 -0.0803 6.83 0.849 0 0 0 test.phys initStep - 1 -0.172 -0.623 10 0.849 0 3.22 3.22 World Transportation - 2 -544 -1.71e+03 1e+04 0.849 0 1.02e+04 1.02e+04 OutOfWorld Transportation + 0 0.0672 0.19 8.32 10 0 0 0 test.phys initStep + 1 0.132 0.214 10 10 0 1.68 1.68 World Transportation + 2 386 138 1e+04 10 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000174 -0.0803 6.83 0.0224 0 0 0 test.phys initStep - 1 -0.000882 -0.0861 6.87 0 0.00155 0.0359 0.0359 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 14 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000882 -0.0861 6.87 0.0209 0 0 0 test.phys initStep - 1 -0.00185 -0.087 6.87 0 0.0209 0.00468 0.00468 test.phys eIoni + 0 0.0672 0.19 8.32 0.804 0 0 0 test.phys initStep + 1 0.15 0.224 10 0.804 0 1.68 1.68 World Transportation + 2 493 202 1e+04 0.804 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000174 -0.0803 6.83 17.6 0 0 0 test.phys initStep - 1 -0.118 -0.567 10 17.6 0 3.2 3.2 World Transportation - 2 -371 -1.54e+03 1e+04 17.6 0 1.01e+04 1.01e+04 OutOfWorld Transportation + 0 0.0672 0.19 8.32 4.08 0 0 0 test.phys initStep + 1 0.121 0.219 10 4.08 0 1.68 1.68 World Transportation + 2 322 170 1e+04 4.08 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000174 -0.0803 6.83 10.2 0 0 0 test.phys initStep - 1 -0.134 -0.605 10 10.2 0 3.21 3.21 World Transportation - 2 -422 -1.66e+03 1e+04 10.2 0 1.01e+04 1.01e+04 OutOfWorld Transportation + 0 0.0672 0.19 8.32 5.93 0 0 0 test.phys initStep + 1 0.124 0.196 10 5.93 0 1.68 1.68 World Transportation + 2 336 33.4 1e+04 5.93 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0236 0.0245 2.15 0.0235 0 0 0 test.phys initStep - 1 -0.0339 0.0285 2.86 0 0.00155 0.705 0.705 test.phys phot + 0 -0.016 0.0202 1.79 0.0158 0 0 0 test.phys initStep + 1 -0.0218 0.0184 2.28 0 0.00155 0.487 0.487 test.phys phot ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 11 +* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 11 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0339 0.0285 2.86 0.0219 0 0 0 test.phys initStep - 1 -0.0332 0.0271 2.86 0 0.0219 0.00511 0.00511 test.phys eIoni + 0 -0.0218 0.0184 2.28 0.0142 0 0 0 test.phys initStep + 1 -0.0225 0.0181 2.28 0 0.0142 0.00241 0.00241 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0236 0.0245 2.15 0.0738 0 0 0 test.phys initStep - 1 -0.0185 0.00516 4.29 0.0738 0 2.14 2.14 test.phys Rayl - 2 -3.6 -1.98 10 0.0738 0 7.02 9.16 World Transportation - 3 -6.28e+03 -3.48e+03 1e+04 0.0738 0 1.23e+04 1.23e+04 OutOfWorld Transportation + 0 -0.016 0.0202 1.79 2.3 0 0 0 test.phys initStep + 1 -0.0651 0.0424 10 2.3 0 8.21 8.21 World Transportation + 2 -59.8 27 1e+04 2.3 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0236 0.0245 2.15 0.244 0 0 0 test.phys initStep - 1 0.073 -0.132 10 0.244 0 7.85 7.85 World Transportation - 2 123 -199 1e+04 0.244 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.016 0.0202 1.79 0.15 0 0 0 test.phys initStep + 1 -0.0522 0.0526 9.79 0.119 0 8 8 test.phys compt + 2 1.67 -0.324 10 0.119 0 1.78 9.78 World Transportation + 3 1e+04 -2.18e+03 1.22e+03 0.119 0 1.03e+04 1.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 9 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0522 0.0526 9.79 0.031 0 0 0 test.phys initStep + 1 -0.0541 0.053 9.79 0 0.031 0.00929 0.00929 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0236 0.0245 2.15 0.366 0 0 0 test.phys initStep - 1 0.109 0.167 10 0.366 0 7.85 7.85 World Transportation - 2 170 181 1e+04 0.366 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.016 0.0202 1.79 1.29 0 0 0 test.phys initStep + 1 0.0558 -0.22 10 1.29 0 8.21 8.21 World Transportation + 2 87.5 -293 1e+04 1.29 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0236 0.0245 2.15 1.69 0 0 0 test.phys initStep - 1 -0.0308 -0.00553 10 1.69 0 7.85 7.85 World Transportation - 2 -9.13 -38.2 1e+04 1.69 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.016 0.0202 1.79 9.9 0 0 0 test.phys initStep + 1 -0.0406 0.0335 10 9.9 0 8.21 8.21 World Transportation + 2 -30 16.2 1e+04 9.9 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0236 0.0245 2.15 0.0227 0 0 0 test.phys initStep - 1 -0.0357 0.0222 4.69 0 0.00155 2.54 2.54 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0357 0.0222 4.69 0.0211 0 0 0 test.phys initStep - 1 -0.0368 0.0227 4.69 0 0.0211 0.00478 0.00478 test.phys eIoni + 0 -0.016 0.0202 1.79 0.0771 0 0 0 test.phys initStep + 1 -0.0092 0.04 10 0.0771 0 8.21 8.21 World Transportation + 2 8.27 24.1 1e+04 0.0771 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0236 0.0245 2.15 28.9 0 0 0 test.phys initStep - 1 -0.252 0.216 10 28.9 0 7.85 7.85 World Transportation - 2 -291 244 1e+04 28.9 0 1e+04 1e+04 OutOfWorld Transportation + 0 -0.016 0.0202 1.79 0.0746 0 0 0 test.phys initStep + 1 -0.031 0.0234 10 0.0746 0 8.21 8.21 World Transportation + 2 -18.3 3.82 1e+04 0.0746 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0236 0.0245 2.15 0.335 0 0 0 test.phys initStep - 1 -0.0428 0.00896 10 0.335 0 7.85 7.85 World Transportation - 2 -24.4 -19.8 1e+04 0.335 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.016 0.0202 1.79 0.204 0 0 0 test.phys initStep + 1 -0.0357 0.0196 10 0.204 0 8.21 8.21 World Transportation + 2 -24.1 -0.738 1e+04 0.204 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0236 0.0245 2.15 18.8 0 0 0 test.phys initStep - 1 -0.00503 0.0211 10 18.8 0 7.85 7.85 World Transportation - 2 23.7 -4.29 1e+04 18.8 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.016 0.0202 1.79 3.52 0 0 0 test.phys initStep + 1 -0.00244 0.0319 10 3.52 0 8.21 8.21 World Transportation + 2 16.5 14.2 1e+04 3.52 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0236 0.0245 2.15 1.37 0 0 0 test.phys initStep - 1 -0.0446 0.0471 10 1.37 0 7.85 7.85 World Transportation - 2 -26.8 28.9 1e+04 1.37 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.016 0.0202 1.79 1.16 0 0 0 test.phys initStep + 1 0.189 -0.142 10 1.16 0 8.21 8.21 World Transportation + 2 249 -198 1e+04 1.16 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -3165,365 +2547,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 -3.85e-05 -1.66e-05 0.0248 100 0.0225 0.0248 1e+03 test.phys biasWrapper(eBrem) - 3 -0.00357 0.145 5.71 95.9 1.97 5.69 1.01e+03 test.phys biasWrapper(eBrem) - 4 0.0681 0.296 8.85 91.3 1.11 3.14 1.01e+03 test.phys biasWrapper(eBrem) - 5 0.0926 0.358 10 90.9 0.407 1.15 1.01e+03 World Transportation - 6 48.7 620 1e+04 90.9 3.65e-22 1e+04 1.1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 31, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0681 0.296 8.85 0.0945 0 0 0 test.phys initStep - 1 0.0969 0.358 10 0.0945 0 1.15 1.15 World Transportation - 2 251 538 1e+04 0.0945 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 30, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0681 0.296 8.85 0.0195 0 0 0 test.phys initStep - 1 0.0934 0.352 10 0.0195 0 1.15 1.15 World Transportation - 2 220 483 1e+04 0.0195 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 29, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0681 0.296 8.85 0.934 0 0 0 test.phys initStep - 1 0.0788 0.37 10 0.934 0 1.16 1.16 World Transportation - 2 93.5 637 1e+04 0.934 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 28, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0681 0.296 8.85 16.5 0 0 0 test.phys initStep - 1 0.0946 0.356 10 16.5 0 1.15 1.15 World Transportation - 2 230 521 1e+04 16.5 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 27, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0681 0.296 8.85 0.0198 0 0 0 test.phys initStep - 1 0.0888 0.305 9.16 0.0198 0 0.311 0.311 test.phys Rayl - 2 0.347 0.479 9.88 0 0.00155 0.788 1.1 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 27 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.347 0.479 9.88 0.0182 0 0 0 test.phys initStep - 1 0.348 0.478 9.88 0 0.0182 0.00371 0.00371 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 26, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0681 0.296 8.85 79.2 0 0 0 test.phys initStep - 1 0.0903 0.363 10 79.2 0 1.15 1.15 World Transportation - 2 193 581 1e+04 79.2 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 25, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0681 0.296 8.85 8.61 0 0 0 test.phys initStep - 1 0.0916 0.361 10 8.61 0 1.15 1.15 World Transportation - 2 204 559 1e+04 8.61 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 24, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0681 0.296 8.85 5.02 0 0 0 test.phys initStep - 1 0.097 0.375 10 5.02 0 1.16 1.16 World Transportation - 2 251 683 1e+04 5.02 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 23, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0681 0.296 8.85 0.0125 0 0 0 test.phys initStep - 1 0.0682 0.297 8.85 0 0.00155 0.00528 0.00528 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 23 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0682 0.297 8.85 0.0109 0 0 0 test.phys initStep - 1 0.0679 0.296 8.85 0 0.0109 0.00154 0.00154 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 22, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0681 0.296 8.85 3.56 0 0 0 test.phys initStep - 1 0.0903 0.356 10 3.56 0 1.15 1.15 World Transportation - 2 193 521 1e+04 3.56 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 21, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00357 0.145 5.71 66.9 0 0 0 test.phys initStep - 1 0.0949 0.268 10 66.9 0 4.3 4.3 World Transportation - 2 229 287 1e+04 66.9 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 20, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00357 0.145 5.71 0.0939 0 0 0 test.phys initStep - 1 0.113 0.262 10 0.0939 0 4.3 4.3 World Transportation - 2 272 274 1e+04 0.0939 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 19, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00357 0.145 5.71 1.37 0 0 0 test.phys initStep - 1 0.0945 0.213 10 1.37 0 4.29 4.29 World Transportation - 2 228 159 1e+04 1.37 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 18, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00357 0.145 5.71 0.954 0 0 0 test.phys initStep - 1 0.109 0.261 10 0.954 0 4.3 4.3 World Transportation - 2 261 271 1e+04 0.954 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00357 0.145 5.71 0.432 0 0 0 test.phys initStep - 1 0.0785 0.236 10 0.432 0 4.29 4.29 World Transportation - 2 191 212 1e+04 0.432 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 16, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00357 0.145 5.71 0.194 0 0 0 test.phys initStep - 1 0.124 0.239 10 0.194 0 4.3 4.3 World Transportation - 2 298 220 1e+04 0.194 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00357 0.145 5.71 0.00849 0 0 0 test.phys initStep - 1 -0.00233 0.146 5.75 0 0.00155 0.0374 0.0374 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 15 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00233 0.146 5.75 0.00694 0 0 0 test.phys initStep - 1 -0.0025 0.146 5.74 0 0.00694 0.000716 0.000716 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00357 0.145 5.71 5.85 0 0 0 test.phys initStep - 1 0.073 0.213 10 5.85 0 4.29 4.29 World Transportation - 2 178 160 1e+04 5.85 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00357 0.145 5.71 0.378 0 0 0 test.phys initStep - 1 0.104 0.278 10 0.378 0 4.3 4.3 World Transportation - 2 250 311 1e+04 0.378 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00357 0.145 5.71 2.05 0 0 0 test.phys initStep - 1 0.0495 0.274 10 2.05 0 4.29 4.29 World Transportation - 2 124 300 1e+04 2.05 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.85e-05 -1.66e-05 0.0248 0.0672 0 0 0 test.phys initStep - 1 -0.0327 -0.078 8.55 0.0618 0 8.53 8.53 test.phys compt - 2 3.64 -2.08 10 0.0618 0 4.43 13 World Transportation - 3 1e+04 -5.45e+03 3.96e+03 0.0618 0 1.2e+04 1.21e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 35, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0327 -0.078 8.55 0.00546 0 0 0 test.phys initStep - 1 -0.0328 -0.0779 8.55 0 0.00546 0.000481 0.000481 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.85e-05 -1.66e-05 0.0248 3.82 0 0 0 test.phys initStep - 1 0.094 0.108 10 3.82 0 9.98 9.98 World Transportation - 2 94.3 108 1e+04 3.82 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.85e-05 -1.66e-05 0.0248 0.0479 0 0 0 test.phys initStep - 1 -0.012 -0.00282 4.51 0 0.00155 4.48 4.48 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 36, Parent ID = 9 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.012 -0.00282 4.51 0.0463 0 0 0 test.phys initStep - 1 -0.0166 -0.00628 4.51 0 0.0463 0.0187 0.0187 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.85e-05 -1.66e-05 0.0248 0.971 0 0 0 test.phys initStep - 1 -0.0496 0.309 10 0.971 0 9.98 9.98 World Transportation - 2 -49.6 309 1e+04 0.971 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.85e-05 -1.66e-05 0.0248 0.381 0 0 0 test.phys initStep - 1 -0.0105 0.0504 10 0.381 0 9.98 9.98 World Transportation - 2 -10.5 50.6 1e+04 0.381 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.85e-05 -1.66e-05 0.0248 0.028 0 0 0 test.phys initStep - 1 -0.0094 0.0118 2.34 0.0279 0 2.31 2.31 test.phys compt - 2 0.2 0.347 3.36 0 0.00155 1.1 3.41 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 38, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.2 0.347 3.36 0.0264 0 0 0 test.phys initStep - 1 0.201 0.349 3.36 0 0.0264 0.00702 0.00702 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 37, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0094 0.0118 2.34 0.000102 0 0 0 test.phys initStep - 1 -0.0094 0.0118 2.34 0 0.000102 4.36e-06 4.36e-06 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.85e-05 -1.66e-05 0.0248 0.106 0 0 0 test.phys initStep - 1 -0.0834 0.04 8 0.0801 0 7.98 7.98 test.phys compt - 2 -10.7 -4.54 0 0.0801 0 14 22 World Transportation - 3 -1e+04 -4.33e+03 -7.56e+03 0.0801 0 1.33e+04 1.33e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 39, Parent ID = 5 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0834 0.04 8 0.0261 0 0 0 test.phys initStep - 1 -0.0826 0.0404 8 0 0.0261 0.00688 0.00688 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.85e-05 -1.66e-05 0.0248 0.0249 0 0 0 test.phys initStep - 1 -0.00608 -0.00531 3.11 0 0.000119 3.08 3.08 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 40, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00608 -0.00531 3.11 0.0248 0 0 0 test.phys initStep - 1 -0.00562 -0.00395 3.11 0 0.0248 0.00632 0.00632 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.85e-05 -1.66e-05 0.0248 0.00867 0 0 0 test.phys initStep - 1 -0.00705 0.00154 0.193 0 0.00155 0.169 0.169 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00705 0.00154 0.193 0.00712 0 0 0 test.phys initStep - 1 -0.00688 0.00154 0.193 0 0.00712 0.000747 0.000747 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.85e-05 -1.66e-05 0.0248 0.0187 0 0 0 test.phys initStep - 1 -0.000293 -6.92e-05 0.219 0 0.00155 0.194 0.194 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 42, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000293 -6.92e-05 0.219 0.0171 0 0 0 test.phys initStep - 1 -0.000319 0.000953 0.219 0 0.0171 0.00332 0.00332 test.phys eIoni + 2 0 0 10 96 3.98 10 1.01e+03 World Transportation + 3 -320 -45.9 1e+04 96 3.66e-22 1e+04 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -3532,907 +2557,432 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 -0.0141 -0.00526 1.25 98 0.521 1.25 1e+03 test.phys biasWrapper(eBrem) - 3 -0.143 0.0189 10 94.7 3.35 8.76 1.01e+03 World Transportation - 4 -748 306 1e+04 94.7 3.67e-22 1e+04 1.1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0141 -0.00526 1.25 0.0127 0 0 0 test.phys initStep - 1 -0.0261 -0.00072 2.1 0 0.00155 0.852 0.852 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0261 -0.00072 2.1 0.0111 0 0 0 test.phys initStep - 1 -0.026 -0.000344 2.1 0 0.0111 0.00159 0.00159 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0141 -0.00526 1.25 0.129 0 0 0 test.phys initStep - 1 -0.0577 0.0255 6.89 0.127 0 5.64 5.64 test.phys compt - 2 -1.24 0.348 10 0.127 0 3.34 8.98 World Transportation - 3 -3.81e+03 1.04e+03 1e+04 0.127 0 1.07e+04 1.08e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 10 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0577 0.0255 6.89 0.00215 0 0 0 test.phys initStep - 1 -0.0576 0.0255 6.89 0 0.00215 0.000111 0.000111 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0141 -0.00526 1.25 0.862 0 0 0 test.phys initStep - 1 0.275 -0.253 10 0.862 0 8.76 8.76 World Transportation - 2 330 -284 1e+04 0.862 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0141 -0.00526 1.25 39.8 0 0 0 test.phys initStep - 1 -0.115 0.0255 10 39.8 0 8.75 8.75 World Transportation - 2 -115 35.2 1e+04 39.8 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0141 -0.00526 1.25 66.7 0 0 0 test.phys initStep - 1 -0.106 0.00364 10 66.7 0 8.75 8.75 World Transportation - 2 -105 10.2 1e+04 66.7 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0141 -0.00526 1.25 0.162 0 0 0 test.phys initStep - 1 -0.127 -0.0128 5.05 0.151 0 3.8 3.8 test.phys compt - 2 -4.12 -1.44 10 0.151 0 6.52 10.3 World Transportation - 3 -8.06e+03 -2.88e+03 1e+04 0.151 0 1.31e+04 1.32e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.127 -0.0128 5.05 0.0106 0 0 0 test.phys initStep - 1 -0.127 -0.0127 5.05 0 0.0106 0.00146 0.00146 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0141 -0.00526 1.25 0.0404 0 0 0 test.phys initStep - 1 -0.13 -0.0126 5.62 0 0.00155 4.37 4.37 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 5 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.13 -0.0126 5.62 0.0389 0 0 0 test.phys initStep - 1 -0.133 -0.0113 5.61 0 0.0389 0.0138 0.0138 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0141 -0.00526 1.25 4.12 0 0 0 test.phys initStep - 1 -0.337 0.0488 10 4.12 0 8.75 8.75 World Transportation - 2 -369 61.8 1e+04 4.12 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0141 -0.00526 1.25 0.218 0 0 0 test.phys initStep - 1 -0.148 0.0602 10 0.218 0 8.75 8.75 World Transportation - 2 -152 74.8 1e+04 0.218 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0141 -0.00526 1.25 1.46 0 0 0 test.phys initStep - 1 -0.0637 0.217 10 1.46 0 8.75 8.75 World Transportation - 2 -56.6 254 1e+04 1.46 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 -1e+03 100 0 0 0 World initStep - 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 0.00468 0.0138 1.22 59.2 0.579 1.22 1e+03 test.phys biasWrapper(eBrem) - 3 0.00445 0.0159 1.35 59.1 0.0532 0.122 1e+03 test.phys biasWrapper(eBrem) - 4 -0.0732 0.0491 3.49 57.2 0.785 2.15 1e+03 test.phys eIoni - 5 -0.102 0.108 5.66 52.7 1 2.17 1.01e+03 test.phys biasWrapper(eBrem) - 6 -0.105 0.115 6.07 48.5 0.102 0.408 1.01e+03 test.phys biasWrapper(eBrem) - 7 -0.136 0.223 10 47 1.54 3.94 1.01e+03 World Transportation - 8 572 58.1 1e+04 47 3.45e-22 1e+04 1.1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 42, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.105 0.115 6.07 34.4 0 0 0 test.phys initStep - 1 -0.147 0.251 10 34.4 0 3.94 3.94 World Transportation - 2 -108 346 1e+04 34.4 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 41, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.105 0.115 6.07 0.0354 0 0 0 test.phys initStep - 1 -0.154 0.165 10 0.0354 0 3.93 3.93 World Transportation - 2 -125 126 1e+04 0.0354 0 9.99e+03 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 40, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.105 0.115 6.07 0.0239 0 0 0 test.phys initStep - 1 -0.106 0.122 7.12 0 0.00155 1.05 1.05 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 43, Parent ID = 40 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.106 0.122 7.12 0.0224 0 0 0 test.phys initStep - 1 -0.106 0.123 7.12 0 0.0224 0.00529 0.00529 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 39, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.105 0.115 6.07 0.437 0 0 0 test.phys initStep - 1 -0.122 0.162 10 0.437 0 3.93 3.93 World Transportation - 2 -43.9 120 1e+04 0.437 0 9.99e+03 9.99e+03 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 38, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.105 0.115 6.07 0.0368 0 0 0 test.phys initStep - 1 -0.185 0.186 7.61 0.0364 0 1.55 1.55 test.phys compt - 2 -0.958 1.66 10 0.0364 0 2.91 4.46 World Transportation - 3 -3.24e+03 6.19e+03 1e+04 0.0364 0 1.22e+04 1.22e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 44, Parent ID = 38 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.185 0.186 7.61 0.000382 0 0 0 test.phys initStep - 1 -0.185 0.186 7.61 0 0.000382 1.15e-05 1.15e-05 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 37, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.105 0.115 6.07 0.0112 0 0 0 test.phys initStep - 1 -0.111 0.131 6.59 0 0.00155 0.522 0.522 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 45, Parent ID = 37 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.111 0.131 6.59 0.00967 0 0 0 test.phys initStep - 1 -0.111 0.131 6.59 0 0.00967 0.00125 0.00125 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 36, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.105 0.115 6.07 1.51 0 0 0 test.phys initStep - 1 -0.111 0.263 10 1.51 0 3.94 3.94 World Transportation - 2 -17.7 375 1e+04 1.51 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 35, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.105 0.115 6.07 0.03 0 0 0 test.phys initStep - 1 -0.263 0.228 10 0.03 0 3.94 3.94 World Transportation - 2 -402 288 1e+04 0.03 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 34, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.105 0.115 6.07 0.944 0 0 0 test.phys initStep - 1 -0.0293 0.291 10 0.944 0 3.94 3.94 World Transportation - 2 191 448 1e+04 0.944 0 1e+04 1e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 33, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.105 0.115 6.07 4.1 0 0 0 test.phys initStep - 1 -0.137 0.216 10 4.1 0 3.93 3.93 World Transportation - 2 -83.7 256 1e+04 4.1 0 9.99e+03 1e+04 OutOfWorld Transportation + 2 -0.00262 0.00923 0.926 99.3 0.346 0.926 1e+03 test.phys biasWrapper(eBrem) + 3 -0.0149 0.00626 1.93 99 0.34 1.01 1e+03 test.phys biasWrapper(eBrem) + 4 -0.0159 0.00745 2.15 96.6 0.0749 0.218 1e+03 test.phys eIoni + 5 -0.0658 -0.03 4.79 95.5 0.993 2.64 1e+03 test.phys biasWrapper(eBrem) + 6 -0.0383 -0.194 10 93.7 1.8 5.22 1.01e+03 World Transportation + 7 700 -604 1e+04 93.7 3.67e-22 1e+04 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 32, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.102 0.108 5.66 0.262 0 0 0 test.phys initStep - 1 -0.0981 0.164 10 0.262 0 4.34 4.34 World Transportation - 2 7.72 128 1e+04 0.262 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.0658 -0.03 4.79 10.5 0 0 0 test.phys initStep + 1 -0.0949 -0.322 10 10.5 0 5.22 5.22 World Transportation + 2 -55.9 -560 1e+04 10.5 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 31, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.102 0.108 5.66 0.954 0 0 0 test.phys initStep - 1 -0.113 0.127 10 0.954 0 4.34 4.34 World Transportation - 2 -27.4 44.4 1e+04 0.954 0 9.99e+03 9.99e+03 OutOfWorld Transportation + 0 -0.0658 -0.03 4.79 0.0598 0 0 0 test.phys initStep + 1 -0.0205 -0.232 10 0.0598 0 5.21 5.21 World Transportation + 2 86.9 -387 1e+04 0.0598 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 30, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.102 0.108 5.66 0.0289 0 0 0 test.phys initStep - 1 -0.116 0.158 10 0.0289 0 4.34 4.34 World Transportation - 2 -32.6 115 1e+04 0.0289 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.0658 -0.03 4.79 2.03 0 0 0 test.phys initStep + 1 -0.0323 -0.195 10 2.03 0 5.21 5.21 World Transportation + 2 64.2 -316 1e+04 2.03 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 29, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.102 0.108 5.66 5.15 0 0 0 test.phys initStep - 1 -0.103 0.139 10 5.15 0 4.34 4.34 World Transportation - 2 -3.3 70.7 1e+04 5.15 0 9.99e+03 9.99e+03 OutOfWorld Transportation + 0 -0.0658 -0.03 4.79 6.01 0 0 0 test.phys initStep + 1 -0.0864 -0.191 10 6.01 0 5.21 5.21 World Transportation + 2 -39.7 -309 1e+04 6.01 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 28, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.102 0.108 5.66 3.4 0 0 0 test.phys initStep - 1 -0.109 0.125 10 3.4 0 4.34 4.34 World Transportation - 2 -16.9 39.8 1e+04 3.4 0 9.99e+03 9.99e+03 OutOfWorld Transportation + 0 -0.0658 -0.03 4.79 12 0 0 0 test.phys initStep + 1 -0.054 -0.188 7.46 0.414 0 2.68 2.68 test.phys compt + 2 2.44 3.69 6.79 0.375 0 4.66 7.34 test.phys compt + 3 23.9 15.2 0 0.375 0 25.3 32.6 World Transportation + 4 1e+04 5.35e+03 -3.15e+03 0.375 0 1.17e+04 1.18e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 28 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.44 3.69 6.79 0.0392 0 0 0 test.phys initStep + 1 2.44 3.7 6.79 0 0.0392 0.014 0.014 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 28 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.054 -0.188 7.46 11.6 0 0 0 test.phys initStep + 1 -0.0894 -0.411 10 10.6 0.983 2.59 2.59 World Transportation + 2 -1.88e+03 -541 1e+04 10.6 3.07e-22 1.02e+04 1.02e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 27, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.102 0.108 5.66 0.243 0 0 0 test.phys initStep - 1 -0.073 0.123 10 0.243 0 4.34 4.34 World Transportation - 2 65.5 34.9 1e+04 0.243 0 9.99e+03 9.99e+03 OutOfWorld Transportation + 0 -0.0658 -0.03 4.79 0.00998 0 0 0 test.phys initStep + 1 -0.0657 -0.0305 4.8 0 0.00155 0.0104 0.0104 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 35, Parent ID = 27 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0657 -0.0305 4.8 0.00843 0 0 0 test.phys initStep + 1 -0.0659 -0.0302 4.8 0 0.00843 0.000992 0.000992 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 26, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.102 0.108 5.66 0.03 0 0 0 test.phys initStep - 1 -0.118 0.106 10 0.03 0 4.34 4.34 World Transportation - 2 -38.5 -3.64 1e+04 0.03 0 9.99e+03 9.99e+03 OutOfWorld Transportation + 0 -0.0658 -0.03 4.79 0.038 0 0 0 test.phys initStep + 1 0.000697 -0.205 10 0.038 0 5.21 5.21 World Transportation + 2 127 -335 1e+04 0.038 0 1e+04 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 25, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.102 0.108 5.66 1.71 0 0 0 test.phys initStep - 1 -0.12 0.125 10 1.71 0 4.34 4.34 World Transportation - 2 -42.7 40 1e+04 1.71 0 9.99e+03 9.99e+03 OutOfWorld Transportation + 0 -0.0658 -0.03 4.79 0.00666 0 0 0 test.phys initStep + 1 -0.0658 -0.0315 4.83 0 0.00155 0.0442 0.0442 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 36, Parent ID = 25 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0658 -0.0315 4.83 0.00511 0 0 0 test.phys initStep + 1 -0.0657 -0.0314 4.83 0 0.00511 0.000432 0.000432 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 24, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.102 0.108 5.66 19.9 0 0 0 test.phys initStep - 1 -0.0963 0.136 10 19.9 0 4.34 4.34 World Transportation - 2 11.9 64.3 1e+04 19.9 0 9.99e+03 9.99e+03 OutOfWorld Transportation + 0 -0.0658 -0.03 4.79 0.0424 0 0 0 test.phys initStep + 1 -0.0657 -0.0321 4.86 0 0.00155 0.0738 0.0738 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 37, Parent ID = 24 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0657 -0.0321 4.86 0.0409 0 0 0 test.phys initStep + 1 -0.062 -0.0337 4.87 0 0.0409 0.015 0.015 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 23, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.102 0.108 5.66 3.49 0 0 0 test.phys initStep - 1 -0.118 0.106 10 3.49 0 4.34 4.34 World Transportation - 2 -37.5 -5.67 1e+04 3.49 0 9.99e+03 9.99e+03 OutOfWorld Transportation + 0 -0.0658 -0.03 4.79 0.0787 0 0 0 test.phys initStep + 1 -0.0531 -0.183 10 0.0787 0 5.21 5.21 World Transportation + 2 24.3 -294 1e+04 0.0787 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 22, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0732 0.0491 3.49 1.14 0 0 0 test.phys initStep - 1 0.252 0.624 4.18 0.338 0.806 1.76 1.76 test.phys eIoni - 2 0.14 0.613 4.05 0 0.338 0.481 2.24 test.phys eIoni + 0 -0.0159 0.00745 2.15 2.27 0 0 0 test.phys initStep + 1 0.204 0.0216 2.99 1.86 0.414 0.899 0.899 test.phys msc + 2 1.37 -0.11 3.9 0.831 1.03 1.64 2.54 test.phys msc + 3 1.74 -0.376 4.36 0.252 0.58 1.44 3.99 test.phys eIoni + 4 1.78 -0.287 4.32 0 0.252 0.309 4.29 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 21, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00445 0.0159 1.35 0.0149 0 0 0 test.phys initStep - 1 -0.00529 0.0222 1.71 0 0.00155 0.359 0.359 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 21 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00529 0.0222 1.71 0.0134 0 0 0 test.phys initStep - 1 -0.00574 0.0217 1.71 0 0.0134 0.00217 0.00217 test.phys eIoni + 0 -0.0149 0.00626 1.93 1.87 0 0 0 test.phys initStep + 1 -0.0955 0.0309 10 1.87 0 8.07 8.07 World Transportation + 2 -99.8 30.6 1e+04 1.87 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 20, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00445 0.0159 1.35 0.0461 0 0 0 test.phys initStep - 1 -0.0227 0.0791 4.28 0.0414 0 2.93 2.93 test.phys compt - 2 3 -0.677 3.5 0.0414 0 3.21 6.14 test.phys Rayl - 3 8.16 -0.443 0.972 0 0.00155 5.75 11.9 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 20 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 8.16 -0.443 0.972 0.0398 0 0 0 test.phys initStep - 1 8.16 -0.447 0.973 0 0.0398 0.0144 0.0144 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 47, Parent ID = 20 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0227 0.0791 4.28 0.00468 0 0 0 test.phys initStep - 1 -0.0228 0.0791 4.28 0 0.00468 0.000375 0.000375 test.phys eIoni + 0 -0.0149 0.00626 1.93 0.514 0 0 0 test.phys initStep + 1 -0.0644 0.000328 10 0.514 0 8.07 8.07 World Transportation + 2 -61.3 -7.35 1e+04 0.514 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 19, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00445 0.0159 1.35 0.561 0 0 0 test.phys initStep - 1 -0.132 0.371 10 0.561 0 8.66 8.66 World Transportation - 2 -157 410 1e+04 0.561 0 1e+04 1e+04 OutOfWorld Transportation + 0 -0.0149 0.00626 1.93 0.00739 0 0 0 test.phys initStep + 1 -0.0151 0.0066 2 0 0.00155 0.0612 0.0612 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 38, Parent ID = 19 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0151 0.0066 2 0.00584 0 0 0 test.phys initStep + 1 -0.0153 0.00663 2 0 0.00584 0.000538 0.000538 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 18, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00445 0.0159 1.35 2.58 0 0 0 test.phys initStep - 1 -0.082 0.328 10 2.58 0 8.66 8.66 World Transportation - 2 -99.9 360 1e+04 2.58 0 1e+04 1e+04 OutOfWorld Transportation + 0 -0.0149 0.00626 1.93 0.929 0 0 0 test.phys initStep + 1 -0.0401 0.0655 10 0.929 0 8.07 8.07 World Transportation + 2 -31.2 73.4 1e+04 0.929 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00445 0.0159 1.35 2.07 0 0 0 test.phys initStep - 1 -0.0835 0.264 10 2.07 0 8.66 8.66 World Transportation - 2 -102 287 1e+04 2.07 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.0149 0.00626 1.93 0.048 0 0 0 test.phys initStep + 1 -0.165 -0.0114 10 0.048 0 8.07 8.07 World Transportation + 2 -186 -21.9 1e+04 0.048 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 16, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00445 0.0159 1.35 1.9 0 0 0 test.phys initStep - 1 -0.0159 0.115 4.16 0.747 0 2.81 2.81 test.phys compt - 2 1.39 8.7 10 0.747 0 10.5 13.3 World Transportation - 3 1.63e+03 1e+04 6.81e+03 0.747 0 1.22e+04 1.22e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 16 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0159 0.115 4.16 1.15 0 0 0 test.phys initStep - 1 -0.0314 0.0407 4.36 1.01 0.0962 0.229 0.229 test.phys biasWrapper(eBrem) - 2 -0.24 -0.404 5.02 0.378 0.633 1.64 1.87 test.phys eIoni - 3 -0.194 -0.329 4.84 0 0.378 0.566 2.43 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 59, Parent ID = 49 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0314 0.0407 4.36 0.0121 0 0 0 test.phys initStep - 1 -0.032 0.0387 4.36 0 0.000119 0.0021 0.0021 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 60, Parent ID = 59 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.032 0.0387 4.36 0.0119 0 0 0 test.phys initStep - 1 -0.0326 0.0387 4.36 0 0.0119 0.00179 0.00179 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 58, Parent ID = 49 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0314 0.0407 4.36 0.11 0 0 0 test.phys initStep - 1 -2.76 -0.82 10 0.11 0 6.33 6.33 World Transportation - 2 -4.84e+03 -1.52e+03 1e+04 0.11 0 1.12e+04 1.12e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 57, Parent ID = 49 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0314 0.0407 4.36 0.292 0 0 0 test.phys initStep - 1 -1.89 -7.93 10 0.292 0 9.94 9.94 World Transportation - 2 -2.33e+03 -1e+04 7.08e+03 0.292 0 1.25e+04 1.25e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 56, Parent ID = 49 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0314 0.0407 4.36 0.535 0 0 0 test.phys initStep - 1 -0.778 -3.98 10 0.535 0 6.97 6.97 World Transportation - 2 -1.32e+03 -7.12e+03 1e+04 0.535 0 1.23e+04 1.23e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 55, Parent ID = 49 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0314 0.0407 4.36 0.00919 0 0 0 test.phys initStep - 1 -0.0423 0.0271 4.37 0 0.00155 0.02 0.02 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 61, Parent ID = 55 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0423 0.0271 4.37 0.00764 0 0 0 test.phys initStep - 1 -0.0422 0.027 4.37 0 0.00764 0.00084 0.00084 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 54, Parent ID = 49 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0314 0.0407 4.36 0.093 0 0 0 test.phys initStep - 1 -0.0093 -2.85 10 0.093 0 6.34 6.34 World Transportation - 2 39.1 -5.12e+03 1e+04 0.093 0 1.12e+04 1.12e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 53, Parent ID = 49 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0314 0.0407 4.36 0.0112 0 0 0 test.phys initStep - 1 -0.0532 -0.0847 4.44 0 0.00155 0.151 0.151 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 62, Parent ID = 53 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0532 -0.0847 4.44 0.00962 0 0 0 test.phys initStep - 1 -0.0533 -0.0847 4.44 0 0.00962 0.00124 0.00124 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 52, Parent ID = 49 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0314 0.0407 4.36 0.0561 0 0 0 test.phys initStep - 1 3.57 1.8 10 0.0561 0 6.92 6.92 World Transportation - 2 6.39e+03 3.11e+03 1e+04 0.0561 0 1.23e+04 1.23e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 51, Parent ID = 49 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0314 0.0407 4.36 0.0272 0 0 0 test.phys initStep - 1 0.0219 -0.0544 4.53 0.0247 0 0.202 0.202 test.phys compt - 2 0.00329 0.403 4.22 0 0.00155 0.552 0.755 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 64, Parent ID = 51 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00329 0.403 4.22 0.0232 0 0 0 test.phys initStep - 1 0.00173 0.403 4.22 0 0.0232 0.00562 0.00562 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 63, Parent ID = 51 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0219 -0.0544 4.53 0.00246 0 0 0 test.phys initStep - 1 0.0219 -0.0544 4.53 0 0.00246 0.000136 0.000136 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 50, Parent ID = 49 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0314 0.0407 4.36 0.0419 0 0 0 test.phys initStep - 1 -0.385 0.0559 4.65 0.0389 0 0.457 0.457 test.phys compt - 2 -0.0989 2.07 5.09 0.0366 0 2.09 2.54 test.phys compt - 3 -0.0512 2.07 5.18 0 0.00155 0.0969 2.64 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 67, Parent ID = 50 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0512 2.07 5.18 0.035 0 0 0 test.phys initStep - 1 -0.0475 2.07 5.18 0 0.035 0.0115 0.0115 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 66, Parent ID = 50 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0989 2.07 5.09 0.00229 0 0 0 test.phys initStep - 1 -0.0989 2.07 5.09 0 0.00229 0.000121 0.000121 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 65, Parent ID = 50 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.385 0.0559 4.65 0.00299 0 0 0 test.phys initStep - 1 -0.385 0.0559 4.65 0 0.00299 0.000183 0.000183 test.phys eIoni + 0 -0.0149 0.00626 1.93 0.417 0 0 0 test.phys initStep + 1 0.0299 -0.0515 10 0.417 0 8.07 8.07 World Transportation + 2 55.6 -71.6 1e+04 0.417 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00445 0.0159 1.35 0.0809 0 0 0 test.phys initStep - 1 -0.124 0.347 10 0.0809 0 8.66 8.66 World Transportation - 2 -149 383 1e+04 0.0809 0 1e+04 1e+04 OutOfWorld Transportation + 0 -0.0149 0.00626 1.93 10.6 0 0 0 test.phys initStep + 1 -0.0386 0.16 9.46 0 0 7.53 7.53 test.phys conv + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 40, Parent ID = 15 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0386 0.16 9.46 0.861 0 0 0 test.phys initStep + 1 0.00299 0.173 9.74 0.67 0.191 0.303 0.303 test.phys msc + 2 0.112 0.169 9.83 0.619 0.0514 0.145 0.448 test.phys msc + 3 0.2 0.189 9.86 0.585 0.0336 0.0971 0.546 test.phys msc + 4 0.265 0.224 9.87 0.562 0.0233 0.0759 0.621 test.phys msc + 5 0.306 0.284 9.87 0.541 0.0205 0.0756 0.697 test.phys msc + 6 0.335 0.35 9.89 0.516 0.0258 0.0764 0.773 test.phys msc + 7 0.346 0.398 9.92 0.498 0.018 0.0618 0.835 test.phys msc + 8 0.295 0.423 9.98 0.467 0.0303 0.079 0.914 test.phys msc + 9 0.235 0.413 9.99 0.448 0.0191 0.068 0.982 test.phys msc + 10 0.206 0.41 10 0.436 0.0123 0.0313 1.01 World Transportation + 11 0.206 0.41 10 0.436 0 0 1.01 test.phys Transportation + 12 0.178 0.408 10 0.42 0.0157 0.029 1.04 test.phys msc + 13 0.146 0.407 9.99 0.412 0.00826 0.0324 1.07 test.phys msc + 14 0.125 0.411 10 0.403 0.009 0.023 1.1 test.phys msc + 15 0.125 0.411 10 0.403 0 0.000248 1.1 World Transportation + 16 -1e+04 2.21e+03 4.08e+03 0.403 3.58e-22 1.1e+04 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 39, Parent ID = 15 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0386 0.16 9.46 8.75 0 0 0 test.phys initStep + 1 -0.049 0.181 10 8.58 0.174 0.542 0.542 World Transportation + 2 457 1.6e+03 1e+04 8.58 2.99e-22 1.01e+04 1.01e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00445 0.0159 1.35 0.063 0 0 0 test.phys initStep - 1 -0.124 0.169 10 0.063 0 8.66 8.66 World Transportation - 2 -148 176 1e+04 0.063 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.0149 0.00626 1.93 11.2 0 0 0 test.phys initStep + 1 -0.0172 0.0326 10 11.2 0 8.07 8.07 World Transportation + 2 -2.8 32.7 1e+04 11.2 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00445 0.0159 1.35 31.9 0 0 0 test.phys initStep - 1 -0.00378 0.0333 2.18 0.401 0 0.83 0.83 test.phys compt - 2 1.36 7.44 0 0.401 0 7.84 8.67 World Transportation - 3 1.85e+03 1e+04 -2.94e+03 0.401 0 1.06e+04 1.06e+04 OutOfWorld Transportation + 0 -0.0149 0.00626 1.93 0.0866 0 0 0 test.phys initStep + 1 0.00161 0.0133 2.93 0.074 0 0.991 0.991 test.phys compt + 2 11.4 12.9 2.66 0.074 0 17.3 18.3 test.phys Rayl + 3 16.7 18.2 1.29 0.0678 0 7.57 25.8 test.phys compt + 4 17 18.3 0 0.0678 0 1.31 27.1 World Transportation + 5 1.97e+03 780 -1e+04 0.0678 0 1.02e+04 1.02e+04 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 68, Parent ID = 13 +* G4Track Information: Particle = e-, Track ID = 42, Parent ID = 13 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00378 0.0333 2.18 31.5 0 0 0 test.phys initStep - 1 0.0204 -0.533 9.15 26.2 2.92 7.03 7.03 test.phys eIoni - 2 -0.00204 -0.544 10 25.8 0.336 0.847 7.87 World Transportation - 3 -506 -327 1e+04 25.8 3.27e-22 1e+04 1e+04 OutOfWorld Transportation + 0 16.7 18.2 1.29 0.00626 0 0 0 test.phys initStep + 1 16.7 18.2 1.29 0 0.00626 0.000603 0.000603 test.phys eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 69, Parent ID = 68 +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 13 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0204 -0.533 9.15 2.4 0 0 0 test.phys initStep - 1 0.131 -0.902 9.6 2.2 0.205 0.603 0.603 test.phys msc - 2 0.176 -1.32 9.77 1.99 0.206 0.463 1.07 test.phys msc - 3 0.289 -1.7 9.86 1.84 0.148 0.418 1.48 test.phys msc - 4 0.497 -2.04 9.79 1.71 0.135 0.416 1.9 test.phys msc - 5 0.633 -2.25 9.69 1.45 0.122 0.274 2.17 test.phys biasWrapper(eBrem) - 6 0.992 -2.53 9.61 1.21 0.24 0.481 2.66 test.phys msc - 7 1.42 -2.76 9.37 1.05 0.158 0.575 3.23 test.phys msc - 8 1.81 -2.85 9.26 0.907 0.143 0.442 3.67 test.phys msc - 9 2.24 -2.98 9.23 0.656 0.251 0.501 4.17 test.phys msc - 10 2.52 -3.16 9.13 0.517 0.139 0.386 4.56 test.phys msc - 11 2.99 -3.07 9.06 0.225 0.292 0.598 5.16 test.phys msc - 12 2.98 -2.99 9.11 0 0.225 0.259 5.42 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 79, Parent ID = 69 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.633 -2.25 9.69 0.00643 0 0 0 test.phys initStep - 1 0.651 -2.3 9.68 0 0.00155 0.054 0.054 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 80, Parent ID = 79 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.651 -2.3 9.68 0.00488 0 0 0 test.phys initStep - 1 0.651 -2.3 9.68 0 0.00488 0.000401 0.000401 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 78, Parent ID = 69 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.633 -2.25 9.69 0.281 0 0 0 test.phys initStep - 1 6.64 -14.6 0 0.281 0 16.8 16.8 World Transportation - 2 4.86e+03 -1e+04 -7.83e+03 0.281 0 1.36e+04 1.36e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 77, Parent ID = 69 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.633 -2.25 9.69 0.161 0 0 0 test.phys initStep - 1 2.25 -3.74 8.57 0.15 0 2.47 2.47 test.phys compt - 2 2.88 -21.2 0 0.15 0 19.5 21.9 World Transportation - 3 360 -1e+04 -4.9e+03 0.15 0 1.11e+04 1.11e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 81, Parent ID = 77 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 2.25 -3.74 8.57 0.0113 0 0 0 test.phys initStep - 1 2.25 -3.74 8.57 0 0.0113 0.00162 0.00162 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 76, Parent ID = 69 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.633 -2.25 9.69 0.146 0 0 0 test.phys initStep - 1 2.34 -3.33 10 0.146 0 2.04 2.04 World Transportation - 2 1e+04 -6.36e+03 1.84e+03 0.146 0 1.2e+04 1.2e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 75, Parent ID = 69 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.633 -2.25 9.69 0.503 0 0 0 test.phys initStep - 1 26.2 -33.5 0 0.503 0 41.5 41.5 World Transportation - 2 8.19e+03 -1e+04 -3.09e+03 0.503 0 1.33e+04 1.33e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 74, Parent ID = 69 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.633 -2.25 9.69 0.21 0 0 0 test.phys initStep - 1 3.9 -10.7 0 0.21 0 13.2 13.2 World Transportation - 2 3.38e+03 -8.7e+03 -1e+04 0.21 0 1.37e+04 1.37e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 73, Parent ID = 69 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.633 -2.25 9.69 0.0225 0 0 0 test.phys initStep - 1 0.696 -3.16 9.84 0 0.00155 0.926 0.926 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 73 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.696 -3.16 9.84 0.0209 0 0 0 test.phys initStep - 1 0.697 -3.16 9.84 0 0.0209 0.00471 0.00471 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 72, Parent ID = 69 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.633 -2.25 9.69 0.303 0 0 0 test.phys initStep - 1 11.5 -11.7 0 0.303 0 17.4 17.4 World Transportation - 2 1e+04 -8.67e+03 -8.89e+03 0.303 0 1.59e+04 1.59e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 71, Parent ID = 69 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.633 -2.25 9.69 0.0603 0 0 0 test.phys initStep - 1 2.98 -4.93 9.06 0.0561 0 3.62 3.62 test.phys compt - 2 3.15 -5.56 10 0.0561 0 1.15 4.76 World Transportation - 3 1.82e+03 -6.71e+03 1e+04 0.0561 0 1.22e+04 1.22e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 71 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 2.98 -4.93 9.06 0.00422 0 0 0 test.phys initStep - 1 2.98 -4.93 9.06 0 0.00422 0.000316 0.000316 test.phys eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 70, Parent ID = 69 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.633 -2.25 9.69 0.136 0 0 0 test.phys initStep - 1 -12.3 -33.7 5.1 0.112 0 34.3 34.3 test.phys compt - 2 -10.2 -35 0 0.112 0 5.67 40 World Transportation - 3 4.08e+03 -2.62e+03 -1e+04 0.112 0 1.11e+04 1.12e+04 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 84, Parent ID = 70 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -12.3 -33.7 5.1 0.024 0 0 0 test.phys initStep - 1 -12.3 -33.7 5.1 0 0.024 0.00597 0.00597 test.phys eIoni + 0 0.00161 0.0133 2.93 0.0125 0 0 0 test.phys initStep + 1 0.00135 0.013 2.93 0 0.0125 0.00195 0.00195 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00445 0.0159 1.35 0.0391 0 0 0 test.phys initStep - 1 -0.0218 0.179 5.02 0 0.00155 3.67 3.67 test.phys phot + 0 -0.0149 0.00626 1.93 0.0115 0 0 0 test.phys initStep + 1 -0.0153 0.00156 2.65 0 0.00155 0.719 0.719 test.phys phot ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 85, Parent ID = 12 +* G4Track Information: Particle = e-, Track ID = 43, Parent ID = 12 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0218 0.179 5.02 0.0375 0 0 0 test.phys initStep - 1 -0.0251 0.178 5.02 0 0.0375 0.013 0.013 test.phys eIoni + 0 -0.0153 0.00156 2.65 0.00992 0 0 0 test.phys initStep + 1 -0.0153 0.00117 2.65 0 0.00992 0.00131 0.00131 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00468 0.0138 1.22 0.0255 0 0 0 test.phys initStep - 1 0.0412 0.0591 9.35 0 0.00155 8.12 8.12 test.phys phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0412 0.0591 9.35 0.024 0 0 0 test.phys initStep - 1 0.0427 0.0589 9.35 0 0.024 0.00595 0.00595 test.phys eIoni + 0 -0.00262 0.00923 0.926 77.5 0 0 0 test.phys initStep + 1 -0.0348 0.0407 10 77.5 0 9.07 9.07 World Transportation + 2 -35.4 34.7 1e+04 77.5 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00468 0.0138 1.22 2.32 0 0 0 test.phys initStep - 1 0.133 -0.00936 10 2.32 0 8.78 8.78 World Transportation - 2 147 -26.4 1e+04 2.32 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.00262 0.00923 0.926 5.16 0 0 0 test.phys initStep + 1 -0.167 0.208 10 5.16 0 9.08 9.08 World Transportation + 2 -181 219 1e+04 5.16 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00468 0.0138 1.22 0.544 0 0 0 test.phys initStep - 1 0.211 0.0486 10 0.544 0 8.78 8.78 World Transportation - 2 235 39.7 1e+04 0.544 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.00262 0.00923 0.926 0.0673 0 0 0 test.phys initStep + 1 -0.00829 0.0202 2.82 0 0.00155 1.89 1.89 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 44, Parent ID = 9 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.00829 0.0202 2.82 0.0658 0 0 0 test.phys initStep + 1 -0.0193 0.0213 2.82 0 0.0658 0.0341 0.0341 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00468 0.0138 1.22 0.707 0 0 0 test.phys initStep - 1 0.0639 0.114 10 0.707 0 8.78 8.78 World Transportation - 2 67.5 115 1e+04 0.707 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.00262 0.00923 0.926 0.0104 0 0 0 test.phys initStep + 1 -0.00263 0.0128 1.03 0 0.00155 0.0992 0.0992 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 45, Parent ID = 8 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.00263 0.0128 1.03 0.00881 0 0 0 test.phys initStep + 1 -0.00235 0.0126 1.03 0 0.00881 0.00107 0.00107 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00468 0.0138 1.22 0.217 0 0 0 test.phys initStep - 1 0.0605 0.149 10 0.217 0 8.78 8.78 World Transportation - 2 63.6 154 1e+04 0.217 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.00262 0.00923 0.926 0.0493 0 0 0 test.phys initStep + 1 -0.0292 0.033 3.74 0 0.00155 2.82 2.82 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 7 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0292 0.033 3.74 0.0478 0 0 0 test.phys initStep + 1 -0.0231 0.0353 3.74 0 0.0478 0.0197 0.0197 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00468 0.0138 1.22 0.022 0 0 0 test.phys initStep - 1 0.0286 0.0409 3.28 0 0.00155 2.05 2.05 test.phys phot + 0 -0.00262 0.00923 0.926 0.0145 0 0 0 test.phys initStep + 1 -0.00387 0.00931 0.959 0 0.00155 0.0333 0.0333 test.phys phot ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 87, Parent ID = 6 +* G4Track Information: Particle = e-, Track ID = 47, Parent ID = 6 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0286 0.0409 3.28 0.0205 0 0 0 test.phys initStep - 1 0.0278 0.0397 3.28 0 0.0205 0.00453 0.00453 test.phys eIoni + 0 -0.00387 0.00931 0.959 0.013 0 0 0 test.phys initStep + 1 -0.00424 0.00973 0.96 0 0.013 0.00207 0.00207 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00468 0.0138 1.22 19.7 0 0 0 test.phys initStep - 1 0.027 0.123 10 19.7 0 8.78 8.78 World Transportation - 2 25.4 124 1e+04 19.7 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.00262 0.00923 0.926 0.899 0 0 0 test.phys initStep + 1 -0.142 0.189 10 0.899 0 9.08 9.08 World Transportation + 2 -154 198 1e+04 0.899 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00468 0.0138 1.22 14.6 0 0 0 test.phys initStep - 1 -0.00212 0.137 10 14.6 0 8.78 8.78 World Transportation - 2 -7.74 141 1e+04 14.6 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.00262 0.00923 0.926 0.0235 0 0 0 test.phys initStep + 1 -0.0255 0.00559 2.9 0 0.00155 1.97 1.97 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0255 0.00559 2.9 0.0219 0 0 0 test.phys initStep + 1 -0.024 0.00496 2.9 0 0.0219 0.0051 0.0051 test.phys eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00468 0.0138 1.22 11.6 0 0 0 test.phys initStep - 1 0.0386 0.15 10 11.6 0 8.78 8.78 World Transportation - 2 38.6 156 1e+04 11.6 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.00262 0.00923 0.926 0.839 0 0 0 test.phys initStep + 1 -0.0426 0.0174 10 0.839 0 9.07 9.07 World Transportation + 2 -44 9.05 1e+04 0.839 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00468 0.0138 1.22 40.2 0 0 0 test.phys initStep - 1 0.0484 0.0999 10 40.2 0 8.78 8.78 World Transportation - 2 49.9 98.1 1e+04 40.2 0 9.99e+03 1e+04 OutOfWorld Transportation + 0 -0.00262 0.00923 0.926 0.335 0 0 0 test.phys initStep + 1 -0.0355 -0.0538 10 0.335 0 9.07 9.07 World Transportation + 2 -36.3 -69.5 1e+04 0.335 0 9.99e+03 1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -4441,21 +2991,664 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 -1e+03 100 0 0 0 World initStep 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation - 2 -0.145 -0.154 7.28 97 2.53 7.28 1.01e+03 test.phys eIoni - 3 -0.198 -0.181 10 95.8 1.17 2.73 1.01e+03 World Transportation - 4 -285 15.2 1e+04 95.8 3.66e-22 9.99e+03 1.1e+04 OutOfWorld Transportation + 2 -0.102 0.0468 4.77 97.6 2.34 4.77 1e+03 test.phys biasWrapper(eBrem) + 3 -0.143 0.0474 6.21 94.8 0.445 1.44 1.01e+03 test.phys biasWrapper(eBrem) + 4 -0.258 -0.0435 10 92.9 1.84 3.8 1.01e+03 World Transportation + 5 -541 -232 1e+04 92.9 3.66e-22 1e+04 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 21, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.143 0.0474 6.21 0.0142 0 0 0 test.phys initStep + 1 -0.146 0.0423 6.38 0 0.00155 0.171 0.171 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.146 0.0423 6.38 0.0126 0 0 0 test.phys initStep + 1 -0.145 0.0421 6.38 0 0.0126 0.00197 0.00197 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 20, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.143 0.0474 6.21 0.0215 0 0 0 test.phys initStep + 1 -0.213 -0.0118 8.36 0 0.00155 2.16 2.16 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 20 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.213 -0.0118 8.36 0.0199 0 0 0 test.phys initStep + 1 -0.214 -0.012 8.36 0 0.0199 0.00433 0.00433 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 19, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.143 0.0474 6.21 35.2 0 0 0 test.phys initStep + 1 -0.292 -0.0626 10 35.2 0 3.8 3.8 World Transportation + 2 -395 -290 1e+04 35.2 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 18, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.143 0.0474 6.21 34.8 0 0 0 test.phys initStep + 1 -0.274 -0.0375 10 34.8 0 3.8 3.8 World Transportation + 2 -347 -224 1e+04 34.8 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.143 0.0474 6.21 0.0538 0 0 0 test.phys initStep + 1 -0.254 -0.0714 10 0.0538 0 3.8 3.8 World Transportation + 2 -293 -313 1e+04 0.0538 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 16, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.143 0.0474 6.21 0.518 0 0 0 test.phys initStep + 1 -0.255 -0.0351 10 0.518 0 3.8 3.8 World Transportation + 2 -295 -217 1e+04 0.518 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.143 0.0474 6.21 19.9 0 0 0 test.phys initStep + 1 -0.183 0.0125 7.64 13.6 0 1.44 1.44 test.phys compt + 2 -0.000942 0.224 10 13.6 0 2.38 3.81 World Transportation + 3 770 895 1e+04 13.6 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 15 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.183 0.0125 7.64 6.31 0 0 0 test.phys initStep + 1 -0.774 -0.613 10 4.87 1.44 2.64 2.64 World Transportation + 2 -1e+04 -1.81e+03 7.95e+03 4.87 3.62e-22 1.29e+04 1.29e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.143 0.0474 6.21 0.448 0 0 0 test.phys initStep + 1 -0.221 -0.0493 10 0.448 0 3.8 3.8 World Transportation + 2 -207 -255 1e+04 0.448 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.143 0.0474 6.21 0.0206 0 0 0 test.phys initStep + 1 -0.178 0.0408 7.12 0 0.00155 0.914 0.914 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 13 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.178 0.0408 7.12 0.0191 0 0 0 test.phys initStep + 1 -0.178 0.0408 7.12 0 0.0191 0.00402 0.00402 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.143 0.0474 6.21 2.43 0 0 0 test.phys initStep + 1 -0.24 0.00783 10 2.43 0 3.8 3.8 World Transportation + 2 -256 -104 1e+04 2.43 0 9.99e+03 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.102 0.0468 4.77 0.804 0 0 0 test.phys initStep + 1 -0.263 0.126 10 0.804 0 5.24 5.24 World Transportation + 2 -307 150 1e+04 0.804 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.102 0.0468 4.77 32 0 0 0 test.phys initStep + 1 -0.282 0.124 10 32 0 5.24 5.24 World Transportation + 2 -345 147 1e+04 32 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.102 0.0468 4.77 45.3 0 0 0 test.phys initStep + 1 -0.271 0.109 10 45.3 0 5.24 5.24 World Transportation + 2 -324 118 1e+04 45.3 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.102 0.0468 4.77 0.0761 0 0 0 test.phys initStep + 1 -0.241 0.174 10 0.0761 0 5.24 5.24 World Transportation + 2 -265 242 1e+04 0.0761 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.102 0.0468 4.77 0.00605 0 0 0 test.phys initStep + 1 -0.106 0.0514 4.85 0 0.00155 0.085 0.085 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 7 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.106 0.0514 4.85 0.0045 0 0 0 test.phys initStep + 1 -0.106 0.0515 4.85 0 0.0045 0.000351 0.000351 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.102 0.0468 4.77 0.86 0 0 0 test.phys initStep + 1 -0.315 0.175 10 0.86 0 5.24 5.24 World Transportation + 2 -408 245 1e+04 0.86 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.102 0.0468 4.77 0.0226 0 0 0 test.phys initStep + 1 -0.201 0.0219 7.41 0 0.00155 2.65 2.65 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.201 0.0219 7.41 0.0211 0 0 0 test.phys initStep + 1 -0.2 0.0218 7.41 0 0.0211 0.00477 0.00477 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.102 0.0468 4.77 17.9 0 0 0 test.phys initStep + 1 -0.237 0.0783 10 17.9 0 5.23 5.23 World Transportation + 2 -258 60.2 1e+04 17.9 0 9.99e+03 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.102 0.0468 4.77 10.4 0 0 0 test.phys initStep + 1 -0.295 0.11 10 10.4 0 5.24 5.24 World Transportation + 2 -368 122 1e+04 10.4 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.102 0.0468 4.77 0.0129 0 0 0 test.phys initStep + 1 -0.122 0.0551 5.34 0 0.00155 0.574 0.574 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 28, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.122 0.0551 5.34 0.0113 0 0 0 test.phys initStep + 1 -0.122 0.0548 5.34 0 0.0113 0.00164 0.00164 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -1e+03 100 0 0 0 World initStep + 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation + 2 -0.0524 0.0755 4.18 93.7 1.38 4.18 1e+03 test.phys biasWrapper(eBrem) + 3 -0.152 0.159 5.07 86.2 0.295 0.901 1.01e+03 test.phys biasWrapper(eBrem) + 4 -0.772 0.636 10 84.4 1.8 5 1.01e+03 World Transportation + 5 -1.11e+03 1.34e+03 1e+04 84.4 3.68e-22 1.01e+04 1.11e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 21, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.152 0.159 5.07 3.89 0 0 0 test.phys initStep + 1 -0.797 0.704 10 3.89 0 5 5 World Transportation + 2 -1.31e+03 1.11e+03 1e+04 3.89 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 20, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.152 0.159 5.07 0.154 0 0 0 test.phys initStep + 1 -0.221 0.214 5.6 0.118 0 0.542 0.542 test.phys compt + 2 14.6 -29 10 0.118 0 33 33.5 World Transportation + 3 5.07e+03 -1e+04 1.51e+03 0.118 0 1.13e+04 1.13e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 20 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.221 0.214 5.6 0.036 0 0 0 test.phys initStep + 1 -0.223 0.217 5.6 0 0.036 0.0121 0.0121 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 19, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.152 0.159 5.07 0.0936 0 0 0 test.phys initStep + 1 -0.766 0.66 10 0.0936 0 5 5 World Transportation + 2 -1.25e+03 1.01e+03 1e+04 0.0936 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 18, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.152 0.159 5.07 0.0193 0 0 0 test.phys initStep + 1 -0.226 0.219 5.69 0 0.00155 0.626 0.626 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 18 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.226 0.219 5.69 0.0178 0 0 0 test.phys initStep + 1 -0.227 0.218 5.69 0 0.0178 0.00355 0.00355 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 17, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.152 0.159 5.07 0.924 0 0 0 test.phys initStep + 1 -0.837 0.597 10 0.924 0 5 5 World Transportation + 2 -1.39e+03 889 1e+04 0.924 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 16, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.152 0.159 5.07 16.3 0 0 0 test.phys initStep + 1 -0.761 0.647 10 16.3 0 4.99 4.99 World Transportation + 2 -1.23e+03 990 1e+04 16.3 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 15, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.152 0.159 5.07 0.0196 0 0 0 test.phys initStep + 1 -0.259 0.324 6.28 0 0.00155 1.23 1.23 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 15 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.259 0.324 6.28 0.0181 0 0 0 test.phys initStep + 1 -0.26 0.323 6.29 0 0.0181 0.00366 0.00366 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 14, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.152 0.159 5.07 78.1 0 0 0 test.phys initStep + 1 -0.796 0.638 10 78.1 0 5 5 World Transportation + 2 -1.3e+03 971 1e+04 78.1 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 13, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.152 0.159 5.07 1.07 0 0 0 test.phys initStep + 1 -0.765 0.673 10 1.07 0 5 5 World Transportation + 2 -1.24e+03 1.04e+03 1e+04 1.07 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.152 0.159 5.07 7.2 0 0 0 test.phys initStep + 1 -0.73 0.686 10 7.2 0 4.99 4.99 World Transportation + 2 -1.17e+03 1.07e+03 1e+04 7.2 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0524 0.0755 4.18 0.0145 0 0 0 test.phys initStep + 1 -0.0779 0.0985 4.42 0 0.00155 0.251 0.251 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 11 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0779 0.0985 4.42 0.013 0 0 0 test.phys initStep + 1 -0.0773 0.0985 4.42 0 0.013 0.00206 0.00206 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0524 0.0755 4.18 0.212 0 0 0 test.phys initStep + 1 -0.637 0.612 10 0.212 0 5.88 5.88 World Transportation + 2 -1e+03 920 1e+04 0.212 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0524 0.0755 4.18 52.1 0 0 0 test.phys initStep + 1 -0.573 0.7 10 52.1 0 5.88 5.88 World Transportation + 2 -893 1.07e+03 1e+04 52.1 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0524 0.0755 4.18 67.4 0 0 0 test.phys initStep + 1 -0.648 0.58 10 67.4 0 5.88 5.88 World Transportation + 2 -1.02e+03 867 1e+04 67.4 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0524 0.0755 4.18 0.0944 0 0 0 test.phys initStep + 1 -0.64 0.605 10 0.0944 0 5.88 5.88 World Transportation + 2 -1.01e+03 910 1e+04 0.0944 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0524 0.0755 4.18 1.38 0 0 0 test.phys initStep + 1 -0.573 0.579 10 1.38 0 5.87 5.87 World Transportation + 2 -893 864 1e+04 1.38 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0524 0.0755 4.18 0.959 0 0 0 test.phys initStep + 1 -0.639 0.599 10 0.959 0 5.88 5.88 World Transportation + 2 -1.01e+03 899 1e+04 0.959 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0524 0.0755 4.18 0.435 0 0 0 test.phys initStep + 1 -0.604 0.558 10 0.435 0 5.87 5.87 World Transportation + 2 -946 827 1e+04 0.435 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0524 0.0755 4.18 0.171 0 0 0 test.phys initStep + 1 -0.619 0.606 10 0.171 0 5.88 5.88 World Transportation + 2 -972 911 1e+04 0.171 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0524 0.0755 4.18 4.94 0 0 0 test.phys initStep + 1 -0.653 0.554 10 4.94 0 5.87 5.87 World Transportation + 2 -1.03e+03 822 1e+04 4.94 0 1.01e+04 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -1e+03 100 0 0 0 World initStep + 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation + 2 -0.285 0.0804 9.1 95.4 3.69 9.11 1.01e+03 test.phys eIoni + 3 -0.295 0.0727 10 95 0.441 0.901 1.01e+03 World Transportation + 4 -195 -180 1e+04 95 3.66e-22 9.99e+03 1.1e+04 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.145 -0.154 7.28 0.483 0 0 0 test.phys initStep - 1 -0.375 -0.249 7.44 0 0.483 0.802 0.802 test.phys eIoni + 0 -0.285 0.0804 9.1 0.888 0 0 0 test.phys initStep + 1 -0.203 0.544 9.21 0.702 0.186 0.534 0.534 test.phys msc + 2 -0.317 0.753 8.87 0.564 0.139 0.471 1 test.phys msc + 3 -0.647 0.915 8.81 0 0.564 0.991 2 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -1e+03 100 0 0 0 World initStep + 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation + 2 0 0 10 96.3 3.69 10 1.01e+03 World Transportation + 3 -499 -257 1e+04 96.3 3.67e-22 1e+04 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -1e+03 100 0 0 0 World initStep + 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation + 2 0 0 10 96.2 3.79 10 1.01e+03 World Transportation + 3 730 -350 1e+04 96.2 3.67e-22 1e+04 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -1e+03 100 0 0 0 World initStep + 1 0 0 0 100 3.68e-23 1e+03 1e+03 test.phys Transportation + 2 0.0268 -0.0947 4.37 96 1.67 4.37 1e+03 test.phys biasWrapper(eBrem) + 3 0.127 -0.292 9.61 91.8 1.94 5.25 1.01e+03 test.phys eIoni + 4 0.133 -0.304 10 91.7 0.15 0.387 1.01e+03 World Transportation + 5 228 -378 1e+04 91.7 3.65e-22 1e+04 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.127 -0.292 9.61 2.26 0 0 0 test.phys initStep + 1 0.261 -0.532 9.97 2.12 0.135 0.474 0.474 test.phys msc + 2 0.25 -0.552 10 2.11 0.00818 0.0362 0.51 World Transportation + 3 -5.62e+03 -8.55e+03 1e+04 2.11 3.81e-22 1.43e+04 1.43e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0268 -0.0947 4.37 0.039 0 0 0 test.phys initStep + 1 0.0238 -0.123 5.03 0 0.00155 0.663 0.663 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 11 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0238 -0.123 5.03 0.0374 0 0 0 test.phys initStep + 1 0.0237 -0.127 5.03 0 0.0374 0.0129 0.0129 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0268 -0.0947 4.37 0.433 0 0 0 test.phys initStep + 1 0.00442 -0.191 6.73 0.168 0 2.36 2.36 test.phys compt + 2 0.871 -3.74 0 0.168 0 7.65 10 World Transportation + 3 1.29e+03 -5.28e+03 -1e+04 0.168 0 1.14e+04 1.14e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 10 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.00442 -0.191 6.73 0.265 0 0 0 test.phys initStep + 1 -0.000277 -0.179 6.84 0 0.265 0.335 0.335 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 9, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0268 -0.0947 4.37 0.0644 0 0 0 test.phys initStep + 1 -0.0038 -0.299 9.26 0 0.00155 4.89 4.89 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 9 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0038 -0.299 9.26 0.0628 0 0 0 test.phys initStep + 1 -0.0124 -0.298 9.26 0 0.0628 0.0316 0.0316 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 8, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0268 -0.0947 4.37 1.41 0 0 0 test.phys initStep + 1 -0.0212 -0.312 10 1.41 0 5.63 5.63 World Transportation + 2 -85.3 -386 1e+04 1.41 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0268 -0.0947 4.37 0.0204 0 0 0 test.phys initStep + 1 0.029 -0.107 4.69 0 0.00155 0.317 0.317 test.phys phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 7 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.029 -0.107 4.69 0.0189 0 0 0 test.phys initStep + 1 0.0283 -0.106 4.69 0 0.0189 0.00393 0.00393 test.phys eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0268 -0.0947 4.37 0.139 0 0 0 test.phys initStep + 1 -0.00532 -0.308 10 0.139 0 5.63 5.63 World Transportation + 2 -57 -378 1e+04 0.139 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0268 -0.0947 4.37 0.35 0 0 0 test.phys initStep + 1 -0.0268 -0.338 10 0.35 0 5.63 5.63 World Transportation + 2 -95.2 -432 1e+04 0.35 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0268 -0.0947 4.37 1.3 0 0 0 test.phys initStep + 1 0.0306 -0.344 10 1.3 0 5.63 5.63 World Transportation + 2 6.66 -442 1e+04 1.3 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0268 -0.0947 4.37 6.23 0 0 0 test.phys initStep + 1 0.00597 -0.351 10 6.23 0 5.64 5.64 World Transportation + 2 -37 -456 1e+04 6.23 0 1e+04 1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0268 -0.0947 4.37 2.28 0 0 0 test.phys initStep + 1 0.0267 -0.0949 4.37 1.26 0 0.00307 0.00307 test.phys compt + 2 -1.34 -4.44 10 1.26 0 7.24 7.24 World Transportation + 3 -2.42e+03 -7.72e+03 1e+04 1.26 0 1.29e+04 1.29e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0267 -0.0949 4.37 1.02 0 0 0 test.phys initStep + 1 0.115 0.264 5.13 0.234 0.789 1.65 1.65 test.phys eIoni + 2 0.0346 0.211 5.12 0 0.234 0.276 1.93 test.phys eIoni Run terminated. Run Summary Number of events processed : 10 - User=0.010000s Real=0.011804s Sys=0.000000s + User=0.010000s Real=0.006459s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. @@ -4474,12 +3667,12 @@ Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB Pool ID '7G4Event', size : 0.000961 MB Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.00673 MB -Pool ID '7G4Track', size : 0.0135 MB +Pool ID '17G4DynamicParticle', size : 0.00577 MB +Pool ID '7G4Track', size : 0.0106 MB Pool ID '18G4TouchableHistory', size : 0.000961 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Number of memory pools allocated: 9 of which, static: 0 -Dynamic pools deleted: 9 / Total memory freed: 0.034 MB +Dynamic pools deleted: 9 / Total memory freed: 0.03 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/extended/biasing/GB05/CMakeLists.txt b/examples/extended/biasing/GB05/CMakeLists.txt index 59b4654227..851379cf75 100644 --- a/examples/extended/biasing/GB05/CMakeLists.txt +++ b/examples/extended/biasing/GB05/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(GB05project) #---------------------------------------------------------------------------- diff --git a/examples/extended/biasing/GB05/History b/examples/extended/biasing/GB05/History index 92807b42a9..3f7e422b17 100644 --- a/examples/extended/biasing/GB05/History +++ b/examples/extended/biasing/GB05/History @@ -16,6 +16,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 Ben Morgan - GB05-V10-06-00 +- Migration to G4RunManagerFactory. + May 20, 2018 J. Allison - GB05-V10-04-01 - Remove G4UI_USE and G4VIS_USE. - Move instantiation of G4UIExecutive nearer to start of main. diff --git a/examples/extended/biasing/GB05/exampleGB05.cc b/examples/extended/biasing/GB05/exampleGB05.cc index 521f1af4ce..39aeda28ac 100644 --- a/examples/extended/biasing/GB05/exampleGB05.cc +++ b/examples/extended/biasing/GB05/exampleGB05.cc @@ -29,11 +29,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "GB05ActionInitialization.hh" #include "G4UImanager.hh" @@ -98,18 +94,8 @@ int main(int argc,char** argv) } // -- Construct the run manager : MT or sequential one -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - G4cout << " ********** Run Manager constructed in MT mode ************ " - << G4endl; - // -- Choose 4 threads: + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(4); -#else - G4RunManager * runManager = new G4RunManager; - G4cout << " ********** Run Manager constructed in sequential mode ************ " - << G4endl; -#endif - // -- Set mandatory initialization classes GB05DetectorConstruction* detector = new GB05DetectorConstruction(); diff --git a/examples/extended/biasing/GB05/exampleGB05.out b/examples/extended/biasing/GB05/exampleGB05.out index b989eac9c4..ccec227d99 100644 --- a/examples/extended/biasing/GB05/exampleGB05.out +++ b/examples/extended/biasing/GB05/exampleGB05.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,7 +13,6 @@ WWW : http://geant4.org/ ************************************************************** - ********** Run Manager constructed in sequential mode ************ <<< Geant4 Physics List simulation engine: FTFP_BERT ********************************************************* @@ -20,7 +20,7 @@ ********************************************************* Attaching biasing operator SplitAndKillByXS to logical volume SplitAndKillByXS - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -43,10 +43,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -104,10 +106,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -131,10 +134,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -162,9 +166,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -178,14 +182,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -194,9 +198,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -208,9 +212,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -221,9 +225,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -237,14 +241,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -253,9 +257,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -269,14 +273,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -285,9 +289,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -301,14 +305,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -317,9 +321,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -334,14 +338,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -350,9 +354,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -367,14 +371,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -383,9 +387,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -399,14 +403,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -415,9 +419,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -431,14 +435,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -467,6 +471,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -541,6 +567,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -652,8 +691,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -718,8 +757,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -760,1483 +799,1755 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. - neutron, kinetic energy (MeV) = 0.573036, position (cm) = (-47.6832,-21.7342,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 0.000735377, position (cm) = (30.8847,-53.1428,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.0677927, position (cm) = (5.70507,-110.885,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 0.646034, position (cm) = (12.8578,-104.437,200), weight = 2.98023e-08 - gamma, kinetic energy (MeV) = 0.771927, position (cm) = (7.63706,-105.374,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 2.34962, position (cm) = (11.2226,-108.853,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 3.60415e-05, position (cm) = (-4.66203,-102.129,200), weight = 5.96046e-08 - gamma, kinetic energy (MeV) = 5.34704, position (cm) = (1.41775,-121.717,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 5.16585, position (cm) = (-0.903157,-122.302,200), weight = 7.45058e-09 - neutron, kinetic energy (MeV) = 5.16585, position (cm) = (-0.903157,-122.302,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 5.16585, position (cm) = (-0.903157,-122.302,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 5.16585, position (cm) = (-0.903157,-122.302,200), weight = 1.49012e-08 - gamma, kinetic energy (MeV) = 0.187497, position (cm) = (6.07828,-125.19,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 6.18532e-07, position (cm) = (-13.0017,-132.485,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 0.00964386, position (cm) = (37.7596,-74.2913,200), weight = 2.98023e-08 - gamma, kinetic energy (MeV) = 0.206951, position (cm) = (32.4797,-76.3849,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 0.782785, position (cm) = (29.0845,-87.3983,200), weight = 2.98023e-08 - gamma, kinetic energy (MeV) = 0.130664, position (cm) = (17.2344,-76.187,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 1.05214, position (cm) = (27.7826,-55.3591,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 2.7292, position (cm) = (-111.369,-45.9999,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 1.91449, position (cm) = (-125.646,-105.587,200), weight = 4.76837e-07 - gamma, kinetic energy (MeV) = 1.82913, position (cm) = (-139.376,-98.5571,200), weight = 7.45058e-09 - gamma, kinetic energy (MeV) = 0.122138, position (cm) = (-148.066,-140.997,200), weight = 2.32831e-10 - gamma, kinetic energy (MeV) = 0.164655, position (cm) = (-150.442,-129.65,200), weight = 5.82077e-11 - neutron, kinetic energy (MeV) = 1.60209, position (cm) = (-129.431,-160.35,200), weight = 2.91038e-11 - neutron, kinetic energy (MeV) = 2.3968, position (cm) = (-134.168,-161.396,200), weight = 2.91038e-11 - neutron, kinetic energy (MeV) = 10.8947, position (cm) = (-150.301,-134.492,200), weight = 5.82077e-11 - gamma, kinetic energy (MeV) = 0.0999845, position (cm) = (-105.327,-27.9239,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 5.07922, position (cm) = (-119.24,-118.856,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.174776, position (cm) = (-134.185,-80.8473,200), weight = 7.45058e-09 - neutron, kinetic energy (MeV) = 0.00670209, position (cm) = (-137.634,-85.8642,200), weight = 7.45058e-09 - gamma, kinetic energy (MeV) = 0.178486, position (cm) = (-140.278,-118.241,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 1.0571, position (cm) = (-125.361,-34.8934,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 3.36503, position (cm) = (-129.909,-49.4775,200), weight = 2.98023e-08 - gamma, kinetic energy (MeV) = 1.67877, position (cm) = (-62.0893,-36.4024,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 2.19677, position (cm) = (-41.809,-4.835,200), weight = 2.38419e-07 - gamma, kinetic energy (MeV) = 0.0912803, position (cm) = (-87.1486,-13.6383,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 0.261352, position (cm) = (-80.3961,-23.372,200), weight = 2.38419e-07 - gamma, kinetic energy (MeV) = 0.0691535, position (cm) = (-124.631,-44.5684,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 1.17549e-05, position (cm) = (-64.3733,-27.538,200), weight = 2.38419e-07 - gamma, kinetic energy (MeV) = 2.01939, position (cm) = (-36.6056,-88.5983,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 2.85459, position (cm) = (-84.4088,-53.0136,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 0.0818393, position (cm) = (159.869,-7.95916,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.145463, position (cm) = (183.052,-14.2058,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.281271, position (cm) = (181.413,-10.3301,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 0.000215312, position (cm) = (178.264,-8.48291,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.125395, position (cm) = (148.83,-21.9021,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 58.4035, position (cm) = (171.94,-24.5893,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 58.6659, position (cm) = (170.229,-14.8679,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.0861911, position (cm) = (120.31,24.236,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.917337, position (cm) = (168.378,12.7819,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 46.8917, position (cm) = (165.459,29.6992,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.15799, position (cm) = (142.591,-10.5922,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.108482, position (cm) = (152.948,8.83036,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.0948415, position (cm) = (188.641,2.92952,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 6.99103, position (cm) = (146.936,9.21684,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 57.1557, position (cm) = (156.44,18.3337,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 57.1557, position (cm) = (156.44,18.3337,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 1.28972, position (cm) = (176.911,15.5454,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 11.7555, position (cm) = (177.5,18.9116,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 11.7555, position (cm) = (177.5,18.9116,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.119002, position (cm) = (163.871,-3.75869,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 0.0009301, position (cm) = (159.641,48.0593,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 2.39736, position (cm) = (175.932,43.7887,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 58.7222, position (cm) = (190.788,0.187178,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 58.8284, position (cm) = (189.284,0.721962,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.299487, position (cm) = (188.942,-5.41598,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.119165, position (cm) = (157.322,-41.931,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 25.7618, position (cm) = (174.696,-23.479,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 24.692, position (cm) = (173.256,-20.8249,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 25.15, position (cm) = (175.042,-19.9199,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 25.5848, position (cm) = (173.31,-25.7785,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 25.3355, position (cm) = (172.991,-25.7212,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 1.88725, position (cm) = (166.7,-39.2224,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 23.5808, position (cm) = (173.026,-22.7615,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 2.70392e-06, position (cm) = (160.983,-26.1415,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 1.25044, position (cm) = (163.258,-31.0765,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.0868717, position (cm) = (172.364,-24.5699,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 35.7667, position (cm) = (160.485,-27.1257,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 2.35708, position (cm) = (160.765,-21.8241,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 35.7667, position (cm) = (160.485,-27.1257,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 35.7667, position (cm) = (160.485,-27.1257,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 32.277, position (cm) = (181.825,-58.9298,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 0.525186, position (cm) = (194.201,-48.3834,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 0.448462, position (cm) = (173.417,-46.4672,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 3.91032, position (cm) = (178.052,-45.2971,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.138164, position (cm) = (184.111,-47.2572,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 4.39208, position (cm) = (175.842,-43.8725,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.285304, position (cm) = (198.441,-41.561,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 32.5777, position (cm) = (177.633,-44.5314,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 31.99, position (cm) = (179.716,-44.8406,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 0.285125, position (cm) = (178.085,-52.5458,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 7.39485, position (cm) = (176.358,-43.7267,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 16.7904, position (cm) = (174.107,-36.8367,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.140862, position (cm) = (223.83,1.63277,200), weight = 5.96046e-08 - gamma, kinetic energy (MeV) = 0.388028, position (cm) = (221.865,2.45399,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 1.21461, position (cm) = (222.591,0.959054,200), weight = 5.96046e-08 - gamma, kinetic energy (MeV) = 1.13909, position (cm) = (220.492,-2.28294,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 0.378174, position (cm) = (217.777,-2.27161,200), weight = 2.98023e-08 - gamma, kinetic energy (MeV) = 0.643078, position (cm) = (213.803,7.35388,200), weight = 2.98023e-08 - gamma, kinetic energy (MeV) = 3.98501, position (cm) = (226.556,-3.8632,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 0.314911, position (cm) = (201.769,-37.3207,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 5.18036, position (cm) = (230.175,-20.2792,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 3.15072, position (cm) = (197.917,-27.0191,200), weight = 4.76837e-07 - neutron, kinetic energy (MeV) = 0.641883, position (cm) = (215.082,-25.8615,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.510999, position (cm) = (176.127,-13.2209,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 0.425523, position (cm) = (158.155,-35.0206,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 45.3561, position (cm) = (172.047,-19.6421,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.844817, position (cm) = (169.111,-19.3207,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 40.9519, position (cm) = (177.561,-20.6643,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 45.7152, position (cm) = (172.84,-19.8311,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 45.7152, position (cm) = (172.84,-19.8311,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 45.8759, position (cm) = (172.907,-24.2183,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 45.8759, position (cm) = (172.907,-24.2183,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 45.8759, position (cm) = (172.907,-24.2183,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 45.8759, position (cm) = (172.907,-24.2183,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 54.0732, position (cm) = (61.1734,39.3436,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 54.2652, position (cm) = (41.096,41.7966,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 54.2652, position (cm) = (41.096,41.7966,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 54.2652, position (cm) = (41.096,41.7966,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 1.03264, position (cm) = (19.6309,48.1793,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 0.439263, position (cm) = (96.1894,89.1395,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.0729453, position (cm) = (112.284,90.4895,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.173628, position (cm) = (109.394,98.5259,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 11.0081, position (cm) = (118.532,89.3099,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 28.1792, position (cm) = (113.347,98.4063,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.179128, position (cm) = (128.646,105.914,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.0535713, position (cm) = (118.782,94.49,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.316581, position (cm) = (100.263,78.8088,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 40.5062, position (cm) = (129.86,102.212,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 1.20266, position (cm) = (108.253,97.9762,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 1.29164, position (cm) = (106.201,78.8581,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 0.618898, position (cm) = (98.783,82.6495,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 1.31419, position (cm) = (107.616,95.6667,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 4.7304, position (cm) = (118.47,85.2755,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.0910511, position (cm) = (114.831,89.4583,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 8.08858, position (cm) = (115.94,94.2738,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 6.4939, position (cm) = (122.004,99.0989,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.78272, position (cm) = (113.063,103.975,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.52896, position (cm) = (126.683,108.355,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.226459, position (cm) = (117.253,94.044,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.510999, position (cm) = (110.752,94.6089,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 16.3984, position (cm) = (121.65,102.273,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 40.245, position (cm) = (120.438,102.459,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.456044, position (cm) = (54.4207,70.8411,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 73.6655, position (cm) = (55.5706,52.7218,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 98.7757, position (cm) = (41.6454,35.2469,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.173369, position (cm) = (52.9514,39.1732,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 10.8707, position (cm) = (44.9023,62.3475,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.103519, position (cm) = (50.4343,61.5674,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 1.5854, position (cm) = (51.1226,41.5682,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 8.50992, position (cm) = (34.511,52.6772,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 10.5377, position (cm) = (31.8569,47.9341,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 0.00124876, position (cm) = (45.5145,66.5441,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.107749, position (cm) = (46.1932,73.0721,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 1.56827, position (cm) = (46.8672,57.6713,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 43.2833, position (cm) = (56.7616,59.6719,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 43.3405, position (cm) = (61.661,66.107,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.574989, position (cm) = (63.6786,45.3611,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 1.41788, position (cm) = (58.7544,49.7961,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 43.5844, position (cm) = (48.1881,64.118,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 43.2418, position (cm) = (54.5576,59.3782,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.510999, position (cm) = (34.8379,57.7209,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.56505, position (cm) = (33.3547,35.4625,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 0.631311, position (cm) = (33.5138,29.5584,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 0.146171, position (cm) = (33.2044,30.8378,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 84.0896, position (cm) = (48.3919,36.6355,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.344407, position (cm) = (32.494,29.408,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 1.19136, position (cm) = (39.7443,41.0635,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.0637842, position (cm) = (42.0618,38.8935,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 98.7757, position (cm) = (41.6454,35.2469,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 98.6003, position (cm) = (40.7183,35.1342,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 97.7855, position (cm) = (63.474,37.2226,200), weight = 0.015625 - gamma, kinetic energy (MeV) = 0.894928, position (cm) = (68.7423,38.9639,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 7.48959, position (cm) = (64.1711,32.5369,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 89.2031, position (cm) = (63.0894,36.846,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 97.7855, position (cm) = (63.474,37.2226,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 73.3239, position (cm) = (4.09526,-7.56181,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.158416, position (cm) = (5.6472,-14.4368,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.812313, position (cm) = (4.90988,-24.7469,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 6.74606, position (cm) = (4.36223,-25.6649,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.299306, position (cm) = (3.80982,-5.54257,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.294267, position (cm) = (7.08618,-7.65199,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 5.53458, position (cm) = (4.5141,-8.31016,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 6.02562, position (cm) = (2.79974,-5.23242,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.154001, position (cm) = (-10.2835,-4.83534,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 4.48206, position (cm) = (-5.88904,-6.12789,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 36.8215, position (cm) = (62.6325,-30.5034,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 1.59815, position (cm) = (80.1578,-30.8565,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 0.00509729, position (cm) = (58.0433,-31.7592,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 5.54071, position (cm) = (83.7316,-45.6129,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 43.1119, position (cm) = (74.4336,-14.0211,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 1.40497, position (cm) = (82.4567,-23.7722,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 4.93616, position (cm) = (83.5611,-27.005,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 73.9018, position (cm) = (81.1968,-1.95451,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.274686, position (cm) = (74.707,4.02559,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.347796, position (cm) = (88.5702,1.33283,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 54.4924, position (cm) = (81.083,-1.818,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.169938, position (cm) = (106.069,-8.29719,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.11057, position (cm) = (105.5,11.522,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 16.3801, position (cm) = (5.96264,-53.117,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 1.11288e-07, position (cm) = (-16.1097,-58.7533,200), weight = 9.31323e-10 - gamma, kinetic energy (MeV) = 5.2312, position (cm) = (-6.43967,-27.8899,200), weight = 1.86265e-09 - gamma, kinetic energy (MeV) = 0.41994, position (cm) = (-10.3338,-28.8746,200), weight = 1.86265e-09 - gamma, kinetic energy (MeV) = 0.23382, position (cm) = (7.9707,-33.2163,200), weight = 1.86265e-09 - neutron, kinetic energy (MeV) = 0.328815, position (cm) = (4.79388,-46.5909,200), weight = 1.86265e-09 - gamma, kinetic energy (MeV) = 4.65653, position (cm) = (1.83009,-36.741,200), weight = 1.86265e-09 - gamma, kinetic energy (MeV) = 0.355979, position (cm) = (9.838,-35.8904,200), weight = 3.72529e-09 - gamma, kinetic energy (MeV) = 0.549088, position (cm) = (5.12852,-40.1984,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 5.57584, position (cm) = (5.37291,-37.7593,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 17.1289, position (cm) = (12.4735,-39.2721,200), weight = 1.49012e-08 - neutron, kinetic energy (MeV) = 5.22627, position (cm) = (10.7044,-34.1292,200), weight = 3.72529e-09 - gamma, kinetic energy (MeV) = 0.0953522, position (cm) = (4.09989,-35.5807,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 1.81489, position (cm) = (10.8587,-25.4998,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 17.183, position (cm) = (10.7164,-34.1205,200), weight = 7.45058e-09 - neutron, kinetic energy (MeV) = 5.69681, position (cm) = (24.5032,-61.5663,200), weight = 7.45058e-09 - neutron, kinetic energy (MeV) = 0.989683, position (cm) = (14.7687,-64.6984,200), weight = 7.45058e-09 - gamma, kinetic energy (MeV) = 0.481963, position (cm) = (-37.5906,-27.5508,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 1.91657e-05, position (cm) = (-41.5575,-14.8734,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.302501, position (cm) = (-27.0431,-30.3468,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 4.39336, position (cm) = (-9.85969,-82.7616,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 7.67126e-06, position (cm) = (-14.1665,-42.1396,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 2.89981, position (cm) = (-31.531,-26.9789,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 2.01032, position (cm) = (-27.3132,-51.2443,200), weight = 1.86265e-09 - gamma, kinetic energy (MeV) = 0.0848049, position (cm) = (-22.0858,-16.7189,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 0.00755708, position (cm) = (-50.3941,-41.1691,200), weight = 7.45058e-09 - gamma, kinetic energy (MeV) = 0.53142, position (cm) = (-63.6569,-54.6279,200), weight = 7.45058e-09 - gamma, kinetic energy (MeV) = 0.886828, position (cm) = (-14.1443,-67.8368,200), weight = 7.45058e-09 - neutron, kinetic energy (MeV) = 0.011983, position (cm) = (-30.0385,-38.2787,200), weight = 7.45058e-09 - gamma, kinetic energy (MeV) = 0.747065, position (cm) = (-19.8402,-54.7191,200), weight = 7.45058e-09 - gamma, kinetic energy (MeV) = 0.586478, position (cm) = (-29.4821,-62.9809,200), weight = 1.86265e-09 - neutron, kinetic energy (MeV) = 12.6079, position (cm) = (-40.972,-124.6,200), weight = 1.16415e-10 - neutron, kinetic energy (MeV) = 14.9017, position (cm) = (-24.9749,-85.456,200), weight = 5.82077e-11 - gamma, kinetic energy (MeV) = 0.188004, position (cm) = (-19.266,-81.4733,200), weight = 5.82077e-11 - gamma, kinetic energy (MeV) = 0.525128, position (cm) = (-19.681,-83.6999,200), weight = 5.82077e-11 - gamma, kinetic energy (MeV) = 0.0808368, position (cm) = (-31.8241,-88.2847,200), weight = 9.31323e-10 - gamma, kinetic energy (MeV) = 1.2632, position (cm) = (-19.5091,-76.9332,200), weight = 9.31323e-10 - neutron, kinetic energy (MeV) = 0.000321071, position (cm) = (-21.4314,-74.5338,200), weight = 9.31323e-10 - gamma, kinetic energy (MeV) = 0.957239, position (cm) = (-14.6736,42.179,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 0.00484253, position (cm) = (-51.469,8.16452,200), weight = 7.45058e-09 - neutron, kinetic energy (MeV) = 0.000510436, position (cm) = (-30.7326,-0.116486,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 0.242493, position (cm) = (-36.4657,5.35841,200), weight = 2.98023e-08 - gamma, kinetic energy (MeV) = 0.226174, position (cm) = (-35.6119,2.41869,200), weight = 2.98023e-08 - gamma, kinetic energy (MeV) = 2.15176, position (cm) = (125.772,-21.1115,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.123337, position (cm) = (125.093,-21.2908,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 18.4822, position (cm) = (118.604,-33.7921,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 26.9907, position (cm) = (124.007,-26.1264,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 33.3256, position (cm) = (89.2053,-32.702,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 33.9032, position (cm) = (89.1362,-36.6214,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 28.3214, position (cm) = (106.657,-46.9274,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 27.9383, position (cm) = (106.421,-48.9553,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 4.44893e-06, position (cm) = (85.8067,-62.5273,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.265829, position (cm) = (65.9389,-50.023,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 27.9952, position (cm) = (80.4644,-52.4884,200), weight = 4.76837e-07 - neutron, kinetic energy (MeV) = 27.9952, position (cm) = (80.4644,-52.4884,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 27.9952, position (cm) = (80.4644,-52.4884,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 27.9952, position (cm) = (80.4644,-52.4884,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 27.8631, position (cm) = (80.0779,-53.5347,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 0.000151356, position (cm) = (102.278,-47.4598,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.859846, position (cm) = (93.5745,-47.4842,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 11.3732, position (cm) = (92.6003,-48.168,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 11.3732, position (cm) = (92.6003,-48.168,200), weight = 2.38419e-07 - gamma, kinetic energy (MeV) = 0.193239, position (cm) = (93.6283,-53.4661,200), weight = 4.76837e-07 - neutron, kinetic energy (MeV) = 2.26687, position (cm) = (89.0467,-44.8916,200), weight = 4.76837e-07 - gamma, kinetic energy (MeV) = 7.11702, position (cm) = (89.3037,-37.469,200), weight = 4.76837e-07 - gamma, kinetic energy (MeV) = 0.195368, position (cm) = (76.0439,-53.1164,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 3.42647, position (cm) = (95.1803,-40.9388,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 34.708, position (cm) = (100.609,-44.7694,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 4.6921, position (cm) = (88.7527,-16.4572,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 0.000276142, position (cm) = (83.1522,-25.6361,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 5.47079, position (cm) = (75.8826,-33.317,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 1.7242, position (cm) = (90.4795,-31.8929,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 16.5094, position (cm) = (70.3702,-31.0023,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 16.5094, position (cm) = (70.3702,-31.0023,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 16.1955, position (cm) = (70.3308,-31.1346,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.285055, position (cm) = (70.2853,-30.3498,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.205403, position (cm) = (70.7621,-28.5023,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 3.4369, position (cm) = (71.8847,-30.5315,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 4.39734, position (cm) = (72.9424,-31.639,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 6.23931, position (cm) = (69.9671,-31.9099,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 5.28017, position (cm) = (56.1351,-41.2829,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 10.3455, position (cm) = (77.422,-31.1016,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.0978948, position (cm) = (81.9519,-24.6902,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 0.00333885, position (cm) = (104.888,-47.6442,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 0.967335, position (cm) = (88.5576,-42.7424,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 2.05797, position (cm) = (110.146,-52.2994,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 1.62816, position (cm) = (95.8707,-55.1484,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 28.2084, position (cm) = (117.256,-56.3014,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.18879, position (cm) = (134.68,-23.7355,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.292789, position (cm) = (112.66,-71.0678,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.140705, position (cm) = (96.0667,-52.5275,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.828149, position (cm) = (105.597,-43.4773,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 2.85383, position (cm) = (91.2962,-43.5315,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 35.1683, position (cm) = (101.463,-18.7967,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 34.4729, position (cm) = (104.146,-21.0195,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 34.4729, position (cm) = (104.146,-21.0195,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 1.37461, position (cm) = (77.5713,-23.5855,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 6.21223, position (cm) = (71.2518,-37.4761,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.526422, position (cm) = (73.456,-46.7243,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 3.98021, position (cm) = (39.4304,-43.1955,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 2.39154e-05, position (cm) = (32.1128,-74.3829,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.740259, position (cm) = (29.2438,-61.2493,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 6.48076, position (cm) = (69.1945,-52.0217,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 1.75019, position (cm) = (64.3185,-16.0782,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 4.86188, position (cm) = (37.5413,-88.9655,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 5.39503, position (cm) = (-80.8569,37.5706,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 78.5287, position (cm) = (9.42283,-26.679,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 10.9673, position (cm) = (-16.6146,26.3145,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 4.55634, position (cm) = (16.4076,-5.09892,200), weight = 2.38419e-07 - gamma, kinetic energy (MeV) = 7.65019, position (cm) = (12.1418,-3.92201,200), weight = 4.76837e-07 - neutron, kinetic energy (MeV) = 0.351706, position (cm) = (56.3119,10.6685,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 0.427166, position (cm) = (11.2881,-10.8371,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 0.560311, position (cm) = (3.86395,14.056,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.104487, position (cm) = (-23.2674,30.4514,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.231797, position (cm) = (-82.9878,69.5551,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 4.31067, position (cm) = (-23.0038,27.8507,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.155594, position (cm) = (14.4777,51.3152,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 8.52118, position (cm) = (20.7707,55.9657,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 37.2157, position (cm) = (-23.0822,40.1708,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 37.2035, position (cm) = (-23.4089,40.1097,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 2.09046, position (cm) = (12.7634,38.7912,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.0888986, position (cm) = (12.5594,30.7179,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.367827, position (cm) = (11.5445,57.9057,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 3.52187, position (cm) = (-10.8253,87.6991,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 72.879, position (cm) = (-9.64905,-3.29543,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 1.64257, position (cm) = (-7.66237,14.0885,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 23.179, position (cm) = (-15.876,-2.33753,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 21.9697, position (cm) = (-15.8091,-0.677452,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 23.5303, position (cm) = (-13.576,0.552596,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 6.10398, position (cm) = (-18.2705,-1.36753,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 4.14941, position (cm) = (-16.9172,-14.4823,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 1.20098, position (cm) = (40.2281,25.3825,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.00552492, position (cm) = (28.4546,0.552884,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 0.921747, position (cm) = (36.3316,-4.88392,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 9.21046, position (cm) = (29.187,-32.3283,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.262823, position (cm) = (16.086,-47.3705,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 30.0657, position (cm) = (24.3936,-39.1887,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 30.6134, position (cm) = (22.9952,-38.2258,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 0.0679569, position (cm) = (28.2434,-29.0877,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 5.81144, position (cm) = (21.7618,-36.9098,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.203244, position (cm) = (16.0805,-33.8091,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.105894, position (cm) = (28.5549,-29.593,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 6.9745, position (cm) = (25.6138,-16.4777,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 6.9745, position (cm) = (25.6138,-16.4777,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 2.58624, position (cm) = (2.1469,-52.644,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 1.40627e-05, position (cm) = (19.5783,-39.659,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.129665, position (cm) = (100.212,8.09625,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 5.35121, position (cm) = (85.6318,47.3827,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 1.43716e-05, position (cm) = (-66.6376,124.545,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 14.466, position (cm) = (-89.0478,93.0756,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.673166, position (cm) = (-89.9209,93.9437,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 0.741204, position (cm) = (-81.7559,94.9715,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 0.119169, position (cm) = (-80.0173,73.8219,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 1.22075, position (cm) = (-95.1286,79.9541,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.139191, position (cm) = (-94.6917,72.2024,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.428202, position (cm) = (-97.2614,75.3512,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 0.62305, position (cm) = (-96.3805,76.3381,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 1.85681, position (cm) = (-88.3368,52.1871,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 2.20507, position (cm) = (-37.6121,159.463,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 0.165479, position (cm) = (4.33317,10.3361,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 1.71647, position (cm) = (-2.93353,8.09728,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 5.04875, position (cm) = (0.0950544,11.7884,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 47.9881, position (cm) = (-0.96716,9.7849,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 78.4152, position (cm) = (0.816042,6.14207,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 2.65016, position (cm) = (10.6105,22.6252,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 40.5433, position (cm) = (7.32114,13.4592,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.358167, position (cm) = (-2.21223,10.2862,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 9.10625, position (cm) = (1.0133,14.5599,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 80.0409, position (cm) = (-2.10722,13.4651,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 79.6709, position (cm) = (-1.3996,12.467,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 77.281, position (cm) = (3.92379,19.938,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.000687713, position (cm) = (20.5123,-22.7978,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 2.38939, position (cm) = (13.8105,5.28051,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 79.7718, position (cm) = (-1.4911,-3.99057,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 80.2343, position (cm) = (-0.157334,3.57276,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.304923, position (cm) = (-0.569262,-2.79046,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.0616281, position (cm) = (-34.7421,26.5118,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 15.0959, position (cm) = (-92.5586,-98.6352,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 15.0959, position (cm) = (-92.5586,-98.6352,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 3.73006, position (cm) = (-91.3739,-98.7976,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 6.6738, position (cm) = (-92.2311,-98.6683,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 1.46649, position (cm) = (-95.2273,-106.243,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.277811, position (cm) = (-81.0406,-103.395,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 44.3507, position (cm) = (-93.4689,-106.078,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.339719, position (cm) = (-92.8727,-104.458,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.42256, position (cm) = (-106.495,-112.669,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.418654, position (cm) = (-92.0975,-99.117,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 0.0116271, position (cm) = (-101.415,-104.677,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.0873073, position (cm) = (-101.024,-122.713,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 1.77821, position (cm) = (-102.904,-149.331,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.391943, position (cm) = (-103.482,-178.433,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 4.75759, position (cm) = (-106.261,-187.856,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 23.06, position (cm) = (-95.9899,-171.937,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 23.0626, position (cm) = (-96.1161,-172.108,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.280293, position (cm) = (-91.9629,-144.589,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 2.90349, position (cm) = (-121.307,-167.965,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 22.9646, position (cm) = (-98.3187,-163.27,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 0.133395, position (cm) = (-43.6027,-162.975,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 20.6471, position (cm) = (-69.0484,-168.098,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.56004, position (cm) = (-83.0652,-178.181,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.298394, position (cm) = (-83.4572,-141.882,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 22.7967, position (cm) = (-87.0844,-160.62,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.0976073, position (cm) = (-84.741,-146.775,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 3.4362, position (cm) = (-82.7959,-151.856,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 7.59346, position (cm) = (-83.7841,-152.641,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 0.0318383, position (cm) = (-119.455,-176.822,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 2.7264, position (cm) = (-120.863,-183.879,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 6.19425, position (cm) = (-130.621,-181.806,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 3.85813, position (cm) = (-109.167,-185.441,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.0937715, position (cm) = (-110.079,-179.653,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 0.127652, position (cm) = (-103.192,-185.132,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 4.5157, position (cm) = (-146.479,-210.732,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 0.189178, position (cm) = (-90.1405,-130.022,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.356787, position (cm) = (-87.7997,-130.819,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 4.97761, position (cm) = (-86.9489,-132.737,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 20.7396, position (cm) = (-94.4549,-141.314,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.200678, position (cm) = (-79.5703,-125.121,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 9.10221, position (cm) = (-62.0509,-160.375,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.453717, position (cm) = (-76.6397,-174.042,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 3.81685, position (cm) = (-78.7195,-172.554,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 3.94263, position (cm) = (-78.6249,-173.784,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 5.20844, position (cm) = (-73.0065,-174.709,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.64135, position (cm) = (-64.1864,-56.8564,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 0.00143285, position (cm) = (-69.7401,-52.838,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 4.27176, position (cm) = (-68.0889,-53.3686,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 1.65109, position (cm) = (-43.8141,-44.9597,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 25.4874, position (cm) = (-60.9361,-78.6375,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 32.7068, position (cm) = (-45.8542,-62.3186,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 0.477994, position (cm) = (-84.2116,-132.833,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 1.66398, position (cm) = (-116.89,-103.869,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 1.9978, position (cm) = (-131.999,-109.133,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 47.0192, position (cm) = (-117.748,-115.76,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.104037, position (cm) = (-84.6147,-106.358,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 71.5168, position (cm) = (-80.1925,-102.675,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 88.2536, position (cm) = (-79.1156,-152.267,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 87.7524, position (cm) = (-80.0291,-156.829,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.11672, position (cm) = (-79.7555,-157.42,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 46.3454, position (cm) = (-82.2593,-158.995,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 88.0791, position (cm) = (-80.5515,-161.15,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 66.2318, position (cm) = (-79.4792,-145.376,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 66.2318, position (cm) = (-79.4792,-145.376,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 68.1924, position (cm) = (-77.326,-149.653,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 9.33129e-06, position (cm) = (-41.4121,-166.44,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 87.9246, position (cm) = (-76.7298,-144.263,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 87.9246, position (cm) = (-76.7298,-144.263,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 88.9604, position (cm) = (-82.0704,-115.3,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 89.4893, position (cm) = (-83.7286,-118.274,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 89.4893, position (cm) = (-83.7286,-118.274,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 89.5783, position (cm) = (-103.688,-124.87,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.118446, position (cm) = (-13.0108,-36.2753,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 1.26911, position (cm) = (4.70706,-39.9462,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 1.70884, position (cm) = (1.69588,-31.6473,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.189516, position (cm) = (3.91451,-20.7321,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.0981072, position (cm) = (5.52405,-33.4143,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 12.7652, position (cm) = (1.52955,-26.4654,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 12.7949, position (cm) = (3.3484,-30.6534,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 1.16269, position (cm) = (5.96141,-52.6397,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 1.55369, position (cm) = (-9.73805,-3.99467,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 13.0365, position (cm) = (8.2141,-29.1342,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 13.0365, position (cm) = (8.2141,-29.1342,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 13.0365, position (cm) = (8.2141,-29.1342,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 1.84872, position (cm) = (11.72,-47.6556,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 3.54478, position (cm) = (2.79015,-22.9254,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 1.30521, position (cm) = (1.37144,-19.0506,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 0.008746, position (cm) = (-6.76816,-38.8274,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 13.028, position (cm) = (7.94162,-8.39924,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 13.028, position (cm) = (7.94162,-8.39924,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 12.7818, position (cm) = (10.0333,-7.29358,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 13.2188, position (cm) = (6.32956,-22.3983,200), weight = 0.015625 - gamma, kinetic energy (MeV) = 0.433293, position (cm) = (5.20595,-58.7861,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 4.55358, position (cm) = (7.6489,-61.9932,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 9.28422, position (cm) = (67.3073,-42.4754,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 9.19008, position (cm) = (65.1208,-39.6898,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 8.71201, position (cm) = (57.4993,-41.3904,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 8.71201, position (cm) = (57.4993,-41.3904,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 8.71201, position (cm) = (57.4993,-41.3904,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 8.71201, position (cm) = (57.4993,-41.3904,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 4.46848, position (cm) = (61.0936,-41.0374,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 8.71201, position (cm) = (57.4993,-41.3904,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 9.34935, position (cm) = (75.8068,-43.8656,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 9.22381, position (cm) = (63.9813,-42.2372,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 9.22381, position (cm) = (63.9813,-42.2372,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 9.22381, position (cm) = (63.9813,-42.2372,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.157399, position (cm) = (37.9395,-46.7939,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 0.0530632, position (cm) = (35.8028,-53.1546,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 0.367718, position (cm) = (26.5659,-52.278,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 0.190529, position (cm) = (20.8339,-60.7852,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 4.77274, position (cm) = (45.1116,-32.1937,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 2.06927, position (cm) = (55.3462,-69.6913,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 21.7503, position (cm) = (50.0119,-54.0998,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.0519739, position (cm) = (52.2973,-54.1939,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 0.914169, position (cm) = (49.295,-55.7866,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 1.74666, position (cm) = (47.006,-57.0678,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 3.26666, position (cm) = (52.9762,-52.2386,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.100341, position (cm) = (58.4351,-54.3005,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 1.67675, position (cm) = (25.4972,-49.0588,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 1.81302, position (cm) = (20.5248,-51.5039,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 0.697903, position (cm) = (24.6777,-46.9787,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 2.29492, position (cm) = (15.7913,-48.7368,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 11.0974, position (cm) = (28.8601,-47.0541,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 10.1553, position (cm) = (46.9885,-57.821,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 0.215257, position (cm) = (47.218,-80.2546,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 2.44963, position (cm) = (45.1116,-65.827,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 34.6504, position (cm) = (14.0071,-39.5962,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 0.87041, position (cm) = (129.419,-92.4961,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 42.4835, position (cm) = (167.023,-91.1048,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 14.251, position (cm) = (172.924,-77.3788,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 1.3098, position (cm) = (174.139,-78.8771,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.0472475, position (cm) = (173.227,-83.8001,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.181417, position (cm) = (174.079,-75.4879,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 2.0153, position (cm) = (172.058,-76.9883,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.237839, position (cm) = (179.147,-68.2007,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.280029, position (cm) = (161.674,-97.9564,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.102197, position (cm) = (170.606,-95.9257,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 6.73653, position (cm) = (180.479,-107.768,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 24.963, position (cm) = (155.681,-70.5438,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.0972911, position (cm) = (151.922,-69.2212,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 3.92258, position (cm) = (151.892,-70.085,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 0.501659, position (cm) = (154.193,-75.0213,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.367965, position (cm) = (155.549,-74.6006,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 1.96281, position (cm) = (150.64,-81.0596,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 3.15581, position (cm) = (156.042,-78.1202,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 3.01247, position (cm) = (156.624,-82.2645,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 9.76754e-06, position (cm) = (153.322,-59.4876,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 24.1953, position (cm) = (153.649,-74.97,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 24.1953, position (cm) = (153.649,-74.97,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.183546, position (cm) = (147.838,-83.4002,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.00885044, position (cm) = (147.74,-74.7811,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 11.1275, position (cm) = (157.065,-85.9962,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 73.9556, position (cm) = (157.585,-90.4894,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 1.19027, position (cm) = (159.173,-91.96,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.130436, position (cm) = (162.058,-94.3305,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.567748, position (cm) = (164.217,-96.2284,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 3.67495, position (cm) = (162.081,-97.2347,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 60.186, position (cm) = (159.81,-97.0636,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 60.186, position (cm) = (159.81,-97.0636,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 60.4629, position (cm) = (213.06,-113.577,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 0.178978, position (cm) = (214.795,-95.077,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 0.552521, position (cm) = (184.313,-105.11,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 56.336, position (cm) = (105.972,-40.6519,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 7.47964, position (cm) = (94.8525,3.54805,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 71.4501, position (cm) = (157.906,-21.5076,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 71.4501, position (cm) = (157.906,-21.5076,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 0.951083, position (cm) = (152.365,-27.0136,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.0980483, position (cm) = (150.824,-19.8805,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.463427, position (cm) = (150.661,-14.9349,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 17.6208, position (cm) = (160.092,-21.9548,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 33.9082, position (cm) = (157.343,-21.8761,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 0.242311, position (cm) = (152.18,-45.041,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 70.741, position (cm) = (143.995,-50.8225,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 1.66178, position (cm) = (130.494,-52.7734,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 3.81125, position (cm) = (117.919,-43.4051,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.611235, position (cm) = (138.709,-57.6097,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 2.82348, position (cm) = (127.701,-56.3591,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.695575, position (cm) = (150.469,-53.6466,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 2.06112, position (cm) = (139.871,-47.6647,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.298817, position (cm) = (125.991,-45.2595,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 1.48097, position (cm) = (116.793,-57.3864,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 1.46249, position (cm) = (143.036,-53.8267,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.216248, position (cm) = (135.013,-59.2595,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.143538, position (cm) = (155.434,-71.842,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.91244, position (cm) = (156.448,-71.3044,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.342055, position (cm) = (160.613,-69.6991,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.137092, position (cm) = (154.674,-67.8848,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.364248, position (cm) = (152.442,-66.388,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.00274172, position (cm) = (106.834,-60.5316,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 90.9174, position (cm) = (28.5523,-69.323,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 89.7398, position (cm) = (28.0482,-68.6254,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.51909, position (cm) = (26.5068,-42.9281,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 0.685065, position (cm) = (36.7486,-68.8201,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 0.726916, position (cm) = (-13.8897,-76.5897,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 91.5972, position (cm) = (36.03,-52.4136,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 25.6309, position (cm) = (41.0215,-45.7793,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 25.6309, position (cm) = (41.0215,-45.7793,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 90.9524, position (cm) = (31.1947,-49.0779,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 90.9524, position (cm) = (31.1947,-49.0779,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 91.4771, position (cm) = (36.1643,-53.0947,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 91.3225, position (cm) = (38.8363,-53.2969,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 91.5972, position (cm) = (36.03,-52.4136,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 91.5972, position (cm) = (36.03,-52.4136,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 96.7984, position (cm) = (-29.454,-70.3252,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 96.7984, position (cm) = (-29.454,-70.3252,200), weight = 0.015625 - gamma, kinetic energy (MeV) = 2.04898, position (cm) = (12.984,-79.0678,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 1.87801, position (cm) = (22.8439,-80.8201,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 7.02254e-05, position (cm) = (43.3559,-73.4089,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 5.72769, position (cm) = (15.7905,-80.9256,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 21.3649, position (cm) = (7.90622,-78.0979,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 21.6063, position (cm) = (9.20481,-77.1744,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 1.45254e-05, position (cm) = (15.5802,-71.0046,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 0.00297951, position (cm) = (41.2543,-82.7193,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 6.09544, position (cm) = (11.5526,-67.1968,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.137552, position (cm) = (13.1693,-76.8701,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.585448, position (cm) = (32.5305,-69.2208,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 2.8504, position (cm) = (30.9143,-71.0564,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 2.82971, position (cm) = (24.9607,-83.1277,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 3.48195, position (cm) = (15.1667,-65.8479,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 79.4205, position (cm) = (-58.7793,-13.9566,200), weight = 0.03125 - neutron, kinetic energy (MeV) = 79.5511, position (cm) = (-56.0026,-14.7366,200), weight = 0.03125 - neutron, kinetic energy (MeV) = 26.0075, position (cm) = (-32.3097,-51.4847,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 3.55331e-06, position (cm) = (-27.1933,-46.4857,200), weight = 0.015625 - gamma, kinetic energy (MeV) = 0.852249, position (cm) = (-40.1209,-35.8714,200), weight = 0.015625 - gamma, kinetic energy (MeV) = 9.47659, position (cm) = (-39.5978,-51.3286,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 95.6597, position (cm) = (-12.2755,-19.4526,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 95.6597, position (cm) = (-12.2755,-19.4526,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 95.6597, position (cm) = (-12.2755,-19.4526,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 95.6597, position (cm) = (-12.2755,-19.4526,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 94.6478, position (cm) = (0.752217,-25.1257,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 0.026899, position (cm) = (-6.998,-17.4678,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 0.825109, position (cm) = (-8.58163,-20.3432,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 0.732449, position (cm) = (-16.8389,-25.0121,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 4.30991, position (cm) = (-13.4849,-37.7596,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 0.216139, position (cm) = (-22.9902,-34.9115,200), weight = 0.03125 - gamma, kinetic energy (MeV) = 2.58516, position (cm) = (-12.6163,-25.7619,200), weight = 0.015625 - gamma, kinetic energy (MeV) = 1.5253, position (cm) = (-33.5291,-52.2335,200), weight = 0.25 - neutron, kinetic energy (MeV) = 23.5077, position (cm) = (-49.1405,-7.39389,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 2.48689, position (cm) = (-48.7419,39.5939,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 20.7063, position (cm) = (-45.8874,-15.1638,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 19.0855, position (cm) = (-46.8506,-21.2093,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 19.0855, position (cm) = (-46.8506,-21.2093,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 0.545765, position (cm) = (-33.3895,-32.2848,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 20.4394, position (cm) = (-48.7577,-18.8474,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 20.6278, position (cm) = (-48.9993,-19.483,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 53.4952, position (cm) = (-63.2737,-43.5593,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 53.4952, position (cm) = (-63.2737,-43.5593,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 1.38986, position (cm) = (-48.9066,-48.2375,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 6.56354, position (cm) = (-44.1747,-71.1533,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 6.44423, position (cm) = (-43.6218,-66.0934,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.400217, position (cm) = (20.9208,11.5079,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 99.8797, position (cm) = (-15.8452,26.5139,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 99.8797, position (cm) = (-15.8452,26.5139,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 99.8797, position (cm) = (-15.8452,26.5139,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.440301, position (cm) = (-35.7372,38.5413,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 64.9659, position (cm) = (1.33485,31.056,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 64.9659, position (cm) = (1.33485,31.056,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 5.94816, position (cm) = (4.50243,-30.6021,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 2.00434, position (cm) = (8.0148,20.978,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 2.66413, position (cm) = (-6.95948,17.637,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 3.78884, position (cm) = (-18.8242,22.3229,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.235103, position (cm) = (-32.8715,44.928,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 1.61422, position (cm) = (-36.8295,60.5906,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.300036, position (cm) = (-22.3688,16.492,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 1.41367, position (cm) = (-63.1376,-6.68796,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.54693, position (cm) = (-71.7979,-22.9692,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.0712451, position (cm) = (-15.8638,40.9767,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 2.9848, position (cm) = (-3.40528,35.0072,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 61.0773, position (cm) = (-8.03459,37.0198,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 0.748687, position (cm) = (-1.7554,58.6252,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 46.8255, position (cm) = (0.0410271,46.3418,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 0.0083715, position (cm) = (-4.21751,54.4697,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 46.2351, position (cm) = (0.396379,51.7799,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 47.6385, position (cm) = (4.19048,50.8828,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 0.731407, position (cm) = (-20.8344,47.9872,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.533939, position (cm) = (-17.212,31.4824,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.132026, position (cm) = (5.01257,56.7031,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 47.3363, position (cm) = (7.23797,46.0966,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 47.3363, position (cm) = (7.23797,46.0966,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 98.7046, position (cm) = (0.177651,68.1607,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 98.8151, position (cm) = (0.0604505,68.2745,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 0.00850986, position (cm) = (-10.705,-9.49244,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 1.37291, position (cm) = (2.36137,-18.6101,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 18.2059, position (cm) = (2.7315,-14.5217,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 21.9302, position (cm) = (-30.632,17.9937,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 0.149197, position (cm) = (-5.8247,20.6253,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 9.924, position (cm) = (-19.9534,-1.33899,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.0823138, position (cm) = (-21.4753,-2.11271,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.109028, position (cm) = (-13.829,-2.61396,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.332789, position (cm) = (12.2651,-15.8123,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 7.52481, position (cm) = (-8.6464,-8.26513,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 28.0853, position (cm) = (-7.24152,-9.94351,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 27.7569, position (cm) = (-7.26765,-3.87,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.114841, position (cm) = (-0.804914,1.89387,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.129269, position (cm) = (-7.08371,6.39355,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 1.0237, position (cm) = (-25.928,-7.11455,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 11.129, position (cm) = (-5.67323,11.4127,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 18.2014, position (cm) = (-6.42403,20.7959,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 17.7864, position (cm) = (-11.0052,9.97236,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 18.2014, position (cm) = (-6.42403,20.7959,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 18.2014, position (cm) = (-6.42403,20.7959,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 0.000919312, position (cm) = (-24.2351,9.33391,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 98.8329, position (cm) = (9.91596,0.124005,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.0691596, position (cm) = (21.8908,60.5895,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 31.0604, position (cm) = (14.2168,8.29902,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 1.21606, position (cm) = (11.2795,8.25805,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.573509, position (cm) = (12.3141,9.34187,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 1.33427, position (cm) = (11.3761,9.27438,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 5.15093, position (cm) = (11.1044,10.2971,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 33.4257, position (cm) = (12.0695,9.66484,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 0.688279, position (cm) = (-1.29421,0.887283,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.770701, position (cm) = (32.9177,-46.4444,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 0.213828, position (cm) = (30.6068,-16.8777,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 39.1029, position (cm) = (-22.9002,-11.3642,200), weight = 0.00390625 - proton, kinetic energy (MeV) = 34.4096, position (cm) = (-23.6567,-9.08144,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 0.112001, position (cm) = (-50.703,-45.0187,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 1.1526, position (cm) = (-36.7686,-37.0696,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 10.1663, position (cm) = (-50.2372,-45.2595,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.491195, position (cm) = (-55.9117,-45.997,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.217133, position (cm) = (-60.6397,-46.1958,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 24.2316, position (cm) = (-73.364,-52.0096,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 54.6561, position (cm) = (5.55974,2.35802,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.169501, position (cm) = (-31.0467,-7.85551,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 35.8372, position (cm) = (2.70634,4.50233,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 57.6174, position (cm) = (4.53607,-1.1145,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 57.6518, position (cm) = (6.3384,-2.01452,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 0.38551, position (cm) = (1.54324,1.96094,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 2.96141e-05, position (cm) = (-3.82188,-0.393457,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.185369, position (cm) = (-0.720496,14.0614,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 1.06655, position (cm) = (-2.17947,1.34545,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.138379, position (cm) = (-160.209,135.776,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 5.16446, position (cm) = (-78.5112,27.596,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 5.16446, position (cm) = (-78.5112,27.596,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 5.16446, position (cm) = (-78.5112,27.596,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 5.16446, position (cm) = (-78.5112,27.596,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 5.16446, position (cm) = (-78.5112,27.596,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 5.48629, position (cm) = (-76.7419,27.6615,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 1.04262, position (cm) = (-79.3298,-1.20317,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.235299, position (cm) = (-94.2391,-2.20971,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 5.02072, position (cm) = (-78.233,-6.9695,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 5.19375, position (cm) = (-72.4318,17.2511,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 45.2662, position (cm) = (28.9705,-135.576,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 51.1242, position (cm) = (18.4223,-132.004,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 51.4072, position (cm) = (18.3656,-132.089,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 51.5304, position (cm) = (5.95396,-136.189,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 51.336, position (cm) = (8.01251,-142.773,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.899906, position (cm) = (10.1455,-135.313,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.235547, position (cm) = (4.41581,-133.777,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.153321, position (cm) = (8.78678,-134.662,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.219463, position (cm) = (5.25544,-141.548,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.119948, position (cm) = (-3.25983,-137.449,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.107418, position (cm) = (11.2078,-141.222,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 1.36004e-07, position (cm) = (5.94641,-134.734,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 4.15246, position (cm) = (-0.0830261,-126.526,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 1.6881, position (cm) = (17.3846,-122.047,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.809682, position (cm) = (8.79621,-126.094,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 4.59726, position (cm) = (-6.59301,-115.029,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.160284, position (cm) = (-7.80423,-123.88,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 1.81639e-05, position (cm) = (13.3036,-140.555,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 1.73669, position (cm) = (4.87867,-141.614,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 46.8354, position (cm) = (1.41459,-132.485,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 49.7658, position (cm) = (19.4093,-125.301,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.0970168, position (cm) = (-7.43859,-99.788,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 2.93543e-06, position (cm) = (-2.2868,-101.159,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 0.545019, position (cm) = (-50.6706,-76.3819,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.420654, position (cm) = (-43.3383,-98.3345,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.204526, position (cm) = (-40.3552,-109.556,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 0.0529977, position (cm) = (-54.5112,-55.9362,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.121577, position (cm) = (-56.894,-57.3928,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.628945, position (cm) = (-40.8405,-66.4196,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 8.10462, position (cm) = (-34.0606,-60.0089,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 5.22958, position (cm) = (-45.733,-62.3645,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 32.9954, position (cm) = (-55.9054,-76.464,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.69223, position (cm) = (-54.1837,-77.4034,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.04023, position (cm) = (-30.2018,-101.458,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.196739, position (cm) = (-61.0553,-72.3005,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 5.42859, position (cm) = (-62.7802,-74.2096,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 5.42859, position (cm) = (-62.7802,-74.2096,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 33.3484, position (cm) = (-56.6719,-75.7372,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 33.3484, position (cm) = (-56.6719,-75.7372,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 0.255432, position (cm) = (-41.8562,-71.2245,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 29.1187, position (cm) = (-57.1833,-68.15,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 7.90368, position (cm) = (-64.1978,-58.3879,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 10.8673, position (cm) = (-67.4428,-57.739,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 0.324226, position (cm) = (-98.0585,-34.3697,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 12.8032, position (cm) = (-84.6509,-66.1021,200), weight = 4.76837e-07 - neutron, kinetic energy (MeV) = 25.8422, position (cm) = (-96.9516,-60.9365,200), weight = 4.76837e-07 - gamma, kinetic energy (MeV) = 0.181219, position (cm) = (-74.7255,-59.4244,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 2.00452, position (cm) = (-67.5686,-64.6102,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 2.23078, position (cm) = (-73.6096,-65.8716,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 17.037, position (cm) = (-68.555,-63.7659,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 48.37, position (cm) = (-87.4309,-101.252,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 5.05589, position (cm) = (-99.507,-105.149,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 1.79263, position (cm) = (-62.7356,-99.8764,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.106547, position (cm) = (-7.1602,-95.2345,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 1.58927, position (cm) = (-24.6072,-106.241,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.0795705, position (cm) = (-23.4064,-105.717,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.591151, position (cm) = (-35.3454,-128.774,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 17.4414, position (cm) = (5.38647,-110.387,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 15.1559, position (cm) = (5.01078,-110.52,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 0.00849376, position (cm) = (23.2516,-77.3044,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 1.76364, position (cm) = (-0.00125795,-86.8997,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.122908, position (cm) = (-59.6953,-101.25,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 5.71124, position (cm) = (-24.1681,-108.522,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 37.1447, position (cm) = (-69.7924,-108.639,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 1.72795, position (cm) = (-26.7025,-123.389,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.105043, position (cm) = (-33.3403,-147.226,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.66456, position (cm) = (-11.953,-111.783,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 7.46051e-05, position (cm) = (-28.5967,-87.3228,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.056657, position (cm) = (11.1135,-96.8516,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 1.85012, position (cm) = (-5.49073,-58.3785,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 1.35476e-06, position (cm) = (-20.779,-139.791,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 2.89833, position (cm) = (-34.1994,-124.225,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 1.86364, position (cm) = (12.9786,-138.033,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 50.2405, position (cm) = (-61.5859,-179.943,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 22.2383, position (cm) = (-63.2673,-164.424,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 0.352356, position (cm) = (-61.6555,-164.869,200), weight = 4.76837e-07 - gamma, kinetic energy (MeV) = 8.84025, position (cm) = (-77.2995,-174.774,200), weight = 4.76837e-07 - gamma, kinetic energy (MeV) = 0.774131, position (cm) = (-85.8649,-177.433,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 0.137531, position (cm) = (-75.6443,-176.684,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 1.68644e-05, position (cm) = (-43.3197,-139.632,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 0.21004, position (cm) = (-55.1894,-144.715,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 50.1626, position (cm) = (-48.7728,-193.425,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 31.8579, position (cm) = (-53.9696,-188.959,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 31.8579, position (cm) = (-53.9696,-188.959,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 49.3585, position (cm) = (-40.8648,-183.982,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 2.04441, position (cm) = (16.8823,5.13009,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 1.73081e-05, position (cm) = (7.70496,7.12538,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 1.67675, position (cm) = (19.8815,6.51311,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 3.242e-06, position (cm) = (46.6833,32.6824,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 0.0820054, position (cm) = (-45.4773,13.8408,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 25.4315, position (cm) = (-28.3982,-7.22128,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.0623796, position (cm) = (-41.4719,-6.53797,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 2.59731, position (cm) = (-37.8211,-12.5404,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 31.5592, position (cm) = (-34.0459,4.85905,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 6.04851e-05, position (cm) = (-23.1789,-16.123,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.153169, position (cm) = (-25.6728,8.24499,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 1.0284, position (cm) = (-16.5927,9.73879,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 32.6932, position (cm) = (-22.0767,15.3568,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 32.6932, position (cm) = (-22.0767,15.3568,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 29.826, position (cm) = (-17.1105,24.4632,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 2.75362, position (cm) = (0.32553,43.1454,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 10.1347, position (cm) = (-11.9801,40.8132,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 8.61278, position (cm) = (-38.9544,32.3129,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 0.135738, position (cm) = (-4.51541,30.8132,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 0.149346, position (cm) = (-13.0592,14.811,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 2.5204e-06, position (cm) = (-21.2116,21.5445,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 4.02884e-05, position (cm) = (-16.4352,16.6615,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.76076, position (cm) = (-79.3072,-36.1125,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 1.98076, position (cm) = (13.8187,-128.534,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.000608427, position (cm) = (-31.3534,-18.2943,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 2.23955, position (cm) = (0.00870664,12.2784,200), weight = 0.0078125 - e-, kinetic energy (MeV) = 0.863709, position (cm) = (-0.153656,12.2578,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 73.2356, position (cm) = (-31.2597,17.1369,200), weight = 0.015625 - gamma, kinetic energy (MeV) = 0.228061, position (cm) = (11.8755,91.1642,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 2.7754, position (cm) = (7.89931,98.8946,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.220297, position (cm) = (27.5475,94.6397,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 1.49563, position (cm) = (33.5735,95.5772,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 2.71207, position (cm) = (-18.7815,84.8568,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 4.57717, position (cm) = (-10.4756,78.5422,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 1.56468, position (cm) = (-13.0964,52.0858,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.266724, position (cm) = (-2.23671,59.2591,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.0558733, position (cm) = (-9.99696,60.1239,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 2.07582, position (cm) = (-1.4314,46.7541,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.107204, position (cm) = (-4.60547,53.2101,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 3.64653, position (cm) = (-0.989827,58.8545,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.92451, position (cm) = (-1.38317,56.4609,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 17.9347, position (cm) = (-0.208991,64.86,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 2.68066, position (cm) = (-1.17463,63.3251,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.0887363, position (cm) = (-1.65712,63.3753,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.192904, position (cm) = (1.82967,67.6799,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.15495, position (cm) = (8.30579,70.8376,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 17.8554, position (cm) = (2.43447,65.9239,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 18.611, position (cm) = (-27.6038,15.6086,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.259032, position (cm) = (-25.378,34.2195,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.510999, position (cm) = (-19.0647,9.16317,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 1.33968, position (cm) = (-2.14262,12.1446,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 1.98393, position (cm) = (0.361689,15.6603,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 98.2898, position (cm) = (-29.5381,36.3065,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.413799, position (cm) = (-62.7748,39.7653,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 0.648717, position (cm) = (-49.3468,40.0693,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 98.2064, position (cm) = (-27.9132,34.787,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 98.2664, position (cm) = (-27.1738,35.9984,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 97.914, position (cm) = (-26.2976,41.7589,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 42.7631, position (cm) = (-28.0093,31.3072,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 42.9498, position (cm) = (-28.7352,32.2007,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 98.2148, position (cm) = (-23.3656,37.0903,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.272019, position (cm) = (-38.8359,46.1229,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.0665942, position (cm) = (-50.814,48.2801,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 1.06056, position (cm) = (-49.2404,49.2119,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.959155, position (cm) = (-61.1775,30.1247,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.117503, position (cm) = (-27.463,34.074,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 29.9669, position (cm) = (-27.3201,35.5849,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 97.7863, position (cm) = (-28.3019,41.2728,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 3.84778, position (cm) = (-27.7474,15.5073,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 75.0507, position (cm) = (-57.0639,30.4341,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.575758, position (cm) = (-50.1817,33.5716,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 77.129, position (cm) = (-17.4061,-5.53464,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 77.129, position (cm) = (-17.4061,-5.53464,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 77.129, position (cm) = (-17.4061,-5.53464,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 77.129, position (cm) = (-17.4061,-5.53464,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.170661, position (cm) = (-18.023,-7.0196,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.078742, position (cm) = (-1.40661,1.01821,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 35.1699, position (cm) = (-52.1819,-11.1857,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 29.5084, position (cm) = (-42.7019,-13.023,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 2.46059, position (cm) = (-28.8772,-11.8787,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 7.23197, position (cm) = (-45.5978,-9.68777,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.100567, position (cm) = (-65.0827,14.9631,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.0804213, position (cm) = (-68.851,15.9157,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.319597, position (cm) = (-61.1188,9.79277,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 28.2235, position (cm) = (-73.0638,14.3138,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.117556, position (cm) = (-65.8556,12.8746,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 2.16104, position (cm) = (-68.1838,11.3204,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 3.68098, position (cm) = (-67.2367,14.6199,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.18525, position (cm) = (-70.0624,16.7978,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 1.64566, position (cm) = (-73.1248,13.9218,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 14.8959, position (cm) = (-68.2753,16.9846,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 2.88591, position (cm) = (-97.0093,2.14439,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 27.8171, position (cm) = (-53.5722,-2.13544,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 57.4906, position (cm) = (-32.7821,47.4044,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 2.25077, position (cm) = (-21.9732,37.6248,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.306439, position (cm) = (-36.0796,32.5076,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.104774, position (cm) = (-35.5412,46.6211,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 1.97337, position (cm) = (-32.0157,48.264,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 4.25799, position (cm) = (-32.2014,44.6413,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.278424, position (cm) = (-44.1187,3.03003,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 19.6124, position (cm) = (-19.0127,-15.8764,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.15881, position (cm) = (-24.5848,-13.8567,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 1.80861, position (cm) = (-24.3126,-14.5245,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 6.14899, position (cm) = (-16.4515,-20.5977,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 10.5987, position (cm) = (-10.2614,-34.8072,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 10.4677, position (cm) = (-10.2682,-34.8276,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 10.7042, position (cm) = (-8.85518,-36.6248,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 10.7042, position (cm) = (-8.85518,-36.6248,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 10.7042, position (cm) = (-8.85518,-36.6248,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 4.69796, position (cm) = (-9.24567,-24.3601,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 21.731, position (cm) = (28.8716,0.695811,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 4.78321, position (cm) = (22.064,5.98697,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.000395334, position (cm) = (46.3932,11.7587,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.89584, position (cm) = (7.61604,6.20457,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 21.731, position (cm) = (28.8716,0.695811,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.122851, position (cm) = (-1.90881,30.0576,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 1.16452, position (cm) = (-3.23975,32.5931,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 2.4436, position (cm) = (-4.00405,32.3278,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.291401, position (cm) = (29.9309,30.6034,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 2.23268, position (cm) = (-10.2093,38.3366,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 4.03599, position (cm) = (-48.2758,51.5253,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.237824, position (cm) = (-38.412,46.9036,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.265977, position (cm) = (-47.7882,51.42,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 14.023, position (cm) = (-44.5864,52.3669,200), weight = 5.96046e-08 - gamma, kinetic energy (MeV) = 2.7341, position (cm) = (-28.9091,49.0301,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 12.6045, position (cm) = (-43.372,48.0087,200), weight = 1.49012e-08 - neutron, kinetic energy (MeV) = 9.17085, position (cm) = (-39.7362,33.5953,200), weight = 7.45058e-09 - gamma, kinetic energy (MeV) = 1.38463, position (cm) = (-47.0202,54.5391,200), weight = 3.72529e-09 - gamma, kinetic energy (MeV) = 0.657362, position (cm) = (-59.3794,54.1888,200), weight = 3.72529e-09 - gamma, kinetic energy (MeV) = 0.190353, position (cm) = (-63.792,69.7555,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 2.32048, position (cm) = (-56.883,48.403,200), weight = 3.72529e-09 - gamma, kinetic energy (MeV) = 0.0799679, position (cm) = (-47.9513,54.6114,200), weight = 1.86265e-09 - neutron, kinetic energy (MeV) = 4.29235, position (cm) = (-48.4718,53.4863,200), weight = 1.86265e-09 - neutron, kinetic energy (MeV) = 14.1431, position (cm) = (-49.892,54.2264,200), weight = 1.86265e-09 - neutron, kinetic energy (MeV) = 5.09766, position (cm) = (-5.59932,15.3372,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 19.9067, position (cm) = (41.0512,-53.7753,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 19.9067, position (cm) = (41.0512,-53.7753,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 19.9067, position (cm) = (41.0512,-53.7753,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 14.6559, position (cm) = (73.3169,-51.8341,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.0647883, position (cm) = (26.2721,-37.8757,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 4.11704, position (cm) = (20.2384,-56.8848,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 3.17047, position (cm) = (28.6952,-42.5095,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 0.616251, position (cm) = (22.744,-41.4263,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 0.00598236, position (cm) = (18.844,-15.8975,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 9.67069, position (cm) = (85.5163,-48.494,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.710878, position (cm) = (71.976,-48.5486,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.233117, position (cm) = (31.1709,-71.528,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 0.306735, position (cm) = (35.9677,-96.7925,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 10.5271, position (cm) = (60.4297,-51.1582,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 10.5271, position (cm) = (60.4297,-51.1582,200), weight = 2.38419e-07 - gamma, kinetic energy (MeV) = 0.224041, position (cm) = (66.8724,-38.4371,200), weight = 2.38419e-07 - gamma, kinetic energy (MeV) = 0.970197, position (cm) = (64.3654,-43.4364,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 19.5521, position (cm) = (76.6052,-31.9617,200), weight = 2.38419e-07 - gamma, kinetic energy (MeV) = 0.0841064, position (cm) = (4.67889,-86.1766,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 1.28857, position (cm) = (9.47295,-88.6992,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 1.20703, position (cm) = (5.5201,-85.777,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 1.89518, position (cm) = (12.9031,-95.4956,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 29.4131, position (cm) = (9.26604,-93.3961,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 29.4131, position (cm) = (9.26604,-93.3961,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.22856, position (cm) = (10.6597,-78.2084,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 4.4169, position (cm) = (31.2711,-36.5569,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 6.61823, position (cm) = (44.279,-42.1228,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 6.61823, position (cm) = (44.279,-42.1228,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 2.02791, position (cm) = (39.6269,-31.2216,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 11.4229, position (cm) = (28.0439,-35.6085,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 78.2018, position (cm) = (97.6535,0.32844,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 78.2018, position (cm) = (97.6535,0.32844,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.116579, position (cm) = (68.1003,-4.75459,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 52.0396, position (cm) = (97.1263,-13.6816,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 51.4961, position (cm) = (102.706,-16.337,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 78.9872, position (cm) = (91.9767,-0.745809,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 79.1882, position (cm) = (98.266,-2.24285,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.83343, position (cm) = (91.8707,-3.37181,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 1.52529, position (cm) = (101.208,5.615,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 9.85942e-06, position (cm) = (104.093,-8.92733,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.510999, position (cm) = (94.473,9.977,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.075754, position (cm) = (92.6685,14.5504,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.0949808, position (cm) = (101.933,21.8619,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.436624, position (cm) = (55.3027,-4.73317,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 4.96481, position (cm) = (81.7009,-4.07446,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.206111, position (cm) = (103.353,21.983,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.0871156, position (cm) = (95.9317,10.6814,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.18966, position (cm) = (100.386,19.8408,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.407773, position (cm) = (95.9865,4.9077,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 5.35433, position (cm) = (96.1419,12.844,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 5.46216, position (cm) = (96.7689,12.5591,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 58.087, position (cm) = (84.4092,3.62872,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 78.3074, position (cm) = (78.4951,-5.96182,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 3.35715, position (cm) = (100.617,-4.34439,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.104774, position (cm) = (103.032,-3.22632,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.202502, position (cm) = (97.4372,0.309713,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.270452, position (cm) = (102.534,5.96153,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 1.45983, position (cm) = (105.507,3.43636,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 72.2193, position (cm) = (23.5349,54.3566,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 72.2193, position (cm) = (23.5349,54.3566,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 72.2193, position (cm) = (23.5349,54.3566,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 8.7531e-07, position (cm) = (12.6139,51.8073,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 72.0772, position (cm) = (36.4902,44.332,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 0.276358, position (cm) = (92.1179,-16.7228,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 1.89148e-06, position (cm) = (99.1081,-11.0723,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 8.21194e-07, position (cm) = (77.1582,-11.4724,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 0.600931, position (cm) = (106.409,-34.3248,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.659258, position (cm) = (103.328,-32.2434,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.0612094, position (cm) = (101.947,-25.9666,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 22.8157, position (cm) = (104.116,-22.2795,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 16.072, position (cm) = (101.235,-21.4846,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.576929, position (cm) = (105.433,-48.8392,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 2.97213, position (cm) = (96.5555,-28.6016,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 16.7492, position (cm) = (99.4513,-26.1801,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 56.8054, position (cm) = (49.8223,-19.374,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 56.7222, position (cm) = (48.4622,-19.2889,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.331691, position (cm) = (73.2953,15.5332,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 29.7807, position (cm) = (53.9347,-11.4726,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 1.33093, position (cm) = (13.3221,-33.1238,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 6.15657, position (cm) = (33.2891,-22.7346,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 10.0475, position (cm) = (2.61704,-31.758,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 26.3356, position (cm) = (8.02513,-29.7613,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.114968, position (cm) = (8.73652,-34.4726,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 8.449e-07, position (cm) = (-2.2908,-41.7587,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 26.3356, position (cm) = (8.02513,-29.7613,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 1.30382, position (cm) = (24.2701,-21.8415,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 3.78421, position (cm) = (19.8537,-26.4454,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 98.9897, position (cm) = (56.5576,-16.2501,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 97.0761, position (cm) = (55.2252,-14.1384,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 99.1284, position (cm) = (-18.3387,-42.4779,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 99.7201, position (cm) = (-23.4777,-45.1374,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 0.105559, position (cm) = (-20.6804,-17.1263,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 0.749745, position (cm) = (-0.291215,0.387769,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 3.47118, position (cm) = (-8.18238,-9.17404,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 4.50083e-05, position (cm) = (-27.5156,25.3172,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 59.4349, position (cm) = (8.48711,13.8361,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 2.57795e-06, position (cm) = (-32.1314,-22.5194,200), weight = 0.125 - gamma, kinetic energy (MeV) = 2.85553, position (cm) = (49.3989,-9.18161,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 16.0321, position (cm) = (7.46471,-101.924,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 16.0321, position (cm) = (7.46471,-101.924,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 16.0321, position (cm) = (7.46471,-101.924,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 37.5041, position (cm) = (267.247,-121.897,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 11.1558, position (cm) = (266.703,-111.096,200), weight = 2.38419e-07 - gamma, kinetic energy (MeV) = 2.25113, position (cm) = (267.189,-111.01,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 7.69306, position (cm) = (267.201,-111.341,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 11.1558, position (cm) = (266.703,-111.096,200), weight = 4.76837e-07 - gamma, kinetic energy (MeV) = 0.574388, position (cm) = (241.76,-46.371,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 3.30711, position (cm) = (282.765,-105.03,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.363284, position (cm) = (-124.947,135.555,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 8.26079e-06, position (cm) = (-131.767,108.546,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 0.000114417, position (cm) = (-108.757,102.985,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 4.64047e-07, position (cm) = (-105.144,144.77,200), weight = 7.45058e-09 - gamma, kinetic energy (MeV) = 1.03777, position (cm) = (-119.947,131.485,200), weight = 1.49012e-08 - e-, kinetic energy (MeV) = 3.0602, position (cm) = (-115.358,158.85,200), weight = 3.72529e-09 - gamma, kinetic energy (MeV) = 0.178176, position (cm) = (-114.393,158.117,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 17.7908, position (cm) = (-119.448,158.879,200), weight = 3.72529e-09 - gamma, kinetic energy (MeV) = 0.112325, position (cm) = (-147.386,126.741,200), weight = 3.72529e-09 - gamma, kinetic energy (MeV) = 0.790157, position (cm) = (-162.732,128.247,200), weight = 9.31323e-10 - neutron, kinetic energy (MeV) = 0.000512095, position (cm) = (-158.634,112.513,200), weight = 9.31323e-10 - neutron, kinetic energy (MeV) = 4.70425, position (cm) = (-152.203,120.002,200), weight = 9.31323e-10 - neutron, kinetic energy (MeV) = 23.5291, position (cm) = (-138.192,124.761,200), weight = 9.31323e-10 - gamma, kinetic energy (MeV) = 2.45239, position (cm) = (-98.4832,154.223,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 0.790061, position (cm) = (-116.885,137.782,200), weight = 3.72529e-09 - gamma, kinetic energy (MeV) = 4.27926, position (cm) = (-129.106,145.326,200), weight = 3.72529e-09 - gamma, kinetic energy (MeV) = 0.264312, position (cm) = (-129.746,138.11,200), weight = 1.86265e-09 - neutron, kinetic energy (MeV) = 24.6856, position (cm) = (-125.133,144.867,200), weight = 9.31323e-10 - gamma, kinetic energy (MeV) = 0.363866, position (cm) = (-120.211,154.019,200), weight = 9.31323e-10 - neutron, kinetic energy (MeV) = 2.31875, position (cm) = (-126.722,141.361,200), weight = 9.31323e-10 - gamma, kinetic energy (MeV) = 0.127255, position (cm) = (-107.93,128.714,200), weight = 3.72529e-09 - gamma, kinetic energy (MeV) = 6.29634, position (cm) = (-127.489,128.089,200), weight = 3.72529e-09 - gamma, kinetic energy (MeV) = 9.78608, position (cm) = (-168.419,116.767,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 49.8163, position (cm) = (-145.428,114.902,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 49.8163, position (cm) = (-145.428,114.902,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.136496, position (cm) = (-131.992,114.661,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 27.1813, position (cm) = (-147.741,112.401,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 0.0247732, position (cm) = (-136.445,225.242,200), weight = 4.76837e-07 - neutron, kinetic energy (MeV) = 0.0854565, position (cm) = (-158.917,242.514,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.10192, position (cm) = (-151.643,231.923,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.455446, position (cm) = (-174.694,215.55,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 6.0059, position (cm) = (-168.996,232.84,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 6.0059, position (cm) = (-168.996,232.84,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 24.6345, position (cm) = (-158.32,234.633,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 0.0106779, position (cm) = (-147.258,181.857,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 2.50142, position (cm) = (-156.685,184.092,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 1.30356, position (cm) = (-135.238,129.257,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 60.0806, position (cm) = (-169.281,151.69,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 0.0541624, position (cm) = (-146.044,142.849,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 6.96154, position (cm) = (-121.975,165.15,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 1.19804, position (cm) = (-141.736,136.556,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 19.0882, position (cm) = (-143.878,174.708,200), weight = 2.38419e-07 - gamma, kinetic energy (MeV) = 0.515403, position (cm) = (-127.769,163.708,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 18.494, position (cm) = (-127.369,185.948,200), weight = 2.98023e-08 - gamma, kinetic energy (MeV) = 0.0766219, position (cm) = (-128.995,208.761,200), weight = 5.96046e-08 - gamma, kinetic energy (MeV) = 0.0882367, position (cm) = (-150.956,146.968,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 2.48473, position (cm) = (-159.161,151.203,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 2.40729, position (cm) = (-123.23,100.642,200), weight = 4.76837e-07 - neutron, kinetic energy (MeV) = 0.221301, position (cm) = (-98.0502,120.572,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.44678, position (cm) = (-86.3163,132.984,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.0772696, position (cm) = (-92.1845,134.754,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.297858, position (cm) = (-61.9157,124.76,200), weight = 4.76837e-07 - gamma, kinetic energy (MeV) = 1.32323, position (cm) = (-96.447,136.17,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 4.58548, position (cm) = (-88.4773,128.079,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.159982, position (cm) = (-93.0915,124.747,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.510999, position (cm) = (-92.1389,136.634,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 8.93556, position (cm) = (-92.7277,126.632,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 59.097, position (cm) = (-117.718,185.983,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 5.05853, position (cm) = (-132.475,170.511,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 11.8071, position (cm) = (-131.285,178.46,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 11.8071, position (cm) = (-131.285,178.46,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 0.0035634, position (cm) = (-70.0529,60.3017,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.0894237, position (cm) = (-27.8451,49.8368,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 2.56856e-06, position (cm) = (-71.304,46.8275,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 0.00225131, position (cm) = (-65.4189,64.0357,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 0.104939, position (cm) = (-66.0181,19.6667,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 17.8539, position (cm) = (-67.3781,-0.983727,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.113159, position (cm) = (-49.3003,-4.02673,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 0.00141965, position (cm) = (-61.9567,-2.68464,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 1.79756, position (cm) = (-67.7154,12.6216,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 1.5991, position (cm) = (-90.7591,35.2952,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 78.2736, position (cm) = (-20.0677,62.4285,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.129472, position (cm) = (-6.83935,62.5553,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 57.6552, position (cm) = (11.3435,75.0853,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.303696, position (cm) = (5.28642,69.1871,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.52114, position (cm) = (-3.77227,56.0752,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.0297288, position (cm) = (-9.32072,69.9174,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 5.07664, position (cm) = (-4.51707,70.5884,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.137411, position (cm) = (-54.0848,46.2083,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.123229, position (cm) = (-21.587,57.3725,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 0.000282487, position (cm) = (-21.6689,72.55,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 53.9259, position (cm) = (-16.8416,67.3332,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 76.9211, position (cm) = (-35.4617,65.9952,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 77.1122, position (cm) = (-36.812,68.011,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 76.7512, position (cm) = (-37.9137,69.1838,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.183807, position (cm) = (-16.5325,70.4178,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 2.41551, position (cm) = (-29.0634,57.5301,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 6.45721, position (cm) = (-24.8902,48.9853,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 1.11305, position (cm) = (-42.5287,8.04829,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 4.61897, position (cm) = (-1.41847,-3.02695,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 4.81855, position (cm) = (-3.23774,11.0433,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 0.40264, position (cm) = (-13.5737,-4.54062,200), weight = 7.62939e-06 - e-, kinetic energy (MeV) = 1.13156, position (cm) = (-15.0579,-2.97455,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 0.170437, position (cm) = (-10.699,-9.49134,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.426161, position (cm) = (-10.244,-12.2301,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 4.13446, position (cm) = (-10.691,-12.3644,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 3.32181, position (cm) = (12.7646,7.60481,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 5.00567, position (cm) = (3.71318,5.6329,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 10.8586, position (cm) = (-32.1168,2.2865,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 6.02868e-06, position (cm) = (-1.8175,12.0228,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 1.59953, position (cm) = (-10.8649,23.3107,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 2.67049, position (cm) = (6.01572,9.04204,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.206598, position (cm) = (2.47518,17.3883,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.510999, position (cm) = (2.44845,25.0549,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.34766, position (cm) = (8.87204,42.7356,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 15.9606, position (cm) = (14.1643,20.9667,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 0.383203, position (cm) = (16.8256,23.0363,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 15.9606, position (cm) = (14.1643,20.9667,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 15.9606, position (cm) = (14.1643,20.9667,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 15.9606, position (cm) = (14.1643,20.9667,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 15.565, position (cm) = (13.6326,15.9739,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 15.565, position (cm) = (13.6326,15.9739,200), weight = 5.96046e-08 - gamma, kinetic energy (MeV) = 0.94491, position (cm) = (11.6061,21.1192,200), weight = 5.96046e-08 - gamma, kinetic energy (MeV) = 0.0923216, position (cm) = (13.1808,17.8348,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 6.39025, position (cm) = (11.2416,19.6704,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 15.0744, position (cm) = (10.9646,20.4124,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 15.9606, position (cm) = (14.1643,20.9667,200), weight = 4.76837e-07 - gamma, kinetic energy (MeV) = 1.02106, position (cm) = (-62.4026,15.1623,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.716702, position (cm) = (-68.1734,11.3768,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.090374, position (cm) = (-10.855,4.25471,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.32921, position (cm) = (9.34551,76.504,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 45.3113, position (cm) = (-13.6009,93.498,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 11.3364, position (cm) = (-8.76172,86.5039,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 16.6076, position (cm) = (-17.9193,91.1185,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 45.0257, position (cm) = (-17.9239,104.121,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 1.74513e-06, position (cm) = (-13.1724,59.7786,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.257212, position (cm) = (-9.39735,51.6759,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 36.5969, position (cm) = (-12.6807,-12.6451,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.578234, position (cm) = (32.7057,-34.3,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 2.17274, position (cm) = (40.515,-46.5781,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 0.440873, position (cm) = (22.1504,-108.819,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 50.6184, position (cm) = (30.0733,-129.274,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 50.7488, position (cm) = (30.7295,-129.852,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 50.7488, position (cm) = (30.7295,-129.852,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 50.7488, position (cm) = (30.7295,-129.852,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 0.103599, position (cm) = (6.44696,-140.167,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 1.67032, position (cm) = (17.6416,-109.716,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 50.0062, position (cm) = (26.9449,-125.435,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.79238, position (cm) = (26.8614,-120.242,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.991375, position (cm) = (25.9337,-119.631,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 8.02718, position (cm) = (28.1919,-113.42,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.191368, position (cm) = (37.9048,-66.1945,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 1.56176e-05, position (cm) = (23.4354,-123.722,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 0.0121901, position (cm) = (24.333,-105.797,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 9.55057, position (cm) = (36.677,-89.3561,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 3.67313, position (cm) = (34.3074,-95.1611,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.141115, position (cm) = (38.1291,-106.399,200), weight = 3.05176e-05 - gamma, kinetic energy (MeV) = 0.344211, position (cm) = (55.7472,-97.9137,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 0.00016747, position (cm) = (52.6517,-99.388,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 18.867, position (cm) = (54.0084,-111.204,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 19.022, position (cm) = (54.7233,-110.707,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 5.66504, position (cm) = (36.9067,-111.332,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 19.0264, position (cm) = (30.4699,-105.221,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 27.2628, position (cm) = (-13.483,-124.731,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 27.3658, position (cm) = (-11.8752,-125.254,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 27.3658, position (cm) = (-11.8752,-125.254,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 1.4524, position (cm) = (0.517927,-106.513,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 5.49978, position (cm) = (7.29206,-76.1702,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 5.96387e-06, position (cm) = (7.43529,-82.2848,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 3.00852e-05, position (cm) = (1.04575,-42.9165,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 0.187465, position (cm) = (7.36048,-78.7338,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 6.19523, position (cm) = (-6.57897,-66.7441,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.1179, position (cm) = (-7.04368,-67.7221,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 6.63589, position (cm) = (-6.13546,-67.8318,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 13.1966, position (cm) = (-0.00353362,-52.7595,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 14.5626, position (cm) = (-6.59654,-68.2005,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 14.5626, position (cm) = (-6.59654,-68.2005,200), weight = 7.62939e-06 - neutron, kinetic energy (MeV) = 14.5626, position (cm) = (-6.59654,-68.2005,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 14.5626, position (cm) = (-6.59654,-68.2005,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.095086, position (cm) = (-6.05878,-74.461,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.711208, position (cm) = (-5.75348,-67.4699,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 0.224081, position (cm) = (-20.2407,-58.2805,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 10.9588, position (cm) = (-1.15595,-52.9449,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 2.42144, position (cm) = (-3.01546,-68.3136,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.127575, position (cm) = (10.6973,-47.2114,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 91.6419, position (cm) = (28.7302,4.73572,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 0.103181, position (cm) = (28.598,5.2261,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 22.1191, position (cm) = (28.3545,3.59918,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 52.157, position (cm) = (29.0722,5.21936,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 63.7655, position (cm) = (23.3423,-7.47812,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 92.009, position (cm) = (28.1708,-6.38187,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 2.81586e-06, position (cm) = (-87.5616,88.7122,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 0.410557, position (cm) = (-74.2263,98.703,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 2.07821, position (cm) = (-71.1335,106.601,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.991708, position (cm) = (-85.7699,112.607,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.723906, position (cm) = (-77.1091,108.014,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.0663679, position (cm) = (-97.5161,100.983,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 2.18543, position (cm) = (-97.3084,101.087,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 5.20917e-07, position (cm) = (-84.1361,102.791,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 3.52474, position (cm) = (-63.9664,91.2581,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.423014, position (cm) = (-88.3333,121.274,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 5.93979, position (cm) = (-98.141,73.6972,200), weight = 0.000244141 - gamma, kinetic energy (MeV) = 3.43147, position (cm) = (59.0675,-111.067,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 35.9591, position (cm) = (60.9377,-101.665,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 34.784, position (cm) = (-30.4541,-84.8932,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 34.5225, position (cm) = (-33.1094,-88.0656,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 34.603, position (cm) = (-30.6684,-84.3365,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 41.4051, position (cm) = (23.693,-104.75,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.690202, position (cm) = (28.6268,-97.8619,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.182309, position (cm) = (37.1155,-82.922,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 40.8747, position (cm) = (23.3318,-98.8982,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 40.439, position (cm) = (22.9507,-99.1512,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.598797, position (cm) = (133.389,-234.812,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.00156499, position (cm) = (114.673,-266.513,200), weight = 4.76837e-07 - neutron, kinetic energy (MeV) = 0.324837, position (cm) = (92.1891,-248.803,200), weight = 2.38419e-07 - neutron, kinetic energy (MeV) = 2.60878, position (cm) = (91.4843,-248.594,200), weight = 1.19209e-07 - neutron, kinetic energy (MeV) = 2.46282, position (cm) = (91.2671,-247.226,200), weight = 1.19209e-07 - gamma, kinetic energy (MeV) = 2.30997, position (cm) = (131.533,-219.284,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 0.757613, position (cm) = (15.8403,-91.3921,200), weight = 5.96046e-08 - gamma, kinetic energy (MeV) = 0.152762, position (cm) = (90.3531,-297.98,200), weight = 1.49012e-08 - gamma, kinetic energy (MeV) = 0.127871, position (cm) = (64.1286,-243.818,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 0.000412366, position (cm) = (60.116,-335.527,200), weight = 9.31323e-10 - gamma, kinetic energy (MeV) = 0.40265, position (cm) = (45.833,-343.49,200), weight = 2.32831e-10 - neutron, kinetic energy (MeV) = 0.38515, position (cm) = (44.6141,-341.544,200), weight = 2.32831e-10 - gamma, kinetic energy (MeV) = 1.25802, position (cm) = (45.8495,-343.87,200), weight = 2.32831e-10 - neutron, kinetic energy (MeV) = 1.5478, position (cm) = (38.514,-352.942,200), weight = 4.65661e-10 - gamma, kinetic energy (MeV) = 0.157349, position (cm) = (44.8035,-340.085,200), weight = 2.32831e-10 - gamma, kinetic energy (MeV) = 0.193105, position (cm) = (44.697,-293.194,200), weight = 2.32831e-10 - gamma, kinetic energy (MeV) = 0.287338, position (cm) = (31.5748,-357.431,200), weight = 9.31323e-10 - gamma, kinetic energy (MeV) = 0.156299, position (cm) = (49.8863,-293.475,200), weight = 2.98023e-08 - gamma, kinetic energy (MeV) = 0.0935103, position (cm) = (40.7777,-319.358,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 0.0137067, position (cm) = (-6.19713,-278.15,200), weight = 2.98023e-08 - gamma, kinetic energy (MeV) = 1.24719, position (cm) = (112.373,-230.798,200), weight = 7.62939e-06 - gamma, kinetic energy (MeV) = 1.60585, position (cm) = (126.2,-411.694,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 1.64014, position (cm) = (121.958,-388.148,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 20.6608, position (cm) = (121.62,-397.075,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 0.000290468, position (cm) = (136.6,-326.038,200), weight = 2.98023e-08 - neutron, kinetic energy (MeV) = 52.8733, position (cm) = (118.009,-342.755,200), weight = 7.45058e-09 - neutron, kinetic energy (MeV) = 52.7451, position (cm) = (118.492,-343.576,200), weight = 7.45058e-09 - gamma, kinetic energy (MeV) = 4.398, position (cm) = (116.291,-362.632,200), weight = 7.45058e-09 - neutron, kinetic energy (MeV) = 9.0399, position (cm) = (118.416,-343.08,200), weight = 7.45058e-09 - neutron, kinetic energy (MeV) = 17.5352, position (cm) = (116.543,-340.304,200), weight = 7.45058e-09 - neutron, kinetic energy (MeV) = 52.8733, position (cm) = (118.009,-342.755,200), weight = 7.45058e-09 - neutron, kinetic energy (MeV) = 63.6291, position (cm) = (164.879,-398.533,200), weight = 2.32831e-10 - gamma, kinetic energy (MeV) = 0.143071, position (cm) = (165.507,-397.799,200), weight = 2.32831e-10 - neutron, kinetic energy (MeV) = 7.98458, position (cm) = (150.185,-399.107,200), weight = 2.32831e-10 - gamma, kinetic energy (MeV) = 0.510999, position (cm) = (153.68,-455.369,200), weight = 1.45519e-11 - gamma, kinetic energy (MeV) = 0.47843, position (cm) = (146.791,-431.978,200), weight = 1.45519e-11 - neutron, kinetic energy (MeV) = 9.91948, position (cm) = (154.049,-449.943,200), weight = 5.82077e-11 - neutron, kinetic energy (MeV) = 9.68271, position (cm) = (154.211,-449.555,200), weight = 5.82077e-11 - gamma, kinetic energy (MeV) = 0.331677, position (cm) = (161.981,-461.313,200), weight = 1.16415e-10 - neutron, kinetic energy (MeV) = 3.60011e-05, position (cm) = (153.968,-434.321,200), weight = 1.16415e-10 - neutron, kinetic energy (MeV) = 0.813003, position (cm) = (111.706,-413.48,200), weight = 3.63798e-12 - gamma, kinetic energy (MeV) = 5.15019, position (cm) = (124.725,-406.547,200), weight = 3.63798e-12 - neutron, kinetic energy (MeV) = 4.7931, position (cm) = (120.406,-430.059,200), weight = 3.63798e-12 - neutron, kinetic energy (MeV) = 4.4048, position (cm) = (90.6555,-402.685,200), weight = 9.09495e-13 - neutron, kinetic energy (MeV) = 6.3117, position (cm) = (92.9289,-409.416,200), weight = 9.09495e-13 - neutron, kinetic energy (MeV) = 0.422713, position (cm) = (76.2232,-409.639,200), weight = 2.27374e-13 - neutron, kinetic energy (MeV) = 2.79585, position (cm) = (84.0852,-406.602,200), weight = 4.54747e-13 - gamma, kinetic energy (MeV) = 0.773306, position (cm) = (76.8464,-407.137,200), weight = 4.54747e-13 - neutron, kinetic energy (MeV) = 0.00966289, position (cm) = (63.8189,-416.992,200), weight = 4.54747e-13 - gamma, kinetic energy (MeV) = 0.211065, position (cm) = (62.7144,-422.762,200), weight = 4.54747e-13 - neutron, kinetic energy (MeV) = 3.903e-06, position (cm) = (73.5543,-410.364,200), weight = 2.27374e-13 - gamma, kinetic energy (MeV) = 2.09021, position (cm) = (86.3508,-409.537,200), weight = 2.27374e-13 - gamma, kinetic energy (MeV) = 4.8929, position (cm) = (98.9411,-390.328,200), weight = 2.27374e-13 - neutron, kinetic energy (MeV) = 1.62385, position (cm) = (120.671,-412.558,200), weight = 5.82077e-11 - gamma, kinetic energy (MeV) = 0.100974, position (cm) = (134.119,-415.336,200), weight = 1.45519e-11 - neutron, kinetic energy (MeV) = 1.51039, position (cm) = (140.435,-412.372,200), weight = 1.45519e-11 - gamma, kinetic energy (MeV) = 3.54655, position (cm) = (136.911,-415.543,200), weight = 1.45519e-11 - neutron, kinetic energy (MeV) = 7.69712, position (cm) = (128.788,-421.073,200), weight = 1.45519e-11 - gamma, kinetic energy (MeV) = 4.27789, position (cm) = (93.9124,-452.422,200), weight = 3.63798e-12 - neutron, kinetic energy (MeV) = 6.31842, position (cm) = (58.7881,-476.881,200), weight = 3.63798e-12 - gamma, kinetic energy (MeV) = 9.37494, position (cm) = (65.4632,-484.668,200), weight = 3.63798e-12 - neutron, kinetic energy (MeV) = 53.4133, position (cm) = (14.6861,-411.914,200), weight = 1.81899e-12 - neutron, kinetic energy (MeV) = 53.1666, position (cm) = (10.4773,-407.2,200), weight = 9.09495e-13 - neutron, kinetic energy (MeV) = 53.1666, position (cm) = (10.4773,-407.2,200), weight = 4.54747e-13 - gamma, kinetic energy (MeV) = 0.617853, position (cm) = (13.9843,-411.613,200), weight = 4.54747e-13 - gamma, kinetic energy (MeV) = 1.07411, position (cm) = (11.6036,-395.889,200), weight = 4.54747e-13 - neutron, kinetic energy (MeV) = 4.62054, position (cm) = (18.5521,-400.372,200), weight = 4.54747e-13 - gamma, kinetic energy (MeV) = 0.135382, position (cm) = (0.79083,-401.429,200), weight = 4.54747e-13 - gamma, kinetic energy (MeV) = 0.35126, position (cm) = (9.4803,-397.421,200), weight = 4.54747e-13 - gamma, kinetic energy (MeV) = 0.299273, position (cm) = (157.457,-449.286,200), weight = 1.45519e-11 - gamma, kinetic energy (MeV) = 0.0935501, position (cm) = (112.267,-375.679,200), weight = 4.65661e-10 - neutron, kinetic energy (MeV) = 27.323, position (cm) = (121.248,-374.501,200), weight = 2.98023e-08 - gamma, kinetic energy (MeV) = 0.177913, position (cm) = (96.1323,-428.673,200), weight = 1.86265e-09 - neutron, kinetic energy (MeV) = 0.000417712, position (cm) = (96.3126,-432.509,200), weight = 1.86265e-09 - gamma, kinetic energy (MeV) = 0.159355, position (cm) = (98.7358,-430.454,200), weight = 1.86265e-09 - gamma, kinetic energy (MeV) = 0.102447, position (cm) = (121.225,-430.303,200), weight = 9.31323e-10 - neutron, kinetic energy (MeV) = 0.632984, position (cm) = (132.82,-450.524,200), weight = 9.31323e-10 - gamma, kinetic energy (MeV) = 7.65459, position (cm) = (146.586,-412.377,200), weight = 9.31323e-10 - neutron, kinetic energy (MeV) = 10.9217, position (cm) = (122.34,-394.277,200), weight = 1.86265e-09 - neutron, kinetic energy (MeV) = 2.89349, position (cm) = (130.648,-426.091,200), weight = 4.65661e-10 - gamma, kinetic energy (MeV) = 0.0779846, position (cm) = (97.5605,-416.077,200), weight = 1.16415e-10 - neutron, kinetic energy (MeV) = 1.96029e-05, position (cm) = (84.3501,-416.071,200), weight = 2.91038e-11 - gamma, kinetic energy (MeV) = 0.282019, position (cm) = (88.9799,-409.954,200), weight = 2.91038e-11 - gamma, kinetic energy (MeV) = 0.14704, position (cm) = (89.8389,-400.923,200), weight = 2.91038e-11 - neutron, kinetic energy (MeV) = 3.64521, position (cm) = (88.633,-408.327,200), weight = 2.91038e-11 - gamma, kinetic energy (MeV) = 6.69329, position (cm) = (86.0007,-411.649,200), weight = 2.91038e-11 - neutron, kinetic energy (MeV) = 12.7106, position (cm) = (84.687,-408.202,200), weight = 2.91038e-11 - neutron, kinetic energy (MeV) = 12.7106, position (cm) = (84.687,-408.202,200), weight = 1.45519e-11 - gamma, kinetic energy (MeV) = 7.71815, position (cm) = (65.8668,-371.448,200), weight = 2.91038e-11 - neutron, kinetic energy (MeV) = 0.0157811, position (cm) = (133.701,-434.931,200), weight = 9.31323e-10 - gamma, kinetic energy (MeV) = 6.75992, position (cm) = (107.76,-439.567,200), weight = 9.31323e-10 - neutron, kinetic energy (MeV) = 2.59542e-07, position (cm) = (103.298,-434.87,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 0.000288969, position (cm) = (123.116,-422.77,200), weight = 1.86265e-09 - gamma, kinetic energy (MeV) = 2.86006, position (cm) = (121.11,-432.663,200), weight = 3.72529e-09 - neutron, kinetic energy (MeV) = 1.29902e-07, position (cm) = (94.7478,-293.313,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.438527, position (cm) = (48.5844,-277.602,200), weight = 9.53674e-07 - neutron, kinetic energy (MeV) = 1.39609, position (cm) = (79.6168,-331.615,200), weight = 1.49012e-08 - neutron, kinetic energy (MeV) = 0.0732809, position (cm) = (83.0445,-336.796,200), weight = 5.96046e-08 - neutron, kinetic energy (MeV) = 1.83116, position (cm) = (107.465,-334.592,200), weight = 2.98023e-08 - gamma, kinetic energy (MeV) = 0.87202, position (cm) = (88.964,-317.579,200), weight = 5.96046e-08 - gamma, kinetic energy (MeV) = 4.77311, position (cm) = (104.804,-322.398,200), weight = 2.38419e-07 - gamma, kinetic energy (MeV) = 0.11485, position (cm) = (95.9394,-254.001,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 3.06858, position (cm) = (36.7161,16.558,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.14651, position (cm) = (74.3075,36.3681,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 1.3873, position (cm) = (72.5553,15.5553,200), weight = 0.015625 - gamma, kinetic energy (MeV) = 0.179885, position (cm) = (101.105,31.9186,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 7.14373, position (cm) = (72.7293,25.421,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.179095, position (cm) = (70.629,35.3639,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 1.20062, position (cm) = (76.1377,21.6288,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 1.47353, position (cm) = (75.3028,24.2882,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.175427, position (cm) = (76.622,35.4436,200), weight = 0.00195312 - neutron, kinetic energy (MeV) = 75.6429, position (cm) = (106.104,36.3062,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 51.2965, position (cm) = (113.637,8.95029,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 3.12105, position (cm) = (5.64979,-9.06724,200), weight = 0.03125 - gamma, kinetic energy (MeV) = 0.510999, position (cm) = (47.9368,6.50353,200), weight = 0.03125 - gamma, kinetic energy (MeV) = 0.364937, position (cm) = (50.1835,24.7324,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.263872, position (cm) = (39.6403,-0.00602947,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.0741392, position (cm) = (60.5115,1.70446,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 0.753465, position (cm) = (47.9967,24.6085,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 1.79491, position (cm) = (46.2649,23.1972,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.245536, position (cm) = (25.6105,8.21828,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 15.7297, position (cm) = (33.767,10.7047,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 36.1868, position (cm) = (39.3215,11.8722,200), weight = 0.000244141 - neutron, kinetic energy (MeV) = 35.1831, position (cm) = (41.4576,19.0675,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 2.35036, position (cm) = (22.4679,17.2553,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 18.9724, position (cm) = (16.3708,19.7045,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 0.856196, position (cm) = (30.0716,36.1343,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 4.45584, position (cm) = (35.3145,34.4306,200), weight = 0.00012207 - gamma, kinetic energy (MeV) = 3.0211, position (cm) = (30.0249,27.643,200), weight = 0.00012207 - neutron, kinetic energy (MeV) = 36.0075, position (cm) = (28.5644,20.691,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 35.8284, position (cm) = (30.0669,21.2205,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 0.827125, position (cm) = (26.6201,-12.0711,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 0.42015, position (cm) = (17.9451,-51.4185,200), weight = 0.000976562 - neutron, kinetic energy (MeV) = 0.0778888, position (cm) = (-12.4412,-31.185,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 4.55554, position (cm) = (-9.15766,-15.7957,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.0640462, position (cm) = (33.8635,0.343063,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.472141, position (cm) = (27.164,-7.65905,200), weight = 0.000976562 - gamma, kinetic energy (MeV) = 0.85026, position (cm) = (16.4014,47.4355,200), weight = 0.5 - gamma, kinetic energy (MeV) = 0.0868322, position (cm) = (83.5057,2.80137,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 2.5289, position (cm) = (44.6773,20.6988,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 2.53736, position (cm) = (44.8532,20.786,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 0.525152, position (cm) = (68.8146,9.42594,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 0.167601, position (cm) = (54.8644,14.0317,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 0.682425, position (cm) = (-12.1439,33.0972,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.0948833, position (cm) = (-3.35893,29.2343,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 64.3987, position (cm) = (-11.2667,29.8603,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 0.0805515, position (cm) = (-9.69096,43.3095,200), weight = 0.015625 - gamma, kinetic energy (MeV) = 0.310056, position (cm) = (2.52368,45.1322,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 54.6169, position (cm) = (-3.09695,32.9986,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 8.18009e-06, position (cm) = (-1.12399,31.6655,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 1.12736, position (cm) = (5.82668,43.5564,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 1.05001e-05, position (cm) = (4.89637,29.6278,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 0.746027, position (cm) = (-130.42,8.7202,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.153208, position (cm) = (-112.411,59.3965,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 0.103316, position (cm) = (-113.683,57.8874,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 0.297351, position (cm) = (-110.441,65.5411,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 26.8924, position (cm) = (-114.029,61.3346,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 50.1371, position (cm) = (-98.5274,59.2544,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 17.2176, position (cm) = (-96.1744,53.0915,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 17.2176, position (cm) = (-96.1744,53.0915,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.11989, position (cm) = (-90.642,39.7017,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 1.14236e-06, position (cm) = (-84.4324,40.8759,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 5.50928, position (cm) = (10.5151,37.1054,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 0.41368, position (cm) = (-3.81583,9.65605,200), weight = 0.03125 - neutron, kinetic energy (MeV) = 0.563066, position (cm) = (-5.52647,24.9898,200), weight = 0.03125 - gamma, kinetic energy (MeV) = 0.116219, position (cm) = (-5.56289,28.2823,200), weight = 0.03125 - neutron, kinetic energy (MeV) = 10.6659, position (cm) = (-24.8665,18.4876,200), weight = 0.015625 - gamma, kinetic energy (MeV) = 0.344654, position (cm) = (-35.4635,34.9536,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 3.59488, position (cm) = (-40.9993,35.1556,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 3.85181, position (cm) = (-46.8722,44.1154,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 3.79873, position (cm) = (-43.6088,41.8973,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 2.97562, position (cm) = (-43.2091,29.9696,200), weight = 0.03125 - neutron, kinetic energy (MeV) = 99.6964, position (cm) = (-30.6783,14.282,200), weight = 0.03125 - neutron, kinetic energy (MeV) = 99.6964, position (cm) = (-30.6783,14.282,200), weight = 0.03125 - neutron, kinetic energy (MeV) = 46.355, position (cm) = (-36.2146,49.7831,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 46.355, position (cm) = (-36.2146,49.7831,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 46.3144, position (cm) = (-32.1297,51.3515,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 43.3772, position (cm) = (-52.1974,30.6203,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 0.510999, position (cm) = (-38.8039,47.4557,200), weight = 0.03125 - neutron, kinetic energy (MeV) = 8.93855, position (cm) = (-5.26442,62.6496,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 0.00696545, position (cm) = (-5.79718,-6.94636,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 0.00364866, position (cm) = (-24.2467,12.733,200), weight = 0.015625 - neutron, kinetic energy (MeV) = 0.322693, position (cm) = (-81.311,69.7617,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.064694, position (cm) = (-116.136,67.5198,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 2.28022, position (cm) = (-19.3892,97.7915,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.924667, position (cm) = (-36.0023,86.8912,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 5.99185e-07, position (cm) = (0.302212,96.0675,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.86021, position (cm) = (-92.9051,92.8029,200), weight = 1.52588e-05 - neutron, kinetic energy (MeV) = 2.02058, position (cm) = (-100.986,94.1026,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 0.161753, position (cm) = (-62.9512,95.4601,200), weight = 6.10352e-05 - gamma, kinetic energy (MeV) = 0.340794, position (cm) = (-54.295,83.1894,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.000648478, position (cm) = (-111.923,52.3868,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 13.3939, position (cm) = (-57.7054,90.7062,200), weight = 3.05176e-05 - neutron, kinetic energy (MeV) = 6.53092, position (cm) = (-58.6767,39.9865,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 16.9331, position (cm) = (-57.3877,39.481,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 9.99301, position (cm) = (-80.9652,66.6847,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 8.34827, position (cm) = (-83.2442,67.6268,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 0.0557201, position (cm) = (-77.8903,65.0985,200), weight = 4.76837e-07 - gamma, kinetic energy (MeV) = 0.0917951, position (cm) = (-79.8515,77.2306,200), weight = 4.76837e-07 - gamma, kinetic energy (MeV) = 0.388917, position (cm) = (-90.6569,63.5788,200), weight = 4.76837e-07 - neutron, kinetic energy (MeV) = 3.26918e-05, position (cm) = (-94.9957,55.525,200), weight = 4.76837e-07 - neutron, kinetic energy (MeV) = 4.77765, position (cm) = (-88.199,65.5205,200), weight = 4.76837e-07 - gamma, kinetic energy (MeV) = 0.0876593, position (cm) = (-64.8589,56.1316,200), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.0899301, position (cm) = (-79.9448,74.9787,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 2.57069, position (cm) = (-65.3028,48.6598,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 26.8305, position (cm) = (-20.109,6.15811,200), weight = 0.000488281 - neutron, kinetic energy (MeV) = 26.8305, position (cm) = (-20.109,6.15811,200), weight = 0.000488281 - gamma, kinetic energy (MeV) = 0.119665, position (cm) = (-91.6328,-7.97571,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 0.658789, position (cm) = (-31.5924,17.2323,200), weight = 0.00195312 - gamma, kinetic energy (MeV) = 1.82013, position (cm) = (15.0666,-0.755768,200), weight = 0.0625 - neutron, kinetic energy (MeV) = 1.07073e-05, position (cm) = (80.3647,11.9792,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 0.393811, position (cm) = (47.9131,-7.73321,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 1.26378, position (cm) = (60.841,-5.81691,200), weight = 6.10352e-05 - neutron, kinetic energy (MeV) = 0.347719, position (cm) = (90.2589,-30.2659,200), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 8.3757e-07, position (cm) = (114.028,-32.4744,200), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.81888, position (cm) = (115.171,-50.2548,200), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 5.74608, position (cm) = (126.576,-40.4195,200), weight = 9.53674e-07 - gamma, kinetic energy (MeV) = 0.192912, position (cm) = (93.9849,-34.8225,200), weight = 1.52588e-05 - gamma, kinetic energy (MeV) = 1.9293, position (cm) = (95.612,4.15387,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 70.4658, position (cm) = (97.2057,2.13823,200), weight = 0.0078125 - neutron, kinetic energy (MeV) = 98.0102, position (cm) = (94.2357,3.35071,200), weight = 0.0078125 - gamma, kinetic energy (MeV) = 0.3527, position (cm) = (72.1816,21.2361,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 0.204461, position (cm) = (85.7132,28.4678,200), weight = 0.00390625 - gamma, kinetic energy (MeV) = 0.132823, position (cm) = (64.6965,2.14625,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 2.84634, position (cm) = (93.7816,24.0573,200), weight = 0.00390625 - neutron, kinetic energy (MeV) = 22.3434, position (cm) = (71.0091,-11.0579,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 4.86249, position (cm) = (36.3131,-76.8625,200), weight = 0.25 + neutron, kinetic energy (MeV) = 65.5162, position (cm) = (36.5662,-82.0402,200), weight = 0.25 + neutron, kinetic energy (MeV) = 67.0836, position (cm) = (94.8208,52.0286,200), weight = 0.015625 + neutron, kinetic energy (MeV) = 66.09, position (cm) = (96.2476,59.7484,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 0.120249, position (cm) = (99.0984,49.2841,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 2.94327, position (cm) = (79.2965,69.2221,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 27.7042, position (cm) = (94.4006,57.3109,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 1.05045, position (cm) = (-30.8643,38.8474,200), weight = 0.125 + neutron, kinetic energy (MeV) = 79.6072, position (cm) = (-42.9771,31.8066,200), weight = 0.125 + neutron, kinetic energy (MeV) = 0.845255, position (cm) = (75.4957,-3.87705,200), weight = 0.00390625 + gamma, kinetic energy (MeV) = 4.05293, position (cm) = (56.581,-7.46242,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 4.83682e-07, position (cm) = (82.5374,-1.93927,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 0.117081, position (cm) = (23.0828,10.6631,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 0.06394, position (cm) = (20.4456,8.01602,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 1.98249, position (cm) = (6.29598,-6.29939,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 1.84803, position (cm) = (23.4394,-33.8096,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 7.65689, position (cm) = (28.9347,-13.1947,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 10.0465, position (cm) = (30.2025,-9.90473,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 20.4951, position (cm) = (12.0059,-29.7258,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 21.0705, position (cm) = (9.9753,-31.9391,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 20.768, position (cm) = (11.2357,-34.0613,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 21.123, position (cm) = (12.0432,70.5285,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 1.9284, position (cm) = (3.37226,66.0447,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 20.6868, position (cm) = (14.7009,71.2579,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 19.3204, position (cm) = (10.6323,69.7262,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 20.9018, position (cm) = (15.6094,68.4417,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 18.9977, position (cm) = (38.9744,119.36,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 3.76358, position (cm) = (15.8136,79.5607,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 21.1712, position (cm) = (19.5878,80.925,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 21.1712, position (cm) = (19.5878,80.925,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 21.1381, position (cm) = (18.7557,79.8093,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.21794, position (cm) = (14.7977,75.7505,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.474722, position (cm) = (19.7552,78.717,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.255343, position (cm) = (11.2595,82.8765,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 21.0619, position (cm) = (16.3396,79.5602,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.330124, position (cm) = (16.7125,77.3254,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 21.0619, position (cm) = (16.3396,79.5602,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 21.0619, position (cm) = (16.3396,79.5602,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 2.62759, position (cm) = (26.3929,118.279,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 3.46587, position (cm) = (-3.13283,90.782,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 0.947433, position (cm) = (12.4632,98.4534,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 2.05897, position (cm) = (11.8458,97.3391,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 3.64254, position (cm) = (8.4319,96.5274,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 1.20416, position (cm) = (2.50902,75.6924,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.150961, position (cm) = (32.526,90.4278,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.366218, position (cm) = (-5.00566,80.8447,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 5.16944, position (cm) = (-3.38039,86.5628,200), weight = 1.19209e-07 + gamma, kinetic energy (MeV) = 3.46231, position (cm) = (-6.13453,102.496,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 0.264292, position (cm) = (-8.34913,107.969,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 5.52201, position (cm) = (3.8655,99.738,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 5.52201, position (cm) = (3.8655,99.738,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 9.13666, position (cm) = (-13.9749,81.3617,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 9.26948, position (cm) = (-10.9008,79.2207,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.97355, position (cm) = (19.1788,85.5865,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 2.63646, position (cm) = (19.3244,71.8766,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 0.130923, position (cm) = (15.2802,71.8376,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 1.28269, position (cm) = (2.94057,78.7271,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 3.03794, position (cm) = (14.8797,78.1362,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 3.86287e-07, position (cm) = (24.2203,50.9222,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.180148, position (cm) = (10.9592,82.0826,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 0.00554579, position (cm) = (13.244,84.3622,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 1.15879, position (cm) = (2.2945,89.9155,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 0.0298963, position (cm) = (-26.4174,83.5058,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 3.52848, position (cm) = (-5.17773,85.9803,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 19.2294, position (cm) = (4.15563,90.4824,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 20.1657, position (cm) = (2.57822,90.1816,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 19.8959, position (cm) = (2.1143,93.5719,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 19.8959, position (cm) = (2.1143,93.5719,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 20.2721, position (cm) = (3.28512,91.0359,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 20.033, position (cm) = (1.7239,91.7727,200), weight = 1.19209e-07 + gamma, kinetic energy (MeV) = 0.252619, position (cm) = (-0.419826,87.4946,200), weight = 1.19209e-07 + gamma, kinetic energy (MeV) = 4.80712, position (cm) = (4.30897,88.9074,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 10.7566, position (cm) = (5.14905,91.9331,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 20.2186, position (cm) = (2.76352,90.8915,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 1.08698, position (cm) = (3.7877,69.5697,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.000975627, position (cm) = (55.7386,70.5042,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 36.8373, position (cm) = (1.32098,17.6026,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.0940808, position (cm) = (5.64635,2.24312,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.511342, position (cm) = (-4.01568,-7.68117,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 7.08472, position (cm) = (8.56169,0.804273,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.172673, position (cm) = (17.8524,-26.5838,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 2.06203, position (cm) = (12.1436,-21.4474,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 1.87178, position (cm) = (5.86266,-13.6955,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 7.33927, position (cm) = (12.3813,-31.8198,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 3.32465, position (cm) = (-55.5941,4.12209,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 20.8498, position (cm) = (19.2349,34.2423,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 12.932, position (cm) = (70.4399,65.9317,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 1.48847, position (cm) = (42.5672,38.1741,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 4.64875, position (cm) = (78.8529,53.0885,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 6.15864, position (cm) = (64.5321,55.9878,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 7.57106, position (cm) = (51.1078,56.1214,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 0.120793, position (cm) = (6.74074,19.9905,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.586214, position (cm) = (6.17537,80.3556,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.320398, position (cm) = (-25.7678,27.2517,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 2.08733, position (cm) = (-14.0108,41.5814,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.472343, position (cm) = (-17.5173,-5.11149,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 5.37387, position (cm) = (-17.2356,4.67784,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 1.61359, position (cm) = (-5.37449,-1.97346,200), weight = 6.10352e-05 + e-, kinetic energy (MeV) = 1.36152, position (cm) = (-5.17432,-1.97331,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 30.4194, position (cm) = (-15.9792,4.65544,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 30.1881, position (cm) = (-14.1466,3.11469,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 30.4515, position (cm) = (-17.4449,3.23953,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.723658, position (cm) = (-26.0413,8.33296,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.123592, position (cm) = (-23.982,9.33968,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 24.896, position (cm) = (-14.3224,9.97412,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 30.4515, position (cm) = (-17.4449,3.23953,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 29.2108, position (cm) = (-1.62044,-6.8803,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.251814, position (cm) = (-35.5502,9.77208,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 1.37156, position (cm) = (-74.1944,-38.1123,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 5.32819, position (cm) = (-76.5887,-36.9418,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 26.6683, position (cm) = (-83.6523,-40.2416,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 26.6591, position (cm) = (-72.1702,-24.7943,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.000104944, position (cm) = (-36.3086,-20.5,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 1.51374, position (cm) = (-36.089,-15.566,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.139804, position (cm) = (34.1958,19.9698,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 4.14465, position (cm) = (12.1455,7.70226,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 0.383929, position (cm) = (21.8635,1.02093,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 7.77847, position (cm) = (22.1245,5.12757,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 3.34898, position (cm) = (-5.94069,7.24703,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 2.24795, position (cm) = (-21.5473,18.4568,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 3.49443, position (cm) = (-33.3546,22.366,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 0.143679, position (cm) = (-9.3666,0.969092,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.530327, position (cm) = (-13.3341,-0.686296,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.466138, position (cm) = (3.92128,-3.02554,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 98.2881, position (cm) = (9.06053,38.2784,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 97.9976, position (cm) = (9.06302,38.2936,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 94.0277, position (cm) = (7.08426,35.0328,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 94.0277, position (cm) = (7.08426,35.0328,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 94.0277, position (cm) = (7.08426,35.0328,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 99.5312, position (cm) = (-3.61315,54.5613,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 98.4753, position (cm) = (-2.1835,42.8163,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.0819261, position (cm) = (50.4862,98.8395,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.000153076, position (cm) = (21.2,94.6945,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.0573073, position (cm) = (23.3027,68.7147,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 13.4366, position (cm) = (24.8056,68.8531,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 13.9944, position (cm) = (24.918,68.7972,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.0705718, position (cm) = (43.5077,58.2439,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.967424, position (cm) = (24.8325,78.47,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.05553, position (cm) = (43.0229,72.5836,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.350491, position (cm) = (53.3603,82.7281,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 4.01829e-07, position (cm) = (14.3965,66.5498,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0900376, position (cm) = (29.0763,71.0581,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.8286, position (cm) = (25.4324,69.3541,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.50638, position (cm) = (19.0153,69.9428,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 7.0146, position (cm) = (23.3524,68.9412,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.430868, position (cm) = (4.22974,83.5048,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 0.871584, position (cm) = (18.5106,66.5966,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 0.00336494, position (cm) = (19.8226,76.8502,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 3.15078, position (cm) = (34.3551,42.0261,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 3.49261, position (cm) = (43.5705,47.257,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 10.0465, position (cm) = (39.5122,46.3539,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.0760321, position (cm) = (66.8942,51.2696,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 0.00500107, position (cm) = (51.8871,10.9814,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.163578, position (cm) = (46.8067,42.0824,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 1.23783, position (cm) = (6.0906,40.7143,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.520607, position (cm) = (68.9707,67.6157,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 2.80651, position (cm) = (57.1925,72.2647,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 2.97806, position (cm) = (63.1069,73.9571,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.473046, position (cm) = (83.8866,70.758,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 1.87927, position (cm) = (93.579,75.2383,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.535402, position (cm) = (92.9097,77.0971,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 4.37588, position (cm) = (92.0855,120.678,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 40.7411, position (cm) = (95.2754,101.787,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 5.95214, position (cm) = (82.3672,58.9838,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 30.6988, position (cm) = (94.5623,56.9517,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 30.6988, position (cm) = (94.5623,56.9517,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 5.09056e-06, position (cm) = (103.592,59.8639,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 4.12434, position (cm) = (95.9683,59.1825,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 30.6988, position (cm) = (94.5623,56.9517,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 0.0168236, position (cm) = (93.4372,66.8323,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.510999, position (cm) = (57.6172,75.8376,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.767346, position (cm) = (83.5827,63.857,200), weight = 7.62939e-06 + proton, kinetic energy (MeV) = 16.3032, position (cm) = (121.453,51.3382,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.40401, position (cm) = (106.254,61.5852,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.449591, position (cm) = (114.158,57.7061,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 13.5254, position (cm) = (115.695,53.0977,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 13.5254, position (cm) = (115.695,53.0977,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 13.6365, position (cm) = (118.974,54.4195,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 40.2637, position (cm) = (124.508,57.8338,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 71.1292, position (cm) = (95.615,69.3648,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 1.72447, position (cm) = (-19.2903,52.0364,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 37.8464, position (cm) = (1.20869,42.8671,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 56.394, position (cm) = (24.1156,47.6883,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.069206, position (cm) = (27.3806,45.8253,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.396032, position (cm) = (15.5544,45.5618,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 3.60932, position (cm) = (17.8147,53.4533,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 37.7118, position (cm) = (24.7331,45.4687,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 37.7118, position (cm) = (24.7331,45.4687,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 56.3242, position (cm) = (24.1349,48.9056,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 97.219, position (cm) = (-0.268722,29.9995,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 99.4242, position (cm) = (9.28218,40.9286,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 30.6114, position (cm) = (20.667,53.1642,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 30.6114, position (cm) = (20.667,53.1642,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.233964, position (cm) = (21.3989,26.4596,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.350654, position (cm) = (27.0673,50.9674,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 19.4789, position (cm) = (30.7115,54.5458,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.0916832, position (cm) = (21.8407,49.0539,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.374187, position (cm) = (11.4049,46.3677,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.582453, position (cm) = (29.371,52.7491,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.328308, position (cm) = (27.2423,55.0871,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 5.17082, position (cm) = (31.0072,71.486,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 99.1289, position (cm) = (13.7899,38.5723,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 7.58973, position (cm) = (12.6809,36.4527,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.790111, position (cm) = (10.887,44.2302,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 0.683826, position (cm) = (6.30446,44.5651,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.510999, position (cm) = (-1.25357,35.6956,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 70.1349, position (cm) = (8.74506,45.1839,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.340271, position (cm) = (2.76419,28.7597,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.235986, position (cm) = (1.05113,37.4213,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 10.6742, position (cm) = (7.89009,41.6164,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 58.4721, position (cm) = (9.63928,41.099,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 99.4242, position (cm) = (9.28218,40.9286,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 51.5296, position (cm) = (4.3604,44.7278,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.128488, position (cm) = (5.96456,21.2529,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 1.12549, position (cm) = (14.3759,48.1597,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 59.4254, position (cm) = (-0.142645,27.8744,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 59.4254, position (cm) = (-0.142645,27.8744,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 59.4737, position (cm) = (7.86899,30.2932,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 59.4854, position (cm) = (8.22795,27.6381,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 3.11487, position (cm) = (-34.3687,69.6691,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 0.000260398, position (cm) = (-29.6786,77.0866,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 0.981442, position (cm) = (-96.422,155.019,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 1.26975, position (cm) = (-99.8218,159.749,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 6.69239, position (cm) = (-96.3044,155.961,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.110993, position (cm) = (-100.931,141.004,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 6.66143, position (cm) = (-87.6976,138.498,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.125487, position (cm) = (-99.9552,143.74,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 3.07484, position (cm) = (-99.442,146.581,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 4.7312, position (cm) = (-110.09,148.685,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 46.4682, position (cm) = (-103.231,148.056,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 46.3336, position (cm) = (-109.225,152.06,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 46.4784, position (cm) = (-104.912,148.16,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.0871037, position (cm) = (-101.143,129.759,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.00335974, position (cm) = (-119.224,121.533,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 6.63128e-07, position (cm) = (-57.2783,119.217,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.117696, position (cm) = (-81.1821,84.0755,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 5.62444, position (cm) = (17.4505,37.8555,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 0.0221184, position (cm) = (1.35193,11.3256,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 0.00601778, position (cm) = (19.8162,65.2878,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 3.10875, position (cm) = (15.5844,70.9474,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 1.0656, position (cm) = (-24.8385,46.6698,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.220004, position (cm) = (16.3595,28.2562,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 9.16967e-05, position (cm) = (-4.18717,21.9316,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 22.3332, position (cm) = (24.1193,2.30197,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 1.21485, position (cm) = (23.0611,2.00638,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 0.206317, position (cm) = (21.2875,2.30865,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 0.287521, position (cm) = (21.084,9.75615,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 4.36949, position (cm) = (33.57,13.0905,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 1.06539, position (cm) = (-4.56615,27.912,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 0.608411, position (cm) = (17.3065,-11.3814,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 19.5618, position (cm) = (-98.4302,38.8108,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 3.92227, position (cm) = (-100.065,46.5394,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 14.6144, position (cm) = (-99.7317,46.3441,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 21.2136, position (cm) = (-119.563,24.2615,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 21.5794, position (cm) = (-121.916,24.8827,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 3.50731, position (cm) = (-110.205,21.216,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 1.86654, position (cm) = (-85.993,18.4961,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.00203269, position (cm) = (-110.781,-4.72827,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.541286, position (cm) = (-112.965,-23.3205,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 10.0742, position (cm) = (-107.742,-26.7172,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 10.0742, position (cm) = (-107.742,-26.7172,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.137949, position (cm) = (-92.6089,28.0672,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.538599, position (cm) = (-51.6422,24.2391,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 3.88464, position (cm) = (-65.1347,29.0086,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 0.0349735, position (cm) = (-66.5774,-4.80993,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.27293, position (cm) = (-82.5758,41.7623,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 2.3545, position (cm) = (-35.7143,21.0581,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 0.225174, position (cm) = (-32.0885,23.9167,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 0.00801979, position (cm) = (-16.9591,9.78704,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.128489, position (cm) = (-36.615,18.2039,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 0.00127376, position (cm) = (-31.7551,14.8726,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.181433, position (cm) = (-40.0438,3.7632,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 8.87619, position (cm) = (-27.9088,-6.1926,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.888096, position (cm) = (-31.6079,-17.5575,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 5.53582, position (cm) = (-32.0482,-0.224694,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 5.70527e-06, position (cm) = (-38.9823,39.5025,200), weight = 0.00390625 + gamma, kinetic energy (MeV) = 5.71784, position (cm) = (-31.8828,37.7393,200), weight = 0.00390625 + gamma, kinetic energy (MeV) = 0.630415, position (cm) = (-45.5135,40.4685,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 2.5814, position (cm) = (-46.622,39.7105,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 5.48354, position (cm) = (-46.4635,40.1133,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 31.9464, position (cm) = (-42.4829,41.3591,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.272466, position (cm) = (-5.76032,49.1846,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 0.0650703, position (cm) = (1.67406,46.214,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 1.31289, position (cm) = (1.76682,39.9332,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 0.482708, position (cm) = (-4.90289,43.1048,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 98.167, position (cm) = (-34.0392,32.365,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 55.812, position (cm) = (-31.3401,16.6456,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 83.2757, position (cm) = (-128.191,50.5957,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 83.2757, position (cm) = (-128.191,50.5957,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 84.9089, position (cm) = (-142.09,34.6346,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 84.9089, position (cm) = (-142.09,34.6346,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 83.9004, position (cm) = (-121.285,48.4175,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 83.9004, position (cm) = (-121.285,48.4175,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 83.5878, position (cm) = (-121.755,46.8878,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 97.8896, position (cm) = (-40.6657,25.3823,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 0.0710913, position (cm) = (-26.0905,-39.0198,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.390202, position (cm) = (-14.3133,-1.47191,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 4.04783, position (cm) = (-33.0869,-4.1801,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.0832469, position (cm) = (-37.5067,8.2029,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 1.4798, position (cm) = (-31.2125,-4.55343,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 10.5781, position (cm) = (-23.8375,-10.4423,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 10.5781, position (cm) = (-23.8375,-10.4423,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.10883, position (cm) = (17.3603,-21.5531,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.0926759, position (cm) = (35.6314,-29.4354,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 55.5421, position (cm) = (24.8171,-29.49,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 73.8689, position (cm) = (23.3033,-25.9171,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 4.69395, position (cm) = (-3.08135,-15.3783,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.115362, position (cm) = (24.8659,-44.9872,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.109221, position (cm) = (45.3596,-8.23986,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 6.13186, position (cm) = (42.0746,-41.2098,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 7.0894, position (cm) = (53.7506,-47.5974,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.69233, position (cm) = (64.289,-72.4846,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 1.20374, position (cm) = (45.1055,-55.7715,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.395241, position (cm) = (55.0874,-62.9901,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.583107, position (cm) = (40.5802,-67.5482,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 3.14358, position (cm) = (34.409,-74.1854,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.204987, position (cm) = (45.9446,-57.6612,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 1.318, position (cm) = (42.0955,-53.0895,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 72.7041, position (cm) = (15.2189,-21.3439,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.45924, position (cm) = (14.372,-22.7818,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 39.4706, position (cm) = (-12.7692,-33.3114,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.4703, position (cm) = (-19.129,-30.1372,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 6.14151, position (cm) = (-30.036,-27.5579,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 0.098966, position (cm) = (38.9375,-2.11672,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.93933, position (cm) = (17.0793,-11.1618,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.274426, position (cm) = (-19.3842,-32.0209,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.105786, position (cm) = (-45.9871,-38.7954,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 4.99787, position (cm) = (-30.3707,-32.6414,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.0171966, position (cm) = (-33.7729,-13.7677,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 29.3233, position (cm) = (12.2581,-63.9349,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.398966, position (cm) = (-11.3887,-7.02843,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 1.26133, position (cm) = (-11.1855,-7.65016,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 78.4624, position (cm) = (-11.901,-9.45741,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 1.12531, position (cm) = (-18.9322,16.6349,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 49.7382, position (cm) = (-6.1909,14.6919,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 0.0423496, position (cm) = (40.3009,19.4091,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.287216, position (cm) = (41.1394,-11.8674,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.308795, position (cm) = (51.8888,-12.8698,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 5.1767, position (cm) = (48.7941,32.8847,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 25.1092, position (cm) = (39.6023,-15.8394,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.0846366, position (cm) = (38.4461,-14.7318,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.248718, position (cm) = (35.0171,-13.4418,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.251068, position (cm) = (62.5295,-9.12507,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 24.9684, position (cm) = (41.8356,-17.775,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 25.0295, position (cm) = (40.5507,-13.781,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.844953, position (cm) = (42.4949,-16.0663,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 6.52915, position (cm) = (39.8406,-13.1784,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 4.65185, position (cm) = (-22.1182,-29.8648,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 70.9254, position (cm) = (-12.2295,-8.34763,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 1.7594, position (cm) = (-13.3054,-6.34236,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 5.30994, position (cm) = (-15.3848,-6.9072,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 5.95454, position (cm) = (-14.5041,-7.12389,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 69.3208, position (cm) = (-14.4732,-7.22206,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.186537, position (cm) = (-7.11952,-21.5706,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.673855, position (cm) = (14.7428,-9.28704,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 1.21807, position (cm) = (-11.7809,-13.0821,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 2.2623, position (cm) = (-12.9215,-13.0266,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 71.2298, position (cm) = (-12.1808,-13.3365,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 5.84646, position (cm) = (-17.78,37.3993,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 22.6603, position (cm) = (-31.6886,18.3783,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 22.6603, position (cm) = (-31.6886,18.3783,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 20.1906, position (cm) = (-28.6141,17.9913,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 22.1758, position (cm) = (-26.3335,17.5268,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 22.1758, position (cm) = (-26.3335,17.5268,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 35.463, position (cm) = (2.23128,0.752075,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 35.1137, position (cm) = (2.56352,1.40853,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 35.5671, position (cm) = (1.29692,1.07768,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 37.7248, position (cm) = (-20.6219,3.41797,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 63.8705, position (cm) = (12.7463,-50.6144,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 63.8705, position (cm) = (12.7463,-50.6144,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 63.8619, position (cm) = (7.86021,-67.8537,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 1.20989, position (cm) = (-0.831942,-32.3444,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 1.38876, position (cm) = (-0.228709,-41.6034,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 3.27158, position (cm) = (4.09969,-44.2803,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 3.99298, position (cm) = (25.3107,12.8991,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 4.24173, position (cm) = (-8.17834,-24.5195,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 1.42876, position (cm) = (13.8724,-2.76001,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 4.97025, position (cm) = (-26.312,-15.0558,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 17.5351, position (cm) = (28.0327,17.8242,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 17.5351, position (cm) = (28.0327,17.8242,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 16.9449, position (cm) = (26.2073,0.57334,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 0.00244013, position (cm) = (22.4227,-15.4482,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 85.613, position (cm) = (33.9994,-40.5252,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 1.00849, position (cm) = (17.8103,-46.5418,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.0909735, position (cm) = (37.3743,-25.8527,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 6.44582, position (cm) = (27.1686,-29.7079,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 85.1961, position (cm) = (39.1007,-42.9111,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 84.9946, position (cm) = (38.5858,-41.9281,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 82.1412, position (cm) = (34.0743,-59.2372,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 82.537, position (cm) = (36.7911,-61.7303,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 4.57352, position (cm) = (26.7171,-10.3277,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 1.74839, position (cm) = (55.1556,-29.4868,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 86.2641, position (cm) = (11.8419,-38.2059,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.433181, position (cm) = (58.5175,-40.3265,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 1.62326, position (cm) = (29.9921,-10.7382,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.00048431, position (cm) = (29.1433,-21.9464,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 1.72141, position (cm) = (54.0146,-17.7637,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 59.6483, position (cm) = (55.0493,-41.6227,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 34.757, position (cm) = (46.2434,-35.9799,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 59.2694, position (cm) = (52.7864,-51.8381,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 59.1901, position (cm) = (52.3723,-51.7157,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 59.3555, position (cm) = (50.9502,-48.7866,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.19387, position (cm) = (32.2614,-49.6316,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.232921, position (cm) = (46.3791,-41.8748,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 2.52844, position (cm) = (1.15597,-34.7139,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.230553, position (cm) = (27.6986,-18.7957,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.147753, position (cm) = (20.5821,42.0462,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.510999, position (cm) = (28.3394,-9.20573,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 1.49448, position (cm) = (1.94052,-3.74905,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 1.03677, position (cm) = (-14.0778,-20.5865,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.150138, position (cm) = (-26.7346,-10.7358,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 14.7646, position (cm) = (-18.9801,-25.7724,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.495802, position (cm) = (-6.1059,-51.012,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 1.33305, position (cm) = (-5.34422,-48.5646,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 3.25408, position (cm) = (22.2105,-10.0241,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 15.609, position (cm) = (29.7598,-3.25068,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 15.489, position (cm) = (27.2673,-0.0658268,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.722832, position (cm) = (32.3937,-29.4619,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 5.61276, position (cm) = (10.548,8.86645,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 1.09284, position (cm) = (0.71655,-16.1811,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.170835, position (cm) = (12.7146,-56.0214,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.174446, position (cm) = (8.49544,-58.4869,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.000727032, position (cm) = (14.1632,-22.8022,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 0.00159519, position (cm) = (-14.4674,-21.8344,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 0.399467, position (cm) = (16.8264,25.6936,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 6.16312, position (cm) = (6.80885,27.5032,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 99.5996, position (cm) = (10.8394,27.6275,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 99.2947, position (cm) = (-9.63936,-7.20444,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 99.2947, position (cm) = (-9.63936,-7.20444,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.106792, position (cm) = (-13.0352,-18.6935,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.0538778, position (cm) = (-11.7694,-7.39661,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 52.125, position (cm) = (-10.2588,-1.44342,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.35714, position (cm) = (-34.223,0.853892,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.435724, position (cm) = (-27.1566,19.8528,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.301558, position (cm) = (-33.766,-0.0826215,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 98.3388, position (cm) = (-19.7736,-1.08126,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 54.8286, position (cm) = (-26.1183,-2.45801,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 99.2023, position (cm) = (-26.2945,-2.13402,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.084468, position (cm) = (-15.4923,-2.11743,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 46.1076, position (cm) = (-79.8841,13.5586,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.134, position (cm) = (-74.1466,10.8953,200), weight = 1.19209e-07 + gamma, kinetic energy (MeV) = 5.12459, position (cm) = (-84.6692,11.3341,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 34.1298, position (cm) = (-84.7164,8.78503,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 34.1298, position (cm) = (-84.7164,8.78503,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 45.3698, position (cm) = (-85.0058,9.74241,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 46.3338, position (cm) = (-85.9527,10.5451,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 2.00081e-05, position (cm) = (-46.4461,11.6042,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 0.0962061, position (cm) = (-63.2576,27.7753,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 0.0138753, position (cm) = (-76.5008,42.7961,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 1.33729, position (cm) = (-85.4015,30.505,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 2.96112, position (cm) = (-77.762,26.1758,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 27.1531, position (cm) = (-89.1571,33.4477,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 46.0082, position (cm) = (-90.1477,41.9097,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 46.0082, position (cm) = (-90.1477,41.9097,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 78.6394, position (cm) = (2.10042,-17.965,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 78.6394, position (cm) = (2.10042,-17.965,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.166401, position (cm) = (-103.238,12.3871,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 99.5682, position (cm) = (4.96036,7.567,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.208298, position (cm) = (0.845395,-0.573218,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.113733, position (cm) = (35.7712,-3.83598,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 10.1695, position (cm) = (44.8955,0.135735,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 8.76631, position (cm) = (39.8003,0.741954,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 10.1695, position (cm) = (44.8955,0.135735,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.44294, position (cm) = (10.1465,14.5243,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 96.4768, position (cm) = (3.556,8.39062,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.160948, position (cm) = (3.16615,1.72159,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 91.5733, position (cm) = (4.35094,7.87003,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.0916155, position (cm) = (-50.2382,73.5834,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 0.0635558, position (cm) = (-63.9983,79.8681,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 0.311458, position (cm) = (-45.9175,61.752,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 1.31732, position (cm) = (-53.8086,94.393,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 1.12813e-06, position (cm) = (-62.8706,25.906,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 0.543855, position (cm) = (-71.4726,88.2531,200), weight = 1.19209e-07 + gamma, kinetic energy (MeV) = 1.45138, position (cm) = (-63.424,84.7486,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 6.87033, position (cm) = (-65.7669,84.7738,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 6.87033, position (cm) = (-65.7669,84.7738,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 6.87033, position (cm) = (-65.7669,84.7738,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 6.87033, position (cm) = (-65.7669,84.7738,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 0.0668223, position (cm) = (-65.6566,89.0785,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 2.76868, position (cm) = (-65.3029,89.8111,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 0.0109308, position (cm) = (-51.777,35.544,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 0.114076, position (cm) = (-69.4428,75.8114,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 17.985, position (cm) = (-80.173,78.4962,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.619209, position (cm) = (-91.1667,100.861,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 4.34467, position (cm) = (-99.4188,79.0111,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 4.34467, position (cm) = (-99.4188,79.0111,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 7.59499, position (cm) = (-99.6562,80.7896,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 16.4284, position (cm) = (-108.513,78.1179,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 16.4284, position (cm) = (-108.513,78.1179,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 0.503126, position (cm) = (-100.609,75.701,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 4.7926, position (cm) = (-100.087,82.1303,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 6.21832, position (cm) = (-102.971,71.7154,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.171051, position (cm) = (-111.392,91.1012,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 2.02395, position (cm) = (-100.121,82.2892,200), weight = 1.19209e-07 + gamma, kinetic energy (MeV) = 0.192743, position (cm) = (-110.126,77.5,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.628267, position (cm) = (-106.783,80.0905,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 3.04474, position (cm) = (-105.938,78.5698,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 14.5649, position (cm) = (-104.335,80.2237,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.0947728, position (cm) = (-94.1462,86.7295,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 98.7527, position (cm) = (-30.4784,17.4595,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.262915, position (cm) = (-71.6705,58.2312,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 0.000167195, position (cm) = (-71.0781,67.3582,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 2.08536, position (cm) = (-74.3162,61.0658,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 0.0733853, position (cm) = (-71.1597,57.1094,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 0.0385918, position (cm) = (-70.3645,59.9745,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 0.150029, position (cm) = (-71.6901,62.3322,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 9.0822, position (cm) = (-80.8742,73.7754,200), weight = 1.49012e-08 + gamma, kinetic energy (MeV) = 4.49933, position (cm) = (-65.9847,45.5917,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 2.46209, position (cm) = (-18.4198,52.9352,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 9.14655e-05, position (cm) = (-41.392,42.3556,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 20.7505, position (cm) = (-19.572,71.9792,200), weight = 1.49012e-08 + gamma, kinetic energy (MeV) = 0.149042, position (cm) = (-4.68957,84.191,200), weight = 7.45058e-09 + gamma, kinetic energy (MeV) = 0.239458, position (cm) = (-5.66853,84.4588,200), weight = 7.45058e-09 + gamma, kinetic energy (MeV) = 9.0593, position (cm) = (-9.26966,80.5965,200), weight = 7.45058e-09 + gamma, kinetic energy (MeV) = 3.76378, position (cm) = (-21.4179,83.2967,200), weight = 7.45058e-09 + neutron, kinetic energy (MeV) = 11.54, position (cm) = (-21.3144,83.6064,200), weight = 7.45058e-09 + gamma, kinetic energy (MeV) = 0.897638, position (cm) = (-18.9271,63.273,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 0.36269, position (cm) = (-18.4681,46.2624,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 0.190154, position (cm) = (-10.4835,46.6979,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 0.198932, position (cm) = (-19.5122,49.4455,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 1.7056e-07, position (cm) = (-39.0339,10.8461,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 3.00361, position (cm) = (-32.4232,45.8149,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 4.47621, position (cm) = (-41.6175,23.7413,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 2.61749, position (cm) = (-55.3274,-4.41546,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 0.0496012, position (cm) = (3.4263,-4.33634,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 97.198, position (cm) = (8.12738,-2.80645,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 97.198, position (cm) = (8.12738,-2.80645,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 97.198, position (cm) = (8.12738,-2.80645,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 99.6925, position (cm) = (-4.45797,15.64,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 0.0155225, position (cm) = (-39.5344,-0.936312,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 3.3177, position (cm) = (-14.4687,87.3408,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.510999, position (cm) = (169.903,-225.17,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 0.16894, position (cm) = (-49.267,-35.5479,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 2.56871, position (cm) = (-24.7484,-38.2688,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 3.46889, position (cm) = (-53.6631,-36.8013,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 88.2802, position (cm) = (-59.7946,-26.0699,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 2.87161, position (cm) = (-47.7295,-61.9809,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.280356, position (cm) = (-101.857,75.352,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 1.26451, position (cm) = (-91.5253,62.9834,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 6.70355, position (cm) = (-77.9451,64.0304,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 9.72538e-07, position (cm) = (-111.524,59.9516,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 1.13143, position (cm) = (-125.756,57.4401,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 37.6262, position (cm) = (-87.6001,194.818,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 37.6262, position (cm) = (-87.6001,194.818,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 0.730162, position (cm) = (-78.4994,209.04,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 36.6429, position (cm) = (-101.115,183.522,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 75.522, position (cm) = (-136.76,-63.3299,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 75.522, position (cm) = (-136.76,-63.3299,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 75.522, position (cm) = (-136.76,-63.3299,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.207606, position (cm) = (-206.317,-93.0706,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.538636, position (cm) = (-193.877,-91.6644,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 2.57049, position (cm) = (-200.716,-84.9139,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 0.0834951, position (cm) = (-175.187,-69.003,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 2.81776, position (cm) = (-168.645,-62.4969,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 0.852419, position (cm) = (-206.078,-81.409,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 5.06529, position (cm) = (-189.942,-75.8479,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 0.162831, position (cm) = (-176.791,-90.5058,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 0.0656782, position (cm) = (-207.996,-51.423,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 2.43169, position (cm) = (-184.523,-79.0608,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 0.888782, position (cm) = (-195.114,-79.7306,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.311393, position (cm) = (-181.671,-96.8634,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 0.666892, position (cm) = (-181.936,-98.1459,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.072421, position (cm) = (-177.21,-99.258,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 13.8247, position (cm) = (-199.636,-91.4269,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 12.8719, position (cm) = (-197.39,-79.1117,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 2.96111, position (cm) = (-199.282,-93.4892,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 4.95529, position (cm) = (-187.352,-85.3799,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 8.93382, position (cm) = (-123.651,18.0029,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.171432, position (cm) = (-51.9846,-13.2924,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 69.1004, position (cm) = (-46.8995,11.3726,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 69.5671, position (cm) = (-65.2473,-7.76308,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 2.8115, position (cm) = (-41.5932,-52.3175,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 33.0086, position (cm) = (-76.8932,-48.3104,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 33.2961, position (cm) = (-76.0677,-48.3945,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 0.000186281, position (cm) = (-64.8786,-54.4776,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.108928, position (cm) = (-63.4351,-57.1192,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.293133, position (cm) = (-64.0023,-57.6057,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 2.10516, position (cm) = (-63.4079,-57.5359,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 32.8577, position (cm) = (-56.7495,-43.5205,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.210613, position (cm) = (-65.5999,-47.7318,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.104895, position (cm) = (-41.1966,-29.7117,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 4.52519e-05, position (cm) = (-46.1012,-25.3857,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 5.78923, position (cm) = (-74.7516,-2.97701,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 28.163, position (cm) = (-79.5988,8.60637,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 28.328, position (cm) = (-100.754,10.7953,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 0.120319, position (cm) = (-102.488,18.7969,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 0.495311, position (cm) = (-102.331,17.8051,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 1.59174, position (cm) = (-85.4651,15.4593,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 0.423236, position (cm) = (-60.5529,-39.2657,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.124111, position (cm) = (-82.37,-58.0963,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.183563, position (cm) = (-92.5347,-42.8062,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.0775981, position (cm) = (-87.5898,-58.0352,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 6.55656, position (cm) = (-83.324,-51.0423,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.338763, position (cm) = (-76.3161,-51.8981,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.101366, position (cm) = (-106.801,-48.8427,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 33.3772, position (cm) = (-82.3386,-53.3434,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 33.3772, position (cm) = (-82.3386,-53.3434,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.168159, position (cm) = (-64.8604,-41.3964,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.264645, position (cm) = (-44.0008,-47.4664,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 8.88892, position (cm) = (-96.1427,-32.0044,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 1.00499, position (cm) = (-75.014,0.102979,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 0.0109565, position (cm) = (-19.1099,48.7328,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.468629, position (cm) = (-74.1474,6.16489,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.124372, position (cm) = (-84.8818,11.7107,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 0.559445, position (cm) = (-71.4706,8.7156,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.120947, position (cm) = (-57.4895,-1.32787,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 2.22308, position (cm) = (-88.4125,-16.3508,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 3.95125, position (cm) = (-68.3554,-1.1216,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.155718, position (cm) = (-67.8288,9.33878,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 5.39901, position (cm) = (-80.7476,15.5026,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 96.8757, position (cm) = (-103.408,-51.3893,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 3.63883, position (cm) = (-46.4724,13.6591,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 18.7244, position (cm) = (-55.5984,46.1855,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 18.3302, position (cm) = (-42.4526,43.5041,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 1.8437, position (cm) = (-55.1644,64.3987,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 13.6524, position (cm) = (-42.0844,60.0215,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 13.6524, position (cm) = (-42.0844,60.0215,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 13.6006, position (cm) = (-42.6188,59.7325,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 7.50174, position (cm) = (-42.0904,60.0245,200), weight = 5.96046e-08 + proton, kinetic energy (MeV) = 4.90202, position (cm) = (-42.078,60.0182,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 13.6524, position (cm) = (-42.0844,60.0215,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 13.6524, position (cm) = (-42.0844,60.0215,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 13.6524, position (cm) = (-42.0844,60.0215,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 0.152803, position (cm) = (-41.7662,60.3514,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 10.4446, position (cm) = (-42.1745,59.9011,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 13.6524, position (cm) = (-42.0844,60.0215,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 2.75406e-05, position (cm) = (-59.5518,38.4774,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 0.0456987, position (cm) = (-71.9003,59.4121,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 21.0191, position (cm) = (-50.5352,89.2646,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.149203, position (cm) = (-61.0476,27.1205,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 1.98969, position (cm) = (-78.5385,40.5569,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 7.5856, position (cm) = (-72.3134,38.3243,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 7.5856, position (cm) = (-72.3134,38.3243,200), weight = 1.19209e-07 + gamma, kinetic energy (MeV) = 1.88078, position (cm) = (-70.9126,16.9845,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 5.85176, position (cm) = (-71.8065,25.6069,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.128969, position (cm) = (-74.2349,34.7861,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 2.64471, position (cm) = (-94.0581,-25.6261,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 2.63098, position (cm) = (-94.0902,-25.0949,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 1.94103e-06, position (cm) = (-180.655,-46.9757,200), weight = 4.65661e-10 + neutron, kinetic energy (MeV) = 4.29606, position (cm) = (-172.919,-32.8026,200), weight = 1.86265e-09 + gamma, kinetic energy (MeV) = 0.25303, position (cm) = (-206.577,-27.5448,200), weight = 1.86265e-09 + gamma, kinetic energy (MeV) = 8.27437, position (cm) = (-108.865,-8.66363,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 11.3687, position (cm) = (-99.1612,-8.67864,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 0.282872, position (cm) = (-105.446,-20.3553,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 0.10529, position (cm) = (-102.743,3.29911,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 5.41648, position (cm) = (-105.862,-48.6793,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 1.83916, position (cm) = (-103.524,-66.1827,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.510999, position (cm) = (-125.459,-50.9663,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.101812, position (cm) = (-95.841,-49.4928,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 2.33341, position (cm) = (-57.6474,-29.6236,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.0550035, position (cm) = (-46.7575,-4.36387,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 1.95286, position (cm) = (-31.5819,-14.3542,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 2.89613, position (cm) = (-34.8429,-13.2193,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.359183, position (cm) = (-31.2694,-26.125,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.093947, position (cm) = (-33.3174,-12.3091,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 3.84508, position (cm) = (-33.1536,-29.5232,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 21.0638, position (cm) = (-60.2231,-8.48516,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.69761, position (cm) = (-82.0327,-4.09365,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 6.591, position (cm) = (-120.492,10.3701,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0916457, position (cm) = (-51.0491,21.1846,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 4.73528, position (cm) = (-50.6778,16.7067,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 45.2191, position (cm) = (-48.6028,12.343,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 45.2191, position (cm) = (-48.6028,12.343,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 45.2191, position (cm) = (-48.6028,12.343,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 48.1189, position (cm) = (-52.3054,8.30955,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 1.53416, position (cm) = (-73.3286,-15.2943,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 99.2581, position (cm) = (-99.5659,-35.6598,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 98.8863, position (cm) = (-99.0356,-38.3274,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 98.8863, position (cm) = (-99.0356,-38.3274,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 98.8814, position (cm) = (-101.636,-36.005,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 99.1532, position (cm) = (-89.3177,-31.7073,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 88.3738, position (cm) = (-85.7758,-32.3558,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 90.3793, position (cm) = (-98.5837,-15.8512,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 1.27707, position (cm) = (-27.7187,-5.83703,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.180982, position (cm) = (-10.4678,-40.6625,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 57.5805, position (cm) = (-172.949,-17.776,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 57.3078, position (cm) = (-184.282,-9.41384,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.142053, position (cm) = (-179.083,-22.5919,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 45.8983, position (cm) = (-194.445,-46.829,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.804227, position (cm) = (-167.971,-33.602,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 1.46631, position (cm) = (-182.242,-31.0863,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 2.2866, position (cm) = (-6.64219,63.2753,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 28.5066, position (cm) = (-3.58314,58.0067,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 3.08599e-05, position (cm) = (6.65804,69.4207,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.0912938, position (cm) = (15.4687,74.6716,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 7.47648, position (cm) = (-12.953,53.0013,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.0944577, position (cm) = (-10.3122,62.8621,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 0.914211, position (cm) = (-11.8873,42.7886,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 1.97139, position (cm) = (-8.26749,49.1001,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 2.53351, position (cm) = (-13.1435,53.1282,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 2.25924, position (cm) = (-15.5869,52.8162,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.226709, position (cm) = (-12.9719,51.4281,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 92.2873, position (cm) = (-63.3545,30.7737,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 92.2993, position (cm) = (-63.208,30.8444,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 92.0849, position (cm) = (-70.9251,36.7479,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 1.07145, position (cm) = (-117.786,79.1731,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 3.58548, position (cm) = (-111.796,82.3767,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.525403, position (cm) = (-118.688,68.9113,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 18.945, position (cm) = (-73.5219,-33.1025,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 1.14212, position (cm) = (-60.4125,-23.3589,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.110362, position (cm) = (-63.9106,-4.01916,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 92.9039, position (cm) = (-108.835,-7.31982,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 92.9039, position (cm) = (-108.835,-7.31982,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 92.9039, position (cm) = (-108.835,-7.31982,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 3.74468, position (cm) = (-102.391,-0.0877308,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 0.0924418, position (cm) = (-44.9894,6.67391,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.153295, position (cm) = (-66.5846,-4.62816,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 0.180666, position (cm) = (-96.1772,41.1949,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 1.79235, position (cm) = (-104.348,42.8574,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 42.1771, position (cm) = (-89.1904,51.4338,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 40.4309, position (cm) = (-99.8341,23.1242,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 0.692719, position (cm) = (-88.2074,3.73295,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 42.377, position (cm) = (-93.2527,13.1124,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.122491, position (cm) = (-77.5298,-18.0227,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 67.0856, position (cm) = (-97.3392,-42.982,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.0886919, position (cm) = (-75.044,-5.88828,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 84.8837, position (cm) = (-89.297,-16.2064,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 5.64476, position (cm) = (-15.7553,-5.8101,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 83.0059, position (cm) = (-72.4048,13.8015,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 3.11523, position (cm) = (-87.7417,34.3523,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.415244, position (cm) = (-100.467,32.6057,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.181856, position (cm) = (-93.693,35.5852,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 2.02141, position (cm) = (-94.5345,31.0884,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 8.19748, position (cm) = (-96.7831,32.1599,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 7.39163, position (cm) = (-96.1064,38.8848,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.855604, position (cm) = (-123.443,32.0146,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.558378, position (cm) = (-100.991,-0.0419339,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 5.08844, position (cm) = (-84.7685,-1.86694,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 34.8362, position (cm) = (-97.9771,-11.9944,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 34.7887, position (cm) = (-97.5514,-11.8696,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 1.04802, position (cm) = (-92.1223,-1.20281,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 28.7608, position (cm) = (-91.8397,-1.91055,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 28.7416, position (cm) = (-91.8213,-1.80774,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 0.00570883, position (cm) = (-76.547,1.22755,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.0824287, position (cm) = (-84.676,20.093,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 4.44798, position (cm) = (-75.3367,16.4193,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 4.44448, position (cm) = (-74.2556,16.2668,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 0.301394, position (cm) = (-73.976,-2.3286,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 2.98882, position (cm) = (-76.8275,3.23213,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 91.9462, position (cm) = (-68.7171,28.2466,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.188516, position (cm) = (-81.7194,4.70161,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 0.466577, position (cm) = (-81.9908,4.22542,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.237077, position (cm) = (-60.8546,29.2642,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.133442, position (cm) = (-77.4056,-0.407082,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 1.24061, position (cm) = (-77.9818,0.911163,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 2.26593, position (cm) = (-76.9829,-10.5647,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.208405, position (cm) = (-84.2414,7.422,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 0.331895, position (cm) = (-82.3081,-3.60917,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.113144, position (cm) = (-44.6541,-17.8364,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 1.16234, position (cm) = (-21.9128,19.3838,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 43.3153, position (cm) = (-22.5155,-29.201,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.135756, position (cm) = (-20.1042,-24.4765,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.138421, position (cm) = (-18.725,-24.0172,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 8.57498, position (cm) = (-19.4668,-23.526,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.159054, position (cm) = (-20.3026,3.65525,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 4.25965, position (cm) = (-44.4364,-25.0657,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 16.9787, position (cm) = (-43.4485,-16.6528,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 16.9787, position (cm) = (-43.4485,-16.6528,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 16.9787, position (cm) = (-43.4485,-16.6528,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 0.00424176, position (cm) = (-36.5857,-65.4633,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 1.07885, position (cm) = (79.2544,19.4496,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 7.16765, position (cm) = (32.3402,-136.532,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.378178, position (cm) = (32.5169,-138.505,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 0.576771, position (cm) = (25.9542,-146.933,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.500534, position (cm) = (56.8736,-171.446,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.0635728, position (cm) = (23.3,-157.072,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 27.2689, position (cm) = (30.8382,-156.381,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 6.39524, position (cm) = (20.4864,-153.106,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 42.8643, position (cm) = (19.7101,-166.93,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 42.8643, position (cm) = (19.7101,-166.93,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 55.0858, position (cm) = (18.6747,-181.257,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 2.41366, position (cm) = (31.1107,-143.776,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 54.6546, position (cm) = (28.5382,-173.705,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 51.3277, position (cm) = (26.028,-175.852,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 2.10833, position (cm) = (10.9926,-72.9084,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 5.79699, position (cm) = (28.0086,-79.3685,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 4.39312, position (cm) = (13.724,-79.6365,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.116273, position (cm) = (3.102,-73.4944,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 5.70436, position (cm) = (13.7435,-69.5521,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 21.6619, position (cm) = (8.21752,-75.3464,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.732543, position (cm) = (39.4977,-66.7568,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 63.7738, position (cm) = (49.2651,-89.8877,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.21842, position (cm) = (24.6738,-87.7547,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.108893, position (cm) = (41.4938,-75.0023,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 43.0879, position (cm) = (39.2486,-80.3759,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 2.00735, position (cm) = (47.4926,-29.3183,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 1.52911, position (cm) = (29.1895,-40.8382,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 29.3758, position (cm) = (37.5944,-36.7063,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 29.835, position (cm) = (36.7975,-37.5293,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.96032, position (cm) = (56.084,-103.256,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.100545, position (cm) = (45.3084,-102.05,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 2.30459, position (cm) = (51.4647,-128.528,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 48.935, position (cm) = (74.1253,-99.9906,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 1.227e-05, position (cm) = (90.8258,-96.3138,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 2.60556, position (cm) = (74.6814,-92.0418,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 12.9763, position (cm) = (104.335,-108.592,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 13.0037, position (cm) = (104.328,-108.588,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 3.01509, position (cm) = (93.4664,-105.257,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 0.00181899, position (cm) = (100.418,-111.087,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 2.24598, position (cm) = (99.7728,-112.696,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 8.63357, position (cm) = (98.2704,-116.901,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 0.167429, position (cm) = (95.5476,-115.06,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 1.11288, position (cm) = (97.8857,-111.31,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 1.9017, position (cm) = (97.4253,-113.679,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.198833, position (cm) = (86.531,-122.198,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 5.41654, position (cm) = (62.9844,-95.3061,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 70.8922, position (cm) = (61.9729,-127.338,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.726339, position (cm) = (40.0421,-134.56,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 9.24035, position (cm) = (54.7883,-113.802,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.0711121, position (cm) = (82.1462,-74.291,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 30.7249, position (cm) = (63.1024,-118.309,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 30.7026, position (cm) = (63.1353,-118.381,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.997996, position (cm) = (-60.6273,29.2549,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.18261, position (cm) = (-51.6354,-9.12757,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.11255, position (cm) = (-105.025,83.6406,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.178504, position (cm) = (-76.5091,-3.70339,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 2.59891, position (cm) = (-39.6676,-10.5338,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 23.4719, position (cm) = (-89.2613,-35.6479,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 2.78733e-05, position (cm) = (-80.481,-25.0338,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 0.162601, position (cm) = (-76.0256,-14.4715,200), weight = 1.49012e-08 + gamma, kinetic energy (MeV) = 0.126572, position (cm) = (-81.1321,-23.7142,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 3.82915, position (cm) = (-84.0879,-22.0391,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 16.4619, position (cm) = (-83.8578,-29.8063,200), weight = 1.49012e-08 + neutron, kinetic energy (MeV) = 16.4619, position (cm) = (-83.8578,-29.8063,200), weight = 1.49012e-08 + neutron, kinetic energy (MeV) = 23.3501, position (cm) = (-92.6004,-32.5838,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 23.679, position (cm) = (-86.6946,-23.4129,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 23.679, position (cm) = (-86.6946,-23.4129,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 0.257954, position (cm) = (-84.1602,-29.2125,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 2.62855, position (cm) = (-81.9773,-31.4147,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 0.304173, position (cm) = (-87.7874,-32.6238,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 24.3584, position (cm) = (-82.7668,-32.4629,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 0.0706211, position (cm) = (-81.6851,-31.8743,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 6.38735, position (cm) = (-85.3235,-34.9869,200), weight = 1.19209e-07 + gamma, kinetic energy (MeV) = 4.53659, position (cm) = (-54.7166,-25.3766,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.895123, position (cm) = (-58.9358,-19.9971,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 3.93008, position (cm) = (-52.7942,-17.3409,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 8.39855, position (cm) = (-72.1525,-18.9712,200), weight = 4.76837e-07 + proton, kinetic energy (MeV) = 13.1145, position (cm) = (-72.214,-18.9674,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 24.058, position (cm) = (-72.1913,-18.9688,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 24.0041, position (cm) = (-72.5676,-17.8337,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 3.1256, position (cm) = (-57.2695,-17.5268,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 1.19096, position (cm) = (-53.8174,9.67809,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 3.05792, position (cm) = (-68.6642,-25.9622,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 4.08452, position (cm) = (-56.7198,-35.1193,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 3.33619, position (cm) = (-52.9994,-23.8331,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.117272, position (cm) = (-8.02281,-7.68091,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 1.30309, position (cm) = (-15.5533,-10.8025,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 1.40797, position (cm) = (-23.685,-8.44868,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 18.9197, position (cm) = (-56.6967,34.3823,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 18.9936, position (cm) = (-54.6864,35.2059,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 19.0413, position (cm) = (-56.3777,35.3059,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 18.626, position (cm) = (-48.1333,26.3591,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 2.01338, position (cm) = (-43.2696,23.1273,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.405857, position (cm) = (-35.4319,13.8817,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 1.41579, position (cm) = (-72.0128,13.1917,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.499385, position (cm) = (5.3,33.8276,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 20.2385, position (cm) = (-38.8114,19.7714,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 20.2385, position (cm) = (-38.8114,19.7714,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.0922241, position (cm) = (-27.587,67.8214,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 0.297019, position (cm) = (-82.6786,5.26757,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 2.09662, position (cm) = (33.2762,35.7251,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 54.4835, position (cm) = (-122.56,-171.052,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.115591, position (cm) = (-121.073,-187.147,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 39.0825, position (cm) = (-130.331,-198.116,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 54.4497, position (cm) = (-123.172,-182.102,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 54.158, position (cm) = (-121.642,-184.512,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 54.158, position (cm) = (-121.642,-184.512,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 8.12456e-05, position (cm) = (39.6257,-168.694,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 34.2926, position (cm) = (62.6607,-118.053,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 0.120737, position (cm) = (82.6106,-227.082,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 11.7005, position (cm) = (73.8088,-239.709,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 11.7005, position (cm) = (73.8088,-239.709,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.383534, position (cm) = (85.1152,-235.545,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 4.15872, position (cm) = (45.849,-182.753,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 15.2896, position (cm) = (87.7318,-234.035,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 0.00849115, position (cm) = (82.6931,-228.593,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 5.64854, position (cm) = (49.5011,-305.102,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 1.17295e-05, position (cm) = (54.0571,-275.098,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 4.68804, position (cm) = (57.5747,-280.568,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 0.145268, position (cm) = (50.6815,-294.261,200), weight = 1.19209e-07 + gamma, kinetic energy (MeV) = 1.05351, position (cm) = (48.2471,-303.55,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 2.84026, position (cm) = (50.0556,-300.689,200), weight = 1.19209e-07 + gamma, kinetic energy (MeV) = 0.230565, position (cm) = (39.1674,-305.013,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 0.617442, position (cm) = (37.9339,-302.148,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 1.65773, position (cm) = (40.4302,-304.627,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 14.6244, position (cm) = (38.857,-303.809,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 0.237792, position (cm) = (36.3626,-310.916,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 8.23952, position (cm) = (43.7809,-294.48,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 15.2499, position (cm) = (52.348,-284.482,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 15.0652, position (cm) = (52.6152,-286.484,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 15.2499, position (cm) = (52.348,-284.482,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 15.2499, position (cm) = (52.348,-284.482,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 15.2499, position (cm) = (52.348,-284.482,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 15.2499, position (cm) = (52.348,-284.482,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 0.000194855, position (cm) = (67.6828,-261.073,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 1.84642e-06, position (cm) = (126.025,-281.473,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 2.43027, position (cm) = (110.811,-234.299,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 6.98989, position (cm) = (-28.2046,-164.324,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 2.94704, position (cm) = (-16.3501,-122.667,200), weight = 1.16415e-10 + neutron, kinetic energy (MeV) = 6.2295, position (cm) = (-7.57121,-171.074,200), weight = 7.27596e-12 + gamma, kinetic energy (MeV) = 2.12812, position (cm) = (-18.8536,-174.949,200), weight = 7.27596e-12 + neutron, kinetic energy (MeV) = 5.07859, position (cm) = (-10.5082,-186.317,200), weight = 3.63798e-12 + gamma, kinetic energy (MeV) = 9.96612, position (cm) = (-24.7385,-165.549,200), weight = 2.91038e-11 + neutron, kinetic energy (MeV) = 1.56848, position (cm) = (-19.1495,-150.15,200), weight = 5.82077e-11 + neutron, kinetic energy (MeV) = 16.5827, position (cm) = (-25.1446,-149.562,200), weight = 5.82077e-11 + gamma, kinetic energy (MeV) = 1.39143, position (cm) = (29.2705,-124.627,200), weight = 1.16415e-10 + gamma, kinetic energy (MeV) = 5.28698, position (cm) = (21.8547,-140.127,200), weight = 2.32831e-10 + gamma, kinetic energy (MeV) = 0.179131, position (cm) = (-23.9951,-111.404,200), weight = 2.32831e-10 + neutron, kinetic energy (MeV) = 2.36085, position (cm) = (-23.3624,-113.152,200), weight = 2.32831e-10 + gamma, kinetic energy (MeV) = 0.510999, position (cm) = (-27.0655,-109.1,200), weight = 2.32831e-10 + gamma, kinetic energy (MeV) = 0.215312, position (cm) = (21.6717,-124.233,200), weight = 2.32831e-10 + neutron, kinetic energy (MeV) = 1.65223, position (cm) = (-10.6506,-98.9124,200), weight = 2.32831e-10 + neutron, kinetic energy (MeV) = 24.6307, position (cm) = (-24.8695,-126.908,200), weight = 3.72529e-09 + gamma, kinetic energy (MeV) = 0.0551146, position (cm) = (-24.8941,-121.251,200), weight = 3.72529e-09 + gamma, kinetic energy (MeV) = 0.165524, position (cm) = (-16.0422,-126.615,200), weight = 3.72529e-09 + gamma, kinetic energy (MeV) = 1.65534, position (cm) = (-23.198,-121.315,200), weight = 3.72529e-09 + neutron, kinetic energy (MeV) = 5.35579, position (cm) = (-23.791,-120.522,200), weight = 3.72529e-09 + gamma, kinetic energy (MeV) = 4.10835, position (cm) = (-37.4889,-110.598,200), weight = 7.45058e-09 + gamma, kinetic energy (MeV) = 0.200344, position (cm) = (-46.5176,-102.875,200), weight = 1.49012e-08 + neutron, kinetic energy (MeV) = 0.476925, position (cm) = (49.4651,-18.2141,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 97.0674, position (cm) = (-115.08,155.351,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 2.00001, position (cm) = (-114.14,152.039,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 97.328, position (cm) = (-115.845,155.318,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 79.7596, position (cm) = (-113.859,140.396,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 1.5565, position (cm) = (-127.82,155.833,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 2.40231, position (cm) = (-86.7171,129.215,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 96.5363, position (cm) = (-108.053,176.778,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 3.55037, position (cm) = (-77.5511,150.283,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 72.0012, position (cm) = (-133.828,147.42,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 3.17426, position (cm) = (-65.1416,174.341,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 82.6713, position (cm) = (-99.2326,144.062,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 82.6713, position (cm) = (-99.2326,144.062,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 1.55274, position (cm) = (-114.381,172.037,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 1.96824e-05, position (cm) = (-137.025,167.31,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.129602, position (cm) = (-141.736,161.946,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 1.78, position (cm) = (-116.559,132.802,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 6.44851, position (cm) = (-132.322,135.628,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.152076, position (cm) = (-132.163,159.105,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 0.00120188, position (cm) = (-130.295,173.936,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.588548, position (cm) = (-133.746,162.737,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 64.5003, position (cm) = (-143.438,142.998,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 0.288217, position (cm) = (-103.875,155.391,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.127483, position (cm) = (-115.718,180.612,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.911553, position (cm) = (-112.732,118.233,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.0692169, position (cm) = (-128.454,151.964,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.745479, position (cm) = (-136.884,142.562,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.148695, position (cm) = (-134.84,149.455,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 0.883352, position (cm) = (-133.869,144.226,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 3.61603, position (cm) = (-129.865,144.15,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 9.3051, position (cm) = (-129.194,149.772,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.112921, position (cm) = (-180.24,110.328,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 0.0436827, position (cm) = (-138.969,157.709,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 1.87075, position (cm) = (-118.103,157.173,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 48.8149, position (cm) = (-129.802,157.918,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.112025, position (cm) = (-128.913,157.187,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.58068, position (cm) = (-127.616,156.631,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 4.30157, position (cm) = (-126.462,156.741,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 48.9778, position (cm) = (-128.996,157.908,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 96.7524, position (cm) = (-118.164,147.003,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 68.7646, position (cm) = (-129.763,120.833,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 97.1153, position (cm) = (-130.838,157.058,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 2.28624, position (cm) = (-111.971,159.377,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 2.28624, position (cm) = (-111.971,159.377,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 5.68264, position (cm) = (-111.249,157.286,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 65.6365, position (cm) = (-170.396,217.626,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 1.45162, position (cm) = (-169.057,209.001,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 3.06037, position (cm) = (-170.921,212.705,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 49.5535, position (cm) = (-171.741,215.462,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 49.5535, position (cm) = (-171.741,215.462,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 49.5535, position (cm) = (-171.741,215.462,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 1.96849, position (cm) = (-172.293,187.806,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 3.19296, position (cm) = (-135.278,207.273,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 19.3379, position (cm) = (-132.301,183.506,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 19.6478, position (cm) = (-132.305,183.544,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 19.5467, position (cm) = (-132.249,183.574,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 32.2385, position (cm) = (-102.48,159.442,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 32.1985, position (cm) = (-102.374,159.326,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 97.328, position (cm) = (-115.845,155.318,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.129423, position (cm) = (-96.1773,130.122,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 96.9663, position (cm) = (-114.147,152.929,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 97.0051, position (cm) = (-109.347,152.901,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 97.1233, position (cm) = (-111.096,154.992,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 97.0189, position (cm) = (-111.079,155.028,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 93.7806, position (cm) = (-104.047,150.164,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 0.169722, position (cm) = (-79.9494,125.067,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 96.2206, position (cm) = (-127.452,151.385,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 2.73056, position (cm) = (-72.3686,128.627,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 5.0029, position (cm) = (-75.6114,121.435,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 5.0029, position (cm) = (-75.6114,121.435,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 1.53529, position (cm) = (-59.3635,174.157,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 9.02147, position (cm) = (-59.8852,170.807,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 26.563, position (cm) = (-59.5605,171.685,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 37.9443, position (cm) = (-58.407,173.254,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.173618, position (cm) = (-53.4186,159.764,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.624815, position (cm) = (-60.7043,167.716,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.663709, position (cm) = (-61.1023,168.95,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.545957, position (cm) = (-68.0686,184.165,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 43.2984, position (cm) = (-54.9401,175.06,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.159811, position (cm) = (-64.4288,162.134,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 96.6135, position (cm) = (-77.0482,149.915,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 95.9274, position (cm) = (-74.231,146.848,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 96.4738, position (cm) = (-71.9401,155.375,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 96.3938, position (cm) = (-71.0044,156.442,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 96.4738, position (cm) = (-71.9401,155.375,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.893622, position (cm) = (-174.389,-67.726,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.99428, position (cm) = (-172.077,-58.1193,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.188697, position (cm) = (-157.156,-52.1472,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 1.80008, position (cm) = (-198.127,-60.9889,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 3.82623, position (cm) = (-88.9689,-55.0225,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 5.01359, position (cm) = (-90.6623,-72.8815,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.0192426, position (cm) = (-163.724,-72.4416,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 18.2066, position (cm) = (-108.41,-38.051,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 18.2066, position (cm) = (-108.41,-38.051,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.135287, position (cm) = (-101.363,-34.312,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 2.2437, position (cm) = (-104.053,-36.0484,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 1.22096, position (cm) = (-120.79,22.95,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 5.05584, position (cm) = (-104.534,-4.39239,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.103932, position (cm) = (-77.3084,6.47845,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.109749, position (cm) = (-110.258,-0.995121,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.000200145, position (cm) = (-97.9479,-15.9119,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.30322, position (cm) = (-88.858,6.52444,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.57315, position (cm) = (-107.824,-40.3185,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 39.6374, position (cm) = (-85.9297,-54.5618,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 39.3337, position (cm) = (-101.811,-57.759,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 2.8963, position (cm) = (-90.8588,-55.0224,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 1.34995, position (cm) = (-25.0572,27.5808,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.195571, position (cm) = (-20.0315,36.4935,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 21.471, position (cm) = (-19.7085,29.173,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 35.212, position (cm) = (-48.4724,71.8332,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 83.0156, position (cm) = (-48.338,72.4836,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 83.8085, position (cm) = (-50.0717,58.6441,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 0.427686, position (cm) = (-45.7838,27.8516,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 1.03877e-05, position (cm) = (-45.1552,66.4571,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.233462, position (cm) = (-56.4156,42.1507,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 2.02503, position (cm) = (-56.4986,44.9497,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.00117304, position (cm) = (-3.83574,63.7851,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 8.86642, position (cm) = (-15.24,0.834649,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 1.42808, position (cm) = (-12.9384,-11.3253,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.721512, position (cm) = (-18.1917,-12.0701,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 32.0471, position (cm) = (-57.8382,54.0347,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 31.7578, position (cm) = (-55.8981,43.7444,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 1.70359, position (cm) = (-49.3001,30.7479,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.0953408, position (cm) = (-51.0857,18.0941,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 4.24827, position (cm) = (-42.7463,20.994,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 22.445, position (cm) = (-43.8217,23.3549,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.311227, position (cm) = (-48.2453,27.3813,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 4.55255, position (cm) = (-46.4411,15.8746,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.0838114, position (cm) = (-96.6407,45.5119,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 51.1736, position (cm) = (-97.385,45.52,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 62.6065, position (cm) = (-93.8823,30.773,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 0.306656, position (cm) = (-98.6518,34.4691,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 62.8519, position (cm) = (-104.784,37.3992,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 63.0028, position (cm) = (-104.477,37.348,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.722005, position (cm) = (-74.221,53.7899,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.264714, position (cm) = (-76.8342,68.008,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 99.556, position (cm) = (-48.2109,57.3576,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 99.556, position (cm) = (-48.2109,57.3576,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 2.89012, position (cm) = (-47.2592,56.346,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 31.0614, position (cm) = (-49.3287,58.9569,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 43.5019, position (cm) = (-46.8447,55.8156,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 99.4399, position (cm) = (-48.5301,55.646,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 72.5858, position (cm) = (-46.1876,50.2462,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 67.0297, position (cm) = (-11.3736,-48.8201,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 66.5893, position (cm) = (-12.1097,-49.7255,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 66.9595, position (cm) = (-8.89049,-49.0618,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 67.0568, position (cm) = (-11.9831,-48.9012,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 66.4466, position (cm) = (-10.721,-52.7267,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 66.4466, position (cm) = (-10.721,-52.7267,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.565436, position (cm) = (-3.611,-47.3694,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 6.86175, position (cm) = (-16.8431,0.732604,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.0673937, position (cm) = (-11.4647,-11.8487,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.140309, position (cm) = (-12.172,-49.3198,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 16.4977, position (cm) = (-7.29557,-40.0589,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.521272, position (cm) = (6.03076,-51.095,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.0323903, position (cm) = (4.83624,-55.5867,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 1.59426, position (cm) = (2.10209,-55.0889,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 66.7415, position (cm) = (-4.96541,-47.5516,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 66.7415, position (cm) = (-4.96541,-47.5516,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 66.7415, position (cm) = (-4.96541,-47.5516,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.138402, position (cm) = (-6.88063,-43.2168,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 2.7046, position (cm) = (-12.6968,-47.5712,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 3.38639, position (cm) = (-0.561879,-41.6231,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.0789546, position (cm) = (5.76587,-34.3204,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 1.14216, position (cm) = (2.6485,-31.9513,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 7.93418, position (cm) = (11.7693,-45.4238,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 1.1696, position (cm) = (13.6759,-35.7336,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 20.8028, position (cm) = (-2.8931,69.4051,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 0.000678423, position (cm) = (18.2594,55.2167,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 2.28244e-05, position (cm) = (4.22546,18.1268,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 8.48627, position (cm) = (-5.77966,56.5871,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 24.5429, position (cm) = (2.31946,60.9581,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 24.5429, position (cm) = (2.31946,60.9581,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.0668481, position (cm) = (-17.8791,67.5608,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.131516, position (cm) = (-17.4137,61.0953,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 12.7235, position (cm) = (-12.9225,67.5311,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 2.20695, position (cm) = (8.60761,70.349,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 5.9953, position (cm) = (-12.21,55.5083,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.11938, position (cm) = (-34.7452,83.8044,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 21.8818, position (cm) = (-15.5737,82.3239,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 3.83458e-06, position (cm) = (4.78861,-15.542,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 5.01322e-07, position (cm) = (25.2523,-57.379,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 26.9178, position (cm) = (0.0159479,-37.0776,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 1.47386, position (cm) = (-45.3686,-40.8888,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 2.88977, position (cm) = (-77.0199,-41.9857,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 1.83135, position (cm) = (-89.4665,-39.4341,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 0.239362, position (cm) = (-13.9528,-74.5295,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 17.4384, position (cm) = (-3.02644,-75.7573,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 17.4384, position (cm) = (-3.02644,-75.7573,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 17.4384, position (cm) = (-3.02644,-75.7573,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 0.299527, position (cm) = (-4.17732,-88.9462,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.594522, position (cm) = (-13.2103,-76.3318,200), weight = 0.00195312 + e-, kinetic energy (MeV) = 1.22701, position (cm) = (-13.2292,-76.2906,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.12425, position (cm) = (-9.98465,-76.3483,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 79.1219, position (cm) = (-4.62973,-73.2617,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 79.1769, position (cm) = (9.06605,-74.2492,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 79.1769, position (cm) = (9.06605,-74.2492,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.103905, position (cm) = (-2.01188,-59.4103,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 64.4284, position (cm) = (12.0614,-66.9625,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 64.4284, position (cm) = (12.0614,-66.9625,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 64.4284, position (cm) = (12.0614,-66.9625,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 64.4284, position (cm) = (12.0614,-66.9625,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 63.917, position (cm) = (12.2542,-66.8033,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 40.1008, position (cm) = (-17.879,-61.7767,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 39.2051, position (cm) = (-28.4194,-66.6307,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 39.2051, position (cm) = (-28.4194,-66.6307,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 34.6073, position (cm) = (-11.8977,-73.7803,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 4.46293, position (cm) = (7.1145,-46.3906,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 0.347698, position (cm) = (-87.0399,-62.3404,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 2.86013, position (cm) = (-34.4704,-49.567,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 0.29521, position (cm) = (-81.5873,-91.3596,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 1.75327, position (cm) = (-85.4041,-90.8113,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 2.88934, position (cm) = (-82.2565,-95.8709,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.000102998, position (cm) = (-101.661,-87.6309,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.272374, position (cm) = (-82.9224,-94.941,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.510999, position (cm) = (-82.1551,-98.6258,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.737184, position (cm) = (-108.898,-91.0597,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 8.39385, position (cm) = (-169.698,-48.7069,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 21.5547, position (cm) = (-181.691,-37.083,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 22.7406, position (cm) = (-215.456,-25.7425,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 3.40127, position (cm) = (-181.14,-7.39781,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 4.36834, position (cm) = (-186.677,-18.3167,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 4.14536e-06, position (cm) = (-208.814,-31.6892,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 3.64139e-06, position (cm) = (-188.734,-27.8059,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 5.25861, position (cm) = (-175.959,-36.133,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 22.3481, position (cm) = (-179.459,-36.4735,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.147483, position (cm) = (-140.104,-49.9102,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.0725487, position (cm) = (-134.079,-58.5109,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 3.34128, position (cm) = (-129.888,-60.3845,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.179858, position (cm) = (-125.277,-60.1763,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.153986, position (cm) = (-121.022,-55.267,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 2.09711, position (cm) = (-128.507,-52.5667,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.205337, position (cm) = (-50.3012,-74.1964,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 5.93671, position (cm) = (-119.027,-71.9305,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.727157, position (cm) = (38.9112,-30.2841,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.219698, position (cm) = (20.3329,-43.0519,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 4.37289e-05, position (cm) = (37.7421,-60.7088,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 3.13772, position (cm) = (44.8343,-57.823,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 99.1566, position (cm) = (42.2067,-35.5895,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 99.1848, position (cm) = (42.3304,-35.8915,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 99.1848, position (cm) = (42.3304,-35.8915,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 99.1848, position (cm) = (42.3304,-35.8915,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 99.1977, position (cm) = (-6.78078,23.7126,200), weight = 0.0625 + neutron, kinetic energy (MeV) = 88.1077, position (cm) = (34.9514,-0.915831,200), weight = 0.015625 + neutron, kinetic energy (MeV) = 4.12348, position (cm) = (25.4418,-8.52807,200), weight = 0.00390625 + gamma, kinetic energy (MeV) = 0.190552, position (cm) = (27.4616,7.0886,200), weight = 0.00390625 + gamma, kinetic energy (MeV) = 0.0767316, position (cm) = (27.2053,7.42357,200), weight = 0.00390625 + gamma, kinetic energy (MeV) = 1.50599, position (cm) = (38.4239,98.1878,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 88.1436, position (cm) = (33.7567,6.71044,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 88.1436, position (cm) = (33.7567,6.71044,200), weight = 0.00390625 + gamma, kinetic energy (MeV) = 0.366292, position (cm) = (72.5284,4.48654,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.4967, position (cm) = (79.8638,-2.75474,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 1.30394, position (cm) = (119.777,-1.29555,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.148381, position (cm) = (150.2,-36.0713,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.745928, position (cm) = (113.074,-0.860712,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 0.20032, position (cm) = (95.0721,-25.374,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 10.3907, position (cm) = (110.554,1.15455,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 64.7098, position (cm) = (114.853,-0.304675,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 2.76698, position (cm) = (113.564,-0.977103,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 81.812, position (cm) = (176.591,38.5082,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.848573, position (cm) = (190.22,46.3934,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.131882, position (cm) = (184.715,-4.71541,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 2.64146, position (cm) = (141.995,20.553,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 4.495, position (cm) = (130.239,35.1917,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 6.36037, position (cm) = (130.811,8.77454,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.121693, position (cm) = (157.294,44.0151,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 7.36633, position (cm) = (157.565,2.38201,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 81.6467, position (cm) = (182.811,21.4584,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 1.21738, position (cm) = (190.022,-1.74548,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 4.76246, position (cm) = (178.753,31.9065,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.16796, position (cm) = (181.672,29.1278,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.101565, position (cm) = (182.898,34.0159,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 1.13779, position (cm) = (183.385,30.0131,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.10734, position (cm) = (229.235,56.3732,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 1.72989, position (cm) = (196.062,34.665,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 3.64614, position (cm) = (183.553,27.8852,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.637585, position (cm) = (187.651,53.4284,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 82.7344, position (cm) = (184.886,13.2959,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 33.8086, position (cm) = (181.544,8.12622,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.199645, position (cm) = (2.50883,21.9009,200), weight = 0.015625 + gamma, kinetic energy (MeV) = 1.20921, position (cm) = (16.641,18.5232,200), weight = 0.015625 + neutron, kinetic energy (MeV) = 0.779016, position (cm) = (-15.229,0.175424,200), weight = 0.03125 + neutron, kinetic energy (MeV) = 3.00896e-05, position (cm) = (86.4707,85.787,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 6.22143, position (cm) = (-2.33519,-41.3128,200), weight = 0.015625 + neutron, kinetic energy (MeV) = 61.4827, position (cm) = (-21.5961,-67.5782,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 60.8849, position (cm) = (-26.2351,-68.2331,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 99.3097, position (cm) = (15.2781,10.1866,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 91.4134, position (cm) = (26.6408,23.507,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 98.5716, position (cm) = (39.7574,16.8365,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 98.3192, position (cm) = (43.1677,18.7154,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.148766, position (cm) = (4.88108,23.7516,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.195229, position (cm) = (6.81503,6.60663,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 31.2093, position (cm) = (-12.1797,-4.86062,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 30.5102, position (cm) = (-17.9805,-0.709869,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 99.3097, position (cm) = (15.2781,10.1866,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 99.3097, position (cm) = (15.2781,10.1866,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 99.3097, position (cm) = (15.2781,10.1866,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 99.3097, position (cm) = (15.2781,10.1866,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 99.3097, position (cm) = (15.2781,10.1866,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 99.3097, position (cm) = (15.2781,10.1866,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 2.57348, position (cm) = (8.31861,2.33827,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 68.2438, position (cm) = (-0.925676,22.2013,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 68.2438, position (cm) = (-0.925676,22.2013,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 68.1849, position (cm) = (-0.989549,22.255,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 68.2438, position (cm) = (-0.925676,22.2013,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 98.7758, position (cm) = (13.1787,8.76207,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 99.221, position (cm) = (11.5299,10.3737,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.240919, position (cm) = (-24.0823,-37.2277,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.811399, position (cm) = (-16.0992,-47.3216,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 1.2647e-05, position (cm) = (31.0874,10.9711,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 0.528384, position (cm) = (8.16762,-16.122,200), weight = 0.00390625 + gamma, kinetic energy (MeV) = 0.409097, position (cm) = (-33.8629,21.675,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 22.4169, position (cm) = (-30.5146,16.3922,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 28.8058, position (cm) = (1.94773,16,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 72.5042, position (cm) = (-7.41788,10.5438,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 5.71603, position (cm) = (0.185445,-35.3368,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 0.0952207, position (cm) = (-22.6299,-29.1061,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.106723, position (cm) = (-14.4916,-40.4937,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 15.7659, position (cm) = (-35.0032,-27.7966,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.768871, position (cm) = (-36.4214,-23.478,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.334835, position (cm) = (-25.2112,-31.0185,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 22.5711, position (cm) = (-35.8041,-40.4092,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 22.5711, position (cm) = (-35.8041,-40.4092,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 22.7814, position (cm) = (-37.5748,-47.1451,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 22.7814, position (cm) = (-37.5748,-47.1451,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 22.7814, position (cm) = (-37.5748,-47.1451,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.34233, position (cm) = (-34.6755,-40.9992,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.362461, position (cm) = (-29.443,-42.0781,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 3.08798, position (cm) = (-34.2984,-54.7498,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 22.2888, position (cm) = (-36.6084,-45.336,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.198957, position (cm) = (-31.6919,-37.9414,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 2.89045, position (cm) = (-35.206,-40.0412,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 22.7136, position (cm) = (-33.9468,-38.7683,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 19.1914, position (cm) = (-32.3011,-37.2226,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.735652, position (cm) = (-19.6803,-18.1426,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 9.69344, position (cm) = (-15.1493,-17.0015,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 11.8748, position (cm) = (-8.36006,-15.5925,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 28.3696, position (cm) = (1.85503,-0.641241,200), weight = 0.00390625 + gamma, kinetic energy (MeV) = 0.065349, position (cm) = (1.09353,-170.801,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 2.53625, position (cm) = (-16.1522,-117.299,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.339023, position (cm) = (-4.10691,-90.0417,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 27.8589, position (cm) = (-12.1697,-86.7572,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 37.6744, position (cm) = (-10.9629,-93.2818,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 37.6744, position (cm) = (-10.9629,-93.2818,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 37.4283, position (cm) = (-11.4463,-93.5354,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 36.3548, position (cm) = (-14.4771,-92.4482,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 2.04421, position (cm) = (105.063,-64.4798,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.517242, position (cm) = (95.7545,60.0699,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 0.113385, position (cm) = (106.946,55.4204,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 2.30884, position (cm) = (134.469,54.982,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 3.99, position (cm) = (117.702,64.1549,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.36117, position (cm) = (71.7319,39.9718,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.143165, position (cm) = (-10.1213,-61.1378,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 2.07383, position (cm) = (22.5551,-65.2367,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.25113, position (cm) = (55.6536,-80.3349,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.523249, position (cm) = (34.8071,-88.3387,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0721058, position (cm) = (34.8814,-75.7046,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.496753, position (cm) = (30.5847,-103.954,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 2.84966e-05, position (cm) = (79.4708,-94.0763,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 1.05241e-07, position (cm) = (39.9589,-6.61803,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 1.79396, position (cm) = (58.1668,-53.8443,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 7.35088, position (cm) = (117.139,-56.6199,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 4.84755, position (cm) = (108.781,-65.2544,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 51.9517, position (cm) = (115.905,-60.8741,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 0.000734688, position (cm) = (118.908,-59.6752,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.133113, position (cm) = (120.311,-76.093,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.279947, position (cm) = (76.2263,-58.9801,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.809871, position (cm) = (87.2173,-89.0052,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 23.2699, position (cm) = (97.9697,-99.7448,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 22.0999, position (cm) = (97.907,-99.6917,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 23.2699, position (cm) = (97.9697,-99.7448,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 23.2699, position (cm) = (97.9697,-99.7448,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.323904, position (cm) = (81.5495,-98.1366,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.510999, position (cm) = (87.181,-47.0407,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.139501, position (cm) = (90.8894,-55.6325,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 22.7018, position (cm) = (95.5698,-101.322,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 4.21695e-07, position (cm) = (110.42,-124.891,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 1.87269, position (cm) = (71.0815,-76.7415,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 4.86449, position (cm) = (72.3314,-63.3623,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 0.00166769, position (cm) = (79.8693,-47.3107,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.799822, position (cm) = (118.872,-25.2737,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 0.452046, position (cm) = (-20.7745,44.1215,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 1.12596, position (cm) = (-24.2317,30.7498,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 99.0161, position (cm) = (-19.4725,68.3942,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 99.0161, position (cm) = (-19.4725,68.3942,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 98.8763, position (cm) = (-18.5705,68.3881,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 98.8763, position (cm) = (-18.5705,68.3881,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 98.8763, position (cm) = (-18.5705,68.3881,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 99.0161, position (cm) = (-19.4725,68.3942,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 99.0161, position (cm) = (-19.4725,68.3942,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.101899, position (cm) = (-23.7489,69.0357,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 0.327852, position (cm) = (-20.0645,68.4423,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 18.3646, position (cm) = (-17.3818,66.882,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 2.56904, position (cm) = (-8.2732,58.9228,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 67.3468, position (cm) = (-1.65328,73.6338,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 67.3468, position (cm) = (-1.65328,73.6338,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 68.0494, position (cm) = (-2.27452,74.1434,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 14.4932, position (cm) = (2.00504,77.0436,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 0.142754, position (cm) = (-37.386,24.805,200), weight = 0.015625 + gamma, kinetic energy (MeV) = 0.0951507, position (cm) = (-47.1425,40.779,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 11.8015, position (cm) = (-42.6613,38.8872,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 1.10943, position (cm) = (-69.3257,106.799,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 2.49992, position (cm) = (-50.905,104.416,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 0.559093, position (cm) = (-61.2992,115.567,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 18.1833, position (cm) = (-62.5647,88.343,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 39.3724, position (cm) = (-81.2372,81.9482,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.378247, position (cm) = (8.88559,87.5979,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.0881831, position (cm) = (5.38401,61.256,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.0640097, position (cm) = (-11.7777,68.7081,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 18.1141, position (cm) = (-6.48588,74.1849,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 15.4551, position (cm) = (-5.60899,71.4824,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 18.339, position (cm) = (-7.77506,71.4211,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 18.339, position (cm) = (-7.77506,71.4211,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 18.339, position (cm) = (-7.77506,71.4211,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 17.9742, position (cm) = (-8.95398,71.4205,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 18.2917, position (cm) = (-3.86219,72.6851,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 18.1751, position (cm) = (-6.5727,73.5479,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.0626467, position (cm) = (-25.655,93.5866,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 0.0127972, position (cm) = (-23.7136,171.938,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 0.675174, position (cm) = (-35.846,176.535,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 0.0581427, position (cm) = (3.72575,112.826,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 0.755186, position (cm) = (1.58728,113.682,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.510999, position (cm) = (4.20821,113.718,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 2.29441, position (cm) = (3.32096,115.646,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.944733, position (cm) = (0.908822,131.55,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 1.74995, position (cm) = (0.804339,132.278,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.443146, position (cm) = (16.3108,100.405,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.489534, position (cm) = (14.7498,117.461,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.497093, position (cm) = (36.0588,118.821,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.994538, position (cm) = (29.2333,108.817,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 8.84434, position (cm) = (11.3043,123.439,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 8.68677, position (cm) = (10.1787,123.905,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 8.68677, position (cm) = (10.1787,123.905,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.141459, position (cm) = (5.2642,75.5139,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 59.8509, position (cm) = (82.8609,76.9898,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 59.9422, position (cm) = (81.1211,75.417,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 59.5749, position (cm) = (74.3851,71.4352,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 59.1174, position (cm) = (76.7322,73.3177,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 41.0487, position (cm) = (58.0629,75.9756,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 59.5938, position (cm) = (66.8582,65.1611,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 47.9954, position (cm) = (68.2518,65.2514,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 59.0739, position (cm) = (66.9138,64.7174,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 59.5938, position (cm) = (66.8582,65.1611,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 0.000377128, position (cm) = (61.2282,104.844,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 1.61898, position (cm) = (-189.504,61.2261,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 0.904462, position (cm) = (-177.48,83.2108,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 96.8301, position (cm) = (-140.858,87.4888,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 95.7719, position (cm) = (-139.707,87.0177,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 1.37161e-06, position (cm) = (-91.9306,58.6519,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.366521, position (cm) = (-107.296,52.0839,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 2.32745, position (cm) = (-116.395,72.7338,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 3.12816, position (cm) = (-107.898,64.2648,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 0.677524, position (cm) = (-103.561,45.8392,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 8.68557, position (cm) = (-95.7911,63.399,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 8.68557, position (cm) = (-95.7911,63.399,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 8.57869, position (cm) = (-93.0802,65.8156,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 8.57869, position (cm) = (-93.0802,65.8156,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 8.68557, position (cm) = (-95.7911,63.399,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 9.05629, position (cm) = (-86.8874,92.8187,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 9.05629, position (cm) = (-86.8874,92.8187,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 9.05629, position (cm) = (-86.8874,92.8187,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 5.00244, position (cm) = (-95.0334,51.7142,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 6.6437e-06, position (cm) = (-102.836,82.5013,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 7.41337, position (cm) = (-82.0539,16.5652,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 0.000133052, position (cm) = (-89.3749,15.4971,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.272652, position (cm) = (-129.468,-29.4522,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.191512, position (cm) = (-130.994,-29.1384,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 1.87086, position (cm) = (-138.39,-26.7631,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 0.168379, position (cm) = (-89.3938,8.67267,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 81.5305, position (cm) = (-96.7347,-0.214312,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 98.2477, position (cm) = (-87.7741,45.266,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 83.7347, position (cm) = (-92.075,38.8607,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 98.2477, position (cm) = (-87.7741,45.266,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 98.5801, position (cm) = (-86.6698,31.7024,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 39.5476, position (cm) = (-99.2174,9.8042,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 1.98192, position (cm) = (-54.639,29.7205,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 3.25609, position (cm) = (-52.2965,35.2691,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.102629, position (cm) = (-54.2021,36.7703,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.554457, position (cm) = (-52.6068,33.0271,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.49702, position (cm) = (-60.2212,39.7116,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.285511, position (cm) = (-58.9197,53.9056,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.196082, position (cm) = (-66.2545,54.3073,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 22.9106, position (cm) = (-33.6633,30.6631,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 22.9106, position (cm) = (-33.6633,30.6631,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 22.7235, position (cm) = (-33.6146,30.3643,200), weight = 4.76837e-07 + e-, kinetic energy (MeV) = 5.34612, position (cm) = (-59.9626,7.0331,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.0536229, position (cm) = (-60.2414,6.98782,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 14.1808, position (cm) = (-93.8164,-23.2973,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 0.0712669, position (cm) = (-95.4153,-23.4551,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 1.18506, position (cm) = (-144.039,15.1528,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 25.8392, position (cm) = (-82.027,19.7803,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 25.8392, position (cm) = (-82.027,19.7803,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 0.045414, position (cm) = (-83.5753,21.2082,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 1.66272, position (cm) = (-77.8683,15.0335,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 2.60279, position (cm) = (-78.1684,23.3633,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 0.605709, position (cm) = (-94.2567,20.2183,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.135312, position (cm) = (-90.232,18.6634,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.262115, position (cm) = (-95.7501,15.2168,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 0.340837, position (cm) = (-96.7076,23.2852,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 3.57527, position (cm) = (-94.6532,20.5372,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.165899, position (cm) = (-91.7844,19.7774,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.124173, position (cm) = (-97.689,5.10078,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.163876, position (cm) = (-98.8884,5.86242,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 3.98062, position (cm) = (-99.3649,5.73185,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 5.23431, position (cm) = (-99.8811,5.75343,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 34.474, position (cm) = (-78.457,8.39481,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 34.474, position (cm) = (-78.457,8.39481,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.493281, position (cm) = (-14.4844,-55.6904,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 2.60815, position (cm) = (-46.9156,-50.2479,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 1.11813, position (cm) = (4.2792,-16.2078,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 39.9252, position (cm) = (-29.3811,76.2735,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 39.9252, position (cm) = (-29.3811,76.2735,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 39.5733, position (cm) = (-31.7784,73.2022,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 2.91269, position (cm) = (-37.0613,73.1459,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.211137, position (cm) = (-32.4086,75.0745,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.451027, position (cm) = (-25.7124,76.9128,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 5.83382, position (cm) = (-32.3245,75.32,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 37.8811, position (cm) = (-38.0564,73.0067,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 38.5645, position (cm) = (-38.9264,72.0727,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 4.60377, position (cm) = (-70.1053,115.969,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.0835144, position (cm) = (-58.2868,60.3415,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.334938, position (cm) = (-41.8096,48.8145,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.127959, position (cm) = (-44.9516,109.869,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 36.6382, position (cm) = (-46.6159,115.994,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 4.3835, position (cm) = (-22.6119,104.545,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 5.3984, position (cm) = (-27.0163,98.0796,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 12.4592, position (cm) = (-36.7075,99.0593,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 2.86188, position (cm) = (-0.875549,29.1597,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 63.4527, position (cm) = (-4.74997,23.2687,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 63.4527, position (cm) = (-4.74997,23.2687,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 1.26818, position (cm) = (-5.53515,23.8464,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 1.56748, position (cm) = (-4.8325,22.2364,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 1.65764, position (cm) = (-5.3974,22.6051,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.109336, position (cm) = (-16.12,16.5366,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 2.57666, position (cm) = (-12.0123,3.69645,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 63.4527, position (cm) = (-4.74997,23.2687,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 97.6271, position (cm) = (-13.9262,16.5116,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 1.24945, position (cm) = (-11.7124,15.8163,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 54.1813, position (cm) = (-22.8008,21.842,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 55.1878, position (cm) = (-21.5773,18.3495,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 97.5432, position (cm) = (-10.1809,14.8974,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 18.2171, position (cm) = (47.6023,37.4774,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 3.98365, position (cm) = (1.8948,4.65669,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 87.1764, position (cm) = (-9.33752,39.4256,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 86.1384, position (cm) = (17.1666,45.8075,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 86.242, position (cm) = (17.396,46.1362,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 86.6576, position (cm) = (15.5489,39.3524,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 86.6576, position (cm) = (15.5489,39.3524,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 86.6576, position (cm) = (15.5489,39.3524,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 2.09606e-06, position (cm) = (24.7923,40.546,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 26.8045, position (cm) = (6.89313,32.6451,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.111031, position (cm) = (-6.61782,44.4761,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.108606, position (cm) = (6.88238,40.8465,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 3.62297, position (cm) = (5.93396,40.2808,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 6.75874, position (cm) = (7.67837,45.6003,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 26.8664, position (cm) = (3.73831,28.1216,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 26.8664, position (cm) = (3.73831,28.1216,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 6.65489, position (cm) = (18.9107,36.4384,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 42.0311, position (cm) = (29.9465,8.10689,200), weight = 0.00390625 + gamma, kinetic energy (MeV) = 0.571041, position (cm) = (33.2443,-8.20706,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 72.0397, position (cm) = (28.8574,16.1764,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 72.0397, position (cm) = (28.8574,16.1764,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 71.3889, position (cm) = (25.2063,18.4229,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 71.6863, position (cm) = (31.3628,16.6081,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 71.8365, position (cm) = (33.0029,18.5493,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 71.4562, position (cm) = (36.3933,17.404,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 71.7277, position (cm) = (32.581,17.6132,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.268003, position (cm) = (-12.8798,-47.9445,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.275754, position (cm) = (-44.1057,-50.8278,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.960566, position (cm) = (-46.3373,-44.7098,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 2.30915, position (cm) = (22.1753,-46.4046,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 52.0587, position (cm) = (-19.3572,-61.4345,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 0.826014, position (cm) = (20.2464,-8.58449,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 1.36833, position (cm) = (18.1538,-88.25,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 5.00068, position (cm) = (22.4876,-80.7861,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 5.00068, position (cm) = (22.4876,-80.7861,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 42.6865, position (cm) = (-37.9319,-67.3401,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.163485, position (cm) = (-48.8103,-48.6428,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.243486, position (cm) = (-62.1714,-66.2092,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 6.96429, position (cm) = (-57.4768,-72.8621,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 12.329, position (cm) = (-54.0139,-35.0167,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 0.310938, position (cm) = (-49.8374,-38.1943,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 9.24938, position (cm) = (-56.4092,-36.9527,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 1.72878, position (cm) = (-53.2861,28.5219,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 3.82698, position (cm) = (-46.8774,24.6821,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 1.03905e-05, position (cm) = (-54.4696,-11.3087,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 1.48052, position (cm) = (-55.4086,-38.9812,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 10.6599, position (cm) = (-96.8505,-26.9019,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 10.6599, position (cm) = (-96.8505,-26.9019,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 10.6599, position (cm) = (-96.8505,-26.9019,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 12.2449, position (cm) = (-108.869,-20.1158,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 32.1465, position (cm) = (-49.959,-56.7313,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 32.1465, position (cm) = (-49.959,-56.7313,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 31.9316, position (cm) = (-44.642,-56.7409,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 32.2547, position (cm) = (-44.3541,-56.4095,200), weight = 1.19209e-07 + gamma, kinetic energy (MeV) = 0.139579, position (cm) = (-39.2369,-82.719,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 0.168539, position (cm) = (-59.2694,-70.1494,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 0.304382, position (cm) = (-55.1829,-81.1887,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 32.1844, position (cm) = (-57.7933,-49.6953,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 32.1844, position (cm) = (-57.7933,-49.6953,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 31.9294, position (cm) = (-54.4506,-45.0088,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 1.29284e-06, position (cm) = (-88.332,-36.3446,200), weight = 3.72529e-09 + gamma, kinetic energy (MeV) = 1.36061, position (cm) = (-88.7971,-39.112,200), weight = 3.72529e-09 + neutron, kinetic energy (MeV) = 2.66584, position (cm) = (-83.4605,-67.8053,200), weight = 7.45058e-09 + neutron, kinetic energy (MeV) = 7.14513, position (cm) = (-105.862,-42.0209,200), weight = 7.45058e-09 + neutron, kinetic energy (MeV) = 5.34584, position (cm) = (-66.0317,-37.2064,200), weight = 1.49012e-08 + neutron, kinetic energy (MeV) = 11.1073, position (cm) = (-76.6987,-64.575,200), weight = 1.49012e-08 + gamma, kinetic energy (MeV) = 0.142006, position (cm) = (-52.8927,-44.1927,200), weight = 1.19209e-07 + gamma, kinetic energy (MeV) = 3.04566, position (cm) = (-55.5185,-46.7012,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 18.2019, position (cm) = (-55.6261,-47.7525,200), weight = 1.19209e-07 + gamma, kinetic energy (MeV) = 0.110183, position (cm) = (-13.5318,-42.7073,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.271554, position (cm) = (-38.8128,-41.8473,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.8809, position (cm) = (-69.68,-26.4005,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.04501, position (cm) = (-52.2721,31.8298,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 1.1925, position (cm) = (-63.7433,-59.5275,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 40.7396, position (cm) = (-15.9069,-15.2676,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.183032, position (cm) = (-22.6702,-30.564,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 24.7232, position (cm) = (-58.3557,-52.0502,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 2.36784, position (cm) = (-29.1007,-50.4722,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 43.1349, position (cm) = (-36.9867,-57.5928,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.21627, position (cm) = (63.6821,4.05216,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 11.3873, position (cm) = (66.66,-21.581,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.0810757, position (cm) = (119.76,-42.1234,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 3.25228e-05, position (cm) = (123.107,-14.1999,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.560289, position (cm) = (116.179,-22.7487,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 0.122004, position (cm) = (112.241,-24.6801,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 1.82037, position (cm) = (112.281,-77.4853,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 2.91989, position (cm) = (103.714,-33.5315,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 9.36982, position (cm) = (109.078,-37.7242,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 0.0870189, position (cm) = (92.0325,-12.8533,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 1.13912, position (cm) = (92.2737,-12.8001,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 3.65983, position (cm) = (92.8992,-15.0207,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 0.200704, position (cm) = (109.968,-9.11731,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.307266, position (cm) = (110.669,-24.0029,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.09202, position (cm) = (98.2633,-22.6448,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 7.34537, position (cm) = (116.596,-28.7683,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.50314, position (cm) = (113.996,-17.4582,200), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.3156, position (cm) = (121.925,-22.7316,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.37472, position (cm) = (127.317,-11.4329,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 2.44099, position (cm) = (140.601,13.0323,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 15.2783, position (cm) = (202.818,-43.0658,200), weight = 1.86265e-09 + neutron, kinetic energy (MeV) = 4.14044, position (cm) = (168.312,2.52172,200), weight = 3.72529e-09 + gamma, kinetic energy (MeV) = 3.52638, position (cm) = (192.583,-42.3487,200), weight = 7.45058e-09 + neutron, kinetic energy (MeV) = 1.96656e-05, position (cm) = (126.754,-73.3872,200), weight = 1.86265e-09 + neutron, kinetic energy (MeV) = 1.30609e-05, position (cm) = (126.473,-71.3837,200), weight = 1.86265e-09 + neutron, kinetic energy (MeV) = 8.86481, position (cm) = (166.272,-54.0199,200), weight = 9.31323e-10 + gamma, kinetic energy (MeV) = 0.139769, position (cm) = (173.432,-65.1436,200), weight = 9.31323e-10 + neutron, kinetic energy (MeV) = 0.001058, position (cm) = (166.029,-54.931,200), weight = 9.31323e-10 + gamma, kinetic energy (MeV) = 1.94553, position (cm) = (170.508,-56.0693,200), weight = 9.31323e-10 + gamma, kinetic energy (MeV) = 5.07353, position (cm) = (169.062,-56.3787,200), weight = 9.31323e-10 + gamma, kinetic energy (MeV) = 0.468518, position (cm) = (159.39,-79.8464,200), weight = 9.31323e-10 + neutron, kinetic energy (MeV) = 4.58899, position (cm) = (154.44,-62.5635,200), weight = 9.31323e-10 + gamma, kinetic energy (MeV) = 0.0946695, position (cm) = (154.006,-50.8714,200), weight = 9.31323e-10 + neutron, kinetic energy (MeV) = 10.7853, position (cm) = (150.994,-64.5872,200), weight = 9.31323e-10 + gamma, kinetic energy (MeV) = 0.353567, position (cm) = (168.728,-49.0951,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 2.52479, position (cm) = (128.786,-44.4466,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.0771133, position (cm) = (122.515,-35.0297,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 0.0413237, position (cm) = (119.941,-40.0082,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 24.4765, position (cm) = (128.657,-61.3992,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 1.13703, position (cm) = (114.31,-45.5943,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 2.17134, position (cm) = (109.687,2.62953,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 0.0751062, position (cm) = (122,11.3581,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 7.36907, position (cm) = (138.528,17.783,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 10.449, position (cm) = (140.928,13.1675,200), weight = 2.38419e-07 + gamma, kinetic energy (MeV) = 0.863687, position (cm) = (126.631,-37.7539,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 1.50112, position (cm) = (89.6696,-8.53404,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 2.23245, position (cm) = (116.651,-35.4341,200), weight = 1.49012e-08 + neutron, kinetic energy (MeV) = 4.01554, position (cm) = (114.198,-14.5387,200), weight = 1.49012e-08 + gamma, kinetic energy (MeV) = 0.0826935, position (cm) = (99.1951,16.0518,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 2.50071, position (cm) = (103.289,2.53276,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 5.88994, position (cm) = (122.928,-16.1648,200), weight = 5.96046e-08 + gamma, kinetic energy (MeV) = 0.0490922, position (cm) = (81.9316,6.74931,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 0.0256849, position (cm) = (97.322,13.9465,200), weight = 1.19209e-07 + neutron, kinetic energy (MeV) = 25.8207, position (cm) = (92.0897,7.25166,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 0.153727, position (cm) = (100.665,5.53547,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 0.11152, position (cm) = (92.2455,-13.8692,200), weight = 2.98023e-08 + gamma, kinetic energy (MeV) = 0.924546, position (cm) = (93.2191,-2.92831,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 16.1294, position (cm) = (106.666,6.48715,200), weight = 1.49012e-08 + neutron, kinetic energy (MeV) = 16.1889, position (cm) = (119.644,16.2373,200), weight = 1.49012e-08 + neutron, kinetic energy (MeV) = 16.8835, position (cm) = (87.4042,10.3197,200), weight = 2.98023e-08 + neutron, kinetic energy (MeV) = 22.8381, position (cm) = (91.4435,11.9977,200), weight = 7.45058e-09 + neutron, kinetic energy (MeV) = 22.7184, position (cm) = (91.4043,11.9959,200), weight = 7.45058e-09 + gamma, kinetic energy (MeV) = 0.224621, position (cm) = (93.4633,11.4258,200), weight = 1.49012e-08 + gamma, kinetic energy (MeV) = 0.258858, position (cm) = (97.4028,-8.19885,200), weight = 5.96046e-08 + neutron, kinetic energy (MeV) = 0.0350557, position (cm) = (100.942,12.2407,200), weight = 2.38419e-07 + neutron, kinetic energy (MeV) = 9.31381, position (cm) = (147.772,-70.3428,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 6.57961, position (cm) = (80.7674,-78.1708,200), weight = 4.76837e-07 + neutron, kinetic energy (MeV) = 0.00665054, position (cm) = (93.632,-38.225,200), weight = 9.53674e-07 + gamma, kinetic energy (MeV) = 4.65043, position (cm) = (100.629,-97.5081,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 1.15336, position (cm) = (128.306,-61.5855,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 0.538188, position (cm) = (6.92957,-19.8849,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 22.9713, position (cm) = (13.739,-8.33623,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 0.000277775, position (cm) = (12.2793,19.0007,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 0.0611081, position (cm) = (38.9545,29.8049,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 0.01577, position (cm) = (-39.4523,10.2528,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 6.47292, position (cm) = (-22.3743,31.43,200), weight = 3.05176e-05 + gamma, kinetic energy (MeV) = 1.49872, position (cm) = (-11.2529,-28.3604,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 50.8334, position (cm) = (-9.92369,-26.899,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 50.8341, position (cm) = (-11.4396,-24.8678,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 50.4056, position (cm) = (-11.0179,-24.9552,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 50.5227, position (cm) = (-10.9063,-24.9401,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 1.23891, position (cm) = (31.7637,-15.0177,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 99.2221, position (cm) = (6.16899,-37.0764,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.070906, position (cm) = (5.87385,-41.3191,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.100946, position (cm) = (3.00945,-74.3103,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.472679, position (cm) = (-25.9407,-45.0729,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.537934, position (cm) = (55.6406,-93.4772,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 0.3362, position (cm) = (28.6224,-81.8334,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 16.5289, position (cm) = (74.5248,-91.8782,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 18.2518, position (cm) = (70.2665,-95.5002,200), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 2.22333e-05, position (cm) = (14.9599,-87.8769,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.644492, position (cm) = (45.1334,-112.622,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.136508, position (cm) = (-49.152,-146.023,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 4.56332, position (cm) = (25.6605,-87.114,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 1.76757, position (cm) = (35.6108,47.6909,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 38.5624, position (cm) = (32.0723,45.5515,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 37.1497, position (cm) = (31.444,46.4414,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 38.5624, position (cm) = (32.0723,45.5515,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 38.3766, position (cm) = (32.4743,45.7053,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 1.41848, position (cm) = (30.6149,59.0128,200), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 6.71654, position (cm) = (43.0598,67.3946,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 39.5891, position (cm) = (48.4935,55.887,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 38.7532, position (cm) = (48.1713,66.3873,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 39.6752, position (cm) = (41.7477,60.7443,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 70.3906, position (cm) = (62.1218,44.2958,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 70.3906, position (cm) = (62.1218,44.2958,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 70.3906, position (cm) = (62.1218,44.2958,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 2.49154, position (cm) = (43.3133,21.5649,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.188537, position (cm) = (49.8662,9.63991,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 0.000322684, position (cm) = (42.2799,41.4153,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.19222, position (cm) = (83.5714,55.3741,200), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.866921, position (cm) = (82.8247,60.2385,200), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 70.5294, position (cm) = (99.8311,70.4505,200), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 70.5294, position (cm) = (99.8311,70.4505,200), weight = 9.53674e-07 + neutron, kinetic energy (MeV) = 70.3253, position (cm) = (94.4392,66.2803,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.15488, position (cm) = (99.8334,63.3696,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.215832, position (cm) = (93.7192,67.0659,200), weight = 4.76837e-07 + gamma, kinetic energy (MeV) = 0.251649, position (cm) = (74.2506,49.0597,200), weight = 7.62939e-06 + gamma, kinetic energy (MeV) = 1.84466, position (cm) = (81.6418,57.2797,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 2.35056, position (cm) = (67.0054,55.7165,200), weight = 1.52588e-05 + neutron, kinetic energy (MeV) = 70.5452, position (cm) = (108.516,63.5832,200), weight = 1.52588e-05 + gamma, kinetic energy (MeV) = 0.522808, position (cm) = (47.4756,11.9096,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 1.91685, position (cm) = (86.3863,3.73486,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 0.116401, position (cm) = (42.3181,26.0897,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 1.59029, position (cm) = (42.7494,32.1126,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 1.79225, position (cm) = (46.6299,31.2633,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.436347, position (cm) = (41.6649,64.0961,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 70.3034, position (cm) = (27.5033,11.1352,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 70.3034, position (cm) = (27.5033,11.1352,200), weight = 6.10352e-05 + neutron, kinetic energy (MeV) = 70.3034, position (cm) = (27.5033,11.1352,200), weight = 6.10352e-05 + gamma, kinetic energy (MeV) = 0.134856, position (cm) = (8.73676,52.9219,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 1.75208, position (cm) = (51.4263,-87.0788,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.510999, position (cm) = (25.1859,-92.7679,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 4.12562, position (cm) = (-11.4904,-104.828,200), weight = 0.000488281 + gamma, kinetic energy (MeV) = 0.257917, position (cm) = (25.8927,-85.6156,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 6.3762, position (cm) = (22.6078,-31.7369,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 46.7249, position (cm) = (27.1085,-37.9554,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 0.760326, position (cm) = (29.1296,-29.1424,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 1.47461, position (cm) = (51.0834,-33.8164,200), weight = 0.00390625 + gamma, kinetic energy (MeV) = 0.210348, position (cm) = (15.8577,-49.2188,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 72.0105, position (cm) = (16.163,-51.4225,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 72.0105, position (cm) = (16.163,-51.4225,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 96.9396, position (cm) = (17.5661,-48.8855,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 96.9785, position (cm) = (18.8767,-47.9546,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 96.9785, position (cm) = (18.8767,-47.9546,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.370692, position (cm) = (30.8059,-27.8839,200), weight = 0.00390625 + gamma, kinetic energy (MeV) = 1.0074, position (cm) = (33.3195,-28.7672,200), weight = 0.00390625 + gamma, kinetic energy (MeV) = 3.34236, position (cm) = (35.1551,-32.8337,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 4.43007, position (cm) = (11.7838,-9.56213,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 8.67478, position (cm) = (20.5924,-28.7874,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 8.4695, position (cm) = (20.8301,-29.4963,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 8.67478, position (cm) = (20.5924,-28.7874,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 8.67478, position (cm) = (20.5924,-28.7874,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 0.000131921, position (cm) = (19.6902,-27.4199,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 4.83603, position (cm) = (17.1748,-37.2033,200), weight = 0.00012207 + gamma, kinetic energy (MeV) = 0.361841, position (cm) = (34.1379,-25.9667,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 5.76993e-05, position (cm) = (31.4521,-29.57,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 38.1881, position (cm) = (39.0858,-30.9065,200), weight = 0.00390625 + neutron, kinetic energy (MeV) = 98.9081, position (cm) = (42.5788,-56.722,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 64.3574, position (cm) = (52.2086,-51.2438,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 0.00154991, position (cm) = (46.9905,-50.1487,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 5.50708, position (cm) = (41.6676,-35.106,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.142445, position (cm) = (56.7368,-56.7204,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 0.656593, position (cm) = (50.1675,-50.2241,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 1.21727, position (cm) = (46.0205,-62.8837,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 1.60253, position (cm) = (40.2616,-70.1668,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.248489, position (cm) = (43.1288,-62.9285,200), weight = 0.000244141 + gamma, kinetic energy (MeV) = 0.26191, position (cm) = (60.2985,-64.416,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 1.452, position (cm) = (59.1087,-52.6176,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.716605, position (cm) = (22.3696,-64.5676,200), weight = 0.000976562 + gamma, kinetic energy (MeV) = 0.0871733, position (cm) = (41.8749,-55.5982,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 72.3319, position (cm) = (60.2943,-49.2735,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 97.3937, position (cm) = (73.4218,-54.0086,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 97.0286, position (cm) = (73.2985,-52.9523,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 97.4465, position (cm) = (73.1733,-52.5348,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 98.531, position (cm) = (61.294,-65.5035,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 97.2194, position (cm) = (67.5439,-62.5995,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 97.2194, position (cm) = (67.5439,-62.5995,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 85.9784, position (cm) = (60.7175,-66.8708,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 98.1075, position (cm) = (60.8196,-68.3963,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 98.1075, position (cm) = (60.8196,-68.3963,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 98.1075, position (cm) = (60.8196,-68.3963,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 99.0556, position (cm) = (47.3796,-45.7848,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 99.0556, position (cm) = (47.3796,-45.7848,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 98.9911, position (cm) = (47.8678,-46.1608,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 84.3791, position (cm) = (49.9402,-55.3445,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 84.3791, position (cm) = (49.9402,-55.3445,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 98.9312, position (cm) = (45.97,-50.2947,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.124847, position (cm) = (58.3341,-49.0861,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 6.07661, position (cm) = (35.5112,-43.1788,200), weight = 0.00195312 + neutron, kinetic energy (MeV) = 3.53454, position (cm) = (41.2306,-34.9888,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 4.6714, position (cm) = (51.8272,-63.9754,200), weight = 0.00012207 + neutron, kinetic energy (MeV) = 2.28847, position (cm) = (46.592,-39.2795,200), weight = 0.000244141 + neutron, kinetic energy (MeV) = 6.74515, position (cm) = (35.3224,-48.7133,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 6.74515, position (cm) = (35.3224,-48.7133,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 6.74515, position (cm) = (35.3224,-48.7133,200), weight = 0.000488281 + neutron, kinetic energy (MeV) = 12.7629, position (cm) = (48.1731,-48.6997,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 2.85845, position (cm) = (51.3739,-33.1609,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 1.59769, position (cm) = (50.2581,-34.818,200), weight = 0.00195312 + gamma, kinetic energy (MeV) = 0.120245, position (cm) = (23.3016,-26,200), weight = 0.0078125 + gamma, kinetic energy (MeV) = 3.30076, position (cm) = (25.0613,-23.8805,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 20.4562, position (cm) = (15.1308,-27.418,200), weight = 0.0078125 + neutron, kinetic energy (MeV) = 48.018, position (cm) = (25.1569,-10.8856,200), weight = 0.015625 + gamma, kinetic energy (MeV) = 0.550858, position (cm) = (-35.4122,52.1845,200), weight = 0.000976562 + neutron, kinetic energy (MeV) = 5.75561, position (cm) = (183.331,-27.3325,200), weight = 0.00012207 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/biasing/GB06/CMakeLists.txt b/examples/extended/biasing/GB06/CMakeLists.txt index 685dad4315..de2a11872d 100644 --- a/examples/extended/biasing/GB06/CMakeLists.txt +++ b/examples/extended/biasing/GB06/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(GB06project) #---------------------------------------------------------------------------- diff --git a/examples/extended/biasing/GB06/History b/examples/extended/biasing/GB06/History index 4bf62f776f..b5bdb37afc 100644 --- a/examples/extended/biasing/GB06/History +++ b/examples/extended/biasing/GB06/History @@ -16,6 +16,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 Ben Morgan - GB06-V10-06-00 +- Migration to G4RunManagerFactory. + May 20th, 2018 J. Allison - GB06-V10-04-01 - Remove G4UI_USE and G4VIS_USE. - Move instantiation of G4UIExecutive nearer to start of main. diff --git a/examples/extended/biasing/GB06/exampleGB06.cc b/examples/extended/biasing/GB06/exampleGB06.cc index dc54c9f652..6a0180afcc 100644 --- a/examples/extended/biasing/GB06/exampleGB06.cc +++ b/examples/extended/biasing/GB06/exampleGB06.cc @@ -30,11 +30,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "GB06ActionInitialization.hh" #include "G4UImanager.hh" @@ -100,17 +96,8 @@ int main(int argc,char** argv) } // -- Construct the run manager : MT or sequential one -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - G4cout << " ********** Run Manager constructed in MT mode ************ " - << G4endl; - // -- Choose 4 threads: + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(4); -#else - G4RunManager * runManager = new G4RunManager; - G4cout << " ********** Run Manager constructed in sequential mode ************ " - << G4endl; -#endif // -- Set mandatory initialization classes diff --git a/examples/extended/biasing/GB06/exampleGB06.out b/examples/extended/biasing/GB06/exampleGB06.out index f6f9550178..1006782fde 100644 --- a/examples/extended/biasing/GB06/exampleGB06.out +++ b/examples/extended/biasing/GB06/exampleGB06.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,7 +13,6 @@ WWW : http://geant4.org/ ************************************************************** - ********** Run Manager constructed in sequential mode ************ <<< Geant4 Physics List simulation engine: FTFP_BERT ********************************************************* @@ -21,7 +21,7 @@ Parallel World `parallelWorldForSlices' constructed. --- G4CoupledTransportation is used - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -53,10 +53,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -114,10 +116,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -141,10 +144,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -172,9 +176,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -188,14 +192,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -204,9 +208,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -218,9 +222,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -231,9 +235,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -247,14 +251,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -263,9 +267,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -279,14 +283,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -295,9 +299,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -311,14 +315,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -327,9 +331,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -344,14 +348,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -360,9 +364,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -377,14 +381,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -393,9 +397,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -409,14 +413,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -425,9 +429,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -441,14 +445,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -477,6 +481,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -551,6 +577,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -662,8 +701,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -728,8 +767,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -770,161 +809,296 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. - gamma, kinetic energy (MeV) = 2.78009, position (cm) = (-2.19127,50.0726,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 18.9025, position (cm) = (6.0217,44.1917,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 23.5213, position (cm) = (3.00392,47.5351,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.366777, position (cm) = (-31.6049,55.7133,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 1.39153e-10, position (cm) = (-43.6354,32.087,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.666077, position (cm) = (-54.2347,44.6114,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 71.261, position (cm) = (29.3111,-32.2443,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.274219, position (cm) = (26.3879,-93.2298,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 7.34982, position (cm) = (36.0757,-65.7454,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 2.22309, position (cm) = (30.1096,12.9414,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 72.1623, position (cm) = (43.0241,17.822,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 2.0385, position (cm) = (11.8286,0.763564,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.46766, position (cm) = (28.7876,8.279,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.000403866, position (cm) = (18.6647,-12.3266,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 7.63113, position (cm) = (12.3436,-49.7099,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 4.99448, position (cm) = (149.08,27.1457,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 43.9011, position (cm) = (145.204,29.3094,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.183872, position (cm) = (-49.4315,-81.3399,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.57307, position (cm) = (-40.4162,20.4879,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.40508, position (cm) = (-64.9308,-39.7498,500), weight = 1.90735e-06 - e-, kinetic energy (MeV) = 1.40464, position (cm) = (-65.0752,-39.8826,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 61.9012, position (cm) = (-57.1198,-1.12791,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 95.4464, position (cm) = (-49.1193,7.49267,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 95.5155, position (cm) = (-49.9899,7.0344,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.473013, position (cm) = (-46.0363,20.5561,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.162485, position (cm) = (-55.4141,13.8367,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 2.44754, position (cm) = (-44.2687,-1.32649,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 4.4296, position (cm) = (-51.7953,0.91657,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.199985, position (cm) = (-38.9664,4.7419,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.10089, position (cm) = (-74.4352,0.781323,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.57001, position (cm) = (-73.9075,1.61256,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 4.2489, position (cm) = (-72.4479,1.07016,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 12.2813, position (cm) = (-74.0566,1.95799,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 27.9746, position (cm) = (-73.5528,1.43711,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 94.9476, position (cm) = (-83.9782,-0.762257,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.530885, position (cm) = (18.8139,43.1083,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.0690852, position (cm) = (25.7959,39.7734,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 18.2028, position (cm) = (9.20851,103.602,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 92.6754, position (cm) = (8.69049,129.94,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 95.0137, position (cm) = (-13.6423,26.198,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.432697, position (cm) = (-38.127,44.0945,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 47.5516, position (cm) = (-68.6664,65.0072,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 94.384, position (cm) = (-3.22701,23.7278,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 94.2125, position (cm) = (-0.136859,23.019,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 95.1879, position (cm) = (-6.82363,36.4985,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.208886, position (cm) = (17.2972,17.0663,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.874504, position (cm) = (-108.31,-85.7282,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.7936, position (cm) = (-89.318,-38.7346,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 3.37734, position (cm) = (-138.43,-28.4406,500), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 92.5147, position (cm) = (33.7721,-9.59383,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 93.1979, position (cm) = (31.2154,4.75454,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.42579, position (cm) = (22.9342,-12.6784,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.117334, position (cm) = (25.1346,-1.91677,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 3.32253, position (cm) = (27.7786,5.66189,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 18.6399, position (cm) = (27.2687,0.472807,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 53.7141, position (cm) = (14.2387,-40.7641,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.143313, position (cm) = (2.5247,-42.843,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 46.4057, position (cm) = (13.5363,-33.3343,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 95.7623, position (cm) = (-31.6194,17.6622,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 95.3147, position (cm) = (-29.8517,15.1087,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 2.87815, position (cm) = (-27.9364,14.2235,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.193863, position (cm) = (-28.8809,31.2368,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 3.53776, position (cm) = (-28.1412,34.3853,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.501817, position (cm) = (-26.323,30.1524,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.396596, position (cm) = (-25.1782,27.7787,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 71.7786, position (cm) = (-37.3187,3.91512,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.664102, position (cm) = (-16.0266,-47.4721,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 6.38019, position (cm) = (-10.3895,-26.4345,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 2.99646, position (cm) = (-29.9032,40.1528,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.238764, position (cm) = (-38.4688,7.85567,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 4.99692, position (cm) = (-23.8937,40.2288,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.423347, position (cm) = (26.3994,-12.1089,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 47.3738, position (cm) = (129.415,136.059,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.510999, position (cm) = (121.398,64.1328,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.000441541, position (cm) = (96.0102,112.848,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.613623, position (cm) = (99.1346,129.956,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.00289656, position (cm) = (117.312,118.129,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 45.9855, position (cm) = (-63.1351,-65.9546,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 1.96744, position (cm) = (-59.6668,-62.8093,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 3.46009, position (cm) = (-69.9264,-54.6914,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 98.226, position (cm) = (-90.8615,102.96,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.0928546, position (cm) = (-85.6549,103.943,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.797164, position (cm) = (-55.6518,117.159,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 4.58546, position (cm) = (-72.8255,127.584,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 9.35297, position (cm) = (-78.2839,130.8,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.518374, position (cm) = (-63.0505,91.1171,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.439622, position (cm) = (-79.9948,75.2139,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 3.31663, position (cm) = (-91.825,105.754,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.709682, position (cm) = (-95.1696,89.3046,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.193855, position (cm) = (-96.0604,95.3016,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 2.54884, position (cm) = (-98.6467,90.7634,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 5.06004, position (cm) = (-97.0128,91.5831,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 93.1459, position (cm) = (-80.1623,101.85,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.219847, position (cm) = (-35.4584,2.02665,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.442222, position (cm) = (-33.3504,1.55598,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 8.83431, position (cm) = (-39.6345,5.78816,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.0659087, position (cm) = (24.5933,19.7853,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.809009, position (cm) = (-24.3732,-15.745,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 4.20085, position (cm) = (-18.0803,42.4359,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 67.7274, position (cm) = (-4.12428,44.5591,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 2.22306, position (cm) = (-27.9279,44.3308,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 3.25006, position (cm) = (3.27684,50.378,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 1.8088, position (cm) = (-25.7223,41.7342,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.47073, position (cm) = (108.756,-45.6816,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.230348, position (cm) = (115.045,-27.671,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.281242, position (cm) = (104.702,-55.0176,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 67.4921, position (cm) = (111.225,-50.4644,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 27.71, position (cm) = (113.346,-53.2954,500), weight = 1.90735e-06 - anti_nu_e, kinetic energy (MeV) = 0.535788, position (cm) = (104.75,77.1346,500), weight = 0.0625 - gamma, kinetic energy (MeV) = 0.969583, position (cm) = (32.7092,-87.529,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 6.01273e-08, position (cm) = (68.7759,-88.0644,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.84461, position (cm) = (89.0203,-90.4631,500), weight = 3.8147e-06 - neutron, kinetic energy (MeV) = 46.5201, position (cm) = (67.9074,-44.4895,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 2.67213, position (cm) = (51.9114,-60.0694,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 1.4916, position (cm) = (34.5982,-77.3344,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.27327, position (cm) = (30.93,-105.083,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.44194, position (cm) = (41.8601,-106.322,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.403488, position (cm) = (39.814,-85.1912,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 73.435, position (cm) = (105.799,-45.8537,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 73.5136, position (cm) = (111.164,-44.6762,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.510999, position (cm) = (104.957,-58.1575,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.0265, position (cm) = (122.854,-73.5128,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 16.8156, position (cm) = (116.918,-39.1973,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 5.80599e-10, position (cm) = (112.661,-73.5873,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.321713, position (cm) = (114.296,-90.0974,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.201021, position (cm) = (143.685,-36.8581,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.334921, position (cm) = (143.046,-36.9963,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 6.80281, position (cm) = (148.819,-38.0469,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.795489, position (cm) = (137.471,-25.1513,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 7.42622, position (cm) = (137.255,-33.3695,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 8.75879, position (cm) = (136.354,-14.7938,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 0.000648822, position (cm) = (68.1335,34.8318,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.132776, position (cm) = (50.9205,40.2545,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.143772, position (cm) = (48.9676,48.1338,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.263487, position (cm) = (47.4707,56.9391,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.155931, position (cm) = (42.1278,22.0251,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.193388, position (cm) = (24.4625,25.7557,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 1.27581, position (cm) = (56.0932,43.201,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 3.32673, position (cm) = (52.7669,22.9918,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 37.7883, position (cm) = (-106.082,101.501,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.123118, position (cm) = (-107.851,110.701,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 83.5579, position (cm) = (-133.819,109.707,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 1.61139, position (cm) = (-115.452,91.3461,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.0924912, position (cm) = (-116.043,87.9663,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 5.57717, position (cm) = (-117.712,79.8284,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.107539, position (cm) = (-119.154,98.7305,500), weight = 3.8147e-06 - gamma, kinetic energy (MeV) = 0.359156, position (cm) = (-124.515,83.9576,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 2.02786, position (cm) = (-107.091,86.5622,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 5.05675, position (cm) = (-144.652,106.246,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.293982, position (cm) = (-113.93,91.4922,500), weight = 1.90735e-06 - neutron, kinetic energy (MeV) = 1.84004, position (cm) = (-117.12,81.3342,500), weight = 1.90735e-06 - gamma, kinetic energy (MeV) = 0.240058, position (cm) = (-137.978,42.6751,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.97566, position (cm) = (-22.0574,-108.902,500), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 2.49633, position (cm) = (5.70001,-145.067,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 37.9577, position (cm) = (-6.05222,-135.507,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 1.39793e-06, position (cm) = (20.364,-123.342,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 98.1335, position (cm) = (-64.7693,-116.715,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.214358, position (cm) = (-73.6255,-118.496,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 5.82183, position (cm) = (-67.6107,-118.842,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 12.3417, position (cm) = (-77.3226,-122.405,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.690609, position (cm) = (8.65432,-63.8216,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 43.7828, position (cm) = (18.6647,-44.5235,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 42.8943, position (cm) = (18.2697,-44.4834,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 7.96108, position (cm) = (14.2001,-54.504,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 10.7129, position (cm) = (14.7697,-53.7412,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 96.5695, position (cm) = (-10.2248,-50.4012,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0670797, position (cm) = (-2.56506,-50.2871,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.3726, position (cm) = (-0.468486,-51.6057,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 46.6406, position (cm) = (-3.46636,-49.3652,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 94.7243, position (cm) = (-7.05456,-51.2269,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 77.8006, position (cm) = (65.872,-49.3524,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.0262008, position (cm) = (81.4353,-44.4729,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 69.0345, position (cm) = (74.5931,-44.3111,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.566966, position (cm) = (105.07,-39.8378,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 31.1408, position (cm) = (113.194,-29.1859,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 36.923, position (cm) = (103.676,-37.7788,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 96.3504, position (cm) = (117.617,-32.0551,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.107588, position (cm) = (71.8296,-72.4318,500), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.12465, position (cm) = (101.581,-50.9412,500), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 40.2112, position (cm) = (116.771,-46.3889,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.20719, position (cm) = (15.3153,-43.281,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 3.89746, position (cm) = (38.1421,-38.6565,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.263982, position (cm) = (58.6891,-64.7068,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 3.20495e-09, position (cm) = (47.8494,-72.9233,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 12.2467, position (cm) = (66.7373,-55.9946,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 43.4042, position (cm) = (-22.3265,-116.817,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.22305, position (cm) = (7.20982,-98.0695,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.378914, position (cm) = (3.28893,-91.7048,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.189953, position (cm) = (-1.7983,-79.0695,500), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 0.10741, position (cm) = (6.19588,-120.652,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.01173, position (cm) = (7.45982,-138.482,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 88.2133, position (cm) = (1.41285,-135.24,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 21.8417, position (cm) = (-14.241,-140.465,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.226409, position (cm) = (28.4112,-140.511,500), weight = 1.90735e-06 + e-, kinetic energy (MeV) = 1.33061, position (cm) = (26.1495,-141.935,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.127855, position (cm) = (-1.02065,-112.455,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 87.9214, position (cm) = (-1.56833,-131.998,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 99.121, position (cm) = (-3.71911,-116.404,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0725448, position (cm) = (-2.9222,-115.803,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.207937, position (cm) = (-2.52068,-115.559,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 74.0982, position (cm) = (-2.14716,-122.968,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.07716, position (cm) = (28.625,-119.204,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 33.1795, position (cm) = (100.636,-117.245,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 87.0207, position (cm) = (21.1857,-113.259,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.16761, position (cm) = (4.89029,-121.769,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 1.03933, position (cm) = (3.2652,-120.963,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0882525, position (cm) = (20.1919,-145.753,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.000833103, position (cm) = (3.65565,-137.323,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 5.95685e-07, position (cm) = (39.3159,-129.99,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.01133, position (cm) = (115.413,52.3422,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 56.4447, position (cm) = (117.446,36.1269,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.132923, position (cm) = (112.893,35.4356,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 9.60301e-09, position (cm) = (118.74,39.8441,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 27.0255, position (cm) = (126.742,46.6374,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.179103, position (cm) = (46.7394,86.7388,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.50579, position (cm) = (72.4129,81.9796,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.311062, position (cm) = (33.5354,141.948,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.159919, position (cm) = (38.4318,88.7711,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0979277, position (cm) = (59.0731,94.3331,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.18602, position (cm) = (44.198,83.706,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.000181547, position (cm) = (-4.88251,70.2724,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 8.33308, position (cm) = (36.5024,70.8416,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.327555, position (cm) = (100.881,83.0819,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.11068, position (cm) = (88.3123,-38.196,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 4.13376, position (cm) = (89.5012,-37.7025,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 38.3473, position (cm) = (87.3776,-49.9742,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.510999, position (cm) = (92.0797,-9.39504,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.02803, position (cm) = (97.6369,-36.621,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.83338e-08, position (cm) = (81.8047,-26.514,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 84.4415, position (cm) = (46.7611,5.42137,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.085447, position (cm) = (36.1049,7.87217,500), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 1.62309, position (cm) = (47.7567,7.18851,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0802402, position (cm) = (45.0034,5.08203,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.181216, position (cm) = (69.8561,-36.0763,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 88.2256, position (cm) = (52.5821,-2.45238,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.224189, position (cm) = (41.8771,-13.7733,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0868486, position (cm) = (43.5145,-0.799027,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.285374, position (cm) = (32.7793,8.86618,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 9.38464, position (cm) = (20.6646,-0.81187,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.14425, position (cm) = (15.8466,9.91343,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 1.29693, position (cm) = (15.4739,11.7596,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 71.3672, position (cm) = (34.3916,-0.467069,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 36.5444, position (cm) = (18.093,-23.0131,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 35.6515, position (cm) = (9.43235,-16.3068,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 7.00634, position (cm) = (-133.068,37.6346,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.140266, position (cm) = (-86.8871,114.269,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.741197, position (cm) = (-90.1457,108.569,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.54199, position (cm) = (-91.5792,113.017,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.189765, position (cm) = (-93.5402,118.701,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.25138, position (cm) = (-91.887,118.41,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.40002, position (cm) = (-93.4914,125.238,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.00180304, position (cm) = (-97.4856,113.277,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.85095, position (cm) = (-91.4698,114.81,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.94666, position (cm) = (-90.5971,112.848,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.20643, position (cm) = (-93.2718,106.2,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.234302, position (cm) = (-98.6074,132.514,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 1.33745e-06, position (cm) = (-55.2799,90.9239,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 79.2589, position (cm) = (-101.696,123.628,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.164731, position (cm) = (-77.5766,109.465,500), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 2.25657, position (cm) = (-104.911,84.8053,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.00796669, position (cm) = (47.0284,-114.633,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 4.46948, position (cm) = (144.89,-133.801,500), weight = 7.62939e-06 + neutron, kinetic energy (MeV) = 74.4637, position (cm) = (113.877,-116.402,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 73.4213, position (cm) = (141.609,-112.545,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 78.1049, position (cm) = (-27.0619,-102.857,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.352376, position (cm) = (-13.7394,-101.663,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0583845, position (cm) = (-9.1709,-104.035,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.200616, position (cm) = (-7.16072,-101.025,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0962154, position (cm) = (-51.0591,-75.2406,500), weight = 3.8147e-06 + gamma, kinetic energy (MeV) = 1.70262, position (cm) = (35.9984,-69.1106,500), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 75.6254, position (cm) = (-83.8098,-0.0869977,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 3.75808, position (cm) = (-48.6671,-70.3474,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.811314, position (cm) = (-69.2231,-53.9733,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 1.94302, position (cm) = (-63.9206,-67.2034,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 3.29389, position (cm) = (-67.5016,-55.8743,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.353891, position (cm) = (-51.7188,-72.9788,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.456521, position (cm) = (-31.6668,-109.551,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.741631, position (cm) = (-54.3923,-90.2974,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.124942, position (cm) = (-55.7817,-84.0729,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.55329, position (cm) = (-57.5752,-85.5576,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.71973, position (cm) = (-58.411,-85.5962,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.857401, position (cm) = (-1.54652,-18.9678,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 62.5649, position (cm) = (-2.48942,-44.5934,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.197001, position (cm) = (21.4525,-41.9632,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 7.43959, position (cm) = (-3.82082,-42.1668,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.12769, position (cm) = (-9.2345,-26.988,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 54.3379, position (cm) = (14.5449,-19.8315,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 67.1668, position (cm) = (12.2484,-37.0492,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 1.14502, position (cm) = (0.633118,76.8,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.00378502, position (cm) = (33.1862,68.303,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0617276, position (cm) = (15.5466,74.7144,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 4.02647, position (cm) = (-0.109115,59.0027,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0788408, position (cm) = (-6.34341,51.627,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 85.7497, position (cm) = (-5.33715,49.7166,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.00825623, position (cm) = (-59.8088,74.0176,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 73.2103, position (cm) = (-47.066,56.2491,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.21589, position (cm) = (-44.238,52.1233,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.460548, position (cm) = (-36.5809,105.298,500), weight = 3.05176e-05 + neutron, kinetic energy (MeV) = 60.6311, position (cm) = (-42.8237,126.13,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 78.4671, position (cm) = (-30.0125,89.5887,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 78.3876, position (cm) = (-20.332,104.835,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 78.738, position (cm) = (-20.02,108.587,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 3.7043, position (cm) = (17.4251,134.51,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.95744, position (cm) = (-4.20811,140.846,500), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 61.0057, position (cm) = (-54.1889,43.0762,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0835954, position (cm) = (-104.23,-4.57756,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 6.38715, position (cm) = (-25.0031,12.7836,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 28.328, position (cm) = (-17.2171,12.9128,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.179114, position (cm) = (-33.5447,29.2242,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 19.5391, position (cm) = (-27.3544,27.114,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 4.18709, position (cm) = (-38.0728,9.14094,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 21.3212, position (cm) = (-45.2936,21.0072,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 48.1265, position (cm) = (-1.8033,19.0092,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 48.3704, position (cm) = (-3.79368,10.24,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.40354, position (cm) = (-27.7116,10.8148,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.685357, position (cm) = (-28.7408,15.78,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 18.5237, position (cm) = (-25.3173,9.90241,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 8.64489e-05, position (cm) = (-55.1529,-10.0393,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 30.2747, position (cm) = (-37.0796,12.219,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 4.43134, position (cm) = (-8.68839,2.93237,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.22455, position (cm) = (-45.5311,13.202,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 55.6451, position (cm) = (-17.435,113.694,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.148123, position (cm) = (-19.1393,76.5436,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.45796, position (cm) = (-107.649,39.4305,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.00079923, position (cm) = (24.4061,46.8457,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 7.50904, position (cm) = (28.8647,27.1153,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 3.68819, position (cm) = (-11.3927,37.7699,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 31.3114, position (cm) = (-13.6508,38.0261,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 54.5221, position (cm) = (-2.59691,39.9243,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.158785, position (cm) = (77.2997,39.4874,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.447676, position (cm) = (70.4525,65.3927,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 22.0395, position (cm) = (84.6409,-4.90098,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 4.69169, position (cm) = (116.119,10.401,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 15.6456, position (cm) = (102.564,-9.7192,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.963031, position (cm) = (80.5989,2.12419,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.358108, position (cm) = (76.4396,-0.389241,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.120232, position (cm) = (89.5324,-20.4989,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.898715, position (cm) = (65.8176,-1.18168,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.3886, position (cm) = (69.4156,20.204,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.140245, position (cm) = (70.2975,9.16221,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.22305, position (cm) = (76.806,100.797,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.23779, position (cm) = (56.5274,89.0454,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 10.5377, position (cm) = (64.9263,142.648,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.614788, position (cm) = (107.269,132.387,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.32974, position (cm) = (101.787,137.237,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.95693, position (cm) = (-134.407,-97.894,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 63.6501, position (cm) = (111.068,20.618,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.399102, position (cm) = (122.709,12.9871,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 27.4534, position (cm) = (98.3732,30.6102,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.364823, position (cm) = (-94.0562,-40.0382,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.225969, position (cm) = (-97.9486,-43.5543,500), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 45.9556, position (cm) = (33.6363,-83.5267,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.124725, position (cm) = (4.24166,-82.6664,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.04235e-06, position (cm) = (9.43655,-73.472,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.589198, position (cm) = (-1.00575,-77.4012,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 11.9745, position (cm) = (25.4112,-83.0829,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.0391018, position (cm) = (66.667,-10.7262,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 6.26074, position (cm) = (50.4986,-32.1246,500), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 66.2366, position (cm) = (52.1285,-47.7817,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.267639, position (cm) = (3.44574,-7.90013,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.51865, position (cm) = (9.19819,17.9985,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.1768, position (cm) = (80.3844,38.5272,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.85588, position (cm) = (78.3658,38.2986,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.43375, position (cm) = (71.5394,37.1557,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.83165, position (cm) = (1.46423,-2.22651,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 65.0491, position (cm) = (58.9841,-4.59886,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.08576, position (cm) = (9.52526,-39.2211,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 3.90562, position (cm) = (39.5463,-89.1447,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 4.15036, position (cm) = (34.5827,-95.7524,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.22263, position (cm) = (3.94171,-49.2991,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 32.9631, position (cm) = (40.2989,-61.8989,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 40.3076, position (cm) = (41.3757,-54.6807,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.207456, position (cm) = (-72.9046,-83.812,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 57.1021, position (cm) = (81.2641,-122.597,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 28.6719, position (cm) = (82.0222,-94.905,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 86.3579, position (cm) = (125.256,-110.359,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.755743, position (cm) = (127.996,-107.124,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 4.20851, position (cm) = (122.053,-106.031,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 15.3873, position (cm) = (124.714,-111.15,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.414058, position (cm) = (138.654,-108.684,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.723892, position (cm) = (-25.5858,-90.8814,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.93291, position (cm) = (-8.87922,-108.387,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 1.74882, position (cm) = (5.09155,-113.326,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 32.6469, position (cm) = (-19.0241,-94.66,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.54383e-05, position (cm) = (0.0506394,-143.963,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 41.3908, position (cm) = (-0.817772,-132.705,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 47.3005, position (cm) = (-58.8984,-125.392,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 57.0904, position (cm) = (-64.3907,-128.457,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.11117, position (cm) = (-5.16719,-119.83,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.268189, position (cm) = (-5.95676,-120.3,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.118757, position (cm) = (-5.11108,-120.107,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 70.928, position (cm) = (1.56742,-127.411,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 82.1287, position (cm) = (-37.5273,-122.782,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0895505, position (cm) = (-39.3261,-104.83,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.157805, position (cm) = (-29.4958,-100.135,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 75.5764, position (cm) = (-12.812,-126.099,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.445138, position (cm) = (9.3862,-81.0817,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.159984, position (cm) = (-1.46289,-127.516,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 74.0343, position (cm) = (-28.2419,-114.284,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 74.6306, position (cm) = (-15.2973,-114.499,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 75.028, position (cm) = (-11.0035,-120.496,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0775395, position (cm) = (30.4671,-136.052,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0800591, position (cm) = (-1.75344,-72.1743,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 39.4357, position (cm) = (13.7316,21.825,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 1.66513, position (cm) = (8.68105,24.4116,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.85506, position (cm) = (24.6502,-3.20907,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.17181, position (cm) = (21.9921,0.363178,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.0673287, position (cm) = (28.0123,-0.164477,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.260558, position (cm) = (-19.6477,33.96,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 16.2084, position (cm) = (9.6735,31.6694,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.0485432, position (cm) = (-2.29431,-20.7069,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.246523, position (cm) = (-15.1824,27.7816,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.05168, position (cm) = (-37.2279,26.5569,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.575923, position (cm) = (-1.21356,35.7014,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.075279, position (cm) = (8.76327,-116.698,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 8.85506, position (cm) = (7.6226,-109.117,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0866945, position (cm) = (13.7792,-102.43,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.864611, position (cm) = (11.7915,-102.58,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 2.75192, position (cm) = (5.90111,-90.0575,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 30.8574, position (cm) = (4.74639,-138.198,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.361087, position (cm) = (-3.78604,-99.1869,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.176892, position (cm) = (-4.15714,-89.3218,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.690912, position (cm) = (-13.6369,-89.1682,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.00165956, position (cm) = (93.2127,-59.2764,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.116554, position (cm) = (63.7372,-70.9673,500), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 6.97355e-09, position (cm) = (73.4477,-42.2169,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 2.6485, position (cm) = (49.0255,-19.4276,500), weight = 3.8147e-06 + neutron, kinetic energy (MeV) = 1.76855, position (cm) = (58.3438,-50.895,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.788392, position (cm) = (72.8726,-55.8395,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.0644889, position (cm) = (76.0227,-70.9543,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.552571, position (cm) = (68.8104,-70.3221,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.295702, position (cm) = (71.4652,-67.105,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.157142, position (cm) = (56.8129,-19.3375,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 36.1489, position (cm) = (72.5443,-47.0942,500), weight = 1.90735e-06 + gamma, kinetic energy (MeV) = 0.633954, position (cm) = (76.3932,2.6359,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 53.5083, position (cm) = (-94.6165,-76.5466,500), weight = 1.90735e-06 + neutron, kinetic energy (MeV) = 0.648331, position (cm) = (-47.423,21.3802,500), weight = 1.90735e-06 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/biasing/GB07/.README.txt b/examples/extended/biasing/GB07/.README.txt index 5543bcf7c1..d7acfe1550 100644 --- a/examples/extended/biasing/GB07/.README.txt +++ b/examples/extended/biasing/GB07/.README.txt @@ -10,11 +10,11 @@ This example illustrates how to use the leading particle biasing option. It uses the G4BOptnLeadingParticle biasing operation located in: - source/processes/biasing/generic , + source/processes/biasing/generic , and defines the following biasing operation to handle it: - GB07OptrLeadingParticle. + GB07OptrLeadingParticle. As a reminder, the generic biasing scheme consists of a G4VBiasingOperator that takes decisions on what sort of biasing technique to be applied. The @@ -27,60 +27,62 @@ constructor is used. In this example, several processes -to which the technique is applied- are wrapped by this process to control their final state production for applying the biasing technique. - \section ExampleGB07_s2 Geometry - The geometry is simply : - - a volume in which the biasing occurs and to which an instance of - GB07OptrLeadingParticle is attached, - - a thin volume placed after the above volume, that is used to tally the - particles exiting biasing volume. - - a sensitive detector is attached to the thin volume to simply print the - particles entering here. In particular the statistical weight is printed, - this one is obtained by: +The geometry is simply : +- a volume in which the biasing occurs and to which an instance of + GB07OptrLeadingParticle is attached, +- a thin volume placed after the above volume, that is used to tally the + particles exiting biasing volume. +- a sensitive detector is attached to the thin volume to simply print the + particles entering here. In particular the statistical weight is printed, + this one is obtained by: \verbatim w = track->GetWeight() ; \endverbatim - \section ExampleGB07_s3 Biasing configuration - The particle types and processes under the leading particle biasing are +The particle types and processes under the leading particle biasing are visible in the main program exampleGB07.cc, these are: - pi+ and pi-, inelastic process, - proton and anti-proton, inelastic process, - neutron, inelastic and capture processes, - anti-neutron, inelastic process, + pi+ and pi-, inelastic process, + proton and anti-proton, inelastic process, + neutron, inelastic and capture processes, + anti-neutron, inelastic process, + gamma, conversion and photonNuclear processes, + electron, electronNuclear process, + positron, annihilation and positronNuceal processes, + pi0, decay process. - gamma, conversion and photonNuclear processes, - electron, electronNuclear process, - positron, annihilation and positronNuceal processes, - - pi0, decay process. - - For the inelastic and lepto/gamma-nuclear processes, leading particle is applied in a rather +For the inelastic and lepto/gamma-nuclear processes, leading particle is applied in a rather classical way: - - keep the leading particle, - - keep one particle of each species (particles and anti-particles are considered a one + - keep the leading particle, + - keep one particle of each species (particles and anti-particles are considered a one species, and all hadrons with Z>=2 are counted as one species too). - For e+, e-, gamma and pi0 processes (which means in practice main conversion, annihililation + +For e+, e-, gamma and pi0 processes (which means in practice main conversion, annihililation and pi0 decay processes), the leading particle is kept, and the companion track(s) is(are) randomly kept/killed under a Russian roulette, with a 2/3 killing probabilty. See GB07BOptrLeadingParticle::StartTracking( ... ) for this killing probability setting. - \section ExampleGB07_s4 Running the program: - The program can be run in batch or interactive mode and has the following options: +The program can be run in batch or interactive mode and has the following options: -batch mode: - ./exampleGB07 [-m macro ] [-b biasing {'on' = default,'off'}] - or - ./exampleGB07 [macro.mac] -interactive mode: - ./exampleGB07 [-b biasing {'on' = default,'off'}] +- batch mode: +\verbatim +./exampleGB07 [-m macro ] [-b biasing {'on' = default,'off'}] +\endverbatim +or +\verbatim +./exampleGB07 [macro.mac] +\endverbatim +- interactive mode: +\verbatim +./exampleGB07 [-b biasing {'on' = default,'off'}] +\endverbatim */ diff --git a/examples/extended/biasing/GB07/CMakeLists.txt b/examples/extended/biasing/GB07/CMakeLists.txt index 5de9642cfc..7423696f5c 100644 --- a/examples/extended/biasing/GB07/CMakeLists.txt +++ b/examples/extended/biasing/GB07/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(GB07project) #---------------------------------------------------------------------------- diff --git a/examples/extended/biasing/GB07/History b/examples/extended/biasing/GB07/History index e96e308cb4..73397693be 100644 --- a/examples/extended/biasing/GB07/History +++ b/examples/extended/biasing/GB07/History @@ -16,6 +16,12 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 Ben Morgan - biasingGB07-V10-06-01 +- Migration to G4RunManagerFactory. + +Nov 6, 2020 I. Hrivnacova - biasingGB07-V10-06-00 +- Fixed doxygen documentation + Nov 15, 2019 M. Verderi - biasingGB07-V10-05-00 - Creation diff --git a/examples/extended/biasing/GB07/exampleGB07.cc b/examples/extended/biasing/GB07/exampleGB07.cc index bccbb9c4d8..201de03a50 100644 --- a/examples/extended/biasing/GB07/exampleGB07.cc +++ b/examples/extended/biasing/GB07/exampleGB07.cc @@ -30,11 +30,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "GB07ActionInitialization.hh" #include "G4UImanager.hh" @@ -97,15 +93,8 @@ int main(int argc,char** argv) } // -- Construct the run manager : MT or sequential one -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - G4cout << " ********** Run Manager constructed in MT mode ************ " << G4endl; - // -- Choose 4 threads: + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(4); -#else - G4RunManager * runManager = new G4RunManager; - G4cout << " ********** Run Manager constructed in sequential mode ************ " << G4endl; -#endif // -- Set mandatory initialization classes GB07DetectorConstruction* detector = new GB07DetectorConstruction(); diff --git a/examples/extended/biasing/History b/examples/extended/biasing/History index 64938f91fa..f9503e50af 100644 --- a/examples/extended/biasing/History +++ b/examples/extended/biasing/History @@ -16,6 +16,15 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 13, 2020, B. Morgan - exbiasing-V10-06-02 +- Enforce use of Serial RunManager for serial-only examples. + +November 10, 2020, B. Morgan - exbiasing-V10-06-01 +- Migration to G4RunManagerFactory. + +Nov 3, 2020, B. Morgan - exbiasing-V10-06-00 +- Support same CMake version range as core Geant4 + Jan 31, 2019, I.Hrivnacova - exbiasing-V10-05-00 - Merged GitHub PR #4: all Boolean operators now return G4bool. @@ -73,13 +82,13 @@ Sep 24, 2012 I.Hrivnacova - exbiasing-V09-05-02 Sep 19, 2012 I.Hrivnacova - exbiasing-V09-05-01 - Added explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh where needed -- Fixed compiler warnings in B02PSScoringDetectorConstruction.cc -- Replaced tabulators with space characters +- Fixed compiler warnings in B02PSScoringDetectorConstruction.cc +- Replaced tabulators with space characters Sep 4, 2012 I.Hrivnacova - exbiasing-V09-05-00 - Updated CMakeLists.txt: - adding visualization (if used), copying macros, install target - and comment lines + adding visualization (if used), copying macros, install target + and comment lines Nov 14th, 2011 G.Cosmo - exbiasing-V09-04-01 - Archived obsolete example B03 laying on the trunk. @@ -99,7 +108,7 @@ June 5, 2007 A. Howard - exbiasing-V08-03-01 test version June 5, 2007 A. Howard - exbiasing-V08-03-00 -- Migrated example B01 to new biasing/scoring scheme - test version +- Migrated example B01 to new biasing/scoring scheme - test version (needs clean up before public release) - Removed B03 (redundant/obsolete use of python) @@ -144,7 +153,7 @@ Feb 19th, 2003 G.Cosmo - exbiasing-V05-00-00 Nov 25th, 2002 M.Dressel - exbiasing-V04-01-01 - change README -Nov 22th, 2002 M.Dressel +Nov 22th, 2002 M.Dressel - changed geometry for scoring. Cells must not coinside with wolrd boundary since tracks would be killed before scoring is called in the case a track exits a cell into @@ -152,7 +161,7 @@ Nov 22th, 2002 M.Dressel Nov 8th, 2002 M.Dressel - exbiasing-V04-01-00 reduce and change examples. Only B01 B02 B03 will - remain but with different content. + remain but with different content. July 11th, 2002 M.Dressel - internal-3-exbiasing-V04-01-01 - resolved B09 into geometry/biasing and run. @@ -160,7 +169,7 @@ July 11th, 2002 M.Dressel - internal-3-exbiasing-V04-01-01 internal-2-transport-V04-01-01 internal-2-geombias-V04-01-01 -July 10th, 2002 M.Dressel +July 10th, 2002 M.Dressel - using G4StandardScorer and G4StandardScoreTable instead of B06Scorer and B06ScorePRinter in B06 @@ -170,9 +179,9 @@ July 10th, 2002 M.Dressel - internal-2-exbiasing-V04-01-01 July 10th, 2002 M.Dressel - internal-1-exbiasing-V04-01-01 - temporarily created directory B09. Messangers and classes using them - are put into B09 because the G4UImessanger is not known in + are put into B09 because the G4UImessanger is not known in geometry and processes. - + Jun 4th, 2002 M.Dressel - exbiasing-V04-00-07 - update of exampleBXX.out files. @@ -182,7 +191,7 @@ May 31th, 2002 M.Dressel - exbiasing-V04-00-06 - change ...Manager to ...Sampler to be conform to transport-V04-00-06 May 23th, 2002 M.Dressel - internal-1-exbiasing-V04-00-05 -- Update of README and ouput files after changes in G4ProcessPlacer in +- Update of README and ouput files after changes in G4ProcessPlacer in transportation May 15th, 2002 M.Asai - exbiasing-V04-00-05 @@ -193,7 +202,7 @@ April 19th, 2002 G.Cosmo - exbiasing-V04-00-04 April 12th, 2002 M.Dressel - Change class B06ImportanceDetectorConstruction.hh and exampleB06.cc. - B06ImportanceDetectorConstruction does not derive from + B06ImportanceDetectorConstruction does not derive from G4UserDetectorConstruction, function Construct made private and called in Constructor. diff --git a/examples/extended/biasing/ReverseMC01/CMakeLists.txt b/examples/extended/biasing/ReverseMC01/CMakeLists.txt index cc302345f9..e03ec823fc 100644 --- a/examples/extended/biasing/ReverseMC01/CMakeLists.txt +++ b/examples/extended/biasing/ReverseMC01/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(ReverseMC01) #---------------------------------------------------------------------------- diff --git a/examples/extended/biasing/ReverseMC01/History b/examples/extended/biasing/ReverseMC01/History index 62bc61b7bf..dabead32df 100644 --- a/examples/extended/biasing/ReverseMC01/History +++ b/examples/extended/biasing/ReverseMC01/History @@ -16,6 +16,12 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 13th, 2020 Ben Morgan (ReverseMC01-V10-06-02) +- Enforce use of Serial RunManager. + +November 10th, 2020 Ben Morgan (ReverseMC01-V10-06-01) +- Migration to G4RunManagerFactory. + May 17, 2020 V.Ivanchenko (ReverseMC01-V10-06-00) - RMC01AnalysisManager - use G4double for computation of mean and RMS, added protection for sqrt argument, to avoid a problem due to precision @@ -35,32 +41,32 @@ May 20, 2018 J.Allison (ReverseMC01-V10-04-00) Nov 6, 2017 V.Ivanchenko (ReverseMC01-V10-03-01) - G4AdjointPhysicsList - use SetEmModel(..) instead of AddEmModel - where possible in order to remove initialisation warning + where possible in order to remove initialisation warning Oct 12, 2017 V.Ivanchenko (ReverseMC01-V10-03-00) - G4AdjointPhysicsList - do not reset lateral displacement algorithm in the Urban msc model Nov 16, 2016 L. Desorgher (ReverseMC01-V10-02-03) -- New attempt to solve the FPE issue RMC01AnalysisManager::ComputeMeanEdepAndError() +- New attempt to solve the FPE issue RMC01AnalysisManager::ComputeMeanEdepAndError() remove of floating point exception issue. Nov 11, 2016 L. Desorgher (ReverseMC01-V10-02-02) -- Modification in of RMC01AnalysisManager::ComputeMeanEdepAndError() +- Modification in of RMC01AnalysisManager::ComputeMeanEdepAndError() remove of floating point exception issue. Nov 1, 2016 L. Desorgher (ReverseMC01-V10-02-01) - Modification in RMC01AnalysisManager:::EndOfEventForAdjointSimulation() to - loop over the list of tracks reaching the external surface. - New features introduced in GEANT4.10.3. - -- Modification of RMC01AnalysisManager::ComputeMeanEdepAndError() - Remove the use of fNentry introduced in tag ReverseMC01-V10-01-00 + loop over the list of tracks reaching the external surface. + New features introduced in GEANT4.10.3. + +- Modification of RMC01AnalysisManager::ComputeMeanEdepAndError() + Remove the use of fNentry introduced in tag ReverseMC01-V10-01-00 in the computation of the mean and error of energy deposition. The use of nb_event is restored. This is crucial for a correct normalisation! - --Modification in the physics list in order to use the processes - G4AdjointForcedInteractionForGamma and G4eAdjointMultipleScattering. + +-Modification in the physics list in order to use the processes + G4AdjointForcedInteractionForGamma and G4eAdjointMultipleScattering. - Adaptation of the README file. @@ -75,20 +81,20 @@ Jul 20th, 2016 I. Hrivnacova - RMC01AnalysisManager - a variable fNentry is added in order correctly compute mean and error of energy deposition -29-November, 2013 L.Hrivnacova +29-November, 2013 L.Hrivnacova - Updated .README 11-November, 2013 L.Desorgher (ReverseMC01-V09-06-05) - Change in RMC01AnalysisManager to avoid compilation error on some platforms. - The histogramming was modified following the histrogramming used in the + The histogramming was modified following the histrogramming used in the example AnaEx01. 07-November, 2013 L.Desorgher (ReverseMC01-V09-06-04) - Migration to the use of G4histos -- Remove old histogram classes +- Remove old histogram classes - Slight modifications into the main in order to migrate to the new RMC tracking schema - where reverse tracking and forward tracking of adjoint and forward - equivalent particles are processed in the same events.This for preparing for + where reverse tracking and forward tracking of adjoint and forward + equivalent particles are processed in the same events.This for preparing for the migration to the G4MT mode of the ReverseMC 29-July, 2013 P.Gumplinger (ReverseMC01-V09-06-03) @@ -113,7 +119,7 @@ Jul 20th, 2016 I. Hrivnacova 04-September, 2012 I.Hrivnacova (ReverseMC01-V09-05-04) - Renamed macros to have an extension .mac (was .g4mac) - Updated CMakeLists.txt: - adding visualization, copying macros, install target and comment lines + adding visualization, copying macros, install target and comment lines 14-June, 2012 L.Desorgher (ReverseMC01-V09-05-03) - Add .README for doxygen documentation @@ -140,10 +146,10 @@ Jul 20th, 2016 I. Hrivnacova and inRMC01AnalysisManager::EndOfEvent. - Correct the density of Si in RMC01DetectorConstruction and correct the position of the lower Ta plate. - + 21-October-2010, Gunter Folger (ReverseMC01-V09-03-03) -- fix compilation error on ambigous std::sqrt on Windows +- fix compilation error on ambigous std::sqrt on Windows 19-October-2010, Gunter Folger (ReverseMC01-V09-03-02) - src/RMC01AnalysisManager.cc: explicit conversion to G4int, to avoid compiler @@ -161,10 +167,10 @@ December 10th, 2009 L.Desorgher (ReverseMC01-V09-02-02) November 27th, 2009 L.Desorgher (ReverseMC01-V09-02-01) -Update of the analysis code: -for registering in Conv* ASCII files every 5000 events the computed edep with precision. - -Correction of the adjoint computed current and answer matrices by a factor n_asked/n_processed for the case - where a run is aborted because the user expected precision on e_dep has been reached. + -Correction of the adjoint computed current and answer matrices by a factor n_asked/n_processed for the case + where a run is aborted because the user expected precision on e_dep has been reached. -Important update of the README file - -Rename g4mac files run_*_simulation.g4mac files by run_*_simulation_electron.g4mac + -Rename g4mac files run_*_simulation.g4mac files by run_*_simulation_electron.g4mac -Add g4mac files run_*_simulation_proton.g4mac diff --git a/examples/extended/biasing/ReverseMC01/exampleRMC01.cc b/examples/extended/biasing/ReverseMC01/exampleRMC01.cc index ecb2d9db02..505a430b44 100644 --- a/examples/extended/biasing/ReverseMC01/exampleRMC01.cc +++ b/examples/extended/biasing/ReverseMC01/exampleRMC01.cc @@ -28,7 +28,7 @@ // // // -// +// // -------------------------------------------------------------- // GEANT 4 - exampleRMC01 // @@ -36,7 +36,7 @@ // Comments // // This example intends to show how to use the adjoint/reverse simulation mode. -// +// // -------------------------------------------------------------- //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -44,7 +44,7 @@ #include "G4Types.hh" -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "Randomize.hh" @@ -65,19 +65,19 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) { - + // Instantiate G4UIExecutive if interactive mode G4UIExecutive* ui = nullptr; if ( argc == 1 ) { ui = new G4UIExecutive(argc, argv); } - // Construct the default run manager - G4RunManager * theRunManager = new G4RunManager; - - + // Construct a serial run manager + auto* theRunManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); + + RMC01DetectorConstruction* detector = new RMC01DetectorConstruction(); - + //Physics and geometry are declared as in a normal G4 application //-------------------------------------------- theRunManager->SetUserInitialization(detector); @@ -87,32 +87,32 @@ int main(int argc,char** argv) { theRunManager->SetUserAction(new RMC01EventAction); RMC01RunAction* theRunAction = new RMC01RunAction; theRunManager->SetUserAction(theRunAction); - - //The adjoint simulation manager will control the Reverse MC mode + + //The adjoint simulation manager will control the Reverse MC mode //--------------------------------------------------------------- - + G4AdjointSimManager* theAdjointSimManager = G4AdjointSimManager::GetInstance(); - + //It is possible to define action that will be used during // the adjoint tracking phase - + theAdjointSimManager->SetAdjointRunAction(theRunAction); //theAdjointSimManager->SetAdjointEventAction(new RMC01AdjointEventAction); theAdjointSimManager->SetAdjointEventAction(new RMC01EventAction); - + // visualization manager G4VisManager* visManager = new G4VisExecutive; visManager->Initialize(); - // get the pointer to the User Interface manager - G4UImanager* UImanager = G4UImanager::GetUIpointer(); + // get the pointer to the User Interface manager + G4UImanager* UImanager = G4UImanager::GetUIpointer(); if (!ui) // batch mode { G4String command = "/control/execute "; G4String fileName = argv[1]; - UImanager->ApplyCommand(command+fileName); + UImanager->ApplyCommand(command+fileName); } else { // interactive mode : define UI session diff --git a/examples/extended/biasing/ReverseMC01/run_adjoint_simulation_electron.out b/examples/extended/biasing/ReverseMC01/run_adjoint_simulation_electron.out index b8a73dc762..2cb07e8427 100644 --- a/examples/extended/biasing/ReverseMC01/run_adjoint_simulation_electron.out +++ b/examples/extended/biasing/ReverseMC01/run_adjoint_simulation_electron.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +26,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -94,9 +96,9 @@ phot: for gamma SubType=12 BuildTable=0 PhotoElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -135,7 +137,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Aluminum Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 34.4583 keV e+ 33.7728 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 34.1725 keV e+ 33.9436 keV proton 1 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -149,14 +151,14 @@ Index : 2 used in the geometry : Yes Index : 3 used in the geometry : Yes Material : Silicon Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 31.7971 keV e+ 31.374 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 31.9516 keV e+ 31.7376 keV proton 1 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 4 used in the geometry : Yes Material : Tantalum Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 6.90532 keV e- 74.9399 keV e+ 72.9588 keV proton 1 keV + Energy thresholds : gamma 6.90363 keV e- 75.0136 keV e+ 73.5164 keV proton 1 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -181,366 +183,78 @@ nb event 1 nb event 2 nb event 3 nb event 4 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 0.000402802 -new rejected relative error 1 nb event 5 nb event 6 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 0.000185516 -new rejected relative error 0.41211 nb event 7 nb event 8 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 0.000140249 -new rejected relative error 0.495257 nb event 9 nb event 10 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 0.00100193 -new rejected relative error 0.772248 nb event 11 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 9.27554e-05 -new rejected relative error 0.580111 nb event 12 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 0.000334681 -new rejected relative error 0.628093 nb event 13 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 0.000118272 -new rejected relative error 0.43814 nb event 14 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 7.98278e-05 -new rejected relative error 0.596899 nb event 15 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 6.95666e-05 -new rejected relative error 0.614976 nb event 16 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 7.40083e-05 -new rejected relative error 0.568515 nb event 17 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 6.18369e-05 -new rejected relative error 0.626166 nb event 18 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 0.000910166 -new rejected relative error 0.871749 nb event 19 nb event 20 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 5.58816e-05 -new rejected relative error 0.63175 nb event 21 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 5.05939e-05 -new rejected relative error 0.642095 nb event 22 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 9.97692e-05 -new rejected relative error 0.530503 nb event 23 nb event 24 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 4.64626e-05 -new rejected relative error 0.646551 nb event 25 nb event 26 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 0.000128184 -new rejected relative error 0.650226 nb event 27 nb event 28 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 5.77777e-05 -new rejected relative error 0.513908 nb event 29 nb event 30 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 8.87616e-05 -new rejected relative error 0.599983 nb event 31 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 3.47839e-05 -new rejected relative error 0.663835 nb event 32 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 0.000529755 -new rejected relative error 0.901478 nb event 33 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 3.27372e-05 -new rejected relative error 0.666612 nb event 34 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 0.000148363 -new rejected relative error 0.757003 nb event 35 nb event 36 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 0.000114416 -new rejected relative error 0.716767 nb event 37 nb event 38 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 0.000103493 -new rejected relative error 0.708329 nb event 39 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 2.78266e-05 -new rejected relative error 0.673198 nb event 40 nb event 41 nb event 42 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 2.68812e-05 -new rejected relative error 0.664576 nb event 43 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 2.52969e-05 -new rejected relative error 0.676565 nb event 44 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 2.55264e-05 -new rejected relative error 0.669938 nb event 45 nb event 46 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 2.42122e-05 -new rejected relative error 0.677561 nb event 47 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 2.31889e-05 -new rejected relative error 0.679359 nb event 48 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 2.48494e-05 -new rejected relative error 0.633238 nb event 49 nb event 50 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 8.07516e-05 -new rejected relative error 0.723109 nb event 51 nb event 52 nb event 53 nb event 54 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 2.0617e-05 -new rejected relative error 0.682591 nb event 55 nb event 56 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 1.98784e-05 -new rejected relative error 0.683644 nb event 57 nb event 58 nb event 59 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 1.85511e-05 -new rejected relative error 0.685465 nb event 60 nb event 61 nb event 62 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 1.79527e-05 -new rejected relative error 0.686248 nb event 63 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 1.74834e-05 -new rejected relative error 0.683156 nb event 64 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 1.73952e-05 -new rejected relative error 0.686835 nb event 65 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 1.68646e-05 -new rejected relative error 0.687671 nb event 66 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 2.18863e-05 -new rejected relative error 0.566672 nb event 67 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 1.63686e-05 -new rejected relative error 0.688318 nb event 68 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 3.04871e-05 -new rejected relative error 0.574544 nb event 69 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 1.59009e-05 -new rejected relative error 0.688929 nb event 70 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 1.59402e-05 -new rejected relative error 0.687135 nb event 71 nb event 72 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 1.5476e-05 -new rejected relative error 0.688717 nb event 73 nb event 74 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 1.51322e-05 -new rejected relative error 0.685698 nb event 75 nb event 76 -Potential wrong adjoint weight! -The results of this event will not be registered! -previous mean edep [MeV] 0.000278266 -previous relative error 0.0565247 -new rejected mean edep [MeV] 4.01439e-05 -new rejected relative error 0.666411 nb event 77 nb event 78 nb event 79 @@ -611,17 +325,19 @@ nb event 155000 nb event 160000 nb event 165000 nb event 170000 -nb event 175000 1% Precision reached! Run terminated. Run Summary - Run Aborted after 175290 events processed. - User=554.170000s Real=561.761553s Sys=0.540000s + Run Aborted after 173590 events processed. + User=72.770000s Real=78.555971s Sys=0.110000s Results of reverse/adjoint simulation! -normalised edep [MeV] = 0.00166348 -error[MeV] = 1.66344e-05 +normalised edep [MeV] = 0.00165068 +error[MeV] = 1.65068e-05 ----> Histogram Tree is saved in adjoint_sim.root +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. diff --git a/examples/extended/common/CMakeLists.txt b/examples/extended/common/CMakeLists.txt index 55135c5aab..f10c63fcba 100644 --- a/examples/extended/common/CMakeLists.txt +++ b/examples/extended/common/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(${common_prefix}common) #---------------------------------------------------------------------------- diff --git a/examples/extended/common/History b/examples/extended/common/History index 277c7de375..c29d14da56 100644 --- a/examples/extended/common/History +++ b/examples/extended/common/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +03/11/20 B. Morgan (excommon-V10-06-00) +- Support same CMake version range as core Geant4 + 29/09/17 I. Hrivnacova (excommon-V10-03-00,01) - Removed generic class names prefix (ExG4) and introduced a meaningful one when appropriate @@ -28,7 +31,7 @@ track of all tags. - Fix for Doxygen documentation 09/06/15 I. Hrivnacova (excommon-V10-01-00) -- Added a client-specific prefix to common library and test +- Added a client-specific prefix to common library and test to avoid name clashes when building all extended examples at once 06/11/14 I. Hrivnacova (excommon-V10-00-06) @@ -50,18 +53,18 @@ track of all tags. 04/11/14 I. Hrivnacova (excommon-V10-00-01) - Modifications to facilitate use of common directory via svn:externals: merging user classes in the top directoy (include and src), - added testCommon.cc for all classes altogether and + added testCommon.cc for all classes altogether and added building common library 28/05/14 I. Hrivnacova (excommon-V10-00-00) - Removed fPrintModulo from ExG4EventAction01 and fSetPrintModuloCmd from ExG4EventAction01Messenger, now obsolete. -- Fixed long lines, separators in userActions classes +- Fixed long lines, separators in userActions classes 28/02/13 I. Hrivnacova (excommon-V09-06-00) - When building materials with NistManager - do not set fromIsotopes argument (which was set to false), + do not set fromIsotopes argument (which was set to false), as since 9.6 all materials have to be built from isotopes. Thanks to V. Ivantchenko for pointing at this. diff --git a/examples/extended/electromagnetic/CMakeLists.txt b/examples/extended/electromagnetic/CMakeLists.txt index 04934eeafd..d21fc718cc 100644 --- a/examples/extended/electromagnetic/CMakeLists.txt +++ b/examples/extended/electromagnetic/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all electromagnetic examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(TestEm0) add_subdirectory(TestEm1) diff --git a/examples/extended/electromagnetic/History b/examples/extended/electromagnetic/History index b269e51b00..93765111ca 100644 --- a/examples/extended/electromagnetic/History +++ b/examples/extended/electromagnetic/History @@ -13,6 +13,12 @@ track of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +13-11-20 B. Morgan (electromagnetic-V10-06-01) +- Enforce use of Serial RunManager for serial-only examples. + +03-11-20 B. Morgan (electromagnetic-V10-06-00) +- Support same CMake version range as core Geant4 + 01-04-13 A.Dotti (electromagnetic-V09-06-00,electromagnetic-V09-06-01) - Collect tags needed for new physics list APIs needed for MT @@ -20,9 +26,9 @@ track of all tags. - Updated documentation: - Fixed .README files for artefacts from Markdown support - Removed obsolete instructions (how to compile & link) - + 02-11-08 mma (electromagnetic-V09-01-01) -- all PhysListEmStandard: update EM options (~option_3) - +- all PhysListEmStandard: update EM options (~option_3) + 27-08-08 mma (electromagnetic-V09-01-00) - create README diff --git a/examples/extended/electromagnetic/TestEm0/CMakeLists.txt b/examples/extended/electromagnetic/TestEm0/CMakeLists.txt index 01690559f3..b07914c6c8 100644 --- a/examples/extended/electromagnetic/TestEm0/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm0/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm0) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm0/TestEm0.out b/examples/extended/electromagnetic/TestEm0/TestEm0.out index 467a8457d6..f809b065d5 100644 --- a/examples/extended/electromagnetic/TestEm0/TestEm0.out +++ b/examples/extended/electromagnetic/TestEm0/TestEm0.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -155,7 +155,7 @@ Imean: 470.000 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: Ag (Ag) Z = 47.0 N = 108 A = 107.868 g/mole - ---> Isotope: Ag107 Z = 47 N = 107 A = 106.90 g/mole abundance: 51.839 % + ---> Isotope: Ag107 Z = 47 N = 107 A = 106.91 g/mole abundance: 51.839 % ---> Isotope: Ag109 Z = 47 N = 109 A = 108.91 g/mole abundance: 48.161 % ElmMassFraction: 100.00 % ElmAbundance 100.00 % @@ -280,7 +280,9 @@ Number of bins per decade of a table 20 Verbose level 0 Verbose level for worker thread 0 Bremsstrahlung energy threshold above which - primary is added to the list of secondary 100 TeV + primary e+- is added to the list of secondary 100 TeV +Bremsstrahlung energy threshold above which primary + muon/hadron is added to the list of secondary 100 TeV Lowest triplet kinetic energy 1 MeV Enable sampling of gamma linear polarisation 0 5D gamma conversion model type 0 @@ -326,6 +328,7 @@ Factor used for dynamic computation of angular Fixed angular limit between single and multiple scattering 3.1416 rad Upper energy limit for e+- multiple scattering 100 MeV +Type of electron single scattering model 0 Type of nuclear form-factor 1 Screening factor 1 ======================================================================= @@ -345,7 +348,7 @@ Type of PIXE cross section for e+- Livermore Index : 0 used in the geometry : Yes Material : Germanium Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 20.6831 keV e- 871.363 keV e+ 819.636 keV proton 100 keV + Energy thresholds : gamma 20.7332 keV e- 870.964 keV e+ 825.404 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -361,30 +364,30 @@ Index : 0 used in the geometry : Yes compCrossSectionPerVolume : 0.0761844 cm^-1 0.489918 cm^-1 0 cm^-1 0.0338962 cm^-1 0.599999 cm^-1 - cross section per volume : 0.0761844 cm^-1 0.489918 cm^-1 0 cm^-1 0.0338999 cm^-1 0.600002 cm^-1 - cross section per mass : 1.43123 mm2/g 9.20379 mm2/g 0 um2/mg 636.857 um2/mg 11.2719 mm2/g + cross section per volume : 0.0761844 cm^-1 0.489918 cm^-1 0 cm^-1 0.0339035 cm^-1 0.600006 cm^-1 + cross section per mass : 1.43123 mm2/g 9.20379 mm2/g 0 um2/mg 636.924 um2/mg 11.2719 mm2/g - mean free path : 13.126 cm 2.04116 cm 5.82593e+288 pc 29.4986 cm 1.66666 cm - (g/cm2) : 69.8699 g/cm2 10.8651 g/cm2 2.88022e+285 kg/cm2 157.021 g/cm2 8.87163 g/cm2 + mean free path : 13.126 cm 2.04116 cm 5.82593e+288 pc 29.4955 cm 1.66665 cm + (g/cm2) : 69.8699 g/cm2 10.8651 g/cm2 2.88022e+285 kg/cm2 157.005 g/cm2 8.87158 g/cm2 ----------------------------------------------------------- Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000590s Sys=0.000000s + User=0.000000s Real=0.000471s Sys=0.000000s ========= Table of registered couples ============================ Index : 0 used in the geometry : No Material : Germanium Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 5.9441 keV e- 173.461 keV e+ 169.526 keV proton 10 keV + Energy thresholds : gamma 5.93381 keV e- 173.78 keV e+ 169.824 keV proton 10 keV Index : 1 used in the geometry : Yes Material : Water Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 1.11304 keV e- 85.1594 keV e+ 83.5462 keV proton 10 keV + Energy thresholds : gamma 1.11344 keV e- 85.1138 keV e+ 83.8172 keV proton 10 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -395,30 +398,30 @@ Index : 1 used in the geometry : Yes e- (10 MeV) in Water (density: 1 g/cm3 radiation length: 36.0924 cm ) Range cuts : gamma 100 um e- 100 um - Energy cuts : gamma 1.11304 keV e- 85.1594 keV + Energy cuts : gamma 1.11344 keV e- 85.1138 keV Max_energy _transferable : 5 MeV (2.53529 cm ) processes : eIoni eBrem ePairProd total - compCrossSectionPerVolume : 0.994224 cm^-1 0.325115 cm^-1 0 cm^-1 1.31934 cm^-1 - cross section per volume : 0.994224 cm^-1 0.325039 cm^-1 0 cm^-1 1.31926 cm^-1 - cross section per mass : 99.4224 mm2/g 32.5039 mm2/g 0 um2/mg 1.31926 cm2/g + compCrossSectionPerVolume : 0.994761 cm^-1 0.325102 cm^-1 0 cm^-1 1.31986 cm^-1 + cross section per volume : 0.994761 cm^-1 0.325093 cm^-1 0 cm^-1 1.31985 cm^-1 + cross section per mass : 99.4761 mm2/g 32.5093 mm2/g 0 um2/mg 1.31985 cm2/g - mean free path : 1.00581 cm 3.07655 cm 5.82593e+288 pc 7.57999 mm - (g/cm2) : 1.00581 g/cm2 3.07655 g/cm2 2.88022e+285 kg/cm2 757.999 mg/cm2 + mean free path : 1.00527 cm 3.07604 cm 5.82593e+288 pc 7.57659 mm + (g/cm2) : 1.00527 g/cm2 3.07604 g/cm2 2.88022e+285 kg/cm2 757.659 mg/cm2 - restricted dE/dx : 1.61332 MeV/cm 25.6289 eV/cm 0 eV/cm 1.61335 MeV/cm - (MeV/g/cm2) : 1.61332 MeV*cm2/g 25.6289 eV*cm2/g 0 eV*cm2/g 1.61335 MeV*cm2/g + restricted dE/dx : 1.61328 MeV/cm 25.6439 eV/cm 0 eV/cm 1.6133 MeV/cm + (MeV/g/cm2) : 1.61328 MeV*cm2/g 25.6439 eV*cm2/g 0 eV*cm2/g 1.6133 MeV*cm2/g unrestricted dE/dx : 1.99147 MeV/cm 181.698 keV/cm 0 eV/cm 2.17317 MeV/cm (MeV/g/cm2) : 1.99147 MeV*cm2/g 181.698 keV*cm2/g 0 eV*cm2/g 2.17317 MeV*cm2/g - range from restrict dE/dx: 6.07199 cm ( 6.07199 g/cm2 ) + range from restrict dE/dx: 6.07217 cm ( 6.07217 g/cm2 ) range from full dE/dx : 4.93182 cm ( 4.93182 g/cm2 ) - transport mean free path : 27.7692 cm ( 27.7692 g/cm2 ) + transport mean free path : 27.828 cm ( 27.828 g/cm2 ) critical energy (Rossi) : 78.7732 MeV Moliere radius : 0.269193 X0 = 9.71583 cm @@ -427,7 +430,7 @@ Index : 1 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000435s Sys=0.000000s + User=0.000000s Real=0.000242s Sys=0.000000s G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 9 of which, static: 0 diff --git a/examples/extended/electromagnetic/TestEm1/.README.txt b/examples/extended/electromagnetic/TestEm1/.README.txt index fc7e1c1f33..26234e2db8 100644 --- a/examples/extended/electromagnetic/TestEm1/.README.txt +++ b/examples/extended/electromagnetic/TestEm1/.README.txt @@ -109,7 +109,25 @@ Idle> type your commands .... Idle> exit \endverbatim - + + Macros provided in this example: + - brems.mac: Bremsstrahlung only + - erange.mac: compute the csda range of primary particle + - geantino.mac: geantino as primary particle + - ionis.mac: Ionisation only + - photoelec.mac: 100 keV photon photoelectric effect + - radioactive.mac: use radioactive ion as primary particle + - range.mac: compute the csda range of the primary particle + with or without fluctuations + - runs.mac: electron 100 MeV; all processes + + Macros to be run interactively: + - annihil.mac: To visualise 100 MeV e+ annihilation + - decayinfly.mac: To visualise decay in fly of N16 + - gammaconversion.mac: To visualise gamma conversion and e+ annihilation + - photon.mac: To visualiza p300 keV photon beam + - vis.mac: To activate visualization + \section TestEm1_s7 TRACKING : StepMax In order to control the accuracy of the deposition, the user can limit diff --git a/examples/extended/electromagnetic/TestEm1/CMakeLists.txt b/examples/extended/electromagnetic/TestEm1/CMakeLists.txt index 639144d665..3c1f5b73e9 100644 --- a/examples/extended/electromagnetic/TestEm1/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm1/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm1) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm1/History b/examples/extended/electromagnetic/TestEm1/History index 6ea56e79bb..e2a5755509 100644 --- a/examples/extended/electromagnetic/TestEm1/History +++ b/examples/extended/electromagnetic/TestEm1/History @@ -14,6 +14,16 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +03-09-20 I.Hrivnacova, mma (testem1-V10-06-02) +- Revied macros: + Added macro description in README. + +05-08-20 A.Ribon (testem1-V10-06-01) +- radioactive.mac : migrated UI command from "/grdm/nucleusLimits" + to "/process/had/rdm/nucleusLimits" + (this was done for completeness, although not necessary because + the comment is currently commented out). + 14-01-20 V.Ivanchenko (testem1-V10-06-00) - PhysicsList - use G4RadioactiveDecayBase instead of obsolete G4RadioactiveDecay and minor code cleanup diff --git a/examples/extended/electromagnetic/TestEm1/README b/examples/extended/electromagnetic/TestEm1/README index 0368614821..8a9b9086d7 100644 --- a/examples/extended/electromagnetic/TestEm1/README +++ b/examples/extended/electromagnetic/TestEm1/README @@ -106,7 +106,25 @@ Idle> type your commands .... Idle> exit - + + Macros provided in this example: + - brems.mac: Bremsstrahlung only + - erange.mac: compute the csda range of primary particle + - geantino.mac: geantino as primary particle + - ionis.mac: Ionisation only + - photoelec.mac: 100 keV photon photoelectric effect + - radioactive.mac: use radioactive ion as primary particle + - range.mac: compute the csda range of the primary particle + with or without fluctuations + - runs.mac: electron 100 MeV; all processes + + Macros to be run interactively: + - annihil.mac: To visualise 100 MeV e+ annihilation + - decayinfly.mac: To visualise decay in fly of N16 + - gammaconversion.mac: To visualise gamma conversion and e+ annihilation + - photon.mac: To visualiza p300 keV photon beam + - vis.mac: To activate visualization + 7 - TRACKING : StepMax In order to control the accuracy of the deposition, the user can limit @@ -139,4 +157,4 @@ It is also possible to print selected histograms on an ascii file: /analysis/h1/setAscii id - All selected histos will be written on a file name.ascii (default testem1) \ No newline at end of file + All selected histos will be written on a file name.ascii (default testem1) diff --git a/examples/extended/electromagnetic/TestEm1/TestEm1.out b/examples/extended/electromagnetic/TestEm1/TestEm1.out index bab247cc3b..1c4d43eb46 100644 --- a/examples/extended/electromagnetic/TestEm1/TestEm1.out +++ b/examples/extended/electromagnetic/TestEm1/TestEm1.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -54,7 +54,7 @@ ElmMassFraction: 88.79 % ElmAbundance 33.33 % - Material: CO2 density: 0.001 kg/m3 RadL: 361.873 km Nucl.Int.Length: 858.384 km + Material: CO2 density: 0.001 mg/cm3 RadL: 361.873 km Nucl.Int.Length: 858.384 km Imean: 90.958 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: Hydrogen (C) Z = 6.0 N = 12 A = 12.000 g/mole @@ -69,7 +69,7 @@ ElmMassFraction: 72.73 % ElmAbundance 66.67 % - Material: D2_gas density: 0.036 kg/m3 RadL: 34.993 km Nucl.Int.Length: 9.722 km + Material: D2_gas density: 0.036 mg/cm3 RadL: 34.993 km Nucl.Int.Length: 9.722 km Imean: 19.200 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: Heavy-Hydrogen (D) Z = 1.0 N = 2 A = 2.014 g/mole @@ -246,7 +246,7 @@ ElmMassFraction: 5.22 % ElmAbundance 57.49 % - Material: Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -311,7 +311,9 @@ Number of bins per decade of a table 7 Verbose level 0 Verbose level for worker thread 0 Bremsstrahlung energy threshold above which - primary is added to the list of secondary 100 TeV + primary e+- is added to the list of secondary 100 TeV +Bremsstrahlung energy threshold above which primary + muon/hadron is added to the list of secondary 100 TeV Lowest triplet kinetic energy 1 MeV Enable sampling of gamma linear polarisation 0 5D gamma conversion model type 0 @@ -357,6 +359,7 @@ Factor used for dynamic computation of angular Fixed angular limit between single and multiple scattering 3.1416 rad Upper energy limit for e+- multiple scattering 100 MeV +Type of electron single scattering model 0 Type of nuclear form-factor 1 Screening factor 1 ======================================================================= @@ -396,7 +399,7 @@ Use Bearden atomic level energies 0 Index : 0 used in the geometry : Yes Material : Aluminium Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.89704 keV e- 597.831 keV e+ 572.651 keV proton 100 keV + Energy thresholds : gamma 6.89843 keV e- 599.101 keV e+ 573.786 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -422,31 +425,31 @@ N=17 V[N]={906770732717044781, 629165745432651234, 1235682547346241386, 68420008 Run terminated. Run Summary Number of events processed : 2000 - User=2.660000s Real=2.668387s Sys=0.010000s + User=1.610000s Real=1.619178s Sys=0.000000s ======================== run summary ====================== The run is: 2000 e- of 100 MeV through 10 m of Aluminium (density: 2.7 g/cm3 ) - Total energy deposit: 99.819 MeV + Total energy deposit: 99.827 MeV NIEL energy calculated: 0 eV - Nb tracks/event neutral: 25.23 charged: 137.09 - Nb steps/event neutral: 139.79 charged: 202.9 + Nb tracks/event neutral: 25.128 charged: 137.12 + Nb steps/event neutral: 139.35 charged: 202.9 Process calls frequency : - CoulombScat= 2 Rayl= 18682 Transportation= 1796 - annihil= 2699 compt= 210435 conv= 2684 - eBrem= 46204 eIoni= 356515 msc= 367 - phot= 45985 + Rayl= 17745 Transportation= 1796 annihil= 2806 + compt= 210700 conv= 2785 eBrem= 45775 + eIoni= 356921 msc= 296 phot= 45680 + --------------------------------------------------------- Primary particle : - true Range = 11.261 cm rms = 3.7628 cm - proj Range = 9.8133 cm rms = 3.4783 cm - proj/true = 0.87141 - transverse dispersion at end = 1.6391 cm - mass true Range from simulation = 30.406 g/cm2 + true Range = 11.099 cm rms = 3.8634 cm + proj Range = 9.6568 cm rms = 3.5968 cm + proj/true = 0.87009 + transverse dispersion at end = 1.6112 cm + mass true Range from simulation = 29.966 g/cm2 from PhysicsTable (csda range) = 32.101 g/cm2 --------------------------------------------------------- @@ -454,7 +457,7 @@ Run Summary ------- MixMaxRng engine status ------- Current state vector is: mixmax state, file version 1.0 -N=17 V[N]={1302914586364516192, 981470369480427572, 2160502346718828356, 429787929074918439, 1808516940691426334, 698748172330148046, 2191967554294380159, 261909875613768565, 98089926860429589, 889034164219562401, 1469965970424315298, 1044070984276865562, 950537578583079633, 443060070319592163, 1678330447352259494, 203574551500751827, 1524677366059732756} counter= 6sumtot= 1996257769669144729 +N=17 V[N]={511862276547668598, 1471172288461575206, 1128851390031159049, 986176925366361558, 1714976611656641989, 585612007627498246, 1310561837954673793, 1928477068593323800, 1745855577386704779, 1426413875986992036, 1452014596195759837, 144364650739019718, 1973405502184080304, 364138860850256971, 100193770972482617, 2029412755232034316, 1686421473982614873} counter= 2sumtot= 2113167396059296082 --------------------------------------- # /gun/particle proton @@ -465,7 +468,7 @@ N=17 V[N]={1302914586364516192, 981470369480427572, 2160502346718828356, 4297879 Index : 0 used in the geometry : Yes Material : Aluminium Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.89704 keV e- 597.831 keV e+ 572.651 keV proton 100 keV + Energy thresholds : gamma 6.89843 keV e- 599.101 keV e+ 573.786 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -476,7 +479,7 @@ Index : 0 used in the geometry : Yes ------- MixMaxRng engine status ------- Current state vector is: mixmax state, file version 1.0 -N=17 V[N]={1302914586364516192, 981470369480427572, 2160502346718828356, 429787929074918439, 1808516940691426334, 698748172330148046, 2191967554294380159, 261909875613768565, 98089926860429589, 889034164219562401, 1469965970424315298, 1044070984276865562, 950537578583079633, 443060070319592163, 1678330447352259494, 203574551500751827, 1524677366059732756} counter= 6sumtot= 1996257769669144729 +N=17 V[N]={511862276547668598, 1471172288461575206, 1128851390031159049, 986176925366361558, 1714976611656641989, 585612007627498246, 1310561837954673793, 1928477068593323800, 1745855577386704779, 1426413875986992036, 1452014596195759837, 144364650739019718, 1973405502184080304, 364138860850256971, 100193770972482617, 2029412755232034316, 1686421473982614873} counter= 2sumtot= 2113167396059296082 --------------------------------------- --> Event 0 starts. --> Event 200 starts. @@ -491,42 +494,42 @@ N=17 V[N]={1302914586364516192, 981470369480427572, 2160502346718828356, 4297879 Run terminated. Run Summary Number of events processed : 2000 - User=0.230000s Real=0.230819s Sys=0.000000s + User=0.070000s Real=0.071886s Sys=0.000000s ======================== run summary ====================== The run is: 2000 proton of 100 MeV through 10 m of Aluminium (density: 2.7 g/cm3 ) Total energy deposit: 100 MeV - NIEL energy calculated: 203.15 eV + NIEL energy calculated: 230.53 eV - Nb tracks/event neutral: 0 charged: 1.0115 - Nb steps/event neutral: 0 charged: 19.233 + Nb tracks/event neutral: 0 charged: 1.011 + Nb steps/event neutral: 0 charged: 19.311 Process calls frequency : - CoulombScat= 57 RadioactiveDecayBase= 23 hIoni= 38364 - ionIoni= 23 + CoulombScat= 55 RadioactiveDecayBase= 22 hIoni= 38524 + ionIoni= 22 --------------------------------------------------------- Primary particle : - true Range = 3.7118 cm rms = 409.95 um - proj Range = 3.7034 cm rms = 431.89 um - proj/true = 0.99773 - transverse dispersion at end = 1.1246 mm - mass true Range from simulation = 10.022 g/cm2 - from PhysicsTable (csda range) = 10.012 g/cm2 + true Range = 3.7132 cm rms = 412.14 um + proj Range = 3.7048 cm rms = 425.83 um + proj/true = 0.99775 + transverse dispersion at end = 1.1239 mm + mass true Range from simulation = 10.026 g/cm2 + from PhysicsTable (csda range) = 10.013 g/cm2 --------------------------------------------------------- ------- MixMaxRng engine status ------- Current state vector is: mixmax state, file version 1.0 -N=17 V[N]={417212715860133423, 797475141997434162, 1924011096229498372, 1331368251629480060, 1397920013137059242, 1535453008484133520, 442812139949888600, 2280871965286744316, 202809921529404713, 2184402420635843947, 1908678186735148794, 869640362843451000, 1093219461757191434, 760010657361176867, 732134659819899150, 652372012853418261, 1486860334026738953} counter= 4sumtot= 1570508276427093206 +N=17 V[N]={2242478760734191844, 367404330490087245, 45194397492864290, 1268791187056359920, 1662323814748851017, 1464932188731583832, 562075691796711105, 1863622584876278003, 1704574723025588234, 963592955979266590, 543515433432620312, 464598867962878693, 641770506223233834, 2042532019127553785, 346259490809042034, 998315733089559582, 244586720294023349} counter= 8sumtot= 1285668341374836012 --------------------------------------- # G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 9 of which, static: 0 -Dynamic pools deleted: 9 / Total memory freed: 0.036 MB +Dynamic pools deleted: 9 / Total memory freed: 0.037 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/electromagnetic/TestEm1/radioactive.mac b/examples/extended/electromagnetic/TestEm1/radioactive.mac index a0f6ff9384..a1886711df 100644 --- a/examples/extended/electromagnetic/TestEm1/radioactive.mac +++ b/examples/extended/electromagnetic/TestEm1/radioactive.mac @@ -20,7 +20,7 @@ /gun/energy 0 eV /gun/position 0 0 0 mm # -###/grdm/nucleusLimits 210 210 82 82 +###/process/had/rdm/nucleusLimits 210 210 82 82 # /analysis/setFileName rdecay /analysis/h1/set 4 100 0 3 MeV #total edep diff --git a/examples/extended/electromagnetic/TestEm10/CMakeLists.txt b/examples/extended/electromagnetic/TestEm10/CMakeLists.txt index 400f5020b6..00ea7a98c3 100644 --- a/examples/extended/electromagnetic/TestEm10/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm10/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm10) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm10/History b/examples/extended/electromagnetic/TestEm10/History index 1fb81c72a3..9646156dad 100644 --- a/examples/extended/electromagnetic/TestEm10/History +++ b/examples/extended/electromagnetic/TestEm10/History @@ -14,6 +14,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +13-11-20 B. Morgan (testem10-V10-06-01) +- Enforce use of Serial RunManager. + +10-11-20 B. Morgan (testem10-V10-06-00) +- Migration to G4RunManagerFactory. + 07-04-18 m. maire (testem10-V10-04-01) - testem10.cc : set visualiation only in interactive mode @@ -21,7 +27,7 @@ track of all tags. - testem10.cc : remove G4UI_USE and G4VIS_USE 10-11-16 V.Ivanchenko (testem10-V10-02-03) -- DetectorConstruction, DetectorSimpleALICE - removed run time +- DetectorConstruction, DetectorSimpleALICE - removed run time warning by proper definition cuts per region 14-10-16 G.Folger (testem10-V10-02-02) @@ -35,12 +41,12 @@ track of all tags. - Major example revision & clean-up: - Removed Em10 prefix from class names to be consistent with other examples in electromagnetic category - - Refactored detector construction & its messenger classes + - Refactored detector construction & its messenger classes - Revised scoring: removed unused code and replaced own-defined histograms with Geant4 analysis - Added StackingAction which accounts XTR gamma, all gamma and all e- - spectra - - PhysicsList changed to a modular physics list and introduced + spectra + - PhysicsList changed to a modular physics list and introduced TransitionRadiationPhysics builder - Clean-up primary generator action - Added test_suite.sh script @@ -56,7 +62,7 @@ track of all tags. 01-04-13 A.Dotti (testem10-V09-05-05,testem10-V09-05-06) - New G4VUserPhysicsList interface -13-02-13 I.Hrivnacova +13-02-13 I.Hrivnacova - Applied coding guidelines (virtual keyword, data members initialization) 28-11-12 G.Cosmo (testem10-V09-05-04) @@ -66,54 +72,54 @@ track of all tags. - Migration to the updated analysis tool 18-08-12 V.Ivant (testem10-V09-05-02) -- Em10SteppingAction - rewritten (old code was very non-optimized and +- Em10SteppingAction - rewritten (old code was very non-optimized and provides crashes) 11-07-12 V.Ivant (testem10-V09-05-01) - Em10RunAction - cleanup initialisation 10-07-12 V.Ivant (testem10-V09-05-00) -- Em10RunAction - fixed write outside boundaries of C-array +- Em10RunAction - fixed write outside boundaries of C-array 03-10-11 G.Folger (testem10-V09-04-00) -- Fix gcc46 compilation warning in Em10PrimaryGeneratorAction.cc +- Fix gcc46 compilation warning in Em10PrimaryGeneratorAction.cc and src/Em10Materials.cc 03-06-10 J.Perl (testem10-V09-03-01) -- Updated vis usage +- Updated vis usage 21-05-10 mma (testem10-V09-03-00) - TestEm10.cc : introduction of G4UIExecutive 21-11-09 V.Ivant (testem10-V09-02-00) -- update PhysList according to 9.3 +- update PhysList according to 9.3 12-06-08 mma (testem10-V09-01-01) -- Remove AIDA from GNUmakefile - +- Remove AIDA from GNUmakefile + 07-05-08 mma (testem10-V09-01-00) - README : update Aida informations 27-07-07 V.Ivant (testem10-V09-00-00) - Create VisManager only for interactive session, improve destructor of Em10DetectorConstruction class - -25-10-06 mma (testem10-V08-01-00) + +25-10-06 mma (testem10-V08-01-00) - GNUmakefile : LOADLIBS 22 May 05: V.Ivant (testem10-V08-00-01) - Remove extra files 19 May 05: V.Ivant (testem10-V08-00-00) -- V.Grichine cleanup +- V.Grichine cleanup 06 Dec 05: Gabriele Cosmo - Trivial changes for support of CLHEP-2.0.X series. 29 Oct 05: V.Ivant (testem10-V07-01-01) -- V.Grichine:Production cuts were moved to Physics list providing - independent gamma, electron and positron cuts in radiator - and detector regions. +- V.Grichine:Production cuts were moved to Physics list providing + independent gamma, electron and positron cuts in radiator + and detector regions. 15 Oct 05: V.Ivant (testem10-V07-01-00) - Updated PhysicsList @@ -135,7 +141,7 @@ track of all tags. 27-08-03 V.Ivant (testem10-V05-02-00) - Remove obsolete interfaces -- Substitute in the PhysicsList processes by those of 5.2 realise +- Substitute in the PhysicsList processes by those of 5.2 realise 20 Feb. 2003 Vladimir Ivanchenko (testem10-V05-00-00) - Migrade to cut per region diff --git a/examples/extended/electromagnetic/TestEm10/TestEm10.cc b/examples/extended/electromagnetic/TestEm10/TestEm10.cc index 480eacd567..2455899239 100644 --- a/examples/extended/electromagnetic/TestEm10/TestEm10.cc +++ b/examples/extended/electromagnetic/TestEm10/TestEm10.cc @@ -32,7 +32,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "Randomize.hh" @@ -47,8 +47,8 @@ #include "G4VisExecutive.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -int main(int argc,char** argv) + +int main(int argc,char** argv) { //detect interactive mode (if no arguments) and define UI session @@ -57,9 +57,9 @@ int main(int argc,char** argv) //choose the Random engine CLHEP::HepRandom::setTheEngine(new CLHEP::RanecuEngine); - - //construct the default run manager - G4RunManager * runManager = new G4RunManager; + + //construct a serial run manager + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); //set mandatory initialization classes DetectorConstruction* detector; diff --git a/examples/extended/electromagnetic/TestEm10/TestEm10.out b/examples/extended/electromagnetic/TestEm10/TestEm10.out index b1af99d94d..d4751ca4da 100644 --- a/examples/extended/electromagnetic/TestEm10/TestEm10.out +++ b/examples/extended/electromagnetic/TestEm10/TestEm10.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -59,10 +59,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -87,70 +88,71 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lorentz Factor XTR photon number -107.6 0.0003516 -123 0.0006162 -140.7 0.001063 -161 0.001462 -184.2 0.002731 -210.8 0.004544 -241.2 0.005942 -276.1 0.00888 -316 0.01662 -361.6 0.02875 -414 0.04088 -473.9 0.05028 -542.4 0.06057 -621 0.07842 -710.9 0.1139 -813.9 0.1726 -931.8 0.2712 -1067 0.4029 -1221 0.5447 -1398 0.6784 -1601 0.9513 -1833 1.348 -2099 1.719 -2403 2.032 -2752 2.287 -3151 2.489 -3607 2.646 -4131 2.767 -4730 2.859 -5415 2.929 -6201 2.983 -7100 3.024 -8130 3.055 -9309 3.078 -1.066e+04 3.097 -1.22e+04 3.11 -1.397e+04 3.121 -1.6e+04 3.129 -1.832e+04 3.135 -2.098e+04 3.14 -2.402e+04 3.143 -2.751e+04 3.146 -3.15e+04 3.148 -3.607e+04 3.15 -4.13e+04 3.151 -4.729e+04 3.152 -5.415e+04 3.153 -6.2e+04 3.153 -7.099e+04 3.154 -8.129e+04 3.154 +107.6 0.0003514 +123.4 0.0006259 +141.5 0.001078 +162.3 0.001513 +186.2 0.002884 +213.7 0.004694 +245.2 0.006087 +281.3 0.009628 +322.9 0.01836 +370.5 0.03094 +425.3 0.04306 +488.2 0.05193 +560.3 0.06382 +643.2 0.08559 +738.3 0.1271 +847.6 0.1977 +973 0.3108 +1117 0.4511 +1282 0.5944 +1472 0.7402 +1690 1.109 +1940 1.51 +2228 1.864 +2558 2.157 +2936 2.391 +3371 2.574 +3871 2.714 +4444 2.821 +5102 2.902 +5858 2.964 +6726 3.01 +7722 3.046 +8866 3.073 +1.018e+04 3.093 +1.169e+04 3.109 +1.342e+04 3.12 +1.541e+04 3.129 +1.769e+04 3.136 +2.031e+04 3.141 +2.332e+04 3.145 +2.677e+04 3.148 +3.074e+04 3.15 +3.529e+04 3.152 +4.052e+04 3.153 +4.652e+04 3.154 +5.342e+04 3.155 +6.133e+04 3.156 +7.042e+04 3.156 +8.085e+04 3.156 +9.283e+04 3.157 -total time for build X-ray TR energy loss tables = 0.15 s +total time for build X-ray TR energy loss tables = 0.13 s Build angle for energy distribution according the current radiator Lorentz Factor XTR photon number -total time for build XTR angle for given energy tables = 0.18 s +total time for build XTR angle for given energy tables = 0.12 s msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -179,69 +181,69 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 Lorentz Factor XTR photon number -107.6 0.0003516 -123 0.0006162 -140.7 0.001063 -161 0.001462 -184.2 0.002731 -210.8 0.004544 -241.2 0.005942 -276.1 0.00888 -316 0.01662 -361.6 0.02875 -414 0.04088 -473.9 0.05028 -542.4 0.06057 -621 0.07842 -710.9 0.1139 -813.9 0.1726 -931.8 0.2712 -1067 0.4029 -1221 0.5447 -1398 0.6784 -1601 0.9513 -1833 1.348 -2099 1.719 -2403 2.032 -2752 2.287 -3151 2.489 -3607 2.646 -4131 2.767 -4730 2.859 -5415 2.929 -6201 2.983 -7100 3.024 -8130 3.055 -9309 3.078 -1.066e+04 3.097 -1.22e+04 3.11 -1.397e+04 3.121 -1.6e+04 3.129 -1.832e+04 3.135 -2.098e+04 3.14 -2.402e+04 3.143 -2.751e+04 3.146 -3.15e+04 3.148 -3.607e+04 3.15 -4.13e+04 3.151 -4.729e+04 3.152 -5.415e+04 3.153 -6.2e+04 3.153 -7.099e+04 3.154 -8.129e+04 3.154 +107.6 0.0003514 +123.4 0.0006259 +141.5 0.001078 +162.3 0.001513 +186.2 0.002884 +213.7 0.004694 +245.2 0.006087 +281.3 0.009628 +322.9 0.01836 +370.5 0.03094 +425.3 0.04306 +488.2 0.05193 +560.3 0.06382 +643.2 0.08559 +738.3 0.1271 +847.6 0.1977 +973 0.3108 +1117 0.4511 +1282 0.5944 +1472 0.7402 +1690 1.109 +1940 1.51 +2228 1.864 +2558 2.157 +2936 2.391 +3371 2.574 +3871 2.714 +4444 2.821 +5102 2.902 +5858 2.964 +6726 3.01 +7722 3.046 +8866 3.073 +1.018e+04 3.093 +1.169e+04 3.109 +1.342e+04 3.12 +1.541e+04 3.129 +1.769e+04 3.136 +2.031e+04 3.141 +2.332e+04 3.145 +2.677e+04 3.148 +3.074e+04 3.15 +3.529e+04 3.152 +4.052e+04 3.153 +4.652e+04 3.154 +5.342e+04 3.155 +6.133e+04 3.156 +7.042e+04 3.156 +8.085e+04 3.156 +9.283e+04 3.157 -total time for build X-ray TR energy loss tables = 0.14 s +total time for build X-ray TR energy loss tables = 0.13 s Build angle for energy distribution according the current radiator Lorentz Factor XTR photon number -total time for build XTR angle for given energy tables = 0.18 s +total time for build XTR angle for given energy tables = 0.12 s msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -255,14 +257,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -271,9 +273,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -285,9 +287,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -298,9 +300,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -314,14 +316,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -330,9 +332,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -346,14 +348,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -362,9 +364,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -378,14 +380,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -394,9 +396,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -411,14 +413,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -427,9 +429,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -444,14 +446,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -460,9 +462,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -476,14 +478,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -492,9 +494,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -508,14 +510,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -535,14 +537,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : radiatorMat Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 1.07285 keV e- 83.4168 keV e+ 82.3069 keV proton 100 keV + Energy thresholds : gamma 1.07314 keV e- 83.5287 keV e+ 82.4135 keV proton 100 keV Region(s) which use this couple : XTRradiator Index : 2 used in the geometry : Yes Material : Xe15CO2 Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 990 eV e- 2.10545 keV e+ 2.04897 keV proton 100 keV + Energy thresholds : gamma 990 eV e- 2.08861 keV e+ 2.0697 keV proton 100 keV Region(s) which use this couple : XTRdEdxDetector @@ -555,27 +557,28 @@ Index : 2 used in the geometry : Yes Initial seed (index) = 0 Current couple of seeds = 9876, 54321 ---------------------------------------- -... open Root analysis file : testem10.root - done +... create file : testem10.root - done +... open analysis file : testem10.root - done --> Event 0 starts. Run terminated. Run Summary Number of events processed : 1000 - User=0.570000s Real=0.575596s Sys=0.000000s + User=0.230000s Real=0.229898s Sys=0.000000s ================== run summary ===================== End of Run TotNbofEvents = 1000 - Mean energy deposit in absorber = 0.0494515 +-0.0190899 MeV - Total number of XTR gammas = 2713 + Mean energy deposit in absorber = 0.0488395 +-0.0194561 MeV + Total number of XTR gammas = 2704 Total number of all gammas = 2816 --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 2078979988, 399844062 + Current couple of seeds = 1047670955, 1936905201 ---------------------------------------- -... write Root file : testem10.root - done -... close Root file : testem10.root - done +... write file : testem10.root - done +... close file : testem10.root - done G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 10 of which, static: 0 -Dynamic pools deleted: 10 / Total memory freed: 0.042 MB +Dynamic pools deleted: 10 / Total memory freed: 0.045 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/electromagnetic/TestEm11/.README.txt b/examples/extended/electromagnetic/TestEm11/.README.txt index f22c470be0..2f05c9f7c3 100644 --- a/examples/extended/electromagnetic/TestEm11/.README.txt +++ b/examples/extended/electromagnetic/TestEm11/.README.txt @@ -119,6 +119,20 @@ Idle> type your commands Idle> exit \endverbatim + Macros provided in this example: + - alpha.mac: alpha (400 MeV) on water + - ionC12.mac: ion C12 (2.4 GeV) on water + - multiLayers.mac: gamma (6 MeV) on multi layers + - radioactive.mac: radioactive ion on multi layers + - range.mac: compute csda range of primary particle + - run01.mac: e- (500 keV) on silicon. Step max from histo 1 + - run02.mac: e- (500 keV) on silicon. Step max from geometry + - sandia.mac: to compare with Sandia data + - water.mac: e- (4 MeV) on water. No constraint on tracking step + + Macros to be run interactively: + - vis.mac: To activate visualization + \section TestEm11_s7 TRACKING and STEP MAX TestEm11 computes the distribution of energy deposited along the trajectory of diff --git a/examples/extended/electromagnetic/TestEm11/CMakeLists.txt b/examples/extended/electromagnetic/TestEm11/CMakeLists.txt index adc29ead11..79a4321aae 100644 --- a/examples/extended/electromagnetic/TestEm11/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm11/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm11) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm11/History b/examples/extended/electromagnetic/TestEm11/History index d2e71c4e46..33bc398b2e 100644 --- a/examples/extended/electromagnetic/TestEm11/History +++ b/examples/extended/electromagnetic/TestEm11/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +27-10-20 mma (testem11-V11-06-01) +- add macros description in Readme + 14-01-20 V.Ivanchenko (testem11-V11-06-00) - PhysicsList - use G4RadioactiveDecayBase instead of obsolete G4RadioactiveDecay and minor code cleanup diff --git a/examples/extended/electromagnetic/TestEm11/README b/examples/extended/electromagnetic/TestEm11/README index c7483fe89a..66b7b3cf53 100644 --- a/examples/extended/electromagnetic/TestEm11/README +++ b/examples/extended/electromagnetic/TestEm11/README @@ -119,7 +119,21 @@ Idle> type your commands .... Idle> exit - + + Macros provided in this example: + - alpha.mac: alpha (400 MeV) on water + - ionC12.mac: ion C12 (2.4 GeV) on water + - multiLayers.mac: gamma (6 MeV) on multi layers + - radioactive.mac: radioactive ion on multi layers + - range.mac: compute csda range of primary particle + - run01.mac: e- (500 keV) on silicon. Step max from histo 1 + - run02.mac: e- (500 keV) on silicon. Step max from geometry + - sandia.mac: to compare with Sandia data + - water.mac: e- (4 MeV) on water. No constraint on tracking step + + Macros to be run interactively: + - vis.mac: To activate visualization + 7- TRACKING and STEP MAX TestEm11 computes the distribution of energy deposited along the trajectory of diff --git a/examples/extended/electromagnetic/TestEm11/TestEm11.in b/examples/extended/electromagnetic/TestEm11/TestEm11.in index da5e2d110e..488e865914 100644 --- a/examples/extended/electromagnetic/TestEm11/TestEm11.in +++ b/examples/extended/electromagnetic/TestEm11/TestEm11.in @@ -1,9 +1,11 @@ # +# Macro file for TestEm11 +# # limit the step size from histo 1 # -/control/verbose 2 /control/cout/ignoreThreadsExcept 0 -/run/verbose 2 +/control/verbose 2 +/run/verbose 1 # /testem/det/setNbOfAbsor 1 /testem/det/setAbsor 1 G4_Si 1 mm @@ -25,5 +27,4 @@ ###/analysis/h1/set 5 100 0. 1. mm #proj range # /run/printProgress 10000 -# /run/beamOn 20000 diff --git a/examples/extended/electromagnetic/TestEm11/TestEm11.out b/examples/extended/electromagnetic/TestEm11/TestEm11.out index 94bc9d2ca5..0c0cbbb6af 100644 --- a/examples/extended/electromagnetic/TestEm11/TestEm11.out +++ b/examples/extended/electromagnetic/TestEm11/TestEm11.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,8 +12,7 @@ WWW : http://geant4.org/ ************************************************************** -/control/cout/ignoreThreadsExcept 0 -/run/verbose 2 +/run/verbose 1 # /testem/det/setNbOfAbsor 1 /run/reinitializeGeometry @@ -26,17 +25,12 @@ PhysicsList::AddPhysicsList: # /run/initialize -userDetector->Construct() start. ------------------------------------------------------------- ---> The Absorber is 1 layers of: G4_Si: 1 mm divided in 1 slices ------------------------------------------------------------- -World is registered to the default region. -physicsList->Construct() start. -physicsList->CheckParticleList() start. -physicsList->setCut() start. # /testem/gun/setDefault /gun/particle e- @@ -50,7 +44,6 @@ physicsList->setCut() start. ###/analysis/h1/set 5 100 0. 1. mm #proj range # /run/printProgress 10000 -# /run/beamOn 20000 ### === Deexcitation model UAtomDeexcitation is activated for 1 region: @@ -80,9 +73,9 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -105,12 +98,12 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -133,16 +126,16 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -157,23 +150,23 @@ hBrems: for proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi nuclearStopping: for proton SubType=8 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -202,9 +195,9 @@ Use Bearden atomic level energies 0 ====================================================================== msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -220,9 +213,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -237,19 +230,19 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -264,19 +257,19 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -291,19 +284,19 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -319,19 +312,19 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -347,19 +340,19 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -374,19 +367,19 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -401,27 +394,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -Region -- -- appears in world volume - This region is in the mass world. - Root logical volume(s) : World - Pointers : G4VUserRegionInformation[0], G4UserLimits[0], G4FastSimulationManager[0], G4UserSteppingAction[0] - Materials : Galactic G4_Si - Production cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - -Region -- -- is not associated to any world. - Root logical volume(s) : - Pointers : G4VUserRegionInformation[0], G4UserLimits[0], G4FastSimulationManager[0], G4UserSteppingAction[0] - Materials : - Production cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi ========= Table of registered couples ============================ @@ -435,27 +415,12 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_Si Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.90532 keV e- 544.145 keV e+ 526.224 keV proton 100 keV + Energy thresholds : gamma 6.95018 keV e- 548.291 keV e+ 526.624 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld ================================================================== -Start closing geometry. -G4GeometryManager::ReportVoxelStats -- Voxel Statistics - - Total memory consumed for geometry optimisation: 0 kByte - Total CPU time elapsed for geometry optimisation: 0 seconds - - Voxelisation: top CPU users: - Percent Total CPU System CPU Memory Volume - ------- ---------- ---------- -------- ---------- - 0.00 0.00 0.00 0k G4_Si - - Voxelisation: top memory users: - Percent Memory Heads Nodes Pointers Total CPU Volume - ------- -------- ------ ------ -------- ---------- ---------- - 100.00 0k 1 1 1 0.00 G4_Si ### Run 0 starts. --------- Ranecu engine status --------- @@ -467,53 +432,31 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Run terminated. Run Summary Number of events processed : 20000 - User=4.160000s Real=4.178206s Sys=0.000000s + User=0.670000s Real=0.712145s Sys=0.000000s ======================== run summary ===================== The run is 20000 e- of 500.00 keV through 1 absorbers: 1 1.00 mm of G4_Si (density: 2.33 g/cm3 ) - Edep in absorber 1 = 447.251 keV (20.438 keV-->500.000 keV) + Edep in absorber 1 = 448.186 keV (17.351 keV-->500.000 keV) - Track length of primary track = 879.940 um +- 193.456 um - Range from EmCalculator = 942.757 um (from full dE/dx) + Track length of primary track = 883.096 um +- 192.370 um + Range from EmCalculator = 942.776 um (from full dE/dx) - Projected range = 314.035 um +- 198.145 um + Projected range = 321.214 um +- 195.220 um - Nb of steps of primary track = 21.05 +- 4.89 Step size= 42.270 um +- 6.722 um + Nb of steps of primary track = 11.40 +- 2.83 Step size= 80.255 um +- 21.135 um - absorbed = 77.62 % transmit = 5.22 % reflected = 17.16 % + absorbed = 78.10 % transmit = 5.17 % reflected = 16.73 % --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1590892920, 653467453 + Current couple of seeds = 431014072, 1945144233 ---------------------------------------- G4 kernel has come to Quit state. -UserDetectorConstruction deleted. -UserPhysicsList deleted. -UserActionInitialization deleted. -UserRunAction deleted. -UserPrimaryGenerator deleted. -RunManager is deleting RunManagerKernel. -EventManager deleted. -Units table cleared. -TransportationManager deleted. -Total navigation history collections cleaned: 6 ================== Deleting memory pools =================== -Pool ID '20G4NavigationLevelRep', size : 0.00673 MB -Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB -Pool ID '7G4Event', size : 0.000961 MB -Pool ID '15G4PrimaryVertex', size : 0.000961 MB -Pool ID '17G4PrimaryParticle', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.000961 MB -Pool ID '7G4Track', size : 0.000961 MB -Pool ID '18G4TouchableHistory', size : 0.000961 MB -Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Number of memory pools allocated: 9 of which, static: 0 -Dynamic pools deleted: 9 / Total memory freed: 0.014 MB +Dynamic pools deleted: 9 / Total memory freed: 0.015 MB ============================================================ -G4Allocator objects are deleted. -UImanager deleted. -StateManager deleted. RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/electromagnetic/TestEm11/alpha.mac b/examples/extended/electromagnetic/TestEm11/alpha.mac index c7979f6461..d1eb4f81fe 100644 --- a/examples/extended/electromagnetic/TestEm11/alpha.mac +++ b/examples/extended/electromagnetic/TestEm11/alpha.mac @@ -1,8 +1,11 @@ # +# Macro file for TestEm11 +# # limit the step size from histo 1 # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setNbOfAbsor 1 /testem/det/setAbsor 1 Water 10 cm diff --git a/examples/extended/electromagnetic/TestEm11/ionC12.mac b/examples/extended/electromagnetic/TestEm11/ionC12.mac index 6bbc400f80..b0a3b6dfa2 100644 --- a/examples/extended/electromagnetic/TestEm11/ionC12.mac +++ b/examples/extended/electromagnetic/TestEm11/ionC12.mac @@ -1,10 +1,11 @@ # -# Macro file for "TestEm11.cc" +# Macro file for TestEm11 # # limit the step size from histo 1 # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setNbOfAbsor 1 /testem/det/setAbsor 1 Water 20 cm diff --git a/examples/extended/electromagnetic/TestEm11/multiLayers.mac b/examples/extended/electromagnetic/TestEm11/multiLayers.mac index ba127f3905..978f401bdf 100644 --- a/examples/extended/electromagnetic/TestEm11/multiLayers.mac +++ b/examples/extended/electromagnetic/TestEm11/multiLayers.mac @@ -1,8 +1,12 @@ # +# Macro file for TestEm11 +# # multiLayers +# limit the step size from histo 1 # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setNbOfAbsor 5 /testem/det/setAbsor 1 Water 13 cm @@ -24,5 +28,4 @@ /analysis/h1/set 1 300 0. 300. mm #edep profile # /run/printProgress 100000 -# /run/beamOn 1000000 diff --git a/examples/extended/electromagnetic/TestEm11/radioactive.mac b/examples/extended/electromagnetic/TestEm11/radioactive.mac index de818ac27b..029165ac7c 100644 --- a/examples/extended/electromagnetic/TestEm11/radioactive.mac +++ b/examples/extended/electromagnetic/TestEm11/radioactive.mac @@ -1,8 +1,11 @@ # -# multiLayers +# Macro file for TestEm11 # +# radioactive source in multi layers +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setNbOfAbsor 4 /testem/det/setAbsor 1 G4_PLEXIGLASS 5 mm @@ -26,5 +29,4 @@ /analysis/h1/setAscii 14 # /run/printProgress 10000 -# /run/beamOn 100000 diff --git a/examples/extended/electromagnetic/TestEm11/range.mac b/examples/extended/electromagnetic/TestEm11/range.mac index 131ef5c92a..25af3edf0a 100644 --- a/examples/extended/electromagnetic/TestEm11/range.mac +++ b/examples/extended/electromagnetic/TestEm11/range.mac @@ -4,8 +4,9 @@ # compute the csda range of the primary particle # with or without fluctuations # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setNbOfAbsor 1 /testem/det/setAbsor 1 Water 5 mm @@ -32,5 +33,4 @@ /analysis/h1/set 3 200 0 4 mm # csda range # /run/printProgress 2000 -# /run/beamOn 20000 diff --git a/examples/extended/electromagnetic/TestEm11/run01.mac b/examples/extended/electromagnetic/TestEm11/run01.mac index f29d982751..67de93ffcb 100644 --- a/examples/extended/electromagnetic/TestEm11/run01.mac +++ b/examples/extended/electromagnetic/TestEm11/run01.mac @@ -1,8 +1,11 @@ # +# Macro file for TestEm11 +# # limit the step size from histo 1 # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setNbOfAbsor 1 /testem/det/setAbsor 1 G4_Si 1 mm @@ -27,5 +30,4 @@ /testem/applyAutomaticStepMax true # /run/printProgress 10000 -# /run/beamOn 100000 diff --git a/examples/extended/electromagnetic/TestEm11/run02.mac b/examples/extended/electromagnetic/TestEm11/run02.mac index 2fdcf157dc..60496b3e8f 100644 --- a/examples/extended/electromagnetic/TestEm11/run02.mac +++ b/examples/extended/electromagnetic/TestEm11/run02.mac @@ -1,8 +1,11 @@ # +# Macro file for TestEm11 +# # limit the step size by geometry # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setNbOfAbsor 1 /testem/det/setAbsor 1 G4_Si 1 mm @@ -28,5 +31,4 @@ /testem/applyAutomaticStepMax false # /run/printProgress 10000 -# /run/beamOn 100000 diff --git a/examples/extended/electromagnetic/TestEm11/sandia.mac b/examples/extended/electromagnetic/TestEm11/sandia.mac index 7d05b29991..d093de8b8b 100644 --- a/examples/extended/electromagnetic/TestEm11/sandia.mac +++ b/examples/extended/electromagnetic/TestEm11/sandia.mac @@ -1,12 +1,15 @@ # +# Macro file for TestEm11 +# # limit the step size from histo 8 # # G.J.Lockwood et al. -# Sandia report SAND79-0414.UC-34a, February 1987 +# Sandia report SAND79-0414.UC-34a, February 1987 # O.Kadri et al. NIM B 258 (2007) 381 # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setNbOfAbsor 1 ###/testem/det/setAbsor 1 G4_Al 1 cm @@ -25,10 +28,9 @@ /gun/particle e- /gun/energy 1000 keV # -/analysis/setFileName sandia/Ta_1000keV_opt3 +/analysis/setFileName Ta_1000keV_opt3 ###/analysis/h1/set 8 100 0. 1.0 none #normalized Edep profile /analysis/h1/set 8 100 0. 0.5 none #for Ta # /run/printProgress 10000 -# /run/beamOn 100000 diff --git a/examples/extended/electromagnetic/TestEm11/water.mac b/examples/extended/electromagnetic/TestEm11/water.mac index 30b396e4af..63f101e1c5 100644 --- a/examples/extended/electromagnetic/TestEm11/water.mac +++ b/examples/extended/electromagnetic/TestEm11/water.mac @@ -1,8 +1,11 @@ # +# Macro file for TestEm11 +# # no constraint on tracking step # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setNbOfAbsor 1 /testem/det/setAbsor 1 Water 3 cm @@ -26,5 +29,4 @@ /analysis/h1/set 6 100 0. 24. mm #track length secondaries # /run/printProgress 10000 -# /run/beamOn 100000 diff --git a/examples/extended/electromagnetic/TestEm12/.README.txt b/examples/extended/electromagnetic/TestEm12/.README.txt index e5f8293fb7..c6612f7870 100644 --- a/examples/extended/electromagnetic/TestEm12/.README.txt +++ b/examples/extended/electromagnetic/TestEm12/.README.txt @@ -110,6 +110,15 @@ Idle> type your commands Idle> exit \endverbatim + Macros provided in this example: + - berger.mac: e- (100 keV) on water + - dna.mac: e- (1 keV) on water. DNA physics list + - run01.mac: e- (4 MeV) on water. Step max from histos 1 and 8 + - run02.mac: e- (4 MeV) on water. Step max from geometry + + Macros to be run interactively: + - vis.mac: To activate visualization + \section TestEm12_s6 TRACKING and STEP MAX TestDm12 computes the total energy deposited along the trajectory of diff --git a/examples/extended/electromagnetic/TestEm12/CMakeLists.txt b/examples/extended/electromagnetic/TestEm12/CMakeLists.txt index fb4ce511b7..2e522763b3 100644 --- a/examples/extended/electromagnetic/TestEm12/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm12/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm12) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm12/History b/examples/extended/electromagnetic/TestEm12/History index 604795d58d..7cc4534b3a 100644 --- a/examples/extended/electromagnetic/TestEm12/History +++ b/examples/extended/electromagnetic/TestEm12/History @@ -13,6 +13,9 @@ track of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- + +27-10-20 mma (testem12-V10-06-00) +- add macros description in Readme 09-09-18 SI (testem12-V10-04-04) - updated dna.mac diff --git a/examples/extended/electromagnetic/TestEm12/README b/examples/extended/electromagnetic/TestEm12/README index d365f8e694..ff715573a5 100644 --- a/examples/extended/electromagnetic/TestEm12/README +++ b/examples/extended/electromagnetic/TestEm12/README @@ -107,6 +107,15 @@ .... Idle> exit + Macros provided in this example: + - berger.mac: e- (100 keV) on water + - dna.mac: e- (1 keV) on water. DNA physics list + - run01.mac: e- (4 MeV) on water. Step max from histos 1 and 8 + - run02.mac: e- (4 MeV) on water. Step max from geometry + + Macros to be run interactively: + - vis.mac: To activate visualization + 6- TRACKING and STEP MAX TestDm12 computes the total energy deposited along the trajectory of diff --git a/examples/extended/electromagnetic/TestEm12/TestEm12.in b/examples/extended/electromagnetic/TestEm12/TestEm12.in index 10653aa2dd..6a9bfdad75 100644 --- a/examples/extended/electromagnetic/TestEm12/TestEm12.in +++ b/examples/extended/electromagnetic/TestEm12/TestEm12.in @@ -1,9 +1,11 @@ # +# Macro file for TestEm12 +# # limit the step size from histos 1 and 8 # -/control/verbose 2 /control/cout/ignoreThreadsExcept 0 -/run/verbose 2 +/control/verbose 2 +/run/verbose 1 # /testem/det/setMat G4_WATER /testem/det/setRadius 3 cm @@ -27,5 +29,4 @@ ###/analysis/h1/set 8 120 0. 1.2 none #normalized edep profile # /run/printProgress 1000 -# /run/beamOn 10000 diff --git a/examples/extended/electromagnetic/TestEm12/TestEm12.out b/examples/extended/electromagnetic/TestEm12/TestEm12.out index 36cd7a4ebd..05039ffaea 100644 --- a/examples/extended/electromagnetic/TestEm12/TestEm12.out +++ b/examples/extended/electromagnetic/TestEm12/TestEm12.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,8 +12,7 @@ WWW : http://geant4.org/ ************************************************************** -/control/cout/ignoreThreadsExcept 0 -/run/verbose 2 +/run/verbose 1 # /testem/det/setMat G4_WATER /testem/det/setRadius 3 cm @@ -23,7 +22,6 @@ PhysicsList::AddPhysicsList: # /run/initialize -userDetector->Construct() start. --------------------------------------------------------- ---> The Absorber is a sphere of 3 cm radius of G4_WATER divided in 1 slices of 3 cm @@ -44,10 +42,6 @@ userDetector->Construct() start. --------------------------------------------------------- -Absorber is registered to the default region. -physicsList->Construct() start. -physicsList->CheckParticleList() start. -physicsList->setCut() start. # /run/setCut 10 um # @@ -63,38 +57,19 @@ physicsList->setCut() start. ###/analysis/h1/set 8 120 0. 1.2 none #normalized edep profile # /run/printProgress 1000 -# /run/beamOn 10000 -Region -- -- appears in world volume - This region is in the mass world. - Root logical volume(s) : Absorber - Pointers : G4VUserRegionInformation[0], G4UserLimits[0], G4FastSimulationManager[0], G4UserSteppingAction[0] - Materials : G4_WATER - Production cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - -Region -- -- is not associated to any world. - Root logical volume(s) : - Pointers : G4VUserRegionInformation[0], G4UserLimits[0], G4FastSimulationManager[0], G4UserSteppingAction[0] - Materials : - Production cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - ========= Table of registered couples ============================ Index : 0 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 14.1795 keV e+ 13.7742 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 14.0874 keV e+ 14.0874 keV proton 1 keV Region(s) which use this couple : DefaultRegionForTheWorld ================================================================== -Start closing geometry. -G4GeometryManager::ReportVoxelStats -- Voxel Statistics - - Total memory consumed for geometry optimisation: 0 kByte - Total CPU time elapsed for geometry optimisation: 0 seconds ### Run 0 starts. --------- Ranecu engine status --------- @@ -120,7 +95,9 @@ Number of bins per decade of a table 7 Verbose level 0 Verbose level for worker thread 0 Bremsstrahlung energy threshold above which - primary is added to the list of secondary 100 TeV + primary e+- is added to the list of secondary 100 TeV +Bremsstrahlung energy threshold above which primary + muon/hadron is added to the list of secondary 100 TeV Lowest triplet kinetic energy 1 MeV Enable sampling of gamma linear polarisation 0 5D gamma conversion model type 0 @@ -166,6 +143,7 @@ Factor used for dynamic computation of angular Fixed angular limit between single and multiple scattering 3.1416 rad Upper energy limit for e+- multiple scattering 100 MeV +Type of electron single scattering model 0 Type of nuclear form-factor 1 Screening factor 1 ======================================================================= @@ -182,50 +160,28 @@ Screening factor 1 Run terminated. Run Summary Number of events processed : 10000 - User=1.790000s Real=1.822103s Sys=0.010000s + User=0.770000s Real=0.834812s Sys=0.000000s ======================== run summary ===================== The run is 10000 e- of 4.00 MeV through 3.00 cm of G4_WATER (density: 1.00 g/cm3 ) - Total Energy deposited = 3.939 MeV +- 238.600 keV + Total Energy deposited = 3.943 MeV +- 223.028 keV - Track length of primary track = 2.043 cm +- 2.890 mm + Track length of primary track = 2.047 cm +- 2.831 mm Range from EmCalculator = 2.045 cm (from full dE/dx) - Projected range = 1.323 cm +- 3.594 mm + Projected range = 1.325 cm +- 3.580 mm - Nb of steps of primary track = 16.17 +- 2.98 Step size= 1.300 mm +- 277.785 um + Nb of steps of primary track = 16.29 +- 3.04 Step size= 1.295 mm +- 282.026 um --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 297159154, 1690055230 + Current couple of seeds = 2062153558, 1360634937 ---------------------------------------- G4 kernel has come to Quit state. -UserDetectorConstruction deleted. -UserPhysicsList deleted. -UserActionInitialization deleted. -UserRunAction deleted. -UserPrimaryGenerator deleted. -RunManager is deleting RunManagerKernel. -EventManager deleted. -Units table cleared. -TransportationManager deleted. -Total navigation history collections cleaned: 6 ================== Deleting memory pools =================== -Pool ID '20G4NavigationLevelRep', size : 0.00673 MB -Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB -Pool ID '7G4Event', size : 0.000961 MB -Pool ID '15G4PrimaryVertex', size : 0.000961 MB -Pool ID '17G4PrimaryParticle', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.00481 MB -Pool ID '7G4Track', size : 0.00865 MB -Pool ID '18G4TouchableHistory', size : 0.000961 MB -Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Number of memory pools allocated: 9 of which, static: 0 -Dynamic pools deleted: 9 / Total memory freed: 0.026 MB +Dynamic pools deleted: 9 / Total memory freed: 0.027 MB ============================================================ -G4Allocator objects are deleted. -UImanager deleted. -StateManager deleted. RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/electromagnetic/TestEm12/berger.mac b/examples/extended/electromagnetic/TestEm12/berger.mac index 503f8a1e23..ecdeabe2ca 100644 --- a/examples/extended/electromagnetic/TestEm12/berger.mac +++ b/examples/extended/electromagnetic/TestEm12/berger.mac @@ -4,8 +4,9 @@ # L. Ferrer et al. Cancer Bio. Rad. 22-1 (2007) # Mainegra et al. Med. Phys. 32, 685-699 (2005) # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setMat G4_WATER /testem/det/setRadius 3 cm @@ -21,9 +22,8 @@ /gun/particle e- /gun/energy 100 keV # -/analysis/setFileName berger/100keV_local -/analysis/h1/set 8 120 0. 1.2 none #normalized edep profile +/analysis/setFileName 100keV_local +/analysis/h1/set 8 120 0.0 1.2 none #normalized edep profile # /run/printProgress 10000 -# /run/beamOn 160000 diff --git a/examples/extended/electromagnetic/TestEm12/dna.mac b/examples/extended/electromagnetic/TestEm12/dna.mac index 84902e67a1..8ae92dbf23 100644 --- a/examples/extended/electromagnetic/TestEm12/dna.mac +++ b/examples/extended/electromagnetic/TestEm12/dna.mac @@ -1,4 +1,9 @@ # +# Macro file for TestEm12 +# +# limit the step size from histos 1 and 8 +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 /run/verbose 2 # @@ -21,5 +26,4 @@ /testem/applyAutomaticStepMax true # /run/printProgress 1000 -# /run/beamOn 5000 diff --git a/examples/extended/electromagnetic/TestEm12/run01.mac b/examples/extended/electromagnetic/TestEm12/run01.mac index 304ae67ecb..506766006d 100644 --- a/examples/extended/electromagnetic/TestEm12/run01.mac +++ b/examples/extended/electromagnetic/TestEm12/run01.mac @@ -1,8 +1,11 @@ # +# Macro file for TestEm12 +# # limit the step size from histos 1 and 8 # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setMat G4_WATER /testem/det/setRadius 3 cm @@ -24,5 +27,4 @@ /testem/applyAutomaticStepMax true # /run/printProgress 2000 -# /run/beamOn 20000 diff --git a/examples/extended/electromagnetic/TestEm12/run02.mac b/examples/extended/electromagnetic/TestEm12/run02.mac index 84fc299d1a..7d31f57e79 100644 --- a/examples/extended/electromagnetic/TestEm12/run02.mac +++ b/examples/extended/electromagnetic/TestEm12/run02.mac @@ -1,8 +1,11 @@ # +# Macro file for TestEm12 +# # limit the step size by geometry # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setMat G4_WATER /testem/det/setRadius 3 cm @@ -25,5 +28,4 @@ /testem/applyAutomaticStepMax false # /run/printProgress 2000 -# /run/beamOn 20000 diff --git a/examples/extended/electromagnetic/TestEm13/CMakeLists.txt b/examples/extended/electromagnetic/TestEm13/CMakeLists.txt index e26fec631c..e2002bbedc 100644 --- a/examples/extended/electromagnetic/TestEm13/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm13/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm13) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm13/TestEm13.out b/examples/extended/electromagnetic/TestEm13/TestEm13.out index 385e4d2924..1743fd5070 100644 --- a/examples/extended/electromagnetic/TestEm13/TestEm13.out +++ b/examples/extended/electromagnetic/TestEm13/TestEm13.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -31,7 +31,9 @@ Number of bins per decade of a table 10 Verbose level 0 Verbose level for worker thread 0 Bremsstrahlung energy threshold above which - primary is added to the list of secondary 100 TeV + primary e+- is added to the list of secondary 100 TeV +Bremsstrahlung energy threshold above which primary + muon/hadron is added to the list of secondary 100 TeV Lowest triplet kinetic energy 1 MeV Enable sampling of gamma linear polarisation 0 5D gamma conversion model type 0 @@ -77,6 +79,7 @@ Factor used for dynamic computation of angular Fixed angular limit between single and multiple scattering 3.1416 rad Upper energy limit for e+- multiple scattering 100 MeV +Type of electron single scattering model 0 Type of nuclear form-factor 1 Screening factor 1 ======================================================================= @@ -143,7 +146,7 @@ Region -- -- is not associated to any world. Index : 0 used in the geometry : Yes Material : Water Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.94062 keV e- 350.631 keV e+ 340.065 keV proton 100 keV + Energy thresholds : gamma 2.93991 keV e- 349.408 keV e+ 341.455 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -173,15 +176,15 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Run terminated. Run Summary Number of events processed : 1000000 - User=5.640000s Real=5.665050s Sys=0.010000s + User=2.120000s Real=2.315627s Sys=0.000000s ======================== run summary ====================== The run is: 1000000 gamma of 100 keV through 1 cm of Water (density: 1 g/cm3 ) - Process calls frequency ---> Transportation = 848094 compt = 149478 phot = 2428 + Process calls frequency ---> Transportation = 848096 compt = 149476 phot = 2428 - Nb of incident particles unaltered after 1 cm of Water : 848094 over 1000000 incident particles. Ratio = 84.809 % + Nb of incident particles unaltered after 1 cm of Water : 848096 over 1000000 incident particles. Ratio = 84.81 % ---> CrossSection per volume: 0.16476 cm^-1 CrossSection per mass: 16.476 mm2/g Verification from G4EmCalculator: @@ -190,7 +193,7 @@ Run Summary --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1862515941, 314949652 + Current couple of seeds = 1086040262, 1913236415 ---------------------------------------- # /gun/particle e- @@ -215,7 +218,7 @@ Region -- -- is not associated to any world. Index : 0 used in the geometry : Yes Material : Water Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.94062 keV e- 350.631 keV e+ 340.065 keV proton 100 keV + Energy thresholds : gamma 2.93991 keV e- 349.408 keV e+ 341.455 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -225,7 +228,7 @@ Index : 0 used in the geometry : Yes --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1862515941, 314949652 + Current couple of seeds = 1086040262, 1913236415 ---------------------------------------- --> Event 0 starts. --> Event 100000 starts. @@ -240,24 +243,24 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1000000 - User=7.560000s Real=7.629508s Sys=0.000000s + User=2.300000s Real=2.517891s Sys=0.000000s ======================== run summary ====================== The run is: 1000000 e- of 100 MeV through 1 cm of Water (density: 1 g/cm3 ) - Process calls frequency ---> Transportation = 537943 eBrem = 281261 eIoni = 180796 + Process calls frequency ---> Transportation = 537515 eBrem = 281135 eIoni = 181350 - Nb of incident particles unaltered after 1 cm of Water : 537943 over 1000000 incident particles. Ratio = 53.794 % - ---> CrossSection per volume: 0.62 cm^-1 CrossSection per mass: 62 mm2/g + Nb of incident particles unaltered after 1 cm of Water : 537515 over 1000000 incident particles. Ratio = 53.751 % + ---> CrossSection per volume: 0.6208 cm^-1 CrossSection per mass: 62.08 mm2/g Verification from G4EmCalculator: - eBrem= 37.785 mm2/g eIoni= 24.252 mm2/g total= 62.037 mm2/g - Expected ratio of transmitted particles= 53.774 % + eBrem= 37.788 mm2/g eIoni= 24.337 mm2/g total= 62.125 mm2/g + Expected ratio of transmitted particles= 53.727 % --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 577334247, 211065605 + Current couple of seeds = 685999699, 1687796440 ---------------------------------------- G4 kernel has come to Quit state. UserDetectorConstruction deleted. diff --git a/examples/extended/electromagnetic/TestEm14/CMakeLists.txt b/examples/extended/electromagnetic/TestEm14/CMakeLists.txt index c58cc2c52d..ae59babc92 100644 --- a/examples/extended/electromagnetic/TestEm14/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm14/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm14) #---------------------------------------------------------------------------- @@ -40,7 +43,7 @@ target_link_libraries(TestEm14 ${Geant4_LIBRARIES} ${HBOOK_LIBRARIES}) # relies on these scripts being in the current working directory. # set(TestEm14_SCRIPTS - anni.mac compton.mac conv.mac convtomu.mac electron.mac gamma.mac photoelec.mac proton.mac TestEm14.in TestEm14.out vis.mac + anni.mac compton.mac conv.mac convtomu.mac electron.mac gamma.mac photoelec.mac proton.mac atomicDeexcitation.mac TestEm14.in TestEm14.out vis.mac ) foreach(_script ${TestEm14_SCRIPTS}) diff --git a/examples/extended/electromagnetic/TestEm14/History b/examples/extended/electromagnetic/TestEm14/History index 42235d1a5a..e18c71147f 100644 --- a/examples/extended/electromagnetic/TestEm14/History +++ b/examples/extended/electromagnetic/TestEm14/History @@ -14,6 +14,15 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +03-11-20 mma (testem14-V10-06-02) +- add a comment in atomicDeexcitation.mac + +12-10-20 mma (testem14-V10-06-01) +- update atomicDeexcitation.mac + +06-10-20 mma (testem14-V10-06-00) +- add atomicDeexcitation.mac + 26-11-19 I. Hrivnacova (testem14-V10-05-01) - Fixed Doxygen warnings diff --git a/examples/extended/electromagnetic/TestEm14/TestEm14.out b/examples/extended/electromagnetic/TestEm14/TestEm14.out index 0b3f65dea7..4d67265054 100644 --- a/examples/extended/electromagnetic/TestEm14/TestEm14.out +++ b/examples/extended/electromagnetic/TestEm14/TestEm14.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -31,7 +31,9 @@ Number of bins per decade of a table 10 Verbose level 0 Verbose level for worker thread 0 Bremsstrahlung energy threshold above which - primary is added to the list of secondary 100 TeV + primary e+- is added to the list of secondary 100 TeV +Bremsstrahlung energy threshold above which primary + muon/hadron is added to the list of secondary 100 TeV Lowest triplet kinetic energy 1 MeV Enable sampling of gamma linear polarisation 0 5D gamma conversion model type 0 @@ -77,6 +79,7 @@ Factor used for dynamic computation of angular Fixed angular limit between single and multiple scattering 3.1416 rad Upper energy limit for e+- multiple scattering 100 MeV +Type of electron single scattering model 0 Type of nuclear form-factor 1 Screening factor 1 ======================================================================= @@ -143,7 +146,7 @@ Region -- -- is not associated to any world. Index : 0 used in the geometry : Yes Material : Water Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.94062 keV e- 350.631 keV e+ 340.065 keV proton 100 keV + Energy thresholds : gamma 2.93991 keV e- 349.408 keV e+ 341.455 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -173,26 +176,26 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Run terminated. Run Summary Number of events processed : 1000000 - User=5.750000s Real=5.785304s Sys=0.010000s + User=3.770000s Real=3.872863s Sys=0.000000s ======================== run summary ====================== The run is: 1000000 gamma of 100 keV through 100 m of Water (density: 1 g/cm3 ) - Process calls frequency ---> compt = 983651 phot = 16349 + Process calls frequency ---> compt = 983656 phot = 16344 - MeanFreePath: 6.0662 cm +- 6.0666 cm massic: 6.0662 g/cm2 + MeanFreePath: 6.0662 cm +- 6.0668 cm massic: 6.0662 g/cm2 CrossSection: 0.16485 cm^-1 massic: 16.485 mm2/g mean energy of charged secondaries: 15.197 keV - ---> mass_energy_transfer coef: 2.5053 mm2/g + ---> mass_energy_transfer coef: 2.5052 mm2/g Verification : crossSections from G4EmCalculator compt= 16.23 mm2/g phot= 268.53 um2/mg total= 16.499 mm2/g --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1063437675, 1656850928 + Current couple of seeds = 1937641209, 57071983 ---------------------------------------- # /gun/particle e- @@ -218,7 +221,7 @@ Region -- -- is not associated to any world. Index : 0 used in the geometry : Yes Material : Water Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.94062 keV e- 350.631 keV e+ 340.065 keV proton 100 keV + Energy thresholds : gamma 2.93991 keV e- 349.408 keV e+ 341.455 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -228,7 +231,7 @@ Index : 0 used in the geometry : Yes --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1063437675, 1656850928 + Current couple of seeds = 1937641209, 57071983 ---------------------------------------- --> Event 0 starts. --> Event 100000 starts. @@ -243,26 +246,26 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1000000 - User=6.930000s Real=6.987780s Sys=0.000000s + User=2.920000s Real=2.958576s Sys=0.000000s ======================== run summary ====================== The run is: 1000000 e- of 100 MeV through 100 m of Water (density: 1 g/cm3 ) - Process calls frequency ---> eBrem = 609357 eIoni = 390643 + Process calls frequency ---> eBrem = 608555 eIoni = 391445 - MeanFreePath: 1.6123 cm +- 1.6126 cm massic: 1.6123 g/cm2 - CrossSection: 0.62024 cm^-1 massic: 62.024 mm2/g + MeanFreePath: 1.6102 cm +- 1.6103 cm massic: 1.6102 g/cm2 + CrossSection: 0.62103 cm^-1 massic: 62.103 mm2/g - mean energy of charged secondaries: 744.15 keV - ---> mass_energy_transfer coef: 461.55 um2/mg + mean energy of charged secondaries: 743.85 keV + ---> mass_energy_transfer coef: 461.95 um2/mg Verification : crossSections from G4EmCalculator - eBrem= 37.785 mm2/g eIoni= 24.252 mm2/g total= 62.037 mm2/g + eBrem= 37.788 mm2/g eIoni= 24.337 mm2/g total= 62.125 mm2/g --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 819625488, 312387976 + Current couple of seeds = 419401041, 1685305101 ---------------------------------------- G4 kernel has come to Quit state. UserDetectorConstruction deleted. diff --git a/examples/extended/electromagnetic/TestEm14/atomicDeexcitation.mac b/examples/extended/electromagnetic/TestEm14/atomicDeexcitation.mac new file mode 100644 index 0000000000..8749df6b3e --- /dev/null +++ b/examples/extended/electromagnetic/TestEm14/atomicDeexcitation.mac @@ -0,0 +1,41 @@ +# +# Macro file for "TestEm14.cc" +# +# to plot atomic deexcitation following an hole +# see equivalent macro in rdecay01 +# see S.Bakr et al. Geant4 collaboration meeting 2020 +# +/control/verbose 1 +/run/verbose 1 +# +/testem/det/setMat G4_Te +/testem/phys/addPhysics standard +/run/setCut 0.1 um +# +/run/initialize +# +# create an hole by photoelectric interaction +# +/process/inactivate compt +/process/inactivate conv +# +# to (de)activate atomic deexcitation +# play with the 2 following commands +# +/process/em/augerCascade true +/process/em/deexcitationIgnoreCut true +# +/gun/particle gamma +/gun/energy 80 keV +# +### to print few events +###/tracking/verbose 2 +###/run/beamOn 3 +###/tracking/verbose 0 +# +/analysis/setFileName atomicDeexc +/analysis/h1/set 3 50000 0.001 50. keV #energy of e- +/analysis/h1/set 5 50000 0.001 50. keV #energy of gamma +# +/run/printProgress 100000 +/run/beamOn 1000000 diff --git a/examples/extended/electromagnetic/TestEm15/CMakeLists.txt b/examples/extended/electromagnetic/TestEm15/CMakeLists.txt index 594b7a62d6..f47804c44c 100644 --- a/examples/extended/electromagnetic/TestEm15/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm15/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm15) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm15/TestEm15.out b/examples/extended/electromagnetic/TestEm15/TestEm15.out index 109bacc4e8..4086f92994 100644 --- a/examples/extended/electromagnetic/TestEm15/TestEm15.out +++ b/examples/extended/electromagnetic/TestEm15/TestEm15.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -189,7 +189,7 @@ ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -242,9 +242,9 @@ conv: for gamma SubType=14 BuildTable=1 BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -262,9 +262,9 @@ eBrem: for e- SubType=3 eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -286,9 +286,9 @@ annihil: for e+, integral:1 SubType=5 BuildTable=0 eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -299,9 +299,9 @@ hIoni: for proton SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -313,9 +313,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -326,9 +326,9 @@ hIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -339,9 +339,9 @@ hIoni: for anti_proton SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -352,9 +352,9 @@ hIoni: for kaon+ SubType=2 BetheBloch : Emin=1.05231 MeV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -365,9 +365,9 @@ hIoni: for kaon- SubType=2 BetheBloch : Emin=1.05231 MeV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -382,19 +382,19 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -409,19 +409,19 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -432,9 +432,9 @@ hIoni: for pi+ SubType=2 BetheBloch : Emin=297.505 keV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -469,7 +469,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Water Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.92994 keV e- 349.731 keV e+ 342.774 keV proton 100 keV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -490,14 +490,14 @@ N=17 V[N]={906770732717044781, 629165745432651234, 1235682547346241386, 68420008 Run terminated. Run Summary Number of events processed : 10000 - User=0.070000s Real=0.066523s Sys=0.000000s + User=0.040000s Real=0.039196s Sys=0.000000s The run consists of 10000 e- of 5 MeV through 100 m of Water (density: 1 g/cm3 ) Process calls frequency ---> msc = 10000 - truePathLength : 2.7539 cm +- 9.7431 nm - geomPathLength : 2.0692 cm +- 7.6962 nm + truePathLength : 2.7529 cm +- 14.253 nm + geomPathLength : 2.0688 cm +- 12.537 nm lateralDisplac : 0 fm +- 0 fm Psi : 0 mrad +- 0 mrad (0 deg +- 0 deg) @@ -506,11 +506,11 @@ Run Summary Verification from G4EmCalculator. - transport mean free path : 8.3229 cm - range from restrict dE/dx: 2.7539 cm + transport mean free path : 8.3246 cm + range from restrict dE/dx: 2.7529 cm ---> effective facRange : 1 - compute theta0 from Highland : 620.35 mrad (35.543 deg) + compute theta0 from Highland : 620.23 mrad (35.536 deg) ------- MixMaxRng engine status ------- Current state vector is: @@ -546,7 +546,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Water Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.92994 keV e- 349.731 keV e+ 342.774 keV proton 100 keV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -562,19 +562,19 @@ N=17 V[N]={906770732717044781, 629165745432651234, 1235682547346241386, 68420008 Run terminated. Run Summary Number of events processed : 10000 - User=0.080000s Real=0.086798s Sys=0.000000s + User=0.050000s Real=0.057450s Sys=0.000000s The run consists of 10000 e- of 100 keV through 100 m of Water (density: 1 g/cm3 ) Process calls frequency ---> msc = 10000 - truePathLength : 6.1493 um +- 591.2 nm - geomPathLength : 6.0265 um +- 567.7 nm - lateralDisplac : 891.67 nm +- 128 nm + truePathLength : 6.1496 um +- 591.23 nm + geomPathLength : 6.0268 um +- 567.72 nm + lateralDisplac : 891.71 nm +- 128.01 nm Psi : 146.21 mrad +- 7.2125 mrad (8.377 deg +- 0.41325 deg) Theta_plane : 236.21 mrad (13.534 deg) - phi correlation: 0.17482 +- 0.13949 (std::cos(phi_pos - phi_dir)) + phi correlation: 0.17482 +- 0.1395 (std::cos(phi_pos - phi_dir)) Verification from G4EmCalculator. diff --git a/examples/extended/electromagnetic/TestEm16/CMakeLists.txt b/examples/extended/electromagnetic/TestEm16/CMakeLists.txt index 43cc1d5c0b..a754a88bde 100644 --- a/examples/extended/electromagnetic/TestEm16/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm16/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm16) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm16/TestEm16.out b/examples/extended/electromagnetic/TestEm16/TestEm16.out index c270ce81ac..b86828080e 100644 --- a/examples/extended/electromagnetic/TestEm16/TestEm16.out +++ b/examples/extended/electromagnetic/TestEm16/TestEm16.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -43,7 +43,7 @@ ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: Vacuum density: 0.000 kg/m3 RadL: 25045177733.504 km Nucl.Int.Length: 55623326898.435 km + Material: Vacuum density: 0.000 mg/cm3 RadL: 25045177323.588 km Nucl.Int.Length: 55623331308.548 km Imean: 82.000 eV temperature: 296.15 K pressure: 0.00 atm ---> Element: N (N) Z = 7.0 N = 14 A = 14.007 g/mole @@ -117,9 +117,9 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -140,9 +140,9 @@ SynRad: Incoherent Synchrotron Radiation good description for long magnets at all energies msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -164,9 +164,9 @@ annihil: for e+, integral:1 SubType=5 BuildTable=0 eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -180,19 +180,19 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -207,19 +207,19 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -234,14 +234,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi ========= Table of registered couples ============================ @@ -270,13 +270,13 @@ G4SynchrotronRadiation::GetRandomEnergySR : Run terminated. Run Summary Number of events processed : 100 - User=0.350000s Real=0.352616s Sys=0.000000s + User=0.200000s Real=0.238092s Sys=0.000000s Summary for synchrotron radiation : Number of photons = 65086 Emean = 20.39 +/- 0.1444 keV E_rms = 36.83 keV Energy Max / Mean = 27.54 - MeanFreePath = 16.06 cm + MeanFreePath = 16.07 cm ------- MixMaxRng engine status ------- Current state vector is: diff --git a/examples/extended/electromagnetic/TestEm17/CMakeLists.txt b/examples/extended/electromagnetic/TestEm17/CMakeLists.txt index e80ffc109e..9e61cb7ed2 100644 --- a/examples/extended/electromagnetic/TestEm17/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm17/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm17) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm17/TestEm17.out b/examples/extended/electromagnetic/TestEm17/TestEm17.out index 078de737fd..220ba128c6 100644 --- a/examples/extended/electromagnetic/TestEm17/TestEm17.out +++ b/examples/extended/electromagnetic/TestEm17/TestEm17.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,7 +15,7 @@ ***** Table : Nb of materials = 7 ***** - Material: galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -87,7 +87,7 @@ Imean: 488.000 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: Sn (Sn) Z = 50.0 N = 119 A = 118.710 g/mole - ---> Isotope: Sn112 Z = 50 N = 112 A = 111.90 g/mole abundance: 0.970 % + ---> Isotope: Sn112 Z = 50 N = 112 A = 111.91 g/mole abundance: 0.970 % ---> Isotope: Sn114 Z = 50 N = 114 A = 113.90 g/mole abundance: 0.660 % ---> Isotope: Sn115 Z = 50 N = 115 A = 114.90 g/mole abundance: 0.340 % ---> Isotope: Sn116 Z = 50 N = 116 A = 115.90 g/mole abundance: 14.540 % @@ -157,7 +157,7 @@ Region -- -- is not associated to any world. Index : 0 used in the geometry : Yes Material : Iron Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 20.7122 keV e- 1.28245 MeV e+ 1.21554 MeV proton 100 keV + Energy thresholds : gamma 20.6438 keV e- 1.29592 MeV e+ 1.21169 MeV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -189,14 +189,14 @@ N=17 V[N]={906770732717044781, 629165745432651234, 1235682547346241386, 68420008 Run terminated. Run Summary Number of events processed : 10000 - User=3.640000s Real=3.666902s Sys=0.010000s + User=1.530000s Real=1.635862s Sys=0.010000s The run consists of 10000 mu+ of 10 TeV through 1 m of Iron (density: 7.9 g/cm3 ) - Number of process calls ---> CoulombScat : 5627 muIoni : 468416 muPairProd : 64240 muBrems : 671 + Number of process calls ---> CoulombScat : 5678 muIoni : 464109 muPairProd : 63342 muBrems : 681 - Simulation: total CrossSection = 0.53895 /cm MeanFreePath = 1.8554 cm massicCrossSection = 0.068482 cm2/g - Theory: total CrossSection = 0.53155 /cm MeanFreePath = 1.8813 cm massicCrossSection = 0.067542 cm2/g + Simulation: total CrossSection = 0.53381 /cm MeanFreePath = 1.8733 cm massicCrossSection = 0.067828 cm2/g + Theory: total CrossSection = 0.52677 /cm MeanFreePath = 1.8984 cm massicCrossSection = 0.066934 cm2/g # /gun/particle pi+ /run/beamOn 10000 @@ -219,7 +219,7 @@ Region -- -- is not associated to any world. Index : 0 used in the geometry : Yes Material : Iron Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 20.7122 keV e- 1.28245 MeV e+ 1.21554 MeV proton 100 keV + Energy thresholds : gamma 20.6438 keV e- 1.29592 MeV e+ 1.21169 MeV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -231,7 +231,7 @@ Index : 0 used in the geometry : Yes ------- MixMaxRng engine status ------- Current state vector is: mixmax state, file version 1.0 -N=17 V[N]={1232246224341559076, 502994183317362875, 827325684979959417, 1720626337570558479, 1497012769436038540, 8037863595463596, 1888147439567773511, 974628579536266092, 1560956143404819913, 1711028131601079341, 799316675237868649, 1523084131378296775, 630030747462457124, 1670125680287411096, 46032566829546818, 500464967571540463, 1478391931196980061} counter= 9sumtot= 123705983605430218 +N=17 V[N]={390989001462590597, 2165133204863311347, 854974819548217897, 2126485118342897292, 1043827090844452939, 1153945593924229687, 1492456639939297216, 170725670497924326, 271262107949827517, 605115632054846954, 986185566339304190, 439176016835494735, 879520380644875766, 793553958454628956, 1863967334887151092, 1831154685294334696, 265599519600268147} counter= 12sumtot= 1193171276987795697 --------------------------------------- --> Event 0 starts. --> Event 1000 starts. @@ -246,13 +246,13 @@ N=17 V[N]={1232246224341559076, 502994183317362875, 827325684979959417, 17206263 Run terminated. Run Summary Number of events processed : 10000 - User=3.520000s Real=3.563774s Sys=0.000000s + User=1.330000s Real=1.421897s Sys=0.000000s The run consists of 10000 pi+ of 10 TeV through 1 m of Iron (density: 7.9 g/cm3 ) - Number of process calls ---> hIoni : 431759 hPairProd : 59692 CoulombScat : 5632 hBrems : 313 + Number of process calls ---> hIoni : 428839 hPairProd : 59634 CoulombScat : 5677 hBrems : 339 - Simulation: total CrossSection = 0.4974 /cm MeanFreePath = 2.0105 cm massicCrossSection = 0.063202 cm2/g + Simulation: total CrossSection = 0.49449 /cm MeanFreePath = 2.0223 cm massicCrossSection = 0.062832 cm2/g # /gun/particle proton /run/beamOn 10000 @@ -275,7 +275,7 @@ Region -- -- is not associated to any world. Index : 0 used in the geometry : Yes Material : Iron Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 20.7122 keV e- 1.28245 MeV e+ 1.21554 MeV proton 100 keV + Energy thresholds : gamma 20.6438 keV e- 1.29592 MeV e+ 1.21169 MeV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -287,7 +287,7 @@ Index : 0 used in the geometry : Yes ------- MixMaxRng engine status ------- Current state vector is: mixmax state, file version 1.0 -N=17 V[N]={1239851013584323680, 1884047011881242256, 1962019013740758705, 529750077334794390, 1730160679914441292, 936631940651041969, 217936981083359606, 76083804081386717, 1434765033052734404, 62677456950250436, 2136979579980948469, 664220050613025748, 961100655912898099, 2103494065683219891, 1748134006090445015, 1431415384565954, 1719132720252111699} counter= 12sumtot= 961671432481996722 +N=17 V[N]={189834841800119698, 933698143446158285, 303366963357487890, 1657727968765643003, 1931848314084735928, 528222828093349202, 2266763837204729526, 844778916719660478, 1553452260019614839, 701305615943610690, 1877080332352109664, 482776174036698067, 1692678699103286550, 1672171112634157092, 1348922200906541837, 2269046978341506103, 1319329630900893632} counter= 17sumtot= 820417734787056925 --------------------------------------- --> Event 0 starts. --> Event 1000 starts. @@ -302,13 +302,13 @@ N=17 V[N]={1239851013584323680, 1884047011881242256, 1962019013740758705, 529750 Run terminated. Run Summary Number of events processed : 10000 - User=2.480000s Real=2.485581s Sys=0.000000s + User=1.240000s Real=1.400102s Sys=0.000000s The run consists of 10000 proton of 10 TeV through 1 m of Iron (density: 7.9 g/cm3 ) - Number of process calls ---> hIoni : 431613 CoulombScat : 5617 hPairProd : 33976 hBrems : 12 msc : 1 + Number of process calls ---> hIoni : 427382 hPairProd : 33807 CoulombScat : 5516 hBrems : 10 - Simulation: total CrossSection = 0.47122 /cm MeanFreePath = 2.1222 cm massicCrossSection = 0.059875 cm2/g + Simulation: total CrossSection = 0.46671 /cm MeanFreePath = 2.1426 cm massicCrossSection = 0.059303 cm2/g # G4 kernel has come to Quit state. UserDetectorConstruction deleted. @@ -326,12 +326,12 @@ Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB Pool ID '7G4Event', size : 0.000961 MB Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.0154 MB -Pool ID '7G4Track', size : 0.0308 MB +Pool ID '17G4DynamicParticle', size : 0.0163 MB +Pool ID '7G4Track', size : 0.0327 MB Pool ID '18G4TouchableHistory', size : 0.000961 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Number of memory pools allocated: 9 of which, static: 0 -Dynamic pools deleted: 9 / Total memory freed: 0.059 MB +Dynamic pools deleted: 9 / Total memory freed: 0.062 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/extended/electromagnetic/TestEm18/.README.txt b/examples/extended/electromagnetic/TestEm18/.README.txt index f38a1f0ae5..0715c7b247 100644 --- a/examples/extended/electromagnetic/TestEm18/.README.txt +++ b/examples/extended/electromagnetic/TestEm18/.README.txt @@ -83,7 +83,8 @@ It is possible to choose the format of the histogram file : root (default), xml, csv, by using namespace in HistoManager.hh - + For convenience, few simple Root macros are provided : plotHisto.C pixe.C + It is also possible to print selected histograms on an ascii file: \verbatim /analysis/h1/sweAscii id @@ -118,5 +119,17 @@ Idle> type your commands .... Idle> exit \endverbatim + + Macros provided in this example: + - csda.mac: test independance of user step max + - edep.mac: track secondary particles and plot energy deposited + - electron.mac: e- (10 MeV) on 1 cm of water + - ion.mac: ion C12 (4 GeV) on 1 cm of water + - muon.mac: mu+ (1 TeV) on 1 m of water + - pixe.mac: proton (20 MeV) on 50 um of gold. Plot gamma pixe + - proton.mac: proton (1 GeV) on 10 cm of water + - plotHisto.C, pixe.C: Root macros + Macros to be run interactively: + - vis.mac: To activate visualization */ diff --git a/examples/extended/electromagnetic/TestEm18/CMakeLists.txt b/examples/extended/electromagnetic/TestEm18/CMakeLists.txt index f003e21685..710eb5d1d2 100644 --- a/examples/extended/electromagnetic/TestEm18/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm18/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm18) #---------------------------------------------------------------------------- @@ -41,7 +44,7 @@ target_link_libraries(TestEm18 ${Geant4_LIBRARIES} ) # set(TestEm18_SCRIPTS csda.mac edep.mac electron.mac ion.mac muon.mac pixe.mac proton.mac - TestEm18.in TestEm18.out vis.mac + TestEm18.in vis.mac plotHisto.C pixe.C ) foreach(_script ${TestEm18_SCRIPTS}) diff --git a/examples/extended/electromagnetic/TestEm18/History b/examples/extended/electromagnetic/TestEm18/History index a82effbe28..1bb9b4246b 100644 --- a/examples/extended/electromagnetic/TestEm18/History +++ b/examples/extended/electromagnetic/TestEm18/History @@ -14,6 +14,10 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +09-11-20 mma (testem18-V10-06-00) +- cleanup macros +- add macros description in Readme + 26-11-19 I. Hrivnacova (testem18-V10-05-00) - Fixed Doxygen warnings diff --git a/examples/extended/electromagnetic/TestEm18/README b/examples/extended/electromagnetic/TestEm18/README index 4ba0981760..9e943ec3c8 100644 --- a/examples/extended/electromagnetic/TestEm18/README +++ b/examples/extended/electromagnetic/TestEm18/README @@ -80,8 +80,8 @@ /analysis/setFileName name (default testem18) It is possible to choose the format of the histogram file : root (default), - xml, csv, by using namespace in HistoManager.hh - + xml, csv, by using namespace in HistoManager.hh + For convenience, few simple Root macros are provided : plotHisto.C pixe.C It is also possible to print selected histograms on an ascii file: /analysis/h1/setAscii id All selected histos will be written on a file name.ascii (default testem18) @@ -108,3 +108,16 @@ Idle> type your commands .... Idle> exit + + Macros provided in this example: + - csda.mac: test independance of user step max + - edep.mac: track secondary particles and plot energy deposited + - electron.mac: e- (10 MeV) on 1 cm of water + - ion.mac: ion C12 (4 GeV) on 1 cm of water + - muon.mac: mu+ (1 TeV) on 1 m of water + - pixe.mac: proton (20 MeV) on 50 um of gold. Plot gamma pixe + - proton.mac: proton (1 GeV) on 10 cm of water + - plotHisto.C, pixe.C: Root macros + + Macros to be run interactively: + - vis.mac: To activate visualization diff --git a/examples/extended/electromagnetic/TestEm18/TestEm18.in b/examples/extended/electromagnetic/TestEm18/TestEm18.in index 53ade10c8e..fedce9e302 100644 --- a/examples/extended/electromagnetic/TestEm18/TestEm18.in +++ b/examples/extended/electromagnetic/TestEm18/TestEm18.in @@ -1,8 +1,9 @@ # # macro file for TestEm18.cc # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setMat Water /testem/det/setSize 1 cm @@ -11,8 +12,10 @@ # /run/setCut 1 mm # +/process/em/verbose 0 +/process/em/printParameters +# /run/initialize -/process/list # /gun/particle e- /gun/energy 100 MeV diff --git a/examples/extended/electromagnetic/TestEm18/TestEm18.out b/examples/extended/electromagnetic/TestEm18/TestEm18.out index f957ae9227..674b71768e 100644 --- a/examples/extended/electromagnetic/TestEm18/TestEm18.out +++ b/examples/extended/electromagnetic/TestEm18/TestEm18.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -32,7 +32,9 @@ Number of bins per decade of a table 10 Verbose level 0 Verbose level for worker thread 0 Bremsstrahlung energy threshold above which - primary is added to the list of secondary 100 TeV + primary e+- is added to the list of secondary 100 TeV +Bremsstrahlung energy threshold above which primary + muon/hadron is added to the list of secondary 100 TeV Lowest triplet kinetic energy 1 MeV Enable sampling of gamma linear polarisation 0 5D gamma conversion model type 0 @@ -78,10 +80,11 @@ Factor used for dynamic computation of angular Fixed angular limit between single and multiple scattering 3.1416 rad Upper energy limit for e+- multiple scattering 100 MeV +Type of electron single scattering model 0 Type of nuclear form-factor 1 Screening factor 1 ======================================================================= -/run/verbose 2 +/run/verbose 1 # /testem/det/setMat Water /testem/det/setSize 1 cm @@ -91,8 +94,82 @@ Screening factor 1 # /run/setCut 1 mm # +/process/em/verbose 0 +/run/physicsModified +/process/em/printParameters +======================================================================= +====== Electromagnetic Physics Parameters ======== +======================================================================= +LPM effect enabled 1 +Spline of EM tables enabled 1 +Enable creation and use of sampling tables 0 +Apply cuts on all EM processes 0 +Use integral approach for tracking 1 +Use general process 0 +Enable linear polarisation for gamma 0 +Enable sampling of quantum entanglement 0 +X-section factor for integral approach 0.8 +Min kinetic energy for tables 10 eV +Max kinetic energy for tables 10 TeV +Number of bins in tables 120 +Number of bins per decade of a table 10 +Verbose level 0 +Verbose level for worker thread 0 +Bremsstrahlung energy threshold above which + primary e+- is added to the list of secondary 100 TeV +Bremsstrahlung energy threshold above which primary + muon/hadron is added to the list of secondary 100 TeV +Lowest triplet kinetic energy 1 MeV +Enable sampling of gamma linear polarisation 0 +5D gamma conversion model type 0 +5D gamma conversion model on isolated ion 0 +Livermore data directory livermore +======================================================================= +====== Ionisation Parameters ======== +======================================================================= +Step function for e+- (0.2, 1 mm) +Step function for muons/hadrons (0.2, 0.1 mm) +Step function for light ions (0.2, 0.1 mm) +Step function for general ions (0.2, 0.1 mm) +Lowest e+e- kinetic energy 1 keV +Lowest muon/hadron kinetic energy 1 keV +Fluctuations of dE/dx are enabled 1 +Use ICRU90 data 0 +Use built-in Birks satuaration 0 +Build CSDA range enabled 1 +Use cut as a final range enabled 0 +Enable angular generator interface 0 +Factor of cut reduction for sub-cutoff method 1 +Max kinetic energy for CSDA tables 10 TeV +Max kinetic energy for NIEL computation 0 eV +Linear loss limit 0.01 +Read data from file for e+e- pair production by mu 0 +======================================================================= +====== Multiple Scattering Parameters ======== +======================================================================= +Type of msc step limit algorithm for e+- 1 +Type of msc step limit algorithm for muons/hadrons 0 +Msc lateral displacement for e+- enabled 1 +Msc lateral displacement for muons and hadrons 0 +Urban msc model lateral displacement alg96 1 +Range factor for msc step limit for e+- 0.04 +Range factor for msc step limit for muons/hadrons 0.2 +Geometry factor for msc step limitation of e+- 2.5 +Safety factor for msc step limit for e+- 0.6 +Skin parameter for msc step limitation of e+- 1 +Lambda limit for msc step limit for e+- 1 mm +Use Mott correction for e- scattering 0 +Factor used for dynamic computation of angular + limit between single and multiple scattering 1 +Fixed angular limit between single + and multiple scattering 3.1416 rad +Upper energy limit for e+- multiple scattering 100 MeV +Type of electron single scattering model 0 +Type of nuclear form-factor 1 +Screening factor 1 +======================================================================= +# /run/initialize -userDetector->Construct() start. The Box is 1 cm of Water Material: Water density: 1.000 g/cm3 RadL: 36.092 cm Nucl.Int.Length: 75.356 cm @@ -109,57 +186,23 @@ userDetector->Construct() start. ---> Isotope: O18 Z = 8 N = 18 A = 18.00 g/mole abundance: 0.205 % ElmMassFraction: 88.79 % ElmAbundance 33.33 % -Water is registered to the default region. -physicsList->Construct() start. -physicsList->CheckParticleList() start. -physicsList->setCut() start. -/process/list - Transportation, ionIoni, nuclearStopping, ionIoni - nuclearStopping, ionIoni, nuclearStopping, hIoni - hIoni, hIoni, hIoni, hIoni - hIoni, eIoni, eBrem, annihil - eIoni, eBrem, phot, compt - conv, hIoni, hIoni, muIoni - muBrems, muPairProd, muIoni, muBrems - muPairProd, hIoni, hBrems, hPairProd - hIoni, hBrems, hPairProd, hIoni - hBrems, hPairProd, hIoni, UserStepMax - # /gun/particle e- /gun/energy 100 MeV # /run/beamOn 100000 -Region -- -- appears in world volume - This region is in the mass world. - Root logical volume(s) : Water - Pointers : G4VUserRegionInformation[0], G4UserLimits[0], G4FastSimulationManager[0], G4UserSteppingAction[0] - Materials : Water - Production cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - -Region -- -- is not associated to any world. - Root logical volume(s) : - Pointers : G4VUserRegionInformation[0], G4UserLimits[0], G4FastSimulationManager[0], G4UserSteppingAction[0] - Materials : - Production cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - ========= Table of registered couples ============================ Index : 0 used in the geometry : Yes Material : Water Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.92994 keV e- 349.731 keV e+ 342.774 keV proton 100 keV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld ================================================================== -Start closing geometry. -G4GeometryManager::ReportVoxelStats -- Voxel Statistics - - Total memory consumed for geometry optimisation: 0 kByte - Total CPU time elapsed for geometry optimisation: 0 seconds ### Run 0 starts. --------- Ranecu engine status --------- @@ -169,67 +212,46 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Run terminated. Run Summary Number of events processed : 100000 - User=1.090000s Real=1.090814s Sys=0.000000s + User=0.490000s Real=0.560180s Sys=0.000000s ======================== run summary ====================== The run was 100000 e- of 100 MeV through 1 cm of Water (density: 1 g/cm3 ) Process defining step : - Edep alone= 50 Transportation= 99996 eBrem= 37605 eIoni= 24068 + Edep alone= 53 Transportation= 99993 eBrem= 37462 eIoni= 23966 - TrackLength = 1 cm nb of steps = 1.617 stepSize = 6.184 mm (26.92 nm --> 1 cm ) + TrackLength = 1 cm nb of steps = 1.615 stepSize = 6.193 mm (27.09 nm --> 1 cm ) - Energy continuously deposited along primary track (restricted dE/dx) dE1 = 1.744 MeV (754.1 keV --> 2.971 MeV) + Energy continuously deposited along primary track (restricted dE/dx) dE1 = 1.744 MeV (754 keV --> 2.993 MeV) Evaluation of dE1 from reading restricted Range table : dE1_table = 1.744 MeV ---> dE1/dE1_table = 1 Energy transfered to secondary particles : - due to eBrem: dE2 = 2.338 MeV (2.932 keV --> 99.25 MeV) - due to eIoni: dE2 = 447 keV (349.7 keV --> 49.39 MeV) + due to eBrem: dE2 = 2.324 MeV (2.943 keV --> 99.25 MeV) + due to eIoni: dE2 = 443.1 keV (351.9 keV --> 49.39 MeV) - Total energy transfered to secondaries : dE3 = sum of dE2 = 2.785 MeV (2.932 keV --> 99.25 MeV) + Total energy transfered to secondaries : dE3 = sum of dE2 = 2.767 MeV (2.943 keV --> 99.25 MeV) - Total energy lost by incident particle : dE4 = dE1 + dE3 = 4.529 MeV (1.33 MeV --> 100 MeV) + Total energy lost by incident particle : dE4 = dE1 + dE3 = 4.511 MeV (1.33 MeV --> 100 MeV) - calcul of dE4 from energy balance : dE4_bal = E_in - E_out = 4.529 MeV (1.33 MeV --> 100 MeV) + calcul of dE4 from energy balance : dE4_bal = E_in - E_out = 4.511 MeV (1.33 MeV --> 100 MeV) - Evaluation of dE4 from reading full Range table : dE4_table = 4.577 MeV ---> dE4/dE4_table = 0.9895 + Evaluation of dE4 from reading full Range table : dE4_table = 4.578 MeV ---> dE4/dE4_table = 0.9854 Energy spectrum of secondary particles : - e-: 24068 Emean = 1.857 MeV (349.7 keV --> 49.39 MeV) - gamma: 37591 Emean = 6.22 MeV (2.932 keV --> 99.25 MeV) + e-: 23966 Emean = 1.849 MeV (351.9 keV --> 49.39 MeV) + gamma: 37451 Emean = 6.205 MeV (2.943 keV --> 99.25 MeV) --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 209994030, 1973556145 + Current couple of seeds = 1416005071, 1830164595 ---------------------------------------- G4 kernel has come to Quit state. -UserDetectorConstruction deleted. -UserPhysicsList deleted. -UserRunAction deleted. -UserPrimaryGenerator deleted. -RunManager is deleting RunManagerKernel. -EventManager deleted. -Units table cleared. -TransportationManager deleted. -Total navigation history collections cleaned: 6 ================== Deleting memory pools =================== -Pool ID '20G4NavigationLevelRep', size : 0.00673 MB -Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB -Pool ID '7G4Event', size : 0.000961 MB -Pool ID '15G4PrimaryVertex', size : 0.000961 MB -Pool ID '17G4PrimaryParticle', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.00192 MB -Pool ID '7G4Track', size : 0.00288 MB -Pool ID '18G4TouchableHistory', size : 0.000961 MB -Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Number of memory pools allocated: 9 of which, static: 0 Dynamic pools deleted: 9 / Total memory freed: 0.017 MB ============================================================ -G4Allocator objects are deleted. -UImanager deleted. -StateManager deleted. RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/electromagnetic/TestEm18/csda.mac b/examples/extended/electromagnetic/TestEm18/csda.mac index ca933aa199..b03029eb59 100644 --- a/examples/extended/electromagnetic/TestEm18/csda.mac +++ b/examples/extended/electromagnetic/TestEm18/csda.mac @@ -1,15 +1,20 @@ # # macro file for TestEm18.cc # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setMat Water ###/testem/det/setMat Water_vapor /testem/det/setSize 1 cm # +# prevent any delta rays production /run/setCut 100 km # +/process/em/verbose 0 +/process/em/printParameters +# /run/initialize # /process/eLoss/fluct false diff --git a/examples/extended/electromagnetic/TestEm18/edep.mac b/examples/extended/electromagnetic/TestEm18/edep.mac index e2070d6c7b..563c556618 100644 --- a/examples/extended/electromagnetic/TestEm18/edep.mac +++ b/examples/extended/electromagnetic/TestEm18/edep.mac @@ -1,8 +1,9 @@ # # macro file for TestEm18.cc # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setMat Water /testem/det/setSize 5 cm @@ -11,6 +12,9 @@ # /run/setCut 1 mm # +/process/em/verbose 0 +/process/em/printParameters +# /run/initialize # /gun/particle e- diff --git a/examples/extended/electromagnetic/TestEm18/electron.mac b/examples/extended/electromagnetic/TestEm18/electron.mac index dfc56bb9e2..73a15f4f86 100644 --- a/examples/extended/electromagnetic/TestEm18/electron.mac +++ b/examples/extended/electromagnetic/TestEm18/electron.mac @@ -1,8 +1,9 @@ # # macro file for TestEm18.cc # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setMat Water /testem/det/setSize 1 cm @@ -11,6 +12,9 @@ # /run/setCut 100 um # +/process/em/verbose 0 +/process/em/printParameters +# /run/initialize # /gun/particle e- @@ -29,6 +33,5 @@ /analysis/h1/set 12 100 0 10 MeV #e- energy spectrum # /run/printProgress 10000 -# /run/beamOn 100000 diff --git a/examples/extended/electromagnetic/TestEm18/ion.mac b/examples/extended/electromagnetic/TestEm18/ion.mac index 7adda5fa28..5ff72fd5bc 100644 --- a/examples/extended/electromagnetic/TestEm18/ion.mac +++ b/examples/extended/electromagnetic/TestEm18/ion.mac @@ -1,8 +1,9 @@ # # macro file for TestEm18.cc # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setMat Water /testem/det/setSize 1 cm @@ -11,8 +12,10 @@ # /run/setCut 1 mm # +/process/em/verbose 0 +/process/em/printParameters +# /run/initialize -/process/list # /gun/particle ion /gun/ion 6 12 diff --git a/examples/extended/electromagnetic/TestEm18/muon.mac b/examples/extended/electromagnetic/TestEm18/muon.mac index f5c2f1330d..ddae9ca343 100644 --- a/examples/extended/electromagnetic/TestEm18/muon.mac +++ b/examples/extended/electromagnetic/TestEm18/muon.mac @@ -1,5 +1,10 @@ +# # macro file for TestEm18.cc # +/control/cout/ignoreThreadsExcept 0 +/control/verbose 2 +/run/verbose 1 +# /testem/det/setMat G4_Cu /testem/det/setSize 1 m # @@ -8,7 +13,6 @@ /run/setCut 1 mm # /run/initialize -/process/list # /gun/particle mu+ /gun/energy 1 TeV @@ -28,5 +32,4 @@ /analysis/h1/set 13 100 0 1000 GeV #e+ energy spectrum # /run/printProgress 10000 - /run/beamOn 100000 diff --git a/examples/extended/electromagnetic/TestEm18/pixe.C b/examples/extended/electromagnetic/TestEm18/pixe.C new file mode 100644 index 0000000000..ce90c42738 --- /dev/null +++ b/examples/extended/electromagnetic/TestEm18/pixe.C @@ -0,0 +1,20 @@ +{ + gROOT->Reset(); + + // Draw histos filled by Geant4 simulation + // + TCanvas* c1 = new TCanvas("c1", " "); + + c1->SetLogx(1); + c1->SetLogy(1); + c1->SetGridy(1); + c1->cd(); + c1->Update(); + + TFile fa("pixe.root"); + + TH1D* ha1 = (TH1D*)fa.Get("11"); + ha1->SetLineColor(kBlue); + ha1->Draw("HIST"); + +} diff --git a/examples/extended/electromagnetic/TestEm18/pixe.mac b/examples/extended/electromagnetic/TestEm18/pixe.mac index 8cc4d202a3..0903d15a44 100644 --- a/examples/extended/electromagnetic/TestEm18/pixe.mac +++ b/examples/extended/electromagnetic/TestEm18/pixe.mac @@ -1,25 +1,45 @@ # # macro file for TestEm18.cc # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # -/testem/det/setMat Tungsten -/testem/det/setSize 100 um +/testem/det/setMat G4_Au +/testem/det/setSize 50 um # +/testem/phys/addPhysics standard +###/testem/phys/addPhysics livermore +# +# prevent any delta rays production +/run/setCut 1 km +/run/setCutForAGivenParticle gamma 0.5 um +# +# to (de)activate pixe or atomic deexcitation /process/em/pixe true +/process/em/augerCascade false +/process/em/deexcitationIgnoreCut false # -/run/setCut 1 um +/process/em/verbose 0 +/process/em/printParameters # /run/initialize # /gun/particle proton -/gun/energy 10 MeV +/gun/energy 20 MeV +# +/testem/trackSecondaries true +# +# to be run interactively +###/control/execute vis.mac +###/tracking/verbose 2 +###/run/beamOn 100 # /analysis/setFileName pixe -/analysis/h1/set 7 100 0 10 MeV #total eLoss -/analysis/h1/set 11 100 0 100 keV #gamma energy spectrum +/analysis/h1/set 7 100 0 2 MeV #total eLoss +/analysis/h1/set 11 1000 0 100 keV #gamma energy spectrum +/analysis/h1/set 12 1000 0 20 keV #e- energy spectrum # +/tracking/verbose 0 /run/printProgress 10000 -# /run/beamOn 100000 diff --git a/examples/extended/electromagnetic/TestEm18/plotHisto.C b/examples/extended/electromagnetic/TestEm18/plotHisto.C index 96809c5f47..3a63ee63f1 100644 --- a/examples/extended/electromagnetic/TestEm18/plotHisto.C +++ b/examples/extended/electromagnetic/TestEm18/plotHisto.C @@ -3,21 +3,21 @@ // Draw histos filled by Geant4 simulation // - TFile f("C12.root"); + TFile f("pixe.root"); TCanvas* c1 = new TCanvas("c1", " "); c1->SetLogy(1); c1->cd(); c1->Update(); - TH1D* hist1 = (TH1D*)f.Get("1"); - hist1->Draw("HIST"); + ///TH1D* hist1 = (TH1D*)f.Get("1"); + ///hist1->Draw("HIST"); - TH1D* hist2 = (TH1D*)f.Get("2"); - hist2->Draw("HIST"); + ///TH1D* hist2 = (TH1D*)f.Get("2"); + ///hist2->Draw("HIST"); - TH1D* hist3 = (TH1D*)f.Get("3"); - hist3->Draw("HIST"); + ///TH1D* hist3 = (TH1D*)f.Get("3"); + ///hist3->Draw("HIST"); ///TH1D* hist4 = (TH1D*)f.Get("4"); ///hist4->Draw("HIST"); @@ -25,8 +25,8 @@ ///TH1D* hist5 = (TH1D*)f.Get("5"); ///hist5->Draw("HIST"); - TH1D* hist6 = (TH1D*)f.Get("6"); - hist6->Draw("HIST"); + ///TH1D* hist6 = (TH1D*)f.Get("6"); + ///hist6->Draw("HIST"); TH1D* hist7 = (TH1D*)f.Get("7"); hist7->Draw("HIST"); @@ -37,9 +37,12 @@ ///TH1D* hist9 = (TH1D*)f.Get("9"); ///hist9->Draw("HIST"); - TH1D* hist10 = (TH1D*)f.Get("10"); - hist10->Draw("HIST"); + ///TH1D* hist10 = (TH1D*)f.Get("10"); + ///hist10->Draw("HIST SAME"); - ///TH1D* hist11 = (TH1D*)f.Get("11"); - ///hist11->Draw("HIST"); + TH1D* hist11 = (TH1D*)f.Get("11"); + hist11->Draw("HIST"); + + TH1D* hist12 = (TH1D*)f.Get("12"); + hist12->Draw("HIST"); } diff --git a/examples/extended/electromagnetic/TestEm18/proton.mac b/examples/extended/electromagnetic/TestEm18/proton.mac index 38fd3a6797..2c31e36c18 100644 --- a/examples/extended/electromagnetic/TestEm18/proton.mac +++ b/examples/extended/electromagnetic/TestEm18/proton.mac @@ -1,16 +1,19 @@ # # macro file for TestEm18.cc # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testem/det/setMat Water /testem/det/setSize 10 cm # /run/setCut 100 um # +/process/em/verbose 0 +/process/em/printParameters +# /run/initialize -/process/list # /gun/particle proton /gun/energy 1 GeV @@ -26,5 +29,4 @@ /analysis/h1/set 12 100 0 5 MeV #e- energy spectrum # /run/printProgress 10000 -# /run/beamOn 100000 diff --git a/examples/extended/electromagnetic/TestEm2/.README.txt b/examples/extended/electromagnetic/TestEm2/.README.txt index 5a43de88cd..cbe773c3da 100644 --- a/examples/extended/electromagnetic/TestEm2/.README.txt +++ b/examples/extended/electromagnetic/TestEm2/.README.txt @@ -132,6 +132,18 @@ Idle> type your commands Idle> exit \endverbatim + Macros provided in this example: + - egs4.mac: + Fe; L = 20 radl; R = 5 radl; electron 30 GeV + (EGS4 simulation: Particle Data Group - Phys.Rev.D 50-3 - August94) + - run01.mac: PbWO4; L = 20 radl; R = 5 radl; electron 5 GeV + - run02.mac: Al; L = 13.5 radl; R = 1.35 radl; electron 1 GeV + (Electron-induced cascade showers: J&H Crannel - Phys. Rev. 184-2 - August69) + - run03.mac: H2O; L = 9.97 radl; R = 0.665 radl; electron 1 GeV + (Electron-induced cascade showers: J&H Crannel - Phys. Rev. 184-2 - August69) + - test.mac: PbWO4; L = 20 radl; R = 5 radl; electron 5 GeV + - vis.mac: to activate visualization + \section TestEm2_s7 HISTOGRAMS TestEm2 produces several histograms: @@ -154,7 +166,7 @@ Idle> exit To define the output file name with histograms, use the UI command : \verbatim -/testem/histo/setFileName name +/analysis/setFileName name \endverbatim The format of the histogram file can be : root (default), diff --git a/examples/extended/electromagnetic/TestEm2/CMakeLists.txt b/examples/extended/electromagnetic/TestEm2/CMakeLists.txt index c65d09bfb0..4833702405 100644 --- a/examples/extended/electromagnetic/TestEm2/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm2/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm2) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm2/History b/examples/extended/electromagnetic/TestEm2/History index 411d0458f2..4f3485fdb8 100644 --- a/examples/extended/electromagnetic/TestEm2/History +++ b/examples/extended/electromagnetic/TestEm2/History @@ -14,6 +14,16 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +28-08-20 I. Hrivnacova (testem2-V10-06-00) +- Macro & commands review: + - Added macro descriptions in README + - Removed implementation of /testem/histo/setFileName and replaced its usage + with /analysis/setFileName + - Fixed file name in egs4.mac (do nous use egs4 directory which is not defined + in build area) + - Extended TestEm2.in with a command (missing in testing): + /testem/run/verbose 1 + 26-11-19 I. Hrivnacova (testem2-V10-05-01) - Fixed Doxygen warnings diff --git a/examples/extended/electromagnetic/TestEm2/README b/examples/extended/electromagnetic/TestEm2/README index d5e00915a9..35d9286327 100644 --- a/examples/extended/electromagnetic/TestEm2/README +++ b/examples/extended/electromagnetic/TestEm2/README @@ -123,6 +123,19 @@ .... Idle> exit + + Macros provided in this example: + - egs4.mac: + Fe; L = 20 radl; R = 5 radl; electron 30 GeV + (EGS4 simulation: Particle Data Group - Phys.Rev.D 50-3 - August94) + - run01.mac: PbWO4; L = 20 radl; R = 5 radl; electron 5 GeV + - run02.mac: Al; L = 13.5 radl; R = 1.35 radl; electron 1 GeV + (Electron-induced cascade showers: J&H Crannel - Phys. Rev. 184-2 - August69) + - run03.mac: H2O; L = 9.97 radl; R = 0.665 radl; electron 1 GeV + (Electron-induced cascade showers: J&H Crannel - Phys. Rev. 184-2 - August69) + - test.mac: PbWO4; L = 20 radl; R = 5 radl; electron 5 GeV + - vis.mac: to activate visualization + 7- HISTOGRAMS TestEm2 produces several histograms: @@ -145,7 +158,7 @@ To define the output file name with histograms, use the UI command : - "/testem/histo/setFileName name" + "/analysis/setFileName name" The format of the histogram file can be : root (default), xml, csv, by selecting g4nnn.hh in RunAction.hh diff --git a/examples/extended/electromagnetic/TestEm2/TestEm2.in b/examples/extended/electromagnetic/TestEm2/TestEm2.in index 7274bfdc17..647e212072 100644 --- a/examples/extended/electromagnetic/TestEm2/TestEm2.in +++ b/examples/extended/electromagnetic/TestEm2/TestEm2.in @@ -28,5 +28,6 @@ /gun/energy 5 GeV # /run/printProgress 20 +/testem/run/verbose 1 # /run/beamOn 100 diff --git a/examples/extended/electromagnetic/TestEm2/TestEm2.out b/examples/extended/electromagnetic/TestEm2/TestEm2.out index 752b0947e9..919399c4f6 100644 --- a/examples/extended/electromagnetic/TestEm2/TestEm2.out +++ b/examples/extended/electromagnetic/TestEm2/TestEm2.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -144,6 +144,7 @@ Absorber is 17.8491 cm of G4_PbWO4 R= 4.46227 cm /gun/particle e- /gun/energy 5 GeV /run/printProgress 20 +/testem/run/verbose 1 /run/beamOn 100 phot: for gamma SubType=12 BuildTable=0 @@ -169,10 +170,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -196,10 +198,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -227,9 +230,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -243,14 +246,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -259,9 +262,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -273,9 +276,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -286,9 +289,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -302,14 +305,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -318,9 +321,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -334,14 +337,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -350,9 +353,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -366,14 +369,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -382,9 +385,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -399,14 +402,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -415,9 +418,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -432,14 +435,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -448,9 +451,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -464,14 +467,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -480,9 +483,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -496,14 +499,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -516,7 +519,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Index : 0 used in the geometry : Yes Material : G4_PbWO4 Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 89.7946 keV e- 1.13679 MeV e+ 1.06315 MeV proton 100 keV + Energy thresholds : gamma 89.3347 keV e- 1.12535 MeV e+ 1.05931 MeV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -539,37 +542,138 @@ N=17 V[N]={906770732717044781, 629165745432651234, 1235682547346241386, 68420008 Run terminated. Run Summary Number of events processed : 100 - User=8.560000s Real=8.773186s Sys=0.010000s + User=2.420000s Real=2.458125s Sys=0.000000s + LOGITUDINAL PROFILE CUMULATIVE LOGITUDINAL PROFILE + + bin Mean rms bin Mean rms + + 0.00-> 0.50 radl: 0.19% 0.10% 0-> 0.50 radl: 0.19% 0.10% + 0.50-> 1.00 radl: 0.43% 0.25% 0-> 1.00 radl: 0.62% 0.31% + 1.00-> 1.50 radl: 0.94% 0.47% 0-> 1.50 radl: 1.56% 0.72% + 1.50-> 2.00 radl: 1.69% 0.76% 0-> 2.00 radl: 3.25% 1.34% + 2.00-> 2.50 radl: 2.70% 1.19% 0-> 2.50 radl: 5.95% 2.39% + 2.50-> 3.00 radl: 3.50% 1.39% 0-> 3.00 radl: 9.45% 3.53% + 3.00-> 3.50 radl: 4.38% 1.45% 0-> 3.50 radl: 13.83% 4.71% + 3.50-> 4.00 radl: 5.00% 1.52% 0-> 4.00 radl: 18.83% 5.86% + 4.00-> 4.50 radl: 5.48% 1.53% 0-> 4.50 radl: 24.31% 6.93% + 4.50-> 5.00 radl: 5.79% 1.39% 0-> 5.00 radl: 30.10% 7.81% + 5.00-> 5.50 radl: 6.02% 1.37% 0-> 5.50 radl: 36.13% 8.48% + 5.50-> 6.00 radl: 5.83% 1.33% 0-> 6.00 radl: 41.95% 8.92% + 6.00-> 6.50 radl: 5.65% 1.18% 0-> 6.50 radl: 47.61% 9.19% + 6.50-> 7.00 radl: 5.23% 1.14% 0-> 7.00 radl: 52.84% 9.24% + 7.00-> 7.50 radl: 4.89% 1.06% 0-> 7.50 radl: 57.73% 9.13% + 7.50-> 8.00 radl: 4.51% 1.02% 0-> 8.00 radl: 62.24% 8.90% + 8.00-> 8.50 radl: 4.13% 1.11% 0-> 8.50 radl: 66.37% 8.47% + 8.50-> 9.00 radl: 3.72% 0.97% 0-> 9.00 radl: 70.09% 8.04% + 9.00-> 9.50 radl: 3.32% 1.00% 0-> 9.50 radl: 73.41% 7.52% + 9.50->10.00 radl: 2.97% 0.95% 0->10.00 radl: 76.38% 7.00% + 10.00->10.50 radl: 2.66% 0.94% 0->10.50 radl: 79.04% 6.50% + 10.50->11.00 radl: 2.39% 1.01% 0->11.00 radl: 81.43% 5.94% + 11.00->11.50 radl: 2.02% 0.83% 0->11.50 radl: 83.45% 5.42% + 11.50->12.00 radl: 1.73% 0.76% 0->12.00 radl: 85.17% 4.93% + 12.00->12.50 radl: 1.44% 0.69% 0->12.50 radl: 86.61% 4.50% + 12.50->13.00 radl: 1.31% 0.61% 0->13.00 radl: 87.92% 4.08% + 13.00->13.50 radl: 1.15% 0.58% 0->13.50 radl: 89.07% 3.66% + 13.50->14.00 radl: 1.01% 0.58% 0->14.00 radl: 90.08% 3.26% + 14.00->14.50 radl: 0.86% 0.58% 0->14.50 radl: 90.94% 2.83% + 14.50->15.00 radl: 0.77% 0.55% 0->15.00 radl: 91.71% 2.42% + 15.00->15.50 radl: 0.62% 0.42% 0->15.50 radl: 92.33% 2.09% + 15.50->16.00 radl: 0.54% 0.36% 0->16.00 radl: 92.87% 1.85% + 16.00->16.50 radl: 0.48% 0.36% 0->16.50 radl: 93.35% 1.61% + 16.50->17.00 radl: 0.39% 0.30% 0->17.00 radl: 93.74% 1.42% + 17.00->17.50 radl: 0.33% 0.26% 0->17.50 radl: 94.07% 1.28% + 17.50->18.00 radl: 0.30% 0.26% 0->18.00 radl: 94.37% 1.12% + 18.00->18.50 radl: 0.29% 0.21% 0->18.50 radl: 94.66% 1.00% + 18.50->19.00 radl: 0.20% 0.17% 0->19.00 radl: 94.85% 0.93% + 19.00->19.50 radl: 0.18% 0.16% 0->19.50 radl: 95.03% 0.85% + 19.50->20.00 radl: 0.14% 0.16% 0->20.00 radl: 95.17% 0.79% + + + + RADIAL PROFILE CUMULATIVE RADIAL PROFILE + + bin Mean rms bin Mean rms + + 0.00-> 0.10 radl: 17.79% 2.18% 0-> 0.10 radl: 17.79% 2.18% + 0.10-> 0.20 radl: 13.38% 1.36% 0-> 0.20 radl: 31.16% 2.60% + 0.20-> 0.30 radl: 10.13% 1.07% 0-> 0.30 radl: 41.30% 2.68% + 0.30-> 0.40 radl: 7.81% 0.88% 0-> 0.40 radl: 49.11% 2.69% + 0.40-> 0.50 radl: 5.96% 0.72% 0-> 0.50 radl: 55.07% 2.57% + 0.50-> 0.60 radl: 4.83% 0.69% 0-> 0.60 radl: 59.91% 2.31% + 0.60-> 0.70 radl: 3.89% 0.70% 0-> 0.70 radl: 63.80% 2.18% + 0.70-> 0.80 radl: 3.21% 0.54% 0-> 0.80 radl: 67.01% 2.04% + 0.80-> 0.90 radl: 2.73% 0.52% 0-> 0.90 radl: 69.74% 1.91% + 0.90-> 1.00 radl: 2.32% 0.45% 0-> 1.00 radl: 72.06% 1.87% + 1.00-> 1.10 radl: 2.03% 0.38% 0-> 1.10 radl: 74.08% 1.81% + 1.10-> 1.20 radl: 1.81% 0.41% 0-> 1.20 radl: 75.90% 1.74% + 1.20-> 1.30 radl: 1.57% 0.35% 0-> 1.30 radl: 77.46% 1.72% + 1.30-> 1.40 radl: 1.46% 0.38% 0-> 1.40 radl: 78.92% 1.65% + 1.40-> 1.50 radl: 1.32% 0.31% 0-> 1.50 radl: 80.24% 1.58% + 1.50-> 1.60 radl: 1.21% 0.26% 0-> 1.60 radl: 81.46% 1.53% + 1.60-> 1.70 radl: 1.05% 0.25% 0-> 1.70 radl: 82.51% 1.47% + 1.70-> 1.80 radl: 1.00% 0.26% 0-> 1.80 radl: 83.51% 1.42% + 1.80-> 1.90 radl: 0.88% 0.21% 0-> 1.90 radl: 84.39% 1.37% + 1.90-> 2.00 radl: 0.78% 0.19% 0-> 2.00 radl: 85.17% 1.33% + 2.00-> 2.10 radl: 0.78% 0.23% 0-> 2.10 radl: 85.95% 1.31% + 2.10-> 2.20 radl: 0.67% 0.20% 0-> 2.20 radl: 86.63% 1.26% + 2.20-> 2.30 radl: 0.63% 0.18% 0-> 2.30 radl: 87.25% 1.21% + 2.30-> 2.40 radl: 0.58% 0.18% 0-> 2.40 radl: 87.84% 1.17% + 2.40-> 2.50 radl: 0.55% 0.18% 0-> 2.50 radl: 88.39% 1.14% + 2.50-> 2.60 radl: 0.51% 0.15% 0-> 2.60 radl: 88.89% 1.13% + 2.60-> 2.70 radl: 0.49% 0.15% 0-> 2.70 radl: 89.38% 1.10% + 2.70-> 2.80 radl: 0.45% 0.14% 0-> 2.80 radl: 89.83% 1.09% + 2.80-> 2.90 radl: 0.41% 0.14% 0-> 2.90 radl: 90.24% 1.07% + 2.90-> 3.00 radl: 0.39% 0.13% 0-> 3.00 radl: 90.63% 1.06% + 3.00-> 3.10 radl: 0.38% 0.14% 0-> 3.10 radl: 91.01% 1.01% + 3.10-> 3.20 radl: 0.35% 0.14% 0-> 3.20 radl: 91.36% 0.97% + 3.20-> 3.30 radl: 0.33% 0.12% 0-> 3.30 radl: 91.69% 0.94% + 3.30-> 3.40 radl: 0.32% 0.11% 0-> 3.40 radl: 92.01% 0.92% + 3.40-> 3.50 radl: 0.29% 0.11% 0-> 3.50 radl: 92.29% 0.90% + 3.50-> 3.60 radl: 0.26% 0.10% 0-> 3.60 radl: 92.56% 0.88% + 3.60-> 3.70 radl: 0.25% 0.10% 0-> 3.70 radl: 92.81% 0.86% + 3.70-> 3.80 radl: 0.25% 0.10% 0-> 3.80 radl: 93.06% 0.84% + 3.80-> 3.90 radl: 0.23% 0.09% 0-> 3.90 radl: 93.29% 0.84% + 3.90-> 4.00 radl: 0.22% 0.10% 0-> 4.00 radl: 93.51% 0.82% + 4.00-> 4.10 radl: 0.20% 0.08% 0-> 4.10 radl: 93.72% 0.81% + 4.10-> 4.20 radl: 0.20% 0.09% 0-> 4.20 radl: 93.92% 0.80% + 4.20-> 4.30 radl: 0.21% 0.10% 0-> 4.30 radl: 94.13% 0.78% + 4.30-> 4.40 radl: 0.18% 0.08% 0-> 4.40 radl: 94.31% 0.79% + 4.40-> 4.50 radl: 0.16% 0.08% 0-> 4.50 radl: 94.48% 0.78% + 4.50-> 4.60 radl: 0.16% 0.08% 0-> 4.60 radl: 94.64% 0.79% + 4.60-> 4.70 radl: 0.16% 0.08% 0-> 4.70 radl: 94.80% 0.80% + 4.70-> 4.80 radl: 0.14% 0.07% 0-> 4.80 radl: 94.94% 0.79% + 4.80-> 4.90 radl: 0.13% 0.06% 0-> 4.90 radl: 95.06% 0.79% + 4.90-> 5.00 radl: 0.11% 0.05% 0-> 5.00 radl: 95.17% 0.79% ===== SUMMARY ===== Total number of events: 100 - Mean number of charged steps: 7240.02 - Mean number of neutral steps: 4092.36 + Mean number of charged steps: 7276.64 + Mean number of neutral steps: 4120.93 - energy deposit : 95.16 % E0 +- 0.97 % E0 - charged traklen: 485.13 radl +- 5.13 radl - neutral traklen: 4180.14 radl +- 123.39 radl + energy deposit : 95.17 % E0 +- 0.79 % E0 + charged traklen: 484.99 radl +- 4.47 radl + neutral traklen: 4227.07 radl +- 115.66 radl - 90.00 % confinement: radius = 2.87 radl (2.56 cm ) + 90.00 % confinement: radius = 2.84 radl (2.53 cm ) <<<>>> 100 events for Total Energy in Absorber -Edep: 0.951576 delEdep= 0.00257597 nrms= 3.14142 -Erms: 0.00969668 delErms= 0.00149668 nrms= 1.82522 +Edep: 0.951746 delEdep= 0.0027458 nrms= 3.34853 +Erms: 0.00785038 delErms= -0.000349624 nrms= -0.426371 <<<>>> IS NOT ACCEPTED ------- MixMaxRng engine status ------- Current state vector is: mixmax state, file version 1.0 -N=17 V[N]={1988256241637042433, 1290128793852102062, 741993723810955011, 88626892286938908, 925842433676995178, 2027261143151211294, 1103835360358955530, 1225691208052109603, 2166253751576666731, 1752302890925742466, 22334852124403215, 2106258793908074719, 761035665999996224, 164180213923982943, 1383706058027854732, 2161396677910274468, 368251014461497353} counter= 17sumtot= 1830611641975251262 +N=17 V[N]={851434535752920704, 888539176679964768, 315678774786267687, 921965249393603455, 431656495543229842, 1479312182916538139, 638552150678385958, 388339336885198511, 382715861733027773, 2262160206525218158, 832818704021629363, 139561543447700225, 1422938963155495486, 118603380232983629, 2056990588665516613, 841707889787774152, 236456093093737758} counter= 9sumtot= 374373078017028515 --------------------------------------- -... write Root file : testem2.root - done -... close Root file : testem2.root - done +... write file : testem2.root - done +... close file : testem2.root - done G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 9 of which, static: 0 -Dynamic pools deleted: 9 / Total memory freed: 0.059 MB +Dynamic pools deleted: 9 / Total memory freed: 0.067 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/electromagnetic/TestEm2/egs4.mac b/examples/extended/electromagnetic/TestEm2/egs4.mac index 27aaa52866..1b6cce882b 100644 --- a/examples/extended/electromagnetic/TestEm2/egs4.mac +++ b/examples/extended/electromagnetic/TestEm2/egs4.mac @@ -18,7 +18,7 @@ /run/setCut 0.7 mm # # histogram file -/testem/histo/setFileName egs4/93ref0 +/analysis/setFileName egs4_93ref0 # /run/initialize # diff --git a/examples/extended/electromagnetic/TestEm2/include/RunAction.hh b/examples/extended/electromagnetic/TestEm2/include/RunAction.hh index 2f5bf22542..82132a55a1 100644 --- a/examples/extended/electromagnetic/TestEm2/include/RunAction.hh +++ b/examples/extended/electromagnetic/TestEm2/include/RunAction.hh @@ -59,10 +59,7 @@ public: virtual void EndOfRunAction(const G4Run*); void SetVerbose(G4int val); - - // Histogram name - void SetHistoName(G4String& val); - + // Acceptance parameters void SetEdepAndRMS(G4ThreeVector); @@ -78,8 +75,6 @@ private: G4int fVerbose; - G4String fHistoName[2]; - G4double fEdeptrue; G4double fRmstrue; G4double fLimittrue; diff --git a/examples/extended/electromagnetic/TestEm2/include/RunActionMessenger.hh b/examples/extended/electromagnetic/TestEm2/include/RunActionMessenger.hh index 4a79a03a28..b0cfd4f171 100644 --- a/examples/extended/electromagnetic/TestEm2/include/RunActionMessenger.hh +++ b/examples/extended/electromagnetic/TestEm2/include/RunActionMessenger.hh @@ -58,9 +58,6 @@ private: G4UIdirectory* fRunDir; G4UIcmdWith3Vector* fAccCmd; G4UIcmdWithAnInteger* fVerbCmd; - - G4UIdirectory* fHistoDir; - G4UIcmdWithAString* fHFileCmd; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/electromagnetic/TestEm2/run01.mac b/examples/extended/electromagnetic/TestEm2/run01.mac index b8a4d1bbc1..a606fd47a1 100644 --- a/examples/extended/electromagnetic/TestEm2/run01.mac +++ b/examples/extended/electromagnetic/TestEm2/run01.mac @@ -21,7 +21,7 @@ /gun/energy 5 GeV # # histogram file -/testem/histo/setFileName run01 +/analysis/setFileName run01 # /run/printProgress 50 /testem/run/verbose 1 diff --git a/examples/extended/electromagnetic/TestEm2/src/RunAction.cc b/examples/extended/electromagnetic/TestEm2/src/RunAction.cc index 5a01a3a9e2..3cbfb84506 100644 --- a/examples/extended/electromagnetic/TestEm2/src/RunAction.cc +++ b/examples/extended/electromagnetic/TestEm2/src/RunAction.cc @@ -52,7 +52,13 @@ RunAction::RunAction(DetectorConstruction* det, PrimaryGeneratorAction* kin) fVerbose(0), fEdeptrue(1.), fRmstrue(1.), fLimittrue(DBL_MAX) { fRunMessenger = new RunActionMessenger(this); - fHistoName[0] = "testem2"; + + // Create analysis manager + // The choice of analysis technology is done via selection of a namespace + fAnalysisManager = G4AnalysisManager::Instance(); + // Set the default file name "testem2" + // which can be then redefine in a macro via UI command + fAnalysisManager->SetFileName("testem2"); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -66,21 +72,12 @@ RunAction::~RunAction() void RunAction::BookHisto() { - // Create analysis manager - // The choice of analysis technology is done via selection of a namespace - // - + // Get analysis manager fAnalysisManager = G4AnalysisManager::Instance(); // Open an output file - // - ///fHistoName[0] = "testem2"; - - fAnalysisManager->OpenFile(fHistoName[0]); - + fAnalysisManager->OpenFile(); fAnalysisManager->SetVerboseLevel(1); - G4String extension = fAnalysisManager->GetFileType(); - fHistoName[1] = fHistoName[0] + "." + extension; // Creating histograms // @@ -132,14 +129,10 @@ void RunAction::BookHisto() fAnalysisManager->CreateH1("h11","rms on cumul radial Edep (% of E inc)", nRbin,Rmin,Rmax); - G4cout << "\n----> Histogram file is opened in " << fHistoName[1] << G4endl; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void RunAction::SetHistoName(G4String& val) -{ - fHistoName[0] = val; + G4String fileName = fAnalysisManager->GetFileName(); + G4String extension = fAnalysisManager->GetFileType(); + G4String fullFileName = fileName + "." + extension; + G4cout << "\n----> Histogram file is opened in " << fullFileName << G4endl; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/electromagnetic/TestEm2/src/RunActionMessenger.cc b/examples/extended/electromagnetic/TestEm2/src/RunActionMessenger.cc index 678b160eba..6baebb1aeb 100644 --- a/examples/extended/electromagnetic/TestEm2/src/RunActionMessenger.cc +++ b/examples/extended/electromagnetic/TestEm2/src/RunActionMessenger.cc @@ -44,9 +44,7 @@ RunActionMessenger::RunActionMessenger(RunAction* run) :G4UImessenger(),fRun(run), fRunDir(0), fAccCmd(0), - fVerbCmd(0), - fHistoDir(0), - fHFileCmd(0) + fVerbCmd(0) { fRunDir = new G4UIdirectory("/testem/run/"); fRunDir->SetGuidance("run control"); @@ -61,12 +59,6 @@ RunActionMessenger::RunActionMessenger(RunAction* run) fVerbCmd = new G4UIcmdWithAnInteger("/testem/run/verbose",this); fVerbCmd->SetGuidance("set verbose level for runAction"); fVerbCmd->SetParameterName("verbose",false); - - fHistoDir = new G4UIdirectory("/testem/histo/"); - fHistoDir->SetGuidance("histograms control"); - - fHFileCmd = new G4UIcmdWithAString("/testem/histo/setFileName",this); - fHFileCmd->SetGuidance("set name for the histograms file"); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -76,8 +68,6 @@ RunActionMessenger::~RunActionMessenger() delete fVerbCmd; delete fAccCmd; delete fRunDir; - delete fHFileCmd; - delete fHistoDir; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -89,9 +79,6 @@ void RunActionMessenger::SetNewValue(G4UIcommand* command,G4String newValue) if (command == fVerbCmd ) { fRun->SetVerbose(fVerbCmd->GetNewIntValue(newValue));} - - if (command == fHFileCmd) - { fRun->SetHistoName(newValue);} } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/electromagnetic/TestEm3/.README.txt b/examples/extended/electromagnetic/TestEm3/.README.txt index 4ee67aa6f4..6435c5716e 100644 --- a/examples/extended/electromagnetic/TestEm3/.README.txt +++ b/examples/extended/electromagnetic/TestEm3/.README.txt @@ -81,11 +81,7 @@ - "emlowenergy" low-energy EM physics implementing experimental low-energy models - Physics lists and options can be (re)set with UI commands - - Please, notice that options set through G4EmProcessOptions are global, eg - for all particle types. In G4 builders, it is shown how to set options per - particle type. + Physics lists and options can be (re)set with UI commands. \section TestEm3_s3 AN EVENT : THE PRIMARY GENERATOR @@ -131,8 +127,8 @@ As a homework try to visualize a gamma conversion alone, or the effect of the multiple scattering. - Notice that one can control the maximum step size in each absorber, via the - StepMax process and the command + Notice that one can control the maximum step size, via the + StepMax process and the command /testem/stepMax \verbatim /testem/stepMax/absorber \endverbatim @@ -154,7 +150,22 @@ Idle> /control/execute run01.mac .... Idle> exit \endverbatim - + + Macros provided in this example: + - atlashec.mac: ATLAS HEC model + - dedx.mac: to control dE/dx calculation: 1 layer; minimum ionizing particle + - emtutor.mac: for tutorial; interactivity + visualisation + - geom.mac: to play with geometry + - ionC12.mac: ion C12, 1 layer + - lhcb.mac: LHCB ECAL model + - linac.mac: Linac/Ecal from Graham Wilson + - lockwood.mac: Al-Au-Al 1 layer (G.L.Lockwood et al. SAND79-0414 (1980)) + - run01.mac: Lead-liquidArgon 50 layers; electron 1 GeV + - run02.mac: Tungsten-Silicon 50 layers; electron 1 GeV + - storeTables.mac: show how to store and retrieve physics tables + - tileCal.mac: ATLAS tileCal + - vis.mac: to activate visualization + \section TestEm3_s7 HISTOGRAMS Testem3 can produce histograms : @@ -162,6 +173,18 @@ Idle> exit - histo 2 : energy deposit in absorber 2 - etc. + - histo 11 : longitudinal profile of energy deposit in absorber 1 (MeV/event) + - histo 12 : longitudinal profile of energy deposit in absorber 2 (MeV/event) + - etc. + + - histo 21 : energy flow (MeV/event) + - histo 22 : lateral energy leak (MeV/event) + + NB. Numbering scheme for histograms: + - layer : from 1 to NbOfLayers (included) + - absorbers : from 1 to NbOfAbsor (included) + - planes : from 1 to NbOfLayers*NbOfAbsor + 1 (included) + One can control the binning of the histo with the command: \verbatim /analysis/h1/set idAbsor nbin Emin Emax unit @@ -169,36 +192,18 @@ Idle> exit etc., where unit is the desired energy unit for that histo (see TestEm3.in). - - histo 11 : longitudinal profile of energy deposit in absorber 1 (MeV/event) - - histo 12 : longitudinal profile of energy deposit in absorber 2 (MeV/event) - - etc. - - histo 21 : energy flow (MeV/event) - histo 22 : lateral energy leak (MeV/event) - - NB. Numbering scheme for histograms: - - layer : from 1 to NbOfLayers (inclued) - - absorbers : from 1 to NbOfAbsor (inclued) - - planes : from 1 to NbOfLayers*NbOfAbsor + 1 (inclued) - One can control the name of the histograms file with the command: \verbatim /analysis/setFileName name (default testem3) \endverbatim It is possible to choose the format of the histogram file : root (default), - hbook, xml, csv, by using namespace in HistoManager.hh + xml, csv, by using namespace in HistoManager.hh It is also possible to print selected histograms on an ascii file: \verbatim /analysis/h1/setAscii id \endverbatim All selected histos will be written on a file name.ascii (default testem3) - -\subsection TestEm3_subs1 Using hbook format - - Need a special treatement : the Cern Library must be installed and the - environment variable CERNLIB correctly set. Then, *before* compiling, - activate G4_USE_HBOOK in GNUmakefile and g4hbook.hh in HistoManager.hh - + */ diff --git a/examples/extended/electromagnetic/TestEm3/CMakeLists.txt b/examples/extended/electromagnetic/TestEm3/CMakeLists.txt index 494b9fa414..6f5eeae707 100644 --- a/examples/extended/electromagnetic/TestEm3/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm3/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm3) #---------------------------------------------------------------------------- @@ -40,7 +43,7 @@ target_link_libraries(TestEm3 ${Geant4_LIBRARIES}) # relies on these scripts being in the current working directory. # set(TestEm3_SCRIPTS - atlashec.mac dedx.mac emtutor.mac ionC12.mac lhcb.mac linac.mac lockwood.mac retrieveTables.mac + atlashec.mac dedx.mac emtutor.mac geom.mac ionC12.mac lhcb.mac linac.mac lockwood.mac run01.mac run02.mac storeTables.mac TestEm3.in TestEm3.out tileCal.mac vis.mac ) diff --git a/examples/extended/electromagnetic/TestEm3/History b/examples/extended/electromagnetic/TestEm3/History index f55e0dd5c4..261979f332 100644 --- a/examples/extended/electromagnetic/TestEm3/History +++ b/examples/extended/electromagnetic/TestEm3/History @@ -14,6 +14,16 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +14-09-20 I. Hrivnacova (testem3-V10-06-01) +- Renamed TestEm3_2.in in geom.mac + +01-09-20 mma, I. Hrivnacova (testem3-V10-06-00) +- Macro & commands review: + - Added macro descriptions in README + - Added TestEm3_2.in with commands not used in TestEm3.in + - Fixed not working macros: ionC12.mac, lockwood.mac, storeTables.mac + - Removed obsolete macro retrieveTables.mac + 26-11-19 I. Hrivnacova (testem3-V10-05-00) - Fixed Doxygen warnings diff --git a/examples/extended/electromagnetic/TestEm3/README b/examples/extended/electromagnetic/TestEm3/README index 8d99ff5237..88f6d282b0 100644 --- a/examples/extended/electromagnetic/TestEm3/README +++ b/examples/extended/electromagnetic/TestEm3/README @@ -83,11 +83,7 @@ - "emlowenergy" low-energy EM physics implementing experimental low-energy models - Physics lists and options can be (re)set with UI commands - - Please, notice that options set through G4EmProcessOPtions are global, eg - for all particle types. In G4 builders, it is shown how to set options per - particle type. + Physics lists and options can be (re)set with UI commands. 3- AN EVENT : THE PRIMARY GENERATOR @@ -131,8 +127,8 @@ As a homework try to visualize a gamma conversion alone, or the effect of the multiple scattering. - Notice that one can control the maximum step size in each absorber, via the - StepMax process and the command /testem/stepMax/absorber + Notice that one can control the maximum step size, via the + StepMax process and the command /testem/stepMax (see StepMax and PhysicsList classes) 6- HOW TO START ? @@ -147,7 +143,22 @@ Idle> /control/execute run01.mac .... Idle> exit - + + Macros provided in this example: + - atlashec.mac: ATLAS HEC model + - dedx.mac: to control dE/dx calculation: 1 layer; minimum ionizing particle + - emtutor.mac: for tutorial; interactivity + visualisation + - geom.mac: to play with geometry + - ionC12.mac: ion C12, 1 layer + - lhcb.mac: LHCB ECAL model + - linac.mac: Linac/Ecal from Graham Wilson + - lockwood.mac: Al-Au-Al 1 layer (G.L.Lockwood et al. SAND79-0414 (1980)) + - run01.mac: Lead-liquidArgon 50 layers; electron 1 GeV + - run02.mac: Tungsten-Silicon 50 layers; electron 1 GeV + - storeTables.mac: show how to store and retrieve physics tables + - tileCal.mac: ATLAS tileCal + - vis.mac: to activate visualization + 7- HISTOGRAMS Testem3 can produce histograms : diff --git a/examples/extended/electromagnetic/TestEm3/TestEm3.out b/examples/extended/electromagnetic/TestEm3/TestEm3.out index 51b07c2fb7..48377bf9d5 100644 --- a/examples/extended/electromagnetic/TestEm3/TestEm3.out +++ b/examples/extended/electromagnetic/TestEm3/TestEm3.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -31,7 +31,7 @@ userDetector->Construct() start. G4_lAr: 5.7 mm ------------------------------------------------------------- - Material: Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -105,10 +105,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -132,10 +133,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -163,9 +165,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -179,14 +181,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -195,9 +197,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -209,9 +211,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -222,9 +224,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -238,14 +240,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -254,9 +256,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -270,14 +272,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -286,9 +288,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -302,14 +304,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -318,9 +320,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -335,14 +337,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -351,9 +353,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -368,14 +370,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -384,9 +386,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -400,14 +402,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -416,9 +418,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -432,14 +434,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -472,14 +474,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_Pb Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 101.981 keV e- 1.36213 MeV e+ 1.28245 MeV proton 100 keV + Energy thresholds : gamma 101.843 keV e- 1.36749 MeV e+ 1.27862 MeV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_lAr Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.2036 keV e- 345.078 keV e+ 335.956 keV proton 100 keV + Energy thresholds : gamma 6.19986 keV e- 349.521 keV e+ 337.972 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -488,48 +490,48 @@ Index : 2 used in the geometry : Yes Start closing geometry. G4GeometryManager::ReportVoxelStats -- Voxel Statistics - Total memory consumed for geometry optimisation: 4 kByte + Total memory consumed for geometry optimisation: 3 kByte Total CPU time elapsed for geometry optimisation: 0 seconds Voxelisation: top CPU users: Percent Total CPU System CPU Memory Volume ------- ---------- ---------- -------- ---------- - 0.00 0.00 0.00 4k Calorimeter + 0.00 0.00 0.00 3k Calorimeter 0.00 0.00 0.00 0k Layer Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume ------- -------- ------ ------ -------- ---------- ---------- - 92.30 4k 1 50 50 0.00 Calorimeter - 7.70 0k 1 3 4 0.00 Layer + 92.05 2k 1 50 50 0.00 Calorimeter + 7.95 0k 1 3 4 0.00 Layer ### Run 0 starts. --> Event 0 starts. --> Event 50 starts. Run terminated. Run Summary Number of events processed : 100 - User=3.320000s Real=3.354409s Sys=0.000000s + User=1.570000s Real=1.583600s Sys=0.000000s ------------------------------------------------------------ material Edep RMS sqrt(E0(GeV))*rmsE/Emean total tracklen - G4_Pb: 775.48 MeV : 17.96 MeV 2.316 +- 0.2316 % 54.8 cm +- 1.33 cm - G4_lAr: 214.69 MeV : 17.13 MeV 7.98 +- 0.798 % 1.05 m +- 8.56 cm + G4_Pb: 776.48 MeV : 16.85 MeV 2.17 +- 0.217 % 54.8 cm +- 1.39 cm + G4_lAr: 213.5 MeV : 15.49 MeV 7.253 +- 0.7253 % 1.05 m +- 7.97 cm ------------------------------------------------------------ Beam particle e- E = 1 GeV Mean number of gamma 508 - Mean number of e- 872 - Mean number of e+ 53.2 - Mean number of charged steps 3604.6 - Mean number of neutral steps 3669.14 + Mean number of e- 873 + Mean number of e+ 53.7 + Mean number of charged steps 3670.22 + Mean number of neutral steps 3720.94 ------------------------------------------------------------ Energy deposition from Energy flow balance : material Total Edep - G4_Pb: 775.483 MeV - G4_lAr: 214.664 MeV + G4_Pb: 776.475 MeV + G4_lAr: 213.498 MeV ------------------------------------------------------------ @@ -572,10 +574,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -599,10 +602,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -630,9 +634,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -646,14 +650,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -662,9 +666,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -676,9 +680,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -689,9 +693,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -705,14 +709,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -721,9 +725,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -737,14 +741,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -753,9 +757,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -769,14 +773,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -785,9 +789,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -802,14 +806,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -818,9 +822,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -835,14 +839,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -851,9 +855,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -867,14 +871,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -883,9 +887,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -899,14 +903,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -939,14 +943,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_Pb Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 101.981 keV e- 1.36213 MeV e+ 1.28245 MeV proton 100 keV + Energy thresholds : gamma 101.843 keV e- 1.36749 MeV e+ 1.27862 MeV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_lAr Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.2036 keV e- 345.078 keV e+ 335.956 keV proton 100 keV + Energy thresholds : gamma 6.19986 keV e- 349.521 keV e+ 337.972 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -958,28 +962,28 @@ Index : 2 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 100 - User=2.670000s Real=2.690025s Sys=0.000000s + User=1.250000s Real=1.255681s Sys=0.000000s ------------------------------------------------------------ material Edep RMS sqrt(E0(GeV))*rmsE/Emean total tracklen - G4_Pb: 775.92 MeV : 21.72 MeV 2.799 +- 0.2799 % 52.2 cm +- 1.27 cm - G4_lAr: 214.13 MeV : 15.31 MeV 7.149 +- 0.7149 % 1.01 m +- 7.82 cm + G4_Pb: 773.85 MeV : 25 MeV 3.231 +- 0.3231 % 52.1 cm +- 1.36 cm + G4_lAr: 215.01 MeV : 16.84 MeV 7.83 +- 0.783 % 1.01 m +- 8.21 cm ------------------------------------------------------------ Beam particle e- E = 1 GeV Mean number of gamma 291 - Mean number of e- 558 - Mean number of e+ 52.7 - Mean number of charged steps 3096.93 - Mean number of neutral steps 2918.06 + Mean number of e- 556 + Mean number of e+ 53.5 + Mean number of charged steps 3107.22 + Mean number of neutral steps 2931.41 ------------------------------------------------------------ Energy deposition from Energy flow balance : material Total Edep - G4_Pb: 774.622 MeV - G4_lAr: 216.487 MeV + G4_Pb: 774.371 MeV + G4_lAr: 216.613 MeV ------------------------------------------------------------ @@ -994,19 +998,19 @@ RunManager is deleting RunManagerKernel. EventManager deleted. Units table cleared. TransportationManager deleted. -Total navigation history collections cleaned: 33 +Total navigation history collections cleaned: 32 ================== Deleting memory pools =================== -Pool ID '20G4NavigationLevelRep', size : 0.049 MB +Pool ID '20G4NavigationLevelRep', size : 0.0481 MB Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB Pool ID '7G4Event', size : 0.000961 MB Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.0135 MB -Pool ID '7G4Track', size : 0.026 MB +Pool ID '17G4DynamicParticle', size : 0.0115 MB +Pool ID '7G4Track', size : 0.0231 MB Pool ID '18G4TouchableHistory', size : 0.00385 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Number of memory pools allocated: 9 of which, static: 0 -Dynamic pools deleted: 9 / Total memory freed: 0.097 MB +Dynamic pools deleted: 9 / Total memory freed: 0.091 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/extended/electromagnetic/TestEm3/geant3/g4mat/gmakeB b/examples/extended/electromagnetic/TestEm3/geant3/g4mat/gmakeB old mode 100755 new mode 100644 diff --git a/examples/extended/electromagnetic/TestEm3/geant3/g4mat/gmakeT b/examples/extended/electromagnetic/TestEm3/geant3/g4mat/gmakeT old mode 100755 new mode 100644 diff --git a/examples/extended/electromagnetic/TestEm3/geant3/gmakeB b/examples/extended/electromagnetic/TestEm3/geant3/gmakeB old mode 100755 new mode 100644 diff --git a/examples/extended/electromagnetic/TestEm3/geant3/gmakeT b/examples/extended/electromagnetic/TestEm3/geant3/gmakeT old mode 100755 new mode 100644 diff --git a/examples/extended/electromagnetic/TestEm3/geom.mac b/examples/extended/electromagnetic/TestEm3/geom.mac new file mode 100644 index 0000000000..d47ef6c3e9 --- /dev/null +++ b/examples/extended/electromagnetic/TestEm3/geom.mac @@ -0,0 +1,26 @@ +# +# Macro file for "TestEm3.cc" +# +# to play with geometry +# 1 layer; magnetic field +# +/control/verbose 2 +# +/testem/det/setNbOfLayers 1 +/testem/det/setNbOfAbsor 1 +/testem/det/setAbsor 1 Aluminium 10 cm +/testem/det/setSizeYZ 10 cm +# +/run/setCut 2 cm +# +/run/initialize +# +/globalField/setValue 0 0 10 tesla +# +/testem/gun/setDefault +/testem/gun/rndm 0.1 +/gun/particle proton +/gun/energy 300 MeV +# +/run/printProgress 0 +/run/beamOn 10 diff --git a/examples/extended/electromagnetic/TestEm3/ionC12.mac b/examples/extended/electromagnetic/TestEm3/ionC12.mac index 08381314da..d5c7eab729 100644 --- a/examples/extended/electromagnetic/TestEm3/ionC12.mac +++ b/examples/extended/electromagnetic/TestEm3/ionC12.mac @@ -1,6 +1,5 @@ # # Macro file for "TestEm3.cc" -# (can be run in batch, without graphic) # # CsI 1 layer; # @@ -19,8 +18,6 @@ /testem/det/setAbsor 1 CsI 1.99 cm /testem/det/setSizeYZ 3 cm # -/gun/particle ion -/gun/ion 6 12 /run/initialize # /testem/gun/setDefault diff --git a/examples/extended/electromagnetic/TestEm3/lockwood.mac b/examples/extended/electromagnetic/TestEm3/lockwood.mac index 24c498be1b..4902481c7b 100644 --- a/examples/extended/electromagnetic/TestEm3/lockwood.mac +++ b/examples/extended/electromagnetic/TestEm3/lockwood.mac @@ -1,6 +1,5 @@ # # Macro file for "TestEm3.cc" -# (can be run in batch, without graphic) # # Al-Au-Al 1 layer; # @@ -27,8 +26,7 @@ /gun/energy 1 MeV /testem/gun/rndm 0.8 # -/testem/stepMax/absorber 2 5 um +/testem/stepMax 5 um # /run/printProgress 1000 -# -/run/beamOn 10 +/run/beamOn 10000 diff --git a/examples/extended/electromagnetic/TestEm3/retrieveTables.mac b/examples/extended/electromagnetic/TestEm3/retrieveTables.mac deleted file mode 100644 index 75b5d8c9e2..0000000000 --- a/examples/extended/electromagnetic/TestEm3/retrieveTables.mac +++ /dev/null @@ -1,24 +0,0 @@ -# -# Macro file for "exampleN03.cc" -# -# can be run in batch, without graphic -# or interactively: Idle> /control/execute run1.mac -# -/control/verbose 2 -# -# select EM PhysicsList -# -/testem/phys/addPhysics emstandard_opt0 -# -/run/particle/retrievePhysicsTable physdata -/run/initialize -/process/eLoss/verbose 1 -/process/eLoss/CSDARange true -# -/gun/particle e- -/gun/energy 1 GeV -# -/run/beamOn 3 -# -/run/particle/storePhysicsTable physdata1 -# diff --git a/examples/extended/electromagnetic/TestEm3/storeTables.mac b/examples/extended/electromagnetic/TestEm3/storeTables.mac index 44f5938ef8..6a4c3faa21 100644 --- a/examples/extended/electromagnetic/TestEm3/storeTables.mac +++ b/examples/extended/electromagnetic/TestEm3/storeTables.mac @@ -1,20 +1,20 @@ # # Macro file for "testEm3.cc" -# -# can be run in batch, without graphic -# or interactively: Idle> /control/execute run1.mac +# +# show how to store and retrieve Physics Tables # /control/verbose 2 # /testem/phys/addPhysics emstandard_opt0 # -#/run/initialize -/process/eLoss/verbose 1 +/process/eLoss/verbose 0 /process/eLoss/CSDARange true /run/initialize +/random/setSavingFlag 1 +# /run/beamOn 3 # -/run/particle/dumpCutValues +/control/shell mkdir physdata /run/particle/storePhysicsTable physdata # /gun/particle e- @@ -24,6 +24,6 @@ # /run/particle/retrievePhysicsTable physdata # -#/random/resetEngineFrom currentRun.rndm +/random/resetEngineFrom currentRun.rndm /run/beamOn 3 # diff --git a/examples/extended/electromagnetic/TestEm4/.README.txt b/examples/extended/electromagnetic/TestEm4/.README.txt index 7d29ff6a2b..73b81100d2 100644 --- a/examples/extended/electromagnetic/TestEm4/.README.txt +++ b/examples/extended/electromagnetic/TestEm4/.README.txt @@ -54,26 +54,11 @@ Idle> type your commands Idle> exit \endverbatim - - Visualize the histogram (paw) -\verbatim -paw> h/file 1 testem4.hbook -paw> option stat -paw> option logy -paw> h/pl 1 -\endverbatim - - \section TestEm4_s7 USING HISTOGRAMS The format of the histogram file can be : root (default), - hbook, xml, csv, by selecting g4nnn.hh in RunAction.hh - -\subsection TestEm4_subs1 Using hbook format - - Need a special treatement : the Cern Library must be installed and the - environment variable CERNLIB correctly set. Then, *before* compiling, - activate G4_USE_HBOOK in GNUmakefile and g4hbook.hh in RunAction.hh - + xml, csv, by selecting g4nnn.hh in RunAction.hh + \section TestEm4_s8- RANDOM NUMBERS HANDLING CLHEP provides several random number engines. In this example the Ranecu diff --git a/examples/extended/electromagnetic/TestEm4/CMakeLists.txt b/examples/extended/electromagnetic/TestEm4/CMakeLists.txt index 376630050c..6fae12a2c3 100644 --- a/examples/extended/electromagnetic/TestEm4/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm4/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm4) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm4/History b/examples/extended/electromagnetic/TestEm4/History index 74a327d304..d30dc148c4 100644 --- a/examples/extended/electromagnetic/TestEm4/History +++ b/examples/extended/electromagnetic/TestEm4/History @@ -14,6 +14,10 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +28-08-20 I. Hrivnacova (testem4-V10-06-01) +- Updated README: removed paw instructions (as the HBOOK output + is not supported anymore) + 07-04-20 V.Ivantchenko (testem4-V10-06-00) - do not call vis.mac automatically in interactive mode diff --git a/examples/extended/electromagnetic/TestEm4/README b/examples/extended/electromagnetic/TestEm4/README index 9bf2cecff8..4e8e0b3bd3 100644 --- a/examples/extended/electromagnetic/TestEm4/README +++ b/examples/extended/electromagnetic/TestEm4/README @@ -52,26 +52,12 @@ Idle> type your commands .... Idle> exit - - - visualize the histogram (paw) - paw> h/file 1 testem4.hbook - paw> option stat - paw> option logy - paw> h/pl 1 - 7- USING HISTOGRAMS The format of the histogram file can be : root (default), - hbook, xml, csv, by selecting g4nnn.hh in RunAction.hh - - Using hbook format - ------------------ - - Need a special treatement : the Cern Library must be installed and the - environment variable CERNLIB correctly set. Then, *before* compiling, - activate G4_USE_HBOOK in GNUmakefile and g4hbook.hh in RunAction.hh - + xml, csv, by selecting g4nnn.hh in RunAction.hh + 8- RANDOM NUMBERS HANDLING CLHEP provides several random number engines. In this example the Ranecu diff --git a/examples/extended/electromagnetic/TestEm4/TestEm4.out b/examples/extended/electromagnetic/TestEm4/TestEm4.out index 4c1367e7c9..b732817a72 100644 --- a/examples/extended/electromagnetic/TestEm4/TestEm4.out +++ b/examples/extended/electromagnetic/TestEm4/TestEm4.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -49,9 +49,9 @@ conv: for gamma SubType=14 BuildTable=1 BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -69,9 +69,9 @@ eBrem: for e- SubType=3 eBremLPM : Emin= 1 GeV Emax= 100 TeV ModifiedTsai msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -110,7 +110,7 @@ Region -- -- is not associated to any world. Index : 0 used in the geometry : Yes Material : FluorCarbonate Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 3.65468 keV e- 427.561 keV e+ 416.259 keV proton -1 MeV + Energy thresholds : gamma 3.64604 keV e- 433.376 keV e+ 419.056 keV proton -1 MeV Region(s) which use this couple : DefaultRegionForTheWorld @@ -127,7 +127,8 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Initial seed (index) = 0 Current couple of seeds = 9876, 54321 ---------------------------------------- -... open Root analysis file : testem4.root - done +... create file : testem4.root - done +... open analysis file : testem4.root - done --> Event 0 starts. --> Event 10000 starts. --> Event 20000 starts. @@ -141,14 +142,14 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Run terminated. Run Summary Number of events processed : 100000 - User=1.750000s Real=1.759677s Sys=0.000000s + User=0.650000s Real=0.655895s Sys=0.000000s --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1073488776, 806556264 + Current couple of seeds = 2061705805, 1607203597 ---------------------------------------- -... write Root file : testem4.root - done -... close Root file : testem4.root - done +... write file : testem4.root - done +... close file : testem4.root - done G4 kernel has come to Quit state. UserDetectorConstruction deleted. UserPhysicsList deleted. diff --git a/examples/extended/electromagnetic/TestEm5/.README.txt b/examples/extended/electromagnetic/TestEm5/.README.txt index aad9e68082..dac40e9e53 100644 --- a/examples/extended/electromagnetic/TestEm5/.README.txt +++ b/examples/extended/electromagnetic/TestEm5/.README.txt @@ -154,8 +154,6 @@ - 60 : "energy of G4DNA Auger e- at creation (log scale)" - 61 : "energy of G4DNA gamma at creation (log scale)" - The histograms can be viewed using ROOT or PAW. - One can control the name of the histograms file with the command: \verbatim /analysis/setFileName name (default testem5) @@ -196,8 +194,6 @@ | | gottsch.mac | tramu.mac -------------------------------------------------------- - The relevant part of the GEANT3 code is in the subdirectory geant3 together - with the xxxx.dat input files. \section TestEm5_s9 HOW TO START ? @@ -216,5 +212,53 @@ Idle> control/execute vis.mac Idle> run/beamOn 5 .... \endverbatim - + +Macros provided in this example: +- acosta.mac: Back x-ray emission by 20 keV electrons in Silver. + (E. Acosta et al. Journal of Applied Physics 83(11) 1998 page 6038, + Fig. 4-5-6) + - anthony.mac: LPM and dielectric effect measurement: 25 GeV electrons + through thin foils. + (P.L. Anthony et al. Phys.Rev. D 56 (1997) page 1373.) + - atima.mac: to test PhysListEm19DStandard for ions + - berger.mac: Energy deposit by 1 MeV electrons in silicon counters. + (M.J.Berger et al. NIM 69 (1969) page 181.) + - bichsel.mac: 0.766 MeV protons, transmitted through 1.37 mg/cm2 Al + (H.Bichsel Phys.Rev. 112 (1958) page 182.) + - dedx1.mac: to control dE/dx calculation. + - dedx2.mac: to control dE/dx calculation. High statistic and plot + - dna.mac: to illustrate DNA physics + - fluo.mac: to illustrate atomic deexcitation options + - gammaSpectrum.mac: to plot gamma spectrum with/without atomic deexcitation. + - geom.mac: to play with geometry (can be run interactively with visualization) + - gottsch.mac: 158.6 MeV protons, transmitted through 0.2160 g/cm2 Al + (B.Gottschalk et al. NIM B74 (1993) page 467.) + - hanson.mac: Angle distribution of 15.7 MeV electrons transmitted through + thin gold foils. + (A.O.Hanson et al. Phys.Rev.84 (1951) page 634.) + - hunger.mac: Back scattering of 41 keV electrons. + (H.J. Hunger and L. Kuchler Phys. Stat. Sol.(a) 56, K45 (1979)) + - ion.mac: ion C12 in 1m Iron + - kulchi.mac: 2.25 MeV e-, transmitted through 26.60 mg/cm2 Al + (L.Kulchitsky Phys.Rev. 61 (1941) page 254.) + - mumsc.mac: 100 GeV mu+, transmitted through 1 m of iron + - mutev.mac: 1 TeV mu+, transmitted through 1 m of iron + - pixe.mac: to illustrate atomic deexcitation options + - posi.mac: to test PhysListEm19DStandard for positron + - shen1.mac: Angle distribution of high energy (50-200 GeV/c) protons + transmitted through different targets. + (G. Shen et al. Phys.Rev. D20 (1979) page 1584.) + - shen2.mac: proton 175 GeV/c, transmitted through 8.004 mm Al + (G. Shen et al. Phys.Rev. D20 (1979) page 1584.) + - tavora.mac: Back scattering of 35 keV electrons in Silver. + (L.M. Tavora et al. J.Phys.D: Appl. Phys. 33 (2000) page 2497, + Fig. 7) + - tramu.mac: 1 TeV mu+, transmitted through 3 m of iron + (Rev. of Particle Physics Eur. Phys. Jour. C (2000) page 172. + Rev. of Particle Physics Letters B 592 (2004) page 251.) + - vincour.mac: Angle distribution of 6.56 MeV protons transmitted through + thin silicon targets. + (J.Vincour,P.Bem NIM 148 (1978) page 396.) + - vis.mac - to activate visualization + */ diff --git a/examples/extended/electromagnetic/TestEm5/CMakeLists.txt b/examples/extended/electromagnetic/TestEm5/CMakeLists.txt index f3036fc251..6beef3c28c 100644 --- a/examples/extended/electromagnetic/TestEm5/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm5/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm5) #---------------------------------------------------------------------------- @@ -40,8 +43,7 @@ target_link_libraries(TestEm5 ${Geant4_LIBRARIES} ${HBOOK_LIBRARIES}) # relies on these scripts being in the current working directory. # set(TestEm5_SCRIPTS - acosta.mac anthony.mac atima.mac berger.mac bichsel.mac dedx1.mac dedx2.mac dna.mac fluo.mac gammaSpectrum.mac gottsch.mac hanson.mac hunger.mac ion.mac kulchi.mac mumsc.mac mutev.mac pixe.mac shen1.mac shen2.mac tavora.mac TestEm5.in TestEm5.out tramu.mac vincour.mac vis.mac - ) + acosta.mac anthony.mac atima.mac berger.mac bichsel.mac dedx1.mac dedx2.mac dna.mac gammaSpectrum.mac geom.mac gottsch.mac hanson.mac hunger.mac ion.mac kulchi.mac mumsc.mac mutev.mac pixe.mac shen1.mac shen2.mac tavora.mac TestEm5.in tramu.mac vincour.mac vis.mac pixe.C plotHisto.C) foreach(_script ${TestEm5_SCRIPTS}) configure_file( diff --git a/examples/extended/electromagnetic/TestEm5/History b/examples/extended/electromagnetic/TestEm5/History index 522607d1bc..44799996ab 100644 --- a/examples/extended/electromagnetic/TestEm5/History +++ b/examples/extended/electromagnetic/TestEm5/History @@ -13,7 +13,40 @@ track of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- + +05-10-20 mma (testem5-V10-06-04) +- StackingAction - log histograms : revert to previous version +- clean up of pixe.mac and pixe.C +- remove obsolete fluo.mac + +07-09-20 mma (testem5-V10-06-03) +- Finalize macro & commands review: + - Added remaining macro descriptions + - Added geom.mac for testing remaining commands + and reverted previous modifications in TestEm5.in +31-08-20 I.Hrivnacova (testem5-V10-06-02) +- Macro & commands review: + - Added macro descriptions in README; removed info about geant3 directory + which was removed in the past + - Extended TestEm5.in with commands (missing in testing): + /testem/det/setAbsXpos + /testem/det/setWorldX + /testem/det/setWorldYZ + /testem/det/setWorldMat + /testem/gun/rndm 0.1 + +03-07-20 mma (testem5-V10-06-01) +- update hanson/hanson.C +- add hanson/19um-wwols.ascii and 9um too + Proposed by Weronika Wolszczak (TU Delft University) +- update berger/berger.C + +27-06-20 mma (testem5-V10-06-00) +- TrackingAction - correct weight for solid angle histograms +- update hanson.mac and hanson/hanson.C +- idem for berger.mac + 15-01-19 V.Ivant (testem5-V10-05-00) - StackinAction - fixed all log histograms, which where filled in a wrong way diff --git a/examples/extended/electromagnetic/TestEm5/README b/examples/extended/electromagnetic/TestEm5/README index c9e9fddb5c..1fd7d28158 100644 --- a/examples/extended/electromagnetic/TestEm5/README +++ b/examples/extended/electromagnetic/TestEm5/README @@ -121,8 +121,8 @@ 3 "energy of neutral secondaries at creation" 4 "energy of charged at creation (log10(Ekin))" 5 "energy of neutral at creation (log10(Ekin))" - 6 "x_vertex of charged secondaries (all)" - 7 "x_vertex of charged secondaries (not absorbed)" + 6 "x_vertex of charged secondaries (all)" + 7 "x_vertex of charged secondaries (not absorbed)" 10 "(transmit, charged) : kinetic energy at exit of world" 11 "(transmit, charged) : ener fluence: dE(MeV)/dOmega" 12 "(transmit, charged) : space angle dN/dOmega" @@ -141,20 +141,18 @@ 41 "(reflect , neutral) : ener fluence: dE(MeV)/dOmega" 42 "(reflect , neutral) : space angle dN/dOmega" 43 "(reflect , neutral) : projected angle at exit of world" - 50 "energy of Auger e- at creation" - 51 "energy of fluorescence gamma at creation" - 52 "energy of Auger e- at creation (log scale)" - 53 "energy of fluorescence gamma at creation (log scale)" - 54 "energy of PIXE Auger e- at creation" - 55 "energy of PIXE gamma at creation" - 56 "energy of PIXE Auger e- at creation (log scale)" - 57 "energy of PIXE gamma at creation (log scale)" - 58 "energy of G4DNA Auger e- at creation" - 59 "energy of G4DNA gamma at creation" - 60 "energy of G4DNA Auger e- at creation (log scale)" - 61 "energy of G4DNA gamma at creation (log scale)" - - The histograms can be viewed using ROOT or PAW. + 50 "energy of Auger e- at creation" + 51 "energy of fluorescence gamma at creation" + 52 "energy of Auger e- at creation (log scale)" + 53 "energy of fluorescence gamma at creation (log scale)" + 54 "energy of PIXE Auger e- at creation" + 55 "energy of PIXE gamma at creation" + 56 "energy of PIXE Auger e- at creation (log scale)" + 57 "energy of PIXE gamma at creation (log scale)" + 58 "energy of G4DNA Auger e- at creation" + 59 "energy of G4DNA gamma at creation" + 60 "energy of G4DNA Auger e- at creation (log scale)" + 61 "energy of G4DNA gamma at creation (log scale)" One can control the name of the histograms file with the command: /analysis/setFileName name (default testem5) @@ -185,9 +183,6 @@ others| bichsel.mac | vincour.mac | shen1.mac shen2.mac | | gottsch.mac | tramu.mac -------------------------------------------------------- - - The relevant part of the GEANT3 code is in the subdirectory geant3 together - with the xxxx.dat input files. 9- HOW TO START ? @@ -200,3 +195,51 @@ Idle> control/execute vis.mac Idle> run/beamOn 5 .... + + Macros provided in this example: + - acosta.mac: Back x-ray emission by 20 keV electrons in Silver. + (E. Acosta et al. Journal of Applied Physics 83(11) 1998 page 6038, + Fig. 4-5-6) + - anthony.mac: LPM and dielectric effect measurement: 25 GeV electrons + through thin foils. + (P.L. Anthony et al. Phys.Rev. D 56 (1997) page 1373.) + - atima.mac: to test PhysListEm19DStandard for ions + - berger.mac: Energy deposit by 1 MeV electrons in silicon counters. + (M.J.Berger et al. NIM 69 (1969) page 181.) + - bichsel.mac: 0.766 MeV protons, transmitted through 1.37 mg/cm2 Al + (H.Bichsel Phys.Rev. 112 (1958) page 182.) + - dedx1.mac: to control dE/dx calculation. + - dedx2.mac: to control dE/dx calculation. High statistic and plot + - dna.mac: to illustrate DNA physics + - fluo.mac: to illustrate atomic deexcitation options + - gammaSpectrum.mac: to plot gamma spectrum with/without atomic deexcitation. + - geom.mac: to play with geometry (can be run interactively with visualization) + - gottsch.mac: 158.6 MeV protons, transmitted through 0.2160 g/cm2 Al + (B.Gottschalk et al. NIM B74 (1993) page 467.) + - hanson.mac: Angle distribution of 15.7 MeV electrons transmitted through + thin gold foils. + (A.O.Hanson et al. Phys.Rev.84 (1951) page 634.) + - hunger.mac: Back scattering of 41 keV electrons. + (H.J. Hunger and L. Kuchler Phys. Stat. Sol.(a) 56, K45 (1979)) + - ion.mac: ion C12 in 1m Iron + - kulchi.mac: 2.25 MeV e-, transmitted through 26.60 mg/cm2 Al + (L.Kulchitsky Phys.Rev. 61 (1941) page 254.) + - mumsc.mac: 100 GeV mu+, transmitted through 1 m of iron + - mutev.mac: 1 TeV mu+, transmitted through 1 m of iron + - pixe.mac: to illustrate atomic deexcitation options + - posi.mac: to test PhysListEm19DStandard for positron + - shen1.mac: Angle distribution of high energy (50-200 GeV/c) protons + transmitted through different targets. + (G. Shen et al. Phys.Rev. D20 (1979) page 1584.) + - shen2.mac: proton 175 GeV/c, transmitted through 8.004 mm Al + (G. Shen et al. Phys.Rev. D20 (1979) page 1584.) + - tavora.mac: Back scattering of 35 keV electrons in Silver. + (L.M. Tavora et al. J.Phys.D: Appl. Phys. 33 (2000) page 2497, + Fig. 7) + - tramu.mac: 1 TeV mu+, transmitted through 3 m of iron + (Rev. of Particle Physics Eur. Phys. Jour. C (2000) page 172. + Rev. of Particle Physics Letters B 592 (2004) page 251.) + - vincour.mac: Angle distribution of 6.56 MeV protons transmitted through + thin silicon targets. + (J.Vincour,P.Bem NIM 148 (1978) page 396.) + - vis.mac - to activate visualization diff --git a/examples/extended/electromagnetic/TestEm5/TestEm5.in b/examples/extended/electromagnetic/TestEm5/TestEm5.in index 3afc6b8b10..5996941266 100644 --- a/examples/extended/electromagnetic/TestEm5/TestEm5.in +++ b/examples/extended/electromagnetic/TestEm5/TestEm5.in @@ -9,6 +9,7 @@ /testem/det/setAbsMat Silicon /testem/det/setAbsThick 20 um /testem/det/setAbsYZ 50 um +/testem/det/setAbsXpos 0 um # /testem/phys/addPhysics emstandard_opt3 # diff --git a/examples/extended/electromagnetic/TestEm5/TestEm5.out b/examples/extended/electromagnetic/TestEm5/TestEm5.out index 4f3ef43838..d2ceece3f0 100644 --- a/examples/extended/electromagnetic/TestEm5/TestEm5.out +++ b/examples/extended/electromagnetic/TestEm5/TestEm5.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,30 +12,36 @@ WWW : http://geant4.org/ ************************************************************** -/control/cout/ignoreThreadsExcept 0 -/run/numberOfThreads 2 -*** /run/numberOfThreads command is issued in sequential mode. -Command is ignored. /run/verbose 1 # -/testem/det/setAbsMat Silicon -/testem/det/setAbsThick 20 um -/testem/det/setAbsYZ 50 um +/testem/det/setWorldMat Aluminium +/testem/det/setWorldX 5 cm +/testem/det/setWorldYZ 3 cm # -/testem/phys/addPhysics emstandard_opt3 -PhysicsList::AddPhysicsList: +/testem/det/setAbsMat H2Liq +/testem/det/setAbsThick 3 cm +/testem/det/setAbsYZ 2 cm # -/run/setCut 7 um +/testem/det/setAbsXpos 5 mm # -#/process/em/verbose 1 -/process/em/workerVerbose 0 +/process/em/verbose 0 /run/physicsModified -#/process/eLoss/fluct false +# +##/control/execute vis.mac +##/vis/viewer/zoom 0.8 # /run/initialize - Material: G4_Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc - Imean: 21.800 eV temperature: 2.73 K pressure: 0.00 atm + Material: Aluminium density: 2.700 g/cm3 RadL: 8.893 cm Nucl.Int.Length: 38.880 cm + Imean: 166.000 eV temperature: 293.15 K pressure: 1.00 atm + + ---> Element: Al (Al) Z = 13.0 N = 27 A = 26.982 g/mole + ---> Isotope: Al27 Z = 13 N = 27 A = 26.98 g/mole abundance: 100.000 % + ElmMassFraction: 100.00 % ElmAbundance 100.00 % + + + Material: H2Liq density: 70.800 mg/cm3 RadL: 8.904 m Nucl.Int.Length: 4.944 m + Imean: 19.200 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole ---> Isotope: H1 Z = 1 N = 1 A = 1.01 g/mole abundance: 99.989 % @@ -43,372 +49,31 @@ PhysicsList::AddPhysicsList: ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: Silicon density: 2.330 g/cm3 RadL: 9.366 cm Nucl.Int.Length: 45.660 cm - Imean: 173.000 eV temperature: 293.15 K pressure: 1.00 atm - - ---> Element: Si (Si) Z = 14.0 N = 28 A = 28.085 g/mole - ---> Isotope: Si28 Z = 14 N = 28 A = 27.98 g/mole abundance: 92.230 % - ---> Isotope: Si29 Z = 14 N = 29 A = 28.98 g/mole abundance: 4.683 % - ---> Isotope: Si30 Z = 14 N = 30 A = 29.97 g/mole abundance: 3.087 % - ElmMassFraction: 100.00 % ElmAbundance 100.00 % - - - The WORLD is made of 30 um of G4_Galactic. The transverse size (YZ) of the world is 60 um - The ABSORBER is made of 20 um of Silicon. The transverse size (YZ) is 50 um - X position of the middle of the absorber 0 fm + The WORLD is made of 5 cm of Aluminium. The transverse size (YZ) of the world is 3 cm + The ABSORBER is made of 3 cm of H2Liq. The transverse size (YZ) is 2 cm + X position of the middle of the absorber 5 mm # /testem/gun/setDefault -/gun/particle pi+ -/gun/energy 5 GeV +/gun/particle geantino +/gun/position -20 0 0 mm +/gun/energy 1 eV # -/run/printProgress 10000 -# -/run/beamOn 100000 - -### === Deexcitation model UAtomDeexcitation is activated for 1 region: - DefaultRegionForTheWorld 1 0 0 -### === Ignore cuts flag: 0 - -phot: for gamma SubType=12 BuildTable=0 - LambdaPrime table from 200 keV to 100 TeV in 174 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - LivermorePhElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila Fluo - -compt: for gamma SubType=13 BuildTable=1 - Lambda table from 10 eV to 1 MeV, 20 bins/decade, spline: 1 - LambdaPrime table from 1 MeV to 100 TeV in 160 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - KleinNishina : Emin= 0 eV Emax= 100 TeV Fluo - -conv: for gamma SubType=14 BuildTable=1 - Lambda table from 1.022 MeV to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai - -Rayl: for gamma SubType=11 BuildTable=1 - Lambda table from 10 eV to 100 keV, 20 bins/decade, spline: 0 - LambdaPrime table from 100 keV to 100 TeV in 180 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator - -msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -eIoni: for e- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MollerBhabha : Emin= 0 eV Emax= 100 TeV deltaVI - -eBrem: for e- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS - eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS - -ePairProd: for e- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 25x1001 from 0.1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV - -msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -eIoni: for e+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MollerBhabha : Emin= 0 eV Emax= 100 TeV deltaVI - -eBrem: for e+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS - eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS - -ePairProd: for e+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 25x1001 from 0.1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV - -annihil: for e+, integral:1 SubType=5 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eplus2gg : Emin= 0 eV Emax= 100 TeV - -msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for proton SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax= 2 MeV deltaVI - BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI - -hBrems: for proton SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for proton SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 17x1001 from 7.50618 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -nuclearStopping: for proton SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV - -ionIoni: for GenericIon SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ParamICRU73 : Emin= 0 eV Emax= 100 TeV deltaVI - -nuclearStopping: for GenericIon SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -ionIoni: for alpha SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - BraggIon : Emin= 0 eV Emax=7.9452 MeV deltaVI - BetheBloch : Emin=7.9452 MeV Emax= 100 TeV deltaVI - -nuclearStopping: for alpha SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for anti_proton SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax= 2 MeV deltaVI - BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI - -hBrems: for anti_proton SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for anti_proton SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 17x1001 from 7.50618 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for kaon+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax=1.05231 MeV deltaVI - BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI - -hBrems: for kaon+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for kaon+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 18x1001 from 3.94942 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for kaon- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax=1.05231 MeV deltaVI - BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI - -hBrems: for kaon- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for kaon- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 18x1001 from 3.94942 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -muIoni: for mu+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax= 200 keV deltaVI - BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI - MuBetheBloch : Emin= 1 GeV Emax= 100 TeV - -muBrems: for mu+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV - -muPairProd: for mu+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 21x1001 from 1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -muIoni: for mu- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax= 200 keV deltaVI - BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI - MuBetheBloch : Emin= 1 GeV Emax= 100 TeV - -muBrems: for mu- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV - -muPairProd: for mu- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 21x1001 from 1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for pi+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax=297.505 keV deltaVI - BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI - -hBrems: for pi+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for pi+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 20x1001 from 1.11656 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for pi- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax=297.505 keV deltaVI - BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI - -hBrems: for pi- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for pi- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 20x1001 from 1.11656 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV +/tracking/verbose 2 +/run/beamOn 1 ========= Table of registered couples ============================ Index : 0 used in the geometry : Yes - Material : G4_Galactic - Range cuts : gamma 7 um e- 7 um e+ 7 um proton 7 um - Energy thresholds : gamma 990 eV e- 990 eV e+ 990 eV proton 700 eV + Material : Aluminium + Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm + Energy thresholds : gamma 6.90363 keV e- 598.345 keV e+ 570.85 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 1 used in the geometry : Yes - Material : Silicon - Range cuts : gamma 7 um e- 7 um e+ 7 um proton 7 um - Energy thresholds : gamma 990 eV e- 21.3026 keV e+ 21.0078 keV proton 700 eV + Material : H2Liq + Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm + Energy thresholds : gamma 990 eV e- 109.289 keV e+ 107.83 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -421,43 +86,43 @@ Index : 1 used in the geometry : Yes mixmax state, file version 1.0 N=17 V[N]={906770732717044781, 629165745432651234, 1235682547346241386, 68420008233404568, 2262190991329242458, 2266470399991071809, 1976726662926872232, 245458862506414172, 1955974201201518530, 2155248512522080758, 604170912935414061, 1116171330120743511, 1861018313684488333, 1296715403254578286, 1549011045957234151, 370819759640195970, 2230139271784837643} counter= 17sumtot= 1977567618660788324 --------------------------------------- ---> Event 0 starts. ---> Event 10000 starts. ---> Event 20000 starts. ---> Event 30000 starts. ---> Event 40000 starts. ---> Event 50000 starts. ---> Event 60000 starts. ---> Event 70000 starts. ---> Event 80000 starts. ---> Event 90000 starts. + +********************************************************************************************************* +* G4Track Information: Particle = geantino, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -2 cm 0 fm 0 fm 1 eV 0 eV 0 fm 0 fm World initStep + 1 -1 cm 0 fm 0 fm 1 eV 0 eV 1 cm 1 cm World Transportation + 2 2 cm 0 fm 0 fm 1 eV 0 eV 3 cm 4 cm Absorber Transportation + 3 2.5 cm 0 fm 0 fm 1 eV 0 eV 5 mm 4.5 cm World OutOfWorld Run terminated. Run Summary - Number of events processed : 100000 - User=1.470000s Real=1.495775s Sys=0.000000s + Number of events processed : 1 + User=0.000000s Real=0.000552s Sys=0.000000s ======================== run summary ====================== - The run was 100000 pi+ of 5 GeV through 20 um of Silicon (density: 2.33 g/cm3 ) + The run was 1 geantino of 1 eV through 3 cm of H2Liq (density: 70.8 mg/cm3) - Total energy deposit in absorber per event = 6.342 keV +- 16.21 eV + Total energy deposit in absorber per event = 0 eV +- 0 eV - -----> Mean dE/dx = 3.171 MeV/cm (1.361 MeV*cm2/g) + -----> Mean dE/dx = 0 MeV/cm (0 MeV*cm2/g) From formulas : - restricted dEdx = 2.962 MeV/cm (1.271 MeV*cm2/g) - full dEdx = 4.617 MeV/cm (1.982 MeV*cm2/g) + restricted dEdx = 0 MeV/cm (0 MeV*cm2/g) + full dEdx = 0 MeV/cm (0 MeV*cm2/g) - Leakage : primary = 5 GeV +- 193.6 eV secondaries = 1.448 keV +- 191.8 eV - Energy balance : edep + eleak = 5 GeV + Leakage : primary = 1 eV +- 0 eV secondaries = 0 eV +- 0 eV + Energy balance : edep + eleak = 1 eV - Total track length (charged) in absorber per event = 20.25 um +- 7.665 nm - Total track length (neutral) in absorber per event = 1.444 Ang +- 1.36 Ang + Total track length (charged) in absorber per event = 0 fm +- 0 fm + Total track length (neutral) in absorber per event = 3 cm +- 0 fm - Number of steps (charged) in absorber per event = 1.206 +- 0.006081 - Number of steps (neutral) in absorber per event = 2e-05 +- 1.414e-05 + Number of steps (charged) in absorber per event = 0 +- 0 + Number of steps (neutral) in absorber per event = 1 +- 0 - Number of secondaries per event : Gammas = 2e-05 electrons = 0.0164 positrons = 0 + Number of secondaries per event : Gammas = 0 electrons = 0 positrons = 0 Number of events with the primary particle transmitted = 100 % Number of events with at least 1 particle transmitted (same charge as primary) = 100 % @@ -466,375 +131,33 @@ Run Summary Number of events with at least 1 particle reflected (same charge as primary) = 0 % MultipleScattering: - rms proj angle of transmit primary particle = 0.02499 mrad (central part only) - computed theta0 (Highland formula) = 0.02627 mrad - central part defined as +- 0.07881 mrad Tail ratio = 1.969 % + rms proj angle of transmit primary particle = 0 mrad (central part only) + computed theta0 (Highland formula) = 0 mrad + central part defined as +- 0 mrad Tail ratio = 0 % ------- MixMaxRng engine status ------- Current state vector is: mixmax state, file version 1.0 -N=17 V[N]={233431567787790216, 555447531289805709, 2269296552051100194, 1422729289019401874, 1237674051099920491, 1254434445421885491, 244948745481916494, 643981219730550640, 818054392774987767, 1987042589812555679, 1541244356788054050, 51799790367732829, 829616050902660944, 2272965739692751237, 928025757021934098, 1709908025606590819, 1018977783354403526} counter= 2sumtot= 572833814494490450 +N=17 V[N]={906770732717044781, 629165745432651234, 1235682547346241386, 68420008233404568, 2262190991329242458, 2266470399991071809, 1976726662926872232, 245458862506414172, 1955974201201518530, 2155248512522080758, 604170912935414061, 1116171330120743511, 1861018313684488333, 1296715403254578286, 1549011045957234151, 370819759640195970, 2230139271784837643} counter= 17sumtot= 1977567618660788324 --------------------------------------- +/tracking/verbose 0 # -/testem/det/setAbsMat Gold -/testem/det/setAbsThick 9.658 um -/testem/det/setAbsYZ 1 mm -/testem/gun/setDefault -# Field Should be issued after /run/initialize -#/testem/det/setField 1 tesla -/gun/particle e- -/gun/energy 15.7 MeV -/run/beamOn 50000 - -### === Deexcitation model UAtomDeexcitation is activated for 1 region: - DefaultRegionForTheWorld 1 0 0 -### === Ignore cuts flag: 0 - -phot: for gamma SubType=12 BuildTable=0 - LambdaPrime table from 200 keV to 100 TeV in 174 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - LivermorePhElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila Fluo - -compt: for gamma SubType=13 BuildTable=1 - Lambda table from 10 eV to 1 MeV, 20 bins/decade, spline: 1 - LambdaPrime table from 1 MeV to 100 TeV in 160 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - KleinNishina : Emin= 0 eV Emax= 100 TeV Fluo - -conv: for gamma SubType=14 BuildTable=1 - Lambda table from 1.022 MeV to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai - -Rayl: for gamma SubType=11 BuildTable=1 - Lambda table from 10 eV to 100 keV, 20 bins/decade, spline: 0 - LambdaPrime table from 100 keV to 100 TeV in 180 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator - -msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -eIoni: for e- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MollerBhabha : Emin= 0 eV Emax= 100 TeV deltaVI - -eBrem: for e- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS - eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS - -ePairProd: for e- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 25x1001 from 0.1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV - -msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -eIoni: for e+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MollerBhabha : Emin= 0 eV Emax= 100 TeV deltaVI - -eBrem: for e+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS - eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS - -ePairProd: for e+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 25x1001 from 0.1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV - -annihil: for e+, integral:1 SubType=5 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eplus2gg : Emin= 0 eV Emax= 100 TeV - -msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for proton SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax= 2 MeV deltaVI - BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI - -hBrems: for proton SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for proton SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 17x1001 from 7.50618 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -nuclearStopping: for proton SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV - -ionIoni: for GenericIon SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ParamICRU73 : Emin= 0 eV Emax= 100 TeV deltaVI - -nuclearStopping: for GenericIon SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -ionIoni: for alpha SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - BraggIon : Emin= 0 eV Emax=7.9452 MeV deltaVI - BetheBloch : Emin=7.9452 MeV Emax= 100 TeV deltaVI - -nuclearStopping: for alpha SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for anti_proton SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax= 2 MeV deltaVI - BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI - -hBrems: for anti_proton SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for anti_proton SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 17x1001 from 7.50618 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for kaon+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax=1.05231 MeV deltaVI - BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI - -hBrems: for kaon+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for kaon+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 18x1001 from 3.94942 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for kaon- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax=1.05231 MeV deltaVI - BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI - -hBrems: for kaon- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for kaon- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 18x1001 from 3.94942 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -muIoni: for mu+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax= 200 keV deltaVI - BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI - MuBetheBloch : Emin= 1 GeV Emax= 100 TeV - -muBrems: for mu+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV - -muPairProd: for mu+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 21x1001 from 1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -muIoni: for mu- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax= 200 keV deltaVI - BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI - MuBetheBloch : Emin= 1 GeV Emax= 100 TeV - -muBrems: for mu- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV - -muPairProd: for mu- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 21x1001 from 1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for pi+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax=297.505 keV deltaVI - BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI - -hBrems: for pi+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for pi+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 20x1001 from 1.11656 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for pi- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax=297.505 keV deltaVI - BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI - -hBrems: for pi- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for pi- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 20x1001 from 1.11656 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV +/testem/gun/rndm 0.8 +/run/beamOn 6 ========= Table of registered couples ============================ Index : 0 used in the geometry : Yes - Material : G4_Galactic - Range cuts : gamma 7 um e- 7 um e+ 7 um proton 7 um - Energy thresholds : gamma 990 eV e- 990 eV e+ 990 eV proton 700 eV + Material : Aluminium + Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm + Energy thresholds : gamma 6.90363 keV e- 598.345 keV e+ 570.85 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld -Index : 1 used in the geometry : No - Material : Silicon - Range cuts : gamma 7 um e- 7 um e+ 7 um proton 7 um - Energy thresholds : gamma 990 eV e- 21.3026 keV e+ 21.0078 keV proton 700 eV - -Index : 2 used in the geometry : Yes - Material : Gold - Range cuts : gamma 7 um e- 7 um e+ 7 um proton 7 um - Energy thresholds : gamma 6.54506 keV e- 65.5447 keV e+ 63.812 keV proton 700 eV +Index : 1 used in the geometry : Yes + Material : H2Liq + Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm + Energy thresholds : gamma 990 eV e- 109.289 keV e+ 107.83 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -845,466 +168,35 @@ Index : 2 used in the geometry : Yes ------- MixMaxRng engine status ------- Current state vector is: mixmax state, file version 1.0 -N=17 V[N]={233431567787790216, 555447531289805709, 2269296552051100194, 1422729289019401874, 1237674051099920491, 1254434445421885491, 244948745481916494, 643981219730550640, 818054392774987767, 1987042589812555679, 1541244356788054050, 51799790367732829, 829616050902660944, 2272965739692751237, 928025757021934098, 1709908025606590819, 1018977783354403526} counter= 2sumtot= 572833814494490450 +N=17 V[N]={906770732717044781, 629165745432651234, 1235682547346241386, 68420008233404568, 2262190991329242458, 2266470399991071809, 1976726662926872232, 245458862506414172, 1955974201201518530, 2155248512522080758, 604170912935414061, 1116171330120743511, 1861018313684488333, 1296715403254578286, 1549011045957234151, 370819759640195970, 2230139271784837643} counter= 17sumtot= 1977567618660788324 --------------------------------------- ---> Event 0 starts. ---> Event 10000 starts. ---> Event 20000 starts. ---> Event 30000 starts. ---> Event 40000 starts. Run terminated. Run Summary - Number of events processed : 50000 - User=1.280000s Real=1.295591s Sys=0.000000s + Number of events processed : 6 + User=0.000000s Real=0.000085s Sys=0.000000s ======================== run summary ====================== - The run was 50000 e- of 15.7 MeV through 9.66 um of Gold (density: 19.3 g/cm3 ) + The run was 6 geantino of 1 eV through 3 cm of H2Liq (density: 70.8 mg/cm3) - Total energy deposit in absorber per event = 18.43 keV +- 63.54 eV + Total energy deposit in absorber per event = 0 eV +- 0 eV - -----> Mean dE/dx = 19.08 MeV/cm (0.9875 MeV*cm2/g) + -----> Mean dE/dx = 0 MeV/cm (0 MeV*cm2/g) From formulas : - restricted dEdx = 17.92 MeV/cm (0.9273 MeV*cm2/g) - full dEdx = 61.41 MeV/cm (3.179 MeV*cm2/g) + restricted dEdx = 0 MeV/cm (0 MeV*cm2/g) + full dEdx = 0 MeV/cm (0 MeV*cm2/g) - Leakage : primary = 15.64 MeV +- 2.263 keV secondaries = 41.59 keV +- 2.261 keV - Energy balance : edep + eleak = 15.7 MeV + Leakage : primary = 1 eV +- 0 eV secondaries = 0 eV +- 0 eV + Energy balance : edep + eleak = 1 eV - Total track length (charged) in absorber per event = 9.911 um +- 11.04 nm - Total track length (neutral) in absorber per event = 128.8 nm +- 5.598 nm + Total track length (charged) in absorber per event = 0 fm +- 0 fm + Total track length (neutral) in absorber per event = 3 cm +- 0 fm - Number of steps (charged) in absorber per event = 4.818 +- 0.008651 - Number of steps (neutral) in absorber per event = 0.02774 +- 0.0007612 + Number of steps (charged) in absorber per event = 0 +- 0 + Number of steps (neutral) in absorber per event = 1 +- 0 - Number of secondaries per event : Gammas = 0.0275 electrons = 0.02124 positrons = 0 - - Number of events with the primary particle transmitted = 99.99 % - Number of events with at least 1 particle transmitted (same charge as primary) = 99.99 % - - Number of events with the primary particle reflected = 0.006 % - Number of events with at least 1 particle reflected (same charge as primary) = 0.33 % - - MultipleScattering: - rms proj angle of transmit primary particle = 35.43 mrad (central part only) - computed theta0 (Highland formula) = 35.1 mrad - central part defined as +- 105.3 mrad Tail ratio = 2.943 % - -------- MixMaxRng engine status ------- - Current state vector is: -mixmax state, file version 1.0 -N=17 V[N]={295180376136490684, 232318648484487506, 157343913751163528, 1318641713650373085, 290754505476475743, 843444458754694638, 729208731067246391, 651889462501937392, 1471094355915615486, 1856693949867296549, 532463076108320867, 350720735581261112, 1764168123783296983, 45660876643912892, 305958374414761949, 660134791172614879, 1116374215736158358} counter= 6sumtot= 1092835262977638287 ---------------------------------------- -# -/run/setCut 10 um -# -/testem/det/setAbsMat G4_POLYETHYLENE -/testem/det/setAbsThick 4.74 mm -/testem/det/setAbsYZ 50 mm -/testem/gun/setDefault -/gun/particle mu+ -/gun/energy 96.2 MeV -/run/beamOn 50000 - -### === Deexcitation model UAtomDeexcitation is activated for 1 region: - DefaultRegionForTheWorld 1 0 0 -### === Ignore cuts flag: 0 - -phot: for gamma SubType=12 BuildTable=0 - LambdaPrime table from 200 keV to 100 TeV in 174 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - LivermorePhElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila Fluo - -compt: for gamma SubType=13 BuildTable=1 - Lambda table from 10 eV to 1 MeV, 20 bins/decade, spline: 1 - LambdaPrime table from 1 MeV to 100 TeV in 160 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - KleinNishina : Emin= 0 eV Emax= 100 TeV Fluo - -conv: for gamma SubType=14 BuildTable=1 - Lambda table from 1.022 MeV to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai - -Rayl: for gamma SubType=11 BuildTable=1 - Lambda table from 10 eV to 100 keV, 20 bins/decade, spline: 0 - LambdaPrime table from 100 keV to 100 TeV in 180 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator - -msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -eIoni: for e- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MollerBhabha : Emin= 0 eV Emax= 100 TeV deltaVI - -eBrem: for e- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS - eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS - -ePairProd: for e- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 25x1001 from 0.1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV - -msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -eIoni: for e+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MollerBhabha : Emin= 0 eV Emax= 100 TeV deltaVI - -eBrem: for e+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS - eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS - -ePairProd: for e+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 25x1001 from 0.1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV - -annihil: for e+, integral:1 SubType=5 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eplus2gg : Emin= 0 eV Emax= 100 TeV - -msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for proton SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax= 2 MeV deltaVI - BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI - -hBrems: for proton SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for proton SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 17x1001 from 7.50618 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -nuclearStopping: for proton SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV - -ionIoni: for GenericIon SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ParamICRU73 : Emin= 0 eV Emax= 100 TeV deltaVI - -nuclearStopping: for GenericIon SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -ionIoni: for alpha SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - BraggIon : Emin= 0 eV Emax=7.9452 MeV deltaVI - BetheBloch : Emin=7.9452 MeV Emax= 100 TeV deltaVI - -nuclearStopping: for alpha SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for anti_proton SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax= 2 MeV deltaVI - BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI - -hBrems: for anti_proton SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for anti_proton SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 17x1001 from 7.50618 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for kaon+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax=1.05231 MeV deltaVI - BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI - -hBrems: for kaon+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for kaon+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 18x1001 from 3.94942 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for kaon- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax=1.05231 MeV deltaVI - BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI - -hBrems: for kaon- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for kaon- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 18x1001 from 3.94942 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -muIoni: for mu+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax= 200 keV deltaVI - BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI - MuBetheBloch : Emin= 1 GeV Emax= 100 TeV - -muBrems: for mu+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV - -muPairProd: for mu+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 21x1001 from 1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -muIoni: for mu- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax= 200 keV deltaVI - BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI - MuBetheBloch : Emin= 1 GeV Emax= 100 TeV - -muBrems: for mu- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV - -muPairProd: for mu- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 21x1001 from 1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for pi+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax=297.505 keV deltaVI - BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI - -hBrems: for pi+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for pi+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 20x1001 from 1.11656 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for pi- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax=297.505 keV deltaVI - BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI - -hBrems: for pi- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for pi- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 20x1001 from 1.11656 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -========= Table of registered couples ============================ - -Index : 0 used in the geometry : Yes - Material : G4_Galactic - Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 990 eV e+ 990 eV proton 1 keV - Region(s) which use this couple : - DefaultRegionForTheWorld - -Index : 1 used in the geometry : No - Material : Silicon - Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 31.7971 keV e+ 31.374 keV proton 1 keV - -Index : 2 used in the geometry : No - Material : Gold - Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 8.32972 keV e- 80.6696 keV e+ 79.0648 keV proton 1 keV - -Index : 3 used in the geometry : Yes - Material : G4_POLYETHYLENE - Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 14.0556 keV e+ 13.8466 keV proton 1 keV - Region(s) which use this couple : - DefaultRegionForTheWorld - -================================================================== - -### Run 2 starts. - -------- MixMaxRng engine status ------- - Current state vector is: -mixmax state, file version 1.0 -N=17 V[N]={295180376136490684, 232318648484487506, 157343913751163528, 1318641713650373085, 290754505476475743, 843444458754694638, 729208731067246391, 651889462501937392, 1471094355915615486, 1856693949867296549, 532463076108320867, 350720735581261112, 1764168123783296983, 45660876643912892, 305958374414761949, 660134791172614879, 1116374215736158358} counter= 6sumtot= 1092835262977638287 ---------------------------------------- ---> Event 0 starts. ---> Event 10000 starts. ---> Event 20000 starts. ---> Event 30000 starts. ---> Event 40000 starts. - Run terminated. -Run Summary - Number of events processed : 50000 - User=4.120000s Real=4.126363s Sys=0.000000s - - ======================== run summary ====================== - - The run was 50000 mu+ of 96.2 MeV through 4.74 mm of G4_POLYETHYLENE (density: 940 mg/cm3) - - Total energy deposit in absorber per event = 1.048 MeV +- 997.5 eV - - -----> Mean dE/dx = 2.21 MeV/cm (2.351 MeV*cm2/g) - - From formulas : - restricted dEdx = 1.752 MeV/cm (1.864 MeV*cm2/g) - full dEdx = 2.265 MeV/cm (2.409 MeV*cm2/g) - - Leakage : primary = 95.13 MeV +- 1.363 keV secondaries = 27.05 keV +- 736.1 eV - Energy balance : edep + eleak = 96.2 MeV - - Total track length (charged) in absorber per event = 5.171 mm +- 3.793 um - Total track length (neutral) in absorber per event = 21.97 um +- 2.343 um - - Number of steps (charged) in absorber per event = 12.53 +- 0.04116 - Number of steps (neutral) in absorber per event = 0.00958 +- 0.0004606 - - Number of secondaries per event : Gammas = 0.0091 electrons = 4.068 positrons = 0 + Number of secondaries per event : Gammas = 0 electrons = 0 positrons = 0 Number of events with the primary particle transmitted = 100 % Number of events with at least 1 particle transmitted (same charge as primary) = 100 % @@ -1313,884 +205,18 @@ Run Summary Number of events with at least 1 particle reflected (same charge as primary) = 0 % MultipleScattering: - rms proj angle of transmit primary particle = 7.381 mrad (central part only) - computed theta0 (Highland formula) = 7.636 mrad - central part defined as +- 22.91 mrad Tail ratio = 1.265 % + rms proj angle of transmit primary particle = 0 mrad (central part only) + computed theta0 (Highland formula) = 0 mrad + central part defined as +- 0 mrad Tail ratio = 0 % ------- MixMaxRng engine status ------- Current state vector is: mixmax state, file version 1.0 -N=17 V[N]={1181388817506811660, 534216198285240784, 360615436856035267, 2073566116273787825, 1669359893357395710, 2293523472593834537, 573787093609862501, 504437691504496598, 658461603574185973, 2059173407298472415, 1838912388234027864, 1496820700722412532, 329313304193945702, 1545200569938580590, 506180601661429996, 824249760299885311, 1121888895959975864} counter= 2sumtot= 1124351878160829521 +N=17 V[N]={1977567618660788324, 300890354879745607, 1424437069285335120, 2296497209797367902, 1143472681269825295, 260370018537989708, 668395878522115384, 1090766064544254753, 1931418983504702790, 828618339300030337, 2137373994898626588, 1263575693625627220, 316400124824195510, 274418011581707120, 1512294095604459534, 166310252540771229, 2260588327282429663} counter= 13sumtot= 1406650644950420476 --------------------------------------- -# -/run/setCut 1 mm -# -/testem/stack/killSecondaries -# -/testem/det/setAbsMat Aluminium -/testem/det/setAbsThick 8.004 mm -/testem/gun/setDefault -/gun/particle proton -/gun/energy 174.664 GeV -/run/beamOn 50000 - -### === Deexcitation model UAtomDeexcitation is activated for 1 region: - DefaultRegionForTheWorld 1 0 0 -### === Ignore cuts flag: 0 - -phot: for gamma SubType=12 BuildTable=0 - LambdaPrime table from 200 keV to 100 TeV in 174 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - LivermorePhElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila Fluo - -compt: for gamma SubType=13 BuildTable=1 - Lambda table from 10 eV to 1 MeV, 20 bins/decade, spline: 1 - LambdaPrime table from 1 MeV to 100 TeV in 160 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - KleinNishina : Emin= 0 eV Emax= 100 TeV Fluo - -conv: for gamma SubType=14 BuildTable=1 - Lambda table from 1.022 MeV to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai - -Rayl: for gamma SubType=11 BuildTable=1 - Lambda table from 10 eV to 100 keV, 20 bins/decade, spline: 0 - LambdaPrime table from 100 keV to 100 TeV in 180 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator - -msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -eIoni: for e- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MollerBhabha : Emin= 0 eV Emax= 100 TeV deltaVI - -eBrem: for e- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS - eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS - -ePairProd: for e- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 25x1001 from 0.1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV - -msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -eIoni: for e+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MollerBhabha : Emin= 0 eV Emax= 100 TeV deltaVI - -eBrem: for e+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS - eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS - -ePairProd: for e+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 25x1001 from 0.1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV - -annihil: for e+, integral:1 SubType=5 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eplus2gg : Emin= 0 eV Emax= 100 TeV - -msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for proton SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax= 2 MeV deltaVI - BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI - -hBrems: for proton SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for proton SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 17x1001 from 7.50618 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -nuclearStopping: for proton SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV - -ionIoni: for GenericIon SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ParamICRU73 : Emin= 0 eV Emax= 100 TeV deltaVI - -nuclearStopping: for GenericIon SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -ionIoni: for alpha SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - BraggIon : Emin= 0 eV Emax=7.9452 MeV deltaVI - BetheBloch : Emin=7.9452 MeV Emax= 100 TeV deltaVI - -nuclearStopping: for alpha SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for anti_proton SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax= 2 MeV deltaVI - BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI - -hBrems: for anti_proton SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for anti_proton SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 17x1001 from 7.50618 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for kaon+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax=1.05231 MeV deltaVI - BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI - -hBrems: for kaon+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for kaon+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 18x1001 from 3.94942 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for kaon- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax=1.05231 MeV deltaVI - BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI - -hBrems: for kaon- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for kaon- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 18x1001 from 3.94942 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -muIoni: for mu+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax= 200 keV deltaVI - BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI - MuBetheBloch : Emin= 1 GeV Emax= 100 TeV - -muBrems: for mu+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV - -muPairProd: for mu+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 21x1001 from 1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -muIoni: for mu- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax= 200 keV deltaVI - BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI - MuBetheBloch : Emin= 1 GeV Emax= 100 TeV - -muBrems: for mu- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV - -muPairProd: for mu- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 21x1001 from 1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for pi+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax=297.505 keV deltaVI - BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI - -hBrems: for pi+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for pi+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 20x1001 from 1.11656 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for pi- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax=297.505 keV deltaVI - BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI - -hBrems: for pi- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for pi- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 20x1001 from 1.11656 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -========= Table of registered couples ============================ - -Index : 0 used in the geometry : Yes - Material : G4_Galactic - Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 990 eV e- 990 eV e+ 990 eV proton 100 keV - Region(s) which use this couple : - DefaultRegionForTheWorld - -Index : 1 used in the geometry : No - Material : Silicon - Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.90532 keV e- 544.145 keV e+ 526.224 keV proton 100 keV - -Index : 2 used in the geometry : No - Material : Gold - Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 112.382 keV e- 2.28137 MeV e+ 2.13357 MeV proton 100 keV - -Index : 3 used in the geometry : No - Material : G4_POLYETHYLENE - Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.2564 keV e- 349.731 keV e+ 342.774 keV proton 100 keV - -Index : 4 used in the geometry : Yes - Material : Aluminium - Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.90532 keV e- 597.637 keV e+ 574.097 keV proton 100 keV - Region(s) which use this couple : - DefaultRegionForTheWorld - -================================================================== - -### Run 3 starts. - -------- MixMaxRng engine status ------- - Current state vector is: -mixmax state, file version 1.0 -N=17 V[N]={1181388817506811660, 534216198285240784, 360615436856035267, 2073566116273787825, 1669359893357395710, 2293523472593834537, 573787093609862501, 504437691504496598, 658461603574185973, 2059173407298472415, 1838912388234027864, 1496820700722412532, 329313304193945702, 1545200569938580590, 506180601661429996, 824249760299885311, 1121888895959975864} counter= 2sumtot= 1124351878160829521 ---------------------------------------- ---> Event 0 starts. ---> Event 10000 starts. ---> Event 20000 starts. ---> Event 30000 starts. ---> Event 40000 starts. - Run terminated. -Run Summary - Number of events processed : 50000 - User=0.710000s Real=0.716076s Sys=0.000000s - - ======================== run summary ====================== - - The run was 50000 proton of 175 GeV through 8 mm of Aluminium (density: 2.7 g/cm3 ) - - Total energy deposit in absorber per event = 4.119 MeV +- 26.8 keV - - -----> Mean dE/dx = 5.147 MeV/cm (1.906 MeV*cm2/g) - - From formulas : - restricted dEdx = 4.024 MeV/cm (1.49 MeV*cm2/g) - full dEdx = 5.237 MeV/cm (1.94 MeV*cm2/g) - - Leakage : primary = 174.7 GeV +- 26.82 keV secondaries = 0 eV +- 0 eV - Energy balance : edep + eleak = 174.7 GeV - - Total track length (charged) in absorber per event = 8.004 mm +- 0 fm - Total track length (neutral) in absorber per event = 0 fm +- 0 fm - - Number of steps (charged) in absorber per event = 1.265 +- 0.002303 - Number of steps (neutral) in absorber per event = 0 +- 0 - - Number of secondaries per event : Gammas = 0 electrons = 0.2647 positrons = 0.00062 - - Number of events with the primary particle transmitted = 100 % - Number of events with at least 1 particle transmitted (same charge as primary) = 100 % - - Number of events with the primary particle reflected = 0 % - Number of events with at least 1 particle reflected (same charge as primary) = 0 % - - MultipleScattering: - rms proj angle of transmit primary particle = 0.02051 mrad (central part only) - computed theta0 (Highland formula) = 0.02111 mrad - central part defined as +- 0.06333 mrad Tail ratio = 1.227 % - -------- MixMaxRng engine status ------- - Current state vector is: -mixmax state, file version 1.0 -N=17 V[N]={1902234025926765656, 441939195863190604, 420158988264494770, 2273229670540414762, 1903352703688437564, 1155785503048245563, 1636138592687925673, 219395211032933675, 1081339433244803751, 290094947076852042, 1451986853508290288, 478343426321824080, 177907426347111773, 1487936680009879284, 437694084493912019, 330846783244851830, 60116803861446627} counter= 5sumtot= 1913442273879216255 ---------------------------------------- -# -/testem/det/setAbsMat Iron -/testem/det/setAbsThick 1 m -/testem/gun/setDefault -/gun/particle mu+ -/gun/energy 100 GeV -/run/beamOn 50000 - -### === Deexcitation model UAtomDeexcitation is activated for 1 region: - DefaultRegionForTheWorld 1 0 0 -### === Ignore cuts flag: 0 - -phot: for gamma SubType=12 BuildTable=0 - LambdaPrime table from 200 keV to 100 TeV in 174 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - LivermorePhElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila Fluo - -compt: for gamma SubType=13 BuildTable=1 - Lambda table from 10 eV to 1 MeV, 20 bins/decade, spline: 1 - LambdaPrime table from 1 MeV to 100 TeV in 160 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - KleinNishina : Emin= 0 eV Emax= 100 TeV Fluo - -conv: for gamma SubType=14 BuildTable=1 - Lambda table from 1.022 MeV to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai - -Rayl: for gamma SubType=11 BuildTable=1 - Lambda table from 10 eV to 100 keV, 20 bins/decade, spline: 0 - LambdaPrime table from 100 keV to 100 TeV in 180 bins - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator - -msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -eIoni: for e- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MollerBhabha : Emin= 0 eV Emax= 100 TeV deltaVI - -eBrem: for e- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS - eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS - -ePairProd: for e- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 25x1001 from 0.1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV - -msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -eIoni: for e+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.1 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MollerBhabha : Emin= 0 eV Emax= 100 TeV deltaVI - -eBrem: for e+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS - eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS - -ePairProd: for e+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 25x1001 from 0.1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV - -annihil: for e+, integral:1 SubType=5 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - eplus2gg : Emin= 0 eV Emax= 100 TeV - -msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for proton SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax= 2 MeV deltaVI - BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI - -hBrems: for proton SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for proton SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 17x1001 from 7.50618 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -nuclearStopping: for proton SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV - -ionIoni: for GenericIon SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ParamICRU73 : Emin= 0 eV Emax= 100 TeV deltaVI - -nuclearStopping: for GenericIon SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -ionIoni: for alpha SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - BraggIon : Emin= 0 eV Emax=7.9452 MeV deltaVI - BetheBloch : Emin=7.9452 MeV Emax= 100 TeV deltaVI - -nuclearStopping: for alpha SubType=8 BuildTable=0 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV - -msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for anti_proton SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax= 2 MeV deltaVI - BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI - -hBrems: for anti_proton SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for anti_proton SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 17x1001 from 7.50618 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for kaon+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax=1.05231 MeV deltaVI - BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI - -hBrems: for kaon+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for kaon+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 18x1001 from 3.94942 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for kaon- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax=1.05231 MeV deltaVI - BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI - -hBrems: for kaon- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for kaon- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 18x1001 from 3.94942 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -muIoni: for mu+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax= 200 keV deltaVI - BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI - MuBetheBloch : Emin= 1 GeV Emax= 100 TeV - -muBrems: for mu+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV - -muPairProd: for mu+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 21x1001 from 1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -muIoni: for mu- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax= 200 keV deltaVI - BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI - MuBetheBloch : Emin= 1 GeV Emax= 100 TeV - -muBrems: for mu- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV - -muPairProd: for mu- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 21x1001 from 1 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for pi+ SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - Bragg : Emin= 0 eV Emax=297.505 keV deltaVI - BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI - -hBrems: for pi+ SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for pi+ SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 20x1001 from 1.11656 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV - -hIoni: for pi- SubType=2 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.2, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ICRU73QO : Emin= 0 eV Emax=297.505 keV deltaVI - BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI - -hBrems: for pi- SubType=3 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV - -hPairProd: for pi- SubType=4 - dE/dx and range tables from 10 eV to 100 TeV in 260 bins - Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 20x1001 from 1.11656 GeV to 100 TeV - ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV - -========= Table of registered couples ============================ - -Index : 0 used in the geometry : Yes - Material : G4_Galactic - Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 990 eV e- 990 eV e+ 990 eV proton 100 keV - Region(s) which use this couple : - DefaultRegionForTheWorld - -Index : 1 used in the geometry : No - Material : Silicon - Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.90532 keV e- 544.145 keV e+ 526.224 keV proton 100 keV - -Index : 2 used in the geometry : No - Material : Gold - Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 112.382 keV e- 2.28137 MeV e+ 2.13357 MeV proton 100 keV - -Index : 3 used in the geometry : No - Material : G4_POLYETHYLENE - Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.2564 keV e- 349.731 keV e+ 342.774 keV proton 100 keV - -Index : 4 used in the geometry : No - Material : Aluminium - Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.90532 keV e- 597.637 keV e+ 574.097 keV proton 100 keV - -Index : 5 used in the geometry : Yes - Material : Iron - Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 20.7122 keV e- 1.28245 MeV e+ 1.21554 MeV proton 100 keV - Region(s) which use this couple : - DefaultRegionForTheWorld - -================================================================== - -### Run 4 starts. - -------- MixMaxRng engine status ------- - Current state vector is: -mixmax state, file version 1.0 -N=17 V[N]={1902234025926765656, 441939195863190604, 420158988264494770, 2273229670540414762, 1903352703688437564, 1155785503048245563, 1636138592687925673, 219395211032933675, 1081339433244803751, 290094947076852042, 1451986853508290288, 478343426321824080, 177907426347111773, 1487936680009879284, 437694084493912019, 330846783244851830, 60116803861446627} counter= 5sumtot= 1913442273879216255 ---------------------------------------- ---> Event 0 starts. ---> Event 10000 starts. ---> Event 20000 starts. ---> Event 30000 starts. ---> Event 40000 starts. - Run terminated. -Run Summary - Number of events processed : 50000 - User=10.380000s Real=10.520452s Sys=0.000000s - - ======================== run summary ====================== - - The run was 50000 mu+ of 100 GeV through 1 m of Iron (density: 7.87 g/cm3 ) - - Total energy deposit in absorber per event = 2.159 GeV +- 14.87 MeV - - -----> Mean dE/dx = 21.59 MeV/cm (2.743 MeV*cm2/g) - - From formulas : - restricted dEdx = 11.21 MeV/cm (1.425 MeV*cm2/g) - full dEdx = 21.6 MeV/cm (2.745 MeV*cm2/g) - - Leakage : primary = 97.84 GeV +- 14.88 MeV secondaries = 0 eV +- 0 eV - Energy balance : edep + eleak = 100 GeV - - Total track length (charged) in absorber per event = 1 m +- 5.537 nm - Total track length (neutral) in absorber per event = 0 fm +- 0 fm - - Number of steps (charged) in absorber per event = 47.82 +- 0.03056 - Number of steps (neutral) in absorber per event = 0 +- 0 - - Number of secondaries per event : Gammas = 0.04928 electrons = 46.76 positrons = 1.266 - - Number of events with the primary particle transmitted = 100 % - Number of events with at least 1 particle transmitted (same charge as primary) = 100 % - - Number of events with the primary particle reflected = 0 % - Number of events with at least 1 particle reflected (same charge as primary) = 0 % - - MultipleScattering: - rms proj angle of transmit primary particle = 1.176 mrad (central part only) - computed theta0 (Highland formula) = 1.182 mrad - central part defined as +- 3.546 mrad Tail ratio = 0.58 % - -------- MixMaxRng engine status ------- - Current state vector is: -mixmax state, file version 1.0 -N=17 V[N]={1879078063661954136, 433170317432586701, 2208569455950040201, 1554721281693616745, 2305288001607654172, 128833382146036749, 1680314409170637123, 40556067617038384, 686433573846947840, 671010261301015966, 2143212213257418469, 1648797868951487517, 262226493965103087, 173848257896046386, 2264167566632088047, 847997488294888663, 421357672506004416} counter= 3sumtot= 902838302221012994 ---------------------------------------- -# G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 9 of which, static: 0 -Dynamic pools deleted: 9 / Total memory freed: 0.054 MB +Dynamic pools deleted: 9 / Total memory freed: 0.017 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/electromagnetic/TestEm5/berger.mac b/examples/extended/electromagnetic/TestEm5/berger.mac index 2e043c7fb1..ebc91c02a8 100644 --- a/examples/extended/electromagnetic/TestEm5/berger.mac +++ b/examples/extended/electromagnetic/TestEm5/berger.mac @@ -17,8 +17,8 @@ ###/testem/det/setAbsThick 3 mm /testem/det/setAbsYZ 1 cm # -###/testem/phys/addPhysics emstandard_opt0 /testem/phys/addPhysics local +###/testem/phys/addPhysics emstandard_opt4 # /run/setCut 10 um # @@ -31,6 +31,5 @@ /analysis/setFileName berger/local /analysis/h1/set 1 105 0 1.05 MeV #energy deposit # -/run/printProgress 100000 -# +/run/printProgress 100000 /run/beamOn 1000000 diff --git a/examples/extended/electromagnetic/TestEm5/berger/berger.C b/examples/extended/electromagnetic/TestEm5/berger/berger.C index 530c14daf8..1d1c338d8d 100644 --- a/examples/extended/electromagnetic/TestEm5/berger/berger.C +++ b/examples/extended/electromagnetic/TestEm5/berger/berger.C @@ -2,19 +2,19 @@ gROOT->Reset(); // Draw histograms fill by Geant4 TestEm5 simulation - TFile f1("./msc93.root"); - TH1D* h1 = (TH1D*) f1.Get("1"); + TFile f1("./local.root"); + TH1D* h1 = (TH1D*) f1.Get("h1"); h1->SetTitle("Energy deposited in 530 um of Si by 1 MeV e-"); h1->GetXaxis()->SetTitle("Ekine (MeV)"); h1->GetYaxis()->SetTitle("nb / MeV"); h1->SetStats(kFALSE); // Eliminate statistics box - h1->SetLineColor(1); // black + h1->SetLineColor(kBlue); h1->Draw("HIST"); - TFile f2("./local.root"); - TH1D* h2 = (TH1D*) f2.Get("1"); + TFile f2("./opt4.root"); + TH1D* h2 = (TH1D*) f2.Get("h1"); h2->SetStats(kFALSE); // Eliminate statistics box - h2->SetLineColor(4); // blue + h2->SetLineColor(kRed); h2->Draw("SAME HIST"); /* * e- 1 MeV in Silicon 530 um @@ -23,36 +23,27 @@ * (from 110 keV to 1.03 MeV by bin of 10 keV --> 93 bins) */ - ifstream in; - in.open("530um.ascii"); + ifstream in; + in.open("530um.ascii"); - // First indicate number of data - int nbdata = 0; - in >> nbdata; - - // Create a new histogram with data.acsii values - float x_min = 0.110; - float x_max = 1.030; - TH1F* h3 = new TH1F("h1f","",nbdata,x_min,x_max); - - Float_t x, y; - while (1) { + TMarker *pt; + Double_t x, y; + // First indicate number of data + int nbdata = 0; + in >> nbdata; + for ( int i = 0 ; i < nbdata ; i++ ) { in >> x >> y ; if (!in.good()) break; - h3->Fill(x,y); - } - in.close(); - - // Draw histogram fill by data.acsii values - h3->SetLineColor(2); // red - h3->Draw("SAME"); - - // Print the histograms legend - TLegend *legend = new TLegend(0.6,0.6,0.8,0.8); - legend->AddEntry(h1,"Urban93","l"); - legend->AddEntry(h2,"Urban95","l"); - legend->AddEntry(h3,"Berger data","L"); - legend->Draw(); - + pt = new TMarker(x,y,32); // 32 for open triangle-down + pt->SetMarkerColor(kGreen); + pt->Draw(); + } + in.close(); + // Print the histograms legend + TLegend *legend = new TLegend(0.6,0.6,0.8,0.8); + legend->AddEntry(h1,"local","l"); + legend->AddEntry(h2,"opt4 ","l"); + legend->AddEntry(pt,"Berger data","P"); + legend->Draw(); } diff --git a/examples/extended/electromagnetic/TestEm5/berger/berger.kumac b/examples/extended/electromagnetic/TestEm5/berger/berger.kumac deleted file mode 100644 index 802b0c97e6..0000000000 --- a/examples/extended/electromagnetic/TestEm5/berger/berger.kumac +++ /dev/null @@ -1,83 +0,0 @@ -macro tramu.kumac -* -set * ; opt * -* -filecase keep - -set *fon -40 -set mscf 1.5 - -set ygti 0.5 ; set gsiz 0.35 ; set ymgu 1.5 -set vsiz 0.25 ; set yval 0.3 ; set ylab 0.55 -set asiz 0.25 ; set yhti 0.9 ; set xlab 1.2 - -title 'Energy deposited in 530 um of Si by 1 MeV e-' -* -h/file 1 530um.hbook -* -opt liny -* -set dmod 1 ; set hcol 1 ; set plci 1 -h/pl //lun1/1 -key 0.6 7.6 1 'G4-9.1-ref-00' ! l -* -exec data -* -set dmod 2 ; set hcol 2 ; set plci 2 -h/pl 2 s -key 0.6 7.0 2 'Berger data' ! l -* -atitle 'Ekin (MeV)' 'nb / MeV' - -exec Redraw-Axis -close 1 - -return - -macro data -* -* e- 1 MeV in Silicon 530 um -* M.J. Berger et al. NIM 69 (p.181) 1969 -* distribution of energy deposition -* (from 110 keV to 1.03 MeV by bin of 10 keV --> 93 bins) -* -* *** read data -fname = '530um.ascii' -vector/create nb(1) -vector/read nb [fname] ! 'O' -nbin = nb(1) -* -vector/create vect(2,[nbin]) -vector/read vect [fname] ! 'C' -**vector/write vect ! (1x,f6.1,3x,e12.6) -* -* *** create and fill histogram -Emin= 0.110 -Emax= 1.030 -create/1dhisto 2 'e- 1 MeV in Silicon' [nbin] [Emin] [Emax] -put/contents 2 vect(2) - -**h/pl 2 - -* *** save histo -* -**h/file 111 data.hbook ! n -**hrout 0 - -return - -Macro Redraw-Axis -set plci 1 - X1 = $GRAFINFO('WNXMIN') - X2 = $GRAFINFO('WNXMAX') - Y1 = $GRAFINFO('WNYMIN') - Y2 = $GRAFINFO('WNYMAX') - IS = $GRAFINFO('?FAIS') - IC = $GRAFINFO('?FACI') - Set FAIS 0 ; Set FACI 1 - Box [X1] [X2] [Y1] [Y2] - Set FAIS [IS] ; Set FACI [IC] - Tick XL [X1] ! -* Tick YB ! [Y1] - Return - diff --git a/examples/extended/electromagnetic/TestEm5/fluo.mac b/examples/extended/electromagnetic/TestEm5/fluo.mac deleted file mode 100644 index 51684c0e43..0000000000 --- a/examples/extended/electromagnetic/TestEm5/fluo.mac +++ /dev/null @@ -1,40 +0,0 @@ -# macro file for TestEm5.cc -# -/control/verbose 2 -/control/cout/ignoreThreadsExcept 0 -/run/numberOfThreads 4 -/run/verbose 2 -# -/testem/det/setAbsMat Gold -/testem/det/setAbsThick 50 um -/testem/det/setAbsYZ 50 um -# -/testem/phys/addPhysics emlivermore -# -/run/setCut 10 nm -# -/cuts/setLowEdge 250 eV -# -/process/em/fluoBearden true -# -#/process/em/deexcitation World true true true -#/process/em/fluo true -/process/em/augerCascade true -/process/em/pixe true -/process/em/deexcitationIgnoreCut true -# -/run/initialize -/process/em/printParameters -# -/testem/gun/setDefault -/gun/particle gamma -/gun/energy 1 MeV -# -/analysis/setFileName fluo -# e- and gamma at vertex -/analysis/h1/set 2 1000 0.01 10.01 keV -/analysis/h1/set 3 5000 0.1 500.1 keV -# -/run/printProgress 10000 -# -/run/beamOn 100000 diff --git a/examples/extended/electromagnetic/TestEm5/geom.mac b/examples/extended/electromagnetic/TestEm5/geom.mac new file mode 100644 index 0000000000..1edb590bc4 --- /dev/null +++ b/examples/extended/electromagnetic/TestEm5/geom.mac @@ -0,0 +1,37 @@ +# +# macro file for TestEm5.cc +# +# to play with geometry +# can be run interactively +# +/control/verbose 2 +/run/verbose 1 +# +/testem/det/setWorldMat Aluminium +/testem/det/setWorldX 5 cm +/testem/det/setWorldYZ 3 cm +# +/testem/det/setAbsMat H2Liq +/testem/det/setAbsThick 3 cm +/testem/det/setAbsYZ 2 cm +# +/testem/det/setAbsXpos 5 mm +# +/process/em/verbose 0 +# +##/control/execute vis.mac +##/vis/viewer/zoom 0.8 +# +/run/initialize +# +/testem/gun/setDefault +/gun/particle geantino +/gun/position -20 0 0 mm +/gun/energy 1 eV +# +/tracking/verbose 2 +/run/beamOn 1 +/tracking/verbose 0 +# +/testem/gun/rndm 0.8 +/run/beamOn 6 diff --git a/examples/extended/electromagnetic/TestEm5/hanson.mac b/examples/extended/electromagnetic/TestEm5/hanson.mac index 0b4b4cf004..b76bd82596 100644 --- a/examples/extended/electromagnetic/TestEm5/hanson.mac +++ b/examples/extended/electromagnetic/TestEm5/hanson.mac @@ -17,8 +17,9 @@ /run/setCut 1.12 um /run/setCutForAGivenParticle gamma 13 um # -###/testem/phys/addPhysics emstandard_opt0 /testem/phys/addPhysics local +###/testem/phys/addPhysics emstandard_opt3 + # /run/initialize # @@ -26,9 +27,8 @@ /gun/particle e- /gun/energy 15.7 MeV # -/analysis/setFileName hanson/19um.local +/analysis/setFileName hanson/19um-local /analysis/h1/set 12 120 0 30 deg #space angle # /run/printProgress 100000 -# /run/beamOn 1000000 diff --git a/examples/extended/electromagnetic/TestEm5/hanson/19um-wwols.ascii b/examples/extended/electromagnetic/TestEm5/hanson/19um-wwols.ascii new file mode 100644 index 0000000000..306c136242 --- /dev/null +++ b/examples/extended/electromagnetic/TestEm5/hanson/19um-wwols.ascii @@ -0,0 +1,32 @@ + 25 + 0.28045 0.01809 + 0.70245 0.01775 + 1.16664 0.01709 + 1.96842 0.01409 + 2.51701 0.01166 + 3.19220 0.00929 + 3.52980 0.00754 + 4.16278 0.00578 + 4.71137 0.00443 + 5.00677 0.0036 + 6.27978 0.00204 + 6.40638 0.00172 + 7.20816 0.00111 + 8.05215 6.29098E-4 + 9.27593 3.11939E-4 + 10.37311 1.80007E-4 + 11.34369 1.12059E-4 + 12.39867 7.36091E-5 + 13.54508 4.67004E-5 + 15.19085 2.64428E-5 + 17.13202 1.58488E-5 + 18.81999 1.08473E-5 + 21.82317 5.80239E-6 + 26.33848 2.51954E-6 + 29.80586 1.45393E-6 + + theta dN/Om + Gold 19.296 um + 15.7 MeV + + 06-20 : revised by W. Wolszczak diff --git a/examples/extended/electromagnetic/TestEm5/hanson/9um-wwols.ascii b/examples/extended/electromagnetic/TestEm5/hanson/9um-wwols.ascii new file mode 100644 index 0000000000..11b58f9055 --- /dev/null +++ b/examples/extended/electromagnetic/TestEm5/hanson/9um-wwols.ascii @@ -0,0 +1,31 @@ + 24 + 0.23826 0.04088 + 0.74465 0.03862 + 1.16664 0.03256 + 1.92623 0.02315 + 2.13722 0.01952 + 2.51701 0.01469 + 2.98121 0.01021 + 4.16278 0.00381 + 4.66918 0.00242 + 4.96457 0.00185 + 6.32198 7.0489e-4 + 7.20816 3.36515e-4 + 8.05215 1.7331e-4 + 9.31813 1.01924e-4 + 10.4575 5.9753e-5 + 11.38589 4.08964e-5 + 12.35647 2.6949e-5 + 13.62948 1.87975e-5 + 15.19085 1.08473e-5 + 17.13202 6.88194e-6 + 18.81999 4.89219e-6 + 21.73877 2.61691e-6 + 26.38068 1.20283e-6 + 29.80586 7.34729e-7 + + theta dN/Om + Gold 9.658 um + 15.7 MeV + + 06-20 : revised by W. Wolszczak diff --git a/examples/extended/electromagnetic/TestEm5/hanson/hanson.C b/examples/extended/electromagnetic/TestEm5/hanson/hanson.C index 927d5c5907..bc53d744d6 100644 --- a/examples/extended/electromagnetic/TestEm5/hanson/hanson.C +++ b/examples/extended/electromagnetic/TestEm5/hanson/hanson.C @@ -3,24 +3,24 @@ gROOT->Reset(); // Draw histograms fill by Geant4 TestEm11 simulation - TFile f1("./19um.opt0.root"); - TH1D* h1 = (TH1D*) f1.Get("12"); + TFile f1("./19um-local.root"); + TH1D* h1 = (TH1D*) f1.Get("h12"); h1->SetTitle("Angular distribution of 15.7 MeV e- after 19um Au foil"); //h1->SetTitle("Angular distribution of 15.7 MeV e- after 9um Au foil"); h1->GetXaxis()->SetTitle("theta (deg)"); h1->GetYaxis()->SetTitle("dN/dOmega"); h1->SetStats(kFALSE); // Eliminate statistics box - h1->SetLineColor(kBlack); + h1->SetLineColor(kOrange); h1->Draw("HIST"); - TFile f2("./19um.opt3.root"); - TH1D* h2 = (TH1D*) f2.Get("12"); + TFile f2("./19um-opt3.root"); + TH1D* h2 = (TH1D*) f2.Get("h12"); h2->SetStats(kFALSE); // Eliminate statistics box h2->SetLineColor(kBlue); h2->Draw("SAME HIST"); - TFile f3("./19um.local.root"); - TH1D* h3 = (TH1D*) f3.Get("12"); + TFile f3("./19um-opt4.root"); + TH1D* h3 = (TH1D*) f3.Get("h12"); h3->SetStats(kFALSE); // Eliminate statistics box h3->SetLineColor(kGreen); h3->Draw("SAME HIST"); @@ -32,8 +32,8 @@ */ ifstream in; - in.open("./19um.ascii"); - //in.open("./9um.ascii"); + in.open("./19um-wwols.ascii"); + //in.open("./9um-wwols.ascii"); TMarker *pt; Double_t x, y; @@ -43,17 +43,17 @@ for ( int i = 0 ; i < nbdata ; i++ ) { in >> x >> y ; if (!in.good()) break; - pt = new TMarker(x,y,22); // 22 for triangle TMatker - pt->SetMarkerColor(kRed); + pt = new TMarker(x,y,23); // 23 for triangle-down TMarker + pt->SetMarkerColor(kMagenta); pt->Draw(); } in.close(); // Print the histograms legend TLegend* legend = new TLegend(0.6,0.5,0.8,0.68); - legend->AddEntry(h1,"opt0 ","l"); + legend->AddEntry(h1,"local ","l"); legend->AddEntry(h2,"opt3 ","l"); - legend->AddEntry(h3,"local","l"); + legend->AddEntry(h3,"opt4","l"); legend->AddEntry(pt,"Hanson data","P"); legend->Draw(); } diff --git a/examples/extended/electromagnetic/TestEm5/hanson/hanson.kumac b/examples/extended/electromagnetic/TestEm5/hanson/hanson.kumac deleted file mode 100644 index 6858db3e40..0000000000 --- a/examples/extended/electromagnetic/TestEm5/hanson/hanson.kumac +++ /dev/null @@ -1,70 +0,0 @@ -macro hanson.kumac -* -set * ; opt * -* -filecase keep - -set *fon -40 -set mscf 1.5 - -set ygti 0.5 ; set gsiz 0.35 ; set ymgu 1.5 -set vsiz 0.25 ; set yval 0.3 ; set ylab 0.55 -set asiz 0.25 ; set yhti 0.9 ; set xlab 1.2 -* -title 'Angular distribution of 15.7 MeV e- after 9um Au foil' -* -h/file 1 19um.opt0.hbook -* -h/list -* -opt liny -* -set dmod 1 ; set hcol 1 ; set plci 1 -h/pl //lun1/12 -key 0.6 3.0 1 '9.4-opt0' ! l -atitle 'theta(deg)' 'dN/dOm' - -* *** data -* angle distribution of 15.7 MeV electrons -* transmitted through thin gold foils. -* A.O.Hanson et al. Phys.Rev.84 (1951) page 634. -* -fname = '19um.ascii' -vector/create nb(1) -vector/read nb [fname] ! 'O' -nbin = nb(1) -vector/create vect(2,[nbin]) -vector/read vect [fname] ! 'C' -***vector/write vect ! (1x,f6.4,3x,f5.3) - -set mtyp 22 -set pmci 2 -graph [nbin] vect(1) vect(2) P - -vector/create xmark(1) -vector/create mark(1) -vector/input xmark 0.57 -vector/input mark 2.85 -graph 1 xmark mark P -itx 0.64 2.8 'Hanson data' - -exec Redraw-Axis - -return - -Macro Redraw-Axis -set plci 1 - X1 = $GRAFINFO('WNXMIN') - X2 = $GRAFINFO('WNXMAX') - Y1 = $GRAFINFO('WNYMIN') - Y2 = $GRAFINFO('WNYMAX') - IS = $GRAFINFO('?FAIS') - IC = $GRAFINFO('?FACI') - Set FAIS 0 ; Set FACI 1 - Box [X1] [X2] [Y1] [Y2] - Set FAIS [IS] ; Set FACI [IC] - Tick XL [X1] ! -* Tick YB ! [Y1] - Return - - diff --git a/examples/extended/electromagnetic/TestEm5/pixe.C b/examples/extended/electromagnetic/TestEm5/pixe.C index 377dbf0dee..b33fd99a5c 100644 --- a/examples/extended/electromagnetic/TestEm5/pixe.C +++ b/examples/extended/electromagnetic/TestEm5/pixe.C @@ -1,23 +1,43 @@ +// ROOT macro file for plotting example B4 histograms +// +// Can be run from ROOT session: +// root[0] .x plotHisto.C + { gROOT->Reset(); + gROOT->SetStyle("Plain"); // Draw histos filled by Geant4 simulation // - TFile f = TFile("pixe.root"); - TCanvas* c1 = new TCanvas("c1", " "); - c1->SetLogy(1); - c1->cd(); - c1->Update(); - - TH1D* hist1 = (TH1D*)f.Get("h3"); - hist1->Draw("HIST"); - - TH1D* hist2 = (TH1D*)f.Get("h5"); - hist2->Draw("HIST"); - - TH1D* hist3 = (TH1D*)f.Get("h20"); - hist3->Draw("HIST"); + + // Open file filled by Geant4 simulation + TFile f("pixe.root"); + + // Create a canvas and divide it into 2x2 pads + TCanvas* c1 = new TCanvas("c1", "", 20, 20, 1000, 1000); + c1->Divide(2,2); - TH1D* hist4 = (TH1D*)f.Get("h40"); - hist4->Draw("HIST"); + // Draw pixe in the pad 1 + c1->cd(1); + gPad->SetLogy(1); + gPad->SetGridy(1); + TH1D* hist1 = (TH1D*)f.Get("h55"); + hist1->SetLineColor(kBlue); + hist1->Draw("HIST"); + + // Draw deexcitation in the pad 2 + c1->cd(2); + gPad->SetLogy(1); + gPad->SetGridy(0); + TH1D* hist2 = (TH1D*)f.Get("h51"); + hist2->SetLineColor(kBlue); + hist2->Draw("HIST"); + + // Draw total in the pad 3 + c1->cd(3); + gPad->SetLogy(1); + gPad->SetGridy(1); + TH1D* hist3 = (TH1D*)f.Get("h3"); + hist3->SetLineColor(kRed); + hist3->Draw("HIST"); } diff --git a/examples/extended/electromagnetic/TestEm5/pixe.mac b/examples/extended/electromagnetic/TestEm5/pixe.mac index 5e3aaddf2c..52f0f70882 100644 --- a/examples/extended/electromagnetic/TestEm5/pixe.mac +++ b/examples/extended/electromagnetic/TestEm5/pixe.mac @@ -2,51 +2,50 @@ # /control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # -/testem/det/setAbsMat G4_Au +/testem/det/setAbsMat Gold /testem/det/setAbsThick 50 um /testem/det/setAbsYZ 50 um # -/testem/phys/addPhysics emlivermore -#/testem/phys/addPhysics empenelope +/testem/phys/addPhysics emstandard_opt4 +###/testem/phys/addPhysics emlivermore # -/run/setCut 0.01 mm +/run/setCut 2 um /run/setCutForAGivenParticle gamma 0.5 um # -/process/em/deexcitationIgnoreCut true -#/process/em/deexcitation world true false true -/process/em/fluo true +# to (de)activate pixe or atomic deexcitation /process/em/pixe true -/process/em/auger true /process/em/augerCascade true +/process/em/deexcitationIgnoreCut true +# +/process/em/verbose 0 +/process/em/printParameters # /run/initialize # /testem/gun/setDefault -/gun/particle e- -#/gun/particle proton +/gun/particle proton /gun/energy 20 MeV +# +# to be run interactively +###/control/execute vis.mac +###/tracking/verbose 2 +###/run/beamOn 1 # /analysis/setFileName pixe -/analysis/h1/set 3 100 0 0.1 MeV #gamma: energy at vertex -/analysis/h1/set 5 100 0.001 0.1 MeV log10 #gamma: energy at vertex (log scale) -/analysis/h1/set 51 100 0 0.1 MeV #gamma: energy at vertex -/analysis/h1/set 53 100 0.001 0.1 MeV log10 #gamma: energy at vertex (log scale) -/analysis/h1/set 55 100 0 0.1 MeV #gamma: energy at vertex -/analysis/h1/set 57 100 0.001 0.1 MeV log10 #gamma: energy at vertex (log scale) -/analysis/h1/set 20 100 0 0.1 MeV #gamma: energy at exit -/analysis/h1/set 40 100 0 0.1 MeV #gamma: energy at back +/analysis/h1/set 3 1000 0 100 keV #all gamma: energy at vertex +/analysis/h1/set 51 1000 0 100 keV #deexcitation +/analysis/h1/set 55 1000 0 100 keV #pixe # -/analysis/h1/set 2 100 0 0.1 MeV #e-: energy at vertex -/analysis/h1/set 4 100 0.001 0.1 MeV log10 #e-: energy at vertex (log scale) -/analysis/h1/set 50 100 0 0.1 MeV #e-: energy at vertex -/analysis/h1/set 52 100 0.001 0.1 MeV log10 #e-: energy at vertex (log scale) -/analysis/h1/set 54 100 0 0.1 MeV #e-: energy at vertex -/analysis/h1/set 56 100 0.001 0.1 MeV log10 #e-: energy at vertex (log scale) -/analysis/h1/set 10 100 0 0.1 MeV #e-: energy at exit -/analysis/h1/set 30 100 0 0.1 MeV #e-: energy at back +/analysis/h1/set 2 500 0 50 keV #all e-: energy at vertex +/analysis/h1/set 50 200 0 20 keV #deexcitation +/analysis/h1/set 54 200 0 20 keV #pixe # -/run/printProgress 10000 -# -/run/beamOn 10000 +/analysis/h1/set 4 500 0.01 50 keV log10 #all e-: energy at vertex +/analysis/h1/set 52 200 0.01 20 keV log10 #deexcitation +/analysis/h1/set 56 200 0.01 20 keV log10 #pixe +# +/tracking/verbose 0 +/run/printProgress 10000 +/run/beamOn 100000 diff --git a/examples/extended/electromagnetic/TestEm5/src/StackingAction.cc b/examples/extended/electromagnetic/TestEm5/src/StackingAction.cc index 3c724e160c..bd5c2148b5 100644 --- a/examples/extended/electromagnetic/TestEm5/src/StackingAction.cc +++ b/examples/extended/electromagnetic/TestEm5/src/StackingAction.cc @@ -40,8 +40,6 @@ #include "G4RunManager.hh" #include "G4Track.hh" -#include "G4SystemOfUnits.hh" - //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... StackingAction::StackingAction(EventAction* EA) @@ -128,18 +126,17 @@ StackingAction::ClassifyNewTrack(const G4Track* aTrack) //energy spectrum of secondaries // G4double energy = aTrack->GetKineticEnergy(); - G4double loge = (energy > 0.) ? std::log10(energy/CLHEP::MeV) : -100.; G4double charge = aTrack->GetDefinition()->GetPDGCharge(); if (charge != 0.) { analysisManager->FillH1(2,energy); - analysisManager->FillH1(4,loge); + analysisManager->FillH1(4,energy); if(idx == fPhotoAuger || idx == fComptAuger) { analysisManager->FillH1(50,energy); - analysisManager->FillH1(52,loge); + analysisManager->FillH1(52,energy); } else if(idx == fPixeAuger) { analysisManager->FillH1(54,energy); - analysisManager->FillH1(56,loge); + analysisManager->FillH1(56,energy); } else if(idx == fElectronDNAAuger || idx == fProtonDNAAuger || idx == fHydrogenDNAAuger || @@ -148,19 +145,19 @@ StackingAction::ClassifyNewTrack(const G4Track* aTrack) idx == fHeliumDNAAuger || idx == fGenericIonDNAAuger) { analysisManager->FillH1(58,energy); - analysisManager->FillH1(60,loge); + analysisManager->FillH1(60,energy); } } if (aTrack->GetDefinition() == G4Gamma::Gamma()) { analysisManager->FillH1(3,energy); - analysisManager->FillH1(5,loge); + analysisManager->FillH1(5,energy); if(idx == fPhotoGamma || idx == fComptGamma) { analysisManager->FillH1(51,energy); - analysisManager->FillH1(53,loge); + analysisManager->FillH1(53,energy); } else if(idx == fPixeGamma) { analysisManager->FillH1(55,energy); - analysisManager->FillH1(57,loge); + analysisManager->FillH1(57,energy); } else if(idx == fElectronDNAGamma || idx == fProtonDNAGamma || idx == fHydrogenDNAGamma || @@ -169,7 +166,7 @@ StackingAction::ClassifyNewTrack(const G4Track* aTrack) idx == fHeliumDNAGamma || idx == fGenericIonDNAGamma) { analysisManager->FillH1(59,energy); - analysisManager->FillH1(61,loge); + analysisManager->FillH1(61,energy); } } diff --git a/examples/extended/electromagnetic/TestEm5/src/TrackingAction.cc b/examples/extended/electromagnetic/TestEm5/src/TrackingAction.cc index 905fe761bf..d4704a3258 100644 --- a/examples/extended/electromagnetic/TestEm5/src/TrackingAction.cc +++ b/examples/extended/electromagnetic/TestEm5/src/TrackingAction.cc @@ -137,7 +137,7 @@ void TrackingAction::PostUserTrackingAction(const G4Track* aTrack) if (theta > 0.0) { G4double dteta = analysisManager->GetH1Width(id); G4double unit = analysisManager->GetH1Unit(id); - G4double weight = (unit*unit)/(twopi*std::sin(theta)*dteta); + G4double weight = unit/(twopi*std::sin(theta)*dteta); /* G4cout << "theta, dteta, unit, weight: " << theta << " " @@ -162,7 +162,7 @@ void TrackingAction::PostUserTrackingAction(const G4Track* aTrack) if (theta > 0.0) { G4double dteta = analysisManager->GetH1Width(id); G4double unit = analysisManager->GetH1Unit(id); - G4double weight = (unit*unit)/(twopi*std::sin(theta)*dteta); + G4double weight = unit/(twopi*std::sin(theta)*dteta); weight *= (aTrack->GetKineticEnergy()/MeV); analysisManager->FillH1(id,theta,weight); } diff --git a/examples/extended/electromagnetic/TestEm6/CMakeLists.txt b/examples/extended/electromagnetic/TestEm6/CMakeLists.txt index 2269a28699..2019d7a41d 100644 --- a/examples/extended/electromagnetic/TestEm6/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm6/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm6) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm6/TestEm6.out b/examples/extended/electromagnetic/TestEm6/TestEm6.out index 1f14ea0961..3a94e20c5a 100644 --- a/examples/extended/electromagnetic/TestEm6/TestEm6.out +++ b/examples/extended/electromagnetic/TestEm6/TestEm6.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -132,23 +132,23 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics ### Run 0 starts. ### Run 0 start. ###RunAction::BeginOfRunAction Material:Iron -... create Root H1 : h1 - done -... create Root H1 : h2 - done -... create Root H1 : h3 - done -... create Root H1 : h4 - done -... create Root H1 : h5 - done -... create Root H1 : h6 - done -... create Root H1 : h7 - done -... create Root H1 : h8 - done -... create Root H1 : h9 - done -... create Root H1 : h10 - done -... create Root H1 : h11 - done -... create Root H1 : h12 - done -... create Root H1 : h13 - done -... create Root H1 : h14 - done -... create Root H1 : h15 - done -... create Root H1 : h16 - done -... create Root H1 : h17 - done +... create H1 : h1 - done +... create H1 : h2 - done +... create H1 : h3 - done +... create H1 : h4 - done +... create H1 : h5 - done +... create H1 : h6 - done +... create H1 : h7 - done +... create H1 : h8 - done +... create H1 : h9 - done +... create H1 : h10 - done +... create H1 : h11 - done +... create H1 : h12 - done +... create H1 : h13 - done +... create H1 : h14 - done +... create H1 : h15 - done +... create H1 : h16 - done +... create H1 : h17 - done ----> Histogram file is opened in testem6_0.root @@ -194,10 +194,11 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Run terminated. Run Summary Number of events processed : 5 - User=0.000000s Real=0.000936s Sys=0.000000s + User=0.000000s Real=0.002540s Sys=0.000000s - Number of process calls ---> GammaToMuPair : 5... write Root file : testem6_0.root - done -... close Root file : testem6_0.root - done + Number of process calls ---> GammaToMuPair : 5... write file : testem6_0.root - done +... write files - done +... close file : testem6_0.root - done # /gun/particle e+ @@ -237,23 +238,23 @@ Index : 0 used in the geometry : Yes ### Run 1 starts. ### Run 1 start. ###RunAction::BeginOfRunAction Material:Iron -... create Root H1 : h1 - done -... create Root H1 : h2 - done -... create Root H1 : h3 - done -... create Root H1 : h4 - done -... create Root H1 : h5 - done -... create Root H1 : h6 - done -... create Root H1 : h7 - done -... create Root H1 : h8 - done -... create Root H1 : h9 - done -... create Root H1 : h10 - done -... create Root H1 : h11 - done -... create Root H1 : h12 - done -... create Root H1 : h13 - done -... create Root H1 : h14 - done -... create Root H1 : h15 - done -... create Root H1 : h16 - done -... create Root H1 : h17 - done +... create H1 : h1 - done +... create H1 : h2 - done +... create H1 : h3 - done +... create H1 : h4 - done +... create H1 : h5 - done +... create H1 : h6 - done +... create H1 : h7 - done +... create H1 : h8 - done +... create H1 : h9 - done +... create H1 : h10 - done +... create H1 : h11 - done +... create H1 : h12 - done +... create H1 : h13 - done +... create H1 : h14 - done +... create H1 : h15 - done +... create H1 : h16 - done +... create H1 : h17 - done ----> Histogram file is opened in testem6_1.root @@ -300,10 +301,11 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Run terminated. Run Summary Number of events processed : 5 - User=0.000000s Real=0.000491s Sys=0.000000s + User=0.000000s Real=0.000677s Sys=0.000000s - Number of process calls ---> ee2hadr : 5 AnnihiToMuPair : 1... write Root file : testem6_1.root - done -... close Root file : testem6_1.root - done + Number of process calls ---> ee2hadr : 5 AnnihiToMuPair : 1... write file : testem6_1.root - done +... write files - done +... close file : testem6_1.root - done # #/gun/particle anti_proton diff --git a/examples/extended/electromagnetic/TestEm7/CMakeLists.txt b/examples/extended/electromagnetic/TestEm7/CMakeLists.txt index 8a550de88e..cf2ae1f846 100644 --- a/examples/extended/electromagnetic/TestEm7/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm7/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm7) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm7/TestEm7.out b/examples/extended/electromagnetic/TestEm7/TestEm7.out index 05f14bdda0..c6b5740567 100644 --- a/examples/extended/electromagnetic/TestEm7/TestEm7.out +++ b/examples/extended/electromagnetic/TestEm7/TestEm7.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -90,7 +90,7 @@ ElmMassFraction: 30.00 % ElmAbundance 27.29 % - Material: TechVacuum density: 0.010 kg/m3 RadL: 36.786 km Nucl.Int.Length: 85.486 km + Material: TechVacuum density: 0.010 mg/cm3 RadL: 36.786 km Nucl.Int.Length: 85.486 km Imean: 85.703 eV temperature: 273.15 K pressure: 0.02 atm ---> Element: Nitrogen (N) Z = 7.0 N = 14 A = 14.010 g/mole @@ -105,7 +105,7 @@ ElmMassFraction: 30.00 % ElmAbundance 27.29 % - Material: Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -162,9 +162,9 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -186,12 +186,12 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -213,16 +213,16 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -236,23 +236,23 @@ hBrems: for proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi nuclearStopping: for proton SubType=8 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -266,9 +266,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -283,9 +283,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -299,19 +299,19 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -325,19 +325,19 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -351,19 +351,19 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -378,19 +378,19 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -405,19 +405,19 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -431,19 +431,19 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -457,14 +457,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi ========= Table of registered couples ============================ @@ -478,7 +478,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.92994 keV e- 349.731 keV e+ 342.774 keV proton 100 keV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -504,28 +504,28 @@ Index : 1 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 10000 - User=9.080000s Real=9.148133s Sys=0.010000s + User=4.810000s Real=5.187354s Sys=0.000000s The run consists of 10000 proton of 160 MeV through 20 cm of G4_WATER (density: 1 g/cm3 ) - Projected Range= 17.5157 cm rms= 2.85293 mm - Mean number of primary steps = 186.034 - Total energy deposit= 160 MeV - niel energy deposit = 124.995 eV + Projected Range= 17.5295 cm rms= 3.2213 mm + Mean number of primary steps = 186.178 + Total energy deposit= 159.994 MeV + niel energy deposit = 123.79 eV --------------------------------------------------------- Cumulated Doses : Edep Edep/Ebeam Dose - tally 0: 4.54869 GeV 0.284293 % 9.10975e-05 Gy - tally 1: 4.92986 GeV 0.308116 % 9.87313e-05 Gy - tally 2: 3.06624 GeV 0.19164 % 6.14082e-05 Gy - tally 3: 1.82868 GeV 0.114292 % 3.66233e-05 Gy + tally 0: 4.66235 GeV 0.291397 % 9.33739e-05 Gy + tally 1: 4.95252 GeV 0.309533 % 9.91852e-05 Gy + tally 2: 3.01408 GeV 0.18838 % 6.03635e-05 Gy + tally 3: 1.81309 GeV 0.113318 % 3.63111e-05 Gy --------------------------------------------------------- --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 955847234, 1799753420 + Current couple of seeds = 1392699262, 2045459836 ---------------------------------------- /gun/particle ion /gun/ion 6 12 6 @@ -545,7 +545,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.92994 keV e- 349.731 keV e+ 342.774 keV proton 100 keV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -556,34 +556,34 @@ Index : 1 used in the geometry : Yes --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 955847234, 1799753420 + Current couple of seeds = 1392699262, 2045459836 ---------------------------------------- --> Event 0 starts. Run terminated. Run Summary Number of events processed : 1000 - User=11.390000s Real=11.516112s Sys=0.000000s + User=1.640000s Real=1.944537s Sys=0.010000s The run consists of 1000 C12 of 3.5 GeV through 20 cm of G4_WATER (density: 1 g/cm3 ) - Projected Range= 16.4812 cm rms= 479.129 um - Mean number of primary steps = 151.062 + Projected Range= 16.4816 cm rms= 469.313 um + Mean number of primary steps = 149.781 Total energy deposit= 3.49998 GeV - niel energy deposit = 202.502 keV + niel energy deposit = 202.639 keV --------------------------------------------------------- Cumulated Doses : Edep Edep/Ebeam Dose - tally 0: 11.2347 GeV 0.320993 % 0.000225001 Gy - tally 1: 13.2738 GeV 0.379251 % 0.000265837 Gy - tally 2: 16.3083 GeV 0.465951 % 0.000326609 Gy - tally 3: 24.2854 GeV 0.693867 % 0.000486368 Gy + tally 0: 11.6014 GeV 0.33147 % 0.000232344 Gy + tally 1: 13.3449 GeV 0.381282 % 0.000267261 Gy + tally 2: 16.3974 GeV 0.468498 % 0.000328395 Gy + tally 3: 23.4595 GeV 0.67027 % 0.000469827 Gy --------------------------------------------------------- --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1767424545, 94744220 + Current couple of seeds = 691829801, 1496686629 ---------------------------------------- /testem/det/tallyNumber 0 /testem/det/setMat G4_Cu @@ -618,9 +618,9 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -642,12 +642,12 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -669,16 +669,16 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -692,23 +692,23 @@ hBrems: for proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi nuclearStopping: for proton SubType=8 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -722,9 +722,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -739,9 +739,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -755,19 +755,19 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -781,19 +781,19 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -807,19 +807,19 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -834,19 +834,19 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -861,19 +861,19 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -887,19 +887,19 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -913,14 +913,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi ========= Table of registered couples ============================ @@ -934,14 +934,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.92994 keV e- 349.731 keV e+ 342.774 keV proton 100 keV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_Cu Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 24.8178 keV e- 1.40852 MeV e+ 1.31727 MeV proton 100 keV + Energy thresholds : gamma 24.7508 keV e- 1.39534 MeV e+ 1.31345 MeV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -952,24 +952,24 @@ Index : 2 used in the geometry : Yes --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1767424545, 94744220 + Current couple of seeds = 691829801, 1496686629 ---------------------------------------- --> Event 0 starts. Run terminated. Run Summary Number of events processed : 1000 - User=3.510000s Real=3.643538s Sys=0.000000s + User=1.140000s Real=1.414891s Sys=0.000000s The run consists of 1000 kaon+ of 100 MeV through 20 cm of G4_Cu (density: 8.96 g/cm3 ) - Projected Range= 2.15934 cm rms= 1.18084 mm - Mean number of primary steps = 20.183 - Total energy deposit= 282.79 MeV + Projected Range= 2.15117 cm rms= 1.68877 mm + Mean number of primary steps = 20.041 + Total energy deposit= 288.099 MeV niel energy deposit = 0 eV --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 683530201, 373498784 + Current couple of seeds = 1858636379, 1175175466 ---------------------------------------- /testem/det/setMat TechVacuum /gun/particle alpha @@ -1003,9 +1003,9 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1027,12 +1027,12 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1054,16 +1054,16 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1077,23 +1077,23 @@ hBrems: for proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi nuclearStopping: for proton SubType=8 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1107,9 +1107,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1124,9 +1124,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1140,19 +1140,19 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1166,19 +1166,19 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1192,19 +1192,19 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1219,19 +1219,19 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1246,19 +1246,19 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1272,19 +1272,19 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1298,14 +1298,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi ========= Table of registered couples ============================ @@ -1319,14 +1319,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.92994 keV e- 349.731 keV e+ 342.774 keV proton 100 keV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : No Material : G4_Cu Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 24.8178 keV e- 1.40852 MeV e+ 1.31727 MeV proton 100 keV + Energy thresholds : gamma 24.7508 keV e- 1.39534 MeV e+ 1.31345 MeV proton 100 keV Index : 3 used in the geometry : Yes Material : TechVacuum @@ -1342,15 +1342,15 @@ Index : 3 used in the geometry : Yes --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 683530201, 373498784 + Current couple of seeds = 1858636379, 1175175466 ---------------------------------------- --> Event 0 starts. Run terminated. Run Summary Number of events processed : 100 - User=0.000000s Real=0.000689s Sys=0.000000s + User=0.000000s Real=0.000418s Sys=0.000000s - The run consists of 100 alpha of 265 eV through 20 cm of TechVacuum (density: 0.01 kg/m3 ) + The run consists of 100 alpha of 265 eV through 20 cm of TechVacuum (density: 0.01 mg/cm3) Projected Range= 0 fm rms= 0 fm Mean number of primary steps = 1 @@ -1359,7 +1359,7 @@ Run Summary --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1225561873, 511030629 + Current couple of seeds = 1895685533, 835558847 ---------------------------------------- /testem/det/setMat G4_WATER /gun/particle alpha @@ -1393,9 +1393,9 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1417,12 +1417,12 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1444,16 +1444,16 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1467,23 +1467,23 @@ hBrems: for proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi nuclearStopping: for proton SubType=8 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1497,9 +1497,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1514,9 +1514,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1530,19 +1530,19 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1556,19 +1556,19 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1582,19 +1582,19 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1609,19 +1609,19 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1636,19 +1636,19 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1662,19 +1662,19 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1688,14 +1688,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi ========= Table of registered couples ============================ @@ -1709,14 +1709,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.92994 keV e- 349.731 keV e+ 342.774 keV proton 100 keV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : No Material : G4_Cu Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 24.8178 keV e- 1.40852 MeV e+ 1.31727 MeV proton 100 keV + Energy thresholds : gamma 24.7508 keV e- 1.39534 MeV e+ 1.31345 MeV proton 100 keV Index : 3 used in the geometry : No Material : TechVacuum @@ -1730,24 +1730,24 @@ Index : 3 used in the geometry : No --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1225561873, 511030629 + Current couple of seeds = 1895685533, 835558847 ---------------------------------------- --> Event 0 starts. Run terminated. Run Summary Number of events processed : 100 - User=0.020000s Real=0.032995s Sys=0.000000s + User=0.000000s Real=0.012698s Sys=0.000000s The run consists of 100 alpha of 100 MeV through 20 cm of G4_WATER (density: 1 g/cm3 ) - Projected Range= 2.85145 mm rms= 13.5148 um - Mean number of primary steps = 23.32 + Projected Range= 2.84785 mm rms= 14.4282 um + Mean number of primary steps = 23.39 Total energy deposit= 100 MeV - niel energy deposit = 1.18389 keV + niel energy deposit = 1.17913 keV --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 210988271, 958963724 + Current couple of seeds = 1952693323, 1405646907 ---------------------------------------- /testem/det/setMat G4_Si /gun/particle ion @@ -1783,9 +1783,9 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1807,12 +1807,12 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1834,16 +1834,16 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1857,23 +1857,23 @@ hBrems: for proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi nuclearStopping: for proton SubType=8 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1887,9 +1887,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1904,9 +1904,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1920,19 +1920,19 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1946,19 +1946,19 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1972,19 +1972,19 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -1999,19 +1999,19 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2026,19 +2026,19 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2052,19 +2052,19 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2078,14 +2078,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi ========= Table of registered couples ============================ @@ -2106,7 +2106,7 @@ Index : 1 used in the geometry : Yes Index : 2 used in the geometry : No Material : G4_Cu Range cuts : gamma 2 um e- 2 um e+ 2 um proton 2 um - Energy thresholds : gamma 990 eV e- 18.765 keV e+ 18.3028 keV proton 200 eV + Energy thresholds : gamma 990 eV e- 18.9031 keV e+ 18.6666 keV proton 200 eV Index : 3 used in the geometry : No Material : TechVacuum @@ -2116,7 +2116,7 @@ Index : 3 used in the geometry : No Index : 4 used in the geometry : Yes Material : G4_Si Range cuts : gamma 2 um e- 2 um e+ 2 um proton 2 um - Energy thresholds : gamma 990 eV e- 2.9775 keV e+ 2.88768 keV proton 200 eV + Energy thresholds : gamma 990 eV e- 2.9547 keV e+ 2.92456 keV proton 200 eV Region(s) which use this couple : DefaultRegionForTheWorld @@ -2127,24 +2127,24 @@ Index : 4 used in the geometry : Yes --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 210988271, 958963724 + Current couple of seeds = 1952693323, 1405646907 ---------------------------------------- --> Event 0 starts. Run terminated. Run Summary Number of events processed : 10 - User=9.490000s Real=9.646333s Sys=0.040000s + User=5.080000s Real=5.670416s Sys=0.040000s The run consists of 10 Xe131 of 1.217 GeV through 20 cm of G4_Si (density: 2.33 g/cm3 ) - Projected Range= 96.9657 um rms= 27.1471 um - Mean number of primary steps = 61654.7 - Total energy deposit= 1.21694 GeV - niel energy deposit = 1.76233 MeV + Projected Range= 108.692 um rms= 27.3643 um + Mean number of primary steps = 78490.6 + Total energy deposit= 1.21695 GeV + niel energy deposit = 1.9309 MeV --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1606839861, 575460337 + Current couple of seeds = 1472728336, 1304828150 ---------------------------------------- /testem/det/setMat Water_1.05 /gun/particle proton @@ -2181,9 +2181,9 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2205,12 +2205,12 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2232,16 +2232,16 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eplus2gg : Emin= 0 eV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2255,23 +2255,23 @@ hBrems: for proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi nuclearStopping: for proton SubType=8 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2285,9 +2285,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2302,9 +2302,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2318,19 +2318,19 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2344,19 +2344,19 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2370,19 +2370,19 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2397,19 +2397,19 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2424,19 +2424,19 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2450,19 +2450,19 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 10 eV to 100 TeV in 260 bins @@ -2476,14 +2476,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 10 eV to 100 TeV in 260 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi ========= Table of registered couples ============================ @@ -2497,14 +2497,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.92994 keV e- 349.731 keV e+ 342.774 keV proton 100 keV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : No Material : G4_Cu Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 24.8178 keV e- 1.40852 MeV e+ 1.31727 MeV proton 100 keV + Energy thresholds : gamma 24.7508 keV e- 1.39534 MeV e+ 1.31345 MeV proton 100 keV Index : 3 used in the geometry : No Material : TechVacuum @@ -2514,12 +2514,12 @@ Index : 3 used in the geometry : No Index : 4 used in the geometry : No Material : G4_Si Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.90532 keV e- 544.145 keV e+ 526.224 keV proton 100 keV + Energy thresholds : gamma 6.95018 keV e- 548.291 keV e+ 526.624 keV proton 100 keV Index : 5 used in the geometry : Yes Material : Water_1.05 Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.98941 keV e- 364.072 keV e+ 349.731 keV proton 100 keV + Energy thresholds : gamma 3.00044 keV e- 361.464 keV e+ 351.877 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -2530,28 +2530,28 @@ Index : 5 used in the geometry : Yes --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1606839861, 575460337 + Current couple of seeds = 1472728336, 1304828150 ---------------------------------------- --> Event 0 starts. Run terminated. Run Summary Number of events processed : 1000 - User=0.900000s Real=0.897680s Sys=0.000000s + User=0.510000s Real=0.566470s Sys=0.000000s The run consists of 1000 proton of 160 MeV through 20 cm of Water_1.05 (density: 1.05 g/cm3 ) - Projected Range= 16.6974 cm rms= 1.83686 mm - Mean number of primary steps = 177.824 + Projected Range= 16.7007 cm rms= 1.79408 mm + Mean number of primary steps = 177.839 Total energy deposit= 160 MeV - niel energy deposit = 119.842 eV + niel energy deposit = 122.2 eV --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 264840614, 1265693909 + Current couple of seeds = 1069193241, 357105894 ---------------------------------------- G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 10 of which, static: 0 -Dynamic pools deleted: 10 / Total memory freed: 45 MB +Dynamic pools deleted: 10 / Total memory freed: 46 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/electromagnetic/TestEm8/CMakeLists.txt b/examples/extended/electromagnetic/TestEm8/CMakeLists.txt index 5309eef8d0..6ca5c2d550 100644 --- a/examples/extended/electromagnetic/TestEm8/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm8/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm8) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm8/History b/examples/extended/electromagnetic/TestEm8/History index 965172a8b2..770ae0cc15 100644 --- a/examples/extended/electromagnetic/TestEm8/History +++ b/examples/extended/electromagnetic/TestEm8/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-20 B. Morgan (testem8-V10-06-00) +- Migration to G4RunManagerFactory. + 13-02-19 V.Ivantchenko (testem8-V10-05-00) - DetectorConstruction - added alternative materials in order to test all methods to construct new material by G4NistMaterialBuilder @@ -61,8 +64,8 @@ track of all tags. - Fixes for Doxygen documentation 19-02-16 V.Ivant (testem8-V10-02-00) -- TestParameters, Run, PrimaryGeneratorAction, - PrimaryGeneratorMessenger - reorganized printout of beam +- TestParameters, Run, PrimaryGeneratorAction, + PrimaryGeneratorMessenger - reorganized printout of beam particle; use energy smearing as an addition of noise, so smeared noise should be added in units of energy @@ -73,9 +76,9 @@ track of all tags. - TestEm8.cc - use 1 thread for interactive mode, improve vis.mac 13-08-15 V.Ivant (testem8-V10-01-04) -- PhysicsList - removed configuration of PAI models via +- PhysicsList - removed configuration of PAI models via G4EmConfigurator and left only method via UI command; set - default verbosity to zero to reduce legth of reference output, + default verbosity to zero to reduce legth of reference output, fixed initialisation of StepMax in MT mode - DetectorConstruction - allowed to change geometry sizes between runs - TestParameters - add parameters needed for ALICE TRD simulation @@ -89,20 +92,20 @@ track of all tags. - RunAction - book histograms in constructor allowing to use /analysis/ UI commands - macro files - added alternative configuration of PAI models via - EM UI command; + EM UI command; 24-04-15 V.Ivant (testem8-V10-01-01) -- PhysicsList - fixed problem #1731 in configuration of models per +- PhysicsList - fixed problem #1731 in configuration of models per G4Region in MT mode -- Run - added protection against numerical exception for run with +- Run - added protection against numerical exception for run with 0 or 1 events 04-02-15 V.Ivant (testem8-V10-01-00) - DetectorConstruction - removed local pointer to sensitive detector - in order to avoid race condition + in order to avoid race condition 20-11-14 V.Ivant (testem8-V10-00-07) -- DetectorConstruction, TargetSD - attempt to fix crash at +- DetectorConstruction, TargetSD - attempt to fix crash at destruction in MT mode 03-11-14 V.Ivant (testem8-V10-00-06) @@ -120,7 +123,7 @@ track of all tags. - applied code guidlines 28-04-14 V.Ivant (testem8-V10-00-02) -- added "emlowenergy" option for EM physics +- added "emlowenergy" option for EM physics 16-01-14 V.Ivant (testem8-V10-00-01) - HistoManager - fixed output of rms of mean energy @@ -129,7 +132,7 @@ track of all tags. - HistoManager - more accurate computation of mean energy deposition 21-05-13 V.Ivant (testem8-V09-06-03) -- PhysicsList - substituted obsolete G4PAIPhotonMOdel by G4PAIPhotModel +- PhysicsList - substituted obsolete G4PAIPhotonMOdel by G4PAIPhotModel 08-05-13 V.Ivant (testem8-V09-06-02) - PhysicsList - fixed typo in PhysicsList::SetCutForProton @@ -166,13 +169,13 @@ track of all tags. - Histo - added method Activate(); fixed method Save() 11-04-12 V.Ivant (testem8-V09-05-03) -- Histo - use only ROOT option for analysis, +- Histo - use only ROOT option for analysis, allow to have several runs with histograms per session - HistoManager - fixed computation of mean energy deposit, allow to have several runs with histograms per session 10-04-12 V.Ivant (testem8-V09-05-02) -- migration from AIDA to Geant4 histogram's tool; +- migration from AIDA to Geant4 histogram's tool; applied code convention for all classes of the example 29-02-12 V.Ivant (testem8-V09-05-01) @@ -185,7 +188,7 @@ track of all tags. - HistoManager - book histograms at begin of run not earlier 19-11-10 V.Ivant (testem8-V09-03-07) -- V. Grichine Histomanager.cc The preparation of +- V. Grichine Histomanager.cc The preparation of distribution.out file was added. It has NumOfEv and distribution(energy/keV) @@ -195,20 +198,20 @@ track of all tags. - PhysicsList - fixed UI commands for step limiter 28-09-10 V.Ivant (testem8-V09-03-05) -- GNUmakefile - added histclean option +- GNUmakefile - added histclean option 08-09-10 V.Ivant (testem8-V09-03-04) - The example is completely rewritten: physics, scoring, histograms, README 04-06-10 J.Perl (testem8-V09-03-03) -- Updated vis usage +- Updated vis usage 04-06-10 V.Ivant (testem8-V09-03-02) -- PhysicsList, Em8DetectorConstruction - renamed "VertexDetector" by +- PhysicsList, Em8DetectorConstruction - renamed "VertexDetector" by "GasDetector" - added cut per region into TestEm8.in - + 21-05-10 mma (testem8-V09-03-01) - TestEm8.cc : introduction of G4UIExecutive @@ -226,17 +229,17 @@ track of all tags. configure PAI model 12-06-08 mma (testem8-V09-01-00) -- Remove AIDA from GNUmakefile +- Remove AIDA from GNUmakefile 12-11-07 V.Ivant (testem8-V09-00-05) -- Fixed logic in SteppingAction +- Fixed logic in SteppingAction 02-10-07 V.Ivant (testem8-V09-00-04) - Fixed memory leak in UI interface 26-09-07 V.Ivant (testem8-V09-00-03) - Remove used lines from PAI physics constructors, added "pai_brem" - constructor PhysListEmPAI in which AlongStep from bremsstrahlung + constructor PhysListEmPAI in which AlongStep from bremsstrahlung is allowed 27-08-07 V.Ivant (testem8-V09-00-02) @@ -246,7 +249,7 @@ track of all tags. Use components of Physics Lists from physics_list subdirectory 27-08-07 V.Ivant (testem8-V09-00-00a) -- Fix PAI physics constructors: enegry loss processes should be +- Fix PAI physics constructors: enegry loss processes should be active post step 27-07-07 V.Ivant (testem8-V09-00-00) @@ -256,8 +259,8 @@ track of all tags. 15-11-06 V.Ivant (testem8-V08-01-01) - Put on the head version of Em8DetectorConstruction.cc and PhysListEmModelPai.cc, which provide non-zero results - -25-10-06 mma (testem8-V08-01-00) + +25-10-06 mma (testem8-V08-01-00) - GNUmakefile : LOADLIBS - remove PhysicsLists 52 diff --git a/examples/extended/electromagnetic/TestEm8/TestEm8.cc b/examples/extended/electromagnetic/TestEm8/TestEm8.cc index acbfa36aee..1da0796ce6 100644 --- a/examples/extended/electromagnetic/TestEm8/TestEm8.cc +++ b/examples/extended/electromagnetic/TestEm8/TestEm8.cc @@ -30,8 +30,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#include "G4RunManager.hh" -#include "G4MTRunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIcommand.hh" #include "Randomize.hh" @@ -50,29 +49,23 @@ int main(int argc,char** argv) { //detect interactive mode (if no arguments) and define UI session G4UIExecutive* ui = nullptr; if (argc == 1) { ui = new G4UIExecutive(argc,argv); } - + //choose the Random engine CLHEP::HepRandom::setTheEngine(new CLHEP::MixMaxRng); - -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; + + auto* runManager = G4RunManagerFactory::CreateRunManager(); // Number of threads can be defined via 3rd argument G4int nThreads = 2; if (argc==3) { - if(G4String(argv[2]) == "NMAX") { + if(G4String(argv[2]) == "NMAX") { nThreads = G4Threading::G4GetNumberOfCores(); } else { nThreads = G4UIcommand::ConvertToInt(argv[2]); - } - } else if(argc==1) { + } + } else if(argc==1) { nThreads = 1; } if (nThreads > 0) { runManager->SetNumberOfThreads(nThreads); } - G4cout << "===== TestEm8 is started with " - << runManager->GetNumberOfThreads() << " threads =====" << G4endl; -#else - G4RunManager* runManager = new G4RunManager; -#endif //set mandatory initialization classes DetectorConstruction* det = new DetectorConstruction(); @@ -85,8 +78,8 @@ int main(int argc,char** argv) { //initialize visualization G4VisManager* visManager = nullptr; - //get the pointer to the User Interface manager - G4UImanager* UImanager = G4UImanager::GetUIpointer(); + //get the pointer to the User Interface manager + G4UImanager* UImanager = G4UImanager::GetUIpointer(); if (ui) { //interactive mode @@ -95,13 +88,13 @@ int main(int argc,char** argv) { ui->SessionStart(); delete ui; } else { - //batch mode + //batch mode G4String command = "/control/execute "; G4String fileName = argv[1]; UImanager->ApplyCommand(command+fileName); } - //job termination + //job termination delete visManager; delete runManager; } diff --git a/examples/extended/electromagnetic/TestEm8/TestEm8.out b/examples/extended/electromagnetic/TestEm8/TestEm8.out index fde6c82129..6cb9590472 100644 --- a/examples/extended/electromagnetic/TestEm8/TestEm8.out +++ b/examples/extended/electromagnetic/TestEm8/TestEm8.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -47,7 +48,7 @@ ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -89,7 +90,7 @@ ElmMassFraction: 33.30 % ElmAbundance 18.18 % - Material: G4_METHANE density: 0.667 kg/m3 RadL: 696.482 m Nucl.Int.Length: 907.273 m + Material: G4_METHANE density: 0.667 mg/cm3 RadL: 696.482 m Nucl.Int.Length: 907.273 m Imean: 41.700 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: C (C) Z = 6.0 N = 12 A = 12.011 g/mole @@ -131,7 +132,7 @@ ElmMassFraction: 18.29 % ElmAbundance 72.73 % - Material: G4_Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: G4_Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 21.800 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -172,7 +173,7 @@ ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -231,7 +232,7 @@ ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -290,7 +291,7 @@ ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -357,7 +358,7 @@ ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -399,7 +400,7 @@ ElmMassFraction: 8.00 % ElmAbundance 27.59 % - Material: TPC_Ne-CO2-2 density: 0.939 kg/m3 RadL: 320.739 m Nucl.Int.Length: 993.359 m + Material: TPC_Ne-CO2-2 density: 0.939 mg/cm3 RadL: 320.739 m Nucl.Int.Length: 993.359 m Imean: 126.355 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: Ne (Ne) Z = 10.0 N = 20 A = 20.180 g/mole @@ -420,7 +421,7 @@ ElmMassFraction: 5.35 % ElmAbundance 8.37 % - Material: TPC_Ne-CO2-2p density: 0.939 kg/m3 RadL: 320.749 m Nucl.Int.Length: 993.343 m + Material: TPC_Ne-CO2-2p density: 0.939 mg/cm3 RadL: 320.749 m Nucl.Int.Length: 993.343 m Imean: 126.350 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: Ne (Ne) Z = 10.0 N = 20 A = 20.180 g/mole @@ -450,7 +451,7 @@ ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -525,14 +526,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_MYLAR Range cuts : gamma 500 um e- 500 um e+ 500 um proton 0 fm - Energy thresholds : gamma 2.28625 keV e- 263.228 keV e+ 258.933 keV proton 0 eV + Energy thresholds : gamma 2.28293 keV e- 264.842 keV e+ 257.302 keV proton 0 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : XeCH4C3H8 Range cuts : gamma 1.8 mm e- 1.8 mm e+ 1.8 mm proton 1.8 mm - Energy thresholds : gamma 25 eV e- 5.4285 keV e+ 5.3616 keV proton 180 keV + Energy thresholds : gamma 25 eV e- 5.46578 keV e+ 5.39804 keV proton 180 keV Region(s) which use this couple : GasDetector @@ -542,12 +543,13 @@ Index : 2 used in the geometry : Yes ### Run 0 start analysis activation: BinsCluster= 1 BinsE= 20 Emax(keV)= 60 WidthALICE(keV)= 0 FactorALICE= 325 -... open Root analysis file : testem8.root - done +... create file : testem8.root - done +... open analysis file : testem8.root - done Run terminated. Run Summary Number of events processed : 1000 - User=1.030000s Real=1.043348s Sys=0.000000s -RunAction: End of run actions are started 1 Nevt= 1000 Edep= 0.0157782 + User=0.070000s Real=0.189282s Sys=0.000000s +RunAction: End of run actions are started 1 Nevt= 1000 Edep= 0.0166175 ==================================================== Beam Particle: proton Ekin(MeV) = 200000 @@ -556,34 +558,34 @@ RunAction: End of run actions are started 1 Nevt= 1000 Edep= 0.0157782 End of Run TotNbofEvents = 1000 Energy(keV) per ADC channel = 3.0769 - Mean energy deposit in absorber = 15.778 +- 0.40999 keV RMS/Emean = 0.82169 - Mean number of steps in absorber= 1.227 mean number of ion-clusters = 788.7 MeanCluster= 788.53 + Mean energy deposit in absorber = 16.618 +- 0.44107 keV RMS/Emean = 0.83934 + Mean number of steps in absorber= 1.255 mean number of ion-clusters = 829.9 MeanCluster= 830.82 - ====== Energy deposit distribution Noverflows= 0.011 ====== + ====== Energy deposit distribution Noverflows= 0.017 ====== bin nb Elow entries normalized 0 0 0 0 - 1 3 4 0.004 - 2 6 103 0.103 - 3 9 280 0.28 - 4 12 252 0.252 - 5 15 150 0.15 - 6 18 70 0.07 - 7 21 49 0.049 - 8 24 33 0.033 - 9 27 16 0.016 - 10 30 6 0.006 - 11 33 5 0.005 - 12 36 7 0.007 - 13 39 1 0.001 - 14 42 4 0.004 - 15 45 2 0.002 - 16 48 2 0.002 - 17 51 1 0.001 + 1 3 3 0.003 + 2 6 93 0.093 + 3 9 259 0.259 + 4 12 268 0.268 + 5 15 143 0.143 + 6 18 84 0.084 + 7 21 42 0.042 + 8 24 28 0.028 + 9 27 20 0.02 + 10 30 10 0.01 + 11 33 3 0.003 + 12 36 5 0.005 + 13 39 2 0.002 + 14 42 5 0.005 + 15 45 6 0.006 + 16 48 7 0.007 + 17 51 2 0.002 18 54 2 0.002 - 19 57 2 0.002 + 19 57 1 0.001 ================== run end ========================== -... write Root file : testem8.root - done -... close Root file : testem8.root - done +... write file : testem8.root - done +... close file : testem8.root - done # G4 kernel has come to Quit state. ================== Deleting memory pools =================== diff --git a/examples/extended/electromagnetic/TestEm9/CMakeLists.txt b/examples/extended/electromagnetic/TestEm9/CMakeLists.txt index b1ef5acc74..db2d5d8cd4 100644 --- a/examples/extended/electromagnetic/TestEm9/CMakeLists.txt +++ b/examples/extended/electromagnetic/TestEm9/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(TestEm9) #---------------------------------------------------------------------------- diff --git a/examples/extended/electromagnetic/TestEm9/History b/examples/extended/electromagnetic/TestEm9/History index 3d28d29433..275dbf40ed 100644 --- a/examples/extended/electromagnetic/TestEm9/History +++ b/examples/extended/electromagnetic/TestEm9/History @@ -14,6 +14,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +13-11-20 B. Morgan (testem9-V10-06-01) +- Enforce use of Serial RunManager. + +10-11-20 B. Morgan (testem9-V10-06-00) +- Migration to G4RunManagerFactory. + 16-05-18 J.Allison (testem9-V10-04-04) - RunAction.cc: Removed vis commands. @@ -24,7 +30,7 @@ track of all tags. - TestEm9.cc - correct visualisation 04-04-18 V.Ivant (testem9-V10-04-01) -- TestEm9.cc - use default random engine, do not use visualisation +- TestEm9.cc - use default random engine, do not use visualisation in the batch mode 18-03-18 mma (testem9-V10-04-00) @@ -54,24 +60,24 @@ track of all tags. kernel UI commands used instead 28-04-14 V.Ivant (testem9-V10-00-00) -- added "emlowenergy" option for EM physics +- added "emlowenergy" option for EM physics 24-07-13 P.Gumplinger (testem9-V09-06-06) - comply with compiler warnings about unused class fields in HistoManager.hh 01-04-13 A.Dotti (testem9-V09-06-03,testem9-V09-06-04,testem9-V09-06-05) - New G4VUserPhysicsList interface needed for MT - -20-03-13 mma (testem9-V09-06-02) -- Applied coding guidelines -28-02-13 I. Hrivnacova (testem9-V09-06-01) +20-03-13 mma (testem9-V09-06-02) +- Applied coding guidelines + +28-02-13 I. Hrivnacova (testem9-V09-06-01) - When building materials with NistManager - do not set fromIsotopes argument (which was set to false), + do not set fromIsotopes argument (which was set to false), as since 9.6 all materials have to be built from isotopes. (Thanks to V. Ivantchenko for pointing at this.) -13-02-13 I.Hrivnacova +13-02-13 I.Hrivnacova - Applied coding guidelines (virtual keyword, data members initialization) 11-12-12 V.Ivant (testem9-V09-06-00) @@ -105,10 +111,10 @@ track of all tags. 17-04-12 V.Ivant (testem9-V09-05-00) - miration to internal analysis tool, cose cleanup - + 31-10-11 mma (testem9-V09-04-03) - PhysListEmStandard : msc95 by default - + 03-10-11 G.Folger (testem09-V09-04-02) - Fix gcc46 compilation warning in DetectorConstruction.cc and HistoManager.cc @@ -116,7 +122,7 @@ track of all tags. - PhysListEmStandard migrated to the new approach based on G4PhysicsListHelper 06-01-11 V.Ivant (testem9-V09-04-00) -- add extra run with 20 GeV mu- into TestEm9.in +- add extra run with 20 GeV mu- into TestEm9.in 19-11-10 V.Ivant (testem9-V09-03-05) - add applyCuts option to the macro files @@ -124,60 +130,60 @@ track of all tags. 12-08-10 V.Ivant (testem9-V09-03-04) - Histo - use empty option when open file - PhysicsList - use default constructor for elastic builder - + 06-06-10 J.Perl (testem9-V09-03-03) - Remove unused variable in EventAction 03-06-10 J.Perl (testem9-V09-03-02) -- Updated vis usage +- Updated vis usage -21-05-10 mma (testem9-V09-03-01) +21-05-10 mma (testem9-V09-03-01) TestEm9.cc : introduction of G4UIExecutive 29-04-10 V.Ivant (testem9-V09-03-00) -- added a table of average number of calls of processes versus +- added a table of average number of calls of processes versus atomic number of an atom on which interaction takes place 20-11-09 V.Ivant (testem9-V09-02-00) - use Livermore and Penelope builders from PhysList library - + 16-11-08 mma (testem9-V09-01-09) - Em options: 20bins/decade LinLossLimit=default=0.01 16-10-08 V.Ivant (testem9-V09-01-08) -- Removed temporary builders PhysListEmStandardLPM and +- Removed temporary builders PhysListEmStandardLPM and PhysListEmStandardIG 24-09-08 V.Ivant (testem9-V09-01-07) - added control on number of events with Edep < 80% - use double for number of steps instead of integer - + 22-09-08 mma - histo.cc : root format by default 22-08-08 V.Ivant (testem9-V09-01-06) - added computation of ratios E9/E25 - PhysList with relativistic LPM model is done on top of PhysList - option1 + option1 11-08-08 V.Ivant (testem9-V09-01-05) - added computation of ratios E1/E9 and E1/E25 -- added PhysLists with relativistic LPM model +- added PhysLists with relativistic LPM model - updated macro 12-06-08 mma (testem9-V09-01-04) -- Remove AIDA from GNUmakefile - +- Remove AIDA from GNUmakefile + 07-05-08 mma (testem9-V09-01-03) - PhysListEmStandard : add spline option for physics tables - README : update Aida informations - + 08-04-08 mma (testem9-V09-01-02) -- PhysListEmStandard : replace G4MultipleScattering by G4eMultipleScattering. +- PhysListEmStandard : replace G4MultipleScattering by G4eMultipleScattering. Complete EmOptions 07-04-08 V.Ivant (testem9-V09-01-01) -- fixed problem of geometry/cut modification between runs +- fixed problem of geometry/cut modification between runs 18-03-08 V.Ivant (testem9-V09-01-00) - added G4EmStandardPhyiscs_option3 @@ -200,11 +206,11 @@ PhysListEmStandardIG - extend reference output - show both mean/RMS values and trancated mean/RMS 25-04-07 V.Ivant (testem9-V08-02-02) -- fix output of statistic +- fix output of statistic 24-04-07 V.Ivant (testem9-V08-02-01) - use standard names for "livermore" and "penelope" PhysLists -- by request compute trancated mean values to reduce statistical fluctuations +- by request compute trancated mean values to reduce statistical fluctuations 08-01-07 V.Ivant (testem9-V08-02-00) - Uncomment hadron ionisation in Livermore builder @@ -218,10 +224,10 @@ PhysListEmStandardIG - add EM components from physics_lists subpackage - use hadronic components from physics_lists subpackage -25-10-06 mma (testem9-V08-01-00) +25-10-06 mma (testem9-V08-01-00) - GNUmakefile : LOADLIBS - remove PhysicsLists 52 and 71 - + 19-05-06 mma (testem9-V08-00-00) - update README @@ -232,9 +238,9 @@ PhysListEmStandardIG - Fix crash connected with non-static hadrons 01-12-05 V.Ivant (testem9-V07-01-04) -- add a command /testem/phys/mscStepLimit +- add a command /testem/phys/mscStepLimit -17-11-05 G.Cosmo (testem9-V07-01-03) +17-11-05 G.Cosmo (testem9-V07-01-03) - corrected fixes for migration to to fix compilation errors on SUN-CC. @@ -254,7 +260,7 @@ PhysListEmStandardIG 13-05-05 V.Ivant (testem9-V07-00-01) - Migration to NIST materials - + 03-05-05 John Allison (examples-V07-00-03) - Replaced vis manager with G4VisExecutive. @@ -292,7 +298,7 @@ PhysListEmStandardIG 07-11-03 V.Ivanchenko (testem9-V05-02-05) - Fix misprint in the HistoManager -- Use of the last msc for PhysList52 +- Use of the last msc for PhysList52 31-10-03 V.Ivanchenko (testem9-V05-02-04) - Update geometry and visualisation diff --git a/examples/extended/electromagnetic/TestEm9/TestEm9.cc b/examples/extended/electromagnetic/TestEm9/TestEm9.cc index 320f8c292f..51536ff6b8 100644 --- a/examples/extended/electromagnetic/TestEm9/TestEm9.cc +++ b/examples/extended/electromagnetic/TestEm9/TestEm9.cc @@ -31,7 +31,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "Randomize.hh" @@ -55,8 +55,8 @@ int main(int argc,char** argv) { G4UIExecutive* ui = nullptr; if (argc == 1) { ui = new G4UIExecutive(argc,argv); } - //construct the default run manager - G4RunManager * runManager = new G4RunManager; + //construct a serial run manager + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); //set mandatory initialization classes DetectorConstruction* det = new DetectorConstruction(); @@ -85,13 +85,13 @@ int main(int argc,char** argv) { ui->SessionStart(); delete ui; } else { - //batch mode + //batch mode G4String command = "/control/execute "; G4String fileName = argv[1]; UImanager->ApplyCommand(command+fileName); } - //job termination + //job termination delete visManager; delete runManager; } diff --git a/examples/extended/electromagnetic/TestEm9/TestEm9.out b/examples/extended/electromagnetic/TestEm9/TestEm9.out index a388962a5c..7ce4879b63 100644 --- a/examples/extended/electromagnetic/TestEm9/TestEm9.out +++ b/examples/extended/electromagnetic/TestEm9/TestEm9.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -72,20 +72,26 @@ Rayl: for gamma applyCuts:1 SubType=11 BuildTable=1 LambdaPrime table from 100 keV to 100 TeV in 180 bins ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region VertexDetector ====== LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region VertexDetector ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ===== EM models for the G4Region MuonDetector ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -113,16 +119,21 @@ CoulombScat: for e-, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region VertexDetector ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ===== EM models for the G4Region MuonDetector ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -154,9 +165,9 @@ CoulombScat: for e+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -170,14 +181,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -186,9 +197,9 @@ CoulombScat: for proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -200,9 +211,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -213,9 +224,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -229,14 +240,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -245,9 +256,9 @@ CoulombScat: for anti_proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -261,14 +272,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -277,9 +288,9 @@ CoulombScat: for kaon+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -293,14 +304,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -309,9 +320,9 @@ CoulombScat: for kaon-, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -326,14 +337,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -342,9 +353,9 @@ CoulombScat: for mu+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -359,14 +370,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -375,9 +386,9 @@ CoulombScat: for mu-, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -391,14 +402,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -407,9 +418,9 @@ CoulombScat: for pi+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -423,14 +434,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -450,14 +461,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_CESIUM_IODIDE Range cuts : gamma 300 um e- 300 um e+ 300 um proton 300 um - Energy thresholds : gamma 18.3598 keV e- 291.875 keV e+ 282.263 keV proton 30 keV + Energy thresholds : gamma 18.2919 keV e- 291.524 keV e+ 281.891 keV proton 30 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_Al Range cuts : gamma 300 um e- 300 um e+ 300 um proton 300 um - Energy thresholds : gamma 3.9341 keV e- 258.725 keV e+ 253.579 keV proton 30 keV + Energy thresholds : gamma 3.92577 keV e- 258.31 keV e+ 253.154 keV proton 30 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -471,28 +482,28 @@ Index : 3 used in the geometry : Yes Index : 4 used in the geometry : Yes Material : G4_Al Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 34.2283 keV e+ 33.7728 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 34.1725 keV e+ 33.9436 keV proton 1 keV Region(s) which use this couple : VertexDetector Index : 5 used in the geometry : Yes Material : G4_Si Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 31.7971 keV e+ 31.374 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 31.9516 keV e+ 31.7376 keV proton 1 keV Region(s) which use this couple : VertexDetector Index : 6 used in the geometry : Yes Material : G4_Fe Range cuts : gamma 1 cm e- 1 cm e+ 1 cm proton 1 cm - Energy thresholds : gamma 60.4828 keV e- 12.9292 MeV e+ 12.0109 MeV proton 1 MeV + Energy thresholds : gamma 60.499 keV e- 13.0779 MeV e+ 12.2279 MeV proton 1 MeV Region(s) which use this couple : MuonDetector Index : 7 used in the geometry : Yes Material : G4_Al Range cuts : gamma 1 cm e- 1 cm e+ 1 cm proton 1 cm - Energy thresholds : gamma 20.4366 keV e- 4.57836 MeV e+ 4.28176 MeV proton 1 MeV + Energy thresholds : gamma 20.3682 keV e- 4.52289 MeV e+ 4.28616 MeV proton 1 MeV Region(s) which use this couple : MuonDetector @@ -506,38 +517,38 @@ Index : 7 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 100 - User=3.750000s Real=3.778805s Sys=0.000000s + User=0.830000s Real=0.844588s Sys=0.000000s RunAction: End of run actions are started HistoManager: End of run actions are started RunID# 0 ================================================================= Number of events 100 -Average number of e- 400.7 -Average number of gamma 633.5 -Average number of e+ 48.5 -Average number of steps 2950 -Edep 1x1 = 0.8302 +- 0.002894 res= 3.486 % 100 -Edep 3x3 = 0.9573 +- 0.001784 res= 1.863 % 100 -Edep 5x5 = 0.9777 +- 0.00159 res= 1.627 % 100 +Average number of e- 403.4 +Average number of gamma 636.7 +Average number of e+ 47.52 +Average number of steps 2951 +Edep 1x1 = 0.8356 +- 0.002941 res= 3.519 % 100 +Edep 3x3 = 0.9609 +- 0.001152 res= 1.198 % 100 +Edep 5x5 = 0.9814 +- 0.0009949 res= 1.014 % 100 =========== Ratios without trancating =========================== - E1/E9 = 0.8672 +- 0.002589 - E1/E25 = 0.8491 +- 0.00268 - E9/E25 = 0.9792 +- 0.0009234 + E1/E9 = 0.8695 +- 0.002724 + E1/E25 = 0.8515 +- 0.002911 + E9/E25 = 0.9792 +- 0.0007693 Beam Energy 1 GeV ================================================================== <<<<>>>> 100 events for Crystal Calorimeter -Edep1x1: 0.8302 delEdep1x1= -0.1698 nrms= -1.698 -Erms1x1: 0.02894 delErms1x1= -0.9711 nrms= -9.711 -Edep3x3: 0.9573 delEdep3x3= -0.04269 nrms= -0.4269 -Erms3x3: 0.01784 delErms3x3= -0.9822 nrms= -9.822 -Edep5x5: 0.9777 delEdep5x5= -0.02231 nrms= -0.2231 -Erms5x5: 0.0159 delErms5x5= -0.9841 nrms= -9.841 +Edep1x1: 0.8356 delEdep1x1= -0.1644 nrms= -1.644 +Erms1x1: 0.02941 delErms1x1= -0.9706 nrms= -9.706 +Edep3x3: 0.9609 delEdep3x3= -0.03906 nrms= -0.3906 +Erms3x3: 0.01152 delErms3x3= -0.9885 nrms= -9.885 +Edep5x5: 0.9814 delEdep5x5= -0.01859 nrms= -0.1859 +Erms5x5: 0.009949 delErms5x5= -0.9901 nrms= -9.901 <<<<>>>> IS ACCEPTED Z bremsstrahlung photoeffect compton conversion - 53 256 0 0 0 - 55 279 0 0 0 + 53 255 0 0 0 + 55 285 0 0 0 # /testem/det/acceptance1 0.0136 0.0001 500 /testem/det/acceptance9 0.0139 0.0001 500 @@ -559,14 +570,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_CESIUM_IODIDE Range cuts : gamma 300 um e- 300 um e+ 300 um proton 300 um - Energy thresholds : gamma 18.36 keV e- 291.9 keV e+ 282.3 keV proton 30 keV + Energy thresholds : gamma 18.29 keV e- 291.5 keV e+ 281.9 keV proton 30 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_Al Range cuts : gamma 300 um e- 300 um e+ 300 um proton 300 um - Energy thresholds : gamma 3.934 keV e- 258.7 keV e+ 253.6 keV proton 30 keV + Energy thresholds : gamma 3.926 keV e- 258.3 keV e+ 253.2 keV proton 30 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -580,28 +591,28 @@ Index : 3 used in the geometry : Yes Index : 4 used in the geometry : Yes Material : G4_Al Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 34.23 keV e+ 33.77 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 34.17 keV e+ 33.94 keV proton 1 keV Region(s) which use this couple : VertexDetector Index : 5 used in the geometry : Yes Material : G4_Si Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 31.8 keV e+ 31.37 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 31.95 keV e+ 31.74 keV proton 1 keV Region(s) which use this couple : VertexDetector Index : 6 used in the geometry : Yes Material : G4_Fe Range cuts : gamma 1 cm e- 1 cm e+ 1 cm proton 1 cm - Energy thresholds : gamma 60.48 keV e- 12.93 MeV e+ 12.01 MeV proton 1 MeV + Energy thresholds : gamma 60.5 keV e- 13.08 MeV e+ 12.23 MeV proton 1 MeV Region(s) which use this couple : MuonDetector Index : 7 used in the geometry : Yes Material : G4_Al Range cuts : gamma 1 cm e- 1 cm e+ 1 cm proton 1 cm - Energy thresholds : gamma 20.44 keV e- 4.578 MeV e+ 4.282 MeV proton 1 MeV + Energy thresholds : gamma 20.37 keV e- 4.523 MeV e+ 4.286 MeV proton 1 MeV Region(s) which use this couple : MuonDetector @@ -615,22 +626,22 @@ Index : 7 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1000 - User=4.550000s Real=4.555759s Sys=0.000000s + User=1.240000s Real=1.364826s Sys=0.000000s RunAction: End of run actions are started HistoManager: End of run actions are started RunID# 1 ================================================================= Number of events 1000 -Average number of e- 70.29 -Average number of gamma 63.62 -Average number of e+ 3.589 -Average number of steps 435 -Edep 1x1 = 0.01423 +- 0.0003772 -Edep 3x3 = 0.01459 +- 0.0004239 -Edep 5x5 = 0.01465 +- 0.0004313 +Average number of e- 77.11 +Average number of gamma 74.12 +Average number of e+ 4.251 +Average number of steps 484.4 +Edep 1x1 = 0.01495 +- 0.0005982 +Edep 3x3 = 0.0154 +- 0.000655 +Edep 5x5 = 0.01548 +- 0.0006657 =========== Ratios without trancating =========================== - E1/E9 = 0.984 +- 0.0007228 - E1/E25 = 0.9812 +- 0.0008175 - E9/E25 = 0.9971 +- 0.0001961 + E1/E9 = 0.9822 +- 0.0007694 + E1/E25 = 0.9792 +- 0.0008629 + E9/E25 = 0.9969 +- 0.0001996 Beam Energy 20 GeV ================================================================== @@ -694,20 +705,26 @@ Rayl: for gamma applyCuts:1 SubType=11 BuildTable=1 LambdaPrime table from 100 keV to 100 TeV in 180 bins ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region VertexDetector ====== LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region VertexDetector ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ===== EM models for the G4Region MuonDetector ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -735,16 +752,21 @@ CoulombScat: for e-, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region VertexDetector ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ===== EM models for the G4Region MuonDetector ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -776,9 +798,9 @@ CoulombScat: for e+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -792,14 +814,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -808,9 +830,9 @@ CoulombScat: for proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -822,9 +844,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -835,9 +857,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -851,14 +873,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -867,9 +889,9 @@ CoulombScat: for anti_proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -883,14 +905,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -899,9 +921,9 @@ CoulombScat: for kaon+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -915,14 +937,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -931,9 +953,9 @@ CoulombScat: for kaon-, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -948,14 +970,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -964,9 +986,9 @@ CoulombScat: for mu+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -981,14 +1003,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -997,9 +1019,9 @@ CoulombScat: for mu-, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1013,14 +1035,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -1029,9 +1051,9 @@ CoulombScat: for pi+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1045,14 +1067,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1072,14 +1094,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_CESIUM_IODIDE Range cuts : gamma 300 um e- 300 um e+ 300 um proton 300 um - Energy thresholds : gamma 18.3598 keV e- 291.875 keV e+ 282.263 keV proton 30 keV + Energy thresholds : gamma 18.2919 keV e- 291.524 keV e+ 281.891 keV proton 30 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_Al Range cuts : gamma 300 um e- 300 um e+ 300 um proton 300 um - Energy thresholds : gamma 3.9341 keV e- 258.725 keV e+ 253.579 keV proton 30 keV + Energy thresholds : gamma 3.92577 keV e- 258.31 keV e+ 253.154 keV proton 30 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -1093,28 +1115,28 @@ Index : 3 used in the geometry : Yes Index : 4 used in the geometry : Yes Material : G4_Al Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 34.2283 keV e+ 33.7728 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 34.1725 keV e+ 33.9436 keV proton 1 keV Region(s) which use this couple : VertexDetector Index : 5 used in the geometry : Yes Material : G4_Si Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 31.7971 keV e+ 31.374 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 31.9516 keV e+ 31.7376 keV proton 1 keV Region(s) which use this couple : VertexDetector Index : 6 used in the geometry : Yes Material : G4_Fe Range cuts : gamma 1 cm e- 1 cm e+ 1 cm proton 1 cm - Energy thresholds : gamma 60.4828 keV e- 12.9292 MeV e+ 12.0109 MeV proton 1 MeV + Energy thresholds : gamma 60.499 keV e- 13.0779 MeV e+ 12.2279 MeV proton 1 MeV Region(s) which use this couple : MuonDetector Index : 7 used in the geometry : Yes Material : G4_Al Range cuts : gamma 1 cm e- 1 cm e+ 1 cm proton 1 cm - Energy thresholds : gamma 20.4366 keV e- 4.57836 MeV e+ 4.28176 MeV proton 1 MeV + Energy thresholds : gamma 20.3682 keV e- 4.52289 MeV e+ 4.28616 MeV proton 1 MeV Region(s) which use this couple : MuonDetector @@ -1128,22 +1150,22 @@ Index : 7 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 100 - User=1.840000s Real=1.842938s Sys=0.000000s + User=0.480000s Real=0.481198s Sys=0.000000s RunAction: End of run actions are started HistoManager: End of run actions are started RunID# 2 ================================================================= Number of events 100 -Average number of e- 171.2 -Average number of gamma 221.4 -Average number of e+ 47.63 -Average number of steps 1840 -Edep 1x1 = 0.8365 +- 0.003934 res= 4.703 % 100 -Edep 3x3 = 0.9635 +- 0.003637 res= 3.774 % 100 -Edep 5x5 = 0.986 +- 0.003612 res= 3.663 % 100 +Average number of e- 172.2 +Average number of gamma 220 +Average number of e+ 46.86 +Average number of steps 1844 +Edep 1x1 = 0.8319 +- 0.004461 res= 5.362 % 100 +Edep 3x3 = 0.9546 +- 0.003086 res= 3.233 % 100 +Edep 5x5 = 0.9768 +- 0.002906 res= 2.975 % 100 =========== Ratios without trancating =========================== - E1/E9 = 0.8682 +- 0.002749 - E1/E25 = 0.8485 +- 0.003174 - E9/E25 = 0.9772 +- 0.001264 + E1/E9 = 0.8715 +- 0.003802 + E1/E25 = 0.8519 +- 0.004131 + E9/E25 = 0.9773 +- 0.001253 Beam Energy 1 GeV ================================================================== @@ -1207,20 +1229,26 @@ Rayl: for gamma applyCuts:1 SubType=11 BuildTable=1 LambdaPrime table from 100 keV to 100 TeV in 180 bins ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region VertexDetector ====== LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region VertexDetector ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ===== EM models for the G4Region MuonDetector ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1248,16 +1276,21 @@ CoulombScat: for e-, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region VertexDetector ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ===== EM models for the G4Region MuonDetector ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1289,9 +1322,9 @@ CoulombScat: for e+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1305,14 +1338,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -1321,9 +1354,9 @@ CoulombScat: for proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1335,9 +1368,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1348,9 +1381,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1364,14 +1397,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -1380,9 +1413,9 @@ CoulombScat: for anti_proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1396,14 +1429,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -1412,9 +1445,9 @@ CoulombScat: for kaon+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1428,14 +1461,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -1444,9 +1477,9 @@ CoulombScat: for kaon-, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1461,14 +1494,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -1477,9 +1510,9 @@ CoulombScat: for mu+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1494,14 +1527,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -1510,9 +1543,9 @@ CoulombScat: for mu-, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1526,14 +1559,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -1542,9 +1575,9 @@ CoulombScat: for pi+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -1558,14 +1591,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1585,14 +1618,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_CESIUM_IODIDE Range cuts : gamma 300 um e- 300 um e+ 300 um proton 300 um - Energy thresholds : gamma 18.3598 keV e- 291.875 keV e+ 282.263 keV proton 30 keV + Energy thresholds : gamma 18.2919 keV e- 291.524 keV e+ 281.891 keV proton 30 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_Al Range cuts : gamma 300 um e- 300 um e+ 300 um proton 300 um - Energy thresholds : gamma 3.9341 keV e- 258.725 keV e+ 253.579 keV proton 30 keV + Energy thresholds : gamma 3.92577 keV e- 258.31 keV e+ 253.154 keV proton 30 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -1606,28 +1639,28 @@ Index : 3 used in the geometry : Yes Index : 4 used in the geometry : Yes Material : G4_Al Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 34.2283 keV e+ 33.7728 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 34.1725 keV e+ 33.9436 keV proton 1 keV Region(s) which use this couple : VertexDetector Index : 5 used in the geometry : Yes Material : G4_Si Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 31.7971 keV e+ 31.374 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 31.9516 keV e+ 31.7376 keV proton 1 keV Region(s) which use this couple : VertexDetector Index : 6 used in the geometry : Yes Material : G4_Fe Range cuts : gamma 1 cm e- 1 cm e+ 1 cm proton 1 cm - Energy thresholds : gamma 60.4828 keV e- 12.9292 MeV e+ 12.0109 MeV proton 1 MeV + Energy thresholds : gamma 60.499 keV e- 13.0779 MeV e+ 12.2279 MeV proton 1 MeV Region(s) which use this couple : MuonDetector Index : 7 used in the geometry : Yes Material : G4_Al Range cuts : gamma 1 cm e- 1 cm e+ 1 cm proton 1 cm - Energy thresholds : gamma 20.4366 keV e- 4.57836 MeV e+ 4.28176 MeV proton 1 MeV + Energy thresholds : gamma 20.3682 keV e- 4.52289 MeV e+ 4.28616 MeV proton 1 MeV Region(s) which use this couple : MuonDetector @@ -1641,22 +1674,22 @@ Index : 7 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 100 - User=4.590000s Real=4.594698s Sys=0.000000s + User=0.740000s Real=0.876265s Sys=0.000000s RunAction: End of run actions are started HistoManager: End of run actions are started RunID# 3 ================================================================= Number of events 100 -Average number of e- 173.2 -Average number of gamma 360.1 -Average number of e+ 47.55 -Average number of steps 1980 -Edep 1x1 = 0.8293 +- 0.003394 res= 4.093 % 100 -Edep 3x3 = 0.9534 +- 0.003562 res= 3.736 % 100 -Edep 5x5 = 0.9741 +- 0.003519 res= 3.613 % 100 +Average number of e- 173.5 +Average number of gamma 363 +Average number of e+ 47.79 +Average number of steps 2012 +Edep 1x1 = 0.8332 +- 0.003619 res= 4.344 % 100 +Edep 3x3 = 0.9575 +- 0.003176 res= 3.317 % 100 +Edep 5x5 = 0.9788 +- 0.003053 res= 3.119 % 100 =========== Ratios without trancating =========================== - E1/E9 = 0.87 +- 0.002447 - E1/E25 = 0.8516 +- 0.002669 - E9/E25 = 0.9788 +- 0.001115 + E1/E9 = 0.8703 +- 0.002709 + E1/E25 = 0.8513 +- 0.002835 + E9/E25 = 0.9783 +- 0.001052 Beam Energy 1 GeV ================================================================== @@ -1664,6 +1697,6 @@ Beam Energy 1 GeV G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 9 of which, static: 0 -Dynamic pools deleted: 9 / Total memory freed: 0.087 MB +Dynamic pools deleted: 9 / Total memory freed: 0.085 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/errorpropagation/CMakeLists.txt b/examples/extended/errorpropagation/CMakeLists.txt index af403096db..777d7c928f 100644 --- a/examples/extended/errorpropagation/CMakeLists.txt +++ b/examples/extended/errorpropagation/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(errorpropagation) #---------------------------------------------------------------------------- diff --git a/examples/extended/errorpropagation/History b/examples/extended/errorpropagation/History index 6628500d70..6320be5607 100644 --- a/examples/extended/errorpropagation/History +++ b/examples/extended/errorpropagation/History @@ -16,6 +16,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Nov 03, 2020 B.Morgan (exerrprop-V10-06-00) +- Support same CMake version range as core Geant4 + Jun 13, 2018 G.Cosmo (exerrprop-V10-04-00) - Use implicit destructor in ExErrorMagneticField. - Updated README. @@ -29,11 +32,11 @@ Feb 13, 2013 I.Hrivnacova (exerrprop-V09-06-00) Sep 4, 2012 I.Hrivnacova (exerrprop-V09-05-05) - Adding explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh where needed -- Replaced tabulators with space characters +- Replaced tabulators with space characters Sep 4, 2012 I.Hrivnacova (exerrprop-V09-05-04) - Updated CMakeLists.txt: - adding copying macros (empty), install target and comment lines + adding copying macros (empty), install target and comment lines Jul 17, 2012 I.Hrivnacova (exerrprop-V09-05-03) - Restored files descriptions and moved class descriptions in .hh diff --git a/examples/extended/errorpropagation/errorprop.out b/examples/extended/errorpropagation/errorprop.out index f232b3e4b9..038a989034 100644 --- a/examples/extended/errorpropagation/errorprop.out +++ b/examples/extended/errorpropagation/errorprop.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,7 +12,7 @@ WWW : http://geant4.org/ ************************************************************** - creating G4RunManagerKernel 0x1d1af80 + creating G4RunManagerKernel 0x931080 The materials defined are : @@ -87,18 +87,17 @@ G4Transportation: Current values for thresholds related to the killing of loop Important Energy = 250 ( above this tracks are given multiple chances ) Extra Trials = 10 'important' tracks, i.e. those above 'important' energy G4Transportation constructor> set fShortStepOptimisation to false -0x1f6cc10G4ErrorPhysicsList:: particle process manager e+ = 0x1f6f2f0 -0x1f6ca30G4ErrorPhysicsList:: particle process manager e- = 0x1f71140 -0x1f6c850G4ErrorPhysicsList:: particle process manager gamma = 0x1f71470 -0x1f6e020G4ErrorPhysicsList:: particle process manager geantino = 0x1f717c0 -0x1f6cdf0G4ErrorPhysicsList:: particle process manager mu+ = 0x1f71b10 -0x1f6d130G4ErrorPhysicsList:: particle process manager mu- = 0x1f71e60 -0x1f6d540G4ErrorPhysicsList:: particle process manager pi+ = 0x1f721b0 -0x1f6d9b0G4ErrorPhysicsList:: particle process manager pi- = 0x1f72500 -0x1f6ddf0G4ErrorPhysicsList:: particle process manager proton = 0x1f72850 +0xb45610G4ErrorPhysicsList:: particle process manager e+ = 0xb47d60 +0xb45480G4ErrorPhysicsList:: particle process manager e- = 0xb49930 +0xb44f10G4ErrorPhysicsList:: particle process manager gamma = 0xb49b60 +0xb46a90G4ErrorPhysicsList:: particle process manager geantino = 0xb49db0 +0xb457f0G4ErrorPhysicsList:: particle process manager mu+ = 0xb4a000 +0xb45be0G4ErrorPhysicsList:: particle process manager mu- = 0xb4a250 +0xb45ff0G4ErrorPhysicsList:: particle process manager pi+ = 0xb4a4a0 +0xb46440G4ErrorPhysicsList:: particle process manager pi- = 0xb4a6f0 +0xb46860G4ErrorPhysicsList:: particle process manager proton = 0xb4a940 physicsList->CheckParticleList() start. physicsList->setCut() start. - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 0.01 numVar= 6 conv: for gamma SubType=14 BuildTable=1 Lambda table from 1.022 MeV to 100 TeV, 18 bins/decade, spline: 1 @@ -164,7 +163,7 @@ Index : 3 used in the geometry : Yes Start closing geometry. G4GeometryManager::ReportVoxelStats -- Voxel Statistics - Total memory consumed for geometry optimisation: 2 kByte + Total memory consumed for geometry optimisation: 1 kByte Total CPU time elapsed for geometry optimisation: 0 seconds Voxelisation: top CPU users: @@ -177,9 +176,9 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume ------- -------- ------ ------ -------- ---------- ---------- - 43.22 1k 3 8 18 0.00 World - 38.80 0k 1 10 10 0.00 HCAL - 17.98 0k 1 4 4 0.00 ECAL + 44.50 0k 3 8 18 0.00 World + 37.80 0k 1 10 10 0.00 HCAL + 17.70 0k 1 4 4 0.00 ECAL /tracking/verbose 1 /geant4e/limits/stepLength 100 mm Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName @@ -230,14 +229,14 @@ G4TablesForExtrapolator::ComputeProtonDEDX for e- 38 2.15e+03 33.3 0 2.23e+04 0.0336 100 2.15e+03 MUON G4ErrorStepLengthLimit 39 2.21e+03 35.1 0 2.23e+04 0.0202 60.2 2.21e+03 MUON Transportation $$$ PROPAGATION ENDED - Position: (2210,35.10111557803144,0) - Momentum: (22434.27646982362,696.1983873268582,0) + Position: (2210,35.10111634723386,0) + Momentum: (22434.27847598642,696.1984474448921,0) Error: - 9.8723810476934e-08 0 3.726670368239321e-08 2.667490378913729e-06 0 - 0 3.518685858101061e-05 0 0 0.004070044654139157 - 3.726670368239321e-08 0 3.519153250999519e-05 0.004421940625207487 0 - 2.667490378913729e-06 0 0.004421940625207487 0.6258682912301723 0 - 0 0.004070044654139157 0 0 0.5409523335950216 + 9.872377748051573e-08 0 3.726669611688026e-08 2.66749011264642e-06 0 + 0 3.518686067616145e-05 0 0 0.004070045003369713 + 3.726669611688026e-08 0 3.519153460399041e-05 0.004421940995358776 0 + 2.66749011264642e-06 0 0.004421940995358776 0.6258683512051659 0 + 0 0.004070045003369713 0 0 0.54095238637958 Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1.99e+04 0 0 0 BEAM initStep @@ -281,14 +280,14 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 38 2.15e+03 33.3 0 2.23e+04 0.0336 100 2.15e+03 MUON G4ErrorStepLengthLimit 39 2.21e+03 35.1 0 2.23e+04 0.0202 60.2 2.21e+03 MUON Transportation $$$ PROPAGATION ENDED - Position: (2210,35.10111557803144,0) - Momentum: (22434.27646982362,696.1983873268582,0) + Position: (2210,35.10111634723386,0) + Momentum: (22434.27847598642,696.1984474448921,0) Error: - 9.8723810476934e-08 0 3.726670368239321e-08 2.667490378913729e-06 0 - 0 3.518685858101061e-05 0 0 0.004070044654139157 - 3.726670368239321e-08 0 3.519153250999519e-05 0.004421940625207487 0 - 2.667490378913729e-06 0 0.004421940625207487 0.6258682912301723 0 - 0 0.004070044654139157 0 0 0.5409523335950216 + 9.872377748051573e-08 0 3.726669611688026e-08 2.66749011264642e-06 0 + 0 3.518686067616145e-05 0 0 0.004070045003369713 + 3.726669611688026e-08 0 3.519153460399041e-05 0.004421940995358776 0 + 2.66749011264642e-06 0 0.004421940995358776 0.6258683512051659 0 + 0 0.004070045003369713 0 0 0.54095238637958 Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1.99e+04 0 0 0 BEAM initStep @@ -332,12 +331,12 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 38 2.15e+03 33.3 0 2.23e+04 0.0336 100 2.15e+03 MUON G4ErrorStepLengthLimit 39 2.21e+03 35.1 0 2.23e+04 0.0202 60.2 2.21e+03 MUON Transportation $$$ PROPAGATION ENDED - Position: (2210,35.10111557803144,0) - Momentum: (22434.27646982362,696.1983873268582,0) + Position: (2210,35.10111634723386,0) + Momentum: (22434.27847598642,696.1984474448921,0) Error: - 9.8723810476934e-08 0 3.726670368239321e-08 2.667490378913729e-06 0 - 0 3.518685858101061e-05 0 0 0.004070044654139157 - 3.726670368239321e-08 0 3.519153250999519e-05 0.004421940625207487 0 - 2.667490378913729e-06 0 0.004421940625207487 0.6258682912301723 0 - 0 0.004070044654139157 0 0 0.5409523335950216 + 9.872377748051573e-08 0 3.726669611688026e-08 2.66749011264642e-06 0 + 0 3.518686067616145e-05 0 0 0.004070045003369713 + 3.726669611688026e-08 0 3.519153460399041e-05 0.004421940995358776 0 + 2.66749011264642e-06 0 0.004421940995358776 0.6258683512051659 0 + 0 0.004070045003369713 0 0 0.54095238637958 diff --git a/examples/extended/eventgenerator/CMakeLists.txt b/examples/extended/eventgenerator/CMakeLists.txt index deb305b362..b0b2f71dbc 100644 --- a/examples/extended/eventgenerator/CMakeLists.txt +++ b/examples/extended/eventgenerator/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all eventgenerator examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() find_package(Geant4) include(${Geant4_USE_FILE}) diff --git a/examples/extended/eventgenerator/CMakeLists.txt.pythia6 b/examples/extended/eventgenerator/CMakeLists.txt.pythia6 index 9a0a20765e..253b7a42b9 100644 --- a/examples/extended/eventgenerator/CMakeLists.txt.pythia6 +++ b/examples/extended/eventgenerator/CMakeLists.txt.pythia6 @@ -16,7 +16,10 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(pythia6 Fortran) #---------------------------------------------------------------------------- diff --git a/examples/extended/eventgenerator/HepMC/CMakeLists.txt b/examples/extended/eventgenerator/HepMC/CMakeLists.txt index 0d1a0d877d..633c64c576 100644 --- a/examples/extended/eventgenerator/HepMC/CMakeLists.txt +++ b/examples/extended/eventgenerator/HepMC/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all HepMC examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() find_package(Geant4) include(${Geant4_USE_FILE}) diff --git a/examples/extended/eventgenerator/HepMC/HepMCEx01/CMakeLists.txt b/examples/extended/eventgenerator/HepMC/HepMCEx01/CMakeLists.txt index f202b8290f..3b277bc976 100644 --- a/examples/extended/eventgenerator/HepMC/HepMCEx01/CMakeLists.txt +++ b/examples/extended/eventgenerator/HepMC/HepMCEx01/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(HepMCEx01) #---------------------------------------------------------------------------- diff --git a/examples/extended/eventgenerator/HepMC/HepMCEx01/HepMCEx01.cc b/examples/extended/eventgenerator/HepMC/HepMCEx01/HepMCEx01.cc index 16a3056d91..f12a2730ff 100644 --- a/examples/extended/eventgenerator/HepMC/HepMCEx01/HepMCEx01.cc +++ b/examples/extended/eventgenerator/HepMC/HepMCEx01/HepMCEx01.cc @@ -34,7 +34,7 @@ #include "G4Types.hh" #include "FTFP_BERT.hh" -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "ExN04DetectorConstruction.hh" @@ -62,9 +62,9 @@ int main(int argc,char** argv) G4VSteppingVerbose* verbosity = new ExN04SteppingVerbose; G4VSteppingVerbose::SetInstance(verbosity); - // Run manager + // Serial only Run manager // - G4RunManager* runManager = new G4RunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); // User Initialization classes (mandatory) // diff --git a/examples/extended/eventgenerator/HepMC/HepMCEx01/History b/examples/extended/eventgenerator/HepMC/HepMCEx01/History index 9cd3cc602e..1eb1bb0f67 100644 --- a/examples/extended/eventgenerator/HepMC/HepMCEx01/History +++ b/examples/extended/eventgenerator/HepMC/HepMCEx01/History @@ -14,6 +14,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Novemebr 13th 2020 Ben Morgan (HepMCEx01-V10-06-01) +- Enforce use of Serial RunManager. + +November 10th 2020 Ben Morgan (HepMCEx01-V10-06-00) +- Migration to G4RunManagerFactory. + September 4th 2018 I. Hrivnacova (HepMCEx01-V10-04-00) - Coding guidelines - Updated CMake: removed gfortran (obsolete) diff --git a/examples/extended/eventgenerator/HepMC/HepMCEx01/data/CMakeLists.txt b/examples/extended/eventgenerator/HepMC/HepMCEx01/data/CMakeLists.txt index d3be90a353..7664185c56 100644 --- a/examples/extended/eventgenerator/HepMC/HepMCEx01/data/CMakeLists.txt +++ b/examples/extended/eventgenerator/HepMC/HepMCEx01/data/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(example_MyPythia) find_package(Geant4 REQUIRED) diff --git a/examples/extended/eventgenerator/HepMC/HepMCEx02/CMakeLists.txt b/examples/extended/eventgenerator/HepMC/HepMCEx02/CMakeLists.txt index 4acd547b5a..b5b2d9417c 100644 --- a/examples/extended/eventgenerator/HepMC/HepMCEx02/CMakeLists.txt +++ b/examples/extended/eventgenerator/HepMC/HepMCEx02/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(HepMCEx02) #---------------------------------------------------------------------------- diff --git a/examples/extended/eventgenerator/HepMC/HepMCEx02/HepMCEx02.cc b/examples/extended/eventgenerator/HepMC/HepMCEx02/HepMCEx02.cc index b6d8e260db..ef13852ce8 100644 --- a/examples/extended/eventgenerator/HepMC/HepMCEx02/HepMCEx02.cc +++ b/examples/extended/eventgenerator/HepMC/HepMCEx02/HepMCEx02.cc @@ -28,14 +28,14 @@ // // // -// +// // -------------------------------------------------------------- // GEANT 4 - example of HepMC-interface // -------------------------------------------------------------- #include "G4Types.hh" -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "H02DetectorConstruction.hh" @@ -55,7 +55,7 @@ int main(int argc, char** argv) ui = new G4UIExecutive(argc, argv); } - G4RunManager* runManager= new G4RunManager; + auto* runManager= G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); // User Initialization classes (mandatory) // @@ -82,14 +82,14 @@ int main(int argc, char** argv) visManager-> Initialize(); G4cout << G4endl; - //get the pointer to the User Interface manager - G4UImanager* UImanager = G4UImanager::GetUIpointer(); + //get the pointer to the User Interface manager + G4UImanager* UImanager = G4UImanager::GetUIpointer(); if (!ui) { // batch mode visManager-> SetVerboseLevel("quiet"); G4String command = "/control/execute "; G4String fileName = argv[1]; - UImanager-> ApplyCommand(command+fileName); + UImanager-> ApplyCommand(command+fileName); } else { // interactive mode : define UI session ui-> SessionStart(); delete ui; diff --git a/examples/extended/eventgenerator/HepMC/HepMCEx02/History b/examples/extended/eventgenerator/HepMC/HepMCEx02/History index ee9f728e75..f8b0cb3dad 100644 --- a/examples/extended/eventgenerator/HepMC/HepMCEx02/History +++ b/examples/extended/eventgenerator/HepMC/HepMCEx02/History @@ -14,6 +14,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 13th 2020 Ben Morgan (HepMCEx02-V10-06-01) +- Enforce use of Serial RunManager. + +November 10th 2020 Ben Morgan (HepMCEx02-V10-06-00) +- Migration to G4RunManagerFactory. + September 4th 2018 I. Hrivnacova (HepMCEx02-V10-04-00) - Coding guidelines - Updated CMake: removed gfortran (obsolete) diff --git a/examples/extended/eventgenerator/HepMC/HepMCEx02/data/CMakeLists.txt b/examples/extended/eventgenerator/HepMC/HepMCEx02/data/CMakeLists.txt index 48a8c7c724..5e65dad67a 100644 --- a/examples/extended/eventgenerator/HepMC/HepMCEx02/data/CMakeLists.txt +++ b/examples/extended/eventgenerator/HepMC/HepMCEx02/data/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(example_MyPythia) find_package(Geant4 REQUIRED) diff --git a/examples/extended/eventgenerator/HepMC/MCTruth/CMakeLists.txt b/examples/extended/eventgenerator/HepMC/MCTruth/CMakeLists.txt index 31da87d395..4c0df87763 100644 --- a/examples/extended/eventgenerator/HepMC/MCTruth/CMakeLists.txt +++ b/examples/extended/eventgenerator/HepMC/MCTruth/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(MCTruth) #---------------------------------------------------------------------------- diff --git a/examples/extended/eventgenerator/HepMC/MCTruth/History b/examples/extended/eventgenerator/HepMC/MCTruth/History index 65d5b5376e..d0d8ba906e 100644 --- a/examples/extended/eventgenerator/HepMC/MCTruth/History +++ b/examples/extended/eventgenerator/HepMC/MCTruth/History @@ -14,6 +14,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +13 November 2020 B. Morgan (mctruthex-V10-06-01) +- Enforce use of Serial RunManager. + +10 November 2020 B. Morgan (mctruthex-V10-06-00) +- Migration to G4RunManagerFactory. + 4 September 2018 I. Hrivnacova (mctruthex-V10-04-00) - coding guidelines diff --git a/examples/extended/eventgenerator/HepMC/MCTruth/mctruthex.cc b/examples/extended/eventgenerator/HepMC/MCTruth/mctruthex.cc index b59c78089a..4cd1d68558 100644 --- a/examples/extended/eventgenerator/HepMC/MCTruth/mctruthex.cc +++ b/examples/extended/eventgenerator/HepMC/MCTruth/mctruthex.cc @@ -27,7 +27,7 @@ /// \brief Main program of the eventgenerator/HepMC/MCTruth example // // -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "FTFP_BERT.hh" @@ -41,8 +41,8 @@ int main() { - // Construct the default run manager - G4RunManager* runManager = new G4RunManager; + // Construct a serial run manager + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); // set mandatory initialization classes runManager->SetUserInitialization(new DetectorConstruction); diff --git a/examples/extended/eventgenerator/History b/examples/extended/eventgenerator/History index ebd853904a..4c77e6afd6 100644 --- a/examples/extended/eventgenerator/History +++ b/examples/extended/eventgenerator/History @@ -14,6 +14,15 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +13th November, 2020 B. Morgan (exEventGenerator-V10-06-02) +- Enforce use of Serial RunManager for serial-only examples. + +10th November, 2020 B. Morgan (exEventGenerator-V10-06-01) +- Migration to G4RunManagerFactory. + +3rd November, 2020, B. Morgan (exEventGenerator-V10-06-00) +- Support same CMake version range as core Geant4 + 10th July, 2019, I. Hrivnacova (exEventgenerator-V10-05-01) - Removed GunGPS example as obsolete. @@ -31,7 +40,7 @@ track of all tags. - instructions how to build examples now with both CMake and GNUmake - updated test versions of HepMC, pythia6 - Added missing explicit include of system of units (in pythia6_decayer.cc) - + 28th September 2012 Ivana Hrivnacova (exEventgenerator-V09-05-01) - Renamed exGPS.cc to exgps.cc to match exactly with the example directory name (this allows to configure CMake build in the same way on both case sensitive @@ -39,7 +48,7 @@ track of all tags. 26th September 2012 Ivana Hrivnacova (exEventgenerator-V09-05-00) - Added/updated CMakeLists.txt files: - adding visualization, external packages, copying macros, install target + adding visualization, external packages, copying macros, install target and comment lines - Added explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh - Replaced tabulators with space characters diff --git a/examples/extended/eventgenerator/exgps/CMakeLists.txt b/examples/extended/eventgenerator/exgps/CMakeLists.txt index 3eac8b63c0..f527af4c60 100644 --- a/examples/extended/eventgenerator/exgps/CMakeLists.txt +++ b/examples/extended/eventgenerator/exgps/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(exgps) #---------------------------------------------------------------------------- diff --git a/examples/extended/eventgenerator/exgps/History b/examples/extended/eventgenerator/exgps/History index 5fc9608d19..04f107aec1 100644 --- a/examples/extended/eventgenerator/exgps/History +++ b/examples/extended/eventgenerator/exgps/History @@ -12,6 +12,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-20 Ben Morgan (exgps-V10-06-00) +- Migration to G4RunManagerFactory. + 08-05-18 B. Morgan (exgps-V10-04-02) - Include G4Types before use of G4MULTITHREADED. For forward compatibility with move to #defines over -D for G4 preprocessor @@ -36,13 +39,13 @@ track of all tags. 23/01/2015 I. Hrivnacova (exgps-V10-01-00) - fixed .README, files description for Doxygen - + 27/10/2014 mma (exgps-V10-00-07) - put /run/initialize at begin of macro - + 24/10/2014 mma (exgps-V10-00-06) - restaure exgps_batch.in - + 22/10/2014 M.Maire (exgps-V10-00-05) - fileNames: suppress prefix exGPS - PhysicsList: Transportation alone @@ -57,7 +60,7 @@ track of all tags. - Migrated to new messenger strategy. Requires event-V10-00-14 - Adding ctest example for PhysicsChecks group. Requires ctest-V10-00-17, cmake-V10-00-26 and stattest-V10-00-V10-00-03 - for test to be active. + for test to be active. 04/06/2014 A. Dotti (exgps-V10-00-03) - Correct macros to use /run/printProgress instead of /event/printModulo @@ -71,7 +74,7 @@ track of all tags. 31/05/2014 L.Desorgher (exgps-V10-00-00) - Migrate to use of G4 built-in physics list -- Remove drawTracks and printModulo commands and adapt the macro files to use +- Remove drawTracks and printModulo commands and adapt the macro files to use the equivalent Geant4 built-in macro commands 3/12/2013 I.Hrivnacova (exgps-V09-06-05) @@ -98,10 +101,10 @@ track of all tags. 15/11/2012 Ivana Hrivnacova (exgps-V09-05-04) - Fixed exgps.cc file description (for Doxygen) - + 14/06/2012 Laurent Desorgher (exgps-V09-05-03) -- Add .README file for doxygen documentation - +- Add .README file for doxygen documentation + 11/06/2012 Laurent Desorgher (exgps-V09-05-02) - Update/Review of the code according to coding guide lines 2.2 to 3.3 @@ -116,18 +119,18 @@ track of all tags. test35,36,37 for automatic energy biasing test38 for import energy spectrum in ascii file - Changed all test*.g4mac files to produced .root rather than .aida files -- Added plotfiles.py and plotall.py and plottest35.C for plotting the results - using pyRoot and Root. +- Added plotfiles.py and plotall.py and plottest35.C for plotting the results + using pyRoot and Root. 09/11/2010 - J.Allison (exgps-V09-03-04) - Removed #include G4UIXm.hh (causes conflict with G4UIExecutive.hh) 22/10/2010 - G.Folger (exgps-V09-03-03) -- Correct exgps_batch.in removing Vis +- Correct exgps_batch.in removing Vis 18/10/2010 - G.Folger (exgps-V09-03-02) - Fix compilation warning; occurs only if G4ANALYSIS_USE not set -- add exgps_batch.in, a copy of exgpgs.in without /analysis commands +- add exgps_batch.in, a copy of exgpgs.in without /analysis commands 03/06/2010 - J.Perl (exgps-V09-03-01) - Updated vis usage @@ -142,7 +145,7 @@ track of all tags. - updated g4mac files in ./macros 05/12/2008 G.Barrand -- exGPSAnalysisManager : have a comment in case the +- exGPSAnalysisManager : have a comment in case the AIDA_createAnalysisFactory or the AIDA::ITree creation fails ; which is something that may happen. - exGPSAnalysisManager : have the creation of the AIDA::IPlotter @@ -179,7 +182,7 @@ track of all tags. - Changed particle_name to PDGcode in the ntuple exit 19/07/2005 F.Lei (exgps-V07-01-00) -- Changing in GNUmakefile +- Changing in GNUmakefile LOADLIBS += `aida-config --lib` by LDLIBS += `aida-config --lib` diff --git a/examples/extended/eventgenerator/exgps/exgps.cc b/examples/extended/eventgenerator/exgps/exgps.cc index 7c0e38110f..dd66c30bc2 100644 --- a/examples/extended/eventgenerator/exgps/exgps.cc +++ b/examples/extended/eventgenerator/exgps/exgps.cc @@ -32,11 +32,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" @@ -56,14 +52,10 @@ int main(int argc,char** argv) { if (argc == 1) ui = new G4UIExecutive(argc,argv); // Construct the default run manager -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); G4int nThreads = G4Threading::G4GetNumberOfCores(); if (argc==3) nThreads = G4UIcommand::ConvertToInt(argv[2]); runManager->SetNumberOfThreads(nThreads); -#else - G4RunManager * runManager = new G4RunManager; -#endif //set mandatory initialization classes GeometryConstruction* detector = new GeometryConstruction; diff --git a/examples/extended/eventgenerator/exgps/exgps_batch.out b/examples/extended/eventgenerator/exgps/exgps_batch.out index 8df6bbbbd1..ab286c8957 100644 --- a/examples/extended/eventgenerator/exgps/exgps_batch.out +++ b/examples/extended/eventgenerator/exgps/exgps_batch.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -14,7 +15,8 @@ Set file name: exgps ### Run 0 starts. -... open Root analysis file : exgps.root - done +... create file : exgps.root - done +... open analysis file : exgps.root - done --> Event 0 starts. --> Event 10000 starts. --> Event 20000 starts. @@ -25,5 +27,5 @@ Set file name: exgps --> Event 70000 starts. --> Event 80000 starts. --> Event 90000 starts. -... write Root file : exgps.root - done -... close Root file : exgps.root - done +... write file : exgps.root - done +... close file : exgps.root - done diff --git a/examples/extended/eventgenerator/exgps/macros/plotall.py b/examples/extended/eventgenerator/exgps/macros/plotall.py old mode 100644 new mode 100755 diff --git a/examples/extended/eventgenerator/exgps/macros/plotfiles.py b/examples/extended/eventgenerator/exgps/macros/plotfiles.py old mode 100644 new mode 100755 diff --git a/examples/extended/eventgenerator/exgps/macros/plottest35.py b/examples/extended/eventgenerator/exgps/macros/plottest35.py old mode 100644 new mode 100755 diff --git a/examples/extended/eventgenerator/particleGun/CMakeLists.txt b/examples/extended/eventgenerator/particleGun/CMakeLists.txt index 5afd5fe30b..f5e3b2f5e6 100644 --- a/examples/extended/eventgenerator/particleGun/CMakeLists.txt +++ b/examples/extended/eventgenerator/particleGun/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(particleGun) #---------------------------------------------------------------------------- diff --git a/examples/extended/eventgenerator/particleGun/particleGun_run1.out b/examples/extended/eventgenerator/particleGun/particleGun_run1.out index 74168e29f2..df1f250b32 100644 --- a/examples/extended/eventgenerator/particleGun/particleGun_run1.out +++ b/examples/extended/eventgenerator/particleGun/particleGun_run1.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -60,7 +60,7 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Run terminated. Run Summary Number of events processed : 1 - User=0.010000s Real=0.000583s Sys=0.000000s + User=0.000000s Real=0.000417s Sys=0.000000s # /tracking/verbose 0 /run/beamOn 5 @@ -80,7 +80,7 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 5 - User=0.000000s Real=0.000054s Sys=0.000000s + User=0.000000s Real=0.000035s Sys=0.000000s G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 9 of which, static: 0 diff --git a/examples/extended/eventgenerator/particleGun/particleGun_run2.out b/examples/extended/eventgenerator/particleGun/particleGun_run2.out index 1171dc4685..182d75c441 100644 --- a/examples/extended/eventgenerator/particleGun/particleGun_run2.out +++ b/examples/extended/eventgenerator/particleGun/particleGun_run2.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -36,13 +36,14 @@ Index : 0 used in the geometry : Yes ================================================================== ### Run 0 starts. -... open Root analysis file : run2.root - done +... create file : run2.root - done +... open analysis file : run2.root - done Run terminated. Run Summary Number of events processed : 100000 - User=0.370000s Real=0.387145s Sys=0.000000s -... write Root file : run2.root - done -... close Root file : run2.root - done + User=0.170000s Real=0.181199s Sys=0.000000s +... write file : run2.root - done +... close file : run2.root - done G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 9 of which, static: 0 diff --git a/examples/extended/eventgenerator/particleGun/particleGun_run3.out b/examples/extended/eventgenerator/particleGun/particleGun_run3.out index 9268d04bfb..f28d3ae756 100644 --- a/examples/extended/eventgenerator/particleGun/particleGun_run3.out +++ b/examples/extended/eventgenerator/particleGun/particleGun_run3.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -37,13 +37,14 @@ Index : 0 used in the geometry : Yes ================================================================== ### Run 0 starts. -... open Root analysis file : run3.root - done +... create file : run3.root - done +... open analysis file : run3.root - done Run terminated. Run Summary Number of events processed : 100000 - User=0.400000s Real=0.398740s Sys=0.000000s -... write Root file : run3.root - done -... close Root file : run3.root - done + User=0.180000s Real=0.247204s Sys=0.000000s +... write file : run3.root - done +... close file : run3.root - done G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 9 of which, static: 0 diff --git a/examples/extended/eventgenerator/particleGun/particleGun_run4.out b/examples/extended/eventgenerator/particleGun/particleGun_run4.out index 92b639194f..a21ddb8dff 100644 --- a/examples/extended/eventgenerator/particleGun/particleGun_run4.out +++ b/examples/extended/eventgenerator/particleGun/particleGun_run4.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -42,7 +42,8 @@ Index : 0 used in the geometry : Yes ================================================================== ### Run 0 starts. -... open Root analysis file : run4.root - done +... create file : run4.root - done +... open analysis file : run4.root - done --> Event 0 starts. --> Event 100000 starts. --> Event 200000 starts. @@ -56,9 +57,9 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1000000 - User=5.070000s Real=5.142701s Sys=0.010000s -... write Root file : run4.root - done -... close Root file : run4.root - done + User=2.850000s Real=2.899118s Sys=0.000000s +... write file : run4.root - done +... close file : run4.root - done G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 9 of which, static: 0 diff --git a/examples/extended/eventgenerator/pythia/decayer6/CMakeLists.txt b/examples/extended/eventgenerator/pythia/decayer6/CMakeLists.txt index b2ceafce60..bf11b2680c 100644 --- a/examples/extended/eventgenerator/pythia/decayer6/CMakeLists.txt +++ b/examples/extended/eventgenerator/pythia/decayer6/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(decayer6) #---------------------------------------------------------------------------- diff --git a/examples/extended/eventgenerator/pythia/decayer6/History b/examples/extended/eventgenerator/pythia/decayer6/History index dc04f43cd7..2f503ab796 100644 --- a/examples/extended/eventgenerator/pythia/decayer6/History +++ b/examples/extended/eventgenerator/pythia/decayer6/History @@ -13,9 +13,15 @@ modifications introduced in the code and keep track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +13/11/20 B.Morgan (p6decayer-V10-06-01) +- Enforce use of Serial RunManager. + +10/11/2020 B.Morgan (p6decayer-V10-06-00) +- Migration to G4RunManagerFactory. + 29/09/2017 I.Hrivnacova (p6decayer-V10-03-00,01) - Updated for changes in common classes -- Updated main (removed G4UI_USE, G4VIS_USE macros, moved initialization +- Updated main (removed G4UI_USE, G4VIS_USE macros, moved initialization in macros) 24/10/2016 I.Hrivnacova (p6decayer-V10-02-05) @@ -25,16 +31,16 @@ modifications introduced in the code and keep track of all tags. - remove direct use of aParticleIterator, use GetParticleTableIterator(). fix required by clang39 on Linux and MAC -21/07/2016 I.Hrivnacova (p6decayer-V10-02-03) +21/07/2016 I.Hrivnacova (p6decayer-V10-02-03) - Adding extern keyword to data declarations in pythia6_common_address.c This fixes problem on MAC OSX, where no decay happenned. -20/07/2016 I.Hrivnacova (p6decayer-V10-02-02) +20/07/2016 I.Hrivnacova (p6decayer-V10-02-02) - Fixed compiler warning - Coding guidelines in common -04/07/2016 I.Hrivnacova (p6decayer-V10-02-01) - (p6decayer-V10-02-00) +04/07/2016 I.Hrivnacova (p6decayer-V10-02-01) + (p6decayer-V10-02-00) - Fixes for Doxygen documentation 04/11/2015 - I.Hrivnacova (p6decayer-V10-01-01) @@ -42,7 +48,7 @@ modifications introduced in the code and keep track of all tags. 09/06/2015 - I.Hrivnacova (p6decayer-V10-01-00) ------------------------- -- Set a specific prefix to common library and test +- Set a specific prefix to common library and test to avoid name clashes when building all extended examples at once 06/11/2014 - I.Hrivnacova (p6decayer-V10-00-03) @@ -95,7 +101,7 @@ Code clean-up: ------------------------- - Introduced use of classes from common - Introduced a physics builder for adding the external decayer to - an existing physics list + an existing physics list - Applied coding guidelines 02/12/2010 - I.Hrivnacova (p6decayer-V09-03-02) diff --git a/examples/extended/eventgenerator/pythia/decayer6/common/CMakeLists.txt b/examples/extended/eventgenerator/pythia/decayer6/common/CMakeLists.txt index 55135c5aab..f10c63fcba 100644 --- a/examples/extended/eventgenerator/pythia/decayer6/common/CMakeLists.txt +++ b/examples/extended/eventgenerator/pythia/decayer6/common/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(${common_prefix}common) #---------------------------------------------------------------------------- diff --git a/examples/extended/eventgenerator/pythia/decayer6/pythia6_decayer.cc b/examples/extended/eventgenerator/pythia/decayer6/pythia6_decayer.cc index ccc2fc6655..084605008a 100644 --- a/examples/extended/eventgenerator/pythia/decayer6/pythia6_decayer.cc +++ b/examples/extended/eventgenerator/pythia/decayer6/pythia6_decayer.cc @@ -32,7 +32,7 @@ #include "DetectorConstruction.hh" #include "GunPrimaryGeneratorAction.hh" -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "QGSP_BERT.hh" #include "G4ThreeVector.hh" @@ -55,20 +55,20 @@ int main(int argc,char** argv) // Choose the Random engine // G4Random::setTheEngine(new CLHEP::RanecuEngine); - - // Construct the default run manager + + // Construct a serial run manager // - G4RunManager * runManager = new G4RunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); // Set mandatory initialization classes // runManager->SetUserInitialization(new DetectorConstruction); - + // G4VModularPhysicsList* physicsList = new QGSP_BERT; physicsList->RegisterPhysics(new P6DExtDecayerPhysics()); runManager->SetUserInitialization(physicsList); - + // Set user action classes // runManager->SetUserAction( @@ -87,13 +87,13 @@ int main(int argc,char** argv) // Process macro or start UI session // - if ( ! ui ) { + if ( ! ui ) { // batch mode G4String command = "/control/execute "; G4String fileName = argv[1]; UImanager->ApplyCommand(command+fileName); } - else { + else { // interactive mode UImanager->ApplyCommand("/control/execute init_vis.mac"); ui->SessionStart(); diff --git a/examples/extended/eventgenerator/userPrimaryGenerator/CMakeLists.txt b/examples/extended/eventgenerator/userPrimaryGenerator/CMakeLists.txt index f02bcafdb3..05f740ac6e 100644 --- a/examples/extended/eventgenerator/userPrimaryGenerator/CMakeLists.txt +++ b/examples/extended/eventgenerator/userPrimaryGenerator/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(userPrimaryGenerator) #---------------------------------------------------------------------------- diff --git a/examples/extended/eventgenerator/userPrimaryGenerator/userPrimaryGenerator.out b/examples/extended/eventgenerator/userPrimaryGenerator/userPrimaryGenerator.out index 8649e6ca60..fc98b002b9 100644 --- a/examples/extended/eventgenerator/userPrimaryGenerator/userPrimaryGenerator.out +++ b/examples/extended/eventgenerator/userPrimaryGenerator/userPrimaryGenerator.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -44,7 +44,7 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 100000 - User=0.650000s Real=0.660754s Sys=0.000000s + User=0.350000s Real=0.385281s Sys=0.000000s G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 9 of which, static: 0 diff --git a/examples/extended/exoticphysics/CMakeLists.txt b/examples/extended/exoticphysics/CMakeLists.txt index ebf2df082a..1cff1433fb 100644 --- a/examples/extended/exoticphysics/CMakeLists.txt +++ b/examples/extended/exoticphysics/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all exoticphysics examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(channeling) add_subdirectory(dmparticle) diff --git a/examples/extended/exoticphysics/History b/examples/extended/exoticphysics/History index cbfd3e8c5c..f156dff651 100644 --- a/examples/extended/exoticphysics/History +++ b/examples/extended/exoticphysics/History @@ -15,6 +15,12 @@ track of all tags. ---------------------------------------------------------- +10 November 2020: B. Morgan (exExoticPhysics-V10-06-01) +- Migration to G4RunManagerFactory. + +03 November 2020: B. Morgan (exExoticPhysics-V10-06-00) +- Support same CMake version range as core Geant4 + 31 January 2019: I. Hrivnacova (exExoticphysics-V10-05-00) - Merged GitHub PR #4: all Boolean operators now return G4bool. diff --git a/examples/extended/exoticphysics/channeling/CMakeLists.txt b/examples/extended/exoticphysics/channeling/CMakeLists.txt index 4f3ef21b0e..a6506f66a0 100644 --- a/examples/extended/exoticphysics/channeling/CMakeLists.txt +++ b/examples/extended/exoticphysics/channeling/CMakeLists.txt @@ -1,7 +1,10 @@ #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(channeling) #---------------------------------------------------------------------------- diff --git a/examples/extended/exoticphysics/channeling/History b/examples/extended/exoticphysics/channeling/History index 1e40995403..f194d1de6f 100644 --- a/examples/extended/exoticphysics/channeling/History +++ b/examples/extended/exoticphysics/channeling/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10, 2020 B. Morgan (channelingExample-V10-06-00) +- Migration to G4RunManagerFactory. + May 08, 2018 B. Morgan (channelingExample-V10-04-00) - Include G4Types before use of G4MULTITHREADED. For forward compatibility with move to #defines over -D for G4 preprocessor diff --git a/examples/extended/exoticphysics/channeling/analysis/analyse_ch_eff.C b/examples/extended/exoticphysics/channeling/analysis/analyse_ch_eff.C old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/channeling/channeling.cc b/examples/extended/exoticphysics/channeling/channeling.cc index 0a6ff80c8f..e862f53f06 100644 --- a/examples/extended/exoticphysics/channeling/channeling.cc +++ b/examples/extended/exoticphysics/channeling/channeling.cc @@ -28,23 +28,12 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4ScoringManager.hh" #include "G4UImanager.hh" -#ifdef G4MULTITHREADED #include "UserActionInitialization.hh" -#else -#include "PrimaryGeneratorAction.hh" -#include "StackingAction.hh" -#include "EventAction.hh" -#include "RunAction.hh" -#endif #include "DetectorConstruction.hh" @@ -69,12 +58,8 @@ int main(int argc,char** argv) } // Construct the default run manager -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(G4Threading::G4GetNumberOfCores() - 2); -#else - G4RunManager* runManager = new G4RunManager; -#endif // Activate UI-command base scorer G4ScoringManager * scManager = G4ScoringManager::GetScoringManager(); @@ -90,15 +75,8 @@ int main(int argc,char** argv) physlist->RegisterPhysics(biasingPhysics); runManager->SetUserInitialization(physlist); -#ifndef G4MULTITHREADED // Set user action classes - runManager->SetUserAction(new PrimaryGeneratorAction()); - runManager->SetUserAction(new EventAction()); - runManager->SetUserAction(new StackingAction()); - runManager->SetUserAction(new RunAction()); -#else runManager->SetUserInitialization(new UserActionInitialization()); -#endif runManager->SetUserInitialization(new DetectorConstruction()); diff --git a/examples/extended/exoticphysics/channeling/channeling.out b/examples/extended/exoticphysics/channeling/channeling.out index d69e3b5731..d40c975214 100644 --- a/examples/extended/exoticphysics/channeling/channeling.out +++ b/examples/extended/exoticphysics/channeling/channeling.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -14,7 +15,7 @@ <<< Geant4 Physics List simulation engine: FTFP_BERT -G4VModularPhysicsList::ReplacePhysics: G4EmStandardwith type : 2 is replaces with G4EmStandard_opt4_channeling +G4VModularPhysicsList::ReplacePhysics: G4EmStandard with type : 2 is replaced with G4EmStandard_opt4_channeling Using Root Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... @@ -30,10 +31,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -80,7 +83,7 @@ data/Si220pl_eld.txt Attaching biasing operator ChannelingChangeXS-Many to logical volume crystal.logic --- G4CoupledTransportation is used - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -149,7 +152,7 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 0.1 GeV to 10 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 10 TeV + ePairProd : Emin= 0 eV Emax= 10 TeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 eV to 10 TeV, 20 bins/decade, spline: 1 @@ -178,7 +181,7 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 0.1 GeV to 10 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 10 TeV + ePairProd : Emin= 0 eV Emax= 10 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -202,14 +205,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 10 TeV + hBrem : Emin= 0 eV Emax= 10 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 Sampling table 13x1001 from 7.50618 GeV to 10 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 10 TeV + hPairProd : Emin= 0 eV Emax= 10 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Used Lambda table of anti_proton @@ -254,14 +257,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 10 TeV + hBrem : Emin= 0 eV Emax= 10 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 Sampling table 13x1001 from 7.50618 GeV to 10 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 10 TeV + hPairProd : Emin= 0 eV Emax= 10 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from 100 eV to 10 TeV, 20 bins/decade, spline: 1 @@ -281,14 +284,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 10 TeV + hBrem : Emin= 0 eV Emax= 10 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 Sampling table 14x1001 from 3.94942 GeV to 10 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 10 TeV + hPairProd : Emin= 0 eV Emax= 10 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from 100 eV to 10 TeV, 20 bins/decade, spline: 1 @@ -308,14 +311,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 10 TeV + hBrem : Emin= 0 eV Emax= 10 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 Sampling table 14x1001 from 3.94942 GeV to 10 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 10 TeV + hPairProd : Emin= 0 eV Emax= 10 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -336,14 +339,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 10 TeV + MuBrem : Emin= 0 eV Emax= 10 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 1 GeV to 10 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 10 TeV + muPairProd : Emin= 0 eV Emax= 10 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from 100 eV to 10 TeV, 20 bins/decade, spline: 1 @@ -364,14 +367,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 10 TeV + MuBrem : Emin= 0 eV Emax= 10 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 1 GeV to 10 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 10 TeV + muPairProd : Emin= 0 eV Emax= 10 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -391,14 +394,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 10 TeV + hBrem : Emin= 0 eV Emax= 10 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 Sampling table 16x1001 from 1.11656 GeV to 10 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 10 TeV + hPairProd : Emin= 0 eV Emax= 10 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from 100 eV to 10 TeV, 20 bins/decade, spline: 1 @@ -418,14 +421,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 10 TeV + hBrem : Emin= 0 eV Emax= 10 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 10 TeV in 220 bins Lambda tables from threshold to 10 TeV, 20 bins/decade, spline: 1 Sampling table 16x1001 from 1.11656 GeV to 10 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 10 TeV + hPairProd : Emin= 0 eV Emax= 10 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -454,6 +457,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -528,6 +553,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -639,8 +677,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -705,8 +743,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -747,12 +785,12 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -... open Root analysis file : ExExCh.root - done +... create file : ExExCh.root - done +... open analysis file : ExExCh.root - done --> Event 0 starts. --> Event 1 starts. --> Event 2 starts. @@ -1753,7 +1791,10 @@ See commands in /vis/modeling/trajectories/ for other options. --> Event 997 starts. --> Event 998 starts. --> Event 999 starts. -... write Root file : ExExCh.root - done -... close Root file : ExExCh.root - done +... write file : ExExCh.root - done +... close file : ExExCh.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/exoticphysics/channeling/include/UserActionInitialization.hh b/examples/extended/exoticphysics/channeling/include/UserActionInitialization.hh old mode 100755 new mode 100644 index 583a779f11..4263ede89b --- a/examples/extended/exoticphysics/channeling/include/UserActionInitialization.hh +++ b/examples/extended/exoticphysics/channeling/include/UserActionInitialization.hh @@ -25,13 +25,8 @@ // // -#include "G4Types.hh" - -#ifdef G4MULTITHREADED - #ifndef UserActionInitialization_h #define UserActionInitialization_h 1 -#endif #include "G4VUserActionInitialization.hh" class G4GeneralParticleSource; diff --git a/examples/extended/exoticphysics/channeling/src/UserActionInitialization.cc b/examples/extended/exoticphysics/channeling/src/UserActionInitialization.cc old mode 100755 new mode 100644 index a8f275aa13..8f3d32b698 --- a/examples/extended/exoticphysics/channeling/src/UserActionInitialization.cc +++ b/examples/extended/exoticphysics/channeling/src/UserActionInitialization.cc @@ -26,7 +26,6 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED #include "UserActionInitialization.hh" #include "PrimaryGeneratorAction.hh" @@ -52,4 +51,3 @@ void UserActionInitialization::Build() const { } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -#endif diff --git a/examples/extended/exoticphysics/dmparticle/.README.txt b/examples/extended/exoticphysics/dmparticle/.README.txt old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/CMakeLists.txt b/examples/extended/exoticphysics/dmparticle/CMakeLists.txt old mode 100755 new mode 100644 index ecfae411da..9e10185a95 --- a/examples/extended/exoticphysics/dmparticle/CMakeLists.txt +++ b/examples/extended/exoticphysics/dmparticle/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(dmparticle) #---------------------------------------------------------------------------- diff --git a/examples/extended/exoticphysics/dmparticle/GNUmakefile b/examples/extended/exoticphysics/dmparticle/GNUmakefile old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/History b/examples/extended/exoticphysics/dmparticle/History index f1a9cd4f55..9992da9d55 100644 --- a/examples/extended/exoticphysics/dmparticle/History +++ b/examples/extended/exoticphysics/dmparticle/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-20 B. Morgan (dmparticle-V10-06-00) +- Migration to G4RunManagerFactory. + 17-05-18 J.Allison (dmparticle-V10-04-01) - RunAction.cc: Remove vis commands. @@ -29,7 +32,7 @@ track of all tags. - fixed LDMP production model 06-06-17 I.Hrivnacova (dmparticle-V10-03-02) -- fixed Doxygen documentation +- fixed Doxygen documentation 06-06-17 V.Ivanchenko (dmparticle-V10-03-01) - general cleanup of the code and documentation diff --git a/examples/extended/exoticphysics/dmparticle/README b/examples/extended/exoticphysics/dmparticle/README old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/dmparticle.cc b/examples/extended/exoticphysics/dmparticle/dmparticle.cc old mode 100755 new mode 100644 index 29233de173..4143cc8349 --- a/examples/extended/exoticphysics/dmparticle/dmparticle.cc +++ b/examples/extended/exoticphysics/dmparticle/dmparticle.cc @@ -32,8 +32,7 @@ #include "G4Types.hh" -#include "G4RunManager.hh" -#include "G4MTRunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIcommand.hh" #include "Randomize.hh" @@ -47,7 +46,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -int main(int argc,char** argv) +int main(int argc,char** argv) { // Instantiate G4UIExecutive if interactive mode G4UIExecutive* ui = nullptr; @@ -58,36 +57,32 @@ int main(int argc,char** argv) //choose the Random engine CLHEP::HepRandom::setTheEngine(new CLHEP::Ranlux64Engine); - G4UImanager* UI = G4UImanager::GetUIpointer(); + G4UImanager* UI = G4UImanager::GetUIpointer(); PhysicsList* phys = new PhysicsList(); // defined mass of LDM particles - if(argc > 2) { + if(argc > 2) { G4String s = argv[2]; UI->ApplyCommand("/control/verbose 1"); UI->ApplyCommand("/testex/phys/setLDMPhotonMass " + s + " GeV"); } - if(argc > 3) { + if(argc > 3) { G4String s = argv[3]; UI->ApplyCommand("/testex/phys/setLDMHiMass " + s + " GeV"); } - + // Construct the default run manager -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); G4int nThreads = std::min(G4Threading::G4GetNumberOfCores(),2); runManager->SetNumberOfThreads(nThreads); - G4cout << "===== dmparticle is started with " + G4cout << "===== dmparticle is started with " << runManager->GetNumberOfThreads() << " threads =====" << G4endl; -#else - G4RunManager* runManager = new G4RunManager(); -#endif // set mandatory initialization classes DetectorConstruction* det = new DetectorConstruction(); runManager->SetUserInitialization( phys ); runManager->SetUserInitialization( det); - + // set user action classes runManager->SetUserInitialization( new ActionInitialization(det)); @@ -101,10 +96,10 @@ int main(int argc,char** argv) UI->ApplyCommand(command+fileName); } else //define visualization and UI terminal for interactive mode - { + { ui->SessionStart(); delete ui; - } + } // job termination delete visManager; delete runManager; diff --git a/examples/extended/exoticphysics/dmparticle/dmparticle.out b/examples/extended/exoticphysics/dmparticle/dmparticle.out index 9b1c66fb77..523d59e896 100644 --- a/examples/extended/exoticphysics/dmparticle/dmparticle.out +++ b/examples/extended/exoticphysics/dmparticle/dmparticle.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,6 +13,7 @@ WWW : http://geant4.org/ ************************************************************** +===== dmparticle is started with 1 threads ===== LDMPhoton is created: m(GeV)= 0.5 Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... @@ -27,10 +29,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -106,10 +110,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -133,10 +138,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -164,9 +170,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -180,7 +186,7 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for proton SubType=4 @@ -188,7 +194,7 @@ hPairProd: for proton SubType=4 Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -200,13 +206,13 @@ ldmBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ldmBrem : Emin= 0 eV Emax= 100 TeV + ldmBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -218,9 +224,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -231,9 +237,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -247,7 +253,7 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for anti_proton SubType=4 @@ -255,7 +261,7 @@ hPairProd: for anti_proton SubType=4 Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -264,9 +270,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -280,7 +286,7 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for kaon+ SubType=4 @@ -288,7 +294,7 @@ hPairProd: for kaon+ SubType=4 Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -297,9 +303,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -313,7 +319,7 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for kaon- SubType=4 @@ -321,7 +327,7 @@ hPairProd: for kaon- SubType=4 Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -330,9 +336,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -347,7 +353,7 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied muPairProd: for mu+ SubType=4 @@ -355,7 +361,7 @@ muPairProd: for mu+ SubType=4 Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -364,9 +370,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -381,7 +387,7 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied muPairProd: for mu- SubType=4 @@ -389,7 +395,7 @@ muPairProd: for mu- SubType=4 Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -398,9 +404,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -414,7 +420,7 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for pi+ SubType=4 @@ -422,7 +428,7 @@ hPairProd: for pi+ SubType=4 Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -431,9 +437,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -447,7 +453,7 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for pi- SubType=4 @@ -455,7 +461,7 @@ hPairProd: for pi- SubType=4 Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -475,7 +481,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_W Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 106.311 keV e- 2.31979 MeV e+ 2.13257 MeV proton 100 keV + Energy thresholds : gamma 106.333 keV e- 2.29087 MeV e+ 2.15443 MeV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -486,582 +492,567 @@ See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. ### Run 0 start analysis activation: BinsE= 100 Emax(keV)= 1e+08 -... open Root analysis file : dmp.root - done +... create file : dmp.root - done +... open analysis file : dmp.root - done --> Event 0 starts. Event = 0 z0 = -779.999 Primary direction = (0,0,1) ### New exotic particle produced: ldmphoton Ekin(GeV)= 1.28053 Mass(GeV)= 0.5 TrackId= 3 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.33866 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.721702 Mass(GeV)= 0.5 TrackId= 59 -### New exotic particle produced: ldmphoton Ekin(GeV)= 11.2464 Mass(GeV)= 0.5 TrackId= 69 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.692119 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.48439 Mass(GeV)= 0.5 TrackId= 45 -### New exotic particle produced: ldmphoton Ekin(GeV)= 39.8872 Mass(GeV)= 0.5 TrackId= 65 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.674033 Mass(GeV)= 0.5 TrackId= 7 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.22559 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 34.7665 Mass(GeV)= 0.5 TrackId= 16 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.23798 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.51304 Mass(GeV)= 0.5 TrackId= 50 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.24268 Mass(GeV)= 0.5 TrackId= 53 -### New exotic particle produced: ldmphoton Ekin(GeV)= 15.5717 Mass(GeV)= 0.5 TrackId= 57 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.742261 Mass(GeV)= 0.5 TrackId= 4 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.04975 Mass(GeV)= 0.5 TrackId= 7 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.21313 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 21.8944 Mass(GeV)= 0.5 TrackId= 37 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.04374 Mass(GeV)= 0.5 TrackId= 72 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.67035 Mass(GeV)= 0.5 TrackId= 74 -### New exotic particle produced: ldmphoton Ekin(GeV)= 9.41562 Mass(GeV)= 0.5 TrackId= 83 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.850313 Mass(GeV)= 0.5 TrackId= 6 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.41822 Mass(GeV)= 0.5 TrackId= 9 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.11119 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.58588 Mass(GeV)= 0.5 TrackId= 18 -### New exotic particle produced: ldmphoton Ekin(GeV)= 52.6257 Mass(GeV)= 0.5 TrackId= 22 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.19626 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.75917 Mass(GeV)= 0.5 TrackId= 80 -### New exotic particle produced: ldmphoton Ekin(GeV)= 49.9649 Mass(GeV)= 0.5 TrackId= 9 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.75307 Mass(GeV)= 0.5 TrackId= 52 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.75906 Mass(GeV)= 0.5 TrackId= 3 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.52956 Mass(GeV)= 0.5 TrackId= 7 -### New exotic particle produced: ldmphoton Ekin(GeV)= 7.22778 Mass(GeV)= 0.5 TrackId= 9 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.16495 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.88203 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.726119 Mass(GeV)= 0.5 TrackId= 21 -### New exotic particle produced: ldmphoton Ekin(GeV)= 25.8919 Mass(GeV)= 0.5 TrackId= 23 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.772502 Mass(GeV)= 0.5 TrackId= 28 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.59712 Mass(GeV)= 0.5 TrackId= 41 -### New exotic particle produced: ldmphoton Ekin(GeV)= 22.5775 Mass(GeV)= 0.5 TrackId= 54 -### New exotic particle produced: ldmphoton Ekin(GeV)= 15.8198 Mass(GeV)= 0.5 TrackId= 8 -### New exotic particle produced: ldmphoton Ekin(GeV)= 7.03052 Mass(GeV)= 0.5 TrackId= 12 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.18994 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.48802 Mass(GeV)= 0.5 TrackId= 65 -### New exotic particle produced: ldmphoton Ekin(GeV)= 24.3885 Mass(GeV)= 0.5 TrackId= 2 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.826573 Mass(GeV)= 0.5 TrackId= 6 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.05839 Mass(GeV)= 0.5 TrackId= 18 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.13361 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.24077 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 63.4334 Mass(GeV)= 0.5 TrackId= 22 -### New exotic particle produced: ldmphoton Ekin(GeV)= 9.50355 Mass(GeV)= 0.5 TrackId= 39 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.776919 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.660779 Mass(GeV)= 0.5 TrackId= 29 +### New exotic particle produced: ldmphoton Ekin(GeV)= 8.81904 Mass(GeV)= 0.5 TrackId= 35 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.61947 Mass(GeV)= 0.5 TrackId= 55 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.40892 Mass(GeV)= 0.5 TrackId= 56 +### New exotic particle produced: ldmphoton Ekin(GeV)= 18.2161 Mass(GeV)= 0.5 TrackId= 6 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.62645 Mass(GeV)= 0.5 TrackId= 7 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.60981 Mass(GeV)= 0.5 TrackId= 8 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.18863 Mass(GeV)= 0.5 TrackId= 28 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.36675 Mass(GeV)= 0.5 TrackId= 33 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.771707 Mass(GeV)= 0.5 TrackId= 56 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.07085 Mass(GeV)= 0.5 TrackId= 67 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.647446 Mass(GeV)= 0.5 TrackId= 68 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.00583 Mass(GeV)= 0.5 TrackId= 73 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.05336 Mass(GeV)= 0.5 TrackId= 74 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.04346 Mass(GeV)= 0.5 TrackId= 17 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.20809 Mass(GeV)= 0.5 TrackId= 31 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.7523 Mass(GeV)= 0.5 TrackId= 34 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.42822 Mass(GeV)= 0.5 TrackId= 49 +### New exotic particle produced: ldmphoton Ekin(GeV)= 16.3965 Mass(GeV)= 0.5 TrackId= 53 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.36512 Mass(GeV)= 0.5 TrackId= 80 +### New exotic particle produced: ldmphoton Ekin(GeV)= 12.9649 Mass(GeV)= 0.5 TrackId= 8 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.36994 Mass(GeV)= 0.5 TrackId= 13 +### New exotic particle produced: ldmphoton Ekin(GeV)= 6.68063 Mass(GeV)= 0.5 TrackId= 17 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.858724 Mass(GeV)= 0.5 TrackId= 22 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.37826 Mass(GeV)= 0.5 TrackId= 29 +### New exotic particle produced: ldmphoton Ekin(GeV)= 17.3747 Mass(GeV)= 0.5 TrackId= 53 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.945271 Mass(GeV)= 0.5 TrackId= 57 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.88175 Mass(GeV)= 0.5 TrackId= 84 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.01884 Mass(GeV)= 0.5 TrackId= 11 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.71194 Mass(GeV)= 0.5 TrackId= 16 +### New exotic particle produced: ldmphoton Ekin(GeV)= 22.554 Mass(GeV)= 0.5 TrackId= 19 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.704855 Mass(GeV)= 0.5 TrackId= 34 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.27546 Mass(GeV)= 0.5 TrackId= 45 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.51764 Mass(GeV)= 0.5 TrackId= 57 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.69685 Mass(GeV)= 0.5 TrackId= 61 +### New exotic particle produced: ldmphoton Ekin(GeV)= 9.72839 Mass(GeV)= 0.5 TrackId= 62 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.860553 Mass(GeV)= 0.5 TrackId= 63 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.90303 Mass(GeV)= 0.5 TrackId= 69 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.71291 Mass(GeV)= 0.5 TrackId= 4 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.655921 Mass(GeV)= 0.5 TrackId= 11 +### New exotic particle produced: ldmphoton Ekin(GeV)= 17.3785 Mass(GeV)= 0.5 TrackId= 36 +### New exotic particle produced: ldmphoton Ekin(GeV)= 17.7383 Mass(GeV)= 0.5 TrackId= 44 +### New exotic particle produced: ldmphoton Ekin(GeV)= 28.4125 Mass(GeV)= 0.5 TrackId= 51 +### New exotic particle produced: ldmphoton Ekin(GeV)= 31.3299 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.742705 Mass(GeV)= 0.5 TrackId= 12 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.824611 Mass(GeV)= 0.5 TrackId= 13 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.3407 Mass(GeV)= 0.5 TrackId= 25 +### New exotic particle produced: ldmphoton Ekin(GeV)= 19.875 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 11.4934 Mass(GeV)= 0.5 TrackId= 61 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.91244 Mass(GeV)= 0.5 TrackId= 62 +### New exotic particle produced: ldmphoton Ekin(GeV)= 33.0696 Mass(GeV)= 0.5 TrackId= 20 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.77503 Mass(GeV)= 0.5 TrackId= 21 +### New exotic particle produced: ldmphoton Ekin(GeV)= 18.9452 Mass(GeV)= 0.5 TrackId= 52 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.55694 Mass(GeV)= 0.5 TrackId= 59 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.92688 Mass(GeV)= 0.5 TrackId= 68 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.96147 Mass(GeV)= 0.5 TrackId= 75 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.11025 Mass(GeV)= 0.5 TrackId= 10 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.27964 Mass(GeV)= 0.5 TrackId= 15 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.67245 Mass(GeV)= 0.5 TrackId= 24 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.948286 Mass(GeV)= 0.5 TrackId= 30 +### New exotic particle produced: ldmphoton Ekin(GeV)= 13.6115 Mass(GeV)= 0.5 TrackId= 45 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.749138 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.80663 Mass(GeV)= 0.5 TrackId= 50 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.36897 Mass(GeV)= 0.5 TrackId= 76 +### New exotic particle produced: ldmphoton Ekin(GeV)= 11.5251 Mass(GeV)= 0.5 TrackId= 16 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.824054 Mass(GeV)= 0.5 TrackId= 21 +### New exotic particle produced: ldmphoton Ekin(GeV)= 7.85819 Mass(GeV)= 0.5 TrackId= 65 --> Event 10 starts. -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.46469 Mass(GeV)= 0.5 TrackId= 8 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.769311 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 10.3955 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 15.0603 Mass(GeV)= 0.5 TrackId= 53 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.7425 Mass(GeV)= 0.5 TrackId= 61 -### New exotic particle produced: ldmphoton Ekin(GeV)= 10.972 Mass(GeV)= 0.5 TrackId= 68 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.42304 Mass(GeV)= 0.5 TrackId= 74 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.02646 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.14608 Mass(GeV)= 0.5 TrackId= 23 -### New exotic particle produced: ldmphoton Ekin(GeV)= 7.44802 Mass(GeV)= 0.5 TrackId= 8 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.96477 Mass(GeV)= 0.5 TrackId= 49 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.36093 Mass(GeV)= 0.5 TrackId= 53 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.889151 Mass(GeV)= 0.5 TrackId= 57 -### New exotic particle produced: ldmphoton Ekin(GeV)= 32.2689 Mass(GeV)= 0.5 TrackId= 89 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.862102 Mass(GeV)= 0.5 TrackId= 3 -### New exotic particle produced: ldmphoton Ekin(GeV)= 25.5079 Mass(GeV)= 0.5 TrackId= 21 -### New exotic particle produced: ldmphoton Ekin(GeV)= 8.73262 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 14.3127 Mass(GeV)= 0.5 TrackId= 48 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.91307 Mass(GeV)= 0.5 TrackId= 86 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.906588 Mass(GeV)= 0.5 TrackId= 16 -### New exotic particle produced: ldmphoton Ekin(GeV)= 7.50952 Mass(GeV)= 0.5 TrackId= 32 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.07299 Mass(GeV)= 0.5 TrackId= 43 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.696034 Mass(GeV)= 0.5 TrackId= 62 -### New exotic particle produced: ldmphoton Ekin(GeV)= 6.40113 Mass(GeV)= 0.5 TrackId= 21 -### New exotic particle produced: ldmphoton Ekin(GeV)= 9.05074 Mass(GeV)= 0.5 TrackId= 58 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.59391 Mass(GeV)= 0.5 TrackId= 65 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.4543 Mass(GeV)= 0.5 TrackId= 75 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.821864 Mass(GeV)= 0.5 TrackId= 15 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.17815 Mass(GeV)= 0.5 TrackId= 25 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.2967 Mass(GeV)= 0.5 TrackId= 27 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.25229 Mass(GeV)= 0.5 TrackId= 32 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.19455 Mass(GeV)= 0.5 TrackId= 16 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.32638 Mass(GeV)= 0.5 TrackId= 25 -### New exotic particle produced: ldmphoton Ekin(GeV)= 35.7484 Mass(GeV)= 0.5 TrackId= 42 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.09659 Mass(GeV)= 0.5 TrackId= 67 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.672912 Mass(GeV)= 0.5 TrackId= 5 -### New exotic particle produced: ldmphoton Ekin(GeV)= 13.8886 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 8.47301 Mass(GeV)= 0.5 TrackId= 26 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.03777 Mass(GeV)= 0.5 TrackId= 43 -### New exotic particle produced: ldmphoton Ekin(GeV)= 16.2615 Mass(GeV)= 0.5 TrackId= 48 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.8085 Mass(GeV)= 0.5 TrackId= 49 +### New exotic particle produced: ldmphoton Ekin(GeV)= 21.4444 Mass(GeV)= 0.5 TrackId= 12 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.39191 Mass(GeV)= 0.5 TrackId= 31 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.881599 Mass(GeV)= 0.5 TrackId= 39 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.978884 Mass(GeV)= 0.5 TrackId= 55 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.660242 Mass(GeV)= 0.5 TrackId= 64 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.49486 Mass(GeV)= 0.5 TrackId= 75 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.91736 Mass(GeV)= 0.5 TrackId= 9 +### New exotic particle produced: ldmphoton Ekin(GeV)= 40.0838 Mass(GeV)= 0.5 TrackId= 24 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.57752 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.01281 Mass(GeV)= 0.5 TrackId= 52 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.41998 Mass(GeV)= 0.5 TrackId= 11 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.95422 Mass(GeV)= 0.5 TrackId= 35 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.48758 Mass(GeV)= 0.5 TrackId= 41 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.86468 Mass(GeV)= 0.5 TrackId= 49 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.34958 Mass(GeV)= 0.5 TrackId= 20 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.850829 Mass(GeV)= 0.5 TrackId= 31 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.03589 Mass(GeV)= 0.5 TrackId= 38 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.794867 Mass(GeV)= 0.5 TrackId= 53 +### New exotic particle produced: ldmphoton Ekin(GeV)= 10.1493 Mass(GeV)= 0.5 TrackId= 59 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.844029 Mass(GeV)= 0.5 TrackId= 85 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.996759 Mass(GeV)= 0.5 TrackId= 17 +### New exotic particle produced: ldmphoton Ekin(GeV)= 22.354 Mass(GeV)= 0.5 TrackId= 19 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.0507 Mass(GeV)= 0.5 TrackId= 56 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.941736 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.2419 Mass(GeV)= 0.5 TrackId= 3 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.882204 Mass(GeV)= 0.5 TrackId= 31 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.74131 Mass(GeV)= 0.5 TrackId= 33 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.40291 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.80576 Mass(GeV)= 0.5 TrackId= 50 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.44585 Mass(GeV)= 0.5 TrackId= 64 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.87811 Mass(GeV)= 0.5 TrackId= 66 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.42799 Mass(GeV)= 0.5 TrackId= 68 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.47823 Mass(GeV)= 0.5 TrackId= 6 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.24855 Mass(GeV)= 0.5 TrackId= 17 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.72304 Mass(GeV)= 0.5 TrackId= 20 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.661284 Mass(GeV)= 0.5 TrackId= 30 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.953377 Mass(GeV)= 0.5 TrackId= 43 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.45618 Mass(GeV)= 0.5 TrackId= 55 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.71599 Mass(GeV)= 0.5 TrackId= 59 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.720441 Mass(GeV)= 0.5 TrackId= 62 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.78302 Mass(GeV)= 0.5 TrackId= 70 +### New exotic particle produced: ldmphoton Ekin(GeV)= 48.0819 Mass(GeV)= 0.5 TrackId= 75 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.42094 Mass(GeV)= 0.5 TrackId= 27 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.8915 Mass(GeV)= 0.5 TrackId= 29 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.602221 Mass(GeV)= 0.5 TrackId= 63 +### New exotic particle produced: ldmphoton Ekin(GeV)= 10.5826 Mass(GeV)= 0.5 TrackId= 65 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.93447 Mass(GeV)= 0.5 TrackId= 77 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.86193 Mass(GeV)= 0.5 TrackId= 6 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.18934 Mass(GeV)= 0.5 TrackId= 25 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.670822 Mass(GeV)= 0.5 TrackId= 26 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.25274 Mass(GeV)= 0.5 TrackId= 34 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.63491 Mass(GeV)= 0.5 TrackId= 35 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.600013 Mass(GeV)= 0.5 TrackId= 50 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.604987 Mass(GeV)= 0.5 TrackId= 3 +### New exotic particle produced: ldmphoton Ekin(GeV)= 6.52962 Mass(GeV)= 0.5 TrackId= 41 +### New exotic particle produced: ldmphoton Ekin(GeV)= 56.6432 Mass(GeV)= 0.5 TrackId= 42 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.809267 Mass(GeV)= 0.5 TrackId= 69 --> Event 20 starts. -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.39716 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.648734 Mass(GeV)= 0.5 TrackId= 21 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.23187 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.47772 Mass(GeV)= 0.5 TrackId= 45 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.01348 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.19727 Mass(GeV)= 0.5 TrackId= 20 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.63297 Mass(GeV)= 0.5 TrackId= 21 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.02773 Mass(GeV)= 0.5 TrackId= 32 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.05488 Mass(GeV)= 0.5 TrackId= 34 -### New exotic particle produced: ldmphoton Ekin(GeV)= 27.9424 Mass(GeV)= 0.5 TrackId= 40 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.783457 Mass(GeV)= 0.5 TrackId= 59 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.90299 Mass(GeV)= 0.5 TrackId= 64 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.51547 Mass(GeV)= 0.5 TrackId= 5 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.6104 Mass(GeV)= 0.5 TrackId= 12 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.84211 Mass(GeV)= 0.5 TrackId= 15 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.2864 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 16.9011 Mass(GeV)= 0.5 TrackId= 25 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.67987 Mass(GeV)= 0.5 TrackId= 2 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.864895 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.18383 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 14.5323 Mass(GeV)= 0.5 TrackId= 37 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.8134 Mass(GeV)= 0.5 TrackId= 44 -### New exotic particle produced: ldmphoton Ekin(GeV)= 16.7146 Mass(GeV)= 0.5 TrackId= 63 -### New exotic particle produced: ldmphoton Ekin(GeV)= 8.00197 Mass(GeV)= 0.5 TrackId= 18 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.74169 Mass(GeV)= 0.5 TrackId= 39 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.25916 Mass(GeV)= 0.5 TrackId= 41 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.98568 Mass(GeV)= 0.5 TrackId= 70 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.395 Mass(GeV)= 0.5 TrackId= 2 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.671489 Mass(GeV)= 0.5 TrackId= 12 -### New exotic particle produced: ldmphoton Ekin(GeV)= 10.9481 Mass(GeV)= 0.5 TrackId= 22 -### New exotic particle produced: ldmphoton Ekin(GeV)= 25.6298 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.83776 Mass(GeV)= 0.5 TrackId= 42 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.10939 Mass(GeV)= 0.5 TrackId= 61 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.23175 Mass(GeV)= 0.5 TrackId= 64 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.67867 Mass(GeV)= 0.5 TrackId= 65 -### New exotic particle produced: ldmphoton Ekin(GeV)= 22.5419 Mass(GeV)= 0.5 TrackId= 4 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.996205 Mass(GeV)= 0.5 TrackId= 5 -### New exotic particle produced: ldmphoton Ekin(GeV)= 7.67762 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 18.6117 Mass(GeV)= 0.5 TrackId= 40 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.89158 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.98494 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.71739 Mass(GeV)= 0.5 TrackId= 48 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.90004 Mass(GeV)= 0.5 TrackId= 59 -### New exotic particle produced: ldmphoton Ekin(GeV)= 17.5243 Mass(GeV)= 0.5 TrackId= 27 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.0137 Mass(GeV)= 0.5 TrackId= 28 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.89794 Mass(GeV)= 0.5 TrackId= 54 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.83756 Mass(GeV)= 0.5 TrackId= 57 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.60072 Mass(GeV)= 0.5 TrackId= 71 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.19005 Mass(GeV)= 0.5 TrackId= 4 -### New exotic particle produced: ldmphoton Ekin(GeV)= 15.3952 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.16582 Mass(GeV)= 0.5 TrackId= 25 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.76943 Mass(GeV)= 0.5 TrackId= 26 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.71105 Mass(GeV)= 0.5 TrackId= 46 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.10404 Mass(GeV)= 0.5 TrackId= 47 -### New exotic particle produced: ldmphoton Ekin(GeV)= 6.91356 Mass(GeV)= 0.5 TrackId= 73 +### New exotic particle produced: ldmphoton Ekin(GeV)= 13.7647 Mass(GeV)= 0.5 TrackId= 31 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.08606 Mass(GeV)= 0.5 TrackId= 32 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.39068 Mass(GeV)= 0.5 TrackId= 38 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.665978 Mass(GeV)= 0.5 TrackId= 64 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.53203 Mass(GeV)= 0.5 TrackId= 6 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.77026 Mass(GeV)= 0.5 TrackId= 31 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.707708 Mass(GeV)= 0.5 TrackId= 40 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.639723 Mass(GeV)= 0.5 TrackId= 52 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.02589 Mass(GeV)= 0.5 TrackId= 65 +### New exotic particle produced: ldmphoton Ekin(GeV)= 14.5249 Mass(GeV)= 0.5 TrackId= 72 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.93382 Mass(GeV)= 0.5 TrackId= 76 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.0838 Mass(GeV)= 0.5 TrackId= 14 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.1253 Mass(GeV)= 0.5 TrackId= 33 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.92118 Mass(GeV)= 0.5 TrackId= 35 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.80247 Mass(GeV)= 0.5 TrackId= 43 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.935698 Mass(GeV)= 0.5 TrackId= 46 +### New exotic particle produced: ldmphoton Ekin(GeV)= 9.09175 Mass(GeV)= 0.5 TrackId= 54 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.97054 Mass(GeV)= 0.5 TrackId= 55 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.54378 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.42434 Mass(GeV)= 0.5 TrackId= 22 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.642376 Mass(GeV)= 0.5 TrackId= 37 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.873602 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 10.0839 Mass(GeV)= 0.5 TrackId= 61 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.89001 Mass(GeV)= 0.5 TrackId= 66 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.22572 Mass(GeV)= 0.5 TrackId= 13 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.39437 Mass(GeV)= 0.5 TrackId= 26 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.774226 Mass(GeV)= 0.5 TrackId= 58 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.614429 Mass(GeV)= 0.5 TrackId= 62 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.48561 Mass(GeV)= 0.5 TrackId= 34 +### New exotic particle produced: ldmphoton Ekin(GeV)= 12.3056 Mass(GeV)= 0.5 TrackId= 67 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.923722 Mass(GeV)= 0.5 TrackId= 72 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.616969 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.74592 Mass(GeV)= 0.5 TrackId= 3 +### New exotic particle produced: ldmphoton Ekin(GeV)= 17.6939 Mass(GeV)= 0.5 TrackId= 62 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.643892 Mass(GeV)= 0.5 TrackId= 14 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.692817 Mass(GeV)= 0.5 TrackId= 16 +### New exotic particle produced: ldmphoton Ekin(GeV)= 8.796 Mass(GeV)= 0.5 TrackId= 18 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.35259 Mass(GeV)= 0.5 TrackId= 42 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.62536 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.14362 Mass(GeV)= 0.5 TrackId= 65 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.63334 Mass(GeV)= 0.5 TrackId= 70 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.04308 Mass(GeV)= 0.5 TrackId= 86 +### New exotic particle produced: ldmphoton Ekin(GeV)= 21.9302 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.75263 Mass(GeV)= 0.5 TrackId= 54 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.665424 Mass(GeV)= 0.5 TrackId= 65 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.839487 Mass(GeV)= 0.5 TrackId= 67 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.83128 Mass(GeV)= 0.5 TrackId= 9 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.99396 Mass(GeV)= 0.5 TrackId= 17 +### New exotic particle produced: ldmphoton Ekin(GeV)= 8.30962 Mass(GeV)= 0.5 TrackId= 24 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.54555 Mass(GeV)= 0.5 TrackId= 30 --> Event 30 starts. -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.70678 Mass(GeV)= 0.5 TrackId= 7 -### New exotic particle produced: ldmphoton Ekin(GeV)= 27.0499 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 18.3154 Mass(GeV)= 0.5 TrackId= 20 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.55655 Mass(GeV)= 0.5 TrackId= 43 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.28193 Mass(GeV)= 0.5 TrackId= 60 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.85658 Mass(GeV)= 0.5 TrackId= 61 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.13887 Mass(GeV)= 0.5 TrackId= 66 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.34792 Mass(GeV)= 0.5 TrackId= 3 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.3313 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.36945 Mass(GeV)= 0.5 TrackId= 14 -### New exotic particle produced: ldmphoton Ekin(GeV)= 10.3684 Mass(GeV)= 0.5 TrackId= 22 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.22815 Mass(GeV)= 0.5 TrackId= 28 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.66317 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.655236 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.1889 Mass(GeV)= 0.5 TrackId= 44 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.02499 Mass(GeV)= 0.5 TrackId= 73 -### New exotic particle produced: ldmphoton Ekin(GeV)= 10.8566 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.780219 Mass(GeV)= 0.5 TrackId= 32 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.30779 Mass(GeV)= 0.5 TrackId= 37 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.06261 Mass(GeV)= 0.5 TrackId= 48 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.662 Mass(GeV)= 0.5 TrackId= 54 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.696723 Mass(GeV)= 0.5 TrackId= 62 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.67879 Mass(GeV)= 0.5 TrackId= 5 -### New exotic particle produced: ldmphoton Ekin(GeV)= 15.1774 Mass(GeV)= 0.5 TrackId= 12 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.762516 Mass(GeV)= 0.5 TrackId= 33 -### New exotic particle produced: ldmphoton Ekin(GeV)= 11.2301 Mass(GeV)= 0.5 TrackId= 37 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.93714 Mass(GeV)= 0.5 TrackId= 47 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.23352 Mass(GeV)= 0.5 TrackId= 50 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.724234 Mass(GeV)= 0.5 TrackId= 66 -### New exotic particle produced: ldmphoton Ekin(GeV)= 7.05279 Mass(GeV)= 0.5 TrackId= 7 -### New exotic particle produced: ldmphoton Ekin(GeV)= 12.8288 Mass(GeV)= 0.5 TrackId= 12 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.59072 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.72185 Mass(GeV)= 0.5 TrackId= 32 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.29442 Mass(GeV)= 0.5 TrackId= 33 -### New exotic particle produced: ldmphoton Ekin(GeV)= 6.12003 Mass(GeV)= 0.5 TrackId= 49 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.607328 Mass(GeV)= 0.5 TrackId= 55 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.18985 Mass(GeV)= 0.5 TrackId= 59 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.14604 Mass(GeV)= 0.5 TrackId= 16 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.36524 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.39382 Mass(GeV)= 0.5 TrackId= 61 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.758016 Mass(GeV)= 0.5 TrackId= 71 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.09436 Mass(GeV)= 0.5 TrackId= 73 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.710375 Mass(GeV)= 0.5 TrackId= 82 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.13265 Mass(GeV)= 0.5 TrackId= 6 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.70188 Mass(GeV)= 0.5 TrackId= 9 -### New exotic particle produced: ldmphoton Ekin(GeV)= 12.2119 Mass(GeV)= 0.5 TrackId= 18 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.17335 Mass(GeV)= 0.5 TrackId= 19 -### New exotic particle produced: ldmphoton Ekin(GeV)= 19.2797 Mass(GeV)= 0.5 TrackId= 40 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.664676 Mass(GeV)= 0.5 TrackId= 54 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.13639 Mass(GeV)= 0.5 TrackId= 59 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.01698 Mass(GeV)= 0.5 TrackId= 67 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.15395 Mass(GeV)= 0.5 TrackId= 12 -### New exotic particle produced: ldmphoton Ekin(GeV)= 18.1248 Mass(GeV)= 0.5 TrackId= 15 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.76439 Mass(GeV)= 0.5 TrackId= 22 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.14859 Mass(GeV)= 0.5 TrackId= 46 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.42109 Mass(GeV)= 0.5 TrackId= 71 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.18188 Mass(GeV)= 0.5 TrackId= 78 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.96847 Mass(GeV)= 0.5 TrackId= 3 -### New exotic particle produced: ldmphoton Ekin(GeV)= 64.0319 Mass(GeV)= 0.5 TrackId= 16 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.7057 Mass(GeV)= 0.5 TrackId= 36 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.19369 Mass(GeV)= 0.5 TrackId= 62 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.55081 Mass(GeV)= 0.5 TrackId= 3 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.881499 Mass(GeV)= 0.5 TrackId= 8 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.860743 Mass(GeV)= 0.5 TrackId= 14 +### New exotic particle produced: ldmphoton Ekin(GeV)= 11.1914 Mass(GeV)= 0.5 TrackId= 22 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.74952 Mass(GeV)= 0.5 TrackId= 32 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.52727 Mass(GeV)= 0.5 TrackId= 59 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.11596 Mass(GeV)= 0.5 TrackId= 71 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.11724 Mass(GeV)= 0.5 TrackId= 9 +### New exotic particle produced: ldmphoton Ekin(GeV)= 22.2539 Mass(GeV)= 0.5 TrackId= 38 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.682796 Mass(GeV)= 0.5 TrackId= 55 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.40155 Mass(GeV)= 0.5 TrackId= 66 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.50486 Mass(GeV)= 0.5 TrackId= 5 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.72718 Mass(GeV)= 0.5 TrackId= 9 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.70032 Mass(GeV)= 0.5 TrackId= 10 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.725436 Mass(GeV)= 0.5 TrackId= 13 +### New exotic particle produced: ldmphoton Ekin(GeV)= 6.45427 Mass(GeV)= 0.5 TrackId= 28 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.99701 Mass(GeV)= 0.5 TrackId= 43 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.759458 Mass(GeV)= 0.5 TrackId= 57 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.831948 Mass(GeV)= 0.5 TrackId= 70 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.01039 Mass(GeV)= 0.5 TrackId= 74 +### New exotic particle produced: ldmphoton Ekin(GeV)= 32.2817 Mass(GeV)= 0.5 TrackId= 17 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.04564 Mass(GeV)= 0.5 TrackId= 18 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.42839 Mass(GeV)= 0.5 TrackId= 45 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.935377 Mass(GeV)= 0.5 TrackId= 53 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.14846 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.982034 Mass(GeV)= 0.5 TrackId= 38 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.67012 Mass(GeV)= 0.5 TrackId= 41 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.93032 Mass(GeV)= 0.5 TrackId= 47 +### New exotic particle produced: ldmphoton Ekin(GeV)= 46.6904 Mass(GeV)= 0.5 TrackId= 50 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.895373 Mass(GeV)= 0.5 TrackId= 24 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.09062 Mass(GeV)= 0.5 TrackId= 27 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.13066 Mass(GeV)= 0.5 TrackId= 29 +### New exotic particle produced: ldmphoton Ekin(GeV)= 29.0094 Mass(GeV)= 0.5 TrackId= 50 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.73861 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 7.6432 Mass(GeV)= 0.5 TrackId= 22 +### New exotic particle produced: ldmphoton Ekin(GeV)= 11.7462 Mass(GeV)= 0.5 TrackId= 28 +### New exotic particle produced: ldmphoton Ekin(GeV)= 33.8491 Mass(GeV)= 0.5 TrackId= 37 +### New exotic particle produced: ldmphoton Ekin(GeV)= 13.8991 Mass(GeV)= 0.5 TrackId= 5 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.44745 Mass(GeV)= 0.5 TrackId= 11 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.825204 Mass(GeV)= 0.5 TrackId= 19 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.957856 Mass(GeV)= 0.5 TrackId= 21 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.93589 Mass(GeV)= 0.5 TrackId= 28 +### New exotic particle produced: ldmphoton Ekin(GeV)= 8.74163 Mass(GeV)= 0.5 TrackId= 68 +### New exotic particle produced: ldmphoton Ekin(GeV)= 17.7831 Mass(GeV)= 0.5 TrackId= 6 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.09351 Mass(GeV)= 0.5 TrackId= 13 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.768828 Mass(GeV)= 0.5 TrackId= 28 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.04489 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 7.53064 Mass(GeV)= 0.5 TrackId= 85 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.52208 Mass(GeV)= 0.5 TrackId= 86 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.08056 Mass(GeV)= 0.5 TrackId= 88 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.15671 Mass(GeV)= 0.5 TrackId= 7 +### New exotic particle produced: ldmphoton Ekin(GeV)= 15.0342 Mass(GeV)= 0.5 TrackId= 12 +### New exotic particle produced: ldmphoton Ekin(GeV)= 16.1837 Mass(GeV)= 0.5 TrackId= 16 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.934438 Mass(GeV)= 0.5 TrackId= 17 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.42255 Mass(GeV)= 0.5 TrackId= 22 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.78205 Mass(GeV)= 0.5 TrackId= 45 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.81192 Mass(GeV)= 0.5 TrackId= 48 --> Event 40 starts. -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.60579 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.68687 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.89618 Mass(GeV)= 0.5 TrackId= 57 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.635376 Mass(GeV)= 0.5 TrackId= 59 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.952367 Mass(GeV)= 0.5 TrackId= 61 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.47721 Mass(GeV)= 0.5 TrackId= 75 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.42802 Mass(GeV)= 0.5 TrackId= 18 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.74533 Mass(GeV)= 0.5 TrackId= 37 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.76465 Mass(GeV)= 0.5 TrackId= 40 -### New exotic particle produced: ldmphoton Ekin(GeV)= 8.0733 Mass(GeV)= 0.5 TrackId= 61 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.63992 Mass(GeV)= 0.5 TrackId= 7 -### New exotic particle produced: ldmphoton Ekin(GeV)= 35.0379 Mass(GeV)= 0.5 TrackId= 10 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.663219 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.32926 Mass(GeV)= 0.5 TrackId= 14 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.26787 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.6606 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.909643 Mass(GeV)= 0.5 TrackId= 41 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.62609 Mass(GeV)= 0.5 TrackId= 47 -### New exotic particle produced: ldmphoton Ekin(GeV)= 32.3852 Mass(GeV)= 0.5 TrackId= 2 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.69369 Mass(GeV)= 0.5 TrackId= 14 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.67556 Mass(GeV)= 0.5 TrackId= 27 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.97206 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.33612 Mass(GeV)= 0.5 TrackId= 31 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.19511 Mass(GeV)= 0.5 TrackId= 46 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.15464 Mass(GeV)= 0.5 TrackId= 61 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.18578 Mass(GeV)= 0.5 TrackId= 63 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.16579 Mass(GeV)= 0.5 TrackId= 7 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.65028 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.7482 Mass(GeV)= 0.5 TrackId= 26 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.02529 Mass(GeV)= 0.5 TrackId= 28 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.34786 Mass(GeV)= 0.5 TrackId= 37 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.58663 Mass(GeV)= 0.5 TrackId= 56 -### New exotic particle produced: ldmphoton Ekin(GeV)= 18.494 Mass(GeV)= 0.5 TrackId= 18 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.80007 Mass(GeV)= 0.5 TrackId= 28 -### New exotic particle produced: ldmphoton Ekin(GeV)= 21.3003 Mass(GeV)= 0.5 TrackId= 31 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.849453 Mass(GeV)= 0.5 TrackId= 48 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.31185 Mass(GeV)= 0.5 TrackId= 60 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.640929 Mass(GeV)= 0.5 TrackId= 65 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.880807 Mass(GeV)= 0.5 TrackId= 2 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.70357 Mass(GeV)= 0.5 TrackId= 23 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.13674 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.616223 Mass(GeV)= 0.5 TrackId= 41 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.09384 Mass(GeV)= 0.5 TrackId= 48 -### New exotic particle produced: ldmphoton Ekin(GeV)= 7.85947 Mass(GeV)= 0.5 TrackId= 52 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.715974 Mass(GeV)= 0.5 TrackId= 53 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.647339 Mass(GeV)= 0.5 TrackId= 71 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.75787 Mass(GeV)= 0.5 TrackId= 82 -### New exotic particle produced: ldmphoton Ekin(GeV)= 9.34112 Mass(GeV)= 0.5 TrackId= 89 -### New exotic particle produced: ldmphoton Ekin(GeV)= 13.1148 Mass(GeV)= 0.5 TrackId= 2 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.56967 Mass(GeV)= 0.5 TrackId= 19 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.845911 Mass(GeV)= 0.5 TrackId= 36 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.02833 Mass(GeV)= 0.5 TrackId= 37 -### New exotic particle produced: ldmphoton Ekin(GeV)= 6.86507 Mass(GeV)= 0.5 TrackId= 57 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.22258 Mass(GeV)= 0.5 TrackId= 2 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.73851 Mass(GeV)= 0.5 TrackId= 7 -### New exotic particle produced: ldmphoton Ekin(GeV)= 10.4122 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.956368 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 27.6732 Mass(GeV)= 0.5 TrackId= 52 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.50672 Mass(GeV)= 0.5 TrackId= 56 +### New exotic particle produced: ldmphoton Ekin(GeV)= 14.6085 Mass(GeV)= 0.5 TrackId= 15 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.03505 Mass(GeV)= 0.5 TrackId= 17 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.20043 Mass(GeV)= 0.5 TrackId= 32 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.606732 Mass(GeV)= 0.5 TrackId= 57 +### New exotic particle produced: ldmphoton Ekin(GeV)= 13.3191 Mass(GeV)= 0.5 TrackId= 7 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.57788 Mass(GeV)= 0.5 TrackId= 19 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.43157 Mass(GeV)= 0.5 TrackId= 26 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.8612 Mass(GeV)= 0.5 TrackId= 27 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.92592 Mass(GeV)= 0.5 TrackId= 36 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.27577 Mass(GeV)= 0.5 TrackId= 69 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.30129 Mass(GeV)= 0.5 TrackId= 70 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.02859 Mass(GeV)= 0.5 TrackId= 14 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.0881 Mass(GeV)= 0.5 TrackId= 16 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.12204 Mass(GeV)= 0.5 TrackId= 43 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.845851 Mass(GeV)= 0.5 TrackId= 11 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.62397 Mass(GeV)= 0.5 TrackId= 13 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.55562 Mass(GeV)= 0.5 TrackId= 25 +### New exotic particle produced: ldmphoton Ekin(GeV)= 10.0563 Mass(GeV)= 0.5 TrackId= 31 +### New exotic particle produced: ldmphoton Ekin(GeV)= 41.0503 Mass(GeV)= 0.5 TrackId= 45 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.64358 Mass(GeV)= 0.5 TrackId= 50 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.884771 Mass(GeV)= 0.5 TrackId= 44 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.794906 Mass(GeV)= 0.5 TrackId= 66 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.2434 Mass(GeV)= 0.5 TrackId= 11 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.68212 Mass(GeV)= 0.5 TrackId= 21 +### New exotic particle produced: ldmphoton Ekin(GeV)= 14.6675 Mass(GeV)= 0.5 TrackId= 53 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.845155 Mass(GeV)= 0.5 TrackId= 67 +### New exotic particle produced: ldmphoton Ekin(GeV)= 40.6221 Mass(GeV)= 0.5 TrackId= 9 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.821491 Mass(GeV)= 0.5 TrackId= 34 +### New exotic particle produced: ldmphoton Ekin(GeV)= 11.2741 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.62122 Mass(GeV)= 0.5 TrackId= 4 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.13278 Mass(GeV)= 0.5 TrackId= 18 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.11125 Mass(GeV)= 0.5 TrackId= 20 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.787059 Mass(GeV)= 0.5 TrackId= 33 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.05594 Mass(GeV)= 0.5 TrackId= 35 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.51534 Mass(GeV)= 0.5 TrackId= 40 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.41259 Mass(GeV)= 0.5 TrackId= 56 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.90577 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.63558 Mass(GeV)= 0.5 TrackId= 4 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.53901 Mass(GeV)= 0.5 TrackId= 5 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.34288 Mass(GeV)= 0.5 TrackId= 19 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.03174 Mass(GeV)= 0.5 TrackId= 40 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.06205 Mass(GeV)= 0.5 TrackId= 52 +### New exotic particle produced: ldmphoton Ekin(GeV)= 10.3241 Mass(GeV)= 0.5 TrackId= 3 +### New exotic particle produced: ldmphoton Ekin(GeV)= 7.77556 Mass(GeV)= 0.5 TrackId= 6 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.15849 Mass(GeV)= 0.5 TrackId= 7 +### New exotic particle produced: ldmphoton Ekin(GeV)= 12.0803 Mass(GeV)= 0.5 TrackId= 9 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.648831 Mass(GeV)= 0.5 TrackId= 80 --> Event 50 starts. -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.2358 Mass(GeV)= 0.5 TrackId= 2 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.775294 Mass(GeV)= 0.5 TrackId= 10 -### New exotic particle produced: ldmphoton Ekin(GeV)= 27.3283 Mass(GeV)= 0.5 TrackId= 20 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.56363 Mass(GeV)= 0.5 TrackId= 26 -### New exotic particle produced: ldmphoton Ekin(GeV)= 8.73887 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.804431 Mass(GeV)= 0.5 TrackId= 32 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.52522 Mass(GeV)= 0.5 TrackId= 41 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.641225 Mass(GeV)= 0.5 TrackId= 51 -### New exotic particle produced: ldmphoton Ekin(GeV)= 34.9665 Mass(GeV)= 0.5 TrackId= 54 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.32972 Mass(GeV)= 0.5 TrackId= 5 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.07231 Mass(GeV)= 0.5 TrackId= 23 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.702234 Mass(GeV)= 0.5 TrackId= 28 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.13647 Mass(GeV)= 0.5 TrackId= 46 -### New exotic particle produced: ldmphoton Ekin(GeV)= 36.5195 Mass(GeV)= 0.5 TrackId= 48 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.30608 Mass(GeV)= 0.5 TrackId= 62 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.45163 Mass(GeV)= 0.5 TrackId= 67 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.53583 Mass(GeV)= 0.5 TrackId= 68 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.611696 Mass(GeV)= 0.5 TrackId= 4 -### New exotic particle produced: ldmphoton Ekin(GeV)= 23.653 Mass(GeV)= 0.5 TrackId= 5 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.82494 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 8.70394 Mass(GeV)= 0.5 TrackId= 54 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.13961 Mass(GeV)= 0.5 TrackId= 28 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.04578 Mass(GeV)= 0.5 TrackId= 51 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.14711 Mass(GeV)= 0.5 TrackId= 53 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.27376 Mass(GeV)= 0.5 TrackId= 69 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.985636 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.906569 Mass(GeV)= 0.5 TrackId= 71 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.61138 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.71771 Mass(GeV)= 0.5 TrackId= 19 -### New exotic particle produced: ldmphoton Ekin(GeV)= 75.3446 Mass(GeV)= 0.5 TrackId= 21 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.09407 Mass(GeV)= 0.5 TrackId= 3 -### New exotic particle produced: ldmphoton Ekin(GeV)= 8.28584 Mass(GeV)= 0.5 TrackId= 12 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.638669 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.09681 Mass(GeV)= 0.5 TrackId= 47 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.5534 Mass(GeV)= 0.5 TrackId= 50 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.64125 Mass(GeV)= 0.5 TrackId= 65 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.55901 Mass(GeV)= 0.5 TrackId= 74 -### New exotic particle produced: ldmphoton Ekin(GeV)= 39.2334 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.01946 Mass(GeV)= 0.5 TrackId= 38 -### New exotic particle produced: ldmphoton Ekin(GeV)= 12.5843 Mass(GeV)= 0.5 TrackId= 43 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.14369 Mass(GeV)= 0.5 TrackId= 47 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.65975 Mass(GeV)= 0.5 TrackId= 2 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.963028 Mass(GeV)= 0.5 TrackId= 10 -### New exotic particle produced: ldmphoton Ekin(GeV)= 6.66105 Mass(GeV)= 0.5 TrackId= 25 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.18797 Mass(GeV)= 0.5 TrackId= 40 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.76751 Mass(GeV)= 0.5 TrackId= 52 -### New exotic particle produced: ldmphoton Ekin(GeV)= 13.7684 Mass(GeV)= 0.5 TrackId= 12 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.31898 Mass(GeV)= 0.5 TrackId= 24 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.20349 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 6.41818 Mass(GeV)= 0.5 TrackId= 48 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.40315 Mass(GeV)= 0.5 TrackId= 76 +### New exotic particle produced: ldmphoton Ekin(GeV)= 15.5638 Mass(GeV)= 0.5 TrackId= 17 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.35987 Mass(GeV)= 0.5 TrackId= 19 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.855917 Mass(GeV)= 0.5 TrackId= 33 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.67754 Mass(GeV)= 0.5 TrackId= 40 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.279 Mass(GeV)= 0.5 TrackId= 41 +### New exotic particle produced: ldmphoton Ekin(GeV)= 10.2198 Mass(GeV)= 0.5 TrackId= 47 +### New exotic particle produced: ldmphoton Ekin(GeV)= 9.88106 Mass(GeV)= 0.5 TrackId= 58 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.86538 Mass(GeV)= 0.5 TrackId= 65 +### New exotic particle produced: ldmphoton Ekin(GeV)= 45.8661 Mass(GeV)= 0.5 TrackId= 69 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.666149 Mass(GeV)= 0.5 TrackId= 79 +### New exotic particle produced: ldmphoton Ekin(GeV)= 9.29672 Mass(GeV)= 0.5 TrackId= 33 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.819896 Mass(GeV)= 0.5 TrackId= 34 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.84935 Mass(GeV)= 0.5 TrackId= 56 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.06171 Mass(GeV)= 0.5 TrackId= 61 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.48598 Mass(GeV)= 0.5 TrackId= 5 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.951129 Mass(GeV)= 0.5 TrackId= 13 +### New exotic particle produced: ldmphoton Ekin(GeV)= 49.3796 Mass(GeV)= 0.5 TrackId= 19 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.16915 Mass(GeV)= 0.5 TrackId= 31 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.616241 Mass(GeV)= 0.5 TrackId= 38 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.829731 Mass(GeV)= 0.5 TrackId= 50 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.33808 Mass(GeV)= 0.5 TrackId= 6 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.13042 Mass(GeV)= 0.5 TrackId= 12 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.878469 Mass(GeV)= 0.5 TrackId= 28 +### New exotic particle produced: ldmphoton Ekin(GeV)= 63.8933 Mass(GeV)= 0.5 TrackId= 33 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.48464 Mass(GeV)= 0.5 TrackId= 35 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.36688 Mass(GeV)= 0.5 TrackId= 40 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.61677 Mass(GeV)= 0.5 TrackId= 52 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.890503 Mass(GeV)= 0.5 TrackId= 4 +### New exotic particle produced: ldmphoton Ekin(GeV)= 7.96124 Mass(GeV)= 0.5 TrackId= 22 +### New exotic particle produced: ldmphoton Ekin(GeV)= 27.3402 Mass(GeV)= 0.5 TrackId= 23 +### New exotic particle produced: ldmphoton Ekin(GeV)= 7.58137 Mass(GeV)= 0.5 TrackId= 62 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.16059 Mass(GeV)= 0.5 TrackId= 30 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.17757 Mass(GeV)= 0.5 TrackId= 31 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.714827 Mass(GeV)= 0.5 TrackId= 49 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.09264 Mass(GeV)= 0.5 TrackId= 57 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.96997 Mass(GeV)= 0.5 TrackId= 15 +### New exotic particle produced: ldmphoton Ekin(GeV)= 6.28112 Mass(GeV)= 0.5 TrackId= 30 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.727777 Mass(GeV)= 0.5 TrackId= 32 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.90639 Mass(GeV)= 0.5 TrackId= 37 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.60441 Mass(GeV)= 0.5 TrackId= 61 +### New exotic particle produced: ldmphoton Ekin(GeV)= 12.7884 Mass(GeV)= 0.5 TrackId= 68 +### New exotic particle produced: ldmphoton Ekin(GeV)= 12.4866 Mass(GeV)= 0.5 TrackId= 17 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.21078 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.52133 Mass(GeV)= 0.5 TrackId= 54 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.61532 Mass(GeV)= 0.5 TrackId= 60 +### New exotic particle produced: ldmphoton Ekin(GeV)= 20.2321 Mass(GeV)= 0.5 TrackId= 65 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.17362 Mass(GeV)= 0.5 TrackId= 7 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.76339 Mass(GeV)= 0.5 TrackId= 13 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.24952 Mass(GeV)= 0.5 TrackId= 42 +### New exotic particle produced: ldmphoton Ekin(GeV)= 10.4364 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.83437 Mass(GeV)= 0.5 TrackId= 49 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.747891 Mass(GeV)= 0.5 TrackId= 50 +### New exotic particle produced: ldmphoton Ekin(GeV)= 10.4577 Mass(GeV)= 0.5 TrackId= 53 +### New exotic particle produced: ldmphoton Ekin(GeV)= 18.524 Mass(GeV)= 0.5 TrackId= 58 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.872726 Mass(GeV)= 0.5 TrackId= 33 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.06206 Mass(GeV)= 0.5 TrackId= 41 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.30012 Mass(GeV)= 0.5 TrackId= 73 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.23614 Mass(GeV)= 0.5 TrackId= 74 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.35633 Mass(GeV)= 0.5 TrackId= 75 --> Event 60 starts. -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.90948 Mass(GeV)= 0.5 TrackId= 24 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.03751 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.04222 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 9.66293 Mass(GeV)= 0.5 TrackId= 32 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.66358 Mass(GeV)= 0.5 TrackId= 45 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.37101 Mass(GeV)= 0.5 TrackId= 69 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.66265 Mass(GeV)= 0.5 TrackId= 18 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.828987 Mass(GeV)= 0.5 TrackId= 28 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.36192 Mass(GeV)= 0.5 TrackId= 44 -### New exotic particle produced: ldmphoton Ekin(GeV)= 7.04394 Mass(GeV)= 0.5 TrackId= 47 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.940075 Mass(GeV)= 0.5 TrackId= 57 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.49847 Mass(GeV)= 0.5 TrackId= 60 -### New exotic particle produced: ldmphoton Ekin(GeV)= 9.76 Mass(GeV)= 0.5 TrackId= 65 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.60494 Mass(GeV)= 0.5 TrackId= 68 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.27977 Mass(GeV)= 0.5 TrackId= 71 -### New exotic particle produced: ldmphoton Ekin(GeV)= 7.86643 Mass(GeV)= 0.5 TrackId= 5 -### New exotic particle produced: ldmphoton Ekin(GeV)= 13.9037 Mass(GeV)= 0.5 TrackId= 10 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.644782 Mass(GeV)= 0.5 TrackId= 15 -### New exotic particle produced: ldmphoton Ekin(GeV)= 21.1411 Mass(GeV)= 0.5 TrackId= 25 -### New exotic particle produced: ldmphoton Ekin(GeV)= 11.6034 Mass(GeV)= 0.5 TrackId= 37 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.47373 Mass(GeV)= 0.5 TrackId= 41 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.692847 Mass(GeV)= 0.5 TrackId= 50 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.04547 Mass(GeV)= 0.5 TrackId= 55 -### New exotic particle produced: ldmphoton Ekin(GeV)= 43.5287 Mass(GeV)= 0.5 TrackId= 9 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.30891 Mass(GeV)= 0.5 TrackId= 54 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.23221 Mass(GeV)= 0.5 TrackId= 59 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.53382 Mass(GeV)= 0.5 TrackId= 22 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.53122 Mass(GeV)= 0.5 TrackId= 41 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.03766 Mass(GeV)= 0.5 TrackId= 42 -### New exotic particle produced: ldmphoton Ekin(GeV)= 6.59804 Mass(GeV)= 0.5 TrackId= 61 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.972902 Mass(GeV)= 0.5 TrackId= 10 -### New exotic particle produced: ldmphoton Ekin(GeV)= 22.914 Mass(GeV)= 0.5 TrackId= 34 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.602631 Mass(GeV)= 0.5 TrackId= 37 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.602663 Mass(GeV)= 0.5 TrackId= 42 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.991956 Mass(GeV)= 0.5 TrackId= 57 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.38867 Mass(GeV)= 0.5 TrackId= 59 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.710627 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 6.3829 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.637293 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 50.6849 Mass(GeV)= 0.5 TrackId= 44 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.42647 Mass(GeV)= 0.5 TrackId= 48 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.40281 Mass(GeV)= 0.5 TrackId= 25 -### New exotic particle produced: ldmphoton Ekin(GeV)= 7.05073 Mass(GeV)= 0.5 TrackId= 26 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.8495 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.69742 Mass(GeV)= 0.5 TrackId= 36 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.98222 Mass(GeV)= 0.5 TrackId= 42 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.62484 Mass(GeV)= 0.5 TrackId= 66 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.953418 Mass(GeV)= 0.5 TrackId= 26 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.4969 Mass(GeV)= 0.5 TrackId= 55 -### New exotic particle produced: ldmphoton Ekin(GeV)= 11.2665 Mass(GeV)= 0.5 TrackId= 14 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.04844 Mass(GeV)= 0.5 TrackId= 48 -### New exotic particle produced: ldmphoton Ekin(GeV)= 8.39393 Mass(GeV)= 0.5 TrackId= 52 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.78335 Mass(GeV)= 0.5 TrackId= 61 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.15536 Mass(GeV)= 0.5 TrackId= 13 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.27671 Mass(GeV)= 0.5 TrackId= 41 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.05808 Mass(GeV)= 0.5 TrackId= 53 +### New exotic particle produced: ldmphoton Ekin(GeV)= 13.3804 Mass(GeV)= 0.5 TrackId= 57 +### New exotic particle produced: ldmphoton Ekin(GeV)= 29.9727 Mass(GeV)= 0.5 TrackId= 72 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.741947 Mass(GeV)= 0.5 TrackId= 74 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.15137 Mass(GeV)= 0.5 TrackId= 16 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.860604 Mass(GeV)= 0.5 TrackId= 26 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.63845 Mass(GeV)= 0.5 TrackId= 28 +### New exotic particle produced: ldmphoton Ekin(GeV)= 20.2709 Mass(GeV)= 0.5 TrackId= 36 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.74665 Mass(GeV)= 0.5 TrackId= 58 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.820908 Mass(GeV)= 0.5 TrackId= 3 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.75058 Mass(GeV)= 0.5 TrackId= 6 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.07783 Mass(GeV)= 0.5 TrackId= 18 +### New exotic particle produced: ldmphoton Ekin(GeV)= 11.1965 Mass(GeV)= 0.5 TrackId= 56 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.43145 Mass(GeV)= 0.5 TrackId= 66 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.806311 Mass(GeV)= 0.5 TrackId= 80 +### New exotic particle produced: ldmphoton Ekin(GeV)= 8.90037 Mass(GeV)= 0.5 TrackId= 4 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.57941 Mass(GeV)= 0.5 TrackId= 6 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.52896 Mass(GeV)= 0.5 TrackId= 20 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.71572 Mass(GeV)= 0.5 TrackId= 32 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.02704 Mass(GeV)= 0.5 TrackId= 36 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.06698 Mass(GeV)= 0.5 TrackId= 40 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.874485 Mass(GeV)= 0.5 TrackId= 54 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.17046 Mass(GeV)= 0.5 TrackId= 57 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.4008 Mass(GeV)= 0.5 TrackId= 73 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.922376 Mass(GeV)= 0.5 TrackId= 83 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.0177 Mass(GeV)= 0.5 TrackId= 30 +### New exotic particle produced: ldmphoton Ekin(GeV)= 6.13179 Mass(GeV)= 0.5 TrackId= 40 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.21942 Mass(GeV)= 0.5 TrackId= 41 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.83676 Mass(GeV)= 0.5 TrackId= 71 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.646457 Mass(GeV)= 0.5 TrackId= 10 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.38714 Mass(GeV)= 0.5 TrackId= 21 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.865746 Mass(GeV)= 0.5 TrackId= 34 +### New exotic particle produced: ldmphoton Ekin(GeV)= 11.4628 Mass(GeV)= 0.5 TrackId= 72 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.760802 Mass(GeV)= 0.5 TrackId= 43 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.32665 Mass(GeV)= 0.5 TrackId= 67 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.63481 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.66224 Mass(GeV)= 0.5 TrackId= 14 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.685648 Mass(GeV)= 0.5 TrackId= 16 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.88945 Mass(GeV)= 0.5 TrackId= 40 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.14114 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 17.9157 Mass(GeV)= 0.5 TrackId= 53 +### New exotic particle produced: ldmphoton Ekin(GeV)= 15.4446 Mass(GeV)= 0.5 TrackId= 41 +### New exotic particle produced: ldmphoton Ekin(GeV)= 6.94329 Mass(GeV)= 0.5 TrackId= 42 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.56191 Mass(GeV)= 0.5 TrackId= 47 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.95314 Mass(GeV)= 0.5 TrackId= 49 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.34019 Mass(GeV)= 0.5 TrackId= 18 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.711379 Mass(GeV)= 0.5 TrackId= 21 +### New exotic particle produced: ldmphoton Ekin(GeV)= 31.1605 Mass(GeV)= 0.5 TrackId= 40 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.47039 Mass(GeV)= 0.5 TrackId= 56 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.45307 Mass(GeV)= 0.5 TrackId= 57 --> Event 70 starts. -### New exotic particle produced: ldmphoton Ekin(GeV)= 22.5716 Mass(GeV)= 0.5 TrackId= 6 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.76989 Mass(GeV)= 0.5 TrackId= 19 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.94571 Mass(GeV)= 0.5 TrackId= 23 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.88277 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.38239 Mass(GeV)= 0.5 TrackId= 52 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.19736 Mass(GeV)= 0.5 TrackId= 53 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.95867 Mass(GeV)= 0.5 TrackId= 2 -### New exotic particle produced: ldmphoton Ekin(GeV)= 58.4693 Mass(GeV)= 0.5 TrackId= 10 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.11822 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.925151 Mass(GeV)= 0.5 TrackId= 22 -### New exotic particle produced: ldmphoton Ekin(GeV)= 25.7514 Mass(GeV)= 0.5 TrackId= 39 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.74854 Mass(GeV)= 0.5 TrackId= 75 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.774359 Mass(GeV)= 0.5 TrackId= 7 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.55939 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.921982 Mass(GeV)= 0.5 TrackId= 23 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.73033 Mass(GeV)= 0.5 TrackId= 45 -### New exotic particle produced: ldmphoton Ekin(GeV)= 49.2668 Mass(GeV)= 0.5 TrackId= 59 -### New exotic particle produced: ldmphoton Ekin(GeV)= 16.4261 Mass(GeV)= 0.5 TrackId= 66 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.86889 Mass(GeV)= 0.5 TrackId= 71 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.705324 Mass(GeV)= 0.5 TrackId= 10 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.76671 Mass(GeV)= 0.5 TrackId= 15 -### New exotic particle produced: ldmphoton Ekin(GeV)= 7.61128 Mass(GeV)= 0.5 TrackId= 16 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.846683 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.00478 Mass(GeV)= 0.5 TrackId= 37 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.079 Mass(GeV)= 0.5 TrackId= 43 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.33757 Mass(GeV)= 0.5 TrackId= 49 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.90716 Mass(GeV)= 0.5 TrackId= 56 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.85988 Mass(GeV)= 0.5 TrackId= 69 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.629188 Mass(GeV)= 0.5 TrackId= 4 -### New exotic particle produced: ldmphoton Ekin(GeV)= 25.8843 Mass(GeV)= 0.5 TrackId= 6 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.46924 Mass(GeV)= 0.5 TrackId= 15 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.19568 Mass(GeV)= 0.5 TrackId= 36 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.14327 Mass(GeV)= 0.5 TrackId= 50 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.93917 Mass(GeV)= 0.5 TrackId= 83 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.908848 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.60991 Mass(GeV)= 0.5 TrackId= 25 -### New exotic particle produced: ldmphoton Ekin(GeV)= 59.1504 Mass(GeV)= 0.5 TrackId= 54 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.58796 Mass(GeV)= 0.5 TrackId= 57 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.8686 Mass(GeV)= 0.5 TrackId= 77 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.786673 Mass(GeV)= 0.5 TrackId= 18 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.72559 Mass(GeV)= 0.5 TrackId= 19 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.00704 Mass(GeV)= 0.5 TrackId= 38 -### New exotic particle produced: ldmphoton Ekin(GeV)= 17.2992 Mass(GeV)= 0.5 TrackId= 47 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.611407 Mass(GeV)= 0.5 TrackId= 65 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.03234 Mass(GeV)= 0.5 TrackId= 7 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.47979 Mass(GeV)= 0.5 TrackId= 16 -### New exotic particle produced: ldmphoton Ekin(GeV)= 17.1923 Mass(GeV)= 0.5 TrackId= 23 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.81819 Mass(GeV)= 0.5 TrackId= 40 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.67916 Mass(GeV)= 0.5 TrackId= 4 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.12934 Mass(GeV)= 0.5 TrackId= 8 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.69992 Mass(GeV)= 0.5 TrackId= 12 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.53524 Mass(GeV)= 0.5 TrackId= 19 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.766585 Mass(GeV)= 0.5 TrackId= 21 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.992692 Mass(GeV)= 0.5 TrackId= 26 -### New exotic particle produced: ldmphoton Ekin(GeV)= 21.1531 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.833235 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.686665 Mass(GeV)= 0.5 TrackId= 40 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.67389 Mass(GeV)= 0.5 TrackId= 6 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.69369 Mass(GeV)= 0.5 TrackId= 26 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.92831 Mass(GeV)= 0.5 TrackId= 29 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.09806 Mass(GeV)= 0.5 TrackId= 39 +### New exotic particle produced: ldmphoton Ekin(GeV)= 20.9618 Mass(GeV)= 0.5 TrackId= 43 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.60866 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.33524 Mass(GeV)= 0.5 TrackId= 51 +### New exotic particle produced: ldmphoton Ekin(GeV)= 16.8876 Mass(GeV)= 0.5 TrackId= 20 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.3351 Mass(GeV)= 0.5 TrackId= 56 +### New exotic particle produced: ldmphoton Ekin(GeV)= 19.4934 Mass(GeV)= 0.5 TrackId= 73 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.633214 Mass(GeV)= 0.5 TrackId= 3 +### New exotic particle produced: ldmphoton Ekin(GeV)= 10.8216 Mass(GeV)= 0.5 TrackId= 21 +### New exotic particle produced: ldmphoton Ekin(GeV)= 45.8006 Mass(GeV)= 0.5 TrackId= 51 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.03395 Mass(GeV)= 0.5 TrackId= 18 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.47146 Mass(GeV)= 0.5 TrackId= 54 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.865051 Mass(GeV)= 0.5 TrackId= 19 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.27664 Mass(GeV)= 0.5 TrackId= 43 +### New exotic particle produced: ldmphoton Ekin(GeV)= 20.7096 Mass(GeV)= 0.5 TrackId= 47 +### New exotic particle produced: ldmphoton Ekin(GeV)= 23.5724 Mass(GeV)= 0.5 TrackId= 50 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.797648 Mass(GeV)= 0.5 TrackId= 67 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.46816 Mass(GeV)= 0.5 TrackId= 30 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.24141 Mass(GeV)= 0.5 TrackId= 42 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.766611 Mass(GeV)= 0.5 TrackId= 51 +### New exotic particle produced: ldmphoton Ekin(GeV)= 10.0539 Mass(GeV)= 0.5 TrackId= 7 +### New exotic particle produced: ldmphoton Ekin(GeV)= 7.70217 Mass(GeV)= 0.5 TrackId= 37 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.639123 Mass(GeV)= 0.5 TrackId= 66 +### New exotic particle produced: ldmphoton Ekin(GeV)= 7.98352 Mass(GeV)= 0.5 TrackId= 12 +### New exotic particle produced: ldmphoton Ekin(GeV)= 58.1742 Mass(GeV)= 0.5 TrackId= 17 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.668525 Mass(GeV)= 0.5 TrackId= 40 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.28564 Mass(GeV)= 0.5 TrackId= 47 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.0569 Mass(GeV)= 0.5 TrackId= 49 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.85422 Mass(GeV)= 0.5 TrackId= 55 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.892348 Mass(GeV)= 0.5 TrackId= 11 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.68104 Mass(GeV)= 0.5 TrackId= 13 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.7405 Mass(GeV)= 0.5 TrackId= 31 +### New exotic particle produced: ldmphoton Ekin(GeV)= 17.0823 Mass(GeV)= 0.5 TrackId= 38 +### New exotic particle produced: ldmphoton Ekin(GeV)= 17.5866 Mass(GeV)= 0.5 TrackId= 65 +### New exotic particle produced: ldmphoton Ekin(GeV)= 10.3101 Mass(GeV)= 0.5 TrackId= 17 +### New exotic particle produced: ldmphoton Ekin(GeV)= 10.9022 Mass(GeV)= 0.5 TrackId= 32 --> Event 80 starts. -### New exotic particle produced: ldmphoton Ekin(GeV)= 24.169 Mass(GeV)= 0.5 TrackId= 2 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.03859 Mass(GeV)= 0.5 TrackId= 3 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.0331 Mass(GeV)= 0.5 TrackId= 4 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.63066 Mass(GeV)= 0.5 TrackId= 49 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.25986 Mass(GeV)= 0.5 TrackId= 58 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.91242 Mass(GeV)= 0.5 TrackId= 2 -### New exotic particle produced: ldmphoton Ekin(GeV)= 9.19756 Mass(GeV)= 0.5 TrackId= 9 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.62936 Mass(GeV)= 0.5 TrackId= 18 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.77985 Mass(GeV)= 0.5 TrackId= 49 -### New exotic particle produced: ldmphoton Ekin(GeV)= 10.2963 Mass(GeV)= 0.5 TrackId= 68 -### New exotic particle produced: ldmphoton Ekin(GeV)= 5.44739 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.800212 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 6.51487 Mass(GeV)= 0.5 TrackId= 24 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.601784 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.43007 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.06401 Mass(GeV)= 0.5 TrackId= 38 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.08589 Mass(GeV)= 0.5 TrackId= 58 -### New exotic particle produced: ldmphoton Ekin(GeV)= 11.6174 Mass(GeV)= 0.5 TrackId= 68 -### New exotic particle produced: ldmphoton Ekin(GeV)= 9.81859 Mass(GeV)= 0.5 TrackId= 83 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.12233 Mass(GeV)= 0.5 TrackId= 7 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.11922 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.05292 Mass(GeV)= 0.5 TrackId= 39 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.29696 Mass(GeV)= 0.5 TrackId= 51 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.88656 Mass(GeV)= 0.5 TrackId= 63 -### New exotic particle produced: ldmphoton Ekin(GeV)= 12.8543 Mass(GeV)= 0.5 TrackId= 68 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.35902 Mass(GeV)= 0.5 TrackId= 21 -### New exotic particle produced: ldmphoton Ekin(GeV)= 6.54603 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.75305 Mass(GeV)= 0.5 TrackId= 42 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.23311 Mass(GeV)= 0.5 TrackId= 43 -### New exotic particle produced: ldmphoton Ekin(GeV)= 18.5779 Mass(GeV)= 0.5 TrackId= 61 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.665583 Mass(GeV)= 0.5 TrackId= 4 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.49707 Mass(GeV)= 0.5 TrackId= 16 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.62875 Mass(GeV)= 0.5 TrackId= 17 -### New exotic particle produced: ldmphoton Ekin(GeV)= 18.4785 Mass(GeV)= 0.5 TrackId= 21 -### New exotic particle produced: ldmphoton Ekin(GeV)= 13.018 Mass(GeV)= 0.5 TrackId= 27 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.67988 Mass(GeV)= 0.5 TrackId= 49 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.24482 Mass(GeV)= 0.5 TrackId= 55 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.76439 Mass(GeV)= 0.5 TrackId= 57 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.613302 Mass(GeV)= 0.5 TrackId= 69 -### New exotic particle produced: ldmphoton Ekin(GeV)= 6.21181 Mass(GeV)= 0.5 TrackId= 6 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.64711 Mass(GeV)= 0.5 TrackId= 7 -### New exotic particle produced: ldmphoton Ekin(GeV)= 9.2114 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.95131 Mass(GeV)= 0.5 TrackId= 16 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.68462 Mass(GeV)= 0.5 TrackId= 18 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.50818 Mass(GeV)= 0.5 TrackId= 25 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.892309 Mass(GeV)= 0.5 TrackId= 49 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.14014 Mass(GeV)= 0.5 TrackId= 61 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.69085 Mass(GeV)= 0.5 TrackId= 8 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.644306 Mass(GeV)= 0.5 TrackId= 21 -### New exotic particle produced: ldmphoton Ekin(GeV)= 18.7601 Mass(GeV)= 0.5 TrackId= 37 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.82892 Mass(GeV)= 0.5 TrackId= 38 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.25921 Mass(GeV)= 0.5 TrackId= 44 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.39701 Mass(GeV)= 0.5 TrackId= 46 -### New exotic particle produced: ldmphoton Ekin(GeV)= 17.0591 Mass(GeV)= 0.5 TrackId= 83 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.859306 Mass(GeV)= 0.5 TrackId= 4 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.17178 Mass(GeV)= 0.5 TrackId= 23 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.02746 Mass(GeV)= 0.5 TrackId= 26 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.8892 Mass(GeV)= 0.5 TrackId= 28 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.90339 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.00107 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 15.3466 Mass(GeV)= 0.5 TrackId= 43 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.08328 Mass(GeV)= 0.5 TrackId= 48 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.63486 Mass(GeV)= 0.5 TrackId= 15 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.93413 Mass(GeV)= 0.5 TrackId= 31 -### New exotic particle produced: ldmphoton Ekin(GeV)= 10.734 Mass(GeV)= 0.5 TrackId= 32 -### New exotic particle produced: ldmphoton Ekin(GeV)= 11.0354 Mass(GeV)= 0.5 TrackId= 33 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.02715 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 20.2427 Mass(GeV)= 0.5 TrackId= 41 +### New exotic particle produced: ldmphoton Ekin(GeV)= 7.39988 Mass(GeV)= 0.5 TrackId= 3 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.844995 Mass(GeV)= 0.5 TrackId= 19 +### New exotic particle produced: ldmphoton Ekin(GeV)= 12.4545 Mass(GeV)= 0.5 TrackId= 38 +### New exotic particle produced: ldmphoton Ekin(GeV)= 12.6943 Mass(GeV)= 0.5 TrackId= 76 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.82341 Mass(GeV)= 0.5 TrackId= 14 +### New exotic particle produced: ldmphoton Ekin(GeV)= 77.7411 Mass(GeV)= 0.5 TrackId= 34 +### New exotic particle produced: ldmphoton Ekin(GeV)= 18.3681 Mass(GeV)= 0.5 TrackId= 14 +### New exotic particle produced: ldmphoton Ekin(GeV)= 25.6568 Mass(GeV)= 0.5 TrackId= 25 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.09067 Mass(GeV)= 0.5 TrackId= 30 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.657891 Mass(GeV)= 0.5 TrackId= 49 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.79691 Mass(GeV)= 0.5 TrackId= 65 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.635434 Mass(GeV)= 0.5 TrackId= 67 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.08489 Mass(GeV)= 0.5 TrackId= 16 +### New exotic particle produced: ldmphoton Ekin(GeV)= 7.44997 Mass(GeV)= 0.5 TrackId= 24 +### New exotic particle produced: ldmphoton Ekin(GeV)= 6.9485 Mass(GeV)= 0.5 TrackId= 31 +### New exotic particle produced: ldmphoton Ekin(GeV)= 6.45623 Mass(GeV)= 0.5 TrackId= 57 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.945133 Mass(GeV)= 0.5 TrackId= 68 +### New exotic particle produced: ldmphoton Ekin(GeV)= 7.52716 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.718338 Mass(GeV)= 0.5 TrackId= 7 +### New exotic particle produced: ldmphoton Ekin(GeV)= 58.0495 Mass(GeV)= 0.5 TrackId= 8 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.73752 Mass(GeV)= 0.5 TrackId= 26 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.972557 Mass(GeV)= 0.5 TrackId= 45 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.17059 Mass(GeV)= 0.5 TrackId= 20 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.803543 Mass(GeV)= 0.5 TrackId= 39 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.15806 Mass(GeV)= 0.5 TrackId= 58 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.20724 Mass(GeV)= 0.5 TrackId= 61 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.9201 Mass(GeV)= 0.5 TrackId= 76 +### New exotic particle produced: ldmphoton Ekin(GeV)= 14.087 Mass(GeV)= 0.5 TrackId= 82 +### New exotic particle produced: ldmphoton Ekin(GeV)= 28.6759 Mass(GeV)= 0.5 TrackId= 84 +### New exotic particle produced: ldmphoton Ekin(GeV)= 44.3252 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 7.07746 Mass(GeV)= 0.5 TrackId= 22 +### New exotic particle produced: ldmphoton Ekin(GeV)= 26.5315 Mass(GeV)= 0.5 TrackId= 27 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.95124 Mass(GeV)= 0.5 TrackId= 47 +### New exotic particle produced: ldmphoton Ekin(GeV)= 6.20832 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.96801 Mass(GeV)= 0.5 TrackId= 13 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.00855 Mass(GeV)= 0.5 TrackId= 14 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.78074 Mass(GeV)= 0.5 TrackId= 31 +### New exotic particle produced: ldmphoton Ekin(GeV)= 8.83433 Mass(GeV)= 0.5 TrackId= 38 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.20021 Mass(GeV)= 0.5 TrackId= 39 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.45344 Mass(GeV)= 0.5 TrackId= 46 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.25072 Mass(GeV)= 0.5 TrackId= 18 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.11184 Mass(GeV)= 0.5 TrackId= 42 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.47545 Mass(GeV)= 0.5 TrackId= 49 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.15645 Mass(GeV)= 0.5 TrackId= 52 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.0119 Mass(GeV)= 0.5 TrackId= 73 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.646039 Mass(GeV)= 0.5 TrackId= 11 +### New exotic particle produced: ldmphoton Ekin(GeV)= 13.2001 Mass(GeV)= 0.5 TrackId= 14 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.10845 Mass(GeV)= 0.5 TrackId= 19 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.1387 Mass(GeV)= 0.5 TrackId= 31 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.62718 Mass(GeV)= 0.5 TrackId= 45 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.53774 Mass(GeV)= 0.5 TrackId= 46 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.67476 Mass(GeV)= 0.5 TrackId= 49 +### New exotic particle produced: ldmphoton Ekin(GeV)= 7.86347 Mass(GeV)= 0.5 TrackId= 64 --> Event 90 starts. -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.66726 Mass(GeV)= 0.5 TrackId= 10 -### New exotic particle produced: ldmphoton Ekin(GeV)= 8.68698 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.04524 Mass(GeV)= 0.5 TrackId= 24 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.835073 Mass(GeV)= 0.5 TrackId= 72 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.94931 Mass(GeV)= 0.5 TrackId= 10 -### New exotic particle produced: ldmphoton Ekin(GeV)= 6.87086 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 19.7646 Mass(GeV)= 0.5 TrackId= 28 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.75081 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.18272 Mass(GeV)= 0.5 TrackId= 36 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.31144 Mass(GeV)= 0.5 TrackId= 41 -### New exotic particle produced: ldmphoton Ekin(GeV)= 43.8495 Mass(GeV)= 0.5 TrackId= 52 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.45864 Mass(GeV)= 0.5 TrackId= 6 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.74487 Mass(GeV)= 0.5 TrackId= 8 -### New exotic particle produced: ldmphoton Ekin(GeV)= 9.97618 Mass(GeV)= 0.5 TrackId= 9 -### New exotic particle produced: ldmphoton Ekin(GeV)= 10.0359 Mass(GeV)= 0.5 TrackId= 23 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.685278 Mass(GeV)= 0.5 TrackId= 32 -### New exotic particle produced: ldmphoton Ekin(GeV)= 14.8164 Mass(GeV)= 0.5 TrackId= 38 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.843439 Mass(GeV)= 0.5 TrackId= 60 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.647722 Mass(GeV)= 0.5 TrackId= 71 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.1022 Mass(GeV)= 0.5 TrackId= 2 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.24899 Mass(GeV)= 0.5 TrackId= 23 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.09387 Mass(GeV)= 0.5 TrackId= 37 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.15379 Mass(GeV)= 0.5 TrackId= 40 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.22135 Mass(GeV)= 0.5 TrackId= 44 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.73545 Mass(GeV)= 0.5 TrackId= 52 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.23919 Mass(GeV)= 0.5 TrackId= 54 -### New exotic particle produced: ldmphoton Ekin(GeV)= 10.696 Mass(GeV)= 0.5 TrackId= 24 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.11961 Mass(GeV)= 0.5 TrackId= 29 -### New exotic particle produced: ldmphoton Ekin(GeV)= 6.79261 Mass(GeV)= 0.5 TrackId= 33 -### New exotic particle produced: ldmphoton Ekin(GeV)= 9.05235 Mass(GeV)= 0.5 TrackId= 42 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.27645 Mass(GeV)= 0.5 TrackId= 44 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.37919 Mass(GeV)= 0.5 TrackId= 48 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.649401 Mass(GeV)= 0.5 TrackId= 66 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.18847 Mass(GeV)= 0.5 TrackId= 85 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.85294 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.73389 Mass(GeV)= 0.5 TrackId= 16 -### New exotic particle produced: ldmphoton Ekin(GeV)= 11.4798 Mass(GeV)= 0.5 TrackId= 57 -### New exotic particle produced: ldmphoton Ekin(GeV)= 18.2335 Mass(GeV)= 0.5 TrackId= 70 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.22995 Mass(GeV)= 0.5 TrackId= 3 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.27566 Mass(GeV)= 0.5 TrackId= 7 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.57017 Mass(GeV)= 0.5 TrackId= 11 -### New exotic particle produced: ldmphoton Ekin(GeV)= 51.5881 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.28149 Mass(GeV)= 0.5 TrackId= 21 -### New exotic particle produced: ldmphoton Ekin(GeV)= 4.28713 Mass(GeV)= 0.5 TrackId= 30 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.40993 Mass(GeV)= 0.5 TrackId= 37 -### New exotic particle produced: ldmphoton Ekin(GeV)= 3.6644 Mass(GeV)= 0.5 TrackId= 42 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.07248 Mass(GeV)= 0.5 TrackId= 13 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.32592 Mass(GeV)= 0.5 TrackId= 20 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.10092 Mass(GeV)= 0.5 TrackId= 23 -### New exotic particle produced: ldmphoton Ekin(GeV)= 27.3709 Mass(GeV)= 0.5 TrackId= 38 -### New exotic particle produced: ldmphoton Ekin(GeV)= 7.93928 Mass(GeV)= 0.5 TrackId= 57 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.46907 Mass(GeV)= 0.5 TrackId= 9 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.716317 Mass(GeV)= 0.5 TrackId= 19 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.810751 Mass(GeV)= 0.5 TrackId= 35 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.65416 Mass(GeV)= 0.5 TrackId= 19 -### New exotic particle produced: ldmphoton Ekin(GeV)= 34.3745 Mass(GeV)= 0.5 TrackId= 20 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.2395 Mass(GeV)= 0.5 TrackId= 21 -### New exotic particle produced: ldmphoton Ekin(GeV)= 1.8655 Mass(GeV)= 0.5 TrackId= 27 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.626995 Mass(GeV)= 0.5 TrackId= 36 -### New exotic particle produced: ldmphoton Ekin(GeV)= 2.00833 Mass(GeV)= 0.5 TrackId= 40 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.650225 Mass(GeV)= 0.5 TrackId= 54 -### New exotic particle produced: ldmphoton Ekin(GeV)= 0.773993 Mass(GeV)= 0.5 TrackId= 59 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.1234 Mass(GeV)= 0.5 TrackId= 61 +### New exotic particle produced: ldmphoton Ekin(GeV)= 41.5735 Mass(GeV)= 0.5 TrackId= 2 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.69959 Mass(GeV)= 0.5 TrackId= 29 +### New exotic particle produced: ldmphoton Ekin(GeV)= 11.2556 Mass(GeV)= 0.5 TrackId= 45 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.82483 Mass(GeV)= 0.5 TrackId= 51 +### New exotic particle produced: ldmphoton Ekin(GeV)= 9.91475 Mass(GeV)= 0.5 TrackId= 52 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.31209 Mass(GeV)= 0.5 TrackId= 63 +### New exotic particle produced: ldmphoton Ekin(GeV)= 12.6372 Mass(GeV)= 0.5 TrackId= 22 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.37415 Mass(GeV)= 0.5 TrackId= 28 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.90431 Mass(GeV)= 0.5 TrackId= 45 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.07196 Mass(GeV)= 0.5 TrackId= 24 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.732592 Mass(GeV)= 0.5 TrackId= 35 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.31898 Mass(GeV)= 0.5 TrackId= 51 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.610454 Mass(GeV)= 0.5 TrackId= 54 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.688881 Mass(GeV)= 0.5 TrackId= 63 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.800941 Mass(GeV)= 0.5 TrackId= 5 +### New exotic particle produced: ldmphoton Ekin(GeV)= 24.095 Mass(GeV)= 0.5 TrackId= 7 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.16636 Mass(GeV)= 0.5 TrackId= 8 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.97942 Mass(GeV)= 0.5 TrackId= 39 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.63386 Mass(GeV)= 0.5 TrackId= 47 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.73944 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.56721 Mass(GeV)= 0.5 TrackId= 3 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.58548 Mass(GeV)= 0.5 TrackId= 23 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.37294 Mass(GeV)= 0.5 TrackId= 24 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.34924 Mass(GeV)= 0.5 TrackId= 26 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.666899 Mass(GeV)= 0.5 TrackId= 39 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.63638 Mass(GeV)= 0.5 TrackId= 49 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.601891 Mass(GeV)= 0.5 TrackId= 52 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.24806 Mass(GeV)= 0.5 TrackId= 72 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.5358 Mass(GeV)= 0.5 TrackId= 82 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.13064 Mass(GeV)= 0.5 TrackId= 86 +### New exotic particle produced: ldmphoton Ekin(GeV)= 6.17042 Mass(GeV)= 0.5 TrackId= 97 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.18951 Mass(GeV)= 0.5 TrackId= 3 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.76867 Mass(GeV)= 0.5 TrackId= 9 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.86543 Mass(GeV)= 0.5 TrackId= 18 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.49152 Mass(GeV)= 0.5 TrackId= 26 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.97768 Mass(GeV)= 0.5 TrackId= 48 +### New exotic particle produced: ldmphoton Ekin(GeV)= 16.8332 Mass(GeV)= 0.5 TrackId= 52 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.18726 Mass(GeV)= 0.5 TrackId= 13 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.57895 Mass(GeV)= 0.5 TrackId= 24 +### New exotic particle produced: ldmphoton Ekin(GeV)= 5.04413 Mass(GeV)= 0.5 TrackId= 30 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.36351 Mass(GeV)= 0.5 TrackId= 42 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.94856 Mass(GeV)= 0.5 TrackId= 47 +### New exotic particle produced: ldmphoton Ekin(GeV)= 16.4178 Mass(GeV)= 0.5 TrackId= 68 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.56567 Mass(GeV)= 0.5 TrackId= 69 +### New exotic particle produced: ldmphoton Ekin(GeV)= 4.64997 Mass(GeV)= 0.5 TrackId= 35 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.74093 Mass(GeV)= 0.5 TrackId= 50 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.656276 Mass(GeV)= 0.5 TrackId= 53 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.96586 Mass(GeV)= 0.5 TrackId= 69 +### New exotic particle produced: ldmphoton Ekin(GeV)= 26.6057 Mass(GeV)= 0.5 TrackId= 71 +### New exotic particle produced: ldmphoton Ekin(GeV)= 2.40371 Mass(GeV)= 0.5 TrackId= 4 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.21352 Mass(GeV)= 0.5 TrackId= 7 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.16691 Mass(GeV)= 0.5 TrackId= 8 +### New exotic particle produced: ldmphoton Ekin(GeV)= 43.9982 Mass(GeV)= 0.5 TrackId= 10 +### New exotic particle produced: ldmphoton Ekin(GeV)= 8.71488 Mass(GeV)= 0.5 TrackId= 11 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.21092 Mass(GeV)= 0.5 TrackId= 16 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.643754 Mass(GeV)= 0.5 TrackId= 19 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.19489 Mass(GeV)= 0.5 TrackId= 34 +### New exotic particle produced: ldmphoton Ekin(GeV)= 0.908198 Mass(GeV)= 0.5 TrackId= 44 +### New exotic particle produced: ldmphoton Ekin(GeV)= 1.24107 Mass(GeV)= 0.5 TrackId= 47 +### New exotic particle produced: ldmphoton Ekin(GeV)= 3.4496 Mass(GeV)= 0.5 TrackId= 68 Run terminated. Run Summary Number of events processed : 100 - User=1.360000s Real=1.402994s Sys=0.010000s -RunAction: End of run actions are started 1 Nevt= 100 Edep= 3729.36 + User=0.530000s Real=0.548254s Sys=0.010000s +RunAction: End of run actions are started 1 Nevt= 100 Edep= 3720.57 ==================================================== Beam Particle: proton Ekin(GeV) = 100 @@ -1069,17 +1060,20 @@ RunAction: End of run actions are started 1 Nevt= 100 Edep= 3729.36 ================== run summary ===================== End of Run TotNbofEvents = 100 - Mean energy deposit in absorber = 3.7294 +- 0.023386 GeV RMS/Emean = 0.062708 - Mean number of steps in absorber= 83.65 + Mean energy deposit in absorber = 3.7206 +- 0.024186 GeV RMS/Emean = 0.065006 + Mean number of steps in absorber= 84.64 ================== run end ========================== -... write Root file : dmp.root - done -... close Root file : dmp.root - done +... write file : dmp.root - done +... close file : dmp.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 10 of which, static: 0 -Dynamic pools deleted: 10 / Total memory freed: 0.068 MB +Dynamic pools deleted: 10 / Total memory freed: 0.063 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/exoticphysics/dmparticle/include/ActionInitialization.hh b/examples/extended/exoticphysics/dmparticle/include/ActionInitialization.hh old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/include/DetectorConstruction.hh b/examples/extended/exoticphysics/dmparticle/include/DetectorConstruction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/include/DetectorMessenger.hh b/examples/extended/exoticphysics/dmparticle/include/DetectorMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/include/EventAction.hh b/examples/extended/exoticphysics/dmparticle/include/EventAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/include/PhysicsList.hh b/examples/extended/exoticphysics/dmparticle/include/PhysicsList.hh old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/include/PhysicsListMessenger.hh b/examples/extended/exoticphysics/dmparticle/include/PhysicsListMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/include/PrimaryGeneratorAction.hh b/examples/extended/exoticphysics/dmparticle/include/PrimaryGeneratorAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/include/Run.hh b/examples/extended/exoticphysics/dmparticle/include/Run.hh old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/include/RunAction.hh b/examples/extended/exoticphysics/dmparticle/include/RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/include/StackingAction.hh b/examples/extended/exoticphysics/dmparticle/include/StackingAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/include/StackingMessenger.hh b/examples/extended/exoticphysics/dmparticle/include/StackingMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/include/TargetSD.hh b/examples/extended/exoticphysics/dmparticle/include/TargetSD.hh old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/include/TestParameters.hh b/examples/extended/exoticphysics/dmparticle/include/TestParameters.hh old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/src/ActionInitialization.cc b/examples/extended/exoticphysics/dmparticle/src/ActionInitialization.cc old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/src/DetectorConstruction.cc b/examples/extended/exoticphysics/dmparticle/src/DetectorConstruction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/src/DetectorMessenger.cc b/examples/extended/exoticphysics/dmparticle/src/DetectorMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/src/EventAction.cc b/examples/extended/exoticphysics/dmparticle/src/EventAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/src/PhysicsList.cc b/examples/extended/exoticphysics/dmparticle/src/PhysicsList.cc old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/src/PhysicsListMessenger.cc b/examples/extended/exoticphysics/dmparticle/src/PhysicsListMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/src/PrimaryGeneratorAction.cc b/examples/extended/exoticphysics/dmparticle/src/PrimaryGeneratorAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/src/Run.cc b/examples/extended/exoticphysics/dmparticle/src/Run.cc old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/src/RunAction.cc b/examples/extended/exoticphysics/dmparticle/src/RunAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/src/StackingAction.cc b/examples/extended/exoticphysics/dmparticle/src/StackingAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/src/StackingMessenger.cc b/examples/extended/exoticphysics/dmparticle/src/StackingMessenger.cc old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/src/TargetSD.cc b/examples/extended/exoticphysics/dmparticle/src/TargetSD.cc old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/dmparticle/src/TestParameters.cc b/examples/extended/exoticphysics/dmparticle/src/TestParameters.cc old mode 100755 new mode 100644 diff --git a/examples/extended/exoticphysics/monopole/CMakeLists.txt b/examples/extended/exoticphysics/monopole/CMakeLists.txt index 7b86a505d4..c56a4a0ef2 100644 --- a/examples/extended/exoticphysics/monopole/CMakeLists.txt +++ b/examples/extended/exoticphysics/monopole/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(monopole) #---------------------------------------------------------------------------- diff --git a/examples/extended/exoticphysics/monopole/History b/examples/extended/exoticphysics/monopole/History index 9d53bd1e53..afa2c7827c 100644 --- a/examples/extended/exoticphysics/monopole/History +++ b/examples/extended/exoticphysics/monopole/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10 November 2020: B. Morgan (monopole-V10-06-00) +- Migration to G4RunManagerFactory. + 21 February 2020: V.Ivantchenko (monopole-V10-06-00) - G4MonopolePhysics - minor code clean-up for thread safety - monopole.cc - do not instantiate VisManager in the batch mode; @@ -34,7 +37,7 @@ track of all tags. - monopole.cc - do not instantiate VisManager in the batch mode, default number of threads is now 1 - Run, RunAction - extend histograms and printouts to restricted dEdx and - delta-electron cross section (needed to fix problem #2126) + delta-electron cross section (needed to fix problem #2126) 23 October 2018: I.Hrivnacova (monopole-V10-04-06) - Define the field setup data (fMonFieldSetup) in the DetectorConstruction class @@ -43,11 +46,11 @@ track of all tags. 19 October 2018: I.Hrivnacova (monopole-V10-04-05) Macro review and code clean-up: - Removed not used and not working commands: - /testex/det/setField + /testex/det/setField not used, duplicates /testex/fld/setField 0.2 tesla /testex/det/update not used - /monopole/magCharge, elCharge, Mass + /monopole/magCharge, elCharge, Mass not working, as these parameters need to be set at a very early stage /testex/run/verbose the set verbose level is not used @@ -60,11 +63,11 @@ Macro review and code clean-up: 15 October 2018: I.Hrivnacova (monopole-V10-04-04) - Removed run initialization from main and added init_vis.mac macro for interactive session -- Explicitly define physics lists ("FTFP_BERT") +- Explicitly define physics lists ("FTFP_BERT") - Added the default value of magnetic field 0.2 tesla and also setting of this value in monopole.in and init_vis.mac - Fixed updating geometry parameters after initialization - by calling G4RunManager::ReinitializeGeometry() instead of + by calling G4RunManager::ReinitializeGeometry() instead of GeometryHasBeenModified() - Added printing production cuts table in RunAction::EndOfRunAction @@ -85,9 +88,9 @@ Macro review and code clean-up: 8 March 2018: J. Apostolakis (monopole-V10-04-00) - As equations of motion do not use Electric field, changed - G4MonopoleEquation to use G4MagneticField (instead of + G4MonopoleEquation to use G4MagneticField (instead of G4ElectroMagneticField.) - This is needed due to correction of inheritance in + This is needed due to correction of inheritance in magfield-V10-04-00 which is a co-working tag. 21 November 17: V.Ivantchenko (monopole-V10-03-04) @@ -106,32 +109,32 @@ Macro review and code clean-up: - switch to G4AnalysisManager 01 September 15: I. Hrivnacova (monopole-V10-01-00) -- Removed EventAction and EventActionMessenger classes, now obsolete, and - replaced /testex/event/printModulo commands in macros with +- Removed EventAction and EventActionMessenger classes, now obsolete, and + replaced /testex/event/printModulo commands in macros with /run/printProgress 16 October 14: I. Hrivnacova (monopole-V10-00-00) -- Fixed coding guidelines (long lines) in G4MonopoleTransportation.cc +- Fixed coding guidelines (long lines) in G4MonopoleTransportation.cc 03 December 13: I. Hrivnacova (monopole-V09-06-06) - Updated README for removing AIDA 10 May 13: J.Apostolakis (monopole-V09-06-05) -- G4MonopoleTransportation and G4MonopoleEquation: - Adapted to use G4ChargeState to pass Magnetic & Electric Charge, - and to changed signature of SetChargeMomentumMass. +- G4MonopoleTransportation and G4MonopoleEquation: + Adapted to use G4ChargeState to pass Magnetic & Electric Charge, + and to changed signature of SetChargeMomentumMass. 19 February 13: V.Ivantchenko (monopole-V09-06-04) - G4MonopoleTransportation - removed local variable fVerboseLevel - and Get/Set methods; use instead verboseLevel variable from + and Get/Set methods; use instead verboseLevel variable from the base class 13 February 13: I.Hrivnacova (monopole-V09-06-03) -- Applied coding guidelines +- Applied coding guidelines (virtual keyword, data members names and initialization) 01 February 13: V.Ivant (monopole-V09-06-02) -- G4MonopolePhysics - fixed warning at initialisation +- G4MonopolePhysics - fixed warning at initialisation 31 January 13: V.Ivant (monopole-V09-06-01) - fixed initialisation after MT was introduced @@ -142,15 +145,15 @@ Macro review and code clean-up: 20 September 12: I.Hrivnacova (monopole-V09-05-03) - Adding explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh where needed -- Replaced tabulators with space characters +- Replaced tabulators with space characters 19 September 12: V.Ivant (monopole-V09-05-02) - remove not needed file 4 September 12: I.Hrivnacova (monopole-V09-05-01) - Updated CMakeLists.txt: - adding visualization, copying macros, install target and comment lines -- Adding .README + adding visualization, copying macros, install target and comment lines +- Adding .README 28 May 12: V.Ivant (monopole-V09-05-00) - applied code convention @@ -166,10 +169,10 @@ Macro review and code clean-up: - Fix AIDA file option. 6 June 10: J.Perl (monopole-V09-03-05) -- Remove unused variable in EventAction +- Remove unused variable in EventAction 4 June 10: J.Perl (monopole-V09-03-04) -- Updated vis usage +- Updated vis usage 04 June 10: V.Ivant (monopole-V09-03-03) - Substituted QGSP by QGSP_BERT @@ -190,7 +193,7 @@ Macro review and code clean-up: 11 June 08: V.Ivant (monopole-V09-01-00) - Remove AIDA from GNUmakefile -- Fixed compillation warnings +- Fixed compillation warnings 16 August 07: V.Ivant (monopole-V09-00-00) - First release diff --git a/examples/extended/exoticphysics/monopole/monopole.cc b/examples/extended/exoticphysics/monopole/monopole.cc index db881a4bdf..2a46b086ac 100644 --- a/examples/extended/exoticphysics/monopole/monopole.cc +++ b/examples/extended/exoticphysics/monopole/monopole.cc @@ -32,11 +32,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "Randomize.hh" @@ -56,19 +52,19 @@ namespace { void PrintUsage() { - G4cerr + G4cerr << " Usage: " << G4endl << " monopole [-m macro ] [-s setupMonopole] [-t nThreads]" << G4endl << " Note: " << G4endl << " -s should be followed by a composed string, eg. \'1 0 100 GeV\'" << G4endl - << " -t option is available only for multi-threaded mode." << G4endl + << " -t option is for multi-threaded mode." << G4endl << G4endl; } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -int main(int argc,char** argv) +int main(int argc,char** argv) { // Evaluate arguments // @@ -79,35 +75,27 @@ int main(int argc,char** argv) G4String macro; G4String setupMonopole; -#ifdef G4MULTITHREADED G4int nThreads = 1; -#endif for ( G4int i=1; i 0 ) { + auto* runManager = G4RunManagerFactory::CreateRunManager(); + if ( nThreads > 0 ) { runManager->SetNumberOfThreads(nThreads); - } + } G4cout << "===== Example is started with " << runManager->GetNumberOfThreads() << " threads =====" << G4endl; -#else - G4RunManager* runManager = new G4RunManager(); -#endif - + // Instantiate G4UIExecutive if interactive G4UIExecutive* ui = nullptr; if ( macro.empty() ) { @@ -153,7 +141,7 @@ int main(int argc,char** argv) G4String command = "/control/execute "; UImanager->ApplyCommand(command+macro); } - else { + else { // interactive mode : define UI session visManager = new G4VisExecutive(); visManager->Initialize(); diff --git a/examples/extended/exoticphysics/monopole/monopole.out b/examples/extended/exoticphysics/monopole/monopole.out index 6b425c8080..148482cae7 100644 --- a/examples/extended/exoticphysics/monopole/monopole.out +++ b/examples/extended/exoticphysics/monopole/monopole.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,6 +13,7 @@ WWW : http://geant4.org/ ************************************************************** +===== Example is started with 1 threads ===== G4PhysListFactory::GetReferencePhysList EMoption= 0 <<< Geant4 Physics List simulation engine: FTFP_BERT @@ -36,10 +38,8 @@ Monopole is created: m(GeV)= 100 Qel= 0 Qmag= 68.518 --------------------------------------------------------- G4MonopoleEquation::G4MonopoleEquation - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 0.01 numVar= 6 - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 0.01 numVar= 8 - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -70,8 +70,6 @@ G4ProcessManager: particle[monopole] /run/printProgress 10 /testex/fld/setField 0.2 tesla G4MonopoleEquation::G4MonopoleEquation - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 0.01 numVar= 6 - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 0.01 numVar= 8 /gun/particle monopole /gun/energy 100 GeV /run/beamOn 100 @@ -100,10 +98,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -127,10 +126,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -158,9 +158,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -174,14 +174,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -190,9 +190,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -204,9 +204,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -217,9 +217,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -233,14 +233,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -249,9 +249,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -265,14 +265,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -281,9 +281,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -297,14 +297,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -313,9 +313,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -330,14 +330,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -346,9 +346,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -363,14 +363,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -379,9 +379,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -395,14 +395,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -411,9 +411,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -427,14 +427,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -463,6 +463,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -537,6 +559,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -648,8 +683,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -714,8 +749,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -756,7 +791,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ### Run 0 starts. @@ -772,14 +806,15 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_Si Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 5.87994 keV e- 424.707 keV e+ 410.72 keV proton 70 keV + Energy thresholds : gamma 5.87535 keV e- 424.726 keV e+ 410.692 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld ================================================================== ### Run 0 start. -... open Root analysis file : monopole.root - done +... create file : monopole.root - done +... open analysis file : monopole.root - done --> Event 0 starts. --> Event 10 starts. --> Event 20 starts. @@ -793,7 +828,7 @@ Index : 1 used in the geometry : Yes The run consists of 100 monopole of 100 GeV through 10 cm of G4_Si (density: 2.33 g/cm3 ) - Projected Range= 7.7972 cm rms= 176.42 um + Projected Range= 7.796 cm rms= 174.62 um ################################################################## ### Stopping Powers and Cross Sections @@ -802,7 +837,7 @@ Index : 1 used in the geometry : Yes restr tot restr tot p mpl ################################################################## 0. 0.001 24.5 24.5 0.633-4.04e-16 0 0 - 1. 0.00126 27.3 27.3 0.71-4.54e-16 0 0 + 1. 0.00126 27.4 27.3 0.71-4.54e-16 0 0 2. 0.00158 30.7 30.8 0.797-5.09e-16 0 0 3. 0.002 34.6 34.6 0.894-5.71e-16 0 0 4. 0.00251 38.8 38.8 1-6.41e-16 0 0 @@ -811,9 +846,9 @@ Index : 1 used in the geometry : Yes 7. 0.00501 54.8 54.8 1.42-9.05e-16 0 0 8. 0.00631 61.4 61.5 1.59-1.02e-15 0 0 9. 0.00794 69 68.9 1.78-1.14e-15 0 0 -10. 0.01 77.2 77.4 2-1.28e-15 0 0 -11. 0.0126 85.2 85.2 2.25-1.43e-15 0 0 -12. 0.0158 93.4 93.5 2.52-1.61e-15 0 0 +10. 0.01 77.4 77.4 2-1.28e-15 0 0 +11. 0.0126 85.3 85.2 2.25-1.43e-15 0 0 +12. 0.0158 93.3 93.5 2.52-1.61e-15 0 0 13. 0.02 102 102 2.83-1.81e-15 0 0 14. 0.0251 110 110 3.17-2.03e-15 0 0 15. 0.0316 118 118 3.56-2.27e-15 0 0 @@ -827,46 +862,46 @@ Index : 1 used in the geometry : Yes 23. 0.2 90.6 90.6 8.94-5.71e-15 0 0 24. 0.251 82.1 82.1 10-6.41e-15 0 0 25. 0.316 74.2 74.2 11.3-7.19e-15 0 0 -26. 0.398 66.7 66.8 12.6-8.07e-15 0 0 +26. 0.398 66.8 66.8 12.6-8.07e-15 0 0 27. 0.501 59.8 59.7 14.2-9.05e-15 0 0 -28. 0.631 53.4 53.4 15.9-1.02e-14 0 0 -29. 0.794 47 47.1 17.8-1.14e-14 0 0 +28. 0.631 53.3 53.4 15.9-1.02e-14 0 0 +29. 0.794 47.2 47.1 17.8-1.14e-14 0 0 30. 1 40.8 40.8 20-1.28e-14 0 0 31. 1.26 35.3 35.3 22.5-1.43e-14 0 0 32. 1.58 30.4 30.4 25.2-1.61e-14 0 0 -33. 2 26 26.1 28.3-1.81e-14 0 0 +33. 2 26.1 26.1 28.3-1.81e-14 0 0 34. 2.51 22.2 22.3 31.7-2.03e-14 0 0 35. 3.16 18.9 18.9 35.6-2.27e-14 0 0 -36. 3.98 16.1 16 40.1-2.55e-14 0 0 -37. 5.01 13.6 13.6 44.3 0.0264 0 0 -38. 6.31 11.4 11.4 47.2 3.1 0 0 -39. 7.94 9.6 9.61 50.6 7.11 0 0 +36. 3.98 16.1 16 39.9-2.55e-14 0 0 +37. 5.01 13.6 13.6 44.5 0.0264 0 0 +38. 6.31 11.4 11.4 47.7 3.1 0 0 +39. 7.94 9.59 9.61 50.4 7.11 0 0 40. 10 8.05 8.05 54.9 12.2 0 0 -41. 12.6 6.73 6.69 60.4 18.5 0 0 -42. 15.8 5.58 5.58 67.2 26.3 0 0 -43. 20 4.65 4.66 75.6 35.8 0 0 -44. 25.1 3.91 3.91 85.7 47.2 0 0 +41. 12.6 6.7 6.69 60.4 18.5 0 0 +42. 15.8 5.57 5.58 67.1 26.3 0 0 +43. 20 4.66 4.66 75.6 35.8 0 0 +44. 25.1 3.91 3.91 85.8 47.2 0 0 45. 31.6 3.27 3.27 98 60.8 0 0 -46. 39.8 2.73 2.74 113 77 0 0 +46. 39.8 2.74 2.74 113 77 0 0 47. 50.1 2.29 2.29 130 96.2 0 0 48. 63.1 1.92 1.92 151 119 0 0 49. 79.4 1.61 1.61 175 145 0 0 50. 100 1.36 1.36 204 176 0 0 51. 126 1.15 1.15 238 213 0 0 -52. 158 0.984 0.984 277 255 0 0 -53. 200 0.842 0.847 322 304 0.00783 0 -54. 251 0.723 0.736 375 361 0.0239 0 -55. 316 0.629 0.646 437 427 0.0303 0 -56. 398 0.554 0.575 510 503 0.0339 0 -57. 501 0.495 0.52 580 591 0.0353 0 -58. 631 0.45 0.476 633 631 0.036 0 -59. 794 0.414 0.444 671 670 0.0364 0 -60. 1e+03 0.388 0.421 707 708 0.0368 0 +52. 158 0.983 0.984 277 255 0 0 +53. 200 0.842 0.847 322 304 0.00775 0 +54. 251 0.724 0.736 376 361 0.024 0 +55. 316 0.628 0.646 437 427 0.0302 0 +56. 398 0.554 0.575 509 503 0.0338 0 +57. 501 0.495 0.52 588 591 0.0353 0 +58. 631 0.449 0.476 638 631 0.036 0 +59. 794 0.414 0.444 667 670 0.0364 0 +60. 1e+03 0.388 0.421 708 708 0.0368 0 61. 1.26e+03 0.369 0.405 748 747 0.0373 0 -62. 1.58e+03 0.355 0.395 786 786 0.0379 0 +62. 1.58e+03 0.355 0.395 785 786 0.0379 0 63. 2e+03 0.346 0.39 825 825 0.0385 0 64. 2.51e+03 0.34 0.388 864 864 0.0391 0 -65. 3.16e+03 0.337 0.39 903 903 0.0396 0 +65. 3.16e+03 0.337 0.39 902 903 0.0396 0 66. 3.98e+03 0.336 0.395 942 942 0.0401 0 67. 5.01e+03 0.336 0.401 981 981 0.0406 0 68. 6.31e+03 0.337 0.409 1.02e+03 1.02e+03 0.0409 0 @@ -874,9 +909,9 @@ Index : 1 used in the geometry : Yes 70. 1e+04 0.34 0.426 1.1e+03 1.1e+03 0.0414 0 71. 1.26e+04 0.342 0.435 1.14e+03 1.14e+03 0.0416 0 72. 1.58e+04 0.344 0.445 1.18e+03 1.18e+03 0.0417 0 -73. 2e+04 0.346 0.454 1.21e+03 1.22e+03 0.0418 8.29 -74. 2.51e+04 0.348 0.457 1.24e+03 1.26e+03 0.0418 50.7 -75. 3.16e+04 0.349 0.459 1.26e+03 1.3e+03 0.0417 83.8 +73. 2e+04 0.346 0.454 1.22e+03 1.22e+03 0.0418 8.23 +74. 2.51e+04 0.348 0.457 1.24e+03 1.26e+03 0.0418 50.2 +75. 3.16e+04 0.349 0.459 1.25e+03 1.3e+03 0.0417 83.6 76. 3.98e+04 0.351 0.46 1.28e+03 1.35e+03 0.0417 111 77. 5.01e+04 0.352 0.462 1.3e+03 1.39e+03 0.0417 132 78. 6.31e+04 0.353 0.463 1.32e+03 1.43e+03 0.0417 148 @@ -899,8 +934,8 @@ Index : 1 used in the geometry : Yes 95. 3.16e+06 0.356 0.679 1.38e+03 2.04e+03 0.0417 197 96. 3.98e+06 0.356 0.741 1.36e+03 2.05e+03 0.0417 197 97. 5.01e+06 0.356 0.821 1.33e+03 2.06e+03 0.0417 197 -98. 6.31e+06 0.356 0.923 1.3e+03 2.07e+03 0.0417 197 +98. 6.31e+06 0.356 0.924 1.3e+03 2.07e+03 0.0417 197 99. 7.94e+06 0.356 1.05 1.27e+03 2.08e+03 0.0417 197 ################################################################## -... write Root file : monopole.root - done -... close Root file : monopole.root - done +... write file : monopole.root - done +... close file : monopole.root - done diff --git a/examples/extended/exoticphysics/phonon/CMakeLists.txt b/examples/extended/exoticphysics/phonon/CMakeLists.txt index 2ab350c16f..44f6852c4d 100644 --- a/examples/extended/exoticphysics/phonon/CMakeLists.txt +++ b/examples/extended/exoticphysics/phonon/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(dmc) #---------------------------------------------------------------------------- diff --git a/examples/extended/exoticphysics/phonon/CrystalMaps/Ge/FTVec.ssv b/examples/extended/exoticphysics/phonon/CrystalMaps/Ge/FTVec.ssv deleted file mode 100644 index 4d3b9b976b..0000000000 --- a/examples/extended/exoticphysics/phonon/CrystalMaps/Ge/FTVec.ssv +++ /dev/null @@ -1,51681 +0,0 @@ - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 4.2120828e+01 0.0000000e+00 3.5483869e+03 - 4.2112756e+01 3.5697720e+00 3.5483864e+03 - 4.2089126e+01 7.1083382e+00 3.5483848e+03 - 4.2051657e+01 1.0585645e+01 3.5483822e+03 - 4.2003068e+01 1.3973846e+01 3.5483786e+03 - 4.1946893e+01 1.7248166e+01 3.5483740e+03 - 4.1887238e+01 2.0387541e+01 3.5483686e+03 - 4.1828530e+01 2.3374969e+01 3.5483622e+03 - 4.1775268e+01 2.6197627e+01 3.5483552e+03 - 4.1731804e+01 2.8846740e+01 3.5483474e+03 - 4.1702155e+01 3.1317285e+01 3.5483389e+03 - 4.1689876e+01 3.3607565e+01 3.5483300e+03 - 4.1697967e+01 3.5718715e+01 3.5483205e+03 - 4.1728828e+01 3.7654189e+01 3.5483107e+03 - 4.1784250e+01 3.9419254e+01 3.5483006e+03 - 4.1865436e+01 4.1020532e+01 3.5482902e+03 - 4.1973038e+01 4.2465586e+01 3.5482797e+03 - 4.2107210e+01 4.3762579e+01 3.5482691e+03 - 4.2267664e+01 4.4919986e+01 3.5482585e+03 - 4.2453734e+01 4.5946371e+01 3.5482479e+03 - 4.2664432e+01 4.6850209e+01 3.5482375e+03 - 4.2898505e+01 4.7639767e+01 3.5482272e+03 - 4.3154480e+01 4.8323004e+01 3.5482171e+03 - 4.3430712e+01 4.8907522e+01 3.5482073e+03 - 4.3725418e+01 4.9400524e+01 3.5481978e+03 - 4.4036710e+01 4.9808801e+01 3.5481887e+03 - 4.4362618e+01 5.0138732e+01 3.5481800e+03 - 4.4701113e+01 5.0396288e+01 3.5481717e+03 - 4.5050119e+01 5.0587051e+01 3.5481639e+03 - 4.5407529e+01 5.0716236e+01 3.5481566e+03 - 4.5771210e+01 5.0788709e+01 3.5481498e+03 - 4.6139007e+01 5.0809019e+01 3.5481436e+03 - 4.6508750e+01 5.0781419e+01 3.5481380e+03 - 4.6878247e+01 5.0709892e+01 3.5481330e+03 - 4.7245289e+01 5.0598178e+01 3.5481287e+03 - 4.7607643e+01 5.0449797e+01 3.5481250e+03 - 4.7963044e+01 5.0268071e+01 3.5481219e+03 - 4.8309193e+01 5.0056146e+01 3.5481195e+03 - 4.8643747e+01 4.9817013e+01 3.5481178e+03 - 4.8964307e+01 4.9553524e+01 3.5481168e+03 - 4.9268413e+01 4.9268413e+01 3.5481164e+03 - 4.9553524e+01 4.8964307e+01 3.5481168e+03 - 4.9817013e+01 4.8643747e+01 3.5481178e+03 - 5.0056146e+01 4.8309193e+01 3.5481195e+03 - 5.0268071e+01 4.7963044e+01 3.5481219e+03 - 5.0449797e+01 4.7607643e+01 3.5481250e+03 - 5.0598178e+01 4.7245289e+01 3.5481287e+03 - 5.0709892e+01 4.6878247e+01 3.5481330e+03 - 5.0781419e+01 4.6508750e+01 3.5481380e+03 - 5.0809019e+01 4.6139007e+01 3.5481436e+03 - 5.0788709e+01 4.5771210e+01 3.5481498e+03 - 5.0716236e+01 4.5407529e+01 3.5481566e+03 - 5.0587051e+01 4.5050119e+01 3.5481639e+03 - 5.0396288e+01 4.4701113e+01 3.5481717e+03 - 5.0138732e+01 4.4362618e+01 3.5481800e+03 - 4.9808801e+01 4.4036710e+01 3.5481887e+03 - 4.9400524e+01 4.3725418e+01 3.5481978e+03 - 4.8907522e+01 4.3430712e+01 3.5482073e+03 - 4.8323004e+01 4.3154480e+01 3.5482171e+03 - 4.7639767e+01 4.2898505e+01 3.5482272e+03 - 4.6850209e+01 4.2664432e+01 3.5482375e+03 - 4.5946371e+01 4.2453734e+01 3.5482479e+03 - 4.4919986e+01 4.2267664e+01 3.5482585e+03 - 4.3762579e+01 4.2107210e+01 3.5482691e+03 - 4.2465586e+01 4.1973038e+01 3.5482797e+03 - 4.1020532e+01 4.1865436e+01 3.5482902e+03 - 3.9419254e+01 4.1784250e+01 3.5483006e+03 - 3.7654189e+01 4.1728828e+01 3.5483107e+03 - 3.5718715e+01 4.1697967e+01 3.5483205e+03 - 3.3607565e+01 4.1689876e+01 3.5483300e+03 - 3.1317285e+01 4.1702155e+01 3.5483389e+03 - 2.8846740e+01 4.1731804e+01 3.5483474e+03 - 2.6197627e+01 4.1775268e+01 3.5483552e+03 - 2.3374969e+01 4.1828530e+01 3.5483622e+03 - 2.0387541e+01 4.1887238e+01 3.5483686e+03 - 1.7248166e+01 4.1946893e+01 3.5483740e+03 - 1.3973846e+01 4.2003068e+01 3.5483786e+03 - 1.0585645e+01 4.2051657e+01 3.5483822e+03 - 7.1083382e+00 4.2089126e+01 3.5483848e+03 - 3.5697720e+00 4.2112756e+01 3.5483864e+03 - 0.0000000e+00 4.2120828e+01 3.5483869e+03 - -3.5697720e+00 4.2112756e+01 3.5483864e+03 - -7.1083382e+00 4.2089126e+01 3.5483848e+03 - -1.0585645e+01 4.2051657e+01 3.5483822e+03 - -1.3973846e+01 4.2003068e+01 3.5483786e+03 - -1.7248166e+01 4.1946893e+01 3.5483740e+03 - -2.0387541e+01 4.1887238e+01 3.5483686e+03 - -2.3374969e+01 4.1828530e+01 3.5483622e+03 - -2.6197627e+01 4.1775268e+01 3.5483552e+03 - -2.8846740e+01 4.1731804e+01 3.5483474e+03 - -3.1317285e+01 4.1702155e+01 3.5483389e+03 - -3.3607565e+01 4.1689876e+01 3.5483300e+03 - -3.5718715e+01 4.1697967e+01 3.5483205e+03 - -3.7654189e+01 4.1728828e+01 3.5483107e+03 - -3.9419254e+01 4.1784250e+01 3.5483006e+03 - -4.1020532e+01 4.1865436e+01 3.5482902e+03 - -4.2465586e+01 4.1973038e+01 3.5482797e+03 - -4.3762579e+01 4.2107210e+01 3.5482691e+03 - -4.4919986e+01 4.2267664e+01 3.5482585e+03 - -4.5946371e+01 4.2453734e+01 3.5482479e+03 - -4.6850209e+01 4.2664432e+01 3.5482375e+03 - -4.7639767e+01 4.2898505e+01 3.5482272e+03 - -4.8323004e+01 4.3154480e+01 3.5482171e+03 - -4.8907522e+01 4.3430712e+01 3.5482073e+03 - -4.9400524e+01 4.3725418e+01 3.5481978e+03 - -4.9808801e+01 4.4036710e+01 3.5481887e+03 - -5.0138732e+01 4.4362618e+01 3.5481800e+03 - -5.0396288e+01 4.4701113e+01 3.5481717e+03 - -5.0587051e+01 4.5050119e+01 3.5481639e+03 - -5.0716236e+01 4.5407529e+01 3.5481566e+03 - -5.0788709e+01 4.5771210e+01 3.5481498e+03 - -5.0809019e+01 4.6139007e+01 3.5481436e+03 - -5.0781419e+01 4.6508750e+01 3.5481380e+03 - -5.0709892e+01 4.6878247e+01 3.5481330e+03 - -5.0598178e+01 4.7245289e+01 3.5481287e+03 - -5.0449797e+01 4.7607643e+01 3.5481250e+03 - -5.0268071e+01 4.7963044e+01 3.5481219e+03 - -5.0056146e+01 4.8309193e+01 3.5481195e+03 - -4.9817013e+01 4.8643747e+01 3.5481178e+03 - -4.9553524e+01 4.8964307e+01 3.5481168e+03 - -4.9268413e+01 4.9268413e+01 3.5481164e+03 - -4.8964307e+01 4.9553524e+01 3.5481168e+03 - -4.8643747e+01 4.9817013e+01 3.5481178e+03 - -4.8309193e+01 5.0056146e+01 3.5481195e+03 - -4.7963044e+01 5.0268071e+01 3.5481219e+03 - -4.7607643e+01 5.0449797e+01 3.5481250e+03 - -4.7245289e+01 5.0598178e+01 3.5481287e+03 - -4.6878247e+01 5.0709892e+01 3.5481330e+03 - -4.6508750e+01 5.0781419e+01 3.5481380e+03 - -4.6139007e+01 5.0809019e+01 3.5481436e+03 - -4.5771210e+01 5.0788709e+01 3.5481498e+03 - -4.5407529e+01 5.0716236e+01 3.5481566e+03 - -4.5050119e+01 5.0587051e+01 3.5481639e+03 - -4.4701113e+01 5.0396288e+01 3.5481717e+03 - -4.4362618e+01 5.0138732e+01 3.5481800e+03 - -4.4036710e+01 4.9808801e+01 3.5481887e+03 - -4.3725418e+01 4.9400524e+01 3.5481978e+03 - -4.3430712e+01 4.8907522e+01 3.5482073e+03 - -4.3154480e+01 4.8323004e+01 3.5482171e+03 - -4.2898505e+01 4.7639767e+01 3.5482272e+03 - -4.2664432e+01 4.6850209e+01 3.5482375e+03 - -4.2453734e+01 4.5946371e+01 3.5482479e+03 - -4.2267664e+01 4.4919986e+01 3.5482585e+03 - -4.2107210e+01 4.3762579e+01 3.5482691e+03 - -4.1973038e+01 4.2465586e+01 3.5482797e+03 - -4.1865436e+01 4.1020532e+01 3.5482902e+03 - -4.1784250e+01 3.9419254e+01 3.5483006e+03 - -4.1728828e+01 3.7654189e+01 3.5483107e+03 - -4.1697967e+01 3.5718715e+01 3.5483205e+03 - -4.1689876e+01 3.3607565e+01 3.5483300e+03 - -4.1702155e+01 3.1317285e+01 3.5483389e+03 - -4.1731804e+01 2.8846740e+01 3.5483474e+03 - -4.1775268e+01 2.6197627e+01 3.5483552e+03 - -4.1828530e+01 2.3374969e+01 3.5483622e+03 - -4.1887238e+01 2.0387541e+01 3.5483686e+03 - -4.1946893e+01 1.7248166e+01 3.5483740e+03 - -4.2003068e+01 1.3973846e+01 3.5483786e+03 - -4.2051657e+01 1.0585645e+01 3.5483822e+03 - -4.2089126e+01 7.1083382e+00 3.5483848e+03 - -4.2112756e+01 3.5697720e+00 3.5483864e+03 - -4.2120828e+01 0.0000000e+00 3.5483869e+03 - -4.2112756e+01 -3.5697720e+00 3.5483864e+03 - -4.2089126e+01 -7.1083382e+00 3.5483848e+03 - -4.2051657e+01 -1.0585645e+01 3.5483822e+03 - -4.2003068e+01 -1.3973846e+01 3.5483786e+03 - -4.1946893e+01 -1.7248166e+01 3.5483740e+03 - -4.1887238e+01 -2.0387541e+01 3.5483686e+03 - -4.1828530e+01 -2.3374969e+01 3.5483622e+03 - -4.1775268e+01 -2.6197627e+01 3.5483552e+03 - -4.1731804e+01 -2.8846740e+01 3.5483474e+03 - -4.1702155e+01 -3.1317285e+01 3.5483389e+03 - -4.1689876e+01 -3.3607565e+01 3.5483300e+03 - -4.1697967e+01 -3.5718715e+01 3.5483205e+03 - -4.1728828e+01 -3.7654189e+01 3.5483107e+03 - -4.1784250e+01 -3.9419254e+01 3.5483006e+03 - -4.1865436e+01 -4.1020532e+01 3.5482902e+03 - -4.1973038e+01 -4.2465586e+01 3.5482797e+03 - -4.2107210e+01 -4.3762579e+01 3.5482691e+03 - -4.2267664e+01 -4.4919986e+01 3.5482585e+03 - -4.2453734e+01 -4.5946371e+01 3.5482479e+03 - -4.2664432e+01 -4.6850209e+01 3.5482375e+03 - -4.2898505e+01 -4.7639767e+01 3.5482272e+03 - -4.3154480e+01 -4.8323004e+01 3.5482171e+03 - -4.3430712e+01 -4.8907522e+01 3.5482073e+03 - -4.3725418e+01 -4.9400524e+01 3.5481978e+03 - -4.4036710e+01 -4.9808801e+01 3.5481887e+03 - -4.4362618e+01 -5.0138732e+01 3.5481800e+03 - -4.4701113e+01 -5.0396288e+01 3.5481717e+03 - -4.5050119e+01 -5.0587051e+01 3.5481639e+03 - -4.5407529e+01 -5.0716236e+01 3.5481566e+03 - -4.5771210e+01 -5.0788709e+01 3.5481498e+03 - -4.6139007e+01 -5.0809019e+01 3.5481436e+03 - -4.6508750e+01 -5.0781419e+01 3.5481380e+03 - -4.6878247e+01 -5.0709892e+01 3.5481330e+03 - -4.7245289e+01 -5.0598178e+01 3.5481287e+03 - -4.7607643e+01 -5.0449797e+01 3.5481250e+03 - -4.7963044e+01 -5.0268071e+01 3.5481219e+03 - -4.8309193e+01 -5.0056146e+01 3.5481195e+03 - -4.8643747e+01 -4.9817013e+01 3.5481178e+03 - -4.8964307e+01 -4.9553524e+01 3.5481168e+03 - -4.9268413e+01 -4.9268413e+01 3.5481164e+03 - -4.9553524e+01 -4.8964307e+01 3.5481168e+03 - -4.9817013e+01 -4.8643747e+01 3.5481178e+03 - -5.0056146e+01 -4.8309193e+01 3.5481195e+03 - -5.0268071e+01 -4.7963044e+01 3.5481219e+03 - -5.0449797e+01 -4.7607643e+01 3.5481250e+03 - -5.0598178e+01 -4.7245289e+01 3.5481287e+03 - -5.0709892e+01 -4.6878247e+01 3.5481330e+03 - -5.0781419e+01 -4.6508750e+01 3.5481380e+03 - -5.0809019e+01 -4.6139007e+01 3.5481436e+03 - -5.0788709e+01 -4.5771210e+01 3.5481498e+03 - -5.0716236e+01 -4.5407529e+01 3.5481566e+03 - -5.0587051e+01 -4.5050119e+01 3.5481639e+03 - -5.0396288e+01 -4.4701113e+01 3.5481717e+03 - -5.0138732e+01 -4.4362618e+01 3.5481800e+03 - -4.9808801e+01 -4.4036710e+01 3.5481887e+03 - -4.9400524e+01 -4.3725418e+01 3.5481978e+03 - -4.8907522e+01 -4.3430712e+01 3.5482073e+03 - -4.8323004e+01 -4.3154480e+01 3.5482171e+03 - -4.7639767e+01 -4.2898505e+01 3.5482272e+03 - -4.6850209e+01 -4.2664432e+01 3.5482375e+03 - -4.5946371e+01 -4.2453734e+01 3.5482479e+03 - -4.4919986e+01 -4.2267664e+01 3.5482585e+03 - -4.3762579e+01 -4.2107210e+01 3.5482691e+03 - -4.2465586e+01 -4.1973038e+01 3.5482797e+03 - -4.1020532e+01 -4.1865436e+01 3.5482902e+03 - -3.9419254e+01 -4.1784250e+01 3.5483006e+03 - -3.7654189e+01 -4.1728828e+01 3.5483107e+03 - -3.5718715e+01 -4.1697967e+01 3.5483205e+03 - -3.3607565e+01 -4.1689876e+01 3.5483300e+03 - -3.1317285e+01 -4.1702155e+01 3.5483389e+03 - -2.8846740e+01 -4.1731804e+01 3.5483474e+03 - -2.6197627e+01 -4.1775268e+01 3.5483552e+03 - -2.3374969e+01 -4.1828530e+01 3.5483622e+03 - -2.0387541e+01 -4.1887238e+01 3.5483686e+03 - -1.7248166e+01 -4.1946893e+01 3.5483740e+03 - -1.3973846e+01 -4.2003068e+01 3.5483786e+03 - -1.0585645e+01 -4.2051657e+01 3.5483822e+03 - -7.1083382e+00 -4.2089126e+01 3.5483848e+03 - -3.5697720e+00 -4.2112756e+01 3.5483864e+03 - 0.0000000e+00 -4.2120828e+01 3.5483869e+03 - 3.5697720e+00 -4.2112756e+01 3.5483864e+03 - 7.1083382e+00 -4.2089126e+01 3.5483848e+03 - 1.0585645e+01 -4.2051657e+01 3.5483822e+03 - 1.3973846e+01 -4.2003068e+01 3.5483786e+03 - 1.7248166e+01 -4.1946893e+01 3.5483740e+03 - 2.0387541e+01 -4.1887238e+01 3.5483686e+03 - 2.3374969e+01 -4.1828530e+01 3.5483622e+03 - 2.6197627e+01 -4.1775268e+01 3.5483552e+03 - 2.8846740e+01 -4.1731804e+01 3.5483474e+03 - 3.1317285e+01 -4.1702155e+01 3.5483389e+03 - 3.3607565e+01 -4.1689876e+01 3.5483300e+03 - 3.5718715e+01 -4.1697967e+01 3.5483205e+03 - 3.7654189e+01 -4.1728828e+01 3.5483107e+03 - 3.9419254e+01 -4.1784250e+01 3.5483006e+03 - 4.1020532e+01 -4.1865436e+01 3.5482902e+03 - 4.2465586e+01 -4.1973038e+01 3.5482797e+03 - 4.3762579e+01 -4.2107210e+01 3.5482691e+03 - 4.4919986e+01 -4.2267664e+01 3.5482585e+03 - 4.5946371e+01 -4.2453734e+01 3.5482479e+03 - 4.6850209e+01 -4.2664432e+01 3.5482375e+03 - 4.7639767e+01 -4.2898505e+01 3.5482272e+03 - 4.8323004e+01 -4.3154480e+01 3.5482171e+03 - 4.8907522e+01 -4.3430712e+01 3.5482073e+03 - 4.9400524e+01 -4.3725418e+01 3.5481978e+03 - 4.9808801e+01 -4.4036710e+01 3.5481887e+03 - 5.0138732e+01 -4.4362618e+01 3.5481800e+03 - 5.0396288e+01 -4.4701113e+01 3.5481717e+03 - 5.0587051e+01 -4.5050119e+01 3.5481639e+03 - 5.0716236e+01 -4.5407529e+01 3.5481566e+03 - 5.0788709e+01 -4.5771210e+01 3.5481498e+03 - 5.0809019e+01 -4.6139007e+01 3.5481436e+03 - 5.0781419e+01 -4.6508750e+01 3.5481380e+03 - 5.0709892e+01 -4.6878247e+01 3.5481330e+03 - 5.0598178e+01 -4.7245289e+01 3.5481287e+03 - 5.0449797e+01 -4.7607643e+01 3.5481250e+03 - 5.0268071e+01 -4.7963044e+01 3.5481219e+03 - 5.0056146e+01 -4.8309193e+01 3.5481195e+03 - 4.9817013e+01 -4.8643747e+01 3.5481178e+03 - 4.9553524e+01 -4.8964307e+01 3.5481168e+03 - 4.9268413e+01 -4.9268413e+01 3.5481164e+03 - 4.8964307e+01 -4.9553524e+01 3.5481168e+03 - 4.8643747e+01 -4.9817013e+01 3.5481178e+03 - 4.8309193e+01 -5.0056146e+01 3.5481195e+03 - 4.7963044e+01 -5.0268071e+01 3.5481219e+03 - 4.7607643e+01 -5.0449797e+01 3.5481250e+03 - 4.7245289e+01 -5.0598178e+01 3.5481287e+03 - 4.6878247e+01 -5.0709892e+01 3.5481330e+03 - 4.6508750e+01 -5.0781419e+01 3.5481380e+03 - 4.6139007e+01 -5.0809019e+01 3.5481436e+03 - 4.5771210e+01 -5.0788709e+01 3.5481498e+03 - 4.5407529e+01 -5.0716236e+01 3.5481566e+03 - 4.5050119e+01 -5.0587051e+01 3.5481639e+03 - 4.4701113e+01 -5.0396288e+01 3.5481717e+03 - 4.4362618e+01 -5.0138732e+01 3.5481800e+03 - 4.4036710e+01 -4.9808801e+01 3.5481887e+03 - 4.3725418e+01 -4.9400524e+01 3.5481978e+03 - 4.3430712e+01 -4.8907522e+01 3.5482073e+03 - 4.3154480e+01 -4.8323004e+01 3.5482171e+03 - 4.2898505e+01 -4.7639767e+01 3.5482272e+03 - 4.2664432e+01 -4.6850209e+01 3.5482375e+03 - 4.2453734e+01 -4.5946371e+01 3.5482479e+03 - 4.2267664e+01 -4.4919986e+01 3.5482585e+03 - 4.2107210e+01 -4.3762579e+01 3.5482691e+03 - 4.1973038e+01 -4.2465586e+01 3.5482797e+03 - 4.1865436e+01 -4.1020532e+01 3.5482902e+03 - 4.1784250e+01 -3.9419254e+01 3.5483006e+03 - 4.1728828e+01 -3.7654189e+01 3.5483107e+03 - 4.1697967e+01 -3.5718715e+01 3.5483205e+03 - 4.1689876e+01 -3.3607565e+01 3.5483300e+03 - 4.1702155e+01 -3.1317285e+01 3.5483389e+03 - 4.1731804e+01 -2.8846740e+01 3.5483474e+03 - 4.1775268e+01 -2.6197627e+01 3.5483552e+03 - 4.1828530e+01 -2.3374969e+01 3.5483622e+03 - 4.1887238e+01 -2.0387541e+01 3.5483686e+03 - 4.1946893e+01 -1.7248166e+01 3.5483740e+03 - 4.2003068e+01 -1.3973846e+01 3.5483786e+03 - 4.2051657e+01 -1.0585645e+01 3.5483822e+03 - 4.2089126e+01 -7.1083382e+00 3.5483848e+03 - 4.2112756e+01 -3.5697720e+00 3.5483864e+03 - 4.2120828e+01 0.0000000e+00 3.5483869e+03 - 8.4244679e+01 0.0000000e+00 3.5471459e+03 - 8.4228521e+01 7.1415404e+00 3.5471438e+03 - 8.4181222e+01 1.4220544e+01 3.5471374e+03 - 8.4106216e+01 2.1176789e+01 3.5471270e+03 - 8.4008949e+01 2.7954486e+01 3.5471125e+03 - 8.3896484e+01 3.4504027e+01 3.5470942e+03 - 8.3777036e+01 4.0783241e+01 3.5470723e+03 - 8.3659455e+01 4.6758126e+01 3.5470471e+03 - 8.3552736e+01 5.2403055e+01 3.5470187e+03 - 8.3465575e+01 5.7700523e+01 3.5469875e+03 - 8.3406003e+01 6.2640541e+01 3.5469538e+03 - 8.3381120e+01 6.7219780e+01 3.5469180e+03 - 8.3396917e+01 7.1440580e+01 3.5468803e+03 - 8.3458189e+01 7.5309912e+01 3.5468410e+03 - 8.3568513e+01 7.8838369e+01 3.5468005e+03 - 8.3730291e+01 8.2039243e+01 3.5467591e+03 - 8.3944826e+01 8.4927702e+01 3.5467171e+03 - 8.4212426e+01 8.7520102e+01 3.5466747e+03 - 8.4532523e+01 8.9833416e+01 3.5466323e+03 - 8.4903791e+01 9.1884782e+01 3.5465900e+03 - 8.5324260e+01 9.3691164e+01 3.5465482e+03 - 8.5791434e+01 9.5269092e+01 3.5465071e+03 - 8.6302380e+01 9.6634487e+01 3.5464668e+03 - 8.6853818e+01 9.7802545e+01 3.5464276e+03 - 8.7442196e+01 9.8787666e+01 3.5463897e+03 - 8.8063748e+01 9.9603426e+01 3.5463532e+03 - 8.8714548e+01 1.0026257e+02 3.5463183e+03 - 8.9390547e+01 1.0077704e+02 3.5462853e+03 - 9.0087607e+01 1.0115799e+02 3.5462541e+03 - 9.0801520e+01 1.0141584e+02 3.5462249e+03 - 9.1528030e+01 1.0156032e+02 3.5461980e+03 - 9.2262834e+01 1.0160052e+02 3.5461732e+03 - 9.3001596e+01 1.0154496e+02 3.5461508e+03 - 9.3739940e+01 1.0140158e+02 3.5461309e+03 - 9.4473448e+01 1.0117788e+02 3.5461135e+03 - 9.5197655e+01 1.0088090e+02 3.5460986e+03 - 9.5908034e+01 1.0051727e+02 3.5460864e+03 - 9.6599987e+01 1.0009330e+02 3.5460768e+03 - 9.7268824e+01 9.9614975e+01 3.5460700e+03 - 9.7909748e+01 9.9087994e+01 3.5460659e+03 - 9.8517831e+01 9.8517831e+01 3.5460645e+03 - 9.9087994e+01 9.7909748e+01 3.5460659e+03 - 9.9614975e+01 9.7268824e+01 3.5460700e+03 - 1.0009330e+02 9.6599987e+01 3.5460768e+03 - 1.0051727e+02 9.5908034e+01 3.5460864e+03 - 1.0088090e+02 9.5197655e+01 3.5460986e+03 - 1.0117788e+02 9.4473448e+01 3.5461135e+03 - 1.0140158e+02 9.3739940e+01 3.5461309e+03 - 1.0154496e+02 9.3001596e+01 3.5461508e+03 - 1.0160052e+02 9.2262834e+01 3.5461732e+03 - 1.0156032e+02 9.1528030e+01 3.5461980e+03 - 1.0141584e+02 9.0801520e+01 3.5462249e+03 - 1.0115799e+02 9.0087607e+01 3.5462541e+03 - 1.0077704e+02 8.9390547e+01 3.5462853e+03 - 1.0026257e+02 8.8714548e+01 3.5463183e+03 - 9.9603426e+01 8.8063748e+01 3.5463532e+03 - 9.8787666e+01 8.7442196e+01 3.5463897e+03 - 9.7802545e+01 8.6853818e+01 3.5464276e+03 - 9.6634487e+01 8.6302380e+01 3.5464668e+03 - 9.5269092e+01 8.5791434e+01 3.5465071e+03 - 9.3691164e+01 8.5324260e+01 3.5465482e+03 - 9.1884782e+01 8.4903791e+01 3.5465900e+03 - 8.9833416e+01 8.4532523e+01 3.5466323e+03 - 8.7520102e+01 8.4212426e+01 3.5466747e+03 - 8.4927702e+01 8.3944826e+01 3.5467171e+03 - 8.2039243e+01 8.3730291e+01 3.5467591e+03 - 7.8838369e+01 8.3568513e+01 3.5468005e+03 - 7.5309912e+01 8.3458189e+01 3.5468410e+03 - 7.1440580e+01 8.3396917e+01 3.5468803e+03 - 6.7219780e+01 8.3381120e+01 3.5469180e+03 - 6.2640541e+01 8.3406003e+01 3.5469538e+03 - 5.7700523e+01 8.3465575e+01 3.5469875e+03 - 5.2403055e+01 8.3552736e+01 3.5470187e+03 - 4.6758126e+01 8.3659455e+01 3.5470471e+03 - 4.0783241e+01 8.3777036e+01 3.5470723e+03 - 3.4504027e+01 8.3896484e+01 3.5470942e+03 - 2.7954486e+01 8.4008949e+01 3.5471125e+03 - 2.1176789e+01 8.4106216e+01 3.5471270e+03 - 1.4220544e+01 8.4181222e+01 3.5471374e+03 - 7.1415404e+00 8.4228521e+01 3.5471438e+03 - 0.0000000e+00 8.4244679e+01 3.5471459e+03 - -7.1415404e+00 8.4228521e+01 3.5471438e+03 - -1.4220544e+01 8.4181222e+01 3.5471374e+03 - -2.1176789e+01 8.4106216e+01 3.5471270e+03 - -2.7954486e+01 8.4008949e+01 3.5471125e+03 - -3.4504027e+01 8.3896484e+01 3.5470942e+03 - -4.0783241e+01 8.3777036e+01 3.5470723e+03 - -4.6758126e+01 8.3659455e+01 3.5470471e+03 - -5.2403055e+01 8.3552736e+01 3.5470187e+03 - -5.7700523e+01 8.3465575e+01 3.5469875e+03 - -6.2640541e+01 8.3406003e+01 3.5469538e+03 - -6.7219780e+01 8.3381120e+01 3.5469180e+03 - -7.1440580e+01 8.3396917e+01 3.5468803e+03 - -7.5309912e+01 8.3458189e+01 3.5468410e+03 - -7.8838369e+01 8.3568513e+01 3.5468005e+03 - -8.2039243e+01 8.3730291e+01 3.5467591e+03 - -8.4927702e+01 8.3944826e+01 3.5467171e+03 - -8.7520102e+01 8.4212426e+01 3.5466747e+03 - -8.9833416e+01 8.4532523e+01 3.5466323e+03 - -9.1884782e+01 8.4903791e+01 3.5465900e+03 - -9.3691164e+01 8.5324260e+01 3.5465482e+03 - -9.5269092e+01 8.5791434e+01 3.5465071e+03 - -9.6634487e+01 8.6302380e+01 3.5464668e+03 - -9.7802545e+01 8.6853818e+01 3.5464276e+03 - -9.8787666e+01 8.7442196e+01 3.5463897e+03 - -9.9603426e+01 8.8063748e+01 3.5463532e+03 - -1.0026257e+02 8.8714548e+01 3.5463183e+03 - -1.0077704e+02 8.9390547e+01 3.5462853e+03 - -1.0115799e+02 9.0087607e+01 3.5462541e+03 - -1.0141584e+02 9.0801520e+01 3.5462249e+03 - -1.0156032e+02 9.1528030e+01 3.5461980e+03 - -1.0160052e+02 9.2262834e+01 3.5461732e+03 - -1.0154496e+02 9.3001596e+01 3.5461508e+03 - -1.0140158e+02 9.3739940e+01 3.5461309e+03 - -1.0117788e+02 9.4473448e+01 3.5461135e+03 - -1.0088090e+02 9.5197655e+01 3.5460986e+03 - -1.0051727e+02 9.5908034e+01 3.5460864e+03 - -1.0009330e+02 9.6599987e+01 3.5460768e+03 - -9.9614975e+01 9.7268824e+01 3.5460700e+03 - -9.9087994e+01 9.7909748e+01 3.5460659e+03 - -9.8517831e+01 9.8517831e+01 3.5460645e+03 - -9.7909748e+01 9.9087994e+01 3.5460659e+03 - -9.7268824e+01 9.9614975e+01 3.5460700e+03 - -9.6599987e+01 1.0009330e+02 3.5460768e+03 - -9.5908034e+01 1.0051727e+02 3.5460864e+03 - -9.5197655e+01 1.0088090e+02 3.5460986e+03 - -9.4473448e+01 1.0117788e+02 3.5461135e+03 - -9.3739940e+01 1.0140158e+02 3.5461309e+03 - -9.3001596e+01 1.0154496e+02 3.5461508e+03 - -9.2262834e+01 1.0160052e+02 3.5461732e+03 - -9.1528030e+01 1.0156032e+02 3.5461980e+03 - -9.0801520e+01 1.0141584e+02 3.5462249e+03 - -9.0087607e+01 1.0115799e+02 3.5462541e+03 - -8.9390547e+01 1.0077704e+02 3.5462853e+03 - -8.8714548e+01 1.0026257e+02 3.5463183e+03 - -8.8063748e+01 9.9603426e+01 3.5463532e+03 - -8.7442196e+01 9.8787666e+01 3.5463897e+03 - -8.6853818e+01 9.7802545e+01 3.5464276e+03 - -8.6302380e+01 9.6634487e+01 3.5464668e+03 - -8.5791434e+01 9.5269092e+01 3.5465071e+03 - -8.5324260e+01 9.3691164e+01 3.5465482e+03 - -8.4903791e+01 9.1884782e+01 3.5465900e+03 - -8.4532523e+01 8.9833416e+01 3.5466323e+03 - -8.4212426e+01 8.7520102e+01 3.5466747e+03 - -8.3944826e+01 8.4927702e+01 3.5467171e+03 - -8.3730291e+01 8.2039243e+01 3.5467591e+03 - -8.3568513e+01 7.8838369e+01 3.5468005e+03 - -8.3458189e+01 7.5309912e+01 3.5468410e+03 - -8.3396917e+01 7.1440580e+01 3.5468803e+03 - -8.3381120e+01 6.7219780e+01 3.5469180e+03 - -8.3406003e+01 6.2640541e+01 3.5469538e+03 - -8.3465575e+01 5.7700523e+01 3.5469875e+03 - -8.3552736e+01 5.2403055e+01 3.5470187e+03 - -8.3659455e+01 4.6758126e+01 3.5470471e+03 - -8.3777036e+01 4.0783241e+01 3.5470723e+03 - -8.3896484e+01 3.4504027e+01 3.5470942e+03 - -8.4008949e+01 2.7954486e+01 3.5471125e+03 - -8.4106216e+01 2.1176789e+01 3.5471270e+03 - -8.4181222e+01 1.4220544e+01 3.5471374e+03 - -8.4228521e+01 7.1415404e+00 3.5471438e+03 - -8.4244679e+01 0.0000000e+00 3.5471459e+03 - -8.4228521e+01 -7.1415404e+00 3.5471438e+03 - -8.4181222e+01 -1.4220544e+01 3.5471374e+03 - -8.4106216e+01 -2.1176789e+01 3.5471270e+03 - -8.4008949e+01 -2.7954486e+01 3.5471125e+03 - -8.3896484e+01 -3.4504027e+01 3.5470942e+03 - -8.3777036e+01 -4.0783241e+01 3.5470723e+03 - -8.3659455e+01 -4.6758126e+01 3.5470471e+03 - -8.3552736e+01 -5.2403055e+01 3.5470187e+03 - -8.3465575e+01 -5.7700523e+01 3.5469875e+03 - -8.3406003e+01 -6.2640541e+01 3.5469538e+03 - -8.3381120e+01 -6.7219780e+01 3.5469180e+03 - -8.3396917e+01 -7.1440580e+01 3.5468803e+03 - -8.3458189e+01 -7.5309912e+01 3.5468410e+03 - -8.3568513e+01 -7.8838369e+01 3.5468005e+03 - -8.3730291e+01 -8.2039243e+01 3.5467591e+03 - -8.3944826e+01 -8.4927702e+01 3.5467171e+03 - -8.4212426e+01 -8.7520102e+01 3.5466747e+03 - -8.4532523e+01 -8.9833416e+01 3.5466323e+03 - -8.4903791e+01 -9.1884782e+01 3.5465900e+03 - -8.5324260e+01 -9.3691164e+01 3.5465482e+03 - -8.5791434e+01 -9.5269092e+01 3.5465071e+03 - -8.6302380e+01 -9.6634487e+01 3.5464668e+03 - -8.6853818e+01 -9.7802545e+01 3.5464276e+03 - -8.7442196e+01 -9.8787666e+01 3.5463897e+03 - -8.8063748e+01 -9.9603426e+01 3.5463532e+03 - -8.8714548e+01 -1.0026257e+02 3.5463183e+03 - -8.9390547e+01 -1.0077704e+02 3.5462853e+03 - -9.0087607e+01 -1.0115799e+02 3.5462541e+03 - -9.0801520e+01 -1.0141584e+02 3.5462249e+03 - -9.1528030e+01 -1.0156032e+02 3.5461980e+03 - -9.2262834e+01 -1.0160052e+02 3.5461732e+03 - -9.3001596e+01 -1.0154496e+02 3.5461508e+03 - -9.3739940e+01 -1.0140158e+02 3.5461309e+03 - -9.4473448e+01 -1.0117788e+02 3.5461135e+03 - -9.5197655e+01 -1.0088090e+02 3.5460986e+03 - -9.5908034e+01 -1.0051727e+02 3.5460864e+03 - -9.6599987e+01 -1.0009330e+02 3.5460768e+03 - -9.7268824e+01 -9.9614975e+01 3.5460700e+03 - -9.7909748e+01 -9.9087994e+01 3.5460659e+03 - -9.8517831e+01 -9.8517831e+01 3.5460645e+03 - -9.9087994e+01 -9.7909748e+01 3.5460659e+03 - -9.9614975e+01 -9.7268824e+01 3.5460700e+03 - -1.0009330e+02 -9.6599987e+01 3.5460768e+03 - -1.0051727e+02 -9.5908034e+01 3.5460864e+03 - -1.0088090e+02 -9.5197655e+01 3.5460986e+03 - -1.0117788e+02 -9.4473448e+01 3.5461135e+03 - -1.0140158e+02 -9.3739940e+01 3.5461309e+03 - -1.0154496e+02 -9.3001596e+01 3.5461508e+03 - -1.0160052e+02 -9.2262834e+01 3.5461732e+03 - -1.0156032e+02 -9.1528030e+01 3.5461980e+03 - -1.0141584e+02 -9.0801520e+01 3.5462249e+03 - -1.0115799e+02 -9.0087607e+01 3.5462541e+03 - -1.0077704e+02 -8.9390547e+01 3.5462853e+03 - -1.0026257e+02 -8.8714548e+01 3.5463183e+03 - -9.9603426e+01 -8.8063748e+01 3.5463532e+03 - -9.8787666e+01 -8.7442196e+01 3.5463897e+03 - -9.7802545e+01 -8.6853818e+01 3.5464276e+03 - -9.6634487e+01 -8.6302380e+01 3.5464668e+03 - -9.5269092e+01 -8.5791434e+01 3.5465071e+03 - -9.3691164e+01 -8.5324260e+01 3.5465482e+03 - -9.1884782e+01 -8.4903791e+01 3.5465900e+03 - -8.9833416e+01 -8.4532523e+01 3.5466323e+03 - -8.7520102e+01 -8.4212426e+01 3.5466747e+03 - -8.4927702e+01 -8.3944826e+01 3.5467171e+03 - -8.2039243e+01 -8.3730291e+01 3.5467591e+03 - -7.8838369e+01 -8.3568513e+01 3.5468005e+03 - -7.5309912e+01 -8.3458189e+01 3.5468410e+03 - -7.1440580e+01 -8.3396917e+01 3.5468803e+03 - -6.7219780e+01 -8.3381120e+01 3.5469180e+03 - -6.2640541e+01 -8.3406003e+01 3.5469538e+03 - -5.7700523e+01 -8.3465575e+01 3.5469875e+03 - -5.2403055e+01 -8.3552736e+01 3.5470187e+03 - -4.6758126e+01 -8.3659455e+01 3.5470471e+03 - -4.0783241e+01 -8.3777036e+01 3.5470723e+03 - -3.4504027e+01 -8.3896484e+01 3.5470942e+03 - -2.7954486e+01 -8.4008949e+01 3.5471125e+03 - -2.1176789e+01 -8.4106216e+01 3.5471270e+03 - -1.4220544e+01 -8.4181222e+01 3.5471374e+03 - -7.1415404e+00 -8.4228521e+01 3.5471438e+03 - 0.0000000e+00 -8.4244679e+01 3.5471459e+03 - 7.1415404e+00 -8.4228521e+01 3.5471438e+03 - 1.4220544e+01 -8.4181222e+01 3.5471374e+03 - 2.1176789e+01 -8.4106216e+01 3.5471270e+03 - 2.7954486e+01 -8.4008949e+01 3.5471125e+03 - 3.4504027e+01 -8.3896484e+01 3.5470942e+03 - 4.0783241e+01 -8.3777036e+01 3.5470723e+03 - 4.6758126e+01 -8.3659455e+01 3.5470471e+03 - 5.2403055e+01 -8.3552736e+01 3.5470187e+03 - 5.7700523e+01 -8.3465575e+01 3.5469875e+03 - 6.2640541e+01 -8.3406003e+01 3.5469538e+03 - 6.7219780e+01 -8.3381120e+01 3.5469180e+03 - 7.1440580e+01 -8.3396917e+01 3.5468803e+03 - 7.5309912e+01 -8.3458189e+01 3.5468410e+03 - 7.8838369e+01 -8.3568513e+01 3.5468005e+03 - 8.2039243e+01 -8.3730291e+01 3.5467591e+03 - 8.4927702e+01 -8.3944826e+01 3.5467171e+03 - 8.7520102e+01 -8.4212426e+01 3.5466747e+03 - 8.9833416e+01 -8.4532523e+01 3.5466323e+03 - 9.1884782e+01 -8.4903791e+01 3.5465900e+03 - 9.3691164e+01 -8.5324260e+01 3.5465482e+03 - 9.5269092e+01 -8.5791434e+01 3.5465071e+03 - 9.6634487e+01 -8.6302380e+01 3.5464668e+03 - 9.7802545e+01 -8.6853818e+01 3.5464276e+03 - 9.8787666e+01 -8.7442196e+01 3.5463897e+03 - 9.9603426e+01 -8.8063748e+01 3.5463532e+03 - 1.0026257e+02 -8.8714548e+01 3.5463183e+03 - 1.0077704e+02 -8.9390547e+01 3.5462853e+03 - 1.0115799e+02 -9.0087607e+01 3.5462541e+03 - 1.0141584e+02 -9.0801520e+01 3.5462249e+03 - 1.0156032e+02 -9.1528030e+01 3.5461980e+03 - 1.0160052e+02 -9.2262834e+01 3.5461732e+03 - 1.0154496e+02 -9.3001596e+01 3.5461508e+03 - 1.0140158e+02 -9.3739940e+01 3.5461309e+03 - 1.0117788e+02 -9.4473448e+01 3.5461135e+03 - 1.0088090e+02 -9.5197655e+01 3.5460986e+03 - 1.0051727e+02 -9.5908034e+01 3.5460864e+03 - 1.0009330e+02 -9.6599987e+01 3.5460768e+03 - 9.9614975e+01 -9.7268824e+01 3.5460700e+03 - 9.9087994e+01 -9.7909748e+01 3.5460659e+03 - 9.8517831e+01 -9.8517831e+01 3.5460645e+03 - 9.7909748e+01 -9.9087994e+01 3.5460659e+03 - 9.7268824e+01 -9.9614975e+01 3.5460700e+03 - 9.6599987e+01 -1.0009330e+02 3.5460768e+03 - 9.5908034e+01 -1.0051727e+02 3.5460864e+03 - 9.5197655e+01 -1.0088090e+02 3.5460986e+03 - 9.4473448e+01 -1.0117788e+02 3.5461135e+03 - 9.3739940e+01 -1.0140158e+02 3.5461309e+03 - 9.3001596e+01 -1.0154496e+02 3.5461508e+03 - 9.2262834e+01 -1.0160052e+02 3.5461732e+03 - 9.1528030e+01 -1.0156032e+02 3.5461980e+03 - 9.0801520e+01 -1.0141584e+02 3.5462249e+03 - 9.0087607e+01 -1.0115799e+02 3.5462541e+03 - 8.9390547e+01 -1.0077704e+02 3.5462853e+03 - 8.8714548e+01 -1.0026257e+02 3.5463183e+03 - 8.8063748e+01 -9.9603426e+01 3.5463532e+03 - 8.7442196e+01 -9.8787666e+01 3.5463897e+03 - 8.6853818e+01 -9.7802545e+01 3.5464276e+03 - 8.6302380e+01 -9.6634487e+01 3.5464668e+03 - 8.5791434e+01 -9.5269092e+01 3.5465071e+03 - 8.5324260e+01 -9.3691164e+01 3.5465482e+03 - 8.4903791e+01 -9.1884782e+01 3.5465900e+03 - 8.4532523e+01 -8.9833416e+01 3.5466323e+03 - 8.4212426e+01 -8.7520102e+01 3.5466747e+03 - 8.3944826e+01 -8.4927702e+01 3.5467171e+03 - 8.3730291e+01 -8.2039243e+01 3.5467591e+03 - 8.3568513e+01 -7.8838369e+01 3.5468005e+03 - 8.3458189e+01 -7.5309912e+01 3.5468410e+03 - 8.3396917e+01 -7.1440580e+01 3.5468803e+03 - 8.3381120e+01 -6.7219780e+01 3.5469180e+03 - 8.3406003e+01 -6.2640541e+01 3.5469538e+03 - 8.3465575e+01 -5.7700523e+01 3.5469875e+03 - 8.3552736e+01 -5.2403055e+01 3.5470187e+03 - 8.3659455e+01 -4.6758126e+01 3.5470471e+03 - 8.3777036e+01 -4.0783241e+01 3.5470723e+03 - 8.3896484e+01 -3.4504027e+01 3.5470942e+03 - 8.4008949e+01 -2.7954486e+01 3.5471125e+03 - 8.4106216e+01 -2.1176789e+01 3.5471270e+03 - 8.4181222e+01 -1.4220544e+01 3.5471374e+03 - 8.4228521e+01 -7.1415404e+00 3.5471438e+03 - 8.4244679e+01 0.0000000e+00 3.5471459e+03 - 1.2637455e+02 0.0000000e+00 3.5450761e+03 - 1.2635028e+02 1.0716193e+01 3.5450713e+03 - 1.2627923e+02 2.1338311e+01 3.5450571e+03 - 1.2616656e+02 3.1775776e+01 3.5450335e+03 - 1.2602044e+02 4.1944705e+01 3.5450010e+03 - 1.2585146e+02 5.1770543e+01 3.5449598e+03 - 1.2567195e+02 6.1189963e+01 3.5449105e+03 - 1.2549517e+02 7.0151955e+01 3.5448536e+03 - 1.2533462e+02 7.8618128e+01 3.5447898e+03 - 1.2520331e+02 8.6562322e+01 3.5447197e+03 - 1.2511328e+02 9.3969680e+01 3.5446439e+03 - 1.2507515e+02 1.0083535e+02 3.5445633e+03 - 1.2509791e+02 1.0716300e+02 3.5444785e+03 - 1.2518871e+02 1.1296322e+02 3.5443902e+03 - 1.2535291e+02 1.1825203e+02 3.5442992e+03 - 1.2559411e+02 1.2304947e+02 3.5442062e+03 - 1.2591426e+02 1.2737839e+02 3.5441117e+03 - 1.2631383e+02 1.3126338e+02 3.5440165e+03 - 1.2679196e+02 1.3472995e+02 3.5439211e+03 - 1.2734670e+02 1.3780384e+02 3.5438261e+03 - 1.2797510e+02 1.4051050e+02 3.5437322e+03 - 1.2867344e+02 1.4287474e+02 3.5436397e+03 - 1.2943736e+02 1.4492043e+02 3.5435492e+03 - 1.3026196e+02 1.4667034e+02 3.5434611e+03 - 1.3114195e+02 1.4814607e+02 3.5433759e+03 - 1.3207170e+02 1.4936795e+02 3.5432940e+03 - 1.3304536e+02 1.5035510e+02 3.5432157e+03 - 1.3405689e+02 1.5112538e+02 3.5431414e+03 - 1.3510009e+02 1.5169554e+02 3.5430714e+03 - 1.3616869e+02 1.5208117e+02 3.5430059e+03 - 1.3725632e+02 1.5229688e+02 3.5429453e+03 - 1.3835654e+02 1.5235628e+02 3.5428897e+03 - 1.3946287e+02 1.5227214e+02 3.5428395e+03 - 1.4056874e+02 1.5205639e+02 3.5427947e+03 - 1.4166754e+02 1.5172025e+02 3.5427555e+03 - 1.4275258e+02 1.5127431e+02 3.5427221e+03 - 1.4381707e+02 1.5072851e+02 3.5426947e+03 - 1.4485411e+02 1.5009233e+02 3.5426732e+03 - 1.4585665e+02 1.4937474e+02 3.5426578e+03 - 1.4681751e+02 1.4858431e+02 3.5426486e+03 - 1.4772927e+02 1.4772927e+02 3.5426455e+03 - 1.4858431e+02 1.4681751e+02 3.5426486e+03 - 1.4937474e+02 1.4585665e+02 3.5426578e+03 - 1.5009233e+02 1.4485411e+02 3.5426732e+03 - 1.5072851e+02 1.4381707e+02 3.5426947e+03 - 1.5127431e+02 1.4275258e+02 3.5427221e+03 - 1.5172025e+02 1.4166754e+02 3.5427555e+03 - 1.5205639e+02 1.4056874e+02 3.5427947e+03 - 1.5227214e+02 1.3946287e+02 3.5428395e+03 - 1.5235628e+02 1.3835654e+02 3.5428897e+03 - 1.5229688e+02 1.3725632e+02 3.5429453e+03 - 1.5208117e+02 1.3616869e+02 3.5430059e+03 - 1.5169554e+02 1.3510009e+02 3.5430714e+03 - 1.5112538e+02 1.3405689e+02 3.5431414e+03 - 1.5035510e+02 1.3304536e+02 3.5432157e+03 - 1.4936795e+02 1.3207170e+02 3.5432940e+03 - 1.4814607e+02 1.3114195e+02 3.5433759e+03 - 1.4667034e+02 1.3026196e+02 3.5434611e+03 - 1.4492043e+02 1.2943736e+02 3.5435492e+03 - 1.4287474e+02 1.2867344e+02 3.5436397e+03 - 1.4051050e+02 1.2797510e+02 3.5437322e+03 - 1.3780384e+02 1.2734670e+02 3.5438261e+03 - 1.3472995e+02 1.2679196e+02 3.5439211e+03 - 1.3126338e+02 1.2631383e+02 3.5440165e+03 - 1.2737839e+02 1.2591426e+02 3.5441117e+03 - 1.2304947e+02 1.2559411e+02 3.5442062e+03 - 1.1825203e+02 1.2535291e+02 3.5442992e+03 - 1.1296322e+02 1.2518871e+02 3.5443902e+03 - 1.0716300e+02 1.2509791e+02 3.5444785e+03 - 1.0083535e+02 1.2507515e+02 3.5445633e+03 - 9.3969680e+01 1.2511328e+02 3.5446439e+03 - 8.6562322e+01 1.2520331e+02 3.5447197e+03 - 7.8618128e+01 1.2533462e+02 3.5447898e+03 - 7.0151955e+01 1.2549517e+02 3.5448536e+03 - 6.1189963e+01 1.2567195e+02 3.5449105e+03 - 5.1770543e+01 1.2585146e+02 3.5449598e+03 - 4.1944705e+01 1.2602044e+02 3.5450010e+03 - 3.1775776e+01 1.2616656e+02 3.5450335e+03 - 2.1338311e+01 1.2627923e+02 3.5450571e+03 - 1.0716193e+01 1.2635028e+02 3.5450713e+03 - 0.0000000e+00 1.2637455e+02 3.5450761e+03 - -1.0716193e+01 1.2635028e+02 3.5450713e+03 - -2.1338311e+01 1.2627923e+02 3.5450571e+03 - -3.1775776e+01 1.2616656e+02 3.5450335e+03 - -4.1944705e+01 1.2602044e+02 3.5450010e+03 - -5.1770543e+01 1.2585146e+02 3.5449598e+03 - -6.1189963e+01 1.2567195e+02 3.5449105e+03 - -7.0151955e+01 1.2549517e+02 3.5448536e+03 - -7.8618128e+01 1.2533462e+02 3.5447898e+03 - -8.6562322e+01 1.2520331e+02 3.5447197e+03 - -9.3969680e+01 1.2511328e+02 3.5446439e+03 - -1.0083535e+02 1.2507516e+02 3.5445633e+03 - -1.0716300e+02 1.2509791e+02 3.5444785e+03 - -1.1296322e+02 1.2518871e+02 3.5443902e+03 - -1.1825203e+02 1.2535291e+02 3.5442992e+03 - -1.2304947e+02 1.2559411e+02 3.5442062e+03 - -1.2737839e+02 1.2591426e+02 3.5441117e+03 - -1.3126338e+02 1.2631383e+02 3.5440165e+03 - -1.3472995e+02 1.2679196e+02 3.5439211e+03 - -1.3780384e+02 1.2734670e+02 3.5438261e+03 - -1.4051050e+02 1.2797510e+02 3.5437322e+03 - -1.4287474e+02 1.2867344e+02 3.5436397e+03 - -1.4492043e+02 1.2943736e+02 3.5435492e+03 - -1.4667034e+02 1.3026196e+02 3.5434611e+03 - -1.4814607e+02 1.3114195e+02 3.5433759e+03 - -1.4936795e+02 1.3207170e+02 3.5432940e+03 - -1.5035510e+02 1.3304536e+02 3.5432157e+03 - -1.5112538e+02 1.3405689e+02 3.5431414e+03 - -1.5169554e+02 1.3510009e+02 3.5430714e+03 - -1.5208117e+02 1.3616869e+02 3.5430059e+03 - -1.5229688e+02 1.3725632e+02 3.5429453e+03 - -1.5235628e+02 1.3835654e+02 3.5428897e+03 - -1.5227214e+02 1.3946287e+02 3.5428395e+03 - -1.5205639e+02 1.4056874e+02 3.5427947e+03 - -1.5172025e+02 1.4166754e+02 3.5427555e+03 - -1.5127431e+02 1.4275258e+02 3.5427221e+03 - -1.5072851e+02 1.4381707e+02 3.5426947e+03 - -1.5009233e+02 1.4485411e+02 3.5426732e+03 - -1.4937474e+02 1.4585665e+02 3.5426578e+03 - -1.4858431e+02 1.4681751e+02 3.5426486e+03 - -1.4772927e+02 1.4772927e+02 3.5426455e+03 - -1.4681751e+02 1.4858431e+02 3.5426486e+03 - -1.4585665e+02 1.4937474e+02 3.5426578e+03 - -1.4485411e+02 1.5009233e+02 3.5426732e+03 - -1.4381707e+02 1.5072851e+02 3.5426947e+03 - -1.4275258e+02 1.5127431e+02 3.5427221e+03 - -1.4166754e+02 1.5172025e+02 3.5427555e+03 - -1.4056874e+02 1.5205639e+02 3.5427947e+03 - -1.3946287e+02 1.5227214e+02 3.5428395e+03 - -1.3835654e+02 1.5235628e+02 3.5428897e+03 - -1.3725632e+02 1.5229688e+02 3.5429453e+03 - -1.3616869e+02 1.5208117e+02 3.5430059e+03 - -1.3510009e+02 1.5169554e+02 3.5430714e+03 - -1.3405689e+02 1.5112538e+02 3.5431414e+03 - -1.3304536e+02 1.5035510e+02 3.5432157e+03 - -1.3207170e+02 1.4936795e+02 3.5432940e+03 - -1.3114195e+02 1.4814607e+02 3.5433759e+03 - -1.3026196e+02 1.4667034e+02 3.5434611e+03 - -1.2943736e+02 1.4492043e+02 3.5435492e+03 - -1.2867344e+02 1.4287474e+02 3.5436397e+03 - -1.2797510e+02 1.4051050e+02 3.5437322e+03 - -1.2734670e+02 1.3780384e+02 3.5438261e+03 - -1.2679196e+02 1.3472995e+02 3.5439211e+03 - -1.2631383e+02 1.3126338e+02 3.5440165e+03 - -1.2591426e+02 1.2737839e+02 3.5441117e+03 - -1.2559411e+02 1.2304947e+02 3.5442062e+03 - -1.2535291e+02 1.1825203e+02 3.5442992e+03 - -1.2518871e+02 1.1296322e+02 3.5443902e+03 - -1.2509791e+02 1.0716300e+02 3.5444785e+03 - -1.2507516e+02 1.0083535e+02 3.5445633e+03 - -1.2511328e+02 9.3969680e+01 3.5446439e+03 - -1.2520331e+02 8.6562322e+01 3.5447197e+03 - -1.2533462e+02 7.8618128e+01 3.5447898e+03 - -1.2549517e+02 7.0151955e+01 3.5448536e+03 - -1.2567195e+02 6.1189963e+01 3.5449105e+03 - -1.2585146e+02 5.1770543e+01 3.5449598e+03 - -1.2602044e+02 4.1944705e+01 3.5450010e+03 - -1.2616656e+02 3.1775776e+01 3.5450335e+03 - -1.2627923e+02 2.1338311e+01 3.5450571e+03 - -1.2635028e+02 1.0716193e+01 3.5450713e+03 - -1.2637455e+02 2.4067136e-09 3.5450761e+03 - -1.2635028e+02 -1.0716193e+01 3.5450713e+03 - -1.2627923e+02 -2.1338311e+01 3.5450571e+03 - -1.2616656e+02 -3.1775776e+01 3.5450335e+03 - -1.2602044e+02 -4.1944705e+01 3.5450010e+03 - -1.2585146e+02 -5.1770543e+01 3.5449598e+03 - -1.2567195e+02 -6.1189963e+01 3.5449105e+03 - -1.2549517e+02 -7.0151955e+01 3.5448536e+03 - -1.2533462e+02 -7.8618128e+01 3.5447898e+03 - -1.2520331e+02 -8.6562322e+01 3.5447197e+03 - -1.2511328e+02 -9.3969680e+01 3.5446439e+03 - -1.2507515e+02 -1.0083535e+02 3.5445633e+03 - -1.2509791e+02 -1.0716300e+02 3.5444785e+03 - -1.2518871e+02 -1.1296322e+02 3.5443902e+03 - -1.2535291e+02 -1.1825203e+02 3.5442992e+03 - -1.2559411e+02 -1.2304947e+02 3.5442062e+03 - -1.2591426e+02 -1.2737839e+02 3.5441117e+03 - -1.2631383e+02 -1.3126338e+02 3.5440165e+03 - -1.2679196e+02 -1.3472995e+02 3.5439211e+03 - -1.2734670e+02 -1.3780384e+02 3.5438261e+03 - -1.2797510e+02 -1.4051050e+02 3.5437322e+03 - -1.2867344e+02 -1.4287474e+02 3.5436397e+03 - -1.2943736e+02 -1.4492043e+02 3.5435492e+03 - -1.3026196e+02 -1.4667034e+02 3.5434611e+03 - -1.3114195e+02 -1.4814607e+02 3.5433759e+03 - -1.3207170e+02 -1.4936795e+02 3.5432940e+03 - -1.3304536e+02 -1.5035510e+02 3.5432157e+03 - -1.3405689e+02 -1.5112538e+02 3.5431414e+03 - -1.3510009e+02 -1.5169554e+02 3.5430714e+03 - -1.3616869e+02 -1.5208117e+02 3.5430059e+03 - -1.3725632e+02 -1.5229688e+02 3.5429453e+03 - -1.3835654e+02 -1.5235628e+02 3.5428897e+03 - -1.3946287e+02 -1.5227214e+02 3.5428395e+03 - -1.4056874e+02 -1.5205639e+02 3.5427947e+03 - -1.4166754e+02 -1.5172025e+02 3.5427555e+03 - -1.4275258e+02 -1.5127431e+02 3.5427221e+03 - -1.4381707e+02 -1.5072851e+02 3.5426947e+03 - -1.4485411e+02 -1.5009233e+02 3.5426732e+03 - -1.4585665e+02 -1.4937474e+02 3.5426578e+03 - -1.4681751e+02 -1.4858431e+02 3.5426486e+03 - -1.4772927e+02 -1.4772927e+02 3.5426455e+03 - -1.4858431e+02 -1.4681751e+02 3.5426486e+03 - -1.4937474e+02 -1.4585665e+02 3.5426578e+03 - -1.5009233e+02 -1.4485411e+02 3.5426732e+03 - -1.5072851e+02 -1.4381707e+02 3.5426947e+03 - -1.5127431e+02 -1.4275258e+02 3.5427221e+03 - -1.5172025e+02 -1.4166754e+02 3.5427555e+03 - -1.5205639e+02 -1.4056874e+02 3.5427947e+03 - -1.5227214e+02 -1.3946287e+02 3.5428395e+03 - -1.5235628e+02 -1.3835654e+02 3.5428897e+03 - -1.5229688e+02 -1.3725632e+02 3.5429453e+03 - -1.5208117e+02 -1.3616869e+02 3.5430059e+03 - -1.5169554e+02 -1.3510009e+02 3.5430714e+03 - -1.5112538e+02 -1.3405689e+02 3.5431414e+03 - -1.5035510e+02 -1.3304536e+02 3.5432157e+03 - -1.4936795e+02 -1.3207170e+02 3.5432940e+03 - -1.4814607e+02 -1.3114195e+02 3.5433759e+03 - -1.4667034e+02 -1.3026196e+02 3.5434611e+03 - -1.4492043e+02 -1.2943736e+02 3.5435492e+03 - -1.4287474e+02 -1.2867344e+02 3.5436397e+03 - -1.4051050e+02 -1.2797510e+02 3.5437322e+03 - -1.3780384e+02 -1.2734670e+02 3.5438261e+03 - -1.3472995e+02 -1.2679196e+02 3.5439211e+03 - -1.3126338e+02 -1.2631383e+02 3.5440165e+03 - -1.2737839e+02 -1.2591426e+02 3.5441117e+03 - -1.2304947e+02 -1.2559411e+02 3.5442062e+03 - -1.1825203e+02 -1.2535291e+02 3.5442992e+03 - -1.1296322e+02 -1.2518871e+02 3.5443902e+03 - -1.0716300e+02 -1.2509791e+02 3.5444785e+03 - -1.0083535e+02 -1.2507515e+02 3.5445633e+03 - -9.3969680e+01 -1.2511328e+02 3.5446439e+03 - -8.6562322e+01 -1.2520331e+02 3.5447197e+03 - -7.8618128e+01 -1.2533462e+02 3.5447898e+03 - -7.0151955e+01 -1.2549517e+02 3.5448536e+03 - -6.1189963e+01 -1.2567195e+02 3.5449105e+03 - -5.1770543e+01 -1.2585146e+02 3.5449598e+03 - -4.1944705e+01 -1.2602044e+02 3.5450010e+03 - -3.1775776e+01 -1.2616656e+02 3.5450335e+03 - -2.1338311e+01 -1.2627923e+02 3.5450571e+03 - -1.0716193e+01 -1.2635028e+02 3.5450713e+03 - 0.0000000e+00 -1.2637455e+02 3.5450761e+03 - 1.0716193e+01 -1.2635028e+02 3.5450713e+03 - 2.1338311e+01 -1.2627923e+02 3.5450571e+03 - 3.1775776e+01 -1.2616656e+02 3.5450335e+03 - 4.1944705e+01 -1.2602044e+02 3.5450010e+03 - 5.1770543e+01 -1.2585146e+02 3.5449598e+03 - 6.1189963e+01 -1.2567195e+02 3.5449105e+03 - 7.0151955e+01 -1.2549517e+02 3.5448536e+03 - 7.8618128e+01 -1.2533462e+02 3.5447898e+03 - 8.6562322e+01 -1.2520331e+02 3.5447197e+03 - 9.3969680e+01 -1.2511328e+02 3.5446439e+03 - 1.0083535e+02 -1.2507516e+02 3.5445633e+03 - 1.0716300e+02 -1.2509791e+02 3.5444785e+03 - 1.1296322e+02 -1.2518871e+02 3.5443902e+03 - 1.1825203e+02 -1.2535291e+02 3.5442992e+03 - 1.2304947e+02 -1.2559411e+02 3.5442062e+03 - 1.2737839e+02 -1.2591426e+02 3.5441117e+03 - 1.3126338e+02 -1.2631383e+02 3.5440165e+03 - 1.3472995e+02 -1.2679196e+02 3.5439211e+03 - 1.3780384e+02 -1.2734670e+02 3.5438261e+03 - 1.4051050e+02 -1.2797510e+02 3.5437322e+03 - 1.4287474e+02 -1.2867344e+02 3.5436397e+03 - 1.4492043e+02 -1.2943736e+02 3.5435492e+03 - 1.4667034e+02 -1.3026196e+02 3.5434611e+03 - 1.4814607e+02 -1.3114195e+02 3.5433759e+03 - 1.4936795e+02 -1.3207170e+02 3.5432940e+03 - 1.5035510e+02 -1.3304536e+02 3.5432157e+03 - 1.5112538e+02 -1.3405689e+02 3.5431414e+03 - 1.5169554e+02 -1.3510009e+02 3.5430714e+03 - 1.5208117e+02 -1.3616869e+02 3.5430059e+03 - 1.5229688e+02 -1.3725632e+02 3.5429453e+03 - 1.5235628e+02 -1.3835654e+02 3.5428897e+03 - 1.5227214e+02 -1.3946287e+02 3.5428395e+03 - 1.5205639e+02 -1.4056874e+02 3.5427947e+03 - 1.5172025e+02 -1.4166754e+02 3.5427555e+03 - 1.5127431e+02 -1.4275258e+02 3.5427221e+03 - 1.5072851e+02 -1.4381707e+02 3.5426947e+03 - 1.5009233e+02 -1.4485411e+02 3.5426732e+03 - 1.4937474e+02 -1.4585665e+02 3.5426578e+03 - 1.4858431e+02 -1.4681751e+02 3.5426486e+03 - 1.4772927e+02 -1.4772927e+02 3.5426455e+03 - 1.4681751e+02 -1.4858431e+02 3.5426486e+03 - 1.4585665e+02 -1.4937474e+02 3.5426578e+03 - 1.4485411e+02 -1.5009233e+02 3.5426732e+03 - 1.4381707e+02 -1.5072851e+02 3.5426947e+03 - 1.4275258e+02 -1.5127431e+02 3.5427221e+03 - 1.4166754e+02 -1.5172025e+02 3.5427555e+03 - 1.4056874e+02 -1.5205639e+02 3.5427947e+03 - 1.3946287e+02 -1.5227214e+02 3.5428395e+03 - 1.3835654e+02 -1.5235628e+02 3.5428897e+03 - 1.3725632e+02 -1.5229688e+02 3.5429453e+03 - 1.3616869e+02 -1.5208117e+02 3.5430059e+03 - 1.3510009e+02 -1.5169554e+02 3.5430714e+03 - 1.3405689e+02 -1.5112538e+02 3.5431414e+03 - 1.3304536e+02 -1.5035510e+02 3.5432157e+03 - 1.3207170e+02 -1.4936795e+02 3.5432940e+03 - 1.3114195e+02 -1.4814607e+02 3.5433759e+03 - 1.3026196e+02 -1.4667034e+02 3.5434611e+03 - 1.2943736e+02 -1.4492043e+02 3.5435492e+03 - 1.2867344e+02 -1.4287474e+02 3.5436397e+03 - 1.2797510e+02 -1.4051050e+02 3.5437322e+03 - 1.2734670e+02 -1.3780384e+02 3.5438261e+03 - 1.2679196e+02 -1.3472995e+02 3.5439211e+03 - 1.2631383e+02 -1.3126338e+02 3.5440165e+03 - 1.2591426e+02 -1.2737839e+02 3.5441117e+03 - 1.2559411e+02 -1.2304947e+02 3.5442062e+03 - 1.2535291e+02 -1.1825203e+02 3.5442992e+03 - 1.2518871e+02 -1.1296322e+02 3.5443902e+03 - 1.2509791e+02 -1.0716300e+02 3.5444785e+03 - 1.2507516e+02 -1.0083535e+02 3.5445633e+03 - 1.2511328e+02 -9.3969680e+01 3.5446439e+03 - 1.2520331e+02 -8.6562322e+01 3.5447197e+03 - 1.2533462e+02 -7.8618128e+01 3.5447898e+03 - 1.2549517e+02 -7.0151955e+01 3.5448536e+03 - 1.2567195e+02 -6.1189963e+01 3.5449105e+03 - 1.2585146e+02 -5.1770543e+01 3.5449598e+03 - 1.2602044e+02 -4.1944705e+01 3.5450010e+03 - 1.2616656e+02 -3.1775776e+01 3.5450335e+03 - 1.2627923e+02 -2.1338311e+01 3.5450571e+03 - 1.2635028e+02 -1.0716193e+01 3.5450713e+03 - 1.2637455e+02 0.0000000e+00 3.5450761e+03 - 1.6851340e+02 0.0000000e+00 3.5421755e+03 - 1.6848098e+02 1.4295336e+01 3.5421671e+03 - 1.6838606e+02 2.8464740e+01 3.5421417e+03 - 1.6823553e+02 4.2386987e+01 3.5420998e+03 - 1.6804028e+02 5.5949865e+01 3.5420419e+03 - 1.6781446e+02 6.9053710e+01 3.5419687e+03 - 1.6757448e+02 8.1613951e+01 3.5418810e+03 - 1.6733803e+02 9.3562563e+01 3.5417798e+03 - 1.6712308e+02 1.0484845e+02 3.5416663e+03 - 1.6694695e+02 1.1543692e+02 3.5415416e+03 - 1.6682567e+02 1.2530840e+02 3.5414070e+03 - 1.6677336e+02 1.3445668e+02 3.5412638e+03 - 1.6680194e+02 1.4288693e+02 3.5411131e+03 - 1.6692095e+02 1.5061353e+02 3.5409564e+03 - 1.6713750e+02 1.5765807e+02 3.5407948e+03 - 1.6745637e+02 1.6404749e+02 3.5406295e+03 - 1.6788015e+02 1.6981239e+02 3.5404619e+03 - 1.6840948e+02 1.7498571e+02 3.5402928e+03 - 1.6904324e+02 1.7960152e+02 3.5401236e+03 - 1.6977884e+02 1.8369420e+02 3.5399551e+03 - 1.7061241e+02 1.8729771e+02 3.5397883e+03 - 1.7153903e+02 1.9044513e+02 3.5396242e+03 - 1.7255292e+02 1.9316828e+02 3.5394637e+03 - 1.7364762e+02 1.9549750e+02 3.5393075e+03 - 1.7481612e+02 1.9746154e+02 3.5391564e+03 - 1.7605099e+02 1.9908750e+02 3.5390111e+03 - 1.7734447e+02 2.0040079e+02 3.5388722e+03 - 1.7868855e+02 2.0142525e+02 3.5387403e+03 - 1.8007504e+02 2.0218312e+02 3.5386161e+03 - 1.8149561e+02 2.0269522e+02 3.5385000e+03 - 1.8294179e+02 2.0298096e+02 3.5383925e+03 - 1.8440505e+02 2.0305851e+02 3.5382939e+03 - 1.8587675e+02 2.0294485e+02 3.5382048e+03 - 1.8734818e+02 2.0265592e+02 3.5381253e+03 - 1.8881053e+02 2.0220668e+02 3.5380559e+03 - 1.9025487e+02 2.0161122e+02 3.5379967e+03 - 1.9167217e+02 2.0088285e+02 3.5379480e+03 - 1.9305321e+02 2.0003419e+02 3.5379099e+03 - 1.9438861e+02 1.9907724e+02 3.5378826e+03 - 1.9566875e+02 1.9802343e+02 3.5378662e+03 - 1.9688376e+02 1.9688376e+02 3.5378607e+03 - 1.9802343e+02 1.9566875e+02 3.5378662e+03 - 1.9907724e+02 1.9438861e+02 3.5378826e+03 - 2.0003419e+02 1.9305321e+02 3.5379099e+03 - 2.0088285e+02 1.9167217e+02 3.5379480e+03 - 2.0161122e+02 1.9025487e+02 3.5379967e+03 - 2.0220668e+02 1.8881053e+02 3.5380559e+03 - 2.0265592e+02 1.8734818e+02 3.5381253e+03 - 2.0294485e+02 1.8587675e+02 3.5382048e+03 - 2.0305851e+02 1.8440505e+02 3.5382939e+03 - 2.0298096e+02 1.8294179e+02 3.5383925e+03 - 2.0269522e+02 1.8149561e+02 3.5385000e+03 - 2.0218312e+02 1.8007504e+02 3.5386161e+03 - 2.0142525e+02 1.7868855e+02 3.5387403e+03 - 2.0040079e+02 1.7734447e+02 3.5388722e+03 - 1.9908750e+02 1.7605099e+02 3.5390111e+03 - 1.9746154e+02 1.7481612e+02 3.5391564e+03 - 1.9549750e+02 1.7364762e+02 3.5393075e+03 - 1.9316828e+02 1.7255292e+02 3.5394637e+03 - 1.9044513e+02 1.7153903e+02 3.5396242e+03 - 1.8729771e+02 1.7061241e+02 3.5397883e+03 - 1.8369420e+02 1.6977884e+02 3.5399551e+03 - 1.7960152e+02 1.6904324e+02 3.5401236e+03 - 1.7498571e+02 1.6840948e+02 3.5402928e+03 - 1.6981239e+02 1.6788015e+02 3.5404619e+03 - 1.6404749e+02 1.6745637e+02 3.5406295e+03 - 1.5765807e+02 1.6713750e+02 3.5407948e+03 - 1.5061353e+02 1.6692095e+02 3.5409564e+03 - 1.4288693e+02 1.6680194e+02 3.5411131e+03 - 1.3445668e+02 1.6677336e+02 3.5412638e+03 - 1.2530840e+02 1.6682567e+02 3.5414070e+03 - 1.1543692e+02 1.6694695e+02 3.5415416e+03 - 1.0484845e+02 1.6712308e+02 3.5416663e+03 - 9.3562563e+01 1.6733803e+02 3.5417798e+03 - 8.1613951e+01 1.6757448e+02 3.5418810e+03 - 6.9053710e+01 1.6781446e+02 3.5419687e+03 - 5.5949865e+01 1.6804028e+02 3.5420419e+03 - 4.2386987e+01 1.6823553e+02 3.5420998e+03 - 2.8464740e+01 1.6838606e+02 3.5421417e+03 - 1.4295336e+01 1.6848098e+02 3.5421671e+03 - -2.4067136e-09 1.6851340e+02 3.5421755e+03 - -1.4295336e+01 1.6848098e+02 3.5421671e+03 - -2.8464740e+01 1.6838606e+02 3.5421417e+03 - -4.2386987e+01 1.6823553e+02 3.5420998e+03 - -5.5949865e+01 1.6804028e+02 3.5420419e+03 - -6.9053710e+01 1.6781446e+02 3.5419687e+03 - -8.1613951e+01 1.6757448e+02 3.5418810e+03 - -9.3562563e+01 1.6733803e+02 3.5417798e+03 - -1.0484845e+02 1.6712308e+02 3.5416663e+03 - -1.1543692e+02 1.6694695e+02 3.5415416e+03 - -1.2530840e+02 1.6682567e+02 3.5414070e+03 - -1.3445668e+02 1.6677336e+02 3.5412638e+03 - -1.4288693e+02 1.6680194e+02 3.5411131e+03 - -1.5061353e+02 1.6692095e+02 3.5409564e+03 - -1.5765807e+02 1.6713750e+02 3.5407948e+03 - -1.6404749e+02 1.6745637e+02 3.5406295e+03 - -1.6981239e+02 1.6788015e+02 3.5404619e+03 - -1.7498571e+02 1.6840948e+02 3.5402928e+03 - -1.7960152e+02 1.6904324e+02 3.5401236e+03 - -1.8369420e+02 1.6977884e+02 3.5399551e+03 - -1.8729771e+02 1.7061241e+02 3.5397883e+03 - -1.9044513e+02 1.7153903e+02 3.5396242e+03 - -1.9316828e+02 1.7255292e+02 3.5394637e+03 - -1.9549750e+02 1.7364762e+02 3.5393075e+03 - -1.9746154e+02 1.7481612e+02 3.5391564e+03 - -1.9908750e+02 1.7605099e+02 3.5390111e+03 - -2.0040079e+02 1.7734447e+02 3.5388722e+03 - -2.0142525e+02 1.7868855e+02 3.5387403e+03 - -2.0218312e+02 1.8007504e+02 3.5386161e+03 - -2.0269522e+02 1.8149561e+02 3.5385000e+03 - -2.0298096e+02 1.8294179e+02 3.5383925e+03 - -2.0305851e+02 1.8440505e+02 3.5382939e+03 - -2.0294485e+02 1.8587675e+02 3.5382048e+03 - -2.0265592e+02 1.8734818e+02 3.5381253e+03 - -2.0220668e+02 1.8881053e+02 3.5380559e+03 - -2.0161122e+02 1.9025487e+02 3.5379967e+03 - -2.0088285e+02 1.9167217e+02 3.5379480e+03 - -2.0003419e+02 1.9305321e+02 3.5379099e+03 - -1.9907724e+02 1.9438861e+02 3.5378826e+03 - -1.9802343e+02 1.9566875e+02 3.5378662e+03 - -1.9688376e+02 1.9688376e+02 3.5378607e+03 - -1.9566875e+02 1.9802343e+02 3.5378662e+03 - -1.9438861e+02 1.9907724e+02 3.5378826e+03 - -1.9305321e+02 2.0003419e+02 3.5379099e+03 - -1.9167217e+02 2.0088285e+02 3.5379480e+03 - -1.9025487e+02 2.0161122e+02 3.5379967e+03 - -1.8881053e+02 2.0220668e+02 3.5380559e+03 - -1.8734818e+02 2.0265592e+02 3.5381253e+03 - -1.8587675e+02 2.0294485e+02 3.5382048e+03 - -1.8440505e+02 2.0305851e+02 3.5382939e+03 - -1.8294179e+02 2.0298096e+02 3.5383925e+03 - -1.8149561e+02 2.0269522e+02 3.5385000e+03 - -1.8007504e+02 2.0218312e+02 3.5386161e+03 - -1.7868855e+02 2.0142525e+02 3.5387403e+03 - -1.7734447e+02 2.0040079e+02 3.5388722e+03 - -1.7605099e+02 1.9908750e+02 3.5390111e+03 - -1.7481612e+02 1.9746154e+02 3.5391564e+03 - -1.7364762e+02 1.9549750e+02 3.5393075e+03 - -1.7255292e+02 1.9316828e+02 3.5394637e+03 - -1.7153903e+02 1.9044513e+02 3.5396242e+03 - -1.7061241e+02 1.8729771e+02 3.5397883e+03 - -1.6977884e+02 1.8369420e+02 3.5399551e+03 - -1.6904324e+02 1.7960152e+02 3.5401236e+03 - -1.6840948e+02 1.7498571e+02 3.5402928e+03 - -1.6788015e+02 1.6981239e+02 3.5404619e+03 - -1.6745637e+02 1.6404749e+02 3.5406295e+03 - -1.6713750e+02 1.5765807e+02 3.5407948e+03 - -1.6692095e+02 1.5061353e+02 3.5409564e+03 - -1.6680194e+02 1.4288693e+02 3.5411131e+03 - -1.6677336e+02 1.3445668e+02 3.5412638e+03 - -1.6682567e+02 1.2530840e+02 3.5414070e+03 - -1.6694695e+02 1.1543692e+02 3.5415416e+03 - -1.6712308e+02 1.0484845e+02 3.5416663e+03 - -1.6733803e+02 9.3562563e+01 3.5417798e+03 - -1.6757448e+02 8.1613951e+01 3.5418810e+03 - -1.6781446e+02 6.9053710e+01 3.5419687e+03 - -1.6804028e+02 5.5949865e+01 3.5420419e+03 - -1.6823553e+02 4.2386987e+01 3.5420998e+03 - -1.6838606e+02 2.8464740e+01 3.5421417e+03 - -1.6848098e+02 1.4295336e+01 3.5421671e+03 - -1.6851340e+02 2.4067136e-09 3.5421755e+03 - -1.6848098e+02 -1.4295336e+01 3.5421671e+03 - -1.6838606e+02 -2.8464740e+01 3.5421417e+03 - -1.6823553e+02 -4.2386987e+01 3.5420998e+03 - -1.6804028e+02 -5.5949865e+01 3.5420419e+03 - -1.6781446e+02 -6.9053710e+01 3.5419687e+03 - -1.6757448e+02 -8.1613951e+01 3.5418810e+03 - -1.6733803e+02 -9.3562563e+01 3.5417798e+03 - -1.6712308e+02 -1.0484845e+02 3.5416663e+03 - -1.6694695e+02 -1.1543692e+02 3.5415416e+03 - -1.6682567e+02 -1.2530840e+02 3.5414070e+03 - -1.6677336e+02 -1.3445668e+02 3.5412638e+03 - -1.6680194e+02 -1.4288693e+02 3.5411131e+03 - -1.6692095e+02 -1.5061353e+02 3.5409564e+03 - -1.6713750e+02 -1.5765807e+02 3.5407948e+03 - -1.6745637e+02 -1.6404749e+02 3.5406295e+03 - -1.6788015e+02 -1.6981239e+02 3.5404619e+03 - -1.6840948e+02 -1.7498571e+02 3.5402928e+03 - -1.6904324e+02 -1.7960152e+02 3.5401236e+03 - -1.6977884e+02 -1.8369420e+02 3.5399551e+03 - -1.7061241e+02 -1.8729771e+02 3.5397883e+03 - -1.7153903e+02 -1.9044513e+02 3.5396242e+03 - -1.7255292e+02 -1.9316828e+02 3.5394637e+03 - -1.7364762e+02 -1.9549750e+02 3.5393075e+03 - -1.7481612e+02 -1.9746154e+02 3.5391564e+03 - -1.7605099e+02 -1.9908750e+02 3.5390111e+03 - -1.7734447e+02 -2.0040079e+02 3.5388722e+03 - -1.7868855e+02 -2.0142525e+02 3.5387403e+03 - -1.8007504e+02 -2.0218312e+02 3.5386161e+03 - -1.8149561e+02 -2.0269522e+02 3.5385000e+03 - -1.8294179e+02 -2.0298096e+02 3.5383925e+03 - -1.8440505e+02 -2.0305851e+02 3.5382939e+03 - -1.8587675e+02 -2.0294485e+02 3.5382048e+03 - -1.8734818e+02 -2.0265592e+02 3.5381253e+03 - -1.8881053e+02 -2.0220668e+02 3.5380559e+03 - -1.9025487e+02 -2.0161122e+02 3.5379967e+03 - -1.9167217e+02 -2.0088285e+02 3.5379480e+03 - -1.9305321e+02 -2.0003419e+02 3.5379099e+03 - -1.9438861e+02 -1.9907724e+02 3.5378826e+03 - -1.9566875e+02 -1.9802343e+02 3.5378662e+03 - -1.9688376e+02 -1.9688376e+02 3.5378607e+03 - -1.9802343e+02 -1.9566875e+02 3.5378662e+03 - -1.9907724e+02 -1.9438861e+02 3.5378826e+03 - -2.0003419e+02 -1.9305321e+02 3.5379099e+03 - -2.0088285e+02 -1.9167217e+02 3.5379480e+03 - -2.0161122e+02 -1.9025487e+02 3.5379967e+03 - -2.0220668e+02 -1.8881053e+02 3.5380559e+03 - -2.0265592e+02 -1.8734818e+02 3.5381253e+03 - -2.0294485e+02 -1.8587675e+02 3.5382048e+03 - -2.0305851e+02 -1.8440505e+02 3.5382939e+03 - -2.0298096e+02 -1.8294179e+02 3.5383925e+03 - -2.0269522e+02 -1.8149561e+02 3.5385000e+03 - -2.0218312e+02 -1.8007504e+02 3.5386161e+03 - -2.0142525e+02 -1.7868855e+02 3.5387403e+03 - -2.0040079e+02 -1.7734447e+02 3.5388722e+03 - -1.9908750e+02 -1.7605099e+02 3.5390111e+03 - -1.9746154e+02 -1.7481612e+02 3.5391564e+03 - -1.9549750e+02 -1.7364762e+02 3.5393075e+03 - -1.9316828e+02 -1.7255292e+02 3.5394637e+03 - -1.9044513e+02 -1.7153903e+02 3.5396242e+03 - -1.8729771e+02 -1.7061241e+02 3.5397883e+03 - -1.8369420e+02 -1.6977884e+02 3.5399551e+03 - -1.7960152e+02 -1.6904324e+02 3.5401236e+03 - -1.7498571e+02 -1.6840948e+02 3.5402928e+03 - -1.6981239e+02 -1.6788015e+02 3.5404619e+03 - -1.6404749e+02 -1.6745637e+02 3.5406295e+03 - -1.5765807e+02 -1.6713750e+02 3.5407948e+03 - -1.5061353e+02 -1.6692095e+02 3.5409564e+03 - -1.4288693e+02 -1.6680194e+02 3.5411131e+03 - -1.3445668e+02 -1.6677336e+02 3.5412638e+03 - -1.2530840e+02 -1.6682567e+02 3.5414070e+03 - -1.1543692e+02 -1.6694695e+02 3.5415416e+03 - -1.0484845e+02 -1.6712308e+02 3.5416663e+03 - -9.3562563e+01 -1.6733803e+02 3.5417798e+03 - -8.1613951e+01 -1.6757448e+02 3.5418810e+03 - -6.9053710e+01 -1.6781446e+02 3.5419687e+03 - -5.5949865e+01 -1.6804028e+02 3.5420419e+03 - -4.2386987e+01 -1.6823553e+02 3.5420998e+03 - -2.8464740e+01 -1.6838606e+02 3.5421417e+03 - -1.4295336e+01 -1.6848098e+02 3.5421671e+03 - 0.0000000e+00 -1.6851340e+02 3.5421755e+03 - 1.4295336e+01 -1.6848098e+02 3.5421671e+03 - 2.8464740e+01 -1.6838606e+02 3.5421417e+03 - 4.2386987e+01 -1.6823553e+02 3.5420998e+03 - 5.5949865e+01 -1.6804028e+02 3.5420419e+03 - 6.9053710e+01 -1.6781446e+02 3.5419687e+03 - 8.1613951e+01 -1.6757448e+02 3.5418810e+03 - 9.3562563e+01 -1.6733803e+02 3.5417798e+03 - 1.0484845e+02 -1.6712308e+02 3.5416663e+03 - 1.1543692e+02 -1.6694695e+02 3.5415416e+03 - 1.2530840e+02 -1.6682567e+02 3.5414070e+03 - 1.3445668e+02 -1.6677336e+02 3.5412638e+03 - 1.4288693e+02 -1.6680194e+02 3.5411131e+03 - 1.5061353e+02 -1.6692095e+02 3.5409564e+03 - 1.5765807e+02 -1.6713750e+02 3.5407948e+03 - 1.6404749e+02 -1.6745637e+02 3.5406295e+03 - 1.6981239e+02 -1.6788015e+02 3.5404619e+03 - 1.7498571e+02 -1.6840948e+02 3.5402928e+03 - 1.7960152e+02 -1.6904324e+02 3.5401236e+03 - 1.8369420e+02 -1.6977884e+02 3.5399551e+03 - 1.8729771e+02 -1.7061241e+02 3.5397883e+03 - 1.9044513e+02 -1.7153903e+02 3.5396242e+03 - 1.9316828e+02 -1.7255292e+02 3.5394637e+03 - 1.9549750e+02 -1.7364762e+02 3.5393075e+03 - 1.9746154e+02 -1.7481612e+02 3.5391564e+03 - 1.9908750e+02 -1.7605099e+02 3.5390111e+03 - 2.0040079e+02 -1.7734447e+02 3.5388722e+03 - 2.0142525e+02 -1.7868855e+02 3.5387403e+03 - 2.0218312e+02 -1.8007504e+02 3.5386161e+03 - 2.0269522e+02 -1.8149561e+02 3.5385000e+03 - 2.0298096e+02 -1.8294179e+02 3.5383925e+03 - 2.0305851e+02 -1.8440505e+02 3.5382939e+03 - 2.0294485e+02 -1.8587675e+02 3.5382048e+03 - 2.0265592e+02 -1.8734818e+02 3.5381253e+03 - 2.0220668e+02 -1.8881053e+02 3.5380559e+03 - 2.0161122e+02 -1.9025487e+02 3.5379967e+03 - 2.0088285e+02 -1.9167217e+02 3.5379480e+03 - 2.0003419e+02 -1.9305321e+02 3.5379099e+03 - 1.9907724e+02 -1.9438861e+02 3.5378826e+03 - 1.9802343e+02 -1.9566875e+02 3.5378662e+03 - 1.9688376e+02 -1.9688376e+02 3.5378607e+03 - 1.9566875e+02 -1.9802343e+02 3.5378662e+03 - 1.9438861e+02 -1.9907724e+02 3.5378826e+03 - 1.9305321e+02 -2.0003419e+02 3.5379099e+03 - 1.9167217e+02 -2.0088285e+02 3.5379480e+03 - 1.9025487e+02 -2.0161122e+02 3.5379967e+03 - 1.8881053e+02 -2.0220668e+02 3.5380559e+03 - 1.8734818e+02 -2.0265592e+02 3.5381253e+03 - 1.8587675e+02 -2.0294485e+02 3.5382048e+03 - 1.8440505e+02 -2.0305851e+02 3.5382939e+03 - 1.8294179e+02 -2.0298096e+02 3.5383925e+03 - 1.8149561e+02 -2.0269522e+02 3.5385000e+03 - 1.8007504e+02 -2.0218312e+02 3.5386161e+03 - 1.7868855e+02 -2.0142525e+02 3.5387403e+03 - 1.7734447e+02 -2.0040079e+02 3.5388722e+03 - 1.7605099e+02 -1.9908750e+02 3.5390111e+03 - 1.7481612e+02 -1.9746154e+02 3.5391564e+03 - 1.7364762e+02 -1.9549750e+02 3.5393075e+03 - 1.7255292e+02 -1.9316828e+02 3.5394637e+03 - 1.7153903e+02 -1.9044513e+02 3.5396242e+03 - 1.7061241e+02 -1.8729771e+02 3.5397883e+03 - 1.6977884e+02 -1.8369420e+02 3.5399551e+03 - 1.6904324e+02 -1.7960152e+02 3.5401236e+03 - 1.6840948e+02 -1.7498571e+02 3.5402928e+03 - 1.6788015e+02 -1.6981239e+02 3.5404619e+03 - 1.6745637e+02 -1.6404749e+02 3.5406295e+03 - 1.6713750e+02 -1.5765807e+02 3.5407948e+03 - 1.6692095e+02 -1.5061353e+02 3.5409564e+03 - 1.6680194e+02 -1.4288693e+02 3.5411131e+03 - 1.6677336e+02 -1.3445668e+02 3.5412638e+03 - 1.6682567e+02 -1.2530840e+02 3.5414070e+03 - 1.6694695e+02 -1.1543692e+02 3.5415416e+03 - 1.6712308e+02 -1.0484845e+02 3.5416663e+03 - 1.6733803e+02 -9.3562563e+01 3.5417798e+03 - 1.6757448e+02 -8.1613951e+01 3.5418810e+03 - 1.6781446e+02 -6.9053710e+01 3.5419687e+03 - 1.6804028e+02 -5.5949865e+01 3.5420419e+03 - 1.6823553e+02 -4.2386987e+01 3.5420998e+03 - 1.6838606e+02 -2.8464740e+01 3.5421417e+03 - 1.6848098e+02 -1.4295336e+01 3.5421671e+03 - 1.6851340e+02 -2.4067136e-09 3.5421755e+03 - 2.1066411e+02 -2.4067136e-09 3.5384414e+03 - 2.1062348e+02 1.7880537e+01 3.5384281e+03 - 2.1050454e+02 3.5602852e+01 3.5383884e+03 - 2.1031589e+02 5.3014685e+01 3.5383229e+03 - 2.1007118e+02 6.9975173e+01 3.5382323e+03 - 2.0978808e+02 8.6359323e+01 3.5381178e+03 - 2.0948711e+02 1.0206121e+02 3.5379807e+03 - 2.0919037e+02 1.1699578e+02 3.5378226e+03 - 2.0892027e+02 1.3109933e+02 3.5376452e+03 - 2.0869844e+02 1.4432877e+02 3.5374505e+03 - 2.0854485e+02 1.5666003e+02 3.5372403e+03 - 2.0847709e+02 1.6808578e+02 3.5370166e+03 - 2.0851001e+02 1.7861292e+02 3.5367814e+03 - 2.0865547e+02 1.8825985e+02 3.5365368e+03 - 2.0892233e+02 1.9705395e+02 3.5362847e+03 - 2.0931652e+02 2.0502919e+02 3.5360269e+03 - 2.0984130e+02 2.1222409e+02 3.5357654e+03 - 2.1049745e+02 2.1868001e+02 3.5355018e+03 - 2.1128363e+02 2.2443969e+02 3.5352379e+03 - 2.1219663e+02 2.2954618e+02 3.5349753e+03 - 2.1323168e+02 2.3404198e+02 3.5347154e+03 - 2.1438271e+02 2.3796842e+02 3.5344597e+03 - 2.1564257e+02 2.4136526e+02 3.5342095e+03 - 2.1700328e+02 2.4427040e+02 3.5339661e+03 - 2.1845617e+02 2.4671971e+02 3.5337306e+03 - 2.1999204e+02 2.4874699e+02 3.5335042e+03 - 2.2160128e+02 2.5038400e+02 3.5332878e+03 - 2.2327396e+02 2.5166042e+02 3.5330824e+03 - 2.2499993e+02 2.5260405e+02 3.5328889e+03 - 2.2676883e+02 2.5324085e+02 3.5327080e+03 - 2.2857016e+02 2.5359505e+02 3.5325405e+03 - 2.3039328e+02 2.5368935e+02 3.5323870e+03 - 2.3222746e+02 2.5354495e+02 3.5322481e+03 - 2.3406182e+02 2.5318177e+02 3.5321243e+03 - 2.3588538e+02 2.5261853e+02 3.5320161e+03 - 2.3768700e+02 2.5187283e+02 3.5319239e+03 - 2.3945538e+02 2.5096135e+02 3.5318480e+03 - 2.4117900e+02 2.4989987e+02 3.5317887e+03 - 2.4284611e+02 2.4870341e+02 3.5317462e+03 - 2.4444468e+02 2.4738632e+02 3.5317206e+03 - 2.4596234e+02 2.4596234e+02 3.5317121e+03 - 2.4738632e+02 2.4444468e+02 3.5317206e+03 - 2.4870341e+02 2.4284611e+02 3.5317462e+03 - 2.4989987e+02 2.4117900e+02 3.5317887e+03 - 2.5096135e+02 2.3945538e+02 3.5318480e+03 - 2.5187283e+02 2.3768700e+02 3.5319239e+03 - 2.5261853e+02 2.3588538e+02 3.5320161e+03 - 2.5318177e+02 2.3406182e+02 3.5321243e+03 - 2.5354495e+02 2.3222746e+02 3.5322481e+03 - 2.5368935e+02 2.3039328e+02 3.5323870e+03 - 2.5359505e+02 2.2857016e+02 3.5325405e+03 - 2.5324085e+02 2.2676883e+02 3.5327080e+03 - 2.5260405e+02 2.2499993e+02 3.5328889e+03 - 2.5166042e+02 2.2327396e+02 3.5330824e+03 - 2.5038400e+02 2.2160128e+02 3.5332878e+03 - 2.4874699e+02 2.1999204e+02 3.5335042e+03 - 2.4671971e+02 2.1845617e+02 3.5337306e+03 - 2.4427040e+02 2.1700328e+02 3.5339661e+03 - 2.4136526e+02 2.1564257e+02 3.5342095e+03 - 2.3796842e+02 2.1438271e+02 3.5344597e+03 - 2.3404198e+02 2.1323168e+02 3.5347154e+03 - 2.2954618e+02 2.1219663e+02 3.5349753e+03 - 2.2443969e+02 2.1128363e+02 3.5352379e+03 - 2.1868001e+02 2.1049745e+02 3.5355018e+03 - 2.1222409e+02 2.0984130e+02 3.5357654e+03 - 2.0502919e+02 2.0931652e+02 3.5360269e+03 - 1.9705395e+02 2.0892233e+02 3.5362847e+03 - 1.8825985e+02 2.0865547e+02 3.5365368e+03 - 1.7861292e+02 2.0851001e+02 3.5367814e+03 - 1.6808578e+02 2.0847709e+02 3.5370166e+03 - 1.5666003e+02 2.0854485e+02 3.5372403e+03 - 1.4432877e+02 2.0869844e+02 3.5374505e+03 - 1.3109933e+02 2.0892027e+02 3.5376452e+03 - 1.1699578e+02 2.0919037e+02 3.5378226e+03 - 1.0206121e+02 2.0948711e+02 3.5379807e+03 - 8.6359323e+01 2.0978808e+02 3.5381178e+03 - 6.9975173e+01 2.1007118e+02 3.5382323e+03 - 5.3014685e+01 2.1031589e+02 3.5383229e+03 - 3.5602852e+01 2.1050454e+02 3.5383884e+03 - 1.7880537e+01 2.1062348e+02 3.5384281e+03 - 0.0000000e+00 2.1066411e+02 3.5384414e+03 - -1.7880537e+01 2.1062348e+02 3.5384281e+03 - -3.5602852e+01 2.1050454e+02 3.5383884e+03 - -5.3014685e+01 2.1031589e+02 3.5383229e+03 - -6.9975173e+01 2.1007118e+02 3.5382323e+03 - -8.6359323e+01 2.0978808e+02 3.5381178e+03 - -1.0206121e+02 2.0948711e+02 3.5379807e+03 - -1.1699578e+02 2.0919037e+02 3.5378226e+03 - -1.3109933e+02 2.0892027e+02 3.5376452e+03 - -1.4432877e+02 2.0869844e+02 3.5374505e+03 - -1.5666003e+02 2.0854485e+02 3.5372403e+03 - -1.6808578e+02 2.0847709e+02 3.5370166e+03 - -1.7861292e+02 2.0851001e+02 3.5367814e+03 - -1.8825985e+02 2.0865547e+02 3.5365368e+03 - -1.9705395e+02 2.0892233e+02 3.5362847e+03 - -2.0502919e+02 2.0931652e+02 3.5360269e+03 - -2.1222409e+02 2.0984130e+02 3.5357654e+03 - -2.1868001e+02 2.1049745e+02 3.5355018e+03 - -2.2443969e+02 2.1128363e+02 3.5352379e+03 - -2.2954618e+02 2.1219663e+02 3.5349753e+03 - -2.3404198e+02 2.1323168e+02 3.5347154e+03 - -2.3796842e+02 2.1438271e+02 3.5344597e+03 - -2.4136526e+02 2.1564257e+02 3.5342095e+03 - -2.4427040e+02 2.1700328e+02 3.5339661e+03 - -2.4671971e+02 2.1845617e+02 3.5337306e+03 - -2.4874699e+02 2.1999204e+02 3.5335042e+03 - -2.5038400e+02 2.2160128e+02 3.5332878e+03 - -2.5166042e+02 2.2327396e+02 3.5330824e+03 - -2.5260405e+02 2.2499993e+02 3.5328889e+03 - -2.5324085e+02 2.2676883e+02 3.5327080e+03 - -2.5359505e+02 2.2857016e+02 3.5325405e+03 - -2.5368935e+02 2.3039328e+02 3.5323870e+03 - -2.5354495e+02 2.3222746e+02 3.5322481e+03 - -2.5318177e+02 2.3406182e+02 3.5321243e+03 - -2.5261853e+02 2.3588538e+02 3.5320161e+03 - -2.5187283e+02 2.3768700e+02 3.5319239e+03 - -2.5096135e+02 2.3945538e+02 3.5318480e+03 - -2.4989987e+02 2.4117900e+02 3.5317887e+03 - -2.4870341e+02 2.4284611e+02 3.5317462e+03 - -2.4738632e+02 2.4444468e+02 3.5317206e+03 - -2.4596234e+02 2.4596234e+02 3.5317121e+03 - -2.4444468e+02 2.4738632e+02 3.5317206e+03 - -2.4284611e+02 2.4870341e+02 3.5317462e+03 - -2.4117900e+02 2.4989987e+02 3.5317887e+03 - -2.3945538e+02 2.5096135e+02 3.5318480e+03 - -2.3768700e+02 2.5187283e+02 3.5319239e+03 - -2.3588538e+02 2.5261853e+02 3.5320161e+03 - -2.3406182e+02 2.5318177e+02 3.5321243e+03 - -2.3222746e+02 2.5354495e+02 3.5322481e+03 - -2.3039328e+02 2.5368935e+02 3.5323870e+03 - -2.2857016e+02 2.5359505e+02 3.5325405e+03 - -2.2676883e+02 2.5324085e+02 3.5327080e+03 - -2.2499993e+02 2.5260405e+02 3.5328889e+03 - -2.2327396e+02 2.5166042e+02 3.5330824e+03 - -2.2160128e+02 2.5038400e+02 3.5332878e+03 - -2.1999204e+02 2.4874699e+02 3.5335042e+03 - -2.1845617e+02 2.4671971e+02 3.5337306e+03 - -2.1700328e+02 2.4427040e+02 3.5339661e+03 - -2.1564257e+02 2.4136526e+02 3.5342095e+03 - -2.1438271e+02 2.3796842e+02 3.5344597e+03 - -2.1323168e+02 2.3404198e+02 3.5347154e+03 - -2.1219663e+02 2.2954618e+02 3.5349753e+03 - -2.1128363e+02 2.2443969e+02 3.5352379e+03 - -2.1049745e+02 2.1868001e+02 3.5355018e+03 - -2.0984130e+02 2.1222409e+02 3.5357654e+03 - -2.0931652e+02 2.0502919e+02 3.5360269e+03 - -2.0892233e+02 1.9705395e+02 3.5362847e+03 - -2.0865547e+02 1.8825985e+02 3.5365368e+03 - -2.0851001e+02 1.7861292e+02 3.5367814e+03 - -2.0847709e+02 1.6808578e+02 3.5370166e+03 - -2.0854485e+02 1.5666003e+02 3.5372403e+03 - -2.0869844e+02 1.4432877e+02 3.5374505e+03 - -2.0892027e+02 1.3109933e+02 3.5376452e+03 - -2.0919037e+02 1.1699578e+02 3.5378226e+03 - -2.0948711e+02 1.0206121e+02 3.5379807e+03 - -2.0978808e+02 8.6359323e+01 3.5381178e+03 - -2.1007118e+02 6.9975173e+01 3.5382323e+03 - -2.1031589e+02 5.3014685e+01 3.5383229e+03 - -2.1050454e+02 3.5602852e+01 3.5383884e+03 - -2.1062348e+02 1.7880537e+01 3.5384281e+03 - -2.1066411e+02 2.4067136e-09 3.5384414e+03 - -2.1062348e+02 -1.7880537e+01 3.5384281e+03 - -2.1050454e+02 -3.5602852e+01 3.5383884e+03 - -2.1031589e+02 -5.3014685e+01 3.5383229e+03 - -2.1007118e+02 -6.9975173e+01 3.5382323e+03 - -2.0978808e+02 -8.6359323e+01 3.5381178e+03 - -2.0948711e+02 -1.0206121e+02 3.5379807e+03 - -2.0919037e+02 -1.1699578e+02 3.5378226e+03 - -2.0892027e+02 -1.3109933e+02 3.5376452e+03 - -2.0869844e+02 -1.4432877e+02 3.5374505e+03 - -2.0854485e+02 -1.5666003e+02 3.5372403e+03 - -2.0847709e+02 -1.6808578e+02 3.5370166e+03 - -2.0851001e+02 -1.7861292e+02 3.5367814e+03 - -2.0865547e+02 -1.8825985e+02 3.5365368e+03 - -2.0892233e+02 -1.9705395e+02 3.5362847e+03 - -2.0931652e+02 -2.0502919e+02 3.5360269e+03 - -2.0984130e+02 -2.1222409e+02 3.5357654e+03 - -2.1049745e+02 -2.1868001e+02 3.5355018e+03 - -2.1128363e+02 -2.2443969e+02 3.5352379e+03 - -2.1219663e+02 -2.2954618e+02 3.5349753e+03 - -2.1323168e+02 -2.3404198e+02 3.5347154e+03 - -2.1438271e+02 -2.3796842e+02 3.5344597e+03 - -2.1564257e+02 -2.4136526e+02 3.5342095e+03 - -2.1700328e+02 -2.4427040e+02 3.5339661e+03 - -2.1845617e+02 -2.4671971e+02 3.5337306e+03 - -2.1999204e+02 -2.4874699e+02 3.5335042e+03 - -2.2160128e+02 -2.5038400e+02 3.5332878e+03 - -2.2327396e+02 -2.5166042e+02 3.5330824e+03 - -2.2499993e+02 -2.5260405e+02 3.5328889e+03 - -2.2676883e+02 -2.5324085e+02 3.5327080e+03 - -2.2857016e+02 -2.5359505e+02 3.5325405e+03 - -2.3039328e+02 -2.5368935e+02 3.5323870e+03 - -2.3222746e+02 -2.5354495e+02 3.5322481e+03 - -2.3406182e+02 -2.5318177e+02 3.5321243e+03 - -2.3588538e+02 -2.5261853e+02 3.5320161e+03 - -2.3768700e+02 -2.5187283e+02 3.5319239e+03 - -2.3945538e+02 -2.5096135e+02 3.5318480e+03 - -2.4117900e+02 -2.4989987e+02 3.5317887e+03 - -2.4284611e+02 -2.4870341e+02 3.5317462e+03 - -2.4444468e+02 -2.4738632e+02 3.5317206e+03 - -2.4596234e+02 -2.4596234e+02 3.5317121e+03 - -2.4738632e+02 -2.4444468e+02 3.5317206e+03 - -2.4870341e+02 -2.4284611e+02 3.5317462e+03 - -2.4989987e+02 -2.4117900e+02 3.5317887e+03 - -2.5096135e+02 -2.3945538e+02 3.5318480e+03 - -2.5187283e+02 -2.3768700e+02 3.5319239e+03 - -2.5261853e+02 -2.3588538e+02 3.5320161e+03 - -2.5318177e+02 -2.3406182e+02 3.5321243e+03 - -2.5354495e+02 -2.3222746e+02 3.5322481e+03 - -2.5368935e+02 -2.3039328e+02 3.5323870e+03 - -2.5359505e+02 -2.2857016e+02 3.5325405e+03 - -2.5324085e+02 -2.2676883e+02 3.5327080e+03 - -2.5260405e+02 -2.2499993e+02 3.5328889e+03 - -2.5166042e+02 -2.2327396e+02 3.5330824e+03 - -2.5038400e+02 -2.2160128e+02 3.5332878e+03 - -2.4874699e+02 -2.1999204e+02 3.5335042e+03 - -2.4671971e+02 -2.1845617e+02 3.5337306e+03 - -2.4427040e+02 -2.1700328e+02 3.5339661e+03 - -2.4136526e+02 -2.1564257e+02 3.5342095e+03 - -2.3796842e+02 -2.1438271e+02 3.5344597e+03 - -2.3404198e+02 -2.1323168e+02 3.5347154e+03 - -2.2954618e+02 -2.1219663e+02 3.5349753e+03 - -2.2443969e+02 -2.1128363e+02 3.5352379e+03 - -2.1868001e+02 -2.1049745e+02 3.5355018e+03 - -2.1222409e+02 -2.0984130e+02 3.5357654e+03 - -2.0502919e+02 -2.0931652e+02 3.5360269e+03 - -1.9705395e+02 -2.0892233e+02 3.5362847e+03 - -1.8825985e+02 -2.0865547e+02 3.5365368e+03 - -1.7861292e+02 -2.0851001e+02 3.5367814e+03 - -1.6808578e+02 -2.0847709e+02 3.5370166e+03 - -1.5666003e+02 -2.0854485e+02 3.5372403e+03 - -1.4432877e+02 -2.0869844e+02 3.5374505e+03 - -1.3109933e+02 -2.0892027e+02 3.5376452e+03 - -1.1699578e+02 -2.0919037e+02 3.5378226e+03 - -1.0206121e+02 -2.0948711e+02 3.5379807e+03 - -8.6359323e+01 -2.0978808e+02 3.5381178e+03 - -6.9975173e+01 -2.1007118e+02 3.5382323e+03 - -5.3014685e+01 -2.1031589e+02 3.5383229e+03 - -3.5602852e+01 -2.1050454e+02 3.5383884e+03 - -1.7880537e+01 -2.1062348e+02 3.5384281e+03 - 2.4067136e-09 -2.1066411e+02 3.5384414e+03 - 1.7880537e+01 -2.1062348e+02 3.5384281e+03 - 3.5602852e+01 -2.1050454e+02 3.5383884e+03 - 5.3014685e+01 -2.1031589e+02 3.5383229e+03 - 6.9975173e+01 -2.1007118e+02 3.5382323e+03 - 8.6359323e+01 -2.0978808e+02 3.5381178e+03 - 1.0206121e+02 -2.0948711e+02 3.5379807e+03 - 1.1699578e+02 -2.0919037e+02 3.5378226e+03 - 1.3109933e+02 -2.0892027e+02 3.5376452e+03 - 1.4432877e+02 -2.0869844e+02 3.5374505e+03 - 1.5666003e+02 -2.0854485e+02 3.5372403e+03 - 1.6808578e+02 -2.0847709e+02 3.5370166e+03 - 1.7861292e+02 -2.0851001e+02 3.5367814e+03 - 1.8825985e+02 -2.0865547e+02 3.5365368e+03 - 1.9705395e+02 -2.0892233e+02 3.5362847e+03 - 2.0502919e+02 -2.0931652e+02 3.5360269e+03 - 2.1222409e+02 -2.0984130e+02 3.5357654e+03 - 2.1868001e+02 -2.1049745e+02 3.5355018e+03 - 2.2443969e+02 -2.1128363e+02 3.5352379e+03 - 2.2954618e+02 -2.1219663e+02 3.5349753e+03 - 2.3404198e+02 -2.1323168e+02 3.5347154e+03 - 2.3796842e+02 -2.1438271e+02 3.5344597e+03 - 2.4136526e+02 -2.1564257e+02 3.5342095e+03 - 2.4427040e+02 -2.1700328e+02 3.5339661e+03 - 2.4671971e+02 -2.1845617e+02 3.5337306e+03 - 2.4874699e+02 -2.1999204e+02 3.5335042e+03 - 2.5038400e+02 -2.2160128e+02 3.5332878e+03 - 2.5166042e+02 -2.2327396e+02 3.5330824e+03 - 2.5260405e+02 -2.2499993e+02 3.5328889e+03 - 2.5324085e+02 -2.2676883e+02 3.5327080e+03 - 2.5359505e+02 -2.2857016e+02 3.5325405e+03 - 2.5368935e+02 -2.3039328e+02 3.5323870e+03 - 2.5354495e+02 -2.3222746e+02 3.5322481e+03 - 2.5318177e+02 -2.3406182e+02 3.5321243e+03 - 2.5261853e+02 -2.3588538e+02 3.5320161e+03 - 2.5187283e+02 -2.3768700e+02 3.5319239e+03 - 2.5096135e+02 -2.3945538e+02 3.5318480e+03 - 2.4989987e+02 -2.4117900e+02 3.5317887e+03 - 2.4870341e+02 -2.4284611e+02 3.5317462e+03 - 2.4738632e+02 -2.4444468e+02 3.5317206e+03 - 2.4596234e+02 -2.4596234e+02 3.5317121e+03 - 2.4444468e+02 -2.4738632e+02 3.5317206e+03 - 2.4284611e+02 -2.4870341e+02 3.5317462e+03 - 2.4117900e+02 -2.4989987e+02 3.5317887e+03 - 2.3945538e+02 -2.5096135e+02 3.5318480e+03 - 2.3768700e+02 -2.5187283e+02 3.5319239e+03 - 2.3588538e+02 -2.5261853e+02 3.5320161e+03 - 2.3406182e+02 -2.5318177e+02 3.5321243e+03 - 2.3222746e+02 -2.5354495e+02 3.5322481e+03 - 2.3039328e+02 -2.5368935e+02 3.5323870e+03 - 2.2857016e+02 -2.5359505e+02 3.5325405e+03 - 2.2676883e+02 -2.5324085e+02 3.5327080e+03 - 2.2499993e+02 -2.5260405e+02 3.5328889e+03 - 2.2327396e+02 -2.5166042e+02 3.5330824e+03 - 2.2160128e+02 -2.5038400e+02 3.5332878e+03 - 2.1999204e+02 -2.4874699e+02 3.5335042e+03 - 2.1845617e+02 -2.4671971e+02 3.5337306e+03 - 2.1700328e+02 -2.4427040e+02 3.5339661e+03 - 2.1564257e+02 -2.4136526e+02 3.5342095e+03 - 2.1438271e+02 -2.3796842e+02 3.5344597e+03 - 2.1323168e+02 -2.3404198e+02 3.5347154e+03 - 2.1219663e+02 -2.2954618e+02 3.5349753e+03 - 2.1128363e+02 -2.2443969e+02 3.5352379e+03 - 2.1049745e+02 -2.1868001e+02 3.5355018e+03 - 2.0984130e+02 -2.1222409e+02 3.5357654e+03 - 2.0931652e+02 -2.0502919e+02 3.5360269e+03 - 2.0892233e+02 -1.9705395e+02 3.5362847e+03 - 2.0865547e+02 -1.8825985e+02 3.5365368e+03 - 2.0851001e+02 -1.7861292e+02 3.5367814e+03 - 2.0847709e+02 -1.6808578e+02 3.5370166e+03 - 2.0854485e+02 -1.5666003e+02 3.5372403e+03 - 2.0869844e+02 -1.4432877e+02 3.5374505e+03 - 2.0892027e+02 -1.3109933e+02 3.5376452e+03 - 2.0919037e+02 -1.1699578e+02 3.5378226e+03 - 2.0948711e+02 -1.0206121e+02 3.5379807e+03 - 2.0978808e+02 -8.6359323e+01 3.5381178e+03 - 2.1007118e+02 -6.9975173e+01 3.5382323e+03 - 2.1031589e+02 -5.3014685e+01 3.5383229e+03 - 2.1050454e+02 -3.5602852e+01 3.5383884e+03 - 2.1062348e+02 -1.7880537e+01 3.5384281e+03 - 2.1066411e+02 0.0000000e+00 3.5384414e+03 - 2.5282945e+02 2.4067136e-09 3.5338699e+03 - 2.5278055e+02 2.1473392e+01 3.5338507e+03 - 2.5263740e+02 4.2755724e+01 3.5337935e+03 - 2.5241034e+02 6.3663202e+01 3.5336990e+03 - 2.5211574e+02 8.4025912e+01 3.5335685e+03 - 2.5177483e+02 1.0369325e+02 3.5334034e+03 - 2.5141223e+02 1.2253780e+02 3.5332058e+03 - 2.5105443e+02 1.4045747e+02 3.5329781e+03 - 2.5072828e+02 1.5737605e+02 3.5327226e+03 - 2.5045967e+02 1.7324228e+02 3.5324422e+03 - 2.5027246e+02 1.8802783e+02 3.5321397e+03 - 2.5018769e+02 2.0172456e+02 3.5318179e+03 - 2.5022310e+02 2.1434140e+02 3.5314797e+03 - 2.5039282e+02 2.2590106e+02 3.5311279e+03 - 2.5070744e+02 2.3643693e+02 3.5307655e+03 - 2.5117404e+02 2.4599026e+02 3.5303951e+03 - 2.5179650e+02 2.5460766e+02 3.5300194e+03 - 2.5257581e+02 2.6233903e+02 3.5296408e+03 - 2.5351039e+02 2.6923587e+02 3.5292618e+03 - 2.5459646e+02 2.7534994e+02 3.5288847e+03 - 2.5582838e+02 2.8073231e+02 3.5285116e+03 - 2.5719898e+02 2.8543258e+02 3.5281446e+03 - 2.5869982e+02 2.8949843e+02 3.5277855e+03 - 2.6032143e+02 2.9297525e+02 3.5274361e+03 - 2.6205355e+02 2.9590604e+02 3.5270982e+03 - 2.6388528e+02 2.9833128e+02 3.5267733e+03 - 2.6580521e+02 3.0028895e+02 3.5264628e+03 - 2.6780155e+02 3.0181463e+02 3.5261681e+03 - 2.6986224e+02 3.0294159e+02 3.5258904e+03 - 2.7197495e+02 3.0370090e+02 3.5256309e+03 - 2.7412715e+02 3.0412163e+02 3.5253905e+03 - 2.7630619e+02 3.0423094e+02 3.5251702e+03 - 2.7849921e+02 3.0405428e+02 3.5249709e+03 - 2.8069324e+02 3.0361554e+02 3.5247933e+03 - 2.8287510e+02 3.0293718e+02 3.5246381e+03 - 2.8503147e+02 3.0204036e+02 3.5245058e+03 - 2.8714876e+02 3.0094509e+02 3.5243969e+03 - 2.8921317e+02 2.9967036e+02 3.5243118e+03 - 2.9121058e+02 2.9823424e+02 3.5242508e+03 - 2.9312652e+02 2.9665398e+02 3.5242141e+03 - 2.9494610e+02 2.9494610e+02 3.5242018e+03 - 2.9665398e+02 2.9312652e+02 3.5242141e+03 - 2.9823424e+02 2.9121058e+02 3.5242508e+03 - 2.9967036e+02 2.8921317e+02 3.5243118e+03 - 3.0094509e+02 2.8714876e+02 3.5243969e+03 - 3.0204036e+02 2.8503147e+02 3.5245058e+03 - 3.0293718e+02 2.8287510e+02 3.5246381e+03 - 3.0361554e+02 2.8069324e+02 3.5247933e+03 - 3.0405428e+02 2.7849921e+02 3.5249709e+03 - 3.0423094e+02 2.7630619e+02 3.5251702e+03 - 3.0412163e+02 2.7412715e+02 3.5253905e+03 - 3.0370090e+02 2.7197495e+02 3.5256309e+03 - 3.0294159e+02 2.6986224e+02 3.5258904e+03 - 3.0181463e+02 2.6780155e+02 3.5261681e+03 - 3.0028895e+02 2.6580521e+02 3.5264628e+03 - 2.9833128e+02 2.6388528e+02 3.5267733e+03 - 2.9590604e+02 2.6205355e+02 3.5270982e+03 - 2.9297525e+02 2.6032143e+02 3.5274361e+03 - 2.8949843e+02 2.5869982e+02 3.5277855e+03 - 2.8543258e+02 2.5719898e+02 3.5281446e+03 - 2.8073231e+02 2.5582838e+02 3.5285116e+03 - 2.7534994e+02 2.5459646e+02 3.5288847e+03 - 2.6923587e+02 2.5351039e+02 3.5292618e+03 - 2.6233903e+02 2.5257581e+02 3.5296408e+03 - 2.5460766e+02 2.5179650e+02 3.5300194e+03 - 2.4599026e+02 2.5117404e+02 3.5303951e+03 - 2.3643693e+02 2.5070744e+02 3.5307655e+03 - 2.2590106e+02 2.5039282e+02 3.5311279e+03 - 2.1434140e+02 2.5022310e+02 3.5314797e+03 - 2.0172456e+02 2.5018769e+02 3.5318179e+03 - 1.8802783e+02 2.5027246e+02 3.5321397e+03 - 1.7324228e+02 2.5045967e+02 3.5324422e+03 - 1.5737605e+02 2.5072828e+02 3.5327226e+03 - 1.4045747e+02 2.5105443e+02 3.5329781e+03 - 1.2253780e+02 2.5141223e+02 3.5332058e+03 - 1.0369325e+02 2.5177483e+02 3.5334034e+03 - 8.4025912e+01 2.5211574e+02 3.5335685e+03 - 6.3663202e+01 2.5241034e+02 3.5336990e+03 - 4.2755724e+01 2.5263740e+02 3.5337935e+03 - 2.1473392e+01 2.5278055e+02 3.5338507e+03 - 0.0000000e+00 2.5282945e+02 3.5338699e+03 - -2.1473392e+01 2.5278055e+02 3.5338507e+03 - -4.2755724e+01 2.5263740e+02 3.5337935e+03 - -6.3663202e+01 2.5241034e+02 3.5336990e+03 - -8.4025912e+01 2.5211574e+02 3.5335685e+03 - -1.0369325e+02 2.5177483e+02 3.5334034e+03 - -1.2253780e+02 2.5141223e+02 3.5332058e+03 - -1.4045747e+02 2.5105443e+02 3.5329781e+03 - -1.5737605e+02 2.5072828e+02 3.5327226e+03 - -1.7324228e+02 2.5045967e+02 3.5324422e+03 - -1.8802783e+02 2.5027246e+02 3.5321397e+03 - -2.0172456e+02 2.5018769e+02 3.5318179e+03 - -2.1434140e+02 2.5022310e+02 3.5314797e+03 - -2.2590106e+02 2.5039282e+02 3.5311279e+03 - -2.3643693e+02 2.5070744e+02 3.5307655e+03 - -2.4599026e+02 2.5117404e+02 3.5303951e+03 - -2.5460766e+02 2.5179650e+02 3.5300194e+03 - -2.6233903e+02 2.5257581e+02 3.5296408e+03 - -2.6923587e+02 2.5351039e+02 3.5292618e+03 - -2.7534994e+02 2.5459646e+02 3.5288847e+03 - -2.8073231e+02 2.5582838e+02 3.5285116e+03 - -2.8543258e+02 2.5719898e+02 3.5281446e+03 - -2.8949843e+02 2.5869982e+02 3.5277855e+03 - -2.9297525e+02 2.6032143e+02 3.5274361e+03 - -2.9590604e+02 2.6205355e+02 3.5270982e+03 - -2.9833128e+02 2.6388528e+02 3.5267733e+03 - -3.0028895e+02 2.6580521e+02 3.5264628e+03 - -3.0181463e+02 2.6780155e+02 3.5261681e+03 - -3.0294159e+02 2.6986224e+02 3.5258904e+03 - -3.0370090e+02 2.7197495e+02 3.5256309e+03 - -3.0412163e+02 2.7412715e+02 3.5253905e+03 - -3.0423094e+02 2.7630619e+02 3.5251702e+03 - -3.0405428e+02 2.7849921e+02 3.5249709e+03 - -3.0361554e+02 2.8069324e+02 3.5247933e+03 - -3.0293718e+02 2.8287510e+02 3.5246381e+03 - -3.0204036e+02 2.8503147e+02 3.5245058e+03 - -3.0094509e+02 2.8714876e+02 3.5243969e+03 - -2.9967036e+02 2.8921317e+02 3.5243118e+03 - -2.9823424e+02 2.9121058e+02 3.5242508e+03 - -2.9665398e+02 2.9312652e+02 3.5242141e+03 - -2.9494610e+02 2.9494610e+02 3.5242018e+03 - -2.9312652e+02 2.9665398e+02 3.5242141e+03 - -2.9121058e+02 2.9823424e+02 3.5242508e+03 - -2.8921317e+02 2.9967036e+02 3.5243118e+03 - -2.8714876e+02 3.0094509e+02 3.5243969e+03 - -2.8503147e+02 3.0204036e+02 3.5245058e+03 - -2.8287510e+02 3.0293718e+02 3.5246381e+03 - -2.8069324e+02 3.0361554e+02 3.5247933e+03 - -2.7849921e+02 3.0405428e+02 3.5249709e+03 - -2.7630619e+02 3.0423094e+02 3.5251702e+03 - -2.7412715e+02 3.0412163e+02 3.5253905e+03 - -2.7197495e+02 3.0370090e+02 3.5256309e+03 - -2.6986224e+02 3.0294159e+02 3.5258904e+03 - -2.6780155e+02 3.0181463e+02 3.5261681e+03 - -2.6580521e+02 3.0028895e+02 3.5264628e+03 - -2.6388528e+02 2.9833128e+02 3.5267733e+03 - -2.6205355e+02 2.9590604e+02 3.5270982e+03 - -2.6032143e+02 2.9297525e+02 3.5274361e+03 - -2.5869982e+02 2.8949843e+02 3.5277855e+03 - -2.5719898e+02 2.8543258e+02 3.5281446e+03 - -2.5582838e+02 2.8073231e+02 3.5285116e+03 - -2.5459646e+02 2.7534994e+02 3.5288847e+03 - -2.5351039e+02 2.6923587e+02 3.5292618e+03 - -2.5257581e+02 2.6233903e+02 3.5296408e+03 - -2.5179650e+02 2.5460766e+02 3.5300194e+03 - -2.5117404e+02 2.4599026e+02 3.5303951e+03 - -2.5070744e+02 2.3643693e+02 3.5307655e+03 - -2.5039282e+02 2.2590106e+02 3.5311279e+03 - -2.5022310e+02 2.1434140e+02 3.5314797e+03 - -2.5018769e+02 2.0172456e+02 3.5318179e+03 - -2.5027246e+02 1.8802783e+02 3.5321397e+03 - -2.5045967e+02 1.7324228e+02 3.5324422e+03 - -2.5072828e+02 1.5737605e+02 3.5327226e+03 - -2.5105443e+02 1.4045747e+02 3.5329781e+03 - -2.5141223e+02 1.2253780e+02 3.5332058e+03 - -2.5177483e+02 1.0369325e+02 3.5334034e+03 - -2.5211574e+02 8.4025912e+01 3.5335685e+03 - -2.5241034e+02 6.3663202e+01 3.5336990e+03 - -2.5263740e+02 4.2755724e+01 3.5337935e+03 - -2.5278055e+02 2.1473392e+01 3.5338507e+03 - -2.5282945e+02 0.0000000e+00 3.5338699e+03 - -2.5278055e+02 -2.1473392e+01 3.5338507e+03 - -2.5263740e+02 -4.2755724e+01 3.5337935e+03 - -2.5241034e+02 -6.3663202e+01 3.5336990e+03 - -2.5211574e+02 -8.4025912e+01 3.5335685e+03 - -2.5177483e+02 -1.0369325e+02 3.5334034e+03 - -2.5141223e+02 -1.2253780e+02 3.5332058e+03 - -2.5105443e+02 -1.4045747e+02 3.5329781e+03 - -2.5072828e+02 -1.5737605e+02 3.5327226e+03 - -2.5045967e+02 -1.7324228e+02 3.5324422e+03 - -2.5027246e+02 -1.8802783e+02 3.5321397e+03 - -2.5018769e+02 -2.0172456e+02 3.5318179e+03 - -2.5022310e+02 -2.1434140e+02 3.5314797e+03 - -2.5039282e+02 -2.2590106e+02 3.5311279e+03 - -2.5070744e+02 -2.3643693e+02 3.5307655e+03 - -2.5117404e+02 -2.4599026e+02 3.5303951e+03 - -2.5179650e+02 -2.5460766e+02 3.5300194e+03 - -2.5257581e+02 -2.6233903e+02 3.5296408e+03 - -2.5351039e+02 -2.6923587e+02 3.5292618e+03 - -2.5459646e+02 -2.7534994e+02 3.5288847e+03 - -2.5582838e+02 -2.8073231e+02 3.5285116e+03 - -2.5719898e+02 -2.8543258e+02 3.5281446e+03 - -2.5869982e+02 -2.8949843e+02 3.5277855e+03 - -2.6032143e+02 -2.9297525e+02 3.5274361e+03 - -2.6205355e+02 -2.9590604e+02 3.5270982e+03 - -2.6388528e+02 -2.9833128e+02 3.5267733e+03 - -2.6580521e+02 -3.0028895e+02 3.5264628e+03 - -2.6780155e+02 -3.0181463e+02 3.5261681e+03 - -2.6986224e+02 -3.0294159e+02 3.5258904e+03 - -2.7197495e+02 -3.0370090e+02 3.5256309e+03 - -2.7412715e+02 -3.0412163e+02 3.5253905e+03 - -2.7630619e+02 -3.0423094e+02 3.5251702e+03 - -2.7849921e+02 -3.0405428e+02 3.5249709e+03 - -2.8069324e+02 -3.0361554e+02 3.5247933e+03 - -2.8287510e+02 -3.0293718e+02 3.5246381e+03 - -2.8503147e+02 -3.0204036e+02 3.5245058e+03 - -2.8714876e+02 -3.0094509e+02 3.5243969e+03 - -2.8921317e+02 -2.9967036e+02 3.5243118e+03 - -2.9121058e+02 -2.9823424e+02 3.5242508e+03 - -2.9312652e+02 -2.9665398e+02 3.5242141e+03 - -2.9494610e+02 -2.9494610e+02 3.5242018e+03 - -2.9665398e+02 -2.9312652e+02 3.5242141e+03 - -2.9823424e+02 -2.9121058e+02 3.5242508e+03 - -2.9967036e+02 -2.8921317e+02 3.5243118e+03 - -3.0094509e+02 -2.8714876e+02 3.5243969e+03 - -3.0204036e+02 -2.8503147e+02 3.5245058e+03 - -3.0293718e+02 -2.8287510e+02 3.5246381e+03 - -3.0361554e+02 -2.8069324e+02 3.5247933e+03 - -3.0405428e+02 -2.7849921e+02 3.5249709e+03 - -3.0423094e+02 -2.7630619e+02 3.5251702e+03 - -3.0412163e+02 -2.7412715e+02 3.5253905e+03 - -3.0370090e+02 -2.7197495e+02 3.5256309e+03 - -3.0294159e+02 -2.6986224e+02 3.5258904e+03 - -3.0181463e+02 -2.6780155e+02 3.5261681e+03 - -3.0028895e+02 -2.6580521e+02 3.5264628e+03 - -2.9833128e+02 -2.6388528e+02 3.5267733e+03 - -2.9590604e+02 -2.6205355e+02 3.5270982e+03 - -2.9297525e+02 -2.6032143e+02 3.5274361e+03 - -2.8949843e+02 -2.5869982e+02 3.5277855e+03 - -2.8543258e+02 -2.5719898e+02 3.5281446e+03 - -2.8073231e+02 -2.5582838e+02 3.5285116e+03 - -2.7534994e+02 -2.5459646e+02 3.5288847e+03 - -2.6923587e+02 -2.5351039e+02 3.5292618e+03 - -2.6233903e+02 -2.5257581e+02 3.5296408e+03 - -2.5460766e+02 -2.5179650e+02 3.5300194e+03 - -2.4599026e+02 -2.5117404e+02 3.5303951e+03 - -2.3643693e+02 -2.5070744e+02 3.5307655e+03 - -2.2590106e+02 -2.5039282e+02 3.5311279e+03 - -2.1434140e+02 -2.5022310e+02 3.5314797e+03 - -2.0172456e+02 -2.5018769e+02 3.5318179e+03 - -1.8802783e+02 -2.5027246e+02 3.5321397e+03 - -1.7324228e+02 -2.5045967e+02 3.5324422e+03 - -1.5737605e+02 -2.5072828e+02 3.5327226e+03 - -1.4045747e+02 -2.5105443e+02 3.5329781e+03 - -1.2253780e+02 -2.5141223e+02 3.5332058e+03 - -1.0369325e+02 -2.5177483e+02 3.5334034e+03 - -8.4025912e+01 -2.5211574e+02 3.5335685e+03 - -6.3663202e+01 -2.5241034e+02 3.5336990e+03 - -4.2755724e+01 -2.5263740e+02 3.5337935e+03 - -2.1473392e+01 -2.5278055e+02 3.5338507e+03 - 2.4067136e-09 -2.5282945e+02 3.5338699e+03 - 2.1473392e+01 -2.5278055e+02 3.5338507e+03 - 4.2755724e+01 -2.5263740e+02 3.5337935e+03 - 6.3663202e+01 -2.5241034e+02 3.5336990e+03 - 8.4025912e+01 -2.5211574e+02 3.5335685e+03 - 1.0369325e+02 -2.5177483e+02 3.5334034e+03 - 1.2253780e+02 -2.5141223e+02 3.5332058e+03 - 1.4045747e+02 -2.5105443e+02 3.5329781e+03 - 1.5737605e+02 -2.5072828e+02 3.5327226e+03 - 1.7324228e+02 -2.5045967e+02 3.5324422e+03 - 1.8802783e+02 -2.5027246e+02 3.5321397e+03 - 2.0172456e+02 -2.5018769e+02 3.5318179e+03 - 2.1434140e+02 -2.5022310e+02 3.5314797e+03 - 2.2590106e+02 -2.5039282e+02 3.5311279e+03 - 2.3643693e+02 -2.5070744e+02 3.5307655e+03 - 2.4599026e+02 -2.5117404e+02 3.5303951e+03 - 2.5460766e+02 -2.5179650e+02 3.5300194e+03 - 2.6233903e+02 -2.5257581e+02 3.5296408e+03 - 2.6923587e+02 -2.5351039e+02 3.5292618e+03 - 2.7534994e+02 -2.5459646e+02 3.5288847e+03 - 2.8073231e+02 -2.5582838e+02 3.5285116e+03 - 2.8543258e+02 -2.5719898e+02 3.5281446e+03 - 2.8949843e+02 -2.5869982e+02 3.5277855e+03 - 2.9297525e+02 -2.6032143e+02 3.5274361e+03 - 2.9590604e+02 -2.6205355e+02 3.5270982e+03 - 2.9833128e+02 -2.6388528e+02 3.5267733e+03 - 3.0028895e+02 -2.6580521e+02 3.5264628e+03 - 3.0181463e+02 -2.6780155e+02 3.5261681e+03 - 3.0294159e+02 -2.6986224e+02 3.5258904e+03 - 3.0370090e+02 -2.7197495e+02 3.5256309e+03 - 3.0412163e+02 -2.7412715e+02 3.5253905e+03 - 3.0423094e+02 -2.7630619e+02 3.5251702e+03 - 3.0405428e+02 -2.7849921e+02 3.5249709e+03 - 3.0361554e+02 -2.8069324e+02 3.5247933e+03 - 3.0293718e+02 -2.8287510e+02 3.5246381e+03 - 3.0204036e+02 -2.8503147e+02 3.5245058e+03 - 3.0094509e+02 -2.8714876e+02 3.5243969e+03 - 2.9967036e+02 -2.8921317e+02 3.5243118e+03 - 2.9823424e+02 -2.9121058e+02 3.5242508e+03 - 2.9665398e+02 -2.9312652e+02 3.5242141e+03 - 2.9494610e+02 -2.9494610e+02 3.5242018e+03 - 2.9312652e+02 -2.9665398e+02 3.5242141e+03 - 2.9121058e+02 -2.9823424e+02 3.5242508e+03 - 2.8921317e+02 -2.9967036e+02 3.5243118e+03 - 2.8714876e+02 -3.0094509e+02 3.5243969e+03 - 2.8503147e+02 -3.0204036e+02 3.5245058e+03 - 2.8287510e+02 -3.0293718e+02 3.5246381e+03 - 2.8069324e+02 -3.0361554e+02 3.5247933e+03 - 2.7849921e+02 -3.0405428e+02 3.5249709e+03 - 2.7630619e+02 -3.0423094e+02 3.5251702e+03 - 2.7412715e+02 -3.0412163e+02 3.5253905e+03 - 2.7197495e+02 -3.0370090e+02 3.5256309e+03 - 2.6986224e+02 -3.0294159e+02 3.5258904e+03 - 2.6780155e+02 -3.0181463e+02 3.5261681e+03 - 2.6580521e+02 -3.0028895e+02 3.5264628e+03 - 2.6388528e+02 -2.9833128e+02 3.5267733e+03 - 2.6205355e+02 -2.9590604e+02 3.5270982e+03 - 2.6032143e+02 -2.9297525e+02 3.5274361e+03 - 2.5869982e+02 -2.8949843e+02 3.5277855e+03 - 2.5719898e+02 -2.8543258e+02 3.5281446e+03 - 2.5582838e+02 -2.8073231e+02 3.5285116e+03 - 2.5459646e+02 -2.7534994e+02 3.5288847e+03 - 2.5351039e+02 -2.6923587e+02 3.5292618e+03 - 2.5257581e+02 -2.6233903e+02 3.5296408e+03 - 2.5179650e+02 -2.5460766e+02 3.5300194e+03 - 2.5117404e+02 -2.4599026e+02 3.5303951e+03 - 2.5070744e+02 -2.3643693e+02 3.5307655e+03 - 2.5039282e+02 -2.2590106e+02 3.5311279e+03 - 2.5022310e+02 -2.1434140e+02 3.5314797e+03 - 2.5018769e+02 -2.0172456e+02 3.5318179e+03 - 2.5027246e+02 -1.8802783e+02 3.5321397e+03 - 2.5045967e+02 -1.7324228e+02 3.5324422e+03 - 2.5072828e+02 -1.5737605e+02 3.5327226e+03 - 2.5105443e+02 -1.4045747e+02 3.5329781e+03 - 2.5141223e+02 -1.2253780e+02 3.5332058e+03 - 2.5177483e+02 -1.0369325e+02 3.5334034e+03 - 2.5211574e+02 -8.4025912e+01 3.5335685e+03 - 2.5241034e+02 -6.3663202e+01 3.5336990e+03 - 2.5263740e+02 -4.2755724e+01 3.5337935e+03 - 2.5278055e+02 -2.1473392e+01 3.5338507e+03 - 2.5282945e+02 -2.4067136e-09 3.5338699e+03 - 2.9501208e+02 2.4067136e-09 3.5284566e+03 - 2.9495485e+02 2.5075544e+01 3.5284305e+03 - 2.9478727e+02 4.9926521e+01 3.5283525e+03 - 2.9452144e+02 7.4336992e+01 3.5282237e+03 - 2.9417648e+02 9.8107504e+01 3.5280457e+03 - 2.9377715e+02 1.2106150e+02 3.5278207e+03 - 2.9335218e+02 1.4304990e+02 3.5275516e+03 - 2.9293243e+02 1.6395359e+02 3.5272414e+03 - 2.9254916e+02 1.8368398e+02 3.5268937e+03 - 2.9223248e+02 2.0218188e+02 3.5265122e+03 - 2.9201012e+02 2.1941504e+02 3.5261006e+03 - 2.9190649e+02 2.3537488e+02 3.5256631e+03 - 2.9194217e+02 2.5007269e+02 3.5252034e+03 - 2.9213354e+02 2.6353586e+02 3.5247255e+03 - 2.9249287e+02 2.7580411e+02 3.5242333e+03 - 2.9302838e+02 2.8692621e+02 3.5237304e+03 - 2.9374458e+02 2.9695708e+02 3.5232203e+03 - 2.9464264e+02 3.0595530e+02 3.5227066e+03 - 2.9572079e+02 3.1398122e+02 3.5221924e+03 - 2.9697472e+02 3.2109542e+02 3.5216809e+03 - 2.9839798e+02 3.2735752e+02 3.5211749e+03 - 2.9998236e+02 3.3282542e+02 3.5206772e+03 - 3.0171816e+02 3.3755466e+02 3.5201903e+03 - 3.0359454e+02 3.4159815e+02 3.5197167e+03 - 3.0559970e+02 3.4500591e+02 3.5192587e+03 - 3.0772111e+02 3.4782506e+02 3.5188183e+03 - 3.0994565e+02 3.5009980e+02 3.5183974e+03 - 3.1225974e+02 3.5187152e+02 3.5179980e+03 - 3.1464944e+02 3.5317891e+02 3.5176216e+03 - 3.1710052e+02 3.5405817e+02 3.5172698e+03 - 3.1959851e+02 3.5454311e+02 3.5169440e+03 - 3.2212872e+02 3.5466539e+02 3.5166455e+03 - 3.2467625e+02 3.5445468e+02 3.5163754e+03 - 3.2722601e+02 3.5393882e+02 3.5161347e+03 - 3.2976271e+02 3.5314403e+02 3.5159243e+03 - 3.3227078e+02 3.5209502e+02 3.5157449e+03 - 3.3473442e+02 3.5081518e+02 3.5155973e+03 - 3.3713749e+02 3.4932671e+02 3.5154820e+03 - 3.3946350e+02 3.4765073e+02 3.5153993e+03 - 3.4169552e+02 3.4580743e+02 3.5153496e+03 - 3.4381615e+02 3.4381615e+02 3.5153330e+03 - 3.4580743e+02 3.4169552e+02 3.5153496e+03 - 3.4765073e+02 3.3946350e+02 3.5153993e+03 - 3.4932671e+02 3.3713749e+02 3.5154820e+03 - 3.5081518e+02 3.3473442e+02 3.5155973e+03 - 3.5209502e+02 3.3227078e+02 3.5157449e+03 - 3.5314403e+02 3.2976271e+02 3.5159243e+03 - 3.5393882e+02 3.2722602e+02 3.5161347e+03 - 3.5445468e+02 3.2467625e+02 3.5163754e+03 - 3.5466539e+02 3.2212872e+02 3.5166455e+03 - 3.5454311e+02 3.1959851e+02 3.5169440e+03 - 3.5405817e+02 3.1710052e+02 3.5172698e+03 - 3.5317891e+02 3.1464944e+02 3.5176216e+03 - 3.5187152e+02 3.1225974e+02 3.5179980e+03 - 3.5009980e+02 3.0994565e+02 3.5183974e+03 - 3.4782506e+02 3.0772111e+02 3.5188183e+03 - 3.4500591e+02 3.0559970e+02 3.5192587e+03 - 3.4159815e+02 3.0359454e+02 3.5197167e+03 - 3.3755466e+02 3.0171816e+02 3.5201903e+03 - 3.3282542e+02 2.9998236e+02 3.5206772e+03 - 3.2735752e+02 2.9839798e+02 3.5211749e+03 - 3.2109542e+02 2.9697472e+02 3.5216809e+03 - 3.1398122e+02 2.9572079e+02 3.5221924e+03 - 3.0595530e+02 2.9464264e+02 3.5227066e+03 - 2.9695708e+02 2.9374458e+02 3.5232203e+03 - 2.8692621e+02 2.9302838e+02 3.5237304e+03 - 2.7580411e+02 2.9249287e+02 3.5242333e+03 - 2.6353586e+02 2.9213354e+02 3.5247255e+03 - 2.5007269e+02 2.9194217e+02 3.5252034e+03 - 2.3537488e+02 2.9190649e+02 3.5256631e+03 - 2.1941504e+02 2.9201012e+02 3.5261006e+03 - 2.0218188e+02 2.9223248e+02 3.5265122e+03 - 1.8368398e+02 2.9254916e+02 3.5268937e+03 - 1.6395359e+02 2.9293243e+02 3.5272414e+03 - 1.4304990e+02 2.9335218e+02 3.5275516e+03 - 1.2106150e+02 2.9377715e+02 3.5278207e+03 - 9.8107504e+01 2.9417648e+02 3.5280457e+03 - 7.4336992e+01 2.9452144e+02 3.5282237e+03 - 4.9926521e+01 2.9478727e+02 3.5283525e+03 - 2.5075544e+01 2.9495485e+02 3.5284305e+03 - 0.0000000e+00 2.9501208e+02 3.5284566e+03 - -2.5075544e+01 2.9495485e+02 3.5284305e+03 - -4.9926521e+01 2.9478727e+02 3.5283525e+03 - -7.4336992e+01 2.9452144e+02 3.5282237e+03 - -9.8107504e+01 2.9417648e+02 3.5280457e+03 - -1.2106150e+02 2.9377715e+02 3.5278207e+03 - -1.4304990e+02 2.9335218e+02 3.5275516e+03 - -1.6395359e+02 2.9293243e+02 3.5272414e+03 - -1.8368398e+02 2.9254916e+02 3.5268937e+03 - -2.0218188e+02 2.9223248e+02 3.5265122e+03 - -2.1941504e+02 2.9201012e+02 3.5261006e+03 - -2.3537488e+02 2.9190649e+02 3.5256631e+03 - -2.5007269e+02 2.9194217e+02 3.5252034e+03 - -2.6353586e+02 2.9213354e+02 3.5247255e+03 - -2.7580411e+02 2.9249287e+02 3.5242333e+03 - -2.8692621e+02 2.9302838e+02 3.5237304e+03 - -2.9695708e+02 2.9374458e+02 3.5232203e+03 - -3.0595530e+02 2.9464264e+02 3.5227066e+03 - -3.1398122e+02 2.9572079e+02 3.5221924e+03 - -3.2109542e+02 2.9697472e+02 3.5216809e+03 - -3.2735752e+02 2.9839798e+02 3.5211749e+03 - -3.3282542e+02 2.9998236e+02 3.5206772e+03 - -3.3755466e+02 3.0171816e+02 3.5201903e+03 - -3.4159815e+02 3.0359454e+02 3.5197167e+03 - -3.4500591e+02 3.0559970e+02 3.5192587e+03 - -3.4782506e+02 3.0772111e+02 3.5188183e+03 - -3.5009980e+02 3.0994565e+02 3.5183974e+03 - -3.5187152e+02 3.1225974e+02 3.5179980e+03 - -3.5317891e+02 3.1464944e+02 3.5176216e+03 - -3.5405817e+02 3.1710052e+02 3.5172698e+03 - -3.5454311e+02 3.1959851e+02 3.5169440e+03 - -3.5466539e+02 3.2212872e+02 3.5166455e+03 - -3.5445468e+02 3.2467625e+02 3.5163754e+03 - -3.5393882e+02 3.2722601e+02 3.5161347e+03 - -3.5314403e+02 3.2976271e+02 3.5159243e+03 - -3.5209502e+02 3.3227078e+02 3.5157449e+03 - -3.5081518e+02 3.3473442e+02 3.5155973e+03 - -3.4932671e+02 3.3713749e+02 3.5154820e+03 - -3.4765073e+02 3.3946350e+02 3.5153993e+03 - -3.4580743e+02 3.4169552e+02 3.5153496e+03 - -3.4381615e+02 3.4381615e+02 3.5153330e+03 - -3.4169552e+02 3.4580743e+02 3.5153496e+03 - -3.3946350e+02 3.4765073e+02 3.5153993e+03 - -3.3713749e+02 3.4932671e+02 3.5154820e+03 - -3.3473442e+02 3.5081518e+02 3.5155973e+03 - -3.3227078e+02 3.5209502e+02 3.5157449e+03 - -3.2976271e+02 3.5314403e+02 3.5159243e+03 - -3.2722601e+02 3.5393882e+02 3.5161347e+03 - -3.2467625e+02 3.5445468e+02 3.5163754e+03 - -3.2212872e+02 3.5466539e+02 3.5166455e+03 - -3.1959851e+02 3.5454311e+02 3.5169440e+03 - -3.1710052e+02 3.5405817e+02 3.5172698e+03 - -3.1464944e+02 3.5317891e+02 3.5176216e+03 - -3.1225974e+02 3.5187152e+02 3.5179980e+03 - -3.0994565e+02 3.5009980e+02 3.5183974e+03 - -3.0772111e+02 3.4782506e+02 3.5188183e+03 - -3.0559970e+02 3.4500591e+02 3.5192587e+03 - -3.0359454e+02 3.4159815e+02 3.5197167e+03 - -3.0171816e+02 3.3755466e+02 3.5201903e+03 - -2.9998236e+02 3.3282542e+02 3.5206772e+03 - -2.9839798e+02 3.2735752e+02 3.5211749e+03 - -2.9697472e+02 3.2109542e+02 3.5216809e+03 - -2.9572079e+02 3.1398122e+02 3.5221924e+03 - -2.9464264e+02 3.0595530e+02 3.5227066e+03 - -2.9374458e+02 2.9695708e+02 3.5232203e+03 - -2.9302838e+02 2.8692621e+02 3.5237304e+03 - -2.9249287e+02 2.7580411e+02 3.5242333e+03 - -2.9213354e+02 2.6353586e+02 3.5247255e+03 - -2.9194217e+02 2.5007269e+02 3.5252034e+03 - -2.9190649e+02 2.3537488e+02 3.5256631e+03 - -2.9201012e+02 2.1941504e+02 3.5261006e+03 - -2.9223248e+02 2.0218188e+02 3.5265122e+03 - -2.9254916e+02 1.8368398e+02 3.5268937e+03 - -2.9293243e+02 1.6395359e+02 3.5272414e+03 - -2.9335218e+02 1.4304990e+02 3.5275516e+03 - -2.9377715e+02 1.2106150e+02 3.5278207e+03 - -2.9417648e+02 9.8107504e+01 3.5280457e+03 - -2.9452144e+02 7.4336992e+01 3.5282237e+03 - -2.9478727e+02 4.9926521e+01 3.5283525e+03 - -2.9495485e+02 2.5075544e+01 3.5284305e+03 - -2.9501208e+02 -2.4067136e-09 3.5284566e+03 - -2.9495485e+02 -2.5075544e+01 3.5284305e+03 - -2.9478727e+02 -4.9926521e+01 3.5283525e+03 - -2.9452144e+02 -7.4336992e+01 3.5282237e+03 - -2.9417648e+02 -9.8107504e+01 3.5280457e+03 - -2.9377715e+02 -1.2106150e+02 3.5278207e+03 - -2.9335218e+02 -1.4304990e+02 3.5275516e+03 - -2.9293243e+02 -1.6395359e+02 3.5272414e+03 - -2.9254916e+02 -1.8368398e+02 3.5268937e+03 - -2.9223248e+02 -2.0218188e+02 3.5265122e+03 - -2.9201012e+02 -2.1941504e+02 3.5261006e+03 - -2.9190649e+02 -2.3537488e+02 3.5256631e+03 - -2.9194217e+02 -2.5007269e+02 3.5252034e+03 - -2.9213354e+02 -2.6353586e+02 3.5247255e+03 - -2.9249287e+02 -2.7580411e+02 3.5242333e+03 - -2.9302838e+02 -2.8692621e+02 3.5237304e+03 - -2.9374458e+02 -2.9695708e+02 3.5232203e+03 - -2.9464264e+02 -3.0595530e+02 3.5227066e+03 - -2.9572079e+02 -3.1398122e+02 3.5221924e+03 - -2.9697472e+02 -3.2109542e+02 3.5216809e+03 - -2.9839798e+02 -3.2735752e+02 3.5211749e+03 - -2.9998236e+02 -3.3282542e+02 3.5206772e+03 - -3.0171816e+02 -3.3755466e+02 3.5201903e+03 - -3.0359454e+02 -3.4159815e+02 3.5197167e+03 - -3.0559970e+02 -3.4500591e+02 3.5192587e+03 - -3.0772111e+02 -3.4782506e+02 3.5188183e+03 - -3.0994565e+02 -3.5009980e+02 3.5183974e+03 - -3.1225974e+02 -3.5187152e+02 3.5179980e+03 - -3.1464944e+02 -3.5317891e+02 3.5176216e+03 - -3.1710052e+02 -3.5405817e+02 3.5172698e+03 - -3.1959851e+02 -3.5454311e+02 3.5169440e+03 - -3.2212872e+02 -3.5466539e+02 3.5166455e+03 - -3.2467625e+02 -3.5445468e+02 3.5163754e+03 - -3.2722601e+02 -3.5393882e+02 3.5161347e+03 - -3.2976271e+02 -3.5314403e+02 3.5159243e+03 - -3.3227078e+02 -3.5209502e+02 3.5157449e+03 - -3.3473442e+02 -3.5081518e+02 3.5155973e+03 - -3.3713749e+02 -3.4932671e+02 3.5154820e+03 - -3.3946350e+02 -3.4765073e+02 3.5153993e+03 - -3.4169552e+02 -3.4580743e+02 3.5153496e+03 - -3.4381615e+02 -3.4381615e+02 3.5153330e+03 - -3.4580743e+02 -3.4169552e+02 3.5153496e+03 - -3.4765073e+02 -3.3946350e+02 3.5153993e+03 - -3.4932671e+02 -3.3713749e+02 3.5154820e+03 - -3.5081518e+02 -3.3473442e+02 3.5155973e+03 - -3.5209502e+02 -3.3227078e+02 3.5157449e+03 - -3.5314403e+02 -3.2976271e+02 3.5159243e+03 - -3.5393882e+02 -3.2722601e+02 3.5161347e+03 - -3.5445468e+02 -3.2467625e+02 3.5163754e+03 - -3.5466539e+02 -3.2212872e+02 3.5166455e+03 - -3.5454311e+02 -3.1959851e+02 3.5169440e+03 - -3.5405817e+02 -3.1710052e+02 3.5172698e+03 - -3.5317891e+02 -3.1464944e+02 3.5176216e+03 - -3.5187152e+02 -3.1225974e+02 3.5179980e+03 - -3.5009980e+02 -3.0994565e+02 3.5183974e+03 - -3.4782506e+02 -3.0772111e+02 3.5188183e+03 - -3.4500591e+02 -3.0559970e+02 3.5192587e+03 - -3.4159815e+02 -3.0359454e+02 3.5197167e+03 - -3.3755466e+02 -3.0171816e+02 3.5201903e+03 - -3.3282542e+02 -2.9998236e+02 3.5206772e+03 - -3.2735752e+02 -2.9839798e+02 3.5211749e+03 - -3.2109542e+02 -2.9697472e+02 3.5216809e+03 - -3.1398122e+02 -2.9572079e+02 3.5221924e+03 - -3.0595530e+02 -2.9464264e+02 3.5227066e+03 - -2.9695708e+02 -2.9374458e+02 3.5232203e+03 - -2.8692621e+02 -2.9302838e+02 3.5237304e+03 - -2.7580411e+02 -2.9249287e+02 3.5242333e+03 - -2.6353586e+02 -2.9213354e+02 3.5247255e+03 - -2.5007269e+02 -2.9194217e+02 3.5252034e+03 - -2.3537488e+02 -2.9190649e+02 3.5256631e+03 - -2.1941504e+02 -2.9201012e+02 3.5261006e+03 - -2.0218188e+02 -2.9223248e+02 3.5265122e+03 - -1.8368398e+02 -2.9254916e+02 3.5268937e+03 - -1.6395359e+02 -2.9293243e+02 3.5272414e+03 - -1.4304990e+02 -2.9335218e+02 3.5275516e+03 - -1.2106150e+02 -2.9377715e+02 3.5278207e+03 - -9.8107504e+01 -2.9417648e+02 3.5280457e+03 - -7.4336992e+01 -2.9452144e+02 3.5282237e+03 - -4.9926521e+01 -2.9478727e+02 3.5283525e+03 - -2.5075544e+01 -2.9495485e+02 3.5284305e+03 - -2.4067136e-09 -2.9501208e+02 3.5284566e+03 - 2.5075544e+01 -2.9495485e+02 3.5284305e+03 - 4.9926521e+01 -2.9478727e+02 3.5283525e+03 - 7.4336992e+01 -2.9452144e+02 3.5282237e+03 - 9.8107504e+01 -2.9417648e+02 3.5280457e+03 - 1.2106150e+02 -2.9377715e+02 3.5278207e+03 - 1.4304990e+02 -2.9335218e+02 3.5275516e+03 - 1.6395359e+02 -2.9293243e+02 3.5272414e+03 - 1.8368398e+02 -2.9254916e+02 3.5268937e+03 - 2.0218188e+02 -2.9223248e+02 3.5265122e+03 - 2.1941504e+02 -2.9201012e+02 3.5261006e+03 - 2.3537488e+02 -2.9190649e+02 3.5256631e+03 - 2.5007269e+02 -2.9194217e+02 3.5252034e+03 - 2.6353586e+02 -2.9213354e+02 3.5247255e+03 - 2.7580411e+02 -2.9249287e+02 3.5242333e+03 - 2.8692621e+02 -2.9302838e+02 3.5237304e+03 - 2.9695708e+02 -2.9374458e+02 3.5232203e+03 - 3.0595530e+02 -2.9464264e+02 3.5227066e+03 - 3.1398122e+02 -2.9572079e+02 3.5221924e+03 - 3.2109542e+02 -2.9697472e+02 3.5216809e+03 - 3.2735752e+02 -2.9839798e+02 3.5211749e+03 - 3.3282542e+02 -2.9998236e+02 3.5206772e+03 - 3.3755466e+02 -3.0171816e+02 3.5201903e+03 - 3.4159815e+02 -3.0359454e+02 3.5197167e+03 - 3.4500591e+02 -3.0559970e+02 3.5192587e+03 - 3.4782506e+02 -3.0772111e+02 3.5188183e+03 - 3.5009980e+02 -3.0994565e+02 3.5183974e+03 - 3.5187152e+02 -3.1225974e+02 3.5179980e+03 - 3.5317891e+02 -3.1464944e+02 3.5176216e+03 - 3.5405817e+02 -3.1710052e+02 3.5172698e+03 - 3.5454311e+02 -3.1959851e+02 3.5169440e+03 - 3.5466539e+02 -3.2212872e+02 3.5166455e+03 - 3.5445468e+02 -3.2467625e+02 3.5163754e+03 - 3.5393882e+02 -3.2722601e+02 3.5161347e+03 - 3.5314403e+02 -3.2976271e+02 3.5159243e+03 - 3.5209502e+02 -3.3227078e+02 3.5157449e+03 - 3.5081518e+02 -3.3473442e+02 3.5155973e+03 - 3.4932671e+02 -3.3713749e+02 3.5154820e+03 - 3.4765073e+02 -3.3946350e+02 3.5153993e+03 - 3.4580743e+02 -3.4169552e+02 3.5153496e+03 - 3.4381615e+02 -3.4381615e+02 3.5153330e+03 - 3.4169552e+02 -3.4580743e+02 3.5153496e+03 - 3.3946350e+02 -3.4765073e+02 3.5153993e+03 - 3.3713749e+02 -3.4932671e+02 3.5154820e+03 - 3.3473442e+02 -3.5081518e+02 3.5155973e+03 - 3.3227078e+02 -3.5209502e+02 3.5157449e+03 - 3.2976271e+02 -3.5314403e+02 3.5159243e+03 - 3.2722601e+02 -3.5393882e+02 3.5161347e+03 - 3.2467625e+02 -3.5445468e+02 3.5163754e+03 - 3.2212872e+02 -3.5466539e+02 3.5166455e+03 - 3.1959851e+02 -3.5454311e+02 3.5169440e+03 - 3.1710052e+02 -3.5405817e+02 3.5172698e+03 - 3.1464944e+02 -3.5317891e+02 3.5176216e+03 - 3.1225974e+02 -3.5187152e+02 3.5179980e+03 - 3.0994565e+02 -3.5009980e+02 3.5183974e+03 - 3.0772111e+02 -3.4782506e+02 3.5188183e+03 - 3.0559970e+02 -3.4500591e+02 3.5192587e+03 - 3.0359454e+02 -3.4159815e+02 3.5197167e+03 - 3.0171816e+02 -3.3755466e+02 3.5201903e+03 - 2.9998236e+02 -3.3282542e+02 3.5206772e+03 - 2.9839798e+02 -3.2735752e+02 3.5211749e+03 - 2.9697472e+02 -3.2109542e+02 3.5216809e+03 - 2.9572079e+02 -3.1398122e+02 3.5221924e+03 - 2.9464264e+02 -3.0595530e+02 3.5227066e+03 - 2.9374458e+02 -2.9695708e+02 3.5232203e+03 - 2.9302838e+02 -2.8692621e+02 3.5237304e+03 - 2.9249287e+02 -2.7580411e+02 3.5242333e+03 - 2.9213354e+02 -2.6353586e+02 3.5247255e+03 - 2.9194217e+02 -2.5007269e+02 3.5252034e+03 - 2.9190649e+02 -2.3537488e+02 3.5256631e+03 - 2.9201012e+02 -2.1941504e+02 3.5261006e+03 - 2.9223248e+02 -2.0218188e+02 3.5265122e+03 - 2.9254916e+02 -1.8368398e+02 3.5268937e+03 - 2.9293243e+02 -1.6395359e+02 3.5272414e+03 - 2.9335218e+02 -1.4304990e+02 3.5275516e+03 - 2.9377715e+02 -1.2106150e+02 3.5278207e+03 - 2.9417648e+02 -9.8107504e+01 3.5280457e+03 - 2.9452144e+02 -7.4336992e+01 3.5282237e+03 - 2.9478727e+02 -4.9926521e+01 3.5283525e+03 - 2.9495485e+02 -2.5075544e+01 3.5284305e+03 - 2.9501208e+02 0.0000000e+00 3.5284566e+03 - 3.3721453e+02 2.4067136e-09 3.5221962e+03 - 3.3714887e+02 2.8688700e+01 3.5221620e+03 - 3.3695663e+02 5.7118524e+01 3.5220600e+03 - 3.3665164e+02 8.5040668e+01 3.5218914e+03 - 3.3625577e+02 1.1222555e+02 3.5216585e+03 - 3.3579735e+02 1.3847027e+02 3.5213643e+03 - 3.3530918e+02 1.6360389e+02 3.5210124e+03 - 3.3482648e+02 1.8749025e+02 3.5206070e+03 - 3.3438489e+02 2.1002858e+02 3.5201528e+03 - 3.3401869e+02 2.3115206e+02 3.5196546e+03 - 3.3375940e+02 2.5082491e+02 3.5191175e+03 - 3.3363479e+02 2.6903851e+02 3.5185466e+03 - 3.3366818e+02 2.8580701e+02 3.5179473e+03 - 3.3387817e+02 3.0116283e+02 3.5173244e+03 - 3.3427866e+02 3.1515241e+02 3.5166831e+03 - 3.3487900e+02 3.2783235e+02 3.5160281e+03 - 3.3568431e+02 3.3926608e+02 3.5153641e+03 - 3.3669599e+02 3.4952109e+02 3.5146954e+03 - 3.3791208e+02 3.5866669e+02 3.5140264e+03 - 3.3932779e+02 3.6677231e+02 3.5133609e+03 - 3.4093594e+02 3.7390620e+02 3.5127028e+03 - 3.4272731e+02 3.8013450e+02 3.5120555e+03 - 3.4469107e+02 3.8552065e+02 3.5114225e+03 - 3.4681507e+02 3.9012498e+02 3.5108068e+03 - 3.4908605e+02 3.9400451e+02 3.5102113e+03 - 3.5148996e+02 3.9721293e+02 3.5096388e+03 - 3.5401201e+02 3.9980058e+02 3.5090918e+03 - 3.5663694e+02 4.0181462e+02 3.5085727e+03 - 3.5934901e+02 4.0329914e+02 3.5080835e+03 - 3.6213215e+02 4.0429537e+02 3.5076263e+03 - 3.6496997e+02 4.0484189e+02 3.5072028e+03 - 3.6784583e+02 4.0497480e+02 3.5068148e+03 - 3.7074281e+02 4.0472797e+02 3.5064638e+03 - 3.7364376e+02 4.0413321e+02 3.5061509e+03 - 3.7653124e+02 4.0322049e+02 3.5058774e+03 - 3.7938750e+02 4.0201809e+02 3.5056443e+03 - 3.8219449e+02 4.0055277e+02 3.5054525e+03 - 3.8493374e+02 3.9884998e+02 3.5053026e+03 - 3.8758637e+02 3.9693392e+02 3.5051951e+03 - 3.9013299e+02 3.9482775e+02 3.5051304e+03 - 3.9255366e+02 3.9255366e+02 3.5051089e+03 - 3.9482775e+02 3.9013299e+02 3.5051304e+03 - 3.9693392e+02 3.8758637e+02 3.5051951e+03 - 3.9884998e+02 3.8493374e+02 3.5053026e+03 - 4.0055277e+02 3.8219449e+02 3.5054525e+03 - 4.0201809e+02 3.7938750e+02 3.5056443e+03 - 4.0322049e+02 3.7653124e+02 3.5058774e+03 - 4.0413321e+02 3.7364376e+02 3.5061509e+03 - 4.0472797e+02 3.7074281e+02 3.5064638e+03 - 4.0497480e+02 3.6784583e+02 3.5068148e+03 - 4.0484189e+02 3.6496997e+02 3.5072028e+03 - 4.0429537e+02 3.6213215e+02 3.5076263e+03 - 4.0329914e+02 3.5934901e+02 3.5080835e+03 - 4.0181462e+02 3.5663694e+02 3.5085727e+03 - 3.9980058e+02 3.5401201e+02 3.5090918e+03 - 3.9721293e+02 3.5148996e+02 3.5096388e+03 - 3.9400451e+02 3.4908605e+02 3.5102113e+03 - 3.9012498e+02 3.4681507e+02 3.5108068e+03 - 3.8552065e+02 3.4469107e+02 3.5114225e+03 - 3.8013450e+02 3.4272731e+02 3.5120555e+03 - 3.7390620e+02 3.4093594e+02 3.5127028e+03 - 3.6677231e+02 3.3932779e+02 3.5133609e+03 - 3.5866669e+02 3.3791208e+02 3.5140264e+03 - 3.4952109e+02 3.3669599e+02 3.5146954e+03 - 3.3926608e+02 3.3568431e+02 3.5153641e+03 - 3.2783235e+02 3.3487900e+02 3.5160281e+03 - 3.1515241e+02 3.3427866e+02 3.5166831e+03 - 3.0116283e+02 3.3387817e+02 3.5173244e+03 - 2.8580701e+02 3.3366818e+02 3.5179473e+03 - 2.6903851e+02 3.3363479e+02 3.5185466e+03 - 2.5082491e+02 3.3375940e+02 3.5191175e+03 - 2.3115206e+02 3.3401869e+02 3.5196546e+03 - 2.1002858e+02 3.3438489e+02 3.5201528e+03 - 1.8749025e+02 3.3482648e+02 3.5206070e+03 - 1.6360389e+02 3.3530918e+02 3.5210124e+03 - 1.3847027e+02 3.3579735e+02 3.5213643e+03 - 1.1222555e+02 3.3625577e+02 3.5216585e+03 - 8.5040668e+01 3.3665164e+02 3.5218914e+03 - 5.7118524e+01 3.3695663e+02 3.5220600e+03 - 2.8688700e+01 3.3714887e+02 3.5221620e+03 - 0.0000000e+00 3.3721453e+02 3.5221962e+03 - -2.8688700e+01 3.3714887e+02 3.5221620e+03 - -5.7118524e+01 3.3695663e+02 3.5220600e+03 - -8.5040668e+01 3.3665164e+02 3.5218914e+03 - -1.1222555e+02 3.3625577e+02 3.5216585e+03 - -1.3847027e+02 3.3579735e+02 3.5213643e+03 - -1.6360389e+02 3.3530918e+02 3.5210124e+03 - -1.8749025e+02 3.3482648e+02 3.5206070e+03 - -2.1002858e+02 3.3438489e+02 3.5201528e+03 - -2.3115206e+02 3.3401869e+02 3.5196546e+03 - -2.5082491e+02 3.3375940e+02 3.5191175e+03 - -2.6903851e+02 3.3363479e+02 3.5185466e+03 - -2.8580701e+02 3.3366818e+02 3.5179473e+03 - -3.0116283e+02 3.3387817e+02 3.5173244e+03 - -3.1515241e+02 3.3427866e+02 3.5166831e+03 - -3.2783235e+02 3.3487900e+02 3.5160281e+03 - -3.3926608e+02 3.3568431e+02 3.5153641e+03 - -3.4952109e+02 3.3669599e+02 3.5146954e+03 - -3.5866669e+02 3.3791208e+02 3.5140264e+03 - -3.6677231e+02 3.3932779e+02 3.5133609e+03 - -3.7390620e+02 3.4093594e+02 3.5127028e+03 - -3.8013450e+02 3.4272731e+02 3.5120555e+03 - -3.8552065e+02 3.4469107e+02 3.5114225e+03 - -3.9012498e+02 3.4681507e+02 3.5108068e+03 - -3.9400451e+02 3.4908605e+02 3.5102113e+03 - -3.9721293e+02 3.5148996e+02 3.5096388e+03 - -3.9980058e+02 3.5401201e+02 3.5090918e+03 - -4.0181462e+02 3.5663694e+02 3.5085727e+03 - -4.0329914e+02 3.5934901e+02 3.5080835e+03 - -4.0429537e+02 3.6213215e+02 3.5076263e+03 - -4.0484189e+02 3.6496997e+02 3.5072028e+03 - -4.0497480e+02 3.6784583e+02 3.5068148e+03 - -4.0472797e+02 3.7074281e+02 3.5064638e+03 - -4.0413321e+02 3.7364376e+02 3.5061509e+03 - -4.0322049e+02 3.7653124e+02 3.5058774e+03 - -4.0201809e+02 3.7938750e+02 3.5056443e+03 - -4.0055277e+02 3.8219449e+02 3.5054525e+03 - -3.9884998e+02 3.8493374e+02 3.5053026e+03 - -3.9693392e+02 3.8758637e+02 3.5051951e+03 - -3.9482775e+02 3.9013299e+02 3.5051304e+03 - -3.9255366e+02 3.9255366e+02 3.5051089e+03 - -3.9013299e+02 3.9482775e+02 3.5051304e+03 - -3.8758637e+02 3.9693392e+02 3.5051951e+03 - -3.8493374e+02 3.9884998e+02 3.5053026e+03 - -3.8219449e+02 4.0055277e+02 3.5054525e+03 - -3.7938750e+02 4.0201809e+02 3.5056443e+03 - -3.7653124e+02 4.0322049e+02 3.5058774e+03 - -3.7364376e+02 4.0413321e+02 3.5061509e+03 - -3.7074281e+02 4.0472797e+02 3.5064638e+03 - -3.6784583e+02 4.0497480e+02 3.5068148e+03 - -3.6496997e+02 4.0484189e+02 3.5072028e+03 - -3.6213215e+02 4.0429537e+02 3.5076263e+03 - -3.5934901e+02 4.0329914e+02 3.5080835e+03 - -3.5663694e+02 4.0181462e+02 3.5085727e+03 - -3.5401201e+02 3.9980058e+02 3.5090918e+03 - -3.5148996e+02 3.9721293e+02 3.5096388e+03 - -3.4908605e+02 3.9400451e+02 3.5102113e+03 - -3.4681507e+02 3.9012498e+02 3.5108068e+03 - -3.4469107e+02 3.8552065e+02 3.5114225e+03 - -3.4272731e+02 3.8013450e+02 3.5120555e+03 - -3.4093594e+02 3.7390620e+02 3.5127028e+03 - -3.3932779e+02 3.6677231e+02 3.5133609e+03 - -3.3791208e+02 3.5866669e+02 3.5140264e+03 - -3.3669599e+02 3.4952109e+02 3.5146954e+03 - -3.3568431e+02 3.3926608e+02 3.5153641e+03 - -3.3487900e+02 3.2783235e+02 3.5160281e+03 - -3.3427866e+02 3.1515241e+02 3.5166831e+03 - -3.3387817e+02 3.0116283e+02 3.5173244e+03 - -3.3366818e+02 2.8580701e+02 3.5179473e+03 - -3.3363479e+02 2.6903851e+02 3.5185466e+03 - -3.3375940e+02 2.5082491e+02 3.5191175e+03 - -3.3401869e+02 2.3115206e+02 3.5196546e+03 - -3.3438489e+02 2.1002858e+02 3.5201528e+03 - -3.3482648e+02 1.8749025e+02 3.5206070e+03 - -3.3530918e+02 1.6360389e+02 3.5210124e+03 - -3.3579735e+02 1.3847027e+02 3.5213643e+03 - -3.3625577e+02 1.1222555e+02 3.5216585e+03 - -3.3665164e+02 8.5040668e+01 3.5218914e+03 - -3.3695663e+02 5.7118524e+01 3.5220600e+03 - -3.3714887e+02 2.8688700e+01 3.5221620e+03 - -3.3721453e+02 -2.4067136e-09 3.5221962e+03 - -3.3714887e+02 -2.8688700e+01 3.5221620e+03 - -3.3695663e+02 -5.7118524e+01 3.5220600e+03 - -3.3665164e+02 -8.5040668e+01 3.5218914e+03 - -3.3625577e+02 -1.1222555e+02 3.5216585e+03 - -3.3579735e+02 -1.3847027e+02 3.5213643e+03 - -3.3530918e+02 -1.6360389e+02 3.5210124e+03 - -3.3482648e+02 -1.8749025e+02 3.5206070e+03 - -3.3438489e+02 -2.1002858e+02 3.5201528e+03 - -3.3401869e+02 -2.3115206e+02 3.5196546e+03 - -3.3375940e+02 -2.5082491e+02 3.5191175e+03 - -3.3363479e+02 -2.6903851e+02 3.5185466e+03 - -3.3366818e+02 -2.8580701e+02 3.5179473e+03 - -3.3387817e+02 -3.0116283e+02 3.5173244e+03 - -3.3427866e+02 -3.1515241e+02 3.5166831e+03 - -3.3487900e+02 -3.2783235e+02 3.5160281e+03 - -3.3568431e+02 -3.3926608e+02 3.5153641e+03 - -3.3669599e+02 -3.4952109e+02 3.5146954e+03 - -3.3791208e+02 -3.5866669e+02 3.5140264e+03 - -3.3932779e+02 -3.6677231e+02 3.5133609e+03 - -3.4093594e+02 -3.7390620e+02 3.5127028e+03 - -3.4272731e+02 -3.8013450e+02 3.5120555e+03 - -3.4469107e+02 -3.8552065e+02 3.5114225e+03 - -3.4681507e+02 -3.9012498e+02 3.5108068e+03 - -3.4908605e+02 -3.9400451e+02 3.5102113e+03 - -3.5148996e+02 -3.9721293e+02 3.5096388e+03 - -3.5401201e+02 -3.9980058e+02 3.5090918e+03 - -3.5663694e+02 -4.0181462e+02 3.5085727e+03 - -3.5934901e+02 -4.0329914e+02 3.5080835e+03 - -3.6213215e+02 -4.0429537e+02 3.5076263e+03 - -3.6496997e+02 -4.0484189e+02 3.5072028e+03 - -3.6784583e+02 -4.0497480e+02 3.5068148e+03 - -3.7074281e+02 -4.0472797e+02 3.5064638e+03 - -3.7364376e+02 -4.0413321e+02 3.5061509e+03 - -3.7653124e+02 -4.0322049e+02 3.5058774e+03 - -3.7938750e+02 -4.0201809e+02 3.5056443e+03 - -3.8219449e+02 -4.0055277e+02 3.5054525e+03 - -3.8493374e+02 -3.9884998e+02 3.5053026e+03 - -3.8758637e+02 -3.9693392e+02 3.5051951e+03 - -3.9013299e+02 -3.9482775e+02 3.5051304e+03 - -3.9255366e+02 -3.9255366e+02 3.5051089e+03 - -3.9482775e+02 -3.9013299e+02 3.5051304e+03 - -3.9693392e+02 -3.8758637e+02 3.5051951e+03 - -3.9884998e+02 -3.8493374e+02 3.5053026e+03 - -4.0055277e+02 -3.8219449e+02 3.5054525e+03 - -4.0201809e+02 -3.7938750e+02 3.5056443e+03 - -4.0322049e+02 -3.7653124e+02 3.5058774e+03 - -4.0413321e+02 -3.7364376e+02 3.5061509e+03 - -4.0472797e+02 -3.7074281e+02 3.5064638e+03 - -4.0497480e+02 -3.6784583e+02 3.5068148e+03 - -4.0484189e+02 -3.6496997e+02 3.5072028e+03 - -4.0429537e+02 -3.6213215e+02 3.5076263e+03 - -4.0329914e+02 -3.5934901e+02 3.5080835e+03 - -4.0181462e+02 -3.5663694e+02 3.5085727e+03 - -3.9980058e+02 -3.5401201e+02 3.5090918e+03 - -3.9721293e+02 -3.5148996e+02 3.5096388e+03 - -3.9400451e+02 -3.4908605e+02 3.5102113e+03 - -3.9012498e+02 -3.4681507e+02 3.5108068e+03 - -3.8552065e+02 -3.4469107e+02 3.5114225e+03 - -3.8013450e+02 -3.4272731e+02 3.5120555e+03 - -3.7390620e+02 -3.4093594e+02 3.5127028e+03 - -3.6677231e+02 -3.3932779e+02 3.5133609e+03 - -3.5866669e+02 -3.3791208e+02 3.5140264e+03 - -3.4952109e+02 -3.3669599e+02 3.5146954e+03 - -3.3926608e+02 -3.3568431e+02 3.5153641e+03 - -3.2783235e+02 -3.3487900e+02 3.5160281e+03 - -3.1515241e+02 -3.3427866e+02 3.5166831e+03 - -3.0116283e+02 -3.3387817e+02 3.5173244e+03 - -2.8580701e+02 -3.3366818e+02 3.5179473e+03 - -2.6903851e+02 -3.3363479e+02 3.5185466e+03 - -2.5082491e+02 -3.3375940e+02 3.5191175e+03 - -2.3115206e+02 -3.3401869e+02 3.5196546e+03 - -2.1002858e+02 -3.3438489e+02 3.5201528e+03 - -1.8749025e+02 -3.3482648e+02 3.5206070e+03 - -1.6360389e+02 -3.3530918e+02 3.5210124e+03 - -1.3847027e+02 -3.3579735e+02 3.5213643e+03 - -1.1222555e+02 -3.3625577e+02 3.5216585e+03 - -8.5040668e+01 -3.3665164e+02 3.5218914e+03 - -5.7118524e+01 -3.3695663e+02 3.5220600e+03 - -2.8688700e+01 -3.3714887e+02 3.5221620e+03 - -2.4067136e-09 -3.3721453e+02 3.5221962e+03 - 2.8688700e+01 -3.3714887e+02 3.5221620e+03 - 5.7118524e+01 -3.3695663e+02 3.5220600e+03 - 8.5040668e+01 -3.3665164e+02 3.5218914e+03 - 1.1222555e+02 -3.3625577e+02 3.5216585e+03 - 1.3847027e+02 -3.3579735e+02 3.5213643e+03 - 1.6360389e+02 -3.3530918e+02 3.5210124e+03 - 1.8749025e+02 -3.3482648e+02 3.5206070e+03 - 2.1002858e+02 -3.3438489e+02 3.5201528e+03 - 2.3115206e+02 -3.3401869e+02 3.5196546e+03 - 2.5082491e+02 -3.3375940e+02 3.5191175e+03 - 2.6903851e+02 -3.3363479e+02 3.5185466e+03 - 2.8580701e+02 -3.3366818e+02 3.5179473e+03 - 3.0116283e+02 -3.3387817e+02 3.5173244e+03 - 3.1515241e+02 -3.3427866e+02 3.5166831e+03 - 3.2783235e+02 -3.3487900e+02 3.5160281e+03 - 3.3926608e+02 -3.3568431e+02 3.5153641e+03 - 3.4952109e+02 -3.3669599e+02 3.5146954e+03 - 3.5866669e+02 -3.3791208e+02 3.5140264e+03 - 3.6677231e+02 -3.3932779e+02 3.5133609e+03 - 3.7390620e+02 -3.4093594e+02 3.5127028e+03 - 3.8013450e+02 -3.4272731e+02 3.5120555e+03 - 3.8552065e+02 -3.4469107e+02 3.5114225e+03 - 3.9012498e+02 -3.4681507e+02 3.5108068e+03 - 3.9400451e+02 -3.4908605e+02 3.5102113e+03 - 3.9721293e+02 -3.5148996e+02 3.5096388e+03 - 3.9980058e+02 -3.5401201e+02 3.5090918e+03 - 4.0181462e+02 -3.5663694e+02 3.5085727e+03 - 4.0329914e+02 -3.5934901e+02 3.5080835e+03 - 4.0429537e+02 -3.6213215e+02 3.5076263e+03 - 4.0484189e+02 -3.6496997e+02 3.5072028e+03 - 4.0497480e+02 -3.6784583e+02 3.5068148e+03 - 4.0472797e+02 -3.7074281e+02 3.5064638e+03 - 4.0413321e+02 -3.7364376e+02 3.5061509e+03 - 4.0322049e+02 -3.7653124e+02 3.5058774e+03 - 4.0201809e+02 -3.7938750e+02 3.5056443e+03 - 4.0055277e+02 -3.8219449e+02 3.5054525e+03 - 3.9884998e+02 -3.8493374e+02 3.5053026e+03 - 3.9693392e+02 -3.8758637e+02 3.5051951e+03 - 3.9482775e+02 -3.9013299e+02 3.5051304e+03 - 3.9255366e+02 -3.9255366e+02 3.5051089e+03 - 3.9013299e+02 -3.9482775e+02 3.5051304e+03 - 3.8758637e+02 -3.9693392e+02 3.5051951e+03 - 3.8493374e+02 -3.9884998e+02 3.5053026e+03 - 3.8219449e+02 -4.0055277e+02 3.5054525e+03 - 3.7938750e+02 -4.0201809e+02 3.5056443e+03 - 3.7653124e+02 -4.0322049e+02 3.5058774e+03 - 3.7364376e+02 -4.0413321e+02 3.5061509e+03 - 3.7074281e+02 -4.0472797e+02 3.5064638e+03 - 3.6784583e+02 -4.0497480e+02 3.5068148e+03 - 3.6496997e+02 -4.0484189e+02 3.5072028e+03 - 3.6213215e+02 -4.0429537e+02 3.5076263e+03 - 3.5934901e+02 -4.0329914e+02 3.5080835e+03 - 3.5663694e+02 -4.0181462e+02 3.5085727e+03 - 3.5401201e+02 -3.9980058e+02 3.5090918e+03 - 3.5148996e+02 -3.9721293e+02 3.5096388e+03 - 3.4908605e+02 -3.9400451e+02 3.5102113e+03 - 3.4681507e+02 -3.9012498e+02 3.5108068e+03 - 3.4469107e+02 -3.8552065e+02 3.5114225e+03 - 3.4272731e+02 -3.8013450e+02 3.5120555e+03 - 3.4093594e+02 -3.7390620e+02 3.5127028e+03 - 3.3932779e+02 -3.6677231e+02 3.5133609e+03 - 3.3791208e+02 -3.5866669e+02 3.5140264e+03 - 3.3669599e+02 -3.4952109e+02 3.5146954e+03 - 3.3568431e+02 -3.3926608e+02 3.5153641e+03 - 3.3487900e+02 -3.2783235e+02 3.5160281e+03 - 3.3427866e+02 -3.1515241e+02 3.5166831e+03 - 3.3387817e+02 -3.0116283e+02 3.5173244e+03 - 3.3366818e+02 -2.8580701e+02 3.5179473e+03 - 3.3363479e+02 -2.6903851e+02 3.5185466e+03 - 3.3375940e+02 -2.5082491e+02 3.5191175e+03 - 3.3401869e+02 -2.3115206e+02 3.5196546e+03 - 3.3438489e+02 -2.1002858e+02 3.5201528e+03 - 3.3482648e+02 -1.8749025e+02 3.5206070e+03 - 3.3530918e+02 -1.6360389e+02 3.5210124e+03 - 3.3579735e+02 -1.3847027e+02 3.5213643e+03 - 3.3625577e+02 -1.1222555e+02 3.5216585e+03 - 3.3665164e+02 -8.5040668e+01 3.5218914e+03 - 3.3695663e+02 -5.7118524e+01 3.5220600e+03 - 3.3714887e+02 -2.8688700e+01 3.5221620e+03 - 3.3721453e+02 0.0000000e+00 3.5221962e+03 - 3.7943912e+02 2.4067136e-09 3.5150826e+03 - 3.7936496e+02 3.2314643e+01 3.5150392e+03 - 3.7914779e+02 6.4335162e+01 3.5149097e+03 - 3.7880322e+02 9.5779038e+01 3.5146959e+03 - 3.7835587e+02 1.2638588e+02 3.5144005e+03 - 3.7783762e+02 1.5592599e+02 3.5140276e+03 - 3.7728535e+02 1.8420633e+02 3.5135817e+03 - 3.7673862e+02 2.1107373e+02 3.5130683e+03 - 3.7623738e+02 2.3641543e+02 3.5124933e+03 - 3.7582004e+02 2.6015735e+02 3.5118629e+03 - 3.7552186e+02 2.8226064e+02 3.5111837e+03 - 3.7537386e+02 3.0271717e+02 3.5104623e+03 - 3.7540206e+02 3.2154442e+02 3.5097051e+03 - 3.7562724e+02 3.3878035e+02 3.5089187e+03 - 3.7606486e+02 3.5447852e+02 3.5081093e+03 - 3.7672536e+02 3.6870371e+02 3.5072830e+03 - 3.7761453e+02 3.8152815e+02 3.5064457e+03 - 3.7873394e+02 3.9302841e+02 3.5056028e+03 - 3.8008153e+02 4.0328292e+02 3.5047597e+03 - 3.8165207e+02 4.1237003e+02 3.5039213e+03 - 3.8343770e+02 4.2036665e+02 3.5030923e+03 - 3.8542833e+02 4.2734717e+02 3.5022772e+03 - 3.8761204e+02 4.3338286e+02 3.5014802e+03 - 3.8997546e+02 4.3854143e+02 3.5007050e+03 - 3.9250403e+02 4.4288684e+02 3.4999555e+03 - 3.9518220e+02 4.4647928e+02 3.4992348e+03 - 3.9799368e+02 4.4937517e+02 3.4985464e+03 - 4.0092156e+02 4.5162736e+02 3.4978929e+03 - 4.0394842e+02 4.5328529e+02 3.4972773e+03 - 4.0705639e+02 4.5439518e+02 3.4967018e+03 - 4.1022727e+02 4.5500031e+02 3.4961689e+03 - 4.1344249e+02 4.5514123e+02 3.4956806e+03 - 4.1668318e+02 4.5485597e+02 3.4952388e+03 - 4.1993012e+02 4.5418032e+02 3.4948450e+03 - 4.2316377e+02 4.5314799e+02 3.4945008e+03 - 4.2636421e+02 4.5179083e+02 3.4942075e+03 - 4.2951113e+02 4.5013904e+02 3.4939660e+03 - 4.3258374e+02 4.4822129e+02 3.4937773e+03 - 4.3556075e+02 4.4606492e+02 3.4936420e+03 - 4.3842029e+02 4.4369608e+02 3.4935606e+03 - 4.4113983e+02 4.4113983e+02 3.4935335e+03 - 4.4369608e+02 4.3842029e+02 3.4935606e+03 - 4.4606492e+02 4.3556075e+02 3.4936420e+03 - 4.4822129e+02 4.3258374e+02 3.4937773e+03 - 4.5013904e+02 4.2951113e+02 3.4939660e+03 - 4.5179083e+02 4.2636421e+02 3.4942075e+03 - 4.5314799e+02 4.2316377e+02 3.4945008e+03 - 4.5418032e+02 4.1993012e+02 3.4948450e+03 - 4.5485597e+02 4.1668318e+02 3.4952388e+03 - 4.5514123e+02 4.1344249e+02 3.4956806e+03 - 4.5500031e+02 4.1022727e+02 3.4961689e+03 - 4.5439518e+02 4.0705639e+02 3.4967018e+03 - 4.5328529e+02 4.0394842e+02 3.4972773e+03 - 4.5162736e+02 4.0092156e+02 3.4978929e+03 - 4.4937517e+02 3.9799368e+02 3.4985464e+03 - 4.4647928e+02 3.9518220e+02 3.4992348e+03 - 4.4288684e+02 3.9250403e+02 3.4999555e+03 - 4.3854143e+02 3.8997546e+02 3.5007050e+03 - 4.3338286e+02 3.8761204e+02 3.5014802e+03 - 4.2734717e+02 3.8542833e+02 3.5022772e+03 - 4.2036665e+02 3.8343770e+02 3.5030923e+03 - 4.1237003e+02 3.8165207e+02 3.5039213e+03 - 4.0328292e+02 3.8008153e+02 3.5047597e+03 - 3.9302841e+02 3.7873394e+02 3.5056028e+03 - 3.8152815e+02 3.7761453e+02 3.5064457e+03 - 3.6870371e+02 3.7672536e+02 3.5072830e+03 - 3.5447852e+02 3.7606486e+02 3.5081093e+03 - 3.3878035e+02 3.7562724e+02 3.5089187e+03 - 3.2154442e+02 3.7540206e+02 3.5097051e+03 - 3.0271717e+02 3.7537386e+02 3.5104623e+03 - 2.8226064e+02 3.7552186e+02 3.5111837e+03 - 2.6015735e+02 3.7582004e+02 3.5118629e+03 - 2.3641543e+02 3.7623738e+02 3.5124933e+03 - 2.1107373e+02 3.7673862e+02 3.5130683e+03 - 1.8420633e+02 3.7728535e+02 3.5135817e+03 - 1.5592599e+02 3.7783762e+02 3.5140276e+03 - 1.2638588e+02 3.7835587e+02 3.5144005e+03 - 9.5779038e+01 3.7880322e+02 3.5146959e+03 - 6.4335162e+01 3.7914779e+02 3.5149097e+03 - 3.2314643e+01 3.7936496e+02 3.5150392e+03 - 0.0000000e+00 3.7943912e+02 3.5150826e+03 - -3.2314643e+01 3.7936496e+02 3.5150392e+03 - -6.4335162e+01 3.7914779e+02 3.5149097e+03 - -9.5779038e+01 3.7880322e+02 3.5146959e+03 - -1.2638588e+02 3.7835587e+02 3.5144005e+03 - -1.5592599e+02 3.7783762e+02 3.5140276e+03 - -1.8420633e+02 3.7728535e+02 3.5135817e+03 - -2.1107373e+02 3.7673862e+02 3.5130683e+03 - -2.3641543e+02 3.7623738e+02 3.5124933e+03 - -2.6015735e+02 3.7582004e+02 3.5118629e+03 - -2.8226064e+02 3.7552186e+02 3.5111837e+03 - -3.0271717e+02 3.7537386e+02 3.5104623e+03 - -3.2154442e+02 3.7540206e+02 3.5097051e+03 - -3.3878035e+02 3.7562724e+02 3.5089187e+03 - -3.5447852e+02 3.7606486e+02 3.5081093e+03 - -3.6870371e+02 3.7672536e+02 3.5072830e+03 - -3.8152815e+02 3.7761453e+02 3.5064457e+03 - -3.9302841e+02 3.7873394e+02 3.5056028e+03 - -4.0328292e+02 3.8008153e+02 3.5047597e+03 - -4.1237003e+02 3.8165207e+02 3.5039213e+03 - -4.2036665e+02 3.8343770e+02 3.5030923e+03 - -4.2734717e+02 3.8542833e+02 3.5022772e+03 - -4.3338286e+02 3.8761204e+02 3.5014802e+03 - -4.3854143e+02 3.8997546e+02 3.5007050e+03 - -4.4288684e+02 3.9250403e+02 3.4999555e+03 - -4.4647928e+02 3.9518220e+02 3.4992348e+03 - -4.4937517e+02 3.9799368e+02 3.4985464e+03 - -4.5162736e+02 4.0092156e+02 3.4978929e+03 - -4.5328529e+02 4.0394842e+02 3.4972773e+03 - -4.5439518e+02 4.0705639e+02 3.4967018e+03 - -4.5500031e+02 4.1022727e+02 3.4961689e+03 - -4.5514123e+02 4.1344249e+02 3.4956806e+03 - -4.5485597e+02 4.1668318e+02 3.4952388e+03 - -4.5418032e+02 4.1993012e+02 3.4948450e+03 - -4.5314799e+02 4.2316377e+02 3.4945008e+03 - -4.5179083e+02 4.2636421e+02 3.4942075e+03 - -4.5013904e+02 4.2951113e+02 3.4939660e+03 - -4.4822129e+02 4.3258374e+02 3.4937773e+03 - -4.4606492e+02 4.3556075e+02 3.4936420e+03 - -4.4369608e+02 4.3842029e+02 3.4935606e+03 - -4.4113983e+02 4.4113983e+02 3.4935335e+03 - -4.3842029e+02 4.4369608e+02 3.4935606e+03 - -4.3556075e+02 4.4606492e+02 3.4936420e+03 - -4.3258374e+02 4.4822129e+02 3.4937773e+03 - -4.2951113e+02 4.5013904e+02 3.4939660e+03 - -4.2636421e+02 4.5179083e+02 3.4942075e+03 - -4.2316377e+02 4.5314799e+02 3.4945008e+03 - -4.1993012e+02 4.5418032e+02 3.4948450e+03 - -4.1668318e+02 4.5485597e+02 3.4952388e+03 - -4.1344249e+02 4.5514123e+02 3.4956806e+03 - -4.1022727e+02 4.5500031e+02 3.4961689e+03 - -4.0705639e+02 4.5439518e+02 3.4967018e+03 - -4.0394842e+02 4.5328529e+02 3.4972773e+03 - -4.0092156e+02 4.5162736e+02 3.4978929e+03 - -3.9799368e+02 4.4937517e+02 3.4985464e+03 - -3.9518220e+02 4.4647928e+02 3.4992348e+03 - -3.9250403e+02 4.4288684e+02 3.4999555e+03 - -3.8997546e+02 4.3854143e+02 3.5007050e+03 - -3.8761204e+02 4.3338286e+02 3.5014802e+03 - -3.8542833e+02 4.2734717e+02 3.5022772e+03 - -3.8343770e+02 4.2036665e+02 3.5030923e+03 - -3.8165207e+02 4.1237003e+02 3.5039213e+03 - -3.8008153e+02 4.0328292e+02 3.5047597e+03 - -3.7873394e+02 3.9302841e+02 3.5056028e+03 - -3.7761453e+02 3.8152815e+02 3.5064457e+03 - -3.7672536e+02 3.6870371e+02 3.5072830e+03 - -3.7606486e+02 3.5447852e+02 3.5081093e+03 - -3.7562724e+02 3.3878035e+02 3.5089187e+03 - -3.7540206e+02 3.2154442e+02 3.5097051e+03 - -3.7537386e+02 3.0271717e+02 3.5104623e+03 - -3.7552186e+02 2.8226064e+02 3.5111837e+03 - -3.7582004e+02 2.6015735e+02 3.5118629e+03 - -3.7623738e+02 2.3641543e+02 3.5124933e+03 - -3.7673862e+02 2.1107373e+02 3.5130683e+03 - -3.7728535e+02 1.8420633e+02 3.5135817e+03 - -3.7783762e+02 1.5592599e+02 3.5140276e+03 - -3.7835587e+02 1.2638588e+02 3.5144005e+03 - -3.7880322e+02 9.5779038e+01 3.5146959e+03 - -3.7914779e+02 6.4335162e+01 3.5149097e+03 - -3.7936496e+02 3.2314643e+01 3.5150392e+03 - -3.7943912e+02 0.0000000e+00 3.5150826e+03 - -3.7936496e+02 -3.2314643e+01 3.5150392e+03 - -3.7914779e+02 -6.4335162e+01 3.5149097e+03 - -3.7880322e+02 -9.5779038e+01 3.5146959e+03 - -3.7835587e+02 -1.2638588e+02 3.5144005e+03 - -3.7783762e+02 -1.5592599e+02 3.5140276e+03 - -3.7728535e+02 -1.8420633e+02 3.5135817e+03 - -3.7673862e+02 -2.1107373e+02 3.5130683e+03 - -3.7623738e+02 -2.3641543e+02 3.5124933e+03 - -3.7582004e+02 -2.6015735e+02 3.5118629e+03 - -3.7552186e+02 -2.8226064e+02 3.5111837e+03 - -3.7537386e+02 -3.0271717e+02 3.5104623e+03 - -3.7540206e+02 -3.2154442e+02 3.5097051e+03 - -3.7562724e+02 -3.3878035e+02 3.5089187e+03 - -3.7606486e+02 -3.5447852e+02 3.5081093e+03 - -3.7672536e+02 -3.6870371e+02 3.5072830e+03 - -3.7761453e+02 -3.8152815e+02 3.5064457e+03 - -3.7873394e+02 -3.9302841e+02 3.5056028e+03 - -3.8008153e+02 -4.0328292e+02 3.5047597e+03 - -3.8165207e+02 -4.1237003e+02 3.5039213e+03 - -3.8343770e+02 -4.2036665e+02 3.5030923e+03 - -3.8542833e+02 -4.2734717e+02 3.5022772e+03 - -3.8761204e+02 -4.3338286e+02 3.5014802e+03 - -3.8997546e+02 -4.3854143e+02 3.5007050e+03 - -3.9250403e+02 -4.4288684e+02 3.4999555e+03 - -3.9518220e+02 -4.4647928e+02 3.4992348e+03 - -3.9799368e+02 -4.4937517e+02 3.4985464e+03 - -4.0092156e+02 -4.5162736e+02 3.4978929e+03 - -4.0394842e+02 -4.5328529e+02 3.4972773e+03 - -4.0705639e+02 -4.5439518e+02 3.4967018e+03 - -4.1022727e+02 -4.5500031e+02 3.4961689e+03 - -4.1344249e+02 -4.5514123e+02 3.4956806e+03 - -4.1668318e+02 -4.5485597e+02 3.4952388e+03 - -4.1993012e+02 -4.5418032e+02 3.4948450e+03 - -4.2316377e+02 -4.5314799e+02 3.4945008e+03 - -4.2636421e+02 -4.5179083e+02 3.4942075e+03 - -4.2951113e+02 -4.5013904e+02 3.4939660e+03 - -4.3258374e+02 -4.4822129e+02 3.4937773e+03 - -4.3556075e+02 -4.4606492e+02 3.4936420e+03 - -4.3842029e+02 -4.4369608e+02 3.4935606e+03 - -4.4113983e+02 -4.4113983e+02 3.4935335e+03 - -4.4369608e+02 -4.3842029e+02 3.4935606e+03 - -4.4606492e+02 -4.3556075e+02 3.4936420e+03 - -4.4822129e+02 -4.3258374e+02 3.4937773e+03 - -4.5013904e+02 -4.2951113e+02 3.4939660e+03 - -4.5179083e+02 -4.2636421e+02 3.4942075e+03 - -4.5314799e+02 -4.2316377e+02 3.4945008e+03 - -4.5418032e+02 -4.1993012e+02 3.4948450e+03 - -4.5485597e+02 -4.1668318e+02 3.4952388e+03 - -4.5514123e+02 -4.1344249e+02 3.4956806e+03 - -4.5500031e+02 -4.1022727e+02 3.4961689e+03 - -4.5439518e+02 -4.0705639e+02 3.4967018e+03 - -4.5328529e+02 -4.0394842e+02 3.4972773e+03 - -4.5162736e+02 -4.0092156e+02 3.4978929e+03 - -4.4937517e+02 -3.9799368e+02 3.4985464e+03 - -4.4647928e+02 -3.9518220e+02 3.4992348e+03 - -4.4288684e+02 -3.9250403e+02 3.4999555e+03 - -4.3854143e+02 -3.8997546e+02 3.5007050e+03 - -4.3338286e+02 -3.8761204e+02 3.5014802e+03 - -4.2734717e+02 -3.8542833e+02 3.5022772e+03 - -4.2036665e+02 -3.8343770e+02 3.5030923e+03 - -4.1237003e+02 -3.8165207e+02 3.5039213e+03 - -4.0328292e+02 -3.8008153e+02 3.5047597e+03 - -3.9302841e+02 -3.7873394e+02 3.5056028e+03 - -3.8152815e+02 -3.7761453e+02 3.5064457e+03 - -3.6870371e+02 -3.7672536e+02 3.5072830e+03 - -3.5447852e+02 -3.7606486e+02 3.5081093e+03 - -3.3878035e+02 -3.7562724e+02 3.5089187e+03 - -3.2154442e+02 -3.7540206e+02 3.5097051e+03 - -3.0271717e+02 -3.7537386e+02 3.5104623e+03 - -2.8226064e+02 -3.7552186e+02 3.5111837e+03 - -2.6015735e+02 -3.7582004e+02 3.5118629e+03 - -2.3641543e+02 -3.7623738e+02 3.5124933e+03 - -2.1107373e+02 -3.7673862e+02 3.5130683e+03 - -1.8420633e+02 -3.7728535e+02 3.5135817e+03 - -1.5592599e+02 -3.7783762e+02 3.5140276e+03 - -1.2638588e+02 -3.7835587e+02 3.5144005e+03 - -9.5779038e+01 -3.7880322e+02 3.5146959e+03 - -6.4335162e+01 -3.7914779e+02 3.5149097e+03 - -3.2314643e+01 -3.7936496e+02 3.5150392e+03 - -2.4067136e-09 -3.7943912e+02 3.5150826e+03 - 3.2314643e+01 -3.7936496e+02 3.5150392e+03 - 6.4335162e+01 -3.7914779e+02 3.5149097e+03 - 9.5779038e+01 -3.7880322e+02 3.5146959e+03 - 1.2638588e+02 -3.7835587e+02 3.5144005e+03 - 1.5592599e+02 -3.7783762e+02 3.5140276e+03 - 1.8420633e+02 -3.7728535e+02 3.5135817e+03 - 2.1107373e+02 -3.7673862e+02 3.5130683e+03 - 2.3641543e+02 -3.7623738e+02 3.5124933e+03 - 2.6015735e+02 -3.7582004e+02 3.5118629e+03 - 2.8226064e+02 -3.7552186e+02 3.5111837e+03 - 3.0271717e+02 -3.7537386e+02 3.5104623e+03 - 3.2154442e+02 -3.7540206e+02 3.5097051e+03 - 3.3878035e+02 -3.7562724e+02 3.5089187e+03 - 3.5447852e+02 -3.7606486e+02 3.5081093e+03 - 3.6870371e+02 -3.7672536e+02 3.5072830e+03 - 3.8152815e+02 -3.7761453e+02 3.5064457e+03 - 3.9302841e+02 -3.7873394e+02 3.5056028e+03 - 4.0328292e+02 -3.8008153e+02 3.5047597e+03 - 4.1237003e+02 -3.8165207e+02 3.5039213e+03 - 4.2036665e+02 -3.8343770e+02 3.5030923e+03 - 4.2734717e+02 -3.8542833e+02 3.5022772e+03 - 4.3338286e+02 -3.8761204e+02 3.5014802e+03 - 4.3854143e+02 -3.8997546e+02 3.5007050e+03 - 4.4288684e+02 -3.9250403e+02 3.4999555e+03 - 4.4647928e+02 -3.9518220e+02 3.4992348e+03 - 4.4937517e+02 -3.9799368e+02 3.4985464e+03 - 4.5162736e+02 -4.0092156e+02 3.4978929e+03 - 4.5328529e+02 -4.0394842e+02 3.4972773e+03 - 4.5439518e+02 -4.0705639e+02 3.4967018e+03 - 4.5500031e+02 -4.1022727e+02 3.4961689e+03 - 4.5514123e+02 -4.1344249e+02 3.4956806e+03 - 4.5485597e+02 -4.1668318e+02 3.4952388e+03 - 4.5418032e+02 -4.1993012e+02 3.4948450e+03 - 4.5314799e+02 -4.2316377e+02 3.4945008e+03 - 4.5179083e+02 -4.2636421e+02 3.4942075e+03 - 4.5013904e+02 -4.2951113e+02 3.4939660e+03 - 4.4822129e+02 -4.3258374e+02 3.4937773e+03 - 4.4606492e+02 -4.3556075e+02 3.4936420e+03 - 4.4369608e+02 -4.3842029e+02 3.4935606e+03 - 4.4113983e+02 -4.4113983e+02 3.4935335e+03 - 4.3842029e+02 -4.4369608e+02 3.4935606e+03 - 4.3556075e+02 -4.4606492e+02 3.4936420e+03 - 4.3258374e+02 -4.4822129e+02 3.4937773e+03 - 4.2951113e+02 -4.5013904e+02 3.4939660e+03 - 4.2636421e+02 -4.5179083e+02 3.4942075e+03 - 4.2316377e+02 -4.5314799e+02 3.4945008e+03 - 4.1993012e+02 -4.5418032e+02 3.4948450e+03 - 4.1668318e+02 -4.5485597e+02 3.4952388e+03 - 4.1344249e+02 -4.5514123e+02 3.4956806e+03 - 4.1022727e+02 -4.5500031e+02 3.4961689e+03 - 4.0705639e+02 -4.5439518e+02 3.4967018e+03 - 4.0394842e+02 -4.5328529e+02 3.4972773e+03 - 4.0092156e+02 -4.5162736e+02 3.4978929e+03 - 3.9799368e+02 -4.4937517e+02 3.4985464e+03 - 3.9518220e+02 -4.4647928e+02 3.4992348e+03 - 3.9250403e+02 -4.4288684e+02 3.4999555e+03 - 3.8997546e+02 -4.3854143e+02 3.5007050e+03 - 3.8761204e+02 -4.3338286e+02 3.5014802e+03 - 3.8542833e+02 -4.2734717e+02 3.5022772e+03 - 3.8343770e+02 -4.2036665e+02 3.5030923e+03 - 3.8165207e+02 -4.1237003e+02 3.5039213e+03 - 3.8008153e+02 -4.0328292e+02 3.5047597e+03 - 3.7873394e+02 -3.9302841e+02 3.5056028e+03 - 3.7761453e+02 -3.8152815e+02 3.5064457e+03 - 3.7672536e+02 -3.6870371e+02 3.5072830e+03 - 3.7606486e+02 -3.5447852e+02 3.5081093e+03 - 3.7562724e+02 -3.3878035e+02 3.5089187e+03 - 3.7540206e+02 -3.2154442e+02 3.5097051e+03 - 3.7537386e+02 -3.0271717e+02 3.5104623e+03 - 3.7552186e+02 -2.8226064e+02 3.5111837e+03 - 3.7582004e+02 -2.6015735e+02 3.5118629e+03 - 3.7623738e+02 -2.3641543e+02 3.5124933e+03 - 3.7673862e+02 -2.1107373e+02 3.5130683e+03 - 3.7728535e+02 -1.8420633e+02 3.5135817e+03 - 3.7783762e+02 -1.5592599e+02 3.5140276e+03 - 3.7835587e+02 -1.2638588e+02 3.5144005e+03 - 3.7880322e+02 -9.5779038e+01 3.5146959e+03 - 3.7914779e+02 -6.4335162e+01 3.5149097e+03 - 3.7936496e+02 -3.2314643e+01 3.5150392e+03 - 3.7943912e+02 2.4067136e-09 3.5150826e+03 - 4.2168801e+02 0.0000000e+00 3.5071088e+03 - 4.2160524e+02 3.5955249e+01 3.5070551e+03 - 4.2136288e+02 7.1580037e+01 3.5068948e+03 - 4.2097829e+02 1.0655715e+02 3.5066301e+03 - 4.2047886e+02 1.4059460e+02 3.5062646e+03 - 4.1990002e+02 1.7343535e+02 3.5058033e+03 - 4.1928271e+02 2.0486404e+02 3.5052521e+03 - 4.1867077e+02 2.3471050e+02 3.5046177e+03 - 4.1810846e+02 2.6285025e+02 3.5039076e+03 - 4.1763823e+02 2.8920237e+02 3.5031297e+03 - 4.1729901e+02 3.1372547e+02 3.5022920e+03 - 4.1712496e+02 3.3641249e+02 3.5014027e+03 - 4.1714477e+02 3.5728486e+02 3.5004699e+03 - 4.1738127e+02 3.7638660e+02 3.4995016e+03 - 4.1785150e+02 3.9377888e+02 3.4985056e+03 - 4.1856695e+02 4.0953504e+02 3.4974893e+03 - 4.1953403e+02 4.2373643e+02 3.4964597e+03 - 4.2075456e+02 4.3646894e+02 3.4954238e+03 - 4.2222639e+02 4.4782022e+02 3.4943880e+03 - 4.2394394e+02 4.5787769e+02 3.4933582e+03 - 4.2589874e+02 4.6672688e+02 3.4923403e+03 - 4.2807989e+02 4.7445046e+02 3.4913397e+03 - 4.3047453e+02 4.8112747e+02 3.4903614e+03 - 4.3306817e+02 4.8683294e+02 3.4894101e+03 - 4.3584503e+02 4.9163770e+02 3.4884903e+03 - 4.3878822e+02 4.9560835e+02 3.4876061e+03 - 4.4188003e+02 4.9880731e+02 3.4867614e+03 - 4.4510201e+02 5.0129306e+02 3.4859597e+03 - 4.4843513e+02 5.0312029e+02 3.4852044e+03 - 4.5185984e+02 5.0434018e+02 3.4844985e+03 - 4.5535617e+02 5.0500068e+02 3.4838447e+03 - 4.5890370e+02 5.0514671e+02 3.4832456e+03 - 4.6248163e+02 5.0482050e+02 3.4827035e+03 - 4.6606874e+02 5.0406176e+02 3.4822204e+03 - 4.6964340e+02 5.0290797e+02 3.4817982e+03 - 4.7318353e+02 5.0139458e+02 3.4814382e+03 - 4.7666656e+02 4.9955520e+02 3.4811420e+03 - 4.8006938e+02 4.9742180e+02 3.4809104e+03 - 4.8336826e+02 4.9502487e+02 3.4807444e+03 - 4.8653882e+02 4.9239359e+02 3.4806446e+03 - 4.8955593e+02 4.8955593e+02 3.4806113e+03 - 4.9239359e+02 4.8653882e+02 3.4806446e+03 - 4.9502487e+02 4.8336826e+02 3.4807444e+03 - 4.9742180e+02 4.8006938e+02 3.4809104e+03 - 4.9955520e+02 4.7666656e+02 3.4811420e+03 - 5.0139458e+02 4.7318353e+02 3.4814382e+03 - 5.0290797e+02 4.6964340e+02 3.4817982e+03 - 5.0406176e+02 4.6606874e+02 3.4822204e+03 - 5.0482050e+02 4.6248163e+02 3.4827035e+03 - 5.0514671e+02 4.5890370e+02 3.4832456e+03 - 5.0500068e+02 4.5535617e+02 3.4838447e+03 - 5.0434018e+02 4.5185984e+02 3.4844985e+03 - 5.0312029e+02 4.4843513e+02 3.4852044e+03 - 5.0129306e+02 4.4510201e+02 3.4859597e+03 - 4.9880731e+02 4.4188003e+02 3.4867614e+03 - 4.9560835e+02 4.3878822e+02 3.4876061e+03 - 4.9163770e+02 4.3584503e+02 3.4884903e+03 - 4.8683294e+02 4.3306817e+02 3.4894101e+03 - 4.8112747e+02 4.3047453e+02 3.4903614e+03 - 4.7445046e+02 4.2807989e+02 3.4913397e+03 - 4.6672688e+02 4.2589874e+02 3.4923403e+03 - 4.5787769e+02 4.2394394e+02 3.4933582e+03 - 4.4782022e+02 4.2222639e+02 3.4943880e+03 - 4.3646894e+02 4.2075456e+02 3.4954238e+03 - 4.2373643e+02 4.1953403e+02 3.4964597e+03 - 4.0953504e+02 4.1856695e+02 3.4974893e+03 - 3.9377888e+02 4.1785150e+02 3.4985056e+03 - 3.7638660e+02 4.1738127e+02 3.4995016e+03 - 3.5728486e+02 4.1714477e+02 3.5004699e+03 - 3.3641249e+02 4.1712496e+02 3.5014027e+03 - 3.1372547e+02 4.1729901e+02 3.5022920e+03 - 2.8920237e+02 4.1763823e+02 3.5031297e+03 - 2.6285025e+02 4.1810846e+02 3.5039076e+03 - 2.3471050e+02 4.1867077e+02 3.5046177e+03 - 2.0486404e+02 4.1928271e+02 3.5052521e+03 - 1.7343535e+02 4.1990002e+02 3.5058033e+03 - 1.4059460e+02 4.2047886e+02 3.5062646e+03 - 1.0655715e+02 4.2097829e+02 3.5066301e+03 - 7.1580037e+01 4.2136288e+02 3.5068948e+03 - 3.5955249e+01 4.2160524e+02 3.5070551e+03 - 0.0000000e+00 4.2168801e+02 3.5071088e+03 - -3.5955249e+01 4.2160524e+02 3.5070551e+03 - -7.1580037e+01 4.2136288e+02 3.5068948e+03 - -1.0655715e+02 4.2097829e+02 3.5066301e+03 - -1.4059460e+02 4.2047886e+02 3.5062646e+03 - -1.7343535e+02 4.1990002e+02 3.5058033e+03 - -2.0486404e+02 4.1928271e+02 3.5052521e+03 - -2.3471050e+02 4.1867077e+02 3.5046177e+03 - -2.6285025e+02 4.1810846e+02 3.5039076e+03 - -2.8920237e+02 4.1763823e+02 3.5031297e+03 - -3.1372547e+02 4.1729901e+02 3.5022920e+03 - -3.3641249e+02 4.1712496e+02 3.5014027e+03 - -3.5728486e+02 4.1714477e+02 3.5004699e+03 - -3.7638660e+02 4.1738127e+02 3.4995016e+03 - -3.9377888e+02 4.1785150e+02 3.4985056e+03 - -4.0953504e+02 4.1856695e+02 3.4974893e+03 - -4.2373643e+02 4.1953403e+02 3.4964597e+03 - -4.3646894e+02 4.2075456e+02 3.4954238e+03 - -4.4782022e+02 4.2222639e+02 3.4943880e+03 - -4.5787769e+02 4.2394394e+02 3.4933582e+03 - -4.6672688e+02 4.2589874e+02 3.4923403e+03 - -4.7445046e+02 4.2807989e+02 3.4913397e+03 - -4.8112747e+02 4.3047453e+02 3.4903614e+03 - -4.8683294e+02 4.3306817e+02 3.4894101e+03 - -4.9163770e+02 4.3584503e+02 3.4884903e+03 - -4.9560835e+02 4.3878822e+02 3.4876061e+03 - -4.9880731e+02 4.4188003e+02 3.4867614e+03 - -5.0129306e+02 4.4510201e+02 3.4859597e+03 - -5.0312029e+02 4.4843513e+02 3.4852044e+03 - -5.0434018e+02 4.5185984e+02 3.4844985e+03 - -5.0500068e+02 4.5535617e+02 3.4838447e+03 - -5.0514671e+02 4.5890370e+02 3.4832456e+03 - -5.0482050e+02 4.6248163e+02 3.4827035e+03 - -5.0406176e+02 4.6606874e+02 3.4822204e+03 - -5.0290797e+02 4.6964340e+02 3.4817982e+03 - -5.0139458e+02 4.7318353e+02 3.4814382e+03 - -4.9955520e+02 4.7666656e+02 3.4811420e+03 - -4.9742180e+02 4.8006938e+02 3.4809104e+03 - -4.9502487e+02 4.8336826e+02 3.4807444e+03 - -4.9239359e+02 4.8653882e+02 3.4806446e+03 - -4.8955593e+02 4.8955593e+02 3.4806113e+03 - -4.8653882e+02 4.9239359e+02 3.4806446e+03 - -4.8336826e+02 4.9502487e+02 3.4807444e+03 - -4.8006938e+02 4.9742180e+02 3.4809104e+03 - -4.7666656e+02 4.9955520e+02 3.4811420e+03 - -4.7318353e+02 5.0139458e+02 3.4814382e+03 - -4.6964340e+02 5.0290797e+02 3.4817982e+03 - -4.6606874e+02 5.0406176e+02 3.4822204e+03 - -4.6248163e+02 5.0482050e+02 3.4827035e+03 - -4.5890370e+02 5.0514671e+02 3.4832456e+03 - -4.5535617e+02 5.0500068e+02 3.4838447e+03 - -4.5185984e+02 5.0434018e+02 3.4844985e+03 - -4.4843513e+02 5.0312029e+02 3.4852044e+03 - -4.4510201e+02 5.0129306e+02 3.4859597e+03 - -4.4188003e+02 4.9880731e+02 3.4867614e+03 - -4.3878822e+02 4.9560835e+02 3.4876061e+03 - -4.3584503e+02 4.9163770e+02 3.4884903e+03 - -4.3306817e+02 4.8683294e+02 3.4894101e+03 - -4.3047453e+02 4.8112747e+02 3.4903614e+03 - -4.2807989e+02 4.7445046e+02 3.4913397e+03 - -4.2589874e+02 4.6672688e+02 3.4923403e+03 - -4.2394394e+02 4.5787769e+02 3.4933582e+03 - -4.2222639e+02 4.4782022e+02 3.4943880e+03 - -4.2075456e+02 4.3646894e+02 3.4954238e+03 - -4.1953403e+02 4.2373643e+02 3.4964597e+03 - -4.1856695e+02 4.0953504e+02 3.4974893e+03 - -4.1785150e+02 3.9377888e+02 3.4985056e+03 - -4.1738127e+02 3.7638660e+02 3.4995016e+03 - -4.1714477e+02 3.5728486e+02 3.5004699e+03 - -4.1712496e+02 3.3641249e+02 3.5014027e+03 - -4.1729901e+02 3.1372547e+02 3.5022920e+03 - -4.1763823e+02 2.8920237e+02 3.5031297e+03 - -4.1810846e+02 2.6285025e+02 3.5039076e+03 - -4.1867077e+02 2.3471050e+02 3.5046177e+03 - -4.1928271e+02 2.0486404e+02 3.5052521e+03 - -4.1990002e+02 1.7343535e+02 3.5058033e+03 - -4.2047886e+02 1.4059460e+02 3.5062646e+03 - -4.2097829e+02 1.0655715e+02 3.5066301e+03 - -4.2136288e+02 7.1580037e+01 3.5068948e+03 - -4.2160524e+02 3.5955249e+01 3.5070551e+03 - -4.2168801e+02 0.0000000e+00 3.5071088e+03 - -4.2160524e+02 -3.5955249e+01 3.5070551e+03 - -4.2136288e+02 -7.1580037e+01 3.5068948e+03 - -4.2097829e+02 -1.0655715e+02 3.5066301e+03 - -4.2047886e+02 -1.4059460e+02 3.5062646e+03 - -4.1990002e+02 -1.7343535e+02 3.5058033e+03 - -4.1928271e+02 -2.0486404e+02 3.5052521e+03 - -4.1867077e+02 -2.3471050e+02 3.5046177e+03 - -4.1810846e+02 -2.6285025e+02 3.5039076e+03 - -4.1763823e+02 -2.8920237e+02 3.5031297e+03 - -4.1729901e+02 -3.1372547e+02 3.5022920e+03 - -4.1712496e+02 -3.3641249e+02 3.5014027e+03 - -4.1714477e+02 -3.5728486e+02 3.5004699e+03 - -4.1738127e+02 -3.7638660e+02 3.4995016e+03 - -4.1785150e+02 -3.9377888e+02 3.4985056e+03 - -4.1856695e+02 -4.0953504e+02 3.4974893e+03 - -4.1953403e+02 -4.2373643e+02 3.4964597e+03 - -4.2075456e+02 -4.3646894e+02 3.4954238e+03 - -4.2222639e+02 -4.4782022e+02 3.4943880e+03 - -4.2394394e+02 -4.5787769e+02 3.4933582e+03 - -4.2589874e+02 -4.6672688e+02 3.4923403e+03 - -4.2807989e+02 -4.7445046e+02 3.4913397e+03 - -4.3047453e+02 -4.8112747e+02 3.4903614e+03 - -4.3306817e+02 -4.8683294e+02 3.4894101e+03 - -4.3584503e+02 -4.9163770e+02 3.4884903e+03 - -4.3878822e+02 -4.9560835e+02 3.4876061e+03 - -4.4188003e+02 -4.9880731e+02 3.4867614e+03 - -4.4510201e+02 -5.0129306e+02 3.4859597e+03 - -4.4843513e+02 -5.0312029e+02 3.4852044e+03 - -4.5185984e+02 -5.0434018e+02 3.4844985e+03 - -4.5535617e+02 -5.0500068e+02 3.4838447e+03 - -4.5890370e+02 -5.0514671e+02 3.4832456e+03 - -4.6248163e+02 -5.0482050e+02 3.4827035e+03 - -4.6606874e+02 -5.0406176e+02 3.4822204e+03 - -4.6964340e+02 -5.0290797e+02 3.4817982e+03 - -4.7318353e+02 -5.0139458e+02 3.4814382e+03 - -4.7666656e+02 -4.9955520e+02 3.4811420e+03 - -4.8006938e+02 -4.9742180e+02 3.4809104e+03 - -4.8336826e+02 -4.9502487e+02 3.4807444e+03 - -4.8653882e+02 -4.9239359e+02 3.4806446e+03 - -4.8955593e+02 -4.8955593e+02 3.4806113e+03 - -4.9239359e+02 -4.8653882e+02 3.4806446e+03 - -4.9502487e+02 -4.8336826e+02 3.4807444e+03 - -4.9742180e+02 -4.8006938e+02 3.4809104e+03 - -4.9955520e+02 -4.7666656e+02 3.4811420e+03 - -5.0139458e+02 -4.7318353e+02 3.4814382e+03 - -5.0290797e+02 -4.6964340e+02 3.4817982e+03 - -5.0406176e+02 -4.6606874e+02 3.4822204e+03 - -5.0482050e+02 -4.6248163e+02 3.4827035e+03 - -5.0514671e+02 -4.5890370e+02 3.4832456e+03 - -5.0500068e+02 -4.5535617e+02 3.4838447e+03 - -5.0434018e+02 -4.5185984e+02 3.4844985e+03 - -5.0312029e+02 -4.4843513e+02 3.4852044e+03 - -5.0129306e+02 -4.4510201e+02 3.4859597e+03 - -4.9880731e+02 -4.4188003e+02 3.4867614e+03 - -4.9560835e+02 -4.3878822e+02 3.4876061e+03 - -4.9163770e+02 -4.3584503e+02 3.4884903e+03 - -4.8683294e+02 -4.3306817e+02 3.4894101e+03 - -4.8112747e+02 -4.3047453e+02 3.4903614e+03 - -4.7445046e+02 -4.2807989e+02 3.4913397e+03 - -4.6672688e+02 -4.2589874e+02 3.4923403e+03 - -4.5787769e+02 -4.2394394e+02 3.4933582e+03 - -4.4782022e+02 -4.2222639e+02 3.4943880e+03 - -4.3646894e+02 -4.2075456e+02 3.4954238e+03 - -4.2373643e+02 -4.1953403e+02 3.4964597e+03 - -4.0953504e+02 -4.1856695e+02 3.4974893e+03 - -3.9377888e+02 -4.1785150e+02 3.4985056e+03 - -3.7638660e+02 -4.1738127e+02 3.4995016e+03 - -3.5728486e+02 -4.1714477e+02 3.5004699e+03 - -3.3641249e+02 -4.1712496e+02 3.5014027e+03 - -3.1372547e+02 -4.1729901e+02 3.5022920e+03 - -2.8920237e+02 -4.1763823e+02 3.5031297e+03 - -2.6285025e+02 -4.1810846e+02 3.5039076e+03 - -2.3471050e+02 -4.1867077e+02 3.5046177e+03 - -2.0486404e+02 -4.1928271e+02 3.5052521e+03 - -1.7343535e+02 -4.1990002e+02 3.5058033e+03 - -1.4059460e+02 -4.2047886e+02 3.5062646e+03 - -1.0655715e+02 -4.2097829e+02 3.5066301e+03 - -7.1580037e+01 -4.2136288e+02 3.5068948e+03 - -3.5955249e+01 -4.2160524e+02 3.5070551e+03 - 0.0000000e+00 -4.2168801e+02 3.5071088e+03 - 3.5955249e+01 -4.2160524e+02 3.5070551e+03 - 7.1580037e+01 -4.2136288e+02 3.5068948e+03 - 1.0655715e+02 -4.2097829e+02 3.5066301e+03 - 1.4059460e+02 -4.2047886e+02 3.5062646e+03 - 1.7343535e+02 -4.1990002e+02 3.5058033e+03 - 2.0486404e+02 -4.1928271e+02 3.5052521e+03 - 2.3471050e+02 -4.1867077e+02 3.5046177e+03 - 2.6285025e+02 -4.1810846e+02 3.5039076e+03 - 2.8920237e+02 -4.1763823e+02 3.5031297e+03 - 3.1372547e+02 -4.1729901e+02 3.5022920e+03 - 3.3641249e+02 -4.1712496e+02 3.5014027e+03 - 3.5728486e+02 -4.1714477e+02 3.5004699e+03 - 3.7638660e+02 -4.1738127e+02 3.4995016e+03 - 3.9377888e+02 -4.1785150e+02 3.4985056e+03 - 4.0953504e+02 -4.1856695e+02 3.4974893e+03 - 4.2373643e+02 -4.1953403e+02 3.4964597e+03 - 4.3646894e+02 -4.2075456e+02 3.4954238e+03 - 4.4782022e+02 -4.2222639e+02 3.4943880e+03 - 4.5787769e+02 -4.2394394e+02 3.4933582e+03 - 4.6672688e+02 -4.2589874e+02 3.4923403e+03 - 4.7445046e+02 -4.2807989e+02 3.4913397e+03 - 4.8112747e+02 -4.3047453e+02 3.4903614e+03 - 4.8683294e+02 -4.3306817e+02 3.4894101e+03 - 4.9163770e+02 -4.3584503e+02 3.4884903e+03 - 4.9560835e+02 -4.3878822e+02 3.4876061e+03 - 4.9880731e+02 -4.4188003e+02 3.4867614e+03 - 5.0129306e+02 -4.4510201e+02 3.4859597e+03 - 5.0312029e+02 -4.4843513e+02 3.4852044e+03 - 5.0434018e+02 -4.5185984e+02 3.4844985e+03 - 5.0500068e+02 -4.5535617e+02 3.4838447e+03 - 5.0514671e+02 -4.5890370e+02 3.4832456e+03 - 5.0482050e+02 -4.6248163e+02 3.4827035e+03 - 5.0406176e+02 -4.6606874e+02 3.4822204e+03 - 5.0290797e+02 -4.6964340e+02 3.4817982e+03 - 5.0139458e+02 -4.7318353e+02 3.4814382e+03 - 4.9955520e+02 -4.7666656e+02 3.4811420e+03 - 4.9742180e+02 -4.8006938e+02 3.4809104e+03 - 4.9502487e+02 -4.8336826e+02 3.4807444e+03 - 4.9239359e+02 -4.8653882e+02 3.4806446e+03 - 4.8955593e+02 -4.8955593e+02 3.4806113e+03 - 4.8653882e+02 -4.9239359e+02 3.4806446e+03 - 4.8336826e+02 -4.9502487e+02 3.4807444e+03 - 4.8006938e+02 -4.9742180e+02 3.4809104e+03 - 4.7666656e+02 -4.9955520e+02 3.4811420e+03 - 4.7318353e+02 -5.0139458e+02 3.4814382e+03 - 4.6964340e+02 -5.0290797e+02 3.4817982e+03 - 4.6606874e+02 -5.0406176e+02 3.4822204e+03 - 4.6248163e+02 -5.0482050e+02 3.4827035e+03 - 4.5890370e+02 -5.0514671e+02 3.4832456e+03 - 4.5535617e+02 -5.0500068e+02 3.4838447e+03 - 4.5185984e+02 -5.0434018e+02 3.4844985e+03 - 4.4843513e+02 -5.0312029e+02 3.4852044e+03 - 4.4510201e+02 -5.0129306e+02 3.4859597e+03 - 4.4188003e+02 -4.9880731e+02 3.4867614e+03 - 4.3878822e+02 -4.9560835e+02 3.4876061e+03 - 4.3584503e+02 -4.9163770e+02 3.4884903e+03 - 4.3306817e+02 -4.8683294e+02 3.4894101e+03 - 4.3047453e+02 -4.8112747e+02 3.4903614e+03 - 4.2807989e+02 -4.7445046e+02 3.4913397e+03 - 4.2589874e+02 -4.6672688e+02 3.4923403e+03 - 4.2394394e+02 -4.5787769e+02 3.4933582e+03 - 4.2222639e+02 -4.4782022e+02 3.4943880e+03 - 4.2075456e+02 -4.3646894e+02 3.4954238e+03 - 4.1953403e+02 -4.2373643e+02 3.4964597e+03 - 4.1856695e+02 -4.0953504e+02 3.4974893e+03 - 4.1785150e+02 -3.9377888e+02 3.4985056e+03 - 4.1738127e+02 -3.7638660e+02 3.4995016e+03 - 4.1714477e+02 -3.5728486e+02 3.5004699e+03 - 4.1712496e+02 -3.3641249e+02 3.5014027e+03 - 4.1729901e+02 -3.1372547e+02 3.5022920e+03 - 4.1763823e+02 -2.8920237e+02 3.5031297e+03 - 4.1810846e+02 -2.6285025e+02 3.5039076e+03 - 4.1867077e+02 -2.3471050e+02 3.5046177e+03 - 4.1928271e+02 -2.0486404e+02 3.5052521e+03 - 4.1990002e+02 -1.7343535e+02 3.5058033e+03 - 4.2047886e+02 -1.4059460e+02 3.5062646e+03 - 4.2097829e+02 -1.0655715e+02 3.5066301e+03 - 4.2136288e+02 -7.1580037e+01 3.5068948e+03 - 4.2160524e+02 -3.5955249e+01 3.5070551e+03 - 4.2168801e+02 -2.4067136e-09 3.5071088e+03 - 4.6396309e+02 0.0000000e+00 3.4982671e+03 - 4.6387163e+02 3.9612504e+01 3.4982019e+03 - 4.6360382e+02 7.8856957e+01 3.4980073e+03 - 4.6317877e+02 1.1738032e+02 3.4976860e+03 - 4.6262665e+02 1.5485812e+02 3.4972427e+03 - 4.6198644e+02 1.9100538e+02 3.4966833e+03 - 4.6130312e+02 2.2558416e+02 3.4960152e+03 - 4.6062479e+02 2.5840732e+02 3.4952469e+03 - 4.5999992e+02 2.8933895e+02 3.4943874e+03 - 4.5947492e+02 3.1829180e+02 3.4934464e+03 - 4.5909232e+02 3.4522260e+02 3.4924338e+03 - 4.5888935e+02 3.7012602e+02 3.4913596e+03 - 4.5889724e+02 3.9302808e+02 3.4902337e+03 - 4.5914083e+02 4.1397951e+02 3.4890656e+03 - 4.5963866e+02 4.3304962e+02 3.4878647e+03 - 4.6040326e+02 4.5032076e+02 3.4866400e+03 - 4.6144166e+02 4.6588373e+02 3.4854000e+03 - 4.6275596e+02 4.7983396e+02 3.4841529e+03 - 4.6434397e+02 4.9226855e+02 3.4829063e+03 - 4.6619981e+02 5.0328400e+02 3.4816674e+03 - 4.6831450e+02 5.1297454e+02 3.4804432e+03 - 4.7067647e+02 5.2143106e+02 3.4792400e+03 - 4.7327200e+02 5.2874035e+02 3.4780638e+03 - 4.7608564e+02 5.3498468e+02 3.4769204e+03 - 4.7910047e+02 5.4024164e+02 3.4758149e+03 - 4.8229842e+02 5.4458415e+02 3.4747524e+03 - 4.8566044e+02 5.4808056e+02 3.4737373e+03 - 4.8916668e+02 5.5079486e+02 3.4727740e+03 - 4.9279661e+02 5.5278695e+02 3.4718665e+03 - 4.9652909e+02 5.5411289e+02 3.4710182e+03 - 5.0034243e+02 5.5482523e+02 3.4702327e+03 - 5.0421446e+02 5.5497327e+02 3.4695129e+03 - 5.0812248e+02 5.5460335e+02 3.4688615e+03 - 5.1204332e+02 5.5375916e+02 3.4682810e+03 - 5.1595328e+02 5.5248192e+02 3.4677735e+03 - 5.1982814e+02 5.5081070e+02 3.4673410e+03 - 5.2364306e+02 5.4878254e+02 3.4669850e+03 - 5.2737259e+02 5.4643275e+02 3.4667067e+03 - 5.3099057e+02 5.4379500e+02 3.4665072e+03 - 5.3447006e+02 5.4090153e+02 3.4663873e+03 - 5.3778329e+02 5.3778329e+02 3.4663472e+03 - 5.4090153e+02 5.3447006e+02 3.4663873e+03 - 5.4379500e+02 5.3099057e+02 3.4665072e+03 - 5.4643275e+02 5.2737259e+02 3.4667067e+03 - 5.4878254e+02 5.2364306e+02 3.4669850e+03 - 5.5081070e+02 5.1982814e+02 3.4673410e+03 - 5.5248192e+02 5.1595328e+02 3.4677735e+03 - 5.5375916e+02 5.1204332e+02 3.4682810e+03 - 5.5460335e+02 5.0812248e+02 3.4688615e+03 - 5.5497327e+02 5.0421446e+02 3.4695129e+03 - 5.5482523e+02 5.0034243e+02 3.4702327e+03 - 5.5411289e+02 4.9652909e+02 3.4710182e+03 - 5.5278695e+02 4.9279661e+02 3.4718665e+03 - 5.5079486e+02 4.8916668e+02 3.4727740e+03 - 5.4808056e+02 4.8566044e+02 3.4737373e+03 - 5.4458415e+02 4.8229842e+02 3.4747524e+03 - 5.4024164e+02 4.7910047e+02 3.4758149e+03 - 5.3498468e+02 4.7608564e+02 3.4769204e+03 - 5.2874035e+02 4.7327200e+02 3.4780638e+03 - 5.2143106e+02 4.7067647e+02 3.4792400e+03 - 5.1297454e+02 4.6831450e+02 3.4804432e+03 - 5.0328400e+02 4.6619981e+02 3.4816674e+03 - 4.9226855e+02 4.6434397e+02 3.4829063e+03 - 4.7983396e+02 4.6275596e+02 3.4841529e+03 - 4.6588373e+02 4.6144166e+02 3.4854000e+03 - 4.5032076e+02 4.6040326e+02 3.4866400e+03 - 4.3304962e+02 4.5963866e+02 3.4878647e+03 - 4.1397951e+02 4.5914083e+02 3.4890656e+03 - 3.9302808e+02 4.5889724e+02 3.4902337e+03 - 3.7012602e+02 4.5888935e+02 3.4913596e+03 - 3.4522260e+02 4.5909232e+02 3.4924338e+03 - 3.1829180e+02 4.5947492e+02 3.4934464e+03 - 2.8933895e+02 4.5999992e+02 3.4943874e+03 - 2.5840732e+02 4.6062479e+02 3.4952469e+03 - 2.2558416e+02 4.6130312e+02 3.4960152e+03 - 1.9100538e+02 4.6198644e+02 3.4966833e+03 - 1.5485812e+02 4.6262665e+02 3.4972427e+03 - 1.1738032e+02 4.6317877e+02 3.4976860e+03 - 7.8856957e+01 4.6360382e+02 3.4980073e+03 - 3.9612504e+01 4.6387163e+02 3.4982019e+03 - 0.0000000e+00 4.6396309e+02 3.4982671e+03 - -3.9612504e+01 4.6387163e+02 3.4982019e+03 - -7.8856957e+01 4.6360382e+02 3.4980073e+03 - -1.1738032e+02 4.6317877e+02 3.4976860e+03 - -1.5485812e+02 4.6262665e+02 3.4972427e+03 - -1.9100538e+02 4.6198644e+02 3.4966833e+03 - -2.2558416e+02 4.6130312e+02 3.4960152e+03 - -2.5840732e+02 4.6062479e+02 3.4952469e+03 - -2.8933895e+02 4.5999992e+02 3.4943874e+03 - -3.1829180e+02 4.5947492e+02 3.4934464e+03 - -3.4522260e+02 4.5909232e+02 3.4924338e+03 - -3.7012602e+02 4.5888935e+02 3.4913596e+03 - -3.9302808e+02 4.5889724e+02 3.4902337e+03 - -4.1397951e+02 4.5914083e+02 3.4890656e+03 - -4.3304962e+02 4.5963866e+02 3.4878647e+03 - -4.5032076e+02 4.6040326e+02 3.4866400e+03 - -4.6588373e+02 4.6144166e+02 3.4854000e+03 - -4.7983396e+02 4.6275596e+02 3.4841529e+03 - -4.9226855e+02 4.6434397e+02 3.4829063e+03 - -5.0328400e+02 4.6619981e+02 3.4816674e+03 - -5.1297454e+02 4.6831450e+02 3.4804432e+03 - -5.2143106e+02 4.7067647e+02 3.4792400e+03 - -5.2874035e+02 4.7327200e+02 3.4780638e+03 - -5.3498468e+02 4.7608564e+02 3.4769204e+03 - -5.4024164e+02 4.7910047e+02 3.4758149e+03 - -5.4458415e+02 4.8229842e+02 3.4747524e+03 - -5.4808056e+02 4.8566044e+02 3.4737373e+03 - -5.5079486e+02 4.8916668e+02 3.4727740e+03 - -5.5278695e+02 4.9279661e+02 3.4718665e+03 - -5.5411289e+02 4.9652909e+02 3.4710182e+03 - -5.5482523e+02 5.0034243e+02 3.4702327e+03 - -5.5497327e+02 5.0421446e+02 3.4695129e+03 - -5.5460335e+02 5.0812248e+02 3.4688615e+03 - -5.5375916e+02 5.1204332e+02 3.4682810e+03 - -5.5248192e+02 5.1595328e+02 3.4677735e+03 - -5.5081070e+02 5.1982814e+02 3.4673410e+03 - -5.4878254e+02 5.2364306e+02 3.4669850e+03 - -5.4643275e+02 5.2737259e+02 3.4667067e+03 - -5.4379500e+02 5.3099057e+02 3.4665072e+03 - -5.4090153e+02 5.3447006e+02 3.4663873e+03 - -5.3778329e+02 5.3778329e+02 3.4663472e+03 - -5.3447006e+02 5.4090153e+02 3.4663873e+03 - -5.3099057e+02 5.4379500e+02 3.4665072e+03 - -5.2737259e+02 5.4643275e+02 3.4667067e+03 - -5.2364306e+02 5.4878254e+02 3.4669850e+03 - -5.1982814e+02 5.5081070e+02 3.4673410e+03 - -5.1595328e+02 5.5248192e+02 3.4677735e+03 - -5.1204332e+02 5.5375916e+02 3.4682810e+03 - -5.0812248e+02 5.5460335e+02 3.4688615e+03 - -5.0421446e+02 5.5497327e+02 3.4695129e+03 - -5.0034243e+02 5.5482523e+02 3.4702327e+03 - -4.9652909e+02 5.5411289e+02 3.4710182e+03 - -4.9279661e+02 5.5278695e+02 3.4718665e+03 - -4.8916668e+02 5.5079486e+02 3.4727740e+03 - -4.8566044e+02 5.4808056e+02 3.4737373e+03 - -4.8229842e+02 5.4458415e+02 3.4747524e+03 - -4.7910047e+02 5.4024164e+02 3.4758149e+03 - -4.7608564e+02 5.3498468e+02 3.4769204e+03 - -4.7327200e+02 5.2874035e+02 3.4780638e+03 - -4.7067647e+02 5.2143106e+02 3.4792400e+03 - -4.6831450e+02 5.1297454e+02 3.4804432e+03 - -4.6619981e+02 5.0328400e+02 3.4816674e+03 - -4.6434397e+02 4.9226855e+02 3.4829063e+03 - -4.6275596e+02 4.7983396e+02 3.4841529e+03 - -4.6144166e+02 4.6588373e+02 3.4854000e+03 - -4.6040326e+02 4.5032076e+02 3.4866400e+03 - -4.5963866e+02 4.3304962e+02 3.4878647e+03 - -4.5914083e+02 4.1397951e+02 3.4890656e+03 - -4.5889724e+02 3.9302808e+02 3.4902337e+03 - -4.5888935e+02 3.7012602e+02 3.4913596e+03 - -4.5909232e+02 3.4522260e+02 3.4924338e+03 - -4.5947492e+02 3.1829180e+02 3.4934464e+03 - -4.5999992e+02 2.8933895e+02 3.4943874e+03 - -4.6062479e+02 2.5840732e+02 3.4952469e+03 - -4.6130312e+02 2.2558416e+02 3.4960152e+03 - -4.6198644e+02 1.9100538e+02 3.4966833e+03 - -4.6262665e+02 1.5485812e+02 3.4972427e+03 - -4.6317877e+02 1.1738032e+02 3.4976860e+03 - -4.6360382e+02 7.8856957e+01 3.4980073e+03 - -4.6387163e+02 3.9612504e+01 3.4982019e+03 - -4.6396309e+02 0.0000000e+00 3.4982671e+03 - -4.6387163e+02 -3.9612504e+01 3.4982019e+03 - -4.6360382e+02 -7.8856957e+01 3.4980073e+03 - -4.6317877e+02 -1.1738032e+02 3.4976860e+03 - -4.6262665e+02 -1.5485812e+02 3.4972427e+03 - -4.6198644e+02 -1.9100538e+02 3.4966833e+03 - -4.6130312e+02 -2.2558416e+02 3.4960152e+03 - -4.6062479e+02 -2.5840732e+02 3.4952469e+03 - -4.5999992e+02 -2.8933895e+02 3.4943874e+03 - -4.5947492e+02 -3.1829180e+02 3.4934464e+03 - -4.5909232e+02 -3.4522260e+02 3.4924338e+03 - -4.5888935e+02 -3.7012602e+02 3.4913596e+03 - -4.5889724e+02 -3.9302808e+02 3.4902337e+03 - -4.5914083e+02 -4.1397951e+02 3.4890656e+03 - -4.5963866e+02 -4.3304962e+02 3.4878647e+03 - -4.6040326e+02 -4.5032076e+02 3.4866400e+03 - -4.6144166e+02 -4.6588373e+02 3.4854000e+03 - -4.6275596e+02 -4.7983396e+02 3.4841529e+03 - -4.6434397e+02 -4.9226855e+02 3.4829063e+03 - -4.6619981e+02 -5.0328400e+02 3.4816674e+03 - -4.6831450e+02 -5.1297454e+02 3.4804432e+03 - -4.7067647e+02 -5.2143106e+02 3.4792400e+03 - -4.7327200e+02 -5.2874035e+02 3.4780638e+03 - -4.7608564e+02 -5.3498468e+02 3.4769204e+03 - -4.7910047e+02 -5.4024164e+02 3.4758149e+03 - -4.8229842e+02 -5.4458415e+02 3.4747524e+03 - -4.8566044e+02 -5.4808056e+02 3.4737373e+03 - -4.8916668e+02 -5.5079486e+02 3.4727740e+03 - -4.9279661e+02 -5.5278695e+02 3.4718665e+03 - -4.9652909e+02 -5.5411289e+02 3.4710182e+03 - -5.0034243e+02 -5.5482523e+02 3.4702327e+03 - -5.0421446e+02 -5.5497327e+02 3.4695129e+03 - -5.0812248e+02 -5.5460335e+02 3.4688615e+03 - -5.1204332e+02 -5.5375916e+02 3.4682810e+03 - -5.1595328e+02 -5.5248192e+02 3.4677735e+03 - -5.1982814e+02 -5.5081070e+02 3.4673410e+03 - -5.2364306e+02 -5.4878254e+02 3.4669850e+03 - -5.2737259e+02 -5.4643275e+02 3.4667067e+03 - -5.3099057e+02 -5.4379500e+02 3.4665072e+03 - -5.3447006e+02 -5.4090153e+02 3.4663873e+03 - -5.3778329e+02 -5.3778329e+02 3.4663472e+03 - -5.4090153e+02 -5.3447006e+02 3.4663873e+03 - -5.4379500e+02 -5.3099057e+02 3.4665072e+03 - -5.4643275e+02 -5.2737259e+02 3.4667067e+03 - -5.4878254e+02 -5.2364306e+02 3.4669850e+03 - -5.5081070e+02 -5.1982814e+02 3.4673410e+03 - -5.5248192e+02 -5.1595328e+02 3.4677735e+03 - -5.5375916e+02 -5.1204332e+02 3.4682810e+03 - -5.5460335e+02 -5.0812248e+02 3.4688615e+03 - -5.5497327e+02 -5.0421446e+02 3.4695129e+03 - -5.5482523e+02 -5.0034243e+02 3.4702327e+03 - -5.5411289e+02 -4.9652909e+02 3.4710182e+03 - -5.5278695e+02 -4.9279661e+02 3.4718665e+03 - -5.5079486e+02 -4.8916668e+02 3.4727740e+03 - -5.4808056e+02 -4.8566044e+02 3.4737373e+03 - -5.4458415e+02 -4.8229842e+02 3.4747524e+03 - -5.4024164e+02 -4.7910047e+02 3.4758149e+03 - -5.3498468e+02 -4.7608564e+02 3.4769204e+03 - -5.2874035e+02 -4.7327200e+02 3.4780638e+03 - -5.2143106e+02 -4.7067647e+02 3.4792400e+03 - -5.1297454e+02 -4.6831450e+02 3.4804432e+03 - -5.0328400e+02 -4.6619981e+02 3.4816674e+03 - -4.9226855e+02 -4.6434397e+02 3.4829063e+03 - -4.7983396e+02 -4.6275596e+02 3.4841529e+03 - -4.6588373e+02 -4.6144166e+02 3.4854000e+03 - -4.5032076e+02 -4.6040326e+02 3.4866400e+03 - -4.3304962e+02 -4.5963866e+02 3.4878647e+03 - -4.1397951e+02 -4.5914083e+02 3.4890656e+03 - -3.9302808e+02 -4.5889724e+02 3.4902337e+03 - -3.7012602e+02 -4.5888935e+02 3.4913596e+03 - -3.4522260e+02 -4.5909232e+02 3.4924338e+03 - -3.1829180e+02 -4.5947492e+02 3.4934464e+03 - -2.8933895e+02 -4.5999992e+02 3.4943874e+03 - -2.5840732e+02 -4.6062479e+02 3.4952469e+03 - -2.2558416e+02 -4.6130312e+02 3.4960152e+03 - -1.9100538e+02 -4.6198644e+02 3.4966833e+03 - -1.5485812e+02 -4.6262665e+02 3.4972427e+03 - -1.1738032e+02 -4.6317877e+02 3.4976860e+03 - -7.8856957e+01 -4.6360382e+02 3.4980073e+03 - -3.9612504e+01 -4.6387163e+02 3.4982019e+03 - 0.0000000e+00 -4.6396309e+02 3.4982671e+03 - 3.9612504e+01 -4.6387163e+02 3.4982019e+03 - 7.8856957e+01 -4.6360382e+02 3.4980073e+03 - 1.1738032e+02 -4.6317877e+02 3.4976860e+03 - 1.5485812e+02 -4.6262665e+02 3.4972427e+03 - 1.9100538e+02 -4.6198644e+02 3.4966833e+03 - 2.2558416e+02 -4.6130312e+02 3.4960152e+03 - 2.5840732e+02 -4.6062479e+02 3.4952469e+03 - 2.8933895e+02 -4.5999992e+02 3.4943874e+03 - 3.1829180e+02 -4.5947492e+02 3.4934464e+03 - 3.4522260e+02 -4.5909232e+02 3.4924338e+03 - 3.7012602e+02 -4.5888935e+02 3.4913596e+03 - 3.9302808e+02 -4.5889724e+02 3.4902337e+03 - 4.1397951e+02 -4.5914083e+02 3.4890656e+03 - 4.3304962e+02 -4.5963866e+02 3.4878647e+03 - 4.5032076e+02 -4.6040326e+02 3.4866400e+03 - 4.6588373e+02 -4.6144166e+02 3.4854000e+03 - 4.7983396e+02 -4.6275596e+02 3.4841529e+03 - 4.9226855e+02 -4.6434397e+02 3.4829063e+03 - 5.0328400e+02 -4.6619981e+02 3.4816674e+03 - 5.1297454e+02 -4.6831450e+02 3.4804432e+03 - 5.2143106e+02 -4.7067647e+02 3.4792400e+03 - 5.2874035e+02 -4.7327200e+02 3.4780638e+03 - 5.3498468e+02 -4.7608564e+02 3.4769204e+03 - 5.4024164e+02 -4.7910047e+02 3.4758149e+03 - 5.4458415e+02 -4.8229842e+02 3.4747524e+03 - 5.4808056e+02 -4.8566044e+02 3.4737373e+03 - 5.5079486e+02 -4.8916668e+02 3.4727740e+03 - 5.5278695e+02 -4.9279661e+02 3.4718665e+03 - 5.5411289e+02 -4.9652909e+02 3.4710182e+03 - 5.5482523e+02 -5.0034243e+02 3.4702327e+03 - 5.5497327e+02 -5.0421446e+02 3.4695129e+03 - 5.5460335e+02 -5.0812248e+02 3.4688615e+03 - 5.5375916e+02 -5.1204332e+02 3.4682810e+03 - 5.5248192e+02 -5.1595328e+02 3.4677735e+03 - 5.5081070e+02 -5.1982814e+02 3.4673410e+03 - 5.4878254e+02 -5.2364306e+02 3.4669850e+03 - 5.4643275e+02 -5.2737259e+02 3.4667067e+03 - 5.4379500e+02 -5.3099057e+02 3.4665072e+03 - 5.4090153e+02 -5.3447006e+02 3.4663873e+03 - 5.3778329e+02 -5.3778329e+02 3.4663472e+03 - 5.3447006e+02 -5.4090153e+02 3.4663873e+03 - 5.3099057e+02 -5.4379500e+02 3.4665072e+03 - 5.2737259e+02 -5.4643275e+02 3.4667067e+03 - 5.2364306e+02 -5.4878254e+02 3.4669850e+03 - 5.1982814e+02 -5.5081070e+02 3.4673410e+03 - 5.1595328e+02 -5.5248192e+02 3.4677735e+03 - 5.1204332e+02 -5.5375916e+02 3.4682810e+03 - 5.0812248e+02 -5.5460335e+02 3.4688615e+03 - 5.0421446e+02 -5.5497327e+02 3.4695129e+03 - 5.0034243e+02 -5.5482523e+02 3.4702327e+03 - 4.9652909e+02 -5.5411289e+02 3.4710182e+03 - 4.9279661e+02 -5.5278695e+02 3.4718665e+03 - 4.8916668e+02 -5.5079486e+02 3.4727740e+03 - 4.8566044e+02 -5.4808056e+02 3.4737373e+03 - 4.8229842e+02 -5.4458415e+02 3.4747524e+03 - 4.7910047e+02 -5.4024164e+02 3.4758149e+03 - 4.7608564e+02 -5.3498468e+02 3.4769204e+03 - 4.7327200e+02 -5.2874035e+02 3.4780638e+03 - 4.7067647e+02 -5.2143106e+02 3.4792400e+03 - 4.6831450e+02 -5.1297454e+02 3.4804432e+03 - 4.6619981e+02 -5.0328400e+02 3.4816674e+03 - 4.6434397e+02 -4.9226855e+02 3.4829063e+03 - 4.6275596e+02 -4.7983396e+02 3.4841529e+03 - 4.6144166e+02 -4.6588373e+02 3.4854000e+03 - 4.6040326e+02 -4.5032076e+02 3.4866400e+03 - 4.5963866e+02 -4.3304962e+02 3.4878647e+03 - 4.5914083e+02 -4.1397951e+02 3.4890656e+03 - 4.5889724e+02 -3.9302808e+02 3.4902337e+03 - 4.5888935e+02 -3.7012602e+02 3.4913596e+03 - 4.5909232e+02 -3.4522260e+02 3.4924338e+03 - 4.5947492e+02 -3.1829180e+02 3.4934464e+03 - 4.5999992e+02 -2.8933895e+02 3.4943874e+03 - 4.6062479e+02 -2.5840732e+02 3.4952469e+03 - 4.6130312e+02 -2.2558416e+02 3.4960152e+03 - 4.6198644e+02 -1.9100538e+02 3.4966833e+03 - 4.6262665e+02 -1.5485812e+02 3.4972427e+03 - 4.6317877e+02 -1.1738032e+02 3.4976860e+03 - 4.6360382e+02 -7.8856957e+01 3.4980073e+03 - 4.6387163e+02 -3.9612504e+01 3.4982019e+03 - 4.6396309e+02 -2.4067136e-09 3.4982671e+03 - 5.0626602e+02 0.0000000e+00 3.4885489e+03 - 5.0616579e+02 4.3288527e+01 3.4884711e+03 - 5.0587226e+02 8.6169981e+01 3.4882386e+03 - 5.0540633e+02 1.2825421e+02 3.4878549e+03 - 5.0480095e+02 1.6918325e+02 3.4873257e+03 - 5.0409861e+02 2.0864352e+02 3.4866583e+03 - 5.0334832e+02 2.4637417e+02 3.4858618e+03 - 5.0260238e+02 2.8217120e+02 3.4849464e+03 - 5.0191342e+02 3.1588763e+02 3.4839231e+03 - 5.0133172e+02 3.4743047e+02 3.4828037e+03 - 5.0090326e+02 3.7675525e+02 3.4816000e+03 - 5.0066827e+02 4.0385918e+02 3.4803241e+03 - 5.0066041e+02 4.2877364e+02 3.4789876e+03 - 5.0090648e+02 4.5155675e+02 3.4776021e+03 - 5.0142643e+02 4.7228654e+02 3.4761787e+03 - 5.0223382e+02 4.9105489e+02 3.4747278e+03 - 5.0333630e+02 5.0796241e+02 3.4732596e+03 - 5.0473626e+02 5.2311436e+02 3.4717837e+03 - 5.0643155e+02 5.3661742e+02 3.4703090e+03 - 5.0841608e+02 5.4857727e+02 3.4688441e+03 - 5.1068046e+02 5.5909688e+02 3.4673969e+03 - 5.1321256e+02 5.6827532e+02 3.4659749e+03 - 5.1599794e+02 5.7620706e+02 3.4645851e+03 - 5.1902029e+02 5.8298151e+02 3.4632343e+03 - 5.2226175e+02 5.8868294e+02 3.4619285e+03 - 5.2570315e+02 5.9339047e+02 3.4606735e+03 - 5.2932428e+02 5.9717827e+02 3.4594746e+03 - 5.3310399e+02 6.0011577e+02 3.4583370e+03 - 5.3702036e+02 6.0226795e+02 3.4572652e+03 - 5.4105073e+02 6.0369571e+02 3.4562635e+03 - 5.4517184e+02 6.0445614e+02 3.4553358e+03 - 5.4935979e+02 6.0460285e+02 3.4544857e+03 - 5.5359007e+02 6.0418632e+02 3.4537164e+03 - 5.5783759e+02 6.0325415e+02 3.4530308e+03 - 5.6207661e+02 6.0185134e+02 3.4524315e+03 - 5.6628075e+02 6.0002057e+02 3.4519207e+03 - 5.7042295e+02 5.9780238e+02 3.4515001e+03 - 5.7447538e+02 5.9523541e+02 3.4511715e+03 - 5.7840942e+02 5.9235657e+02 3.4509359e+03 - 5.8219556e+02 5.8920123e+02 3.4507941e+03 - 5.8580334e+02 5.8580334e+02 3.4507469e+03 - 5.8920123e+02 5.8219556e+02 3.4507941e+03 - 5.9235657e+02 5.7840942e+02 3.4509359e+03 - 5.9523541e+02 5.7447538e+02 3.4511715e+03 - 5.9780238e+02 5.7042295e+02 3.4515001e+03 - 6.0002057e+02 5.6628075e+02 3.4519207e+03 - 6.0185134e+02 5.6207661e+02 3.4524315e+03 - 6.0325415e+02 5.5783759e+02 3.4530308e+03 - 6.0418632e+02 5.5359007e+02 3.4537164e+03 - 6.0460285e+02 5.4935979e+02 3.4544857e+03 - 6.0445614e+02 5.4517184e+02 3.4553358e+03 - 6.0369571e+02 5.4105073e+02 3.4562635e+03 - 6.0226795e+02 5.3702036e+02 3.4572652e+03 - 6.0011577e+02 5.3310399e+02 3.4583370e+03 - 5.9717827e+02 5.2932428e+02 3.4594746e+03 - 5.9339047e+02 5.2570315e+02 3.4606735e+03 - 5.8868294e+02 5.2226175e+02 3.4619285e+03 - 5.8298151e+02 5.1902029e+02 3.4632343e+03 - 5.7620706e+02 5.1599794e+02 3.4645851e+03 - 5.6827532e+02 5.1321256e+02 3.4659749e+03 - 5.5909688e+02 5.1068046e+02 3.4673969e+03 - 5.4857727e+02 5.0841608e+02 3.4688441e+03 - 5.3661742e+02 5.0643155e+02 3.4703090e+03 - 5.2311436e+02 5.0473626e+02 3.4717837e+03 - 5.0796241e+02 5.0333630e+02 3.4732596e+03 - 4.9105489e+02 5.0223382e+02 3.4747278e+03 - 4.7228654e+02 5.0142643e+02 3.4761787e+03 - 4.5155675e+02 5.0090648e+02 3.4776021e+03 - 4.2877364e+02 5.0066041e+02 3.4789876e+03 - 4.0385918e+02 5.0066827e+02 3.4803241e+03 - 3.7675525e+02 5.0090326e+02 3.4816000e+03 - 3.4743047e+02 5.0133172e+02 3.4828037e+03 - 3.1588763e+02 5.0191342e+02 3.4839231e+03 - 2.8217120e+02 5.0260238e+02 3.4849464e+03 - 2.4637417e+02 5.0334832e+02 3.4858618e+03 - 2.0864352e+02 5.0409861e+02 3.4866583e+03 - 1.6918325e+02 5.0480095e+02 3.4873257e+03 - 1.2825421e+02 5.0540633e+02 3.4878549e+03 - 8.6169981e+01 5.0587226e+02 3.4882386e+03 - 4.3288527e+01 5.0616579e+02 3.4884711e+03 - -2.4067136e-09 5.0626602e+02 3.4885489e+03 - -4.3288527e+01 5.0616579e+02 3.4884711e+03 - -8.6169981e+01 5.0587226e+02 3.4882386e+03 - -1.2825421e+02 5.0540633e+02 3.4878549e+03 - -1.6918325e+02 5.0480095e+02 3.4873257e+03 - -2.0864352e+02 5.0409861e+02 3.4866583e+03 - -2.4637417e+02 5.0334832e+02 3.4858618e+03 - -2.8217120e+02 5.0260238e+02 3.4849464e+03 - -3.1588763e+02 5.0191342e+02 3.4839231e+03 - -3.4743047e+02 5.0133172e+02 3.4828037e+03 - -3.7675525e+02 5.0090326e+02 3.4816000e+03 - -4.0385918e+02 5.0066827e+02 3.4803241e+03 - -4.2877364e+02 5.0066041e+02 3.4789876e+03 - -4.5155675e+02 5.0090648e+02 3.4776021e+03 - -4.7228654e+02 5.0142643e+02 3.4761787e+03 - -4.9105489e+02 5.0223382e+02 3.4747278e+03 - -5.0796241e+02 5.0333630e+02 3.4732596e+03 - -5.2311436e+02 5.0473626e+02 3.4717837e+03 - -5.3661742e+02 5.0643155e+02 3.4703090e+03 - -5.4857727e+02 5.0841608e+02 3.4688441e+03 - -5.5909688e+02 5.1068046e+02 3.4673969e+03 - -5.6827532e+02 5.1321256e+02 3.4659749e+03 - -5.7620706e+02 5.1599794e+02 3.4645851e+03 - -5.8298151e+02 5.1902029e+02 3.4632343e+03 - -5.8868294e+02 5.2226175e+02 3.4619285e+03 - -5.9339047e+02 5.2570315e+02 3.4606735e+03 - -5.9717827e+02 5.2932428e+02 3.4594746e+03 - -6.0011577e+02 5.3310399e+02 3.4583370e+03 - -6.0226795e+02 5.3702036e+02 3.4572652e+03 - -6.0369571e+02 5.4105073e+02 3.4562635e+03 - -6.0445614e+02 5.4517184e+02 3.4553358e+03 - -6.0460285e+02 5.4935979e+02 3.4544857e+03 - -6.0418632e+02 5.5359007e+02 3.4537164e+03 - -6.0325415e+02 5.5783759e+02 3.4530308e+03 - -6.0185134e+02 5.6207661e+02 3.4524315e+03 - -6.0002057e+02 5.6628075e+02 3.4519207e+03 - -5.9780238e+02 5.7042295e+02 3.4515001e+03 - -5.9523541e+02 5.7447538e+02 3.4511715e+03 - -5.9235657e+02 5.7840942e+02 3.4509359e+03 - -5.8920123e+02 5.8219556e+02 3.4507941e+03 - -5.8580334e+02 5.8580334e+02 3.4507469e+03 - -5.8219556e+02 5.8920123e+02 3.4507941e+03 - -5.7840942e+02 5.9235657e+02 3.4509359e+03 - -5.7447538e+02 5.9523541e+02 3.4511715e+03 - -5.7042295e+02 5.9780238e+02 3.4515001e+03 - -5.6628075e+02 6.0002057e+02 3.4519207e+03 - -5.6207661e+02 6.0185134e+02 3.4524315e+03 - -5.5783759e+02 6.0325415e+02 3.4530308e+03 - -5.5359007e+02 6.0418632e+02 3.4537164e+03 - -5.4935979e+02 6.0460285e+02 3.4544857e+03 - -5.4517184e+02 6.0445614e+02 3.4553358e+03 - -5.4105073e+02 6.0369571e+02 3.4562635e+03 - -5.3702036e+02 6.0226795e+02 3.4572652e+03 - -5.3310399e+02 6.0011577e+02 3.4583370e+03 - -5.2932428e+02 5.9717827e+02 3.4594746e+03 - -5.2570315e+02 5.9339047e+02 3.4606735e+03 - -5.2226175e+02 5.8868294e+02 3.4619285e+03 - -5.1902029e+02 5.8298151e+02 3.4632343e+03 - -5.1599794e+02 5.7620706e+02 3.4645851e+03 - -5.1321256e+02 5.6827532e+02 3.4659749e+03 - -5.1068046e+02 5.5909688e+02 3.4673969e+03 - -5.0841608e+02 5.4857727e+02 3.4688441e+03 - -5.0643155e+02 5.3661742e+02 3.4703090e+03 - -5.0473626e+02 5.2311436e+02 3.4717837e+03 - -5.0333630e+02 5.0796241e+02 3.4732596e+03 - -5.0223382e+02 4.9105489e+02 3.4747278e+03 - -5.0142643e+02 4.7228654e+02 3.4761787e+03 - -5.0090648e+02 4.5155675e+02 3.4776021e+03 - -5.0066041e+02 4.2877364e+02 3.4789876e+03 - -5.0066827e+02 4.0385918e+02 3.4803241e+03 - -5.0090326e+02 3.7675525e+02 3.4816000e+03 - -5.0133172e+02 3.4743047e+02 3.4828037e+03 - -5.0191342e+02 3.1588763e+02 3.4839231e+03 - -5.0260238e+02 2.8217120e+02 3.4849464e+03 - -5.0334832e+02 2.4637417e+02 3.4858618e+03 - -5.0409861e+02 2.0864352e+02 3.4866583e+03 - -5.0480095e+02 1.6918325e+02 3.4873257e+03 - -5.0540633e+02 1.2825421e+02 3.4878549e+03 - -5.0587226e+02 8.6169981e+01 3.4882386e+03 - -5.0616579e+02 4.3288527e+01 3.4884711e+03 - -5.0626602e+02 0.0000000e+00 3.4885489e+03 - -5.0616579e+02 -4.3288527e+01 3.4884711e+03 - -5.0587226e+02 -8.6169981e+01 3.4882386e+03 - -5.0540633e+02 -1.2825421e+02 3.4878549e+03 - -5.0480095e+02 -1.6918325e+02 3.4873257e+03 - -5.0409861e+02 -2.0864352e+02 3.4866583e+03 - -5.0334832e+02 -2.4637417e+02 3.4858618e+03 - -5.0260238e+02 -2.8217120e+02 3.4849464e+03 - -5.0191342e+02 -3.1588763e+02 3.4839231e+03 - -5.0133172e+02 -3.4743047e+02 3.4828037e+03 - -5.0090326e+02 -3.7675525e+02 3.4816000e+03 - -5.0066827e+02 -4.0385918e+02 3.4803241e+03 - -5.0066041e+02 -4.2877364e+02 3.4789876e+03 - -5.0090648e+02 -4.5155675e+02 3.4776021e+03 - -5.0142643e+02 -4.7228654e+02 3.4761787e+03 - -5.0223382e+02 -4.9105489e+02 3.4747278e+03 - -5.0333630e+02 -5.0796241e+02 3.4732596e+03 - -5.0473626e+02 -5.2311436e+02 3.4717837e+03 - -5.0643155e+02 -5.3661742e+02 3.4703090e+03 - -5.0841608e+02 -5.4857727e+02 3.4688441e+03 - -5.1068046e+02 -5.5909688e+02 3.4673969e+03 - -5.1321256e+02 -5.6827532e+02 3.4659749e+03 - -5.1599794e+02 -5.7620706e+02 3.4645851e+03 - -5.1902029e+02 -5.8298151e+02 3.4632343e+03 - -5.2226175e+02 -5.8868294e+02 3.4619285e+03 - -5.2570315e+02 -5.9339047e+02 3.4606735e+03 - -5.2932428e+02 -5.9717827e+02 3.4594746e+03 - -5.3310399e+02 -6.0011577e+02 3.4583370e+03 - -5.3702036e+02 -6.0226795e+02 3.4572652e+03 - -5.4105073e+02 -6.0369571e+02 3.4562635e+03 - -5.4517184e+02 -6.0445614e+02 3.4553358e+03 - -5.4935979e+02 -6.0460285e+02 3.4544857e+03 - -5.5359007e+02 -6.0418632e+02 3.4537164e+03 - -5.5783759e+02 -6.0325415e+02 3.4530308e+03 - -5.6207661e+02 -6.0185134e+02 3.4524315e+03 - -5.6628075e+02 -6.0002057e+02 3.4519207e+03 - -5.7042295e+02 -5.9780238e+02 3.4515001e+03 - -5.7447538e+02 -5.9523541e+02 3.4511715e+03 - -5.7840942e+02 -5.9235657e+02 3.4509359e+03 - -5.8219556e+02 -5.8920123e+02 3.4507941e+03 - -5.8580334e+02 -5.8580334e+02 3.4507469e+03 - -5.8920123e+02 -5.8219556e+02 3.4507941e+03 - -5.9235657e+02 -5.7840942e+02 3.4509359e+03 - -5.9523541e+02 -5.7447538e+02 3.4511715e+03 - -5.9780238e+02 -5.7042295e+02 3.4515001e+03 - -6.0002057e+02 -5.6628075e+02 3.4519207e+03 - -6.0185134e+02 -5.6207661e+02 3.4524315e+03 - -6.0325415e+02 -5.5783759e+02 3.4530308e+03 - -6.0418632e+02 -5.5359007e+02 3.4537164e+03 - -6.0460285e+02 -5.4935979e+02 3.4544857e+03 - -6.0445614e+02 -5.4517184e+02 3.4553358e+03 - -6.0369571e+02 -5.4105073e+02 3.4562635e+03 - -6.0226795e+02 -5.3702036e+02 3.4572652e+03 - -6.0011577e+02 -5.3310399e+02 3.4583370e+03 - -5.9717827e+02 -5.2932428e+02 3.4594746e+03 - -5.9339047e+02 -5.2570315e+02 3.4606735e+03 - -5.8868294e+02 -5.2226175e+02 3.4619285e+03 - -5.8298151e+02 -5.1902029e+02 3.4632343e+03 - -5.7620706e+02 -5.1599794e+02 3.4645851e+03 - -5.6827532e+02 -5.1321256e+02 3.4659749e+03 - -5.5909688e+02 -5.1068046e+02 3.4673969e+03 - -5.4857727e+02 -5.0841608e+02 3.4688441e+03 - -5.3661742e+02 -5.0643155e+02 3.4703090e+03 - -5.2311436e+02 -5.0473626e+02 3.4717837e+03 - -5.0796241e+02 -5.0333630e+02 3.4732596e+03 - -4.9105489e+02 -5.0223382e+02 3.4747278e+03 - -4.7228654e+02 -5.0142643e+02 3.4761787e+03 - -4.5155675e+02 -5.0090648e+02 3.4776021e+03 - -4.2877364e+02 -5.0066041e+02 3.4789876e+03 - -4.0385918e+02 -5.0066827e+02 3.4803241e+03 - -3.7675525e+02 -5.0090326e+02 3.4816000e+03 - -3.4743047e+02 -5.0133172e+02 3.4828037e+03 - -3.1588763e+02 -5.0191342e+02 3.4839231e+03 - -2.8217120e+02 -5.0260238e+02 3.4849464e+03 - -2.4637417e+02 -5.0334832e+02 3.4858618e+03 - -2.0864352e+02 -5.0409861e+02 3.4866583e+03 - -1.6918325e+02 -5.0480095e+02 3.4873257e+03 - -1.2825421e+02 -5.0540633e+02 3.4878549e+03 - -8.6169981e+01 -5.0587226e+02 3.4882386e+03 - -4.3288527e+01 -5.0616579e+02 3.4884711e+03 - 0.0000000e+00 -5.0626602e+02 3.4885489e+03 - 4.3288527e+01 -5.0616579e+02 3.4884711e+03 - 8.6169981e+01 -5.0587226e+02 3.4882386e+03 - 1.2825421e+02 -5.0540633e+02 3.4878549e+03 - 1.6918325e+02 -5.0480095e+02 3.4873257e+03 - 2.0864352e+02 -5.0409861e+02 3.4866583e+03 - 2.4637417e+02 -5.0334832e+02 3.4858618e+03 - 2.8217120e+02 -5.0260238e+02 3.4849464e+03 - 3.1588763e+02 -5.0191342e+02 3.4839231e+03 - 3.4743047e+02 -5.0133172e+02 3.4828037e+03 - 3.7675525e+02 -5.0090326e+02 3.4816000e+03 - 4.0385918e+02 -5.0066827e+02 3.4803241e+03 - 4.2877364e+02 -5.0066041e+02 3.4789876e+03 - 4.5155675e+02 -5.0090648e+02 3.4776021e+03 - 4.7228654e+02 -5.0142643e+02 3.4761787e+03 - 4.9105489e+02 -5.0223382e+02 3.4747278e+03 - 5.0796241e+02 -5.0333630e+02 3.4732596e+03 - 5.2311436e+02 -5.0473626e+02 3.4717837e+03 - 5.3661742e+02 -5.0643155e+02 3.4703090e+03 - 5.4857727e+02 -5.0841608e+02 3.4688441e+03 - 5.5909688e+02 -5.1068046e+02 3.4673969e+03 - 5.6827532e+02 -5.1321256e+02 3.4659749e+03 - 5.7620706e+02 -5.1599794e+02 3.4645851e+03 - 5.8298151e+02 -5.1902029e+02 3.4632343e+03 - 5.8868294e+02 -5.2226175e+02 3.4619285e+03 - 5.9339047e+02 -5.2570315e+02 3.4606735e+03 - 5.9717827e+02 -5.2932428e+02 3.4594746e+03 - 6.0011577e+02 -5.3310399e+02 3.4583370e+03 - 6.0226795e+02 -5.3702036e+02 3.4572652e+03 - 6.0369571e+02 -5.4105073e+02 3.4562635e+03 - 6.0445614e+02 -5.4517184e+02 3.4553358e+03 - 6.0460285e+02 -5.4935979e+02 3.4544857e+03 - 6.0418632e+02 -5.5359007e+02 3.4537164e+03 - 6.0325415e+02 -5.5783759e+02 3.4530308e+03 - 6.0185134e+02 -5.6207661e+02 3.4524315e+03 - 6.0002057e+02 -5.6628075e+02 3.4519207e+03 - 5.9780238e+02 -5.7042295e+02 3.4515001e+03 - 5.9523541e+02 -5.7447538e+02 3.4511715e+03 - 5.9235657e+02 -5.7840942e+02 3.4509359e+03 - 5.8920123e+02 -5.8219556e+02 3.4507941e+03 - 5.8580334e+02 -5.8580334e+02 3.4507469e+03 - 5.8219556e+02 -5.8920123e+02 3.4507941e+03 - 5.7840942e+02 -5.9235657e+02 3.4509359e+03 - 5.7447538e+02 -5.9523541e+02 3.4511715e+03 - 5.7042295e+02 -5.9780238e+02 3.4515001e+03 - 5.6628075e+02 -6.0002057e+02 3.4519207e+03 - 5.6207661e+02 -6.0185134e+02 3.4524315e+03 - 5.5783759e+02 -6.0325415e+02 3.4530308e+03 - 5.5359007e+02 -6.0418632e+02 3.4537164e+03 - 5.4935979e+02 -6.0460285e+02 3.4544857e+03 - 5.4517184e+02 -6.0445614e+02 3.4553358e+03 - 5.4105073e+02 -6.0369571e+02 3.4562635e+03 - 5.3702036e+02 -6.0226795e+02 3.4572652e+03 - 5.3310399e+02 -6.0011577e+02 3.4583370e+03 - 5.2932428e+02 -5.9717827e+02 3.4594746e+03 - 5.2570315e+02 -5.9339047e+02 3.4606735e+03 - 5.2226175e+02 -5.8868294e+02 3.4619285e+03 - 5.1902029e+02 -5.8298151e+02 3.4632343e+03 - 5.1599794e+02 -5.7620706e+02 3.4645851e+03 - 5.1321256e+02 -5.6827532e+02 3.4659749e+03 - 5.1068046e+02 -5.5909688e+02 3.4673969e+03 - 5.0841608e+02 -5.4857727e+02 3.4688441e+03 - 5.0643155e+02 -5.3661742e+02 3.4703090e+03 - 5.0473626e+02 -5.2311436e+02 3.4717837e+03 - 5.0333630e+02 -5.0796241e+02 3.4732596e+03 - 5.0223382e+02 -4.9105489e+02 3.4747278e+03 - 5.0142643e+02 -4.7228654e+02 3.4761787e+03 - 5.0090648e+02 -4.5155675e+02 3.4776021e+03 - 5.0066041e+02 -4.2877364e+02 3.4789876e+03 - 5.0066827e+02 -4.0385918e+02 3.4803241e+03 - 5.0090326e+02 -3.7675525e+02 3.4816000e+03 - 5.0133172e+02 -3.4743047e+02 3.4828037e+03 - 5.0191342e+02 -3.1588763e+02 3.4839231e+03 - 5.0260238e+02 -2.8217120e+02 3.4849464e+03 - 5.0334832e+02 -2.4637417e+02 3.4858618e+03 - 5.0409861e+02 -2.0864352e+02 3.4866583e+03 - 5.0480095e+02 -1.6918325e+02 3.4873257e+03 - 5.0540633e+02 -1.2825421e+02 3.4878549e+03 - 5.0587226e+02 -8.6169981e+01 3.4882386e+03 - 5.0616579e+02 -4.3288527e+01 3.4884711e+03 - 5.0626602e+02 -2.4067136e-09 3.4885489e+03 - 5.4859817e+02 0.0000000e+00 3.4779449e+03 - 5.4848909e+02 4.6985589e+01 3.4778531e+03 - 5.4816962e+02 9.3523456e+01 3.4775791e+03 - 5.4766243e+02 1.3918488e+02 3.4771271e+03 - 5.4700324e+02 1.8357724e+02 3.4765039e+03 - 5.4623807e+02 2.2635763e+02 3.4757184e+03 - 5.4541990e+02 2.6724199e+02 3.4747817e+03 - 5.4460518e+02 3.0600952e+02 3.4737059e+03 - 5.4385058e+02 3.4250264e+02 3.4725044e+03 - 5.4321017e+02 3.7662328e+02 3.4711911e+03 - 5.4273327e+02 4.0832664e+02 3.4697802e+03 - 5.4246298e+02 4.3761331e+02 3.4682859e+03 - 5.4243529e+02 4.6452088e+02 3.4667219e+03 - 5.4267883e+02 4.8911566e+02 3.4651018e+03 - 5.4321497e+02 5.1148507e+02 3.4634386e+03 - 5.4405821e+02 5.3173103e+02 3.4617444e+03 - 5.4521686e+02 5.4996440e+02 3.4600310e+03 - 5.4669364e+02 5.6630052e+02 3.4583095e+03 - 5.4848649e+02 5.8085585e+02 3.4565902e+03 - 5.5058921e+02 5.9374534e+02 3.4548829e+03 - 5.5299213e+02 6.0508069e+02 3.4531969e+03 - 5.5568266e+02 6.1496914e+02 3.4515408e+03 - 5.5864582e+02 6.2351273e+02 3.4499225e+03 - 5.6186458e+02 6.3080794e+02 3.4483499e+03 - 5.6532027e+02 6.3694556e+02 3.4468299e+03 - 5.6899281e+02 6.4201083e+02 3.4453691e+03 - 5.7286093e+02 6.4608359e+02 3.4439739e+03 - 5.7690234e+02 6.4923859e+02 3.4426500e+03 - 5.8109383e+02 6.5154585e+02 3.4414027e+03 - 5.8541138e+02 6.5307096e+02 3.4402369e+03 - 5.8983020e+02 6.5387551e+02 3.4391573e+03 - 5.9432475e+02 6.5401740e+02 3.4381679e+03 - 5.9886878e+02 6.5355118e+02 3.4372726e+03 - 6.0343531e+02 6.5252838e+02 3.4364747e+03 - 6.0799660e+02 6.5099777e+02 3.4357771e+03 - 6.1252415e+02 6.4900566e+02 3.4351825e+03 - 6.1698862e+02 6.4659611e+02 3.4346930e+03 - 6.2135982e+02 6.4381114e+02 3.4343104e+03 - 6.2560663e+02 6.4069096e+02 3.4340362e+03 - 6.2969693e+02 6.3727409e+02 3.4338712e+03 - 6.3359754e+02 6.3359754e+02 3.4338161e+03 - 6.3727409e+02 6.2969693e+02 3.4338712e+03 - 6.4069096e+02 6.2560663e+02 3.4340362e+03 - 6.4381114e+02 6.2135982e+02 3.4343104e+03 - 6.4659611e+02 6.1698862e+02 3.4346930e+03 - 6.4900566e+02 6.1252415e+02 3.4351825e+03 - 6.5099777e+02 6.0799660e+02 3.4357771e+03 - 6.5252838e+02 6.0343531e+02 3.4364747e+03 - 6.5355118e+02 5.9886878e+02 3.4372726e+03 - 6.5401740e+02 5.9432475e+02 3.4381679e+03 - 6.5387551e+02 5.8983020e+02 3.4391573e+03 - 6.5307096e+02 5.8541138e+02 3.4402369e+03 - 6.5154585e+02 5.8109383e+02 3.4414027e+03 - 6.4923859e+02 5.7690234e+02 3.4426500e+03 - 6.4608359e+02 5.7286093e+02 3.4439739e+03 - 6.4201083e+02 5.6899281e+02 3.4453691e+03 - 6.3694556e+02 5.6532027e+02 3.4468299e+03 - 6.3080794e+02 5.6186458e+02 3.4483499e+03 - 6.2351273e+02 5.5864582e+02 3.4499225e+03 - 6.1496914e+02 5.5568266e+02 3.4515408e+03 - 6.0508069e+02 5.5299213e+02 3.4531969e+03 - 5.9374534e+02 5.5058921e+02 3.4548829e+03 - 5.8085585e+02 5.4848649e+02 3.4565902e+03 - 5.6630052e+02 5.4669364e+02 3.4583095e+03 - 5.4996440e+02 5.4521686e+02 3.4600310e+03 - 5.3173103e+02 5.4405821e+02 3.4617444e+03 - 5.1148507e+02 5.4321497e+02 3.4634386e+03 - 4.8911566e+02 5.4267883e+02 3.4651018e+03 - 4.6452088e+02 5.4243529e+02 3.4667219e+03 - 4.3761331e+02 5.4246298e+02 3.4682859e+03 - 4.0832664e+02 5.4273327e+02 3.4697802e+03 - 3.7662328e+02 5.4321017e+02 3.4711911e+03 - 3.4250264e+02 5.4385058e+02 3.4725044e+03 - 3.0600952e+02 5.4460518e+02 3.4737059e+03 - 2.6724199e+02 5.4541990e+02 3.4747817e+03 - 2.2635763e+02 5.4623807e+02 3.4757184e+03 - 1.8357724e+02 5.4700324e+02 3.4765039e+03 - 1.3918488e+02 5.4766243e+02 3.4771271e+03 - 9.3523456e+01 5.4816962e+02 3.4775791e+03 - 4.6985589e+01 5.4848909e+02 3.4778531e+03 - 0.0000000e+00 5.4859817e+02 3.4779449e+03 - -4.6985589e+01 5.4848909e+02 3.4778531e+03 - -9.3523456e+01 5.4816962e+02 3.4775791e+03 - -1.3918488e+02 5.4766243e+02 3.4771271e+03 - -1.8357724e+02 5.4700324e+02 3.4765039e+03 - -2.2635763e+02 5.4623807e+02 3.4757184e+03 - -2.6724199e+02 5.4541990e+02 3.4747817e+03 - -3.0600952e+02 5.4460518e+02 3.4737059e+03 - -3.4250264e+02 5.4385058e+02 3.4725044e+03 - -3.7662328e+02 5.4321017e+02 3.4711911e+03 - -4.0832664e+02 5.4273327e+02 3.4697802e+03 - -4.3761331e+02 5.4246298e+02 3.4682859e+03 - -4.6452088e+02 5.4243529e+02 3.4667219e+03 - -4.8911566e+02 5.4267883e+02 3.4651018e+03 - -5.1148507e+02 5.4321497e+02 3.4634386e+03 - -5.3173103e+02 5.4405821e+02 3.4617444e+03 - -5.4996440e+02 5.4521686e+02 3.4600310e+03 - -5.6630052e+02 5.4669364e+02 3.4583095e+03 - -5.8085585e+02 5.4848649e+02 3.4565902e+03 - -5.9374534e+02 5.5058921e+02 3.4548829e+03 - -6.0508069e+02 5.5299213e+02 3.4531969e+03 - -6.1496914e+02 5.5568266e+02 3.4515408e+03 - -6.2351273e+02 5.5864582e+02 3.4499225e+03 - -6.3080794e+02 5.6186458e+02 3.4483499e+03 - -6.3694556e+02 5.6532027e+02 3.4468299e+03 - -6.4201083e+02 5.6899281e+02 3.4453691e+03 - -6.4608359e+02 5.7286093e+02 3.4439739e+03 - -6.4923859e+02 5.7690234e+02 3.4426500e+03 - -6.5154585e+02 5.8109383e+02 3.4414027e+03 - -6.5307096e+02 5.8541138e+02 3.4402369e+03 - -6.5387551e+02 5.8983020e+02 3.4391573e+03 - -6.5401740e+02 5.9432475e+02 3.4381679e+03 - -6.5355118e+02 5.9886878e+02 3.4372726e+03 - -6.5252838e+02 6.0343531e+02 3.4364747e+03 - -6.5099777e+02 6.0799660e+02 3.4357771e+03 - -6.4900566e+02 6.1252415e+02 3.4351825e+03 - -6.4659611e+02 6.1698862e+02 3.4346930e+03 - -6.4381114e+02 6.2135982e+02 3.4343104e+03 - -6.4069096e+02 6.2560663e+02 3.4340362e+03 - -6.3727409e+02 6.2969693e+02 3.4338712e+03 - -6.3359754e+02 6.3359754e+02 3.4338161e+03 - -6.2969693e+02 6.3727409e+02 3.4338712e+03 - -6.2560663e+02 6.4069096e+02 3.4340362e+03 - -6.2135982e+02 6.4381114e+02 3.4343104e+03 - -6.1698862e+02 6.4659611e+02 3.4346930e+03 - -6.1252415e+02 6.4900566e+02 3.4351825e+03 - -6.0799660e+02 6.5099777e+02 3.4357771e+03 - -6.0343531e+02 6.5252838e+02 3.4364747e+03 - -5.9886878e+02 6.5355118e+02 3.4372726e+03 - -5.9432475e+02 6.5401740e+02 3.4381679e+03 - -5.8983020e+02 6.5387551e+02 3.4391573e+03 - -5.8541138e+02 6.5307096e+02 3.4402369e+03 - -5.8109383e+02 6.5154585e+02 3.4414027e+03 - -5.7690234e+02 6.4923859e+02 3.4426500e+03 - -5.7286093e+02 6.4608359e+02 3.4439739e+03 - -5.6899281e+02 6.4201083e+02 3.4453691e+03 - -5.6532027e+02 6.3694556e+02 3.4468299e+03 - -5.6186458e+02 6.3080794e+02 3.4483499e+03 - -5.5864582e+02 6.2351273e+02 3.4499225e+03 - -5.5568266e+02 6.1496914e+02 3.4515408e+03 - -5.5299213e+02 6.0508069e+02 3.4531969e+03 - -5.5058921e+02 5.9374534e+02 3.4548829e+03 - -5.4848649e+02 5.8085585e+02 3.4565902e+03 - -5.4669364e+02 5.6630052e+02 3.4583095e+03 - -5.4521686e+02 5.4996440e+02 3.4600310e+03 - -5.4405821e+02 5.3173103e+02 3.4617444e+03 - -5.4321497e+02 5.1148507e+02 3.4634386e+03 - -5.4267883e+02 4.8911566e+02 3.4651018e+03 - -5.4243529e+02 4.6452088e+02 3.4667219e+03 - -5.4246298e+02 4.3761331e+02 3.4682859e+03 - -5.4273327e+02 4.0832664e+02 3.4697802e+03 - -5.4321017e+02 3.7662328e+02 3.4711911e+03 - -5.4385058e+02 3.4250264e+02 3.4725044e+03 - -5.4460518e+02 3.0600952e+02 3.4737059e+03 - -5.4541990e+02 2.6724199e+02 3.4747817e+03 - -5.4623807e+02 2.2635763e+02 3.4757184e+03 - -5.4700324e+02 1.8357724e+02 3.4765039e+03 - -5.4766243e+02 1.3918488e+02 3.4771271e+03 - -5.4816962e+02 9.3523456e+01 3.4775791e+03 - -5.4848909e+02 4.6985589e+01 3.4778531e+03 - -5.4859817e+02 0.0000000e+00 3.4779449e+03 - -5.4848909e+02 -4.6985589e+01 3.4778531e+03 - -5.4816962e+02 -9.3523456e+01 3.4775791e+03 - -5.4766243e+02 -1.3918488e+02 3.4771271e+03 - -5.4700324e+02 -1.8357724e+02 3.4765039e+03 - -5.4623807e+02 -2.2635763e+02 3.4757184e+03 - -5.4541990e+02 -2.6724199e+02 3.4747817e+03 - -5.4460518e+02 -3.0600952e+02 3.4737059e+03 - -5.4385058e+02 -3.4250264e+02 3.4725044e+03 - -5.4321017e+02 -3.7662328e+02 3.4711911e+03 - -5.4273327e+02 -4.0832664e+02 3.4697802e+03 - -5.4246298e+02 -4.3761331e+02 3.4682859e+03 - -5.4243529e+02 -4.6452088e+02 3.4667219e+03 - -5.4267883e+02 -4.8911566e+02 3.4651018e+03 - -5.4321497e+02 -5.1148507e+02 3.4634386e+03 - -5.4405821e+02 -5.3173103e+02 3.4617444e+03 - -5.4521686e+02 -5.4996440e+02 3.4600310e+03 - -5.4669364e+02 -5.6630052e+02 3.4583095e+03 - -5.4848649e+02 -5.8085585e+02 3.4565902e+03 - -5.5058921e+02 -5.9374534e+02 3.4548829e+03 - -5.5299213e+02 -6.0508069e+02 3.4531969e+03 - -5.5568266e+02 -6.1496914e+02 3.4515408e+03 - -5.5864582e+02 -6.2351273e+02 3.4499225e+03 - -5.6186458e+02 -6.3080794e+02 3.4483499e+03 - -5.6532027e+02 -6.3694556e+02 3.4468299e+03 - -5.6899281e+02 -6.4201083e+02 3.4453691e+03 - -5.7286093e+02 -6.4608359e+02 3.4439739e+03 - -5.7690234e+02 -6.4923859e+02 3.4426500e+03 - -5.8109383e+02 -6.5154585e+02 3.4414027e+03 - -5.8541138e+02 -6.5307096e+02 3.4402369e+03 - -5.8983020e+02 -6.5387551e+02 3.4391573e+03 - -5.9432475e+02 -6.5401740e+02 3.4381679e+03 - -5.9886878e+02 -6.5355118e+02 3.4372726e+03 - -6.0343531e+02 -6.5252838e+02 3.4364747e+03 - -6.0799660e+02 -6.5099777e+02 3.4357771e+03 - -6.1252415e+02 -6.4900566e+02 3.4351825e+03 - -6.1698862e+02 -6.4659611e+02 3.4346930e+03 - -6.2135982e+02 -6.4381114e+02 3.4343104e+03 - -6.2560663e+02 -6.4069096e+02 3.4340362e+03 - -6.2969693e+02 -6.3727409e+02 3.4338712e+03 - -6.3359754e+02 -6.3359754e+02 3.4338161e+03 - -6.3727409e+02 -6.2969693e+02 3.4338712e+03 - -6.4069096e+02 -6.2560663e+02 3.4340362e+03 - -6.4381114e+02 -6.2135982e+02 3.4343104e+03 - -6.4659611e+02 -6.1698862e+02 3.4346930e+03 - -6.4900566e+02 -6.1252415e+02 3.4351825e+03 - -6.5099777e+02 -6.0799660e+02 3.4357771e+03 - -6.5252838e+02 -6.0343531e+02 3.4364747e+03 - -6.5355118e+02 -5.9886878e+02 3.4372726e+03 - -6.5401740e+02 -5.9432475e+02 3.4381679e+03 - -6.5387551e+02 -5.8983020e+02 3.4391573e+03 - -6.5307096e+02 -5.8541138e+02 3.4402369e+03 - -6.5154585e+02 -5.8109383e+02 3.4414027e+03 - -6.4923859e+02 -5.7690234e+02 3.4426500e+03 - -6.4608359e+02 -5.7286093e+02 3.4439739e+03 - -6.4201083e+02 -5.6899281e+02 3.4453691e+03 - -6.3694556e+02 -5.6532027e+02 3.4468299e+03 - -6.3080794e+02 -5.6186458e+02 3.4483499e+03 - -6.2351273e+02 -5.5864582e+02 3.4499225e+03 - -6.1496914e+02 -5.5568266e+02 3.4515408e+03 - -6.0508069e+02 -5.5299213e+02 3.4531969e+03 - -5.9374534e+02 -5.5058921e+02 3.4548829e+03 - -5.8085585e+02 -5.4848649e+02 3.4565902e+03 - -5.6630052e+02 -5.4669364e+02 3.4583095e+03 - -5.4996440e+02 -5.4521686e+02 3.4600310e+03 - -5.3173103e+02 -5.4405821e+02 3.4617444e+03 - -5.1148507e+02 -5.4321497e+02 3.4634386e+03 - -4.8911566e+02 -5.4267883e+02 3.4651018e+03 - -4.6452088e+02 -5.4243529e+02 3.4667219e+03 - -4.3761331e+02 -5.4246298e+02 3.4682859e+03 - -4.0832664e+02 -5.4273327e+02 3.4697802e+03 - -3.7662328e+02 -5.4321017e+02 3.4711911e+03 - -3.4250264e+02 -5.4385058e+02 3.4725044e+03 - -3.0600952e+02 -5.4460518e+02 3.4737059e+03 - -2.6724199e+02 -5.4541990e+02 3.4747817e+03 - -2.2635763e+02 -5.4623807e+02 3.4757184e+03 - -1.8357724e+02 -5.4700324e+02 3.4765039e+03 - -1.3918488e+02 -5.4766243e+02 3.4771271e+03 - -9.3523456e+01 -5.4816962e+02 3.4775791e+03 - -4.6985589e+01 -5.4848909e+02 3.4778531e+03 - 0.0000000e+00 -5.4859817e+02 3.4779449e+03 - 4.6985589e+01 -5.4848909e+02 3.4778531e+03 - 9.3523456e+01 -5.4816962e+02 3.4775791e+03 - 1.3918488e+02 -5.4766243e+02 3.4771271e+03 - 1.8357724e+02 -5.4700324e+02 3.4765039e+03 - 2.2635763e+02 -5.4623807e+02 3.4757184e+03 - 2.6724199e+02 -5.4541990e+02 3.4747817e+03 - 3.0600952e+02 -5.4460518e+02 3.4737059e+03 - 3.4250264e+02 -5.4385058e+02 3.4725044e+03 - 3.7662328e+02 -5.4321017e+02 3.4711911e+03 - 4.0832664e+02 -5.4273327e+02 3.4697802e+03 - 4.3761331e+02 -5.4246298e+02 3.4682859e+03 - 4.6452088e+02 -5.4243529e+02 3.4667219e+03 - 4.8911566e+02 -5.4267883e+02 3.4651018e+03 - 5.1148507e+02 -5.4321497e+02 3.4634386e+03 - 5.3173103e+02 -5.4405821e+02 3.4617444e+03 - 5.4996440e+02 -5.4521686e+02 3.4600310e+03 - 5.6630052e+02 -5.4669364e+02 3.4583095e+03 - 5.8085585e+02 -5.4848649e+02 3.4565902e+03 - 5.9374534e+02 -5.5058921e+02 3.4548829e+03 - 6.0508069e+02 -5.5299213e+02 3.4531969e+03 - 6.1496914e+02 -5.5568266e+02 3.4515408e+03 - 6.2351273e+02 -5.5864582e+02 3.4499225e+03 - 6.3080794e+02 -5.6186458e+02 3.4483499e+03 - 6.3694556e+02 -5.6532027e+02 3.4468299e+03 - 6.4201083e+02 -5.6899281e+02 3.4453691e+03 - 6.4608359e+02 -5.7286093e+02 3.4439739e+03 - 6.4923859e+02 -5.7690234e+02 3.4426500e+03 - 6.5154585e+02 -5.8109383e+02 3.4414027e+03 - 6.5307096e+02 -5.8541138e+02 3.4402369e+03 - 6.5387551e+02 -5.8983020e+02 3.4391573e+03 - 6.5401740e+02 -5.9432475e+02 3.4381679e+03 - 6.5355118e+02 -5.9886878e+02 3.4372726e+03 - 6.5252838e+02 -6.0343531e+02 3.4364747e+03 - 6.5099777e+02 -6.0799660e+02 3.4357771e+03 - 6.4900566e+02 -6.1252415e+02 3.4351825e+03 - 6.4659611e+02 -6.1698862e+02 3.4346930e+03 - 6.4381114e+02 -6.2135982e+02 3.4343104e+03 - 6.4069096e+02 -6.2560663e+02 3.4340362e+03 - 6.3727409e+02 -6.2969693e+02 3.4338712e+03 - 6.3359754e+02 -6.3359754e+02 3.4338161e+03 - 6.2969693e+02 -6.3727409e+02 3.4338712e+03 - 6.2560663e+02 -6.4069096e+02 3.4340362e+03 - 6.2135982e+02 -6.4381114e+02 3.4343104e+03 - 6.1698862e+02 -6.4659611e+02 3.4346930e+03 - 6.1252415e+02 -6.4900566e+02 3.4351825e+03 - 6.0799660e+02 -6.5099777e+02 3.4357771e+03 - 6.0343531e+02 -6.5252838e+02 3.4364747e+03 - 5.9886878e+02 -6.5355118e+02 3.4372726e+03 - 5.9432475e+02 -6.5401740e+02 3.4381679e+03 - 5.8983020e+02 -6.5387551e+02 3.4391573e+03 - 5.8541138e+02 -6.5307096e+02 3.4402369e+03 - 5.8109383e+02 -6.5154585e+02 3.4414027e+03 - 5.7690234e+02 -6.4923859e+02 3.4426500e+03 - 5.7286093e+02 -6.4608359e+02 3.4439739e+03 - 5.6899281e+02 -6.4201083e+02 3.4453691e+03 - 5.6532027e+02 -6.3694556e+02 3.4468299e+03 - 5.6186458e+02 -6.3080794e+02 3.4483499e+03 - 5.5864582e+02 -6.2351273e+02 3.4499225e+03 - 5.5568266e+02 -6.1496914e+02 3.4515408e+03 - 5.5299213e+02 -6.0508069e+02 3.4531969e+03 - 5.5058921e+02 -5.9374534e+02 3.4548829e+03 - 5.4848649e+02 -5.8085585e+02 3.4565902e+03 - 5.4669364e+02 -5.6630052e+02 3.4583095e+03 - 5.4521686e+02 -5.4996440e+02 3.4600310e+03 - 5.4405821e+02 -5.3173103e+02 3.4617444e+03 - 5.4321497e+02 -5.1148507e+02 3.4634386e+03 - 5.4267883e+02 -4.8911566e+02 3.4651018e+03 - 5.4243529e+02 -4.6452088e+02 3.4667219e+03 - 5.4246298e+02 -4.3761331e+02 3.4682859e+03 - 5.4273327e+02 -4.0832664e+02 3.4697802e+03 - 5.4321017e+02 -3.7662328e+02 3.4711911e+03 - 5.4385058e+02 -3.4250264e+02 3.4725044e+03 - 5.4460518e+02 -3.0600952e+02 3.4737059e+03 - 5.4541990e+02 -2.6724199e+02 3.4747817e+03 - 5.4623807e+02 -2.2635763e+02 3.4757184e+03 - 5.4700324e+02 -1.8357724e+02 3.4765039e+03 - 5.4766243e+02 -1.3918488e+02 3.4771271e+03 - 5.4816962e+02 -9.3523456e+01 3.4775791e+03 - 5.4848909e+02 -4.6985589e+01 3.4778531e+03 - 5.4859817e+02 0.0000000e+00 3.4779449e+03 - 5.9096060e+02 2.4067136e-09 3.4664447e+03 - 5.9084260e+02 5.0706147e+01 3.4663377e+03 - 5.9049699e+02 1.0092207e+02 3.4660184e+03 - 5.8994822e+02 1.5017883e+02 3.4654919e+03 - 5.8923477e+02 1.9804788e+02 3.4647664e+03 - 5.8840616e+02 2.4415612e+02 3.4638525e+03 - 5.8751930e+02 2.8819600e+02 3.4627635e+03 - 5.8663469e+02 3.2993005e+02 3.4615140e+03 - 5.8581296e+02 3.6919060e+02 3.4601197e+03 - 5.8511183e+02 4.0587532e+02 3.4585972e+03 - 5.8458384e+02 4.3993998e+02 3.4569631e+03 - 5.8427479e+02 4.7138958e+02 3.4552339e+03 - 5.8422292e+02 5.0026888e+02 3.4534258e+03 - 5.8445859e+02 5.2665324e+02 3.4515545e+03 - 5.8500449e+02 5.5064020e+02 3.4496347e+03 - 5.8587610e+02 5.7234231e+02 3.4476807e+03 - 5.8708234e+02 5.9188108e+02 3.4457058e+03 - 5.8862633e+02 6.0938230e+02 3.4437227e+03 - 5.9050618e+02 6.2497234e+02 3.4417432e+03 - 5.9271569e+02 6.3877552e+02 3.4397783e+03 - 5.9524503e+02 6.5091229e+02 3.4378386e+03 - 5.9808131e+02 6.6149798e+02 3.4359338e+03 - 6.0120914e+02 6.7064211e+02 3.4340732e+03 - 6.0461097e+02 6.7844810e+02 3.4322652e+03 - 6.0826746e+02 6.8501316e+02 3.4305180e+03 - 6.1215778e+02 6.9042846e+02 3.4288392e+03 - 6.1625978e+02 6.9477941e+02 3.4272358e+03 - 6.2055014e+02 6.9814596e+02 3.4257143e+03 - 6.2500454e+02 7.0060301e+02 3.4242809e+03 - 6.2959766e+02 7.0222082e+02 3.4229413e+03 - 6.3430331e+02 7.0306538e+02 3.4217006e+03 - 6.3909442e+02 7.0319880e+02 3.4205636e+03 - 6.4394302e+02 7.0267970e+02 3.4195346e+03 - 6.4882031e+02 7.0156350e+02 3.4186175e+03 - 6.5369657e+02 6.9990277e+02 3.4178157e+03 - 6.5854117e+02 6.9774746e+02 3.4171323e+03 - 6.6332253e+02 6.9514517e+02 3.4165696e+03 - 6.6800805e+02 6.9214138e+02 3.4161298e+03 - 6.7256410e+02 6.8877960e+02 3.4158145e+03 - 6.7695590e+02 6.8510159e+02 3.4156249e+03 - 6.8114748e+02 6.8114748e+02 3.4155616e+03 - 6.8510159e+02 6.7695590e+02 3.4156249e+03 - 6.8877960e+02 6.7256410e+02 3.4158145e+03 - 6.9214138e+02 6.6800805e+02 3.4161298e+03 - 6.9514517e+02 6.6332253e+02 3.4165696e+03 - 6.9774746e+02 6.5854117e+02 3.4171323e+03 - 6.9990277e+02 6.5369657e+02 3.4178157e+03 - 7.0156350e+02 6.4882031e+02 3.4186175e+03 - 7.0267970e+02 6.4394302e+02 3.4195346e+03 - 7.0319880e+02 6.3909442e+02 3.4205636e+03 - 7.0306538e+02 6.3430331e+02 3.4217006e+03 - 7.0222082e+02 6.2959766e+02 3.4229413e+03 - 7.0060301e+02 6.2500454e+02 3.4242809e+03 - 6.9814596e+02 6.2055014e+02 3.4257143e+03 - 6.9477941e+02 6.1625978e+02 3.4272358e+03 - 6.9042846e+02 6.1215778e+02 3.4288392e+03 - 6.8501316e+02 6.0826746e+02 3.4305180e+03 - 6.7844810e+02 6.0461097e+02 3.4322652e+03 - 6.7064211e+02 6.0120914e+02 3.4340732e+03 - 6.6149798e+02 5.9808131e+02 3.4359338e+03 - 6.5091229e+02 5.9524503e+02 3.4378386e+03 - 6.3877552e+02 5.9271569e+02 3.4397783e+03 - 6.2497234e+02 5.9050618e+02 3.4417432e+03 - 6.0938230e+02 5.8862633e+02 3.4437227e+03 - 5.9188108e+02 5.8708234e+02 3.4457058e+03 - 5.7234231e+02 5.8587610e+02 3.4476807e+03 - 5.5064020e+02 5.8500449e+02 3.4496347e+03 - 5.2665324e+02 5.8445859e+02 3.4515545e+03 - 5.0026888e+02 5.8422292e+02 3.4534258e+03 - 4.7138958e+02 5.8427479e+02 3.4552339e+03 - 4.3993998e+02 5.8458384e+02 3.4569631e+03 - 4.0587532e+02 5.8511183e+02 3.4585972e+03 - 3.6919060e+02 5.8581296e+02 3.4601197e+03 - 3.2993005e+02 5.8663469e+02 3.4615140e+03 - 2.8819600e+02 5.8751930e+02 3.4627635e+03 - 2.4415612e+02 5.8840616e+02 3.4638525e+03 - 1.9804788e+02 5.8923477e+02 3.4647664e+03 - 1.5017883e+02 5.8994822e+02 3.4654919e+03 - 1.0092207e+02 5.9049699e+02 3.4660184e+03 - 5.0706147e+01 5.9084260e+02 3.4663377e+03 - 0.0000000e+00 5.9096060e+02 3.4664447e+03 - -5.0706147e+01 5.9084260e+02 3.4663377e+03 - -1.0092207e+02 5.9049699e+02 3.4660184e+03 - -1.5017883e+02 5.8994822e+02 3.4654919e+03 - -1.9804788e+02 5.8923477e+02 3.4647664e+03 - -2.4415612e+02 5.8840616e+02 3.4638525e+03 - -2.8819600e+02 5.8751930e+02 3.4627635e+03 - -3.2993005e+02 5.8663469e+02 3.4615140e+03 - -3.6919060e+02 5.8581296e+02 3.4601197e+03 - -4.0587532e+02 5.8511183e+02 3.4585972e+03 - -4.3993998e+02 5.8458384e+02 3.4569631e+03 - -4.7138958e+02 5.8427479e+02 3.4552339e+03 - -5.0026888e+02 5.8422292e+02 3.4534258e+03 - -5.2665324e+02 5.8445859e+02 3.4515545e+03 - -5.5064020e+02 5.8500449e+02 3.4496347e+03 - -5.7234231e+02 5.8587610e+02 3.4476807e+03 - -5.9188108e+02 5.8708234e+02 3.4457058e+03 - -6.0938230e+02 5.8862633e+02 3.4437227e+03 - -6.2497234e+02 5.9050618e+02 3.4417432e+03 - -6.3877552e+02 5.9271569e+02 3.4397783e+03 - -6.5091229e+02 5.9524503e+02 3.4378386e+03 - -6.6149798e+02 5.9808131e+02 3.4359338e+03 - -6.7064211e+02 6.0120914e+02 3.4340732e+03 - -6.7844810e+02 6.0461097e+02 3.4322652e+03 - -6.8501316e+02 6.0826746e+02 3.4305180e+03 - -6.9042846e+02 6.1215778e+02 3.4288392e+03 - -6.9477941e+02 6.1625978e+02 3.4272358e+03 - -6.9814596e+02 6.2055014e+02 3.4257143e+03 - -7.0060301e+02 6.2500454e+02 3.4242809e+03 - -7.0222082e+02 6.2959766e+02 3.4229413e+03 - -7.0306538e+02 6.3430331e+02 3.4217006e+03 - -7.0319880e+02 6.3909442e+02 3.4205636e+03 - -7.0267970e+02 6.4394302e+02 3.4195346e+03 - -7.0156350e+02 6.4882031e+02 3.4186175e+03 - -6.9990277e+02 6.5369657e+02 3.4178157e+03 - -6.9774746e+02 6.5854117e+02 3.4171323e+03 - -6.9514517e+02 6.6332253e+02 3.4165696e+03 - -6.9214138e+02 6.6800805e+02 3.4161298e+03 - -6.8877960e+02 6.7256410e+02 3.4158145e+03 - -6.8510159e+02 6.7695590e+02 3.4156249e+03 - -6.8114748e+02 6.8114748e+02 3.4155616e+03 - -6.7695590e+02 6.8510159e+02 3.4156249e+03 - -6.7256410e+02 6.8877960e+02 3.4158145e+03 - -6.6800805e+02 6.9214138e+02 3.4161298e+03 - -6.6332253e+02 6.9514517e+02 3.4165696e+03 - -6.5854117e+02 6.9774746e+02 3.4171323e+03 - -6.5369657e+02 6.9990277e+02 3.4178157e+03 - -6.4882031e+02 7.0156350e+02 3.4186175e+03 - -6.4394302e+02 7.0267970e+02 3.4195346e+03 - -6.3909442e+02 7.0319880e+02 3.4205636e+03 - -6.3430331e+02 7.0306538e+02 3.4217006e+03 - -6.2959766e+02 7.0222082e+02 3.4229413e+03 - -6.2500454e+02 7.0060301e+02 3.4242809e+03 - -6.2055014e+02 6.9814596e+02 3.4257143e+03 - -6.1625978e+02 6.9477941e+02 3.4272358e+03 - -6.1215778e+02 6.9042846e+02 3.4288392e+03 - -6.0826746e+02 6.8501316e+02 3.4305180e+03 - -6.0461097e+02 6.7844810e+02 3.4322652e+03 - -6.0120914e+02 6.7064211e+02 3.4340732e+03 - -5.9808131e+02 6.6149798e+02 3.4359338e+03 - -5.9524503e+02 6.5091229e+02 3.4378386e+03 - -5.9271569e+02 6.3877552e+02 3.4397783e+03 - -5.9050618e+02 6.2497234e+02 3.4417432e+03 - -5.8862633e+02 6.0938230e+02 3.4437227e+03 - -5.8708234e+02 5.9188108e+02 3.4457058e+03 - -5.8587610e+02 5.7234231e+02 3.4476807e+03 - -5.8500449e+02 5.5064020e+02 3.4496347e+03 - -5.8445859e+02 5.2665324e+02 3.4515545e+03 - -5.8422292e+02 5.0026888e+02 3.4534258e+03 - -5.8427479e+02 4.7138958e+02 3.4552339e+03 - -5.8458384e+02 4.3993998e+02 3.4569631e+03 - -5.8511183e+02 4.0587532e+02 3.4585972e+03 - -5.8581296e+02 3.6919060e+02 3.4601197e+03 - -5.8663469e+02 3.2993005e+02 3.4615140e+03 - -5.8751930e+02 2.8819600e+02 3.4627635e+03 - -5.8840616e+02 2.4415612e+02 3.4638525e+03 - -5.8923477e+02 1.9804788e+02 3.4647664e+03 - -5.8994822e+02 1.5017883e+02 3.4654919e+03 - -5.9049699e+02 1.0092207e+02 3.4660184e+03 - -5.9084260e+02 5.0706147e+01 3.4663377e+03 - -5.9096060e+02 0.0000000e+00 3.4664447e+03 - -5.9084260e+02 -5.0706147e+01 3.4663377e+03 - -5.9049699e+02 -1.0092207e+02 3.4660184e+03 - -5.8994822e+02 -1.5017883e+02 3.4654919e+03 - -5.8923477e+02 -1.9804788e+02 3.4647664e+03 - -5.8840616e+02 -2.4415612e+02 3.4638525e+03 - -5.8751930e+02 -2.8819600e+02 3.4627635e+03 - -5.8663469e+02 -3.2993005e+02 3.4615140e+03 - -5.8581296e+02 -3.6919060e+02 3.4601197e+03 - -5.8511183e+02 -4.0587532e+02 3.4585972e+03 - -5.8458384e+02 -4.3993998e+02 3.4569631e+03 - -5.8427479e+02 -4.7138958e+02 3.4552339e+03 - -5.8422292e+02 -5.0026888e+02 3.4534258e+03 - -5.8445859e+02 -5.2665324e+02 3.4515545e+03 - -5.8500449e+02 -5.5064020e+02 3.4496347e+03 - -5.8587610e+02 -5.7234231e+02 3.4476807e+03 - -5.8708234e+02 -5.9188108e+02 3.4457058e+03 - -5.8862633e+02 -6.0938230e+02 3.4437227e+03 - -5.9050618e+02 -6.2497234e+02 3.4417432e+03 - -5.9271569e+02 -6.3877552e+02 3.4397783e+03 - -5.9524503e+02 -6.5091229e+02 3.4378386e+03 - -5.9808131e+02 -6.6149798e+02 3.4359338e+03 - -6.0120914e+02 -6.7064211e+02 3.4340732e+03 - -6.0461097e+02 -6.7844810e+02 3.4322652e+03 - -6.0826746e+02 -6.8501316e+02 3.4305180e+03 - -6.1215778e+02 -6.9042846e+02 3.4288392e+03 - -6.1625978e+02 -6.9477941e+02 3.4272358e+03 - -6.2055014e+02 -6.9814596e+02 3.4257143e+03 - -6.2500454e+02 -7.0060301e+02 3.4242809e+03 - -6.2959766e+02 -7.0222082e+02 3.4229413e+03 - -6.3430331e+02 -7.0306538e+02 3.4217006e+03 - -6.3909442e+02 -7.0319880e+02 3.4205636e+03 - -6.4394302e+02 -7.0267970e+02 3.4195346e+03 - -6.4882031e+02 -7.0156350e+02 3.4186175e+03 - -6.5369657e+02 -6.9990277e+02 3.4178157e+03 - -6.5854117e+02 -6.9774746e+02 3.4171323e+03 - -6.6332253e+02 -6.9514517e+02 3.4165696e+03 - -6.6800805e+02 -6.9214138e+02 3.4161298e+03 - -6.7256410e+02 -6.8877960e+02 3.4158145e+03 - -6.7695590e+02 -6.8510159e+02 3.4156249e+03 - -6.8114748e+02 -6.8114748e+02 3.4155616e+03 - -6.8510159e+02 -6.7695590e+02 3.4156249e+03 - -6.8877960e+02 -6.7256410e+02 3.4158145e+03 - -6.9214138e+02 -6.6800805e+02 3.4161298e+03 - -6.9514517e+02 -6.6332253e+02 3.4165696e+03 - -6.9774746e+02 -6.5854117e+02 3.4171323e+03 - -6.9990277e+02 -6.5369657e+02 3.4178157e+03 - -7.0156350e+02 -6.4882031e+02 3.4186175e+03 - -7.0267970e+02 -6.4394302e+02 3.4195346e+03 - -7.0319880e+02 -6.3909442e+02 3.4205636e+03 - -7.0306538e+02 -6.3430331e+02 3.4217006e+03 - -7.0222082e+02 -6.2959766e+02 3.4229413e+03 - -7.0060301e+02 -6.2500454e+02 3.4242809e+03 - -6.9814596e+02 -6.2055014e+02 3.4257143e+03 - -6.9477941e+02 -6.1625978e+02 3.4272358e+03 - -6.9042846e+02 -6.1215778e+02 3.4288392e+03 - -6.8501316e+02 -6.0826746e+02 3.4305180e+03 - -6.7844810e+02 -6.0461097e+02 3.4322652e+03 - -6.7064211e+02 -6.0120914e+02 3.4340732e+03 - -6.6149798e+02 -5.9808131e+02 3.4359338e+03 - -6.5091229e+02 -5.9524503e+02 3.4378386e+03 - -6.3877552e+02 -5.9271569e+02 3.4397783e+03 - -6.2497234e+02 -5.9050618e+02 3.4417432e+03 - -6.0938230e+02 -5.8862633e+02 3.4437227e+03 - -5.9188108e+02 -5.8708234e+02 3.4457058e+03 - -5.7234231e+02 -5.8587610e+02 3.4476807e+03 - -5.5064020e+02 -5.8500449e+02 3.4496347e+03 - -5.2665324e+02 -5.8445859e+02 3.4515545e+03 - -5.0026888e+02 -5.8422292e+02 3.4534258e+03 - -4.7138958e+02 -5.8427479e+02 3.4552339e+03 - -4.3993998e+02 -5.8458384e+02 3.4569631e+03 - -4.0587532e+02 -5.8511183e+02 3.4585972e+03 - -3.6919060e+02 -5.8581296e+02 3.4601197e+03 - -3.2993005e+02 -5.8663469e+02 3.4615140e+03 - -2.8819600e+02 -5.8751930e+02 3.4627635e+03 - -2.4415612e+02 -5.8840616e+02 3.4638525e+03 - -1.9804788e+02 -5.8923477e+02 3.4647664e+03 - -1.5017883e+02 -5.8994822e+02 3.4654919e+03 - -1.0092207e+02 -5.9049699e+02 3.4660184e+03 - -5.0706147e+01 -5.9084260e+02 3.4663377e+03 - 0.0000000e+00 -5.9096060e+02 3.4664447e+03 - 5.0706147e+01 -5.9084260e+02 3.4663377e+03 - 1.0092207e+02 -5.9049699e+02 3.4660184e+03 - 1.5017883e+02 -5.8994822e+02 3.4654919e+03 - 1.9804788e+02 -5.8923477e+02 3.4647664e+03 - 2.4415612e+02 -5.8840616e+02 3.4638525e+03 - 2.8819600e+02 -5.8751930e+02 3.4627635e+03 - 3.2993005e+02 -5.8663469e+02 3.4615140e+03 - 3.6919060e+02 -5.8581296e+02 3.4601197e+03 - 4.0587532e+02 -5.8511183e+02 3.4585972e+03 - 4.3993998e+02 -5.8458384e+02 3.4569631e+03 - 4.7138958e+02 -5.8427479e+02 3.4552339e+03 - 5.0026888e+02 -5.8422292e+02 3.4534258e+03 - 5.2665324e+02 -5.8445859e+02 3.4515545e+03 - 5.5064020e+02 -5.8500449e+02 3.4496347e+03 - 5.7234231e+02 -5.8587610e+02 3.4476807e+03 - 5.9188108e+02 -5.8708234e+02 3.4457058e+03 - 6.0938230e+02 -5.8862633e+02 3.4437227e+03 - 6.2497234e+02 -5.9050618e+02 3.4417432e+03 - 6.3877552e+02 -5.9271569e+02 3.4397783e+03 - 6.5091229e+02 -5.9524503e+02 3.4378386e+03 - 6.6149798e+02 -5.9808131e+02 3.4359338e+03 - 6.7064211e+02 -6.0120914e+02 3.4340732e+03 - 6.7844810e+02 -6.0461097e+02 3.4322652e+03 - 6.8501316e+02 -6.0826746e+02 3.4305180e+03 - 6.9042846e+02 -6.1215778e+02 3.4288392e+03 - 6.9477941e+02 -6.1625978e+02 3.4272358e+03 - 6.9814596e+02 -6.2055014e+02 3.4257143e+03 - 7.0060301e+02 -6.2500454e+02 3.4242809e+03 - 7.0222082e+02 -6.2959766e+02 3.4229413e+03 - 7.0306538e+02 -6.3430331e+02 3.4217006e+03 - 7.0319880e+02 -6.3909442e+02 3.4205636e+03 - 7.0267970e+02 -6.4394302e+02 3.4195346e+03 - 7.0156350e+02 -6.4882031e+02 3.4186175e+03 - 6.9990277e+02 -6.5369657e+02 3.4178157e+03 - 6.9774746e+02 -6.5854117e+02 3.4171323e+03 - 6.9514517e+02 -6.6332253e+02 3.4165696e+03 - 6.9214138e+02 -6.6800805e+02 3.4161298e+03 - 6.8877960e+02 -6.7256410e+02 3.4158145e+03 - 6.8510159e+02 -6.7695590e+02 3.4156249e+03 - 6.8114748e+02 -6.8114748e+02 3.4155616e+03 - 6.7695590e+02 -6.8510159e+02 3.4156249e+03 - 6.7256410e+02 -6.8877960e+02 3.4158145e+03 - 6.6800805e+02 -6.9214138e+02 3.4161298e+03 - 6.6332253e+02 -6.9514517e+02 3.4165696e+03 - 6.5854117e+02 -6.9774746e+02 3.4171323e+03 - 6.5369657e+02 -6.9990277e+02 3.4178157e+03 - 6.4882031e+02 -7.0156350e+02 3.4186175e+03 - 6.4394302e+02 -7.0267970e+02 3.4195346e+03 - 6.3909442e+02 -7.0319880e+02 3.4205636e+03 - 6.3430331e+02 -7.0306538e+02 3.4217006e+03 - 6.2959766e+02 -7.0222082e+02 3.4229413e+03 - 6.2500454e+02 -7.0060301e+02 3.4242809e+03 - 6.2055014e+02 -6.9814596e+02 3.4257143e+03 - 6.1625978e+02 -6.9477941e+02 3.4272358e+03 - 6.1215778e+02 -6.9042846e+02 3.4288392e+03 - 6.0826746e+02 -6.8501316e+02 3.4305180e+03 - 6.0461097e+02 -6.7844810e+02 3.4322652e+03 - 6.0120914e+02 -6.7064211e+02 3.4340732e+03 - 5.9808131e+02 -6.6149798e+02 3.4359338e+03 - 5.9524503e+02 -6.5091229e+02 3.4378386e+03 - 5.9271569e+02 -6.3877552e+02 3.4397783e+03 - 5.9050618e+02 -6.2497234e+02 3.4417432e+03 - 5.8862633e+02 -6.0938230e+02 3.4437227e+03 - 5.8708234e+02 -5.9188108e+02 3.4457058e+03 - 5.8587610e+02 -5.7234231e+02 3.4476807e+03 - 5.8500449e+02 -5.5064020e+02 3.4496347e+03 - 5.8445859e+02 -5.2665324e+02 3.4515545e+03 - 5.8422292e+02 -5.0026888e+02 3.4534258e+03 - 5.8427479e+02 -4.7138958e+02 3.4552339e+03 - 5.8458384e+02 -4.3993998e+02 3.4569631e+03 - 5.8511183e+02 -4.0587532e+02 3.4585972e+03 - 5.8581296e+02 -3.6919060e+02 3.4601197e+03 - 5.8663469e+02 -3.2993005e+02 3.4615140e+03 - 5.8751930e+02 -2.8819600e+02 3.4627635e+03 - 5.8840616e+02 -2.4415612e+02 3.4638525e+03 - 5.8923477e+02 -1.9804788e+02 3.4647664e+03 - 5.8994822e+02 -1.5017883e+02 3.4654919e+03 - 5.9049699e+02 -1.0092207e+02 3.4660184e+03 - 5.9084260e+02 -5.0706147e+01 3.4663377e+03 - 5.9096060e+02 0.0000000e+00 3.4664447e+03 - 6.3335400e+02 -2.4067136e-09 3.4540375e+03 - 6.3322705e+02 5.4452868e+01 3.4539140e+03 - 6.3285517e+02 1.0837092e+02 3.4535455e+03 - 6.3226459e+02 1.6124313e+02 3.4529381e+03 - 6.3149656e+02 2.1260356e+02 3.4521015e+03 - 6.3060404e+02 2.6204805e+02 3.4510487e+03 - 6.2964780e+02 3.0924519e+02 3.4497952e+03 - 6.2869233e+02 3.5394105e+02 3.4483583e+03 - 6.2780207e+02 3.9595849e+02 3.4467566e+03 - 6.2703824e+02 4.3519182e+02 3.4450094e+03 - 6.2645645e+02 4.7159849e+02 3.4431361e+03 - 6.2610506e+02 5.0518904e+02 3.4411560e+03 - 6.2602442e+02 5.3601646e+02 3.4390875e+03 - 6.2624653e+02 5.6416609e+02 3.4369487e+03 - 6.2679534e+02 5.8974643e+02 3.4347564e+03 - 6.2768724e+02 6.1288127e+02 3.4325268e+03 - 6.2893183e+02 6.3370328e+02 3.4302750e+03 - 6.3053267e+02 6.5234895e+02 3.4280152e+03 - 6.3248812e+02 6.6895479e+02 3.4257607e+03 - 6.3479210e+02 6.8365456e+02 3.4235240e+03 - 6.3743475e+02 6.9657743e+02 3.4213167e+03 - 6.4040309e+02 7.0784675e+02 3.4191499e+03 - 6.4368145e+02 7.1757945e+02 3.4170339e+03 - 6.4725193e+02 7.2588570e+02 3.4149782e+03 - 6.5109475e+02 7.3286898e+02 3.4129919e+03 - 6.5518847e+02 7.3862627e+02 3.4110835e+03 - 6.5951021e+02 7.4324836e+02 3.4092609e+03 - 6.6403583e+02 7.4682027e+02 3.4075316e+03 - 6.6873998e+02 7.4942168e+02 3.4059024e+03 - 6.7359622e+02 7.5112737e+02 3.4043797e+03 - 6.7857704e+02 7.5200768e+02 3.4029695e+03 - 6.8365391e+02 7.5212889e+02 3.4016771e+03 - 6.8879724e+02 7.5155362e+02 3.4005074e+03 - 6.9397644e+02 7.5034120e+02 3.3994648e+03 - 6.9915984e+02 7.4854796e+02 3.3985533e+03 - 7.0431471e+02 7.4622753e+02 3.3977762e+03 - 7.0940720e+02 7.4343111e+02 3.3971365e+03 - 7.1440231e+02 7.4020764e+02 3.3966364e+03 - 7.1926381e+02 7.3660402e+02 3.3962779e+03 - 7.2395425e+02 7.3266532e+02 3.3960623e+03 - 7.2843482e+02 7.2843482e+02 3.3959903e+03 - 7.3266532e+02 7.2395425e+02 3.3960623e+03 - 7.3660402e+02 7.1926381e+02 3.3962779e+03 - 7.4020764e+02 7.1440231e+02 3.3966364e+03 - 7.4343111e+02 7.0940720e+02 3.3971365e+03 - 7.4622753e+02 7.0431471e+02 3.3977762e+03 - 7.4854796e+02 6.9915984e+02 3.3985533e+03 - 7.5034120e+02 6.9397644e+02 3.3994648e+03 - 7.5155362e+02 6.8879724e+02 3.4005074e+03 - 7.5212889e+02 6.8365391e+02 3.4016771e+03 - 7.5200768e+02 6.7857704e+02 3.4029695e+03 - 7.5112737e+02 6.7359622e+02 3.4043797e+03 - 7.4942168e+02 6.6873998e+02 3.4059024e+03 - 7.4682027e+02 6.6403583e+02 3.4075316e+03 - 7.4324836e+02 6.5951021e+02 3.4092609e+03 - 7.3862627e+02 6.5518847e+02 3.4110835e+03 - 7.3286898e+02 6.5109475e+02 3.4129919e+03 - 7.2588570e+02 6.4725193e+02 3.4149782e+03 - 7.1757945e+02 6.4368145e+02 3.4170339e+03 - 7.0784675e+02 6.4040309e+02 3.4191499e+03 - 6.9657743e+02 6.3743475e+02 3.4213167e+03 - 6.8365456e+02 6.3479210e+02 3.4235240e+03 - 6.6895479e+02 6.3248812e+02 3.4257607e+03 - 6.5234895e+02 6.3053267e+02 3.4280152e+03 - 6.3370328e+02 6.2893183e+02 3.4302750e+03 - 6.1288127e+02 6.2768724e+02 3.4325268e+03 - 5.8974643e+02 6.2679534e+02 3.4347564e+03 - 5.6416609e+02 6.2624653e+02 3.4369487e+03 - 5.3601646e+02 6.2602442e+02 3.4390875e+03 - 5.0518904e+02 6.2610506e+02 3.4411560e+03 - 4.7159849e+02 6.2645645e+02 3.4431361e+03 - 4.3519182e+02 6.2703824e+02 3.4450094e+03 - 3.9595849e+02 6.2780207e+02 3.4467566e+03 - 3.5394105e+02 6.2869233e+02 3.4483583e+03 - 3.0924519e+02 6.2964780e+02 3.4497952e+03 - 2.6204805e+02 6.3060404e+02 3.4510487e+03 - 2.1260356e+02 6.3149656e+02 3.4521015e+03 - 1.6124313e+02 6.3226459e+02 3.4529381e+03 - 1.0837092e+02 6.3285517e+02 3.4535455e+03 - 5.4452868e+01 6.3322705e+02 3.4539140e+03 - 0.0000000e+00 6.3335400e+02 3.4540375e+03 - -5.4452868e+01 6.3322705e+02 3.4539140e+03 - -1.0837092e+02 6.3285517e+02 3.4535455e+03 - -1.6124313e+02 6.3226459e+02 3.4529381e+03 - -2.1260356e+02 6.3149656e+02 3.4521015e+03 - -2.6204805e+02 6.3060404e+02 3.4510487e+03 - -3.0924519e+02 6.2964780e+02 3.4497952e+03 - -3.5394105e+02 6.2869233e+02 3.4483583e+03 - -3.9595849e+02 6.2780207e+02 3.4467566e+03 - -4.3519182e+02 6.2703824e+02 3.4450094e+03 - -4.7159849e+02 6.2645645e+02 3.4431361e+03 - -5.0518904e+02 6.2610506e+02 3.4411560e+03 - -5.3601646e+02 6.2602442e+02 3.4390875e+03 - -5.6416609e+02 6.2624653e+02 3.4369487e+03 - -5.8974643e+02 6.2679534e+02 3.4347564e+03 - -6.1288127e+02 6.2768724e+02 3.4325268e+03 - -6.3370328e+02 6.2893183e+02 3.4302750e+03 - -6.5234895e+02 6.3053267e+02 3.4280152e+03 - -6.6895479e+02 6.3248812e+02 3.4257607e+03 - -6.8365456e+02 6.3479210e+02 3.4235240e+03 - -6.9657743e+02 6.3743475e+02 3.4213167e+03 - -7.0784675e+02 6.4040309e+02 3.4191499e+03 - -7.1757945e+02 6.4368145e+02 3.4170339e+03 - -7.2588570e+02 6.4725193e+02 3.4149782e+03 - -7.3286898e+02 6.5109475e+02 3.4129919e+03 - -7.3862627e+02 6.5518847e+02 3.4110835e+03 - -7.4324836e+02 6.5951021e+02 3.4092609e+03 - -7.4682027e+02 6.6403583e+02 3.4075316e+03 - -7.4942168e+02 6.6873998e+02 3.4059024e+03 - -7.5112737e+02 6.7359622e+02 3.4043797e+03 - -7.5200768e+02 6.7857704e+02 3.4029695e+03 - -7.5212889e+02 6.8365391e+02 3.4016771e+03 - -7.5155362e+02 6.8879724e+02 3.4005074e+03 - -7.5034120e+02 6.9397644e+02 3.3994648e+03 - -7.4854796e+02 6.9915984e+02 3.3985533e+03 - -7.4622753e+02 7.0431471e+02 3.3977762e+03 - -7.4343111e+02 7.0940720e+02 3.3971365e+03 - -7.4020764e+02 7.1440231e+02 3.3966364e+03 - -7.3660402e+02 7.1926381e+02 3.3962779e+03 - -7.3266532e+02 7.2395425e+02 3.3960623e+03 - -7.2843482e+02 7.2843482e+02 3.3959903e+03 - -7.2395425e+02 7.3266532e+02 3.3960623e+03 - -7.1926381e+02 7.3660402e+02 3.3962779e+03 - -7.1440231e+02 7.4020764e+02 3.3966364e+03 - -7.0940720e+02 7.4343111e+02 3.3971365e+03 - -7.0431471e+02 7.4622753e+02 3.3977762e+03 - -6.9915984e+02 7.4854796e+02 3.3985533e+03 - -6.9397644e+02 7.5034120e+02 3.3994648e+03 - -6.8879724e+02 7.5155362e+02 3.4005074e+03 - -6.8365391e+02 7.5212889e+02 3.4016771e+03 - -6.7857704e+02 7.5200768e+02 3.4029695e+03 - -6.7359622e+02 7.5112737e+02 3.4043797e+03 - -6.6873998e+02 7.4942168e+02 3.4059024e+03 - -6.6403583e+02 7.4682027e+02 3.4075316e+03 - -6.5951021e+02 7.4324836e+02 3.4092609e+03 - -6.5518847e+02 7.3862627e+02 3.4110835e+03 - -6.5109475e+02 7.3286898e+02 3.4129919e+03 - -6.4725193e+02 7.2588570e+02 3.4149782e+03 - -6.4368145e+02 7.1757945e+02 3.4170339e+03 - -6.4040309e+02 7.0784675e+02 3.4191499e+03 - -6.3743475e+02 6.9657743e+02 3.4213167e+03 - -6.3479210e+02 6.8365456e+02 3.4235240e+03 - -6.3248812e+02 6.6895479e+02 3.4257607e+03 - -6.3053267e+02 6.5234895e+02 3.4280152e+03 - -6.2893183e+02 6.3370328e+02 3.4302750e+03 - -6.2768724e+02 6.1288127e+02 3.4325268e+03 - -6.2679534e+02 5.8974643e+02 3.4347564e+03 - -6.2624653e+02 5.6416609e+02 3.4369487e+03 - -6.2602442e+02 5.3601646e+02 3.4390875e+03 - -6.2610506e+02 5.0518904e+02 3.4411560e+03 - -6.2645645e+02 4.7159849e+02 3.4431361e+03 - -6.2703824e+02 4.3519182e+02 3.4450094e+03 - -6.2780207e+02 3.9595849e+02 3.4467566e+03 - -6.2869233e+02 3.5394105e+02 3.4483583e+03 - -6.2964780e+02 3.0924519e+02 3.4497952e+03 - -6.3060404e+02 2.6204805e+02 3.4510487e+03 - -6.3149656e+02 2.1260356e+02 3.4521015e+03 - -6.3226459e+02 1.6124313e+02 3.4529381e+03 - -6.3285517e+02 1.0837092e+02 3.4535455e+03 - -6.3322705e+02 5.4452868e+01 3.4539140e+03 - -6.3335400e+02 2.4067136e-09 3.4540375e+03 - -6.3322705e+02 -5.4452868e+01 3.4539140e+03 - -6.3285517e+02 -1.0837092e+02 3.4535455e+03 - -6.3226459e+02 -1.6124313e+02 3.4529381e+03 - -6.3149656e+02 -2.1260356e+02 3.4521015e+03 - -6.3060404e+02 -2.6204805e+02 3.4510487e+03 - -6.2964780e+02 -3.0924519e+02 3.4497952e+03 - -6.2869233e+02 -3.5394105e+02 3.4483583e+03 - -6.2780207e+02 -3.9595849e+02 3.4467566e+03 - -6.2703824e+02 -4.3519182e+02 3.4450094e+03 - -6.2645645e+02 -4.7159849e+02 3.4431361e+03 - -6.2610506e+02 -5.0518904e+02 3.4411560e+03 - -6.2602442e+02 -5.3601646e+02 3.4390875e+03 - -6.2624653e+02 -5.6416609e+02 3.4369487e+03 - -6.2679534e+02 -5.8974643e+02 3.4347564e+03 - -6.2768724e+02 -6.1288127e+02 3.4325268e+03 - -6.2893183e+02 -6.3370328e+02 3.4302750e+03 - -6.3053267e+02 -6.5234895e+02 3.4280152e+03 - -6.3248812e+02 -6.6895479e+02 3.4257607e+03 - -6.3479210e+02 -6.8365456e+02 3.4235240e+03 - -6.3743475e+02 -6.9657743e+02 3.4213167e+03 - -6.4040309e+02 -7.0784675e+02 3.4191499e+03 - -6.4368145e+02 -7.1757945e+02 3.4170339e+03 - -6.4725193e+02 -7.2588570e+02 3.4149782e+03 - -6.5109475e+02 -7.3286898e+02 3.4129919e+03 - -6.5518847e+02 -7.3862627e+02 3.4110835e+03 - -6.5951021e+02 -7.4324836e+02 3.4092609e+03 - -6.6403583e+02 -7.4682027e+02 3.4075316e+03 - -6.6873998e+02 -7.4942168e+02 3.4059024e+03 - -6.7359622e+02 -7.5112737e+02 3.4043797e+03 - -6.7857704e+02 -7.5200768e+02 3.4029695e+03 - -6.8365391e+02 -7.5212889e+02 3.4016771e+03 - -6.8879724e+02 -7.5155362e+02 3.4005074e+03 - -6.9397644e+02 -7.5034120e+02 3.3994648e+03 - -6.9915984e+02 -7.4854796e+02 3.3985533e+03 - -7.0431471e+02 -7.4622753e+02 3.3977762e+03 - -7.0940720e+02 -7.4343111e+02 3.3971365e+03 - -7.1440231e+02 -7.4020764e+02 3.3966364e+03 - -7.1926381e+02 -7.3660402e+02 3.3962779e+03 - -7.2395425e+02 -7.3266532e+02 3.3960623e+03 - -7.2843482e+02 -7.2843482e+02 3.3959903e+03 - -7.3266532e+02 -7.2395425e+02 3.3960623e+03 - -7.3660402e+02 -7.1926381e+02 3.3962779e+03 - -7.4020764e+02 -7.1440231e+02 3.3966364e+03 - -7.4343111e+02 -7.0940720e+02 3.3971365e+03 - -7.4622753e+02 -7.0431471e+02 3.3977762e+03 - -7.4854796e+02 -6.9915984e+02 3.3985533e+03 - -7.5034120e+02 -6.9397644e+02 3.3994648e+03 - -7.5155362e+02 -6.8879724e+02 3.4005074e+03 - -7.5212889e+02 -6.8365391e+02 3.4016771e+03 - -7.5200768e+02 -6.7857704e+02 3.4029695e+03 - -7.5112737e+02 -6.7359622e+02 3.4043797e+03 - -7.4942168e+02 -6.6873998e+02 3.4059024e+03 - -7.4682027e+02 -6.6403583e+02 3.4075316e+03 - -7.4324836e+02 -6.5951021e+02 3.4092609e+03 - -7.3862627e+02 -6.5518847e+02 3.4110835e+03 - -7.3286898e+02 -6.5109475e+02 3.4129919e+03 - -7.2588570e+02 -6.4725193e+02 3.4149782e+03 - -7.1757945e+02 -6.4368145e+02 3.4170339e+03 - -7.0784675e+02 -6.4040309e+02 3.4191499e+03 - -6.9657743e+02 -6.3743475e+02 3.4213167e+03 - -6.8365456e+02 -6.3479210e+02 3.4235240e+03 - -6.6895479e+02 -6.3248812e+02 3.4257607e+03 - -6.5234895e+02 -6.3053267e+02 3.4280152e+03 - -6.3370328e+02 -6.2893183e+02 3.4302750e+03 - -6.1288127e+02 -6.2768724e+02 3.4325268e+03 - -5.8974643e+02 -6.2679534e+02 3.4347564e+03 - -5.6416609e+02 -6.2624653e+02 3.4369487e+03 - -5.3601646e+02 -6.2602442e+02 3.4390875e+03 - -5.0518904e+02 -6.2610506e+02 3.4411560e+03 - -4.7159849e+02 -6.2645645e+02 3.4431361e+03 - -4.3519182e+02 -6.2703824e+02 3.4450094e+03 - -3.9595849e+02 -6.2780207e+02 3.4467566e+03 - -3.5394105e+02 -6.2869233e+02 3.4483583e+03 - -3.0924519e+02 -6.2964780e+02 3.4497952e+03 - -2.6204805e+02 -6.3060404e+02 3.4510487e+03 - -2.1260356e+02 -6.3149656e+02 3.4521015e+03 - -1.6124313e+02 -6.3226459e+02 3.4529381e+03 - -1.0837092e+02 -6.3285517e+02 3.4535455e+03 - -5.4452868e+01 -6.3322705e+02 3.4539140e+03 - 2.4067136e-09 -6.3335400e+02 3.4540375e+03 - 5.4452868e+01 -6.3322705e+02 3.4539140e+03 - 1.0837092e+02 -6.3285517e+02 3.4535455e+03 - 1.6124313e+02 -6.3226459e+02 3.4529381e+03 - 2.1260356e+02 -6.3149656e+02 3.4521015e+03 - 2.6204805e+02 -6.3060404e+02 3.4510487e+03 - 3.0924519e+02 -6.2964780e+02 3.4497952e+03 - 3.5394105e+02 -6.2869233e+02 3.4483583e+03 - 3.9595849e+02 -6.2780207e+02 3.4467566e+03 - 4.3519182e+02 -6.2703824e+02 3.4450094e+03 - 4.7159849e+02 -6.2645645e+02 3.4431361e+03 - 5.0518904e+02 -6.2610506e+02 3.4411560e+03 - 5.3601646e+02 -6.2602442e+02 3.4390875e+03 - 5.6416609e+02 -6.2624653e+02 3.4369487e+03 - 5.8974643e+02 -6.2679534e+02 3.4347564e+03 - 6.1288127e+02 -6.2768724e+02 3.4325268e+03 - 6.3370328e+02 -6.2893183e+02 3.4302750e+03 - 6.5234895e+02 -6.3053267e+02 3.4280152e+03 - 6.6895479e+02 -6.3248812e+02 3.4257607e+03 - 6.8365456e+02 -6.3479210e+02 3.4235240e+03 - 6.9657743e+02 -6.3743475e+02 3.4213167e+03 - 7.0784675e+02 -6.4040309e+02 3.4191499e+03 - 7.1757945e+02 -6.4368145e+02 3.4170339e+03 - 7.2588570e+02 -6.4725193e+02 3.4149782e+03 - 7.3286898e+02 -6.5109475e+02 3.4129919e+03 - 7.3862627e+02 -6.5518847e+02 3.4110835e+03 - 7.4324836e+02 -6.5951021e+02 3.4092609e+03 - 7.4682027e+02 -6.6403583e+02 3.4075316e+03 - 7.4942168e+02 -6.6873998e+02 3.4059024e+03 - 7.5112737e+02 -6.7359622e+02 3.4043797e+03 - 7.5200768e+02 -6.7857704e+02 3.4029695e+03 - 7.5212889e+02 -6.8365391e+02 3.4016771e+03 - 7.5155362e+02 -6.8879724e+02 3.4005074e+03 - 7.5034120e+02 -6.9397644e+02 3.3994648e+03 - 7.4854796e+02 -6.9915984e+02 3.3985533e+03 - 7.4622753e+02 -7.0431471e+02 3.3977762e+03 - 7.4343111e+02 -7.0940720e+02 3.3971365e+03 - 7.4020764e+02 -7.1440231e+02 3.3966364e+03 - 7.3660402e+02 -7.1926381e+02 3.3962779e+03 - 7.3266532e+02 -7.2395425e+02 3.3960623e+03 - 7.2843482e+02 -7.2843482e+02 3.3959903e+03 - 7.2395425e+02 -7.3266532e+02 3.3960623e+03 - 7.1926381e+02 -7.3660402e+02 3.3962779e+03 - 7.1440231e+02 -7.4020764e+02 3.3966364e+03 - 7.0940720e+02 -7.4343111e+02 3.3971365e+03 - 7.0431471e+02 -7.4622753e+02 3.3977762e+03 - 6.9915984e+02 -7.4854796e+02 3.3985533e+03 - 6.9397644e+02 -7.5034120e+02 3.3994648e+03 - 6.8879724e+02 -7.5155362e+02 3.4005074e+03 - 6.8365391e+02 -7.5212889e+02 3.4016771e+03 - 6.7857704e+02 -7.5200768e+02 3.4029695e+03 - 6.7359622e+02 -7.5112737e+02 3.4043797e+03 - 6.6873998e+02 -7.4942168e+02 3.4059024e+03 - 6.6403583e+02 -7.4682027e+02 3.4075316e+03 - 6.5951021e+02 -7.4324836e+02 3.4092609e+03 - 6.5518847e+02 -7.3862627e+02 3.4110835e+03 - 6.5109475e+02 -7.3286898e+02 3.4129919e+03 - 6.4725193e+02 -7.2588570e+02 3.4149782e+03 - 6.4368145e+02 -7.1757945e+02 3.4170339e+03 - 6.4040309e+02 -7.0784675e+02 3.4191499e+03 - 6.3743475e+02 -6.9657743e+02 3.4213167e+03 - 6.3479210e+02 -6.8365456e+02 3.4235240e+03 - 6.3248812e+02 -6.6895479e+02 3.4257607e+03 - 6.3053267e+02 -6.5234895e+02 3.4280152e+03 - 6.2893183e+02 -6.3370328e+02 3.4302750e+03 - 6.2768724e+02 -6.1288127e+02 3.4325268e+03 - 6.2679534e+02 -5.8974643e+02 3.4347564e+03 - 6.2624653e+02 -5.6416609e+02 3.4369487e+03 - 6.2602442e+02 -5.3601646e+02 3.4390875e+03 - 6.2610506e+02 -5.0518904e+02 3.4411560e+03 - 6.2645645e+02 -4.7159849e+02 3.4431361e+03 - 6.2703824e+02 -4.3519182e+02 3.4450094e+03 - 6.2780207e+02 -3.9595849e+02 3.4467566e+03 - 6.2869233e+02 -3.5394105e+02 3.4483583e+03 - 6.2964780e+02 -3.0924519e+02 3.4497952e+03 - 6.3060404e+02 -2.6204805e+02 3.4510487e+03 - 6.3149656e+02 -2.1260356e+02 3.4521015e+03 - 6.3226459e+02 -1.6124313e+02 3.4529381e+03 - 6.3285517e+02 -1.0837092e+02 3.4535455e+03 - 6.3322705e+02 -5.4452868e+01 3.4539140e+03 - 6.3335400e+02 0.0000000e+00 3.4540375e+03 - 6.7577871e+02 0.0000000e+00 3.4407114e+03 - 6.7564277e+02 5.8228676e+01 3.4405700e+03 - 6.7524458e+02 1.1587556e+02 3.4401482e+03 - 6.7461212e+02 1.7238545e+02 3.4394532e+03 - 6.7378934e+02 2.2725339e+02 3.4384967e+03 - 6.7283264e+02 2.8004318e+02 3.4372940e+03 - 6.7180656e+02 3.3039918e+02 3.4358634e+03 - 6.7077944e+02 3.7805130e+02 3.4342252e+03 - 6.6981939e+02 4.2281363e+02 3.4324013e+03 - 6.6899097e+02 4.6457821e+02 3.4304140e+03 - 6.6835267e+02 5.0330542e+02 3.4282859e+03 - 6.6795527e+02 5.3901256e+02 3.4260389e+03 - 6.6784106e+02 5.7176208e+02 3.4236942e+03 - 6.6804358e+02 6.0165037e+02 3.4212723e+03 - 6.6858798e+02 6.2879773e+02 3.4187922e+03 - 6.6949155e+02 6.5333989e+02 3.4162720e+03 - 6.7076457e+02 6.7542115e+02 3.4137287e+03 - 6.7241111e+02 6.9518906e+02 3.4111781e+03 - 6.7442989e+02 7.1279043e+02 3.4086350e+03 - 6.7681508e+02 7.2836853e+02 3.4061132e+03 - 6.7955698e+02 7.4206123e+02 3.4036257e+03 - 6.8264263e+02 7.5399983e+02 3.4011846e+03 - 6.8605632e+02 7.6430848e+02 3.3988013e+03 - 6.8978000e+02 7.7310399e+02 3.3964865e+03 - 6.9379361e+02 7.8049591e+02 3.3942502e+03 - 6.9807530e+02 7.8658683e+02 3.3921018e+03 - 7.0260166e+02 7.9147278e+02 3.3900502e+03 - 7.0734786e+02 7.9524369e+02 3.3881036e+03 - 7.1228771e+02 7.9798387e+02 3.3862697e+03 - 7.1739374e+02 7.9977254e+02 3.3845557e+03 - 7.2263727e+02 8.0068428e+02 3.3829681e+03 - 7.2798838e+02 8.0078945e+02 3.3815132e+03 - 7.3341594e+02 8.0015467e+02 3.3801963e+03 - 7.3888763e+02 7.9884314e+02 3.3790224e+03 - 7.4436985e+02 7.9691497e+02 3.3779961e+03 - 7.4982777e+02 7.9442749e+02 3.3771210e+03 - 7.5522527e+02 7.9143551e+02 3.3764006e+03 - 7.6052490e+02 7.8799152e+02 3.3758375e+03 - 7.6568786e+02 7.8414586e+02 3.3754337e+03 - 7.7067390e+02 7.7994695e+02 3.3751909e+03 - 7.7544134e+02 7.7544134e+02 3.3751098e+03 - 7.7994695e+02 7.7067390e+02 3.3751909e+03 - 7.8414586e+02 7.6568786e+02 3.3754337e+03 - 7.8799152e+02 7.6052490e+02 3.3758375e+03 - 7.9143551e+02 7.5522527e+02 3.3764006e+03 - 7.9442749e+02 7.4982777e+02 3.3771210e+03 - 7.9691497e+02 7.4436985e+02 3.3779961e+03 - 7.9884314e+02 7.3888763e+02 3.3790224e+03 - 8.0015467e+02 7.3341594e+02 3.3801963e+03 - 8.0078945e+02 7.2798838e+02 3.3815132e+03 - 8.0068428e+02 7.2263727e+02 3.3829681e+03 - 7.9977254e+02 7.1739374e+02 3.3845557e+03 - 7.9798387e+02 7.1228771e+02 3.3862697e+03 - 7.9524369e+02 7.0734786e+02 3.3881036e+03 - 7.9147278e+02 7.0260166e+02 3.3900502e+03 - 7.8658683e+02 6.9807530e+02 3.3921018e+03 - 7.8049591e+02 6.9379361e+02 3.3942502e+03 - 7.7310399e+02 6.8978000e+02 3.3964865e+03 - 7.6430848e+02 6.8605632e+02 3.3988013e+03 - 7.5399983e+02 6.8264263e+02 3.4011846e+03 - 7.4206123e+02 6.7955698e+02 3.4036257e+03 - 7.2836853e+02 6.7681508e+02 3.4061132e+03 - 7.1279043e+02 6.7442989e+02 3.4086350e+03 - 6.9518906e+02 6.7241111e+02 3.4111781e+03 - 6.7542115e+02 6.7076457e+02 3.4137287e+03 - 6.5333989e+02 6.6949155e+02 3.4162720e+03 - 6.2879773e+02 6.6858798e+02 3.4187922e+03 - 6.0165037e+02 6.6804358e+02 3.4212723e+03 - 5.7176208e+02 6.6784106e+02 3.4236942e+03 - 5.3901256e+02 6.6795527e+02 3.4260389e+03 - 5.0330542e+02 6.6835267e+02 3.4282859e+03 - 4.6457821e+02 6.6899097e+02 3.4304140e+03 - 4.2281363e+02 6.6981939e+02 3.4324013e+03 - 3.7805130e+02 6.7077944e+02 3.4342252e+03 - 3.3039918e+02 6.7180656e+02 3.4358634e+03 - 2.8004318e+02 6.7283264e+02 3.4372940e+03 - 2.2725339e+02 6.7378934e+02 3.4384967e+03 - 1.7238545e+02 6.7461212e+02 3.4394532e+03 - 1.1587556e+02 6.7524458e+02 3.4401482e+03 - 5.8228676e+01 6.7564277e+02 3.4405700e+03 - 0.0000000e+00 6.7577871e+02 3.4407114e+03 - -5.8228676e+01 6.7564277e+02 3.4405700e+03 - -1.1587556e+02 6.7524458e+02 3.4401482e+03 - -1.7238545e+02 6.7461212e+02 3.4394532e+03 - -2.2725339e+02 6.7378934e+02 3.4384967e+03 - -2.8004318e+02 6.7283264e+02 3.4372940e+03 - -3.3039918e+02 6.7180656e+02 3.4358634e+03 - -3.7805130e+02 6.7077944e+02 3.4342252e+03 - -4.2281363e+02 6.6981939e+02 3.4324013e+03 - -4.6457821e+02 6.6899097e+02 3.4304140e+03 - -5.0330542e+02 6.6835267e+02 3.4282859e+03 - -5.3901256e+02 6.6795527e+02 3.4260389e+03 - -5.7176208e+02 6.6784106e+02 3.4236942e+03 - -6.0165037e+02 6.6804358e+02 3.4212723e+03 - -6.2879773e+02 6.6858798e+02 3.4187922e+03 - -6.5333989e+02 6.6949155e+02 3.4162720e+03 - -6.7542115e+02 6.7076457e+02 3.4137287e+03 - -6.9518906e+02 6.7241111e+02 3.4111781e+03 - -7.1279043e+02 6.7442989e+02 3.4086350e+03 - -7.2836853e+02 6.7681508e+02 3.4061132e+03 - -7.4206123e+02 6.7955698e+02 3.4036257e+03 - -7.5399983e+02 6.8264263e+02 3.4011846e+03 - -7.6430848e+02 6.8605632e+02 3.3988013e+03 - -7.7310399e+02 6.8978000e+02 3.3964865e+03 - -7.8049591e+02 6.9379361e+02 3.3942502e+03 - -7.8658683e+02 6.9807530e+02 3.3921018e+03 - -7.9147278e+02 7.0260166e+02 3.3900502e+03 - -7.9524369e+02 7.0734786e+02 3.3881036e+03 - -7.9798387e+02 7.1228771e+02 3.3862697e+03 - -7.9977254e+02 7.1739374e+02 3.3845557e+03 - -8.0068428e+02 7.2263727e+02 3.3829681e+03 - -8.0078945e+02 7.2798838e+02 3.3815132e+03 - -8.0015467e+02 7.3341594e+02 3.3801963e+03 - -7.9884314e+02 7.3888763e+02 3.3790224e+03 - -7.9691497e+02 7.4436985e+02 3.3779961e+03 - -7.9442749e+02 7.4982777e+02 3.3771210e+03 - -7.9143551e+02 7.5522527e+02 3.3764006e+03 - -7.8799152e+02 7.6052490e+02 3.3758375e+03 - -7.8414586e+02 7.6568786e+02 3.3754337e+03 - -7.7994695e+02 7.7067390e+02 3.3751909e+03 - -7.7544134e+02 7.7544134e+02 3.3751098e+03 - -7.7067390e+02 7.7994695e+02 3.3751909e+03 - -7.6568786e+02 7.8414586e+02 3.3754337e+03 - -7.6052490e+02 7.8799152e+02 3.3758375e+03 - -7.5522527e+02 7.9143551e+02 3.3764006e+03 - -7.4982777e+02 7.9442749e+02 3.3771210e+03 - -7.4436985e+02 7.9691497e+02 3.3779961e+03 - -7.3888763e+02 7.9884314e+02 3.3790224e+03 - -7.3341594e+02 8.0015467e+02 3.3801963e+03 - -7.2798838e+02 8.0078945e+02 3.3815132e+03 - -7.2263727e+02 8.0068428e+02 3.3829681e+03 - -7.1739374e+02 7.9977254e+02 3.3845557e+03 - -7.1228771e+02 7.9798387e+02 3.3862697e+03 - -7.0734786e+02 7.9524369e+02 3.3881036e+03 - -7.0260166e+02 7.9147278e+02 3.3900502e+03 - -6.9807530e+02 7.8658683e+02 3.3921018e+03 - -6.9379361e+02 7.8049591e+02 3.3942502e+03 - -6.8978000e+02 7.7310399e+02 3.3964865e+03 - -6.8605632e+02 7.6430848e+02 3.3988013e+03 - -6.8264263e+02 7.5399983e+02 3.4011846e+03 - -6.7955698e+02 7.4206123e+02 3.4036257e+03 - -6.7681508e+02 7.2836853e+02 3.4061132e+03 - -6.7442989e+02 7.1279043e+02 3.4086350e+03 - -6.7241111e+02 6.9518906e+02 3.4111781e+03 - -6.7076457e+02 6.7542115e+02 3.4137287e+03 - -6.6949155e+02 6.5333989e+02 3.4162720e+03 - -6.6858798e+02 6.2879773e+02 3.4187922e+03 - -6.6804358e+02 6.0165037e+02 3.4212723e+03 - -6.6784106e+02 5.7176208e+02 3.4236942e+03 - -6.6795527e+02 5.3901256e+02 3.4260389e+03 - -6.6835267e+02 5.0330542e+02 3.4282859e+03 - -6.6899097e+02 4.6457821e+02 3.4304140e+03 - -6.6981939e+02 4.2281363e+02 3.4324013e+03 - -6.7077944e+02 3.7805130e+02 3.4342252e+03 - -6.7180656e+02 3.3039918e+02 3.4358634e+03 - -6.7283264e+02 2.8004318e+02 3.4372940e+03 - -6.7378934e+02 2.2725339e+02 3.4384967e+03 - -6.7461212e+02 1.7238545e+02 3.4394532e+03 - -6.7524458e+02 1.1587556e+02 3.4401482e+03 - -6.7564277e+02 5.8228676e+01 3.4405700e+03 - -6.7577871e+02 0.0000000e+00 3.4407114e+03 - -6.7564277e+02 -5.8228676e+01 3.4405700e+03 - -6.7524458e+02 -1.1587556e+02 3.4401482e+03 - -6.7461212e+02 -1.7238545e+02 3.4394532e+03 - -6.7378934e+02 -2.2725339e+02 3.4384967e+03 - -6.7283264e+02 -2.8004318e+02 3.4372940e+03 - -6.7180656e+02 -3.3039918e+02 3.4358634e+03 - -6.7077944e+02 -3.7805130e+02 3.4342252e+03 - -6.6981939e+02 -4.2281363e+02 3.4324013e+03 - -6.6899097e+02 -4.6457821e+02 3.4304140e+03 - -6.6835267e+02 -5.0330542e+02 3.4282859e+03 - -6.6795527e+02 -5.3901256e+02 3.4260389e+03 - -6.6784106e+02 -5.7176208e+02 3.4236942e+03 - -6.6804358e+02 -6.0165037e+02 3.4212723e+03 - -6.6858798e+02 -6.2879773e+02 3.4187922e+03 - -6.6949155e+02 -6.5333989e+02 3.4162720e+03 - -6.7076457e+02 -6.7542115e+02 3.4137287e+03 - -6.7241111e+02 -6.9518906e+02 3.4111781e+03 - -6.7442989e+02 -7.1279043e+02 3.4086350e+03 - -6.7681508e+02 -7.2836853e+02 3.4061132e+03 - -6.7955698e+02 -7.4206123e+02 3.4036257e+03 - -6.8264263e+02 -7.5399983e+02 3.4011846e+03 - -6.8605632e+02 -7.6430848e+02 3.3988013e+03 - -6.8978000e+02 -7.7310399e+02 3.3964865e+03 - -6.9379361e+02 -7.8049591e+02 3.3942502e+03 - -6.9807530e+02 -7.8658683e+02 3.3921018e+03 - -7.0260166e+02 -7.9147278e+02 3.3900502e+03 - -7.0734786e+02 -7.9524369e+02 3.3881036e+03 - -7.1228771e+02 -7.9798387e+02 3.3862697e+03 - -7.1739374e+02 -7.9977254e+02 3.3845557e+03 - -7.2263727e+02 -8.0068428e+02 3.3829681e+03 - -7.2798838e+02 -8.0078945e+02 3.3815132e+03 - -7.3341594e+02 -8.0015467e+02 3.3801963e+03 - -7.3888763e+02 -7.9884314e+02 3.3790224e+03 - -7.4436985e+02 -7.9691497e+02 3.3779961e+03 - -7.4982777e+02 -7.9442749e+02 3.3771210e+03 - -7.5522527e+02 -7.9143551e+02 3.3764006e+03 - -7.6052490e+02 -7.8799152e+02 3.3758375e+03 - -7.6568786e+02 -7.8414586e+02 3.3754337e+03 - -7.7067390e+02 -7.7994695e+02 3.3751909e+03 - -7.7544134e+02 -7.7544134e+02 3.3751098e+03 - -7.7994695e+02 -7.7067390e+02 3.3751909e+03 - -7.8414586e+02 -7.6568786e+02 3.3754337e+03 - -7.8799152e+02 -7.6052490e+02 3.3758375e+03 - -7.9143551e+02 -7.5522527e+02 3.3764006e+03 - -7.9442749e+02 -7.4982777e+02 3.3771210e+03 - -7.9691497e+02 -7.4436985e+02 3.3779961e+03 - -7.9884314e+02 -7.3888763e+02 3.3790224e+03 - -8.0015467e+02 -7.3341594e+02 3.3801963e+03 - -8.0078945e+02 -7.2798838e+02 3.3815132e+03 - -8.0068428e+02 -7.2263727e+02 3.3829681e+03 - -7.9977254e+02 -7.1739374e+02 3.3845557e+03 - -7.9798387e+02 -7.1228771e+02 3.3862697e+03 - -7.9524369e+02 -7.0734786e+02 3.3881036e+03 - -7.9147278e+02 -7.0260166e+02 3.3900502e+03 - -7.8658683e+02 -6.9807530e+02 3.3921018e+03 - -7.8049591e+02 -6.9379361e+02 3.3942502e+03 - -7.7310399e+02 -6.8978000e+02 3.3964865e+03 - -7.6430848e+02 -6.8605632e+02 3.3988013e+03 - -7.5399983e+02 -6.8264263e+02 3.4011846e+03 - -7.4206123e+02 -6.7955698e+02 3.4036257e+03 - -7.2836853e+02 -6.7681508e+02 3.4061132e+03 - -7.1279043e+02 -6.7442989e+02 3.4086350e+03 - -6.9518906e+02 -6.7241111e+02 3.4111781e+03 - -6.7542115e+02 -6.7076457e+02 3.4137287e+03 - -6.5333989e+02 -6.6949155e+02 3.4162720e+03 - -6.2879773e+02 -6.6858798e+02 3.4187922e+03 - -6.0165037e+02 -6.6804358e+02 3.4212723e+03 - -5.7176208e+02 -6.6784106e+02 3.4236942e+03 - -5.3901256e+02 -6.6795527e+02 3.4260389e+03 - -5.0330542e+02 -6.6835267e+02 3.4282859e+03 - -4.6457821e+02 -6.6899097e+02 3.4304140e+03 - -4.2281363e+02 -6.6981939e+02 3.4324013e+03 - -3.7805130e+02 -6.7077944e+02 3.4342252e+03 - -3.3039918e+02 -6.7180656e+02 3.4358634e+03 - -2.8004318e+02 -6.7283264e+02 3.4372940e+03 - -2.2725339e+02 -6.7378934e+02 3.4384967e+03 - -1.7238545e+02 -6.7461212e+02 3.4394532e+03 - -1.1587556e+02 -6.7524458e+02 3.4401482e+03 - -5.8228676e+01 -6.7564277e+02 3.4405700e+03 - 0.0000000e+00 -6.7577871e+02 3.4407114e+03 - 5.8228676e+01 -6.7564277e+02 3.4405700e+03 - 1.1587556e+02 -6.7524458e+02 3.4401482e+03 - 1.7238545e+02 -6.7461212e+02 3.4394532e+03 - 2.2725339e+02 -6.7378934e+02 3.4384967e+03 - 2.8004318e+02 -6.7283264e+02 3.4372940e+03 - 3.3039918e+02 -6.7180656e+02 3.4358634e+03 - 3.7805130e+02 -6.7077944e+02 3.4342252e+03 - 4.2281363e+02 -6.6981939e+02 3.4324013e+03 - 4.6457821e+02 -6.6899097e+02 3.4304140e+03 - 5.0330542e+02 -6.6835267e+02 3.4282859e+03 - 5.3901256e+02 -6.6795527e+02 3.4260389e+03 - 5.7176208e+02 -6.6784106e+02 3.4236942e+03 - 6.0165037e+02 -6.6804358e+02 3.4212723e+03 - 6.2879773e+02 -6.6858798e+02 3.4187922e+03 - 6.5333989e+02 -6.6949155e+02 3.4162720e+03 - 6.7542115e+02 -6.7076457e+02 3.4137287e+03 - 6.9518906e+02 -6.7241111e+02 3.4111781e+03 - 7.1279043e+02 -6.7442989e+02 3.4086350e+03 - 7.2836853e+02 -6.7681508e+02 3.4061132e+03 - 7.4206123e+02 -6.7955698e+02 3.4036257e+03 - 7.5399983e+02 -6.8264263e+02 3.4011846e+03 - 7.6430848e+02 -6.8605632e+02 3.3988013e+03 - 7.7310399e+02 -6.8978000e+02 3.3964865e+03 - 7.8049591e+02 -6.9379361e+02 3.3942502e+03 - 7.8658683e+02 -6.9807530e+02 3.3921018e+03 - 7.9147278e+02 -7.0260166e+02 3.3900502e+03 - 7.9524369e+02 -7.0734786e+02 3.3881036e+03 - 7.9798387e+02 -7.1228771e+02 3.3862697e+03 - 7.9977254e+02 -7.1739374e+02 3.3845557e+03 - 8.0068428e+02 -7.2263727e+02 3.3829681e+03 - 8.0078945e+02 -7.2798838e+02 3.3815132e+03 - 8.0015467e+02 -7.3341594e+02 3.3801963e+03 - 7.9884314e+02 -7.3888763e+02 3.3790224e+03 - 7.9691497e+02 -7.4436985e+02 3.3779961e+03 - 7.9442749e+02 -7.4982777e+02 3.3771210e+03 - 7.9143551e+02 -7.5522527e+02 3.3764006e+03 - 7.8799152e+02 -7.6052490e+02 3.3758375e+03 - 7.8414586e+02 -7.6568786e+02 3.3754337e+03 - 7.7994695e+02 -7.7067390e+02 3.3751909e+03 - 7.7544134e+02 -7.7544134e+02 3.3751098e+03 - 7.7067390e+02 -7.7994695e+02 3.3751909e+03 - 7.6568786e+02 -7.8414586e+02 3.3754337e+03 - 7.6052490e+02 -7.8799152e+02 3.3758375e+03 - 7.5522527e+02 -7.9143551e+02 3.3764006e+03 - 7.4982777e+02 -7.9442749e+02 3.3771210e+03 - 7.4436985e+02 -7.9691497e+02 3.3779961e+03 - 7.3888763e+02 -7.9884314e+02 3.3790224e+03 - 7.3341594e+02 -8.0015467e+02 3.3801963e+03 - 7.2798838e+02 -8.0078945e+02 3.3815132e+03 - 7.2263727e+02 -8.0068428e+02 3.3829681e+03 - 7.1739374e+02 -7.9977254e+02 3.3845557e+03 - 7.1228771e+02 -7.9798387e+02 3.3862697e+03 - 7.0734786e+02 -7.9524369e+02 3.3881036e+03 - 7.0260166e+02 -7.9147278e+02 3.3900502e+03 - 6.9807530e+02 -7.8658683e+02 3.3921018e+03 - 6.9379361e+02 -7.8049591e+02 3.3942502e+03 - 6.8978000e+02 -7.7310399e+02 3.3964865e+03 - 6.8605632e+02 -7.6430848e+02 3.3988013e+03 - 6.8264263e+02 -7.5399983e+02 3.4011846e+03 - 6.7955698e+02 -7.4206123e+02 3.4036257e+03 - 6.7681508e+02 -7.2836853e+02 3.4061132e+03 - 6.7442989e+02 -7.1279043e+02 3.4086350e+03 - 6.7241111e+02 -6.9518906e+02 3.4111781e+03 - 6.7076457e+02 -6.7542115e+02 3.4137287e+03 - 6.6949155e+02 -6.5333989e+02 3.4162720e+03 - 6.6858798e+02 -6.2879773e+02 3.4187922e+03 - 6.6804358e+02 -6.0165037e+02 3.4212723e+03 - 6.6784106e+02 -5.7176208e+02 3.4236942e+03 - 6.6795527e+02 -5.3901256e+02 3.4260389e+03 - 6.6835267e+02 -5.0330542e+02 3.4282859e+03 - 6.6899097e+02 -4.6457821e+02 3.4304140e+03 - 6.6981939e+02 -4.2281363e+02 3.4324013e+03 - 6.7077944e+02 -3.7805130e+02 3.4342252e+03 - 6.7180656e+02 -3.3039918e+02 3.4358634e+03 - 6.7283264e+02 -2.8004318e+02 3.4372940e+03 - 6.7378934e+02 -2.2725339e+02 3.4384967e+03 - 6.7461212e+02 -1.7238545e+02 3.4394532e+03 - 6.7524458e+02 -1.1587556e+02 3.4401482e+03 - 6.7564277e+02 -5.8228676e+01 3.4405700e+03 - 6.7577871e+02 0.0000000e+00 3.4407114e+03 - 7.1823461e+02 2.4067136e-09 3.4264538e+03 - 7.1808973e+02 6.2036791e+01 3.4262930e+03 - 7.1766529e+02 1.2344213e+02 3.4258136e+03 - 7.1699102e+02 1.8361424e+02 3.4250241e+03 - 7.1611359e+02 2.4200736e+02 3.4239384e+03 - 7.1509271e+02 2.9815214e+02 3.4225744e+03 - 7.1399659e+02 3.5166840e+02 3.4209537e+03 - 7.1289728e+02 4.0227021e+02 3.4191001e+03 - 7.1186640e+02 4.4976380e+02 3.4170390e+03 - 7.1097165e+02 4.9404018e+02 3.4147962e+03 - 7.1027419e+02 5.3506401e+02 3.4123975e+03 - 7.0982704e+02 5.7286084e+02 3.4098681e+03 - 7.0967427e+02 6.0750388e+02 3.4072319e+03 - 7.0985087e+02 6.3910173e+02 3.4045118e+03 - 7.1038308e+02 6.6778744e+02 3.4017294e+03 - 7.1128912e+02 6.9370942e+02 3.3989046e+03 - 7.1257996e+02 7.1702412e+02 3.3960563e+03 - 7.1426026e+02 7.3789047e+02 3.3932019e+03 - 7.1632923e+02 7.5646576e+02 3.3903577e+03 - 7.1878142e+02 7.7290282e+02 3.3875388e+03 - 7.2160747e+02 7.8734819e+02 3.3847595e+03 - 7.2479466e+02 7.9994096e+02 3.3820330e+03 - 7.2832742e+02 8.1081239e+02 3.3793719e+03 - 7.3218777e+02 8.2008571e+02 3.3767878e+03 - 7.3635555e+02 8.2787634e+02 3.3742917e+03 - 7.4080874e+02 8.3429232e+02 3.3718940e+03 - 7.4552359e+02 8.3943469e+02 3.3696045e+03 - 7.5047472e+02 8.4339812e+02 3.3674321e+03 - 7.5563528e+02 8.4627143e+02 3.3653856e+03 - 7.6097693e+02 8.4813812e+02 3.3634727e+03 - 7.6646991e+02 8.4907692e+02 3.3617009e+03 - 7.7208302e+02 8.4916222e+02 3.3600770e+03 - 7.7778368e+02 8.4846458e+02 3.3586070e+03 - 7.8353785e+02 8.4705104e+02 3.3572967e+03 - 7.8931006e+02 8.4498550e+02 3.3561508e+03 - 7.9506339e+02 8.4232903e+02 3.3551739e+03 - 8.0075943e+02 8.3914007e+02 3.3543695e+03 - 8.0635826e+02 8.3547472e+02 3.3537407e+03 - 8.1181841e+02 8.3138684e+02 3.3532899e+03 - 8.1709685e+02 8.2692827e+02 3.3530187e+03 - 8.2214891e+02 8.2214891e+02 3.3529282e+03 - 8.2692827e+02 8.1709685e+02 3.3530187e+03 - 8.3138684e+02 8.1181841e+02 3.3532899e+03 - 8.3547472e+02 8.0635826e+02 3.3537407e+03 - 8.3914007e+02 8.0075943e+02 3.3543695e+03 - 8.4232903e+02 7.9506339e+02 3.3551739e+03 - 8.4498550e+02 7.8931006e+02 3.3561508e+03 - 8.4705104e+02 7.8353785e+02 3.3572967e+03 - 8.4846458e+02 7.7778368e+02 3.3586070e+03 - 8.4916222e+02 7.7208302e+02 3.3600770e+03 - 8.4907692e+02 7.6646991e+02 3.3617009e+03 - 8.4813812e+02 7.6097693e+02 3.3634727e+03 - 8.4627143e+02 7.5563528e+02 3.3653856e+03 - 8.4339812e+02 7.5047472e+02 3.3674321e+03 - 8.3943469e+02 7.4552359e+02 3.3696045e+03 - 8.3429232e+02 7.4080874e+02 3.3718940e+03 - 8.2787634e+02 7.3635555e+02 3.3742917e+03 - 8.2008571e+02 7.3218777e+02 3.3767878e+03 - 8.1081239e+02 7.2832742e+02 3.3793719e+03 - 7.9994096e+02 7.2479466e+02 3.3820330e+03 - 7.8734819e+02 7.2160747e+02 3.3847595e+03 - 7.7290282e+02 7.1878142e+02 3.3875388e+03 - 7.5646576e+02 7.1632923e+02 3.3903577e+03 - 7.3789047e+02 7.1426026e+02 3.3932019e+03 - 7.1702412e+02 7.1257996e+02 3.3960563e+03 - 6.9370942e+02 7.1128912e+02 3.3989046e+03 - 6.6778744e+02 7.1038308e+02 3.4017294e+03 - 6.3910173e+02 7.0985087e+02 3.4045118e+03 - 6.0750388e+02 7.0967427e+02 3.4072319e+03 - 5.7286084e+02 7.0982704e+02 3.4098681e+03 - 5.3506401e+02 7.1027419e+02 3.4123975e+03 - 4.9404018e+02 7.1097165e+02 3.4147962e+03 - 4.4976380e+02 7.1186640e+02 3.4170390e+03 - 4.0227021e+02 7.1289728e+02 3.4191001e+03 - 3.5166840e+02 7.1399659e+02 3.4209537e+03 - 2.9815214e+02 7.1509271e+02 3.4225744e+03 - 2.4200736e+02 7.1611359e+02 3.4239384e+03 - 1.8361424e+02 7.1699102e+02 3.4250241e+03 - 1.2344213e+02 7.1766529e+02 3.4258136e+03 - 6.2036791e+01 7.1808973e+02 3.4262930e+03 - 0.0000000e+00 7.1823461e+02 3.4264538e+03 - -6.2036791e+01 7.1808973e+02 3.4262930e+03 - -1.2344213e+02 7.1766529e+02 3.4258136e+03 - -1.8361424e+02 7.1699102e+02 3.4250241e+03 - -2.4200736e+02 7.1611359e+02 3.4239384e+03 - -2.9815214e+02 7.1509271e+02 3.4225744e+03 - -3.5166840e+02 7.1399659e+02 3.4209537e+03 - -4.0227021e+02 7.1289728e+02 3.4191001e+03 - -4.4976380e+02 7.1186640e+02 3.4170390e+03 - -4.9404018e+02 7.1097165e+02 3.4147962e+03 - -5.3506401e+02 7.1027419e+02 3.4123975e+03 - -5.7286084e+02 7.0982704e+02 3.4098681e+03 - -6.0750388e+02 7.0967427e+02 3.4072319e+03 - -6.3910173e+02 7.0985087e+02 3.4045118e+03 - -6.6778744e+02 7.1038308e+02 3.4017294e+03 - -6.9370942e+02 7.1128912e+02 3.3989046e+03 - -7.1702412e+02 7.1257996e+02 3.3960563e+03 - -7.3789047e+02 7.1426026e+02 3.3932019e+03 - -7.5646576e+02 7.1632923e+02 3.3903577e+03 - -7.7290282e+02 7.1878142e+02 3.3875388e+03 - -7.8734819e+02 7.2160747e+02 3.3847595e+03 - -7.9994096e+02 7.2479466e+02 3.3820330e+03 - -8.1081239e+02 7.2832742e+02 3.3793719e+03 - -8.2008571e+02 7.3218777e+02 3.3767878e+03 - -8.2787634e+02 7.3635555e+02 3.3742917e+03 - -8.3429232e+02 7.4080874e+02 3.3718940e+03 - -8.3943469e+02 7.4552359e+02 3.3696045e+03 - -8.4339812e+02 7.5047472e+02 3.3674321e+03 - -8.4627143e+02 7.5563528e+02 3.3653856e+03 - -8.4813812e+02 7.6097693e+02 3.3634727e+03 - -8.4907692e+02 7.6646991e+02 3.3617009e+03 - -8.4916222e+02 7.7208302e+02 3.3600770e+03 - -8.4846458e+02 7.7778368e+02 3.3586070e+03 - -8.4705104e+02 7.8353785e+02 3.3572967e+03 - -8.4498550e+02 7.8931006e+02 3.3561508e+03 - -8.4232903e+02 7.9506339e+02 3.3551739e+03 - -8.3914007e+02 8.0075943e+02 3.3543695e+03 - -8.3547472e+02 8.0635826e+02 3.3537407e+03 - -8.3138684e+02 8.1181841e+02 3.3532899e+03 - -8.2692827e+02 8.1709685e+02 3.3530187e+03 - -8.2214891e+02 8.2214891e+02 3.3529282e+03 - -8.1709685e+02 8.2692827e+02 3.3530187e+03 - -8.1181841e+02 8.3138684e+02 3.3532899e+03 - -8.0635826e+02 8.3547472e+02 3.3537407e+03 - -8.0075943e+02 8.3914007e+02 3.3543695e+03 - -7.9506339e+02 8.4232903e+02 3.3551739e+03 - -7.8931006e+02 8.4498550e+02 3.3561508e+03 - -7.8353785e+02 8.4705104e+02 3.3572967e+03 - -7.7778368e+02 8.4846458e+02 3.3586070e+03 - -7.7208302e+02 8.4916222e+02 3.3600770e+03 - -7.6646991e+02 8.4907692e+02 3.3617009e+03 - -7.6097693e+02 8.4813812e+02 3.3634727e+03 - -7.5563528e+02 8.4627143e+02 3.3653856e+03 - -7.5047472e+02 8.4339812e+02 3.3674321e+03 - -7.4552359e+02 8.3943469e+02 3.3696045e+03 - -7.4080874e+02 8.3429232e+02 3.3718940e+03 - -7.3635555e+02 8.2787634e+02 3.3742917e+03 - -7.3218777e+02 8.2008571e+02 3.3767878e+03 - -7.2832742e+02 8.1081239e+02 3.3793719e+03 - -7.2479466e+02 7.9994096e+02 3.3820330e+03 - -7.2160747e+02 7.8734819e+02 3.3847595e+03 - -7.1878142e+02 7.7290282e+02 3.3875388e+03 - -7.1632923e+02 7.5646576e+02 3.3903577e+03 - -7.1426026e+02 7.3789047e+02 3.3932019e+03 - -7.1257996e+02 7.1702412e+02 3.3960563e+03 - -7.1128912e+02 6.9370942e+02 3.3989046e+03 - -7.1038308e+02 6.6778744e+02 3.4017294e+03 - -7.0985087e+02 6.3910173e+02 3.4045118e+03 - -7.0967427e+02 6.0750388e+02 3.4072319e+03 - -7.0982704e+02 5.7286084e+02 3.4098681e+03 - -7.1027419e+02 5.3506401e+02 3.4123975e+03 - -7.1097165e+02 4.9404018e+02 3.4147962e+03 - -7.1186640e+02 4.4976380e+02 3.4170390e+03 - -7.1289728e+02 4.0227021e+02 3.4191001e+03 - -7.1399659e+02 3.5166840e+02 3.4209537e+03 - -7.1509271e+02 2.9815214e+02 3.4225744e+03 - -7.1611359e+02 2.4200736e+02 3.4239384e+03 - -7.1699102e+02 1.8361424e+02 3.4250241e+03 - -7.1766529e+02 1.2344213e+02 3.4258136e+03 - -7.1808973e+02 6.2036791e+01 3.4262930e+03 - -7.1823461e+02 2.4067136e-09 3.4264538e+03 - -7.1808973e+02 -6.2036791e+01 3.4262930e+03 - -7.1766529e+02 -1.2344213e+02 3.4258136e+03 - -7.1699102e+02 -1.8361424e+02 3.4250241e+03 - -7.1611359e+02 -2.4200736e+02 3.4239384e+03 - -7.1509271e+02 -2.9815214e+02 3.4225744e+03 - -7.1399659e+02 -3.5166840e+02 3.4209537e+03 - -7.1289728e+02 -4.0227021e+02 3.4191001e+03 - -7.1186640e+02 -4.4976380e+02 3.4170390e+03 - -7.1097165e+02 -4.9404018e+02 3.4147962e+03 - -7.1027419e+02 -5.3506401e+02 3.4123975e+03 - -7.0982704e+02 -5.7286084e+02 3.4098681e+03 - -7.0967427e+02 -6.0750388e+02 3.4072319e+03 - -7.0985087e+02 -6.3910173e+02 3.4045118e+03 - -7.1038308e+02 -6.6778744e+02 3.4017294e+03 - -7.1128912e+02 -6.9370942e+02 3.3989046e+03 - -7.1257996e+02 -7.1702412e+02 3.3960563e+03 - -7.1426026e+02 -7.3789047e+02 3.3932019e+03 - -7.1632923e+02 -7.5646576e+02 3.3903577e+03 - -7.1878142e+02 -7.7290282e+02 3.3875388e+03 - -7.2160747e+02 -7.8734819e+02 3.3847595e+03 - -7.2479466e+02 -7.9994096e+02 3.3820330e+03 - -7.2832742e+02 -8.1081239e+02 3.3793719e+03 - -7.3218777e+02 -8.2008571e+02 3.3767878e+03 - -7.3635555e+02 -8.2787634e+02 3.3742917e+03 - -7.4080874e+02 -8.3429232e+02 3.3718940e+03 - -7.4552359e+02 -8.3943469e+02 3.3696045e+03 - -7.5047472e+02 -8.4339812e+02 3.3674321e+03 - -7.5563528e+02 -8.4627143e+02 3.3653856e+03 - -7.6097693e+02 -8.4813812e+02 3.3634727e+03 - -7.6646991e+02 -8.4907692e+02 3.3617009e+03 - -7.7208302e+02 -8.4916222e+02 3.3600770e+03 - -7.7778368e+02 -8.4846458e+02 3.3586070e+03 - -7.8353785e+02 -8.4705104e+02 3.3572967e+03 - -7.8931006e+02 -8.4498550e+02 3.3561508e+03 - -7.9506339e+02 -8.4232903e+02 3.3551739e+03 - -8.0075943e+02 -8.3914007e+02 3.3543695e+03 - -8.0635826e+02 -8.3547472e+02 3.3537407e+03 - -8.1181841e+02 -8.3138684e+02 3.3532899e+03 - -8.1709685e+02 -8.2692827e+02 3.3530187e+03 - -8.2214891e+02 -8.2214891e+02 3.3529282e+03 - -8.2692827e+02 -8.1709685e+02 3.3530187e+03 - -8.3138684e+02 -8.1181841e+02 3.3532899e+03 - -8.3547472e+02 -8.0635826e+02 3.3537407e+03 - -8.3914007e+02 -8.0075943e+02 3.3543695e+03 - -8.4232903e+02 -7.9506339e+02 3.3551739e+03 - -8.4498550e+02 -7.8931006e+02 3.3561508e+03 - -8.4705104e+02 -7.8353785e+02 3.3572967e+03 - -8.4846458e+02 -7.7778368e+02 3.3586070e+03 - -8.4916222e+02 -7.7208302e+02 3.3600770e+03 - -8.4907692e+02 -7.6646991e+02 3.3617009e+03 - -8.4813812e+02 -7.6097693e+02 3.3634727e+03 - -8.4627143e+02 -7.5563528e+02 3.3653856e+03 - -8.4339812e+02 -7.5047472e+02 3.3674321e+03 - -8.3943469e+02 -7.4552359e+02 3.3696045e+03 - -8.3429232e+02 -7.4080874e+02 3.3718940e+03 - -8.2787634e+02 -7.3635555e+02 3.3742917e+03 - -8.2008571e+02 -7.3218777e+02 3.3767878e+03 - -8.1081239e+02 -7.2832742e+02 3.3793719e+03 - -7.9994096e+02 -7.2479466e+02 3.3820330e+03 - -7.8734819e+02 -7.2160747e+02 3.3847595e+03 - -7.7290282e+02 -7.1878142e+02 3.3875388e+03 - -7.5646576e+02 -7.1632923e+02 3.3903577e+03 - -7.3789047e+02 -7.1426026e+02 3.3932019e+03 - -7.1702412e+02 -7.1257996e+02 3.3960563e+03 - -6.9370942e+02 -7.1128912e+02 3.3989046e+03 - -6.6778744e+02 -7.1038308e+02 3.4017294e+03 - -6.3910173e+02 -7.0985087e+02 3.4045118e+03 - -6.0750388e+02 -7.0967427e+02 3.4072319e+03 - -5.7286084e+02 -7.0982704e+02 3.4098681e+03 - -5.3506401e+02 -7.1027419e+02 3.4123975e+03 - -4.9404018e+02 -7.1097165e+02 3.4147962e+03 - -4.4976380e+02 -7.1186640e+02 3.4170390e+03 - -4.0227021e+02 -7.1289728e+02 3.4191001e+03 - -3.5166840e+02 -7.1399659e+02 3.4209537e+03 - -2.9815214e+02 -7.1509271e+02 3.4225744e+03 - -2.4200736e+02 -7.1611359e+02 3.4239384e+03 - -1.8361424e+02 -7.1699102e+02 3.4250241e+03 - -1.2344213e+02 -7.1766529e+02 3.4258136e+03 - -6.2036791e+01 -7.1808973e+02 3.4262930e+03 - -4.8134273e-09 -7.1823461e+02 3.4264538e+03 - 6.2036791e+01 -7.1808973e+02 3.4262930e+03 - 1.2344213e+02 -7.1766529e+02 3.4258136e+03 - 1.8361424e+02 -7.1699102e+02 3.4250241e+03 - 2.4200736e+02 -7.1611359e+02 3.4239384e+03 - 2.9815214e+02 -7.1509271e+02 3.4225744e+03 - 3.5166840e+02 -7.1399659e+02 3.4209537e+03 - 4.0227021e+02 -7.1289728e+02 3.4191001e+03 - 4.4976380e+02 -7.1186640e+02 3.4170390e+03 - 4.9404018e+02 -7.1097165e+02 3.4147962e+03 - 5.3506401e+02 -7.1027419e+02 3.4123975e+03 - 5.7286084e+02 -7.0982704e+02 3.4098681e+03 - 6.0750388e+02 -7.0967427e+02 3.4072319e+03 - 6.3910173e+02 -7.0985087e+02 3.4045118e+03 - 6.6778744e+02 -7.1038308e+02 3.4017294e+03 - 6.9370942e+02 -7.1128912e+02 3.3989046e+03 - 7.1702412e+02 -7.1257996e+02 3.3960563e+03 - 7.3789047e+02 -7.1426026e+02 3.3932019e+03 - 7.5646576e+02 -7.1632923e+02 3.3903577e+03 - 7.7290282e+02 -7.1878142e+02 3.3875388e+03 - 7.8734819e+02 -7.2160747e+02 3.3847595e+03 - 7.9994096e+02 -7.2479466e+02 3.3820330e+03 - 8.1081239e+02 -7.2832742e+02 3.3793719e+03 - 8.2008571e+02 -7.3218777e+02 3.3767878e+03 - 8.2787634e+02 -7.3635555e+02 3.3742917e+03 - 8.3429232e+02 -7.4080874e+02 3.3718940e+03 - 8.3943469e+02 -7.4552359e+02 3.3696045e+03 - 8.4339812e+02 -7.5047472e+02 3.3674321e+03 - 8.4627143e+02 -7.5563528e+02 3.3653856e+03 - 8.4813812e+02 -7.6097693e+02 3.3634727e+03 - 8.4907692e+02 -7.6646991e+02 3.3617009e+03 - 8.4916222e+02 -7.7208302e+02 3.3600770e+03 - 8.4846458e+02 -7.7778368e+02 3.3586070e+03 - 8.4705104e+02 -7.8353785e+02 3.3572967e+03 - 8.4498550e+02 -7.8931006e+02 3.3561508e+03 - 8.4232903e+02 -7.9506339e+02 3.3551739e+03 - 8.3914007e+02 -8.0075943e+02 3.3543695e+03 - 8.3547472e+02 -8.0635826e+02 3.3537407e+03 - 8.3138684e+02 -8.1181841e+02 3.3532899e+03 - 8.2692827e+02 -8.1709685e+02 3.3530187e+03 - 8.2214891e+02 -8.2214891e+02 3.3529282e+03 - 8.1709685e+02 -8.2692827e+02 3.3530187e+03 - 8.1181841e+02 -8.3138684e+02 3.3532899e+03 - 8.0635826e+02 -8.3547472e+02 3.3537407e+03 - 8.0075943e+02 -8.3914007e+02 3.3543695e+03 - 7.9506339e+02 -8.4232903e+02 3.3551739e+03 - 7.8931006e+02 -8.4498550e+02 3.3561508e+03 - 7.8353785e+02 -8.4705104e+02 3.3572967e+03 - 7.7778368e+02 -8.4846458e+02 3.3586070e+03 - 7.7208302e+02 -8.4916222e+02 3.3600770e+03 - 7.6646991e+02 -8.4907692e+02 3.3617009e+03 - 7.6097693e+02 -8.4813812e+02 3.3634727e+03 - 7.5563528e+02 -8.4627143e+02 3.3653856e+03 - 7.5047472e+02 -8.4339812e+02 3.3674321e+03 - 7.4552359e+02 -8.3943469e+02 3.3696045e+03 - 7.4080874e+02 -8.3429232e+02 3.3718940e+03 - 7.3635555e+02 -8.2787634e+02 3.3742917e+03 - 7.3218777e+02 -8.2008571e+02 3.3767878e+03 - 7.2832742e+02 -8.1081239e+02 3.3793719e+03 - 7.2479466e+02 -7.9994096e+02 3.3820330e+03 - 7.2160747e+02 -7.8734819e+02 3.3847595e+03 - 7.1878142e+02 -7.7290282e+02 3.3875388e+03 - 7.1632923e+02 -7.5646576e+02 3.3903577e+03 - 7.1426026e+02 -7.3789047e+02 3.3932019e+03 - 7.1257996e+02 -7.1702412e+02 3.3960563e+03 - 7.1128912e+02 -6.9370942e+02 3.3989046e+03 - 7.1038308e+02 -6.6778744e+02 3.4017294e+03 - 7.0985087e+02 -6.3910173e+02 3.4045118e+03 - 7.0967427e+02 -6.0750388e+02 3.4072319e+03 - 7.0982704e+02 -5.7286084e+02 3.4098681e+03 - 7.1027419e+02 -5.3506401e+02 3.4123975e+03 - 7.1097165e+02 -4.9404018e+02 3.4147962e+03 - 7.1186640e+02 -4.4976380e+02 3.4170390e+03 - 7.1289728e+02 -4.0227021e+02 3.4191001e+03 - 7.1399659e+02 -3.5166840e+02 3.4209537e+03 - 7.1509271e+02 -2.9815214e+02 3.4225744e+03 - 7.1611359e+02 -2.4200736e+02 3.4239384e+03 - 7.1699102e+02 -1.8361424e+02 3.4250241e+03 - 7.1766529e+02 -1.2344213e+02 3.4258136e+03 - 7.1808973e+02 -6.2036791e+01 3.4262930e+03 - 7.1823461e+02 0.0000000e+00 3.4264538e+03 - 7.6072118e+02 0.0000000e+00 3.4112512e+03 - 7.6056742e+02 6.5880786e+01 3.4110695e+03 - 7.6011694e+02 1.3107740e+02 3.4105280e+03 - 7.5940121e+02 1.9493881e+02 3.4096367e+03 - 7.5846950e+02 2.5687643e+02 3.4084119e+03 - 7.5738477e+02 3.1638656e+02 3.4068748e+03 - 7.5621878e+02 3.7306418e+02 3.4050506e+03 - 7.5504711e+02 4.2660795e+02 3.4029671e+03 - 7.5394466e+02 4.7681730e+02 3.4006535e+03 - 7.5298203e+02 5.2358363e+02 3.3981397e+03 - 7.5222286e+02 5.6687753e+02 3.3954550e+03 - 7.5172219e+02 6.0673434e+02 3.3926279e+03 - 7.5152572e+02 6.4323956e+02 3.3896854e+03 - 7.5166974e+02 6.7651525e+02 3.3866529e+03 - 7.5218157e+02 7.0670824e+02 3.3835544e+03 - 7.5308028e+02 7.3398038e+02 3.3804120e+03 - 7.5437763e+02 7.5850081e+02 3.3772463e+03 - 7.5607894e+02 7.8044019e+02 3.3740763e+03 - 7.5818404e+02 7.9996645e+02 3.3709197e+03 - 7.6068806e+02 8.1724202e+02 3.3677930e+03 - 7.6358215e+02 8.3242200e+02 3.3647117e+03 - 7.6685402e+02 8.4565320e+02 3.3616902e+03 - 7.7048851e+02 8.5707373e+02 3.3587419e+03 - 7.7446789e+02 8.6681304e+02 3.3558795e+03 - 7.7877217e+02 8.7499223e+02 3.3531152e+03 - 7.8337933e+02 8.8172450e+02 3.3504600e+03 - 7.8826549e+02 8.8711576e+02 3.3479248e+03 - 7.9340495e+02 8.9126520e+02 3.3455193e+03 - 7.9877032e+02 8.9426597e+02 3.3432531e+03 - 8.0433255e+02 8.9620573e+02 3.3411348e+03 - 8.1006093e+02 8.9716725e+02 3.3391726e+03 - 8.1592310e+02 8.9722887e+02 3.3373740e+03 - 8.2188507e+02 8.9646503e+02 3.3357458e+03 - 8.2791116e+02 8.9494660e+02 3.3342942e+03 - 8.3396405e+02 8.9274129e+02 3.3330248e+03 - 8.4000473e+02 8.8991388e+02 3.3319424e+03 - 8.4599248e+02 8.8652655e+02 3.3310511e+03 - 8.5188488e+02 8.8263904e+02 3.3303543e+03 - 8.5763776e+02 8.7830880e+02 3.3298547e+03 - 8.6320521e+02 8.7359119e+02 3.3295542e+03 - 8.6853953e+02 8.6853953e+02 3.3294539e+03 - 8.7359119e+02 8.6320521e+02 3.3295542e+03 - 8.7830880e+02 8.5763776e+02 3.3298547e+03 - 8.8263904e+02 8.5188488e+02 3.3303543e+03 - 8.8652655e+02 8.4599248e+02 3.3310511e+03 - 8.8991388e+02 8.4000473e+02 3.3319424e+03 - 8.9274129e+02 8.3396405e+02 3.3330248e+03 - 8.9494660e+02 8.2791116e+02 3.3342942e+03 - 8.9646503e+02 8.2188507e+02 3.3357458e+03 - 8.9722887e+02 8.1592310e+02 3.3373740e+03 - 8.9716725e+02 8.1006093e+02 3.3391726e+03 - 8.9620573e+02 8.0433255e+02 3.3411348e+03 - 8.9426597e+02 7.9877032e+02 3.3432531e+03 - 8.9126520e+02 7.9340495e+02 3.3455193e+03 - 8.8711576e+02 7.8826549e+02 3.3479248e+03 - 8.8172450e+02 7.8337933e+02 3.3504600e+03 - 8.7499223e+02 7.7877217e+02 3.3531152e+03 - 8.6681304e+02 7.7446789e+02 3.3558795e+03 - 8.5707373e+02 7.7048851e+02 3.3587419e+03 - 8.4565320e+02 7.6685402e+02 3.3616902e+03 - 8.3242200e+02 7.6358215e+02 3.3647117e+03 - 8.1724202e+02 7.6068806e+02 3.3677930e+03 - 7.9996645e+02 7.5818404e+02 3.3709197e+03 - 7.8044019e+02 7.5607894e+02 3.3740763e+03 - 7.5850081e+02 7.5437763e+02 3.3772463e+03 - 7.3398038e+02 7.5308028e+02 3.3804120e+03 - 7.0670824e+02 7.5218157e+02 3.3835544e+03 - 6.7651525e+02 7.5166974e+02 3.3866529e+03 - 6.4323956e+02 7.5152572e+02 3.3896854e+03 - 6.0673434e+02 7.5172219e+02 3.3926279e+03 - 5.6687753e+02 7.5222286e+02 3.3954550e+03 - 5.2358363e+02 7.5298203e+02 3.3981397e+03 - 4.7681730e+02 7.5394466e+02 3.4006535e+03 - 4.2660795e+02 7.5504711e+02 3.4029671e+03 - 3.7306418e+02 7.5621878e+02 3.4050506e+03 - 3.1638656e+02 7.5738477e+02 3.4068748e+03 - 2.5687643e+02 7.5846950e+02 3.4084119e+03 - 1.9493881e+02 7.5940121e+02 3.4096367e+03 - 1.3107740e+02 7.6011694e+02 3.4105280e+03 - 6.5880786e+01 7.6056742e+02 3.4110695e+03 - 0.0000000e+00 7.6072118e+02 3.4112512e+03 - -6.5880786e+01 7.6056742e+02 3.4110695e+03 - -1.3107740e+02 7.6011694e+02 3.4105280e+03 - -1.9493881e+02 7.5940121e+02 3.4096367e+03 - -2.5687643e+02 7.5846950e+02 3.4084119e+03 - -3.1638656e+02 7.5738477e+02 3.4068748e+03 - -3.7306418e+02 7.5621878e+02 3.4050506e+03 - -4.2660795e+02 7.5504711e+02 3.4029671e+03 - -4.7681730e+02 7.5394466e+02 3.4006535e+03 - -5.2358363e+02 7.5298203e+02 3.3981397e+03 - -5.6687753e+02 7.5222286e+02 3.3954550e+03 - -6.0673434e+02 7.5172219e+02 3.3926279e+03 - -6.4323956e+02 7.5152572e+02 3.3896854e+03 - -6.7651525e+02 7.5166974e+02 3.3866529e+03 - -7.0670824e+02 7.5218157e+02 3.3835544e+03 - -7.3398038e+02 7.5308028e+02 3.3804120e+03 - -7.5850081e+02 7.5437763e+02 3.3772463e+03 - -7.8044019e+02 7.5607894e+02 3.3740763e+03 - -7.9996645e+02 7.5818404e+02 3.3709197e+03 - -8.1724202e+02 7.6068806e+02 3.3677930e+03 - -8.3242200e+02 7.6358215e+02 3.3647117e+03 - -8.4565320e+02 7.6685402e+02 3.3616902e+03 - -8.5707373e+02 7.7048851e+02 3.3587419e+03 - -8.6681304e+02 7.7446789e+02 3.3558795e+03 - -8.7499223e+02 7.7877217e+02 3.3531152e+03 - -8.8172450e+02 7.8337933e+02 3.3504600e+03 - -8.8711576e+02 7.8826549e+02 3.3479248e+03 - -8.9126520e+02 7.9340495e+02 3.3455193e+03 - -8.9426597e+02 7.9877032e+02 3.3432531e+03 - -8.9620573e+02 8.0433255e+02 3.3411348e+03 - -8.9716725e+02 8.1006093e+02 3.3391726e+03 - -8.9722887e+02 8.1592310e+02 3.3373740e+03 - -8.9646503e+02 8.2188507e+02 3.3357458e+03 - -8.9494660e+02 8.2791116e+02 3.3342942e+03 - -8.9274129e+02 8.3396405e+02 3.3330248e+03 - -8.8991388e+02 8.4000473e+02 3.3319424e+03 - -8.8652655e+02 8.4599248e+02 3.3310511e+03 - -8.8263904e+02 8.5188488e+02 3.3303543e+03 - -8.7830880e+02 8.5763776e+02 3.3298547e+03 - -8.7359119e+02 8.6320521e+02 3.3295542e+03 - -8.6853953e+02 8.6853953e+02 3.3294539e+03 - -8.6320521e+02 8.7359119e+02 3.3295542e+03 - -8.5763776e+02 8.7830880e+02 3.3298547e+03 - -8.5188488e+02 8.8263904e+02 3.3303543e+03 - -8.4599248e+02 8.8652655e+02 3.3310511e+03 - -8.4000473e+02 8.8991388e+02 3.3319424e+03 - -8.3396405e+02 8.9274129e+02 3.3330248e+03 - -8.2791116e+02 8.9494660e+02 3.3342942e+03 - -8.2188507e+02 8.9646503e+02 3.3357458e+03 - -8.1592310e+02 8.9722887e+02 3.3373740e+03 - -8.1006093e+02 8.9716725e+02 3.3391726e+03 - -8.0433255e+02 8.9620573e+02 3.3411348e+03 - -7.9877032e+02 8.9426597e+02 3.3432531e+03 - -7.9340495e+02 8.9126520e+02 3.3455193e+03 - -7.8826549e+02 8.8711576e+02 3.3479248e+03 - -7.8337933e+02 8.8172450e+02 3.3504600e+03 - -7.7877217e+02 8.7499223e+02 3.3531152e+03 - -7.7446789e+02 8.6681304e+02 3.3558795e+03 - -7.7048851e+02 8.5707373e+02 3.3587419e+03 - -7.6685402e+02 8.4565320e+02 3.3616902e+03 - -7.6358215e+02 8.3242200e+02 3.3647117e+03 - -7.6068806e+02 8.1724202e+02 3.3677930e+03 - -7.5818404e+02 7.9996645e+02 3.3709197e+03 - -7.5607894e+02 7.8044019e+02 3.3740763e+03 - -7.5437763e+02 7.5850081e+02 3.3772463e+03 - -7.5308028e+02 7.3398038e+02 3.3804120e+03 - -7.5218157e+02 7.0670824e+02 3.3835544e+03 - -7.5166974e+02 6.7651525e+02 3.3866529e+03 - -7.5152572e+02 6.4323956e+02 3.3896854e+03 - -7.5172219e+02 6.0673434e+02 3.3926279e+03 - -7.5222286e+02 5.6687753e+02 3.3954550e+03 - -7.5298203e+02 5.2358363e+02 3.3981397e+03 - -7.5394466e+02 4.7681730e+02 3.4006535e+03 - -7.5504711e+02 4.2660795e+02 3.4029671e+03 - -7.5621878e+02 3.7306418e+02 3.4050506e+03 - -7.5738477e+02 3.1638656e+02 3.4068748e+03 - -7.5846950e+02 2.5687643e+02 3.4084119e+03 - -7.5940121e+02 1.9493881e+02 3.4096367e+03 - -7.6011694e+02 1.3107740e+02 3.4105280e+03 - -7.6056742e+02 6.5880786e+01 3.4110695e+03 - -7.6072118e+02 0.0000000e+00 3.4112512e+03 - -7.6056742e+02 -6.5880786e+01 3.4110695e+03 - -7.6011694e+02 -1.3107740e+02 3.4105280e+03 - -7.5940121e+02 -1.9493881e+02 3.4096367e+03 - -7.5846950e+02 -2.5687643e+02 3.4084119e+03 - -7.5738477e+02 -3.1638656e+02 3.4068748e+03 - -7.5621878e+02 -3.7306418e+02 3.4050506e+03 - -7.5504711e+02 -4.2660795e+02 3.4029671e+03 - -7.5394466e+02 -4.7681730e+02 3.4006535e+03 - -7.5298203e+02 -5.2358363e+02 3.3981397e+03 - -7.5222286e+02 -5.6687753e+02 3.3954550e+03 - -7.5172219e+02 -6.0673434e+02 3.3926279e+03 - -7.5152572e+02 -6.4323956e+02 3.3896854e+03 - -7.5166974e+02 -6.7651525e+02 3.3866529e+03 - -7.5218157e+02 -7.0670824e+02 3.3835544e+03 - -7.5308028e+02 -7.3398038e+02 3.3804120e+03 - -7.5437763e+02 -7.5850081e+02 3.3772463e+03 - -7.5607894e+02 -7.8044019e+02 3.3740763e+03 - -7.5818404e+02 -7.9996645e+02 3.3709197e+03 - -7.6068806e+02 -8.1724202e+02 3.3677930e+03 - -7.6358215e+02 -8.3242200e+02 3.3647117e+03 - -7.6685402e+02 -8.4565320e+02 3.3616902e+03 - -7.7048851e+02 -8.5707373e+02 3.3587419e+03 - -7.7446789e+02 -8.6681304e+02 3.3558795e+03 - -7.7877217e+02 -8.7499223e+02 3.3531152e+03 - -7.8337933e+02 -8.8172450e+02 3.3504600e+03 - -7.8826549e+02 -8.8711576e+02 3.3479248e+03 - -7.9340495e+02 -8.9126520e+02 3.3455193e+03 - -7.9877032e+02 -8.9426597e+02 3.3432531e+03 - -8.0433255e+02 -8.9620573e+02 3.3411348e+03 - -8.1006093e+02 -8.9716725e+02 3.3391726e+03 - -8.1592310e+02 -8.9722887e+02 3.3373740e+03 - -8.2188507e+02 -8.9646503e+02 3.3357458e+03 - -8.2791116e+02 -8.9494660e+02 3.3342942e+03 - -8.3396405e+02 -8.9274129e+02 3.3330248e+03 - -8.4000473e+02 -8.8991388e+02 3.3319424e+03 - -8.4599248e+02 -8.8652655e+02 3.3310511e+03 - -8.5188488e+02 -8.8263904e+02 3.3303543e+03 - -8.5763776e+02 -8.7830880e+02 3.3298547e+03 - -8.6320521e+02 -8.7359119e+02 3.3295542e+03 - -8.6853953e+02 -8.6853953e+02 3.3294539e+03 - -8.7359119e+02 -8.6320521e+02 3.3295542e+03 - -8.7830880e+02 -8.5763776e+02 3.3298547e+03 - -8.8263904e+02 -8.5188488e+02 3.3303543e+03 - -8.8652655e+02 -8.4599248e+02 3.3310511e+03 - -8.8991388e+02 -8.4000473e+02 3.3319424e+03 - -8.9274129e+02 -8.3396405e+02 3.3330248e+03 - -8.9494660e+02 -8.2791116e+02 3.3342942e+03 - -8.9646503e+02 -8.2188507e+02 3.3357458e+03 - -8.9722887e+02 -8.1592310e+02 3.3373740e+03 - -8.9716725e+02 -8.1006093e+02 3.3391726e+03 - -8.9620573e+02 -8.0433255e+02 3.3411348e+03 - -8.9426597e+02 -7.9877032e+02 3.3432531e+03 - -8.9126520e+02 -7.9340495e+02 3.3455193e+03 - -8.8711576e+02 -7.8826549e+02 3.3479248e+03 - -8.8172450e+02 -7.8337933e+02 3.3504600e+03 - -8.7499223e+02 -7.7877217e+02 3.3531152e+03 - -8.6681304e+02 -7.7446789e+02 3.3558795e+03 - -8.5707373e+02 -7.7048851e+02 3.3587419e+03 - -8.4565320e+02 -7.6685402e+02 3.3616902e+03 - -8.3242200e+02 -7.6358215e+02 3.3647117e+03 - -8.1724202e+02 -7.6068806e+02 3.3677930e+03 - -7.9996645e+02 -7.5818404e+02 3.3709197e+03 - -7.8044019e+02 -7.5607894e+02 3.3740763e+03 - -7.5850081e+02 -7.5437763e+02 3.3772463e+03 - -7.3398038e+02 -7.5308028e+02 3.3804120e+03 - -7.0670824e+02 -7.5218157e+02 3.3835544e+03 - -6.7651525e+02 -7.5166974e+02 3.3866529e+03 - -6.4323956e+02 -7.5152572e+02 3.3896854e+03 - -6.0673434e+02 -7.5172219e+02 3.3926279e+03 - -5.6687753e+02 -7.5222286e+02 3.3954550e+03 - -5.2358363e+02 -7.5298203e+02 3.3981397e+03 - -4.7681730e+02 -7.5394466e+02 3.4006535e+03 - -4.2660795e+02 -7.5504711e+02 3.4029671e+03 - -3.7306418e+02 -7.5621878e+02 3.4050506e+03 - -3.1638656e+02 -7.5738477e+02 3.4068748e+03 - -2.5687643e+02 -7.5846950e+02 3.4084119e+03 - -1.9493881e+02 -7.5940121e+02 3.4096367e+03 - -1.3107740e+02 -7.6011694e+02 3.4105280e+03 - -6.5880786e+01 -7.6056742e+02 3.4110695e+03 - 0.0000000e+00 -7.6072118e+02 3.4112512e+03 - 6.5880786e+01 -7.6056742e+02 3.4110695e+03 - 1.3107740e+02 -7.6011694e+02 3.4105280e+03 - 1.9493881e+02 -7.5940121e+02 3.4096367e+03 - 2.5687643e+02 -7.5846950e+02 3.4084119e+03 - 3.1638656e+02 -7.5738477e+02 3.4068748e+03 - 3.7306418e+02 -7.5621878e+02 3.4050506e+03 - 4.2660795e+02 -7.5504711e+02 3.4029671e+03 - 4.7681730e+02 -7.5394466e+02 3.4006535e+03 - 5.2358363e+02 -7.5298203e+02 3.3981397e+03 - 5.6687753e+02 -7.5222286e+02 3.3954550e+03 - 6.0673434e+02 -7.5172219e+02 3.3926279e+03 - 6.4323956e+02 -7.5152572e+02 3.3896854e+03 - 6.7651525e+02 -7.5166974e+02 3.3866529e+03 - 7.0670824e+02 -7.5218157e+02 3.3835544e+03 - 7.3398038e+02 -7.5308028e+02 3.3804120e+03 - 7.5850081e+02 -7.5437763e+02 3.3772463e+03 - 7.8044019e+02 -7.5607894e+02 3.3740763e+03 - 7.9996645e+02 -7.5818404e+02 3.3709197e+03 - 8.1724202e+02 -7.6068806e+02 3.3677930e+03 - 8.3242200e+02 -7.6358215e+02 3.3647117e+03 - 8.4565320e+02 -7.6685402e+02 3.3616902e+03 - 8.5707373e+02 -7.7048851e+02 3.3587419e+03 - 8.6681304e+02 -7.7446789e+02 3.3558795e+03 - 8.7499223e+02 -7.7877217e+02 3.3531152e+03 - 8.8172450e+02 -7.8337933e+02 3.3504600e+03 - 8.8711576e+02 -7.8826549e+02 3.3479248e+03 - 8.9126520e+02 -7.9340495e+02 3.3455193e+03 - 8.9426597e+02 -7.9877032e+02 3.3432531e+03 - 8.9620573e+02 -8.0433255e+02 3.3411348e+03 - 8.9716725e+02 -8.1006093e+02 3.3391726e+03 - 8.9722887e+02 -8.1592310e+02 3.3373740e+03 - 8.9646503e+02 -8.2188507e+02 3.3357458e+03 - 8.9494660e+02 -8.2791116e+02 3.3342942e+03 - 8.9274129e+02 -8.3396405e+02 3.3330248e+03 - 8.8991388e+02 -8.4000473e+02 3.3319424e+03 - 8.8652655e+02 -8.4599248e+02 3.3310511e+03 - 8.8263904e+02 -8.5188488e+02 3.3303543e+03 - 8.7830880e+02 -8.5763776e+02 3.3298547e+03 - 8.7359119e+02 -8.6320521e+02 3.3295542e+03 - 8.6853953e+02 -8.6853953e+02 3.3294539e+03 - 8.6320521e+02 -8.7359119e+02 3.3295542e+03 - 8.5763776e+02 -8.7830880e+02 3.3298547e+03 - 8.5188488e+02 -8.8263904e+02 3.3303543e+03 - 8.4599248e+02 -8.8652655e+02 3.3310511e+03 - 8.4000473e+02 -8.8991388e+02 3.3319424e+03 - 8.3396405e+02 -8.9274129e+02 3.3330248e+03 - 8.2791116e+02 -8.9494660e+02 3.3342942e+03 - 8.2188507e+02 -8.9646503e+02 3.3357458e+03 - 8.1592310e+02 -8.9722887e+02 3.3373740e+03 - 8.1006093e+02 -8.9716725e+02 3.3391726e+03 - 8.0433255e+02 -8.9620573e+02 3.3411348e+03 - 7.9877032e+02 -8.9426597e+02 3.3432531e+03 - 7.9340495e+02 -8.9126520e+02 3.3455193e+03 - 7.8826549e+02 -8.8711576e+02 3.3479248e+03 - 7.8337933e+02 -8.8172450e+02 3.3504600e+03 - 7.7877217e+02 -8.7499223e+02 3.3531152e+03 - 7.7446789e+02 -8.6681304e+02 3.3558795e+03 - 7.7048851e+02 -8.5707373e+02 3.3587419e+03 - 7.6685402e+02 -8.4565320e+02 3.3616902e+03 - 7.6358215e+02 -8.3242200e+02 3.3647117e+03 - 7.6068806e+02 -8.1724202e+02 3.3677930e+03 - 7.5818404e+02 -7.9996645e+02 3.3709197e+03 - 7.5607894e+02 -7.8044019e+02 3.3740763e+03 - 7.5437763e+02 -7.5850081e+02 3.3772463e+03 - 7.5308028e+02 -7.3398038e+02 3.3804120e+03 - 7.5218157e+02 -7.0670824e+02 3.3835544e+03 - 7.5166974e+02 -6.7651525e+02 3.3866529e+03 - 7.5152572e+02 -6.4323956e+02 3.3896854e+03 - 7.5172219e+02 -6.0673434e+02 3.3926279e+03 - 7.5222286e+02 -5.6687753e+02 3.3954550e+03 - 7.5298203e+02 -5.2358363e+02 3.3981397e+03 - 7.5394466e+02 -4.7681730e+02 3.4006535e+03 - 7.5504711e+02 -4.2660795e+02 3.4029671e+03 - 7.5621878e+02 -3.7306418e+02 3.4050506e+03 - 7.5738477e+02 -3.1638656e+02 3.4068748e+03 - 7.5846950e+02 -2.5687643e+02 3.4084119e+03 - 7.5940121e+02 -1.9493881e+02 3.4096367e+03 - 7.6011694e+02 -1.3107740e+02 3.4105280e+03 - 7.6056742e+02 -6.5880786e+01 3.4110695e+03 - 7.6072118e+02 0.0000000e+00 3.4112512e+03 - 8.0323737e+02 0.0000000e+00 3.3950896e+03 - 8.0307487e+02 6.9764652e+01 3.3948853e+03 - 8.0259877e+02 1.3878894e+02 3.3942767e+03 - 8.0184219e+02 2.0636953e+02 3.3932758e+03 - 8.0085697e+02 2.7187274e+02 3.3919015e+03 - 7.9970919e+02 3.3475925e+02 3.3901789e+03 - 7.9847397e+02 3.9459889e+02 3.3881373e+03 - 7.9723019e+02 4.5107551e+02 3.3858089e+03 - 7.9605580e+02 5.0398301e+02 3.3832275e+03 - 7.9502406e+02 5.5321480e+02 3.3804271e+03 - 7.9420080e+02 5.9874924e+02 3.3774410e+03 - 7.9364287e+02 6.4063331e+02 3.3743013e+03 - 7.9339741e+02 6.7896638e+02 3.3710381e+03 - 7.9350191e+02 7.1388537e+02 3.3676798e+03 - 7.9398468e+02 7.4555201e+02 3.3642526e+03 - 7.9486568e+02 7.7414240e+02 3.3607806e+03 - 7.9615749e+02 7.9983894e+02 3.3572862e+03 - 7.9786622e+02 8.2282432e+02 3.3537900e+03 - 7.9999248e+02 8.4327729e+02 3.3503113e+03 - 8.0253215e+02 8.6136986e+02 3.3468676e+03 - 8.0547709e+02 8.7726560e+02 3.3434755e+03 - 8.0881572e+02 8.9111884e+02 3.3401505e+03 - 8.1253347e+02 9.0307436e+02 3.3369072e+03 - 8.1661314e+02 9.1326757e+02 3.3337591e+03 - 8.2103513e+02 9.2182497e+02 3.3307192e+03 - 8.2577767e+02 9.2886471e+02 3.3277997e+03 - 8.3081694e+02 9.3449729e+02 3.3250122e+03 - 8.3612712e+02 9.3882625e+02 3.3223673e+03 - 8.4168049e+02 9.4194888e+02 3.3198754e+03 - 8.4744741e+02 9.4395683e+02 3.3175461e+03 - 8.5339637e+02 9.4493680e+02 3.3153882e+03 - 8.5949393e+02 9.4497101e+02 3.3134100e+03 - 8.6570478e+02 9.4413770e+02 3.3116190e+03 - 8.7199168e+02 9.4251157e+02 3.3100222e+03 - 8.7831546e+02 9.4016410e+02 3.3086256e+03 - 8.8463502e+02 9.3716388e+02 3.3074346e+03 - 8.9090732e+02 9.3357682e+02 3.3064538e+03 - 8.9708740e+02 9.2946638e+02 3.3056870e+03 - 9.0312833e+02 9.2489370e+02 3.3051372e+03 - 9.0898124e+02 9.1991773e+02 3.3048064e+03 - 9.1459531e+02 9.1459531e+02 3.3046960e+03 - 9.1991773e+02 9.0898124e+02 3.3048064e+03 - 9.2489370e+02 9.0312833e+02 3.3051372e+03 - 9.2946638e+02 8.9708740e+02 3.3056870e+03 - 9.3357682e+02 8.9090732e+02 3.3064538e+03 - 9.3716388e+02 8.8463502e+02 3.3074346e+03 - 9.4016410e+02 8.7831546e+02 3.3086256e+03 - 9.4251157e+02 8.7199168e+02 3.3100222e+03 - 9.4413770e+02 8.6570478e+02 3.3116190e+03 - 9.4497101e+02 8.5949393e+02 3.3134100e+03 - 9.4493680e+02 8.5339637e+02 3.3153882e+03 - 9.4395683e+02 8.4744741e+02 3.3175461e+03 - 9.4194888e+02 8.4168049e+02 3.3198754e+03 - 9.3882625e+02 8.3612712e+02 3.3223673e+03 - 9.3449729e+02 8.3081694e+02 3.3250122e+03 - 9.2886471e+02 8.2577767e+02 3.3277997e+03 - 9.2182497e+02 8.2103513e+02 3.3307192e+03 - 9.1326757e+02 8.1661314e+02 3.3337591e+03 - 9.0307436e+02 8.1253347e+02 3.3369072e+03 - 8.9111884e+02 8.0881572e+02 3.3401505e+03 - 8.7726560e+02 8.0547709e+02 3.3434755e+03 - 8.6136986e+02 8.0253215e+02 3.3468676e+03 - 8.4327729e+02 7.9999248e+02 3.3503113e+03 - 8.2282432e+02 7.9786622e+02 3.3537900e+03 - 7.9983894e+02 7.9615749e+02 3.3572862e+03 - 7.7414240e+02 7.9486568e+02 3.3607806e+03 - 7.4555201e+02 7.9398468e+02 3.3642526e+03 - 7.1388537e+02 7.9350191e+02 3.3676798e+03 - 6.7896638e+02 7.9339741e+02 3.3710381e+03 - 6.4063331e+02 7.9364287e+02 3.3743013e+03 - 5.9874924e+02 7.9420080e+02 3.3774410e+03 - 5.5321480e+02 7.9502406e+02 3.3804271e+03 - 5.0398301e+02 7.9605580e+02 3.3832275e+03 - 4.5107551e+02 7.9723019e+02 3.3858089e+03 - 3.9459889e+02 7.9847397e+02 3.3881373e+03 - 3.3475925e+02 7.9970919e+02 3.3901789e+03 - 2.7187274e+02 8.0085697e+02 3.3919015e+03 - 2.0636953e+02 8.0184219e+02 3.3932758e+03 - 1.3878894e+02 8.0259877e+02 3.3942767e+03 - 6.9764652e+01 8.0307487e+02 3.3948853e+03 - 0.0000000e+00 8.0323737e+02 3.3950896e+03 - -6.9764652e+01 8.0307487e+02 3.3948853e+03 - -1.3878894e+02 8.0259877e+02 3.3942767e+03 - -2.0636953e+02 8.0184219e+02 3.3932758e+03 - -2.7187274e+02 8.0085697e+02 3.3919015e+03 - -3.3475925e+02 7.9970919e+02 3.3901789e+03 - -3.9459889e+02 7.9847397e+02 3.3881373e+03 - -4.5107551e+02 7.9723019e+02 3.3858089e+03 - -5.0398301e+02 7.9605580e+02 3.3832275e+03 - -5.5321480e+02 7.9502406e+02 3.3804271e+03 - -5.9874924e+02 7.9420080e+02 3.3774410e+03 - -6.4063331e+02 7.9364287e+02 3.3743013e+03 - -6.7896638e+02 7.9339741e+02 3.3710381e+03 - -7.1388537e+02 7.9350191e+02 3.3676798e+03 - -7.4555201e+02 7.9398468e+02 3.3642526e+03 - -7.7414240e+02 7.9486568e+02 3.3607806e+03 - -7.9983894e+02 7.9615749e+02 3.3572862e+03 - -8.2282432e+02 7.9786622e+02 3.3537900e+03 - -8.4327729e+02 7.9999248e+02 3.3503113e+03 - -8.6136986e+02 8.0253215e+02 3.3468676e+03 - -8.7726560e+02 8.0547709e+02 3.3434755e+03 - -8.9111884e+02 8.0881572e+02 3.3401505e+03 - -9.0307436e+02 8.1253347e+02 3.3369072e+03 - -9.1326757e+02 8.1661314e+02 3.3337591e+03 - -9.2182497e+02 8.2103513e+02 3.3307192e+03 - -9.2886471e+02 8.2577767e+02 3.3277997e+03 - -9.3449729e+02 8.3081694e+02 3.3250122e+03 - -9.3882625e+02 8.3612712e+02 3.3223673e+03 - -9.4194888e+02 8.4168049e+02 3.3198754e+03 - -9.4395683e+02 8.4744741e+02 3.3175461e+03 - -9.4493680e+02 8.5339637e+02 3.3153882e+03 - -9.4497101e+02 8.5949393e+02 3.3134100e+03 - -9.4413770e+02 8.6570478e+02 3.3116190e+03 - -9.4251157e+02 8.7199168e+02 3.3100222e+03 - -9.4016410e+02 8.7831546e+02 3.3086256e+03 - -9.3716388e+02 8.8463502e+02 3.3074346e+03 - -9.3357682e+02 8.9090732e+02 3.3064538e+03 - -9.2946638e+02 8.9708740e+02 3.3056870e+03 - -9.2489370e+02 9.0312833e+02 3.3051372e+03 - -9.1991773e+02 9.0898124e+02 3.3048064e+03 - -9.1459531e+02 9.1459531e+02 3.3046960e+03 - -9.0898124e+02 9.1991773e+02 3.3048064e+03 - -9.0312833e+02 9.2489370e+02 3.3051372e+03 - -8.9708740e+02 9.2946638e+02 3.3056870e+03 - -8.9090732e+02 9.3357682e+02 3.3064538e+03 - -8.8463502e+02 9.3716388e+02 3.3074346e+03 - -8.7831546e+02 9.4016410e+02 3.3086256e+03 - -8.7199168e+02 9.4251157e+02 3.3100222e+03 - -8.6570478e+02 9.4413770e+02 3.3116190e+03 - -8.5949393e+02 9.4497101e+02 3.3134100e+03 - -8.5339637e+02 9.4493680e+02 3.3153882e+03 - -8.4744741e+02 9.4395683e+02 3.3175461e+03 - -8.4168049e+02 9.4194888e+02 3.3198754e+03 - -8.3612712e+02 9.3882625e+02 3.3223673e+03 - -8.3081694e+02 9.3449729e+02 3.3250122e+03 - -8.2577767e+02 9.2886471e+02 3.3277997e+03 - -8.2103513e+02 9.2182497e+02 3.3307192e+03 - -8.1661314e+02 9.1326757e+02 3.3337591e+03 - -8.1253347e+02 9.0307436e+02 3.3369072e+03 - -8.0881572e+02 8.9111884e+02 3.3401505e+03 - -8.0547709e+02 8.7726560e+02 3.3434755e+03 - -8.0253215e+02 8.6136986e+02 3.3468676e+03 - -7.9999248e+02 8.4327729e+02 3.3503113e+03 - -7.9786622e+02 8.2282432e+02 3.3537900e+03 - -7.9615749e+02 7.9983894e+02 3.3572862e+03 - -7.9486568e+02 7.7414240e+02 3.3607806e+03 - -7.9398468e+02 7.4555201e+02 3.3642526e+03 - -7.9350191e+02 7.1388537e+02 3.3676798e+03 - -7.9339741e+02 6.7896638e+02 3.3710381e+03 - -7.9364287e+02 6.4063331e+02 3.3743013e+03 - -7.9420080e+02 5.9874924e+02 3.3774410e+03 - -7.9502406e+02 5.5321480e+02 3.3804271e+03 - -7.9605580e+02 5.0398301e+02 3.3832275e+03 - -7.9723019e+02 4.5107551e+02 3.3858089e+03 - -7.9847397e+02 3.9459889e+02 3.3881373e+03 - -7.9970919e+02 3.3475925e+02 3.3901789e+03 - -8.0085697e+02 2.7187274e+02 3.3919015e+03 - -8.0184219e+02 2.0636953e+02 3.3932758e+03 - -8.0259877e+02 1.3878894e+02 3.3942767e+03 - -8.0307487e+02 6.9764652e+01 3.3948853e+03 - -8.0323737e+02 0.0000000e+00 3.3950896e+03 - -8.0307487e+02 -6.9764652e+01 3.3948853e+03 - -8.0259877e+02 -1.3878894e+02 3.3942767e+03 - -8.0184219e+02 -2.0636953e+02 3.3932758e+03 - -8.0085697e+02 -2.7187274e+02 3.3919015e+03 - -7.9970919e+02 -3.3475925e+02 3.3901789e+03 - -7.9847397e+02 -3.9459889e+02 3.3881373e+03 - -7.9723019e+02 -4.5107551e+02 3.3858089e+03 - -7.9605580e+02 -5.0398301e+02 3.3832275e+03 - -7.9502406e+02 -5.5321480e+02 3.3804271e+03 - -7.9420080e+02 -5.9874924e+02 3.3774410e+03 - -7.9364287e+02 -6.4063331e+02 3.3743013e+03 - -7.9339741e+02 -6.7896638e+02 3.3710381e+03 - -7.9350191e+02 -7.1388537e+02 3.3676798e+03 - -7.9398468e+02 -7.4555201e+02 3.3642526e+03 - -7.9486568e+02 -7.7414240e+02 3.3607806e+03 - -7.9615749e+02 -7.9983894e+02 3.3572862e+03 - -7.9786622e+02 -8.2282432e+02 3.3537900e+03 - -7.9999248e+02 -8.4327729e+02 3.3503113e+03 - -8.0253215e+02 -8.6136986e+02 3.3468676e+03 - -8.0547709e+02 -8.7726560e+02 3.3434755e+03 - -8.0881572e+02 -8.9111884e+02 3.3401505e+03 - -8.1253347e+02 -9.0307436e+02 3.3369072e+03 - -8.1661314e+02 -9.1326757e+02 3.3337591e+03 - -8.2103513e+02 -9.2182497e+02 3.3307192e+03 - -8.2577767e+02 -9.2886471e+02 3.3277997e+03 - -8.3081694e+02 -9.3449729e+02 3.3250122e+03 - -8.3612712e+02 -9.3882625e+02 3.3223673e+03 - -8.4168049e+02 -9.4194888e+02 3.3198754e+03 - -8.4744741e+02 -9.4395683e+02 3.3175461e+03 - -8.5339637e+02 -9.4493680e+02 3.3153882e+03 - -8.5949393e+02 -9.4497101e+02 3.3134100e+03 - -8.6570478e+02 -9.4413770e+02 3.3116190e+03 - -8.7199168e+02 -9.4251157e+02 3.3100222e+03 - -8.7831546e+02 -9.4016410e+02 3.3086256e+03 - -8.8463502e+02 -9.3716388e+02 3.3074346e+03 - -8.9090732e+02 -9.3357682e+02 3.3064538e+03 - -8.9708740e+02 -9.2946638e+02 3.3056870e+03 - -9.0312833e+02 -9.2489370e+02 3.3051372e+03 - -9.0898124e+02 -9.1991773e+02 3.3048064e+03 - -9.1459531e+02 -9.1459531e+02 3.3046960e+03 - -9.1991773e+02 -9.0898124e+02 3.3048064e+03 - -9.2489370e+02 -9.0312833e+02 3.3051372e+03 - -9.2946638e+02 -8.9708740e+02 3.3056870e+03 - -9.3357682e+02 -8.9090732e+02 3.3064538e+03 - -9.3716388e+02 -8.8463502e+02 3.3074346e+03 - -9.4016410e+02 -8.7831546e+02 3.3086256e+03 - -9.4251157e+02 -8.7199168e+02 3.3100222e+03 - -9.4413770e+02 -8.6570478e+02 3.3116190e+03 - -9.4497101e+02 -8.5949393e+02 3.3134100e+03 - -9.4493680e+02 -8.5339637e+02 3.3153882e+03 - -9.4395683e+02 -8.4744741e+02 3.3175461e+03 - -9.4194888e+02 -8.4168049e+02 3.3198754e+03 - -9.3882625e+02 -8.3612712e+02 3.3223673e+03 - -9.3449729e+02 -8.3081694e+02 3.3250122e+03 - -9.2886471e+02 -8.2577767e+02 3.3277997e+03 - -9.2182497e+02 -8.2103513e+02 3.3307192e+03 - -9.1326757e+02 -8.1661314e+02 3.3337591e+03 - -9.0307436e+02 -8.1253347e+02 3.3369072e+03 - -8.9111884e+02 -8.0881572e+02 3.3401505e+03 - -8.7726560e+02 -8.0547709e+02 3.3434755e+03 - -8.6136986e+02 -8.0253215e+02 3.3468676e+03 - -8.4327729e+02 -7.9999248e+02 3.3503113e+03 - -8.2282432e+02 -7.9786622e+02 3.3537900e+03 - -7.9983894e+02 -7.9615749e+02 3.3572862e+03 - -7.7414240e+02 -7.9486568e+02 3.3607806e+03 - -7.4555201e+02 -7.9398468e+02 3.3642526e+03 - -7.1388537e+02 -7.9350191e+02 3.3676798e+03 - -6.7896638e+02 -7.9339741e+02 3.3710381e+03 - -6.4063331e+02 -7.9364287e+02 3.3743013e+03 - -5.9874924e+02 -7.9420080e+02 3.3774410e+03 - -5.5321480e+02 -7.9502406e+02 3.3804271e+03 - -5.0398301e+02 -7.9605580e+02 3.3832275e+03 - -4.5107551e+02 -7.9723019e+02 3.3858089e+03 - -3.9459889e+02 -7.9847397e+02 3.3881373e+03 - -3.3475925e+02 -7.9970919e+02 3.3901789e+03 - -2.7187274e+02 -8.0085697e+02 3.3919015e+03 - -2.0636953e+02 -8.0184219e+02 3.3932758e+03 - -1.3878894e+02 -8.0259877e+02 3.3942767e+03 - -6.9764652e+01 -8.0307487e+02 3.3948853e+03 - 0.0000000e+00 -8.0323737e+02 3.3950896e+03 - 6.9764652e+01 -8.0307487e+02 3.3948853e+03 - 1.3878894e+02 -8.0259877e+02 3.3942767e+03 - 2.0636953e+02 -8.0184219e+02 3.3932758e+03 - 2.7187274e+02 -8.0085697e+02 3.3919015e+03 - 3.3475925e+02 -7.9970919e+02 3.3901789e+03 - 3.9459889e+02 -7.9847397e+02 3.3881373e+03 - 4.5107551e+02 -7.9723019e+02 3.3858089e+03 - 5.0398301e+02 -7.9605580e+02 3.3832275e+03 - 5.5321480e+02 -7.9502406e+02 3.3804271e+03 - 5.9874924e+02 -7.9420080e+02 3.3774410e+03 - 6.4063331e+02 -7.9364287e+02 3.3743013e+03 - 6.7896638e+02 -7.9339741e+02 3.3710381e+03 - 7.1388537e+02 -7.9350191e+02 3.3676798e+03 - 7.4555201e+02 -7.9398468e+02 3.3642526e+03 - 7.7414240e+02 -7.9486568e+02 3.3607806e+03 - 7.9983894e+02 -7.9615749e+02 3.3572862e+03 - 8.2282432e+02 -7.9786622e+02 3.3537900e+03 - 8.4327729e+02 -7.9999248e+02 3.3503113e+03 - 8.6136986e+02 -8.0253215e+02 3.3468676e+03 - 8.7726560e+02 -8.0547709e+02 3.3434755e+03 - 8.9111884e+02 -8.0881572e+02 3.3401505e+03 - 9.0307436e+02 -8.1253347e+02 3.3369072e+03 - 9.1326757e+02 -8.1661314e+02 3.3337591e+03 - 9.2182497e+02 -8.2103513e+02 3.3307192e+03 - 9.2886471e+02 -8.2577767e+02 3.3277997e+03 - 9.3449729e+02 -8.3081694e+02 3.3250122e+03 - 9.3882625e+02 -8.3612712e+02 3.3223673e+03 - 9.4194888e+02 -8.4168049e+02 3.3198754e+03 - 9.4395683e+02 -8.4744741e+02 3.3175461e+03 - 9.4493680e+02 -8.5339637e+02 3.3153882e+03 - 9.4497101e+02 -8.5949393e+02 3.3134100e+03 - 9.4413770e+02 -8.6570478e+02 3.3116190e+03 - 9.4251157e+02 -8.7199168e+02 3.3100222e+03 - 9.4016410e+02 -8.7831546e+02 3.3086256e+03 - 9.3716388e+02 -8.8463502e+02 3.3074346e+03 - 9.3357682e+02 -8.9090732e+02 3.3064538e+03 - 9.2946638e+02 -8.9708740e+02 3.3056870e+03 - 9.2489370e+02 -9.0312833e+02 3.3051372e+03 - 9.1991773e+02 -9.0898124e+02 3.3048064e+03 - 9.1459531e+02 -9.1459531e+02 3.3046960e+03 - 9.0898124e+02 -9.1991773e+02 3.3048064e+03 - 9.0312833e+02 -9.2489370e+02 3.3051372e+03 - 8.9708740e+02 -9.2946638e+02 3.3056870e+03 - 8.9090732e+02 -9.3357682e+02 3.3064538e+03 - 8.8463502e+02 -9.3716388e+02 3.3074346e+03 - 8.7831546e+02 -9.4016410e+02 3.3086256e+03 - 8.7199168e+02 -9.4251157e+02 3.3100222e+03 - 8.6570478e+02 -9.4413770e+02 3.3116190e+03 - 8.5949393e+02 -9.4497101e+02 3.3134100e+03 - 8.5339637e+02 -9.4493680e+02 3.3153882e+03 - 8.4744741e+02 -9.4395683e+02 3.3175461e+03 - 8.4168049e+02 -9.4194888e+02 3.3198754e+03 - 8.3612712e+02 -9.3882625e+02 3.3223673e+03 - 8.3081694e+02 -9.3449729e+02 3.3250122e+03 - 8.2577767e+02 -9.2886471e+02 3.3277997e+03 - 8.2103513e+02 -9.2182497e+02 3.3307192e+03 - 8.1661314e+02 -9.1326757e+02 3.3337591e+03 - 8.1253347e+02 -9.0307436e+02 3.3369072e+03 - 8.0881572e+02 -8.9111884e+02 3.3401505e+03 - 8.0547709e+02 -8.7726560e+02 3.3434755e+03 - 8.0253215e+02 -8.6136986e+02 3.3468676e+03 - 7.9999248e+02 -8.4327729e+02 3.3503113e+03 - 7.9786622e+02 -8.2282432e+02 3.3537900e+03 - 7.9615749e+02 -7.9983894e+02 3.3572862e+03 - 7.9486568e+02 -7.7414240e+02 3.3607806e+03 - 7.9398468e+02 -7.4555201e+02 3.3642526e+03 - 7.9350191e+02 -7.1388537e+02 3.3676798e+03 - 7.9339741e+02 -6.7896638e+02 3.3710381e+03 - 7.9364287e+02 -6.4063331e+02 3.3743013e+03 - 7.9420080e+02 -5.9874924e+02 3.3774410e+03 - 7.9502406e+02 -5.5321480e+02 3.3804271e+03 - 7.9605580e+02 -5.0398301e+02 3.3832275e+03 - 7.9723019e+02 -4.5107551e+02 3.3858089e+03 - 7.9847397e+02 -3.9459889e+02 3.3881373e+03 - 7.9970919e+02 -3.3475925e+02 3.3901789e+03 - 8.0085697e+02 -2.7187274e+02 3.3919015e+03 - 8.0184219e+02 -2.0636953e+02 3.3932758e+03 - 8.0259877e+02 -1.3878894e+02 3.3942767e+03 - 8.0307487e+02 -6.9764652e+01 3.3948853e+03 - 8.0323737e+02 0.0000000e+00 3.3950896e+03 - 8.4578162e+02 0.0000000e+00 3.3779538e+03 - 8.4561061e+02 7.3692876e+01 3.3777253e+03 - 8.4510952e+02 1.4658523e+02 3.3770444e+03 - 8.4431311e+02 2.1791798e+02 3.3759254e+03 - 8.4327565e+02 2.8700982e+02 3.3743907e+03 - 8.4206617e+02 3.5328440e+02 3.3724694e+03 - 8.4076294e+02 4.1628616e+02 3.3701957e+03 - 8.3944787e+02 4.7568491e+02 3.3676069e+03 - 8.3820168e+02 5.3127047e+02 3.3647418e+03 - 8.3709995e+02 5.8294025e+02 3.3616391e+03 - 8.3621044e+02 6.3068244e+02 3.3583365e+03 - 8.3559157e+02 6.7455769e+02 3.3548697e+03 - 8.3529173e+02 7.1468105e+02 3.3512723e+03 - 8.3534947e+02 7.5120582e+02 3.3475755e+03 - 8.3579406e+02 7.8430980e+02 3.3438078e+03 - 8.3664636e+02 8.1418419e+02 3.3399955e+03 - 8.3791983e+02 8.4102522e+02 3.3361626e+03 - 8.3962153e+02 8.6502795e+02 3.3323313e+03 - 8.4175299e+02 8.8638205e+02 3.3285220e+03 - 8.4431107e+02 9.0526909e+02 3.3247536e+03 - 8.4728860e+02 9.2186100e+02 3.3210435e+03 - 8.5067493e+02 9.3631937e+02 3.3174084e+03 - 8.5445634e+02 9.4879541e+02 3.3138635e+03 - 8.5861642e+02 9.5943022e+02 3.3104237e+03 - 8.6313622e+02 9.6835540e+02 3.3071025e+03 - 8.6799446e+02 9.7569378e+02 3.3039131e+03 - 8.7316760e+02 9.8156019e+02 3.3008679e+03 - 8.7862991e+02 9.8606228e+02 3.2979786e+03 - 8.8435352e+02 9.8930127e+02 3.2952561e+03 - 8.9030839e+02 9.9137268e+02 3.2927111e+03 - 8.9646231e+02 9.9236699e+02 3.2903531e+03 - 9.0278090e+02 9.9237017e+02 3.2881912e+03 - 9.0922759e+02 9.9146425e+02 3.2862337e+03 - 9.1576362e+02 9.8972769e+02 3.2844881e+03 - 9.2234801e+02 9.8723579e+02 3.2829613e+03 - 9.2893759e+02 9.8406093e+02 3.2816591e+03 - 9.3548696e+02 9.8027284e+02 3.2805866e+03 - 9.4194856e+02 9.7593877e+02 3.2797480e+03 - 9.4827264e+02 9.7112362e+02 3.2791466e+03 - 9.5440730e+02 9.6589004e+02 3.2787849e+03 - 9.6029849e+02 9.6029849e+02 3.2786641e+03 - 9.6589004e+02 9.5440730e+02 3.2787849e+03 - 9.7112362e+02 9.4827264e+02 3.2791466e+03 - 9.7593877e+02 9.4194856e+02 3.2797480e+03 - 9.8027284e+02 9.3548696e+02 3.2805866e+03 - 9.8406093e+02 9.2893759e+02 3.2816591e+03 - 9.8723579e+02 9.2234801e+02 3.2829613e+03 - 9.8972769e+02 9.1576362e+02 3.2844881e+03 - 9.9146425e+02 9.0922759e+02 3.2862337e+03 - 9.9237017e+02 9.0278090e+02 3.2881912e+03 - 9.9236699e+02 8.9646231e+02 3.2903531e+03 - 9.9137268e+02 8.9030839e+02 3.2927111e+03 - 9.8930127e+02 8.8435352e+02 3.2952561e+03 - 9.8606228e+02 8.7862991e+02 3.2979786e+03 - 9.8156019e+02 8.7316760e+02 3.3008679e+03 - 9.7569378e+02 8.6799446e+02 3.3039131e+03 - 9.6835540e+02 8.6313622e+02 3.3071025e+03 - 9.5943022e+02 8.5861642e+02 3.3104237e+03 - 9.4879541e+02 8.5445634e+02 3.3138635e+03 - 9.3631937e+02 8.5067493e+02 3.3174084e+03 - 9.2186100e+02 8.4728860e+02 3.3210435e+03 - 9.0526909e+02 8.4431107e+02 3.3247536e+03 - 8.8638205e+02 8.4175299e+02 3.3285220e+03 - 8.6502795e+02 8.3962153e+02 3.3323313e+03 - 8.4102522e+02 8.3791983e+02 3.3361626e+03 - 8.1418419e+02 8.3664636e+02 3.3399955e+03 - 7.8430980e+02 8.3579406e+02 3.3438078e+03 - 7.5120582e+02 8.3534947e+02 3.3475755e+03 - 7.1468105e+02 8.3529173e+02 3.3512723e+03 - 6.7455769e+02 8.3559157e+02 3.3548697e+03 - 6.3068244e+02 8.3621044e+02 3.3583365e+03 - 5.8294025e+02 8.3709995e+02 3.3616391e+03 - 5.3127047e+02 8.3820168e+02 3.3647418e+03 - 4.7568491e+02 8.3944787e+02 3.3676069e+03 - 4.1628616e+02 8.4076294e+02 3.3701957e+03 - 3.5328440e+02 8.4206617e+02 3.3724694e+03 - 2.8700982e+02 8.4327565e+02 3.3743907e+03 - 2.1791798e+02 8.4431311e+02 3.3759254e+03 - 1.4658523e+02 8.4510952e+02 3.3770444e+03 - 7.3692876e+01 8.4561061e+02 3.3777253e+03 - 2.4067136e-09 8.4578162e+02 3.3779538e+03 - -7.3692876e+01 8.4561061e+02 3.3777253e+03 - -1.4658523e+02 8.4510952e+02 3.3770444e+03 - -2.1791798e+02 8.4431311e+02 3.3759254e+03 - -2.8700982e+02 8.4327565e+02 3.3743907e+03 - -3.5328440e+02 8.4206617e+02 3.3724694e+03 - -4.1628616e+02 8.4076294e+02 3.3701957e+03 - -4.7568491e+02 8.3944787e+02 3.3676069e+03 - -5.3127047e+02 8.3820168e+02 3.3647418e+03 - -5.8294025e+02 8.3709995e+02 3.3616391e+03 - -6.3068244e+02 8.3621044e+02 3.3583365e+03 - -6.7455769e+02 8.3559157e+02 3.3548697e+03 - -7.1468105e+02 8.3529173e+02 3.3512723e+03 - -7.5120582e+02 8.3534947e+02 3.3475755e+03 - -7.8430980e+02 8.3579406e+02 3.3438078e+03 - -8.1418419e+02 8.3664636e+02 3.3399955e+03 - -8.4102522e+02 8.3791983e+02 3.3361626e+03 - -8.6502795e+02 8.3962153e+02 3.3323313e+03 - -8.8638205e+02 8.4175299e+02 3.3285220e+03 - -9.0526909e+02 8.4431107e+02 3.3247536e+03 - -9.2186100e+02 8.4728860e+02 3.3210435e+03 - -9.3631937e+02 8.5067493e+02 3.3174084e+03 - -9.4879541e+02 8.5445634e+02 3.3138635e+03 - -9.5943022e+02 8.5861642e+02 3.3104237e+03 - -9.6835540e+02 8.6313622e+02 3.3071025e+03 - -9.7569378e+02 8.6799446e+02 3.3039131e+03 - -9.8156019e+02 8.7316760e+02 3.3008679e+03 - -9.8606228e+02 8.7862991e+02 3.2979786e+03 - -9.8930127e+02 8.8435352e+02 3.2952561e+03 - -9.9137268e+02 8.9030839e+02 3.2927111e+03 - -9.9236699e+02 8.9646231e+02 3.2903531e+03 - -9.9237017e+02 9.0278090e+02 3.2881912e+03 - -9.9146425e+02 9.0922759e+02 3.2862337e+03 - -9.8972769e+02 9.1576362e+02 3.2844881e+03 - -9.8723579e+02 9.2234801e+02 3.2829613e+03 - -9.8406093e+02 9.2893759e+02 3.2816591e+03 - -9.8027284e+02 9.3548696e+02 3.2805866e+03 - -9.7593877e+02 9.4194856e+02 3.2797480e+03 - -9.7112362e+02 9.4827264e+02 3.2791466e+03 - -9.6589004e+02 9.5440730e+02 3.2787849e+03 - -9.6029849e+02 9.6029849e+02 3.2786641e+03 - -9.5440730e+02 9.6589004e+02 3.2787849e+03 - -9.4827264e+02 9.7112362e+02 3.2791466e+03 - -9.4194856e+02 9.7593877e+02 3.2797480e+03 - -9.3548696e+02 9.8027284e+02 3.2805866e+03 - -9.2893759e+02 9.8406093e+02 3.2816591e+03 - -9.2234801e+02 9.8723579e+02 3.2829613e+03 - -9.1576362e+02 9.8972769e+02 3.2844881e+03 - -9.0922759e+02 9.9146425e+02 3.2862337e+03 - -9.0278090e+02 9.9237017e+02 3.2881912e+03 - -8.9646231e+02 9.9236699e+02 3.2903531e+03 - -8.9030839e+02 9.9137268e+02 3.2927111e+03 - -8.8435352e+02 9.8930127e+02 3.2952561e+03 - -8.7862991e+02 9.8606228e+02 3.2979786e+03 - -8.7316760e+02 9.8156019e+02 3.3008679e+03 - -8.6799446e+02 9.7569378e+02 3.3039131e+03 - -8.6313622e+02 9.6835540e+02 3.3071025e+03 - -8.5861642e+02 9.5943022e+02 3.3104237e+03 - -8.5445634e+02 9.4879541e+02 3.3138635e+03 - -8.5067493e+02 9.3631937e+02 3.3174084e+03 - -8.4728860e+02 9.2186100e+02 3.3210435e+03 - -8.4431107e+02 9.0526909e+02 3.3247536e+03 - -8.4175299e+02 8.8638205e+02 3.3285220e+03 - -8.3962153e+02 8.6502795e+02 3.3323313e+03 - -8.3791983e+02 8.4102522e+02 3.3361626e+03 - -8.3664636e+02 8.1418419e+02 3.3399955e+03 - -8.3579406e+02 7.8430980e+02 3.3438078e+03 - -8.3534947e+02 7.5120582e+02 3.3475755e+03 - -8.3529173e+02 7.1468105e+02 3.3512723e+03 - -8.3559157e+02 6.7455769e+02 3.3548697e+03 - -8.3621044e+02 6.3068244e+02 3.3583365e+03 - -8.3709995e+02 5.8294025e+02 3.3616391e+03 - -8.3820168e+02 5.3127047e+02 3.3647418e+03 - -8.3944787e+02 4.7568491e+02 3.3676069e+03 - -8.4076294e+02 4.1628616e+02 3.3701957e+03 - -8.4206617e+02 3.5328440e+02 3.3724694e+03 - -8.4327565e+02 2.8700982e+02 3.3743907e+03 - -8.4431311e+02 2.1791798e+02 3.3759254e+03 - -8.4510952e+02 1.4658523e+02 3.3770444e+03 - -8.4561061e+02 7.3692876e+01 3.3777253e+03 - -8.4578162e+02 0.0000000e+00 3.3779538e+03 - -8.4561061e+02 -7.3692876e+01 3.3777253e+03 - -8.4510952e+02 -1.4658523e+02 3.3770444e+03 - -8.4431311e+02 -2.1791798e+02 3.3759254e+03 - -8.4327565e+02 -2.8700982e+02 3.3743907e+03 - -8.4206617e+02 -3.5328440e+02 3.3724694e+03 - -8.4076294e+02 -4.1628616e+02 3.3701957e+03 - -8.3944787e+02 -4.7568491e+02 3.3676069e+03 - -8.3820168e+02 -5.3127047e+02 3.3647418e+03 - -8.3709995e+02 -5.8294025e+02 3.3616391e+03 - -8.3621044e+02 -6.3068244e+02 3.3583365e+03 - -8.3559157e+02 -6.7455769e+02 3.3548697e+03 - -8.3529173e+02 -7.1468105e+02 3.3512723e+03 - -8.3534947e+02 -7.5120582e+02 3.3475755e+03 - -8.3579406e+02 -7.8430980e+02 3.3438078e+03 - -8.3664636e+02 -8.1418419e+02 3.3399955e+03 - -8.3791983e+02 -8.4102522e+02 3.3361626e+03 - -8.3962153e+02 -8.6502795e+02 3.3323313e+03 - -8.4175299e+02 -8.8638205e+02 3.3285220e+03 - -8.4431107e+02 -9.0526909e+02 3.3247536e+03 - -8.4728860e+02 -9.2186100e+02 3.3210435e+03 - -8.5067493e+02 -9.3631937e+02 3.3174084e+03 - -8.5445634e+02 -9.4879541e+02 3.3138635e+03 - -8.5861642e+02 -9.5943022e+02 3.3104237e+03 - -8.6313622e+02 -9.6835540e+02 3.3071025e+03 - -8.6799446e+02 -9.7569378e+02 3.3039131e+03 - -8.7316760e+02 -9.8156019e+02 3.3008679e+03 - -8.7862991e+02 -9.8606228e+02 3.2979786e+03 - -8.8435352e+02 -9.8930127e+02 3.2952561e+03 - -8.9030839e+02 -9.9137268e+02 3.2927111e+03 - -8.9646231e+02 -9.9236699e+02 3.2903531e+03 - -9.0278090e+02 -9.9237017e+02 3.2881912e+03 - -9.0922759e+02 -9.9146425e+02 3.2862337e+03 - -9.1576362e+02 -9.8972769e+02 3.2844881e+03 - -9.2234801e+02 -9.8723579e+02 3.2829613e+03 - -9.2893759e+02 -9.8406093e+02 3.2816591e+03 - -9.3548696e+02 -9.8027284e+02 3.2805866e+03 - -9.4194856e+02 -9.7593877e+02 3.2797480e+03 - -9.4827264e+02 -9.7112362e+02 3.2791466e+03 - -9.5440730e+02 -9.6589004e+02 3.2787849e+03 - -9.6029849e+02 -9.6029849e+02 3.2786641e+03 - -9.6589004e+02 -9.5440730e+02 3.2787849e+03 - -9.7112362e+02 -9.4827264e+02 3.2791466e+03 - -9.7593877e+02 -9.4194856e+02 3.2797480e+03 - -9.8027284e+02 -9.3548696e+02 3.2805866e+03 - -9.8406093e+02 -9.2893759e+02 3.2816591e+03 - -9.8723579e+02 -9.2234801e+02 3.2829613e+03 - -9.8972769e+02 -9.1576362e+02 3.2844881e+03 - -9.9146425e+02 -9.0922759e+02 3.2862337e+03 - -9.9237017e+02 -9.0278090e+02 3.2881912e+03 - -9.9236699e+02 -8.9646231e+02 3.2903531e+03 - -9.9137268e+02 -8.9030839e+02 3.2927111e+03 - -9.8930127e+02 -8.8435352e+02 3.2952561e+03 - -9.8606228e+02 -8.7862991e+02 3.2979786e+03 - -9.8156019e+02 -8.7316760e+02 3.3008679e+03 - -9.7569378e+02 -8.6799446e+02 3.3039131e+03 - -9.6835540e+02 -8.6313622e+02 3.3071025e+03 - -9.5943022e+02 -8.5861642e+02 3.3104237e+03 - -9.4879541e+02 -8.5445634e+02 3.3138635e+03 - -9.3631937e+02 -8.5067493e+02 3.3174084e+03 - -9.2186100e+02 -8.4728860e+02 3.3210435e+03 - -9.0526909e+02 -8.4431107e+02 3.3247536e+03 - -8.8638205e+02 -8.4175299e+02 3.3285220e+03 - -8.6502795e+02 -8.3962153e+02 3.3323313e+03 - -8.4102522e+02 -8.3791983e+02 3.3361626e+03 - -8.1418419e+02 -8.3664636e+02 3.3399955e+03 - -7.8430980e+02 -8.3579406e+02 3.3438078e+03 - -7.5120582e+02 -8.3534947e+02 3.3475755e+03 - -7.1468105e+02 -8.3529173e+02 3.3512723e+03 - -6.7455769e+02 -8.3559157e+02 3.3548697e+03 - -6.3068244e+02 -8.3621044e+02 3.3583365e+03 - -5.8294025e+02 -8.3709995e+02 3.3616391e+03 - -5.3127047e+02 -8.3820168e+02 3.3647418e+03 - -4.7568491e+02 -8.3944787e+02 3.3676069e+03 - -4.1628616e+02 -8.4076294e+02 3.3701957e+03 - -3.5328440e+02 -8.4206617e+02 3.3724694e+03 - -2.8700982e+02 -8.4327565e+02 3.3743907e+03 - -2.1791798e+02 -8.4431311e+02 3.3759254e+03 - -1.4658523e+02 -8.4510952e+02 3.3770444e+03 - -7.3692876e+01 -8.4561061e+02 3.3777253e+03 - 0.0000000e+00 -8.4578162e+02 3.3779538e+03 - 7.3692876e+01 -8.4561061e+02 3.3777253e+03 - 1.4658523e+02 -8.4510952e+02 3.3770444e+03 - 2.1791798e+02 -8.4431311e+02 3.3759254e+03 - 2.8700982e+02 -8.4327565e+02 3.3743907e+03 - 3.5328440e+02 -8.4206617e+02 3.3724694e+03 - 4.1628616e+02 -8.4076294e+02 3.3701957e+03 - 4.7568491e+02 -8.3944787e+02 3.3676069e+03 - 5.3127047e+02 -8.3820168e+02 3.3647418e+03 - 5.8294025e+02 -8.3709995e+02 3.3616391e+03 - 6.3068244e+02 -8.3621044e+02 3.3583365e+03 - 6.7455769e+02 -8.3559157e+02 3.3548697e+03 - 7.1468105e+02 -8.3529173e+02 3.3512723e+03 - 7.5120582e+02 -8.3534947e+02 3.3475755e+03 - 7.8430980e+02 -8.3579406e+02 3.3438078e+03 - 8.1418419e+02 -8.3664636e+02 3.3399955e+03 - 8.4102522e+02 -8.3791983e+02 3.3361626e+03 - 8.6502795e+02 -8.3962153e+02 3.3323313e+03 - 8.8638205e+02 -8.4175299e+02 3.3285220e+03 - 9.0526909e+02 -8.4431107e+02 3.3247536e+03 - 9.2186100e+02 -8.4728860e+02 3.3210435e+03 - 9.3631937e+02 -8.5067493e+02 3.3174084e+03 - 9.4879541e+02 -8.5445634e+02 3.3138635e+03 - 9.5943022e+02 -8.5861642e+02 3.3104237e+03 - 9.6835540e+02 -8.6313622e+02 3.3071025e+03 - 9.7569378e+02 -8.6799446e+02 3.3039131e+03 - 9.8156019e+02 -8.7316760e+02 3.3008679e+03 - 9.8606228e+02 -8.7862991e+02 3.2979786e+03 - 9.8930127e+02 -8.8435352e+02 3.2952561e+03 - 9.9137268e+02 -8.9030839e+02 3.2927111e+03 - 9.9236699e+02 -8.9646231e+02 3.2903531e+03 - 9.9237017e+02 -9.0278090e+02 3.2881912e+03 - 9.9146425e+02 -9.0922759e+02 3.2862337e+03 - 9.8972769e+02 -9.1576362e+02 3.2844881e+03 - 9.8723579e+02 -9.2234801e+02 3.2829613e+03 - 9.8406093e+02 -9.2893759e+02 3.2816591e+03 - 9.8027284e+02 -9.3548696e+02 3.2805866e+03 - 9.7593877e+02 -9.4194856e+02 3.2797480e+03 - 9.7112362e+02 -9.4827264e+02 3.2791466e+03 - 9.6589004e+02 -9.5440730e+02 3.2787849e+03 - 9.6029849e+02 -9.6029849e+02 3.2786641e+03 - 9.5440730e+02 -9.6589004e+02 3.2787849e+03 - 9.4827264e+02 -9.7112362e+02 3.2791466e+03 - 9.4194856e+02 -9.7593877e+02 3.2797480e+03 - 9.3548696e+02 -9.8027284e+02 3.2805866e+03 - 9.2893759e+02 -9.8406093e+02 3.2816591e+03 - 9.2234801e+02 -9.8723579e+02 3.2829613e+03 - 9.1576362e+02 -9.8972769e+02 3.2844881e+03 - 9.0922759e+02 -9.9146425e+02 3.2862337e+03 - 9.0278090e+02 -9.9237017e+02 3.2881912e+03 - 8.9646231e+02 -9.9236699e+02 3.2903531e+03 - 8.9030839e+02 -9.9137268e+02 3.2927111e+03 - 8.8435352e+02 -9.8930127e+02 3.2952561e+03 - 8.7862991e+02 -9.8606228e+02 3.2979786e+03 - 8.7316760e+02 -9.8156019e+02 3.3008679e+03 - 8.6799446e+02 -9.7569378e+02 3.3039131e+03 - 8.6313622e+02 -9.6835540e+02 3.3071025e+03 - 8.5861642e+02 -9.5943022e+02 3.3104237e+03 - 8.5445634e+02 -9.4879541e+02 3.3138635e+03 - 8.5067493e+02 -9.3631937e+02 3.3174084e+03 - 8.4728860e+02 -9.2186100e+02 3.3210435e+03 - 8.4431107e+02 -9.0526909e+02 3.3247536e+03 - 8.4175299e+02 -8.8638205e+02 3.3285220e+03 - 8.3962153e+02 -8.6502795e+02 3.3323313e+03 - 8.3791983e+02 -8.4102522e+02 3.3361626e+03 - 8.3664636e+02 -8.1418419e+02 3.3399955e+03 - 8.3579406e+02 -7.8430980e+02 3.3438078e+03 - 8.3534947e+02 -7.5120582e+02 3.3475755e+03 - 8.3529173e+02 -7.1468105e+02 3.3512723e+03 - 8.3559157e+02 -6.7455769e+02 3.3548697e+03 - 8.3621044e+02 -6.3068244e+02 3.3583365e+03 - 8.3709995e+02 -5.8294025e+02 3.3616391e+03 - 8.3820168e+02 -5.3127047e+02 3.3647418e+03 - 8.3944787e+02 -4.7568491e+02 3.3676069e+03 - 8.4076294e+02 -4.1628616e+02 3.3701957e+03 - 8.4206617e+02 -3.5328440e+02 3.3724694e+03 - 8.4327565e+02 -2.8700982e+02 3.3743907e+03 - 8.4431311e+02 -2.1791798e+02 3.3759254e+03 - 8.4510952e+02 -1.4658523e+02 3.3770444e+03 - 8.4561061e+02 -7.3692876e+01 3.3777253e+03 - 8.4578162e+02 0.0000000e+00 3.3779538e+03 - 8.8835181e+02 0.0000000e+00 3.3598283e+03 - 8.8817260e+02 7.7670540e+01 3.3595735e+03 - 8.8764749e+02 1.5447586e+02 3.3588147e+03 - 8.8681274e+02 2.2959722e+02 3.3575685e+03 - 8.8572492e+02 3.0230284e+02 3.3558614e+03 - 8.8445580e+02 3.7197782e+02 3.3537274e+03 - 8.8308650e+02 4.3814106e+02 3.3512063e+03 - 8.8170168e+02 5.0044928e+02 3.3483410e+03 - 8.8038442e+02 5.5869003e+02 3.3451760e+03 - 8.7921230e+02 6.1276694e+02 3.3417552e+03 - 8.7825471e+02 6.6268044e+02 3.3381209e+03 - 8.7757132e+02 7.0850709e+02 3.3343130e+03 - 8.7721161e+02 7.5037967e+02 3.3303685e+03 - 8.7721508e+02 7.8846948e+02 3.3263215e+03 - 8.7761188e+02 8.2297163e+02 3.3222029e+03 - 8.7842383e+02 8.5409335e+02 3.3180409e+03 - 8.7966539e+02 8.8204523e+02 3.3138612e+03 - 8.8134468e+02 9.0703502e+02 3.3096873e+03 - 8.8346439e+02 9.2926340e+02 3.3055407e+03 - 8.8602258e+02 9.4892143e+02 3.3014414e+03 - 8.8901328e+02 9.6618921e+02 3.2974079e+03 - 8.9242707e+02 9.8123537e+02 3.2934575e+03 - 8.9625138e+02 9.9421721e+02 3.2896065e+03 - 9.0047082e+02 1.0052812e+03 3.2858703e+03 - 9.0506739e+02 1.0145637e+03 3.2822635e+03 - 9.1002052e+02 1.0221920e+03 3.2788001e+03 - 9.1530723e+02 1.0282849e+03 3.2754933e+03 - 9.2090209e+02 1.0329539e+03 3.2723556e+03 - 9.2677725e+02 1.0363040e+03 3.2693989e+03 - 9.3290245e+02 1.0384344e+03 3.2666346e+03 - 9.3924492e+02 1.0394391e+03 3.2640730e+03 - 9.4576946e+02 1.0394078e+03 3.2617242e+03 - 9.5243832e+02 1.0384263e+03 3.2595971e+03 - 9.5921127e+02 1.0365767e+03 3.2577000e+03 - 9.6604555e+02 1.0339382e+03 3.2560404e+03 - 9.7289588e+02 1.0305870e+03 3.2546248e+03 - 9.7971451e+02 1.0265967e+03 3.2534587e+03 - 9.8645121e+02 1.0220383e+03 3.2525469e+03 - 9.9305335e+02 1.0169808e+03 3.2518930e+03 - 9.9946589e+02 1.0114904e+03 3.2514996e+03 - 1.0056315e+03 1.0056315e+03 3.2513683e+03 - 1.0114904e+03 9.9946589e+02 3.2514996e+03 - 1.0169808e+03 9.9305335e+02 3.2518930e+03 - 1.0220383e+03 9.8645121e+02 3.2525469e+03 - 1.0265967e+03 9.7971451e+02 3.2534587e+03 - 1.0305870e+03 9.7289588e+02 3.2546248e+03 - 1.0339382e+03 9.6604555e+02 3.2560404e+03 - 1.0365767e+03 9.5921127e+02 3.2577000e+03 - 1.0384263e+03 9.5243832e+02 3.2595971e+03 - 1.0394078e+03 9.4576946e+02 3.2617242e+03 - 1.0394391e+03 9.3924492e+02 3.2640730e+03 - 1.0384344e+03 9.3290245e+02 3.2666346e+03 - 1.0363040e+03 9.2677725e+02 3.2693989e+03 - 1.0329539e+03 9.2090209e+02 3.2723556e+03 - 1.0282849e+03 9.1530723e+02 3.2754933e+03 - 1.0221920e+03 9.1002052e+02 3.2788001e+03 - 1.0145637e+03 9.0506739e+02 3.2822635e+03 - 1.0052812e+03 9.0047082e+02 3.2858703e+03 - 9.9421721e+02 8.9625138e+02 3.2896065e+03 - 9.8123537e+02 8.9242707e+02 3.2934575e+03 - 9.6618921e+02 8.8901328e+02 3.2974079e+03 - 9.4892143e+02 8.8602258e+02 3.3014414e+03 - 9.2926340e+02 8.8346439e+02 3.3055407e+03 - 9.0703502e+02 8.8134468e+02 3.3096873e+03 - 8.8204523e+02 8.7966539e+02 3.3138612e+03 - 8.5409335e+02 8.7842383e+02 3.3180409e+03 - 8.2297163e+02 8.7761188e+02 3.3222029e+03 - 7.8846948e+02 8.7721508e+02 3.3263215e+03 - 7.5037967e+02 8.7721161e+02 3.3303685e+03 - 7.0850709e+02 8.7757132e+02 3.3343130e+03 - 6.6268044e+02 8.7825471e+02 3.3381209e+03 - 6.1276694e+02 8.7921230e+02 3.3417552e+03 - 5.5869003e+02 8.8038442e+02 3.3451760e+03 - 5.0044928e+02 8.8170168e+02 3.3483410e+03 - 4.3814106e+02 8.8308650e+02 3.3512063e+03 - 3.7197782e+02 8.8445580e+02 3.3537274e+03 - 3.0230284e+02 8.8572492e+02 3.3558614e+03 - 2.2959722e+02 8.8681274e+02 3.3575685e+03 - 1.5447586e+02 8.8764749e+02 3.3588147e+03 - 7.7670540e+01 8.8817260e+02 3.3595735e+03 - 0.0000000e+00 8.8835181e+02 3.3598283e+03 - -7.7670540e+01 8.8817260e+02 3.3595735e+03 - -1.5447586e+02 8.8764749e+02 3.3588147e+03 - -2.2959722e+02 8.8681274e+02 3.3575685e+03 - -3.0230284e+02 8.8572492e+02 3.3558614e+03 - -3.7197782e+02 8.8445580e+02 3.3537274e+03 - -4.3814106e+02 8.8308650e+02 3.3512063e+03 - -5.0044928e+02 8.8170168e+02 3.3483410e+03 - -5.5869003e+02 8.8038442e+02 3.3451760e+03 - -6.1276694e+02 8.7921230e+02 3.3417552e+03 - -6.6268044e+02 8.7825471e+02 3.3381209e+03 - -7.0850709e+02 8.7757132e+02 3.3343130e+03 - -7.5037967e+02 8.7721161e+02 3.3303685e+03 - -7.8846948e+02 8.7721508e+02 3.3263215e+03 - -8.2297163e+02 8.7761188e+02 3.3222029e+03 - -8.5409335e+02 8.7842383e+02 3.3180409e+03 - -8.8204523e+02 8.7966539e+02 3.3138612e+03 - -9.0703502e+02 8.8134468e+02 3.3096873e+03 - -9.2926340e+02 8.8346439e+02 3.3055407e+03 - -9.4892143e+02 8.8602258e+02 3.3014414e+03 - -9.6618921e+02 8.8901328e+02 3.2974079e+03 - -9.8123537e+02 8.9242707e+02 3.2934575e+03 - -9.9421721e+02 8.9625138e+02 3.2896065e+03 - -1.0052812e+03 9.0047082e+02 3.2858703e+03 - -1.0145637e+03 9.0506739e+02 3.2822635e+03 - -1.0221920e+03 9.1002052e+02 3.2788001e+03 - -1.0282849e+03 9.1530723e+02 3.2754933e+03 - -1.0329539e+03 9.2090209e+02 3.2723556e+03 - -1.0363040e+03 9.2677725e+02 3.2693989e+03 - -1.0384344e+03 9.3290245e+02 3.2666346e+03 - -1.0394391e+03 9.3924492e+02 3.2640730e+03 - -1.0394078e+03 9.4576946e+02 3.2617242e+03 - -1.0384263e+03 9.5243832e+02 3.2595971e+03 - -1.0365767e+03 9.5921127e+02 3.2577000e+03 - -1.0339382e+03 9.6604555e+02 3.2560404e+03 - -1.0305870e+03 9.7289588e+02 3.2546248e+03 - -1.0265967e+03 9.7971451e+02 3.2534587e+03 - -1.0220383e+03 9.8645121e+02 3.2525469e+03 - -1.0169808e+03 9.9305335e+02 3.2518930e+03 - -1.0114904e+03 9.9946589e+02 3.2514996e+03 - -1.0056315e+03 1.0056315e+03 3.2513683e+03 - -9.9946589e+02 1.0114904e+03 3.2514996e+03 - -9.9305335e+02 1.0169808e+03 3.2518930e+03 - -9.8645121e+02 1.0220383e+03 3.2525469e+03 - -9.7971451e+02 1.0265967e+03 3.2534587e+03 - -9.7289588e+02 1.0305870e+03 3.2546248e+03 - -9.6604555e+02 1.0339382e+03 3.2560404e+03 - -9.5921127e+02 1.0365767e+03 3.2577000e+03 - -9.5243832e+02 1.0384263e+03 3.2595971e+03 - -9.4576946e+02 1.0394078e+03 3.2617242e+03 - -9.3924492e+02 1.0394391e+03 3.2640730e+03 - -9.3290245e+02 1.0384344e+03 3.2666346e+03 - -9.2677725e+02 1.0363040e+03 3.2693989e+03 - -9.2090209e+02 1.0329539e+03 3.2723556e+03 - -9.1530723e+02 1.0282849e+03 3.2754933e+03 - -9.1002052e+02 1.0221920e+03 3.2788001e+03 - -9.0506739e+02 1.0145637e+03 3.2822635e+03 - -9.0047082e+02 1.0052812e+03 3.2858703e+03 - -8.9625138e+02 9.9421721e+02 3.2896065e+03 - -8.9242707e+02 9.8123537e+02 3.2934575e+03 - -8.8901328e+02 9.6618921e+02 3.2974079e+03 - -8.8602258e+02 9.4892143e+02 3.3014414e+03 - -8.8346439e+02 9.2926340e+02 3.3055407e+03 - -8.8134468e+02 9.0703502e+02 3.3096873e+03 - -8.7966539e+02 8.8204523e+02 3.3138612e+03 - -8.7842383e+02 8.5409335e+02 3.3180409e+03 - -8.7761188e+02 8.2297163e+02 3.3222029e+03 - -8.7721508e+02 7.8846948e+02 3.3263215e+03 - -8.7721161e+02 7.5037967e+02 3.3303685e+03 - -8.7757132e+02 7.0850709e+02 3.3343130e+03 - -8.7825471e+02 6.6268044e+02 3.3381209e+03 - -8.7921230e+02 6.1276694e+02 3.3417552e+03 - -8.8038442e+02 5.5869003e+02 3.3451760e+03 - -8.8170168e+02 5.0044928e+02 3.3483410e+03 - -8.8308650e+02 4.3814106e+02 3.3512063e+03 - -8.8445580e+02 3.7197782e+02 3.3537274e+03 - -8.8572492e+02 3.0230284e+02 3.3558614e+03 - -8.8681274e+02 2.2959722e+02 3.3575685e+03 - -8.8764749e+02 1.5447586e+02 3.3588147e+03 - -8.8817260e+02 7.7670540e+01 3.3595735e+03 - -8.8835181e+02 0.0000000e+00 3.3598283e+03 - -8.8817260e+02 -7.7670540e+01 3.3595735e+03 - -8.8764749e+02 -1.5447586e+02 3.3588147e+03 - -8.8681274e+02 -2.2959722e+02 3.3575685e+03 - -8.8572492e+02 -3.0230284e+02 3.3558614e+03 - -8.8445580e+02 -3.7197782e+02 3.3537274e+03 - -8.8308650e+02 -4.3814106e+02 3.3512063e+03 - -8.8170168e+02 -5.0044928e+02 3.3483410e+03 - -8.8038442e+02 -5.5869003e+02 3.3451760e+03 - -8.7921230e+02 -6.1276694e+02 3.3417552e+03 - -8.7825471e+02 -6.6268044e+02 3.3381209e+03 - -8.7757132e+02 -7.0850709e+02 3.3343130e+03 - -8.7721161e+02 -7.5037967e+02 3.3303685e+03 - -8.7721508e+02 -7.8846948e+02 3.3263215e+03 - -8.7761188e+02 -8.2297163e+02 3.3222029e+03 - -8.7842383e+02 -8.5409335e+02 3.3180409e+03 - -8.7966539e+02 -8.8204523e+02 3.3138612e+03 - -8.8134468e+02 -9.0703502e+02 3.3096873e+03 - -8.8346439e+02 -9.2926340e+02 3.3055407e+03 - -8.8602258e+02 -9.4892143e+02 3.3014414e+03 - -8.8901328e+02 -9.6618921e+02 3.2974079e+03 - -8.9242707e+02 -9.8123537e+02 3.2934575e+03 - -8.9625138e+02 -9.9421721e+02 3.2896065e+03 - -9.0047082e+02 -1.0052812e+03 3.2858703e+03 - -9.0506739e+02 -1.0145637e+03 3.2822635e+03 - -9.1002052e+02 -1.0221920e+03 3.2788001e+03 - -9.1530723e+02 -1.0282849e+03 3.2754933e+03 - -9.2090209e+02 -1.0329539e+03 3.2723556e+03 - -9.2677725e+02 -1.0363040e+03 3.2693989e+03 - -9.3290245e+02 -1.0384344e+03 3.2666346e+03 - -9.3924492e+02 -1.0394391e+03 3.2640730e+03 - -9.4576946e+02 -1.0394078e+03 3.2617242e+03 - -9.5243832e+02 -1.0384263e+03 3.2595971e+03 - -9.5921127e+02 -1.0365767e+03 3.2577000e+03 - -9.6604555e+02 -1.0339382e+03 3.2560404e+03 - -9.7289588e+02 -1.0305870e+03 3.2546248e+03 - -9.7971451e+02 -1.0265967e+03 3.2534587e+03 - -9.8645121e+02 -1.0220383e+03 3.2525469e+03 - -9.9305335e+02 -1.0169808e+03 3.2518930e+03 - -9.9946589e+02 -1.0114904e+03 3.2514996e+03 - -1.0056315e+03 -1.0056315e+03 3.2513683e+03 - -1.0114904e+03 -9.9946589e+02 3.2514996e+03 - -1.0169808e+03 -9.9305335e+02 3.2518930e+03 - -1.0220383e+03 -9.8645121e+02 3.2525469e+03 - -1.0265967e+03 -9.7971451e+02 3.2534587e+03 - -1.0305870e+03 -9.7289588e+02 3.2546248e+03 - -1.0339382e+03 -9.6604555e+02 3.2560404e+03 - -1.0365767e+03 -9.5921127e+02 3.2577000e+03 - -1.0384263e+03 -9.5243832e+02 3.2595971e+03 - -1.0394078e+03 -9.4576946e+02 3.2617242e+03 - -1.0394391e+03 -9.3924492e+02 3.2640730e+03 - -1.0384344e+03 -9.3290245e+02 3.2666346e+03 - -1.0363040e+03 -9.2677725e+02 3.2693989e+03 - -1.0329539e+03 -9.2090209e+02 3.2723556e+03 - -1.0282849e+03 -9.1530723e+02 3.2754933e+03 - -1.0221920e+03 -9.1002052e+02 3.2788001e+03 - -1.0145637e+03 -9.0506739e+02 3.2822635e+03 - -1.0052812e+03 -9.0047082e+02 3.2858703e+03 - -9.9421721e+02 -8.9625138e+02 3.2896065e+03 - -9.8123537e+02 -8.9242707e+02 3.2934575e+03 - -9.6618921e+02 -8.8901328e+02 3.2974079e+03 - -9.4892143e+02 -8.8602258e+02 3.3014414e+03 - -9.2926340e+02 -8.8346439e+02 3.3055407e+03 - -9.0703502e+02 -8.8134468e+02 3.3096873e+03 - -8.8204523e+02 -8.7966539e+02 3.3138612e+03 - -8.5409335e+02 -8.7842383e+02 3.3180409e+03 - -8.2297163e+02 -8.7761188e+02 3.3222029e+03 - -7.8846948e+02 -8.7721508e+02 3.3263215e+03 - -7.5037967e+02 -8.7721161e+02 3.3303685e+03 - -7.0850709e+02 -8.7757132e+02 3.3343130e+03 - -6.6268044e+02 -8.7825471e+02 3.3381209e+03 - -6.1276694e+02 -8.7921230e+02 3.3417552e+03 - -5.5869003e+02 -8.8038442e+02 3.3451760e+03 - -5.0044928e+02 -8.8170168e+02 3.3483410e+03 - -4.3814106e+02 -8.8308650e+02 3.3512063e+03 - -3.7197782e+02 -8.8445580e+02 3.3537274e+03 - -3.0230284e+02 -8.8572492e+02 3.3558614e+03 - -2.2959722e+02 -8.8681274e+02 3.3575685e+03 - -1.5447586e+02 -8.8764749e+02 3.3588147e+03 - -7.7670540e+01 -8.8817260e+02 3.3595735e+03 - 0.0000000e+00 -8.8835181e+02 3.3598283e+03 - 7.7670540e+01 -8.8817260e+02 3.3595735e+03 - 1.5447586e+02 -8.8764749e+02 3.3588147e+03 - 2.2959722e+02 -8.8681274e+02 3.3575685e+03 - 3.0230284e+02 -8.8572492e+02 3.3558614e+03 - 3.7197782e+02 -8.8445580e+02 3.3537274e+03 - 4.3814106e+02 -8.8308650e+02 3.3512063e+03 - 5.0044928e+02 -8.8170168e+02 3.3483410e+03 - 5.5869003e+02 -8.8038442e+02 3.3451760e+03 - 6.1276694e+02 -8.7921230e+02 3.3417552e+03 - 6.6268044e+02 -8.7825471e+02 3.3381209e+03 - 7.0850709e+02 -8.7757132e+02 3.3343130e+03 - 7.5037967e+02 -8.7721161e+02 3.3303685e+03 - 7.8846948e+02 -8.7721508e+02 3.3263215e+03 - 8.2297163e+02 -8.7761188e+02 3.3222029e+03 - 8.5409335e+02 -8.7842383e+02 3.3180409e+03 - 8.8204523e+02 -8.7966539e+02 3.3138612e+03 - 9.0703502e+02 -8.8134468e+02 3.3096873e+03 - 9.2926340e+02 -8.8346439e+02 3.3055407e+03 - 9.4892143e+02 -8.8602258e+02 3.3014414e+03 - 9.6618921e+02 -8.8901328e+02 3.2974079e+03 - 9.8123537e+02 -8.9242707e+02 3.2934575e+03 - 9.9421721e+02 -8.9625138e+02 3.2896065e+03 - 1.0052812e+03 -9.0047082e+02 3.2858703e+03 - 1.0145637e+03 -9.0506739e+02 3.2822635e+03 - 1.0221920e+03 -9.1002052e+02 3.2788001e+03 - 1.0282849e+03 -9.1530723e+02 3.2754933e+03 - 1.0329539e+03 -9.2090209e+02 3.2723556e+03 - 1.0363040e+03 -9.2677725e+02 3.2693989e+03 - 1.0384344e+03 -9.3290245e+02 3.2666346e+03 - 1.0394391e+03 -9.3924492e+02 3.2640730e+03 - 1.0394078e+03 -9.4576946e+02 3.2617242e+03 - 1.0384263e+03 -9.5243832e+02 3.2595971e+03 - 1.0365767e+03 -9.5921127e+02 3.2577000e+03 - 1.0339382e+03 -9.6604555e+02 3.2560404e+03 - 1.0305870e+03 -9.7289588e+02 3.2546248e+03 - 1.0265967e+03 -9.7971451e+02 3.2534587e+03 - 1.0220383e+03 -9.8645121e+02 3.2525469e+03 - 1.0169808e+03 -9.9305335e+02 3.2518930e+03 - 1.0114904e+03 -9.9946589e+02 3.2514996e+03 - 1.0056315e+03 -1.0056315e+03 3.2513683e+03 - 9.9946589e+02 -1.0114904e+03 3.2514996e+03 - 9.9305335e+02 -1.0169808e+03 3.2518930e+03 - 9.8645121e+02 -1.0220383e+03 3.2525469e+03 - 9.7971451e+02 -1.0265967e+03 3.2534587e+03 - 9.7289588e+02 -1.0305870e+03 3.2546248e+03 - 9.6604555e+02 -1.0339382e+03 3.2560404e+03 - 9.5921127e+02 -1.0365767e+03 3.2577000e+03 - 9.5243832e+02 -1.0384263e+03 3.2595971e+03 - 9.4576946e+02 -1.0394078e+03 3.2617242e+03 - 9.3924492e+02 -1.0394391e+03 3.2640730e+03 - 9.3290245e+02 -1.0384344e+03 3.2666346e+03 - 9.2677725e+02 -1.0363040e+03 3.2693989e+03 - 9.2090209e+02 -1.0329539e+03 3.2723556e+03 - 9.1530723e+02 -1.0282849e+03 3.2754933e+03 - 9.1002052e+02 -1.0221920e+03 3.2788001e+03 - 9.0506739e+02 -1.0145637e+03 3.2822635e+03 - 9.0047082e+02 -1.0052812e+03 3.2858703e+03 - 8.9625138e+02 -9.9421721e+02 3.2896065e+03 - 8.9242707e+02 -9.8123537e+02 3.2934575e+03 - 8.8901328e+02 -9.6618921e+02 3.2974079e+03 - 8.8602258e+02 -9.4892143e+02 3.3014414e+03 - 8.8346439e+02 -9.2926340e+02 3.3055407e+03 - 8.8134468e+02 -9.0703502e+02 3.3096873e+03 - 8.7966539e+02 -8.8204523e+02 3.3138612e+03 - 8.7842383e+02 -8.5409335e+02 3.3180409e+03 - 8.7761188e+02 -8.2297163e+02 3.3222029e+03 - 8.7721508e+02 -7.8846948e+02 3.3263215e+03 - 8.7721161e+02 -7.5037967e+02 3.3303685e+03 - 8.7757132e+02 -7.0850709e+02 3.3343130e+03 - 8.7825471e+02 -6.6268044e+02 3.3381209e+03 - 8.7921230e+02 -6.1276694e+02 3.3417552e+03 - 8.8038442e+02 -5.5869003e+02 3.3451760e+03 - 8.8170168e+02 -5.0044928e+02 3.3483410e+03 - 8.8308650e+02 -4.3814106e+02 3.3512063e+03 - 8.8445580e+02 -3.7197782e+02 3.3537274e+03 - 8.8572492e+02 -3.0230284e+02 3.3558614e+03 - 8.8681274e+02 -2.2959722e+02 3.3575685e+03 - 8.8764749e+02 -1.5447586e+02 3.3588147e+03 - 8.8817260e+02 -7.7670540e+01 3.3595735e+03 - 8.8835181e+02 0.0000000e+00 3.3598283e+03 - 9.3094519e+02 -2.4067136e-09 3.3406965e+03 - 9.3075825e+02 8.1703437e+01 3.3404132e+03 - 9.3021045e+02 1.6247176e+02 3.3395702e+03 - 9.2933946e+02 2.4142206e+02 3.3381871e+03 - 9.2820393e+02 3.1776891e+02 3.3362947e+03 - 9.2687810e+02 3.9085725e+02 3.3339329e+03 - 9.2544560e+02 4.6018036e+02 3.3311479e+03 - 9.2399340e+02 5.2538311e+02 3.3279893e+03 - 9.2260656e+02 5.8625292e+02 3.3245076e+03 - 9.2136425e+02 6.4270226e+02 3.3207526e+03 - 9.2033711e+02 6.9474653e+02 3.3167718e+03 - 9.1958580e+02 7.4248076e+02 3.3126092e+03 - 9.1916068e+02 7.8605765e+02 3.3083056e+03 - 9.1910205e+02 8.2566829e+02 3.3038978e+03 - 9.1944098e+02 8.6152644e+02 3.2994191e+03 - 9.2020026e+02 8.9385625e+02 3.2948995e+03 - 9.2139548e+02 9.2288329e+02 3.2903663e+03 - 9.2303602e+02 9.4882822e+02 3.2858441e+03 - 9.2512595e+02 9.7190279e+02 3.2813554e+03 - 9.2766478e+02 9.9230744e+02 3.2769211e+03 - 9.3064807e+02 1.0102302e+03 3.2725604e+03 - 9.3406787e+02 1.0258464e+03 3.2682914e+03 - 9.3791307e+02 1.0393192e+03 3.2641312e+03 - 9.4216963e+02 1.0507999e+03 3.2600959e+03 - 9.4682073e+02 1.0604295e+03 3.2562009e+03 - 9.5184683e+02 1.0683391e+03 3.2524608e+03 - 9.5722572e+02 1.0746514e+03 3.2488898e+03 - 9.6293252e+02 1.0794814e+03 3.2455012e+03 - 9.6893960e+02 1.0829377e+03 3.2423078e+03 - 9.7521664e+02 1.0851227e+03 3.2393216e+03 - 9.8173048e+02 1.0861342e+03 3.2365541e+03 - 9.8844518e+02 1.0860653e+03 3.2340159e+03 - 9.9532191e+02 1.0850054e+03 3.2317170e+03 - 1.0023190e+03 1.0830405e+03 3.2296663e+03 - 1.0093920e+03 1.0802534e+03 3.2278720e+03 - 1.0164934e+03 1.0767242e+03 3.2263412e+03 - 1.0235732e+03 1.0725305e+03 3.2250801e+03 - 1.0305783e+03 1.0677474e+03 3.2240939e+03 - 1.0374532e+03 1.0624475e+03 3.2233866e+03 - 1.0441396e+03 1.0567013e+03 3.2229610e+03 - 1.0505767e+03 1.0505767e+03 3.2228189e+03 - 1.0567013e+03 1.0441396e+03 3.2229610e+03 - 1.0624475e+03 1.0374532e+03 3.2233866e+03 - 1.0677474e+03 1.0305783e+03 3.2240939e+03 - 1.0725305e+03 1.0235732e+03 3.2250801e+03 - 1.0767242e+03 1.0164934e+03 3.2263412e+03 - 1.0802534e+03 1.0093920e+03 3.2278720e+03 - 1.0830405e+03 1.0023190e+03 3.2296663e+03 - 1.0850054e+03 9.9532191e+02 3.2317170e+03 - 1.0860653e+03 9.8844518e+02 3.2340159e+03 - 1.0861342e+03 9.8173048e+02 3.2365541e+03 - 1.0851227e+03 9.7521664e+02 3.2393216e+03 - 1.0829377e+03 9.6893960e+02 3.2423078e+03 - 1.0794814e+03 9.6293252e+02 3.2455012e+03 - 1.0746514e+03 9.5722572e+02 3.2488898e+03 - 1.0683391e+03 9.5184683e+02 3.2524608e+03 - 1.0604295e+03 9.4682073e+02 3.2562009e+03 - 1.0507999e+03 9.4216963e+02 3.2600959e+03 - 1.0393192e+03 9.3791307e+02 3.2641312e+03 - 1.0258464e+03 9.3406787e+02 3.2682914e+03 - 1.0102302e+03 9.3064807e+02 3.2725604e+03 - 9.9230744e+02 9.2766478e+02 3.2769211e+03 - 9.7190279e+02 9.2512595e+02 3.2813554e+03 - 9.4882822e+02 9.2303602e+02 3.2858441e+03 - 9.2288329e+02 9.2139548e+02 3.2903663e+03 - 8.9385625e+02 9.2020026e+02 3.2948995e+03 - 8.6152644e+02 9.1944098e+02 3.2994191e+03 - 8.2566829e+02 9.1910205e+02 3.3038978e+03 - 7.8605765e+02 9.1916068e+02 3.3083056e+03 - 7.4248076e+02 9.1958580e+02 3.3126092e+03 - 6.9474653e+02 9.2033711e+02 3.3167718e+03 - 6.4270226e+02 9.2136425e+02 3.3207526e+03 - 5.8625292e+02 9.2260656e+02 3.3245076e+03 - 5.2538311e+02 9.2399340e+02 3.3279893e+03 - 4.6018036e+02 9.2544560e+02 3.3311479e+03 - 3.9085725e+02 9.2687810e+02 3.3339329e+03 - 3.1776891e+02 9.2820393e+02 3.3362947e+03 - 2.4142206e+02 9.2933946e+02 3.3381871e+03 - 1.6247176e+02 9.3021045e+02 3.3395702e+03 - 8.1703437e+01 9.3075825e+02 3.3404132e+03 - 0.0000000e+00 9.3094519e+02 3.3406965e+03 - -8.1703437e+01 9.3075825e+02 3.3404132e+03 - -1.6247176e+02 9.3021045e+02 3.3395702e+03 - -2.4142206e+02 9.2933946e+02 3.3381871e+03 - -3.1776891e+02 9.2820393e+02 3.3362947e+03 - -3.9085725e+02 9.2687810e+02 3.3339329e+03 - -4.6018036e+02 9.2544560e+02 3.3311479e+03 - -5.2538311e+02 9.2399340e+02 3.3279893e+03 - -5.8625292e+02 9.2260656e+02 3.3245076e+03 - -6.4270226e+02 9.2136425e+02 3.3207526e+03 - -6.9474653e+02 9.2033711e+02 3.3167718e+03 - -7.4248076e+02 9.1958580e+02 3.3126092e+03 - -7.8605765e+02 9.1916068e+02 3.3083056e+03 - -8.2566829e+02 9.1910205e+02 3.3038978e+03 - -8.6152644e+02 9.1944098e+02 3.2994191e+03 - -8.9385625e+02 9.2020026e+02 3.2948995e+03 - -9.2288329e+02 9.2139548e+02 3.2903663e+03 - -9.4882822e+02 9.2303602e+02 3.2858441e+03 - -9.7190279e+02 9.2512595e+02 3.2813554e+03 - -9.9230744e+02 9.2766478e+02 3.2769211e+03 - -1.0102302e+03 9.3064807e+02 3.2725604e+03 - -1.0258464e+03 9.3406787e+02 3.2682914e+03 - -1.0393192e+03 9.3791307e+02 3.2641312e+03 - -1.0507999e+03 9.4216963e+02 3.2600959e+03 - -1.0604295e+03 9.4682073e+02 3.2562009e+03 - -1.0683391e+03 9.5184683e+02 3.2524608e+03 - -1.0746514e+03 9.5722572e+02 3.2488898e+03 - -1.0794814e+03 9.6293252e+02 3.2455012e+03 - -1.0829377e+03 9.6893960e+02 3.2423078e+03 - -1.0851227e+03 9.7521664e+02 3.2393216e+03 - -1.0861342e+03 9.8173048e+02 3.2365541e+03 - -1.0860653e+03 9.8844518e+02 3.2340159e+03 - -1.0850054e+03 9.9532191e+02 3.2317170e+03 - -1.0830405e+03 1.0023190e+03 3.2296663e+03 - -1.0802534e+03 1.0093920e+03 3.2278720e+03 - -1.0767242e+03 1.0164934e+03 3.2263412e+03 - -1.0725305e+03 1.0235732e+03 3.2250801e+03 - -1.0677474e+03 1.0305783e+03 3.2240939e+03 - -1.0624475e+03 1.0374532e+03 3.2233866e+03 - -1.0567013e+03 1.0441396e+03 3.2229610e+03 - -1.0505767e+03 1.0505767e+03 3.2228189e+03 - -1.0441396e+03 1.0567013e+03 3.2229610e+03 - -1.0374532e+03 1.0624475e+03 3.2233866e+03 - -1.0305783e+03 1.0677474e+03 3.2240939e+03 - -1.0235732e+03 1.0725305e+03 3.2250801e+03 - -1.0164934e+03 1.0767242e+03 3.2263412e+03 - -1.0093920e+03 1.0802534e+03 3.2278720e+03 - -1.0023190e+03 1.0830405e+03 3.2296663e+03 - -9.9532191e+02 1.0850054e+03 3.2317170e+03 - -9.8844518e+02 1.0860653e+03 3.2340159e+03 - -9.8173048e+02 1.0861342e+03 3.2365541e+03 - -9.7521664e+02 1.0851227e+03 3.2393216e+03 - -9.6893960e+02 1.0829377e+03 3.2423078e+03 - -9.6293252e+02 1.0794814e+03 3.2455012e+03 - -9.5722572e+02 1.0746514e+03 3.2488898e+03 - -9.5184683e+02 1.0683391e+03 3.2524608e+03 - -9.4682073e+02 1.0604295e+03 3.2562009e+03 - -9.4216963e+02 1.0507999e+03 3.2600959e+03 - -9.3791307e+02 1.0393192e+03 3.2641312e+03 - -9.3406787e+02 1.0258464e+03 3.2682914e+03 - -9.3064807e+02 1.0102302e+03 3.2725604e+03 - -9.2766478e+02 9.9230744e+02 3.2769211e+03 - -9.2512595e+02 9.7190279e+02 3.2813554e+03 - -9.2303602e+02 9.4882822e+02 3.2858441e+03 - -9.2139548e+02 9.2288329e+02 3.2903663e+03 - -9.2020026e+02 8.9385625e+02 3.2948995e+03 - -9.1944098e+02 8.6152644e+02 3.2994191e+03 - -9.1910205e+02 8.2566829e+02 3.3038978e+03 - -9.1916068e+02 7.8605765e+02 3.3083056e+03 - -9.1958580e+02 7.4248076e+02 3.3126092e+03 - -9.2033711e+02 6.9474653e+02 3.3167718e+03 - -9.2136425e+02 6.4270226e+02 3.3207526e+03 - -9.2260656e+02 5.8625292e+02 3.3245076e+03 - -9.2399340e+02 5.2538311e+02 3.3279893e+03 - -9.2544560e+02 4.6018036e+02 3.3311479e+03 - -9.2687810e+02 3.9085725e+02 3.3339329e+03 - -9.2820393e+02 3.1776891e+02 3.3362947e+03 - -9.2933946e+02 2.4142206e+02 3.3381871e+03 - -9.3021045e+02 1.6247176e+02 3.3395702e+03 - -9.3075825e+02 8.1703437e+01 3.3404132e+03 - -9.3094519e+02 2.4067136e-09 3.3406965e+03 - -9.3075825e+02 -8.1703437e+01 3.3404132e+03 - -9.3021045e+02 -1.6247176e+02 3.3395702e+03 - -9.2933946e+02 -2.4142206e+02 3.3381871e+03 - -9.2820393e+02 -3.1776891e+02 3.3362947e+03 - -9.2687810e+02 -3.9085725e+02 3.3339329e+03 - -9.2544560e+02 -4.6018036e+02 3.3311479e+03 - -9.2399340e+02 -5.2538311e+02 3.3279893e+03 - -9.2260656e+02 -5.8625292e+02 3.3245076e+03 - -9.2136425e+02 -6.4270226e+02 3.3207526e+03 - -9.2033711e+02 -6.9474653e+02 3.3167718e+03 - -9.1958580e+02 -7.4248076e+02 3.3126092e+03 - -9.1916068e+02 -7.8605765e+02 3.3083056e+03 - -9.1910205e+02 -8.2566829e+02 3.3038978e+03 - -9.1944098e+02 -8.6152644e+02 3.2994191e+03 - -9.2020026e+02 -8.9385625e+02 3.2948995e+03 - -9.2139548e+02 -9.2288329e+02 3.2903663e+03 - -9.2303602e+02 -9.4882822e+02 3.2858441e+03 - -9.2512595e+02 -9.7190279e+02 3.2813554e+03 - -9.2766478e+02 -9.9230744e+02 3.2769211e+03 - -9.3064807e+02 -1.0102302e+03 3.2725604e+03 - -9.3406787e+02 -1.0258464e+03 3.2682914e+03 - -9.3791307e+02 -1.0393192e+03 3.2641312e+03 - -9.4216963e+02 -1.0507999e+03 3.2600959e+03 - -9.4682073e+02 -1.0604295e+03 3.2562009e+03 - -9.5184683e+02 -1.0683391e+03 3.2524608e+03 - -9.5722572e+02 -1.0746514e+03 3.2488898e+03 - -9.6293252e+02 -1.0794814e+03 3.2455012e+03 - -9.6893960e+02 -1.0829377e+03 3.2423078e+03 - -9.7521664e+02 -1.0851227e+03 3.2393216e+03 - -9.8173048e+02 -1.0861342e+03 3.2365541e+03 - -9.8844518e+02 -1.0860653e+03 3.2340159e+03 - -9.9532191e+02 -1.0850054e+03 3.2317170e+03 - -1.0023190e+03 -1.0830405e+03 3.2296663e+03 - -1.0093920e+03 -1.0802534e+03 3.2278720e+03 - -1.0164934e+03 -1.0767242e+03 3.2263412e+03 - -1.0235732e+03 -1.0725305e+03 3.2250801e+03 - -1.0305783e+03 -1.0677474e+03 3.2240939e+03 - -1.0374532e+03 -1.0624475e+03 3.2233866e+03 - -1.0441396e+03 -1.0567013e+03 3.2229610e+03 - -1.0505767e+03 -1.0505767e+03 3.2228189e+03 - -1.0567013e+03 -1.0441396e+03 3.2229610e+03 - -1.0624475e+03 -1.0374532e+03 3.2233866e+03 - -1.0677474e+03 -1.0305783e+03 3.2240939e+03 - -1.0725305e+03 -1.0235732e+03 3.2250801e+03 - -1.0767242e+03 -1.0164934e+03 3.2263412e+03 - -1.0802534e+03 -1.0093920e+03 3.2278720e+03 - -1.0830405e+03 -1.0023190e+03 3.2296663e+03 - -1.0850054e+03 -9.9532191e+02 3.2317170e+03 - -1.0860653e+03 -9.8844518e+02 3.2340159e+03 - -1.0861342e+03 -9.8173048e+02 3.2365541e+03 - -1.0851227e+03 -9.7521664e+02 3.2393216e+03 - -1.0829377e+03 -9.6893960e+02 3.2423078e+03 - -1.0794814e+03 -9.6293252e+02 3.2455012e+03 - -1.0746514e+03 -9.5722572e+02 3.2488898e+03 - -1.0683391e+03 -9.5184683e+02 3.2524608e+03 - -1.0604295e+03 -9.4682073e+02 3.2562009e+03 - -1.0507999e+03 -9.4216963e+02 3.2600959e+03 - -1.0393192e+03 -9.3791307e+02 3.2641312e+03 - -1.0258464e+03 -9.3406787e+02 3.2682914e+03 - -1.0102302e+03 -9.3064807e+02 3.2725604e+03 - -9.9230744e+02 -9.2766478e+02 3.2769211e+03 - -9.7190279e+02 -9.2512595e+02 3.2813554e+03 - -9.4882822e+02 -9.2303602e+02 3.2858441e+03 - -9.2288329e+02 -9.2139548e+02 3.2903663e+03 - -8.9385625e+02 -9.2020026e+02 3.2948995e+03 - -8.6152644e+02 -9.1944098e+02 3.2994191e+03 - -8.2566829e+02 -9.1910205e+02 3.3038978e+03 - -7.8605765e+02 -9.1916068e+02 3.3083056e+03 - -7.4248076e+02 -9.1958580e+02 3.3126092e+03 - -6.9474653e+02 -9.2033711e+02 3.3167718e+03 - -6.4270226e+02 -9.2136425e+02 3.3207526e+03 - -5.8625292e+02 -9.2260656e+02 3.3245076e+03 - -5.2538311e+02 -9.2399340e+02 3.3279893e+03 - -4.6018036e+02 -9.2544560e+02 3.3311479e+03 - -3.9085725e+02 -9.2687810e+02 3.3339329e+03 - -3.1776891e+02 -9.2820393e+02 3.3362947e+03 - -2.4142206e+02 -9.2933946e+02 3.3381871e+03 - -1.6247176e+02 -9.3021045e+02 3.3395702e+03 - -8.1703437e+01 -9.3075825e+02 3.3404132e+03 - 0.0000000e+00 -9.3094519e+02 3.3406965e+03 - 8.1703437e+01 -9.3075825e+02 3.3404132e+03 - 1.6247176e+02 -9.3021045e+02 3.3395702e+03 - 2.4142206e+02 -9.2933946e+02 3.3381871e+03 - 3.1776891e+02 -9.2820393e+02 3.3362947e+03 - 3.9085725e+02 -9.2687810e+02 3.3339329e+03 - 4.6018036e+02 -9.2544560e+02 3.3311479e+03 - 5.2538311e+02 -9.2399340e+02 3.3279893e+03 - 5.8625292e+02 -9.2260656e+02 3.3245076e+03 - 6.4270226e+02 -9.2136425e+02 3.3207526e+03 - 6.9474653e+02 -9.2033711e+02 3.3167718e+03 - 7.4248076e+02 -9.1958580e+02 3.3126092e+03 - 7.8605765e+02 -9.1916068e+02 3.3083056e+03 - 8.2566829e+02 -9.1910205e+02 3.3038978e+03 - 8.6152644e+02 -9.1944098e+02 3.2994191e+03 - 8.9385625e+02 -9.2020026e+02 3.2948995e+03 - 9.2288329e+02 -9.2139548e+02 3.2903663e+03 - 9.4882822e+02 -9.2303602e+02 3.2858441e+03 - 9.7190279e+02 -9.2512595e+02 3.2813554e+03 - 9.9230744e+02 -9.2766478e+02 3.2769211e+03 - 1.0102302e+03 -9.3064807e+02 3.2725604e+03 - 1.0258464e+03 -9.3406787e+02 3.2682914e+03 - 1.0393192e+03 -9.3791307e+02 3.2641312e+03 - 1.0507999e+03 -9.4216963e+02 3.2600959e+03 - 1.0604295e+03 -9.4682073e+02 3.2562009e+03 - 1.0683391e+03 -9.5184683e+02 3.2524608e+03 - 1.0746514e+03 -9.5722572e+02 3.2488898e+03 - 1.0794814e+03 -9.6293252e+02 3.2455012e+03 - 1.0829377e+03 -9.6893960e+02 3.2423078e+03 - 1.0851227e+03 -9.7521664e+02 3.2393216e+03 - 1.0861342e+03 -9.8173048e+02 3.2365541e+03 - 1.0860653e+03 -9.8844518e+02 3.2340159e+03 - 1.0850054e+03 -9.9532191e+02 3.2317170e+03 - 1.0830405e+03 -1.0023190e+03 3.2296663e+03 - 1.0802534e+03 -1.0093920e+03 3.2278720e+03 - 1.0767242e+03 -1.0164934e+03 3.2263412e+03 - 1.0725305e+03 -1.0235732e+03 3.2250801e+03 - 1.0677474e+03 -1.0305783e+03 3.2240939e+03 - 1.0624475e+03 -1.0374532e+03 3.2233866e+03 - 1.0567013e+03 -1.0441396e+03 3.2229610e+03 - 1.0505767e+03 -1.0505767e+03 3.2228189e+03 - 1.0441396e+03 -1.0567013e+03 3.2229610e+03 - 1.0374532e+03 -1.0624475e+03 3.2233866e+03 - 1.0305783e+03 -1.0677474e+03 3.2240939e+03 - 1.0235732e+03 -1.0725305e+03 3.2250801e+03 - 1.0164934e+03 -1.0767242e+03 3.2263412e+03 - 1.0093920e+03 -1.0802534e+03 3.2278720e+03 - 1.0023190e+03 -1.0830405e+03 3.2296663e+03 - 9.9532191e+02 -1.0850054e+03 3.2317170e+03 - 9.8844518e+02 -1.0860653e+03 3.2340159e+03 - 9.8173048e+02 -1.0861342e+03 3.2365541e+03 - 9.7521664e+02 -1.0851227e+03 3.2393216e+03 - 9.6893960e+02 -1.0829377e+03 3.2423078e+03 - 9.6293252e+02 -1.0794814e+03 3.2455012e+03 - 9.5722572e+02 -1.0746514e+03 3.2488898e+03 - 9.5184683e+02 -1.0683391e+03 3.2524608e+03 - 9.4682073e+02 -1.0604295e+03 3.2562009e+03 - 9.4216963e+02 -1.0507999e+03 3.2600959e+03 - 9.3791307e+02 -1.0393192e+03 3.2641312e+03 - 9.3406787e+02 -1.0258464e+03 3.2682914e+03 - 9.3064807e+02 -1.0102302e+03 3.2725604e+03 - 9.2766478e+02 -9.9230744e+02 3.2769211e+03 - 9.2512595e+02 -9.7190279e+02 3.2813554e+03 - 9.2303602e+02 -9.4882822e+02 3.2858441e+03 - 9.2139548e+02 -9.2288329e+02 3.2903663e+03 - 9.2020026e+02 -8.9385625e+02 3.2948995e+03 - 9.1944098e+02 -8.6152644e+02 3.2994191e+03 - 9.1910205e+02 -8.2566829e+02 3.3038978e+03 - 9.1916068e+02 -7.8605765e+02 3.3083056e+03 - 9.1958580e+02 -7.4248076e+02 3.3126092e+03 - 9.2033711e+02 -6.9474653e+02 3.3167718e+03 - 9.2136425e+02 -6.4270226e+02 3.3207526e+03 - 9.2260656e+02 -5.8625292e+02 3.3245076e+03 - 9.2399340e+02 -5.2538311e+02 3.3279893e+03 - 9.2544560e+02 -4.6018036e+02 3.3311479e+03 - 9.2687810e+02 -3.9085725e+02 3.3339329e+03 - 9.2820393e+02 -3.1776891e+02 3.3362947e+03 - 9.2933946e+02 -2.4142206e+02 3.3381871e+03 - 9.3021045e+02 -1.6247176e+02 3.3395702e+03 - 9.3075825e+02 -8.1703437e+01 3.3404132e+03 - 9.3094519e+02 -2.4067136e-09 3.3406965e+03 - 9.7355836e+02 0.0000000e+00 3.3205411e+03 - 9.7336432e+02 8.5798218e+01 3.3202271e+03 - 9.7279565e+02 1.7058541e+02 3.3192929e+03 - 9.7189127e+02 2.5340939e+02 3.3177618e+03 - 9.7071166e+02 3.3342747e+02 3.3156700e+03 - 9.6933314e+02 4.0994270e+02 3.3130642e+03 - 9.6784141e+02 4.8242283e+02 3.3099978e+03 - 9.6632526e+02 5.5050245e+02 3.3065279e+03 - 9.6487125e+02 6.1397141e+02 3.3027122e+03 - 9.6355965e+02 6.7275409e+02 3.2986068e+03 - 9.6246196e+02 7.2688397e+02 3.2942647e+03 - 9.6163955e+02 7.7647745e+02 3.2897345e+03 - 9.6114340e+02 8.2170956e+02 3.2850606e+03 - 9.6101457e+02 8.6279310e+02 3.2802826e+03 - 9.6128499e+02 8.9996188e+02 3.2754361e+03 - 9.6197854e+02 9.3345792e+02 3.2705528e+03 - 9.6311209e+02 9.6352227e+02 3.2656611e+03 - 9.6469650e+02 9.9038879e+02 3.2607868e+03 - 9.6673748e+02 1.0142803e+03 3.2559531e+03 - 9.6923630e+02 1.0354064e+03 3.2511815e+03 - 9.7219032e+02 1.0539627e+03 3.2464920e+03 - 9.7559342e+02 1.0701310e+03 3.2419031e+03 - 9.7943624e+02 1.0840797e+03 3.2374326e+03 - 9.8370641e+02 1.0959649e+03 3.2330971e+03 - 9.8838860e+02 1.1059315e+03 3.2289129e+03 - 9.9346457e+02 1.1141142e+03 3.2248952e+03 - 9.9891315e+02 1.1206392e+03 3.2210590e+03 - 1.0047102e+03 1.1256247e+03 3.2174183e+03 - 1.0108286e+03 1.1291824e+03 3.2139868e+03 - 1.0172381e+03 1.1314183e+03 3.2107775e+03 - 1.0239054e+03 1.1324332e+03 3.2078027e+03 - 1.0307937e+03 1.1323239e+03 3.2050737e+03 - 1.0378634e+03 1.1311832e+03 3.2026015e+03 - 1.0450714e+03 1.1291007e+03 3.2003957e+03 - 1.0523714e+03 1.1261632e+03 3.1984653e+03 - 1.0597140e+03 1.1224547e+03 3.1968182e+03 - 1.0670464e+03 1.1180566e+03 3.1954611e+03 - 1.0743131e+03 1.1130482e+03 3.1943996e+03 - 1.0814553e+03 1.1075063e+03 3.1936382e+03 - 1.0884114e+03 1.1015052e+03 3.1931801e+03 - 1.0951170e+03 1.0951170e+03 3.1930272e+03 - 1.1015052e+03 1.0884114e+03 3.1931801e+03 - 1.1075063e+03 1.0814553e+03 3.1936382e+03 - 1.1130482e+03 1.0743131e+03 3.1943996e+03 - 1.1180566e+03 1.0670464e+03 3.1954611e+03 - 1.1224547e+03 1.0597140e+03 3.1968182e+03 - 1.1261632e+03 1.0523714e+03 3.1984653e+03 - 1.1291007e+03 1.0450714e+03 3.2003957e+03 - 1.1311832e+03 1.0378634e+03 3.2026015e+03 - 1.1323239e+03 1.0307937e+03 3.2050737e+03 - 1.1324332e+03 1.0239054e+03 3.2078027e+03 - 1.1314183e+03 1.0172381e+03 3.2107775e+03 - 1.1291824e+03 1.0108286e+03 3.2139868e+03 - 1.1256247e+03 1.0047102e+03 3.2174183e+03 - 1.1206392e+03 9.9891315e+02 3.2210590e+03 - 1.1141142e+03 9.9346457e+02 3.2248952e+03 - 1.1059315e+03 9.8838860e+02 3.2289129e+03 - 1.0959649e+03 9.8370641e+02 3.2330971e+03 - 1.0840797e+03 9.7943624e+02 3.2374326e+03 - 1.0701310e+03 9.7559342e+02 3.2419031e+03 - 1.0539627e+03 9.7219032e+02 3.2464920e+03 - 1.0354064e+03 9.6923630e+02 3.2511815e+03 - 1.0142803e+03 9.6673748e+02 3.2559531e+03 - 9.9038879e+02 9.6469650e+02 3.2607868e+03 - 9.6352227e+02 9.6311209e+02 3.2656611e+03 - 9.3345792e+02 9.6197854e+02 3.2705528e+03 - 8.9996188e+02 9.6128499e+02 3.2754361e+03 - 8.6279310e+02 9.6101457e+02 3.2802826e+03 - 8.2170956e+02 9.6114340e+02 3.2850606e+03 - 7.7647745e+02 9.6163955e+02 3.2897345e+03 - 7.2688397e+02 9.6246196e+02 3.2942647e+03 - 6.7275409e+02 9.6355965e+02 3.2986068e+03 - 6.1397141e+02 9.6487125e+02 3.3027122e+03 - 5.5050245e+02 9.6632526e+02 3.3065279e+03 - 4.8242283e+02 9.6784141e+02 3.3099978e+03 - 4.0994270e+02 9.6933314e+02 3.3130642e+03 - 3.3342747e+02 9.7071166e+02 3.3156700e+03 - 2.5340939e+02 9.7189127e+02 3.3177618e+03 - 1.7058541e+02 9.7279565e+02 3.3192929e+03 - 8.5798218e+01 9.7336432e+02 3.3202271e+03 - 0.0000000e+00 9.7355836e+02 3.3205411e+03 - -8.5798218e+01 9.7336432e+02 3.3202271e+03 - -1.7058541e+02 9.7279565e+02 3.3192929e+03 - -2.5340939e+02 9.7189127e+02 3.3177618e+03 - -3.3342747e+02 9.7071166e+02 3.3156700e+03 - -4.0994270e+02 9.6933314e+02 3.3130642e+03 - -4.8242283e+02 9.6784141e+02 3.3099978e+03 - -5.5050245e+02 9.6632526e+02 3.3065279e+03 - -6.1397141e+02 9.6487125e+02 3.3027122e+03 - -6.7275409e+02 9.6355965e+02 3.2986068e+03 - -7.2688397e+02 9.6246196e+02 3.2942647e+03 - -7.7647745e+02 9.6163955e+02 3.2897345e+03 - -8.2170956e+02 9.6114340e+02 3.2850606e+03 - -8.6279310e+02 9.6101457e+02 3.2802826e+03 - -8.9996188e+02 9.6128499e+02 3.2754361e+03 - -9.3345792e+02 9.6197854e+02 3.2705528e+03 - -9.6352227e+02 9.6311209e+02 3.2656611e+03 - -9.9038879e+02 9.6469650e+02 3.2607868e+03 - -1.0142803e+03 9.6673748e+02 3.2559531e+03 - -1.0354064e+03 9.6923630e+02 3.2511815e+03 - -1.0539627e+03 9.7219032e+02 3.2464920e+03 - -1.0701310e+03 9.7559342e+02 3.2419031e+03 - -1.0840797e+03 9.7943624e+02 3.2374326e+03 - -1.0959649e+03 9.8370641e+02 3.2330971e+03 - -1.1059315e+03 9.8838860e+02 3.2289129e+03 - -1.1141142e+03 9.9346457e+02 3.2248952e+03 - -1.1206392e+03 9.9891315e+02 3.2210590e+03 - -1.1256247e+03 1.0047102e+03 3.2174183e+03 - -1.1291824e+03 1.0108286e+03 3.2139868e+03 - -1.1314183e+03 1.0172381e+03 3.2107775e+03 - -1.1324332e+03 1.0239054e+03 3.2078027e+03 - -1.1323239e+03 1.0307937e+03 3.2050737e+03 - -1.1311832e+03 1.0378634e+03 3.2026015e+03 - -1.1291007e+03 1.0450714e+03 3.2003957e+03 - -1.1261632e+03 1.0523714e+03 3.1984653e+03 - -1.1224547e+03 1.0597140e+03 3.1968182e+03 - -1.1180566e+03 1.0670464e+03 3.1954611e+03 - -1.1130482e+03 1.0743131e+03 3.1943996e+03 - -1.1075063e+03 1.0814553e+03 3.1936382e+03 - -1.1015052e+03 1.0884114e+03 3.1931801e+03 - -1.0951170e+03 1.0951170e+03 3.1930272e+03 - -1.0884114e+03 1.1015052e+03 3.1931801e+03 - -1.0814553e+03 1.1075063e+03 3.1936382e+03 - -1.0743131e+03 1.1130482e+03 3.1943996e+03 - -1.0670464e+03 1.1180566e+03 3.1954611e+03 - -1.0597140e+03 1.1224547e+03 3.1968182e+03 - -1.0523714e+03 1.1261632e+03 3.1984653e+03 - -1.0450714e+03 1.1291007e+03 3.2003957e+03 - -1.0378634e+03 1.1311832e+03 3.2026015e+03 - -1.0307937e+03 1.1323239e+03 3.2050737e+03 - -1.0239054e+03 1.1324332e+03 3.2078027e+03 - -1.0172381e+03 1.1314183e+03 3.2107775e+03 - -1.0108286e+03 1.1291824e+03 3.2139868e+03 - -1.0047102e+03 1.1256247e+03 3.2174183e+03 - -9.9891315e+02 1.1206392e+03 3.2210590e+03 - -9.9346457e+02 1.1141142e+03 3.2248952e+03 - -9.8838860e+02 1.1059315e+03 3.2289129e+03 - -9.8370641e+02 1.0959649e+03 3.2330971e+03 - -9.7943624e+02 1.0840797e+03 3.2374326e+03 - -9.7559342e+02 1.0701310e+03 3.2419031e+03 - -9.7219032e+02 1.0539627e+03 3.2464920e+03 - -9.6923630e+02 1.0354064e+03 3.2511815e+03 - -9.6673748e+02 1.0142803e+03 3.2559531e+03 - -9.6469650e+02 9.9038879e+02 3.2607868e+03 - -9.6311209e+02 9.6352227e+02 3.2656611e+03 - -9.6197854e+02 9.3345792e+02 3.2705528e+03 - -9.6128499e+02 8.9996188e+02 3.2754361e+03 - -9.6101457e+02 8.6279310e+02 3.2802826e+03 - -9.6114340e+02 8.2170956e+02 3.2850606e+03 - -9.6163955e+02 7.7647745e+02 3.2897345e+03 - -9.6246196e+02 7.2688397e+02 3.2942647e+03 - -9.6355965e+02 6.7275409e+02 3.2986068e+03 - -9.6487125e+02 6.1397141e+02 3.3027122e+03 - -9.6632526e+02 5.5050245e+02 3.3065279e+03 - -9.6784141e+02 4.8242283e+02 3.3099978e+03 - -9.6933314e+02 4.0994270e+02 3.3130642e+03 - -9.7071166e+02 3.3342747e+02 3.3156700e+03 - -9.7189127e+02 2.5340939e+02 3.3177618e+03 - -9.7279565e+02 1.7058541e+02 3.3192929e+03 - -9.7336432e+02 8.5798218e+01 3.3202271e+03 - -9.7355836e+02 0.0000000e+00 3.3205411e+03 - -9.7336432e+02 -8.5798218e+01 3.3202271e+03 - -9.7279565e+02 -1.7058541e+02 3.3192929e+03 - -9.7189127e+02 -2.5340939e+02 3.3177618e+03 - -9.7071166e+02 -3.3342747e+02 3.3156700e+03 - -9.6933314e+02 -4.0994270e+02 3.3130642e+03 - -9.6784141e+02 -4.8242283e+02 3.3099978e+03 - -9.6632526e+02 -5.5050245e+02 3.3065279e+03 - -9.6487125e+02 -6.1397141e+02 3.3027122e+03 - -9.6355965e+02 -6.7275409e+02 3.2986068e+03 - -9.6246196e+02 -7.2688397e+02 3.2942647e+03 - -9.6163955e+02 -7.7647745e+02 3.2897345e+03 - -9.6114340e+02 -8.2170956e+02 3.2850606e+03 - -9.6101457e+02 -8.6279310e+02 3.2802826e+03 - -9.6128499e+02 -8.9996188e+02 3.2754361e+03 - -9.6197854e+02 -9.3345792e+02 3.2705528e+03 - -9.6311209e+02 -9.6352227e+02 3.2656611e+03 - -9.6469650e+02 -9.9038879e+02 3.2607868e+03 - -9.6673748e+02 -1.0142803e+03 3.2559531e+03 - -9.6923630e+02 -1.0354064e+03 3.2511815e+03 - -9.7219032e+02 -1.0539627e+03 3.2464920e+03 - -9.7559342e+02 -1.0701310e+03 3.2419031e+03 - -9.7943624e+02 -1.0840797e+03 3.2374326e+03 - -9.8370641e+02 -1.0959649e+03 3.2330971e+03 - -9.8838860e+02 -1.1059315e+03 3.2289129e+03 - -9.9346457e+02 -1.1141142e+03 3.2248952e+03 - -9.9891315e+02 -1.1206392e+03 3.2210590e+03 - -1.0047102e+03 -1.1256247e+03 3.2174183e+03 - -1.0108286e+03 -1.1291824e+03 3.2139868e+03 - -1.0172381e+03 -1.1314183e+03 3.2107775e+03 - -1.0239054e+03 -1.1324332e+03 3.2078027e+03 - -1.0307937e+03 -1.1323239e+03 3.2050737e+03 - -1.0378634e+03 -1.1311832e+03 3.2026015e+03 - -1.0450714e+03 -1.1291007e+03 3.2003957e+03 - -1.0523714e+03 -1.1261632e+03 3.1984653e+03 - -1.0597140e+03 -1.1224547e+03 3.1968182e+03 - -1.0670464e+03 -1.1180566e+03 3.1954611e+03 - -1.0743131e+03 -1.1130482e+03 3.1943996e+03 - -1.0814553e+03 -1.1075063e+03 3.1936382e+03 - -1.0884114e+03 -1.1015052e+03 3.1931801e+03 - -1.0951170e+03 -1.0951170e+03 3.1930272e+03 - -1.1015052e+03 -1.0884114e+03 3.1931801e+03 - -1.1075063e+03 -1.0814553e+03 3.1936382e+03 - -1.1130482e+03 -1.0743131e+03 3.1943996e+03 - -1.1180566e+03 -1.0670464e+03 3.1954611e+03 - -1.1224547e+03 -1.0597140e+03 3.1968182e+03 - -1.1261632e+03 -1.0523714e+03 3.1984653e+03 - -1.1291007e+03 -1.0450714e+03 3.2003957e+03 - -1.1311832e+03 -1.0378634e+03 3.2026015e+03 - -1.1323239e+03 -1.0307937e+03 3.2050737e+03 - -1.1324332e+03 -1.0239054e+03 3.2078027e+03 - -1.1314183e+03 -1.0172381e+03 3.2107775e+03 - -1.1291824e+03 -1.0108286e+03 3.2139868e+03 - -1.1256247e+03 -1.0047102e+03 3.2174183e+03 - -1.1206392e+03 -9.9891315e+02 3.2210590e+03 - -1.1141142e+03 -9.9346457e+02 3.2248952e+03 - -1.1059315e+03 -9.8838860e+02 3.2289129e+03 - -1.0959649e+03 -9.8370641e+02 3.2330971e+03 - -1.0840797e+03 -9.7943624e+02 3.2374326e+03 - -1.0701310e+03 -9.7559342e+02 3.2419031e+03 - -1.0539627e+03 -9.7219032e+02 3.2464920e+03 - -1.0354064e+03 -9.6923630e+02 3.2511815e+03 - -1.0142803e+03 -9.6673748e+02 3.2559531e+03 - -9.9038879e+02 -9.6469650e+02 3.2607868e+03 - -9.6352227e+02 -9.6311209e+02 3.2656611e+03 - -9.3345792e+02 -9.6197854e+02 3.2705528e+03 - -8.9996188e+02 -9.6128499e+02 3.2754361e+03 - -8.6279310e+02 -9.6101457e+02 3.2802826e+03 - -8.2170956e+02 -9.6114340e+02 3.2850606e+03 - -7.7647745e+02 -9.6163955e+02 3.2897345e+03 - -7.2688397e+02 -9.6246196e+02 3.2942647e+03 - -6.7275409e+02 -9.6355965e+02 3.2986068e+03 - -6.1397141e+02 -9.6487125e+02 3.3027122e+03 - -5.5050245e+02 -9.6632526e+02 3.3065279e+03 - -4.8242283e+02 -9.6784141e+02 3.3099978e+03 - -4.0994270e+02 -9.6933314e+02 3.3130642e+03 - -3.3342747e+02 -9.7071166e+02 3.3156700e+03 - -2.5340939e+02 -9.7189127e+02 3.3177618e+03 - -1.7058541e+02 -9.7279565e+02 3.3192929e+03 - -8.5798218e+01 -9.7336432e+02 3.3202271e+03 - 0.0000000e+00 -9.7355836e+02 3.3205411e+03 - 8.5798218e+01 -9.7336432e+02 3.3202271e+03 - 1.7058541e+02 -9.7279565e+02 3.3192929e+03 - 2.5340939e+02 -9.7189127e+02 3.3177618e+03 - 3.3342747e+02 -9.7071166e+02 3.3156700e+03 - 4.0994270e+02 -9.6933314e+02 3.3130642e+03 - 4.8242283e+02 -9.6784141e+02 3.3099978e+03 - 5.5050245e+02 -9.6632526e+02 3.3065279e+03 - 6.1397141e+02 -9.6487125e+02 3.3027122e+03 - 6.7275409e+02 -9.6355965e+02 3.2986068e+03 - 7.2688397e+02 -9.6246196e+02 3.2942647e+03 - 7.7647745e+02 -9.6163955e+02 3.2897345e+03 - 8.2170956e+02 -9.6114340e+02 3.2850606e+03 - 8.6279310e+02 -9.6101457e+02 3.2802826e+03 - 8.9996188e+02 -9.6128499e+02 3.2754361e+03 - 9.3345792e+02 -9.6197854e+02 3.2705528e+03 - 9.6352227e+02 -9.6311209e+02 3.2656611e+03 - 9.9038879e+02 -9.6469650e+02 3.2607868e+03 - 1.0142803e+03 -9.6673748e+02 3.2559531e+03 - 1.0354064e+03 -9.6923630e+02 3.2511815e+03 - 1.0539627e+03 -9.7219032e+02 3.2464920e+03 - 1.0701310e+03 -9.7559342e+02 3.2419031e+03 - 1.0840797e+03 -9.7943624e+02 3.2374326e+03 - 1.0959649e+03 -9.8370641e+02 3.2330971e+03 - 1.1059315e+03 -9.8838860e+02 3.2289129e+03 - 1.1141142e+03 -9.9346457e+02 3.2248952e+03 - 1.1206392e+03 -9.9891315e+02 3.2210590e+03 - 1.1256247e+03 -1.0047102e+03 3.2174183e+03 - 1.1291824e+03 -1.0108286e+03 3.2139868e+03 - 1.1314183e+03 -1.0172381e+03 3.2107775e+03 - 1.1324332e+03 -1.0239054e+03 3.2078027e+03 - 1.1323239e+03 -1.0307937e+03 3.2050737e+03 - 1.1311832e+03 -1.0378634e+03 3.2026015e+03 - 1.1291007e+03 -1.0450714e+03 3.2003957e+03 - 1.1261632e+03 -1.0523714e+03 3.1984653e+03 - 1.1224547e+03 -1.0597140e+03 3.1968182e+03 - 1.1180566e+03 -1.0670464e+03 3.1954611e+03 - 1.1130482e+03 -1.0743131e+03 3.1943996e+03 - 1.1075063e+03 -1.0814553e+03 3.1936382e+03 - 1.1015052e+03 -1.0884114e+03 3.1931801e+03 - 1.0951170e+03 -1.0951170e+03 3.1930272e+03 - 1.0884114e+03 -1.1015052e+03 3.1931801e+03 - 1.0814553e+03 -1.1075063e+03 3.1936382e+03 - 1.0743131e+03 -1.1130482e+03 3.1943996e+03 - 1.0670464e+03 -1.1180566e+03 3.1954611e+03 - 1.0597140e+03 -1.1224547e+03 3.1968182e+03 - 1.0523714e+03 -1.1261632e+03 3.1984653e+03 - 1.0450714e+03 -1.1291007e+03 3.2003957e+03 - 1.0378634e+03 -1.1311832e+03 3.2026015e+03 - 1.0307937e+03 -1.1323239e+03 3.2050737e+03 - 1.0239054e+03 -1.1324332e+03 3.2078027e+03 - 1.0172381e+03 -1.1314183e+03 3.2107775e+03 - 1.0108286e+03 -1.1291824e+03 3.2139868e+03 - 1.0047102e+03 -1.1256247e+03 3.2174183e+03 - 9.9891315e+02 -1.1206392e+03 3.2210590e+03 - 9.9346457e+02 -1.1141142e+03 3.2248952e+03 - 9.8838860e+02 -1.1059315e+03 3.2289129e+03 - 9.8370641e+02 -1.0959649e+03 3.2330971e+03 - 9.7943624e+02 -1.0840797e+03 3.2374326e+03 - 9.7559342e+02 -1.0701310e+03 3.2419031e+03 - 9.7219032e+02 -1.0539627e+03 3.2464920e+03 - 9.6923630e+02 -1.0354064e+03 3.2511815e+03 - 9.6673748e+02 -1.0142803e+03 3.2559531e+03 - 9.6469650e+02 -9.9038879e+02 3.2607868e+03 - 9.6311209e+02 -9.6352227e+02 3.2656611e+03 - 9.6197854e+02 -9.3345792e+02 3.2705528e+03 - 9.6128499e+02 -8.9996188e+02 3.2754361e+03 - 9.6101457e+02 -8.6279310e+02 3.2802826e+03 - 9.6114340e+02 -8.2170956e+02 3.2850606e+03 - 9.6163955e+02 -7.7647745e+02 3.2897345e+03 - 9.6246196e+02 -7.2688397e+02 3.2942647e+03 - 9.6355965e+02 -6.7275409e+02 3.2986068e+03 - 9.6487125e+02 -6.1397141e+02 3.3027122e+03 - 9.6632526e+02 -5.5050245e+02 3.3065279e+03 - 9.6784141e+02 -4.8242283e+02 3.3099978e+03 - 9.6933314e+02 -4.0994270e+02 3.3130642e+03 - 9.7071166e+02 -3.3342747e+02 3.3156700e+03 - 9.7189127e+02 -2.5340939e+02 3.3177618e+03 - 9.7279565e+02 -1.7058541e+02 3.3192929e+03 - 9.7336432e+02 -8.5798218e+01 3.3202271e+03 - 9.7355836e+02 2.4067136e-09 3.3205411e+03 - 1.0161872e+03 -2.4067136e-09 3.2993443e+03 - 1.0159869e+03 8.9962575e+01 3.2989968e+03 - 1.0153998e+03 1.7883125e+02 3.2979637e+03 - 1.0144659e+03 2.6557864e+02 3.2962724e+03 - 1.0132470e+03 3.4930074e+02 3.2939656e+03 - 1.0118211e+03 4.2925689e+02 3.2910977e+03 - 1.0102755e+03 5.0488959e+02 3.2877309e+03 - 1.0087001e+03 5.7582514e+02 3.2839308e+03 - 1.0071824e+03 6.4185893e+02 3.2797630e+03 - 1.0058033e+03 7.0293083e+02 3.2752907e+03 - 1.0046346e+03 7.5909598e+02 3.2705727e+03 - 1.0037382e+03 8.1049535e+02 3.2656626e+03 - 1.0031653e+03 8.5732900e+02 3.2606082e+03 - 1.0029578e+03 8.9983348e+02 3.2554520e+03 - 1.0031485e+03 9.3826414e+02 3.2502317e+03 - 1.0037625e+03 9.7288179e+02 3.2449803e+03 - 1.0048181e+03 1.0039435e+03 3.2397274e+03 - 1.0063279e+03 1.0316964e+03 3.2344993e+03 - 1.0082995e+03 1.0563744e+03 3.2293199e+03 - 1.0107364e+03 1.0781960e+03 3.2242111e+03 - 1.0136379e+03 1.0973641e+03 3.2191931e+03 - 1.0170003e+03 1.1140665e+03 3.2142852e+03 - 1.0208161e+03 1.1284763e+03 3.2095052e+03 - 1.0250750e+03 1.1407539e+03 3.2048706e+03 - 1.0297636e+03 1.1510477e+03 3.2003980e+03 - 1.0348651e+03 1.1594957e+03 3.1961035e+03 - 1.0403598e+03 1.1662271e+03 3.1920025e+03 - 1.0462244e+03 1.1713631e+03 3.1881100e+03 - 1.0524325e+03 1.1750182e+03 3.1844406e+03 - 1.0589542e+03 1.1773016e+03 3.1810080e+03 - 1.0657560e+03 1.1783171e+03 3.1778254e+03 - 1.0728008e+03 1.1781648e+03 3.1749052e+03 - 1.0800480e+03 1.1769411e+03 3.1722591e+03 - 1.0874530e+03 1.1747393e+03 3.1698976e+03 - 1.0949680e+03 1.1716498e+03 3.1678304e+03 - 1.1025412e+03 1.1677606e+03 3.1660662e+03 - 1.1101177e+03 1.1631574e+03 3.1646124e+03 - 1.1176387e+03 1.1579235e+03 3.1634751e+03 - 1.1250425e+03 1.1521397e+03 3.1626592e+03 - 1.1322640e+03 1.1458849e+03 3.1621683e+03 - 1.1392351e+03 1.1392351e+03 3.1620044e+03 - 1.1458849e+03 1.1322640e+03 3.1621683e+03 - 1.1521397e+03 1.1250425e+03 3.1626592e+03 - 1.1579235e+03 1.1176387e+03 3.1634751e+03 - 1.1631574e+03 1.1101177e+03 3.1646124e+03 - 1.1677606e+03 1.1025412e+03 3.1660662e+03 - 1.1716498e+03 1.0949680e+03 3.1678304e+03 - 1.1747393e+03 1.0874530e+03 3.1698976e+03 - 1.1769411e+03 1.0800480e+03 3.1722591e+03 - 1.1781648e+03 1.0728008e+03 3.1749052e+03 - 1.1783171e+03 1.0657560e+03 3.1778254e+03 - 1.1773016e+03 1.0589542e+03 3.1810080e+03 - 1.1750182e+03 1.0524325e+03 3.1844406e+03 - 1.1713631e+03 1.0462244e+03 3.1881100e+03 - 1.1662271e+03 1.0403598e+03 3.1920025e+03 - 1.1594957e+03 1.0348651e+03 3.1961035e+03 - 1.1510477e+03 1.0297636e+03 3.2003980e+03 - 1.1407539e+03 1.0250750e+03 3.2048706e+03 - 1.1284763e+03 1.0208161e+03 3.2095052e+03 - 1.1140665e+03 1.0170003e+03 3.2142852e+03 - 1.0973641e+03 1.0136379e+03 3.2191931e+03 - 1.0781960e+03 1.0107364e+03 3.2242111e+03 - 1.0563744e+03 1.0082995e+03 3.2293199e+03 - 1.0316964e+03 1.0063279e+03 3.2344993e+03 - 1.0039435e+03 1.0048181e+03 3.2397274e+03 - 9.7288179e+02 1.0037625e+03 3.2449803e+03 - 9.3826414e+02 1.0031485e+03 3.2502317e+03 - 8.9983348e+02 1.0029578e+03 3.2554520e+03 - 8.5732900e+02 1.0031653e+03 3.2606082e+03 - 8.1049535e+02 1.0037382e+03 3.2656626e+03 - 7.5909598e+02 1.0046346e+03 3.2705727e+03 - 7.0293083e+02 1.0058033e+03 3.2752907e+03 - 6.4185893e+02 1.0071824e+03 3.2797630e+03 - 5.7582514e+02 1.0087001e+03 3.2839308e+03 - 5.0488959e+02 1.0102755e+03 3.2877309e+03 - 4.2925689e+02 1.0118211e+03 3.2910977e+03 - 3.4930074e+02 1.0132470e+03 3.2939656e+03 - 2.6557864e+02 1.0144659e+03 3.2962724e+03 - 1.7883125e+02 1.0153998e+03 3.2979637e+03 - 8.9962575e+01 1.0159869e+03 3.2989968e+03 - -2.4067136e-09 1.0161872e+03 3.2993443e+03 - -8.9962575e+01 1.0159869e+03 3.2989968e+03 - -1.7883125e+02 1.0153998e+03 3.2979637e+03 - -2.6557864e+02 1.0144659e+03 3.2962724e+03 - -3.4930074e+02 1.0132470e+03 3.2939656e+03 - -4.2925689e+02 1.0118211e+03 3.2910977e+03 - -5.0488959e+02 1.0102755e+03 3.2877309e+03 - -5.7582514e+02 1.0087001e+03 3.2839308e+03 - -6.4185893e+02 1.0071824e+03 3.2797630e+03 - -7.0293083e+02 1.0058033e+03 3.2752907e+03 - -7.5909598e+02 1.0046346e+03 3.2705727e+03 - -8.1049535e+02 1.0037382e+03 3.2656626e+03 - -8.5732900e+02 1.0031653e+03 3.2606082e+03 - -8.9983348e+02 1.0029578e+03 3.2554520e+03 - -9.3826414e+02 1.0031485e+03 3.2502317e+03 - -9.7288179e+02 1.0037625e+03 3.2449803e+03 - -1.0039435e+03 1.0048181e+03 3.2397274e+03 - -1.0316964e+03 1.0063279e+03 3.2344993e+03 - -1.0563744e+03 1.0082995e+03 3.2293199e+03 - -1.0781960e+03 1.0107364e+03 3.2242111e+03 - -1.0973641e+03 1.0136379e+03 3.2191931e+03 - -1.1140665e+03 1.0170003e+03 3.2142852e+03 - -1.1284763e+03 1.0208161e+03 3.2095052e+03 - -1.1407539e+03 1.0250750e+03 3.2048706e+03 - -1.1510477e+03 1.0297636e+03 3.2003980e+03 - -1.1594957e+03 1.0348651e+03 3.1961035e+03 - -1.1662271e+03 1.0403598e+03 3.1920025e+03 - -1.1713631e+03 1.0462244e+03 3.1881100e+03 - -1.1750182e+03 1.0524325e+03 3.1844406e+03 - -1.1773016e+03 1.0589542e+03 3.1810080e+03 - -1.1783171e+03 1.0657560e+03 3.1778254e+03 - -1.1781648e+03 1.0728008e+03 3.1749052e+03 - -1.1769411e+03 1.0800480e+03 3.1722591e+03 - -1.1747393e+03 1.0874530e+03 3.1698976e+03 - -1.1716498e+03 1.0949680e+03 3.1678304e+03 - -1.1677606e+03 1.1025412e+03 3.1660662e+03 - -1.1631574e+03 1.1101177e+03 3.1646124e+03 - -1.1579235e+03 1.1176387e+03 3.1634751e+03 - -1.1521397e+03 1.1250425e+03 3.1626592e+03 - -1.1458849e+03 1.1322640e+03 3.1621683e+03 - -1.1392351e+03 1.1392351e+03 3.1620044e+03 - -1.1322640e+03 1.1458849e+03 3.1621683e+03 - -1.1250425e+03 1.1521397e+03 3.1626592e+03 - -1.1176387e+03 1.1579235e+03 3.1634751e+03 - -1.1101177e+03 1.1631574e+03 3.1646124e+03 - -1.1025412e+03 1.1677606e+03 3.1660662e+03 - -1.0949680e+03 1.1716498e+03 3.1678304e+03 - -1.0874530e+03 1.1747393e+03 3.1698976e+03 - -1.0800480e+03 1.1769411e+03 3.1722591e+03 - -1.0728008e+03 1.1781648e+03 3.1749052e+03 - -1.0657560e+03 1.1783171e+03 3.1778254e+03 - -1.0589542e+03 1.1773016e+03 3.1810080e+03 - -1.0524325e+03 1.1750182e+03 3.1844406e+03 - -1.0462244e+03 1.1713631e+03 3.1881100e+03 - -1.0403598e+03 1.1662271e+03 3.1920025e+03 - -1.0348651e+03 1.1594957e+03 3.1961035e+03 - -1.0297636e+03 1.1510477e+03 3.2003980e+03 - -1.0250750e+03 1.1407539e+03 3.2048706e+03 - -1.0208161e+03 1.1284763e+03 3.2095052e+03 - -1.0170003e+03 1.1140665e+03 3.2142852e+03 - -1.0136379e+03 1.0973641e+03 3.2191931e+03 - -1.0107364e+03 1.0781960e+03 3.2242111e+03 - -1.0082995e+03 1.0563744e+03 3.2293199e+03 - -1.0063279e+03 1.0316964e+03 3.2344993e+03 - -1.0048181e+03 1.0039435e+03 3.2397274e+03 - -1.0037625e+03 9.7288179e+02 3.2449803e+03 - -1.0031485e+03 9.3826414e+02 3.2502317e+03 - -1.0029578e+03 8.9983348e+02 3.2554520e+03 - -1.0031653e+03 8.5732900e+02 3.2606082e+03 - -1.0037382e+03 8.1049535e+02 3.2656626e+03 - -1.0046346e+03 7.5909598e+02 3.2705727e+03 - -1.0058033e+03 7.0293083e+02 3.2752907e+03 - -1.0071824e+03 6.4185893e+02 3.2797630e+03 - -1.0087001e+03 5.7582514e+02 3.2839308e+03 - -1.0102755e+03 5.0488959e+02 3.2877309e+03 - -1.0118211e+03 4.2925689e+02 3.2910977e+03 - -1.0132470e+03 3.4930074e+02 3.2939656e+03 - -1.0144659e+03 2.6557864e+02 3.2962724e+03 - -1.0153998e+03 1.7883125e+02 3.2979637e+03 - -1.0159869e+03 8.9962575e+01 3.2989968e+03 - -1.0161872e+03 2.4067136e-09 3.2993443e+03 - -1.0159869e+03 -8.9962575e+01 3.2989968e+03 - -1.0153998e+03 -1.7883125e+02 3.2979637e+03 - -1.0144659e+03 -2.6557864e+02 3.2962724e+03 - -1.0132470e+03 -3.4930074e+02 3.2939656e+03 - -1.0118211e+03 -4.2925689e+02 3.2910977e+03 - -1.0102755e+03 -5.0488959e+02 3.2877309e+03 - -1.0087001e+03 -5.7582514e+02 3.2839308e+03 - -1.0071824e+03 -6.4185893e+02 3.2797630e+03 - -1.0058033e+03 -7.0293083e+02 3.2752907e+03 - -1.0046346e+03 -7.5909598e+02 3.2705727e+03 - -1.0037382e+03 -8.1049535e+02 3.2656626e+03 - -1.0031653e+03 -8.5732900e+02 3.2606082e+03 - -1.0029578e+03 -8.9983348e+02 3.2554520e+03 - -1.0031485e+03 -9.3826414e+02 3.2502317e+03 - -1.0037625e+03 -9.7288179e+02 3.2449803e+03 - -1.0048181e+03 -1.0039435e+03 3.2397274e+03 - -1.0063279e+03 -1.0316964e+03 3.2344993e+03 - -1.0082995e+03 -1.0563744e+03 3.2293199e+03 - -1.0107364e+03 -1.0781960e+03 3.2242111e+03 - -1.0136379e+03 -1.0973641e+03 3.2191931e+03 - -1.0170003e+03 -1.1140665e+03 3.2142852e+03 - -1.0208161e+03 -1.1284763e+03 3.2095052e+03 - -1.0250750e+03 -1.1407539e+03 3.2048706e+03 - -1.0297636e+03 -1.1510477e+03 3.2003980e+03 - -1.0348651e+03 -1.1594957e+03 3.1961035e+03 - -1.0403598e+03 -1.1662271e+03 3.1920025e+03 - -1.0462244e+03 -1.1713631e+03 3.1881100e+03 - -1.0524325e+03 -1.1750182e+03 3.1844406e+03 - -1.0589542e+03 -1.1773016e+03 3.1810080e+03 - -1.0657560e+03 -1.1783171e+03 3.1778254e+03 - -1.0728008e+03 -1.1781648e+03 3.1749052e+03 - -1.0800480e+03 -1.1769411e+03 3.1722591e+03 - -1.0874530e+03 -1.1747393e+03 3.1698976e+03 - -1.0949680e+03 -1.1716498e+03 3.1678304e+03 - -1.1025412e+03 -1.1677606e+03 3.1660662e+03 - -1.1101177e+03 -1.1631574e+03 3.1646124e+03 - -1.1176387e+03 -1.1579235e+03 3.1634751e+03 - -1.1250425e+03 -1.1521397e+03 3.1626592e+03 - -1.1322640e+03 -1.1458849e+03 3.1621683e+03 - -1.1392351e+03 -1.1392351e+03 3.1620044e+03 - -1.1458849e+03 -1.1322640e+03 3.1621683e+03 - -1.1521397e+03 -1.1250425e+03 3.1626592e+03 - -1.1579235e+03 -1.1176387e+03 3.1634751e+03 - -1.1631574e+03 -1.1101177e+03 3.1646124e+03 - -1.1677606e+03 -1.1025412e+03 3.1660662e+03 - -1.1716498e+03 -1.0949680e+03 3.1678304e+03 - -1.1747393e+03 -1.0874530e+03 3.1698976e+03 - -1.1769411e+03 -1.0800480e+03 3.1722591e+03 - -1.1781648e+03 -1.0728008e+03 3.1749052e+03 - -1.1783171e+03 -1.0657560e+03 3.1778254e+03 - -1.1773016e+03 -1.0589542e+03 3.1810080e+03 - -1.1750182e+03 -1.0524325e+03 3.1844406e+03 - -1.1713631e+03 -1.0462244e+03 3.1881100e+03 - -1.1662271e+03 -1.0403598e+03 3.1920025e+03 - -1.1594957e+03 -1.0348651e+03 3.1961035e+03 - -1.1510477e+03 -1.0297636e+03 3.2003980e+03 - -1.1407539e+03 -1.0250750e+03 3.2048706e+03 - -1.1284763e+03 -1.0208161e+03 3.2095052e+03 - -1.1140665e+03 -1.0170003e+03 3.2142852e+03 - -1.0973641e+03 -1.0136379e+03 3.2191931e+03 - -1.0781960e+03 -1.0107364e+03 3.2242111e+03 - -1.0563744e+03 -1.0082995e+03 3.2293199e+03 - -1.0316964e+03 -1.0063279e+03 3.2344993e+03 - -1.0039435e+03 -1.0048181e+03 3.2397274e+03 - -9.7288179e+02 -1.0037625e+03 3.2449803e+03 - -9.3826414e+02 -1.0031485e+03 3.2502317e+03 - -8.9983348e+02 -1.0029578e+03 3.2554520e+03 - -8.5732900e+02 -1.0031653e+03 3.2606082e+03 - -8.1049535e+02 -1.0037382e+03 3.2656626e+03 - -7.5909598e+02 -1.0046346e+03 3.2705727e+03 - -7.0293083e+02 -1.0058033e+03 3.2752907e+03 - -6.4185893e+02 -1.0071824e+03 3.2797630e+03 - -5.7582514e+02 -1.0087001e+03 3.2839308e+03 - -5.0488959e+02 -1.0102755e+03 3.2877309e+03 - -4.2925689e+02 -1.0118211e+03 3.2910977e+03 - -3.4930074e+02 -1.0132470e+03 3.2939656e+03 - -2.6557864e+02 -1.0144659e+03 3.2962724e+03 - -1.7883125e+02 -1.0153998e+03 3.2979637e+03 - -8.9962575e+01 -1.0159869e+03 3.2989968e+03 - 2.4067136e-09 -1.0161872e+03 3.2993443e+03 - 8.9962575e+01 -1.0159869e+03 3.2989968e+03 - 1.7883125e+02 -1.0153998e+03 3.2979637e+03 - 2.6557864e+02 -1.0144659e+03 3.2962724e+03 - 3.4930074e+02 -1.0132470e+03 3.2939656e+03 - 4.2925689e+02 -1.0118211e+03 3.2910977e+03 - 5.0488959e+02 -1.0102755e+03 3.2877309e+03 - 5.7582514e+02 -1.0087001e+03 3.2839308e+03 - 6.4185893e+02 -1.0071824e+03 3.2797630e+03 - 7.0293083e+02 -1.0058033e+03 3.2752907e+03 - 7.5909598e+02 -1.0046346e+03 3.2705727e+03 - 8.1049535e+02 -1.0037382e+03 3.2656626e+03 - 8.5732900e+02 -1.0031653e+03 3.2606082e+03 - 8.9983348e+02 -1.0029578e+03 3.2554520e+03 - 9.3826414e+02 -1.0031485e+03 3.2502317e+03 - 9.7288179e+02 -1.0037625e+03 3.2449803e+03 - 1.0039435e+03 -1.0048181e+03 3.2397274e+03 - 1.0316964e+03 -1.0063279e+03 3.2344993e+03 - 1.0563744e+03 -1.0082995e+03 3.2293199e+03 - 1.0781960e+03 -1.0107364e+03 3.2242111e+03 - 1.0973641e+03 -1.0136379e+03 3.2191931e+03 - 1.1140665e+03 -1.0170003e+03 3.2142852e+03 - 1.1284763e+03 -1.0208161e+03 3.2095052e+03 - 1.1407539e+03 -1.0250750e+03 3.2048706e+03 - 1.1510477e+03 -1.0297636e+03 3.2003980e+03 - 1.1594957e+03 -1.0348651e+03 3.1961035e+03 - 1.1662271e+03 -1.0403598e+03 3.1920025e+03 - 1.1713631e+03 -1.0462244e+03 3.1881100e+03 - 1.1750182e+03 -1.0524325e+03 3.1844406e+03 - 1.1773016e+03 -1.0589542e+03 3.1810080e+03 - 1.1783171e+03 -1.0657560e+03 3.1778254e+03 - 1.1781648e+03 -1.0728008e+03 3.1749052e+03 - 1.1769411e+03 -1.0800480e+03 3.1722591e+03 - 1.1747393e+03 -1.0874530e+03 3.1698976e+03 - 1.1716498e+03 -1.0949680e+03 3.1678304e+03 - 1.1677606e+03 -1.1025412e+03 3.1660662e+03 - 1.1631574e+03 -1.1101177e+03 3.1646124e+03 - 1.1579235e+03 -1.1176387e+03 3.1634751e+03 - 1.1521397e+03 -1.1250425e+03 3.1626592e+03 - 1.1458849e+03 -1.1322640e+03 3.1621683e+03 - 1.1392351e+03 -1.1392351e+03 3.1620044e+03 - 1.1322640e+03 -1.1458849e+03 3.1621683e+03 - 1.1250425e+03 -1.1521397e+03 3.1626592e+03 - 1.1176387e+03 -1.1579235e+03 3.1634751e+03 - 1.1101177e+03 -1.1631574e+03 3.1646124e+03 - 1.1025412e+03 -1.1677606e+03 3.1660662e+03 - 1.0949680e+03 -1.1716498e+03 3.1678304e+03 - 1.0874530e+03 -1.1747393e+03 3.1698976e+03 - 1.0800480e+03 -1.1769411e+03 3.1722591e+03 - 1.0728008e+03 -1.1781648e+03 3.1749052e+03 - 1.0657560e+03 -1.1783171e+03 3.1778254e+03 - 1.0589542e+03 -1.1773016e+03 3.1810080e+03 - 1.0524325e+03 -1.1750182e+03 3.1844406e+03 - 1.0462244e+03 -1.1713631e+03 3.1881100e+03 - 1.0403598e+03 -1.1662271e+03 3.1920025e+03 - 1.0348651e+03 -1.1594957e+03 3.1961035e+03 - 1.0297636e+03 -1.1510477e+03 3.2003980e+03 - 1.0250750e+03 -1.1407539e+03 3.2048706e+03 - 1.0208161e+03 -1.1284763e+03 3.2095052e+03 - 1.0170003e+03 -1.1140665e+03 3.2142852e+03 - 1.0136379e+03 -1.0973641e+03 3.2191931e+03 - 1.0107364e+03 -1.0781960e+03 3.2242111e+03 - 1.0082995e+03 -1.0563744e+03 3.2293199e+03 - 1.0063279e+03 -1.0316964e+03 3.2344993e+03 - 1.0048181e+03 -1.0039435e+03 3.2397274e+03 - 1.0037625e+03 -9.7288179e+02 3.2449803e+03 - 1.0031485e+03 -9.3826414e+02 3.2502317e+03 - 1.0029578e+03 -8.9983348e+02 3.2554520e+03 - 1.0031653e+03 -8.5732900e+02 3.2606082e+03 - 1.0037382e+03 -8.1049535e+02 3.2656626e+03 - 1.0046346e+03 -7.5909598e+02 3.2705727e+03 - 1.0058033e+03 -7.0293083e+02 3.2752907e+03 - 1.0071824e+03 -6.4185893e+02 3.2797630e+03 - 1.0087001e+03 -5.7582514e+02 3.2839308e+03 - 1.0102755e+03 -5.0488959e+02 3.2877309e+03 - 1.0118211e+03 -4.2925689e+02 3.2910977e+03 - 1.0132470e+03 -3.4930074e+02 3.2939656e+03 - 1.0144659e+03 -2.6557864e+02 3.2962724e+03 - 1.0153998e+03 -1.7883125e+02 3.2979637e+03 - 1.0159869e+03 -8.9962575e+01 3.2989968e+03 - 1.0161872e+03 -2.4067136e-09 3.2993443e+03 - 1.0588270e+03 2.4067136e-09 3.2770874e+03 - 1.0586215e+03 9.4205469e+01 3.2767034e+03 - 1.0580191e+03 1.8722603e+02 3.2755626e+03 - 1.0570606e+03 2.7795226e+02 3.2736973e+03 - 1.0558087e+03 3.6541428e+02 3.2711579e+03 - 1.0543425e+03 4.4882575e+02 3.2680082e+03 - 1.0527500e+03 5.2760452e+02 3.2643202e+03 - 1.0511216e+03 6.0137114e+02 3.2601694e+03 - 1.0495451e+03 6.6993026e+02 3.2556306e+03 - 1.0481012e+03 7.3324146e+02 3.2507745e+03 - 1.0468618e+03 7.9138563e+02 3.2456664e+03 - 1.0458887e+03 8.4453195e+02 3.2403646e+03 - 1.0452334e+03 8.9290841e+02 3.2349208e+03 - 1.0449385e+03 9.3677755e+02 3.2293801e+03 - 1.0450375e+03 9.7641773e+02 3.2237818e+03 - 1.0455571e+03 1.0121095e+03 3.2181602e+03 - 1.0465173e+03 1.0441264e+03 3.2125454e+03 - 1.0479328e+03 1.0727290e+03 3.2069643e+03 - 1.0498134e+03 1.0981620e+03 3.2014408e+03 - 1.0521649e+03 1.1206526e+03 3.1959971e+03 - 1.0549894e+03 1.1404105e+03 3.1906536e+03 - 1.0582854e+03 1.1576287e+03 3.1854296e+03 - 1.0620483e+03 1.1724851e+03 3.1803434e+03 - 1.0662698e+03 1.1851434e+03 3.1754126e+03 - 1.0709387e+03 1.1957552e+03 3.1706545e+03 - 1.0760402e+03 1.2044613e+03 3.1660856e+03 - 1.0815561e+03 1.2113934e+03 3.1617221e+03 - 1.0874644e+03 1.2166754e+03 3.1575797e+03 - 1.0937397e+03 1.2204246e+03 3.1536738e+03 - 1.1003524e+03 1.2227525e+03 3.1500191e+03 - 1.1072692e+03 1.2237664e+03 3.1466295e+03 - 1.1144525e+03 1.2235692e+03 3.1435186e+03 - 1.1218608e+03 1.2222608e+03 3.1406987e+03 - 1.1294486e+03 1.2199380e+03 3.1381815e+03 - 1.1371659e+03 1.2166953e+03 3.1359775e+03 - 1.1449592e+03 1.2126245e+03 3.1340960e+03 - 1.1527706e+03 1.2078155e+03 3.1325453e+03 - 1.1605386e+03 1.2023558e+03 3.1313319e+03 - 1.1681982e+03 1.1963307e+03 3.1304614e+03 - 1.1756806e+03 1.1898233e+03 3.1299375e+03 - 1.1829140e+03 1.1829140e+03 3.1297626e+03 - 1.1898233e+03 1.1756806e+03 3.1299375e+03 - 1.1963307e+03 1.1681982e+03 3.1304614e+03 - 1.2023558e+03 1.1605386e+03 3.1313319e+03 - 1.2078155e+03 1.1527706e+03 3.1325453e+03 - 1.2126245e+03 1.1449592e+03 3.1340960e+03 - 1.2166953e+03 1.1371659e+03 3.1359775e+03 - 1.2199380e+03 1.1294486e+03 3.1381815e+03 - 1.2222608e+03 1.1218608e+03 3.1406987e+03 - 1.2235692e+03 1.1144525e+03 3.1435186e+03 - 1.2237664e+03 1.1072692e+03 3.1466295e+03 - 1.2227525e+03 1.1003524e+03 3.1500191e+03 - 1.2204246e+03 1.0937397e+03 3.1536738e+03 - 1.2166754e+03 1.0874644e+03 3.1575797e+03 - 1.2113934e+03 1.0815561e+03 3.1617221e+03 - 1.2044613e+03 1.0760402e+03 3.1660856e+03 - 1.1957552e+03 1.0709387e+03 3.1706545e+03 - 1.1851434e+03 1.0662698e+03 3.1754126e+03 - 1.1724851e+03 1.0620483e+03 3.1803434e+03 - 1.1576287e+03 1.0582854e+03 3.1854296e+03 - 1.1404105e+03 1.0549894e+03 3.1906536e+03 - 1.1206526e+03 1.0521649e+03 3.1959971e+03 - 1.0981620e+03 1.0498134e+03 3.2014408e+03 - 1.0727290e+03 1.0479328e+03 3.2069643e+03 - 1.0441264e+03 1.0465173e+03 3.2125454e+03 - 1.0121095e+03 1.0455571e+03 3.2181602e+03 - 9.7641773e+02 1.0450375e+03 3.2237818e+03 - 9.3677755e+02 1.0449385e+03 3.2293801e+03 - 8.9290841e+02 1.0452334e+03 3.2349208e+03 - 8.4453195e+02 1.0458887e+03 3.2403646e+03 - 7.9138563e+02 1.0468618e+03 3.2456664e+03 - 7.3324146e+02 1.0481012e+03 3.2507745e+03 - 6.6993026e+02 1.0495451e+03 3.2556306e+03 - 6.0137114e+02 1.0511216e+03 3.2601694e+03 - 5.2760452e+02 1.0527500e+03 3.2643202e+03 - 4.4882575e+02 1.0543425e+03 3.2680082e+03 - 3.6541428e+02 1.0558087e+03 3.2711579e+03 - 2.7795226e+02 1.0570606e+03 3.2736973e+03 - 1.8722603e+02 1.0580191e+03 3.2755626e+03 - 9.4205469e+01 1.0586215e+03 3.2767034e+03 - -2.4067136e-09 1.0588270e+03 3.2770874e+03 - -9.4205469e+01 1.0586215e+03 3.2767034e+03 - -1.8722603e+02 1.0580191e+03 3.2755626e+03 - -2.7795226e+02 1.0570606e+03 3.2736973e+03 - -3.6541428e+02 1.0558087e+03 3.2711579e+03 - -4.4882575e+02 1.0543425e+03 3.2680082e+03 - -5.2760452e+02 1.0527500e+03 3.2643202e+03 - -6.0137114e+02 1.0511216e+03 3.2601694e+03 - -6.6993026e+02 1.0495451e+03 3.2556306e+03 - -7.3324146e+02 1.0481012e+03 3.2507745e+03 - -7.9138563e+02 1.0468618e+03 3.2456664e+03 - -8.4453195e+02 1.0458887e+03 3.2403646e+03 - -8.9290841e+02 1.0452334e+03 3.2349208e+03 - -9.3677755e+02 1.0449385e+03 3.2293801e+03 - -9.7641773e+02 1.0450375e+03 3.2237818e+03 - -1.0121095e+03 1.0455571e+03 3.2181602e+03 - -1.0441264e+03 1.0465173e+03 3.2125454e+03 - -1.0727290e+03 1.0479328e+03 3.2069643e+03 - -1.0981620e+03 1.0498134e+03 3.2014408e+03 - -1.1206526e+03 1.0521649e+03 3.1959971e+03 - -1.1404105e+03 1.0549894e+03 3.1906536e+03 - -1.1576287e+03 1.0582854e+03 3.1854296e+03 - -1.1724851e+03 1.0620483e+03 3.1803434e+03 - -1.1851434e+03 1.0662698e+03 3.1754126e+03 - -1.1957552e+03 1.0709387e+03 3.1706545e+03 - -1.2044613e+03 1.0760402e+03 3.1660856e+03 - -1.2113934e+03 1.0815561e+03 3.1617221e+03 - -1.2166754e+03 1.0874644e+03 3.1575797e+03 - -1.2204246e+03 1.0937397e+03 3.1536738e+03 - -1.2227525e+03 1.1003524e+03 3.1500191e+03 - -1.2237664e+03 1.1072692e+03 3.1466295e+03 - -1.2235692e+03 1.1144525e+03 3.1435186e+03 - -1.2222608e+03 1.1218608e+03 3.1406987e+03 - -1.2199380e+03 1.1294486e+03 3.1381815e+03 - -1.2166953e+03 1.1371659e+03 3.1359775e+03 - -1.2126245e+03 1.1449592e+03 3.1340960e+03 - -1.2078155e+03 1.1527706e+03 3.1325453e+03 - -1.2023558e+03 1.1605386e+03 3.1313319e+03 - -1.1963307e+03 1.1681982e+03 3.1304614e+03 - -1.1898233e+03 1.1756806e+03 3.1299375e+03 - -1.1829140e+03 1.1829140e+03 3.1297626e+03 - -1.1756806e+03 1.1898233e+03 3.1299375e+03 - -1.1681982e+03 1.1963307e+03 3.1304614e+03 - -1.1605386e+03 1.2023558e+03 3.1313319e+03 - -1.1527706e+03 1.2078155e+03 3.1325453e+03 - -1.1449592e+03 1.2126245e+03 3.1340960e+03 - -1.1371659e+03 1.2166953e+03 3.1359775e+03 - -1.1294486e+03 1.2199380e+03 3.1381815e+03 - -1.1218608e+03 1.2222608e+03 3.1406987e+03 - -1.1144525e+03 1.2235692e+03 3.1435186e+03 - -1.1072692e+03 1.2237664e+03 3.1466295e+03 - -1.1003524e+03 1.2227525e+03 3.1500191e+03 - -1.0937397e+03 1.2204246e+03 3.1536738e+03 - -1.0874644e+03 1.2166754e+03 3.1575797e+03 - -1.0815561e+03 1.2113934e+03 3.1617221e+03 - -1.0760402e+03 1.2044613e+03 3.1660856e+03 - -1.0709387e+03 1.1957552e+03 3.1706545e+03 - -1.0662698e+03 1.1851434e+03 3.1754126e+03 - -1.0620483e+03 1.1724851e+03 3.1803434e+03 - -1.0582854e+03 1.1576287e+03 3.1854296e+03 - -1.0549894e+03 1.1404105e+03 3.1906536e+03 - -1.0521649e+03 1.1206526e+03 3.1959971e+03 - -1.0498134e+03 1.0981620e+03 3.2014408e+03 - -1.0479328e+03 1.0727290e+03 3.2069643e+03 - -1.0465173e+03 1.0441264e+03 3.2125454e+03 - -1.0455571e+03 1.0121095e+03 3.2181602e+03 - -1.0450375e+03 9.7641773e+02 3.2237818e+03 - -1.0449385e+03 9.3677755e+02 3.2293801e+03 - -1.0452334e+03 8.9290841e+02 3.2349208e+03 - -1.0458887e+03 8.4453195e+02 3.2403646e+03 - -1.0468618e+03 7.9138563e+02 3.2456664e+03 - -1.0481012e+03 7.3324146e+02 3.2507745e+03 - -1.0495451e+03 6.6993026e+02 3.2556306e+03 - -1.0511216e+03 6.0137114e+02 3.2601694e+03 - -1.0527500e+03 5.2760452e+02 3.2643202e+03 - -1.0543425e+03 4.4882575e+02 3.2680082e+03 - -1.0558087e+03 3.6541428e+02 3.2711579e+03 - -1.0570606e+03 2.7795226e+02 3.2736973e+03 - -1.0580191e+03 1.8722603e+02 3.2755626e+03 - -1.0586215e+03 9.4205469e+01 3.2767034e+03 - -1.0588270e+03 2.4067136e-09 3.2770874e+03 - -1.0586215e+03 -9.4205469e+01 3.2767034e+03 - -1.0580191e+03 -1.8722603e+02 3.2755626e+03 - -1.0570606e+03 -2.7795226e+02 3.2736973e+03 - -1.0558087e+03 -3.6541428e+02 3.2711579e+03 - -1.0543425e+03 -4.4882575e+02 3.2680082e+03 - -1.0527500e+03 -5.2760452e+02 3.2643202e+03 - -1.0511216e+03 -6.0137114e+02 3.2601694e+03 - -1.0495451e+03 -6.6993026e+02 3.2556306e+03 - -1.0481012e+03 -7.3324146e+02 3.2507745e+03 - -1.0468618e+03 -7.9138563e+02 3.2456664e+03 - -1.0458887e+03 -8.4453195e+02 3.2403646e+03 - -1.0452334e+03 -8.9290841e+02 3.2349208e+03 - -1.0449385e+03 -9.3677755e+02 3.2293801e+03 - -1.0450375e+03 -9.7641773e+02 3.2237818e+03 - -1.0455571e+03 -1.0121095e+03 3.2181602e+03 - -1.0465173e+03 -1.0441264e+03 3.2125454e+03 - -1.0479328e+03 -1.0727290e+03 3.2069643e+03 - -1.0498134e+03 -1.0981620e+03 3.2014408e+03 - -1.0521649e+03 -1.1206526e+03 3.1959971e+03 - -1.0549894e+03 -1.1404105e+03 3.1906536e+03 - -1.0582854e+03 -1.1576287e+03 3.1854296e+03 - -1.0620483e+03 -1.1724851e+03 3.1803434e+03 - -1.0662698e+03 -1.1851434e+03 3.1754126e+03 - -1.0709387e+03 -1.1957552e+03 3.1706545e+03 - -1.0760402e+03 -1.2044613e+03 3.1660856e+03 - -1.0815561e+03 -1.2113934e+03 3.1617221e+03 - -1.0874644e+03 -1.2166754e+03 3.1575797e+03 - -1.0937397e+03 -1.2204246e+03 3.1536738e+03 - -1.1003524e+03 -1.2227525e+03 3.1500191e+03 - -1.1072692e+03 -1.2237664e+03 3.1466295e+03 - -1.1144525e+03 -1.2235692e+03 3.1435186e+03 - -1.1218608e+03 -1.2222608e+03 3.1406987e+03 - -1.1294486e+03 -1.2199380e+03 3.1381815e+03 - -1.1371659e+03 -1.2166953e+03 3.1359775e+03 - -1.1449592e+03 -1.2126245e+03 3.1340960e+03 - -1.1527706e+03 -1.2078155e+03 3.1325453e+03 - -1.1605386e+03 -1.2023558e+03 3.1313319e+03 - -1.1681982e+03 -1.1963307e+03 3.1304614e+03 - -1.1756806e+03 -1.1898233e+03 3.1299375e+03 - -1.1829140e+03 -1.1829140e+03 3.1297626e+03 - -1.1898233e+03 -1.1756806e+03 3.1299375e+03 - -1.1963307e+03 -1.1681982e+03 3.1304614e+03 - -1.2023558e+03 -1.1605386e+03 3.1313319e+03 - -1.2078155e+03 -1.1527706e+03 3.1325453e+03 - -1.2126245e+03 -1.1449592e+03 3.1340960e+03 - -1.2166953e+03 -1.1371659e+03 3.1359775e+03 - -1.2199380e+03 -1.1294486e+03 3.1381815e+03 - -1.2222608e+03 -1.1218608e+03 3.1406987e+03 - -1.2235692e+03 -1.1144525e+03 3.1435186e+03 - -1.2237664e+03 -1.1072692e+03 3.1466295e+03 - -1.2227525e+03 -1.1003524e+03 3.1500191e+03 - -1.2204246e+03 -1.0937397e+03 3.1536738e+03 - -1.2166754e+03 -1.0874644e+03 3.1575797e+03 - -1.2113934e+03 -1.0815561e+03 3.1617221e+03 - -1.2044613e+03 -1.0760402e+03 3.1660856e+03 - -1.1957552e+03 -1.0709387e+03 3.1706545e+03 - -1.1851434e+03 -1.0662698e+03 3.1754126e+03 - -1.1724851e+03 -1.0620483e+03 3.1803434e+03 - -1.1576287e+03 -1.0582854e+03 3.1854296e+03 - -1.1404105e+03 -1.0549894e+03 3.1906536e+03 - -1.1206526e+03 -1.0521649e+03 3.1959971e+03 - -1.0981620e+03 -1.0498134e+03 3.2014408e+03 - -1.0727290e+03 -1.0479328e+03 3.2069643e+03 - -1.0441264e+03 -1.0465173e+03 3.2125454e+03 - -1.0121095e+03 -1.0455571e+03 3.2181602e+03 - -9.7641773e+02 -1.0450375e+03 3.2237818e+03 - -9.3677755e+02 -1.0449385e+03 3.2293801e+03 - -8.9290841e+02 -1.0452334e+03 3.2349208e+03 - -8.4453195e+02 -1.0458887e+03 3.2403646e+03 - -7.9138563e+02 -1.0468618e+03 3.2456664e+03 - -7.3324146e+02 -1.0481012e+03 3.2507745e+03 - -6.6993026e+02 -1.0495451e+03 3.2556306e+03 - -6.0137114e+02 -1.0511216e+03 3.2601694e+03 - -5.2760452e+02 -1.0527500e+03 3.2643202e+03 - -4.4882575e+02 -1.0543425e+03 3.2680082e+03 - -3.6541428e+02 -1.0558087e+03 3.2711579e+03 - -2.7795226e+02 -1.0570606e+03 3.2736973e+03 - -1.8722603e+02 -1.0580191e+03 3.2755626e+03 - -9.4205469e+01 -1.0586215e+03 3.2767034e+03 - 0.0000000e+00 -1.0588270e+03 3.2770874e+03 - 9.4205469e+01 -1.0586215e+03 3.2767034e+03 - 1.8722603e+02 -1.0580191e+03 3.2755626e+03 - 2.7795226e+02 -1.0570606e+03 3.2736973e+03 - 3.6541428e+02 -1.0558087e+03 3.2711579e+03 - 4.4882575e+02 -1.0543425e+03 3.2680082e+03 - 5.2760452e+02 -1.0527500e+03 3.2643202e+03 - 6.0137114e+02 -1.0511216e+03 3.2601694e+03 - 6.6993026e+02 -1.0495451e+03 3.2556306e+03 - 7.3324146e+02 -1.0481012e+03 3.2507745e+03 - 7.9138563e+02 -1.0468618e+03 3.2456664e+03 - 8.4453195e+02 -1.0458887e+03 3.2403646e+03 - 8.9290841e+02 -1.0452334e+03 3.2349208e+03 - 9.3677755e+02 -1.0449385e+03 3.2293801e+03 - 9.7641773e+02 -1.0450375e+03 3.2237818e+03 - 1.0121095e+03 -1.0455571e+03 3.2181602e+03 - 1.0441264e+03 -1.0465173e+03 3.2125454e+03 - 1.0727290e+03 -1.0479328e+03 3.2069643e+03 - 1.0981620e+03 -1.0498134e+03 3.2014408e+03 - 1.1206526e+03 -1.0521649e+03 3.1959971e+03 - 1.1404105e+03 -1.0549894e+03 3.1906536e+03 - 1.1576287e+03 -1.0582854e+03 3.1854296e+03 - 1.1724851e+03 -1.0620483e+03 3.1803434e+03 - 1.1851434e+03 -1.0662698e+03 3.1754126e+03 - 1.1957552e+03 -1.0709387e+03 3.1706545e+03 - 1.2044613e+03 -1.0760402e+03 3.1660856e+03 - 1.2113934e+03 -1.0815561e+03 3.1617221e+03 - 1.2166754e+03 -1.0874644e+03 3.1575797e+03 - 1.2204246e+03 -1.0937397e+03 3.1536738e+03 - 1.2227525e+03 -1.1003524e+03 3.1500191e+03 - 1.2237664e+03 -1.1072692e+03 3.1466295e+03 - 1.2235692e+03 -1.1144525e+03 3.1435186e+03 - 1.2222608e+03 -1.1218608e+03 3.1406987e+03 - 1.2199380e+03 -1.1294486e+03 3.1381815e+03 - 1.2166953e+03 -1.1371659e+03 3.1359775e+03 - 1.2126245e+03 -1.1449592e+03 3.1340960e+03 - 1.2078155e+03 -1.1527706e+03 3.1325453e+03 - 1.2023558e+03 -1.1605386e+03 3.1313319e+03 - 1.1963307e+03 -1.1681982e+03 3.1304614e+03 - 1.1898233e+03 -1.1756806e+03 3.1299375e+03 - 1.1829140e+03 -1.1829140e+03 3.1297626e+03 - 1.1756806e+03 -1.1898233e+03 3.1299375e+03 - 1.1681982e+03 -1.1963307e+03 3.1304614e+03 - 1.1605386e+03 -1.2023558e+03 3.1313319e+03 - 1.1527706e+03 -1.2078155e+03 3.1325453e+03 - 1.1449592e+03 -1.2126245e+03 3.1340960e+03 - 1.1371659e+03 -1.2166953e+03 3.1359775e+03 - 1.1294486e+03 -1.2199380e+03 3.1381815e+03 - 1.1218608e+03 -1.2222608e+03 3.1406987e+03 - 1.1144525e+03 -1.2235692e+03 3.1435186e+03 - 1.1072692e+03 -1.2237664e+03 3.1466295e+03 - 1.1003524e+03 -1.2227525e+03 3.1500191e+03 - 1.0937397e+03 -1.2204246e+03 3.1536738e+03 - 1.0874644e+03 -1.2166754e+03 3.1575797e+03 - 1.0815561e+03 -1.2113934e+03 3.1617221e+03 - 1.0760402e+03 -1.2044613e+03 3.1660856e+03 - 1.0709387e+03 -1.1957552e+03 3.1706545e+03 - 1.0662698e+03 -1.1851434e+03 3.1754126e+03 - 1.0620483e+03 -1.1724851e+03 3.1803434e+03 - 1.0582854e+03 -1.1576287e+03 3.1854296e+03 - 1.0549894e+03 -1.1404105e+03 3.1906536e+03 - 1.0521649e+03 -1.1206526e+03 3.1959971e+03 - 1.0498134e+03 -1.0981620e+03 3.2014408e+03 - 1.0479328e+03 -1.0727290e+03 3.2069643e+03 - 1.0465173e+03 -1.0441264e+03 3.2125454e+03 - 1.0455571e+03 -1.0121095e+03 3.2181602e+03 - 1.0450375e+03 -9.7641773e+02 3.2237818e+03 - 1.0449385e+03 -9.3677755e+02 3.2293801e+03 - 1.0452334e+03 -8.9290841e+02 3.2349208e+03 - 1.0458887e+03 -8.4453195e+02 3.2403646e+03 - 1.0468618e+03 -7.9138563e+02 3.2456664e+03 - 1.0481012e+03 -7.3324146e+02 3.2507745e+03 - 1.0495451e+03 -6.6993026e+02 3.2556306e+03 - 1.0511216e+03 -6.0137114e+02 3.2601694e+03 - 1.0527500e+03 -5.2760452e+02 3.2643202e+03 - 1.0543425e+03 -4.4882575e+02 3.2680082e+03 - 1.0558087e+03 -3.6541428e+02 3.2711579e+03 - 1.0570606e+03 -2.7795226e+02 3.2736973e+03 - 1.0580191e+03 -1.8722603e+02 3.2755626e+03 - 1.0586215e+03 -9.4205469e+01 3.2767034e+03 - 1.0588270e+03 -2.4067136e-09 3.2770874e+03 - 1.1014719e+03 0.0000000e+00 3.2537510e+03 - 1.1012627e+03 9.8537420e+01 3.2533271e+03 - 1.1006492e+03 1.9578937e+02 3.2520684e+03 - 1.0996725e+03 2.9055646e+02 3.2500134e+03 - 1.0983959e+03 3.8179768e+02 3.2472215e+03 - 1.0968984e+03 4.6867908e+02 3.2437677e+03 - 1.0952680e+03 5.5059480e+02 3.2397357e+03 - 1.0935948e+03 6.2716287e+02 3.2352124e+03 - 1.0919658e+03 6.9820171e+02 3.2302824e+03 - 1.0904611e+03 7.6369557e+02 3.2250254e+03 - 1.0891519e+03 8.2375581e+02 3.2195130e+03 - 1.0880997e+03 8.7858387e+02 3.2138088e+03 - 1.0873563e+03 9.2843887e+02 3.2079681e+03 - 1.0869646e+03 9.7361167e+02 3.2020382e+03 - 1.0869594e+03 1.0144052e+03 3.1960599e+03 - 1.0873688e+03 1.0511207e+03 3.1900682e+03 - 1.0882150e+03 1.0840484e+03 3.1840936e+03 - 1.0895150e+03 1.1134625e+03 3.1781627e+03 - 1.0912814e+03 1.1396181e+03 3.1722996e+03 - 1.0935227e+03 1.1627506e+03 3.1665260e+03 - 1.0962440e+03 1.1830760e+03 3.1608624e+03 - 1.0994467e+03 1.2007923e+03 3.1553278e+03 - 1.1031290e+03 1.2160810e+03 3.1499408e+03 - 1.1072855e+03 1.2291089e+03 3.1447192e+03 - 1.1119073e+03 1.2400302e+03 3.1396804e+03 - 1.1169819e+03 1.2489879e+03 3.1348417e+03 - 1.1224929e+03 1.2561159e+03 3.1302196e+03 - 1.1284200e+03 1.2615403e+03 3.1258309e+03 - 1.1347388e+03 1.2653806e+03 3.1216914e+03 - 1.1414203e+03 1.2677510e+03 3.1178169e+03 - 1.1484316e+03 1.2687614e+03 3.1142224e+03 - 1.1557347e+03 1.2685179e+03 3.1109222e+03 - 1.1632875e+03 1.2671235e+03 3.1079298e+03 - 1.1710430e+03 1.2646787e+03 3.1052577e+03 - 1.1789498e+03 1.2612818e+03 3.1029173e+03 - 1.1869519e+03 1.2570287e+03 3.1009190e+03 - 1.1949889e+03 1.2520134e+03 3.0992714e+03 - 1.2029964e+03 1.2463280e+03 3.0979821e+03 - 1.2109057e+03 1.2400621e+03 3.0970570e+03 - 1.2186445e+03 1.2333034e+03 3.0965002e+03 - 1.2261368e+03 1.2261368e+03 3.0963143e+03 - 1.2333034e+03 1.2186445e+03 3.0965002e+03 - 1.2400621e+03 1.2109057e+03 3.0970570e+03 - 1.2463280e+03 1.2029964e+03 3.0979821e+03 - 1.2520134e+03 1.1949889e+03 3.0992714e+03 - 1.2570287e+03 1.1869519e+03 3.1009190e+03 - 1.2612818e+03 1.1789498e+03 3.1029173e+03 - 1.2646787e+03 1.1710430e+03 3.1052577e+03 - 1.2671235e+03 1.1632875e+03 3.1079298e+03 - 1.2685179e+03 1.1557347e+03 3.1109222e+03 - 1.2687614e+03 1.1484316e+03 3.1142224e+03 - 1.2677510e+03 1.1414203e+03 3.1178169e+03 - 1.2653806e+03 1.1347388e+03 3.1216914e+03 - 1.2615403e+03 1.1284200e+03 3.1258309e+03 - 1.2561159e+03 1.1224929e+03 3.1302196e+03 - 1.2489879e+03 1.1169819e+03 3.1348417e+03 - 1.2400302e+03 1.1119073e+03 3.1396804e+03 - 1.2291089e+03 1.1072855e+03 3.1447192e+03 - 1.2160810e+03 1.1031290e+03 3.1499408e+03 - 1.2007923e+03 1.0994467e+03 3.1553278e+03 - 1.1830760e+03 1.0962440e+03 3.1608624e+03 - 1.1627506e+03 1.0935227e+03 3.1665260e+03 - 1.1396181e+03 1.0912814e+03 3.1722996e+03 - 1.1134625e+03 1.0895150e+03 3.1781627e+03 - 1.0840484e+03 1.0882150e+03 3.1840936e+03 - 1.0511207e+03 1.0873688e+03 3.1900682e+03 - 1.0144052e+03 1.0869594e+03 3.1960599e+03 - 9.7361167e+02 1.0869646e+03 3.2020382e+03 - 9.2843887e+02 1.0873563e+03 3.2079681e+03 - 8.7858387e+02 1.0880997e+03 3.2138088e+03 - 8.2375581e+02 1.0891519e+03 3.2195130e+03 - 7.6369557e+02 1.0904611e+03 3.2250254e+03 - 6.9820171e+02 1.0919658e+03 3.2302824e+03 - 6.2716287e+02 1.0935948e+03 3.2352124e+03 - 5.5059480e+02 1.0952680e+03 3.2397357e+03 - 4.6867908e+02 1.0968984e+03 3.2437677e+03 - 3.8179768e+02 1.0983959e+03 3.2472215e+03 - 2.9055646e+02 1.0996725e+03 3.2500134e+03 - 1.9578937e+02 1.1006492e+03 3.2520684e+03 - 9.8537420e+01 1.1012627e+03 3.2533271e+03 - -2.4067136e-09 1.1014719e+03 3.2537510e+03 - -9.8537420e+01 1.1012627e+03 3.2533271e+03 - -1.9578937e+02 1.1006492e+03 3.2520684e+03 - -2.9055646e+02 1.0996725e+03 3.2500134e+03 - -3.8179768e+02 1.0983959e+03 3.2472215e+03 - -4.6867908e+02 1.0968984e+03 3.2437677e+03 - -5.5059480e+02 1.0952680e+03 3.2397357e+03 - -6.2716287e+02 1.0935948e+03 3.2352124e+03 - -6.9820171e+02 1.0919658e+03 3.2302824e+03 - -7.6369557e+02 1.0904611e+03 3.2250254e+03 - -8.2375581e+02 1.0891519e+03 3.2195130e+03 - -8.7858387e+02 1.0880997e+03 3.2138088e+03 - -9.2843887e+02 1.0873563e+03 3.2079681e+03 - -9.7361167e+02 1.0869646e+03 3.2020382e+03 - -1.0144052e+03 1.0869594e+03 3.1960599e+03 - -1.0511207e+03 1.0873688e+03 3.1900682e+03 - -1.0840484e+03 1.0882150e+03 3.1840936e+03 - -1.1134625e+03 1.0895150e+03 3.1781627e+03 - -1.1396181e+03 1.0912814e+03 3.1722996e+03 - -1.1627506e+03 1.0935227e+03 3.1665260e+03 - -1.1830760e+03 1.0962440e+03 3.1608624e+03 - -1.2007923e+03 1.0994467e+03 3.1553278e+03 - -1.2160810e+03 1.1031290e+03 3.1499408e+03 - -1.2291089e+03 1.1072855e+03 3.1447192e+03 - -1.2400302e+03 1.1119073e+03 3.1396804e+03 - -1.2489879e+03 1.1169819e+03 3.1348417e+03 - -1.2561159e+03 1.1224929e+03 3.1302196e+03 - -1.2615403e+03 1.1284200e+03 3.1258309e+03 - -1.2653806e+03 1.1347388e+03 3.1216914e+03 - -1.2677510e+03 1.1414203e+03 3.1178169e+03 - -1.2687614e+03 1.1484316e+03 3.1142224e+03 - -1.2685179e+03 1.1557347e+03 3.1109222e+03 - -1.2671235e+03 1.1632875e+03 3.1079298e+03 - -1.2646787e+03 1.1710430e+03 3.1052577e+03 - -1.2612818e+03 1.1789498e+03 3.1029173e+03 - -1.2570287e+03 1.1869519e+03 3.1009190e+03 - -1.2520134e+03 1.1949889e+03 3.0992714e+03 - -1.2463280e+03 1.2029964e+03 3.0979821e+03 - -1.2400621e+03 1.2109057e+03 3.0970570e+03 - -1.2333034e+03 1.2186445e+03 3.0965002e+03 - -1.2261368e+03 1.2261368e+03 3.0963143e+03 - -1.2186445e+03 1.2333034e+03 3.0965002e+03 - -1.2109057e+03 1.2400621e+03 3.0970570e+03 - -1.2029964e+03 1.2463280e+03 3.0979821e+03 - -1.1949889e+03 1.2520134e+03 3.0992714e+03 - -1.1869519e+03 1.2570287e+03 3.1009190e+03 - -1.1789498e+03 1.2612818e+03 3.1029173e+03 - -1.1710430e+03 1.2646787e+03 3.1052577e+03 - -1.1632875e+03 1.2671235e+03 3.1079298e+03 - -1.1557347e+03 1.2685179e+03 3.1109222e+03 - -1.1484316e+03 1.2687614e+03 3.1142224e+03 - -1.1414203e+03 1.2677510e+03 3.1178169e+03 - -1.1347388e+03 1.2653806e+03 3.1216914e+03 - -1.1284200e+03 1.2615403e+03 3.1258309e+03 - -1.1224929e+03 1.2561159e+03 3.1302196e+03 - -1.1169819e+03 1.2489879e+03 3.1348417e+03 - -1.1119073e+03 1.2400302e+03 3.1396804e+03 - -1.1072855e+03 1.2291089e+03 3.1447192e+03 - -1.1031290e+03 1.2160810e+03 3.1499408e+03 - -1.0994467e+03 1.2007923e+03 3.1553278e+03 - -1.0962440e+03 1.1830760e+03 3.1608624e+03 - -1.0935227e+03 1.1627506e+03 3.1665260e+03 - -1.0912814e+03 1.1396181e+03 3.1722996e+03 - -1.0895150e+03 1.1134625e+03 3.1781627e+03 - -1.0882150e+03 1.0840484e+03 3.1840936e+03 - -1.0873688e+03 1.0511207e+03 3.1900682e+03 - -1.0869594e+03 1.0144052e+03 3.1960599e+03 - -1.0869646e+03 9.7361167e+02 3.2020382e+03 - -1.0873563e+03 9.2843887e+02 3.2079681e+03 - -1.0880997e+03 8.7858387e+02 3.2138088e+03 - -1.0891519e+03 8.2375581e+02 3.2195130e+03 - -1.0904611e+03 7.6369557e+02 3.2250254e+03 - -1.0919658e+03 6.9820171e+02 3.2302824e+03 - -1.0935948e+03 6.2716287e+02 3.2352124e+03 - -1.0952680e+03 5.5059480e+02 3.2397357e+03 - -1.0968984e+03 4.6867908e+02 3.2437677e+03 - -1.0983959e+03 3.8179768e+02 3.2472215e+03 - -1.0996725e+03 2.9055646e+02 3.2500134e+03 - -1.1006492e+03 1.9578937e+02 3.2520684e+03 - -1.1012627e+03 9.8537420e+01 3.2533271e+03 - -1.1014719e+03 0.0000000e+00 3.2537510e+03 - -1.1012627e+03 -9.8537420e+01 3.2533271e+03 - -1.1006492e+03 -1.9578937e+02 3.2520684e+03 - -1.0996725e+03 -2.9055646e+02 3.2500134e+03 - -1.0983959e+03 -3.8179768e+02 3.2472215e+03 - -1.0968984e+03 -4.6867908e+02 3.2437677e+03 - -1.0952680e+03 -5.5059480e+02 3.2397357e+03 - -1.0935948e+03 -6.2716287e+02 3.2352124e+03 - -1.0919658e+03 -6.9820171e+02 3.2302824e+03 - -1.0904611e+03 -7.6369557e+02 3.2250254e+03 - -1.0891519e+03 -8.2375581e+02 3.2195130e+03 - -1.0880997e+03 -8.7858387e+02 3.2138088e+03 - -1.0873563e+03 -9.2843887e+02 3.2079681e+03 - -1.0869646e+03 -9.7361167e+02 3.2020382e+03 - -1.0869594e+03 -1.0144052e+03 3.1960599e+03 - -1.0873688e+03 -1.0511207e+03 3.1900682e+03 - -1.0882150e+03 -1.0840484e+03 3.1840936e+03 - -1.0895150e+03 -1.1134625e+03 3.1781627e+03 - -1.0912814e+03 -1.1396181e+03 3.1722996e+03 - -1.0935227e+03 -1.1627506e+03 3.1665260e+03 - -1.0962440e+03 -1.1830760e+03 3.1608624e+03 - -1.0994467e+03 -1.2007923e+03 3.1553278e+03 - -1.1031290e+03 -1.2160810e+03 3.1499408e+03 - -1.1072855e+03 -1.2291089e+03 3.1447192e+03 - -1.1119073e+03 -1.2400302e+03 3.1396804e+03 - -1.1169819e+03 -1.2489879e+03 3.1348417e+03 - -1.1224929e+03 -1.2561159e+03 3.1302196e+03 - -1.1284200e+03 -1.2615403e+03 3.1258309e+03 - -1.1347388e+03 -1.2653806e+03 3.1216914e+03 - -1.1414203e+03 -1.2677510e+03 3.1178169e+03 - -1.1484316e+03 -1.2687614e+03 3.1142224e+03 - -1.1557347e+03 -1.2685179e+03 3.1109222e+03 - -1.1632875e+03 -1.2671235e+03 3.1079298e+03 - -1.1710430e+03 -1.2646787e+03 3.1052577e+03 - -1.1789498e+03 -1.2612818e+03 3.1029173e+03 - -1.1869519e+03 -1.2570287e+03 3.1009190e+03 - -1.1949889e+03 -1.2520134e+03 3.0992714e+03 - -1.2029964e+03 -1.2463280e+03 3.0979821e+03 - -1.2109057e+03 -1.2400621e+03 3.0970570e+03 - -1.2186445e+03 -1.2333034e+03 3.0965002e+03 - -1.2261368e+03 -1.2261368e+03 3.0963143e+03 - -1.2333034e+03 -1.2186445e+03 3.0965002e+03 - -1.2400621e+03 -1.2109057e+03 3.0970570e+03 - -1.2463280e+03 -1.2029964e+03 3.0979821e+03 - -1.2520134e+03 -1.1949889e+03 3.0992714e+03 - -1.2570287e+03 -1.1869519e+03 3.1009190e+03 - -1.2612818e+03 -1.1789498e+03 3.1029173e+03 - -1.2646787e+03 -1.1710430e+03 3.1052577e+03 - -1.2671235e+03 -1.1632875e+03 3.1079298e+03 - -1.2685179e+03 -1.1557347e+03 3.1109222e+03 - -1.2687614e+03 -1.1484316e+03 3.1142224e+03 - -1.2677510e+03 -1.1414203e+03 3.1178169e+03 - -1.2653806e+03 -1.1347388e+03 3.1216914e+03 - -1.2615403e+03 -1.1284200e+03 3.1258309e+03 - -1.2561159e+03 -1.1224929e+03 3.1302196e+03 - -1.2489879e+03 -1.1169819e+03 3.1348417e+03 - -1.2400302e+03 -1.1119073e+03 3.1396804e+03 - -1.2291089e+03 -1.1072855e+03 3.1447192e+03 - -1.2160810e+03 -1.1031290e+03 3.1499408e+03 - -1.2007923e+03 -1.0994467e+03 3.1553278e+03 - -1.1830760e+03 -1.0962440e+03 3.1608624e+03 - -1.1627506e+03 -1.0935227e+03 3.1665260e+03 - -1.1396181e+03 -1.0912814e+03 3.1722996e+03 - -1.1134625e+03 -1.0895150e+03 3.1781627e+03 - -1.0840484e+03 -1.0882150e+03 3.1840936e+03 - -1.0511207e+03 -1.0873688e+03 3.1900682e+03 - -1.0144052e+03 -1.0869594e+03 3.1960599e+03 - -9.7361167e+02 -1.0869646e+03 3.2020382e+03 - -9.2843887e+02 -1.0873563e+03 3.2079681e+03 - -8.7858387e+02 -1.0880997e+03 3.2138088e+03 - -8.2375581e+02 -1.0891519e+03 3.2195130e+03 - -7.6369557e+02 -1.0904611e+03 3.2250254e+03 - -6.9820171e+02 -1.0919658e+03 3.2302824e+03 - -6.2716287e+02 -1.0935948e+03 3.2352124e+03 - -5.5059480e+02 -1.0952680e+03 3.2397357e+03 - -4.6867908e+02 -1.0968984e+03 3.2437677e+03 - -3.8179768e+02 -1.0983959e+03 3.2472215e+03 - -2.9055646e+02 -1.0996725e+03 3.2500134e+03 - -1.9578937e+02 -1.1006492e+03 3.2520684e+03 - -9.8537420e+01 -1.1012627e+03 3.2533271e+03 - 2.4067136e-09 -1.1014719e+03 3.2537510e+03 - 9.8537420e+01 -1.1012627e+03 3.2533271e+03 - 1.9578937e+02 -1.1006492e+03 3.2520684e+03 - 2.9055646e+02 -1.0996725e+03 3.2500134e+03 - 3.8179768e+02 -1.0983959e+03 3.2472215e+03 - 4.6867908e+02 -1.0968984e+03 3.2437677e+03 - 5.5059480e+02 -1.0952680e+03 3.2397357e+03 - 6.2716287e+02 -1.0935948e+03 3.2352124e+03 - 6.9820171e+02 -1.0919658e+03 3.2302824e+03 - 7.6369557e+02 -1.0904611e+03 3.2250254e+03 - 8.2375581e+02 -1.0891519e+03 3.2195130e+03 - 8.7858387e+02 -1.0880997e+03 3.2138088e+03 - 9.2843887e+02 -1.0873563e+03 3.2079681e+03 - 9.7361167e+02 -1.0869646e+03 3.2020382e+03 - 1.0144052e+03 -1.0869594e+03 3.1960599e+03 - 1.0511207e+03 -1.0873688e+03 3.1900682e+03 - 1.0840484e+03 -1.0882150e+03 3.1840936e+03 - 1.1134625e+03 -1.0895150e+03 3.1781627e+03 - 1.1396181e+03 -1.0912814e+03 3.1722996e+03 - 1.1627506e+03 -1.0935227e+03 3.1665260e+03 - 1.1830760e+03 -1.0962440e+03 3.1608624e+03 - 1.2007923e+03 -1.0994467e+03 3.1553278e+03 - 1.2160810e+03 -1.1031290e+03 3.1499408e+03 - 1.2291089e+03 -1.1072855e+03 3.1447192e+03 - 1.2400302e+03 -1.1119073e+03 3.1396804e+03 - 1.2489879e+03 -1.1169819e+03 3.1348417e+03 - 1.2561159e+03 -1.1224929e+03 3.1302196e+03 - 1.2615403e+03 -1.1284200e+03 3.1258309e+03 - 1.2653806e+03 -1.1347388e+03 3.1216914e+03 - 1.2677510e+03 -1.1414203e+03 3.1178169e+03 - 1.2687614e+03 -1.1484316e+03 3.1142224e+03 - 1.2685179e+03 -1.1557347e+03 3.1109222e+03 - 1.2671235e+03 -1.1632875e+03 3.1079298e+03 - 1.2646787e+03 -1.1710430e+03 3.1052577e+03 - 1.2612818e+03 -1.1789498e+03 3.1029173e+03 - 1.2570287e+03 -1.1869519e+03 3.1009190e+03 - 1.2520134e+03 -1.1949889e+03 3.0992714e+03 - 1.2463280e+03 -1.2029964e+03 3.0979821e+03 - 1.2400621e+03 -1.2109057e+03 3.0970570e+03 - 1.2333034e+03 -1.2186445e+03 3.0965002e+03 - 1.2261368e+03 -1.2261368e+03 3.0963143e+03 - 1.2186445e+03 -1.2333034e+03 3.0965002e+03 - 1.2109057e+03 -1.2400621e+03 3.0970570e+03 - 1.2029964e+03 -1.2463280e+03 3.0979821e+03 - 1.1949889e+03 -1.2520134e+03 3.0992714e+03 - 1.1869519e+03 -1.2570287e+03 3.1009190e+03 - 1.1789498e+03 -1.2612818e+03 3.1029173e+03 - 1.1710430e+03 -1.2646787e+03 3.1052577e+03 - 1.1632875e+03 -1.2671235e+03 3.1079298e+03 - 1.1557347e+03 -1.2685179e+03 3.1109222e+03 - 1.1484316e+03 -1.2687614e+03 3.1142224e+03 - 1.1414203e+03 -1.2677510e+03 3.1178169e+03 - 1.1347388e+03 -1.2653806e+03 3.1216914e+03 - 1.1284200e+03 -1.2615403e+03 3.1258309e+03 - 1.1224929e+03 -1.2561159e+03 3.1302196e+03 - 1.1169819e+03 -1.2489879e+03 3.1348417e+03 - 1.1119073e+03 -1.2400302e+03 3.1396804e+03 - 1.1072855e+03 -1.2291089e+03 3.1447192e+03 - 1.1031290e+03 -1.2160810e+03 3.1499408e+03 - 1.0994467e+03 -1.2007923e+03 3.1553278e+03 - 1.0962440e+03 -1.1830760e+03 3.1608624e+03 - 1.0935227e+03 -1.1627506e+03 3.1665260e+03 - 1.0912814e+03 -1.1396181e+03 3.1722996e+03 - 1.0895150e+03 -1.1134625e+03 3.1781627e+03 - 1.0882150e+03 -1.0840484e+03 3.1840936e+03 - 1.0873688e+03 -1.0511207e+03 3.1900682e+03 - 1.0869594e+03 -1.0144052e+03 3.1960599e+03 - 1.0869646e+03 -9.7361167e+02 3.2020382e+03 - 1.0873563e+03 -9.2843887e+02 3.2079681e+03 - 1.0880997e+03 -8.7858387e+02 3.2138088e+03 - 1.0891519e+03 -8.2375581e+02 3.2195130e+03 - 1.0904611e+03 -7.6369557e+02 3.2250254e+03 - 1.0919658e+03 -6.9820171e+02 3.2302824e+03 - 1.0935948e+03 -6.2716287e+02 3.2352124e+03 - 1.0952680e+03 -5.5059480e+02 3.2397357e+03 - 1.0968984e+03 -4.6867908e+02 3.2437677e+03 - 1.0983959e+03 -3.8179768e+02 3.2472215e+03 - 1.0996725e+03 -2.9055646e+02 3.2500134e+03 - 1.1006492e+03 -1.9578937e+02 3.2520684e+03 - 1.1012627e+03 -9.8537420e+01 3.2533271e+03 - 1.1014719e+03 0.0000000e+00 3.2537510e+03 - 1.1441156e+03 0.0000000e+00 3.2293154e+03 - 1.1439045e+03 1.0297087e+02 3.2288473e+03 - 1.1432853e+03 2.0454442e+02 3.2274589e+03 - 1.1422988e+03 3.0342195e+02 3.2251960e+03 - 1.1410078e+03 3.9848545e+02 3.2221290e+03 - 1.1394905e+03 4.8885130e+02 3.2183460e+03 - 1.1378337e+03 5.7389148e+02 3.2139445e+03 - 1.1361261e+03 6.5322557e+02 3.2090245e+03 - 1.1344528e+03 7.2669128e+02 3.2036822e+03 - 1.1328926e+03 7.9430336e+02 3.1980064e+03 - 1.1315156e+03 8.5620907e+02 3.1920761e+03 - 1.1303824e+03 9.1264662e+02 3.1859598e+03 - 1.1295448e+03 9.6390978e+02 3.1797162e+03 - 1.1290464e+03 1.0103202e+03 3.1733947e+03 - 1.1289234e+03 1.0522069e+03 3.1670369e+03 - 1.1292057e+03 1.0898925e+03 3.1606780e+03 - 1.1299179e+03 1.1236845e+03 3.1543483e+03 - 1.1310798e+03 1.1538704e+03 3.1480740e+03 - 1.1327071e+03 1.1807153e+03 3.1418785e+03 - 1.1348117e+03 1.2044624e+03 3.1357830e+03 - 1.1374019e+03 1.2253333e+03 3.1298075e+03 - 1.1404827e+03 1.2435302e+03 3.1239707e+03 - 1.1440553e+03 1.2592376e+03 3.1182909e+03 - 1.1481175e+03 1.2726247e+03 3.1127861e+03 - 1.1526632e+03 1.2838477e+03 3.1074739e+03 - 1.1576826e+03 1.2930514e+03 3.1023718e+03 - 1.1631614e+03 1.3003713e+03 3.0974971e+03 - 1.1690811e+03 1.3059353e+03 3.0928671e+03 - 1.1754185e+03 1.3098648e+03 3.0884986e+03 - 1.1821459e+03 1.3122764e+03 3.0844082e+03 - 1.1892302e+03 1.3132824e+03 3.0806118e+03 - 1.1966338e+03 1.3129917e+03 3.0771249e+03 - 1.2043135e+03 1.3115107e+03 3.0739620e+03 - 1.2122214e+03 1.3089433e+03 3.0711366e+03 - 1.2203041e+03 1.3053916e+03 3.0686611e+03 - 1.2285036e+03 1.3009557e+03 3.0665467e+03 - 1.2367567e+03 1.2957340e+03 3.0648030e+03 - 1.2449958e+03 1.2898230e+03 3.0634382e+03 - 1.2531487e+03 1.2833171e+03 3.0624587e+03 - 1.2611391e+03 1.2763086e+03 3.0618691e+03 - 1.2688870e+03 1.2688870e+03 3.0616722e+03 - 1.2763086e+03 1.2611391e+03 3.0618691e+03 - 1.2833171e+03 1.2531487e+03 3.0624587e+03 - 1.2898230e+03 1.2449958e+03 3.0634382e+03 - 1.2957340e+03 1.2367567e+03 3.0648030e+03 - 1.3009557e+03 1.2285036e+03 3.0665467e+03 - 1.3053916e+03 1.2203041e+03 3.0686611e+03 - 1.3089433e+03 1.2122214e+03 3.0711366e+03 - 1.3115107e+03 1.2043135e+03 3.0739620e+03 - 1.3129917e+03 1.1966338e+03 3.0771249e+03 - 1.3132824e+03 1.1892302e+03 3.0806118e+03 - 1.3122764e+03 1.1821459e+03 3.0844082e+03 - 1.3098648e+03 1.1754185e+03 3.0884986e+03 - 1.3059353e+03 1.1690811e+03 3.0928671e+03 - 1.3003713e+03 1.1631614e+03 3.0974971e+03 - 1.2930514e+03 1.1576826e+03 3.1023718e+03 - 1.2838477e+03 1.1526632e+03 3.1074739e+03 - 1.2726247e+03 1.1481175e+03 3.1127861e+03 - 1.2592376e+03 1.1440553e+03 3.1182909e+03 - 1.2435302e+03 1.1404827e+03 3.1239707e+03 - 1.2253333e+03 1.1374019e+03 3.1298075e+03 - 1.2044624e+03 1.1348117e+03 3.1357830e+03 - 1.1807153e+03 1.1327071e+03 3.1418785e+03 - 1.1538704e+03 1.1310798e+03 3.1480740e+03 - 1.1236845e+03 1.1299179e+03 3.1543483e+03 - 1.0898925e+03 1.1292057e+03 3.1606780e+03 - 1.0522069e+03 1.1289234e+03 3.1670369e+03 - 1.0103202e+03 1.1290464e+03 3.1733947e+03 - 9.6390978e+02 1.1295448e+03 3.1797162e+03 - 9.1264662e+02 1.1303824e+03 3.1859598e+03 - 8.5620907e+02 1.1315156e+03 3.1920761e+03 - 7.9430336e+02 1.1328926e+03 3.1980064e+03 - 7.2669128e+02 1.1344528e+03 3.2036822e+03 - 6.5322557e+02 1.1361261e+03 3.2090245e+03 - 5.7389148e+02 1.1378337e+03 3.2139445e+03 - 4.8885130e+02 1.1394905e+03 3.2183460e+03 - 3.9848545e+02 1.1410078e+03 3.2221290e+03 - 3.0342195e+02 1.1422988e+03 3.2251960e+03 - 2.0454442e+02 1.1432853e+03 3.2274589e+03 - 1.0297087e+02 1.1439045e+03 3.2288473e+03 - 0.0000000e+00 1.1441156e+03 3.2293154e+03 - -1.0297087e+02 1.1439045e+03 3.2288473e+03 - -2.0454442e+02 1.1432853e+03 3.2274589e+03 - -3.0342195e+02 1.1422988e+03 3.2251960e+03 - -3.9848545e+02 1.1410078e+03 3.2221290e+03 - -4.8885130e+02 1.1394905e+03 3.2183460e+03 - -5.7389148e+02 1.1378337e+03 3.2139445e+03 - -6.5322557e+02 1.1361261e+03 3.2090245e+03 - -7.2669128e+02 1.1344528e+03 3.2036822e+03 - -7.9430336e+02 1.1328926e+03 3.1980064e+03 - -8.5620907e+02 1.1315156e+03 3.1920761e+03 - -9.1264662e+02 1.1303824e+03 3.1859598e+03 - -9.6390978e+02 1.1295448e+03 3.1797162e+03 - -1.0103202e+03 1.1290464e+03 3.1733947e+03 - -1.0522069e+03 1.1289234e+03 3.1670369e+03 - -1.0898925e+03 1.1292057e+03 3.1606780e+03 - -1.1236845e+03 1.1299179e+03 3.1543483e+03 - -1.1538704e+03 1.1310798e+03 3.1480740e+03 - -1.1807153e+03 1.1327071e+03 3.1418785e+03 - -1.2044624e+03 1.1348117e+03 3.1357830e+03 - -1.2253333e+03 1.1374019e+03 3.1298075e+03 - -1.2435302e+03 1.1404827e+03 3.1239707e+03 - -1.2592376e+03 1.1440553e+03 3.1182909e+03 - -1.2726247e+03 1.1481175e+03 3.1127861e+03 - -1.2838477e+03 1.1526632e+03 3.1074739e+03 - -1.2930514e+03 1.1576826e+03 3.1023718e+03 - -1.3003713e+03 1.1631614e+03 3.0974971e+03 - -1.3059353e+03 1.1690811e+03 3.0928671e+03 - -1.3098648e+03 1.1754185e+03 3.0884986e+03 - -1.3122764e+03 1.1821459e+03 3.0844082e+03 - -1.3132824e+03 1.1892302e+03 3.0806118e+03 - -1.3129917e+03 1.1966338e+03 3.0771249e+03 - -1.3115107e+03 1.2043135e+03 3.0739620e+03 - -1.3089433e+03 1.2122214e+03 3.0711366e+03 - -1.3053916e+03 1.2203041e+03 3.0686611e+03 - -1.3009557e+03 1.2285036e+03 3.0665467e+03 - -1.2957340e+03 1.2367567e+03 3.0648030e+03 - -1.2898230e+03 1.2449958e+03 3.0634382e+03 - -1.2833171e+03 1.2531487e+03 3.0624587e+03 - -1.2763086e+03 1.2611391e+03 3.0618691e+03 - -1.2688870e+03 1.2688870e+03 3.0616722e+03 - -1.2611391e+03 1.2763086e+03 3.0618691e+03 - -1.2531487e+03 1.2833171e+03 3.0624587e+03 - -1.2449958e+03 1.2898230e+03 3.0634382e+03 - -1.2367567e+03 1.2957340e+03 3.0648030e+03 - -1.2285036e+03 1.3009557e+03 3.0665467e+03 - -1.2203041e+03 1.3053916e+03 3.0686611e+03 - -1.2122214e+03 1.3089433e+03 3.0711366e+03 - -1.2043135e+03 1.3115107e+03 3.0739620e+03 - -1.1966338e+03 1.3129917e+03 3.0771249e+03 - -1.1892302e+03 1.3132824e+03 3.0806118e+03 - -1.1821459e+03 1.3122764e+03 3.0844082e+03 - -1.1754185e+03 1.3098648e+03 3.0884986e+03 - -1.1690811e+03 1.3059353e+03 3.0928671e+03 - -1.1631614e+03 1.3003713e+03 3.0974971e+03 - -1.1576826e+03 1.2930514e+03 3.1023718e+03 - -1.1526632e+03 1.2838477e+03 3.1074739e+03 - -1.1481175e+03 1.2726247e+03 3.1127861e+03 - -1.1440553e+03 1.2592376e+03 3.1182909e+03 - -1.1404827e+03 1.2435302e+03 3.1239707e+03 - -1.1374019e+03 1.2253333e+03 3.1298075e+03 - -1.1348117e+03 1.2044624e+03 3.1357830e+03 - -1.1327071e+03 1.1807153e+03 3.1418785e+03 - -1.1310798e+03 1.1538704e+03 3.1480740e+03 - -1.1299179e+03 1.1236845e+03 3.1543483e+03 - -1.1292057e+03 1.0898925e+03 3.1606780e+03 - -1.1289234e+03 1.0522069e+03 3.1670369e+03 - -1.1290464e+03 1.0103202e+03 3.1733947e+03 - -1.1295448e+03 9.6390978e+02 3.1797162e+03 - -1.1303824e+03 9.1264662e+02 3.1859598e+03 - -1.1315156e+03 8.5620907e+02 3.1920761e+03 - -1.1328926e+03 7.9430336e+02 3.1980064e+03 - -1.1344528e+03 7.2669128e+02 3.2036822e+03 - -1.1361261e+03 6.5322557e+02 3.2090245e+03 - -1.1378337e+03 5.7389148e+02 3.2139445e+03 - -1.1394905e+03 4.8885130e+02 3.2183460e+03 - -1.1410078e+03 3.9848545e+02 3.2221290e+03 - -1.1422988e+03 3.0342195e+02 3.2251960e+03 - -1.1432853e+03 2.0454442e+02 3.2274589e+03 - -1.1439045e+03 1.0297087e+02 3.2288473e+03 - -1.1441156e+03 4.8134273e-09 3.2293154e+03 - -1.1439045e+03 -1.0297087e+02 3.2288473e+03 - -1.1432853e+03 -2.0454442e+02 3.2274589e+03 - -1.1422988e+03 -3.0342195e+02 3.2251960e+03 - -1.1410078e+03 -3.9848545e+02 3.2221290e+03 - -1.1394905e+03 -4.8885130e+02 3.2183460e+03 - -1.1378337e+03 -5.7389148e+02 3.2139445e+03 - -1.1361261e+03 -6.5322557e+02 3.2090245e+03 - -1.1344528e+03 -7.2669128e+02 3.2036822e+03 - -1.1328926e+03 -7.9430336e+02 3.1980064e+03 - -1.1315156e+03 -8.5620907e+02 3.1920761e+03 - -1.1303824e+03 -9.1264662e+02 3.1859598e+03 - -1.1295448e+03 -9.6390978e+02 3.1797162e+03 - -1.1290464e+03 -1.0103202e+03 3.1733947e+03 - -1.1289234e+03 -1.0522069e+03 3.1670369e+03 - -1.1292057e+03 -1.0898925e+03 3.1606780e+03 - -1.1299179e+03 -1.1236845e+03 3.1543483e+03 - -1.1310798e+03 -1.1538704e+03 3.1480740e+03 - -1.1327071e+03 -1.1807153e+03 3.1418785e+03 - -1.1348117e+03 -1.2044624e+03 3.1357830e+03 - -1.1374019e+03 -1.2253333e+03 3.1298075e+03 - -1.1404827e+03 -1.2435302e+03 3.1239707e+03 - -1.1440553e+03 -1.2592376e+03 3.1182909e+03 - -1.1481175e+03 -1.2726247e+03 3.1127861e+03 - -1.1526632e+03 -1.2838477e+03 3.1074739e+03 - -1.1576826e+03 -1.2930514e+03 3.1023718e+03 - -1.1631614e+03 -1.3003713e+03 3.0974971e+03 - -1.1690811e+03 -1.3059353e+03 3.0928671e+03 - -1.1754185e+03 -1.3098648e+03 3.0884986e+03 - -1.1821459e+03 -1.3122764e+03 3.0844082e+03 - -1.1892302e+03 -1.3132824e+03 3.0806118e+03 - -1.1966338e+03 -1.3129917e+03 3.0771249e+03 - -1.2043135e+03 -1.3115107e+03 3.0739620e+03 - -1.2122214e+03 -1.3089433e+03 3.0711366e+03 - -1.2203041e+03 -1.3053916e+03 3.0686611e+03 - -1.2285036e+03 -1.3009557e+03 3.0665467e+03 - -1.2367567e+03 -1.2957340e+03 3.0648030e+03 - -1.2449958e+03 -1.2898230e+03 3.0634382e+03 - -1.2531487e+03 -1.2833171e+03 3.0624587e+03 - -1.2611391e+03 -1.2763086e+03 3.0618691e+03 - -1.2688870e+03 -1.2688870e+03 3.0616722e+03 - -1.2763086e+03 -1.2611391e+03 3.0618691e+03 - -1.2833171e+03 -1.2531487e+03 3.0624587e+03 - -1.2898230e+03 -1.2449958e+03 3.0634382e+03 - -1.2957340e+03 -1.2367567e+03 3.0648030e+03 - -1.3009557e+03 -1.2285036e+03 3.0665467e+03 - -1.3053916e+03 -1.2203041e+03 3.0686611e+03 - -1.3089433e+03 -1.2122214e+03 3.0711366e+03 - -1.3115107e+03 -1.2043135e+03 3.0739620e+03 - -1.3129917e+03 -1.1966338e+03 3.0771249e+03 - -1.3132824e+03 -1.1892302e+03 3.0806118e+03 - -1.3122764e+03 -1.1821459e+03 3.0844082e+03 - -1.3098648e+03 -1.1754185e+03 3.0884986e+03 - -1.3059353e+03 -1.1690811e+03 3.0928671e+03 - -1.3003713e+03 -1.1631614e+03 3.0974971e+03 - -1.2930514e+03 -1.1576826e+03 3.1023718e+03 - -1.2838477e+03 -1.1526632e+03 3.1074739e+03 - -1.2726247e+03 -1.1481175e+03 3.1127861e+03 - -1.2592376e+03 -1.1440553e+03 3.1182909e+03 - -1.2435302e+03 -1.1404827e+03 3.1239707e+03 - -1.2253333e+03 -1.1374019e+03 3.1298075e+03 - -1.2044624e+03 -1.1348117e+03 3.1357830e+03 - -1.1807153e+03 -1.1327071e+03 3.1418785e+03 - -1.1538704e+03 -1.1310798e+03 3.1480740e+03 - -1.1236845e+03 -1.1299179e+03 3.1543483e+03 - -1.0898925e+03 -1.1292057e+03 3.1606780e+03 - -1.0522069e+03 -1.1289234e+03 3.1670369e+03 - -1.0103202e+03 -1.1290464e+03 3.1733947e+03 - -9.6390978e+02 -1.1295448e+03 3.1797162e+03 - -9.1264662e+02 -1.1303824e+03 3.1859598e+03 - -8.5620907e+02 -1.1315156e+03 3.1920761e+03 - -7.9430336e+02 -1.1328926e+03 3.1980064e+03 - -7.2669128e+02 -1.1344528e+03 3.2036822e+03 - -6.5322557e+02 -1.1361261e+03 3.2090245e+03 - -5.7389148e+02 -1.1378337e+03 3.2139445e+03 - -4.8885130e+02 -1.1394905e+03 3.2183460e+03 - -3.9848545e+02 -1.1410078e+03 3.2221290e+03 - -3.0342195e+02 -1.1422988e+03 3.2251960e+03 - -2.0454442e+02 -1.1432853e+03 3.2274589e+03 - -1.0297087e+02 -1.1439045e+03 3.2288473e+03 - 2.4067136e-09 -1.1441156e+03 3.2293154e+03 - 1.0297087e+02 -1.1439045e+03 3.2288473e+03 - 2.0454442e+02 -1.1432853e+03 3.2274589e+03 - 3.0342195e+02 -1.1422988e+03 3.2251960e+03 - 3.9848545e+02 -1.1410078e+03 3.2221290e+03 - 4.8885130e+02 -1.1394905e+03 3.2183460e+03 - 5.7389148e+02 -1.1378337e+03 3.2139445e+03 - 6.5322557e+02 -1.1361261e+03 3.2090245e+03 - 7.2669128e+02 -1.1344528e+03 3.2036822e+03 - 7.9430336e+02 -1.1328926e+03 3.1980064e+03 - 8.5620907e+02 -1.1315156e+03 3.1920761e+03 - 9.1264662e+02 -1.1303824e+03 3.1859598e+03 - 9.6390978e+02 -1.1295448e+03 3.1797162e+03 - 1.0103202e+03 -1.1290464e+03 3.1733947e+03 - 1.0522069e+03 -1.1289234e+03 3.1670369e+03 - 1.0898925e+03 -1.1292057e+03 3.1606780e+03 - 1.1236845e+03 -1.1299179e+03 3.1543483e+03 - 1.1538704e+03 -1.1310798e+03 3.1480740e+03 - 1.1807153e+03 -1.1327071e+03 3.1418785e+03 - 1.2044624e+03 -1.1348117e+03 3.1357830e+03 - 1.2253333e+03 -1.1374019e+03 3.1298075e+03 - 1.2435302e+03 -1.1404827e+03 3.1239707e+03 - 1.2592376e+03 -1.1440553e+03 3.1182909e+03 - 1.2726247e+03 -1.1481175e+03 3.1127861e+03 - 1.2838477e+03 -1.1526632e+03 3.1074739e+03 - 1.2930514e+03 -1.1576826e+03 3.1023718e+03 - 1.3003713e+03 -1.1631614e+03 3.0974971e+03 - 1.3059353e+03 -1.1690811e+03 3.0928671e+03 - 1.3098648e+03 -1.1754185e+03 3.0884986e+03 - 1.3122764e+03 -1.1821459e+03 3.0844082e+03 - 1.3132824e+03 -1.1892302e+03 3.0806118e+03 - 1.3129917e+03 -1.1966338e+03 3.0771249e+03 - 1.3115107e+03 -1.2043135e+03 3.0739620e+03 - 1.3089433e+03 -1.2122214e+03 3.0711366e+03 - 1.3053916e+03 -1.2203041e+03 3.0686611e+03 - 1.3009557e+03 -1.2285036e+03 3.0665467e+03 - 1.2957340e+03 -1.2367567e+03 3.0648030e+03 - 1.2898230e+03 -1.2449958e+03 3.0634382e+03 - 1.2833171e+03 -1.2531487e+03 3.0624587e+03 - 1.2763086e+03 -1.2611391e+03 3.0618691e+03 - 1.2688870e+03 -1.2688870e+03 3.0616722e+03 - 1.2611391e+03 -1.2763086e+03 3.0618691e+03 - 1.2531487e+03 -1.2833171e+03 3.0624587e+03 - 1.2449958e+03 -1.2898230e+03 3.0634382e+03 - 1.2367567e+03 -1.2957340e+03 3.0648030e+03 - 1.2285036e+03 -1.3009557e+03 3.0665467e+03 - 1.2203041e+03 -1.3053916e+03 3.0686611e+03 - 1.2122214e+03 -1.3089433e+03 3.0711366e+03 - 1.2043135e+03 -1.3115107e+03 3.0739620e+03 - 1.1966338e+03 -1.3129917e+03 3.0771249e+03 - 1.1892302e+03 -1.3132824e+03 3.0806118e+03 - 1.1821459e+03 -1.3122764e+03 3.0844082e+03 - 1.1754185e+03 -1.3098648e+03 3.0884986e+03 - 1.1690811e+03 -1.3059353e+03 3.0928671e+03 - 1.1631614e+03 -1.3003713e+03 3.0974971e+03 - 1.1576826e+03 -1.2930514e+03 3.1023718e+03 - 1.1526632e+03 -1.2838477e+03 3.1074739e+03 - 1.1481175e+03 -1.2726247e+03 3.1127861e+03 - 1.1440553e+03 -1.2592376e+03 3.1182909e+03 - 1.1404827e+03 -1.2435302e+03 3.1239707e+03 - 1.1374019e+03 -1.2253333e+03 3.1298075e+03 - 1.1348117e+03 -1.2044624e+03 3.1357830e+03 - 1.1327071e+03 -1.1807153e+03 3.1418785e+03 - 1.1310798e+03 -1.1538704e+03 3.1480740e+03 - 1.1299179e+03 -1.1236845e+03 3.1543483e+03 - 1.1292057e+03 -1.0898925e+03 3.1606780e+03 - 1.1289234e+03 -1.0522069e+03 3.1670369e+03 - 1.1290464e+03 -1.0103202e+03 3.1733947e+03 - 1.1295448e+03 -9.6390978e+02 3.1797162e+03 - 1.1303824e+03 -9.1264662e+02 3.1859598e+03 - 1.1315156e+03 -8.5620907e+02 3.1920761e+03 - 1.1328926e+03 -7.9430336e+02 3.1980064e+03 - 1.1344528e+03 -7.2669128e+02 3.2036822e+03 - 1.1361261e+03 -6.5322557e+02 3.2090245e+03 - 1.1378337e+03 -5.7389148e+02 3.2139445e+03 - 1.1394905e+03 -4.8885130e+02 3.2183460e+03 - 1.1410078e+03 -3.9848545e+02 3.2221290e+03 - 1.1422988e+03 -3.0342195e+02 3.2251960e+03 - 1.1432853e+03 -2.0454442e+02 3.2274589e+03 - 1.1439045e+03 -1.0297087e+02 3.2288473e+03 - 1.1441156e+03 -2.4067136e-09 3.2293154e+03 - 1.1867507e+03 0.0000000e+00 3.2037598e+03 - 1.1865401e+03 1.0752068e+02 3.2032428e+03 - 1.1859220e+03 2.1351871e+02 3.2017108e+03 - 1.1849364e+03 3.1658511e+02 3.1992186e+03 - 1.1836444e+03 4.1551810e+02 3.1958501e+03 - 1.1821220e+03 5.0938244e+02 3.1917091e+03 - 1.1804534e+03 5.9753023e+02 3.1869096e+03 - 1.1787243e+03 6.7958780e+02 3.1815666e+03 - 1.1770172e+03 7.5541889e+02 3.1757892e+03 - 1.1754084e+03 8.2507563e+02 3.1696764e+03 - 1.1739661e+03 8.8874741e+02 3.1633148e+03 - 1.1727502e+03 9.4671430e+02 3.1567780e+03 - 1.1718123e+03 9.9930849e+02 3.1501276e+03 - 1.1711967e+03 1.0468849e+03 3.1434143e+03 - 1.1709412e+03 1.0898003e+03 3.1366803e+03 - 1.1710780e+03 1.1283995e+03 3.1299603e+03 - 1.1716346e+03 1.1630071e+03 3.1232837e+03 - 1.1726340e+03 1.1939237e+03 3.1166755e+03 - 1.1740956e+03 1.2214241e+03 3.1101582e+03 - 1.1760350e+03 1.2457583e+03 3.1037520e+03 - 1.1784645e+03 1.2671529e+03 3.0974759e+03 - 1.1813927e+03 1.2858133e+03 3.0913481e+03 - 1.1848247e+03 1.3019266e+03 3.0853865e+03 - 1.1887617e+03 1.3156636e+03 3.0796087e+03 - 1.1932009e+03 1.3271817e+03 3.0740326e+03 - 1.1981352e+03 1.3366268e+03 3.0686759e+03 - 1.2035530e+03 1.3441358e+03 3.0635565e+03 - 1.2094379e+03 1.3498376e+03 3.0586922e+03 - 1.2157682e+03 1.3538556e+03 3.0541008e+03 - 1.2225171e+03 1.3563079e+03 3.0497997e+03 - 1.2296524e+03 1.3573093e+03 3.0458059e+03 - 1.2371361e+03 1.3569714e+03 3.0421360e+03 - 1.2449247e+03 1.3554037e+03 3.0388055e+03 - 1.2529688e+03 1.3527136e+03 3.0358292e+03 - 1.2612136e+03 1.3490070e+03 3.0332205e+03 - 1.2695986e+03 1.3443883e+03 3.0309915e+03 - 1.2780580e+03 1.3389603e+03 3.0291527e+03 - 1.2865206e+03 1.3328241e+03 3.0277131e+03 - 1.2949108e+03 1.3260790e+03 3.0266797e+03 - 1.3031481e+03 1.3188221e+03 3.0260576e+03 - 1.3111479e+03 1.3111479e+03 3.0258498e+03 - 1.3188221e+03 1.3031481e+03 3.0260576e+03 - 1.3260790e+03 1.2949108e+03 3.0266797e+03 - 1.3328241e+03 1.2865206e+03 3.0277131e+03 - 1.3389603e+03 1.2780580e+03 3.0291527e+03 - 1.3443883e+03 1.2695986e+03 3.0309915e+03 - 1.3490070e+03 1.2612136e+03 3.0332205e+03 - 1.3527136e+03 1.2529688e+03 3.0358292e+03 - 1.3554037e+03 1.2449247e+03 3.0388055e+03 - 1.3569714e+03 1.2371361e+03 3.0421360e+03 - 1.3573093e+03 1.2296524e+03 3.0458059e+03 - 1.3563079e+03 1.2225171e+03 3.0497997e+03 - 1.3538556e+03 1.2157682e+03 3.0541008e+03 - 1.3498376e+03 1.2094379e+03 3.0586922e+03 - 1.3441358e+03 1.2035530e+03 3.0635565e+03 - 1.3366268e+03 1.1981352e+03 3.0686759e+03 - 1.3271817e+03 1.1932009e+03 3.0740326e+03 - 1.3156636e+03 1.1887617e+03 3.0796087e+03 - 1.3019266e+03 1.1848247e+03 3.0853865e+03 - 1.2858133e+03 1.1813927e+03 3.0913481e+03 - 1.2671529e+03 1.1784645e+03 3.0974759e+03 - 1.2457583e+03 1.1760350e+03 3.1037520e+03 - 1.2214241e+03 1.1740956e+03 3.1101582e+03 - 1.1939237e+03 1.1726340e+03 3.1166755e+03 - 1.1630071e+03 1.1716346e+03 3.1232837e+03 - 1.1283995e+03 1.1710780e+03 3.1299603e+03 - 1.0898003e+03 1.1709412e+03 3.1366803e+03 - 1.0468849e+03 1.1711967e+03 3.1434143e+03 - 9.9930849e+02 1.1718123e+03 3.1501276e+03 - 9.4671430e+02 1.1727502e+03 3.1567780e+03 - 8.8874741e+02 1.1739661e+03 3.1633148e+03 - 8.2507563e+02 1.1754084e+03 3.1696764e+03 - 7.5541889e+02 1.1770172e+03 3.1757892e+03 - 6.7958780e+02 1.1787243e+03 3.1815666e+03 - 5.9753023e+02 1.1804534e+03 3.1869096e+03 - 5.0938244e+02 1.1821220e+03 3.1917091e+03 - 4.1551810e+02 1.1836444e+03 3.1958501e+03 - 3.1658511e+02 1.1849364e+03 3.1992186e+03 - 2.1351871e+02 1.1859220e+03 3.2017108e+03 - 1.0752068e+02 1.1865401e+03 3.2032428e+03 - 2.4067136e-09 1.1867507e+03 3.2037598e+03 - -1.0752068e+02 1.1865401e+03 3.2032428e+03 - -2.1351871e+02 1.1859220e+03 3.2017108e+03 - -3.1658511e+02 1.1849364e+03 3.1992186e+03 - -4.1551810e+02 1.1836444e+03 3.1958501e+03 - -5.0938244e+02 1.1821220e+03 3.1917091e+03 - -5.9753023e+02 1.1804534e+03 3.1869096e+03 - -6.7958780e+02 1.1787243e+03 3.1815666e+03 - -7.5541889e+02 1.1770172e+03 3.1757892e+03 - -8.2507563e+02 1.1754084e+03 3.1696764e+03 - -8.8874741e+02 1.1739661e+03 3.1633148e+03 - -9.4671430e+02 1.1727502e+03 3.1567780e+03 - -9.9930849e+02 1.1718123e+03 3.1501276e+03 - -1.0468849e+03 1.1711967e+03 3.1434143e+03 - -1.0898003e+03 1.1709412e+03 3.1366803e+03 - -1.1283995e+03 1.1710780e+03 3.1299603e+03 - -1.1630071e+03 1.1716346e+03 3.1232837e+03 - -1.1939237e+03 1.1726340e+03 3.1166755e+03 - -1.2214241e+03 1.1740956e+03 3.1101582e+03 - -1.2457583e+03 1.1760350e+03 3.1037520e+03 - -1.2671529e+03 1.1784645e+03 3.0974759e+03 - -1.2858133e+03 1.1813927e+03 3.0913481e+03 - -1.3019266e+03 1.1848247e+03 3.0853865e+03 - -1.3156636e+03 1.1887617e+03 3.0796087e+03 - -1.3271817e+03 1.1932009e+03 3.0740326e+03 - -1.3366268e+03 1.1981352e+03 3.0686759e+03 - -1.3441358e+03 1.2035530e+03 3.0635565e+03 - -1.3498376e+03 1.2094379e+03 3.0586922e+03 - -1.3538556e+03 1.2157682e+03 3.0541008e+03 - -1.3563079e+03 1.2225171e+03 3.0497997e+03 - -1.3573093e+03 1.2296524e+03 3.0458059e+03 - -1.3569714e+03 1.2371361e+03 3.0421360e+03 - -1.3554037e+03 1.2449247e+03 3.0388055e+03 - -1.3527136e+03 1.2529688e+03 3.0358292e+03 - -1.3490070e+03 1.2612136e+03 3.0332205e+03 - -1.3443883e+03 1.2695986e+03 3.0309915e+03 - -1.3389603e+03 1.2780580e+03 3.0291527e+03 - -1.3328241e+03 1.2865206e+03 3.0277131e+03 - -1.3260790e+03 1.2949108e+03 3.0266797e+03 - -1.3188221e+03 1.3031481e+03 3.0260576e+03 - -1.3111479e+03 1.3111479e+03 3.0258498e+03 - -1.3031481e+03 1.3188221e+03 3.0260576e+03 - -1.2949108e+03 1.3260790e+03 3.0266797e+03 - -1.2865206e+03 1.3328241e+03 3.0277131e+03 - -1.2780580e+03 1.3389603e+03 3.0291527e+03 - -1.2695986e+03 1.3443883e+03 3.0309915e+03 - -1.2612136e+03 1.3490070e+03 3.0332205e+03 - -1.2529688e+03 1.3527136e+03 3.0358292e+03 - -1.2449247e+03 1.3554037e+03 3.0388055e+03 - -1.2371361e+03 1.3569714e+03 3.0421360e+03 - -1.2296524e+03 1.3573093e+03 3.0458059e+03 - -1.2225171e+03 1.3563079e+03 3.0497997e+03 - -1.2157682e+03 1.3538556e+03 3.0541008e+03 - -1.2094379e+03 1.3498376e+03 3.0586922e+03 - -1.2035530e+03 1.3441358e+03 3.0635565e+03 - -1.1981352e+03 1.3366268e+03 3.0686759e+03 - -1.1932009e+03 1.3271817e+03 3.0740326e+03 - -1.1887617e+03 1.3156636e+03 3.0796087e+03 - -1.1848247e+03 1.3019266e+03 3.0853865e+03 - -1.1813927e+03 1.2858133e+03 3.0913481e+03 - -1.1784645e+03 1.2671529e+03 3.0974759e+03 - -1.1760350e+03 1.2457583e+03 3.1037520e+03 - -1.1740956e+03 1.2214241e+03 3.1101582e+03 - -1.1726340e+03 1.1939237e+03 3.1166755e+03 - -1.1716346e+03 1.1630071e+03 3.1232837e+03 - -1.1710780e+03 1.1283995e+03 3.1299603e+03 - -1.1709412e+03 1.0898003e+03 3.1366803e+03 - -1.1711967e+03 1.0468849e+03 3.1434143e+03 - -1.1718123e+03 9.9930849e+02 3.1501276e+03 - -1.1727502e+03 9.4671430e+02 3.1567780e+03 - -1.1739661e+03 8.8874741e+02 3.1633148e+03 - -1.1754084e+03 8.2507563e+02 3.1696764e+03 - -1.1770172e+03 7.5541889e+02 3.1757892e+03 - -1.1787243e+03 6.7958780e+02 3.1815666e+03 - -1.1804534e+03 5.9753023e+02 3.1869096e+03 - -1.1821220e+03 5.0938244e+02 3.1917091e+03 - -1.1836444e+03 4.1551810e+02 3.1958501e+03 - -1.1849364e+03 3.1658511e+02 3.1992186e+03 - -1.1859220e+03 2.1351871e+02 3.2017108e+03 - -1.1865401e+03 1.0752068e+02 3.2032428e+03 - -1.1867507e+03 0.0000000e+00 3.2037598e+03 - -1.1865401e+03 -1.0752068e+02 3.2032428e+03 - -1.1859220e+03 -2.1351871e+02 3.2017108e+03 - -1.1849364e+03 -3.1658511e+02 3.1992186e+03 - -1.1836444e+03 -4.1551810e+02 3.1958501e+03 - -1.1821220e+03 -5.0938244e+02 3.1917091e+03 - -1.1804534e+03 -5.9753023e+02 3.1869096e+03 - -1.1787243e+03 -6.7958780e+02 3.1815666e+03 - -1.1770172e+03 -7.5541889e+02 3.1757892e+03 - -1.1754084e+03 -8.2507563e+02 3.1696764e+03 - -1.1739661e+03 -8.8874741e+02 3.1633148e+03 - -1.1727502e+03 -9.4671430e+02 3.1567780e+03 - -1.1718123e+03 -9.9930849e+02 3.1501276e+03 - -1.1711967e+03 -1.0468849e+03 3.1434143e+03 - -1.1709412e+03 -1.0898003e+03 3.1366803e+03 - -1.1710780e+03 -1.1283995e+03 3.1299603e+03 - -1.1716346e+03 -1.1630071e+03 3.1232837e+03 - -1.1726340e+03 -1.1939237e+03 3.1166755e+03 - -1.1740956e+03 -1.2214241e+03 3.1101582e+03 - -1.1760350e+03 -1.2457583e+03 3.1037520e+03 - -1.1784645e+03 -1.2671529e+03 3.0974759e+03 - -1.1813927e+03 -1.2858133e+03 3.0913481e+03 - -1.1848247e+03 -1.3019266e+03 3.0853865e+03 - -1.1887617e+03 -1.3156636e+03 3.0796087e+03 - -1.1932009e+03 -1.3271817e+03 3.0740326e+03 - -1.1981352e+03 -1.3366268e+03 3.0686759e+03 - -1.2035530e+03 -1.3441358e+03 3.0635565e+03 - -1.2094379e+03 -1.3498376e+03 3.0586922e+03 - -1.2157682e+03 -1.3538556e+03 3.0541008e+03 - -1.2225171e+03 -1.3563079e+03 3.0497997e+03 - -1.2296524e+03 -1.3573093e+03 3.0458059e+03 - -1.2371361e+03 -1.3569714e+03 3.0421360e+03 - -1.2449247e+03 -1.3554037e+03 3.0388055e+03 - -1.2529688e+03 -1.3527136e+03 3.0358292e+03 - -1.2612136e+03 -1.3490070e+03 3.0332205e+03 - -1.2695986e+03 -1.3443883e+03 3.0309915e+03 - -1.2780580e+03 -1.3389603e+03 3.0291527e+03 - -1.2865206e+03 -1.3328241e+03 3.0277131e+03 - -1.2949108e+03 -1.3260790e+03 3.0266797e+03 - -1.3031481e+03 -1.3188221e+03 3.0260576e+03 - -1.3111479e+03 -1.3111479e+03 3.0258498e+03 - -1.3188221e+03 -1.3031481e+03 3.0260576e+03 - -1.3260790e+03 -1.2949108e+03 3.0266797e+03 - -1.3328241e+03 -1.2865206e+03 3.0277131e+03 - -1.3389603e+03 -1.2780580e+03 3.0291527e+03 - -1.3443883e+03 -1.2695986e+03 3.0309915e+03 - -1.3490070e+03 -1.2612136e+03 3.0332205e+03 - -1.3527136e+03 -1.2529688e+03 3.0358292e+03 - -1.3554037e+03 -1.2449247e+03 3.0388055e+03 - -1.3569714e+03 -1.2371361e+03 3.0421360e+03 - -1.3573093e+03 -1.2296524e+03 3.0458059e+03 - -1.3563079e+03 -1.2225171e+03 3.0497997e+03 - -1.3538556e+03 -1.2157682e+03 3.0541008e+03 - -1.3498376e+03 -1.2094379e+03 3.0586922e+03 - -1.3441358e+03 -1.2035530e+03 3.0635565e+03 - -1.3366268e+03 -1.1981352e+03 3.0686759e+03 - -1.3271817e+03 -1.1932009e+03 3.0740326e+03 - -1.3156636e+03 -1.1887617e+03 3.0796087e+03 - -1.3019266e+03 -1.1848247e+03 3.0853865e+03 - -1.2858133e+03 -1.1813927e+03 3.0913481e+03 - -1.2671529e+03 -1.1784645e+03 3.0974759e+03 - -1.2457583e+03 -1.1760350e+03 3.1037520e+03 - -1.2214241e+03 -1.1740956e+03 3.1101582e+03 - -1.1939237e+03 -1.1726340e+03 3.1166755e+03 - -1.1630071e+03 -1.1716346e+03 3.1232837e+03 - -1.1283995e+03 -1.1710780e+03 3.1299603e+03 - -1.0898003e+03 -1.1709412e+03 3.1366803e+03 - -1.0468849e+03 -1.1711967e+03 3.1434143e+03 - -9.9930849e+02 -1.1718123e+03 3.1501276e+03 - -9.4671430e+02 -1.1727502e+03 3.1567780e+03 - -8.8874741e+02 -1.1739661e+03 3.1633148e+03 - -8.2507563e+02 -1.1754084e+03 3.1696764e+03 - -7.5541889e+02 -1.1770172e+03 3.1757892e+03 - -6.7958780e+02 -1.1787243e+03 3.1815666e+03 - -5.9753023e+02 -1.1804534e+03 3.1869096e+03 - -5.0938244e+02 -1.1821220e+03 3.1917091e+03 - -4.1551810e+02 -1.1836444e+03 3.1958501e+03 - -3.1658511e+02 -1.1849364e+03 3.1992186e+03 - -2.1351871e+02 -1.1859220e+03 3.2017108e+03 - -1.0752068e+02 -1.1865401e+03 3.2032428e+03 - -2.4067136e-09 -1.1867507e+03 3.2037598e+03 - 1.0752068e+02 -1.1865401e+03 3.2032428e+03 - 2.1351871e+02 -1.1859220e+03 3.2017108e+03 - 3.1658511e+02 -1.1849364e+03 3.1992186e+03 - 4.1551810e+02 -1.1836444e+03 3.1958501e+03 - 5.0938244e+02 -1.1821220e+03 3.1917091e+03 - 5.9753023e+02 -1.1804534e+03 3.1869096e+03 - 6.7958780e+02 -1.1787243e+03 3.1815666e+03 - 7.5541889e+02 -1.1770172e+03 3.1757892e+03 - 8.2507563e+02 -1.1754084e+03 3.1696764e+03 - 8.8874741e+02 -1.1739661e+03 3.1633148e+03 - 9.4671430e+02 -1.1727502e+03 3.1567780e+03 - 9.9930849e+02 -1.1718123e+03 3.1501276e+03 - 1.0468849e+03 -1.1711967e+03 3.1434143e+03 - 1.0898003e+03 -1.1709412e+03 3.1366803e+03 - 1.1283995e+03 -1.1710780e+03 3.1299603e+03 - 1.1630071e+03 -1.1716346e+03 3.1232837e+03 - 1.1939237e+03 -1.1726340e+03 3.1166755e+03 - 1.2214241e+03 -1.1740956e+03 3.1101582e+03 - 1.2457583e+03 -1.1760350e+03 3.1037520e+03 - 1.2671529e+03 -1.1784645e+03 3.0974759e+03 - 1.2858133e+03 -1.1813927e+03 3.0913481e+03 - 1.3019266e+03 -1.1848247e+03 3.0853865e+03 - 1.3156636e+03 -1.1887617e+03 3.0796087e+03 - 1.3271817e+03 -1.1932009e+03 3.0740326e+03 - 1.3366268e+03 -1.1981352e+03 3.0686759e+03 - 1.3441358e+03 -1.2035530e+03 3.0635565e+03 - 1.3498376e+03 -1.2094379e+03 3.0586922e+03 - 1.3538556e+03 -1.2157682e+03 3.0541008e+03 - 1.3563079e+03 -1.2225171e+03 3.0497997e+03 - 1.3573093e+03 -1.2296524e+03 3.0458059e+03 - 1.3569714e+03 -1.2371361e+03 3.0421360e+03 - 1.3554037e+03 -1.2449247e+03 3.0388055e+03 - 1.3527136e+03 -1.2529688e+03 3.0358292e+03 - 1.3490070e+03 -1.2612136e+03 3.0332205e+03 - 1.3443883e+03 -1.2695986e+03 3.0309915e+03 - 1.3389603e+03 -1.2780580e+03 3.0291527e+03 - 1.3328241e+03 -1.2865206e+03 3.0277131e+03 - 1.3260790e+03 -1.2949108e+03 3.0266797e+03 - 1.3188221e+03 -1.3031481e+03 3.0260576e+03 - 1.3111479e+03 -1.3111479e+03 3.0258498e+03 - 1.3031481e+03 -1.3188221e+03 3.0260576e+03 - 1.2949108e+03 -1.3260790e+03 3.0266797e+03 - 1.2865206e+03 -1.3328241e+03 3.0277131e+03 - 1.2780580e+03 -1.3389603e+03 3.0291527e+03 - 1.2695986e+03 -1.3443883e+03 3.0309915e+03 - 1.2612136e+03 -1.3490070e+03 3.0332205e+03 - 1.2529688e+03 -1.3527136e+03 3.0358292e+03 - 1.2449247e+03 -1.3554037e+03 3.0388055e+03 - 1.2371361e+03 -1.3569714e+03 3.0421360e+03 - 1.2296524e+03 -1.3573093e+03 3.0458059e+03 - 1.2225171e+03 -1.3563079e+03 3.0497997e+03 - 1.2157682e+03 -1.3538556e+03 3.0541008e+03 - 1.2094379e+03 -1.3498376e+03 3.0586922e+03 - 1.2035530e+03 -1.3441358e+03 3.0635565e+03 - 1.1981352e+03 -1.3366268e+03 3.0686759e+03 - 1.1932009e+03 -1.3271817e+03 3.0740326e+03 - 1.1887617e+03 -1.3156636e+03 3.0796087e+03 - 1.1848247e+03 -1.3019266e+03 3.0853865e+03 - 1.1813927e+03 -1.2858133e+03 3.0913481e+03 - 1.1784645e+03 -1.2671529e+03 3.0974759e+03 - 1.1760350e+03 -1.2457583e+03 3.1037520e+03 - 1.1740956e+03 -1.2214241e+03 3.1101582e+03 - 1.1726340e+03 -1.1939237e+03 3.1166755e+03 - 1.1716346e+03 -1.1630071e+03 3.1232837e+03 - 1.1710780e+03 -1.1283995e+03 3.1299603e+03 - 1.1709412e+03 -1.0898003e+03 3.1366803e+03 - 1.1711967e+03 -1.0468849e+03 3.1434143e+03 - 1.1718123e+03 -9.9930849e+02 3.1501276e+03 - 1.1727502e+03 -9.4671430e+02 3.1567780e+03 - 1.1739661e+03 -8.8874741e+02 3.1633148e+03 - 1.1754084e+03 -8.2507563e+02 3.1696764e+03 - 1.1770172e+03 -7.5541889e+02 3.1757892e+03 - 1.1787243e+03 -6.7958780e+02 3.1815666e+03 - 1.1804534e+03 -5.9753023e+02 3.1869096e+03 - 1.1821220e+03 -5.0938244e+02 3.1917091e+03 - 1.1836444e+03 -4.1551810e+02 3.1958501e+03 - 1.1849364e+03 -3.1658511e+02 3.1992186e+03 - 1.1859220e+03 -2.1351871e+02 3.2017108e+03 - 1.1865401e+03 -1.0752068e+02 3.2032428e+03 - 1.1867507e+03 0.0000000e+00 3.2037598e+03 - 1.2293687e+03 -2.4067136e-09 3.1770633e+03 - 1.2291617e+03 1.1220473e+02 3.1764915e+03 - 1.2285537e+03 2.2274524e+02 3.1747994e+03 - 1.2275827e+03 3.3008925e+02 3.1720526e+03 - 1.2263066e+03 4.3294348e+02 3.1683517e+03 - 1.2247977e+03 5.3031929e+02 3.1638195e+03 - 1.2231354e+03 6.2155218e+02 3.1585894e+03 - 1.2214011e+03 7.0628195e+02 3.1527939e+03 - 1.2196731e+03 7.8440654e+02 3.1465569e+03 - 1.2180243e+03 8.5602368e+02 3.1399885e+03 - 1.2165205e+03 9.2137205e+02 3.1331830e+03 - 1.2152204e+03 9.8077922e+02 3.1262188e+03 - 1.2141755e+03 1.0346198e+03 3.1191599e+03 - 1.2134312e+03 1.0832848e+03 3.1120579e+03 - 1.2130272e+03 1.1271600e+03 3.1049544e+03 - 1.2129985e+03 1.1666128e+03 3.0978829e+03 - 1.2133759e+03 1.2019853e+03 3.0908711e+03 - 1.2141865e+03 1.2335904e+03 3.0839425e+03 - 1.2154536e+03 1.2617119e+03 3.0771177e+03 - 1.2171974e+03 1.2866059e+03 3.0704156e+03 - 1.2194343e+03 1.3085029e+03 3.0638536e+03 - 1.2221774e+03 1.3276109e+03 3.0574493e+03 - 1.2254359e+03 1.3441183e+03 3.0512196e+03 - 1.2292150e+03 1.3581970e+03 3.0451820e+03 - 1.2335154e+03 1.3700048e+03 3.0393542e+03 - 1.2383333e+03 1.3796882e+03 3.0337540e+03 - 1.2436600e+03 1.3873845e+03 3.0283999e+03 - 1.2494812e+03 1.3932238e+03 3.0233102e+03 - 1.2557772e+03 1.3973304e+03 3.0185036e+03 - 1.2625225e+03 1.3998241e+03 3.0139986e+03 - 1.2696855e+03 1.4008218e+03 3.0098132e+03 - 1.2772283e+03 1.4004375e+03 3.0059650e+03 - 1.2851069e+03 1.3987838e+03 3.0024710e+03 - 1.2932708e+03 1.3959715e+03 2.9993470e+03 - 1.3016633e+03 1.3921105e+03 2.9966075e+03 - 1.3102216e+03 1.3873092e+03 2.9942659e+03 - 1.3188770e+03 1.3816752e+03 2.9923335e+03 - 1.3275550e+03 1.3753145e+03 2.9908202e+03 - 1.3361760e+03 1.3683312e+03 2.9897336e+03 - 1.3446551e+03 1.3608277e+03 2.9890794e+03 - 1.3529034e+03 1.3529034e+03 2.9888609e+03 - 1.3608277e+03 1.3446551e+03 2.9890794e+03 - 1.3683312e+03 1.3361760e+03 2.9897336e+03 - 1.3753145e+03 1.3275550e+03 2.9908202e+03 - 1.3816752e+03 1.3188770e+03 2.9923335e+03 - 1.3873092e+03 1.3102216e+03 2.9942659e+03 - 1.3921105e+03 1.3016633e+03 2.9966075e+03 - 1.3959715e+03 1.2932708e+03 2.9993470e+03 - 1.3987838e+03 1.2851069e+03 3.0024710e+03 - 1.4004375e+03 1.2772283e+03 3.0059650e+03 - 1.4008218e+03 1.2696855e+03 3.0098132e+03 - 1.3998241e+03 1.2625225e+03 3.0139986e+03 - 1.3973304e+03 1.2557772e+03 3.0185036e+03 - 1.3932238e+03 1.2494812e+03 3.0233102e+03 - 1.3873845e+03 1.2436600e+03 3.0283999e+03 - 1.3796882e+03 1.2383333e+03 3.0337540e+03 - 1.3700048e+03 1.2335154e+03 3.0393542e+03 - 1.3581970e+03 1.2292150e+03 3.0451820e+03 - 1.3441183e+03 1.2254359e+03 3.0512196e+03 - 1.3276109e+03 1.2221774e+03 3.0574493e+03 - 1.3085029e+03 1.2194343e+03 3.0638536e+03 - 1.2866059e+03 1.2171974e+03 3.0704156e+03 - 1.2617119e+03 1.2154536e+03 3.0771177e+03 - 1.2335904e+03 1.2141865e+03 3.0839425e+03 - 1.2019853e+03 1.2133759e+03 3.0908711e+03 - 1.1666128e+03 1.2129985e+03 3.0978829e+03 - 1.1271600e+03 1.2130272e+03 3.1049544e+03 - 1.0832848e+03 1.2134312e+03 3.1120579e+03 - 1.0346198e+03 1.2141755e+03 3.1191599e+03 - 9.8077922e+02 1.2152204e+03 3.1262188e+03 - 9.2137205e+02 1.2165205e+03 3.1331830e+03 - 8.5602368e+02 1.2180243e+03 3.1399885e+03 - 7.8440654e+02 1.2196731e+03 3.1465569e+03 - 7.0628195e+02 1.2214011e+03 3.1527939e+03 - 6.2155218e+02 1.2231354e+03 3.1585894e+03 - 5.3031929e+02 1.2247977e+03 3.1638195e+03 - 4.3294348e+02 1.2263066e+03 3.1683517e+03 - 3.3008925e+02 1.2275827e+03 3.1720526e+03 - 2.2274524e+02 1.2285537e+03 3.1747994e+03 - 1.1220473e+02 1.2291617e+03 3.1764915e+03 - 0.0000000e+00 1.2293687e+03 3.1770633e+03 - -1.1220473e+02 1.2291617e+03 3.1764915e+03 - -2.2274524e+02 1.2285537e+03 3.1747994e+03 - -3.3008925e+02 1.2275827e+03 3.1720526e+03 - -4.3294348e+02 1.2263066e+03 3.1683517e+03 - -5.3031929e+02 1.2247977e+03 3.1638195e+03 - -6.2155218e+02 1.2231354e+03 3.1585894e+03 - -7.0628195e+02 1.2214011e+03 3.1527939e+03 - -7.8440654e+02 1.2196731e+03 3.1465569e+03 - -8.5602368e+02 1.2180243e+03 3.1399885e+03 - -9.2137205e+02 1.2165205e+03 3.1331830e+03 - -9.8077922e+02 1.2152204e+03 3.1262188e+03 - -1.0346198e+03 1.2141755e+03 3.1191599e+03 - -1.0832848e+03 1.2134312e+03 3.1120579e+03 - -1.1271600e+03 1.2130272e+03 3.1049544e+03 - -1.1666128e+03 1.2129985e+03 3.0978829e+03 - -1.2019853e+03 1.2133759e+03 3.0908711e+03 - -1.2335904e+03 1.2141865e+03 3.0839425e+03 - -1.2617119e+03 1.2154536e+03 3.0771177e+03 - -1.2866059e+03 1.2171974e+03 3.0704156e+03 - -1.3085029e+03 1.2194343e+03 3.0638536e+03 - -1.3276109e+03 1.2221774e+03 3.0574493e+03 - -1.3441183e+03 1.2254359e+03 3.0512196e+03 - -1.3581970e+03 1.2292150e+03 3.0451820e+03 - -1.3700048e+03 1.2335154e+03 3.0393542e+03 - -1.3796882e+03 1.2383333e+03 3.0337540e+03 - -1.3873845e+03 1.2436600e+03 3.0283999e+03 - -1.3932238e+03 1.2494812e+03 3.0233102e+03 - -1.3973304e+03 1.2557772e+03 3.0185036e+03 - -1.3998241e+03 1.2625225e+03 3.0139986e+03 - -1.4008218e+03 1.2696855e+03 3.0098132e+03 - -1.4004375e+03 1.2772283e+03 3.0059650e+03 - -1.3987838e+03 1.2851069e+03 3.0024710e+03 - -1.3959715e+03 1.2932708e+03 2.9993470e+03 - -1.3921105e+03 1.3016633e+03 2.9966075e+03 - -1.3873092e+03 1.3102216e+03 2.9942659e+03 - -1.3816752e+03 1.3188770e+03 2.9923335e+03 - -1.3753145e+03 1.3275550e+03 2.9908202e+03 - -1.3683312e+03 1.3361760e+03 2.9897336e+03 - -1.3608277e+03 1.3446551e+03 2.9890794e+03 - -1.3529034e+03 1.3529034e+03 2.9888609e+03 - -1.3446551e+03 1.3608277e+03 2.9890794e+03 - -1.3361760e+03 1.3683312e+03 2.9897336e+03 - -1.3275550e+03 1.3753145e+03 2.9908202e+03 - -1.3188770e+03 1.3816752e+03 2.9923335e+03 - -1.3102216e+03 1.3873092e+03 2.9942659e+03 - -1.3016633e+03 1.3921105e+03 2.9966075e+03 - -1.2932708e+03 1.3959715e+03 2.9993470e+03 - -1.2851069e+03 1.3987838e+03 3.0024710e+03 - -1.2772283e+03 1.4004375e+03 3.0059650e+03 - -1.2696855e+03 1.4008218e+03 3.0098132e+03 - -1.2625225e+03 1.3998241e+03 3.0139986e+03 - -1.2557772e+03 1.3973304e+03 3.0185036e+03 - -1.2494812e+03 1.3932238e+03 3.0233102e+03 - -1.2436600e+03 1.3873845e+03 3.0283999e+03 - -1.2383333e+03 1.3796882e+03 3.0337540e+03 - -1.2335154e+03 1.3700048e+03 3.0393542e+03 - -1.2292150e+03 1.3581970e+03 3.0451820e+03 - -1.2254359e+03 1.3441183e+03 3.0512196e+03 - -1.2221774e+03 1.3276109e+03 3.0574493e+03 - -1.2194343e+03 1.3085029e+03 3.0638536e+03 - -1.2171974e+03 1.2866059e+03 3.0704156e+03 - -1.2154536e+03 1.2617119e+03 3.0771177e+03 - -1.2141865e+03 1.2335904e+03 3.0839425e+03 - -1.2133759e+03 1.2019853e+03 3.0908711e+03 - -1.2129985e+03 1.1666128e+03 3.0978829e+03 - -1.2130272e+03 1.1271600e+03 3.1049544e+03 - -1.2134312e+03 1.0832848e+03 3.1120579e+03 - -1.2141755e+03 1.0346198e+03 3.1191599e+03 - -1.2152204e+03 9.8077922e+02 3.1262188e+03 - -1.2165205e+03 9.2137205e+02 3.1331830e+03 - -1.2180243e+03 8.5602368e+02 3.1399885e+03 - -1.2196731e+03 7.8440654e+02 3.1465569e+03 - -1.2214011e+03 7.0628195e+02 3.1527939e+03 - -1.2231354e+03 6.2155218e+02 3.1585894e+03 - -1.2247977e+03 5.3031929e+02 3.1638195e+03 - -1.2263066e+03 4.3294348e+02 3.1683517e+03 - -1.2275827e+03 3.3008925e+02 3.1720526e+03 - -1.2285537e+03 2.2274524e+02 3.1747994e+03 - -1.2291617e+03 1.1220473e+02 3.1764915e+03 - -1.2293687e+03 0.0000000e+00 3.1770633e+03 - -1.2291617e+03 -1.1220473e+02 3.1764915e+03 - -1.2285537e+03 -2.2274524e+02 3.1747994e+03 - -1.2275827e+03 -3.3008925e+02 3.1720526e+03 - -1.2263066e+03 -4.3294348e+02 3.1683517e+03 - -1.2247977e+03 -5.3031929e+02 3.1638195e+03 - -1.2231354e+03 -6.2155218e+02 3.1585894e+03 - -1.2214011e+03 -7.0628195e+02 3.1527939e+03 - -1.2196731e+03 -7.8440654e+02 3.1465569e+03 - -1.2180243e+03 -8.5602368e+02 3.1399885e+03 - -1.2165205e+03 -9.2137205e+02 3.1331830e+03 - -1.2152204e+03 -9.8077922e+02 3.1262188e+03 - -1.2141755e+03 -1.0346198e+03 3.1191599e+03 - -1.2134312e+03 -1.0832848e+03 3.1120579e+03 - -1.2130272e+03 -1.1271600e+03 3.1049544e+03 - -1.2129985e+03 -1.1666128e+03 3.0978829e+03 - -1.2133759e+03 -1.2019853e+03 3.0908711e+03 - -1.2141865e+03 -1.2335904e+03 3.0839425e+03 - -1.2154536e+03 -1.2617119e+03 3.0771177e+03 - -1.2171974e+03 -1.2866059e+03 3.0704156e+03 - -1.2194343e+03 -1.3085029e+03 3.0638536e+03 - -1.2221774e+03 -1.3276109e+03 3.0574493e+03 - -1.2254359e+03 -1.3441183e+03 3.0512196e+03 - -1.2292150e+03 -1.3581970e+03 3.0451820e+03 - -1.2335154e+03 -1.3700048e+03 3.0393542e+03 - -1.2383333e+03 -1.3796882e+03 3.0337540e+03 - -1.2436600e+03 -1.3873845e+03 3.0283999e+03 - -1.2494812e+03 -1.3932238e+03 3.0233102e+03 - -1.2557772e+03 -1.3973304e+03 3.0185036e+03 - -1.2625225e+03 -1.3998241e+03 3.0139986e+03 - -1.2696855e+03 -1.4008218e+03 3.0098132e+03 - -1.2772283e+03 -1.4004375e+03 3.0059650e+03 - -1.2851069e+03 -1.3987838e+03 3.0024710e+03 - -1.2932708e+03 -1.3959715e+03 2.9993470e+03 - -1.3016633e+03 -1.3921105e+03 2.9966075e+03 - -1.3102216e+03 -1.3873092e+03 2.9942659e+03 - -1.3188770e+03 -1.3816752e+03 2.9923335e+03 - -1.3275550e+03 -1.3753145e+03 2.9908202e+03 - -1.3361760e+03 -1.3683312e+03 2.9897336e+03 - -1.3446551e+03 -1.3608277e+03 2.9890794e+03 - -1.3529034e+03 -1.3529034e+03 2.9888609e+03 - -1.3608277e+03 -1.3446551e+03 2.9890794e+03 - -1.3683312e+03 -1.3361760e+03 2.9897336e+03 - -1.3753145e+03 -1.3275550e+03 2.9908202e+03 - -1.3816752e+03 -1.3188770e+03 2.9923335e+03 - -1.3873092e+03 -1.3102216e+03 2.9942659e+03 - -1.3921105e+03 -1.3016633e+03 2.9966075e+03 - -1.3959715e+03 -1.2932708e+03 2.9993470e+03 - -1.3987838e+03 -1.2851069e+03 3.0024710e+03 - -1.4004375e+03 -1.2772283e+03 3.0059650e+03 - -1.4008218e+03 -1.2696855e+03 3.0098132e+03 - -1.3998241e+03 -1.2625225e+03 3.0139986e+03 - -1.3973304e+03 -1.2557772e+03 3.0185036e+03 - -1.3932238e+03 -1.2494812e+03 3.0233102e+03 - -1.3873845e+03 -1.2436600e+03 3.0283999e+03 - -1.3796882e+03 -1.2383333e+03 3.0337540e+03 - -1.3700048e+03 -1.2335154e+03 3.0393542e+03 - -1.3581970e+03 -1.2292150e+03 3.0451820e+03 - -1.3441183e+03 -1.2254359e+03 3.0512196e+03 - -1.3276109e+03 -1.2221774e+03 3.0574493e+03 - -1.3085029e+03 -1.2194343e+03 3.0638536e+03 - -1.2866059e+03 -1.2171974e+03 3.0704156e+03 - -1.2617119e+03 -1.2154536e+03 3.0771177e+03 - -1.2335904e+03 -1.2141865e+03 3.0839425e+03 - -1.2019853e+03 -1.2133759e+03 3.0908711e+03 - -1.1666128e+03 -1.2129985e+03 3.0978829e+03 - -1.1271600e+03 -1.2130272e+03 3.1049544e+03 - -1.0832848e+03 -1.2134312e+03 3.1120579e+03 - -1.0346198e+03 -1.2141755e+03 3.1191599e+03 - -9.8077922e+02 -1.2152204e+03 3.1262188e+03 - -9.2137205e+02 -1.2165205e+03 3.1331830e+03 - -8.5602368e+02 -1.2180243e+03 3.1399885e+03 - -7.8440654e+02 -1.2196731e+03 3.1465569e+03 - -7.0628195e+02 -1.2214011e+03 3.1527939e+03 - -6.2155218e+02 -1.2231354e+03 3.1585894e+03 - -5.3031929e+02 -1.2247977e+03 3.1638195e+03 - -4.3294348e+02 -1.2263066e+03 3.1683517e+03 - -3.3008925e+02 -1.2275827e+03 3.1720526e+03 - -2.2274524e+02 -1.2285537e+03 3.1747994e+03 - -1.1220473e+02 -1.2291617e+03 3.1764915e+03 - 0.0000000e+00 -1.2293687e+03 3.1770633e+03 - 1.1220473e+02 -1.2291617e+03 3.1764915e+03 - 2.2274524e+02 -1.2285537e+03 3.1747994e+03 - 3.3008925e+02 -1.2275827e+03 3.1720526e+03 - 4.3294348e+02 -1.2263066e+03 3.1683517e+03 - 5.3031929e+02 -1.2247977e+03 3.1638195e+03 - 6.2155218e+02 -1.2231354e+03 3.1585894e+03 - 7.0628195e+02 -1.2214011e+03 3.1527939e+03 - 7.8440654e+02 -1.2196731e+03 3.1465569e+03 - 8.5602368e+02 -1.2180243e+03 3.1399885e+03 - 9.2137205e+02 -1.2165205e+03 3.1331830e+03 - 9.8077922e+02 -1.2152204e+03 3.1262188e+03 - 1.0346198e+03 -1.2141755e+03 3.1191599e+03 - 1.0832848e+03 -1.2134312e+03 3.1120579e+03 - 1.1271600e+03 -1.2130272e+03 3.1049544e+03 - 1.1666128e+03 -1.2129985e+03 3.0978829e+03 - 1.2019853e+03 -1.2133759e+03 3.0908711e+03 - 1.2335904e+03 -1.2141865e+03 3.0839425e+03 - 1.2617119e+03 -1.2154536e+03 3.0771177e+03 - 1.2866059e+03 -1.2171974e+03 3.0704156e+03 - 1.3085029e+03 -1.2194343e+03 3.0638536e+03 - 1.3276109e+03 -1.2221774e+03 3.0574493e+03 - 1.3441183e+03 -1.2254359e+03 3.0512196e+03 - 1.3581970e+03 -1.2292150e+03 3.0451820e+03 - 1.3700048e+03 -1.2335154e+03 3.0393542e+03 - 1.3796882e+03 -1.2383333e+03 3.0337540e+03 - 1.3873845e+03 -1.2436600e+03 3.0283999e+03 - 1.3932238e+03 -1.2494812e+03 3.0233102e+03 - 1.3973304e+03 -1.2557772e+03 3.0185036e+03 - 1.3998241e+03 -1.2625225e+03 3.0139986e+03 - 1.4008218e+03 -1.2696855e+03 3.0098132e+03 - 1.4004375e+03 -1.2772283e+03 3.0059650e+03 - 1.3987838e+03 -1.2851069e+03 3.0024710e+03 - 1.3959715e+03 -1.2932708e+03 2.9993470e+03 - 1.3921105e+03 -1.3016633e+03 2.9966075e+03 - 1.3873092e+03 -1.3102216e+03 2.9942659e+03 - 1.3816752e+03 -1.3188770e+03 2.9923335e+03 - 1.3753145e+03 -1.3275550e+03 2.9908202e+03 - 1.3683312e+03 -1.3361760e+03 2.9897336e+03 - 1.3608277e+03 -1.3446551e+03 2.9890794e+03 - 1.3529034e+03 -1.3529034e+03 2.9888609e+03 - 1.3446551e+03 -1.3608277e+03 2.9890794e+03 - 1.3361760e+03 -1.3683312e+03 2.9897336e+03 - 1.3275550e+03 -1.3753145e+03 2.9908202e+03 - 1.3188770e+03 -1.3816752e+03 2.9923335e+03 - 1.3102216e+03 -1.3873092e+03 2.9942659e+03 - 1.3016633e+03 -1.3921105e+03 2.9966075e+03 - 1.2932708e+03 -1.3959715e+03 2.9993470e+03 - 1.2851069e+03 -1.3987838e+03 3.0024710e+03 - 1.2772283e+03 -1.4004375e+03 3.0059650e+03 - 1.2696855e+03 -1.4008218e+03 3.0098132e+03 - 1.2625225e+03 -1.3998241e+03 3.0139986e+03 - 1.2557772e+03 -1.3973304e+03 3.0185036e+03 - 1.2494812e+03 -1.3932238e+03 3.0233102e+03 - 1.2436600e+03 -1.3873845e+03 3.0283999e+03 - 1.2383333e+03 -1.3796882e+03 3.0337540e+03 - 1.2335154e+03 -1.3700048e+03 3.0393542e+03 - 1.2292150e+03 -1.3581970e+03 3.0451820e+03 - 1.2254359e+03 -1.3441183e+03 3.0512196e+03 - 1.2221774e+03 -1.3276109e+03 3.0574493e+03 - 1.2194343e+03 -1.3085029e+03 3.0638536e+03 - 1.2171974e+03 -1.2866059e+03 3.0704156e+03 - 1.2154536e+03 -1.2617119e+03 3.0771177e+03 - 1.2141865e+03 -1.2335904e+03 3.0839425e+03 - 1.2133759e+03 -1.2019853e+03 3.0908711e+03 - 1.2129985e+03 -1.1666128e+03 3.0978829e+03 - 1.2130272e+03 -1.1271600e+03 3.1049544e+03 - 1.2134312e+03 -1.0832848e+03 3.1120579e+03 - 1.2141755e+03 -1.0346198e+03 3.1191599e+03 - 1.2152204e+03 -9.8077922e+02 3.1262188e+03 - 1.2165205e+03 -9.2137205e+02 3.1331830e+03 - 1.2180243e+03 -8.5602368e+02 3.1399885e+03 - 1.2196731e+03 -7.8440654e+02 3.1465569e+03 - 1.2214011e+03 -7.0628195e+02 3.1527939e+03 - 1.2231354e+03 -6.2155218e+02 3.1585894e+03 - 1.2247977e+03 -5.3031929e+02 3.1638195e+03 - 1.2263066e+03 -4.3294348e+02 3.1683517e+03 - 1.2275827e+03 -3.3008925e+02 3.1720526e+03 - 1.2285537e+03 -2.2274524e+02 3.1747994e+03 - 1.2291617e+03 -1.1220473e+02 3.1764915e+03 - 1.2293687e+03 2.4067136e-09 3.1770633e+03 - 1.2719605e+03 0.0000000e+00 3.1492041e+03 - 1.2717610e+03 1.1704474e+02 3.1485706e+03 - 1.2711745e+03 2.3226398e+02 3.1466982e+03 - 1.2702355e+03 3.4398646e+02 3.1436665e+03 - 1.2689970e+03 4.5081860e+02 3.1395964e+03 - 1.2675248e+03 5.5171690e+02 3.1346341e+03 - 1.2658917e+03 6.4600501e+02 3.1289361e+03 - 1.2641722e+03 7.3334479e+02 3.1226554e+03 - 1.2624392e+03 8.1367848e+02 3.1159324e+03 - 1.2607609e+03 8.8715915e+02 3.1088892e+03 - 1.2592004e+03 9.5408298e+02 3.1016280e+03 - 1.2578146e+03 1.0148313e+03 3.0942315e+03 - 1.2566555e+03 1.0698256e+03 3.0867655e+03 - 1.2557696e+03 1.1194952e+03 3.0792812e+03 - 1.2551993e+03 1.1642565e+03 3.0718188e+03 - 1.2549829e+03 1.2045001e+03 3.0644095e+03 - 1.2551555e+03 1.2405846e+03 3.0570787e+03 - 1.2557484e+03 1.2728351e+03 3.0498474e+03 - 1.2567900e+03 1.3015431e+03 3.0427336e+03 - 1.2583052e+03 1.3269699e+03 3.0357542e+03 - 1.2603155e+03 1.3493489e+03 3.0289251e+03 - 1.2628387e+03 1.3688896e+03 3.0222622e+03 - 1.2658888e+03 1.3857808e+03 3.0157817e+03 - 1.2694752e+03 1.4001944e+03 3.0095004e+03 - 1.2736027e+03 1.4122881e+03 3.0034358e+03 - 1.2782711e+03 1.4222082e+03 2.9976058e+03 - 1.2834748e+03 1.4300919e+03 2.9920292e+03 - 1.2892021e+03 1.4360696e+03 2.9867252e+03 - 1.2954355e+03 1.4402663e+03 2.9817130e+03 - 1.3021509e+03 1.4428034e+03 2.9770123e+03 - 1.3093174e+03 1.4437992e+03 2.9726424e+03 - 1.3168974e+03 1.4433703e+03 2.9686220e+03 - 1.3248464e+03 1.4416321e+03 2.9649694e+03 - 1.3331129e+03 1.4386989e+03 2.9617017e+03 - 1.3416383e+03 1.4346843e+03 2.9588348e+03 - 1.3503573e+03 1.4297014e+03 2.9563830e+03 - 1.3591984e+03 1.4238621e+03 2.9543590e+03 - 1.3680833e+03 1.4172777e+03 2.9527733e+03 - 1.3769283e+03 1.4100575e+03 2.9516345e+03 - 1.3856444e+03 1.4023090e+03 2.9509488e+03 - 1.3941373e+03 1.3941373e+03 2.9507198e+03 - 1.4023090e+03 1.3856444e+03 2.9509488e+03 - 1.4100575e+03 1.3769283e+03 2.9516345e+03 - 1.4172777e+03 1.3680833e+03 2.9527733e+03 - 1.4238621e+03 1.3591984e+03 2.9543590e+03 - 1.4297014e+03 1.3503573e+03 2.9563830e+03 - 1.4346843e+03 1.3416383e+03 2.9588348e+03 - 1.4386989e+03 1.3331129e+03 2.9617017e+03 - 1.4416321e+03 1.3248464e+03 2.9649694e+03 - 1.4433703e+03 1.3168974e+03 2.9686220e+03 - 1.4437992e+03 1.3093174e+03 2.9726424e+03 - 1.4428034e+03 1.3021509e+03 2.9770123e+03 - 1.4402663e+03 1.2954355e+03 2.9817130e+03 - 1.4360696e+03 1.2892021e+03 2.9867252e+03 - 1.4300919e+03 1.2834748e+03 2.9920292e+03 - 1.4222082e+03 1.2782711e+03 2.9976058e+03 - 1.4122881e+03 1.2736027e+03 3.0034358e+03 - 1.4001944e+03 1.2694752e+03 3.0095004e+03 - 1.3857808e+03 1.2658888e+03 3.0157817e+03 - 1.3688896e+03 1.2628387e+03 3.0222622e+03 - 1.3493489e+03 1.2603155e+03 3.0289251e+03 - 1.3269699e+03 1.2583052e+03 3.0357542e+03 - 1.3015431e+03 1.2567900e+03 3.0427336e+03 - 1.2728351e+03 1.2557484e+03 3.0498474e+03 - 1.2405846e+03 1.2551555e+03 3.0570787e+03 - 1.2045001e+03 1.2549829e+03 3.0644095e+03 - 1.1642565e+03 1.2551993e+03 3.0718188e+03 - 1.1194952e+03 1.2557696e+03 3.0792812e+03 - 1.0698256e+03 1.2566555e+03 3.0867655e+03 - 1.0148313e+03 1.2578146e+03 3.0942315e+03 - 9.5408298e+02 1.2592004e+03 3.1016280e+03 - 8.8715915e+02 1.2607609e+03 3.1088892e+03 - 8.1367848e+02 1.2624392e+03 3.1159324e+03 - 7.3334479e+02 1.2641722e+03 3.1226554e+03 - 6.4600501e+02 1.2658917e+03 3.1289361e+03 - 5.5171690e+02 1.2675248e+03 3.1346341e+03 - 4.5081860e+02 1.2689970e+03 3.1395964e+03 - 3.4398646e+02 1.2702355e+03 3.1436665e+03 - 2.3226398e+02 1.2711745e+03 3.1466982e+03 - 1.1704474e+02 1.2717610e+03 3.1485706e+03 - -2.4067136e-09 1.2719605e+03 3.1492041e+03 - -1.1704474e+02 1.2717610e+03 3.1485706e+03 - -2.3226398e+02 1.2711745e+03 3.1466982e+03 - -3.4398646e+02 1.2702355e+03 3.1436665e+03 - -4.5081860e+02 1.2689970e+03 3.1395964e+03 - -5.5171690e+02 1.2675248e+03 3.1346341e+03 - -6.4600501e+02 1.2658917e+03 3.1289361e+03 - -7.3334479e+02 1.2641722e+03 3.1226554e+03 - -8.1367848e+02 1.2624392e+03 3.1159324e+03 - -8.8715915e+02 1.2607609e+03 3.1088892e+03 - -9.5408298e+02 1.2592004e+03 3.1016280e+03 - -1.0148313e+03 1.2578146e+03 3.0942315e+03 - -1.0698256e+03 1.2566555e+03 3.0867655e+03 - -1.1194952e+03 1.2557696e+03 3.0792812e+03 - -1.1642565e+03 1.2551993e+03 3.0718188e+03 - -1.2045001e+03 1.2549829e+03 3.0644095e+03 - -1.2405846e+03 1.2551555e+03 3.0570787e+03 - -1.2728351e+03 1.2557484e+03 3.0498474e+03 - -1.3015431e+03 1.2567900e+03 3.0427336e+03 - -1.3269699e+03 1.2583052e+03 3.0357542e+03 - -1.3493489e+03 1.2603155e+03 3.0289251e+03 - -1.3688896e+03 1.2628387e+03 3.0222622e+03 - -1.3857808e+03 1.2658888e+03 3.0157817e+03 - -1.4001944e+03 1.2694752e+03 3.0095004e+03 - -1.4122881e+03 1.2736027e+03 3.0034358e+03 - -1.4222082e+03 1.2782711e+03 2.9976058e+03 - -1.4300919e+03 1.2834748e+03 2.9920292e+03 - -1.4360696e+03 1.2892021e+03 2.9867252e+03 - -1.4402663e+03 1.2954355e+03 2.9817130e+03 - -1.4428034e+03 1.3021509e+03 2.9770123e+03 - -1.4437992e+03 1.3093174e+03 2.9726424e+03 - -1.4433703e+03 1.3168974e+03 2.9686220e+03 - -1.4416321e+03 1.3248464e+03 2.9649694e+03 - -1.4386989e+03 1.3331129e+03 2.9617017e+03 - -1.4346843e+03 1.3416383e+03 2.9588348e+03 - -1.4297014e+03 1.3503573e+03 2.9563830e+03 - -1.4238621e+03 1.3591984e+03 2.9543590e+03 - -1.4172777e+03 1.3680833e+03 2.9527733e+03 - -1.4100575e+03 1.3769283e+03 2.9516345e+03 - -1.4023090e+03 1.3856444e+03 2.9509488e+03 - -1.3941373e+03 1.3941373e+03 2.9507198e+03 - -1.3856444e+03 1.4023090e+03 2.9509488e+03 - -1.3769283e+03 1.4100575e+03 2.9516345e+03 - -1.3680833e+03 1.4172777e+03 2.9527733e+03 - -1.3591984e+03 1.4238621e+03 2.9543590e+03 - -1.3503573e+03 1.4297014e+03 2.9563830e+03 - -1.3416383e+03 1.4346843e+03 2.9588348e+03 - -1.3331129e+03 1.4386989e+03 2.9617017e+03 - -1.3248464e+03 1.4416321e+03 2.9649694e+03 - -1.3168974e+03 1.4433703e+03 2.9686220e+03 - -1.3093174e+03 1.4437992e+03 2.9726424e+03 - -1.3021509e+03 1.4428034e+03 2.9770123e+03 - -1.2954355e+03 1.4402663e+03 2.9817130e+03 - -1.2892021e+03 1.4360696e+03 2.9867252e+03 - -1.2834748e+03 1.4300919e+03 2.9920292e+03 - -1.2782711e+03 1.4222082e+03 2.9976058e+03 - -1.2736027e+03 1.4122881e+03 3.0034358e+03 - -1.2694752e+03 1.4001944e+03 3.0095004e+03 - -1.2658888e+03 1.3857808e+03 3.0157817e+03 - -1.2628387e+03 1.3688896e+03 3.0222622e+03 - -1.2603155e+03 1.3493489e+03 3.0289251e+03 - -1.2583052e+03 1.3269699e+03 3.0357542e+03 - -1.2567900e+03 1.3015431e+03 3.0427336e+03 - -1.2557484e+03 1.2728351e+03 3.0498474e+03 - -1.2551555e+03 1.2405846e+03 3.0570787e+03 - -1.2549829e+03 1.2045001e+03 3.0644095e+03 - -1.2551993e+03 1.1642565e+03 3.0718188e+03 - -1.2557696e+03 1.1194952e+03 3.0792812e+03 - -1.2566555e+03 1.0698256e+03 3.0867655e+03 - -1.2578146e+03 1.0148313e+03 3.0942315e+03 - -1.2592004e+03 9.5408298e+02 3.1016280e+03 - -1.2607609e+03 8.8715915e+02 3.1088892e+03 - -1.2624392e+03 8.1367848e+02 3.1159324e+03 - -1.2641722e+03 7.3334479e+02 3.1226554e+03 - -1.2658917e+03 6.4600501e+02 3.1289361e+03 - -1.2675248e+03 5.5171690e+02 3.1346341e+03 - -1.2689970e+03 4.5081860e+02 3.1395964e+03 - -1.2702355e+03 3.4398646e+02 3.1436665e+03 - -1.2711745e+03 2.3226398e+02 3.1466982e+03 - -1.2717610e+03 1.1704474e+02 3.1485706e+03 - -1.2719605e+03 -2.4067136e-09 3.1492041e+03 - -1.2717610e+03 -1.1704474e+02 3.1485706e+03 - -1.2711745e+03 -2.3226398e+02 3.1466982e+03 - -1.2702355e+03 -3.4398646e+02 3.1436665e+03 - -1.2689970e+03 -4.5081860e+02 3.1395964e+03 - -1.2675248e+03 -5.5171690e+02 3.1346341e+03 - -1.2658917e+03 -6.4600501e+02 3.1289361e+03 - -1.2641722e+03 -7.3334479e+02 3.1226554e+03 - -1.2624392e+03 -8.1367848e+02 3.1159324e+03 - -1.2607609e+03 -8.8715915e+02 3.1088892e+03 - -1.2592004e+03 -9.5408298e+02 3.1016280e+03 - -1.2578146e+03 -1.0148313e+03 3.0942315e+03 - -1.2566555e+03 -1.0698256e+03 3.0867655e+03 - -1.2557696e+03 -1.1194952e+03 3.0792812e+03 - -1.2551993e+03 -1.1642565e+03 3.0718188e+03 - -1.2549829e+03 -1.2045001e+03 3.0644095e+03 - -1.2551555e+03 -1.2405846e+03 3.0570787e+03 - -1.2557484e+03 -1.2728351e+03 3.0498474e+03 - -1.2567900e+03 -1.3015431e+03 3.0427336e+03 - -1.2583052e+03 -1.3269699e+03 3.0357542e+03 - -1.2603155e+03 -1.3493489e+03 3.0289251e+03 - -1.2628387e+03 -1.3688896e+03 3.0222622e+03 - -1.2658888e+03 -1.3857808e+03 3.0157817e+03 - -1.2694752e+03 -1.4001944e+03 3.0095004e+03 - -1.2736027e+03 -1.4122881e+03 3.0034358e+03 - -1.2782711e+03 -1.4222082e+03 2.9976058e+03 - -1.2834748e+03 -1.4300919e+03 2.9920292e+03 - -1.2892021e+03 -1.4360696e+03 2.9867252e+03 - -1.2954355e+03 -1.4402663e+03 2.9817130e+03 - -1.3021509e+03 -1.4428034e+03 2.9770123e+03 - -1.3093174e+03 -1.4437992e+03 2.9726424e+03 - -1.3168974e+03 -1.4433703e+03 2.9686220e+03 - -1.3248464e+03 -1.4416321e+03 2.9649694e+03 - -1.3331129e+03 -1.4386989e+03 2.9617017e+03 - -1.3416383e+03 -1.4346843e+03 2.9588348e+03 - -1.3503573e+03 -1.4297014e+03 2.9563830e+03 - -1.3591984e+03 -1.4238621e+03 2.9543590e+03 - -1.3680833e+03 -1.4172777e+03 2.9527733e+03 - -1.3769283e+03 -1.4100575e+03 2.9516345e+03 - -1.3856444e+03 -1.4023090e+03 2.9509488e+03 - -1.3941373e+03 -1.3941373e+03 2.9507198e+03 - -1.4023090e+03 -1.3856444e+03 2.9509488e+03 - -1.4100575e+03 -1.3769283e+03 2.9516345e+03 - -1.4172777e+03 -1.3680833e+03 2.9527733e+03 - -1.4238621e+03 -1.3591984e+03 2.9543590e+03 - -1.4297014e+03 -1.3503573e+03 2.9563830e+03 - -1.4346843e+03 -1.3416383e+03 2.9588348e+03 - -1.4386989e+03 -1.3331129e+03 2.9617017e+03 - -1.4416321e+03 -1.3248464e+03 2.9649694e+03 - -1.4433703e+03 -1.3168974e+03 2.9686220e+03 - -1.4437992e+03 -1.3093174e+03 2.9726424e+03 - -1.4428034e+03 -1.3021509e+03 2.9770123e+03 - -1.4402663e+03 -1.2954355e+03 2.9817130e+03 - -1.4360696e+03 -1.2892021e+03 2.9867252e+03 - -1.4300919e+03 -1.2834748e+03 2.9920292e+03 - -1.4222082e+03 -1.2782711e+03 2.9976058e+03 - -1.4122881e+03 -1.2736027e+03 3.0034358e+03 - -1.4001944e+03 -1.2694752e+03 3.0095004e+03 - -1.3857808e+03 -1.2658888e+03 3.0157817e+03 - -1.3688896e+03 -1.2628387e+03 3.0222622e+03 - -1.3493489e+03 -1.2603155e+03 3.0289251e+03 - -1.3269699e+03 -1.2583052e+03 3.0357542e+03 - -1.3015431e+03 -1.2567900e+03 3.0427336e+03 - -1.2728351e+03 -1.2557484e+03 3.0498474e+03 - -1.2405846e+03 -1.2551555e+03 3.0570787e+03 - -1.2045001e+03 -1.2549829e+03 3.0644095e+03 - -1.1642565e+03 -1.2551993e+03 3.0718188e+03 - -1.1194952e+03 -1.2557696e+03 3.0792812e+03 - -1.0698256e+03 -1.2566555e+03 3.0867655e+03 - -1.0148313e+03 -1.2578146e+03 3.0942315e+03 - -9.5408298e+02 -1.2592004e+03 3.1016280e+03 - -8.8715915e+02 -1.2607609e+03 3.1088892e+03 - -8.1367848e+02 -1.2624392e+03 3.1159324e+03 - -7.3334479e+02 -1.2641722e+03 3.1226554e+03 - -6.4600501e+02 -1.2658917e+03 3.1289361e+03 - -5.5171690e+02 -1.2675248e+03 3.1346341e+03 - -4.5081860e+02 -1.2689970e+03 3.1395964e+03 - -3.4398646e+02 -1.2702355e+03 3.1436665e+03 - -2.3226398e+02 -1.2711745e+03 3.1466982e+03 - -1.1704474e+02 -1.2717610e+03 3.1485706e+03 - 2.4067136e-09 -1.2719605e+03 3.1492041e+03 - 1.1704474e+02 -1.2717610e+03 3.1485706e+03 - 2.3226398e+02 -1.2711745e+03 3.1466982e+03 - 3.4398646e+02 -1.2702355e+03 3.1436665e+03 - 4.5081860e+02 -1.2689970e+03 3.1395964e+03 - 5.5171690e+02 -1.2675248e+03 3.1346341e+03 - 6.4600501e+02 -1.2658917e+03 3.1289361e+03 - 7.3334479e+02 -1.2641722e+03 3.1226554e+03 - 8.1367848e+02 -1.2624392e+03 3.1159324e+03 - 8.8715915e+02 -1.2607609e+03 3.1088892e+03 - 9.5408298e+02 -1.2592004e+03 3.1016280e+03 - 1.0148313e+03 -1.2578146e+03 3.0942315e+03 - 1.0698256e+03 -1.2566555e+03 3.0867655e+03 - 1.1194952e+03 -1.2557696e+03 3.0792812e+03 - 1.1642565e+03 -1.2551993e+03 3.0718188e+03 - 1.2045001e+03 -1.2549829e+03 3.0644095e+03 - 1.2405846e+03 -1.2551555e+03 3.0570787e+03 - 1.2728351e+03 -1.2557484e+03 3.0498474e+03 - 1.3015431e+03 -1.2567900e+03 3.0427336e+03 - 1.3269699e+03 -1.2583052e+03 3.0357542e+03 - 1.3493489e+03 -1.2603155e+03 3.0289251e+03 - 1.3688896e+03 -1.2628387e+03 3.0222622e+03 - 1.3857808e+03 -1.2658888e+03 3.0157817e+03 - 1.4001944e+03 -1.2694752e+03 3.0095004e+03 - 1.4122881e+03 -1.2736027e+03 3.0034358e+03 - 1.4222082e+03 -1.2782711e+03 2.9976058e+03 - 1.4300919e+03 -1.2834748e+03 2.9920292e+03 - 1.4360696e+03 -1.2892021e+03 2.9867252e+03 - 1.4402663e+03 -1.2954355e+03 2.9817130e+03 - 1.4428034e+03 -1.3021509e+03 2.9770123e+03 - 1.4437992e+03 -1.3093174e+03 2.9726424e+03 - 1.4433703e+03 -1.3168974e+03 2.9686220e+03 - 1.4416321e+03 -1.3248464e+03 2.9649694e+03 - 1.4386989e+03 -1.3331129e+03 2.9617017e+03 - 1.4346843e+03 -1.3416383e+03 2.9588348e+03 - 1.4297014e+03 -1.3503573e+03 2.9563830e+03 - 1.4238621e+03 -1.3591984e+03 2.9543590e+03 - 1.4172777e+03 -1.3680833e+03 2.9527733e+03 - 1.4100575e+03 -1.3769283e+03 2.9516345e+03 - 1.4023090e+03 -1.3856444e+03 2.9509488e+03 - 1.3941373e+03 -1.3941373e+03 2.9507198e+03 - 1.3856444e+03 -1.4023090e+03 2.9509488e+03 - 1.3769283e+03 -1.4100575e+03 2.9516345e+03 - 1.3680833e+03 -1.4172777e+03 2.9527733e+03 - 1.3591984e+03 -1.4238621e+03 2.9543590e+03 - 1.3503573e+03 -1.4297014e+03 2.9563830e+03 - 1.3416383e+03 -1.4346843e+03 2.9588348e+03 - 1.3331129e+03 -1.4386989e+03 2.9617017e+03 - 1.3248464e+03 -1.4416321e+03 2.9649694e+03 - 1.3168974e+03 -1.4433703e+03 2.9686220e+03 - 1.3093174e+03 -1.4437992e+03 2.9726424e+03 - 1.3021509e+03 -1.4428034e+03 2.9770123e+03 - 1.2954355e+03 -1.4402663e+03 2.9817130e+03 - 1.2892021e+03 -1.4360696e+03 2.9867252e+03 - 1.2834748e+03 -1.4300919e+03 2.9920292e+03 - 1.2782711e+03 -1.4222082e+03 2.9976058e+03 - 1.2736027e+03 -1.4122881e+03 3.0034358e+03 - 1.2694752e+03 -1.4001944e+03 3.0095004e+03 - 1.2658888e+03 -1.3857808e+03 3.0157817e+03 - 1.2628387e+03 -1.3688896e+03 3.0222622e+03 - 1.2603155e+03 -1.3493489e+03 3.0289251e+03 - 1.2583052e+03 -1.3269699e+03 3.0357542e+03 - 1.2567900e+03 -1.3015431e+03 3.0427336e+03 - 1.2557484e+03 -1.2728351e+03 3.0498474e+03 - 1.2551555e+03 -1.2405846e+03 3.0570787e+03 - 1.2549829e+03 -1.2045001e+03 3.0644095e+03 - 1.2551993e+03 -1.1642565e+03 3.0718188e+03 - 1.2557696e+03 -1.1194952e+03 3.0792812e+03 - 1.2566555e+03 -1.0698256e+03 3.0867655e+03 - 1.2578146e+03 -1.0148313e+03 3.0942315e+03 - 1.2592004e+03 -9.5408298e+02 3.1016280e+03 - 1.2607609e+03 -8.8715915e+02 3.1088892e+03 - 1.2624392e+03 -8.1367848e+02 3.1159324e+03 - 1.2641722e+03 -7.3334479e+02 3.1226554e+03 - 1.2658917e+03 -6.4600501e+02 3.1289361e+03 - 1.2675248e+03 -5.5171690e+02 3.1346341e+03 - 1.2689970e+03 -4.5081860e+02 3.1395964e+03 - 1.2702355e+03 -3.4398646e+02 3.1436665e+03 - 1.2711745e+03 -2.3226398e+02 3.1466982e+03 - 1.2717610e+03 -1.1704474e+02 3.1485706e+03 - 1.2719605e+03 -4.8134273e-09 3.1492041e+03 - 1.3145155e+03 0.0000000e+00 3.1201602e+03 - 1.3143287e+03 1.2206739e+02 3.1194563e+03 - 1.3137784e+03 2.4212372e+02 3.1173790e+03 - 1.3128941e+03 3.5833987e+02 3.1140256e+03 - 1.3117206e+03 4.6921180e+02 3.1095421e+03 - 1.3103144e+03 5.7364042e+02 3.1041037e+03 - 1.3087386e+03 6.7094419e+02 3.0978945e+03 - 1.3070587e+03 7.6081816e+02 3.0910916e+03 - 1.3053398e+03 8.4326135e+02 3.0838540e+03 - 1.3036448e+03 9.1849372e+02 3.0763165e+03 - 1.3020329e+03 9.8687841e+02 3.0685891e+03 - 1.3005599e+03 1.0488574e+03 3.0607581e+03 - 1.2992781e+03 1.1049035e+03 3.0528898e+03 - 1.2982362e+03 1.1554871e+03 3.0450341e+03 - 1.2974796e+03 1.2010562e+03 3.0372280e+03 - 1.2970511e+03 1.2420242e+03 3.0294998e+03 - 1.2969903e+03 1.2787664e+03 3.0218711e+03 - 1.2973341e+03 1.3116183e+03 3.0143594e+03 - 1.2981162e+03 1.3408786e+03 3.0069799e+03 - 1.2993672e+03 1.3668120e+03 2.9997466e+03 - 1.3011141e+03 1.3896538e+03 2.9926731e+03 - 1.3033802e+03 1.4096137e+03 2.9857737e+03 - 1.3061845e+03 1.4268801e+03 2.9790632e+03 - 1.3095413e+03 1.4416238e+03 2.9725578e+03 - 1.3134597e+03 1.4540014e+03 2.9662743e+03 - 1.3179437e+03 1.4641582e+03 2.9602309e+03 - 1.3229908e+03 1.4722309e+03 2.9544466e+03 - 1.3285925e+03 1.4783497e+03 2.9489412e+03 - 1.3347335e+03 1.4826398e+03 2.9437350e+03 - 1.3413913e+03 1.4852234e+03 2.9388487e+03 - 1.3485360e+03 1.4862206e+03 2.9343027e+03 - 1.3561305e+03 1.4857500e+03 2.9301173e+03 - 1.3641297e+03 1.4839297e+03 2.9263121e+03 - 1.3724809e+03 1.4808776e+03 2.9229056e+03 - 1.3811238e+03 1.4767111e+03 2.9199152e+03 - 1.3899907e+03 1.4715477e+03 2.9173564e+03 - 1.3990066e+03 1.4655044e+03 2.9152430e+03 - 1.4080898e+03 1.4586973e+03 2.9135868e+03 - 1.4171522e+03 1.4512416e+03 2.9123970e+03 - 1.4260999e+03 1.4432502e+03 2.9116804e+03 - 1.4348338e+03 1.4348338e+03 2.9114410e+03 - 1.4432502e+03 1.4260999e+03 2.9116804e+03 - 1.4512416e+03 1.4171522e+03 2.9123970e+03 - 1.4586973e+03 1.4080898e+03 2.9135868e+03 - 1.4655044e+03 1.3990066e+03 2.9152430e+03 - 1.4715477e+03 1.3899907e+03 2.9173564e+03 - 1.4767111e+03 1.3811238e+03 2.9199152e+03 - 1.4808776e+03 1.3724809e+03 2.9229056e+03 - 1.4839297e+03 1.3641297e+03 2.9263121e+03 - 1.4857500e+03 1.3561305e+03 2.9301173e+03 - 1.4862206e+03 1.3485360e+03 2.9343027e+03 - 1.4852234e+03 1.3413913e+03 2.9388487e+03 - 1.4826398e+03 1.3347335e+03 2.9437350e+03 - 1.4783497e+03 1.3285925e+03 2.9489412e+03 - 1.4722309e+03 1.3229908e+03 2.9544466e+03 - 1.4641582e+03 1.3179437e+03 2.9602309e+03 - 1.4540014e+03 1.3134597e+03 2.9662743e+03 - 1.4416238e+03 1.3095413e+03 2.9725578e+03 - 1.4268801e+03 1.3061845e+03 2.9790632e+03 - 1.4096137e+03 1.3033802e+03 2.9857737e+03 - 1.3896538e+03 1.3011141e+03 2.9926731e+03 - 1.3668120e+03 1.2993672e+03 2.9997466e+03 - 1.3408786e+03 1.2981162e+03 3.0069799e+03 - 1.3116183e+03 1.2973341e+03 3.0143594e+03 - 1.2787664e+03 1.2969903e+03 3.0218711e+03 - 1.2420242e+03 1.2970511e+03 3.0294998e+03 - 1.2010562e+03 1.2974796e+03 3.0372280e+03 - 1.1554871e+03 1.2982362e+03 3.0450341e+03 - 1.1049035e+03 1.2992781e+03 3.0528898e+03 - 1.0488574e+03 1.3005599e+03 3.0607581e+03 - 9.8687841e+02 1.3020329e+03 3.0685891e+03 - 9.1849372e+02 1.3036448e+03 3.0763165e+03 - 8.4326135e+02 1.3053398e+03 3.0838540e+03 - 7.6081816e+02 1.3070587e+03 3.0910916e+03 - 6.7094419e+02 1.3087386e+03 3.0978945e+03 - 5.7364042e+02 1.3103144e+03 3.1041037e+03 - 4.6921180e+02 1.3117206e+03 3.1095421e+03 - 3.5833987e+02 1.3128941e+03 3.1140256e+03 - 2.4212372e+02 1.3137784e+03 3.1173790e+03 - 1.2206739e+02 1.3143287e+03 3.1194563e+03 - 0.0000000e+00 1.3145155e+03 3.1201602e+03 - -1.2206739e+02 1.3143287e+03 3.1194563e+03 - -2.4212372e+02 1.3137784e+03 3.1173790e+03 - -3.5833987e+02 1.3128941e+03 3.1140256e+03 - -4.6921180e+02 1.3117206e+03 3.1095421e+03 - -5.7364042e+02 1.3103144e+03 3.1041037e+03 - -6.7094419e+02 1.3087386e+03 3.0978945e+03 - -7.6081816e+02 1.3070587e+03 3.0910916e+03 - -8.4326135e+02 1.3053398e+03 3.0838540e+03 - -9.1849372e+02 1.3036448e+03 3.0763165e+03 - -9.8687841e+02 1.3020329e+03 3.0685891e+03 - -1.0488574e+03 1.3005599e+03 3.0607581e+03 - -1.1049035e+03 1.2992781e+03 3.0528898e+03 - -1.1554871e+03 1.2982362e+03 3.0450341e+03 - -1.2010562e+03 1.2974796e+03 3.0372280e+03 - -1.2420242e+03 1.2970511e+03 3.0294998e+03 - -1.2787664e+03 1.2969903e+03 3.0218711e+03 - -1.3116183e+03 1.2973341e+03 3.0143594e+03 - -1.3408786e+03 1.2981162e+03 3.0069799e+03 - -1.3668120e+03 1.2993672e+03 2.9997466e+03 - -1.3896538e+03 1.3011141e+03 2.9926731e+03 - -1.4096137e+03 1.3033802e+03 2.9857737e+03 - -1.4268801e+03 1.3061845e+03 2.9790632e+03 - -1.4416238e+03 1.3095413e+03 2.9725578e+03 - -1.4540014e+03 1.3134597e+03 2.9662743e+03 - -1.4641582e+03 1.3179437e+03 2.9602309e+03 - -1.4722309e+03 1.3229908e+03 2.9544466e+03 - -1.4783497e+03 1.3285925e+03 2.9489412e+03 - -1.4826398e+03 1.3347335e+03 2.9437350e+03 - -1.4852234e+03 1.3413913e+03 2.9388487e+03 - -1.4862206e+03 1.3485360e+03 2.9343027e+03 - -1.4857500e+03 1.3561305e+03 2.9301173e+03 - -1.4839297e+03 1.3641297e+03 2.9263121e+03 - -1.4808776e+03 1.3724809e+03 2.9229056e+03 - -1.4767111e+03 1.3811238e+03 2.9199152e+03 - -1.4715477e+03 1.3899907e+03 2.9173564e+03 - -1.4655044e+03 1.3990066e+03 2.9152430e+03 - -1.4586973e+03 1.4080898e+03 2.9135868e+03 - -1.4512416e+03 1.4171522e+03 2.9123970e+03 - -1.4432502e+03 1.4260999e+03 2.9116804e+03 - -1.4348338e+03 1.4348338e+03 2.9114410e+03 - -1.4260999e+03 1.4432502e+03 2.9116804e+03 - -1.4171522e+03 1.4512416e+03 2.9123970e+03 - -1.4080898e+03 1.4586973e+03 2.9135868e+03 - -1.3990066e+03 1.4655044e+03 2.9152430e+03 - -1.3899907e+03 1.4715477e+03 2.9173564e+03 - -1.3811238e+03 1.4767111e+03 2.9199152e+03 - -1.3724809e+03 1.4808776e+03 2.9229056e+03 - -1.3641297e+03 1.4839297e+03 2.9263121e+03 - -1.3561305e+03 1.4857500e+03 2.9301173e+03 - -1.3485360e+03 1.4862206e+03 2.9343027e+03 - -1.3413913e+03 1.4852234e+03 2.9388487e+03 - -1.3347335e+03 1.4826398e+03 2.9437350e+03 - -1.3285925e+03 1.4783497e+03 2.9489412e+03 - -1.3229908e+03 1.4722309e+03 2.9544466e+03 - -1.3179437e+03 1.4641582e+03 2.9602309e+03 - -1.3134597e+03 1.4540014e+03 2.9662743e+03 - -1.3095413e+03 1.4416238e+03 2.9725578e+03 - -1.3061845e+03 1.4268801e+03 2.9790632e+03 - -1.3033802e+03 1.4096137e+03 2.9857737e+03 - -1.3011141e+03 1.3896538e+03 2.9926731e+03 - -1.2993672e+03 1.3668120e+03 2.9997466e+03 - -1.2981162e+03 1.3408786e+03 3.0069799e+03 - -1.2973341e+03 1.3116183e+03 3.0143594e+03 - -1.2969903e+03 1.2787664e+03 3.0218711e+03 - -1.2970511e+03 1.2420242e+03 3.0294998e+03 - -1.2974796e+03 1.2010562e+03 3.0372280e+03 - -1.2982362e+03 1.1554871e+03 3.0450341e+03 - -1.2992781e+03 1.1049035e+03 3.0528898e+03 - -1.3005599e+03 1.0488574e+03 3.0607581e+03 - -1.3020329e+03 9.8687841e+02 3.0685891e+03 - -1.3036448e+03 9.1849372e+02 3.0763165e+03 - -1.3053398e+03 8.4326135e+02 3.0838540e+03 - -1.3070587e+03 7.6081816e+02 3.0910916e+03 - -1.3087386e+03 6.7094419e+02 3.0978945e+03 - -1.3103144e+03 5.7364042e+02 3.1041037e+03 - -1.3117206e+03 4.6921180e+02 3.1095421e+03 - -1.3128941e+03 3.5833987e+02 3.1140256e+03 - -1.3137784e+03 2.4212372e+02 3.1173790e+03 - -1.3143287e+03 1.2206739e+02 3.1194563e+03 - -1.3145155e+03 4.8134273e-09 3.1201602e+03 - -1.3143287e+03 -1.2206739e+02 3.1194563e+03 - -1.3137784e+03 -2.4212372e+02 3.1173790e+03 - -1.3128941e+03 -3.5833987e+02 3.1140256e+03 - -1.3117206e+03 -4.6921180e+02 3.1095421e+03 - -1.3103144e+03 -5.7364042e+02 3.1041037e+03 - -1.3087386e+03 -6.7094419e+02 3.0978945e+03 - -1.3070587e+03 -7.6081816e+02 3.0910916e+03 - -1.3053398e+03 -8.4326135e+02 3.0838540e+03 - -1.3036448e+03 -9.1849372e+02 3.0763165e+03 - -1.3020329e+03 -9.8687841e+02 3.0685891e+03 - -1.3005599e+03 -1.0488574e+03 3.0607581e+03 - -1.2992781e+03 -1.1049035e+03 3.0528898e+03 - -1.2982362e+03 -1.1554871e+03 3.0450341e+03 - -1.2974796e+03 -1.2010562e+03 3.0372280e+03 - -1.2970511e+03 -1.2420242e+03 3.0294998e+03 - -1.2969903e+03 -1.2787664e+03 3.0218711e+03 - -1.2973341e+03 -1.3116183e+03 3.0143594e+03 - -1.2981162e+03 -1.3408786e+03 3.0069799e+03 - -1.2993672e+03 -1.3668120e+03 2.9997466e+03 - -1.3011141e+03 -1.3896538e+03 2.9926731e+03 - -1.3033802e+03 -1.4096137e+03 2.9857737e+03 - -1.3061845e+03 -1.4268801e+03 2.9790632e+03 - -1.3095413e+03 -1.4416238e+03 2.9725578e+03 - -1.3134597e+03 -1.4540014e+03 2.9662743e+03 - -1.3179437e+03 -1.4641582e+03 2.9602309e+03 - -1.3229908e+03 -1.4722309e+03 2.9544466e+03 - -1.3285925e+03 -1.4783497e+03 2.9489412e+03 - -1.3347335e+03 -1.4826398e+03 2.9437350e+03 - -1.3413913e+03 -1.4852234e+03 2.9388487e+03 - -1.3485360e+03 -1.4862206e+03 2.9343027e+03 - -1.3561305e+03 -1.4857500e+03 2.9301173e+03 - -1.3641297e+03 -1.4839297e+03 2.9263121e+03 - -1.3724809e+03 -1.4808776e+03 2.9229056e+03 - -1.3811238e+03 -1.4767111e+03 2.9199152e+03 - -1.3899907e+03 -1.4715477e+03 2.9173564e+03 - -1.3990066e+03 -1.4655044e+03 2.9152430e+03 - -1.4080898e+03 -1.4586973e+03 2.9135868e+03 - -1.4171522e+03 -1.4512416e+03 2.9123970e+03 - -1.4260999e+03 -1.4432502e+03 2.9116804e+03 - -1.4348338e+03 -1.4348338e+03 2.9114410e+03 - -1.4432502e+03 -1.4260999e+03 2.9116804e+03 - -1.4512416e+03 -1.4171522e+03 2.9123970e+03 - -1.4586973e+03 -1.4080898e+03 2.9135868e+03 - -1.4655044e+03 -1.3990066e+03 2.9152430e+03 - -1.4715477e+03 -1.3899907e+03 2.9173564e+03 - -1.4767111e+03 -1.3811238e+03 2.9199152e+03 - -1.4808776e+03 -1.3724809e+03 2.9229056e+03 - -1.4839297e+03 -1.3641297e+03 2.9263121e+03 - -1.4857500e+03 -1.3561305e+03 2.9301173e+03 - -1.4862206e+03 -1.3485360e+03 2.9343027e+03 - -1.4852234e+03 -1.3413913e+03 2.9388487e+03 - -1.4826398e+03 -1.3347335e+03 2.9437350e+03 - -1.4783497e+03 -1.3285925e+03 2.9489412e+03 - -1.4722309e+03 -1.3229908e+03 2.9544466e+03 - -1.4641582e+03 -1.3179437e+03 2.9602309e+03 - -1.4540014e+03 -1.3134597e+03 2.9662743e+03 - -1.4416238e+03 -1.3095413e+03 2.9725578e+03 - -1.4268801e+03 -1.3061845e+03 2.9790632e+03 - -1.4096137e+03 -1.3033802e+03 2.9857737e+03 - -1.3896538e+03 -1.3011141e+03 2.9926731e+03 - -1.3668120e+03 -1.2993672e+03 2.9997466e+03 - -1.3408786e+03 -1.2981162e+03 3.0069799e+03 - -1.3116183e+03 -1.2973341e+03 3.0143594e+03 - -1.2787664e+03 -1.2969903e+03 3.0218711e+03 - -1.2420242e+03 -1.2970511e+03 3.0294998e+03 - -1.2010562e+03 -1.2974796e+03 3.0372280e+03 - -1.1554871e+03 -1.2982362e+03 3.0450341e+03 - -1.1049035e+03 -1.2992781e+03 3.0528898e+03 - -1.0488574e+03 -1.3005599e+03 3.0607581e+03 - -9.8687841e+02 -1.3020329e+03 3.0685891e+03 - -9.1849372e+02 -1.3036448e+03 3.0763165e+03 - -8.4326135e+02 -1.3053398e+03 3.0838540e+03 - -7.6081816e+02 -1.3070587e+03 3.0910916e+03 - -6.7094419e+02 -1.3087386e+03 3.0978945e+03 - -5.7364042e+02 -1.3103144e+03 3.1041037e+03 - -4.6921180e+02 -1.3117206e+03 3.1095421e+03 - -3.5833987e+02 -1.3128941e+03 3.1140256e+03 - -2.4212372e+02 -1.3137784e+03 3.1173790e+03 - -1.2206739e+02 -1.3143287e+03 3.1194563e+03 - -2.4067136e-09 -1.3145155e+03 3.1201602e+03 - 1.2206739e+02 -1.3143287e+03 3.1194563e+03 - 2.4212372e+02 -1.3137784e+03 3.1173790e+03 - 3.5833987e+02 -1.3128941e+03 3.1140256e+03 - 4.6921180e+02 -1.3117206e+03 3.1095421e+03 - 5.7364042e+02 -1.3103144e+03 3.1041037e+03 - 6.7094419e+02 -1.3087386e+03 3.0978945e+03 - 7.6081816e+02 -1.3070587e+03 3.0910916e+03 - 8.4326135e+02 -1.3053398e+03 3.0838540e+03 - 9.1849372e+02 -1.3036448e+03 3.0763165e+03 - 9.8687841e+02 -1.3020329e+03 3.0685891e+03 - 1.0488574e+03 -1.3005599e+03 3.0607581e+03 - 1.1049035e+03 -1.2992781e+03 3.0528898e+03 - 1.1554871e+03 -1.2982362e+03 3.0450341e+03 - 1.2010562e+03 -1.2974796e+03 3.0372280e+03 - 1.2420242e+03 -1.2970511e+03 3.0294998e+03 - 1.2787664e+03 -1.2969903e+03 3.0218711e+03 - 1.3116183e+03 -1.2973341e+03 3.0143594e+03 - 1.3408786e+03 -1.2981162e+03 3.0069799e+03 - 1.3668120e+03 -1.2993672e+03 2.9997466e+03 - 1.3896538e+03 -1.3011141e+03 2.9926731e+03 - 1.4096137e+03 -1.3033802e+03 2.9857737e+03 - 1.4268801e+03 -1.3061845e+03 2.9790632e+03 - 1.4416238e+03 -1.3095413e+03 2.9725578e+03 - 1.4540014e+03 -1.3134597e+03 2.9662743e+03 - 1.4641582e+03 -1.3179437e+03 2.9602309e+03 - 1.4722309e+03 -1.3229908e+03 2.9544466e+03 - 1.4783497e+03 -1.3285925e+03 2.9489412e+03 - 1.4826398e+03 -1.3347335e+03 2.9437350e+03 - 1.4852234e+03 -1.3413913e+03 2.9388487e+03 - 1.4862206e+03 -1.3485360e+03 2.9343027e+03 - 1.4857500e+03 -1.3561305e+03 2.9301173e+03 - 1.4839297e+03 -1.3641297e+03 2.9263121e+03 - 1.4808776e+03 -1.3724809e+03 2.9229056e+03 - 1.4767111e+03 -1.3811238e+03 2.9199152e+03 - 1.4715477e+03 -1.3899907e+03 2.9173564e+03 - 1.4655044e+03 -1.3990066e+03 2.9152430e+03 - 1.4586973e+03 -1.4080898e+03 2.9135868e+03 - 1.4512416e+03 -1.4171522e+03 2.9123970e+03 - 1.4432502e+03 -1.4260999e+03 2.9116804e+03 - 1.4348338e+03 -1.4348338e+03 2.9114410e+03 - 1.4260999e+03 -1.4432502e+03 2.9116804e+03 - 1.4171522e+03 -1.4512416e+03 2.9123970e+03 - 1.4080898e+03 -1.4586973e+03 2.9135868e+03 - 1.3990066e+03 -1.4655044e+03 2.9152430e+03 - 1.3899907e+03 -1.4715477e+03 2.9173564e+03 - 1.3811238e+03 -1.4767111e+03 2.9199152e+03 - 1.3724809e+03 -1.4808776e+03 2.9229056e+03 - 1.3641297e+03 -1.4839297e+03 2.9263121e+03 - 1.3561305e+03 -1.4857500e+03 2.9301173e+03 - 1.3485360e+03 -1.4862206e+03 2.9343027e+03 - 1.3413913e+03 -1.4852234e+03 2.9388487e+03 - 1.3347335e+03 -1.4826398e+03 2.9437350e+03 - 1.3285925e+03 -1.4783497e+03 2.9489412e+03 - 1.3229908e+03 -1.4722309e+03 2.9544466e+03 - 1.3179437e+03 -1.4641582e+03 2.9602309e+03 - 1.3134597e+03 -1.4540014e+03 2.9662743e+03 - 1.3095413e+03 -1.4416238e+03 2.9725578e+03 - 1.3061845e+03 -1.4268801e+03 2.9790632e+03 - 1.3033802e+03 -1.4096137e+03 2.9857737e+03 - 1.3011141e+03 -1.3896538e+03 2.9926731e+03 - 1.2993672e+03 -1.3668120e+03 2.9997466e+03 - 1.2981162e+03 -1.3408786e+03 3.0069799e+03 - 1.2973341e+03 -1.3116183e+03 3.0143594e+03 - 1.2969903e+03 -1.2787664e+03 3.0218711e+03 - 1.2970511e+03 -1.2420242e+03 3.0294998e+03 - 1.2974796e+03 -1.2010562e+03 3.0372280e+03 - 1.2982362e+03 -1.1554871e+03 3.0450341e+03 - 1.2992781e+03 -1.1049035e+03 3.0528898e+03 - 1.3005599e+03 -1.0488574e+03 3.0607581e+03 - 1.3020329e+03 -9.8687841e+02 3.0685891e+03 - 1.3036448e+03 -9.1849372e+02 3.0763165e+03 - 1.3053398e+03 -8.4326135e+02 3.0838540e+03 - 1.3070587e+03 -7.6081816e+02 3.0910916e+03 - 1.3087386e+03 -6.7094419e+02 3.0978945e+03 - 1.3103144e+03 -5.7364042e+02 3.1041037e+03 - 1.3117206e+03 -4.6921180e+02 3.1095421e+03 - 1.3128941e+03 -3.5833987e+02 3.1140256e+03 - 1.3137784e+03 -2.4212372e+02 3.1173790e+03 - 1.3143287e+03 -1.2206739e+02 3.1194563e+03 - 1.3145155e+03 0.0000000e+00 3.1201602e+03 - 1.3570222e+03 0.0000000e+00 3.0899090e+03 - 1.3568548e+03 1.2730579e+02 3.0891239e+03 - 1.3563600e+03 2.5238473e+02 3.0868111e+03 - 1.3555591e+03 3.7322674e+02 3.0830904e+03 - 1.3544856e+03 4.8820574e+02 3.0781399e+03 - 1.3531825e+03 5.9616737e+02 3.0721703e+03 - 1.3516990e+03 6.9643442e+02 3.0653995e+03 - 1.3500887e+03 7.8874957e+02 3.0580326e+03 - 1.3484069e+03 8.7318407e+02 3.0502493e+03 - 1.3467098e+03 9.5003857e+02 3.0421980e+03 - 1.3450527e+03 1.0197539e+03 3.0339958e+03 - 1.3434904e+03 1.0828403e+03 3.0257316e+03 - 1.3420760e+03 1.1398264e+03 3.0174705e+03 - 1.3408612e+03 1.1912262e+03 3.0092591e+03 - 1.3398957e+03 1.2375195e+03 3.0011305e+03 - 1.3392273e+03 1.2791430e+03 2.9931079e+03 - 1.3389014e+03 1.3164868e+03 2.9852082e+03 - 1.3389612e+03 1.3498961e+03 2.9774444e+03 - 1.3394466e+03 1.3796748e+03 2.9698278e+03 - 1.3403946e+03 1.4060899e+03 2.9623688e+03 - 1.3418385e+03 1.4293770e+03 2.9550786e+03 - 1.3438073e+03 1.4497447e+03 2.9479690e+03 - 1.3463258e+03 1.4673797e+03 2.9410535e+03 - 1.3494135e+03 1.4824507e+03 2.9343470e+03 - 1.3530846e+03 1.4951124e+03 2.9278660e+03 - 1.3573469e+03 1.5055083e+03 2.9216285e+03 - 1.3622021e+03 1.5137737e+03 2.9156538e+03 - 1.3676448e+03 1.5200380e+03 2.9099625e+03 - 1.3736621e+03 1.5244264e+03 2.9045759e+03 - 1.3802334e+03 1.5270615e+03 2.8995156e+03 - 1.3873301e+03 1.5280646e+03 2.8948036e+03 - 1.3949152e+03 1.5275564e+03 2.8904617e+03 - 1.4029434e+03 1.5256576e+03 2.8865109e+03 - 1.4113609e+03 1.5224894e+03 2.8829715e+03 - 1.4201055e+03 1.5181733e+03 2.8798621e+03 - 1.4291068e+03 1.5128313e+03 2.8772000e+03 - 1.4382866e+03 1.5065854e+03 2.8750001e+03 - 1.4475593e+03 1.4995573e+03 2.8732754e+03 - 1.4568321e+03 1.4918676e+03 2.8720360e+03 - 1.4660062e+03 1.4836353e+03 2.8712893e+03 - 1.4749771e+03 1.4749771e+03 2.8710399e+03 - 1.4836353e+03 1.4660062e+03 2.8712893e+03 - 1.4918676e+03 1.4568321e+03 2.8720360e+03 - 1.4995573e+03 1.4475593e+03 2.8732754e+03 - 1.5065854e+03 1.4382866e+03 2.8750001e+03 - 1.5128313e+03 1.4291068e+03 2.8772000e+03 - 1.5181733e+03 1.4201055e+03 2.8798621e+03 - 1.5224894e+03 1.4113609e+03 2.8829715e+03 - 1.5256576e+03 1.4029434e+03 2.8865109e+03 - 1.5275564e+03 1.3949152e+03 2.8904617e+03 - 1.5280646e+03 1.3873301e+03 2.8948036e+03 - 1.5270615e+03 1.3802334e+03 2.8995156e+03 - 1.5244264e+03 1.3736621e+03 2.9045759e+03 - 1.5200380e+03 1.3676448e+03 2.9099625e+03 - 1.5137737e+03 1.3622021e+03 2.9156538e+03 - 1.5055083e+03 1.3573469e+03 2.9216285e+03 - 1.4951124e+03 1.3530846e+03 2.9278660e+03 - 1.4824507e+03 1.3494135e+03 2.9343470e+03 - 1.4673797e+03 1.3463258e+03 2.9410535e+03 - 1.4497447e+03 1.3438073e+03 2.9479690e+03 - 1.4293770e+03 1.3418385e+03 2.9550786e+03 - 1.4060899e+03 1.3403946e+03 2.9623688e+03 - 1.3796748e+03 1.3394466e+03 2.9698278e+03 - 1.3498961e+03 1.3389612e+03 2.9774444e+03 - 1.3164868e+03 1.3389014e+03 2.9852082e+03 - 1.2791430e+03 1.3392273e+03 2.9931079e+03 - 1.2375195e+03 1.3398957e+03 3.0011305e+03 - 1.1912262e+03 1.3408612e+03 3.0092591e+03 - 1.1398264e+03 1.3420760e+03 3.0174705e+03 - 1.0828403e+03 1.3434904e+03 3.0257316e+03 - 1.0197539e+03 1.3450527e+03 3.0339958e+03 - 9.5003857e+02 1.3467098e+03 3.0421980e+03 - 8.7318407e+02 1.3484069e+03 3.0502493e+03 - 7.8874957e+02 1.3500887e+03 3.0580326e+03 - 6.9643442e+02 1.3516990e+03 3.0653995e+03 - 5.9616737e+02 1.3531825e+03 3.0721703e+03 - 4.8820574e+02 1.3544856e+03 3.0781399e+03 - 3.7322674e+02 1.3555591e+03 3.0830904e+03 - 2.5238473e+02 1.3563600e+03 3.0868111e+03 - 1.2730579e+02 1.3568548e+03 3.0891239e+03 - 0.0000000e+00 1.3570222e+03 3.0899090e+03 - -1.2730579e+02 1.3568548e+03 3.0891239e+03 - -2.5238473e+02 1.3563600e+03 3.0868111e+03 - -3.7322674e+02 1.3555591e+03 3.0830904e+03 - -4.8820574e+02 1.3544856e+03 3.0781399e+03 - -5.9616737e+02 1.3531825e+03 3.0721703e+03 - -6.9643442e+02 1.3516990e+03 3.0653995e+03 - -7.8874957e+02 1.3500887e+03 3.0580326e+03 - -8.7318407e+02 1.3484069e+03 3.0502493e+03 - -9.5003857e+02 1.3467098e+03 3.0421980e+03 - -1.0197539e+03 1.3450527e+03 3.0339958e+03 - -1.0828403e+03 1.3434904e+03 3.0257316e+03 - -1.1398264e+03 1.3420760e+03 3.0174705e+03 - -1.1912262e+03 1.3408612e+03 3.0092591e+03 - -1.2375195e+03 1.3398957e+03 3.0011305e+03 - -1.2791430e+03 1.3392273e+03 2.9931079e+03 - -1.3164868e+03 1.3389014e+03 2.9852082e+03 - -1.3498961e+03 1.3389612e+03 2.9774444e+03 - -1.3796748e+03 1.3394466e+03 2.9698278e+03 - -1.4060899e+03 1.3403946e+03 2.9623688e+03 - -1.4293770e+03 1.3418385e+03 2.9550786e+03 - -1.4497447e+03 1.3438073e+03 2.9479690e+03 - -1.4673797e+03 1.3463258e+03 2.9410535e+03 - -1.4824507e+03 1.3494135e+03 2.9343470e+03 - -1.4951124e+03 1.3530846e+03 2.9278660e+03 - -1.5055083e+03 1.3573469e+03 2.9216285e+03 - -1.5137737e+03 1.3622021e+03 2.9156538e+03 - -1.5200380e+03 1.3676448e+03 2.9099625e+03 - -1.5244264e+03 1.3736621e+03 2.9045759e+03 - -1.5270615e+03 1.3802334e+03 2.8995156e+03 - -1.5280646e+03 1.3873301e+03 2.8948036e+03 - -1.5275564e+03 1.3949152e+03 2.8904617e+03 - -1.5256576e+03 1.4029434e+03 2.8865109e+03 - -1.5224894e+03 1.4113609e+03 2.8829715e+03 - -1.5181733e+03 1.4201055e+03 2.8798621e+03 - -1.5128313e+03 1.4291068e+03 2.8772000e+03 - -1.5065854e+03 1.4382866e+03 2.8750001e+03 - -1.4995573e+03 1.4475593e+03 2.8732754e+03 - -1.4918676e+03 1.4568321e+03 2.8720360e+03 - -1.4836353e+03 1.4660062e+03 2.8712893e+03 - -1.4749771e+03 1.4749771e+03 2.8710399e+03 - -1.4660062e+03 1.4836353e+03 2.8712893e+03 - -1.4568321e+03 1.4918676e+03 2.8720360e+03 - -1.4475593e+03 1.4995573e+03 2.8732754e+03 - -1.4382866e+03 1.5065854e+03 2.8750001e+03 - -1.4291068e+03 1.5128313e+03 2.8772000e+03 - -1.4201055e+03 1.5181733e+03 2.8798621e+03 - -1.4113609e+03 1.5224894e+03 2.8829715e+03 - -1.4029434e+03 1.5256576e+03 2.8865109e+03 - -1.3949152e+03 1.5275564e+03 2.8904617e+03 - -1.3873301e+03 1.5280646e+03 2.8948036e+03 - -1.3802334e+03 1.5270615e+03 2.8995156e+03 - -1.3736621e+03 1.5244264e+03 2.9045759e+03 - -1.3676448e+03 1.5200380e+03 2.9099625e+03 - -1.3622021e+03 1.5137737e+03 2.9156538e+03 - -1.3573469e+03 1.5055083e+03 2.9216285e+03 - -1.3530846e+03 1.4951124e+03 2.9278660e+03 - -1.3494135e+03 1.4824507e+03 2.9343470e+03 - -1.3463258e+03 1.4673797e+03 2.9410535e+03 - -1.3438073e+03 1.4497447e+03 2.9479690e+03 - -1.3418385e+03 1.4293770e+03 2.9550786e+03 - -1.3403946e+03 1.4060899e+03 2.9623688e+03 - -1.3394466e+03 1.3796748e+03 2.9698278e+03 - -1.3389612e+03 1.3498961e+03 2.9774444e+03 - -1.3389014e+03 1.3164868e+03 2.9852082e+03 - -1.3392273e+03 1.2791430e+03 2.9931079e+03 - -1.3398957e+03 1.2375195e+03 3.0011305e+03 - -1.3408612e+03 1.1912262e+03 3.0092591e+03 - -1.3420760e+03 1.1398264e+03 3.0174705e+03 - -1.3434904e+03 1.0828403e+03 3.0257316e+03 - -1.3450527e+03 1.0197539e+03 3.0339958e+03 - -1.3467098e+03 9.5003857e+02 3.0421980e+03 - -1.3484069e+03 8.7318407e+02 3.0502493e+03 - -1.3500887e+03 7.8874957e+02 3.0580326e+03 - -1.3516990e+03 6.9643442e+02 3.0653995e+03 - -1.3531825e+03 5.9616737e+02 3.0721703e+03 - -1.3544856e+03 4.8820574e+02 3.0781399e+03 - -1.3555591e+03 3.7322674e+02 3.0830904e+03 - -1.3563600e+03 2.5238473e+02 3.0868111e+03 - -1.3568548e+03 1.2730579e+02 3.0891239e+03 - -1.3570222e+03 0.0000000e+00 3.0899090e+03 - -1.3568548e+03 -1.2730579e+02 3.0891239e+03 - -1.3563600e+03 -2.5238473e+02 3.0868111e+03 - -1.3555591e+03 -3.7322674e+02 3.0830904e+03 - -1.3544856e+03 -4.8820574e+02 3.0781399e+03 - -1.3531825e+03 -5.9616737e+02 3.0721703e+03 - -1.3516990e+03 -6.9643442e+02 3.0653995e+03 - -1.3500887e+03 -7.8874957e+02 3.0580326e+03 - -1.3484069e+03 -8.7318407e+02 3.0502493e+03 - -1.3467098e+03 -9.5003857e+02 3.0421980e+03 - -1.3450527e+03 -1.0197539e+03 3.0339958e+03 - -1.3434904e+03 -1.0828403e+03 3.0257316e+03 - -1.3420760e+03 -1.1398264e+03 3.0174705e+03 - -1.3408612e+03 -1.1912262e+03 3.0092591e+03 - -1.3398957e+03 -1.2375195e+03 3.0011305e+03 - -1.3392273e+03 -1.2791430e+03 2.9931079e+03 - -1.3389014e+03 -1.3164868e+03 2.9852082e+03 - -1.3389612e+03 -1.3498961e+03 2.9774444e+03 - -1.3394466e+03 -1.3796748e+03 2.9698278e+03 - -1.3403946e+03 -1.4060899e+03 2.9623688e+03 - -1.3418385e+03 -1.4293770e+03 2.9550786e+03 - -1.3438073e+03 -1.4497447e+03 2.9479690e+03 - -1.3463258e+03 -1.4673797e+03 2.9410535e+03 - -1.3494135e+03 -1.4824507e+03 2.9343470e+03 - -1.3530846e+03 -1.4951124e+03 2.9278660e+03 - -1.3573469e+03 -1.5055083e+03 2.9216285e+03 - -1.3622021e+03 -1.5137737e+03 2.9156538e+03 - -1.3676448e+03 -1.5200380e+03 2.9099625e+03 - -1.3736621e+03 -1.5244264e+03 2.9045759e+03 - -1.3802334e+03 -1.5270615e+03 2.8995156e+03 - -1.3873301e+03 -1.5280646e+03 2.8948036e+03 - -1.3949152e+03 -1.5275564e+03 2.8904617e+03 - -1.4029434e+03 -1.5256576e+03 2.8865109e+03 - -1.4113609e+03 -1.5224894e+03 2.8829715e+03 - -1.4201055e+03 -1.5181733e+03 2.8798621e+03 - -1.4291068e+03 -1.5128313e+03 2.8772000e+03 - -1.4382866e+03 -1.5065854e+03 2.8750001e+03 - -1.4475593e+03 -1.4995573e+03 2.8732754e+03 - -1.4568321e+03 -1.4918676e+03 2.8720360e+03 - -1.4660062e+03 -1.4836353e+03 2.8712893e+03 - -1.4749771e+03 -1.4749771e+03 2.8710399e+03 - -1.4836353e+03 -1.4660062e+03 2.8712893e+03 - -1.4918676e+03 -1.4568321e+03 2.8720360e+03 - -1.4995573e+03 -1.4475593e+03 2.8732754e+03 - -1.5065854e+03 -1.4382866e+03 2.8750001e+03 - -1.5128313e+03 -1.4291068e+03 2.8772000e+03 - -1.5181733e+03 -1.4201055e+03 2.8798621e+03 - -1.5224894e+03 -1.4113609e+03 2.8829715e+03 - -1.5256576e+03 -1.4029434e+03 2.8865109e+03 - -1.5275564e+03 -1.3949152e+03 2.8904617e+03 - -1.5280646e+03 -1.3873301e+03 2.8948036e+03 - -1.5270615e+03 -1.3802334e+03 2.8995156e+03 - -1.5244264e+03 -1.3736621e+03 2.9045759e+03 - -1.5200380e+03 -1.3676448e+03 2.9099625e+03 - -1.5137737e+03 -1.3622021e+03 2.9156538e+03 - -1.5055083e+03 -1.3573469e+03 2.9216285e+03 - -1.4951124e+03 -1.3530846e+03 2.9278660e+03 - -1.4824507e+03 -1.3494135e+03 2.9343470e+03 - -1.4673797e+03 -1.3463258e+03 2.9410535e+03 - -1.4497447e+03 -1.3438073e+03 2.9479690e+03 - -1.4293770e+03 -1.3418385e+03 2.9550786e+03 - -1.4060899e+03 -1.3403946e+03 2.9623688e+03 - -1.3796748e+03 -1.3394466e+03 2.9698278e+03 - -1.3498961e+03 -1.3389612e+03 2.9774444e+03 - -1.3164868e+03 -1.3389014e+03 2.9852082e+03 - -1.2791430e+03 -1.3392273e+03 2.9931079e+03 - -1.2375195e+03 -1.3398957e+03 3.0011305e+03 - -1.1912262e+03 -1.3408612e+03 3.0092591e+03 - -1.1398264e+03 -1.3420760e+03 3.0174705e+03 - -1.0828403e+03 -1.3434904e+03 3.0257316e+03 - -1.0197539e+03 -1.3450527e+03 3.0339958e+03 - -9.5003857e+02 -1.3467098e+03 3.0421980e+03 - -8.7318407e+02 -1.3484069e+03 3.0502493e+03 - -7.8874957e+02 -1.3500887e+03 3.0580326e+03 - -6.9643442e+02 -1.3516990e+03 3.0653995e+03 - -5.9616737e+02 -1.3531825e+03 3.0721703e+03 - -4.8820574e+02 -1.3544856e+03 3.0781399e+03 - -3.7322674e+02 -1.3555591e+03 3.0830904e+03 - -2.5238473e+02 -1.3563600e+03 3.0868111e+03 - -1.2730579e+02 -1.3568548e+03 3.0891239e+03 - 0.0000000e+00 -1.3570222e+03 3.0899090e+03 - 1.2730579e+02 -1.3568548e+03 3.0891239e+03 - 2.5238473e+02 -1.3563600e+03 3.0868111e+03 - 3.7322674e+02 -1.3555591e+03 3.0830904e+03 - 4.8820574e+02 -1.3544856e+03 3.0781399e+03 - 5.9616737e+02 -1.3531825e+03 3.0721703e+03 - 6.9643442e+02 -1.3516990e+03 3.0653995e+03 - 7.8874957e+02 -1.3500887e+03 3.0580326e+03 - 8.7318407e+02 -1.3484069e+03 3.0502493e+03 - 9.5003857e+02 -1.3467098e+03 3.0421980e+03 - 1.0197539e+03 -1.3450527e+03 3.0339958e+03 - 1.0828403e+03 -1.3434904e+03 3.0257316e+03 - 1.1398264e+03 -1.3420760e+03 3.0174705e+03 - 1.1912262e+03 -1.3408612e+03 3.0092591e+03 - 1.2375195e+03 -1.3398957e+03 3.0011305e+03 - 1.2791430e+03 -1.3392273e+03 2.9931079e+03 - 1.3164868e+03 -1.3389014e+03 2.9852082e+03 - 1.3498961e+03 -1.3389612e+03 2.9774444e+03 - 1.3796748e+03 -1.3394466e+03 2.9698278e+03 - 1.4060899e+03 -1.3403946e+03 2.9623688e+03 - 1.4293770e+03 -1.3418385e+03 2.9550786e+03 - 1.4497447e+03 -1.3438073e+03 2.9479690e+03 - 1.4673797e+03 -1.3463258e+03 2.9410535e+03 - 1.4824507e+03 -1.3494135e+03 2.9343470e+03 - 1.4951124e+03 -1.3530846e+03 2.9278660e+03 - 1.5055083e+03 -1.3573469e+03 2.9216285e+03 - 1.5137737e+03 -1.3622021e+03 2.9156538e+03 - 1.5200380e+03 -1.3676448e+03 2.9099625e+03 - 1.5244264e+03 -1.3736621e+03 2.9045759e+03 - 1.5270615e+03 -1.3802334e+03 2.8995156e+03 - 1.5280646e+03 -1.3873301e+03 2.8948036e+03 - 1.5275564e+03 -1.3949152e+03 2.8904617e+03 - 1.5256576e+03 -1.4029434e+03 2.8865109e+03 - 1.5224894e+03 -1.4113609e+03 2.8829715e+03 - 1.5181733e+03 -1.4201055e+03 2.8798621e+03 - 1.5128313e+03 -1.4291068e+03 2.8772000e+03 - 1.5065854e+03 -1.4382866e+03 2.8750001e+03 - 1.4995573e+03 -1.4475593e+03 2.8732754e+03 - 1.4918676e+03 -1.4568321e+03 2.8720360e+03 - 1.4836353e+03 -1.4660062e+03 2.8712893e+03 - 1.4749771e+03 -1.4749771e+03 2.8710399e+03 - 1.4660062e+03 -1.4836353e+03 2.8712893e+03 - 1.4568321e+03 -1.4918676e+03 2.8720360e+03 - 1.4475593e+03 -1.4995573e+03 2.8732754e+03 - 1.4382866e+03 -1.5065854e+03 2.8750001e+03 - 1.4291068e+03 -1.5128313e+03 2.8772000e+03 - 1.4201055e+03 -1.5181733e+03 2.8798621e+03 - 1.4113609e+03 -1.5224894e+03 2.8829715e+03 - 1.4029434e+03 -1.5256576e+03 2.8865109e+03 - 1.3949152e+03 -1.5275564e+03 2.8904617e+03 - 1.3873301e+03 -1.5280646e+03 2.8948036e+03 - 1.3802334e+03 -1.5270615e+03 2.8995156e+03 - 1.3736621e+03 -1.5244264e+03 2.9045759e+03 - 1.3676448e+03 -1.5200380e+03 2.9099625e+03 - 1.3622021e+03 -1.5137737e+03 2.9156538e+03 - 1.3573469e+03 -1.5055083e+03 2.9216285e+03 - 1.3530846e+03 -1.4951124e+03 2.9278660e+03 - 1.3494135e+03 -1.4824507e+03 2.9343470e+03 - 1.3463258e+03 -1.4673797e+03 2.9410535e+03 - 1.3438073e+03 -1.4497447e+03 2.9479690e+03 - 1.3418385e+03 -1.4293770e+03 2.9550786e+03 - 1.3403946e+03 -1.4060899e+03 2.9623688e+03 - 1.3394466e+03 -1.3796748e+03 2.9698278e+03 - 1.3389612e+03 -1.3498961e+03 2.9774444e+03 - 1.3389014e+03 -1.3164868e+03 2.9852082e+03 - 1.3392273e+03 -1.2791430e+03 2.9931079e+03 - 1.3398957e+03 -1.2375195e+03 3.0011305e+03 - 1.3408612e+03 -1.1912262e+03 3.0092591e+03 - 1.3420760e+03 -1.1398264e+03 3.0174705e+03 - 1.3434904e+03 -1.0828403e+03 3.0257316e+03 - 1.3450527e+03 -1.0197539e+03 3.0339958e+03 - 1.3467098e+03 -9.5003857e+02 3.0421980e+03 - 1.3484069e+03 -8.7318407e+02 3.0502493e+03 - 1.3500887e+03 -7.8874957e+02 3.0580326e+03 - 1.3516990e+03 -6.9643442e+02 3.0653995e+03 - 1.3531825e+03 -5.9616737e+02 3.0721703e+03 - 1.3544856e+03 -4.8820574e+02 3.0781399e+03 - 1.3555591e+03 -3.7322674e+02 3.0830904e+03 - 1.3563600e+03 -2.5238473e+02 3.0868111e+03 - 1.3568548e+03 -1.2730579e+02 3.0891239e+03 - 1.3570222e+03 0.0000000e+00 3.0899090e+03 - 1.3994679e+03 0.0000000e+00 3.0584277e+03 - 1.3993287e+03 1.3280155e+02 3.0575477e+03 - 1.3989143e+03 2.6312228e+02 3.0549608e+03 - 1.3982344e+03 3.8874257e+02 3.0508160e+03 - 1.3973057e+03 5.0790113e+02 3.0453323e+03 - 1.3961520e+03 6.1939054e+02 3.0387651e+03 - 1.3948041e+03 7.2255140e+02 3.0313732e+03 - 1.3932998e+03 8.1719287e+02 3.0233946e+03 - 1.3916824e+03 9.0347766e+02 3.0150320e+03 - 1.3899999e+03 9.8180351e+02 3.0064478e+03 - 1.3883042e+03 1.0527012e+03 2.9977651e+03 - 1.3866490e+03 1.1167573e+03 2.9890734e+03 - 1.3850897e+03 1.1745608e+03 2.9804347e+03 - 1.3836820e+03 1.2266712e+03 2.9718904e+03 - 1.3824811e+03 1.2736007e+03 2.9634671e+03 - 1.3815412e+03 1.3158077e+03 2.9551816e+03 - 1.3809146e+03 1.3536961e+03 2.9470446e+03 - 1.3806516e+03 1.3876189e+03 2.9390635e+03 - 1.3807993e+03 1.4178834e+03 2.9312446e+03 - 1.3814019e+03 1.4447570e+03 2.9235943e+03 - 1.3824995e+03 1.4684740e+03 2.9161203e+03 - 1.3841277e+03 1.4892405e+03 2.9088319e+03 - 1.3863174e+03 1.5072401e+03 2.9017406e+03 - 1.3890939e+03 1.5226384e+03 2.8948602e+03 - 1.3924765e+03 1.5355870e+03 2.8882066e+03 - 1.3964780e+03 1.5462267e+03 2.8817975e+03 - 1.4011038e+03 1.5546909e+03 2.8756527e+03 - 1.4063522e+03 1.5611075e+03 2.8697934e+03 - 1.4122129e+03 1.5656011e+03 2.8642419e+03 - 1.4186674e+03 1.5682943e+03 2.8590212e+03 - 1.4256883e+03 1.5693096e+03 2.8541549e+03 - 1.4332393e+03 1.5687692e+03 2.8496662e+03 - 1.4412745e+03 1.5667966e+03 2.8455780e+03 - 1.4497392e+03 1.5635162e+03 2.8419123e+03 - 1.4585690e+03 1.5590536e+03 2.8386894e+03 - 1.4676910e+03 1.5535355e+03 2.8359282e+03 - 1.4770235e+03 1.5470891e+03 2.8336451e+03 - 1.4864765e+03 1.5398416e+03 2.8318543e+03 - 1.4959527e+03 1.5319199e+03 2.8305669e+03 - 1.5053479e+03 1.5234489e+03 2.8297911e+03 - 1.5145517e+03 1.5145517e+03 2.8295319e+03 - 1.5234489e+03 1.5053479e+03 2.8297911e+03 - 1.5319199e+03 1.4959527e+03 2.8305669e+03 - 1.5398416e+03 1.4864765e+03 2.8318543e+03 - 1.5470891e+03 1.4770235e+03 2.8336451e+03 - 1.5535355e+03 1.4676910e+03 2.8359282e+03 - 1.5590536e+03 1.4585690e+03 2.8386894e+03 - 1.5635162e+03 1.4497392e+03 2.8419123e+03 - 1.5667966e+03 1.4412745e+03 2.8455780e+03 - 1.5687692e+03 1.4332393e+03 2.8496662e+03 - 1.5693096e+03 1.4256883e+03 2.8541549e+03 - 1.5682943e+03 1.4186674e+03 2.8590212e+03 - 1.5656011e+03 1.4122129e+03 2.8642419e+03 - 1.5611075e+03 1.4063522e+03 2.8697934e+03 - 1.5546909e+03 1.4011038e+03 2.8756527e+03 - 1.5462267e+03 1.3964780e+03 2.8817975e+03 - 1.5355870e+03 1.3924765e+03 2.8882066e+03 - 1.5226384e+03 1.3890939e+03 2.8948602e+03 - 1.5072401e+03 1.3863174e+03 2.9017406e+03 - 1.4892405e+03 1.3841277e+03 2.9088319e+03 - 1.4684740e+03 1.3824995e+03 2.9161203e+03 - 1.4447570e+03 1.3814019e+03 2.9235943e+03 - 1.4178834e+03 1.3807993e+03 2.9312446e+03 - 1.3876189e+03 1.3806516e+03 2.9390635e+03 - 1.3536961e+03 1.3809146e+03 2.9470446e+03 - 1.3158077e+03 1.3815412e+03 2.9551816e+03 - 1.2736007e+03 1.3824811e+03 2.9634671e+03 - 1.2266712e+03 1.3836820e+03 2.9718904e+03 - 1.1745608e+03 1.3850897e+03 2.9804347e+03 - 1.1167573e+03 1.3866490e+03 2.9890734e+03 - 1.0527012e+03 1.3883042e+03 2.9977651e+03 - 9.8180351e+02 1.3899999e+03 3.0064478e+03 - 9.0347766e+02 1.3916824e+03 3.0150320e+03 - 8.1719287e+02 1.3932998e+03 3.0233946e+03 - 7.2255140e+02 1.3948041e+03 3.0313732e+03 - 6.1939054e+02 1.3961520e+03 3.0387651e+03 - 5.0790113e+02 1.3973057e+03 3.0453323e+03 - 3.8874257e+02 1.3982344e+03 3.0508160e+03 - 2.6312228e+02 1.3989143e+03 3.0549608e+03 - 1.3280155e+02 1.3993287e+03 3.0575477e+03 - 2.4067136e-09 1.3994679e+03 3.0584277e+03 - -1.3280155e+02 1.3993287e+03 3.0575477e+03 - -2.6312228e+02 1.3989143e+03 3.0549608e+03 - -3.8874257e+02 1.3982344e+03 3.0508160e+03 - -5.0790113e+02 1.3973057e+03 3.0453323e+03 - -6.1939054e+02 1.3961520e+03 3.0387651e+03 - -7.2255140e+02 1.3948041e+03 3.0313732e+03 - -8.1719287e+02 1.3932998e+03 3.0233946e+03 - -9.0347766e+02 1.3916824e+03 3.0150320e+03 - -9.8180351e+02 1.3899999e+03 3.0064478e+03 - -1.0527012e+03 1.3883042e+03 2.9977651e+03 - -1.1167573e+03 1.3866490e+03 2.9890734e+03 - -1.1745608e+03 1.3850897e+03 2.9804347e+03 - -1.2266712e+03 1.3836820e+03 2.9718904e+03 - -1.2736007e+03 1.3824811e+03 2.9634671e+03 - -1.3158077e+03 1.3815412e+03 2.9551816e+03 - -1.3536961e+03 1.3809146e+03 2.9470446e+03 - -1.3876189e+03 1.3806516e+03 2.9390635e+03 - -1.4178834e+03 1.3807993e+03 2.9312446e+03 - -1.4447570e+03 1.3814019e+03 2.9235943e+03 - -1.4684740e+03 1.3824995e+03 2.9161203e+03 - -1.4892405e+03 1.3841277e+03 2.9088319e+03 - -1.5072401e+03 1.3863174e+03 2.9017406e+03 - -1.5226384e+03 1.3890939e+03 2.8948602e+03 - -1.5355870e+03 1.3924765e+03 2.8882066e+03 - -1.5462267e+03 1.3964780e+03 2.8817975e+03 - -1.5546909e+03 1.4011038e+03 2.8756527e+03 - -1.5611075e+03 1.4063522e+03 2.8697934e+03 - -1.5656011e+03 1.4122129e+03 2.8642419e+03 - -1.5682943e+03 1.4186674e+03 2.8590212e+03 - -1.5693096e+03 1.4256883e+03 2.8541549e+03 - -1.5687692e+03 1.4332393e+03 2.8496662e+03 - -1.5667966e+03 1.4412745e+03 2.8455780e+03 - -1.5635162e+03 1.4497392e+03 2.8419123e+03 - -1.5590536e+03 1.4585690e+03 2.8386894e+03 - -1.5535355e+03 1.4676910e+03 2.8359282e+03 - -1.5470891e+03 1.4770235e+03 2.8336451e+03 - -1.5398416e+03 1.4864765e+03 2.8318543e+03 - -1.5319199e+03 1.4959527e+03 2.8305669e+03 - -1.5234489e+03 1.5053479e+03 2.8297911e+03 - -1.5145517e+03 1.5145517e+03 2.8295319e+03 - -1.5053479e+03 1.5234489e+03 2.8297911e+03 - -1.4959527e+03 1.5319199e+03 2.8305669e+03 - -1.4864765e+03 1.5398416e+03 2.8318543e+03 - -1.4770235e+03 1.5470891e+03 2.8336451e+03 - -1.4676910e+03 1.5535355e+03 2.8359282e+03 - -1.4585690e+03 1.5590536e+03 2.8386894e+03 - -1.4497392e+03 1.5635162e+03 2.8419123e+03 - -1.4412745e+03 1.5667966e+03 2.8455780e+03 - -1.4332393e+03 1.5687692e+03 2.8496662e+03 - -1.4256883e+03 1.5693096e+03 2.8541549e+03 - -1.4186674e+03 1.5682943e+03 2.8590212e+03 - -1.4122129e+03 1.5656011e+03 2.8642419e+03 - -1.4063522e+03 1.5611075e+03 2.8697934e+03 - -1.4011038e+03 1.5546909e+03 2.8756527e+03 - -1.3964780e+03 1.5462267e+03 2.8817975e+03 - -1.3924765e+03 1.5355870e+03 2.8882066e+03 - -1.3890939e+03 1.5226384e+03 2.8948602e+03 - -1.3863174e+03 1.5072401e+03 2.9017406e+03 - -1.3841277e+03 1.4892405e+03 2.9088319e+03 - -1.3824995e+03 1.4684740e+03 2.9161203e+03 - -1.3814019e+03 1.4447570e+03 2.9235943e+03 - -1.3807993e+03 1.4178834e+03 2.9312446e+03 - -1.3806516e+03 1.3876189e+03 2.9390635e+03 - -1.3809146e+03 1.3536961e+03 2.9470446e+03 - -1.3815412e+03 1.3158077e+03 2.9551816e+03 - -1.3824811e+03 1.2736007e+03 2.9634671e+03 - -1.3836820e+03 1.2266712e+03 2.9718904e+03 - -1.3850897e+03 1.1745608e+03 2.9804347e+03 - -1.3866490e+03 1.1167573e+03 2.9890734e+03 - -1.3883042e+03 1.0527012e+03 2.9977651e+03 - -1.3899999e+03 9.8180351e+02 3.0064478e+03 - -1.3916824e+03 9.0347766e+02 3.0150320e+03 - -1.3932998e+03 8.1719287e+02 3.0233946e+03 - -1.3948041e+03 7.2255140e+02 3.0313732e+03 - -1.3961520e+03 6.1939054e+02 3.0387651e+03 - -1.3973057e+03 5.0790113e+02 3.0453323e+03 - -1.3982344e+03 3.8874257e+02 3.0508160e+03 - -1.3989143e+03 2.6312228e+02 3.0549608e+03 - -1.3993287e+03 1.3280155e+02 3.0575477e+03 - -1.3994679e+03 -2.4067136e-09 3.0584277e+03 - -1.3993287e+03 -1.3280155e+02 3.0575477e+03 - -1.3989143e+03 -2.6312228e+02 3.0549608e+03 - -1.3982344e+03 -3.8874257e+02 3.0508160e+03 - -1.3973057e+03 -5.0790113e+02 3.0453323e+03 - -1.3961520e+03 -6.1939054e+02 3.0387651e+03 - -1.3948041e+03 -7.2255140e+02 3.0313732e+03 - -1.3932998e+03 -8.1719287e+02 3.0233946e+03 - -1.3916824e+03 -9.0347766e+02 3.0150320e+03 - -1.3899999e+03 -9.8180351e+02 3.0064478e+03 - -1.3883042e+03 -1.0527012e+03 2.9977651e+03 - -1.3866490e+03 -1.1167573e+03 2.9890734e+03 - -1.3850897e+03 -1.1745608e+03 2.9804347e+03 - -1.3836820e+03 -1.2266712e+03 2.9718904e+03 - -1.3824811e+03 -1.2736007e+03 2.9634671e+03 - -1.3815412e+03 -1.3158077e+03 2.9551816e+03 - -1.3809146e+03 -1.3536961e+03 2.9470446e+03 - -1.3806516e+03 -1.3876189e+03 2.9390635e+03 - -1.3807993e+03 -1.4178834e+03 2.9312446e+03 - -1.3814019e+03 -1.4447570e+03 2.9235943e+03 - -1.3824995e+03 -1.4684740e+03 2.9161203e+03 - -1.3841277e+03 -1.4892405e+03 2.9088319e+03 - -1.3863174e+03 -1.5072401e+03 2.9017406e+03 - -1.3890939e+03 -1.5226384e+03 2.8948602e+03 - -1.3924765e+03 -1.5355870e+03 2.8882066e+03 - -1.3964780e+03 -1.5462267e+03 2.8817975e+03 - -1.4011038e+03 -1.5546909e+03 2.8756527e+03 - -1.4063522e+03 -1.5611075e+03 2.8697934e+03 - -1.4122129e+03 -1.5656011e+03 2.8642419e+03 - -1.4186674e+03 -1.5682943e+03 2.8590212e+03 - -1.4256883e+03 -1.5693096e+03 2.8541549e+03 - -1.4332393e+03 -1.5687692e+03 2.8496662e+03 - -1.4412745e+03 -1.5667966e+03 2.8455780e+03 - -1.4497392e+03 -1.5635162e+03 2.8419123e+03 - -1.4585690e+03 -1.5590536e+03 2.8386894e+03 - -1.4676910e+03 -1.5535355e+03 2.8359282e+03 - -1.4770235e+03 -1.5470891e+03 2.8336451e+03 - -1.4864765e+03 -1.5398416e+03 2.8318543e+03 - -1.4959527e+03 -1.5319199e+03 2.8305669e+03 - -1.5053479e+03 -1.5234489e+03 2.8297911e+03 - -1.5145517e+03 -1.5145517e+03 2.8295319e+03 - -1.5234489e+03 -1.5053479e+03 2.8297911e+03 - -1.5319199e+03 -1.4959527e+03 2.8305669e+03 - -1.5398416e+03 -1.4864765e+03 2.8318543e+03 - -1.5470891e+03 -1.4770235e+03 2.8336451e+03 - -1.5535355e+03 -1.4676910e+03 2.8359282e+03 - -1.5590536e+03 -1.4585690e+03 2.8386894e+03 - -1.5635162e+03 -1.4497392e+03 2.8419123e+03 - -1.5667966e+03 -1.4412745e+03 2.8455780e+03 - -1.5687692e+03 -1.4332393e+03 2.8496662e+03 - -1.5693096e+03 -1.4256883e+03 2.8541549e+03 - -1.5682943e+03 -1.4186674e+03 2.8590212e+03 - -1.5656011e+03 -1.4122129e+03 2.8642419e+03 - -1.5611075e+03 -1.4063522e+03 2.8697934e+03 - -1.5546909e+03 -1.4011038e+03 2.8756527e+03 - -1.5462267e+03 -1.3964780e+03 2.8817975e+03 - -1.5355870e+03 -1.3924765e+03 2.8882066e+03 - -1.5226384e+03 -1.3890939e+03 2.8948602e+03 - -1.5072401e+03 -1.3863174e+03 2.9017406e+03 - -1.4892405e+03 -1.3841277e+03 2.9088319e+03 - -1.4684740e+03 -1.3824995e+03 2.9161203e+03 - -1.4447570e+03 -1.3814019e+03 2.9235943e+03 - -1.4178834e+03 -1.3807993e+03 2.9312446e+03 - -1.3876189e+03 -1.3806516e+03 2.9390635e+03 - -1.3536961e+03 -1.3809146e+03 2.9470446e+03 - -1.3158077e+03 -1.3815412e+03 2.9551816e+03 - -1.2736007e+03 -1.3824811e+03 2.9634671e+03 - -1.2266712e+03 -1.3836820e+03 2.9718904e+03 - -1.1745608e+03 -1.3850897e+03 2.9804347e+03 - -1.1167573e+03 -1.3866490e+03 2.9890734e+03 - -1.0527012e+03 -1.3883042e+03 2.9977651e+03 - -9.8180351e+02 -1.3899999e+03 3.0064478e+03 - -9.0347766e+02 -1.3916824e+03 3.0150320e+03 - -8.1719287e+02 -1.3932998e+03 3.0233946e+03 - -7.2255140e+02 -1.3948041e+03 3.0313732e+03 - -6.1939054e+02 -1.3961520e+03 3.0387651e+03 - -5.0790113e+02 -1.3973057e+03 3.0453323e+03 - -3.8874257e+02 -1.3982344e+03 3.0508160e+03 - -2.6312228e+02 -1.3989143e+03 3.0549608e+03 - -1.3280155e+02 -1.3993287e+03 3.0575477e+03 - -2.4067136e-09 -1.3994679e+03 3.0584277e+03 - 1.3280155e+02 -1.3993287e+03 3.0575477e+03 - 2.6312228e+02 -1.3989143e+03 3.0549608e+03 - 3.8874257e+02 -1.3982344e+03 3.0508160e+03 - 5.0790113e+02 -1.3973057e+03 3.0453323e+03 - 6.1939054e+02 -1.3961520e+03 3.0387651e+03 - 7.2255140e+02 -1.3948041e+03 3.0313732e+03 - 8.1719287e+02 -1.3932998e+03 3.0233946e+03 - 9.0347766e+02 -1.3916824e+03 3.0150320e+03 - 9.8180351e+02 -1.3899999e+03 3.0064478e+03 - 1.0527012e+03 -1.3883042e+03 2.9977651e+03 - 1.1167573e+03 -1.3866490e+03 2.9890734e+03 - 1.1745608e+03 -1.3850897e+03 2.9804347e+03 - 1.2266712e+03 -1.3836820e+03 2.9718904e+03 - 1.2736007e+03 -1.3824811e+03 2.9634671e+03 - 1.3158077e+03 -1.3815412e+03 2.9551816e+03 - 1.3536961e+03 -1.3809146e+03 2.9470446e+03 - 1.3876189e+03 -1.3806516e+03 2.9390635e+03 - 1.4178834e+03 -1.3807993e+03 2.9312446e+03 - 1.4447570e+03 -1.3814019e+03 2.9235943e+03 - 1.4684740e+03 -1.3824995e+03 2.9161203e+03 - 1.4892405e+03 -1.3841277e+03 2.9088319e+03 - 1.5072401e+03 -1.3863174e+03 2.9017406e+03 - 1.5226384e+03 -1.3890939e+03 2.8948602e+03 - 1.5355870e+03 -1.3924765e+03 2.8882066e+03 - 1.5462267e+03 -1.3964780e+03 2.8817975e+03 - 1.5546909e+03 -1.4011038e+03 2.8756527e+03 - 1.5611075e+03 -1.4063522e+03 2.8697934e+03 - 1.5656011e+03 -1.4122129e+03 2.8642419e+03 - 1.5682943e+03 -1.4186674e+03 2.8590212e+03 - 1.5693096e+03 -1.4256883e+03 2.8541549e+03 - 1.5687692e+03 -1.4332393e+03 2.8496662e+03 - 1.5667966e+03 -1.4412745e+03 2.8455780e+03 - 1.5635162e+03 -1.4497392e+03 2.8419123e+03 - 1.5590536e+03 -1.4585690e+03 2.8386894e+03 - 1.5535355e+03 -1.4676910e+03 2.8359282e+03 - 1.5470891e+03 -1.4770235e+03 2.8336451e+03 - 1.5398416e+03 -1.4864765e+03 2.8318543e+03 - 1.5319199e+03 -1.4959527e+03 2.8305669e+03 - 1.5234489e+03 -1.5053479e+03 2.8297911e+03 - 1.5145517e+03 -1.5145517e+03 2.8295319e+03 - 1.5053479e+03 -1.5234489e+03 2.8297911e+03 - 1.4959527e+03 -1.5319199e+03 2.8305669e+03 - 1.4864765e+03 -1.5398416e+03 2.8318543e+03 - 1.4770235e+03 -1.5470891e+03 2.8336451e+03 - 1.4676910e+03 -1.5535355e+03 2.8359282e+03 - 1.4585690e+03 -1.5590536e+03 2.8386894e+03 - 1.4497392e+03 -1.5635162e+03 2.8419123e+03 - 1.4412745e+03 -1.5667966e+03 2.8455780e+03 - 1.4332393e+03 -1.5687692e+03 2.8496662e+03 - 1.4256883e+03 -1.5693096e+03 2.8541549e+03 - 1.4186674e+03 -1.5682943e+03 2.8590212e+03 - 1.4122129e+03 -1.5656011e+03 2.8642419e+03 - 1.4063522e+03 -1.5611075e+03 2.8697934e+03 - 1.4011038e+03 -1.5546909e+03 2.8756527e+03 - 1.3964780e+03 -1.5462267e+03 2.8817975e+03 - 1.3924765e+03 -1.5355870e+03 2.8882066e+03 - 1.3890939e+03 -1.5226384e+03 2.8948602e+03 - 1.3863174e+03 -1.5072401e+03 2.9017406e+03 - 1.3841277e+03 -1.4892405e+03 2.9088319e+03 - 1.3824995e+03 -1.4684740e+03 2.9161203e+03 - 1.3814019e+03 -1.4447570e+03 2.9235943e+03 - 1.3807993e+03 -1.4178834e+03 2.9312446e+03 - 1.3806516e+03 -1.3876189e+03 2.9390635e+03 - 1.3809146e+03 -1.3536961e+03 2.9470446e+03 - 1.3815412e+03 -1.3158077e+03 2.9551816e+03 - 1.3824811e+03 -1.2736007e+03 2.9634671e+03 - 1.3836820e+03 -1.2266712e+03 2.9718904e+03 - 1.3850897e+03 -1.1745608e+03 2.9804347e+03 - 1.3866490e+03 -1.1167573e+03 2.9890734e+03 - 1.3883042e+03 -1.0527012e+03 2.9977651e+03 - 1.3899999e+03 -9.8180351e+02 3.0064478e+03 - 1.3916824e+03 -9.0347766e+02 3.0150320e+03 - 1.3932998e+03 -8.1719287e+02 3.0233946e+03 - 1.3948041e+03 -7.2255140e+02 3.0313732e+03 - 1.3961520e+03 -6.1939054e+02 3.0387651e+03 - 1.3973057e+03 -5.0790113e+02 3.0453323e+03 - 1.3982344e+03 -3.8874257e+02 3.0508160e+03 - 1.3989143e+03 -2.6312228e+02 3.0549608e+03 - 1.3993287e+03 -1.3280155e+02 3.0575477e+03 - 1.3994679e+03 0.0000000e+00 3.0584277e+03 - 1.4418387e+03 -2.4067136e-09 3.0256931e+03 - 1.4417394e+03 1.3860768e+02 3.0247006e+03 - 1.4414383e+03 2.7443149e+02 3.0217900e+03 - 1.4409282e+03 4.0500666e+02 3.0171489e+03 - 1.4402018e+03 5.2842175e+02 3.0110496e+03 - 1.4392561e+03 6.4342164e+02 3.0038037e+03 - 1.4380974e+03 7.4938380e+02 2.9957202e+03 - 1.4367428e+03 8.4620873e+02 2.9870756e+03 - 1.4352213e+03 9.3417458e+02 2.9780980e+03 - 1.4335722e+03 1.0137957e+03 2.9689631e+03 - 1.4318435e+03 1.0857066e+03 2.9597984e+03 - 1.4300898e+03 1.1505784e+03 2.9506912e+03 - 1.4283698e+03 1.2090651e+03 2.9416977e+03 - 1.4267450e+03 1.2617727e+03 2.9328511e+03 - 1.4252777e+03 1.3092455e+03 2.9241694e+03 - 1.4240297e+03 1.3519620e+03 2.9156610e+03 - 1.4230617e+03 1.3903377e+03 2.9073286e+03 - 1.4224323e+03 1.4247310e+03 2.8991727e+03 - 1.4221968e+03 1.4554504e+03 2.8911936e+03 - 1.4224072e+03 1.4827619e+03 2.8833928e+03 - 1.4231112e+03 1.5068963e+03 2.8757740e+03 - 1.4243517e+03 1.5280557e+03 2.8683436e+03 - 1.4261662e+03 1.5464190e+03 2.8611110e+03 - 1.4285862e+03 1.5621476e+03 2.8540884e+03 - 1.4316366e+03 1.5753888e+03 2.8472909e+03 - 1.4353353e+03 1.5862800e+03 2.8407363e+03 - 1.4396920e+03 1.5949517e+03 2.8344447e+03 - 1.4447087e+03 1.6015298e+03 2.8284379e+03 - 1.4503781e+03 1.6061377e+03 2.8227395e+03 - 1.4566840e+03 1.6088978e+03 2.8173740e+03 - 1.4636003e+03 1.6099332e+03 2.8123665e+03 - 1.4710911e+03 1.6093678e+03 2.8077422e+03 - 1.4791105e+03 1.6073273e+03 2.8035260e+03 - 1.4876024e+03 1.6039397e+03 2.7997416e+03 - 1.4965005e+03 1.5993346e+03 2.7964114e+03 - 1.5057290e+03 1.5936435e+03 2.7935559e+03 - 1.5152024e+03 1.5869991e+03 2.7911933e+03 - 1.5248266e+03 1.5795345e+03 2.7893390e+03 - 1.5344990e+03 1.5713828e+03 2.7880055e+03 - 1.5441097e+03 1.5626756e+03 2.7872017e+03 - 1.5535425e+03 1.5535425e+03 2.7869331e+03 - 1.5626756e+03 1.5441097e+03 2.7872017e+03 - 1.5713828e+03 1.5344990e+03 2.7880055e+03 - 1.5795345e+03 1.5248266e+03 2.7893390e+03 - 1.5869991e+03 1.5152024e+03 2.7911933e+03 - 1.5936435e+03 1.5057290e+03 2.7935559e+03 - 1.5993346e+03 1.4965005e+03 2.7964114e+03 - 1.6039397e+03 1.4876024e+03 2.7997416e+03 - 1.6073273e+03 1.4791105e+03 2.8035260e+03 - 1.6093678e+03 1.4710911e+03 2.8077422e+03 - 1.6099332e+03 1.4636003e+03 2.8123665e+03 - 1.6088978e+03 1.4566840e+03 2.8173740e+03 - 1.6061377e+03 1.4503781e+03 2.8227395e+03 - 1.6015298e+03 1.4447087e+03 2.8284379e+03 - 1.5949517e+03 1.4396920e+03 2.8344447e+03 - 1.5862800e+03 1.4353353e+03 2.8407363e+03 - 1.5753888e+03 1.4316366e+03 2.8472909e+03 - 1.5621476e+03 1.4285862e+03 2.8540884e+03 - 1.5464190e+03 1.4261662e+03 2.8611110e+03 - 1.5280557e+03 1.4243517e+03 2.8683436e+03 - 1.5068963e+03 1.4231112e+03 2.8757740e+03 - 1.4827619e+03 1.4224072e+03 2.8833928e+03 - 1.4554504e+03 1.4221968e+03 2.8911936e+03 - 1.4247310e+03 1.4224323e+03 2.8991727e+03 - 1.3903377e+03 1.4230617e+03 2.9073286e+03 - 1.3519620e+03 1.4240297e+03 2.9156610e+03 - 1.3092455e+03 1.4252777e+03 2.9241694e+03 - 1.2617727e+03 1.4267450e+03 2.9328511e+03 - 1.2090651e+03 1.4283698e+03 2.9416977e+03 - 1.1505784e+03 1.4300898e+03 2.9506912e+03 - 1.0857066e+03 1.4318435e+03 2.9597984e+03 - 1.0137957e+03 1.4335722e+03 2.9689631e+03 - 9.3417458e+02 1.4352213e+03 2.9780980e+03 - 8.4620873e+02 1.4367428e+03 2.9870756e+03 - 7.4938380e+02 1.4380974e+03 2.9957202e+03 - 6.4342164e+02 1.4392561e+03 3.0038037e+03 - 5.2842175e+02 1.4402018e+03 3.0110496e+03 - 4.0500666e+02 1.4409282e+03 3.0171489e+03 - 2.7443149e+02 1.4414383e+03 3.0217900e+03 - 1.3860768e+02 1.4417394e+03 3.0247006e+03 - 0.0000000e+00 1.4418387e+03 3.0256931e+03 - -1.3860768e+02 1.4417394e+03 3.0247006e+03 - -2.7443149e+02 1.4414383e+03 3.0217900e+03 - -4.0500666e+02 1.4409282e+03 3.0171489e+03 - -5.2842175e+02 1.4402018e+03 3.0110496e+03 - -6.4342164e+02 1.4392561e+03 3.0038037e+03 - -7.4938380e+02 1.4380974e+03 2.9957202e+03 - -8.4620873e+02 1.4367428e+03 2.9870756e+03 - -9.3417458e+02 1.4352213e+03 2.9780980e+03 - -1.0137957e+03 1.4335722e+03 2.9689631e+03 - -1.0857066e+03 1.4318435e+03 2.9597984e+03 - -1.1505784e+03 1.4300898e+03 2.9506912e+03 - -1.2090651e+03 1.4283698e+03 2.9416977e+03 - -1.2617727e+03 1.4267450e+03 2.9328511e+03 - -1.3092455e+03 1.4252777e+03 2.9241694e+03 - -1.3519620e+03 1.4240297e+03 2.9156610e+03 - -1.3903377e+03 1.4230617e+03 2.9073286e+03 - -1.4247310e+03 1.4224323e+03 2.8991727e+03 - -1.4554504e+03 1.4221968e+03 2.8911936e+03 - -1.4827619e+03 1.4224072e+03 2.8833928e+03 - -1.5068963e+03 1.4231112e+03 2.8757740e+03 - -1.5280557e+03 1.4243517e+03 2.8683436e+03 - -1.5464190e+03 1.4261662e+03 2.8611110e+03 - -1.5621476e+03 1.4285862e+03 2.8540884e+03 - -1.5753888e+03 1.4316366e+03 2.8472909e+03 - -1.5862800e+03 1.4353353e+03 2.8407363e+03 - -1.5949517e+03 1.4396920e+03 2.8344447e+03 - -1.6015298e+03 1.4447087e+03 2.8284379e+03 - -1.6061377e+03 1.4503781e+03 2.8227395e+03 - -1.6088978e+03 1.4566840e+03 2.8173740e+03 - -1.6099332e+03 1.4636003e+03 2.8123665e+03 - -1.6093678e+03 1.4710911e+03 2.8077422e+03 - -1.6073273e+03 1.4791105e+03 2.8035260e+03 - -1.6039397e+03 1.4876024e+03 2.7997416e+03 - -1.5993346e+03 1.4965005e+03 2.7964114e+03 - -1.5936435e+03 1.5057290e+03 2.7935559e+03 - -1.5869991e+03 1.5152024e+03 2.7911933e+03 - -1.5795345e+03 1.5248266e+03 2.7893390e+03 - -1.5713828e+03 1.5344990e+03 2.7880055e+03 - -1.5626756e+03 1.5441097e+03 2.7872017e+03 - -1.5535425e+03 1.5535425e+03 2.7869331e+03 - -1.5441097e+03 1.5626756e+03 2.7872017e+03 - -1.5344990e+03 1.5713828e+03 2.7880055e+03 - -1.5248266e+03 1.5795345e+03 2.7893390e+03 - -1.5152024e+03 1.5869991e+03 2.7911933e+03 - -1.5057290e+03 1.5936435e+03 2.7935559e+03 - -1.4965005e+03 1.5993346e+03 2.7964114e+03 - -1.4876024e+03 1.6039397e+03 2.7997416e+03 - -1.4791105e+03 1.6073273e+03 2.8035260e+03 - -1.4710911e+03 1.6093678e+03 2.8077422e+03 - -1.4636003e+03 1.6099332e+03 2.8123665e+03 - -1.4566840e+03 1.6088978e+03 2.8173740e+03 - -1.4503781e+03 1.6061377e+03 2.8227395e+03 - -1.4447087e+03 1.6015298e+03 2.8284379e+03 - -1.4396920e+03 1.5949517e+03 2.8344447e+03 - -1.4353353e+03 1.5862800e+03 2.8407363e+03 - -1.4316366e+03 1.5753888e+03 2.8472909e+03 - -1.4285862e+03 1.5621476e+03 2.8540884e+03 - -1.4261662e+03 1.5464190e+03 2.8611110e+03 - -1.4243517e+03 1.5280557e+03 2.8683436e+03 - -1.4231112e+03 1.5068963e+03 2.8757740e+03 - -1.4224072e+03 1.4827619e+03 2.8833928e+03 - -1.4221968e+03 1.4554504e+03 2.8911936e+03 - -1.4224323e+03 1.4247310e+03 2.8991727e+03 - -1.4230617e+03 1.3903377e+03 2.9073286e+03 - -1.4240297e+03 1.3519620e+03 2.9156610e+03 - -1.4252777e+03 1.3092455e+03 2.9241694e+03 - -1.4267450e+03 1.2617727e+03 2.9328511e+03 - -1.4283698e+03 1.2090651e+03 2.9416977e+03 - -1.4300898e+03 1.1505784e+03 2.9506912e+03 - -1.4318435e+03 1.0857066e+03 2.9597984e+03 - -1.4335722e+03 1.0137957e+03 2.9689631e+03 - -1.4352213e+03 9.3417458e+02 2.9780980e+03 - -1.4367428e+03 8.4620873e+02 2.9870756e+03 - -1.4380974e+03 7.4938380e+02 2.9957202e+03 - -1.4392561e+03 6.4342164e+02 3.0038037e+03 - -1.4402018e+03 5.2842175e+02 3.0110496e+03 - -1.4409282e+03 4.0500666e+02 3.0171489e+03 - -1.4414383e+03 2.7443149e+02 3.0217900e+03 - -1.4417394e+03 1.3860768e+02 3.0247006e+03 - -1.4418387e+03 2.4067136e-09 3.0256931e+03 - -1.4417394e+03 -1.3860768e+02 3.0247006e+03 - -1.4414383e+03 -2.7443149e+02 3.0217900e+03 - -1.4409282e+03 -4.0500666e+02 3.0171489e+03 - -1.4402018e+03 -5.2842175e+02 3.0110496e+03 - -1.4392561e+03 -6.4342164e+02 3.0038037e+03 - -1.4380974e+03 -7.4938380e+02 2.9957202e+03 - -1.4367428e+03 -8.4620873e+02 2.9870756e+03 - -1.4352213e+03 -9.3417458e+02 2.9780980e+03 - -1.4335722e+03 -1.0137957e+03 2.9689631e+03 - -1.4318435e+03 -1.0857066e+03 2.9597984e+03 - -1.4300898e+03 -1.1505784e+03 2.9506912e+03 - -1.4283698e+03 -1.2090651e+03 2.9416977e+03 - -1.4267450e+03 -1.2617727e+03 2.9328511e+03 - -1.4252777e+03 -1.3092455e+03 2.9241694e+03 - -1.4240297e+03 -1.3519620e+03 2.9156610e+03 - -1.4230617e+03 -1.3903377e+03 2.9073286e+03 - -1.4224323e+03 -1.4247310e+03 2.8991727e+03 - -1.4221968e+03 -1.4554504e+03 2.8911936e+03 - -1.4224072e+03 -1.4827619e+03 2.8833928e+03 - -1.4231112e+03 -1.5068963e+03 2.8757740e+03 - -1.4243517e+03 -1.5280557e+03 2.8683436e+03 - -1.4261662e+03 -1.5464190e+03 2.8611110e+03 - -1.4285862e+03 -1.5621476e+03 2.8540884e+03 - -1.4316366e+03 -1.5753888e+03 2.8472909e+03 - -1.4353353e+03 -1.5862800e+03 2.8407363e+03 - -1.4396920e+03 -1.5949517e+03 2.8344447e+03 - -1.4447087e+03 -1.6015298e+03 2.8284379e+03 - -1.4503781e+03 -1.6061377e+03 2.8227395e+03 - -1.4566840e+03 -1.6088978e+03 2.8173740e+03 - -1.4636003e+03 -1.6099332e+03 2.8123665e+03 - -1.4710911e+03 -1.6093678e+03 2.8077422e+03 - -1.4791105e+03 -1.6073273e+03 2.8035260e+03 - -1.4876024e+03 -1.6039397e+03 2.7997416e+03 - -1.4965005e+03 -1.5993346e+03 2.7964114e+03 - -1.5057290e+03 -1.5936435e+03 2.7935559e+03 - -1.5152024e+03 -1.5869991e+03 2.7911933e+03 - -1.5248266e+03 -1.5795345e+03 2.7893390e+03 - -1.5344990e+03 -1.5713828e+03 2.7880055e+03 - -1.5441097e+03 -1.5626756e+03 2.7872017e+03 - -1.5535425e+03 -1.5535425e+03 2.7869331e+03 - -1.5626756e+03 -1.5441097e+03 2.7872017e+03 - -1.5713828e+03 -1.5344990e+03 2.7880055e+03 - -1.5795345e+03 -1.5248266e+03 2.7893390e+03 - -1.5869991e+03 -1.5152024e+03 2.7911933e+03 - -1.5936435e+03 -1.5057290e+03 2.7935559e+03 - -1.5993346e+03 -1.4965005e+03 2.7964114e+03 - -1.6039397e+03 -1.4876024e+03 2.7997416e+03 - -1.6073273e+03 -1.4791105e+03 2.8035260e+03 - -1.6093678e+03 -1.4710911e+03 2.8077422e+03 - -1.6099332e+03 -1.4636003e+03 2.8123665e+03 - -1.6088978e+03 -1.4566840e+03 2.8173740e+03 - -1.6061377e+03 -1.4503781e+03 2.8227395e+03 - -1.6015298e+03 -1.4447087e+03 2.8284379e+03 - -1.5949517e+03 -1.4396920e+03 2.8344447e+03 - -1.5862800e+03 -1.4353353e+03 2.8407363e+03 - -1.5753888e+03 -1.4316366e+03 2.8472909e+03 - -1.5621476e+03 -1.4285862e+03 2.8540884e+03 - -1.5464190e+03 -1.4261662e+03 2.8611110e+03 - -1.5280557e+03 -1.4243517e+03 2.8683436e+03 - -1.5068963e+03 -1.4231112e+03 2.8757740e+03 - -1.4827619e+03 -1.4224072e+03 2.8833928e+03 - -1.4554504e+03 -1.4221968e+03 2.8911936e+03 - -1.4247310e+03 -1.4224323e+03 2.8991727e+03 - -1.3903377e+03 -1.4230617e+03 2.9073286e+03 - -1.3519620e+03 -1.4240297e+03 2.9156610e+03 - -1.3092455e+03 -1.4252777e+03 2.9241694e+03 - -1.2617727e+03 -1.4267450e+03 2.9328511e+03 - -1.2090651e+03 -1.4283698e+03 2.9416977e+03 - -1.1505784e+03 -1.4300898e+03 2.9506912e+03 - -1.0857066e+03 -1.4318435e+03 2.9597984e+03 - -1.0137957e+03 -1.4335722e+03 2.9689631e+03 - -9.3417458e+02 -1.4352213e+03 2.9780980e+03 - -8.4620873e+02 -1.4367428e+03 2.9870756e+03 - -7.4938380e+02 -1.4380974e+03 2.9957202e+03 - -6.4342164e+02 -1.4392561e+03 3.0038037e+03 - -5.2842175e+02 -1.4402018e+03 3.0110496e+03 - -4.0500666e+02 -1.4409282e+03 3.0171489e+03 - -2.7443149e+02 -1.4414383e+03 3.0217900e+03 - -1.3860768e+02 -1.4417394e+03 3.0247006e+03 - 0.0000000e+00 -1.4418387e+03 3.0256931e+03 - 1.3860768e+02 -1.4417394e+03 3.0247006e+03 - 2.7443149e+02 -1.4414383e+03 3.0217900e+03 - 4.0500666e+02 -1.4409282e+03 3.0171489e+03 - 5.2842175e+02 -1.4402018e+03 3.0110496e+03 - 6.4342164e+02 -1.4392561e+03 3.0038037e+03 - 7.4938380e+02 -1.4380974e+03 2.9957202e+03 - 8.4620873e+02 -1.4367428e+03 2.9870756e+03 - 9.3417458e+02 -1.4352213e+03 2.9780980e+03 - 1.0137957e+03 -1.4335722e+03 2.9689631e+03 - 1.0857066e+03 -1.4318435e+03 2.9597984e+03 - 1.1505784e+03 -1.4300898e+03 2.9506912e+03 - 1.2090651e+03 -1.4283698e+03 2.9416977e+03 - 1.2617727e+03 -1.4267450e+03 2.9328511e+03 - 1.3092455e+03 -1.4252777e+03 2.9241694e+03 - 1.3519620e+03 -1.4240297e+03 2.9156610e+03 - 1.3903377e+03 -1.4230617e+03 2.9073286e+03 - 1.4247310e+03 -1.4224323e+03 2.8991727e+03 - 1.4554504e+03 -1.4221968e+03 2.8911936e+03 - 1.4827619e+03 -1.4224072e+03 2.8833928e+03 - 1.5068963e+03 -1.4231112e+03 2.8757740e+03 - 1.5280557e+03 -1.4243517e+03 2.8683436e+03 - 1.5464190e+03 -1.4261662e+03 2.8611110e+03 - 1.5621476e+03 -1.4285862e+03 2.8540884e+03 - 1.5753888e+03 -1.4316366e+03 2.8472909e+03 - 1.5862800e+03 -1.4353353e+03 2.8407363e+03 - 1.5949517e+03 -1.4396920e+03 2.8344447e+03 - 1.6015298e+03 -1.4447087e+03 2.8284379e+03 - 1.6061377e+03 -1.4503781e+03 2.8227395e+03 - 1.6088978e+03 -1.4566840e+03 2.8173740e+03 - 1.6099332e+03 -1.4636003e+03 2.8123665e+03 - 1.6093678e+03 -1.4710911e+03 2.8077422e+03 - 1.6073273e+03 -1.4791105e+03 2.8035260e+03 - 1.6039397e+03 -1.4876024e+03 2.7997416e+03 - 1.5993346e+03 -1.4965005e+03 2.7964114e+03 - 1.5936435e+03 -1.5057290e+03 2.7935559e+03 - 1.5869991e+03 -1.5152024e+03 2.7911933e+03 - 1.5795345e+03 -1.5248266e+03 2.7893390e+03 - 1.5713828e+03 -1.5344990e+03 2.7880055e+03 - 1.5626756e+03 -1.5441097e+03 2.7872017e+03 - 1.5535425e+03 -1.5535425e+03 2.7869331e+03 - 1.5441097e+03 -1.5626756e+03 2.7872017e+03 - 1.5344990e+03 -1.5713828e+03 2.7880055e+03 - 1.5248266e+03 -1.5795345e+03 2.7893390e+03 - 1.5152024e+03 -1.5869991e+03 2.7911933e+03 - 1.5057290e+03 -1.5936435e+03 2.7935559e+03 - 1.4965005e+03 -1.5993346e+03 2.7964114e+03 - 1.4876024e+03 -1.6039397e+03 2.7997416e+03 - 1.4791105e+03 -1.6073273e+03 2.8035260e+03 - 1.4710911e+03 -1.6093678e+03 2.8077422e+03 - 1.4636003e+03 -1.6099332e+03 2.8123665e+03 - 1.4566840e+03 -1.6088978e+03 2.8173740e+03 - 1.4503781e+03 -1.6061377e+03 2.8227395e+03 - 1.4447087e+03 -1.6015298e+03 2.8284379e+03 - 1.4396920e+03 -1.5949517e+03 2.8344447e+03 - 1.4353353e+03 -1.5862800e+03 2.8407363e+03 - 1.4316366e+03 -1.5753888e+03 2.8472909e+03 - 1.4285862e+03 -1.5621476e+03 2.8540884e+03 - 1.4261662e+03 -1.5464190e+03 2.8611110e+03 - 1.4243517e+03 -1.5280557e+03 2.8683436e+03 - 1.4231112e+03 -1.5068963e+03 2.8757740e+03 - 1.4224072e+03 -1.4827619e+03 2.8833928e+03 - 1.4221968e+03 -1.4554504e+03 2.8911936e+03 - 1.4224323e+03 -1.4247310e+03 2.8991727e+03 - 1.4230617e+03 -1.3903377e+03 2.9073286e+03 - 1.4240297e+03 -1.3519620e+03 2.9156610e+03 - 1.4252777e+03 -1.3092455e+03 2.9241694e+03 - 1.4267450e+03 -1.2617727e+03 2.9328511e+03 - 1.4283698e+03 -1.2090651e+03 2.9416977e+03 - 1.4300898e+03 -1.1505784e+03 2.9506912e+03 - 1.4318435e+03 -1.0857066e+03 2.9597984e+03 - 1.4335722e+03 -1.0137957e+03 2.9689631e+03 - 1.4352213e+03 -9.3417458e+02 2.9780980e+03 - 1.4367428e+03 -8.4620873e+02 2.9870756e+03 - 1.4380974e+03 -7.4938380e+02 2.9957202e+03 - 1.4392561e+03 -6.4342164e+02 3.0038037e+03 - 1.4402018e+03 -5.2842175e+02 3.0110496e+03 - 1.4409282e+03 -4.0500666e+02 3.0171489e+03 - 1.4414383e+03 -2.7443149e+02 3.0217900e+03 - 1.4417394e+03 -1.3860768e+02 3.0247006e+03 - 1.4418387e+03 2.4067136e-09 3.0256931e+03 - 1.4841194e+03 2.4067136e-09 2.9916819e+03 - 1.4840754e+03 1.4479268e+02 2.9905535e+03 - 1.4839315e+03 2.8643433e+02 2.9872547e+03 - 1.4836556e+03 4.2216979e+02 2.9820246e+03 - 1.4832058e+03 5.4992108e+02 2.9752053e+03 - 1.4825425e+03 6.6839574e+02 2.9671808e+03 - 1.4816387e+03 7.7703543e+02 2.9583219e+03 - 1.4804862e+03 8.7586480e+02 2.9489496e+03 - 1.4790966e+03 9.6530750e+02 2.9393193e+03 - 1.4775003e+03 1.0460174e+03 2.9296189e+03 - 1.4757428e+03 1.1187480e+03 2.9199769e+03 - 1.4738811e+03 1.1842638e+03 2.9104749e+03 - 1.4719796e+03 1.2432870e+03 2.9011590e+03 - 1.4701077e+03 1.2964709e+03 2.8920513e+03 - 1.4683365e+03 1.3443899e+03 2.8831581e+03 - 1.4667377e+03 1.3875403e+03 2.8744769e+03 - 1.4653817e+03 1.4263463e+03 2.8660007e+03 - 1.4643364e+03 1.4611690e+03 2.8577215e+03 - 1.4636665e+03 1.4923153e+03 2.8496327e+03 - 1.4634328e+03 1.5200472e+03 2.8417299e+03 - 1.4636914e+03 1.5445901e+03 2.8340124e+03 - 1.4644928e+03 1.5661401e+03 2.8264832e+03 - 1.4658818e+03 1.5848702e+03 2.8191491e+03 - 1.4678964e+03 1.6009357e+03 2.8120210e+03 - 1.4705678e+03 1.6144788e+03 2.8051130e+03 - 1.4739188e+03 1.6256325e+03 2.7984428e+03 - 1.4779642e+03 1.6345236e+03 2.7920308e+03 - 1.4827096e+03 1.6412752e+03 2.7859000e+03 - 1.4881511e+03 1.6460092e+03 2.7800751e+03 - 1.4942747e+03 1.6488473e+03 2.7745824e+03 - 1.5010559e+03 1.6499127e+03 2.7694488e+03 - 1.5084595e+03 1.6493310e+03 2.7647016e+03 - 1.5164391e+03 1.6472303e+03 2.7603678e+03 - 1.5249374e+03 1.6437417e+03 2.7564733e+03 - 1.5338862e+03 1.6389991e+03 2.7530426e+03 - 1.5432065e+03 1.6331389e+03 2.7500983e+03 - 1.5528090e+03 1.6262995e+03 2.7476603e+03 - 1.5625948e+03 1.6186204e+03 2.7457457e+03 - 1.5724560e+03 1.6102410e+03 2.7443681e+03 - 1.5822768e+03 1.6013002e+03 2.7435374e+03 - 1.5919344e+03 1.5919344e+03 2.7432599e+03 - 1.6013002e+03 1.5822768e+03 2.7435374e+03 - 1.6102410e+03 1.5724560e+03 2.7443681e+03 - 1.6186204e+03 1.5625948e+03 2.7457457e+03 - 1.6262995e+03 1.5528090e+03 2.7476603e+03 - 1.6331389e+03 1.5432065e+03 2.7500983e+03 - 1.6389991e+03 1.5338862e+03 2.7530426e+03 - 1.6437417e+03 1.5249374e+03 2.7564733e+03 - 1.6472303e+03 1.5164391e+03 2.7603678e+03 - 1.6493310e+03 1.5084595e+03 2.7647016e+03 - 1.6499127e+03 1.5010559e+03 2.7694488e+03 - 1.6488473e+03 1.4942747e+03 2.7745824e+03 - 1.6460092e+03 1.4881511e+03 2.7800751e+03 - 1.6412752e+03 1.4827096e+03 2.7859000e+03 - 1.6345236e+03 1.4779642e+03 2.7920308e+03 - 1.6256325e+03 1.4739188e+03 2.7984428e+03 - 1.6144788e+03 1.4705678e+03 2.8051130e+03 - 1.6009357e+03 1.4678964e+03 2.8120210e+03 - 1.5848702e+03 1.4658818e+03 2.8191491e+03 - 1.5661401e+03 1.4644928e+03 2.8264832e+03 - 1.5445901e+03 1.4636914e+03 2.8340124e+03 - 1.5200472e+03 1.4634328e+03 2.8417299e+03 - 1.4923153e+03 1.4636665e+03 2.8496327e+03 - 1.4611690e+03 1.4643364e+03 2.8577215e+03 - 1.4263463e+03 1.4653817e+03 2.8660007e+03 - 1.3875403e+03 1.4667377e+03 2.8744769e+03 - 1.3443899e+03 1.4683365e+03 2.8831581e+03 - 1.2964709e+03 1.4701077e+03 2.8920513e+03 - 1.2432870e+03 1.4719796e+03 2.9011590e+03 - 1.1842638e+03 1.4738811e+03 2.9104749e+03 - 1.1187480e+03 1.4757428e+03 2.9199769e+03 - 1.0460174e+03 1.4775003e+03 2.9296189e+03 - 9.6530750e+02 1.4790966e+03 2.9393193e+03 - 8.7586480e+02 1.4804862e+03 2.9489496e+03 - 7.7703543e+02 1.4816387e+03 2.9583219e+03 - 6.6839574e+02 1.4825425e+03 2.9671808e+03 - 5.4992108e+02 1.4832058e+03 2.9752053e+03 - 4.2216979e+02 1.4836556e+03 2.9820246e+03 - 2.8643433e+02 1.4839315e+03 2.9872547e+03 - 1.4479268e+02 1.4840754e+03 2.9905535e+03 - 0.0000000e+00 1.4841194e+03 2.9916819e+03 - -1.4479268e+02 1.4840754e+03 2.9905535e+03 - -2.8643433e+02 1.4839315e+03 2.9872547e+03 - -4.2216979e+02 1.4836556e+03 2.9820246e+03 - -5.4992108e+02 1.4832058e+03 2.9752053e+03 - -6.6839574e+02 1.4825425e+03 2.9671808e+03 - -7.7703543e+02 1.4816387e+03 2.9583219e+03 - -8.7586480e+02 1.4804862e+03 2.9489496e+03 - -9.6530750e+02 1.4790966e+03 2.9393193e+03 - -1.0460174e+03 1.4775003e+03 2.9296189e+03 - -1.1187480e+03 1.4757428e+03 2.9199769e+03 - -1.1842638e+03 1.4738811e+03 2.9104749e+03 - -1.2432870e+03 1.4719796e+03 2.9011590e+03 - -1.2964709e+03 1.4701077e+03 2.8920513e+03 - -1.3443899e+03 1.4683365e+03 2.8831581e+03 - -1.3875403e+03 1.4667377e+03 2.8744769e+03 - -1.4263463e+03 1.4653817e+03 2.8660007e+03 - -1.4611690e+03 1.4643364e+03 2.8577215e+03 - -1.4923153e+03 1.4636665e+03 2.8496327e+03 - -1.5200472e+03 1.4634328e+03 2.8417299e+03 - -1.5445901e+03 1.4636914e+03 2.8340124e+03 - -1.5661401e+03 1.4644928e+03 2.8264832e+03 - -1.5848702e+03 1.4658818e+03 2.8191491e+03 - -1.6009357e+03 1.4678964e+03 2.8120210e+03 - -1.6144788e+03 1.4705678e+03 2.8051130e+03 - -1.6256325e+03 1.4739188e+03 2.7984428e+03 - -1.6345236e+03 1.4779642e+03 2.7920308e+03 - -1.6412752e+03 1.4827096e+03 2.7859000e+03 - -1.6460092e+03 1.4881511e+03 2.7800751e+03 - -1.6488473e+03 1.4942747e+03 2.7745824e+03 - -1.6499127e+03 1.5010559e+03 2.7694488e+03 - -1.6493310e+03 1.5084595e+03 2.7647016e+03 - -1.6472303e+03 1.5164391e+03 2.7603678e+03 - -1.6437417e+03 1.5249374e+03 2.7564733e+03 - -1.6389991e+03 1.5338862e+03 2.7530426e+03 - -1.6331389e+03 1.5432065e+03 2.7500983e+03 - -1.6262995e+03 1.5528090e+03 2.7476603e+03 - -1.6186204e+03 1.5625948e+03 2.7457457e+03 - -1.6102410e+03 1.5724560e+03 2.7443681e+03 - -1.6013002e+03 1.5822768e+03 2.7435374e+03 - -1.5919344e+03 1.5919344e+03 2.7432599e+03 - -1.5822768e+03 1.6013002e+03 2.7435374e+03 - -1.5724560e+03 1.6102410e+03 2.7443681e+03 - -1.5625948e+03 1.6186204e+03 2.7457457e+03 - -1.5528090e+03 1.6262995e+03 2.7476603e+03 - -1.5432065e+03 1.6331389e+03 2.7500983e+03 - -1.5338862e+03 1.6389991e+03 2.7530426e+03 - -1.5249374e+03 1.6437417e+03 2.7564733e+03 - -1.5164391e+03 1.6472303e+03 2.7603678e+03 - -1.5084595e+03 1.6493310e+03 2.7647016e+03 - -1.5010559e+03 1.6499127e+03 2.7694488e+03 - -1.4942747e+03 1.6488473e+03 2.7745824e+03 - -1.4881511e+03 1.6460092e+03 2.7800751e+03 - -1.4827096e+03 1.6412752e+03 2.7859000e+03 - -1.4779642e+03 1.6345236e+03 2.7920308e+03 - -1.4739188e+03 1.6256325e+03 2.7984428e+03 - -1.4705678e+03 1.6144788e+03 2.8051130e+03 - -1.4678964e+03 1.6009357e+03 2.8120210e+03 - -1.4658818e+03 1.5848702e+03 2.8191491e+03 - -1.4644928e+03 1.5661401e+03 2.8264832e+03 - -1.4636914e+03 1.5445901e+03 2.8340124e+03 - -1.4634328e+03 1.5200472e+03 2.8417299e+03 - -1.4636665e+03 1.4923153e+03 2.8496327e+03 - -1.4643364e+03 1.4611690e+03 2.8577215e+03 - -1.4653817e+03 1.4263463e+03 2.8660007e+03 - -1.4667377e+03 1.3875403e+03 2.8744769e+03 - -1.4683365e+03 1.3443899e+03 2.8831581e+03 - -1.4701077e+03 1.2964709e+03 2.8920513e+03 - -1.4719796e+03 1.2432870e+03 2.9011590e+03 - -1.4738811e+03 1.1842638e+03 2.9104749e+03 - -1.4757428e+03 1.1187480e+03 2.9199769e+03 - -1.4775003e+03 1.0460174e+03 2.9296189e+03 - -1.4790966e+03 9.6530750e+02 2.9393193e+03 - -1.4804862e+03 8.7586480e+02 2.9489496e+03 - -1.4816387e+03 7.7703543e+02 2.9583219e+03 - -1.4825425e+03 6.6839574e+02 2.9671808e+03 - -1.4832058e+03 5.4992108e+02 2.9752053e+03 - -1.4836556e+03 4.2216979e+02 2.9820246e+03 - -1.4839315e+03 2.8643433e+02 2.9872547e+03 - -1.4840754e+03 1.4479268e+02 2.9905535e+03 - -1.4841194e+03 0.0000000e+00 2.9916819e+03 - -1.4840754e+03 -1.4479268e+02 2.9905535e+03 - -1.4839315e+03 -2.8643433e+02 2.9872547e+03 - -1.4836556e+03 -4.2216979e+02 2.9820246e+03 - -1.4832058e+03 -5.4992108e+02 2.9752053e+03 - -1.4825425e+03 -6.6839574e+02 2.9671808e+03 - -1.4816387e+03 -7.7703543e+02 2.9583219e+03 - -1.4804862e+03 -8.7586480e+02 2.9489496e+03 - -1.4790966e+03 -9.6530750e+02 2.9393193e+03 - -1.4775003e+03 -1.0460174e+03 2.9296189e+03 - -1.4757428e+03 -1.1187480e+03 2.9199769e+03 - -1.4738811e+03 -1.1842638e+03 2.9104749e+03 - -1.4719796e+03 -1.2432870e+03 2.9011590e+03 - -1.4701077e+03 -1.2964709e+03 2.8920513e+03 - -1.4683365e+03 -1.3443899e+03 2.8831581e+03 - -1.4667377e+03 -1.3875403e+03 2.8744769e+03 - -1.4653817e+03 -1.4263463e+03 2.8660007e+03 - -1.4643364e+03 -1.4611690e+03 2.8577215e+03 - -1.4636665e+03 -1.4923153e+03 2.8496327e+03 - -1.4634328e+03 -1.5200472e+03 2.8417299e+03 - -1.4636914e+03 -1.5445901e+03 2.8340124e+03 - -1.4644928e+03 -1.5661401e+03 2.8264832e+03 - -1.4658818e+03 -1.5848702e+03 2.8191491e+03 - -1.4678964e+03 -1.6009357e+03 2.8120210e+03 - -1.4705678e+03 -1.6144788e+03 2.8051130e+03 - -1.4739188e+03 -1.6256325e+03 2.7984428e+03 - -1.4779642e+03 -1.6345236e+03 2.7920308e+03 - -1.4827096e+03 -1.6412752e+03 2.7859000e+03 - -1.4881511e+03 -1.6460092e+03 2.7800751e+03 - -1.4942747e+03 -1.6488473e+03 2.7745824e+03 - -1.5010559e+03 -1.6499127e+03 2.7694488e+03 - -1.5084595e+03 -1.6493310e+03 2.7647016e+03 - -1.5164391e+03 -1.6472303e+03 2.7603678e+03 - -1.5249374e+03 -1.6437417e+03 2.7564733e+03 - -1.5338862e+03 -1.6389991e+03 2.7530426e+03 - -1.5432065e+03 -1.6331389e+03 2.7500983e+03 - -1.5528090e+03 -1.6262995e+03 2.7476603e+03 - -1.5625948e+03 -1.6186204e+03 2.7457457e+03 - -1.5724560e+03 -1.6102410e+03 2.7443681e+03 - -1.5822768e+03 -1.6013002e+03 2.7435374e+03 - -1.5919344e+03 -1.5919344e+03 2.7432599e+03 - -1.6013002e+03 -1.5822768e+03 2.7435374e+03 - -1.6102410e+03 -1.5724560e+03 2.7443681e+03 - -1.6186204e+03 -1.5625948e+03 2.7457457e+03 - -1.6262995e+03 -1.5528090e+03 2.7476603e+03 - -1.6331389e+03 -1.5432065e+03 2.7500983e+03 - -1.6389991e+03 -1.5338862e+03 2.7530426e+03 - -1.6437417e+03 -1.5249374e+03 2.7564733e+03 - -1.6472303e+03 -1.5164391e+03 2.7603678e+03 - -1.6493310e+03 -1.5084595e+03 2.7647016e+03 - -1.6499127e+03 -1.5010559e+03 2.7694488e+03 - -1.6488473e+03 -1.4942747e+03 2.7745824e+03 - -1.6460092e+03 -1.4881511e+03 2.7800751e+03 - -1.6412752e+03 -1.4827096e+03 2.7859000e+03 - -1.6345236e+03 -1.4779642e+03 2.7920308e+03 - -1.6256325e+03 -1.4739188e+03 2.7984428e+03 - -1.6144788e+03 -1.4705678e+03 2.8051130e+03 - -1.6009357e+03 -1.4678964e+03 2.8120210e+03 - -1.5848702e+03 -1.4658818e+03 2.8191491e+03 - -1.5661401e+03 -1.4644928e+03 2.8264832e+03 - -1.5445901e+03 -1.4636914e+03 2.8340124e+03 - -1.5200472e+03 -1.4634328e+03 2.8417299e+03 - -1.4923153e+03 -1.4636665e+03 2.8496327e+03 - -1.4611690e+03 -1.4643364e+03 2.8577215e+03 - -1.4263463e+03 -1.4653817e+03 2.8660007e+03 - -1.3875403e+03 -1.4667377e+03 2.8744769e+03 - -1.3443899e+03 -1.4683365e+03 2.8831581e+03 - -1.2964709e+03 -1.4701077e+03 2.8920513e+03 - -1.2432870e+03 -1.4719796e+03 2.9011590e+03 - -1.1842638e+03 -1.4738811e+03 2.9104749e+03 - -1.1187480e+03 -1.4757428e+03 2.9199769e+03 - -1.0460174e+03 -1.4775003e+03 2.9296189e+03 - -9.6530750e+02 -1.4790966e+03 2.9393193e+03 - -8.7586480e+02 -1.4804862e+03 2.9489496e+03 - -7.7703543e+02 -1.4816387e+03 2.9583219e+03 - -6.6839574e+02 -1.4825425e+03 2.9671808e+03 - -5.4992108e+02 -1.4832058e+03 2.9752053e+03 - -4.2216979e+02 -1.4836556e+03 2.9820246e+03 - -2.8643433e+02 -1.4839315e+03 2.9872547e+03 - -1.4479268e+02 -1.4840754e+03 2.9905535e+03 - 0.0000000e+00 -1.4841194e+03 2.9916819e+03 - 1.4479268e+02 -1.4840754e+03 2.9905535e+03 - 2.8643433e+02 -1.4839315e+03 2.9872547e+03 - 4.2216979e+02 -1.4836556e+03 2.9820246e+03 - 5.4992108e+02 -1.4832058e+03 2.9752053e+03 - 6.6839574e+02 -1.4825425e+03 2.9671808e+03 - 7.7703543e+02 -1.4816387e+03 2.9583219e+03 - 8.7586480e+02 -1.4804862e+03 2.9489496e+03 - 9.6530750e+02 -1.4790966e+03 2.9393193e+03 - 1.0460174e+03 -1.4775003e+03 2.9296189e+03 - 1.1187480e+03 -1.4757428e+03 2.9199769e+03 - 1.1842638e+03 -1.4738811e+03 2.9104749e+03 - 1.2432870e+03 -1.4719796e+03 2.9011590e+03 - 1.2964709e+03 -1.4701077e+03 2.8920513e+03 - 1.3443899e+03 -1.4683365e+03 2.8831581e+03 - 1.3875403e+03 -1.4667377e+03 2.8744769e+03 - 1.4263463e+03 -1.4653817e+03 2.8660007e+03 - 1.4611690e+03 -1.4643364e+03 2.8577215e+03 - 1.4923153e+03 -1.4636665e+03 2.8496327e+03 - 1.5200472e+03 -1.4634328e+03 2.8417299e+03 - 1.5445901e+03 -1.4636914e+03 2.8340124e+03 - 1.5661401e+03 -1.4644928e+03 2.8264832e+03 - 1.5848702e+03 -1.4658818e+03 2.8191491e+03 - 1.6009357e+03 -1.4678964e+03 2.8120210e+03 - 1.6144788e+03 -1.4705678e+03 2.8051130e+03 - 1.6256325e+03 -1.4739188e+03 2.7984428e+03 - 1.6345236e+03 -1.4779642e+03 2.7920308e+03 - 1.6412752e+03 -1.4827096e+03 2.7859000e+03 - 1.6460092e+03 -1.4881511e+03 2.7800751e+03 - 1.6488473e+03 -1.4942747e+03 2.7745824e+03 - 1.6499127e+03 -1.5010559e+03 2.7694488e+03 - 1.6493310e+03 -1.5084595e+03 2.7647016e+03 - 1.6472303e+03 -1.5164391e+03 2.7603678e+03 - 1.6437417e+03 -1.5249374e+03 2.7564733e+03 - 1.6389991e+03 -1.5338862e+03 2.7530426e+03 - 1.6331389e+03 -1.5432065e+03 2.7500983e+03 - 1.6262995e+03 -1.5528090e+03 2.7476603e+03 - 1.6186204e+03 -1.5625948e+03 2.7457457e+03 - 1.6102410e+03 -1.5724560e+03 2.7443681e+03 - 1.6013002e+03 -1.5822768e+03 2.7435374e+03 - 1.5919344e+03 -1.5919344e+03 2.7432599e+03 - 1.5822768e+03 -1.6013002e+03 2.7435374e+03 - 1.5724560e+03 -1.6102410e+03 2.7443681e+03 - 1.5625948e+03 -1.6186204e+03 2.7457457e+03 - 1.5528090e+03 -1.6262995e+03 2.7476603e+03 - 1.5432065e+03 -1.6331389e+03 2.7500983e+03 - 1.5338862e+03 -1.6389991e+03 2.7530426e+03 - 1.5249374e+03 -1.6437417e+03 2.7564733e+03 - 1.5164391e+03 -1.6472303e+03 2.7603678e+03 - 1.5084595e+03 -1.6493310e+03 2.7647016e+03 - 1.5010559e+03 -1.6499127e+03 2.7694488e+03 - 1.4942747e+03 -1.6488473e+03 2.7745824e+03 - 1.4881511e+03 -1.6460092e+03 2.7800751e+03 - 1.4827096e+03 -1.6412752e+03 2.7859000e+03 - 1.4779642e+03 -1.6345236e+03 2.7920308e+03 - 1.4739188e+03 -1.6256325e+03 2.7984428e+03 - 1.4705678e+03 -1.6144788e+03 2.8051130e+03 - 1.4678964e+03 -1.6009357e+03 2.8120210e+03 - 1.4658818e+03 -1.5848702e+03 2.8191491e+03 - 1.4644928e+03 -1.5661401e+03 2.8264832e+03 - 1.4636914e+03 -1.5445901e+03 2.8340124e+03 - 1.4634328e+03 -1.5200472e+03 2.8417299e+03 - 1.4636665e+03 -1.4923153e+03 2.8496327e+03 - 1.4643364e+03 -1.4611690e+03 2.8577215e+03 - 1.4653817e+03 -1.4263463e+03 2.8660007e+03 - 1.4667377e+03 -1.3875403e+03 2.8744769e+03 - 1.4683365e+03 -1.3443899e+03 2.8831581e+03 - 1.4701077e+03 -1.2964709e+03 2.8920513e+03 - 1.4719796e+03 -1.2432870e+03 2.9011590e+03 - 1.4738811e+03 -1.1842638e+03 2.9104749e+03 - 1.4757428e+03 -1.1187480e+03 2.9199769e+03 - 1.4775003e+03 -1.0460174e+03 2.9296189e+03 - 1.4790966e+03 -9.6530750e+02 2.9393193e+03 - 1.4804862e+03 -8.7586480e+02 2.9489496e+03 - 1.4816387e+03 -7.7703543e+02 2.9583219e+03 - 1.4825425e+03 -6.6839574e+02 2.9671808e+03 - 1.4832058e+03 -5.4992108e+02 2.9752053e+03 - 1.4836556e+03 -4.2216979e+02 2.9820246e+03 - 1.4839315e+03 -2.8643433e+02 2.9872547e+03 - 1.4840754e+03 -1.4479268e+02 2.9905535e+03 - 1.4841194e+03 -2.4067136e-09 2.9916819e+03 - 1.5262932e+03 0.0000000e+00 2.9563705e+03 - 1.5263259e+03 1.5144668e+02 2.9550754e+03 - 1.5263985e+03 2.9928956e+02 2.9513025e+03 - 1.5264423e+03 4.4042498e+02 2.9453617e+03 - 1.5263660e+03 5.7259114e+02 2.9376891e+03 - 1.5260792e+03 6.9447690e+02 2.9287620e+03 - 1.5255114e+03 8.0562741e+02 2.9190272e+03 - 1.5246223e+03 9.0623521e+02 2.9088578e+03 - 1.5234047e+03 9.9690692e+02 2.8985369e+03 - 1.5218803e+03 1.0784629e+03 2.8882614e+03 - 1.5200945e+03 1.1517922e+03 2.8781563e+03 - 1.5181093e+03 1.2177604e+03 2.8682917e+03 - 1.5159983e+03 1.2771607e+03 2.8586991e+03 - 1.5138411e+03 1.3306923e+03 2.8493848e+03 - 1.5117208e+03 1.3789571e+03 2.8403401e+03 - 1.5097205e+03 1.4224655e+03 2.8315487e+03 - 1.5079221e+03 1.4616466e+03 2.8229920e+03 - 1.5064043e+03 1.4968605e+03 2.8146519e+03 - 1.5052424e+03 1.5284095e+03 2.8065136e+03 - 1.5045068e+03 1.5565488e+03 2.7985663e+03 - 1.5042624e+03 1.5814959e+03 2.7908042e+03 - 1.5045683e+03 1.6034390e+03 2.7832264e+03 - 1.5054769e+03 1.6225433e+03 2.7758373e+03 - 1.5070333e+03 1.6389567e+03 2.7686457e+03 - 1.5092749e+03 1.6528152e+03 2.7616654e+03 - 1.5122303e+03 1.6642462e+03 2.7549137e+03 - 1.5159192e+03 1.6733721e+03 2.7484117e+03 - 1.5203512e+03 1.6803126e+03 2.7421835e+03 - 1.5255259e+03 1.6851873e+03 2.7362553e+03 - 1.5314318e+03 1.6881169e+03 2.7306552e+03 - 1.5380459e+03 1.6892248e+03 2.7254124e+03 - 1.5453336e+03 1.6886376e+03 2.7205564e+03 - 1.5532484e+03 1.6864858e+03 2.7161167e+03 - 1.5617317e+03 1.6829037e+03 2.7121217e+03 - 1.5707128e+03 1.6780296e+03 2.7085982e+03 - 1.5801097e+03 1.6720052e+03 2.7055711e+03 - 1.5898290e+03 1.6649746e+03 2.7030624e+03 - 1.5997667e+03 1.6570838e+03 2.7010907e+03 - 1.6098092e+03 1.6484796e+03 2.6996713e+03 - 1.6198344e+03 1.6393078e+03 2.6988152e+03 - 1.6297125e+03 1.6297125e+03 2.6985291e+03 - 1.6393078e+03 1.6198344e+03 2.6988152e+03 - 1.6484796e+03 1.6098092e+03 2.6996713e+03 - 1.6570838e+03 1.5997667e+03 2.7010907e+03 - 1.6649746e+03 1.5898290e+03 2.7030624e+03 - 1.6720052e+03 1.5801097e+03 2.7055711e+03 - 1.6780296e+03 1.5707128e+03 2.7085982e+03 - 1.6829037e+03 1.5617317e+03 2.7121217e+03 - 1.6864858e+03 1.5532484e+03 2.7161167e+03 - 1.6886376e+03 1.5453336e+03 2.7205564e+03 - 1.6892248e+03 1.5380459e+03 2.7254124e+03 - 1.6881169e+03 1.5314318e+03 2.7306552e+03 - 1.6851873e+03 1.5255259e+03 2.7362553e+03 - 1.6803126e+03 1.5203512e+03 2.7421835e+03 - 1.6733721e+03 1.5159192e+03 2.7484117e+03 - 1.6642462e+03 1.5122303e+03 2.7549137e+03 - 1.6528152e+03 1.5092749e+03 2.7616654e+03 - 1.6389567e+03 1.5070333e+03 2.7686457e+03 - 1.6225433e+03 1.5054769e+03 2.7758373e+03 - 1.6034390e+03 1.5045683e+03 2.7832264e+03 - 1.5814959e+03 1.5042624e+03 2.7908042e+03 - 1.5565488e+03 1.5045068e+03 2.7985663e+03 - 1.5284095e+03 1.5052424e+03 2.8065136e+03 - 1.4968605e+03 1.5064043e+03 2.8146519e+03 - 1.4616466e+03 1.5079221e+03 2.8229920e+03 - 1.4224655e+03 1.5097205e+03 2.8315487e+03 - 1.3789571e+03 1.5117208e+03 2.8403401e+03 - 1.3306923e+03 1.5138411e+03 2.8493848e+03 - 1.2771607e+03 1.5159983e+03 2.8586991e+03 - 1.2177604e+03 1.5181093e+03 2.8682917e+03 - 1.1517922e+03 1.5200945e+03 2.8781563e+03 - 1.0784629e+03 1.5218803e+03 2.8882614e+03 - 9.9690692e+02 1.5234047e+03 2.8985369e+03 - 9.0623521e+02 1.5246223e+03 2.9088578e+03 - 8.0562741e+02 1.5255114e+03 2.9190272e+03 - 6.9447690e+02 1.5260792e+03 2.9287620e+03 - 5.7259114e+02 1.5263660e+03 2.9376891e+03 - 4.4042498e+02 1.5264423e+03 2.9453617e+03 - 2.9928956e+02 1.5263985e+03 2.9513025e+03 - 1.5144668e+02 1.5263259e+03 2.9550754e+03 - 4.8134273e-09 1.5262932e+03 2.9563705e+03 - -1.5144668e+02 1.5263259e+03 2.9550754e+03 - -2.9928956e+02 1.5263985e+03 2.9513025e+03 - -4.4042498e+02 1.5264423e+03 2.9453617e+03 - -5.7259114e+02 1.5263660e+03 2.9376891e+03 - -6.9447690e+02 1.5260792e+03 2.9287620e+03 - -8.0562741e+02 1.5255114e+03 2.9190272e+03 - -9.0623521e+02 1.5246223e+03 2.9088578e+03 - -9.9690692e+02 1.5234047e+03 2.8985369e+03 - -1.0784629e+03 1.5218803e+03 2.8882614e+03 - -1.1517922e+03 1.5200945e+03 2.8781563e+03 - -1.2177604e+03 1.5181093e+03 2.8682917e+03 - -1.2771607e+03 1.5159983e+03 2.8586991e+03 - -1.3306923e+03 1.5138411e+03 2.8493848e+03 - -1.3789571e+03 1.5117208e+03 2.8403401e+03 - -1.4224655e+03 1.5097205e+03 2.8315487e+03 - -1.4616466e+03 1.5079221e+03 2.8229920e+03 - -1.4968605e+03 1.5064043e+03 2.8146519e+03 - -1.5284095e+03 1.5052424e+03 2.8065136e+03 - -1.5565488e+03 1.5045068e+03 2.7985663e+03 - -1.5814959e+03 1.5042624e+03 2.7908042e+03 - -1.6034390e+03 1.5045683e+03 2.7832264e+03 - -1.6225433e+03 1.5054769e+03 2.7758373e+03 - -1.6389567e+03 1.5070333e+03 2.7686457e+03 - -1.6528152e+03 1.5092749e+03 2.7616654e+03 - -1.6642462e+03 1.5122303e+03 2.7549137e+03 - -1.6733721e+03 1.5159192e+03 2.7484117e+03 - -1.6803126e+03 1.5203512e+03 2.7421835e+03 - -1.6851873e+03 1.5255259e+03 2.7362553e+03 - -1.6881169e+03 1.5314318e+03 2.7306552e+03 - -1.6892248e+03 1.5380459e+03 2.7254124e+03 - -1.6886376e+03 1.5453336e+03 2.7205564e+03 - -1.6864858e+03 1.5532484e+03 2.7161167e+03 - -1.6829037e+03 1.5617317e+03 2.7121217e+03 - -1.6780296e+03 1.5707128e+03 2.7085982e+03 - -1.6720052e+03 1.5801097e+03 2.7055711e+03 - -1.6649746e+03 1.5898290e+03 2.7030624e+03 - -1.6570838e+03 1.5997667e+03 2.7010907e+03 - -1.6484796e+03 1.6098092e+03 2.6996713e+03 - -1.6393078e+03 1.6198344e+03 2.6988152e+03 - -1.6297125e+03 1.6297125e+03 2.6985291e+03 - -1.6198344e+03 1.6393078e+03 2.6988152e+03 - -1.6098092e+03 1.6484796e+03 2.6996713e+03 - -1.5997667e+03 1.6570838e+03 2.7010907e+03 - -1.5898290e+03 1.6649746e+03 2.7030624e+03 - -1.5801097e+03 1.6720052e+03 2.7055711e+03 - -1.5707128e+03 1.6780296e+03 2.7085982e+03 - -1.5617317e+03 1.6829037e+03 2.7121217e+03 - -1.5532484e+03 1.6864858e+03 2.7161167e+03 - -1.5453336e+03 1.6886376e+03 2.7205564e+03 - -1.5380459e+03 1.6892248e+03 2.7254124e+03 - -1.5314318e+03 1.6881169e+03 2.7306552e+03 - -1.5255259e+03 1.6851873e+03 2.7362553e+03 - -1.5203512e+03 1.6803126e+03 2.7421835e+03 - -1.5159192e+03 1.6733721e+03 2.7484117e+03 - -1.5122303e+03 1.6642462e+03 2.7549137e+03 - -1.5092749e+03 1.6528152e+03 2.7616654e+03 - -1.5070333e+03 1.6389567e+03 2.7686457e+03 - -1.5054769e+03 1.6225433e+03 2.7758373e+03 - -1.5045683e+03 1.6034390e+03 2.7832264e+03 - -1.5042624e+03 1.5814959e+03 2.7908042e+03 - -1.5045068e+03 1.5565488e+03 2.7985663e+03 - -1.5052424e+03 1.5284095e+03 2.8065136e+03 - -1.5064043e+03 1.4968605e+03 2.8146519e+03 - -1.5079221e+03 1.4616466e+03 2.8229920e+03 - -1.5097205e+03 1.4224655e+03 2.8315487e+03 - -1.5117208e+03 1.3789571e+03 2.8403401e+03 - -1.5138411e+03 1.3306923e+03 2.8493848e+03 - -1.5159983e+03 1.2771607e+03 2.8586991e+03 - -1.5181093e+03 1.2177604e+03 2.8682917e+03 - -1.5200945e+03 1.1517922e+03 2.8781563e+03 - -1.5218803e+03 1.0784629e+03 2.8882614e+03 - -1.5234047e+03 9.9690692e+02 2.8985369e+03 - -1.5246223e+03 9.0623521e+02 2.9088578e+03 - -1.5255114e+03 8.0562741e+02 2.9190272e+03 - -1.5260792e+03 6.9447690e+02 2.9287620e+03 - -1.5263660e+03 5.7259114e+02 2.9376891e+03 - -1.5264423e+03 4.4042498e+02 2.9453617e+03 - -1.5263985e+03 2.9928956e+02 2.9513025e+03 - -1.5263259e+03 1.5144668e+02 2.9550754e+03 - -1.5262932e+03 2.4067136e-09 2.9563705e+03 - -1.5263259e+03 -1.5144668e+02 2.9550754e+03 - -1.5263985e+03 -2.9928956e+02 2.9513025e+03 - -1.5264423e+03 -4.4042498e+02 2.9453617e+03 - -1.5263660e+03 -5.7259114e+02 2.9376891e+03 - -1.5260792e+03 -6.9447690e+02 2.9287620e+03 - -1.5255114e+03 -8.0562741e+02 2.9190272e+03 - -1.5246223e+03 -9.0623521e+02 2.9088578e+03 - -1.5234047e+03 -9.9690692e+02 2.8985369e+03 - -1.5218803e+03 -1.0784629e+03 2.8882614e+03 - -1.5200945e+03 -1.1517922e+03 2.8781563e+03 - -1.5181093e+03 -1.2177604e+03 2.8682917e+03 - -1.5159983e+03 -1.2771607e+03 2.8586991e+03 - -1.5138411e+03 -1.3306923e+03 2.8493848e+03 - -1.5117208e+03 -1.3789571e+03 2.8403401e+03 - -1.5097205e+03 -1.4224655e+03 2.8315487e+03 - -1.5079221e+03 -1.4616466e+03 2.8229920e+03 - -1.5064043e+03 -1.4968605e+03 2.8146519e+03 - -1.5052424e+03 -1.5284095e+03 2.8065136e+03 - -1.5045068e+03 -1.5565488e+03 2.7985663e+03 - -1.5042624e+03 -1.5814959e+03 2.7908042e+03 - -1.5045683e+03 -1.6034390e+03 2.7832264e+03 - -1.5054769e+03 -1.6225433e+03 2.7758373e+03 - -1.5070333e+03 -1.6389567e+03 2.7686457e+03 - -1.5092749e+03 -1.6528152e+03 2.7616654e+03 - -1.5122303e+03 -1.6642462e+03 2.7549137e+03 - -1.5159192e+03 -1.6733721e+03 2.7484117e+03 - -1.5203512e+03 -1.6803126e+03 2.7421835e+03 - -1.5255259e+03 -1.6851873e+03 2.7362553e+03 - -1.5314318e+03 -1.6881169e+03 2.7306552e+03 - -1.5380459e+03 -1.6892248e+03 2.7254124e+03 - -1.5453336e+03 -1.6886376e+03 2.7205564e+03 - -1.5532484e+03 -1.6864858e+03 2.7161167e+03 - -1.5617317e+03 -1.6829037e+03 2.7121217e+03 - -1.5707128e+03 -1.6780296e+03 2.7085982e+03 - -1.5801097e+03 -1.6720052e+03 2.7055711e+03 - -1.5898290e+03 -1.6649746e+03 2.7030624e+03 - -1.5997667e+03 -1.6570838e+03 2.7010907e+03 - -1.6098092e+03 -1.6484796e+03 2.6996713e+03 - -1.6198344e+03 -1.6393078e+03 2.6988152e+03 - -1.6297125e+03 -1.6297125e+03 2.6985291e+03 - -1.6393078e+03 -1.6198344e+03 2.6988152e+03 - -1.6484796e+03 -1.6098092e+03 2.6996713e+03 - -1.6570838e+03 -1.5997667e+03 2.7010907e+03 - -1.6649746e+03 -1.5898290e+03 2.7030624e+03 - -1.6720052e+03 -1.5801097e+03 2.7055711e+03 - -1.6780296e+03 -1.5707128e+03 2.7085982e+03 - -1.6829037e+03 -1.5617317e+03 2.7121217e+03 - -1.6864858e+03 -1.5532484e+03 2.7161167e+03 - -1.6886376e+03 -1.5453336e+03 2.7205564e+03 - -1.6892248e+03 -1.5380459e+03 2.7254124e+03 - -1.6881169e+03 -1.5314318e+03 2.7306552e+03 - -1.6851873e+03 -1.5255259e+03 2.7362553e+03 - -1.6803126e+03 -1.5203512e+03 2.7421835e+03 - -1.6733721e+03 -1.5159192e+03 2.7484117e+03 - -1.6642462e+03 -1.5122303e+03 2.7549137e+03 - -1.6528152e+03 -1.5092749e+03 2.7616654e+03 - -1.6389567e+03 -1.5070333e+03 2.7686457e+03 - -1.6225433e+03 -1.5054769e+03 2.7758373e+03 - -1.6034390e+03 -1.5045683e+03 2.7832264e+03 - -1.5814959e+03 -1.5042624e+03 2.7908042e+03 - -1.5565488e+03 -1.5045068e+03 2.7985663e+03 - -1.5284095e+03 -1.5052424e+03 2.8065136e+03 - -1.4968605e+03 -1.5064043e+03 2.8146519e+03 - -1.4616466e+03 -1.5079221e+03 2.8229920e+03 - -1.4224655e+03 -1.5097205e+03 2.8315487e+03 - -1.3789571e+03 -1.5117208e+03 2.8403401e+03 - -1.3306923e+03 -1.5138411e+03 2.8493848e+03 - -1.2771607e+03 -1.5159983e+03 2.8586991e+03 - -1.2177604e+03 -1.5181093e+03 2.8682917e+03 - -1.1517922e+03 -1.5200945e+03 2.8781563e+03 - -1.0784629e+03 -1.5218803e+03 2.8882614e+03 - -9.9690692e+02 -1.5234047e+03 2.8985369e+03 - -9.0623521e+02 -1.5246223e+03 2.9088578e+03 - -8.0562741e+02 -1.5255114e+03 2.9190272e+03 - -6.9447690e+02 -1.5260792e+03 2.9287620e+03 - -5.7259114e+02 -1.5263660e+03 2.9376891e+03 - -4.4042498e+02 -1.5264423e+03 2.9453617e+03 - -2.9928956e+02 -1.5263985e+03 2.9513025e+03 - -1.5144668e+02 -1.5263259e+03 2.9550754e+03 - 0.0000000e+00 -1.5262932e+03 2.9563705e+03 - 1.5144668e+02 -1.5263259e+03 2.9550754e+03 - 2.9928956e+02 -1.5263985e+03 2.9513025e+03 - 4.4042498e+02 -1.5264423e+03 2.9453617e+03 - 5.7259114e+02 -1.5263660e+03 2.9376891e+03 - 6.9447690e+02 -1.5260792e+03 2.9287620e+03 - 8.0562741e+02 -1.5255114e+03 2.9190272e+03 - 9.0623521e+02 -1.5246223e+03 2.9088578e+03 - 9.9690692e+02 -1.5234047e+03 2.8985369e+03 - 1.0784629e+03 -1.5218803e+03 2.8882614e+03 - 1.1517922e+03 -1.5200945e+03 2.8781563e+03 - 1.2177604e+03 -1.5181093e+03 2.8682917e+03 - 1.2771607e+03 -1.5159983e+03 2.8586991e+03 - 1.3306923e+03 -1.5138411e+03 2.8493848e+03 - 1.3789571e+03 -1.5117208e+03 2.8403401e+03 - 1.4224655e+03 -1.5097205e+03 2.8315487e+03 - 1.4616466e+03 -1.5079221e+03 2.8229920e+03 - 1.4968605e+03 -1.5064043e+03 2.8146519e+03 - 1.5284095e+03 -1.5052424e+03 2.8065136e+03 - 1.5565488e+03 -1.5045068e+03 2.7985663e+03 - 1.5814959e+03 -1.5042624e+03 2.7908042e+03 - 1.6034390e+03 -1.5045683e+03 2.7832264e+03 - 1.6225433e+03 -1.5054769e+03 2.7758373e+03 - 1.6389567e+03 -1.5070333e+03 2.7686457e+03 - 1.6528152e+03 -1.5092749e+03 2.7616654e+03 - 1.6642462e+03 -1.5122303e+03 2.7549137e+03 - 1.6733721e+03 -1.5159192e+03 2.7484117e+03 - 1.6803126e+03 -1.5203512e+03 2.7421835e+03 - 1.6851873e+03 -1.5255259e+03 2.7362553e+03 - 1.6881169e+03 -1.5314318e+03 2.7306552e+03 - 1.6892248e+03 -1.5380459e+03 2.7254124e+03 - 1.6886376e+03 -1.5453336e+03 2.7205564e+03 - 1.6864858e+03 -1.5532484e+03 2.7161167e+03 - 1.6829037e+03 -1.5617317e+03 2.7121217e+03 - 1.6780296e+03 -1.5707128e+03 2.7085982e+03 - 1.6720052e+03 -1.5801097e+03 2.7055711e+03 - 1.6649746e+03 -1.5898290e+03 2.7030624e+03 - 1.6570838e+03 -1.5997667e+03 2.7010907e+03 - 1.6484796e+03 -1.6098092e+03 2.6996713e+03 - 1.6393078e+03 -1.6198344e+03 2.6988152e+03 - 1.6297125e+03 -1.6297125e+03 2.6985291e+03 - 1.6198344e+03 -1.6393078e+03 2.6988152e+03 - 1.6098092e+03 -1.6484796e+03 2.6996713e+03 - 1.5997667e+03 -1.6570838e+03 2.7010907e+03 - 1.5898290e+03 -1.6649746e+03 2.7030624e+03 - 1.5801097e+03 -1.6720052e+03 2.7055711e+03 - 1.5707128e+03 -1.6780296e+03 2.7085982e+03 - 1.5617317e+03 -1.6829037e+03 2.7121217e+03 - 1.5532484e+03 -1.6864858e+03 2.7161167e+03 - 1.5453336e+03 -1.6886376e+03 2.7205564e+03 - 1.5380459e+03 -1.6892248e+03 2.7254124e+03 - 1.5314318e+03 -1.6881169e+03 2.7306552e+03 - 1.5255259e+03 -1.6851873e+03 2.7362553e+03 - 1.5203512e+03 -1.6803126e+03 2.7421835e+03 - 1.5159192e+03 -1.6733721e+03 2.7484117e+03 - 1.5122303e+03 -1.6642462e+03 2.7549137e+03 - 1.5092749e+03 -1.6528152e+03 2.7616654e+03 - 1.5070333e+03 -1.6389567e+03 2.7686457e+03 - 1.5054769e+03 -1.6225433e+03 2.7758373e+03 - 1.5045683e+03 -1.6034390e+03 2.7832264e+03 - 1.5042624e+03 -1.5814959e+03 2.7908042e+03 - 1.5045068e+03 -1.5565488e+03 2.7985663e+03 - 1.5052424e+03 -1.5284095e+03 2.8065136e+03 - 1.5064043e+03 -1.4968605e+03 2.8146519e+03 - 1.5079221e+03 -1.4616466e+03 2.8229920e+03 - 1.5097205e+03 -1.4224655e+03 2.8315487e+03 - 1.5117208e+03 -1.3789571e+03 2.8403401e+03 - 1.5138411e+03 -1.3306923e+03 2.8493848e+03 - 1.5159983e+03 -1.2771607e+03 2.8586991e+03 - 1.5181093e+03 -1.2177604e+03 2.8682917e+03 - 1.5200945e+03 -1.1517922e+03 2.8781563e+03 - 1.5218803e+03 -1.0784629e+03 2.8882614e+03 - 1.5234047e+03 -9.9690692e+02 2.8985369e+03 - 1.5246223e+03 -9.0623521e+02 2.9088578e+03 - 1.5255114e+03 -8.0562741e+02 2.9190272e+03 - 1.5260792e+03 -6.9447690e+02 2.9287620e+03 - 1.5263660e+03 -5.7259114e+02 2.9376891e+03 - 1.5264423e+03 -4.4042498e+02 2.9453617e+03 - 1.5263985e+03 -2.9928956e+02 2.9513025e+03 - 1.5263259e+03 -1.5144668e+02 2.9550754e+03 - 1.5262932e+03 -2.4067136e-09 2.9563705e+03 - 1.5683423e+03 2.4067136e-09 2.9197355e+03 - 1.5684810e+03 1.5869052e+02 2.9182310e+03 - 1.5688513e+03 3.1320741e+02 2.9138676e+03 - 1.5693303e+03 4.6002279e+02 2.9070544e+03 - 1.5697551e+03 5.9667435e+02 2.8983553e+03 - 1.5699648e+03 7.2186486e+02 2.8883703e+03 - 1.5698317e+03 8.3529996e+02 2.8776402e+03 - 1.5692775e+03 9.3739864e+02 2.8665968e+03 - 1.5682743e+03 1.0289972e+03 2.8555497e+03 - 1.5668379e+03 1.1111135e+03 2.8446992e+03 - 1.5650171e+03 1.1847887e+03 2.8341591e+03 - 1.5628840e+03 1.2509968e+03 2.8239806e+03 - 1.5605248e+03 1.3106020e+03 2.8141742e+03 - 1.5580338e+03 1.3643465e+03 2.8047250e+03 - 1.5555083e+03 1.4128549e+03 2.7956052e+03 - 1.5530457e+03 1.4566466e+03 2.7867818e+03 - 1.5507409e+03 1.4961510e+03 2.7782220e+03 - 1.5486855e+03 1.5317226e+03 2.7698964e+03 - 1.5469659e+03 1.5636554e+03 2.7617806e+03 - 1.5456630e+03 1.5921946e+03 2.7538567e+03 - 1.5448517e+03 1.6175475e+03 2.7461133e+03 - 1.5445999e+03 1.6398918e+03 2.7385454e+03 - 1.5449680e+03 1.6593831e+03 2.7311546e+03 - 1.5460087e+03 1.6761607e+03 2.7239483e+03 - 1.5477657e+03 1.6903529e+03 2.7169392e+03 - 1.5502738e+03 1.7020805e+03 2.7101449e+03 - 1.5535577e+03 1.7114606e+03 2.7035873e+03 - 1.5576315e+03 1.7186090e+03 2.6972917e+03 - 1.5624981e+03 1.7236425e+03 2.6912862e+03 - 1.5681485e+03 1.7266803e+03 2.6856010e+03 - 1.5745616e+03 1.7278455e+03 2.6802679e+03 - 1.5817035e+03 1.7272657e+03 2.6753190e+03 - 1.5895272e+03 1.7250737e+03 2.6707865e+03 - 1.5979727e+03 1.7214073e+03 2.6667015e+03 - 1.6069672e+03 1.7164090e+03 2.6630938e+03 - 1.6164250e+03 1.7102260e+03 2.6599905e+03 - 1.6262483e+03 1.7030086e+03 2.6574160e+03 - 1.6363279e+03 1.6949097e+03 2.6553910e+03 - 1.6465442e+03 1.6860835e+03 2.6539323e+03 - 1.6567680e+03 1.6766838e+03 2.6530522e+03 - 1.6668624e+03 1.6668624e+03 2.6527579e+03 - 1.6766838e+03 1.6567680e+03 2.6530522e+03 - 1.6860835e+03 1.6465442e+03 2.6539323e+03 - 1.6949097e+03 1.6363279e+03 2.6553910e+03 - 1.7030086e+03 1.6262483e+03 2.6574160e+03 - 1.7102260e+03 1.6164250e+03 2.6599905e+03 - 1.7164090e+03 1.6069672e+03 2.6630938e+03 - 1.7214073e+03 1.5979727e+03 2.6667015e+03 - 1.7250737e+03 1.5895272e+03 2.6707865e+03 - 1.7272657e+03 1.5817035e+03 2.6753190e+03 - 1.7278455e+03 1.5745616e+03 2.6802679e+03 - 1.7266803e+03 1.5681485e+03 2.6856010e+03 - 1.7236425e+03 1.5624981e+03 2.6912862e+03 - 1.7186090e+03 1.5576315e+03 2.6972917e+03 - 1.7114606e+03 1.5535577e+03 2.7035873e+03 - 1.7020805e+03 1.5502738e+03 2.7101449e+03 - 1.6903529e+03 1.5477657e+03 2.7169392e+03 - 1.6761607e+03 1.5460087e+03 2.7239483e+03 - 1.6593831e+03 1.5449680e+03 2.7311546e+03 - 1.6398918e+03 1.5445999e+03 2.7385454e+03 - 1.6175475e+03 1.5448517e+03 2.7461133e+03 - 1.5921946e+03 1.5456630e+03 2.7538567e+03 - 1.5636554e+03 1.5469659e+03 2.7617806e+03 - 1.5317226e+03 1.5486855e+03 2.7698964e+03 - 1.4961510e+03 1.5507409e+03 2.7782220e+03 - 1.4566466e+03 1.5530457e+03 2.7867818e+03 - 1.4128549e+03 1.5555083e+03 2.7956052e+03 - 1.3643465e+03 1.5580338e+03 2.8047250e+03 - 1.3106020e+03 1.5605248e+03 2.8141742e+03 - 1.2509968e+03 1.5628840e+03 2.8239806e+03 - 1.1847887e+03 1.5650171e+03 2.8341591e+03 - 1.1111135e+03 1.5668379e+03 2.8446992e+03 - 1.0289972e+03 1.5682743e+03 2.8555497e+03 - 9.3739864e+02 1.5692775e+03 2.8665968e+03 - 8.3529996e+02 1.5698317e+03 2.8776402e+03 - 7.2186486e+02 1.5699648e+03 2.8883703e+03 - 5.9667435e+02 1.5697551e+03 2.8983553e+03 - 4.6002279e+02 1.5693303e+03 2.9070544e+03 - 3.1320741e+02 1.5688513e+03 2.9138676e+03 - 1.5869052e+02 1.5684810e+03 2.9182310e+03 - -2.4067136e-09 1.5683423e+03 2.9197355e+03 - -1.5869052e+02 1.5684810e+03 2.9182310e+03 - -3.1320741e+02 1.5688513e+03 2.9138676e+03 - -4.6002279e+02 1.5693303e+03 2.9070544e+03 - -5.9667435e+02 1.5697551e+03 2.8983553e+03 - -7.2186486e+02 1.5699648e+03 2.8883703e+03 - -8.3529996e+02 1.5698317e+03 2.8776402e+03 - -9.3739864e+02 1.5692775e+03 2.8665968e+03 - -1.0289972e+03 1.5682743e+03 2.8555497e+03 - -1.1111135e+03 1.5668379e+03 2.8446992e+03 - -1.1847887e+03 1.5650171e+03 2.8341591e+03 - -1.2509968e+03 1.5628840e+03 2.8239806e+03 - -1.3106020e+03 1.5605248e+03 2.8141742e+03 - -1.3643465e+03 1.5580338e+03 2.8047250e+03 - -1.4128549e+03 1.5555083e+03 2.7956052e+03 - -1.4566466e+03 1.5530457e+03 2.7867818e+03 - -1.4961510e+03 1.5507409e+03 2.7782220e+03 - -1.5317226e+03 1.5486855e+03 2.7698964e+03 - -1.5636554e+03 1.5469659e+03 2.7617806e+03 - -1.5921946e+03 1.5456630e+03 2.7538567e+03 - -1.6175475e+03 1.5448517e+03 2.7461133e+03 - -1.6398918e+03 1.5445999e+03 2.7385454e+03 - -1.6593831e+03 1.5449680e+03 2.7311546e+03 - -1.6761607e+03 1.5460087e+03 2.7239483e+03 - -1.6903529e+03 1.5477657e+03 2.7169392e+03 - -1.7020805e+03 1.5502738e+03 2.7101449e+03 - -1.7114606e+03 1.5535577e+03 2.7035873e+03 - -1.7186090e+03 1.5576315e+03 2.6972917e+03 - -1.7236425e+03 1.5624981e+03 2.6912862e+03 - -1.7266803e+03 1.5681485e+03 2.6856010e+03 - -1.7278455e+03 1.5745616e+03 2.6802679e+03 - -1.7272657e+03 1.5817035e+03 2.6753190e+03 - -1.7250737e+03 1.5895272e+03 2.6707865e+03 - -1.7214073e+03 1.5979727e+03 2.6667015e+03 - -1.7164090e+03 1.6069672e+03 2.6630938e+03 - -1.7102260e+03 1.6164250e+03 2.6599905e+03 - -1.7030086e+03 1.6262483e+03 2.6574160e+03 - -1.6949097e+03 1.6363279e+03 2.6553910e+03 - -1.6860835e+03 1.6465442e+03 2.6539323e+03 - -1.6766838e+03 1.6567680e+03 2.6530522e+03 - -1.6668624e+03 1.6668624e+03 2.6527579e+03 - -1.6567680e+03 1.6766838e+03 2.6530522e+03 - -1.6465442e+03 1.6860835e+03 2.6539323e+03 - -1.6363279e+03 1.6949097e+03 2.6553910e+03 - -1.6262483e+03 1.7030086e+03 2.6574160e+03 - -1.6164250e+03 1.7102260e+03 2.6599905e+03 - -1.6069672e+03 1.7164090e+03 2.6630938e+03 - -1.5979727e+03 1.7214073e+03 2.6667015e+03 - -1.5895272e+03 1.7250737e+03 2.6707865e+03 - -1.5817035e+03 1.7272657e+03 2.6753190e+03 - -1.5745616e+03 1.7278455e+03 2.6802679e+03 - -1.5681485e+03 1.7266803e+03 2.6856010e+03 - -1.5624981e+03 1.7236425e+03 2.6912862e+03 - -1.5576315e+03 1.7186090e+03 2.6972917e+03 - -1.5535577e+03 1.7114606e+03 2.7035873e+03 - -1.5502738e+03 1.7020805e+03 2.7101449e+03 - -1.5477657e+03 1.6903529e+03 2.7169392e+03 - -1.5460087e+03 1.6761607e+03 2.7239483e+03 - -1.5449680e+03 1.6593831e+03 2.7311546e+03 - -1.5445999e+03 1.6398918e+03 2.7385454e+03 - -1.5448517e+03 1.6175475e+03 2.7461133e+03 - -1.5456630e+03 1.5921946e+03 2.7538567e+03 - -1.5469659e+03 1.5636554e+03 2.7617806e+03 - -1.5486855e+03 1.5317226e+03 2.7698964e+03 - -1.5507409e+03 1.4961510e+03 2.7782220e+03 - -1.5530457e+03 1.4566466e+03 2.7867818e+03 - -1.5555083e+03 1.4128549e+03 2.7956052e+03 - -1.5580338e+03 1.3643465e+03 2.8047250e+03 - -1.5605248e+03 1.3106020e+03 2.8141742e+03 - -1.5628840e+03 1.2509968e+03 2.8239806e+03 - -1.5650171e+03 1.1847887e+03 2.8341591e+03 - -1.5668379e+03 1.1111135e+03 2.8446992e+03 - -1.5682743e+03 1.0289972e+03 2.8555497e+03 - -1.5692775e+03 9.3739864e+02 2.8665968e+03 - -1.5698317e+03 8.3529996e+02 2.8776402e+03 - -1.5699648e+03 7.2186486e+02 2.8883703e+03 - -1.5697551e+03 5.9667435e+02 2.8983553e+03 - -1.5693303e+03 4.6002279e+02 2.9070544e+03 - -1.5688513e+03 3.1320741e+02 2.9138676e+03 - -1.5684810e+03 1.5869052e+02 2.9182310e+03 - -1.5683423e+03 -2.4067136e-09 2.9197355e+03 - -1.5684810e+03 -1.5869052e+02 2.9182310e+03 - -1.5688513e+03 -3.1320741e+02 2.9138676e+03 - -1.5693303e+03 -4.6002279e+02 2.9070544e+03 - -1.5697551e+03 -5.9667435e+02 2.8983553e+03 - -1.5699648e+03 -7.2186486e+02 2.8883703e+03 - -1.5698317e+03 -8.3529996e+02 2.8776402e+03 - -1.5692775e+03 -9.3739864e+02 2.8665968e+03 - -1.5682743e+03 -1.0289972e+03 2.8555497e+03 - -1.5668379e+03 -1.1111135e+03 2.8446992e+03 - -1.5650171e+03 -1.1847887e+03 2.8341591e+03 - -1.5628840e+03 -1.2509968e+03 2.8239806e+03 - -1.5605248e+03 -1.3106020e+03 2.8141742e+03 - -1.5580338e+03 -1.3643465e+03 2.8047250e+03 - -1.5555083e+03 -1.4128549e+03 2.7956052e+03 - -1.5530457e+03 -1.4566466e+03 2.7867818e+03 - -1.5507409e+03 -1.4961510e+03 2.7782220e+03 - -1.5486855e+03 -1.5317226e+03 2.7698964e+03 - -1.5469659e+03 -1.5636554e+03 2.7617806e+03 - -1.5456630e+03 -1.5921946e+03 2.7538567e+03 - -1.5448517e+03 -1.6175475e+03 2.7461133e+03 - -1.5445999e+03 -1.6398918e+03 2.7385454e+03 - -1.5449680e+03 -1.6593831e+03 2.7311546e+03 - -1.5460087e+03 -1.6761607e+03 2.7239483e+03 - -1.5477657e+03 -1.6903529e+03 2.7169392e+03 - -1.5502738e+03 -1.7020805e+03 2.7101449e+03 - -1.5535577e+03 -1.7114606e+03 2.7035873e+03 - -1.5576315e+03 -1.7186090e+03 2.6972917e+03 - -1.5624981e+03 -1.7236425e+03 2.6912862e+03 - -1.5681485e+03 -1.7266803e+03 2.6856010e+03 - -1.5745616e+03 -1.7278455e+03 2.6802679e+03 - -1.5817035e+03 -1.7272657e+03 2.6753190e+03 - -1.5895272e+03 -1.7250737e+03 2.6707865e+03 - -1.5979727e+03 -1.7214073e+03 2.6667015e+03 - -1.6069672e+03 -1.7164090e+03 2.6630938e+03 - -1.6164250e+03 -1.7102260e+03 2.6599905e+03 - -1.6262483e+03 -1.7030086e+03 2.6574160e+03 - -1.6363279e+03 -1.6949097e+03 2.6553910e+03 - -1.6465442e+03 -1.6860835e+03 2.6539323e+03 - -1.6567680e+03 -1.6766838e+03 2.6530522e+03 - -1.6668624e+03 -1.6668624e+03 2.6527579e+03 - -1.6766838e+03 -1.6567680e+03 2.6530522e+03 - -1.6860835e+03 -1.6465442e+03 2.6539323e+03 - -1.6949097e+03 -1.6363279e+03 2.6553910e+03 - -1.7030086e+03 -1.6262483e+03 2.6574160e+03 - -1.7102260e+03 -1.6164250e+03 2.6599905e+03 - -1.7164090e+03 -1.6069672e+03 2.6630938e+03 - -1.7214073e+03 -1.5979727e+03 2.6667015e+03 - -1.7250737e+03 -1.5895272e+03 2.6707865e+03 - -1.7272657e+03 -1.5817035e+03 2.6753190e+03 - -1.7278455e+03 -1.5745616e+03 2.6802679e+03 - -1.7266803e+03 -1.5681485e+03 2.6856010e+03 - -1.7236425e+03 -1.5624981e+03 2.6912862e+03 - -1.7186090e+03 -1.5576315e+03 2.6972917e+03 - -1.7114606e+03 -1.5535577e+03 2.7035873e+03 - -1.7020805e+03 -1.5502738e+03 2.7101449e+03 - -1.6903529e+03 -1.5477657e+03 2.7169392e+03 - -1.6761607e+03 -1.5460087e+03 2.7239483e+03 - -1.6593831e+03 -1.5449680e+03 2.7311546e+03 - -1.6398918e+03 -1.5445999e+03 2.7385454e+03 - -1.6175475e+03 -1.5448517e+03 2.7461133e+03 - -1.5921946e+03 -1.5456630e+03 2.7538567e+03 - -1.5636554e+03 -1.5469659e+03 2.7617806e+03 - -1.5317226e+03 -1.5486855e+03 2.7698964e+03 - -1.4961510e+03 -1.5507409e+03 2.7782220e+03 - -1.4566466e+03 -1.5530457e+03 2.7867818e+03 - -1.4128549e+03 -1.5555083e+03 2.7956052e+03 - -1.3643465e+03 -1.5580338e+03 2.8047250e+03 - -1.3106020e+03 -1.5605248e+03 2.8141742e+03 - -1.2509968e+03 -1.5628840e+03 2.8239806e+03 - -1.1847887e+03 -1.5650171e+03 2.8341591e+03 - -1.1111135e+03 -1.5668379e+03 2.8446992e+03 - -1.0289972e+03 -1.5682743e+03 2.8555497e+03 - -9.3739864e+02 -1.5692775e+03 2.8665968e+03 - -8.3529996e+02 -1.5698317e+03 2.8776402e+03 - -7.2186486e+02 -1.5699648e+03 2.8883703e+03 - -5.9667435e+02 -1.5697551e+03 2.8983553e+03 - -4.6002279e+02 -1.5693303e+03 2.9070544e+03 - -3.1320741e+02 -1.5688513e+03 2.9138676e+03 - -1.5869052e+02 -1.5684810e+03 2.9182310e+03 - 2.4067136e-09 -1.5683423e+03 2.9197355e+03 - 1.5869052e+02 -1.5684810e+03 2.9182310e+03 - 3.1320741e+02 -1.5688513e+03 2.9138676e+03 - 4.6002279e+02 -1.5693303e+03 2.9070544e+03 - 5.9667435e+02 -1.5697551e+03 2.8983553e+03 - 7.2186486e+02 -1.5699648e+03 2.8883703e+03 - 8.3529996e+02 -1.5698317e+03 2.8776402e+03 - 9.3739864e+02 -1.5692775e+03 2.8665968e+03 - 1.0289972e+03 -1.5682743e+03 2.8555497e+03 - 1.1111135e+03 -1.5668379e+03 2.8446992e+03 - 1.1847887e+03 -1.5650171e+03 2.8341591e+03 - 1.2509968e+03 -1.5628840e+03 2.8239806e+03 - 1.3106020e+03 -1.5605248e+03 2.8141742e+03 - 1.3643465e+03 -1.5580338e+03 2.8047250e+03 - 1.4128549e+03 -1.5555083e+03 2.7956052e+03 - 1.4566466e+03 -1.5530457e+03 2.7867818e+03 - 1.4961510e+03 -1.5507409e+03 2.7782220e+03 - 1.5317226e+03 -1.5486855e+03 2.7698964e+03 - 1.5636554e+03 -1.5469659e+03 2.7617806e+03 - 1.5921946e+03 -1.5456630e+03 2.7538567e+03 - 1.6175475e+03 -1.5448517e+03 2.7461133e+03 - 1.6398918e+03 -1.5445999e+03 2.7385454e+03 - 1.6593831e+03 -1.5449680e+03 2.7311546e+03 - 1.6761607e+03 -1.5460087e+03 2.7239483e+03 - 1.6903529e+03 -1.5477657e+03 2.7169392e+03 - 1.7020805e+03 -1.5502738e+03 2.7101449e+03 - 1.7114606e+03 -1.5535577e+03 2.7035873e+03 - 1.7186090e+03 -1.5576315e+03 2.6972917e+03 - 1.7236425e+03 -1.5624981e+03 2.6912862e+03 - 1.7266803e+03 -1.5681485e+03 2.6856010e+03 - 1.7278455e+03 -1.5745616e+03 2.6802679e+03 - 1.7272657e+03 -1.5817035e+03 2.6753190e+03 - 1.7250737e+03 -1.5895272e+03 2.6707865e+03 - 1.7214073e+03 -1.5979727e+03 2.6667015e+03 - 1.7164090e+03 -1.6069672e+03 2.6630938e+03 - 1.7102260e+03 -1.6164250e+03 2.6599905e+03 - 1.7030086e+03 -1.6262483e+03 2.6574160e+03 - 1.6949097e+03 -1.6363279e+03 2.6553910e+03 - 1.6860835e+03 -1.6465442e+03 2.6539323e+03 - 1.6766838e+03 -1.6567680e+03 2.6530522e+03 - 1.6668624e+03 -1.6668624e+03 2.6527579e+03 - 1.6567680e+03 -1.6766838e+03 2.6530522e+03 - 1.6465442e+03 -1.6860835e+03 2.6539323e+03 - 1.6363279e+03 -1.6949097e+03 2.6553910e+03 - 1.6262483e+03 -1.7030086e+03 2.6574160e+03 - 1.6164250e+03 -1.7102260e+03 2.6599905e+03 - 1.6069672e+03 -1.7164090e+03 2.6630938e+03 - 1.5979727e+03 -1.7214073e+03 2.6667015e+03 - 1.5895272e+03 -1.7250737e+03 2.6707865e+03 - 1.5817035e+03 -1.7272657e+03 2.6753190e+03 - 1.5745616e+03 -1.7278455e+03 2.6802679e+03 - 1.5681485e+03 -1.7266803e+03 2.6856010e+03 - 1.5624981e+03 -1.7236425e+03 2.6912862e+03 - 1.5576315e+03 -1.7186090e+03 2.6972917e+03 - 1.5535577e+03 -1.7114606e+03 2.7035873e+03 - 1.5502738e+03 -1.7020805e+03 2.7101449e+03 - 1.5477657e+03 -1.6903529e+03 2.7169392e+03 - 1.5460087e+03 -1.6761607e+03 2.7239483e+03 - 1.5449680e+03 -1.6593831e+03 2.7311546e+03 - 1.5445999e+03 -1.6398918e+03 2.7385454e+03 - 1.5448517e+03 -1.6175475e+03 2.7461133e+03 - 1.5456630e+03 -1.5921946e+03 2.7538567e+03 - 1.5469659e+03 -1.5636554e+03 2.7617806e+03 - 1.5486855e+03 -1.5317226e+03 2.7698964e+03 - 1.5507409e+03 -1.4961510e+03 2.7782220e+03 - 1.5530457e+03 -1.4566466e+03 2.7867818e+03 - 1.5555083e+03 -1.4128549e+03 2.7956052e+03 - 1.5580338e+03 -1.3643465e+03 2.8047250e+03 - 1.5605248e+03 -1.3106020e+03 2.8141742e+03 - 1.5628840e+03 -1.2509968e+03 2.8239806e+03 - 1.5650171e+03 -1.1847887e+03 2.8341591e+03 - 1.5668379e+03 -1.1111135e+03 2.8446992e+03 - 1.5682743e+03 -1.0289972e+03 2.8555497e+03 - 1.5692775e+03 -9.3739864e+02 2.8665968e+03 - 1.5698317e+03 -8.3529996e+02 2.8776402e+03 - 1.5699648e+03 -7.2186486e+02 2.8883703e+03 - 1.5697551e+03 -5.9667435e+02 2.8983553e+03 - 1.5693303e+03 -4.6002279e+02 2.9070544e+03 - 1.5688513e+03 -3.1320741e+02 2.9138676e+03 - 1.5684810e+03 -1.5869052e+02 2.9182310e+03 - 1.5683423e+03 2.4067136e-09 2.9197355e+03 - 1.6102471e+03 0.0000000e+00 2.8817535e+03 - 1.6105335e+03 1.6668996e+02 2.8799799e+03 - 1.6113154e+03 3.2847188e+02 2.8748644e+03 - 1.6123878e+03 4.8129329e+02 2.8669588e+03 - 1.6134830e+03 6.2247944e+02 2.8570058e+03 - 1.6143420e+03 7.5080271e+02 2.8457673e+03 - 1.6147634e+03 8.6621291e+02 2.8339004e+03 - 1.6146243e+03 9.6943405e+02 2.8219009e+03 - 1.6138774e+03 1.0615897e+03 2.8100998e+03 - 1.6125375e+03 1.1439296e+03 2.7986906e+03 - 1.6106638e+03 1.2176633e+03 2.7877645e+03 - 1.6083442e+03 1.2838771e+03 2.7773440e+03 - 1.6056837e+03 1.3435034e+03 2.7674098e+03 - 1.6027954e+03 1.3973214e+03 2.7579198e+03 - 1.5997947e+03 1.4459716e+03 2.7488223e+03 - 1.5967958e+03 1.4899756e+03 2.7400643e+03 - 1.5939091e+03 1.5297568e+03 2.7315964e+03 - 1.5912399e+03 1.5656593e+03 2.7233761e+03 - 1.5888871e+03 1.5979643e+03 2.7153687e+03 - 1.5869432e+03 1.6269034e+03 2.7075484e+03 - 1.5854933e+03 1.6526707e+03 2.6998978e+03 - 1.5846146e+03 1.6754311e+03 2.6924078e+03 - 1.5843760e+03 1.6953289e+03 2.6850772e+03 - 1.5848379e+03 1.7124930e+03 2.6779117e+03 - 1.5860509e+03 1.7270428e+03 2.6709237e+03 - 1.5880558e+03 1.7390915e+03 2.6641311e+03 - 1.5908826e+03 1.7487502e+03 2.6575567e+03 - 1.5945499e+03 1.7561297e+03 2.6512275e+03 - 1.5990642e+03 1.7613437e+03 2.6451739e+03 - 1.6044192e+03 1.7645096e+03 2.6394286e+03 - 1.6105954e+03 1.7657498e+03 2.6340262e+03 - 1.6175597e+03 1.7651929e+03 2.6290019e+03 - 1.6252646e+03 1.7629739e+03 2.6243910e+03 - 1.6336488e+03 1.7592338e+03 2.6202278e+03 - 1.6426367e+03 1.7541200e+03 2.6165451e+03 - 1.6521390e+03 1.7477850e+03 2.6133729e+03 - 1.6620533e+03 1.7403860e+03 2.6107381e+03 - 1.6722646e+03 1.7320831e+03 2.6086639e+03 - 1.6826467e+03 1.7230383e+03 2.6071686e+03 - 1.6930634e+03 1.7134136e+03 2.6062659e+03 - 1.7033696e+03 1.7033696e+03 2.6059641e+03 - 1.7134136e+03 1.6930634e+03 2.6062659e+03 - 1.7230383e+03 1.6826467e+03 2.6071686e+03 - 1.7320831e+03 1.6722646e+03 2.6086639e+03 - 1.7403860e+03 1.6620533e+03 2.6107381e+03 - 1.7477850e+03 1.6521390e+03 2.6133729e+03 - 1.7541200e+03 1.6426367e+03 2.6165451e+03 - 1.7592338e+03 1.6336488e+03 2.6202278e+03 - 1.7629739e+03 1.6252646e+03 2.6243910e+03 - 1.7651929e+03 1.6175597e+03 2.6290019e+03 - 1.7657498e+03 1.6105954e+03 2.6340262e+03 - 1.7645096e+03 1.6044192e+03 2.6394286e+03 - 1.7613437e+03 1.5990642e+03 2.6451739e+03 - 1.7561297e+03 1.5945499e+03 2.6512275e+03 - 1.7487502e+03 1.5908826e+03 2.6575567e+03 - 1.7390915e+03 1.5880558e+03 2.6641311e+03 - 1.7270428e+03 1.5860509e+03 2.6709237e+03 - 1.7124930e+03 1.5848379e+03 2.6779117e+03 - 1.6953289e+03 1.5843760e+03 2.6850772e+03 - 1.6754311e+03 1.5846146e+03 2.6924078e+03 - 1.6526707e+03 1.5854933e+03 2.6998978e+03 - 1.6269034e+03 1.5869432e+03 2.7075484e+03 - 1.5979643e+03 1.5888871e+03 2.7153687e+03 - 1.5656593e+03 1.5912399e+03 2.7233761e+03 - 1.5297568e+03 1.5939091e+03 2.7315964e+03 - 1.4899756e+03 1.5967958e+03 2.7400643e+03 - 1.4459716e+03 1.5997947e+03 2.7488223e+03 - 1.3973214e+03 1.6027954e+03 2.7579198e+03 - 1.3435034e+03 1.6056837e+03 2.7674098e+03 - 1.2838771e+03 1.6083442e+03 2.7773440e+03 - 1.2176633e+03 1.6106638e+03 2.7877645e+03 - 1.1439296e+03 1.6125375e+03 2.7986906e+03 - 1.0615897e+03 1.6138774e+03 2.8100998e+03 - 9.6943405e+02 1.6146243e+03 2.8219009e+03 - 8.6621291e+02 1.6147634e+03 2.8339004e+03 - 7.5080271e+02 1.6143420e+03 2.8457673e+03 - 6.2247944e+02 1.6134830e+03 2.8570058e+03 - 4.8129329e+02 1.6123878e+03 2.8669588e+03 - 3.2847188e+02 1.6113154e+03 2.8748644e+03 - 1.6668996e+02 1.6105335e+03 2.8799799e+03 - -4.8134273e-09 1.6102471e+03 2.8817535e+03 - -1.6668996e+02 1.6105335e+03 2.8799799e+03 - -3.2847188e+02 1.6113154e+03 2.8748644e+03 - -4.8129329e+02 1.6123878e+03 2.8669588e+03 - -6.2247944e+02 1.6134830e+03 2.8570058e+03 - -7.5080271e+02 1.6143420e+03 2.8457673e+03 - -8.6621291e+02 1.6147634e+03 2.8339004e+03 - -9.6943405e+02 1.6146243e+03 2.8219009e+03 - -1.0615897e+03 1.6138774e+03 2.8100998e+03 - -1.1439296e+03 1.6125375e+03 2.7986906e+03 - -1.2176633e+03 1.6106638e+03 2.7877645e+03 - -1.2838771e+03 1.6083442e+03 2.7773440e+03 - -1.3435034e+03 1.6056837e+03 2.7674098e+03 - -1.3973214e+03 1.6027954e+03 2.7579198e+03 - -1.4459716e+03 1.5997947e+03 2.7488223e+03 - -1.4899756e+03 1.5967958e+03 2.7400643e+03 - -1.5297568e+03 1.5939091e+03 2.7315964e+03 - -1.5656593e+03 1.5912399e+03 2.7233761e+03 - -1.5979643e+03 1.5888871e+03 2.7153687e+03 - -1.6269034e+03 1.5869432e+03 2.7075484e+03 - -1.6526707e+03 1.5854933e+03 2.6998978e+03 - -1.6754311e+03 1.5846146e+03 2.6924078e+03 - -1.6953289e+03 1.5843760e+03 2.6850772e+03 - -1.7124930e+03 1.5848379e+03 2.6779117e+03 - -1.7270428e+03 1.5860509e+03 2.6709237e+03 - -1.7390915e+03 1.5880558e+03 2.6641311e+03 - -1.7487502e+03 1.5908826e+03 2.6575567e+03 - -1.7561297e+03 1.5945499e+03 2.6512275e+03 - -1.7613437e+03 1.5990642e+03 2.6451739e+03 - -1.7645096e+03 1.6044192e+03 2.6394286e+03 - -1.7657498e+03 1.6105954e+03 2.6340262e+03 - -1.7651929e+03 1.6175597e+03 2.6290019e+03 - -1.7629739e+03 1.6252646e+03 2.6243910e+03 - -1.7592338e+03 1.6336488e+03 2.6202278e+03 - -1.7541200e+03 1.6426367e+03 2.6165451e+03 - -1.7477850e+03 1.6521390e+03 2.6133729e+03 - -1.7403860e+03 1.6620533e+03 2.6107381e+03 - -1.7320831e+03 1.6722646e+03 2.6086639e+03 - -1.7230383e+03 1.6826467e+03 2.6071686e+03 - -1.7134136e+03 1.6930634e+03 2.6062659e+03 - -1.7033696e+03 1.7033696e+03 2.6059641e+03 - -1.6930634e+03 1.7134136e+03 2.6062659e+03 - -1.6826467e+03 1.7230383e+03 2.6071686e+03 - -1.6722646e+03 1.7320831e+03 2.6086639e+03 - -1.6620533e+03 1.7403860e+03 2.6107381e+03 - -1.6521390e+03 1.7477850e+03 2.6133729e+03 - -1.6426367e+03 1.7541200e+03 2.6165451e+03 - -1.6336488e+03 1.7592338e+03 2.6202278e+03 - -1.6252646e+03 1.7629739e+03 2.6243910e+03 - -1.6175597e+03 1.7651929e+03 2.6290019e+03 - -1.6105954e+03 1.7657498e+03 2.6340262e+03 - -1.6044192e+03 1.7645096e+03 2.6394286e+03 - -1.5990642e+03 1.7613437e+03 2.6451739e+03 - -1.5945499e+03 1.7561297e+03 2.6512275e+03 - -1.5908826e+03 1.7487502e+03 2.6575567e+03 - -1.5880558e+03 1.7390915e+03 2.6641311e+03 - -1.5860509e+03 1.7270428e+03 2.6709237e+03 - -1.5848379e+03 1.7124930e+03 2.6779117e+03 - -1.5843760e+03 1.6953289e+03 2.6850772e+03 - -1.5846146e+03 1.6754311e+03 2.6924078e+03 - -1.5854933e+03 1.6526707e+03 2.6998978e+03 - -1.5869432e+03 1.6269034e+03 2.7075484e+03 - -1.5888871e+03 1.5979643e+03 2.7153687e+03 - -1.5912399e+03 1.5656593e+03 2.7233761e+03 - -1.5939091e+03 1.5297568e+03 2.7315964e+03 - -1.5967958e+03 1.4899756e+03 2.7400643e+03 - -1.5997947e+03 1.4459716e+03 2.7488223e+03 - -1.6027954e+03 1.3973214e+03 2.7579198e+03 - -1.6056837e+03 1.3435034e+03 2.7674098e+03 - -1.6083442e+03 1.2838771e+03 2.7773440e+03 - -1.6106638e+03 1.2176633e+03 2.7877645e+03 - -1.6125375e+03 1.1439296e+03 2.7986906e+03 - -1.6138774e+03 1.0615897e+03 2.8100998e+03 - -1.6146243e+03 9.6943405e+02 2.8219009e+03 - -1.6147634e+03 8.6621291e+02 2.8339004e+03 - -1.6143420e+03 7.5080271e+02 2.8457673e+03 - -1.6134830e+03 6.2247944e+02 2.8570058e+03 - -1.6123878e+03 4.8129329e+02 2.8669588e+03 - -1.6113154e+03 3.2847188e+02 2.8748644e+03 - -1.6105335e+03 1.6668996e+02 2.8799799e+03 - -1.6102471e+03 0.0000000e+00 2.8817535e+03 - -1.6105335e+03 -1.6668996e+02 2.8799799e+03 - -1.6113154e+03 -3.2847188e+02 2.8748644e+03 - -1.6123878e+03 -4.8129329e+02 2.8669588e+03 - -1.6134830e+03 -6.2247944e+02 2.8570058e+03 - -1.6143420e+03 -7.5080271e+02 2.8457673e+03 - -1.6147634e+03 -8.6621291e+02 2.8339004e+03 - -1.6146243e+03 -9.6943405e+02 2.8219009e+03 - -1.6138774e+03 -1.0615897e+03 2.8100998e+03 - -1.6125375e+03 -1.1439296e+03 2.7986906e+03 - -1.6106638e+03 -1.2176633e+03 2.7877645e+03 - -1.6083442e+03 -1.2838771e+03 2.7773440e+03 - -1.6056837e+03 -1.3435034e+03 2.7674098e+03 - -1.6027954e+03 -1.3973214e+03 2.7579198e+03 - -1.5997947e+03 -1.4459716e+03 2.7488223e+03 - -1.5967958e+03 -1.4899756e+03 2.7400643e+03 - -1.5939091e+03 -1.5297568e+03 2.7315964e+03 - -1.5912399e+03 -1.5656593e+03 2.7233761e+03 - -1.5888871e+03 -1.5979643e+03 2.7153687e+03 - -1.5869432e+03 -1.6269034e+03 2.7075484e+03 - -1.5854933e+03 -1.6526707e+03 2.6998978e+03 - -1.5846146e+03 -1.6754311e+03 2.6924078e+03 - -1.5843760e+03 -1.6953289e+03 2.6850772e+03 - -1.5848379e+03 -1.7124930e+03 2.6779117e+03 - -1.5860509e+03 -1.7270428e+03 2.6709237e+03 - -1.5880558e+03 -1.7390915e+03 2.6641311e+03 - -1.5908826e+03 -1.7487502e+03 2.6575567e+03 - -1.5945499e+03 -1.7561297e+03 2.6512275e+03 - -1.5990642e+03 -1.7613437e+03 2.6451739e+03 - -1.6044192e+03 -1.7645096e+03 2.6394286e+03 - -1.6105954e+03 -1.7657498e+03 2.6340262e+03 - -1.6175597e+03 -1.7651929e+03 2.6290019e+03 - -1.6252646e+03 -1.7629739e+03 2.6243910e+03 - -1.6336488e+03 -1.7592338e+03 2.6202278e+03 - -1.6426367e+03 -1.7541200e+03 2.6165451e+03 - -1.6521390e+03 -1.7477850e+03 2.6133729e+03 - -1.6620533e+03 -1.7403860e+03 2.6107381e+03 - -1.6722646e+03 -1.7320831e+03 2.6086639e+03 - -1.6826467e+03 -1.7230383e+03 2.6071686e+03 - -1.6930634e+03 -1.7134136e+03 2.6062659e+03 - -1.7033696e+03 -1.7033696e+03 2.6059641e+03 - -1.7134136e+03 -1.6930634e+03 2.6062659e+03 - -1.7230383e+03 -1.6826467e+03 2.6071686e+03 - -1.7320831e+03 -1.6722646e+03 2.6086639e+03 - -1.7403860e+03 -1.6620533e+03 2.6107381e+03 - -1.7477850e+03 -1.6521390e+03 2.6133729e+03 - -1.7541200e+03 -1.6426367e+03 2.6165451e+03 - -1.7592338e+03 -1.6336488e+03 2.6202278e+03 - -1.7629739e+03 -1.6252646e+03 2.6243910e+03 - -1.7651929e+03 -1.6175597e+03 2.6290019e+03 - -1.7657498e+03 -1.6105954e+03 2.6340262e+03 - -1.7645096e+03 -1.6044192e+03 2.6394286e+03 - -1.7613437e+03 -1.5990642e+03 2.6451739e+03 - -1.7561297e+03 -1.5945499e+03 2.6512275e+03 - -1.7487502e+03 -1.5908826e+03 2.6575567e+03 - -1.7390915e+03 -1.5880558e+03 2.6641311e+03 - -1.7270428e+03 -1.5860509e+03 2.6709237e+03 - -1.7124930e+03 -1.5848379e+03 2.6779117e+03 - -1.6953289e+03 -1.5843760e+03 2.6850772e+03 - -1.6754311e+03 -1.5846146e+03 2.6924078e+03 - -1.6526707e+03 -1.5854933e+03 2.6998978e+03 - -1.6269034e+03 -1.5869432e+03 2.7075484e+03 - -1.5979643e+03 -1.5888871e+03 2.7153687e+03 - -1.5656593e+03 -1.5912399e+03 2.7233761e+03 - -1.5297568e+03 -1.5939091e+03 2.7315964e+03 - -1.4899756e+03 -1.5967958e+03 2.7400643e+03 - -1.4459716e+03 -1.5997947e+03 2.7488223e+03 - -1.3973214e+03 -1.6027954e+03 2.7579198e+03 - -1.3435034e+03 -1.6056837e+03 2.7674098e+03 - -1.2838771e+03 -1.6083442e+03 2.7773440e+03 - -1.2176633e+03 -1.6106638e+03 2.7877645e+03 - -1.1439296e+03 -1.6125375e+03 2.7986906e+03 - -1.0615897e+03 -1.6138774e+03 2.8100998e+03 - -9.6943405e+02 -1.6146243e+03 2.8219009e+03 - -8.6621291e+02 -1.6147634e+03 2.8339004e+03 - -7.5080271e+02 -1.6143420e+03 2.8457673e+03 - -6.2247944e+02 -1.6134830e+03 2.8570058e+03 - -4.8129329e+02 -1.6123878e+03 2.8669588e+03 - -3.2847188e+02 -1.6113154e+03 2.8748644e+03 - -1.6668996e+02 -1.6105335e+03 2.8799799e+03 - 0.0000000e+00 -1.6102471e+03 2.8817535e+03 - 1.6668996e+02 -1.6105335e+03 2.8799799e+03 - 3.2847188e+02 -1.6113154e+03 2.8748644e+03 - 4.8129329e+02 -1.6123878e+03 2.8669588e+03 - 6.2247944e+02 -1.6134830e+03 2.8570058e+03 - 7.5080271e+02 -1.6143420e+03 2.8457673e+03 - 8.6621291e+02 -1.6147634e+03 2.8339004e+03 - 9.6943405e+02 -1.6146243e+03 2.8219009e+03 - 1.0615897e+03 -1.6138774e+03 2.8100998e+03 - 1.1439296e+03 -1.6125375e+03 2.7986906e+03 - 1.2176633e+03 -1.6106638e+03 2.7877645e+03 - 1.2838771e+03 -1.6083442e+03 2.7773440e+03 - 1.3435034e+03 -1.6056837e+03 2.7674098e+03 - 1.3973214e+03 -1.6027954e+03 2.7579198e+03 - 1.4459716e+03 -1.5997947e+03 2.7488223e+03 - 1.4899756e+03 -1.5967958e+03 2.7400643e+03 - 1.5297568e+03 -1.5939091e+03 2.7315964e+03 - 1.5656593e+03 -1.5912399e+03 2.7233761e+03 - 1.5979643e+03 -1.5888871e+03 2.7153687e+03 - 1.6269034e+03 -1.5869432e+03 2.7075484e+03 - 1.6526707e+03 -1.5854933e+03 2.6998978e+03 - 1.6754311e+03 -1.5846146e+03 2.6924078e+03 - 1.6953289e+03 -1.5843760e+03 2.6850772e+03 - 1.7124930e+03 -1.5848379e+03 2.6779117e+03 - 1.7270428e+03 -1.5860509e+03 2.6709237e+03 - 1.7390915e+03 -1.5880558e+03 2.6641311e+03 - 1.7487502e+03 -1.5908826e+03 2.6575567e+03 - 1.7561297e+03 -1.5945499e+03 2.6512275e+03 - 1.7613437e+03 -1.5990642e+03 2.6451739e+03 - 1.7645096e+03 -1.6044192e+03 2.6394286e+03 - 1.7657498e+03 -1.6105954e+03 2.6340262e+03 - 1.7651929e+03 -1.6175597e+03 2.6290019e+03 - 1.7629739e+03 -1.6252646e+03 2.6243910e+03 - 1.7592338e+03 -1.6336488e+03 2.6202278e+03 - 1.7541200e+03 -1.6426367e+03 2.6165451e+03 - 1.7477850e+03 -1.6521390e+03 2.6133729e+03 - 1.7403860e+03 -1.6620533e+03 2.6107381e+03 - 1.7320831e+03 -1.6722646e+03 2.6086639e+03 - 1.7230383e+03 -1.6826467e+03 2.6071686e+03 - 1.7134136e+03 -1.6930634e+03 2.6062659e+03 - 1.7033696e+03 -1.7033696e+03 2.6059641e+03 - 1.6930634e+03 -1.7134136e+03 2.6062659e+03 - 1.6826467e+03 -1.7230383e+03 2.6071686e+03 - 1.6722646e+03 -1.7320831e+03 2.6086639e+03 - 1.6620533e+03 -1.7403860e+03 2.6107381e+03 - 1.6521390e+03 -1.7477850e+03 2.6133729e+03 - 1.6426367e+03 -1.7541200e+03 2.6165451e+03 - 1.6336488e+03 -1.7592338e+03 2.6202278e+03 - 1.6252646e+03 -1.7629739e+03 2.6243910e+03 - 1.6175597e+03 -1.7651929e+03 2.6290019e+03 - 1.6105954e+03 -1.7657498e+03 2.6340262e+03 - 1.6044192e+03 -1.7645096e+03 2.6394286e+03 - 1.5990642e+03 -1.7613437e+03 2.6451739e+03 - 1.5945499e+03 -1.7561297e+03 2.6512275e+03 - 1.5908826e+03 -1.7487502e+03 2.6575567e+03 - 1.5880558e+03 -1.7390915e+03 2.6641311e+03 - 1.5860509e+03 -1.7270428e+03 2.6709237e+03 - 1.5848379e+03 -1.7124930e+03 2.6779117e+03 - 1.5843760e+03 -1.6953289e+03 2.6850772e+03 - 1.5846146e+03 -1.6754311e+03 2.6924078e+03 - 1.5854933e+03 -1.6526707e+03 2.6998978e+03 - 1.5869432e+03 -1.6269034e+03 2.7075484e+03 - 1.5888871e+03 -1.5979643e+03 2.7153687e+03 - 1.5912399e+03 -1.5656593e+03 2.7233761e+03 - 1.5939091e+03 -1.5297568e+03 2.7315964e+03 - 1.5967958e+03 -1.4899756e+03 2.7400643e+03 - 1.5997947e+03 -1.4459716e+03 2.7488223e+03 - 1.6027954e+03 -1.3973214e+03 2.7579198e+03 - 1.6056837e+03 -1.3435034e+03 2.7674098e+03 - 1.6083442e+03 -1.2838771e+03 2.7773440e+03 - 1.6106638e+03 -1.2176633e+03 2.7877645e+03 - 1.6125375e+03 -1.1439296e+03 2.7986906e+03 - 1.6138774e+03 -1.0615897e+03 2.8100998e+03 - 1.6146243e+03 -9.6943405e+02 2.8219009e+03 - 1.6147634e+03 -8.6621291e+02 2.8339004e+03 - 1.6143420e+03 -7.5080271e+02 2.8457673e+03 - 1.6134830e+03 -6.2247944e+02 2.8570058e+03 - 1.6123878e+03 -4.8129329e+02 2.8669588e+03 - 1.6113154e+03 -3.2847188e+02 2.8748644e+03 - 1.6105335e+03 -1.6668996e+02 2.8799799e+03 - 1.6102471e+03 0.0000000e+00 2.8817535e+03 - 1.6519865e+03 0.0000000e+00 2.8424012e+03 - 1.6524813e+03 1.7567835e+02 2.8402721e+03 - 1.6538383e+03 3.4547522e+02 2.8341739e+03 - 1.6557248e+03 5.0467857e+02 2.8248710e+03 - 1.6577177e+03 6.5040254e+02 2.8133609e+03 - 1.6594209e+03 7.8158479e+02 2.8006227e+03 - 1.6605393e+03 8.9854308e+02 2.7874548e+03 - 1.6609012e+03 1.0024118e+03 2.7744178e+03 - 1.6604457e+03 1.0946711e+03 2.7618521e+03 - 1.6591960e+03 1.1768391e+03 2.7499271e+03 - 1.6572319e+03 1.2503065e+03 2.7386954e+03 - 1.6546666e+03 1.3162708e+03 2.7281371e+03 - 1.6516307e+03 1.3757254e+03 2.7181928e+03 - 1.6482619e+03 1.4294765e+03 2.7087855e+03 - 1.6446978e+03 1.4781707e+03 2.6998346e+03 - 1.6410722e+03 1.5223229e+03 2.6912633e+03 - 1.6375128e+03 1.5623433e+03 2.6830036e+03 - 1.6341403e+03 1.5985593e+03 2.6749984e+03 - 1.6310672e+03 1.6312343e+03 2.6672019e+03 - 1.6283980e+03 1.6605826e+03 2.6595798e+03 - 1.6262285e+03 1.6867818e+03 2.6521088e+03 - 1.6246456e+03 1.7099819e+03 2.6447756e+03 - 1.6237270e+03 1.7303135e+03 2.6375764e+03 - 1.6235408e+03 1.7478937e+03 2.6305157e+03 - 1.6241447e+03 1.7628316e+03 2.6236057e+03 - 1.6255856e+03 1.7752320e+03 2.6168648e+03 - 1.6278990e+03 1.7851987e+03 2.6103176e+03 - 1.6311079e+03 1.7928376e+03 2.6039930e+03 - 1.6352226e+03 1.7982582e+03 2.5979240e+03 - 1.6402394e+03 1.8015758e+03 2.5921465e+03 - 1.6461406e+03 1.8029120e+03 2.5866982e+03 - 1.6528936e+03 1.8023963e+03 2.5816179e+03 - 1.6604506e+03 1.8001655e+03 2.5769445e+03 - 1.6687484e+03 1.7963645e+03 2.5727160e+03 - 1.6777089e+03 1.7911452e+03 2.5689684e+03 - 1.6872388e+03 1.7846663e+03 2.5657352e+03 - 1.6972304e+03 1.7770916e+03 2.5630462e+03 - 1.7075630e+03 1.7685891e+03 2.5609269e+03 - 1.7181030e+03 1.7593294e+03 2.5593980e+03 - 1.7287066e+03 1.7494832e+03 2.5584745e+03 - 1.7392202e+03 1.7392202e+03 2.5581656e+03 - 1.7494832e+03 1.7287066e+03 2.5584745e+03 - 1.7593294e+03 1.7181030e+03 2.5593980e+03 - 1.7685891e+03 1.7075630e+03 2.5609269e+03 - 1.7770916e+03 1.6972304e+03 2.5630462e+03 - 1.7846663e+03 1.6872388e+03 2.5657352e+03 - 1.7911452e+03 1.6777089e+03 2.5689684e+03 - 1.7963645e+03 1.6687484e+03 2.5727160e+03 - 1.8001655e+03 1.6604506e+03 2.5769445e+03 - 1.8023963e+03 1.6528936e+03 2.5816179e+03 - 1.8029120e+03 1.6461406e+03 2.5866982e+03 - 1.8015758e+03 1.6402394e+03 2.5921465e+03 - 1.7982582e+03 1.6352226e+03 2.5979240e+03 - 1.7928376e+03 1.6311079e+03 2.6039930e+03 - 1.7851987e+03 1.6278990e+03 2.6103176e+03 - 1.7752320e+03 1.6255856e+03 2.6168648e+03 - 1.7628316e+03 1.6241447e+03 2.6236057e+03 - 1.7478937e+03 1.6235408e+03 2.6305157e+03 - 1.7303135e+03 1.6237270e+03 2.6375764e+03 - 1.7099819e+03 1.6246456e+03 2.6447756e+03 - 1.6867818e+03 1.6262285e+03 2.6521088e+03 - 1.6605826e+03 1.6283980e+03 2.6595798e+03 - 1.6312343e+03 1.6310672e+03 2.6672019e+03 - 1.5985593e+03 1.6341403e+03 2.6749984e+03 - 1.5623433e+03 1.6375128e+03 2.6830036e+03 - 1.5223229e+03 1.6410722e+03 2.6912633e+03 - 1.4781707e+03 1.6446978e+03 2.6998346e+03 - 1.4294765e+03 1.6482619e+03 2.7087855e+03 - 1.3757254e+03 1.6516307e+03 2.7181928e+03 - 1.3162708e+03 1.6546666e+03 2.7281371e+03 - 1.2503065e+03 1.6572319e+03 2.7386954e+03 - 1.1768391e+03 1.6591960e+03 2.7499271e+03 - 1.0946711e+03 1.6604457e+03 2.7618521e+03 - 1.0024118e+03 1.6609012e+03 2.7744178e+03 - 8.9854308e+02 1.6605393e+03 2.7874548e+03 - 7.8158479e+02 1.6594209e+03 2.8006227e+03 - 6.5040254e+02 1.6577177e+03 2.8133609e+03 - 5.0467857e+02 1.6557248e+03 2.8248710e+03 - 3.4547522e+02 1.6538383e+03 2.8341739e+03 - 1.7567835e+02 1.6524813e+03 2.8402721e+03 - 0.0000000e+00 1.6519865e+03 2.8424012e+03 - -1.7567835e+02 1.6524813e+03 2.8402721e+03 - -3.4547522e+02 1.6538383e+03 2.8341739e+03 - -5.0467857e+02 1.6557248e+03 2.8248710e+03 - -6.5040254e+02 1.6577177e+03 2.8133609e+03 - -7.8158479e+02 1.6594209e+03 2.8006227e+03 - -8.9854308e+02 1.6605393e+03 2.7874548e+03 - -1.0024118e+03 1.6609012e+03 2.7744178e+03 - -1.0946711e+03 1.6604457e+03 2.7618521e+03 - -1.1768391e+03 1.6591960e+03 2.7499271e+03 - -1.2503065e+03 1.6572319e+03 2.7386954e+03 - -1.3162708e+03 1.6546666e+03 2.7281371e+03 - -1.3757254e+03 1.6516307e+03 2.7181928e+03 - -1.4294765e+03 1.6482619e+03 2.7087855e+03 - -1.4781707e+03 1.6446978e+03 2.6998346e+03 - -1.5223229e+03 1.6410722e+03 2.6912633e+03 - -1.5623433e+03 1.6375128e+03 2.6830036e+03 - -1.5985593e+03 1.6341403e+03 2.6749984e+03 - -1.6312343e+03 1.6310672e+03 2.6672019e+03 - -1.6605826e+03 1.6283980e+03 2.6595798e+03 - -1.6867818e+03 1.6262285e+03 2.6521088e+03 - -1.7099819e+03 1.6246456e+03 2.6447756e+03 - -1.7303135e+03 1.6237270e+03 2.6375764e+03 - -1.7478937e+03 1.6235408e+03 2.6305157e+03 - -1.7628316e+03 1.6241447e+03 2.6236057e+03 - -1.7752320e+03 1.6255856e+03 2.6168648e+03 - -1.7851987e+03 1.6278990e+03 2.6103176e+03 - -1.7928376e+03 1.6311079e+03 2.6039930e+03 - -1.7982582e+03 1.6352226e+03 2.5979240e+03 - -1.8015758e+03 1.6402394e+03 2.5921465e+03 - -1.8029120e+03 1.6461406e+03 2.5866982e+03 - -1.8023963e+03 1.6528936e+03 2.5816179e+03 - -1.8001655e+03 1.6604506e+03 2.5769445e+03 - -1.7963645e+03 1.6687484e+03 2.5727160e+03 - -1.7911452e+03 1.6777089e+03 2.5689684e+03 - -1.7846663e+03 1.6872388e+03 2.5657352e+03 - -1.7770916e+03 1.6972304e+03 2.5630462e+03 - -1.7685891e+03 1.7075630e+03 2.5609269e+03 - -1.7593294e+03 1.7181030e+03 2.5593980e+03 - -1.7494832e+03 1.7287066e+03 2.5584745e+03 - -1.7392202e+03 1.7392202e+03 2.5581656e+03 - -1.7287066e+03 1.7494832e+03 2.5584745e+03 - -1.7181030e+03 1.7593294e+03 2.5593980e+03 - -1.7075630e+03 1.7685891e+03 2.5609269e+03 - -1.6972304e+03 1.7770916e+03 2.5630462e+03 - -1.6872388e+03 1.7846663e+03 2.5657352e+03 - -1.6777089e+03 1.7911452e+03 2.5689684e+03 - -1.6687484e+03 1.7963645e+03 2.5727160e+03 - -1.6604506e+03 1.8001655e+03 2.5769445e+03 - -1.6528936e+03 1.8023963e+03 2.5816179e+03 - -1.6461406e+03 1.8029120e+03 2.5866982e+03 - -1.6402394e+03 1.8015758e+03 2.5921465e+03 - -1.6352226e+03 1.7982582e+03 2.5979240e+03 - -1.6311079e+03 1.7928376e+03 2.6039930e+03 - -1.6278990e+03 1.7851987e+03 2.6103176e+03 - -1.6255856e+03 1.7752320e+03 2.6168648e+03 - -1.6241447e+03 1.7628316e+03 2.6236057e+03 - -1.6235408e+03 1.7478937e+03 2.6305157e+03 - -1.6237270e+03 1.7303135e+03 2.6375764e+03 - -1.6246456e+03 1.7099819e+03 2.6447756e+03 - -1.6262285e+03 1.6867818e+03 2.6521088e+03 - -1.6283980e+03 1.6605826e+03 2.6595798e+03 - -1.6310672e+03 1.6312343e+03 2.6672019e+03 - -1.6341403e+03 1.5985593e+03 2.6749984e+03 - -1.6375128e+03 1.5623433e+03 2.6830036e+03 - -1.6410722e+03 1.5223229e+03 2.6912633e+03 - -1.6446978e+03 1.4781707e+03 2.6998346e+03 - -1.6482619e+03 1.4294765e+03 2.7087855e+03 - -1.6516307e+03 1.3757254e+03 2.7181928e+03 - -1.6546666e+03 1.3162708e+03 2.7281371e+03 - -1.6572319e+03 1.2503065e+03 2.7386954e+03 - -1.6591960e+03 1.1768391e+03 2.7499271e+03 - -1.6604457e+03 1.0946711e+03 2.7618521e+03 - -1.6609012e+03 1.0024118e+03 2.7744178e+03 - -1.6605393e+03 8.9854308e+02 2.7874548e+03 - -1.6594209e+03 7.8158479e+02 2.8006227e+03 - -1.6577177e+03 6.5040254e+02 2.8133609e+03 - -1.6557248e+03 5.0467857e+02 2.8248710e+03 - -1.6538383e+03 3.4547522e+02 2.8341739e+03 - -1.6524813e+03 1.7567835e+02 2.8402721e+03 - -1.6519865e+03 0.0000000e+00 2.8424012e+03 - -1.6524813e+03 -1.7567835e+02 2.8402721e+03 - -1.6538383e+03 -3.4547522e+02 2.8341739e+03 - -1.6557248e+03 -5.0467857e+02 2.8248710e+03 - -1.6577177e+03 -6.5040254e+02 2.8133609e+03 - -1.6594209e+03 -7.8158479e+02 2.8006227e+03 - -1.6605393e+03 -8.9854308e+02 2.7874548e+03 - -1.6609012e+03 -1.0024118e+03 2.7744178e+03 - -1.6604457e+03 -1.0946711e+03 2.7618521e+03 - -1.6591960e+03 -1.1768391e+03 2.7499271e+03 - -1.6572319e+03 -1.2503065e+03 2.7386954e+03 - -1.6546666e+03 -1.3162708e+03 2.7281371e+03 - -1.6516307e+03 -1.3757254e+03 2.7181928e+03 - -1.6482619e+03 -1.4294765e+03 2.7087855e+03 - -1.6446978e+03 -1.4781707e+03 2.6998346e+03 - -1.6410722e+03 -1.5223229e+03 2.6912633e+03 - -1.6375128e+03 -1.5623433e+03 2.6830036e+03 - -1.6341403e+03 -1.5985593e+03 2.6749984e+03 - -1.6310672e+03 -1.6312343e+03 2.6672019e+03 - -1.6283980e+03 -1.6605826e+03 2.6595798e+03 - -1.6262285e+03 -1.6867818e+03 2.6521088e+03 - -1.6246456e+03 -1.7099819e+03 2.6447756e+03 - -1.6237270e+03 -1.7303135e+03 2.6375764e+03 - -1.6235408e+03 -1.7478937e+03 2.6305157e+03 - -1.6241447e+03 -1.7628316e+03 2.6236057e+03 - -1.6255856e+03 -1.7752320e+03 2.6168648e+03 - -1.6278990e+03 -1.7851987e+03 2.6103176e+03 - -1.6311079e+03 -1.7928376e+03 2.6039930e+03 - -1.6352226e+03 -1.7982582e+03 2.5979240e+03 - -1.6402394e+03 -1.8015758e+03 2.5921465e+03 - -1.6461406e+03 -1.8029120e+03 2.5866982e+03 - -1.6528936e+03 -1.8023963e+03 2.5816179e+03 - -1.6604506e+03 -1.8001655e+03 2.5769445e+03 - -1.6687484e+03 -1.7963645e+03 2.5727160e+03 - -1.6777089e+03 -1.7911452e+03 2.5689684e+03 - -1.6872388e+03 -1.7846663e+03 2.5657352e+03 - -1.6972304e+03 -1.7770916e+03 2.5630462e+03 - -1.7075630e+03 -1.7685891e+03 2.5609269e+03 - -1.7181030e+03 -1.7593294e+03 2.5593980e+03 - -1.7287066e+03 -1.7494832e+03 2.5584745e+03 - -1.7392202e+03 -1.7392202e+03 2.5581656e+03 - -1.7494832e+03 -1.7287066e+03 2.5584745e+03 - -1.7593294e+03 -1.7181030e+03 2.5593980e+03 - -1.7685891e+03 -1.7075630e+03 2.5609269e+03 - -1.7770916e+03 -1.6972304e+03 2.5630462e+03 - -1.7846663e+03 -1.6872388e+03 2.5657352e+03 - -1.7911452e+03 -1.6777089e+03 2.5689684e+03 - -1.7963645e+03 -1.6687484e+03 2.5727160e+03 - -1.8001655e+03 -1.6604506e+03 2.5769445e+03 - -1.8023963e+03 -1.6528936e+03 2.5816179e+03 - -1.8029120e+03 -1.6461406e+03 2.5866982e+03 - -1.8015758e+03 -1.6402394e+03 2.5921465e+03 - -1.7982582e+03 -1.6352226e+03 2.5979240e+03 - -1.7928376e+03 -1.6311079e+03 2.6039930e+03 - -1.7851987e+03 -1.6278990e+03 2.6103176e+03 - -1.7752320e+03 -1.6255856e+03 2.6168648e+03 - -1.7628316e+03 -1.6241447e+03 2.6236057e+03 - -1.7478937e+03 -1.6235408e+03 2.6305157e+03 - -1.7303135e+03 -1.6237270e+03 2.6375764e+03 - -1.7099819e+03 -1.6246456e+03 2.6447756e+03 - -1.6867818e+03 -1.6262285e+03 2.6521088e+03 - -1.6605826e+03 -1.6283980e+03 2.6595798e+03 - -1.6312343e+03 -1.6310672e+03 2.6672019e+03 - -1.5985593e+03 -1.6341403e+03 2.6749984e+03 - -1.5623433e+03 -1.6375128e+03 2.6830036e+03 - -1.5223229e+03 -1.6410722e+03 2.6912633e+03 - -1.4781707e+03 -1.6446978e+03 2.6998346e+03 - -1.4294765e+03 -1.6482619e+03 2.7087855e+03 - -1.3757254e+03 -1.6516307e+03 2.7181928e+03 - -1.3162708e+03 -1.6546666e+03 2.7281371e+03 - -1.2503065e+03 -1.6572319e+03 2.7386954e+03 - -1.1768391e+03 -1.6591960e+03 2.7499271e+03 - -1.0946711e+03 -1.6604457e+03 2.7618521e+03 - -1.0024118e+03 -1.6609012e+03 2.7744178e+03 - -8.9854308e+02 -1.6605393e+03 2.7874548e+03 - -7.8158479e+02 -1.6594209e+03 2.8006227e+03 - -6.5040254e+02 -1.6577177e+03 2.8133609e+03 - -5.0467857e+02 -1.6557248e+03 2.8248710e+03 - -3.4547522e+02 -1.6538383e+03 2.8341739e+03 - -1.7567835e+02 -1.6524813e+03 2.8402721e+03 - -2.4067136e-09 -1.6519865e+03 2.8424012e+03 - 1.7567835e+02 -1.6524813e+03 2.8402721e+03 - 3.4547522e+02 -1.6538383e+03 2.8341739e+03 - 5.0467857e+02 -1.6557248e+03 2.8248710e+03 - 6.5040254e+02 -1.6577177e+03 2.8133609e+03 - 7.8158479e+02 -1.6594209e+03 2.8006227e+03 - 8.9854308e+02 -1.6605393e+03 2.7874548e+03 - 1.0024118e+03 -1.6609012e+03 2.7744178e+03 - 1.0946711e+03 -1.6604457e+03 2.7618521e+03 - 1.1768391e+03 -1.6591960e+03 2.7499271e+03 - 1.2503065e+03 -1.6572319e+03 2.7386954e+03 - 1.3162708e+03 -1.6546666e+03 2.7281371e+03 - 1.3757254e+03 -1.6516307e+03 2.7181928e+03 - 1.4294765e+03 -1.6482619e+03 2.7087855e+03 - 1.4781707e+03 -1.6446978e+03 2.6998346e+03 - 1.5223229e+03 -1.6410722e+03 2.6912633e+03 - 1.5623433e+03 -1.6375128e+03 2.6830036e+03 - 1.5985593e+03 -1.6341403e+03 2.6749984e+03 - 1.6312343e+03 -1.6310672e+03 2.6672019e+03 - 1.6605826e+03 -1.6283980e+03 2.6595798e+03 - 1.6867818e+03 -1.6262285e+03 2.6521088e+03 - 1.7099819e+03 -1.6246456e+03 2.6447756e+03 - 1.7303135e+03 -1.6237270e+03 2.6375764e+03 - 1.7478937e+03 -1.6235408e+03 2.6305157e+03 - 1.7628316e+03 -1.6241447e+03 2.6236057e+03 - 1.7752320e+03 -1.6255856e+03 2.6168648e+03 - 1.7851987e+03 -1.6278990e+03 2.6103176e+03 - 1.7928376e+03 -1.6311079e+03 2.6039930e+03 - 1.7982582e+03 -1.6352226e+03 2.5979240e+03 - 1.8015758e+03 -1.6402394e+03 2.5921465e+03 - 1.8029120e+03 -1.6461406e+03 2.5866982e+03 - 1.8023963e+03 -1.6528936e+03 2.5816179e+03 - 1.8001655e+03 -1.6604506e+03 2.5769445e+03 - 1.7963645e+03 -1.6687484e+03 2.5727160e+03 - 1.7911452e+03 -1.6777089e+03 2.5689684e+03 - 1.7846663e+03 -1.6872388e+03 2.5657352e+03 - 1.7770916e+03 -1.6972304e+03 2.5630462e+03 - 1.7685891e+03 -1.7075630e+03 2.5609269e+03 - 1.7593294e+03 -1.7181030e+03 2.5593980e+03 - 1.7494832e+03 -1.7287066e+03 2.5584745e+03 - 1.7392202e+03 -1.7392202e+03 2.5581656e+03 - 1.7287066e+03 -1.7494832e+03 2.5584745e+03 - 1.7181030e+03 -1.7593294e+03 2.5593980e+03 - 1.7075630e+03 -1.7685891e+03 2.5609269e+03 - 1.6972304e+03 -1.7770916e+03 2.5630462e+03 - 1.6872388e+03 -1.7846663e+03 2.5657352e+03 - 1.6777089e+03 -1.7911452e+03 2.5689684e+03 - 1.6687484e+03 -1.7963645e+03 2.5727160e+03 - 1.6604506e+03 -1.8001655e+03 2.5769445e+03 - 1.6528936e+03 -1.8023963e+03 2.5816179e+03 - 1.6461406e+03 -1.8029120e+03 2.5866982e+03 - 1.6402394e+03 -1.8015758e+03 2.5921465e+03 - 1.6352226e+03 -1.7982582e+03 2.5979240e+03 - 1.6311079e+03 -1.7928376e+03 2.6039930e+03 - 1.6278990e+03 -1.7851987e+03 2.6103176e+03 - 1.6255856e+03 -1.7752320e+03 2.6168648e+03 - 1.6241447e+03 -1.7628316e+03 2.6236057e+03 - 1.6235408e+03 -1.7478937e+03 2.6305157e+03 - 1.6237270e+03 -1.7303135e+03 2.6375764e+03 - 1.6246456e+03 -1.7099819e+03 2.6447756e+03 - 1.6262285e+03 -1.6867818e+03 2.6521088e+03 - 1.6283980e+03 -1.6605826e+03 2.6595798e+03 - 1.6310672e+03 -1.6312343e+03 2.6672019e+03 - 1.6341403e+03 -1.5985593e+03 2.6749984e+03 - 1.6375128e+03 -1.5623433e+03 2.6830036e+03 - 1.6410722e+03 -1.5223229e+03 2.6912633e+03 - 1.6446978e+03 -1.4781707e+03 2.6998346e+03 - 1.6482619e+03 -1.4294765e+03 2.7087855e+03 - 1.6516307e+03 -1.3757254e+03 2.7181928e+03 - 1.6546666e+03 -1.3162708e+03 2.7281371e+03 - 1.6572319e+03 -1.2503065e+03 2.7386954e+03 - 1.6591960e+03 -1.1768391e+03 2.7499271e+03 - 1.6604457e+03 -1.0946711e+03 2.7618521e+03 - 1.6609012e+03 -1.0024118e+03 2.7744178e+03 - 1.6605393e+03 -8.9854308e+02 2.7874548e+03 - 1.6594209e+03 -7.8158479e+02 2.8006227e+03 - 1.6577177e+03 -6.5040254e+02 2.8133609e+03 - 1.6557248e+03 -5.0467857e+02 2.8248710e+03 - 1.6538383e+03 -3.4547522e+02 2.8341739e+03 - 1.6524813e+03 -1.7567835e+02 2.8402721e+03 - 1.6519865e+03 4.8134273e-09 2.8424012e+03 - 1.6935381e+03 0.0000000e+00 2.8016556e+03 - 1.6943323e+03 1.8599469e+02 2.7990418e+03 - 1.6965058e+03 3.6477337e+02 2.7916217e+03 - 1.6995214e+03 5.3078087e+02 2.7804885e+03 - 1.7027199e+03 6.8095451e+02 2.7670126e+03 - 1.7055141e+03 8.1456234e+02 2.7524662e+03 - 1.7074935e+03 9.3247494e+02 2.7378139e+03 - 1.7084397e+03 1.0363766e+03 2.7236718e+03 - 1.7082921e+03 1.1281849e+03 2.7103647e+03 - 1.7070995e+03 1.2097197e+03 2.6980111e+03 - 1.7049773e+03 1.2825585e+03 2.6866011e+03 - 1.7020762e+03 1.3480009e+03 2.6760550e+03 - 1.6985618e+03 1.4070869e+03 2.6662609e+03 - 1.6946026e+03 1.4606351e+03 2.6570986e+03 - 1.6903627e+03 1.5092845e+03 2.6484527e+03 - 1.6859984e+03 1.5535327e+03 2.6402197e+03 - 1.6816569e+03 1.5937673e+03 2.6323109e+03 - 1.6774752e+03 1.6302923e+03 2.6246535e+03 - 1.6735802e+03 1.6633478e+03 2.6171903e+03 - 1.6700888e+03 1.6931266e+03 2.6098784e+03 - 1.6671077e+03 1.7197865e+03 2.6026887e+03 - 1.6647338e+03 1.7434600e+03 2.5956042e+03 - 1.6630534e+03 1.7642620e+03 2.5886188e+03 - 1.6621424e+03 1.7822965e+03 2.5817362e+03 - 1.6620657e+03 1.7976608e+03 2.5749690e+03 - 1.6628762e+03 1.8104503e+03 2.5683370e+03 - 1.6646150e+03 1.8207611e+03 2.5618665e+03 - 1.6673095e+03 1.8286929e+03 2.5555894e+03 - 1.6709735e+03 1.8343512e+03 2.5495417e+03 - 1.6756063e+03 1.8378483e+03 2.5437630e+03 - 1.6811917e+03 1.8393053e+03 2.5382948e+03 - 1.6876976e+03 1.8388520e+03 2.5331800e+03 - 1.6950756e+03 1.8366275e+03 2.5284617e+03 - 1.7032609e+03 1.8327803e+03 2.5241818e+03 - 1.7121721e+03 1.8274674e+03 2.5203805e+03 - 1.7217117e+03 1.8208535e+03 2.5170948e+03 - 1.7317667e+03 1.8131101e+03 2.5143580e+03 - 1.7422095e+03 1.8044133e+03 2.5121983e+03 - 1.7528994e+03 1.7949427e+03 2.5106388e+03 - 1.7636838e+03 1.7848785e+03 2.5096962e+03 - 1.7744002e+03 1.7744002e+03 2.5093809e+03 - 1.7848785e+03 1.7636838e+03 2.5096962e+03 - 1.7949427e+03 1.7528994e+03 2.5106388e+03 - 1.8044133e+03 1.7422095e+03 2.5121983e+03 - 1.8131101e+03 1.7317667e+03 2.5143580e+03 - 1.8208535e+03 1.7217117e+03 2.5170948e+03 - 1.8274674e+03 1.7121721e+03 2.5203805e+03 - 1.8327803e+03 1.7032609e+03 2.5241818e+03 - 1.8366275e+03 1.6950756e+03 2.5284617e+03 - 1.8388520e+03 1.6876976e+03 2.5331800e+03 - 1.8393053e+03 1.6811917e+03 2.5382948e+03 - 1.8378483e+03 1.6756063e+03 2.5437630e+03 - 1.8343512e+03 1.6709735e+03 2.5495417e+03 - 1.8286929e+03 1.6673095e+03 2.5555894e+03 - 1.8207611e+03 1.6646150e+03 2.5618665e+03 - 1.8104503e+03 1.6628762e+03 2.5683370e+03 - 1.7976608e+03 1.6620657e+03 2.5749690e+03 - 1.7822965e+03 1.6621424e+03 2.5817362e+03 - 1.7642620e+03 1.6630534e+03 2.5886188e+03 - 1.7434600e+03 1.6647338e+03 2.5956042e+03 - 1.7197865e+03 1.6671077e+03 2.6026887e+03 - 1.6931266e+03 1.6700888e+03 2.6098784e+03 - 1.6633478e+03 1.6735802e+03 2.6171903e+03 - 1.6302923e+03 1.6774752e+03 2.6246535e+03 - 1.5937673e+03 1.6816569e+03 2.6323109e+03 - 1.5535327e+03 1.6859984e+03 2.6402197e+03 - 1.5092845e+03 1.6903627e+03 2.6484527e+03 - 1.4606351e+03 1.6946026e+03 2.6570986e+03 - 1.4070869e+03 1.6985618e+03 2.6662609e+03 - 1.3480009e+03 1.7020762e+03 2.6760550e+03 - 1.2825585e+03 1.7049773e+03 2.6866011e+03 - 1.2097197e+03 1.7070995e+03 2.6980111e+03 - 1.1281849e+03 1.7082921e+03 2.7103647e+03 - 1.0363766e+03 1.7084397e+03 2.7236718e+03 - 9.3247494e+02 1.7074935e+03 2.7378139e+03 - 8.1456234e+02 1.7055141e+03 2.7524662e+03 - 6.8095451e+02 1.7027199e+03 2.7670126e+03 - 5.3078087e+02 1.6995214e+03 2.7804885e+03 - 3.6477337e+02 1.6965058e+03 2.7916217e+03 - 1.8599469e+02 1.6943323e+03 2.7990418e+03 - 0.0000000e+00 1.6935381e+03 2.8016556e+03 - -1.8599469e+02 1.6943323e+03 2.7990418e+03 - -3.6477337e+02 1.6965058e+03 2.7916217e+03 - -5.3078087e+02 1.6995214e+03 2.7804885e+03 - -6.8095451e+02 1.7027199e+03 2.7670126e+03 - -8.1456234e+02 1.7055141e+03 2.7524662e+03 - -9.3247494e+02 1.7074935e+03 2.7378139e+03 - -1.0363766e+03 1.7084397e+03 2.7236718e+03 - -1.1281849e+03 1.7082921e+03 2.7103647e+03 - -1.2097197e+03 1.7070995e+03 2.6980111e+03 - -1.2825585e+03 1.7049773e+03 2.6866011e+03 - -1.3480009e+03 1.7020762e+03 2.6760550e+03 - -1.4070869e+03 1.6985618e+03 2.6662609e+03 - -1.4606351e+03 1.6946026e+03 2.6570986e+03 - -1.5092845e+03 1.6903627e+03 2.6484527e+03 - -1.5535327e+03 1.6859984e+03 2.6402197e+03 - -1.5937673e+03 1.6816569e+03 2.6323109e+03 - -1.6302923e+03 1.6774752e+03 2.6246535e+03 - -1.6633478e+03 1.6735802e+03 2.6171903e+03 - -1.6931266e+03 1.6700888e+03 2.6098784e+03 - -1.7197865e+03 1.6671077e+03 2.6026887e+03 - -1.7434600e+03 1.6647338e+03 2.5956042e+03 - -1.7642620e+03 1.6630534e+03 2.5886188e+03 - -1.7822965e+03 1.6621424e+03 2.5817362e+03 - -1.7976608e+03 1.6620657e+03 2.5749690e+03 - -1.8104503e+03 1.6628762e+03 2.5683370e+03 - -1.8207611e+03 1.6646150e+03 2.5618665e+03 - -1.8286929e+03 1.6673095e+03 2.5555894e+03 - -1.8343512e+03 1.6709735e+03 2.5495417e+03 - -1.8378483e+03 1.6756063e+03 2.5437630e+03 - -1.8393053e+03 1.6811917e+03 2.5382948e+03 - -1.8388520e+03 1.6876976e+03 2.5331800e+03 - -1.8366275e+03 1.6950756e+03 2.5284617e+03 - -1.8327803e+03 1.7032609e+03 2.5241818e+03 - -1.8274674e+03 1.7121721e+03 2.5203805e+03 - -1.8208535e+03 1.7217117e+03 2.5170948e+03 - -1.8131101e+03 1.7317667e+03 2.5143580e+03 - -1.8044133e+03 1.7422095e+03 2.5121983e+03 - -1.7949427e+03 1.7528994e+03 2.5106388e+03 - -1.7848785e+03 1.7636838e+03 2.5096962e+03 - -1.7744002e+03 1.7744002e+03 2.5093809e+03 - -1.7636838e+03 1.7848785e+03 2.5096962e+03 - -1.7528994e+03 1.7949427e+03 2.5106388e+03 - -1.7422095e+03 1.8044133e+03 2.5121983e+03 - -1.7317667e+03 1.8131101e+03 2.5143580e+03 - -1.7217117e+03 1.8208535e+03 2.5170948e+03 - -1.7121721e+03 1.8274674e+03 2.5203805e+03 - -1.7032609e+03 1.8327803e+03 2.5241818e+03 - -1.6950756e+03 1.8366275e+03 2.5284617e+03 - -1.6876976e+03 1.8388520e+03 2.5331800e+03 - -1.6811917e+03 1.8393053e+03 2.5382948e+03 - -1.6756063e+03 1.8378483e+03 2.5437630e+03 - -1.6709735e+03 1.8343512e+03 2.5495417e+03 - -1.6673095e+03 1.8286929e+03 2.5555894e+03 - -1.6646150e+03 1.8207611e+03 2.5618665e+03 - -1.6628762e+03 1.8104503e+03 2.5683370e+03 - -1.6620657e+03 1.7976608e+03 2.5749690e+03 - -1.6621424e+03 1.7822965e+03 2.5817362e+03 - -1.6630534e+03 1.7642620e+03 2.5886188e+03 - -1.6647338e+03 1.7434600e+03 2.5956042e+03 - -1.6671077e+03 1.7197865e+03 2.6026887e+03 - -1.6700888e+03 1.6931266e+03 2.6098784e+03 - -1.6735802e+03 1.6633478e+03 2.6171903e+03 - -1.6774752e+03 1.6302923e+03 2.6246535e+03 - -1.6816569e+03 1.5937673e+03 2.6323109e+03 - -1.6859984e+03 1.5535327e+03 2.6402197e+03 - -1.6903627e+03 1.5092845e+03 2.6484527e+03 - -1.6946026e+03 1.4606351e+03 2.6570986e+03 - -1.6985618e+03 1.4070869e+03 2.6662609e+03 - -1.7020762e+03 1.3480009e+03 2.6760550e+03 - -1.7049773e+03 1.2825585e+03 2.6866011e+03 - -1.7070995e+03 1.2097197e+03 2.6980111e+03 - -1.7082921e+03 1.1281849e+03 2.7103647e+03 - -1.7084397e+03 1.0363766e+03 2.7236718e+03 - -1.7074935e+03 9.3247494e+02 2.7378139e+03 - -1.7055141e+03 8.1456234e+02 2.7524662e+03 - -1.7027199e+03 6.8095451e+02 2.7670126e+03 - -1.6995214e+03 5.3078087e+02 2.7804885e+03 - -1.6965058e+03 3.6477337e+02 2.7916217e+03 - -1.6943323e+03 1.8599469e+02 2.7990418e+03 - -1.6935381e+03 0.0000000e+00 2.8016556e+03 - -1.6943323e+03 -1.8599469e+02 2.7990418e+03 - -1.6965058e+03 -3.6477337e+02 2.7916217e+03 - -1.6995214e+03 -5.3078087e+02 2.7804885e+03 - -1.7027199e+03 -6.8095451e+02 2.7670126e+03 - -1.7055141e+03 -8.1456234e+02 2.7524662e+03 - -1.7074935e+03 -9.3247494e+02 2.7378139e+03 - -1.7084397e+03 -1.0363766e+03 2.7236718e+03 - -1.7082921e+03 -1.1281849e+03 2.7103647e+03 - -1.7070995e+03 -1.2097197e+03 2.6980111e+03 - -1.7049773e+03 -1.2825585e+03 2.6866011e+03 - -1.7020762e+03 -1.3480009e+03 2.6760550e+03 - -1.6985618e+03 -1.4070869e+03 2.6662609e+03 - -1.6946026e+03 -1.4606351e+03 2.6570986e+03 - -1.6903627e+03 -1.5092845e+03 2.6484527e+03 - -1.6859984e+03 -1.5535327e+03 2.6402197e+03 - -1.6816569e+03 -1.5937673e+03 2.6323109e+03 - -1.6774752e+03 -1.6302923e+03 2.6246535e+03 - -1.6735802e+03 -1.6633478e+03 2.6171903e+03 - -1.6700888e+03 -1.6931266e+03 2.6098784e+03 - -1.6671077e+03 -1.7197865e+03 2.6026887e+03 - -1.6647338e+03 -1.7434600e+03 2.5956042e+03 - -1.6630534e+03 -1.7642620e+03 2.5886188e+03 - -1.6621424e+03 -1.7822965e+03 2.5817362e+03 - -1.6620657e+03 -1.7976608e+03 2.5749690e+03 - -1.6628762e+03 -1.8104503e+03 2.5683370e+03 - -1.6646150e+03 -1.8207611e+03 2.5618665e+03 - -1.6673095e+03 -1.8286929e+03 2.5555894e+03 - -1.6709735e+03 -1.8343512e+03 2.5495417e+03 - -1.6756063e+03 -1.8378483e+03 2.5437630e+03 - -1.6811917e+03 -1.8393053e+03 2.5382948e+03 - -1.6876976e+03 -1.8388520e+03 2.5331800e+03 - -1.6950756e+03 -1.8366275e+03 2.5284617e+03 - -1.7032609e+03 -1.8327803e+03 2.5241818e+03 - -1.7121721e+03 -1.8274674e+03 2.5203805e+03 - -1.7217117e+03 -1.8208535e+03 2.5170948e+03 - -1.7317667e+03 -1.8131101e+03 2.5143580e+03 - -1.7422095e+03 -1.8044133e+03 2.5121983e+03 - -1.7528994e+03 -1.7949427e+03 2.5106388e+03 - -1.7636838e+03 -1.7848785e+03 2.5096962e+03 - -1.7744002e+03 -1.7744002e+03 2.5093809e+03 - -1.7848785e+03 -1.7636838e+03 2.5096962e+03 - -1.7949427e+03 -1.7528994e+03 2.5106388e+03 - -1.8044133e+03 -1.7422095e+03 2.5121983e+03 - -1.8131101e+03 -1.7317667e+03 2.5143580e+03 - -1.8208535e+03 -1.7217117e+03 2.5170948e+03 - -1.8274674e+03 -1.7121721e+03 2.5203805e+03 - -1.8327803e+03 -1.7032609e+03 2.5241818e+03 - -1.8366275e+03 -1.6950756e+03 2.5284617e+03 - -1.8388520e+03 -1.6876976e+03 2.5331800e+03 - -1.8393053e+03 -1.6811917e+03 2.5382948e+03 - -1.8378483e+03 -1.6756063e+03 2.5437630e+03 - -1.8343512e+03 -1.6709735e+03 2.5495417e+03 - -1.8286929e+03 -1.6673095e+03 2.5555894e+03 - -1.8207611e+03 -1.6646150e+03 2.5618665e+03 - -1.8104503e+03 -1.6628762e+03 2.5683370e+03 - -1.7976608e+03 -1.6620657e+03 2.5749690e+03 - -1.7822965e+03 -1.6621424e+03 2.5817362e+03 - -1.7642620e+03 -1.6630534e+03 2.5886188e+03 - -1.7434600e+03 -1.6647338e+03 2.5956042e+03 - -1.7197865e+03 -1.6671077e+03 2.6026887e+03 - -1.6931266e+03 -1.6700888e+03 2.6098784e+03 - -1.6633478e+03 -1.6735802e+03 2.6171903e+03 - -1.6302923e+03 -1.6774752e+03 2.6246535e+03 - -1.5937673e+03 -1.6816569e+03 2.6323109e+03 - -1.5535327e+03 -1.6859984e+03 2.6402197e+03 - -1.5092845e+03 -1.6903627e+03 2.6484527e+03 - -1.4606351e+03 -1.6946026e+03 2.6570986e+03 - -1.4070869e+03 -1.6985618e+03 2.6662609e+03 - -1.3480009e+03 -1.7020762e+03 2.6760550e+03 - -1.2825585e+03 -1.7049773e+03 2.6866011e+03 - -1.2097197e+03 -1.7070995e+03 2.6980111e+03 - -1.1281849e+03 -1.7082921e+03 2.7103647e+03 - -1.0363766e+03 -1.7084397e+03 2.7236718e+03 - -9.3247494e+02 -1.7074935e+03 2.7378139e+03 - -8.1456234e+02 -1.7055141e+03 2.7524662e+03 - -6.8095451e+02 -1.7027199e+03 2.7670126e+03 - -5.3078087e+02 -1.6995214e+03 2.7804885e+03 - -3.6477337e+02 -1.6965058e+03 2.7916217e+03 - -1.8599469e+02 -1.6943323e+03 2.7990418e+03 - 0.0000000e+00 -1.6935381e+03 2.8016556e+03 - 1.8599469e+02 -1.6943323e+03 2.7990418e+03 - 3.6477337e+02 -1.6965058e+03 2.7916217e+03 - 5.3078087e+02 -1.6995214e+03 2.7804885e+03 - 6.8095451e+02 -1.7027199e+03 2.7670126e+03 - 8.1456234e+02 -1.7055141e+03 2.7524662e+03 - 9.3247494e+02 -1.7074935e+03 2.7378139e+03 - 1.0363766e+03 -1.7084397e+03 2.7236718e+03 - 1.1281849e+03 -1.7082921e+03 2.7103647e+03 - 1.2097197e+03 -1.7070995e+03 2.6980111e+03 - 1.2825585e+03 -1.7049773e+03 2.6866011e+03 - 1.3480009e+03 -1.7020762e+03 2.6760550e+03 - 1.4070869e+03 -1.6985618e+03 2.6662609e+03 - 1.4606351e+03 -1.6946026e+03 2.6570986e+03 - 1.5092845e+03 -1.6903627e+03 2.6484527e+03 - 1.5535327e+03 -1.6859984e+03 2.6402197e+03 - 1.5937673e+03 -1.6816569e+03 2.6323109e+03 - 1.6302923e+03 -1.6774752e+03 2.6246535e+03 - 1.6633478e+03 -1.6735802e+03 2.6171903e+03 - 1.6931266e+03 -1.6700888e+03 2.6098784e+03 - 1.7197865e+03 -1.6671077e+03 2.6026887e+03 - 1.7434600e+03 -1.6647338e+03 2.5956042e+03 - 1.7642620e+03 -1.6630534e+03 2.5886188e+03 - 1.7822965e+03 -1.6621424e+03 2.5817362e+03 - 1.7976608e+03 -1.6620657e+03 2.5749690e+03 - 1.8104503e+03 -1.6628762e+03 2.5683370e+03 - 1.8207611e+03 -1.6646150e+03 2.5618665e+03 - 1.8286929e+03 -1.6673095e+03 2.5555894e+03 - 1.8343512e+03 -1.6709735e+03 2.5495417e+03 - 1.8378483e+03 -1.6756063e+03 2.5437630e+03 - 1.8393053e+03 -1.6811917e+03 2.5382948e+03 - 1.8388520e+03 -1.6876976e+03 2.5331800e+03 - 1.8366275e+03 -1.6950756e+03 2.5284617e+03 - 1.8327803e+03 -1.7032609e+03 2.5241818e+03 - 1.8274674e+03 -1.7121721e+03 2.5203805e+03 - 1.8208535e+03 -1.7217117e+03 2.5170948e+03 - 1.8131101e+03 -1.7317667e+03 2.5143580e+03 - 1.8044133e+03 -1.7422095e+03 2.5121983e+03 - 1.7949427e+03 -1.7528994e+03 2.5106388e+03 - 1.7848785e+03 -1.7636838e+03 2.5096962e+03 - 1.7744002e+03 -1.7744002e+03 2.5093809e+03 - 1.7636838e+03 -1.7848785e+03 2.5096962e+03 - 1.7528994e+03 -1.7949427e+03 2.5106388e+03 - 1.7422095e+03 -1.8044133e+03 2.5121983e+03 - 1.7317667e+03 -1.8131101e+03 2.5143580e+03 - 1.7217117e+03 -1.8208535e+03 2.5170948e+03 - 1.7121721e+03 -1.8274674e+03 2.5203805e+03 - 1.7032609e+03 -1.8327803e+03 2.5241818e+03 - 1.6950756e+03 -1.8366275e+03 2.5284617e+03 - 1.6876976e+03 -1.8388520e+03 2.5331800e+03 - 1.6811917e+03 -1.8393053e+03 2.5382948e+03 - 1.6756063e+03 -1.8378483e+03 2.5437630e+03 - 1.6709735e+03 -1.8343512e+03 2.5495417e+03 - 1.6673095e+03 -1.8286929e+03 2.5555894e+03 - 1.6646150e+03 -1.8207611e+03 2.5618665e+03 - 1.6628762e+03 -1.8104503e+03 2.5683370e+03 - 1.6620657e+03 -1.7976608e+03 2.5749690e+03 - 1.6621424e+03 -1.7822965e+03 2.5817362e+03 - 1.6630534e+03 -1.7642620e+03 2.5886188e+03 - 1.6647338e+03 -1.7434600e+03 2.5956042e+03 - 1.6671077e+03 -1.7197865e+03 2.6026887e+03 - 1.6700888e+03 -1.6931266e+03 2.6098784e+03 - 1.6735802e+03 -1.6633478e+03 2.6171903e+03 - 1.6774752e+03 -1.6302923e+03 2.6246535e+03 - 1.6816569e+03 -1.5937673e+03 2.6323109e+03 - 1.6859984e+03 -1.5535327e+03 2.6402197e+03 - 1.6903627e+03 -1.5092845e+03 2.6484527e+03 - 1.6946026e+03 -1.4606351e+03 2.6570986e+03 - 1.6985618e+03 -1.4070869e+03 2.6662609e+03 - 1.7020762e+03 -1.3480009e+03 2.6760550e+03 - 1.7049773e+03 -1.2825585e+03 2.6866011e+03 - 1.7070995e+03 -1.2097197e+03 2.6980111e+03 - 1.7082921e+03 -1.1281849e+03 2.7103647e+03 - 1.7084397e+03 -1.0363766e+03 2.7236718e+03 - 1.7074935e+03 -9.3247494e+02 2.7378139e+03 - 1.7055141e+03 -8.1456234e+02 2.7524662e+03 - 1.7027199e+03 -6.8095451e+02 2.7670126e+03 - 1.6995214e+03 -5.3078087e+02 2.7804885e+03 - 1.6965058e+03 -3.6477337e+02 2.7916217e+03 - 1.6943323e+03 -1.8599469e+02 2.7990418e+03 - 1.6935381e+03 2.4067136e-09 2.8016556e+03 - 1.7348776e+03 2.4067136e-09 2.7594944e+03 - 1.7361142e+03 1.9815016e+02 2.7561934e+03 - 1.7394735e+03 3.8717809e+02 2.7469339e+03 - 1.7440781e+03 5.6043504e+02 2.7333396e+03 - 1.7489024e+03 7.1479347e+02 2.7173429e+03 - 1.7530942e+03 8.5014091e+02 2.7006095e+03 - 1.7561108e+03 9.6817706e+02 2.6842858e+03 - 1.7577041e+03 1.0713164e+03 2.6690115e+03 - 1.7578421e+03 1.1619996e+03 2.6550494e+03 - 1.7566267e+03 1.2423715e+03 2.6424249e+03 - 1.7542311e+03 1.3141868e+03 2.6310343e+03 - 1.7508593e+03 1.3788257e+03 2.6207155e+03 - 1.7467226e+03 1.4373513e+03 2.6112899e+03 - 1.7420269e+03 1.4905733e+03 2.6025855e+03 - 1.7369674e+03 1.5391062e+03 2.5944473e+03 - 1.7317254e+03 1.5834163e+03 2.5867423e+03 - 1.7264687e+03 1.6238585e+03 2.5793598e+03 - 1.7213516e+03 1.6607054e+03 2.5722112e+03 - 1.7165154e+03 1.6941684e+03 2.5652277e+03 - 1.7120896e+03 1.7244141e+03 2.5583587e+03 - 1.7081919e+03 1.7515772e+03 2.5515697e+03 - 1.7049286e+03 1.7757703e+03 2.5448407e+03 - 1.7023946e+03 1.7970909e+03 2.5381643e+03 - 1.7006737e+03 1.8156278e+03 2.5315442e+03 - 1.6998373e+03 1.8314660e+03 2.5249940e+03 - 1.6999447e+03 1.8446903e+03 2.5185355e+03 - 1.7010418e+03 1.8553882e+03 2.5121980e+03 - 1.7031609e+03 1.8636530e+03 2.5060166e+03 - 1.7063193e+03 1.8695854e+03 2.5000314e+03 - 1.7105187e+03 1.8732950e+03 2.4942860e+03 - 1.7157445e+03 1.8749016e+03 2.4888267e+03 - 1.7219650e+03 1.8745355e+03 2.4837012e+03 - 1.7291311e+03 1.8723382e+03 2.4789572e+03 - 1.7371760e+03 1.8684620e+03 2.4746413e+03 - 1.7460148e+03 1.8630690e+03 2.4707983e+03 - 1.7555454e+03 1.8563308e+03 2.4674694e+03 - 1.7656491e+03 1.8484266e+03 2.4646916e+03 - 1.7761911e+03 1.8395414e+03 2.4624965e+03 - 1.7870224e+03 1.8298643e+03 2.4609097e+03 - 1.7979815e+03 1.8195860e+03 2.4599500e+03 - 1.8088962e+03 1.8088962e+03 2.4596288e+03 - 1.8195860e+03 1.7979815e+03 2.4599500e+03 - 1.8298643e+03 1.7870224e+03 2.4609097e+03 - 1.8395414e+03 1.7761911e+03 2.4624965e+03 - 1.8484266e+03 1.7656491e+03 2.4646916e+03 - 1.8563308e+03 1.7555454e+03 2.4674694e+03 - 1.8630690e+03 1.7460148e+03 2.4707983e+03 - 1.8684620e+03 1.7371760e+03 2.4746413e+03 - 1.8723382e+03 1.7291311e+03 2.4789572e+03 - 1.8745355e+03 1.7219650e+03 2.4837012e+03 - 1.8749016e+03 1.7157445e+03 2.4888267e+03 - 1.8732950e+03 1.7105187e+03 2.4942860e+03 - 1.8695854e+03 1.7063193e+03 2.5000314e+03 - 1.8636530e+03 1.7031609e+03 2.5060166e+03 - 1.8553882e+03 1.7010418e+03 2.5121980e+03 - 1.8446903e+03 1.6999447e+03 2.5185355e+03 - 1.8314660e+03 1.6998373e+03 2.5249940e+03 - 1.8156278e+03 1.7006737e+03 2.5315442e+03 - 1.7970909e+03 1.7023946e+03 2.5381643e+03 - 1.7757703e+03 1.7049286e+03 2.5448407e+03 - 1.7515772e+03 1.7081919e+03 2.5515697e+03 - 1.7244141e+03 1.7120896e+03 2.5583587e+03 - 1.6941684e+03 1.7165154e+03 2.5652277e+03 - 1.6607054e+03 1.7213516e+03 2.5722112e+03 - 1.6238585e+03 1.7264687e+03 2.5793598e+03 - 1.5834163e+03 1.7317254e+03 2.5867423e+03 - 1.5391062e+03 1.7369674e+03 2.5944473e+03 - 1.4905733e+03 1.7420269e+03 2.6025855e+03 - 1.4373513e+03 1.7467226e+03 2.6112899e+03 - 1.3788257e+03 1.7508593e+03 2.6207155e+03 - 1.3141868e+03 1.7542311e+03 2.6310343e+03 - 1.2423715e+03 1.7566267e+03 2.6424249e+03 - 1.1619996e+03 1.7578421e+03 2.6550494e+03 - 1.0713164e+03 1.7577041e+03 2.6690115e+03 - 9.6817706e+02 1.7561108e+03 2.6842858e+03 - 8.5014091e+02 1.7530942e+03 2.7006095e+03 - 7.1479347e+02 1.7489024e+03 2.7173429e+03 - 5.6043504e+02 1.7440781e+03 2.7333396e+03 - 3.8717809e+02 1.7394735e+03 2.7469339e+03 - 1.9815016e+02 1.7361142e+03 2.7561934e+03 - -2.4067136e-09 1.7348776e+03 2.7594944e+03 - -1.9815016e+02 1.7361142e+03 2.7561934e+03 - -3.8717809e+02 1.7394735e+03 2.7469339e+03 - -5.6043504e+02 1.7440781e+03 2.7333396e+03 - -7.1479347e+02 1.7489024e+03 2.7173429e+03 - -8.5014091e+02 1.7530942e+03 2.7006095e+03 - -9.6817706e+02 1.7561108e+03 2.6842858e+03 - -1.0713164e+03 1.7577041e+03 2.6690115e+03 - -1.1619996e+03 1.7578421e+03 2.6550494e+03 - -1.2423715e+03 1.7566267e+03 2.6424249e+03 - -1.3141868e+03 1.7542311e+03 2.6310343e+03 - -1.3788257e+03 1.7508593e+03 2.6207155e+03 - -1.4373513e+03 1.7467226e+03 2.6112899e+03 - -1.4905733e+03 1.7420269e+03 2.6025855e+03 - -1.5391062e+03 1.7369674e+03 2.5944473e+03 - -1.5834163e+03 1.7317254e+03 2.5867423e+03 - -1.6238585e+03 1.7264687e+03 2.5793598e+03 - -1.6607054e+03 1.7213516e+03 2.5722112e+03 - -1.6941684e+03 1.7165154e+03 2.5652277e+03 - -1.7244141e+03 1.7120896e+03 2.5583587e+03 - -1.7515772e+03 1.7081919e+03 2.5515697e+03 - -1.7757703e+03 1.7049286e+03 2.5448407e+03 - -1.7970909e+03 1.7023946e+03 2.5381643e+03 - -1.8156278e+03 1.7006737e+03 2.5315442e+03 - -1.8314660e+03 1.6998373e+03 2.5249940e+03 - -1.8446903e+03 1.6999447e+03 2.5185355e+03 - -1.8553882e+03 1.7010418e+03 2.5121980e+03 - -1.8636530e+03 1.7031609e+03 2.5060166e+03 - -1.8695854e+03 1.7063193e+03 2.5000314e+03 - -1.8732950e+03 1.7105187e+03 2.4942860e+03 - -1.8749016e+03 1.7157445e+03 2.4888267e+03 - -1.8745355e+03 1.7219650e+03 2.4837012e+03 - -1.8723382e+03 1.7291311e+03 2.4789572e+03 - -1.8684620e+03 1.7371760e+03 2.4746413e+03 - -1.8630690e+03 1.7460148e+03 2.4707983e+03 - -1.8563308e+03 1.7555454e+03 2.4674694e+03 - -1.8484266e+03 1.7656491e+03 2.4646916e+03 - -1.8395414e+03 1.7761911e+03 2.4624965e+03 - -1.8298643e+03 1.7870224e+03 2.4609097e+03 - -1.8195860e+03 1.7979815e+03 2.4599500e+03 - -1.8088962e+03 1.8088962e+03 2.4596288e+03 - -1.7979815e+03 1.8195860e+03 2.4599500e+03 - -1.7870224e+03 1.8298643e+03 2.4609097e+03 - -1.7761911e+03 1.8395414e+03 2.4624965e+03 - -1.7656491e+03 1.8484266e+03 2.4646916e+03 - -1.7555454e+03 1.8563308e+03 2.4674694e+03 - -1.7460148e+03 1.8630690e+03 2.4707983e+03 - -1.7371760e+03 1.8684620e+03 2.4746413e+03 - -1.7291311e+03 1.8723382e+03 2.4789572e+03 - -1.7219650e+03 1.8745355e+03 2.4837012e+03 - -1.7157445e+03 1.8749016e+03 2.4888267e+03 - -1.7105187e+03 1.8732950e+03 2.4942860e+03 - -1.7063193e+03 1.8695854e+03 2.5000314e+03 - -1.7031609e+03 1.8636530e+03 2.5060166e+03 - -1.7010418e+03 1.8553882e+03 2.5121980e+03 - -1.6999447e+03 1.8446903e+03 2.5185355e+03 - -1.6998373e+03 1.8314660e+03 2.5249940e+03 - -1.7006737e+03 1.8156278e+03 2.5315442e+03 - -1.7023946e+03 1.7970909e+03 2.5381643e+03 - -1.7049286e+03 1.7757703e+03 2.5448407e+03 - -1.7081919e+03 1.7515772e+03 2.5515697e+03 - -1.7120896e+03 1.7244141e+03 2.5583587e+03 - -1.7165154e+03 1.6941684e+03 2.5652277e+03 - -1.7213516e+03 1.6607054e+03 2.5722112e+03 - -1.7264687e+03 1.6238585e+03 2.5793598e+03 - -1.7317254e+03 1.5834163e+03 2.5867423e+03 - -1.7369674e+03 1.5391062e+03 2.5944473e+03 - -1.7420269e+03 1.4905733e+03 2.6025855e+03 - -1.7467226e+03 1.4373513e+03 2.6112899e+03 - -1.7508593e+03 1.3788257e+03 2.6207155e+03 - -1.7542311e+03 1.3141868e+03 2.6310343e+03 - -1.7566267e+03 1.2423715e+03 2.6424249e+03 - -1.7578421e+03 1.1619996e+03 2.6550494e+03 - -1.7577041e+03 1.0713164e+03 2.6690115e+03 - -1.7561108e+03 9.6817706e+02 2.6842858e+03 - -1.7530942e+03 8.5014091e+02 2.7006095e+03 - -1.7489024e+03 7.1479347e+02 2.7173429e+03 - -1.7440781e+03 5.6043504e+02 2.7333396e+03 - -1.7394735e+03 3.8717809e+02 2.7469339e+03 - -1.7361142e+03 1.9815016e+02 2.7561934e+03 - -1.7348776e+03 0.0000000e+00 2.7594944e+03 - -1.7361142e+03 -1.9815016e+02 2.7561934e+03 - -1.7394735e+03 -3.8717809e+02 2.7469339e+03 - -1.7440781e+03 -5.6043504e+02 2.7333396e+03 - -1.7489024e+03 -7.1479347e+02 2.7173429e+03 - -1.7530942e+03 -8.5014091e+02 2.7006095e+03 - -1.7561108e+03 -9.6817706e+02 2.6842858e+03 - -1.7577041e+03 -1.0713164e+03 2.6690115e+03 - -1.7578421e+03 -1.1619996e+03 2.6550494e+03 - -1.7566267e+03 -1.2423715e+03 2.6424249e+03 - -1.7542311e+03 -1.3141868e+03 2.6310343e+03 - -1.7508593e+03 -1.3788257e+03 2.6207155e+03 - -1.7467226e+03 -1.4373513e+03 2.6112899e+03 - -1.7420269e+03 -1.4905733e+03 2.6025855e+03 - -1.7369674e+03 -1.5391062e+03 2.5944473e+03 - -1.7317254e+03 -1.5834163e+03 2.5867423e+03 - -1.7264687e+03 -1.6238585e+03 2.5793598e+03 - -1.7213516e+03 -1.6607054e+03 2.5722112e+03 - -1.7165154e+03 -1.6941684e+03 2.5652277e+03 - -1.7120896e+03 -1.7244141e+03 2.5583587e+03 - -1.7081919e+03 -1.7515772e+03 2.5515697e+03 - -1.7049286e+03 -1.7757703e+03 2.5448407e+03 - -1.7023946e+03 -1.7970909e+03 2.5381643e+03 - -1.7006737e+03 -1.8156278e+03 2.5315442e+03 - -1.6998373e+03 -1.8314660e+03 2.5249940e+03 - -1.6999447e+03 -1.8446903e+03 2.5185355e+03 - -1.7010418e+03 -1.8553882e+03 2.5121980e+03 - -1.7031609e+03 -1.8636530e+03 2.5060166e+03 - -1.7063193e+03 -1.8695854e+03 2.5000314e+03 - -1.7105187e+03 -1.8732950e+03 2.4942860e+03 - -1.7157445e+03 -1.8749016e+03 2.4888267e+03 - -1.7219650e+03 -1.8745355e+03 2.4837012e+03 - -1.7291311e+03 -1.8723382e+03 2.4789572e+03 - -1.7371760e+03 -1.8684620e+03 2.4746413e+03 - -1.7460148e+03 -1.8630690e+03 2.4707983e+03 - -1.7555454e+03 -1.8563308e+03 2.4674694e+03 - -1.7656491e+03 -1.8484266e+03 2.4646916e+03 - -1.7761911e+03 -1.8395414e+03 2.4624965e+03 - -1.7870224e+03 -1.8298643e+03 2.4609097e+03 - -1.7979815e+03 -1.8195860e+03 2.4599500e+03 - -1.8088962e+03 -1.8088962e+03 2.4596288e+03 - -1.8195860e+03 -1.7979815e+03 2.4599500e+03 - -1.8298643e+03 -1.7870224e+03 2.4609097e+03 - -1.8395414e+03 -1.7761911e+03 2.4624965e+03 - -1.8484266e+03 -1.7656491e+03 2.4646916e+03 - -1.8563308e+03 -1.7555454e+03 2.4674694e+03 - -1.8630690e+03 -1.7460148e+03 2.4707983e+03 - -1.8684620e+03 -1.7371760e+03 2.4746413e+03 - -1.8723382e+03 -1.7291311e+03 2.4789572e+03 - -1.8745355e+03 -1.7219650e+03 2.4837012e+03 - -1.8749016e+03 -1.7157445e+03 2.4888267e+03 - -1.8732950e+03 -1.7105187e+03 2.4942860e+03 - -1.8695854e+03 -1.7063193e+03 2.5000314e+03 - -1.8636530e+03 -1.7031609e+03 2.5060166e+03 - -1.8553882e+03 -1.7010418e+03 2.5121980e+03 - -1.8446903e+03 -1.6999447e+03 2.5185355e+03 - -1.8314660e+03 -1.6998373e+03 2.5249940e+03 - -1.8156278e+03 -1.7006737e+03 2.5315442e+03 - -1.7970909e+03 -1.7023946e+03 2.5381643e+03 - -1.7757703e+03 -1.7049286e+03 2.5448407e+03 - -1.7515772e+03 -1.7081919e+03 2.5515697e+03 - -1.7244141e+03 -1.7120896e+03 2.5583587e+03 - -1.6941684e+03 -1.7165154e+03 2.5652277e+03 - -1.6607054e+03 -1.7213516e+03 2.5722112e+03 - -1.6238585e+03 -1.7264687e+03 2.5793598e+03 - -1.5834163e+03 -1.7317254e+03 2.5867423e+03 - -1.5391062e+03 -1.7369674e+03 2.5944473e+03 - -1.4905733e+03 -1.7420269e+03 2.6025855e+03 - -1.4373513e+03 -1.7467226e+03 2.6112899e+03 - -1.3788257e+03 -1.7508593e+03 2.6207155e+03 - -1.3141868e+03 -1.7542311e+03 2.6310343e+03 - -1.2423715e+03 -1.7566267e+03 2.6424249e+03 - -1.1619996e+03 -1.7578421e+03 2.6550494e+03 - -1.0713164e+03 -1.7577041e+03 2.6690115e+03 - -9.6817706e+02 -1.7561108e+03 2.6842858e+03 - -8.5014091e+02 -1.7530942e+03 2.7006095e+03 - -7.1479347e+02 -1.7489024e+03 2.7173429e+03 - -5.6043504e+02 -1.7440781e+03 2.7333396e+03 - -3.8717809e+02 -1.7394735e+03 2.7469339e+03 - -1.9815016e+02 -1.7361142e+03 2.7561934e+03 - 2.4067136e-09 -1.7348776e+03 2.7594944e+03 - 1.9815016e+02 -1.7361142e+03 2.7561934e+03 - 3.8717809e+02 -1.7394735e+03 2.7469339e+03 - 5.6043504e+02 -1.7440781e+03 2.7333396e+03 - 7.1479347e+02 -1.7489024e+03 2.7173429e+03 - 8.5014091e+02 -1.7530942e+03 2.7006095e+03 - 9.6817706e+02 -1.7561108e+03 2.6842858e+03 - 1.0713164e+03 -1.7577041e+03 2.6690115e+03 - 1.1619996e+03 -1.7578421e+03 2.6550494e+03 - 1.2423715e+03 -1.7566267e+03 2.6424249e+03 - 1.3141868e+03 -1.7542311e+03 2.6310343e+03 - 1.3788257e+03 -1.7508593e+03 2.6207155e+03 - 1.4373513e+03 -1.7467226e+03 2.6112899e+03 - 1.4905733e+03 -1.7420269e+03 2.6025855e+03 - 1.5391062e+03 -1.7369674e+03 2.5944473e+03 - 1.5834163e+03 -1.7317254e+03 2.5867423e+03 - 1.6238585e+03 -1.7264687e+03 2.5793598e+03 - 1.6607054e+03 -1.7213516e+03 2.5722112e+03 - 1.6941684e+03 -1.7165154e+03 2.5652277e+03 - 1.7244141e+03 -1.7120896e+03 2.5583587e+03 - 1.7515772e+03 -1.7081919e+03 2.5515697e+03 - 1.7757703e+03 -1.7049286e+03 2.5448407e+03 - 1.7970909e+03 -1.7023946e+03 2.5381643e+03 - 1.8156278e+03 -1.7006737e+03 2.5315442e+03 - 1.8314660e+03 -1.6998373e+03 2.5249940e+03 - 1.8446903e+03 -1.6999447e+03 2.5185355e+03 - 1.8553882e+03 -1.7010418e+03 2.5121980e+03 - 1.8636530e+03 -1.7031609e+03 2.5060166e+03 - 1.8695854e+03 -1.7063193e+03 2.5000314e+03 - 1.8732950e+03 -1.7105187e+03 2.4942860e+03 - 1.8749016e+03 -1.7157445e+03 2.4888267e+03 - 1.8745355e+03 -1.7219650e+03 2.4837012e+03 - 1.8723382e+03 -1.7291311e+03 2.4789572e+03 - 1.8684620e+03 -1.7371760e+03 2.4746413e+03 - 1.8630690e+03 -1.7460148e+03 2.4707983e+03 - 1.8563308e+03 -1.7555454e+03 2.4674694e+03 - 1.8484266e+03 -1.7656491e+03 2.4646916e+03 - 1.8395414e+03 -1.7761911e+03 2.4624965e+03 - 1.8298643e+03 -1.7870224e+03 2.4609097e+03 - 1.8195860e+03 -1.7979815e+03 2.4599500e+03 - 1.8088962e+03 -1.8088962e+03 2.4596288e+03 - 1.7979815e+03 -1.8195860e+03 2.4599500e+03 - 1.7870224e+03 -1.8298643e+03 2.4609097e+03 - 1.7761911e+03 -1.8395414e+03 2.4624965e+03 - 1.7656491e+03 -1.8484266e+03 2.4646916e+03 - 1.7555454e+03 -1.8563308e+03 2.4674694e+03 - 1.7460148e+03 -1.8630690e+03 2.4707983e+03 - 1.7371760e+03 -1.8684620e+03 2.4746413e+03 - 1.7291311e+03 -1.8723382e+03 2.4789572e+03 - 1.7219650e+03 -1.8745355e+03 2.4837012e+03 - 1.7157445e+03 -1.8749016e+03 2.4888267e+03 - 1.7105187e+03 -1.8732950e+03 2.4942860e+03 - 1.7063193e+03 -1.8695854e+03 2.5000314e+03 - 1.7031609e+03 -1.8636530e+03 2.5060166e+03 - 1.7010418e+03 -1.8553882e+03 2.5121980e+03 - 1.6999447e+03 -1.8446903e+03 2.5185355e+03 - 1.6998373e+03 -1.8314660e+03 2.5249940e+03 - 1.7006737e+03 -1.8156278e+03 2.5315442e+03 - 1.7023946e+03 -1.7970909e+03 2.5381643e+03 - 1.7049286e+03 -1.7757703e+03 2.5448407e+03 - 1.7081919e+03 -1.7515772e+03 2.5515697e+03 - 1.7120896e+03 -1.7244141e+03 2.5583587e+03 - 1.7165154e+03 -1.6941684e+03 2.5652277e+03 - 1.7213516e+03 -1.6607054e+03 2.5722112e+03 - 1.7264687e+03 -1.6238585e+03 2.5793598e+03 - 1.7317254e+03 -1.5834163e+03 2.5867423e+03 - 1.7369674e+03 -1.5391062e+03 2.5944473e+03 - 1.7420269e+03 -1.4905733e+03 2.6025855e+03 - 1.7467226e+03 -1.4373513e+03 2.6112899e+03 - 1.7508593e+03 -1.3788257e+03 2.6207155e+03 - 1.7542311e+03 -1.3141868e+03 2.6310343e+03 - 1.7566267e+03 -1.2423715e+03 2.6424249e+03 - 1.7578421e+03 -1.1619996e+03 2.6550494e+03 - 1.7577041e+03 -1.0713164e+03 2.6690115e+03 - 1.7561108e+03 -9.6817706e+02 2.6842858e+03 - 1.7530942e+03 -8.5014091e+02 2.7006095e+03 - 1.7489024e+03 -7.1479347e+02 2.7173429e+03 - 1.7440781e+03 -5.6043504e+02 2.7333396e+03 - 1.7394735e+03 -3.8717809e+02 2.7469339e+03 - 1.7361142e+03 -1.9815016e+02 2.7561934e+03 - 1.7348776e+03 0.0000000e+00 2.7594944e+03 - 1.7759790e+03 0.0000000e+00 2.7158956e+03 - 1.7778941e+03 2.1295189e+02 2.7115738e+03 - 1.7830292e+03 4.1391599e+02 2.6996493e+03 - 1.7899115e+03 5.9481655e+02 2.6826507e+03 - 1.7969344e+03 7.5275600e+02 2.6633795e+03 - 1.8028883e+03 8.8875466e+02 2.6440179e+03 - 1.8071030e+03 1.0057502e+03 2.6258739e+03 - 1.8093486e+03 1.1071060e+03 2.6095330e+03 - 1.8096747e+03 1.1958592e+03 2.5951155e+03 - 1.8082789e+03 1.2744761e+03 2.5824918e+03 - 1.8054218e+03 1.3448543e+03 2.5714222e+03 - 1.8013796e+03 1.4084149e+03 2.5616374e+03 - 1.7964204e+03 1.4662081e+03 2.5528775e+03 - 1.7907943e+03 1.5190067e+03 2.5449110e+03 - 1.7847304e+03 1.5673789e+03 2.5375399e+03 - 1.7784368e+03 1.6117438e+03 2.5306004e+03 - 1.7721025e+03 1.6524127e+03 2.5239602e+03 - 1.7658985e+03 1.6896181e+03 2.5175156e+03 - 1.7599806e+03 1.7235367e+03 2.5111875e+03 - 1.7544901e+03 1.7543047e+03 2.5049188e+03 - 1.7495547e+03 1.7820309e+03 2.4986710e+03 - 1.7452901e+03 1.8068051e+03 2.4924224e+03 - 1.7417993e+03 1.8287057e+03 2.4861653e+03 - 1.7391729e+03 1.8478056e+03 2.4799048e+03 - 1.7374891e+03 1.8641758e+03 2.4736564e+03 - 1.7368128e+03 1.8778899e+03 2.4674453e+03 - 1.7371950e+03 1.8890265e+03 2.4613043e+03 - 1.7386721e+03 1.8976717e+03 2.4552730e+03 - 1.7412648e+03 1.9039212e+03 2.4493963e+03 - 1.7449773e+03 1.9078816e+03 2.4437229e+03 - 1.7497963e+03 1.9096713e+03 2.4383046e+03 - 1.7556904e+03 1.9094213e+03 2.4331945e+03 - 1.7626094e+03 1.9072754e+03 2.4284459e+03 - 1.7704841e+03 1.9033898e+03 2.4241109e+03 - 1.7792261e+03 1.8979326e+03 2.4202392e+03 - 1.7887282e+03 1.8910821e+03 2.4168770e+03 - 1.7988652e+03 1.8830261e+03 2.4140656e+03 - 1.8094947e+03 1.8739591e+03 2.4118403e+03 - 1.8204590e+03 1.8640806e+03 2.4102297e+03 - 1.8315866e+03 1.8535921e+03 2.4092548e+03 - 1.8426949e+03 1.8426949e+03 2.4089284e+03 - 1.8535921e+03 1.8315866e+03 2.4092548e+03 - 1.8640806e+03 1.8204590e+03 2.4102297e+03 - 1.8739591e+03 1.8094947e+03 2.4118403e+03 - 1.8830261e+03 1.7988652e+03 2.4140656e+03 - 1.8910821e+03 1.7887282e+03 2.4168770e+03 - 1.8979326e+03 1.7792261e+03 2.4202392e+03 - 1.9033898e+03 1.7704841e+03 2.4241109e+03 - 1.9072754e+03 1.7626094e+03 2.4284459e+03 - 1.9094213e+03 1.7556904e+03 2.4331945e+03 - 1.9096713e+03 1.7497963e+03 2.4383046e+03 - 1.9078816e+03 1.7449773e+03 2.4437229e+03 - 1.9039212e+03 1.7412648e+03 2.4493963e+03 - 1.8976717e+03 1.7386721e+03 2.4552730e+03 - 1.8890265e+03 1.7371950e+03 2.4613043e+03 - 1.8778899e+03 1.7368128e+03 2.4674453e+03 - 1.8641758e+03 1.7374891e+03 2.4736564e+03 - 1.8478056e+03 1.7391729e+03 2.4799048e+03 - 1.8287057e+03 1.7417993e+03 2.4861653e+03 - 1.8068051e+03 1.7452901e+03 2.4924224e+03 - 1.7820309e+03 1.7495547e+03 2.4986710e+03 - 1.7543047e+03 1.7544901e+03 2.5049188e+03 - 1.7235367e+03 1.7599806e+03 2.5111875e+03 - 1.6896181e+03 1.7658985e+03 2.5175156e+03 - 1.6524127e+03 1.7721025e+03 2.5239602e+03 - 1.6117438e+03 1.7784368e+03 2.5306004e+03 - 1.5673789e+03 1.7847304e+03 2.5375399e+03 - 1.5190067e+03 1.7907943e+03 2.5449110e+03 - 1.4662081e+03 1.7964204e+03 2.5528775e+03 - 1.4084149e+03 1.8013796e+03 2.5616374e+03 - 1.3448543e+03 1.8054218e+03 2.5714222e+03 - 1.2744761e+03 1.8082789e+03 2.5824918e+03 - 1.1958592e+03 1.8096747e+03 2.5951155e+03 - 1.1071060e+03 1.8093486e+03 2.6095330e+03 - 1.0057502e+03 1.8071030e+03 2.6258739e+03 - 8.8875466e+02 1.8028883e+03 2.6440179e+03 - 7.5275600e+02 1.7969344e+03 2.6633795e+03 - 5.9481655e+02 1.7899115e+03 2.6826507e+03 - 4.1391599e+02 1.7830292e+03 2.6996493e+03 - 2.1295189e+02 1.7778941e+03 2.7115738e+03 - 2.4067136e-09 1.7759790e+03 2.7158956e+03 - -2.1295189e+02 1.7778941e+03 2.7115738e+03 - -4.1391599e+02 1.7830292e+03 2.6996493e+03 - -5.9481655e+02 1.7899115e+03 2.6826507e+03 - -7.5275600e+02 1.7969344e+03 2.6633795e+03 - -8.8875466e+02 1.8028883e+03 2.6440179e+03 - -1.0057502e+03 1.8071030e+03 2.6258739e+03 - -1.1071060e+03 1.8093486e+03 2.6095330e+03 - -1.1958592e+03 1.8096747e+03 2.5951155e+03 - -1.2744761e+03 1.8082789e+03 2.5824918e+03 - -1.3448543e+03 1.8054218e+03 2.5714222e+03 - -1.4084149e+03 1.8013796e+03 2.5616374e+03 - -1.4662081e+03 1.7964204e+03 2.5528775e+03 - -1.5190067e+03 1.7907943e+03 2.5449110e+03 - -1.5673789e+03 1.7847304e+03 2.5375399e+03 - -1.6117438e+03 1.7784368e+03 2.5306004e+03 - -1.6524127e+03 1.7721025e+03 2.5239602e+03 - -1.6896181e+03 1.7658985e+03 2.5175156e+03 - -1.7235367e+03 1.7599806e+03 2.5111875e+03 - -1.7543047e+03 1.7544901e+03 2.5049188e+03 - -1.7820309e+03 1.7495547e+03 2.4986710e+03 - -1.8068051e+03 1.7452901e+03 2.4924224e+03 - -1.8287057e+03 1.7417993e+03 2.4861653e+03 - -1.8478056e+03 1.7391729e+03 2.4799048e+03 - -1.8641758e+03 1.7374891e+03 2.4736564e+03 - -1.8778899e+03 1.7368128e+03 2.4674453e+03 - -1.8890265e+03 1.7371950e+03 2.4613043e+03 - -1.8976717e+03 1.7386721e+03 2.4552730e+03 - -1.9039212e+03 1.7412648e+03 2.4493963e+03 - -1.9078816e+03 1.7449773e+03 2.4437229e+03 - -1.9096713e+03 1.7497963e+03 2.4383046e+03 - -1.9094213e+03 1.7556904e+03 2.4331945e+03 - -1.9072754e+03 1.7626094e+03 2.4284459e+03 - -1.9033898e+03 1.7704841e+03 2.4241109e+03 - -1.8979326e+03 1.7792261e+03 2.4202392e+03 - -1.8910821e+03 1.7887282e+03 2.4168770e+03 - -1.8830261e+03 1.7988652e+03 2.4140656e+03 - -1.8739591e+03 1.8094947e+03 2.4118403e+03 - -1.8640806e+03 1.8204590e+03 2.4102297e+03 - -1.8535921e+03 1.8315866e+03 2.4092548e+03 - -1.8426949e+03 1.8426949e+03 2.4089284e+03 - -1.8315866e+03 1.8535921e+03 2.4092548e+03 - -1.8204590e+03 1.8640806e+03 2.4102297e+03 - -1.8094947e+03 1.8739591e+03 2.4118403e+03 - -1.7988652e+03 1.8830261e+03 2.4140656e+03 - -1.7887282e+03 1.8910821e+03 2.4168770e+03 - -1.7792261e+03 1.8979326e+03 2.4202392e+03 - -1.7704841e+03 1.9033898e+03 2.4241109e+03 - -1.7626094e+03 1.9072754e+03 2.4284459e+03 - -1.7556904e+03 1.9094213e+03 2.4331945e+03 - -1.7497963e+03 1.9096713e+03 2.4383046e+03 - -1.7449773e+03 1.9078816e+03 2.4437229e+03 - -1.7412648e+03 1.9039212e+03 2.4493963e+03 - -1.7386721e+03 1.8976717e+03 2.4552730e+03 - -1.7371950e+03 1.8890265e+03 2.4613043e+03 - -1.7368128e+03 1.8778899e+03 2.4674453e+03 - -1.7374891e+03 1.8641758e+03 2.4736564e+03 - -1.7391729e+03 1.8478056e+03 2.4799048e+03 - -1.7417993e+03 1.8287057e+03 2.4861653e+03 - -1.7452901e+03 1.8068051e+03 2.4924224e+03 - -1.7495547e+03 1.7820309e+03 2.4986710e+03 - -1.7544901e+03 1.7543047e+03 2.5049188e+03 - -1.7599806e+03 1.7235367e+03 2.5111875e+03 - -1.7658985e+03 1.6896181e+03 2.5175156e+03 - -1.7721025e+03 1.6524127e+03 2.5239602e+03 - -1.7784368e+03 1.6117438e+03 2.5306004e+03 - -1.7847304e+03 1.5673789e+03 2.5375399e+03 - -1.7907943e+03 1.5190067e+03 2.5449110e+03 - -1.7964204e+03 1.4662081e+03 2.5528775e+03 - -1.8013796e+03 1.4084149e+03 2.5616374e+03 - -1.8054218e+03 1.3448543e+03 2.5714222e+03 - -1.8082789e+03 1.2744761e+03 2.5824918e+03 - -1.8096747e+03 1.1958592e+03 2.5951155e+03 - -1.8093486e+03 1.1071060e+03 2.6095330e+03 - -1.8071030e+03 1.0057502e+03 2.6258739e+03 - -1.8028883e+03 8.8875466e+02 2.6440179e+03 - -1.7969344e+03 7.5275600e+02 2.6633795e+03 - -1.7899115e+03 5.9481655e+02 2.6826507e+03 - -1.7830292e+03 4.1391599e+02 2.6996493e+03 - -1.7778941e+03 2.1295189e+02 2.7115738e+03 - -1.7759790e+03 -2.4067136e-09 2.7158956e+03 - -1.7778941e+03 -2.1295189e+02 2.7115738e+03 - -1.7830292e+03 -4.1391599e+02 2.6996493e+03 - -1.7899115e+03 -5.9481655e+02 2.6826507e+03 - -1.7969344e+03 -7.5275600e+02 2.6633795e+03 - -1.8028883e+03 -8.8875466e+02 2.6440179e+03 - -1.8071030e+03 -1.0057502e+03 2.6258739e+03 - -1.8093486e+03 -1.1071060e+03 2.6095330e+03 - -1.8096747e+03 -1.1958592e+03 2.5951155e+03 - -1.8082789e+03 -1.2744761e+03 2.5824918e+03 - -1.8054218e+03 -1.3448543e+03 2.5714222e+03 - -1.8013796e+03 -1.4084149e+03 2.5616374e+03 - -1.7964204e+03 -1.4662081e+03 2.5528775e+03 - -1.7907943e+03 -1.5190067e+03 2.5449110e+03 - -1.7847304e+03 -1.5673789e+03 2.5375399e+03 - -1.7784368e+03 -1.6117438e+03 2.5306004e+03 - -1.7721025e+03 -1.6524127e+03 2.5239602e+03 - -1.7658985e+03 -1.6896181e+03 2.5175156e+03 - -1.7599806e+03 -1.7235367e+03 2.5111875e+03 - -1.7544901e+03 -1.7543047e+03 2.5049188e+03 - -1.7495547e+03 -1.7820309e+03 2.4986710e+03 - -1.7452901e+03 -1.8068051e+03 2.4924224e+03 - -1.7417993e+03 -1.8287057e+03 2.4861653e+03 - -1.7391729e+03 -1.8478056e+03 2.4799048e+03 - -1.7374891e+03 -1.8641758e+03 2.4736564e+03 - -1.7368128e+03 -1.8778899e+03 2.4674453e+03 - -1.7371950e+03 -1.8890265e+03 2.4613043e+03 - -1.7386721e+03 -1.8976717e+03 2.4552730e+03 - -1.7412648e+03 -1.9039212e+03 2.4493963e+03 - -1.7449773e+03 -1.9078816e+03 2.4437229e+03 - -1.7497963e+03 -1.9096713e+03 2.4383046e+03 - -1.7556904e+03 -1.9094213e+03 2.4331945e+03 - -1.7626094e+03 -1.9072754e+03 2.4284459e+03 - -1.7704841e+03 -1.9033898e+03 2.4241109e+03 - -1.7792261e+03 -1.8979326e+03 2.4202392e+03 - -1.7887282e+03 -1.8910821e+03 2.4168770e+03 - -1.7988652e+03 -1.8830261e+03 2.4140656e+03 - -1.8094947e+03 -1.8739591e+03 2.4118403e+03 - -1.8204590e+03 -1.8640806e+03 2.4102297e+03 - -1.8315866e+03 -1.8535921e+03 2.4092548e+03 - -1.8426949e+03 -1.8426949e+03 2.4089284e+03 - -1.8535921e+03 -1.8315866e+03 2.4092548e+03 - -1.8640806e+03 -1.8204590e+03 2.4102297e+03 - -1.8739591e+03 -1.8094947e+03 2.4118403e+03 - -1.8830261e+03 -1.7988652e+03 2.4140656e+03 - -1.8910821e+03 -1.7887282e+03 2.4168770e+03 - -1.8979326e+03 -1.7792261e+03 2.4202392e+03 - -1.9033898e+03 -1.7704841e+03 2.4241109e+03 - -1.9072754e+03 -1.7626094e+03 2.4284459e+03 - -1.9094213e+03 -1.7556904e+03 2.4331945e+03 - -1.9096713e+03 -1.7497963e+03 2.4383046e+03 - -1.9078816e+03 -1.7449773e+03 2.4437229e+03 - -1.9039212e+03 -1.7412648e+03 2.4493963e+03 - -1.8976717e+03 -1.7386721e+03 2.4552730e+03 - -1.8890265e+03 -1.7371950e+03 2.4613043e+03 - -1.8778899e+03 -1.7368128e+03 2.4674453e+03 - -1.8641758e+03 -1.7374891e+03 2.4736564e+03 - -1.8478056e+03 -1.7391729e+03 2.4799048e+03 - -1.8287057e+03 -1.7417993e+03 2.4861653e+03 - -1.8068051e+03 -1.7452901e+03 2.4924224e+03 - -1.7820309e+03 -1.7495547e+03 2.4986710e+03 - -1.7543047e+03 -1.7544901e+03 2.5049188e+03 - -1.7235367e+03 -1.7599806e+03 2.5111875e+03 - -1.6896181e+03 -1.7658985e+03 2.5175156e+03 - -1.6524127e+03 -1.7721025e+03 2.5239602e+03 - -1.6117438e+03 -1.7784368e+03 2.5306004e+03 - -1.5673789e+03 -1.7847304e+03 2.5375399e+03 - -1.5190067e+03 -1.7907943e+03 2.5449110e+03 - -1.4662081e+03 -1.7964204e+03 2.5528775e+03 - -1.4084149e+03 -1.8013796e+03 2.5616374e+03 - -1.3448543e+03 -1.8054218e+03 2.5714222e+03 - -1.2744761e+03 -1.8082789e+03 2.5824918e+03 - -1.1958592e+03 -1.8096747e+03 2.5951155e+03 - -1.1071060e+03 -1.8093486e+03 2.6095330e+03 - -1.0057502e+03 -1.8071030e+03 2.6258739e+03 - -8.8875466e+02 -1.8028883e+03 2.6440179e+03 - -7.5275600e+02 -1.7969344e+03 2.6633795e+03 - -5.9481655e+02 -1.7899115e+03 2.6826507e+03 - -4.1391599e+02 -1.7830292e+03 2.6996493e+03 - -2.1295189e+02 -1.7778941e+03 2.7115738e+03 - -2.4067136e-09 -1.7759790e+03 2.7158956e+03 - 2.1295189e+02 -1.7778941e+03 2.7115738e+03 - 4.1391599e+02 -1.7830292e+03 2.6996493e+03 - 5.9481655e+02 -1.7899115e+03 2.6826507e+03 - 7.5275600e+02 -1.7969344e+03 2.6633795e+03 - 8.8875466e+02 -1.8028883e+03 2.6440179e+03 - 1.0057502e+03 -1.8071030e+03 2.6258739e+03 - 1.1071060e+03 -1.8093486e+03 2.6095330e+03 - 1.1958592e+03 -1.8096747e+03 2.5951155e+03 - 1.2744761e+03 -1.8082789e+03 2.5824918e+03 - 1.3448543e+03 -1.8054218e+03 2.5714222e+03 - 1.4084149e+03 -1.8013796e+03 2.5616374e+03 - 1.4662081e+03 -1.7964204e+03 2.5528775e+03 - 1.5190067e+03 -1.7907943e+03 2.5449110e+03 - 1.5673789e+03 -1.7847304e+03 2.5375399e+03 - 1.6117438e+03 -1.7784368e+03 2.5306004e+03 - 1.6524127e+03 -1.7721025e+03 2.5239602e+03 - 1.6896181e+03 -1.7658985e+03 2.5175156e+03 - 1.7235367e+03 -1.7599806e+03 2.5111875e+03 - 1.7543047e+03 -1.7544901e+03 2.5049188e+03 - 1.7820309e+03 -1.7495547e+03 2.4986710e+03 - 1.8068051e+03 -1.7452901e+03 2.4924224e+03 - 1.8287057e+03 -1.7417993e+03 2.4861653e+03 - 1.8478056e+03 -1.7391729e+03 2.4799048e+03 - 1.8641758e+03 -1.7374891e+03 2.4736564e+03 - 1.8778899e+03 -1.7368128e+03 2.4674453e+03 - 1.8890265e+03 -1.7371950e+03 2.4613043e+03 - 1.8976717e+03 -1.7386721e+03 2.4552730e+03 - 1.9039212e+03 -1.7412648e+03 2.4493963e+03 - 1.9078816e+03 -1.7449773e+03 2.4437229e+03 - 1.9096713e+03 -1.7497963e+03 2.4383046e+03 - 1.9094213e+03 -1.7556904e+03 2.4331945e+03 - 1.9072754e+03 -1.7626094e+03 2.4284459e+03 - 1.9033898e+03 -1.7704841e+03 2.4241109e+03 - 1.8979326e+03 -1.7792261e+03 2.4202392e+03 - 1.8910821e+03 -1.7887282e+03 2.4168770e+03 - 1.8830261e+03 -1.7988652e+03 2.4140656e+03 - 1.8739591e+03 -1.8094947e+03 2.4118403e+03 - 1.8640806e+03 -1.8204590e+03 2.4102297e+03 - 1.8535921e+03 -1.8315866e+03 2.4092548e+03 - 1.8426949e+03 -1.8426949e+03 2.4089284e+03 - 1.8315866e+03 -1.8535921e+03 2.4092548e+03 - 1.8204590e+03 -1.8640806e+03 2.4102297e+03 - 1.8094947e+03 -1.8739591e+03 2.4118403e+03 - 1.7988652e+03 -1.8830261e+03 2.4140656e+03 - 1.7887282e+03 -1.8910821e+03 2.4168770e+03 - 1.7792261e+03 -1.8979326e+03 2.4202392e+03 - 1.7704841e+03 -1.9033898e+03 2.4241109e+03 - 1.7626094e+03 -1.9072754e+03 2.4284459e+03 - 1.7556904e+03 -1.9094213e+03 2.4331945e+03 - 1.7497963e+03 -1.9096713e+03 2.4383046e+03 - 1.7449773e+03 -1.9078816e+03 2.4437229e+03 - 1.7412648e+03 -1.9039212e+03 2.4493963e+03 - 1.7386721e+03 -1.8976717e+03 2.4552730e+03 - 1.7371950e+03 -1.8890265e+03 2.4613043e+03 - 1.7368128e+03 -1.8778899e+03 2.4674453e+03 - 1.7374891e+03 -1.8641758e+03 2.4736564e+03 - 1.7391729e+03 -1.8478056e+03 2.4799048e+03 - 1.7417993e+03 -1.8287057e+03 2.4861653e+03 - 1.7452901e+03 -1.8068051e+03 2.4924224e+03 - 1.7495547e+03 -1.7820309e+03 2.4986710e+03 - 1.7544901e+03 -1.7543047e+03 2.5049188e+03 - 1.7599806e+03 -1.7235367e+03 2.5111875e+03 - 1.7658985e+03 -1.6896181e+03 2.5175156e+03 - 1.7721025e+03 -1.6524127e+03 2.5239602e+03 - 1.7784368e+03 -1.6117438e+03 2.5306004e+03 - 1.7847304e+03 -1.5673789e+03 2.5375399e+03 - 1.7907943e+03 -1.5190067e+03 2.5449110e+03 - 1.7964204e+03 -1.4662081e+03 2.5528775e+03 - 1.8013796e+03 -1.4084149e+03 2.5616374e+03 - 1.8054218e+03 -1.3448543e+03 2.5714222e+03 - 1.8082789e+03 -1.2744761e+03 2.5824918e+03 - 1.8096747e+03 -1.1958592e+03 2.5951155e+03 - 1.8093486e+03 -1.1071060e+03 2.6095330e+03 - 1.8071030e+03 -1.0057502e+03 2.6258739e+03 - 1.8028883e+03 -8.8875466e+02 2.6440179e+03 - 1.7969344e+03 -7.5275600e+02 2.6633795e+03 - 1.7899115e+03 -5.9481655e+02 2.6826507e+03 - 1.7830292e+03 -4.1391599e+02 2.6996493e+03 - 1.7778941e+03 -2.1295189e+02 2.7115738e+03 - 1.7759790e+03 -2.4067136e-09 2.7158956e+03 - 1.8168148e+03 -2.4067136e-09 2.6708380e+03 - 1.8198253e+03 2.3174970e+02 2.6649069e+03 - 1.8277290e+03 4.4691434e+02 2.6489290e+03 - 1.8379462e+03 6.3559530e+02 2.6270798e+03 - 1.8479326e+03 7.9586054e+02 2.6035344e+03 - 1.8560337e+03 9.3078307e+02 2.5810976e+03 - 1.8615227e+03 1.0451190e+03 2.5611217e+03 - 1.8642965e+03 1.1434067e+03 2.5439727e+03 - 1.8645768e+03 1.2293025e+03 2.5294969e+03 - 1.8627170e+03 1.3055363e+03 2.5173243e+03 - 1.8591011e+03 1.3740754e+03 2.5070312e+03 - 1.8540966e+03 1.4363172e+03 2.4982152e+03 - 1.8480382e+03 1.4932498e+03 2.4905243e+03 - 1.8412241e+03 1.5455727e+03 2.4836633e+03 - 1.8339186e+03 1.5937828e+03 2.4773912e+03 - 1.8263559e+03 1.6382351e+03 2.4715150e+03 - 1.8187447e+03 1.6791846e+03 2.4658835e+03 - 1.8112719e+03 1.7168163e+03 2.4603802e+03 - 1.8041056e+03 1.7512660e+03 2.4549186e+03 - 1.7973977e+03 1.7826361e+03 2.4494373e+03 - 1.7912850e+03 1.8110060e+03 2.4438963e+03 - 1.7858911e+03 1.8364413e+03 2.4382740e+03 - 1.7813259e+03 1.8590001e+03 2.4325645e+03 - 1.7776868e+03 1.8787376e+03 2.4267755e+03 - 1.7750575e+03 1.8957106e+03 2.4209265e+03 - 1.7735082e+03 1.9099807e+03 2.4150469e+03 - 1.7730945e+03 1.9216172e+03 2.4091747e+03 - 1.7738565e+03 1.9306987e+03 2.4033549e+03 - 1.7758180e+03 1.9373156e+03 2.3976384e+03 - 1.7789854e+03 1.9415714e+03 2.3920803e+03 - 1.7833465e+03 1.9435831e+03 2.3867386e+03 - 1.7888697e+03 1.9434825e+03 2.3816729e+03 - 1.7955038e+03 1.9414159e+03 2.3769429e+03 - 1.8031766e+03 1.9375438e+03 2.3726070e+03 - 1.8117958e+03 1.9320403e+03 2.3687208e+03 - 1.8212487e+03 1.9250914e+03 2.3653361e+03 - 1.8314029e+03 1.9168939e+03 2.3624990e+03 - 1.8421078e+03 1.9076526e+03 2.3602490e+03 - 1.8531962e+03 1.8975781e+03 2.3586183e+03 - 1.8644861e+03 1.8868838e+03 2.3576303e+03 - 1.8757831e+03 1.8757831e+03 2.3572994e+03 - 1.8868838e+03 1.8644861e+03 2.3576303e+03 - 1.8975781e+03 1.8531962e+03 2.3586183e+03 - 1.9076526e+03 1.8421078e+03 2.3602490e+03 - 1.9168939e+03 1.8314029e+03 2.3624990e+03 - 1.9250914e+03 1.8212487e+03 2.3653361e+03 - 1.9320403e+03 1.8117958e+03 2.3687208e+03 - 1.9375438e+03 1.8031766e+03 2.3726070e+03 - 1.9414159e+03 1.7955038e+03 2.3769429e+03 - 1.9434825e+03 1.7888697e+03 2.3816729e+03 - 1.9435831e+03 1.7833465e+03 2.3867386e+03 - 1.9415714e+03 1.7789854e+03 2.3920803e+03 - 1.9373156e+03 1.7758180e+03 2.3976384e+03 - 1.9306987e+03 1.7738565e+03 2.4033549e+03 - 1.9216172e+03 1.7730945e+03 2.4091747e+03 - 1.9099807e+03 1.7735082e+03 2.4150469e+03 - 1.8957106e+03 1.7750575e+03 2.4209265e+03 - 1.8787376e+03 1.7776868e+03 2.4267755e+03 - 1.8590001e+03 1.7813259e+03 2.4325645e+03 - 1.8364413e+03 1.7858911e+03 2.4382740e+03 - 1.8110060e+03 1.7912850e+03 2.4438963e+03 - 1.7826361e+03 1.7973977e+03 2.4494373e+03 - 1.7512660e+03 1.8041056e+03 2.4549186e+03 - 1.7168163e+03 1.8112719e+03 2.4603802e+03 - 1.6791846e+03 1.8187447e+03 2.4658835e+03 - 1.6382351e+03 1.8263559e+03 2.4715150e+03 - 1.5937828e+03 1.8339186e+03 2.4773912e+03 - 1.5455727e+03 1.8412241e+03 2.4836633e+03 - 1.4932498e+03 1.8480382e+03 2.4905243e+03 - 1.4363172e+03 1.8540966e+03 2.4982152e+03 - 1.3740754e+03 1.8591011e+03 2.5070312e+03 - 1.3055363e+03 1.8627170e+03 2.5173243e+03 - 1.2293025e+03 1.8645768e+03 2.5294969e+03 - 1.1434067e+03 1.8642965e+03 2.5439727e+03 - 1.0451190e+03 1.8615227e+03 2.5611217e+03 - 9.3078307e+02 1.8560337e+03 2.5810976e+03 - 7.9586054e+02 1.8479326e+03 2.6035344e+03 - 6.3559530e+02 1.8379462e+03 2.6270798e+03 - 4.4691434e+02 1.8277290e+03 2.6489290e+03 - 2.3174970e+02 1.8198253e+03 2.6649069e+03 - 2.4067136e-09 1.8168148e+03 2.6708380e+03 - -2.3174970e+02 1.8198253e+03 2.6649069e+03 - -4.4691434e+02 1.8277290e+03 2.6489290e+03 - -6.3559530e+02 1.8379462e+03 2.6270798e+03 - -7.9586054e+02 1.8479326e+03 2.6035344e+03 - -9.3078307e+02 1.8560337e+03 2.5810976e+03 - -1.0451190e+03 1.8615227e+03 2.5611217e+03 - -1.1434067e+03 1.8642965e+03 2.5439727e+03 - -1.2293025e+03 1.8645768e+03 2.5294969e+03 - -1.3055363e+03 1.8627170e+03 2.5173243e+03 - -1.3740754e+03 1.8591011e+03 2.5070312e+03 - -1.4363172e+03 1.8540966e+03 2.4982152e+03 - -1.4932498e+03 1.8480382e+03 2.4905243e+03 - -1.5455727e+03 1.8412241e+03 2.4836633e+03 - -1.5937828e+03 1.8339186e+03 2.4773912e+03 - -1.6382351e+03 1.8263559e+03 2.4715150e+03 - -1.6791846e+03 1.8187447e+03 2.4658835e+03 - -1.7168163e+03 1.8112719e+03 2.4603802e+03 - -1.7512660e+03 1.8041056e+03 2.4549186e+03 - -1.7826361e+03 1.7973977e+03 2.4494373e+03 - -1.8110060e+03 1.7912850e+03 2.4438963e+03 - -1.8364413e+03 1.7858911e+03 2.4382740e+03 - -1.8590001e+03 1.7813259e+03 2.4325645e+03 - -1.8787376e+03 1.7776868e+03 2.4267755e+03 - -1.8957106e+03 1.7750575e+03 2.4209265e+03 - -1.9099807e+03 1.7735082e+03 2.4150469e+03 - -1.9216172e+03 1.7730945e+03 2.4091747e+03 - -1.9306987e+03 1.7738565e+03 2.4033549e+03 - -1.9373156e+03 1.7758180e+03 2.3976384e+03 - -1.9415714e+03 1.7789854e+03 2.3920803e+03 - -1.9435831e+03 1.7833465e+03 2.3867386e+03 - -1.9434825e+03 1.7888697e+03 2.3816729e+03 - -1.9414159e+03 1.7955038e+03 2.3769429e+03 - -1.9375438e+03 1.8031766e+03 2.3726070e+03 - -1.9320403e+03 1.8117958e+03 2.3687208e+03 - -1.9250914e+03 1.8212487e+03 2.3653361e+03 - -1.9168939e+03 1.8314029e+03 2.3624990e+03 - -1.9076526e+03 1.8421078e+03 2.3602490e+03 - -1.8975781e+03 1.8531962e+03 2.3586183e+03 - -1.8868838e+03 1.8644861e+03 2.3576303e+03 - -1.8757831e+03 1.8757831e+03 2.3572994e+03 - -1.8644861e+03 1.8868838e+03 2.3576303e+03 - -1.8531962e+03 1.8975781e+03 2.3586183e+03 - -1.8421078e+03 1.9076526e+03 2.3602490e+03 - -1.8314029e+03 1.9168939e+03 2.3624990e+03 - -1.8212487e+03 1.9250914e+03 2.3653361e+03 - -1.8117958e+03 1.9320403e+03 2.3687208e+03 - -1.8031766e+03 1.9375438e+03 2.3726070e+03 - -1.7955038e+03 1.9414159e+03 2.3769429e+03 - -1.7888697e+03 1.9434825e+03 2.3816729e+03 - -1.7833465e+03 1.9435831e+03 2.3867386e+03 - -1.7789854e+03 1.9415714e+03 2.3920803e+03 - -1.7758180e+03 1.9373156e+03 2.3976384e+03 - -1.7738565e+03 1.9306987e+03 2.4033549e+03 - -1.7730945e+03 1.9216172e+03 2.4091747e+03 - -1.7735082e+03 1.9099807e+03 2.4150469e+03 - -1.7750575e+03 1.8957106e+03 2.4209265e+03 - -1.7776868e+03 1.8787376e+03 2.4267755e+03 - -1.7813259e+03 1.8590001e+03 2.4325645e+03 - -1.7858911e+03 1.8364413e+03 2.4382740e+03 - -1.7912850e+03 1.8110060e+03 2.4438963e+03 - -1.7973977e+03 1.7826361e+03 2.4494373e+03 - -1.8041056e+03 1.7512660e+03 2.4549186e+03 - -1.8112719e+03 1.7168163e+03 2.4603802e+03 - -1.8187447e+03 1.6791846e+03 2.4658835e+03 - -1.8263559e+03 1.6382351e+03 2.4715150e+03 - -1.8339186e+03 1.5937828e+03 2.4773912e+03 - -1.8412241e+03 1.5455727e+03 2.4836633e+03 - -1.8480382e+03 1.4932498e+03 2.4905243e+03 - -1.8540966e+03 1.4363172e+03 2.4982152e+03 - -1.8591011e+03 1.3740754e+03 2.5070312e+03 - -1.8627170e+03 1.3055363e+03 2.5173243e+03 - -1.8645768e+03 1.2293025e+03 2.5294969e+03 - -1.8642965e+03 1.1434067e+03 2.5439727e+03 - -1.8615227e+03 1.0451190e+03 2.5611217e+03 - -1.8560337e+03 9.3078307e+02 2.5810976e+03 - -1.8479326e+03 7.9586054e+02 2.6035344e+03 - -1.8379462e+03 6.3559530e+02 2.6270798e+03 - -1.8277290e+03 4.4691434e+02 2.6489290e+03 - -1.8198253e+03 2.3174970e+02 2.6649069e+03 - -1.8168148e+03 2.4067136e-09 2.6708380e+03 - -1.8198253e+03 -2.3174970e+02 2.6649069e+03 - -1.8277290e+03 -4.4691434e+02 2.6489290e+03 - -1.8379462e+03 -6.3559530e+02 2.6270798e+03 - -1.8479326e+03 -7.9586054e+02 2.6035344e+03 - -1.8560337e+03 -9.3078307e+02 2.5810976e+03 - -1.8615227e+03 -1.0451190e+03 2.5611217e+03 - -1.8642965e+03 -1.1434067e+03 2.5439727e+03 - -1.8645768e+03 -1.2293025e+03 2.5294969e+03 - -1.8627170e+03 -1.3055363e+03 2.5173243e+03 - -1.8591011e+03 -1.3740754e+03 2.5070312e+03 - -1.8540966e+03 -1.4363172e+03 2.4982152e+03 - -1.8480382e+03 -1.4932498e+03 2.4905243e+03 - -1.8412241e+03 -1.5455727e+03 2.4836633e+03 - -1.8339186e+03 -1.5937828e+03 2.4773912e+03 - -1.8263559e+03 -1.6382351e+03 2.4715150e+03 - -1.8187447e+03 -1.6791846e+03 2.4658835e+03 - -1.8112719e+03 -1.7168163e+03 2.4603802e+03 - -1.8041056e+03 -1.7512660e+03 2.4549186e+03 - -1.7973977e+03 -1.7826361e+03 2.4494373e+03 - -1.7912850e+03 -1.8110060e+03 2.4438963e+03 - -1.7858911e+03 -1.8364413e+03 2.4382740e+03 - -1.7813259e+03 -1.8590001e+03 2.4325645e+03 - -1.7776868e+03 -1.8787376e+03 2.4267755e+03 - -1.7750575e+03 -1.8957106e+03 2.4209265e+03 - -1.7735082e+03 -1.9099807e+03 2.4150469e+03 - -1.7730945e+03 -1.9216172e+03 2.4091747e+03 - -1.7738565e+03 -1.9306987e+03 2.4033549e+03 - -1.7758180e+03 -1.9373156e+03 2.3976384e+03 - -1.7789854e+03 -1.9415714e+03 2.3920803e+03 - -1.7833465e+03 -1.9435831e+03 2.3867386e+03 - -1.7888697e+03 -1.9434825e+03 2.3816729e+03 - -1.7955038e+03 -1.9414159e+03 2.3769429e+03 - -1.8031766e+03 -1.9375438e+03 2.3726070e+03 - -1.8117958e+03 -1.9320403e+03 2.3687208e+03 - -1.8212487e+03 -1.9250914e+03 2.3653361e+03 - -1.8314029e+03 -1.9168939e+03 2.3624990e+03 - -1.8421078e+03 -1.9076526e+03 2.3602490e+03 - -1.8531962e+03 -1.8975781e+03 2.3586183e+03 - -1.8644861e+03 -1.8868838e+03 2.3576303e+03 - -1.8757831e+03 -1.8757831e+03 2.3572994e+03 - -1.8868838e+03 -1.8644861e+03 2.3576303e+03 - -1.8975781e+03 -1.8531962e+03 2.3586183e+03 - -1.9076526e+03 -1.8421078e+03 2.3602490e+03 - -1.9168939e+03 -1.8314029e+03 2.3624990e+03 - -1.9250914e+03 -1.8212487e+03 2.3653361e+03 - -1.9320403e+03 -1.8117958e+03 2.3687208e+03 - -1.9375438e+03 -1.8031766e+03 2.3726070e+03 - -1.9414159e+03 -1.7955038e+03 2.3769429e+03 - -1.9434825e+03 -1.7888697e+03 2.3816729e+03 - -1.9435831e+03 -1.7833465e+03 2.3867386e+03 - -1.9415714e+03 -1.7789854e+03 2.3920803e+03 - -1.9373156e+03 -1.7758180e+03 2.3976384e+03 - -1.9306987e+03 -1.7738565e+03 2.4033549e+03 - -1.9216172e+03 -1.7730945e+03 2.4091747e+03 - -1.9099807e+03 -1.7735082e+03 2.4150469e+03 - -1.8957106e+03 -1.7750575e+03 2.4209265e+03 - -1.8787376e+03 -1.7776868e+03 2.4267755e+03 - -1.8590001e+03 -1.7813259e+03 2.4325645e+03 - -1.8364413e+03 -1.7858911e+03 2.4382740e+03 - -1.8110060e+03 -1.7912850e+03 2.4438963e+03 - -1.7826361e+03 -1.7973977e+03 2.4494373e+03 - -1.7512660e+03 -1.8041056e+03 2.4549186e+03 - -1.7168163e+03 -1.8112719e+03 2.4603802e+03 - -1.6791846e+03 -1.8187447e+03 2.4658835e+03 - -1.6382351e+03 -1.8263559e+03 2.4715150e+03 - -1.5937828e+03 -1.8339186e+03 2.4773912e+03 - -1.5455727e+03 -1.8412241e+03 2.4836633e+03 - -1.4932498e+03 -1.8480382e+03 2.4905243e+03 - -1.4363172e+03 -1.8540966e+03 2.4982152e+03 - -1.3740754e+03 -1.8591011e+03 2.5070312e+03 - -1.3055363e+03 -1.8627170e+03 2.5173243e+03 - -1.2293025e+03 -1.8645768e+03 2.5294969e+03 - -1.1434067e+03 -1.8642965e+03 2.5439727e+03 - -1.0451190e+03 -1.8615227e+03 2.5611217e+03 - -9.3078307e+02 -1.8560337e+03 2.5810976e+03 - -7.9586054e+02 -1.8479326e+03 2.6035344e+03 - -6.3559530e+02 -1.8379462e+03 2.6270798e+03 - -4.4691434e+02 -1.8277290e+03 2.6489290e+03 - -2.3174970e+02 -1.8198253e+03 2.6649069e+03 - -2.4067136e-09 -1.8168148e+03 2.6708380e+03 - 2.3174970e+02 -1.8198253e+03 2.6649069e+03 - 4.4691434e+02 -1.8277290e+03 2.6489290e+03 - 6.3559530e+02 -1.8379462e+03 2.6270798e+03 - 7.9586054e+02 -1.8479326e+03 2.6035344e+03 - 9.3078307e+02 -1.8560337e+03 2.5810976e+03 - 1.0451190e+03 -1.8615227e+03 2.5611217e+03 - 1.1434067e+03 -1.8642965e+03 2.5439727e+03 - 1.2293025e+03 -1.8645768e+03 2.5294969e+03 - 1.3055363e+03 -1.8627170e+03 2.5173243e+03 - 1.3740754e+03 -1.8591011e+03 2.5070312e+03 - 1.4363172e+03 -1.8540966e+03 2.4982152e+03 - 1.4932498e+03 -1.8480382e+03 2.4905243e+03 - 1.5455727e+03 -1.8412241e+03 2.4836633e+03 - 1.5937828e+03 -1.8339186e+03 2.4773912e+03 - 1.6382351e+03 -1.8263559e+03 2.4715150e+03 - 1.6791846e+03 -1.8187447e+03 2.4658835e+03 - 1.7168163e+03 -1.8112719e+03 2.4603802e+03 - 1.7512660e+03 -1.8041056e+03 2.4549186e+03 - 1.7826361e+03 -1.7973977e+03 2.4494373e+03 - 1.8110060e+03 -1.7912850e+03 2.4438963e+03 - 1.8364413e+03 -1.7858911e+03 2.4382740e+03 - 1.8590001e+03 -1.7813259e+03 2.4325645e+03 - 1.8787376e+03 -1.7776868e+03 2.4267755e+03 - 1.8957106e+03 -1.7750575e+03 2.4209265e+03 - 1.9099807e+03 -1.7735082e+03 2.4150469e+03 - 1.9216172e+03 -1.7730945e+03 2.4091747e+03 - 1.9306987e+03 -1.7738565e+03 2.4033549e+03 - 1.9373156e+03 -1.7758180e+03 2.3976384e+03 - 1.9415714e+03 -1.7789854e+03 2.3920803e+03 - 1.9435831e+03 -1.7833465e+03 2.3867386e+03 - 1.9434825e+03 -1.7888697e+03 2.3816729e+03 - 1.9414159e+03 -1.7955038e+03 2.3769429e+03 - 1.9375438e+03 -1.8031766e+03 2.3726070e+03 - 1.9320403e+03 -1.8117958e+03 2.3687208e+03 - 1.9250914e+03 -1.8212487e+03 2.3653361e+03 - 1.9168939e+03 -1.8314029e+03 2.3624990e+03 - 1.9076526e+03 -1.8421078e+03 2.3602490e+03 - 1.8975781e+03 -1.8531962e+03 2.3586183e+03 - 1.8868838e+03 -1.8644861e+03 2.3576303e+03 - 1.8757831e+03 -1.8757831e+03 2.3572994e+03 - 1.8644861e+03 -1.8868838e+03 2.3576303e+03 - 1.8531962e+03 -1.8975781e+03 2.3586183e+03 - 1.8421078e+03 -1.9076526e+03 2.3602490e+03 - 1.8314029e+03 -1.9168939e+03 2.3624990e+03 - 1.8212487e+03 -1.9250914e+03 2.3653361e+03 - 1.8117958e+03 -1.9320403e+03 2.3687208e+03 - 1.8031766e+03 -1.9375438e+03 2.3726070e+03 - 1.7955038e+03 -1.9414159e+03 2.3769429e+03 - 1.7888697e+03 -1.9434825e+03 2.3816729e+03 - 1.7833465e+03 -1.9435831e+03 2.3867386e+03 - 1.7789854e+03 -1.9415714e+03 2.3920803e+03 - 1.7758180e+03 -1.9373156e+03 2.3976384e+03 - 1.7738565e+03 -1.9306987e+03 2.4033549e+03 - 1.7730945e+03 -1.9216172e+03 2.4091747e+03 - 1.7735082e+03 -1.9099807e+03 2.4150469e+03 - 1.7750575e+03 -1.8957106e+03 2.4209265e+03 - 1.7776868e+03 -1.8787376e+03 2.4267755e+03 - 1.7813259e+03 -1.8590001e+03 2.4325645e+03 - 1.7858911e+03 -1.8364413e+03 2.4382740e+03 - 1.7912850e+03 -1.8110060e+03 2.4438963e+03 - 1.7973977e+03 -1.7826361e+03 2.4494373e+03 - 1.8041056e+03 -1.7512660e+03 2.4549186e+03 - 1.8112719e+03 -1.7168163e+03 2.4603802e+03 - 1.8187447e+03 -1.6791846e+03 2.4658835e+03 - 1.8263559e+03 -1.6382351e+03 2.4715150e+03 - 1.8339186e+03 -1.5937828e+03 2.4773912e+03 - 1.8412241e+03 -1.5455727e+03 2.4836633e+03 - 1.8480382e+03 -1.4932498e+03 2.4905243e+03 - 1.8540966e+03 -1.4363172e+03 2.4982152e+03 - 1.8591011e+03 -1.3740754e+03 2.5070312e+03 - 1.8627170e+03 -1.3055363e+03 2.5173243e+03 - 1.8645768e+03 -1.2293025e+03 2.5294969e+03 - 1.8642965e+03 -1.1434067e+03 2.5439727e+03 - 1.8615227e+03 -1.0451190e+03 2.5611217e+03 - 1.8560337e+03 -9.3078307e+02 2.5810976e+03 - 1.8479326e+03 -7.9586054e+02 2.6035344e+03 - 1.8379462e+03 -6.3559530e+02 2.6270798e+03 - 1.8277290e+03 -4.4691434e+02 2.6489290e+03 - 1.8198253e+03 -2.3174970e+02 2.6649069e+03 - 1.8168148e+03 0.0000000e+00 2.6708380e+03 - 1.8573556e+03 0.0000000e+00 2.6243015e+03 - 1.8622663e+03 2.5697400e+02 2.6156251e+03 - 1.8747196e+03 4.8933189e+02 2.5931036e+03 - 1.8899172e+03 6.8511759e+02 2.5641558e+03 - 1.9038124e+03 8.4520015e+02 2.5351172e+03 - 1.9143318e+03 9.7633189e+02 2.5093479e+03 - 1.9209300e+03 1.0858163e+03 2.4878854e+03 - 1.9238456e+03 1.1794956e+03 2.4705637e+03 - 1.9236093e+03 1.2615391e+03 2.4567608e+03 - 1.9208043e+03 1.3347895e+03 2.4457658e+03 - 1.9159721e+03 1.4011560e+03 2.4369259e+03 - 1.9095855e+03 1.4619192e+03 2.4296905e+03 - 1.9020489e+03 1.5179419e+03 2.4236129e+03 - 1.8937071e+03 1.5698091e+03 2.4183383e+03 - 1.8848561e+03 1.6179196e+03 2.4135889e+03 - 1.8757521e+03 1.6625469e+03 2.4091491e+03 - 1.8666200e+03 1.7038788e+03 2.4048542e+03 - 1.8576587e+03 1.7420452e+03 2.4005810e+03 - 1.8490460e+03 1.7771367e+03 2.3962397e+03 - 1.8409416e+03 1.8092184e+03 2.3917689e+03 - 1.8334894e+03 1.8383390e+03 2.3871303e+03 - 1.8268189e+03 1.8645382e+03 2.3823055e+03 - 1.8210458e+03 1.8878526e+03 2.3772928e+03 - 1.8162724e+03 1.9083196e+03 2.3721051e+03 - 1.8125875e+03 1.9259810e+03 2.3667676e+03 - 1.8100655e+03 1.9408865e+03 2.3613158e+03 - 1.8087658e+03 1.9530952e+03 2.3557946e+03 - 1.8087320e+03 1.9626787e+03 2.3502560e+03 - 1.8099903e+03 1.9697219e+03 2.3447581e+03 - 1.8125489e+03 1.9743249e+03 2.3393637e+03 - 1.8163963e+03 1.9766038e+03 2.3341382e+03 - 1.8215007e+03 1.9766911e+03 2.3291490e+03 - 1.8278088e+03 1.9747359e+03 2.3244632e+03 - 1.8352457e+03 1.9709034e+03 2.3201464e+03 - 1.8437143e+03 1.9653742e+03 2.3162611e+03 - 1.8530958e+03 1.9583428e+03 2.3128653e+03 - 1.8632503e+03 1.9500155e+03 2.3100109e+03 - 1.8740182e+03 1.9406082e+03 2.3077423e+03 - 1.8852216e+03 1.9303437e+03 2.3060953e+03 - 1.8966672e+03 1.9194481e+03 2.3050963e+03 - 1.9081482e+03 1.9081482e+03 2.3047615e+03 - 1.9194481e+03 1.8966672e+03 2.3050963e+03 - 1.9303437e+03 1.8852216e+03 2.3060953e+03 - 1.9406082e+03 1.8740182e+03 2.3077423e+03 - 1.9500155e+03 1.8632503e+03 2.3100109e+03 - 1.9583428e+03 1.8530958e+03 2.3128653e+03 - 1.9653742e+03 1.8437143e+03 2.3162611e+03 - 1.9709034e+03 1.8352457e+03 2.3201464e+03 - 1.9747359e+03 1.8278088e+03 2.3244632e+03 - 1.9766911e+03 1.8215007e+03 2.3291490e+03 - 1.9766038e+03 1.8163963e+03 2.3341382e+03 - 1.9743249e+03 1.8125489e+03 2.3393637e+03 - 1.9697219e+03 1.8099903e+03 2.3447581e+03 - 1.9626787e+03 1.8087320e+03 2.3502560e+03 - 1.9530952e+03 1.8087658e+03 2.3557946e+03 - 1.9408865e+03 1.8100655e+03 2.3613158e+03 - 1.9259810e+03 1.8125875e+03 2.3667676e+03 - 1.9083196e+03 1.8162724e+03 2.3721051e+03 - 1.8878526e+03 1.8210458e+03 2.3772928e+03 - 1.8645382e+03 1.8268189e+03 2.3823055e+03 - 1.8383390e+03 1.8334894e+03 2.3871303e+03 - 1.8092184e+03 1.8409416e+03 2.3917689e+03 - 1.7771367e+03 1.8490460e+03 2.3962397e+03 - 1.7420452e+03 1.8576587e+03 2.4005810e+03 - 1.7038788e+03 1.8666200e+03 2.4048542e+03 - 1.6625469e+03 1.8757521e+03 2.4091491e+03 - 1.6179196e+03 1.8848561e+03 2.4135889e+03 - 1.5698091e+03 1.8937071e+03 2.4183383e+03 - 1.5179419e+03 1.9020489e+03 2.4236129e+03 - 1.4619192e+03 1.9095855e+03 2.4296905e+03 - 1.4011560e+03 1.9159721e+03 2.4369259e+03 - 1.3347895e+03 1.9208043e+03 2.4457658e+03 - 1.2615391e+03 1.9236093e+03 2.4567608e+03 - 1.1794956e+03 1.9238456e+03 2.4705637e+03 - 1.0858163e+03 1.9209300e+03 2.4878854e+03 - 9.7633189e+02 1.9143318e+03 2.5093479e+03 - 8.4520015e+02 1.9038124e+03 2.5351172e+03 - 6.8511759e+02 1.8899172e+03 2.5641558e+03 - 4.8933189e+02 1.8747196e+03 2.5931036e+03 - 2.5697400e+02 1.8622663e+03 2.6156251e+03 - 2.4067136e-09 1.8573556e+03 2.6243015e+03 - -2.5697400e+02 1.8622663e+03 2.6156251e+03 - -4.8933189e+02 1.8747196e+03 2.5931036e+03 - -6.8511759e+02 1.8899172e+03 2.5641558e+03 - -8.4520015e+02 1.9038124e+03 2.5351172e+03 - -9.7633189e+02 1.9143318e+03 2.5093479e+03 - -1.0858163e+03 1.9209300e+03 2.4878854e+03 - -1.1794956e+03 1.9238456e+03 2.4705637e+03 - -1.2615391e+03 1.9236093e+03 2.4567608e+03 - -1.3347895e+03 1.9208043e+03 2.4457658e+03 - -1.4011560e+03 1.9159721e+03 2.4369259e+03 - -1.4619192e+03 1.9095855e+03 2.4296905e+03 - -1.5179419e+03 1.9020489e+03 2.4236129e+03 - -1.5698091e+03 1.8937071e+03 2.4183383e+03 - -1.6179196e+03 1.8848561e+03 2.4135889e+03 - -1.6625469e+03 1.8757521e+03 2.4091491e+03 - -1.7038788e+03 1.8666200e+03 2.4048542e+03 - -1.7420452e+03 1.8576587e+03 2.4005810e+03 - -1.7771367e+03 1.8490460e+03 2.3962397e+03 - -1.8092184e+03 1.8409416e+03 2.3917689e+03 - -1.8383390e+03 1.8334894e+03 2.3871303e+03 - -1.8645382e+03 1.8268189e+03 2.3823055e+03 - -1.8878526e+03 1.8210458e+03 2.3772928e+03 - -1.9083196e+03 1.8162724e+03 2.3721051e+03 - -1.9259810e+03 1.8125875e+03 2.3667676e+03 - -1.9408865e+03 1.8100655e+03 2.3613158e+03 - -1.9530952e+03 1.8087658e+03 2.3557946e+03 - -1.9626787e+03 1.8087320e+03 2.3502560e+03 - -1.9697219e+03 1.8099903e+03 2.3447581e+03 - -1.9743249e+03 1.8125489e+03 2.3393637e+03 - -1.9766038e+03 1.8163963e+03 2.3341382e+03 - -1.9766911e+03 1.8215007e+03 2.3291490e+03 - -1.9747359e+03 1.8278088e+03 2.3244632e+03 - -1.9709034e+03 1.8352457e+03 2.3201464e+03 - -1.9653742e+03 1.8437143e+03 2.3162611e+03 - -1.9583428e+03 1.8530958e+03 2.3128653e+03 - -1.9500155e+03 1.8632503e+03 2.3100109e+03 - -1.9406082e+03 1.8740182e+03 2.3077423e+03 - -1.9303437e+03 1.8852216e+03 2.3060953e+03 - -1.9194481e+03 1.8966672e+03 2.3050963e+03 - -1.9081482e+03 1.9081482e+03 2.3047615e+03 - -1.8966672e+03 1.9194481e+03 2.3050963e+03 - -1.8852216e+03 1.9303437e+03 2.3060953e+03 - -1.8740182e+03 1.9406082e+03 2.3077423e+03 - -1.8632503e+03 1.9500155e+03 2.3100109e+03 - -1.8530958e+03 1.9583428e+03 2.3128653e+03 - -1.8437143e+03 1.9653742e+03 2.3162611e+03 - -1.8352457e+03 1.9709034e+03 2.3201464e+03 - -1.8278088e+03 1.9747359e+03 2.3244632e+03 - -1.8215007e+03 1.9766911e+03 2.3291490e+03 - -1.8163963e+03 1.9766038e+03 2.3341382e+03 - -1.8125489e+03 1.9743249e+03 2.3393637e+03 - -1.8099903e+03 1.9697219e+03 2.3447581e+03 - -1.8087320e+03 1.9626787e+03 2.3502560e+03 - -1.8087658e+03 1.9530952e+03 2.3557946e+03 - -1.8100655e+03 1.9408865e+03 2.3613158e+03 - -1.8125875e+03 1.9259810e+03 2.3667676e+03 - -1.8162724e+03 1.9083196e+03 2.3721051e+03 - -1.8210458e+03 1.8878526e+03 2.3772928e+03 - -1.8268189e+03 1.8645382e+03 2.3823055e+03 - -1.8334894e+03 1.8383390e+03 2.3871303e+03 - -1.8409416e+03 1.8092184e+03 2.3917689e+03 - -1.8490460e+03 1.7771367e+03 2.3962397e+03 - -1.8576587e+03 1.7420452e+03 2.4005810e+03 - -1.8666200e+03 1.7038788e+03 2.4048542e+03 - -1.8757521e+03 1.6625469e+03 2.4091491e+03 - -1.8848561e+03 1.6179196e+03 2.4135889e+03 - -1.8937071e+03 1.5698091e+03 2.4183383e+03 - -1.9020489e+03 1.5179419e+03 2.4236129e+03 - -1.9095855e+03 1.4619192e+03 2.4296905e+03 - -1.9159721e+03 1.4011560e+03 2.4369259e+03 - -1.9208043e+03 1.3347895e+03 2.4457658e+03 - -1.9236093e+03 1.2615391e+03 2.4567608e+03 - -1.9238456e+03 1.1794956e+03 2.4705637e+03 - -1.9209300e+03 1.0858163e+03 2.4878854e+03 - -1.9143318e+03 9.7633189e+02 2.5093479e+03 - -1.9038124e+03 8.4520015e+02 2.5351172e+03 - -1.8899172e+03 6.8511759e+02 2.5641558e+03 - -1.8747196e+03 4.8933189e+02 2.5931036e+03 - -1.8622663e+03 2.5697400e+02 2.6156251e+03 - -1.8573556e+03 0.0000000e+00 2.6243015e+03 - -1.8622663e+03 -2.5697400e+02 2.6156251e+03 - -1.8747196e+03 -4.8933189e+02 2.5931036e+03 - -1.8899172e+03 -6.8511759e+02 2.5641558e+03 - -1.9038124e+03 -8.4520015e+02 2.5351172e+03 - -1.9143318e+03 -9.7633189e+02 2.5093479e+03 - -1.9209300e+03 -1.0858163e+03 2.4878854e+03 - -1.9238456e+03 -1.1794956e+03 2.4705637e+03 - -1.9236093e+03 -1.2615391e+03 2.4567608e+03 - -1.9208043e+03 -1.3347895e+03 2.4457658e+03 - -1.9159721e+03 -1.4011560e+03 2.4369259e+03 - -1.9095855e+03 -1.4619192e+03 2.4296905e+03 - -1.9020489e+03 -1.5179419e+03 2.4236129e+03 - -1.8937071e+03 -1.5698091e+03 2.4183383e+03 - -1.8848561e+03 -1.6179196e+03 2.4135889e+03 - -1.8757521e+03 -1.6625469e+03 2.4091491e+03 - -1.8666200e+03 -1.7038788e+03 2.4048542e+03 - -1.8576587e+03 -1.7420452e+03 2.4005810e+03 - -1.8490460e+03 -1.7771367e+03 2.3962397e+03 - -1.8409416e+03 -1.8092184e+03 2.3917689e+03 - -1.8334894e+03 -1.8383390e+03 2.3871303e+03 - -1.8268189e+03 -1.8645382e+03 2.3823055e+03 - -1.8210458e+03 -1.8878526e+03 2.3772928e+03 - -1.8162724e+03 -1.9083196e+03 2.3721051e+03 - -1.8125875e+03 -1.9259810e+03 2.3667676e+03 - -1.8100655e+03 -1.9408865e+03 2.3613158e+03 - -1.8087658e+03 -1.9530952e+03 2.3557946e+03 - -1.8087320e+03 -1.9626787e+03 2.3502560e+03 - -1.8099903e+03 -1.9697219e+03 2.3447581e+03 - -1.8125489e+03 -1.9743249e+03 2.3393637e+03 - -1.8163963e+03 -1.9766038e+03 2.3341382e+03 - -1.8215007e+03 -1.9766911e+03 2.3291490e+03 - -1.8278088e+03 -1.9747359e+03 2.3244632e+03 - -1.8352457e+03 -1.9709034e+03 2.3201464e+03 - -1.8437143e+03 -1.9653742e+03 2.3162611e+03 - -1.8530958e+03 -1.9583428e+03 2.3128653e+03 - -1.8632503e+03 -1.9500155e+03 2.3100109e+03 - -1.8740182e+03 -1.9406082e+03 2.3077423e+03 - -1.8852216e+03 -1.9303437e+03 2.3060953e+03 - -1.8966672e+03 -1.9194481e+03 2.3050963e+03 - -1.9081482e+03 -1.9081482e+03 2.3047615e+03 - -1.9194481e+03 -1.8966672e+03 2.3050963e+03 - -1.9303437e+03 -1.8852216e+03 2.3060953e+03 - -1.9406082e+03 -1.8740182e+03 2.3077423e+03 - -1.9500155e+03 -1.8632503e+03 2.3100109e+03 - -1.9583428e+03 -1.8530958e+03 2.3128653e+03 - -1.9653742e+03 -1.8437143e+03 2.3162611e+03 - -1.9709034e+03 -1.8352457e+03 2.3201464e+03 - -1.9747359e+03 -1.8278088e+03 2.3244632e+03 - -1.9766911e+03 -1.8215007e+03 2.3291490e+03 - -1.9766038e+03 -1.8163963e+03 2.3341382e+03 - -1.9743249e+03 -1.8125489e+03 2.3393637e+03 - -1.9697219e+03 -1.8099903e+03 2.3447581e+03 - -1.9626787e+03 -1.8087320e+03 2.3502560e+03 - -1.9530952e+03 -1.8087658e+03 2.3557946e+03 - -1.9408865e+03 -1.8100655e+03 2.3613158e+03 - -1.9259810e+03 -1.8125875e+03 2.3667676e+03 - -1.9083196e+03 -1.8162724e+03 2.3721051e+03 - -1.8878526e+03 -1.8210458e+03 2.3772928e+03 - -1.8645382e+03 -1.8268189e+03 2.3823055e+03 - -1.8383390e+03 -1.8334894e+03 2.3871303e+03 - -1.8092184e+03 -1.8409416e+03 2.3917689e+03 - -1.7771367e+03 -1.8490460e+03 2.3962397e+03 - -1.7420452e+03 -1.8576587e+03 2.4005810e+03 - -1.7038788e+03 -1.8666200e+03 2.4048542e+03 - -1.6625469e+03 -1.8757521e+03 2.4091491e+03 - -1.6179196e+03 -1.8848561e+03 2.4135889e+03 - -1.5698091e+03 -1.8937071e+03 2.4183383e+03 - -1.5179419e+03 -1.9020489e+03 2.4236129e+03 - -1.4619192e+03 -1.9095855e+03 2.4296905e+03 - -1.4011560e+03 -1.9159721e+03 2.4369259e+03 - -1.3347895e+03 -1.9208043e+03 2.4457658e+03 - -1.2615391e+03 -1.9236093e+03 2.4567608e+03 - -1.1794956e+03 -1.9238456e+03 2.4705637e+03 - -1.0858163e+03 -1.9209300e+03 2.4878854e+03 - -9.7633189e+02 -1.9143318e+03 2.5093479e+03 - -8.4520015e+02 -1.9038124e+03 2.5351172e+03 - -6.8511759e+02 -1.8899172e+03 2.5641558e+03 - -4.8933189e+02 -1.8747196e+03 2.5931036e+03 - -2.5697400e+02 -1.8622663e+03 2.6156251e+03 - -2.4067136e-09 -1.8573556e+03 2.6243015e+03 - 2.5697400e+02 -1.8622663e+03 2.6156251e+03 - 4.8933189e+02 -1.8747196e+03 2.5931036e+03 - 6.8511759e+02 -1.8899172e+03 2.5641558e+03 - 8.4520015e+02 -1.9038124e+03 2.5351172e+03 - 9.7633189e+02 -1.9143318e+03 2.5093479e+03 - 1.0858163e+03 -1.9209300e+03 2.4878854e+03 - 1.1794956e+03 -1.9238456e+03 2.4705637e+03 - 1.2615391e+03 -1.9236093e+03 2.4567608e+03 - 1.3347895e+03 -1.9208043e+03 2.4457658e+03 - 1.4011560e+03 -1.9159721e+03 2.4369259e+03 - 1.4619192e+03 -1.9095855e+03 2.4296905e+03 - 1.5179419e+03 -1.9020489e+03 2.4236129e+03 - 1.5698091e+03 -1.8937071e+03 2.4183383e+03 - 1.6179196e+03 -1.8848561e+03 2.4135889e+03 - 1.6625469e+03 -1.8757521e+03 2.4091491e+03 - 1.7038788e+03 -1.8666200e+03 2.4048542e+03 - 1.7420452e+03 -1.8576587e+03 2.4005810e+03 - 1.7771367e+03 -1.8490460e+03 2.3962397e+03 - 1.8092184e+03 -1.8409416e+03 2.3917689e+03 - 1.8383390e+03 -1.8334894e+03 2.3871303e+03 - 1.8645382e+03 -1.8268189e+03 2.3823055e+03 - 1.8878526e+03 -1.8210458e+03 2.3772928e+03 - 1.9083196e+03 -1.8162724e+03 2.3721051e+03 - 1.9259810e+03 -1.8125875e+03 2.3667676e+03 - 1.9408865e+03 -1.8100655e+03 2.3613158e+03 - 1.9530952e+03 -1.8087658e+03 2.3557946e+03 - 1.9626787e+03 -1.8087320e+03 2.3502560e+03 - 1.9697219e+03 -1.8099903e+03 2.3447581e+03 - 1.9743249e+03 -1.8125489e+03 2.3393637e+03 - 1.9766038e+03 -1.8163963e+03 2.3341382e+03 - 1.9766911e+03 -1.8215007e+03 2.3291490e+03 - 1.9747359e+03 -1.8278088e+03 2.3244632e+03 - 1.9709034e+03 -1.8352457e+03 2.3201464e+03 - 1.9653742e+03 -1.8437143e+03 2.3162611e+03 - 1.9583428e+03 -1.8530958e+03 2.3128653e+03 - 1.9500155e+03 -1.8632503e+03 2.3100109e+03 - 1.9406082e+03 -1.8740182e+03 2.3077423e+03 - 1.9303437e+03 -1.8852216e+03 2.3060953e+03 - 1.9194481e+03 -1.8966672e+03 2.3050963e+03 - 1.9081482e+03 -1.9081482e+03 2.3047615e+03 - 1.8966672e+03 -1.9194481e+03 2.3050963e+03 - 1.8852216e+03 -1.9303437e+03 2.3060953e+03 - 1.8740182e+03 -1.9406082e+03 2.3077423e+03 - 1.8632503e+03 -1.9500155e+03 2.3100109e+03 - 1.8530958e+03 -1.9583428e+03 2.3128653e+03 - 1.8437143e+03 -1.9653742e+03 2.3162611e+03 - 1.8352457e+03 -1.9709034e+03 2.3201464e+03 - 1.8278088e+03 -1.9747359e+03 2.3244632e+03 - 1.8215007e+03 -1.9766911e+03 2.3291490e+03 - 1.8163963e+03 -1.9766038e+03 2.3341382e+03 - 1.8125489e+03 -1.9743249e+03 2.3393637e+03 - 1.8099903e+03 -1.9697219e+03 2.3447581e+03 - 1.8087320e+03 -1.9626787e+03 2.3502560e+03 - 1.8087658e+03 -1.9530952e+03 2.3557946e+03 - 1.8100655e+03 -1.9408865e+03 2.3613158e+03 - 1.8125875e+03 -1.9259810e+03 2.3667676e+03 - 1.8162724e+03 -1.9083196e+03 2.3721051e+03 - 1.8210458e+03 -1.8878526e+03 2.3772928e+03 - 1.8268189e+03 -1.8645382e+03 2.3823055e+03 - 1.8334894e+03 -1.8383390e+03 2.3871303e+03 - 1.8409416e+03 -1.8092184e+03 2.3917689e+03 - 1.8490460e+03 -1.7771367e+03 2.3962397e+03 - 1.8576587e+03 -1.7420452e+03 2.4005810e+03 - 1.8666200e+03 -1.7038788e+03 2.4048542e+03 - 1.8757521e+03 -1.6625469e+03 2.4091491e+03 - 1.8848561e+03 -1.6179196e+03 2.4135889e+03 - 1.8937071e+03 -1.5698091e+03 2.4183383e+03 - 1.9020489e+03 -1.5179419e+03 2.4236129e+03 - 1.9095855e+03 -1.4619192e+03 2.4296905e+03 - 1.9159721e+03 -1.4011560e+03 2.4369259e+03 - 1.9208043e+03 -1.3347895e+03 2.4457658e+03 - 1.9236093e+03 -1.2615391e+03 2.4567608e+03 - 1.9238456e+03 -1.1794956e+03 2.4705637e+03 - 1.9209300e+03 -1.0858163e+03 2.4878854e+03 - 1.9143318e+03 -9.7633189e+02 2.5093479e+03 - 1.9038124e+03 -8.4520015e+02 2.5351172e+03 - 1.8899172e+03 -6.8511759e+02 2.5641558e+03 - 1.8747196e+03 -4.8933189e+02 2.5931036e+03 - 1.8622663e+03 -2.5697400e+02 2.6156251e+03 - 1.8573556e+03 2.4067136e-09 2.6243015e+03 - 1.8975702e+03 0.0000000e+00 2.5762669e+03 - 1.9061402e+03 2.9344830e+02 2.5623627e+03 - 1.9265851e+03 5.4654402e+02 2.5284848e+03 - 1.9492585e+03 7.4644826e+02 2.4890407e+03 - 1.9679332e+03 9.0147959e+02 2.4534431e+03 - 1.9806387e+03 1.0247110e+03 2.4248222e+03 - 1.9876098e+03 1.1265745e+03 2.4030330e+03 - 1.9897861e+03 1.2139859e+03 2.3868686e+03 - 1.9881730e+03 1.2912676e+03 2.3750116e+03 - 1.9836447e+03 1.3610906e+03 2.3663311e+03 - 1.9769141e+03 1.4251169e+03 2.3599314e+03 - 1.9685543e+03 1.4843935e+03 2.3551242e+03 - 1.9590282e+03 1.5395881e+03 2.3513867e+03 - 1.9487153e+03 1.5911296e+03 2.3483229e+03 - 1.9379322e+03 1.6392945e+03 2.3456342e+03 - 1.9269482e+03 1.6842601e+03 2.3430959e+03 - 1.9159966e+03 1.7261390e+03 2.3405414e+03 - 1.9052823e+03 1.7650012e+03 2.3378490e+03 - 1.8949877e+03 1.8008895e+03 2.3349335e+03 - 1.8852763e+03 1.8338302e+03 2.3317391e+03 - 1.8762956e+03 1.8638402e+03 2.3282344e+03 - 1.8681785e+03 1.8909334e+03 2.3244083e+03 - 1.8610444e+03 1.9151246e+03 2.3202669e+03 - 1.8549988e+03 1.9364332e+03 2.3158311e+03 - 1.8501338e+03 1.9548864e+03 2.3111345e+03 - 1.8465271e+03 1.9705215e+03 2.3062212e+03 - 1.8442411e+03 1.9833883e+03 2.3011449e+03 - 1.8433217e+03 1.9935508e+03 2.2959666e+03 - 1.8437973e+03 2.0010889e+03 2.2907534e+03 - 1.8456771e+03 2.0060994e+03 2.2855770e+03 - 1.8489498e+03 2.0086976e+03 2.2805122e+03 - 1.8535828e+03 2.0090171e+03 2.2756351e+03 - 1.8595206e+03 2.0072101e+03 2.2710217e+03 - 1.8666847e+03 2.0034472e+03 2.2667459e+03 - 1.8749728e+03 1.9979161e+03 2.2628783e+03 - 1.8842594e+03 1.9908201e+03 2.2594839e+03 - 1.8943963e+03 1.9823762e+03 2.2566211e+03 - 1.9052138e+03 1.9728124e+03 2.2543399e+03 - 1.9165229e+03 1.9623644e+03 2.2526807e+03 - 1.9281175e+03 1.9512726e+03 2.2516731e+03 - 1.9397777e+03 1.9397777e+03 2.2513352e+03 - 1.9512726e+03 1.9281175e+03 2.2516731e+03 - 1.9623644e+03 1.9165229e+03 2.2526807e+03 - 1.9728124e+03 1.9052138e+03 2.2543399e+03 - 1.9823762e+03 1.8943963e+03 2.2566211e+03 - 1.9908201e+03 1.8842594e+03 2.2594839e+03 - 1.9979161e+03 1.8749728e+03 2.2628783e+03 - 2.0034472e+03 1.8666847e+03 2.2667459e+03 - 2.0072101e+03 1.8595206e+03 2.2710217e+03 - 2.0090171e+03 1.8535828e+03 2.2756351e+03 - 2.0086976e+03 1.8489498e+03 2.2805122e+03 - 2.0060994e+03 1.8456771e+03 2.2855770e+03 - 2.0010889e+03 1.8437973e+03 2.2907534e+03 - 1.9935508e+03 1.8433217e+03 2.2959666e+03 - 1.9833883e+03 1.8442411e+03 2.3011449e+03 - 1.9705215e+03 1.8465271e+03 2.3062212e+03 - 1.9548864e+03 1.8501338e+03 2.3111345e+03 - 1.9364332e+03 1.8549988e+03 2.3158311e+03 - 1.9151246e+03 1.8610444e+03 2.3202669e+03 - 1.8909334e+03 1.8681785e+03 2.3244083e+03 - 1.8638402e+03 1.8762956e+03 2.3282344e+03 - 1.8338302e+03 1.8852763e+03 2.3317391e+03 - 1.8008895e+03 1.8949877e+03 2.3349335e+03 - 1.7650012e+03 1.9052823e+03 2.3378490e+03 - 1.7261390e+03 1.9159966e+03 2.3405414e+03 - 1.6842601e+03 1.9269482e+03 2.3430959e+03 - 1.6392945e+03 1.9379322e+03 2.3456342e+03 - 1.5911296e+03 1.9487153e+03 2.3483229e+03 - 1.5395881e+03 1.9590282e+03 2.3513867e+03 - 1.4843935e+03 1.9685543e+03 2.3551242e+03 - 1.4251169e+03 1.9769141e+03 2.3599314e+03 - 1.3610906e+03 1.9836447e+03 2.3663311e+03 - 1.2912676e+03 1.9881730e+03 2.3750116e+03 - 1.2139859e+03 1.9897861e+03 2.3868686e+03 - 1.1265745e+03 1.9876098e+03 2.4030330e+03 - 1.0247110e+03 1.9806387e+03 2.4248222e+03 - 9.0147959e+02 1.9679332e+03 2.4534431e+03 - 7.4644826e+02 1.9492585e+03 2.4890407e+03 - 5.4654402e+02 1.9265851e+03 2.5284848e+03 - 2.9344830e+02 1.9061402e+03 2.5623627e+03 - 2.4067136e-09 1.8975702e+03 2.5762669e+03 - -2.9344830e+02 1.9061402e+03 2.5623627e+03 - -5.4654402e+02 1.9265851e+03 2.5284848e+03 - -7.4644826e+02 1.9492585e+03 2.4890407e+03 - -9.0147959e+02 1.9679332e+03 2.4534431e+03 - -1.0247110e+03 1.9806387e+03 2.4248222e+03 - -1.1265745e+03 1.9876098e+03 2.4030330e+03 - -1.2139859e+03 1.9897861e+03 2.3868686e+03 - -1.2912676e+03 1.9881730e+03 2.3750116e+03 - -1.3610906e+03 1.9836447e+03 2.3663311e+03 - -1.4251169e+03 1.9769141e+03 2.3599314e+03 - -1.4843935e+03 1.9685543e+03 2.3551242e+03 - -1.5395881e+03 1.9590282e+03 2.3513867e+03 - -1.5911296e+03 1.9487153e+03 2.3483229e+03 - -1.6392945e+03 1.9379322e+03 2.3456342e+03 - -1.6842601e+03 1.9269482e+03 2.3430959e+03 - -1.7261390e+03 1.9159966e+03 2.3405414e+03 - -1.7650012e+03 1.9052823e+03 2.3378490e+03 - -1.8008895e+03 1.8949877e+03 2.3349335e+03 - -1.8338302e+03 1.8852763e+03 2.3317391e+03 - -1.8638402e+03 1.8762956e+03 2.3282344e+03 - -1.8909334e+03 1.8681785e+03 2.3244083e+03 - -1.9151246e+03 1.8610444e+03 2.3202669e+03 - -1.9364332e+03 1.8549988e+03 2.3158311e+03 - -1.9548864e+03 1.8501338e+03 2.3111345e+03 - -1.9705215e+03 1.8465271e+03 2.3062212e+03 - -1.9833883e+03 1.8442411e+03 2.3011449e+03 - -1.9935508e+03 1.8433217e+03 2.2959666e+03 - -2.0010889e+03 1.8437973e+03 2.2907534e+03 - -2.0060994e+03 1.8456771e+03 2.2855770e+03 - -2.0086976e+03 1.8489498e+03 2.2805122e+03 - -2.0090171e+03 1.8535828e+03 2.2756351e+03 - -2.0072101e+03 1.8595206e+03 2.2710217e+03 - -2.0034472e+03 1.8666847e+03 2.2667459e+03 - -1.9979161e+03 1.8749728e+03 2.2628783e+03 - -1.9908201e+03 1.8842594e+03 2.2594839e+03 - -1.9823762e+03 1.8943963e+03 2.2566211e+03 - -1.9728124e+03 1.9052138e+03 2.2543399e+03 - -1.9623644e+03 1.9165229e+03 2.2526807e+03 - -1.9512726e+03 1.9281175e+03 2.2516731e+03 - -1.9397777e+03 1.9397777e+03 2.2513352e+03 - -1.9281175e+03 1.9512726e+03 2.2516731e+03 - -1.9165229e+03 1.9623644e+03 2.2526807e+03 - -1.9052138e+03 1.9728124e+03 2.2543399e+03 - -1.8943963e+03 1.9823762e+03 2.2566211e+03 - -1.8842594e+03 1.9908201e+03 2.2594839e+03 - -1.8749728e+03 1.9979161e+03 2.2628783e+03 - -1.8666847e+03 2.0034472e+03 2.2667459e+03 - -1.8595206e+03 2.0072101e+03 2.2710217e+03 - -1.8535828e+03 2.0090171e+03 2.2756351e+03 - -1.8489498e+03 2.0086976e+03 2.2805122e+03 - -1.8456771e+03 2.0060994e+03 2.2855770e+03 - -1.8437973e+03 2.0010889e+03 2.2907534e+03 - -1.8433217e+03 1.9935508e+03 2.2959666e+03 - -1.8442411e+03 1.9833883e+03 2.3011449e+03 - -1.8465271e+03 1.9705215e+03 2.3062212e+03 - -1.8501338e+03 1.9548864e+03 2.3111345e+03 - -1.8549988e+03 1.9364332e+03 2.3158311e+03 - -1.8610444e+03 1.9151246e+03 2.3202669e+03 - -1.8681785e+03 1.8909334e+03 2.3244083e+03 - -1.8762956e+03 1.8638402e+03 2.3282344e+03 - -1.8852763e+03 1.8338302e+03 2.3317391e+03 - -1.8949877e+03 1.8008895e+03 2.3349335e+03 - -1.9052823e+03 1.7650012e+03 2.3378490e+03 - -1.9159966e+03 1.7261390e+03 2.3405414e+03 - -1.9269482e+03 1.6842601e+03 2.3430959e+03 - -1.9379322e+03 1.6392945e+03 2.3456342e+03 - -1.9487153e+03 1.5911296e+03 2.3483229e+03 - -1.9590282e+03 1.5395881e+03 2.3513867e+03 - -1.9685543e+03 1.4843935e+03 2.3551242e+03 - -1.9769141e+03 1.4251169e+03 2.3599314e+03 - -1.9836447e+03 1.3610906e+03 2.3663311e+03 - -1.9881730e+03 1.2912676e+03 2.3750116e+03 - -1.9897861e+03 1.2139859e+03 2.3868686e+03 - -1.9876098e+03 1.1265745e+03 2.4030330e+03 - -1.9806387e+03 1.0247110e+03 2.4248222e+03 - -1.9679332e+03 9.0147959e+02 2.4534431e+03 - -1.9492585e+03 7.4644826e+02 2.4890407e+03 - -1.9265851e+03 5.4654402e+02 2.5284848e+03 - -1.9061402e+03 2.9344830e+02 2.5623627e+03 - -1.8975702e+03 0.0000000e+00 2.5762669e+03 - -1.9061402e+03 -2.9344830e+02 2.5623627e+03 - -1.9265851e+03 -5.4654402e+02 2.5284848e+03 - -1.9492585e+03 -7.4644826e+02 2.4890407e+03 - -1.9679332e+03 -9.0147959e+02 2.4534431e+03 - -1.9806387e+03 -1.0247110e+03 2.4248222e+03 - -1.9876098e+03 -1.1265745e+03 2.4030330e+03 - -1.9897861e+03 -1.2139859e+03 2.3868686e+03 - -1.9881730e+03 -1.2912676e+03 2.3750116e+03 - -1.9836447e+03 -1.3610906e+03 2.3663311e+03 - -1.9769141e+03 -1.4251169e+03 2.3599314e+03 - -1.9685543e+03 -1.4843935e+03 2.3551242e+03 - -1.9590282e+03 -1.5395881e+03 2.3513867e+03 - -1.9487153e+03 -1.5911296e+03 2.3483229e+03 - -1.9379322e+03 -1.6392945e+03 2.3456342e+03 - -1.9269482e+03 -1.6842601e+03 2.3430959e+03 - -1.9159966e+03 -1.7261390e+03 2.3405414e+03 - -1.9052823e+03 -1.7650012e+03 2.3378490e+03 - -1.8949877e+03 -1.8008895e+03 2.3349335e+03 - -1.8852763e+03 -1.8338302e+03 2.3317391e+03 - -1.8762956e+03 -1.8638402e+03 2.3282344e+03 - -1.8681785e+03 -1.8909334e+03 2.3244083e+03 - -1.8610444e+03 -1.9151246e+03 2.3202669e+03 - -1.8549988e+03 -1.9364332e+03 2.3158311e+03 - -1.8501338e+03 -1.9548864e+03 2.3111345e+03 - -1.8465271e+03 -1.9705215e+03 2.3062212e+03 - -1.8442411e+03 -1.9833883e+03 2.3011449e+03 - -1.8433217e+03 -1.9935508e+03 2.2959666e+03 - -1.8437973e+03 -2.0010889e+03 2.2907534e+03 - -1.8456771e+03 -2.0060994e+03 2.2855770e+03 - -1.8489498e+03 -2.0086976e+03 2.2805122e+03 - -1.8535828e+03 -2.0090171e+03 2.2756351e+03 - -1.8595206e+03 -2.0072101e+03 2.2710217e+03 - -1.8666847e+03 -2.0034472e+03 2.2667459e+03 - -1.8749728e+03 -1.9979161e+03 2.2628783e+03 - -1.8842594e+03 -1.9908201e+03 2.2594839e+03 - -1.8943963e+03 -1.9823762e+03 2.2566211e+03 - -1.9052138e+03 -1.9728124e+03 2.2543399e+03 - -1.9165229e+03 -1.9623644e+03 2.2526807e+03 - -1.9281175e+03 -1.9512726e+03 2.2516731e+03 - -1.9397777e+03 -1.9397777e+03 2.2513352e+03 - -1.9512726e+03 -1.9281175e+03 2.2516731e+03 - -1.9623644e+03 -1.9165229e+03 2.2526807e+03 - -1.9728124e+03 -1.9052138e+03 2.2543399e+03 - -1.9823762e+03 -1.8943963e+03 2.2566211e+03 - -1.9908201e+03 -1.8842594e+03 2.2594839e+03 - -1.9979161e+03 -1.8749728e+03 2.2628783e+03 - -2.0034472e+03 -1.8666847e+03 2.2667459e+03 - -2.0072101e+03 -1.8595206e+03 2.2710217e+03 - -2.0090171e+03 -1.8535828e+03 2.2756351e+03 - -2.0086976e+03 -1.8489498e+03 2.2805122e+03 - -2.0060994e+03 -1.8456771e+03 2.2855770e+03 - -2.0010889e+03 -1.8437973e+03 2.2907534e+03 - -1.9935508e+03 -1.8433217e+03 2.2959666e+03 - -1.9833883e+03 -1.8442411e+03 2.3011449e+03 - -1.9705215e+03 -1.8465271e+03 2.3062212e+03 - -1.9548864e+03 -1.8501338e+03 2.3111345e+03 - -1.9364332e+03 -1.8549988e+03 2.3158311e+03 - -1.9151246e+03 -1.8610444e+03 2.3202669e+03 - -1.8909334e+03 -1.8681785e+03 2.3244083e+03 - -1.8638402e+03 -1.8762956e+03 2.3282344e+03 - -1.8338302e+03 -1.8852763e+03 2.3317391e+03 - -1.8008895e+03 -1.8949877e+03 2.3349335e+03 - -1.7650012e+03 -1.9052823e+03 2.3378490e+03 - -1.7261390e+03 -1.9159966e+03 2.3405414e+03 - -1.6842601e+03 -1.9269482e+03 2.3430959e+03 - -1.6392945e+03 -1.9379322e+03 2.3456342e+03 - -1.5911296e+03 -1.9487153e+03 2.3483229e+03 - -1.5395881e+03 -1.9590282e+03 2.3513867e+03 - -1.4843935e+03 -1.9685543e+03 2.3551242e+03 - -1.4251169e+03 -1.9769141e+03 2.3599314e+03 - -1.3610906e+03 -1.9836447e+03 2.3663311e+03 - -1.2912676e+03 -1.9881730e+03 2.3750116e+03 - -1.2139859e+03 -1.9897861e+03 2.3868686e+03 - -1.1265745e+03 -1.9876098e+03 2.4030330e+03 - -1.0247110e+03 -1.9806387e+03 2.4248222e+03 - -9.0147959e+02 -1.9679332e+03 2.4534431e+03 - -7.4644826e+02 -1.9492585e+03 2.4890407e+03 - -5.4654402e+02 -1.9265851e+03 2.5284848e+03 - -2.9344830e+02 -1.9061402e+03 2.5623627e+03 - -2.4067136e-09 -1.8975702e+03 2.5762669e+03 - 2.9344830e+02 -1.9061402e+03 2.5623627e+03 - 5.4654402e+02 -1.9265851e+03 2.5284848e+03 - 7.4644826e+02 -1.9492585e+03 2.4890407e+03 - 9.0147959e+02 -1.9679332e+03 2.4534431e+03 - 1.0247110e+03 -1.9806387e+03 2.4248222e+03 - 1.1265745e+03 -1.9876098e+03 2.4030330e+03 - 1.2139859e+03 -1.9897861e+03 2.3868686e+03 - 1.2912676e+03 -1.9881730e+03 2.3750116e+03 - 1.3610906e+03 -1.9836447e+03 2.3663311e+03 - 1.4251169e+03 -1.9769141e+03 2.3599314e+03 - 1.4843935e+03 -1.9685543e+03 2.3551242e+03 - 1.5395881e+03 -1.9590282e+03 2.3513867e+03 - 1.5911296e+03 -1.9487153e+03 2.3483229e+03 - 1.6392945e+03 -1.9379322e+03 2.3456342e+03 - 1.6842601e+03 -1.9269482e+03 2.3430959e+03 - 1.7261390e+03 -1.9159966e+03 2.3405414e+03 - 1.7650012e+03 -1.9052823e+03 2.3378490e+03 - 1.8008895e+03 -1.8949877e+03 2.3349335e+03 - 1.8338302e+03 -1.8852763e+03 2.3317391e+03 - 1.8638402e+03 -1.8762956e+03 2.3282344e+03 - 1.8909334e+03 -1.8681785e+03 2.3244083e+03 - 1.9151246e+03 -1.8610444e+03 2.3202669e+03 - 1.9364332e+03 -1.8549988e+03 2.3158311e+03 - 1.9548864e+03 -1.8501338e+03 2.3111345e+03 - 1.9705215e+03 -1.8465271e+03 2.3062212e+03 - 1.9833883e+03 -1.8442411e+03 2.3011449e+03 - 1.9935508e+03 -1.8433217e+03 2.2959666e+03 - 2.0010889e+03 -1.8437973e+03 2.2907534e+03 - 2.0060994e+03 -1.8456771e+03 2.2855770e+03 - 2.0086976e+03 -1.8489498e+03 2.2805122e+03 - 2.0090171e+03 -1.8535828e+03 2.2756351e+03 - 2.0072101e+03 -1.8595206e+03 2.2710217e+03 - 2.0034472e+03 -1.8666847e+03 2.2667459e+03 - 1.9979161e+03 -1.8749728e+03 2.2628783e+03 - 1.9908201e+03 -1.8842594e+03 2.2594839e+03 - 1.9823762e+03 -1.8943963e+03 2.2566211e+03 - 1.9728124e+03 -1.9052138e+03 2.2543399e+03 - 1.9623644e+03 -1.9165229e+03 2.2526807e+03 - 1.9512726e+03 -1.9281175e+03 2.2516731e+03 - 1.9397777e+03 -1.9397777e+03 2.2513352e+03 - 1.9281175e+03 -1.9512726e+03 2.2516731e+03 - 1.9165229e+03 -1.9623644e+03 2.2526807e+03 - 1.9052138e+03 -1.9728124e+03 2.2543399e+03 - 1.8943963e+03 -1.9823762e+03 2.2566211e+03 - 1.8842594e+03 -1.9908201e+03 2.2594839e+03 - 1.8749728e+03 -1.9979161e+03 2.2628783e+03 - 1.8666847e+03 -2.0034472e+03 2.2667459e+03 - 1.8595206e+03 -2.0072101e+03 2.2710217e+03 - 1.8535828e+03 -2.0090171e+03 2.2756351e+03 - 1.8489498e+03 -2.0086976e+03 2.2805122e+03 - 1.8456771e+03 -2.0060994e+03 2.2855770e+03 - 1.8437973e+03 -2.0010889e+03 2.2907534e+03 - 1.8433217e+03 -1.9935508e+03 2.2959666e+03 - 1.8442411e+03 -1.9833883e+03 2.3011449e+03 - 1.8465271e+03 -1.9705215e+03 2.3062212e+03 - 1.8501338e+03 -1.9548864e+03 2.3111345e+03 - 1.8549988e+03 -1.9364332e+03 2.3158311e+03 - 1.8610444e+03 -1.9151246e+03 2.3202669e+03 - 1.8681785e+03 -1.8909334e+03 2.3244083e+03 - 1.8762956e+03 -1.8638402e+03 2.3282344e+03 - 1.8852763e+03 -1.8338302e+03 2.3317391e+03 - 1.8949877e+03 -1.8008895e+03 2.3349335e+03 - 1.9052823e+03 -1.7650012e+03 2.3378490e+03 - 1.9159966e+03 -1.7261390e+03 2.3405414e+03 - 1.9269482e+03 -1.6842601e+03 2.3430959e+03 - 1.9379322e+03 -1.6392945e+03 2.3456342e+03 - 1.9487153e+03 -1.5911296e+03 2.3483229e+03 - 1.9590282e+03 -1.5395881e+03 2.3513867e+03 - 1.9685543e+03 -1.4843935e+03 2.3551242e+03 - 1.9769141e+03 -1.4251169e+03 2.3599314e+03 - 1.9836447e+03 -1.3610906e+03 2.3663311e+03 - 1.9881730e+03 -1.2912676e+03 2.3750116e+03 - 1.9897861e+03 -1.2139859e+03 2.3868686e+03 - 1.9876098e+03 -1.1265745e+03 2.4030330e+03 - 1.9806387e+03 -1.0247110e+03 2.4248222e+03 - 1.9679332e+03 -9.0147959e+02 2.4534431e+03 - 1.9492585e+03 -7.4644826e+02 2.4890407e+03 - 1.9265851e+03 -5.4654402e+02 2.5284848e+03 - 1.9061402e+03 -2.9344830e+02 2.5623627e+03 - 1.8975702e+03 2.4067136e-09 2.5762669e+03 - 1.9374258e+03 0.0000000e+00 2.5267162e+03 - 1.9542683e+03 3.5208682e+02 2.5010734e+03 - 1.9898425e+03 6.2768873e+02 2.4458607e+03 - 2.0230791e+03 8.2243318e+02 2.3917706e+03 - 2.0461790e+03 9.6353969e+02 2.3503296e+03 - 2.0593581e+03 1.0733033e+03 2.3214382e+03 - 2.0647766e+03 1.1646177e+03 2.3021484e+03 - 2.0644817e+03 1.2444131e+03 2.2896540e+03 - 2.0600401e+03 1.3164363e+03 2.2818342e+03 - 2.0525965e+03 1.3827703e+03 2.2771763e+03 - 2.0429900e+03 1.4446070e+03 2.2746115e+03 - 2.0318496e+03 1.5026436e+03 2.2733799e+03 - 2.0196603e+03 1.5572926e+03 2.2729354e+03 - 2.0068077e+03 1.6087969e+03 2.2728816e+03 - 1.9936077e+03 1.6572958e+03 2.2729296e+03 - 1.9803263e+03 1.7028641e+03 2.2728690e+03 - 1.9671926e+03 1.7455364e+03 2.2725486e+03 - 1.9544079e+03 1.7853226e+03 2.2718621e+03 - 1.9421517e+03 1.8222181e+03 2.2707393e+03 - 1.9305856e+03 1.8562114e+03 2.2691387e+03 - 1.9198561e+03 1.8872888e+03 2.2670422e+03 - 1.9100958e+03 1.9154391e+03 2.2644517e+03 - 1.9014246e+03 1.9406564e+03 2.2613857e+03 - 1.8939492e+03 1.9629431e+03 2.2578772e+03 - 1.8877631e+03 1.9823122e+03 2.2539715e+03 - 1.8829454e+03 1.9987895e+03 2.2497244e+03 - 1.8795603e+03 2.0124156e+03 2.2452008e+03 - 1.8776553e+03 2.0232475e+03 2.2404730e+03 - 1.8772596e+03 2.0313602e+03 2.2356193e+03 - 1.8783830e+03 2.0368482e+03 2.2307225e+03 - 1.8810138e+03 2.0398260e+03 2.2258681e+03 - 1.8851177e+03 2.0404286e+03 2.2211430e+03 - 1.8906367e+03 2.0388123e+03 2.2166332e+03 - 1.8974879e+03 2.0351533e+03 2.2124226e+03 - 1.9055633e+03 2.0296472e+03 2.2085907e+03 - 1.9147297e+03 2.0225071e+03 2.2052111e+03 - 1.9248298e+03 2.0139617e+03 2.2023495e+03 - 1.9356830e+03 2.0042519e+03 2.2000624e+03 - 1.9470880e+03 1.9936277e+03 2.1983952e+03 - 1.9588250e+03 1.9823447e+03 2.1973812e+03 - 1.9706593e+03 1.9706593e+03 2.1970409e+03 - 1.9823447e+03 1.9588250e+03 2.1973812e+03 - 1.9936277e+03 1.9470880e+03 2.1983952e+03 - 2.0042519e+03 1.9356830e+03 2.2000624e+03 - 2.0139617e+03 1.9248298e+03 2.2023495e+03 - 2.0225071e+03 1.9147297e+03 2.2052111e+03 - 2.0296472e+03 1.9055633e+03 2.2085907e+03 - 2.0351533e+03 1.8974879e+03 2.2124226e+03 - 2.0388123e+03 1.8906367e+03 2.2166332e+03 - 2.0404286e+03 1.8851177e+03 2.2211430e+03 - 2.0398260e+03 1.8810138e+03 2.2258681e+03 - 2.0368482e+03 1.8783830e+03 2.2307225e+03 - 2.0313602e+03 1.8772596e+03 2.2356193e+03 - 2.0232475e+03 1.8776553e+03 2.2404730e+03 - 2.0124156e+03 1.8795603e+03 2.2452008e+03 - 1.9987895e+03 1.8829454e+03 2.2497244e+03 - 1.9823122e+03 1.8877631e+03 2.2539715e+03 - 1.9629431e+03 1.8939492e+03 2.2578772e+03 - 1.9406564e+03 1.9014246e+03 2.2613857e+03 - 1.9154391e+03 1.9100958e+03 2.2644517e+03 - 1.8872888e+03 1.9198561e+03 2.2670422e+03 - 1.8562114e+03 1.9305856e+03 2.2691387e+03 - 1.8222181e+03 1.9421517e+03 2.2707393e+03 - 1.7853226e+03 1.9544079e+03 2.2718621e+03 - 1.7455364e+03 1.9671926e+03 2.2725486e+03 - 1.7028641e+03 1.9803263e+03 2.2728690e+03 - 1.6572958e+03 1.9936077e+03 2.2729296e+03 - 1.6087969e+03 2.0068077e+03 2.2728816e+03 - 1.5572926e+03 2.0196603e+03 2.2729354e+03 - 1.5026436e+03 2.0318496e+03 2.2733799e+03 - 1.4446070e+03 2.0429900e+03 2.2746115e+03 - 1.3827703e+03 2.0525965e+03 2.2771763e+03 - 1.3164363e+03 2.0600401e+03 2.2818342e+03 - 1.2444131e+03 2.0644817e+03 2.2896540e+03 - 1.1646177e+03 2.0647766e+03 2.3021484e+03 - 1.0733033e+03 2.0593581e+03 2.3214382e+03 - 9.6353969e+02 2.0461790e+03 2.3503296e+03 - 8.2243318e+02 2.0230791e+03 2.3917706e+03 - 6.2768873e+02 1.9898425e+03 2.4458607e+03 - 3.5208682e+02 1.9542683e+03 2.5010734e+03 - -4.8134273e-09 1.9374258e+03 2.5267162e+03 - -3.5208682e+02 1.9542683e+03 2.5010734e+03 - -6.2768873e+02 1.9898425e+03 2.4458607e+03 - -8.2243318e+02 2.0230791e+03 2.3917706e+03 - -9.6353969e+02 2.0461790e+03 2.3503296e+03 - -1.0733033e+03 2.0593581e+03 2.3214382e+03 - -1.1646177e+03 2.0647766e+03 2.3021484e+03 - -1.2444131e+03 2.0644817e+03 2.2896540e+03 - -1.3164363e+03 2.0600401e+03 2.2818342e+03 - -1.3827703e+03 2.0525965e+03 2.2771763e+03 - -1.4446070e+03 2.0429900e+03 2.2746115e+03 - -1.5026436e+03 2.0318496e+03 2.2733799e+03 - -1.5572926e+03 2.0196603e+03 2.2729354e+03 - -1.6087969e+03 2.0068077e+03 2.2728816e+03 - -1.6572958e+03 1.9936077e+03 2.2729296e+03 - -1.7028641e+03 1.9803263e+03 2.2728690e+03 - -1.7455364e+03 1.9671926e+03 2.2725486e+03 - -1.7853226e+03 1.9544079e+03 2.2718621e+03 - -1.8222181e+03 1.9421517e+03 2.2707393e+03 - -1.8562114e+03 1.9305856e+03 2.2691387e+03 - -1.8872888e+03 1.9198561e+03 2.2670422e+03 - -1.9154391e+03 1.9100958e+03 2.2644517e+03 - -1.9406564e+03 1.9014246e+03 2.2613857e+03 - -1.9629431e+03 1.8939492e+03 2.2578772e+03 - -1.9823122e+03 1.8877631e+03 2.2539715e+03 - -1.9987895e+03 1.8829454e+03 2.2497244e+03 - -2.0124156e+03 1.8795603e+03 2.2452008e+03 - -2.0232475e+03 1.8776553e+03 2.2404730e+03 - -2.0313602e+03 1.8772596e+03 2.2356193e+03 - -2.0368482e+03 1.8783830e+03 2.2307225e+03 - -2.0398260e+03 1.8810138e+03 2.2258681e+03 - -2.0404286e+03 1.8851177e+03 2.2211430e+03 - -2.0388123e+03 1.8906367e+03 2.2166332e+03 - -2.0351533e+03 1.8974879e+03 2.2124226e+03 - -2.0296472e+03 1.9055633e+03 2.2085907e+03 - -2.0225071e+03 1.9147297e+03 2.2052111e+03 - -2.0139617e+03 1.9248298e+03 2.2023495e+03 - -2.0042519e+03 1.9356830e+03 2.2000624e+03 - -1.9936277e+03 1.9470880e+03 2.1983952e+03 - -1.9823447e+03 1.9588250e+03 2.1973812e+03 - -1.9706593e+03 1.9706593e+03 2.1970409e+03 - -1.9588250e+03 1.9823447e+03 2.1973812e+03 - -1.9470880e+03 1.9936277e+03 2.1983952e+03 - -1.9356830e+03 2.0042519e+03 2.2000624e+03 - -1.9248298e+03 2.0139617e+03 2.2023495e+03 - -1.9147297e+03 2.0225071e+03 2.2052111e+03 - -1.9055633e+03 2.0296472e+03 2.2085907e+03 - -1.8974879e+03 2.0351533e+03 2.2124226e+03 - -1.8906367e+03 2.0388123e+03 2.2166332e+03 - -1.8851177e+03 2.0404286e+03 2.2211430e+03 - -1.8810138e+03 2.0398260e+03 2.2258681e+03 - -1.8783830e+03 2.0368482e+03 2.2307225e+03 - -1.8772596e+03 2.0313602e+03 2.2356193e+03 - -1.8776553e+03 2.0232475e+03 2.2404730e+03 - -1.8795603e+03 2.0124156e+03 2.2452008e+03 - -1.8829454e+03 1.9987895e+03 2.2497244e+03 - -1.8877631e+03 1.9823122e+03 2.2539715e+03 - -1.8939492e+03 1.9629431e+03 2.2578772e+03 - -1.9014246e+03 1.9406564e+03 2.2613857e+03 - -1.9100958e+03 1.9154391e+03 2.2644517e+03 - -1.9198561e+03 1.8872888e+03 2.2670422e+03 - -1.9305856e+03 1.8562114e+03 2.2691387e+03 - -1.9421517e+03 1.8222181e+03 2.2707393e+03 - -1.9544079e+03 1.7853226e+03 2.2718621e+03 - -1.9671926e+03 1.7455364e+03 2.2725486e+03 - -1.9803263e+03 1.7028641e+03 2.2728690e+03 - -1.9936077e+03 1.6572958e+03 2.2729296e+03 - -2.0068077e+03 1.6087969e+03 2.2728816e+03 - -2.0196603e+03 1.5572926e+03 2.2729354e+03 - -2.0318496e+03 1.5026436e+03 2.2733799e+03 - -2.0429900e+03 1.4446070e+03 2.2746115e+03 - -2.0525965e+03 1.3827703e+03 2.2771763e+03 - -2.0600401e+03 1.3164363e+03 2.2818342e+03 - -2.0644817e+03 1.2444131e+03 2.2896540e+03 - -2.0647766e+03 1.1646177e+03 2.3021484e+03 - -2.0593581e+03 1.0733033e+03 2.3214382e+03 - -2.0461790e+03 9.6353969e+02 2.3503296e+03 - -2.0230791e+03 8.2243318e+02 2.3917706e+03 - -1.9898425e+03 6.2768873e+02 2.4458607e+03 - -1.9542683e+03 3.5208682e+02 2.5010734e+03 - -1.9374258e+03 0.0000000e+00 2.5267162e+03 - -1.9542683e+03 -3.5208682e+02 2.5010734e+03 - -1.9898425e+03 -6.2768873e+02 2.4458607e+03 - -2.0230791e+03 -8.2243318e+02 2.3917706e+03 - -2.0461790e+03 -9.6353969e+02 2.3503296e+03 - -2.0593581e+03 -1.0733033e+03 2.3214382e+03 - -2.0647766e+03 -1.1646177e+03 2.3021484e+03 - -2.0644817e+03 -1.2444131e+03 2.2896540e+03 - -2.0600401e+03 -1.3164363e+03 2.2818342e+03 - -2.0525965e+03 -1.3827703e+03 2.2771763e+03 - -2.0429900e+03 -1.4446070e+03 2.2746115e+03 - -2.0318496e+03 -1.5026436e+03 2.2733799e+03 - -2.0196603e+03 -1.5572926e+03 2.2729354e+03 - -2.0068077e+03 -1.6087969e+03 2.2728816e+03 - -1.9936077e+03 -1.6572958e+03 2.2729296e+03 - -1.9803263e+03 -1.7028641e+03 2.2728690e+03 - -1.9671926e+03 -1.7455364e+03 2.2725486e+03 - -1.9544079e+03 -1.7853226e+03 2.2718621e+03 - -1.9421517e+03 -1.8222181e+03 2.2707393e+03 - -1.9305856e+03 -1.8562114e+03 2.2691387e+03 - -1.9198561e+03 -1.8872888e+03 2.2670422e+03 - -1.9100958e+03 -1.9154391e+03 2.2644517e+03 - -1.9014246e+03 -1.9406564e+03 2.2613857e+03 - -1.8939492e+03 -1.9629431e+03 2.2578772e+03 - -1.8877631e+03 -1.9823122e+03 2.2539715e+03 - -1.8829454e+03 -1.9987895e+03 2.2497244e+03 - -1.8795603e+03 -2.0124156e+03 2.2452008e+03 - -1.8776553e+03 -2.0232475e+03 2.2404730e+03 - -1.8772596e+03 -2.0313602e+03 2.2356193e+03 - -1.8783830e+03 -2.0368482e+03 2.2307225e+03 - -1.8810138e+03 -2.0398260e+03 2.2258681e+03 - -1.8851177e+03 -2.0404286e+03 2.2211430e+03 - -1.8906367e+03 -2.0388123e+03 2.2166332e+03 - -1.8974879e+03 -2.0351533e+03 2.2124226e+03 - -1.9055633e+03 -2.0296472e+03 2.2085907e+03 - -1.9147297e+03 -2.0225071e+03 2.2052111e+03 - -1.9248298e+03 -2.0139617e+03 2.2023495e+03 - -1.9356830e+03 -2.0042519e+03 2.2000624e+03 - -1.9470880e+03 -1.9936277e+03 2.1983952e+03 - -1.9588250e+03 -1.9823447e+03 2.1973812e+03 - -1.9706593e+03 -1.9706593e+03 2.1970409e+03 - -1.9823447e+03 -1.9588250e+03 2.1973812e+03 - -1.9936277e+03 -1.9470880e+03 2.1983952e+03 - -2.0042519e+03 -1.9356830e+03 2.2000624e+03 - -2.0139617e+03 -1.9248298e+03 2.2023495e+03 - -2.0225071e+03 -1.9147297e+03 2.2052111e+03 - -2.0296472e+03 -1.9055633e+03 2.2085907e+03 - -2.0351533e+03 -1.8974879e+03 2.2124226e+03 - -2.0388123e+03 -1.8906367e+03 2.2166332e+03 - -2.0404286e+03 -1.8851177e+03 2.2211430e+03 - -2.0398260e+03 -1.8810138e+03 2.2258681e+03 - -2.0368482e+03 -1.8783830e+03 2.2307225e+03 - -2.0313602e+03 -1.8772596e+03 2.2356193e+03 - -2.0232475e+03 -1.8776553e+03 2.2404730e+03 - -2.0124156e+03 -1.8795603e+03 2.2452008e+03 - -1.9987895e+03 -1.8829454e+03 2.2497244e+03 - -1.9823122e+03 -1.8877631e+03 2.2539715e+03 - -1.9629431e+03 -1.8939492e+03 2.2578772e+03 - -1.9406564e+03 -1.9014246e+03 2.2613857e+03 - -1.9154391e+03 -1.9100958e+03 2.2644517e+03 - -1.8872888e+03 -1.9198561e+03 2.2670422e+03 - -1.8562114e+03 -1.9305856e+03 2.2691387e+03 - -1.8222181e+03 -1.9421517e+03 2.2707393e+03 - -1.7853226e+03 -1.9544079e+03 2.2718621e+03 - -1.7455364e+03 -1.9671926e+03 2.2725486e+03 - -1.7028641e+03 -1.9803263e+03 2.2728690e+03 - -1.6572958e+03 -1.9936077e+03 2.2729296e+03 - -1.6087969e+03 -2.0068077e+03 2.2728816e+03 - -1.5572926e+03 -2.0196603e+03 2.2729354e+03 - -1.5026436e+03 -2.0318496e+03 2.2733799e+03 - -1.4446070e+03 -2.0429900e+03 2.2746115e+03 - -1.3827703e+03 -2.0525965e+03 2.2771763e+03 - -1.3164363e+03 -2.0600401e+03 2.2818342e+03 - -1.2444131e+03 -2.0644817e+03 2.2896540e+03 - -1.1646177e+03 -2.0647766e+03 2.3021484e+03 - -1.0733033e+03 -2.0593581e+03 2.3214382e+03 - -9.6353969e+02 -2.0461790e+03 2.3503296e+03 - -8.2243318e+02 -2.0230791e+03 2.3917706e+03 - -6.2768873e+02 -1.9898425e+03 2.4458607e+03 - -3.5208682e+02 -1.9542683e+03 2.5010734e+03 - 4.8134273e-09 -1.9374258e+03 2.5267162e+03 - 3.5208682e+02 -1.9542683e+03 2.5010734e+03 - 6.2768873e+02 -1.9898425e+03 2.4458607e+03 - 8.2243318e+02 -2.0230791e+03 2.3917706e+03 - 9.6353969e+02 -2.0461790e+03 2.3503296e+03 - 1.0733033e+03 -2.0593581e+03 2.3214382e+03 - 1.1646177e+03 -2.0647766e+03 2.3021484e+03 - 1.2444131e+03 -2.0644817e+03 2.2896540e+03 - 1.3164363e+03 -2.0600401e+03 2.2818342e+03 - 1.3827703e+03 -2.0525965e+03 2.2771763e+03 - 1.4446070e+03 -2.0429900e+03 2.2746115e+03 - 1.5026436e+03 -2.0318496e+03 2.2733799e+03 - 1.5572926e+03 -2.0196603e+03 2.2729354e+03 - 1.6087969e+03 -2.0068077e+03 2.2728816e+03 - 1.6572958e+03 -1.9936077e+03 2.2729296e+03 - 1.7028641e+03 -1.9803263e+03 2.2728690e+03 - 1.7455364e+03 -1.9671926e+03 2.2725486e+03 - 1.7853226e+03 -1.9544079e+03 2.2718621e+03 - 1.8222181e+03 -1.9421517e+03 2.2707393e+03 - 1.8562114e+03 -1.9305856e+03 2.2691387e+03 - 1.8872888e+03 -1.9198561e+03 2.2670422e+03 - 1.9154391e+03 -1.9100958e+03 2.2644517e+03 - 1.9406564e+03 -1.9014246e+03 2.2613857e+03 - 1.9629431e+03 -1.8939492e+03 2.2578772e+03 - 1.9823122e+03 -1.8877631e+03 2.2539715e+03 - 1.9987895e+03 -1.8829454e+03 2.2497244e+03 - 2.0124156e+03 -1.8795603e+03 2.2452008e+03 - 2.0232475e+03 -1.8776553e+03 2.2404730e+03 - 2.0313602e+03 -1.8772596e+03 2.2356193e+03 - 2.0368482e+03 -1.8783830e+03 2.2307225e+03 - 2.0398260e+03 -1.8810138e+03 2.2258681e+03 - 2.0404286e+03 -1.8851177e+03 2.2211430e+03 - 2.0388123e+03 -1.8906367e+03 2.2166332e+03 - 2.0351533e+03 -1.8974879e+03 2.2124226e+03 - 2.0296472e+03 -1.9055633e+03 2.2085907e+03 - 2.0225071e+03 -1.9147297e+03 2.2052111e+03 - 2.0139617e+03 -1.9248298e+03 2.2023495e+03 - 2.0042519e+03 -1.9356830e+03 2.2000624e+03 - 1.9936277e+03 -1.9470880e+03 2.1983952e+03 - 1.9823447e+03 -1.9588250e+03 2.1973812e+03 - 1.9706593e+03 -1.9706593e+03 2.1970409e+03 - 1.9588250e+03 -1.9823447e+03 2.1973812e+03 - 1.9470880e+03 -1.9936277e+03 2.1983952e+03 - 1.9356830e+03 -2.0042519e+03 2.2000624e+03 - 1.9248298e+03 -2.0139617e+03 2.2023495e+03 - 1.9147297e+03 -2.0225071e+03 2.2052111e+03 - 1.9055633e+03 -2.0296472e+03 2.2085907e+03 - 1.8974879e+03 -2.0351533e+03 2.2124226e+03 - 1.8906367e+03 -2.0388123e+03 2.2166332e+03 - 1.8851177e+03 -2.0404286e+03 2.2211430e+03 - 1.8810138e+03 -2.0398260e+03 2.2258681e+03 - 1.8783830e+03 -2.0368482e+03 2.2307225e+03 - 1.8772596e+03 -2.0313602e+03 2.2356193e+03 - 1.8776553e+03 -2.0232475e+03 2.2404730e+03 - 1.8795603e+03 -2.0124156e+03 2.2452008e+03 - 1.8829454e+03 -1.9987895e+03 2.2497244e+03 - 1.8877631e+03 -1.9823122e+03 2.2539715e+03 - 1.8939492e+03 -1.9629431e+03 2.2578772e+03 - 1.9014246e+03 -1.9406564e+03 2.2613857e+03 - 1.9100958e+03 -1.9154391e+03 2.2644517e+03 - 1.9198561e+03 -1.8872888e+03 2.2670422e+03 - 1.9305856e+03 -1.8562114e+03 2.2691387e+03 - 1.9421517e+03 -1.8222181e+03 2.2707393e+03 - 1.9544079e+03 -1.7853226e+03 2.2718621e+03 - 1.9671926e+03 -1.7455364e+03 2.2725486e+03 - 1.9803263e+03 -1.7028641e+03 2.2728690e+03 - 1.9936077e+03 -1.6572958e+03 2.2729296e+03 - 2.0068077e+03 -1.6087969e+03 2.2728816e+03 - 2.0196603e+03 -1.5572926e+03 2.2729354e+03 - 2.0318496e+03 -1.5026436e+03 2.2733799e+03 - 2.0429900e+03 -1.4446070e+03 2.2746115e+03 - 2.0525965e+03 -1.3827703e+03 2.2771763e+03 - 2.0600401e+03 -1.3164363e+03 2.2818342e+03 - 2.0644817e+03 -1.2444131e+03 2.2896540e+03 - 2.0647766e+03 -1.1646177e+03 2.3021484e+03 - 2.0593581e+03 -1.0733033e+03 2.3214382e+03 - 2.0461790e+03 -9.6353969e+02 2.3503296e+03 - 2.0230791e+03 -8.2243318e+02 2.3917706e+03 - 1.9898425e+03 -6.2768873e+02 2.4458607e+03 - 1.9542683e+03 -3.5208682e+02 2.5010734e+03 - 1.9374258e+03 0.0000000e+00 2.5267162e+03 - 1.9768876e+03 4.8134273e-09 2.4756330e+03 - 2.0181315e+03 4.6207630e+02 2.4154854e+03 - 2.0829264e+03 7.4506979e+02 2.3192748e+03 - 2.1260012e+03 9.1041528e+02 2.2518834e+03 - 2.1481647e+03 1.0244862e+03 2.2123941e+03 - 2.1566619e+03 1.1154967e+03 2.1906356e+03 - 2.1565194e+03 1.1946538e+03 2.1795694e+03 - 2.1507701e+03 1.2667472e+03 2.1749917e+03 - 2.1412710e+03 1.3339984e+03 2.1743768e+03 - 2.1292148e+03 1.3975050e+03 2.1761519e+03 - 2.1154102e+03 1.4578283e+03 2.1792990e+03 - 2.1004359e+03 1.5152561e+03 2.1831370e+03 - 2.0847272e+03 1.5699277e+03 2.1871975e+03 - 2.0686267e+03 1.6218990e+03 2.1911528e+03 - 2.0524151e+03 1.6711775e+03 2.1947721e+03 - 2.0363302e+03 1.7177427e+03 2.1978933e+03 - 2.0205792e+03 1.7615582e+03 2.2004055e+03 - 2.0053464e+03 1.8025798e+03 2.2022367e+03 - 1.9907984e+03 1.8407611e+03 2.2033458e+03 - 1.9770871e+03 1.8760570e+03 2.2037165e+03 - 1.9643520e+03 1.9084268e+03 2.2033530e+03 - 1.9527208e+03 1.9378372e+03 2.2022774e+03 - 1.9423099e+03 1.9642639e+03 2.2005265e+03 - 1.9332241e+03 1.9876939e+03 2.1981503e+03 - 1.9255559e+03 2.0081278e+03 2.1952099e+03 - 1.9193841e+03 2.0255808e+03 2.1917766e+03 - 1.9147728e+03 2.0400855e+03 2.1879298e+03 - 1.9117696e+03 2.0516926e+03 2.1837560e+03 - 1.9104037e+03 2.0604733e+03 2.1793473e+03 - 1.9106844e+03 2.0665198e+03 2.1747998e+03 - 1.9125986e+03 2.0699467e+03 2.1702121e+03 - 1.9161100e+03 2.0708914e+03 2.1656835e+03 - 1.9211569e+03 2.0695144e+03 2.1613121e+03 - 1.9276513e+03 2.0659986e+03 2.1571932e+03 - 1.9354787e+03 2.0605483e+03 2.1534169e+03 - 1.9444976e+03 2.0533876e+03 2.1500666e+03 - 1.9545404e+03 2.0447575e+03 2.1472165e+03 - 1.9654146e+03 2.0349135e+03 2.1449303e+03 - 1.9769053e+03 2.0241212e+03 2.1432594e+03 - 1.9887778e+03 2.0126526e+03 2.1422415e+03 - 2.0007812e+03 2.0007812e+03 2.1418996e+03 - 2.0126526e+03 1.9887778e+03 2.1422415e+03 - 2.0241212e+03 1.9769053e+03 2.1432594e+03 - 2.0349135e+03 1.9654146e+03 2.1449303e+03 - 2.0447575e+03 1.9545404e+03 2.1472165e+03 - 2.0533876e+03 1.9444976e+03 2.1500666e+03 - 2.0605483e+03 1.9354787e+03 2.1534169e+03 - 2.0659986e+03 1.9276513e+03 2.1571932e+03 - 2.0695144e+03 1.9211569e+03 2.1613121e+03 - 2.0708914e+03 1.9161100e+03 2.1656835e+03 - 2.0699467e+03 1.9125986e+03 2.1702121e+03 - 2.0665198e+03 1.9106844e+03 2.1747998e+03 - 2.0604733e+03 1.9104037e+03 2.1793473e+03 - 2.0516926e+03 1.9117696e+03 2.1837560e+03 - 2.0400855e+03 1.9147728e+03 2.1879298e+03 - 2.0255808e+03 1.9193841e+03 2.1917766e+03 - 2.0081278e+03 1.9255559e+03 2.1952099e+03 - 1.9876939e+03 1.9332241e+03 2.1981503e+03 - 1.9642639e+03 1.9423099e+03 2.2005265e+03 - 1.9378372e+03 1.9527208e+03 2.2022774e+03 - 1.9084268e+03 1.9643520e+03 2.2033530e+03 - 1.8760570e+03 1.9770871e+03 2.2037165e+03 - 1.8407611e+03 1.9907984e+03 2.2033458e+03 - 1.8025798e+03 2.0053464e+03 2.2022367e+03 - 1.7615582e+03 2.0205792e+03 2.2004055e+03 - 1.7177427e+03 2.0363302e+03 2.1978933e+03 - 1.6711775e+03 2.0524151e+03 2.1947721e+03 - 1.6218990e+03 2.0686267e+03 2.1911528e+03 - 1.5699277e+03 2.0847272e+03 2.1871975e+03 - 1.5152561e+03 2.1004359e+03 2.1831370e+03 - 1.4578283e+03 2.1154102e+03 2.1792990e+03 - 1.3975050e+03 2.1292148e+03 2.1761519e+03 - 1.3339984e+03 2.1412710e+03 2.1743768e+03 - 1.2667472e+03 2.1507701e+03 2.1749917e+03 - 1.1946538e+03 2.1565194e+03 2.1795694e+03 - 1.1154967e+03 2.1566619e+03 2.1906356e+03 - 1.0244862e+03 2.1481647e+03 2.2123941e+03 - 9.1041528e+02 2.1260012e+03 2.2518834e+03 - 7.4506979e+02 2.0829264e+03 2.3192748e+03 - 4.6207630e+02 2.0181315e+03 2.4154854e+03 - 0.0000000e+00 1.9768876e+03 2.4756330e+03 - -4.6207630e+02 2.0181315e+03 2.4154854e+03 - -7.4506979e+02 2.0829264e+03 2.3192748e+03 - -9.1041528e+02 2.1260012e+03 2.2518834e+03 - -1.0244862e+03 2.1481647e+03 2.2123941e+03 - -1.1154967e+03 2.1566619e+03 2.1906356e+03 - -1.1946538e+03 2.1565194e+03 2.1795694e+03 - -1.2667472e+03 2.1507701e+03 2.1749917e+03 - -1.3339984e+03 2.1412710e+03 2.1743768e+03 - -1.3975050e+03 2.1292148e+03 2.1761519e+03 - -1.4578283e+03 2.1154102e+03 2.1792990e+03 - -1.5152561e+03 2.1004359e+03 2.1831370e+03 - -1.5699277e+03 2.0847272e+03 2.1871975e+03 - -1.6218990e+03 2.0686267e+03 2.1911528e+03 - -1.6711775e+03 2.0524151e+03 2.1947721e+03 - -1.7177427e+03 2.0363302e+03 2.1978933e+03 - -1.7615582e+03 2.0205792e+03 2.2004055e+03 - -1.8025798e+03 2.0053464e+03 2.2022367e+03 - -1.8407611e+03 1.9907984e+03 2.2033458e+03 - -1.8760570e+03 1.9770871e+03 2.2037165e+03 - -1.9084268e+03 1.9643520e+03 2.2033530e+03 - -1.9378372e+03 1.9527208e+03 2.2022774e+03 - -1.9642639e+03 1.9423099e+03 2.2005265e+03 - -1.9876939e+03 1.9332241e+03 2.1981503e+03 - -2.0081278e+03 1.9255559e+03 2.1952099e+03 - -2.0255808e+03 1.9193841e+03 2.1917766e+03 - -2.0400855e+03 1.9147728e+03 2.1879298e+03 - -2.0516926e+03 1.9117696e+03 2.1837560e+03 - -2.0604733e+03 1.9104037e+03 2.1793473e+03 - -2.0665198e+03 1.9106844e+03 2.1747998e+03 - -2.0699467e+03 1.9125986e+03 2.1702121e+03 - -2.0708914e+03 1.9161100e+03 2.1656835e+03 - -2.0695144e+03 1.9211569e+03 2.1613121e+03 - -2.0659986e+03 1.9276513e+03 2.1571932e+03 - -2.0605483e+03 1.9354787e+03 2.1534169e+03 - -2.0533876e+03 1.9444976e+03 2.1500666e+03 - -2.0447575e+03 1.9545404e+03 2.1472165e+03 - -2.0349135e+03 1.9654146e+03 2.1449303e+03 - -2.0241212e+03 1.9769053e+03 2.1432594e+03 - -2.0126526e+03 1.9887778e+03 2.1422415e+03 - -2.0007812e+03 2.0007812e+03 2.1418996e+03 - -1.9887778e+03 2.0126526e+03 2.1422415e+03 - -1.9769053e+03 2.0241212e+03 2.1432594e+03 - -1.9654146e+03 2.0349135e+03 2.1449303e+03 - -1.9545404e+03 2.0447575e+03 2.1472165e+03 - -1.9444976e+03 2.0533876e+03 2.1500666e+03 - -1.9354787e+03 2.0605483e+03 2.1534169e+03 - -1.9276513e+03 2.0659986e+03 2.1571932e+03 - -1.9211569e+03 2.0695144e+03 2.1613121e+03 - -1.9161100e+03 2.0708914e+03 2.1656835e+03 - -1.9125986e+03 2.0699467e+03 2.1702121e+03 - -1.9106844e+03 2.0665198e+03 2.1747998e+03 - -1.9104037e+03 2.0604733e+03 2.1793473e+03 - -1.9117696e+03 2.0516926e+03 2.1837560e+03 - -1.9147728e+03 2.0400855e+03 2.1879298e+03 - -1.9193841e+03 2.0255808e+03 2.1917766e+03 - -1.9255559e+03 2.0081278e+03 2.1952099e+03 - -1.9332241e+03 1.9876939e+03 2.1981503e+03 - -1.9423099e+03 1.9642639e+03 2.2005265e+03 - -1.9527208e+03 1.9378372e+03 2.2022774e+03 - -1.9643520e+03 1.9084268e+03 2.2033530e+03 - -1.9770871e+03 1.8760570e+03 2.2037165e+03 - -1.9907984e+03 1.8407611e+03 2.2033458e+03 - -2.0053464e+03 1.8025798e+03 2.2022367e+03 - -2.0205792e+03 1.7615582e+03 2.2004055e+03 - -2.0363302e+03 1.7177427e+03 2.1978933e+03 - -2.0524151e+03 1.6711775e+03 2.1947721e+03 - -2.0686267e+03 1.6218990e+03 2.1911528e+03 - -2.0847272e+03 1.5699277e+03 2.1871975e+03 - -2.1004359e+03 1.5152561e+03 2.1831370e+03 - -2.1154102e+03 1.4578283e+03 2.1792990e+03 - -2.1292148e+03 1.3975050e+03 2.1761519e+03 - -2.1412710e+03 1.3339984e+03 2.1743768e+03 - -2.1507701e+03 1.2667472e+03 2.1749917e+03 - -2.1565194e+03 1.1946538e+03 2.1795694e+03 - -2.1566619e+03 1.1154967e+03 2.1906356e+03 - -2.1481647e+03 1.0244862e+03 2.2123941e+03 - -2.1260012e+03 9.1041528e+02 2.2518834e+03 - -2.0829264e+03 7.4506979e+02 2.3192748e+03 - -2.0181315e+03 4.6207630e+02 2.4154854e+03 - -1.9768876e+03 2.4067136e-09 2.4756330e+03 - -2.0181315e+03 -4.6207630e+02 2.4154854e+03 - -2.0829264e+03 -7.4506979e+02 2.3192748e+03 - -2.1260012e+03 -9.1041528e+02 2.2518834e+03 - -2.1481647e+03 -1.0244862e+03 2.2123941e+03 - -2.1566619e+03 -1.1154967e+03 2.1906356e+03 - -2.1565194e+03 -1.1946538e+03 2.1795694e+03 - -2.1507701e+03 -1.2667472e+03 2.1749917e+03 - -2.1412710e+03 -1.3339984e+03 2.1743768e+03 - -2.1292148e+03 -1.3975050e+03 2.1761519e+03 - -2.1154102e+03 -1.4578283e+03 2.1792990e+03 - -2.1004359e+03 -1.5152561e+03 2.1831370e+03 - -2.0847272e+03 -1.5699277e+03 2.1871975e+03 - -2.0686267e+03 -1.6218990e+03 2.1911528e+03 - -2.0524151e+03 -1.6711775e+03 2.1947721e+03 - -2.0363302e+03 -1.7177427e+03 2.1978933e+03 - -2.0205792e+03 -1.7615582e+03 2.2004055e+03 - -2.0053464e+03 -1.8025798e+03 2.2022367e+03 - -1.9907984e+03 -1.8407611e+03 2.2033458e+03 - -1.9770871e+03 -1.8760570e+03 2.2037165e+03 - -1.9643520e+03 -1.9084268e+03 2.2033530e+03 - -1.9527208e+03 -1.9378372e+03 2.2022774e+03 - -1.9423099e+03 -1.9642639e+03 2.2005265e+03 - -1.9332241e+03 -1.9876939e+03 2.1981503e+03 - -1.9255559e+03 -2.0081278e+03 2.1952099e+03 - -1.9193841e+03 -2.0255808e+03 2.1917766e+03 - -1.9147728e+03 -2.0400855e+03 2.1879298e+03 - -1.9117696e+03 -2.0516926e+03 2.1837560e+03 - -1.9104037e+03 -2.0604733e+03 2.1793473e+03 - -1.9106844e+03 -2.0665198e+03 2.1747998e+03 - -1.9125986e+03 -2.0699467e+03 2.1702121e+03 - -1.9161100e+03 -2.0708914e+03 2.1656835e+03 - -1.9211569e+03 -2.0695144e+03 2.1613121e+03 - -1.9276513e+03 -2.0659986e+03 2.1571932e+03 - -1.9354787e+03 -2.0605483e+03 2.1534169e+03 - -1.9444976e+03 -2.0533876e+03 2.1500666e+03 - -1.9545404e+03 -2.0447575e+03 2.1472165e+03 - -1.9654146e+03 -2.0349135e+03 2.1449303e+03 - -1.9769053e+03 -2.0241212e+03 2.1432594e+03 - -1.9887778e+03 -2.0126526e+03 2.1422415e+03 - -2.0007812e+03 -2.0007812e+03 2.1418996e+03 - -2.0126526e+03 -1.9887778e+03 2.1422415e+03 - -2.0241212e+03 -1.9769053e+03 2.1432594e+03 - -2.0349135e+03 -1.9654146e+03 2.1449303e+03 - -2.0447575e+03 -1.9545404e+03 2.1472165e+03 - -2.0533876e+03 -1.9444976e+03 2.1500666e+03 - -2.0605483e+03 -1.9354787e+03 2.1534169e+03 - -2.0659986e+03 -1.9276513e+03 2.1571932e+03 - -2.0695144e+03 -1.9211569e+03 2.1613121e+03 - -2.0708914e+03 -1.9161100e+03 2.1656835e+03 - -2.0699467e+03 -1.9125986e+03 2.1702121e+03 - -2.0665198e+03 -1.9106844e+03 2.1747998e+03 - -2.0604733e+03 -1.9104037e+03 2.1793473e+03 - -2.0516926e+03 -1.9117696e+03 2.1837560e+03 - -2.0400855e+03 -1.9147728e+03 2.1879298e+03 - -2.0255808e+03 -1.9193841e+03 2.1917766e+03 - -2.0081278e+03 -1.9255559e+03 2.1952099e+03 - -1.9876939e+03 -1.9332241e+03 2.1981503e+03 - -1.9642639e+03 -1.9423099e+03 2.2005265e+03 - -1.9378372e+03 -1.9527208e+03 2.2022774e+03 - -1.9084268e+03 -1.9643520e+03 2.2033530e+03 - -1.8760570e+03 -1.9770871e+03 2.2037165e+03 - -1.8407611e+03 -1.9907984e+03 2.2033458e+03 - -1.8025798e+03 -2.0053464e+03 2.2022367e+03 - -1.7615582e+03 -2.0205792e+03 2.2004055e+03 - -1.7177427e+03 -2.0363302e+03 2.1978933e+03 - -1.6711775e+03 -2.0524151e+03 2.1947721e+03 - -1.6218990e+03 -2.0686267e+03 2.1911528e+03 - -1.5699277e+03 -2.0847272e+03 2.1871975e+03 - -1.5152561e+03 -2.1004359e+03 2.1831370e+03 - -1.4578283e+03 -2.1154102e+03 2.1792990e+03 - -1.3975050e+03 -2.1292148e+03 2.1761519e+03 - -1.3339984e+03 -2.1412710e+03 2.1743768e+03 - -1.2667472e+03 -2.1507701e+03 2.1749917e+03 - -1.1946538e+03 -2.1565194e+03 2.1795694e+03 - -1.1154967e+03 -2.1566619e+03 2.1906356e+03 - -1.0244862e+03 -2.1481647e+03 2.2123941e+03 - -9.1041528e+02 -2.1260012e+03 2.2518834e+03 - -7.4506979e+02 -2.0829264e+03 2.3192748e+03 - -4.6207630e+02 -2.0181315e+03 2.4154854e+03 - -4.8134273e-09 -1.9768876e+03 2.4756330e+03 - 4.6207630e+02 -2.0181315e+03 2.4154854e+03 - 7.4506979e+02 -2.0829264e+03 2.3192748e+03 - 9.1041528e+02 -2.1260012e+03 2.2518834e+03 - 1.0244862e+03 -2.1481647e+03 2.2123941e+03 - 1.1154967e+03 -2.1566619e+03 2.1906356e+03 - 1.1946538e+03 -2.1565194e+03 2.1795694e+03 - 1.2667472e+03 -2.1507701e+03 2.1749917e+03 - 1.3339984e+03 -2.1412710e+03 2.1743768e+03 - 1.3975050e+03 -2.1292148e+03 2.1761519e+03 - 1.4578283e+03 -2.1154102e+03 2.1792990e+03 - 1.5152561e+03 -2.1004359e+03 2.1831370e+03 - 1.5699277e+03 -2.0847272e+03 2.1871975e+03 - 1.6218990e+03 -2.0686267e+03 2.1911528e+03 - 1.6711775e+03 -2.0524151e+03 2.1947721e+03 - 1.7177427e+03 -2.0363302e+03 2.1978933e+03 - 1.7615582e+03 -2.0205792e+03 2.2004055e+03 - 1.8025798e+03 -2.0053464e+03 2.2022367e+03 - 1.8407611e+03 -1.9907984e+03 2.2033458e+03 - 1.8760570e+03 -1.9770871e+03 2.2037165e+03 - 1.9084268e+03 -1.9643520e+03 2.2033530e+03 - 1.9378372e+03 -1.9527208e+03 2.2022774e+03 - 1.9642639e+03 -1.9423099e+03 2.2005265e+03 - 1.9876939e+03 -1.9332241e+03 2.1981503e+03 - 2.0081278e+03 -1.9255559e+03 2.1952099e+03 - 2.0255808e+03 -1.9193841e+03 2.1917766e+03 - 2.0400855e+03 -1.9147728e+03 2.1879298e+03 - 2.0516926e+03 -1.9117696e+03 2.1837560e+03 - 2.0604733e+03 -1.9104037e+03 2.1793473e+03 - 2.0665198e+03 -1.9106844e+03 2.1747998e+03 - 2.0699467e+03 -1.9125986e+03 2.1702121e+03 - 2.0708914e+03 -1.9161100e+03 2.1656835e+03 - 2.0695144e+03 -1.9211569e+03 2.1613121e+03 - 2.0659986e+03 -1.9276513e+03 2.1571932e+03 - 2.0605483e+03 -1.9354787e+03 2.1534169e+03 - 2.0533876e+03 -1.9444976e+03 2.1500666e+03 - 2.0447575e+03 -1.9545404e+03 2.1472165e+03 - 2.0349135e+03 -1.9654146e+03 2.1449303e+03 - 2.0241212e+03 -1.9769053e+03 2.1432594e+03 - 2.0126526e+03 -1.9887778e+03 2.1422415e+03 - 2.0007812e+03 -2.0007812e+03 2.1418996e+03 - 1.9887778e+03 -2.0126526e+03 2.1422415e+03 - 1.9769053e+03 -2.0241212e+03 2.1432594e+03 - 1.9654146e+03 -2.0349135e+03 2.1449303e+03 - 1.9545404e+03 -2.0447575e+03 2.1472165e+03 - 1.9444976e+03 -2.0533876e+03 2.1500666e+03 - 1.9354787e+03 -2.0605483e+03 2.1534169e+03 - 1.9276513e+03 -2.0659986e+03 2.1571932e+03 - 1.9211569e+03 -2.0695144e+03 2.1613121e+03 - 1.9161100e+03 -2.0708914e+03 2.1656835e+03 - 1.9125986e+03 -2.0699467e+03 2.1702121e+03 - 1.9106844e+03 -2.0665198e+03 2.1747998e+03 - 1.9104037e+03 -2.0604733e+03 2.1793473e+03 - 1.9117696e+03 -2.0516926e+03 2.1837560e+03 - 1.9147728e+03 -2.0400855e+03 2.1879298e+03 - 1.9193841e+03 -2.0255808e+03 2.1917766e+03 - 1.9255559e+03 -2.0081278e+03 2.1952099e+03 - 1.9332241e+03 -1.9876939e+03 2.1981503e+03 - 1.9423099e+03 -1.9642639e+03 2.2005265e+03 - 1.9527208e+03 -1.9378372e+03 2.2022774e+03 - 1.9643520e+03 -1.9084268e+03 2.2033530e+03 - 1.9770871e+03 -1.8760570e+03 2.2037165e+03 - 1.9907984e+03 -1.8407611e+03 2.2033458e+03 - 2.0053464e+03 -1.8025798e+03 2.2022367e+03 - 2.0205792e+03 -1.7615582e+03 2.2004055e+03 - 2.0363302e+03 -1.7177427e+03 2.1978933e+03 - 2.0524151e+03 -1.6711775e+03 2.1947721e+03 - 2.0686267e+03 -1.6218990e+03 2.1911528e+03 - 2.0847272e+03 -1.5699277e+03 2.1871975e+03 - 2.1004359e+03 -1.5152561e+03 2.1831370e+03 - 2.1154102e+03 -1.4578283e+03 2.1792990e+03 - 2.1292148e+03 -1.3975050e+03 2.1761519e+03 - 2.1412710e+03 -1.3339984e+03 2.1743768e+03 - 2.1507701e+03 -1.2667472e+03 2.1749917e+03 - 2.1565194e+03 -1.1946538e+03 2.1795694e+03 - 2.1566619e+03 -1.1154967e+03 2.1906356e+03 - 2.1481647e+03 -1.0244862e+03 2.2123941e+03 - 2.1260012e+03 -9.1041528e+02 2.2518834e+03 - 2.0829264e+03 -7.4506979e+02 2.3192748e+03 - 2.0181315e+03 -4.6207630e+02 2.4154854e+03 - 1.9768876e+03 -2.4067136e-09 2.4756330e+03 - 2.0159189e+03 -2.4067136e-09 2.4230026e+03 - 2.1693779e+03 7.0065250e+02 2.2043809e+03 - 2.2563726e+03 8.8489640e+02 2.0776167e+03 - 2.2823793e+03 9.8420167e+02 2.0352271e+03 - 2.2858665e+03 1.0647362e+03 2.0228475e+03 - 2.2791117e+03 1.1383160e+03 2.0231811e+03 - 2.2668776e+03 1.2081009e+03 2.0295751e+03 - 2.2513950e+03 1.2751468e+03 2.0389708e+03 - 2.2338725e+03 1.3398358e+03 2.0497673e+03 - 2.2150458e+03 1.4022916e+03 2.0610439e+03 - 2.1954090e+03 1.4625246e+03 2.0722327e+03 - 2.1753221e+03 1.5204919e+03 2.0829663e+03 - 2.1550666e+03 1.5761242e+03 2.0929996e+03 - 2.1348747e+03 1.6293389e+03 2.1021670e+03 - 2.1149467e+03 1.6800483e+03 2.1103583e+03 - 2.0954611e+03 1.7281633e+03 2.1175032e+03 - 2.0765809e+03 1.7735969e+03 2.1235623e+03 - 2.0584572e+03 1.8162661e+03 2.1285206e+03 - 2.0412313e+03 1.8560936e+03 2.1323832e+03 - 2.0250363e+03 1.8930097e+03 2.1351726e+03 - 2.0099973e+03 1.9269535e+03 2.1369262e+03 - 1.9962315e+03 1.9578743e+03 2.1376947e+03 - 1.9838473e+03 1.9857336e+03 2.1375404e+03 - 1.9729439e+03 2.0105065e+03 2.1365362e+03 - 1.9636096e+03 2.0321830e+03 2.1347648e+03 - 1.9559206e+03 2.0507703e+03 2.1323169e+03 - 1.9499389e+03 2.0662942e+03 2.1292906e+03 - 1.9457105e+03 2.0788008e+03 2.1257900e+03 - 1.9432632e+03 2.0883580e+03 2.1219243e+03 - 1.9426044e+03 2.0950571e+03 2.1178056e+03 - 1.9437190e+03 2.0990136e+03 2.1135482e+03 - 1.9465672e+03 2.1003682e+03 2.1092662e+03 - 1.9510829e+03 2.0992864e+03 2.1050721e+03 - 1.9571723e+03 2.0959588e+03 2.1010744e+03 - 1.9647133e+03 2.0905996e+03 2.0973755e+03 - 1.9735549e+03 2.0834448e+03 2.0940702e+03 - 1.9835183e+03 2.0747493e+03 2.0912425e+03 - 1.9943977e+03 2.0647844e+03 2.0889646e+03 - 2.0059635e+03 2.0538327e+03 2.0872947e+03 - 2.0179643e+03 2.0421844e+03 2.0862753e+03 - 2.0301318e+03 2.0301318e+03 2.0859326e+03 - 2.0421844e+03 2.0179643e+03 2.0862753e+03 - 2.0538327e+03 2.0059635e+03 2.0872947e+03 - 2.0647844e+03 1.9943977e+03 2.0889646e+03 - 2.0747493e+03 1.9835183e+03 2.0912425e+03 - 2.0834448e+03 1.9735549e+03 2.0940702e+03 - 2.0905996e+03 1.9647133e+03 2.0973755e+03 - 2.0959588e+03 1.9571723e+03 2.1010744e+03 - 2.0992864e+03 1.9510829e+03 2.1050721e+03 - 2.1003682e+03 1.9465672e+03 2.1092662e+03 - 2.0990136e+03 1.9437190e+03 2.1135482e+03 - 2.0950571e+03 1.9426044e+03 2.1178056e+03 - 2.0883580e+03 1.9432632e+03 2.1219243e+03 - 2.0788008e+03 1.9457105e+03 2.1257900e+03 - 2.0662942e+03 1.9499389e+03 2.1292906e+03 - 2.0507703e+03 1.9559206e+03 2.1323169e+03 - 2.0321830e+03 1.9636096e+03 2.1347648e+03 - 2.0105065e+03 1.9729439e+03 2.1365362e+03 - 1.9857336e+03 1.9838473e+03 2.1375404e+03 - 1.9578743e+03 1.9962315e+03 2.1376947e+03 - 1.9269535e+03 2.0099973e+03 2.1369262e+03 - 1.8930097e+03 2.0250363e+03 2.1351726e+03 - 1.8560936e+03 2.0412313e+03 2.1323832e+03 - 1.8162661e+03 2.0584572e+03 2.1285206e+03 - 1.7735969e+03 2.0765809e+03 2.1235623e+03 - 1.7281633e+03 2.0954611e+03 2.1175032e+03 - 1.6800483e+03 2.1149467e+03 2.1103583e+03 - 1.6293389e+03 2.1348747e+03 2.1021670e+03 - 1.5761242e+03 2.1550666e+03 2.0929996e+03 - 1.5204919e+03 2.1753221e+03 2.0829663e+03 - 1.4625246e+03 2.1954090e+03 2.0722327e+03 - 1.4022916e+03 2.2150458e+03 2.0610439e+03 - 1.3398358e+03 2.2338725e+03 2.0497673e+03 - 1.2751468e+03 2.2513950e+03 2.0389708e+03 - 1.2081009e+03 2.2668776e+03 2.0295751e+03 - 1.1383160e+03 2.2791117e+03 2.0231811e+03 - 1.0647362e+03 2.2858665e+03 2.0228475e+03 - 9.8420167e+02 2.2823793e+03 2.0352271e+03 - 8.8489640e+02 2.2563726e+03 2.0776167e+03 - 7.0065250e+02 2.1693779e+03 2.2043809e+03 - -2.4067136e-09 2.0159189e+03 2.4230026e+03 - -7.0065250e+02 2.1693779e+03 2.2043809e+03 - -8.8489640e+02 2.2563726e+03 2.0776167e+03 - -9.8420167e+02 2.2823793e+03 2.0352271e+03 - -1.0647362e+03 2.2858665e+03 2.0228475e+03 - -1.1383160e+03 2.2791117e+03 2.0231811e+03 - -1.2081009e+03 2.2668776e+03 2.0295751e+03 - -1.2751468e+03 2.2513950e+03 2.0389708e+03 - -1.3398358e+03 2.2338725e+03 2.0497673e+03 - -1.4022916e+03 2.2150458e+03 2.0610439e+03 - -1.4625246e+03 2.1954090e+03 2.0722327e+03 - -1.5204919e+03 2.1753221e+03 2.0829663e+03 - -1.5761242e+03 2.1550666e+03 2.0929996e+03 - -1.6293389e+03 2.1348747e+03 2.1021670e+03 - -1.6800483e+03 2.1149467e+03 2.1103583e+03 - -1.7281633e+03 2.0954611e+03 2.1175032e+03 - -1.7735969e+03 2.0765809e+03 2.1235623e+03 - -1.8162661e+03 2.0584572e+03 2.1285206e+03 - -1.8560936e+03 2.0412313e+03 2.1323832e+03 - -1.8930097e+03 2.0250363e+03 2.1351726e+03 - -1.9269535e+03 2.0099973e+03 2.1369262e+03 - -1.9578743e+03 1.9962315e+03 2.1376947e+03 - -1.9857336e+03 1.9838473e+03 2.1375404e+03 - -2.0105065e+03 1.9729439e+03 2.1365362e+03 - -2.0321830e+03 1.9636096e+03 2.1347648e+03 - -2.0507703e+03 1.9559206e+03 2.1323169e+03 - -2.0662942e+03 1.9499389e+03 2.1292906e+03 - -2.0788008e+03 1.9457105e+03 2.1257900e+03 - -2.0883580e+03 1.9432632e+03 2.1219243e+03 - -2.0950571e+03 1.9426044e+03 2.1178056e+03 - -2.0990136e+03 1.9437190e+03 2.1135482e+03 - -2.1003682e+03 1.9465672e+03 2.1092662e+03 - -2.0992864e+03 1.9510829e+03 2.1050721e+03 - -2.0959588e+03 1.9571723e+03 2.1010744e+03 - -2.0905996e+03 1.9647133e+03 2.0973755e+03 - -2.0834448e+03 1.9735549e+03 2.0940702e+03 - -2.0747493e+03 1.9835183e+03 2.0912425e+03 - -2.0647844e+03 1.9943977e+03 2.0889646e+03 - -2.0538327e+03 2.0059635e+03 2.0872947e+03 - -2.0421844e+03 2.0179643e+03 2.0862753e+03 - -2.0301318e+03 2.0301318e+03 2.0859326e+03 - -2.0179643e+03 2.0421844e+03 2.0862753e+03 - -2.0059635e+03 2.0538327e+03 2.0872947e+03 - -1.9943977e+03 2.0647844e+03 2.0889646e+03 - -1.9835183e+03 2.0747493e+03 2.0912425e+03 - -1.9735549e+03 2.0834448e+03 2.0940702e+03 - -1.9647133e+03 2.0905996e+03 2.0973755e+03 - -1.9571723e+03 2.0959588e+03 2.1010744e+03 - -1.9510829e+03 2.0992864e+03 2.1050721e+03 - -1.9465672e+03 2.1003682e+03 2.1092662e+03 - -1.9437190e+03 2.0990136e+03 2.1135482e+03 - -1.9426044e+03 2.0950571e+03 2.1178056e+03 - -1.9432632e+03 2.0883580e+03 2.1219243e+03 - -1.9457105e+03 2.0788008e+03 2.1257900e+03 - -1.9499389e+03 2.0662942e+03 2.1292906e+03 - -1.9559206e+03 2.0507703e+03 2.1323169e+03 - -1.9636096e+03 2.0321830e+03 2.1347648e+03 - -1.9729439e+03 2.0105065e+03 2.1365362e+03 - -1.9838473e+03 1.9857336e+03 2.1375404e+03 - -1.9962315e+03 1.9578743e+03 2.1376947e+03 - -2.0099973e+03 1.9269535e+03 2.1369262e+03 - -2.0250363e+03 1.8930097e+03 2.1351726e+03 - -2.0412313e+03 1.8560936e+03 2.1323832e+03 - -2.0584572e+03 1.8162661e+03 2.1285206e+03 - -2.0765809e+03 1.7735969e+03 2.1235623e+03 - -2.0954611e+03 1.7281633e+03 2.1175032e+03 - -2.1149467e+03 1.6800483e+03 2.1103583e+03 - -2.1348747e+03 1.6293389e+03 2.1021670e+03 - -2.1550666e+03 1.5761242e+03 2.0929996e+03 - -2.1753221e+03 1.5204919e+03 2.0829663e+03 - -2.1954090e+03 1.4625246e+03 2.0722327e+03 - -2.2150458e+03 1.4022916e+03 2.0610439e+03 - -2.2338725e+03 1.3398358e+03 2.0497673e+03 - -2.2513950e+03 1.2751468e+03 2.0389708e+03 - -2.2668776e+03 1.2081009e+03 2.0295751e+03 - -2.2791117e+03 1.1383160e+03 2.0231811e+03 - -2.2858665e+03 1.0647362e+03 2.0228475e+03 - -2.2823793e+03 9.8420167e+02 2.0352271e+03 - -2.2563726e+03 8.8489640e+02 2.0776167e+03 - -2.1693779e+03 7.0065250e+02 2.2043809e+03 - -2.0159189e+03 -2.4067136e-09 2.4230026e+03 - -2.1693779e+03 -7.0065250e+02 2.2043809e+03 - -2.2563726e+03 -8.8489640e+02 2.0776167e+03 - -2.2823793e+03 -9.8420167e+02 2.0352271e+03 - -2.2858665e+03 -1.0647362e+03 2.0228475e+03 - -2.2791117e+03 -1.1383160e+03 2.0231811e+03 - -2.2668776e+03 -1.2081009e+03 2.0295751e+03 - -2.2513950e+03 -1.2751468e+03 2.0389708e+03 - -2.2338725e+03 -1.3398358e+03 2.0497673e+03 - -2.2150458e+03 -1.4022916e+03 2.0610439e+03 - -2.1954090e+03 -1.4625246e+03 2.0722327e+03 - -2.1753221e+03 -1.5204919e+03 2.0829663e+03 - -2.1550666e+03 -1.5761242e+03 2.0929996e+03 - -2.1348747e+03 -1.6293389e+03 2.1021670e+03 - -2.1149467e+03 -1.6800483e+03 2.1103583e+03 - -2.0954611e+03 -1.7281633e+03 2.1175032e+03 - -2.0765809e+03 -1.7735969e+03 2.1235623e+03 - -2.0584572e+03 -1.8162661e+03 2.1285206e+03 - -2.0412313e+03 -1.8560936e+03 2.1323832e+03 - -2.0250363e+03 -1.8930097e+03 2.1351726e+03 - -2.0099973e+03 -1.9269535e+03 2.1369262e+03 - -1.9962315e+03 -1.9578743e+03 2.1376947e+03 - -1.9838473e+03 -1.9857336e+03 2.1375404e+03 - -1.9729439e+03 -2.0105065e+03 2.1365362e+03 - -1.9636096e+03 -2.0321830e+03 2.1347648e+03 - -1.9559206e+03 -2.0507703e+03 2.1323169e+03 - -1.9499389e+03 -2.0662942e+03 2.1292906e+03 - -1.9457105e+03 -2.0788008e+03 2.1257900e+03 - -1.9432632e+03 -2.0883580e+03 2.1219243e+03 - -1.9426044e+03 -2.0950571e+03 2.1178056e+03 - -1.9437190e+03 -2.0990136e+03 2.1135482e+03 - -1.9465672e+03 -2.1003682e+03 2.1092662e+03 - -1.9510829e+03 -2.0992864e+03 2.1050721e+03 - -1.9571723e+03 -2.0959588e+03 2.1010744e+03 - -1.9647133e+03 -2.0905996e+03 2.0973755e+03 - -1.9735549e+03 -2.0834448e+03 2.0940702e+03 - -1.9835183e+03 -2.0747493e+03 2.0912425e+03 - -1.9943977e+03 -2.0647844e+03 2.0889646e+03 - -2.0059635e+03 -2.0538327e+03 2.0872947e+03 - -2.0179643e+03 -2.0421844e+03 2.0862753e+03 - -2.0301318e+03 -2.0301318e+03 2.0859326e+03 - -2.0421844e+03 -2.0179643e+03 2.0862753e+03 - -2.0538327e+03 -2.0059635e+03 2.0872947e+03 - -2.0647844e+03 -1.9943977e+03 2.0889646e+03 - -2.0747493e+03 -1.9835183e+03 2.0912425e+03 - -2.0834448e+03 -1.9735549e+03 2.0940702e+03 - -2.0905996e+03 -1.9647133e+03 2.0973755e+03 - -2.0959588e+03 -1.9571723e+03 2.1010744e+03 - -2.0992864e+03 -1.9510829e+03 2.1050721e+03 - -2.1003682e+03 -1.9465672e+03 2.1092662e+03 - -2.0990136e+03 -1.9437190e+03 2.1135482e+03 - -2.0950571e+03 -1.9426044e+03 2.1178056e+03 - -2.0883580e+03 -1.9432632e+03 2.1219243e+03 - -2.0788008e+03 -1.9457105e+03 2.1257900e+03 - -2.0662942e+03 -1.9499389e+03 2.1292906e+03 - -2.0507703e+03 -1.9559206e+03 2.1323169e+03 - -2.0321830e+03 -1.9636096e+03 2.1347648e+03 - -2.0105065e+03 -1.9729439e+03 2.1365362e+03 - -1.9857336e+03 -1.9838473e+03 2.1375404e+03 - -1.9578743e+03 -1.9962315e+03 2.1376947e+03 - -1.9269535e+03 -2.0099973e+03 2.1369262e+03 - -1.8930097e+03 -2.0250363e+03 2.1351726e+03 - -1.8560936e+03 -2.0412313e+03 2.1323832e+03 - -1.8162661e+03 -2.0584572e+03 2.1285206e+03 - -1.7735969e+03 -2.0765809e+03 2.1235623e+03 - -1.7281633e+03 -2.0954611e+03 2.1175032e+03 - -1.6800483e+03 -2.1149467e+03 2.1103583e+03 - -1.6293389e+03 -2.1348747e+03 2.1021670e+03 - -1.5761242e+03 -2.1550666e+03 2.0929996e+03 - -1.5204919e+03 -2.1753221e+03 2.0829663e+03 - -1.4625246e+03 -2.1954090e+03 2.0722327e+03 - -1.4022916e+03 -2.2150458e+03 2.0610439e+03 - -1.3398358e+03 -2.2338725e+03 2.0497673e+03 - -1.2751468e+03 -2.2513950e+03 2.0389708e+03 - -1.2081009e+03 -2.2668776e+03 2.0295751e+03 - -1.1383160e+03 -2.2791117e+03 2.0231811e+03 - -1.0647362e+03 -2.2858665e+03 2.0228475e+03 - -9.8420167e+02 -2.2823793e+03 2.0352271e+03 - -8.8489640e+02 -2.2563726e+03 2.0776167e+03 - -7.0065250e+02 -2.1693779e+03 2.2043809e+03 - 0.0000000e+00 -2.0159189e+03 2.4230026e+03 - 7.0065250e+02 -2.1693779e+03 2.2043809e+03 - 8.8489640e+02 -2.2563726e+03 2.0776167e+03 - 9.8420167e+02 -2.2823793e+03 2.0352271e+03 - 1.0647362e+03 -2.2858665e+03 2.0228475e+03 - 1.1383160e+03 -2.2791117e+03 2.0231811e+03 - 1.2081009e+03 -2.2668776e+03 2.0295751e+03 - 1.2751468e+03 -2.2513950e+03 2.0389708e+03 - 1.3398358e+03 -2.2338725e+03 2.0497673e+03 - 1.4022916e+03 -2.2150458e+03 2.0610439e+03 - 1.4625246e+03 -2.1954090e+03 2.0722327e+03 - 1.5204919e+03 -2.1753221e+03 2.0829663e+03 - 1.5761242e+03 -2.1550666e+03 2.0929996e+03 - 1.6293389e+03 -2.1348747e+03 2.1021670e+03 - 1.6800483e+03 -2.1149467e+03 2.1103583e+03 - 1.7281633e+03 -2.0954611e+03 2.1175032e+03 - 1.7735969e+03 -2.0765809e+03 2.1235623e+03 - 1.8162661e+03 -2.0584572e+03 2.1285206e+03 - 1.8560936e+03 -2.0412313e+03 2.1323832e+03 - 1.8930097e+03 -2.0250363e+03 2.1351726e+03 - 1.9269535e+03 -2.0099973e+03 2.1369262e+03 - 1.9578743e+03 -1.9962315e+03 2.1376947e+03 - 1.9857336e+03 -1.9838473e+03 2.1375404e+03 - 2.0105065e+03 -1.9729439e+03 2.1365362e+03 - 2.0321830e+03 -1.9636096e+03 2.1347648e+03 - 2.0507703e+03 -1.9559206e+03 2.1323169e+03 - 2.0662942e+03 -1.9499389e+03 2.1292906e+03 - 2.0788008e+03 -1.9457105e+03 2.1257900e+03 - 2.0883580e+03 -1.9432632e+03 2.1219243e+03 - 2.0950571e+03 -1.9426044e+03 2.1178056e+03 - 2.0990136e+03 -1.9437190e+03 2.1135482e+03 - 2.1003682e+03 -1.9465672e+03 2.1092662e+03 - 2.0992864e+03 -1.9510829e+03 2.1050721e+03 - 2.0959588e+03 -1.9571723e+03 2.1010744e+03 - 2.0905996e+03 -1.9647133e+03 2.0973755e+03 - 2.0834448e+03 -1.9735549e+03 2.0940702e+03 - 2.0747493e+03 -1.9835183e+03 2.0912425e+03 - 2.0647844e+03 -1.9943977e+03 2.0889646e+03 - 2.0538327e+03 -2.0059635e+03 2.0872947e+03 - 2.0421844e+03 -2.0179643e+03 2.0862753e+03 - 2.0301318e+03 -2.0301318e+03 2.0859326e+03 - 2.0179643e+03 -2.0421844e+03 2.0862753e+03 - 2.0059635e+03 -2.0538327e+03 2.0872947e+03 - 1.9943977e+03 -2.0647844e+03 2.0889646e+03 - 1.9835183e+03 -2.0747493e+03 2.0912425e+03 - 1.9735549e+03 -2.0834448e+03 2.0940702e+03 - 1.9647133e+03 -2.0905996e+03 2.0973755e+03 - 1.9571723e+03 -2.0959588e+03 2.1010744e+03 - 1.9510829e+03 -2.0992864e+03 2.1050721e+03 - 1.9465672e+03 -2.1003682e+03 2.1092662e+03 - 1.9437190e+03 -2.0990136e+03 2.1135482e+03 - 1.9426044e+03 -2.0950571e+03 2.1178056e+03 - 1.9432632e+03 -2.0883580e+03 2.1219243e+03 - 1.9457105e+03 -2.0788008e+03 2.1257900e+03 - 1.9499389e+03 -2.0662942e+03 2.1292906e+03 - 1.9559206e+03 -2.0507703e+03 2.1323169e+03 - 1.9636096e+03 -2.0321830e+03 2.1347648e+03 - 1.9729439e+03 -2.0105065e+03 2.1365362e+03 - 1.9838473e+03 -1.9857336e+03 2.1375404e+03 - 1.9962315e+03 -1.9578743e+03 2.1376947e+03 - 2.0099973e+03 -1.9269535e+03 2.1369262e+03 - 2.0250363e+03 -1.8930097e+03 2.1351726e+03 - 2.0412313e+03 -1.8560936e+03 2.1323832e+03 - 2.0584572e+03 -1.8162661e+03 2.1285206e+03 - 2.0765809e+03 -1.7735969e+03 2.1235623e+03 - 2.0954611e+03 -1.7281633e+03 2.1175032e+03 - 2.1149467e+03 -1.6800483e+03 2.1103583e+03 - 2.1348747e+03 -1.6293389e+03 2.1021670e+03 - 2.1550666e+03 -1.5761242e+03 2.0929996e+03 - 2.1753221e+03 -1.5204919e+03 2.0829663e+03 - 2.1954090e+03 -1.4625246e+03 2.0722327e+03 - 2.2150458e+03 -1.4022916e+03 2.0610439e+03 - 2.2338725e+03 -1.3398358e+03 2.0497673e+03 - 2.2513950e+03 -1.2751468e+03 2.0389708e+03 - 2.2668776e+03 -1.2081009e+03 2.0295751e+03 - 2.2791117e+03 -1.1383160e+03 2.0231811e+03 - 2.2858665e+03 -1.0647362e+03 2.0228475e+03 - 2.2823793e+03 -9.8420167e+02 2.0352271e+03 - 2.2563726e+03 -8.8489640e+02 2.0776167e+03 - 2.1693779e+03 -7.0065250e+02 2.2043809e+03 - 2.0159189e+03 0.0000000e+00 2.4230026e+03 - 2.9548678e+03 -2.4067136e-09 1.0953719e+03 - 2.6636333e+03 7.7269464e+02 1.5065661e+03 - 2.5567673e+03 8.9267103e+02 1.6549623e+03 - 2.5023177e+03 9.7563942e+02 1.7271811e+03 - 2.4624839e+03 1.0513613e+03 1.7767495e+03 - 2.4284621e+03 1.1239342e+03 1.8161910e+03 - 2.3972604e+03 1.1943071e+03 1.8498201e+03 - 2.3676396e+03 1.2627232e+03 1.8794844e+03 - 2.3390346e+03 1.3292082e+03 1.9060901e+03 - 2.3111843e+03 1.3937064e+03 1.9301256e+03 - 2.2839815e+03 1.4561279e+03 1.9518745e+03 - 2.2574032e+03 1.5163675e+03 1.9715131e+03 - 2.2314761e+03 1.5743140e+03 1.9891600e+03 - 2.2062570e+03 1.6298547e+03 2.0049027e+03 - 2.1818221e+03 1.6828783e+03 2.0188127e+03 - 2.1582600e+03 1.7332767e+03 2.0309545e+03 - 2.1356673e+03 1.7809467e+03 2.0413914e+03 - 2.1141452e+03 1.8257911e+03 2.0501890e+03 - 2.0937978e+03 1.8677203e+03 2.0574171e+03 - 2.0747292e+03 1.9066529e+03 2.0631513e+03 - 2.0570426e+03 1.9425178e+03 2.0674737e+03 - 2.0408382e+03 1.9752551e+03 2.0704733e+03 - 2.0262118e+03 2.0048177e+03 2.0722463e+03 - 2.0132526e+03 2.0311730e+03 2.0728957e+03 - 2.0020415e+03 2.0543046e+03 2.0725312e+03 - 1.9926489e+03 2.0742142e+03 2.0712689e+03 - 1.9851325e+03 2.0909231e+03 2.0692300e+03 - 1.9795348e+03 2.1044745e+03 2.0665408e+03 - 1.9758802e+03 2.1149350e+03 2.0633309e+03 - 1.9741731e+03 2.1223961e+03 2.0597323e+03 - 1.9743945e+03 2.1269755e+03 2.0558778e+03 - 1.9765005e+03 2.1288180e+03 2.0518994e+03 - 1.9804194e+03 2.1280958e+03 2.0479263e+03 - 1.9860503e+03 2.1250082e+03 2.0440825e+03 - 1.9932625e+03 2.1197804e+03 2.0404853e+03 - 2.0018943e+03 2.1126617e+03 2.0372420e+03 - 2.0117542e+03 2.1039227e+03 2.0344485e+03 - 2.0226220e+03 2.0938517e+03 2.0321866e+03 - 2.0342515e+03 2.0827504e+03 2.0305224e+03 - 2.0463734e+03 2.0709288e+03 2.0295041e+03 - 2.0586997e+03 2.0586997e+03 2.0291614e+03 - 2.0709288e+03 2.0463734e+03 2.0295041e+03 - 2.0827504e+03 2.0342515e+03 2.0305224e+03 - 2.0938517e+03 2.0226220e+03 2.0321866e+03 - 2.1039227e+03 2.0117542e+03 2.0344485e+03 - 2.1126617e+03 2.0018943e+03 2.0372420e+03 - 2.1197804e+03 1.9932625e+03 2.0404853e+03 - 2.1250082e+03 1.9860503e+03 2.0440825e+03 - 2.1280958e+03 1.9804194e+03 2.0479263e+03 - 2.1288180e+03 1.9765005e+03 2.0518994e+03 - 2.1269755e+03 1.9743945e+03 2.0558778e+03 - 2.1223961e+03 1.9741731e+03 2.0597323e+03 - 2.1149350e+03 1.9758802e+03 2.0633309e+03 - 2.1044745e+03 1.9795348e+03 2.0665408e+03 - 2.0909231e+03 1.9851325e+03 2.0692300e+03 - 2.0742142e+03 1.9926489e+03 2.0712689e+03 - 2.0543046e+03 2.0020415e+03 2.0725312e+03 - 2.0311730e+03 2.0132526e+03 2.0728957e+03 - 2.0048177e+03 2.0262118e+03 2.0722463e+03 - 1.9752551e+03 2.0408382e+03 2.0704733e+03 - 1.9425178e+03 2.0570426e+03 2.0674737e+03 - 1.9066529e+03 2.0747292e+03 2.0631513e+03 - 1.8677203e+03 2.0937978e+03 2.0574171e+03 - 1.8257911e+03 2.1141452e+03 2.0501890e+03 - 1.7809467e+03 2.1356673e+03 2.0413914e+03 - 1.7332767e+03 2.1582600e+03 2.0309545e+03 - 1.6828783e+03 2.1818221e+03 2.0188127e+03 - 1.6298547e+03 2.2062570e+03 2.0049027e+03 - 1.5743140e+03 2.2314761e+03 1.9891600e+03 - 1.5163675e+03 2.2574032e+03 1.9715131e+03 - 1.4561279e+03 2.2839815e+03 1.9518745e+03 - 1.3937064e+03 2.3111843e+03 1.9301256e+03 - 1.3292082e+03 2.3390346e+03 1.9060901e+03 - 1.2627232e+03 2.3676396e+03 1.8794844e+03 - 1.1943071e+03 2.3972604e+03 1.8498201e+03 - 1.1239342e+03 2.4284621e+03 1.8161910e+03 - 1.0513613e+03 2.4624839e+03 1.7767495e+03 - 9.7563942e+02 2.5023177e+03 1.7271811e+03 - 8.9267103e+02 2.5567673e+03 1.6549623e+03 - 7.7269464e+02 2.6636333e+03 1.5065661e+03 - 0.0000000e+00 2.9548678e+03 1.0953719e+03 - -7.7269464e+02 2.6636333e+03 1.5065661e+03 - -8.9267103e+02 2.5567673e+03 1.6549623e+03 - -9.7563942e+02 2.5023177e+03 1.7271811e+03 - -1.0513613e+03 2.4624839e+03 1.7767495e+03 - -1.1239342e+03 2.4284621e+03 1.8161910e+03 - -1.1943071e+03 2.3972604e+03 1.8498201e+03 - -1.2627232e+03 2.3676396e+03 1.8794844e+03 - -1.3292082e+03 2.3390346e+03 1.9060901e+03 - -1.3937064e+03 2.3111843e+03 1.9301256e+03 - -1.4561279e+03 2.2839815e+03 1.9518745e+03 - -1.5163675e+03 2.2574032e+03 1.9715131e+03 - -1.5743140e+03 2.2314761e+03 1.9891600e+03 - -1.6298547e+03 2.2062570e+03 2.0049027e+03 - -1.6828783e+03 2.1818221e+03 2.0188127e+03 - -1.7332767e+03 2.1582600e+03 2.0309545e+03 - -1.7809467e+03 2.1356673e+03 2.0413914e+03 - -1.8257911e+03 2.1141452e+03 2.0501890e+03 - -1.8677203e+03 2.0937978e+03 2.0574171e+03 - -1.9066529e+03 2.0747292e+03 2.0631513e+03 - -1.9425178e+03 2.0570426e+03 2.0674737e+03 - -1.9752551e+03 2.0408382e+03 2.0704733e+03 - -2.0048177e+03 2.0262118e+03 2.0722463e+03 - -2.0311730e+03 2.0132526e+03 2.0728957e+03 - -2.0543046e+03 2.0020415e+03 2.0725312e+03 - -2.0742142e+03 1.9926489e+03 2.0712689e+03 - -2.0909231e+03 1.9851325e+03 2.0692300e+03 - -2.1044745e+03 1.9795348e+03 2.0665408e+03 - -2.1149350e+03 1.9758802e+03 2.0633309e+03 - -2.1223961e+03 1.9741731e+03 2.0597323e+03 - -2.1269755e+03 1.9743945e+03 2.0558778e+03 - -2.1288180e+03 1.9765005e+03 2.0518994e+03 - -2.1280958e+03 1.9804194e+03 2.0479263e+03 - -2.1250082e+03 1.9860503e+03 2.0440825e+03 - -2.1197804e+03 1.9932625e+03 2.0404853e+03 - -2.1126617e+03 2.0018943e+03 2.0372420e+03 - -2.1039227e+03 2.0117542e+03 2.0344485e+03 - -2.0938517e+03 2.0226220e+03 2.0321866e+03 - -2.0827504e+03 2.0342515e+03 2.0305224e+03 - -2.0709288e+03 2.0463734e+03 2.0295041e+03 - -2.0586997e+03 2.0586997e+03 2.0291614e+03 - -2.0463734e+03 2.0709288e+03 2.0295041e+03 - -2.0342515e+03 2.0827504e+03 2.0305224e+03 - -2.0226220e+03 2.0938517e+03 2.0321866e+03 - -2.0117542e+03 2.1039227e+03 2.0344485e+03 - -2.0018943e+03 2.1126617e+03 2.0372420e+03 - -1.9932625e+03 2.1197804e+03 2.0404853e+03 - -1.9860503e+03 2.1250082e+03 2.0440825e+03 - -1.9804194e+03 2.1280958e+03 2.0479263e+03 - -1.9765005e+03 2.1288180e+03 2.0518994e+03 - -1.9743945e+03 2.1269755e+03 2.0558778e+03 - -1.9741731e+03 2.1223961e+03 2.0597323e+03 - -1.9758802e+03 2.1149350e+03 2.0633309e+03 - -1.9795348e+03 2.1044745e+03 2.0665408e+03 - -1.9851325e+03 2.0909231e+03 2.0692300e+03 - -1.9926489e+03 2.0742142e+03 2.0712689e+03 - -2.0020415e+03 2.0543046e+03 2.0725312e+03 - -2.0132526e+03 2.0311730e+03 2.0728957e+03 - -2.0262118e+03 2.0048177e+03 2.0722463e+03 - -2.0408382e+03 1.9752551e+03 2.0704733e+03 - -2.0570426e+03 1.9425178e+03 2.0674737e+03 - -2.0747292e+03 1.9066529e+03 2.0631513e+03 - -2.0937978e+03 1.8677203e+03 2.0574171e+03 - -2.1141452e+03 1.8257911e+03 2.0501890e+03 - -2.1356673e+03 1.7809467e+03 2.0413914e+03 - -2.1582600e+03 1.7332767e+03 2.0309545e+03 - -2.1818221e+03 1.6828783e+03 2.0188127e+03 - -2.2062570e+03 1.6298547e+03 2.0049027e+03 - -2.2314761e+03 1.5743140e+03 1.9891600e+03 - -2.2574032e+03 1.5163675e+03 1.9715131e+03 - -2.2839815e+03 1.4561279e+03 1.9518745e+03 - -2.3111843e+03 1.3937064e+03 1.9301256e+03 - -2.3390346e+03 1.3292082e+03 1.9060901e+03 - -2.3676396e+03 1.2627232e+03 1.8794844e+03 - -2.3972604e+03 1.1943071e+03 1.8498201e+03 - -2.4284621e+03 1.1239342e+03 1.8161910e+03 - -2.4624839e+03 1.0513613e+03 1.7767495e+03 - -2.5023177e+03 9.7563942e+02 1.7271811e+03 - -2.5567673e+03 8.9267103e+02 1.6549623e+03 - -2.6636333e+03 7.7269464e+02 1.5065661e+03 - -2.9548678e+03 4.8134273e-09 1.0953719e+03 - -2.6636333e+03 -7.7269464e+02 1.5065661e+03 - -2.5567673e+03 -8.9267103e+02 1.6549623e+03 - -2.5023177e+03 -9.7563942e+02 1.7271811e+03 - -2.4624839e+03 -1.0513613e+03 1.7767495e+03 - -2.4284621e+03 -1.1239342e+03 1.8161910e+03 - -2.3972604e+03 -1.1943071e+03 1.8498201e+03 - -2.3676396e+03 -1.2627232e+03 1.8794844e+03 - -2.3390346e+03 -1.3292082e+03 1.9060901e+03 - -2.3111843e+03 -1.3937064e+03 1.9301256e+03 - -2.2839815e+03 -1.4561279e+03 1.9518745e+03 - -2.2574032e+03 -1.5163675e+03 1.9715131e+03 - -2.2314761e+03 -1.5743140e+03 1.9891600e+03 - -2.2062570e+03 -1.6298547e+03 2.0049027e+03 - -2.1818221e+03 -1.6828783e+03 2.0188127e+03 - -2.1582600e+03 -1.7332767e+03 2.0309545e+03 - -2.1356673e+03 -1.7809467e+03 2.0413914e+03 - -2.1141452e+03 -1.8257911e+03 2.0501890e+03 - -2.0937978e+03 -1.8677203e+03 2.0574171e+03 - -2.0747292e+03 -1.9066529e+03 2.0631513e+03 - -2.0570426e+03 -1.9425178e+03 2.0674737e+03 - -2.0408382e+03 -1.9752551e+03 2.0704733e+03 - -2.0262118e+03 -2.0048177e+03 2.0722463e+03 - -2.0132526e+03 -2.0311730e+03 2.0728957e+03 - -2.0020415e+03 -2.0543046e+03 2.0725312e+03 - -1.9926489e+03 -2.0742142e+03 2.0712689e+03 - -1.9851325e+03 -2.0909231e+03 2.0692300e+03 - -1.9795348e+03 -2.1044745e+03 2.0665408e+03 - -1.9758802e+03 -2.1149350e+03 2.0633309e+03 - -1.9741731e+03 -2.1223961e+03 2.0597323e+03 - -1.9743945e+03 -2.1269755e+03 2.0558778e+03 - -1.9765005e+03 -2.1288180e+03 2.0518994e+03 - -1.9804194e+03 -2.1280958e+03 2.0479263e+03 - -1.9860503e+03 -2.1250082e+03 2.0440825e+03 - -1.9932625e+03 -2.1197804e+03 2.0404853e+03 - -2.0018943e+03 -2.1126617e+03 2.0372420e+03 - -2.0117542e+03 -2.1039227e+03 2.0344485e+03 - -2.0226220e+03 -2.0938517e+03 2.0321866e+03 - -2.0342515e+03 -2.0827504e+03 2.0305224e+03 - -2.0463734e+03 -2.0709288e+03 2.0295041e+03 - -2.0586997e+03 -2.0586997e+03 2.0291614e+03 - -2.0709288e+03 -2.0463734e+03 2.0295041e+03 - -2.0827504e+03 -2.0342515e+03 2.0305224e+03 - -2.0938517e+03 -2.0226220e+03 2.0321866e+03 - -2.1039227e+03 -2.0117542e+03 2.0344485e+03 - -2.1126617e+03 -2.0018943e+03 2.0372420e+03 - -2.1197804e+03 -1.9932625e+03 2.0404853e+03 - -2.1250082e+03 -1.9860503e+03 2.0440825e+03 - -2.1280958e+03 -1.9804194e+03 2.0479263e+03 - -2.1288180e+03 -1.9765005e+03 2.0518994e+03 - -2.1269755e+03 -1.9743945e+03 2.0558778e+03 - -2.1223961e+03 -1.9741731e+03 2.0597323e+03 - -2.1149350e+03 -1.9758802e+03 2.0633309e+03 - -2.1044745e+03 -1.9795348e+03 2.0665408e+03 - -2.0909231e+03 -1.9851325e+03 2.0692300e+03 - -2.0742142e+03 -1.9926489e+03 2.0712689e+03 - -2.0543046e+03 -2.0020415e+03 2.0725312e+03 - -2.0311730e+03 -2.0132526e+03 2.0728957e+03 - -2.0048177e+03 -2.0262118e+03 2.0722463e+03 - -1.9752551e+03 -2.0408382e+03 2.0704733e+03 - -1.9425178e+03 -2.0570426e+03 2.0674737e+03 - -1.9066529e+03 -2.0747292e+03 2.0631513e+03 - -1.8677203e+03 -2.0937978e+03 2.0574171e+03 - -1.8257911e+03 -2.1141452e+03 2.0501890e+03 - -1.7809467e+03 -2.1356673e+03 2.0413914e+03 - -1.7332767e+03 -2.1582600e+03 2.0309545e+03 - -1.6828783e+03 -2.1818221e+03 2.0188127e+03 - -1.6298547e+03 -2.2062570e+03 2.0049027e+03 - -1.5743140e+03 -2.2314761e+03 1.9891600e+03 - -1.5163675e+03 -2.2574032e+03 1.9715131e+03 - -1.4561279e+03 -2.2839815e+03 1.9518745e+03 - -1.3937064e+03 -2.3111843e+03 1.9301256e+03 - -1.3292082e+03 -2.3390346e+03 1.9060901e+03 - -1.2627232e+03 -2.3676396e+03 1.8794844e+03 - -1.1943071e+03 -2.3972604e+03 1.8498201e+03 - -1.1239342e+03 -2.4284621e+03 1.8161910e+03 - -1.0513613e+03 -2.4624839e+03 1.7767495e+03 - -9.7563942e+02 -2.5023177e+03 1.7271811e+03 - -8.9267103e+02 -2.5567673e+03 1.6549623e+03 - -7.7269464e+02 -2.6636333e+03 1.5065661e+03 - 0.0000000e+00 -2.9548678e+03 1.0953719e+03 - 7.7269464e+02 -2.6636333e+03 1.5065661e+03 - 8.9267103e+02 -2.5567673e+03 1.6549623e+03 - 9.7563942e+02 -2.5023177e+03 1.7271811e+03 - 1.0513613e+03 -2.4624839e+03 1.7767495e+03 - 1.1239342e+03 -2.4284621e+03 1.8161910e+03 - 1.1943071e+03 -2.3972604e+03 1.8498201e+03 - 1.2627232e+03 -2.3676396e+03 1.8794844e+03 - 1.3292082e+03 -2.3390346e+03 1.9060901e+03 - 1.3937064e+03 -2.3111843e+03 1.9301256e+03 - 1.4561279e+03 -2.2839815e+03 1.9518745e+03 - 1.5163675e+03 -2.2574032e+03 1.9715131e+03 - 1.5743140e+03 -2.2314761e+03 1.9891600e+03 - 1.6298547e+03 -2.2062570e+03 2.0049027e+03 - 1.6828783e+03 -2.1818221e+03 2.0188127e+03 - 1.7332767e+03 -2.1582600e+03 2.0309545e+03 - 1.7809467e+03 -2.1356673e+03 2.0413914e+03 - 1.8257911e+03 -2.1141452e+03 2.0501890e+03 - 1.8677203e+03 -2.0937978e+03 2.0574171e+03 - 1.9066529e+03 -2.0747292e+03 2.0631513e+03 - 1.9425178e+03 -2.0570426e+03 2.0674737e+03 - 1.9752551e+03 -2.0408382e+03 2.0704733e+03 - 2.0048177e+03 -2.0262118e+03 2.0722463e+03 - 2.0311730e+03 -2.0132526e+03 2.0728957e+03 - 2.0543046e+03 -2.0020415e+03 2.0725312e+03 - 2.0742142e+03 -1.9926489e+03 2.0712689e+03 - 2.0909231e+03 -1.9851325e+03 2.0692300e+03 - 2.1044745e+03 -1.9795348e+03 2.0665408e+03 - 2.1149350e+03 -1.9758802e+03 2.0633309e+03 - 2.1223961e+03 -1.9741731e+03 2.0597323e+03 - 2.1269755e+03 -1.9743945e+03 2.0558778e+03 - 2.1288180e+03 -1.9765005e+03 2.0518994e+03 - 2.1280958e+03 -1.9804194e+03 2.0479263e+03 - 2.1250082e+03 -1.9860503e+03 2.0440825e+03 - 2.1197804e+03 -1.9932625e+03 2.0404853e+03 - 2.1126617e+03 -2.0018943e+03 2.0372420e+03 - 2.1039227e+03 -2.0117542e+03 2.0344485e+03 - 2.0938517e+03 -2.0226220e+03 2.0321866e+03 - 2.0827504e+03 -2.0342515e+03 2.0305224e+03 - 2.0709288e+03 -2.0463734e+03 2.0295041e+03 - 2.0586997e+03 -2.0586997e+03 2.0291614e+03 - 2.0463734e+03 -2.0709288e+03 2.0295041e+03 - 2.0342515e+03 -2.0827504e+03 2.0305224e+03 - 2.0226220e+03 -2.0938517e+03 2.0321866e+03 - 2.0117542e+03 -2.1039227e+03 2.0344485e+03 - 2.0018943e+03 -2.1126617e+03 2.0372420e+03 - 1.9932625e+03 -2.1197804e+03 2.0404853e+03 - 1.9860503e+03 -2.1250082e+03 2.0440825e+03 - 1.9804194e+03 -2.1280958e+03 2.0479263e+03 - 1.9765005e+03 -2.1288180e+03 2.0518994e+03 - 1.9743945e+03 -2.1269755e+03 2.0558778e+03 - 1.9741731e+03 -2.1223961e+03 2.0597323e+03 - 1.9758802e+03 -2.1149350e+03 2.0633309e+03 - 1.9795348e+03 -2.1044745e+03 2.0665408e+03 - 1.9851325e+03 -2.0909231e+03 2.0692300e+03 - 1.9926489e+03 -2.0742142e+03 2.0712689e+03 - 2.0020415e+03 -2.0543046e+03 2.0725312e+03 - 2.0132526e+03 -2.0311730e+03 2.0728957e+03 - 2.0262118e+03 -2.0048177e+03 2.0722463e+03 - 2.0408382e+03 -1.9752551e+03 2.0704733e+03 - 2.0570426e+03 -1.9425178e+03 2.0674737e+03 - 2.0747292e+03 -1.9066529e+03 2.0631513e+03 - 2.0937978e+03 -1.8677203e+03 2.0574171e+03 - 2.1141452e+03 -1.8257911e+03 2.0501890e+03 - 2.1356673e+03 -1.7809467e+03 2.0413914e+03 - 2.1582600e+03 -1.7332767e+03 2.0309545e+03 - 2.1818221e+03 -1.6828783e+03 2.0188127e+03 - 2.2062570e+03 -1.6298547e+03 2.0049027e+03 - 2.2314761e+03 -1.5743140e+03 1.9891600e+03 - 2.2574032e+03 -1.5163675e+03 1.9715131e+03 - 2.2839815e+03 -1.4561279e+03 1.9518745e+03 - 2.3111843e+03 -1.3937064e+03 1.9301256e+03 - 2.3390346e+03 -1.3292082e+03 1.9060901e+03 - 2.3676396e+03 -1.2627232e+03 1.8794844e+03 - 2.3972604e+03 -1.1943071e+03 1.8498201e+03 - 2.4284621e+03 -1.1239342e+03 1.8161910e+03 - 2.4624839e+03 -1.0513613e+03 1.7767495e+03 - 2.5023177e+03 -9.7563942e+02 1.7271811e+03 - 2.5567673e+03 -8.9267103e+02 1.6549623e+03 - 2.6636333e+03 -7.7269464e+02 1.5065661e+03 - 2.9548678e+03 -2.4067136e-09 1.0953719e+03 - 3.0193576e+03 0.0000000e+00 1.0008894e+03 - 2.9493209e+03 4.3009247e+02 1.0997273e+03 - 2.8297437e+03 6.9397545e+02 1.2673449e+03 - 2.7309799e+03 8.5276944e+02 1.4034785e+03 - 2.6551641e+03 9.6705532e+02 1.5050015e+03 - 2.5943206e+03 1.0615812e+03 1.5832556e+03 - 2.5428174e+03 1.1459500e+03 1.6462964e+03 - 2.4973450e+03 1.2241916e+03 1.6989057e+03 - 2.4559782e+03 1.2981364e+03 1.7439169e+03 - 2.4175762e+03 1.3686592e+03 1.7830656e+03 - 2.3814516e+03 1.4361817e+03 1.8174585e+03 - 2.3471893e+03 1.5008953e+03 1.8478305e+03 - 2.3145432e+03 1.5628674e+03 1.8746904e+03 - 2.2833764e+03 1.6220962e+03 1.8984057e+03 - 2.2536239e+03 1.6785404e+03 1.9192549e+03 - 2.2252699e+03 1.7321366e+03 1.9374592e+03 - 2.1983320e+03 1.7828100e+03 1.9532034e+03 - 2.1728515e+03 1.8304814e+03 1.9666499e+03 - 2.1488857e+03 1.8750714e+03 1.9779469e+03 - 2.1265027e+03 1.9165049e+03 1.9872355e+03 - 2.1057771e+03 1.9547132e+03 1.9946532e+03 - 2.0867869e+03 1.9896369e+03 2.0003369e+03 - 2.0696100e+03 2.0212280e+03 2.0044249e+03 - 2.0543217e+03 2.0494524e+03 2.0070579e+03 - 2.0409919e+03 2.0742918e+03 2.0083796e+03 - 2.0296823e+03 2.0957461e+03 2.0085371e+03 - 2.0204434e+03 2.1138353e+03 2.0076808e+03 - 2.0133119e+03 2.1286023e+03 2.0059636e+03 - 2.0083070e+03 2.1401141e+03 2.0035404e+03 - 2.0054280e+03 2.1484645e+03 2.0005672e+03 - 2.0046509e+03 2.1537748e+03 1.9971990e+03 - 2.0059259e+03 2.1561957e+03 1.9935891e+03 - 2.0091743e+03 2.1559073e+03 1.9898864e+03 - 2.0142870e+03 2.1531191e+03 1.9862336e+03 - 2.0211232e+03 2.1480689e+03 1.9827645e+03 - 2.0295092e+03 2.1410210e+03 1.9796021e+03 - 2.0392394e+03 2.1322632e+03 1.9768555e+03 - 2.0500775e+03 2.1221029e+03 1.9746180e+03 - 2.0617587e+03 2.1108627e+03 1.9729644e+03 - 2.0739940e+03 2.0988745e+03 1.9719499e+03 - 2.0864740e+03 2.0864740e+03 1.9716079e+03 - 2.0988745e+03 2.0739940e+03 1.9719499e+03 - 2.1108627e+03 2.0617587e+03 1.9729644e+03 - 2.1221029e+03 2.0500775e+03 1.9746180e+03 - 2.1322632e+03 2.0392394e+03 1.9768555e+03 - 2.1410210e+03 2.0295092e+03 1.9796021e+03 - 2.1480689e+03 2.0211232e+03 1.9827645e+03 - 2.1531191e+03 2.0142870e+03 1.9862336e+03 - 2.1559073e+03 2.0091743e+03 1.9898864e+03 - 2.1561957e+03 2.0059259e+03 1.9935891e+03 - 2.1537748e+03 2.0046509e+03 1.9971990e+03 - 2.1484645e+03 2.0054280e+03 2.0005672e+03 - 2.1401141e+03 2.0083070e+03 2.0035404e+03 - 2.1286023e+03 2.0133119e+03 2.0059636e+03 - 2.1138353e+03 2.0204434e+03 2.0076808e+03 - 2.0957461e+03 2.0296823e+03 2.0085371e+03 - 2.0742918e+03 2.0409919e+03 2.0083796e+03 - 2.0494524e+03 2.0543217e+03 2.0070579e+03 - 2.0212280e+03 2.0696100e+03 2.0044249e+03 - 1.9896369e+03 2.0867869e+03 2.0003369e+03 - 1.9547132e+03 2.1057771e+03 1.9946532e+03 - 1.9165049e+03 2.1265027e+03 1.9872355e+03 - 1.8750714e+03 2.1488857e+03 1.9779469e+03 - 1.8304814e+03 2.1728515e+03 1.9666499e+03 - 1.7828100e+03 2.1983320e+03 1.9532034e+03 - 1.7321366e+03 2.2252699e+03 1.9374592e+03 - 1.6785404e+03 2.2536239e+03 1.9192549e+03 - 1.6220962e+03 2.2833764e+03 1.8984057e+03 - 1.5628674e+03 2.3145432e+03 1.8746904e+03 - 1.5008953e+03 2.3471893e+03 1.8478305e+03 - 1.4361817e+03 2.3814516e+03 1.8174585e+03 - 1.3686592e+03 2.4175762e+03 1.7830656e+03 - 1.2981364e+03 2.4559782e+03 1.7439169e+03 - 1.2241916e+03 2.4973450e+03 1.6989057e+03 - 1.1459500e+03 2.5428174e+03 1.6462964e+03 - 1.0615812e+03 2.5943206e+03 1.5832556e+03 - 9.6705532e+02 2.6551641e+03 1.5050015e+03 - 8.5276944e+02 2.7309799e+03 1.4034785e+03 - 6.9397545e+02 2.8297437e+03 1.2673449e+03 - 4.3009247e+02 2.9493209e+03 1.0997273e+03 - 2.4067136e-09 3.0193576e+03 1.0008894e+03 - -4.3009247e+02 2.9493209e+03 1.0997273e+03 - -6.9397545e+02 2.8297437e+03 1.2673449e+03 - -8.5276944e+02 2.7309799e+03 1.4034785e+03 - -9.6705532e+02 2.6551641e+03 1.5050015e+03 - -1.0615812e+03 2.5943206e+03 1.5832556e+03 - -1.1459500e+03 2.5428174e+03 1.6462964e+03 - -1.2241916e+03 2.4973450e+03 1.6989057e+03 - -1.2981364e+03 2.4559782e+03 1.7439169e+03 - -1.3686592e+03 2.4175762e+03 1.7830656e+03 - -1.4361817e+03 2.3814516e+03 1.8174585e+03 - -1.5008953e+03 2.3471893e+03 1.8478305e+03 - -1.5628674e+03 2.3145432e+03 1.8746904e+03 - -1.6220962e+03 2.2833764e+03 1.8984057e+03 - -1.6785404e+03 2.2536239e+03 1.9192549e+03 - -1.7321366e+03 2.2252699e+03 1.9374592e+03 - -1.7828100e+03 2.1983320e+03 1.9532034e+03 - -1.8304814e+03 2.1728515e+03 1.9666499e+03 - -1.8750714e+03 2.1488857e+03 1.9779469e+03 - -1.9165049e+03 2.1265027e+03 1.9872355e+03 - -1.9547132e+03 2.1057771e+03 1.9946532e+03 - -1.9896369e+03 2.0867869e+03 2.0003369e+03 - -2.0212280e+03 2.0696100e+03 2.0044249e+03 - -2.0494524e+03 2.0543217e+03 2.0070579e+03 - -2.0742918e+03 2.0409919e+03 2.0083796e+03 - -2.0957461e+03 2.0296823e+03 2.0085371e+03 - -2.1138353e+03 2.0204434e+03 2.0076808e+03 - -2.1286023e+03 2.0133119e+03 2.0059636e+03 - -2.1401141e+03 2.0083070e+03 2.0035404e+03 - -2.1484645e+03 2.0054280e+03 2.0005672e+03 - -2.1537748e+03 2.0046509e+03 1.9971990e+03 - -2.1561957e+03 2.0059259e+03 1.9935891e+03 - -2.1559073e+03 2.0091743e+03 1.9898864e+03 - -2.1531191e+03 2.0142870e+03 1.9862336e+03 - -2.1480689e+03 2.0211232e+03 1.9827645e+03 - -2.1410210e+03 2.0295092e+03 1.9796021e+03 - -2.1322632e+03 2.0392394e+03 1.9768555e+03 - -2.1221029e+03 2.0500775e+03 1.9746180e+03 - -2.1108627e+03 2.0617587e+03 1.9729644e+03 - -2.0988745e+03 2.0739940e+03 1.9719499e+03 - -2.0864740e+03 2.0864740e+03 1.9716079e+03 - -2.0739940e+03 2.0988745e+03 1.9719499e+03 - -2.0617587e+03 2.1108627e+03 1.9729644e+03 - -2.0500775e+03 2.1221029e+03 1.9746180e+03 - -2.0392394e+03 2.1322632e+03 1.9768555e+03 - -2.0295092e+03 2.1410210e+03 1.9796021e+03 - -2.0211232e+03 2.1480689e+03 1.9827645e+03 - -2.0142870e+03 2.1531191e+03 1.9862336e+03 - -2.0091743e+03 2.1559073e+03 1.9898864e+03 - -2.0059259e+03 2.1561957e+03 1.9935891e+03 - -2.0046509e+03 2.1537748e+03 1.9971990e+03 - -2.0054280e+03 2.1484645e+03 2.0005672e+03 - -2.0083070e+03 2.1401141e+03 2.0035404e+03 - -2.0133119e+03 2.1286023e+03 2.0059636e+03 - -2.0204434e+03 2.1138353e+03 2.0076808e+03 - -2.0296823e+03 2.0957461e+03 2.0085371e+03 - -2.0409919e+03 2.0742918e+03 2.0083796e+03 - -2.0543217e+03 2.0494524e+03 2.0070579e+03 - -2.0696100e+03 2.0212280e+03 2.0044249e+03 - -2.0867869e+03 1.9896369e+03 2.0003369e+03 - -2.1057771e+03 1.9547132e+03 1.9946532e+03 - -2.1265027e+03 1.9165049e+03 1.9872355e+03 - -2.1488857e+03 1.8750714e+03 1.9779469e+03 - -2.1728515e+03 1.8304814e+03 1.9666499e+03 - -2.1983320e+03 1.7828100e+03 1.9532034e+03 - -2.2252699e+03 1.7321366e+03 1.9374592e+03 - -2.2536239e+03 1.6785404e+03 1.9192549e+03 - -2.2833764e+03 1.6220962e+03 1.8984057e+03 - -2.3145432e+03 1.5628674e+03 1.8746904e+03 - -2.3471893e+03 1.5008953e+03 1.8478305e+03 - -2.3814516e+03 1.4361817e+03 1.8174585e+03 - -2.4175762e+03 1.3686592e+03 1.7830656e+03 - -2.4559782e+03 1.2981364e+03 1.7439169e+03 - -2.4973450e+03 1.2241916e+03 1.6989057e+03 - -2.5428174e+03 1.1459500e+03 1.6462964e+03 - -2.5943206e+03 1.0615812e+03 1.5832556e+03 - -2.6551641e+03 9.6705532e+02 1.5050015e+03 - -2.7309799e+03 8.5276944e+02 1.4034785e+03 - -2.8297437e+03 6.9397545e+02 1.2673449e+03 - -2.9493209e+03 4.3009247e+02 1.0997273e+03 - -3.0193576e+03 9.6268545e-09 1.0008894e+03 - -2.9493209e+03 -4.3009247e+02 1.0997273e+03 - -2.8297437e+03 -6.9397545e+02 1.2673449e+03 - -2.7309799e+03 -8.5276944e+02 1.4034785e+03 - -2.6551641e+03 -9.6705532e+02 1.5050015e+03 - -2.5943206e+03 -1.0615812e+03 1.5832556e+03 - -2.5428174e+03 -1.1459500e+03 1.6462964e+03 - -2.4973450e+03 -1.2241916e+03 1.6989057e+03 - -2.4559782e+03 -1.2981364e+03 1.7439169e+03 - -2.4175762e+03 -1.3686592e+03 1.7830656e+03 - -2.3814516e+03 -1.4361817e+03 1.8174585e+03 - -2.3471893e+03 -1.5008953e+03 1.8478305e+03 - -2.3145432e+03 -1.5628674e+03 1.8746904e+03 - -2.2833764e+03 -1.6220962e+03 1.8984057e+03 - -2.2536239e+03 -1.6785404e+03 1.9192549e+03 - -2.2252699e+03 -1.7321366e+03 1.9374592e+03 - -2.1983320e+03 -1.7828100e+03 1.9532034e+03 - -2.1728515e+03 -1.8304814e+03 1.9666499e+03 - -2.1488857e+03 -1.8750714e+03 1.9779469e+03 - -2.1265027e+03 -1.9165049e+03 1.9872355e+03 - -2.1057771e+03 -1.9547132e+03 1.9946532e+03 - -2.0867869e+03 -1.9896369e+03 2.0003369e+03 - -2.0696100e+03 -2.0212280e+03 2.0044249e+03 - -2.0543217e+03 -2.0494524e+03 2.0070579e+03 - -2.0409919e+03 -2.0742918e+03 2.0083796e+03 - -2.0296823e+03 -2.0957461e+03 2.0085371e+03 - -2.0204434e+03 -2.1138353e+03 2.0076808e+03 - -2.0133119e+03 -2.1286023e+03 2.0059636e+03 - -2.0083070e+03 -2.1401141e+03 2.0035404e+03 - -2.0054280e+03 -2.1484645e+03 2.0005672e+03 - -2.0046509e+03 -2.1537748e+03 1.9971990e+03 - -2.0059259e+03 -2.1561957e+03 1.9935891e+03 - -2.0091743e+03 -2.1559073e+03 1.9898864e+03 - -2.0142870e+03 -2.1531191e+03 1.9862336e+03 - -2.0211232e+03 -2.1480689e+03 1.9827645e+03 - -2.0295092e+03 -2.1410210e+03 1.9796021e+03 - -2.0392394e+03 -2.1322632e+03 1.9768555e+03 - -2.0500775e+03 -2.1221029e+03 1.9746180e+03 - -2.0617587e+03 -2.1108627e+03 1.9729644e+03 - -2.0739940e+03 -2.0988745e+03 1.9719499e+03 - -2.0864740e+03 -2.0864740e+03 1.9716079e+03 - -2.0988745e+03 -2.0739940e+03 1.9719499e+03 - -2.1108627e+03 -2.0617587e+03 1.9729644e+03 - -2.1221029e+03 -2.0500775e+03 1.9746180e+03 - -2.1322632e+03 -2.0392394e+03 1.9768555e+03 - -2.1410210e+03 -2.0295092e+03 1.9796021e+03 - -2.1480689e+03 -2.0211232e+03 1.9827645e+03 - -2.1531191e+03 -2.0142870e+03 1.9862336e+03 - -2.1559073e+03 -2.0091743e+03 1.9898864e+03 - -2.1561957e+03 -2.0059259e+03 1.9935891e+03 - -2.1537748e+03 -2.0046509e+03 1.9971990e+03 - -2.1484645e+03 -2.0054280e+03 2.0005672e+03 - -2.1401141e+03 -2.0083070e+03 2.0035404e+03 - -2.1286023e+03 -2.0133119e+03 2.0059636e+03 - -2.1138353e+03 -2.0204434e+03 2.0076808e+03 - -2.0957461e+03 -2.0296823e+03 2.0085371e+03 - -2.0742918e+03 -2.0409919e+03 2.0083796e+03 - -2.0494524e+03 -2.0543217e+03 2.0070579e+03 - -2.0212280e+03 -2.0696100e+03 2.0044249e+03 - -1.9896369e+03 -2.0867869e+03 2.0003369e+03 - -1.9547132e+03 -2.1057771e+03 1.9946532e+03 - -1.9165049e+03 -2.1265027e+03 1.9872355e+03 - -1.8750714e+03 -2.1488857e+03 1.9779469e+03 - -1.8304814e+03 -2.1728515e+03 1.9666499e+03 - -1.7828100e+03 -2.1983320e+03 1.9532034e+03 - -1.7321366e+03 -2.2252699e+03 1.9374592e+03 - -1.6785404e+03 -2.2536239e+03 1.9192549e+03 - -1.6220962e+03 -2.2833764e+03 1.8984057e+03 - -1.5628674e+03 -2.3145432e+03 1.8746904e+03 - -1.5008953e+03 -2.3471893e+03 1.8478305e+03 - -1.4361817e+03 -2.3814516e+03 1.8174585e+03 - -1.3686592e+03 -2.4175762e+03 1.7830656e+03 - -1.2981364e+03 -2.4559782e+03 1.7439169e+03 - -1.2241916e+03 -2.4973450e+03 1.6989057e+03 - -1.1459500e+03 -2.5428174e+03 1.6462964e+03 - -1.0615812e+03 -2.5943206e+03 1.5832556e+03 - -9.6705532e+02 -2.6551641e+03 1.5050015e+03 - -8.5276944e+02 -2.7309799e+03 1.4034785e+03 - -6.9397545e+02 -2.8297437e+03 1.2673449e+03 - -4.3009247e+02 -2.9493209e+03 1.0997273e+03 - -2.4067136e-09 -3.0193576e+03 1.0008894e+03 - 4.3009247e+02 -2.9493209e+03 1.0997273e+03 - 6.9397545e+02 -2.8297437e+03 1.2673449e+03 - 8.5276944e+02 -2.7309799e+03 1.4034785e+03 - 9.6705532e+02 -2.6551641e+03 1.5050015e+03 - 1.0615812e+03 -2.5943206e+03 1.5832556e+03 - 1.1459500e+03 -2.5428174e+03 1.6462964e+03 - 1.2241916e+03 -2.4973450e+03 1.6989057e+03 - 1.2981364e+03 -2.4559782e+03 1.7439169e+03 - 1.3686592e+03 -2.4175762e+03 1.7830656e+03 - 1.4361817e+03 -2.3814516e+03 1.8174585e+03 - 1.5008953e+03 -2.3471893e+03 1.8478305e+03 - 1.5628674e+03 -2.3145432e+03 1.8746904e+03 - 1.6220962e+03 -2.2833764e+03 1.8984057e+03 - 1.6785404e+03 -2.2536239e+03 1.9192549e+03 - 1.7321366e+03 -2.2252699e+03 1.9374592e+03 - 1.7828100e+03 -2.1983320e+03 1.9532034e+03 - 1.8304814e+03 -2.1728515e+03 1.9666499e+03 - 1.8750714e+03 -2.1488857e+03 1.9779469e+03 - 1.9165049e+03 -2.1265027e+03 1.9872355e+03 - 1.9547132e+03 -2.1057771e+03 1.9946532e+03 - 1.9896369e+03 -2.0867869e+03 2.0003369e+03 - 2.0212280e+03 -2.0696100e+03 2.0044249e+03 - 2.0494524e+03 -2.0543217e+03 2.0070579e+03 - 2.0742918e+03 -2.0409919e+03 2.0083796e+03 - 2.0957461e+03 -2.0296823e+03 2.0085371e+03 - 2.1138353e+03 -2.0204434e+03 2.0076808e+03 - 2.1286023e+03 -2.0133119e+03 2.0059636e+03 - 2.1401141e+03 -2.0083070e+03 2.0035404e+03 - 2.1484645e+03 -2.0054280e+03 2.0005672e+03 - 2.1537748e+03 -2.0046509e+03 1.9971990e+03 - 2.1561957e+03 -2.0059259e+03 1.9935891e+03 - 2.1559073e+03 -2.0091743e+03 1.9898864e+03 - 2.1531191e+03 -2.0142870e+03 1.9862336e+03 - 2.1480689e+03 -2.0211232e+03 1.9827645e+03 - 2.1410210e+03 -2.0295092e+03 1.9796021e+03 - 2.1322632e+03 -2.0392394e+03 1.9768555e+03 - 2.1221029e+03 -2.0500775e+03 1.9746180e+03 - 2.1108627e+03 -2.0617587e+03 1.9729644e+03 - 2.0988745e+03 -2.0739940e+03 1.9719499e+03 - 2.0864740e+03 -2.0864740e+03 1.9716079e+03 - 2.0739940e+03 -2.0988745e+03 1.9719499e+03 - 2.0617587e+03 -2.1108627e+03 1.9729644e+03 - 2.0500775e+03 -2.1221029e+03 1.9746180e+03 - 2.0392394e+03 -2.1322632e+03 1.9768555e+03 - 2.0295092e+03 -2.1410210e+03 1.9796021e+03 - 2.0211232e+03 -2.1480689e+03 1.9827645e+03 - 2.0142870e+03 -2.1531191e+03 1.9862336e+03 - 2.0091743e+03 -2.1559073e+03 1.9898864e+03 - 2.0059259e+03 -2.1561957e+03 1.9935891e+03 - 2.0046509e+03 -2.1537748e+03 1.9971990e+03 - 2.0054280e+03 -2.1484645e+03 2.0005672e+03 - 2.0083070e+03 -2.1401141e+03 2.0035404e+03 - 2.0133119e+03 -2.1286023e+03 2.0059636e+03 - 2.0204434e+03 -2.1138353e+03 2.0076808e+03 - 2.0296823e+03 -2.0957461e+03 2.0085371e+03 - 2.0409919e+03 -2.0742918e+03 2.0083796e+03 - 2.0543217e+03 -2.0494524e+03 2.0070579e+03 - 2.0696100e+03 -2.0212280e+03 2.0044249e+03 - 2.0867869e+03 -1.9896369e+03 2.0003369e+03 - 2.1057771e+03 -1.9547132e+03 1.9946532e+03 - 2.1265027e+03 -1.9165049e+03 1.9872355e+03 - 2.1488857e+03 -1.8750714e+03 1.9779469e+03 - 2.1728515e+03 -1.8304814e+03 1.9666499e+03 - 2.1983320e+03 -1.7828100e+03 1.9532034e+03 - 2.2252699e+03 -1.7321366e+03 1.9374592e+03 - 2.2536239e+03 -1.6785404e+03 1.9192549e+03 - 2.2833764e+03 -1.6220962e+03 1.8984057e+03 - 2.3145432e+03 -1.5628674e+03 1.8746904e+03 - 2.3471893e+03 -1.5008953e+03 1.8478305e+03 - 2.3814516e+03 -1.4361817e+03 1.8174585e+03 - 2.4175762e+03 -1.3686592e+03 1.7830656e+03 - 2.4559782e+03 -1.2981364e+03 1.7439169e+03 - 2.4973450e+03 -1.2241916e+03 1.6989057e+03 - 2.5428174e+03 -1.1459500e+03 1.6462964e+03 - 2.5943206e+03 -1.0615812e+03 1.5832556e+03 - 2.6551641e+03 -9.6705532e+02 1.5050015e+03 - 2.7309799e+03 -8.5276944e+02 1.4034785e+03 - 2.8297437e+03 -6.9397545e+02 1.2673449e+03 - 2.9493209e+03 -4.3009247e+02 1.0997273e+03 - 3.0193576e+03 -2.4067136e-09 1.0008894e+03 - 3.0797102e+03 2.4067136e-09 9.0862974e+02 - 3.0526412e+03 2.7490808e+02 9.4675878e+02 - 2.9861501e+03 5.0951221e+02 1.0399171e+03 - 2.9058878e+03 6.9457933e+02 1.1510769e+03 - 2.8274297e+03 8.4104621e+02 1.2577193e+03 - 2.7559173e+03 9.6190021e+02 1.3523892e+03 - 2.6917224e+03 1.0662840e+03 1.4345459e+03 - 2.6338101e+03 1.1597614e+03 1.5057151e+03 - 2.5809940e+03 1.2455875e+03 1.5676735e+03 - 2.5322865e+03 1.3256605e+03 1.6219386e+03 - 2.4869454e+03 1.4010927e+03 1.6696980e+03 - 2.4444385e+03 1.4725358e+03 1.7118576e+03 - 2.4043954e+03 1.5403653e+03 1.7491094e+03 - 2.3665660e+03 1.6047882e+03 1.7819897e+03 - 2.3307887e+03 1.6659060e+03 1.8109238e+03 - 2.2969667e+03 1.7237543e+03 1.8362588e+03 - 2.2650514e+03 1.7783269e+03 1.8582867e+03 - 2.2350289e+03 1.8295930e+03 1.8772615e+03 - 2.2069117e+03 1.8775071e+03 1.8934110e+03 - 2.1807305e+03 1.9220175e+03 1.9069454e+03 - 2.1565297e+03 1.9630723e+03 1.9180634e+03 - 2.1343617e+03 2.0006232e+03 1.9269564e+03 - 2.1142838e+03 2.0346302e+03 1.9338118e+03 - 2.0963543e+03 2.0650644e+03 1.9388148e+03 - 2.0806288e+03 2.0919110e+03 1.9421501e+03 - 2.0671573e+03 2.1151729e+03 1.9440025e+03 - 2.0559807e+03 2.1348725e+03 1.9445573e+03 - 2.0471270e+03 2.1510553e+03 1.9440001e+03 - 2.0406083e+03 2.1637917e+03 1.9425164e+03 - 2.0364167e+03 2.1731797e+03 1.9402908e+03 - 2.0345212e+03 2.1793467e+03 1.9375054e+03 - 2.0348645e+03 2.1824508e+03 1.9343385e+03 - 2.0373593e+03 2.1826819e+03 1.9309628e+03 - 2.0418868e+03 2.1802616e+03 1.9275425e+03 - 2.0482944e+03 2.1754420e+03 1.9242316e+03 - 2.0563947e+03 2.1685045e+03 1.9211708e+03 - 2.0659663e+03 2.1597560e+03 1.9184850e+03 - 2.0767546e+03 2.1495253e+03 1.9162805e+03 - 2.0884748e+03 2.1381581e+03 1.9146428e+03 - 2.1008156e+03 2.1260107e+03 1.9136347e+03 - 2.1134438e+03 2.1134438e+03 1.9132943e+03 - 2.1260107e+03 2.1008156e+03 1.9136347e+03 - 2.1381581e+03 2.0884748e+03 1.9146428e+03 - 2.1495253e+03 2.0767546e+03 1.9162805e+03 - 2.1597560e+03 2.0659663e+03 1.9184850e+03 - 2.1685045e+03 2.0563947e+03 1.9211708e+03 - 2.1754420e+03 2.0482944e+03 1.9242316e+03 - 2.1802616e+03 2.0418868e+03 1.9275425e+03 - 2.1826819e+03 2.0373593e+03 1.9309628e+03 - 2.1824508e+03 2.0348645e+03 1.9343385e+03 - 2.1793467e+03 2.0345212e+03 1.9375054e+03 - 2.1731797e+03 2.0364167e+03 1.9402908e+03 - 2.1637917e+03 2.0406083e+03 1.9425164e+03 - 2.1510553e+03 2.0471270e+03 1.9440001e+03 - 2.1348725e+03 2.0559807e+03 1.9445573e+03 - 2.1151729e+03 2.0671573e+03 1.9440025e+03 - 2.0919110e+03 2.0806288e+03 1.9421501e+03 - 2.0650644e+03 2.0963543e+03 1.9388148e+03 - 2.0346302e+03 2.1142838e+03 1.9338118e+03 - 2.0006232e+03 2.1343617e+03 1.9269564e+03 - 1.9630723e+03 2.1565297e+03 1.9180634e+03 - 1.9220175e+03 2.1807305e+03 1.9069454e+03 - 1.8775071e+03 2.2069117e+03 1.8934110e+03 - 1.8295930e+03 2.2350289e+03 1.8772615e+03 - 1.7783269e+03 2.2650514e+03 1.8582867e+03 - 1.7237543e+03 2.2969667e+03 1.8362588e+03 - 1.6659060e+03 2.3307887e+03 1.8109238e+03 - 1.6047882e+03 2.3665660e+03 1.7819897e+03 - 1.5403653e+03 2.4043954e+03 1.7491094e+03 - 1.4725358e+03 2.4444385e+03 1.7118576e+03 - 1.4010927e+03 2.4869454e+03 1.6696980e+03 - 1.3256605e+03 2.5322865e+03 1.6219386e+03 - 1.2455875e+03 2.5809940e+03 1.5676735e+03 - 1.1597614e+03 2.6338101e+03 1.5057151e+03 - 1.0662840e+03 2.6917224e+03 1.4345459e+03 - 9.6190021e+02 2.7559173e+03 1.3523892e+03 - 8.4104621e+02 2.8274297e+03 1.2577193e+03 - 6.9457933e+02 2.9058878e+03 1.1510769e+03 - 5.0951221e+02 2.9861501e+03 1.0399171e+03 - 2.7490808e+02 3.0526412e+03 9.4675878e+02 - 0.0000000e+00 3.0797102e+03 9.0862974e+02 - -2.7490808e+02 3.0526412e+03 9.4675878e+02 - -5.0951221e+02 2.9861501e+03 1.0399171e+03 - -6.9457933e+02 2.9058878e+03 1.1510769e+03 - -8.4104621e+02 2.8274297e+03 1.2577193e+03 - -9.6190021e+02 2.7559173e+03 1.3523892e+03 - -1.0662840e+03 2.6917224e+03 1.4345459e+03 - -1.1597614e+03 2.6338101e+03 1.5057151e+03 - -1.2455875e+03 2.5809940e+03 1.5676735e+03 - -1.3256605e+03 2.5322865e+03 1.6219386e+03 - -1.4010927e+03 2.4869454e+03 1.6696980e+03 - -1.4725358e+03 2.4444385e+03 1.7118576e+03 - -1.5403653e+03 2.4043954e+03 1.7491094e+03 - -1.6047882e+03 2.3665660e+03 1.7819897e+03 - -1.6659060e+03 2.3307887e+03 1.8109238e+03 - -1.7237543e+03 2.2969667e+03 1.8362588e+03 - -1.7783269e+03 2.2650514e+03 1.8582867e+03 - -1.8295930e+03 2.2350289e+03 1.8772615e+03 - -1.8775071e+03 2.2069117e+03 1.8934110e+03 - -1.9220175e+03 2.1807305e+03 1.9069454e+03 - -1.9630723e+03 2.1565297e+03 1.9180634e+03 - -2.0006232e+03 2.1343617e+03 1.9269564e+03 - -2.0346302e+03 2.1142838e+03 1.9338118e+03 - -2.0650644e+03 2.0963543e+03 1.9388148e+03 - -2.0919110e+03 2.0806288e+03 1.9421501e+03 - -2.1151729e+03 2.0671573e+03 1.9440025e+03 - -2.1348725e+03 2.0559807e+03 1.9445573e+03 - -2.1510553e+03 2.0471270e+03 1.9440001e+03 - -2.1637917e+03 2.0406083e+03 1.9425164e+03 - -2.1731797e+03 2.0364167e+03 1.9402908e+03 - -2.1793467e+03 2.0345212e+03 1.9375054e+03 - -2.1824508e+03 2.0348645e+03 1.9343385e+03 - -2.1826819e+03 2.0373593e+03 1.9309628e+03 - -2.1802616e+03 2.0418868e+03 1.9275425e+03 - -2.1754420e+03 2.0482944e+03 1.9242316e+03 - -2.1685045e+03 2.0563947e+03 1.9211708e+03 - -2.1597560e+03 2.0659663e+03 1.9184850e+03 - -2.1495253e+03 2.0767546e+03 1.9162805e+03 - -2.1381581e+03 2.0884748e+03 1.9146428e+03 - -2.1260107e+03 2.1008156e+03 1.9136347e+03 - -2.1134438e+03 2.1134438e+03 1.9132943e+03 - -2.1008156e+03 2.1260107e+03 1.9136347e+03 - -2.0884748e+03 2.1381581e+03 1.9146428e+03 - -2.0767546e+03 2.1495253e+03 1.9162805e+03 - -2.0659663e+03 2.1597560e+03 1.9184850e+03 - -2.0563947e+03 2.1685045e+03 1.9211708e+03 - -2.0482944e+03 2.1754420e+03 1.9242316e+03 - -2.0418868e+03 2.1802616e+03 1.9275425e+03 - -2.0373593e+03 2.1826819e+03 1.9309628e+03 - -2.0348645e+03 2.1824508e+03 1.9343385e+03 - -2.0345212e+03 2.1793467e+03 1.9375054e+03 - -2.0364167e+03 2.1731797e+03 1.9402908e+03 - -2.0406083e+03 2.1637917e+03 1.9425164e+03 - -2.0471270e+03 2.1510553e+03 1.9440001e+03 - -2.0559807e+03 2.1348725e+03 1.9445573e+03 - -2.0671573e+03 2.1151729e+03 1.9440025e+03 - -2.0806288e+03 2.0919110e+03 1.9421501e+03 - -2.0963543e+03 2.0650644e+03 1.9388148e+03 - -2.1142838e+03 2.0346302e+03 1.9338118e+03 - -2.1343617e+03 2.0006232e+03 1.9269564e+03 - -2.1565297e+03 1.9630723e+03 1.9180634e+03 - -2.1807305e+03 1.9220175e+03 1.9069454e+03 - -2.2069117e+03 1.8775071e+03 1.8934110e+03 - -2.2350289e+03 1.8295930e+03 1.8772615e+03 - -2.2650514e+03 1.7783269e+03 1.8582867e+03 - -2.2969667e+03 1.7237543e+03 1.8362588e+03 - -2.3307887e+03 1.6659060e+03 1.8109238e+03 - -2.3665660e+03 1.6047882e+03 1.7819897e+03 - -2.4043954e+03 1.5403653e+03 1.7491094e+03 - -2.4444385e+03 1.4725358e+03 1.7118576e+03 - -2.4869454e+03 1.4010927e+03 1.6696980e+03 - -2.5322865e+03 1.3256605e+03 1.6219386e+03 - -2.5809940e+03 1.2455875e+03 1.5676735e+03 - -2.6338101e+03 1.1597614e+03 1.5057151e+03 - -2.6917224e+03 1.0662840e+03 1.4345459e+03 - -2.7559173e+03 9.6190021e+02 1.3523892e+03 - -2.8274297e+03 8.4104621e+02 1.2577193e+03 - -2.9058878e+03 6.9457933e+02 1.1510769e+03 - -2.9861501e+03 5.0951221e+02 1.0399171e+03 - -3.0526412e+03 2.7490808e+02 9.4675878e+02 - -3.0797102e+03 2.4067136e-09 9.0862974e+02 - -3.0526412e+03 -2.7490808e+02 9.4675878e+02 - -2.9861501e+03 -5.0951221e+02 1.0399171e+03 - -2.9058878e+03 -6.9457933e+02 1.1510769e+03 - -2.8274297e+03 -8.4104621e+02 1.2577193e+03 - -2.7559173e+03 -9.6190021e+02 1.3523892e+03 - -2.6917224e+03 -1.0662840e+03 1.4345459e+03 - -2.6338101e+03 -1.1597614e+03 1.5057151e+03 - -2.5809940e+03 -1.2455875e+03 1.5676735e+03 - -2.5322865e+03 -1.3256605e+03 1.6219386e+03 - -2.4869454e+03 -1.4010927e+03 1.6696980e+03 - -2.4444385e+03 -1.4725358e+03 1.7118576e+03 - -2.4043954e+03 -1.5403653e+03 1.7491094e+03 - -2.3665660e+03 -1.6047882e+03 1.7819897e+03 - -2.3307887e+03 -1.6659060e+03 1.8109238e+03 - -2.2969667e+03 -1.7237543e+03 1.8362588e+03 - -2.2650514e+03 -1.7783269e+03 1.8582867e+03 - -2.2350289e+03 -1.8295930e+03 1.8772615e+03 - -2.2069117e+03 -1.8775071e+03 1.8934110e+03 - -2.1807305e+03 -1.9220175e+03 1.9069454e+03 - -2.1565297e+03 -1.9630723e+03 1.9180634e+03 - -2.1343617e+03 -2.0006232e+03 1.9269564e+03 - -2.1142838e+03 -2.0346302e+03 1.9338118e+03 - -2.0963543e+03 -2.0650644e+03 1.9388148e+03 - -2.0806288e+03 -2.0919110e+03 1.9421501e+03 - -2.0671573e+03 -2.1151729e+03 1.9440025e+03 - -2.0559807e+03 -2.1348725e+03 1.9445573e+03 - -2.0471270e+03 -2.1510553e+03 1.9440001e+03 - -2.0406083e+03 -2.1637917e+03 1.9425164e+03 - -2.0364167e+03 -2.1731797e+03 1.9402908e+03 - -2.0345212e+03 -2.1793467e+03 1.9375054e+03 - -2.0348645e+03 -2.1824508e+03 1.9343385e+03 - -2.0373593e+03 -2.1826819e+03 1.9309628e+03 - -2.0418868e+03 -2.1802616e+03 1.9275425e+03 - -2.0482944e+03 -2.1754420e+03 1.9242316e+03 - -2.0563947e+03 -2.1685045e+03 1.9211708e+03 - -2.0659663e+03 -2.1597560e+03 1.9184850e+03 - -2.0767546e+03 -2.1495253e+03 1.9162805e+03 - -2.0884748e+03 -2.1381581e+03 1.9146428e+03 - -2.1008156e+03 -2.1260107e+03 1.9136347e+03 - -2.1134438e+03 -2.1134438e+03 1.9132943e+03 - -2.1260107e+03 -2.1008156e+03 1.9136347e+03 - -2.1381581e+03 -2.0884748e+03 1.9146428e+03 - -2.1495253e+03 -2.0767546e+03 1.9162805e+03 - -2.1597560e+03 -2.0659663e+03 1.9184850e+03 - -2.1685045e+03 -2.0563947e+03 1.9211708e+03 - -2.1754420e+03 -2.0482944e+03 1.9242316e+03 - -2.1802616e+03 -2.0418868e+03 1.9275425e+03 - -2.1826819e+03 -2.0373593e+03 1.9309628e+03 - -2.1824508e+03 -2.0348645e+03 1.9343385e+03 - -2.1793467e+03 -2.0345212e+03 1.9375054e+03 - -2.1731797e+03 -2.0364167e+03 1.9402908e+03 - -2.1637917e+03 -2.0406083e+03 1.9425164e+03 - -2.1510553e+03 -2.0471270e+03 1.9440001e+03 - -2.1348725e+03 -2.0559807e+03 1.9445573e+03 - -2.1151729e+03 -2.0671573e+03 1.9440025e+03 - -2.0919110e+03 -2.0806288e+03 1.9421501e+03 - -2.0650644e+03 -2.0963543e+03 1.9388148e+03 - -2.0346302e+03 -2.1142838e+03 1.9338118e+03 - -2.0006232e+03 -2.1343617e+03 1.9269564e+03 - -1.9630723e+03 -2.1565297e+03 1.9180634e+03 - -1.9220175e+03 -2.1807305e+03 1.9069454e+03 - -1.8775071e+03 -2.2069117e+03 1.8934110e+03 - -1.8295930e+03 -2.2350289e+03 1.8772615e+03 - -1.7783269e+03 -2.2650514e+03 1.8582867e+03 - -1.7237543e+03 -2.2969667e+03 1.8362588e+03 - -1.6659060e+03 -2.3307887e+03 1.8109238e+03 - -1.6047882e+03 -2.3665660e+03 1.7819897e+03 - -1.5403653e+03 -2.4043954e+03 1.7491094e+03 - -1.4725358e+03 -2.4444385e+03 1.7118576e+03 - -1.4010927e+03 -2.4869454e+03 1.6696980e+03 - -1.3256605e+03 -2.5322865e+03 1.6219386e+03 - -1.2455875e+03 -2.5809940e+03 1.5676735e+03 - -1.1597614e+03 -2.6338101e+03 1.5057151e+03 - -1.0662840e+03 -2.6917224e+03 1.4345459e+03 - -9.6190021e+02 -2.7559173e+03 1.3523892e+03 - -8.4104621e+02 -2.8274297e+03 1.2577193e+03 - -6.9457933e+02 -2.9058878e+03 1.1510769e+03 - -5.0951221e+02 -2.9861501e+03 1.0399171e+03 - -2.7490808e+02 -3.0526412e+03 9.4675878e+02 - 7.2201409e-09 -3.0797102e+03 9.0862974e+02 - 2.7490808e+02 -3.0526412e+03 9.4675878e+02 - 5.0951221e+02 -2.9861501e+03 1.0399171e+03 - 6.9457933e+02 -2.9058878e+03 1.1510769e+03 - 8.4104621e+02 -2.8274297e+03 1.2577193e+03 - 9.6190021e+02 -2.7559173e+03 1.3523892e+03 - 1.0662840e+03 -2.6917224e+03 1.4345459e+03 - 1.1597614e+03 -2.6338101e+03 1.5057151e+03 - 1.2455875e+03 -2.5809940e+03 1.5676735e+03 - 1.3256605e+03 -2.5322865e+03 1.6219386e+03 - 1.4010927e+03 -2.4869454e+03 1.6696980e+03 - 1.4725358e+03 -2.4444385e+03 1.7118576e+03 - 1.5403653e+03 -2.4043954e+03 1.7491094e+03 - 1.6047882e+03 -2.3665660e+03 1.7819897e+03 - 1.6659060e+03 -2.3307887e+03 1.8109238e+03 - 1.7237543e+03 -2.2969667e+03 1.8362588e+03 - 1.7783269e+03 -2.2650514e+03 1.8582867e+03 - 1.8295930e+03 -2.2350289e+03 1.8772615e+03 - 1.8775071e+03 -2.2069117e+03 1.8934110e+03 - 1.9220175e+03 -2.1807305e+03 1.9069454e+03 - 1.9630723e+03 -2.1565297e+03 1.9180634e+03 - 2.0006232e+03 -2.1343617e+03 1.9269564e+03 - 2.0346302e+03 -2.1142838e+03 1.9338118e+03 - 2.0650644e+03 -2.0963543e+03 1.9388148e+03 - 2.0919110e+03 -2.0806288e+03 1.9421501e+03 - 2.1151729e+03 -2.0671573e+03 1.9440025e+03 - 2.1348725e+03 -2.0559807e+03 1.9445573e+03 - 2.1510553e+03 -2.0471270e+03 1.9440001e+03 - 2.1637917e+03 -2.0406083e+03 1.9425164e+03 - 2.1731797e+03 -2.0364167e+03 1.9402908e+03 - 2.1793467e+03 -2.0345212e+03 1.9375054e+03 - 2.1824508e+03 -2.0348645e+03 1.9343385e+03 - 2.1826819e+03 -2.0373593e+03 1.9309628e+03 - 2.1802616e+03 -2.0418868e+03 1.9275425e+03 - 2.1754420e+03 -2.0482944e+03 1.9242316e+03 - 2.1685045e+03 -2.0563947e+03 1.9211708e+03 - 2.1597560e+03 -2.0659663e+03 1.9184850e+03 - 2.1495253e+03 -2.0767546e+03 1.9162805e+03 - 2.1381581e+03 -2.0884748e+03 1.9146428e+03 - 2.1260107e+03 -2.1008156e+03 1.9136347e+03 - 2.1134438e+03 -2.1134438e+03 1.9132943e+03 - 2.1008156e+03 -2.1260107e+03 1.9136347e+03 - 2.0884748e+03 -2.1381581e+03 1.9146428e+03 - 2.0767546e+03 -2.1495253e+03 1.9162805e+03 - 2.0659663e+03 -2.1597560e+03 1.9184850e+03 - 2.0563947e+03 -2.1685045e+03 1.9211708e+03 - 2.0482944e+03 -2.1754420e+03 1.9242316e+03 - 2.0418868e+03 -2.1802616e+03 1.9275425e+03 - 2.0373593e+03 -2.1826819e+03 1.9309628e+03 - 2.0348645e+03 -2.1824508e+03 1.9343385e+03 - 2.0345212e+03 -2.1793467e+03 1.9375054e+03 - 2.0364167e+03 -2.1731797e+03 1.9402908e+03 - 2.0406083e+03 -2.1637917e+03 1.9425164e+03 - 2.0471270e+03 -2.1510553e+03 1.9440001e+03 - 2.0559807e+03 -2.1348725e+03 1.9445573e+03 - 2.0671573e+03 -2.1151729e+03 1.9440025e+03 - 2.0806288e+03 -2.0919110e+03 1.9421501e+03 - 2.0963543e+03 -2.0650644e+03 1.9388148e+03 - 2.1142838e+03 -2.0346302e+03 1.9338118e+03 - 2.1343617e+03 -2.0006232e+03 1.9269564e+03 - 2.1565297e+03 -1.9630723e+03 1.9180634e+03 - 2.1807305e+03 -1.9220175e+03 1.9069454e+03 - 2.2069117e+03 -1.8775071e+03 1.8934110e+03 - 2.2350289e+03 -1.8295930e+03 1.8772615e+03 - 2.2650514e+03 -1.7783269e+03 1.8582867e+03 - 2.2969667e+03 -1.7237543e+03 1.8362588e+03 - 2.3307887e+03 -1.6659060e+03 1.8109238e+03 - 2.3665660e+03 -1.6047882e+03 1.7819897e+03 - 2.4043954e+03 -1.5403653e+03 1.7491094e+03 - 2.4444385e+03 -1.4725358e+03 1.7118576e+03 - 2.4869454e+03 -1.4010927e+03 1.6696980e+03 - 2.5322865e+03 -1.3256605e+03 1.6219386e+03 - 2.5809940e+03 -1.2455875e+03 1.5676735e+03 - 2.6338101e+03 -1.1597614e+03 1.5057151e+03 - 2.6917224e+03 -1.0662840e+03 1.4345459e+03 - 2.7559173e+03 -9.6190021e+02 1.3523892e+03 - 2.8274297e+03 -8.4104621e+02 1.2577193e+03 - 2.9058878e+03 -6.9457933e+02 1.1510769e+03 - 2.9861501e+03 -5.0951221e+02 1.0399171e+03 - 3.0526412e+03 -2.7490808e+02 9.4675878e+02 - 3.0797102e+03 2.4067136e-09 9.0862974e+02 - 3.1359312e+03 -4.8134273e-09 8.1888896e+02 - 3.1218374e+03 2.0257376e+02 8.3865780e+02 - 3.0829662e+03 3.9331912e+02 8.9293757e+02 - 3.0272843e+03 5.6520810e+02 9.6998101e+02 - 2.9630695e+03 7.1689353e+02 1.0575750e+03 - 2.8963524e+03 8.5055073e+02 1.1468183e+03 - 2.8306212e+03 9.6949945e+02 1.2325697e+03 - 2.7675395e+03 1.0768654e+03 1.3123989e+03 - 2.7077206e+03 1.1751265e+03 1.3854515e+03 - 2.6512563e+03 1.2660936e+03 1.4516701e+03 - 2.5980165e+03 1.3510346e+03 1.5113519e+03 - 2.5478007e+03 1.4308143e+03 1.5649237e+03 - 2.5004090e+03 1.5060099e+03 1.6128361e+03 - 2.4556701e+03 1.5769980e+03 1.6555196e+03 - 2.4134502e+03 1.6440155e+03 1.6933704e+03 - 2.3736527e+03 1.7072035e+03 1.7267486e+03 - 2.3362140e+03 1.7666368e+03 1.7559827e+03 - 2.3010990e+03 1.8223462e+03 1.7813751e+03 - 2.2682956e+03 1.8743333e+03 1.8032072e+03 - 2.2378101e+03 1.9225818e+03 1.8217450e+03 - 2.2096629e+03 1.9670668e+03 1.8372423e+03 - 2.1838849e+03 2.0077605e+03 1.8499442e+03 - 2.1605135e+03 2.0446383e+03 1.8600897e+03 - 2.1395890e+03 2.0776833e+03 1.8679132e+03 - 2.1211518e+03 2.1068902e+03 1.8736458e+03 - 2.1052379e+03 2.1322694e+03 1.8775162e+03 - 2.0918762e+03 2.1538501e+03 1.8797511e+03 - 2.0810841e+03 2.1716839e+03 1.8805750e+03 - 2.0728638e+03 2.1858478e+03 1.8802101e+03 - 2.0671983e+03 2.1964469e+03 1.8788751e+03 - 2.0640474e+03 2.2036170e+03 1.8767847e+03 - 2.0633442e+03 2.2075261e+03 1.8741473e+03 - 2.0649911e+03 2.2083761e+03 1.8711635e+03 - 2.0688574e+03 2.2064027e+03 1.8680233e+03 - 2.0747770e+03 2.2018750e+03 1.8649044e+03 - 2.0825468e+03 2.1950932e+03 1.8619683e+03 - 2.0919276e+03 2.1863862e+03 1.8593584e+03 - 2.1026444e+03 2.1761066e+03 1.8571963e+03 - 2.1143899e+03 2.1646257e+03 1.8555800e+03 - 2.1268278e+03 2.1523269e+03 1.8545810e+03 - 2.1395989e+03 2.1395989e+03 1.8542432e+03 - 2.1523269e+03 2.1268278e+03 1.8545810e+03 - 2.1646257e+03 2.1143899e+03 1.8555800e+03 - 2.1761066e+03 2.1026444e+03 1.8571963e+03 - 2.1863862e+03 2.0919276e+03 1.8593584e+03 - 2.1950932e+03 2.0825468e+03 1.8619683e+03 - 2.2018750e+03 2.0747770e+03 1.8649044e+03 - 2.2064027e+03 2.0688574e+03 1.8680233e+03 - 2.2083761e+03 2.0649911e+03 1.8711635e+03 - 2.2075261e+03 2.0633442e+03 1.8741473e+03 - 2.2036170e+03 2.0640474e+03 1.8767847e+03 - 2.1964469e+03 2.0671983e+03 1.8788751e+03 - 2.1858478e+03 2.0728638e+03 1.8802101e+03 - 2.1716839e+03 2.0810841e+03 1.8805750e+03 - 2.1538501e+03 2.0918762e+03 1.8797511e+03 - 2.1322694e+03 2.1052379e+03 1.8775162e+03 - 2.1068902e+03 2.1211518e+03 1.8736458e+03 - 2.0776833e+03 2.1395890e+03 1.8679132e+03 - 2.0446383e+03 2.1605135e+03 1.8600897e+03 - 2.0077605e+03 2.1838849e+03 1.8499442e+03 - 1.9670668e+03 2.2096629e+03 1.8372423e+03 - 1.9225818e+03 2.2378101e+03 1.8217450e+03 - 1.8743333e+03 2.2682956e+03 1.8032072e+03 - 1.8223462e+03 2.3010990e+03 1.7813751e+03 - 1.7666368e+03 2.3362140e+03 1.7559827e+03 - 1.7072035e+03 2.3736527e+03 1.7267486e+03 - 1.6440155e+03 2.4134502e+03 1.6933704e+03 - 1.5769980e+03 2.4556701e+03 1.6555196e+03 - 1.5060099e+03 2.5004090e+03 1.6128361e+03 - 1.4308143e+03 2.5478007e+03 1.5649237e+03 - 1.3510346e+03 2.5980165e+03 1.5113519e+03 - 1.2660936e+03 2.6512563e+03 1.4516701e+03 - 1.1751265e+03 2.7077206e+03 1.3854515e+03 - 1.0768654e+03 2.7675395e+03 1.3123989e+03 - 9.6949945e+02 2.8306212e+03 1.2325697e+03 - 8.5055073e+02 2.8963524e+03 1.1468183e+03 - 7.1689353e+02 2.9630695e+03 1.0575750e+03 - 5.6520810e+02 3.0272843e+03 9.6998101e+02 - 3.9331912e+02 3.0829662e+03 8.9293757e+02 - 2.0257376e+02 3.1218374e+03 8.3865780e+02 - 4.8134273e-09 3.1359312e+03 8.1888896e+02 - -2.0257376e+02 3.1218374e+03 8.3865780e+02 - -3.9331912e+02 3.0829662e+03 8.9293757e+02 - -5.6520810e+02 3.0272843e+03 9.6998101e+02 - -7.1689353e+02 2.9630695e+03 1.0575750e+03 - -8.5055073e+02 2.8963524e+03 1.1468183e+03 - -9.6949945e+02 2.8306212e+03 1.2325697e+03 - -1.0768654e+03 2.7675395e+03 1.3123989e+03 - -1.1751265e+03 2.7077206e+03 1.3854515e+03 - -1.2660936e+03 2.6512563e+03 1.4516701e+03 - -1.3510346e+03 2.5980165e+03 1.5113519e+03 - -1.4308143e+03 2.5478007e+03 1.5649237e+03 - -1.5060099e+03 2.5004090e+03 1.6128361e+03 - -1.5769980e+03 2.4556701e+03 1.6555196e+03 - -1.6440155e+03 2.4134502e+03 1.6933704e+03 - -1.7072035e+03 2.3736527e+03 1.7267486e+03 - -1.7666368e+03 2.3362140e+03 1.7559827e+03 - -1.8223462e+03 2.3010990e+03 1.7813751e+03 - -1.8743333e+03 2.2682956e+03 1.8032072e+03 - -1.9225818e+03 2.2378101e+03 1.8217450e+03 - -1.9670668e+03 2.2096629e+03 1.8372423e+03 - -2.0077605e+03 2.1838849e+03 1.8499442e+03 - -2.0446383e+03 2.1605135e+03 1.8600897e+03 - -2.0776833e+03 2.1395890e+03 1.8679132e+03 - -2.1068902e+03 2.1211518e+03 1.8736458e+03 - -2.1322694e+03 2.1052379e+03 1.8775162e+03 - -2.1538501e+03 2.0918762e+03 1.8797511e+03 - -2.1716839e+03 2.0810841e+03 1.8805750e+03 - -2.1858478e+03 2.0728638e+03 1.8802101e+03 - -2.1964469e+03 2.0671983e+03 1.8788751e+03 - -2.2036170e+03 2.0640474e+03 1.8767847e+03 - -2.2075261e+03 2.0633442e+03 1.8741473e+03 - -2.2083761e+03 2.0649911e+03 1.8711635e+03 - -2.2064027e+03 2.0688574e+03 1.8680233e+03 - -2.2018750e+03 2.0747770e+03 1.8649044e+03 - -2.1950932e+03 2.0825468e+03 1.8619683e+03 - -2.1863862e+03 2.0919276e+03 1.8593584e+03 - -2.1761066e+03 2.1026444e+03 1.8571963e+03 - -2.1646257e+03 2.1143899e+03 1.8555800e+03 - -2.1523269e+03 2.1268278e+03 1.8545810e+03 - -2.1395989e+03 2.1395989e+03 1.8542432e+03 - -2.1268278e+03 2.1523269e+03 1.8545810e+03 - -2.1143899e+03 2.1646257e+03 1.8555800e+03 - -2.1026444e+03 2.1761066e+03 1.8571963e+03 - -2.0919276e+03 2.1863862e+03 1.8593584e+03 - -2.0825468e+03 2.1950932e+03 1.8619683e+03 - -2.0747770e+03 2.2018750e+03 1.8649044e+03 - -2.0688574e+03 2.2064027e+03 1.8680233e+03 - -2.0649911e+03 2.2083761e+03 1.8711635e+03 - -2.0633442e+03 2.2075261e+03 1.8741473e+03 - -2.0640474e+03 2.2036170e+03 1.8767847e+03 - -2.0671983e+03 2.1964469e+03 1.8788751e+03 - -2.0728638e+03 2.1858478e+03 1.8802101e+03 - -2.0810841e+03 2.1716839e+03 1.8805750e+03 - -2.0918762e+03 2.1538501e+03 1.8797511e+03 - -2.1052379e+03 2.1322694e+03 1.8775162e+03 - -2.1211518e+03 2.1068902e+03 1.8736458e+03 - -2.1395890e+03 2.0776833e+03 1.8679132e+03 - -2.1605135e+03 2.0446383e+03 1.8600897e+03 - -2.1838849e+03 2.0077605e+03 1.8499442e+03 - -2.2096629e+03 1.9670668e+03 1.8372423e+03 - -2.2378101e+03 1.9225818e+03 1.8217450e+03 - -2.2682956e+03 1.8743333e+03 1.8032072e+03 - -2.3010990e+03 1.8223462e+03 1.7813751e+03 - -2.3362140e+03 1.7666368e+03 1.7559827e+03 - -2.3736527e+03 1.7072035e+03 1.7267486e+03 - -2.4134502e+03 1.6440155e+03 1.6933704e+03 - -2.4556701e+03 1.5769980e+03 1.6555196e+03 - -2.5004090e+03 1.5060099e+03 1.6128361e+03 - -2.5478007e+03 1.4308143e+03 1.5649237e+03 - -2.5980165e+03 1.3510346e+03 1.5113519e+03 - -2.6512563e+03 1.2660936e+03 1.4516701e+03 - -2.7077206e+03 1.1751265e+03 1.3854515e+03 - -2.7675395e+03 1.0768654e+03 1.3123989e+03 - -2.8306212e+03 9.6949945e+02 1.2325697e+03 - -2.8963524e+03 8.5055073e+02 1.1468183e+03 - -2.9630695e+03 7.1689353e+02 1.0575750e+03 - -3.0272843e+03 5.6520810e+02 9.6998101e+02 - -3.0829662e+03 3.9331912e+02 8.9293757e+02 - -3.1218374e+03 2.0257376e+02 8.3865780e+02 - -3.1359312e+03 4.8134273e-09 8.1888896e+02 - -3.1218374e+03 -2.0257376e+02 8.3865780e+02 - -3.0829662e+03 -3.9331912e+02 8.9293757e+02 - -3.0272843e+03 -5.6520810e+02 9.6998101e+02 - -2.9630695e+03 -7.1689353e+02 1.0575750e+03 - -2.8963524e+03 -8.5055073e+02 1.1468183e+03 - -2.8306212e+03 -9.6949945e+02 1.2325697e+03 - -2.7675395e+03 -1.0768654e+03 1.3123989e+03 - -2.7077206e+03 -1.1751265e+03 1.3854515e+03 - -2.6512563e+03 -1.2660936e+03 1.4516701e+03 - -2.5980165e+03 -1.3510346e+03 1.5113519e+03 - -2.5478007e+03 -1.4308143e+03 1.5649237e+03 - -2.5004090e+03 -1.5060099e+03 1.6128361e+03 - -2.4556701e+03 -1.5769980e+03 1.6555196e+03 - -2.4134502e+03 -1.6440155e+03 1.6933704e+03 - -2.3736527e+03 -1.7072035e+03 1.7267486e+03 - -2.3362140e+03 -1.7666368e+03 1.7559827e+03 - -2.3010990e+03 -1.8223462e+03 1.7813751e+03 - -2.2682956e+03 -1.8743333e+03 1.8032072e+03 - -2.2378101e+03 -1.9225818e+03 1.8217450e+03 - -2.2096629e+03 -1.9670668e+03 1.8372423e+03 - -2.1838849e+03 -2.0077605e+03 1.8499442e+03 - -2.1605135e+03 -2.0446383e+03 1.8600897e+03 - -2.1395890e+03 -2.0776833e+03 1.8679132e+03 - -2.1211518e+03 -2.1068902e+03 1.8736458e+03 - -2.1052379e+03 -2.1322694e+03 1.8775162e+03 - -2.0918762e+03 -2.1538501e+03 1.8797511e+03 - -2.0810841e+03 -2.1716839e+03 1.8805750e+03 - -2.0728638e+03 -2.1858478e+03 1.8802101e+03 - -2.0671983e+03 -2.1964469e+03 1.8788751e+03 - -2.0640474e+03 -2.2036170e+03 1.8767847e+03 - -2.0633442e+03 -2.2075261e+03 1.8741473e+03 - -2.0649911e+03 -2.2083761e+03 1.8711635e+03 - -2.0688574e+03 -2.2064027e+03 1.8680233e+03 - -2.0747770e+03 -2.2018750e+03 1.8649044e+03 - -2.0825468e+03 -2.1950932e+03 1.8619683e+03 - -2.0919276e+03 -2.1863862e+03 1.8593584e+03 - -2.1026444e+03 -2.1761066e+03 1.8571963e+03 - -2.1143899e+03 -2.1646257e+03 1.8555800e+03 - -2.1268278e+03 -2.1523269e+03 1.8545810e+03 - -2.1395989e+03 -2.1395989e+03 1.8542432e+03 - -2.1523269e+03 -2.1268278e+03 1.8545810e+03 - -2.1646257e+03 -2.1143899e+03 1.8555800e+03 - -2.1761066e+03 -2.1026444e+03 1.8571963e+03 - -2.1863862e+03 -2.0919276e+03 1.8593584e+03 - -2.1950932e+03 -2.0825468e+03 1.8619683e+03 - -2.2018750e+03 -2.0747770e+03 1.8649044e+03 - -2.2064027e+03 -2.0688574e+03 1.8680233e+03 - -2.2083761e+03 -2.0649911e+03 1.8711635e+03 - -2.2075261e+03 -2.0633442e+03 1.8741473e+03 - -2.2036170e+03 -2.0640474e+03 1.8767847e+03 - -2.1964469e+03 -2.0671983e+03 1.8788751e+03 - -2.1858478e+03 -2.0728638e+03 1.8802101e+03 - -2.1716839e+03 -2.0810841e+03 1.8805750e+03 - -2.1538501e+03 -2.0918762e+03 1.8797511e+03 - -2.1322694e+03 -2.1052379e+03 1.8775162e+03 - -2.1068902e+03 -2.1211518e+03 1.8736458e+03 - -2.0776833e+03 -2.1395890e+03 1.8679132e+03 - -2.0446383e+03 -2.1605135e+03 1.8600897e+03 - -2.0077605e+03 -2.1838849e+03 1.8499442e+03 - -1.9670668e+03 -2.2096629e+03 1.8372423e+03 - -1.9225818e+03 -2.2378101e+03 1.8217450e+03 - -1.8743333e+03 -2.2682956e+03 1.8032072e+03 - -1.8223462e+03 -2.3010990e+03 1.7813751e+03 - -1.7666368e+03 -2.3362140e+03 1.7559827e+03 - -1.7072035e+03 -2.3736527e+03 1.7267486e+03 - -1.6440155e+03 -2.4134502e+03 1.6933704e+03 - -1.5769980e+03 -2.4556701e+03 1.6555196e+03 - -1.5060099e+03 -2.5004090e+03 1.6128361e+03 - -1.4308143e+03 -2.5478007e+03 1.5649237e+03 - -1.3510346e+03 -2.5980165e+03 1.5113519e+03 - -1.2660936e+03 -2.6512563e+03 1.4516701e+03 - -1.1751265e+03 -2.7077206e+03 1.3854515e+03 - -1.0768654e+03 -2.7675395e+03 1.3123989e+03 - -9.6949945e+02 -2.8306212e+03 1.2325697e+03 - -8.5055073e+02 -2.8963524e+03 1.1468183e+03 - -7.1689353e+02 -2.9630695e+03 1.0575750e+03 - -5.6520810e+02 -3.0272843e+03 9.6998101e+02 - -3.9331912e+02 -3.0829662e+03 8.9293757e+02 - -2.0257376e+02 -3.1218374e+03 8.3865780e+02 - -4.8134273e-09 -3.1359312e+03 8.1888896e+02 - 2.0257376e+02 -3.1218374e+03 8.3865780e+02 - 3.9331912e+02 -3.0829662e+03 8.9293757e+02 - 5.6520810e+02 -3.0272843e+03 9.6998101e+02 - 7.1689353e+02 -2.9630695e+03 1.0575750e+03 - 8.5055073e+02 -2.8963524e+03 1.1468183e+03 - 9.6949945e+02 -2.8306212e+03 1.2325697e+03 - 1.0768654e+03 -2.7675395e+03 1.3123989e+03 - 1.1751265e+03 -2.7077206e+03 1.3854515e+03 - 1.2660936e+03 -2.6512563e+03 1.4516701e+03 - 1.3510346e+03 -2.5980165e+03 1.5113519e+03 - 1.4308143e+03 -2.5478007e+03 1.5649237e+03 - 1.5060099e+03 -2.5004090e+03 1.6128361e+03 - 1.5769980e+03 -2.4556701e+03 1.6555196e+03 - 1.6440155e+03 -2.4134502e+03 1.6933704e+03 - 1.7072035e+03 -2.3736527e+03 1.7267486e+03 - 1.7666368e+03 -2.3362140e+03 1.7559827e+03 - 1.8223462e+03 -2.3010990e+03 1.7813751e+03 - 1.8743333e+03 -2.2682956e+03 1.8032072e+03 - 1.9225818e+03 -2.2378101e+03 1.8217450e+03 - 1.9670668e+03 -2.2096629e+03 1.8372423e+03 - 2.0077605e+03 -2.1838849e+03 1.8499442e+03 - 2.0446383e+03 -2.1605135e+03 1.8600897e+03 - 2.0776833e+03 -2.1395890e+03 1.8679132e+03 - 2.1068902e+03 -2.1211518e+03 1.8736458e+03 - 2.1322694e+03 -2.1052379e+03 1.8775162e+03 - 2.1538501e+03 -2.0918762e+03 1.8797511e+03 - 2.1716839e+03 -2.0810841e+03 1.8805750e+03 - 2.1858478e+03 -2.0728638e+03 1.8802101e+03 - 2.1964469e+03 -2.0671983e+03 1.8788751e+03 - 2.2036170e+03 -2.0640474e+03 1.8767847e+03 - 2.2075261e+03 -2.0633442e+03 1.8741473e+03 - 2.2083761e+03 -2.0649911e+03 1.8711635e+03 - 2.2064027e+03 -2.0688574e+03 1.8680233e+03 - 2.2018750e+03 -2.0747770e+03 1.8649044e+03 - 2.1950932e+03 -2.0825468e+03 1.8619683e+03 - 2.1863862e+03 -2.0919276e+03 1.8593584e+03 - 2.1761066e+03 -2.1026444e+03 1.8571963e+03 - 2.1646257e+03 -2.1143899e+03 1.8555800e+03 - 2.1523269e+03 -2.1268278e+03 1.8545810e+03 - 2.1395989e+03 -2.1395989e+03 1.8542432e+03 - 2.1268278e+03 -2.1523269e+03 1.8545810e+03 - 2.1143899e+03 -2.1646257e+03 1.8555800e+03 - 2.1026444e+03 -2.1761066e+03 1.8571963e+03 - 2.0919276e+03 -2.1863862e+03 1.8593584e+03 - 2.0825468e+03 -2.1950932e+03 1.8619683e+03 - 2.0747770e+03 -2.2018750e+03 1.8649044e+03 - 2.0688574e+03 -2.2064027e+03 1.8680233e+03 - 2.0649911e+03 -2.2083761e+03 1.8711635e+03 - 2.0633442e+03 -2.2075261e+03 1.8741473e+03 - 2.0640474e+03 -2.2036170e+03 1.8767847e+03 - 2.0671983e+03 -2.1964469e+03 1.8788751e+03 - 2.0728638e+03 -2.1858478e+03 1.8802101e+03 - 2.0810841e+03 -2.1716839e+03 1.8805750e+03 - 2.0918762e+03 -2.1538501e+03 1.8797511e+03 - 2.1052379e+03 -2.1322694e+03 1.8775162e+03 - 2.1211518e+03 -2.1068902e+03 1.8736458e+03 - 2.1395890e+03 -2.0776833e+03 1.8679132e+03 - 2.1605135e+03 -2.0446383e+03 1.8600897e+03 - 2.1838849e+03 -2.0077605e+03 1.8499442e+03 - 2.2096629e+03 -1.9670668e+03 1.8372423e+03 - 2.2378101e+03 -1.9225818e+03 1.8217450e+03 - 2.2682956e+03 -1.8743333e+03 1.8032072e+03 - 2.3010990e+03 -1.8223462e+03 1.7813751e+03 - 2.3362140e+03 -1.7666368e+03 1.7559827e+03 - 2.3736527e+03 -1.7072035e+03 1.7267486e+03 - 2.4134502e+03 -1.6440155e+03 1.6933704e+03 - 2.4556701e+03 -1.5769980e+03 1.6555196e+03 - 2.5004090e+03 -1.5060099e+03 1.6128361e+03 - 2.5478007e+03 -1.4308143e+03 1.5649237e+03 - 2.5980165e+03 -1.3510346e+03 1.5113519e+03 - 2.6512563e+03 -1.2660936e+03 1.4516701e+03 - 2.7077206e+03 -1.1751265e+03 1.3854515e+03 - 2.7675395e+03 -1.0768654e+03 1.3123989e+03 - 2.8306212e+03 -9.6949945e+02 1.2325697e+03 - 2.8963524e+03 -8.5055073e+02 1.1468183e+03 - 2.9630695e+03 -7.1689353e+02 1.0575750e+03 - 3.0272843e+03 -5.6520810e+02 9.6998101e+02 - 3.0829662e+03 -3.9331912e+02 8.9293757e+02 - 3.1218374e+03 -2.0257376e+02 8.3865780e+02 - 3.1359312e+03 -2.4067136e-09 8.1888896e+02 - 3.1880487e+03 0.0000000e+00 7.3195095e+02 - 3.1793989e+03 1.6239448e+02 7.4399309e+02 - 3.1544265e+03 3.2090358e+02 7.7863152e+02 - 3.1157325e+03 4.7243172e+02 8.3190498e+02 - 3.0667593e+03 6.1510081e+02 8.9857251e+02 - 3.0109807e+03 7.4822236e+02 9.7335065e+02 - 2.9513698e+03 8.7197948e+02 1.0517291e+03 - 2.8901989e+03 9.8704465e+02 1.1302813e+03 - 2.8290684e+03 1.0942739e+03 1.2066262e+03 - 2.7690376e+03 1.1945156e+03 1.2792313e+03 - 2.7107737e+03 1.2885149e+03 1.3471883e+03 - 2.6546790e+03 1.3768803e+03 1.4100200e+03 - 2.6009854e+03 1.4600847e+03 1.4675355e+03 - 2.5498205e+03 1.5384812e+03 1.5197281e+03 - 2.5012512e+03 1.6123236e+03 1.5667082e+03 - 2.4553110e+03 1.6817871e+03 1.6086591e+03 - 2.4120174e+03 1.7469866e+03 1.6458083e+03 - 2.3713821e+03 1.8079918e+03 1.6784106e+03 - 2.3334170e+03 1.8648403e+03 1.7067359e+03 - 2.2981370e+03 1.9175474e+03 1.7310627e+03 - 2.2655611e+03 1.9661148e+03 1.7516738e+03 - 2.2357125e+03 2.0105378e+03 1.7688529e+03 - 2.2086173e+03 2.0508108e+03 1.7828837e+03 - 2.1843032e+03 2.0869329e+03 1.7940480e+03 - 2.1627965e+03 2.1189128e+03 1.8026256e+03 - 2.1441200e+03 2.1467726e+03 1.8088935e+03 - 2.1282895e+03 2.1705522e+03 1.8131255e+03 - 2.1153099e+03 2.1903133e+03 1.8155914e+03 - 2.1051716e+03 2.2061427e+03 1.8165566e+03 - 2.0978463e+03 2.2181560e+03 1.8162810e+03 - 2.0932824e+03 2.2265001e+03 1.8150174e+03 - 2.0914009e+03 2.2313562e+03 1.8130104e+03 - 2.0920919e+03 2.2329406e+03 1.8104938e+03 - 2.0952104e+03 2.2315060e+03 1.8076886e+03 - 2.1005746e+03 2.2273407e+03 1.8048000e+03 - 2.1079636e+03 2.2207672e+03 1.8020147e+03 - 2.1171175e+03 2.2121384e+03 1.7994973e+03 - 2.1277387e+03 2.2018342e+03 1.7973879e+03 - 2.1394943e+03 2.1902544e+03 1.7957987e+03 - 2.1520207e+03 2.1778129e+03 1.7948117e+03 - 2.1649292e+03 2.1649292e+03 1.7944771e+03 - 2.1778129e+03 2.1520207e+03 1.7948117e+03 - 2.1902544e+03 2.1394943e+03 1.7957987e+03 - 2.2018342e+03 2.1277387e+03 1.7973879e+03 - 2.2121384e+03 2.1171175e+03 1.7994973e+03 - 2.2207672e+03 2.1079636e+03 1.8020147e+03 - 2.2273407e+03 2.1005746e+03 1.8048000e+03 - 2.2315060e+03 2.0952104e+03 1.8076886e+03 - 2.2329406e+03 2.0920919e+03 1.8104938e+03 - 2.2313562e+03 2.0914009e+03 1.8130104e+03 - 2.2265001e+03 2.0932824e+03 1.8150174e+03 - 2.2181560e+03 2.0978463e+03 1.8162810e+03 - 2.2061427e+03 2.1051716e+03 1.8165566e+03 - 2.1903133e+03 2.1153099e+03 1.8155914e+03 - 2.1705522e+03 2.1282895e+03 1.8131255e+03 - 2.1467726e+03 2.1441200e+03 1.8088935e+03 - 2.1189128e+03 2.1627965e+03 1.8026256e+03 - 2.0869329e+03 2.1843032e+03 1.7940480e+03 - 2.0508108e+03 2.2086173e+03 1.7828837e+03 - 2.0105378e+03 2.2357125e+03 1.7688529e+03 - 1.9661148e+03 2.2655611e+03 1.7516738e+03 - 1.9175474e+03 2.2981370e+03 1.7310627e+03 - 1.8648403e+03 2.3334170e+03 1.7067359e+03 - 1.8079918e+03 2.3713821e+03 1.6784106e+03 - 1.7469866e+03 2.4120174e+03 1.6458083e+03 - 1.6817871e+03 2.4553110e+03 1.6086591e+03 - 1.6123236e+03 2.5012512e+03 1.5667082e+03 - 1.5384812e+03 2.5498205e+03 1.5197281e+03 - 1.4600847e+03 2.6009854e+03 1.4675355e+03 - 1.3768803e+03 2.6546790e+03 1.4100200e+03 - 1.2885149e+03 2.7107737e+03 1.3471883e+03 - 1.1945156e+03 2.7690376e+03 1.2792313e+03 - 1.0942739e+03 2.8290684e+03 1.2066262e+03 - 9.8704465e+02 2.8901989e+03 1.1302813e+03 - 8.7197948e+02 2.9513698e+03 1.0517291e+03 - 7.4822236e+02 3.0109807e+03 9.7335065e+02 - 6.1510081e+02 3.0667593e+03 8.9857251e+02 - 4.7243172e+02 3.1157325e+03 8.3190498e+02 - 3.2090358e+02 3.1544265e+03 7.7863152e+02 - 1.6239448e+02 3.1793989e+03 7.4399309e+02 - -2.4067136e-09 3.1880487e+03 7.3195095e+02 - -1.6239448e+02 3.1793989e+03 7.4399309e+02 - -3.2090358e+02 3.1544265e+03 7.7863152e+02 - -4.7243172e+02 3.1157325e+03 8.3190498e+02 - -6.1510081e+02 3.0667593e+03 8.9857251e+02 - -7.4822236e+02 3.0109807e+03 9.7335065e+02 - -8.7197948e+02 2.9513698e+03 1.0517291e+03 - -9.8704465e+02 2.8901989e+03 1.1302813e+03 - -1.0942739e+03 2.8290684e+03 1.2066262e+03 - -1.1945156e+03 2.7690376e+03 1.2792313e+03 - -1.2885149e+03 2.7107737e+03 1.3471883e+03 - -1.3768803e+03 2.6546790e+03 1.4100200e+03 - -1.4600847e+03 2.6009854e+03 1.4675355e+03 - -1.5384812e+03 2.5498205e+03 1.5197281e+03 - -1.6123236e+03 2.5012512e+03 1.5667082e+03 - -1.6817871e+03 2.4553110e+03 1.6086591e+03 - -1.7469866e+03 2.4120174e+03 1.6458083e+03 - -1.8079918e+03 2.3713821e+03 1.6784106e+03 - -1.8648403e+03 2.3334170e+03 1.7067359e+03 - -1.9175474e+03 2.2981370e+03 1.7310627e+03 - -1.9661148e+03 2.2655611e+03 1.7516738e+03 - -2.0105378e+03 2.2357125e+03 1.7688529e+03 - -2.0508108e+03 2.2086173e+03 1.7828837e+03 - -2.0869329e+03 2.1843032e+03 1.7940480e+03 - -2.1189128e+03 2.1627965e+03 1.8026256e+03 - -2.1467726e+03 2.1441200e+03 1.8088935e+03 - -2.1705522e+03 2.1282895e+03 1.8131255e+03 - -2.1903133e+03 2.1153099e+03 1.8155914e+03 - -2.2061427e+03 2.1051716e+03 1.8165566e+03 - -2.2181560e+03 2.0978463e+03 1.8162810e+03 - -2.2265001e+03 2.0932824e+03 1.8150174e+03 - -2.2313562e+03 2.0914009e+03 1.8130104e+03 - -2.2329406e+03 2.0920919e+03 1.8104938e+03 - -2.2315060e+03 2.0952104e+03 1.8076886e+03 - -2.2273407e+03 2.1005746e+03 1.8048000e+03 - -2.2207672e+03 2.1079636e+03 1.8020147e+03 - -2.2121384e+03 2.1171175e+03 1.7994973e+03 - -2.2018342e+03 2.1277387e+03 1.7973879e+03 - -2.1902544e+03 2.1394943e+03 1.7957987e+03 - -2.1778129e+03 2.1520207e+03 1.7948117e+03 - -2.1649292e+03 2.1649292e+03 1.7944771e+03 - -2.1520207e+03 2.1778129e+03 1.7948117e+03 - -2.1394943e+03 2.1902544e+03 1.7957987e+03 - -2.1277387e+03 2.2018342e+03 1.7973879e+03 - -2.1171175e+03 2.2121384e+03 1.7994973e+03 - -2.1079636e+03 2.2207672e+03 1.8020147e+03 - -2.1005746e+03 2.2273407e+03 1.8048000e+03 - -2.0952104e+03 2.2315060e+03 1.8076886e+03 - -2.0920919e+03 2.2329406e+03 1.8104938e+03 - -2.0914009e+03 2.2313562e+03 1.8130104e+03 - -2.0932824e+03 2.2265001e+03 1.8150174e+03 - -2.0978463e+03 2.2181560e+03 1.8162810e+03 - -2.1051716e+03 2.2061427e+03 1.8165566e+03 - -2.1153099e+03 2.1903133e+03 1.8155914e+03 - -2.1282895e+03 2.1705522e+03 1.8131255e+03 - -2.1441200e+03 2.1467726e+03 1.8088935e+03 - -2.1627965e+03 2.1189128e+03 1.8026256e+03 - -2.1843032e+03 2.0869329e+03 1.7940480e+03 - -2.2086173e+03 2.0508108e+03 1.7828837e+03 - -2.2357125e+03 2.0105378e+03 1.7688529e+03 - -2.2655611e+03 1.9661148e+03 1.7516738e+03 - -2.2981370e+03 1.9175474e+03 1.7310627e+03 - -2.3334170e+03 1.8648403e+03 1.7067359e+03 - -2.3713821e+03 1.8079918e+03 1.6784106e+03 - -2.4120174e+03 1.7469866e+03 1.6458083e+03 - -2.4553110e+03 1.6817871e+03 1.6086591e+03 - -2.5012512e+03 1.6123236e+03 1.5667082e+03 - -2.5498205e+03 1.5384812e+03 1.5197281e+03 - -2.6009854e+03 1.4600847e+03 1.4675355e+03 - -2.6546790e+03 1.3768803e+03 1.4100200e+03 - -2.7107737e+03 1.2885149e+03 1.3471883e+03 - -2.7690376e+03 1.1945156e+03 1.2792313e+03 - -2.8290684e+03 1.0942739e+03 1.2066262e+03 - -2.8901989e+03 9.8704465e+02 1.1302813e+03 - -2.9513698e+03 8.7197948e+02 1.0517291e+03 - -3.0109807e+03 7.4822236e+02 9.7335065e+02 - -3.0667593e+03 6.1510081e+02 8.9857251e+02 - -3.1157325e+03 4.7243172e+02 8.3190498e+02 - -3.1544265e+03 3.2090358e+02 7.7863152e+02 - -3.1793989e+03 1.6239448e+02 7.4399309e+02 - -3.1880487e+03 -2.4067136e-09 7.3195095e+02 - -3.1793989e+03 -1.6239448e+02 7.4399309e+02 - -3.1544265e+03 -3.2090358e+02 7.7863152e+02 - -3.1157325e+03 -4.7243172e+02 8.3190498e+02 - -3.0667593e+03 -6.1510081e+02 8.9857251e+02 - -3.0109807e+03 -7.4822236e+02 9.7335065e+02 - -2.9513698e+03 -8.7197948e+02 1.0517291e+03 - -2.8901989e+03 -9.8704465e+02 1.1302813e+03 - -2.8290684e+03 -1.0942739e+03 1.2066262e+03 - -2.7690376e+03 -1.1945156e+03 1.2792313e+03 - -2.7107737e+03 -1.2885149e+03 1.3471883e+03 - -2.6546790e+03 -1.3768803e+03 1.4100200e+03 - -2.6009854e+03 -1.4600847e+03 1.4675355e+03 - -2.5498205e+03 -1.5384812e+03 1.5197281e+03 - -2.5012512e+03 -1.6123236e+03 1.5667082e+03 - -2.4553110e+03 -1.6817871e+03 1.6086591e+03 - -2.4120174e+03 -1.7469866e+03 1.6458083e+03 - -2.3713821e+03 -1.8079918e+03 1.6784106e+03 - -2.3334170e+03 -1.8648403e+03 1.7067359e+03 - -2.2981370e+03 -1.9175474e+03 1.7310627e+03 - -2.2655611e+03 -1.9661148e+03 1.7516738e+03 - -2.2357125e+03 -2.0105378e+03 1.7688529e+03 - -2.2086173e+03 -2.0508108e+03 1.7828837e+03 - -2.1843032e+03 -2.0869329e+03 1.7940480e+03 - -2.1627965e+03 -2.1189128e+03 1.8026256e+03 - -2.1441200e+03 -2.1467726e+03 1.8088935e+03 - -2.1282895e+03 -2.1705522e+03 1.8131255e+03 - -2.1153099e+03 -2.1903133e+03 1.8155914e+03 - -2.1051716e+03 -2.2061427e+03 1.8165566e+03 - -2.0978463e+03 -2.2181560e+03 1.8162810e+03 - -2.0932824e+03 -2.2265001e+03 1.8150174e+03 - -2.0914009e+03 -2.2313562e+03 1.8130104e+03 - -2.0920919e+03 -2.2329406e+03 1.8104938e+03 - -2.0952104e+03 -2.2315060e+03 1.8076886e+03 - -2.1005746e+03 -2.2273407e+03 1.8048000e+03 - -2.1079636e+03 -2.2207672e+03 1.8020147e+03 - -2.1171175e+03 -2.2121384e+03 1.7994973e+03 - -2.1277387e+03 -2.2018342e+03 1.7973879e+03 - -2.1394943e+03 -2.1902544e+03 1.7957987e+03 - -2.1520207e+03 -2.1778129e+03 1.7948117e+03 - -2.1649292e+03 -2.1649292e+03 1.7944771e+03 - -2.1778129e+03 -2.1520207e+03 1.7948117e+03 - -2.1902544e+03 -2.1394943e+03 1.7957987e+03 - -2.2018342e+03 -2.1277387e+03 1.7973879e+03 - -2.2121384e+03 -2.1171175e+03 1.7994973e+03 - -2.2207672e+03 -2.1079636e+03 1.8020147e+03 - -2.2273407e+03 -2.1005746e+03 1.8048000e+03 - -2.2315060e+03 -2.0952104e+03 1.8076886e+03 - -2.2329406e+03 -2.0920919e+03 1.8104938e+03 - -2.2313562e+03 -2.0914009e+03 1.8130104e+03 - -2.2265001e+03 -2.0932824e+03 1.8150174e+03 - -2.2181560e+03 -2.0978463e+03 1.8162810e+03 - -2.2061427e+03 -2.1051716e+03 1.8165566e+03 - -2.1903133e+03 -2.1153099e+03 1.8155914e+03 - -2.1705522e+03 -2.1282895e+03 1.8131255e+03 - -2.1467726e+03 -2.1441200e+03 1.8088935e+03 - -2.1189128e+03 -2.1627965e+03 1.8026256e+03 - -2.0869329e+03 -2.1843032e+03 1.7940480e+03 - -2.0508108e+03 -2.2086173e+03 1.7828837e+03 - -2.0105378e+03 -2.2357125e+03 1.7688529e+03 - -1.9661148e+03 -2.2655611e+03 1.7516738e+03 - -1.9175474e+03 -2.2981370e+03 1.7310627e+03 - -1.8648403e+03 -2.3334170e+03 1.7067359e+03 - -1.8079918e+03 -2.3713821e+03 1.6784106e+03 - -1.7469866e+03 -2.4120174e+03 1.6458083e+03 - -1.6817871e+03 -2.4553110e+03 1.6086591e+03 - -1.6123236e+03 -2.5012512e+03 1.5667082e+03 - -1.5384812e+03 -2.5498205e+03 1.5197281e+03 - -1.4600847e+03 -2.6009854e+03 1.4675355e+03 - -1.3768803e+03 -2.6546790e+03 1.4100200e+03 - -1.2885149e+03 -2.7107737e+03 1.3471883e+03 - -1.1945156e+03 -2.7690376e+03 1.2792313e+03 - -1.0942739e+03 -2.8290684e+03 1.2066262e+03 - -9.8704465e+02 -2.8901989e+03 1.1302813e+03 - -8.7197948e+02 -2.9513698e+03 1.0517291e+03 - -7.4822236e+02 -3.0109807e+03 9.7335065e+02 - -6.1510081e+02 -3.0667593e+03 8.9857251e+02 - -4.7243172e+02 -3.1157325e+03 8.3190498e+02 - -3.2090358e+02 -3.1544265e+03 7.7863152e+02 - -1.6239448e+02 -3.1793989e+03 7.4399309e+02 - -2.4067136e-09 -3.1880487e+03 7.3195095e+02 - 1.6239448e+02 -3.1793989e+03 7.4399309e+02 - 3.2090358e+02 -3.1544265e+03 7.7863152e+02 - 4.7243172e+02 -3.1157325e+03 8.3190498e+02 - 6.1510081e+02 -3.0667593e+03 8.9857251e+02 - 7.4822236e+02 -3.0109807e+03 9.7335065e+02 - 8.7197948e+02 -2.9513698e+03 1.0517291e+03 - 9.8704465e+02 -2.8901989e+03 1.1302813e+03 - 1.0942739e+03 -2.8290684e+03 1.2066262e+03 - 1.1945156e+03 -2.7690376e+03 1.2792313e+03 - 1.2885149e+03 -2.7107737e+03 1.3471883e+03 - 1.3768803e+03 -2.6546790e+03 1.4100200e+03 - 1.4600847e+03 -2.6009854e+03 1.4675355e+03 - 1.5384812e+03 -2.5498205e+03 1.5197281e+03 - 1.6123236e+03 -2.5012512e+03 1.5667082e+03 - 1.6817871e+03 -2.4553110e+03 1.6086591e+03 - 1.7469866e+03 -2.4120174e+03 1.6458083e+03 - 1.8079918e+03 -2.3713821e+03 1.6784106e+03 - 1.8648403e+03 -2.3334170e+03 1.7067359e+03 - 1.9175474e+03 -2.2981370e+03 1.7310627e+03 - 1.9661148e+03 -2.2655611e+03 1.7516738e+03 - 2.0105378e+03 -2.2357125e+03 1.7688529e+03 - 2.0508108e+03 -2.2086173e+03 1.7828837e+03 - 2.0869329e+03 -2.1843032e+03 1.7940480e+03 - 2.1189128e+03 -2.1627965e+03 1.8026256e+03 - 2.1467726e+03 -2.1441200e+03 1.8088935e+03 - 2.1705522e+03 -2.1282895e+03 1.8131255e+03 - 2.1903133e+03 -2.1153099e+03 1.8155914e+03 - 2.2061427e+03 -2.1051716e+03 1.8165566e+03 - 2.2181560e+03 -2.0978463e+03 1.8162810e+03 - 2.2265001e+03 -2.0932824e+03 1.8150174e+03 - 2.2313562e+03 -2.0914009e+03 1.8130104e+03 - 2.2329406e+03 -2.0920919e+03 1.8104938e+03 - 2.2315060e+03 -2.0952104e+03 1.8076886e+03 - 2.2273407e+03 -2.1005746e+03 1.8048000e+03 - 2.2207672e+03 -2.1079636e+03 1.8020147e+03 - 2.2121384e+03 -2.1171175e+03 1.7994973e+03 - 2.2018342e+03 -2.1277387e+03 1.7973879e+03 - 2.1902544e+03 -2.1394943e+03 1.7957987e+03 - 2.1778129e+03 -2.1520207e+03 1.7948117e+03 - 2.1649292e+03 -2.1649292e+03 1.7944771e+03 - 2.1520207e+03 -2.1778129e+03 1.7948117e+03 - 2.1394943e+03 -2.1902544e+03 1.7957987e+03 - 2.1277387e+03 -2.2018342e+03 1.7973879e+03 - 2.1171175e+03 -2.2121384e+03 1.7994973e+03 - 2.1079636e+03 -2.2207672e+03 1.8020147e+03 - 2.1005746e+03 -2.2273407e+03 1.8048000e+03 - 2.0952104e+03 -2.2315060e+03 1.8076886e+03 - 2.0920919e+03 -2.2329406e+03 1.8104938e+03 - 2.0914009e+03 -2.2313562e+03 1.8130104e+03 - 2.0932824e+03 -2.2265001e+03 1.8150174e+03 - 2.0978463e+03 -2.2181560e+03 1.8162810e+03 - 2.1051716e+03 -2.2061427e+03 1.8165566e+03 - 2.1153099e+03 -2.1903133e+03 1.8155914e+03 - 2.1282895e+03 -2.1705522e+03 1.8131255e+03 - 2.1441200e+03 -2.1467726e+03 1.8088935e+03 - 2.1627965e+03 -2.1189128e+03 1.8026256e+03 - 2.1843032e+03 -2.0869329e+03 1.7940480e+03 - 2.2086173e+03 -2.0508108e+03 1.7828837e+03 - 2.2357125e+03 -2.0105378e+03 1.7688529e+03 - 2.2655611e+03 -1.9661148e+03 1.7516738e+03 - 2.2981370e+03 -1.9175474e+03 1.7310627e+03 - 2.3334170e+03 -1.8648403e+03 1.7067359e+03 - 2.3713821e+03 -1.8079918e+03 1.6784106e+03 - 2.4120174e+03 -1.7469866e+03 1.6458083e+03 - 2.4553110e+03 -1.6817871e+03 1.6086591e+03 - 2.5012512e+03 -1.6123236e+03 1.5667082e+03 - 2.5498205e+03 -1.5384812e+03 1.5197281e+03 - 2.6009854e+03 -1.4600847e+03 1.4675355e+03 - 2.6546790e+03 -1.3768803e+03 1.4100200e+03 - 2.7107737e+03 -1.2885149e+03 1.3471883e+03 - 2.7690376e+03 -1.1945156e+03 1.2792313e+03 - 2.8290684e+03 -1.0942739e+03 1.2066262e+03 - 2.8901989e+03 -9.8704465e+02 1.1302813e+03 - 2.9513698e+03 -8.7197948e+02 1.0517291e+03 - 3.0109807e+03 -7.4822236e+02 9.7335065e+02 - 3.0667593e+03 -6.1510081e+02 8.9857251e+02 - 3.1157325e+03 -4.7243172e+02 8.3190498e+02 - 3.1544265e+03 -3.2090358e+02 7.7863152e+02 - 3.1793989e+03 -1.6239448e+02 7.4399309e+02 - 3.1880487e+03 -2.4067136e-09 7.3195095e+02 - 3.2361113e+03 -4.8134273e-09 6.4808716e+02 - 3.2302362e+03 1.3735335e+02 6.5617099e+02 - 3.2129185e+03 2.7342612e+02 6.7992955e+02 - 3.1850349e+03 4.0704246e+02 7.1795904e+02 - 3.1479064e+03 5.3721296e+02 7.6814807e+02 - 3.1031295e+03 6.6317898e+02 8.2795321e+02 - 3.0524033e+03 7.8441778e+02 8.9468177e+02 - 2.9973839e+03 9.0061696e+02 9.6573001e+02 - 2.9395831e+03 1.0116315e+03 1.0387502e+03 - 2.8803119e+03 1.1174358e+03 1.1117440e+03 - 2.8206619e+03 1.2180798e+03 1.1830945e+03 - 2.7615120e+03 1.3136539e+03 1.2515556e+03 - 2.7035509e+03 1.4042628e+03 1.3162156e+03 - 2.6473058e+03 1.4900088e+03 1.3764499e+03 - 2.5931726e+03 1.5709823e+03 1.4318706e+03 - 2.5414442e+03 1.6472571e+03 1.4822795e+03 - 2.4923340e+03 1.7188892e+03 1.5276269e+03 - 2.4459970e+03 1.7859184e+03 1.5679761e+03 - 2.4025453e+03 1.8483708e+03 1.6034753e+03 - 2.3620605e+03 1.9062620e+03 1.6343346e+03 - 2.3246036e+03 1.9596013e+03 1.6608084e+03 - 2.2902207e+03 2.0083950e+03 1.6831812e+03 - 2.2589478e+03 2.0526510e+03 1.7017578e+03 - 2.2308132e+03 2.0923824e+03 1.7168548e+03 - 2.2058381e+03 2.1276118e+03 1.7287955e+03 - 2.1840363e+03 2.1583749e+03 1.7379051e+03 - 2.1654121e+03 2.1847252e+03 1.7445081e+03 - 2.1499582e+03 2.2067375e+03 1.7489251e+03 - 2.1376520e+03 2.2245118e+03 1.7514714e+03 - 2.1284518e+03 2.2381776e+03 1.7524548e+03 - 2.1222924e+03 2.2478966e+03 1.7521739e+03 - 2.1190806e+03 2.2538657e+03 1.7509161e+03 - 2.1186911e+03 2.2563194e+03 1.7489552e+03 - 2.1209625e+03 2.2555304e+03 1.7465486e+03 - 2.1256942e+03 2.2518097e+03 1.7439347e+03 - 2.1326448e+03 2.2455048e+03 1.7413295e+03 - 2.1415311e+03 2.2369968e+03 1.7389235e+03 - 2.1520297e+03 2.2266956e+03 1.7368778e+03 - 2.1637790e+03 2.2150336e+03 1.7353218e+03 - 2.1763846e+03 2.2024586e+03 1.7343497e+03 - 2.1894248e+03 2.1894248e+03 1.7340193e+03 - 2.2024586e+03 2.1763846e+03 1.7343497e+03 - 2.2150336e+03 2.1637790e+03 1.7353218e+03 - 2.2266956e+03 2.1520297e+03 1.7368778e+03 - 2.2369968e+03 2.1415311e+03 1.7389235e+03 - 2.2455048e+03 2.1326448e+03 1.7413295e+03 - 2.2518097e+03 2.1256942e+03 1.7439347e+03 - 2.2555304e+03 2.1209625e+03 1.7465486e+03 - 2.2563194e+03 2.1186911e+03 1.7489552e+03 - 2.2538657e+03 2.1190806e+03 1.7509161e+03 - 2.2478966e+03 2.1222924e+03 1.7521739e+03 - 2.2381776e+03 2.1284518e+03 1.7524548e+03 - 2.2245118e+03 2.1376520e+03 1.7514714e+03 - 2.2067375e+03 2.1499582e+03 1.7489251e+03 - 2.1847252e+03 2.1654121e+03 1.7445081e+03 - 2.1583749e+03 2.1840363e+03 1.7379051e+03 - 2.1276118e+03 2.2058381e+03 1.7287955e+03 - 2.0923824e+03 2.2308132e+03 1.7168548e+03 - 2.0526510e+03 2.2589478e+03 1.7017578e+03 - 2.0083950e+03 2.2902207e+03 1.6831812e+03 - 1.9596013e+03 2.3246036e+03 1.6608084e+03 - 1.9062620e+03 2.3620605e+03 1.6343346e+03 - 1.8483708e+03 2.4025453e+03 1.6034753e+03 - 1.7859184e+03 2.4459970e+03 1.5679761e+03 - 1.7188892e+03 2.4923340e+03 1.5276269e+03 - 1.6472571e+03 2.5414442e+03 1.4822795e+03 - 1.5709823e+03 2.5931726e+03 1.4318706e+03 - 1.4900088e+03 2.6473058e+03 1.3764499e+03 - 1.4042628e+03 2.7035509e+03 1.3162156e+03 - 1.3136539e+03 2.7615120e+03 1.2515556e+03 - 1.2180798e+03 2.8206619e+03 1.1830945e+03 - 1.1174358e+03 2.8803119e+03 1.1117440e+03 - 1.0116315e+03 2.9395831e+03 1.0387502e+03 - 9.0061696e+02 2.9973839e+03 9.6573001e+02 - 7.8441778e+02 3.0524033e+03 8.9468177e+02 - 6.6317898e+02 3.1031295e+03 8.2795321e+02 - 5.3721296e+02 3.1479064e+03 7.6814807e+02 - 4.0704246e+02 3.1850349e+03 7.1795904e+02 - 2.7342612e+02 3.2129185e+03 6.7992955e+02 - 1.3735335e+02 3.2302362e+03 6.5617099e+02 - -7.2201409e-09 3.2361113e+03 6.4808716e+02 - -1.3735335e+02 3.2302362e+03 6.5617099e+02 - -2.7342612e+02 3.2129185e+03 6.7992955e+02 - -4.0704246e+02 3.1850349e+03 7.1795904e+02 - -5.3721296e+02 3.1479064e+03 7.6814807e+02 - -6.6317898e+02 3.1031295e+03 8.2795321e+02 - -7.8441778e+02 3.0524033e+03 8.9468177e+02 - -9.0061696e+02 2.9973839e+03 9.6573001e+02 - -1.0116315e+03 2.9395831e+03 1.0387502e+03 - -1.1174358e+03 2.8803119e+03 1.1117440e+03 - -1.2180798e+03 2.8206619e+03 1.1830945e+03 - -1.3136539e+03 2.7615120e+03 1.2515556e+03 - -1.4042628e+03 2.7035509e+03 1.3162156e+03 - -1.4900088e+03 2.6473058e+03 1.3764499e+03 - -1.5709823e+03 2.5931726e+03 1.4318706e+03 - -1.6472571e+03 2.5414442e+03 1.4822795e+03 - -1.7188892e+03 2.4923340e+03 1.5276269e+03 - -1.7859184e+03 2.4459970e+03 1.5679761e+03 - -1.8483708e+03 2.4025453e+03 1.6034753e+03 - -1.9062620e+03 2.3620605e+03 1.6343346e+03 - -1.9596013e+03 2.3246036e+03 1.6608084e+03 - -2.0083950e+03 2.2902207e+03 1.6831812e+03 - -2.0526510e+03 2.2589478e+03 1.7017578e+03 - -2.0923824e+03 2.2308132e+03 1.7168548e+03 - -2.1276118e+03 2.2058381e+03 1.7287955e+03 - -2.1583749e+03 2.1840363e+03 1.7379051e+03 - -2.1847252e+03 2.1654121e+03 1.7445081e+03 - -2.2067375e+03 2.1499582e+03 1.7489251e+03 - -2.2245118e+03 2.1376520e+03 1.7514714e+03 - -2.2381776e+03 2.1284518e+03 1.7524548e+03 - -2.2478966e+03 2.1222924e+03 1.7521739e+03 - -2.2538657e+03 2.1190806e+03 1.7509161e+03 - -2.2563194e+03 2.1186911e+03 1.7489552e+03 - -2.2555304e+03 2.1209625e+03 1.7465486e+03 - -2.2518097e+03 2.1256942e+03 1.7439347e+03 - -2.2455048e+03 2.1326448e+03 1.7413295e+03 - -2.2369968e+03 2.1415311e+03 1.7389235e+03 - -2.2266956e+03 2.1520297e+03 1.7368778e+03 - -2.2150336e+03 2.1637790e+03 1.7353218e+03 - -2.2024586e+03 2.1763846e+03 1.7343497e+03 - -2.1894248e+03 2.1894248e+03 1.7340193e+03 - -2.1763846e+03 2.2024586e+03 1.7343497e+03 - -2.1637790e+03 2.2150336e+03 1.7353218e+03 - -2.1520297e+03 2.2266956e+03 1.7368778e+03 - -2.1415311e+03 2.2369968e+03 1.7389235e+03 - -2.1326448e+03 2.2455048e+03 1.7413295e+03 - -2.1256942e+03 2.2518097e+03 1.7439347e+03 - -2.1209625e+03 2.2555304e+03 1.7465486e+03 - -2.1186911e+03 2.2563194e+03 1.7489552e+03 - -2.1190806e+03 2.2538657e+03 1.7509161e+03 - -2.1222924e+03 2.2478966e+03 1.7521739e+03 - -2.1284518e+03 2.2381776e+03 1.7524548e+03 - -2.1376520e+03 2.2245118e+03 1.7514714e+03 - -2.1499582e+03 2.2067375e+03 1.7489251e+03 - -2.1654121e+03 2.1847252e+03 1.7445081e+03 - -2.1840363e+03 2.1583749e+03 1.7379051e+03 - -2.2058381e+03 2.1276118e+03 1.7287955e+03 - -2.2308132e+03 2.0923824e+03 1.7168548e+03 - -2.2589478e+03 2.0526510e+03 1.7017578e+03 - -2.2902207e+03 2.0083950e+03 1.6831812e+03 - -2.3246036e+03 1.9596013e+03 1.6608084e+03 - -2.3620605e+03 1.9062620e+03 1.6343346e+03 - -2.4025453e+03 1.8483708e+03 1.6034753e+03 - -2.4459970e+03 1.7859184e+03 1.5679761e+03 - -2.4923340e+03 1.7188892e+03 1.5276269e+03 - -2.5414442e+03 1.6472571e+03 1.4822795e+03 - -2.5931726e+03 1.5709823e+03 1.4318706e+03 - -2.6473058e+03 1.4900088e+03 1.3764499e+03 - -2.7035509e+03 1.4042628e+03 1.3162156e+03 - -2.7615120e+03 1.3136539e+03 1.2515556e+03 - -2.8206619e+03 1.2180798e+03 1.1830945e+03 - -2.8803119e+03 1.1174358e+03 1.1117440e+03 - -2.9395831e+03 1.0116315e+03 1.0387502e+03 - -2.9973839e+03 9.0061696e+02 9.6573001e+02 - -3.0524033e+03 7.8441778e+02 8.9468177e+02 - -3.1031295e+03 6.6317898e+02 8.2795321e+02 - -3.1479064e+03 5.3721296e+02 7.6814807e+02 - -3.1850349e+03 4.0704246e+02 7.1795904e+02 - -3.2129185e+03 2.7342612e+02 6.7992955e+02 - -3.2302362e+03 1.3735335e+02 6.5617099e+02 - -3.2361113e+03 0.0000000e+00 6.4808716e+02 - -3.2302362e+03 -1.3735335e+02 6.5617099e+02 - -3.2129185e+03 -2.7342612e+02 6.7992955e+02 - -3.1850349e+03 -4.0704246e+02 7.1795904e+02 - -3.1479064e+03 -5.3721296e+02 7.6814807e+02 - -3.1031295e+03 -6.6317898e+02 8.2795321e+02 - -3.0524033e+03 -7.8441778e+02 8.9468177e+02 - -2.9973839e+03 -9.0061696e+02 9.6573001e+02 - -2.9395831e+03 -1.0116315e+03 1.0387502e+03 - -2.8803119e+03 -1.1174358e+03 1.1117440e+03 - -2.8206619e+03 -1.2180798e+03 1.1830945e+03 - -2.7615120e+03 -1.3136539e+03 1.2515556e+03 - -2.7035509e+03 -1.4042628e+03 1.3162156e+03 - -2.6473058e+03 -1.4900088e+03 1.3764499e+03 - -2.5931726e+03 -1.5709823e+03 1.4318706e+03 - -2.5414442e+03 -1.6472571e+03 1.4822795e+03 - -2.4923340e+03 -1.7188892e+03 1.5276269e+03 - -2.4459970e+03 -1.7859184e+03 1.5679761e+03 - -2.4025453e+03 -1.8483708e+03 1.6034753e+03 - -2.3620605e+03 -1.9062620e+03 1.6343346e+03 - -2.3246036e+03 -1.9596013e+03 1.6608084e+03 - -2.2902207e+03 -2.0083950e+03 1.6831812e+03 - -2.2589478e+03 -2.0526510e+03 1.7017578e+03 - -2.2308132e+03 -2.0923824e+03 1.7168548e+03 - -2.2058381e+03 -2.1276118e+03 1.7287955e+03 - -2.1840363e+03 -2.1583749e+03 1.7379051e+03 - -2.1654121e+03 -2.1847252e+03 1.7445081e+03 - -2.1499582e+03 -2.2067375e+03 1.7489251e+03 - -2.1376520e+03 -2.2245118e+03 1.7514714e+03 - -2.1284518e+03 -2.2381776e+03 1.7524548e+03 - -2.1222924e+03 -2.2478966e+03 1.7521739e+03 - -2.1190806e+03 -2.2538657e+03 1.7509161e+03 - -2.1186911e+03 -2.2563194e+03 1.7489552e+03 - -2.1209625e+03 -2.2555304e+03 1.7465486e+03 - -2.1256942e+03 -2.2518097e+03 1.7439347e+03 - -2.1326448e+03 -2.2455048e+03 1.7413295e+03 - -2.1415311e+03 -2.2369968e+03 1.7389235e+03 - -2.1520297e+03 -2.2266956e+03 1.7368778e+03 - -2.1637790e+03 -2.2150336e+03 1.7353218e+03 - -2.1763846e+03 -2.2024586e+03 1.7343497e+03 - -2.1894248e+03 -2.1894248e+03 1.7340193e+03 - -2.2024586e+03 -2.1763846e+03 1.7343497e+03 - -2.2150336e+03 -2.1637790e+03 1.7353218e+03 - -2.2266956e+03 -2.1520297e+03 1.7368778e+03 - -2.2369968e+03 -2.1415311e+03 1.7389235e+03 - -2.2455048e+03 -2.1326448e+03 1.7413295e+03 - -2.2518097e+03 -2.1256942e+03 1.7439347e+03 - -2.2555304e+03 -2.1209625e+03 1.7465486e+03 - -2.2563194e+03 -2.1186911e+03 1.7489552e+03 - -2.2538657e+03 -2.1190806e+03 1.7509161e+03 - -2.2478966e+03 -2.1222924e+03 1.7521739e+03 - -2.2381776e+03 -2.1284518e+03 1.7524548e+03 - -2.2245118e+03 -2.1376520e+03 1.7514714e+03 - -2.2067375e+03 -2.1499582e+03 1.7489251e+03 - -2.1847252e+03 -2.1654121e+03 1.7445081e+03 - -2.1583749e+03 -2.1840363e+03 1.7379051e+03 - -2.1276118e+03 -2.2058381e+03 1.7287955e+03 - -2.0923824e+03 -2.2308132e+03 1.7168548e+03 - -2.0526510e+03 -2.2589478e+03 1.7017578e+03 - -2.0083950e+03 -2.2902207e+03 1.6831812e+03 - -1.9596013e+03 -2.3246036e+03 1.6608084e+03 - -1.9062620e+03 -2.3620605e+03 1.6343346e+03 - -1.8483708e+03 -2.4025453e+03 1.6034753e+03 - -1.7859184e+03 -2.4459970e+03 1.5679761e+03 - -1.7188892e+03 -2.4923340e+03 1.5276269e+03 - -1.6472571e+03 -2.5414442e+03 1.4822795e+03 - -1.5709823e+03 -2.5931726e+03 1.4318706e+03 - -1.4900088e+03 -2.6473058e+03 1.3764499e+03 - -1.4042628e+03 -2.7035509e+03 1.3162156e+03 - -1.3136539e+03 -2.7615120e+03 1.2515556e+03 - -1.2180798e+03 -2.8206619e+03 1.1830945e+03 - -1.1174358e+03 -2.8803119e+03 1.1117440e+03 - -1.0116315e+03 -2.9395831e+03 1.0387502e+03 - -9.0061696e+02 -2.9973839e+03 9.6573001e+02 - -7.8441778e+02 -3.0524033e+03 8.9468177e+02 - -6.6317898e+02 -3.1031295e+03 8.2795321e+02 - -5.3721296e+02 -3.1479064e+03 7.6814807e+02 - -4.0704246e+02 -3.1850349e+03 7.1795904e+02 - -2.7342612e+02 -3.2129185e+03 6.7992955e+02 - -1.3735335e+02 -3.2302362e+03 6.5617099e+02 - 2.4067136e-09 -3.2361113e+03 6.4808716e+02 - 1.3735335e+02 -3.2302362e+03 6.5617099e+02 - 2.7342612e+02 -3.2129185e+03 6.7992955e+02 - 4.0704246e+02 -3.1850349e+03 7.1795904e+02 - 5.3721296e+02 -3.1479064e+03 7.6814807e+02 - 6.6317898e+02 -3.1031295e+03 8.2795321e+02 - 7.8441778e+02 -3.0524033e+03 8.9468177e+02 - 9.0061696e+02 -2.9973839e+03 9.6573001e+02 - 1.0116315e+03 -2.9395831e+03 1.0387502e+03 - 1.1174358e+03 -2.8803119e+03 1.1117440e+03 - 1.2180798e+03 -2.8206619e+03 1.1830945e+03 - 1.3136539e+03 -2.7615120e+03 1.2515556e+03 - 1.4042628e+03 -2.7035509e+03 1.3162156e+03 - 1.4900088e+03 -2.6473058e+03 1.3764499e+03 - 1.5709823e+03 -2.5931726e+03 1.4318706e+03 - 1.6472571e+03 -2.5414442e+03 1.4822795e+03 - 1.7188892e+03 -2.4923340e+03 1.5276269e+03 - 1.7859184e+03 -2.4459970e+03 1.5679761e+03 - 1.8483708e+03 -2.4025453e+03 1.6034753e+03 - 1.9062620e+03 -2.3620605e+03 1.6343346e+03 - 1.9596013e+03 -2.3246036e+03 1.6608084e+03 - 2.0083950e+03 -2.2902207e+03 1.6831812e+03 - 2.0526510e+03 -2.2589478e+03 1.7017578e+03 - 2.0923824e+03 -2.2308132e+03 1.7168548e+03 - 2.1276118e+03 -2.2058381e+03 1.7287955e+03 - 2.1583749e+03 -2.1840363e+03 1.7379051e+03 - 2.1847252e+03 -2.1654121e+03 1.7445081e+03 - 2.2067375e+03 -2.1499582e+03 1.7489251e+03 - 2.2245118e+03 -2.1376520e+03 1.7514714e+03 - 2.2381776e+03 -2.1284518e+03 1.7524548e+03 - 2.2478966e+03 -2.1222924e+03 1.7521739e+03 - 2.2538657e+03 -2.1190806e+03 1.7509161e+03 - 2.2563194e+03 -2.1186911e+03 1.7489552e+03 - 2.2555304e+03 -2.1209625e+03 1.7465486e+03 - 2.2518097e+03 -2.1256942e+03 1.7439347e+03 - 2.2455048e+03 -2.1326448e+03 1.7413295e+03 - 2.2369968e+03 -2.1415311e+03 1.7389235e+03 - 2.2266956e+03 -2.1520297e+03 1.7368778e+03 - 2.2150336e+03 -2.1637790e+03 1.7353218e+03 - 2.2024586e+03 -2.1763846e+03 1.7343497e+03 - 2.1894248e+03 -2.1894248e+03 1.7340193e+03 - 2.1763846e+03 -2.2024586e+03 1.7343497e+03 - 2.1637790e+03 -2.2150336e+03 1.7353218e+03 - 2.1520297e+03 -2.2266956e+03 1.7368778e+03 - 2.1415311e+03 -2.2369968e+03 1.7389235e+03 - 2.1326448e+03 -2.2455048e+03 1.7413295e+03 - 2.1256942e+03 -2.2518097e+03 1.7439347e+03 - 2.1209625e+03 -2.2555304e+03 1.7465486e+03 - 2.1186911e+03 -2.2563194e+03 1.7489552e+03 - 2.1190806e+03 -2.2538657e+03 1.7509161e+03 - 2.1222924e+03 -2.2478966e+03 1.7521739e+03 - 2.1284518e+03 -2.2381776e+03 1.7524548e+03 - 2.1376520e+03 -2.2245118e+03 1.7514714e+03 - 2.1499582e+03 -2.2067375e+03 1.7489251e+03 - 2.1654121e+03 -2.1847252e+03 1.7445081e+03 - 2.1840363e+03 -2.1583749e+03 1.7379051e+03 - 2.2058381e+03 -2.1276118e+03 1.7287955e+03 - 2.2308132e+03 -2.0923824e+03 1.7168548e+03 - 2.2589478e+03 -2.0526510e+03 1.7017578e+03 - 2.2902207e+03 -2.0083950e+03 1.6831812e+03 - 2.3246036e+03 -1.9596013e+03 1.6608084e+03 - 2.3620605e+03 -1.9062620e+03 1.6343346e+03 - 2.4025453e+03 -1.8483708e+03 1.6034753e+03 - 2.4459970e+03 -1.7859184e+03 1.5679761e+03 - 2.4923340e+03 -1.7188892e+03 1.5276269e+03 - 2.5414442e+03 -1.6472571e+03 1.4822795e+03 - 2.5931726e+03 -1.5709823e+03 1.4318706e+03 - 2.6473058e+03 -1.4900088e+03 1.3764499e+03 - 2.7035509e+03 -1.4042628e+03 1.3162156e+03 - 2.7615120e+03 -1.3136539e+03 1.2515556e+03 - 2.8206619e+03 -1.2180798e+03 1.1830945e+03 - 2.8803119e+03 -1.1174358e+03 1.1117440e+03 - 2.9395831e+03 -1.0116315e+03 1.0387502e+03 - 2.9973839e+03 -9.0061696e+02 9.6573001e+02 - 3.0524033e+03 -7.8441778e+02 8.9468177e+02 - 3.1031295e+03 -6.6317898e+02 8.2795321e+02 - 3.1479064e+03 -5.3721296e+02 7.6814807e+02 - 3.1850349e+03 -4.0704246e+02 7.1795904e+02 - 3.2129185e+03 -2.7342612e+02 6.7992955e+02 - 3.2302362e+03 -1.3735335e+02 6.5617099e+02 - 3.2361113e+03 9.6268545e-09 6.4808716e+02 - 3.2801869e+03 2.4067136e-09 5.6755639e+02 - 3.2759136e+03 1.2052814e+02 5.7333736e+02 - 3.2631870e+03 2.4071292e+02 5.9051585e+02 - 3.2422862e+03 3.6020315e+02 6.1860344e+02 - 3.2136689e+03 4.7863400e+02 6.5680305e+02 - 3.1779606e+03 5.9562475e+02 7.0403651e+02 - 3.1359344e+03 7.1078108e+02 7.5898633e+02 - 3.0884846e+03 8.2370153e+02 8.2015186e+02 - 3.0365909e+03 9.3398747e+02 8.8591805e+02 - 2.9812784e+03 1.0412545e+03 9.5463165e+02 - 2.9235748e+03 1.1451438e+03 1.0246782e+03 - 2.8644708e+03 1.2453311e+03 1.0945519e+03 - 2.8048862e+03 1.3415334e+03 1.1629124e+03 - 2.7456457e+03 1.4335109e+03 1.2286231e+03 - 2.6874640e+03 1.5210667e+03 1.2907714e+03 - 2.6309421e+03 1.6040437e+03 1.3486711e+03 - 2.5765699e+03 1.6823200e+03 1.4018503e+03 - 2.5247365e+03 1.7558032e+03 1.4500305e+03 - 2.4757425e+03 1.8244260e+03 1.4930988e+03 - 2.4298149e+03 1.8881412e+03 1.5310794e+03 - 2.3871209e+03 1.9469188e+03 1.5641055e+03 - 2.3477809e+03 2.0007438e+03 1.5923934e+03 - 2.3118790e+03 2.0496151e+03 1.6162204e+03 - 2.2794716e+03 2.0935460e+03 1.6359069e+03 - 2.2505932e+03 2.1325650e+03 1.6518013e+03 - 2.2252605e+03 2.1667182e+03 1.6642689e+03 - 2.2034735e+03 2.1960713e+03 1.6736827e+03 - 2.1852156e+03 2.2207136e+03 1.6804172e+03 - 2.1704523e+03 2.2407610e+03 1.6848434e+03 - 2.1591275e+03 2.2563594e+03 1.6873242e+03 - 2.1511605e+03 2.2676889e+03 1.6882120e+03 - 2.1464415e+03 2.2749663e+03 1.6878449e+03 - 2.1448270e+03 2.2784474e+03 1.6865441e+03 - 2.1461360e+03 2.2784290e+03 1.6846109e+03 - 2.1501464e+03 2.2752486e+03 1.6823233e+03 - 2.1565927e+03 2.2692827e+03 1.6799322e+03 - 2.1651651e+03 2.2609445e+03 1.6776585e+03 - 2.1755105e+03 2.2506782e+03 1.6756889e+03 - 2.1872353e+03 2.2389529e+03 1.6741725e+03 - 2.1999101e+03 2.2262544e+03 1.6732184e+03 - 2.2130764e+03 2.2130764e+03 1.6728930e+03 - 2.2262544e+03 2.1999101e+03 1.6732184e+03 - 2.2389529e+03 2.1872353e+03 1.6741725e+03 - 2.2506782e+03 2.1755105e+03 1.6756889e+03 - 2.2609445e+03 2.1651651e+03 1.6776585e+03 - 2.2692827e+03 2.1565927e+03 1.6799322e+03 - 2.2752486e+03 2.1501464e+03 1.6823233e+03 - 2.2784290e+03 2.1461360e+03 1.6846109e+03 - 2.2784474e+03 2.1448270e+03 1.6865441e+03 - 2.2749663e+03 2.1464415e+03 1.6878449e+03 - 2.2676889e+03 2.1511605e+03 1.6882120e+03 - 2.2563594e+03 2.1591275e+03 1.6873242e+03 - 2.2407610e+03 2.1704523e+03 1.6848434e+03 - 2.2207136e+03 2.1852156e+03 1.6804172e+03 - 2.1960713e+03 2.2034735e+03 1.6736827e+03 - 2.1667182e+03 2.2252605e+03 1.6642689e+03 - 2.1325650e+03 2.2505932e+03 1.6518013e+03 - 2.0935460e+03 2.2794716e+03 1.6359069e+03 - 2.0496151e+03 2.3118790e+03 1.6162204e+03 - 2.0007438e+03 2.3477809e+03 1.5923934e+03 - 1.9469188e+03 2.3871209e+03 1.5641055e+03 - 1.8881412e+03 2.4298149e+03 1.5310794e+03 - 1.8244260e+03 2.4757425e+03 1.4930988e+03 - 1.7558032e+03 2.5247365e+03 1.4500305e+03 - 1.6823200e+03 2.5765699e+03 1.4018503e+03 - 1.6040437e+03 2.6309421e+03 1.3486711e+03 - 1.5210667e+03 2.6874640e+03 1.2907714e+03 - 1.4335109e+03 2.7456457e+03 1.2286231e+03 - 1.3415334e+03 2.8048862e+03 1.1629124e+03 - 1.2453311e+03 2.8644708e+03 1.0945519e+03 - 1.1451438e+03 2.9235748e+03 1.0246782e+03 - 1.0412545e+03 2.9812784e+03 9.5463165e+02 - 9.3398747e+02 3.0365909e+03 8.8591805e+02 - 8.2370153e+02 3.0884846e+03 8.2015186e+02 - 7.1078108e+02 3.1359344e+03 7.5898633e+02 - 5.9562475e+02 3.1779606e+03 7.0403651e+02 - 4.7863400e+02 3.2136689e+03 6.5680305e+02 - 3.6020315e+02 3.2422862e+03 6.1860344e+02 - 2.4071292e+02 3.2631870e+03 5.9051585e+02 - 1.2052814e+02 3.2759136e+03 5.7333736e+02 - 0.0000000e+00 3.2801869e+03 5.6755639e+02 - -1.2052814e+02 3.2759136e+03 5.7333736e+02 - -2.4071292e+02 3.2631870e+03 5.9051585e+02 - -3.6020315e+02 3.2422862e+03 6.1860344e+02 - -4.7863400e+02 3.2136689e+03 6.5680305e+02 - -5.9562475e+02 3.1779606e+03 7.0403651e+02 - -7.1078108e+02 3.1359344e+03 7.5898633e+02 - -8.2370153e+02 3.0884846e+03 8.2015186e+02 - -9.3398747e+02 3.0365909e+03 8.8591805e+02 - -1.0412545e+03 2.9812784e+03 9.5463165e+02 - -1.1451438e+03 2.9235748e+03 1.0246782e+03 - -1.2453311e+03 2.8644708e+03 1.0945519e+03 - -1.3415334e+03 2.8048862e+03 1.1629124e+03 - -1.4335109e+03 2.7456457e+03 1.2286231e+03 - -1.5210667e+03 2.6874640e+03 1.2907714e+03 - -1.6040437e+03 2.6309421e+03 1.3486711e+03 - -1.6823200e+03 2.5765699e+03 1.4018503e+03 - -1.7558032e+03 2.5247365e+03 1.4500305e+03 - -1.8244260e+03 2.4757425e+03 1.4930988e+03 - -1.8881412e+03 2.4298149e+03 1.5310794e+03 - -1.9469188e+03 2.3871209e+03 1.5641055e+03 - -2.0007438e+03 2.3477809e+03 1.5923934e+03 - -2.0496151e+03 2.3118790e+03 1.6162204e+03 - -2.0935460e+03 2.2794716e+03 1.6359069e+03 - -2.1325650e+03 2.2505932e+03 1.6518013e+03 - -2.1667182e+03 2.2252605e+03 1.6642689e+03 - -2.1960713e+03 2.2034735e+03 1.6736827e+03 - -2.2207136e+03 2.1852156e+03 1.6804172e+03 - -2.2407610e+03 2.1704523e+03 1.6848434e+03 - -2.2563594e+03 2.1591275e+03 1.6873242e+03 - -2.2676889e+03 2.1511605e+03 1.6882120e+03 - -2.2749663e+03 2.1464415e+03 1.6878449e+03 - -2.2784474e+03 2.1448270e+03 1.6865441e+03 - -2.2784290e+03 2.1461360e+03 1.6846109e+03 - -2.2752486e+03 2.1501464e+03 1.6823233e+03 - -2.2692827e+03 2.1565927e+03 1.6799322e+03 - -2.2609445e+03 2.1651651e+03 1.6776585e+03 - -2.2506782e+03 2.1755105e+03 1.6756889e+03 - -2.2389529e+03 2.1872353e+03 1.6741725e+03 - -2.2262544e+03 2.1999101e+03 1.6732184e+03 - -2.2130764e+03 2.2130764e+03 1.6728930e+03 - -2.1999101e+03 2.2262544e+03 1.6732184e+03 - -2.1872353e+03 2.2389529e+03 1.6741725e+03 - -2.1755105e+03 2.2506782e+03 1.6756889e+03 - -2.1651651e+03 2.2609445e+03 1.6776585e+03 - -2.1565927e+03 2.2692827e+03 1.6799322e+03 - -2.1501464e+03 2.2752486e+03 1.6823233e+03 - -2.1461360e+03 2.2784290e+03 1.6846109e+03 - -2.1448270e+03 2.2784474e+03 1.6865441e+03 - -2.1464415e+03 2.2749663e+03 1.6878449e+03 - -2.1511605e+03 2.2676889e+03 1.6882120e+03 - -2.1591275e+03 2.2563594e+03 1.6873242e+03 - -2.1704523e+03 2.2407610e+03 1.6848434e+03 - -2.1852156e+03 2.2207136e+03 1.6804172e+03 - -2.2034735e+03 2.1960713e+03 1.6736827e+03 - -2.2252605e+03 2.1667182e+03 1.6642689e+03 - -2.2505932e+03 2.1325650e+03 1.6518013e+03 - -2.2794716e+03 2.0935460e+03 1.6359069e+03 - -2.3118790e+03 2.0496151e+03 1.6162204e+03 - -2.3477809e+03 2.0007438e+03 1.5923934e+03 - -2.3871209e+03 1.9469188e+03 1.5641055e+03 - -2.4298149e+03 1.8881412e+03 1.5310794e+03 - -2.4757425e+03 1.8244260e+03 1.4930988e+03 - -2.5247365e+03 1.7558032e+03 1.4500305e+03 - -2.5765699e+03 1.6823200e+03 1.4018503e+03 - -2.6309421e+03 1.6040437e+03 1.3486711e+03 - -2.6874640e+03 1.5210667e+03 1.2907714e+03 - -2.7456457e+03 1.4335109e+03 1.2286231e+03 - -2.8048862e+03 1.3415334e+03 1.1629124e+03 - -2.8644708e+03 1.2453311e+03 1.0945519e+03 - -2.9235748e+03 1.1451438e+03 1.0246782e+03 - -2.9812784e+03 1.0412545e+03 9.5463165e+02 - -3.0365909e+03 9.3398747e+02 8.8591805e+02 - -3.0884846e+03 8.2370153e+02 8.2015186e+02 - -3.1359344e+03 7.1078108e+02 7.5898633e+02 - -3.1779606e+03 5.9562475e+02 7.0403651e+02 - -3.2136689e+03 4.7863400e+02 6.5680305e+02 - -3.2422862e+03 3.6020315e+02 6.1860344e+02 - -3.2631870e+03 2.4071292e+02 5.9051585e+02 - -3.2759136e+03 1.2052814e+02 5.7333736e+02 - -3.2801869e+03 2.4067136e-09 5.6755639e+02 - -3.2759136e+03 -1.2052814e+02 5.7333736e+02 - -3.2631870e+03 -2.4071292e+02 5.9051585e+02 - -3.2422862e+03 -3.6020315e+02 6.1860344e+02 - -3.2136689e+03 -4.7863400e+02 6.5680305e+02 - -3.1779606e+03 -5.9562475e+02 7.0403651e+02 - -3.1359344e+03 -7.1078108e+02 7.5898633e+02 - -3.0884846e+03 -8.2370153e+02 8.2015186e+02 - -3.0365909e+03 -9.3398747e+02 8.8591805e+02 - -2.9812784e+03 -1.0412545e+03 9.5463165e+02 - -2.9235748e+03 -1.1451438e+03 1.0246782e+03 - -2.8644708e+03 -1.2453311e+03 1.0945519e+03 - -2.8048862e+03 -1.3415334e+03 1.1629124e+03 - -2.7456457e+03 -1.4335109e+03 1.2286231e+03 - -2.6874640e+03 -1.5210667e+03 1.2907714e+03 - -2.6309421e+03 -1.6040437e+03 1.3486711e+03 - -2.5765699e+03 -1.6823200e+03 1.4018503e+03 - -2.5247365e+03 -1.7558032e+03 1.4500305e+03 - -2.4757425e+03 -1.8244260e+03 1.4930988e+03 - -2.4298149e+03 -1.8881412e+03 1.5310794e+03 - -2.3871209e+03 -1.9469188e+03 1.5641055e+03 - -2.3477809e+03 -2.0007438e+03 1.5923934e+03 - -2.3118790e+03 -2.0496151e+03 1.6162204e+03 - -2.2794716e+03 -2.0935460e+03 1.6359069e+03 - -2.2505932e+03 -2.1325650e+03 1.6518013e+03 - -2.2252605e+03 -2.1667182e+03 1.6642689e+03 - -2.2034735e+03 -2.1960713e+03 1.6736827e+03 - -2.1852156e+03 -2.2207136e+03 1.6804172e+03 - -2.1704523e+03 -2.2407610e+03 1.6848434e+03 - -2.1591275e+03 -2.2563594e+03 1.6873242e+03 - -2.1511605e+03 -2.2676889e+03 1.6882120e+03 - -2.1464415e+03 -2.2749663e+03 1.6878449e+03 - -2.1448270e+03 -2.2784474e+03 1.6865441e+03 - -2.1461360e+03 -2.2784290e+03 1.6846109e+03 - -2.1501464e+03 -2.2752486e+03 1.6823233e+03 - -2.1565927e+03 -2.2692827e+03 1.6799322e+03 - -2.1651651e+03 -2.2609445e+03 1.6776585e+03 - -2.1755105e+03 -2.2506782e+03 1.6756889e+03 - -2.1872353e+03 -2.2389529e+03 1.6741725e+03 - -2.1999101e+03 -2.2262544e+03 1.6732184e+03 - -2.2130764e+03 -2.2130764e+03 1.6728930e+03 - -2.2262544e+03 -2.1999101e+03 1.6732184e+03 - -2.2389529e+03 -2.1872353e+03 1.6741725e+03 - -2.2506782e+03 -2.1755105e+03 1.6756889e+03 - -2.2609445e+03 -2.1651651e+03 1.6776585e+03 - -2.2692827e+03 -2.1565927e+03 1.6799322e+03 - -2.2752486e+03 -2.1501464e+03 1.6823233e+03 - -2.2784290e+03 -2.1461360e+03 1.6846109e+03 - -2.2784474e+03 -2.1448270e+03 1.6865441e+03 - -2.2749663e+03 -2.1464415e+03 1.6878449e+03 - -2.2676889e+03 -2.1511605e+03 1.6882120e+03 - -2.2563594e+03 -2.1591275e+03 1.6873242e+03 - -2.2407610e+03 -2.1704523e+03 1.6848434e+03 - -2.2207136e+03 -2.1852156e+03 1.6804172e+03 - -2.1960713e+03 -2.2034735e+03 1.6736827e+03 - -2.1667182e+03 -2.2252605e+03 1.6642689e+03 - -2.1325650e+03 -2.2505932e+03 1.6518013e+03 - -2.0935460e+03 -2.2794716e+03 1.6359069e+03 - -2.0496151e+03 -2.3118790e+03 1.6162204e+03 - -2.0007438e+03 -2.3477809e+03 1.5923934e+03 - -1.9469188e+03 -2.3871209e+03 1.5641055e+03 - -1.8881412e+03 -2.4298149e+03 1.5310794e+03 - -1.8244260e+03 -2.4757425e+03 1.4930988e+03 - -1.7558032e+03 -2.5247365e+03 1.4500305e+03 - -1.6823200e+03 -2.5765699e+03 1.4018503e+03 - -1.6040437e+03 -2.6309421e+03 1.3486711e+03 - -1.5210667e+03 -2.6874640e+03 1.2907714e+03 - -1.4335109e+03 -2.7456457e+03 1.2286231e+03 - -1.3415334e+03 -2.8048862e+03 1.1629124e+03 - -1.2453311e+03 -2.8644708e+03 1.0945519e+03 - -1.1451438e+03 -2.9235748e+03 1.0246782e+03 - -1.0412545e+03 -2.9812784e+03 9.5463165e+02 - -9.3398747e+02 -3.0365909e+03 8.8591805e+02 - -8.2370153e+02 -3.0884846e+03 8.2015186e+02 - -7.1078108e+02 -3.1359344e+03 7.5898633e+02 - -5.9562475e+02 -3.1779606e+03 7.0403651e+02 - -4.7863400e+02 -3.2136689e+03 6.5680305e+02 - -3.6020315e+02 -3.2422862e+03 6.1860344e+02 - -2.4071292e+02 -3.2631870e+03 5.9051585e+02 - -1.2052814e+02 -3.2759136e+03 5.7333736e+02 - 4.8134273e-09 -3.2801869e+03 5.6755639e+02 - 1.2052814e+02 -3.2759136e+03 5.7333736e+02 - 2.4071292e+02 -3.2631870e+03 5.9051585e+02 - 3.6020315e+02 -3.2422862e+03 6.1860344e+02 - 4.7863400e+02 -3.2136689e+03 6.5680305e+02 - 5.9562475e+02 -3.1779606e+03 7.0403651e+02 - 7.1078108e+02 -3.1359344e+03 7.5898633e+02 - 8.2370153e+02 -3.0884846e+03 8.2015186e+02 - 9.3398747e+02 -3.0365909e+03 8.8591805e+02 - 1.0412545e+03 -2.9812784e+03 9.5463165e+02 - 1.1451438e+03 -2.9235748e+03 1.0246782e+03 - 1.2453311e+03 -2.8644708e+03 1.0945519e+03 - 1.3415334e+03 -2.8048862e+03 1.1629124e+03 - 1.4335109e+03 -2.7456457e+03 1.2286231e+03 - 1.5210667e+03 -2.6874640e+03 1.2907714e+03 - 1.6040437e+03 -2.6309421e+03 1.3486711e+03 - 1.6823200e+03 -2.5765699e+03 1.4018503e+03 - 1.7558032e+03 -2.5247365e+03 1.4500305e+03 - 1.8244260e+03 -2.4757425e+03 1.4930988e+03 - 1.8881412e+03 -2.4298149e+03 1.5310794e+03 - 1.9469188e+03 -2.3871209e+03 1.5641055e+03 - 2.0007438e+03 -2.3477809e+03 1.5923934e+03 - 2.0496151e+03 -2.3118790e+03 1.6162204e+03 - 2.0935460e+03 -2.2794716e+03 1.6359069e+03 - 2.1325650e+03 -2.2505932e+03 1.6518013e+03 - 2.1667182e+03 -2.2252605e+03 1.6642689e+03 - 2.1960713e+03 -2.2034735e+03 1.6736827e+03 - 2.2207136e+03 -2.1852156e+03 1.6804172e+03 - 2.2407610e+03 -2.1704523e+03 1.6848434e+03 - 2.2563594e+03 -2.1591275e+03 1.6873242e+03 - 2.2676889e+03 -2.1511605e+03 1.6882120e+03 - 2.2749663e+03 -2.1464415e+03 1.6878449e+03 - 2.2784474e+03 -2.1448270e+03 1.6865441e+03 - 2.2784290e+03 -2.1461360e+03 1.6846109e+03 - 2.2752486e+03 -2.1501464e+03 1.6823233e+03 - 2.2692827e+03 -2.1565927e+03 1.6799322e+03 - 2.2609445e+03 -2.1651651e+03 1.6776585e+03 - 2.2506782e+03 -2.1755105e+03 1.6756889e+03 - 2.2389529e+03 -2.1872353e+03 1.6741725e+03 - 2.2262544e+03 -2.1999101e+03 1.6732184e+03 - 2.2130764e+03 -2.2130764e+03 1.6728930e+03 - 2.1999101e+03 -2.2262544e+03 1.6732184e+03 - 2.1872353e+03 -2.2389529e+03 1.6741725e+03 - 2.1755105e+03 -2.2506782e+03 1.6756889e+03 - 2.1651651e+03 -2.2609445e+03 1.6776585e+03 - 2.1565927e+03 -2.2692827e+03 1.6799322e+03 - 2.1501464e+03 -2.2752486e+03 1.6823233e+03 - 2.1461360e+03 -2.2784290e+03 1.6846109e+03 - 2.1448270e+03 -2.2784474e+03 1.6865441e+03 - 2.1464415e+03 -2.2749663e+03 1.6878449e+03 - 2.1511605e+03 -2.2676889e+03 1.6882120e+03 - 2.1591275e+03 -2.2563594e+03 1.6873242e+03 - 2.1704523e+03 -2.2407610e+03 1.6848434e+03 - 2.1852156e+03 -2.2207136e+03 1.6804172e+03 - 2.2034735e+03 -2.1960713e+03 1.6736827e+03 - 2.2252605e+03 -2.1667182e+03 1.6642689e+03 - 2.2505932e+03 -2.1325650e+03 1.6518013e+03 - 2.2794716e+03 -2.0935460e+03 1.6359069e+03 - 2.3118790e+03 -2.0496151e+03 1.6162204e+03 - 2.3477809e+03 -2.0007438e+03 1.5923934e+03 - 2.3871209e+03 -1.9469188e+03 1.5641055e+03 - 2.4298149e+03 -1.8881412e+03 1.5310794e+03 - 2.4757425e+03 -1.8244260e+03 1.4930988e+03 - 2.5247365e+03 -1.7558032e+03 1.4500305e+03 - 2.5765699e+03 -1.6823200e+03 1.4018503e+03 - 2.6309421e+03 -1.6040437e+03 1.3486711e+03 - 2.6874640e+03 -1.5210667e+03 1.2907714e+03 - 2.7456457e+03 -1.4335109e+03 1.2286231e+03 - 2.8048862e+03 -1.3415334e+03 1.1629124e+03 - 2.8644708e+03 -1.2453311e+03 1.0945519e+03 - 2.9235748e+03 -1.1451438e+03 1.0246782e+03 - 2.9812784e+03 -1.0412545e+03 9.5463165e+02 - 3.0365909e+03 -9.3398747e+02 8.8591805e+02 - 3.0884846e+03 -8.2370153e+02 8.2015186e+02 - 3.1359344e+03 -7.1078108e+02 7.5898633e+02 - 3.1779606e+03 -5.9562475e+02 7.0403651e+02 - 3.2136689e+03 -4.7863400e+02 6.5680305e+02 - 3.2422862e+03 -3.6020315e+02 6.1860344e+02 - 3.2631870e+03 -2.4071292e+02 5.9051585e+02 - 3.2759136e+03 -1.2052814e+02 5.7333736e+02 - 3.2801869e+03 -4.8134273e-09 5.6755639e+02 - 3.3203615e+03 0.0000000e+00 4.9060469e+02 - 3.3170952e+03 1.0862715e+02 4.9492172e+02 - 3.3073157e+03 2.1725609e+02 5.0782754e+02 - 3.2910856e+03 3.2587166e+02 5.2918169e+02 - 3.2685189e+03 4.3442557e+02 5.5873555e+02 - 3.2397959e+03 5.4282168e+02 5.9611337e+02 - 3.2051797e+03 6.5090403e+02 6.4079112e+02 - 3.1650321e+03 7.5844873e+02 6.9207848e+02 - 3.1198261e+03 8.6516102e+02 7.4910967e+02 - 3.0701500e+03 9.7067862e+02 8.1084846e+02 - 3.0167023e+03 1.0745816e+03 8.7611104e+02 - 2.9602735e+03 1.1764082e+03 9.4360746e+02 - 2.9017188e+03 1.2756750e+03 1.0119984e+03 - 2.8419219e+03 1.3718989e+03 1.0799611e+03 - 2.7817569e+03 1.4646182e+03 1.1462552e+03 - 2.7220521e+03 1.5534104e+03 1.2097811e+03 - 2.6635607e+03 1.6379045e+03 1.2696226e+03 - 2.6069407e+03 1.7177880e+03 1.3250712e+03 - 2.5527456e+03 1.7928087e+03 1.3756320e+03 - 2.5014239e+03 1.8627724e+03 1.4210139e+03 - 2.4533260e+03 1.9275373e+03 1.4611083e+03 - 2.4087153e+03 1.9870088e+03 1.4959609e+03 - 2.3677818e+03 2.0411327e+03 1.5257423e+03 - 2.3306552e+03 2.0898903e+03 1.5507182e+03 - 2.2974172e+03 2.1332945e+03 1.5712237e+03 - 2.2681105e+03 2.1713877e+03 1.5876405e+03 - 2.2427461e+03 2.2042408e+03 1.6003794e+03 - 2.2213077e+03 2.2319541e+03 1.6098657e+03 - 2.2037527e+03 2.2546589e+03 1.6165287e+03 - 2.1900126e+03 2.2725198e+03 1.6207930e+03 - 2.1799903e+03 2.2857379e+03 1.6230727e+03 - 2.1735572e+03 2.2945535e+03 1.6237659e+03 - 2.1705489e+03 2.2992485e+03 1.6232503e+03 - 2.1707613e+03 2.3001477e+03 1.6218795e+03 - 2.1739469e+03 2.2976198e+03 1.6199787e+03 - 2.1798125e+03 2.2920752e+03 1.6178412e+03 - 2.1880175e+03 2.2839637e+03 1.6157240e+03 - 2.1981752e+03 2.2737690e+03 1.6138440e+03 - 2.2098551e+03 2.2620017e+03 1.6123743e+03 - 2.2225884e+03 2.2491911e+03 1.6114413e+03 - 2.2358748e+03 2.2358748e+03 1.6111217e+03 - 2.2491911e+03 2.2225884e+03 1.6114413e+03 - 2.2620017e+03 2.2098551e+03 1.6123743e+03 - 2.2737690e+03 2.1981752e+03 1.6138440e+03 - 2.2839637e+03 2.1880175e+03 1.6157240e+03 - 2.2920752e+03 2.1798125e+03 1.6178412e+03 - 2.2976198e+03 2.1739469e+03 1.6199787e+03 - 2.3001477e+03 2.1707613e+03 1.6218795e+03 - 2.2992485e+03 2.1705489e+03 1.6232503e+03 - 2.2945535e+03 2.1735572e+03 1.6237659e+03 - 2.2857379e+03 2.1799903e+03 1.6230727e+03 - 2.2725198e+03 2.1900126e+03 1.6207930e+03 - 2.2546589e+03 2.2037527e+03 1.6165287e+03 - 2.2319541e+03 2.2213077e+03 1.6098657e+03 - 2.2042408e+03 2.2427461e+03 1.6003794e+03 - 2.1713877e+03 2.2681105e+03 1.5876405e+03 - 2.1332945e+03 2.2974172e+03 1.5712237e+03 - 2.0898903e+03 2.3306552e+03 1.5507182e+03 - 2.0411327e+03 2.3677818e+03 1.5257423e+03 - 1.9870088e+03 2.4087153e+03 1.4959609e+03 - 1.9275373e+03 2.4533260e+03 1.4611083e+03 - 1.8627724e+03 2.5014239e+03 1.4210139e+03 - 1.7928087e+03 2.5527456e+03 1.3756320e+03 - 1.7177880e+03 2.6069407e+03 1.3250712e+03 - 1.6379045e+03 2.6635607e+03 1.2696226e+03 - 1.5534104e+03 2.7220521e+03 1.2097811e+03 - 1.4646182e+03 2.7817569e+03 1.1462552e+03 - 1.3718989e+03 2.8419219e+03 1.0799611e+03 - 1.2756750e+03 2.9017188e+03 1.0119984e+03 - 1.1764082e+03 2.9602735e+03 9.4360746e+02 - 1.0745816e+03 3.0167023e+03 8.7611104e+02 - 9.7067862e+02 3.0701500e+03 8.1084846e+02 - 8.6516102e+02 3.1198261e+03 7.4910967e+02 - 7.5844873e+02 3.1650321e+03 6.9207848e+02 - 6.5090403e+02 3.2051797e+03 6.4079112e+02 - 5.4282168e+02 3.2397959e+03 5.9611337e+02 - 4.3442557e+02 3.2685189e+03 5.5873555e+02 - 3.2587166e+02 3.2910856e+03 5.2918169e+02 - 2.1725609e+02 3.3073157e+03 5.0782754e+02 - 1.0862715e+02 3.3170952e+03 4.9492172e+02 - 0.0000000e+00 3.3203615e+03 4.9060469e+02 - -1.0862715e+02 3.3170952e+03 4.9492172e+02 - -2.1725609e+02 3.3073157e+03 5.0782754e+02 - -3.2587166e+02 3.2910856e+03 5.2918169e+02 - -4.3442557e+02 3.2685189e+03 5.5873555e+02 - -5.4282168e+02 3.2397959e+03 5.9611337e+02 - -6.5090403e+02 3.2051797e+03 6.4079112e+02 - -7.5844873e+02 3.1650321e+03 6.9207848e+02 - -8.6516102e+02 3.1198261e+03 7.4910967e+02 - -9.7067862e+02 3.0701500e+03 8.1084846e+02 - -1.0745816e+03 3.0167023e+03 8.7611104e+02 - -1.1764082e+03 2.9602735e+03 9.4360746e+02 - -1.2756750e+03 2.9017188e+03 1.0119984e+03 - -1.3718989e+03 2.8419219e+03 1.0799611e+03 - -1.4646182e+03 2.7817569e+03 1.1462552e+03 - -1.5534104e+03 2.7220521e+03 1.2097811e+03 - -1.6379045e+03 2.6635607e+03 1.2696226e+03 - -1.7177880e+03 2.6069407e+03 1.3250712e+03 - -1.7928087e+03 2.5527456e+03 1.3756320e+03 - -1.8627724e+03 2.5014239e+03 1.4210139e+03 - -1.9275373e+03 2.4533260e+03 1.4611083e+03 - -1.9870088e+03 2.4087153e+03 1.4959609e+03 - -2.0411327e+03 2.3677818e+03 1.5257423e+03 - -2.0898903e+03 2.3306552e+03 1.5507182e+03 - -2.1332945e+03 2.2974172e+03 1.5712237e+03 - -2.1713877e+03 2.2681105e+03 1.5876405e+03 - -2.2042408e+03 2.2427461e+03 1.6003794e+03 - -2.2319541e+03 2.2213077e+03 1.6098657e+03 - -2.2546589e+03 2.2037527e+03 1.6165287e+03 - -2.2725198e+03 2.1900126e+03 1.6207930e+03 - -2.2857379e+03 2.1799903e+03 1.6230727e+03 - -2.2945535e+03 2.1735572e+03 1.6237659e+03 - -2.2992485e+03 2.1705489e+03 1.6232503e+03 - -2.3001477e+03 2.1707613e+03 1.6218795e+03 - -2.2976198e+03 2.1739469e+03 1.6199787e+03 - -2.2920752e+03 2.1798125e+03 1.6178412e+03 - -2.2839637e+03 2.1880175e+03 1.6157240e+03 - -2.2737690e+03 2.1981752e+03 1.6138440e+03 - -2.2620017e+03 2.2098551e+03 1.6123743e+03 - -2.2491911e+03 2.2225884e+03 1.6114413e+03 - -2.2358748e+03 2.2358748e+03 1.6111217e+03 - -2.2225884e+03 2.2491911e+03 1.6114413e+03 - -2.2098551e+03 2.2620017e+03 1.6123743e+03 - -2.1981752e+03 2.2737690e+03 1.6138440e+03 - -2.1880175e+03 2.2839637e+03 1.6157240e+03 - -2.1798125e+03 2.2920752e+03 1.6178412e+03 - -2.1739469e+03 2.2976198e+03 1.6199787e+03 - -2.1707613e+03 2.3001477e+03 1.6218795e+03 - -2.1705489e+03 2.2992485e+03 1.6232503e+03 - -2.1735572e+03 2.2945535e+03 1.6237659e+03 - -2.1799903e+03 2.2857379e+03 1.6230727e+03 - -2.1900126e+03 2.2725198e+03 1.6207930e+03 - -2.2037527e+03 2.2546589e+03 1.6165287e+03 - -2.2213077e+03 2.2319541e+03 1.6098657e+03 - -2.2427461e+03 2.2042408e+03 1.6003794e+03 - -2.2681105e+03 2.1713877e+03 1.5876405e+03 - -2.2974172e+03 2.1332945e+03 1.5712237e+03 - -2.3306552e+03 2.0898903e+03 1.5507182e+03 - -2.3677818e+03 2.0411327e+03 1.5257423e+03 - -2.4087153e+03 1.9870088e+03 1.4959609e+03 - -2.4533260e+03 1.9275373e+03 1.4611083e+03 - -2.5014239e+03 1.8627724e+03 1.4210139e+03 - -2.5527456e+03 1.7928087e+03 1.3756320e+03 - -2.6069407e+03 1.7177880e+03 1.3250712e+03 - -2.6635607e+03 1.6379045e+03 1.2696226e+03 - -2.7220521e+03 1.5534104e+03 1.2097811e+03 - -2.7817569e+03 1.4646182e+03 1.1462552e+03 - -2.8419219e+03 1.3718989e+03 1.0799611e+03 - -2.9017188e+03 1.2756750e+03 1.0119984e+03 - -2.9602735e+03 1.1764082e+03 9.4360746e+02 - -3.0167023e+03 1.0745816e+03 8.7611104e+02 - -3.0701500e+03 9.7067862e+02 8.1084846e+02 - -3.1198261e+03 8.6516102e+02 7.4910967e+02 - -3.1650321e+03 7.5844873e+02 6.9207848e+02 - -3.2051797e+03 6.5090403e+02 6.4079112e+02 - -3.2397959e+03 5.4282168e+02 5.9611337e+02 - -3.2685189e+03 4.3442557e+02 5.5873555e+02 - -3.2910856e+03 3.2587166e+02 5.2918169e+02 - -3.3073157e+03 2.1725609e+02 5.0782754e+02 - -3.3170952e+03 1.0862715e+02 4.9492172e+02 - -3.3203615e+03 -2.4067136e-09 4.9060469e+02 - -3.3170952e+03 -1.0862715e+02 4.9492172e+02 - -3.3073157e+03 -2.1725609e+02 5.0782754e+02 - -3.2910856e+03 -3.2587166e+02 5.2918169e+02 - -3.2685189e+03 -4.3442557e+02 5.5873555e+02 - -3.2397959e+03 -5.4282168e+02 5.9611337e+02 - -3.2051797e+03 -6.5090403e+02 6.4079112e+02 - -3.1650321e+03 -7.5844873e+02 6.9207848e+02 - -3.1198261e+03 -8.6516102e+02 7.4910967e+02 - -3.0701500e+03 -9.7067862e+02 8.1084846e+02 - -3.0167023e+03 -1.0745816e+03 8.7611104e+02 - -2.9602735e+03 -1.1764082e+03 9.4360746e+02 - -2.9017188e+03 -1.2756750e+03 1.0119984e+03 - -2.8419219e+03 -1.3718989e+03 1.0799611e+03 - -2.7817569e+03 -1.4646182e+03 1.1462552e+03 - -2.7220521e+03 -1.5534104e+03 1.2097811e+03 - -2.6635607e+03 -1.6379045e+03 1.2696226e+03 - -2.6069407e+03 -1.7177880e+03 1.3250712e+03 - -2.5527456e+03 -1.7928087e+03 1.3756320e+03 - -2.5014239e+03 -1.8627724e+03 1.4210139e+03 - -2.4533260e+03 -1.9275373e+03 1.4611083e+03 - -2.4087153e+03 -1.9870088e+03 1.4959609e+03 - -2.3677818e+03 -2.0411327e+03 1.5257423e+03 - -2.3306552e+03 -2.0898903e+03 1.5507182e+03 - -2.2974172e+03 -2.1332945e+03 1.5712237e+03 - -2.2681105e+03 -2.1713877e+03 1.5876405e+03 - -2.2427461e+03 -2.2042408e+03 1.6003794e+03 - -2.2213077e+03 -2.2319541e+03 1.6098657e+03 - -2.2037527e+03 -2.2546589e+03 1.6165287e+03 - -2.1900126e+03 -2.2725198e+03 1.6207930e+03 - -2.1799903e+03 -2.2857379e+03 1.6230727e+03 - -2.1735572e+03 -2.2945535e+03 1.6237659e+03 - -2.1705489e+03 -2.2992485e+03 1.6232503e+03 - -2.1707613e+03 -2.3001477e+03 1.6218795e+03 - -2.1739469e+03 -2.2976198e+03 1.6199787e+03 - -2.1798125e+03 -2.2920752e+03 1.6178412e+03 - -2.1880175e+03 -2.2839637e+03 1.6157240e+03 - -2.1981752e+03 -2.2737690e+03 1.6138440e+03 - -2.2098551e+03 -2.2620017e+03 1.6123743e+03 - -2.2225884e+03 -2.2491911e+03 1.6114413e+03 - -2.2358748e+03 -2.2358748e+03 1.6111217e+03 - -2.2491911e+03 -2.2225884e+03 1.6114413e+03 - -2.2620017e+03 -2.2098551e+03 1.6123743e+03 - -2.2737690e+03 -2.1981752e+03 1.6138440e+03 - -2.2839637e+03 -2.1880175e+03 1.6157240e+03 - -2.2920752e+03 -2.1798125e+03 1.6178412e+03 - -2.2976198e+03 -2.1739469e+03 1.6199787e+03 - -2.3001477e+03 -2.1707613e+03 1.6218795e+03 - -2.2992485e+03 -2.1705489e+03 1.6232503e+03 - -2.2945535e+03 -2.1735572e+03 1.6237659e+03 - -2.2857379e+03 -2.1799903e+03 1.6230727e+03 - -2.2725198e+03 -2.1900126e+03 1.6207930e+03 - -2.2546589e+03 -2.2037527e+03 1.6165287e+03 - -2.2319541e+03 -2.2213077e+03 1.6098657e+03 - -2.2042408e+03 -2.2427461e+03 1.6003794e+03 - -2.1713877e+03 -2.2681105e+03 1.5876405e+03 - -2.1332945e+03 -2.2974172e+03 1.5712237e+03 - -2.0898903e+03 -2.3306552e+03 1.5507182e+03 - -2.0411327e+03 -2.3677818e+03 1.5257423e+03 - -1.9870088e+03 -2.4087153e+03 1.4959609e+03 - -1.9275373e+03 -2.4533260e+03 1.4611083e+03 - -1.8627724e+03 -2.5014239e+03 1.4210139e+03 - -1.7928087e+03 -2.5527456e+03 1.3756320e+03 - -1.7177880e+03 -2.6069407e+03 1.3250712e+03 - -1.6379045e+03 -2.6635607e+03 1.2696226e+03 - -1.5534104e+03 -2.7220521e+03 1.2097811e+03 - -1.4646182e+03 -2.7817569e+03 1.1462552e+03 - -1.3718989e+03 -2.8419219e+03 1.0799611e+03 - -1.2756750e+03 -2.9017188e+03 1.0119984e+03 - -1.1764082e+03 -2.9602735e+03 9.4360746e+02 - -1.0745816e+03 -3.0167023e+03 8.7611104e+02 - -9.7067862e+02 -3.0701500e+03 8.1084846e+02 - -8.6516102e+02 -3.1198261e+03 7.4910967e+02 - -7.5844873e+02 -3.1650321e+03 6.9207848e+02 - -6.5090403e+02 -3.2051797e+03 6.4079112e+02 - -5.4282168e+02 -3.2397959e+03 5.9611337e+02 - -4.3442557e+02 -3.2685189e+03 5.5873555e+02 - -3.2587166e+02 -3.2910856e+03 5.2918169e+02 - -2.1725609e+02 -3.3073157e+03 5.0782754e+02 - -1.0862715e+02 -3.3170952e+03 4.9492172e+02 - 4.8134273e-09 -3.3203615e+03 4.9060469e+02 - 1.0862715e+02 -3.3170952e+03 4.9492172e+02 - 2.1725609e+02 -3.3073157e+03 5.0782754e+02 - 3.2587166e+02 -3.2910856e+03 5.2918169e+02 - 4.3442557e+02 -3.2685189e+03 5.5873555e+02 - 5.4282168e+02 -3.2397959e+03 5.9611337e+02 - 6.5090403e+02 -3.2051797e+03 6.4079112e+02 - 7.5844873e+02 -3.1650321e+03 6.9207848e+02 - 8.6516102e+02 -3.1198261e+03 7.4910967e+02 - 9.7067862e+02 -3.0701500e+03 8.1084846e+02 - 1.0745816e+03 -3.0167023e+03 8.7611104e+02 - 1.1764082e+03 -2.9602735e+03 9.4360746e+02 - 1.2756750e+03 -2.9017188e+03 1.0119984e+03 - 1.3718989e+03 -2.8419219e+03 1.0799611e+03 - 1.4646182e+03 -2.7817569e+03 1.1462552e+03 - 1.5534104e+03 -2.7220521e+03 1.2097811e+03 - 1.6379045e+03 -2.6635607e+03 1.2696226e+03 - 1.7177880e+03 -2.6069407e+03 1.3250712e+03 - 1.7928087e+03 -2.5527456e+03 1.3756320e+03 - 1.8627724e+03 -2.5014239e+03 1.4210139e+03 - 1.9275373e+03 -2.4533260e+03 1.4611083e+03 - 1.9870088e+03 -2.4087153e+03 1.4959609e+03 - 2.0411327e+03 -2.3677818e+03 1.5257423e+03 - 2.0898903e+03 -2.3306552e+03 1.5507182e+03 - 2.1332945e+03 -2.2974172e+03 1.5712237e+03 - 2.1713877e+03 -2.2681105e+03 1.5876405e+03 - 2.2042408e+03 -2.2427461e+03 1.6003794e+03 - 2.2319541e+03 -2.2213077e+03 1.6098657e+03 - 2.2546589e+03 -2.2037527e+03 1.6165287e+03 - 2.2725198e+03 -2.1900126e+03 1.6207930e+03 - 2.2857379e+03 -2.1799903e+03 1.6230727e+03 - 2.2945535e+03 -2.1735572e+03 1.6237659e+03 - 2.2992485e+03 -2.1705489e+03 1.6232503e+03 - 2.3001477e+03 -2.1707613e+03 1.6218795e+03 - 2.2976198e+03 -2.1739469e+03 1.6199787e+03 - 2.2920752e+03 -2.1798125e+03 1.6178412e+03 - 2.2839637e+03 -2.1880175e+03 1.6157240e+03 - 2.2737690e+03 -2.1981752e+03 1.6138440e+03 - 2.2620017e+03 -2.2098551e+03 1.6123743e+03 - 2.2491911e+03 -2.2225884e+03 1.6114413e+03 - 2.2358748e+03 -2.2358748e+03 1.6111217e+03 - 2.2225884e+03 -2.2491911e+03 1.6114413e+03 - 2.2098551e+03 -2.2620017e+03 1.6123743e+03 - 2.1981752e+03 -2.2737690e+03 1.6138440e+03 - 2.1880175e+03 -2.2839637e+03 1.6157240e+03 - 2.1798125e+03 -2.2920752e+03 1.6178412e+03 - 2.1739469e+03 -2.2976198e+03 1.6199787e+03 - 2.1707613e+03 -2.3001477e+03 1.6218795e+03 - 2.1705489e+03 -2.2992485e+03 1.6232503e+03 - 2.1735572e+03 -2.2945535e+03 1.6237659e+03 - 2.1799903e+03 -2.2857379e+03 1.6230727e+03 - 2.1900126e+03 -2.2725198e+03 1.6207930e+03 - 2.2037527e+03 -2.2546589e+03 1.6165287e+03 - 2.2213077e+03 -2.2319541e+03 1.6098657e+03 - 2.2427461e+03 -2.2042408e+03 1.6003794e+03 - 2.2681105e+03 -2.1713877e+03 1.5876405e+03 - 2.2974172e+03 -2.1332945e+03 1.5712237e+03 - 2.3306552e+03 -2.0898903e+03 1.5507182e+03 - 2.3677818e+03 -2.0411327e+03 1.5257423e+03 - 2.4087153e+03 -1.9870088e+03 1.4959609e+03 - 2.4533260e+03 -1.9275373e+03 1.4611083e+03 - 2.5014239e+03 -1.8627724e+03 1.4210139e+03 - 2.5527456e+03 -1.7928087e+03 1.3756320e+03 - 2.6069407e+03 -1.7177880e+03 1.3250712e+03 - 2.6635607e+03 -1.6379045e+03 1.2696226e+03 - 2.7220521e+03 -1.5534104e+03 1.2097811e+03 - 2.7817569e+03 -1.4646182e+03 1.1462552e+03 - 2.8419219e+03 -1.3718989e+03 1.0799611e+03 - 2.9017188e+03 -1.2756750e+03 1.0119984e+03 - 2.9602735e+03 -1.1764082e+03 9.4360746e+02 - 3.0167023e+03 -1.0745816e+03 8.7611104e+02 - 3.0701500e+03 -9.7067862e+02 8.1084846e+02 - 3.1198261e+03 -8.6516102e+02 7.4910967e+02 - 3.1650321e+03 -7.5844873e+02 6.9207848e+02 - 3.2051797e+03 -6.5090403e+02 6.4079112e+02 - 3.2397959e+03 -5.4282168e+02 5.9611337e+02 - 3.2685189e+03 -4.3442557e+02 5.5873555e+02 - 3.2910856e+03 -3.2587166e+02 5.2918169e+02 - 3.3073157e+03 -2.1725609e+02 5.0782754e+02 - 3.3170952e+03 -1.0862715e+02 4.9492172e+02 - 3.3203615e+03 0.0000000e+00 4.9060469e+02 - 3.3567375e+03 0.0000000e+00 4.1746519e+02 - 3.3541443e+03 9.9896656e+01 4.2078888e+02 - 3.3463590e+03 1.9991241e+02 4.3075938e+02 - 3.3333664e+03 3.0015587e+02 4.4737103e+02 - 3.3151493e+03 4.0071425e+02 4.7060148e+02 - 3.2917004e+03 5.0164169e+02 5.0039266e+02 - 3.2630386e+03 6.0294673e+02 5.3662531e+02 - 3.2292297e+03 7.0457945e+02 5.7908858e+02 - 3.1904090e+03 8.0641894e+02 6.2744773e+02 - 3.1468044e+03 9.0826272e+02 6.8121406e+02 - 3.0987573e+03 1.0098198e+03 7.3972257e+02 - 3.0467356e+03 1.1107098e+03 8.0212339e+02 - 2.9913374e+03 1.2104690e+03 8.6739221e+02 - 2.9332807e+03 1.3085651e+03 9.3436262e+02 - 2.8733802e+03 1.4044196e+03 1.0017793e+03 - 2.8125110e+03 1.4974348e+03 1.0683670e+03 - 2.7515659e+03 1.5870236e+03 1.1329049e+03 - 2.6914116e+03 1.6726367e+03 1.1942977e+03 - 2.6328495e+03 1.7537847e+03 1.2516310e+03 - 2.5765870e+03 1.8300528e+03 1.3042071e+03 - 2.5232201e+03 1.9011077e+03 1.3515577e+03 - 2.4732284e+03 1.9666978e+03 1.3934364e+03 - 2.4269799e+03 2.0266486e+03 1.4297966e+03 - 2.3847416e+03 2.0808548e+03 1.4607592e+03 - 2.3466943e+03 2.1292723e+03 1.4865784e+03 - 2.3129469e+03 2.1719105e+03 1.5076067e+03 - 2.2835496e+03 2.2088259e+03 1.5242645e+03 - 2.2585047e+03 2.2401186e+03 1.5370145e+03 - 2.2377732e+03 2.2659296e+03 1.5463408e+03 - 2.2212793e+03 2.2864410e+03 1.5527332e+03 - 2.2089114e+03 2.3018763e+03 1.5566749e+03 - 2.2005209e+03 2.3125027e+03 1.5586337e+03 - 2.1959199e+03 2.3186321e+03 1.5590542e+03 - 2.1948777e+03 2.3206229e+03 1.5583527e+03 - 2.1971174e+03 2.3188799e+03 1.5569113e+03 - 2.2023131e+03 2.3138534e+03 1.5550739e+03 - 2.2100887e+03 2.3060353e+03 1.5531411e+03 - 2.2200187e+03 2.2959548e+03 1.5513662e+03 - 2.2316307e+03 2.2841701e+03 1.5499509e+03 - 2.2444108e+03 2.2712595e+03 1.5490422e+03 - 2.2578112e+03 2.2578112e+03 1.5487293e+03 - 2.2712595e+03 2.2444108e+03 1.5490422e+03 - 2.2841701e+03 2.2316307e+03 1.5499509e+03 - 2.2959548e+03 2.2200187e+03 1.5513662e+03 - 2.3060353e+03 2.2100887e+03 1.5531411e+03 - 2.3138534e+03 2.2023131e+03 1.5550739e+03 - 2.3188799e+03 2.1971174e+03 1.5569113e+03 - 2.3206229e+03 2.1948777e+03 1.5583527e+03 - 2.3186321e+03 2.1959199e+03 1.5590542e+03 - 2.3125027e+03 2.2005209e+03 1.5586337e+03 - 2.3018763e+03 2.2089114e+03 1.5566749e+03 - 2.2864410e+03 2.2212793e+03 1.5527332e+03 - 2.2659296e+03 2.2377732e+03 1.5463408e+03 - 2.2401186e+03 2.2585047e+03 1.5370145e+03 - 2.2088259e+03 2.2835496e+03 1.5242645e+03 - 2.1719105e+03 2.3129469e+03 1.5076067e+03 - 2.1292723e+03 2.3466943e+03 1.4865784e+03 - 2.0808548e+03 2.3847416e+03 1.4607592e+03 - 2.0266486e+03 2.4269799e+03 1.4297966e+03 - 1.9666978e+03 2.4732284e+03 1.3934364e+03 - 1.9011077e+03 2.5232201e+03 1.3515577e+03 - 1.8300528e+03 2.5765870e+03 1.3042071e+03 - 1.7537847e+03 2.6328495e+03 1.2516310e+03 - 1.6726367e+03 2.6914116e+03 1.1942977e+03 - 1.5870236e+03 2.7515659e+03 1.1329049e+03 - 1.4974348e+03 2.8125110e+03 1.0683670e+03 - 1.4044196e+03 2.8733802e+03 1.0017793e+03 - 1.3085651e+03 2.9332807e+03 9.3436262e+02 - 1.2104690e+03 2.9913374e+03 8.6739221e+02 - 1.1107098e+03 3.0467356e+03 8.0212339e+02 - 1.0098198e+03 3.0987573e+03 7.3972257e+02 - 9.0826272e+02 3.1468044e+03 6.8121406e+02 - 8.0641894e+02 3.1904090e+03 6.2744773e+02 - 7.0457945e+02 3.2292297e+03 5.7908858e+02 - 6.0294673e+02 3.2630386e+03 5.3662531e+02 - 5.0164169e+02 3.2917004e+03 5.0039266e+02 - 4.0071425e+02 3.3151493e+03 4.7060148e+02 - 3.0015587e+02 3.3333664e+03 4.4737103e+02 - 1.9991241e+02 3.3463590e+03 4.3075938e+02 - 9.9896656e+01 3.3541443e+03 4.2078888e+02 - 4.8134273e-09 3.3567375e+03 4.1746519e+02 - -9.9896656e+01 3.3541443e+03 4.2078888e+02 - -1.9991241e+02 3.3463590e+03 4.3075938e+02 - -3.0015587e+02 3.3333664e+03 4.4737103e+02 - -4.0071425e+02 3.3151493e+03 4.7060148e+02 - -5.0164169e+02 3.2917004e+03 5.0039266e+02 - -6.0294673e+02 3.2630386e+03 5.3662531e+02 - -7.0457945e+02 3.2292297e+03 5.7908858e+02 - -8.0641894e+02 3.1904090e+03 6.2744773e+02 - -9.0826272e+02 3.1468044e+03 6.8121406e+02 - -1.0098198e+03 3.0987573e+03 7.3972257e+02 - -1.1107098e+03 3.0467356e+03 8.0212339e+02 - -1.2104690e+03 2.9913374e+03 8.6739221e+02 - -1.3085651e+03 2.9332807e+03 9.3436262e+02 - -1.4044196e+03 2.8733802e+03 1.0017793e+03 - -1.4974348e+03 2.8125110e+03 1.0683670e+03 - -1.5870236e+03 2.7515659e+03 1.1329049e+03 - -1.6726367e+03 2.6914116e+03 1.1942977e+03 - -1.7537847e+03 2.6328495e+03 1.2516310e+03 - -1.8300528e+03 2.5765870e+03 1.3042071e+03 - -1.9011077e+03 2.5232201e+03 1.3515577e+03 - -1.9666978e+03 2.4732284e+03 1.3934364e+03 - -2.0266486e+03 2.4269799e+03 1.4297966e+03 - -2.0808548e+03 2.3847416e+03 1.4607592e+03 - -2.1292723e+03 2.3466943e+03 1.4865784e+03 - -2.1719105e+03 2.3129469e+03 1.5076067e+03 - -2.2088259e+03 2.2835496e+03 1.5242645e+03 - -2.2401186e+03 2.2585047e+03 1.5370145e+03 - -2.2659296e+03 2.2377732e+03 1.5463408e+03 - -2.2864410e+03 2.2212793e+03 1.5527332e+03 - -2.3018763e+03 2.2089114e+03 1.5566749e+03 - -2.3125027e+03 2.2005209e+03 1.5586337e+03 - -2.3186321e+03 2.1959199e+03 1.5590542e+03 - -2.3206229e+03 2.1948777e+03 1.5583527e+03 - -2.3188799e+03 2.1971174e+03 1.5569113e+03 - -2.3138534e+03 2.2023131e+03 1.5550739e+03 - -2.3060353e+03 2.2100887e+03 1.5531411e+03 - -2.2959548e+03 2.2200187e+03 1.5513662e+03 - -2.2841701e+03 2.2316307e+03 1.5499509e+03 - -2.2712595e+03 2.2444108e+03 1.5490422e+03 - -2.2578112e+03 2.2578112e+03 1.5487293e+03 - -2.2444108e+03 2.2712595e+03 1.5490422e+03 - -2.2316307e+03 2.2841701e+03 1.5499509e+03 - -2.2200187e+03 2.2959548e+03 1.5513662e+03 - -2.2100887e+03 2.3060353e+03 1.5531411e+03 - -2.2023131e+03 2.3138534e+03 1.5550739e+03 - -2.1971174e+03 2.3188799e+03 1.5569113e+03 - -2.1948777e+03 2.3206229e+03 1.5583527e+03 - -2.1959199e+03 2.3186321e+03 1.5590542e+03 - -2.2005209e+03 2.3125027e+03 1.5586337e+03 - -2.2089114e+03 2.3018763e+03 1.5566749e+03 - -2.2212793e+03 2.2864410e+03 1.5527332e+03 - -2.2377732e+03 2.2659296e+03 1.5463408e+03 - -2.2585047e+03 2.2401186e+03 1.5370145e+03 - -2.2835496e+03 2.2088259e+03 1.5242645e+03 - -2.3129469e+03 2.1719105e+03 1.5076067e+03 - -2.3466943e+03 2.1292723e+03 1.4865784e+03 - -2.3847416e+03 2.0808548e+03 1.4607592e+03 - -2.4269799e+03 2.0266486e+03 1.4297966e+03 - -2.4732284e+03 1.9666978e+03 1.3934364e+03 - -2.5232201e+03 1.9011077e+03 1.3515577e+03 - -2.5765870e+03 1.8300528e+03 1.3042071e+03 - -2.6328495e+03 1.7537847e+03 1.2516310e+03 - -2.6914116e+03 1.6726367e+03 1.1942977e+03 - -2.7515659e+03 1.5870236e+03 1.1329049e+03 - -2.8125110e+03 1.4974348e+03 1.0683670e+03 - -2.8733802e+03 1.4044196e+03 1.0017793e+03 - -2.9332807e+03 1.3085651e+03 9.3436262e+02 - -2.9913374e+03 1.2104690e+03 8.6739221e+02 - -3.0467356e+03 1.1107098e+03 8.0212339e+02 - -3.0987573e+03 1.0098198e+03 7.3972257e+02 - -3.1468044e+03 9.0826272e+02 6.8121406e+02 - -3.1904090e+03 8.0641894e+02 6.2744773e+02 - -3.2292297e+03 7.0457945e+02 5.7908858e+02 - -3.2630386e+03 6.0294673e+02 5.3662531e+02 - -3.2917004e+03 5.0164169e+02 5.0039266e+02 - -3.3151493e+03 4.0071425e+02 4.7060148e+02 - -3.3333664e+03 3.0015587e+02 4.4737103e+02 - -3.3463590e+03 1.9991241e+02 4.3075938e+02 - -3.3541443e+03 9.9896656e+01 4.2078888e+02 - -3.3567375e+03 0.0000000e+00 4.1746519e+02 - -3.3541443e+03 -9.9896656e+01 4.2078888e+02 - -3.3463590e+03 -1.9991241e+02 4.3075938e+02 - -3.3333664e+03 -3.0015587e+02 4.4737103e+02 - -3.3151493e+03 -4.0071425e+02 4.7060148e+02 - -3.2917004e+03 -5.0164169e+02 5.0039266e+02 - -3.2630386e+03 -6.0294673e+02 5.3662531e+02 - -3.2292297e+03 -7.0457945e+02 5.7908858e+02 - -3.1904090e+03 -8.0641894e+02 6.2744773e+02 - -3.1468044e+03 -9.0826272e+02 6.8121406e+02 - -3.0987573e+03 -1.0098198e+03 7.3972257e+02 - -3.0467356e+03 -1.1107098e+03 8.0212339e+02 - -2.9913374e+03 -1.2104690e+03 8.6739221e+02 - -2.9332807e+03 -1.3085651e+03 9.3436262e+02 - -2.8733802e+03 -1.4044196e+03 1.0017793e+03 - -2.8125110e+03 -1.4974348e+03 1.0683670e+03 - -2.7515659e+03 -1.5870236e+03 1.1329049e+03 - -2.6914116e+03 -1.6726367e+03 1.1942977e+03 - -2.6328495e+03 -1.7537847e+03 1.2516310e+03 - -2.5765870e+03 -1.8300528e+03 1.3042071e+03 - -2.5232201e+03 -1.9011077e+03 1.3515577e+03 - -2.4732284e+03 -1.9666978e+03 1.3934364e+03 - -2.4269799e+03 -2.0266486e+03 1.4297966e+03 - -2.3847416e+03 -2.0808548e+03 1.4607592e+03 - -2.3466943e+03 -2.1292723e+03 1.4865784e+03 - -2.3129469e+03 -2.1719105e+03 1.5076067e+03 - -2.2835496e+03 -2.2088259e+03 1.5242645e+03 - -2.2585047e+03 -2.2401186e+03 1.5370145e+03 - -2.2377732e+03 -2.2659296e+03 1.5463408e+03 - -2.2212793e+03 -2.2864410e+03 1.5527332e+03 - -2.2089114e+03 -2.3018763e+03 1.5566749e+03 - -2.2005209e+03 -2.3125027e+03 1.5586337e+03 - -2.1959199e+03 -2.3186321e+03 1.5590542e+03 - -2.1948777e+03 -2.3206229e+03 1.5583527e+03 - -2.1971174e+03 -2.3188799e+03 1.5569113e+03 - -2.2023131e+03 -2.3138534e+03 1.5550739e+03 - -2.2100887e+03 -2.3060353e+03 1.5531411e+03 - -2.2200187e+03 -2.2959548e+03 1.5513662e+03 - -2.2316307e+03 -2.2841701e+03 1.5499509e+03 - -2.2444108e+03 -2.2712595e+03 1.5490422e+03 - -2.2578112e+03 -2.2578112e+03 1.5487293e+03 - -2.2712595e+03 -2.2444108e+03 1.5490422e+03 - -2.2841701e+03 -2.2316307e+03 1.5499509e+03 - -2.2959548e+03 -2.2200187e+03 1.5513662e+03 - -2.3060353e+03 -2.2100887e+03 1.5531411e+03 - -2.3138534e+03 -2.2023131e+03 1.5550739e+03 - -2.3188799e+03 -2.1971174e+03 1.5569113e+03 - -2.3206229e+03 -2.1948777e+03 1.5583527e+03 - -2.3186321e+03 -2.1959199e+03 1.5590542e+03 - -2.3125027e+03 -2.2005209e+03 1.5586337e+03 - -2.3018763e+03 -2.2089114e+03 1.5566749e+03 - -2.2864410e+03 -2.2212793e+03 1.5527332e+03 - -2.2659296e+03 -2.2377732e+03 1.5463408e+03 - -2.2401186e+03 -2.2585047e+03 1.5370145e+03 - -2.2088259e+03 -2.2835496e+03 1.5242645e+03 - -2.1719105e+03 -2.3129469e+03 1.5076067e+03 - -2.1292723e+03 -2.3466943e+03 1.4865784e+03 - -2.0808548e+03 -2.3847416e+03 1.4607592e+03 - -2.0266486e+03 -2.4269799e+03 1.4297966e+03 - -1.9666978e+03 -2.4732284e+03 1.3934364e+03 - -1.9011077e+03 -2.5232201e+03 1.3515577e+03 - -1.8300528e+03 -2.5765870e+03 1.3042071e+03 - -1.7537847e+03 -2.6328495e+03 1.2516310e+03 - -1.6726367e+03 -2.6914116e+03 1.1942977e+03 - -1.5870236e+03 -2.7515659e+03 1.1329049e+03 - -1.4974348e+03 -2.8125110e+03 1.0683670e+03 - -1.4044196e+03 -2.8733802e+03 1.0017793e+03 - -1.3085651e+03 -2.9332807e+03 9.3436262e+02 - -1.2104690e+03 -2.9913374e+03 8.6739221e+02 - -1.1107098e+03 -3.0467356e+03 8.0212339e+02 - -1.0098198e+03 -3.0987573e+03 7.3972257e+02 - -9.0826272e+02 -3.1468044e+03 6.8121406e+02 - -8.0641894e+02 -3.1904090e+03 6.2744773e+02 - -7.0457945e+02 -3.2292297e+03 5.7908858e+02 - -6.0294673e+02 -3.2630386e+03 5.3662531e+02 - -5.0164169e+02 -3.2917004e+03 5.0039266e+02 - -4.0071425e+02 -3.3151493e+03 4.7060148e+02 - -3.0015587e+02 -3.3333664e+03 4.4737103e+02 - -1.9991241e+02 -3.3463590e+03 4.3075938e+02 - -9.9896656e+01 -3.3541443e+03 4.2078888e+02 - -4.8134273e-09 -3.3567375e+03 4.1746519e+02 - 9.9896656e+01 -3.3541443e+03 4.2078888e+02 - 1.9991241e+02 -3.3463590e+03 4.3075938e+02 - 3.0015587e+02 -3.3333664e+03 4.4737103e+02 - 4.0071425e+02 -3.3151493e+03 4.7060148e+02 - 5.0164169e+02 -3.2917004e+03 5.0039266e+02 - 6.0294673e+02 -3.2630386e+03 5.3662531e+02 - 7.0457945e+02 -3.2292297e+03 5.7908858e+02 - 8.0641894e+02 -3.1904090e+03 6.2744773e+02 - 9.0826272e+02 -3.1468044e+03 6.8121406e+02 - 1.0098198e+03 -3.0987573e+03 7.3972257e+02 - 1.1107098e+03 -3.0467356e+03 8.0212339e+02 - 1.2104690e+03 -2.9913374e+03 8.6739221e+02 - 1.3085651e+03 -2.9332807e+03 9.3436262e+02 - 1.4044196e+03 -2.8733802e+03 1.0017793e+03 - 1.4974348e+03 -2.8125110e+03 1.0683670e+03 - 1.5870236e+03 -2.7515659e+03 1.1329049e+03 - 1.6726367e+03 -2.6914116e+03 1.1942977e+03 - 1.7537847e+03 -2.6328495e+03 1.2516310e+03 - 1.8300528e+03 -2.5765870e+03 1.3042071e+03 - 1.9011077e+03 -2.5232201e+03 1.3515577e+03 - 1.9666978e+03 -2.4732284e+03 1.3934364e+03 - 2.0266486e+03 -2.4269799e+03 1.4297966e+03 - 2.0808548e+03 -2.3847416e+03 1.4607592e+03 - 2.1292723e+03 -2.3466943e+03 1.4865784e+03 - 2.1719105e+03 -2.3129469e+03 1.5076067e+03 - 2.2088259e+03 -2.2835496e+03 1.5242645e+03 - 2.2401186e+03 -2.2585047e+03 1.5370145e+03 - 2.2659296e+03 -2.2377732e+03 1.5463408e+03 - 2.2864410e+03 -2.2212793e+03 1.5527332e+03 - 2.3018763e+03 -2.2089114e+03 1.5566749e+03 - 2.3125027e+03 -2.2005209e+03 1.5586337e+03 - 2.3186321e+03 -2.1959199e+03 1.5590542e+03 - 2.3206229e+03 -2.1948777e+03 1.5583527e+03 - 2.3188799e+03 -2.1971174e+03 1.5569113e+03 - 2.3138534e+03 -2.2023131e+03 1.5550739e+03 - 2.3060353e+03 -2.2100887e+03 1.5531411e+03 - 2.2959548e+03 -2.2200187e+03 1.5513662e+03 - 2.2841701e+03 -2.2316307e+03 1.5499509e+03 - 2.2712595e+03 -2.2444108e+03 1.5490422e+03 - 2.2578112e+03 -2.2578112e+03 1.5487293e+03 - 2.2444108e+03 -2.2712595e+03 1.5490422e+03 - 2.2316307e+03 -2.2841701e+03 1.5499509e+03 - 2.2200187e+03 -2.2959548e+03 1.5513662e+03 - 2.2100887e+03 -2.3060353e+03 1.5531411e+03 - 2.2023131e+03 -2.3138534e+03 1.5550739e+03 - 2.1971174e+03 -2.3188799e+03 1.5569113e+03 - 2.1948777e+03 -2.3206229e+03 1.5583527e+03 - 2.1959199e+03 -2.3186321e+03 1.5590542e+03 - 2.2005209e+03 -2.3125027e+03 1.5586337e+03 - 2.2089114e+03 -2.3018763e+03 1.5566749e+03 - 2.2212793e+03 -2.2864410e+03 1.5527332e+03 - 2.2377732e+03 -2.2659296e+03 1.5463408e+03 - 2.2585047e+03 -2.2401186e+03 1.5370145e+03 - 2.2835496e+03 -2.2088259e+03 1.5242645e+03 - 2.3129469e+03 -2.1719105e+03 1.5076067e+03 - 2.3466943e+03 -2.1292723e+03 1.4865784e+03 - 2.3847416e+03 -2.0808548e+03 1.4607592e+03 - 2.4269799e+03 -2.0266486e+03 1.4297966e+03 - 2.4732284e+03 -1.9666978e+03 1.3934364e+03 - 2.5232201e+03 -1.9011077e+03 1.3515577e+03 - 2.5765870e+03 -1.8300528e+03 1.3042071e+03 - 2.6328495e+03 -1.7537847e+03 1.2516310e+03 - 2.6914116e+03 -1.6726367e+03 1.1942977e+03 - 2.7515659e+03 -1.5870236e+03 1.1329049e+03 - 2.8125110e+03 -1.4974348e+03 1.0683670e+03 - 2.8733802e+03 -1.4044196e+03 1.0017793e+03 - 2.9332807e+03 -1.3085651e+03 9.3436262e+02 - 2.9913374e+03 -1.2104690e+03 8.6739221e+02 - 3.0467356e+03 -1.1107098e+03 8.0212339e+02 - 3.0987573e+03 -1.0098198e+03 7.3972257e+02 - 3.1468044e+03 -9.0826272e+02 6.8121406e+02 - 3.1904090e+03 -8.0641894e+02 6.2744773e+02 - 3.2292297e+03 -7.0457945e+02 5.7908858e+02 - 3.2630386e+03 -6.0294673e+02 5.3662531e+02 - 3.2917004e+03 -5.0164169e+02 5.0039266e+02 - 3.3151493e+03 -4.0071425e+02 4.7060148e+02 - 3.3333664e+03 -3.0015587e+02 4.4737103e+02 - 3.3463590e+03 -1.9991241e+02 4.3075938e+02 - 3.3541443e+03 -9.9896656e+01 4.2078888e+02 - 3.3567375e+03 -7.2201409e-09 4.1746519e+02 - 3.3894323e+03 0.0000000e+00 3.4835789e+02 - 3.3873103e+03 9.3319832e+01 3.5097309e+02 - 3.3809305e+03 1.8678509e+02 3.5883410e+02 - 3.3702538e+03 2.8053670e+02 3.7198498e+02 - 3.3552189e+03 3.7470595e+02 3.9049150e+02 - 3.3357489e+03 4.6940824e+02 4.1442933e+02 - 3.3117617e+03 5.6473509e+02 4.4386670e+02 - 3.2831833e+03 6.6074408e+02 4.7884125e+02 - 3.2499659e+03 7.5744669e+02 5.1933118e+02 - 3.2121099e+03 8.5479417e+02 5.6522144e+02 - 3.1696891e+03 9.5266253e+02 6.1626757e+02 - 3.1228771e+03 1.0508382e+03 6.7206085e+02 - 3.0719718e+03 1.1490067e+03 7.3200088e+02 - 3.0174138e+03 1.2467477e+03 7.9528228e+02 - 2.9597933e+03 1.3435380e+03 8.6090248e+02 - 2.8998425e+03 1.4387662e+03 9.2769490e+02 - 2.8384104e+03 1.5317575e+03 9.9438751e+02 - 2.7764231e+03 1.6218073e+03 1.0596811e+03 - 2.7148333e+03 1.7082191e+03 1.1223362e+03 - 2.6545676e+03 1.7903409e+03 1.1812553e+03 - 2.5964791e+03 1.8675962e+03 1.2355477e+03 - 2.5413120e+03 1.9395046e+03 1.2845689e+03 - 2.4896809e+03 2.0056923e+03 1.3279321e+03 - 2.4420653e+03 2.0658924e+03 1.3654951e+03 - 2.3988154e+03 2.1199396e+03 1.3973300e+03 - 2.3601656e+03 2.1677592e+03 1.4236828e+03 - 2.3262519e+03 2.2093563e+03 1.4449306e+03 - 2.2971282e+03 2.2448057e+03 1.4615415e+03 - 2.2727810e+03 2.2742432e+03 1.4740394e+03 - 2.2531401e+03 2.2978606e+03 1.4829759e+03 - 2.2380854e+03 2.3159021e+03 1.4889084e+03 - 2.2274500e+03 2.3286630e+03 1.4923834e+03 - 2.2210209e+03 2.3364895e+03 1.4939243e+03 - 2.2185371e+03 2.3397786e+03 1.4940220e+03 - 2.2196874e+03 2.3389780e+03 1.4931276e+03 - 2.2241079e+03 2.3345840e+03 1.4916460e+03 - 2.2313815e+03 2.3271381e+03 1.4899306e+03 - 2.2410374e+03 2.3172216e+03 1.4882786e+03 - 2.2525550e+03 2.3054477e+03 1.4869262e+03 - 2.2653690e+03 2.2924511e+03 1.4860452e+03 - 2.2788771e+03 2.2788771e+03 1.4857399e+03 - 2.2924511e+03 2.2653690e+03 1.4860452e+03 - 2.3054477e+03 2.2525550e+03 1.4869262e+03 - 2.3172216e+03 2.2410374e+03 1.4882786e+03 - 2.3271381e+03 2.2313815e+03 1.4899306e+03 - 2.3345840e+03 2.2241079e+03 1.4916460e+03 - 2.3389780e+03 2.2196874e+03 1.4931276e+03 - 2.3397786e+03 2.2185371e+03 1.4940220e+03 - 2.3364895e+03 2.2210209e+03 1.4939243e+03 - 2.3286630e+03 2.2274500e+03 1.4923834e+03 - 2.3159021e+03 2.2380854e+03 1.4889084e+03 - 2.2978606e+03 2.2531401e+03 1.4829759e+03 - 2.2742432e+03 2.2727810e+03 1.4740394e+03 - 2.2448057e+03 2.2971282e+03 1.4615415e+03 - 2.2093563e+03 2.3262519e+03 1.4449306e+03 - 2.1677592e+03 2.3601656e+03 1.4236828e+03 - 2.1199396e+03 2.3988154e+03 1.3973300e+03 - 2.0658924e+03 2.4420653e+03 1.3654951e+03 - 2.0056923e+03 2.4896809e+03 1.3279321e+03 - 1.9395046e+03 2.5413120e+03 1.2845689e+03 - 1.8675962e+03 2.5964791e+03 1.2355477e+03 - 1.7903409e+03 2.6545676e+03 1.1812553e+03 - 1.7082191e+03 2.7148333e+03 1.1223362e+03 - 1.6218073e+03 2.7764231e+03 1.0596811e+03 - 1.5317575e+03 2.8384104e+03 9.9438751e+02 - 1.4387662e+03 2.8998425e+03 9.2769490e+02 - 1.3435380e+03 2.9597933e+03 8.6090248e+02 - 1.2467477e+03 3.0174138e+03 7.9528228e+02 - 1.1490067e+03 3.0719718e+03 7.3200088e+02 - 1.0508382e+03 3.1228771e+03 6.7206085e+02 - 9.5266253e+02 3.1696891e+03 6.1626757e+02 - 8.5479417e+02 3.2121099e+03 5.6522144e+02 - 7.5744669e+02 3.2499659e+03 5.1933118e+02 - 6.6074408e+02 3.2831833e+03 4.7884125e+02 - 5.6473509e+02 3.3117617e+03 4.4386670e+02 - 4.6940824e+02 3.3357489e+03 4.1442933e+02 - 3.7470595e+02 3.3552189e+03 3.9049150e+02 - 2.8053670e+02 3.3702538e+03 3.7198498e+02 - 1.8678509e+02 3.3809305e+03 3.5883410e+02 - 9.3319832e+01 3.3873103e+03 3.5097309e+02 - 4.8134273e-09 3.3894323e+03 3.4835789e+02 - -9.3319832e+01 3.3873103e+03 3.5097309e+02 - -1.8678509e+02 3.3809305e+03 3.5883410e+02 - -2.8053670e+02 3.3702538e+03 3.7198498e+02 - -3.7470595e+02 3.3552189e+03 3.9049150e+02 - -4.6940824e+02 3.3357489e+03 4.1442933e+02 - -5.6473509e+02 3.3117617e+03 4.4386670e+02 - -6.6074408e+02 3.2831833e+03 4.7884125e+02 - -7.5744669e+02 3.2499659e+03 5.1933118e+02 - -8.5479417e+02 3.2121099e+03 5.6522144e+02 - -9.5266253e+02 3.1696891e+03 6.1626757e+02 - -1.0508382e+03 3.1228771e+03 6.7206085e+02 - -1.1490067e+03 3.0719718e+03 7.3200088e+02 - -1.2467477e+03 3.0174138e+03 7.9528228e+02 - -1.3435380e+03 2.9597933e+03 8.6090248e+02 - -1.4387662e+03 2.8998425e+03 9.2769490e+02 - -1.5317575e+03 2.8384104e+03 9.9438751e+02 - -1.6218073e+03 2.7764231e+03 1.0596811e+03 - -1.7082191e+03 2.7148333e+03 1.1223362e+03 - -1.7903409e+03 2.6545676e+03 1.1812553e+03 - -1.8675962e+03 2.5964791e+03 1.2355477e+03 - -1.9395046e+03 2.5413120e+03 1.2845689e+03 - -2.0056923e+03 2.4896809e+03 1.3279321e+03 - -2.0658924e+03 2.4420653e+03 1.3654951e+03 - -2.1199396e+03 2.3988154e+03 1.3973300e+03 - -2.1677592e+03 2.3601656e+03 1.4236828e+03 - -2.2093563e+03 2.3262519e+03 1.4449306e+03 - -2.2448057e+03 2.2971282e+03 1.4615415e+03 - -2.2742432e+03 2.2727810e+03 1.4740394e+03 - -2.2978606e+03 2.2531401e+03 1.4829759e+03 - -2.3159021e+03 2.2380854e+03 1.4889084e+03 - -2.3286630e+03 2.2274500e+03 1.4923834e+03 - -2.3364895e+03 2.2210209e+03 1.4939243e+03 - -2.3397786e+03 2.2185371e+03 1.4940220e+03 - -2.3389780e+03 2.2196874e+03 1.4931276e+03 - -2.3345840e+03 2.2241079e+03 1.4916460e+03 - -2.3271381e+03 2.2313815e+03 1.4899306e+03 - -2.3172216e+03 2.2410374e+03 1.4882786e+03 - -2.3054477e+03 2.2525550e+03 1.4869262e+03 - -2.2924511e+03 2.2653690e+03 1.4860452e+03 - -2.2788771e+03 2.2788771e+03 1.4857399e+03 - -2.2653690e+03 2.2924511e+03 1.4860452e+03 - -2.2525550e+03 2.3054477e+03 1.4869262e+03 - -2.2410374e+03 2.3172216e+03 1.4882786e+03 - -2.2313815e+03 2.3271381e+03 1.4899306e+03 - -2.2241079e+03 2.3345840e+03 1.4916460e+03 - -2.2196874e+03 2.3389780e+03 1.4931276e+03 - -2.2185371e+03 2.3397786e+03 1.4940220e+03 - -2.2210209e+03 2.3364895e+03 1.4939243e+03 - -2.2274500e+03 2.3286630e+03 1.4923834e+03 - -2.2380854e+03 2.3159021e+03 1.4889084e+03 - -2.2531401e+03 2.2978606e+03 1.4829759e+03 - -2.2727810e+03 2.2742432e+03 1.4740394e+03 - -2.2971282e+03 2.2448057e+03 1.4615415e+03 - -2.3262519e+03 2.2093563e+03 1.4449306e+03 - -2.3601656e+03 2.1677592e+03 1.4236828e+03 - -2.3988154e+03 2.1199396e+03 1.3973300e+03 - -2.4420653e+03 2.0658924e+03 1.3654951e+03 - -2.4896809e+03 2.0056923e+03 1.3279321e+03 - -2.5413120e+03 1.9395046e+03 1.2845689e+03 - -2.5964791e+03 1.8675962e+03 1.2355477e+03 - -2.6545676e+03 1.7903409e+03 1.1812553e+03 - -2.7148333e+03 1.7082191e+03 1.1223362e+03 - -2.7764231e+03 1.6218073e+03 1.0596811e+03 - -2.8384104e+03 1.5317575e+03 9.9438751e+02 - -2.8998425e+03 1.4387662e+03 9.2769490e+02 - -2.9597933e+03 1.3435380e+03 8.6090248e+02 - -3.0174138e+03 1.2467477e+03 7.9528228e+02 - -3.0719718e+03 1.1490067e+03 7.3200088e+02 - -3.1228771e+03 1.0508382e+03 6.7206085e+02 - -3.1696891e+03 9.5266253e+02 6.1626757e+02 - -3.2121099e+03 8.5479417e+02 5.6522144e+02 - -3.2499659e+03 7.5744669e+02 5.1933118e+02 - -3.2831833e+03 6.6074408e+02 4.7884125e+02 - -3.3117617e+03 5.6473509e+02 4.4386670e+02 - -3.3357489e+03 4.6940824e+02 4.1442933e+02 - -3.3552189e+03 3.7470595e+02 3.9049150e+02 - -3.3702538e+03 2.8053670e+02 3.7198498e+02 - -3.3809305e+03 1.8678509e+02 3.5883410e+02 - -3.3873103e+03 9.3319832e+01 3.5097309e+02 - -3.3894323e+03 2.4067136e-09 3.4835789e+02 - -3.3873103e+03 -9.3319832e+01 3.5097309e+02 - -3.3809305e+03 -1.8678509e+02 3.5883410e+02 - -3.3702538e+03 -2.8053670e+02 3.7198498e+02 - -3.3552189e+03 -3.7470595e+02 3.9049150e+02 - -3.3357489e+03 -4.6940824e+02 4.1442933e+02 - -3.3117617e+03 -5.6473509e+02 4.4386670e+02 - -3.2831833e+03 -6.6074408e+02 4.7884125e+02 - -3.2499659e+03 -7.5744669e+02 5.1933118e+02 - -3.2121099e+03 -8.5479417e+02 5.6522144e+02 - -3.1696891e+03 -9.5266253e+02 6.1626757e+02 - -3.1228771e+03 -1.0508382e+03 6.7206085e+02 - -3.0719718e+03 -1.1490067e+03 7.3200088e+02 - -3.0174138e+03 -1.2467477e+03 7.9528228e+02 - -2.9597933e+03 -1.3435380e+03 8.6090248e+02 - -2.8998425e+03 -1.4387662e+03 9.2769490e+02 - -2.8384104e+03 -1.5317575e+03 9.9438751e+02 - -2.7764231e+03 -1.6218073e+03 1.0596811e+03 - -2.7148333e+03 -1.7082191e+03 1.1223362e+03 - -2.6545676e+03 -1.7903409e+03 1.1812553e+03 - -2.5964791e+03 -1.8675962e+03 1.2355477e+03 - -2.5413120e+03 -1.9395046e+03 1.2845689e+03 - -2.4896809e+03 -2.0056923e+03 1.3279321e+03 - -2.4420653e+03 -2.0658924e+03 1.3654951e+03 - -2.3988154e+03 -2.1199396e+03 1.3973300e+03 - -2.3601656e+03 -2.1677592e+03 1.4236828e+03 - -2.3262519e+03 -2.2093563e+03 1.4449306e+03 - -2.2971282e+03 -2.2448057e+03 1.4615415e+03 - -2.2727810e+03 -2.2742432e+03 1.4740394e+03 - -2.2531401e+03 -2.2978606e+03 1.4829759e+03 - -2.2380854e+03 -2.3159021e+03 1.4889084e+03 - -2.2274500e+03 -2.3286630e+03 1.4923834e+03 - -2.2210209e+03 -2.3364895e+03 1.4939243e+03 - -2.2185371e+03 -2.3397786e+03 1.4940220e+03 - -2.2196874e+03 -2.3389780e+03 1.4931276e+03 - -2.2241079e+03 -2.3345840e+03 1.4916460e+03 - -2.2313815e+03 -2.3271381e+03 1.4899306e+03 - -2.2410374e+03 -2.3172216e+03 1.4882786e+03 - -2.2525550e+03 -2.3054477e+03 1.4869262e+03 - -2.2653690e+03 -2.2924511e+03 1.4860452e+03 - -2.2788771e+03 -2.2788771e+03 1.4857399e+03 - -2.2924511e+03 -2.2653690e+03 1.4860452e+03 - -2.3054477e+03 -2.2525550e+03 1.4869262e+03 - -2.3172216e+03 -2.2410374e+03 1.4882786e+03 - -2.3271381e+03 -2.2313815e+03 1.4899306e+03 - -2.3345840e+03 -2.2241079e+03 1.4916460e+03 - -2.3389780e+03 -2.2196874e+03 1.4931276e+03 - -2.3397786e+03 -2.2185371e+03 1.4940220e+03 - -2.3364895e+03 -2.2210209e+03 1.4939243e+03 - -2.3286630e+03 -2.2274500e+03 1.4923834e+03 - -2.3159021e+03 -2.2380854e+03 1.4889084e+03 - -2.2978606e+03 -2.2531401e+03 1.4829759e+03 - -2.2742432e+03 -2.2727810e+03 1.4740394e+03 - -2.2448057e+03 -2.2971282e+03 1.4615415e+03 - -2.2093563e+03 -2.3262519e+03 1.4449306e+03 - -2.1677592e+03 -2.3601656e+03 1.4236828e+03 - -2.1199396e+03 -2.3988154e+03 1.3973300e+03 - -2.0658924e+03 -2.4420653e+03 1.3654951e+03 - -2.0056923e+03 -2.4896809e+03 1.3279321e+03 - -1.9395046e+03 -2.5413120e+03 1.2845689e+03 - -1.8675962e+03 -2.5964791e+03 1.2355477e+03 - -1.7903409e+03 -2.6545676e+03 1.1812553e+03 - -1.7082191e+03 -2.7148333e+03 1.1223362e+03 - -1.6218073e+03 -2.7764231e+03 1.0596811e+03 - -1.5317575e+03 -2.8384104e+03 9.9438751e+02 - -1.4387662e+03 -2.8998425e+03 9.2769490e+02 - -1.3435380e+03 -2.9597933e+03 8.6090248e+02 - -1.2467477e+03 -3.0174138e+03 7.9528228e+02 - -1.1490067e+03 -3.0719718e+03 7.3200088e+02 - -1.0508382e+03 -3.1228771e+03 6.7206085e+02 - -9.5266253e+02 -3.1696891e+03 6.1626757e+02 - -8.5479417e+02 -3.2121099e+03 5.6522144e+02 - -7.5744669e+02 -3.2499659e+03 5.1933118e+02 - -6.6074408e+02 -3.2831833e+03 4.7884125e+02 - -5.6473509e+02 -3.3117617e+03 4.4386670e+02 - -4.6940824e+02 -3.3357489e+03 4.1442933e+02 - -3.7470595e+02 -3.3552189e+03 3.9049150e+02 - -2.8053670e+02 -3.3702538e+03 3.7198498e+02 - -1.8678509e+02 -3.3809305e+03 3.5883410e+02 - -9.3319832e+01 -3.3873103e+03 3.5097309e+02 - -2.4067136e-09 -3.3894323e+03 3.4835789e+02 - 9.3319832e+01 -3.3873103e+03 3.5097309e+02 - 1.8678509e+02 -3.3809305e+03 3.5883410e+02 - 2.8053670e+02 -3.3702538e+03 3.7198498e+02 - 3.7470595e+02 -3.3552189e+03 3.9049150e+02 - 4.6940824e+02 -3.3357489e+03 4.1442933e+02 - 5.6473509e+02 -3.3117617e+03 4.4386670e+02 - 6.6074408e+02 -3.2831833e+03 4.7884125e+02 - 7.5744669e+02 -3.2499659e+03 5.1933118e+02 - 8.5479417e+02 -3.2121099e+03 5.6522144e+02 - 9.5266253e+02 -3.1696891e+03 6.1626757e+02 - 1.0508382e+03 -3.1228771e+03 6.7206085e+02 - 1.1490067e+03 -3.0719718e+03 7.3200088e+02 - 1.2467477e+03 -3.0174138e+03 7.9528228e+02 - 1.3435380e+03 -2.9597933e+03 8.6090248e+02 - 1.4387662e+03 -2.8998425e+03 9.2769490e+02 - 1.5317575e+03 -2.8384104e+03 9.9438751e+02 - 1.6218073e+03 -2.7764231e+03 1.0596811e+03 - 1.7082191e+03 -2.7148333e+03 1.1223362e+03 - 1.7903409e+03 -2.6545676e+03 1.1812553e+03 - 1.8675962e+03 -2.5964791e+03 1.2355477e+03 - 1.9395046e+03 -2.5413120e+03 1.2845689e+03 - 2.0056923e+03 -2.4896809e+03 1.3279321e+03 - 2.0658924e+03 -2.4420653e+03 1.3654951e+03 - 2.1199396e+03 -2.3988154e+03 1.3973300e+03 - 2.1677592e+03 -2.3601656e+03 1.4236828e+03 - 2.2093563e+03 -2.3262519e+03 1.4449306e+03 - 2.2448057e+03 -2.2971282e+03 1.4615415e+03 - 2.2742432e+03 -2.2727810e+03 1.4740394e+03 - 2.2978606e+03 -2.2531401e+03 1.4829759e+03 - 2.3159021e+03 -2.2380854e+03 1.4889084e+03 - 2.3286630e+03 -2.2274500e+03 1.4923834e+03 - 2.3364895e+03 -2.2210209e+03 1.4939243e+03 - 2.3397786e+03 -2.2185371e+03 1.4940220e+03 - 2.3389780e+03 -2.2196874e+03 1.4931276e+03 - 2.3345840e+03 -2.2241079e+03 1.4916460e+03 - 2.3271381e+03 -2.2313815e+03 1.4899306e+03 - 2.3172216e+03 -2.2410374e+03 1.4882786e+03 - 2.3054477e+03 -2.2525550e+03 1.4869262e+03 - 2.2924511e+03 -2.2653690e+03 1.4860452e+03 - 2.2788771e+03 -2.2788771e+03 1.4857399e+03 - 2.2653690e+03 -2.2924511e+03 1.4860452e+03 - 2.2525550e+03 -2.3054477e+03 1.4869262e+03 - 2.2410374e+03 -2.3172216e+03 1.4882786e+03 - 2.2313815e+03 -2.3271381e+03 1.4899306e+03 - 2.2241079e+03 -2.3345840e+03 1.4916460e+03 - 2.2196874e+03 -2.3389780e+03 1.4931276e+03 - 2.2185371e+03 -2.3397786e+03 1.4940220e+03 - 2.2210209e+03 -2.3364895e+03 1.4939243e+03 - 2.2274500e+03 -2.3286630e+03 1.4923834e+03 - 2.2380854e+03 -2.3159021e+03 1.4889084e+03 - 2.2531401e+03 -2.2978606e+03 1.4829759e+03 - 2.2727810e+03 -2.2742432e+03 1.4740394e+03 - 2.2971282e+03 -2.2448057e+03 1.4615415e+03 - 2.3262519e+03 -2.2093563e+03 1.4449306e+03 - 2.3601656e+03 -2.1677592e+03 1.4236828e+03 - 2.3988154e+03 -2.1199396e+03 1.3973300e+03 - 2.4420653e+03 -2.0658924e+03 1.3654951e+03 - 2.4896809e+03 -2.0056923e+03 1.3279321e+03 - 2.5413120e+03 -1.9395046e+03 1.2845689e+03 - 2.5964791e+03 -1.8675962e+03 1.2355477e+03 - 2.6545676e+03 -1.7903409e+03 1.1812553e+03 - 2.7148333e+03 -1.7082191e+03 1.1223362e+03 - 2.7764231e+03 -1.6218073e+03 1.0596811e+03 - 2.8384104e+03 -1.5317575e+03 9.9438751e+02 - 2.8998425e+03 -1.4387662e+03 9.2769490e+02 - 2.9597933e+03 -1.3435380e+03 8.6090248e+02 - 3.0174138e+03 -1.2467477e+03 7.9528228e+02 - 3.0719718e+03 -1.1490067e+03 7.3200088e+02 - 3.1228771e+03 -1.0508382e+03 6.7206085e+02 - 3.1696891e+03 -9.5266253e+02 6.1626757e+02 - 3.2121099e+03 -8.5479417e+02 5.6522144e+02 - 3.2499659e+03 -7.5744669e+02 5.1933118e+02 - 3.2831833e+03 -6.6074408e+02 4.7884125e+02 - 3.3117617e+03 -5.6473509e+02 4.4386670e+02 - 3.3357489e+03 -4.6940824e+02 4.1442933e+02 - 3.3552189e+03 -3.7470595e+02 3.9049150e+02 - 3.3702538e+03 -2.8053670e+02 3.7198498e+02 - 3.3809305e+03 -1.8678509e+02 3.5883410e+02 - 3.3873103e+03 -9.3319832e+01 3.5097309e+02 - 3.3894323e+03 -2.4067136e-09 3.4835789e+02 - 3.4185781e+03 -2.4067136e-09 2.8348925e+02 - 3.4167973e+03 8.8267539e+01 2.8557890e+02 - 3.4114403e+03 1.7667107e+02 2.9186775e+02 - 3.4024643e+03 2.6534567e+02 3.0241437e+02 - 3.3897996e+03 3.5442414e+02 3.1731274e+02 - 3.3733522e+03 4.4403480e+02 3.3668619e+02 - 3.3530086e+03 5.3429783e+02 3.6067803e+02 - 3.3286429e+03 6.2531979e+02 3.8943791e+02 - 3.3001267e+03 7.1718561e+02 4.2310298e+02 - 3.2673436e+03 8.0994774e+02 4.6177302e+02 - 3.2302087e+03 9.0361214e+02 5.0547910e+02 - 3.1886918e+03 9.9812134e+02 5.5414675e+02 - 3.1428462e+03 1.0933357e+03 6.0755564e+02 - 3.0928389e+03 1.1890144e+03 6.6530057e+02 - 3.0389790e+03 1.2848000e+03 7.2676058e+02 - 2.9817396e+03 1.3802097e+03 7.9108480e+02 - 2.9217663e+03 1.4746377e+03 8.5720345e+02 - 2.8598666e+03 1.5673720e+03 9.2386985e+02 - 2.7969797e+03 1.6576256e+03 9.8973281e+02 - 2.7341257e+03 1.7445794e+03 1.0534319e+03 - 2.6723443e+03 1.8274315e+03 1.1137008e+03 - 2.6126305e+03 1.9054443e+03 1.1694610e+03 - 2.5558798e+03 1.9779829e+03 1.2198903e+03 - 2.5028486e+03 2.0445400e+03 1.2644585e+03 - 2.4541350e+03 2.1047465e+03 1.3029271e+03 - 2.4101769e+03 2.1583694e+03 1.3353227e+03 - 2.3712634e+03 2.2053015e+03 1.3618915e+03 - 2.3375537e+03 2.2455470e+03 1.3830467e+03 - 2.3090979e+03 2.2792059e+03 1.3993167e+03 - 2.2858564e+03 2.3064613e+03 1.4112992e+03 - 2.2677146e+03 2.3275689e+03 1.4196240e+03 - 2.2544935e+03 2.3428502e+03 1.4249236e+03 - 2.2459556e+03 2.3526880e+03 1.4278121e+03 - 2.2418066e+03 2.3575233e+03 1.4288694e+03 - 2.2416962e+03 2.3578534e+03 1.4286291e+03 - 2.2452166e+03 2.3542285e+03 1.4275709e+03 - 2.2519018e+03 2.3472482e+03 1.4261123e+03 - 2.2612291e+03 2.3375547e+03 1.4246040e+03 - 2.2726218e+03 2.3258243e+03 1.4233241e+03 - 2.2854551e+03 2.3127573e+03 1.4224745e+03 - 2.2990646e+03 2.2990646e+03 1.4221777e+03 - 2.3127573e+03 2.2854551e+03 1.4224745e+03 - 2.3258243e+03 2.2726218e+03 1.4233241e+03 - 2.3375547e+03 2.2612291e+03 1.4246040e+03 - 2.3472482e+03 2.2519018e+03 1.4261123e+03 - 2.3542285e+03 2.2452166e+03 1.4275709e+03 - 2.3578534e+03 2.2416962e+03 1.4286291e+03 - 2.3575233e+03 2.2418066e+03 1.4288694e+03 - 2.3526880e+03 2.2459556e+03 1.4278121e+03 - 2.3428502e+03 2.2544935e+03 1.4249236e+03 - 2.3275689e+03 2.2677146e+03 1.4196240e+03 - 2.3064613e+03 2.2858564e+03 1.4112992e+03 - 2.2792059e+03 2.3090979e+03 1.3993167e+03 - 2.2455470e+03 2.3375537e+03 1.3830467e+03 - 2.2053015e+03 2.3712634e+03 1.3618915e+03 - 2.1583694e+03 2.4101769e+03 1.3353227e+03 - 2.1047465e+03 2.4541350e+03 1.3029271e+03 - 2.0445400e+03 2.5028486e+03 1.2644585e+03 - 1.9779829e+03 2.5558798e+03 1.2198903e+03 - 1.9054443e+03 2.6126305e+03 1.1694610e+03 - 1.8274315e+03 2.6723443e+03 1.1137008e+03 - 1.7445794e+03 2.7341257e+03 1.0534319e+03 - 1.6576256e+03 2.7969797e+03 9.8973281e+02 - 1.5673720e+03 2.8598666e+03 9.2386985e+02 - 1.4746377e+03 2.9217663e+03 8.5720345e+02 - 1.3802097e+03 2.9817396e+03 7.9108480e+02 - 1.2848000e+03 3.0389790e+03 7.2676058e+02 - 1.1890144e+03 3.0928389e+03 6.6530057e+02 - 1.0933357e+03 3.1428462e+03 6.0755564e+02 - 9.9812134e+02 3.1886918e+03 5.5414675e+02 - 9.0361214e+02 3.2302087e+03 5.0547910e+02 - 8.0994774e+02 3.2673436e+03 4.6177302e+02 - 7.1718561e+02 3.3001267e+03 4.2310298e+02 - 6.2531979e+02 3.3286429e+03 3.8943791e+02 - 5.3429783e+02 3.3530086e+03 3.6067803e+02 - 4.4403480e+02 3.3733522e+03 3.3668619e+02 - 3.5442414e+02 3.3897996e+03 3.1731274e+02 - 2.6534567e+02 3.4024643e+03 3.0241437e+02 - 1.7667107e+02 3.4114403e+03 2.9186775e+02 - 8.8267539e+01 3.4167973e+03 2.8557890e+02 - -2.4067136e-09 3.4185781e+03 2.8348925e+02 - -8.8267539e+01 3.4167973e+03 2.8557890e+02 - -1.7667107e+02 3.4114403e+03 2.9186775e+02 - -2.6534567e+02 3.4024643e+03 3.0241437e+02 - -3.5442414e+02 3.3897996e+03 3.1731274e+02 - -4.4403480e+02 3.3733522e+03 3.3668619e+02 - -5.3429783e+02 3.3530086e+03 3.6067803e+02 - -6.2531979e+02 3.3286429e+03 3.8943791e+02 - -7.1718561e+02 3.3001267e+03 4.2310298e+02 - -8.0994774e+02 3.2673436e+03 4.6177302e+02 - -9.0361214e+02 3.2302087e+03 5.0547910e+02 - -9.9812134e+02 3.1886918e+03 5.5414675e+02 - -1.0933357e+03 3.1428462e+03 6.0755564e+02 - -1.1890144e+03 3.0928389e+03 6.6530057e+02 - -1.2848000e+03 3.0389790e+03 7.2676058e+02 - -1.3802097e+03 2.9817396e+03 7.9108480e+02 - -1.4746377e+03 2.9217663e+03 8.5720345e+02 - -1.5673720e+03 2.8598666e+03 9.2386985e+02 - -1.6576256e+03 2.7969797e+03 9.8973281e+02 - -1.7445794e+03 2.7341257e+03 1.0534319e+03 - -1.8274315e+03 2.6723443e+03 1.1137008e+03 - -1.9054443e+03 2.6126305e+03 1.1694610e+03 - -1.9779829e+03 2.5558798e+03 1.2198903e+03 - -2.0445400e+03 2.5028486e+03 1.2644585e+03 - -2.1047465e+03 2.4541350e+03 1.3029271e+03 - -2.1583694e+03 2.4101769e+03 1.3353227e+03 - -2.2053015e+03 2.3712634e+03 1.3618915e+03 - -2.2455470e+03 2.3375537e+03 1.3830467e+03 - -2.2792059e+03 2.3090979e+03 1.3993167e+03 - -2.3064613e+03 2.2858564e+03 1.4112992e+03 - -2.3275689e+03 2.2677146e+03 1.4196240e+03 - -2.3428502e+03 2.2544935e+03 1.4249236e+03 - -2.3526880e+03 2.2459556e+03 1.4278121e+03 - -2.3575233e+03 2.2418066e+03 1.4288694e+03 - -2.3578534e+03 2.2416962e+03 1.4286291e+03 - -2.3542285e+03 2.2452166e+03 1.4275709e+03 - -2.3472482e+03 2.2519018e+03 1.4261123e+03 - -2.3375547e+03 2.2612291e+03 1.4246040e+03 - -2.3258243e+03 2.2726218e+03 1.4233241e+03 - -2.3127573e+03 2.2854551e+03 1.4224745e+03 - -2.2990646e+03 2.2990646e+03 1.4221777e+03 - -2.2854551e+03 2.3127573e+03 1.4224745e+03 - -2.2726218e+03 2.3258243e+03 1.4233241e+03 - -2.2612291e+03 2.3375547e+03 1.4246040e+03 - -2.2519018e+03 2.3472482e+03 1.4261123e+03 - -2.2452166e+03 2.3542285e+03 1.4275709e+03 - -2.2416962e+03 2.3578534e+03 1.4286291e+03 - -2.2418066e+03 2.3575233e+03 1.4288694e+03 - -2.2459556e+03 2.3526880e+03 1.4278121e+03 - -2.2544935e+03 2.3428502e+03 1.4249236e+03 - -2.2677146e+03 2.3275689e+03 1.4196240e+03 - -2.2858564e+03 2.3064613e+03 1.4112992e+03 - -2.3090979e+03 2.2792059e+03 1.3993167e+03 - -2.3375537e+03 2.2455470e+03 1.3830467e+03 - -2.3712634e+03 2.2053015e+03 1.3618915e+03 - -2.4101769e+03 2.1583694e+03 1.3353227e+03 - -2.4541350e+03 2.1047465e+03 1.3029271e+03 - -2.5028486e+03 2.0445400e+03 1.2644585e+03 - -2.5558798e+03 1.9779829e+03 1.2198903e+03 - -2.6126305e+03 1.9054443e+03 1.1694610e+03 - -2.6723443e+03 1.8274315e+03 1.1137008e+03 - -2.7341257e+03 1.7445794e+03 1.0534319e+03 - -2.7969797e+03 1.6576256e+03 9.8973281e+02 - -2.8598666e+03 1.5673720e+03 9.2386985e+02 - -2.9217663e+03 1.4746377e+03 8.5720345e+02 - -2.9817396e+03 1.3802097e+03 7.9108480e+02 - -3.0389790e+03 1.2848000e+03 7.2676058e+02 - -3.0928389e+03 1.1890144e+03 6.6530057e+02 - -3.1428462e+03 1.0933357e+03 6.0755564e+02 - -3.1886918e+03 9.9812134e+02 5.5414675e+02 - -3.2302087e+03 9.0361214e+02 5.0547910e+02 - -3.2673436e+03 8.0994774e+02 4.6177302e+02 - -3.3001267e+03 7.1718561e+02 4.2310298e+02 - -3.3286429e+03 6.2531979e+02 3.8943791e+02 - -3.3530086e+03 5.3429783e+02 3.6067803e+02 - -3.3733522e+03 4.4403480e+02 3.3668619e+02 - -3.3897996e+03 3.5442414e+02 3.1731274e+02 - -3.4024643e+03 2.6534567e+02 3.0241437e+02 - -3.4114403e+03 1.7667107e+02 2.9186775e+02 - -3.4167973e+03 8.8267539e+01 2.8557890e+02 - -3.4185781e+03 2.4067136e-09 2.8348925e+02 - -3.4167973e+03 -8.8267539e+01 2.8557890e+02 - -3.4114403e+03 -1.7667107e+02 2.9186775e+02 - -3.4024643e+03 -2.6534567e+02 3.0241437e+02 - -3.3897996e+03 -3.5442414e+02 3.1731274e+02 - -3.3733522e+03 -4.4403480e+02 3.3668619e+02 - -3.3530086e+03 -5.3429783e+02 3.6067803e+02 - -3.3286429e+03 -6.2531979e+02 3.8943791e+02 - -3.3001267e+03 -7.1718561e+02 4.2310298e+02 - -3.2673436e+03 -8.0994774e+02 4.6177302e+02 - -3.2302087e+03 -9.0361214e+02 5.0547910e+02 - -3.1886918e+03 -9.9812134e+02 5.5414675e+02 - -3.1428462e+03 -1.0933357e+03 6.0755564e+02 - -3.0928389e+03 -1.1890144e+03 6.6530057e+02 - -3.0389790e+03 -1.2848000e+03 7.2676058e+02 - -2.9817396e+03 -1.3802097e+03 7.9108480e+02 - -2.9217663e+03 -1.4746377e+03 8.5720345e+02 - -2.8598666e+03 -1.5673720e+03 9.2386985e+02 - -2.7969797e+03 -1.6576256e+03 9.8973281e+02 - -2.7341257e+03 -1.7445794e+03 1.0534319e+03 - -2.6723443e+03 -1.8274315e+03 1.1137008e+03 - -2.6126305e+03 -1.9054443e+03 1.1694610e+03 - -2.5558798e+03 -1.9779829e+03 1.2198903e+03 - -2.5028486e+03 -2.0445400e+03 1.2644585e+03 - -2.4541350e+03 -2.1047465e+03 1.3029271e+03 - -2.4101769e+03 -2.1583694e+03 1.3353227e+03 - -2.3712634e+03 -2.2053015e+03 1.3618915e+03 - -2.3375537e+03 -2.2455470e+03 1.3830467e+03 - -2.3090979e+03 -2.2792059e+03 1.3993167e+03 - -2.2858564e+03 -2.3064613e+03 1.4112992e+03 - -2.2677146e+03 -2.3275689e+03 1.4196240e+03 - -2.2544935e+03 -2.3428502e+03 1.4249236e+03 - -2.2459556e+03 -2.3526880e+03 1.4278121e+03 - -2.2418066e+03 -2.3575233e+03 1.4288694e+03 - -2.2416962e+03 -2.3578534e+03 1.4286291e+03 - -2.2452166e+03 -2.3542285e+03 1.4275709e+03 - -2.2519018e+03 -2.3472482e+03 1.4261123e+03 - -2.2612291e+03 -2.3375547e+03 1.4246040e+03 - -2.2726218e+03 -2.3258243e+03 1.4233241e+03 - -2.2854551e+03 -2.3127573e+03 1.4224745e+03 - -2.2990646e+03 -2.2990646e+03 1.4221777e+03 - -2.3127573e+03 -2.2854551e+03 1.4224745e+03 - -2.3258243e+03 -2.2726218e+03 1.4233241e+03 - -2.3375547e+03 -2.2612291e+03 1.4246040e+03 - -2.3472482e+03 -2.2519018e+03 1.4261123e+03 - -2.3542285e+03 -2.2452166e+03 1.4275709e+03 - -2.3578534e+03 -2.2416962e+03 1.4286291e+03 - -2.3575233e+03 -2.2418066e+03 1.4288694e+03 - -2.3526880e+03 -2.2459556e+03 1.4278121e+03 - -2.3428502e+03 -2.2544935e+03 1.4249236e+03 - -2.3275689e+03 -2.2677146e+03 1.4196240e+03 - -2.3064613e+03 -2.2858564e+03 1.4112992e+03 - -2.2792059e+03 -2.3090979e+03 1.3993167e+03 - -2.2455470e+03 -2.3375537e+03 1.3830467e+03 - -2.2053015e+03 -2.3712634e+03 1.3618915e+03 - -2.1583694e+03 -2.4101769e+03 1.3353227e+03 - -2.1047465e+03 -2.4541350e+03 1.3029271e+03 - -2.0445400e+03 -2.5028486e+03 1.2644585e+03 - -1.9779829e+03 -2.5558798e+03 1.2198903e+03 - -1.9054443e+03 -2.6126305e+03 1.1694610e+03 - -1.8274315e+03 -2.6723443e+03 1.1137008e+03 - -1.7445794e+03 -2.7341257e+03 1.0534319e+03 - -1.6576256e+03 -2.7969797e+03 9.8973281e+02 - -1.5673720e+03 -2.8598666e+03 9.2386985e+02 - -1.4746377e+03 -2.9217663e+03 8.5720345e+02 - -1.3802097e+03 -2.9817396e+03 7.9108480e+02 - -1.2848000e+03 -3.0389790e+03 7.2676058e+02 - -1.1890144e+03 -3.0928389e+03 6.6530057e+02 - -1.0933357e+03 -3.1428462e+03 6.0755564e+02 - -9.9812134e+02 -3.1886918e+03 5.5414675e+02 - -9.0361214e+02 -3.2302087e+03 5.0547910e+02 - -8.0994774e+02 -3.2673436e+03 4.6177302e+02 - -7.1718561e+02 -3.3001267e+03 4.2310298e+02 - -6.2531979e+02 -3.3286429e+03 3.8943791e+02 - -5.3429783e+02 -3.3530086e+03 3.6067803e+02 - -4.4403480e+02 -3.3733522e+03 3.3668619e+02 - -3.5442414e+02 -3.3897996e+03 3.1731274e+02 - -2.6534567e+02 -3.4024643e+03 3.0241437e+02 - -1.7667107e+02 -3.4114403e+03 2.9186775e+02 - -8.8267539e+01 -3.4167973e+03 2.8557890e+02 - 2.4067136e-09 -3.4185781e+03 2.8348925e+02 - 8.8267539e+01 -3.4167973e+03 2.8557890e+02 - 1.7667107e+02 -3.4114403e+03 2.9186775e+02 - 2.6534567e+02 -3.4024643e+03 3.0241437e+02 - 3.5442414e+02 -3.3897996e+03 3.1731274e+02 - 4.4403480e+02 -3.3733522e+03 3.3668619e+02 - 5.3429783e+02 -3.3530086e+03 3.6067803e+02 - 6.2531979e+02 -3.3286429e+03 3.8943791e+02 - 7.1718561e+02 -3.3001267e+03 4.2310298e+02 - 8.0994774e+02 -3.2673436e+03 4.6177302e+02 - 9.0361214e+02 -3.2302087e+03 5.0547910e+02 - 9.9812134e+02 -3.1886918e+03 5.5414675e+02 - 1.0933357e+03 -3.1428462e+03 6.0755564e+02 - 1.1890144e+03 -3.0928389e+03 6.6530057e+02 - 1.2848000e+03 -3.0389790e+03 7.2676058e+02 - 1.3802097e+03 -2.9817396e+03 7.9108480e+02 - 1.4746377e+03 -2.9217663e+03 8.5720345e+02 - 1.5673720e+03 -2.8598666e+03 9.2386985e+02 - 1.6576256e+03 -2.7969797e+03 9.8973281e+02 - 1.7445794e+03 -2.7341257e+03 1.0534319e+03 - 1.8274315e+03 -2.6723443e+03 1.1137008e+03 - 1.9054443e+03 -2.6126305e+03 1.1694610e+03 - 1.9779829e+03 -2.5558798e+03 1.2198903e+03 - 2.0445400e+03 -2.5028486e+03 1.2644585e+03 - 2.1047465e+03 -2.4541350e+03 1.3029271e+03 - 2.1583694e+03 -2.4101769e+03 1.3353227e+03 - 2.2053015e+03 -2.3712634e+03 1.3618915e+03 - 2.2455470e+03 -2.3375537e+03 1.3830467e+03 - 2.2792059e+03 -2.3090979e+03 1.3993167e+03 - 2.3064613e+03 -2.2858564e+03 1.4112992e+03 - 2.3275689e+03 -2.2677146e+03 1.4196240e+03 - 2.3428502e+03 -2.2544935e+03 1.4249236e+03 - 2.3526880e+03 -2.2459556e+03 1.4278121e+03 - 2.3575233e+03 -2.2418066e+03 1.4288694e+03 - 2.3578534e+03 -2.2416962e+03 1.4286291e+03 - 2.3542285e+03 -2.2452166e+03 1.4275709e+03 - 2.3472482e+03 -2.2519018e+03 1.4261123e+03 - 2.3375547e+03 -2.2612291e+03 1.4246040e+03 - 2.3258243e+03 -2.2726218e+03 1.4233241e+03 - 2.3127573e+03 -2.2854551e+03 1.4224745e+03 - 2.2990646e+03 -2.2990646e+03 1.4221777e+03 - 2.2854551e+03 -2.3127573e+03 1.4224745e+03 - 2.2726218e+03 -2.3258243e+03 1.4233241e+03 - 2.2612291e+03 -2.3375547e+03 1.4246040e+03 - 2.2519018e+03 -2.3472482e+03 1.4261123e+03 - 2.2452166e+03 -2.3542285e+03 1.4275709e+03 - 2.2416962e+03 -2.3578534e+03 1.4286291e+03 - 2.2418066e+03 -2.3575233e+03 1.4288694e+03 - 2.2459556e+03 -2.3526880e+03 1.4278121e+03 - 2.2544935e+03 -2.3428502e+03 1.4249236e+03 - 2.2677146e+03 -2.3275689e+03 1.4196240e+03 - 2.2858564e+03 -2.3064613e+03 1.4112992e+03 - 2.3090979e+03 -2.2792059e+03 1.3993167e+03 - 2.3375537e+03 -2.2455470e+03 1.3830467e+03 - 2.3712634e+03 -2.2053015e+03 1.3618915e+03 - 2.4101769e+03 -2.1583694e+03 1.3353227e+03 - 2.4541350e+03 -2.1047465e+03 1.3029271e+03 - 2.5028486e+03 -2.0445400e+03 1.2644585e+03 - 2.5558798e+03 -1.9779829e+03 1.2198903e+03 - 2.6126305e+03 -1.9054443e+03 1.1694610e+03 - 2.6723443e+03 -1.8274315e+03 1.1137008e+03 - 2.7341257e+03 -1.7445794e+03 1.0534319e+03 - 2.7969797e+03 -1.6576256e+03 9.8973281e+02 - 2.8598666e+03 -1.5673720e+03 9.2386985e+02 - 2.9217663e+03 -1.4746377e+03 8.5720345e+02 - 2.9817396e+03 -1.3802097e+03 7.9108480e+02 - 3.0389790e+03 -1.2848000e+03 7.2676058e+02 - 3.0928389e+03 -1.1890144e+03 6.6530057e+02 - 3.1428462e+03 -1.0933357e+03 6.0755564e+02 - 3.1886918e+03 -9.9812134e+02 5.5414675e+02 - 3.2302087e+03 -9.0361214e+02 5.0547910e+02 - 3.2673436e+03 -8.0994774e+02 4.6177302e+02 - 3.3001267e+03 -7.1718561e+02 4.2310298e+02 - 3.3286429e+03 -6.2531979e+02 3.8943791e+02 - 3.3530086e+03 -5.3429783e+02 3.6067803e+02 - 3.3733522e+03 -4.4403480e+02 3.3668619e+02 - 3.3897996e+03 -3.5442414e+02 3.1731274e+02 - 3.4024643e+03 -2.6534567e+02 3.0241437e+02 - 3.4114403e+03 -1.7667107e+02 2.9186775e+02 - 3.4167973e+03 -8.8267539e+01 2.8557890e+02 - 3.4185781e+03 0.0000000e+00 2.8348925e+02 - 3.4443200e+03 0.0000000e+00 2.2305143e+02 - 3.4427929e+03 8.4329976e+01 2.2473885e+02 - 3.4381988e+03 1.6877399e+02 2.2982075e+02 - 3.4304987e+03 2.5344694e+02 2.3835578e+02 - 3.4196283e+03 3.3846524e+02 2.5044029e+02 - 3.4054983e+03 4.2394696e+02 2.6620602e+02 - 3.3879956e+03 5.1001106e+02 2.8581598e+02 - 3.3669863e+03 5.9677551e+02 3.0945800e+02 - 3.3423195e+03 6.8435347e+02 3.3733480e+02 - 3.3138349e+03 7.7284727e+02 3.6964932e+02 - 3.2813733e+03 8.6233912e+02 4.0658421e+02 - 3.2447924e+03 9.5287823e+02 4.4827412e+02 - 3.2039888e+03 1.0444637e+03 4.9477043e+02 - 3.1589250e+03 1.1370236e+03 5.4599911e+02 - 3.1096629e+03 1.2303909e+03 6.0171464e+02 - 3.0563993e+03 1.3242794e+03 6.6145588e+02 - 2.9994997e+03 1.4182638e+03 7.2451289e+02 - 2.9395221e+03 1.5117682e+03 7.8991569e+02 - 2.8772236e+03 1.6040712e+03 8.5645587e+02 - 2.8135428e+03 1.6943291e+03 9.2274704e+02 - 2.7495558e+03 1.7816194e+03 9.8732158e+02 - 2.6864086e+03 1.8649985e+03 1.0487509e+03 - 2.6252393e+03 1.9435666e+03 1.1057678e+03 - 2.5671009e+03 2.0165253e+03 1.1573681e+03 - 2.5129010e+03 2.0832228e+03 1.2028736e+03 - 2.4633642e+03 2.1431777e+03 1.2419505e+03 - 2.4190196e+03 2.1960848e+03 1.2745871e+03 - 2.3802089e+03 2.2418058e+03 1.3010424e+03 - 2.3471072e+03 2.2803512e+03 1.3217824e+03 - 2.3197485e+03 2.3118588e+03 1.3374130e+03 - 2.2980516e+03 2.3365750e+03 1.3486214e+03 - 2.2818399e+03 2.3548375e+03 1.3561275e+03 - 2.2708566e+03 2.3670643e+03 1.3606466e+03 - 2.2647737e+03 2.3737445e+03 1.3628629e+03 - 2.2631965e+03 2.3754322e+03 1.3634102e+03 - 2.2656660e+03 2.3727411e+03 1.3628587e+03 - 2.2716597e+03 2.3663384e+03 1.3617051e+03 - 2.2805936e+03 2.3569378e+03 1.3603653e+03 - 2.2918255e+03 2.3452898e+03 1.3591690e+03 - 2.3046617e+03 2.3321699e+03 1.3583547e+03 - 2.3183656e+03 2.3183657e+03 1.3580671e+03 - 2.3321699e+03 2.3046617e+03 1.3583547e+03 - 2.3452898e+03 2.2918255e+03 1.3591690e+03 - 2.3569378e+03 2.2805936e+03 1.3603653e+03 - 2.3663384e+03 2.2716597e+03 1.3617051e+03 - 2.3727411e+03 2.2656660e+03 1.3628587e+03 - 2.3754322e+03 2.2631965e+03 1.3634102e+03 - 2.3737445e+03 2.2647737e+03 1.3628629e+03 - 2.3670643e+03 2.2708566e+03 1.3606466e+03 - 2.3548375e+03 2.2818399e+03 1.3561275e+03 - 2.3365750e+03 2.2980516e+03 1.3486214e+03 - 2.3118588e+03 2.3197485e+03 1.3374130e+03 - 2.2803512e+03 2.3471072e+03 1.3217824e+03 - 2.2418058e+03 2.3802089e+03 1.3010424e+03 - 2.1960848e+03 2.4190196e+03 1.2745871e+03 - 2.1431777e+03 2.4633642e+03 1.2419505e+03 - 2.0832228e+03 2.5129010e+03 1.2028736e+03 - 2.0165253e+03 2.5671009e+03 1.1573681e+03 - 1.9435666e+03 2.6252393e+03 1.1057678e+03 - 1.8649985e+03 2.6864086e+03 1.0487509e+03 - 1.7816194e+03 2.7495558e+03 9.8732158e+02 - 1.6943291e+03 2.8135428e+03 9.2274704e+02 - 1.6040712e+03 2.8772236e+03 8.5645587e+02 - 1.5117682e+03 2.9395221e+03 7.8991569e+02 - 1.4182638e+03 2.9994997e+03 7.2451289e+02 - 1.3242794e+03 3.0563993e+03 6.6145588e+02 - 1.2303909e+03 3.1096629e+03 6.0171464e+02 - 1.1370236e+03 3.1589250e+03 5.4599911e+02 - 1.0444637e+03 3.2039888e+03 4.9477043e+02 - 9.5287823e+02 3.2447924e+03 4.4827412e+02 - 8.6233912e+02 3.2813733e+03 4.0658421e+02 - 7.7284727e+02 3.3138349e+03 3.6964932e+02 - 6.8435347e+02 3.3423195e+03 3.3733480e+02 - 5.9677551e+02 3.3669863e+03 3.0945800e+02 - 5.1001106e+02 3.3879956e+03 2.8581598e+02 - 4.2394696e+02 3.4054983e+03 2.6620602e+02 - 3.3846524e+02 3.4196283e+03 2.5044029e+02 - 2.5344694e+02 3.4304987e+03 2.3835578e+02 - 1.6877399e+02 3.4381988e+03 2.2982075e+02 - 8.4329976e+01 3.4427929e+03 2.2473885e+02 - 2.4067136e-09 3.4443200e+03 2.2305143e+02 - -8.4329976e+01 3.4427929e+03 2.2473885e+02 - -1.6877399e+02 3.4381988e+03 2.2982075e+02 - -2.5344694e+02 3.4304987e+03 2.3835578e+02 - -3.3846524e+02 3.4196283e+03 2.5044029e+02 - -4.2394696e+02 3.4054983e+03 2.6620602e+02 - -5.1001106e+02 3.3879956e+03 2.8581598e+02 - -5.9677551e+02 3.3669863e+03 3.0945800e+02 - -6.8435347e+02 3.3423195e+03 3.3733480e+02 - -7.7284727e+02 3.3138349e+03 3.6964932e+02 - -8.6233912e+02 3.2813733e+03 4.0658421e+02 - -9.5287823e+02 3.2447924e+03 4.4827412e+02 - -1.0444637e+03 3.2039888e+03 4.9477043e+02 - -1.1370236e+03 3.1589250e+03 5.4599911e+02 - -1.2303909e+03 3.1096629e+03 6.0171464e+02 - -1.3242794e+03 3.0563993e+03 6.6145588e+02 - -1.4182638e+03 2.9994997e+03 7.2451289e+02 - -1.5117682e+03 2.9395221e+03 7.8991569e+02 - -1.6040712e+03 2.8772236e+03 8.5645587e+02 - -1.6943291e+03 2.8135428e+03 9.2274704e+02 - -1.7816194e+03 2.7495558e+03 9.8732158e+02 - -1.8649985e+03 2.6864086e+03 1.0487509e+03 - -1.9435666e+03 2.6252393e+03 1.1057678e+03 - -2.0165253e+03 2.5671009e+03 1.1573681e+03 - -2.0832228e+03 2.5129010e+03 1.2028736e+03 - -2.1431777e+03 2.4633642e+03 1.2419505e+03 - -2.1960848e+03 2.4190196e+03 1.2745871e+03 - -2.2418058e+03 2.3802089e+03 1.3010424e+03 - -2.2803512e+03 2.3471072e+03 1.3217824e+03 - -2.3118588e+03 2.3197485e+03 1.3374130e+03 - -2.3365750e+03 2.2980516e+03 1.3486214e+03 - -2.3548375e+03 2.2818399e+03 1.3561275e+03 - -2.3670643e+03 2.2708566e+03 1.3606466e+03 - -2.3737445e+03 2.2647737e+03 1.3628629e+03 - -2.3754322e+03 2.2631965e+03 1.3634102e+03 - -2.3727411e+03 2.2656660e+03 1.3628587e+03 - -2.3663384e+03 2.2716597e+03 1.3617051e+03 - -2.3569378e+03 2.2805936e+03 1.3603653e+03 - -2.3452898e+03 2.2918255e+03 1.3591690e+03 - -2.3321699e+03 2.3046617e+03 1.3583547e+03 - -2.3183657e+03 2.3183657e+03 1.3580671e+03 - -2.3046617e+03 2.3321699e+03 1.3583547e+03 - -2.2918255e+03 2.3452898e+03 1.3591690e+03 - -2.2805936e+03 2.3569378e+03 1.3603653e+03 - -2.2716597e+03 2.3663384e+03 1.3617051e+03 - -2.2656660e+03 2.3727411e+03 1.3628587e+03 - -2.2631965e+03 2.3754322e+03 1.3634102e+03 - -2.2647737e+03 2.3737445e+03 1.3628629e+03 - -2.2708566e+03 2.3670643e+03 1.3606466e+03 - -2.2818399e+03 2.3548375e+03 1.3561275e+03 - -2.2980516e+03 2.3365750e+03 1.3486214e+03 - -2.3197485e+03 2.3118588e+03 1.3374130e+03 - -2.3471072e+03 2.2803512e+03 1.3217824e+03 - -2.3802089e+03 2.2418058e+03 1.3010424e+03 - -2.4190196e+03 2.1960848e+03 1.2745871e+03 - -2.4633642e+03 2.1431777e+03 1.2419505e+03 - -2.5129010e+03 2.0832228e+03 1.2028736e+03 - -2.5671009e+03 2.0165253e+03 1.1573681e+03 - -2.6252393e+03 1.9435666e+03 1.1057678e+03 - -2.6864086e+03 1.8649985e+03 1.0487509e+03 - -2.7495558e+03 1.7816194e+03 9.8732158e+02 - -2.8135428e+03 1.6943291e+03 9.2274704e+02 - -2.8772236e+03 1.6040712e+03 8.5645587e+02 - -2.9395221e+03 1.5117682e+03 7.8991569e+02 - -2.9994997e+03 1.4182638e+03 7.2451289e+02 - -3.0563993e+03 1.3242794e+03 6.6145588e+02 - -3.1096629e+03 1.2303909e+03 6.0171464e+02 - -3.1589250e+03 1.1370236e+03 5.4599911e+02 - -3.2039888e+03 1.0444637e+03 4.9477043e+02 - -3.2447924e+03 9.5287823e+02 4.4827412e+02 - -3.2813733e+03 8.6233912e+02 4.0658421e+02 - -3.3138349e+03 7.7284727e+02 3.6964932e+02 - -3.3423195e+03 6.8435347e+02 3.3733480e+02 - -3.3669863e+03 5.9677551e+02 3.0945800e+02 - -3.3879956e+03 5.1001106e+02 2.8581598e+02 - -3.4054983e+03 4.2394696e+02 2.6620602e+02 - -3.4196283e+03 3.3846524e+02 2.5044029e+02 - -3.4304987e+03 2.5344694e+02 2.3835578e+02 - -3.4381988e+03 1.6877399e+02 2.2982075e+02 - -3.4427929e+03 8.4329976e+01 2.2473885e+02 - -3.4443200e+03 2.4067136e-09 2.2305143e+02 - -3.4427929e+03 -8.4329976e+01 2.2473885e+02 - -3.4381988e+03 -1.6877399e+02 2.2982075e+02 - -3.4304987e+03 -2.5344694e+02 2.3835578e+02 - -3.4196283e+03 -3.3846524e+02 2.5044029e+02 - -3.4054983e+03 -4.2394696e+02 2.6620602e+02 - -3.3879956e+03 -5.1001106e+02 2.8581598e+02 - -3.3669863e+03 -5.9677551e+02 3.0945800e+02 - -3.3423195e+03 -6.8435347e+02 3.3733480e+02 - -3.3138349e+03 -7.7284727e+02 3.6964932e+02 - -3.2813733e+03 -8.6233912e+02 4.0658421e+02 - -3.2447924e+03 -9.5287823e+02 4.4827412e+02 - -3.2039888e+03 -1.0444637e+03 4.9477043e+02 - -3.1589250e+03 -1.1370236e+03 5.4599911e+02 - -3.1096629e+03 -1.2303909e+03 6.0171464e+02 - -3.0563993e+03 -1.3242794e+03 6.6145588e+02 - -2.9994997e+03 -1.4182638e+03 7.2451289e+02 - -2.9395221e+03 -1.5117682e+03 7.8991569e+02 - -2.8772236e+03 -1.6040712e+03 8.5645587e+02 - -2.8135428e+03 -1.6943291e+03 9.2274704e+02 - -2.7495558e+03 -1.7816194e+03 9.8732158e+02 - -2.6864086e+03 -1.8649985e+03 1.0487509e+03 - -2.6252393e+03 -1.9435666e+03 1.1057678e+03 - -2.5671009e+03 -2.0165253e+03 1.1573681e+03 - -2.5129010e+03 -2.0832228e+03 1.2028736e+03 - -2.4633642e+03 -2.1431777e+03 1.2419505e+03 - -2.4190196e+03 -2.1960848e+03 1.2745871e+03 - -2.3802089e+03 -2.2418058e+03 1.3010424e+03 - -2.3471072e+03 -2.2803512e+03 1.3217824e+03 - -2.3197485e+03 -2.3118588e+03 1.3374130e+03 - -2.2980516e+03 -2.3365750e+03 1.3486214e+03 - -2.2818399e+03 -2.3548375e+03 1.3561275e+03 - -2.2708566e+03 -2.3670643e+03 1.3606466e+03 - -2.2647737e+03 -2.3737445e+03 1.3628629e+03 - -2.2631965e+03 -2.3754322e+03 1.3634102e+03 - -2.2656660e+03 -2.3727411e+03 1.3628587e+03 - -2.2716597e+03 -2.3663384e+03 1.3617051e+03 - -2.2805936e+03 -2.3569378e+03 1.3603653e+03 - -2.2918255e+03 -2.3452898e+03 1.3591690e+03 - -2.3046617e+03 -2.3321699e+03 1.3583547e+03 - -2.3183657e+03 -2.3183657e+03 1.3580671e+03 - -2.3321699e+03 -2.3046617e+03 1.3583547e+03 - -2.3452898e+03 -2.2918255e+03 1.3591690e+03 - -2.3569378e+03 -2.2805936e+03 1.3603653e+03 - -2.3663384e+03 -2.2716597e+03 1.3617051e+03 - -2.3727411e+03 -2.2656660e+03 1.3628587e+03 - -2.3754322e+03 -2.2631965e+03 1.3634102e+03 - -2.3737445e+03 -2.2647737e+03 1.3628629e+03 - -2.3670643e+03 -2.2708566e+03 1.3606466e+03 - -2.3548375e+03 -2.2818399e+03 1.3561275e+03 - -2.3365750e+03 -2.2980516e+03 1.3486214e+03 - -2.3118588e+03 -2.3197485e+03 1.3374130e+03 - -2.2803512e+03 -2.3471072e+03 1.3217824e+03 - -2.2418058e+03 -2.3802089e+03 1.3010424e+03 - -2.1960848e+03 -2.4190196e+03 1.2745871e+03 - -2.1431777e+03 -2.4633642e+03 1.2419505e+03 - -2.0832228e+03 -2.5129010e+03 1.2028736e+03 - -2.0165253e+03 -2.5671009e+03 1.1573681e+03 - -1.9435666e+03 -2.6252393e+03 1.1057678e+03 - -1.8649985e+03 -2.6864086e+03 1.0487509e+03 - -1.7816194e+03 -2.7495558e+03 9.8732158e+02 - -1.6943291e+03 -2.8135428e+03 9.2274704e+02 - -1.6040712e+03 -2.8772236e+03 8.5645587e+02 - -1.5117682e+03 -2.9395221e+03 7.8991569e+02 - -1.4182638e+03 -2.9994997e+03 7.2451289e+02 - -1.3242794e+03 -3.0563993e+03 6.6145588e+02 - -1.2303909e+03 -3.1096629e+03 6.0171464e+02 - -1.1370236e+03 -3.1589250e+03 5.4599911e+02 - -1.0444637e+03 -3.2039888e+03 4.9477043e+02 - -9.5287823e+02 -3.2447924e+03 4.4827412e+02 - -8.6233912e+02 -3.2813733e+03 4.0658421e+02 - -7.7284727e+02 -3.3138349e+03 3.6964932e+02 - -6.8435347e+02 -3.3423195e+03 3.3733480e+02 - -5.9677551e+02 -3.3669863e+03 3.0945800e+02 - -5.1001106e+02 -3.3879956e+03 2.8581598e+02 - -4.2394696e+02 -3.4054983e+03 2.6620602e+02 - -3.3846524e+02 -3.4196283e+03 2.5044029e+02 - -2.5344694e+02 -3.4304987e+03 2.3835578e+02 - -1.6877399e+02 -3.4381988e+03 2.2982075e+02 - -8.4329976e+01 -3.4427929e+03 2.2473885e+02 - 0.0000000e+00 -3.4443200e+03 2.2305143e+02 - 8.4329976e+01 -3.4427929e+03 2.2473885e+02 - 1.6877399e+02 -3.4381988e+03 2.2982075e+02 - 2.5344694e+02 -3.4304987e+03 2.3835578e+02 - 3.3846524e+02 -3.4196283e+03 2.5044029e+02 - 4.2394696e+02 -3.4054983e+03 2.6620602e+02 - 5.1001106e+02 -3.3879956e+03 2.8581598e+02 - 5.9677551e+02 -3.3669863e+03 3.0945800e+02 - 6.8435347e+02 -3.3423195e+03 3.3733480e+02 - 7.7284727e+02 -3.3138349e+03 3.6964932e+02 - 8.6233912e+02 -3.2813733e+03 4.0658421e+02 - 9.5287823e+02 -3.2447924e+03 4.4827412e+02 - 1.0444637e+03 -3.2039888e+03 4.9477043e+02 - 1.1370236e+03 -3.1589250e+03 5.4599911e+02 - 1.2303909e+03 -3.1096629e+03 6.0171464e+02 - 1.3242794e+03 -3.0563993e+03 6.6145588e+02 - 1.4182638e+03 -2.9994997e+03 7.2451289e+02 - 1.5117682e+03 -2.9395221e+03 7.8991569e+02 - 1.6040712e+03 -2.8772236e+03 8.5645587e+02 - 1.6943291e+03 -2.8135428e+03 9.2274704e+02 - 1.7816194e+03 -2.7495558e+03 9.8732158e+02 - 1.8649985e+03 -2.6864086e+03 1.0487509e+03 - 1.9435666e+03 -2.6252393e+03 1.1057678e+03 - 2.0165253e+03 -2.5671009e+03 1.1573681e+03 - 2.0832228e+03 -2.5129010e+03 1.2028736e+03 - 2.1431777e+03 -2.4633642e+03 1.2419505e+03 - 2.1960848e+03 -2.4190196e+03 1.2745871e+03 - 2.2418058e+03 -2.3802089e+03 1.3010424e+03 - 2.2803512e+03 -2.3471072e+03 1.3217824e+03 - 2.3118588e+03 -2.3197485e+03 1.3374130e+03 - 2.3365750e+03 -2.2980516e+03 1.3486214e+03 - 2.3548375e+03 -2.2818399e+03 1.3561275e+03 - 2.3670643e+03 -2.2708566e+03 1.3606466e+03 - 2.3737445e+03 -2.2647737e+03 1.3628629e+03 - 2.3754322e+03 -2.2631965e+03 1.3634102e+03 - 2.3727411e+03 -2.2656660e+03 1.3628587e+03 - 2.3663384e+03 -2.2716597e+03 1.3617051e+03 - 2.3569378e+03 -2.2805936e+03 1.3603653e+03 - 2.3452898e+03 -2.2918255e+03 1.3591690e+03 - 2.3321699e+03 -2.3046617e+03 1.3583547e+03 - 2.3183657e+03 -2.3183657e+03 1.3580671e+03 - 2.3046617e+03 -2.3321699e+03 1.3583547e+03 - 2.2918255e+03 -2.3452898e+03 1.3591690e+03 - 2.2805936e+03 -2.3569378e+03 1.3603653e+03 - 2.2716597e+03 -2.3663384e+03 1.3617051e+03 - 2.2656660e+03 -2.3727411e+03 1.3628587e+03 - 2.2631965e+03 -2.3754322e+03 1.3634102e+03 - 2.2647737e+03 -2.3737445e+03 1.3628629e+03 - 2.2708566e+03 -2.3670643e+03 1.3606466e+03 - 2.2818399e+03 -2.3548375e+03 1.3561275e+03 - 2.2980516e+03 -2.3365750e+03 1.3486214e+03 - 2.3197485e+03 -2.3118588e+03 1.3374130e+03 - 2.3471072e+03 -2.2803512e+03 1.3217824e+03 - 2.3802089e+03 -2.2418058e+03 1.3010424e+03 - 2.4190196e+03 -2.1960848e+03 1.2745871e+03 - 2.4633642e+03 -2.1431777e+03 1.2419505e+03 - 2.5129010e+03 -2.0832228e+03 1.2028736e+03 - 2.5671009e+03 -2.0165253e+03 1.1573681e+03 - 2.6252393e+03 -1.9435666e+03 1.1057678e+03 - 2.6864086e+03 -1.8649985e+03 1.0487509e+03 - 2.7495558e+03 -1.7816194e+03 9.8732158e+02 - 2.8135428e+03 -1.6943291e+03 9.2274704e+02 - 2.8772236e+03 -1.6040712e+03 8.5645587e+02 - 2.9395221e+03 -1.5117682e+03 7.8991569e+02 - 2.9994997e+03 -1.4182638e+03 7.2451289e+02 - 3.0563993e+03 -1.3242794e+03 6.6145588e+02 - 3.1096629e+03 -1.2303909e+03 6.0171464e+02 - 3.1589250e+03 -1.1370236e+03 5.4599911e+02 - 3.2039888e+03 -1.0444637e+03 4.9477043e+02 - 3.2447924e+03 -9.5287823e+02 4.4827412e+02 - 3.2813733e+03 -8.6233912e+02 4.0658421e+02 - 3.3138349e+03 -7.7284727e+02 3.6964932e+02 - 3.3423195e+03 -6.8435347e+02 3.3733480e+02 - 3.3669863e+03 -5.9677551e+02 3.0945800e+02 - 3.3879956e+03 -5.1001106e+02 2.8581598e+02 - 3.4054983e+03 -4.2394696e+02 2.6620602e+02 - 3.4196283e+03 -3.3846524e+02 2.5044029e+02 - 3.4304987e+03 -2.5344694e+02 2.3835578e+02 - 3.4381988e+03 -1.6877399e+02 2.2982075e+02 - 3.4427929e+03 -8.4329976e+01 2.2473885e+02 - 3.4443200e+03 0.0000000e+00 2.2305143e+02 - 3.4668158e+03 0.0000000e+00 1.6722127e+02 - 3.4654813e+03 8.1228864e+01 1.6859294e+02 - 3.4614670e+03 1.6254718e+02 1.7272563e+02 - 3.4547404e+03 2.4404600e+02 1.7967237e+02 - 3.4452470e+03 3.2581943e+02 1.8952141e+02 - 3.4329099e+03 4.0796595e+02 2.0239588e+02 - 3.4176295e+03 4.9058921e+02 2.1845277e+02 - 3.3992836e+03 5.7379830e+02 2.3788088e+02 - 3.3777278e+03 6.5770696e+02 2.6089690e+02 - 3.3527986e+03 7.4243134e+02 2.8773868e+02 - 3.3243166e+03 8.2808556e+02 3.1865447e+02 - 3.2920955e+03 9.1477443e+02 3.5388636e+02 - 3.2559535e+03 1.0025821e+03 3.9364655e+02 - 3.2157327e+03 1.0915562e+03 4.3808474e+02 - 3.1713243e+03 1.1816857e+03 4.8724617e+02 - 3.1227031e+03 1.2728749e+03 5.4102145e+02 - 3.0699674e+03 1.3649120e+03 5.9909242e+02 - 3.0133820e+03 1.4574387e+03 6.6088227e+02 - 2.9534175e+03 1.5499258e+03 7.2552252e+02 - 2.8907742e+03 1.6416625e+03 7.9185165e+02 - 2.8263814e+03 1.7317677e+03 8.5845850e+02 - 2.7613635e+03 1.8192287e+03 9.2377501e+02 - 2.6969719e+03 1.9029653e+03 9.8620995e+02 - 2.6344933e+03 1.9819096e+03 1.0443005e+03 - 2.5751499e+03 2.0550887e+03 1.0968509e+03 - 2.5200127e+03 2.1216927e+03 1.1430297e+03 - 2.4699416e+03 2.1811189e+03 1.1824099e+03 - 2.4255593e+03 2.2329875e+03 1.2149527e+03 - 2.3872544e+03 2.2771347e+03 1.2409494e+03 - 2.3552050e+03 2.3135904e+03 1.2609407e+03 - 2.3294114e+03 2.3425493e+03 1.2756326e+03 - 2.3097287e+03 2.3643427e+03 1.2858199e+03 - 2.2958951e+03 2.3794144e+03 1.2923250e+03 - 2.2875521e+03 2.3883021e+03 1.2959521e+03 - 2.2842575e+03 2.3916235e+03 1.2974550e+03 - 2.2854933e+03 2.3900659e+03 1.2975149e+03 - 2.2906706e+03 2.3843766e+03 1.2967258e+03 - 2.2991330e+03 2.3753533e+03 1.2955848e+03 - 2.3101616e+03 2.3638334e+03 1.2944850e+03 - 2.3229817e+03 2.3506812e+03 1.2937104e+03 - 2.3367730e+03 2.3367730e+03 1.2934331e+03 - 2.3506812e+03 2.3229817e+03 1.2937104e+03 - 2.3638334e+03 2.3101616e+03 1.2944850e+03 - 2.3753533e+03 2.2991330e+03 1.2955848e+03 - 2.3843766e+03 2.2906706e+03 1.2967258e+03 - 2.3900659e+03 2.2854933e+03 1.2975149e+03 - 2.3916235e+03 2.2842575e+03 1.2974550e+03 - 2.3883021e+03 2.2875521e+03 1.2959521e+03 - 2.3794144e+03 2.2958951e+03 1.2923250e+03 - 2.3643427e+03 2.3097287e+03 1.2858199e+03 - 2.3425493e+03 2.3294114e+03 1.2756326e+03 - 2.3135904e+03 2.3552050e+03 1.2609407e+03 - 2.2771347e+03 2.3872544e+03 1.2409494e+03 - 2.2329875e+03 2.4255593e+03 1.2149527e+03 - 2.1811189e+03 2.4699416e+03 1.1824099e+03 - 2.1216927e+03 2.5200127e+03 1.1430297e+03 - 2.0550887e+03 2.5751499e+03 1.0968509e+03 - 1.9819096e+03 2.6344933e+03 1.0443005e+03 - 1.9029653e+03 2.6969719e+03 9.8620995e+02 - 1.8192287e+03 2.7613635e+03 9.2377501e+02 - 1.7317677e+03 2.8263814e+03 8.5845850e+02 - 1.6416625e+03 2.8907742e+03 7.9185165e+02 - 1.5499258e+03 2.9534175e+03 7.2552252e+02 - 1.4574387e+03 3.0133820e+03 6.6088227e+02 - 1.3649120e+03 3.0699674e+03 5.9909242e+02 - 1.2728749e+03 3.1227031e+03 5.4102145e+02 - 1.1816857e+03 3.1713243e+03 4.8724617e+02 - 1.0915562e+03 3.2157327e+03 4.3808474e+02 - 1.0025821e+03 3.2559535e+03 3.9364655e+02 - 9.1477443e+02 3.2920955e+03 3.5388636e+02 - 8.2808556e+02 3.3243166e+03 3.1865447e+02 - 7.4243134e+02 3.3527986e+03 2.8773868e+02 - 6.5770696e+02 3.3777278e+03 2.6089690e+02 - 5.7379830e+02 3.3992836e+03 2.3788088e+02 - 4.9058921e+02 3.4176295e+03 2.1845277e+02 - 4.0796595e+02 3.4329099e+03 2.0239588e+02 - 3.2581943e+02 3.4452470e+03 1.8952141e+02 - 2.4404600e+02 3.4547404e+03 1.7967237e+02 - 1.6254718e+02 3.4614670e+03 1.7272563e+02 - 8.1228864e+01 3.4654813e+03 1.6859294e+02 - 4.8134273e-09 3.4668158e+03 1.6722127e+02 - -8.1228864e+01 3.4654813e+03 1.6859294e+02 - -1.6254718e+02 3.4614670e+03 1.7272563e+02 - -2.4404600e+02 3.4547404e+03 1.7967237e+02 - -3.2581943e+02 3.4452470e+03 1.8952141e+02 - -4.0796595e+02 3.4329099e+03 2.0239588e+02 - -4.9058921e+02 3.4176295e+03 2.1845277e+02 - -5.7379830e+02 3.3992836e+03 2.3788088e+02 - -6.5770696e+02 3.3777278e+03 2.6089690e+02 - -7.4243134e+02 3.3527986e+03 2.8773868e+02 - -8.2808556e+02 3.3243166e+03 3.1865447e+02 - -9.1477443e+02 3.2920955e+03 3.5388636e+02 - -1.0025821e+03 3.2559535e+03 3.9364655e+02 - -1.0915562e+03 3.2157327e+03 4.3808474e+02 - -1.1816857e+03 3.1713243e+03 4.8724617e+02 - -1.2728749e+03 3.1227031e+03 5.4102145e+02 - -1.3649120e+03 3.0699674e+03 5.9909242e+02 - -1.4574387e+03 3.0133820e+03 6.6088227e+02 - -1.5499258e+03 2.9534175e+03 7.2552252e+02 - -1.6416625e+03 2.8907742e+03 7.9185165e+02 - -1.7317677e+03 2.8263814e+03 8.5845850e+02 - -1.8192287e+03 2.7613635e+03 9.2377501e+02 - -1.9029653e+03 2.6969719e+03 9.8620995e+02 - -1.9819096e+03 2.6344933e+03 1.0443005e+03 - -2.0550887e+03 2.5751499e+03 1.0968509e+03 - -2.1216927e+03 2.5200127e+03 1.1430297e+03 - -2.1811189e+03 2.4699416e+03 1.1824099e+03 - -2.2329875e+03 2.4255593e+03 1.2149527e+03 - -2.2771347e+03 2.3872544e+03 1.2409494e+03 - -2.3135904e+03 2.3552050e+03 1.2609407e+03 - -2.3425493e+03 2.3294114e+03 1.2756326e+03 - -2.3643427e+03 2.3097287e+03 1.2858199e+03 - -2.3794144e+03 2.2958951e+03 1.2923250e+03 - -2.3883021e+03 2.2875521e+03 1.2959521e+03 - -2.3916235e+03 2.2842575e+03 1.2974550e+03 - -2.3900659e+03 2.2854933e+03 1.2975149e+03 - -2.3843766e+03 2.2906706e+03 1.2967258e+03 - -2.3753533e+03 2.2991330e+03 1.2955848e+03 - -2.3638334e+03 2.3101616e+03 1.2944850e+03 - -2.3506812e+03 2.3229817e+03 1.2937104e+03 - -2.3367730e+03 2.3367730e+03 1.2934331e+03 - -2.3229817e+03 2.3506812e+03 1.2937104e+03 - -2.3101616e+03 2.3638334e+03 1.2944850e+03 - -2.2991330e+03 2.3753533e+03 1.2955848e+03 - -2.2906706e+03 2.3843766e+03 1.2967258e+03 - -2.2854933e+03 2.3900659e+03 1.2975149e+03 - -2.2842575e+03 2.3916235e+03 1.2974550e+03 - -2.2875521e+03 2.3883021e+03 1.2959521e+03 - -2.2958951e+03 2.3794144e+03 1.2923250e+03 - -2.3097287e+03 2.3643427e+03 1.2858199e+03 - -2.3294114e+03 2.3425493e+03 1.2756326e+03 - -2.3552050e+03 2.3135904e+03 1.2609407e+03 - -2.3872544e+03 2.2771347e+03 1.2409494e+03 - -2.4255593e+03 2.2329875e+03 1.2149527e+03 - -2.4699416e+03 2.1811189e+03 1.1824099e+03 - -2.5200127e+03 2.1216927e+03 1.1430297e+03 - -2.5751499e+03 2.0550887e+03 1.0968509e+03 - -2.6344933e+03 1.9819096e+03 1.0443005e+03 - -2.6969719e+03 1.9029653e+03 9.8620995e+02 - -2.7613635e+03 1.8192287e+03 9.2377501e+02 - -2.8263814e+03 1.7317677e+03 8.5845850e+02 - -2.8907742e+03 1.6416625e+03 7.9185165e+02 - -2.9534175e+03 1.5499258e+03 7.2552252e+02 - -3.0133820e+03 1.4574387e+03 6.6088227e+02 - -3.0699674e+03 1.3649120e+03 5.9909242e+02 - -3.1227031e+03 1.2728749e+03 5.4102145e+02 - -3.1713243e+03 1.1816857e+03 4.8724617e+02 - -3.2157327e+03 1.0915562e+03 4.3808474e+02 - -3.2559535e+03 1.0025821e+03 3.9364655e+02 - -3.2920955e+03 9.1477443e+02 3.5388636e+02 - -3.3243166e+03 8.2808556e+02 3.1865447e+02 - -3.3527986e+03 7.4243134e+02 2.8773868e+02 - -3.3777278e+03 6.5770696e+02 2.6089690e+02 - -3.3992836e+03 5.7379830e+02 2.3788088e+02 - -3.4176295e+03 4.9058921e+02 2.1845277e+02 - -3.4329099e+03 4.0796595e+02 2.0239588e+02 - -3.4452470e+03 3.2581943e+02 1.8952141e+02 - -3.4547404e+03 2.4404600e+02 1.7967237e+02 - -3.4614670e+03 1.6254718e+02 1.7272563e+02 - -3.4654813e+03 8.1228864e+01 1.6859294e+02 - -3.4668158e+03 2.4067136e-09 1.6722127e+02 - -3.4654813e+03 -8.1228864e+01 1.6859294e+02 - -3.4614670e+03 -1.6254718e+02 1.7272563e+02 - -3.4547404e+03 -2.4404600e+02 1.7967237e+02 - -3.4452470e+03 -3.2581943e+02 1.8952141e+02 - -3.4329099e+03 -4.0796595e+02 2.0239588e+02 - -3.4176295e+03 -4.9058921e+02 2.1845277e+02 - -3.3992836e+03 -5.7379830e+02 2.3788088e+02 - -3.3777278e+03 -6.5770696e+02 2.6089690e+02 - -3.3527986e+03 -7.4243134e+02 2.8773868e+02 - -3.3243166e+03 -8.2808556e+02 3.1865447e+02 - -3.2920955e+03 -9.1477443e+02 3.5388636e+02 - -3.2559535e+03 -1.0025821e+03 3.9364655e+02 - -3.2157327e+03 -1.0915562e+03 4.3808474e+02 - -3.1713243e+03 -1.1816857e+03 4.8724617e+02 - -3.1227031e+03 -1.2728749e+03 5.4102145e+02 - -3.0699674e+03 -1.3649120e+03 5.9909242e+02 - -3.0133820e+03 -1.4574387e+03 6.6088227e+02 - -2.9534175e+03 -1.5499258e+03 7.2552252e+02 - -2.8907742e+03 -1.6416625e+03 7.9185165e+02 - -2.8263814e+03 -1.7317677e+03 8.5845850e+02 - -2.7613635e+03 -1.8192287e+03 9.2377501e+02 - -2.6969719e+03 -1.9029653e+03 9.8620995e+02 - -2.6344933e+03 -1.9819096e+03 1.0443005e+03 - -2.5751499e+03 -2.0550887e+03 1.0968509e+03 - -2.5200127e+03 -2.1216927e+03 1.1430297e+03 - -2.4699416e+03 -2.1811189e+03 1.1824099e+03 - -2.4255593e+03 -2.2329875e+03 1.2149527e+03 - -2.3872544e+03 -2.2771347e+03 1.2409494e+03 - -2.3552050e+03 -2.3135904e+03 1.2609407e+03 - -2.3294114e+03 -2.3425493e+03 1.2756326e+03 - -2.3097287e+03 -2.3643427e+03 1.2858199e+03 - -2.2958951e+03 -2.3794144e+03 1.2923250e+03 - -2.2875521e+03 -2.3883021e+03 1.2959521e+03 - -2.2842575e+03 -2.3916235e+03 1.2974550e+03 - -2.2854933e+03 -2.3900659e+03 1.2975149e+03 - -2.2906706e+03 -2.3843766e+03 1.2967258e+03 - -2.2991330e+03 -2.3753533e+03 1.2955848e+03 - -2.3101616e+03 -2.3638334e+03 1.2944850e+03 - -2.3229817e+03 -2.3506812e+03 1.2937104e+03 - -2.3367730e+03 -2.3367730e+03 1.2934331e+03 - -2.3506812e+03 -2.3229817e+03 1.2937104e+03 - -2.3638334e+03 -2.3101616e+03 1.2944850e+03 - -2.3753533e+03 -2.2991330e+03 1.2955848e+03 - -2.3843766e+03 -2.2906706e+03 1.2967258e+03 - -2.3900659e+03 -2.2854933e+03 1.2975149e+03 - -2.3916235e+03 -2.2842575e+03 1.2974550e+03 - -2.3883021e+03 -2.2875521e+03 1.2959521e+03 - -2.3794144e+03 -2.2958951e+03 1.2923250e+03 - -2.3643427e+03 -2.3097287e+03 1.2858199e+03 - -2.3425493e+03 -2.3294114e+03 1.2756326e+03 - -2.3135904e+03 -2.3552050e+03 1.2609407e+03 - -2.2771347e+03 -2.3872544e+03 1.2409494e+03 - -2.2329875e+03 -2.4255593e+03 1.2149527e+03 - -2.1811189e+03 -2.4699416e+03 1.1824099e+03 - -2.1216927e+03 -2.5200127e+03 1.1430297e+03 - -2.0550887e+03 -2.5751499e+03 1.0968509e+03 - -1.9819096e+03 -2.6344933e+03 1.0443005e+03 - -1.9029653e+03 -2.6969719e+03 9.8620995e+02 - -1.8192287e+03 -2.7613635e+03 9.2377501e+02 - -1.7317677e+03 -2.8263814e+03 8.5845850e+02 - -1.6416625e+03 -2.8907742e+03 7.9185165e+02 - -1.5499258e+03 -2.9534175e+03 7.2552252e+02 - -1.4574387e+03 -3.0133820e+03 6.6088227e+02 - -1.3649120e+03 -3.0699674e+03 5.9909242e+02 - -1.2728749e+03 -3.1227031e+03 5.4102145e+02 - -1.1816857e+03 -3.1713243e+03 4.8724617e+02 - -1.0915562e+03 -3.2157327e+03 4.3808474e+02 - -1.0025821e+03 -3.2559535e+03 3.9364655e+02 - -9.1477443e+02 -3.2920955e+03 3.5388636e+02 - -8.2808556e+02 -3.3243166e+03 3.1865447e+02 - -7.4243134e+02 -3.3527986e+03 2.8773868e+02 - -6.5770696e+02 -3.3777278e+03 2.6089690e+02 - -5.7379830e+02 -3.3992836e+03 2.3788088e+02 - -4.9058921e+02 -3.4176295e+03 2.1845277e+02 - -4.0796595e+02 -3.4329099e+03 2.0239588e+02 - -3.2581943e+02 -3.4452470e+03 1.8952141e+02 - -2.4404600e+02 -3.4547404e+03 1.7967237e+02 - -1.6254718e+02 -3.4614670e+03 1.7272563e+02 - -8.1228864e+01 -3.4654813e+03 1.6859294e+02 - -2.4067136e-09 -3.4668158e+03 1.6722127e+02 - 8.1228864e+01 -3.4654813e+03 1.6859294e+02 - 1.6254718e+02 -3.4614670e+03 1.7272563e+02 - 2.4404600e+02 -3.4547404e+03 1.7967237e+02 - 3.2581943e+02 -3.4452470e+03 1.8952141e+02 - 4.0796595e+02 -3.4329099e+03 2.0239588e+02 - 4.9058921e+02 -3.4176295e+03 2.1845277e+02 - 5.7379830e+02 -3.3992836e+03 2.3788088e+02 - 6.5770696e+02 -3.3777278e+03 2.6089690e+02 - 7.4243134e+02 -3.3527986e+03 2.8773868e+02 - 8.2808556e+02 -3.3243166e+03 3.1865447e+02 - 9.1477443e+02 -3.2920955e+03 3.5388636e+02 - 1.0025821e+03 -3.2559535e+03 3.9364655e+02 - 1.0915562e+03 -3.2157327e+03 4.3808474e+02 - 1.1816857e+03 -3.1713243e+03 4.8724617e+02 - 1.2728749e+03 -3.1227031e+03 5.4102145e+02 - 1.3649120e+03 -3.0699674e+03 5.9909242e+02 - 1.4574387e+03 -3.0133820e+03 6.6088227e+02 - 1.5499258e+03 -2.9534175e+03 7.2552252e+02 - 1.6416625e+03 -2.8907742e+03 7.9185165e+02 - 1.7317677e+03 -2.8263814e+03 8.5845850e+02 - 1.8192287e+03 -2.7613635e+03 9.2377501e+02 - 1.9029653e+03 -2.6969719e+03 9.8620995e+02 - 1.9819096e+03 -2.6344933e+03 1.0443005e+03 - 2.0550887e+03 -2.5751499e+03 1.0968509e+03 - 2.1216927e+03 -2.5200127e+03 1.1430297e+03 - 2.1811189e+03 -2.4699416e+03 1.1824099e+03 - 2.2329875e+03 -2.4255593e+03 1.2149527e+03 - 2.2771347e+03 -2.3872544e+03 1.2409494e+03 - 2.3135904e+03 -2.3552050e+03 1.2609407e+03 - 2.3425493e+03 -2.3294114e+03 1.2756326e+03 - 2.3643427e+03 -2.3097287e+03 1.2858199e+03 - 2.3794144e+03 -2.2958951e+03 1.2923250e+03 - 2.3883021e+03 -2.2875521e+03 1.2959521e+03 - 2.3916235e+03 -2.2842575e+03 1.2974550e+03 - 2.3900659e+03 -2.2854933e+03 1.2975149e+03 - 2.3843766e+03 -2.2906706e+03 1.2967258e+03 - 2.3753533e+03 -2.2991330e+03 1.2955848e+03 - 2.3638334e+03 -2.3101616e+03 1.2944850e+03 - 2.3506812e+03 -2.3229817e+03 1.2937104e+03 - 2.3367730e+03 -2.3367730e+03 1.2934331e+03 - 2.3229817e+03 -2.3506812e+03 1.2937104e+03 - 2.3101616e+03 -2.3638334e+03 1.2944850e+03 - 2.2991330e+03 -2.3753533e+03 1.2955848e+03 - 2.2906706e+03 -2.3843766e+03 1.2967258e+03 - 2.2854933e+03 -2.3900659e+03 1.2975149e+03 - 2.2842575e+03 -2.3916235e+03 1.2974550e+03 - 2.2875521e+03 -2.3883021e+03 1.2959521e+03 - 2.2958951e+03 -2.3794144e+03 1.2923250e+03 - 2.3097287e+03 -2.3643427e+03 1.2858199e+03 - 2.3294114e+03 -2.3425493e+03 1.2756326e+03 - 2.3552050e+03 -2.3135904e+03 1.2609407e+03 - 2.3872544e+03 -2.2771347e+03 1.2409494e+03 - 2.4255593e+03 -2.2329875e+03 1.2149527e+03 - 2.4699416e+03 -2.1811189e+03 1.1824099e+03 - 2.5200127e+03 -2.1216927e+03 1.1430297e+03 - 2.5751499e+03 -2.0550887e+03 1.0968509e+03 - 2.6344933e+03 -1.9819096e+03 1.0443005e+03 - 2.6969719e+03 -1.9029653e+03 9.8620995e+02 - 2.7613635e+03 -1.8192287e+03 9.2377501e+02 - 2.8263814e+03 -1.7317677e+03 8.5845850e+02 - 2.8907742e+03 -1.6416625e+03 7.9185165e+02 - 2.9534175e+03 -1.5499258e+03 7.2552252e+02 - 3.0133820e+03 -1.4574387e+03 6.6088227e+02 - 3.0699674e+03 -1.3649120e+03 5.9909242e+02 - 3.1227031e+03 -1.2728749e+03 5.4102145e+02 - 3.1713243e+03 -1.1816857e+03 4.8724617e+02 - 3.2157327e+03 -1.0915562e+03 4.3808474e+02 - 3.2559535e+03 -1.0025821e+03 3.9364655e+02 - 3.2920955e+03 -9.1477443e+02 3.5388636e+02 - 3.3243166e+03 -8.2808556e+02 3.1865447e+02 - 3.3527986e+03 -7.4243134e+02 2.8773868e+02 - 3.3777278e+03 -6.5770696e+02 2.6089690e+02 - 3.3992836e+03 -5.7379830e+02 2.3788088e+02 - 3.4176295e+03 -4.9058921e+02 2.1845277e+02 - 3.4329099e+03 -4.0796595e+02 2.0239588e+02 - 3.4452470e+03 -3.2581943e+02 1.8952141e+02 - 3.4547404e+03 -2.4404600e+02 1.7967237e+02 - 3.4614670e+03 -1.6254718e+02 1.7272563e+02 - 3.4654813e+03 -8.1228864e+01 1.6859294e+02 - 3.4668158e+03 0.0000000e+00 1.6722127e+02 - 3.4862352e+03 2.4067136e-09 1.1615866e+02 - 3.4850490e+03 7.8768618e+01 1.1727740e+02 - 3.4814819e+03 1.5760358e+02 1.2064877e+02 - 3.4755077e+03 2.3657295e+02 1.2631845e+02 - 3.4670824e+03 3.1574825e+02 1.3436301e+02 - 3.4561435e+03 3.9520610e+02 1.4489052e+02 - 3.4426083e+03 4.7502973e+02 1.5804118e+02 - 3.4263736e+03 5.5531031e+02 1.7398762e+02 - 3.4073143e+03 6.3614784e+02 1.9293453e+02 - 3.3852829e+03 7.1765128e+02 2.1511698e+02 - 3.3601099e+03 7.9993764e+02 2.4079644e+02 - 3.3316061e+03 8.8312919e+02 2.7025326e+02 - 3.2995674e+03 9.6734806e+02 3.0377404e+02 - 3.2637844e+03 1.0527070e+03 3.4163174e+02 - 3.2240574e+03 1.1392950e+03 3.8405643e+02 - 3.1802201e+03 1.2271565e+03 4.3119485e+02 - 3.1321722e+03 1.3162630e+03 4.8305816e+02 - 3.0799232e+03 1.4064781e+03 5.3946024e+02 - 3.0236427e+03 1.4975171e+03 5.9995311e+02 - 2.9637130e+03 1.5889094e+03 6.6377229e+02 - 2.9007721e+03 1.6799701e+03 7.2981025e+02 - 2.8357334e+03 1.7697960e+03 7.9663790e+02 - 2.7697657e+03 1.8572935e+03 8.6258809e+02 - 2.7042293e+03 1.9412451e+03 9.2589972e+02 - 2.6405710e+03 2.0204054e+03 9.8490040e+02 - 2.5801992e+03 2.0936106e+03 1.0381883e+03 - 2.5243644e+03 2.1598772e+03 1.0847711e+03 - 2.4740722e+03 2.2184713e+03 1.1241332e+03 - 2.4300388e+03 2.2689395e+03 1.1562263e+03 - 2.3926889e+03 2.3111044e+03 1.1814004e+03 - 2.3621838e+03 2.3450363e+03 1.2003007e+03 - 2.3384639e+03 2.3710132e+03 1.2137598e+03 - 2.3212921e+03 2.3894810e+03 1.2227007e+03 - 2.3102912e+03 2.4010190e+03 1.2280601e+03 - 2.3049716e+03 2.4063129e+03 1.2307335e+03 - 2.3047492e+03 2.4061340e+03 1.2315380e+03 - 2.3089568e+03 2.4013240e+03 1.2311888e+03 - 2.3168526e+03 2.3927805e+03 1.2302842e+03 - 2.3276265e+03 2.3814441e+03 1.2292965e+03 - 2.3404086e+03 2.3682835e+03 1.2285666e+03 - 2.3542794e+03 2.3542794e+03 1.2283004e+03 - 2.3682835e+03 2.3404086e+03 1.2285666e+03 - 2.3814441e+03 2.3276265e+03 1.2292965e+03 - 2.3927805e+03 2.3168526e+03 1.2302842e+03 - 2.4013240e+03 2.3089568e+03 1.2311888e+03 - 2.4061340e+03 2.3047492e+03 1.2315380e+03 - 2.4063129e+03 2.3049716e+03 1.2307335e+03 - 2.4010190e+03 2.3102912e+03 1.2280601e+03 - 2.3894810e+03 2.3212921e+03 1.2227007e+03 - 2.3710132e+03 2.3384639e+03 1.2137598e+03 - 2.3450363e+03 2.3621838e+03 1.2003007e+03 - 2.3111044e+03 2.3926889e+03 1.1814004e+03 - 2.2689395e+03 2.4300388e+03 1.1562263e+03 - 2.2184713e+03 2.4740722e+03 1.1241332e+03 - 2.1598772e+03 2.5243644e+03 1.0847711e+03 - 2.0936106e+03 2.5801992e+03 1.0381883e+03 - 2.0204054e+03 2.6405710e+03 9.8490040e+02 - 1.9412451e+03 2.7042293e+03 9.2589972e+02 - 1.8572935e+03 2.7697657e+03 8.6258809e+02 - 1.7697960e+03 2.8357334e+03 7.9663790e+02 - 1.6799701e+03 2.9007721e+03 7.2981025e+02 - 1.5889094e+03 2.9637130e+03 6.6377229e+02 - 1.4975171e+03 3.0236427e+03 5.9995311e+02 - 1.4064781e+03 3.0799232e+03 5.3946024e+02 - 1.3162630e+03 3.1321722e+03 4.8305816e+02 - 1.2271565e+03 3.1802201e+03 4.3119485e+02 - 1.1392950e+03 3.2240574e+03 3.8405643e+02 - 1.0527070e+03 3.2637844e+03 3.4163174e+02 - 9.6734806e+02 3.2995674e+03 3.0377404e+02 - 8.8312919e+02 3.3316061e+03 2.7025326e+02 - 7.9993764e+02 3.3601099e+03 2.4079644e+02 - 7.1765128e+02 3.3852829e+03 2.1511698e+02 - 6.3614784e+02 3.4073143e+03 1.9293453e+02 - 5.5531031e+02 3.4263736e+03 1.7398762e+02 - 4.7502973e+02 3.4426083e+03 1.5804118e+02 - 3.9520610e+02 3.4561435e+03 1.4489052e+02 - 3.1574825e+02 3.4670824e+03 1.3436301e+02 - 2.3657295e+02 3.4755077e+03 1.2631845e+02 - 1.5760358e+02 3.4814819e+03 1.2064877e+02 - 7.8768618e+01 3.4850490e+03 1.1727740e+02 - 2.4067136e-09 3.4862352e+03 1.1615866e+02 - -7.8768618e+01 3.4850490e+03 1.1727740e+02 - -1.5760358e+02 3.4814819e+03 1.2064877e+02 - -2.3657295e+02 3.4755077e+03 1.2631845e+02 - -3.1574825e+02 3.4670824e+03 1.3436301e+02 - -3.9520610e+02 3.4561435e+03 1.4489052e+02 - -4.7502973e+02 3.4426083e+03 1.5804118e+02 - -5.5531031e+02 3.4263736e+03 1.7398762e+02 - -6.3614784e+02 3.4073143e+03 1.9293453e+02 - -7.1765128e+02 3.3852829e+03 2.1511698e+02 - -7.9993764e+02 3.3601099e+03 2.4079644e+02 - -8.8312919e+02 3.3316061e+03 2.7025326e+02 - -9.6734806e+02 3.2995674e+03 3.0377404e+02 - -1.0527070e+03 3.2637844e+03 3.4163174e+02 - -1.1392950e+03 3.2240574e+03 3.8405643e+02 - -1.2271565e+03 3.1802201e+03 4.3119485e+02 - -1.3162630e+03 3.1321722e+03 4.8305816e+02 - -1.4064781e+03 3.0799232e+03 5.3946024e+02 - -1.4975171e+03 3.0236427e+03 5.9995311e+02 - -1.5889094e+03 2.9637130e+03 6.6377229e+02 - -1.6799701e+03 2.9007721e+03 7.2981025e+02 - -1.7697960e+03 2.8357334e+03 7.9663790e+02 - -1.8572935e+03 2.7697657e+03 8.6258809e+02 - -1.9412451e+03 2.7042293e+03 9.2589972e+02 - -2.0204054e+03 2.6405710e+03 9.8490040e+02 - -2.0936106e+03 2.5801992e+03 1.0381883e+03 - -2.1598772e+03 2.5243644e+03 1.0847711e+03 - -2.2184713e+03 2.4740722e+03 1.1241332e+03 - -2.2689395e+03 2.4300388e+03 1.1562263e+03 - -2.3111044e+03 2.3926889e+03 1.1814004e+03 - -2.3450363e+03 2.3621838e+03 1.2003007e+03 - -2.3710132e+03 2.3384639e+03 1.2137598e+03 - -2.3894810e+03 2.3212921e+03 1.2227007e+03 - -2.4010190e+03 2.3102912e+03 1.2280601e+03 - -2.4063129e+03 2.3049716e+03 1.2307335e+03 - -2.4061340e+03 2.3047492e+03 1.2315380e+03 - -2.4013240e+03 2.3089568e+03 1.2311888e+03 - -2.3927805e+03 2.3168526e+03 1.2302842e+03 - -2.3814441e+03 2.3276265e+03 1.2292965e+03 - -2.3682835e+03 2.3404086e+03 1.2285666e+03 - -2.3542794e+03 2.3542794e+03 1.2283004e+03 - -2.3404086e+03 2.3682835e+03 1.2285666e+03 - -2.3276265e+03 2.3814441e+03 1.2292965e+03 - -2.3168526e+03 2.3927805e+03 1.2302842e+03 - -2.3089568e+03 2.4013240e+03 1.2311888e+03 - -2.3047492e+03 2.4061340e+03 1.2315380e+03 - -2.3049716e+03 2.4063129e+03 1.2307335e+03 - -2.3102912e+03 2.4010190e+03 1.2280601e+03 - -2.3212921e+03 2.3894810e+03 1.2227007e+03 - -2.3384639e+03 2.3710132e+03 1.2137598e+03 - -2.3621838e+03 2.3450363e+03 1.2003007e+03 - -2.3926889e+03 2.3111044e+03 1.1814004e+03 - -2.4300388e+03 2.2689395e+03 1.1562263e+03 - -2.4740722e+03 2.2184713e+03 1.1241332e+03 - -2.5243644e+03 2.1598772e+03 1.0847711e+03 - -2.5801992e+03 2.0936106e+03 1.0381883e+03 - -2.6405710e+03 2.0204054e+03 9.8490040e+02 - -2.7042293e+03 1.9412451e+03 9.2589972e+02 - -2.7697657e+03 1.8572935e+03 8.6258809e+02 - -2.8357334e+03 1.7697960e+03 7.9663790e+02 - -2.9007721e+03 1.6799701e+03 7.2981025e+02 - -2.9637130e+03 1.5889094e+03 6.6377229e+02 - -3.0236427e+03 1.4975171e+03 5.9995311e+02 - -3.0799232e+03 1.4064781e+03 5.3946024e+02 - -3.1321722e+03 1.3162630e+03 4.8305816e+02 - -3.1802201e+03 1.2271565e+03 4.3119485e+02 - -3.2240574e+03 1.1392950e+03 3.8405643e+02 - -3.2637844e+03 1.0527070e+03 3.4163174e+02 - -3.2995674e+03 9.6734806e+02 3.0377404e+02 - -3.3316061e+03 8.8312919e+02 2.7025326e+02 - -3.3601099e+03 7.9993764e+02 2.4079644e+02 - -3.3852829e+03 7.1765128e+02 2.1511698e+02 - -3.4073143e+03 6.3614784e+02 1.9293453e+02 - -3.4263736e+03 5.5531031e+02 1.7398762e+02 - -3.4426083e+03 4.7502973e+02 1.5804118e+02 - -3.4561435e+03 3.9520610e+02 1.4489052e+02 - -3.4670824e+03 3.1574825e+02 1.3436301e+02 - -3.4755077e+03 2.3657295e+02 1.2631845e+02 - -3.4814819e+03 1.5760358e+02 1.2064877e+02 - -3.4850490e+03 7.8768618e+01 1.1727740e+02 - -3.4862352e+03 0.0000000e+00 1.1615866e+02 - -3.4850490e+03 -7.8768618e+01 1.1727740e+02 - -3.4814819e+03 -1.5760358e+02 1.2064877e+02 - -3.4755077e+03 -2.3657295e+02 1.2631845e+02 - -3.4670824e+03 -3.1574825e+02 1.3436301e+02 - -3.4561435e+03 -3.9520610e+02 1.4489052e+02 - -3.4426083e+03 -4.7502973e+02 1.5804118e+02 - -3.4263736e+03 -5.5531031e+02 1.7398762e+02 - -3.4073143e+03 -6.3614784e+02 1.9293453e+02 - -3.3852829e+03 -7.1765128e+02 2.1511698e+02 - -3.3601099e+03 -7.9993764e+02 2.4079644e+02 - -3.3316061e+03 -8.8312919e+02 2.7025326e+02 - -3.2995674e+03 -9.6734806e+02 3.0377404e+02 - -3.2637844e+03 -1.0527070e+03 3.4163174e+02 - -3.2240574e+03 -1.1392950e+03 3.8405643e+02 - -3.1802201e+03 -1.2271565e+03 4.3119485e+02 - -3.1321722e+03 -1.3162630e+03 4.8305816e+02 - -3.0799232e+03 -1.4064781e+03 5.3946024e+02 - -3.0236427e+03 -1.4975171e+03 5.9995311e+02 - -2.9637130e+03 -1.5889094e+03 6.6377229e+02 - -2.9007721e+03 -1.6799701e+03 7.2981025e+02 - -2.8357334e+03 -1.7697960e+03 7.9663790e+02 - -2.7697657e+03 -1.8572935e+03 8.6258809e+02 - -2.7042293e+03 -1.9412451e+03 9.2589972e+02 - -2.6405710e+03 -2.0204054e+03 9.8490040e+02 - -2.5801992e+03 -2.0936106e+03 1.0381883e+03 - -2.5243644e+03 -2.1598772e+03 1.0847711e+03 - -2.4740722e+03 -2.2184713e+03 1.1241332e+03 - -2.4300388e+03 -2.2689395e+03 1.1562263e+03 - -2.3926889e+03 -2.3111044e+03 1.1814004e+03 - -2.3621838e+03 -2.3450363e+03 1.2003007e+03 - -2.3384639e+03 -2.3710132e+03 1.2137598e+03 - -2.3212921e+03 -2.3894810e+03 1.2227007e+03 - -2.3102912e+03 -2.4010190e+03 1.2280601e+03 - -2.3049716e+03 -2.4063129e+03 1.2307335e+03 - -2.3047492e+03 -2.4061340e+03 1.2315380e+03 - -2.3089568e+03 -2.4013240e+03 1.2311888e+03 - -2.3168526e+03 -2.3927805e+03 1.2302842e+03 - -2.3276265e+03 -2.3814441e+03 1.2292965e+03 - -2.3404086e+03 -2.3682835e+03 1.2285666e+03 - -2.3542794e+03 -2.3542794e+03 1.2283004e+03 - -2.3682835e+03 -2.3404086e+03 1.2285666e+03 - -2.3814441e+03 -2.3276265e+03 1.2292965e+03 - -2.3927805e+03 -2.3168526e+03 1.2302842e+03 - -2.4013240e+03 -2.3089568e+03 1.2311888e+03 - -2.4061340e+03 -2.3047492e+03 1.2315380e+03 - -2.4063129e+03 -2.3049716e+03 1.2307335e+03 - -2.4010190e+03 -2.3102912e+03 1.2280601e+03 - -2.3894810e+03 -2.3212921e+03 1.2227007e+03 - -2.3710132e+03 -2.3384639e+03 1.2137598e+03 - -2.3450363e+03 -2.3621838e+03 1.2003007e+03 - -2.3111044e+03 -2.3926889e+03 1.1814004e+03 - -2.2689395e+03 -2.4300388e+03 1.1562263e+03 - -2.2184713e+03 -2.4740722e+03 1.1241332e+03 - -2.1598772e+03 -2.5243644e+03 1.0847711e+03 - -2.0936106e+03 -2.5801992e+03 1.0381883e+03 - -2.0204054e+03 -2.6405710e+03 9.8490040e+02 - -1.9412451e+03 -2.7042293e+03 9.2589972e+02 - -1.8572935e+03 -2.7697657e+03 8.6258809e+02 - -1.7697960e+03 -2.8357334e+03 7.9663790e+02 - -1.6799701e+03 -2.9007721e+03 7.2981025e+02 - -1.5889094e+03 -2.9637130e+03 6.6377229e+02 - -1.4975171e+03 -3.0236427e+03 5.9995311e+02 - -1.4064781e+03 -3.0799232e+03 5.3946024e+02 - -1.3162630e+03 -3.1321722e+03 4.8305816e+02 - -1.2271565e+03 -3.1802201e+03 4.3119485e+02 - -1.1392950e+03 -3.2240574e+03 3.8405643e+02 - -1.0527070e+03 -3.2637844e+03 3.4163174e+02 - -9.6734806e+02 -3.2995674e+03 3.0377404e+02 - -8.8312919e+02 -3.3316061e+03 2.7025326e+02 - -7.9993764e+02 -3.3601099e+03 2.4079644e+02 - -7.1765128e+02 -3.3852829e+03 2.1511698e+02 - -6.3614784e+02 -3.4073143e+03 1.9293453e+02 - -5.5531031e+02 -3.4263736e+03 1.7398762e+02 - -4.7502973e+02 -3.4426083e+03 1.5804118e+02 - -3.9520610e+02 -3.4561435e+03 1.4489052e+02 - -3.1574825e+02 -3.4670824e+03 1.3436301e+02 - -2.3657295e+02 -3.4755077e+03 1.2631845e+02 - -1.5760358e+02 -3.4814819e+03 1.2064877e+02 - -7.8768618e+01 -3.4850490e+03 1.1727740e+02 - 0.0000000e+00 -3.4862352e+03 1.1615866e+02 - 7.8768618e+01 -3.4850490e+03 1.1727740e+02 - 1.5760358e+02 -3.4814819e+03 1.2064877e+02 - 2.3657295e+02 -3.4755077e+03 1.2631845e+02 - 3.1574825e+02 -3.4670824e+03 1.3436301e+02 - 3.9520610e+02 -3.4561435e+03 1.4489052e+02 - 4.7502973e+02 -3.4426083e+03 1.5804118e+02 - 5.5531031e+02 -3.4263736e+03 1.7398762e+02 - 6.3614784e+02 -3.4073143e+03 1.9293453e+02 - 7.1765128e+02 -3.3852829e+03 2.1511698e+02 - 7.9993764e+02 -3.3601099e+03 2.4079644e+02 - 8.8312919e+02 -3.3316061e+03 2.7025326e+02 - 9.6734806e+02 -3.2995674e+03 3.0377404e+02 - 1.0527070e+03 -3.2637844e+03 3.4163174e+02 - 1.1392950e+03 -3.2240574e+03 3.8405643e+02 - 1.2271565e+03 -3.1802201e+03 4.3119485e+02 - 1.3162630e+03 -3.1321722e+03 4.8305816e+02 - 1.4064781e+03 -3.0799232e+03 5.3946024e+02 - 1.4975171e+03 -3.0236427e+03 5.9995311e+02 - 1.5889094e+03 -2.9637130e+03 6.6377229e+02 - 1.6799701e+03 -2.9007721e+03 7.2981025e+02 - 1.7697960e+03 -2.8357334e+03 7.9663790e+02 - 1.8572935e+03 -2.7697657e+03 8.6258809e+02 - 1.9412451e+03 -2.7042293e+03 9.2589972e+02 - 2.0204054e+03 -2.6405710e+03 9.8490040e+02 - 2.0936106e+03 -2.5801992e+03 1.0381883e+03 - 2.1598772e+03 -2.5243644e+03 1.0847711e+03 - 2.2184713e+03 -2.4740722e+03 1.1241332e+03 - 2.2689395e+03 -2.4300388e+03 1.1562263e+03 - 2.3111044e+03 -2.3926889e+03 1.1814004e+03 - 2.3450363e+03 -2.3621838e+03 1.2003007e+03 - 2.3710132e+03 -2.3384639e+03 1.2137598e+03 - 2.3894810e+03 -2.3212921e+03 1.2227007e+03 - 2.4010190e+03 -2.3102912e+03 1.2280601e+03 - 2.4063129e+03 -2.3049716e+03 1.2307335e+03 - 2.4061340e+03 -2.3047492e+03 1.2315380e+03 - 2.4013240e+03 -2.3089568e+03 1.2311888e+03 - 2.3927805e+03 -2.3168526e+03 1.2302842e+03 - 2.3814441e+03 -2.3276265e+03 1.2292965e+03 - 2.3682835e+03 -2.3404086e+03 1.2285666e+03 - 2.3542794e+03 -2.3542794e+03 1.2283004e+03 - 2.3404086e+03 -2.3682835e+03 1.2285666e+03 - 2.3276265e+03 -2.3814441e+03 1.2292965e+03 - 2.3168526e+03 -2.3927805e+03 1.2302842e+03 - 2.3089568e+03 -2.4013240e+03 1.2311888e+03 - 2.3047492e+03 -2.4061340e+03 1.2315380e+03 - 2.3049716e+03 -2.4063129e+03 1.2307335e+03 - 2.3102912e+03 -2.4010190e+03 1.2280601e+03 - 2.3212921e+03 -2.3894810e+03 1.2227007e+03 - 2.3384639e+03 -2.3710132e+03 1.2137598e+03 - 2.3621838e+03 -2.3450363e+03 1.2003007e+03 - 2.3926889e+03 -2.3111044e+03 1.1814004e+03 - 2.4300388e+03 -2.2689395e+03 1.1562263e+03 - 2.4740722e+03 -2.2184713e+03 1.1241332e+03 - 2.5243644e+03 -2.1598772e+03 1.0847711e+03 - 2.5801992e+03 -2.0936106e+03 1.0381883e+03 - 2.6405710e+03 -2.0204054e+03 9.8490040e+02 - 2.7042293e+03 -1.9412451e+03 9.2589972e+02 - 2.7697657e+03 -1.8572935e+03 8.6258809e+02 - 2.8357334e+03 -1.7697960e+03 7.9663790e+02 - 2.9007721e+03 -1.6799701e+03 7.2981025e+02 - 2.9637130e+03 -1.5889094e+03 6.6377229e+02 - 3.0236427e+03 -1.4975171e+03 5.9995311e+02 - 3.0799232e+03 -1.4064781e+03 5.3946024e+02 - 3.1321722e+03 -1.3162630e+03 4.8305816e+02 - 3.1802201e+03 -1.2271565e+03 4.3119485e+02 - 3.2240574e+03 -1.1392950e+03 3.8405643e+02 - 3.2637844e+03 -1.0527070e+03 3.4163174e+02 - 3.2995674e+03 -9.6734806e+02 3.0377404e+02 - 3.3316061e+03 -8.8312919e+02 2.7025326e+02 - 3.3601099e+03 -7.9993764e+02 2.4079644e+02 - 3.3852829e+03 -7.1765128e+02 2.1511698e+02 - 3.4073143e+03 -6.3614784e+02 1.9293453e+02 - 3.4263736e+03 -5.5531031e+02 1.7398762e+02 - 3.4426083e+03 -4.7502973e+02 1.5804118e+02 - 3.4561435e+03 -3.9520610e+02 1.4489052e+02 - 3.4670824e+03 -3.1574825e+02 1.3436301e+02 - 3.4755077e+03 -2.3657295e+02 1.2631845e+02 - 3.4814819e+03 -1.5760358e+02 1.2064877e+02 - 3.4850490e+03 -7.8768618e+01 1.1727740e+02 - 3.4862352e+03 -2.4067136e-09 1.1615866e+02 - 3.5027592e+03 2.4067136e-09 7.0004459e+01 - 3.5016885e+03 7.6807721e+01 7.0917277e+01 - 3.4984697e+03 1.5366163e+02 7.3668402e+01 - 3.4930824e+03 2.3060951e+02 7.8296051e+01 - 3.4854923e+03 3.0770237e+02 8.4864610e+01 - 3.4756500e+03 3.8499608e+02 9.3465629e+01 - 3.4634899e+03 4.6255305e+02 1.0421911e+02 - 3.4489289e+03 5.4044392e+02 1.1727498e+02 - 3.4318644e+03 6.1874912e+02 1.3281451e+02 - 3.4121726e+03 6.9756035e+02 1.5105138e+02 - 3.3897073e+03 7.7698149e+02 1.7223181e+02 - 3.3642983e+03 8.5712886e+02 1.9663294e+02 - 3.3357520e+03 9.3812996e+02 2.2455835e+02 - 3.3038538e+03 1.0201200e+03 2.5632892e+02 - 3.2683744e+03 1.1032350e+03 2.9226695e+02 - 3.2290818e+03 1.1875995e+03 3.3267065e+02 - 3.1857615e+03 1.2733078e+03 3.7777625e+02 - 3.1382478e+03 1.3603953e+03 4.2770535e+02 - 3.0864679e+03 1.4488006e+03 4.8239761e+02 - 3.0304989e+03 1.5383177e+03 5.4153304e+02 - 2.9706330e+03 1.6285442e+03 6.0445580e+02 - 2.9074404e+03 1.7188349e+03 6.7011983e+02 - 2.8418121e+03 1.8082765e+03 7.3708329e+02 - 2.7749603e+03 1.8957004e+03 8.0357688e+02 - 2.7083620e+03 1.9797469e+03 8.6765568e+02 - 2.6436425e+03 2.0589769e+03 9.2741579e+02 - 2.5824198e+03 2.1320136e+03 9.8122850e+02 - 2.5261457e+03 2.1976801e+03 1.0279312e+03 - 2.4759821e+03 2.2551026e+03 1.0669284e+03 - 2.4327347e+03 2.3037597e+03 1.0981882e+03 - 2.3968460e+03 2.3434805e+03 1.1221553e+03 - 2.3684308e+03 2.3744066e+03 1.1396176e+03 - 2.3473337e+03 2.3969364e+03 1.1515659e+03 - 2.3331873e+03 2.4116686e+03 1.1590719e+03 - 2.3254621e+03 2.4193539e+03 1.1631945e+03 - 2.3235023e+03 2.4208580e+03 1.1649167e+03 - 2.3265502e+03 2.4171328e+03 1.1651045e+03 - 2.3337619e+03 2.4091956e+03 1.1644840e+03 - 2.3442184e+03 2.3981100e+03 1.1636278e+03 - 2.3569360e+03 2.3849692e+03 1.1629483e+03 - 2.3708782e+03 2.3708782e+03 1.1626941e+03 - 2.3849692e+03 2.3569360e+03 1.1629483e+03 - 2.3981100e+03 2.3442184e+03 1.1636278e+03 - 2.4091956e+03 2.3337619e+03 1.1644840e+03 - 2.4171328e+03 2.3265502e+03 1.1651045e+03 - 2.4208580e+03 2.3235023e+03 1.1649167e+03 - 2.4193539e+03 2.3254621e+03 1.1631945e+03 - 2.4116686e+03 2.3331873e+03 1.1590719e+03 - 2.3969364e+03 2.3473337e+03 1.1515659e+03 - 2.3744066e+03 2.3684308e+03 1.1396176e+03 - 2.3434805e+03 2.3968460e+03 1.1221553e+03 - 2.3037597e+03 2.4327347e+03 1.0981882e+03 - 2.2551026e+03 2.4759821e+03 1.0669284e+03 - 2.1976801e+03 2.5261457e+03 1.0279312e+03 - 2.1320136e+03 2.5824198e+03 9.8122850e+02 - 2.0589769e+03 2.6436425e+03 9.2741579e+02 - 1.9797469e+03 2.7083620e+03 8.6765568e+02 - 1.8957004e+03 2.7749603e+03 8.0357688e+02 - 1.8082765e+03 2.8418121e+03 7.3708329e+02 - 1.7188349e+03 2.9074404e+03 6.7011983e+02 - 1.6285442e+03 2.9706330e+03 6.0445580e+02 - 1.5383177e+03 3.0304989e+03 5.4153304e+02 - 1.4488006e+03 3.0864679e+03 4.8239761e+02 - 1.3603953e+03 3.1382478e+03 4.2770535e+02 - 1.2733078e+03 3.1857615e+03 3.7777625e+02 - 1.1875995e+03 3.2290818e+03 3.3267065e+02 - 1.1032350e+03 3.2683744e+03 2.9226695e+02 - 1.0201200e+03 3.3038538e+03 2.5632892e+02 - 9.3812996e+02 3.3357520e+03 2.2455835e+02 - 8.5712886e+02 3.3642983e+03 1.9663294e+02 - 7.7698149e+02 3.3897073e+03 1.7223181e+02 - 6.9756035e+02 3.4121726e+03 1.5105138e+02 - 6.1874912e+02 3.4318644e+03 1.3281451e+02 - 5.4044392e+02 3.4489289e+03 1.1727498e+02 - 4.6255305e+02 3.4634899e+03 1.0421911e+02 - 3.8499608e+02 3.4756500e+03 9.3465629e+01 - 3.0770237e+02 3.4854923e+03 8.4864610e+01 - 2.3060951e+02 3.4930824e+03 7.8296051e+01 - 1.5366163e+02 3.4984697e+03 7.3668402e+01 - 7.6807721e+01 3.5016885e+03 7.0917277e+01 - -2.4067136e-09 3.5027592e+03 7.0004459e+01 - -7.6807721e+01 3.5016885e+03 7.0917277e+01 - -1.5366163e+02 3.4984697e+03 7.3668402e+01 - -2.3060951e+02 3.4930824e+03 7.8296051e+01 - -3.0770237e+02 3.4854923e+03 8.4864610e+01 - -3.8499608e+02 3.4756500e+03 9.3465629e+01 - -4.6255305e+02 3.4634899e+03 1.0421911e+02 - -5.4044392e+02 3.4489289e+03 1.1727498e+02 - -6.1874912e+02 3.4318644e+03 1.3281451e+02 - -6.9756035e+02 3.4121726e+03 1.5105138e+02 - -7.7698149e+02 3.3897073e+03 1.7223181e+02 - -8.5712886e+02 3.3642983e+03 1.9663294e+02 - -9.3812996e+02 3.3357520e+03 2.2455835e+02 - -1.0201200e+03 3.3038538e+03 2.5632892e+02 - -1.1032350e+03 3.2683744e+03 2.9226695e+02 - -1.1875995e+03 3.2290818e+03 3.3267065e+02 - -1.2733078e+03 3.1857615e+03 3.7777625e+02 - -1.3603953e+03 3.1382478e+03 4.2770535e+02 - -1.4488006e+03 3.0864679e+03 4.8239761e+02 - -1.5383177e+03 3.0304989e+03 5.4153304e+02 - -1.6285442e+03 2.9706330e+03 6.0445580e+02 - -1.7188349e+03 2.9074404e+03 6.7011983e+02 - -1.8082765e+03 2.8418121e+03 7.3708329e+02 - -1.8957004e+03 2.7749603e+03 8.0357688e+02 - -1.9797469e+03 2.7083620e+03 8.6765568e+02 - -2.0589769e+03 2.6436425e+03 9.2741579e+02 - -2.1320136e+03 2.5824198e+03 9.8122850e+02 - -2.1976801e+03 2.5261457e+03 1.0279312e+03 - -2.2551026e+03 2.4759821e+03 1.0669284e+03 - -2.3037597e+03 2.4327347e+03 1.0981882e+03 - -2.3434805e+03 2.3968460e+03 1.1221553e+03 - -2.3744066e+03 2.3684308e+03 1.1396176e+03 - -2.3969364e+03 2.3473337e+03 1.1515659e+03 - -2.4116686e+03 2.3331873e+03 1.1590719e+03 - -2.4193539e+03 2.3254621e+03 1.1631945e+03 - -2.4208580e+03 2.3235023e+03 1.1649167e+03 - -2.4171328e+03 2.3265502e+03 1.1651045e+03 - -2.4091956e+03 2.3337619e+03 1.1644840e+03 - -2.3981100e+03 2.3442184e+03 1.1636278e+03 - -2.3849692e+03 2.3569360e+03 1.1629483e+03 - -2.3708782e+03 2.3708782e+03 1.1626941e+03 - -2.3569360e+03 2.3849692e+03 1.1629483e+03 - -2.3442184e+03 2.3981100e+03 1.1636278e+03 - -2.3337619e+03 2.4091956e+03 1.1644840e+03 - -2.3265502e+03 2.4171328e+03 1.1651045e+03 - -2.3235023e+03 2.4208580e+03 1.1649167e+03 - -2.3254621e+03 2.4193539e+03 1.1631945e+03 - -2.3331873e+03 2.4116686e+03 1.1590719e+03 - -2.3473337e+03 2.3969364e+03 1.1515659e+03 - -2.3684308e+03 2.3744066e+03 1.1396176e+03 - -2.3968460e+03 2.3434805e+03 1.1221553e+03 - -2.4327347e+03 2.3037597e+03 1.0981882e+03 - -2.4759821e+03 2.2551026e+03 1.0669284e+03 - -2.5261457e+03 2.1976801e+03 1.0279312e+03 - -2.5824198e+03 2.1320136e+03 9.8122850e+02 - -2.6436425e+03 2.0589769e+03 9.2741579e+02 - -2.7083620e+03 1.9797469e+03 8.6765568e+02 - -2.7749603e+03 1.8957004e+03 8.0357688e+02 - -2.8418121e+03 1.8082765e+03 7.3708329e+02 - -2.9074404e+03 1.7188349e+03 6.7011983e+02 - -2.9706330e+03 1.6285442e+03 6.0445580e+02 - -3.0304989e+03 1.5383177e+03 5.4153304e+02 - -3.0864679e+03 1.4488006e+03 4.8239761e+02 - -3.1382478e+03 1.3603953e+03 4.2770535e+02 - -3.1857615e+03 1.2733078e+03 3.7777625e+02 - -3.2290818e+03 1.1875995e+03 3.3267065e+02 - -3.2683744e+03 1.1032350e+03 2.9226695e+02 - -3.3038538e+03 1.0201200e+03 2.5632892e+02 - -3.3357520e+03 9.3812996e+02 2.2455835e+02 - -3.3642983e+03 8.5712886e+02 1.9663294e+02 - -3.3897073e+03 7.7698149e+02 1.7223181e+02 - -3.4121726e+03 6.9756035e+02 1.5105138e+02 - -3.4318644e+03 6.1874912e+02 1.3281451e+02 - -3.4489289e+03 5.4044392e+02 1.1727498e+02 - -3.4634899e+03 4.6255305e+02 1.0421911e+02 - -3.4756500e+03 3.8499608e+02 9.3465629e+01 - -3.4854923e+03 3.0770237e+02 8.4864610e+01 - -3.4930824e+03 2.3060951e+02 7.8296051e+01 - -3.4984697e+03 1.5366163e+02 7.3668402e+01 - -3.5016885e+03 7.6807721e+01 7.0917277e+01 - -3.5027592e+03 0.0000000e+00 7.0004459e+01 - -3.5016885e+03 -7.6807721e+01 7.0917277e+01 - -3.4984697e+03 -1.5366163e+02 7.3668402e+01 - -3.4930824e+03 -2.3060951e+02 7.8296051e+01 - -3.4854923e+03 -3.0770237e+02 8.4864610e+01 - -3.4756500e+03 -3.8499608e+02 9.3465629e+01 - -3.4634899e+03 -4.6255305e+02 1.0421911e+02 - -3.4489289e+03 -5.4044392e+02 1.1727498e+02 - -3.4318644e+03 -6.1874912e+02 1.3281451e+02 - -3.4121726e+03 -6.9756035e+02 1.5105138e+02 - -3.3897073e+03 -7.7698149e+02 1.7223181e+02 - -3.3642983e+03 -8.5712886e+02 1.9663294e+02 - -3.3357520e+03 -9.3812996e+02 2.2455835e+02 - -3.3038538e+03 -1.0201200e+03 2.5632892e+02 - -3.2683744e+03 -1.1032350e+03 2.9226695e+02 - -3.2290818e+03 -1.1875995e+03 3.3267065e+02 - -3.1857615e+03 -1.2733078e+03 3.7777625e+02 - -3.1382478e+03 -1.3603953e+03 4.2770535e+02 - -3.0864679e+03 -1.4488006e+03 4.8239761e+02 - -3.0304989e+03 -1.5383177e+03 5.4153304e+02 - -2.9706330e+03 -1.6285442e+03 6.0445580e+02 - -2.9074404e+03 -1.7188349e+03 6.7011983e+02 - -2.8418121e+03 -1.8082765e+03 7.3708329e+02 - -2.7749603e+03 -1.8957004e+03 8.0357688e+02 - -2.7083620e+03 -1.9797469e+03 8.6765568e+02 - -2.6436425e+03 -2.0589769e+03 9.2741579e+02 - -2.5824198e+03 -2.1320136e+03 9.8122850e+02 - -2.5261457e+03 -2.1976801e+03 1.0279312e+03 - -2.4759821e+03 -2.2551026e+03 1.0669284e+03 - -2.4327347e+03 -2.3037597e+03 1.0981882e+03 - -2.3968460e+03 -2.3434805e+03 1.1221553e+03 - -2.3684308e+03 -2.3744066e+03 1.1396176e+03 - -2.3473337e+03 -2.3969364e+03 1.1515659e+03 - -2.3331873e+03 -2.4116686e+03 1.1590719e+03 - -2.3254621e+03 -2.4193539e+03 1.1631945e+03 - -2.3235023e+03 -2.4208580e+03 1.1649167e+03 - -2.3265502e+03 -2.4171328e+03 1.1651045e+03 - -2.3337619e+03 -2.4091956e+03 1.1644840e+03 - -2.3442184e+03 -2.3981100e+03 1.1636278e+03 - -2.3569360e+03 -2.3849692e+03 1.1629483e+03 - -2.3708782e+03 -2.3708782e+03 1.1626941e+03 - -2.3849692e+03 -2.3569360e+03 1.1629483e+03 - -2.3981100e+03 -2.3442184e+03 1.1636278e+03 - -2.4091956e+03 -2.3337619e+03 1.1644840e+03 - -2.4171328e+03 -2.3265502e+03 1.1651045e+03 - -2.4208580e+03 -2.3235023e+03 1.1649167e+03 - -2.4193539e+03 -2.3254621e+03 1.1631945e+03 - -2.4116686e+03 -2.3331873e+03 1.1590719e+03 - -2.3969364e+03 -2.3473337e+03 1.1515659e+03 - -2.3744066e+03 -2.3684308e+03 1.1396176e+03 - -2.3434805e+03 -2.3968460e+03 1.1221553e+03 - -2.3037597e+03 -2.4327347e+03 1.0981882e+03 - -2.2551026e+03 -2.4759821e+03 1.0669284e+03 - -2.1976801e+03 -2.5261457e+03 1.0279312e+03 - -2.1320136e+03 -2.5824198e+03 9.8122850e+02 - -2.0589769e+03 -2.6436425e+03 9.2741579e+02 - -1.9797469e+03 -2.7083620e+03 8.6765568e+02 - -1.8957004e+03 -2.7749603e+03 8.0357688e+02 - -1.8082765e+03 -2.8418121e+03 7.3708329e+02 - -1.7188349e+03 -2.9074404e+03 6.7011983e+02 - -1.6285442e+03 -2.9706330e+03 6.0445580e+02 - -1.5383177e+03 -3.0304989e+03 5.4153304e+02 - -1.4488006e+03 -3.0864679e+03 4.8239761e+02 - -1.3603953e+03 -3.1382478e+03 4.2770535e+02 - -1.2733078e+03 -3.1857615e+03 3.7777625e+02 - -1.1875995e+03 -3.2290818e+03 3.3267065e+02 - -1.1032350e+03 -3.2683744e+03 2.9226695e+02 - -1.0201200e+03 -3.3038538e+03 2.5632892e+02 - -9.3812996e+02 -3.3357520e+03 2.2455835e+02 - -8.5712886e+02 -3.3642983e+03 1.9663294e+02 - -7.7698149e+02 -3.3897073e+03 1.7223181e+02 - -6.9756035e+02 -3.4121726e+03 1.5105138e+02 - -6.1874912e+02 -3.4318644e+03 1.3281451e+02 - -5.4044392e+02 -3.4489289e+03 1.1727498e+02 - -4.6255305e+02 -3.4634899e+03 1.0421911e+02 - -3.8499608e+02 -3.4756500e+03 9.3465629e+01 - -3.0770237e+02 -3.4854923e+03 8.4864610e+01 - -2.3060951e+02 -3.4930824e+03 7.8296051e+01 - -1.5366163e+02 -3.4984697e+03 7.3668402e+01 - -7.6807721e+01 -3.5016885e+03 7.0917277e+01 - -2.4067136e-09 -3.5027592e+03 7.0004459e+01 - 7.6807721e+01 -3.5016885e+03 7.0917277e+01 - 1.5366163e+02 -3.4984697e+03 7.3668402e+01 - 2.3060951e+02 -3.4930824e+03 7.8296051e+01 - 3.0770237e+02 -3.4854923e+03 8.4864610e+01 - 3.8499608e+02 -3.4756500e+03 9.3465629e+01 - 4.6255305e+02 -3.4634899e+03 1.0421911e+02 - 5.4044392e+02 -3.4489289e+03 1.1727498e+02 - 6.1874912e+02 -3.4318644e+03 1.3281451e+02 - 6.9756035e+02 -3.4121726e+03 1.5105138e+02 - 7.7698149e+02 -3.3897073e+03 1.7223181e+02 - 8.5712886e+02 -3.3642983e+03 1.9663294e+02 - 9.3812996e+02 -3.3357520e+03 2.2455835e+02 - 1.0201200e+03 -3.3038538e+03 2.5632892e+02 - 1.1032350e+03 -3.2683744e+03 2.9226695e+02 - 1.1875995e+03 -3.2290818e+03 3.3267065e+02 - 1.2733078e+03 -3.1857615e+03 3.7777625e+02 - 1.3603953e+03 -3.1382478e+03 4.2770535e+02 - 1.4488006e+03 -3.0864679e+03 4.8239761e+02 - 1.5383177e+03 -3.0304989e+03 5.4153304e+02 - 1.6285442e+03 -2.9706330e+03 6.0445580e+02 - 1.7188349e+03 -2.9074404e+03 6.7011983e+02 - 1.8082765e+03 -2.8418121e+03 7.3708329e+02 - 1.8957004e+03 -2.7749603e+03 8.0357688e+02 - 1.9797469e+03 -2.7083620e+03 8.6765568e+02 - 2.0589769e+03 -2.6436425e+03 9.2741579e+02 - 2.1320136e+03 -2.5824198e+03 9.8122850e+02 - 2.1976801e+03 -2.5261457e+03 1.0279312e+03 - 2.2551026e+03 -2.4759821e+03 1.0669284e+03 - 2.3037597e+03 -2.4327347e+03 1.0981882e+03 - 2.3434805e+03 -2.3968460e+03 1.1221553e+03 - 2.3744066e+03 -2.3684308e+03 1.1396176e+03 - 2.3969364e+03 -2.3473337e+03 1.1515659e+03 - 2.4116686e+03 -2.3331873e+03 1.1590719e+03 - 2.4193539e+03 -2.3254621e+03 1.1631945e+03 - 2.4208580e+03 -2.3235023e+03 1.1649167e+03 - 2.4171328e+03 -2.3265502e+03 1.1651045e+03 - 2.4091956e+03 -2.3337619e+03 1.1644840e+03 - 2.3981100e+03 -2.3442184e+03 1.1636278e+03 - 2.3849692e+03 -2.3569360e+03 1.1629483e+03 - 2.3708782e+03 -2.3708782e+03 1.1626941e+03 - 2.3569360e+03 -2.3849692e+03 1.1629483e+03 - 2.3442184e+03 -2.3981100e+03 1.1636278e+03 - 2.3337619e+03 -2.4091956e+03 1.1644840e+03 - 2.3265502e+03 -2.4171328e+03 1.1651045e+03 - 2.3235023e+03 -2.4208580e+03 1.1649167e+03 - 2.3254621e+03 -2.4193539e+03 1.1631945e+03 - 2.3331873e+03 -2.4116686e+03 1.1590719e+03 - 2.3473337e+03 -2.3969364e+03 1.1515659e+03 - 2.3684308e+03 -2.3744066e+03 1.1396176e+03 - 2.3968460e+03 -2.3434805e+03 1.1221553e+03 - 2.4327347e+03 -2.3037597e+03 1.0981882e+03 - 2.4759821e+03 -2.2551026e+03 1.0669284e+03 - 2.5261457e+03 -2.1976801e+03 1.0279312e+03 - 2.5824198e+03 -2.1320136e+03 9.8122850e+02 - 2.6436425e+03 -2.0589769e+03 9.2741579e+02 - 2.7083620e+03 -1.9797469e+03 8.6765568e+02 - 2.7749603e+03 -1.8957004e+03 8.0357688e+02 - 2.8418121e+03 -1.8082765e+03 7.3708329e+02 - 2.9074404e+03 -1.7188349e+03 6.7011983e+02 - 2.9706330e+03 -1.6285442e+03 6.0445580e+02 - 3.0304989e+03 -1.5383177e+03 5.4153304e+02 - 3.0864679e+03 -1.4488006e+03 4.8239761e+02 - 3.1382478e+03 -1.3603953e+03 4.2770535e+02 - 3.1857615e+03 -1.2733078e+03 3.7777625e+02 - 3.2290818e+03 -1.1875995e+03 3.3267065e+02 - 3.2683744e+03 -1.1032350e+03 2.9226695e+02 - 3.3038538e+03 -1.0201200e+03 2.5632892e+02 - 3.3357520e+03 -9.3812996e+02 2.2455835e+02 - 3.3642983e+03 -8.5712886e+02 1.9663294e+02 - 3.3897073e+03 -7.7698149e+02 1.7223181e+02 - 3.4121726e+03 -6.9756035e+02 1.5105138e+02 - 3.4318644e+03 -6.1874912e+02 1.3281451e+02 - 3.4489289e+03 -5.4044392e+02 1.1727498e+02 - 3.4634899e+03 -4.6255305e+02 1.0421911e+02 - 3.4756500e+03 -3.8499608e+02 9.3465629e+01 - 3.4854923e+03 -3.0770237e+02 8.4864610e+01 - 3.4930824e+03 -2.3060951e+02 7.8296051e+01 - 3.4984697e+03 -1.5366163e+02 7.3668402e+01 - 3.5016885e+03 -7.6807721e+01 7.0917277e+01 - 3.5027592e+03 0.0000000e+00 7.0004459e+01 - 3.5165797e+03 -4.8134273e-09 2.8877734e+01 - 3.5155995e+03 7.5241202e+01 2.9620816e+01 - 3.5126537e+03 1.5051173e+02 3.1860448e+01 - 3.5077270e+03 2.2584227e+02 3.5628007e+01 - 3.5007932e+03 3.0126625e+02 4.0976511e+01 - 3.4918143e+03 3.7682133e+02 4.7981702e+01 - 3.4807398e+03 4.5255089e+02 5.6743531e+01 - 3.4675050e+03 5.2850574e+02 6.7388023e+01 - 3.4520292e+03 6.0474587e+02 8.0069442e+01 - 3.4342135e+03 6.8134227e+02 9.4972608e+01 - 3.4139386e+03 7.5837882e+02 1.1231511e+02 - 3.3910624e+03 8.3595390e+02 1.3234904e+02 - 3.3654177e+03 9.1418169e+02 1.5536142e+02 - 3.3368107e+03 9.9319236e+02 1.8167250e+02 - 3.3050214e+03 1.0731305e+03 2.1162995e+02 - 3.2698069e+03 1.1541507e+03 2.4559704e+02 - 3.2309101e+03 1.2364080e+03 2.8393129e+02 - 3.1880758e+03 1.3200413e+03 3.2695006e+02 - 3.1410795e+03 1.4051464e+03 3.7487905e+02 - 3.0897712e+03 1.4917366e+03 4.2778107e+02 - 3.0341361e+03 1.5796890e+03 4.8546678e+02 - 2.9743730e+03 1.6686790e+03 5.4739659e+02 - 2.9109770e+03 1.7581135e+03 6.1259540e+02 - 2.8448101e+03 1.8470804e+03 6.7961365e+02 - 2.7771285e+03 1.9343394e+03 7.4657334e+02 - 2.7095388e+03 2.0183783e+03 8.1132421e+02 - 2.6438707e+03 2.0975405e+03 8.7169954e+02 - 2.5819842e+03 2.1702063e+03 9.2581541e+02 - 2.5255595e+03 2.2349812e+03 9.7232849e+02 - 2.4759256e+03 2.2908434e+03 1.0105784e+03 - 2.4339672e+03 2.3372168e+03 1.0405875e+03 - 2.4001141e+03 2.3739700e+03 1.0629444e+03 - 2.3743918e+03 2.4013606e+03 1.0786265e+03 - 2.3565006e+03 2.4199562e+03 1.0888180e+03 - 2.3458945e+03 2.4305561e+03 1.0947568e+03 - 2.3418467e+03 2.4341247e+03 1.0976248e+03 - 2.3434959e+03 2.4317425e+03 1.0984774e+03 - 2.3498762e+03 2.4245694e+03 1.0982031e+03 - 2.3599373e+03 2.4138180e+03 1.0975029e+03 - 2.3725586e+03 2.4007313e+03 1.0968808e+03 - 2.3865631e+03 2.3865631e+03 1.0966397e+03 - 2.4007313e+03 2.3725586e+03 1.0968808e+03 - 2.4138180e+03 2.3599373e+03 1.0975029e+03 - 2.4245694e+03 2.3498762e+03 1.0982031e+03 - 2.4317425e+03 2.3434959e+03 1.0984774e+03 - 2.4341247e+03 2.3418467e+03 1.0976248e+03 - 2.4305561e+03 2.3458945e+03 1.0947568e+03 - 2.4199562e+03 2.3565006e+03 1.0888180e+03 - 2.4013606e+03 2.3743918e+03 1.0786265e+03 - 2.3739700e+03 2.4001141e+03 1.0629444e+03 - 2.3372168e+03 2.4339672e+03 1.0405875e+03 - 2.2908434e+03 2.4759256e+03 1.0105784e+03 - 2.2349812e+03 2.5255595e+03 9.7232849e+02 - 2.1702063e+03 2.5819842e+03 9.2581541e+02 - 2.0975405e+03 2.6438707e+03 8.7169954e+02 - 2.0183783e+03 2.7095388e+03 8.1132421e+02 - 1.9343394e+03 2.7771285e+03 7.4657334e+02 - 1.8470804e+03 2.8448101e+03 6.7961365e+02 - 1.7581135e+03 2.9109770e+03 6.1259540e+02 - 1.6686790e+03 2.9743730e+03 5.4739659e+02 - 1.5796890e+03 3.0341361e+03 4.8546678e+02 - 1.4917366e+03 3.0897712e+03 4.2778107e+02 - 1.4051464e+03 3.1410795e+03 3.7487905e+02 - 1.3200413e+03 3.1880758e+03 3.2695006e+02 - 1.2364080e+03 3.2309101e+03 2.8393129e+02 - 1.1541507e+03 3.2698069e+03 2.4559704e+02 - 1.0731305e+03 3.3050214e+03 2.1162995e+02 - 9.9319236e+02 3.3368107e+03 1.8167250e+02 - 9.1418169e+02 3.3654177e+03 1.5536142e+02 - 8.3595390e+02 3.3910624e+03 1.3234904e+02 - 7.5837882e+02 3.4139386e+03 1.1231511e+02 - 6.8134227e+02 3.4342135e+03 9.4972608e+01 - 6.0474587e+02 3.4520292e+03 8.0069442e+01 - 5.2850574e+02 3.4675050e+03 6.7388023e+01 - 4.5255089e+02 3.4807398e+03 5.6743531e+01 - 3.7682133e+02 3.4918143e+03 4.7981702e+01 - 3.0126625e+02 3.5007932e+03 4.0976511e+01 - 2.2584227e+02 3.5077270e+03 3.5628007e+01 - 1.5051173e+02 3.5126537e+03 3.1860448e+01 - 7.5241202e+01 3.5155995e+03 2.9620816e+01 - 2.4067136e-09 3.5165797e+03 2.8877734e+01 - -7.5241202e+01 3.5155995e+03 2.9620816e+01 - -1.5051173e+02 3.5126537e+03 3.1860448e+01 - -2.2584227e+02 3.5077270e+03 3.5628007e+01 - -3.0126625e+02 3.5007932e+03 4.0976511e+01 - -3.7682133e+02 3.4918143e+03 4.7981702e+01 - -4.5255089e+02 3.4807398e+03 5.6743531e+01 - -5.2850574e+02 3.4675050e+03 6.7388023e+01 - -6.0474587e+02 3.4520292e+03 8.0069442e+01 - -6.8134227e+02 3.4342135e+03 9.4972608e+01 - -7.5837882e+02 3.4139386e+03 1.1231511e+02 - -8.3595390e+02 3.3910624e+03 1.3234904e+02 - -9.1418169e+02 3.3654177e+03 1.5536142e+02 - -9.9319236e+02 3.3368107e+03 1.8167250e+02 - -1.0731305e+03 3.3050214e+03 2.1162995e+02 - -1.1541507e+03 3.2698069e+03 2.4559704e+02 - -1.2364080e+03 3.2309101e+03 2.8393129e+02 - -1.3200413e+03 3.1880758e+03 3.2695006e+02 - -1.4051464e+03 3.1410795e+03 3.7487905e+02 - -1.4917366e+03 3.0897712e+03 4.2778107e+02 - -1.5796890e+03 3.0341361e+03 4.8546678e+02 - -1.6686790e+03 2.9743730e+03 5.4739659e+02 - -1.7581135e+03 2.9109770e+03 6.1259540e+02 - -1.8470804e+03 2.8448101e+03 6.7961365e+02 - -1.9343394e+03 2.7771285e+03 7.4657334e+02 - -2.0183783e+03 2.7095388e+03 8.1132421e+02 - -2.0975405e+03 2.6438707e+03 8.7169954e+02 - -2.1702063e+03 2.5819842e+03 9.2581541e+02 - -2.2349812e+03 2.5255595e+03 9.7232849e+02 - -2.2908434e+03 2.4759256e+03 1.0105784e+03 - -2.3372168e+03 2.4339672e+03 1.0405875e+03 - -2.3739700e+03 2.4001141e+03 1.0629444e+03 - -2.4013606e+03 2.3743918e+03 1.0786265e+03 - -2.4199562e+03 2.3565006e+03 1.0888180e+03 - -2.4305561e+03 2.3458945e+03 1.0947568e+03 - -2.4341247e+03 2.3418467e+03 1.0976248e+03 - -2.4317425e+03 2.3434959e+03 1.0984774e+03 - -2.4245694e+03 2.3498762e+03 1.0982031e+03 - -2.4138180e+03 2.3599373e+03 1.0975029e+03 - -2.4007313e+03 2.3725586e+03 1.0968808e+03 - -2.3865631e+03 2.3865631e+03 1.0966397e+03 - -2.3725586e+03 2.4007313e+03 1.0968808e+03 - -2.3599373e+03 2.4138180e+03 1.0975029e+03 - -2.3498762e+03 2.4245694e+03 1.0982031e+03 - -2.3434959e+03 2.4317425e+03 1.0984774e+03 - -2.3418467e+03 2.4341247e+03 1.0976248e+03 - -2.3458945e+03 2.4305561e+03 1.0947568e+03 - -2.3565006e+03 2.4199562e+03 1.0888180e+03 - -2.3743918e+03 2.4013606e+03 1.0786265e+03 - -2.4001141e+03 2.3739700e+03 1.0629444e+03 - -2.4339672e+03 2.3372168e+03 1.0405875e+03 - -2.4759256e+03 2.2908434e+03 1.0105784e+03 - -2.5255595e+03 2.2349812e+03 9.7232849e+02 - -2.5819842e+03 2.1702063e+03 9.2581541e+02 - -2.6438707e+03 2.0975405e+03 8.7169954e+02 - -2.7095388e+03 2.0183783e+03 8.1132421e+02 - -2.7771285e+03 1.9343394e+03 7.4657334e+02 - -2.8448101e+03 1.8470804e+03 6.7961365e+02 - -2.9109770e+03 1.7581135e+03 6.1259540e+02 - -2.9743730e+03 1.6686790e+03 5.4739659e+02 - -3.0341361e+03 1.5796890e+03 4.8546678e+02 - -3.0897712e+03 1.4917366e+03 4.2778107e+02 - -3.1410795e+03 1.4051464e+03 3.7487905e+02 - -3.1880758e+03 1.3200413e+03 3.2695006e+02 - -3.2309101e+03 1.2364080e+03 2.8393129e+02 - -3.2698069e+03 1.1541507e+03 2.4559704e+02 - -3.3050214e+03 1.0731305e+03 2.1162995e+02 - -3.3368107e+03 9.9319236e+02 1.8167250e+02 - -3.3654177e+03 9.1418169e+02 1.5536142e+02 - -3.3910624e+03 8.3595390e+02 1.3234904e+02 - -3.4139386e+03 7.5837882e+02 1.1231511e+02 - -3.4342135e+03 6.8134227e+02 9.4972608e+01 - -3.4520292e+03 6.0474587e+02 8.0069442e+01 - -3.4675050e+03 5.2850574e+02 6.7388023e+01 - -3.4807398e+03 4.5255089e+02 5.6743531e+01 - -3.4918143e+03 3.7682133e+02 4.7981702e+01 - -3.5007932e+03 3.0126625e+02 4.0976511e+01 - -3.5077270e+03 2.2584227e+02 3.5628007e+01 - -3.5126537e+03 1.5051173e+02 3.1860448e+01 - -3.5155995e+03 7.5241202e+01 2.9620816e+01 - -3.5165797e+03 2.4067136e-09 2.8877734e+01 - -3.5155995e+03 -7.5241202e+01 2.9620816e+01 - -3.5126537e+03 -1.5051173e+02 3.1860448e+01 - -3.5077270e+03 -2.2584227e+02 3.5628007e+01 - -3.5007932e+03 -3.0126625e+02 4.0976511e+01 - -3.4918143e+03 -3.7682133e+02 4.7981702e+01 - -3.4807398e+03 -4.5255089e+02 5.6743531e+01 - -3.4675050e+03 -5.2850574e+02 6.7388023e+01 - -3.4520292e+03 -6.0474587e+02 8.0069442e+01 - -3.4342135e+03 -6.8134227e+02 9.4972608e+01 - -3.4139386e+03 -7.5837882e+02 1.1231511e+02 - -3.3910624e+03 -8.3595390e+02 1.3234904e+02 - -3.3654177e+03 -9.1418169e+02 1.5536142e+02 - -3.3368107e+03 -9.9319236e+02 1.8167250e+02 - -3.3050214e+03 -1.0731305e+03 2.1162995e+02 - -3.2698069e+03 -1.1541507e+03 2.4559704e+02 - -3.2309101e+03 -1.2364080e+03 2.8393129e+02 - -3.1880758e+03 -1.3200413e+03 3.2695006e+02 - -3.1410795e+03 -1.4051464e+03 3.7487905e+02 - -3.0897712e+03 -1.4917366e+03 4.2778107e+02 - -3.0341361e+03 -1.5796890e+03 4.8546678e+02 - -2.9743730e+03 -1.6686790e+03 5.4739659e+02 - -2.9109770e+03 -1.7581135e+03 6.1259540e+02 - -2.8448101e+03 -1.8470804e+03 6.7961365e+02 - -2.7771285e+03 -1.9343394e+03 7.4657334e+02 - -2.7095388e+03 -2.0183783e+03 8.1132421e+02 - -2.6438707e+03 -2.0975405e+03 8.7169954e+02 - -2.5819842e+03 -2.1702063e+03 9.2581541e+02 - -2.5255595e+03 -2.2349812e+03 9.7232849e+02 - -2.4759256e+03 -2.2908434e+03 1.0105784e+03 - -2.4339672e+03 -2.3372168e+03 1.0405875e+03 - -2.4001141e+03 -2.3739700e+03 1.0629444e+03 - -2.3743918e+03 -2.4013606e+03 1.0786265e+03 - -2.3565006e+03 -2.4199562e+03 1.0888180e+03 - -2.3458945e+03 -2.4305561e+03 1.0947568e+03 - -2.3418467e+03 -2.4341247e+03 1.0976248e+03 - -2.3434959e+03 -2.4317425e+03 1.0984774e+03 - -2.3498762e+03 -2.4245694e+03 1.0982031e+03 - -2.3599373e+03 -2.4138180e+03 1.0975029e+03 - -2.3725586e+03 -2.4007313e+03 1.0968808e+03 - -2.3865631e+03 -2.3865631e+03 1.0966397e+03 - -2.4007313e+03 -2.3725586e+03 1.0968808e+03 - -2.4138180e+03 -2.3599373e+03 1.0975029e+03 - -2.4245694e+03 -2.3498762e+03 1.0982031e+03 - -2.4317425e+03 -2.3434959e+03 1.0984774e+03 - -2.4341247e+03 -2.3418467e+03 1.0976248e+03 - -2.4305561e+03 -2.3458945e+03 1.0947568e+03 - -2.4199562e+03 -2.3565006e+03 1.0888180e+03 - -2.4013606e+03 -2.3743918e+03 1.0786265e+03 - -2.3739700e+03 -2.4001141e+03 1.0629444e+03 - -2.3372168e+03 -2.4339672e+03 1.0405875e+03 - -2.2908434e+03 -2.4759256e+03 1.0105784e+03 - -2.2349812e+03 -2.5255595e+03 9.7232849e+02 - -2.1702063e+03 -2.5819842e+03 9.2581541e+02 - -2.0975405e+03 -2.6438707e+03 8.7169954e+02 - -2.0183783e+03 -2.7095388e+03 8.1132421e+02 - -1.9343394e+03 -2.7771285e+03 7.4657334e+02 - -1.8470804e+03 -2.8448101e+03 6.7961365e+02 - -1.7581135e+03 -2.9109770e+03 6.1259540e+02 - -1.6686790e+03 -2.9743730e+03 5.4739659e+02 - -1.5796890e+03 -3.0341361e+03 4.8546678e+02 - -1.4917366e+03 -3.0897712e+03 4.2778107e+02 - -1.4051464e+03 -3.1410795e+03 3.7487905e+02 - -1.3200413e+03 -3.1880758e+03 3.2695006e+02 - -1.2364080e+03 -3.2309101e+03 2.8393129e+02 - -1.1541507e+03 -3.2698069e+03 2.4559704e+02 - -1.0731305e+03 -3.3050214e+03 2.1162995e+02 - -9.9319236e+02 -3.3368107e+03 1.8167250e+02 - -9.1418169e+02 -3.3654177e+03 1.5536142e+02 - -8.3595390e+02 -3.3910624e+03 1.3234904e+02 - -7.5837882e+02 -3.4139386e+03 1.1231511e+02 - -6.8134227e+02 -3.4342135e+03 9.4972608e+01 - -6.0474587e+02 -3.4520292e+03 8.0069442e+01 - -5.2850574e+02 -3.4675050e+03 6.7388023e+01 - -4.5255089e+02 -3.4807398e+03 5.6743531e+01 - -3.7682133e+02 -3.4918143e+03 4.7981702e+01 - -3.0126625e+02 -3.5007932e+03 4.0976511e+01 - -2.2584227e+02 -3.5077270e+03 3.5628007e+01 - -1.5051173e+02 -3.5126537e+03 3.1860448e+01 - -7.5241202e+01 -3.5155995e+03 2.9620816e+01 - -2.4067136e-09 -3.5165797e+03 2.8877734e+01 - 7.5241202e+01 -3.5155995e+03 2.9620816e+01 - 1.5051173e+02 -3.5126537e+03 3.1860448e+01 - 2.2584227e+02 -3.5077270e+03 3.5628007e+01 - 3.0126625e+02 -3.5007932e+03 4.0976511e+01 - 3.7682133e+02 -3.4918143e+03 4.7981702e+01 - 4.5255089e+02 -3.4807398e+03 5.6743531e+01 - 5.2850574e+02 -3.4675050e+03 6.7388023e+01 - 6.0474587e+02 -3.4520292e+03 8.0069442e+01 - 6.8134227e+02 -3.4342135e+03 9.4972608e+01 - 7.5837882e+02 -3.4139386e+03 1.1231511e+02 - 8.3595390e+02 -3.3910624e+03 1.3234904e+02 - 9.1418169e+02 -3.3654177e+03 1.5536142e+02 - 9.9319236e+02 -3.3368107e+03 1.8167250e+02 - 1.0731305e+03 -3.3050214e+03 2.1162995e+02 - 1.1541507e+03 -3.2698069e+03 2.4559704e+02 - 1.2364080e+03 -3.2309101e+03 2.8393129e+02 - 1.3200413e+03 -3.1880758e+03 3.2695006e+02 - 1.4051464e+03 -3.1410795e+03 3.7487905e+02 - 1.4917366e+03 -3.0897712e+03 4.2778107e+02 - 1.5796890e+03 -3.0341361e+03 4.8546678e+02 - 1.6686790e+03 -2.9743730e+03 5.4739659e+02 - 1.7581135e+03 -2.9109770e+03 6.1259540e+02 - 1.8470804e+03 -2.8448101e+03 6.7961365e+02 - 1.9343394e+03 -2.7771285e+03 7.4657334e+02 - 2.0183783e+03 -2.7095388e+03 8.1132421e+02 - 2.0975405e+03 -2.6438707e+03 8.7169954e+02 - 2.1702063e+03 -2.5819842e+03 9.2581541e+02 - 2.2349812e+03 -2.5255595e+03 9.7232849e+02 - 2.2908434e+03 -2.4759256e+03 1.0105784e+03 - 2.3372168e+03 -2.4339672e+03 1.0405875e+03 - 2.3739700e+03 -2.4001141e+03 1.0629444e+03 - 2.4013606e+03 -2.3743918e+03 1.0786265e+03 - 2.4199562e+03 -2.3565006e+03 1.0888180e+03 - 2.4305561e+03 -2.3458945e+03 1.0947568e+03 - 2.4341247e+03 -2.3418467e+03 1.0976248e+03 - 2.4317425e+03 -2.3434959e+03 1.0984774e+03 - 2.4245694e+03 -2.3498762e+03 1.0982031e+03 - 2.4138180e+03 -2.3599373e+03 1.0975029e+03 - 2.4007313e+03 -2.3725586e+03 1.0968808e+03 - 2.3865631e+03 -2.3865631e+03 1.0966397e+03 - 2.3725586e+03 -2.4007313e+03 1.0968808e+03 - 2.3599373e+03 -2.4138180e+03 1.0975029e+03 - 2.3498762e+03 -2.4245694e+03 1.0982031e+03 - 2.3434959e+03 -2.4317425e+03 1.0984774e+03 - 2.3418467e+03 -2.4341247e+03 1.0976248e+03 - 2.3458945e+03 -2.4305561e+03 1.0947568e+03 - 2.3565006e+03 -2.4199562e+03 1.0888180e+03 - 2.3743918e+03 -2.4013606e+03 1.0786265e+03 - 2.4001141e+03 -2.3739700e+03 1.0629444e+03 - 2.4339672e+03 -2.3372168e+03 1.0405875e+03 - 2.4759256e+03 -2.2908434e+03 1.0105784e+03 - 2.5255595e+03 -2.2349812e+03 9.7232849e+02 - 2.5819842e+03 -2.1702063e+03 9.2581541e+02 - 2.6438707e+03 -2.0975405e+03 8.7169954e+02 - 2.7095388e+03 -2.0183783e+03 8.1132421e+02 - 2.7771285e+03 -1.9343394e+03 7.4657334e+02 - 2.8448101e+03 -1.8470804e+03 6.7961365e+02 - 2.9109770e+03 -1.7581135e+03 6.1259540e+02 - 2.9743730e+03 -1.6686790e+03 5.4739659e+02 - 3.0341361e+03 -1.5796890e+03 4.8546678e+02 - 3.0897712e+03 -1.4917366e+03 4.2778107e+02 - 3.1410795e+03 -1.4051464e+03 3.7487905e+02 - 3.1880758e+03 -1.3200413e+03 3.2695006e+02 - 3.2309101e+03 -1.2364080e+03 2.8393129e+02 - 3.2698069e+03 -1.1541507e+03 2.4559704e+02 - 3.3050214e+03 -1.0731305e+03 2.1162995e+02 - 3.3368107e+03 -9.9319236e+02 1.8167250e+02 - 3.3654177e+03 -9.1418169e+02 1.5536142e+02 - 3.3910624e+03 -8.3595390e+02 1.3234904e+02 - 3.4139386e+03 -7.5837882e+02 1.1231511e+02 - 3.4342135e+03 -6.8134227e+02 9.4972608e+01 - 3.4520292e+03 -6.0474587e+02 8.0069442e+01 - 3.4675050e+03 -5.2850574e+02 6.7388023e+01 - 3.4807398e+03 -4.5255089e+02 5.6743531e+01 - 3.4918143e+03 -3.7682133e+02 4.7981702e+01 - 3.5007932e+03 -3.0126625e+02 4.0976511e+01 - 3.5077270e+03 -2.2584227e+02 3.5628007e+01 - 3.5126537e+03 -1.5051173e+02 3.1860448e+01 - 3.5155995e+03 -7.5241202e+01 2.9620816e+01 - 3.5165797e+03 -2.4067136e-09 2.8877734e+01 - 3.5278986e+03 -4.8134273e-09 -7.1276300e+00 - 3.5269896e+03 7.3989494e+01 -6.5257325e+00 - 3.5242586e+03 1.4799458e+02 -4.7116483e+00 - 3.5196944e+03 2.2203195e+02 -1.6600038e+00 - 3.5132772e+03 2.9612052e+02 2.6721585e+00 - 3.5049789e+03 3.7028261e+02 8.3463907e+00 - 3.4947615e+03 4.4454530e+02 1.5444274e+01 - 3.4825760e+03 5.1894182e+02 2.4069281e+01 - 3.4683611e+03 5.9351324e+02 3.4349076e+01 - 3.4520405e+03 6.6831023e+02 4.6438209e+01 - 3.4335213e+03 7.4339513e+02 6.0521152e+01 - 3.4126907e+03 8.1884414e+02 7.6815496e+01 - 3.3894130e+03 8.9474955e+02 9.5575003e+01 - 3.3635267e+03 9.7122194e+02 1.1709197e+02 - 3.3348412e+03 1.0483917e+03 1.4169797e+02 - 3.3031356e+03 1.1264094e+03 1.6976143e+02 - 3.2681584e+03 1.2054439e+03 2.0167987e+02 - 3.2296332e+03 1.2856755e+03 2.3786321e+02 - 3.1872706e+03 1.3672829e+03 2.7870377e+02 - 3.1407930e+03 1.4504192e+03 3.2452743e+02 - 3.0899763e+03 1.5351720e+03 3.7552051e+02 - 3.0347136e+03 1.6215055e+03 4.3163030e+02 - 2.9751043e+03 1.7091827e+03 4.9244494e+02 - 2.9115591e+03 1.7976764e+03 5.5707323e+02 - 2.8449031e+03 1.8860873e+03 6.2406430e+02 - 2.7764378e+03 1.9731045e+03 6.9142190e+02 - 2.7079179e+03 2.0570472e+03 7.5676034e+02 - 2.6414132e+03 2.1360078e+03 8.1760686e+02 - 2.5790696e+03 2.2080831e+03 8.7178507e+02 - 2.5228291e+03 2.2716314e+03 9.1776049e+02 - 2.4741964e+03 2.3254784e+03 9.5483401e+02 - 2.4341127e+03 2.3690197e+03 9.8313733e+02 - 2.4029480e+03 2.4022132e+03 1.0034682e+03 - 2.3805776e+03 2.4254953e+03 1.0170496e+03 - 2.3664934e+03 2.4396670e+03 1.0252935e+03 - 2.3599118e+03 2.4457848e+03 1.0296140e+03 - 2.3598571e+03 2.4450739e+03 1.0313029e+03 - 2.3652185e+03 2.4388654e+03 1.0314577e+03 - 2.3747856e+03 2.4285530e+03 1.0309457e+03 - 2.3872712e+03 2.4155625e+03 1.0303893e+03 - 2.4013278e+03 2.4013278e+03 1.0301624e+03 - 2.4155625e+03 2.3872712e+03 1.0303893e+03 - 2.4285530e+03 2.3747856e+03 1.0309457e+03 - 2.4388654e+03 2.3652185e+03 1.0314577e+03 - 2.4450739e+03 2.3598571e+03 1.0313029e+03 - 2.4457848e+03 2.3599118e+03 1.0296140e+03 - 2.4396670e+03 2.3664934e+03 1.0252935e+03 - 2.4254953e+03 2.3805776e+03 1.0170496e+03 - 2.4022132e+03 2.4029480e+03 1.0034682e+03 - 2.3690197e+03 2.4341127e+03 9.8313733e+02 - 2.3254784e+03 2.4741964e+03 9.5483401e+02 - 2.2716314e+03 2.5228291e+03 9.1776049e+02 - 2.2080831e+03 2.5790696e+03 8.7178507e+02 - 2.1360078e+03 2.6414132e+03 8.1760686e+02 - 2.0570472e+03 2.7079179e+03 7.5676034e+02 - 1.9731045e+03 2.7764378e+03 6.9142190e+02 - 1.8860873e+03 2.8449031e+03 6.2406430e+02 - 1.7976764e+03 2.9115591e+03 5.5707323e+02 - 1.7091827e+03 2.9751043e+03 4.9244494e+02 - 1.6215055e+03 3.0347136e+03 4.3163030e+02 - 1.5351720e+03 3.0899763e+03 3.7552051e+02 - 1.4504192e+03 3.1407930e+03 3.2452743e+02 - 1.3672829e+03 3.1872706e+03 2.7870377e+02 - 1.2856755e+03 3.2296332e+03 2.3786321e+02 - 1.2054439e+03 3.2681584e+03 2.0167987e+02 - 1.1264094e+03 3.3031356e+03 1.6976143e+02 - 1.0483917e+03 3.3348412e+03 1.4169797e+02 - 9.7122194e+02 3.3635267e+03 1.1709197e+02 - 8.9474955e+02 3.3894130e+03 9.5575003e+01 - 8.1884414e+02 3.4126907e+03 7.6815496e+01 - 7.4339513e+02 3.4335213e+03 6.0521152e+01 - 6.6831023e+02 3.4520405e+03 4.6438209e+01 - 5.9351324e+02 3.4683611e+03 3.4349076e+01 - 5.1894182e+02 3.4825760e+03 2.4069281e+01 - 4.4454530e+02 3.4947615e+03 1.5444274e+01 - 3.7028261e+02 3.5049789e+03 8.3463907e+00 - 2.9612052e+02 3.5132772e+03 2.6721585e+00 - 2.2203195e+02 3.5196944e+03 -1.6600038e+00 - 1.4799458e+02 3.5242586e+03 -4.7116483e+00 - 7.3989494e+01 3.5269896e+03 -6.5257325e+00 - 2.4067136e-09 3.5278986e+03 -7.1276300e+00 - -7.3989494e+01 3.5269896e+03 -6.5257325e+00 - -1.4799458e+02 3.5242586e+03 -4.7116483e+00 - -2.2203195e+02 3.5196944e+03 -1.6600038e+00 - -2.9612052e+02 3.5132772e+03 2.6721585e+00 - -3.7028261e+02 3.5049789e+03 8.3463907e+00 - -4.4454530e+02 3.4947615e+03 1.5444274e+01 - -5.1894182e+02 3.4825760e+03 2.4069281e+01 - -5.9351324e+02 3.4683611e+03 3.4349076e+01 - -6.6831023e+02 3.4520405e+03 4.6438209e+01 - -7.4339513e+02 3.4335213e+03 6.0521152e+01 - -8.1884414e+02 3.4126907e+03 7.6815496e+01 - -8.9474955e+02 3.3894130e+03 9.5575003e+01 - -9.7122194e+02 3.3635267e+03 1.1709197e+02 - -1.0483917e+03 3.3348412e+03 1.4169797e+02 - -1.1264094e+03 3.3031356e+03 1.6976143e+02 - -1.2054439e+03 3.2681584e+03 2.0167987e+02 - -1.2856755e+03 3.2296332e+03 2.3786321e+02 - -1.3672829e+03 3.1872706e+03 2.7870377e+02 - -1.4504192e+03 3.1407930e+03 3.2452743e+02 - -1.5351720e+03 3.0899763e+03 3.7552051e+02 - -1.6215055e+03 3.0347136e+03 4.3163030e+02 - -1.7091827e+03 2.9751043e+03 4.9244494e+02 - -1.7976764e+03 2.9115591e+03 5.5707323e+02 - -1.8860873e+03 2.8449031e+03 6.2406430e+02 - -1.9731045e+03 2.7764378e+03 6.9142190e+02 - -2.0570472e+03 2.7079179e+03 7.5676034e+02 - -2.1360078e+03 2.6414132e+03 8.1760686e+02 - -2.2080831e+03 2.5790696e+03 8.7178507e+02 - -2.2716314e+03 2.5228291e+03 9.1776049e+02 - -2.3254784e+03 2.4741964e+03 9.5483401e+02 - -2.3690197e+03 2.4341127e+03 9.8313733e+02 - -2.4022132e+03 2.4029480e+03 1.0034682e+03 - -2.4254953e+03 2.3805776e+03 1.0170496e+03 - -2.4396670e+03 2.3664934e+03 1.0252935e+03 - -2.4457848e+03 2.3599118e+03 1.0296140e+03 - -2.4450739e+03 2.3598571e+03 1.0313029e+03 - -2.4388654e+03 2.3652185e+03 1.0314577e+03 - -2.4285530e+03 2.3747856e+03 1.0309457e+03 - -2.4155625e+03 2.3872712e+03 1.0303893e+03 - -2.4013278e+03 2.4013278e+03 1.0301624e+03 - -2.3872712e+03 2.4155625e+03 1.0303893e+03 - -2.3747856e+03 2.4285530e+03 1.0309457e+03 - -2.3652185e+03 2.4388654e+03 1.0314577e+03 - -2.3598571e+03 2.4450739e+03 1.0313029e+03 - -2.3599118e+03 2.4457848e+03 1.0296140e+03 - -2.3664934e+03 2.4396670e+03 1.0252935e+03 - -2.3805776e+03 2.4254953e+03 1.0170496e+03 - -2.4029480e+03 2.4022132e+03 1.0034682e+03 - -2.4341127e+03 2.3690197e+03 9.8313733e+02 - -2.4741964e+03 2.3254784e+03 9.5483401e+02 - -2.5228291e+03 2.2716314e+03 9.1776049e+02 - -2.5790696e+03 2.2080831e+03 8.7178507e+02 - -2.6414132e+03 2.1360078e+03 8.1760686e+02 - -2.7079179e+03 2.0570472e+03 7.5676034e+02 - -2.7764378e+03 1.9731045e+03 6.9142190e+02 - -2.8449031e+03 1.8860873e+03 6.2406430e+02 - -2.9115591e+03 1.7976764e+03 5.5707323e+02 - -2.9751043e+03 1.7091827e+03 4.9244494e+02 - -3.0347136e+03 1.6215055e+03 4.3163030e+02 - -3.0899763e+03 1.5351720e+03 3.7552051e+02 - -3.1407930e+03 1.4504192e+03 3.2452743e+02 - -3.1872706e+03 1.3672829e+03 2.7870377e+02 - -3.2296332e+03 1.2856755e+03 2.3786321e+02 - -3.2681584e+03 1.2054439e+03 2.0167987e+02 - -3.3031356e+03 1.1264094e+03 1.6976143e+02 - -3.3348412e+03 1.0483917e+03 1.4169797e+02 - -3.3635267e+03 9.7122194e+02 1.1709197e+02 - -3.3894130e+03 8.9474955e+02 9.5575003e+01 - -3.4126907e+03 8.1884414e+02 7.6815496e+01 - -3.4335213e+03 7.4339513e+02 6.0521152e+01 - -3.4520405e+03 6.6831023e+02 4.6438209e+01 - -3.4683611e+03 5.9351324e+02 3.4349076e+01 - -3.4825760e+03 5.1894182e+02 2.4069281e+01 - -3.4947615e+03 4.4454530e+02 1.5444274e+01 - -3.5049789e+03 3.7028261e+02 8.3463907e+00 - -3.5132772e+03 2.9612052e+02 2.6721585e+00 - -3.5196944e+03 2.2203195e+02 -1.6600038e+00 - -3.5242586e+03 1.4799458e+02 -4.7116483e+00 - -3.5269896e+03 7.3989494e+01 -6.5257325e+00 - -3.5278986e+03 4.8134273e-09 -7.1276300e+00 - -3.5269896e+03 -7.3989494e+01 -6.5257325e+00 - -3.5242586e+03 -1.4799458e+02 -4.7116483e+00 - -3.5196944e+03 -2.2203195e+02 -1.6600038e+00 - -3.5132772e+03 -2.9612052e+02 2.6721585e+00 - -3.5049789e+03 -3.7028261e+02 8.3463907e+00 - -3.4947615e+03 -4.4454530e+02 1.5444274e+01 - -3.4825760e+03 -5.1894182e+02 2.4069281e+01 - -3.4683611e+03 -5.9351324e+02 3.4349076e+01 - -3.4520405e+03 -6.6831023e+02 4.6438209e+01 - -3.4335213e+03 -7.4339513e+02 6.0521152e+01 - -3.4126907e+03 -8.1884414e+02 7.6815496e+01 - -3.3894130e+03 -8.9474955e+02 9.5575003e+01 - -3.3635267e+03 -9.7122194e+02 1.1709197e+02 - -3.3348412e+03 -1.0483917e+03 1.4169797e+02 - -3.3031356e+03 -1.1264094e+03 1.6976143e+02 - -3.2681584e+03 -1.2054439e+03 2.0167987e+02 - -3.2296332e+03 -1.2856755e+03 2.3786321e+02 - -3.1872706e+03 -1.3672829e+03 2.7870377e+02 - -3.1407930e+03 -1.4504192e+03 3.2452743e+02 - -3.0899763e+03 -1.5351720e+03 3.7552051e+02 - -3.0347136e+03 -1.6215055e+03 4.3163030e+02 - -2.9751043e+03 -1.7091827e+03 4.9244494e+02 - -2.9115591e+03 -1.7976764e+03 5.5707323e+02 - -2.8449031e+03 -1.8860873e+03 6.2406430e+02 - -2.7764378e+03 -1.9731045e+03 6.9142190e+02 - -2.7079179e+03 -2.0570472e+03 7.5676034e+02 - -2.6414132e+03 -2.1360078e+03 8.1760686e+02 - -2.5790696e+03 -2.2080831e+03 8.7178507e+02 - -2.5228291e+03 -2.2716314e+03 9.1776049e+02 - -2.4741964e+03 -2.3254784e+03 9.5483401e+02 - -2.4341127e+03 -2.3690197e+03 9.8313733e+02 - -2.4029480e+03 -2.4022132e+03 1.0034682e+03 - -2.3805776e+03 -2.4254953e+03 1.0170496e+03 - -2.3664934e+03 -2.4396670e+03 1.0252935e+03 - -2.3599118e+03 -2.4457848e+03 1.0296140e+03 - -2.3598571e+03 -2.4450739e+03 1.0313029e+03 - -2.3652185e+03 -2.4388654e+03 1.0314577e+03 - -2.3747856e+03 -2.4285530e+03 1.0309457e+03 - -2.3872712e+03 -2.4155625e+03 1.0303893e+03 - -2.4013278e+03 -2.4013278e+03 1.0301624e+03 - -2.4155625e+03 -2.3872712e+03 1.0303893e+03 - -2.4285530e+03 -2.3747856e+03 1.0309457e+03 - -2.4388654e+03 -2.3652185e+03 1.0314577e+03 - -2.4450739e+03 -2.3598571e+03 1.0313029e+03 - -2.4457848e+03 -2.3599118e+03 1.0296140e+03 - -2.4396670e+03 -2.3664934e+03 1.0252935e+03 - -2.4254953e+03 -2.3805776e+03 1.0170496e+03 - -2.4022132e+03 -2.4029480e+03 1.0034682e+03 - -2.3690197e+03 -2.4341127e+03 9.8313733e+02 - -2.3254784e+03 -2.4741964e+03 9.5483401e+02 - -2.2716314e+03 -2.5228291e+03 9.1776049e+02 - -2.2080831e+03 -2.5790696e+03 8.7178507e+02 - -2.1360078e+03 -2.6414132e+03 8.1760686e+02 - -2.0570472e+03 -2.7079179e+03 7.5676034e+02 - -1.9731045e+03 -2.7764378e+03 6.9142190e+02 - -1.8860873e+03 -2.8449031e+03 6.2406430e+02 - -1.7976764e+03 -2.9115591e+03 5.5707323e+02 - -1.7091827e+03 -2.9751043e+03 4.9244494e+02 - -1.6215055e+03 -3.0347136e+03 4.3163030e+02 - -1.5351720e+03 -3.0899763e+03 3.7552051e+02 - -1.4504192e+03 -3.1407930e+03 3.2452743e+02 - -1.3672829e+03 -3.1872706e+03 2.7870377e+02 - -1.2856755e+03 -3.2296332e+03 2.3786321e+02 - -1.2054439e+03 -3.2681584e+03 2.0167987e+02 - -1.1264094e+03 -3.3031356e+03 1.6976143e+02 - -1.0483917e+03 -3.3348412e+03 1.4169797e+02 - -9.7122194e+02 -3.3635267e+03 1.1709197e+02 - -8.9474955e+02 -3.3894130e+03 9.5575003e+01 - -8.1884414e+02 -3.4126907e+03 7.6815496e+01 - -7.4339513e+02 -3.4335213e+03 6.0521152e+01 - -6.6831023e+02 -3.4520405e+03 4.6438209e+01 - -5.9351324e+02 -3.4683611e+03 3.4349076e+01 - -5.1894182e+02 -3.4825760e+03 2.4069281e+01 - -4.4454530e+02 -3.4947615e+03 1.5444274e+01 - -3.7028261e+02 -3.5049789e+03 8.3463907e+00 - -2.9612052e+02 -3.5132772e+03 2.6721585e+00 - -2.2203195e+02 -3.5196944e+03 -1.6600038e+00 - -1.4799458e+02 -3.5242586e+03 -4.7116483e+00 - -7.3989494e+01 -3.5269896e+03 -6.5257325e+00 - 0.0000000e+00 -3.5278986e+03 -7.1276300e+00 - 7.3989494e+01 -3.5269896e+03 -6.5257325e+00 - 1.4799458e+02 -3.5242586e+03 -4.7116483e+00 - 2.2203195e+02 -3.5196944e+03 -1.6600038e+00 - 2.9612052e+02 -3.5132772e+03 2.6721585e+00 - 3.7028261e+02 -3.5049789e+03 8.3463907e+00 - 4.4454530e+02 -3.4947615e+03 1.5444274e+01 - 5.1894182e+02 -3.4825760e+03 2.4069281e+01 - 5.9351324e+02 -3.4683611e+03 3.4349076e+01 - 6.6831023e+02 -3.4520405e+03 4.6438209e+01 - 7.4339513e+02 -3.4335213e+03 6.0521152e+01 - 8.1884414e+02 -3.4126907e+03 7.6815496e+01 - 8.9474955e+02 -3.3894130e+03 9.5575003e+01 - 9.7122194e+02 -3.3635267e+03 1.1709197e+02 - 1.0483917e+03 -3.3348412e+03 1.4169797e+02 - 1.1264094e+03 -3.3031356e+03 1.6976143e+02 - 1.2054439e+03 -3.2681584e+03 2.0167987e+02 - 1.2856755e+03 -3.2296332e+03 2.3786321e+02 - 1.3672829e+03 -3.1872706e+03 2.7870377e+02 - 1.4504192e+03 -3.1407930e+03 3.2452743e+02 - 1.5351720e+03 -3.0899763e+03 3.7552051e+02 - 1.6215055e+03 -3.0347136e+03 4.3163030e+02 - 1.7091827e+03 -2.9751043e+03 4.9244494e+02 - 1.7976764e+03 -2.9115591e+03 5.5707323e+02 - 1.8860873e+03 -2.8449031e+03 6.2406430e+02 - 1.9731045e+03 -2.7764378e+03 6.9142190e+02 - 2.0570472e+03 -2.7079179e+03 7.5676034e+02 - 2.1360078e+03 -2.6414132e+03 8.1760686e+02 - 2.2080831e+03 -2.5790696e+03 8.7178507e+02 - 2.2716314e+03 -2.5228291e+03 9.1776049e+02 - 2.3254784e+03 -2.4741964e+03 9.5483401e+02 - 2.3690197e+03 -2.4341127e+03 9.8313733e+02 - 2.4022132e+03 -2.4029480e+03 1.0034682e+03 - 2.4254953e+03 -2.3805776e+03 1.0170496e+03 - 2.4396670e+03 -2.3664934e+03 1.0252935e+03 - 2.4457848e+03 -2.3599118e+03 1.0296140e+03 - 2.4450739e+03 -2.3598571e+03 1.0313029e+03 - 2.4388654e+03 -2.3652185e+03 1.0314577e+03 - 2.4285530e+03 -2.3747856e+03 1.0309457e+03 - 2.4155625e+03 -2.3872712e+03 1.0303893e+03 - 2.4013278e+03 -2.4013278e+03 1.0301624e+03 - 2.3872712e+03 -2.4155625e+03 1.0303893e+03 - 2.3747856e+03 -2.4285530e+03 1.0309457e+03 - 2.3652185e+03 -2.4388654e+03 1.0314577e+03 - 2.3598571e+03 -2.4450739e+03 1.0313029e+03 - 2.3599118e+03 -2.4457848e+03 1.0296140e+03 - 2.3664934e+03 -2.4396670e+03 1.0252935e+03 - 2.3805776e+03 -2.4254953e+03 1.0170496e+03 - 2.4029480e+03 -2.4022132e+03 1.0034682e+03 - 2.4341127e+03 -2.3690197e+03 9.8313733e+02 - 2.4741964e+03 -2.3254784e+03 9.5483401e+02 - 2.5228291e+03 -2.2716314e+03 9.1776049e+02 - 2.5790696e+03 -2.2080831e+03 8.7178507e+02 - 2.6414132e+03 -2.1360078e+03 8.1760686e+02 - 2.7079179e+03 -2.0570472e+03 7.5676034e+02 - 2.7764378e+03 -1.9731045e+03 6.9142190e+02 - 2.8449031e+03 -1.8860873e+03 6.2406430e+02 - 2.9115591e+03 -1.7976764e+03 5.5707323e+02 - 2.9751043e+03 -1.7091827e+03 4.9244494e+02 - 3.0347136e+03 -1.6215055e+03 4.3163030e+02 - 3.0899763e+03 -1.5351720e+03 3.7552051e+02 - 3.1407930e+03 -1.4504192e+03 3.2452743e+02 - 3.1872706e+03 -1.3672829e+03 2.7870377e+02 - 3.2296332e+03 -1.2856755e+03 2.3786321e+02 - 3.2681584e+03 -1.2054439e+03 2.0167987e+02 - 3.3031356e+03 -1.1264094e+03 1.6976143e+02 - 3.3348412e+03 -1.0483917e+03 1.4169797e+02 - 3.3635267e+03 -9.7122194e+02 1.1709197e+02 - 3.3894130e+03 -8.9474955e+02 9.5575003e+01 - 3.4126907e+03 -8.1884414e+02 7.6815496e+01 - 3.4335213e+03 -7.4339513e+02 6.0521152e+01 - 3.4520405e+03 -6.6831023e+02 4.6438209e+01 - 3.4683611e+03 -5.9351324e+02 3.4349076e+01 - 3.4825760e+03 -5.1894182e+02 2.4069281e+01 - 3.4947615e+03 -4.4454530e+02 1.5444274e+01 - 3.5049789e+03 -3.7028261e+02 8.3463907e+00 - 3.5132772e+03 -2.9612052e+02 2.6721585e+00 - 3.5196944e+03 -2.2203195e+02 -1.6600038e+00 - 3.5242586e+03 -1.4799458e+02 -4.7116483e+00 - 3.5269896e+03 -7.3989494e+01 -6.5257325e+00 - 3.5278986e+03 0.0000000e+00 -7.1276300e+00 - 3.5369277e+03 0.0000000e+00 -3.7947014e+01 - 3.5360746e+03 7.2991129e+01 -3.7463233e+01 - 3.5335126e+03 1.4598690e+02 -3.6005201e+01 - 3.5292334e+03 2.1899278e+02 -3.3552678e+01 - 3.5232227e+03 2.9201599e+02 -3.0071358e+01 - 3.5154601e+03 3.6506639e+02 -2.5511991e+01 - 3.5059178e+03 4.3815757e+02 -1.9809119e+01 - 3.4945598e+03 5.1130799e+02 -1.2879404e+01 - 3.4813408e+03 5.8454238e+02 -4.6195019e+00 - 3.4662042e+03 6.5789331e+02 5.0965394e+00 - 3.4490800e+03 7.3140301e+02 1.6420387e+01 - 3.4298824e+03 8.0512557e+02 2.9533021e+01 - 3.4085068e+03 8.7912937e+02 4.4648737e+01 - 3.3848258e+03 9.5349987e+02 6.2019388e+01 - 3.3586859e+03 1.0283425e+03 8.1938421e+01 - 3.3299028e+03 1.1037855e+03 1.0474400e+02 - 3.2982581e+03 1.1799820e+03 1.3081987e+02 - 3.2634966e+03 1.2571107e+03 1.6059175e+02 - 3.2253283e+03 1.3353725e+03 1.9451587e+02 - 3.1834352e+03 1.4149810e+03 2.3305443e+02 - 3.1374919e+03 1.4961424e+03 2.7663105e+02 - 3.0872028e+03 1.5790182e+03 3.2555803e+02 - 3.0323671e+03 1.6636645e+03 3.7992865e+02 - 2.9729768e+03 1.7499430e+03 4.3947478e+02 - 2.9093460e+03 1.8374076e+03 5.0340724e+02 - 2.8422521e+03 1.9251851e+03 5.7028354e+02 - 2.7730435e+03 2.0118945e+03 6.3797698e+02 - 2.7036477e+03 2.0956629e+03 7.0382586e+02 - 2.6364244e+03 2.1742852e+03 7.6499270e+02 - 2.5738630e+03 2.2455207e+03 8.1896045e+02 - 2.5182081e+03 2.3074447e+03 8.6399611e+02 - 2.4711418e+03 2.3587344e+03 8.9940596e+02 - 2.4336204e+03 2.3988031e+03 9.2551058e+02 - 2.4058818e+03 2.4277738e+03 9.4340128e+02 - 2.3875665e+03 2.4463470e+03 9.5460921e+02 - 2.3778776e+03 2.4556364e+03 9.6080181e+02 - 2.3757238e+03 2.4570213e+03 9.6356277e+02 - 2.3798233e+03 2.4520360e+03 9.6425980e+02 - 2.3887696e+03 2.4422970e+03 9.6397902e+02 - 2.4010698e+03 2.4294554e+03 9.6349955e+02 - 2.4151668e+03 2.4151668e+03 9.6328800e+02 - 2.4294554e+03 2.4010698e+03 9.6349955e+02 - 2.4422970e+03 2.3887696e+03 9.6397902e+02 - 2.4520360e+03 2.3798233e+03 9.6425980e+02 - 2.4570213e+03 2.3757238e+03 9.6356277e+02 - 2.4556364e+03 2.3778776e+03 9.6080181e+02 - 2.4463470e+03 2.3875665e+03 9.5460921e+02 - 2.4277738e+03 2.4058818e+03 9.4340128e+02 - 2.3988031e+03 2.4336204e+03 9.2551058e+02 - 2.3587344e+03 2.4711418e+03 8.9940596e+02 - 2.3074447e+03 2.5182081e+03 8.6399611e+02 - 2.2455207e+03 2.5738630e+03 8.1896045e+02 - 2.1742852e+03 2.6364244e+03 7.6499270e+02 - 2.0956629e+03 2.7036477e+03 7.0382586e+02 - 2.0118945e+03 2.7730435e+03 6.3797698e+02 - 1.9251851e+03 2.8422521e+03 5.7028354e+02 - 1.8374076e+03 2.9093460e+03 5.0340724e+02 - 1.7499430e+03 2.9729768e+03 4.3947478e+02 - 1.6636645e+03 3.0323671e+03 3.7992865e+02 - 1.5790182e+03 3.0872028e+03 3.2555803e+02 - 1.4961424e+03 3.1374919e+03 2.7663105e+02 - 1.4149810e+03 3.1834352e+03 2.3305443e+02 - 1.3353725e+03 3.2253283e+03 1.9451587e+02 - 1.2571107e+03 3.2634966e+03 1.6059175e+02 - 1.1799820e+03 3.2982581e+03 1.3081987e+02 - 1.1037855e+03 3.3299028e+03 1.0474400e+02 - 1.0283425e+03 3.3586859e+03 8.1938421e+01 - 9.5349987e+02 3.3848258e+03 6.2019388e+01 - 8.7912937e+02 3.4085068e+03 4.4648737e+01 - 8.0512557e+02 3.4298824e+03 2.9533021e+01 - 7.3140301e+02 3.4490800e+03 1.6420387e+01 - 6.5789331e+02 3.4662042e+03 5.0965394e+00 - 5.8454238e+02 3.4813408e+03 -4.6195019e+00 - 5.1130799e+02 3.4945598e+03 -1.2879404e+01 - 4.3815757e+02 3.5059178e+03 -1.9809119e+01 - 3.6506639e+02 3.5154601e+03 -2.5511991e+01 - 2.9201599e+02 3.5232227e+03 -3.0071358e+01 - 2.1899278e+02 3.5292334e+03 -3.3552678e+01 - 1.4598690e+02 3.5335126e+03 -3.6005201e+01 - 7.2991129e+01 3.5360746e+03 -3.7463233e+01 - 0.0000000e+00 3.5369277e+03 -3.7947014e+01 - -7.2991129e+01 3.5360746e+03 -3.7463233e+01 - -1.4598690e+02 3.5335126e+03 -3.6005201e+01 - -2.1899278e+02 3.5292334e+03 -3.3552678e+01 - -2.9201599e+02 3.5232227e+03 -3.0071358e+01 - -3.6506639e+02 3.5154601e+03 -2.5511991e+01 - -4.3815757e+02 3.5059178e+03 -1.9809119e+01 - -5.1130799e+02 3.4945598e+03 -1.2879404e+01 - -5.8454238e+02 3.4813408e+03 -4.6195019e+00 - -6.5789331e+02 3.4662042e+03 5.0965394e+00 - -7.3140301e+02 3.4490800e+03 1.6420387e+01 - -8.0512557e+02 3.4298824e+03 2.9533021e+01 - -8.7912937e+02 3.4085068e+03 4.4648737e+01 - -9.5349987e+02 3.3848258e+03 6.2019388e+01 - -1.0283425e+03 3.3586859e+03 8.1938421e+01 - -1.1037855e+03 3.3299028e+03 1.0474400e+02 - -1.1799820e+03 3.2982581e+03 1.3081987e+02 - -1.2571107e+03 3.2634966e+03 1.6059175e+02 - -1.3353725e+03 3.2253283e+03 1.9451587e+02 - -1.4149810e+03 3.1834352e+03 2.3305443e+02 - -1.4961424e+03 3.1374919e+03 2.7663105e+02 - -1.5790182e+03 3.0872028e+03 3.2555803e+02 - -1.6636645e+03 3.0323671e+03 3.7992865e+02 - -1.7499430e+03 2.9729768e+03 4.3947478e+02 - -1.8374076e+03 2.9093460e+03 5.0340724e+02 - -1.9251851e+03 2.8422521e+03 5.7028354e+02 - -2.0118945e+03 2.7730435e+03 6.3797698e+02 - -2.0956629e+03 2.7036477e+03 7.0382586e+02 - -2.1742852e+03 2.6364244e+03 7.6499270e+02 - -2.2455207e+03 2.5738630e+03 8.1896045e+02 - -2.3074447e+03 2.5182081e+03 8.6399611e+02 - -2.3587344e+03 2.4711418e+03 8.9940596e+02 - -2.3988031e+03 2.4336204e+03 9.2551058e+02 - -2.4277738e+03 2.4058818e+03 9.4340128e+02 - -2.4463470e+03 2.3875665e+03 9.5460921e+02 - -2.4556364e+03 2.3778776e+03 9.6080181e+02 - -2.4570213e+03 2.3757238e+03 9.6356277e+02 - -2.4520360e+03 2.3798233e+03 9.6425980e+02 - -2.4422970e+03 2.3887696e+03 9.6397902e+02 - -2.4294554e+03 2.4010698e+03 9.6349955e+02 - -2.4151668e+03 2.4151668e+03 9.6328800e+02 - -2.4010698e+03 2.4294554e+03 9.6349955e+02 - -2.3887696e+03 2.4422970e+03 9.6397902e+02 - -2.3798233e+03 2.4520360e+03 9.6425980e+02 - -2.3757238e+03 2.4570213e+03 9.6356277e+02 - -2.3778776e+03 2.4556364e+03 9.6080181e+02 - -2.3875665e+03 2.4463470e+03 9.5460921e+02 - -2.4058818e+03 2.4277738e+03 9.4340128e+02 - -2.4336204e+03 2.3988031e+03 9.2551058e+02 - -2.4711418e+03 2.3587344e+03 8.9940596e+02 - -2.5182081e+03 2.3074447e+03 8.6399611e+02 - -2.5738630e+03 2.2455207e+03 8.1896045e+02 - -2.6364244e+03 2.1742852e+03 7.6499270e+02 - -2.7036477e+03 2.0956629e+03 7.0382586e+02 - -2.7730435e+03 2.0118945e+03 6.3797698e+02 - -2.8422521e+03 1.9251851e+03 5.7028354e+02 - -2.9093460e+03 1.8374076e+03 5.0340724e+02 - -2.9729768e+03 1.7499430e+03 4.3947478e+02 - -3.0323671e+03 1.6636645e+03 3.7992865e+02 - -3.0872028e+03 1.5790182e+03 3.2555803e+02 - -3.1374919e+03 1.4961424e+03 2.7663105e+02 - -3.1834352e+03 1.4149810e+03 2.3305443e+02 - -3.2253283e+03 1.3353725e+03 1.9451587e+02 - -3.2634966e+03 1.2571107e+03 1.6059175e+02 - -3.2982581e+03 1.1799820e+03 1.3081987e+02 - -3.3299028e+03 1.1037855e+03 1.0474400e+02 - -3.3586859e+03 1.0283425e+03 8.1938421e+01 - -3.3848258e+03 9.5349987e+02 6.2019388e+01 - -3.4085068e+03 8.7912937e+02 4.4648737e+01 - -3.4298824e+03 8.0512557e+02 2.9533021e+01 - -3.4490800e+03 7.3140301e+02 1.6420387e+01 - -3.4662042e+03 6.5789331e+02 5.0965394e+00 - -3.4813408e+03 5.8454238e+02 -4.6195019e+00 - -3.4945598e+03 5.1130799e+02 -1.2879404e+01 - -3.5059178e+03 4.3815757e+02 -1.9809119e+01 - -3.5154601e+03 3.6506639e+02 -2.5511991e+01 - -3.5232227e+03 2.9201599e+02 -3.0071358e+01 - -3.5292334e+03 2.1899278e+02 -3.3552678e+01 - -3.5335126e+03 1.4598690e+02 -3.6005201e+01 - -3.5360746e+03 7.2991129e+01 -3.7463233e+01 - -3.5369277e+03 0.0000000e+00 -3.7947014e+01 - -3.5360746e+03 -7.2991129e+01 -3.7463233e+01 - -3.5335126e+03 -1.4598690e+02 -3.6005201e+01 - -3.5292334e+03 -2.1899278e+02 -3.3552678e+01 - -3.5232227e+03 -2.9201599e+02 -3.0071358e+01 - -3.5154601e+03 -3.6506639e+02 -2.5511991e+01 - -3.5059178e+03 -4.3815757e+02 -1.9809119e+01 - -3.4945598e+03 -5.1130799e+02 -1.2879404e+01 - -3.4813408e+03 -5.8454238e+02 -4.6195018e+00 - -3.4662042e+03 -6.5789331e+02 5.0965394e+00 - -3.4490800e+03 -7.3140301e+02 1.6420387e+01 - -3.4298824e+03 -8.0512557e+02 2.9533021e+01 - -3.4085068e+03 -8.7912937e+02 4.4648737e+01 - -3.3848258e+03 -9.5349987e+02 6.2019388e+01 - -3.3586859e+03 -1.0283425e+03 8.1938421e+01 - -3.3299028e+03 -1.1037855e+03 1.0474400e+02 - -3.2982581e+03 -1.1799820e+03 1.3081987e+02 - -3.2634966e+03 -1.2571107e+03 1.6059175e+02 - -3.2253283e+03 -1.3353725e+03 1.9451587e+02 - -3.1834352e+03 -1.4149810e+03 2.3305443e+02 - -3.1374919e+03 -1.4961424e+03 2.7663105e+02 - -3.0872028e+03 -1.5790182e+03 3.2555803e+02 - -3.0323671e+03 -1.6636645e+03 3.7992865e+02 - -2.9729768e+03 -1.7499430e+03 4.3947478e+02 - -2.9093460e+03 -1.8374076e+03 5.0340724e+02 - -2.8422521e+03 -1.9251851e+03 5.7028354e+02 - -2.7730435e+03 -2.0118945e+03 6.3797698e+02 - -2.7036477e+03 -2.0956629e+03 7.0382586e+02 - -2.6364244e+03 -2.1742852e+03 7.6499270e+02 - -2.5738630e+03 -2.2455207e+03 8.1896045e+02 - -2.5182081e+03 -2.3074447e+03 8.6399611e+02 - -2.4711418e+03 -2.3587344e+03 8.9940596e+02 - -2.4336204e+03 -2.3988031e+03 9.2551058e+02 - -2.4058818e+03 -2.4277738e+03 9.4340128e+02 - -2.3875665e+03 -2.4463470e+03 9.5460921e+02 - -2.3778776e+03 -2.4556364e+03 9.6080181e+02 - -2.3757238e+03 -2.4570213e+03 9.6356277e+02 - -2.3798233e+03 -2.4520360e+03 9.6425980e+02 - -2.3887696e+03 -2.4422970e+03 9.6397902e+02 - -2.4010698e+03 -2.4294554e+03 9.6349955e+02 - -2.4151668e+03 -2.4151668e+03 9.6328800e+02 - -2.4294554e+03 -2.4010698e+03 9.6349955e+02 - -2.4422970e+03 -2.3887696e+03 9.6397902e+02 - -2.4520360e+03 -2.3798233e+03 9.6425980e+02 - -2.4570213e+03 -2.3757238e+03 9.6356277e+02 - -2.4556364e+03 -2.3778776e+03 9.6080181e+02 - -2.4463470e+03 -2.3875665e+03 9.5460921e+02 - -2.4277738e+03 -2.4058818e+03 9.4340128e+02 - -2.3988031e+03 -2.4336204e+03 9.2551058e+02 - -2.3587344e+03 -2.4711418e+03 8.9940596e+02 - -2.3074447e+03 -2.5182081e+03 8.6399611e+02 - -2.2455207e+03 -2.5738630e+03 8.1896045e+02 - -2.1742852e+03 -2.6364244e+03 7.6499270e+02 - -2.0956629e+03 -2.7036477e+03 7.0382586e+02 - -2.0118945e+03 -2.7730435e+03 6.3797698e+02 - -1.9251851e+03 -2.8422521e+03 5.7028354e+02 - -1.8374076e+03 -2.9093460e+03 5.0340724e+02 - -1.7499430e+03 -2.9729768e+03 4.3947478e+02 - -1.6636645e+03 -3.0323671e+03 3.7992865e+02 - -1.5790182e+03 -3.0872028e+03 3.2555803e+02 - -1.4961424e+03 -3.1374919e+03 2.7663105e+02 - -1.4149810e+03 -3.1834352e+03 2.3305443e+02 - -1.3353725e+03 -3.2253283e+03 1.9451587e+02 - -1.2571107e+03 -3.2634966e+03 1.6059175e+02 - -1.1799820e+03 -3.2982581e+03 1.3081987e+02 - -1.1037855e+03 -3.3299028e+03 1.0474400e+02 - -1.0283425e+03 -3.3586859e+03 8.1938421e+01 - -9.5349987e+02 -3.3848258e+03 6.2019388e+01 - -8.7912937e+02 -3.4085068e+03 4.4648737e+01 - -8.0512557e+02 -3.4298824e+03 2.9533021e+01 - -7.3140301e+02 -3.4490800e+03 1.6420387e+01 - -6.5789331e+02 -3.4662042e+03 5.0965394e+00 - -5.8454238e+02 -3.4813408e+03 -4.6195019e+00 - -5.1130799e+02 -3.4945598e+03 -1.2879404e+01 - -4.3815757e+02 -3.5059178e+03 -1.9809119e+01 - -3.6506639e+02 -3.5154601e+03 -2.5511991e+01 - -2.9201599e+02 -3.5232227e+03 -3.0071358e+01 - -2.1899278e+02 -3.5292334e+03 -3.3552678e+01 - -1.4598690e+02 -3.5335126e+03 -3.6005201e+01 - -7.2991129e+01 -3.5360746e+03 -3.7463233e+01 - 0.0000000e+00 -3.5369277e+03 -3.7947014e+01 - 7.2991129e+01 -3.5360746e+03 -3.7463233e+01 - 1.4598690e+02 -3.5335126e+03 -3.6005201e+01 - 2.1899278e+02 -3.5292334e+03 -3.3552678e+01 - 2.9201599e+02 -3.5232227e+03 -3.0071358e+01 - 3.6506639e+02 -3.5154601e+03 -2.5511991e+01 - 4.3815757e+02 -3.5059178e+03 -1.9809119e+01 - 5.1130799e+02 -3.4945598e+03 -1.2879404e+01 - 5.8454238e+02 -3.4813408e+03 -4.6195019e+00 - 6.5789331e+02 -3.4662042e+03 5.0965394e+00 - 7.3140301e+02 -3.4490800e+03 1.6420387e+01 - 8.0512557e+02 -3.4298824e+03 2.9533021e+01 - 8.7912937e+02 -3.4085068e+03 4.4648737e+01 - 9.5349987e+02 -3.3848258e+03 6.2019388e+01 - 1.0283425e+03 -3.3586859e+03 8.1938421e+01 - 1.1037855e+03 -3.3299028e+03 1.0474400e+02 - 1.1799820e+03 -3.2982581e+03 1.3081987e+02 - 1.2571107e+03 -3.2634966e+03 1.6059175e+02 - 1.3353725e+03 -3.2253283e+03 1.9451587e+02 - 1.4149810e+03 -3.1834352e+03 2.3305443e+02 - 1.4961424e+03 -3.1374919e+03 2.7663105e+02 - 1.5790182e+03 -3.0872028e+03 3.2555803e+02 - 1.6636645e+03 -3.0323671e+03 3.7992865e+02 - 1.7499430e+03 -2.9729768e+03 4.3947478e+02 - 1.8374076e+03 -2.9093460e+03 5.0340724e+02 - 1.9251851e+03 -2.8422521e+03 5.7028354e+02 - 2.0118945e+03 -2.7730435e+03 6.3797698e+02 - 2.0956629e+03 -2.7036477e+03 7.0382586e+02 - 2.1742852e+03 -2.6364244e+03 7.6499270e+02 - 2.2455207e+03 -2.5738630e+03 8.1896045e+02 - 2.3074447e+03 -2.5182081e+03 8.6399611e+02 - 2.3587344e+03 -2.4711418e+03 8.9940596e+02 - 2.3988031e+03 -2.4336204e+03 9.2551058e+02 - 2.4277738e+03 -2.4058818e+03 9.4340128e+02 - 2.4463470e+03 -2.3875665e+03 9.5460921e+02 - 2.4556364e+03 -2.3778776e+03 9.6080181e+02 - 2.4570213e+03 -2.3757238e+03 9.6356277e+02 - 2.4520360e+03 -2.3798233e+03 9.6425980e+02 - 2.4422970e+03 -2.3887696e+03 9.6397902e+02 - 2.4294554e+03 -2.4010698e+03 9.6349955e+02 - 2.4151668e+03 -2.4151668e+03 9.6328800e+02 - 2.4010698e+03 -2.4294554e+03 9.6349955e+02 - 2.3887696e+03 -2.4422970e+03 9.6397902e+02 - 2.3798233e+03 -2.4520360e+03 9.6425980e+02 - 2.3757238e+03 -2.4570213e+03 9.6356277e+02 - 2.3778776e+03 -2.4556364e+03 9.6080181e+02 - 2.3875665e+03 -2.4463470e+03 9.5460921e+02 - 2.4058818e+03 -2.4277738e+03 9.4340128e+02 - 2.4336204e+03 -2.3988031e+03 9.2551058e+02 - 2.4711418e+03 -2.3587344e+03 8.9940596e+02 - 2.5182081e+03 -2.3074447e+03 8.6399611e+02 - 2.5738630e+03 -2.2455207e+03 8.1896045e+02 - 2.6364244e+03 -2.1742852e+03 7.6499270e+02 - 2.7036477e+03 -2.0956629e+03 7.0382586e+02 - 2.7730435e+03 -2.0118945e+03 6.3797698e+02 - 2.8422521e+03 -1.9251851e+03 5.7028354e+02 - 2.9093460e+03 -1.8374076e+03 5.0340724e+02 - 2.9729768e+03 -1.7499430e+03 4.3947478e+02 - 3.0323671e+03 -1.6636645e+03 3.7992865e+02 - 3.0872028e+03 -1.5790182e+03 3.2555803e+02 - 3.1374919e+03 -1.4961424e+03 2.7663105e+02 - 3.1834352e+03 -1.4149810e+03 2.3305443e+02 - 3.2253283e+03 -1.3353725e+03 1.9451587e+02 - 3.2634966e+03 -1.2571107e+03 1.6059175e+02 - 3.2982581e+03 -1.1799820e+03 1.3081987e+02 - 3.3299028e+03 -1.1037855e+03 1.0474400e+02 - 3.3586859e+03 -1.0283425e+03 8.1938421e+01 - 3.3848258e+03 -9.5349987e+02 6.2019388e+01 - 3.4085068e+03 -8.7912937e+02 4.4648737e+01 - 3.4298824e+03 -8.0512557e+02 2.9533021e+01 - 3.4490800e+03 -7.3140301e+02 1.6420387e+01 - 3.4662042e+03 -6.5789331e+02 5.0965394e+00 - 3.4813408e+03 -5.8454238e+02 -4.6195019e+00 - 3.4945598e+03 -5.1130799e+02 -1.2879404e+01 - 3.5059178e+03 -4.3815757e+02 -1.9809119e+01 - 3.5154601e+03 -3.6506639e+02 -2.5511991e+01 - 3.5232227e+03 -2.9201599e+02 -3.0071358e+01 - 3.5292334e+03 -2.1899278e+02 -3.3552678e+01 - 3.5335126e+03 -1.4598690e+02 -3.6005201e+01 - 3.5360746e+03 -7.2991129e+01 -3.7463233e+01 - 3.5369277e+03 0.0000000e+00 -3.7947014e+01 - 3.5438872e+03 0.0000000e+00 -6.3549764e+01 - 3.5430780e+03 7.2197813e+01 -6.3165055e+01 - 3.5406484e+03 1.4439167e+02 -6.2005670e+01 - 3.5365925e+03 2.1657824e+02 -6.0055690e+01 - 3.5309004e+03 2.8875549e+02 -5.7288112e+01 - 3.5235576e+03 3.6092340e+02 -5.3664124e+01 - 3.5145444e+03 4.3308474e+02 -4.9132058e+01 - 3.5038354e+03 5.0524598e+02 -4.3625970e+01 - 3.4913980e+03 5.7741841e+02 -3.7063829e+01 - 3.4771916e+03 6.4961935e+02 -2.9345229e+01 - 3.4611655e+03 7.2187369e+02 -2.0348585e+01 - 3.4432570e+03 7.9421578e+02 -9.9277343e+00 - 3.4233886e+03 8.6669159e+02 2.0920922e+00 - 3.4014649e+03 9.3936138e+02 1.5918942e+01 - 3.3773688e+03 1.0123029e+03 3.1799383e+01 - 3.3509564e+03 1.0856148e+03 5.0024078e+01 - 3.3220527e+03 1.1594207e+03 7.0933128e+01 - 3.2904453e+03 1.2338730e+03 9.4920143e+01 - 3.2558801e+03 1.3091557e+03 1.2243304e+02 - 3.2180587e+03 1.3854849e+03 1.5396824e+02 - 3.1766409e+03 1.4631039e+03 1.9005276e+02 - 3.1312584e+03 1.5422679e+03 2.3120599e+02 - 3.0815471e+03 1.6232109e+03 2.7787009e+02 - 3.0272095e+03 1.7060857e+03 3.3029673e+02 - 2.9681207e+03 1.7908652e+03 3.8838306e+02 - 2.9044813e+03 1.8772029e+03 4.5146716e+02 - 2.8370056e+03 1.9642692e+03 5.1813017e+02 - 2.7670901e+03 2.0506126e+03 5.8610099e+02 - 2.6968688e+03 2.1341363e+03 6.5238761e+02 - 2.6290583e+03 2.2122730e+03 7.1370839e+02 - 2.5665689e+03 2.2823721e+03 7.6714425e+02 - 2.5119952e+03 2.3421855e+03 8.1076470e+02 - 2.4671833e+03 2.3902620e+03 8.4395495e+02 - 2.4330320e+03 2.4261112e+03 8.6733793e+02 - 2.4095393e+03 2.4501317e+03 8.8240332e+02 - 2.3959983e+03 2.4634008e+03 8.9105197e+02 - 2.3912248e+03 2.4674390e+03 8.9521622e+02 - 2.3937416e+03 2.4640176e+03 8.9661441e+02 - 2.4019005e+03 2.4550277e+03 8.9662479e+02 - 2.4139510e+03 2.4424027e+03 8.9623694e+02 - 2.4280747e+03 2.4280747e+03 8.9604223e+02 - 2.4424027e+03 2.4139510e+03 8.9623694e+02 - 2.4550277e+03 2.4019005e+03 8.9662479e+02 - 2.4640176e+03 2.3937416e+03 8.9661441e+02 - 2.4674390e+03 2.3912248e+03 8.9521622e+02 - 2.4634008e+03 2.3959983e+03 8.9105197e+02 - 2.4501317e+03 2.4095393e+03 8.8240332e+02 - 2.4261112e+03 2.4330320e+03 8.6733793e+02 - 2.3902620e+03 2.4671833e+03 8.4395495e+02 - 2.3421855e+03 2.5119952e+03 8.1076470e+02 - 2.2823721e+03 2.5665689e+03 7.6714425e+02 - 2.2122730e+03 2.6290583e+03 7.1370839e+02 - 2.1341363e+03 2.6968688e+03 6.5238761e+02 - 2.0506126e+03 2.7670901e+03 5.8610099e+02 - 1.9642692e+03 2.8370056e+03 5.1813017e+02 - 1.8772029e+03 2.9044813e+03 4.5146716e+02 - 1.7908652e+03 2.9681207e+03 3.8838306e+02 - 1.7060857e+03 3.0272095e+03 3.3029673e+02 - 1.6232109e+03 3.0815471e+03 2.7787009e+02 - 1.5422679e+03 3.1312584e+03 2.3120599e+02 - 1.4631039e+03 3.1766409e+03 1.9005276e+02 - 1.3854849e+03 3.2180587e+03 1.5396824e+02 - 1.3091557e+03 3.2558801e+03 1.2243304e+02 - 1.2338730e+03 3.2904453e+03 9.4920143e+01 - 1.1594207e+03 3.3220527e+03 7.0933128e+01 - 1.0856148e+03 3.3509564e+03 5.0024078e+01 - 1.0123029e+03 3.3773688e+03 3.1799383e+01 - 9.3936138e+02 3.4014649e+03 1.5918942e+01 - 8.6669159e+02 3.4233886e+03 2.0920922e+00 - 7.9421578e+02 3.4432570e+03 -9.9277343e+00 - 7.2187369e+02 3.4611655e+03 -2.0348585e+01 - 6.4961935e+02 3.4771916e+03 -2.9345229e+01 - 5.7741841e+02 3.4913980e+03 -3.7063829e+01 - 5.0524598e+02 3.5038354e+03 -4.3625970e+01 - 4.3308474e+02 3.5145444e+03 -4.9132058e+01 - 3.6092340e+02 3.5235576e+03 -5.3664124e+01 - 2.8875549e+02 3.5309004e+03 -5.7288112e+01 - 2.1657824e+02 3.5365925e+03 -6.0055690e+01 - 1.4439167e+02 3.5406484e+03 -6.2005670e+01 - 7.2197813e+01 3.5430780e+03 -6.3165055e+01 - -2.4067136e-09 3.5438872e+03 -6.3549764e+01 - -7.2197813e+01 3.5430780e+03 -6.3165055e+01 - -1.4439167e+02 3.5406484e+03 -6.2005670e+01 - -2.1657824e+02 3.5365925e+03 -6.0055690e+01 - -2.8875549e+02 3.5309004e+03 -5.7288112e+01 - -3.6092340e+02 3.5235576e+03 -5.3664124e+01 - -4.3308474e+02 3.5145444e+03 -4.9132058e+01 - -5.0524598e+02 3.5038354e+03 -4.3625970e+01 - -5.7741841e+02 3.4913980e+03 -3.7063829e+01 - -6.4961935e+02 3.4771916e+03 -2.9345229e+01 - -7.2187369e+02 3.4611655e+03 -2.0348585e+01 - -7.9421578e+02 3.4432570e+03 -9.9277343e+00 - -8.6669159e+02 3.4233886e+03 2.0920922e+00 - -9.3936138e+02 3.4014649e+03 1.5918942e+01 - -1.0123029e+03 3.3773688e+03 3.1799383e+01 - -1.0856148e+03 3.3509564e+03 5.0024078e+01 - -1.1594207e+03 3.3220527e+03 7.0933128e+01 - -1.2338730e+03 3.2904453e+03 9.4920143e+01 - -1.3091557e+03 3.2558801e+03 1.2243304e+02 - -1.3854849e+03 3.2180587e+03 1.5396824e+02 - -1.4631039e+03 3.1766409e+03 1.9005276e+02 - -1.5422679e+03 3.1312584e+03 2.3120599e+02 - -1.6232109e+03 3.0815471e+03 2.7787009e+02 - -1.7060857e+03 3.0272095e+03 3.3029673e+02 - -1.7908652e+03 2.9681207e+03 3.8838306e+02 - -1.8772029e+03 2.9044813e+03 4.5146716e+02 - -1.9642692e+03 2.8370056e+03 5.1813017e+02 - -2.0506126e+03 2.7670901e+03 5.8610099e+02 - -2.1341363e+03 2.6968688e+03 6.5238761e+02 - -2.2122730e+03 2.6290583e+03 7.1370839e+02 - -2.2823721e+03 2.5665689e+03 7.6714425e+02 - -2.3421855e+03 2.5119952e+03 8.1076470e+02 - -2.3902620e+03 2.4671833e+03 8.4395495e+02 - -2.4261112e+03 2.4330320e+03 8.6733793e+02 - -2.4501317e+03 2.4095393e+03 8.8240332e+02 - -2.4634008e+03 2.3959983e+03 8.9105197e+02 - -2.4674390e+03 2.3912248e+03 8.9521622e+02 - -2.4640176e+03 2.3937416e+03 8.9661441e+02 - -2.4550277e+03 2.4019005e+03 8.9662479e+02 - -2.4424027e+03 2.4139510e+03 8.9623694e+02 - -2.4280747e+03 2.4280747e+03 8.9604223e+02 - -2.4139510e+03 2.4424027e+03 8.9623694e+02 - -2.4019005e+03 2.4550277e+03 8.9662479e+02 - -2.3937416e+03 2.4640176e+03 8.9661441e+02 - -2.3912248e+03 2.4674390e+03 8.9521622e+02 - -2.3959983e+03 2.4634008e+03 8.9105197e+02 - -2.4095393e+03 2.4501317e+03 8.8240332e+02 - -2.4330320e+03 2.4261112e+03 8.6733793e+02 - -2.4671833e+03 2.3902620e+03 8.4395495e+02 - -2.5119952e+03 2.3421855e+03 8.1076470e+02 - -2.5665689e+03 2.2823721e+03 7.6714425e+02 - -2.6290583e+03 2.2122730e+03 7.1370839e+02 - -2.6968688e+03 2.1341363e+03 6.5238761e+02 - -2.7670901e+03 2.0506126e+03 5.8610099e+02 - -2.8370056e+03 1.9642692e+03 5.1813017e+02 - -2.9044813e+03 1.8772029e+03 4.5146716e+02 - -2.9681207e+03 1.7908652e+03 3.8838306e+02 - -3.0272095e+03 1.7060857e+03 3.3029673e+02 - -3.0815471e+03 1.6232109e+03 2.7787009e+02 - -3.1312584e+03 1.5422679e+03 2.3120599e+02 - -3.1766409e+03 1.4631039e+03 1.9005276e+02 - -3.2180587e+03 1.3854849e+03 1.5396824e+02 - -3.2558801e+03 1.3091557e+03 1.2243304e+02 - -3.2904453e+03 1.2338730e+03 9.4920143e+01 - -3.3220527e+03 1.1594207e+03 7.0933128e+01 - -3.3509564e+03 1.0856148e+03 5.0024078e+01 - -3.3773688e+03 1.0123029e+03 3.1799383e+01 - -3.4014649e+03 9.3936138e+02 1.5918942e+01 - -3.4233886e+03 8.6669159e+02 2.0920922e+00 - -3.4432570e+03 7.9421578e+02 -9.9277343e+00 - -3.4611655e+03 7.2187369e+02 -2.0348585e+01 - -3.4771916e+03 6.4961935e+02 -2.9345229e+01 - -3.4913980e+03 5.7741841e+02 -3.7063829e+01 - -3.5038354e+03 5.0524598e+02 -4.3625970e+01 - -3.5145444e+03 4.3308474e+02 -4.9132058e+01 - -3.5235576e+03 3.6092340e+02 -5.3664124e+01 - -3.5309004e+03 2.8875549e+02 -5.7288112e+01 - -3.5365925e+03 2.1657824e+02 -6.0055690e+01 - -3.5406484e+03 1.4439167e+02 -6.2005670e+01 - -3.5430780e+03 7.2197813e+01 -6.3165055e+01 - -3.5438872e+03 0.0000000e+00 -6.3549764e+01 - -3.5430780e+03 -7.2197813e+01 -6.3165055e+01 - -3.5406484e+03 -1.4439167e+02 -6.2005670e+01 - -3.5365925e+03 -2.1657824e+02 -6.0055690e+01 - -3.5309004e+03 -2.8875549e+02 -5.7288112e+01 - -3.5235576e+03 -3.6092340e+02 -5.3664124e+01 - -3.5145444e+03 -4.3308474e+02 -4.9132058e+01 - -3.5038354e+03 -5.0524598e+02 -4.3625970e+01 - -3.4913980e+03 -5.7741841e+02 -3.7063829e+01 - -3.4771916e+03 -6.4961935e+02 -2.9345229e+01 - -3.4611655e+03 -7.2187369e+02 -2.0348585e+01 - -3.4432570e+03 -7.9421578e+02 -9.9277343e+00 - -3.4233886e+03 -8.6669159e+02 2.0920922e+00 - -3.4014649e+03 -9.3936138e+02 1.5918942e+01 - -3.3773688e+03 -1.0123029e+03 3.1799383e+01 - -3.3509564e+03 -1.0856148e+03 5.0024078e+01 - -3.3220527e+03 -1.1594207e+03 7.0933128e+01 - -3.2904453e+03 -1.2338730e+03 9.4920143e+01 - -3.2558801e+03 -1.3091557e+03 1.2243304e+02 - -3.2180587e+03 -1.3854849e+03 1.5396824e+02 - -3.1766409e+03 -1.4631039e+03 1.9005276e+02 - -3.1312584e+03 -1.5422679e+03 2.3120599e+02 - -3.0815471e+03 -1.6232109e+03 2.7787009e+02 - -3.0272095e+03 -1.7060857e+03 3.3029673e+02 - -2.9681207e+03 -1.7908652e+03 3.8838306e+02 - -2.9044813e+03 -1.8772029e+03 4.5146716e+02 - -2.8370056e+03 -1.9642692e+03 5.1813017e+02 - -2.7670901e+03 -2.0506126e+03 5.8610099e+02 - -2.6968688e+03 -2.1341363e+03 6.5238761e+02 - -2.6290583e+03 -2.2122730e+03 7.1370839e+02 - -2.5665689e+03 -2.2823721e+03 7.6714425e+02 - -2.5119952e+03 -2.3421855e+03 8.1076470e+02 - -2.4671833e+03 -2.3902620e+03 8.4395495e+02 - -2.4330320e+03 -2.4261112e+03 8.6733793e+02 - -2.4095393e+03 -2.4501317e+03 8.8240332e+02 - -2.3959983e+03 -2.4634008e+03 8.9105197e+02 - -2.3912248e+03 -2.4674390e+03 8.9521622e+02 - -2.3937416e+03 -2.4640176e+03 8.9661441e+02 - -2.4019005e+03 -2.4550277e+03 8.9662479e+02 - -2.4139510e+03 -2.4424027e+03 8.9623694e+02 - -2.4280747e+03 -2.4280747e+03 8.9604223e+02 - -2.4424027e+03 -2.4139510e+03 8.9623694e+02 - -2.4550277e+03 -2.4019005e+03 8.9662479e+02 - -2.4640176e+03 -2.3937416e+03 8.9661441e+02 - -2.4674390e+03 -2.3912248e+03 8.9521622e+02 - -2.4634008e+03 -2.3959983e+03 8.9105197e+02 - -2.4501317e+03 -2.4095393e+03 8.8240332e+02 - -2.4261112e+03 -2.4330320e+03 8.6733793e+02 - -2.3902620e+03 -2.4671833e+03 8.4395495e+02 - -2.3421855e+03 -2.5119952e+03 8.1076470e+02 - -2.2823721e+03 -2.5665689e+03 7.6714425e+02 - -2.2122730e+03 -2.6290583e+03 7.1370839e+02 - -2.1341363e+03 -2.6968688e+03 6.5238761e+02 - -2.0506126e+03 -2.7670901e+03 5.8610099e+02 - -1.9642692e+03 -2.8370056e+03 5.1813017e+02 - -1.8772029e+03 -2.9044813e+03 4.5146716e+02 - -1.7908652e+03 -2.9681207e+03 3.8838306e+02 - -1.7060857e+03 -3.0272095e+03 3.3029673e+02 - -1.6232109e+03 -3.0815471e+03 2.7787009e+02 - -1.5422679e+03 -3.1312584e+03 2.3120599e+02 - -1.4631039e+03 -3.1766409e+03 1.9005276e+02 - -1.3854849e+03 -3.2180587e+03 1.5396824e+02 - -1.3091557e+03 -3.2558801e+03 1.2243304e+02 - -1.2338730e+03 -3.2904453e+03 9.4920143e+01 - -1.1594207e+03 -3.3220527e+03 7.0933128e+01 - -1.0856148e+03 -3.3509564e+03 5.0024078e+01 - -1.0123029e+03 -3.3773688e+03 3.1799383e+01 - -9.3936138e+02 -3.4014649e+03 1.5918942e+01 - -8.6669159e+02 -3.4233886e+03 2.0920922e+00 - -7.9421578e+02 -3.4432570e+03 -9.9277343e+00 - -7.2187369e+02 -3.4611655e+03 -2.0348585e+01 - -6.4961935e+02 -3.4771916e+03 -2.9345229e+01 - -5.7741841e+02 -3.4913980e+03 -3.7063829e+01 - -5.0524598e+02 -3.5038354e+03 -4.3625970e+01 - -4.3308474e+02 -3.5145444e+03 -4.9132058e+01 - -3.6092340e+02 -3.5235576e+03 -5.3664124e+01 - -2.8875549e+02 -3.5309004e+03 -5.7288112e+01 - -2.1657824e+02 -3.5365925e+03 -6.0055690e+01 - -1.4439167e+02 -3.5406484e+03 -6.2005670e+01 - -7.2197813e+01 -3.5430780e+03 -6.3165055e+01 - 0.0000000e+00 -3.5438872e+03 -6.3549764e+01 - 7.2197813e+01 -3.5430780e+03 -6.3165055e+01 - 1.4439167e+02 -3.5406484e+03 -6.2005670e+01 - 2.1657824e+02 -3.5365925e+03 -6.0055690e+01 - 2.8875549e+02 -3.5309004e+03 -5.7288112e+01 - 3.6092340e+02 -3.5235576e+03 -5.3664124e+01 - 4.3308474e+02 -3.5145444e+03 -4.9132058e+01 - 5.0524598e+02 -3.5038354e+03 -4.3625970e+01 - 5.7741841e+02 -3.4913980e+03 -3.7063829e+01 - 6.4961935e+02 -3.4771916e+03 -2.9345229e+01 - 7.2187369e+02 -3.4611655e+03 -2.0348585e+01 - 7.9421578e+02 -3.4432570e+03 -9.9277343e+00 - 8.6669159e+02 -3.4233886e+03 2.0920922e+00 - 9.3936138e+02 -3.4014649e+03 1.5918942e+01 - 1.0123029e+03 -3.3773688e+03 3.1799383e+01 - 1.0856148e+03 -3.3509564e+03 5.0024078e+01 - 1.1594207e+03 -3.3220527e+03 7.0933128e+01 - 1.2338730e+03 -3.2904453e+03 9.4920143e+01 - 1.3091557e+03 -3.2558801e+03 1.2243304e+02 - 1.3854849e+03 -3.2180587e+03 1.5396824e+02 - 1.4631039e+03 -3.1766409e+03 1.9005276e+02 - 1.5422679e+03 -3.1312584e+03 2.3120599e+02 - 1.6232109e+03 -3.0815471e+03 2.7787009e+02 - 1.7060857e+03 -3.0272095e+03 3.3029673e+02 - 1.7908652e+03 -2.9681207e+03 3.8838306e+02 - 1.8772029e+03 -2.9044813e+03 4.5146716e+02 - 1.9642692e+03 -2.8370056e+03 5.1813017e+02 - 2.0506126e+03 -2.7670901e+03 5.8610099e+02 - 2.1341363e+03 -2.6968688e+03 6.5238761e+02 - 2.2122730e+03 -2.6290583e+03 7.1370839e+02 - 2.2823721e+03 -2.5665689e+03 7.6714425e+02 - 2.3421855e+03 -2.5119952e+03 8.1076470e+02 - 2.3902620e+03 -2.4671833e+03 8.4395495e+02 - 2.4261112e+03 -2.4330320e+03 8.6733793e+02 - 2.4501317e+03 -2.4095393e+03 8.8240332e+02 - 2.4634008e+03 -2.3959983e+03 8.9105197e+02 - 2.4674390e+03 -2.3912248e+03 8.9521622e+02 - 2.4640176e+03 -2.3937416e+03 8.9661441e+02 - 2.4550277e+03 -2.4019005e+03 8.9662479e+02 - 2.4424027e+03 -2.4139510e+03 8.9623694e+02 - 2.4280747e+03 -2.4280747e+03 8.9604223e+02 - 2.4139510e+03 -2.4424027e+03 8.9623694e+02 - 2.4019005e+03 -2.4550277e+03 8.9662479e+02 - 2.3937416e+03 -2.4640176e+03 8.9661441e+02 - 2.3912248e+03 -2.4674390e+03 8.9521622e+02 - 2.3959983e+03 -2.4634008e+03 8.9105197e+02 - 2.4095393e+03 -2.4501317e+03 8.8240332e+02 - 2.4330320e+03 -2.4261112e+03 8.6733793e+02 - 2.4671833e+03 -2.3902620e+03 8.4395495e+02 - 2.5119952e+03 -2.3421855e+03 8.1076470e+02 - 2.5665689e+03 -2.2823721e+03 7.6714425e+02 - 2.6290583e+03 -2.2122730e+03 7.1370839e+02 - 2.6968688e+03 -2.1341363e+03 6.5238761e+02 - 2.7670901e+03 -2.0506126e+03 5.8610099e+02 - 2.8370056e+03 -1.9642692e+03 5.1813017e+02 - 2.9044813e+03 -1.8772029e+03 4.5146716e+02 - 2.9681207e+03 -1.7908652e+03 3.8838306e+02 - 3.0272095e+03 -1.7060857e+03 3.3029673e+02 - 3.0815471e+03 -1.6232109e+03 2.7787009e+02 - 3.1312584e+03 -1.5422679e+03 2.3120599e+02 - 3.1766409e+03 -1.4631039e+03 1.9005276e+02 - 3.2180587e+03 -1.3854849e+03 1.5396824e+02 - 3.2558801e+03 -1.3091557e+03 1.2243304e+02 - 3.2904453e+03 -1.2338730e+03 9.4920143e+01 - 3.3220527e+03 -1.1594207e+03 7.0933128e+01 - 3.3509564e+03 -1.0856148e+03 5.0024078e+01 - 3.3773688e+03 -1.0123029e+03 3.1799383e+01 - 3.4014649e+03 -9.3936138e+02 1.5918942e+01 - 3.4233886e+03 -8.6669159e+02 2.0920922e+00 - 3.4432570e+03 -7.9421578e+02 -9.9277343e+00 - 3.4611655e+03 -7.2187369e+02 -2.0348585e+01 - 3.4771916e+03 -6.4961935e+02 -2.9345229e+01 - 3.4913980e+03 -5.7741841e+02 -3.7063829e+01 - 3.5038354e+03 -5.0524598e+02 -4.3625970e+01 - 3.5145444e+03 -4.3308474e+02 -4.9132058e+01 - 3.5235576e+03 -3.6092340e+02 -5.3664124e+01 - 3.5309004e+03 -2.8875549e+02 -5.7288112e+01 - 3.5365925e+03 -2.1657824e+02 -6.0055690e+01 - 3.5406484e+03 -1.4439167e+02 -6.2005670e+01 - 3.5430780e+03 -7.2197813e+01 -6.3165055e+01 - 3.5438872e+03 0.0000000e+00 -6.3549764e+01 - 3.5490050e+03 2.4067136e-09 -8.3944425e+01 - 3.5482299e+03 7.1571022e+01 -8.3642754e+01 - 3.5459033e+03 1.4313146e+02 -8.2733670e+01 - 3.5420212e+03 2.1467119e+02 -8.1204846e+01 - 3.5365769e+03 2.8618102e+02 -7.9035364e+01 - 3.5295606e+03 3.5765324e+02 -7.6195139e+01 - 3.5209590e+03 4.2908215e+02 -7.2644075e+01 - 3.5107545e+03 5.0046482e+02 -6.8330934e+01 - 3.4989251e+03 5.7180178e+02 -6.3191850e+01 - 3.4854424e+03 6.4309811e+02 -5.7148450e+01 - 3.4702714e+03 7.1436451e+02 -5.0105496e+01 - 3.4533679e+03 7.8561879e+02 -4.1947968e+01 - 3.4346772e+03 8.5688769e+02 -3.2537486e+01 - 3.4141309e+03 9.2820906e+02 -2.1707969e+01 - 3.3916440e+03 9.9963463e+02 -9.2604481e+00 - 3.3671107e+03 1.0712334e+03 5.0430259e+00 - 3.3403992e+03 1.1430958e+03 2.1486290e+01 - 3.3113458e+03 1.2153382e+03 4.0406501e+01 - 3.2797481e+03 1.2881087e+03 6.2201311e+01 - 3.2453577e+03 1.3615920e+03 8.7334197e+01 - 3.2078738e+03 1.4360138e+03 1.1633485e+02 - 3.1669405e+03 1.5116407e+03 1.4978917e+02 - 3.1221530e+03 1.5887713e+03 1.8830970e+02 - 3.0730821e+03 1.6677103e+03 2.3247267e+02 - 3.0193313e+03 1.7487112e+03 2.8270324e+02 - 2.9606463e+03 1.8318723e+03 3.3909157e+02 - 2.8970930e+03 1.9169704e+03 4.0113814e+02 - 2.8293007e+03 2.0032419e+03 4.6747198e+02 - 2.7587130e+03 2.0891666e+03 5.3566283e+02 - 2.6877148e+03 2.1723797e+03 6.0231591e+02 - 2.6194727e+03 2.2498619e+03 6.6359704e+02 - 2.5574218e+03 2.3184558e+03 7.1610816e+02 - 2.5045564e+03 2.3755483e+03 7.5774153e+02 - 2.4628445e+03 2.4196111e+03 7.8808180e+02 - 2.4330041e+03 2.4503791e+03 8.0821225e+02 - 2.4146381e+03 2.4686841e+03 8.2014174e+02 - 2.4065482e+03 2.4761209e+03 8.2618624e+02 - 2.4070498e+03 2.4747210e+03 8.2851528e+02 - 2.4141972e+03 2.4667156e+03 8.2890270e+02 - 2.4259129e+03 2.4543964e+03 8.2862709e+02 - 2.4400465e+03 2.4400465e+03 8.2845102e+02 - 2.4543964e+03 2.4259129e+03 8.2862709e+02 - 2.4667156e+03 2.4141972e+03 8.2890270e+02 - 2.4747210e+03 2.4070498e+03 8.2851528e+02 - 2.4761209e+03 2.4065482e+03 8.2618624e+02 - 2.4686841e+03 2.4146381e+03 8.2014174e+02 - 2.4503791e+03 2.4330041e+03 8.0821225e+02 - 2.4196111e+03 2.4628445e+03 7.8808180e+02 - 2.3755483e+03 2.5045564e+03 7.5774153e+02 - 2.3184558e+03 2.5574218e+03 7.1610816e+02 - 2.2498619e+03 2.6194727e+03 6.6359704e+02 - 2.1723797e+03 2.6877148e+03 6.0231591e+02 - 2.0891666e+03 2.7587130e+03 5.3566283e+02 - 2.0032419e+03 2.8293007e+03 4.6747198e+02 - 1.9169704e+03 2.8970930e+03 4.0113814e+02 - 1.8318723e+03 2.9606463e+03 3.3909157e+02 - 1.7487112e+03 3.0193313e+03 2.8270324e+02 - 1.6677103e+03 3.0730821e+03 2.3247267e+02 - 1.5887713e+03 3.1221530e+03 1.8830970e+02 - 1.5116407e+03 3.1669405e+03 1.4978917e+02 - 1.4360138e+03 3.2078738e+03 1.1633485e+02 - 1.3615920e+03 3.2453577e+03 8.7334197e+01 - 1.2881087e+03 3.2797481e+03 6.2201311e+01 - 1.2153382e+03 3.3113458e+03 4.0406501e+01 - 1.1430958e+03 3.3403992e+03 2.1486290e+01 - 1.0712334e+03 3.3671107e+03 5.0430259e+00 - 9.9963463e+02 3.3916440e+03 -9.2604481e+00 - 9.2820906e+02 3.4141309e+03 -2.1707969e+01 - 8.5688769e+02 3.4346772e+03 -3.2537486e+01 - 7.8561879e+02 3.4533679e+03 -4.1947968e+01 - 7.1436451e+02 3.4702714e+03 -5.0105496e+01 - 6.4309811e+02 3.4854424e+03 -5.7148450e+01 - 5.7180178e+02 3.4989251e+03 -6.3191850e+01 - 5.0046482e+02 3.5107545e+03 -6.8330934e+01 - 4.2908215e+02 3.5209590e+03 -7.2644075e+01 - 3.5765324e+02 3.5295606e+03 -7.6195139e+01 - 2.8618102e+02 3.5365769e+03 -7.9035364e+01 - 2.1467119e+02 3.5420212e+03 -8.1204846e+01 - 1.4313146e+02 3.5459033e+03 -8.2733670e+01 - 7.1571022e+01 3.5482299e+03 -8.3642754e+01 - -2.4067136e-09 3.5490050e+03 -8.3944425e+01 - -7.1571022e+01 3.5482299e+03 -8.3642754e+01 - -1.4313146e+02 3.5459033e+03 -8.2733670e+01 - -2.1467119e+02 3.5420212e+03 -8.1204846e+01 - -2.8618102e+02 3.5365769e+03 -7.9035364e+01 - -3.5765324e+02 3.5295606e+03 -7.6195139e+01 - -4.2908215e+02 3.5209590e+03 -7.2644075e+01 - -5.0046482e+02 3.5107545e+03 -6.8330934e+01 - -5.7180178e+02 3.4989251e+03 -6.3191850e+01 - -6.4309811e+02 3.4854424e+03 -5.7148450e+01 - -7.1436451e+02 3.4702714e+03 -5.0105496e+01 - -7.8561879e+02 3.4533679e+03 -4.1947968e+01 - -8.5688769e+02 3.4346772e+03 -3.2537486e+01 - -9.2820906e+02 3.4141309e+03 -2.1707969e+01 - -9.9963463e+02 3.3916440e+03 -9.2604481e+00 - -1.0712334e+03 3.3671107e+03 5.0430259e+00 - -1.1430958e+03 3.3403992e+03 2.1486290e+01 - -1.2153382e+03 3.3113458e+03 4.0406501e+01 - -1.2881087e+03 3.2797481e+03 6.2201311e+01 - -1.3615920e+03 3.2453577e+03 8.7334197e+01 - -1.4360138e+03 3.2078738e+03 1.1633485e+02 - -1.5116407e+03 3.1669405e+03 1.4978917e+02 - -1.5887713e+03 3.1221530e+03 1.8830970e+02 - -1.6677103e+03 3.0730821e+03 2.3247267e+02 - -1.7487112e+03 3.0193313e+03 2.8270324e+02 - -1.8318723e+03 2.9606463e+03 3.3909157e+02 - -1.9169704e+03 2.8970930e+03 4.0113814e+02 - -2.0032419e+03 2.8293007e+03 4.6747198e+02 - -2.0891666e+03 2.7587130e+03 5.3566283e+02 - -2.1723797e+03 2.6877148e+03 6.0231591e+02 - -2.2498619e+03 2.6194727e+03 6.6359704e+02 - -2.3184558e+03 2.5574218e+03 7.1610816e+02 - -2.3755483e+03 2.5045564e+03 7.5774153e+02 - -2.4196111e+03 2.4628445e+03 7.8808180e+02 - -2.4503791e+03 2.4330041e+03 8.0821225e+02 - -2.4686841e+03 2.4146381e+03 8.2014174e+02 - -2.4761209e+03 2.4065482e+03 8.2618624e+02 - -2.4747210e+03 2.4070498e+03 8.2851528e+02 - -2.4667156e+03 2.4141972e+03 8.2890270e+02 - -2.4543964e+03 2.4259129e+03 8.2862709e+02 - -2.4400465e+03 2.4400465e+03 8.2845102e+02 - -2.4259129e+03 2.4543964e+03 8.2862709e+02 - -2.4141972e+03 2.4667156e+03 8.2890270e+02 - -2.4070498e+03 2.4747210e+03 8.2851528e+02 - -2.4065482e+03 2.4761209e+03 8.2618624e+02 - -2.4146381e+03 2.4686841e+03 8.2014174e+02 - -2.4330041e+03 2.4503791e+03 8.0821225e+02 - -2.4628445e+03 2.4196111e+03 7.8808180e+02 - -2.5045564e+03 2.3755483e+03 7.5774153e+02 - -2.5574218e+03 2.3184558e+03 7.1610816e+02 - -2.6194727e+03 2.2498619e+03 6.6359704e+02 - -2.6877148e+03 2.1723797e+03 6.0231591e+02 - -2.7587130e+03 2.0891666e+03 5.3566283e+02 - -2.8293007e+03 2.0032419e+03 4.6747198e+02 - -2.8970930e+03 1.9169704e+03 4.0113814e+02 - -2.9606463e+03 1.8318723e+03 3.3909157e+02 - -3.0193313e+03 1.7487112e+03 2.8270324e+02 - -3.0730821e+03 1.6677103e+03 2.3247267e+02 - -3.1221530e+03 1.5887713e+03 1.8830970e+02 - -3.1669405e+03 1.5116407e+03 1.4978917e+02 - -3.2078738e+03 1.4360138e+03 1.1633485e+02 - -3.2453577e+03 1.3615920e+03 8.7334197e+01 - -3.2797481e+03 1.2881087e+03 6.2201311e+01 - -3.3113458e+03 1.2153382e+03 4.0406501e+01 - -3.3403992e+03 1.1430958e+03 2.1486290e+01 - -3.3671107e+03 1.0712334e+03 5.0430259e+00 - -3.3916440e+03 9.9963463e+02 -9.2604481e+00 - -3.4141309e+03 9.2820906e+02 -2.1707969e+01 - -3.4346772e+03 8.5688769e+02 -3.2537486e+01 - -3.4533679e+03 7.8561879e+02 -4.1947968e+01 - -3.4702714e+03 7.1436451e+02 -5.0105496e+01 - -3.4854424e+03 6.4309811e+02 -5.7148450e+01 - -3.4989251e+03 5.7180178e+02 -6.3191850e+01 - -3.5107545e+03 5.0046482e+02 -6.8330934e+01 - -3.5209590e+03 4.2908215e+02 -7.2644075e+01 - -3.5295606e+03 3.5765324e+02 -7.6195139e+01 - -3.5365769e+03 2.8618102e+02 -7.9035364e+01 - -3.5420212e+03 2.1467119e+02 -8.1204846e+01 - -3.5459033e+03 1.4313146e+02 -8.2733670e+01 - -3.5482299e+03 7.1571022e+01 -8.3642754e+01 - -3.5490050e+03 -2.4067136e-09 -8.3944425e+01 - -3.5482299e+03 -7.1571022e+01 -8.3642754e+01 - -3.5459033e+03 -1.4313146e+02 -8.2733670e+01 - -3.5420212e+03 -2.1467119e+02 -8.1204846e+01 - -3.5365769e+03 -2.8618102e+02 -7.9035364e+01 - -3.5295606e+03 -3.5765324e+02 -7.6195139e+01 - -3.5209590e+03 -4.2908215e+02 -7.2644075e+01 - -3.5107545e+03 -5.0046482e+02 -6.8330934e+01 - -3.4989251e+03 -5.7180178e+02 -6.3191850e+01 - -3.4854424e+03 -6.4309811e+02 -5.7148450e+01 - -3.4702714e+03 -7.1436451e+02 -5.0105496e+01 - -3.4533679e+03 -7.8561879e+02 -4.1947968e+01 - -3.4346772e+03 -8.5688769e+02 -3.2537486e+01 - -3.4141309e+03 -9.2820906e+02 -2.1707969e+01 - -3.3916440e+03 -9.9963463e+02 -9.2604481e+00 - -3.3671107e+03 -1.0712334e+03 5.0430259e+00 - -3.3403992e+03 -1.1430958e+03 2.1486290e+01 - -3.3113458e+03 -1.2153382e+03 4.0406501e+01 - -3.2797481e+03 -1.2881087e+03 6.2201311e+01 - -3.2453577e+03 -1.3615920e+03 8.7334197e+01 - -3.2078738e+03 -1.4360138e+03 1.1633485e+02 - -3.1669405e+03 -1.5116407e+03 1.4978917e+02 - -3.1221530e+03 -1.5887713e+03 1.8830970e+02 - -3.0730821e+03 -1.6677103e+03 2.3247267e+02 - -3.0193313e+03 -1.7487112e+03 2.8270324e+02 - -2.9606463e+03 -1.8318723e+03 3.3909157e+02 - -2.8970930e+03 -1.9169704e+03 4.0113814e+02 - -2.8293007e+03 -2.0032419e+03 4.6747198e+02 - -2.7587130e+03 -2.0891666e+03 5.3566283e+02 - -2.6877148e+03 -2.1723797e+03 6.0231591e+02 - -2.6194727e+03 -2.2498619e+03 6.6359704e+02 - -2.5574218e+03 -2.3184558e+03 7.1610816e+02 - -2.5045564e+03 -2.3755483e+03 7.5774153e+02 - -2.4628445e+03 -2.4196111e+03 7.8808180e+02 - -2.4330041e+03 -2.4503791e+03 8.0821225e+02 - -2.4146381e+03 -2.4686841e+03 8.2014174e+02 - -2.4065482e+03 -2.4761209e+03 8.2618624e+02 - -2.4070498e+03 -2.4747210e+03 8.2851528e+02 - -2.4141972e+03 -2.4667156e+03 8.2890270e+02 - -2.4259129e+03 -2.4543964e+03 8.2862709e+02 - -2.4400465e+03 -2.4400465e+03 8.2845102e+02 - -2.4543964e+03 -2.4259129e+03 8.2862709e+02 - -2.4667156e+03 -2.4141972e+03 8.2890270e+02 - -2.4747210e+03 -2.4070498e+03 8.2851528e+02 - -2.4761209e+03 -2.4065482e+03 8.2618624e+02 - -2.4686841e+03 -2.4146381e+03 8.2014174e+02 - -2.4503791e+03 -2.4330041e+03 8.0821225e+02 - -2.4196111e+03 -2.4628445e+03 7.8808180e+02 - -2.3755483e+03 -2.5045564e+03 7.5774153e+02 - -2.3184558e+03 -2.5574218e+03 7.1610816e+02 - -2.2498619e+03 -2.6194727e+03 6.6359704e+02 - -2.1723797e+03 -2.6877148e+03 6.0231591e+02 - -2.0891666e+03 -2.7587130e+03 5.3566283e+02 - -2.0032419e+03 -2.8293007e+03 4.6747198e+02 - -1.9169704e+03 -2.8970930e+03 4.0113814e+02 - -1.8318723e+03 -2.9606463e+03 3.3909157e+02 - -1.7487112e+03 -3.0193313e+03 2.8270324e+02 - -1.6677103e+03 -3.0730821e+03 2.3247267e+02 - -1.5887713e+03 -3.1221530e+03 1.8830970e+02 - -1.5116407e+03 -3.1669405e+03 1.4978917e+02 - -1.4360138e+03 -3.2078738e+03 1.1633485e+02 - -1.3615920e+03 -3.2453577e+03 8.7334197e+01 - -1.2881087e+03 -3.2797481e+03 6.2201311e+01 - -1.2153382e+03 -3.3113458e+03 4.0406501e+01 - -1.1430958e+03 -3.3403992e+03 2.1486290e+01 - -1.0712334e+03 -3.3671107e+03 5.0430259e+00 - -9.9963463e+02 -3.3916440e+03 -9.2604481e+00 - -9.2820906e+02 -3.4141309e+03 -2.1707969e+01 - -8.5688769e+02 -3.4346772e+03 -3.2537486e+01 - -7.8561879e+02 -3.4533679e+03 -4.1947968e+01 - -7.1436451e+02 -3.4702714e+03 -5.0105496e+01 - -6.4309811e+02 -3.4854424e+03 -5.7148450e+01 - -5.7180178e+02 -3.4989251e+03 -6.3191850e+01 - -5.0046482e+02 -3.5107545e+03 -6.8330934e+01 - -4.2908215e+02 -3.5209590e+03 -7.2644075e+01 - -3.5765324e+02 -3.5295606e+03 -7.6195139e+01 - -2.8618102e+02 -3.5365769e+03 -7.9035364e+01 - -2.1467119e+02 -3.5420212e+03 -8.1204846e+01 - -1.4313146e+02 -3.5459033e+03 -8.2733670e+01 - -7.1571022e+01 -3.5482299e+03 -8.3642754e+01 - 0.0000000e+00 -3.5490050e+03 -8.3944425e+01 - 7.1571022e+01 -3.5482299e+03 -8.3642754e+01 - 1.4313146e+02 -3.5459033e+03 -8.2733670e+01 - 2.1467119e+02 -3.5420212e+03 -8.1204846e+01 - 2.8618102e+02 -3.5365769e+03 -7.9035364e+01 - 3.5765324e+02 -3.5295606e+03 -7.6195139e+01 - 4.2908215e+02 -3.5209590e+03 -7.2644075e+01 - 5.0046482e+02 -3.5107545e+03 -6.8330934e+01 - 5.7180178e+02 -3.4989251e+03 -6.3191850e+01 - 6.4309811e+02 -3.4854424e+03 -5.7148450e+01 - 7.1436451e+02 -3.4702714e+03 -5.0105496e+01 - 7.8561879e+02 -3.4533679e+03 -4.1947968e+01 - 8.5688769e+02 -3.4346772e+03 -3.2537486e+01 - 9.2820906e+02 -3.4141309e+03 -2.1707969e+01 - 9.9963463e+02 -3.3916440e+03 -9.2604481e+00 - 1.0712334e+03 -3.3671107e+03 5.0430259e+00 - 1.1430958e+03 -3.3403992e+03 2.1486290e+01 - 1.2153382e+03 -3.3113458e+03 4.0406501e+01 - 1.2881087e+03 -3.2797481e+03 6.2201311e+01 - 1.3615920e+03 -3.2453577e+03 8.7334197e+01 - 1.4360138e+03 -3.2078738e+03 1.1633485e+02 - 1.5116407e+03 -3.1669405e+03 1.4978917e+02 - 1.5887713e+03 -3.1221530e+03 1.8830970e+02 - 1.6677103e+03 -3.0730821e+03 2.3247267e+02 - 1.7487112e+03 -3.0193313e+03 2.8270324e+02 - 1.8318723e+03 -2.9606463e+03 3.3909157e+02 - 1.9169704e+03 -2.8970930e+03 4.0113814e+02 - 2.0032419e+03 -2.8293007e+03 4.6747198e+02 - 2.0891666e+03 -2.7587130e+03 5.3566283e+02 - 2.1723797e+03 -2.6877148e+03 6.0231591e+02 - 2.2498619e+03 -2.6194727e+03 6.6359704e+02 - 2.3184558e+03 -2.5574218e+03 7.1610816e+02 - 2.3755483e+03 -2.5045564e+03 7.5774153e+02 - 2.4196111e+03 -2.4628445e+03 7.8808180e+02 - 2.4503791e+03 -2.4330041e+03 8.0821225e+02 - 2.4686841e+03 -2.4146381e+03 8.2014174e+02 - 2.4761209e+03 -2.4065482e+03 8.2618624e+02 - 2.4747210e+03 -2.4070498e+03 8.2851528e+02 - 2.4667156e+03 -2.4141972e+03 8.2890270e+02 - 2.4543964e+03 -2.4259129e+03 8.2862709e+02 - 2.4400465e+03 -2.4400465e+03 8.2845102e+02 - 2.4259129e+03 -2.4543964e+03 8.2862709e+02 - 2.4141972e+03 -2.4667156e+03 8.2890270e+02 - 2.4070498e+03 -2.4747210e+03 8.2851528e+02 - 2.4065482e+03 -2.4761209e+03 8.2618624e+02 - 2.4146381e+03 -2.4686841e+03 8.2014174e+02 - 2.4330041e+03 -2.4503791e+03 8.0821225e+02 - 2.4628445e+03 -2.4196111e+03 7.8808180e+02 - 2.5045564e+03 -2.3755483e+03 7.5774153e+02 - 2.5574218e+03 -2.3184558e+03 7.1610816e+02 - 2.6194727e+03 -2.2498619e+03 6.6359704e+02 - 2.6877148e+03 -2.1723797e+03 6.0231591e+02 - 2.7587130e+03 -2.0891666e+03 5.3566283e+02 - 2.8293007e+03 -2.0032419e+03 4.6747198e+02 - 2.8970930e+03 -1.9169704e+03 4.0113814e+02 - 2.9606463e+03 -1.8318723e+03 3.3909157e+02 - 3.0193313e+03 -1.7487112e+03 2.8270324e+02 - 3.0730821e+03 -1.6677103e+03 2.3247267e+02 - 3.1221530e+03 -1.5887713e+03 1.8830970e+02 - 3.1669405e+03 -1.5116407e+03 1.4978917e+02 - 3.2078738e+03 -1.4360138e+03 1.1633485e+02 - 3.2453577e+03 -1.3615920e+03 8.7334197e+01 - 3.2797481e+03 -1.2881087e+03 6.2201311e+01 - 3.3113458e+03 -1.2153382e+03 4.0406501e+01 - 3.3403992e+03 -1.1430958e+03 2.1486290e+01 - 3.3671107e+03 -1.0712334e+03 5.0430259e+00 - 3.3916440e+03 -9.9963463e+02 -9.2604481e+00 - 3.4141309e+03 -9.2820906e+02 -2.1707969e+01 - 3.4346772e+03 -8.5688769e+02 -3.2537486e+01 - 3.4533679e+03 -7.8561879e+02 -4.1947968e+01 - 3.4702714e+03 -7.1436451e+02 -5.0105496e+01 - 3.4854424e+03 -6.4309811e+02 -5.7148450e+01 - 3.4989251e+03 -5.7180178e+02 -6.3191850e+01 - 3.5107545e+03 -5.0046482e+02 -6.8330934e+01 - 3.5209590e+03 -4.2908215e+02 -7.2644075e+01 - 3.5295606e+03 -3.5765324e+02 -7.6195139e+01 - 3.5365769e+03 -2.8618102e+02 -7.9035364e+01 - 3.5420212e+03 -2.1467119e+02 -8.1204846e+01 - 3.5459033e+03 -1.4313146e+02 -8.2733670e+01 - 3.5482299e+03 -7.1571022e+01 -8.3642754e+01 - 3.5490050e+03 0.0000000e+00 -8.3944425e+01 - 3.5525149e+03 -2.4067136e-09 -9.9184340e+01 - 3.5517660e+03 7.1079618e+01 -9.8951972e+01 - 3.5495187e+03 1.4214363e+02 -9.8251773e+01 - 3.5457703e+03 2.1317678e+02 -9.7074372e+01 - 3.5405167e+03 2.8416443e+02 -9.5403860e+01 - 3.5337516e+03 3.5509301e+02 -9.3217353e+01 - 3.5254663e+03 4.2595039e+02 -9.0484334e+01 - 3.5156498e+03 4.9672636e+02 -8.7165776e+01 - 3.5042873e+03 5.6741322e+02 -8.3212984e+01 - 3.4913607e+03 6.3800646e+02 -7.8566113e+01 - 3.4768465e+03 7.0850565e+02 -7.3152292e+01 - 3.4607154e+03 7.7891545e+02 -6.6883270e+01 - 3.4429305e+03 8.4924701e+02 -5.9652474e+01 - 3.4234454e+03 9.1951965e+02 -5.1331355e+01 - 3.4022014e+03 9.8976304e+02 -4.1764863e+01 - 3.3791247e+03 1.0600199e+03 -3.0765898e+01 - 3.3541221e+03 1.1303497e+03 -1.8108558e+01 - 3.3270753e+03 1.2008326e+03 -3.5201018e+00 - 3.2978349e+03 1.2715757e+03 1.3328347e+01 - 3.2662120e+03 1.3427188e+03 3.2831945e+01 - 3.2319690e+03 1.4144425e+03 5.5461999e+01 - 3.1948090e+03 1.4869755e+03 8.1773036e+01 - 3.1543683e+03 1.5606004e+03 1.1240197e+02 - 3.1102135e+03 1.6356523e+03 1.4804989e+02 - 3.0618557e+03 1.7125021e+03 1.8943017e+02 - 3.0087978e+03 1.7915074e+03 2.3715821e+02 - 2.9506427e+03 1.8729071e+03 2.9155188e+02 - 2.8872939e+03 1.9566306e+03 3.5232221e+02 - 2.8192644e+03 2.0420122e+03 4.1818476e+02 - 2.7480394e+03 2.1274679e+03 4.8653669e+02 - 2.6763142e+03 2.2103058e+03 5.5348288e+02 - 2.6078365e+03 2.2869272e+03 6.1448661e+02 - 2.5467047e+03 2.3535378e+03 6.6557703e+02 - 2.4963577e+03 2.4071268e+03 7.0452888e+02 - 2.4587858e+03 2.4461986e+03 7.3132046e+02 - 2.4343270e+03 2.4709187e+03 7.4770607e+02 - 2.4219739e+03 2.4827658e+03 7.5633423e+02 - 2.4198636e+03 2.4840173e+03 7.5993669e+02 - 2.4256904e+03 2.4773198e+03 7.6082883e+02 - 2.4369551e+03 2.4654273e+03 7.6069545e+02 - 2.4510776e+03 2.4510776e+03 7.6054043e+02 - 2.4654273e+03 2.4369551e+03 7.6069545e+02 - 2.4773198e+03 2.4256904e+03 7.6082883e+02 - 2.4840173e+03 2.4198636e+03 7.5993669e+02 - 2.4827658e+03 2.4219739e+03 7.5633423e+02 - 2.4709187e+03 2.4343270e+03 7.4770607e+02 - 2.4461986e+03 2.4587858e+03 7.3132046e+02 - 2.4071268e+03 2.4963577e+03 7.0452888e+02 - 2.3535378e+03 2.5467047e+03 6.6557703e+02 - 2.2869272e+03 2.6078365e+03 6.1448661e+02 - 2.2103058e+03 2.6763142e+03 5.5348288e+02 - 2.1274679e+03 2.7480394e+03 4.8653669e+02 - 2.0420122e+03 2.8192644e+03 4.1818476e+02 - 1.9566306e+03 2.8872939e+03 3.5232221e+02 - 1.8729071e+03 2.9506427e+03 2.9155188e+02 - 1.7915074e+03 3.0087978e+03 2.3715821e+02 - 1.7125021e+03 3.0618557e+03 1.8943017e+02 - 1.6356523e+03 3.1102135e+03 1.4804989e+02 - 1.5606004e+03 3.1543683e+03 1.1240197e+02 - 1.4869755e+03 3.1948090e+03 8.1773036e+01 - 1.4144425e+03 3.2319690e+03 5.5461999e+01 - 1.3427188e+03 3.2662120e+03 3.2831945e+01 - 1.2715757e+03 3.2978349e+03 1.3328347e+01 - 1.2008326e+03 3.3270753e+03 -3.5201018e+00 - 1.1303497e+03 3.3541221e+03 -1.8108558e+01 - 1.0600199e+03 3.3791247e+03 -3.0765898e+01 - 9.8976304e+02 3.4022014e+03 -4.1764863e+01 - 9.1951965e+02 3.4234454e+03 -5.1331355e+01 - 8.4924701e+02 3.4429305e+03 -5.9652474e+01 - 7.7891545e+02 3.4607154e+03 -6.6883270e+01 - 7.0850565e+02 3.4768465e+03 -7.3152292e+01 - 6.3800646e+02 3.4913607e+03 -7.8566113e+01 - 5.6741322e+02 3.5042873e+03 -8.3212984e+01 - 4.9672636e+02 3.5156498e+03 -8.7165776e+01 - 4.2595039e+02 3.5254663e+03 -9.0484334e+01 - 3.5509301e+02 3.5337516e+03 -9.3217353e+01 - 2.8416443e+02 3.5405167e+03 -9.5403860e+01 - 2.1317678e+02 3.5457703e+03 -9.7074372e+01 - 1.4214363e+02 3.5495187e+03 -9.8251773e+01 - 7.1079618e+01 3.5517660e+03 -9.8951972e+01 - 0.0000000e+00 3.5525149e+03 -9.9184340e+01 - -7.1079618e+01 3.5517660e+03 -9.8951972e+01 - -1.4214363e+02 3.5495187e+03 -9.8251773e+01 - -2.1317678e+02 3.5457703e+03 -9.7074372e+01 - -2.8416443e+02 3.5405167e+03 -9.5403860e+01 - -3.5509301e+02 3.5337516e+03 -9.3217353e+01 - -4.2595039e+02 3.5254663e+03 -9.0484334e+01 - -4.9672636e+02 3.5156498e+03 -8.7165776e+01 - -5.6741322e+02 3.5042873e+03 -8.3212984e+01 - -6.3800646e+02 3.4913607e+03 -7.8566113e+01 - -7.0850565e+02 3.4768465e+03 -7.3152292e+01 - -7.7891545e+02 3.4607154e+03 -6.6883270e+01 - -8.4924701e+02 3.4429305e+03 -5.9652474e+01 - -9.1951965e+02 3.4234454e+03 -5.1331355e+01 - -9.8976304e+02 3.4022014e+03 -4.1764863e+01 - -1.0600199e+03 3.3791247e+03 -3.0765898e+01 - -1.1303497e+03 3.3541221e+03 -1.8108558e+01 - -1.2008326e+03 3.3270753e+03 -3.5201018e+00 - -1.2715757e+03 3.2978349e+03 1.3328347e+01 - -1.3427188e+03 3.2662120e+03 3.2831945e+01 - -1.4144425e+03 3.2319690e+03 5.5461999e+01 - -1.4869755e+03 3.1948090e+03 8.1773036e+01 - -1.5606004e+03 3.1543683e+03 1.1240197e+02 - -1.6356523e+03 3.1102135e+03 1.4804989e+02 - -1.7125021e+03 3.0618557e+03 1.8943017e+02 - -1.7915074e+03 3.0087978e+03 2.3715821e+02 - -1.8729071e+03 2.9506427e+03 2.9155188e+02 - -1.9566306e+03 2.8872939e+03 3.5232221e+02 - -2.0420122e+03 2.8192644e+03 4.1818476e+02 - -2.1274679e+03 2.7480394e+03 4.8653669e+02 - -2.2103058e+03 2.6763142e+03 5.5348288e+02 - -2.2869272e+03 2.6078365e+03 6.1448661e+02 - -2.3535378e+03 2.5467047e+03 6.6557703e+02 - -2.4071268e+03 2.4963577e+03 7.0452888e+02 - -2.4461986e+03 2.4587858e+03 7.3132046e+02 - -2.4709187e+03 2.4343270e+03 7.4770607e+02 - -2.4827658e+03 2.4219739e+03 7.5633423e+02 - -2.4840173e+03 2.4198636e+03 7.5993669e+02 - -2.4773198e+03 2.4256904e+03 7.6082883e+02 - -2.4654273e+03 2.4369551e+03 7.6069545e+02 - -2.4510776e+03 2.4510776e+03 7.6054043e+02 - -2.4369551e+03 2.4654273e+03 7.6069545e+02 - -2.4256904e+03 2.4773198e+03 7.6082883e+02 - -2.4198636e+03 2.4840173e+03 7.5993669e+02 - -2.4219739e+03 2.4827658e+03 7.5633423e+02 - -2.4343270e+03 2.4709187e+03 7.4770607e+02 - -2.4587858e+03 2.4461986e+03 7.3132046e+02 - -2.4963577e+03 2.4071268e+03 7.0452888e+02 - -2.5467047e+03 2.3535378e+03 6.6557703e+02 - -2.6078365e+03 2.2869272e+03 6.1448661e+02 - -2.6763142e+03 2.2103058e+03 5.5348288e+02 - -2.7480394e+03 2.1274679e+03 4.8653669e+02 - -2.8192644e+03 2.0420122e+03 4.1818476e+02 - -2.8872939e+03 1.9566306e+03 3.5232221e+02 - -2.9506427e+03 1.8729071e+03 2.9155188e+02 - -3.0087978e+03 1.7915074e+03 2.3715821e+02 - -3.0618557e+03 1.7125021e+03 1.8943017e+02 - -3.1102135e+03 1.6356523e+03 1.4804989e+02 - -3.1543683e+03 1.5606004e+03 1.1240197e+02 - -3.1948090e+03 1.4869755e+03 8.1773036e+01 - -3.2319690e+03 1.4144425e+03 5.5461999e+01 - -3.2662120e+03 1.3427188e+03 3.2831945e+01 - -3.2978349e+03 1.2715757e+03 1.3328347e+01 - -3.3270753e+03 1.2008326e+03 -3.5201018e+00 - -3.3541221e+03 1.1303497e+03 -1.8108558e+01 - -3.3791247e+03 1.0600199e+03 -3.0765898e+01 - -3.4022014e+03 9.8976304e+02 -4.1764863e+01 - -3.4234454e+03 9.1951965e+02 -5.1331355e+01 - -3.4429305e+03 8.4924701e+02 -5.9652474e+01 - -3.4607154e+03 7.7891545e+02 -6.6883270e+01 - -3.4768465e+03 7.0850565e+02 -7.3152292e+01 - -3.4913607e+03 6.3800646e+02 -7.8566113e+01 - -3.5042873e+03 5.6741322e+02 -8.3212984e+01 - -3.5156498e+03 4.9672636e+02 -8.7165776e+01 - -3.5254663e+03 4.2595039e+02 -9.0484334e+01 - -3.5337516e+03 3.5509301e+02 -9.3217353e+01 - -3.5405167e+03 2.8416443e+02 -9.5403860e+01 - -3.5457703e+03 2.1317678e+02 -9.7074372e+01 - -3.5495187e+03 1.4214363e+02 -9.8251773e+01 - -3.5517660e+03 7.1079618e+01 -9.8951972e+01 - -3.5525149e+03 0.0000000e+00 -9.9184340e+01 - -3.5517660e+03 -7.1079618e+01 -9.8951972e+01 - -3.5495187e+03 -1.4214363e+02 -9.8251773e+01 - -3.5457703e+03 -2.1317678e+02 -9.7074372e+01 - -3.5405167e+03 -2.8416443e+02 -9.5403860e+01 - -3.5337516e+03 -3.5509301e+02 -9.3217353e+01 - -3.5254663e+03 -4.2595039e+02 -9.0484334e+01 - -3.5156498e+03 -4.9672636e+02 -8.7165776e+01 - -3.5042873e+03 -5.6741322e+02 -8.3212984e+01 - -3.4913607e+03 -6.3800646e+02 -7.8566113e+01 - -3.4768465e+03 -7.0850565e+02 -7.3152292e+01 - -3.4607154e+03 -7.7891545e+02 -6.6883270e+01 - -3.4429305e+03 -8.4924701e+02 -5.9652474e+01 - -3.4234454e+03 -9.1951965e+02 -5.1331355e+01 - -3.4022014e+03 -9.8976304e+02 -4.1764863e+01 - -3.3791247e+03 -1.0600199e+03 -3.0765898e+01 - -3.3541221e+03 -1.1303497e+03 -1.8108558e+01 - -3.3270753e+03 -1.2008326e+03 -3.5201018e+00 - -3.2978349e+03 -1.2715757e+03 1.3328347e+01 - -3.2662120e+03 -1.3427188e+03 3.2831945e+01 - -3.2319690e+03 -1.4144425e+03 5.5461999e+01 - -3.1948090e+03 -1.4869755e+03 8.1773036e+01 - -3.1543683e+03 -1.5606004e+03 1.1240197e+02 - -3.1102135e+03 -1.6356523e+03 1.4804989e+02 - -3.0618557e+03 -1.7125021e+03 1.8943017e+02 - -3.0087978e+03 -1.7915074e+03 2.3715821e+02 - -2.9506427e+03 -1.8729071e+03 2.9155188e+02 - -2.8872939e+03 -1.9566306e+03 3.5232221e+02 - -2.8192644e+03 -2.0420122e+03 4.1818476e+02 - -2.7480394e+03 -2.1274679e+03 4.8653669e+02 - -2.6763142e+03 -2.2103058e+03 5.5348288e+02 - -2.6078365e+03 -2.2869272e+03 6.1448661e+02 - -2.5467047e+03 -2.3535378e+03 6.6557703e+02 - -2.4963577e+03 -2.4071268e+03 7.0452888e+02 - -2.4587858e+03 -2.4461986e+03 7.3132046e+02 - -2.4343270e+03 -2.4709187e+03 7.4770607e+02 - -2.4219739e+03 -2.4827658e+03 7.5633423e+02 - -2.4198636e+03 -2.4840173e+03 7.5993669e+02 - -2.4256904e+03 -2.4773198e+03 7.6082883e+02 - -2.4369551e+03 -2.4654273e+03 7.6069545e+02 - -2.4510776e+03 -2.4510776e+03 7.6054043e+02 - -2.4654273e+03 -2.4369551e+03 7.6069545e+02 - -2.4773198e+03 -2.4256904e+03 7.6082883e+02 - -2.4840173e+03 -2.4198636e+03 7.5993669e+02 - -2.4827658e+03 -2.4219739e+03 7.5633423e+02 - -2.4709187e+03 -2.4343270e+03 7.4770607e+02 - -2.4461986e+03 -2.4587858e+03 7.3132046e+02 - -2.4071268e+03 -2.4963577e+03 7.0452888e+02 - -2.3535378e+03 -2.5467047e+03 6.6557703e+02 - -2.2869272e+03 -2.6078365e+03 6.1448661e+02 - -2.2103058e+03 -2.6763142e+03 5.5348288e+02 - -2.1274679e+03 -2.7480394e+03 4.8653669e+02 - -2.0420122e+03 -2.8192644e+03 4.1818476e+02 - -1.9566306e+03 -2.8872939e+03 3.5232221e+02 - -1.8729071e+03 -2.9506427e+03 2.9155188e+02 - -1.7915074e+03 -3.0087978e+03 2.3715821e+02 - -1.7125021e+03 -3.0618557e+03 1.8943017e+02 - -1.6356523e+03 -3.1102135e+03 1.4804989e+02 - -1.5606004e+03 -3.1543683e+03 1.1240197e+02 - -1.4869755e+03 -3.1948090e+03 8.1773036e+01 - -1.4144425e+03 -3.2319690e+03 5.5461999e+01 - -1.3427188e+03 -3.2662120e+03 3.2831945e+01 - -1.2715757e+03 -3.2978349e+03 1.3328347e+01 - -1.2008326e+03 -3.3270753e+03 -3.5201018e+00 - -1.1303497e+03 -3.3541221e+03 -1.8108558e+01 - -1.0600199e+03 -3.3791247e+03 -3.0765898e+01 - -9.8976304e+02 -3.4022014e+03 -4.1764863e+01 - -9.1951965e+02 -3.4234454e+03 -5.1331355e+01 - -8.4924701e+02 -3.4429305e+03 -5.9652474e+01 - -7.7891545e+02 -3.4607154e+03 -6.6883270e+01 - -7.0850565e+02 -3.4768465e+03 -7.3152292e+01 - -6.3800646e+02 -3.4913607e+03 -7.8566113e+01 - -5.6741322e+02 -3.5042873e+03 -8.3212984e+01 - -4.9672636e+02 -3.5156498e+03 -8.7165776e+01 - -4.2595039e+02 -3.5254663e+03 -9.0484334e+01 - -3.5509301e+02 -3.5337516e+03 -9.3217353e+01 - -2.8416443e+02 -3.5405167e+03 -9.5403860e+01 - -2.1317678e+02 -3.5457703e+03 -9.7074372e+01 - -1.4214363e+02 -3.5495187e+03 -9.8251773e+01 - -7.1079618e+01 -3.5517660e+03 -9.8951972e+01 - -2.4067136e-09 -3.5525149e+03 -9.9184340e+01 - 7.1079618e+01 -3.5517660e+03 -9.8951972e+01 - 1.4214363e+02 -3.5495187e+03 -9.8251773e+01 - 2.1317678e+02 -3.5457703e+03 -9.7074372e+01 - 2.8416443e+02 -3.5405167e+03 -9.5403860e+01 - 3.5509301e+02 -3.5337516e+03 -9.3217353e+01 - 4.2595039e+02 -3.5254663e+03 -9.0484334e+01 - 4.9672636e+02 -3.5156498e+03 -8.7165776e+01 - 5.6741322e+02 -3.5042873e+03 -8.3212984e+01 - 6.3800646e+02 -3.4913607e+03 -7.8566113e+01 - 7.0850565e+02 -3.4768465e+03 -7.3152292e+01 - 7.7891545e+02 -3.4607154e+03 -6.6883270e+01 - 8.4924701e+02 -3.4429305e+03 -5.9652474e+01 - 9.1951965e+02 -3.4234454e+03 -5.1331355e+01 - 9.8976304e+02 -3.4022014e+03 -4.1764863e+01 - 1.0600199e+03 -3.3791247e+03 -3.0765898e+01 - 1.1303497e+03 -3.3541221e+03 -1.8108558e+01 - 1.2008326e+03 -3.3270753e+03 -3.5201018e+00 - 1.2715757e+03 -3.2978349e+03 1.3328347e+01 - 1.3427188e+03 -3.2662120e+03 3.2831945e+01 - 1.4144425e+03 -3.2319690e+03 5.5461999e+01 - 1.4869755e+03 -3.1948090e+03 8.1773036e+01 - 1.5606004e+03 -3.1543683e+03 1.1240197e+02 - 1.6356523e+03 -3.1102135e+03 1.4804989e+02 - 1.7125021e+03 -3.0618557e+03 1.8943017e+02 - 1.7915074e+03 -3.0087978e+03 2.3715821e+02 - 1.8729071e+03 -2.9506427e+03 2.9155188e+02 - 1.9566306e+03 -2.8872939e+03 3.5232221e+02 - 2.0420122e+03 -2.8192644e+03 4.1818476e+02 - 2.1274679e+03 -2.7480394e+03 4.8653669e+02 - 2.2103058e+03 -2.6763142e+03 5.5348288e+02 - 2.2869272e+03 -2.6078365e+03 6.1448661e+02 - 2.3535378e+03 -2.5467047e+03 6.6557703e+02 - 2.4071268e+03 -2.4963577e+03 7.0452888e+02 - 2.4461986e+03 -2.4587858e+03 7.3132046e+02 - 2.4709187e+03 -2.4343270e+03 7.4770607e+02 - 2.4827658e+03 -2.4219739e+03 7.5633423e+02 - 2.4840173e+03 -2.4198636e+03 7.5993669e+02 - 2.4773198e+03 -2.4256904e+03 7.6082883e+02 - 2.4654273e+03 -2.4369551e+03 7.6069545e+02 - 2.4510776e+03 -2.4510776e+03 7.6054043e+02 - 2.4369551e+03 -2.4654273e+03 7.6069545e+02 - 2.4256904e+03 -2.4773198e+03 7.6082883e+02 - 2.4198636e+03 -2.4840173e+03 7.5993669e+02 - 2.4219739e+03 -2.4827658e+03 7.5633423e+02 - 2.4343270e+03 -2.4709187e+03 7.4770607e+02 - 2.4587858e+03 -2.4461986e+03 7.3132046e+02 - 2.4963577e+03 -2.4071268e+03 7.0452888e+02 - 2.5467047e+03 -2.3535378e+03 6.6557703e+02 - 2.6078365e+03 -2.2869272e+03 6.1448661e+02 - 2.6763142e+03 -2.2103058e+03 5.5348288e+02 - 2.7480394e+03 -2.1274679e+03 4.8653669e+02 - 2.8192644e+03 -2.0420122e+03 4.1818476e+02 - 2.8872939e+03 -1.9566306e+03 3.5232221e+02 - 2.9506427e+03 -1.8729071e+03 2.9155188e+02 - 3.0087978e+03 -1.7915074e+03 2.3715821e+02 - 3.0618557e+03 -1.7125021e+03 1.8943017e+02 - 3.1102135e+03 -1.6356523e+03 1.4804989e+02 - 3.1543683e+03 -1.5606004e+03 1.1240197e+02 - 3.1948090e+03 -1.4869755e+03 8.1773036e+01 - 3.2319690e+03 -1.4144425e+03 5.5461999e+01 - 3.2662120e+03 -1.3427188e+03 3.2831945e+01 - 3.2978349e+03 -1.2715757e+03 1.3328347e+01 - 3.3270753e+03 -1.2008326e+03 -3.5201018e+00 - 3.3541221e+03 -1.1303497e+03 -1.8108558e+01 - 3.3791247e+03 -1.0600199e+03 -3.0765898e+01 - 3.4022014e+03 -9.8976304e+02 -4.1764863e+01 - 3.4234454e+03 -9.1951965e+02 -5.1331355e+01 - 3.4429305e+03 -8.4924701e+02 -5.9652474e+01 - 3.4607154e+03 -7.7891545e+02 -6.6883270e+01 - 3.4768465e+03 -7.0850565e+02 -7.3152292e+01 - 3.4913607e+03 -6.3800646e+02 -7.8566113e+01 - 3.5042873e+03 -5.6741322e+02 -8.3212984e+01 - 3.5156498e+03 -4.9672636e+02 -8.7165776e+01 - 3.5254663e+03 -4.2595039e+02 -9.0484334e+01 - 3.5337516e+03 -3.5509301e+02 -9.3217353e+01 - 3.5405167e+03 -2.8416443e+02 -9.5403860e+01 - 3.5457703e+03 -2.1317678e+02 -9.7074372e+01 - 3.5495187e+03 -1.4214363e+02 -9.8251773e+01 - 3.5517660e+03 -7.1079618e+01 -9.8951972e+01 - 3.5525149e+03 2.4067136e-09 -9.9184340e+01 - 3.5546544e+03 -2.4067136e-09 -1.0937336e+02 - 3.5539254e+03 7.0698136e+01 -1.0919836e+02 - 3.5517382e+03 1.4137695e+02 -1.0867107e+02 - 3.5480913e+03 2.1201736e+02 -1.0778451e+02 - 3.5429822e+03 2.8260070e+02 -1.0652686e+02 - 3.5364073e+03 3.5310906e+02 -1.0488110e+02 - 3.5283615e+03 4.2352548e+02 -1.0282453e+02 - 3.5188384e+03 4.9383434e+02 -1.0032810e+02 - 3.5078292e+03 5.6402174e+02 -9.7355567e+01 - 3.4953227e+03 6.3407598e+02 -9.3862347e+01 - 3.4813047e+03 7.0398813e+02 -8.9794094e+01 - 3.4657569e+03 7.7375283e+02 -8.5084894e+01 - 3.4486561e+03 8.4336919e+02 -7.9654982e+01 - 3.4299726e+03 9.1284203e+02 -7.3407861e+01 - 3.4096685e+03 9.8218345e+02 -6.6226677e+01 - 3.3876955e+03 1.0514148e+03 -5.7969651e+01 - 3.3639913e+03 1.1205696e+03 -4.8464328e+01 - 3.3384763e+03 1.1896966e+03 -3.7500399e+01 - 3.3110475e+03 1.2588646e+03 -2.4820785e+01 - 3.2815722e+03 1.3281684e+03 -1.0110774e+01 - 3.2498787e+03 1.3977362e+03 7.0148113e+00 - 3.2157451e+03 1.4677391e+03 2.7025900e+01 - 3.1788864e+03 1.5384017e+03 5.0491194e+01 - 3.1389397e+03 1.6100135e+03 7.8087698e+01 - 3.0954534e+03 1.6829368e+03 1.1059671e+02 - 3.0478875e+03 1.7576013e+03 1.4886862e+02 - 2.9956458e+03 1.8344690e+03 1.9372543e+02 - 2.9381745e+03 1.9139353e+03 2.4575426e+02 - 2.8751801e+03 1.9961181e+03 3.0494218e+02 - 2.8070138e+03 2.0804954e+03 3.7015216e+02 - 2.7351889e+03 2.1654316e+03 4.3860118e+02 - 2.6627919e+03 2.2478266e+03 5.0576021e+02 - 2.5943402e+03 2.3233186e+03 5.6617868e+02 - 2.5347808e+03 2.3873025e+03 6.1520484e+02 - 2.4880131e+03 2.4363697e+03 6.5063345e+02 - 2.4558467e+03 2.4692724e+03 6.7314160e+02 - 2.4379291e+03 2.4869204e+03 6.8541376e+02 - 2.4323632e+03 2.4917121e+03 6.9081826e+02 - 2.4364298e+03 2.4867808e+03 6.9241262e+02 - 2.4470802e+03 2.4754843e+03 6.9246721e+02 - 2.4611638e+03 2.4611638e+03 6.9233663e+02 - 2.4754843e+03 2.4470802e+03 6.9246721e+02 - 2.4867808e+03 2.4364298e+03 6.9241262e+02 - 2.4917121e+03 2.4323632e+03 6.9081826e+02 - 2.4869204e+03 2.4379291e+03 6.8541376e+02 - 2.4692724e+03 2.4558467e+03 6.7314160e+02 - 2.4363697e+03 2.4880131e+03 6.5063345e+02 - 2.3873025e+03 2.5347808e+03 6.1520484e+02 - 2.3233186e+03 2.5943402e+03 5.6617868e+02 - 2.2478266e+03 2.6627919e+03 5.0576021e+02 - 2.1654316e+03 2.7351889e+03 4.3860118e+02 - 2.0804954e+03 2.8070138e+03 3.7015216e+02 - 1.9961181e+03 2.8751801e+03 3.0494218e+02 - 1.9139353e+03 2.9381745e+03 2.4575426e+02 - 1.8344690e+03 2.9956458e+03 1.9372543e+02 - 1.7576013e+03 3.0478875e+03 1.4886862e+02 - 1.6829368e+03 3.0954534e+03 1.1059671e+02 - 1.6100135e+03 3.1389397e+03 7.8087698e+01 - 1.5384017e+03 3.1788864e+03 5.0491194e+01 - 1.4677391e+03 3.2157451e+03 2.7025900e+01 - 1.3977362e+03 3.2498787e+03 7.0148113e+00 - 1.3281684e+03 3.2815722e+03 -1.0110774e+01 - 1.2588646e+03 3.3110475e+03 -2.4820785e+01 - 1.1896966e+03 3.3384763e+03 -3.7500399e+01 - 1.1205696e+03 3.3639913e+03 -4.8464328e+01 - 1.0514148e+03 3.3876955e+03 -5.7969651e+01 - 9.8218345e+02 3.4096685e+03 -6.6226677e+01 - 9.1284203e+02 3.4299726e+03 -7.3407861e+01 - 8.4336919e+02 3.4486561e+03 -7.9654982e+01 - 7.7375283e+02 3.4657569e+03 -8.5084894e+01 - 7.0398813e+02 3.4813047e+03 -8.9794094e+01 - 6.3407598e+02 3.4953227e+03 -9.3862347e+01 - 5.6402174e+02 3.5078292e+03 -9.7355567e+01 - 4.9383434e+02 3.5188384e+03 -1.0032810e+02 - 4.2352548e+02 3.5283615e+03 -1.0282453e+02 - 3.5310906e+02 3.5364073e+03 -1.0488110e+02 - 2.8260070e+02 3.5429822e+03 -1.0652686e+02 - 2.1201736e+02 3.5480913e+03 -1.0778451e+02 - 1.4137695e+02 3.5517382e+03 -1.0867107e+02 - 7.0698136e+01 3.5539254e+03 -1.0919836e+02 - 0.0000000e+00 3.5546544e+03 -1.0937336e+02 - -7.0698136e+01 3.5539254e+03 -1.0919836e+02 - -1.4137695e+02 3.5517382e+03 -1.0867107e+02 - -2.1201736e+02 3.5480913e+03 -1.0778451e+02 - -2.8260070e+02 3.5429822e+03 -1.0652686e+02 - -3.5310906e+02 3.5364073e+03 -1.0488110e+02 - -4.2352548e+02 3.5283615e+03 -1.0282453e+02 - -4.9383434e+02 3.5188384e+03 -1.0032810e+02 - -5.6402174e+02 3.5078292e+03 -9.7355567e+01 - -6.3407598e+02 3.4953227e+03 -9.3862347e+01 - -7.0398813e+02 3.4813047e+03 -8.9794094e+01 - -7.7375283e+02 3.4657569e+03 -8.5084894e+01 - -8.4336919e+02 3.4486561e+03 -7.9654982e+01 - -9.1284203e+02 3.4299726e+03 -7.3407861e+01 - -9.8218345e+02 3.4096685e+03 -6.6226677e+01 - -1.0514148e+03 3.3876955e+03 -5.7969651e+01 - -1.1205696e+03 3.3639913e+03 -4.8464328e+01 - -1.1896966e+03 3.3384763e+03 -3.7500399e+01 - -1.2588646e+03 3.3110475e+03 -2.4820785e+01 - -1.3281684e+03 3.2815722e+03 -1.0110774e+01 - -1.3977362e+03 3.2498787e+03 7.0148113e+00 - -1.4677391e+03 3.2157451e+03 2.7025900e+01 - -1.5384017e+03 3.1788864e+03 5.0491194e+01 - -1.6100135e+03 3.1389397e+03 7.8087698e+01 - -1.6829368e+03 3.0954534e+03 1.1059671e+02 - -1.7576013e+03 3.0478875e+03 1.4886862e+02 - -1.8344690e+03 2.9956458e+03 1.9372543e+02 - -1.9139353e+03 2.9381745e+03 2.4575426e+02 - -1.9961181e+03 2.8751801e+03 3.0494218e+02 - -2.0804954e+03 2.8070138e+03 3.7015216e+02 - -2.1654316e+03 2.7351889e+03 4.3860118e+02 - -2.2478266e+03 2.6627919e+03 5.0576021e+02 - -2.3233186e+03 2.5943402e+03 5.6617868e+02 - -2.3873025e+03 2.5347808e+03 6.1520484e+02 - -2.4363697e+03 2.4880131e+03 6.5063345e+02 - -2.4692724e+03 2.4558467e+03 6.7314160e+02 - -2.4869204e+03 2.4379291e+03 6.8541376e+02 - -2.4917121e+03 2.4323632e+03 6.9081826e+02 - -2.4867808e+03 2.4364298e+03 6.9241262e+02 - -2.4754843e+03 2.4470802e+03 6.9246721e+02 - -2.4611638e+03 2.4611638e+03 6.9233663e+02 - -2.4470802e+03 2.4754843e+03 6.9246721e+02 - -2.4364298e+03 2.4867808e+03 6.9241262e+02 - -2.4323632e+03 2.4917121e+03 6.9081826e+02 - -2.4379291e+03 2.4869204e+03 6.8541376e+02 - -2.4558467e+03 2.4692724e+03 6.7314160e+02 - -2.4880131e+03 2.4363697e+03 6.5063345e+02 - -2.5347808e+03 2.3873025e+03 6.1520484e+02 - -2.5943402e+03 2.3233186e+03 5.6617868e+02 - -2.6627919e+03 2.2478266e+03 5.0576021e+02 - -2.7351889e+03 2.1654316e+03 4.3860118e+02 - -2.8070138e+03 2.0804954e+03 3.7015216e+02 - -2.8751801e+03 1.9961181e+03 3.0494218e+02 - -2.9381745e+03 1.9139353e+03 2.4575426e+02 - -2.9956458e+03 1.8344690e+03 1.9372543e+02 - -3.0478875e+03 1.7576013e+03 1.4886862e+02 - -3.0954534e+03 1.6829368e+03 1.1059671e+02 - -3.1389397e+03 1.6100135e+03 7.8087698e+01 - -3.1788864e+03 1.5384017e+03 5.0491194e+01 - -3.2157451e+03 1.4677391e+03 2.7025900e+01 - -3.2498787e+03 1.3977362e+03 7.0148113e+00 - -3.2815722e+03 1.3281684e+03 -1.0110774e+01 - -3.3110475e+03 1.2588646e+03 -2.4820785e+01 - -3.3384763e+03 1.1896966e+03 -3.7500399e+01 - -3.3639913e+03 1.1205696e+03 -4.8464328e+01 - -3.3876955e+03 1.0514148e+03 -5.7969651e+01 - -3.4096685e+03 9.8218345e+02 -6.6226677e+01 - -3.4299726e+03 9.1284203e+02 -7.3407861e+01 - -3.4486561e+03 8.4336919e+02 -7.9654982e+01 - -3.4657569e+03 7.7375283e+02 -8.5084894e+01 - -3.4813047e+03 7.0398813e+02 -8.9794094e+01 - -3.4953227e+03 6.3407598e+02 -9.3862347e+01 - -3.5078292e+03 5.6402174e+02 -9.7355567e+01 - -3.5188384e+03 4.9383434e+02 -1.0032810e+02 - -3.5283615e+03 4.2352548e+02 -1.0282453e+02 - -3.5364073e+03 3.5310906e+02 -1.0488110e+02 - -3.5429822e+03 2.8260070e+02 -1.0652686e+02 - -3.5480913e+03 2.1201736e+02 -1.0778451e+02 - -3.5517382e+03 1.4137695e+02 -1.0867107e+02 - -3.5539254e+03 7.0698136e+01 -1.0919836e+02 - -3.5546544e+03 2.4067136e-09 -1.0937336e+02 - -3.5539254e+03 -7.0698136e+01 -1.0919836e+02 - -3.5517382e+03 -1.4137695e+02 -1.0867107e+02 - -3.5480913e+03 -2.1201736e+02 -1.0778451e+02 - -3.5429822e+03 -2.8260070e+02 -1.0652686e+02 - -3.5364073e+03 -3.5310906e+02 -1.0488110e+02 - -3.5283615e+03 -4.2352548e+02 -1.0282453e+02 - -3.5188384e+03 -4.9383434e+02 -1.0032810e+02 - -3.5078292e+03 -5.6402174e+02 -9.7355567e+01 - -3.4953227e+03 -6.3407598e+02 -9.3862347e+01 - -3.4813047e+03 -7.0398813e+02 -8.9794094e+01 - -3.4657569e+03 -7.7375283e+02 -8.5084894e+01 - -3.4486561e+03 -8.4336919e+02 -7.9654982e+01 - -3.4299726e+03 -9.1284203e+02 -7.3407861e+01 - -3.4096685e+03 -9.8218345e+02 -6.6226677e+01 - -3.3876955e+03 -1.0514148e+03 -5.7969651e+01 - -3.3639913e+03 -1.1205696e+03 -4.8464328e+01 - -3.3384763e+03 -1.1896966e+03 -3.7500399e+01 - -3.3110475e+03 -1.2588646e+03 -2.4820785e+01 - -3.2815722e+03 -1.3281684e+03 -1.0110774e+01 - -3.2498787e+03 -1.3977362e+03 7.0148113e+00 - -3.2157451e+03 -1.4677391e+03 2.7025900e+01 - -3.1788864e+03 -1.5384017e+03 5.0491194e+01 - -3.1389397e+03 -1.6100135e+03 7.8087698e+01 - -3.0954534e+03 -1.6829368e+03 1.1059671e+02 - -3.0478875e+03 -1.7576013e+03 1.4886862e+02 - -2.9956458e+03 -1.8344690e+03 1.9372543e+02 - -2.9381745e+03 -1.9139353e+03 2.4575426e+02 - -2.8751801e+03 -1.9961181e+03 3.0494218e+02 - -2.8070138e+03 -2.0804954e+03 3.7015216e+02 - -2.7351889e+03 -2.1654316e+03 4.3860118e+02 - -2.6627919e+03 -2.2478266e+03 5.0576021e+02 - -2.5943402e+03 -2.3233186e+03 5.6617868e+02 - -2.5347808e+03 -2.3873025e+03 6.1520484e+02 - -2.4880131e+03 -2.4363697e+03 6.5063345e+02 - -2.4558467e+03 -2.4692724e+03 6.7314160e+02 - -2.4379291e+03 -2.4869204e+03 6.8541376e+02 - -2.4323632e+03 -2.4917121e+03 6.9081826e+02 - -2.4364298e+03 -2.4867808e+03 6.9241262e+02 - -2.4470802e+03 -2.4754843e+03 6.9246721e+02 - -2.4611638e+03 -2.4611638e+03 6.9233663e+02 - -2.4754843e+03 -2.4470802e+03 6.9246721e+02 - -2.4867808e+03 -2.4364298e+03 6.9241262e+02 - -2.4917121e+03 -2.4323632e+03 6.9081826e+02 - -2.4869204e+03 -2.4379291e+03 6.8541376e+02 - -2.4692724e+03 -2.4558467e+03 6.7314160e+02 - -2.4363697e+03 -2.4880131e+03 6.5063345e+02 - -2.3873025e+03 -2.5347808e+03 6.1520484e+02 - -2.3233186e+03 -2.5943402e+03 5.6617868e+02 - -2.2478266e+03 -2.6627919e+03 5.0576021e+02 - -2.1654316e+03 -2.7351889e+03 4.3860118e+02 - -2.0804954e+03 -2.8070138e+03 3.7015216e+02 - -1.9961181e+03 -2.8751801e+03 3.0494218e+02 - -1.9139353e+03 -2.9381745e+03 2.4575426e+02 - -1.8344690e+03 -2.9956458e+03 1.9372543e+02 - -1.7576013e+03 -3.0478875e+03 1.4886862e+02 - -1.6829368e+03 -3.0954534e+03 1.1059671e+02 - -1.6100135e+03 -3.1389397e+03 7.8087698e+01 - -1.5384017e+03 -3.1788864e+03 5.0491194e+01 - -1.4677391e+03 -3.2157451e+03 2.7025900e+01 - -1.3977362e+03 -3.2498787e+03 7.0148113e+00 - -1.3281684e+03 -3.2815722e+03 -1.0110774e+01 - -1.2588646e+03 -3.3110475e+03 -2.4820785e+01 - -1.1896966e+03 -3.3384763e+03 -3.7500399e+01 - -1.1205696e+03 -3.3639913e+03 -4.8464328e+01 - -1.0514148e+03 -3.3876955e+03 -5.7969651e+01 - -9.8218345e+02 -3.4096685e+03 -6.6226677e+01 - -9.1284203e+02 -3.4299726e+03 -7.3407861e+01 - -8.4336919e+02 -3.4486561e+03 -7.9654982e+01 - -7.7375283e+02 -3.4657569e+03 -8.5084894e+01 - -7.0398813e+02 -3.4813047e+03 -8.9794094e+01 - -6.3407598e+02 -3.4953227e+03 -9.3862347e+01 - -5.6402174e+02 -3.5078292e+03 -9.7355567e+01 - -4.9383434e+02 -3.5188384e+03 -1.0032810e+02 - -4.2352548e+02 -3.5283615e+03 -1.0282453e+02 - -3.5310906e+02 -3.5364073e+03 -1.0488110e+02 - -2.8260070e+02 -3.5429822e+03 -1.0652686e+02 - -2.1201736e+02 -3.5480913e+03 -1.0778451e+02 - -1.4137695e+02 -3.5517382e+03 -1.0867107e+02 - -7.0698136e+01 -3.5539254e+03 -1.0919836e+02 - 0.0000000e+00 -3.5546544e+03 -1.0937336e+02 - 7.0698136e+01 -3.5539254e+03 -1.0919836e+02 - 1.4137695e+02 -3.5517382e+03 -1.0867107e+02 - 2.1201736e+02 -3.5480913e+03 -1.0778451e+02 - 2.8260070e+02 -3.5429822e+03 -1.0652686e+02 - 3.5310906e+02 -3.5364073e+03 -1.0488110e+02 - 4.2352548e+02 -3.5283615e+03 -1.0282453e+02 - 4.9383434e+02 -3.5188384e+03 -1.0032810e+02 - 5.6402174e+02 -3.5078292e+03 -9.7355567e+01 - 6.3407598e+02 -3.4953227e+03 -9.3862347e+01 - 7.0398813e+02 -3.4813047e+03 -8.9794094e+01 - 7.7375283e+02 -3.4657569e+03 -8.5084894e+01 - 8.4336919e+02 -3.4486561e+03 -7.9654982e+01 - 9.1284203e+02 -3.4299726e+03 -7.3407861e+01 - 9.8218345e+02 -3.4096685e+03 -6.6226677e+01 - 1.0514148e+03 -3.3876955e+03 -5.7969651e+01 - 1.1205696e+03 -3.3639913e+03 -4.8464328e+01 - 1.1896966e+03 -3.3384763e+03 -3.7500399e+01 - 1.2588646e+03 -3.3110475e+03 -2.4820785e+01 - 1.3281684e+03 -3.2815722e+03 -1.0110774e+01 - 1.3977362e+03 -3.2498787e+03 7.0148113e+00 - 1.4677391e+03 -3.2157451e+03 2.7025900e+01 - 1.5384017e+03 -3.1788864e+03 5.0491194e+01 - 1.6100135e+03 -3.1389397e+03 7.8087698e+01 - 1.6829368e+03 -3.0954534e+03 1.1059671e+02 - 1.7576013e+03 -3.0478875e+03 1.4886862e+02 - 1.8344690e+03 -2.9956458e+03 1.9372543e+02 - 1.9139353e+03 -2.9381745e+03 2.4575426e+02 - 1.9961181e+03 -2.8751801e+03 3.0494218e+02 - 2.0804954e+03 -2.8070138e+03 3.7015216e+02 - 2.1654316e+03 -2.7351889e+03 4.3860118e+02 - 2.2478266e+03 -2.6627919e+03 5.0576021e+02 - 2.3233186e+03 -2.5943402e+03 5.6617868e+02 - 2.3873025e+03 -2.5347808e+03 6.1520484e+02 - 2.4363697e+03 -2.4880131e+03 6.5063345e+02 - 2.4692724e+03 -2.4558467e+03 6.7314160e+02 - 2.4869204e+03 -2.4379291e+03 6.8541376e+02 - 2.4917121e+03 -2.4323632e+03 6.9081826e+02 - 2.4867808e+03 -2.4364298e+03 6.9241262e+02 - 2.4754843e+03 -2.4470802e+03 6.9246721e+02 - 2.4611638e+03 -2.4611638e+03 6.9233663e+02 - 2.4470802e+03 -2.4754843e+03 6.9246721e+02 - 2.4364298e+03 -2.4867808e+03 6.9241262e+02 - 2.4323632e+03 -2.4917121e+03 6.9081826e+02 - 2.4379291e+03 -2.4869204e+03 6.8541376e+02 - 2.4558467e+03 -2.4692724e+03 6.7314160e+02 - 2.4880131e+03 -2.4363697e+03 6.5063345e+02 - 2.5347808e+03 -2.3873025e+03 6.1520484e+02 - 2.5943402e+03 -2.3233186e+03 5.6617868e+02 - 2.6627919e+03 -2.2478266e+03 5.0576021e+02 - 2.7351889e+03 -2.1654316e+03 4.3860118e+02 - 2.8070138e+03 -2.0804954e+03 3.7015216e+02 - 2.8751801e+03 -1.9961181e+03 3.0494218e+02 - 2.9381745e+03 -1.9139353e+03 2.4575426e+02 - 2.9956458e+03 -1.8344690e+03 1.9372543e+02 - 3.0478875e+03 -1.7576013e+03 1.4886862e+02 - 3.0954534e+03 -1.6829368e+03 1.1059671e+02 - 3.1389397e+03 -1.6100135e+03 7.8087698e+01 - 3.1788864e+03 -1.5384017e+03 5.0491194e+01 - 3.2157451e+03 -1.4677391e+03 2.7025900e+01 - 3.2498787e+03 -1.3977362e+03 7.0148113e+00 - 3.2815722e+03 -1.3281684e+03 -1.0110774e+01 - 3.3110475e+03 -1.2588646e+03 -2.4820785e+01 - 3.3384763e+03 -1.1896966e+03 -3.7500399e+01 - 3.3639913e+03 -1.1205696e+03 -4.8464328e+01 - 3.3876955e+03 -1.0514148e+03 -5.7969651e+01 - 3.4096685e+03 -9.8218345e+02 -6.6226677e+01 - 3.4299726e+03 -9.1284203e+02 -7.3407861e+01 - 3.4486561e+03 -8.4336919e+02 -7.9654982e+01 - 3.4657569e+03 -7.7375283e+02 -8.5084894e+01 - 3.4813047e+03 -7.0398813e+02 -8.9794094e+01 - 3.4953227e+03 -6.3407598e+02 -9.3862347e+01 - 3.5078292e+03 -5.6402174e+02 -9.7355567e+01 - 3.5188384e+03 -4.9383434e+02 -1.0032810e+02 - 3.5283615e+03 -4.2352548e+02 -1.0282453e+02 - 3.5364073e+03 -3.5310906e+02 -1.0488110e+02 - 3.5429822e+03 -2.8260070e+02 -1.0652686e+02 - 3.5480913e+03 -2.1201736e+02 -1.0778451e+02 - 3.5517382e+03 -1.4137695e+02 -1.0867107e+02 - 3.5539254e+03 -7.0698136e+01 -1.0919836e+02 - 3.5546544e+03 0.0000000e+00 -1.0937336e+02 - 3.5556624e+03 -2.4067136e-09 -1.1467132e+02 - 3.5549483e+03 7.0405557e+01 -1.1454323e+02 - 3.5528057e+03 1.4078911e+02 -1.1415727e+02 - 3.5492341e+03 2.1112879e+02 -1.1350840e+02 - 3.5442323e+03 2.8140306e+02 -1.1258808e+02 - 3.5377986e+03 3.5159082e+02 -1.1138399e+02 - 3.5299306e+03 4.2167164e+02 -1.0987971e+02 - 3.5206250e+03 4.9162596e+02 -1.0805424e+02 - 3.5098774e+03 5.6143537e+02 -1.0588134e+02 - 3.4976819e+03 6.3108290e+02 -1.0332877e+02 - 3.4840308e+03 7.0055344e+02 -1.0035719e+02 - 3.4689140e+03 7.6983421e+02 -9.6918845e+01 - 3.4523183e+03 8.3891541e+02 -9.2955909e+01 - 3.4342266e+03 9.0779105e+02 -8.8398310e+01 - 3.4146163e+03 9.7645996e+02 -8.3161013e+01 - 3.3934582e+03 1.0449272e+03 -7.7140523e+01 - 3.3707140e+03 1.1132061e+03 -7.0210425e+01 - 3.3463340e+03 1.1813203e+03 -6.2215636e+01 - 3.3202524e+03 1.2493074e+03 -5.2965038e+01 - 3.2923830e+03 1.3172235e+03 -4.2222027e+01 - 3.2626120e+03 1.3851489e+03 -2.9692489e+01 - 3.2307883e+03 1.4531964e+03 -1.5009728e+01 - 3.1967116e+03 1.5215220e+03 2.2838452e+00 - 3.1601162e+03 1.5903384e+03 2.2757612e+01 - 3.1206514e+03 1.6599319e+03 4.7113464e+01 - 3.0778604e+03 1.7306788e+03 7.6198806e+01 - 3.0311654e+03 1.8030559e+03 1.1099443e+02 - 2.9798778e+03 1.8776250e+03 1.5254147e+02 - 2.9232758e+03 1.9549515e+03 2.0174298e+02 - 2.8608272e+03 2.0353854e+03 2.5894931e+02 - 2.7926563e+03 2.1186135e+03 3.2326659e+02 - 2.7202747e+03 2.2029757e+03 3.9173853e+02 - 2.6472726e+03 2.2848507e+03 4.5901588e+02 - 2.5792159e+03 2.3588406e+03 5.1842955e+02 - 2.5221447e+03 2.4193027e+03 5.6453868e+02 - 2.4803522e+03 2.4625169e+03 5.9544496e+02 - 2.4550828e+03 2.4878800e+03 6.1298264e+02 - 2.4448376e+03 2.4974996e+03 6.2103489e+02 - 2.4464978e+03 2.4950068e+03 6.2365094e+02 - 2.4562949e+03 2.4845530e+03 6.2396689e+02 - 2.4703012e+03 2.4703012e+03 6.2386592e+02 - 2.4845530e+03 2.4562949e+03 6.2396689e+02 - 2.4950068e+03 2.4464978e+03 6.2365094e+02 - 2.4974996e+03 2.4448376e+03 6.2103489e+02 - 2.4878800e+03 2.4550828e+03 6.1298264e+02 - 2.4625169e+03 2.4803522e+03 5.9544496e+02 - 2.4193027e+03 2.5221447e+03 5.6453868e+02 - 2.3588406e+03 2.5792159e+03 5.1842955e+02 - 2.2848507e+03 2.6472726e+03 4.5901588e+02 - 2.2029757e+03 2.7202747e+03 3.9173853e+02 - 2.1186135e+03 2.7926563e+03 3.2326659e+02 - 2.0353854e+03 2.8608272e+03 2.5894931e+02 - 1.9549515e+03 2.9232758e+03 2.0174298e+02 - 1.8776250e+03 2.9798778e+03 1.5254147e+02 - 1.8030559e+03 3.0311654e+03 1.1099443e+02 - 1.7306788e+03 3.0778604e+03 7.6198806e+01 - 1.6599319e+03 3.1206514e+03 4.7113464e+01 - 1.5903384e+03 3.1601162e+03 2.2757612e+01 - 1.5215220e+03 3.1967116e+03 2.2838452e+00 - 1.4531964e+03 3.2307883e+03 -1.5009728e+01 - 1.3851489e+03 3.2626120e+03 -2.9692489e+01 - 1.3172235e+03 3.2923830e+03 -4.2222027e+01 - 1.2493074e+03 3.3202524e+03 -5.2965038e+01 - 1.1813203e+03 3.3463340e+03 -6.2215636e+01 - 1.1132061e+03 3.3707140e+03 -7.0210425e+01 - 1.0449272e+03 3.3934582e+03 -7.7140523e+01 - 9.7645996e+02 3.4146163e+03 -8.3161013e+01 - 9.0779105e+02 3.4342266e+03 -8.8398310e+01 - 8.3891541e+02 3.4523183e+03 -9.2955909e+01 - 7.6983421e+02 3.4689140e+03 -9.6918845e+01 - 7.0055344e+02 3.4840308e+03 -1.0035719e+02 - 6.3108290e+02 3.4976819e+03 -1.0332877e+02 - 5.6143537e+02 3.5098774e+03 -1.0588134e+02 - 4.9162596e+02 3.5206250e+03 -1.0805424e+02 - 4.2167164e+02 3.5299306e+03 -1.0987971e+02 - 3.5159082e+02 3.5377986e+03 -1.1138399e+02 - 2.8140306e+02 3.5442323e+03 -1.1258808e+02 - 2.1112879e+02 3.5492341e+03 -1.1350840e+02 - 1.4078911e+02 3.5528057e+03 -1.1415727e+02 - 7.0405557e+01 3.5549483e+03 -1.1454323e+02 - 0.0000000e+00 3.5556624e+03 -1.1467132e+02 - -7.0405557e+01 3.5549483e+03 -1.1454323e+02 - -1.4078911e+02 3.5528057e+03 -1.1415727e+02 - -2.1112879e+02 3.5492341e+03 -1.1350840e+02 - -2.8140306e+02 3.5442323e+03 -1.1258808e+02 - -3.5159082e+02 3.5377986e+03 -1.1138399e+02 - -4.2167164e+02 3.5299306e+03 -1.0987971e+02 - -4.9162596e+02 3.5206250e+03 -1.0805424e+02 - -5.6143537e+02 3.5098774e+03 -1.0588134e+02 - -6.3108290e+02 3.4976819e+03 -1.0332877e+02 - -7.0055344e+02 3.4840308e+03 -1.0035719e+02 - -7.6983421e+02 3.4689140e+03 -9.6918845e+01 - -8.3891541e+02 3.4523183e+03 -9.2955909e+01 - -9.0779105e+02 3.4342266e+03 -8.8398310e+01 - -9.7645996e+02 3.4146163e+03 -8.3161013e+01 - -1.0449272e+03 3.3934582e+03 -7.7140523e+01 - -1.1132061e+03 3.3707140e+03 -7.0210425e+01 - -1.1813203e+03 3.3463340e+03 -6.2215636e+01 - -1.2493074e+03 3.3202524e+03 -5.2965038e+01 - -1.3172235e+03 3.2923830e+03 -4.2222027e+01 - -1.3851489e+03 3.2626120e+03 -2.9692489e+01 - -1.4531964e+03 3.2307883e+03 -1.5009728e+01 - -1.5215220e+03 3.1967116e+03 2.2838452e+00 - -1.5903384e+03 3.1601162e+03 2.2757612e+01 - -1.6599319e+03 3.1206514e+03 4.7113464e+01 - -1.7306788e+03 3.0778604e+03 7.6198806e+01 - -1.8030559e+03 3.0311654e+03 1.1099443e+02 - -1.8776250e+03 2.9798778e+03 1.5254147e+02 - -1.9549515e+03 2.9232758e+03 2.0174298e+02 - -2.0353854e+03 2.8608272e+03 2.5894931e+02 - -2.1186135e+03 2.7926563e+03 3.2326659e+02 - -2.2029757e+03 2.7202747e+03 3.9173853e+02 - -2.2848507e+03 2.6472726e+03 4.5901588e+02 - -2.3588406e+03 2.5792159e+03 5.1842955e+02 - -2.4193027e+03 2.5221447e+03 5.6453868e+02 - -2.4625169e+03 2.4803522e+03 5.9544496e+02 - -2.4878800e+03 2.4550828e+03 6.1298264e+02 - -2.4974996e+03 2.4448376e+03 6.2103489e+02 - -2.4950068e+03 2.4464978e+03 6.2365094e+02 - -2.4845530e+03 2.4562949e+03 6.2396689e+02 - -2.4703012e+03 2.4703012e+03 6.2386592e+02 - -2.4562949e+03 2.4845530e+03 6.2396689e+02 - -2.4464978e+03 2.4950068e+03 6.2365094e+02 - -2.4448376e+03 2.4974996e+03 6.2103489e+02 - -2.4550828e+03 2.4878800e+03 6.1298264e+02 - -2.4803522e+03 2.4625169e+03 5.9544496e+02 - -2.5221447e+03 2.4193027e+03 5.6453868e+02 - -2.5792159e+03 2.3588406e+03 5.1842955e+02 - -2.6472726e+03 2.2848507e+03 4.5901588e+02 - -2.7202747e+03 2.2029757e+03 3.9173853e+02 - -2.7926563e+03 2.1186135e+03 3.2326659e+02 - -2.8608272e+03 2.0353854e+03 2.5894931e+02 - -2.9232758e+03 1.9549515e+03 2.0174298e+02 - -2.9798778e+03 1.8776250e+03 1.5254147e+02 - -3.0311654e+03 1.8030559e+03 1.1099443e+02 - -3.0778604e+03 1.7306788e+03 7.6198806e+01 - -3.1206514e+03 1.6599319e+03 4.7113464e+01 - -3.1601162e+03 1.5903384e+03 2.2757612e+01 - -3.1967116e+03 1.5215220e+03 2.2838452e+00 - -3.2307883e+03 1.4531964e+03 -1.5009728e+01 - -3.2626120e+03 1.3851489e+03 -2.9692489e+01 - -3.2923830e+03 1.3172235e+03 -4.2222027e+01 - -3.3202524e+03 1.2493074e+03 -5.2965038e+01 - -3.3463340e+03 1.1813203e+03 -6.2215636e+01 - -3.3707140e+03 1.1132061e+03 -7.0210425e+01 - -3.3934582e+03 1.0449272e+03 -7.7140523e+01 - -3.4146163e+03 9.7645996e+02 -8.3161013e+01 - -3.4342266e+03 9.0779105e+02 -8.8398310e+01 - -3.4523183e+03 8.3891541e+02 -9.2955909e+01 - -3.4689140e+03 7.6983421e+02 -9.6918845e+01 - -3.4840308e+03 7.0055344e+02 -1.0035719e+02 - -3.4976819e+03 6.3108290e+02 -1.0332877e+02 - -3.5098774e+03 5.6143537e+02 -1.0588134e+02 - -3.5206250e+03 4.9162596e+02 -1.0805424e+02 - -3.5299306e+03 4.2167164e+02 -1.0987971e+02 - -3.5377986e+03 3.5159082e+02 -1.1138399e+02 - -3.5442323e+03 2.8140306e+02 -1.1258808e+02 - -3.5492341e+03 2.1112879e+02 -1.1350840e+02 - -3.5528057e+03 1.4078911e+02 -1.1415727e+02 - -3.5549483e+03 7.0405557e+01 -1.1454323e+02 - -3.5556624e+03 0.0000000e+00 -1.1467132e+02 - -3.5549483e+03 -7.0405557e+01 -1.1454323e+02 - -3.5528057e+03 -1.4078911e+02 -1.1415727e+02 - -3.5492341e+03 -2.1112879e+02 -1.1350840e+02 - -3.5442323e+03 -2.8140306e+02 -1.1258808e+02 - -3.5377986e+03 -3.5159082e+02 -1.1138399e+02 - -3.5299306e+03 -4.2167164e+02 -1.0987971e+02 - -3.5206250e+03 -4.9162596e+02 -1.0805424e+02 - -3.5098774e+03 -5.6143537e+02 -1.0588134e+02 - -3.4976819e+03 -6.3108290e+02 -1.0332877e+02 - -3.4840308e+03 -7.0055344e+02 -1.0035719e+02 - -3.4689140e+03 -7.6983421e+02 -9.6918845e+01 - -3.4523183e+03 -8.3891541e+02 -9.2955909e+01 - -3.4342266e+03 -9.0779105e+02 -8.8398310e+01 - -3.4146163e+03 -9.7645996e+02 -8.3161013e+01 - -3.3934582e+03 -1.0449272e+03 -7.7140523e+01 - -3.3707140e+03 -1.1132061e+03 -7.0210425e+01 - -3.3463340e+03 -1.1813203e+03 -6.2215636e+01 - -3.3202524e+03 -1.2493074e+03 -5.2965038e+01 - -3.2923830e+03 -1.3172235e+03 -4.2222027e+01 - -3.2626120e+03 -1.3851489e+03 -2.9692489e+01 - -3.2307883e+03 -1.4531964e+03 -1.5009728e+01 - -3.1967116e+03 -1.5215220e+03 2.2838452e+00 - -3.1601162e+03 -1.5903384e+03 2.2757612e+01 - -3.1206514e+03 -1.6599319e+03 4.7113464e+01 - -3.0778604e+03 -1.7306788e+03 7.6198806e+01 - -3.0311654e+03 -1.8030559e+03 1.1099443e+02 - -2.9798778e+03 -1.8776250e+03 1.5254147e+02 - -2.9232758e+03 -1.9549515e+03 2.0174298e+02 - -2.8608272e+03 -2.0353854e+03 2.5894931e+02 - -2.7926563e+03 -2.1186135e+03 3.2326659e+02 - -2.7202747e+03 -2.2029757e+03 3.9173853e+02 - -2.6472726e+03 -2.2848507e+03 4.5901588e+02 - -2.5792159e+03 -2.3588406e+03 5.1842955e+02 - -2.5221447e+03 -2.4193027e+03 5.6453868e+02 - -2.4803522e+03 -2.4625169e+03 5.9544496e+02 - -2.4550828e+03 -2.4878800e+03 6.1298264e+02 - -2.4448376e+03 -2.4974996e+03 6.2103489e+02 - -2.4464978e+03 -2.4950068e+03 6.2365094e+02 - -2.4562949e+03 -2.4845530e+03 6.2396689e+02 - -2.4703012e+03 -2.4703012e+03 6.2386592e+02 - -2.4845530e+03 -2.4562949e+03 6.2396689e+02 - -2.4950068e+03 -2.4464978e+03 6.2365094e+02 - -2.4974996e+03 -2.4448376e+03 6.2103489e+02 - -2.4878800e+03 -2.4550828e+03 6.1298264e+02 - -2.4625169e+03 -2.4803522e+03 5.9544496e+02 - -2.4193027e+03 -2.5221447e+03 5.6453868e+02 - -2.3588406e+03 -2.5792159e+03 5.1842955e+02 - -2.2848507e+03 -2.6472726e+03 4.5901588e+02 - -2.2029757e+03 -2.7202747e+03 3.9173853e+02 - -2.1186135e+03 -2.7926563e+03 3.2326659e+02 - -2.0353854e+03 -2.8608272e+03 2.5894931e+02 - -1.9549515e+03 -2.9232758e+03 2.0174298e+02 - -1.8776250e+03 -2.9798778e+03 1.5254147e+02 - -1.8030559e+03 -3.0311654e+03 1.1099443e+02 - -1.7306788e+03 -3.0778604e+03 7.6198806e+01 - -1.6599319e+03 -3.1206514e+03 4.7113464e+01 - -1.5903384e+03 -3.1601162e+03 2.2757612e+01 - -1.5215220e+03 -3.1967116e+03 2.2838452e+00 - -1.4531964e+03 -3.2307883e+03 -1.5009728e+01 - -1.3851489e+03 -3.2626120e+03 -2.9692489e+01 - -1.3172235e+03 -3.2923830e+03 -4.2222027e+01 - -1.2493074e+03 -3.3202524e+03 -5.2965038e+01 - -1.1813203e+03 -3.3463340e+03 -6.2215636e+01 - -1.1132061e+03 -3.3707140e+03 -7.0210425e+01 - -1.0449272e+03 -3.3934582e+03 -7.7140523e+01 - -9.7645996e+02 -3.4146163e+03 -8.3161013e+01 - -9.0779105e+02 -3.4342266e+03 -8.8398310e+01 - -8.3891541e+02 -3.4523183e+03 -9.2955909e+01 - -7.6983421e+02 -3.4689140e+03 -9.6918845e+01 - -7.0055344e+02 -3.4840308e+03 -1.0035719e+02 - -6.3108290e+02 -3.4976819e+03 -1.0332877e+02 - -5.6143537e+02 -3.5098774e+03 -1.0588134e+02 - -4.9162596e+02 -3.5206250e+03 -1.0805424e+02 - -4.2167164e+02 -3.5299306e+03 -1.0987971e+02 - -3.5159082e+02 -3.5377986e+03 -1.1138399e+02 - -2.8140306e+02 -3.5442323e+03 -1.1258808e+02 - -2.1112879e+02 -3.5492341e+03 -1.1350840e+02 - -1.4078911e+02 -3.5528057e+03 -1.1415727e+02 - -7.0405557e+01 -3.5549483e+03 -1.1454323e+02 - 4.8134273e-09 -3.5556624e+03 -1.1467132e+02 - 7.0405557e+01 -3.5549483e+03 -1.1454323e+02 - 1.4078911e+02 -3.5528057e+03 -1.1415727e+02 - 2.1112879e+02 -3.5492341e+03 -1.1350840e+02 - 2.8140306e+02 -3.5442323e+03 -1.1258808e+02 - 3.5159082e+02 -3.5377986e+03 -1.1138399e+02 - 4.2167164e+02 -3.5299306e+03 -1.0987971e+02 - 4.9162596e+02 -3.5206250e+03 -1.0805424e+02 - 5.6143537e+02 -3.5098774e+03 -1.0588134e+02 - 6.3108290e+02 -3.4976819e+03 -1.0332877e+02 - 7.0055344e+02 -3.4840308e+03 -1.0035719e+02 - 7.6983421e+02 -3.4689140e+03 -9.6918845e+01 - 8.3891541e+02 -3.4523183e+03 -9.2955909e+01 - 9.0779105e+02 -3.4342266e+03 -8.8398310e+01 - 9.7645996e+02 -3.4146163e+03 -8.3161013e+01 - 1.0449272e+03 -3.3934582e+03 -7.7140523e+01 - 1.1132061e+03 -3.3707140e+03 -7.0210425e+01 - 1.1813203e+03 -3.3463340e+03 -6.2215636e+01 - 1.2493074e+03 -3.3202524e+03 -5.2965038e+01 - 1.3172235e+03 -3.2923830e+03 -4.2222027e+01 - 1.3851489e+03 -3.2626120e+03 -2.9692489e+01 - 1.4531964e+03 -3.2307883e+03 -1.5009728e+01 - 1.5215220e+03 -3.1967116e+03 2.2838452e+00 - 1.5903384e+03 -3.1601162e+03 2.2757612e+01 - 1.6599319e+03 -3.1206514e+03 4.7113464e+01 - 1.7306788e+03 -3.0778604e+03 7.6198806e+01 - 1.8030559e+03 -3.0311654e+03 1.1099443e+02 - 1.8776250e+03 -2.9798778e+03 1.5254147e+02 - 1.9549515e+03 -2.9232758e+03 2.0174298e+02 - 2.0353854e+03 -2.8608272e+03 2.5894931e+02 - 2.1186135e+03 -2.7926563e+03 3.2326659e+02 - 2.2029757e+03 -2.7202747e+03 3.9173853e+02 - 2.2848507e+03 -2.6472726e+03 4.5901588e+02 - 2.3588406e+03 -2.5792159e+03 5.1842955e+02 - 2.4193027e+03 -2.5221447e+03 5.6453868e+02 - 2.4625169e+03 -2.4803522e+03 5.9544496e+02 - 2.4878800e+03 -2.4550828e+03 6.1298264e+02 - 2.4974996e+03 -2.4448376e+03 6.2103489e+02 - 2.4950068e+03 -2.4464978e+03 6.2365094e+02 - 2.4845530e+03 -2.4562949e+03 6.2396689e+02 - 2.4703012e+03 -2.4703012e+03 6.2386592e+02 - 2.4562949e+03 -2.4845530e+03 6.2396689e+02 - 2.4464978e+03 -2.4950068e+03 6.2365094e+02 - 2.4448376e+03 -2.4974996e+03 6.2103489e+02 - 2.4550828e+03 -2.4878800e+03 6.1298264e+02 - 2.4803522e+03 -2.4625169e+03 5.9544496e+02 - 2.5221447e+03 -2.4193027e+03 5.6453868e+02 - 2.5792159e+03 -2.3588406e+03 5.1842955e+02 - 2.6472726e+03 -2.2848507e+03 4.5901588e+02 - 2.7202747e+03 -2.2029757e+03 3.9173853e+02 - 2.7926563e+03 -2.1186135e+03 3.2326659e+02 - 2.8608272e+03 -2.0353854e+03 2.5894931e+02 - 2.9232758e+03 -1.9549515e+03 2.0174298e+02 - 2.9798778e+03 -1.8776250e+03 1.5254147e+02 - 3.0311654e+03 -1.8030559e+03 1.1099443e+02 - 3.0778604e+03 -1.7306788e+03 7.6198806e+01 - 3.1206514e+03 -1.6599319e+03 4.7113464e+01 - 3.1601162e+03 -1.5903384e+03 2.2757612e+01 - 3.1967116e+03 -1.5215220e+03 2.2838452e+00 - 3.2307883e+03 -1.4531964e+03 -1.5009728e+01 - 3.2626120e+03 -1.3851489e+03 -2.9692489e+01 - 3.2923830e+03 -1.3172235e+03 -4.2222027e+01 - 3.3202524e+03 -1.2493074e+03 -5.2965038e+01 - 3.3463340e+03 -1.1813203e+03 -6.2215636e+01 - 3.3707140e+03 -1.1132061e+03 -7.0210425e+01 - 3.3934582e+03 -1.0449272e+03 -7.7140523e+01 - 3.4146163e+03 -9.7645996e+02 -8.3161013e+01 - 3.4342266e+03 -9.0779105e+02 -8.8398310e+01 - 3.4523183e+03 -8.3891541e+02 -9.2955909e+01 - 3.4689140e+03 -7.6983421e+02 -9.6918845e+01 - 3.4840308e+03 -7.0055344e+02 -1.0035719e+02 - 3.4976819e+03 -6.3108290e+02 -1.0332877e+02 - 3.5098774e+03 -5.6143537e+02 -1.0588134e+02 - 3.5206250e+03 -4.9162596e+02 -1.0805424e+02 - 3.5299306e+03 -4.2167164e+02 -1.0987971e+02 - 3.5377986e+03 -3.5159082e+02 -1.1138399e+02 - 3.5442323e+03 -2.8140306e+02 -1.1258808e+02 - 3.5492341e+03 -2.1112879e+02 -1.1350840e+02 - 3.5528057e+03 -1.4078911e+02 -1.1415727e+02 - 3.5549483e+03 -7.0405557e+01 -1.1454323e+02 - 3.5556624e+03 0.0000000e+00 -1.1467132e+02 - 3.5557758e+03 2.4067136e-09 -1.1529897e+02 - 3.5550724e+03 7.0184404e+01 -1.1520852e+02 - 3.5529622e+03 1.4034492e+02 -1.1493603e+02 - 3.5494451e+03 2.1045775e+02 -1.1447796e+02 - 3.5445209e+03 2.8049931e+02 -1.1382834e+02 - 3.5381893e+03 3.5044628e+02 -1.1297858e+02 - 3.5304497e+03 4.2027580e+02 -1.1191720e+02 - 3.5213011e+03 4.8996554e+02 -1.1062955e+02 - 3.5107422e+03 5.5949392e+02 -1.0909732e+02 - 3.4987707e+03 6.2884025e+02 -1.0729798e+02 - 3.4853837e+03 6.9798505e+02 -1.0520409e+02 - 3.4705768e+03 7.6691031e+02 -1.0278231e+02 - 3.4543439e+03 8.3559989e+02 -9.9992253e+01 - 3.4366766e+03 9.0404008e+02 -9.6784970e+01 - 3.4175637e+03 9.7222020e+02 -9.3100989e+01 - 3.3969895e+03 1.0401336e+03 -8.8867825e+01 - 3.3749331e+03 1.1077786e+03 -8.3996747e+01 - 3.3513666e+03 1.1751605e+03 -7.8378558e+01 - 3.3262520e+03 1.2422934e+03 -7.1878080e+01 - 3.2995385e+03 1.3092033e+03 -6.4326895e+01 - 3.2711571e+03 1.3759324e+03 -5.5513766e+01 - 3.2410146e+03 1.4425447e+03 -4.5171984e+01 - 3.2089841e+03 1.5091343e+03 -3.2962738e+01 - 3.1748921e+03 1.5758367e+03 -1.8453539e+01 - 3.1385006e+03 1.6428445e+03 -1.0910577e+00 - 3.0994834e+03 1.7104282e+03 1.9830878e+01 - 3.0573954e+03 1.7789626e+03 4.5203434e+01 - 3.0116407e+03 1.8489531e+03 7.6120421e+01 - 2.9614539e+03 1.9210480e+03 1.1384451e+02 - 2.9059409e+03 1.9959898e+03 1.5964146e+02 - 2.8442842e+03 2.0744098e+03 2.1433752e+02 - 2.7762882e+03 2.1562965e+03 2.7743169e+02 - 2.7034041e+03 2.2400209e+03 3.4583403e+02 - 2.6298855e+03 2.3212785e+03 4.1310837e+02 - 2.5627740e+03 2.3932178e+03 4.7091680e+02 - 2.5095080e+03 2.4488777e+03 5.1296696e+02 - 2.4745081e+03 2.4845192e+03 5.3823145e+02 - 2.4577700e+03 2.5008749e+03 5.5033366e+02 - 2.4560346e+03 2.5018474e+03 5.5451557e+02 - 2.4646132e+03 2.4926118e+03 5.5521758e+02 - 2.4784863e+03 2.4784863e+03 5.5515470e+02 - 2.4926118e+03 2.4646132e+03 5.5521758e+02 - 2.5018474e+03 2.4560346e+03 5.5451557e+02 - 2.5008749e+03 2.4577700e+03 5.5033366e+02 - 2.4845192e+03 2.4745081e+03 5.3823145e+02 - 2.4488777e+03 2.5095080e+03 5.1296696e+02 - 2.3932178e+03 2.5627740e+03 4.7091680e+02 - 2.3212785e+03 2.6298855e+03 4.1310837e+02 - 2.2400209e+03 2.7034041e+03 3.4583403e+02 - 2.1562965e+03 2.7762882e+03 2.7743169e+02 - 2.0744098e+03 2.8442842e+03 2.1433752e+02 - 1.9959898e+03 2.9059409e+03 1.5964146e+02 - 1.9210480e+03 2.9614539e+03 1.1384451e+02 - 1.8489531e+03 3.0116407e+03 7.6120421e+01 - 1.7789626e+03 3.0573954e+03 4.5203434e+01 - 1.7104282e+03 3.0994834e+03 1.9830878e+01 - 1.6428445e+03 3.1385006e+03 -1.0910577e+00 - 1.5758367e+03 3.1748921e+03 -1.8453539e+01 - 1.5091343e+03 3.2089841e+03 -3.2962738e+01 - 1.4425447e+03 3.2410146e+03 -4.5171984e+01 - 1.3759324e+03 3.2711571e+03 -5.5513766e+01 - 1.3092033e+03 3.2995385e+03 -6.4326895e+01 - 1.2422934e+03 3.3262520e+03 -7.1878080e+01 - 1.1751605e+03 3.3513666e+03 -7.8378558e+01 - 1.1077786e+03 3.3749331e+03 -8.3996747e+01 - 1.0401336e+03 3.3969895e+03 -8.8867825e+01 - 9.7222020e+02 3.4175637e+03 -9.3100989e+01 - 9.0404008e+02 3.4366766e+03 -9.6784970e+01 - 8.3559989e+02 3.4543439e+03 -9.9992253e+01 - 7.6691031e+02 3.4705768e+03 -1.0278231e+02 - 6.9798505e+02 3.4853837e+03 -1.0520409e+02 - 6.2884025e+02 3.4987707e+03 -1.0729798e+02 - 5.5949392e+02 3.5107422e+03 -1.0909732e+02 - 4.8996554e+02 3.5213011e+03 -1.1062955e+02 - 4.2027580e+02 3.5304497e+03 -1.1191720e+02 - 3.5044628e+02 3.5381893e+03 -1.1297858e+02 - 2.8049931e+02 3.5445209e+03 -1.1382834e+02 - 2.1045775e+02 3.5494451e+03 -1.1447796e+02 - 1.4034492e+02 3.5529622e+03 -1.1493603e+02 - 7.0184404e+01 3.5550724e+03 -1.1520852e+02 - 0.0000000e+00 3.5557758e+03 -1.1529897e+02 - -7.0184404e+01 3.5550724e+03 -1.1520852e+02 - -1.4034492e+02 3.5529622e+03 -1.1493603e+02 - -2.1045775e+02 3.5494451e+03 -1.1447796e+02 - -2.8049931e+02 3.5445209e+03 -1.1382834e+02 - -3.5044628e+02 3.5381893e+03 -1.1297858e+02 - -4.2027580e+02 3.5304497e+03 -1.1191720e+02 - -4.8996554e+02 3.5213011e+03 -1.1062955e+02 - -5.5949392e+02 3.5107422e+03 -1.0909732e+02 - -6.2884025e+02 3.4987707e+03 -1.0729798e+02 - -6.9798505e+02 3.4853837e+03 -1.0520409e+02 - -7.6691031e+02 3.4705768e+03 -1.0278231e+02 - -8.3559989e+02 3.4543439e+03 -9.9992253e+01 - -9.0404008e+02 3.4366766e+03 -9.6784970e+01 - -9.7222020e+02 3.4175637e+03 -9.3100989e+01 - -1.0401336e+03 3.3969895e+03 -8.8867825e+01 - -1.1077786e+03 3.3749331e+03 -8.3996747e+01 - -1.1751605e+03 3.3513666e+03 -7.8378558e+01 - -1.2422934e+03 3.3262520e+03 -7.1878080e+01 - -1.3092033e+03 3.2995385e+03 -6.4326895e+01 - -1.3759324e+03 3.2711571e+03 -5.5513766e+01 - -1.4425447e+03 3.2410146e+03 -4.5171984e+01 - -1.5091343e+03 3.2089841e+03 -3.2962738e+01 - -1.5758367e+03 3.1748921e+03 -1.8453539e+01 - -1.6428445e+03 3.1385006e+03 -1.0910577e+00 - -1.7104282e+03 3.0994834e+03 1.9830878e+01 - -1.7789626e+03 3.0573954e+03 4.5203434e+01 - -1.8489531e+03 3.0116407e+03 7.6120421e+01 - -1.9210480e+03 2.9614539e+03 1.1384451e+02 - -1.9959898e+03 2.9059409e+03 1.5964146e+02 - -2.0744098e+03 2.8442842e+03 2.1433752e+02 - -2.1562965e+03 2.7762882e+03 2.7743169e+02 - -2.2400209e+03 2.7034041e+03 3.4583403e+02 - -2.3212785e+03 2.6298855e+03 4.1310837e+02 - -2.3932178e+03 2.5627740e+03 4.7091680e+02 - -2.4488777e+03 2.5095080e+03 5.1296696e+02 - -2.4845192e+03 2.4745081e+03 5.3823145e+02 - -2.5008749e+03 2.4577700e+03 5.5033366e+02 - -2.5018474e+03 2.4560346e+03 5.5451557e+02 - -2.4926118e+03 2.4646132e+03 5.5521758e+02 - -2.4784863e+03 2.4784863e+03 5.5515470e+02 - -2.4646132e+03 2.4926118e+03 5.5521758e+02 - -2.4560346e+03 2.5018474e+03 5.5451557e+02 - -2.4577700e+03 2.5008749e+03 5.5033366e+02 - -2.4745081e+03 2.4845192e+03 5.3823145e+02 - -2.5095080e+03 2.4488777e+03 5.1296696e+02 - -2.5627740e+03 2.3932178e+03 4.7091680e+02 - -2.6298855e+03 2.3212785e+03 4.1310837e+02 - -2.7034041e+03 2.2400209e+03 3.4583403e+02 - -2.7762882e+03 2.1562965e+03 2.7743169e+02 - -2.8442842e+03 2.0744098e+03 2.1433752e+02 - -2.9059409e+03 1.9959898e+03 1.5964146e+02 - -2.9614539e+03 1.9210480e+03 1.1384451e+02 - -3.0116407e+03 1.8489531e+03 7.6120421e+01 - -3.0573954e+03 1.7789626e+03 4.5203434e+01 - -3.0994834e+03 1.7104282e+03 1.9830878e+01 - -3.1385006e+03 1.6428445e+03 -1.0910577e+00 - -3.1748921e+03 1.5758367e+03 -1.8453539e+01 - -3.2089841e+03 1.5091343e+03 -3.2962738e+01 - -3.2410146e+03 1.4425447e+03 -4.5171984e+01 - -3.2711571e+03 1.3759324e+03 -5.5513766e+01 - -3.2995385e+03 1.3092033e+03 -6.4326895e+01 - -3.3262520e+03 1.2422934e+03 -7.1878080e+01 - -3.3513666e+03 1.1751605e+03 -7.8378558e+01 - -3.3749331e+03 1.1077786e+03 -8.3996747e+01 - -3.3969895e+03 1.0401336e+03 -8.8867825e+01 - -3.4175637e+03 9.7222020e+02 -9.3100989e+01 - -3.4366766e+03 9.0404008e+02 -9.6784970e+01 - -3.4543439e+03 8.3559989e+02 -9.9992253e+01 - -3.4705768e+03 7.6691031e+02 -1.0278231e+02 - -3.4853837e+03 6.9798505e+02 -1.0520409e+02 - -3.4987707e+03 6.2884025e+02 -1.0729798e+02 - -3.5107422e+03 5.5949392e+02 -1.0909732e+02 - -3.5213011e+03 4.8996554e+02 -1.1062955e+02 - -3.5304497e+03 4.2027580e+02 -1.1191720e+02 - -3.5381893e+03 3.5044628e+02 -1.1297858e+02 - -3.5445209e+03 2.8049931e+02 -1.1382834e+02 - -3.5494451e+03 2.1045775e+02 -1.1447796e+02 - -3.5529622e+03 1.4034492e+02 -1.1493603e+02 - -3.5550724e+03 7.0184404e+01 -1.1520852e+02 - -3.5557758e+03 0.0000000e+00 -1.1529897e+02 - -3.5550724e+03 -7.0184404e+01 -1.1520852e+02 - -3.5529622e+03 -1.4034492e+02 -1.1493603e+02 - -3.5494451e+03 -2.1045775e+02 -1.1447796e+02 - -3.5445209e+03 -2.8049931e+02 -1.1382834e+02 - -3.5381893e+03 -3.5044628e+02 -1.1297858e+02 - -3.5304497e+03 -4.2027580e+02 -1.1191720e+02 - -3.5213011e+03 -4.8996554e+02 -1.1062955e+02 - -3.5107422e+03 -5.5949392e+02 -1.0909732e+02 - -3.4987707e+03 -6.2884025e+02 -1.0729798e+02 - -3.4853837e+03 -6.9798505e+02 -1.0520409e+02 - -3.4705768e+03 -7.6691031e+02 -1.0278231e+02 - -3.4543439e+03 -8.3559989e+02 -9.9992253e+01 - -3.4366766e+03 -9.0404008e+02 -9.6784970e+01 - -3.4175637e+03 -9.7222020e+02 -9.3100989e+01 - -3.3969895e+03 -1.0401336e+03 -8.8867825e+01 - -3.3749331e+03 -1.1077786e+03 -8.3996747e+01 - -3.3513666e+03 -1.1751605e+03 -7.8378558e+01 - -3.3262520e+03 -1.2422934e+03 -7.1878080e+01 - -3.2995385e+03 -1.3092033e+03 -6.4326895e+01 - -3.2711571e+03 -1.3759324e+03 -5.5513766e+01 - -3.2410146e+03 -1.4425447e+03 -4.5171984e+01 - -3.2089841e+03 -1.5091343e+03 -3.2962738e+01 - -3.1748921e+03 -1.5758367e+03 -1.8453539e+01 - -3.1385006e+03 -1.6428445e+03 -1.0910577e+00 - -3.0994834e+03 -1.7104282e+03 1.9830878e+01 - -3.0573954e+03 -1.7789626e+03 4.5203434e+01 - -3.0116407e+03 -1.8489531e+03 7.6120421e+01 - -2.9614539e+03 -1.9210480e+03 1.1384451e+02 - -2.9059409e+03 -1.9959898e+03 1.5964146e+02 - -2.8442842e+03 -2.0744098e+03 2.1433752e+02 - -2.7762882e+03 -2.1562965e+03 2.7743169e+02 - -2.7034041e+03 -2.2400209e+03 3.4583403e+02 - -2.6298855e+03 -2.3212785e+03 4.1310837e+02 - -2.5627740e+03 -2.3932178e+03 4.7091680e+02 - -2.5095080e+03 -2.4488777e+03 5.1296696e+02 - -2.4745081e+03 -2.4845192e+03 5.3823145e+02 - -2.4577700e+03 -2.5008749e+03 5.5033366e+02 - -2.4560346e+03 -2.5018474e+03 5.5451557e+02 - -2.4646132e+03 -2.4926118e+03 5.5521758e+02 - -2.4784863e+03 -2.4784863e+03 5.5515470e+02 - -2.4926118e+03 -2.4646132e+03 5.5521758e+02 - -2.5018474e+03 -2.4560346e+03 5.5451557e+02 - -2.5008749e+03 -2.4577700e+03 5.5033366e+02 - -2.4845192e+03 -2.4745081e+03 5.3823145e+02 - -2.4488777e+03 -2.5095080e+03 5.1296696e+02 - -2.3932178e+03 -2.5627740e+03 4.7091680e+02 - -2.3212785e+03 -2.6298855e+03 4.1310837e+02 - -2.2400209e+03 -2.7034041e+03 3.4583403e+02 - -2.1562965e+03 -2.7762882e+03 2.7743169e+02 - -2.0744098e+03 -2.8442842e+03 2.1433752e+02 - -1.9959898e+03 -2.9059409e+03 1.5964146e+02 - -1.9210480e+03 -2.9614539e+03 1.1384451e+02 - -1.8489531e+03 -3.0116407e+03 7.6120421e+01 - -1.7789626e+03 -3.0573954e+03 4.5203434e+01 - -1.7104282e+03 -3.0994834e+03 1.9830878e+01 - -1.6428445e+03 -3.1385006e+03 -1.0910577e+00 - -1.5758367e+03 -3.1748921e+03 -1.8453539e+01 - -1.5091343e+03 -3.2089841e+03 -3.2962738e+01 - -1.4425447e+03 -3.2410146e+03 -4.5171984e+01 - -1.3759324e+03 -3.2711571e+03 -5.5513766e+01 - -1.3092033e+03 -3.2995385e+03 -6.4326895e+01 - -1.2422934e+03 -3.3262520e+03 -7.1878080e+01 - -1.1751605e+03 -3.3513666e+03 -7.8378558e+01 - -1.1077786e+03 -3.3749331e+03 -8.3996747e+01 - -1.0401336e+03 -3.3969895e+03 -8.8867825e+01 - -9.7222020e+02 -3.4175637e+03 -9.3100989e+01 - -9.0404008e+02 -3.4366766e+03 -9.6784970e+01 - -8.3559989e+02 -3.4543439e+03 -9.9992253e+01 - -7.6691031e+02 -3.4705768e+03 -1.0278231e+02 - -6.9798505e+02 -3.4853837e+03 -1.0520409e+02 - -6.2884025e+02 -3.4987707e+03 -1.0729798e+02 - -5.5949392e+02 -3.5107422e+03 -1.0909732e+02 - -4.8996554e+02 -3.5213011e+03 -1.1062955e+02 - -4.2027580e+02 -3.5304497e+03 -1.1191720e+02 - -3.5044628e+02 -3.5381893e+03 -1.1297858e+02 - -2.8049931e+02 -3.5445209e+03 -1.1382834e+02 - -2.1045775e+02 -3.5494451e+03 -1.1447796e+02 - -1.4034492e+02 -3.5529622e+03 -1.1493603e+02 - -7.0184404e+01 -3.5550724e+03 -1.1520852e+02 - 0.0000000e+00 -3.5557758e+03 -1.1529897e+02 - 7.0184404e+01 -3.5550724e+03 -1.1520852e+02 - 1.4034492e+02 -3.5529622e+03 -1.1493603e+02 - 2.1045775e+02 -3.5494451e+03 -1.1447796e+02 - 2.8049931e+02 -3.5445209e+03 -1.1382834e+02 - 3.5044628e+02 -3.5381893e+03 -1.1297858e+02 - 4.2027580e+02 -3.5304497e+03 -1.1191720e+02 - 4.8996554e+02 -3.5213011e+03 -1.1062955e+02 - 5.5949392e+02 -3.5107422e+03 -1.0909732e+02 - 6.2884025e+02 -3.4987707e+03 -1.0729798e+02 - 6.9798505e+02 -3.4853837e+03 -1.0520409e+02 - 7.6691031e+02 -3.4705768e+03 -1.0278231e+02 - 8.3559989e+02 -3.4543439e+03 -9.9992253e+01 - 9.0404008e+02 -3.4366766e+03 -9.6784970e+01 - 9.7222020e+02 -3.4175637e+03 -9.3100989e+01 - 1.0401336e+03 -3.3969895e+03 -8.8867825e+01 - 1.1077786e+03 -3.3749331e+03 -8.3996747e+01 - 1.1751605e+03 -3.3513666e+03 -7.8378558e+01 - 1.2422934e+03 -3.3262520e+03 -7.1878080e+01 - 1.3092033e+03 -3.2995385e+03 -6.4326895e+01 - 1.3759324e+03 -3.2711571e+03 -5.5513766e+01 - 1.4425447e+03 -3.2410146e+03 -4.5171984e+01 - 1.5091343e+03 -3.2089841e+03 -3.2962738e+01 - 1.5758367e+03 -3.1748921e+03 -1.8453539e+01 - 1.6428445e+03 -3.1385006e+03 -1.0910577e+00 - 1.7104282e+03 -3.0994834e+03 1.9830878e+01 - 1.7789626e+03 -3.0573954e+03 4.5203434e+01 - 1.8489531e+03 -3.0116407e+03 7.6120421e+01 - 1.9210480e+03 -2.9614539e+03 1.1384451e+02 - 1.9959898e+03 -2.9059409e+03 1.5964146e+02 - 2.0744098e+03 -2.8442842e+03 2.1433752e+02 - 2.1562965e+03 -2.7762882e+03 2.7743169e+02 - 2.2400209e+03 -2.7034041e+03 3.4583403e+02 - 2.3212785e+03 -2.6298855e+03 4.1310837e+02 - 2.3932178e+03 -2.5627740e+03 4.7091680e+02 - 2.4488777e+03 -2.5095080e+03 5.1296696e+02 - 2.4845192e+03 -2.4745081e+03 5.3823145e+02 - 2.5008749e+03 -2.4577700e+03 5.5033366e+02 - 2.5018474e+03 -2.4560346e+03 5.5451557e+02 - 2.4926118e+03 -2.4646132e+03 5.5521758e+02 - 2.4784863e+03 -2.4784863e+03 5.5515470e+02 - 2.4646132e+03 -2.4926118e+03 5.5521758e+02 - 2.4560346e+03 -2.5018474e+03 5.5451557e+02 - 2.4577700e+03 -2.5008749e+03 5.5033366e+02 - 2.4745081e+03 -2.4845192e+03 5.3823145e+02 - 2.5095080e+03 -2.4488777e+03 5.1296696e+02 - 2.5627740e+03 -2.3932178e+03 4.7091680e+02 - 2.6298855e+03 -2.3212785e+03 4.1310837e+02 - 2.7034041e+03 -2.2400209e+03 3.4583403e+02 - 2.7762882e+03 -2.1562965e+03 2.7743169e+02 - 2.8442842e+03 -2.0744098e+03 2.1433752e+02 - 2.9059409e+03 -1.9959898e+03 1.5964146e+02 - 2.9614539e+03 -1.9210480e+03 1.1384451e+02 - 3.0116407e+03 -1.8489531e+03 7.6120421e+01 - 3.0573954e+03 -1.7789626e+03 4.5203434e+01 - 3.0994834e+03 -1.7104282e+03 1.9830878e+01 - 3.1385006e+03 -1.6428445e+03 -1.0910577e+00 - 3.1748921e+03 -1.5758367e+03 -1.8453539e+01 - 3.2089841e+03 -1.5091343e+03 -3.2962738e+01 - 3.2410146e+03 -1.4425447e+03 -4.5171984e+01 - 3.2711571e+03 -1.3759324e+03 -5.5513766e+01 - 3.2995385e+03 -1.3092033e+03 -6.4326895e+01 - 3.3262520e+03 -1.2422934e+03 -7.1878080e+01 - 3.3513666e+03 -1.1751605e+03 -7.8378558e+01 - 3.3749331e+03 -1.1077786e+03 -8.3996747e+01 - 3.3969895e+03 -1.0401336e+03 -8.8867825e+01 - 3.4175637e+03 -9.7222020e+02 -9.3100989e+01 - 3.4366766e+03 -9.0404008e+02 -9.6784970e+01 - 3.4543439e+03 -8.3559989e+02 -9.9992253e+01 - 3.4705768e+03 -7.6691031e+02 -1.0278231e+02 - 3.4853837e+03 -6.9798505e+02 -1.0520409e+02 - 3.4987707e+03 -6.2884025e+02 -1.0729798e+02 - 3.5107422e+03 -5.5949392e+02 -1.0909732e+02 - 3.5213011e+03 -4.8996554e+02 -1.1062955e+02 - 3.5304497e+03 -4.2027580e+02 -1.1191720e+02 - 3.5381893e+03 -3.5044628e+02 -1.1297858e+02 - 3.5445209e+03 -2.8049931e+02 -1.1382834e+02 - 3.5494451e+03 -2.1045775e+02 -1.1447796e+02 - 3.5529622e+03 -1.4034492e+02 -1.1493603e+02 - 3.5550724e+03 -7.0184404e+01 -1.1520852e+02 - 3.5557758e+03 0.0000000e+00 -1.1529897e+02 - 3.5552255e+03 0.0000000e+00 -1.1154168e+02 - 3.5545296e+03 7.0020093e+01 -1.1148073e+02 - 3.5524421e+03 1.4001503e+02 -1.1129710e+02 - 3.5489631e+03 2.0995972e+02 -1.1098844e+02 - 3.5440933e+03 2.7982919e+02 -1.1055076e+02 - 3.5378330e+03 3.4959864e+02 -1.0997832e+02 - 3.5301831e+03 4.1924355e+02 -1.0926347e+02 - 3.5211441e+03 4.8873975e+02 -1.0839643e+02 - 3.5107166e+03 5.5806348e+02 -1.0736499e+02 - 3.4989011e+03 6.2719160e+02 -1.0615413e+02 - 3.4856976e+03 6.9610163e+02 -1.0474556e+02 - 3.4711058e+03 7.6477204e+02 -1.0311706e+02 - 3.4551244e+03 8.3318238e+02 -1.0124172e+02 - 3.4377510e+03 9.0131369e+02 -9.9086924e+01 - 3.4189818e+03 9.6914882e+02 -9.6613035e+01 - 3.3988107e+03 1.0366730e+03 -9.3771729e+01 - 3.3772288e+03 1.1038745e+03 -9.0503795e+01 - 3.3542229e+03 1.1707456e+03 -8.6736269e+01 - 3.3297746e+03 1.2372839e+03 -8.2378633e+01 - 3.3038579e+03 1.3034943e+03 -7.7317749e+01 - 3.2764361e+03 1.3693912e+03 -7.1411047e+01 - 3.2474582e+03 1.4350024e+03 -6.4477292e+01 - 3.2168528e+03 1.5003745e+03 -5.6283982e+01 - 3.1845192e+03 1.5655801e+03 -4.6530090e+01 - 3.1503155e+03 1.6307294e+03 -3.4822434e+01 - 3.1140397e+03 1.6959865e+03 -2.0643653e+01 - 3.0754035e+03 1.7615933e+03 -3.3100329e+00 - 3.0339940e+03 1.8279031e+03 1.8080339e+01 - 2.9892242e+03 1.8954246e+03 4.4700538e+01 - 2.9402807e+03 1.9648658e+03 7.8017279e+01 - 2.8861090e+03 2.0371391e+03 1.1969405e+02 - 2.8255609e+03 2.1132055e+03 1.7116976e+02 - 2.7579915e+03 2.1934858e+03 2.3256820e+02 - 2.6846792e+03 2.2764898e+03 3.0077551e+02 - 2.6107744e+03 2.3569926e+03 3.6787552e+02 - 2.5454746e+03 2.4260244e+03 4.2317823e+02 - 2.4979415e+03 2.4750175e+03 4.5965386e+02 - 2.4720052e+03 2.5009613e+03 4.7819302e+02 - 2.4652925e+03 2.5070392e+03 4.8492405e+02 - 2.4720634e+03 2.4996260e+03 4.8623917e+02 - 2.4857158e+03 2.4857158e+03 4.8622946e+02 - 2.4996260e+03 2.4720634e+03 4.8623917e+02 - 2.5070392e+03 2.4652925e+03 4.8492405e+02 - 2.5009613e+03 2.4720052e+03 4.7819302e+02 - 2.4750175e+03 2.4979415e+03 4.5965386e+02 - 2.4260244e+03 2.5454746e+03 4.2317823e+02 - 2.3569926e+03 2.6107744e+03 3.6787552e+02 - 2.2764898e+03 2.6846792e+03 3.0077551e+02 - 2.1934858e+03 2.7579915e+03 2.3256820e+02 - 2.1132055e+03 2.8255609e+03 1.7116976e+02 - 2.0371391e+03 2.8861090e+03 1.1969405e+02 - 1.9648658e+03 2.9402807e+03 7.8017279e+01 - 1.8954246e+03 2.9892242e+03 4.4700538e+01 - 1.8279031e+03 3.0339940e+03 1.8080339e+01 - 1.7615933e+03 3.0754035e+03 -3.3100329e+00 - 1.6959865e+03 3.1140397e+03 -2.0643653e+01 - 1.6307294e+03 3.1503155e+03 -3.4822434e+01 - 1.5655801e+03 3.1845192e+03 -4.6530090e+01 - 1.5003745e+03 3.2168528e+03 -5.6283982e+01 - 1.4350024e+03 3.2474582e+03 -6.4477292e+01 - 1.3693912e+03 3.2764361e+03 -7.1411047e+01 - 1.3034943e+03 3.3038579e+03 -7.7317749e+01 - 1.2372839e+03 3.3297746e+03 -8.2378633e+01 - 1.1707456e+03 3.3542229e+03 -8.6736269e+01 - 1.1038745e+03 3.3772288e+03 -9.0503795e+01 - 1.0366730e+03 3.3988107e+03 -9.3771729e+01 - 9.6914882e+02 3.4189818e+03 -9.6613035e+01 - 9.0131369e+02 3.4377510e+03 -9.9086924e+01 - 8.3318238e+02 3.4551244e+03 -1.0124172e+02 - 7.6477204e+02 3.4711058e+03 -1.0311706e+02 - 6.9610163e+02 3.4856976e+03 -1.0474556e+02 - 6.2719160e+02 3.4989011e+03 -1.0615413e+02 - 5.5806348e+02 3.5107166e+03 -1.0736499e+02 - 4.8873975e+02 3.5211441e+03 -1.0839643e+02 - 4.1924355e+02 3.5301831e+03 -1.0926347e+02 - 3.4959864e+02 3.5378330e+03 -1.0997832e+02 - 2.7982919e+02 3.5440933e+03 -1.1055076e+02 - 2.0995972e+02 3.5489631e+03 -1.1098844e+02 - 1.4001503e+02 3.5524421e+03 -1.1129710e+02 - 7.0020093e+01 3.5545296e+03 -1.1148073e+02 - 2.4067136e-09 3.5552255e+03 -1.1154168e+02 - -7.0020093e+01 3.5545296e+03 -1.1148073e+02 - -1.4001503e+02 3.5524421e+03 -1.1129710e+02 - -2.0995972e+02 3.5489631e+03 -1.1098844e+02 - -2.7982919e+02 3.5440933e+03 -1.1055076e+02 - -3.4959864e+02 3.5378330e+03 -1.0997832e+02 - -4.1924355e+02 3.5301831e+03 -1.0926347e+02 - -4.8873975e+02 3.5211441e+03 -1.0839643e+02 - -5.5806348e+02 3.5107166e+03 -1.0736499e+02 - -6.2719160e+02 3.4989011e+03 -1.0615413e+02 - -6.9610163e+02 3.4856976e+03 -1.0474556e+02 - -7.6477204e+02 3.4711058e+03 -1.0311706e+02 - -8.3318238e+02 3.4551244e+03 -1.0124172e+02 - -9.0131369e+02 3.4377510e+03 -9.9086924e+01 - -9.6914882e+02 3.4189818e+03 -9.6613035e+01 - -1.0366730e+03 3.3988107e+03 -9.3771729e+01 - -1.1038745e+03 3.3772288e+03 -9.0503795e+01 - -1.1707456e+03 3.3542229e+03 -8.6736269e+01 - -1.2372839e+03 3.3297746e+03 -8.2378633e+01 - -1.3034943e+03 3.3038579e+03 -7.7317749e+01 - -1.3693912e+03 3.2764361e+03 -7.1411047e+01 - -1.4350024e+03 3.2474582e+03 -6.4477292e+01 - -1.5003745e+03 3.2168528e+03 -5.6283982e+01 - -1.5655801e+03 3.1845192e+03 -4.6530090e+01 - -1.6307294e+03 3.1503155e+03 -3.4822434e+01 - -1.6959865e+03 3.1140397e+03 -2.0643653e+01 - -1.7615933e+03 3.0754035e+03 -3.3100329e+00 - -1.8279031e+03 3.0339940e+03 1.8080339e+01 - -1.8954246e+03 2.9892242e+03 4.4700538e+01 - -1.9648658e+03 2.9402807e+03 7.8017279e+01 - -2.0371391e+03 2.8861090e+03 1.1969405e+02 - -2.1132055e+03 2.8255609e+03 1.7116976e+02 - -2.1934858e+03 2.7579915e+03 2.3256820e+02 - -2.2764898e+03 2.6846792e+03 3.0077551e+02 - -2.3569926e+03 2.6107744e+03 3.6787552e+02 - -2.4260244e+03 2.5454746e+03 4.2317823e+02 - -2.4750175e+03 2.4979415e+03 4.5965386e+02 - -2.5009613e+03 2.4720052e+03 4.7819302e+02 - -2.5070392e+03 2.4652925e+03 4.8492405e+02 - -2.4996260e+03 2.4720634e+03 4.8623917e+02 - -2.4857158e+03 2.4857158e+03 4.8622946e+02 - -2.4720634e+03 2.4996260e+03 4.8623917e+02 - -2.4652925e+03 2.5070392e+03 4.8492405e+02 - -2.4720052e+03 2.5009613e+03 4.7819302e+02 - -2.4979415e+03 2.4750175e+03 4.5965386e+02 - -2.5454746e+03 2.4260244e+03 4.2317823e+02 - -2.6107744e+03 2.3569926e+03 3.6787552e+02 - -2.6846792e+03 2.2764898e+03 3.0077551e+02 - -2.7579915e+03 2.1934858e+03 2.3256820e+02 - -2.8255609e+03 2.1132055e+03 1.7116976e+02 - -2.8861090e+03 2.0371391e+03 1.1969405e+02 - -2.9402807e+03 1.9648658e+03 7.8017279e+01 - -2.9892242e+03 1.8954246e+03 4.4700538e+01 - -3.0339940e+03 1.8279031e+03 1.8080339e+01 - -3.0754035e+03 1.7615933e+03 -3.3100329e+00 - -3.1140397e+03 1.6959865e+03 -2.0643653e+01 - -3.1503155e+03 1.6307294e+03 -3.4822434e+01 - -3.1845192e+03 1.5655801e+03 -4.6530090e+01 - -3.2168528e+03 1.5003745e+03 -5.6283982e+01 - -3.2474582e+03 1.4350024e+03 -6.4477292e+01 - -3.2764361e+03 1.3693912e+03 -7.1411047e+01 - -3.3038579e+03 1.3034943e+03 -7.7317749e+01 - -3.3297746e+03 1.2372839e+03 -8.2378633e+01 - -3.3542229e+03 1.1707456e+03 -8.6736269e+01 - -3.3772288e+03 1.1038745e+03 -9.0503795e+01 - -3.3988107e+03 1.0366730e+03 -9.3771729e+01 - -3.4189818e+03 9.6914882e+02 -9.6613035e+01 - -3.4377510e+03 9.0131369e+02 -9.9086924e+01 - -3.4551244e+03 8.3318238e+02 -1.0124172e+02 - -3.4711058e+03 7.6477204e+02 -1.0311706e+02 - -3.4856976e+03 6.9610163e+02 -1.0474556e+02 - -3.4989011e+03 6.2719160e+02 -1.0615413e+02 - -3.5107166e+03 5.5806348e+02 -1.0736499e+02 - -3.5211441e+03 4.8873975e+02 -1.0839643e+02 - -3.5301831e+03 4.1924355e+02 -1.0926347e+02 - -3.5378330e+03 3.4959864e+02 -1.0997832e+02 - -3.5440933e+03 2.7982919e+02 -1.1055076e+02 - -3.5489631e+03 2.0995972e+02 -1.1098844e+02 - -3.5524421e+03 1.4001503e+02 -1.1129710e+02 - -3.5545296e+03 7.0020093e+01 -1.1148073e+02 - -3.5552255e+03 0.0000000e+00 -1.1154168e+02 - -3.5545296e+03 -7.0020093e+01 -1.1148073e+02 - -3.5524421e+03 -1.4001503e+02 -1.1129710e+02 - -3.5489631e+03 -2.0995972e+02 -1.1098844e+02 - -3.5440933e+03 -2.7982919e+02 -1.1055076e+02 - -3.5378330e+03 -3.4959864e+02 -1.0997832e+02 - -3.5301831e+03 -4.1924355e+02 -1.0926347e+02 - -3.5211441e+03 -4.8873975e+02 -1.0839643e+02 - -3.5107166e+03 -5.5806348e+02 -1.0736499e+02 - -3.4989011e+03 -6.2719160e+02 -1.0615413e+02 - -3.4856976e+03 -6.9610163e+02 -1.0474556e+02 - -3.4711058e+03 -7.6477204e+02 -1.0311706e+02 - -3.4551244e+03 -8.3318238e+02 -1.0124172e+02 - -3.4377510e+03 -9.0131369e+02 -9.9086924e+01 - -3.4189818e+03 -9.6914882e+02 -9.6613035e+01 - -3.3988107e+03 -1.0366730e+03 -9.3771729e+01 - -3.3772288e+03 -1.1038745e+03 -9.0503795e+01 - -3.3542229e+03 -1.1707456e+03 -8.6736269e+01 - -3.3297746e+03 -1.2372839e+03 -8.2378633e+01 - -3.3038579e+03 -1.3034943e+03 -7.7317749e+01 - -3.2764361e+03 -1.3693912e+03 -7.1411047e+01 - -3.2474582e+03 -1.4350024e+03 -6.4477292e+01 - -3.2168528e+03 -1.5003745e+03 -5.6283982e+01 - -3.1845192e+03 -1.5655801e+03 -4.6530090e+01 - -3.1503155e+03 -1.6307294e+03 -3.4822434e+01 - -3.1140397e+03 -1.6959865e+03 -2.0643653e+01 - -3.0754035e+03 -1.7615933e+03 -3.3100329e+00 - -3.0339940e+03 -1.8279031e+03 1.8080339e+01 - -2.9892242e+03 -1.8954246e+03 4.4700538e+01 - -2.9402807e+03 -1.9648658e+03 7.8017279e+01 - -2.8861090e+03 -2.0371391e+03 1.1969405e+02 - -2.8255609e+03 -2.1132055e+03 1.7116976e+02 - -2.7579915e+03 -2.1934858e+03 2.3256820e+02 - -2.6846792e+03 -2.2764898e+03 3.0077551e+02 - -2.6107744e+03 -2.3569926e+03 3.6787552e+02 - -2.5454746e+03 -2.4260244e+03 4.2317823e+02 - -2.4979415e+03 -2.4750175e+03 4.5965386e+02 - -2.4720052e+03 -2.5009613e+03 4.7819302e+02 - -2.4652925e+03 -2.5070392e+03 4.8492405e+02 - -2.4720634e+03 -2.4996260e+03 4.8623917e+02 - -2.4857158e+03 -2.4857158e+03 4.8622946e+02 - -2.4996260e+03 -2.4720634e+03 4.8623917e+02 - -2.5070392e+03 -2.4652925e+03 4.8492405e+02 - -2.5009613e+03 -2.4720052e+03 4.7819302e+02 - -2.4750175e+03 -2.4979415e+03 4.5965386e+02 - -2.4260244e+03 -2.5454746e+03 4.2317823e+02 - -2.3569926e+03 -2.6107744e+03 3.6787552e+02 - -2.2764898e+03 -2.6846792e+03 3.0077551e+02 - -2.1934858e+03 -2.7579915e+03 2.3256820e+02 - -2.1132055e+03 -2.8255609e+03 1.7116976e+02 - -2.0371391e+03 -2.8861090e+03 1.1969405e+02 - -1.9648658e+03 -2.9402807e+03 7.8017279e+01 - -1.8954246e+03 -2.9892242e+03 4.4700538e+01 - -1.8279031e+03 -3.0339940e+03 1.8080339e+01 - -1.7615933e+03 -3.0754035e+03 -3.3100329e+00 - -1.6959865e+03 -3.1140397e+03 -2.0643653e+01 - -1.6307294e+03 -3.1503155e+03 -3.4822434e+01 - -1.5655801e+03 -3.1845192e+03 -4.6530090e+01 - -1.5003745e+03 -3.2168528e+03 -5.6283982e+01 - -1.4350024e+03 -3.2474582e+03 -6.4477292e+01 - -1.3693912e+03 -3.2764361e+03 -7.1411047e+01 - -1.3034943e+03 -3.3038579e+03 -7.7317749e+01 - -1.2372839e+03 -3.3297746e+03 -8.2378633e+01 - -1.1707456e+03 -3.3542229e+03 -8.6736269e+01 - -1.1038745e+03 -3.3772288e+03 -9.0503795e+01 - -1.0366730e+03 -3.3988107e+03 -9.3771729e+01 - -9.6914882e+02 -3.4189818e+03 -9.6613035e+01 - -9.0131369e+02 -3.4377510e+03 -9.9086924e+01 - -8.3318238e+02 -3.4551244e+03 -1.0124172e+02 - -7.6477204e+02 -3.4711058e+03 -1.0311706e+02 - -6.9610163e+02 -3.4856976e+03 -1.0474556e+02 - -6.2719160e+02 -3.4989011e+03 -1.0615413e+02 - -5.5806348e+02 -3.5107166e+03 -1.0736499e+02 - -4.8873975e+02 -3.5211441e+03 -1.0839643e+02 - -4.1924355e+02 -3.5301831e+03 -1.0926347e+02 - -3.4959864e+02 -3.5378330e+03 -1.0997832e+02 - -2.7982919e+02 -3.5440933e+03 -1.1055076e+02 - -2.0995972e+02 -3.5489631e+03 -1.1098844e+02 - -1.4001503e+02 -3.5524421e+03 -1.1129710e+02 - -7.0020093e+01 -3.5545296e+03 -1.1148073e+02 - 2.4067136e-09 -3.5552255e+03 -1.1154168e+02 - 7.0020093e+01 -3.5545296e+03 -1.1148073e+02 - 1.4001503e+02 -3.5524421e+03 -1.1129710e+02 - 2.0995972e+02 -3.5489631e+03 -1.1098844e+02 - 2.7982919e+02 -3.5440933e+03 -1.1055076e+02 - 3.4959864e+02 -3.5378330e+03 -1.0997832e+02 - 4.1924355e+02 -3.5301831e+03 -1.0926347e+02 - 4.8873975e+02 -3.5211441e+03 -1.0839643e+02 - 5.5806348e+02 -3.5107166e+03 -1.0736499e+02 - 6.2719160e+02 -3.4989011e+03 -1.0615413e+02 - 6.9610163e+02 -3.4856976e+03 -1.0474556e+02 - 7.6477204e+02 -3.4711058e+03 -1.0311706e+02 - 8.3318238e+02 -3.4551244e+03 -1.0124172e+02 - 9.0131369e+02 -3.4377510e+03 -9.9086924e+01 - 9.6914882e+02 -3.4189818e+03 -9.6613035e+01 - 1.0366730e+03 -3.3988107e+03 -9.3771729e+01 - 1.1038745e+03 -3.3772288e+03 -9.0503795e+01 - 1.1707456e+03 -3.3542229e+03 -8.6736269e+01 - 1.2372839e+03 -3.3297746e+03 -8.2378633e+01 - 1.3034943e+03 -3.3038579e+03 -7.7317749e+01 - 1.3693912e+03 -3.2764361e+03 -7.1411047e+01 - 1.4350024e+03 -3.2474582e+03 -6.4477292e+01 - 1.5003745e+03 -3.2168528e+03 -5.6283982e+01 - 1.5655801e+03 -3.1845192e+03 -4.6530090e+01 - 1.6307294e+03 -3.1503155e+03 -3.4822434e+01 - 1.6959865e+03 -3.1140397e+03 -2.0643653e+01 - 1.7615933e+03 -3.0754035e+03 -3.3100329e+00 - 1.8279031e+03 -3.0339940e+03 1.8080339e+01 - 1.8954246e+03 -2.9892242e+03 4.4700538e+01 - 1.9648658e+03 -2.9402807e+03 7.8017279e+01 - 2.0371391e+03 -2.8861090e+03 1.1969405e+02 - 2.1132055e+03 -2.8255609e+03 1.7116976e+02 - 2.1934858e+03 -2.7579915e+03 2.3256820e+02 - 2.2764898e+03 -2.6846792e+03 3.0077551e+02 - 2.3569926e+03 -2.6107744e+03 3.6787552e+02 - 2.4260244e+03 -2.5454746e+03 4.2317823e+02 - 2.4750175e+03 -2.4979415e+03 4.5965386e+02 - 2.5009613e+03 -2.4720052e+03 4.7819302e+02 - 2.5070392e+03 -2.4652925e+03 4.8492405e+02 - 2.4996260e+03 -2.4720634e+03 4.8623917e+02 - 2.4857158e+03 -2.4857158e+03 4.8622946e+02 - 2.4720634e+03 -2.4996260e+03 4.8623917e+02 - 2.4652925e+03 -2.5070392e+03 4.8492405e+02 - 2.4720052e+03 -2.5009613e+03 4.7819302e+02 - 2.4979415e+03 -2.4750175e+03 4.5965386e+02 - 2.5454746e+03 -2.4260244e+03 4.2317823e+02 - 2.6107744e+03 -2.3569926e+03 3.6787552e+02 - 2.6846792e+03 -2.2764898e+03 3.0077551e+02 - 2.7579915e+03 -2.1934858e+03 2.3256820e+02 - 2.8255609e+03 -2.1132055e+03 1.7116976e+02 - 2.8861090e+03 -2.0371391e+03 1.1969405e+02 - 2.9402807e+03 -1.9648658e+03 7.8017279e+01 - 2.9892242e+03 -1.8954246e+03 4.4700538e+01 - 3.0339940e+03 -1.8279031e+03 1.8080339e+01 - 3.0754035e+03 -1.7615933e+03 -3.3100329e+00 - 3.1140397e+03 -1.6959865e+03 -2.0643653e+01 - 3.1503155e+03 -1.6307294e+03 -3.4822434e+01 - 3.1845192e+03 -1.5655801e+03 -4.6530090e+01 - 3.2168528e+03 -1.5003745e+03 -5.6283982e+01 - 3.2474582e+03 -1.4350024e+03 -6.4477292e+01 - 3.2764361e+03 -1.3693912e+03 -7.1411047e+01 - 3.3038579e+03 -1.3034943e+03 -7.7317749e+01 - 3.3297746e+03 -1.2372839e+03 -8.2378633e+01 - 3.3542229e+03 -1.1707456e+03 -8.6736269e+01 - 3.3772288e+03 -1.1038745e+03 -9.0503795e+01 - 3.3988107e+03 -1.0366730e+03 -9.3771729e+01 - 3.4189818e+03 -9.6914882e+02 -9.6613035e+01 - 3.4377510e+03 -9.0131369e+02 -9.9086924e+01 - 3.4551244e+03 -8.3318238e+02 -1.0124172e+02 - 3.4711058e+03 -7.6477204e+02 -1.0311706e+02 - 3.4856976e+03 -6.9610163e+02 -1.0474556e+02 - 3.4989011e+03 -6.2719160e+02 -1.0615413e+02 - 3.5107166e+03 -5.5806348e+02 -1.0736499e+02 - 3.5211441e+03 -4.8873975e+02 -1.0839643e+02 - 3.5301831e+03 -4.1924355e+02 -1.0926347e+02 - 3.5378330e+03 -3.4959864e+02 -1.0997832e+02 - 3.5440933e+03 -2.7982919e+02 -1.1055076e+02 - 3.5489631e+03 -2.0995972e+02 -1.1098844e+02 - 3.5524421e+03 -1.4001503e+02 -1.1129710e+02 - 3.5545296e+03 -7.0020093e+01 -1.1148073e+02 - 3.5552255e+03 2.4067136e-09 -1.1154168e+02 - 3.5542322e+03 2.4067136e-09 -1.0375176e+02 - 3.5535413e+03 6.9900459e+01 -1.0371314e+02 - 3.5514690e+03 1.3977495e+02 -1.0359680e+02 - 3.5480156e+03 2.0959756e+02 -1.0340124e+02 - 3.5431821e+03 2.7934242e+02 -1.0312398e+02 - 3.5369697e+03 3.4898380e+02 -1.0276139e+02 - 3.5293796e+03 4.1849612e+02 -1.0230868e+02 - 3.5204138e+03 4.8785401e+02 -1.0175971e+02 - 3.5100740e+03 5.5703236e+02 -1.0110680e+02 - 3.4983624e+03 6.2600640e+02 -1.0034053e+02 - 3.4852810e+03 6.9475179e+02 -9.9449425e+01 - 3.4708319e+03 7.6324469e+02 -9.8419554e+01 - 3.4550170e+03 8.3146194e+02 -9.7234047e+01 - 3.4378380e+03 8.9938118e+02 -9.5872464e+01 - 3.4192956e+03 9.6698109e+02 -9.4309976e+01 - 3.3993900e+03 1.0342417e+03 -9.2516315e+01 - 3.3781199e+03 1.1011447e+03 -9.0454396e+01 - 3.3554820e+03 1.1676740e+03 -8.8078506e+01 - 3.3314704e+03 1.2338165e+03 -8.5331900e+01 - 3.3060753e+03 1.2995631e+03 -8.2143567e+01 - 3.2792815e+03 1.3649098e+03 -7.8423847e+01 - 3.2510661e+03 1.4298601e+03 -7.4058409e+01 - 3.2213953e+03 1.4944279e+03 -6.8899885e+01 - 3.1902194e+03 1.5586417e+03 -6.2756110e+01 - 3.1574655e+03 1.6225514e+03 -5.5373403e+01 - 3.1230263e+03 1.6862382e+03 -4.6412599e+01 - 3.0867429e+03 1.7498306e+03 -3.5414521e+01 - 3.0483777e+03 1.8135288e+03 -2.1750475e+01 - 3.0075724e+03 1.8776430e+03 -4.5530393e+00 - 2.9637845e+03 1.9426509e+03 1.7374010e+01 - 2.9161994e+03 2.0092769e+03 4.5649755e+01 - 2.8636411e+03 2.0785683e+03 8.2335535e+01 - 2.8046061e+03 2.1518470e+03 1.2962806e+02 - 2.7378274e+03 2.2301409e+03 1.8862684e+02 - 2.6641972e+03 2.3123068e+03 2.5645297e+02 - 2.5901203e+03 2.3918358e+03 3.2311002e+02 - 2.5280749e+03 2.4565405e+03 3.7449877e+02 - 2.4890920e+03 2.4961563e+03 4.0349024e+02 - 2.4747553e+03 2.5100828e+03 4.1466561e+02 - 2.4787021e+03 2.5055327e+03 4.1704380e+02 - 2.4919870e+03 2.4919870e+03 4.1711677e+02 - 2.5055327e+03 2.4787021e+03 4.1704380e+02 - 2.5100828e+03 2.4747553e+03 4.1466561e+02 - 2.4961563e+03 2.4890920e+03 4.0349024e+02 - 2.4565405e+03 2.5280749e+03 3.7449877e+02 - 2.3918358e+03 2.5901203e+03 3.2311002e+02 - 2.3123068e+03 2.6641972e+03 2.5645297e+02 - 2.2301409e+03 2.7378274e+03 1.8862684e+02 - 2.1518470e+03 2.8046061e+03 1.2962806e+02 - 2.0785683e+03 2.8636411e+03 8.2335535e+01 - 2.0092769e+03 2.9161994e+03 4.5649755e+01 - 1.9426509e+03 2.9637845e+03 1.7374010e+01 - 1.8776430e+03 3.0075724e+03 -4.5530393e+00 - 1.8135288e+03 3.0483777e+03 -2.1750475e+01 - 1.7498306e+03 3.0867429e+03 -3.5414521e+01 - 1.6862382e+03 3.1230263e+03 -4.6412599e+01 - 1.6225514e+03 3.1574655e+03 -5.5373403e+01 - 1.5586417e+03 3.1902194e+03 -6.2756110e+01 - 1.4944279e+03 3.2213953e+03 -6.8899885e+01 - 1.4298601e+03 3.2510661e+03 -7.4058409e+01 - 1.3649098e+03 3.2792815e+03 -7.8423847e+01 - 1.2995631e+03 3.3060753e+03 -8.2143567e+01 - 1.2338165e+03 3.3314704e+03 -8.5331900e+01 - 1.1676740e+03 3.3554820e+03 -8.8078506e+01 - 1.1011447e+03 3.3781199e+03 -9.0454396e+01 - 1.0342417e+03 3.3993900e+03 -9.2516315e+01 - 9.6698109e+02 3.4192956e+03 -9.4309976e+01 - 8.9938118e+02 3.4378380e+03 -9.5872464e+01 - 8.3146194e+02 3.4550170e+03 -9.7234047e+01 - 7.6324469e+02 3.4708319e+03 -9.8419554e+01 - 6.9475179e+02 3.4852810e+03 -9.9449425e+01 - 6.2600640e+02 3.4983624e+03 -1.0034053e+02 - 5.5703236e+02 3.5100740e+03 -1.0110680e+02 - 4.8785401e+02 3.5204138e+03 -1.0175971e+02 - 4.1849612e+02 3.5293796e+03 -1.0230868e+02 - 3.4898380e+02 3.5369697e+03 -1.0276139e+02 - 2.7934242e+02 3.5431821e+03 -1.0312398e+02 - 2.0959756e+02 3.5480156e+03 -1.0340124e+02 - 1.3977495e+02 3.5514690e+03 -1.0359680e+02 - 6.9900459e+01 3.5535413e+03 -1.0371314e+02 - 0.0000000e+00 3.5542322e+03 -1.0375176e+02 - -6.9900459e+01 3.5535413e+03 -1.0371314e+02 - -1.3977495e+02 3.5514690e+03 -1.0359680e+02 - -2.0959756e+02 3.5480156e+03 -1.0340124e+02 - -2.7934242e+02 3.5431821e+03 -1.0312398e+02 - -3.4898380e+02 3.5369697e+03 -1.0276139e+02 - -4.1849612e+02 3.5293796e+03 -1.0230868e+02 - -4.8785401e+02 3.5204138e+03 -1.0175971e+02 - -5.5703236e+02 3.5100740e+03 -1.0110680e+02 - -6.2600640e+02 3.4983624e+03 -1.0034053e+02 - -6.9475179e+02 3.4852810e+03 -9.9449425e+01 - -7.6324469e+02 3.4708319e+03 -9.8419554e+01 - -8.3146194e+02 3.4550170e+03 -9.7234047e+01 - -8.9938118e+02 3.4378380e+03 -9.5872464e+01 - -9.6698109e+02 3.4192956e+03 -9.4309976e+01 - -1.0342417e+03 3.3993900e+03 -9.2516315e+01 - -1.1011447e+03 3.3781199e+03 -9.0454396e+01 - -1.1676740e+03 3.3554820e+03 -8.8078506e+01 - -1.2338165e+03 3.3314704e+03 -8.5331900e+01 - -1.2995631e+03 3.3060753e+03 -8.2143567e+01 - -1.3649098e+03 3.2792815e+03 -7.8423847e+01 - -1.4298601e+03 3.2510661e+03 -7.4058409e+01 - -1.4944279e+03 3.2213953e+03 -6.8899885e+01 - -1.5586417e+03 3.1902194e+03 -6.2756110e+01 - -1.6225514e+03 3.1574655e+03 -5.5373403e+01 - -1.6862382e+03 3.1230263e+03 -4.6412599e+01 - -1.7498306e+03 3.0867429e+03 -3.5414521e+01 - -1.8135288e+03 3.0483777e+03 -2.1750475e+01 - -1.8776430e+03 3.0075724e+03 -4.5530393e+00 - -1.9426509e+03 2.9637845e+03 1.7374010e+01 - -2.0092769e+03 2.9161994e+03 4.5649755e+01 - -2.0785683e+03 2.8636411e+03 8.2335535e+01 - -2.1518470e+03 2.8046061e+03 1.2962806e+02 - -2.2301409e+03 2.7378274e+03 1.8862684e+02 - -2.3123068e+03 2.6641972e+03 2.5645297e+02 - -2.3918358e+03 2.5901203e+03 3.2311002e+02 - -2.4565405e+03 2.5280749e+03 3.7449877e+02 - -2.4961563e+03 2.4890920e+03 4.0349024e+02 - -2.5100828e+03 2.4747553e+03 4.1466561e+02 - -2.5055327e+03 2.4787021e+03 4.1704380e+02 - -2.4919870e+03 2.4919870e+03 4.1711677e+02 - -2.4787021e+03 2.5055327e+03 4.1704380e+02 - -2.4747553e+03 2.5100828e+03 4.1466561e+02 - -2.4890920e+03 2.4961563e+03 4.0349024e+02 - -2.5280749e+03 2.4565405e+03 3.7449877e+02 - -2.5901203e+03 2.3918358e+03 3.2311002e+02 - -2.6641972e+03 2.3123068e+03 2.5645297e+02 - -2.7378274e+03 2.2301409e+03 1.8862684e+02 - -2.8046061e+03 2.1518470e+03 1.2962806e+02 - -2.8636411e+03 2.0785683e+03 8.2335535e+01 - -2.9161994e+03 2.0092769e+03 4.5649755e+01 - -2.9637845e+03 1.9426509e+03 1.7374010e+01 - -3.0075724e+03 1.8776430e+03 -4.5530393e+00 - -3.0483777e+03 1.8135288e+03 -2.1750475e+01 - -3.0867429e+03 1.7498306e+03 -3.5414521e+01 - -3.1230263e+03 1.6862382e+03 -4.6412599e+01 - -3.1574655e+03 1.6225514e+03 -5.5373403e+01 - -3.1902194e+03 1.5586417e+03 -6.2756110e+01 - -3.2213953e+03 1.4944279e+03 -6.8899885e+01 - -3.2510661e+03 1.4298601e+03 -7.4058409e+01 - -3.2792815e+03 1.3649098e+03 -7.8423847e+01 - -3.3060753e+03 1.2995631e+03 -8.2143567e+01 - -3.3314704e+03 1.2338165e+03 -8.5331900e+01 - -3.3554820e+03 1.1676740e+03 -8.8078506e+01 - -3.3781199e+03 1.1011447e+03 -9.0454396e+01 - -3.3993900e+03 1.0342417e+03 -9.2516315e+01 - -3.4192956e+03 9.6698109e+02 -9.4309976e+01 - -3.4378380e+03 8.9938118e+02 -9.5872464e+01 - -3.4550170e+03 8.3146194e+02 -9.7234047e+01 - -3.4708319e+03 7.6324469e+02 -9.8419554e+01 - -3.4852810e+03 6.9475179e+02 -9.9449425e+01 - -3.4983624e+03 6.2600640e+02 -1.0034053e+02 - -3.5100740e+03 5.5703236e+02 -1.0110680e+02 - -3.5204138e+03 4.8785401e+02 -1.0175971e+02 - -3.5293796e+03 4.1849612e+02 -1.0230868e+02 - -3.5369697e+03 3.4898380e+02 -1.0276139e+02 - -3.5431821e+03 2.7934242e+02 -1.0312398e+02 - -3.5480156e+03 2.0959756e+02 -1.0340124e+02 - -3.5514690e+03 1.3977495e+02 -1.0359680e+02 - -3.5535413e+03 6.9900459e+01 -1.0371314e+02 - -3.5542322e+03 2.4067136e-09 -1.0375176e+02 - -3.5535413e+03 -6.9900459e+01 -1.0371314e+02 - -3.5514690e+03 -1.3977495e+02 -1.0359680e+02 - -3.5480156e+03 -2.0959756e+02 -1.0340124e+02 - -3.5431821e+03 -2.7934242e+02 -1.0312398e+02 - -3.5369697e+03 -3.4898380e+02 -1.0276139e+02 - -3.5293796e+03 -4.1849612e+02 -1.0230868e+02 - -3.5204138e+03 -4.8785401e+02 -1.0175971e+02 - -3.5100740e+03 -5.5703236e+02 -1.0110680e+02 - -3.4983624e+03 -6.2600640e+02 -1.0034053e+02 - -3.4852810e+03 -6.9475179e+02 -9.9449425e+01 - -3.4708319e+03 -7.6324469e+02 -9.8419554e+01 - -3.4550170e+03 -8.3146194e+02 -9.7234047e+01 - -3.4378380e+03 -8.9938118e+02 -9.5872464e+01 - -3.4192956e+03 -9.6698109e+02 -9.4309976e+01 - -3.3993900e+03 -1.0342417e+03 -9.2516315e+01 - -3.3781199e+03 -1.1011447e+03 -9.0454396e+01 - -3.3554820e+03 -1.1676740e+03 -8.8078506e+01 - -3.3314704e+03 -1.2338165e+03 -8.5331900e+01 - -3.3060753e+03 -1.2995631e+03 -8.2143567e+01 - -3.2792815e+03 -1.3649098e+03 -7.8423847e+01 - -3.2510661e+03 -1.4298601e+03 -7.4058409e+01 - -3.2213953e+03 -1.4944279e+03 -6.8899885e+01 - -3.1902194e+03 -1.5586417e+03 -6.2756110e+01 - -3.1574655e+03 -1.6225514e+03 -5.5373403e+01 - -3.1230263e+03 -1.6862382e+03 -4.6412599e+01 - -3.0867429e+03 -1.7498306e+03 -3.5414521e+01 - -3.0483777e+03 -1.8135288e+03 -2.1750475e+01 - -3.0075724e+03 -1.8776430e+03 -4.5530393e+00 - -2.9637845e+03 -1.9426509e+03 1.7374010e+01 - -2.9161994e+03 -2.0092769e+03 4.5649755e+01 - -2.8636411e+03 -2.0785683e+03 8.2335535e+01 - -2.8046061e+03 -2.1518470e+03 1.2962806e+02 - -2.7378274e+03 -2.2301409e+03 1.8862684e+02 - -2.6641972e+03 -2.3123068e+03 2.5645297e+02 - -2.5901203e+03 -2.3918358e+03 3.2311002e+02 - -2.5280749e+03 -2.4565405e+03 3.7449877e+02 - -2.4890920e+03 -2.4961563e+03 4.0349024e+02 - -2.4747553e+03 -2.5100828e+03 4.1466561e+02 - -2.4787021e+03 -2.5055327e+03 4.1704380e+02 - -2.4919870e+03 -2.4919870e+03 4.1711677e+02 - -2.5055327e+03 -2.4787021e+03 4.1704380e+02 - -2.5100828e+03 -2.4747553e+03 4.1466561e+02 - -2.4961563e+03 -2.4890920e+03 4.0349024e+02 - -2.4565405e+03 -2.5280749e+03 3.7449877e+02 - -2.3918358e+03 -2.5901203e+03 3.2311002e+02 - -2.3123068e+03 -2.6641972e+03 2.5645297e+02 - -2.2301409e+03 -2.7378274e+03 1.8862684e+02 - -2.1518470e+03 -2.8046061e+03 1.2962806e+02 - -2.0785683e+03 -2.8636411e+03 8.2335535e+01 - -2.0092769e+03 -2.9161994e+03 4.5649755e+01 - -1.9426509e+03 -2.9637845e+03 1.7374010e+01 - -1.8776430e+03 -3.0075724e+03 -4.5530393e+00 - -1.8135288e+03 -3.0483777e+03 -2.1750475e+01 - -1.7498306e+03 -3.0867429e+03 -3.5414521e+01 - -1.6862382e+03 -3.1230263e+03 -4.6412599e+01 - -1.6225514e+03 -3.1574655e+03 -5.5373403e+01 - -1.5586417e+03 -3.1902194e+03 -6.2756110e+01 - -1.4944279e+03 -3.2213953e+03 -6.8899885e+01 - -1.4298601e+03 -3.2510661e+03 -7.4058409e+01 - -1.3649098e+03 -3.2792815e+03 -7.8423847e+01 - -1.2995631e+03 -3.3060753e+03 -8.2143567e+01 - -1.2338165e+03 -3.3314704e+03 -8.5331900e+01 - -1.1676740e+03 -3.3554820e+03 -8.8078506e+01 - -1.1011447e+03 -3.3781199e+03 -9.0454396e+01 - -1.0342417e+03 -3.3993900e+03 -9.2516315e+01 - -9.6698109e+02 -3.4192956e+03 -9.4309976e+01 - -8.9938118e+02 -3.4378380e+03 -9.5872464e+01 - -8.3146194e+02 -3.4550170e+03 -9.7234047e+01 - -7.6324469e+02 -3.4708319e+03 -9.8419554e+01 - -6.9475179e+02 -3.4852810e+03 -9.9449425e+01 - -6.2600640e+02 -3.4983624e+03 -1.0034053e+02 - -5.5703236e+02 -3.5100740e+03 -1.0110680e+02 - -4.8785401e+02 -3.5204138e+03 -1.0175971e+02 - -4.1849612e+02 -3.5293796e+03 -1.0230868e+02 - -3.4898380e+02 -3.5369697e+03 -1.0276139e+02 - -2.7934242e+02 -3.5431821e+03 -1.0312398e+02 - -2.0959756e+02 -3.5480156e+03 -1.0340124e+02 - -1.3977495e+02 -3.5514690e+03 -1.0359680e+02 - -6.9900459e+01 -3.5535413e+03 -1.0371314e+02 - 0.0000000e+00 -3.5542322e+03 -1.0375176e+02 - 6.9900459e+01 -3.5535413e+03 -1.0371314e+02 - 1.3977495e+02 -3.5514690e+03 -1.0359680e+02 - 2.0959756e+02 -3.5480156e+03 -1.0340124e+02 - 2.7934242e+02 -3.5431821e+03 -1.0312398e+02 - 3.4898380e+02 -3.5369697e+03 -1.0276139e+02 - 4.1849612e+02 -3.5293796e+03 -1.0230868e+02 - 4.8785401e+02 -3.5204138e+03 -1.0175971e+02 - 5.5703236e+02 -3.5100740e+03 -1.0110680e+02 - 6.2600640e+02 -3.4983624e+03 -1.0034053e+02 - 6.9475179e+02 -3.4852810e+03 -9.9449425e+01 - 7.6324469e+02 -3.4708319e+03 -9.8419554e+01 - 8.3146194e+02 -3.4550170e+03 -9.7234047e+01 - 8.9938118e+02 -3.4378380e+03 -9.5872464e+01 - 9.6698109e+02 -3.4192956e+03 -9.4309976e+01 - 1.0342417e+03 -3.3993900e+03 -9.2516315e+01 - 1.1011447e+03 -3.3781199e+03 -9.0454396e+01 - 1.1676740e+03 -3.3554820e+03 -8.8078506e+01 - 1.2338165e+03 -3.3314704e+03 -8.5331900e+01 - 1.2995631e+03 -3.3060753e+03 -8.2143567e+01 - 1.3649098e+03 -3.2792815e+03 -7.8423847e+01 - 1.4298601e+03 -3.2510661e+03 -7.4058409e+01 - 1.4944279e+03 -3.2213953e+03 -6.8899885e+01 - 1.5586417e+03 -3.1902194e+03 -6.2756110e+01 - 1.6225514e+03 -3.1574655e+03 -5.5373403e+01 - 1.6862382e+03 -3.1230263e+03 -4.6412599e+01 - 1.7498306e+03 -3.0867429e+03 -3.5414521e+01 - 1.8135288e+03 -3.0483777e+03 -2.1750475e+01 - 1.8776430e+03 -3.0075724e+03 -4.5530393e+00 - 1.9426509e+03 -2.9637845e+03 1.7374010e+01 - 2.0092769e+03 -2.9161994e+03 4.5649755e+01 - 2.0785683e+03 -2.8636411e+03 8.2335535e+01 - 2.1518470e+03 -2.8046061e+03 1.2962806e+02 - 2.2301409e+03 -2.7378274e+03 1.8862684e+02 - 2.3123068e+03 -2.6641972e+03 2.5645297e+02 - 2.3918358e+03 -2.5901203e+03 3.2311002e+02 - 2.4565405e+03 -2.5280749e+03 3.7449877e+02 - 2.4961563e+03 -2.4890920e+03 4.0349024e+02 - 2.5100828e+03 -2.4747553e+03 4.1466561e+02 - 2.5055327e+03 -2.4787021e+03 4.1704380e+02 - 2.4919870e+03 -2.4919870e+03 4.1711677e+02 - 2.4787021e+03 -2.5055327e+03 4.1704380e+02 - 2.4747553e+03 -2.5100828e+03 4.1466561e+02 - 2.4890920e+03 -2.4961563e+03 4.0349024e+02 - 2.5280749e+03 -2.4565405e+03 3.7449877e+02 - 2.5901203e+03 -2.3918358e+03 3.2311002e+02 - 2.6641972e+03 -2.3123068e+03 2.5645297e+02 - 2.7378274e+03 -2.2301409e+03 1.8862684e+02 - 2.8046061e+03 -2.1518470e+03 1.2962806e+02 - 2.8636411e+03 -2.0785683e+03 8.2335535e+01 - 2.9161994e+03 -2.0092769e+03 4.5649755e+01 - 2.9637845e+03 -1.9426509e+03 1.7374010e+01 - 3.0075724e+03 -1.8776430e+03 -4.5530393e+00 - 3.0483777e+03 -1.8135288e+03 -2.1750475e+01 - 3.0867429e+03 -1.7498306e+03 -3.5414521e+01 - 3.1230263e+03 -1.6862382e+03 -4.6412599e+01 - 3.1574655e+03 -1.6225514e+03 -5.5373403e+01 - 3.1902194e+03 -1.5586417e+03 -6.2756110e+01 - 3.2213953e+03 -1.4944279e+03 -6.8899885e+01 - 3.2510661e+03 -1.4298601e+03 -7.4058409e+01 - 3.2792815e+03 -1.3649098e+03 -7.8423847e+01 - 3.3060753e+03 -1.2995631e+03 -8.2143567e+01 - 3.3314704e+03 -1.2338165e+03 -8.5331900e+01 - 3.3554820e+03 -1.1676740e+03 -8.8078506e+01 - 3.3781199e+03 -1.1011447e+03 -9.0454396e+01 - 3.3993900e+03 -1.0342417e+03 -9.2516315e+01 - 3.4192956e+03 -9.6698109e+02 -9.4309976e+01 - 3.4378380e+03 -8.9938118e+02 -9.5872464e+01 - 3.4550170e+03 -8.3146194e+02 -9.7234047e+01 - 3.4708319e+03 -7.6324469e+02 -9.8419554e+01 - 3.4852810e+03 -6.9475179e+02 -9.9449425e+01 - 3.4983624e+03 -6.2600640e+02 -1.0034053e+02 - 3.5100740e+03 -5.5703236e+02 -1.0110680e+02 - 3.5204138e+03 -4.8785401e+02 -1.0175971e+02 - 3.5293796e+03 -4.1849612e+02 -1.0230868e+02 - 3.5369697e+03 -3.4898380e+02 -1.0276139e+02 - 3.5431821e+03 -2.7934242e+02 -1.0312398e+02 - 3.5480156e+03 -2.0959756e+02 -1.0340124e+02 - 3.5514690e+03 -1.3977495e+02 -1.0359680e+02 - 3.5535413e+03 -6.9900459e+01 -1.0371314e+02 - 3.5542322e+03 -4.8134273e-09 -1.0375176e+02 - 3.5530015e+03 0.0000000e+00 -9.2348599e+01 - 3.5523138e+03 6.9815408e+01 -9.2326117e+01 - 3.5502511e+03 1.3960437e+02 -9.2258388e+01 - 3.5468140e+03 2.0934047e+02 -9.2144557e+01 - 3.5420035e+03 2.7899733e+02 -9.1983176e+01 - 3.5358212e+03 3.4854865e+02 -9.1772159e+01 - 3.5282690e+03 4.1796822e+02 -9.1508729e+01 - 3.5193493e+03 4.8722996e+02 -9.1189336e+01 - 3.5090648e+03 5.5630796e+02 -9.0809551e+01 - 3.4974184e+03 6.2517648e+02 -9.0363935e+01 - 3.4844135e+03 6.9381005e+02 -8.9845861e+01 - 3.4700537e+03 7.6218349e+02 -8.9247293e+01 - 3.4543428e+03 8.3027198e+02 -8.8558505e+01 - 3.4372847e+03 8.9805115e+02 -8.7767718e+01 - 3.4188832e+03 9.6549721e+02 -8.6860630e+01 - 3.3991420e+03 1.0325870e+03 -8.5819816e+01 - 3.3780645e+03 1.0992984e+03 -8.4623936e+01 - 3.3556532e+03 1.1656103e+03 -8.3246696e+01 - 3.3319099e+03 1.2315030e+03 -8.1655463e+01 - 3.3068345e+03 1.2969590e+03 -7.9809400e+01 - 3.2804249e+03 1.3619632e+03 -7.7656928e+01 - 3.2526752e+03 1.4265044e+03 -7.5132220e+01 - 3.2235748e+03 1.4905762e+03 -7.2150287e+01 - 3.1931055e+03 1.5541796e+03 -6.8599996e+01 - 3.1612381e+03 1.6173261e+03 -6.4333972e+01 - 3.1279268e+03 1.6800428e+03 -5.9153754e+01 - 3.0930998e+03 1.7423807e+03 -5.2787604e+01 - 3.0566455e+03 1.8044281e+03 -4.4856789e+01 - 3.0183873e+03 1.8663329e+03 -3.4823723e+01 - 2.9780431e+03 1.9283405e+03 -2.1911886e+01 - 2.9351554e+03 1.9908586e+03 -4.9843530e+00 - 2.8889747e+03 2.0545642e+03 1.7627456e+01 - 2.8382879e+03 2.1205614e+03 4.8307544e+01 - 2.7812661e+03 2.1905113e+03 9.0112554e+01 - 2.7158195e+03 2.2662565e+03 1.4561853e+02 - 2.6420512e+03 2.3473972e+03 2.1275818e+02 - 2.5681965e+03 2.4255563e+03 2.7850048e+02 - 2.5119417e+03 2.4834468e+03 3.2370859e+02 - 2.4854377e+03 2.5099387e+03 3.4318836e+02 - 2.4846524e+03 2.5102029e+03 3.4762272e+02 - 2.4972975e+03 2.4972975e+03 3.4784327e+02 - 2.5102029e+03 2.4846524e+03 3.4762272e+02 - 2.5099387e+03 2.4854377e+03 3.4318836e+02 - 2.4834468e+03 2.5119417e+03 3.2370859e+02 - 2.4255563e+03 2.5681965e+03 2.7850048e+02 - 2.3473972e+03 2.6420512e+03 2.1275818e+02 - 2.2662565e+03 2.7158195e+03 1.4561853e+02 - 2.1905113e+03 2.7812661e+03 9.0112554e+01 - 2.1205614e+03 2.8382879e+03 4.8307544e+01 - 2.0545642e+03 2.8889747e+03 1.7627456e+01 - 1.9908586e+03 2.9351554e+03 -4.9843530e+00 - 1.9283405e+03 2.9780431e+03 -2.1911886e+01 - 1.8663329e+03 3.0183873e+03 -3.4823723e+01 - 1.8044281e+03 3.0566455e+03 -4.4856789e+01 - 1.7423807e+03 3.0930998e+03 -5.2787604e+01 - 1.6800428e+03 3.1279268e+03 -5.9153754e+01 - 1.6173261e+03 3.1612381e+03 -6.4333972e+01 - 1.5541796e+03 3.1931055e+03 -6.8599996e+01 - 1.4905762e+03 3.2235748e+03 -7.2150287e+01 - 1.4265044e+03 3.2526752e+03 -7.5132220e+01 - 1.3619632e+03 3.2804249e+03 -7.7656928e+01 - 1.2969590e+03 3.3068345e+03 -7.9809400e+01 - 1.2315030e+03 3.3319099e+03 -8.1655463e+01 - 1.1656103e+03 3.3556532e+03 -8.3246696e+01 - 1.0992984e+03 3.3780645e+03 -8.4623936e+01 - 1.0325870e+03 3.3991420e+03 -8.5819816e+01 - 9.6549721e+02 3.4188832e+03 -8.6860630e+01 - 8.9805115e+02 3.4372847e+03 -8.7767718e+01 - 8.3027198e+02 3.4543428e+03 -8.8558505e+01 - 7.6218349e+02 3.4700537e+03 -8.9247293e+01 - 6.9381005e+02 3.4844135e+03 -8.9845861e+01 - 6.2517648e+02 3.4974184e+03 -9.0363935e+01 - 5.5630796e+02 3.5090648e+03 -9.0809551e+01 - 4.8722996e+02 3.5193493e+03 -9.1189336e+01 - 4.1796822e+02 3.5282690e+03 -9.1508729e+01 - 3.4854865e+02 3.5358212e+03 -9.1772159e+01 - 2.7899733e+02 3.5420035e+03 -9.1983176e+01 - 2.0934047e+02 3.5468140e+03 -9.2144557e+01 - 1.3960437e+02 3.5502511e+03 -9.2258388e+01 - 6.9815408e+01 3.5523138e+03 -9.2326117e+01 - 2.4067136e-09 3.5530015e+03 -9.2348599e+01 - -6.9815408e+01 3.5523138e+03 -9.2326117e+01 - -1.3960437e+02 3.5502511e+03 -9.2258388e+01 - -2.0934047e+02 3.5468140e+03 -9.2144557e+01 - -2.7899733e+02 3.5420035e+03 -9.1983176e+01 - -3.4854865e+02 3.5358212e+03 -9.1772159e+01 - -4.1796822e+02 3.5282690e+03 -9.1508729e+01 - -4.8722996e+02 3.5193493e+03 -9.1189336e+01 - -5.5630796e+02 3.5090648e+03 -9.0809551e+01 - -6.2517648e+02 3.4974184e+03 -9.0363935e+01 - -6.9381005e+02 3.4844135e+03 -8.9845861e+01 - -7.6218349e+02 3.4700537e+03 -8.9247293e+01 - -8.3027198e+02 3.4543428e+03 -8.8558505e+01 - -8.9805115e+02 3.4372847e+03 -8.7767718e+01 - -9.6549721e+02 3.4188832e+03 -8.6860630e+01 - -1.0325870e+03 3.3991420e+03 -8.5819816e+01 - -1.0992984e+03 3.3780645e+03 -8.4623936e+01 - -1.1656103e+03 3.3556532e+03 -8.3246696e+01 - -1.2315030e+03 3.3319099e+03 -8.1655463e+01 - -1.2969590e+03 3.3068345e+03 -7.9809400e+01 - -1.3619632e+03 3.2804249e+03 -7.7656928e+01 - -1.4265044e+03 3.2526752e+03 -7.5132220e+01 - -1.4905762e+03 3.2235748e+03 -7.2150287e+01 - -1.5541796e+03 3.1931055e+03 -6.8599996e+01 - -1.6173261e+03 3.1612381e+03 -6.4333972e+01 - -1.6800428e+03 3.1279268e+03 -5.9153754e+01 - -1.7423807e+03 3.0930998e+03 -5.2787604e+01 - -1.8044281e+03 3.0566455e+03 -4.4856789e+01 - -1.8663329e+03 3.0183873e+03 -3.4823723e+01 - -1.9283405e+03 2.9780431e+03 -2.1911886e+01 - -1.9908586e+03 2.9351554e+03 -4.9843530e+00 - -2.0545642e+03 2.8889747e+03 1.7627456e+01 - -2.1205614e+03 2.8382879e+03 4.8307544e+01 - -2.1905113e+03 2.7812661e+03 9.0112554e+01 - -2.2662565e+03 2.7158195e+03 1.4561853e+02 - -2.3473972e+03 2.6420512e+03 2.1275818e+02 - -2.4255563e+03 2.5681965e+03 2.7850048e+02 - -2.4834468e+03 2.5119417e+03 3.2370859e+02 - -2.5099387e+03 2.4854377e+03 3.4318836e+02 - -2.5102029e+03 2.4846524e+03 3.4762272e+02 - -2.4972975e+03 2.4972975e+03 3.4784327e+02 - -2.4846524e+03 2.5102029e+03 3.4762272e+02 - -2.4854377e+03 2.5099387e+03 3.4318836e+02 - -2.5119417e+03 2.4834468e+03 3.2370859e+02 - -2.5681965e+03 2.4255563e+03 2.7850048e+02 - -2.6420512e+03 2.3473972e+03 2.1275818e+02 - -2.7158195e+03 2.2662565e+03 1.4561853e+02 - -2.7812661e+03 2.1905113e+03 9.0112554e+01 - -2.8382879e+03 2.1205614e+03 4.8307544e+01 - -2.8889747e+03 2.0545642e+03 1.7627456e+01 - -2.9351554e+03 1.9908586e+03 -4.9843530e+00 - -2.9780431e+03 1.9283405e+03 -2.1911886e+01 - -3.0183873e+03 1.8663329e+03 -3.4823723e+01 - -3.0566455e+03 1.8044281e+03 -4.4856789e+01 - -3.0930998e+03 1.7423807e+03 -5.2787604e+01 - -3.1279268e+03 1.6800428e+03 -5.9153754e+01 - -3.1612381e+03 1.6173261e+03 -6.4333972e+01 - -3.1931055e+03 1.5541796e+03 -6.8599996e+01 - -3.2235748e+03 1.4905762e+03 -7.2150287e+01 - -3.2526752e+03 1.4265044e+03 -7.5132220e+01 - -3.2804249e+03 1.3619632e+03 -7.7656928e+01 - -3.3068345e+03 1.2969590e+03 -7.9809400e+01 - -3.3319099e+03 1.2315030e+03 -8.1655463e+01 - -3.3556532e+03 1.1656103e+03 -8.3246696e+01 - -3.3780645e+03 1.0992984e+03 -8.4623936e+01 - -3.3991420e+03 1.0325870e+03 -8.5819816e+01 - -3.4188832e+03 9.6549721e+02 -8.6860630e+01 - -3.4372847e+03 8.9805115e+02 -8.7767718e+01 - -3.4543428e+03 8.3027198e+02 -8.8558505e+01 - -3.4700537e+03 7.6218349e+02 -8.9247293e+01 - -3.4844135e+03 6.9381005e+02 -8.9845861e+01 - -3.4974184e+03 6.2517648e+02 -9.0363935e+01 - -3.5090648e+03 5.5630796e+02 -9.0809551e+01 - -3.5193493e+03 4.8722996e+02 -9.1189336e+01 - -3.5282690e+03 4.1796822e+02 -9.1508729e+01 - -3.5358212e+03 3.4854865e+02 -9.1772159e+01 - -3.5420035e+03 2.7899733e+02 -9.1983176e+01 - -3.5468140e+03 2.0934047e+02 -9.2144557e+01 - -3.5502511e+03 1.3960437e+02 -9.2258388e+01 - -3.5523138e+03 6.9815408e+01 -9.2326117e+01 - -3.5530015e+03 -2.4067136e-09 -9.2348599e+01 - -3.5523138e+03 -6.9815408e+01 -9.2326117e+01 - -3.5502511e+03 -1.3960437e+02 -9.2258388e+01 - -3.5468140e+03 -2.0934047e+02 -9.2144557e+01 - -3.5420035e+03 -2.7899733e+02 -9.1983176e+01 - -3.5358212e+03 -3.4854865e+02 -9.1772159e+01 - -3.5282690e+03 -4.1796822e+02 -9.1508729e+01 - -3.5193493e+03 -4.8722996e+02 -9.1189336e+01 - -3.5090648e+03 -5.5630796e+02 -9.0809551e+01 - -3.4974184e+03 -6.2517648e+02 -9.0363935e+01 - -3.4844135e+03 -6.9381005e+02 -8.9845861e+01 - -3.4700537e+03 -7.6218349e+02 -8.9247293e+01 - -3.4543428e+03 -8.3027198e+02 -8.8558505e+01 - -3.4372847e+03 -8.9805115e+02 -8.7767718e+01 - -3.4188832e+03 -9.6549721e+02 -8.6860630e+01 - -3.3991420e+03 -1.0325870e+03 -8.5819816e+01 - -3.3780645e+03 -1.0992984e+03 -8.4623936e+01 - -3.3556532e+03 -1.1656103e+03 -8.3246696e+01 - -3.3319099e+03 -1.2315030e+03 -8.1655463e+01 - -3.3068345e+03 -1.2969590e+03 -7.9809400e+01 - -3.2804249e+03 -1.3619632e+03 -7.7656928e+01 - -3.2526752e+03 -1.4265044e+03 -7.5132220e+01 - -3.2235748e+03 -1.4905762e+03 -7.2150287e+01 - -3.1931055e+03 -1.5541796e+03 -6.8599996e+01 - -3.1612381e+03 -1.6173261e+03 -6.4333972e+01 - -3.1279268e+03 -1.6800428e+03 -5.9153754e+01 - -3.0930998e+03 -1.7423807e+03 -5.2787604e+01 - -3.0566455e+03 -1.8044281e+03 -4.4856789e+01 - -3.0183873e+03 -1.8663329e+03 -3.4823723e+01 - -2.9780431e+03 -1.9283405e+03 -2.1911886e+01 - -2.9351554e+03 -1.9908586e+03 -4.9843530e+00 - -2.8889747e+03 -2.0545642e+03 1.7627456e+01 - -2.8382879e+03 -2.1205614e+03 4.8307544e+01 - -2.7812661e+03 -2.1905113e+03 9.0112554e+01 - -2.7158195e+03 -2.2662565e+03 1.4561853e+02 - -2.6420512e+03 -2.3473972e+03 2.1275818e+02 - -2.5681965e+03 -2.4255563e+03 2.7850048e+02 - -2.5119417e+03 -2.4834468e+03 3.2370859e+02 - -2.4854377e+03 -2.5099387e+03 3.4318836e+02 - -2.4846524e+03 -2.5102029e+03 3.4762272e+02 - -2.4972975e+03 -2.4972975e+03 3.4784327e+02 - -2.5102029e+03 -2.4846524e+03 3.4762272e+02 - -2.5099387e+03 -2.4854377e+03 3.4318836e+02 - -2.4834468e+03 -2.5119417e+03 3.2370859e+02 - -2.4255563e+03 -2.5681965e+03 2.7850048e+02 - -2.3473972e+03 -2.6420512e+03 2.1275818e+02 - -2.2662565e+03 -2.7158195e+03 1.4561853e+02 - -2.1905113e+03 -2.7812661e+03 9.0112554e+01 - -2.1205614e+03 -2.8382879e+03 4.8307544e+01 - -2.0545642e+03 -2.8889747e+03 1.7627456e+01 - -1.9908586e+03 -2.9351554e+03 -4.9843530e+00 - -1.9283405e+03 -2.9780431e+03 -2.1911886e+01 - -1.8663329e+03 -3.0183873e+03 -3.4823723e+01 - -1.8044281e+03 -3.0566455e+03 -4.4856789e+01 - -1.7423807e+03 -3.0930998e+03 -5.2787604e+01 - -1.6800428e+03 -3.1279268e+03 -5.9153754e+01 - -1.6173261e+03 -3.1612381e+03 -6.4333972e+01 - -1.5541796e+03 -3.1931055e+03 -6.8599996e+01 - -1.4905762e+03 -3.2235748e+03 -7.2150287e+01 - -1.4265044e+03 -3.2526752e+03 -7.5132220e+01 - -1.3619632e+03 -3.2804249e+03 -7.7656928e+01 - -1.2969590e+03 -3.3068345e+03 -7.9809400e+01 - -1.2315030e+03 -3.3319099e+03 -8.1655463e+01 - -1.1656103e+03 -3.3556532e+03 -8.3246696e+01 - -1.0992984e+03 -3.3780645e+03 -8.4623936e+01 - -1.0325870e+03 -3.3991420e+03 -8.5819816e+01 - -9.6549721e+02 -3.4188832e+03 -8.6860630e+01 - -8.9805115e+02 -3.4372847e+03 -8.7767718e+01 - -8.3027198e+02 -3.4543428e+03 -8.8558505e+01 - -7.6218349e+02 -3.4700537e+03 -8.9247293e+01 - -6.9381005e+02 -3.4844135e+03 -8.9845861e+01 - -6.2517648e+02 -3.4974184e+03 -9.0363935e+01 - -5.5630796e+02 -3.5090648e+03 -9.0809551e+01 - -4.8722996e+02 -3.5193493e+03 -9.1189336e+01 - -4.1796822e+02 -3.5282690e+03 -9.1508729e+01 - -3.4854865e+02 -3.5358212e+03 -9.1772159e+01 - -2.7899733e+02 -3.5420035e+03 -9.1983176e+01 - -2.0934047e+02 -3.5468140e+03 -9.2144557e+01 - -1.3960437e+02 -3.5502511e+03 -9.2258388e+01 - -6.9815408e+01 -3.5523138e+03 -9.2326117e+01 - 2.4067136e-09 -3.5530015e+03 -9.2348599e+01 - 6.9815408e+01 -3.5523138e+03 -9.2326117e+01 - 1.3960437e+02 -3.5502511e+03 -9.2258388e+01 - 2.0934047e+02 -3.5468140e+03 -9.2144557e+01 - 2.7899733e+02 -3.5420035e+03 -9.1983176e+01 - 3.4854865e+02 -3.5358212e+03 -9.1772159e+01 - 4.1796822e+02 -3.5282690e+03 -9.1508729e+01 - 4.8722996e+02 -3.5193493e+03 -9.1189336e+01 - 5.5630796e+02 -3.5090648e+03 -9.0809551e+01 - 6.2517648e+02 -3.4974184e+03 -9.0363935e+01 - 6.9381005e+02 -3.4844135e+03 -8.9845861e+01 - 7.6218349e+02 -3.4700537e+03 -8.9247293e+01 - 8.3027198e+02 -3.4543428e+03 -8.8558505e+01 - 8.9805115e+02 -3.4372847e+03 -8.7767718e+01 - 9.6549721e+02 -3.4188832e+03 -8.6860630e+01 - 1.0325870e+03 -3.3991420e+03 -8.5819816e+01 - 1.0992984e+03 -3.3780645e+03 -8.4623936e+01 - 1.1656103e+03 -3.3556532e+03 -8.3246696e+01 - 1.2315030e+03 -3.3319099e+03 -8.1655463e+01 - 1.2969590e+03 -3.3068345e+03 -7.9809400e+01 - 1.3619632e+03 -3.2804249e+03 -7.7656928e+01 - 1.4265044e+03 -3.2526752e+03 -7.5132220e+01 - 1.4905762e+03 -3.2235748e+03 -7.2150287e+01 - 1.5541796e+03 -3.1931055e+03 -6.8599996e+01 - 1.6173261e+03 -3.1612381e+03 -6.4333972e+01 - 1.6800428e+03 -3.1279268e+03 -5.9153754e+01 - 1.7423807e+03 -3.0930998e+03 -5.2787604e+01 - 1.8044281e+03 -3.0566455e+03 -4.4856789e+01 - 1.8663329e+03 -3.0183873e+03 -3.4823723e+01 - 1.9283405e+03 -2.9780431e+03 -2.1911886e+01 - 1.9908586e+03 -2.9351554e+03 -4.9843530e+00 - 2.0545642e+03 -2.8889747e+03 1.7627456e+01 - 2.1205614e+03 -2.8382879e+03 4.8307544e+01 - 2.1905113e+03 -2.7812661e+03 9.0112554e+01 - 2.2662565e+03 -2.7158195e+03 1.4561853e+02 - 2.3473972e+03 -2.6420512e+03 2.1275818e+02 - 2.4255563e+03 -2.5681965e+03 2.7850048e+02 - 2.4834468e+03 -2.5119417e+03 3.2370859e+02 - 2.5099387e+03 -2.4854377e+03 3.4318836e+02 - 2.5102029e+03 -2.4846524e+03 3.4762272e+02 - 2.4972975e+03 -2.4972975e+03 3.4784327e+02 - 2.4846524e+03 -2.5102029e+03 3.4762272e+02 - 2.4854377e+03 -2.5099387e+03 3.4318836e+02 - 2.5119417e+03 -2.4834468e+03 3.2370859e+02 - 2.5681965e+03 -2.4255563e+03 2.7850048e+02 - 2.6420512e+03 -2.3473972e+03 2.1275818e+02 - 2.7158195e+03 -2.2662565e+03 1.4561853e+02 - 2.7812661e+03 -2.1905113e+03 9.0112554e+01 - 2.8382879e+03 -2.1205614e+03 4.8307544e+01 - 2.8889747e+03 -2.0545642e+03 1.7627456e+01 - 2.9351554e+03 -1.9908586e+03 -4.9843530e+00 - 2.9780431e+03 -1.9283405e+03 -2.1911886e+01 - 3.0183873e+03 -1.8663329e+03 -3.4823723e+01 - 3.0566455e+03 -1.8044281e+03 -4.4856789e+01 - 3.0930998e+03 -1.7423807e+03 -5.2787604e+01 - 3.1279268e+03 -1.6800428e+03 -5.9153754e+01 - 3.1612381e+03 -1.6173261e+03 -6.4333972e+01 - 3.1931055e+03 -1.5541796e+03 -6.8599996e+01 - 3.2235748e+03 -1.4905762e+03 -7.2150287e+01 - 3.2526752e+03 -1.4265044e+03 -7.5132220e+01 - 3.2804249e+03 -1.3619632e+03 -7.7656928e+01 - 3.3068345e+03 -1.2969590e+03 -7.9809400e+01 - 3.3319099e+03 -1.2315030e+03 -8.1655463e+01 - 3.3556532e+03 -1.1656103e+03 -8.3246696e+01 - 3.3780645e+03 -1.0992984e+03 -8.4623936e+01 - 3.3991420e+03 -1.0325870e+03 -8.5819816e+01 - 3.4188832e+03 -9.6549721e+02 -8.6860630e+01 - 3.4372847e+03 -8.9805115e+02 -8.7767718e+01 - 3.4543428e+03 -8.3027198e+02 -8.8558505e+01 - 3.4700537e+03 -7.6218349e+02 -8.9247293e+01 - 3.4844135e+03 -6.9381005e+02 -8.9845861e+01 - 3.4974184e+03 -6.2517648e+02 -9.0363935e+01 - 3.5090648e+03 -5.5630796e+02 -9.0809551e+01 - 3.5193493e+03 -4.8722996e+02 -9.1189336e+01 - 3.5282690e+03 -4.1796822e+02 -9.1508729e+01 - 3.5358212e+03 -3.4854865e+02 -9.1772159e+01 - 3.5420035e+03 -2.7899733e+02 -9.1983176e+01 - 3.5468140e+03 -2.0934047e+02 -9.2144557e+01 - 3.5502511e+03 -1.3960437e+02 -9.2258388e+01 - 3.5523138e+03 -6.9815408e+01 -9.2326117e+01 - 3.5530015e+03 -2.4067136e-09 -9.2348599e+01 - 3.5517188e+03 2.4067136e-09 -7.7816434e+01 - 3.5510330e+03 6.9756681e+01 -7.7804862e+01 - 3.5489760e+03 1.3948666e+02 -7.7769999e+01 - 3.5455483e+03 2.0916326e+02 -7.7711409e+01 - 3.5407514e+03 2.7875981e+02 -7.7628349e+01 - 3.5345869e+03 3.4824972e+02 -7.7519752e+01 - 3.5270569e+03 4.1760644e+02 -7.7384197e+01 - 3.5181641e+03 4.8680352e+02 -7.7219868e+01 - 3.5079118e+03 5.5581458e+02 -7.7024498e+01 - 3.4963033e+03 6.2461340e+02 -7.6795308e+01 - 3.4833428e+03 6.9317389e+02 -7.6528909e+01 - 3.4690347e+03 7.6147014e+02 -7.6221198e+01 - 3.4533838e+03 8.2947644e+02 -7.5867207e+01 - 3.4363951e+03 8.9716734e+02 -7.5460926e+01 - 3.4180742e+03 9.6451769e+02 -7.4995060e+01 - 3.3984267e+03 1.0315027e+03 -7.4460729e+01 - 3.3774585e+03 1.0980980e+03 -7.3847062e+01 - 3.3551754e+03 1.1642798e+03 -7.3140677e+01 - 3.3315831e+03 1.2300251e+03 -7.2324973e+01 - 3.3066871e+03 1.2953115e+03 -7.1379191e+01 - 3.2804922e+03 1.3601182e+03 -7.0277125e+01 - 3.2530019e+03 1.4244256e+03 -6.8985343e+01 - 3.2242182e+03 1.4882165e+03 -6.7460684e+01 - 3.1941403e+03 1.5514768e+03 -6.5646693e+01 - 3.1627632e+03 1.6141964e+03 -6.3468427e+01 - 3.1300753e+03 1.6763724e+03 -6.0824748e+01 - 3.0960547e+03 1.7380112e+03 -5.7576636e+01 - 3.0606632e+03 1.7991354e+03 -5.3529014e+01 - 3.0238355e+03 1.8597926e+03 -4.8401796e+01 - 2.9854605e+03 1.9200733e+03 -4.1782472e+01 - 2.9453475e+03 1.9801427e+03 -3.3046572e+01 - 2.9031616e+03 2.0403006e+03 -2.1221709e+01 - 2.8582987e+03 2.1010988e+03 -4.7559933e+00 - 2.8096489e+03 2.1635640e+03 1.8849532e+01 - 2.7552082e+03 2.2295581e+03 5.3445432e+01 - 2.6919133e+03 2.3019034e+03 1.0369211e+02 - 2.6183306e+03 2.3816876e+03 1.6958437e+02 - 2.5455311e+03 2.4576468e+03 2.3347018e+02 - 2.4997017e+03 2.5041931e+03 2.6889941e+02 - 2.4902147e+03 2.5133287e+03 2.7789988e+02 - 2.5016453e+03 2.5016453e+03 2.7843568e+02 - 2.5133287e+03 2.4902147e+03 2.7789988e+02 - 2.5041931e+03 2.4997017e+03 2.6889941e+02 - 2.4576468e+03 2.5455311e+03 2.3347018e+02 - 2.3816876e+03 2.6183306e+03 1.6958437e+02 - 2.3019034e+03 2.6919133e+03 1.0369211e+02 - 2.2295581e+03 2.7552082e+03 5.3445432e+01 - 2.1635640e+03 2.8096489e+03 1.8849532e+01 - 2.1010988e+03 2.8582987e+03 -4.7559933e+00 - 2.0403006e+03 2.9031616e+03 -2.1221709e+01 - 1.9801427e+03 2.9453475e+03 -3.3046572e+01 - 1.9200733e+03 2.9854605e+03 -4.1782472e+01 - 1.8597926e+03 3.0238355e+03 -4.8401796e+01 - 1.7991354e+03 3.0606632e+03 -5.3529014e+01 - 1.7380112e+03 3.0960547e+03 -5.7576636e+01 - 1.6763724e+03 3.1300753e+03 -6.0824748e+01 - 1.6141964e+03 3.1627632e+03 -6.3468427e+01 - 1.5514768e+03 3.1941403e+03 -6.5646693e+01 - 1.4882165e+03 3.2242182e+03 -6.7460684e+01 - 1.4244256e+03 3.2530019e+03 -6.8985343e+01 - 1.3601182e+03 3.2804922e+03 -7.0277125e+01 - 1.2953115e+03 3.3066871e+03 -7.1379191e+01 - 1.2300251e+03 3.3315831e+03 -7.2324973e+01 - 1.1642798e+03 3.3551754e+03 -7.3140677e+01 - 1.0980980e+03 3.3774585e+03 -7.3847062e+01 - 1.0315027e+03 3.3984267e+03 -7.4460729e+01 - 9.6451769e+02 3.4180742e+03 -7.4995060e+01 - 8.9716734e+02 3.4363951e+03 -7.5460926e+01 - 8.2947644e+02 3.4533838e+03 -7.5867207e+01 - 7.6147014e+02 3.4690347e+03 -7.6221198e+01 - 6.9317389e+02 3.4833428e+03 -7.6528909e+01 - 6.2461340e+02 3.4963033e+03 -7.6795308e+01 - 5.5581458e+02 3.5079118e+03 -7.7024498e+01 - 4.8680352e+02 3.5181641e+03 -7.7219868e+01 - 4.1760644e+02 3.5270569e+03 -7.7384197e+01 - 3.4824972e+02 3.5345869e+03 -7.7519752e+01 - 2.7875981e+02 3.5407514e+03 -7.7628349e+01 - 2.0916326e+02 3.5455483e+03 -7.7711409e+01 - 1.3948666e+02 3.5489760e+03 -7.7769999e+01 - 6.9756681e+01 3.5510330e+03 -7.7804862e+01 - 0.0000000e+00 3.5517188e+03 -7.7816434e+01 - -6.9756681e+01 3.5510330e+03 -7.7804862e+01 - -1.3948666e+02 3.5489760e+03 -7.7769999e+01 - -2.0916326e+02 3.5455483e+03 -7.7711409e+01 - -2.7875981e+02 3.5407514e+03 -7.7628349e+01 - -3.4824972e+02 3.5345869e+03 -7.7519752e+01 - -4.1760644e+02 3.5270569e+03 -7.7384197e+01 - -4.8680352e+02 3.5181641e+03 -7.7219868e+01 - -5.5581458e+02 3.5079118e+03 -7.7024498e+01 - -6.2461340e+02 3.4963033e+03 -7.6795308e+01 - -6.9317389e+02 3.4833428e+03 -7.6528909e+01 - -7.6147014e+02 3.4690347e+03 -7.6221198e+01 - -8.2947644e+02 3.4533838e+03 -7.5867207e+01 - -8.9716734e+02 3.4363951e+03 -7.5460926e+01 - -9.6451769e+02 3.4180742e+03 -7.4995060e+01 - -1.0315027e+03 3.3984267e+03 -7.4460729e+01 - -1.0980980e+03 3.3774585e+03 -7.3847062e+01 - -1.1642798e+03 3.3551754e+03 -7.3140677e+01 - -1.2300251e+03 3.3315831e+03 -7.2324973e+01 - -1.2953115e+03 3.3066871e+03 -7.1379191e+01 - -1.3601182e+03 3.2804922e+03 -7.0277125e+01 - -1.4244256e+03 3.2530019e+03 -6.8985343e+01 - -1.4882165e+03 3.2242182e+03 -6.7460684e+01 - -1.5514768e+03 3.1941403e+03 -6.5646693e+01 - -1.6141964e+03 3.1627632e+03 -6.3468427e+01 - -1.6763724e+03 3.1300753e+03 -6.0824748e+01 - -1.7380112e+03 3.0960547e+03 -5.7576636e+01 - -1.7991354e+03 3.0606632e+03 -5.3529014e+01 - -1.8597926e+03 3.0238355e+03 -4.8401796e+01 - -1.9200733e+03 2.9854605e+03 -4.1782472e+01 - -1.9801427e+03 2.9453475e+03 -3.3046572e+01 - -2.0403006e+03 2.9031616e+03 -2.1221709e+01 - -2.1010988e+03 2.8582987e+03 -4.7559933e+00 - -2.1635640e+03 2.8096489e+03 1.8849532e+01 - -2.2295581e+03 2.7552082e+03 5.3445432e+01 - -2.3019034e+03 2.6919133e+03 1.0369211e+02 - -2.3816876e+03 2.6183306e+03 1.6958437e+02 - -2.4576468e+03 2.5455311e+03 2.3347018e+02 - -2.5041931e+03 2.4997017e+03 2.6889941e+02 - -2.5133287e+03 2.4902147e+03 2.7789988e+02 - -2.5016453e+03 2.5016453e+03 2.7843568e+02 - -2.4902147e+03 2.5133287e+03 2.7789988e+02 - -2.4997017e+03 2.5041931e+03 2.6889941e+02 - -2.5455311e+03 2.4576468e+03 2.3347018e+02 - -2.6183306e+03 2.3816876e+03 1.6958437e+02 - -2.6919133e+03 2.3019034e+03 1.0369211e+02 - -2.7552082e+03 2.2295581e+03 5.3445432e+01 - -2.8096489e+03 2.1635640e+03 1.8849532e+01 - -2.8582987e+03 2.1010988e+03 -4.7559933e+00 - -2.9031616e+03 2.0403006e+03 -2.1221709e+01 - -2.9453475e+03 1.9801427e+03 -3.3046572e+01 - -2.9854605e+03 1.9200733e+03 -4.1782472e+01 - -3.0238355e+03 1.8597926e+03 -4.8401796e+01 - -3.0606632e+03 1.7991354e+03 -5.3529014e+01 - -3.0960547e+03 1.7380112e+03 -5.7576636e+01 - -3.1300753e+03 1.6763724e+03 -6.0824748e+01 - -3.1627632e+03 1.6141964e+03 -6.3468427e+01 - -3.1941403e+03 1.5514768e+03 -6.5646693e+01 - -3.2242182e+03 1.4882165e+03 -6.7460684e+01 - -3.2530019e+03 1.4244256e+03 -6.8985343e+01 - -3.2804922e+03 1.3601182e+03 -7.0277125e+01 - -3.3066871e+03 1.2953115e+03 -7.1379191e+01 - -3.3315831e+03 1.2300251e+03 -7.2324973e+01 - -3.3551754e+03 1.1642798e+03 -7.3140677e+01 - -3.3774585e+03 1.0980980e+03 -7.3847062e+01 - -3.3984267e+03 1.0315027e+03 -7.4460729e+01 - -3.4180742e+03 9.6451769e+02 -7.4995060e+01 - -3.4363951e+03 8.9716734e+02 -7.5460926e+01 - -3.4533838e+03 8.2947644e+02 -7.5867207e+01 - -3.4690347e+03 7.6147014e+02 -7.6221198e+01 - -3.4833428e+03 6.9317389e+02 -7.6528909e+01 - -3.4963033e+03 6.2461340e+02 -7.6795308e+01 - -3.5079118e+03 5.5581458e+02 -7.7024498e+01 - -3.5181641e+03 4.8680352e+02 -7.7219868e+01 - -3.5270569e+03 4.1760644e+02 -7.7384197e+01 - -3.5345869e+03 3.4824972e+02 -7.7519752e+01 - -3.5407514e+03 2.7875981e+02 -7.7628349e+01 - -3.5455483e+03 2.0916326e+02 -7.7711409e+01 - -3.5489760e+03 1.3948666e+02 -7.7769999e+01 - -3.5510330e+03 6.9756681e+01 -7.7804862e+01 - -3.5517188e+03 0.0000000e+00 -7.7816434e+01 - -3.5510330e+03 -6.9756681e+01 -7.7804862e+01 - -3.5489760e+03 -1.3948666e+02 -7.7769999e+01 - -3.5455483e+03 -2.0916326e+02 -7.7711409e+01 - -3.5407514e+03 -2.7875981e+02 -7.7628349e+01 - -3.5345869e+03 -3.4824972e+02 -7.7519752e+01 - -3.5270569e+03 -4.1760644e+02 -7.7384197e+01 - -3.5181641e+03 -4.8680352e+02 -7.7219868e+01 - -3.5079118e+03 -5.5581458e+02 -7.7024498e+01 - -3.4963033e+03 -6.2461340e+02 -7.6795308e+01 - -3.4833428e+03 -6.9317389e+02 -7.6528909e+01 - -3.4690347e+03 -7.6147014e+02 -7.6221198e+01 - -3.4533838e+03 -8.2947644e+02 -7.5867207e+01 - -3.4363951e+03 -8.9716734e+02 -7.5460926e+01 - -3.4180742e+03 -9.6451769e+02 -7.4995060e+01 - -3.3984267e+03 -1.0315027e+03 -7.4460729e+01 - -3.3774585e+03 -1.0980980e+03 -7.3847062e+01 - -3.3551754e+03 -1.1642798e+03 -7.3140677e+01 - -3.3315831e+03 -1.2300251e+03 -7.2324973e+01 - -3.3066871e+03 -1.2953115e+03 -7.1379191e+01 - -3.2804922e+03 -1.3601182e+03 -7.0277125e+01 - -3.2530019e+03 -1.4244256e+03 -6.8985343e+01 - -3.2242182e+03 -1.4882165e+03 -6.7460684e+01 - -3.1941403e+03 -1.5514768e+03 -6.5646693e+01 - -3.1627632e+03 -1.6141964e+03 -6.3468427e+01 - -3.1300753e+03 -1.6763724e+03 -6.0824748e+01 - -3.0960547e+03 -1.7380112e+03 -5.7576636e+01 - -3.0606632e+03 -1.7991354e+03 -5.3529014e+01 - -3.0238355e+03 -1.8597926e+03 -4.8401796e+01 - -2.9854605e+03 -1.9200733e+03 -4.1782472e+01 - -2.9453475e+03 -1.9801427e+03 -3.3046572e+01 - -2.9031616e+03 -2.0403006e+03 -2.1221709e+01 - -2.8582987e+03 -2.1010988e+03 -4.7559933e+00 - -2.8096489e+03 -2.1635640e+03 1.8849532e+01 - -2.7552082e+03 -2.2295581e+03 5.3445432e+01 - -2.6919133e+03 -2.3019034e+03 1.0369211e+02 - -2.6183306e+03 -2.3816876e+03 1.6958437e+02 - -2.5455311e+03 -2.4576468e+03 2.3347018e+02 - -2.4997017e+03 -2.5041931e+03 2.6889941e+02 - -2.4902147e+03 -2.5133287e+03 2.7789988e+02 - -2.5016453e+03 -2.5016453e+03 2.7843568e+02 - -2.5133287e+03 -2.4902147e+03 2.7789988e+02 - -2.5041931e+03 -2.4997017e+03 2.6889941e+02 - -2.4576468e+03 -2.5455311e+03 2.3347018e+02 - -2.3816876e+03 -2.6183306e+03 1.6958437e+02 - -2.3019034e+03 -2.6919133e+03 1.0369211e+02 - -2.2295581e+03 -2.7552082e+03 5.3445432e+01 - -2.1635640e+03 -2.8096489e+03 1.8849532e+01 - -2.1010988e+03 -2.8582987e+03 -4.7559933e+00 - -2.0403006e+03 -2.9031616e+03 -2.1221709e+01 - -1.9801427e+03 -2.9453475e+03 -3.3046572e+01 - -1.9200733e+03 -2.9854605e+03 -4.1782472e+01 - -1.8597926e+03 -3.0238355e+03 -4.8401796e+01 - -1.7991354e+03 -3.0606632e+03 -5.3529014e+01 - -1.7380112e+03 -3.0960547e+03 -5.7576636e+01 - -1.6763724e+03 -3.1300753e+03 -6.0824748e+01 - -1.6141964e+03 -3.1627632e+03 -6.3468427e+01 - -1.5514768e+03 -3.1941403e+03 -6.5646693e+01 - -1.4882165e+03 -3.2242182e+03 -6.7460684e+01 - -1.4244256e+03 -3.2530019e+03 -6.8985343e+01 - -1.3601182e+03 -3.2804922e+03 -7.0277125e+01 - -1.2953115e+03 -3.3066871e+03 -7.1379191e+01 - -1.2300251e+03 -3.3315831e+03 -7.2324973e+01 - -1.1642798e+03 -3.3551754e+03 -7.3140677e+01 - -1.0980980e+03 -3.3774585e+03 -7.3847062e+01 - -1.0315027e+03 -3.3984267e+03 -7.4460729e+01 - -9.6451769e+02 -3.4180742e+03 -7.4995060e+01 - -8.9716734e+02 -3.4363951e+03 -7.5460926e+01 - -8.2947644e+02 -3.4533838e+03 -7.5867207e+01 - -7.6147014e+02 -3.4690347e+03 -7.6221198e+01 - -6.9317389e+02 -3.4833428e+03 -7.6528909e+01 - -6.2461340e+02 -3.4963033e+03 -7.6795308e+01 - -5.5581458e+02 -3.5079118e+03 -7.7024498e+01 - -4.8680352e+02 -3.5181641e+03 -7.7219868e+01 - -4.1760644e+02 -3.5270569e+03 -7.7384197e+01 - -3.4824972e+02 -3.5345869e+03 -7.7519752e+01 - -2.7875981e+02 -3.5407514e+03 -7.7628349e+01 - -2.0916326e+02 -3.5455483e+03 -7.7711409e+01 - -1.3948666e+02 -3.5489760e+03 -7.7769999e+01 - -6.9756681e+01 -3.5510330e+03 -7.7804862e+01 - 2.4067136e-09 -3.5517188e+03 -7.7816434e+01 - 6.9756681e+01 -3.5510330e+03 -7.7804862e+01 - 1.3948666e+02 -3.5489760e+03 -7.7769999e+01 - 2.0916326e+02 -3.5455483e+03 -7.7711409e+01 - 2.7875981e+02 -3.5407514e+03 -7.7628349e+01 - 3.4824972e+02 -3.5345869e+03 -7.7519752e+01 - 4.1760644e+02 -3.5270569e+03 -7.7384197e+01 - 4.8680352e+02 -3.5181641e+03 -7.7219868e+01 - 5.5581458e+02 -3.5079118e+03 -7.7024498e+01 - 6.2461340e+02 -3.4963033e+03 -7.6795308e+01 - 6.9317389e+02 -3.4833428e+03 -7.6528909e+01 - 7.6147014e+02 -3.4690347e+03 -7.6221198e+01 - 8.2947644e+02 -3.4533838e+03 -7.5867207e+01 - 8.9716734e+02 -3.4363951e+03 -7.5460926e+01 - 9.6451769e+02 -3.4180742e+03 -7.4995060e+01 - 1.0315027e+03 -3.3984267e+03 -7.4460729e+01 - 1.0980980e+03 -3.3774585e+03 -7.3847062e+01 - 1.1642798e+03 -3.3551754e+03 -7.3140677e+01 - 1.2300251e+03 -3.3315831e+03 -7.2324973e+01 - 1.2953115e+03 -3.3066871e+03 -7.1379191e+01 - 1.3601182e+03 -3.2804922e+03 -7.0277125e+01 - 1.4244256e+03 -3.2530019e+03 -6.8985343e+01 - 1.4882165e+03 -3.2242182e+03 -6.7460684e+01 - 1.5514768e+03 -3.1941403e+03 -6.5646693e+01 - 1.6141964e+03 -3.1627632e+03 -6.3468427e+01 - 1.6763724e+03 -3.1300753e+03 -6.0824748e+01 - 1.7380112e+03 -3.0960547e+03 -5.7576636e+01 - 1.7991354e+03 -3.0606632e+03 -5.3529014e+01 - 1.8597926e+03 -3.0238355e+03 -4.8401796e+01 - 1.9200733e+03 -2.9854605e+03 -4.1782472e+01 - 1.9801427e+03 -2.9453475e+03 -3.3046572e+01 - 2.0403006e+03 -2.9031616e+03 -2.1221709e+01 - 2.1010988e+03 -2.8582987e+03 -4.7559933e+00 - 2.1635640e+03 -2.8096489e+03 1.8849532e+01 - 2.2295581e+03 -2.7552082e+03 5.3445432e+01 - 2.3019034e+03 -2.6919133e+03 1.0369211e+02 - 2.3816876e+03 -2.6183306e+03 1.6958437e+02 - 2.4576468e+03 -2.5455311e+03 2.3347018e+02 - 2.5041931e+03 -2.4997017e+03 2.6889941e+02 - 2.5133287e+03 -2.4902147e+03 2.7789988e+02 - 2.5016453e+03 -2.5016453e+03 2.7843568e+02 - 2.4902147e+03 -2.5133287e+03 2.7789988e+02 - 2.4997017e+03 -2.5041931e+03 2.6889941e+02 - 2.5455311e+03 -2.4576468e+03 2.3347018e+02 - 2.6183306e+03 -2.3816876e+03 1.6958437e+02 - 2.6919133e+03 -2.3019034e+03 1.0369211e+02 - 2.7552082e+03 -2.2295581e+03 5.3445432e+01 - 2.8096489e+03 -2.1635640e+03 1.8849532e+01 - 2.8582987e+03 -2.1010988e+03 -4.7559933e+00 - 2.9031616e+03 -2.0403006e+03 -2.1221709e+01 - 2.9453475e+03 -1.9801427e+03 -3.3046572e+01 - 2.9854605e+03 -1.9200733e+03 -4.1782472e+01 - 3.0238355e+03 -1.8597926e+03 -4.8401796e+01 - 3.0606632e+03 -1.7991354e+03 -5.3529014e+01 - 3.0960547e+03 -1.7380112e+03 -5.7576636e+01 - 3.1300753e+03 -1.6763724e+03 -6.0824748e+01 - 3.1627632e+03 -1.6141964e+03 -6.3468427e+01 - 3.1941403e+03 -1.5514768e+03 -6.5646693e+01 - 3.2242182e+03 -1.4882165e+03 -6.7460684e+01 - 3.2530019e+03 -1.4244256e+03 -6.8985343e+01 - 3.2804922e+03 -1.3601182e+03 -7.0277125e+01 - 3.3066871e+03 -1.2953115e+03 -7.1379191e+01 - 3.3315831e+03 -1.2300251e+03 -7.2324973e+01 - 3.3551754e+03 -1.1642798e+03 -7.3140677e+01 - 3.3774585e+03 -1.0980980e+03 -7.3847062e+01 - 3.3984267e+03 -1.0315027e+03 -7.4460729e+01 - 3.4180742e+03 -9.6451769e+02 -7.4995060e+01 - 3.4363951e+03 -8.9716734e+02 -7.5460926e+01 - 3.4533838e+03 -8.2947644e+02 -7.5867207e+01 - 3.4690347e+03 -7.6147014e+02 -7.6221198e+01 - 3.4833428e+03 -6.9317389e+02 -7.6528909e+01 - 3.4963033e+03 -6.2461340e+02 -7.6795308e+01 - 3.5079118e+03 -5.5581458e+02 -7.7024498e+01 - 3.5181641e+03 -4.8680352e+02 -7.7219868e+01 - 3.5270569e+03 -4.1760644e+02 -7.7384197e+01 - 3.5345869e+03 -3.4824972e+02 -7.7519752e+01 - 3.5407514e+03 -2.7875981e+02 -7.7628349e+01 - 3.5455483e+03 -2.0916326e+02 -7.7711409e+01 - 3.5489760e+03 -1.3948666e+02 -7.7769999e+01 - 3.5510330e+03 -6.9756681e+01 -7.7804862e+01 - 3.5517188e+03 0.0000000e+00 -7.7816434e+01 - 3.5505443e+03 -2.4067136e-09 -6.0699432e+01 - 3.5498596e+03 6.9717685e+01 -6.0694528e+01 - 3.5478055e+03 1.3940855e+02 -6.0679754e+01 - 3.5443830e+03 2.0904580e+02 -6.0654927e+01 - 3.5395933e+03 2.7860264e+02 -6.0619732e+01 - 3.5334382e+03 3.4805234e+02 -6.0573719e+01 - 3.5259199e+03 4.1736819e+02 -6.0516290e+01 - 3.5170415e+03 4.8652356e+02 -6.0446676e+01 - 3.5068060e+03 5.5549190e+02 -6.0363924e+01 - 3.4952175e+03 6.2424672e+02 -6.0266861e+01 - 3.4822802e+03 6.9276165e+02 -6.0154060e+01 - 3.4679989e+03 7.6101046e+02 -6.0023790e+01 - 3.4523789e+03 8.2896702e+02 -5.9873962e+01 - 3.4354259e+03 8.9660538e+02 -5.9702045e+01 - 3.4171461e+03 9.6389975e+02 -5.9504971e+01 - 3.3975462e+03 1.0308246e+03 -5.9279008e+01 - 3.3766331e+03 1.0973545e+03 -5.9019588e+01 - 3.3544142e+03 1.1634644e+03 -5.8721095e+01 - 3.3308972e+03 1.2291297e+03 -5.8376565e+01 - 3.3060900e+03 1.2943259e+03 -5.7977298e+01 - 3.2800006e+03 1.3590293e+03 -5.7512323e+01 - 3.2526371e+03 1.4232167e+03 -5.6967653e+01 - 3.2240073e+03 1.4868655e+03 -5.6325248e+01 - 3.1941185e+03 1.5499547e+03 -5.5561533e+01 - 3.1629771e+03 1.6124642e+03 -5.4645235e+01 - 3.1305876e+03 1.6743767e+03 -5.3534167e+01 - 3.0969518e+03 1.7356778e+03 -5.2170338e+01 - 3.0620667e+03 1.7963582e+03 -5.0472297e+01 - 3.0259208e+03 1.8564170e+03 -4.8322793e+01 - 2.9884888e+03 1.9158667e+03 -4.5548216e+01 - 2.9497199e+03 1.9747443e+03 -4.1882963e+01 - 2.9095156e+03 2.0331318e+03 -3.6905075e+01 - 2.8676838e+03 2.0911998e+03 -2.9914449e+01 - 2.8238364e+03 2.1493047e+03 -1.9691998e+01 - 2.7771477e+03 2.2082186e+03 -4.0104625e+00 - 2.7257846e+03 2.2696730e+03 2.1303964e+01 - 2.6658636e+03 2.3373431e+03 6.3361558e+01 - 2.5931213e+03 2.4151046e+03 1.2682598e+02 - 2.5234653e+03 2.4867921e+03 1.8667840e+02 - 2.4962800e+03 2.5140075e+03 2.0752103e+02 - 2.5050287e+03 2.5050287e+03 2.0892074e+02 - 2.5140075e+03 2.4962800e+03 2.0752103e+02 - 2.4867921e+03 2.5234653e+03 1.8667840e+02 - 2.4151046e+03 2.5931213e+03 1.2682598e+02 - 2.3373431e+03 2.6658636e+03 6.3361558e+01 - 2.2696730e+03 2.7257846e+03 2.1303964e+01 - 2.2082186e+03 2.7771477e+03 -4.0104625e+00 - 2.1493047e+03 2.8238364e+03 -1.9691998e+01 - 2.0911998e+03 2.8676838e+03 -2.9914449e+01 - 2.0331318e+03 2.9095156e+03 -3.6905075e+01 - 1.9747443e+03 2.9497199e+03 -4.1882963e+01 - 1.9158667e+03 2.9884888e+03 -4.5548216e+01 - 1.8564170e+03 3.0259208e+03 -4.8322793e+01 - 1.7963582e+03 3.0620667e+03 -5.0472297e+01 - 1.7356778e+03 3.0969518e+03 -5.2170338e+01 - 1.6743767e+03 3.1305876e+03 -5.3534167e+01 - 1.6124642e+03 3.1629771e+03 -5.4645235e+01 - 1.5499547e+03 3.1941185e+03 -5.5561533e+01 - 1.4868655e+03 3.2240073e+03 -5.6325248e+01 - 1.4232167e+03 3.2526371e+03 -5.6967653e+01 - 1.3590293e+03 3.2800006e+03 -5.7512323e+01 - 1.2943259e+03 3.3060900e+03 -5.7977298e+01 - 1.2291297e+03 3.3308972e+03 -5.8376565e+01 - 1.1634644e+03 3.3544142e+03 -5.8721095e+01 - 1.0973545e+03 3.3766331e+03 -5.9019588e+01 - 1.0308246e+03 3.3975462e+03 -5.9279008e+01 - 9.6389975e+02 3.4171461e+03 -5.9504971e+01 - 8.9660538e+02 3.4354259e+03 -5.9702045e+01 - 8.2896702e+02 3.4523789e+03 -5.9873962e+01 - 7.6101046e+02 3.4679989e+03 -6.0023790e+01 - 6.9276165e+02 3.4822802e+03 -6.0154060e+01 - 6.2424672e+02 3.4952175e+03 -6.0266861e+01 - 5.5549190e+02 3.5068060e+03 -6.0363924e+01 - 4.8652356e+02 3.5170415e+03 -6.0446676e+01 - 4.1736819e+02 3.5259199e+03 -6.0516290e+01 - 3.4805234e+02 3.5334382e+03 -6.0573719e+01 - 2.7860264e+02 3.5395933e+03 -6.0619732e+01 - 2.0904580e+02 3.5443830e+03 -6.0654927e+01 - 1.3940855e+02 3.5478055e+03 -6.0679754e+01 - 6.9717685e+01 3.5498596e+03 -6.0694528e+01 - 4.8134273e-09 3.5505443e+03 -6.0699432e+01 - -6.9717685e+01 3.5498596e+03 -6.0694528e+01 - -1.3940855e+02 3.5478055e+03 -6.0679754e+01 - -2.0904580e+02 3.5443830e+03 -6.0654927e+01 - -2.7860264e+02 3.5395933e+03 -6.0619732e+01 - -3.4805234e+02 3.5334382e+03 -6.0573719e+01 - -4.1736819e+02 3.5259199e+03 -6.0516290e+01 - -4.8652356e+02 3.5170415e+03 -6.0446676e+01 - -5.5549190e+02 3.5068060e+03 -6.0363924e+01 - -6.2424672e+02 3.4952175e+03 -6.0266861e+01 - -6.9276165e+02 3.4822802e+03 -6.0154060e+01 - -7.6101046e+02 3.4679989e+03 -6.0023790e+01 - -8.2896702e+02 3.4523789e+03 -5.9873962e+01 - -8.9660538e+02 3.4354259e+03 -5.9702045e+01 - -9.6389975e+02 3.4171461e+03 -5.9504971e+01 - -1.0308246e+03 3.3975462e+03 -5.9279008e+01 - -1.0973545e+03 3.3766331e+03 -5.9019588e+01 - -1.1634644e+03 3.3544142e+03 -5.8721095e+01 - -1.2291297e+03 3.3308972e+03 -5.8376565e+01 - -1.2943259e+03 3.3060900e+03 -5.7977298e+01 - -1.3590293e+03 3.2800006e+03 -5.7512323e+01 - -1.4232167e+03 3.2526371e+03 -5.6967653e+01 - -1.4868655e+03 3.2240073e+03 -5.6325248e+01 - -1.5499547e+03 3.1941185e+03 -5.5561533e+01 - -1.6124642e+03 3.1629771e+03 -5.4645235e+01 - -1.6743767e+03 3.1305876e+03 -5.3534167e+01 - -1.7356778e+03 3.0969518e+03 -5.2170338e+01 - -1.7963582e+03 3.0620667e+03 -5.0472297e+01 - -1.8564170e+03 3.0259208e+03 -4.8322793e+01 - -1.9158667e+03 2.9884888e+03 -4.5548216e+01 - -1.9747443e+03 2.9497199e+03 -4.1882963e+01 - -2.0331318e+03 2.9095156e+03 -3.6905075e+01 - -2.0911998e+03 2.8676838e+03 -2.9914449e+01 - -2.1493047e+03 2.8238364e+03 -1.9691998e+01 - -2.2082186e+03 2.7771477e+03 -4.0104625e+00 - -2.2696730e+03 2.7257846e+03 2.1303964e+01 - -2.3373431e+03 2.6658636e+03 6.3361558e+01 - -2.4151046e+03 2.5931213e+03 1.2682598e+02 - -2.4867921e+03 2.5234653e+03 1.8667840e+02 - -2.5140075e+03 2.4962800e+03 2.0752103e+02 - -2.5050287e+03 2.5050287e+03 2.0892074e+02 - -2.4962800e+03 2.5140075e+03 2.0752103e+02 - -2.5234653e+03 2.4867921e+03 1.8667840e+02 - -2.5931213e+03 2.4151046e+03 1.2682598e+02 - -2.6658636e+03 2.3373431e+03 6.3361558e+01 - -2.7257846e+03 2.2696730e+03 2.1303964e+01 - -2.7771477e+03 2.2082186e+03 -4.0104625e+00 - -2.8238364e+03 2.1493047e+03 -1.9691998e+01 - -2.8676838e+03 2.0911998e+03 -2.9914449e+01 - -2.9095156e+03 2.0331318e+03 -3.6905075e+01 - -2.9497199e+03 1.9747443e+03 -4.1882963e+01 - -2.9884888e+03 1.9158667e+03 -4.5548216e+01 - -3.0259208e+03 1.8564170e+03 -4.8322793e+01 - -3.0620667e+03 1.7963582e+03 -5.0472297e+01 - -3.0969518e+03 1.7356778e+03 -5.2170338e+01 - -3.1305876e+03 1.6743767e+03 -5.3534167e+01 - -3.1629771e+03 1.6124642e+03 -5.4645235e+01 - -3.1941185e+03 1.5499547e+03 -5.5561533e+01 - -3.2240073e+03 1.4868655e+03 -5.6325248e+01 - -3.2526371e+03 1.4232167e+03 -5.6967653e+01 - -3.2800006e+03 1.3590293e+03 -5.7512323e+01 - -3.3060900e+03 1.2943259e+03 -5.7977298e+01 - -3.3308972e+03 1.2291297e+03 -5.8376565e+01 - -3.3544142e+03 1.1634644e+03 -5.8721095e+01 - -3.3766331e+03 1.0973545e+03 -5.9019588e+01 - -3.3975462e+03 1.0308246e+03 -5.9279008e+01 - -3.4171461e+03 9.6389975e+02 -5.9504971e+01 - -3.4354259e+03 8.9660538e+02 -5.9702045e+01 - -3.4523789e+03 8.2896702e+02 -5.9873962e+01 - -3.4679989e+03 7.6101046e+02 -6.0023790e+01 - -3.4822802e+03 6.9276165e+02 -6.0154060e+01 - -3.4952175e+03 6.2424672e+02 -6.0266861e+01 - -3.5068060e+03 5.5549190e+02 -6.0363924e+01 - -3.5170415e+03 4.8652356e+02 -6.0446676e+01 - -3.5259199e+03 4.1736819e+02 -6.0516290e+01 - -3.5334382e+03 3.4805234e+02 -6.0573719e+01 - -3.5395933e+03 2.7860264e+02 -6.0619732e+01 - -3.5443830e+03 2.0904580e+02 -6.0654927e+01 - -3.5478055e+03 1.3940855e+02 -6.0679754e+01 - -3.5498596e+03 6.9717685e+01 -6.0694528e+01 - -3.5505443e+03 7.2201409e-09 -6.0699432e+01 - -3.5498596e+03 -6.9717685e+01 -6.0694528e+01 - -3.5478055e+03 -1.3940855e+02 -6.0679754e+01 - -3.5443830e+03 -2.0904580e+02 -6.0654927e+01 - -3.5395933e+03 -2.7860264e+02 -6.0619732e+01 - -3.5334382e+03 -3.4805234e+02 -6.0573719e+01 - -3.5259199e+03 -4.1736819e+02 -6.0516290e+01 - -3.5170415e+03 -4.8652356e+02 -6.0446676e+01 - -3.5068060e+03 -5.5549190e+02 -6.0363924e+01 - -3.4952175e+03 -6.2424672e+02 -6.0266861e+01 - -3.4822802e+03 -6.9276165e+02 -6.0154060e+01 - -3.4679989e+03 -7.6101046e+02 -6.0023790e+01 - -3.4523789e+03 -8.2896702e+02 -5.9873962e+01 - -3.4354259e+03 -8.9660538e+02 -5.9702045e+01 - -3.4171461e+03 -9.6389975e+02 -5.9504971e+01 - -3.3975462e+03 -1.0308246e+03 -5.9279008e+01 - -3.3766331e+03 -1.0973545e+03 -5.9019588e+01 - -3.3544142e+03 -1.1634644e+03 -5.8721095e+01 - -3.3308972e+03 -1.2291297e+03 -5.8376565e+01 - -3.3060900e+03 -1.2943259e+03 -5.7977298e+01 - -3.2800006e+03 -1.3590293e+03 -5.7512323e+01 - -3.2526371e+03 -1.4232167e+03 -5.6967653e+01 - -3.2240073e+03 -1.4868655e+03 -5.6325248e+01 - -3.1941185e+03 -1.5499547e+03 -5.5561533e+01 - -3.1629771e+03 -1.6124642e+03 -5.4645235e+01 - -3.1305876e+03 -1.6743767e+03 -5.3534167e+01 - -3.0969518e+03 -1.7356778e+03 -5.2170338e+01 - -3.0620667e+03 -1.7963582e+03 -5.0472297e+01 - -3.0259208e+03 -1.8564170e+03 -4.8322793e+01 - -2.9884888e+03 -1.9158667e+03 -4.5548216e+01 - -2.9497199e+03 -1.9747443e+03 -4.1882963e+01 - -2.9095156e+03 -2.0331318e+03 -3.6905075e+01 - -2.8676838e+03 -2.0911998e+03 -2.9914449e+01 - -2.8238364e+03 -2.1493047e+03 -1.9691998e+01 - -2.7771477e+03 -2.2082186e+03 -4.0104625e+00 - -2.7257846e+03 -2.2696730e+03 2.1303964e+01 - -2.6658636e+03 -2.3373431e+03 6.3361558e+01 - -2.5931213e+03 -2.4151046e+03 1.2682598e+02 - -2.5234653e+03 -2.4867921e+03 1.8667840e+02 - -2.4962800e+03 -2.5140075e+03 2.0752103e+02 - -2.5050287e+03 -2.5050287e+03 2.0892074e+02 - -2.5140075e+03 -2.4962800e+03 2.0752103e+02 - -2.4867921e+03 -2.5234653e+03 1.8667840e+02 - -2.4151046e+03 -2.5931213e+03 1.2682598e+02 - -2.3373431e+03 -2.6658636e+03 6.3361558e+01 - -2.2696730e+03 -2.7257846e+03 2.1303964e+01 - -2.2082186e+03 -2.7771477e+03 -4.0104625e+00 - -2.1493047e+03 -2.8238364e+03 -1.9691998e+01 - -2.0911998e+03 -2.8676838e+03 -2.9914449e+01 - -2.0331318e+03 -2.9095156e+03 -3.6905075e+01 - -1.9747443e+03 -2.9497199e+03 -4.1882963e+01 - -1.9158667e+03 -2.9884888e+03 -4.5548216e+01 - -1.8564170e+03 -3.0259208e+03 -4.8322793e+01 - -1.7963582e+03 -3.0620667e+03 -5.0472297e+01 - -1.7356778e+03 -3.0969518e+03 -5.2170338e+01 - -1.6743767e+03 -3.1305876e+03 -5.3534167e+01 - -1.6124642e+03 -3.1629771e+03 -5.4645235e+01 - -1.5499547e+03 -3.1941185e+03 -5.5561533e+01 - -1.4868655e+03 -3.2240073e+03 -5.6325248e+01 - -1.4232167e+03 -3.2526371e+03 -5.6967653e+01 - -1.3590293e+03 -3.2800006e+03 -5.7512323e+01 - -1.2943259e+03 -3.3060900e+03 -5.7977298e+01 - -1.2291297e+03 -3.3308972e+03 -5.8376565e+01 - -1.1634644e+03 -3.3544142e+03 -5.8721095e+01 - -1.0973545e+03 -3.3766331e+03 -5.9019588e+01 - -1.0308246e+03 -3.3975462e+03 -5.9279008e+01 - -9.6389975e+02 -3.4171461e+03 -5.9504971e+01 - -8.9660538e+02 -3.4354259e+03 -5.9702045e+01 - -8.2896702e+02 -3.4523789e+03 -5.9873962e+01 - -7.6101046e+02 -3.4679989e+03 -6.0023790e+01 - -6.9276165e+02 -3.4822802e+03 -6.0154060e+01 - -6.2424672e+02 -3.4952175e+03 -6.0266861e+01 - -5.5549190e+02 -3.5068060e+03 -6.0363924e+01 - -4.8652356e+02 -3.5170415e+03 -6.0446676e+01 - -4.1736819e+02 -3.5259199e+03 -6.0516290e+01 - -3.4805234e+02 -3.5334382e+03 -6.0573719e+01 - -2.7860264e+02 -3.5395933e+03 -6.0619732e+01 - -2.0904580e+02 -3.5443830e+03 -6.0654927e+01 - -1.3940855e+02 -3.5478055e+03 -6.0679754e+01 - -6.9717685e+01 -3.5498596e+03 -6.0694528e+01 - -2.4067136e-09 -3.5505443e+03 -6.0699432e+01 - 6.9717685e+01 -3.5498596e+03 -6.0694528e+01 - 1.3940855e+02 -3.5478055e+03 -6.0679754e+01 - 2.0904580e+02 -3.5443830e+03 -6.0654927e+01 - 2.7860264e+02 -3.5395933e+03 -6.0619732e+01 - 3.4805234e+02 -3.5334382e+03 -6.0573719e+01 - 4.1736819e+02 -3.5259199e+03 -6.0516290e+01 - 4.8652356e+02 -3.5170415e+03 -6.0446676e+01 - 5.5549190e+02 -3.5068060e+03 -6.0363924e+01 - 6.2424672e+02 -3.4952175e+03 -6.0266861e+01 - 6.9276165e+02 -3.4822802e+03 -6.0154060e+01 - 7.6101046e+02 -3.4679989e+03 -6.0023790e+01 - 8.2896702e+02 -3.4523789e+03 -5.9873962e+01 - 8.9660538e+02 -3.4354259e+03 -5.9702045e+01 - 9.6389975e+02 -3.4171461e+03 -5.9504971e+01 - 1.0308246e+03 -3.3975462e+03 -5.9279008e+01 - 1.0973545e+03 -3.3766331e+03 -5.9019588e+01 - 1.1634644e+03 -3.3544142e+03 -5.8721095e+01 - 1.2291297e+03 -3.3308972e+03 -5.8376565e+01 - 1.2943259e+03 -3.3060900e+03 -5.7977298e+01 - 1.3590293e+03 -3.2800006e+03 -5.7512323e+01 - 1.4232167e+03 -3.2526371e+03 -5.6967653e+01 - 1.4868655e+03 -3.2240073e+03 -5.6325248e+01 - 1.5499547e+03 -3.1941185e+03 -5.5561533e+01 - 1.6124642e+03 -3.1629771e+03 -5.4645235e+01 - 1.6743767e+03 -3.1305876e+03 -5.3534167e+01 - 1.7356778e+03 -3.0969518e+03 -5.2170338e+01 - 1.7963582e+03 -3.0620667e+03 -5.0472297e+01 - 1.8564170e+03 -3.0259208e+03 -4.8322793e+01 - 1.9158667e+03 -2.9884888e+03 -4.5548216e+01 - 1.9747443e+03 -2.9497199e+03 -4.1882963e+01 - 2.0331318e+03 -2.9095156e+03 -3.6905075e+01 - 2.0911998e+03 -2.8676838e+03 -2.9914449e+01 - 2.1493047e+03 -2.8238364e+03 -1.9691998e+01 - 2.2082186e+03 -2.7771477e+03 -4.0104625e+00 - 2.2696730e+03 -2.7257846e+03 2.1303964e+01 - 2.3373431e+03 -2.6658636e+03 6.3361558e+01 - 2.4151046e+03 -2.5931213e+03 1.2682598e+02 - 2.4867921e+03 -2.5234653e+03 1.8667840e+02 - 2.5140075e+03 -2.4962800e+03 2.0752103e+02 - 2.5050287e+03 -2.5050287e+03 2.0892074e+02 - 2.4962800e+03 -2.5140075e+03 2.0752103e+02 - 2.5234653e+03 -2.4867921e+03 1.8667840e+02 - 2.5931213e+03 -2.4151046e+03 1.2682598e+02 - 2.6658636e+03 -2.3373431e+03 6.3361558e+01 - 2.7257846e+03 -2.2696730e+03 2.1303964e+01 - 2.7771477e+03 -2.2082186e+03 -4.0104625e+00 - 2.8238364e+03 -2.1493047e+03 -1.9691998e+01 - 2.8676838e+03 -2.0911998e+03 -2.9914449e+01 - 2.9095156e+03 -2.0331318e+03 -3.6905075e+01 - 2.9497199e+03 -1.9747443e+03 -4.1882963e+01 - 2.9884888e+03 -1.9158667e+03 -4.5548216e+01 - 3.0259208e+03 -1.8564170e+03 -4.8322793e+01 - 3.0620667e+03 -1.7963582e+03 -5.0472297e+01 - 3.0969518e+03 -1.7356778e+03 -5.2170338e+01 - 3.1305876e+03 -1.6743767e+03 -5.3534167e+01 - 3.1629771e+03 -1.6124642e+03 -5.4645235e+01 - 3.1941185e+03 -1.5499547e+03 -5.5561533e+01 - 3.2240073e+03 -1.4868655e+03 -5.6325248e+01 - 3.2526371e+03 -1.4232167e+03 -5.6967653e+01 - 3.2800006e+03 -1.3590293e+03 -5.7512323e+01 - 3.3060900e+03 -1.2943259e+03 -5.7977298e+01 - 3.3308972e+03 -1.2291297e+03 -5.8376565e+01 - 3.3544142e+03 -1.1634644e+03 -5.8721095e+01 - 3.3766331e+03 -1.0973545e+03 -5.9019588e+01 - 3.3975462e+03 -1.0308246e+03 -5.9279008e+01 - 3.4171461e+03 -9.6389975e+02 -5.9504971e+01 - 3.4354259e+03 -8.9660538e+02 -5.9702045e+01 - 3.4523789e+03 -8.2896702e+02 -5.9873962e+01 - 3.4679989e+03 -7.6101046e+02 -6.0023790e+01 - 3.4822802e+03 -6.9276165e+02 -6.0154060e+01 - 3.4952175e+03 -6.2424672e+02 -6.0266861e+01 - 3.5068060e+03 -5.5549190e+02 -6.0363924e+01 - 3.5170415e+03 -4.8652356e+02 -6.0446676e+01 - 3.5259199e+03 -4.1736819e+02 -6.0516290e+01 - 3.5334382e+03 -3.4805234e+02 -6.0573719e+01 - 3.5395933e+03 -2.7860264e+02 -6.0619732e+01 - 3.5443830e+03 -2.0904580e+02 -6.0654927e+01 - 3.5478055e+03 -1.3940855e+02 -6.0679754e+01 - 3.5498596e+03 -6.9717685e+01 -6.0694528e+01 - 3.5505443e+03 -4.8134273e-09 -6.0699432e+01 - 3.5496085e+03 0.0000000e+00 -4.1593970e+01 - 3.5489242e+03 6.9693382e+01 -4.1592512e+01 - 3.5468716e+03 1.3935991e+02 -4.1588120e+01 - 3.5434514e+03 2.0897273e+02 -4.1580739e+01 - 3.5386650e+03 2.7850503e+02 -4.1570276e+01 - 3.5325143e+03 3.4793001e+02 -4.1556599e+01 - 3.5250015e+03 4.1722092e+02 -4.1539528e+01 - 3.5161296e+03 4.8635107e+02 -4.1518837e+01 - 3.5059019e+03 5.5529383e+02 -4.1494243e+01 - 3.4943224e+03 6.2402263e+02 -4.1465399e+01 - 3.4813955e+03 6.9251102e+02 -4.1431882e+01 - 3.4671262e+03 7.6073261e+02 -4.1393180e+01 - 3.4515199e+03 8.2866115e+02 -4.1348675e+01 - 3.4345826e+03 8.9627050e+02 -4.1297617e+01 - 3.4163207e+03 9.6353465e+02 -4.1239100e+01 - 3.3967412e+03 1.0304277e+03 -4.1172021e+01 - 3.3758515e+03 1.0969241e+03 -4.1095031e+01 - 3.3536596e+03 1.1629981e+03 -4.1006471e+01 - 3.3301738e+03 1.2286246e+03 -4.0904288e+01 - 3.3054030e+03 1.2937783e+03 -4.0785918e+01 - 3.2793564e+03 1.3584345e+03 -4.0648129e+01 - 3.2520436e+03 1.4225685e+03 -4.0486806e+01 - 3.2234747e+03 1.4861561e+03 -4.0296648e+01 - 3.1936599e+03 1.5491733e+03 -4.0070733e+01 - 3.1626097e+03 1.6115969e+03 -3.9799893e+01 - 3.1303347e+03 1.6734039e+03 -3.9471777e+01 - 3.0968452e+03 1.7345725e+03 -3.9069428e+01 - 3.0621510e+03 1.7950818e+03 -3.8569068e+01 - 3.0262606e+03 1.8549129e+03 -3.7936509e+01 - 2.9891803e+03 1.9140495e+03 -3.7121172e+01 - 2.9509117e+03 1.9724806e+03 -3.6045665e+01 - 2.9114475e+03 2.0302039e+03 -3.4586740e+01 - 2.8707623e+03 2.0872350e+03 -3.2538433e+01 - 2.8287914e+03 2.1436272e+03 -2.9535649e+01 - 2.7853771e+03 2.1995233e+03 -2.4882122e+01 - 2.7401144e+03 2.2553031e+03 -1.7123798e+01 - 2.6918474e+03 2.3120709e+03 -2.8830334e+00 - 2.6368858e+03 2.3733811e+03 2.6290858e+01 - 2.5665066e+03 2.4475749e+03 8.4378352e+01 - 2.5064353e+03 2.5086140e+03 1.3442009e+02 - 2.5074463e+03 2.5074463e+03 1.3932525e+02 - 2.5086140e+03 2.5064353e+03 1.3442009e+02 - 2.4475749e+03 2.5665066e+03 8.4378352e+01 - 2.3733811e+03 2.6368858e+03 2.6290858e+01 - 2.3120709e+03 2.6918474e+03 -2.8830334e+00 - 2.2553031e+03 2.7401144e+03 -1.7123798e+01 - 2.1995233e+03 2.7853771e+03 -2.4882122e+01 - 2.1436272e+03 2.8287914e+03 -2.9535649e+01 - 2.0872350e+03 2.8707623e+03 -3.2538433e+01 - 2.0302039e+03 2.9114475e+03 -3.4586740e+01 - 1.9724806e+03 2.9509117e+03 -3.6045665e+01 - 1.9140495e+03 2.9891803e+03 -3.7121172e+01 - 1.8549129e+03 3.0262606e+03 -3.7936509e+01 - 1.7950818e+03 3.0621510e+03 -3.8569068e+01 - 1.7345725e+03 3.0968452e+03 -3.9069428e+01 - 1.6734039e+03 3.1303347e+03 -3.9471777e+01 - 1.6115969e+03 3.1626097e+03 -3.9799893e+01 - 1.5491733e+03 3.1936599e+03 -4.0070733e+01 - 1.4861561e+03 3.2234747e+03 -4.0296648e+01 - 1.4225685e+03 3.2520436e+03 -4.0486806e+01 - 1.3584345e+03 3.2793564e+03 -4.0648129e+01 - 1.2937783e+03 3.3054030e+03 -4.0785918e+01 - 1.2286246e+03 3.3301738e+03 -4.0904288e+01 - 1.1629981e+03 3.3536596e+03 -4.1006471e+01 - 1.0969241e+03 3.3758515e+03 -4.1095031e+01 - 1.0304277e+03 3.3967412e+03 -4.1172021e+01 - 9.6353465e+02 3.4163207e+03 -4.1239100e+01 - 8.9627050e+02 3.4345826e+03 -4.1297617e+01 - 8.2866115e+02 3.4515199e+03 -4.1348675e+01 - 7.6073261e+02 3.4671262e+03 -4.1393180e+01 - 6.9251102e+02 3.4813955e+03 -4.1431882e+01 - 6.2402263e+02 3.4943224e+03 -4.1465399e+01 - 5.5529383e+02 3.5059019e+03 -4.1494243e+01 - 4.8635107e+02 3.5161296e+03 -4.1518837e+01 - 4.1722092e+02 3.5250015e+03 -4.1539528e+01 - 3.4793001e+02 3.5325143e+03 -4.1556599e+01 - 2.7850503e+02 3.5386650e+03 -4.1570276e+01 - 2.0897273e+02 3.5434514e+03 -4.1580739e+01 - 1.3935991e+02 3.5468716e+03 -4.1588120e+01 - 6.9693382e+01 3.5489242e+03 -4.1592512e+01 - 0.0000000e+00 3.5496085e+03 -4.1593970e+01 - -6.9693382e+01 3.5489242e+03 -4.1592512e+01 - -1.3935991e+02 3.5468716e+03 -4.1588120e+01 - -2.0897273e+02 3.5434514e+03 -4.1580739e+01 - -2.7850503e+02 3.5386650e+03 -4.1570276e+01 - -3.4793001e+02 3.5325143e+03 -4.1556599e+01 - -4.1722092e+02 3.5250015e+03 -4.1539528e+01 - -4.8635107e+02 3.5161296e+03 -4.1518837e+01 - -5.5529383e+02 3.5059019e+03 -4.1494243e+01 - -6.2402263e+02 3.4943224e+03 -4.1465399e+01 - -6.9251102e+02 3.4813955e+03 -4.1431882e+01 - -7.6073261e+02 3.4671262e+03 -4.1393180e+01 - -8.2866115e+02 3.4515199e+03 -4.1348675e+01 - -8.9627050e+02 3.4345826e+03 -4.1297617e+01 - -9.6353465e+02 3.4163207e+03 -4.1239100e+01 - -1.0304277e+03 3.3967412e+03 -4.1172021e+01 - -1.0969241e+03 3.3758515e+03 -4.1095031e+01 - -1.1629981e+03 3.3536596e+03 -4.1006471e+01 - -1.2286246e+03 3.3301738e+03 -4.0904288e+01 - -1.2937783e+03 3.3054030e+03 -4.0785918e+01 - -1.3584345e+03 3.2793564e+03 -4.0648129e+01 - -1.4225685e+03 3.2520436e+03 -4.0486806e+01 - -1.4861561e+03 3.2234747e+03 -4.0296648e+01 - -1.5491733e+03 3.1936599e+03 -4.0070733e+01 - -1.6115969e+03 3.1626097e+03 -3.9799893e+01 - -1.6734039e+03 3.1303347e+03 -3.9471777e+01 - -1.7345725e+03 3.0968452e+03 -3.9069428e+01 - -1.7950818e+03 3.0621510e+03 -3.8569068e+01 - -1.8549129e+03 3.0262606e+03 -3.7936509e+01 - -1.9140495e+03 2.9891803e+03 -3.7121172e+01 - -1.9724806e+03 2.9509117e+03 -3.6045665e+01 - -2.0302039e+03 2.9114475e+03 -3.4586740e+01 - -2.0872350e+03 2.8707623e+03 -3.2538433e+01 - -2.1436272e+03 2.8287914e+03 -2.9535649e+01 - -2.1995233e+03 2.7853771e+03 -2.4882122e+01 - -2.2553031e+03 2.7401144e+03 -1.7123798e+01 - -2.3120709e+03 2.6918474e+03 -2.8830334e+00 - -2.3733811e+03 2.6368858e+03 2.6290858e+01 - -2.4475749e+03 2.5665066e+03 8.4378352e+01 - -2.5086140e+03 2.5064353e+03 1.3442009e+02 - -2.5074463e+03 2.5074463e+03 1.3932525e+02 - -2.5064353e+03 2.5086140e+03 1.3442009e+02 - -2.5665066e+03 2.4475749e+03 8.4378352e+01 - -2.6368858e+03 2.3733811e+03 2.6290858e+01 - -2.6918474e+03 2.3120709e+03 -2.8830334e+00 - -2.7401144e+03 2.2553031e+03 -1.7123798e+01 - -2.7853771e+03 2.1995233e+03 -2.4882122e+01 - -2.8287914e+03 2.1436272e+03 -2.9535649e+01 - -2.8707623e+03 2.0872350e+03 -3.2538433e+01 - -2.9114475e+03 2.0302039e+03 -3.4586740e+01 - -2.9509117e+03 1.9724806e+03 -3.6045665e+01 - -2.9891803e+03 1.9140495e+03 -3.7121172e+01 - -3.0262606e+03 1.8549129e+03 -3.7936509e+01 - -3.0621510e+03 1.7950818e+03 -3.8569068e+01 - -3.0968452e+03 1.7345725e+03 -3.9069428e+01 - -3.1303347e+03 1.6734039e+03 -3.9471777e+01 - -3.1626097e+03 1.6115969e+03 -3.9799893e+01 - -3.1936599e+03 1.5491733e+03 -4.0070733e+01 - -3.2234747e+03 1.4861561e+03 -4.0296648e+01 - -3.2520436e+03 1.4225685e+03 -4.0486806e+01 - -3.2793564e+03 1.3584345e+03 -4.0648129e+01 - -3.3054030e+03 1.2937783e+03 -4.0785918e+01 - -3.3301738e+03 1.2286246e+03 -4.0904288e+01 - -3.3536596e+03 1.1629981e+03 -4.1006471e+01 - -3.3758515e+03 1.0969241e+03 -4.1095031e+01 - -3.3967412e+03 1.0304277e+03 -4.1172021e+01 - -3.4163207e+03 9.6353465e+02 -4.1239100e+01 - -3.4345826e+03 8.9627050e+02 -4.1297617e+01 - -3.4515199e+03 8.2866115e+02 -4.1348675e+01 - -3.4671262e+03 7.6073261e+02 -4.1393180e+01 - -3.4813955e+03 6.9251102e+02 -4.1431882e+01 - -3.4943224e+03 6.2402263e+02 -4.1465399e+01 - -3.5059019e+03 5.5529383e+02 -4.1494243e+01 - -3.5161296e+03 4.8635107e+02 -4.1518837e+01 - -3.5250015e+03 4.1722092e+02 -4.1539528e+01 - -3.5325143e+03 3.4793001e+02 -4.1556599e+01 - -3.5386650e+03 2.7850503e+02 -4.1570276e+01 - -3.5434514e+03 2.0897273e+02 -4.1580739e+01 - -3.5468716e+03 1.3935991e+02 -4.1588120e+01 - -3.5489242e+03 6.9693382e+01 -4.1592512e+01 - -3.5496085e+03 0.0000000e+00 -4.1593970e+01 - -3.5489242e+03 -6.9693382e+01 -4.1592512e+01 - -3.5468716e+03 -1.3935991e+02 -4.1588120e+01 - -3.5434514e+03 -2.0897273e+02 -4.1580739e+01 - -3.5386650e+03 -2.7850503e+02 -4.1570276e+01 - -3.5325143e+03 -3.4793001e+02 -4.1556599e+01 - -3.5250015e+03 -4.1722092e+02 -4.1539528e+01 - -3.5161296e+03 -4.8635107e+02 -4.1518837e+01 - -3.5059019e+03 -5.5529383e+02 -4.1494243e+01 - -3.4943224e+03 -6.2402263e+02 -4.1465399e+01 - -3.4813955e+03 -6.9251102e+02 -4.1431882e+01 - -3.4671262e+03 -7.6073261e+02 -4.1393180e+01 - -3.4515199e+03 -8.2866115e+02 -4.1348675e+01 - -3.4345826e+03 -8.9627050e+02 -4.1297617e+01 - -3.4163207e+03 -9.6353465e+02 -4.1239100e+01 - -3.3967412e+03 -1.0304277e+03 -4.1172021e+01 - -3.3758515e+03 -1.0969241e+03 -4.1095031e+01 - -3.3536596e+03 -1.1629981e+03 -4.1006471e+01 - -3.3301738e+03 -1.2286246e+03 -4.0904288e+01 - -3.3054030e+03 -1.2937783e+03 -4.0785918e+01 - -3.2793564e+03 -1.3584345e+03 -4.0648129e+01 - -3.2520436e+03 -1.4225685e+03 -4.0486806e+01 - -3.2234747e+03 -1.4861561e+03 -4.0296648e+01 - -3.1936599e+03 -1.5491733e+03 -4.0070733e+01 - -3.1626097e+03 -1.6115969e+03 -3.9799893e+01 - -3.1303347e+03 -1.6734039e+03 -3.9471777e+01 - -3.0968452e+03 -1.7345725e+03 -3.9069428e+01 - -3.0621510e+03 -1.7950818e+03 -3.8569068e+01 - -3.0262606e+03 -1.8549129e+03 -3.7936509e+01 - -2.9891803e+03 -1.9140495e+03 -3.7121172e+01 - -2.9509117e+03 -1.9724806e+03 -3.6045665e+01 - -2.9114475e+03 -2.0302039e+03 -3.4586740e+01 - -2.8707623e+03 -2.0872350e+03 -3.2538433e+01 - -2.8287914e+03 -2.1436272e+03 -2.9535649e+01 - -2.7853771e+03 -2.1995233e+03 -2.4882122e+01 - -2.7401144e+03 -2.2553031e+03 -1.7123798e+01 - -2.6918474e+03 -2.3120709e+03 -2.8830334e+00 - -2.6368858e+03 -2.3733811e+03 2.6290858e+01 - -2.5665066e+03 -2.4475749e+03 8.4378352e+01 - -2.5064353e+03 -2.5086140e+03 1.3442009e+02 - -2.5074463e+03 -2.5074463e+03 1.3932525e+02 - -2.5086140e+03 -2.5064353e+03 1.3442009e+02 - -2.4475749e+03 -2.5665066e+03 8.4378352e+01 - -2.3733811e+03 -2.6368858e+03 2.6290858e+01 - -2.3120709e+03 -2.6918474e+03 -2.8830334e+00 - -2.2553031e+03 -2.7401144e+03 -1.7123798e+01 - -2.1995233e+03 -2.7853771e+03 -2.4882122e+01 - -2.1436272e+03 -2.8287914e+03 -2.9535649e+01 - -2.0872350e+03 -2.8707623e+03 -3.2538433e+01 - -2.0302039e+03 -2.9114475e+03 -3.4586740e+01 - -1.9724806e+03 -2.9509117e+03 -3.6045665e+01 - -1.9140495e+03 -2.9891803e+03 -3.7121172e+01 - -1.8549129e+03 -3.0262606e+03 -3.7936509e+01 - -1.7950818e+03 -3.0621510e+03 -3.8569068e+01 - -1.7345725e+03 -3.0968452e+03 -3.9069428e+01 - -1.6734039e+03 -3.1303347e+03 -3.9471777e+01 - -1.6115969e+03 -3.1626097e+03 -3.9799893e+01 - -1.5491733e+03 -3.1936599e+03 -4.0070733e+01 - -1.4861561e+03 -3.2234747e+03 -4.0296648e+01 - -1.4225685e+03 -3.2520436e+03 -4.0486806e+01 - -1.3584345e+03 -3.2793564e+03 -4.0648129e+01 - -1.2937783e+03 -3.3054030e+03 -4.0785918e+01 - -1.2286246e+03 -3.3301738e+03 -4.0904288e+01 - -1.1629981e+03 -3.3536596e+03 -4.1006471e+01 - -1.0969241e+03 -3.3758515e+03 -4.1095031e+01 - -1.0304277e+03 -3.3967412e+03 -4.1172021e+01 - -9.6353465e+02 -3.4163207e+03 -4.1239100e+01 - -8.9627050e+02 -3.4345826e+03 -4.1297617e+01 - -8.2866115e+02 -3.4515199e+03 -4.1348675e+01 - -7.6073261e+02 -3.4671262e+03 -4.1393180e+01 - -6.9251102e+02 -3.4813955e+03 -4.1431882e+01 - -6.2402263e+02 -3.4943224e+03 -4.1465399e+01 - -5.5529383e+02 -3.5059019e+03 -4.1494243e+01 - -4.8635107e+02 -3.5161296e+03 -4.1518837e+01 - -4.1722092e+02 -3.5250015e+03 -4.1539528e+01 - -3.4793001e+02 -3.5325143e+03 -4.1556599e+01 - -2.7850503e+02 -3.5386650e+03 -4.1570276e+01 - -2.0897273e+02 -3.5434514e+03 -4.1580739e+01 - -1.3935991e+02 -3.5468716e+03 -4.1588120e+01 - -6.9693382e+01 -3.5489242e+03 -4.1592512e+01 - 0.0000000e+00 -3.5496085e+03 -4.1593970e+01 - 6.9693382e+01 -3.5489242e+03 -4.1592512e+01 - 1.3935991e+02 -3.5468716e+03 -4.1588120e+01 - 2.0897273e+02 -3.5434514e+03 -4.1580739e+01 - 2.7850503e+02 -3.5386650e+03 -4.1570276e+01 - 3.4793001e+02 -3.5325143e+03 -4.1556599e+01 - 4.1722092e+02 -3.5250015e+03 -4.1539528e+01 - 4.8635107e+02 -3.5161296e+03 -4.1518837e+01 - 5.5529383e+02 -3.5059019e+03 -4.1494243e+01 - 6.2402263e+02 -3.4943224e+03 -4.1465399e+01 - 6.9251102e+02 -3.4813955e+03 -4.1431882e+01 - 7.6073261e+02 -3.4671262e+03 -4.1393180e+01 - 8.2866115e+02 -3.4515199e+03 -4.1348675e+01 - 8.9627050e+02 -3.4345826e+03 -4.1297617e+01 - 9.6353465e+02 -3.4163207e+03 -4.1239100e+01 - 1.0304277e+03 -3.3967412e+03 -4.1172021e+01 - 1.0969241e+03 -3.3758515e+03 -4.1095031e+01 - 1.1629981e+03 -3.3536596e+03 -4.1006471e+01 - 1.2286246e+03 -3.3301738e+03 -4.0904288e+01 - 1.2937783e+03 -3.3054030e+03 -4.0785918e+01 - 1.3584345e+03 -3.2793564e+03 -4.0648129e+01 - 1.4225685e+03 -3.2520436e+03 -4.0486806e+01 - 1.4861561e+03 -3.2234747e+03 -4.0296648e+01 - 1.5491733e+03 -3.1936599e+03 -4.0070733e+01 - 1.6115969e+03 -3.1626097e+03 -3.9799893e+01 - 1.6734039e+03 -3.1303347e+03 -3.9471777e+01 - 1.7345725e+03 -3.0968452e+03 -3.9069428e+01 - 1.7950818e+03 -3.0621510e+03 -3.8569068e+01 - 1.8549129e+03 -3.0262606e+03 -3.7936509e+01 - 1.9140495e+03 -2.9891803e+03 -3.7121172e+01 - 1.9724806e+03 -2.9509117e+03 -3.6045665e+01 - 2.0302039e+03 -2.9114475e+03 -3.4586740e+01 - 2.0872350e+03 -2.8707623e+03 -3.2538433e+01 - 2.1436272e+03 -2.8287914e+03 -2.9535649e+01 - 2.1995233e+03 -2.7853771e+03 -2.4882122e+01 - 2.2553031e+03 -2.7401144e+03 -1.7123798e+01 - 2.3120709e+03 -2.6918474e+03 -2.8830334e+00 - 2.3733811e+03 -2.6368858e+03 2.6290858e+01 - 2.4475749e+03 -2.5665066e+03 8.4378352e+01 - 2.5086140e+03 -2.5064353e+03 1.3442009e+02 - 2.5074463e+03 -2.5074463e+03 1.3932525e+02 - 2.5064353e+03 -2.5086140e+03 1.3442009e+02 - 2.5665066e+03 -2.4475749e+03 8.4378352e+01 - 2.6368858e+03 -2.3733811e+03 2.6290858e+01 - 2.6918474e+03 -2.3120709e+03 -2.8830334e+00 - 2.7401144e+03 -2.2553031e+03 -1.7123798e+01 - 2.7853771e+03 -2.1995233e+03 -2.4882122e+01 - 2.8287914e+03 -2.1436272e+03 -2.9535649e+01 - 2.8707623e+03 -2.0872350e+03 -3.2538433e+01 - 2.9114475e+03 -2.0302039e+03 -3.4586740e+01 - 2.9509117e+03 -1.9724806e+03 -3.6045665e+01 - 2.9891803e+03 -1.9140495e+03 -3.7121172e+01 - 3.0262606e+03 -1.8549129e+03 -3.7936509e+01 - 3.0621510e+03 -1.7950818e+03 -3.8569068e+01 - 3.0968452e+03 -1.7345725e+03 -3.9069428e+01 - 3.1303347e+03 -1.6734039e+03 -3.9471777e+01 - 3.1626097e+03 -1.6115969e+03 -3.9799893e+01 - 3.1936599e+03 -1.5491733e+03 -4.0070733e+01 - 3.2234747e+03 -1.4861561e+03 -4.0296648e+01 - 3.2520436e+03 -1.4225685e+03 -4.0486806e+01 - 3.2793564e+03 -1.3584345e+03 -4.0648129e+01 - 3.3054030e+03 -1.2937783e+03 -4.0785918e+01 - 3.3301738e+03 -1.2286246e+03 -4.0904288e+01 - 3.3536596e+03 -1.1629981e+03 -4.1006471e+01 - 3.3758515e+03 -1.0969241e+03 -4.1095031e+01 - 3.3967412e+03 -1.0304277e+03 -4.1172021e+01 - 3.4163207e+03 -9.6353465e+02 -4.1239100e+01 - 3.4345826e+03 -8.9627050e+02 -4.1297617e+01 - 3.4515199e+03 -8.2866115e+02 -4.1348675e+01 - 3.4671262e+03 -7.6073261e+02 -4.1393180e+01 - 3.4813955e+03 -6.9251102e+02 -4.1431882e+01 - 3.4943224e+03 -6.2402263e+02 -4.1465399e+01 - 3.5059019e+03 -5.5529383e+02 -4.1494243e+01 - 3.5161296e+03 -4.8635107e+02 -4.1518837e+01 - 3.5250015e+03 -4.1722092e+02 -4.1539528e+01 - 3.5325143e+03 -3.4793001e+02 -4.1556599e+01 - 3.5386650e+03 -2.7850503e+02 -4.1570276e+01 - 3.5434514e+03 -2.0897273e+02 -4.1580739e+01 - 3.5468716e+03 -1.3935991e+02 -4.1588120e+01 - 3.5489242e+03 -6.9693382e+01 -4.1592512e+01 - 3.5496085e+03 0.0000000e+00 -4.1593970e+01 - 3.5490075e+03 -2.4067136e-09 -2.1138307e+01 - 3.5483234e+03 6.9680212e+01 -2.1138124e+01 - 3.5462713e+03 1.3933356e+02 -2.1137574e+01 - 3.5428521e+03 2.0893320e+02 -2.1136649e+01 - 3.5380670e+03 2.7845229e+02 -2.1135339e+01 - 3.5319179e+03 3.4786403e+02 -2.1133625e+01 - 3.5244072e+03 4.1714167e+02 -2.1131487e+01 - 3.5155378e+03 4.8625850e+02 -2.1128896e+01 - 3.5053130e+03 5.5518788e+02 -2.1125816e+01 - 3.4937368e+03 6.2390323e+02 -2.1122203e+01 - 3.4808138e+03 6.9237806e+02 -2.1118006e+01 - 3.4665488e+03 7.6058597e+02 -2.1113160e+01 - 3.4509473e+03 8.2850068e+02 -2.1107588e+01 - 3.4340154e+03 8.9609601e+02 -2.1101197e+01 - 3.4157597e+03 9.6334589e+02 -2.1093872e+01 - 3.3961870e+03 1.0302244e+03 -2.1085477e+01 - 3.3753050e+03 1.0967058e+03 -2.1075843e+01 - 3.3531217e+03 1.1627644e+03 -2.1064763e+01 - 3.3296457e+03 1.2283748e+03 -2.1051982e+01 - 3.3048859e+03 1.2935117e+03 -2.1037179e+01 - 3.2788520e+03 1.3581500e+03 -2.1019953e+01 - 3.2515538e+03 1.4222648e+03 -2.0999792e+01 - 3.2230020e+03 1.4858314e+03 -2.0976036e+01 - 3.1932075e+03 1.5488254e+03 -2.0947826e+01 - 3.1621817e+03 1.6112224e+03 -2.0914023e+01 - 3.1299364e+03 1.6729986e+03 -2.0873098e+01 - 3.0964840e+03 1.7341303e+03 -2.0822952e+01 - 3.0618372e+03 1.7945940e+03 -2.0760647e+01 - 3.0260090e+03 1.8543667e+03 -2.0681966e+01 - 2.9890128e+03 1.9134258e+03 -2.0580688e+01 - 2.9508621e+03 1.9717492e+03 -2.0447315e+01 - 2.9115701e+03 2.0293157e+03 -2.0266768e+01 - 2.8711497e+03 2.0861054e+03 -2.0013925e+01 - 2.8296115e+03 2.1421010e+03 -1.9644376e+01 - 2.7869609e+03 2.1972908e+03 -1.9073447e+01 - 2.7431886e+03 2.2516783e+03 -1.8122863e+01 - 2.6982370e+03 2.3053138e+03 -1.6362277e+01 - 2.6518491e+03 2.3584424e+03 -1.2522845e+01 - 2.6025431e+03 2.4125076e+03 -1.5036780e+00 - 2.5385669e+03 2.4790251e+03 4.2137530e+01 - 2.5088972e+03 2.5088972e+03 6.9676057e+01 - 2.4790251e+03 2.5385669e+03 4.2137530e+01 - 2.4125076e+03 2.6025431e+03 -1.5036780e+00 - 2.3584424e+03 2.6518491e+03 -1.2522845e+01 - 2.3053138e+03 2.6982370e+03 -1.6362277e+01 - 2.2516783e+03 2.7431886e+03 -1.8122863e+01 - 2.1972908e+03 2.7869609e+03 -1.9073447e+01 - 2.1421010e+03 2.8296115e+03 -1.9644376e+01 - 2.0861054e+03 2.8711497e+03 -2.0013925e+01 - 2.0293157e+03 2.9115701e+03 -2.0266768e+01 - 1.9717492e+03 2.9508621e+03 -2.0447315e+01 - 1.9134258e+03 2.9890128e+03 -2.0580688e+01 - 1.8543667e+03 3.0260090e+03 -2.0681966e+01 - 1.7945940e+03 3.0618372e+03 -2.0760647e+01 - 1.7341303e+03 3.0964840e+03 -2.0822952e+01 - 1.6729986e+03 3.1299364e+03 -2.0873098e+01 - 1.6112224e+03 3.1621817e+03 -2.0914023e+01 - 1.5488254e+03 3.1932075e+03 -2.0947826e+01 - 1.4858314e+03 3.2230020e+03 -2.0976036e+01 - 1.4222648e+03 3.2515538e+03 -2.0999792e+01 - 1.3581500e+03 3.2788520e+03 -2.1019953e+01 - 1.2935117e+03 3.3048859e+03 -2.1037179e+01 - 1.2283748e+03 3.3296457e+03 -2.1051982e+01 - 1.1627644e+03 3.3531217e+03 -2.1064763e+01 - 1.0967058e+03 3.3753050e+03 -2.1075843e+01 - 1.0302244e+03 3.3961870e+03 -2.1085477e+01 - 9.6334589e+02 3.4157597e+03 -2.1093872e+01 - 8.9609601e+02 3.4340154e+03 -2.1101197e+01 - 8.2850068e+02 3.4509473e+03 -2.1107588e+01 - 7.6058597e+02 3.4665488e+03 -2.1113160e+01 - 6.9237806e+02 3.4808138e+03 -2.1118006e+01 - 6.2390323e+02 3.4937368e+03 -2.1122203e+01 - 5.5518788e+02 3.5053130e+03 -2.1125816e+01 - 4.8625850e+02 3.5155378e+03 -2.1128896e+01 - 4.1714167e+02 3.5244072e+03 -2.1131487e+01 - 3.4786403e+02 3.5319179e+03 -2.1133625e+01 - 2.7845229e+02 3.5380670e+03 -2.1135339e+01 - 2.0893320e+02 3.5428521e+03 -2.1136649e+01 - 1.3933356e+02 3.5462713e+03 -2.1137574e+01 - 6.9680212e+01 3.5483234e+03 -2.1138124e+01 - 0.0000000e+00 3.5490075e+03 -2.1138307e+01 - -6.9680212e+01 3.5483234e+03 -2.1138124e+01 - -1.3933356e+02 3.5462713e+03 -2.1137574e+01 - -2.0893320e+02 3.5428521e+03 -2.1136649e+01 - -2.7845229e+02 3.5380670e+03 -2.1135339e+01 - -3.4786403e+02 3.5319179e+03 -2.1133625e+01 - -4.1714167e+02 3.5244072e+03 -2.1131487e+01 - -4.8625850e+02 3.5155378e+03 -2.1128896e+01 - -5.5518788e+02 3.5053130e+03 -2.1125816e+01 - -6.2390323e+02 3.4937368e+03 -2.1122203e+01 - -6.9237806e+02 3.4808138e+03 -2.1118006e+01 - -7.6058597e+02 3.4665488e+03 -2.1113160e+01 - -8.2850068e+02 3.4509473e+03 -2.1107588e+01 - -8.9609601e+02 3.4340154e+03 -2.1101197e+01 - -9.6334589e+02 3.4157597e+03 -2.1093872e+01 - -1.0302244e+03 3.3961870e+03 -2.1085477e+01 - -1.0967058e+03 3.3753050e+03 -2.1075843e+01 - -1.1627644e+03 3.3531217e+03 -2.1064763e+01 - -1.2283748e+03 3.3296457e+03 -2.1051982e+01 - -1.2935117e+03 3.3048859e+03 -2.1037179e+01 - -1.3581500e+03 3.2788520e+03 -2.1019953e+01 - -1.4222648e+03 3.2515538e+03 -2.0999792e+01 - -1.4858314e+03 3.2230020e+03 -2.0976036e+01 - -1.5488254e+03 3.1932075e+03 -2.0947826e+01 - -1.6112224e+03 3.1621817e+03 -2.0914023e+01 - -1.6729986e+03 3.1299364e+03 -2.0873098e+01 - -1.7341303e+03 3.0964840e+03 -2.0822952e+01 - -1.7945940e+03 3.0618372e+03 -2.0760647e+01 - -1.8543667e+03 3.0260090e+03 -2.0681966e+01 - -1.9134258e+03 2.9890128e+03 -2.0580688e+01 - -1.9717492e+03 2.9508621e+03 -2.0447315e+01 - -2.0293157e+03 2.9115701e+03 -2.0266768e+01 - -2.0861054e+03 2.8711497e+03 -2.0013925e+01 - -2.1421010e+03 2.8296115e+03 -1.9644376e+01 - -2.1972908e+03 2.7869609e+03 -1.9073447e+01 - -2.2516783e+03 2.7431886e+03 -1.8122863e+01 - -2.3053138e+03 2.6982370e+03 -1.6362277e+01 - -2.3584424e+03 2.6518491e+03 -1.2522845e+01 - -2.4125076e+03 2.6025431e+03 -1.5036780e+00 - -2.4790251e+03 2.5385669e+03 4.2137530e+01 - -2.5088972e+03 2.5088972e+03 6.9676057e+01 - -2.5385669e+03 2.4790251e+03 4.2137530e+01 - -2.6025431e+03 2.4125076e+03 -1.5036780e+00 - -2.6518491e+03 2.3584424e+03 -1.2522845e+01 - -2.6982370e+03 2.3053138e+03 -1.6362277e+01 - -2.7431886e+03 2.2516783e+03 -1.8122863e+01 - -2.7869609e+03 2.1972908e+03 -1.9073447e+01 - -2.8296115e+03 2.1421010e+03 -1.9644376e+01 - -2.8711497e+03 2.0861054e+03 -2.0013925e+01 - -2.9115701e+03 2.0293157e+03 -2.0266768e+01 - -2.9508621e+03 1.9717492e+03 -2.0447315e+01 - -2.9890128e+03 1.9134258e+03 -2.0580688e+01 - -3.0260090e+03 1.8543667e+03 -2.0681966e+01 - -3.0618372e+03 1.7945940e+03 -2.0760647e+01 - -3.0964840e+03 1.7341303e+03 -2.0822952e+01 - -3.1299364e+03 1.6729986e+03 -2.0873098e+01 - -3.1621817e+03 1.6112224e+03 -2.0914023e+01 - -3.1932075e+03 1.5488254e+03 -2.0947826e+01 - -3.2230020e+03 1.4858314e+03 -2.0976036e+01 - -3.2515538e+03 1.4222648e+03 -2.0999792e+01 - -3.2788520e+03 1.3581500e+03 -2.1019953e+01 - -3.3048859e+03 1.2935117e+03 -2.1037179e+01 - -3.3296457e+03 1.2283748e+03 -2.1051982e+01 - -3.3531217e+03 1.1627644e+03 -2.1064763e+01 - -3.3753050e+03 1.0967058e+03 -2.1075843e+01 - -3.3961870e+03 1.0302244e+03 -2.1085477e+01 - -3.4157597e+03 9.6334589e+02 -2.1093872e+01 - -3.4340154e+03 8.9609601e+02 -2.1101197e+01 - -3.4509473e+03 8.2850068e+02 -2.1107588e+01 - -3.4665488e+03 7.6058597e+02 -2.1113160e+01 - -3.4808138e+03 6.9237806e+02 -2.1118006e+01 - -3.4937368e+03 6.2390323e+02 -2.1122203e+01 - -3.5053130e+03 5.5518788e+02 -2.1125816e+01 - -3.5155378e+03 4.8625850e+02 -2.1128896e+01 - -3.5244072e+03 4.1714167e+02 -2.1131487e+01 - -3.5319179e+03 3.4786403e+02 -2.1133625e+01 - -3.5380670e+03 2.7845229e+02 -2.1135339e+01 - -3.5428521e+03 2.0893320e+02 -2.1136649e+01 - -3.5462713e+03 1.3933356e+02 -2.1137574e+01 - -3.5483234e+03 6.9680212e+01 -2.1138124e+01 - -3.5490075e+03 2.4067136e-09 -2.1138307e+01 - -3.5483234e+03 -6.9680212e+01 -2.1138124e+01 - -3.5462713e+03 -1.3933356e+02 -2.1137574e+01 - -3.5428521e+03 -2.0893320e+02 -2.1136649e+01 - -3.5380670e+03 -2.7845229e+02 -2.1135339e+01 - -3.5319179e+03 -3.4786403e+02 -2.1133625e+01 - -3.5244072e+03 -4.1714167e+02 -2.1131487e+01 - -3.5155378e+03 -4.8625850e+02 -2.1128896e+01 - -3.5053130e+03 -5.5518788e+02 -2.1125816e+01 - -3.4937368e+03 -6.2390323e+02 -2.1122203e+01 - -3.4808138e+03 -6.9237806e+02 -2.1118006e+01 - -3.4665488e+03 -7.6058597e+02 -2.1113160e+01 - -3.4509473e+03 -8.2850068e+02 -2.1107588e+01 - -3.4340154e+03 -8.9609601e+02 -2.1101197e+01 - -3.4157597e+03 -9.6334589e+02 -2.1093872e+01 - -3.3961870e+03 -1.0302244e+03 -2.1085477e+01 - -3.3753050e+03 -1.0967058e+03 -2.1075843e+01 - -3.3531217e+03 -1.1627644e+03 -2.1064763e+01 - -3.3296457e+03 -1.2283748e+03 -2.1051982e+01 - -3.3048859e+03 -1.2935117e+03 -2.1037179e+01 - -3.2788520e+03 -1.3581500e+03 -2.1019953e+01 - -3.2515538e+03 -1.4222648e+03 -2.0999792e+01 - -3.2230020e+03 -1.4858314e+03 -2.0976036e+01 - -3.1932075e+03 -1.5488254e+03 -2.0947826e+01 - -3.1621817e+03 -1.6112224e+03 -2.0914023e+01 - -3.1299364e+03 -1.6729986e+03 -2.0873098e+01 - -3.0964840e+03 -1.7341303e+03 -2.0822952e+01 - -3.0618372e+03 -1.7945940e+03 -2.0760647e+01 - -3.0260090e+03 -1.8543667e+03 -2.0681966e+01 - -2.9890128e+03 -1.9134258e+03 -2.0580688e+01 - -2.9508621e+03 -1.9717492e+03 -2.0447315e+01 - -2.9115701e+03 -2.0293157e+03 -2.0266768e+01 - -2.8711497e+03 -2.0861054e+03 -2.0013925e+01 - -2.8296115e+03 -2.1421010e+03 -1.9644376e+01 - -2.7869609e+03 -2.1972908e+03 -1.9073447e+01 - -2.7431886e+03 -2.2516783e+03 -1.8122863e+01 - -2.6982370e+03 -2.3053138e+03 -1.6362277e+01 - -2.6518491e+03 -2.3584424e+03 -1.2522845e+01 - -2.6025431e+03 -2.4125076e+03 -1.5036780e+00 - -2.5385669e+03 -2.4790251e+03 4.2137530e+01 - -2.5088972e+03 -2.5088972e+03 6.9676057e+01 - -2.4790251e+03 -2.5385669e+03 4.2137530e+01 - -2.4125076e+03 -2.6025431e+03 -1.5036780e+00 - -2.3584424e+03 -2.6518491e+03 -1.2522845e+01 - -2.3053138e+03 -2.6982370e+03 -1.6362277e+01 - -2.2516783e+03 -2.7431886e+03 -1.8122863e+01 - -2.1972908e+03 -2.7869609e+03 -1.9073447e+01 - -2.1421010e+03 -2.8296115e+03 -1.9644376e+01 - -2.0861054e+03 -2.8711497e+03 -2.0013925e+01 - -2.0293157e+03 -2.9115701e+03 -2.0266768e+01 - -1.9717492e+03 -2.9508621e+03 -2.0447315e+01 - -1.9134258e+03 -2.9890128e+03 -2.0580688e+01 - -1.8543667e+03 -3.0260090e+03 -2.0681966e+01 - -1.7945940e+03 -3.0618372e+03 -2.0760647e+01 - -1.7341303e+03 -3.0964840e+03 -2.0822952e+01 - -1.6729986e+03 -3.1299364e+03 -2.0873098e+01 - -1.6112224e+03 -3.1621817e+03 -2.0914023e+01 - -1.5488254e+03 -3.1932075e+03 -2.0947826e+01 - -1.4858314e+03 -3.2230020e+03 -2.0976036e+01 - -1.4222648e+03 -3.2515538e+03 -2.0999792e+01 - -1.3581500e+03 -3.2788520e+03 -2.1019953e+01 - -1.2935117e+03 -3.3048859e+03 -2.1037179e+01 - -1.2283748e+03 -3.3296457e+03 -2.1051982e+01 - -1.1627644e+03 -3.3531217e+03 -2.1064763e+01 - -1.0967058e+03 -3.3753050e+03 -2.1075843e+01 - -1.0302244e+03 -3.3961870e+03 -2.1085477e+01 - -9.6334589e+02 -3.4157597e+03 -2.1093872e+01 - -8.9609601e+02 -3.4340154e+03 -2.1101197e+01 - -8.2850068e+02 -3.4509473e+03 -2.1107588e+01 - -7.6058597e+02 -3.4665488e+03 -2.1113160e+01 - -6.9237806e+02 -3.4808138e+03 -2.1118006e+01 - -6.2390323e+02 -3.4937368e+03 -2.1122203e+01 - -5.5518788e+02 -3.5053130e+03 -2.1125816e+01 - -4.8625850e+02 -3.5155378e+03 -2.1128896e+01 - -4.1714167e+02 -3.5244072e+03 -2.1131487e+01 - -3.4786403e+02 -3.5319179e+03 -2.1133625e+01 - -2.7845229e+02 -3.5380670e+03 -2.1135339e+01 - -2.0893320e+02 -3.5428521e+03 -2.1136649e+01 - -1.3933356e+02 -3.5462713e+03 -2.1137574e+01 - -6.9680212e+01 -3.5483234e+03 -2.1138124e+01 - 0.0000000e+00 -3.5490075e+03 -2.1138307e+01 - 6.9680212e+01 -3.5483234e+03 -2.1138124e+01 - 1.3933356e+02 -3.5462713e+03 -2.1137574e+01 - 2.0893320e+02 -3.5428521e+03 -2.1136649e+01 - 2.7845229e+02 -3.5380670e+03 -2.1135339e+01 - 3.4786403e+02 -3.5319179e+03 -2.1133625e+01 - 4.1714167e+02 -3.5244072e+03 -2.1131487e+01 - 4.8625850e+02 -3.5155378e+03 -2.1128896e+01 - 5.5518788e+02 -3.5053130e+03 -2.1125816e+01 - 6.2390323e+02 -3.4937368e+03 -2.1122203e+01 - 6.9237806e+02 -3.4808138e+03 -2.1118006e+01 - 7.6058597e+02 -3.4665488e+03 -2.1113160e+01 - 8.2850068e+02 -3.4509473e+03 -2.1107588e+01 - 8.9609601e+02 -3.4340154e+03 -2.1101197e+01 - 9.6334589e+02 -3.4157597e+03 -2.1093872e+01 - 1.0302244e+03 -3.3961870e+03 -2.1085477e+01 - 1.0967058e+03 -3.3753050e+03 -2.1075843e+01 - 1.1627644e+03 -3.3531217e+03 -2.1064763e+01 - 1.2283748e+03 -3.3296457e+03 -2.1051982e+01 - 1.2935117e+03 -3.3048859e+03 -2.1037179e+01 - 1.3581500e+03 -3.2788520e+03 -2.1019953e+01 - 1.4222648e+03 -3.2515538e+03 -2.0999792e+01 - 1.4858314e+03 -3.2230020e+03 -2.0976036e+01 - 1.5488254e+03 -3.1932075e+03 -2.0947826e+01 - 1.6112224e+03 -3.1621817e+03 -2.0914023e+01 - 1.6729986e+03 -3.1299364e+03 -2.0873098e+01 - 1.7341303e+03 -3.0964840e+03 -2.0822952e+01 - 1.7945940e+03 -3.0618372e+03 -2.0760647e+01 - 1.8543667e+03 -3.0260090e+03 -2.0681966e+01 - 1.9134258e+03 -2.9890128e+03 -2.0580688e+01 - 1.9717492e+03 -2.9508621e+03 -2.0447315e+01 - 2.0293157e+03 -2.9115701e+03 -2.0266768e+01 - 2.0861054e+03 -2.8711497e+03 -2.0013925e+01 - 2.1421010e+03 -2.8296115e+03 -1.9644376e+01 - 2.1972908e+03 -2.7869609e+03 -1.9073447e+01 - 2.2516783e+03 -2.7431886e+03 -1.8122863e+01 - 2.3053138e+03 -2.6982370e+03 -1.6362277e+01 - 2.3584424e+03 -2.6518491e+03 -1.2522845e+01 - 2.4125076e+03 -2.6025431e+03 -1.5036780e+00 - 2.4790251e+03 -2.5385669e+03 4.2137530e+01 - 2.5088972e+03 -2.5088972e+03 6.9676057e+01 - 2.5385669e+03 -2.4790251e+03 4.2137530e+01 - 2.6025431e+03 -2.4125076e+03 -1.5036780e+00 - 2.6518491e+03 -2.3584424e+03 -1.2522845e+01 - 2.6982370e+03 -2.3053138e+03 -1.6362277e+01 - 2.7431886e+03 -2.2516783e+03 -1.8122863e+01 - 2.7869609e+03 -2.1972908e+03 -1.9073447e+01 - 2.8296115e+03 -2.1421010e+03 -1.9644376e+01 - 2.8711497e+03 -2.0861054e+03 -2.0013925e+01 - 2.9115701e+03 -2.0293157e+03 -2.0266768e+01 - 2.9508621e+03 -1.9717492e+03 -2.0447315e+01 - 2.9890128e+03 -1.9134258e+03 -2.0580688e+01 - 3.0260090e+03 -1.8543667e+03 -2.0681966e+01 - 3.0618372e+03 -1.7945940e+03 -2.0760647e+01 - 3.0964840e+03 -1.7341303e+03 -2.0822952e+01 - 3.1299364e+03 -1.6729986e+03 -2.0873098e+01 - 3.1621817e+03 -1.6112224e+03 -2.0914023e+01 - 3.1932075e+03 -1.5488254e+03 -2.0947826e+01 - 3.2230020e+03 -1.4858314e+03 -2.0976036e+01 - 3.2515538e+03 -1.4222648e+03 -2.0999792e+01 - 3.2788520e+03 -1.3581500e+03 -2.1019953e+01 - 3.3048859e+03 -1.2935117e+03 -2.1037179e+01 - 3.3296457e+03 -1.2283748e+03 -2.1051982e+01 - 3.3531217e+03 -1.1627644e+03 -2.1064763e+01 - 3.3753050e+03 -1.0967058e+03 -2.1075843e+01 - 3.3961870e+03 -1.0302244e+03 -2.1085477e+01 - 3.4157597e+03 -9.6334589e+02 -2.1093872e+01 - 3.4340154e+03 -8.9609601e+02 -2.1101197e+01 - 3.4509473e+03 -8.2850068e+02 -2.1107588e+01 - 3.4665488e+03 -7.6058597e+02 -2.1113160e+01 - 3.4808138e+03 -6.9237806e+02 -2.1118006e+01 - 3.4937368e+03 -6.2390323e+02 -2.1122203e+01 - 3.5053130e+03 -5.5518788e+02 -2.1125816e+01 - 3.5155378e+03 -4.8625850e+02 -2.1128896e+01 - 3.5244072e+03 -4.1714167e+02 -2.1131487e+01 - 3.5319179e+03 -3.4786403e+02 -2.1133625e+01 - 3.5380670e+03 -2.7845229e+02 -2.1135339e+01 - 3.5428521e+03 -2.0893320e+02 -2.1136649e+01 - 3.5462713e+03 -1.3933356e+02 -2.1137574e+01 - 3.5483234e+03 -6.9680212e+01 -2.1138124e+01 - 3.5490075e+03 0.0000000e+00 -2.1138307e+01 - 3.5488005e+03 0.0000000e+00 0.0000000e+00 - 3.5481164e+03 6.9676057e+01 0.0000000e+00 - 3.5460645e+03 1.3932525e+02 0.0000000e+00 - 3.5426455e+03 2.0892074e+02 0.0000000e+00 - 3.5378607e+03 2.7843568e+02 0.0000000e+00 - 3.5317121e+03 3.4784327e+02 0.0000000e+00 - 3.5242018e+03 4.1711677e+02 2.4067136e-09 - 3.5153330e+03 4.8622946e+02 2.4067136e-09 - 3.5051089e+03 5.5515470e+02 2.4067136e-09 - 3.4935335e+03 6.2386592e+02 0.0000000e+00 - 3.4806113e+03 6.9233663e+02 0.0000000e+00 - 3.4663472e+03 7.6054043e+02 0.0000000e+00 - 3.4507469e+03 8.2845102e+02 0.0000000e+00 - 3.4338161e+03 8.9604223e+02 0.0000000e+00 - 3.4155616e+03 9.6328800e+02 0.0000000e+00 - 3.3959903e+03 1.0301624e+03 0.0000000e+00 - 3.3751098e+03 1.0966397e+03 7.2201409e-09 - 3.3529282e+03 1.1626941e+03 2.4067136e-09 - 3.3294539e+03 1.2283004e+03 0.0000000e+00 - 3.3046960e+03 1.2934331e+03 0.0000000e+00 - 3.2786641e+03 1.3580671e+03 -2.4067136e-09 - 3.2513683e+03 1.4221777e+03 2.4067136e-09 - 3.2228189e+03 1.4857399e+03 0.0000000e+00 - 3.1930272e+03 1.5487293e+03 0.0000000e+00 - 3.1620044e+03 1.6111217e+03 2.4067136e-09 - 3.1297626e+03 1.6728930e+03 -2.4067136e-09 - 3.0963143e+03 1.7340193e+03 -4.8134273e-09 - 3.0616722e+03 1.7944771e+03 -2.4067136e-09 - 3.0258498e+03 1.8542432e+03 -2.4067136e-09 - 2.9888609e+03 1.9132943e+03 2.4067136e-09 - 2.9507198e+03 1.9716079e+03 0.0000000e+00 - 2.9114410e+03 2.0291614e+03 2.4067136e-09 - 2.8710399e+03 2.0859326e+03 2.4067136e-09 - 2.8295319e+03 2.1418996e+03 0.0000000e+00 - 2.7869331e+03 2.1970409e+03 -2.4067136e-09 - 2.7432599e+03 2.2513352e+03 0.0000000e+00 - 2.6985291e+03 2.3047615e+03 0.0000000e+00 - 2.6527579e+03 2.3572994e+03 0.0000000e+00 - 2.6059641e+03 2.4089284e+03 0.0000000e+00 - 2.5581656e+03 2.4596288e+03 2.4067136e-09 - 2.5093809e+03 2.5093809e+03 0.0000000e+00 - 2.4596288e+03 2.5581656e+03 2.4067136e-09 - 2.4089284e+03 2.6059641e+03 0.0000000e+00 - 2.3572994e+03 2.6527579e+03 2.4067136e-09 - 2.3047615e+03 2.6985291e+03 0.0000000e+00 - 2.2513352e+03 2.7432599e+03 -2.4067136e-09 - 2.1970409e+03 2.7869331e+03 0.0000000e+00 - 2.1418996e+03 2.8295319e+03 0.0000000e+00 - 2.0859326e+03 2.8710399e+03 -2.4067136e-09 - 2.0291614e+03 2.9114410e+03 2.4067136e-09 - 1.9716079e+03 2.9507198e+03 0.0000000e+00 - 1.9132943e+03 2.9888609e+03 0.0000000e+00 - 1.8542432e+03 3.0258498e+03 -2.4067136e-09 - 1.7944771e+03 3.0616722e+03 -2.4067136e-09 - 1.7340193e+03 3.0963143e+03 -4.8134273e-09 - 1.6728930e+03 3.1297626e+03 0.0000000e+00 - 1.6111217e+03 3.1620044e+03 2.4067136e-09 - 1.5487293e+03 3.1930272e+03 0.0000000e+00 - 1.4857399e+03 3.2228189e+03 0.0000000e+00 - 1.4221777e+03 3.2513683e+03 2.4067136e-09 - 1.3580671e+03 3.2786641e+03 -2.4067136e-09 - 1.2934331e+03 3.3046960e+03 0.0000000e+00 - 1.2283004e+03 3.3294539e+03 0.0000000e+00 - 1.1626941e+03 3.3529282e+03 2.4067136e-09 - 1.0966397e+03 3.3751098e+03 7.2201409e-09 - 1.0301624e+03 3.3959903e+03 2.4067136e-09 - 9.6328800e+02 3.4155616e+03 0.0000000e+00 - 8.9604223e+02 3.4338161e+03 -4.8134273e-09 - 8.2845102e+02 3.4507469e+03 -2.4067136e-09 - 7.6054043e+02 3.4663472e+03 2.4067136e-09 - 6.9233663e+02 3.4806113e+03 0.0000000e+00 - 6.2386592e+02 3.4935335e+03 -2.4067136e-09 - 5.5515470e+02 3.5051089e+03 0.0000000e+00 - 4.8622946e+02 3.5153330e+03 0.0000000e+00 - 4.1711677e+02 3.5242018e+03 -2.4067136e-09 - 3.4784327e+02 3.5317121e+03 0.0000000e+00 - 2.7843568e+02 3.5378607e+03 2.4067136e-09 - 2.0892074e+02 3.5426455e+03 0.0000000e+00 - 1.3932525e+02 3.5460645e+03 0.0000000e+00 - 6.9676057e+01 3.5481164e+03 0.0000000e+00 - 0.0000000e+00 3.5488005e+03 0.0000000e+00 - -6.9676057e+01 3.5481164e+03 0.0000000e+00 - -1.3932525e+02 3.5460645e+03 -4.8134273e-09 - -2.0892074e+02 3.5426455e+03 0.0000000e+00 - -2.7843568e+02 3.5378607e+03 2.4067136e-09 - -3.4784327e+02 3.5317121e+03 0.0000000e+00 - -4.1711677e+02 3.5242018e+03 0.0000000e+00 - -4.8622946e+02 3.5153330e+03 -2.4067136e-09 - -5.5515470e+02 3.5051089e+03 0.0000000e+00 - -6.2386592e+02 3.4935335e+03 -2.4067136e-09 - -6.9233663e+02 3.4806113e+03 0.0000000e+00 - -7.6054043e+02 3.4663472e+03 0.0000000e+00 - -8.2845102e+02 3.4507469e+03 2.4067136e-09 - -8.9604223e+02 3.4338161e+03 0.0000000e+00 - -9.6328800e+02 3.4155616e+03 0.0000000e+00 - -1.0301624e+03 3.3959903e+03 0.0000000e+00 - -1.0966397e+03 3.3751098e+03 4.8134273e-09 - -1.1626941e+03 3.3529282e+03 2.4067136e-09 - -1.2283004e+03 3.3294539e+03 -2.4067136e-09 - -1.2934331e+03 3.3046960e+03 0.0000000e+00 - -1.3580671e+03 3.2786641e+03 0.0000000e+00 - -1.4221777e+03 3.2513683e+03 2.4067136e-09 - -1.4857399e+03 3.2228189e+03 0.0000000e+00 - -1.5487293e+03 3.1930272e+03 0.0000000e+00 - -1.6111217e+03 3.1620044e+03 2.4067136e-09 - -1.6728930e+03 3.1297626e+03 -2.4067136e-09 - -1.7340193e+03 3.0963143e+03 -4.8134273e-09 - -1.7944771e+03 3.0616722e+03 0.0000000e+00 - -1.8542432e+03 3.0258498e+03 -2.4067136e-09 - -1.9132943e+03 2.9888609e+03 0.0000000e+00 - -1.9716079e+03 2.9507198e+03 2.4067136e-09 - -2.0291614e+03 2.9114410e+03 0.0000000e+00 - -2.0859326e+03 2.8710399e+03 0.0000000e+00 - -2.1418996e+03 2.8295319e+03 0.0000000e+00 - -2.1970409e+03 2.7869331e+03 -4.8134273e-09 - -2.2513352e+03 2.7432599e+03 0.0000000e+00 - -2.3047615e+03 2.6985291e+03 0.0000000e+00 - -2.3572994e+03 2.6527579e+03 4.8134273e-09 - -2.4089284e+03 2.6059641e+03 2.4067136e-09 - -2.4596288e+03 2.5581656e+03 0.0000000e+00 - -2.5093809e+03 2.5093809e+03 0.0000000e+00 - -2.5581656e+03 2.4596288e+03 0.0000000e+00 - -2.6059641e+03 2.4089284e+03 -2.4067136e-09 - -2.6527579e+03 2.3572994e+03 -2.4067136e-09 - -2.6985291e+03 2.3047615e+03 -2.4067136e-09 - -2.7432599e+03 2.2513352e+03 0.0000000e+00 - -2.7869331e+03 2.1970409e+03 0.0000000e+00 - -2.8295319e+03 2.1418996e+03 0.0000000e+00 - -2.8710399e+03 2.0859326e+03 -2.4067136e-09 - -2.9114410e+03 2.0291614e+03 2.4067136e-09 - -2.9507198e+03 1.9716079e+03 0.0000000e+00 - -2.9888609e+03 1.9132943e+03 0.0000000e+00 - -3.0258498e+03 1.8542432e+03 -2.4067136e-09 - -3.0616722e+03 1.7944771e+03 -2.4067136e-09 - -3.0963143e+03 1.7340193e+03 -4.8134273e-09 - -3.1297626e+03 1.6728930e+03 -2.4067136e-09 - -3.1620044e+03 1.6111217e+03 2.4067136e-09 - -3.1930272e+03 1.5487293e+03 -2.4067136e-09 - -3.2228189e+03 1.4857399e+03 0.0000000e+00 - -3.2513683e+03 1.4221777e+03 2.4067136e-09 - -3.2786641e+03 1.3580671e+03 0.0000000e+00 - -3.3046960e+03 1.2934331e+03 0.0000000e+00 - -3.3294539e+03 1.2283004e+03 2.4067136e-09 - -3.3529282e+03 1.1626941e+03 2.4067136e-09 - -3.3751098e+03 1.0966397e+03 2.4067136e-09 - -3.3959903e+03 1.0301624e+03 -4.8134273e-09 - -3.4155616e+03 9.6328800e+02 0.0000000e+00 - -3.4338161e+03 8.9604223e+02 -2.4067136e-09 - -3.4507469e+03 8.2845102e+02 0.0000000e+00 - -3.4663472e+03 7.6054043e+02 -2.4067136e-09 - -3.4806113e+03 6.9233663e+02 0.0000000e+00 - -3.4935335e+03 6.2386592e+02 -2.4067136e-09 - -3.5051089e+03 5.5515470e+02 -2.4067136e-09 - -3.5153330e+03 4.8622946e+02 0.0000000e+00 - -3.5242018e+03 4.1711677e+02 2.4067136e-09 - -3.5317121e+03 3.4784327e+02 -2.4067136e-09 - -3.5378607e+03 2.7843568e+02 -2.4067136e-09 - -3.5426455e+03 2.0892074e+02 -2.4067136e-09 - -3.5460645e+03 1.3932525e+02 0.0000000e+00 - -3.5481164e+03 6.9676057e+01 -2.4067136e-09 - -3.5488005e+03 0.0000000e+00 0.0000000e+00 - -3.5481164e+03 -6.9676057e+01 0.0000000e+00 - -3.5460645e+03 -1.3932525e+02 0.0000000e+00 - -3.5426455e+03 -2.0892074e+02 0.0000000e+00 - -3.5378607e+03 -2.7843568e+02 -2.4067136e-09 - -3.5317121e+03 -3.4784327e+02 0.0000000e+00 - -3.5242018e+03 -4.1711677e+02 0.0000000e+00 - -3.5153330e+03 -4.8622946e+02 0.0000000e+00 - -3.5051089e+03 -5.5515470e+02 0.0000000e+00 - -3.4935335e+03 -6.2386592e+02 -4.8134273e-09 - -3.4806113e+03 -6.9233663e+02 0.0000000e+00 - -3.4663472e+03 -7.6054043e+02 -2.4067136e-09 - -3.4507469e+03 -8.2845102e+02 2.4067136e-09 - -3.4338161e+03 -8.9604223e+02 0.0000000e+00 - -3.4155616e+03 -9.6328800e+02 -2.4067136e-09 - -3.3959903e+03 -1.0301624e+03 0.0000000e+00 - -3.3751098e+03 -1.0966397e+03 2.4067136e-09 - -3.3529282e+03 -1.1626941e+03 2.4067136e-09 - -3.3294539e+03 -1.2283004e+03 2.4067136e-09 - -3.3046960e+03 -1.2934331e+03 -2.4067136e-09 - -3.2786641e+03 -1.3580671e+03 -2.4067136e-09 - -3.2513683e+03 -1.4221777e+03 4.8134273e-09 - -3.2228189e+03 -1.4857399e+03 0.0000000e+00 - -3.1930272e+03 -1.5487293e+03 0.0000000e+00 - -3.1620044e+03 -1.6111217e+03 2.4067136e-09 - -3.1297626e+03 -1.6728930e+03 -2.4067136e-09 - -3.0963143e+03 -1.7340193e+03 -4.8134273e-09 - -3.0616722e+03 -1.7944771e+03 0.0000000e+00 - -3.0258498e+03 -1.8542432e+03 2.4067136e-09 - -2.9888609e+03 -1.9132943e+03 2.4067136e-09 - -2.9507198e+03 -1.9716079e+03 2.4067136e-09 - -2.9114410e+03 -2.0291614e+03 0.0000000e+00 - -2.8710399e+03 -2.0859326e+03 0.0000000e+00 - -2.8295319e+03 -2.1418996e+03 0.0000000e+00 - -2.7869331e+03 -2.1970409e+03 -2.4067136e-09 - -2.7432599e+03 -2.2513352e+03 0.0000000e+00 - -2.6985291e+03 -2.3047615e+03 0.0000000e+00 - -2.6527579e+03 -2.3572994e+03 2.4067136e-09 - -2.6059641e+03 -2.4089284e+03 -2.4067136e-09 - -2.5581656e+03 -2.4596288e+03 2.4067136e-09 - -2.5093809e+03 -2.5093809e+03 0.0000000e+00 - -2.4596288e+03 -2.5581656e+03 2.4067136e-09 - -2.4089284e+03 -2.6059641e+03 -2.4067136e-09 - -2.3572994e+03 -2.6527579e+03 0.0000000e+00 - -2.3047615e+03 -2.6985291e+03 -2.4067136e-09 - -2.2513352e+03 -2.7432599e+03 2.4067136e-09 - -2.1970409e+03 -2.7869331e+03 0.0000000e+00 - -2.1418996e+03 -2.8295319e+03 0.0000000e+00 - -2.0859326e+03 -2.8710399e+03 -2.4067136e-09 - -2.0291614e+03 -2.9114410e+03 2.4067136e-09 - -1.9716079e+03 -2.9507198e+03 0.0000000e+00 - -1.9132943e+03 -2.9888609e+03 2.4067136e-09 - -1.8542432e+03 -3.0258498e+03 -2.4067136e-09 - -1.7944771e+03 -3.0616722e+03 0.0000000e+00 - -1.7340193e+03 -3.0963143e+03 -4.8134273e-09 - -1.6728930e+03 -3.1297626e+03 -2.4067136e-09 - -1.6111217e+03 -3.1620044e+03 4.8134273e-09 - -1.5487293e+03 -3.1930272e+03 0.0000000e+00 - -1.4857399e+03 -3.2228189e+03 0.0000000e+00 - -1.4221777e+03 -3.2513683e+03 4.8134273e-09 - -1.3580671e+03 -3.2786641e+03 -2.4067136e-09 - -1.2934331e+03 -3.3046960e+03 -2.4067136e-09 - -1.2283004e+03 -3.3294539e+03 0.0000000e+00 - -1.1626941e+03 -3.3529282e+03 2.4067136e-09 - -1.0966397e+03 -3.3751098e+03 4.8134273e-09 - -1.0301624e+03 -3.3959903e+03 0.0000000e+00 - -9.6328800e+02 -3.4155616e+03 2.4067136e-09 - -8.9604223e+02 -3.4338161e+03 2.4067136e-09 - -8.2845102e+02 -3.4507469e+03 2.4067136e-09 - -7.6054043e+02 -3.4663472e+03 0.0000000e+00 - -6.9233663e+02 -3.4806113e+03 0.0000000e+00 - -6.2386592e+02 -3.4935335e+03 -2.4067136e-09 - -5.5515470e+02 -3.5051089e+03 0.0000000e+00 - -4.8622946e+02 -3.5153330e+03 2.4067136e-09 - -4.1711677e+02 -3.5242018e+03 -2.4067136e-09 - -3.4784327e+02 -3.5317121e+03 0.0000000e+00 - -2.7843568e+02 -3.5378607e+03 -2.4067136e-09 - -2.0892074e+02 -3.5426455e+03 0.0000000e+00 - -1.3932525e+02 -3.5460645e+03 0.0000000e+00 - -6.9676057e+01 -3.5481164e+03 0.0000000e+00 - 0.0000000e+00 -3.5488005e+03 0.0000000e+00 - 6.9676057e+01 -3.5481164e+03 2.4067136e-09 - 1.3932525e+02 -3.5460645e+03 -4.8134273e-09 - 2.0892074e+02 -3.5426455e+03 -2.4067136e-09 - 2.7843568e+02 -3.5378607e+03 -2.4067136e-09 - 3.4784327e+02 -3.5317121e+03 0.0000000e+00 - 4.1711677e+02 -3.5242018e+03 -2.4067136e-09 - 4.8622946e+02 -3.5153330e+03 0.0000000e+00 - 5.5515470e+02 -3.5051089e+03 0.0000000e+00 - 6.2386592e+02 -3.4935335e+03 -2.4067136e-09 - 6.9233663e+02 -3.4806113e+03 0.0000000e+00 - 7.6054043e+02 -3.4663472e+03 -2.4067136e-09 - 8.2845102e+02 -3.4507469e+03 2.4067136e-09 - 8.9604223e+02 -3.4338161e+03 0.0000000e+00 - 9.6328800e+02 -3.4155616e+03 0.0000000e+00 - 1.0301624e+03 -3.3959903e+03 0.0000000e+00 - 1.0966397e+03 -3.3751098e+03 4.8134273e-09 - 1.1626941e+03 -3.3529282e+03 4.8134273e-09 - 1.2283004e+03 -3.3294539e+03 0.0000000e+00 - 1.2934331e+03 -3.3046960e+03 -2.4067136e-09 - 1.3580671e+03 -3.2786641e+03 -2.4067136e-09 - 1.4221777e+03 -3.2513683e+03 4.8134273e-09 - 1.4857399e+03 -3.2228189e+03 0.0000000e+00 - 1.5487293e+03 -3.1930272e+03 0.0000000e+00 - 1.6111217e+03 -3.1620044e+03 4.8134273e-09 - 1.6728930e+03 -3.1297626e+03 -2.4067136e-09 - 1.7340193e+03 -3.0963143e+03 -4.8134273e-09 - 1.7944771e+03 -3.0616722e+03 -2.4067136e-09 - 1.8542432e+03 -3.0258498e+03 -2.4067136e-09 - 1.9132943e+03 -2.9888609e+03 2.4067136e-09 - 1.9716079e+03 -2.9507198e+03 0.0000000e+00 - 2.0291614e+03 -2.9114410e+03 0.0000000e+00 - 2.0859326e+03 -2.8710399e+03 0.0000000e+00 - 2.1418996e+03 -2.8295319e+03 0.0000000e+00 - 2.1970409e+03 -2.7869331e+03 -2.4067136e-09 - 2.2513352e+03 -2.7432599e+03 0.0000000e+00 - 2.3047615e+03 -2.6985291e+03 0.0000000e+00 - 2.3572994e+03 -2.6527579e+03 2.4067136e-09 - 2.4089284e+03 -2.6059641e+03 2.4067136e-09 - 2.4596288e+03 -2.5581656e+03 0.0000000e+00 - 2.5093809e+03 -2.5093809e+03 0.0000000e+00 - 2.5581656e+03 -2.4596288e+03 0.0000000e+00 - 2.6059641e+03 -2.4089284e+03 -2.4067136e-09 - 2.6527579e+03 -2.3572994e+03 0.0000000e+00 - 2.6985291e+03 -2.3047615e+03 -2.4067136e-09 - 2.7432599e+03 -2.2513352e+03 -2.4067136e-09 - 2.7869331e+03 -2.1970409e+03 0.0000000e+00 - 2.8295319e+03 -2.1418996e+03 0.0000000e+00 - 2.8710399e+03 -2.0859326e+03 -2.4067136e-09 - 2.9114410e+03 -2.0291614e+03 2.4067136e-09 - 2.9507198e+03 -1.9716079e+03 0.0000000e+00 - 2.9888609e+03 -1.9132943e+03 0.0000000e+00 - 3.0258498e+03 -1.8542432e+03 -2.4067136e-09 - 3.0616722e+03 -1.7944771e+03 -2.4067136e-09 - 3.0963143e+03 -1.7340193e+03 -4.8134273e-09 - 3.1297626e+03 -1.6728930e+03 -2.4067136e-09 - 3.1620044e+03 -1.6111217e+03 4.8134273e-09 - 3.1930272e+03 -1.5487293e+03 -2.4067136e-09 - 3.2228189e+03 -1.4857399e+03 0.0000000e+00 - 3.2513683e+03 -1.4221777e+03 4.8134273e-09 - 3.2786641e+03 -1.3580671e+03 -2.4067136e-09 - 3.3046960e+03 -1.2934331e+03 -2.4067136e-09 - 3.3294539e+03 -1.2283004e+03 -2.4067136e-09 - 3.3529282e+03 -1.1626941e+03 2.4067136e-09 - 3.3751098e+03 -1.0966397e+03 0.0000000e+00 - 3.3959903e+03 -1.0301624e+03 0.0000000e+00 - 3.4155616e+03 -9.6328800e+02 0.0000000e+00 - 3.4338161e+03 -8.9604223e+02 0.0000000e+00 - 3.4507469e+03 -8.2845102e+02 0.0000000e+00 - 3.4663472e+03 -7.6054043e+02 0.0000000e+00 - 3.4806113e+03 -6.9233663e+02 0.0000000e+00 - 3.4935335e+03 -6.2386592e+02 0.0000000e+00 - 3.5051089e+03 -5.5515470e+02 0.0000000e+00 - 3.5153330e+03 -4.8622946e+02 0.0000000e+00 - 3.5242018e+03 -4.1711677e+02 2.4067136e-09 - 3.5317121e+03 -3.4784327e+02 0.0000000e+00 - 3.5378607e+03 -2.7843568e+02 0.0000000e+00 - 3.5426455e+03 -2.0892074e+02 -2.4067136e-09 - 3.5460645e+03 -1.3932525e+02 0.0000000e+00 - 3.5481164e+03 -6.9676057e+01 -2.4067136e-09 - 3.5488005e+03 0.0000000e+00 0.0000000e+00 - 3.5490075e+03 0.0000000e+00 2.1138307e+01 - 3.5483234e+03 6.9680212e+01 2.1138124e+01 - 3.5462713e+03 1.3933356e+02 2.1137574e+01 - 3.5428521e+03 2.0893320e+02 2.1136649e+01 - 3.5380670e+03 2.7845229e+02 2.1135339e+01 - 3.5319179e+03 3.4786403e+02 2.1133625e+01 - 3.5244072e+03 4.1714167e+02 2.1131487e+01 - 3.5155378e+03 4.8625850e+02 2.1128896e+01 - 3.5053130e+03 5.5518788e+02 2.1125816e+01 - 3.4937368e+03 6.2390323e+02 2.1122203e+01 - 3.4808138e+03 6.9237806e+02 2.1118006e+01 - 3.4665488e+03 7.6058597e+02 2.1113160e+01 - 3.4509473e+03 8.2850068e+02 2.1107588e+01 - 3.4340154e+03 8.9609601e+02 2.1101197e+01 - 3.4157597e+03 9.6334589e+02 2.1093872e+01 - 3.3961870e+03 1.0302244e+03 2.1085477e+01 - 3.3753050e+03 1.0967058e+03 2.1075843e+01 - 3.3531217e+03 1.1627644e+03 2.1064763e+01 - 3.3296457e+03 1.2283748e+03 2.1051982e+01 - 3.3048859e+03 1.2935117e+03 2.1037179e+01 - 3.2788520e+03 1.3581500e+03 2.1019953e+01 - 3.2515538e+03 1.4222648e+03 2.0999792e+01 - 3.2230020e+03 1.4858314e+03 2.0976036e+01 - 3.1932075e+03 1.5488254e+03 2.0947826e+01 - 3.1621817e+03 1.6112224e+03 2.0914023e+01 - 3.1299364e+03 1.6729986e+03 2.0873098e+01 - 3.0964840e+03 1.7341303e+03 2.0822952e+01 - 3.0618372e+03 1.7945940e+03 2.0760647e+01 - 3.0260090e+03 1.8543667e+03 2.0681966e+01 - 2.9890128e+03 1.9134258e+03 2.0580688e+01 - 2.9508621e+03 1.9717492e+03 2.0447315e+01 - 2.9115701e+03 2.0293157e+03 2.0266768e+01 - 2.8711497e+03 2.0861054e+03 2.0013925e+01 - 2.8296115e+03 2.1421010e+03 1.9644376e+01 - 2.7869609e+03 2.1972908e+03 1.9073447e+01 - 2.7431886e+03 2.2516783e+03 1.8122863e+01 - 2.6982370e+03 2.3053138e+03 1.6362277e+01 - 2.6518491e+03 2.3584424e+03 1.2522845e+01 - 2.6025431e+03 2.4125076e+03 1.5036780e+00 - 2.5385669e+03 2.4790251e+03 -4.2137530e+01 - 2.5088972e+03 2.5088972e+03 -6.9676057e+01 - 2.4790251e+03 2.5385669e+03 -4.2137530e+01 - 2.4125076e+03 2.6025431e+03 1.5036780e+00 - 2.3584424e+03 2.6518491e+03 1.2522845e+01 - 2.3053138e+03 2.6982370e+03 1.6362277e+01 - 2.2516783e+03 2.7431886e+03 1.8122863e+01 - 2.1972908e+03 2.7869609e+03 1.9073447e+01 - 2.1421010e+03 2.8296115e+03 1.9644376e+01 - 2.0861054e+03 2.8711497e+03 2.0013925e+01 - 2.0293157e+03 2.9115701e+03 2.0266768e+01 - 1.9717492e+03 2.9508621e+03 2.0447315e+01 - 1.9134258e+03 2.9890128e+03 2.0580688e+01 - 1.8543667e+03 3.0260090e+03 2.0681966e+01 - 1.7945940e+03 3.0618372e+03 2.0760647e+01 - 1.7341303e+03 3.0964840e+03 2.0822952e+01 - 1.6729986e+03 3.1299364e+03 2.0873098e+01 - 1.6112224e+03 3.1621817e+03 2.0914023e+01 - 1.5488254e+03 3.1932075e+03 2.0947826e+01 - 1.4858314e+03 3.2230020e+03 2.0976036e+01 - 1.4222648e+03 3.2515538e+03 2.0999792e+01 - 1.3581500e+03 3.2788520e+03 2.1019953e+01 - 1.2935117e+03 3.3048859e+03 2.1037179e+01 - 1.2283748e+03 3.3296457e+03 2.1051982e+01 - 1.1627644e+03 3.3531217e+03 2.1064763e+01 - 1.0967058e+03 3.3753050e+03 2.1075843e+01 - 1.0302244e+03 3.3961870e+03 2.1085477e+01 - 9.6334589e+02 3.4157597e+03 2.1093872e+01 - 8.9609601e+02 3.4340154e+03 2.1101197e+01 - 8.2850068e+02 3.4509473e+03 2.1107588e+01 - 7.6058597e+02 3.4665488e+03 2.1113160e+01 - 6.9237806e+02 3.4808138e+03 2.1118006e+01 - 6.2390323e+02 3.4937368e+03 2.1122203e+01 - 5.5518788e+02 3.5053130e+03 2.1125816e+01 - 4.8625850e+02 3.5155378e+03 2.1128896e+01 - 4.1714167e+02 3.5244072e+03 2.1131487e+01 - 3.4786403e+02 3.5319179e+03 2.1133625e+01 - 2.7845229e+02 3.5380670e+03 2.1135339e+01 - 2.0893320e+02 3.5428521e+03 2.1136649e+01 - 1.3933356e+02 3.5462713e+03 2.1137574e+01 - 6.9680212e+01 3.5483234e+03 2.1138124e+01 - 4.8134273e-09 3.5490075e+03 2.1138307e+01 - -6.9680212e+01 3.5483234e+03 2.1138124e+01 - -1.3933356e+02 3.5462713e+03 2.1137574e+01 - -2.0893320e+02 3.5428521e+03 2.1136649e+01 - -2.7845229e+02 3.5380670e+03 2.1135339e+01 - -3.4786403e+02 3.5319179e+03 2.1133625e+01 - -4.1714167e+02 3.5244072e+03 2.1131487e+01 - -4.8625850e+02 3.5155378e+03 2.1128896e+01 - -5.5518788e+02 3.5053130e+03 2.1125816e+01 - -6.2390323e+02 3.4937368e+03 2.1122203e+01 - -6.9237806e+02 3.4808138e+03 2.1118006e+01 - -7.6058597e+02 3.4665488e+03 2.1113160e+01 - -8.2850068e+02 3.4509473e+03 2.1107588e+01 - -8.9609601e+02 3.4340154e+03 2.1101197e+01 - -9.6334589e+02 3.4157597e+03 2.1093872e+01 - -1.0302244e+03 3.3961870e+03 2.1085477e+01 - -1.0967058e+03 3.3753050e+03 2.1075843e+01 - -1.1627644e+03 3.3531217e+03 2.1064763e+01 - -1.2283748e+03 3.3296457e+03 2.1051982e+01 - -1.2935117e+03 3.3048859e+03 2.1037179e+01 - -1.3581500e+03 3.2788520e+03 2.1019953e+01 - -1.4222648e+03 3.2515538e+03 2.0999792e+01 - -1.4858314e+03 3.2230020e+03 2.0976036e+01 - -1.5488254e+03 3.1932075e+03 2.0947826e+01 - -1.6112224e+03 3.1621817e+03 2.0914023e+01 - -1.6729986e+03 3.1299364e+03 2.0873098e+01 - -1.7341303e+03 3.0964840e+03 2.0822952e+01 - -1.7945940e+03 3.0618372e+03 2.0760647e+01 - -1.8543667e+03 3.0260090e+03 2.0681966e+01 - -1.9134258e+03 2.9890128e+03 2.0580688e+01 - -1.9717492e+03 2.9508621e+03 2.0447315e+01 - -2.0293157e+03 2.9115701e+03 2.0266768e+01 - -2.0861054e+03 2.8711497e+03 2.0013925e+01 - -2.1421010e+03 2.8296115e+03 1.9644376e+01 - -2.1972908e+03 2.7869609e+03 1.9073447e+01 - -2.2516783e+03 2.7431886e+03 1.8122863e+01 - -2.3053138e+03 2.6982370e+03 1.6362277e+01 - -2.3584424e+03 2.6518491e+03 1.2522845e+01 - -2.4125076e+03 2.6025431e+03 1.5036780e+00 - -2.4790251e+03 2.5385669e+03 -4.2137530e+01 - -2.5088972e+03 2.5088972e+03 -6.9676057e+01 - -2.5385669e+03 2.4790251e+03 -4.2137530e+01 - -2.6025431e+03 2.4125076e+03 1.5036780e+00 - -2.6518491e+03 2.3584424e+03 1.2522845e+01 - -2.6982370e+03 2.3053138e+03 1.6362277e+01 - -2.7431886e+03 2.2516783e+03 1.8122863e+01 - -2.7869609e+03 2.1972908e+03 1.9073447e+01 - -2.8296115e+03 2.1421010e+03 1.9644376e+01 - -2.8711497e+03 2.0861054e+03 2.0013925e+01 - -2.9115701e+03 2.0293157e+03 2.0266768e+01 - -2.9508621e+03 1.9717492e+03 2.0447315e+01 - -2.9890128e+03 1.9134258e+03 2.0580688e+01 - -3.0260090e+03 1.8543667e+03 2.0681966e+01 - -3.0618372e+03 1.7945940e+03 2.0760647e+01 - -3.0964840e+03 1.7341303e+03 2.0822952e+01 - -3.1299364e+03 1.6729986e+03 2.0873098e+01 - -3.1621817e+03 1.6112224e+03 2.0914023e+01 - -3.1932075e+03 1.5488254e+03 2.0947826e+01 - -3.2230020e+03 1.4858314e+03 2.0976036e+01 - -3.2515538e+03 1.4222648e+03 2.0999792e+01 - -3.2788520e+03 1.3581500e+03 2.1019953e+01 - -3.3048859e+03 1.2935117e+03 2.1037179e+01 - -3.3296457e+03 1.2283748e+03 2.1051982e+01 - -3.3531217e+03 1.1627644e+03 2.1064763e+01 - -3.3753050e+03 1.0967058e+03 2.1075843e+01 - -3.3961870e+03 1.0302244e+03 2.1085477e+01 - -3.4157597e+03 9.6334589e+02 2.1093872e+01 - -3.4340154e+03 8.9609601e+02 2.1101197e+01 - -3.4509473e+03 8.2850068e+02 2.1107588e+01 - -3.4665488e+03 7.6058597e+02 2.1113160e+01 - -3.4808138e+03 6.9237806e+02 2.1118006e+01 - -3.4937368e+03 6.2390323e+02 2.1122203e+01 - -3.5053130e+03 5.5518788e+02 2.1125816e+01 - -3.5155378e+03 4.8625850e+02 2.1128896e+01 - -3.5244072e+03 4.1714167e+02 2.1131487e+01 - -3.5319179e+03 3.4786403e+02 2.1133625e+01 - -3.5380670e+03 2.7845229e+02 2.1135339e+01 - -3.5428521e+03 2.0893320e+02 2.1136649e+01 - -3.5462713e+03 1.3933356e+02 2.1137574e+01 - -3.5483234e+03 6.9680212e+01 2.1138124e+01 - -3.5490075e+03 0.0000000e+00 2.1138307e+01 - -3.5483234e+03 -6.9680212e+01 2.1138124e+01 - -3.5462713e+03 -1.3933356e+02 2.1137574e+01 - -3.5428521e+03 -2.0893320e+02 2.1136649e+01 - -3.5380670e+03 -2.7845229e+02 2.1135339e+01 - -3.5319179e+03 -3.4786403e+02 2.1133625e+01 - -3.5244072e+03 -4.1714167e+02 2.1131487e+01 - -3.5155378e+03 -4.8625850e+02 2.1128896e+01 - -3.5053130e+03 -5.5518788e+02 2.1125816e+01 - -3.4937368e+03 -6.2390323e+02 2.1122203e+01 - -3.4808138e+03 -6.9237806e+02 2.1118006e+01 - -3.4665488e+03 -7.6058597e+02 2.1113160e+01 - -3.4509473e+03 -8.2850068e+02 2.1107588e+01 - -3.4340154e+03 -8.9609601e+02 2.1101197e+01 - -3.4157597e+03 -9.6334589e+02 2.1093872e+01 - -3.3961870e+03 -1.0302244e+03 2.1085477e+01 - -3.3753050e+03 -1.0967058e+03 2.1075843e+01 - -3.3531217e+03 -1.1627644e+03 2.1064763e+01 - -3.3296457e+03 -1.2283748e+03 2.1051982e+01 - -3.3048859e+03 -1.2935117e+03 2.1037179e+01 - -3.2788520e+03 -1.3581500e+03 2.1019953e+01 - -3.2515538e+03 -1.4222648e+03 2.0999792e+01 - -3.2230020e+03 -1.4858314e+03 2.0976036e+01 - -3.1932075e+03 -1.5488254e+03 2.0947826e+01 - -3.1621817e+03 -1.6112224e+03 2.0914023e+01 - -3.1299364e+03 -1.6729986e+03 2.0873098e+01 - -3.0964840e+03 -1.7341303e+03 2.0822952e+01 - -3.0618372e+03 -1.7945940e+03 2.0760647e+01 - -3.0260090e+03 -1.8543667e+03 2.0681966e+01 - -2.9890128e+03 -1.9134258e+03 2.0580688e+01 - -2.9508621e+03 -1.9717492e+03 2.0447315e+01 - -2.9115701e+03 -2.0293157e+03 2.0266768e+01 - -2.8711497e+03 -2.0861054e+03 2.0013925e+01 - -2.8296115e+03 -2.1421010e+03 1.9644376e+01 - -2.7869609e+03 -2.1972908e+03 1.9073447e+01 - -2.7431886e+03 -2.2516783e+03 1.8122863e+01 - -2.6982370e+03 -2.3053138e+03 1.6362277e+01 - -2.6518491e+03 -2.3584424e+03 1.2522845e+01 - -2.6025431e+03 -2.4125076e+03 1.5036780e+00 - -2.5385669e+03 -2.4790251e+03 -4.2137530e+01 - -2.5088972e+03 -2.5088972e+03 -6.9676057e+01 - -2.4790251e+03 -2.5385669e+03 -4.2137530e+01 - -2.4125076e+03 -2.6025431e+03 1.5036780e+00 - -2.3584424e+03 -2.6518491e+03 1.2522845e+01 - -2.3053138e+03 -2.6982370e+03 1.6362277e+01 - -2.2516783e+03 -2.7431886e+03 1.8122863e+01 - -2.1972908e+03 -2.7869609e+03 1.9073447e+01 - -2.1421010e+03 -2.8296115e+03 1.9644376e+01 - -2.0861054e+03 -2.8711497e+03 2.0013925e+01 - -2.0293157e+03 -2.9115701e+03 2.0266768e+01 - -1.9717492e+03 -2.9508621e+03 2.0447315e+01 - -1.9134258e+03 -2.9890128e+03 2.0580688e+01 - -1.8543667e+03 -3.0260090e+03 2.0681966e+01 - -1.7945940e+03 -3.0618372e+03 2.0760647e+01 - -1.7341303e+03 -3.0964840e+03 2.0822952e+01 - -1.6729986e+03 -3.1299364e+03 2.0873098e+01 - -1.6112224e+03 -3.1621817e+03 2.0914023e+01 - -1.5488254e+03 -3.1932075e+03 2.0947826e+01 - -1.4858314e+03 -3.2230020e+03 2.0976036e+01 - -1.4222648e+03 -3.2515538e+03 2.0999792e+01 - -1.3581500e+03 -3.2788520e+03 2.1019953e+01 - -1.2935117e+03 -3.3048859e+03 2.1037179e+01 - -1.2283748e+03 -3.3296457e+03 2.1051982e+01 - -1.1627644e+03 -3.3531217e+03 2.1064763e+01 - -1.0967058e+03 -3.3753050e+03 2.1075843e+01 - -1.0302244e+03 -3.3961870e+03 2.1085477e+01 - -9.6334589e+02 -3.4157597e+03 2.1093872e+01 - -8.9609601e+02 -3.4340154e+03 2.1101197e+01 - -8.2850068e+02 -3.4509473e+03 2.1107588e+01 - -7.6058597e+02 -3.4665488e+03 2.1113160e+01 - -6.9237806e+02 -3.4808138e+03 2.1118006e+01 - -6.2390323e+02 -3.4937368e+03 2.1122203e+01 - -5.5518788e+02 -3.5053130e+03 2.1125816e+01 - -4.8625850e+02 -3.5155378e+03 2.1128896e+01 - -4.1714167e+02 -3.5244072e+03 2.1131487e+01 - -3.4786403e+02 -3.5319179e+03 2.1133625e+01 - -2.7845229e+02 -3.5380670e+03 2.1135339e+01 - -2.0893320e+02 -3.5428521e+03 2.1136649e+01 - -1.3933356e+02 -3.5462713e+03 2.1137574e+01 - -6.9680212e+01 -3.5483234e+03 2.1138124e+01 - -4.8134273e-09 -3.5490075e+03 2.1138307e+01 - 6.9680212e+01 -3.5483234e+03 2.1138124e+01 - 1.3933356e+02 -3.5462713e+03 2.1137574e+01 - 2.0893320e+02 -3.5428521e+03 2.1136649e+01 - 2.7845229e+02 -3.5380670e+03 2.1135339e+01 - 3.4786403e+02 -3.5319179e+03 2.1133625e+01 - 4.1714167e+02 -3.5244072e+03 2.1131487e+01 - 4.8625850e+02 -3.5155378e+03 2.1128896e+01 - 5.5518788e+02 -3.5053130e+03 2.1125816e+01 - 6.2390323e+02 -3.4937368e+03 2.1122203e+01 - 6.9237806e+02 -3.4808138e+03 2.1118006e+01 - 7.6058597e+02 -3.4665488e+03 2.1113160e+01 - 8.2850068e+02 -3.4509473e+03 2.1107588e+01 - 8.9609601e+02 -3.4340154e+03 2.1101197e+01 - 9.6334589e+02 -3.4157597e+03 2.1093872e+01 - 1.0302244e+03 -3.3961870e+03 2.1085477e+01 - 1.0967058e+03 -3.3753050e+03 2.1075843e+01 - 1.1627644e+03 -3.3531217e+03 2.1064763e+01 - 1.2283748e+03 -3.3296457e+03 2.1051982e+01 - 1.2935117e+03 -3.3048859e+03 2.1037179e+01 - 1.3581500e+03 -3.2788520e+03 2.1019953e+01 - 1.4222648e+03 -3.2515538e+03 2.0999792e+01 - 1.4858314e+03 -3.2230020e+03 2.0976036e+01 - 1.5488254e+03 -3.1932075e+03 2.0947826e+01 - 1.6112224e+03 -3.1621817e+03 2.0914023e+01 - 1.6729986e+03 -3.1299364e+03 2.0873098e+01 - 1.7341303e+03 -3.0964840e+03 2.0822952e+01 - 1.7945940e+03 -3.0618372e+03 2.0760647e+01 - 1.8543667e+03 -3.0260090e+03 2.0681966e+01 - 1.9134258e+03 -2.9890128e+03 2.0580688e+01 - 1.9717492e+03 -2.9508621e+03 2.0447315e+01 - 2.0293157e+03 -2.9115701e+03 2.0266768e+01 - 2.0861054e+03 -2.8711497e+03 2.0013925e+01 - 2.1421010e+03 -2.8296115e+03 1.9644376e+01 - 2.1972908e+03 -2.7869609e+03 1.9073447e+01 - 2.2516783e+03 -2.7431886e+03 1.8122863e+01 - 2.3053138e+03 -2.6982370e+03 1.6362277e+01 - 2.3584424e+03 -2.6518491e+03 1.2522845e+01 - 2.4125076e+03 -2.6025431e+03 1.5036780e+00 - 2.4790251e+03 -2.5385669e+03 -4.2137530e+01 - 2.5088972e+03 -2.5088972e+03 -6.9676057e+01 - 2.5385669e+03 -2.4790251e+03 -4.2137530e+01 - 2.6025431e+03 -2.4125076e+03 1.5036780e+00 - 2.6518491e+03 -2.3584424e+03 1.2522845e+01 - 2.6982370e+03 -2.3053138e+03 1.6362277e+01 - 2.7431886e+03 -2.2516783e+03 1.8122863e+01 - 2.7869609e+03 -2.1972908e+03 1.9073447e+01 - 2.8296115e+03 -2.1421010e+03 1.9644376e+01 - 2.8711497e+03 -2.0861054e+03 2.0013925e+01 - 2.9115701e+03 -2.0293157e+03 2.0266768e+01 - 2.9508621e+03 -1.9717492e+03 2.0447315e+01 - 2.9890128e+03 -1.9134258e+03 2.0580688e+01 - 3.0260090e+03 -1.8543667e+03 2.0681966e+01 - 3.0618372e+03 -1.7945940e+03 2.0760647e+01 - 3.0964840e+03 -1.7341303e+03 2.0822952e+01 - 3.1299364e+03 -1.6729986e+03 2.0873098e+01 - 3.1621817e+03 -1.6112224e+03 2.0914023e+01 - 3.1932075e+03 -1.5488254e+03 2.0947826e+01 - 3.2230020e+03 -1.4858314e+03 2.0976036e+01 - 3.2515538e+03 -1.4222648e+03 2.0999792e+01 - 3.2788520e+03 -1.3581500e+03 2.1019953e+01 - 3.3048859e+03 -1.2935117e+03 2.1037179e+01 - 3.3296457e+03 -1.2283748e+03 2.1051982e+01 - 3.3531217e+03 -1.1627644e+03 2.1064763e+01 - 3.3753050e+03 -1.0967058e+03 2.1075843e+01 - 3.3961870e+03 -1.0302244e+03 2.1085477e+01 - 3.4157597e+03 -9.6334589e+02 2.1093872e+01 - 3.4340154e+03 -8.9609601e+02 2.1101197e+01 - 3.4509473e+03 -8.2850068e+02 2.1107588e+01 - 3.4665488e+03 -7.6058597e+02 2.1113160e+01 - 3.4808138e+03 -6.9237806e+02 2.1118006e+01 - 3.4937368e+03 -6.2390323e+02 2.1122203e+01 - 3.5053130e+03 -5.5518788e+02 2.1125816e+01 - 3.5155378e+03 -4.8625850e+02 2.1128896e+01 - 3.5244072e+03 -4.1714167e+02 2.1131487e+01 - 3.5319179e+03 -3.4786403e+02 2.1133625e+01 - 3.5380670e+03 -2.7845229e+02 2.1135339e+01 - 3.5428521e+03 -2.0893320e+02 2.1136649e+01 - 3.5462713e+03 -1.3933356e+02 2.1137574e+01 - 3.5483234e+03 -6.9680212e+01 2.1138124e+01 - 3.5490075e+03 2.4067136e-09 2.1138307e+01 - 3.5496085e+03 -4.8134273e-09 4.1593970e+01 - 3.5489242e+03 6.9693382e+01 4.1592512e+01 - 3.5468716e+03 1.3935991e+02 4.1588120e+01 - 3.5434514e+03 2.0897273e+02 4.1580739e+01 - 3.5386650e+03 2.7850503e+02 4.1570276e+01 - 3.5325143e+03 3.4793001e+02 4.1556599e+01 - 3.5250015e+03 4.1722092e+02 4.1539528e+01 - 3.5161296e+03 4.8635107e+02 4.1518837e+01 - 3.5059019e+03 5.5529383e+02 4.1494243e+01 - 3.4943224e+03 6.2402263e+02 4.1465399e+01 - 3.4813955e+03 6.9251102e+02 4.1431882e+01 - 3.4671262e+03 7.6073261e+02 4.1393180e+01 - 3.4515199e+03 8.2866115e+02 4.1348675e+01 - 3.4345826e+03 8.9627050e+02 4.1297617e+01 - 3.4163207e+03 9.6353465e+02 4.1239100e+01 - 3.3967412e+03 1.0304277e+03 4.1172021e+01 - 3.3758515e+03 1.0969241e+03 4.1095031e+01 - 3.3536596e+03 1.1629981e+03 4.1006471e+01 - 3.3301738e+03 1.2286246e+03 4.0904288e+01 - 3.3054030e+03 1.2937783e+03 4.0785918e+01 - 3.2793564e+03 1.3584345e+03 4.0648129e+01 - 3.2520436e+03 1.4225685e+03 4.0486806e+01 - 3.2234747e+03 1.4861561e+03 4.0296648e+01 - 3.1936599e+03 1.5491733e+03 4.0070733e+01 - 3.1626097e+03 1.6115969e+03 3.9799893e+01 - 3.1303347e+03 1.6734039e+03 3.9471777e+01 - 3.0968452e+03 1.7345725e+03 3.9069428e+01 - 3.0621510e+03 1.7950818e+03 3.8569068e+01 - 3.0262606e+03 1.8549129e+03 3.7936509e+01 - 2.9891803e+03 1.9140495e+03 3.7121172e+01 - 2.9509117e+03 1.9724806e+03 3.6045665e+01 - 2.9114475e+03 2.0302039e+03 3.4586740e+01 - 2.8707623e+03 2.0872350e+03 3.2538433e+01 - 2.8287914e+03 2.1436272e+03 2.9535649e+01 - 2.7853771e+03 2.1995233e+03 2.4882122e+01 - 2.7401144e+03 2.2553031e+03 1.7123798e+01 - 2.6918474e+03 2.3120709e+03 2.8830334e+00 - 2.6368858e+03 2.3733811e+03 -2.6290858e+01 - 2.5665066e+03 2.4475749e+03 -8.4378352e+01 - 2.5064353e+03 2.5086140e+03 -1.3442009e+02 - 2.5074463e+03 2.5074463e+03 -1.3932525e+02 - 2.5086140e+03 2.5064353e+03 -1.3442009e+02 - 2.4475749e+03 2.5665066e+03 -8.4378352e+01 - 2.3733811e+03 2.6368858e+03 -2.6290858e+01 - 2.3120709e+03 2.6918474e+03 2.8830334e+00 - 2.2553031e+03 2.7401144e+03 1.7123798e+01 - 2.1995233e+03 2.7853771e+03 2.4882122e+01 - 2.1436272e+03 2.8287914e+03 2.9535649e+01 - 2.0872350e+03 2.8707623e+03 3.2538433e+01 - 2.0302039e+03 2.9114475e+03 3.4586740e+01 - 1.9724806e+03 2.9509117e+03 3.6045665e+01 - 1.9140495e+03 2.9891803e+03 3.7121172e+01 - 1.8549129e+03 3.0262606e+03 3.7936509e+01 - 1.7950818e+03 3.0621510e+03 3.8569068e+01 - 1.7345725e+03 3.0968452e+03 3.9069428e+01 - 1.6734039e+03 3.1303347e+03 3.9471777e+01 - 1.6115969e+03 3.1626097e+03 3.9799893e+01 - 1.5491733e+03 3.1936599e+03 4.0070733e+01 - 1.4861561e+03 3.2234747e+03 4.0296648e+01 - 1.4225685e+03 3.2520436e+03 4.0486806e+01 - 1.3584345e+03 3.2793564e+03 4.0648129e+01 - 1.2937783e+03 3.3054030e+03 4.0785918e+01 - 1.2286246e+03 3.3301738e+03 4.0904288e+01 - 1.1629981e+03 3.3536596e+03 4.1006471e+01 - 1.0969241e+03 3.3758515e+03 4.1095031e+01 - 1.0304277e+03 3.3967412e+03 4.1172021e+01 - 9.6353465e+02 3.4163207e+03 4.1239100e+01 - 8.9627050e+02 3.4345826e+03 4.1297617e+01 - 8.2866115e+02 3.4515199e+03 4.1348675e+01 - 7.6073261e+02 3.4671262e+03 4.1393180e+01 - 6.9251102e+02 3.4813955e+03 4.1431882e+01 - 6.2402263e+02 3.4943224e+03 4.1465399e+01 - 5.5529383e+02 3.5059019e+03 4.1494243e+01 - 4.8635107e+02 3.5161296e+03 4.1518837e+01 - 4.1722092e+02 3.5250015e+03 4.1539528e+01 - 3.4793001e+02 3.5325143e+03 4.1556599e+01 - 2.7850503e+02 3.5386650e+03 4.1570276e+01 - 2.0897273e+02 3.5434514e+03 4.1580739e+01 - 1.3935991e+02 3.5468716e+03 4.1588120e+01 - 6.9693382e+01 3.5489242e+03 4.1592512e+01 - 0.0000000e+00 3.5496085e+03 4.1593970e+01 - -6.9693382e+01 3.5489242e+03 4.1592512e+01 - -1.3935991e+02 3.5468716e+03 4.1588120e+01 - -2.0897273e+02 3.5434514e+03 4.1580739e+01 - -2.7850503e+02 3.5386650e+03 4.1570276e+01 - -3.4793001e+02 3.5325143e+03 4.1556599e+01 - -4.1722092e+02 3.5250015e+03 4.1539528e+01 - -4.8635107e+02 3.5161296e+03 4.1518837e+01 - -5.5529383e+02 3.5059019e+03 4.1494243e+01 - -6.2402263e+02 3.4943224e+03 4.1465399e+01 - -6.9251102e+02 3.4813955e+03 4.1431882e+01 - -7.6073261e+02 3.4671262e+03 4.1393180e+01 - -8.2866115e+02 3.4515199e+03 4.1348675e+01 - -8.9627050e+02 3.4345826e+03 4.1297617e+01 - -9.6353465e+02 3.4163207e+03 4.1239100e+01 - -1.0304277e+03 3.3967412e+03 4.1172021e+01 - -1.0969241e+03 3.3758515e+03 4.1095031e+01 - -1.1629981e+03 3.3536596e+03 4.1006471e+01 - -1.2286246e+03 3.3301738e+03 4.0904288e+01 - -1.2937783e+03 3.3054030e+03 4.0785918e+01 - -1.3584345e+03 3.2793564e+03 4.0648129e+01 - -1.4225685e+03 3.2520436e+03 4.0486806e+01 - -1.4861561e+03 3.2234747e+03 4.0296648e+01 - -1.5491733e+03 3.1936599e+03 4.0070733e+01 - -1.6115969e+03 3.1626097e+03 3.9799893e+01 - -1.6734039e+03 3.1303347e+03 3.9471777e+01 - -1.7345725e+03 3.0968452e+03 3.9069428e+01 - -1.7950818e+03 3.0621510e+03 3.8569068e+01 - -1.8549129e+03 3.0262606e+03 3.7936509e+01 - -1.9140495e+03 2.9891803e+03 3.7121172e+01 - -1.9724806e+03 2.9509117e+03 3.6045665e+01 - -2.0302039e+03 2.9114475e+03 3.4586740e+01 - -2.0872350e+03 2.8707623e+03 3.2538433e+01 - -2.1436272e+03 2.8287914e+03 2.9535649e+01 - -2.1995233e+03 2.7853771e+03 2.4882122e+01 - -2.2553031e+03 2.7401144e+03 1.7123798e+01 - -2.3120709e+03 2.6918474e+03 2.8830334e+00 - -2.3733811e+03 2.6368858e+03 -2.6290858e+01 - -2.4475749e+03 2.5665066e+03 -8.4378352e+01 - -2.5086140e+03 2.5064353e+03 -1.3442009e+02 - -2.5074463e+03 2.5074463e+03 -1.3932525e+02 - -2.5064353e+03 2.5086140e+03 -1.3442009e+02 - -2.5665066e+03 2.4475749e+03 -8.4378352e+01 - -2.6368858e+03 2.3733811e+03 -2.6290858e+01 - -2.6918474e+03 2.3120709e+03 2.8830334e+00 - -2.7401144e+03 2.2553031e+03 1.7123798e+01 - -2.7853771e+03 2.1995233e+03 2.4882122e+01 - -2.8287914e+03 2.1436272e+03 2.9535649e+01 - -2.8707623e+03 2.0872350e+03 3.2538433e+01 - -2.9114475e+03 2.0302039e+03 3.4586740e+01 - -2.9509117e+03 1.9724806e+03 3.6045665e+01 - -2.9891803e+03 1.9140495e+03 3.7121172e+01 - -3.0262606e+03 1.8549129e+03 3.7936509e+01 - -3.0621510e+03 1.7950818e+03 3.8569068e+01 - -3.0968452e+03 1.7345725e+03 3.9069428e+01 - -3.1303347e+03 1.6734039e+03 3.9471777e+01 - -3.1626097e+03 1.6115969e+03 3.9799893e+01 - -3.1936599e+03 1.5491733e+03 4.0070733e+01 - -3.2234747e+03 1.4861561e+03 4.0296648e+01 - -3.2520436e+03 1.4225685e+03 4.0486806e+01 - -3.2793564e+03 1.3584345e+03 4.0648129e+01 - -3.3054030e+03 1.2937783e+03 4.0785918e+01 - -3.3301738e+03 1.2286246e+03 4.0904288e+01 - -3.3536596e+03 1.1629981e+03 4.1006471e+01 - -3.3758515e+03 1.0969241e+03 4.1095031e+01 - -3.3967412e+03 1.0304277e+03 4.1172021e+01 - -3.4163207e+03 9.6353465e+02 4.1239100e+01 - -3.4345826e+03 8.9627050e+02 4.1297617e+01 - -3.4515199e+03 8.2866115e+02 4.1348675e+01 - -3.4671262e+03 7.6073261e+02 4.1393180e+01 - -3.4813955e+03 6.9251102e+02 4.1431882e+01 - -3.4943224e+03 6.2402263e+02 4.1465399e+01 - -3.5059019e+03 5.5529383e+02 4.1494243e+01 - -3.5161296e+03 4.8635107e+02 4.1518837e+01 - -3.5250015e+03 4.1722092e+02 4.1539528e+01 - -3.5325143e+03 3.4793001e+02 4.1556599e+01 - -3.5386650e+03 2.7850503e+02 4.1570276e+01 - -3.5434514e+03 2.0897273e+02 4.1580739e+01 - -3.5468716e+03 1.3935991e+02 4.1588120e+01 - -3.5489242e+03 6.9693382e+01 4.1592512e+01 - -3.5496085e+03 0.0000000e+00 4.1593970e+01 - -3.5489242e+03 -6.9693382e+01 4.1592512e+01 - -3.5468716e+03 -1.3935991e+02 4.1588120e+01 - -3.5434514e+03 -2.0897273e+02 4.1580739e+01 - -3.5386650e+03 -2.7850503e+02 4.1570276e+01 - -3.5325143e+03 -3.4793001e+02 4.1556599e+01 - -3.5250015e+03 -4.1722092e+02 4.1539528e+01 - -3.5161296e+03 -4.8635107e+02 4.1518837e+01 - -3.5059019e+03 -5.5529383e+02 4.1494243e+01 - -3.4943224e+03 -6.2402263e+02 4.1465399e+01 - -3.4813955e+03 -6.9251102e+02 4.1431882e+01 - -3.4671262e+03 -7.6073261e+02 4.1393180e+01 - -3.4515199e+03 -8.2866115e+02 4.1348675e+01 - -3.4345826e+03 -8.9627050e+02 4.1297617e+01 - -3.4163207e+03 -9.6353465e+02 4.1239100e+01 - -3.3967412e+03 -1.0304277e+03 4.1172021e+01 - -3.3758515e+03 -1.0969241e+03 4.1095031e+01 - -3.3536596e+03 -1.1629981e+03 4.1006471e+01 - -3.3301738e+03 -1.2286246e+03 4.0904288e+01 - -3.3054030e+03 -1.2937783e+03 4.0785918e+01 - -3.2793564e+03 -1.3584345e+03 4.0648129e+01 - -3.2520436e+03 -1.4225685e+03 4.0486806e+01 - -3.2234747e+03 -1.4861561e+03 4.0296648e+01 - -3.1936599e+03 -1.5491733e+03 4.0070733e+01 - -3.1626097e+03 -1.6115969e+03 3.9799893e+01 - -3.1303347e+03 -1.6734039e+03 3.9471777e+01 - -3.0968452e+03 -1.7345725e+03 3.9069428e+01 - -3.0621510e+03 -1.7950818e+03 3.8569068e+01 - -3.0262606e+03 -1.8549129e+03 3.7936509e+01 - -2.9891803e+03 -1.9140495e+03 3.7121172e+01 - -2.9509117e+03 -1.9724806e+03 3.6045665e+01 - -2.9114475e+03 -2.0302039e+03 3.4586740e+01 - -2.8707623e+03 -2.0872350e+03 3.2538433e+01 - -2.8287914e+03 -2.1436272e+03 2.9535649e+01 - -2.7853771e+03 -2.1995233e+03 2.4882122e+01 - -2.7401144e+03 -2.2553031e+03 1.7123798e+01 - -2.6918474e+03 -2.3120709e+03 2.8830334e+00 - -2.6368858e+03 -2.3733811e+03 -2.6290858e+01 - -2.5665066e+03 -2.4475749e+03 -8.4378352e+01 - -2.5064353e+03 -2.5086140e+03 -1.3442009e+02 - -2.5074463e+03 -2.5074463e+03 -1.3932525e+02 - -2.5086140e+03 -2.5064353e+03 -1.3442009e+02 - -2.4475749e+03 -2.5665066e+03 -8.4378352e+01 - -2.3733811e+03 -2.6368858e+03 -2.6290858e+01 - -2.3120709e+03 -2.6918474e+03 2.8830334e+00 - -2.2553031e+03 -2.7401144e+03 1.7123798e+01 - -2.1995233e+03 -2.7853771e+03 2.4882122e+01 - -2.1436272e+03 -2.8287914e+03 2.9535649e+01 - -2.0872350e+03 -2.8707623e+03 3.2538433e+01 - -2.0302039e+03 -2.9114475e+03 3.4586740e+01 - -1.9724806e+03 -2.9509117e+03 3.6045665e+01 - -1.9140495e+03 -2.9891803e+03 3.7121172e+01 - -1.8549129e+03 -3.0262606e+03 3.7936509e+01 - -1.7950818e+03 -3.0621510e+03 3.8569068e+01 - -1.7345725e+03 -3.0968452e+03 3.9069428e+01 - -1.6734039e+03 -3.1303347e+03 3.9471777e+01 - -1.6115969e+03 -3.1626097e+03 3.9799893e+01 - -1.5491733e+03 -3.1936599e+03 4.0070733e+01 - -1.4861561e+03 -3.2234747e+03 4.0296648e+01 - -1.4225685e+03 -3.2520436e+03 4.0486806e+01 - -1.3584345e+03 -3.2793564e+03 4.0648129e+01 - -1.2937783e+03 -3.3054030e+03 4.0785918e+01 - -1.2286246e+03 -3.3301738e+03 4.0904288e+01 - -1.1629981e+03 -3.3536596e+03 4.1006471e+01 - -1.0969241e+03 -3.3758515e+03 4.1095031e+01 - -1.0304277e+03 -3.3967412e+03 4.1172021e+01 - -9.6353465e+02 -3.4163207e+03 4.1239100e+01 - -8.9627050e+02 -3.4345826e+03 4.1297617e+01 - -8.2866115e+02 -3.4515199e+03 4.1348675e+01 - -7.6073261e+02 -3.4671262e+03 4.1393180e+01 - -6.9251102e+02 -3.4813955e+03 4.1431882e+01 - -6.2402263e+02 -3.4943224e+03 4.1465399e+01 - -5.5529383e+02 -3.5059019e+03 4.1494243e+01 - -4.8635107e+02 -3.5161296e+03 4.1518837e+01 - -4.1722092e+02 -3.5250015e+03 4.1539528e+01 - -3.4793001e+02 -3.5325143e+03 4.1556599e+01 - -2.7850503e+02 -3.5386650e+03 4.1570276e+01 - -2.0897273e+02 -3.5434514e+03 4.1580739e+01 - -1.3935991e+02 -3.5468716e+03 4.1588120e+01 - -6.9693382e+01 -3.5489242e+03 4.1592512e+01 - -2.4067136e-09 -3.5496085e+03 4.1593970e+01 - 6.9693382e+01 -3.5489242e+03 4.1592512e+01 - 1.3935991e+02 -3.5468716e+03 4.1588120e+01 - 2.0897273e+02 -3.5434514e+03 4.1580739e+01 - 2.7850503e+02 -3.5386650e+03 4.1570276e+01 - 3.4793001e+02 -3.5325143e+03 4.1556599e+01 - 4.1722092e+02 -3.5250015e+03 4.1539528e+01 - 4.8635107e+02 -3.5161296e+03 4.1518837e+01 - 5.5529383e+02 -3.5059019e+03 4.1494243e+01 - 6.2402263e+02 -3.4943224e+03 4.1465399e+01 - 6.9251102e+02 -3.4813955e+03 4.1431882e+01 - 7.6073261e+02 -3.4671262e+03 4.1393180e+01 - 8.2866115e+02 -3.4515199e+03 4.1348675e+01 - 8.9627050e+02 -3.4345826e+03 4.1297617e+01 - 9.6353465e+02 -3.4163207e+03 4.1239100e+01 - 1.0304277e+03 -3.3967412e+03 4.1172021e+01 - 1.0969241e+03 -3.3758515e+03 4.1095031e+01 - 1.1629981e+03 -3.3536596e+03 4.1006471e+01 - 1.2286246e+03 -3.3301738e+03 4.0904288e+01 - 1.2937783e+03 -3.3054030e+03 4.0785918e+01 - 1.3584345e+03 -3.2793564e+03 4.0648129e+01 - 1.4225685e+03 -3.2520436e+03 4.0486806e+01 - 1.4861561e+03 -3.2234747e+03 4.0296648e+01 - 1.5491733e+03 -3.1936599e+03 4.0070733e+01 - 1.6115969e+03 -3.1626097e+03 3.9799893e+01 - 1.6734039e+03 -3.1303347e+03 3.9471777e+01 - 1.7345725e+03 -3.0968452e+03 3.9069428e+01 - 1.7950818e+03 -3.0621510e+03 3.8569068e+01 - 1.8549129e+03 -3.0262606e+03 3.7936509e+01 - 1.9140495e+03 -2.9891803e+03 3.7121172e+01 - 1.9724806e+03 -2.9509117e+03 3.6045665e+01 - 2.0302039e+03 -2.9114475e+03 3.4586740e+01 - 2.0872350e+03 -2.8707623e+03 3.2538433e+01 - 2.1436272e+03 -2.8287914e+03 2.9535649e+01 - 2.1995233e+03 -2.7853771e+03 2.4882122e+01 - 2.2553031e+03 -2.7401144e+03 1.7123798e+01 - 2.3120709e+03 -2.6918474e+03 2.8830334e+00 - 2.3733811e+03 -2.6368858e+03 -2.6290858e+01 - 2.4475749e+03 -2.5665066e+03 -8.4378352e+01 - 2.5086140e+03 -2.5064353e+03 -1.3442009e+02 - 2.5074463e+03 -2.5074463e+03 -1.3932525e+02 - 2.5064353e+03 -2.5086140e+03 -1.3442009e+02 - 2.5665066e+03 -2.4475749e+03 -8.4378352e+01 - 2.6368858e+03 -2.3733811e+03 -2.6290858e+01 - 2.6918474e+03 -2.3120709e+03 2.8830334e+00 - 2.7401144e+03 -2.2553031e+03 1.7123798e+01 - 2.7853771e+03 -2.1995233e+03 2.4882122e+01 - 2.8287914e+03 -2.1436272e+03 2.9535649e+01 - 2.8707623e+03 -2.0872350e+03 3.2538433e+01 - 2.9114475e+03 -2.0302039e+03 3.4586740e+01 - 2.9509117e+03 -1.9724806e+03 3.6045665e+01 - 2.9891803e+03 -1.9140495e+03 3.7121172e+01 - 3.0262606e+03 -1.8549129e+03 3.7936509e+01 - 3.0621510e+03 -1.7950818e+03 3.8569068e+01 - 3.0968452e+03 -1.7345725e+03 3.9069428e+01 - 3.1303347e+03 -1.6734039e+03 3.9471777e+01 - 3.1626097e+03 -1.6115969e+03 3.9799893e+01 - 3.1936599e+03 -1.5491733e+03 4.0070733e+01 - 3.2234747e+03 -1.4861561e+03 4.0296648e+01 - 3.2520436e+03 -1.4225685e+03 4.0486806e+01 - 3.2793564e+03 -1.3584345e+03 4.0648129e+01 - 3.3054030e+03 -1.2937783e+03 4.0785918e+01 - 3.3301738e+03 -1.2286246e+03 4.0904288e+01 - 3.3536596e+03 -1.1629981e+03 4.1006471e+01 - 3.3758515e+03 -1.0969241e+03 4.1095031e+01 - 3.3967412e+03 -1.0304277e+03 4.1172021e+01 - 3.4163207e+03 -9.6353465e+02 4.1239100e+01 - 3.4345826e+03 -8.9627050e+02 4.1297617e+01 - 3.4515199e+03 -8.2866115e+02 4.1348675e+01 - 3.4671262e+03 -7.6073261e+02 4.1393180e+01 - 3.4813955e+03 -6.9251102e+02 4.1431882e+01 - 3.4943224e+03 -6.2402263e+02 4.1465399e+01 - 3.5059019e+03 -5.5529383e+02 4.1494243e+01 - 3.5161296e+03 -4.8635107e+02 4.1518837e+01 - 3.5250015e+03 -4.1722092e+02 4.1539528e+01 - 3.5325143e+03 -3.4793001e+02 4.1556599e+01 - 3.5386650e+03 -2.7850503e+02 4.1570276e+01 - 3.5434514e+03 -2.0897273e+02 4.1580739e+01 - 3.5468716e+03 -1.3935991e+02 4.1588120e+01 - 3.5489242e+03 -6.9693382e+01 4.1592512e+01 - 3.5496085e+03 2.4067136e-09 4.1593970e+01 - 3.5505443e+03 -4.8134273e-09 6.0699432e+01 - 3.5498596e+03 6.9717685e+01 6.0694528e+01 - 3.5478055e+03 1.3940855e+02 6.0679754e+01 - 3.5443830e+03 2.0904580e+02 6.0654927e+01 - 3.5395933e+03 2.7860264e+02 6.0619732e+01 - 3.5334382e+03 3.4805234e+02 6.0573719e+01 - 3.5259199e+03 4.1736819e+02 6.0516290e+01 - 3.5170415e+03 4.8652356e+02 6.0446676e+01 - 3.5068060e+03 5.5549190e+02 6.0363924e+01 - 3.4952175e+03 6.2424672e+02 6.0266861e+01 - 3.4822802e+03 6.9276165e+02 6.0154060e+01 - 3.4679989e+03 7.6101046e+02 6.0023790e+01 - 3.4523789e+03 8.2896702e+02 5.9873962e+01 - 3.4354259e+03 8.9660538e+02 5.9702045e+01 - 3.4171461e+03 9.6389975e+02 5.9504971e+01 - 3.3975462e+03 1.0308246e+03 5.9279008e+01 - 3.3766331e+03 1.0973545e+03 5.9019588e+01 - 3.3544142e+03 1.1634644e+03 5.8721095e+01 - 3.3308972e+03 1.2291297e+03 5.8376565e+01 - 3.3060900e+03 1.2943259e+03 5.7977298e+01 - 3.2800006e+03 1.3590293e+03 5.7512323e+01 - 3.2526371e+03 1.4232167e+03 5.6967653e+01 - 3.2240073e+03 1.4868655e+03 5.6325248e+01 - 3.1941185e+03 1.5499547e+03 5.5561533e+01 - 3.1629771e+03 1.6124642e+03 5.4645235e+01 - 3.1305876e+03 1.6743767e+03 5.3534167e+01 - 3.0969518e+03 1.7356778e+03 5.2170338e+01 - 3.0620667e+03 1.7963582e+03 5.0472297e+01 - 3.0259208e+03 1.8564170e+03 4.8322793e+01 - 2.9884888e+03 1.9158667e+03 4.5548216e+01 - 2.9497199e+03 1.9747443e+03 4.1882963e+01 - 2.9095156e+03 2.0331318e+03 3.6905075e+01 - 2.8676838e+03 2.0911998e+03 2.9914449e+01 - 2.8238364e+03 2.1493047e+03 1.9691998e+01 - 2.7771477e+03 2.2082186e+03 4.0104625e+00 - 2.7257846e+03 2.2696730e+03 -2.1303964e+01 - 2.6658636e+03 2.3373431e+03 -6.3361558e+01 - 2.5931213e+03 2.4151046e+03 -1.2682598e+02 - 2.5234653e+03 2.4867921e+03 -1.8667840e+02 - 2.4962800e+03 2.5140075e+03 -2.0752103e+02 - 2.5050287e+03 2.5050287e+03 -2.0892074e+02 - 2.5140075e+03 2.4962800e+03 -2.0752103e+02 - 2.4867921e+03 2.5234653e+03 -1.8667840e+02 - 2.4151046e+03 2.5931213e+03 -1.2682598e+02 - 2.3373431e+03 2.6658636e+03 -6.3361558e+01 - 2.2696730e+03 2.7257846e+03 -2.1303964e+01 - 2.2082186e+03 2.7771477e+03 4.0104625e+00 - 2.1493047e+03 2.8238364e+03 1.9691998e+01 - 2.0911998e+03 2.8676838e+03 2.9914449e+01 - 2.0331318e+03 2.9095156e+03 3.6905075e+01 - 1.9747443e+03 2.9497199e+03 4.1882963e+01 - 1.9158667e+03 2.9884888e+03 4.5548216e+01 - 1.8564170e+03 3.0259208e+03 4.8322793e+01 - 1.7963582e+03 3.0620667e+03 5.0472297e+01 - 1.7356778e+03 3.0969518e+03 5.2170338e+01 - 1.6743767e+03 3.1305876e+03 5.3534167e+01 - 1.6124642e+03 3.1629771e+03 5.4645235e+01 - 1.5499547e+03 3.1941185e+03 5.5561533e+01 - 1.4868655e+03 3.2240073e+03 5.6325248e+01 - 1.4232167e+03 3.2526371e+03 5.6967653e+01 - 1.3590293e+03 3.2800006e+03 5.7512323e+01 - 1.2943259e+03 3.3060900e+03 5.7977298e+01 - 1.2291297e+03 3.3308972e+03 5.8376565e+01 - 1.1634644e+03 3.3544142e+03 5.8721095e+01 - 1.0973545e+03 3.3766331e+03 5.9019588e+01 - 1.0308246e+03 3.3975462e+03 5.9279008e+01 - 9.6389975e+02 3.4171461e+03 5.9504971e+01 - 8.9660538e+02 3.4354259e+03 5.9702045e+01 - 8.2896702e+02 3.4523789e+03 5.9873962e+01 - 7.6101046e+02 3.4679989e+03 6.0023790e+01 - 6.9276165e+02 3.4822802e+03 6.0154060e+01 - 6.2424672e+02 3.4952175e+03 6.0266861e+01 - 5.5549190e+02 3.5068060e+03 6.0363924e+01 - 4.8652356e+02 3.5170415e+03 6.0446676e+01 - 4.1736819e+02 3.5259199e+03 6.0516290e+01 - 3.4805234e+02 3.5334382e+03 6.0573719e+01 - 2.7860264e+02 3.5395933e+03 6.0619732e+01 - 2.0904580e+02 3.5443830e+03 6.0654927e+01 - 1.3940855e+02 3.5478055e+03 6.0679754e+01 - 6.9717685e+01 3.5498596e+03 6.0694528e+01 - 4.8134273e-09 3.5505443e+03 6.0699432e+01 - -6.9717685e+01 3.5498596e+03 6.0694528e+01 - -1.3940855e+02 3.5478055e+03 6.0679754e+01 - -2.0904580e+02 3.5443830e+03 6.0654927e+01 - -2.7860264e+02 3.5395933e+03 6.0619732e+01 - -3.4805234e+02 3.5334382e+03 6.0573719e+01 - -4.1736819e+02 3.5259199e+03 6.0516290e+01 - -4.8652356e+02 3.5170415e+03 6.0446676e+01 - -5.5549190e+02 3.5068060e+03 6.0363924e+01 - -6.2424672e+02 3.4952175e+03 6.0266861e+01 - -6.9276165e+02 3.4822802e+03 6.0154060e+01 - -7.6101046e+02 3.4679989e+03 6.0023790e+01 - -8.2896702e+02 3.4523789e+03 5.9873962e+01 - -8.9660538e+02 3.4354259e+03 5.9702045e+01 - -9.6389975e+02 3.4171461e+03 5.9504971e+01 - -1.0308246e+03 3.3975462e+03 5.9279008e+01 - -1.0973545e+03 3.3766331e+03 5.9019588e+01 - -1.1634644e+03 3.3544142e+03 5.8721095e+01 - -1.2291297e+03 3.3308972e+03 5.8376565e+01 - -1.2943259e+03 3.3060900e+03 5.7977298e+01 - -1.3590293e+03 3.2800006e+03 5.7512323e+01 - -1.4232167e+03 3.2526371e+03 5.6967653e+01 - -1.4868655e+03 3.2240073e+03 5.6325248e+01 - -1.5499547e+03 3.1941185e+03 5.5561533e+01 - -1.6124642e+03 3.1629771e+03 5.4645235e+01 - -1.6743767e+03 3.1305876e+03 5.3534167e+01 - -1.7356778e+03 3.0969518e+03 5.2170338e+01 - -1.7963582e+03 3.0620667e+03 5.0472297e+01 - -1.8564170e+03 3.0259208e+03 4.8322793e+01 - -1.9158667e+03 2.9884888e+03 4.5548216e+01 - -1.9747443e+03 2.9497199e+03 4.1882963e+01 - -2.0331318e+03 2.9095156e+03 3.6905075e+01 - -2.0911998e+03 2.8676838e+03 2.9914449e+01 - -2.1493047e+03 2.8238364e+03 1.9691998e+01 - -2.2082186e+03 2.7771477e+03 4.0104625e+00 - -2.2696730e+03 2.7257846e+03 -2.1303964e+01 - -2.3373431e+03 2.6658636e+03 -6.3361558e+01 - -2.4151046e+03 2.5931213e+03 -1.2682598e+02 - -2.4867921e+03 2.5234653e+03 -1.8667840e+02 - -2.5140075e+03 2.4962800e+03 -2.0752103e+02 - -2.5050287e+03 2.5050287e+03 -2.0892074e+02 - -2.4962800e+03 2.5140075e+03 -2.0752103e+02 - -2.5234653e+03 2.4867921e+03 -1.8667840e+02 - -2.5931213e+03 2.4151046e+03 -1.2682598e+02 - -2.6658636e+03 2.3373431e+03 -6.3361558e+01 - -2.7257846e+03 2.2696730e+03 -2.1303964e+01 - -2.7771477e+03 2.2082186e+03 4.0104625e+00 - -2.8238364e+03 2.1493047e+03 1.9691998e+01 - -2.8676838e+03 2.0911998e+03 2.9914449e+01 - -2.9095156e+03 2.0331318e+03 3.6905075e+01 - -2.9497199e+03 1.9747443e+03 4.1882963e+01 - -2.9884888e+03 1.9158667e+03 4.5548216e+01 - -3.0259208e+03 1.8564170e+03 4.8322793e+01 - -3.0620667e+03 1.7963582e+03 5.0472297e+01 - -3.0969518e+03 1.7356778e+03 5.2170338e+01 - -3.1305876e+03 1.6743767e+03 5.3534167e+01 - -3.1629771e+03 1.6124642e+03 5.4645235e+01 - -3.1941185e+03 1.5499547e+03 5.5561533e+01 - -3.2240073e+03 1.4868655e+03 5.6325248e+01 - -3.2526371e+03 1.4232167e+03 5.6967653e+01 - -3.2800006e+03 1.3590293e+03 5.7512323e+01 - -3.3060900e+03 1.2943259e+03 5.7977298e+01 - -3.3308972e+03 1.2291297e+03 5.8376565e+01 - -3.3544142e+03 1.1634644e+03 5.8721095e+01 - -3.3766331e+03 1.0973545e+03 5.9019588e+01 - -3.3975462e+03 1.0308246e+03 5.9279008e+01 - -3.4171461e+03 9.6389975e+02 5.9504971e+01 - -3.4354259e+03 8.9660538e+02 5.9702045e+01 - -3.4523789e+03 8.2896702e+02 5.9873962e+01 - -3.4679989e+03 7.6101046e+02 6.0023790e+01 - -3.4822802e+03 6.9276165e+02 6.0154060e+01 - -3.4952175e+03 6.2424672e+02 6.0266861e+01 - -3.5068060e+03 5.5549190e+02 6.0363924e+01 - -3.5170415e+03 4.8652356e+02 6.0446676e+01 - -3.5259199e+03 4.1736819e+02 6.0516290e+01 - -3.5334382e+03 3.4805234e+02 6.0573719e+01 - -3.5395933e+03 2.7860264e+02 6.0619732e+01 - -3.5443830e+03 2.0904580e+02 6.0654927e+01 - -3.5478055e+03 1.3940855e+02 6.0679754e+01 - -3.5498596e+03 6.9717685e+01 6.0694528e+01 - -3.5505443e+03 4.8134273e-09 6.0699432e+01 - -3.5498596e+03 -6.9717685e+01 6.0694528e+01 - -3.5478055e+03 -1.3940855e+02 6.0679754e+01 - -3.5443830e+03 -2.0904580e+02 6.0654927e+01 - -3.5395933e+03 -2.7860264e+02 6.0619732e+01 - -3.5334382e+03 -3.4805234e+02 6.0573719e+01 - -3.5259199e+03 -4.1736819e+02 6.0516290e+01 - -3.5170415e+03 -4.8652356e+02 6.0446676e+01 - -3.5068060e+03 -5.5549190e+02 6.0363924e+01 - -3.4952175e+03 -6.2424672e+02 6.0266861e+01 - -3.4822802e+03 -6.9276165e+02 6.0154060e+01 - -3.4679989e+03 -7.6101046e+02 6.0023790e+01 - -3.4523789e+03 -8.2896702e+02 5.9873962e+01 - -3.4354259e+03 -8.9660538e+02 5.9702045e+01 - -3.4171461e+03 -9.6389975e+02 5.9504971e+01 - -3.3975462e+03 -1.0308246e+03 5.9279008e+01 - -3.3766331e+03 -1.0973545e+03 5.9019588e+01 - -3.3544142e+03 -1.1634644e+03 5.8721095e+01 - -3.3308972e+03 -1.2291297e+03 5.8376565e+01 - -3.3060900e+03 -1.2943259e+03 5.7977298e+01 - -3.2800006e+03 -1.3590293e+03 5.7512323e+01 - -3.2526371e+03 -1.4232167e+03 5.6967653e+01 - -3.2240073e+03 -1.4868655e+03 5.6325248e+01 - -3.1941185e+03 -1.5499547e+03 5.5561533e+01 - -3.1629771e+03 -1.6124642e+03 5.4645235e+01 - -3.1305876e+03 -1.6743767e+03 5.3534167e+01 - -3.0969518e+03 -1.7356778e+03 5.2170338e+01 - -3.0620667e+03 -1.7963582e+03 5.0472297e+01 - -3.0259208e+03 -1.8564170e+03 4.8322793e+01 - -2.9884888e+03 -1.9158667e+03 4.5548216e+01 - -2.9497199e+03 -1.9747443e+03 4.1882963e+01 - -2.9095156e+03 -2.0331318e+03 3.6905075e+01 - -2.8676838e+03 -2.0911998e+03 2.9914449e+01 - -2.8238364e+03 -2.1493047e+03 1.9691998e+01 - -2.7771477e+03 -2.2082186e+03 4.0104625e+00 - -2.7257846e+03 -2.2696730e+03 -2.1303964e+01 - -2.6658636e+03 -2.3373431e+03 -6.3361558e+01 - -2.5931213e+03 -2.4151046e+03 -1.2682598e+02 - -2.5234653e+03 -2.4867921e+03 -1.8667840e+02 - -2.4962800e+03 -2.5140075e+03 -2.0752103e+02 - -2.5050287e+03 -2.5050287e+03 -2.0892074e+02 - -2.5140075e+03 -2.4962800e+03 -2.0752103e+02 - -2.4867921e+03 -2.5234653e+03 -1.8667840e+02 - -2.4151046e+03 -2.5931213e+03 -1.2682598e+02 - -2.3373431e+03 -2.6658636e+03 -6.3361558e+01 - -2.2696730e+03 -2.7257846e+03 -2.1303964e+01 - -2.2082186e+03 -2.7771477e+03 4.0104625e+00 - -2.1493047e+03 -2.8238364e+03 1.9691998e+01 - -2.0911998e+03 -2.8676838e+03 2.9914449e+01 - -2.0331318e+03 -2.9095156e+03 3.6905075e+01 - -1.9747443e+03 -2.9497199e+03 4.1882963e+01 - -1.9158667e+03 -2.9884888e+03 4.5548216e+01 - -1.8564170e+03 -3.0259208e+03 4.8322793e+01 - -1.7963582e+03 -3.0620667e+03 5.0472297e+01 - -1.7356778e+03 -3.0969518e+03 5.2170338e+01 - -1.6743767e+03 -3.1305876e+03 5.3534167e+01 - -1.6124642e+03 -3.1629771e+03 5.4645235e+01 - -1.5499547e+03 -3.1941185e+03 5.5561533e+01 - -1.4868655e+03 -3.2240073e+03 5.6325248e+01 - -1.4232167e+03 -3.2526371e+03 5.6967653e+01 - -1.3590293e+03 -3.2800006e+03 5.7512323e+01 - -1.2943259e+03 -3.3060900e+03 5.7977298e+01 - -1.2291297e+03 -3.3308972e+03 5.8376565e+01 - -1.1634644e+03 -3.3544142e+03 5.8721095e+01 - -1.0973545e+03 -3.3766331e+03 5.9019588e+01 - -1.0308246e+03 -3.3975462e+03 5.9279008e+01 - -9.6389975e+02 -3.4171461e+03 5.9504971e+01 - -8.9660538e+02 -3.4354259e+03 5.9702045e+01 - -8.2896702e+02 -3.4523789e+03 5.9873962e+01 - -7.6101046e+02 -3.4679989e+03 6.0023790e+01 - -6.9276165e+02 -3.4822802e+03 6.0154060e+01 - -6.2424672e+02 -3.4952175e+03 6.0266861e+01 - -5.5549190e+02 -3.5068060e+03 6.0363924e+01 - -4.8652356e+02 -3.5170415e+03 6.0446676e+01 - -4.1736819e+02 -3.5259199e+03 6.0516290e+01 - -3.4805234e+02 -3.5334382e+03 6.0573719e+01 - -2.7860264e+02 -3.5395933e+03 6.0619732e+01 - -2.0904580e+02 -3.5443830e+03 6.0654927e+01 - -1.3940855e+02 -3.5478055e+03 6.0679754e+01 - -6.9717685e+01 -3.5498596e+03 6.0694528e+01 - -2.4067136e-09 -3.5505443e+03 6.0699432e+01 - 6.9717685e+01 -3.5498596e+03 6.0694528e+01 - 1.3940855e+02 -3.5478055e+03 6.0679754e+01 - 2.0904580e+02 -3.5443830e+03 6.0654927e+01 - 2.7860264e+02 -3.5395933e+03 6.0619732e+01 - 3.4805234e+02 -3.5334382e+03 6.0573719e+01 - 4.1736819e+02 -3.5259199e+03 6.0516290e+01 - 4.8652356e+02 -3.5170415e+03 6.0446676e+01 - 5.5549190e+02 -3.5068060e+03 6.0363924e+01 - 6.2424672e+02 -3.4952175e+03 6.0266861e+01 - 6.9276165e+02 -3.4822802e+03 6.0154060e+01 - 7.6101046e+02 -3.4679989e+03 6.0023790e+01 - 8.2896702e+02 -3.4523789e+03 5.9873962e+01 - 8.9660538e+02 -3.4354259e+03 5.9702045e+01 - 9.6389975e+02 -3.4171461e+03 5.9504971e+01 - 1.0308246e+03 -3.3975462e+03 5.9279008e+01 - 1.0973545e+03 -3.3766331e+03 5.9019588e+01 - 1.1634644e+03 -3.3544142e+03 5.8721095e+01 - 1.2291297e+03 -3.3308972e+03 5.8376565e+01 - 1.2943259e+03 -3.3060900e+03 5.7977298e+01 - 1.3590293e+03 -3.2800006e+03 5.7512323e+01 - 1.4232167e+03 -3.2526371e+03 5.6967653e+01 - 1.4868655e+03 -3.2240073e+03 5.6325248e+01 - 1.5499547e+03 -3.1941185e+03 5.5561533e+01 - 1.6124642e+03 -3.1629771e+03 5.4645235e+01 - 1.6743767e+03 -3.1305876e+03 5.3534167e+01 - 1.7356778e+03 -3.0969518e+03 5.2170338e+01 - 1.7963582e+03 -3.0620667e+03 5.0472297e+01 - 1.8564170e+03 -3.0259208e+03 4.8322793e+01 - 1.9158667e+03 -2.9884888e+03 4.5548216e+01 - 1.9747443e+03 -2.9497199e+03 4.1882963e+01 - 2.0331318e+03 -2.9095156e+03 3.6905075e+01 - 2.0911998e+03 -2.8676838e+03 2.9914449e+01 - 2.1493047e+03 -2.8238364e+03 1.9691998e+01 - 2.2082186e+03 -2.7771477e+03 4.0104625e+00 - 2.2696730e+03 -2.7257846e+03 -2.1303964e+01 - 2.3373431e+03 -2.6658636e+03 -6.3361558e+01 - 2.4151046e+03 -2.5931213e+03 -1.2682598e+02 - 2.4867921e+03 -2.5234653e+03 -1.8667840e+02 - 2.5140075e+03 -2.4962800e+03 -2.0752103e+02 - 2.5050287e+03 -2.5050287e+03 -2.0892074e+02 - 2.4962800e+03 -2.5140075e+03 -2.0752103e+02 - 2.5234653e+03 -2.4867921e+03 -1.8667840e+02 - 2.5931213e+03 -2.4151046e+03 -1.2682598e+02 - 2.6658636e+03 -2.3373431e+03 -6.3361558e+01 - 2.7257846e+03 -2.2696730e+03 -2.1303964e+01 - 2.7771477e+03 -2.2082186e+03 4.0104625e+00 - 2.8238364e+03 -2.1493047e+03 1.9691998e+01 - 2.8676838e+03 -2.0911998e+03 2.9914449e+01 - 2.9095156e+03 -2.0331318e+03 3.6905075e+01 - 2.9497199e+03 -1.9747443e+03 4.1882963e+01 - 2.9884888e+03 -1.9158667e+03 4.5548216e+01 - 3.0259208e+03 -1.8564170e+03 4.8322793e+01 - 3.0620667e+03 -1.7963582e+03 5.0472297e+01 - 3.0969518e+03 -1.7356778e+03 5.2170338e+01 - 3.1305876e+03 -1.6743767e+03 5.3534167e+01 - 3.1629771e+03 -1.6124642e+03 5.4645235e+01 - 3.1941185e+03 -1.5499547e+03 5.5561533e+01 - 3.2240073e+03 -1.4868655e+03 5.6325248e+01 - 3.2526371e+03 -1.4232167e+03 5.6967653e+01 - 3.2800006e+03 -1.3590293e+03 5.7512323e+01 - 3.3060900e+03 -1.2943259e+03 5.7977298e+01 - 3.3308972e+03 -1.2291297e+03 5.8376565e+01 - 3.3544142e+03 -1.1634644e+03 5.8721095e+01 - 3.3766331e+03 -1.0973545e+03 5.9019588e+01 - 3.3975462e+03 -1.0308246e+03 5.9279008e+01 - 3.4171461e+03 -9.6389975e+02 5.9504971e+01 - 3.4354259e+03 -8.9660538e+02 5.9702045e+01 - 3.4523789e+03 -8.2896702e+02 5.9873962e+01 - 3.4679989e+03 -7.6101046e+02 6.0023790e+01 - 3.4822802e+03 -6.9276165e+02 6.0154060e+01 - 3.4952175e+03 -6.2424672e+02 6.0266861e+01 - 3.5068060e+03 -5.5549190e+02 6.0363924e+01 - 3.5170415e+03 -4.8652356e+02 6.0446676e+01 - 3.5259199e+03 -4.1736819e+02 6.0516290e+01 - 3.5334382e+03 -3.4805234e+02 6.0573719e+01 - 3.5395933e+03 -2.7860264e+02 6.0619732e+01 - 3.5443830e+03 -2.0904580e+02 6.0654927e+01 - 3.5478055e+03 -1.3940855e+02 6.0679754e+01 - 3.5498596e+03 -6.9717685e+01 6.0694528e+01 - 3.5505443e+03 0.0000000e+00 6.0699432e+01 - 3.5517188e+03 4.8134273e-09 7.7816434e+01 - 3.5510330e+03 6.9756681e+01 7.7804862e+01 - 3.5489760e+03 1.3948666e+02 7.7769999e+01 - 3.5455483e+03 2.0916326e+02 7.7711409e+01 - 3.5407514e+03 2.7875981e+02 7.7628349e+01 - 3.5345869e+03 3.4824972e+02 7.7519752e+01 - 3.5270569e+03 4.1760644e+02 7.7384197e+01 - 3.5181641e+03 4.8680352e+02 7.7219868e+01 - 3.5079118e+03 5.5581458e+02 7.7024498e+01 - 3.4963033e+03 6.2461340e+02 7.6795308e+01 - 3.4833428e+03 6.9317389e+02 7.6528909e+01 - 3.4690347e+03 7.6147014e+02 7.6221198e+01 - 3.4533838e+03 8.2947644e+02 7.5867207e+01 - 3.4363951e+03 8.9716734e+02 7.5460926e+01 - 3.4180742e+03 9.6451769e+02 7.4995060e+01 - 3.3984267e+03 1.0315027e+03 7.4460729e+01 - 3.3774585e+03 1.0980980e+03 7.3847062e+01 - 3.3551754e+03 1.1642798e+03 7.3140677e+01 - 3.3315831e+03 1.2300251e+03 7.2324973e+01 - 3.3066871e+03 1.2953115e+03 7.1379191e+01 - 3.2804922e+03 1.3601182e+03 7.0277125e+01 - 3.2530019e+03 1.4244256e+03 6.8985343e+01 - 3.2242182e+03 1.4882165e+03 6.7460684e+01 - 3.1941403e+03 1.5514768e+03 6.5646693e+01 - 3.1627632e+03 1.6141964e+03 6.3468427e+01 - 3.1300753e+03 1.6763724e+03 6.0824748e+01 - 3.0960547e+03 1.7380112e+03 5.7576636e+01 - 3.0606632e+03 1.7991354e+03 5.3529014e+01 - 3.0238355e+03 1.8597926e+03 4.8401796e+01 - 2.9854605e+03 1.9200733e+03 4.1782472e+01 - 2.9453475e+03 1.9801427e+03 3.3046572e+01 - 2.9031616e+03 2.0403006e+03 2.1221709e+01 - 2.8582987e+03 2.1010988e+03 4.7559933e+00 - 2.8096489e+03 2.1635640e+03 -1.8849532e+01 - 2.7552082e+03 2.2295581e+03 -5.3445432e+01 - 2.6919133e+03 2.3019034e+03 -1.0369211e+02 - 2.6183306e+03 2.3816876e+03 -1.6958437e+02 - 2.5455311e+03 2.4576468e+03 -2.3347018e+02 - 2.4997017e+03 2.5041931e+03 -2.6889941e+02 - 2.4902147e+03 2.5133287e+03 -2.7789988e+02 - 2.5016453e+03 2.5016453e+03 -2.7843568e+02 - 2.5133287e+03 2.4902147e+03 -2.7789988e+02 - 2.5041931e+03 2.4997017e+03 -2.6889941e+02 - 2.4576468e+03 2.5455311e+03 -2.3347018e+02 - 2.3816876e+03 2.6183306e+03 -1.6958437e+02 - 2.3019034e+03 2.6919133e+03 -1.0369211e+02 - 2.2295581e+03 2.7552082e+03 -5.3445432e+01 - 2.1635640e+03 2.8096489e+03 -1.8849532e+01 - 2.1010988e+03 2.8582987e+03 4.7559933e+00 - 2.0403006e+03 2.9031616e+03 2.1221709e+01 - 1.9801427e+03 2.9453475e+03 3.3046572e+01 - 1.9200733e+03 2.9854605e+03 4.1782472e+01 - 1.8597926e+03 3.0238355e+03 4.8401796e+01 - 1.7991354e+03 3.0606632e+03 5.3529014e+01 - 1.7380112e+03 3.0960547e+03 5.7576636e+01 - 1.6763724e+03 3.1300753e+03 6.0824748e+01 - 1.6141964e+03 3.1627632e+03 6.3468427e+01 - 1.5514768e+03 3.1941403e+03 6.5646693e+01 - 1.4882165e+03 3.2242182e+03 6.7460684e+01 - 1.4244256e+03 3.2530019e+03 6.8985343e+01 - 1.3601182e+03 3.2804922e+03 7.0277125e+01 - 1.2953115e+03 3.3066871e+03 7.1379191e+01 - 1.2300251e+03 3.3315831e+03 7.2324973e+01 - 1.1642798e+03 3.3551754e+03 7.3140677e+01 - 1.0980980e+03 3.3774585e+03 7.3847062e+01 - 1.0315027e+03 3.3984267e+03 7.4460729e+01 - 9.6451769e+02 3.4180742e+03 7.4995060e+01 - 8.9716734e+02 3.4363951e+03 7.5460926e+01 - 8.2947644e+02 3.4533838e+03 7.5867207e+01 - 7.6147014e+02 3.4690347e+03 7.6221198e+01 - 6.9317389e+02 3.4833428e+03 7.6528909e+01 - 6.2461340e+02 3.4963033e+03 7.6795308e+01 - 5.5581458e+02 3.5079118e+03 7.7024498e+01 - 4.8680352e+02 3.5181641e+03 7.7219868e+01 - 4.1760644e+02 3.5270569e+03 7.7384197e+01 - 3.4824972e+02 3.5345869e+03 7.7519752e+01 - 2.7875981e+02 3.5407514e+03 7.7628349e+01 - 2.0916326e+02 3.5455483e+03 7.7711409e+01 - 1.3948666e+02 3.5489760e+03 7.7769999e+01 - 6.9756681e+01 3.5510330e+03 7.7804862e+01 - -4.8134273e-09 3.5517188e+03 7.7816434e+01 - -6.9756681e+01 3.5510330e+03 7.7804862e+01 - -1.3948666e+02 3.5489760e+03 7.7769999e+01 - -2.0916326e+02 3.5455483e+03 7.7711409e+01 - -2.7875981e+02 3.5407514e+03 7.7628349e+01 - -3.4824972e+02 3.5345869e+03 7.7519752e+01 - -4.1760644e+02 3.5270569e+03 7.7384197e+01 - -4.8680352e+02 3.5181641e+03 7.7219868e+01 - -5.5581458e+02 3.5079118e+03 7.7024498e+01 - -6.2461340e+02 3.4963033e+03 7.6795308e+01 - -6.9317389e+02 3.4833428e+03 7.6528909e+01 - -7.6147014e+02 3.4690347e+03 7.6221198e+01 - -8.2947644e+02 3.4533838e+03 7.5867207e+01 - -8.9716734e+02 3.4363951e+03 7.5460926e+01 - -9.6451769e+02 3.4180742e+03 7.4995060e+01 - -1.0315027e+03 3.3984267e+03 7.4460729e+01 - -1.0980980e+03 3.3774585e+03 7.3847062e+01 - -1.1642798e+03 3.3551754e+03 7.3140677e+01 - -1.2300251e+03 3.3315831e+03 7.2324973e+01 - -1.2953115e+03 3.3066871e+03 7.1379191e+01 - -1.3601182e+03 3.2804922e+03 7.0277125e+01 - -1.4244256e+03 3.2530019e+03 6.8985343e+01 - -1.4882165e+03 3.2242182e+03 6.7460684e+01 - -1.5514768e+03 3.1941403e+03 6.5646693e+01 - -1.6141964e+03 3.1627632e+03 6.3468427e+01 - -1.6763724e+03 3.1300753e+03 6.0824748e+01 - -1.7380112e+03 3.0960547e+03 5.7576636e+01 - -1.7991354e+03 3.0606632e+03 5.3529014e+01 - -1.8597926e+03 3.0238355e+03 4.8401796e+01 - -1.9200733e+03 2.9854605e+03 4.1782472e+01 - -1.9801427e+03 2.9453475e+03 3.3046572e+01 - -2.0403006e+03 2.9031616e+03 2.1221709e+01 - -2.1010988e+03 2.8582987e+03 4.7559933e+00 - -2.1635640e+03 2.8096489e+03 -1.8849532e+01 - -2.2295581e+03 2.7552082e+03 -5.3445432e+01 - -2.3019034e+03 2.6919133e+03 -1.0369211e+02 - -2.3816876e+03 2.6183306e+03 -1.6958437e+02 - -2.4576468e+03 2.5455311e+03 -2.3347018e+02 - -2.5041931e+03 2.4997017e+03 -2.6889941e+02 - -2.5133287e+03 2.4902147e+03 -2.7789988e+02 - -2.5016453e+03 2.5016453e+03 -2.7843568e+02 - -2.4902147e+03 2.5133287e+03 -2.7789988e+02 - -2.4997017e+03 2.5041931e+03 -2.6889941e+02 - -2.5455311e+03 2.4576468e+03 -2.3347018e+02 - -2.6183306e+03 2.3816876e+03 -1.6958437e+02 - -2.6919133e+03 2.3019034e+03 -1.0369211e+02 - -2.7552082e+03 2.2295581e+03 -5.3445432e+01 - -2.8096489e+03 2.1635640e+03 -1.8849532e+01 - -2.8582987e+03 2.1010988e+03 4.7559933e+00 - -2.9031616e+03 2.0403006e+03 2.1221709e+01 - -2.9453475e+03 1.9801427e+03 3.3046572e+01 - -2.9854605e+03 1.9200733e+03 4.1782472e+01 - -3.0238355e+03 1.8597926e+03 4.8401796e+01 - -3.0606632e+03 1.7991354e+03 5.3529014e+01 - -3.0960547e+03 1.7380112e+03 5.7576636e+01 - -3.1300753e+03 1.6763724e+03 6.0824748e+01 - -3.1627632e+03 1.6141964e+03 6.3468427e+01 - -3.1941403e+03 1.5514768e+03 6.5646693e+01 - -3.2242182e+03 1.4882165e+03 6.7460684e+01 - -3.2530019e+03 1.4244256e+03 6.8985343e+01 - -3.2804922e+03 1.3601182e+03 7.0277125e+01 - -3.3066871e+03 1.2953115e+03 7.1379191e+01 - -3.3315831e+03 1.2300251e+03 7.2324973e+01 - -3.3551754e+03 1.1642798e+03 7.3140677e+01 - -3.3774585e+03 1.0980980e+03 7.3847062e+01 - -3.3984267e+03 1.0315027e+03 7.4460729e+01 - -3.4180742e+03 9.6451769e+02 7.4995060e+01 - -3.4363951e+03 8.9716734e+02 7.5460926e+01 - -3.4533838e+03 8.2947644e+02 7.5867207e+01 - -3.4690347e+03 7.6147014e+02 7.6221198e+01 - -3.4833428e+03 6.9317389e+02 7.6528909e+01 - -3.4963033e+03 6.2461340e+02 7.6795308e+01 - -3.5079118e+03 5.5581458e+02 7.7024498e+01 - -3.5181641e+03 4.8680352e+02 7.7219868e+01 - -3.5270569e+03 4.1760644e+02 7.7384197e+01 - -3.5345869e+03 3.4824972e+02 7.7519752e+01 - -3.5407514e+03 2.7875981e+02 7.7628349e+01 - -3.5455483e+03 2.0916326e+02 7.7711409e+01 - -3.5489760e+03 1.3948666e+02 7.7769999e+01 - -3.5510330e+03 6.9756681e+01 7.7804862e+01 - -3.5517188e+03 0.0000000e+00 7.7816434e+01 - -3.5510330e+03 -6.9756681e+01 7.7804862e+01 - -3.5489760e+03 -1.3948666e+02 7.7769999e+01 - -3.5455483e+03 -2.0916326e+02 7.7711409e+01 - -3.5407514e+03 -2.7875981e+02 7.7628349e+01 - -3.5345869e+03 -3.4824972e+02 7.7519752e+01 - -3.5270569e+03 -4.1760644e+02 7.7384197e+01 - -3.5181641e+03 -4.8680352e+02 7.7219868e+01 - -3.5079118e+03 -5.5581458e+02 7.7024498e+01 - -3.4963033e+03 -6.2461340e+02 7.6795308e+01 - -3.4833428e+03 -6.9317389e+02 7.6528909e+01 - -3.4690347e+03 -7.6147014e+02 7.6221198e+01 - -3.4533838e+03 -8.2947644e+02 7.5867207e+01 - -3.4363951e+03 -8.9716734e+02 7.5460926e+01 - -3.4180742e+03 -9.6451769e+02 7.4995060e+01 - -3.3984267e+03 -1.0315027e+03 7.4460729e+01 - -3.3774585e+03 -1.0980980e+03 7.3847062e+01 - -3.3551754e+03 -1.1642798e+03 7.3140677e+01 - -3.3315831e+03 -1.2300251e+03 7.2324973e+01 - -3.3066871e+03 -1.2953115e+03 7.1379191e+01 - -3.2804922e+03 -1.3601182e+03 7.0277125e+01 - -3.2530019e+03 -1.4244256e+03 6.8985343e+01 - -3.2242182e+03 -1.4882165e+03 6.7460684e+01 - -3.1941403e+03 -1.5514768e+03 6.5646693e+01 - -3.1627632e+03 -1.6141964e+03 6.3468427e+01 - -3.1300753e+03 -1.6763724e+03 6.0824748e+01 - -3.0960547e+03 -1.7380112e+03 5.7576636e+01 - -3.0606632e+03 -1.7991354e+03 5.3529014e+01 - -3.0238355e+03 -1.8597926e+03 4.8401796e+01 - -2.9854605e+03 -1.9200733e+03 4.1782472e+01 - -2.9453475e+03 -1.9801427e+03 3.3046572e+01 - -2.9031616e+03 -2.0403006e+03 2.1221709e+01 - -2.8582987e+03 -2.1010988e+03 4.7559933e+00 - -2.8096489e+03 -2.1635640e+03 -1.8849532e+01 - -2.7552082e+03 -2.2295581e+03 -5.3445432e+01 - -2.6919133e+03 -2.3019034e+03 -1.0369211e+02 - -2.6183306e+03 -2.3816876e+03 -1.6958437e+02 - -2.5455311e+03 -2.4576468e+03 -2.3347018e+02 - -2.4997017e+03 -2.5041931e+03 -2.6889941e+02 - -2.4902147e+03 -2.5133287e+03 -2.7789988e+02 - -2.5016453e+03 -2.5016453e+03 -2.7843568e+02 - -2.5133287e+03 -2.4902147e+03 -2.7789988e+02 - -2.5041931e+03 -2.4997017e+03 -2.6889941e+02 - -2.4576468e+03 -2.5455311e+03 -2.3347018e+02 - -2.3816876e+03 -2.6183306e+03 -1.6958437e+02 - -2.3019034e+03 -2.6919133e+03 -1.0369211e+02 - -2.2295581e+03 -2.7552082e+03 -5.3445432e+01 - -2.1635640e+03 -2.8096489e+03 -1.8849532e+01 - -2.1010988e+03 -2.8582987e+03 4.7559933e+00 - -2.0403006e+03 -2.9031616e+03 2.1221709e+01 - -1.9801427e+03 -2.9453475e+03 3.3046572e+01 - -1.9200733e+03 -2.9854605e+03 4.1782472e+01 - -1.8597926e+03 -3.0238355e+03 4.8401796e+01 - -1.7991354e+03 -3.0606632e+03 5.3529014e+01 - -1.7380112e+03 -3.0960547e+03 5.7576636e+01 - -1.6763724e+03 -3.1300753e+03 6.0824748e+01 - -1.6141964e+03 -3.1627632e+03 6.3468427e+01 - -1.5514768e+03 -3.1941403e+03 6.5646693e+01 - -1.4882165e+03 -3.2242182e+03 6.7460684e+01 - -1.4244256e+03 -3.2530019e+03 6.8985343e+01 - -1.3601182e+03 -3.2804922e+03 7.0277125e+01 - -1.2953115e+03 -3.3066871e+03 7.1379191e+01 - -1.2300251e+03 -3.3315831e+03 7.2324973e+01 - -1.1642798e+03 -3.3551754e+03 7.3140677e+01 - -1.0980980e+03 -3.3774585e+03 7.3847062e+01 - -1.0315027e+03 -3.3984267e+03 7.4460729e+01 - -9.6451769e+02 -3.4180742e+03 7.4995060e+01 - -8.9716734e+02 -3.4363951e+03 7.5460926e+01 - -8.2947644e+02 -3.4533838e+03 7.5867207e+01 - -7.6147014e+02 -3.4690347e+03 7.6221198e+01 - -6.9317389e+02 -3.4833428e+03 7.6528909e+01 - -6.2461340e+02 -3.4963033e+03 7.6795308e+01 - -5.5581458e+02 -3.5079118e+03 7.7024498e+01 - -4.8680352e+02 -3.5181641e+03 7.7219868e+01 - -4.1760644e+02 -3.5270569e+03 7.7384197e+01 - -3.4824972e+02 -3.5345869e+03 7.7519752e+01 - -2.7875981e+02 -3.5407514e+03 7.7628349e+01 - -2.0916326e+02 -3.5455483e+03 7.7711409e+01 - -1.3948666e+02 -3.5489760e+03 7.7769999e+01 - -6.9756681e+01 -3.5510330e+03 7.7804862e+01 - 4.8134273e-09 -3.5517188e+03 7.7816434e+01 - 6.9756681e+01 -3.5510330e+03 7.7804862e+01 - 1.3948666e+02 -3.5489760e+03 7.7769999e+01 - 2.0916326e+02 -3.5455483e+03 7.7711409e+01 - 2.7875981e+02 -3.5407514e+03 7.7628349e+01 - 3.4824972e+02 -3.5345869e+03 7.7519752e+01 - 4.1760644e+02 -3.5270569e+03 7.7384197e+01 - 4.8680352e+02 -3.5181641e+03 7.7219868e+01 - 5.5581458e+02 -3.5079118e+03 7.7024498e+01 - 6.2461340e+02 -3.4963033e+03 7.6795308e+01 - 6.9317389e+02 -3.4833428e+03 7.6528909e+01 - 7.6147014e+02 -3.4690347e+03 7.6221198e+01 - 8.2947644e+02 -3.4533838e+03 7.5867207e+01 - 8.9716734e+02 -3.4363951e+03 7.5460926e+01 - 9.6451769e+02 -3.4180742e+03 7.4995060e+01 - 1.0315027e+03 -3.3984267e+03 7.4460729e+01 - 1.0980980e+03 -3.3774585e+03 7.3847062e+01 - 1.1642798e+03 -3.3551754e+03 7.3140677e+01 - 1.2300251e+03 -3.3315831e+03 7.2324973e+01 - 1.2953115e+03 -3.3066871e+03 7.1379191e+01 - 1.3601182e+03 -3.2804922e+03 7.0277125e+01 - 1.4244256e+03 -3.2530019e+03 6.8985343e+01 - 1.4882165e+03 -3.2242182e+03 6.7460684e+01 - 1.5514768e+03 -3.1941403e+03 6.5646693e+01 - 1.6141964e+03 -3.1627632e+03 6.3468427e+01 - 1.6763724e+03 -3.1300753e+03 6.0824748e+01 - 1.7380112e+03 -3.0960547e+03 5.7576636e+01 - 1.7991354e+03 -3.0606632e+03 5.3529014e+01 - 1.8597926e+03 -3.0238355e+03 4.8401796e+01 - 1.9200733e+03 -2.9854605e+03 4.1782472e+01 - 1.9801427e+03 -2.9453475e+03 3.3046572e+01 - 2.0403006e+03 -2.9031616e+03 2.1221709e+01 - 2.1010988e+03 -2.8582987e+03 4.7559933e+00 - 2.1635640e+03 -2.8096489e+03 -1.8849532e+01 - 2.2295581e+03 -2.7552082e+03 -5.3445432e+01 - 2.3019034e+03 -2.6919133e+03 -1.0369211e+02 - 2.3816876e+03 -2.6183306e+03 -1.6958437e+02 - 2.4576468e+03 -2.5455311e+03 -2.3347018e+02 - 2.5041931e+03 -2.4997017e+03 -2.6889941e+02 - 2.5133287e+03 -2.4902147e+03 -2.7789988e+02 - 2.5016453e+03 -2.5016453e+03 -2.7843568e+02 - 2.4902147e+03 -2.5133287e+03 -2.7789988e+02 - 2.4997017e+03 -2.5041931e+03 -2.6889941e+02 - 2.5455311e+03 -2.4576468e+03 -2.3347018e+02 - 2.6183306e+03 -2.3816876e+03 -1.6958437e+02 - 2.6919133e+03 -2.3019034e+03 -1.0369211e+02 - 2.7552082e+03 -2.2295581e+03 -5.3445432e+01 - 2.8096489e+03 -2.1635640e+03 -1.8849532e+01 - 2.8582987e+03 -2.1010988e+03 4.7559933e+00 - 2.9031616e+03 -2.0403006e+03 2.1221709e+01 - 2.9453475e+03 -1.9801427e+03 3.3046572e+01 - 2.9854605e+03 -1.9200733e+03 4.1782472e+01 - 3.0238355e+03 -1.8597926e+03 4.8401796e+01 - 3.0606632e+03 -1.7991354e+03 5.3529014e+01 - 3.0960547e+03 -1.7380112e+03 5.7576636e+01 - 3.1300753e+03 -1.6763724e+03 6.0824748e+01 - 3.1627632e+03 -1.6141964e+03 6.3468427e+01 - 3.1941403e+03 -1.5514768e+03 6.5646693e+01 - 3.2242182e+03 -1.4882165e+03 6.7460684e+01 - 3.2530019e+03 -1.4244256e+03 6.8985343e+01 - 3.2804922e+03 -1.3601182e+03 7.0277125e+01 - 3.3066871e+03 -1.2953115e+03 7.1379191e+01 - 3.3315831e+03 -1.2300251e+03 7.2324973e+01 - 3.3551754e+03 -1.1642798e+03 7.3140677e+01 - 3.3774585e+03 -1.0980980e+03 7.3847062e+01 - 3.3984267e+03 -1.0315027e+03 7.4460729e+01 - 3.4180742e+03 -9.6451769e+02 7.4995060e+01 - 3.4363951e+03 -8.9716734e+02 7.5460926e+01 - 3.4533838e+03 -8.2947644e+02 7.5867207e+01 - 3.4690347e+03 -7.6147014e+02 7.6221198e+01 - 3.4833428e+03 -6.9317389e+02 7.6528909e+01 - 3.4963033e+03 -6.2461340e+02 7.6795308e+01 - 3.5079118e+03 -5.5581458e+02 7.7024498e+01 - 3.5181641e+03 -4.8680352e+02 7.7219868e+01 - 3.5270569e+03 -4.1760644e+02 7.7384197e+01 - 3.5345869e+03 -3.4824972e+02 7.7519752e+01 - 3.5407514e+03 -2.7875981e+02 7.7628349e+01 - 3.5455483e+03 -2.0916326e+02 7.7711409e+01 - 3.5489760e+03 -1.3948666e+02 7.7769999e+01 - 3.5510330e+03 -6.9756681e+01 7.7804862e+01 - 3.5517188e+03 0.0000000e+00 7.7816434e+01 - 3.5530015e+03 -2.4067136e-09 9.2348599e+01 - 3.5523138e+03 6.9815408e+01 9.2326117e+01 - 3.5502511e+03 1.3960437e+02 9.2258388e+01 - 3.5468140e+03 2.0934047e+02 9.2144557e+01 - 3.5420035e+03 2.7899733e+02 9.1983176e+01 - 3.5358212e+03 3.4854865e+02 9.1772159e+01 - 3.5282690e+03 4.1796822e+02 9.1508729e+01 - 3.5193493e+03 4.8722996e+02 9.1189336e+01 - 3.5090648e+03 5.5630796e+02 9.0809551e+01 - 3.4974184e+03 6.2517648e+02 9.0363935e+01 - 3.4844135e+03 6.9381005e+02 8.9845861e+01 - 3.4700537e+03 7.6218349e+02 8.9247293e+01 - 3.4543428e+03 8.3027198e+02 8.8558505e+01 - 3.4372847e+03 8.9805115e+02 8.7767718e+01 - 3.4188832e+03 9.6549721e+02 8.6860630e+01 - 3.3991420e+03 1.0325870e+03 8.5819816e+01 - 3.3780645e+03 1.0992984e+03 8.4623936e+01 - 3.3556532e+03 1.1656103e+03 8.3246696e+01 - 3.3319099e+03 1.2315030e+03 8.1655463e+01 - 3.3068345e+03 1.2969590e+03 7.9809400e+01 - 3.2804249e+03 1.3619632e+03 7.7656928e+01 - 3.2526752e+03 1.4265044e+03 7.5132220e+01 - 3.2235748e+03 1.4905762e+03 7.2150287e+01 - 3.1931055e+03 1.5541796e+03 6.8599996e+01 - 3.1612381e+03 1.6173261e+03 6.4333972e+01 - 3.1279268e+03 1.6800428e+03 5.9153754e+01 - 3.0930998e+03 1.7423807e+03 5.2787604e+01 - 3.0566455e+03 1.8044281e+03 4.4856789e+01 - 3.0183873e+03 1.8663329e+03 3.4823723e+01 - 2.9780431e+03 1.9283405e+03 2.1911886e+01 - 2.9351554e+03 1.9908586e+03 4.9843530e+00 - 2.8889747e+03 2.0545642e+03 -1.7627456e+01 - 2.8382879e+03 2.1205614e+03 -4.8307544e+01 - 2.7812661e+03 2.1905113e+03 -9.0112554e+01 - 2.7158195e+03 2.2662565e+03 -1.4561853e+02 - 2.6420512e+03 2.3473972e+03 -2.1275818e+02 - 2.5681965e+03 2.4255563e+03 -2.7850048e+02 - 2.5119417e+03 2.4834468e+03 -3.2370859e+02 - 2.4854377e+03 2.5099387e+03 -3.4318836e+02 - 2.4846524e+03 2.5102029e+03 -3.4762272e+02 - 2.4972975e+03 2.4972975e+03 -3.4784327e+02 - 2.5102029e+03 2.4846524e+03 -3.4762272e+02 - 2.5099387e+03 2.4854377e+03 -3.4318836e+02 - 2.4834468e+03 2.5119417e+03 -3.2370859e+02 - 2.4255563e+03 2.5681965e+03 -2.7850048e+02 - 2.3473972e+03 2.6420512e+03 -2.1275818e+02 - 2.2662565e+03 2.7158195e+03 -1.4561853e+02 - 2.1905113e+03 2.7812661e+03 -9.0112554e+01 - 2.1205614e+03 2.8382879e+03 -4.8307544e+01 - 2.0545642e+03 2.8889747e+03 -1.7627456e+01 - 1.9908586e+03 2.9351554e+03 4.9843530e+00 - 1.9283405e+03 2.9780431e+03 2.1911886e+01 - 1.8663329e+03 3.0183873e+03 3.4823723e+01 - 1.8044281e+03 3.0566455e+03 4.4856789e+01 - 1.7423807e+03 3.0930998e+03 5.2787604e+01 - 1.6800428e+03 3.1279268e+03 5.9153754e+01 - 1.6173261e+03 3.1612381e+03 6.4333972e+01 - 1.5541796e+03 3.1931055e+03 6.8599996e+01 - 1.4905762e+03 3.2235748e+03 7.2150287e+01 - 1.4265044e+03 3.2526752e+03 7.5132220e+01 - 1.3619632e+03 3.2804249e+03 7.7656928e+01 - 1.2969590e+03 3.3068345e+03 7.9809400e+01 - 1.2315030e+03 3.3319099e+03 8.1655463e+01 - 1.1656103e+03 3.3556532e+03 8.3246696e+01 - 1.0992984e+03 3.3780645e+03 8.4623936e+01 - 1.0325870e+03 3.3991420e+03 8.5819816e+01 - 9.6549721e+02 3.4188832e+03 8.6860630e+01 - 8.9805115e+02 3.4372847e+03 8.7767718e+01 - 8.3027198e+02 3.4543428e+03 8.8558505e+01 - 7.6218349e+02 3.4700537e+03 8.9247293e+01 - 6.9381005e+02 3.4844135e+03 8.9845861e+01 - 6.2517648e+02 3.4974184e+03 9.0363935e+01 - 5.5630796e+02 3.5090648e+03 9.0809551e+01 - 4.8722996e+02 3.5193493e+03 9.1189336e+01 - 4.1796822e+02 3.5282690e+03 9.1508729e+01 - 3.4854865e+02 3.5358212e+03 9.1772159e+01 - 2.7899733e+02 3.5420035e+03 9.1983176e+01 - 2.0934047e+02 3.5468140e+03 9.2144557e+01 - 1.3960437e+02 3.5502511e+03 9.2258388e+01 - 6.9815408e+01 3.5523138e+03 9.2326117e+01 - -2.4067136e-09 3.5530015e+03 9.2348599e+01 - -6.9815408e+01 3.5523138e+03 9.2326117e+01 - -1.3960437e+02 3.5502511e+03 9.2258388e+01 - -2.0934047e+02 3.5468140e+03 9.2144557e+01 - -2.7899733e+02 3.5420035e+03 9.1983176e+01 - -3.4854865e+02 3.5358212e+03 9.1772159e+01 - -4.1796822e+02 3.5282690e+03 9.1508729e+01 - -4.8722996e+02 3.5193493e+03 9.1189336e+01 - -5.5630796e+02 3.5090648e+03 9.0809551e+01 - -6.2517648e+02 3.4974184e+03 9.0363935e+01 - -6.9381005e+02 3.4844135e+03 8.9845861e+01 - -7.6218349e+02 3.4700537e+03 8.9247293e+01 - -8.3027198e+02 3.4543428e+03 8.8558505e+01 - -8.9805115e+02 3.4372847e+03 8.7767718e+01 - -9.6549721e+02 3.4188832e+03 8.6860630e+01 - -1.0325870e+03 3.3991420e+03 8.5819816e+01 - -1.0992984e+03 3.3780645e+03 8.4623936e+01 - -1.1656103e+03 3.3556532e+03 8.3246696e+01 - -1.2315030e+03 3.3319099e+03 8.1655463e+01 - -1.2969590e+03 3.3068345e+03 7.9809400e+01 - -1.3619632e+03 3.2804249e+03 7.7656928e+01 - -1.4265044e+03 3.2526752e+03 7.5132220e+01 - -1.4905762e+03 3.2235748e+03 7.2150287e+01 - -1.5541796e+03 3.1931055e+03 6.8599996e+01 - -1.6173261e+03 3.1612381e+03 6.4333972e+01 - -1.6800428e+03 3.1279268e+03 5.9153754e+01 - -1.7423807e+03 3.0930998e+03 5.2787604e+01 - -1.8044281e+03 3.0566455e+03 4.4856789e+01 - -1.8663329e+03 3.0183873e+03 3.4823723e+01 - -1.9283405e+03 2.9780431e+03 2.1911886e+01 - -1.9908586e+03 2.9351554e+03 4.9843530e+00 - -2.0545642e+03 2.8889747e+03 -1.7627456e+01 - -2.1205614e+03 2.8382879e+03 -4.8307544e+01 - -2.1905113e+03 2.7812661e+03 -9.0112554e+01 - -2.2662565e+03 2.7158195e+03 -1.4561853e+02 - -2.3473972e+03 2.6420512e+03 -2.1275818e+02 - -2.4255563e+03 2.5681965e+03 -2.7850048e+02 - -2.4834468e+03 2.5119417e+03 -3.2370859e+02 - -2.5099387e+03 2.4854377e+03 -3.4318836e+02 - -2.5102029e+03 2.4846524e+03 -3.4762272e+02 - -2.4972975e+03 2.4972975e+03 -3.4784327e+02 - -2.4846524e+03 2.5102029e+03 -3.4762272e+02 - -2.4854377e+03 2.5099387e+03 -3.4318836e+02 - -2.5119417e+03 2.4834468e+03 -3.2370859e+02 - -2.5681965e+03 2.4255563e+03 -2.7850048e+02 - -2.6420512e+03 2.3473972e+03 -2.1275818e+02 - -2.7158195e+03 2.2662565e+03 -1.4561853e+02 - -2.7812661e+03 2.1905113e+03 -9.0112554e+01 - -2.8382879e+03 2.1205614e+03 -4.8307544e+01 - -2.8889747e+03 2.0545642e+03 -1.7627456e+01 - -2.9351554e+03 1.9908586e+03 4.9843530e+00 - -2.9780431e+03 1.9283405e+03 2.1911886e+01 - -3.0183873e+03 1.8663329e+03 3.4823723e+01 - -3.0566455e+03 1.8044281e+03 4.4856789e+01 - -3.0930998e+03 1.7423807e+03 5.2787604e+01 - -3.1279268e+03 1.6800428e+03 5.9153754e+01 - -3.1612381e+03 1.6173261e+03 6.4333972e+01 - -3.1931055e+03 1.5541796e+03 6.8599996e+01 - -3.2235748e+03 1.4905762e+03 7.2150287e+01 - -3.2526752e+03 1.4265044e+03 7.5132220e+01 - -3.2804249e+03 1.3619632e+03 7.7656928e+01 - -3.3068345e+03 1.2969590e+03 7.9809400e+01 - -3.3319099e+03 1.2315030e+03 8.1655463e+01 - -3.3556532e+03 1.1656103e+03 8.3246696e+01 - -3.3780645e+03 1.0992984e+03 8.4623936e+01 - -3.3991420e+03 1.0325870e+03 8.5819816e+01 - -3.4188832e+03 9.6549721e+02 8.6860630e+01 - -3.4372847e+03 8.9805115e+02 8.7767718e+01 - -3.4543428e+03 8.3027198e+02 8.8558505e+01 - -3.4700537e+03 7.6218349e+02 8.9247293e+01 - -3.4844135e+03 6.9381005e+02 8.9845861e+01 - -3.4974184e+03 6.2517648e+02 9.0363935e+01 - -3.5090648e+03 5.5630796e+02 9.0809551e+01 - -3.5193493e+03 4.8722996e+02 9.1189336e+01 - -3.5282690e+03 4.1796822e+02 9.1508729e+01 - -3.5358212e+03 3.4854865e+02 9.1772159e+01 - -3.5420035e+03 2.7899733e+02 9.1983176e+01 - -3.5468140e+03 2.0934047e+02 9.2144557e+01 - -3.5502511e+03 1.3960437e+02 9.2258388e+01 - -3.5523138e+03 6.9815408e+01 9.2326117e+01 - -3.5530015e+03 4.8134273e-09 9.2348599e+01 - -3.5523138e+03 -6.9815408e+01 9.2326117e+01 - -3.5502511e+03 -1.3960437e+02 9.2258388e+01 - -3.5468140e+03 -2.0934047e+02 9.2144557e+01 - -3.5420035e+03 -2.7899733e+02 9.1983176e+01 - -3.5358212e+03 -3.4854865e+02 9.1772159e+01 - -3.5282690e+03 -4.1796822e+02 9.1508729e+01 - -3.5193493e+03 -4.8722996e+02 9.1189336e+01 - -3.5090648e+03 -5.5630796e+02 9.0809551e+01 - -3.4974184e+03 -6.2517648e+02 9.0363935e+01 - -3.4844135e+03 -6.9381005e+02 8.9845861e+01 - -3.4700537e+03 -7.6218349e+02 8.9247293e+01 - -3.4543428e+03 -8.3027198e+02 8.8558505e+01 - -3.4372847e+03 -8.9805115e+02 8.7767718e+01 - -3.4188832e+03 -9.6549721e+02 8.6860630e+01 - -3.3991420e+03 -1.0325870e+03 8.5819816e+01 - -3.3780645e+03 -1.0992984e+03 8.4623936e+01 - -3.3556532e+03 -1.1656103e+03 8.3246696e+01 - -3.3319099e+03 -1.2315030e+03 8.1655463e+01 - -3.3068345e+03 -1.2969590e+03 7.9809400e+01 - -3.2804249e+03 -1.3619632e+03 7.7656928e+01 - -3.2526752e+03 -1.4265044e+03 7.5132220e+01 - -3.2235748e+03 -1.4905762e+03 7.2150287e+01 - -3.1931055e+03 -1.5541796e+03 6.8599996e+01 - -3.1612381e+03 -1.6173261e+03 6.4333972e+01 - -3.1279268e+03 -1.6800428e+03 5.9153754e+01 - -3.0930998e+03 -1.7423807e+03 5.2787604e+01 - -3.0566455e+03 -1.8044281e+03 4.4856789e+01 - -3.0183873e+03 -1.8663329e+03 3.4823723e+01 - -2.9780431e+03 -1.9283405e+03 2.1911886e+01 - -2.9351554e+03 -1.9908586e+03 4.9843530e+00 - -2.8889747e+03 -2.0545642e+03 -1.7627456e+01 - -2.8382879e+03 -2.1205614e+03 -4.8307544e+01 - -2.7812661e+03 -2.1905113e+03 -9.0112554e+01 - -2.7158195e+03 -2.2662565e+03 -1.4561853e+02 - -2.6420512e+03 -2.3473972e+03 -2.1275818e+02 - -2.5681965e+03 -2.4255563e+03 -2.7850048e+02 - -2.5119417e+03 -2.4834468e+03 -3.2370859e+02 - -2.4854377e+03 -2.5099387e+03 -3.4318836e+02 - -2.4846524e+03 -2.5102029e+03 -3.4762272e+02 - -2.4972975e+03 -2.4972975e+03 -3.4784327e+02 - -2.5102029e+03 -2.4846524e+03 -3.4762272e+02 - -2.5099387e+03 -2.4854377e+03 -3.4318836e+02 - -2.4834468e+03 -2.5119417e+03 -3.2370859e+02 - -2.4255563e+03 -2.5681965e+03 -2.7850048e+02 - -2.3473972e+03 -2.6420512e+03 -2.1275818e+02 - -2.2662565e+03 -2.7158195e+03 -1.4561853e+02 - -2.1905113e+03 -2.7812661e+03 -9.0112554e+01 - -2.1205614e+03 -2.8382879e+03 -4.8307544e+01 - -2.0545642e+03 -2.8889747e+03 -1.7627456e+01 - -1.9908586e+03 -2.9351554e+03 4.9843530e+00 - -1.9283405e+03 -2.9780431e+03 2.1911886e+01 - -1.8663329e+03 -3.0183873e+03 3.4823723e+01 - -1.8044281e+03 -3.0566455e+03 4.4856789e+01 - -1.7423807e+03 -3.0930998e+03 5.2787604e+01 - -1.6800428e+03 -3.1279268e+03 5.9153754e+01 - -1.6173261e+03 -3.1612381e+03 6.4333972e+01 - -1.5541796e+03 -3.1931055e+03 6.8599996e+01 - -1.4905762e+03 -3.2235748e+03 7.2150287e+01 - -1.4265044e+03 -3.2526752e+03 7.5132220e+01 - -1.3619632e+03 -3.2804249e+03 7.7656928e+01 - -1.2969590e+03 -3.3068345e+03 7.9809400e+01 - -1.2315030e+03 -3.3319099e+03 8.1655463e+01 - -1.1656103e+03 -3.3556532e+03 8.3246696e+01 - -1.0992984e+03 -3.3780645e+03 8.4623936e+01 - -1.0325870e+03 -3.3991420e+03 8.5819816e+01 - -9.6549721e+02 -3.4188832e+03 8.6860630e+01 - -8.9805115e+02 -3.4372847e+03 8.7767718e+01 - -8.3027198e+02 -3.4543428e+03 8.8558505e+01 - -7.6218349e+02 -3.4700537e+03 8.9247293e+01 - -6.9381005e+02 -3.4844135e+03 8.9845861e+01 - -6.2517648e+02 -3.4974184e+03 9.0363935e+01 - -5.5630796e+02 -3.5090648e+03 9.0809551e+01 - -4.8722996e+02 -3.5193493e+03 9.1189336e+01 - -4.1796822e+02 -3.5282690e+03 9.1508729e+01 - -3.4854865e+02 -3.5358212e+03 9.1772159e+01 - -2.7899733e+02 -3.5420035e+03 9.1983176e+01 - -2.0934047e+02 -3.5468140e+03 9.2144557e+01 - -1.3960437e+02 -3.5502511e+03 9.2258388e+01 - -6.9815408e+01 -3.5523138e+03 9.2326117e+01 - 0.0000000e+00 -3.5530015e+03 9.2348599e+01 - 6.9815408e+01 -3.5523138e+03 9.2326117e+01 - 1.3960437e+02 -3.5502511e+03 9.2258388e+01 - 2.0934047e+02 -3.5468140e+03 9.2144557e+01 - 2.7899733e+02 -3.5420035e+03 9.1983176e+01 - 3.4854865e+02 -3.5358212e+03 9.1772159e+01 - 4.1796822e+02 -3.5282690e+03 9.1508729e+01 - 4.8722996e+02 -3.5193493e+03 9.1189336e+01 - 5.5630796e+02 -3.5090648e+03 9.0809551e+01 - 6.2517648e+02 -3.4974184e+03 9.0363935e+01 - 6.9381005e+02 -3.4844135e+03 8.9845861e+01 - 7.6218349e+02 -3.4700537e+03 8.9247293e+01 - 8.3027198e+02 -3.4543428e+03 8.8558505e+01 - 8.9805115e+02 -3.4372847e+03 8.7767718e+01 - 9.6549721e+02 -3.4188832e+03 8.6860630e+01 - 1.0325870e+03 -3.3991420e+03 8.5819816e+01 - 1.0992984e+03 -3.3780645e+03 8.4623936e+01 - 1.1656103e+03 -3.3556532e+03 8.3246696e+01 - 1.2315030e+03 -3.3319099e+03 8.1655463e+01 - 1.2969590e+03 -3.3068345e+03 7.9809400e+01 - 1.3619632e+03 -3.2804249e+03 7.7656928e+01 - 1.4265044e+03 -3.2526752e+03 7.5132220e+01 - 1.4905762e+03 -3.2235748e+03 7.2150287e+01 - 1.5541796e+03 -3.1931055e+03 6.8599996e+01 - 1.6173261e+03 -3.1612381e+03 6.4333972e+01 - 1.6800428e+03 -3.1279268e+03 5.9153754e+01 - 1.7423807e+03 -3.0930998e+03 5.2787604e+01 - 1.8044281e+03 -3.0566455e+03 4.4856789e+01 - 1.8663329e+03 -3.0183873e+03 3.4823723e+01 - 1.9283405e+03 -2.9780431e+03 2.1911886e+01 - 1.9908586e+03 -2.9351554e+03 4.9843530e+00 - 2.0545642e+03 -2.8889747e+03 -1.7627456e+01 - 2.1205614e+03 -2.8382879e+03 -4.8307544e+01 - 2.1905113e+03 -2.7812661e+03 -9.0112554e+01 - 2.2662565e+03 -2.7158195e+03 -1.4561853e+02 - 2.3473972e+03 -2.6420512e+03 -2.1275818e+02 - 2.4255563e+03 -2.5681965e+03 -2.7850048e+02 - 2.4834468e+03 -2.5119417e+03 -3.2370859e+02 - 2.5099387e+03 -2.4854377e+03 -3.4318836e+02 - 2.5102029e+03 -2.4846524e+03 -3.4762272e+02 - 2.4972975e+03 -2.4972975e+03 -3.4784327e+02 - 2.4846524e+03 -2.5102029e+03 -3.4762272e+02 - 2.4854377e+03 -2.5099387e+03 -3.4318836e+02 - 2.5119417e+03 -2.4834468e+03 -3.2370859e+02 - 2.5681965e+03 -2.4255563e+03 -2.7850048e+02 - 2.6420512e+03 -2.3473972e+03 -2.1275818e+02 - 2.7158195e+03 -2.2662565e+03 -1.4561853e+02 - 2.7812661e+03 -2.1905113e+03 -9.0112554e+01 - 2.8382879e+03 -2.1205614e+03 -4.8307544e+01 - 2.8889747e+03 -2.0545642e+03 -1.7627456e+01 - 2.9351554e+03 -1.9908586e+03 4.9843530e+00 - 2.9780431e+03 -1.9283405e+03 2.1911886e+01 - 3.0183873e+03 -1.8663329e+03 3.4823723e+01 - 3.0566455e+03 -1.8044281e+03 4.4856789e+01 - 3.0930998e+03 -1.7423807e+03 5.2787604e+01 - 3.1279268e+03 -1.6800428e+03 5.9153754e+01 - 3.1612381e+03 -1.6173261e+03 6.4333972e+01 - 3.1931055e+03 -1.5541796e+03 6.8599996e+01 - 3.2235748e+03 -1.4905762e+03 7.2150287e+01 - 3.2526752e+03 -1.4265044e+03 7.5132220e+01 - 3.2804249e+03 -1.3619632e+03 7.7656928e+01 - 3.3068345e+03 -1.2969590e+03 7.9809400e+01 - 3.3319099e+03 -1.2315030e+03 8.1655463e+01 - 3.3556532e+03 -1.1656103e+03 8.3246696e+01 - 3.3780645e+03 -1.0992984e+03 8.4623936e+01 - 3.3991420e+03 -1.0325870e+03 8.5819816e+01 - 3.4188832e+03 -9.6549721e+02 8.6860630e+01 - 3.4372847e+03 -8.9805115e+02 8.7767718e+01 - 3.4543428e+03 -8.3027198e+02 8.8558505e+01 - 3.4700537e+03 -7.6218349e+02 8.9247293e+01 - 3.4844135e+03 -6.9381005e+02 8.9845861e+01 - 3.4974184e+03 -6.2517648e+02 9.0363935e+01 - 3.5090648e+03 -5.5630796e+02 9.0809551e+01 - 3.5193493e+03 -4.8722996e+02 9.1189336e+01 - 3.5282690e+03 -4.1796822e+02 9.1508729e+01 - 3.5358212e+03 -3.4854865e+02 9.1772159e+01 - 3.5420035e+03 -2.7899733e+02 9.1983176e+01 - 3.5468140e+03 -2.0934047e+02 9.2144557e+01 - 3.5502511e+03 -1.3960437e+02 9.2258388e+01 - 3.5523138e+03 -6.9815408e+01 9.2326117e+01 - 3.5530015e+03 0.0000000e+00 9.2348599e+01 - 3.5542322e+03 0.0000000e+00 1.0375176e+02 - 3.5535413e+03 6.9900459e+01 1.0371314e+02 - 3.5514690e+03 1.3977495e+02 1.0359680e+02 - 3.5480156e+03 2.0959756e+02 1.0340124e+02 - 3.5431821e+03 2.7934242e+02 1.0312398e+02 - 3.5369697e+03 3.4898380e+02 1.0276139e+02 - 3.5293796e+03 4.1849612e+02 1.0230868e+02 - 3.5204138e+03 4.8785401e+02 1.0175971e+02 - 3.5100740e+03 5.5703236e+02 1.0110680e+02 - 3.4983624e+03 6.2600640e+02 1.0034053e+02 - 3.4852810e+03 6.9475179e+02 9.9449425e+01 - 3.4708319e+03 7.6324469e+02 9.8419554e+01 - 3.4550170e+03 8.3146194e+02 9.7234047e+01 - 3.4378380e+03 8.9938118e+02 9.5872464e+01 - 3.4192956e+03 9.6698109e+02 9.4309976e+01 - 3.3993900e+03 1.0342417e+03 9.2516315e+01 - 3.3781199e+03 1.1011447e+03 9.0454396e+01 - 3.3554820e+03 1.1676740e+03 8.8078506e+01 - 3.3314704e+03 1.2338165e+03 8.5331900e+01 - 3.3060753e+03 1.2995631e+03 8.2143567e+01 - 3.2792815e+03 1.3649098e+03 7.8423847e+01 - 3.2510661e+03 1.4298601e+03 7.4058409e+01 - 3.2213953e+03 1.4944279e+03 6.8899885e+01 - 3.1902194e+03 1.5586417e+03 6.2756110e+01 - 3.1574655e+03 1.6225514e+03 5.5373403e+01 - 3.1230263e+03 1.6862382e+03 4.6412599e+01 - 3.0867429e+03 1.7498306e+03 3.5414521e+01 - 3.0483777e+03 1.8135288e+03 2.1750475e+01 - 3.0075724e+03 1.8776430e+03 4.5530393e+00 - 2.9637845e+03 1.9426509e+03 -1.7374010e+01 - 2.9161994e+03 2.0092769e+03 -4.5649755e+01 - 2.8636411e+03 2.0785683e+03 -8.2335535e+01 - 2.8046061e+03 2.1518470e+03 -1.2962806e+02 - 2.7378274e+03 2.2301409e+03 -1.8862684e+02 - 2.6641972e+03 2.3123068e+03 -2.5645297e+02 - 2.5901203e+03 2.3918358e+03 -3.2311002e+02 - 2.5280749e+03 2.4565405e+03 -3.7449877e+02 - 2.4890920e+03 2.4961563e+03 -4.0349024e+02 - 2.4747553e+03 2.5100828e+03 -4.1466561e+02 - 2.4787021e+03 2.5055327e+03 -4.1704380e+02 - 2.4919870e+03 2.4919870e+03 -4.1711677e+02 - 2.5055327e+03 2.4787021e+03 -4.1704380e+02 - 2.5100828e+03 2.4747553e+03 -4.1466561e+02 - 2.4961563e+03 2.4890920e+03 -4.0349024e+02 - 2.4565405e+03 2.5280749e+03 -3.7449877e+02 - 2.3918358e+03 2.5901203e+03 -3.2311002e+02 - 2.3123068e+03 2.6641972e+03 -2.5645297e+02 - 2.2301409e+03 2.7378274e+03 -1.8862684e+02 - 2.1518470e+03 2.8046061e+03 -1.2962806e+02 - 2.0785683e+03 2.8636411e+03 -8.2335535e+01 - 2.0092769e+03 2.9161994e+03 -4.5649755e+01 - 1.9426509e+03 2.9637845e+03 -1.7374010e+01 - 1.8776430e+03 3.0075724e+03 4.5530393e+00 - 1.8135288e+03 3.0483777e+03 2.1750475e+01 - 1.7498306e+03 3.0867429e+03 3.5414521e+01 - 1.6862382e+03 3.1230263e+03 4.6412599e+01 - 1.6225514e+03 3.1574655e+03 5.5373403e+01 - 1.5586417e+03 3.1902194e+03 6.2756110e+01 - 1.4944279e+03 3.2213953e+03 6.8899885e+01 - 1.4298601e+03 3.2510661e+03 7.4058409e+01 - 1.3649098e+03 3.2792815e+03 7.8423847e+01 - 1.2995631e+03 3.3060753e+03 8.2143567e+01 - 1.2338165e+03 3.3314704e+03 8.5331900e+01 - 1.1676740e+03 3.3554820e+03 8.8078506e+01 - 1.1011447e+03 3.3781199e+03 9.0454396e+01 - 1.0342417e+03 3.3993900e+03 9.2516315e+01 - 9.6698109e+02 3.4192956e+03 9.4309976e+01 - 8.9938118e+02 3.4378380e+03 9.5872464e+01 - 8.3146194e+02 3.4550170e+03 9.7234047e+01 - 7.6324469e+02 3.4708319e+03 9.8419554e+01 - 6.9475179e+02 3.4852810e+03 9.9449425e+01 - 6.2600640e+02 3.4983624e+03 1.0034053e+02 - 5.5703236e+02 3.5100740e+03 1.0110680e+02 - 4.8785401e+02 3.5204138e+03 1.0175971e+02 - 4.1849612e+02 3.5293796e+03 1.0230868e+02 - 3.4898380e+02 3.5369697e+03 1.0276139e+02 - 2.7934242e+02 3.5431821e+03 1.0312398e+02 - 2.0959756e+02 3.5480156e+03 1.0340124e+02 - 1.3977495e+02 3.5514690e+03 1.0359680e+02 - 6.9900459e+01 3.5535413e+03 1.0371314e+02 - -7.2201409e-09 3.5542322e+03 1.0375176e+02 - -6.9900459e+01 3.5535413e+03 1.0371314e+02 - -1.3977495e+02 3.5514690e+03 1.0359680e+02 - -2.0959756e+02 3.5480156e+03 1.0340124e+02 - -2.7934242e+02 3.5431821e+03 1.0312398e+02 - -3.4898380e+02 3.5369697e+03 1.0276139e+02 - -4.1849612e+02 3.5293796e+03 1.0230868e+02 - -4.8785401e+02 3.5204138e+03 1.0175971e+02 - -5.5703236e+02 3.5100740e+03 1.0110680e+02 - -6.2600640e+02 3.4983624e+03 1.0034053e+02 - -6.9475179e+02 3.4852810e+03 9.9449425e+01 - -7.6324469e+02 3.4708319e+03 9.8419554e+01 - -8.3146194e+02 3.4550170e+03 9.7234047e+01 - -8.9938118e+02 3.4378380e+03 9.5872464e+01 - -9.6698109e+02 3.4192956e+03 9.4309976e+01 - -1.0342417e+03 3.3993900e+03 9.2516315e+01 - -1.1011447e+03 3.3781199e+03 9.0454396e+01 - -1.1676740e+03 3.3554820e+03 8.8078506e+01 - -1.2338165e+03 3.3314704e+03 8.5331900e+01 - -1.2995631e+03 3.3060753e+03 8.2143567e+01 - -1.3649098e+03 3.2792815e+03 7.8423847e+01 - -1.4298601e+03 3.2510661e+03 7.4058409e+01 - -1.4944279e+03 3.2213953e+03 6.8899885e+01 - -1.5586417e+03 3.1902194e+03 6.2756110e+01 - -1.6225514e+03 3.1574655e+03 5.5373403e+01 - -1.6862382e+03 3.1230263e+03 4.6412599e+01 - -1.7498306e+03 3.0867429e+03 3.5414521e+01 - -1.8135288e+03 3.0483777e+03 2.1750475e+01 - -1.8776430e+03 3.0075724e+03 4.5530393e+00 - -1.9426509e+03 2.9637845e+03 -1.7374010e+01 - -2.0092769e+03 2.9161994e+03 -4.5649755e+01 - -2.0785683e+03 2.8636411e+03 -8.2335535e+01 - -2.1518470e+03 2.8046061e+03 -1.2962806e+02 - -2.2301409e+03 2.7378274e+03 -1.8862684e+02 - -2.3123068e+03 2.6641972e+03 -2.5645297e+02 - -2.3918358e+03 2.5901203e+03 -3.2311002e+02 - -2.4565405e+03 2.5280749e+03 -3.7449877e+02 - -2.4961563e+03 2.4890920e+03 -4.0349024e+02 - -2.5100828e+03 2.4747553e+03 -4.1466561e+02 - -2.5055327e+03 2.4787021e+03 -4.1704380e+02 - -2.4919870e+03 2.4919870e+03 -4.1711677e+02 - -2.4787021e+03 2.5055327e+03 -4.1704380e+02 - -2.4747553e+03 2.5100828e+03 -4.1466561e+02 - -2.4890920e+03 2.4961563e+03 -4.0349024e+02 - -2.5280749e+03 2.4565405e+03 -3.7449877e+02 - -2.5901203e+03 2.3918358e+03 -3.2311002e+02 - -2.6641972e+03 2.3123068e+03 -2.5645297e+02 - -2.7378274e+03 2.2301409e+03 -1.8862684e+02 - -2.8046061e+03 2.1518470e+03 -1.2962806e+02 - -2.8636411e+03 2.0785683e+03 -8.2335535e+01 - -2.9161994e+03 2.0092769e+03 -4.5649755e+01 - -2.9637845e+03 1.9426509e+03 -1.7374010e+01 - -3.0075724e+03 1.8776430e+03 4.5530393e+00 - -3.0483777e+03 1.8135288e+03 2.1750475e+01 - -3.0867429e+03 1.7498306e+03 3.5414521e+01 - -3.1230263e+03 1.6862382e+03 4.6412599e+01 - -3.1574655e+03 1.6225514e+03 5.5373403e+01 - -3.1902194e+03 1.5586417e+03 6.2756110e+01 - -3.2213953e+03 1.4944279e+03 6.8899885e+01 - -3.2510661e+03 1.4298601e+03 7.4058409e+01 - -3.2792815e+03 1.3649098e+03 7.8423847e+01 - -3.3060753e+03 1.2995631e+03 8.2143567e+01 - -3.3314704e+03 1.2338165e+03 8.5331900e+01 - -3.3554820e+03 1.1676740e+03 8.8078506e+01 - -3.3781199e+03 1.1011447e+03 9.0454396e+01 - -3.3993900e+03 1.0342417e+03 9.2516315e+01 - -3.4192956e+03 9.6698109e+02 9.4309976e+01 - -3.4378380e+03 8.9938118e+02 9.5872464e+01 - -3.4550170e+03 8.3146194e+02 9.7234047e+01 - -3.4708319e+03 7.6324469e+02 9.8419554e+01 - -3.4852810e+03 6.9475179e+02 9.9449425e+01 - -3.4983624e+03 6.2600640e+02 1.0034053e+02 - -3.5100740e+03 5.5703236e+02 1.0110680e+02 - -3.5204138e+03 4.8785401e+02 1.0175971e+02 - -3.5293796e+03 4.1849612e+02 1.0230868e+02 - -3.5369697e+03 3.4898380e+02 1.0276139e+02 - -3.5431821e+03 2.7934242e+02 1.0312398e+02 - -3.5480156e+03 2.0959756e+02 1.0340124e+02 - -3.5514690e+03 1.3977495e+02 1.0359680e+02 - -3.5535413e+03 6.9900459e+01 1.0371314e+02 - -3.5542322e+03 0.0000000e+00 1.0375176e+02 - -3.5535413e+03 -6.9900459e+01 1.0371314e+02 - -3.5514690e+03 -1.3977495e+02 1.0359680e+02 - -3.5480156e+03 -2.0959756e+02 1.0340124e+02 - -3.5431821e+03 -2.7934242e+02 1.0312398e+02 - -3.5369697e+03 -3.4898380e+02 1.0276139e+02 - -3.5293796e+03 -4.1849612e+02 1.0230868e+02 - -3.5204138e+03 -4.8785401e+02 1.0175971e+02 - -3.5100740e+03 -5.5703236e+02 1.0110680e+02 - -3.4983624e+03 -6.2600640e+02 1.0034053e+02 - -3.4852810e+03 -6.9475179e+02 9.9449425e+01 - -3.4708319e+03 -7.6324469e+02 9.8419554e+01 - -3.4550170e+03 -8.3146194e+02 9.7234047e+01 - -3.4378380e+03 -8.9938118e+02 9.5872464e+01 - -3.4192956e+03 -9.6698109e+02 9.4309976e+01 - -3.3993900e+03 -1.0342417e+03 9.2516315e+01 - -3.3781199e+03 -1.1011447e+03 9.0454396e+01 - -3.3554820e+03 -1.1676740e+03 8.8078506e+01 - -3.3314704e+03 -1.2338165e+03 8.5331900e+01 - -3.3060753e+03 -1.2995631e+03 8.2143567e+01 - -3.2792815e+03 -1.3649098e+03 7.8423847e+01 - -3.2510661e+03 -1.4298601e+03 7.4058409e+01 - -3.2213953e+03 -1.4944279e+03 6.8899885e+01 - -3.1902194e+03 -1.5586417e+03 6.2756110e+01 - -3.1574655e+03 -1.6225514e+03 5.5373403e+01 - -3.1230263e+03 -1.6862382e+03 4.6412599e+01 - -3.0867429e+03 -1.7498306e+03 3.5414521e+01 - -3.0483777e+03 -1.8135288e+03 2.1750475e+01 - -3.0075724e+03 -1.8776430e+03 4.5530393e+00 - -2.9637845e+03 -1.9426509e+03 -1.7374010e+01 - -2.9161994e+03 -2.0092769e+03 -4.5649755e+01 - -2.8636411e+03 -2.0785683e+03 -8.2335535e+01 - -2.8046061e+03 -2.1518470e+03 -1.2962806e+02 - -2.7378274e+03 -2.2301409e+03 -1.8862684e+02 - -2.6641972e+03 -2.3123068e+03 -2.5645297e+02 - -2.5901203e+03 -2.3918358e+03 -3.2311002e+02 - -2.5280749e+03 -2.4565405e+03 -3.7449877e+02 - -2.4890920e+03 -2.4961563e+03 -4.0349024e+02 - -2.4747553e+03 -2.5100828e+03 -4.1466561e+02 - -2.4787021e+03 -2.5055327e+03 -4.1704380e+02 - -2.4919870e+03 -2.4919870e+03 -4.1711677e+02 - -2.5055327e+03 -2.4787021e+03 -4.1704380e+02 - -2.5100828e+03 -2.4747553e+03 -4.1466561e+02 - -2.4961563e+03 -2.4890920e+03 -4.0349024e+02 - -2.4565405e+03 -2.5280749e+03 -3.7449877e+02 - -2.3918358e+03 -2.5901203e+03 -3.2311002e+02 - -2.3123068e+03 -2.6641972e+03 -2.5645297e+02 - -2.2301409e+03 -2.7378274e+03 -1.8862684e+02 - -2.1518470e+03 -2.8046061e+03 -1.2962806e+02 - -2.0785683e+03 -2.8636411e+03 -8.2335535e+01 - -2.0092769e+03 -2.9161994e+03 -4.5649755e+01 - -1.9426509e+03 -2.9637845e+03 -1.7374010e+01 - -1.8776430e+03 -3.0075724e+03 4.5530393e+00 - -1.8135288e+03 -3.0483777e+03 2.1750475e+01 - -1.7498306e+03 -3.0867429e+03 3.5414521e+01 - -1.6862382e+03 -3.1230263e+03 4.6412599e+01 - -1.6225514e+03 -3.1574655e+03 5.5373403e+01 - -1.5586417e+03 -3.1902194e+03 6.2756110e+01 - -1.4944279e+03 -3.2213953e+03 6.8899885e+01 - -1.4298601e+03 -3.2510661e+03 7.4058409e+01 - -1.3649098e+03 -3.2792815e+03 7.8423847e+01 - -1.2995631e+03 -3.3060753e+03 8.2143567e+01 - -1.2338165e+03 -3.3314704e+03 8.5331900e+01 - -1.1676740e+03 -3.3554820e+03 8.8078506e+01 - -1.1011447e+03 -3.3781199e+03 9.0454396e+01 - -1.0342417e+03 -3.3993900e+03 9.2516315e+01 - -9.6698109e+02 -3.4192956e+03 9.4309976e+01 - -8.9938118e+02 -3.4378380e+03 9.5872464e+01 - -8.3146194e+02 -3.4550170e+03 9.7234047e+01 - -7.6324469e+02 -3.4708319e+03 9.8419554e+01 - -6.9475179e+02 -3.4852810e+03 9.9449425e+01 - -6.2600640e+02 -3.4983624e+03 1.0034053e+02 - -5.5703236e+02 -3.5100740e+03 1.0110680e+02 - -4.8785401e+02 -3.5204138e+03 1.0175971e+02 - -4.1849612e+02 -3.5293796e+03 1.0230868e+02 - -3.4898380e+02 -3.5369697e+03 1.0276139e+02 - -2.7934242e+02 -3.5431821e+03 1.0312398e+02 - -2.0959756e+02 -3.5480156e+03 1.0340124e+02 - -1.3977495e+02 -3.5514690e+03 1.0359680e+02 - -6.9900459e+01 -3.5535413e+03 1.0371314e+02 - 2.4067136e-09 -3.5542322e+03 1.0375176e+02 - 6.9900459e+01 -3.5535413e+03 1.0371314e+02 - 1.3977495e+02 -3.5514690e+03 1.0359680e+02 - 2.0959756e+02 -3.5480156e+03 1.0340124e+02 - 2.7934242e+02 -3.5431821e+03 1.0312398e+02 - 3.4898380e+02 -3.5369697e+03 1.0276139e+02 - 4.1849612e+02 -3.5293796e+03 1.0230868e+02 - 4.8785401e+02 -3.5204138e+03 1.0175971e+02 - 5.5703236e+02 -3.5100740e+03 1.0110680e+02 - 6.2600640e+02 -3.4983624e+03 1.0034053e+02 - 6.9475179e+02 -3.4852810e+03 9.9449425e+01 - 7.6324469e+02 -3.4708319e+03 9.8419554e+01 - 8.3146194e+02 -3.4550170e+03 9.7234047e+01 - 8.9938118e+02 -3.4378380e+03 9.5872464e+01 - 9.6698109e+02 -3.4192956e+03 9.4309976e+01 - 1.0342417e+03 -3.3993900e+03 9.2516315e+01 - 1.1011447e+03 -3.3781199e+03 9.0454396e+01 - 1.1676740e+03 -3.3554820e+03 8.8078506e+01 - 1.2338165e+03 -3.3314704e+03 8.5331900e+01 - 1.2995631e+03 -3.3060753e+03 8.2143567e+01 - 1.3649098e+03 -3.2792815e+03 7.8423847e+01 - 1.4298601e+03 -3.2510661e+03 7.4058409e+01 - 1.4944279e+03 -3.2213953e+03 6.8899885e+01 - 1.5586417e+03 -3.1902194e+03 6.2756110e+01 - 1.6225514e+03 -3.1574655e+03 5.5373403e+01 - 1.6862382e+03 -3.1230263e+03 4.6412599e+01 - 1.7498306e+03 -3.0867429e+03 3.5414521e+01 - 1.8135288e+03 -3.0483777e+03 2.1750475e+01 - 1.8776430e+03 -3.0075724e+03 4.5530393e+00 - 1.9426509e+03 -2.9637845e+03 -1.7374010e+01 - 2.0092769e+03 -2.9161994e+03 -4.5649755e+01 - 2.0785683e+03 -2.8636411e+03 -8.2335535e+01 - 2.1518470e+03 -2.8046061e+03 -1.2962806e+02 - 2.2301409e+03 -2.7378274e+03 -1.8862684e+02 - 2.3123068e+03 -2.6641972e+03 -2.5645297e+02 - 2.3918358e+03 -2.5901203e+03 -3.2311002e+02 - 2.4565405e+03 -2.5280749e+03 -3.7449877e+02 - 2.4961563e+03 -2.4890920e+03 -4.0349024e+02 - 2.5100828e+03 -2.4747553e+03 -4.1466561e+02 - 2.5055327e+03 -2.4787021e+03 -4.1704380e+02 - 2.4919870e+03 -2.4919870e+03 -4.1711677e+02 - 2.4787021e+03 -2.5055327e+03 -4.1704380e+02 - 2.4747553e+03 -2.5100828e+03 -4.1466561e+02 - 2.4890920e+03 -2.4961563e+03 -4.0349024e+02 - 2.5280749e+03 -2.4565405e+03 -3.7449877e+02 - 2.5901203e+03 -2.3918358e+03 -3.2311002e+02 - 2.6641972e+03 -2.3123068e+03 -2.5645297e+02 - 2.7378274e+03 -2.2301409e+03 -1.8862684e+02 - 2.8046061e+03 -2.1518470e+03 -1.2962806e+02 - 2.8636411e+03 -2.0785683e+03 -8.2335535e+01 - 2.9161994e+03 -2.0092769e+03 -4.5649755e+01 - 2.9637845e+03 -1.9426509e+03 -1.7374010e+01 - 3.0075724e+03 -1.8776430e+03 4.5530393e+00 - 3.0483777e+03 -1.8135288e+03 2.1750475e+01 - 3.0867429e+03 -1.7498306e+03 3.5414521e+01 - 3.1230263e+03 -1.6862382e+03 4.6412599e+01 - 3.1574655e+03 -1.6225514e+03 5.5373403e+01 - 3.1902194e+03 -1.5586417e+03 6.2756110e+01 - 3.2213953e+03 -1.4944279e+03 6.8899885e+01 - 3.2510661e+03 -1.4298601e+03 7.4058409e+01 - 3.2792815e+03 -1.3649098e+03 7.8423847e+01 - 3.3060753e+03 -1.2995631e+03 8.2143567e+01 - 3.3314704e+03 -1.2338165e+03 8.5331900e+01 - 3.3554820e+03 -1.1676740e+03 8.8078506e+01 - 3.3781199e+03 -1.1011447e+03 9.0454396e+01 - 3.3993900e+03 -1.0342417e+03 9.2516315e+01 - 3.4192956e+03 -9.6698109e+02 9.4309976e+01 - 3.4378380e+03 -8.9938118e+02 9.5872464e+01 - 3.4550170e+03 -8.3146194e+02 9.7234047e+01 - 3.4708319e+03 -7.6324469e+02 9.8419554e+01 - 3.4852810e+03 -6.9475179e+02 9.9449425e+01 - 3.4983624e+03 -6.2600640e+02 1.0034053e+02 - 3.5100740e+03 -5.5703236e+02 1.0110680e+02 - 3.5204138e+03 -4.8785401e+02 1.0175971e+02 - 3.5293796e+03 -4.1849612e+02 1.0230868e+02 - 3.5369697e+03 -3.4898380e+02 1.0276139e+02 - 3.5431821e+03 -2.7934242e+02 1.0312398e+02 - 3.5480156e+03 -2.0959756e+02 1.0340124e+02 - 3.5514690e+03 -1.3977495e+02 1.0359680e+02 - 3.5535413e+03 -6.9900459e+01 1.0371314e+02 - 3.5542322e+03 -2.4067136e-09 1.0375176e+02 - 3.5552255e+03 0.0000000e+00 1.1154168e+02 - 3.5545296e+03 7.0020093e+01 1.1148073e+02 - 3.5524421e+03 1.4001503e+02 1.1129710e+02 - 3.5489631e+03 2.0995972e+02 1.1098844e+02 - 3.5440933e+03 2.7982919e+02 1.1055076e+02 - 3.5378330e+03 3.4959864e+02 1.0997832e+02 - 3.5301831e+03 4.1924355e+02 1.0926347e+02 - 3.5211441e+03 4.8873975e+02 1.0839643e+02 - 3.5107166e+03 5.5806348e+02 1.0736499e+02 - 3.4989011e+03 6.2719160e+02 1.0615413e+02 - 3.4856976e+03 6.9610163e+02 1.0474556e+02 - 3.4711058e+03 7.6477204e+02 1.0311706e+02 - 3.4551244e+03 8.3318238e+02 1.0124172e+02 - 3.4377510e+03 9.0131369e+02 9.9086924e+01 - 3.4189818e+03 9.6914882e+02 9.6613035e+01 - 3.3988107e+03 1.0366730e+03 9.3771729e+01 - 3.3772288e+03 1.1038745e+03 9.0503795e+01 - 3.3542229e+03 1.1707456e+03 8.6736269e+01 - 3.3297746e+03 1.2372839e+03 8.2378633e+01 - 3.3038579e+03 1.3034943e+03 7.7317749e+01 - 3.2764361e+03 1.3693912e+03 7.1411047e+01 - 3.2474582e+03 1.4350024e+03 6.4477292e+01 - 3.2168528e+03 1.5003745e+03 5.6283982e+01 - 3.1845192e+03 1.5655801e+03 4.6530090e+01 - 3.1503155e+03 1.6307294e+03 3.4822434e+01 - 3.1140397e+03 1.6959865e+03 2.0643653e+01 - 3.0754035e+03 1.7615933e+03 3.3100329e+00 - 3.0339940e+03 1.8279031e+03 -1.8080339e+01 - 2.9892242e+03 1.8954246e+03 -4.4700538e+01 - 2.9402807e+03 1.9648658e+03 -7.8017279e+01 - 2.8861090e+03 2.0371391e+03 -1.1969405e+02 - 2.8255609e+03 2.1132055e+03 -1.7116976e+02 - 2.7579915e+03 2.1934858e+03 -2.3256820e+02 - 2.6846792e+03 2.2764898e+03 -3.0077551e+02 - 2.6107744e+03 2.3569926e+03 -3.6787552e+02 - 2.5454746e+03 2.4260244e+03 -4.2317823e+02 - 2.4979415e+03 2.4750175e+03 -4.5965386e+02 - 2.4720052e+03 2.5009613e+03 -4.7819302e+02 - 2.4652925e+03 2.5070392e+03 -4.8492405e+02 - 2.4720634e+03 2.4996260e+03 -4.8623917e+02 - 2.4857158e+03 2.4857158e+03 -4.8622946e+02 - 2.4996260e+03 2.4720634e+03 -4.8623917e+02 - 2.5070392e+03 2.4652925e+03 -4.8492405e+02 - 2.5009613e+03 2.4720052e+03 -4.7819302e+02 - 2.4750175e+03 2.4979415e+03 -4.5965386e+02 - 2.4260244e+03 2.5454746e+03 -4.2317823e+02 - 2.3569926e+03 2.6107744e+03 -3.6787552e+02 - 2.2764898e+03 2.6846792e+03 -3.0077551e+02 - 2.1934858e+03 2.7579915e+03 -2.3256820e+02 - 2.1132055e+03 2.8255609e+03 -1.7116976e+02 - 2.0371391e+03 2.8861090e+03 -1.1969405e+02 - 1.9648658e+03 2.9402807e+03 -7.8017279e+01 - 1.8954246e+03 2.9892242e+03 -4.4700538e+01 - 1.8279031e+03 3.0339940e+03 -1.8080339e+01 - 1.7615933e+03 3.0754035e+03 3.3100329e+00 - 1.6959865e+03 3.1140397e+03 2.0643653e+01 - 1.6307294e+03 3.1503155e+03 3.4822434e+01 - 1.5655801e+03 3.1845192e+03 4.6530090e+01 - 1.5003745e+03 3.2168528e+03 5.6283982e+01 - 1.4350024e+03 3.2474582e+03 6.4477292e+01 - 1.3693912e+03 3.2764361e+03 7.1411047e+01 - 1.3034943e+03 3.3038579e+03 7.7317749e+01 - 1.2372839e+03 3.3297746e+03 8.2378633e+01 - 1.1707456e+03 3.3542229e+03 8.6736269e+01 - 1.1038745e+03 3.3772288e+03 9.0503795e+01 - 1.0366730e+03 3.3988107e+03 9.3771729e+01 - 9.6914882e+02 3.4189818e+03 9.6613035e+01 - 9.0131369e+02 3.4377510e+03 9.9086924e+01 - 8.3318238e+02 3.4551244e+03 1.0124172e+02 - 7.6477204e+02 3.4711058e+03 1.0311706e+02 - 6.9610163e+02 3.4856976e+03 1.0474556e+02 - 6.2719160e+02 3.4989011e+03 1.0615413e+02 - 5.5806348e+02 3.5107166e+03 1.0736499e+02 - 4.8873975e+02 3.5211441e+03 1.0839643e+02 - 4.1924355e+02 3.5301831e+03 1.0926347e+02 - 3.4959864e+02 3.5378330e+03 1.0997832e+02 - 2.7982919e+02 3.5440933e+03 1.1055076e+02 - 2.0995972e+02 3.5489631e+03 1.1098844e+02 - 1.4001503e+02 3.5524421e+03 1.1129710e+02 - 7.0020093e+01 3.5545296e+03 1.1148073e+02 - 0.0000000e+00 3.5552255e+03 1.1154168e+02 - -7.0020093e+01 3.5545296e+03 1.1148073e+02 - -1.4001503e+02 3.5524421e+03 1.1129710e+02 - -2.0995972e+02 3.5489631e+03 1.1098844e+02 - -2.7982919e+02 3.5440933e+03 1.1055076e+02 - -3.4959864e+02 3.5378330e+03 1.0997832e+02 - -4.1924355e+02 3.5301831e+03 1.0926347e+02 - -4.8873975e+02 3.5211441e+03 1.0839643e+02 - -5.5806348e+02 3.5107166e+03 1.0736499e+02 - -6.2719160e+02 3.4989011e+03 1.0615413e+02 - -6.9610163e+02 3.4856976e+03 1.0474556e+02 - -7.6477204e+02 3.4711058e+03 1.0311706e+02 - -8.3318238e+02 3.4551244e+03 1.0124172e+02 - -9.0131369e+02 3.4377510e+03 9.9086924e+01 - -9.6914882e+02 3.4189818e+03 9.6613035e+01 - -1.0366730e+03 3.3988107e+03 9.3771729e+01 - -1.1038745e+03 3.3772288e+03 9.0503795e+01 - -1.1707456e+03 3.3542229e+03 8.6736269e+01 - -1.2372839e+03 3.3297746e+03 8.2378633e+01 - -1.3034943e+03 3.3038579e+03 7.7317749e+01 - -1.3693912e+03 3.2764361e+03 7.1411047e+01 - -1.4350024e+03 3.2474582e+03 6.4477292e+01 - -1.5003745e+03 3.2168528e+03 5.6283982e+01 - -1.5655801e+03 3.1845192e+03 4.6530090e+01 - -1.6307294e+03 3.1503155e+03 3.4822434e+01 - -1.6959865e+03 3.1140397e+03 2.0643653e+01 - -1.7615933e+03 3.0754035e+03 3.3100329e+00 - -1.8279031e+03 3.0339940e+03 -1.8080339e+01 - -1.8954246e+03 2.9892242e+03 -4.4700538e+01 - -1.9648658e+03 2.9402807e+03 -7.8017279e+01 - -2.0371391e+03 2.8861090e+03 -1.1969405e+02 - -2.1132055e+03 2.8255609e+03 -1.7116976e+02 - -2.1934858e+03 2.7579915e+03 -2.3256820e+02 - -2.2764898e+03 2.6846792e+03 -3.0077551e+02 - -2.3569926e+03 2.6107744e+03 -3.6787552e+02 - -2.4260244e+03 2.5454746e+03 -4.2317823e+02 - -2.4750175e+03 2.4979415e+03 -4.5965386e+02 - -2.5009613e+03 2.4720052e+03 -4.7819302e+02 - -2.5070392e+03 2.4652925e+03 -4.8492405e+02 - -2.4996260e+03 2.4720634e+03 -4.8623917e+02 - -2.4857158e+03 2.4857158e+03 -4.8622946e+02 - -2.4720634e+03 2.4996260e+03 -4.8623917e+02 - -2.4652925e+03 2.5070392e+03 -4.8492405e+02 - -2.4720052e+03 2.5009613e+03 -4.7819302e+02 - -2.4979415e+03 2.4750175e+03 -4.5965386e+02 - -2.5454746e+03 2.4260244e+03 -4.2317823e+02 - -2.6107744e+03 2.3569926e+03 -3.6787552e+02 - -2.6846792e+03 2.2764898e+03 -3.0077551e+02 - -2.7579915e+03 2.1934858e+03 -2.3256820e+02 - -2.8255609e+03 2.1132055e+03 -1.7116976e+02 - -2.8861090e+03 2.0371391e+03 -1.1969405e+02 - -2.9402807e+03 1.9648658e+03 -7.8017279e+01 - -2.9892242e+03 1.8954246e+03 -4.4700538e+01 - -3.0339940e+03 1.8279031e+03 -1.8080339e+01 - -3.0754035e+03 1.7615933e+03 3.3100329e+00 - -3.1140397e+03 1.6959865e+03 2.0643653e+01 - -3.1503155e+03 1.6307294e+03 3.4822434e+01 - -3.1845192e+03 1.5655801e+03 4.6530090e+01 - -3.2168528e+03 1.5003745e+03 5.6283982e+01 - -3.2474582e+03 1.4350024e+03 6.4477292e+01 - -3.2764361e+03 1.3693912e+03 7.1411047e+01 - -3.3038579e+03 1.3034943e+03 7.7317749e+01 - -3.3297746e+03 1.2372839e+03 8.2378633e+01 - -3.3542229e+03 1.1707456e+03 8.6736269e+01 - -3.3772288e+03 1.1038745e+03 9.0503795e+01 - -3.3988107e+03 1.0366730e+03 9.3771729e+01 - -3.4189818e+03 9.6914882e+02 9.6613035e+01 - -3.4377510e+03 9.0131369e+02 9.9086924e+01 - -3.4551244e+03 8.3318238e+02 1.0124172e+02 - -3.4711058e+03 7.6477204e+02 1.0311706e+02 - -3.4856976e+03 6.9610163e+02 1.0474556e+02 - -3.4989011e+03 6.2719160e+02 1.0615413e+02 - -3.5107166e+03 5.5806348e+02 1.0736499e+02 - -3.5211441e+03 4.8873975e+02 1.0839643e+02 - -3.5301831e+03 4.1924355e+02 1.0926347e+02 - -3.5378330e+03 3.4959864e+02 1.0997832e+02 - -3.5440933e+03 2.7982919e+02 1.1055076e+02 - -3.5489631e+03 2.0995972e+02 1.1098844e+02 - -3.5524421e+03 1.4001503e+02 1.1129710e+02 - -3.5545296e+03 7.0020093e+01 1.1148073e+02 - -3.5552255e+03 0.0000000e+00 1.1154168e+02 - -3.5545296e+03 -7.0020093e+01 1.1148073e+02 - -3.5524421e+03 -1.4001503e+02 1.1129710e+02 - -3.5489631e+03 -2.0995972e+02 1.1098844e+02 - -3.5440933e+03 -2.7982919e+02 1.1055076e+02 - -3.5378330e+03 -3.4959864e+02 1.0997832e+02 - -3.5301831e+03 -4.1924355e+02 1.0926347e+02 - -3.5211441e+03 -4.8873975e+02 1.0839643e+02 - -3.5107166e+03 -5.5806348e+02 1.0736499e+02 - -3.4989011e+03 -6.2719160e+02 1.0615413e+02 - -3.4856976e+03 -6.9610163e+02 1.0474556e+02 - -3.4711058e+03 -7.6477204e+02 1.0311706e+02 - -3.4551244e+03 -8.3318238e+02 1.0124172e+02 - -3.4377510e+03 -9.0131369e+02 9.9086924e+01 - -3.4189818e+03 -9.6914882e+02 9.6613035e+01 - -3.3988107e+03 -1.0366730e+03 9.3771729e+01 - -3.3772288e+03 -1.1038745e+03 9.0503795e+01 - -3.3542229e+03 -1.1707456e+03 8.6736269e+01 - -3.3297746e+03 -1.2372839e+03 8.2378633e+01 - -3.3038579e+03 -1.3034943e+03 7.7317749e+01 - -3.2764361e+03 -1.3693912e+03 7.1411047e+01 - -3.2474582e+03 -1.4350024e+03 6.4477292e+01 - -3.2168528e+03 -1.5003745e+03 5.6283982e+01 - -3.1845192e+03 -1.5655801e+03 4.6530090e+01 - -3.1503155e+03 -1.6307294e+03 3.4822434e+01 - -3.1140397e+03 -1.6959865e+03 2.0643653e+01 - -3.0754035e+03 -1.7615933e+03 3.3100329e+00 - -3.0339940e+03 -1.8279031e+03 -1.8080339e+01 - -2.9892242e+03 -1.8954246e+03 -4.4700538e+01 - -2.9402807e+03 -1.9648658e+03 -7.8017279e+01 - -2.8861090e+03 -2.0371391e+03 -1.1969405e+02 - -2.8255609e+03 -2.1132055e+03 -1.7116976e+02 - -2.7579915e+03 -2.1934858e+03 -2.3256820e+02 - -2.6846792e+03 -2.2764898e+03 -3.0077551e+02 - -2.6107744e+03 -2.3569926e+03 -3.6787552e+02 - -2.5454746e+03 -2.4260244e+03 -4.2317823e+02 - -2.4979415e+03 -2.4750175e+03 -4.5965386e+02 - -2.4720052e+03 -2.5009613e+03 -4.7819302e+02 - -2.4652925e+03 -2.5070392e+03 -4.8492405e+02 - -2.4720634e+03 -2.4996260e+03 -4.8623917e+02 - -2.4857158e+03 -2.4857158e+03 -4.8622946e+02 - -2.4996260e+03 -2.4720634e+03 -4.8623917e+02 - -2.5070392e+03 -2.4652925e+03 -4.8492405e+02 - -2.5009613e+03 -2.4720052e+03 -4.7819302e+02 - -2.4750175e+03 -2.4979415e+03 -4.5965386e+02 - -2.4260244e+03 -2.5454746e+03 -4.2317823e+02 - -2.3569926e+03 -2.6107744e+03 -3.6787552e+02 - -2.2764898e+03 -2.6846792e+03 -3.0077551e+02 - -2.1934858e+03 -2.7579915e+03 -2.3256820e+02 - -2.1132055e+03 -2.8255609e+03 -1.7116976e+02 - -2.0371391e+03 -2.8861090e+03 -1.1969405e+02 - -1.9648658e+03 -2.9402807e+03 -7.8017279e+01 - -1.8954246e+03 -2.9892242e+03 -4.4700538e+01 - -1.8279031e+03 -3.0339940e+03 -1.8080339e+01 - -1.7615933e+03 -3.0754035e+03 3.3100329e+00 - -1.6959865e+03 -3.1140397e+03 2.0643653e+01 - -1.6307294e+03 -3.1503155e+03 3.4822434e+01 - -1.5655801e+03 -3.1845192e+03 4.6530090e+01 - -1.5003745e+03 -3.2168528e+03 5.6283982e+01 - -1.4350024e+03 -3.2474582e+03 6.4477292e+01 - -1.3693912e+03 -3.2764361e+03 7.1411047e+01 - -1.3034943e+03 -3.3038579e+03 7.7317749e+01 - -1.2372839e+03 -3.3297746e+03 8.2378633e+01 - -1.1707456e+03 -3.3542229e+03 8.6736269e+01 - -1.1038745e+03 -3.3772288e+03 9.0503795e+01 - -1.0366730e+03 -3.3988107e+03 9.3771729e+01 - -9.6914882e+02 -3.4189818e+03 9.6613035e+01 - -9.0131369e+02 -3.4377510e+03 9.9086924e+01 - -8.3318238e+02 -3.4551244e+03 1.0124172e+02 - -7.6477204e+02 -3.4711058e+03 1.0311706e+02 - -6.9610163e+02 -3.4856976e+03 1.0474556e+02 - -6.2719160e+02 -3.4989011e+03 1.0615413e+02 - -5.5806348e+02 -3.5107166e+03 1.0736499e+02 - -4.8873975e+02 -3.5211441e+03 1.0839643e+02 - -4.1924355e+02 -3.5301831e+03 1.0926347e+02 - -3.4959864e+02 -3.5378330e+03 1.0997832e+02 - -2.7982919e+02 -3.5440933e+03 1.1055076e+02 - -2.0995972e+02 -3.5489631e+03 1.1098844e+02 - -1.4001503e+02 -3.5524421e+03 1.1129710e+02 - -7.0020093e+01 -3.5545296e+03 1.1148073e+02 - 0.0000000e+00 -3.5552255e+03 1.1154168e+02 - 7.0020093e+01 -3.5545296e+03 1.1148073e+02 - 1.4001503e+02 -3.5524421e+03 1.1129710e+02 - 2.0995972e+02 -3.5489631e+03 1.1098844e+02 - 2.7982919e+02 -3.5440933e+03 1.1055076e+02 - 3.4959864e+02 -3.5378330e+03 1.0997832e+02 - 4.1924355e+02 -3.5301831e+03 1.0926347e+02 - 4.8873975e+02 -3.5211441e+03 1.0839643e+02 - 5.5806348e+02 -3.5107166e+03 1.0736499e+02 - 6.2719160e+02 -3.4989011e+03 1.0615413e+02 - 6.9610163e+02 -3.4856976e+03 1.0474556e+02 - 7.6477204e+02 -3.4711058e+03 1.0311706e+02 - 8.3318238e+02 -3.4551244e+03 1.0124172e+02 - 9.0131369e+02 -3.4377510e+03 9.9086924e+01 - 9.6914882e+02 -3.4189818e+03 9.6613035e+01 - 1.0366730e+03 -3.3988107e+03 9.3771729e+01 - 1.1038745e+03 -3.3772288e+03 9.0503795e+01 - 1.1707456e+03 -3.3542229e+03 8.6736269e+01 - 1.2372839e+03 -3.3297746e+03 8.2378633e+01 - 1.3034943e+03 -3.3038579e+03 7.7317749e+01 - 1.3693912e+03 -3.2764361e+03 7.1411047e+01 - 1.4350024e+03 -3.2474582e+03 6.4477292e+01 - 1.5003745e+03 -3.2168528e+03 5.6283982e+01 - 1.5655801e+03 -3.1845192e+03 4.6530090e+01 - 1.6307294e+03 -3.1503155e+03 3.4822434e+01 - 1.6959865e+03 -3.1140397e+03 2.0643653e+01 - 1.7615933e+03 -3.0754035e+03 3.3100329e+00 - 1.8279031e+03 -3.0339940e+03 -1.8080339e+01 - 1.8954246e+03 -2.9892242e+03 -4.4700538e+01 - 1.9648658e+03 -2.9402807e+03 -7.8017279e+01 - 2.0371391e+03 -2.8861090e+03 -1.1969405e+02 - 2.1132055e+03 -2.8255609e+03 -1.7116976e+02 - 2.1934858e+03 -2.7579915e+03 -2.3256820e+02 - 2.2764898e+03 -2.6846792e+03 -3.0077551e+02 - 2.3569926e+03 -2.6107744e+03 -3.6787552e+02 - 2.4260244e+03 -2.5454746e+03 -4.2317823e+02 - 2.4750175e+03 -2.4979415e+03 -4.5965386e+02 - 2.5009613e+03 -2.4720052e+03 -4.7819302e+02 - 2.5070392e+03 -2.4652925e+03 -4.8492405e+02 - 2.4996260e+03 -2.4720634e+03 -4.8623917e+02 - 2.4857158e+03 -2.4857158e+03 -4.8622946e+02 - 2.4720634e+03 -2.4996260e+03 -4.8623917e+02 - 2.4652925e+03 -2.5070392e+03 -4.8492405e+02 - 2.4720052e+03 -2.5009613e+03 -4.7819302e+02 - 2.4979415e+03 -2.4750175e+03 -4.5965386e+02 - 2.5454746e+03 -2.4260244e+03 -4.2317823e+02 - 2.6107744e+03 -2.3569926e+03 -3.6787552e+02 - 2.6846792e+03 -2.2764898e+03 -3.0077551e+02 - 2.7579915e+03 -2.1934858e+03 -2.3256820e+02 - 2.8255609e+03 -2.1132055e+03 -1.7116976e+02 - 2.8861090e+03 -2.0371391e+03 -1.1969405e+02 - 2.9402807e+03 -1.9648658e+03 -7.8017279e+01 - 2.9892242e+03 -1.8954246e+03 -4.4700538e+01 - 3.0339940e+03 -1.8279031e+03 -1.8080339e+01 - 3.0754035e+03 -1.7615933e+03 3.3100329e+00 - 3.1140397e+03 -1.6959865e+03 2.0643653e+01 - 3.1503155e+03 -1.6307294e+03 3.4822434e+01 - 3.1845192e+03 -1.5655801e+03 4.6530090e+01 - 3.2168528e+03 -1.5003745e+03 5.6283982e+01 - 3.2474582e+03 -1.4350024e+03 6.4477292e+01 - 3.2764361e+03 -1.3693912e+03 7.1411047e+01 - 3.3038579e+03 -1.3034943e+03 7.7317749e+01 - 3.3297746e+03 -1.2372839e+03 8.2378633e+01 - 3.3542229e+03 -1.1707456e+03 8.6736269e+01 - 3.3772288e+03 -1.1038745e+03 9.0503795e+01 - 3.3988107e+03 -1.0366730e+03 9.3771729e+01 - 3.4189818e+03 -9.6914882e+02 9.6613035e+01 - 3.4377510e+03 -9.0131369e+02 9.9086924e+01 - 3.4551244e+03 -8.3318238e+02 1.0124172e+02 - 3.4711058e+03 -7.6477204e+02 1.0311706e+02 - 3.4856976e+03 -6.9610163e+02 1.0474556e+02 - 3.4989011e+03 -6.2719160e+02 1.0615413e+02 - 3.5107166e+03 -5.5806348e+02 1.0736499e+02 - 3.5211441e+03 -4.8873975e+02 1.0839643e+02 - 3.5301831e+03 -4.1924355e+02 1.0926347e+02 - 3.5378330e+03 -3.4959864e+02 1.0997832e+02 - 3.5440933e+03 -2.7982919e+02 1.1055076e+02 - 3.5489631e+03 -2.0995972e+02 1.1098844e+02 - 3.5524421e+03 -1.4001503e+02 1.1129710e+02 - 3.5545296e+03 -7.0020093e+01 1.1148073e+02 - 3.5552255e+03 0.0000000e+00 1.1154168e+02 - 3.5557758e+03 0.0000000e+00 1.1529897e+02 - 3.5550724e+03 7.0184404e+01 1.1520852e+02 - 3.5529622e+03 1.4034492e+02 1.1493603e+02 - 3.5494451e+03 2.1045775e+02 1.1447796e+02 - 3.5445209e+03 2.8049931e+02 1.1382834e+02 - 3.5381893e+03 3.5044628e+02 1.1297858e+02 - 3.5304497e+03 4.2027580e+02 1.1191720e+02 - 3.5213011e+03 4.8996554e+02 1.1062955e+02 - 3.5107422e+03 5.5949392e+02 1.0909732e+02 - 3.4987707e+03 6.2884025e+02 1.0729798e+02 - 3.4853837e+03 6.9798505e+02 1.0520409e+02 - 3.4705768e+03 7.6691031e+02 1.0278231e+02 - 3.4543439e+03 8.3559989e+02 9.9992253e+01 - 3.4366766e+03 9.0404008e+02 9.6784970e+01 - 3.4175637e+03 9.7222020e+02 9.3100989e+01 - 3.3969895e+03 1.0401336e+03 8.8867825e+01 - 3.3749331e+03 1.1077786e+03 8.3996747e+01 - 3.3513666e+03 1.1751605e+03 7.8378558e+01 - 3.3262520e+03 1.2422934e+03 7.1878080e+01 - 3.2995385e+03 1.3092033e+03 6.4326895e+01 - 3.2711571e+03 1.3759324e+03 5.5513766e+01 - 3.2410146e+03 1.4425447e+03 4.5171984e+01 - 3.2089841e+03 1.5091343e+03 3.2962738e+01 - 3.1748921e+03 1.5758367e+03 1.8453539e+01 - 3.1385006e+03 1.6428445e+03 1.0910577e+00 - 3.0994834e+03 1.7104282e+03 -1.9830878e+01 - 3.0573954e+03 1.7789626e+03 -4.5203434e+01 - 3.0116407e+03 1.8489531e+03 -7.6120421e+01 - 2.9614539e+03 1.9210480e+03 -1.1384451e+02 - 2.9059409e+03 1.9959898e+03 -1.5964146e+02 - 2.8442842e+03 2.0744098e+03 -2.1433752e+02 - 2.7762882e+03 2.1562965e+03 -2.7743169e+02 - 2.7034041e+03 2.2400209e+03 -3.4583403e+02 - 2.6298855e+03 2.3212785e+03 -4.1310837e+02 - 2.5627740e+03 2.3932178e+03 -4.7091680e+02 - 2.5095080e+03 2.4488777e+03 -5.1296696e+02 - 2.4745081e+03 2.4845192e+03 -5.3823145e+02 - 2.4577700e+03 2.5008749e+03 -5.5033366e+02 - 2.4560346e+03 2.5018474e+03 -5.5451557e+02 - 2.4646132e+03 2.4926118e+03 -5.5521758e+02 - 2.4784863e+03 2.4784863e+03 -5.5515470e+02 - 2.4926118e+03 2.4646132e+03 -5.5521758e+02 - 2.5018474e+03 2.4560346e+03 -5.5451557e+02 - 2.5008749e+03 2.4577700e+03 -5.5033366e+02 - 2.4845192e+03 2.4745081e+03 -5.3823145e+02 - 2.4488777e+03 2.5095080e+03 -5.1296696e+02 - 2.3932178e+03 2.5627740e+03 -4.7091680e+02 - 2.3212785e+03 2.6298855e+03 -4.1310837e+02 - 2.2400209e+03 2.7034041e+03 -3.4583403e+02 - 2.1562965e+03 2.7762882e+03 -2.7743169e+02 - 2.0744098e+03 2.8442842e+03 -2.1433752e+02 - 1.9959898e+03 2.9059409e+03 -1.5964146e+02 - 1.9210480e+03 2.9614539e+03 -1.1384451e+02 - 1.8489531e+03 3.0116407e+03 -7.6120421e+01 - 1.7789626e+03 3.0573954e+03 -4.5203434e+01 - 1.7104282e+03 3.0994834e+03 -1.9830878e+01 - 1.6428445e+03 3.1385006e+03 1.0910577e+00 - 1.5758367e+03 3.1748921e+03 1.8453539e+01 - 1.5091343e+03 3.2089841e+03 3.2962738e+01 - 1.4425447e+03 3.2410146e+03 4.5171984e+01 - 1.3759324e+03 3.2711571e+03 5.5513766e+01 - 1.3092033e+03 3.2995385e+03 6.4326895e+01 - 1.2422934e+03 3.3262520e+03 7.1878080e+01 - 1.1751605e+03 3.3513666e+03 7.8378558e+01 - 1.1077786e+03 3.3749331e+03 8.3996747e+01 - 1.0401336e+03 3.3969895e+03 8.8867825e+01 - 9.7222020e+02 3.4175637e+03 9.3100989e+01 - 9.0404008e+02 3.4366766e+03 9.6784970e+01 - 8.3559989e+02 3.4543439e+03 9.9992253e+01 - 7.6691031e+02 3.4705768e+03 1.0278231e+02 - 6.9798505e+02 3.4853837e+03 1.0520409e+02 - 6.2884025e+02 3.4987707e+03 1.0729798e+02 - 5.5949392e+02 3.5107422e+03 1.0909732e+02 - 4.8996554e+02 3.5213011e+03 1.1062955e+02 - 4.2027580e+02 3.5304497e+03 1.1191720e+02 - 3.5044628e+02 3.5381893e+03 1.1297858e+02 - 2.8049931e+02 3.5445209e+03 1.1382834e+02 - 2.1045775e+02 3.5494451e+03 1.1447796e+02 - 1.4034492e+02 3.5529622e+03 1.1493603e+02 - 7.0184404e+01 3.5550724e+03 1.1520852e+02 - -2.4067136e-09 3.5557758e+03 1.1529897e+02 - -7.0184404e+01 3.5550724e+03 1.1520852e+02 - -1.4034492e+02 3.5529622e+03 1.1493603e+02 - -2.1045775e+02 3.5494451e+03 1.1447796e+02 - -2.8049931e+02 3.5445209e+03 1.1382834e+02 - -3.5044628e+02 3.5381893e+03 1.1297858e+02 - -4.2027580e+02 3.5304497e+03 1.1191720e+02 - -4.8996554e+02 3.5213011e+03 1.1062955e+02 - -5.5949392e+02 3.5107422e+03 1.0909732e+02 - -6.2884025e+02 3.4987707e+03 1.0729798e+02 - -6.9798505e+02 3.4853837e+03 1.0520409e+02 - -7.6691031e+02 3.4705768e+03 1.0278231e+02 - -8.3559989e+02 3.4543439e+03 9.9992253e+01 - -9.0404008e+02 3.4366766e+03 9.6784970e+01 - -9.7222020e+02 3.4175637e+03 9.3100989e+01 - -1.0401336e+03 3.3969895e+03 8.8867825e+01 - -1.1077786e+03 3.3749331e+03 8.3996747e+01 - -1.1751605e+03 3.3513666e+03 7.8378558e+01 - -1.2422934e+03 3.3262520e+03 7.1878080e+01 - -1.3092033e+03 3.2995385e+03 6.4326895e+01 - -1.3759324e+03 3.2711571e+03 5.5513766e+01 - -1.4425447e+03 3.2410146e+03 4.5171984e+01 - -1.5091343e+03 3.2089841e+03 3.2962738e+01 - -1.5758367e+03 3.1748921e+03 1.8453539e+01 - -1.6428445e+03 3.1385006e+03 1.0910577e+00 - -1.7104282e+03 3.0994834e+03 -1.9830878e+01 - -1.7789626e+03 3.0573954e+03 -4.5203434e+01 - -1.8489531e+03 3.0116407e+03 -7.6120421e+01 - -1.9210480e+03 2.9614539e+03 -1.1384451e+02 - -1.9959898e+03 2.9059409e+03 -1.5964146e+02 - -2.0744098e+03 2.8442842e+03 -2.1433752e+02 - -2.1562965e+03 2.7762882e+03 -2.7743169e+02 - -2.2400209e+03 2.7034041e+03 -3.4583403e+02 - -2.3212785e+03 2.6298855e+03 -4.1310837e+02 - -2.3932178e+03 2.5627740e+03 -4.7091680e+02 - -2.4488777e+03 2.5095080e+03 -5.1296696e+02 - -2.4845192e+03 2.4745081e+03 -5.3823145e+02 - -2.5008749e+03 2.4577700e+03 -5.5033366e+02 - -2.5018474e+03 2.4560346e+03 -5.5451557e+02 - -2.4926118e+03 2.4646132e+03 -5.5521758e+02 - -2.4784863e+03 2.4784863e+03 -5.5515470e+02 - -2.4646132e+03 2.4926118e+03 -5.5521758e+02 - -2.4560346e+03 2.5018474e+03 -5.5451557e+02 - -2.4577700e+03 2.5008749e+03 -5.5033366e+02 - -2.4745081e+03 2.4845192e+03 -5.3823145e+02 - -2.5095080e+03 2.4488777e+03 -5.1296696e+02 - -2.5627740e+03 2.3932178e+03 -4.7091680e+02 - -2.6298855e+03 2.3212785e+03 -4.1310837e+02 - -2.7034041e+03 2.2400209e+03 -3.4583403e+02 - -2.7762882e+03 2.1562965e+03 -2.7743169e+02 - -2.8442842e+03 2.0744098e+03 -2.1433752e+02 - -2.9059409e+03 1.9959898e+03 -1.5964146e+02 - -2.9614539e+03 1.9210480e+03 -1.1384451e+02 - -3.0116407e+03 1.8489531e+03 -7.6120421e+01 - -3.0573954e+03 1.7789626e+03 -4.5203434e+01 - -3.0994834e+03 1.7104282e+03 -1.9830878e+01 - -3.1385006e+03 1.6428445e+03 1.0910577e+00 - -3.1748921e+03 1.5758367e+03 1.8453539e+01 - -3.2089841e+03 1.5091343e+03 3.2962738e+01 - -3.2410146e+03 1.4425447e+03 4.5171984e+01 - -3.2711571e+03 1.3759324e+03 5.5513766e+01 - -3.2995385e+03 1.3092033e+03 6.4326895e+01 - -3.3262520e+03 1.2422934e+03 7.1878080e+01 - -3.3513666e+03 1.1751605e+03 7.8378558e+01 - -3.3749331e+03 1.1077786e+03 8.3996747e+01 - -3.3969895e+03 1.0401336e+03 8.8867825e+01 - -3.4175637e+03 9.7222020e+02 9.3100989e+01 - -3.4366766e+03 9.0404008e+02 9.6784970e+01 - -3.4543439e+03 8.3559989e+02 9.9992253e+01 - -3.4705768e+03 7.6691031e+02 1.0278231e+02 - -3.4853837e+03 6.9798505e+02 1.0520409e+02 - -3.4987707e+03 6.2884025e+02 1.0729798e+02 - -3.5107422e+03 5.5949392e+02 1.0909732e+02 - -3.5213011e+03 4.8996554e+02 1.1062955e+02 - -3.5304497e+03 4.2027580e+02 1.1191720e+02 - -3.5381893e+03 3.5044628e+02 1.1297858e+02 - -3.5445209e+03 2.8049931e+02 1.1382834e+02 - -3.5494451e+03 2.1045775e+02 1.1447796e+02 - -3.5529622e+03 1.4034492e+02 1.1493603e+02 - -3.5550724e+03 7.0184404e+01 1.1520852e+02 - -3.5557758e+03 -2.4067136e-09 1.1529897e+02 - -3.5550724e+03 -7.0184404e+01 1.1520852e+02 - -3.5529622e+03 -1.4034492e+02 1.1493603e+02 - -3.5494451e+03 -2.1045775e+02 1.1447796e+02 - -3.5445209e+03 -2.8049931e+02 1.1382834e+02 - -3.5381893e+03 -3.5044628e+02 1.1297858e+02 - -3.5304497e+03 -4.2027580e+02 1.1191720e+02 - -3.5213011e+03 -4.8996554e+02 1.1062955e+02 - -3.5107422e+03 -5.5949392e+02 1.0909732e+02 - -3.4987707e+03 -6.2884025e+02 1.0729798e+02 - -3.4853837e+03 -6.9798505e+02 1.0520409e+02 - -3.4705768e+03 -7.6691031e+02 1.0278231e+02 - -3.4543439e+03 -8.3559989e+02 9.9992253e+01 - -3.4366766e+03 -9.0404008e+02 9.6784970e+01 - -3.4175637e+03 -9.7222020e+02 9.3100989e+01 - -3.3969895e+03 -1.0401336e+03 8.8867825e+01 - -3.3749331e+03 -1.1077786e+03 8.3996747e+01 - -3.3513666e+03 -1.1751605e+03 7.8378558e+01 - -3.3262520e+03 -1.2422934e+03 7.1878080e+01 - -3.2995385e+03 -1.3092033e+03 6.4326895e+01 - -3.2711571e+03 -1.3759324e+03 5.5513766e+01 - -3.2410146e+03 -1.4425447e+03 4.5171984e+01 - -3.2089841e+03 -1.5091343e+03 3.2962738e+01 - -3.1748921e+03 -1.5758367e+03 1.8453539e+01 - -3.1385006e+03 -1.6428445e+03 1.0910577e+00 - -3.0994834e+03 -1.7104282e+03 -1.9830878e+01 - -3.0573954e+03 -1.7789626e+03 -4.5203434e+01 - -3.0116407e+03 -1.8489531e+03 -7.6120421e+01 - -2.9614539e+03 -1.9210480e+03 -1.1384451e+02 - -2.9059409e+03 -1.9959898e+03 -1.5964146e+02 - -2.8442842e+03 -2.0744098e+03 -2.1433752e+02 - -2.7762882e+03 -2.1562965e+03 -2.7743169e+02 - -2.7034041e+03 -2.2400209e+03 -3.4583403e+02 - -2.6298855e+03 -2.3212785e+03 -4.1310837e+02 - -2.5627740e+03 -2.3932178e+03 -4.7091680e+02 - -2.5095080e+03 -2.4488777e+03 -5.1296696e+02 - -2.4745081e+03 -2.4845192e+03 -5.3823145e+02 - -2.4577700e+03 -2.5008749e+03 -5.5033366e+02 - -2.4560346e+03 -2.5018474e+03 -5.5451557e+02 - -2.4646132e+03 -2.4926118e+03 -5.5521758e+02 - -2.4784863e+03 -2.4784863e+03 -5.5515470e+02 - -2.4926118e+03 -2.4646132e+03 -5.5521758e+02 - -2.5018474e+03 -2.4560346e+03 -5.5451557e+02 - -2.5008749e+03 -2.4577700e+03 -5.5033366e+02 - -2.4845192e+03 -2.4745081e+03 -5.3823145e+02 - -2.4488777e+03 -2.5095080e+03 -5.1296696e+02 - -2.3932178e+03 -2.5627740e+03 -4.7091680e+02 - -2.3212785e+03 -2.6298855e+03 -4.1310837e+02 - -2.2400209e+03 -2.7034041e+03 -3.4583403e+02 - -2.1562965e+03 -2.7762882e+03 -2.7743169e+02 - -2.0744098e+03 -2.8442842e+03 -2.1433752e+02 - -1.9959898e+03 -2.9059409e+03 -1.5964146e+02 - -1.9210480e+03 -2.9614539e+03 -1.1384451e+02 - -1.8489531e+03 -3.0116407e+03 -7.6120421e+01 - -1.7789626e+03 -3.0573954e+03 -4.5203434e+01 - -1.7104282e+03 -3.0994834e+03 -1.9830878e+01 - -1.6428445e+03 -3.1385006e+03 1.0910577e+00 - -1.5758367e+03 -3.1748921e+03 1.8453539e+01 - -1.5091343e+03 -3.2089841e+03 3.2962738e+01 - -1.4425447e+03 -3.2410146e+03 4.5171984e+01 - -1.3759324e+03 -3.2711571e+03 5.5513766e+01 - -1.3092033e+03 -3.2995385e+03 6.4326895e+01 - -1.2422934e+03 -3.3262520e+03 7.1878080e+01 - -1.1751605e+03 -3.3513666e+03 7.8378558e+01 - -1.1077786e+03 -3.3749331e+03 8.3996747e+01 - -1.0401336e+03 -3.3969895e+03 8.8867825e+01 - -9.7222020e+02 -3.4175637e+03 9.3100989e+01 - -9.0404008e+02 -3.4366766e+03 9.6784970e+01 - -8.3559989e+02 -3.4543439e+03 9.9992253e+01 - -7.6691031e+02 -3.4705768e+03 1.0278231e+02 - -6.9798505e+02 -3.4853837e+03 1.0520409e+02 - -6.2884025e+02 -3.4987707e+03 1.0729798e+02 - -5.5949392e+02 -3.5107422e+03 1.0909732e+02 - -4.8996554e+02 -3.5213011e+03 1.1062955e+02 - -4.2027580e+02 -3.5304497e+03 1.1191720e+02 - -3.5044628e+02 -3.5381893e+03 1.1297858e+02 - -2.8049931e+02 -3.5445209e+03 1.1382834e+02 - -2.1045775e+02 -3.5494451e+03 1.1447796e+02 - -1.4034492e+02 -3.5529622e+03 1.1493603e+02 - -7.0184404e+01 -3.5550724e+03 1.1520852e+02 - 0.0000000e+00 -3.5557758e+03 1.1529897e+02 - 7.0184404e+01 -3.5550724e+03 1.1520852e+02 - 1.4034492e+02 -3.5529622e+03 1.1493603e+02 - 2.1045775e+02 -3.5494451e+03 1.1447796e+02 - 2.8049931e+02 -3.5445209e+03 1.1382834e+02 - 3.5044628e+02 -3.5381893e+03 1.1297858e+02 - 4.2027580e+02 -3.5304497e+03 1.1191720e+02 - 4.8996554e+02 -3.5213011e+03 1.1062955e+02 - 5.5949392e+02 -3.5107422e+03 1.0909732e+02 - 6.2884025e+02 -3.4987707e+03 1.0729798e+02 - 6.9798505e+02 -3.4853837e+03 1.0520409e+02 - 7.6691031e+02 -3.4705768e+03 1.0278231e+02 - 8.3559989e+02 -3.4543439e+03 9.9992253e+01 - 9.0404008e+02 -3.4366766e+03 9.6784970e+01 - 9.7222020e+02 -3.4175637e+03 9.3100989e+01 - 1.0401336e+03 -3.3969895e+03 8.8867825e+01 - 1.1077786e+03 -3.3749331e+03 8.3996747e+01 - 1.1751605e+03 -3.3513666e+03 7.8378558e+01 - 1.2422934e+03 -3.3262520e+03 7.1878080e+01 - 1.3092033e+03 -3.2995385e+03 6.4326895e+01 - 1.3759324e+03 -3.2711571e+03 5.5513766e+01 - 1.4425447e+03 -3.2410146e+03 4.5171984e+01 - 1.5091343e+03 -3.2089841e+03 3.2962738e+01 - 1.5758367e+03 -3.1748921e+03 1.8453539e+01 - 1.6428445e+03 -3.1385006e+03 1.0910577e+00 - 1.7104282e+03 -3.0994834e+03 -1.9830878e+01 - 1.7789626e+03 -3.0573954e+03 -4.5203434e+01 - 1.8489531e+03 -3.0116407e+03 -7.6120421e+01 - 1.9210480e+03 -2.9614539e+03 -1.1384451e+02 - 1.9959898e+03 -2.9059409e+03 -1.5964146e+02 - 2.0744098e+03 -2.8442842e+03 -2.1433752e+02 - 2.1562965e+03 -2.7762882e+03 -2.7743169e+02 - 2.2400209e+03 -2.7034041e+03 -3.4583403e+02 - 2.3212785e+03 -2.6298855e+03 -4.1310837e+02 - 2.3932178e+03 -2.5627740e+03 -4.7091680e+02 - 2.4488777e+03 -2.5095080e+03 -5.1296696e+02 - 2.4845192e+03 -2.4745081e+03 -5.3823145e+02 - 2.5008749e+03 -2.4577700e+03 -5.5033366e+02 - 2.5018474e+03 -2.4560346e+03 -5.5451557e+02 - 2.4926118e+03 -2.4646132e+03 -5.5521758e+02 - 2.4784863e+03 -2.4784863e+03 -5.5515470e+02 - 2.4646132e+03 -2.4926118e+03 -5.5521758e+02 - 2.4560346e+03 -2.5018474e+03 -5.5451557e+02 - 2.4577700e+03 -2.5008749e+03 -5.5033366e+02 - 2.4745081e+03 -2.4845192e+03 -5.3823145e+02 - 2.5095080e+03 -2.4488777e+03 -5.1296696e+02 - 2.5627740e+03 -2.3932178e+03 -4.7091680e+02 - 2.6298855e+03 -2.3212785e+03 -4.1310837e+02 - 2.7034041e+03 -2.2400209e+03 -3.4583403e+02 - 2.7762882e+03 -2.1562965e+03 -2.7743169e+02 - 2.8442842e+03 -2.0744098e+03 -2.1433752e+02 - 2.9059409e+03 -1.9959898e+03 -1.5964146e+02 - 2.9614539e+03 -1.9210480e+03 -1.1384451e+02 - 3.0116407e+03 -1.8489531e+03 -7.6120421e+01 - 3.0573954e+03 -1.7789626e+03 -4.5203434e+01 - 3.0994834e+03 -1.7104282e+03 -1.9830878e+01 - 3.1385006e+03 -1.6428445e+03 1.0910577e+00 - 3.1748921e+03 -1.5758367e+03 1.8453539e+01 - 3.2089841e+03 -1.5091343e+03 3.2962738e+01 - 3.2410146e+03 -1.4425447e+03 4.5171984e+01 - 3.2711571e+03 -1.3759324e+03 5.5513766e+01 - 3.2995385e+03 -1.3092033e+03 6.4326895e+01 - 3.3262520e+03 -1.2422934e+03 7.1878080e+01 - 3.3513666e+03 -1.1751605e+03 7.8378558e+01 - 3.3749331e+03 -1.1077786e+03 8.3996747e+01 - 3.3969895e+03 -1.0401336e+03 8.8867825e+01 - 3.4175637e+03 -9.7222020e+02 9.3100989e+01 - 3.4366766e+03 -9.0404008e+02 9.6784970e+01 - 3.4543439e+03 -8.3559989e+02 9.9992253e+01 - 3.4705768e+03 -7.6691031e+02 1.0278231e+02 - 3.4853837e+03 -6.9798505e+02 1.0520409e+02 - 3.4987707e+03 -6.2884025e+02 1.0729798e+02 - 3.5107422e+03 -5.5949392e+02 1.0909732e+02 - 3.5213011e+03 -4.8996554e+02 1.1062955e+02 - 3.5304497e+03 -4.2027580e+02 1.1191720e+02 - 3.5381893e+03 -3.5044628e+02 1.1297858e+02 - 3.5445209e+03 -2.8049931e+02 1.1382834e+02 - 3.5494451e+03 -2.1045775e+02 1.1447796e+02 - 3.5529622e+03 -1.4034492e+02 1.1493603e+02 - 3.5550724e+03 -7.0184404e+01 1.1520852e+02 - 3.5557758e+03 0.0000000e+00 1.1529897e+02 - 3.5556624e+03 2.4067136e-09 1.1467132e+02 - 3.5549483e+03 7.0405557e+01 1.1454323e+02 - 3.5528057e+03 1.4078911e+02 1.1415727e+02 - 3.5492341e+03 2.1112879e+02 1.1350840e+02 - 3.5442323e+03 2.8140306e+02 1.1258808e+02 - 3.5377986e+03 3.5159082e+02 1.1138399e+02 - 3.5299306e+03 4.2167164e+02 1.0987971e+02 - 3.5206250e+03 4.9162596e+02 1.0805424e+02 - 3.5098774e+03 5.6143537e+02 1.0588134e+02 - 3.4976819e+03 6.3108290e+02 1.0332877e+02 - 3.4840308e+03 7.0055344e+02 1.0035719e+02 - 3.4689140e+03 7.6983421e+02 9.6918845e+01 - 3.4523183e+03 8.3891541e+02 9.2955909e+01 - 3.4342266e+03 9.0779105e+02 8.8398310e+01 - 3.4146163e+03 9.7645996e+02 8.3161013e+01 - 3.3934582e+03 1.0449272e+03 7.7140523e+01 - 3.3707140e+03 1.1132061e+03 7.0210425e+01 - 3.3463340e+03 1.1813203e+03 6.2215636e+01 - 3.3202524e+03 1.2493074e+03 5.2965038e+01 - 3.2923830e+03 1.3172235e+03 4.2222027e+01 - 3.2626120e+03 1.3851489e+03 2.9692489e+01 - 3.2307883e+03 1.4531964e+03 1.5009728e+01 - 3.1967116e+03 1.5215220e+03 -2.2838452e+00 - 3.1601162e+03 1.5903384e+03 -2.2757612e+01 - 3.1206514e+03 1.6599319e+03 -4.7113464e+01 - 3.0778604e+03 1.7306788e+03 -7.6198806e+01 - 3.0311654e+03 1.8030559e+03 -1.1099443e+02 - 2.9798778e+03 1.8776250e+03 -1.5254147e+02 - 2.9232758e+03 1.9549515e+03 -2.0174298e+02 - 2.8608272e+03 2.0353854e+03 -2.5894931e+02 - 2.7926563e+03 2.1186135e+03 -3.2326659e+02 - 2.7202747e+03 2.2029757e+03 -3.9173853e+02 - 2.6472726e+03 2.2848507e+03 -4.5901588e+02 - 2.5792159e+03 2.3588406e+03 -5.1842955e+02 - 2.5221447e+03 2.4193027e+03 -5.6453868e+02 - 2.4803522e+03 2.4625169e+03 -5.9544496e+02 - 2.4550828e+03 2.4878800e+03 -6.1298264e+02 - 2.4448376e+03 2.4974996e+03 -6.2103489e+02 - 2.4464978e+03 2.4950068e+03 -6.2365094e+02 - 2.4562949e+03 2.4845530e+03 -6.2396689e+02 - 2.4703012e+03 2.4703012e+03 -6.2386592e+02 - 2.4845530e+03 2.4562949e+03 -6.2396689e+02 - 2.4950068e+03 2.4464978e+03 -6.2365094e+02 - 2.4974996e+03 2.4448376e+03 -6.2103489e+02 - 2.4878800e+03 2.4550828e+03 -6.1298264e+02 - 2.4625169e+03 2.4803522e+03 -5.9544496e+02 - 2.4193027e+03 2.5221447e+03 -5.6453868e+02 - 2.3588406e+03 2.5792159e+03 -5.1842955e+02 - 2.2848507e+03 2.6472726e+03 -4.5901588e+02 - 2.2029757e+03 2.7202747e+03 -3.9173853e+02 - 2.1186135e+03 2.7926563e+03 -3.2326659e+02 - 2.0353854e+03 2.8608272e+03 -2.5894931e+02 - 1.9549515e+03 2.9232758e+03 -2.0174298e+02 - 1.8776250e+03 2.9798778e+03 -1.5254147e+02 - 1.8030559e+03 3.0311654e+03 -1.1099443e+02 - 1.7306788e+03 3.0778604e+03 -7.6198806e+01 - 1.6599319e+03 3.1206514e+03 -4.7113464e+01 - 1.5903384e+03 3.1601162e+03 -2.2757612e+01 - 1.5215220e+03 3.1967116e+03 -2.2838452e+00 - 1.4531964e+03 3.2307883e+03 1.5009728e+01 - 1.3851489e+03 3.2626120e+03 2.9692489e+01 - 1.3172235e+03 3.2923830e+03 4.2222027e+01 - 1.2493074e+03 3.3202524e+03 5.2965038e+01 - 1.1813203e+03 3.3463340e+03 6.2215636e+01 - 1.1132061e+03 3.3707140e+03 7.0210425e+01 - 1.0449272e+03 3.3934582e+03 7.7140523e+01 - 9.7645996e+02 3.4146163e+03 8.3161013e+01 - 9.0779105e+02 3.4342266e+03 8.8398310e+01 - 8.3891541e+02 3.4523183e+03 9.2955909e+01 - 7.6983421e+02 3.4689140e+03 9.6918845e+01 - 7.0055344e+02 3.4840308e+03 1.0035719e+02 - 6.3108290e+02 3.4976819e+03 1.0332877e+02 - 5.6143537e+02 3.5098774e+03 1.0588134e+02 - 4.9162596e+02 3.5206250e+03 1.0805424e+02 - 4.2167164e+02 3.5299306e+03 1.0987971e+02 - 3.5159082e+02 3.5377986e+03 1.1138399e+02 - 2.8140306e+02 3.5442323e+03 1.1258808e+02 - 2.1112879e+02 3.5492341e+03 1.1350840e+02 - 1.4078911e+02 3.5528057e+03 1.1415727e+02 - 7.0405557e+01 3.5549483e+03 1.1454323e+02 - 4.8134273e-09 3.5556624e+03 1.1467132e+02 - -7.0405557e+01 3.5549483e+03 1.1454323e+02 - -1.4078911e+02 3.5528057e+03 1.1415727e+02 - -2.1112879e+02 3.5492341e+03 1.1350840e+02 - -2.8140306e+02 3.5442323e+03 1.1258808e+02 - -3.5159082e+02 3.5377986e+03 1.1138399e+02 - -4.2167164e+02 3.5299306e+03 1.0987971e+02 - -4.9162596e+02 3.5206250e+03 1.0805424e+02 - -5.6143537e+02 3.5098774e+03 1.0588134e+02 - -6.3108290e+02 3.4976819e+03 1.0332877e+02 - -7.0055344e+02 3.4840308e+03 1.0035719e+02 - -7.6983421e+02 3.4689140e+03 9.6918845e+01 - -8.3891541e+02 3.4523183e+03 9.2955909e+01 - -9.0779105e+02 3.4342266e+03 8.8398310e+01 - -9.7645996e+02 3.4146163e+03 8.3161013e+01 - -1.0449272e+03 3.3934582e+03 7.7140523e+01 - -1.1132061e+03 3.3707140e+03 7.0210425e+01 - -1.1813203e+03 3.3463340e+03 6.2215636e+01 - -1.2493074e+03 3.3202524e+03 5.2965038e+01 - -1.3172235e+03 3.2923830e+03 4.2222027e+01 - -1.3851489e+03 3.2626120e+03 2.9692489e+01 - -1.4531964e+03 3.2307883e+03 1.5009728e+01 - -1.5215220e+03 3.1967116e+03 -2.2838452e+00 - -1.5903384e+03 3.1601162e+03 -2.2757612e+01 - -1.6599319e+03 3.1206514e+03 -4.7113464e+01 - -1.7306788e+03 3.0778604e+03 -7.6198806e+01 - -1.8030559e+03 3.0311654e+03 -1.1099443e+02 - -1.8776250e+03 2.9798778e+03 -1.5254147e+02 - -1.9549515e+03 2.9232758e+03 -2.0174298e+02 - -2.0353854e+03 2.8608272e+03 -2.5894931e+02 - -2.1186135e+03 2.7926563e+03 -3.2326659e+02 - -2.2029757e+03 2.7202747e+03 -3.9173853e+02 - -2.2848507e+03 2.6472726e+03 -4.5901588e+02 - -2.3588406e+03 2.5792159e+03 -5.1842955e+02 - -2.4193027e+03 2.5221447e+03 -5.6453868e+02 - -2.4625169e+03 2.4803522e+03 -5.9544496e+02 - -2.4878800e+03 2.4550828e+03 -6.1298264e+02 - -2.4974996e+03 2.4448376e+03 -6.2103489e+02 - -2.4950068e+03 2.4464978e+03 -6.2365094e+02 - -2.4845530e+03 2.4562949e+03 -6.2396689e+02 - -2.4703012e+03 2.4703012e+03 -6.2386592e+02 - -2.4562949e+03 2.4845530e+03 -6.2396689e+02 - -2.4464978e+03 2.4950068e+03 -6.2365094e+02 - -2.4448376e+03 2.4974996e+03 -6.2103489e+02 - -2.4550828e+03 2.4878800e+03 -6.1298264e+02 - -2.4803522e+03 2.4625169e+03 -5.9544496e+02 - -2.5221447e+03 2.4193027e+03 -5.6453868e+02 - -2.5792159e+03 2.3588406e+03 -5.1842955e+02 - -2.6472726e+03 2.2848507e+03 -4.5901588e+02 - -2.7202747e+03 2.2029757e+03 -3.9173853e+02 - -2.7926563e+03 2.1186135e+03 -3.2326659e+02 - -2.8608272e+03 2.0353854e+03 -2.5894931e+02 - -2.9232758e+03 1.9549515e+03 -2.0174298e+02 - -2.9798778e+03 1.8776250e+03 -1.5254147e+02 - -3.0311654e+03 1.8030559e+03 -1.1099443e+02 - -3.0778604e+03 1.7306788e+03 -7.6198806e+01 - -3.1206514e+03 1.6599319e+03 -4.7113464e+01 - -3.1601162e+03 1.5903384e+03 -2.2757612e+01 - -3.1967116e+03 1.5215220e+03 -2.2838452e+00 - -3.2307883e+03 1.4531964e+03 1.5009728e+01 - -3.2626120e+03 1.3851489e+03 2.9692489e+01 - -3.2923830e+03 1.3172235e+03 4.2222027e+01 - -3.3202524e+03 1.2493074e+03 5.2965038e+01 - -3.3463340e+03 1.1813203e+03 6.2215636e+01 - -3.3707140e+03 1.1132061e+03 7.0210425e+01 - -3.3934582e+03 1.0449272e+03 7.7140523e+01 - -3.4146163e+03 9.7645996e+02 8.3161013e+01 - -3.4342266e+03 9.0779105e+02 8.8398310e+01 - -3.4523183e+03 8.3891541e+02 9.2955909e+01 - -3.4689140e+03 7.6983421e+02 9.6918845e+01 - -3.4840308e+03 7.0055344e+02 1.0035719e+02 - -3.4976819e+03 6.3108290e+02 1.0332877e+02 - -3.5098774e+03 5.6143537e+02 1.0588134e+02 - -3.5206250e+03 4.9162596e+02 1.0805424e+02 - -3.5299306e+03 4.2167164e+02 1.0987971e+02 - -3.5377986e+03 3.5159082e+02 1.1138399e+02 - -3.5442323e+03 2.8140306e+02 1.1258808e+02 - -3.5492341e+03 2.1112879e+02 1.1350840e+02 - -3.5528057e+03 1.4078911e+02 1.1415727e+02 - -3.5549483e+03 7.0405557e+01 1.1454323e+02 - -3.5556624e+03 0.0000000e+00 1.1467132e+02 - -3.5549483e+03 -7.0405557e+01 1.1454323e+02 - -3.5528057e+03 -1.4078911e+02 1.1415727e+02 - -3.5492341e+03 -2.1112879e+02 1.1350840e+02 - -3.5442323e+03 -2.8140306e+02 1.1258808e+02 - -3.5377986e+03 -3.5159082e+02 1.1138399e+02 - -3.5299306e+03 -4.2167164e+02 1.0987971e+02 - -3.5206250e+03 -4.9162596e+02 1.0805424e+02 - -3.5098774e+03 -5.6143537e+02 1.0588134e+02 - -3.4976819e+03 -6.3108290e+02 1.0332877e+02 - -3.4840308e+03 -7.0055344e+02 1.0035719e+02 - -3.4689140e+03 -7.6983421e+02 9.6918845e+01 - -3.4523183e+03 -8.3891541e+02 9.2955909e+01 - -3.4342266e+03 -9.0779105e+02 8.8398310e+01 - -3.4146163e+03 -9.7645996e+02 8.3161013e+01 - -3.3934582e+03 -1.0449272e+03 7.7140523e+01 - -3.3707140e+03 -1.1132061e+03 7.0210425e+01 - -3.3463340e+03 -1.1813203e+03 6.2215636e+01 - -3.3202524e+03 -1.2493074e+03 5.2965038e+01 - -3.2923830e+03 -1.3172235e+03 4.2222027e+01 - -3.2626120e+03 -1.3851489e+03 2.9692489e+01 - -3.2307883e+03 -1.4531964e+03 1.5009728e+01 - -3.1967116e+03 -1.5215220e+03 -2.2838452e+00 - -3.1601162e+03 -1.5903384e+03 -2.2757612e+01 - -3.1206514e+03 -1.6599319e+03 -4.7113464e+01 - -3.0778604e+03 -1.7306788e+03 -7.6198806e+01 - -3.0311654e+03 -1.8030559e+03 -1.1099443e+02 - -2.9798778e+03 -1.8776250e+03 -1.5254147e+02 - -2.9232758e+03 -1.9549515e+03 -2.0174298e+02 - -2.8608272e+03 -2.0353854e+03 -2.5894931e+02 - -2.7926563e+03 -2.1186135e+03 -3.2326659e+02 - -2.7202747e+03 -2.2029757e+03 -3.9173853e+02 - -2.6472726e+03 -2.2848507e+03 -4.5901588e+02 - -2.5792159e+03 -2.3588406e+03 -5.1842955e+02 - -2.5221447e+03 -2.4193027e+03 -5.6453868e+02 - -2.4803522e+03 -2.4625169e+03 -5.9544496e+02 - -2.4550828e+03 -2.4878800e+03 -6.1298264e+02 - -2.4448376e+03 -2.4974996e+03 -6.2103489e+02 - -2.4464978e+03 -2.4950068e+03 -6.2365094e+02 - -2.4562949e+03 -2.4845530e+03 -6.2396689e+02 - -2.4703012e+03 -2.4703012e+03 -6.2386592e+02 - -2.4845530e+03 -2.4562949e+03 -6.2396689e+02 - -2.4950068e+03 -2.4464978e+03 -6.2365094e+02 - -2.4974996e+03 -2.4448376e+03 -6.2103489e+02 - -2.4878800e+03 -2.4550828e+03 -6.1298264e+02 - -2.4625169e+03 -2.4803522e+03 -5.9544496e+02 - -2.4193027e+03 -2.5221447e+03 -5.6453868e+02 - -2.3588406e+03 -2.5792159e+03 -5.1842955e+02 - -2.2848507e+03 -2.6472726e+03 -4.5901588e+02 - -2.2029757e+03 -2.7202747e+03 -3.9173853e+02 - -2.1186135e+03 -2.7926563e+03 -3.2326659e+02 - -2.0353854e+03 -2.8608272e+03 -2.5894931e+02 - -1.9549515e+03 -2.9232758e+03 -2.0174298e+02 - -1.8776250e+03 -2.9798778e+03 -1.5254147e+02 - -1.8030559e+03 -3.0311654e+03 -1.1099443e+02 - -1.7306788e+03 -3.0778604e+03 -7.6198806e+01 - -1.6599319e+03 -3.1206514e+03 -4.7113464e+01 - -1.5903384e+03 -3.1601162e+03 -2.2757612e+01 - -1.5215220e+03 -3.1967116e+03 -2.2838452e+00 - -1.4531964e+03 -3.2307883e+03 1.5009728e+01 - -1.3851489e+03 -3.2626120e+03 2.9692489e+01 - -1.3172235e+03 -3.2923830e+03 4.2222027e+01 - -1.2493074e+03 -3.3202524e+03 5.2965038e+01 - -1.1813203e+03 -3.3463340e+03 6.2215636e+01 - -1.1132061e+03 -3.3707140e+03 7.0210425e+01 - -1.0449272e+03 -3.3934582e+03 7.7140523e+01 - -9.7645996e+02 -3.4146163e+03 8.3161013e+01 - -9.0779105e+02 -3.4342266e+03 8.8398310e+01 - -8.3891541e+02 -3.4523183e+03 9.2955909e+01 - -7.6983421e+02 -3.4689140e+03 9.6918845e+01 - -7.0055344e+02 -3.4840308e+03 1.0035719e+02 - -6.3108290e+02 -3.4976819e+03 1.0332877e+02 - -5.6143537e+02 -3.5098774e+03 1.0588134e+02 - -4.9162596e+02 -3.5206250e+03 1.0805424e+02 - -4.2167164e+02 -3.5299306e+03 1.0987971e+02 - -3.5159082e+02 -3.5377986e+03 1.1138399e+02 - -2.8140306e+02 -3.5442323e+03 1.1258808e+02 - -2.1112879e+02 -3.5492341e+03 1.1350840e+02 - -1.4078911e+02 -3.5528057e+03 1.1415727e+02 - -7.0405557e+01 -3.5549483e+03 1.1454323e+02 - -4.8134273e-09 -3.5556624e+03 1.1467132e+02 - 7.0405557e+01 -3.5549483e+03 1.1454323e+02 - 1.4078911e+02 -3.5528057e+03 1.1415727e+02 - 2.1112879e+02 -3.5492341e+03 1.1350840e+02 - 2.8140306e+02 -3.5442323e+03 1.1258808e+02 - 3.5159082e+02 -3.5377986e+03 1.1138399e+02 - 4.2167164e+02 -3.5299306e+03 1.0987971e+02 - 4.9162596e+02 -3.5206250e+03 1.0805424e+02 - 5.6143537e+02 -3.5098774e+03 1.0588134e+02 - 6.3108290e+02 -3.4976819e+03 1.0332877e+02 - 7.0055344e+02 -3.4840308e+03 1.0035719e+02 - 7.6983421e+02 -3.4689140e+03 9.6918845e+01 - 8.3891541e+02 -3.4523183e+03 9.2955909e+01 - 9.0779105e+02 -3.4342266e+03 8.8398310e+01 - 9.7645996e+02 -3.4146163e+03 8.3161013e+01 - 1.0449272e+03 -3.3934582e+03 7.7140523e+01 - 1.1132061e+03 -3.3707140e+03 7.0210425e+01 - 1.1813203e+03 -3.3463340e+03 6.2215636e+01 - 1.2493074e+03 -3.3202524e+03 5.2965038e+01 - 1.3172235e+03 -3.2923830e+03 4.2222027e+01 - 1.3851489e+03 -3.2626120e+03 2.9692489e+01 - 1.4531964e+03 -3.2307883e+03 1.5009728e+01 - 1.5215220e+03 -3.1967116e+03 -2.2838452e+00 - 1.5903384e+03 -3.1601162e+03 -2.2757612e+01 - 1.6599319e+03 -3.1206514e+03 -4.7113464e+01 - 1.7306788e+03 -3.0778604e+03 -7.6198806e+01 - 1.8030559e+03 -3.0311654e+03 -1.1099443e+02 - 1.8776250e+03 -2.9798778e+03 -1.5254147e+02 - 1.9549515e+03 -2.9232758e+03 -2.0174298e+02 - 2.0353854e+03 -2.8608272e+03 -2.5894931e+02 - 2.1186135e+03 -2.7926563e+03 -3.2326659e+02 - 2.2029757e+03 -2.7202747e+03 -3.9173853e+02 - 2.2848507e+03 -2.6472726e+03 -4.5901588e+02 - 2.3588406e+03 -2.5792159e+03 -5.1842955e+02 - 2.4193027e+03 -2.5221447e+03 -5.6453868e+02 - 2.4625169e+03 -2.4803522e+03 -5.9544496e+02 - 2.4878800e+03 -2.4550828e+03 -6.1298264e+02 - 2.4974996e+03 -2.4448376e+03 -6.2103489e+02 - 2.4950068e+03 -2.4464978e+03 -6.2365094e+02 - 2.4845530e+03 -2.4562949e+03 -6.2396689e+02 - 2.4703012e+03 -2.4703012e+03 -6.2386592e+02 - 2.4562949e+03 -2.4845530e+03 -6.2396689e+02 - 2.4464978e+03 -2.4950068e+03 -6.2365094e+02 - 2.4448376e+03 -2.4974996e+03 -6.2103489e+02 - 2.4550828e+03 -2.4878800e+03 -6.1298264e+02 - 2.4803522e+03 -2.4625169e+03 -5.9544496e+02 - 2.5221447e+03 -2.4193027e+03 -5.6453868e+02 - 2.5792159e+03 -2.3588406e+03 -5.1842955e+02 - 2.6472726e+03 -2.2848507e+03 -4.5901588e+02 - 2.7202747e+03 -2.2029757e+03 -3.9173853e+02 - 2.7926563e+03 -2.1186135e+03 -3.2326659e+02 - 2.8608272e+03 -2.0353854e+03 -2.5894931e+02 - 2.9232758e+03 -1.9549515e+03 -2.0174298e+02 - 2.9798778e+03 -1.8776250e+03 -1.5254147e+02 - 3.0311654e+03 -1.8030559e+03 -1.1099443e+02 - 3.0778604e+03 -1.7306788e+03 -7.6198806e+01 - 3.1206514e+03 -1.6599319e+03 -4.7113464e+01 - 3.1601162e+03 -1.5903384e+03 -2.2757612e+01 - 3.1967116e+03 -1.5215220e+03 -2.2838452e+00 - 3.2307883e+03 -1.4531964e+03 1.5009728e+01 - 3.2626120e+03 -1.3851489e+03 2.9692489e+01 - 3.2923830e+03 -1.3172235e+03 4.2222027e+01 - 3.3202524e+03 -1.2493074e+03 5.2965038e+01 - 3.3463340e+03 -1.1813203e+03 6.2215636e+01 - 3.3707140e+03 -1.1132061e+03 7.0210425e+01 - 3.3934582e+03 -1.0449272e+03 7.7140523e+01 - 3.4146163e+03 -9.7645996e+02 8.3161013e+01 - 3.4342266e+03 -9.0779105e+02 8.8398310e+01 - 3.4523183e+03 -8.3891541e+02 9.2955909e+01 - 3.4689140e+03 -7.6983421e+02 9.6918845e+01 - 3.4840308e+03 -7.0055344e+02 1.0035719e+02 - 3.4976819e+03 -6.3108290e+02 1.0332877e+02 - 3.5098774e+03 -5.6143537e+02 1.0588134e+02 - 3.5206250e+03 -4.9162596e+02 1.0805424e+02 - 3.5299306e+03 -4.2167164e+02 1.0987971e+02 - 3.5377986e+03 -3.5159082e+02 1.1138399e+02 - 3.5442323e+03 -2.8140306e+02 1.1258808e+02 - 3.5492341e+03 -2.1112879e+02 1.1350840e+02 - 3.5528057e+03 -1.4078911e+02 1.1415727e+02 - 3.5549483e+03 -7.0405557e+01 1.1454323e+02 - 3.5556624e+03 4.8134273e-09 1.1467132e+02 - 3.5546544e+03 -4.8134273e-09 1.0937336e+02 - 3.5539254e+03 7.0698136e+01 1.0919836e+02 - 3.5517382e+03 1.4137695e+02 1.0867107e+02 - 3.5480913e+03 2.1201736e+02 1.0778451e+02 - 3.5429822e+03 2.8260070e+02 1.0652686e+02 - 3.5364073e+03 3.5310906e+02 1.0488110e+02 - 3.5283615e+03 4.2352548e+02 1.0282453e+02 - 3.5188384e+03 4.9383434e+02 1.0032810e+02 - 3.5078292e+03 5.6402174e+02 9.7355567e+01 - 3.4953227e+03 6.3407598e+02 9.3862347e+01 - 3.4813047e+03 7.0398813e+02 8.9794094e+01 - 3.4657569e+03 7.7375283e+02 8.5084894e+01 - 3.4486561e+03 8.4336919e+02 7.9654982e+01 - 3.4299726e+03 9.1284203e+02 7.3407861e+01 - 3.4096685e+03 9.8218345e+02 6.6226677e+01 - 3.3876955e+03 1.0514148e+03 5.7969651e+01 - 3.3639913e+03 1.1205696e+03 4.8464328e+01 - 3.3384763e+03 1.1896966e+03 3.7500399e+01 - 3.3110475e+03 1.2588646e+03 2.4820785e+01 - 3.2815722e+03 1.3281684e+03 1.0110774e+01 - 3.2498787e+03 1.3977362e+03 -7.0148113e+00 - 3.2157451e+03 1.4677391e+03 -2.7025900e+01 - 3.1788864e+03 1.5384017e+03 -5.0491194e+01 - 3.1389397e+03 1.6100135e+03 -7.8087698e+01 - 3.0954534e+03 1.6829368e+03 -1.1059671e+02 - 3.0478875e+03 1.7576013e+03 -1.4886862e+02 - 2.9956458e+03 1.8344690e+03 -1.9372543e+02 - 2.9381745e+03 1.9139353e+03 -2.4575426e+02 - 2.8751801e+03 1.9961181e+03 -3.0494218e+02 - 2.8070138e+03 2.0804954e+03 -3.7015216e+02 - 2.7351889e+03 2.1654316e+03 -4.3860118e+02 - 2.6627919e+03 2.2478266e+03 -5.0576021e+02 - 2.5943402e+03 2.3233186e+03 -5.6617868e+02 - 2.5347808e+03 2.3873025e+03 -6.1520484e+02 - 2.4880131e+03 2.4363697e+03 -6.5063345e+02 - 2.4558467e+03 2.4692724e+03 -6.7314160e+02 - 2.4379291e+03 2.4869204e+03 -6.8541376e+02 - 2.4323632e+03 2.4917121e+03 -6.9081826e+02 - 2.4364298e+03 2.4867808e+03 -6.9241262e+02 - 2.4470802e+03 2.4754843e+03 -6.9246721e+02 - 2.4611638e+03 2.4611638e+03 -6.9233663e+02 - 2.4754843e+03 2.4470802e+03 -6.9246721e+02 - 2.4867808e+03 2.4364298e+03 -6.9241262e+02 - 2.4917121e+03 2.4323632e+03 -6.9081826e+02 - 2.4869204e+03 2.4379291e+03 -6.8541376e+02 - 2.4692724e+03 2.4558467e+03 -6.7314160e+02 - 2.4363697e+03 2.4880131e+03 -6.5063345e+02 - 2.3873025e+03 2.5347808e+03 -6.1520484e+02 - 2.3233186e+03 2.5943402e+03 -5.6617868e+02 - 2.2478266e+03 2.6627919e+03 -5.0576021e+02 - 2.1654316e+03 2.7351889e+03 -4.3860118e+02 - 2.0804954e+03 2.8070138e+03 -3.7015216e+02 - 1.9961181e+03 2.8751801e+03 -3.0494218e+02 - 1.9139353e+03 2.9381745e+03 -2.4575426e+02 - 1.8344690e+03 2.9956458e+03 -1.9372543e+02 - 1.7576013e+03 3.0478875e+03 -1.4886862e+02 - 1.6829368e+03 3.0954534e+03 -1.1059671e+02 - 1.6100135e+03 3.1389397e+03 -7.8087698e+01 - 1.5384017e+03 3.1788864e+03 -5.0491194e+01 - 1.4677391e+03 3.2157451e+03 -2.7025900e+01 - 1.3977362e+03 3.2498787e+03 -7.0148113e+00 - 1.3281684e+03 3.2815722e+03 1.0110774e+01 - 1.2588646e+03 3.3110475e+03 2.4820785e+01 - 1.1896966e+03 3.3384763e+03 3.7500399e+01 - 1.1205696e+03 3.3639913e+03 4.8464328e+01 - 1.0514148e+03 3.3876955e+03 5.7969651e+01 - 9.8218345e+02 3.4096685e+03 6.6226677e+01 - 9.1284203e+02 3.4299726e+03 7.3407861e+01 - 8.4336919e+02 3.4486561e+03 7.9654982e+01 - 7.7375283e+02 3.4657569e+03 8.5084894e+01 - 7.0398813e+02 3.4813047e+03 8.9794094e+01 - 6.3407598e+02 3.4953227e+03 9.3862347e+01 - 5.6402174e+02 3.5078292e+03 9.7355567e+01 - 4.9383434e+02 3.5188384e+03 1.0032810e+02 - 4.2352548e+02 3.5283615e+03 1.0282453e+02 - 3.5310906e+02 3.5364073e+03 1.0488110e+02 - 2.8260070e+02 3.5429822e+03 1.0652686e+02 - 2.1201736e+02 3.5480913e+03 1.0778451e+02 - 1.4137695e+02 3.5517382e+03 1.0867107e+02 - 7.0698136e+01 3.5539254e+03 1.0919836e+02 - 0.0000000e+00 3.5546544e+03 1.0937336e+02 - -7.0698136e+01 3.5539254e+03 1.0919836e+02 - -1.4137695e+02 3.5517382e+03 1.0867107e+02 - -2.1201736e+02 3.5480913e+03 1.0778451e+02 - -2.8260070e+02 3.5429822e+03 1.0652686e+02 - -3.5310906e+02 3.5364073e+03 1.0488110e+02 - -4.2352548e+02 3.5283615e+03 1.0282453e+02 - -4.9383434e+02 3.5188384e+03 1.0032810e+02 - -5.6402174e+02 3.5078292e+03 9.7355567e+01 - -6.3407598e+02 3.4953227e+03 9.3862347e+01 - -7.0398813e+02 3.4813047e+03 8.9794094e+01 - -7.7375283e+02 3.4657569e+03 8.5084894e+01 - -8.4336919e+02 3.4486561e+03 7.9654982e+01 - -9.1284203e+02 3.4299726e+03 7.3407861e+01 - -9.8218345e+02 3.4096685e+03 6.6226677e+01 - -1.0514148e+03 3.3876955e+03 5.7969651e+01 - -1.1205696e+03 3.3639913e+03 4.8464328e+01 - -1.1896966e+03 3.3384763e+03 3.7500399e+01 - -1.2588646e+03 3.3110475e+03 2.4820785e+01 - -1.3281684e+03 3.2815722e+03 1.0110774e+01 - -1.3977362e+03 3.2498787e+03 -7.0148113e+00 - -1.4677391e+03 3.2157451e+03 -2.7025900e+01 - -1.5384017e+03 3.1788864e+03 -5.0491194e+01 - -1.6100135e+03 3.1389397e+03 -7.8087698e+01 - -1.6829368e+03 3.0954534e+03 -1.1059671e+02 - -1.7576013e+03 3.0478875e+03 -1.4886862e+02 - -1.8344690e+03 2.9956458e+03 -1.9372543e+02 - -1.9139353e+03 2.9381745e+03 -2.4575426e+02 - -1.9961181e+03 2.8751801e+03 -3.0494218e+02 - -2.0804954e+03 2.8070138e+03 -3.7015216e+02 - -2.1654316e+03 2.7351889e+03 -4.3860118e+02 - -2.2478266e+03 2.6627919e+03 -5.0576021e+02 - -2.3233186e+03 2.5943402e+03 -5.6617868e+02 - -2.3873025e+03 2.5347808e+03 -6.1520484e+02 - -2.4363697e+03 2.4880131e+03 -6.5063345e+02 - -2.4692724e+03 2.4558467e+03 -6.7314160e+02 - -2.4869204e+03 2.4379291e+03 -6.8541376e+02 - -2.4917121e+03 2.4323632e+03 -6.9081826e+02 - -2.4867808e+03 2.4364298e+03 -6.9241262e+02 - -2.4754843e+03 2.4470802e+03 -6.9246721e+02 - -2.4611638e+03 2.4611638e+03 -6.9233663e+02 - -2.4470802e+03 2.4754843e+03 -6.9246721e+02 - -2.4364298e+03 2.4867808e+03 -6.9241262e+02 - -2.4323632e+03 2.4917121e+03 -6.9081826e+02 - -2.4379291e+03 2.4869204e+03 -6.8541376e+02 - -2.4558467e+03 2.4692724e+03 -6.7314160e+02 - -2.4880131e+03 2.4363697e+03 -6.5063345e+02 - -2.5347808e+03 2.3873025e+03 -6.1520484e+02 - -2.5943402e+03 2.3233186e+03 -5.6617868e+02 - -2.6627919e+03 2.2478266e+03 -5.0576021e+02 - -2.7351889e+03 2.1654316e+03 -4.3860118e+02 - -2.8070138e+03 2.0804954e+03 -3.7015216e+02 - -2.8751801e+03 1.9961181e+03 -3.0494218e+02 - -2.9381745e+03 1.9139353e+03 -2.4575426e+02 - -2.9956458e+03 1.8344690e+03 -1.9372543e+02 - -3.0478875e+03 1.7576013e+03 -1.4886862e+02 - -3.0954534e+03 1.6829368e+03 -1.1059671e+02 - -3.1389397e+03 1.6100135e+03 -7.8087698e+01 - -3.1788864e+03 1.5384017e+03 -5.0491194e+01 - -3.2157451e+03 1.4677391e+03 -2.7025900e+01 - -3.2498787e+03 1.3977362e+03 -7.0148113e+00 - -3.2815722e+03 1.3281684e+03 1.0110774e+01 - -3.3110475e+03 1.2588646e+03 2.4820785e+01 - -3.3384763e+03 1.1896966e+03 3.7500399e+01 - -3.3639913e+03 1.1205696e+03 4.8464328e+01 - -3.3876955e+03 1.0514148e+03 5.7969651e+01 - -3.4096685e+03 9.8218345e+02 6.6226677e+01 - -3.4299726e+03 9.1284203e+02 7.3407861e+01 - -3.4486561e+03 8.4336919e+02 7.9654982e+01 - -3.4657569e+03 7.7375283e+02 8.5084894e+01 - -3.4813047e+03 7.0398813e+02 8.9794094e+01 - -3.4953227e+03 6.3407598e+02 9.3862347e+01 - -3.5078292e+03 5.6402174e+02 9.7355567e+01 - -3.5188384e+03 4.9383434e+02 1.0032810e+02 - -3.5283615e+03 4.2352548e+02 1.0282453e+02 - -3.5364073e+03 3.5310906e+02 1.0488110e+02 - -3.5429822e+03 2.8260070e+02 1.0652686e+02 - -3.5480913e+03 2.1201736e+02 1.0778451e+02 - -3.5517382e+03 1.4137695e+02 1.0867107e+02 - -3.5539254e+03 7.0698136e+01 1.0919836e+02 - -3.5546544e+03 4.8134273e-09 1.0937336e+02 - -3.5539254e+03 -7.0698136e+01 1.0919836e+02 - -3.5517382e+03 -1.4137695e+02 1.0867107e+02 - -3.5480913e+03 -2.1201736e+02 1.0778451e+02 - -3.5429822e+03 -2.8260070e+02 1.0652686e+02 - -3.5364073e+03 -3.5310906e+02 1.0488110e+02 - -3.5283615e+03 -4.2352548e+02 1.0282453e+02 - -3.5188384e+03 -4.9383434e+02 1.0032810e+02 - -3.5078292e+03 -5.6402174e+02 9.7355567e+01 - -3.4953227e+03 -6.3407598e+02 9.3862347e+01 - -3.4813047e+03 -7.0398813e+02 8.9794094e+01 - -3.4657569e+03 -7.7375283e+02 8.5084894e+01 - -3.4486561e+03 -8.4336919e+02 7.9654982e+01 - -3.4299726e+03 -9.1284203e+02 7.3407861e+01 - -3.4096685e+03 -9.8218345e+02 6.6226677e+01 - -3.3876955e+03 -1.0514148e+03 5.7969651e+01 - -3.3639913e+03 -1.1205696e+03 4.8464328e+01 - -3.3384763e+03 -1.1896966e+03 3.7500399e+01 - -3.3110475e+03 -1.2588646e+03 2.4820785e+01 - -3.2815722e+03 -1.3281684e+03 1.0110774e+01 - -3.2498787e+03 -1.3977362e+03 -7.0148113e+00 - -3.2157451e+03 -1.4677391e+03 -2.7025900e+01 - -3.1788864e+03 -1.5384017e+03 -5.0491194e+01 - -3.1389397e+03 -1.6100135e+03 -7.8087698e+01 - -3.0954534e+03 -1.6829368e+03 -1.1059671e+02 - -3.0478875e+03 -1.7576013e+03 -1.4886862e+02 - -2.9956458e+03 -1.8344690e+03 -1.9372543e+02 - -2.9381745e+03 -1.9139353e+03 -2.4575426e+02 - -2.8751801e+03 -1.9961181e+03 -3.0494218e+02 - -2.8070138e+03 -2.0804954e+03 -3.7015216e+02 - -2.7351889e+03 -2.1654316e+03 -4.3860118e+02 - -2.6627919e+03 -2.2478266e+03 -5.0576021e+02 - -2.5943402e+03 -2.3233186e+03 -5.6617868e+02 - -2.5347808e+03 -2.3873025e+03 -6.1520484e+02 - -2.4880131e+03 -2.4363697e+03 -6.5063345e+02 - -2.4558467e+03 -2.4692724e+03 -6.7314160e+02 - -2.4379291e+03 -2.4869204e+03 -6.8541376e+02 - -2.4323632e+03 -2.4917121e+03 -6.9081826e+02 - -2.4364298e+03 -2.4867808e+03 -6.9241262e+02 - -2.4470802e+03 -2.4754843e+03 -6.9246721e+02 - -2.4611638e+03 -2.4611638e+03 -6.9233663e+02 - -2.4754843e+03 -2.4470802e+03 -6.9246721e+02 - -2.4867808e+03 -2.4364298e+03 -6.9241262e+02 - -2.4917121e+03 -2.4323632e+03 -6.9081826e+02 - -2.4869204e+03 -2.4379291e+03 -6.8541376e+02 - -2.4692724e+03 -2.4558467e+03 -6.7314160e+02 - -2.4363697e+03 -2.4880131e+03 -6.5063345e+02 - -2.3873025e+03 -2.5347808e+03 -6.1520484e+02 - -2.3233186e+03 -2.5943402e+03 -5.6617868e+02 - -2.2478266e+03 -2.6627919e+03 -5.0576021e+02 - -2.1654316e+03 -2.7351889e+03 -4.3860118e+02 - -2.0804954e+03 -2.8070138e+03 -3.7015216e+02 - -1.9961181e+03 -2.8751801e+03 -3.0494218e+02 - -1.9139353e+03 -2.9381745e+03 -2.4575426e+02 - -1.8344690e+03 -2.9956458e+03 -1.9372543e+02 - -1.7576013e+03 -3.0478875e+03 -1.4886862e+02 - -1.6829368e+03 -3.0954534e+03 -1.1059671e+02 - -1.6100135e+03 -3.1389397e+03 -7.8087698e+01 - -1.5384017e+03 -3.1788864e+03 -5.0491194e+01 - -1.4677391e+03 -3.2157451e+03 -2.7025900e+01 - -1.3977362e+03 -3.2498787e+03 -7.0148113e+00 - -1.3281684e+03 -3.2815722e+03 1.0110774e+01 - -1.2588646e+03 -3.3110475e+03 2.4820785e+01 - -1.1896966e+03 -3.3384763e+03 3.7500399e+01 - -1.1205696e+03 -3.3639913e+03 4.8464328e+01 - -1.0514148e+03 -3.3876955e+03 5.7969651e+01 - -9.8218345e+02 -3.4096685e+03 6.6226677e+01 - -9.1284203e+02 -3.4299726e+03 7.3407861e+01 - -8.4336919e+02 -3.4486561e+03 7.9654982e+01 - -7.7375283e+02 -3.4657569e+03 8.5084894e+01 - -7.0398813e+02 -3.4813047e+03 8.9794094e+01 - -6.3407598e+02 -3.4953227e+03 9.3862347e+01 - -5.6402174e+02 -3.5078292e+03 9.7355567e+01 - -4.9383434e+02 -3.5188384e+03 1.0032810e+02 - -4.2352548e+02 -3.5283615e+03 1.0282453e+02 - -3.5310906e+02 -3.5364073e+03 1.0488110e+02 - -2.8260070e+02 -3.5429822e+03 1.0652686e+02 - -2.1201736e+02 -3.5480913e+03 1.0778451e+02 - -1.4137695e+02 -3.5517382e+03 1.0867107e+02 - -7.0698136e+01 -3.5539254e+03 1.0919836e+02 - -2.4067136e-09 -3.5546544e+03 1.0937336e+02 - 7.0698136e+01 -3.5539254e+03 1.0919836e+02 - 1.4137695e+02 -3.5517382e+03 1.0867107e+02 - 2.1201736e+02 -3.5480913e+03 1.0778451e+02 - 2.8260070e+02 -3.5429822e+03 1.0652686e+02 - 3.5310906e+02 -3.5364073e+03 1.0488110e+02 - 4.2352548e+02 -3.5283615e+03 1.0282453e+02 - 4.9383434e+02 -3.5188384e+03 1.0032810e+02 - 5.6402174e+02 -3.5078292e+03 9.7355567e+01 - 6.3407598e+02 -3.4953227e+03 9.3862347e+01 - 7.0398813e+02 -3.4813047e+03 8.9794094e+01 - 7.7375283e+02 -3.4657569e+03 8.5084894e+01 - 8.4336919e+02 -3.4486561e+03 7.9654982e+01 - 9.1284203e+02 -3.4299726e+03 7.3407861e+01 - 9.8218345e+02 -3.4096685e+03 6.6226677e+01 - 1.0514148e+03 -3.3876955e+03 5.7969651e+01 - 1.1205696e+03 -3.3639913e+03 4.8464328e+01 - 1.1896966e+03 -3.3384763e+03 3.7500399e+01 - 1.2588646e+03 -3.3110475e+03 2.4820785e+01 - 1.3281684e+03 -3.2815722e+03 1.0110774e+01 - 1.3977362e+03 -3.2498787e+03 -7.0148113e+00 - 1.4677391e+03 -3.2157451e+03 -2.7025900e+01 - 1.5384017e+03 -3.1788864e+03 -5.0491194e+01 - 1.6100135e+03 -3.1389397e+03 -7.8087698e+01 - 1.6829368e+03 -3.0954534e+03 -1.1059671e+02 - 1.7576013e+03 -3.0478875e+03 -1.4886862e+02 - 1.8344690e+03 -2.9956458e+03 -1.9372543e+02 - 1.9139353e+03 -2.9381745e+03 -2.4575426e+02 - 1.9961181e+03 -2.8751801e+03 -3.0494218e+02 - 2.0804954e+03 -2.8070138e+03 -3.7015216e+02 - 2.1654316e+03 -2.7351889e+03 -4.3860118e+02 - 2.2478266e+03 -2.6627919e+03 -5.0576021e+02 - 2.3233186e+03 -2.5943402e+03 -5.6617868e+02 - 2.3873025e+03 -2.5347808e+03 -6.1520484e+02 - 2.4363697e+03 -2.4880131e+03 -6.5063345e+02 - 2.4692724e+03 -2.4558467e+03 -6.7314160e+02 - 2.4869204e+03 -2.4379291e+03 -6.8541376e+02 - 2.4917121e+03 -2.4323632e+03 -6.9081826e+02 - 2.4867808e+03 -2.4364298e+03 -6.9241262e+02 - 2.4754843e+03 -2.4470802e+03 -6.9246721e+02 - 2.4611638e+03 -2.4611638e+03 -6.9233663e+02 - 2.4470802e+03 -2.4754843e+03 -6.9246721e+02 - 2.4364298e+03 -2.4867808e+03 -6.9241262e+02 - 2.4323632e+03 -2.4917121e+03 -6.9081826e+02 - 2.4379291e+03 -2.4869204e+03 -6.8541376e+02 - 2.4558467e+03 -2.4692724e+03 -6.7314160e+02 - 2.4880131e+03 -2.4363697e+03 -6.5063345e+02 - 2.5347808e+03 -2.3873025e+03 -6.1520484e+02 - 2.5943402e+03 -2.3233186e+03 -5.6617868e+02 - 2.6627919e+03 -2.2478266e+03 -5.0576021e+02 - 2.7351889e+03 -2.1654316e+03 -4.3860118e+02 - 2.8070138e+03 -2.0804954e+03 -3.7015216e+02 - 2.8751801e+03 -1.9961181e+03 -3.0494218e+02 - 2.9381745e+03 -1.9139353e+03 -2.4575426e+02 - 2.9956458e+03 -1.8344690e+03 -1.9372543e+02 - 3.0478875e+03 -1.7576013e+03 -1.4886862e+02 - 3.0954534e+03 -1.6829368e+03 -1.1059671e+02 - 3.1389397e+03 -1.6100135e+03 -7.8087698e+01 - 3.1788864e+03 -1.5384017e+03 -5.0491194e+01 - 3.2157451e+03 -1.4677391e+03 -2.7025900e+01 - 3.2498787e+03 -1.3977362e+03 -7.0148113e+00 - 3.2815722e+03 -1.3281684e+03 1.0110774e+01 - 3.3110475e+03 -1.2588646e+03 2.4820785e+01 - 3.3384763e+03 -1.1896966e+03 3.7500399e+01 - 3.3639913e+03 -1.1205696e+03 4.8464328e+01 - 3.3876955e+03 -1.0514148e+03 5.7969651e+01 - 3.4096685e+03 -9.8218345e+02 6.6226677e+01 - 3.4299726e+03 -9.1284203e+02 7.3407861e+01 - 3.4486561e+03 -8.4336919e+02 7.9654982e+01 - 3.4657569e+03 -7.7375283e+02 8.5084894e+01 - 3.4813047e+03 -7.0398813e+02 8.9794094e+01 - 3.4953227e+03 -6.3407598e+02 9.3862347e+01 - 3.5078292e+03 -5.6402174e+02 9.7355567e+01 - 3.5188384e+03 -4.9383434e+02 1.0032810e+02 - 3.5283615e+03 -4.2352548e+02 1.0282453e+02 - 3.5364073e+03 -3.5310906e+02 1.0488110e+02 - 3.5429822e+03 -2.8260070e+02 1.0652686e+02 - 3.5480913e+03 -2.1201736e+02 1.0778451e+02 - 3.5517382e+03 -1.4137695e+02 1.0867107e+02 - 3.5539254e+03 -7.0698136e+01 1.0919836e+02 - 3.5546544e+03 -2.4067136e-09 1.0937336e+02 - 3.5525149e+03 0.0000000e+00 9.9184340e+01 - 3.5517660e+03 7.1079618e+01 9.8951972e+01 - 3.5495187e+03 1.4214363e+02 9.8251773e+01 - 3.5457703e+03 2.1317678e+02 9.7074372e+01 - 3.5405167e+03 2.8416443e+02 9.5403860e+01 - 3.5337516e+03 3.5509301e+02 9.3217353e+01 - 3.5254663e+03 4.2595039e+02 9.0484334e+01 - 3.5156498e+03 4.9672636e+02 8.7165776e+01 - 3.5042873e+03 5.6741322e+02 8.3212984e+01 - 3.4913607e+03 6.3800646e+02 7.8566113e+01 - 3.4768465e+03 7.0850565e+02 7.3152292e+01 - 3.4607154e+03 7.7891545e+02 6.6883270e+01 - 3.4429305e+03 8.4924701e+02 5.9652474e+01 - 3.4234454e+03 9.1951965e+02 5.1331355e+01 - 3.4022014e+03 9.8976304e+02 4.1764863e+01 - 3.3791247e+03 1.0600199e+03 3.0765898e+01 - 3.3541221e+03 1.1303497e+03 1.8108558e+01 - 3.3270753e+03 1.2008326e+03 3.5201018e+00 - 3.2978349e+03 1.2715757e+03 -1.3328347e+01 - 3.2662120e+03 1.3427188e+03 -3.2831945e+01 - 3.2319690e+03 1.4144425e+03 -5.5461999e+01 - 3.1948090e+03 1.4869755e+03 -8.1773036e+01 - 3.1543683e+03 1.5606004e+03 -1.1240197e+02 - 3.1102135e+03 1.6356523e+03 -1.4804989e+02 - 3.0618557e+03 1.7125021e+03 -1.8943017e+02 - 3.0087978e+03 1.7915074e+03 -2.3715821e+02 - 2.9506427e+03 1.8729071e+03 -2.9155188e+02 - 2.8872939e+03 1.9566306e+03 -3.5232221e+02 - 2.8192644e+03 2.0420122e+03 -4.1818476e+02 - 2.7480394e+03 2.1274679e+03 -4.8653669e+02 - 2.6763142e+03 2.2103058e+03 -5.5348288e+02 - 2.6078365e+03 2.2869272e+03 -6.1448661e+02 - 2.5467047e+03 2.3535378e+03 -6.6557703e+02 - 2.4963577e+03 2.4071268e+03 -7.0452888e+02 - 2.4587858e+03 2.4461986e+03 -7.3132046e+02 - 2.4343270e+03 2.4709187e+03 -7.4770607e+02 - 2.4219739e+03 2.4827658e+03 -7.5633423e+02 - 2.4198636e+03 2.4840173e+03 -7.5993669e+02 - 2.4256904e+03 2.4773198e+03 -7.6082883e+02 - 2.4369551e+03 2.4654273e+03 -7.6069545e+02 - 2.4510776e+03 2.4510776e+03 -7.6054043e+02 - 2.4654273e+03 2.4369551e+03 -7.6069545e+02 - 2.4773198e+03 2.4256904e+03 -7.6082883e+02 - 2.4840173e+03 2.4198636e+03 -7.5993669e+02 - 2.4827658e+03 2.4219739e+03 -7.5633423e+02 - 2.4709187e+03 2.4343270e+03 -7.4770607e+02 - 2.4461986e+03 2.4587858e+03 -7.3132046e+02 - 2.4071268e+03 2.4963577e+03 -7.0452888e+02 - 2.3535378e+03 2.5467047e+03 -6.6557703e+02 - 2.2869272e+03 2.6078365e+03 -6.1448661e+02 - 2.2103058e+03 2.6763142e+03 -5.5348288e+02 - 2.1274679e+03 2.7480394e+03 -4.8653669e+02 - 2.0420122e+03 2.8192644e+03 -4.1818476e+02 - 1.9566306e+03 2.8872939e+03 -3.5232221e+02 - 1.8729071e+03 2.9506427e+03 -2.9155188e+02 - 1.7915074e+03 3.0087978e+03 -2.3715821e+02 - 1.7125021e+03 3.0618557e+03 -1.8943017e+02 - 1.6356523e+03 3.1102135e+03 -1.4804989e+02 - 1.5606004e+03 3.1543683e+03 -1.1240197e+02 - 1.4869755e+03 3.1948090e+03 -8.1773036e+01 - 1.4144425e+03 3.2319690e+03 -5.5461999e+01 - 1.3427188e+03 3.2662120e+03 -3.2831945e+01 - 1.2715757e+03 3.2978349e+03 -1.3328347e+01 - 1.2008326e+03 3.3270753e+03 3.5201018e+00 - 1.1303497e+03 3.3541221e+03 1.8108558e+01 - 1.0600199e+03 3.3791247e+03 3.0765898e+01 - 9.8976304e+02 3.4022014e+03 4.1764863e+01 - 9.1951965e+02 3.4234454e+03 5.1331355e+01 - 8.4924701e+02 3.4429305e+03 5.9652474e+01 - 7.7891545e+02 3.4607154e+03 6.6883270e+01 - 7.0850565e+02 3.4768465e+03 7.3152292e+01 - 6.3800646e+02 3.4913607e+03 7.8566113e+01 - 5.6741322e+02 3.5042873e+03 8.3212984e+01 - 4.9672636e+02 3.5156498e+03 8.7165776e+01 - 4.2595039e+02 3.5254663e+03 9.0484334e+01 - 3.5509301e+02 3.5337516e+03 9.3217353e+01 - 2.8416443e+02 3.5405167e+03 9.5403860e+01 - 2.1317678e+02 3.5457703e+03 9.7074372e+01 - 1.4214363e+02 3.5495187e+03 9.8251773e+01 - 7.1079618e+01 3.5517660e+03 9.8951972e+01 - -2.4067136e-09 3.5525149e+03 9.9184340e+01 - -7.1079618e+01 3.5517660e+03 9.8951972e+01 - -1.4214363e+02 3.5495187e+03 9.8251773e+01 - -2.1317678e+02 3.5457703e+03 9.7074372e+01 - -2.8416443e+02 3.5405167e+03 9.5403860e+01 - -3.5509301e+02 3.5337516e+03 9.3217353e+01 - -4.2595039e+02 3.5254663e+03 9.0484334e+01 - -4.9672636e+02 3.5156498e+03 8.7165776e+01 - -5.6741322e+02 3.5042873e+03 8.3212984e+01 - -6.3800646e+02 3.4913607e+03 7.8566113e+01 - -7.0850565e+02 3.4768465e+03 7.3152292e+01 - -7.7891545e+02 3.4607154e+03 6.6883270e+01 - -8.4924701e+02 3.4429305e+03 5.9652474e+01 - -9.1951965e+02 3.4234454e+03 5.1331355e+01 - -9.8976304e+02 3.4022014e+03 4.1764863e+01 - -1.0600199e+03 3.3791247e+03 3.0765898e+01 - -1.1303497e+03 3.3541221e+03 1.8108558e+01 - -1.2008326e+03 3.3270753e+03 3.5201018e+00 - -1.2715757e+03 3.2978349e+03 -1.3328347e+01 - -1.3427188e+03 3.2662120e+03 -3.2831945e+01 - -1.4144425e+03 3.2319690e+03 -5.5461999e+01 - -1.4869755e+03 3.1948090e+03 -8.1773036e+01 - -1.5606004e+03 3.1543683e+03 -1.1240197e+02 - -1.6356523e+03 3.1102135e+03 -1.4804989e+02 - -1.7125021e+03 3.0618557e+03 -1.8943017e+02 - -1.7915074e+03 3.0087978e+03 -2.3715821e+02 - -1.8729071e+03 2.9506427e+03 -2.9155188e+02 - -1.9566306e+03 2.8872939e+03 -3.5232221e+02 - -2.0420122e+03 2.8192644e+03 -4.1818476e+02 - -2.1274679e+03 2.7480394e+03 -4.8653669e+02 - -2.2103058e+03 2.6763142e+03 -5.5348288e+02 - -2.2869272e+03 2.6078365e+03 -6.1448661e+02 - -2.3535378e+03 2.5467047e+03 -6.6557703e+02 - -2.4071268e+03 2.4963577e+03 -7.0452888e+02 - -2.4461986e+03 2.4587858e+03 -7.3132046e+02 - -2.4709187e+03 2.4343270e+03 -7.4770607e+02 - -2.4827658e+03 2.4219739e+03 -7.5633423e+02 - -2.4840173e+03 2.4198636e+03 -7.5993669e+02 - -2.4773198e+03 2.4256904e+03 -7.6082883e+02 - -2.4654273e+03 2.4369551e+03 -7.6069545e+02 - -2.4510776e+03 2.4510776e+03 -7.6054043e+02 - -2.4369551e+03 2.4654273e+03 -7.6069545e+02 - -2.4256904e+03 2.4773198e+03 -7.6082883e+02 - -2.4198636e+03 2.4840173e+03 -7.5993669e+02 - -2.4219739e+03 2.4827658e+03 -7.5633423e+02 - -2.4343270e+03 2.4709187e+03 -7.4770607e+02 - -2.4587858e+03 2.4461986e+03 -7.3132046e+02 - -2.4963577e+03 2.4071268e+03 -7.0452888e+02 - -2.5467047e+03 2.3535378e+03 -6.6557703e+02 - -2.6078365e+03 2.2869272e+03 -6.1448661e+02 - -2.6763142e+03 2.2103058e+03 -5.5348288e+02 - -2.7480394e+03 2.1274679e+03 -4.8653669e+02 - -2.8192644e+03 2.0420122e+03 -4.1818476e+02 - -2.8872939e+03 1.9566306e+03 -3.5232221e+02 - -2.9506427e+03 1.8729071e+03 -2.9155188e+02 - -3.0087978e+03 1.7915074e+03 -2.3715821e+02 - -3.0618557e+03 1.7125021e+03 -1.8943017e+02 - -3.1102135e+03 1.6356523e+03 -1.4804989e+02 - -3.1543683e+03 1.5606004e+03 -1.1240197e+02 - -3.1948090e+03 1.4869755e+03 -8.1773036e+01 - -3.2319690e+03 1.4144425e+03 -5.5461999e+01 - -3.2662120e+03 1.3427188e+03 -3.2831945e+01 - -3.2978349e+03 1.2715757e+03 -1.3328347e+01 - -3.3270753e+03 1.2008326e+03 3.5201018e+00 - -3.3541221e+03 1.1303497e+03 1.8108558e+01 - -3.3791247e+03 1.0600199e+03 3.0765898e+01 - -3.4022014e+03 9.8976304e+02 4.1764863e+01 - -3.4234454e+03 9.1951965e+02 5.1331355e+01 - -3.4429305e+03 8.4924701e+02 5.9652474e+01 - -3.4607154e+03 7.7891545e+02 6.6883270e+01 - -3.4768465e+03 7.0850565e+02 7.3152292e+01 - -3.4913607e+03 6.3800646e+02 7.8566113e+01 - -3.5042873e+03 5.6741322e+02 8.3212984e+01 - -3.5156498e+03 4.9672636e+02 8.7165776e+01 - -3.5254663e+03 4.2595039e+02 9.0484334e+01 - -3.5337516e+03 3.5509301e+02 9.3217353e+01 - -3.5405167e+03 2.8416443e+02 9.5403860e+01 - -3.5457703e+03 2.1317678e+02 9.7074372e+01 - -3.5495187e+03 1.4214363e+02 9.8251773e+01 - -3.5517660e+03 7.1079618e+01 9.8951972e+01 - -3.5525149e+03 -2.4067136e-09 9.9184340e+01 - -3.5517660e+03 -7.1079618e+01 9.8951972e+01 - -3.5495187e+03 -1.4214363e+02 9.8251773e+01 - -3.5457703e+03 -2.1317678e+02 9.7074372e+01 - -3.5405167e+03 -2.8416443e+02 9.5403860e+01 - -3.5337516e+03 -3.5509301e+02 9.3217353e+01 - -3.5254663e+03 -4.2595039e+02 9.0484334e+01 - -3.5156498e+03 -4.9672636e+02 8.7165776e+01 - -3.5042873e+03 -5.6741322e+02 8.3212984e+01 - -3.4913607e+03 -6.3800646e+02 7.8566113e+01 - -3.4768465e+03 -7.0850565e+02 7.3152292e+01 - -3.4607154e+03 -7.7891545e+02 6.6883270e+01 - -3.4429305e+03 -8.4924701e+02 5.9652474e+01 - -3.4234454e+03 -9.1951965e+02 5.1331355e+01 - -3.4022014e+03 -9.8976304e+02 4.1764863e+01 - -3.3791247e+03 -1.0600199e+03 3.0765898e+01 - -3.3541221e+03 -1.1303497e+03 1.8108558e+01 - -3.3270753e+03 -1.2008326e+03 3.5201018e+00 - -3.2978349e+03 -1.2715757e+03 -1.3328347e+01 - -3.2662120e+03 -1.3427188e+03 -3.2831945e+01 - -3.2319690e+03 -1.4144425e+03 -5.5461999e+01 - -3.1948090e+03 -1.4869755e+03 -8.1773036e+01 - -3.1543683e+03 -1.5606004e+03 -1.1240197e+02 - -3.1102135e+03 -1.6356523e+03 -1.4804989e+02 - -3.0618557e+03 -1.7125021e+03 -1.8943017e+02 - -3.0087978e+03 -1.7915074e+03 -2.3715821e+02 - -2.9506427e+03 -1.8729071e+03 -2.9155188e+02 - -2.8872939e+03 -1.9566306e+03 -3.5232221e+02 - -2.8192644e+03 -2.0420122e+03 -4.1818476e+02 - -2.7480394e+03 -2.1274679e+03 -4.8653669e+02 - -2.6763142e+03 -2.2103058e+03 -5.5348288e+02 - -2.6078365e+03 -2.2869272e+03 -6.1448661e+02 - -2.5467047e+03 -2.3535378e+03 -6.6557703e+02 - -2.4963577e+03 -2.4071268e+03 -7.0452888e+02 - -2.4587858e+03 -2.4461986e+03 -7.3132046e+02 - -2.4343270e+03 -2.4709187e+03 -7.4770607e+02 - -2.4219739e+03 -2.4827658e+03 -7.5633423e+02 - -2.4198636e+03 -2.4840173e+03 -7.5993669e+02 - -2.4256904e+03 -2.4773198e+03 -7.6082883e+02 - -2.4369551e+03 -2.4654273e+03 -7.6069545e+02 - -2.4510776e+03 -2.4510776e+03 -7.6054043e+02 - -2.4654273e+03 -2.4369551e+03 -7.6069545e+02 - -2.4773198e+03 -2.4256904e+03 -7.6082883e+02 - -2.4840173e+03 -2.4198636e+03 -7.5993669e+02 - -2.4827658e+03 -2.4219739e+03 -7.5633423e+02 - -2.4709187e+03 -2.4343270e+03 -7.4770607e+02 - -2.4461986e+03 -2.4587858e+03 -7.3132046e+02 - -2.4071268e+03 -2.4963577e+03 -7.0452888e+02 - -2.3535378e+03 -2.5467047e+03 -6.6557703e+02 - -2.2869272e+03 -2.6078365e+03 -6.1448661e+02 - -2.2103058e+03 -2.6763142e+03 -5.5348288e+02 - -2.1274679e+03 -2.7480394e+03 -4.8653669e+02 - -2.0420122e+03 -2.8192644e+03 -4.1818476e+02 - -1.9566306e+03 -2.8872939e+03 -3.5232221e+02 - -1.8729071e+03 -2.9506427e+03 -2.9155188e+02 - -1.7915074e+03 -3.0087978e+03 -2.3715821e+02 - -1.7125021e+03 -3.0618557e+03 -1.8943017e+02 - -1.6356523e+03 -3.1102135e+03 -1.4804989e+02 - -1.5606004e+03 -3.1543683e+03 -1.1240197e+02 - -1.4869755e+03 -3.1948090e+03 -8.1773036e+01 - -1.4144425e+03 -3.2319690e+03 -5.5461999e+01 - -1.3427188e+03 -3.2662120e+03 -3.2831945e+01 - -1.2715757e+03 -3.2978349e+03 -1.3328347e+01 - -1.2008326e+03 -3.3270753e+03 3.5201018e+00 - -1.1303497e+03 -3.3541221e+03 1.8108558e+01 - -1.0600199e+03 -3.3791247e+03 3.0765898e+01 - -9.8976304e+02 -3.4022014e+03 4.1764863e+01 - -9.1951965e+02 -3.4234454e+03 5.1331355e+01 - -8.4924701e+02 -3.4429305e+03 5.9652474e+01 - -7.7891545e+02 -3.4607154e+03 6.6883270e+01 - -7.0850565e+02 -3.4768465e+03 7.3152292e+01 - -6.3800646e+02 -3.4913607e+03 7.8566113e+01 - -5.6741322e+02 -3.5042873e+03 8.3212984e+01 - -4.9672636e+02 -3.5156498e+03 8.7165776e+01 - -4.2595039e+02 -3.5254663e+03 9.0484334e+01 - -3.5509301e+02 -3.5337516e+03 9.3217353e+01 - -2.8416443e+02 -3.5405167e+03 9.5403860e+01 - -2.1317678e+02 -3.5457703e+03 9.7074372e+01 - -1.4214363e+02 -3.5495187e+03 9.8251773e+01 - -7.1079618e+01 -3.5517660e+03 9.8951972e+01 - 0.0000000e+00 -3.5525149e+03 9.9184340e+01 - 7.1079618e+01 -3.5517660e+03 9.8951972e+01 - 1.4214363e+02 -3.5495187e+03 9.8251773e+01 - 2.1317678e+02 -3.5457703e+03 9.7074372e+01 - 2.8416443e+02 -3.5405167e+03 9.5403860e+01 - 3.5509301e+02 -3.5337516e+03 9.3217353e+01 - 4.2595039e+02 -3.5254663e+03 9.0484334e+01 - 4.9672636e+02 -3.5156498e+03 8.7165776e+01 - 5.6741322e+02 -3.5042873e+03 8.3212984e+01 - 6.3800646e+02 -3.4913607e+03 7.8566113e+01 - 7.0850565e+02 -3.4768465e+03 7.3152292e+01 - 7.7891545e+02 -3.4607154e+03 6.6883270e+01 - 8.4924701e+02 -3.4429305e+03 5.9652474e+01 - 9.1951965e+02 -3.4234454e+03 5.1331355e+01 - 9.8976304e+02 -3.4022014e+03 4.1764863e+01 - 1.0600199e+03 -3.3791247e+03 3.0765898e+01 - 1.1303497e+03 -3.3541221e+03 1.8108558e+01 - 1.2008326e+03 -3.3270753e+03 3.5201018e+00 - 1.2715757e+03 -3.2978349e+03 -1.3328347e+01 - 1.3427188e+03 -3.2662120e+03 -3.2831945e+01 - 1.4144425e+03 -3.2319690e+03 -5.5461999e+01 - 1.4869755e+03 -3.1948090e+03 -8.1773036e+01 - 1.5606004e+03 -3.1543683e+03 -1.1240197e+02 - 1.6356523e+03 -3.1102135e+03 -1.4804989e+02 - 1.7125021e+03 -3.0618557e+03 -1.8943017e+02 - 1.7915074e+03 -3.0087978e+03 -2.3715821e+02 - 1.8729071e+03 -2.9506427e+03 -2.9155188e+02 - 1.9566306e+03 -2.8872939e+03 -3.5232221e+02 - 2.0420122e+03 -2.8192644e+03 -4.1818476e+02 - 2.1274679e+03 -2.7480394e+03 -4.8653669e+02 - 2.2103058e+03 -2.6763142e+03 -5.5348288e+02 - 2.2869272e+03 -2.6078365e+03 -6.1448661e+02 - 2.3535378e+03 -2.5467047e+03 -6.6557703e+02 - 2.4071268e+03 -2.4963577e+03 -7.0452888e+02 - 2.4461986e+03 -2.4587858e+03 -7.3132046e+02 - 2.4709187e+03 -2.4343270e+03 -7.4770607e+02 - 2.4827658e+03 -2.4219739e+03 -7.5633423e+02 - 2.4840173e+03 -2.4198636e+03 -7.5993669e+02 - 2.4773198e+03 -2.4256904e+03 -7.6082883e+02 - 2.4654273e+03 -2.4369551e+03 -7.6069545e+02 - 2.4510776e+03 -2.4510776e+03 -7.6054043e+02 - 2.4369551e+03 -2.4654273e+03 -7.6069545e+02 - 2.4256904e+03 -2.4773198e+03 -7.6082883e+02 - 2.4198636e+03 -2.4840173e+03 -7.5993669e+02 - 2.4219739e+03 -2.4827658e+03 -7.5633423e+02 - 2.4343270e+03 -2.4709187e+03 -7.4770607e+02 - 2.4587858e+03 -2.4461986e+03 -7.3132046e+02 - 2.4963577e+03 -2.4071268e+03 -7.0452888e+02 - 2.5467047e+03 -2.3535378e+03 -6.6557703e+02 - 2.6078365e+03 -2.2869272e+03 -6.1448661e+02 - 2.6763142e+03 -2.2103058e+03 -5.5348288e+02 - 2.7480394e+03 -2.1274679e+03 -4.8653669e+02 - 2.8192644e+03 -2.0420122e+03 -4.1818476e+02 - 2.8872939e+03 -1.9566306e+03 -3.5232221e+02 - 2.9506427e+03 -1.8729071e+03 -2.9155188e+02 - 3.0087978e+03 -1.7915074e+03 -2.3715821e+02 - 3.0618557e+03 -1.7125021e+03 -1.8943017e+02 - 3.1102135e+03 -1.6356523e+03 -1.4804989e+02 - 3.1543683e+03 -1.5606004e+03 -1.1240197e+02 - 3.1948090e+03 -1.4869755e+03 -8.1773036e+01 - 3.2319690e+03 -1.4144425e+03 -5.5461999e+01 - 3.2662120e+03 -1.3427188e+03 -3.2831945e+01 - 3.2978349e+03 -1.2715757e+03 -1.3328347e+01 - 3.3270753e+03 -1.2008326e+03 3.5201018e+00 - 3.3541221e+03 -1.1303497e+03 1.8108558e+01 - 3.3791247e+03 -1.0600199e+03 3.0765898e+01 - 3.4022014e+03 -9.8976304e+02 4.1764863e+01 - 3.4234454e+03 -9.1951965e+02 5.1331355e+01 - 3.4429305e+03 -8.4924701e+02 5.9652474e+01 - 3.4607154e+03 -7.7891545e+02 6.6883270e+01 - 3.4768465e+03 -7.0850565e+02 7.3152292e+01 - 3.4913607e+03 -6.3800646e+02 7.8566113e+01 - 3.5042873e+03 -5.6741322e+02 8.3212984e+01 - 3.5156498e+03 -4.9672636e+02 8.7165776e+01 - 3.5254663e+03 -4.2595039e+02 9.0484334e+01 - 3.5337516e+03 -3.5509301e+02 9.3217353e+01 - 3.5405167e+03 -2.8416443e+02 9.5403860e+01 - 3.5457703e+03 -2.1317678e+02 9.7074372e+01 - 3.5495187e+03 -1.4214363e+02 9.8251773e+01 - 3.5517660e+03 -7.1079618e+01 9.8951972e+01 - 3.5525149e+03 0.0000000e+00 9.9184340e+01 - 3.5490050e+03 0.0000000e+00 8.3944425e+01 - 3.5482299e+03 7.1571022e+01 8.3642754e+01 - 3.5459033e+03 1.4313146e+02 8.2733670e+01 - 3.5420212e+03 2.1467119e+02 8.1204846e+01 - 3.5365769e+03 2.8618102e+02 7.9035364e+01 - 3.5295606e+03 3.5765324e+02 7.6195139e+01 - 3.5209590e+03 4.2908215e+02 7.2644075e+01 - 3.5107545e+03 5.0046482e+02 6.8330934e+01 - 3.4989251e+03 5.7180178e+02 6.3191850e+01 - 3.4854424e+03 6.4309811e+02 5.7148450e+01 - 3.4702714e+03 7.1436451e+02 5.0105496e+01 - 3.4533679e+03 7.8561879e+02 4.1947968e+01 - 3.4346772e+03 8.5688769e+02 3.2537486e+01 - 3.4141309e+03 9.2820906e+02 2.1707969e+01 - 3.3916440e+03 9.9963463e+02 9.2604481e+00 - 3.3671107e+03 1.0712334e+03 -5.0430259e+00 - 3.3403992e+03 1.1430958e+03 -2.1486290e+01 - 3.3113458e+03 1.2153382e+03 -4.0406501e+01 - 3.2797481e+03 1.2881087e+03 -6.2201311e+01 - 3.2453577e+03 1.3615920e+03 -8.7334197e+01 - 3.2078738e+03 1.4360138e+03 -1.1633485e+02 - 3.1669405e+03 1.5116407e+03 -1.4978917e+02 - 3.1221530e+03 1.5887713e+03 -1.8830970e+02 - 3.0730821e+03 1.6677103e+03 -2.3247267e+02 - 3.0193313e+03 1.7487112e+03 -2.8270324e+02 - 2.9606463e+03 1.8318723e+03 -3.3909157e+02 - 2.8970930e+03 1.9169704e+03 -4.0113814e+02 - 2.8293007e+03 2.0032419e+03 -4.6747198e+02 - 2.7587130e+03 2.0891666e+03 -5.3566283e+02 - 2.6877148e+03 2.1723797e+03 -6.0231591e+02 - 2.6194727e+03 2.2498619e+03 -6.6359704e+02 - 2.5574218e+03 2.3184558e+03 -7.1610816e+02 - 2.5045564e+03 2.3755483e+03 -7.5774153e+02 - 2.4628445e+03 2.4196111e+03 -7.8808180e+02 - 2.4330041e+03 2.4503791e+03 -8.0821225e+02 - 2.4146381e+03 2.4686841e+03 -8.2014174e+02 - 2.4065482e+03 2.4761209e+03 -8.2618624e+02 - 2.4070498e+03 2.4747210e+03 -8.2851528e+02 - 2.4141972e+03 2.4667156e+03 -8.2890270e+02 - 2.4259129e+03 2.4543964e+03 -8.2862709e+02 - 2.4400465e+03 2.4400465e+03 -8.2845102e+02 - 2.4543964e+03 2.4259129e+03 -8.2862709e+02 - 2.4667156e+03 2.4141972e+03 -8.2890270e+02 - 2.4747210e+03 2.4070498e+03 -8.2851528e+02 - 2.4761209e+03 2.4065482e+03 -8.2618624e+02 - 2.4686841e+03 2.4146381e+03 -8.2014174e+02 - 2.4503791e+03 2.4330041e+03 -8.0821225e+02 - 2.4196111e+03 2.4628445e+03 -7.8808180e+02 - 2.3755483e+03 2.5045564e+03 -7.5774153e+02 - 2.3184558e+03 2.5574218e+03 -7.1610816e+02 - 2.2498619e+03 2.6194727e+03 -6.6359704e+02 - 2.1723797e+03 2.6877148e+03 -6.0231591e+02 - 2.0891666e+03 2.7587130e+03 -5.3566283e+02 - 2.0032419e+03 2.8293007e+03 -4.6747198e+02 - 1.9169704e+03 2.8970930e+03 -4.0113814e+02 - 1.8318723e+03 2.9606463e+03 -3.3909157e+02 - 1.7487112e+03 3.0193313e+03 -2.8270324e+02 - 1.6677103e+03 3.0730821e+03 -2.3247267e+02 - 1.5887713e+03 3.1221530e+03 -1.8830970e+02 - 1.5116407e+03 3.1669405e+03 -1.4978917e+02 - 1.4360138e+03 3.2078738e+03 -1.1633485e+02 - 1.3615920e+03 3.2453577e+03 -8.7334197e+01 - 1.2881087e+03 3.2797481e+03 -6.2201311e+01 - 1.2153382e+03 3.3113458e+03 -4.0406501e+01 - 1.1430958e+03 3.3403992e+03 -2.1486290e+01 - 1.0712334e+03 3.3671107e+03 -5.0430259e+00 - 9.9963463e+02 3.3916440e+03 9.2604481e+00 - 9.2820906e+02 3.4141309e+03 2.1707969e+01 - 8.5688769e+02 3.4346772e+03 3.2537486e+01 - 7.8561879e+02 3.4533679e+03 4.1947968e+01 - 7.1436451e+02 3.4702714e+03 5.0105496e+01 - 6.4309811e+02 3.4854424e+03 5.7148450e+01 - 5.7180178e+02 3.4989251e+03 6.3191850e+01 - 5.0046482e+02 3.5107545e+03 6.8330934e+01 - 4.2908215e+02 3.5209590e+03 7.2644075e+01 - 3.5765324e+02 3.5295606e+03 7.6195139e+01 - 2.8618102e+02 3.5365769e+03 7.9035364e+01 - 2.1467119e+02 3.5420212e+03 8.1204846e+01 - 1.4313146e+02 3.5459033e+03 8.2733670e+01 - 7.1571022e+01 3.5482299e+03 8.3642754e+01 - 0.0000000e+00 3.5490050e+03 8.3944425e+01 - -7.1571022e+01 3.5482299e+03 8.3642754e+01 - -1.4313146e+02 3.5459033e+03 8.2733670e+01 - -2.1467119e+02 3.5420212e+03 8.1204846e+01 - -2.8618102e+02 3.5365769e+03 7.9035364e+01 - -3.5765324e+02 3.5295606e+03 7.6195139e+01 - -4.2908215e+02 3.5209590e+03 7.2644075e+01 - -5.0046482e+02 3.5107545e+03 6.8330934e+01 - -5.7180178e+02 3.4989251e+03 6.3191850e+01 - -6.4309811e+02 3.4854424e+03 5.7148450e+01 - -7.1436451e+02 3.4702714e+03 5.0105496e+01 - -7.8561879e+02 3.4533679e+03 4.1947968e+01 - -8.5688769e+02 3.4346772e+03 3.2537486e+01 - -9.2820906e+02 3.4141309e+03 2.1707969e+01 - -9.9963463e+02 3.3916440e+03 9.2604481e+00 - -1.0712334e+03 3.3671107e+03 -5.0430259e+00 - -1.1430958e+03 3.3403992e+03 -2.1486290e+01 - -1.2153382e+03 3.3113458e+03 -4.0406501e+01 - -1.2881087e+03 3.2797481e+03 -6.2201311e+01 - -1.3615920e+03 3.2453577e+03 -8.7334197e+01 - -1.4360138e+03 3.2078738e+03 -1.1633485e+02 - -1.5116407e+03 3.1669405e+03 -1.4978917e+02 - -1.5887713e+03 3.1221530e+03 -1.8830970e+02 - -1.6677103e+03 3.0730821e+03 -2.3247267e+02 - -1.7487112e+03 3.0193313e+03 -2.8270324e+02 - -1.8318723e+03 2.9606463e+03 -3.3909157e+02 - -1.9169704e+03 2.8970930e+03 -4.0113814e+02 - -2.0032419e+03 2.8293007e+03 -4.6747198e+02 - -2.0891666e+03 2.7587130e+03 -5.3566283e+02 - -2.1723797e+03 2.6877148e+03 -6.0231591e+02 - -2.2498619e+03 2.6194727e+03 -6.6359704e+02 - -2.3184558e+03 2.5574218e+03 -7.1610816e+02 - -2.3755483e+03 2.5045564e+03 -7.5774153e+02 - -2.4196111e+03 2.4628445e+03 -7.8808180e+02 - -2.4503791e+03 2.4330041e+03 -8.0821225e+02 - -2.4686841e+03 2.4146381e+03 -8.2014174e+02 - -2.4761209e+03 2.4065482e+03 -8.2618624e+02 - -2.4747210e+03 2.4070498e+03 -8.2851528e+02 - -2.4667156e+03 2.4141972e+03 -8.2890270e+02 - -2.4543964e+03 2.4259129e+03 -8.2862709e+02 - -2.4400465e+03 2.4400465e+03 -8.2845102e+02 - -2.4259129e+03 2.4543964e+03 -8.2862709e+02 - -2.4141972e+03 2.4667156e+03 -8.2890270e+02 - -2.4070498e+03 2.4747210e+03 -8.2851528e+02 - -2.4065482e+03 2.4761209e+03 -8.2618624e+02 - -2.4146381e+03 2.4686841e+03 -8.2014174e+02 - -2.4330041e+03 2.4503791e+03 -8.0821225e+02 - -2.4628445e+03 2.4196111e+03 -7.8808180e+02 - -2.5045564e+03 2.3755483e+03 -7.5774153e+02 - -2.5574218e+03 2.3184558e+03 -7.1610816e+02 - -2.6194727e+03 2.2498619e+03 -6.6359704e+02 - -2.6877148e+03 2.1723797e+03 -6.0231591e+02 - -2.7587130e+03 2.0891666e+03 -5.3566283e+02 - -2.8293007e+03 2.0032419e+03 -4.6747198e+02 - -2.8970930e+03 1.9169704e+03 -4.0113814e+02 - -2.9606463e+03 1.8318723e+03 -3.3909157e+02 - -3.0193313e+03 1.7487112e+03 -2.8270324e+02 - -3.0730821e+03 1.6677103e+03 -2.3247267e+02 - -3.1221530e+03 1.5887713e+03 -1.8830970e+02 - -3.1669405e+03 1.5116407e+03 -1.4978917e+02 - -3.2078738e+03 1.4360138e+03 -1.1633485e+02 - -3.2453577e+03 1.3615920e+03 -8.7334197e+01 - -3.2797481e+03 1.2881087e+03 -6.2201311e+01 - -3.3113458e+03 1.2153382e+03 -4.0406501e+01 - -3.3403992e+03 1.1430958e+03 -2.1486290e+01 - -3.3671107e+03 1.0712334e+03 -5.0430259e+00 - -3.3916440e+03 9.9963463e+02 9.2604481e+00 - -3.4141309e+03 9.2820906e+02 2.1707969e+01 - -3.4346772e+03 8.5688769e+02 3.2537486e+01 - -3.4533679e+03 7.8561879e+02 4.1947968e+01 - -3.4702714e+03 7.1436451e+02 5.0105496e+01 - -3.4854424e+03 6.4309811e+02 5.7148450e+01 - -3.4989251e+03 5.7180178e+02 6.3191850e+01 - -3.5107545e+03 5.0046482e+02 6.8330934e+01 - -3.5209590e+03 4.2908215e+02 7.2644075e+01 - -3.5295606e+03 3.5765324e+02 7.6195139e+01 - -3.5365769e+03 2.8618102e+02 7.9035364e+01 - -3.5420212e+03 2.1467119e+02 8.1204846e+01 - -3.5459033e+03 1.4313146e+02 8.2733670e+01 - -3.5482299e+03 7.1571022e+01 8.3642754e+01 - -3.5490050e+03 2.4067136e-09 8.3944425e+01 - -3.5482299e+03 -7.1571022e+01 8.3642754e+01 - -3.5459033e+03 -1.4313146e+02 8.2733670e+01 - -3.5420212e+03 -2.1467119e+02 8.1204846e+01 - -3.5365769e+03 -2.8618102e+02 7.9035364e+01 - -3.5295606e+03 -3.5765324e+02 7.6195139e+01 - -3.5209590e+03 -4.2908215e+02 7.2644075e+01 - -3.5107545e+03 -5.0046482e+02 6.8330934e+01 - -3.4989251e+03 -5.7180178e+02 6.3191850e+01 - -3.4854424e+03 -6.4309811e+02 5.7148450e+01 - -3.4702714e+03 -7.1436451e+02 5.0105496e+01 - -3.4533679e+03 -7.8561879e+02 4.1947968e+01 - -3.4346772e+03 -8.5688769e+02 3.2537486e+01 - -3.4141309e+03 -9.2820906e+02 2.1707969e+01 - -3.3916440e+03 -9.9963463e+02 9.2604481e+00 - -3.3671107e+03 -1.0712334e+03 -5.0430259e+00 - -3.3403992e+03 -1.1430958e+03 -2.1486290e+01 - -3.3113458e+03 -1.2153382e+03 -4.0406501e+01 - -3.2797481e+03 -1.2881087e+03 -6.2201311e+01 - -3.2453577e+03 -1.3615920e+03 -8.7334197e+01 - -3.2078738e+03 -1.4360138e+03 -1.1633485e+02 - -3.1669405e+03 -1.5116407e+03 -1.4978917e+02 - -3.1221530e+03 -1.5887713e+03 -1.8830970e+02 - -3.0730821e+03 -1.6677103e+03 -2.3247267e+02 - -3.0193313e+03 -1.7487112e+03 -2.8270324e+02 - -2.9606463e+03 -1.8318723e+03 -3.3909157e+02 - -2.8970930e+03 -1.9169704e+03 -4.0113814e+02 - -2.8293007e+03 -2.0032419e+03 -4.6747198e+02 - -2.7587130e+03 -2.0891666e+03 -5.3566283e+02 - -2.6877148e+03 -2.1723797e+03 -6.0231591e+02 - -2.6194727e+03 -2.2498619e+03 -6.6359704e+02 - -2.5574218e+03 -2.3184558e+03 -7.1610816e+02 - -2.5045564e+03 -2.3755483e+03 -7.5774153e+02 - -2.4628445e+03 -2.4196111e+03 -7.8808180e+02 - -2.4330041e+03 -2.4503791e+03 -8.0821225e+02 - -2.4146381e+03 -2.4686841e+03 -8.2014174e+02 - -2.4065482e+03 -2.4761209e+03 -8.2618624e+02 - -2.4070498e+03 -2.4747210e+03 -8.2851528e+02 - -2.4141972e+03 -2.4667156e+03 -8.2890270e+02 - -2.4259129e+03 -2.4543964e+03 -8.2862709e+02 - -2.4400465e+03 -2.4400465e+03 -8.2845102e+02 - -2.4543964e+03 -2.4259129e+03 -8.2862709e+02 - -2.4667156e+03 -2.4141972e+03 -8.2890270e+02 - -2.4747210e+03 -2.4070498e+03 -8.2851528e+02 - -2.4761209e+03 -2.4065482e+03 -8.2618624e+02 - -2.4686841e+03 -2.4146381e+03 -8.2014174e+02 - -2.4503791e+03 -2.4330041e+03 -8.0821225e+02 - -2.4196111e+03 -2.4628445e+03 -7.8808180e+02 - -2.3755483e+03 -2.5045564e+03 -7.5774153e+02 - -2.3184558e+03 -2.5574218e+03 -7.1610816e+02 - -2.2498619e+03 -2.6194727e+03 -6.6359704e+02 - -2.1723797e+03 -2.6877148e+03 -6.0231591e+02 - -2.0891666e+03 -2.7587130e+03 -5.3566283e+02 - -2.0032419e+03 -2.8293007e+03 -4.6747198e+02 - -1.9169704e+03 -2.8970930e+03 -4.0113814e+02 - -1.8318723e+03 -2.9606463e+03 -3.3909157e+02 - -1.7487112e+03 -3.0193313e+03 -2.8270324e+02 - -1.6677103e+03 -3.0730821e+03 -2.3247267e+02 - -1.5887713e+03 -3.1221530e+03 -1.8830970e+02 - -1.5116407e+03 -3.1669405e+03 -1.4978917e+02 - -1.4360138e+03 -3.2078738e+03 -1.1633485e+02 - -1.3615920e+03 -3.2453577e+03 -8.7334197e+01 - -1.2881087e+03 -3.2797481e+03 -6.2201311e+01 - -1.2153382e+03 -3.3113458e+03 -4.0406501e+01 - -1.1430958e+03 -3.3403992e+03 -2.1486290e+01 - -1.0712334e+03 -3.3671107e+03 -5.0430259e+00 - -9.9963463e+02 -3.3916440e+03 9.2604481e+00 - -9.2820906e+02 -3.4141309e+03 2.1707969e+01 - -8.5688769e+02 -3.4346772e+03 3.2537486e+01 - -7.8561879e+02 -3.4533679e+03 4.1947968e+01 - -7.1436451e+02 -3.4702714e+03 5.0105496e+01 - -6.4309811e+02 -3.4854424e+03 5.7148450e+01 - -5.7180178e+02 -3.4989251e+03 6.3191850e+01 - -5.0046482e+02 -3.5107545e+03 6.8330934e+01 - -4.2908215e+02 -3.5209590e+03 7.2644075e+01 - -3.5765324e+02 -3.5295606e+03 7.6195139e+01 - -2.8618102e+02 -3.5365769e+03 7.9035364e+01 - -2.1467119e+02 -3.5420212e+03 8.1204846e+01 - -1.4313146e+02 -3.5459033e+03 8.2733670e+01 - -7.1571022e+01 -3.5482299e+03 8.3642754e+01 - -2.4067136e-09 -3.5490050e+03 8.3944425e+01 - 7.1571022e+01 -3.5482299e+03 8.3642754e+01 - 1.4313146e+02 -3.5459033e+03 8.2733670e+01 - 2.1467119e+02 -3.5420212e+03 8.1204846e+01 - 2.8618102e+02 -3.5365769e+03 7.9035364e+01 - 3.5765324e+02 -3.5295606e+03 7.6195139e+01 - 4.2908215e+02 -3.5209590e+03 7.2644075e+01 - 5.0046482e+02 -3.5107545e+03 6.8330934e+01 - 5.7180178e+02 -3.4989251e+03 6.3191850e+01 - 6.4309811e+02 -3.4854424e+03 5.7148450e+01 - 7.1436451e+02 -3.4702714e+03 5.0105496e+01 - 7.8561879e+02 -3.4533679e+03 4.1947968e+01 - 8.5688769e+02 -3.4346772e+03 3.2537486e+01 - 9.2820906e+02 -3.4141309e+03 2.1707969e+01 - 9.9963463e+02 -3.3916440e+03 9.2604481e+00 - 1.0712334e+03 -3.3671107e+03 -5.0430259e+00 - 1.1430958e+03 -3.3403992e+03 -2.1486290e+01 - 1.2153382e+03 -3.3113458e+03 -4.0406501e+01 - 1.2881087e+03 -3.2797481e+03 -6.2201311e+01 - 1.3615920e+03 -3.2453577e+03 -8.7334197e+01 - 1.4360138e+03 -3.2078738e+03 -1.1633485e+02 - 1.5116407e+03 -3.1669405e+03 -1.4978917e+02 - 1.5887713e+03 -3.1221530e+03 -1.8830970e+02 - 1.6677103e+03 -3.0730821e+03 -2.3247267e+02 - 1.7487112e+03 -3.0193313e+03 -2.8270324e+02 - 1.8318723e+03 -2.9606463e+03 -3.3909157e+02 - 1.9169704e+03 -2.8970930e+03 -4.0113814e+02 - 2.0032419e+03 -2.8293007e+03 -4.6747198e+02 - 2.0891666e+03 -2.7587130e+03 -5.3566283e+02 - 2.1723797e+03 -2.6877148e+03 -6.0231591e+02 - 2.2498619e+03 -2.6194727e+03 -6.6359704e+02 - 2.3184558e+03 -2.5574218e+03 -7.1610816e+02 - 2.3755483e+03 -2.5045564e+03 -7.5774153e+02 - 2.4196111e+03 -2.4628445e+03 -7.8808180e+02 - 2.4503791e+03 -2.4330041e+03 -8.0821225e+02 - 2.4686841e+03 -2.4146381e+03 -8.2014174e+02 - 2.4761209e+03 -2.4065482e+03 -8.2618624e+02 - 2.4747210e+03 -2.4070498e+03 -8.2851528e+02 - 2.4667156e+03 -2.4141972e+03 -8.2890270e+02 - 2.4543964e+03 -2.4259129e+03 -8.2862709e+02 - 2.4400465e+03 -2.4400465e+03 -8.2845102e+02 - 2.4259129e+03 -2.4543964e+03 -8.2862709e+02 - 2.4141972e+03 -2.4667156e+03 -8.2890270e+02 - 2.4070498e+03 -2.4747210e+03 -8.2851528e+02 - 2.4065482e+03 -2.4761209e+03 -8.2618624e+02 - 2.4146381e+03 -2.4686841e+03 -8.2014174e+02 - 2.4330041e+03 -2.4503791e+03 -8.0821225e+02 - 2.4628445e+03 -2.4196111e+03 -7.8808180e+02 - 2.5045564e+03 -2.3755483e+03 -7.5774153e+02 - 2.5574218e+03 -2.3184558e+03 -7.1610816e+02 - 2.6194727e+03 -2.2498619e+03 -6.6359704e+02 - 2.6877148e+03 -2.1723797e+03 -6.0231591e+02 - 2.7587130e+03 -2.0891666e+03 -5.3566283e+02 - 2.8293007e+03 -2.0032419e+03 -4.6747198e+02 - 2.8970930e+03 -1.9169704e+03 -4.0113814e+02 - 2.9606463e+03 -1.8318723e+03 -3.3909157e+02 - 3.0193313e+03 -1.7487112e+03 -2.8270324e+02 - 3.0730821e+03 -1.6677103e+03 -2.3247267e+02 - 3.1221530e+03 -1.5887713e+03 -1.8830970e+02 - 3.1669405e+03 -1.5116407e+03 -1.4978917e+02 - 3.2078738e+03 -1.4360138e+03 -1.1633485e+02 - 3.2453577e+03 -1.3615920e+03 -8.7334197e+01 - 3.2797481e+03 -1.2881087e+03 -6.2201311e+01 - 3.3113458e+03 -1.2153382e+03 -4.0406501e+01 - 3.3403992e+03 -1.1430958e+03 -2.1486290e+01 - 3.3671107e+03 -1.0712334e+03 -5.0430259e+00 - 3.3916440e+03 -9.9963463e+02 9.2604481e+00 - 3.4141309e+03 -9.2820906e+02 2.1707969e+01 - 3.4346772e+03 -8.5688769e+02 3.2537486e+01 - 3.4533679e+03 -7.8561879e+02 4.1947968e+01 - 3.4702714e+03 -7.1436451e+02 5.0105496e+01 - 3.4854424e+03 -6.4309811e+02 5.7148450e+01 - 3.4989251e+03 -5.7180178e+02 6.3191850e+01 - 3.5107545e+03 -5.0046482e+02 6.8330934e+01 - 3.5209590e+03 -4.2908215e+02 7.2644075e+01 - 3.5295606e+03 -3.5765324e+02 7.6195139e+01 - 3.5365769e+03 -2.8618102e+02 7.9035364e+01 - 3.5420212e+03 -2.1467119e+02 8.1204846e+01 - 3.5459033e+03 -1.4313146e+02 8.2733670e+01 - 3.5482299e+03 -7.1571022e+01 8.3642754e+01 - 3.5490050e+03 -2.4067136e-09 8.3944425e+01 - 3.5438872e+03 0.0000000e+00 6.3549764e+01 - 3.5430780e+03 7.2197813e+01 6.3165055e+01 - 3.5406484e+03 1.4439167e+02 6.2005670e+01 - 3.5365925e+03 2.1657824e+02 6.0055690e+01 - 3.5309004e+03 2.8875549e+02 5.7288112e+01 - 3.5235576e+03 3.6092340e+02 5.3664124e+01 - 3.5145444e+03 4.3308474e+02 4.9132058e+01 - 3.5038354e+03 5.0524598e+02 4.3625970e+01 - 3.4913980e+03 5.7741841e+02 3.7063829e+01 - 3.4771916e+03 6.4961935e+02 2.9345229e+01 - 3.4611655e+03 7.2187369e+02 2.0348585e+01 - 3.4432570e+03 7.9421578e+02 9.9277343e+00 - 3.4233886e+03 8.6669159e+02 -2.0920922e+00 - 3.4014649e+03 9.3936138e+02 -1.5918942e+01 - 3.3773688e+03 1.0123029e+03 -3.1799383e+01 - 3.3509564e+03 1.0856148e+03 -5.0024078e+01 - 3.3220527e+03 1.1594207e+03 -7.0933128e+01 - 3.2904453e+03 1.2338730e+03 -9.4920143e+01 - 3.2558801e+03 1.3091557e+03 -1.2243304e+02 - 3.2180587e+03 1.3854849e+03 -1.5396824e+02 - 3.1766409e+03 1.4631039e+03 -1.9005276e+02 - 3.1312584e+03 1.5422679e+03 -2.3120599e+02 - 3.0815471e+03 1.6232109e+03 -2.7787009e+02 - 3.0272095e+03 1.7060857e+03 -3.3029673e+02 - 2.9681207e+03 1.7908652e+03 -3.8838306e+02 - 2.9044813e+03 1.8772029e+03 -4.5146716e+02 - 2.8370056e+03 1.9642692e+03 -5.1813017e+02 - 2.7670901e+03 2.0506126e+03 -5.8610099e+02 - 2.6968688e+03 2.1341363e+03 -6.5238761e+02 - 2.6290583e+03 2.2122730e+03 -7.1370839e+02 - 2.5665689e+03 2.2823721e+03 -7.6714425e+02 - 2.5119952e+03 2.3421855e+03 -8.1076470e+02 - 2.4671833e+03 2.3902620e+03 -8.4395495e+02 - 2.4330320e+03 2.4261112e+03 -8.6733793e+02 - 2.4095393e+03 2.4501317e+03 -8.8240332e+02 - 2.3959983e+03 2.4634008e+03 -8.9105197e+02 - 2.3912248e+03 2.4674390e+03 -8.9521622e+02 - 2.3937416e+03 2.4640176e+03 -8.9661441e+02 - 2.4019005e+03 2.4550277e+03 -8.9662479e+02 - 2.4139510e+03 2.4424027e+03 -8.9623694e+02 - 2.4280747e+03 2.4280747e+03 -8.9604223e+02 - 2.4424027e+03 2.4139510e+03 -8.9623694e+02 - 2.4550277e+03 2.4019005e+03 -8.9662479e+02 - 2.4640176e+03 2.3937416e+03 -8.9661441e+02 - 2.4674390e+03 2.3912248e+03 -8.9521622e+02 - 2.4634008e+03 2.3959983e+03 -8.9105197e+02 - 2.4501317e+03 2.4095393e+03 -8.8240332e+02 - 2.4261112e+03 2.4330320e+03 -8.6733793e+02 - 2.3902620e+03 2.4671833e+03 -8.4395495e+02 - 2.3421855e+03 2.5119952e+03 -8.1076470e+02 - 2.2823721e+03 2.5665689e+03 -7.6714425e+02 - 2.2122730e+03 2.6290583e+03 -7.1370839e+02 - 2.1341363e+03 2.6968688e+03 -6.5238761e+02 - 2.0506126e+03 2.7670901e+03 -5.8610099e+02 - 1.9642692e+03 2.8370056e+03 -5.1813017e+02 - 1.8772029e+03 2.9044813e+03 -4.5146716e+02 - 1.7908652e+03 2.9681207e+03 -3.8838306e+02 - 1.7060857e+03 3.0272095e+03 -3.3029673e+02 - 1.6232109e+03 3.0815471e+03 -2.7787009e+02 - 1.5422679e+03 3.1312584e+03 -2.3120599e+02 - 1.4631039e+03 3.1766409e+03 -1.9005276e+02 - 1.3854849e+03 3.2180587e+03 -1.5396824e+02 - 1.3091557e+03 3.2558801e+03 -1.2243304e+02 - 1.2338730e+03 3.2904453e+03 -9.4920143e+01 - 1.1594207e+03 3.3220527e+03 -7.0933128e+01 - 1.0856148e+03 3.3509564e+03 -5.0024078e+01 - 1.0123029e+03 3.3773688e+03 -3.1799383e+01 - 9.3936138e+02 3.4014649e+03 -1.5918942e+01 - 8.6669159e+02 3.4233886e+03 -2.0920922e+00 - 7.9421578e+02 3.4432570e+03 9.9277343e+00 - 7.2187369e+02 3.4611655e+03 2.0348585e+01 - 6.4961935e+02 3.4771916e+03 2.9345229e+01 - 5.7741841e+02 3.4913980e+03 3.7063829e+01 - 5.0524598e+02 3.5038354e+03 4.3625970e+01 - 4.3308474e+02 3.5145444e+03 4.9132058e+01 - 3.6092340e+02 3.5235576e+03 5.3664124e+01 - 2.8875549e+02 3.5309004e+03 5.7288112e+01 - 2.1657824e+02 3.5365925e+03 6.0055690e+01 - 1.4439167e+02 3.5406484e+03 6.2005670e+01 - 7.2197813e+01 3.5430780e+03 6.3165055e+01 - 0.0000000e+00 3.5438872e+03 6.3549764e+01 - -7.2197813e+01 3.5430780e+03 6.3165055e+01 - -1.4439167e+02 3.5406484e+03 6.2005670e+01 - -2.1657824e+02 3.5365925e+03 6.0055690e+01 - -2.8875549e+02 3.5309004e+03 5.7288112e+01 - -3.6092340e+02 3.5235576e+03 5.3664124e+01 - -4.3308474e+02 3.5145444e+03 4.9132058e+01 - -5.0524598e+02 3.5038354e+03 4.3625970e+01 - -5.7741841e+02 3.4913980e+03 3.7063829e+01 - -6.4961935e+02 3.4771916e+03 2.9345229e+01 - -7.2187369e+02 3.4611655e+03 2.0348585e+01 - -7.9421578e+02 3.4432570e+03 9.9277343e+00 - -8.6669159e+02 3.4233886e+03 -2.0920922e+00 - -9.3936138e+02 3.4014649e+03 -1.5918942e+01 - -1.0123029e+03 3.3773688e+03 -3.1799383e+01 - -1.0856148e+03 3.3509564e+03 -5.0024078e+01 - -1.1594207e+03 3.3220527e+03 -7.0933128e+01 - -1.2338730e+03 3.2904453e+03 -9.4920143e+01 - -1.3091557e+03 3.2558801e+03 -1.2243304e+02 - -1.3854849e+03 3.2180587e+03 -1.5396824e+02 - -1.4631039e+03 3.1766409e+03 -1.9005276e+02 - -1.5422679e+03 3.1312584e+03 -2.3120599e+02 - -1.6232109e+03 3.0815471e+03 -2.7787009e+02 - -1.7060857e+03 3.0272095e+03 -3.3029673e+02 - -1.7908652e+03 2.9681207e+03 -3.8838306e+02 - -1.8772029e+03 2.9044813e+03 -4.5146716e+02 - -1.9642692e+03 2.8370056e+03 -5.1813017e+02 - -2.0506126e+03 2.7670901e+03 -5.8610099e+02 - -2.1341363e+03 2.6968688e+03 -6.5238761e+02 - -2.2122730e+03 2.6290583e+03 -7.1370839e+02 - -2.2823721e+03 2.5665689e+03 -7.6714425e+02 - -2.3421855e+03 2.5119952e+03 -8.1076470e+02 - -2.3902620e+03 2.4671833e+03 -8.4395495e+02 - -2.4261112e+03 2.4330320e+03 -8.6733793e+02 - -2.4501317e+03 2.4095393e+03 -8.8240332e+02 - -2.4634008e+03 2.3959983e+03 -8.9105197e+02 - -2.4674390e+03 2.3912248e+03 -8.9521622e+02 - -2.4640176e+03 2.3937416e+03 -8.9661441e+02 - -2.4550277e+03 2.4019005e+03 -8.9662479e+02 - -2.4424027e+03 2.4139510e+03 -8.9623694e+02 - -2.4280747e+03 2.4280747e+03 -8.9604223e+02 - -2.4139510e+03 2.4424027e+03 -8.9623694e+02 - -2.4019005e+03 2.4550277e+03 -8.9662479e+02 - -2.3937416e+03 2.4640176e+03 -8.9661441e+02 - -2.3912248e+03 2.4674390e+03 -8.9521622e+02 - -2.3959983e+03 2.4634008e+03 -8.9105197e+02 - -2.4095393e+03 2.4501317e+03 -8.8240332e+02 - -2.4330320e+03 2.4261112e+03 -8.6733793e+02 - -2.4671833e+03 2.3902620e+03 -8.4395495e+02 - -2.5119952e+03 2.3421855e+03 -8.1076470e+02 - -2.5665689e+03 2.2823721e+03 -7.6714425e+02 - -2.6290583e+03 2.2122730e+03 -7.1370839e+02 - -2.6968688e+03 2.1341363e+03 -6.5238761e+02 - -2.7670901e+03 2.0506126e+03 -5.8610099e+02 - -2.8370056e+03 1.9642692e+03 -5.1813017e+02 - -2.9044813e+03 1.8772029e+03 -4.5146716e+02 - -2.9681207e+03 1.7908652e+03 -3.8838306e+02 - -3.0272095e+03 1.7060857e+03 -3.3029673e+02 - -3.0815471e+03 1.6232109e+03 -2.7787009e+02 - -3.1312584e+03 1.5422679e+03 -2.3120599e+02 - -3.1766409e+03 1.4631039e+03 -1.9005276e+02 - -3.2180587e+03 1.3854849e+03 -1.5396824e+02 - -3.2558801e+03 1.3091557e+03 -1.2243304e+02 - -3.2904453e+03 1.2338730e+03 -9.4920143e+01 - -3.3220527e+03 1.1594207e+03 -7.0933128e+01 - -3.3509564e+03 1.0856148e+03 -5.0024078e+01 - -3.3773688e+03 1.0123029e+03 -3.1799383e+01 - -3.4014649e+03 9.3936138e+02 -1.5918942e+01 - -3.4233886e+03 8.6669159e+02 -2.0920922e+00 - -3.4432570e+03 7.9421578e+02 9.9277343e+00 - -3.4611655e+03 7.2187369e+02 2.0348585e+01 - -3.4771916e+03 6.4961935e+02 2.9345229e+01 - -3.4913980e+03 5.7741841e+02 3.7063829e+01 - -3.5038354e+03 5.0524598e+02 4.3625970e+01 - -3.5145444e+03 4.3308474e+02 4.9132058e+01 - -3.5235576e+03 3.6092340e+02 5.3664124e+01 - -3.5309004e+03 2.8875549e+02 5.7288112e+01 - -3.5365925e+03 2.1657824e+02 6.0055690e+01 - -3.5406484e+03 1.4439167e+02 6.2005670e+01 - -3.5430780e+03 7.2197813e+01 6.3165055e+01 - -3.5438872e+03 0.0000000e+00 6.3549764e+01 - -3.5430780e+03 -7.2197813e+01 6.3165055e+01 - -3.5406484e+03 -1.4439167e+02 6.2005670e+01 - -3.5365925e+03 -2.1657824e+02 6.0055690e+01 - -3.5309004e+03 -2.8875549e+02 5.7288112e+01 - -3.5235576e+03 -3.6092340e+02 5.3664124e+01 - -3.5145444e+03 -4.3308474e+02 4.9132058e+01 - -3.5038354e+03 -5.0524598e+02 4.3625970e+01 - -3.4913980e+03 -5.7741841e+02 3.7063829e+01 - -3.4771916e+03 -6.4961935e+02 2.9345229e+01 - -3.4611655e+03 -7.2187369e+02 2.0348585e+01 - -3.4432570e+03 -7.9421578e+02 9.9277343e+00 - -3.4233886e+03 -8.6669159e+02 -2.0920923e+00 - -3.4014649e+03 -9.3936138e+02 -1.5918942e+01 - -3.3773688e+03 -1.0123029e+03 -3.1799383e+01 - -3.3509564e+03 -1.0856148e+03 -5.0024078e+01 - -3.3220527e+03 -1.1594207e+03 -7.0933128e+01 - -3.2904453e+03 -1.2338730e+03 -9.4920143e+01 - -3.2558801e+03 -1.3091557e+03 -1.2243304e+02 - -3.2180587e+03 -1.3854849e+03 -1.5396824e+02 - -3.1766409e+03 -1.4631039e+03 -1.9005276e+02 - -3.1312584e+03 -1.5422679e+03 -2.3120599e+02 - -3.0815471e+03 -1.6232109e+03 -2.7787009e+02 - -3.0272095e+03 -1.7060857e+03 -3.3029673e+02 - -2.9681207e+03 -1.7908652e+03 -3.8838306e+02 - -2.9044813e+03 -1.8772029e+03 -4.5146716e+02 - -2.8370056e+03 -1.9642692e+03 -5.1813017e+02 - -2.7670901e+03 -2.0506126e+03 -5.8610099e+02 - -2.6968688e+03 -2.1341363e+03 -6.5238761e+02 - -2.6290583e+03 -2.2122730e+03 -7.1370839e+02 - -2.5665689e+03 -2.2823721e+03 -7.6714425e+02 - -2.5119952e+03 -2.3421855e+03 -8.1076470e+02 - -2.4671833e+03 -2.3902620e+03 -8.4395495e+02 - -2.4330320e+03 -2.4261112e+03 -8.6733793e+02 - -2.4095393e+03 -2.4501317e+03 -8.8240332e+02 - -2.3959983e+03 -2.4634008e+03 -8.9105197e+02 - -2.3912248e+03 -2.4674390e+03 -8.9521622e+02 - -2.3937416e+03 -2.4640176e+03 -8.9661441e+02 - -2.4019005e+03 -2.4550277e+03 -8.9662479e+02 - -2.4139510e+03 -2.4424027e+03 -8.9623694e+02 - -2.4280747e+03 -2.4280747e+03 -8.9604223e+02 - -2.4424027e+03 -2.4139510e+03 -8.9623694e+02 - -2.4550277e+03 -2.4019005e+03 -8.9662479e+02 - -2.4640176e+03 -2.3937416e+03 -8.9661441e+02 - -2.4674390e+03 -2.3912248e+03 -8.9521622e+02 - -2.4634008e+03 -2.3959983e+03 -8.9105197e+02 - -2.4501317e+03 -2.4095393e+03 -8.8240332e+02 - -2.4261112e+03 -2.4330320e+03 -8.6733793e+02 - -2.3902620e+03 -2.4671833e+03 -8.4395495e+02 - -2.3421855e+03 -2.5119952e+03 -8.1076470e+02 - -2.2823721e+03 -2.5665689e+03 -7.6714425e+02 - -2.2122730e+03 -2.6290583e+03 -7.1370839e+02 - -2.1341363e+03 -2.6968688e+03 -6.5238761e+02 - -2.0506126e+03 -2.7670901e+03 -5.8610099e+02 - -1.9642692e+03 -2.8370056e+03 -5.1813017e+02 - -1.8772029e+03 -2.9044813e+03 -4.5146716e+02 - -1.7908652e+03 -2.9681207e+03 -3.8838306e+02 - -1.7060857e+03 -3.0272095e+03 -3.3029673e+02 - -1.6232109e+03 -3.0815471e+03 -2.7787009e+02 - -1.5422679e+03 -3.1312584e+03 -2.3120599e+02 - -1.4631039e+03 -3.1766409e+03 -1.9005276e+02 - -1.3854849e+03 -3.2180587e+03 -1.5396824e+02 - -1.3091557e+03 -3.2558801e+03 -1.2243304e+02 - -1.2338730e+03 -3.2904453e+03 -9.4920143e+01 - -1.1594207e+03 -3.3220527e+03 -7.0933128e+01 - -1.0856148e+03 -3.3509564e+03 -5.0024078e+01 - -1.0123029e+03 -3.3773688e+03 -3.1799383e+01 - -9.3936138e+02 -3.4014649e+03 -1.5918942e+01 - -8.6669159e+02 -3.4233886e+03 -2.0920922e+00 - -7.9421578e+02 -3.4432570e+03 9.9277343e+00 - -7.2187369e+02 -3.4611655e+03 2.0348585e+01 - -6.4961935e+02 -3.4771916e+03 2.9345229e+01 - -5.7741841e+02 -3.4913980e+03 3.7063829e+01 - -5.0524598e+02 -3.5038354e+03 4.3625970e+01 - -4.3308474e+02 -3.5145444e+03 4.9132058e+01 - -3.6092340e+02 -3.5235576e+03 5.3664124e+01 - -2.8875549e+02 -3.5309004e+03 5.7288112e+01 - -2.1657824e+02 -3.5365925e+03 6.0055690e+01 - -1.4439167e+02 -3.5406484e+03 6.2005670e+01 - -7.2197813e+01 -3.5430780e+03 6.3165055e+01 - 0.0000000e+00 -3.5438872e+03 6.3549764e+01 - 7.2197813e+01 -3.5430780e+03 6.3165055e+01 - 1.4439167e+02 -3.5406484e+03 6.2005670e+01 - 2.1657824e+02 -3.5365925e+03 6.0055690e+01 - 2.8875549e+02 -3.5309004e+03 5.7288112e+01 - 3.6092340e+02 -3.5235576e+03 5.3664124e+01 - 4.3308474e+02 -3.5145444e+03 4.9132058e+01 - 5.0524598e+02 -3.5038354e+03 4.3625970e+01 - 5.7741841e+02 -3.4913980e+03 3.7063829e+01 - 6.4961935e+02 -3.4771916e+03 2.9345229e+01 - 7.2187369e+02 -3.4611655e+03 2.0348585e+01 - 7.9421578e+02 -3.4432570e+03 9.9277343e+00 - 8.6669159e+02 -3.4233886e+03 -2.0920922e+00 - 9.3936138e+02 -3.4014649e+03 -1.5918942e+01 - 1.0123029e+03 -3.3773688e+03 -3.1799383e+01 - 1.0856148e+03 -3.3509564e+03 -5.0024078e+01 - 1.1594207e+03 -3.3220527e+03 -7.0933128e+01 - 1.2338730e+03 -3.2904453e+03 -9.4920143e+01 - 1.3091557e+03 -3.2558801e+03 -1.2243304e+02 - 1.3854849e+03 -3.2180587e+03 -1.5396824e+02 - 1.4631039e+03 -3.1766409e+03 -1.9005276e+02 - 1.5422679e+03 -3.1312584e+03 -2.3120599e+02 - 1.6232109e+03 -3.0815471e+03 -2.7787009e+02 - 1.7060857e+03 -3.0272095e+03 -3.3029673e+02 - 1.7908652e+03 -2.9681207e+03 -3.8838306e+02 - 1.8772029e+03 -2.9044813e+03 -4.5146716e+02 - 1.9642692e+03 -2.8370056e+03 -5.1813017e+02 - 2.0506126e+03 -2.7670901e+03 -5.8610099e+02 - 2.1341363e+03 -2.6968688e+03 -6.5238761e+02 - 2.2122730e+03 -2.6290583e+03 -7.1370839e+02 - 2.2823721e+03 -2.5665689e+03 -7.6714425e+02 - 2.3421855e+03 -2.5119952e+03 -8.1076470e+02 - 2.3902620e+03 -2.4671833e+03 -8.4395495e+02 - 2.4261112e+03 -2.4330320e+03 -8.6733793e+02 - 2.4501317e+03 -2.4095393e+03 -8.8240332e+02 - 2.4634008e+03 -2.3959983e+03 -8.9105197e+02 - 2.4674390e+03 -2.3912248e+03 -8.9521622e+02 - 2.4640176e+03 -2.3937416e+03 -8.9661441e+02 - 2.4550277e+03 -2.4019005e+03 -8.9662479e+02 - 2.4424027e+03 -2.4139510e+03 -8.9623694e+02 - 2.4280747e+03 -2.4280747e+03 -8.9604223e+02 - 2.4139510e+03 -2.4424027e+03 -8.9623694e+02 - 2.4019005e+03 -2.4550277e+03 -8.9662479e+02 - 2.3937416e+03 -2.4640176e+03 -8.9661441e+02 - 2.3912248e+03 -2.4674390e+03 -8.9521622e+02 - 2.3959983e+03 -2.4634008e+03 -8.9105197e+02 - 2.4095393e+03 -2.4501317e+03 -8.8240332e+02 - 2.4330320e+03 -2.4261112e+03 -8.6733793e+02 - 2.4671833e+03 -2.3902620e+03 -8.4395495e+02 - 2.5119952e+03 -2.3421855e+03 -8.1076470e+02 - 2.5665689e+03 -2.2823721e+03 -7.6714425e+02 - 2.6290583e+03 -2.2122730e+03 -7.1370839e+02 - 2.6968688e+03 -2.1341363e+03 -6.5238761e+02 - 2.7670901e+03 -2.0506126e+03 -5.8610099e+02 - 2.8370056e+03 -1.9642692e+03 -5.1813017e+02 - 2.9044813e+03 -1.8772029e+03 -4.5146716e+02 - 2.9681207e+03 -1.7908652e+03 -3.8838306e+02 - 3.0272095e+03 -1.7060857e+03 -3.3029673e+02 - 3.0815471e+03 -1.6232109e+03 -2.7787009e+02 - 3.1312584e+03 -1.5422679e+03 -2.3120599e+02 - 3.1766409e+03 -1.4631039e+03 -1.9005276e+02 - 3.2180587e+03 -1.3854849e+03 -1.5396824e+02 - 3.2558801e+03 -1.3091557e+03 -1.2243304e+02 - 3.2904453e+03 -1.2338730e+03 -9.4920143e+01 - 3.3220527e+03 -1.1594207e+03 -7.0933128e+01 - 3.3509564e+03 -1.0856148e+03 -5.0024078e+01 - 3.3773688e+03 -1.0123029e+03 -3.1799383e+01 - 3.4014649e+03 -9.3936138e+02 -1.5918942e+01 - 3.4233886e+03 -8.6669159e+02 -2.0920922e+00 - 3.4432570e+03 -7.9421578e+02 9.9277343e+00 - 3.4611655e+03 -7.2187369e+02 2.0348585e+01 - 3.4771916e+03 -6.4961935e+02 2.9345229e+01 - 3.4913980e+03 -5.7741841e+02 3.7063829e+01 - 3.5038354e+03 -5.0524598e+02 4.3625970e+01 - 3.5145444e+03 -4.3308474e+02 4.9132058e+01 - 3.5235576e+03 -3.6092340e+02 5.3664124e+01 - 3.5309004e+03 -2.8875549e+02 5.7288112e+01 - 3.5365925e+03 -2.1657824e+02 6.0055690e+01 - 3.5406484e+03 -1.4439167e+02 6.2005670e+01 - 3.5430780e+03 -7.2197813e+01 6.3165055e+01 - 3.5438872e+03 0.0000000e+00 6.3549764e+01 - 3.5369277e+03 2.4067136e-09 3.7947014e+01 - 3.5360746e+03 7.2991129e+01 3.7463233e+01 - 3.5335126e+03 1.4598690e+02 3.6005201e+01 - 3.5292334e+03 2.1899278e+02 3.3552678e+01 - 3.5232227e+03 2.9201599e+02 3.0071358e+01 - 3.5154601e+03 3.6506639e+02 2.5511991e+01 - 3.5059178e+03 4.3815757e+02 1.9809119e+01 - 3.4945598e+03 5.1130799e+02 1.2879404e+01 - 3.4813408e+03 5.8454238e+02 4.6195018e+00 - 3.4662042e+03 6.5789331e+02 -5.0965394e+00 - 3.4490800e+03 7.3140301e+02 -1.6420387e+01 - 3.4298824e+03 8.0512557e+02 -2.9533021e+01 - 3.4085068e+03 8.7912937e+02 -4.4648737e+01 - 3.3848258e+03 9.5349987e+02 -6.2019388e+01 - 3.3586859e+03 1.0283425e+03 -8.1938421e+01 - 3.3299028e+03 1.1037855e+03 -1.0474400e+02 - 3.2982581e+03 1.1799820e+03 -1.3081987e+02 - 3.2634966e+03 1.2571107e+03 -1.6059175e+02 - 3.2253283e+03 1.3353725e+03 -1.9451587e+02 - 3.1834352e+03 1.4149810e+03 -2.3305443e+02 - 3.1374919e+03 1.4961424e+03 -2.7663105e+02 - 3.0872028e+03 1.5790182e+03 -3.2555803e+02 - 3.0323671e+03 1.6636645e+03 -3.7992865e+02 - 2.9729768e+03 1.7499430e+03 -4.3947478e+02 - 2.9093460e+03 1.8374076e+03 -5.0340724e+02 - 2.8422521e+03 1.9251851e+03 -5.7028354e+02 - 2.7730435e+03 2.0118945e+03 -6.3797698e+02 - 2.7036477e+03 2.0956629e+03 -7.0382586e+02 - 2.6364244e+03 2.1742852e+03 -7.6499270e+02 - 2.5738630e+03 2.2455207e+03 -8.1896045e+02 - 2.5182081e+03 2.3074447e+03 -8.6399611e+02 - 2.4711418e+03 2.3587344e+03 -8.9940596e+02 - 2.4336204e+03 2.3988031e+03 -9.2551058e+02 - 2.4058818e+03 2.4277738e+03 -9.4340128e+02 - 2.3875665e+03 2.4463470e+03 -9.5460921e+02 - 2.3778776e+03 2.4556364e+03 -9.6080181e+02 - 2.3757238e+03 2.4570213e+03 -9.6356277e+02 - 2.3798233e+03 2.4520360e+03 -9.6425980e+02 - 2.3887696e+03 2.4422970e+03 -9.6397902e+02 - 2.4010698e+03 2.4294554e+03 -9.6349955e+02 - 2.4151668e+03 2.4151668e+03 -9.6328800e+02 - 2.4294554e+03 2.4010698e+03 -9.6349955e+02 - 2.4422970e+03 2.3887696e+03 -9.6397902e+02 - 2.4520360e+03 2.3798233e+03 -9.6425980e+02 - 2.4570213e+03 2.3757238e+03 -9.6356277e+02 - 2.4556364e+03 2.3778776e+03 -9.6080181e+02 - 2.4463470e+03 2.3875665e+03 -9.5460921e+02 - 2.4277738e+03 2.4058818e+03 -9.4340128e+02 - 2.3988031e+03 2.4336204e+03 -9.2551058e+02 - 2.3587344e+03 2.4711418e+03 -8.9940596e+02 - 2.3074447e+03 2.5182081e+03 -8.6399611e+02 - 2.2455207e+03 2.5738630e+03 -8.1896045e+02 - 2.1742852e+03 2.6364244e+03 -7.6499270e+02 - 2.0956629e+03 2.7036477e+03 -7.0382586e+02 - 2.0118945e+03 2.7730435e+03 -6.3797698e+02 - 1.9251851e+03 2.8422521e+03 -5.7028354e+02 - 1.8374076e+03 2.9093460e+03 -5.0340724e+02 - 1.7499430e+03 2.9729768e+03 -4.3947478e+02 - 1.6636645e+03 3.0323671e+03 -3.7992865e+02 - 1.5790182e+03 3.0872028e+03 -3.2555803e+02 - 1.4961424e+03 3.1374919e+03 -2.7663105e+02 - 1.4149810e+03 3.1834352e+03 -2.3305443e+02 - 1.3353725e+03 3.2253283e+03 -1.9451587e+02 - 1.2571107e+03 3.2634966e+03 -1.6059175e+02 - 1.1799820e+03 3.2982581e+03 -1.3081987e+02 - 1.1037855e+03 3.3299028e+03 -1.0474400e+02 - 1.0283425e+03 3.3586859e+03 -8.1938421e+01 - 9.5349987e+02 3.3848258e+03 -6.2019388e+01 - 8.7912937e+02 3.4085068e+03 -4.4648737e+01 - 8.0512557e+02 3.4298824e+03 -2.9533021e+01 - 7.3140301e+02 3.4490800e+03 -1.6420387e+01 - 6.5789331e+02 3.4662042e+03 -5.0965394e+00 - 5.8454238e+02 3.4813408e+03 4.6195019e+00 - 5.1130799e+02 3.4945598e+03 1.2879404e+01 - 4.3815757e+02 3.5059178e+03 1.9809119e+01 - 3.6506639e+02 3.5154601e+03 2.5511991e+01 - 2.9201599e+02 3.5232227e+03 3.0071358e+01 - 2.1899278e+02 3.5292334e+03 3.3552678e+01 - 1.4598690e+02 3.5335126e+03 3.6005201e+01 - 7.2991129e+01 3.5360746e+03 3.7463233e+01 - 0.0000000e+00 3.5369277e+03 3.7947014e+01 - -7.2991129e+01 3.5360746e+03 3.7463233e+01 - -1.4598690e+02 3.5335126e+03 3.6005201e+01 - -2.1899278e+02 3.5292334e+03 3.3552678e+01 - -2.9201599e+02 3.5232227e+03 3.0071358e+01 - -3.6506639e+02 3.5154601e+03 2.5511991e+01 - -4.3815757e+02 3.5059178e+03 1.9809119e+01 - -5.1130799e+02 3.4945598e+03 1.2879404e+01 - -5.8454238e+02 3.4813408e+03 4.6195019e+00 - -6.5789331e+02 3.4662042e+03 -5.0965394e+00 - -7.3140301e+02 3.4490800e+03 -1.6420387e+01 - -8.0512557e+02 3.4298824e+03 -2.9533021e+01 - -8.7912937e+02 3.4085068e+03 -4.4648737e+01 - -9.5349987e+02 3.3848258e+03 -6.2019388e+01 - -1.0283425e+03 3.3586859e+03 -8.1938421e+01 - -1.1037855e+03 3.3299028e+03 -1.0474400e+02 - -1.1799820e+03 3.2982581e+03 -1.3081987e+02 - -1.2571107e+03 3.2634966e+03 -1.6059175e+02 - -1.3353725e+03 3.2253283e+03 -1.9451587e+02 - -1.4149810e+03 3.1834352e+03 -2.3305443e+02 - -1.4961424e+03 3.1374919e+03 -2.7663105e+02 - -1.5790182e+03 3.0872028e+03 -3.2555803e+02 - -1.6636645e+03 3.0323671e+03 -3.7992865e+02 - -1.7499430e+03 2.9729768e+03 -4.3947478e+02 - -1.8374076e+03 2.9093460e+03 -5.0340724e+02 - -1.9251851e+03 2.8422521e+03 -5.7028354e+02 - -2.0118945e+03 2.7730435e+03 -6.3797698e+02 - -2.0956629e+03 2.7036477e+03 -7.0382586e+02 - -2.1742852e+03 2.6364244e+03 -7.6499270e+02 - -2.2455207e+03 2.5738630e+03 -8.1896045e+02 - -2.3074447e+03 2.5182081e+03 -8.6399611e+02 - -2.3587344e+03 2.4711418e+03 -8.9940596e+02 - -2.3988031e+03 2.4336204e+03 -9.2551058e+02 - -2.4277738e+03 2.4058818e+03 -9.4340128e+02 - -2.4463470e+03 2.3875665e+03 -9.5460921e+02 - -2.4556364e+03 2.3778776e+03 -9.6080181e+02 - -2.4570213e+03 2.3757238e+03 -9.6356277e+02 - -2.4520360e+03 2.3798233e+03 -9.6425980e+02 - -2.4422970e+03 2.3887696e+03 -9.6397902e+02 - -2.4294554e+03 2.4010698e+03 -9.6349955e+02 - -2.4151668e+03 2.4151668e+03 -9.6328800e+02 - -2.4010698e+03 2.4294554e+03 -9.6349955e+02 - -2.3887696e+03 2.4422970e+03 -9.6397902e+02 - -2.3798233e+03 2.4520360e+03 -9.6425980e+02 - -2.3757238e+03 2.4570213e+03 -9.6356277e+02 - -2.3778776e+03 2.4556364e+03 -9.6080181e+02 - -2.3875665e+03 2.4463470e+03 -9.5460921e+02 - -2.4058818e+03 2.4277738e+03 -9.4340128e+02 - -2.4336204e+03 2.3988031e+03 -9.2551058e+02 - -2.4711418e+03 2.3587344e+03 -8.9940596e+02 - -2.5182081e+03 2.3074447e+03 -8.6399611e+02 - -2.5738630e+03 2.2455207e+03 -8.1896045e+02 - -2.6364244e+03 2.1742852e+03 -7.6499270e+02 - -2.7036477e+03 2.0956629e+03 -7.0382586e+02 - -2.7730435e+03 2.0118945e+03 -6.3797698e+02 - -2.8422521e+03 1.9251851e+03 -5.7028354e+02 - -2.9093460e+03 1.8374076e+03 -5.0340724e+02 - -2.9729768e+03 1.7499430e+03 -4.3947478e+02 - -3.0323671e+03 1.6636645e+03 -3.7992865e+02 - -3.0872028e+03 1.5790182e+03 -3.2555803e+02 - -3.1374919e+03 1.4961424e+03 -2.7663105e+02 - -3.1834352e+03 1.4149810e+03 -2.3305443e+02 - -3.2253283e+03 1.3353725e+03 -1.9451587e+02 - -3.2634966e+03 1.2571107e+03 -1.6059175e+02 - -3.2982581e+03 1.1799820e+03 -1.3081987e+02 - -3.3299028e+03 1.1037855e+03 -1.0474400e+02 - -3.3586859e+03 1.0283425e+03 -8.1938421e+01 - -3.3848258e+03 9.5349987e+02 -6.2019388e+01 - -3.4085068e+03 8.7912937e+02 -4.4648737e+01 - -3.4298824e+03 8.0512557e+02 -2.9533021e+01 - -3.4490800e+03 7.3140301e+02 -1.6420387e+01 - -3.4662042e+03 6.5789331e+02 -5.0965394e+00 - -3.4813408e+03 5.8454238e+02 4.6195019e+00 - -3.4945598e+03 5.1130799e+02 1.2879404e+01 - -3.5059178e+03 4.3815757e+02 1.9809119e+01 - -3.5154601e+03 3.6506639e+02 2.5511991e+01 - -3.5232227e+03 2.9201599e+02 3.0071358e+01 - -3.5292334e+03 2.1899278e+02 3.3552678e+01 - -3.5335126e+03 1.4598690e+02 3.6005201e+01 - -3.5360746e+03 7.2991129e+01 3.7463233e+01 - -3.5369277e+03 0.0000000e+00 3.7947014e+01 - -3.5360746e+03 -7.2991129e+01 3.7463233e+01 - -3.5335126e+03 -1.4598690e+02 3.6005201e+01 - -3.5292334e+03 -2.1899278e+02 3.3552678e+01 - -3.5232227e+03 -2.9201599e+02 3.0071358e+01 - -3.5154601e+03 -3.6506639e+02 2.5511991e+01 - -3.5059178e+03 -4.3815757e+02 1.9809119e+01 - -3.4945598e+03 -5.1130799e+02 1.2879404e+01 - -3.4813408e+03 -5.8454238e+02 4.6195019e+00 - -3.4662042e+03 -6.5789331e+02 -5.0965394e+00 - -3.4490800e+03 -7.3140301e+02 -1.6420387e+01 - -3.4298824e+03 -8.0512557e+02 -2.9533021e+01 - -3.4085068e+03 -8.7912937e+02 -4.4648737e+01 - -3.3848258e+03 -9.5349987e+02 -6.2019388e+01 - -3.3586859e+03 -1.0283425e+03 -8.1938421e+01 - -3.3299028e+03 -1.1037855e+03 -1.0474400e+02 - -3.2982581e+03 -1.1799820e+03 -1.3081987e+02 - -3.2634966e+03 -1.2571107e+03 -1.6059175e+02 - -3.2253283e+03 -1.3353725e+03 -1.9451587e+02 - -3.1834352e+03 -1.4149810e+03 -2.3305443e+02 - -3.1374919e+03 -1.4961424e+03 -2.7663105e+02 - -3.0872028e+03 -1.5790182e+03 -3.2555803e+02 - -3.0323671e+03 -1.6636645e+03 -3.7992865e+02 - -2.9729768e+03 -1.7499430e+03 -4.3947478e+02 - -2.9093460e+03 -1.8374076e+03 -5.0340724e+02 - -2.8422521e+03 -1.9251851e+03 -5.7028354e+02 - -2.7730435e+03 -2.0118945e+03 -6.3797698e+02 - -2.7036477e+03 -2.0956629e+03 -7.0382586e+02 - -2.6364244e+03 -2.1742852e+03 -7.6499270e+02 - -2.5738630e+03 -2.2455207e+03 -8.1896045e+02 - -2.5182081e+03 -2.3074447e+03 -8.6399611e+02 - -2.4711418e+03 -2.3587344e+03 -8.9940596e+02 - -2.4336204e+03 -2.3988031e+03 -9.2551058e+02 - -2.4058818e+03 -2.4277738e+03 -9.4340128e+02 - -2.3875665e+03 -2.4463470e+03 -9.5460921e+02 - -2.3778776e+03 -2.4556364e+03 -9.6080181e+02 - -2.3757238e+03 -2.4570213e+03 -9.6356277e+02 - -2.3798233e+03 -2.4520360e+03 -9.6425980e+02 - -2.3887696e+03 -2.4422970e+03 -9.6397902e+02 - -2.4010698e+03 -2.4294554e+03 -9.6349955e+02 - -2.4151668e+03 -2.4151668e+03 -9.6328800e+02 - -2.4294554e+03 -2.4010698e+03 -9.6349955e+02 - -2.4422970e+03 -2.3887696e+03 -9.6397902e+02 - -2.4520360e+03 -2.3798233e+03 -9.6425980e+02 - -2.4570213e+03 -2.3757238e+03 -9.6356277e+02 - -2.4556364e+03 -2.3778776e+03 -9.6080181e+02 - -2.4463470e+03 -2.3875665e+03 -9.5460921e+02 - -2.4277738e+03 -2.4058818e+03 -9.4340128e+02 - -2.3988031e+03 -2.4336204e+03 -9.2551058e+02 - -2.3587344e+03 -2.4711418e+03 -8.9940596e+02 - -2.3074447e+03 -2.5182081e+03 -8.6399611e+02 - -2.2455207e+03 -2.5738630e+03 -8.1896045e+02 - -2.1742852e+03 -2.6364244e+03 -7.6499270e+02 - -2.0956629e+03 -2.7036477e+03 -7.0382586e+02 - -2.0118945e+03 -2.7730435e+03 -6.3797698e+02 - -1.9251851e+03 -2.8422521e+03 -5.7028354e+02 - -1.8374076e+03 -2.9093460e+03 -5.0340724e+02 - -1.7499430e+03 -2.9729768e+03 -4.3947478e+02 - -1.6636645e+03 -3.0323671e+03 -3.7992865e+02 - -1.5790182e+03 -3.0872028e+03 -3.2555803e+02 - -1.4961424e+03 -3.1374919e+03 -2.7663105e+02 - -1.4149810e+03 -3.1834352e+03 -2.3305443e+02 - -1.3353725e+03 -3.2253283e+03 -1.9451587e+02 - -1.2571107e+03 -3.2634966e+03 -1.6059175e+02 - -1.1799820e+03 -3.2982581e+03 -1.3081987e+02 - -1.1037855e+03 -3.3299028e+03 -1.0474400e+02 - -1.0283425e+03 -3.3586859e+03 -8.1938421e+01 - -9.5349987e+02 -3.3848258e+03 -6.2019388e+01 - -8.7912937e+02 -3.4085068e+03 -4.4648737e+01 - -8.0512557e+02 -3.4298824e+03 -2.9533021e+01 - -7.3140301e+02 -3.4490800e+03 -1.6420387e+01 - -6.5789331e+02 -3.4662042e+03 -5.0965394e+00 - -5.8454238e+02 -3.4813408e+03 4.6195018e+00 - -5.1130799e+02 -3.4945598e+03 1.2879404e+01 - -4.3815757e+02 -3.5059178e+03 1.9809119e+01 - -3.6506639e+02 -3.5154601e+03 2.5511991e+01 - -2.9201599e+02 -3.5232227e+03 3.0071358e+01 - -2.1899278e+02 -3.5292334e+03 3.3552678e+01 - -1.4598690e+02 -3.5335126e+03 3.6005201e+01 - -7.2991129e+01 -3.5360746e+03 3.7463233e+01 - -2.4067136e-09 -3.5369277e+03 3.7947014e+01 - 7.2991129e+01 -3.5360746e+03 3.7463233e+01 - 1.4598690e+02 -3.5335126e+03 3.6005201e+01 - 2.1899278e+02 -3.5292334e+03 3.3552678e+01 - 2.9201599e+02 -3.5232227e+03 3.0071358e+01 - 3.6506639e+02 -3.5154601e+03 2.5511991e+01 - 4.3815757e+02 -3.5059178e+03 1.9809119e+01 - 5.1130799e+02 -3.4945598e+03 1.2879404e+01 - 5.8454238e+02 -3.4813408e+03 4.6195019e+00 - 6.5789331e+02 -3.4662042e+03 -5.0965394e+00 - 7.3140301e+02 -3.4490800e+03 -1.6420387e+01 - 8.0512557e+02 -3.4298824e+03 -2.9533021e+01 - 8.7912937e+02 -3.4085068e+03 -4.4648737e+01 - 9.5349987e+02 -3.3848258e+03 -6.2019388e+01 - 1.0283425e+03 -3.3586859e+03 -8.1938421e+01 - 1.1037855e+03 -3.3299028e+03 -1.0474400e+02 - 1.1799820e+03 -3.2982581e+03 -1.3081987e+02 - 1.2571107e+03 -3.2634966e+03 -1.6059175e+02 - 1.3353725e+03 -3.2253283e+03 -1.9451587e+02 - 1.4149810e+03 -3.1834352e+03 -2.3305443e+02 - 1.4961424e+03 -3.1374919e+03 -2.7663105e+02 - 1.5790182e+03 -3.0872028e+03 -3.2555803e+02 - 1.6636645e+03 -3.0323671e+03 -3.7992865e+02 - 1.7499430e+03 -2.9729768e+03 -4.3947478e+02 - 1.8374076e+03 -2.9093460e+03 -5.0340724e+02 - 1.9251851e+03 -2.8422521e+03 -5.7028354e+02 - 2.0118945e+03 -2.7730435e+03 -6.3797698e+02 - 2.0956629e+03 -2.7036477e+03 -7.0382586e+02 - 2.1742852e+03 -2.6364244e+03 -7.6499270e+02 - 2.2455207e+03 -2.5738630e+03 -8.1896045e+02 - 2.3074447e+03 -2.5182081e+03 -8.6399611e+02 - 2.3587344e+03 -2.4711418e+03 -8.9940596e+02 - 2.3988031e+03 -2.4336204e+03 -9.2551058e+02 - 2.4277738e+03 -2.4058818e+03 -9.4340128e+02 - 2.4463470e+03 -2.3875665e+03 -9.5460921e+02 - 2.4556364e+03 -2.3778776e+03 -9.6080181e+02 - 2.4570213e+03 -2.3757238e+03 -9.6356277e+02 - 2.4520360e+03 -2.3798233e+03 -9.6425980e+02 - 2.4422970e+03 -2.3887696e+03 -9.6397902e+02 - 2.4294554e+03 -2.4010698e+03 -9.6349955e+02 - 2.4151668e+03 -2.4151668e+03 -9.6328800e+02 - 2.4010698e+03 -2.4294554e+03 -9.6349955e+02 - 2.3887696e+03 -2.4422970e+03 -9.6397902e+02 - 2.3798233e+03 -2.4520360e+03 -9.6425980e+02 - 2.3757238e+03 -2.4570213e+03 -9.6356277e+02 - 2.3778776e+03 -2.4556364e+03 -9.6080181e+02 - 2.3875665e+03 -2.4463470e+03 -9.5460921e+02 - 2.4058818e+03 -2.4277738e+03 -9.4340128e+02 - 2.4336204e+03 -2.3988031e+03 -9.2551058e+02 - 2.4711418e+03 -2.3587344e+03 -8.9940596e+02 - 2.5182081e+03 -2.3074447e+03 -8.6399611e+02 - 2.5738630e+03 -2.2455207e+03 -8.1896045e+02 - 2.6364244e+03 -2.1742852e+03 -7.6499270e+02 - 2.7036477e+03 -2.0956629e+03 -7.0382586e+02 - 2.7730435e+03 -2.0118945e+03 -6.3797698e+02 - 2.8422521e+03 -1.9251851e+03 -5.7028354e+02 - 2.9093460e+03 -1.8374076e+03 -5.0340724e+02 - 2.9729768e+03 -1.7499430e+03 -4.3947478e+02 - 3.0323671e+03 -1.6636645e+03 -3.7992865e+02 - 3.0872028e+03 -1.5790182e+03 -3.2555803e+02 - 3.1374919e+03 -1.4961424e+03 -2.7663105e+02 - 3.1834352e+03 -1.4149810e+03 -2.3305443e+02 - 3.2253283e+03 -1.3353725e+03 -1.9451587e+02 - 3.2634966e+03 -1.2571107e+03 -1.6059175e+02 - 3.2982581e+03 -1.1799820e+03 -1.3081987e+02 - 3.3299028e+03 -1.1037855e+03 -1.0474400e+02 - 3.3586859e+03 -1.0283425e+03 -8.1938421e+01 - 3.3848258e+03 -9.5349987e+02 -6.2019388e+01 - 3.4085068e+03 -8.7912937e+02 -4.4648737e+01 - 3.4298824e+03 -8.0512557e+02 -2.9533021e+01 - 3.4490800e+03 -7.3140301e+02 -1.6420387e+01 - 3.4662042e+03 -6.5789331e+02 -5.0965394e+00 - 3.4813408e+03 -5.8454238e+02 4.6195019e+00 - 3.4945598e+03 -5.1130799e+02 1.2879404e+01 - 3.5059178e+03 -4.3815757e+02 1.9809119e+01 - 3.5154601e+03 -3.6506639e+02 2.5511991e+01 - 3.5232227e+03 -2.9201599e+02 3.0071358e+01 - 3.5292334e+03 -2.1899278e+02 3.3552678e+01 - 3.5335126e+03 -1.4598690e+02 3.6005201e+01 - 3.5360746e+03 -7.2991129e+01 3.7463233e+01 - 3.5369277e+03 -2.4067136e-09 3.7947014e+01 - 3.5278986e+03 0.0000000e+00 7.1276300e+00 - 3.5269896e+03 7.3989494e+01 6.5257325e+00 - 3.5242586e+03 1.4799458e+02 4.7116483e+00 - 3.5196944e+03 2.2203195e+02 1.6600038e+00 - 3.5132772e+03 2.9612052e+02 -2.6721585e+00 - 3.5049789e+03 3.7028261e+02 -8.3463907e+00 - 3.4947615e+03 4.4454530e+02 -1.5444274e+01 - 3.4825760e+03 5.1894182e+02 -2.4069281e+01 - 3.4683611e+03 5.9351324e+02 -3.4349076e+01 - 3.4520405e+03 6.6831023e+02 -4.6438209e+01 - 3.4335213e+03 7.4339513e+02 -6.0521152e+01 - 3.4126907e+03 8.1884414e+02 -7.6815496e+01 - 3.3894130e+03 8.9474955e+02 -9.5575003e+01 - 3.3635267e+03 9.7122194e+02 -1.1709197e+02 - 3.3348412e+03 1.0483917e+03 -1.4169797e+02 - 3.3031356e+03 1.1264094e+03 -1.6976143e+02 - 3.2681584e+03 1.2054439e+03 -2.0167987e+02 - 3.2296332e+03 1.2856755e+03 -2.3786321e+02 - 3.1872706e+03 1.3672829e+03 -2.7870377e+02 - 3.1407930e+03 1.4504192e+03 -3.2452743e+02 - 3.0899763e+03 1.5351720e+03 -3.7552051e+02 - 3.0347136e+03 1.6215055e+03 -4.3163030e+02 - 2.9751043e+03 1.7091827e+03 -4.9244494e+02 - 2.9115591e+03 1.7976764e+03 -5.5707323e+02 - 2.8449031e+03 1.8860873e+03 -6.2406430e+02 - 2.7764378e+03 1.9731045e+03 -6.9142190e+02 - 2.7079179e+03 2.0570472e+03 -7.5676034e+02 - 2.6414132e+03 2.1360078e+03 -8.1760686e+02 - 2.5790696e+03 2.2080831e+03 -8.7178507e+02 - 2.5228291e+03 2.2716314e+03 -9.1776049e+02 - 2.4741964e+03 2.3254784e+03 -9.5483401e+02 - 2.4341127e+03 2.3690197e+03 -9.8313733e+02 - 2.4029480e+03 2.4022132e+03 -1.0034682e+03 - 2.3805776e+03 2.4254953e+03 -1.0170496e+03 - 2.3664934e+03 2.4396670e+03 -1.0252935e+03 - 2.3599118e+03 2.4457848e+03 -1.0296140e+03 - 2.3598571e+03 2.4450739e+03 -1.0313029e+03 - 2.3652185e+03 2.4388654e+03 -1.0314577e+03 - 2.3747856e+03 2.4285530e+03 -1.0309457e+03 - 2.3872712e+03 2.4155625e+03 -1.0303893e+03 - 2.4013278e+03 2.4013278e+03 -1.0301624e+03 - 2.4155625e+03 2.3872712e+03 -1.0303893e+03 - 2.4285530e+03 2.3747856e+03 -1.0309457e+03 - 2.4388654e+03 2.3652185e+03 -1.0314577e+03 - 2.4450739e+03 2.3598571e+03 -1.0313029e+03 - 2.4457848e+03 2.3599118e+03 -1.0296140e+03 - 2.4396670e+03 2.3664934e+03 -1.0252935e+03 - 2.4254953e+03 2.3805776e+03 -1.0170496e+03 - 2.4022132e+03 2.4029480e+03 -1.0034682e+03 - 2.3690197e+03 2.4341127e+03 -9.8313733e+02 - 2.3254784e+03 2.4741964e+03 -9.5483401e+02 - 2.2716314e+03 2.5228291e+03 -9.1776049e+02 - 2.2080831e+03 2.5790696e+03 -8.7178507e+02 - 2.1360078e+03 2.6414132e+03 -8.1760686e+02 - 2.0570472e+03 2.7079179e+03 -7.5676034e+02 - 1.9731045e+03 2.7764378e+03 -6.9142190e+02 - 1.8860873e+03 2.8449031e+03 -6.2406430e+02 - 1.7976764e+03 2.9115591e+03 -5.5707323e+02 - 1.7091827e+03 2.9751043e+03 -4.9244494e+02 - 1.6215055e+03 3.0347136e+03 -4.3163030e+02 - 1.5351720e+03 3.0899763e+03 -3.7552051e+02 - 1.4504192e+03 3.1407930e+03 -3.2452743e+02 - 1.3672829e+03 3.1872706e+03 -2.7870377e+02 - 1.2856755e+03 3.2296332e+03 -2.3786321e+02 - 1.2054439e+03 3.2681584e+03 -2.0167987e+02 - 1.1264094e+03 3.3031356e+03 -1.6976143e+02 - 1.0483917e+03 3.3348412e+03 -1.4169797e+02 - 9.7122194e+02 3.3635267e+03 -1.1709197e+02 - 8.9474955e+02 3.3894130e+03 -9.5575003e+01 - 8.1884414e+02 3.4126907e+03 -7.6815496e+01 - 7.4339513e+02 3.4335213e+03 -6.0521152e+01 - 6.6831023e+02 3.4520405e+03 -4.6438209e+01 - 5.9351324e+02 3.4683611e+03 -3.4349076e+01 - 5.1894182e+02 3.4825760e+03 -2.4069281e+01 - 4.4454530e+02 3.4947615e+03 -1.5444274e+01 - 3.7028261e+02 3.5049789e+03 -8.3463907e+00 - 2.9612052e+02 3.5132772e+03 -2.6721585e+00 - 2.2203195e+02 3.5196944e+03 1.6600038e+00 - 1.4799458e+02 3.5242586e+03 4.7116483e+00 - 7.3989494e+01 3.5269896e+03 6.5257325e+00 - 0.0000000e+00 3.5278986e+03 7.1276300e+00 - -7.3989494e+01 3.5269896e+03 6.5257325e+00 - -1.4799458e+02 3.5242586e+03 4.7116483e+00 - -2.2203195e+02 3.5196944e+03 1.6600038e+00 - -2.9612052e+02 3.5132772e+03 -2.6721585e+00 - -3.7028261e+02 3.5049789e+03 -8.3463907e+00 - -4.4454530e+02 3.4947615e+03 -1.5444274e+01 - -5.1894182e+02 3.4825760e+03 -2.4069281e+01 - -5.9351324e+02 3.4683611e+03 -3.4349076e+01 - -6.6831023e+02 3.4520405e+03 -4.6438209e+01 - -7.4339513e+02 3.4335213e+03 -6.0521152e+01 - -8.1884414e+02 3.4126907e+03 -7.6815496e+01 - -8.9474955e+02 3.3894130e+03 -9.5575003e+01 - -9.7122194e+02 3.3635267e+03 -1.1709197e+02 - -1.0483917e+03 3.3348412e+03 -1.4169797e+02 - -1.1264094e+03 3.3031356e+03 -1.6976143e+02 - -1.2054439e+03 3.2681584e+03 -2.0167987e+02 - -1.2856755e+03 3.2296332e+03 -2.3786321e+02 - -1.3672829e+03 3.1872706e+03 -2.7870377e+02 - -1.4504192e+03 3.1407930e+03 -3.2452743e+02 - -1.5351720e+03 3.0899763e+03 -3.7552051e+02 - -1.6215055e+03 3.0347136e+03 -4.3163030e+02 - -1.7091827e+03 2.9751043e+03 -4.9244494e+02 - -1.7976764e+03 2.9115591e+03 -5.5707323e+02 - -1.8860873e+03 2.8449031e+03 -6.2406430e+02 - -1.9731045e+03 2.7764378e+03 -6.9142190e+02 - -2.0570472e+03 2.7079179e+03 -7.5676034e+02 - -2.1360078e+03 2.6414132e+03 -8.1760686e+02 - -2.2080831e+03 2.5790696e+03 -8.7178507e+02 - -2.2716314e+03 2.5228291e+03 -9.1776049e+02 - -2.3254784e+03 2.4741964e+03 -9.5483401e+02 - -2.3690197e+03 2.4341127e+03 -9.8313733e+02 - -2.4022132e+03 2.4029480e+03 -1.0034682e+03 - -2.4254953e+03 2.3805776e+03 -1.0170496e+03 - -2.4396670e+03 2.3664934e+03 -1.0252935e+03 - -2.4457848e+03 2.3599118e+03 -1.0296140e+03 - -2.4450739e+03 2.3598571e+03 -1.0313029e+03 - -2.4388654e+03 2.3652185e+03 -1.0314577e+03 - -2.4285530e+03 2.3747856e+03 -1.0309457e+03 - -2.4155625e+03 2.3872712e+03 -1.0303893e+03 - -2.4013278e+03 2.4013278e+03 -1.0301624e+03 - -2.3872712e+03 2.4155625e+03 -1.0303893e+03 - -2.3747856e+03 2.4285530e+03 -1.0309457e+03 - -2.3652185e+03 2.4388654e+03 -1.0314577e+03 - -2.3598571e+03 2.4450739e+03 -1.0313029e+03 - -2.3599118e+03 2.4457848e+03 -1.0296140e+03 - -2.3664934e+03 2.4396670e+03 -1.0252935e+03 - -2.3805776e+03 2.4254953e+03 -1.0170496e+03 - -2.4029480e+03 2.4022132e+03 -1.0034682e+03 - -2.4341127e+03 2.3690197e+03 -9.8313733e+02 - -2.4741964e+03 2.3254784e+03 -9.5483401e+02 - -2.5228291e+03 2.2716314e+03 -9.1776049e+02 - -2.5790696e+03 2.2080831e+03 -8.7178507e+02 - -2.6414132e+03 2.1360078e+03 -8.1760686e+02 - -2.7079179e+03 2.0570472e+03 -7.5676034e+02 - -2.7764378e+03 1.9731045e+03 -6.9142190e+02 - -2.8449031e+03 1.8860873e+03 -6.2406430e+02 - -2.9115591e+03 1.7976764e+03 -5.5707323e+02 - -2.9751043e+03 1.7091827e+03 -4.9244494e+02 - -3.0347136e+03 1.6215055e+03 -4.3163030e+02 - -3.0899763e+03 1.5351720e+03 -3.7552051e+02 - -3.1407930e+03 1.4504192e+03 -3.2452743e+02 - -3.1872706e+03 1.3672829e+03 -2.7870377e+02 - -3.2296332e+03 1.2856755e+03 -2.3786321e+02 - -3.2681584e+03 1.2054439e+03 -2.0167987e+02 - -3.3031356e+03 1.1264094e+03 -1.6976143e+02 - -3.3348412e+03 1.0483917e+03 -1.4169797e+02 - -3.3635267e+03 9.7122194e+02 -1.1709197e+02 - -3.3894130e+03 8.9474955e+02 -9.5575003e+01 - -3.4126907e+03 8.1884414e+02 -7.6815496e+01 - -3.4335213e+03 7.4339513e+02 -6.0521152e+01 - -3.4520405e+03 6.6831023e+02 -4.6438209e+01 - -3.4683611e+03 5.9351324e+02 -3.4349076e+01 - -3.4825760e+03 5.1894182e+02 -2.4069281e+01 - -3.4947615e+03 4.4454530e+02 -1.5444274e+01 - -3.5049789e+03 3.7028261e+02 -8.3463907e+00 - -3.5132772e+03 2.9612052e+02 -2.6721585e+00 - -3.5196944e+03 2.2203195e+02 1.6600038e+00 - -3.5242586e+03 1.4799458e+02 4.7116483e+00 - -3.5269896e+03 7.3989494e+01 6.5257325e+00 - -3.5278986e+03 0.0000000e+00 7.1276300e+00 - -3.5269896e+03 -7.3989494e+01 6.5257325e+00 - -3.5242586e+03 -1.4799458e+02 4.7116483e+00 - -3.5196944e+03 -2.2203195e+02 1.6600038e+00 - -3.5132772e+03 -2.9612052e+02 -2.6721585e+00 - -3.5049789e+03 -3.7028261e+02 -8.3463907e+00 - -3.4947615e+03 -4.4454530e+02 -1.5444274e+01 - -3.4825760e+03 -5.1894182e+02 -2.4069281e+01 - -3.4683611e+03 -5.9351324e+02 -3.4349076e+01 - -3.4520405e+03 -6.6831023e+02 -4.6438209e+01 - -3.4335213e+03 -7.4339513e+02 -6.0521152e+01 - -3.4126907e+03 -8.1884414e+02 -7.6815496e+01 - -3.3894130e+03 -8.9474955e+02 -9.5575003e+01 - -3.3635267e+03 -9.7122194e+02 -1.1709197e+02 - -3.3348412e+03 -1.0483917e+03 -1.4169797e+02 - -3.3031356e+03 -1.1264094e+03 -1.6976143e+02 - -3.2681584e+03 -1.2054439e+03 -2.0167987e+02 - -3.2296332e+03 -1.2856755e+03 -2.3786321e+02 - -3.1872706e+03 -1.3672829e+03 -2.7870377e+02 - -3.1407930e+03 -1.4504192e+03 -3.2452743e+02 - -3.0899763e+03 -1.5351720e+03 -3.7552051e+02 - -3.0347136e+03 -1.6215055e+03 -4.3163030e+02 - -2.9751043e+03 -1.7091827e+03 -4.9244494e+02 - -2.9115591e+03 -1.7976764e+03 -5.5707323e+02 - -2.8449031e+03 -1.8860873e+03 -6.2406430e+02 - -2.7764378e+03 -1.9731045e+03 -6.9142190e+02 - -2.7079179e+03 -2.0570472e+03 -7.5676034e+02 - -2.6414132e+03 -2.1360078e+03 -8.1760686e+02 - -2.5790696e+03 -2.2080831e+03 -8.7178507e+02 - -2.5228291e+03 -2.2716314e+03 -9.1776049e+02 - -2.4741964e+03 -2.3254784e+03 -9.5483401e+02 - -2.4341127e+03 -2.3690197e+03 -9.8313733e+02 - -2.4029480e+03 -2.4022132e+03 -1.0034682e+03 - -2.3805776e+03 -2.4254953e+03 -1.0170496e+03 - -2.3664934e+03 -2.4396670e+03 -1.0252935e+03 - -2.3599118e+03 -2.4457848e+03 -1.0296140e+03 - -2.3598571e+03 -2.4450739e+03 -1.0313029e+03 - -2.3652185e+03 -2.4388654e+03 -1.0314577e+03 - -2.3747856e+03 -2.4285530e+03 -1.0309457e+03 - -2.3872712e+03 -2.4155625e+03 -1.0303893e+03 - -2.4013278e+03 -2.4013278e+03 -1.0301624e+03 - -2.4155625e+03 -2.3872712e+03 -1.0303893e+03 - -2.4285530e+03 -2.3747856e+03 -1.0309457e+03 - -2.4388654e+03 -2.3652185e+03 -1.0314577e+03 - -2.4450739e+03 -2.3598571e+03 -1.0313029e+03 - -2.4457848e+03 -2.3599118e+03 -1.0296140e+03 - -2.4396670e+03 -2.3664934e+03 -1.0252935e+03 - -2.4254953e+03 -2.3805776e+03 -1.0170496e+03 - -2.4022132e+03 -2.4029480e+03 -1.0034682e+03 - -2.3690197e+03 -2.4341127e+03 -9.8313733e+02 - -2.3254784e+03 -2.4741964e+03 -9.5483401e+02 - -2.2716314e+03 -2.5228291e+03 -9.1776049e+02 - -2.2080831e+03 -2.5790696e+03 -8.7178507e+02 - -2.1360078e+03 -2.6414132e+03 -8.1760686e+02 - -2.0570472e+03 -2.7079179e+03 -7.5676034e+02 - -1.9731045e+03 -2.7764378e+03 -6.9142190e+02 - -1.8860873e+03 -2.8449031e+03 -6.2406430e+02 - -1.7976764e+03 -2.9115591e+03 -5.5707323e+02 - -1.7091827e+03 -2.9751043e+03 -4.9244494e+02 - -1.6215055e+03 -3.0347136e+03 -4.3163030e+02 - -1.5351720e+03 -3.0899763e+03 -3.7552051e+02 - -1.4504192e+03 -3.1407930e+03 -3.2452743e+02 - -1.3672829e+03 -3.1872706e+03 -2.7870377e+02 - -1.2856755e+03 -3.2296332e+03 -2.3786321e+02 - -1.2054439e+03 -3.2681584e+03 -2.0167987e+02 - -1.1264094e+03 -3.3031356e+03 -1.6976143e+02 - -1.0483917e+03 -3.3348412e+03 -1.4169797e+02 - -9.7122194e+02 -3.3635267e+03 -1.1709197e+02 - -8.9474955e+02 -3.3894130e+03 -9.5575003e+01 - -8.1884414e+02 -3.4126907e+03 -7.6815496e+01 - -7.4339513e+02 -3.4335213e+03 -6.0521152e+01 - -6.6831023e+02 -3.4520405e+03 -4.6438209e+01 - -5.9351324e+02 -3.4683611e+03 -3.4349076e+01 - -5.1894182e+02 -3.4825760e+03 -2.4069281e+01 - -4.4454530e+02 -3.4947615e+03 -1.5444274e+01 - -3.7028261e+02 -3.5049789e+03 -8.3463907e+00 - -2.9612052e+02 -3.5132772e+03 -2.6721585e+00 - -2.2203195e+02 -3.5196944e+03 1.6600038e+00 - -1.4799458e+02 -3.5242586e+03 4.7116483e+00 - -7.3989494e+01 -3.5269896e+03 6.5257325e+00 - -4.8134273e-09 -3.5278986e+03 7.1276300e+00 - 7.3989494e+01 -3.5269896e+03 6.5257325e+00 - 1.4799458e+02 -3.5242586e+03 4.7116483e+00 - 2.2203195e+02 -3.5196944e+03 1.6600038e+00 - 2.9612052e+02 -3.5132772e+03 -2.6721585e+00 - 3.7028261e+02 -3.5049789e+03 -8.3463907e+00 - 4.4454530e+02 -3.4947615e+03 -1.5444274e+01 - 5.1894182e+02 -3.4825760e+03 -2.4069281e+01 - 5.9351324e+02 -3.4683611e+03 -3.4349076e+01 - 6.6831023e+02 -3.4520405e+03 -4.6438209e+01 - 7.4339513e+02 -3.4335213e+03 -6.0521152e+01 - 8.1884414e+02 -3.4126907e+03 -7.6815496e+01 - 8.9474955e+02 -3.3894130e+03 -9.5575003e+01 - 9.7122194e+02 -3.3635267e+03 -1.1709197e+02 - 1.0483917e+03 -3.3348412e+03 -1.4169797e+02 - 1.1264094e+03 -3.3031356e+03 -1.6976143e+02 - 1.2054439e+03 -3.2681584e+03 -2.0167987e+02 - 1.2856755e+03 -3.2296332e+03 -2.3786321e+02 - 1.3672829e+03 -3.1872706e+03 -2.7870377e+02 - 1.4504192e+03 -3.1407930e+03 -3.2452743e+02 - 1.5351720e+03 -3.0899763e+03 -3.7552051e+02 - 1.6215055e+03 -3.0347136e+03 -4.3163030e+02 - 1.7091827e+03 -2.9751043e+03 -4.9244494e+02 - 1.7976764e+03 -2.9115591e+03 -5.5707323e+02 - 1.8860873e+03 -2.8449031e+03 -6.2406430e+02 - 1.9731045e+03 -2.7764378e+03 -6.9142190e+02 - 2.0570472e+03 -2.7079179e+03 -7.5676034e+02 - 2.1360078e+03 -2.6414132e+03 -8.1760686e+02 - 2.2080831e+03 -2.5790696e+03 -8.7178507e+02 - 2.2716314e+03 -2.5228291e+03 -9.1776049e+02 - 2.3254784e+03 -2.4741964e+03 -9.5483401e+02 - 2.3690197e+03 -2.4341127e+03 -9.8313733e+02 - 2.4022132e+03 -2.4029480e+03 -1.0034682e+03 - 2.4254953e+03 -2.3805776e+03 -1.0170496e+03 - 2.4396670e+03 -2.3664934e+03 -1.0252935e+03 - 2.4457848e+03 -2.3599118e+03 -1.0296140e+03 - 2.4450739e+03 -2.3598571e+03 -1.0313029e+03 - 2.4388654e+03 -2.3652185e+03 -1.0314577e+03 - 2.4285530e+03 -2.3747856e+03 -1.0309457e+03 - 2.4155625e+03 -2.3872712e+03 -1.0303893e+03 - 2.4013278e+03 -2.4013278e+03 -1.0301624e+03 - 2.3872712e+03 -2.4155625e+03 -1.0303893e+03 - 2.3747856e+03 -2.4285530e+03 -1.0309457e+03 - 2.3652185e+03 -2.4388654e+03 -1.0314577e+03 - 2.3598571e+03 -2.4450739e+03 -1.0313029e+03 - 2.3599118e+03 -2.4457848e+03 -1.0296140e+03 - 2.3664934e+03 -2.4396670e+03 -1.0252935e+03 - 2.3805776e+03 -2.4254953e+03 -1.0170496e+03 - 2.4029480e+03 -2.4022132e+03 -1.0034682e+03 - 2.4341127e+03 -2.3690197e+03 -9.8313733e+02 - 2.4741964e+03 -2.3254784e+03 -9.5483401e+02 - 2.5228291e+03 -2.2716314e+03 -9.1776049e+02 - 2.5790696e+03 -2.2080831e+03 -8.7178507e+02 - 2.6414132e+03 -2.1360078e+03 -8.1760686e+02 - 2.7079179e+03 -2.0570472e+03 -7.5676034e+02 - 2.7764378e+03 -1.9731045e+03 -6.9142190e+02 - 2.8449031e+03 -1.8860873e+03 -6.2406430e+02 - 2.9115591e+03 -1.7976764e+03 -5.5707323e+02 - 2.9751043e+03 -1.7091827e+03 -4.9244494e+02 - 3.0347136e+03 -1.6215055e+03 -4.3163030e+02 - 3.0899763e+03 -1.5351720e+03 -3.7552051e+02 - 3.1407930e+03 -1.4504192e+03 -3.2452743e+02 - 3.1872706e+03 -1.3672829e+03 -2.7870377e+02 - 3.2296332e+03 -1.2856755e+03 -2.3786321e+02 - 3.2681584e+03 -1.2054439e+03 -2.0167987e+02 - 3.3031356e+03 -1.1264094e+03 -1.6976143e+02 - 3.3348412e+03 -1.0483917e+03 -1.4169797e+02 - 3.3635267e+03 -9.7122194e+02 -1.1709197e+02 - 3.3894130e+03 -8.9474955e+02 -9.5575003e+01 - 3.4126907e+03 -8.1884414e+02 -7.6815496e+01 - 3.4335213e+03 -7.4339513e+02 -6.0521152e+01 - 3.4520405e+03 -6.6831023e+02 -4.6438209e+01 - 3.4683611e+03 -5.9351324e+02 -3.4349076e+01 - 3.4825760e+03 -5.1894182e+02 -2.4069281e+01 - 3.4947615e+03 -4.4454530e+02 -1.5444274e+01 - 3.5049789e+03 -3.7028261e+02 -8.3463907e+00 - 3.5132772e+03 -2.9612052e+02 -2.6721585e+00 - 3.5196944e+03 -2.2203195e+02 1.6600038e+00 - 3.5242586e+03 -1.4799458e+02 4.7116483e+00 - 3.5269896e+03 -7.3989494e+01 6.5257325e+00 - 3.5278986e+03 -4.8134273e-09 7.1276300e+00 - 3.5165797e+03 -4.8134273e-09 -2.8877734e+01 - 3.5155995e+03 7.5241202e+01 -2.9620816e+01 - 3.5126537e+03 1.5051173e+02 -3.1860448e+01 - 3.5077270e+03 2.2584227e+02 -3.5628007e+01 - 3.5007932e+03 3.0126625e+02 -4.0976511e+01 - 3.4918143e+03 3.7682133e+02 -4.7981702e+01 - 3.4807398e+03 4.5255089e+02 -5.6743531e+01 - 3.4675050e+03 5.2850574e+02 -6.7388023e+01 - 3.4520292e+03 6.0474587e+02 -8.0069442e+01 - 3.4342135e+03 6.8134227e+02 -9.4972608e+01 - 3.4139386e+03 7.5837882e+02 -1.1231511e+02 - 3.3910624e+03 8.3595390e+02 -1.3234904e+02 - 3.3654177e+03 9.1418169e+02 -1.5536142e+02 - 3.3368107e+03 9.9319236e+02 -1.8167250e+02 - 3.3050214e+03 1.0731305e+03 -2.1162995e+02 - 3.2698069e+03 1.1541507e+03 -2.4559704e+02 - 3.2309101e+03 1.2364080e+03 -2.8393129e+02 - 3.1880758e+03 1.3200413e+03 -3.2695006e+02 - 3.1410795e+03 1.4051464e+03 -3.7487905e+02 - 3.0897712e+03 1.4917366e+03 -4.2778107e+02 - 3.0341361e+03 1.5796890e+03 -4.8546678e+02 - 2.9743730e+03 1.6686790e+03 -5.4739659e+02 - 2.9109770e+03 1.7581135e+03 -6.1259540e+02 - 2.8448101e+03 1.8470804e+03 -6.7961365e+02 - 2.7771285e+03 1.9343394e+03 -7.4657334e+02 - 2.7095388e+03 2.0183783e+03 -8.1132421e+02 - 2.6438707e+03 2.0975405e+03 -8.7169954e+02 - 2.5819842e+03 2.1702063e+03 -9.2581541e+02 - 2.5255595e+03 2.2349812e+03 -9.7232849e+02 - 2.4759256e+03 2.2908434e+03 -1.0105784e+03 - 2.4339672e+03 2.3372168e+03 -1.0405875e+03 - 2.4001141e+03 2.3739700e+03 -1.0629444e+03 - 2.3743918e+03 2.4013606e+03 -1.0786265e+03 - 2.3565006e+03 2.4199562e+03 -1.0888180e+03 - 2.3458945e+03 2.4305561e+03 -1.0947568e+03 - 2.3418467e+03 2.4341247e+03 -1.0976248e+03 - 2.3434959e+03 2.4317425e+03 -1.0984774e+03 - 2.3498762e+03 2.4245694e+03 -1.0982031e+03 - 2.3599373e+03 2.4138180e+03 -1.0975029e+03 - 2.3725586e+03 2.4007313e+03 -1.0968808e+03 - 2.3865631e+03 2.3865631e+03 -1.0966397e+03 - 2.4007313e+03 2.3725586e+03 -1.0968808e+03 - 2.4138180e+03 2.3599373e+03 -1.0975029e+03 - 2.4245694e+03 2.3498762e+03 -1.0982031e+03 - 2.4317425e+03 2.3434959e+03 -1.0984774e+03 - 2.4341247e+03 2.3418467e+03 -1.0976248e+03 - 2.4305561e+03 2.3458945e+03 -1.0947568e+03 - 2.4199562e+03 2.3565006e+03 -1.0888180e+03 - 2.4013606e+03 2.3743918e+03 -1.0786265e+03 - 2.3739700e+03 2.4001141e+03 -1.0629444e+03 - 2.3372168e+03 2.4339672e+03 -1.0405875e+03 - 2.2908434e+03 2.4759256e+03 -1.0105784e+03 - 2.2349812e+03 2.5255595e+03 -9.7232849e+02 - 2.1702063e+03 2.5819842e+03 -9.2581541e+02 - 2.0975405e+03 2.6438707e+03 -8.7169954e+02 - 2.0183783e+03 2.7095388e+03 -8.1132421e+02 - 1.9343394e+03 2.7771285e+03 -7.4657334e+02 - 1.8470804e+03 2.8448101e+03 -6.7961365e+02 - 1.7581135e+03 2.9109770e+03 -6.1259540e+02 - 1.6686790e+03 2.9743730e+03 -5.4739659e+02 - 1.5796890e+03 3.0341361e+03 -4.8546678e+02 - 1.4917366e+03 3.0897712e+03 -4.2778107e+02 - 1.4051464e+03 3.1410795e+03 -3.7487905e+02 - 1.3200413e+03 3.1880758e+03 -3.2695006e+02 - 1.2364080e+03 3.2309101e+03 -2.8393129e+02 - 1.1541507e+03 3.2698069e+03 -2.4559704e+02 - 1.0731305e+03 3.3050214e+03 -2.1162995e+02 - 9.9319236e+02 3.3368107e+03 -1.8167250e+02 - 9.1418169e+02 3.3654177e+03 -1.5536142e+02 - 8.3595390e+02 3.3910624e+03 -1.3234904e+02 - 7.5837882e+02 3.4139386e+03 -1.1231511e+02 - 6.8134227e+02 3.4342135e+03 -9.4972608e+01 - 6.0474587e+02 3.4520292e+03 -8.0069442e+01 - 5.2850574e+02 3.4675050e+03 -6.7388023e+01 - 4.5255089e+02 3.4807398e+03 -5.6743531e+01 - 3.7682133e+02 3.4918143e+03 -4.7981702e+01 - 3.0126625e+02 3.5007932e+03 -4.0976511e+01 - 2.2584227e+02 3.5077270e+03 -3.5628007e+01 - 1.5051173e+02 3.5126537e+03 -3.1860448e+01 - 7.5241202e+01 3.5155995e+03 -2.9620816e+01 - 2.4067136e-09 3.5165797e+03 -2.8877734e+01 - -7.5241202e+01 3.5155995e+03 -2.9620816e+01 - -1.5051173e+02 3.5126537e+03 -3.1860448e+01 - -2.2584227e+02 3.5077270e+03 -3.5628007e+01 - -3.0126625e+02 3.5007932e+03 -4.0976511e+01 - -3.7682133e+02 3.4918143e+03 -4.7981702e+01 - -4.5255089e+02 3.4807398e+03 -5.6743531e+01 - -5.2850574e+02 3.4675050e+03 -6.7388023e+01 - -6.0474587e+02 3.4520292e+03 -8.0069442e+01 - -6.8134227e+02 3.4342135e+03 -9.4972608e+01 - -7.5837882e+02 3.4139386e+03 -1.1231511e+02 - -8.3595390e+02 3.3910624e+03 -1.3234904e+02 - -9.1418169e+02 3.3654177e+03 -1.5536142e+02 - -9.9319236e+02 3.3368107e+03 -1.8167250e+02 - -1.0731305e+03 3.3050214e+03 -2.1162995e+02 - -1.1541507e+03 3.2698069e+03 -2.4559704e+02 - -1.2364080e+03 3.2309101e+03 -2.8393129e+02 - -1.3200413e+03 3.1880758e+03 -3.2695006e+02 - -1.4051464e+03 3.1410795e+03 -3.7487905e+02 - -1.4917366e+03 3.0897712e+03 -4.2778107e+02 - -1.5796890e+03 3.0341361e+03 -4.8546678e+02 - -1.6686790e+03 2.9743730e+03 -5.4739659e+02 - -1.7581135e+03 2.9109770e+03 -6.1259540e+02 - -1.8470804e+03 2.8448101e+03 -6.7961365e+02 - -1.9343394e+03 2.7771285e+03 -7.4657334e+02 - -2.0183783e+03 2.7095388e+03 -8.1132421e+02 - -2.0975405e+03 2.6438707e+03 -8.7169954e+02 - -2.1702063e+03 2.5819842e+03 -9.2581541e+02 - -2.2349812e+03 2.5255595e+03 -9.7232849e+02 - -2.2908434e+03 2.4759256e+03 -1.0105784e+03 - -2.3372168e+03 2.4339672e+03 -1.0405875e+03 - -2.3739700e+03 2.4001141e+03 -1.0629444e+03 - -2.4013606e+03 2.3743918e+03 -1.0786265e+03 - -2.4199562e+03 2.3565006e+03 -1.0888180e+03 - -2.4305561e+03 2.3458945e+03 -1.0947568e+03 - -2.4341247e+03 2.3418467e+03 -1.0976248e+03 - -2.4317425e+03 2.3434959e+03 -1.0984774e+03 - -2.4245694e+03 2.3498762e+03 -1.0982031e+03 - -2.4138180e+03 2.3599373e+03 -1.0975029e+03 - -2.4007313e+03 2.3725586e+03 -1.0968808e+03 - -2.3865631e+03 2.3865631e+03 -1.0966397e+03 - -2.3725586e+03 2.4007313e+03 -1.0968808e+03 - -2.3599373e+03 2.4138180e+03 -1.0975029e+03 - -2.3498762e+03 2.4245694e+03 -1.0982031e+03 - -2.3434959e+03 2.4317425e+03 -1.0984774e+03 - -2.3418467e+03 2.4341247e+03 -1.0976248e+03 - -2.3458945e+03 2.4305561e+03 -1.0947568e+03 - -2.3565006e+03 2.4199562e+03 -1.0888180e+03 - -2.3743918e+03 2.4013606e+03 -1.0786265e+03 - -2.4001141e+03 2.3739700e+03 -1.0629444e+03 - -2.4339672e+03 2.3372168e+03 -1.0405875e+03 - -2.4759256e+03 2.2908434e+03 -1.0105784e+03 - -2.5255595e+03 2.2349812e+03 -9.7232849e+02 - -2.5819842e+03 2.1702063e+03 -9.2581541e+02 - -2.6438707e+03 2.0975405e+03 -8.7169954e+02 - -2.7095388e+03 2.0183783e+03 -8.1132421e+02 - -2.7771285e+03 1.9343394e+03 -7.4657334e+02 - -2.8448101e+03 1.8470804e+03 -6.7961365e+02 - -2.9109770e+03 1.7581135e+03 -6.1259540e+02 - -2.9743730e+03 1.6686790e+03 -5.4739659e+02 - -3.0341361e+03 1.5796890e+03 -4.8546678e+02 - -3.0897712e+03 1.4917366e+03 -4.2778107e+02 - -3.1410795e+03 1.4051464e+03 -3.7487905e+02 - -3.1880758e+03 1.3200413e+03 -3.2695006e+02 - -3.2309101e+03 1.2364080e+03 -2.8393129e+02 - -3.2698069e+03 1.1541507e+03 -2.4559704e+02 - -3.3050214e+03 1.0731305e+03 -2.1162995e+02 - -3.3368107e+03 9.9319236e+02 -1.8167250e+02 - -3.3654177e+03 9.1418169e+02 -1.5536142e+02 - -3.3910624e+03 8.3595390e+02 -1.3234904e+02 - -3.4139386e+03 7.5837882e+02 -1.1231511e+02 - -3.4342135e+03 6.8134227e+02 -9.4972608e+01 - -3.4520292e+03 6.0474587e+02 -8.0069442e+01 - -3.4675050e+03 5.2850574e+02 -6.7388023e+01 - -3.4807398e+03 4.5255089e+02 -5.6743531e+01 - -3.4918143e+03 3.7682133e+02 -4.7981702e+01 - -3.5007932e+03 3.0126625e+02 -4.0976511e+01 - -3.5077270e+03 2.2584227e+02 -3.5628007e+01 - -3.5126537e+03 1.5051173e+02 -3.1860448e+01 - -3.5155995e+03 7.5241202e+01 -2.9620816e+01 - -3.5165797e+03 2.4067136e-09 -2.8877734e+01 - -3.5155995e+03 -7.5241202e+01 -2.9620816e+01 - -3.5126537e+03 -1.5051173e+02 -3.1860448e+01 - -3.5077270e+03 -2.2584227e+02 -3.5628007e+01 - -3.5007932e+03 -3.0126625e+02 -4.0976511e+01 - -3.4918143e+03 -3.7682133e+02 -4.7981702e+01 - -3.4807398e+03 -4.5255089e+02 -5.6743531e+01 - -3.4675050e+03 -5.2850574e+02 -6.7388023e+01 - -3.4520292e+03 -6.0474587e+02 -8.0069442e+01 - -3.4342135e+03 -6.8134227e+02 -9.4972608e+01 - -3.4139386e+03 -7.5837882e+02 -1.1231511e+02 - -3.3910624e+03 -8.3595390e+02 -1.3234904e+02 - -3.3654177e+03 -9.1418169e+02 -1.5536142e+02 - -3.3368107e+03 -9.9319236e+02 -1.8167250e+02 - -3.3050214e+03 -1.0731305e+03 -2.1162995e+02 - -3.2698069e+03 -1.1541507e+03 -2.4559704e+02 - -3.2309101e+03 -1.2364080e+03 -2.8393129e+02 - -3.1880758e+03 -1.3200413e+03 -3.2695006e+02 - -3.1410795e+03 -1.4051464e+03 -3.7487905e+02 - -3.0897712e+03 -1.4917366e+03 -4.2778107e+02 - -3.0341361e+03 -1.5796890e+03 -4.8546678e+02 - -2.9743730e+03 -1.6686790e+03 -5.4739659e+02 - -2.9109770e+03 -1.7581135e+03 -6.1259540e+02 - -2.8448101e+03 -1.8470804e+03 -6.7961365e+02 - -2.7771285e+03 -1.9343394e+03 -7.4657334e+02 - -2.7095388e+03 -2.0183783e+03 -8.1132421e+02 - -2.6438707e+03 -2.0975405e+03 -8.7169954e+02 - -2.5819842e+03 -2.1702063e+03 -9.2581541e+02 - -2.5255595e+03 -2.2349812e+03 -9.7232849e+02 - -2.4759256e+03 -2.2908434e+03 -1.0105784e+03 - -2.4339672e+03 -2.3372168e+03 -1.0405875e+03 - -2.4001141e+03 -2.3739700e+03 -1.0629444e+03 - -2.3743918e+03 -2.4013606e+03 -1.0786265e+03 - -2.3565006e+03 -2.4199562e+03 -1.0888180e+03 - -2.3458945e+03 -2.4305561e+03 -1.0947568e+03 - -2.3418467e+03 -2.4341247e+03 -1.0976248e+03 - -2.3434959e+03 -2.4317425e+03 -1.0984774e+03 - -2.3498762e+03 -2.4245694e+03 -1.0982031e+03 - -2.3599373e+03 -2.4138180e+03 -1.0975029e+03 - -2.3725586e+03 -2.4007313e+03 -1.0968808e+03 - -2.3865631e+03 -2.3865631e+03 -1.0966397e+03 - -2.4007313e+03 -2.3725586e+03 -1.0968808e+03 - -2.4138180e+03 -2.3599373e+03 -1.0975029e+03 - -2.4245694e+03 -2.3498762e+03 -1.0982031e+03 - -2.4317425e+03 -2.3434959e+03 -1.0984774e+03 - -2.4341247e+03 -2.3418467e+03 -1.0976248e+03 - -2.4305561e+03 -2.3458945e+03 -1.0947568e+03 - -2.4199562e+03 -2.3565006e+03 -1.0888180e+03 - -2.4013606e+03 -2.3743918e+03 -1.0786265e+03 - -2.3739700e+03 -2.4001141e+03 -1.0629444e+03 - -2.3372168e+03 -2.4339672e+03 -1.0405875e+03 - -2.2908434e+03 -2.4759256e+03 -1.0105784e+03 - -2.2349812e+03 -2.5255595e+03 -9.7232849e+02 - -2.1702063e+03 -2.5819842e+03 -9.2581541e+02 - -2.0975405e+03 -2.6438707e+03 -8.7169954e+02 - -2.0183783e+03 -2.7095388e+03 -8.1132421e+02 - -1.9343394e+03 -2.7771285e+03 -7.4657334e+02 - -1.8470804e+03 -2.8448101e+03 -6.7961365e+02 - -1.7581135e+03 -2.9109770e+03 -6.1259540e+02 - -1.6686790e+03 -2.9743730e+03 -5.4739659e+02 - -1.5796890e+03 -3.0341361e+03 -4.8546678e+02 - -1.4917366e+03 -3.0897712e+03 -4.2778107e+02 - -1.4051464e+03 -3.1410795e+03 -3.7487905e+02 - -1.3200413e+03 -3.1880758e+03 -3.2695006e+02 - -1.2364080e+03 -3.2309101e+03 -2.8393129e+02 - -1.1541507e+03 -3.2698069e+03 -2.4559704e+02 - -1.0731305e+03 -3.3050214e+03 -2.1162995e+02 - -9.9319236e+02 -3.3368107e+03 -1.8167250e+02 - -9.1418169e+02 -3.3654177e+03 -1.5536142e+02 - -8.3595390e+02 -3.3910624e+03 -1.3234904e+02 - -7.5837882e+02 -3.4139386e+03 -1.1231511e+02 - -6.8134227e+02 -3.4342135e+03 -9.4972608e+01 - -6.0474587e+02 -3.4520292e+03 -8.0069442e+01 - -5.2850574e+02 -3.4675050e+03 -6.7388023e+01 - -4.5255089e+02 -3.4807398e+03 -5.6743531e+01 - -3.7682133e+02 -3.4918143e+03 -4.7981702e+01 - -3.0126625e+02 -3.5007932e+03 -4.0976511e+01 - -2.2584227e+02 -3.5077270e+03 -3.5628007e+01 - -1.5051173e+02 -3.5126537e+03 -3.1860448e+01 - -7.5241202e+01 -3.5155995e+03 -2.9620816e+01 - 2.4067136e-09 -3.5165797e+03 -2.8877734e+01 - 7.5241202e+01 -3.5155995e+03 -2.9620816e+01 - 1.5051173e+02 -3.5126537e+03 -3.1860448e+01 - 2.2584227e+02 -3.5077270e+03 -3.5628007e+01 - 3.0126625e+02 -3.5007932e+03 -4.0976511e+01 - 3.7682133e+02 -3.4918143e+03 -4.7981702e+01 - 4.5255089e+02 -3.4807398e+03 -5.6743531e+01 - 5.2850574e+02 -3.4675050e+03 -6.7388023e+01 - 6.0474587e+02 -3.4520292e+03 -8.0069442e+01 - 6.8134227e+02 -3.4342135e+03 -9.4972608e+01 - 7.5837882e+02 -3.4139386e+03 -1.1231511e+02 - 8.3595390e+02 -3.3910624e+03 -1.3234904e+02 - 9.1418169e+02 -3.3654177e+03 -1.5536142e+02 - 9.9319236e+02 -3.3368107e+03 -1.8167250e+02 - 1.0731305e+03 -3.3050214e+03 -2.1162995e+02 - 1.1541507e+03 -3.2698069e+03 -2.4559704e+02 - 1.2364080e+03 -3.2309101e+03 -2.8393129e+02 - 1.3200413e+03 -3.1880758e+03 -3.2695006e+02 - 1.4051464e+03 -3.1410795e+03 -3.7487905e+02 - 1.4917366e+03 -3.0897712e+03 -4.2778107e+02 - 1.5796890e+03 -3.0341361e+03 -4.8546678e+02 - 1.6686790e+03 -2.9743730e+03 -5.4739659e+02 - 1.7581135e+03 -2.9109770e+03 -6.1259540e+02 - 1.8470804e+03 -2.8448101e+03 -6.7961365e+02 - 1.9343394e+03 -2.7771285e+03 -7.4657334e+02 - 2.0183783e+03 -2.7095388e+03 -8.1132421e+02 - 2.0975405e+03 -2.6438707e+03 -8.7169954e+02 - 2.1702063e+03 -2.5819842e+03 -9.2581541e+02 - 2.2349812e+03 -2.5255595e+03 -9.7232849e+02 - 2.2908434e+03 -2.4759256e+03 -1.0105784e+03 - 2.3372168e+03 -2.4339672e+03 -1.0405875e+03 - 2.3739700e+03 -2.4001141e+03 -1.0629444e+03 - 2.4013606e+03 -2.3743918e+03 -1.0786265e+03 - 2.4199562e+03 -2.3565006e+03 -1.0888180e+03 - 2.4305561e+03 -2.3458945e+03 -1.0947568e+03 - 2.4341247e+03 -2.3418467e+03 -1.0976248e+03 - 2.4317425e+03 -2.3434959e+03 -1.0984774e+03 - 2.4245694e+03 -2.3498762e+03 -1.0982031e+03 - 2.4138180e+03 -2.3599373e+03 -1.0975029e+03 - 2.4007313e+03 -2.3725586e+03 -1.0968808e+03 - 2.3865631e+03 -2.3865631e+03 -1.0966397e+03 - 2.3725586e+03 -2.4007313e+03 -1.0968808e+03 - 2.3599373e+03 -2.4138180e+03 -1.0975029e+03 - 2.3498762e+03 -2.4245694e+03 -1.0982031e+03 - 2.3434959e+03 -2.4317425e+03 -1.0984774e+03 - 2.3418467e+03 -2.4341247e+03 -1.0976248e+03 - 2.3458945e+03 -2.4305561e+03 -1.0947568e+03 - 2.3565006e+03 -2.4199562e+03 -1.0888180e+03 - 2.3743918e+03 -2.4013606e+03 -1.0786265e+03 - 2.4001141e+03 -2.3739700e+03 -1.0629444e+03 - 2.4339672e+03 -2.3372168e+03 -1.0405875e+03 - 2.4759256e+03 -2.2908434e+03 -1.0105784e+03 - 2.5255595e+03 -2.2349812e+03 -9.7232849e+02 - 2.5819842e+03 -2.1702063e+03 -9.2581541e+02 - 2.6438707e+03 -2.0975405e+03 -8.7169954e+02 - 2.7095388e+03 -2.0183783e+03 -8.1132421e+02 - 2.7771285e+03 -1.9343394e+03 -7.4657334e+02 - 2.8448101e+03 -1.8470804e+03 -6.7961365e+02 - 2.9109770e+03 -1.7581135e+03 -6.1259540e+02 - 2.9743730e+03 -1.6686790e+03 -5.4739659e+02 - 3.0341361e+03 -1.5796890e+03 -4.8546678e+02 - 3.0897712e+03 -1.4917366e+03 -4.2778107e+02 - 3.1410795e+03 -1.4051464e+03 -3.7487905e+02 - 3.1880758e+03 -1.3200413e+03 -3.2695006e+02 - 3.2309101e+03 -1.2364080e+03 -2.8393129e+02 - 3.2698069e+03 -1.1541507e+03 -2.4559704e+02 - 3.3050214e+03 -1.0731305e+03 -2.1162995e+02 - 3.3368107e+03 -9.9319236e+02 -1.8167250e+02 - 3.3654177e+03 -9.1418169e+02 -1.5536142e+02 - 3.3910624e+03 -8.3595390e+02 -1.3234904e+02 - 3.4139386e+03 -7.5837882e+02 -1.1231511e+02 - 3.4342135e+03 -6.8134227e+02 -9.4972608e+01 - 3.4520292e+03 -6.0474587e+02 -8.0069442e+01 - 3.4675050e+03 -5.2850574e+02 -6.7388023e+01 - 3.4807398e+03 -4.5255089e+02 -5.6743531e+01 - 3.4918143e+03 -3.7682133e+02 -4.7981702e+01 - 3.5007932e+03 -3.0126625e+02 -4.0976511e+01 - 3.5077270e+03 -2.2584227e+02 -3.5628007e+01 - 3.5126537e+03 -1.5051173e+02 -3.1860448e+01 - 3.5155995e+03 -7.5241202e+01 -2.9620816e+01 - 3.5165797e+03 2.4067136e-09 -2.8877734e+01 - 3.5027592e+03 2.4067136e-09 -7.0004459e+01 - 3.5016885e+03 7.6807721e+01 -7.0917277e+01 - 3.4984697e+03 1.5366163e+02 -7.3668402e+01 - 3.4930824e+03 2.3060951e+02 -7.8296051e+01 - 3.4854923e+03 3.0770237e+02 -8.4864610e+01 - 3.4756500e+03 3.8499608e+02 -9.3465629e+01 - 3.4634899e+03 4.6255305e+02 -1.0421911e+02 - 3.4489289e+03 5.4044392e+02 -1.1727498e+02 - 3.4318644e+03 6.1874912e+02 -1.3281451e+02 - 3.4121726e+03 6.9756035e+02 -1.5105138e+02 - 3.3897073e+03 7.7698149e+02 -1.7223181e+02 - 3.3642983e+03 8.5712886e+02 -1.9663294e+02 - 3.3357520e+03 9.3812996e+02 -2.2455835e+02 - 3.3038538e+03 1.0201200e+03 -2.5632892e+02 - 3.2683744e+03 1.1032350e+03 -2.9226695e+02 - 3.2290818e+03 1.1875995e+03 -3.3267065e+02 - 3.1857615e+03 1.2733078e+03 -3.7777625e+02 - 3.1382478e+03 1.3603953e+03 -4.2770535e+02 - 3.0864679e+03 1.4488006e+03 -4.8239761e+02 - 3.0304989e+03 1.5383177e+03 -5.4153304e+02 - 2.9706330e+03 1.6285442e+03 -6.0445580e+02 - 2.9074404e+03 1.7188349e+03 -6.7011983e+02 - 2.8418121e+03 1.8082765e+03 -7.3708329e+02 - 2.7749603e+03 1.8957004e+03 -8.0357688e+02 - 2.7083620e+03 1.9797469e+03 -8.6765568e+02 - 2.6436425e+03 2.0589769e+03 -9.2741579e+02 - 2.5824198e+03 2.1320136e+03 -9.8122850e+02 - 2.5261457e+03 2.1976801e+03 -1.0279312e+03 - 2.4759821e+03 2.2551026e+03 -1.0669284e+03 - 2.4327347e+03 2.3037597e+03 -1.0981882e+03 - 2.3968460e+03 2.3434805e+03 -1.1221553e+03 - 2.3684308e+03 2.3744066e+03 -1.1396176e+03 - 2.3473337e+03 2.3969364e+03 -1.1515659e+03 - 2.3331873e+03 2.4116686e+03 -1.1590719e+03 - 2.3254621e+03 2.4193539e+03 -1.1631945e+03 - 2.3235023e+03 2.4208580e+03 -1.1649167e+03 - 2.3265502e+03 2.4171328e+03 -1.1651045e+03 - 2.3337619e+03 2.4091956e+03 -1.1644840e+03 - 2.3442184e+03 2.3981100e+03 -1.1636278e+03 - 2.3569360e+03 2.3849692e+03 -1.1629483e+03 - 2.3708782e+03 2.3708782e+03 -1.1626941e+03 - 2.3849692e+03 2.3569360e+03 -1.1629483e+03 - 2.3981100e+03 2.3442184e+03 -1.1636278e+03 - 2.4091956e+03 2.3337619e+03 -1.1644840e+03 - 2.4171328e+03 2.3265502e+03 -1.1651045e+03 - 2.4208580e+03 2.3235023e+03 -1.1649167e+03 - 2.4193539e+03 2.3254621e+03 -1.1631945e+03 - 2.4116686e+03 2.3331873e+03 -1.1590719e+03 - 2.3969364e+03 2.3473337e+03 -1.1515659e+03 - 2.3744066e+03 2.3684308e+03 -1.1396176e+03 - 2.3434805e+03 2.3968460e+03 -1.1221553e+03 - 2.3037597e+03 2.4327347e+03 -1.0981882e+03 - 2.2551026e+03 2.4759821e+03 -1.0669284e+03 - 2.1976801e+03 2.5261457e+03 -1.0279312e+03 - 2.1320136e+03 2.5824198e+03 -9.8122850e+02 - 2.0589769e+03 2.6436425e+03 -9.2741579e+02 - 1.9797469e+03 2.7083620e+03 -8.6765568e+02 - 1.8957004e+03 2.7749603e+03 -8.0357688e+02 - 1.8082765e+03 2.8418121e+03 -7.3708329e+02 - 1.7188349e+03 2.9074404e+03 -6.7011983e+02 - 1.6285442e+03 2.9706330e+03 -6.0445580e+02 - 1.5383177e+03 3.0304989e+03 -5.4153304e+02 - 1.4488006e+03 3.0864679e+03 -4.8239761e+02 - 1.3603953e+03 3.1382478e+03 -4.2770535e+02 - 1.2733078e+03 3.1857615e+03 -3.7777625e+02 - 1.1875995e+03 3.2290818e+03 -3.3267065e+02 - 1.1032350e+03 3.2683744e+03 -2.9226695e+02 - 1.0201200e+03 3.3038538e+03 -2.5632892e+02 - 9.3812996e+02 3.3357520e+03 -2.2455835e+02 - 8.5712886e+02 3.3642983e+03 -1.9663294e+02 - 7.7698149e+02 3.3897073e+03 -1.7223181e+02 - 6.9756035e+02 3.4121726e+03 -1.5105138e+02 - 6.1874912e+02 3.4318644e+03 -1.3281451e+02 - 5.4044392e+02 3.4489289e+03 -1.1727498e+02 - 4.6255305e+02 3.4634899e+03 -1.0421911e+02 - 3.8499608e+02 3.4756500e+03 -9.3465629e+01 - 3.0770237e+02 3.4854923e+03 -8.4864610e+01 - 2.3060951e+02 3.4930824e+03 -7.8296051e+01 - 1.5366163e+02 3.4984697e+03 -7.3668402e+01 - 7.6807721e+01 3.5016885e+03 -7.0917277e+01 - 4.8134273e-09 3.5027592e+03 -7.0004459e+01 - -7.6807721e+01 3.5016885e+03 -7.0917277e+01 - -1.5366163e+02 3.4984697e+03 -7.3668402e+01 - -2.3060951e+02 3.4930824e+03 -7.8296051e+01 - -3.0770237e+02 3.4854923e+03 -8.4864610e+01 - -3.8499608e+02 3.4756500e+03 -9.3465629e+01 - -4.6255305e+02 3.4634899e+03 -1.0421911e+02 - -5.4044392e+02 3.4489289e+03 -1.1727498e+02 - -6.1874912e+02 3.4318644e+03 -1.3281451e+02 - -6.9756035e+02 3.4121726e+03 -1.5105138e+02 - -7.7698149e+02 3.3897073e+03 -1.7223181e+02 - -8.5712886e+02 3.3642983e+03 -1.9663294e+02 - -9.3812996e+02 3.3357520e+03 -2.2455835e+02 - -1.0201200e+03 3.3038538e+03 -2.5632892e+02 - -1.1032350e+03 3.2683744e+03 -2.9226695e+02 - -1.1875995e+03 3.2290818e+03 -3.3267065e+02 - -1.2733078e+03 3.1857615e+03 -3.7777625e+02 - -1.3603953e+03 3.1382478e+03 -4.2770535e+02 - -1.4488006e+03 3.0864679e+03 -4.8239761e+02 - -1.5383177e+03 3.0304989e+03 -5.4153304e+02 - -1.6285442e+03 2.9706330e+03 -6.0445580e+02 - -1.7188349e+03 2.9074404e+03 -6.7011983e+02 - -1.8082765e+03 2.8418121e+03 -7.3708329e+02 - -1.8957004e+03 2.7749603e+03 -8.0357688e+02 - -1.9797469e+03 2.7083620e+03 -8.6765568e+02 - -2.0589769e+03 2.6436425e+03 -9.2741579e+02 - -2.1320136e+03 2.5824198e+03 -9.8122850e+02 - -2.1976801e+03 2.5261457e+03 -1.0279312e+03 - -2.2551026e+03 2.4759821e+03 -1.0669284e+03 - -2.3037597e+03 2.4327347e+03 -1.0981882e+03 - -2.3434805e+03 2.3968460e+03 -1.1221553e+03 - -2.3744066e+03 2.3684308e+03 -1.1396176e+03 - -2.3969364e+03 2.3473337e+03 -1.1515659e+03 - -2.4116686e+03 2.3331873e+03 -1.1590719e+03 - -2.4193539e+03 2.3254621e+03 -1.1631945e+03 - -2.4208580e+03 2.3235023e+03 -1.1649167e+03 - -2.4171328e+03 2.3265502e+03 -1.1651045e+03 - -2.4091956e+03 2.3337619e+03 -1.1644840e+03 - -2.3981100e+03 2.3442184e+03 -1.1636278e+03 - -2.3849692e+03 2.3569360e+03 -1.1629483e+03 - -2.3708782e+03 2.3708782e+03 -1.1626941e+03 - -2.3569360e+03 2.3849692e+03 -1.1629483e+03 - -2.3442184e+03 2.3981100e+03 -1.1636278e+03 - -2.3337619e+03 2.4091956e+03 -1.1644840e+03 - -2.3265502e+03 2.4171328e+03 -1.1651045e+03 - -2.3235023e+03 2.4208580e+03 -1.1649167e+03 - -2.3254621e+03 2.4193539e+03 -1.1631945e+03 - -2.3331873e+03 2.4116686e+03 -1.1590719e+03 - -2.3473337e+03 2.3969364e+03 -1.1515659e+03 - -2.3684308e+03 2.3744066e+03 -1.1396176e+03 - -2.3968460e+03 2.3434805e+03 -1.1221553e+03 - -2.4327347e+03 2.3037597e+03 -1.0981882e+03 - -2.4759821e+03 2.2551026e+03 -1.0669284e+03 - -2.5261457e+03 2.1976801e+03 -1.0279312e+03 - -2.5824198e+03 2.1320136e+03 -9.8122850e+02 - -2.6436425e+03 2.0589769e+03 -9.2741579e+02 - -2.7083620e+03 1.9797469e+03 -8.6765568e+02 - -2.7749603e+03 1.8957004e+03 -8.0357688e+02 - -2.8418121e+03 1.8082765e+03 -7.3708329e+02 - -2.9074404e+03 1.7188349e+03 -6.7011983e+02 - -2.9706330e+03 1.6285442e+03 -6.0445580e+02 - -3.0304989e+03 1.5383177e+03 -5.4153304e+02 - -3.0864679e+03 1.4488006e+03 -4.8239761e+02 - -3.1382478e+03 1.3603953e+03 -4.2770535e+02 - -3.1857615e+03 1.2733078e+03 -3.7777625e+02 - -3.2290818e+03 1.1875995e+03 -3.3267065e+02 - -3.2683744e+03 1.1032350e+03 -2.9226695e+02 - -3.3038538e+03 1.0201200e+03 -2.5632892e+02 - -3.3357520e+03 9.3812996e+02 -2.2455835e+02 - -3.3642983e+03 8.5712886e+02 -1.9663294e+02 - -3.3897073e+03 7.7698149e+02 -1.7223181e+02 - -3.4121726e+03 6.9756035e+02 -1.5105138e+02 - -3.4318644e+03 6.1874912e+02 -1.3281451e+02 - -3.4489289e+03 5.4044392e+02 -1.1727498e+02 - -3.4634899e+03 4.6255305e+02 -1.0421911e+02 - -3.4756500e+03 3.8499608e+02 -9.3465629e+01 - -3.4854923e+03 3.0770237e+02 -8.4864610e+01 - -3.4930824e+03 2.3060951e+02 -7.8296051e+01 - -3.4984697e+03 1.5366163e+02 -7.3668402e+01 - -3.5016885e+03 7.6807721e+01 -7.0917277e+01 - -3.5027592e+03 2.4067136e-09 -7.0004459e+01 - -3.5016885e+03 -7.6807721e+01 -7.0917277e+01 - -3.4984697e+03 -1.5366163e+02 -7.3668402e+01 - -3.4930824e+03 -2.3060951e+02 -7.8296051e+01 - -3.4854923e+03 -3.0770237e+02 -8.4864610e+01 - -3.4756500e+03 -3.8499608e+02 -9.3465629e+01 - -3.4634899e+03 -4.6255305e+02 -1.0421911e+02 - -3.4489289e+03 -5.4044392e+02 -1.1727498e+02 - -3.4318644e+03 -6.1874912e+02 -1.3281451e+02 - -3.4121726e+03 -6.9756035e+02 -1.5105138e+02 - -3.3897073e+03 -7.7698149e+02 -1.7223181e+02 - -3.3642983e+03 -8.5712886e+02 -1.9663294e+02 - -3.3357520e+03 -9.3812996e+02 -2.2455835e+02 - -3.3038538e+03 -1.0201200e+03 -2.5632892e+02 - -3.2683744e+03 -1.1032350e+03 -2.9226695e+02 - -3.2290818e+03 -1.1875995e+03 -3.3267065e+02 - -3.1857615e+03 -1.2733078e+03 -3.7777625e+02 - -3.1382478e+03 -1.3603953e+03 -4.2770535e+02 - -3.0864679e+03 -1.4488006e+03 -4.8239761e+02 - -3.0304989e+03 -1.5383177e+03 -5.4153304e+02 - -2.9706330e+03 -1.6285442e+03 -6.0445580e+02 - -2.9074404e+03 -1.7188349e+03 -6.7011983e+02 - -2.8418121e+03 -1.8082765e+03 -7.3708329e+02 - -2.7749603e+03 -1.8957004e+03 -8.0357688e+02 - -2.7083620e+03 -1.9797469e+03 -8.6765568e+02 - -2.6436425e+03 -2.0589769e+03 -9.2741579e+02 - -2.5824198e+03 -2.1320136e+03 -9.8122850e+02 - -2.5261457e+03 -2.1976801e+03 -1.0279312e+03 - -2.4759821e+03 -2.2551026e+03 -1.0669284e+03 - -2.4327347e+03 -2.3037597e+03 -1.0981882e+03 - -2.3968460e+03 -2.3434805e+03 -1.1221553e+03 - -2.3684308e+03 -2.3744066e+03 -1.1396176e+03 - -2.3473337e+03 -2.3969364e+03 -1.1515659e+03 - -2.3331873e+03 -2.4116686e+03 -1.1590719e+03 - -2.3254621e+03 -2.4193539e+03 -1.1631945e+03 - -2.3235023e+03 -2.4208580e+03 -1.1649167e+03 - -2.3265502e+03 -2.4171328e+03 -1.1651045e+03 - -2.3337619e+03 -2.4091956e+03 -1.1644840e+03 - -2.3442184e+03 -2.3981100e+03 -1.1636278e+03 - -2.3569360e+03 -2.3849692e+03 -1.1629483e+03 - -2.3708782e+03 -2.3708782e+03 -1.1626941e+03 - -2.3849692e+03 -2.3569360e+03 -1.1629483e+03 - -2.3981100e+03 -2.3442184e+03 -1.1636278e+03 - -2.4091956e+03 -2.3337619e+03 -1.1644840e+03 - -2.4171328e+03 -2.3265502e+03 -1.1651045e+03 - -2.4208580e+03 -2.3235023e+03 -1.1649167e+03 - -2.4193539e+03 -2.3254621e+03 -1.1631945e+03 - -2.4116686e+03 -2.3331873e+03 -1.1590719e+03 - -2.3969364e+03 -2.3473337e+03 -1.1515659e+03 - -2.3744066e+03 -2.3684308e+03 -1.1396176e+03 - -2.3434805e+03 -2.3968460e+03 -1.1221553e+03 - -2.3037597e+03 -2.4327347e+03 -1.0981882e+03 - -2.2551026e+03 -2.4759821e+03 -1.0669284e+03 - -2.1976801e+03 -2.5261457e+03 -1.0279312e+03 - -2.1320136e+03 -2.5824198e+03 -9.8122850e+02 - -2.0589769e+03 -2.6436425e+03 -9.2741579e+02 - -1.9797469e+03 -2.7083620e+03 -8.6765568e+02 - -1.8957004e+03 -2.7749603e+03 -8.0357688e+02 - -1.8082765e+03 -2.8418121e+03 -7.3708329e+02 - -1.7188349e+03 -2.9074404e+03 -6.7011983e+02 - -1.6285442e+03 -2.9706330e+03 -6.0445580e+02 - -1.5383177e+03 -3.0304989e+03 -5.4153304e+02 - -1.4488006e+03 -3.0864679e+03 -4.8239761e+02 - -1.3603953e+03 -3.1382478e+03 -4.2770535e+02 - -1.2733078e+03 -3.1857615e+03 -3.7777625e+02 - -1.1875995e+03 -3.2290818e+03 -3.3267065e+02 - -1.1032350e+03 -3.2683744e+03 -2.9226695e+02 - -1.0201200e+03 -3.3038538e+03 -2.5632892e+02 - -9.3812996e+02 -3.3357520e+03 -2.2455835e+02 - -8.5712886e+02 -3.3642983e+03 -1.9663294e+02 - -7.7698149e+02 -3.3897073e+03 -1.7223181e+02 - -6.9756035e+02 -3.4121726e+03 -1.5105138e+02 - -6.1874912e+02 -3.4318644e+03 -1.3281451e+02 - -5.4044392e+02 -3.4489289e+03 -1.1727498e+02 - -4.6255305e+02 -3.4634899e+03 -1.0421911e+02 - -3.8499608e+02 -3.4756500e+03 -9.3465629e+01 - -3.0770237e+02 -3.4854923e+03 -8.4864610e+01 - -2.3060951e+02 -3.4930824e+03 -7.8296051e+01 - -1.5366163e+02 -3.4984697e+03 -7.3668402e+01 - -7.6807721e+01 -3.5016885e+03 -7.0917277e+01 - 0.0000000e+00 -3.5027592e+03 -7.0004459e+01 - 7.6807721e+01 -3.5016885e+03 -7.0917277e+01 - 1.5366163e+02 -3.4984697e+03 -7.3668402e+01 - 2.3060951e+02 -3.4930824e+03 -7.8296051e+01 - 3.0770237e+02 -3.4854923e+03 -8.4864610e+01 - 3.8499608e+02 -3.4756500e+03 -9.3465629e+01 - 4.6255305e+02 -3.4634899e+03 -1.0421911e+02 - 5.4044392e+02 -3.4489289e+03 -1.1727498e+02 - 6.1874912e+02 -3.4318644e+03 -1.3281451e+02 - 6.9756035e+02 -3.4121726e+03 -1.5105138e+02 - 7.7698149e+02 -3.3897073e+03 -1.7223181e+02 - 8.5712886e+02 -3.3642983e+03 -1.9663294e+02 - 9.3812996e+02 -3.3357520e+03 -2.2455835e+02 - 1.0201200e+03 -3.3038538e+03 -2.5632892e+02 - 1.1032350e+03 -3.2683744e+03 -2.9226695e+02 - 1.1875995e+03 -3.2290818e+03 -3.3267065e+02 - 1.2733078e+03 -3.1857615e+03 -3.7777625e+02 - 1.3603953e+03 -3.1382478e+03 -4.2770535e+02 - 1.4488006e+03 -3.0864679e+03 -4.8239761e+02 - 1.5383177e+03 -3.0304989e+03 -5.4153304e+02 - 1.6285442e+03 -2.9706330e+03 -6.0445580e+02 - 1.7188349e+03 -2.9074404e+03 -6.7011983e+02 - 1.8082765e+03 -2.8418121e+03 -7.3708329e+02 - 1.8957004e+03 -2.7749603e+03 -8.0357688e+02 - 1.9797469e+03 -2.7083620e+03 -8.6765568e+02 - 2.0589769e+03 -2.6436425e+03 -9.2741579e+02 - 2.1320136e+03 -2.5824198e+03 -9.8122850e+02 - 2.1976801e+03 -2.5261457e+03 -1.0279312e+03 - 2.2551026e+03 -2.4759821e+03 -1.0669284e+03 - 2.3037597e+03 -2.4327347e+03 -1.0981882e+03 - 2.3434805e+03 -2.3968460e+03 -1.1221553e+03 - 2.3744066e+03 -2.3684308e+03 -1.1396176e+03 - 2.3969364e+03 -2.3473337e+03 -1.1515659e+03 - 2.4116686e+03 -2.3331873e+03 -1.1590719e+03 - 2.4193539e+03 -2.3254621e+03 -1.1631945e+03 - 2.4208580e+03 -2.3235023e+03 -1.1649167e+03 - 2.4171328e+03 -2.3265502e+03 -1.1651045e+03 - 2.4091956e+03 -2.3337619e+03 -1.1644840e+03 - 2.3981100e+03 -2.3442184e+03 -1.1636278e+03 - 2.3849692e+03 -2.3569360e+03 -1.1629483e+03 - 2.3708782e+03 -2.3708782e+03 -1.1626941e+03 - 2.3569360e+03 -2.3849692e+03 -1.1629483e+03 - 2.3442184e+03 -2.3981100e+03 -1.1636278e+03 - 2.3337619e+03 -2.4091956e+03 -1.1644840e+03 - 2.3265502e+03 -2.4171328e+03 -1.1651045e+03 - 2.3235023e+03 -2.4208580e+03 -1.1649167e+03 - 2.3254621e+03 -2.4193539e+03 -1.1631945e+03 - 2.3331873e+03 -2.4116686e+03 -1.1590719e+03 - 2.3473337e+03 -2.3969364e+03 -1.1515659e+03 - 2.3684308e+03 -2.3744066e+03 -1.1396176e+03 - 2.3968460e+03 -2.3434805e+03 -1.1221553e+03 - 2.4327347e+03 -2.3037597e+03 -1.0981882e+03 - 2.4759821e+03 -2.2551026e+03 -1.0669284e+03 - 2.5261457e+03 -2.1976801e+03 -1.0279312e+03 - 2.5824198e+03 -2.1320136e+03 -9.8122850e+02 - 2.6436425e+03 -2.0589769e+03 -9.2741579e+02 - 2.7083620e+03 -1.9797469e+03 -8.6765568e+02 - 2.7749603e+03 -1.8957004e+03 -8.0357688e+02 - 2.8418121e+03 -1.8082765e+03 -7.3708329e+02 - 2.9074404e+03 -1.7188349e+03 -6.7011983e+02 - 2.9706330e+03 -1.6285442e+03 -6.0445580e+02 - 3.0304989e+03 -1.5383177e+03 -5.4153304e+02 - 3.0864679e+03 -1.4488006e+03 -4.8239761e+02 - 3.1382478e+03 -1.3603953e+03 -4.2770535e+02 - 3.1857615e+03 -1.2733078e+03 -3.7777625e+02 - 3.2290818e+03 -1.1875995e+03 -3.3267065e+02 - 3.2683744e+03 -1.1032350e+03 -2.9226695e+02 - 3.3038538e+03 -1.0201200e+03 -2.5632892e+02 - 3.3357520e+03 -9.3812996e+02 -2.2455835e+02 - 3.3642983e+03 -8.5712886e+02 -1.9663294e+02 - 3.3897073e+03 -7.7698149e+02 -1.7223181e+02 - 3.4121726e+03 -6.9756035e+02 -1.5105138e+02 - 3.4318644e+03 -6.1874912e+02 -1.3281451e+02 - 3.4489289e+03 -5.4044392e+02 -1.1727498e+02 - 3.4634899e+03 -4.6255305e+02 -1.0421911e+02 - 3.4756500e+03 -3.8499608e+02 -9.3465629e+01 - 3.4854923e+03 -3.0770237e+02 -8.4864610e+01 - 3.4930824e+03 -2.3060951e+02 -7.8296051e+01 - 3.4984697e+03 -1.5366163e+02 -7.3668402e+01 - 3.5016885e+03 -7.6807721e+01 -7.0917277e+01 - 3.5027592e+03 2.4067136e-09 -7.0004459e+01 - 3.4862352e+03 4.8134273e-09 -1.1615866e+02 - 3.4850490e+03 7.8768618e+01 -1.1727740e+02 - 3.4814819e+03 1.5760358e+02 -1.2064877e+02 - 3.4755077e+03 2.3657295e+02 -1.2631845e+02 - 3.4670824e+03 3.1574825e+02 -1.3436301e+02 - 3.4561435e+03 3.9520610e+02 -1.4489052e+02 - 3.4426083e+03 4.7502973e+02 -1.5804118e+02 - 3.4263736e+03 5.5531031e+02 -1.7398762e+02 - 3.4073143e+03 6.3614784e+02 -1.9293453e+02 - 3.3852829e+03 7.1765128e+02 -2.1511698e+02 - 3.3601099e+03 7.9993764e+02 -2.4079644e+02 - 3.3316061e+03 8.8312919e+02 -2.7025326e+02 - 3.2995674e+03 9.6734806e+02 -3.0377404e+02 - 3.2637844e+03 1.0527070e+03 -3.4163174e+02 - 3.2240574e+03 1.1392950e+03 -3.8405643e+02 - 3.1802201e+03 1.2271565e+03 -4.3119485e+02 - 3.1321722e+03 1.3162630e+03 -4.8305816e+02 - 3.0799232e+03 1.4064781e+03 -5.3946024e+02 - 3.0236427e+03 1.4975171e+03 -5.9995311e+02 - 2.9637130e+03 1.5889094e+03 -6.6377229e+02 - 2.9007721e+03 1.6799701e+03 -7.2981025e+02 - 2.8357334e+03 1.7697960e+03 -7.9663790e+02 - 2.7697657e+03 1.8572935e+03 -8.6258809e+02 - 2.7042293e+03 1.9412451e+03 -9.2589972e+02 - 2.6405710e+03 2.0204054e+03 -9.8490040e+02 - 2.5801992e+03 2.0936106e+03 -1.0381883e+03 - 2.5243644e+03 2.1598772e+03 -1.0847711e+03 - 2.4740722e+03 2.2184713e+03 -1.1241332e+03 - 2.4300388e+03 2.2689395e+03 -1.1562263e+03 - 2.3926889e+03 2.3111044e+03 -1.1814004e+03 - 2.3621838e+03 2.3450363e+03 -1.2003007e+03 - 2.3384639e+03 2.3710132e+03 -1.2137598e+03 - 2.3212921e+03 2.3894810e+03 -1.2227007e+03 - 2.3102912e+03 2.4010190e+03 -1.2280601e+03 - 2.3049716e+03 2.4063129e+03 -1.2307335e+03 - 2.3047492e+03 2.4061340e+03 -1.2315380e+03 - 2.3089568e+03 2.4013240e+03 -1.2311888e+03 - 2.3168526e+03 2.3927805e+03 -1.2302842e+03 - 2.3276265e+03 2.3814441e+03 -1.2292965e+03 - 2.3404086e+03 2.3682835e+03 -1.2285666e+03 - 2.3542794e+03 2.3542794e+03 -1.2283004e+03 - 2.3682835e+03 2.3404086e+03 -1.2285666e+03 - 2.3814441e+03 2.3276265e+03 -1.2292965e+03 - 2.3927805e+03 2.3168526e+03 -1.2302842e+03 - 2.4013240e+03 2.3089568e+03 -1.2311888e+03 - 2.4061340e+03 2.3047492e+03 -1.2315380e+03 - 2.4063129e+03 2.3049716e+03 -1.2307335e+03 - 2.4010190e+03 2.3102912e+03 -1.2280601e+03 - 2.3894810e+03 2.3212921e+03 -1.2227007e+03 - 2.3710132e+03 2.3384639e+03 -1.2137598e+03 - 2.3450363e+03 2.3621838e+03 -1.2003007e+03 - 2.3111044e+03 2.3926889e+03 -1.1814004e+03 - 2.2689395e+03 2.4300388e+03 -1.1562263e+03 - 2.2184713e+03 2.4740722e+03 -1.1241332e+03 - 2.1598772e+03 2.5243644e+03 -1.0847711e+03 - 2.0936106e+03 2.5801992e+03 -1.0381883e+03 - 2.0204054e+03 2.6405710e+03 -9.8490040e+02 - 1.9412451e+03 2.7042293e+03 -9.2589972e+02 - 1.8572935e+03 2.7697657e+03 -8.6258809e+02 - 1.7697960e+03 2.8357334e+03 -7.9663790e+02 - 1.6799701e+03 2.9007721e+03 -7.2981025e+02 - 1.5889094e+03 2.9637130e+03 -6.6377229e+02 - 1.4975171e+03 3.0236427e+03 -5.9995311e+02 - 1.4064781e+03 3.0799232e+03 -5.3946024e+02 - 1.3162630e+03 3.1321722e+03 -4.8305816e+02 - 1.2271565e+03 3.1802201e+03 -4.3119485e+02 - 1.1392950e+03 3.2240574e+03 -3.8405643e+02 - 1.0527070e+03 3.2637844e+03 -3.4163174e+02 - 9.6734806e+02 3.2995674e+03 -3.0377404e+02 - 8.8312919e+02 3.3316061e+03 -2.7025326e+02 - 7.9993764e+02 3.3601099e+03 -2.4079644e+02 - 7.1765128e+02 3.3852829e+03 -2.1511698e+02 - 6.3614784e+02 3.4073143e+03 -1.9293453e+02 - 5.5531031e+02 3.4263736e+03 -1.7398762e+02 - 4.7502973e+02 3.4426083e+03 -1.5804118e+02 - 3.9520610e+02 3.4561435e+03 -1.4489052e+02 - 3.1574825e+02 3.4670824e+03 -1.3436301e+02 - 2.3657295e+02 3.4755077e+03 -1.2631845e+02 - 1.5760358e+02 3.4814819e+03 -1.2064877e+02 - 7.8768618e+01 3.4850490e+03 -1.1727740e+02 - 2.4067136e-09 3.4862352e+03 -1.1615866e+02 - -7.8768618e+01 3.4850490e+03 -1.1727740e+02 - -1.5760358e+02 3.4814819e+03 -1.2064877e+02 - -2.3657295e+02 3.4755077e+03 -1.2631845e+02 - -3.1574825e+02 3.4670824e+03 -1.3436301e+02 - -3.9520610e+02 3.4561435e+03 -1.4489052e+02 - -4.7502973e+02 3.4426083e+03 -1.5804118e+02 - -5.5531031e+02 3.4263736e+03 -1.7398762e+02 - -6.3614784e+02 3.4073143e+03 -1.9293453e+02 - -7.1765128e+02 3.3852829e+03 -2.1511698e+02 - -7.9993764e+02 3.3601099e+03 -2.4079644e+02 - -8.8312919e+02 3.3316061e+03 -2.7025326e+02 - -9.6734806e+02 3.2995674e+03 -3.0377404e+02 - -1.0527070e+03 3.2637844e+03 -3.4163174e+02 - -1.1392950e+03 3.2240574e+03 -3.8405643e+02 - -1.2271565e+03 3.1802201e+03 -4.3119485e+02 - -1.3162630e+03 3.1321722e+03 -4.8305816e+02 - -1.4064781e+03 3.0799232e+03 -5.3946024e+02 - -1.4975171e+03 3.0236427e+03 -5.9995311e+02 - -1.5889094e+03 2.9637130e+03 -6.6377229e+02 - -1.6799701e+03 2.9007721e+03 -7.2981025e+02 - -1.7697960e+03 2.8357334e+03 -7.9663790e+02 - -1.8572935e+03 2.7697657e+03 -8.6258809e+02 - -1.9412451e+03 2.7042293e+03 -9.2589972e+02 - -2.0204054e+03 2.6405710e+03 -9.8490040e+02 - -2.0936106e+03 2.5801992e+03 -1.0381883e+03 - -2.1598772e+03 2.5243644e+03 -1.0847711e+03 - -2.2184713e+03 2.4740722e+03 -1.1241332e+03 - -2.2689395e+03 2.4300388e+03 -1.1562263e+03 - -2.3111044e+03 2.3926889e+03 -1.1814004e+03 - -2.3450363e+03 2.3621838e+03 -1.2003007e+03 - -2.3710132e+03 2.3384639e+03 -1.2137598e+03 - -2.3894810e+03 2.3212921e+03 -1.2227007e+03 - -2.4010190e+03 2.3102912e+03 -1.2280601e+03 - -2.4063129e+03 2.3049716e+03 -1.2307335e+03 - -2.4061340e+03 2.3047492e+03 -1.2315380e+03 - -2.4013240e+03 2.3089568e+03 -1.2311888e+03 - -2.3927805e+03 2.3168526e+03 -1.2302842e+03 - -2.3814441e+03 2.3276265e+03 -1.2292965e+03 - -2.3682835e+03 2.3404086e+03 -1.2285666e+03 - -2.3542794e+03 2.3542794e+03 -1.2283004e+03 - -2.3404086e+03 2.3682835e+03 -1.2285666e+03 - -2.3276265e+03 2.3814441e+03 -1.2292965e+03 - -2.3168526e+03 2.3927805e+03 -1.2302842e+03 - -2.3089568e+03 2.4013240e+03 -1.2311888e+03 - -2.3047492e+03 2.4061340e+03 -1.2315380e+03 - -2.3049716e+03 2.4063129e+03 -1.2307335e+03 - -2.3102912e+03 2.4010190e+03 -1.2280601e+03 - -2.3212921e+03 2.3894810e+03 -1.2227007e+03 - -2.3384639e+03 2.3710132e+03 -1.2137598e+03 - -2.3621838e+03 2.3450363e+03 -1.2003007e+03 - -2.3926889e+03 2.3111044e+03 -1.1814004e+03 - -2.4300388e+03 2.2689395e+03 -1.1562263e+03 - -2.4740722e+03 2.2184713e+03 -1.1241332e+03 - -2.5243644e+03 2.1598772e+03 -1.0847711e+03 - -2.5801992e+03 2.0936106e+03 -1.0381883e+03 - -2.6405710e+03 2.0204054e+03 -9.8490040e+02 - -2.7042293e+03 1.9412451e+03 -9.2589972e+02 - -2.7697657e+03 1.8572935e+03 -8.6258809e+02 - -2.8357334e+03 1.7697960e+03 -7.9663790e+02 - -2.9007721e+03 1.6799701e+03 -7.2981025e+02 - -2.9637130e+03 1.5889094e+03 -6.6377229e+02 - -3.0236427e+03 1.4975171e+03 -5.9995311e+02 - -3.0799232e+03 1.4064781e+03 -5.3946024e+02 - -3.1321722e+03 1.3162630e+03 -4.8305816e+02 - -3.1802201e+03 1.2271565e+03 -4.3119485e+02 - -3.2240574e+03 1.1392950e+03 -3.8405643e+02 - -3.2637844e+03 1.0527070e+03 -3.4163174e+02 - -3.2995674e+03 9.6734806e+02 -3.0377404e+02 - -3.3316061e+03 8.8312919e+02 -2.7025326e+02 - -3.3601099e+03 7.9993764e+02 -2.4079644e+02 - -3.3852829e+03 7.1765128e+02 -2.1511698e+02 - -3.4073143e+03 6.3614784e+02 -1.9293453e+02 - -3.4263736e+03 5.5531031e+02 -1.7398762e+02 - -3.4426083e+03 4.7502973e+02 -1.5804118e+02 - -3.4561435e+03 3.9520610e+02 -1.4489052e+02 - -3.4670824e+03 3.1574825e+02 -1.3436301e+02 - -3.4755077e+03 2.3657295e+02 -1.2631845e+02 - -3.4814819e+03 1.5760358e+02 -1.2064877e+02 - -3.4850490e+03 7.8768618e+01 -1.1727740e+02 - -3.4862352e+03 0.0000000e+00 -1.1615866e+02 - -3.4850490e+03 -7.8768618e+01 -1.1727740e+02 - -3.4814819e+03 -1.5760358e+02 -1.2064877e+02 - -3.4755077e+03 -2.3657295e+02 -1.2631845e+02 - -3.4670824e+03 -3.1574825e+02 -1.3436301e+02 - -3.4561435e+03 -3.9520610e+02 -1.4489052e+02 - -3.4426083e+03 -4.7502973e+02 -1.5804118e+02 - -3.4263736e+03 -5.5531031e+02 -1.7398762e+02 - -3.4073143e+03 -6.3614784e+02 -1.9293453e+02 - -3.3852829e+03 -7.1765128e+02 -2.1511698e+02 - -3.3601099e+03 -7.9993764e+02 -2.4079644e+02 - -3.3316061e+03 -8.8312919e+02 -2.7025326e+02 - -3.2995674e+03 -9.6734806e+02 -3.0377404e+02 - -3.2637844e+03 -1.0527070e+03 -3.4163174e+02 - -3.2240574e+03 -1.1392950e+03 -3.8405643e+02 - -3.1802201e+03 -1.2271565e+03 -4.3119485e+02 - -3.1321722e+03 -1.3162630e+03 -4.8305816e+02 - -3.0799232e+03 -1.4064781e+03 -5.3946024e+02 - -3.0236427e+03 -1.4975171e+03 -5.9995311e+02 - -2.9637130e+03 -1.5889094e+03 -6.6377229e+02 - -2.9007721e+03 -1.6799701e+03 -7.2981025e+02 - -2.8357334e+03 -1.7697960e+03 -7.9663790e+02 - -2.7697657e+03 -1.8572935e+03 -8.6258809e+02 - -2.7042293e+03 -1.9412451e+03 -9.2589972e+02 - -2.6405710e+03 -2.0204054e+03 -9.8490040e+02 - -2.5801992e+03 -2.0936106e+03 -1.0381883e+03 - -2.5243644e+03 -2.1598772e+03 -1.0847711e+03 - -2.4740722e+03 -2.2184713e+03 -1.1241332e+03 - -2.4300388e+03 -2.2689395e+03 -1.1562263e+03 - -2.3926889e+03 -2.3111044e+03 -1.1814004e+03 - -2.3621838e+03 -2.3450363e+03 -1.2003007e+03 - -2.3384639e+03 -2.3710132e+03 -1.2137598e+03 - -2.3212921e+03 -2.3894810e+03 -1.2227007e+03 - -2.3102912e+03 -2.4010190e+03 -1.2280601e+03 - -2.3049716e+03 -2.4063129e+03 -1.2307335e+03 - -2.3047492e+03 -2.4061340e+03 -1.2315380e+03 - -2.3089568e+03 -2.4013240e+03 -1.2311888e+03 - -2.3168526e+03 -2.3927805e+03 -1.2302842e+03 - -2.3276265e+03 -2.3814441e+03 -1.2292965e+03 - -2.3404086e+03 -2.3682835e+03 -1.2285666e+03 - -2.3542794e+03 -2.3542794e+03 -1.2283004e+03 - -2.3682835e+03 -2.3404086e+03 -1.2285666e+03 - -2.3814441e+03 -2.3276265e+03 -1.2292965e+03 - -2.3927805e+03 -2.3168526e+03 -1.2302842e+03 - -2.4013240e+03 -2.3089568e+03 -1.2311888e+03 - -2.4061340e+03 -2.3047492e+03 -1.2315380e+03 - -2.4063129e+03 -2.3049716e+03 -1.2307335e+03 - -2.4010190e+03 -2.3102912e+03 -1.2280601e+03 - -2.3894810e+03 -2.3212921e+03 -1.2227007e+03 - -2.3710132e+03 -2.3384639e+03 -1.2137598e+03 - -2.3450363e+03 -2.3621838e+03 -1.2003007e+03 - -2.3111044e+03 -2.3926889e+03 -1.1814004e+03 - -2.2689395e+03 -2.4300388e+03 -1.1562263e+03 - -2.2184713e+03 -2.4740722e+03 -1.1241332e+03 - -2.1598772e+03 -2.5243644e+03 -1.0847711e+03 - -2.0936106e+03 -2.5801992e+03 -1.0381883e+03 - -2.0204054e+03 -2.6405710e+03 -9.8490040e+02 - -1.9412451e+03 -2.7042293e+03 -9.2589972e+02 - -1.8572935e+03 -2.7697657e+03 -8.6258809e+02 - -1.7697960e+03 -2.8357334e+03 -7.9663790e+02 - -1.6799701e+03 -2.9007721e+03 -7.2981025e+02 - -1.5889094e+03 -2.9637130e+03 -6.6377229e+02 - -1.4975171e+03 -3.0236427e+03 -5.9995311e+02 - -1.4064781e+03 -3.0799232e+03 -5.3946024e+02 - -1.3162630e+03 -3.1321722e+03 -4.8305816e+02 - -1.2271565e+03 -3.1802201e+03 -4.3119485e+02 - -1.1392950e+03 -3.2240574e+03 -3.8405643e+02 - -1.0527070e+03 -3.2637844e+03 -3.4163174e+02 - -9.6734806e+02 -3.2995674e+03 -3.0377404e+02 - -8.8312919e+02 -3.3316061e+03 -2.7025326e+02 - -7.9993764e+02 -3.3601099e+03 -2.4079644e+02 - -7.1765128e+02 -3.3852829e+03 -2.1511698e+02 - -6.3614784e+02 -3.4073143e+03 -1.9293453e+02 - -5.5531031e+02 -3.4263736e+03 -1.7398762e+02 - -4.7502973e+02 -3.4426083e+03 -1.5804118e+02 - -3.9520610e+02 -3.4561435e+03 -1.4489052e+02 - -3.1574825e+02 -3.4670824e+03 -1.3436301e+02 - -2.3657295e+02 -3.4755077e+03 -1.2631845e+02 - -1.5760358e+02 -3.4814819e+03 -1.2064877e+02 - -7.8768618e+01 -3.4850490e+03 -1.1727740e+02 - 0.0000000e+00 -3.4862352e+03 -1.1615866e+02 - 7.8768618e+01 -3.4850490e+03 -1.1727740e+02 - 1.5760358e+02 -3.4814819e+03 -1.2064877e+02 - 2.3657295e+02 -3.4755077e+03 -1.2631845e+02 - 3.1574825e+02 -3.4670824e+03 -1.3436301e+02 - 3.9520610e+02 -3.4561435e+03 -1.4489052e+02 - 4.7502973e+02 -3.4426083e+03 -1.5804118e+02 - 5.5531031e+02 -3.4263736e+03 -1.7398762e+02 - 6.3614784e+02 -3.4073143e+03 -1.9293453e+02 - 7.1765128e+02 -3.3852829e+03 -2.1511698e+02 - 7.9993764e+02 -3.3601099e+03 -2.4079644e+02 - 8.8312919e+02 -3.3316061e+03 -2.7025326e+02 - 9.6734806e+02 -3.2995674e+03 -3.0377404e+02 - 1.0527070e+03 -3.2637844e+03 -3.4163174e+02 - 1.1392950e+03 -3.2240574e+03 -3.8405643e+02 - 1.2271565e+03 -3.1802201e+03 -4.3119485e+02 - 1.3162630e+03 -3.1321722e+03 -4.8305816e+02 - 1.4064781e+03 -3.0799232e+03 -5.3946024e+02 - 1.4975171e+03 -3.0236427e+03 -5.9995311e+02 - 1.5889094e+03 -2.9637130e+03 -6.6377229e+02 - 1.6799701e+03 -2.9007721e+03 -7.2981025e+02 - 1.7697960e+03 -2.8357334e+03 -7.9663790e+02 - 1.8572935e+03 -2.7697657e+03 -8.6258809e+02 - 1.9412451e+03 -2.7042293e+03 -9.2589972e+02 - 2.0204054e+03 -2.6405710e+03 -9.8490040e+02 - 2.0936106e+03 -2.5801992e+03 -1.0381883e+03 - 2.1598772e+03 -2.5243644e+03 -1.0847711e+03 - 2.2184713e+03 -2.4740722e+03 -1.1241332e+03 - 2.2689395e+03 -2.4300388e+03 -1.1562263e+03 - 2.3111044e+03 -2.3926889e+03 -1.1814004e+03 - 2.3450363e+03 -2.3621838e+03 -1.2003007e+03 - 2.3710132e+03 -2.3384639e+03 -1.2137598e+03 - 2.3894810e+03 -2.3212921e+03 -1.2227007e+03 - 2.4010190e+03 -2.3102912e+03 -1.2280601e+03 - 2.4063129e+03 -2.3049716e+03 -1.2307335e+03 - 2.4061340e+03 -2.3047492e+03 -1.2315380e+03 - 2.4013240e+03 -2.3089568e+03 -1.2311888e+03 - 2.3927805e+03 -2.3168526e+03 -1.2302842e+03 - 2.3814441e+03 -2.3276265e+03 -1.2292965e+03 - 2.3682835e+03 -2.3404086e+03 -1.2285666e+03 - 2.3542794e+03 -2.3542794e+03 -1.2283004e+03 - 2.3404086e+03 -2.3682835e+03 -1.2285666e+03 - 2.3276265e+03 -2.3814441e+03 -1.2292965e+03 - 2.3168526e+03 -2.3927805e+03 -1.2302842e+03 - 2.3089568e+03 -2.4013240e+03 -1.2311888e+03 - 2.3047492e+03 -2.4061340e+03 -1.2315380e+03 - 2.3049716e+03 -2.4063129e+03 -1.2307335e+03 - 2.3102912e+03 -2.4010190e+03 -1.2280601e+03 - 2.3212921e+03 -2.3894810e+03 -1.2227007e+03 - 2.3384639e+03 -2.3710132e+03 -1.2137598e+03 - 2.3621838e+03 -2.3450363e+03 -1.2003007e+03 - 2.3926889e+03 -2.3111044e+03 -1.1814004e+03 - 2.4300388e+03 -2.2689395e+03 -1.1562263e+03 - 2.4740722e+03 -2.2184713e+03 -1.1241332e+03 - 2.5243644e+03 -2.1598772e+03 -1.0847711e+03 - 2.5801992e+03 -2.0936106e+03 -1.0381883e+03 - 2.6405710e+03 -2.0204054e+03 -9.8490040e+02 - 2.7042293e+03 -1.9412451e+03 -9.2589972e+02 - 2.7697657e+03 -1.8572935e+03 -8.6258809e+02 - 2.8357334e+03 -1.7697960e+03 -7.9663790e+02 - 2.9007721e+03 -1.6799701e+03 -7.2981025e+02 - 2.9637130e+03 -1.5889094e+03 -6.6377229e+02 - 3.0236427e+03 -1.4975171e+03 -5.9995311e+02 - 3.0799232e+03 -1.4064781e+03 -5.3946024e+02 - 3.1321722e+03 -1.3162630e+03 -4.8305816e+02 - 3.1802201e+03 -1.2271565e+03 -4.3119485e+02 - 3.2240574e+03 -1.1392950e+03 -3.8405643e+02 - 3.2637844e+03 -1.0527070e+03 -3.4163174e+02 - 3.2995674e+03 -9.6734806e+02 -3.0377404e+02 - 3.3316061e+03 -8.8312919e+02 -2.7025326e+02 - 3.3601099e+03 -7.9993764e+02 -2.4079644e+02 - 3.3852829e+03 -7.1765128e+02 -2.1511698e+02 - 3.4073143e+03 -6.3614784e+02 -1.9293453e+02 - 3.4263736e+03 -5.5531031e+02 -1.7398762e+02 - 3.4426083e+03 -4.7502973e+02 -1.5804118e+02 - 3.4561435e+03 -3.9520610e+02 -1.4489052e+02 - 3.4670824e+03 -3.1574825e+02 -1.3436301e+02 - 3.4755077e+03 -2.3657295e+02 -1.2631845e+02 - 3.4814819e+03 -1.5760358e+02 -1.2064877e+02 - 3.4850490e+03 -7.8768618e+01 -1.1727740e+02 - 3.4862352e+03 7.2201409e-09 -1.1615866e+02 - 3.4668158e+03 2.4067136e-09 -1.6722127e+02 - 3.4654813e+03 8.1228864e+01 -1.6859294e+02 - 3.4614670e+03 1.6254718e+02 -1.7272563e+02 - 3.4547404e+03 2.4404600e+02 -1.7967237e+02 - 3.4452470e+03 3.2581943e+02 -1.8952141e+02 - 3.4329099e+03 4.0796595e+02 -2.0239588e+02 - 3.4176295e+03 4.9058921e+02 -2.1845277e+02 - 3.3992836e+03 5.7379830e+02 -2.3788088e+02 - 3.3777278e+03 6.5770696e+02 -2.6089690e+02 - 3.3527986e+03 7.4243134e+02 -2.8773868e+02 - 3.3243166e+03 8.2808556e+02 -3.1865447e+02 - 3.2920955e+03 9.1477443e+02 -3.5388636e+02 - 3.2559535e+03 1.0025821e+03 -3.9364655e+02 - 3.2157327e+03 1.0915562e+03 -4.3808474e+02 - 3.1713243e+03 1.1816857e+03 -4.8724617e+02 - 3.1227031e+03 1.2728749e+03 -5.4102145e+02 - 3.0699674e+03 1.3649120e+03 -5.9909242e+02 - 3.0133820e+03 1.4574387e+03 -6.6088227e+02 - 2.9534175e+03 1.5499258e+03 -7.2552252e+02 - 2.8907742e+03 1.6416625e+03 -7.9185165e+02 - 2.8263814e+03 1.7317677e+03 -8.5845850e+02 - 2.7613635e+03 1.8192287e+03 -9.2377501e+02 - 2.6969719e+03 1.9029653e+03 -9.8620995e+02 - 2.6344933e+03 1.9819096e+03 -1.0443005e+03 - 2.5751499e+03 2.0550887e+03 -1.0968509e+03 - 2.5200127e+03 2.1216927e+03 -1.1430297e+03 - 2.4699416e+03 2.1811189e+03 -1.1824099e+03 - 2.4255593e+03 2.2329875e+03 -1.2149527e+03 - 2.3872544e+03 2.2771347e+03 -1.2409494e+03 - 2.3552050e+03 2.3135904e+03 -1.2609407e+03 - 2.3294114e+03 2.3425493e+03 -1.2756326e+03 - 2.3097287e+03 2.3643427e+03 -1.2858199e+03 - 2.2958951e+03 2.3794144e+03 -1.2923250e+03 - 2.2875521e+03 2.3883021e+03 -1.2959521e+03 - 2.2842575e+03 2.3916235e+03 -1.2974550e+03 - 2.2854933e+03 2.3900659e+03 -1.2975149e+03 - 2.2906706e+03 2.3843766e+03 -1.2967258e+03 - 2.2991330e+03 2.3753533e+03 -1.2955848e+03 - 2.3101616e+03 2.3638334e+03 -1.2944850e+03 - 2.3229817e+03 2.3506812e+03 -1.2937104e+03 - 2.3367730e+03 2.3367730e+03 -1.2934331e+03 - 2.3506812e+03 2.3229817e+03 -1.2937104e+03 - 2.3638334e+03 2.3101616e+03 -1.2944850e+03 - 2.3753533e+03 2.2991330e+03 -1.2955848e+03 - 2.3843766e+03 2.2906706e+03 -1.2967258e+03 - 2.3900659e+03 2.2854933e+03 -1.2975149e+03 - 2.3916235e+03 2.2842575e+03 -1.2974550e+03 - 2.3883021e+03 2.2875521e+03 -1.2959521e+03 - 2.3794144e+03 2.2958951e+03 -1.2923250e+03 - 2.3643427e+03 2.3097287e+03 -1.2858199e+03 - 2.3425493e+03 2.3294114e+03 -1.2756326e+03 - 2.3135904e+03 2.3552050e+03 -1.2609407e+03 - 2.2771347e+03 2.3872544e+03 -1.2409494e+03 - 2.2329875e+03 2.4255593e+03 -1.2149527e+03 - 2.1811189e+03 2.4699416e+03 -1.1824099e+03 - 2.1216927e+03 2.5200127e+03 -1.1430297e+03 - 2.0550887e+03 2.5751499e+03 -1.0968509e+03 - 1.9819096e+03 2.6344933e+03 -1.0443005e+03 - 1.9029653e+03 2.6969719e+03 -9.8620995e+02 - 1.8192287e+03 2.7613635e+03 -9.2377501e+02 - 1.7317677e+03 2.8263814e+03 -8.5845850e+02 - 1.6416625e+03 2.8907742e+03 -7.9185165e+02 - 1.5499258e+03 2.9534175e+03 -7.2552252e+02 - 1.4574387e+03 3.0133820e+03 -6.6088227e+02 - 1.3649120e+03 3.0699674e+03 -5.9909242e+02 - 1.2728749e+03 3.1227031e+03 -5.4102145e+02 - 1.1816857e+03 3.1713243e+03 -4.8724617e+02 - 1.0915562e+03 3.2157327e+03 -4.3808474e+02 - 1.0025821e+03 3.2559535e+03 -3.9364655e+02 - 9.1477443e+02 3.2920955e+03 -3.5388636e+02 - 8.2808556e+02 3.3243166e+03 -3.1865447e+02 - 7.4243134e+02 3.3527986e+03 -2.8773868e+02 - 6.5770696e+02 3.3777278e+03 -2.6089690e+02 - 5.7379830e+02 3.3992836e+03 -2.3788088e+02 - 4.9058921e+02 3.4176295e+03 -2.1845277e+02 - 4.0796595e+02 3.4329099e+03 -2.0239588e+02 - 3.2581943e+02 3.4452470e+03 -1.8952141e+02 - 2.4404600e+02 3.4547404e+03 -1.7967237e+02 - 1.6254718e+02 3.4614670e+03 -1.7272563e+02 - 8.1228864e+01 3.4654813e+03 -1.6859294e+02 - 0.0000000e+00 3.4668158e+03 -1.6722127e+02 - -8.1228864e+01 3.4654813e+03 -1.6859294e+02 - -1.6254718e+02 3.4614670e+03 -1.7272563e+02 - -2.4404600e+02 3.4547404e+03 -1.7967237e+02 - -3.2581943e+02 3.4452470e+03 -1.8952141e+02 - -4.0796595e+02 3.4329099e+03 -2.0239588e+02 - -4.9058921e+02 3.4176295e+03 -2.1845277e+02 - -5.7379830e+02 3.3992836e+03 -2.3788088e+02 - -6.5770696e+02 3.3777278e+03 -2.6089690e+02 - -7.4243134e+02 3.3527986e+03 -2.8773868e+02 - -8.2808556e+02 3.3243166e+03 -3.1865447e+02 - -9.1477443e+02 3.2920955e+03 -3.5388636e+02 - -1.0025821e+03 3.2559535e+03 -3.9364655e+02 - -1.0915562e+03 3.2157327e+03 -4.3808474e+02 - -1.1816857e+03 3.1713243e+03 -4.8724617e+02 - -1.2728749e+03 3.1227031e+03 -5.4102145e+02 - -1.3649120e+03 3.0699674e+03 -5.9909242e+02 - -1.4574387e+03 3.0133820e+03 -6.6088227e+02 - -1.5499258e+03 2.9534175e+03 -7.2552252e+02 - -1.6416625e+03 2.8907742e+03 -7.9185165e+02 - -1.7317677e+03 2.8263814e+03 -8.5845850e+02 - -1.8192287e+03 2.7613635e+03 -9.2377501e+02 - -1.9029653e+03 2.6969719e+03 -9.8620995e+02 - -1.9819096e+03 2.6344933e+03 -1.0443005e+03 - -2.0550887e+03 2.5751499e+03 -1.0968509e+03 - -2.1216927e+03 2.5200127e+03 -1.1430297e+03 - -2.1811189e+03 2.4699416e+03 -1.1824099e+03 - -2.2329875e+03 2.4255593e+03 -1.2149527e+03 - -2.2771347e+03 2.3872544e+03 -1.2409494e+03 - -2.3135904e+03 2.3552050e+03 -1.2609407e+03 - -2.3425493e+03 2.3294114e+03 -1.2756326e+03 - -2.3643427e+03 2.3097287e+03 -1.2858199e+03 - -2.3794144e+03 2.2958951e+03 -1.2923250e+03 - -2.3883021e+03 2.2875521e+03 -1.2959521e+03 - -2.3916235e+03 2.2842575e+03 -1.2974550e+03 - -2.3900659e+03 2.2854933e+03 -1.2975149e+03 - -2.3843766e+03 2.2906706e+03 -1.2967258e+03 - -2.3753533e+03 2.2991330e+03 -1.2955848e+03 - -2.3638334e+03 2.3101616e+03 -1.2944850e+03 - -2.3506812e+03 2.3229817e+03 -1.2937104e+03 - -2.3367730e+03 2.3367730e+03 -1.2934331e+03 - -2.3229817e+03 2.3506812e+03 -1.2937104e+03 - -2.3101616e+03 2.3638334e+03 -1.2944850e+03 - -2.2991330e+03 2.3753533e+03 -1.2955848e+03 - -2.2906706e+03 2.3843766e+03 -1.2967258e+03 - -2.2854933e+03 2.3900659e+03 -1.2975149e+03 - -2.2842575e+03 2.3916235e+03 -1.2974550e+03 - -2.2875521e+03 2.3883021e+03 -1.2959521e+03 - -2.2958951e+03 2.3794144e+03 -1.2923250e+03 - -2.3097287e+03 2.3643427e+03 -1.2858199e+03 - -2.3294114e+03 2.3425493e+03 -1.2756326e+03 - -2.3552050e+03 2.3135904e+03 -1.2609407e+03 - -2.3872544e+03 2.2771347e+03 -1.2409494e+03 - -2.4255593e+03 2.2329875e+03 -1.2149527e+03 - -2.4699416e+03 2.1811189e+03 -1.1824099e+03 - -2.5200127e+03 2.1216927e+03 -1.1430297e+03 - -2.5751499e+03 2.0550887e+03 -1.0968509e+03 - -2.6344933e+03 1.9819096e+03 -1.0443005e+03 - -2.6969719e+03 1.9029653e+03 -9.8620995e+02 - -2.7613635e+03 1.8192287e+03 -9.2377501e+02 - -2.8263814e+03 1.7317677e+03 -8.5845850e+02 - -2.8907742e+03 1.6416625e+03 -7.9185165e+02 - -2.9534175e+03 1.5499258e+03 -7.2552252e+02 - -3.0133820e+03 1.4574387e+03 -6.6088227e+02 - -3.0699674e+03 1.3649120e+03 -5.9909242e+02 - -3.1227031e+03 1.2728749e+03 -5.4102145e+02 - -3.1713243e+03 1.1816857e+03 -4.8724617e+02 - -3.2157327e+03 1.0915562e+03 -4.3808474e+02 - -3.2559535e+03 1.0025821e+03 -3.9364655e+02 - -3.2920955e+03 9.1477443e+02 -3.5388636e+02 - -3.3243166e+03 8.2808556e+02 -3.1865447e+02 - -3.3527986e+03 7.4243134e+02 -2.8773868e+02 - -3.3777278e+03 6.5770696e+02 -2.6089690e+02 - -3.3992836e+03 5.7379830e+02 -2.3788088e+02 - -3.4176295e+03 4.9058921e+02 -2.1845277e+02 - -3.4329099e+03 4.0796595e+02 -2.0239588e+02 - -3.4452470e+03 3.2581943e+02 -1.8952141e+02 - -3.4547404e+03 2.4404600e+02 -1.7967237e+02 - -3.4614670e+03 1.6254718e+02 -1.7272563e+02 - -3.4654813e+03 8.1228864e+01 -1.6859294e+02 - -3.4668158e+03 -2.4067136e-09 -1.6722127e+02 - -3.4654813e+03 -8.1228864e+01 -1.6859294e+02 - -3.4614670e+03 -1.6254718e+02 -1.7272563e+02 - -3.4547404e+03 -2.4404600e+02 -1.7967237e+02 - -3.4452470e+03 -3.2581943e+02 -1.8952141e+02 - -3.4329099e+03 -4.0796595e+02 -2.0239588e+02 - -3.4176295e+03 -4.9058921e+02 -2.1845277e+02 - -3.3992836e+03 -5.7379830e+02 -2.3788088e+02 - -3.3777278e+03 -6.5770696e+02 -2.6089690e+02 - -3.3527986e+03 -7.4243134e+02 -2.8773868e+02 - -3.3243166e+03 -8.2808556e+02 -3.1865447e+02 - -3.2920955e+03 -9.1477443e+02 -3.5388636e+02 - -3.2559535e+03 -1.0025821e+03 -3.9364655e+02 - -3.2157327e+03 -1.0915562e+03 -4.3808474e+02 - -3.1713243e+03 -1.1816857e+03 -4.8724617e+02 - -3.1227031e+03 -1.2728749e+03 -5.4102145e+02 - -3.0699674e+03 -1.3649120e+03 -5.9909242e+02 - -3.0133820e+03 -1.4574387e+03 -6.6088227e+02 - -2.9534175e+03 -1.5499258e+03 -7.2552252e+02 - -2.8907742e+03 -1.6416625e+03 -7.9185165e+02 - -2.8263814e+03 -1.7317677e+03 -8.5845850e+02 - -2.7613635e+03 -1.8192287e+03 -9.2377501e+02 - -2.6969719e+03 -1.9029653e+03 -9.8620995e+02 - -2.6344933e+03 -1.9819096e+03 -1.0443005e+03 - -2.5751499e+03 -2.0550887e+03 -1.0968509e+03 - -2.5200127e+03 -2.1216927e+03 -1.1430297e+03 - -2.4699416e+03 -2.1811189e+03 -1.1824099e+03 - -2.4255593e+03 -2.2329875e+03 -1.2149527e+03 - -2.3872544e+03 -2.2771347e+03 -1.2409494e+03 - -2.3552050e+03 -2.3135904e+03 -1.2609407e+03 - -2.3294114e+03 -2.3425493e+03 -1.2756326e+03 - -2.3097287e+03 -2.3643427e+03 -1.2858199e+03 - -2.2958951e+03 -2.3794144e+03 -1.2923250e+03 - -2.2875521e+03 -2.3883021e+03 -1.2959521e+03 - -2.2842575e+03 -2.3916235e+03 -1.2974550e+03 - -2.2854933e+03 -2.3900659e+03 -1.2975149e+03 - -2.2906706e+03 -2.3843766e+03 -1.2967258e+03 - -2.2991330e+03 -2.3753533e+03 -1.2955848e+03 - -2.3101616e+03 -2.3638334e+03 -1.2944850e+03 - -2.3229817e+03 -2.3506812e+03 -1.2937104e+03 - -2.3367730e+03 -2.3367730e+03 -1.2934331e+03 - -2.3506812e+03 -2.3229817e+03 -1.2937104e+03 - -2.3638334e+03 -2.3101616e+03 -1.2944850e+03 - -2.3753533e+03 -2.2991330e+03 -1.2955848e+03 - -2.3843766e+03 -2.2906706e+03 -1.2967258e+03 - -2.3900659e+03 -2.2854933e+03 -1.2975149e+03 - -2.3916235e+03 -2.2842575e+03 -1.2974550e+03 - -2.3883021e+03 -2.2875521e+03 -1.2959521e+03 - -2.3794144e+03 -2.2958951e+03 -1.2923250e+03 - -2.3643427e+03 -2.3097287e+03 -1.2858199e+03 - -2.3425493e+03 -2.3294114e+03 -1.2756326e+03 - -2.3135904e+03 -2.3552050e+03 -1.2609407e+03 - -2.2771347e+03 -2.3872544e+03 -1.2409494e+03 - -2.2329875e+03 -2.4255593e+03 -1.2149527e+03 - -2.1811189e+03 -2.4699416e+03 -1.1824099e+03 - -2.1216927e+03 -2.5200127e+03 -1.1430297e+03 - -2.0550887e+03 -2.5751499e+03 -1.0968509e+03 - -1.9819096e+03 -2.6344933e+03 -1.0443005e+03 - -1.9029653e+03 -2.6969719e+03 -9.8620995e+02 - -1.8192287e+03 -2.7613635e+03 -9.2377501e+02 - -1.7317677e+03 -2.8263814e+03 -8.5845850e+02 - -1.6416625e+03 -2.8907742e+03 -7.9185165e+02 - -1.5499258e+03 -2.9534175e+03 -7.2552252e+02 - -1.4574387e+03 -3.0133820e+03 -6.6088227e+02 - -1.3649120e+03 -3.0699674e+03 -5.9909242e+02 - -1.2728749e+03 -3.1227031e+03 -5.4102145e+02 - -1.1816857e+03 -3.1713243e+03 -4.8724617e+02 - -1.0915562e+03 -3.2157327e+03 -4.3808474e+02 - -1.0025821e+03 -3.2559535e+03 -3.9364655e+02 - -9.1477443e+02 -3.2920955e+03 -3.5388636e+02 - -8.2808556e+02 -3.3243166e+03 -3.1865447e+02 - -7.4243134e+02 -3.3527986e+03 -2.8773868e+02 - -6.5770696e+02 -3.3777278e+03 -2.6089690e+02 - -5.7379830e+02 -3.3992836e+03 -2.3788088e+02 - -4.9058921e+02 -3.4176295e+03 -2.1845277e+02 - -4.0796595e+02 -3.4329099e+03 -2.0239588e+02 - -3.2581943e+02 -3.4452470e+03 -1.8952141e+02 - -2.4404600e+02 -3.4547404e+03 -1.7967237e+02 - -1.6254718e+02 -3.4614670e+03 -1.7272563e+02 - -8.1228864e+01 -3.4654813e+03 -1.6859294e+02 - 0.0000000e+00 -3.4668158e+03 -1.6722127e+02 - 8.1228864e+01 -3.4654813e+03 -1.6859294e+02 - 1.6254718e+02 -3.4614670e+03 -1.7272563e+02 - 2.4404600e+02 -3.4547404e+03 -1.7967237e+02 - 3.2581943e+02 -3.4452470e+03 -1.8952141e+02 - 4.0796595e+02 -3.4329099e+03 -2.0239588e+02 - 4.9058921e+02 -3.4176295e+03 -2.1845277e+02 - 5.7379830e+02 -3.3992836e+03 -2.3788088e+02 - 6.5770696e+02 -3.3777278e+03 -2.6089690e+02 - 7.4243134e+02 -3.3527986e+03 -2.8773868e+02 - 8.2808556e+02 -3.3243166e+03 -3.1865447e+02 - 9.1477443e+02 -3.2920955e+03 -3.5388636e+02 - 1.0025821e+03 -3.2559535e+03 -3.9364655e+02 - 1.0915562e+03 -3.2157327e+03 -4.3808474e+02 - 1.1816857e+03 -3.1713243e+03 -4.8724617e+02 - 1.2728749e+03 -3.1227031e+03 -5.4102145e+02 - 1.3649120e+03 -3.0699674e+03 -5.9909242e+02 - 1.4574387e+03 -3.0133820e+03 -6.6088227e+02 - 1.5499258e+03 -2.9534175e+03 -7.2552252e+02 - 1.6416625e+03 -2.8907742e+03 -7.9185165e+02 - 1.7317677e+03 -2.8263814e+03 -8.5845850e+02 - 1.8192287e+03 -2.7613635e+03 -9.2377501e+02 - 1.9029653e+03 -2.6969719e+03 -9.8620995e+02 - 1.9819096e+03 -2.6344933e+03 -1.0443005e+03 - 2.0550887e+03 -2.5751499e+03 -1.0968509e+03 - 2.1216927e+03 -2.5200127e+03 -1.1430297e+03 - 2.1811189e+03 -2.4699416e+03 -1.1824099e+03 - 2.2329875e+03 -2.4255593e+03 -1.2149527e+03 - 2.2771347e+03 -2.3872544e+03 -1.2409494e+03 - 2.3135904e+03 -2.3552050e+03 -1.2609407e+03 - 2.3425493e+03 -2.3294114e+03 -1.2756326e+03 - 2.3643427e+03 -2.3097287e+03 -1.2858199e+03 - 2.3794144e+03 -2.2958951e+03 -1.2923250e+03 - 2.3883021e+03 -2.2875521e+03 -1.2959521e+03 - 2.3916235e+03 -2.2842575e+03 -1.2974550e+03 - 2.3900659e+03 -2.2854933e+03 -1.2975149e+03 - 2.3843766e+03 -2.2906706e+03 -1.2967258e+03 - 2.3753533e+03 -2.2991330e+03 -1.2955848e+03 - 2.3638334e+03 -2.3101616e+03 -1.2944850e+03 - 2.3506812e+03 -2.3229817e+03 -1.2937104e+03 - 2.3367730e+03 -2.3367730e+03 -1.2934331e+03 - 2.3229817e+03 -2.3506812e+03 -1.2937104e+03 - 2.3101616e+03 -2.3638334e+03 -1.2944850e+03 - 2.2991330e+03 -2.3753533e+03 -1.2955848e+03 - 2.2906706e+03 -2.3843766e+03 -1.2967258e+03 - 2.2854933e+03 -2.3900659e+03 -1.2975149e+03 - 2.2842575e+03 -2.3916235e+03 -1.2974550e+03 - 2.2875521e+03 -2.3883021e+03 -1.2959521e+03 - 2.2958951e+03 -2.3794144e+03 -1.2923250e+03 - 2.3097287e+03 -2.3643427e+03 -1.2858199e+03 - 2.3294114e+03 -2.3425493e+03 -1.2756326e+03 - 2.3552050e+03 -2.3135904e+03 -1.2609407e+03 - 2.3872544e+03 -2.2771347e+03 -1.2409494e+03 - 2.4255593e+03 -2.2329875e+03 -1.2149527e+03 - 2.4699416e+03 -2.1811189e+03 -1.1824099e+03 - 2.5200127e+03 -2.1216927e+03 -1.1430297e+03 - 2.5751499e+03 -2.0550887e+03 -1.0968509e+03 - 2.6344933e+03 -1.9819096e+03 -1.0443005e+03 - 2.6969719e+03 -1.9029653e+03 -9.8620995e+02 - 2.7613635e+03 -1.8192287e+03 -9.2377501e+02 - 2.8263814e+03 -1.7317677e+03 -8.5845850e+02 - 2.8907742e+03 -1.6416625e+03 -7.9185165e+02 - 2.9534175e+03 -1.5499258e+03 -7.2552252e+02 - 3.0133820e+03 -1.4574387e+03 -6.6088227e+02 - 3.0699674e+03 -1.3649120e+03 -5.9909242e+02 - 3.1227031e+03 -1.2728749e+03 -5.4102145e+02 - 3.1713243e+03 -1.1816857e+03 -4.8724617e+02 - 3.2157327e+03 -1.0915562e+03 -4.3808474e+02 - 3.2559535e+03 -1.0025821e+03 -3.9364655e+02 - 3.2920955e+03 -9.1477443e+02 -3.5388636e+02 - 3.3243166e+03 -8.2808556e+02 -3.1865447e+02 - 3.3527986e+03 -7.4243134e+02 -2.8773868e+02 - 3.3777278e+03 -6.5770696e+02 -2.6089690e+02 - 3.3992836e+03 -5.7379830e+02 -2.3788088e+02 - 3.4176295e+03 -4.9058921e+02 -2.1845277e+02 - 3.4329099e+03 -4.0796595e+02 -2.0239588e+02 - 3.4452470e+03 -3.2581943e+02 -1.8952141e+02 - 3.4547404e+03 -2.4404600e+02 -1.7967237e+02 - 3.4614670e+03 -1.6254718e+02 -1.7272563e+02 - 3.4654813e+03 -8.1228864e+01 -1.6859294e+02 - 3.4668158e+03 4.8134273e-09 -1.6722127e+02 - 3.4443200e+03 -2.4067136e-09 -2.2305143e+02 - 3.4427929e+03 8.4329976e+01 -2.2473885e+02 - 3.4381988e+03 1.6877399e+02 -2.2982075e+02 - 3.4304987e+03 2.5344694e+02 -2.3835578e+02 - 3.4196283e+03 3.3846524e+02 -2.5044029e+02 - 3.4054983e+03 4.2394696e+02 -2.6620602e+02 - 3.3879956e+03 5.1001106e+02 -2.8581598e+02 - 3.3669863e+03 5.9677551e+02 -3.0945800e+02 - 3.3423195e+03 6.8435347e+02 -3.3733480e+02 - 3.3138349e+03 7.7284727e+02 -3.6964932e+02 - 3.2813733e+03 8.6233912e+02 -4.0658421e+02 - 3.2447924e+03 9.5287823e+02 -4.4827412e+02 - 3.2039888e+03 1.0444637e+03 -4.9477043e+02 - 3.1589250e+03 1.1370236e+03 -5.4599911e+02 - 3.1096629e+03 1.2303909e+03 -6.0171464e+02 - 3.0563993e+03 1.3242794e+03 -6.6145588e+02 - 2.9994997e+03 1.4182638e+03 -7.2451289e+02 - 2.9395221e+03 1.5117682e+03 -7.8991569e+02 - 2.8772236e+03 1.6040712e+03 -8.5645587e+02 - 2.8135428e+03 1.6943291e+03 -9.2274704e+02 - 2.7495558e+03 1.7816194e+03 -9.8732158e+02 - 2.6864086e+03 1.8649985e+03 -1.0487509e+03 - 2.6252393e+03 1.9435666e+03 -1.1057678e+03 - 2.5671009e+03 2.0165253e+03 -1.1573681e+03 - 2.5129010e+03 2.0832228e+03 -1.2028736e+03 - 2.4633642e+03 2.1431777e+03 -1.2419505e+03 - 2.4190196e+03 2.1960848e+03 -1.2745871e+03 - 2.3802089e+03 2.2418058e+03 -1.3010424e+03 - 2.3471072e+03 2.2803512e+03 -1.3217824e+03 - 2.3197485e+03 2.3118588e+03 -1.3374130e+03 - 2.2980516e+03 2.3365750e+03 -1.3486214e+03 - 2.2818399e+03 2.3548375e+03 -1.3561275e+03 - 2.2708566e+03 2.3670643e+03 -1.3606466e+03 - 2.2647737e+03 2.3737445e+03 -1.3628629e+03 - 2.2631965e+03 2.3754322e+03 -1.3634102e+03 - 2.2656660e+03 2.3727411e+03 -1.3628587e+03 - 2.2716597e+03 2.3663384e+03 -1.3617051e+03 - 2.2805936e+03 2.3569378e+03 -1.3603653e+03 - 2.2918255e+03 2.3452898e+03 -1.3591690e+03 - 2.3046617e+03 2.3321699e+03 -1.3583547e+03 - 2.3183657e+03 2.3183656e+03 -1.3580671e+03 - 2.3321699e+03 2.3046617e+03 -1.3583547e+03 - 2.3452898e+03 2.2918255e+03 -1.3591690e+03 - 2.3569378e+03 2.2805936e+03 -1.3603653e+03 - 2.3663384e+03 2.2716597e+03 -1.3617051e+03 - 2.3727411e+03 2.2656660e+03 -1.3628587e+03 - 2.3754322e+03 2.2631965e+03 -1.3634102e+03 - 2.3737445e+03 2.2647737e+03 -1.3628629e+03 - 2.3670643e+03 2.2708566e+03 -1.3606466e+03 - 2.3548375e+03 2.2818399e+03 -1.3561275e+03 - 2.3365750e+03 2.2980516e+03 -1.3486214e+03 - 2.3118588e+03 2.3197485e+03 -1.3374130e+03 - 2.2803512e+03 2.3471072e+03 -1.3217824e+03 - 2.2418058e+03 2.3802089e+03 -1.3010424e+03 - 2.1960848e+03 2.4190196e+03 -1.2745871e+03 - 2.1431777e+03 2.4633642e+03 -1.2419505e+03 - 2.0832228e+03 2.5129010e+03 -1.2028736e+03 - 2.0165253e+03 2.5671009e+03 -1.1573681e+03 - 1.9435666e+03 2.6252393e+03 -1.1057678e+03 - 1.8649985e+03 2.6864086e+03 -1.0487509e+03 - 1.7816194e+03 2.7495558e+03 -9.8732158e+02 - 1.6943291e+03 2.8135428e+03 -9.2274704e+02 - 1.6040712e+03 2.8772236e+03 -8.5645587e+02 - 1.5117682e+03 2.9395221e+03 -7.8991569e+02 - 1.4182638e+03 2.9994997e+03 -7.2451289e+02 - 1.3242794e+03 3.0563993e+03 -6.6145588e+02 - 1.2303909e+03 3.1096629e+03 -6.0171464e+02 - 1.1370236e+03 3.1589250e+03 -5.4599911e+02 - 1.0444637e+03 3.2039888e+03 -4.9477043e+02 - 9.5287823e+02 3.2447924e+03 -4.4827412e+02 - 8.6233912e+02 3.2813733e+03 -4.0658421e+02 - 7.7284727e+02 3.3138349e+03 -3.6964932e+02 - 6.8435347e+02 3.3423195e+03 -3.3733480e+02 - 5.9677551e+02 3.3669863e+03 -3.0945800e+02 - 5.1001106e+02 3.3879956e+03 -2.8581598e+02 - 4.2394696e+02 3.4054983e+03 -2.6620602e+02 - 3.3846524e+02 3.4196283e+03 -2.5044029e+02 - 2.5344694e+02 3.4304987e+03 -2.3835578e+02 - 1.6877399e+02 3.4381988e+03 -2.2982075e+02 - 8.4329976e+01 3.4427929e+03 -2.2473885e+02 - 0.0000000e+00 3.4443200e+03 -2.2305143e+02 - -8.4329976e+01 3.4427929e+03 -2.2473885e+02 - -1.6877399e+02 3.4381988e+03 -2.2982075e+02 - -2.5344694e+02 3.4304987e+03 -2.3835578e+02 - -3.3846524e+02 3.4196283e+03 -2.5044029e+02 - -4.2394696e+02 3.4054983e+03 -2.6620602e+02 - -5.1001106e+02 3.3879956e+03 -2.8581598e+02 - -5.9677551e+02 3.3669863e+03 -3.0945800e+02 - -6.8435347e+02 3.3423195e+03 -3.3733480e+02 - -7.7284727e+02 3.3138349e+03 -3.6964932e+02 - -8.6233912e+02 3.2813733e+03 -4.0658421e+02 - -9.5287823e+02 3.2447924e+03 -4.4827412e+02 - -1.0444637e+03 3.2039888e+03 -4.9477043e+02 - -1.1370236e+03 3.1589250e+03 -5.4599911e+02 - -1.2303909e+03 3.1096629e+03 -6.0171464e+02 - -1.3242794e+03 3.0563993e+03 -6.6145588e+02 - -1.4182638e+03 2.9994997e+03 -7.2451289e+02 - -1.5117682e+03 2.9395221e+03 -7.8991569e+02 - -1.6040712e+03 2.8772236e+03 -8.5645587e+02 - -1.6943291e+03 2.8135428e+03 -9.2274704e+02 - -1.7816194e+03 2.7495558e+03 -9.8732158e+02 - -1.8649985e+03 2.6864086e+03 -1.0487509e+03 - -1.9435666e+03 2.6252393e+03 -1.1057678e+03 - -2.0165253e+03 2.5671009e+03 -1.1573681e+03 - -2.0832228e+03 2.5129010e+03 -1.2028736e+03 - -2.1431777e+03 2.4633642e+03 -1.2419505e+03 - -2.1960848e+03 2.4190196e+03 -1.2745871e+03 - -2.2418058e+03 2.3802089e+03 -1.3010424e+03 - -2.2803512e+03 2.3471072e+03 -1.3217824e+03 - -2.3118588e+03 2.3197485e+03 -1.3374130e+03 - -2.3365750e+03 2.2980516e+03 -1.3486214e+03 - -2.3548375e+03 2.2818399e+03 -1.3561275e+03 - -2.3670643e+03 2.2708566e+03 -1.3606466e+03 - -2.3737445e+03 2.2647737e+03 -1.3628629e+03 - -2.3754322e+03 2.2631965e+03 -1.3634102e+03 - -2.3727411e+03 2.2656660e+03 -1.3628587e+03 - -2.3663384e+03 2.2716597e+03 -1.3617051e+03 - -2.3569378e+03 2.2805936e+03 -1.3603653e+03 - -2.3452898e+03 2.2918255e+03 -1.3591690e+03 - -2.3321699e+03 2.3046617e+03 -1.3583547e+03 - -2.3183657e+03 2.3183657e+03 -1.3580671e+03 - -2.3046617e+03 2.3321699e+03 -1.3583547e+03 - -2.2918255e+03 2.3452898e+03 -1.3591690e+03 - -2.2805936e+03 2.3569378e+03 -1.3603653e+03 - -2.2716597e+03 2.3663384e+03 -1.3617051e+03 - -2.2656660e+03 2.3727411e+03 -1.3628587e+03 - -2.2631965e+03 2.3754322e+03 -1.3634102e+03 - -2.2647737e+03 2.3737445e+03 -1.3628629e+03 - -2.2708566e+03 2.3670643e+03 -1.3606466e+03 - -2.2818399e+03 2.3548375e+03 -1.3561275e+03 - -2.2980516e+03 2.3365750e+03 -1.3486214e+03 - -2.3197485e+03 2.3118588e+03 -1.3374130e+03 - -2.3471072e+03 2.2803512e+03 -1.3217824e+03 - -2.3802089e+03 2.2418058e+03 -1.3010424e+03 - -2.4190196e+03 2.1960848e+03 -1.2745871e+03 - -2.4633642e+03 2.1431777e+03 -1.2419505e+03 - -2.5129010e+03 2.0832228e+03 -1.2028736e+03 - -2.5671009e+03 2.0165253e+03 -1.1573681e+03 - -2.6252393e+03 1.9435666e+03 -1.1057678e+03 - -2.6864086e+03 1.8649985e+03 -1.0487509e+03 - -2.7495558e+03 1.7816194e+03 -9.8732158e+02 - -2.8135428e+03 1.6943291e+03 -9.2274704e+02 - -2.8772236e+03 1.6040712e+03 -8.5645587e+02 - -2.9395221e+03 1.5117682e+03 -7.8991569e+02 - -2.9994997e+03 1.4182638e+03 -7.2451289e+02 - -3.0563993e+03 1.3242794e+03 -6.6145588e+02 - -3.1096629e+03 1.2303909e+03 -6.0171464e+02 - -3.1589250e+03 1.1370236e+03 -5.4599911e+02 - -3.2039888e+03 1.0444637e+03 -4.9477043e+02 - -3.2447924e+03 9.5287823e+02 -4.4827412e+02 - -3.2813733e+03 8.6233912e+02 -4.0658421e+02 - -3.3138349e+03 7.7284727e+02 -3.6964932e+02 - -3.3423195e+03 6.8435347e+02 -3.3733480e+02 - -3.3669863e+03 5.9677551e+02 -3.0945800e+02 - -3.3879956e+03 5.1001106e+02 -2.8581598e+02 - -3.4054983e+03 4.2394696e+02 -2.6620602e+02 - -3.4196283e+03 3.3846524e+02 -2.5044029e+02 - -3.4304987e+03 2.5344694e+02 -2.3835578e+02 - -3.4381988e+03 1.6877399e+02 -2.2982075e+02 - -3.4427929e+03 8.4329976e+01 -2.2473885e+02 - -3.4443200e+03 2.4067136e-09 -2.2305143e+02 - -3.4427929e+03 -8.4329976e+01 -2.2473885e+02 - -3.4381988e+03 -1.6877399e+02 -2.2982075e+02 - -3.4304987e+03 -2.5344694e+02 -2.3835578e+02 - -3.4196283e+03 -3.3846524e+02 -2.5044029e+02 - -3.4054983e+03 -4.2394696e+02 -2.6620602e+02 - -3.3879956e+03 -5.1001106e+02 -2.8581598e+02 - -3.3669863e+03 -5.9677551e+02 -3.0945800e+02 - -3.3423195e+03 -6.8435347e+02 -3.3733480e+02 - -3.3138349e+03 -7.7284727e+02 -3.6964932e+02 - -3.2813733e+03 -8.6233912e+02 -4.0658421e+02 - -3.2447924e+03 -9.5287823e+02 -4.4827412e+02 - -3.2039888e+03 -1.0444637e+03 -4.9477043e+02 - -3.1589250e+03 -1.1370236e+03 -5.4599911e+02 - -3.1096629e+03 -1.2303909e+03 -6.0171464e+02 - -3.0563993e+03 -1.3242794e+03 -6.6145588e+02 - -2.9994997e+03 -1.4182638e+03 -7.2451289e+02 - -2.9395221e+03 -1.5117682e+03 -7.8991569e+02 - -2.8772236e+03 -1.6040712e+03 -8.5645587e+02 - -2.8135428e+03 -1.6943291e+03 -9.2274704e+02 - -2.7495558e+03 -1.7816194e+03 -9.8732158e+02 - -2.6864086e+03 -1.8649985e+03 -1.0487509e+03 - -2.6252393e+03 -1.9435666e+03 -1.1057678e+03 - -2.5671009e+03 -2.0165253e+03 -1.1573681e+03 - -2.5129010e+03 -2.0832228e+03 -1.2028736e+03 - -2.4633642e+03 -2.1431777e+03 -1.2419505e+03 - -2.4190196e+03 -2.1960848e+03 -1.2745871e+03 - -2.3802089e+03 -2.2418058e+03 -1.3010424e+03 - -2.3471072e+03 -2.2803512e+03 -1.3217824e+03 - -2.3197485e+03 -2.3118588e+03 -1.3374130e+03 - -2.2980516e+03 -2.3365750e+03 -1.3486214e+03 - -2.2818399e+03 -2.3548375e+03 -1.3561275e+03 - -2.2708566e+03 -2.3670643e+03 -1.3606466e+03 - -2.2647737e+03 -2.3737445e+03 -1.3628629e+03 - -2.2631965e+03 -2.3754322e+03 -1.3634102e+03 - -2.2656660e+03 -2.3727411e+03 -1.3628587e+03 - -2.2716597e+03 -2.3663384e+03 -1.3617051e+03 - -2.2805936e+03 -2.3569378e+03 -1.3603653e+03 - -2.2918255e+03 -2.3452898e+03 -1.3591690e+03 - -2.3046617e+03 -2.3321699e+03 -1.3583547e+03 - -2.3183657e+03 -2.3183657e+03 -1.3580671e+03 - -2.3321699e+03 -2.3046617e+03 -1.3583547e+03 - -2.3452898e+03 -2.2918255e+03 -1.3591690e+03 - -2.3569378e+03 -2.2805936e+03 -1.3603653e+03 - -2.3663384e+03 -2.2716597e+03 -1.3617051e+03 - -2.3727411e+03 -2.2656660e+03 -1.3628587e+03 - -2.3754322e+03 -2.2631965e+03 -1.3634102e+03 - -2.3737445e+03 -2.2647737e+03 -1.3628629e+03 - -2.3670643e+03 -2.2708566e+03 -1.3606466e+03 - -2.3548375e+03 -2.2818399e+03 -1.3561275e+03 - -2.3365750e+03 -2.2980516e+03 -1.3486214e+03 - -2.3118588e+03 -2.3197485e+03 -1.3374130e+03 - -2.2803512e+03 -2.3471072e+03 -1.3217824e+03 - -2.2418058e+03 -2.3802089e+03 -1.3010424e+03 - -2.1960848e+03 -2.4190196e+03 -1.2745871e+03 - -2.1431777e+03 -2.4633642e+03 -1.2419505e+03 - -2.0832228e+03 -2.5129010e+03 -1.2028736e+03 - -2.0165253e+03 -2.5671009e+03 -1.1573681e+03 - -1.9435666e+03 -2.6252393e+03 -1.1057678e+03 - -1.8649985e+03 -2.6864086e+03 -1.0487509e+03 - -1.7816194e+03 -2.7495558e+03 -9.8732158e+02 - -1.6943291e+03 -2.8135428e+03 -9.2274704e+02 - -1.6040712e+03 -2.8772236e+03 -8.5645587e+02 - -1.5117682e+03 -2.9395221e+03 -7.8991569e+02 - -1.4182638e+03 -2.9994997e+03 -7.2451289e+02 - -1.3242794e+03 -3.0563993e+03 -6.6145588e+02 - -1.2303909e+03 -3.1096629e+03 -6.0171464e+02 - -1.1370236e+03 -3.1589250e+03 -5.4599911e+02 - -1.0444637e+03 -3.2039888e+03 -4.9477043e+02 - -9.5287823e+02 -3.2447924e+03 -4.4827412e+02 - -8.6233912e+02 -3.2813733e+03 -4.0658421e+02 - -7.7284727e+02 -3.3138349e+03 -3.6964932e+02 - -6.8435347e+02 -3.3423195e+03 -3.3733480e+02 - -5.9677551e+02 -3.3669863e+03 -3.0945800e+02 - -5.1001106e+02 -3.3879956e+03 -2.8581598e+02 - -4.2394696e+02 -3.4054983e+03 -2.6620602e+02 - -3.3846524e+02 -3.4196283e+03 -2.5044029e+02 - -2.5344694e+02 -3.4304987e+03 -2.3835578e+02 - -1.6877399e+02 -3.4381988e+03 -2.2982075e+02 - -8.4329976e+01 -3.4427929e+03 -2.2473885e+02 - 0.0000000e+00 -3.4443200e+03 -2.2305143e+02 - 8.4329976e+01 -3.4427929e+03 -2.2473885e+02 - 1.6877399e+02 -3.4381988e+03 -2.2982075e+02 - 2.5344694e+02 -3.4304987e+03 -2.3835578e+02 - 3.3846524e+02 -3.4196283e+03 -2.5044029e+02 - 4.2394696e+02 -3.4054983e+03 -2.6620602e+02 - 5.1001106e+02 -3.3879956e+03 -2.8581598e+02 - 5.9677551e+02 -3.3669863e+03 -3.0945800e+02 - 6.8435347e+02 -3.3423195e+03 -3.3733480e+02 - 7.7284727e+02 -3.3138349e+03 -3.6964932e+02 - 8.6233912e+02 -3.2813733e+03 -4.0658421e+02 - 9.5287823e+02 -3.2447924e+03 -4.4827412e+02 - 1.0444637e+03 -3.2039888e+03 -4.9477043e+02 - 1.1370236e+03 -3.1589250e+03 -5.4599911e+02 - 1.2303909e+03 -3.1096629e+03 -6.0171464e+02 - 1.3242794e+03 -3.0563993e+03 -6.6145588e+02 - 1.4182638e+03 -2.9994997e+03 -7.2451289e+02 - 1.5117682e+03 -2.9395221e+03 -7.8991569e+02 - 1.6040712e+03 -2.8772236e+03 -8.5645587e+02 - 1.6943291e+03 -2.8135428e+03 -9.2274704e+02 - 1.7816194e+03 -2.7495558e+03 -9.8732158e+02 - 1.8649985e+03 -2.6864086e+03 -1.0487509e+03 - 1.9435666e+03 -2.6252393e+03 -1.1057678e+03 - 2.0165253e+03 -2.5671009e+03 -1.1573681e+03 - 2.0832228e+03 -2.5129010e+03 -1.2028736e+03 - 2.1431777e+03 -2.4633642e+03 -1.2419505e+03 - 2.1960848e+03 -2.4190196e+03 -1.2745871e+03 - 2.2418058e+03 -2.3802089e+03 -1.3010424e+03 - 2.2803512e+03 -2.3471072e+03 -1.3217824e+03 - 2.3118588e+03 -2.3197485e+03 -1.3374130e+03 - 2.3365750e+03 -2.2980516e+03 -1.3486214e+03 - 2.3548375e+03 -2.2818399e+03 -1.3561275e+03 - 2.3670643e+03 -2.2708566e+03 -1.3606466e+03 - 2.3737445e+03 -2.2647737e+03 -1.3628629e+03 - 2.3754322e+03 -2.2631965e+03 -1.3634102e+03 - 2.3727411e+03 -2.2656660e+03 -1.3628587e+03 - 2.3663384e+03 -2.2716597e+03 -1.3617051e+03 - 2.3569378e+03 -2.2805936e+03 -1.3603653e+03 - 2.3452898e+03 -2.2918255e+03 -1.3591690e+03 - 2.3321699e+03 -2.3046617e+03 -1.3583547e+03 - 2.3183657e+03 -2.3183657e+03 -1.3580671e+03 - 2.3046617e+03 -2.3321699e+03 -1.3583547e+03 - 2.2918255e+03 -2.3452898e+03 -1.3591690e+03 - 2.2805936e+03 -2.3569378e+03 -1.3603653e+03 - 2.2716597e+03 -2.3663384e+03 -1.3617051e+03 - 2.2656660e+03 -2.3727411e+03 -1.3628587e+03 - 2.2631965e+03 -2.3754322e+03 -1.3634102e+03 - 2.2647737e+03 -2.3737445e+03 -1.3628629e+03 - 2.2708566e+03 -2.3670643e+03 -1.3606466e+03 - 2.2818399e+03 -2.3548375e+03 -1.3561275e+03 - 2.2980516e+03 -2.3365750e+03 -1.3486214e+03 - 2.3197485e+03 -2.3118588e+03 -1.3374130e+03 - 2.3471072e+03 -2.2803512e+03 -1.3217824e+03 - 2.3802089e+03 -2.2418058e+03 -1.3010424e+03 - 2.4190196e+03 -2.1960848e+03 -1.2745871e+03 - 2.4633642e+03 -2.1431777e+03 -1.2419505e+03 - 2.5129010e+03 -2.0832228e+03 -1.2028736e+03 - 2.5671009e+03 -2.0165253e+03 -1.1573681e+03 - 2.6252393e+03 -1.9435666e+03 -1.1057678e+03 - 2.6864086e+03 -1.8649985e+03 -1.0487509e+03 - 2.7495558e+03 -1.7816194e+03 -9.8732158e+02 - 2.8135428e+03 -1.6943291e+03 -9.2274704e+02 - 2.8772236e+03 -1.6040712e+03 -8.5645587e+02 - 2.9395221e+03 -1.5117682e+03 -7.8991569e+02 - 2.9994997e+03 -1.4182638e+03 -7.2451289e+02 - 3.0563993e+03 -1.3242794e+03 -6.6145588e+02 - 3.1096629e+03 -1.2303909e+03 -6.0171464e+02 - 3.1589250e+03 -1.1370236e+03 -5.4599911e+02 - 3.2039888e+03 -1.0444637e+03 -4.9477043e+02 - 3.2447924e+03 -9.5287823e+02 -4.4827412e+02 - 3.2813733e+03 -8.6233912e+02 -4.0658421e+02 - 3.3138349e+03 -7.7284727e+02 -3.6964932e+02 - 3.3423195e+03 -6.8435347e+02 -3.3733480e+02 - 3.3669863e+03 -5.9677551e+02 -3.0945800e+02 - 3.3879956e+03 -5.1001106e+02 -2.8581598e+02 - 3.4054983e+03 -4.2394696e+02 -2.6620602e+02 - 3.4196283e+03 -3.3846524e+02 -2.5044029e+02 - 3.4304987e+03 -2.5344694e+02 -2.3835578e+02 - 3.4381988e+03 -1.6877399e+02 -2.2982075e+02 - 3.4427929e+03 -8.4329976e+01 -2.2473885e+02 - 3.4443200e+03 2.4067136e-09 -2.2305143e+02 - 3.4185781e+03 2.4067136e-09 -2.8348925e+02 - 3.4167973e+03 8.8267539e+01 -2.8557890e+02 - 3.4114403e+03 1.7667107e+02 -2.9186775e+02 - 3.4024643e+03 2.6534567e+02 -3.0241437e+02 - 3.3897996e+03 3.5442414e+02 -3.1731274e+02 - 3.3733522e+03 4.4403480e+02 -3.3668619e+02 - 3.3530086e+03 5.3429783e+02 -3.6067803e+02 - 3.3286429e+03 6.2531979e+02 -3.8943791e+02 - 3.3001267e+03 7.1718561e+02 -4.2310298e+02 - 3.2673436e+03 8.0994774e+02 -4.6177302e+02 - 3.2302087e+03 9.0361214e+02 -5.0547910e+02 - 3.1886918e+03 9.9812134e+02 -5.5414675e+02 - 3.1428462e+03 1.0933357e+03 -6.0755564e+02 - 3.0928389e+03 1.1890144e+03 -6.6530057e+02 - 3.0389790e+03 1.2848000e+03 -7.2676058e+02 - 2.9817396e+03 1.3802097e+03 -7.9108480e+02 - 2.9217663e+03 1.4746377e+03 -8.5720345e+02 - 2.8598666e+03 1.5673720e+03 -9.2386985e+02 - 2.7969797e+03 1.6576256e+03 -9.8973281e+02 - 2.7341257e+03 1.7445794e+03 -1.0534319e+03 - 2.6723443e+03 1.8274315e+03 -1.1137008e+03 - 2.6126305e+03 1.9054443e+03 -1.1694610e+03 - 2.5558798e+03 1.9779829e+03 -1.2198903e+03 - 2.5028486e+03 2.0445400e+03 -1.2644585e+03 - 2.4541350e+03 2.1047465e+03 -1.3029271e+03 - 2.4101769e+03 2.1583694e+03 -1.3353227e+03 - 2.3712634e+03 2.2053015e+03 -1.3618915e+03 - 2.3375537e+03 2.2455470e+03 -1.3830467e+03 - 2.3090979e+03 2.2792059e+03 -1.3993167e+03 - 2.2858564e+03 2.3064613e+03 -1.4112992e+03 - 2.2677146e+03 2.3275689e+03 -1.4196240e+03 - 2.2544935e+03 2.3428502e+03 -1.4249236e+03 - 2.2459556e+03 2.3526880e+03 -1.4278121e+03 - 2.2418066e+03 2.3575233e+03 -1.4288694e+03 - 2.2416962e+03 2.3578534e+03 -1.4286291e+03 - 2.2452166e+03 2.3542285e+03 -1.4275709e+03 - 2.2519018e+03 2.3472482e+03 -1.4261123e+03 - 2.2612291e+03 2.3375547e+03 -1.4246040e+03 - 2.2726218e+03 2.3258243e+03 -1.4233241e+03 - 2.2854551e+03 2.3127573e+03 -1.4224745e+03 - 2.2990646e+03 2.2990646e+03 -1.4221777e+03 - 2.3127573e+03 2.2854551e+03 -1.4224745e+03 - 2.3258243e+03 2.2726218e+03 -1.4233241e+03 - 2.3375547e+03 2.2612291e+03 -1.4246040e+03 - 2.3472482e+03 2.2519018e+03 -1.4261123e+03 - 2.3542285e+03 2.2452166e+03 -1.4275709e+03 - 2.3578534e+03 2.2416962e+03 -1.4286291e+03 - 2.3575233e+03 2.2418066e+03 -1.4288694e+03 - 2.3526880e+03 2.2459556e+03 -1.4278121e+03 - 2.3428502e+03 2.2544935e+03 -1.4249236e+03 - 2.3275689e+03 2.2677146e+03 -1.4196240e+03 - 2.3064613e+03 2.2858564e+03 -1.4112992e+03 - 2.2792059e+03 2.3090979e+03 -1.3993167e+03 - 2.2455470e+03 2.3375537e+03 -1.3830467e+03 - 2.2053015e+03 2.3712634e+03 -1.3618915e+03 - 2.1583694e+03 2.4101769e+03 -1.3353227e+03 - 2.1047465e+03 2.4541350e+03 -1.3029271e+03 - 2.0445400e+03 2.5028486e+03 -1.2644585e+03 - 1.9779829e+03 2.5558798e+03 -1.2198903e+03 - 1.9054443e+03 2.6126305e+03 -1.1694610e+03 - 1.8274315e+03 2.6723443e+03 -1.1137008e+03 - 1.7445794e+03 2.7341257e+03 -1.0534319e+03 - 1.6576256e+03 2.7969797e+03 -9.8973281e+02 - 1.5673720e+03 2.8598666e+03 -9.2386985e+02 - 1.4746377e+03 2.9217663e+03 -8.5720345e+02 - 1.3802097e+03 2.9817396e+03 -7.9108480e+02 - 1.2848000e+03 3.0389790e+03 -7.2676058e+02 - 1.1890144e+03 3.0928389e+03 -6.6530057e+02 - 1.0933357e+03 3.1428462e+03 -6.0755564e+02 - 9.9812134e+02 3.1886918e+03 -5.5414675e+02 - 9.0361214e+02 3.2302087e+03 -5.0547910e+02 - 8.0994774e+02 3.2673436e+03 -4.6177302e+02 - 7.1718561e+02 3.3001267e+03 -4.2310298e+02 - 6.2531979e+02 3.3286429e+03 -3.8943791e+02 - 5.3429783e+02 3.3530086e+03 -3.6067803e+02 - 4.4403480e+02 3.3733522e+03 -3.3668619e+02 - 3.5442414e+02 3.3897996e+03 -3.1731274e+02 - 2.6534567e+02 3.4024643e+03 -3.0241437e+02 - 1.7667107e+02 3.4114403e+03 -2.9186775e+02 - 8.8267539e+01 3.4167973e+03 -2.8557890e+02 - -2.4067136e-09 3.4185781e+03 -2.8348925e+02 - -8.8267539e+01 3.4167973e+03 -2.8557890e+02 - -1.7667107e+02 3.4114403e+03 -2.9186775e+02 - -2.6534567e+02 3.4024643e+03 -3.0241437e+02 - -3.5442414e+02 3.3897996e+03 -3.1731274e+02 - -4.4403480e+02 3.3733522e+03 -3.3668619e+02 - -5.3429783e+02 3.3530086e+03 -3.6067803e+02 - -6.2531979e+02 3.3286429e+03 -3.8943791e+02 - -7.1718561e+02 3.3001267e+03 -4.2310298e+02 - -8.0994774e+02 3.2673436e+03 -4.6177302e+02 - -9.0361214e+02 3.2302087e+03 -5.0547910e+02 - -9.9812134e+02 3.1886918e+03 -5.5414675e+02 - -1.0933357e+03 3.1428462e+03 -6.0755564e+02 - -1.1890144e+03 3.0928389e+03 -6.6530057e+02 - -1.2848000e+03 3.0389790e+03 -7.2676058e+02 - -1.3802097e+03 2.9817396e+03 -7.9108480e+02 - -1.4746377e+03 2.9217663e+03 -8.5720345e+02 - -1.5673720e+03 2.8598666e+03 -9.2386985e+02 - -1.6576256e+03 2.7969797e+03 -9.8973281e+02 - -1.7445794e+03 2.7341257e+03 -1.0534319e+03 - -1.8274315e+03 2.6723443e+03 -1.1137008e+03 - -1.9054443e+03 2.6126305e+03 -1.1694610e+03 - -1.9779829e+03 2.5558798e+03 -1.2198903e+03 - -2.0445400e+03 2.5028486e+03 -1.2644585e+03 - -2.1047465e+03 2.4541350e+03 -1.3029271e+03 - -2.1583694e+03 2.4101769e+03 -1.3353227e+03 - -2.2053015e+03 2.3712634e+03 -1.3618915e+03 - -2.2455470e+03 2.3375537e+03 -1.3830467e+03 - -2.2792059e+03 2.3090979e+03 -1.3993167e+03 - -2.3064613e+03 2.2858564e+03 -1.4112992e+03 - -2.3275689e+03 2.2677146e+03 -1.4196240e+03 - -2.3428502e+03 2.2544935e+03 -1.4249236e+03 - -2.3526880e+03 2.2459556e+03 -1.4278121e+03 - -2.3575233e+03 2.2418066e+03 -1.4288694e+03 - -2.3578534e+03 2.2416962e+03 -1.4286291e+03 - -2.3542285e+03 2.2452166e+03 -1.4275709e+03 - -2.3472482e+03 2.2519018e+03 -1.4261123e+03 - -2.3375547e+03 2.2612291e+03 -1.4246040e+03 - -2.3258243e+03 2.2726218e+03 -1.4233241e+03 - -2.3127573e+03 2.2854551e+03 -1.4224745e+03 - -2.2990646e+03 2.2990646e+03 -1.4221777e+03 - -2.2854551e+03 2.3127573e+03 -1.4224745e+03 - -2.2726218e+03 2.3258243e+03 -1.4233241e+03 - -2.2612291e+03 2.3375547e+03 -1.4246040e+03 - -2.2519018e+03 2.3472482e+03 -1.4261123e+03 - -2.2452166e+03 2.3542285e+03 -1.4275709e+03 - -2.2416962e+03 2.3578534e+03 -1.4286291e+03 - -2.2418066e+03 2.3575233e+03 -1.4288694e+03 - -2.2459556e+03 2.3526880e+03 -1.4278121e+03 - -2.2544935e+03 2.3428502e+03 -1.4249236e+03 - -2.2677146e+03 2.3275689e+03 -1.4196240e+03 - -2.2858564e+03 2.3064613e+03 -1.4112992e+03 - -2.3090979e+03 2.2792059e+03 -1.3993167e+03 - -2.3375537e+03 2.2455470e+03 -1.3830467e+03 - -2.3712634e+03 2.2053015e+03 -1.3618915e+03 - -2.4101769e+03 2.1583694e+03 -1.3353227e+03 - -2.4541350e+03 2.1047465e+03 -1.3029271e+03 - -2.5028486e+03 2.0445400e+03 -1.2644585e+03 - -2.5558798e+03 1.9779829e+03 -1.2198903e+03 - -2.6126305e+03 1.9054443e+03 -1.1694610e+03 - -2.6723443e+03 1.8274315e+03 -1.1137008e+03 - -2.7341257e+03 1.7445794e+03 -1.0534319e+03 - -2.7969797e+03 1.6576256e+03 -9.8973281e+02 - -2.8598666e+03 1.5673720e+03 -9.2386985e+02 - -2.9217663e+03 1.4746377e+03 -8.5720345e+02 - -2.9817396e+03 1.3802097e+03 -7.9108480e+02 - -3.0389790e+03 1.2848000e+03 -7.2676058e+02 - -3.0928389e+03 1.1890144e+03 -6.6530057e+02 - -3.1428462e+03 1.0933357e+03 -6.0755564e+02 - -3.1886918e+03 9.9812134e+02 -5.5414675e+02 - -3.2302087e+03 9.0361214e+02 -5.0547910e+02 - -3.2673436e+03 8.0994774e+02 -4.6177302e+02 - -3.3001267e+03 7.1718561e+02 -4.2310298e+02 - -3.3286429e+03 6.2531979e+02 -3.8943791e+02 - -3.3530086e+03 5.3429783e+02 -3.6067803e+02 - -3.3733522e+03 4.4403480e+02 -3.3668619e+02 - -3.3897996e+03 3.5442414e+02 -3.1731274e+02 - -3.4024643e+03 2.6534567e+02 -3.0241437e+02 - -3.4114403e+03 1.7667107e+02 -2.9186775e+02 - -3.4167973e+03 8.8267539e+01 -2.8557890e+02 - -3.4185781e+03 -2.4067136e-09 -2.8348925e+02 - -3.4167973e+03 -8.8267539e+01 -2.8557890e+02 - -3.4114403e+03 -1.7667107e+02 -2.9186775e+02 - -3.4024643e+03 -2.6534567e+02 -3.0241437e+02 - -3.3897996e+03 -3.5442414e+02 -3.1731274e+02 - -3.3733522e+03 -4.4403480e+02 -3.3668619e+02 - -3.3530086e+03 -5.3429783e+02 -3.6067803e+02 - -3.3286429e+03 -6.2531979e+02 -3.8943791e+02 - -3.3001267e+03 -7.1718561e+02 -4.2310298e+02 - -3.2673436e+03 -8.0994774e+02 -4.6177302e+02 - -3.2302087e+03 -9.0361214e+02 -5.0547910e+02 - -3.1886918e+03 -9.9812134e+02 -5.5414675e+02 - -3.1428462e+03 -1.0933357e+03 -6.0755564e+02 - -3.0928389e+03 -1.1890144e+03 -6.6530057e+02 - -3.0389790e+03 -1.2848000e+03 -7.2676058e+02 - -2.9817396e+03 -1.3802097e+03 -7.9108480e+02 - -2.9217663e+03 -1.4746377e+03 -8.5720345e+02 - -2.8598666e+03 -1.5673720e+03 -9.2386985e+02 - -2.7969797e+03 -1.6576256e+03 -9.8973281e+02 - -2.7341257e+03 -1.7445794e+03 -1.0534319e+03 - -2.6723443e+03 -1.8274315e+03 -1.1137008e+03 - -2.6126305e+03 -1.9054443e+03 -1.1694610e+03 - -2.5558798e+03 -1.9779829e+03 -1.2198903e+03 - -2.5028486e+03 -2.0445400e+03 -1.2644585e+03 - -2.4541350e+03 -2.1047465e+03 -1.3029271e+03 - -2.4101769e+03 -2.1583694e+03 -1.3353227e+03 - -2.3712634e+03 -2.2053015e+03 -1.3618915e+03 - -2.3375537e+03 -2.2455470e+03 -1.3830467e+03 - -2.3090979e+03 -2.2792059e+03 -1.3993167e+03 - -2.2858564e+03 -2.3064613e+03 -1.4112992e+03 - -2.2677146e+03 -2.3275689e+03 -1.4196240e+03 - -2.2544935e+03 -2.3428502e+03 -1.4249236e+03 - -2.2459556e+03 -2.3526880e+03 -1.4278121e+03 - -2.2418066e+03 -2.3575233e+03 -1.4288694e+03 - -2.2416962e+03 -2.3578534e+03 -1.4286291e+03 - -2.2452166e+03 -2.3542285e+03 -1.4275709e+03 - -2.2519018e+03 -2.3472482e+03 -1.4261123e+03 - -2.2612291e+03 -2.3375547e+03 -1.4246040e+03 - -2.2726218e+03 -2.3258243e+03 -1.4233241e+03 - -2.2854551e+03 -2.3127573e+03 -1.4224745e+03 - -2.2990646e+03 -2.2990646e+03 -1.4221777e+03 - -2.3127573e+03 -2.2854551e+03 -1.4224745e+03 - -2.3258243e+03 -2.2726218e+03 -1.4233241e+03 - -2.3375547e+03 -2.2612291e+03 -1.4246040e+03 - -2.3472482e+03 -2.2519018e+03 -1.4261123e+03 - -2.3542285e+03 -2.2452166e+03 -1.4275709e+03 - -2.3578534e+03 -2.2416962e+03 -1.4286291e+03 - -2.3575233e+03 -2.2418066e+03 -1.4288694e+03 - -2.3526880e+03 -2.2459556e+03 -1.4278121e+03 - -2.3428502e+03 -2.2544935e+03 -1.4249236e+03 - -2.3275689e+03 -2.2677146e+03 -1.4196240e+03 - -2.3064613e+03 -2.2858564e+03 -1.4112992e+03 - -2.2792059e+03 -2.3090979e+03 -1.3993167e+03 - -2.2455470e+03 -2.3375537e+03 -1.3830467e+03 - -2.2053015e+03 -2.3712634e+03 -1.3618915e+03 - -2.1583694e+03 -2.4101769e+03 -1.3353227e+03 - -2.1047465e+03 -2.4541350e+03 -1.3029271e+03 - -2.0445400e+03 -2.5028486e+03 -1.2644585e+03 - -1.9779829e+03 -2.5558798e+03 -1.2198903e+03 - -1.9054443e+03 -2.6126305e+03 -1.1694610e+03 - -1.8274315e+03 -2.6723443e+03 -1.1137008e+03 - -1.7445794e+03 -2.7341257e+03 -1.0534319e+03 - -1.6576256e+03 -2.7969797e+03 -9.8973281e+02 - -1.5673720e+03 -2.8598666e+03 -9.2386985e+02 - -1.4746377e+03 -2.9217663e+03 -8.5720345e+02 - -1.3802097e+03 -2.9817396e+03 -7.9108480e+02 - -1.2848000e+03 -3.0389790e+03 -7.2676058e+02 - -1.1890144e+03 -3.0928389e+03 -6.6530057e+02 - -1.0933357e+03 -3.1428462e+03 -6.0755564e+02 - -9.9812134e+02 -3.1886918e+03 -5.5414675e+02 - -9.0361214e+02 -3.2302087e+03 -5.0547910e+02 - -8.0994774e+02 -3.2673436e+03 -4.6177302e+02 - -7.1718561e+02 -3.3001267e+03 -4.2310298e+02 - -6.2531979e+02 -3.3286429e+03 -3.8943791e+02 - -5.3429783e+02 -3.3530086e+03 -3.6067803e+02 - -4.4403480e+02 -3.3733522e+03 -3.3668619e+02 - -3.5442414e+02 -3.3897996e+03 -3.1731274e+02 - -2.6534567e+02 -3.4024643e+03 -3.0241437e+02 - -1.7667107e+02 -3.4114403e+03 -2.9186775e+02 - -8.8267539e+01 -3.4167973e+03 -2.8557890e+02 - 2.4067136e-09 -3.4185781e+03 -2.8348925e+02 - 8.8267539e+01 -3.4167973e+03 -2.8557890e+02 - 1.7667107e+02 -3.4114403e+03 -2.9186775e+02 - 2.6534567e+02 -3.4024643e+03 -3.0241437e+02 - 3.5442414e+02 -3.3897996e+03 -3.1731274e+02 - 4.4403480e+02 -3.3733522e+03 -3.3668619e+02 - 5.3429783e+02 -3.3530086e+03 -3.6067803e+02 - 6.2531979e+02 -3.3286429e+03 -3.8943791e+02 - 7.1718561e+02 -3.3001267e+03 -4.2310298e+02 - 8.0994774e+02 -3.2673436e+03 -4.6177302e+02 - 9.0361214e+02 -3.2302087e+03 -5.0547910e+02 - 9.9812134e+02 -3.1886918e+03 -5.5414675e+02 - 1.0933357e+03 -3.1428462e+03 -6.0755564e+02 - 1.1890144e+03 -3.0928389e+03 -6.6530057e+02 - 1.2848000e+03 -3.0389790e+03 -7.2676058e+02 - 1.3802097e+03 -2.9817396e+03 -7.9108480e+02 - 1.4746377e+03 -2.9217663e+03 -8.5720345e+02 - 1.5673720e+03 -2.8598666e+03 -9.2386985e+02 - 1.6576256e+03 -2.7969797e+03 -9.8973281e+02 - 1.7445794e+03 -2.7341257e+03 -1.0534319e+03 - 1.8274315e+03 -2.6723443e+03 -1.1137008e+03 - 1.9054443e+03 -2.6126305e+03 -1.1694610e+03 - 1.9779829e+03 -2.5558798e+03 -1.2198903e+03 - 2.0445400e+03 -2.5028486e+03 -1.2644585e+03 - 2.1047465e+03 -2.4541350e+03 -1.3029271e+03 - 2.1583694e+03 -2.4101769e+03 -1.3353227e+03 - 2.2053015e+03 -2.3712634e+03 -1.3618915e+03 - 2.2455470e+03 -2.3375537e+03 -1.3830467e+03 - 2.2792059e+03 -2.3090979e+03 -1.3993167e+03 - 2.3064613e+03 -2.2858564e+03 -1.4112992e+03 - 2.3275689e+03 -2.2677146e+03 -1.4196240e+03 - 2.3428502e+03 -2.2544935e+03 -1.4249236e+03 - 2.3526880e+03 -2.2459556e+03 -1.4278121e+03 - 2.3575233e+03 -2.2418066e+03 -1.4288694e+03 - 2.3578534e+03 -2.2416962e+03 -1.4286291e+03 - 2.3542285e+03 -2.2452166e+03 -1.4275709e+03 - 2.3472482e+03 -2.2519018e+03 -1.4261123e+03 - 2.3375547e+03 -2.2612291e+03 -1.4246040e+03 - 2.3258243e+03 -2.2726218e+03 -1.4233241e+03 - 2.3127573e+03 -2.2854551e+03 -1.4224745e+03 - 2.2990646e+03 -2.2990646e+03 -1.4221777e+03 - 2.2854551e+03 -2.3127573e+03 -1.4224745e+03 - 2.2726218e+03 -2.3258243e+03 -1.4233241e+03 - 2.2612291e+03 -2.3375547e+03 -1.4246040e+03 - 2.2519018e+03 -2.3472482e+03 -1.4261123e+03 - 2.2452166e+03 -2.3542285e+03 -1.4275709e+03 - 2.2416962e+03 -2.3578534e+03 -1.4286291e+03 - 2.2418066e+03 -2.3575233e+03 -1.4288694e+03 - 2.2459556e+03 -2.3526880e+03 -1.4278121e+03 - 2.2544935e+03 -2.3428502e+03 -1.4249236e+03 - 2.2677146e+03 -2.3275689e+03 -1.4196240e+03 - 2.2858564e+03 -2.3064613e+03 -1.4112992e+03 - 2.3090979e+03 -2.2792059e+03 -1.3993167e+03 - 2.3375537e+03 -2.2455470e+03 -1.3830467e+03 - 2.3712634e+03 -2.2053015e+03 -1.3618915e+03 - 2.4101769e+03 -2.1583694e+03 -1.3353227e+03 - 2.4541350e+03 -2.1047465e+03 -1.3029271e+03 - 2.5028486e+03 -2.0445400e+03 -1.2644585e+03 - 2.5558798e+03 -1.9779829e+03 -1.2198903e+03 - 2.6126305e+03 -1.9054443e+03 -1.1694610e+03 - 2.6723443e+03 -1.8274315e+03 -1.1137008e+03 - 2.7341257e+03 -1.7445794e+03 -1.0534319e+03 - 2.7969797e+03 -1.6576256e+03 -9.8973281e+02 - 2.8598666e+03 -1.5673720e+03 -9.2386985e+02 - 2.9217663e+03 -1.4746377e+03 -8.5720345e+02 - 2.9817396e+03 -1.3802097e+03 -7.9108480e+02 - 3.0389790e+03 -1.2848000e+03 -7.2676058e+02 - 3.0928389e+03 -1.1890144e+03 -6.6530057e+02 - 3.1428462e+03 -1.0933357e+03 -6.0755564e+02 - 3.1886918e+03 -9.9812134e+02 -5.5414675e+02 - 3.2302087e+03 -9.0361214e+02 -5.0547910e+02 - 3.2673436e+03 -8.0994774e+02 -4.6177302e+02 - 3.3001267e+03 -7.1718561e+02 -4.2310298e+02 - 3.3286429e+03 -6.2531979e+02 -3.8943791e+02 - 3.3530086e+03 -5.3429783e+02 -3.6067803e+02 - 3.3733522e+03 -4.4403480e+02 -3.3668619e+02 - 3.3897996e+03 -3.5442414e+02 -3.1731274e+02 - 3.4024643e+03 -2.6534567e+02 -3.0241437e+02 - 3.4114403e+03 -1.7667107e+02 -2.9186775e+02 - 3.4167973e+03 -8.8267539e+01 -2.8557890e+02 - 3.4185781e+03 -2.4067136e-09 -2.8348925e+02 - 3.3894323e+03 -2.4067136e-09 -3.4835789e+02 - 3.3873103e+03 9.3319832e+01 -3.5097309e+02 - 3.3809305e+03 1.8678509e+02 -3.5883410e+02 - 3.3702538e+03 2.8053670e+02 -3.7198498e+02 - 3.3552189e+03 3.7470595e+02 -3.9049150e+02 - 3.3357489e+03 4.6940824e+02 -4.1442933e+02 - 3.3117617e+03 5.6473509e+02 -4.4386670e+02 - 3.2831833e+03 6.6074408e+02 -4.7884125e+02 - 3.2499659e+03 7.5744669e+02 -5.1933118e+02 - 3.2121099e+03 8.5479417e+02 -5.6522144e+02 - 3.1696891e+03 9.5266253e+02 -6.1626757e+02 - 3.1228771e+03 1.0508382e+03 -6.7206085e+02 - 3.0719718e+03 1.1490067e+03 -7.3200088e+02 - 3.0174138e+03 1.2467477e+03 -7.9528228e+02 - 2.9597933e+03 1.3435380e+03 -8.6090248e+02 - 2.8998425e+03 1.4387662e+03 -9.2769490e+02 - 2.8384104e+03 1.5317575e+03 -9.9438751e+02 - 2.7764231e+03 1.6218073e+03 -1.0596811e+03 - 2.7148333e+03 1.7082191e+03 -1.1223362e+03 - 2.6545676e+03 1.7903409e+03 -1.1812553e+03 - 2.5964791e+03 1.8675962e+03 -1.2355477e+03 - 2.5413120e+03 1.9395046e+03 -1.2845689e+03 - 2.4896809e+03 2.0056923e+03 -1.3279321e+03 - 2.4420653e+03 2.0658924e+03 -1.3654951e+03 - 2.3988154e+03 2.1199396e+03 -1.3973300e+03 - 2.3601656e+03 2.1677592e+03 -1.4236828e+03 - 2.3262519e+03 2.2093563e+03 -1.4449306e+03 - 2.2971282e+03 2.2448057e+03 -1.4615415e+03 - 2.2727810e+03 2.2742432e+03 -1.4740394e+03 - 2.2531401e+03 2.2978606e+03 -1.4829759e+03 - 2.2380854e+03 2.3159021e+03 -1.4889084e+03 - 2.2274500e+03 2.3286630e+03 -1.4923834e+03 - 2.2210209e+03 2.3364895e+03 -1.4939243e+03 - 2.2185371e+03 2.3397786e+03 -1.4940220e+03 - 2.2196874e+03 2.3389780e+03 -1.4931276e+03 - 2.2241079e+03 2.3345840e+03 -1.4916460e+03 - 2.2313815e+03 2.3271381e+03 -1.4899306e+03 - 2.2410374e+03 2.3172216e+03 -1.4882786e+03 - 2.2525550e+03 2.3054477e+03 -1.4869262e+03 - 2.2653690e+03 2.2924511e+03 -1.4860452e+03 - 2.2788771e+03 2.2788771e+03 -1.4857399e+03 - 2.2924511e+03 2.2653690e+03 -1.4860452e+03 - 2.3054477e+03 2.2525550e+03 -1.4869262e+03 - 2.3172216e+03 2.2410374e+03 -1.4882786e+03 - 2.3271381e+03 2.2313815e+03 -1.4899306e+03 - 2.3345840e+03 2.2241079e+03 -1.4916460e+03 - 2.3389780e+03 2.2196874e+03 -1.4931276e+03 - 2.3397786e+03 2.2185371e+03 -1.4940220e+03 - 2.3364895e+03 2.2210209e+03 -1.4939243e+03 - 2.3286630e+03 2.2274500e+03 -1.4923834e+03 - 2.3159021e+03 2.2380854e+03 -1.4889084e+03 - 2.2978606e+03 2.2531401e+03 -1.4829759e+03 - 2.2742432e+03 2.2727810e+03 -1.4740394e+03 - 2.2448057e+03 2.2971282e+03 -1.4615415e+03 - 2.2093563e+03 2.3262519e+03 -1.4449306e+03 - 2.1677592e+03 2.3601656e+03 -1.4236828e+03 - 2.1199396e+03 2.3988154e+03 -1.3973300e+03 - 2.0658924e+03 2.4420653e+03 -1.3654951e+03 - 2.0056923e+03 2.4896809e+03 -1.3279321e+03 - 1.9395046e+03 2.5413120e+03 -1.2845689e+03 - 1.8675962e+03 2.5964791e+03 -1.2355477e+03 - 1.7903409e+03 2.6545676e+03 -1.1812553e+03 - 1.7082191e+03 2.7148333e+03 -1.1223362e+03 - 1.6218073e+03 2.7764231e+03 -1.0596811e+03 - 1.5317575e+03 2.8384104e+03 -9.9438751e+02 - 1.4387662e+03 2.8998425e+03 -9.2769490e+02 - 1.3435380e+03 2.9597933e+03 -8.6090248e+02 - 1.2467477e+03 3.0174138e+03 -7.9528228e+02 - 1.1490067e+03 3.0719718e+03 -7.3200088e+02 - 1.0508382e+03 3.1228771e+03 -6.7206085e+02 - 9.5266253e+02 3.1696891e+03 -6.1626757e+02 - 8.5479417e+02 3.2121099e+03 -5.6522144e+02 - 7.5744669e+02 3.2499659e+03 -5.1933118e+02 - 6.6074408e+02 3.2831833e+03 -4.7884125e+02 - 5.6473509e+02 3.3117617e+03 -4.4386670e+02 - 4.6940824e+02 3.3357489e+03 -4.1442933e+02 - 3.7470595e+02 3.3552189e+03 -3.9049150e+02 - 2.8053670e+02 3.3702538e+03 -3.7198498e+02 - 1.8678509e+02 3.3809305e+03 -3.5883410e+02 - 9.3319832e+01 3.3873103e+03 -3.5097309e+02 - 4.8134273e-09 3.3894323e+03 -3.4835789e+02 - -9.3319832e+01 3.3873103e+03 -3.5097309e+02 - -1.8678509e+02 3.3809305e+03 -3.5883410e+02 - -2.8053670e+02 3.3702538e+03 -3.7198498e+02 - -3.7470595e+02 3.3552189e+03 -3.9049150e+02 - -4.6940824e+02 3.3357489e+03 -4.1442933e+02 - -5.6473509e+02 3.3117617e+03 -4.4386670e+02 - -6.6074408e+02 3.2831833e+03 -4.7884125e+02 - -7.5744669e+02 3.2499659e+03 -5.1933118e+02 - -8.5479417e+02 3.2121099e+03 -5.6522144e+02 - -9.5266253e+02 3.1696891e+03 -6.1626757e+02 - -1.0508382e+03 3.1228771e+03 -6.7206085e+02 - -1.1490067e+03 3.0719718e+03 -7.3200088e+02 - -1.2467477e+03 3.0174138e+03 -7.9528228e+02 - -1.3435380e+03 2.9597933e+03 -8.6090248e+02 - -1.4387662e+03 2.8998425e+03 -9.2769490e+02 - -1.5317575e+03 2.8384104e+03 -9.9438751e+02 - -1.6218073e+03 2.7764231e+03 -1.0596811e+03 - -1.7082191e+03 2.7148333e+03 -1.1223362e+03 - -1.7903409e+03 2.6545676e+03 -1.1812553e+03 - -1.8675962e+03 2.5964791e+03 -1.2355477e+03 - -1.9395046e+03 2.5413120e+03 -1.2845689e+03 - -2.0056923e+03 2.4896809e+03 -1.3279321e+03 - -2.0658924e+03 2.4420653e+03 -1.3654951e+03 - -2.1199396e+03 2.3988154e+03 -1.3973300e+03 - -2.1677592e+03 2.3601656e+03 -1.4236828e+03 - -2.2093563e+03 2.3262519e+03 -1.4449306e+03 - -2.2448057e+03 2.2971282e+03 -1.4615415e+03 - -2.2742432e+03 2.2727810e+03 -1.4740394e+03 - -2.2978606e+03 2.2531401e+03 -1.4829759e+03 - -2.3159021e+03 2.2380854e+03 -1.4889084e+03 - -2.3286630e+03 2.2274500e+03 -1.4923834e+03 - -2.3364895e+03 2.2210209e+03 -1.4939243e+03 - -2.3397786e+03 2.2185371e+03 -1.4940220e+03 - -2.3389780e+03 2.2196874e+03 -1.4931276e+03 - -2.3345840e+03 2.2241079e+03 -1.4916460e+03 - -2.3271381e+03 2.2313815e+03 -1.4899306e+03 - -2.3172216e+03 2.2410374e+03 -1.4882786e+03 - -2.3054477e+03 2.2525550e+03 -1.4869262e+03 - -2.2924511e+03 2.2653690e+03 -1.4860452e+03 - -2.2788771e+03 2.2788771e+03 -1.4857399e+03 - -2.2653690e+03 2.2924511e+03 -1.4860452e+03 - -2.2525550e+03 2.3054477e+03 -1.4869262e+03 - -2.2410374e+03 2.3172216e+03 -1.4882786e+03 - -2.2313815e+03 2.3271381e+03 -1.4899306e+03 - -2.2241079e+03 2.3345840e+03 -1.4916460e+03 - -2.2196874e+03 2.3389780e+03 -1.4931276e+03 - -2.2185371e+03 2.3397786e+03 -1.4940220e+03 - -2.2210209e+03 2.3364895e+03 -1.4939243e+03 - -2.2274500e+03 2.3286630e+03 -1.4923834e+03 - -2.2380854e+03 2.3159021e+03 -1.4889084e+03 - -2.2531401e+03 2.2978606e+03 -1.4829759e+03 - -2.2727810e+03 2.2742432e+03 -1.4740394e+03 - -2.2971282e+03 2.2448057e+03 -1.4615415e+03 - -2.3262519e+03 2.2093563e+03 -1.4449306e+03 - -2.3601656e+03 2.1677592e+03 -1.4236828e+03 - -2.3988154e+03 2.1199396e+03 -1.3973300e+03 - -2.4420653e+03 2.0658924e+03 -1.3654951e+03 - -2.4896809e+03 2.0056923e+03 -1.3279321e+03 - -2.5413120e+03 1.9395046e+03 -1.2845689e+03 - -2.5964791e+03 1.8675962e+03 -1.2355477e+03 - -2.6545676e+03 1.7903409e+03 -1.1812553e+03 - -2.7148333e+03 1.7082191e+03 -1.1223362e+03 - -2.7764231e+03 1.6218073e+03 -1.0596811e+03 - -2.8384104e+03 1.5317575e+03 -9.9438751e+02 - -2.8998425e+03 1.4387662e+03 -9.2769490e+02 - -2.9597933e+03 1.3435380e+03 -8.6090248e+02 - -3.0174138e+03 1.2467477e+03 -7.9528228e+02 - -3.0719718e+03 1.1490067e+03 -7.3200088e+02 - -3.1228771e+03 1.0508382e+03 -6.7206085e+02 - -3.1696891e+03 9.5266253e+02 -6.1626757e+02 - -3.2121099e+03 8.5479417e+02 -5.6522144e+02 - -3.2499659e+03 7.5744669e+02 -5.1933118e+02 - -3.2831833e+03 6.6074408e+02 -4.7884125e+02 - -3.3117617e+03 5.6473509e+02 -4.4386670e+02 - -3.3357489e+03 4.6940824e+02 -4.1442933e+02 - -3.3552189e+03 3.7470595e+02 -3.9049150e+02 - -3.3702538e+03 2.8053670e+02 -3.7198498e+02 - -3.3809305e+03 1.8678509e+02 -3.5883410e+02 - -3.3873103e+03 9.3319832e+01 -3.5097309e+02 - -3.3894323e+03 4.8134273e-09 -3.4835789e+02 - -3.3873103e+03 -9.3319832e+01 -3.5097309e+02 - -3.3809305e+03 -1.8678509e+02 -3.5883410e+02 - -3.3702538e+03 -2.8053670e+02 -3.7198498e+02 - -3.3552189e+03 -3.7470595e+02 -3.9049150e+02 - -3.3357489e+03 -4.6940824e+02 -4.1442933e+02 - -3.3117617e+03 -5.6473509e+02 -4.4386670e+02 - -3.2831833e+03 -6.6074408e+02 -4.7884125e+02 - -3.2499659e+03 -7.5744669e+02 -5.1933118e+02 - -3.2121099e+03 -8.5479417e+02 -5.6522144e+02 - -3.1696891e+03 -9.5266253e+02 -6.1626757e+02 - -3.1228771e+03 -1.0508382e+03 -6.7206085e+02 - -3.0719718e+03 -1.1490067e+03 -7.3200088e+02 - -3.0174138e+03 -1.2467477e+03 -7.9528228e+02 - -2.9597933e+03 -1.3435380e+03 -8.6090248e+02 - -2.8998425e+03 -1.4387662e+03 -9.2769490e+02 - -2.8384104e+03 -1.5317575e+03 -9.9438751e+02 - -2.7764231e+03 -1.6218073e+03 -1.0596811e+03 - -2.7148333e+03 -1.7082191e+03 -1.1223362e+03 - -2.6545676e+03 -1.7903409e+03 -1.1812553e+03 - -2.5964791e+03 -1.8675962e+03 -1.2355477e+03 - -2.5413120e+03 -1.9395046e+03 -1.2845689e+03 - -2.4896809e+03 -2.0056923e+03 -1.3279321e+03 - -2.4420653e+03 -2.0658924e+03 -1.3654951e+03 - -2.3988154e+03 -2.1199396e+03 -1.3973300e+03 - -2.3601656e+03 -2.1677592e+03 -1.4236828e+03 - -2.3262519e+03 -2.2093563e+03 -1.4449306e+03 - -2.2971282e+03 -2.2448057e+03 -1.4615415e+03 - -2.2727810e+03 -2.2742432e+03 -1.4740394e+03 - -2.2531401e+03 -2.2978606e+03 -1.4829759e+03 - -2.2380854e+03 -2.3159021e+03 -1.4889084e+03 - -2.2274500e+03 -2.3286630e+03 -1.4923834e+03 - -2.2210209e+03 -2.3364895e+03 -1.4939243e+03 - -2.2185371e+03 -2.3397786e+03 -1.4940220e+03 - -2.2196874e+03 -2.3389780e+03 -1.4931276e+03 - -2.2241079e+03 -2.3345840e+03 -1.4916460e+03 - -2.2313815e+03 -2.3271381e+03 -1.4899306e+03 - -2.2410374e+03 -2.3172216e+03 -1.4882786e+03 - -2.2525550e+03 -2.3054477e+03 -1.4869262e+03 - -2.2653690e+03 -2.2924511e+03 -1.4860452e+03 - -2.2788771e+03 -2.2788771e+03 -1.4857399e+03 - -2.2924511e+03 -2.2653690e+03 -1.4860452e+03 - -2.3054477e+03 -2.2525550e+03 -1.4869262e+03 - -2.3172216e+03 -2.2410374e+03 -1.4882786e+03 - -2.3271381e+03 -2.2313815e+03 -1.4899306e+03 - -2.3345840e+03 -2.2241079e+03 -1.4916460e+03 - -2.3389780e+03 -2.2196874e+03 -1.4931276e+03 - -2.3397786e+03 -2.2185371e+03 -1.4940220e+03 - -2.3364895e+03 -2.2210209e+03 -1.4939243e+03 - -2.3286630e+03 -2.2274500e+03 -1.4923834e+03 - -2.3159021e+03 -2.2380854e+03 -1.4889084e+03 - -2.2978606e+03 -2.2531401e+03 -1.4829759e+03 - -2.2742432e+03 -2.2727810e+03 -1.4740394e+03 - -2.2448057e+03 -2.2971282e+03 -1.4615415e+03 - -2.2093563e+03 -2.3262519e+03 -1.4449306e+03 - -2.1677592e+03 -2.3601656e+03 -1.4236828e+03 - -2.1199396e+03 -2.3988154e+03 -1.3973300e+03 - -2.0658924e+03 -2.4420653e+03 -1.3654951e+03 - -2.0056923e+03 -2.4896809e+03 -1.3279321e+03 - -1.9395046e+03 -2.5413120e+03 -1.2845689e+03 - -1.8675962e+03 -2.5964791e+03 -1.2355477e+03 - -1.7903409e+03 -2.6545676e+03 -1.1812553e+03 - -1.7082191e+03 -2.7148333e+03 -1.1223362e+03 - -1.6218073e+03 -2.7764231e+03 -1.0596811e+03 - -1.5317575e+03 -2.8384104e+03 -9.9438751e+02 - -1.4387662e+03 -2.8998425e+03 -9.2769490e+02 - -1.3435380e+03 -2.9597933e+03 -8.6090248e+02 - -1.2467477e+03 -3.0174138e+03 -7.9528228e+02 - -1.1490067e+03 -3.0719718e+03 -7.3200088e+02 - -1.0508382e+03 -3.1228771e+03 -6.7206085e+02 - -9.5266253e+02 -3.1696891e+03 -6.1626757e+02 - -8.5479417e+02 -3.2121099e+03 -5.6522144e+02 - -7.5744669e+02 -3.2499659e+03 -5.1933118e+02 - -6.6074408e+02 -3.2831833e+03 -4.7884125e+02 - -5.6473509e+02 -3.3117617e+03 -4.4386670e+02 - -4.6940824e+02 -3.3357489e+03 -4.1442933e+02 - -3.7470595e+02 -3.3552189e+03 -3.9049150e+02 - -2.8053670e+02 -3.3702538e+03 -3.7198498e+02 - -1.8678509e+02 -3.3809305e+03 -3.5883410e+02 - -9.3319832e+01 -3.3873103e+03 -3.5097309e+02 - -2.4067136e-09 -3.3894323e+03 -3.4835789e+02 - 9.3319832e+01 -3.3873103e+03 -3.5097309e+02 - 1.8678509e+02 -3.3809305e+03 -3.5883410e+02 - 2.8053670e+02 -3.3702538e+03 -3.7198498e+02 - 3.7470595e+02 -3.3552189e+03 -3.9049150e+02 - 4.6940824e+02 -3.3357489e+03 -4.1442933e+02 - 5.6473509e+02 -3.3117617e+03 -4.4386670e+02 - 6.6074408e+02 -3.2831833e+03 -4.7884125e+02 - 7.5744669e+02 -3.2499659e+03 -5.1933118e+02 - 8.5479417e+02 -3.2121099e+03 -5.6522144e+02 - 9.5266253e+02 -3.1696891e+03 -6.1626757e+02 - 1.0508382e+03 -3.1228771e+03 -6.7206085e+02 - 1.1490067e+03 -3.0719718e+03 -7.3200088e+02 - 1.2467477e+03 -3.0174138e+03 -7.9528228e+02 - 1.3435380e+03 -2.9597933e+03 -8.6090248e+02 - 1.4387662e+03 -2.8998425e+03 -9.2769490e+02 - 1.5317575e+03 -2.8384104e+03 -9.9438751e+02 - 1.6218073e+03 -2.7764231e+03 -1.0596811e+03 - 1.7082191e+03 -2.7148333e+03 -1.1223362e+03 - 1.7903409e+03 -2.6545676e+03 -1.1812553e+03 - 1.8675962e+03 -2.5964791e+03 -1.2355477e+03 - 1.9395046e+03 -2.5413120e+03 -1.2845689e+03 - 2.0056923e+03 -2.4896809e+03 -1.3279321e+03 - 2.0658924e+03 -2.4420653e+03 -1.3654951e+03 - 2.1199396e+03 -2.3988154e+03 -1.3973300e+03 - 2.1677592e+03 -2.3601656e+03 -1.4236828e+03 - 2.2093563e+03 -2.3262519e+03 -1.4449306e+03 - 2.2448057e+03 -2.2971282e+03 -1.4615415e+03 - 2.2742432e+03 -2.2727810e+03 -1.4740394e+03 - 2.2978606e+03 -2.2531401e+03 -1.4829759e+03 - 2.3159021e+03 -2.2380854e+03 -1.4889084e+03 - 2.3286630e+03 -2.2274500e+03 -1.4923834e+03 - 2.3364895e+03 -2.2210209e+03 -1.4939243e+03 - 2.3397786e+03 -2.2185371e+03 -1.4940220e+03 - 2.3389780e+03 -2.2196874e+03 -1.4931276e+03 - 2.3345840e+03 -2.2241079e+03 -1.4916460e+03 - 2.3271381e+03 -2.2313815e+03 -1.4899306e+03 - 2.3172216e+03 -2.2410374e+03 -1.4882786e+03 - 2.3054477e+03 -2.2525550e+03 -1.4869262e+03 - 2.2924511e+03 -2.2653690e+03 -1.4860452e+03 - 2.2788771e+03 -2.2788771e+03 -1.4857399e+03 - 2.2653690e+03 -2.2924511e+03 -1.4860452e+03 - 2.2525550e+03 -2.3054477e+03 -1.4869262e+03 - 2.2410374e+03 -2.3172216e+03 -1.4882786e+03 - 2.2313815e+03 -2.3271381e+03 -1.4899306e+03 - 2.2241079e+03 -2.3345840e+03 -1.4916460e+03 - 2.2196874e+03 -2.3389780e+03 -1.4931276e+03 - 2.2185371e+03 -2.3397786e+03 -1.4940220e+03 - 2.2210209e+03 -2.3364895e+03 -1.4939243e+03 - 2.2274500e+03 -2.3286630e+03 -1.4923834e+03 - 2.2380854e+03 -2.3159021e+03 -1.4889084e+03 - 2.2531401e+03 -2.2978606e+03 -1.4829759e+03 - 2.2727810e+03 -2.2742432e+03 -1.4740394e+03 - 2.2971282e+03 -2.2448057e+03 -1.4615415e+03 - 2.3262519e+03 -2.2093563e+03 -1.4449306e+03 - 2.3601656e+03 -2.1677592e+03 -1.4236828e+03 - 2.3988154e+03 -2.1199396e+03 -1.3973300e+03 - 2.4420653e+03 -2.0658924e+03 -1.3654951e+03 - 2.4896809e+03 -2.0056923e+03 -1.3279321e+03 - 2.5413120e+03 -1.9395046e+03 -1.2845689e+03 - 2.5964791e+03 -1.8675962e+03 -1.2355477e+03 - 2.6545676e+03 -1.7903409e+03 -1.1812553e+03 - 2.7148333e+03 -1.7082191e+03 -1.1223362e+03 - 2.7764231e+03 -1.6218073e+03 -1.0596811e+03 - 2.8384104e+03 -1.5317575e+03 -9.9438751e+02 - 2.8998425e+03 -1.4387662e+03 -9.2769490e+02 - 2.9597933e+03 -1.3435380e+03 -8.6090248e+02 - 3.0174138e+03 -1.2467477e+03 -7.9528228e+02 - 3.0719718e+03 -1.1490067e+03 -7.3200088e+02 - 3.1228771e+03 -1.0508382e+03 -6.7206085e+02 - 3.1696891e+03 -9.5266253e+02 -6.1626757e+02 - 3.2121099e+03 -8.5479417e+02 -5.6522144e+02 - 3.2499659e+03 -7.5744669e+02 -5.1933118e+02 - 3.2831833e+03 -6.6074408e+02 -4.7884125e+02 - 3.3117617e+03 -5.6473509e+02 -4.4386670e+02 - 3.3357489e+03 -4.6940824e+02 -4.1442933e+02 - 3.3552189e+03 -3.7470595e+02 -3.9049150e+02 - 3.3702538e+03 -2.8053670e+02 -3.7198498e+02 - 3.3809305e+03 -1.8678509e+02 -3.5883410e+02 - 3.3873103e+03 -9.3319832e+01 -3.5097309e+02 - 3.3894323e+03 -4.8134273e-09 -3.4835789e+02 - 3.3567375e+03 -4.8134273e-09 -4.1746519e+02 - 3.3541443e+03 9.9896656e+01 -4.2078888e+02 - 3.3463590e+03 1.9991241e+02 -4.3075938e+02 - 3.3333664e+03 3.0015587e+02 -4.4737103e+02 - 3.3151493e+03 4.0071425e+02 -4.7060148e+02 - 3.2917004e+03 5.0164169e+02 -5.0039266e+02 - 3.2630386e+03 6.0294673e+02 -5.3662531e+02 - 3.2292297e+03 7.0457945e+02 -5.7908858e+02 - 3.1904090e+03 8.0641894e+02 -6.2744773e+02 - 3.1468044e+03 9.0826272e+02 -6.8121406e+02 - 3.0987573e+03 1.0098198e+03 -7.3972257e+02 - 3.0467356e+03 1.1107098e+03 -8.0212339e+02 - 2.9913374e+03 1.2104690e+03 -8.6739221e+02 - 2.9332807e+03 1.3085651e+03 -9.3436262e+02 - 2.8733802e+03 1.4044196e+03 -1.0017793e+03 - 2.8125110e+03 1.4974348e+03 -1.0683670e+03 - 2.7515659e+03 1.5870236e+03 -1.1329049e+03 - 2.6914116e+03 1.6726367e+03 -1.1942977e+03 - 2.6328495e+03 1.7537847e+03 -1.2516310e+03 - 2.5765870e+03 1.8300528e+03 -1.3042071e+03 - 2.5232201e+03 1.9011077e+03 -1.3515577e+03 - 2.4732284e+03 1.9666978e+03 -1.3934364e+03 - 2.4269799e+03 2.0266486e+03 -1.4297966e+03 - 2.3847416e+03 2.0808548e+03 -1.4607592e+03 - 2.3466943e+03 2.1292723e+03 -1.4865784e+03 - 2.3129469e+03 2.1719105e+03 -1.5076067e+03 - 2.2835496e+03 2.2088259e+03 -1.5242645e+03 - 2.2585047e+03 2.2401186e+03 -1.5370145e+03 - 2.2377732e+03 2.2659296e+03 -1.5463408e+03 - 2.2212793e+03 2.2864410e+03 -1.5527332e+03 - 2.2089114e+03 2.3018763e+03 -1.5566749e+03 - 2.2005209e+03 2.3125027e+03 -1.5586337e+03 - 2.1959199e+03 2.3186321e+03 -1.5590542e+03 - 2.1948777e+03 2.3206229e+03 -1.5583527e+03 - 2.1971174e+03 2.3188799e+03 -1.5569113e+03 - 2.2023131e+03 2.3138534e+03 -1.5550739e+03 - 2.2100887e+03 2.3060353e+03 -1.5531411e+03 - 2.2200187e+03 2.2959548e+03 -1.5513662e+03 - 2.2316307e+03 2.2841701e+03 -1.5499509e+03 - 2.2444108e+03 2.2712595e+03 -1.5490422e+03 - 2.2578112e+03 2.2578112e+03 -1.5487293e+03 - 2.2712595e+03 2.2444108e+03 -1.5490422e+03 - 2.2841701e+03 2.2316307e+03 -1.5499509e+03 - 2.2959548e+03 2.2200187e+03 -1.5513662e+03 - 2.3060353e+03 2.2100887e+03 -1.5531411e+03 - 2.3138534e+03 2.2023131e+03 -1.5550739e+03 - 2.3188799e+03 2.1971174e+03 -1.5569113e+03 - 2.3206229e+03 2.1948777e+03 -1.5583527e+03 - 2.3186321e+03 2.1959199e+03 -1.5590542e+03 - 2.3125027e+03 2.2005209e+03 -1.5586337e+03 - 2.3018763e+03 2.2089114e+03 -1.5566749e+03 - 2.2864410e+03 2.2212793e+03 -1.5527332e+03 - 2.2659296e+03 2.2377732e+03 -1.5463408e+03 - 2.2401186e+03 2.2585047e+03 -1.5370145e+03 - 2.2088259e+03 2.2835496e+03 -1.5242645e+03 - 2.1719105e+03 2.3129469e+03 -1.5076067e+03 - 2.1292723e+03 2.3466943e+03 -1.4865784e+03 - 2.0808548e+03 2.3847416e+03 -1.4607592e+03 - 2.0266486e+03 2.4269799e+03 -1.4297966e+03 - 1.9666978e+03 2.4732284e+03 -1.3934364e+03 - 1.9011077e+03 2.5232201e+03 -1.3515577e+03 - 1.8300528e+03 2.5765870e+03 -1.3042071e+03 - 1.7537847e+03 2.6328495e+03 -1.2516310e+03 - 1.6726367e+03 2.6914116e+03 -1.1942977e+03 - 1.5870236e+03 2.7515659e+03 -1.1329049e+03 - 1.4974348e+03 2.8125110e+03 -1.0683670e+03 - 1.4044196e+03 2.8733802e+03 -1.0017793e+03 - 1.3085651e+03 2.9332807e+03 -9.3436262e+02 - 1.2104690e+03 2.9913374e+03 -8.6739221e+02 - 1.1107098e+03 3.0467356e+03 -8.0212339e+02 - 1.0098198e+03 3.0987573e+03 -7.3972257e+02 - 9.0826272e+02 3.1468044e+03 -6.8121406e+02 - 8.0641894e+02 3.1904090e+03 -6.2744773e+02 - 7.0457945e+02 3.2292297e+03 -5.7908858e+02 - 6.0294673e+02 3.2630386e+03 -5.3662531e+02 - 5.0164169e+02 3.2917004e+03 -5.0039266e+02 - 4.0071425e+02 3.3151493e+03 -4.7060148e+02 - 3.0015587e+02 3.3333664e+03 -4.4737103e+02 - 1.9991241e+02 3.3463590e+03 -4.3075938e+02 - 9.9896656e+01 3.3541443e+03 -4.2078888e+02 - 4.8134273e-09 3.3567375e+03 -4.1746519e+02 - -9.9896656e+01 3.3541443e+03 -4.2078888e+02 - -1.9991241e+02 3.3463590e+03 -4.3075938e+02 - -3.0015587e+02 3.3333664e+03 -4.4737103e+02 - -4.0071425e+02 3.3151493e+03 -4.7060148e+02 - -5.0164169e+02 3.2917004e+03 -5.0039266e+02 - -6.0294673e+02 3.2630386e+03 -5.3662531e+02 - -7.0457945e+02 3.2292297e+03 -5.7908858e+02 - -8.0641894e+02 3.1904090e+03 -6.2744773e+02 - -9.0826272e+02 3.1468044e+03 -6.8121406e+02 - -1.0098198e+03 3.0987573e+03 -7.3972257e+02 - -1.1107098e+03 3.0467356e+03 -8.0212339e+02 - -1.2104690e+03 2.9913374e+03 -8.6739221e+02 - -1.3085651e+03 2.9332807e+03 -9.3436262e+02 - -1.4044196e+03 2.8733802e+03 -1.0017793e+03 - -1.4974348e+03 2.8125110e+03 -1.0683670e+03 - -1.5870236e+03 2.7515659e+03 -1.1329049e+03 - -1.6726367e+03 2.6914116e+03 -1.1942977e+03 - -1.7537847e+03 2.6328495e+03 -1.2516310e+03 - -1.8300528e+03 2.5765870e+03 -1.3042071e+03 - -1.9011077e+03 2.5232201e+03 -1.3515577e+03 - -1.9666978e+03 2.4732284e+03 -1.3934364e+03 - -2.0266486e+03 2.4269799e+03 -1.4297966e+03 - -2.0808548e+03 2.3847416e+03 -1.4607592e+03 - -2.1292723e+03 2.3466943e+03 -1.4865784e+03 - -2.1719105e+03 2.3129469e+03 -1.5076067e+03 - -2.2088259e+03 2.2835496e+03 -1.5242645e+03 - -2.2401186e+03 2.2585047e+03 -1.5370145e+03 - -2.2659296e+03 2.2377732e+03 -1.5463408e+03 - -2.2864410e+03 2.2212793e+03 -1.5527332e+03 - -2.3018763e+03 2.2089114e+03 -1.5566749e+03 - -2.3125027e+03 2.2005209e+03 -1.5586337e+03 - -2.3186321e+03 2.1959199e+03 -1.5590542e+03 - -2.3206229e+03 2.1948777e+03 -1.5583527e+03 - -2.3188799e+03 2.1971174e+03 -1.5569113e+03 - -2.3138534e+03 2.2023131e+03 -1.5550739e+03 - -2.3060353e+03 2.2100887e+03 -1.5531411e+03 - -2.2959548e+03 2.2200187e+03 -1.5513662e+03 - -2.2841701e+03 2.2316307e+03 -1.5499509e+03 - -2.2712595e+03 2.2444108e+03 -1.5490422e+03 - -2.2578112e+03 2.2578112e+03 -1.5487293e+03 - -2.2444108e+03 2.2712595e+03 -1.5490422e+03 - -2.2316307e+03 2.2841701e+03 -1.5499509e+03 - -2.2200187e+03 2.2959548e+03 -1.5513662e+03 - -2.2100887e+03 2.3060353e+03 -1.5531411e+03 - -2.2023131e+03 2.3138534e+03 -1.5550739e+03 - -2.1971174e+03 2.3188799e+03 -1.5569113e+03 - -2.1948777e+03 2.3206229e+03 -1.5583527e+03 - -2.1959199e+03 2.3186321e+03 -1.5590542e+03 - -2.2005209e+03 2.3125027e+03 -1.5586337e+03 - -2.2089114e+03 2.3018763e+03 -1.5566749e+03 - -2.2212793e+03 2.2864410e+03 -1.5527332e+03 - -2.2377732e+03 2.2659296e+03 -1.5463408e+03 - -2.2585047e+03 2.2401186e+03 -1.5370145e+03 - -2.2835496e+03 2.2088259e+03 -1.5242645e+03 - -2.3129469e+03 2.1719105e+03 -1.5076067e+03 - -2.3466943e+03 2.1292723e+03 -1.4865784e+03 - -2.3847416e+03 2.0808548e+03 -1.4607592e+03 - -2.4269799e+03 2.0266486e+03 -1.4297966e+03 - -2.4732284e+03 1.9666978e+03 -1.3934364e+03 - -2.5232201e+03 1.9011077e+03 -1.3515577e+03 - -2.5765870e+03 1.8300528e+03 -1.3042071e+03 - -2.6328495e+03 1.7537847e+03 -1.2516310e+03 - -2.6914116e+03 1.6726367e+03 -1.1942977e+03 - -2.7515659e+03 1.5870236e+03 -1.1329049e+03 - -2.8125110e+03 1.4974348e+03 -1.0683670e+03 - -2.8733802e+03 1.4044196e+03 -1.0017793e+03 - -2.9332807e+03 1.3085651e+03 -9.3436262e+02 - -2.9913374e+03 1.2104690e+03 -8.6739221e+02 - -3.0467356e+03 1.1107098e+03 -8.0212339e+02 - -3.0987573e+03 1.0098198e+03 -7.3972257e+02 - -3.1468044e+03 9.0826272e+02 -6.8121406e+02 - -3.1904090e+03 8.0641894e+02 -6.2744773e+02 - -3.2292297e+03 7.0457945e+02 -5.7908858e+02 - -3.2630386e+03 6.0294673e+02 -5.3662531e+02 - -3.2917004e+03 5.0164169e+02 -5.0039266e+02 - -3.3151493e+03 4.0071425e+02 -4.7060148e+02 - -3.3333664e+03 3.0015587e+02 -4.4737103e+02 - -3.3463590e+03 1.9991241e+02 -4.3075938e+02 - -3.3541443e+03 9.9896656e+01 -4.2078888e+02 - -3.3567375e+03 4.8134273e-09 -4.1746519e+02 - -3.3541443e+03 -9.9896656e+01 -4.2078888e+02 - -3.3463590e+03 -1.9991241e+02 -4.3075938e+02 - -3.3333664e+03 -3.0015587e+02 -4.4737103e+02 - -3.3151493e+03 -4.0071425e+02 -4.7060148e+02 - -3.2917004e+03 -5.0164169e+02 -5.0039266e+02 - -3.2630386e+03 -6.0294673e+02 -5.3662531e+02 - -3.2292297e+03 -7.0457945e+02 -5.7908858e+02 - -3.1904090e+03 -8.0641894e+02 -6.2744773e+02 - -3.1468044e+03 -9.0826272e+02 -6.8121406e+02 - -3.0987573e+03 -1.0098198e+03 -7.3972257e+02 - -3.0467356e+03 -1.1107098e+03 -8.0212339e+02 - -2.9913374e+03 -1.2104690e+03 -8.6739221e+02 - -2.9332807e+03 -1.3085651e+03 -9.3436262e+02 - -2.8733802e+03 -1.4044196e+03 -1.0017793e+03 - -2.8125110e+03 -1.4974348e+03 -1.0683670e+03 - -2.7515659e+03 -1.5870236e+03 -1.1329049e+03 - -2.6914116e+03 -1.6726367e+03 -1.1942977e+03 - -2.6328495e+03 -1.7537847e+03 -1.2516310e+03 - -2.5765870e+03 -1.8300528e+03 -1.3042071e+03 - -2.5232201e+03 -1.9011077e+03 -1.3515577e+03 - -2.4732284e+03 -1.9666978e+03 -1.3934364e+03 - -2.4269799e+03 -2.0266486e+03 -1.4297966e+03 - -2.3847416e+03 -2.0808548e+03 -1.4607592e+03 - -2.3466943e+03 -2.1292723e+03 -1.4865784e+03 - -2.3129469e+03 -2.1719105e+03 -1.5076067e+03 - -2.2835496e+03 -2.2088259e+03 -1.5242645e+03 - -2.2585047e+03 -2.2401186e+03 -1.5370145e+03 - -2.2377732e+03 -2.2659296e+03 -1.5463408e+03 - -2.2212793e+03 -2.2864410e+03 -1.5527332e+03 - -2.2089114e+03 -2.3018763e+03 -1.5566749e+03 - -2.2005209e+03 -2.3125027e+03 -1.5586337e+03 - -2.1959199e+03 -2.3186321e+03 -1.5590542e+03 - -2.1948777e+03 -2.3206229e+03 -1.5583527e+03 - -2.1971174e+03 -2.3188799e+03 -1.5569113e+03 - -2.2023131e+03 -2.3138534e+03 -1.5550739e+03 - -2.2100887e+03 -2.3060353e+03 -1.5531411e+03 - -2.2200187e+03 -2.2959548e+03 -1.5513662e+03 - -2.2316307e+03 -2.2841701e+03 -1.5499509e+03 - -2.2444108e+03 -2.2712595e+03 -1.5490422e+03 - -2.2578112e+03 -2.2578112e+03 -1.5487293e+03 - -2.2712595e+03 -2.2444108e+03 -1.5490422e+03 - -2.2841701e+03 -2.2316307e+03 -1.5499509e+03 - -2.2959548e+03 -2.2200187e+03 -1.5513662e+03 - -2.3060353e+03 -2.2100887e+03 -1.5531411e+03 - -2.3138534e+03 -2.2023131e+03 -1.5550739e+03 - -2.3188799e+03 -2.1971174e+03 -1.5569113e+03 - -2.3206229e+03 -2.1948777e+03 -1.5583527e+03 - -2.3186321e+03 -2.1959199e+03 -1.5590542e+03 - -2.3125027e+03 -2.2005209e+03 -1.5586337e+03 - -2.3018763e+03 -2.2089114e+03 -1.5566749e+03 - -2.2864410e+03 -2.2212793e+03 -1.5527332e+03 - -2.2659296e+03 -2.2377732e+03 -1.5463408e+03 - -2.2401186e+03 -2.2585047e+03 -1.5370145e+03 - -2.2088259e+03 -2.2835496e+03 -1.5242645e+03 - -2.1719105e+03 -2.3129469e+03 -1.5076067e+03 - -2.1292723e+03 -2.3466943e+03 -1.4865784e+03 - -2.0808548e+03 -2.3847416e+03 -1.4607592e+03 - -2.0266486e+03 -2.4269799e+03 -1.4297966e+03 - -1.9666978e+03 -2.4732284e+03 -1.3934364e+03 - -1.9011077e+03 -2.5232201e+03 -1.3515577e+03 - -1.8300528e+03 -2.5765870e+03 -1.3042071e+03 - -1.7537847e+03 -2.6328495e+03 -1.2516310e+03 - -1.6726367e+03 -2.6914116e+03 -1.1942977e+03 - -1.5870236e+03 -2.7515659e+03 -1.1329049e+03 - -1.4974348e+03 -2.8125110e+03 -1.0683670e+03 - -1.4044196e+03 -2.8733802e+03 -1.0017793e+03 - -1.3085651e+03 -2.9332807e+03 -9.3436262e+02 - -1.2104690e+03 -2.9913374e+03 -8.6739221e+02 - -1.1107098e+03 -3.0467356e+03 -8.0212339e+02 - -1.0098198e+03 -3.0987573e+03 -7.3972257e+02 - -9.0826272e+02 -3.1468044e+03 -6.8121406e+02 - -8.0641894e+02 -3.1904090e+03 -6.2744773e+02 - -7.0457945e+02 -3.2292297e+03 -5.7908858e+02 - -6.0294673e+02 -3.2630386e+03 -5.3662531e+02 - -5.0164169e+02 -3.2917004e+03 -5.0039266e+02 - -4.0071425e+02 -3.3151493e+03 -4.7060148e+02 - -3.0015587e+02 -3.3333664e+03 -4.4737103e+02 - -1.9991241e+02 -3.3463590e+03 -4.3075938e+02 - -9.9896656e+01 -3.3541443e+03 -4.2078888e+02 - 0.0000000e+00 -3.3567375e+03 -4.1746519e+02 - 9.9896656e+01 -3.3541443e+03 -4.2078888e+02 - 1.9991241e+02 -3.3463590e+03 -4.3075938e+02 - 3.0015587e+02 -3.3333664e+03 -4.4737103e+02 - 4.0071425e+02 -3.3151493e+03 -4.7060148e+02 - 5.0164169e+02 -3.2917004e+03 -5.0039266e+02 - 6.0294673e+02 -3.2630386e+03 -5.3662531e+02 - 7.0457945e+02 -3.2292297e+03 -5.7908858e+02 - 8.0641894e+02 -3.1904090e+03 -6.2744773e+02 - 9.0826272e+02 -3.1468044e+03 -6.8121406e+02 - 1.0098198e+03 -3.0987573e+03 -7.3972257e+02 - 1.1107098e+03 -3.0467356e+03 -8.0212339e+02 - 1.2104690e+03 -2.9913374e+03 -8.6739221e+02 - 1.3085651e+03 -2.9332807e+03 -9.3436262e+02 - 1.4044196e+03 -2.8733802e+03 -1.0017793e+03 - 1.4974348e+03 -2.8125110e+03 -1.0683670e+03 - 1.5870236e+03 -2.7515659e+03 -1.1329049e+03 - 1.6726367e+03 -2.6914116e+03 -1.1942977e+03 - 1.7537847e+03 -2.6328495e+03 -1.2516310e+03 - 1.8300528e+03 -2.5765870e+03 -1.3042071e+03 - 1.9011077e+03 -2.5232201e+03 -1.3515577e+03 - 1.9666978e+03 -2.4732284e+03 -1.3934364e+03 - 2.0266486e+03 -2.4269799e+03 -1.4297966e+03 - 2.0808548e+03 -2.3847416e+03 -1.4607592e+03 - 2.1292723e+03 -2.3466943e+03 -1.4865784e+03 - 2.1719105e+03 -2.3129469e+03 -1.5076067e+03 - 2.2088259e+03 -2.2835496e+03 -1.5242645e+03 - 2.2401186e+03 -2.2585047e+03 -1.5370145e+03 - 2.2659296e+03 -2.2377732e+03 -1.5463408e+03 - 2.2864410e+03 -2.2212793e+03 -1.5527332e+03 - 2.3018763e+03 -2.2089114e+03 -1.5566749e+03 - 2.3125027e+03 -2.2005209e+03 -1.5586337e+03 - 2.3186321e+03 -2.1959199e+03 -1.5590542e+03 - 2.3206229e+03 -2.1948777e+03 -1.5583527e+03 - 2.3188799e+03 -2.1971174e+03 -1.5569113e+03 - 2.3138534e+03 -2.2023131e+03 -1.5550739e+03 - 2.3060353e+03 -2.2100887e+03 -1.5531411e+03 - 2.2959548e+03 -2.2200187e+03 -1.5513662e+03 - 2.2841701e+03 -2.2316307e+03 -1.5499509e+03 - 2.2712595e+03 -2.2444108e+03 -1.5490422e+03 - 2.2578112e+03 -2.2578112e+03 -1.5487293e+03 - 2.2444108e+03 -2.2712595e+03 -1.5490422e+03 - 2.2316307e+03 -2.2841701e+03 -1.5499509e+03 - 2.2200187e+03 -2.2959548e+03 -1.5513662e+03 - 2.2100887e+03 -2.3060353e+03 -1.5531411e+03 - 2.2023131e+03 -2.3138534e+03 -1.5550739e+03 - 2.1971174e+03 -2.3188799e+03 -1.5569113e+03 - 2.1948777e+03 -2.3206229e+03 -1.5583527e+03 - 2.1959199e+03 -2.3186321e+03 -1.5590542e+03 - 2.2005209e+03 -2.3125027e+03 -1.5586337e+03 - 2.2089114e+03 -2.3018763e+03 -1.5566749e+03 - 2.2212793e+03 -2.2864410e+03 -1.5527332e+03 - 2.2377732e+03 -2.2659296e+03 -1.5463408e+03 - 2.2585047e+03 -2.2401186e+03 -1.5370145e+03 - 2.2835496e+03 -2.2088259e+03 -1.5242645e+03 - 2.3129469e+03 -2.1719105e+03 -1.5076067e+03 - 2.3466943e+03 -2.1292723e+03 -1.4865784e+03 - 2.3847416e+03 -2.0808548e+03 -1.4607592e+03 - 2.4269799e+03 -2.0266486e+03 -1.4297966e+03 - 2.4732284e+03 -1.9666978e+03 -1.3934364e+03 - 2.5232201e+03 -1.9011077e+03 -1.3515577e+03 - 2.5765870e+03 -1.8300528e+03 -1.3042071e+03 - 2.6328495e+03 -1.7537847e+03 -1.2516310e+03 - 2.6914116e+03 -1.6726367e+03 -1.1942977e+03 - 2.7515659e+03 -1.5870236e+03 -1.1329049e+03 - 2.8125110e+03 -1.4974348e+03 -1.0683670e+03 - 2.8733802e+03 -1.4044196e+03 -1.0017793e+03 - 2.9332807e+03 -1.3085651e+03 -9.3436262e+02 - 2.9913374e+03 -1.2104690e+03 -8.6739221e+02 - 3.0467356e+03 -1.1107098e+03 -8.0212339e+02 - 3.0987573e+03 -1.0098198e+03 -7.3972257e+02 - 3.1468044e+03 -9.0826272e+02 -6.8121406e+02 - 3.1904090e+03 -8.0641894e+02 -6.2744773e+02 - 3.2292297e+03 -7.0457945e+02 -5.7908858e+02 - 3.2630386e+03 -6.0294673e+02 -5.3662531e+02 - 3.2917004e+03 -5.0164169e+02 -5.0039266e+02 - 3.3151493e+03 -4.0071425e+02 -4.7060148e+02 - 3.3333664e+03 -3.0015587e+02 -4.4737103e+02 - 3.3463590e+03 -1.9991241e+02 -4.3075938e+02 - 3.3541443e+03 -9.9896656e+01 -4.2078888e+02 - 3.3567375e+03 -4.8134273e-09 -4.1746519e+02 - 3.3203615e+03 0.0000000e+00 -4.9060469e+02 - 3.3170952e+03 1.0862715e+02 -4.9492172e+02 - 3.3073157e+03 2.1725609e+02 -5.0782754e+02 - 3.2910856e+03 3.2587166e+02 -5.2918169e+02 - 3.2685189e+03 4.3442557e+02 -5.5873555e+02 - 3.2397959e+03 5.4282168e+02 -5.9611337e+02 - 3.2051797e+03 6.5090403e+02 -6.4079112e+02 - 3.1650321e+03 7.5844873e+02 -6.9207848e+02 - 3.1198261e+03 8.6516102e+02 -7.4910967e+02 - 3.0701500e+03 9.7067862e+02 -8.1084846e+02 - 3.0167023e+03 1.0745816e+03 -8.7611104e+02 - 2.9602735e+03 1.1764082e+03 -9.4360746e+02 - 2.9017188e+03 1.2756750e+03 -1.0119984e+03 - 2.8419219e+03 1.3718989e+03 -1.0799611e+03 - 2.7817569e+03 1.4646182e+03 -1.1462552e+03 - 2.7220521e+03 1.5534104e+03 -1.2097811e+03 - 2.6635607e+03 1.6379045e+03 -1.2696226e+03 - 2.6069407e+03 1.7177880e+03 -1.3250712e+03 - 2.5527456e+03 1.7928087e+03 -1.3756320e+03 - 2.5014239e+03 1.8627724e+03 -1.4210139e+03 - 2.4533260e+03 1.9275373e+03 -1.4611083e+03 - 2.4087153e+03 1.9870088e+03 -1.4959609e+03 - 2.3677818e+03 2.0411327e+03 -1.5257423e+03 - 2.3306552e+03 2.0898903e+03 -1.5507182e+03 - 2.2974172e+03 2.1332945e+03 -1.5712237e+03 - 2.2681105e+03 2.1713877e+03 -1.5876405e+03 - 2.2427461e+03 2.2042408e+03 -1.6003794e+03 - 2.2213077e+03 2.2319541e+03 -1.6098657e+03 - 2.2037527e+03 2.2546589e+03 -1.6165287e+03 - 2.1900126e+03 2.2725198e+03 -1.6207930e+03 - 2.1799903e+03 2.2857379e+03 -1.6230727e+03 - 2.1735572e+03 2.2945535e+03 -1.6237659e+03 - 2.1705489e+03 2.2992485e+03 -1.6232503e+03 - 2.1707613e+03 2.3001477e+03 -1.6218795e+03 - 2.1739469e+03 2.2976198e+03 -1.6199787e+03 - 2.1798125e+03 2.2920752e+03 -1.6178412e+03 - 2.1880175e+03 2.2839637e+03 -1.6157240e+03 - 2.1981752e+03 2.2737690e+03 -1.6138440e+03 - 2.2098551e+03 2.2620017e+03 -1.6123743e+03 - 2.2225884e+03 2.2491911e+03 -1.6114413e+03 - 2.2358748e+03 2.2358748e+03 -1.6111217e+03 - 2.2491911e+03 2.2225884e+03 -1.6114413e+03 - 2.2620017e+03 2.2098551e+03 -1.6123743e+03 - 2.2737690e+03 2.1981752e+03 -1.6138440e+03 - 2.2839637e+03 2.1880175e+03 -1.6157240e+03 - 2.2920752e+03 2.1798125e+03 -1.6178412e+03 - 2.2976198e+03 2.1739469e+03 -1.6199787e+03 - 2.3001477e+03 2.1707613e+03 -1.6218795e+03 - 2.2992485e+03 2.1705489e+03 -1.6232503e+03 - 2.2945535e+03 2.1735572e+03 -1.6237659e+03 - 2.2857379e+03 2.1799903e+03 -1.6230727e+03 - 2.2725198e+03 2.1900126e+03 -1.6207930e+03 - 2.2546589e+03 2.2037527e+03 -1.6165287e+03 - 2.2319541e+03 2.2213077e+03 -1.6098657e+03 - 2.2042408e+03 2.2427461e+03 -1.6003794e+03 - 2.1713877e+03 2.2681105e+03 -1.5876405e+03 - 2.1332945e+03 2.2974172e+03 -1.5712237e+03 - 2.0898903e+03 2.3306552e+03 -1.5507182e+03 - 2.0411327e+03 2.3677818e+03 -1.5257423e+03 - 1.9870088e+03 2.4087153e+03 -1.4959609e+03 - 1.9275373e+03 2.4533260e+03 -1.4611083e+03 - 1.8627724e+03 2.5014239e+03 -1.4210139e+03 - 1.7928087e+03 2.5527456e+03 -1.3756320e+03 - 1.7177880e+03 2.6069407e+03 -1.3250712e+03 - 1.6379045e+03 2.6635607e+03 -1.2696226e+03 - 1.5534104e+03 2.7220521e+03 -1.2097811e+03 - 1.4646182e+03 2.7817569e+03 -1.1462552e+03 - 1.3718989e+03 2.8419219e+03 -1.0799611e+03 - 1.2756750e+03 2.9017188e+03 -1.0119984e+03 - 1.1764082e+03 2.9602735e+03 -9.4360746e+02 - 1.0745816e+03 3.0167023e+03 -8.7611104e+02 - 9.7067862e+02 3.0701500e+03 -8.1084846e+02 - 8.6516102e+02 3.1198261e+03 -7.4910967e+02 - 7.5844873e+02 3.1650321e+03 -6.9207848e+02 - 6.5090403e+02 3.2051797e+03 -6.4079112e+02 - 5.4282168e+02 3.2397959e+03 -5.9611337e+02 - 4.3442557e+02 3.2685189e+03 -5.5873555e+02 - 3.2587166e+02 3.2910856e+03 -5.2918169e+02 - 2.1725609e+02 3.3073157e+03 -5.0782754e+02 - 1.0862715e+02 3.3170952e+03 -4.9492172e+02 - 0.0000000e+00 3.3203615e+03 -4.9060469e+02 - -1.0862715e+02 3.3170952e+03 -4.9492172e+02 - -2.1725609e+02 3.3073157e+03 -5.0782754e+02 - -3.2587166e+02 3.2910856e+03 -5.2918169e+02 - -4.3442557e+02 3.2685189e+03 -5.5873555e+02 - -5.4282168e+02 3.2397959e+03 -5.9611337e+02 - -6.5090403e+02 3.2051797e+03 -6.4079112e+02 - -7.5844873e+02 3.1650321e+03 -6.9207848e+02 - -8.6516102e+02 3.1198261e+03 -7.4910967e+02 - -9.7067862e+02 3.0701500e+03 -8.1084846e+02 - -1.0745816e+03 3.0167023e+03 -8.7611104e+02 - -1.1764082e+03 2.9602735e+03 -9.4360746e+02 - -1.2756750e+03 2.9017188e+03 -1.0119984e+03 - -1.3718989e+03 2.8419219e+03 -1.0799611e+03 - -1.4646182e+03 2.7817569e+03 -1.1462552e+03 - -1.5534104e+03 2.7220521e+03 -1.2097811e+03 - -1.6379045e+03 2.6635607e+03 -1.2696226e+03 - -1.7177880e+03 2.6069407e+03 -1.3250712e+03 - -1.7928087e+03 2.5527456e+03 -1.3756320e+03 - -1.8627724e+03 2.5014239e+03 -1.4210139e+03 - -1.9275373e+03 2.4533260e+03 -1.4611083e+03 - -1.9870088e+03 2.4087153e+03 -1.4959609e+03 - -2.0411327e+03 2.3677818e+03 -1.5257423e+03 - -2.0898903e+03 2.3306552e+03 -1.5507182e+03 - -2.1332945e+03 2.2974172e+03 -1.5712237e+03 - -2.1713877e+03 2.2681105e+03 -1.5876405e+03 - -2.2042408e+03 2.2427461e+03 -1.6003794e+03 - -2.2319541e+03 2.2213077e+03 -1.6098657e+03 - -2.2546589e+03 2.2037527e+03 -1.6165287e+03 - -2.2725198e+03 2.1900126e+03 -1.6207930e+03 - -2.2857379e+03 2.1799903e+03 -1.6230727e+03 - -2.2945535e+03 2.1735572e+03 -1.6237659e+03 - -2.2992485e+03 2.1705489e+03 -1.6232503e+03 - -2.3001477e+03 2.1707613e+03 -1.6218795e+03 - -2.2976198e+03 2.1739469e+03 -1.6199787e+03 - -2.2920752e+03 2.1798125e+03 -1.6178412e+03 - -2.2839637e+03 2.1880175e+03 -1.6157240e+03 - -2.2737690e+03 2.1981752e+03 -1.6138440e+03 - -2.2620017e+03 2.2098551e+03 -1.6123743e+03 - -2.2491911e+03 2.2225884e+03 -1.6114413e+03 - -2.2358748e+03 2.2358748e+03 -1.6111217e+03 - -2.2225884e+03 2.2491911e+03 -1.6114413e+03 - -2.2098551e+03 2.2620017e+03 -1.6123743e+03 - -2.1981752e+03 2.2737690e+03 -1.6138440e+03 - -2.1880175e+03 2.2839637e+03 -1.6157240e+03 - -2.1798125e+03 2.2920752e+03 -1.6178412e+03 - -2.1739469e+03 2.2976198e+03 -1.6199787e+03 - -2.1707613e+03 2.3001477e+03 -1.6218795e+03 - -2.1705489e+03 2.2992485e+03 -1.6232503e+03 - -2.1735572e+03 2.2945535e+03 -1.6237659e+03 - -2.1799903e+03 2.2857379e+03 -1.6230727e+03 - -2.1900126e+03 2.2725198e+03 -1.6207930e+03 - -2.2037527e+03 2.2546589e+03 -1.6165287e+03 - -2.2213077e+03 2.2319541e+03 -1.6098657e+03 - -2.2427461e+03 2.2042408e+03 -1.6003794e+03 - -2.2681105e+03 2.1713877e+03 -1.5876405e+03 - -2.2974172e+03 2.1332945e+03 -1.5712237e+03 - -2.3306552e+03 2.0898903e+03 -1.5507182e+03 - -2.3677818e+03 2.0411327e+03 -1.5257423e+03 - -2.4087153e+03 1.9870088e+03 -1.4959609e+03 - -2.4533260e+03 1.9275373e+03 -1.4611083e+03 - -2.5014239e+03 1.8627724e+03 -1.4210139e+03 - -2.5527456e+03 1.7928087e+03 -1.3756320e+03 - -2.6069407e+03 1.7177880e+03 -1.3250712e+03 - -2.6635607e+03 1.6379045e+03 -1.2696226e+03 - -2.7220521e+03 1.5534104e+03 -1.2097811e+03 - -2.7817569e+03 1.4646182e+03 -1.1462552e+03 - -2.8419219e+03 1.3718989e+03 -1.0799611e+03 - -2.9017188e+03 1.2756750e+03 -1.0119984e+03 - -2.9602735e+03 1.1764082e+03 -9.4360746e+02 - -3.0167023e+03 1.0745816e+03 -8.7611104e+02 - -3.0701500e+03 9.7067862e+02 -8.1084846e+02 - -3.1198261e+03 8.6516102e+02 -7.4910967e+02 - -3.1650321e+03 7.5844873e+02 -6.9207848e+02 - -3.2051797e+03 6.5090403e+02 -6.4079112e+02 - -3.2397959e+03 5.4282168e+02 -5.9611337e+02 - -3.2685189e+03 4.3442557e+02 -5.5873555e+02 - -3.2910856e+03 3.2587166e+02 -5.2918169e+02 - -3.3073157e+03 2.1725609e+02 -5.0782754e+02 - -3.3170952e+03 1.0862715e+02 -4.9492172e+02 - -3.3203615e+03 2.4067136e-09 -4.9060469e+02 - -3.3170952e+03 -1.0862715e+02 -4.9492172e+02 - -3.3073157e+03 -2.1725609e+02 -5.0782754e+02 - -3.2910856e+03 -3.2587166e+02 -5.2918169e+02 - -3.2685189e+03 -4.3442557e+02 -5.5873555e+02 - -3.2397959e+03 -5.4282168e+02 -5.9611337e+02 - -3.2051797e+03 -6.5090403e+02 -6.4079112e+02 - -3.1650321e+03 -7.5844873e+02 -6.9207848e+02 - -3.1198261e+03 -8.6516102e+02 -7.4910967e+02 - -3.0701500e+03 -9.7067862e+02 -8.1084846e+02 - -3.0167023e+03 -1.0745816e+03 -8.7611104e+02 - -2.9602735e+03 -1.1764082e+03 -9.4360746e+02 - -2.9017188e+03 -1.2756750e+03 -1.0119984e+03 - -2.8419219e+03 -1.3718989e+03 -1.0799611e+03 - -2.7817569e+03 -1.4646182e+03 -1.1462552e+03 - -2.7220521e+03 -1.5534104e+03 -1.2097811e+03 - -2.6635607e+03 -1.6379045e+03 -1.2696226e+03 - -2.6069407e+03 -1.7177880e+03 -1.3250712e+03 - -2.5527456e+03 -1.7928087e+03 -1.3756320e+03 - -2.5014239e+03 -1.8627724e+03 -1.4210139e+03 - -2.4533260e+03 -1.9275373e+03 -1.4611083e+03 - -2.4087153e+03 -1.9870088e+03 -1.4959609e+03 - -2.3677818e+03 -2.0411327e+03 -1.5257423e+03 - -2.3306552e+03 -2.0898903e+03 -1.5507182e+03 - -2.2974172e+03 -2.1332945e+03 -1.5712237e+03 - -2.2681105e+03 -2.1713877e+03 -1.5876405e+03 - -2.2427461e+03 -2.2042408e+03 -1.6003794e+03 - -2.2213077e+03 -2.2319541e+03 -1.6098657e+03 - -2.2037527e+03 -2.2546589e+03 -1.6165287e+03 - -2.1900126e+03 -2.2725198e+03 -1.6207930e+03 - -2.1799903e+03 -2.2857379e+03 -1.6230727e+03 - -2.1735572e+03 -2.2945535e+03 -1.6237659e+03 - -2.1705489e+03 -2.2992485e+03 -1.6232503e+03 - -2.1707613e+03 -2.3001477e+03 -1.6218795e+03 - -2.1739469e+03 -2.2976198e+03 -1.6199787e+03 - -2.1798125e+03 -2.2920752e+03 -1.6178412e+03 - -2.1880175e+03 -2.2839637e+03 -1.6157240e+03 - -2.1981752e+03 -2.2737690e+03 -1.6138440e+03 - -2.2098551e+03 -2.2620017e+03 -1.6123743e+03 - -2.2225884e+03 -2.2491911e+03 -1.6114413e+03 - -2.2358748e+03 -2.2358748e+03 -1.6111217e+03 - -2.2491911e+03 -2.2225884e+03 -1.6114413e+03 - -2.2620017e+03 -2.2098551e+03 -1.6123743e+03 - -2.2737690e+03 -2.1981752e+03 -1.6138440e+03 - -2.2839637e+03 -2.1880175e+03 -1.6157240e+03 - -2.2920752e+03 -2.1798125e+03 -1.6178412e+03 - -2.2976198e+03 -2.1739469e+03 -1.6199787e+03 - -2.3001477e+03 -2.1707613e+03 -1.6218795e+03 - -2.2992485e+03 -2.1705489e+03 -1.6232503e+03 - -2.2945535e+03 -2.1735572e+03 -1.6237659e+03 - -2.2857379e+03 -2.1799903e+03 -1.6230727e+03 - -2.2725198e+03 -2.1900126e+03 -1.6207930e+03 - -2.2546589e+03 -2.2037527e+03 -1.6165287e+03 - -2.2319541e+03 -2.2213077e+03 -1.6098657e+03 - -2.2042408e+03 -2.2427461e+03 -1.6003794e+03 - -2.1713877e+03 -2.2681105e+03 -1.5876405e+03 - -2.1332945e+03 -2.2974172e+03 -1.5712237e+03 - -2.0898903e+03 -2.3306552e+03 -1.5507182e+03 - -2.0411327e+03 -2.3677818e+03 -1.5257423e+03 - -1.9870088e+03 -2.4087153e+03 -1.4959609e+03 - -1.9275373e+03 -2.4533260e+03 -1.4611083e+03 - -1.8627724e+03 -2.5014239e+03 -1.4210139e+03 - -1.7928087e+03 -2.5527456e+03 -1.3756320e+03 - -1.7177880e+03 -2.6069407e+03 -1.3250712e+03 - -1.6379045e+03 -2.6635607e+03 -1.2696226e+03 - -1.5534104e+03 -2.7220521e+03 -1.2097811e+03 - -1.4646182e+03 -2.7817569e+03 -1.1462552e+03 - -1.3718989e+03 -2.8419219e+03 -1.0799611e+03 - -1.2756750e+03 -2.9017188e+03 -1.0119984e+03 - -1.1764082e+03 -2.9602735e+03 -9.4360746e+02 - -1.0745816e+03 -3.0167023e+03 -8.7611104e+02 - -9.7067862e+02 -3.0701500e+03 -8.1084846e+02 - -8.6516102e+02 -3.1198261e+03 -7.4910967e+02 - -7.5844873e+02 -3.1650321e+03 -6.9207848e+02 - -6.5090403e+02 -3.2051797e+03 -6.4079112e+02 - -5.4282168e+02 -3.2397959e+03 -5.9611337e+02 - -4.3442557e+02 -3.2685189e+03 -5.5873555e+02 - -3.2587166e+02 -3.2910856e+03 -5.2918169e+02 - -2.1725609e+02 -3.3073157e+03 -5.0782754e+02 - -1.0862715e+02 -3.3170952e+03 -4.9492172e+02 - 0.0000000e+00 -3.3203615e+03 -4.9060469e+02 - 1.0862715e+02 -3.3170952e+03 -4.9492172e+02 - 2.1725609e+02 -3.3073157e+03 -5.0782754e+02 - 3.2587166e+02 -3.2910856e+03 -5.2918169e+02 - 4.3442557e+02 -3.2685189e+03 -5.5873555e+02 - 5.4282168e+02 -3.2397959e+03 -5.9611337e+02 - 6.5090403e+02 -3.2051797e+03 -6.4079112e+02 - 7.5844873e+02 -3.1650321e+03 -6.9207848e+02 - 8.6516102e+02 -3.1198261e+03 -7.4910967e+02 - 9.7067862e+02 -3.0701500e+03 -8.1084846e+02 - 1.0745816e+03 -3.0167023e+03 -8.7611104e+02 - 1.1764082e+03 -2.9602735e+03 -9.4360746e+02 - 1.2756750e+03 -2.9017188e+03 -1.0119984e+03 - 1.3718989e+03 -2.8419219e+03 -1.0799611e+03 - 1.4646182e+03 -2.7817569e+03 -1.1462552e+03 - 1.5534104e+03 -2.7220521e+03 -1.2097811e+03 - 1.6379045e+03 -2.6635607e+03 -1.2696226e+03 - 1.7177880e+03 -2.6069407e+03 -1.3250712e+03 - 1.7928087e+03 -2.5527456e+03 -1.3756320e+03 - 1.8627724e+03 -2.5014239e+03 -1.4210139e+03 - 1.9275373e+03 -2.4533260e+03 -1.4611083e+03 - 1.9870088e+03 -2.4087153e+03 -1.4959609e+03 - 2.0411327e+03 -2.3677818e+03 -1.5257423e+03 - 2.0898903e+03 -2.3306552e+03 -1.5507182e+03 - 2.1332945e+03 -2.2974172e+03 -1.5712237e+03 - 2.1713877e+03 -2.2681105e+03 -1.5876405e+03 - 2.2042408e+03 -2.2427461e+03 -1.6003794e+03 - 2.2319541e+03 -2.2213077e+03 -1.6098657e+03 - 2.2546589e+03 -2.2037527e+03 -1.6165287e+03 - 2.2725198e+03 -2.1900126e+03 -1.6207930e+03 - 2.2857379e+03 -2.1799903e+03 -1.6230727e+03 - 2.2945535e+03 -2.1735572e+03 -1.6237659e+03 - 2.2992485e+03 -2.1705489e+03 -1.6232503e+03 - 2.3001477e+03 -2.1707613e+03 -1.6218795e+03 - 2.2976198e+03 -2.1739469e+03 -1.6199787e+03 - 2.2920752e+03 -2.1798125e+03 -1.6178412e+03 - 2.2839637e+03 -2.1880175e+03 -1.6157240e+03 - 2.2737690e+03 -2.1981752e+03 -1.6138440e+03 - 2.2620017e+03 -2.2098551e+03 -1.6123743e+03 - 2.2491911e+03 -2.2225884e+03 -1.6114413e+03 - 2.2358748e+03 -2.2358748e+03 -1.6111217e+03 - 2.2225884e+03 -2.2491911e+03 -1.6114413e+03 - 2.2098551e+03 -2.2620017e+03 -1.6123743e+03 - 2.1981752e+03 -2.2737690e+03 -1.6138440e+03 - 2.1880175e+03 -2.2839637e+03 -1.6157240e+03 - 2.1798125e+03 -2.2920752e+03 -1.6178412e+03 - 2.1739469e+03 -2.2976198e+03 -1.6199787e+03 - 2.1707613e+03 -2.3001477e+03 -1.6218795e+03 - 2.1705489e+03 -2.2992485e+03 -1.6232503e+03 - 2.1735572e+03 -2.2945535e+03 -1.6237659e+03 - 2.1799903e+03 -2.2857379e+03 -1.6230727e+03 - 2.1900126e+03 -2.2725198e+03 -1.6207930e+03 - 2.2037527e+03 -2.2546589e+03 -1.6165287e+03 - 2.2213077e+03 -2.2319541e+03 -1.6098657e+03 - 2.2427461e+03 -2.2042408e+03 -1.6003794e+03 - 2.2681105e+03 -2.1713877e+03 -1.5876405e+03 - 2.2974172e+03 -2.1332945e+03 -1.5712237e+03 - 2.3306552e+03 -2.0898903e+03 -1.5507182e+03 - 2.3677818e+03 -2.0411327e+03 -1.5257423e+03 - 2.4087153e+03 -1.9870088e+03 -1.4959609e+03 - 2.4533260e+03 -1.9275373e+03 -1.4611083e+03 - 2.5014239e+03 -1.8627724e+03 -1.4210139e+03 - 2.5527456e+03 -1.7928087e+03 -1.3756320e+03 - 2.6069407e+03 -1.7177880e+03 -1.3250712e+03 - 2.6635607e+03 -1.6379045e+03 -1.2696226e+03 - 2.7220521e+03 -1.5534104e+03 -1.2097811e+03 - 2.7817569e+03 -1.4646182e+03 -1.1462552e+03 - 2.8419219e+03 -1.3718989e+03 -1.0799611e+03 - 2.9017188e+03 -1.2756750e+03 -1.0119984e+03 - 2.9602735e+03 -1.1764082e+03 -9.4360746e+02 - 3.0167023e+03 -1.0745816e+03 -8.7611104e+02 - 3.0701500e+03 -9.7067862e+02 -8.1084846e+02 - 3.1198261e+03 -8.6516102e+02 -7.4910967e+02 - 3.1650321e+03 -7.5844873e+02 -6.9207848e+02 - 3.2051797e+03 -6.5090403e+02 -6.4079112e+02 - 3.2397959e+03 -5.4282168e+02 -5.9611337e+02 - 3.2685189e+03 -4.3442557e+02 -5.5873555e+02 - 3.2910856e+03 -3.2587166e+02 -5.2918169e+02 - 3.3073157e+03 -2.1725609e+02 -5.0782754e+02 - 3.3170952e+03 -1.0862715e+02 -4.9492172e+02 - 3.3203615e+03 -2.4067136e-09 -4.9060469e+02 - 3.2801869e+03 4.8134273e-09 -5.6755639e+02 - 3.2759136e+03 1.2052814e+02 -5.7333736e+02 - 3.2631870e+03 2.4071292e+02 -5.9051585e+02 - 3.2422862e+03 3.6020315e+02 -6.1860344e+02 - 3.2136689e+03 4.7863400e+02 -6.5680305e+02 - 3.1779606e+03 5.9562475e+02 -7.0403651e+02 - 3.1359344e+03 7.1078108e+02 -7.5898633e+02 - 3.0884846e+03 8.2370153e+02 -8.2015186e+02 - 3.0365909e+03 9.3398747e+02 -8.8591805e+02 - 2.9812784e+03 1.0412545e+03 -9.5463165e+02 - 2.9235748e+03 1.1451438e+03 -1.0246782e+03 - 2.8644708e+03 1.2453311e+03 -1.0945519e+03 - 2.8048862e+03 1.3415334e+03 -1.1629124e+03 - 2.7456457e+03 1.4335109e+03 -1.2286231e+03 - 2.6874640e+03 1.5210667e+03 -1.2907714e+03 - 2.6309421e+03 1.6040437e+03 -1.3486711e+03 - 2.5765699e+03 1.6823200e+03 -1.4018503e+03 - 2.5247365e+03 1.7558032e+03 -1.4500305e+03 - 2.4757425e+03 1.8244260e+03 -1.4930988e+03 - 2.4298149e+03 1.8881412e+03 -1.5310794e+03 - 2.3871209e+03 1.9469188e+03 -1.5641055e+03 - 2.3477809e+03 2.0007438e+03 -1.5923934e+03 - 2.3118790e+03 2.0496151e+03 -1.6162204e+03 - 2.2794716e+03 2.0935460e+03 -1.6359069e+03 - 2.2505932e+03 2.1325650e+03 -1.6518013e+03 - 2.2252605e+03 2.1667182e+03 -1.6642689e+03 - 2.2034735e+03 2.1960713e+03 -1.6736827e+03 - 2.1852156e+03 2.2207136e+03 -1.6804172e+03 - 2.1704523e+03 2.2407610e+03 -1.6848434e+03 - 2.1591275e+03 2.2563594e+03 -1.6873242e+03 - 2.1511605e+03 2.2676889e+03 -1.6882120e+03 - 2.1464415e+03 2.2749663e+03 -1.6878449e+03 - 2.1448270e+03 2.2784474e+03 -1.6865441e+03 - 2.1461360e+03 2.2784290e+03 -1.6846109e+03 - 2.1501464e+03 2.2752486e+03 -1.6823233e+03 - 2.1565927e+03 2.2692827e+03 -1.6799322e+03 - 2.1651651e+03 2.2609445e+03 -1.6776585e+03 - 2.1755105e+03 2.2506782e+03 -1.6756889e+03 - 2.1872353e+03 2.2389529e+03 -1.6741725e+03 - 2.1999101e+03 2.2262544e+03 -1.6732184e+03 - 2.2130764e+03 2.2130764e+03 -1.6728930e+03 - 2.2262544e+03 2.1999101e+03 -1.6732184e+03 - 2.2389529e+03 2.1872353e+03 -1.6741725e+03 - 2.2506782e+03 2.1755105e+03 -1.6756889e+03 - 2.2609445e+03 2.1651651e+03 -1.6776585e+03 - 2.2692827e+03 2.1565927e+03 -1.6799322e+03 - 2.2752486e+03 2.1501464e+03 -1.6823233e+03 - 2.2784290e+03 2.1461360e+03 -1.6846109e+03 - 2.2784474e+03 2.1448270e+03 -1.6865441e+03 - 2.2749663e+03 2.1464415e+03 -1.6878449e+03 - 2.2676889e+03 2.1511605e+03 -1.6882120e+03 - 2.2563594e+03 2.1591275e+03 -1.6873242e+03 - 2.2407610e+03 2.1704523e+03 -1.6848434e+03 - 2.2207136e+03 2.1852156e+03 -1.6804172e+03 - 2.1960713e+03 2.2034735e+03 -1.6736827e+03 - 2.1667182e+03 2.2252605e+03 -1.6642689e+03 - 2.1325650e+03 2.2505932e+03 -1.6518013e+03 - 2.0935460e+03 2.2794716e+03 -1.6359069e+03 - 2.0496151e+03 2.3118790e+03 -1.6162204e+03 - 2.0007438e+03 2.3477809e+03 -1.5923934e+03 - 1.9469188e+03 2.3871209e+03 -1.5641055e+03 - 1.8881412e+03 2.4298149e+03 -1.5310794e+03 - 1.8244260e+03 2.4757425e+03 -1.4930988e+03 - 1.7558032e+03 2.5247365e+03 -1.4500305e+03 - 1.6823200e+03 2.5765699e+03 -1.4018503e+03 - 1.6040437e+03 2.6309421e+03 -1.3486711e+03 - 1.5210667e+03 2.6874640e+03 -1.2907714e+03 - 1.4335109e+03 2.7456457e+03 -1.2286231e+03 - 1.3415334e+03 2.8048862e+03 -1.1629124e+03 - 1.2453311e+03 2.8644708e+03 -1.0945519e+03 - 1.1451438e+03 2.9235748e+03 -1.0246782e+03 - 1.0412545e+03 2.9812784e+03 -9.5463165e+02 - 9.3398747e+02 3.0365909e+03 -8.8591805e+02 - 8.2370153e+02 3.0884846e+03 -8.2015186e+02 - 7.1078108e+02 3.1359344e+03 -7.5898633e+02 - 5.9562475e+02 3.1779606e+03 -7.0403651e+02 - 4.7863400e+02 3.2136689e+03 -6.5680305e+02 - 3.6020315e+02 3.2422862e+03 -6.1860344e+02 - 2.4071292e+02 3.2631870e+03 -5.9051585e+02 - 1.2052814e+02 3.2759136e+03 -5.7333736e+02 - -4.8134273e-09 3.2801869e+03 -5.6755639e+02 - -1.2052814e+02 3.2759136e+03 -5.7333736e+02 - -2.4071292e+02 3.2631870e+03 -5.9051585e+02 - -3.6020315e+02 3.2422862e+03 -6.1860344e+02 - -4.7863400e+02 3.2136689e+03 -6.5680305e+02 - -5.9562475e+02 3.1779606e+03 -7.0403651e+02 - -7.1078108e+02 3.1359344e+03 -7.5898633e+02 - -8.2370153e+02 3.0884846e+03 -8.2015186e+02 - -9.3398747e+02 3.0365909e+03 -8.8591805e+02 - -1.0412545e+03 2.9812784e+03 -9.5463165e+02 - -1.1451438e+03 2.9235748e+03 -1.0246782e+03 - -1.2453311e+03 2.8644708e+03 -1.0945519e+03 - -1.3415334e+03 2.8048862e+03 -1.1629124e+03 - -1.4335109e+03 2.7456457e+03 -1.2286231e+03 - -1.5210667e+03 2.6874640e+03 -1.2907714e+03 - -1.6040437e+03 2.6309421e+03 -1.3486711e+03 - -1.6823200e+03 2.5765699e+03 -1.4018503e+03 - -1.7558032e+03 2.5247365e+03 -1.4500305e+03 - -1.8244260e+03 2.4757425e+03 -1.4930988e+03 - -1.8881412e+03 2.4298149e+03 -1.5310794e+03 - -1.9469188e+03 2.3871209e+03 -1.5641055e+03 - -2.0007438e+03 2.3477809e+03 -1.5923934e+03 - -2.0496151e+03 2.3118790e+03 -1.6162204e+03 - -2.0935460e+03 2.2794716e+03 -1.6359069e+03 - -2.1325650e+03 2.2505932e+03 -1.6518013e+03 - -2.1667182e+03 2.2252605e+03 -1.6642689e+03 - -2.1960713e+03 2.2034735e+03 -1.6736827e+03 - -2.2207136e+03 2.1852156e+03 -1.6804172e+03 - -2.2407610e+03 2.1704523e+03 -1.6848434e+03 - -2.2563594e+03 2.1591275e+03 -1.6873242e+03 - -2.2676889e+03 2.1511605e+03 -1.6882120e+03 - -2.2749663e+03 2.1464415e+03 -1.6878449e+03 - -2.2784474e+03 2.1448270e+03 -1.6865441e+03 - -2.2784290e+03 2.1461360e+03 -1.6846109e+03 - -2.2752486e+03 2.1501464e+03 -1.6823233e+03 - -2.2692827e+03 2.1565927e+03 -1.6799322e+03 - -2.2609445e+03 2.1651651e+03 -1.6776585e+03 - -2.2506782e+03 2.1755105e+03 -1.6756889e+03 - -2.2389529e+03 2.1872353e+03 -1.6741725e+03 - -2.2262544e+03 2.1999101e+03 -1.6732184e+03 - -2.2130764e+03 2.2130764e+03 -1.6728930e+03 - -2.1999101e+03 2.2262544e+03 -1.6732184e+03 - -2.1872353e+03 2.2389529e+03 -1.6741725e+03 - -2.1755105e+03 2.2506782e+03 -1.6756889e+03 - -2.1651651e+03 2.2609445e+03 -1.6776585e+03 - -2.1565927e+03 2.2692827e+03 -1.6799322e+03 - -2.1501464e+03 2.2752486e+03 -1.6823233e+03 - -2.1461360e+03 2.2784290e+03 -1.6846109e+03 - -2.1448270e+03 2.2784474e+03 -1.6865441e+03 - -2.1464415e+03 2.2749663e+03 -1.6878449e+03 - -2.1511605e+03 2.2676889e+03 -1.6882120e+03 - -2.1591275e+03 2.2563594e+03 -1.6873242e+03 - -2.1704523e+03 2.2407610e+03 -1.6848434e+03 - -2.1852156e+03 2.2207136e+03 -1.6804172e+03 - -2.2034735e+03 2.1960713e+03 -1.6736827e+03 - -2.2252605e+03 2.1667182e+03 -1.6642689e+03 - -2.2505932e+03 2.1325650e+03 -1.6518013e+03 - -2.2794716e+03 2.0935460e+03 -1.6359069e+03 - -2.3118790e+03 2.0496151e+03 -1.6162204e+03 - -2.3477809e+03 2.0007438e+03 -1.5923934e+03 - -2.3871209e+03 1.9469188e+03 -1.5641055e+03 - -2.4298149e+03 1.8881412e+03 -1.5310794e+03 - -2.4757425e+03 1.8244260e+03 -1.4930988e+03 - -2.5247365e+03 1.7558032e+03 -1.4500305e+03 - -2.5765699e+03 1.6823200e+03 -1.4018503e+03 - -2.6309421e+03 1.6040437e+03 -1.3486711e+03 - -2.6874640e+03 1.5210667e+03 -1.2907714e+03 - -2.7456457e+03 1.4335109e+03 -1.2286231e+03 - -2.8048862e+03 1.3415334e+03 -1.1629124e+03 - -2.8644708e+03 1.2453311e+03 -1.0945519e+03 - -2.9235748e+03 1.1451438e+03 -1.0246782e+03 - -2.9812784e+03 1.0412545e+03 -9.5463165e+02 - -3.0365909e+03 9.3398747e+02 -8.8591805e+02 - -3.0884846e+03 8.2370153e+02 -8.2015186e+02 - -3.1359344e+03 7.1078108e+02 -7.5898633e+02 - -3.1779606e+03 5.9562475e+02 -7.0403651e+02 - -3.2136689e+03 4.7863400e+02 -6.5680305e+02 - -3.2422862e+03 3.6020315e+02 -6.1860344e+02 - -3.2631870e+03 2.4071292e+02 -5.9051585e+02 - -3.2759136e+03 1.2052814e+02 -5.7333736e+02 - -3.2801869e+03 -2.4067136e-09 -5.6755639e+02 - -3.2759136e+03 -1.2052814e+02 -5.7333736e+02 - -3.2631870e+03 -2.4071292e+02 -5.9051585e+02 - -3.2422862e+03 -3.6020315e+02 -6.1860344e+02 - -3.2136689e+03 -4.7863400e+02 -6.5680305e+02 - -3.1779606e+03 -5.9562475e+02 -7.0403651e+02 - -3.1359344e+03 -7.1078108e+02 -7.5898633e+02 - -3.0884846e+03 -8.2370153e+02 -8.2015186e+02 - -3.0365909e+03 -9.3398747e+02 -8.8591805e+02 - -2.9812784e+03 -1.0412545e+03 -9.5463165e+02 - -2.9235748e+03 -1.1451438e+03 -1.0246782e+03 - -2.8644708e+03 -1.2453311e+03 -1.0945519e+03 - -2.8048862e+03 -1.3415334e+03 -1.1629124e+03 - -2.7456457e+03 -1.4335109e+03 -1.2286231e+03 - -2.6874640e+03 -1.5210667e+03 -1.2907714e+03 - -2.6309421e+03 -1.6040437e+03 -1.3486711e+03 - -2.5765699e+03 -1.6823200e+03 -1.4018503e+03 - -2.5247365e+03 -1.7558032e+03 -1.4500305e+03 - -2.4757425e+03 -1.8244260e+03 -1.4930988e+03 - -2.4298149e+03 -1.8881412e+03 -1.5310794e+03 - -2.3871209e+03 -1.9469188e+03 -1.5641055e+03 - -2.3477809e+03 -2.0007438e+03 -1.5923934e+03 - -2.3118790e+03 -2.0496151e+03 -1.6162204e+03 - -2.2794716e+03 -2.0935460e+03 -1.6359069e+03 - -2.2505932e+03 -2.1325650e+03 -1.6518013e+03 - -2.2252605e+03 -2.1667182e+03 -1.6642689e+03 - -2.2034735e+03 -2.1960713e+03 -1.6736827e+03 - -2.1852156e+03 -2.2207136e+03 -1.6804172e+03 - -2.1704523e+03 -2.2407610e+03 -1.6848434e+03 - -2.1591275e+03 -2.2563594e+03 -1.6873242e+03 - -2.1511605e+03 -2.2676889e+03 -1.6882120e+03 - -2.1464415e+03 -2.2749663e+03 -1.6878449e+03 - -2.1448270e+03 -2.2784474e+03 -1.6865441e+03 - -2.1461360e+03 -2.2784290e+03 -1.6846109e+03 - -2.1501464e+03 -2.2752486e+03 -1.6823233e+03 - -2.1565927e+03 -2.2692827e+03 -1.6799322e+03 - -2.1651651e+03 -2.2609445e+03 -1.6776585e+03 - -2.1755105e+03 -2.2506782e+03 -1.6756889e+03 - -2.1872353e+03 -2.2389529e+03 -1.6741725e+03 - -2.1999101e+03 -2.2262544e+03 -1.6732184e+03 - -2.2130764e+03 -2.2130764e+03 -1.6728930e+03 - -2.2262544e+03 -2.1999101e+03 -1.6732184e+03 - -2.2389529e+03 -2.1872353e+03 -1.6741725e+03 - -2.2506782e+03 -2.1755105e+03 -1.6756889e+03 - -2.2609445e+03 -2.1651651e+03 -1.6776585e+03 - -2.2692827e+03 -2.1565927e+03 -1.6799322e+03 - -2.2752486e+03 -2.1501464e+03 -1.6823233e+03 - -2.2784290e+03 -2.1461360e+03 -1.6846109e+03 - -2.2784474e+03 -2.1448270e+03 -1.6865441e+03 - -2.2749663e+03 -2.1464415e+03 -1.6878449e+03 - -2.2676889e+03 -2.1511605e+03 -1.6882120e+03 - -2.2563594e+03 -2.1591275e+03 -1.6873242e+03 - -2.2407610e+03 -2.1704523e+03 -1.6848434e+03 - -2.2207136e+03 -2.1852156e+03 -1.6804172e+03 - -2.1960713e+03 -2.2034735e+03 -1.6736827e+03 - -2.1667182e+03 -2.2252605e+03 -1.6642689e+03 - -2.1325650e+03 -2.2505932e+03 -1.6518013e+03 - -2.0935460e+03 -2.2794716e+03 -1.6359069e+03 - -2.0496151e+03 -2.3118790e+03 -1.6162204e+03 - -2.0007438e+03 -2.3477809e+03 -1.5923934e+03 - -1.9469188e+03 -2.3871209e+03 -1.5641055e+03 - -1.8881412e+03 -2.4298149e+03 -1.5310794e+03 - -1.8244260e+03 -2.4757425e+03 -1.4930988e+03 - -1.7558032e+03 -2.5247365e+03 -1.4500305e+03 - -1.6823200e+03 -2.5765699e+03 -1.4018503e+03 - -1.6040437e+03 -2.6309421e+03 -1.3486711e+03 - -1.5210667e+03 -2.6874640e+03 -1.2907714e+03 - -1.4335109e+03 -2.7456457e+03 -1.2286231e+03 - -1.3415334e+03 -2.8048862e+03 -1.1629124e+03 - -1.2453311e+03 -2.8644708e+03 -1.0945519e+03 - -1.1451438e+03 -2.9235748e+03 -1.0246782e+03 - -1.0412545e+03 -2.9812784e+03 -9.5463165e+02 - -9.3398747e+02 -3.0365909e+03 -8.8591805e+02 - -8.2370153e+02 -3.0884846e+03 -8.2015186e+02 - -7.1078108e+02 -3.1359344e+03 -7.5898633e+02 - -5.9562475e+02 -3.1779606e+03 -7.0403651e+02 - -4.7863400e+02 -3.2136689e+03 -6.5680305e+02 - -3.6020315e+02 -3.2422862e+03 -6.1860344e+02 - -2.4071292e+02 -3.2631870e+03 -5.9051585e+02 - -1.2052814e+02 -3.2759136e+03 -5.7333736e+02 - 2.4067136e-09 -3.2801869e+03 -5.6755639e+02 - 1.2052814e+02 -3.2759136e+03 -5.7333736e+02 - 2.4071292e+02 -3.2631870e+03 -5.9051585e+02 - 3.6020315e+02 -3.2422862e+03 -6.1860344e+02 - 4.7863400e+02 -3.2136689e+03 -6.5680305e+02 - 5.9562475e+02 -3.1779606e+03 -7.0403651e+02 - 7.1078108e+02 -3.1359344e+03 -7.5898633e+02 - 8.2370153e+02 -3.0884846e+03 -8.2015186e+02 - 9.3398747e+02 -3.0365909e+03 -8.8591805e+02 - 1.0412545e+03 -2.9812784e+03 -9.5463165e+02 - 1.1451438e+03 -2.9235748e+03 -1.0246782e+03 - 1.2453311e+03 -2.8644708e+03 -1.0945519e+03 - 1.3415334e+03 -2.8048862e+03 -1.1629124e+03 - 1.4335109e+03 -2.7456457e+03 -1.2286231e+03 - 1.5210667e+03 -2.6874640e+03 -1.2907714e+03 - 1.6040437e+03 -2.6309421e+03 -1.3486711e+03 - 1.6823200e+03 -2.5765699e+03 -1.4018503e+03 - 1.7558032e+03 -2.5247365e+03 -1.4500305e+03 - 1.8244260e+03 -2.4757425e+03 -1.4930988e+03 - 1.8881412e+03 -2.4298149e+03 -1.5310794e+03 - 1.9469188e+03 -2.3871209e+03 -1.5641055e+03 - 2.0007438e+03 -2.3477809e+03 -1.5923934e+03 - 2.0496151e+03 -2.3118790e+03 -1.6162204e+03 - 2.0935460e+03 -2.2794716e+03 -1.6359069e+03 - 2.1325650e+03 -2.2505932e+03 -1.6518013e+03 - 2.1667182e+03 -2.2252605e+03 -1.6642689e+03 - 2.1960713e+03 -2.2034735e+03 -1.6736827e+03 - 2.2207136e+03 -2.1852156e+03 -1.6804172e+03 - 2.2407610e+03 -2.1704523e+03 -1.6848434e+03 - 2.2563594e+03 -2.1591275e+03 -1.6873242e+03 - 2.2676889e+03 -2.1511605e+03 -1.6882120e+03 - 2.2749663e+03 -2.1464415e+03 -1.6878449e+03 - 2.2784474e+03 -2.1448270e+03 -1.6865441e+03 - 2.2784290e+03 -2.1461360e+03 -1.6846109e+03 - 2.2752486e+03 -2.1501464e+03 -1.6823233e+03 - 2.2692827e+03 -2.1565927e+03 -1.6799322e+03 - 2.2609445e+03 -2.1651651e+03 -1.6776585e+03 - 2.2506782e+03 -2.1755105e+03 -1.6756889e+03 - 2.2389529e+03 -2.1872353e+03 -1.6741725e+03 - 2.2262544e+03 -2.1999101e+03 -1.6732184e+03 - 2.2130764e+03 -2.2130764e+03 -1.6728930e+03 - 2.1999101e+03 -2.2262544e+03 -1.6732184e+03 - 2.1872353e+03 -2.2389529e+03 -1.6741725e+03 - 2.1755105e+03 -2.2506782e+03 -1.6756889e+03 - 2.1651651e+03 -2.2609445e+03 -1.6776585e+03 - 2.1565927e+03 -2.2692827e+03 -1.6799322e+03 - 2.1501464e+03 -2.2752486e+03 -1.6823233e+03 - 2.1461360e+03 -2.2784290e+03 -1.6846109e+03 - 2.1448270e+03 -2.2784474e+03 -1.6865441e+03 - 2.1464415e+03 -2.2749663e+03 -1.6878449e+03 - 2.1511605e+03 -2.2676889e+03 -1.6882120e+03 - 2.1591275e+03 -2.2563594e+03 -1.6873242e+03 - 2.1704523e+03 -2.2407610e+03 -1.6848434e+03 - 2.1852156e+03 -2.2207136e+03 -1.6804172e+03 - 2.2034735e+03 -2.1960713e+03 -1.6736827e+03 - 2.2252605e+03 -2.1667182e+03 -1.6642689e+03 - 2.2505932e+03 -2.1325650e+03 -1.6518013e+03 - 2.2794716e+03 -2.0935460e+03 -1.6359069e+03 - 2.3118790e+03 -2.0496151e+03 -1.6162204e+03 - 2.3477809e+03 -2.0007438e+03 -1.5923934e+03 - 2.3871209e+03 -1.9469188e+03 -1.5641055e+03 - 2.4298149e+03 -1.8881412e+03 -1.5310794e+03 - 2.4757425e+03 -1.8244260e+03 -1.4930988e+03 - 2.5247365e+03 -1.7558032e+03 -1.4500305e+03 - 2.5765699e+03 -1.6823200e+03 -1.4018503e+03 - 2.6309421e+03 -1.6040437e+03 -1.3486711e+03 - 2.6874640e+03 -1.5210667e+03 -1.2907714e+03 - 2.7456457e+03 -1.4335109e+03 -1.2286231e+03 - 2.8048862e+03 -1.3415334e+03 -1.1629124e+03 - 2.8644708e+03 -1.2453311e+03 -1.0945519e+03 - 2.9235748e+03 -1.1451438e+03 -1.0246782e+03 - 2.9812784e+03 -1.0412545e+03 -9.5463165e+02 - 3.0365909e+03 -9.3398747e+02 -8.8591805e+02 - 3.0884846e+03 -8.2370153e+02 -8.2015186e+02 - 3.1359344e+03 -7.1078108e+02 -7.5898633e+02 - 3.1779606e+03 -5.9562475e+02 -7.0403651e+02 - 3.2136689e+03 -4.7863400e+02 -6.5680305e+02 - 3.2422862e+03 -3.6020315e+02 -6.1860344e+02 - 3.2631870e+03 -2.4071292e+02 -5.9051585e+02 - 3.2759136e+03 -1.2052814e+02 -5.7333736e+02 - 3.2801869e+03 -4.8134273e-09 -5.6755639e+02 - 3.2361113e+03 2.4067136e-09 -6.4808716e+02 - 3.2302362e+03 1.3735335e+02 -6.5617099e+02 - 3.2129185e+03 2.7342612e+02 -6.7992955e+02 - 3.1850349e+03 4.0704246e+02 -7.1795904e+02 - 3.1479064e+03 5.3721296e+02 -7.6814807e+02 - 3.1031295e+03 6.6317898e+02 -8.2795321e+02 - 3.0524033e+03 7.8441778e+02 -8.9468177e+02 - 2.9973839e+03 9.0061696e+02 -9.6573001e+02 - 2.9395831e+03 1.0116315e+03 -1.0387502e+03 - 2.8803119e+03 1.1174358e+03 -1.1117440e+03 - 2.8206619e+03 1.2180798e+03 -1.1830945e+03 - 2.7615120e+03 1.3136539e+03 -1.2515556e+03 - 2.7035509e+03 1.4042628e+03 -1.3162156e+03 - 2.6473058e+03 1.4900088e+03 -1.3764499e+03 - 2.5931726e+03 1.5709823e+03 -1.4318706e+03 - 2.5414442e+03 1.6472571e+03 -1.4822795e+03 - 2.4923340e+03 1.7188892e+03 -1.5276269e+03 - 2.4459970e+03 1.7859184e+03 -1.5679761e+03 - 2.4025453e+03 1.8483708e+03 -1.6034753e+03 - 2.3620605e+03 1.9062620e+03 -1.6343346e+03 - 2.3246036e+03 1.9596013e+03 -1.6608084e+03 - 2.2902207e+03 2.0083950e+03 -1.6831812e+03 - 2.2589478e+03 2.0526510e+03 -1.7017578e+03 - 2.2308132e+03 2.0923824e+03 -1.7168548e+03 - 2.2058381e+03 2.1276118e+03 -1.7287955e+03 - 2.1840363e+03 2.1583749e+03 -1.7379051e+03 - 2.1654121e+03 2.1847252e+03 -1.7445081e+03 - 2.1499582e+03 2.2067375e+03 -1.7489251e+03 - 2.1376520e+03 2.2245118e+03 -1.7514714e+03 - 2.1284518e+03 2.2381776e+03 -1.7524548e+03 - 2.1222924e+03 2.2478966e+03 -1.7521739e+03 - 2.1190806e+03 2.2538657e+03 -1.7509161e+03 - 2.1186911e+03 2.2563194e+03 -1.7489552e+03 - 2.1209625e+03 2.2555304e+03 -1.7465486e+03 - 2.1256942e+03 2.2518097e+03 -1.7439347e+03 - 2.1326448e+03 2.2455048e+03 -1.7413295e+03 - 2.1415311e+03 2.2369968e+03 -1.7389235e+03 - 2.1520297e+03 2.2266956e+03 -1.7368778e+03 - 2.1637790e+03 2.2150336e+03 -1.7353218e+03 - 2.1763846e+03 2.2024586e+03 -1.7343497e+03 - 2.1894248e+03 2.1894248e+03 -1.7340193e+03 - 2.2024586e+03 2.1763846e+03 -1.7343497e+03 - 2.2150336e+03 2.1637790e+03 -1.7353218e+03 - 2.2266956e+03 2.1520297e+03 -1.7368778e+03 - 2.2369968e+03 2.1415311e+03 -1.7389235e+03 - 2.2455048e+03 2.1326448e+03 -1.7413295e+03 - 2.2518097e+03 2.1256942e+03 -1.7439347e+03 - 2.2555304e+03 2.1209625e+03 -1.7465486e+03 - 2.2563194e+03 2.1186911e+03 -1.7489552e+03 - 2.2538657e+03 2.1190806e+03 -1.7509161e+03 - 2.2478966e+03 2.1222924e+03 -1.7521739e+03 - 2.2381776e+03 2.1284518e+03 -1.7524548e+03 - 2.2245118e+03 2.1376520e+03 -1.7514714e+03 - 2.2067375e+03 2.1499582e+03 -1.7489251e+03 - 2.1847252e+03 2.1654121e+03 -1.7445081e+03 - 2.1583749e+03 2.1840363e+03 -1.7379051e+03 - 2.1276118e+03 2.2058381e+03 -1.7287955e+03 - 2.0923824e+03 2.2308132e+03 -1.7168548e+03 - 2.0526510e+03 2.2589478e+03 -1.7017578e+03 - 2.0083950e+03 2.2902207e+03 -1.6831812e+03 - 1.9596013e+03 2.3246036e+03 -1.6608084e+03 - 1.9062620e+03 2.3620605e+03 -1.6343346e+03 - 1.8483708e+03 2.4025453e+03 -1.6034753e+03 - 1.7859184e+03 2.4459970e+03 -1.5679761e+03 - 1.7188892e+03 2.4923340e+03 -1.5276269e+03 - 1.6472571e+03 2.5414442e+03 -1.4822795e+03 - 1.5709823e+03 2.5931726e+03 -1.4318706e+03 - 1.4900088e+03 2.6473058e+03 -1.3764499e+03 - 1.4042628e+03 2.7035509e+03 -1.3162156e+03 - 1.3136539e+03 2.7615120e+03 -1.2515556e+03 - 1.2180798e+03 2.8206619e+03 -1.1830945e+03 - 1.1174358e+03 2.8803119e+03 -1.1117440e+03 - 1.0116315e+03 2.9395831e+03 -1.0387502e+03 - 9.0061696e+02 2.9973839e+03 -9.6573001e+02 - 7.8441778e+02 3.0524033e+03 -8.9468177e+02 - 6.6317898e+02 3.1031295e+03 -8.2795321e+02 - 5.3721296e+02 3.1479064e+03 -7.6814807e+02 - 4.0704246e+02 3.1850349e+03 -7.1795904e+02 - 2.7342612e+02 3.2129185e+03 -6.7992955e+02 - 1.3735335e+02 3.2302362e+03 -6.5617099e+02 - -2.4067136e-09 3.2361113e+03 -6.4808716e+02 - -1.3735335e+02 3.2302362e+03 -6.5617099e+02 - -2.7342612e+02 3.2129185e+03 -6.7992955e+02 - -4.0704246e+02 3.1850349e+03 -7.1795904e+02 - -5.3721296e+02 3.1479064e+03 -7.6814807e+02 - -6.6317898e+02 3.1031295e+03 -8.2795321e+02 - -7.8441778e+02 3.0524033e+03 -8.9468177e+02 - -9.0061696e+02 2.9973839e+03 -9.6573001e+02 - -1.0116315e+03 2.9395831e+03 -1.0387502e+03 - -1.1174358e+03 2.8803119e+03 -1.1117440e+03 - -1.2180798e+03 2.8206619e+03 -1.1830945e+03 - -1.3136539e+03 2.7615120e+03 -1.2515556e+03 - -1.4042628e+03 2.7035509e+03 -1.3162156e+03 - -1.4900088e+03 2.6473058e+03 -1.3764499e+03 - -1.5709823e+03 2.5931726e+03 -1.4318706e+03 - -1.6472571e+03 2.5414442e+03 -1.4822795e+03 - -1.7188892e+03 2.4923340e+03 -1.5276269e+03 - -1.7859184e+03 2.4459970e+03 -1.5679761e+03 - -1.8483708e+03 2.4025453e+03 -1.6034753e+03 - -1.9062620e+03 2.3620605e+03 -1.6343346e+03 - -1.9596013e+03 2.3246036e+03 -1.6608084e+03 - -2.0083950e+03 2.2902207e+03 -1.6831812e+03 - -2.0526510e+03 2.2589478e+03 -1.7017578e+03 - -2.0923824e+03 2.2308132e+03 -1.7168548e+03 - -2.1276118e+03 2.2058381e+03 -1.7287955e+03 - -2.1583749e+03 2.1840363e+03 -1.7379051e+03 - -2.1847252e+03 2.1654121e+03 -1.7445081e+03 - -2.2067375e+03 2.1499582e+03 -1.7489251e+03 - -2.2245118e+03 2.1376520e+03 -1.7514714e+03 - -2.2381776e+03 2.1284518e+03 -1.7524548e+03 - -2.2478966e+03 2.1222924e+03 -1.7521739e+03 - -2.2538657e+03 2.1190806e+03 -1.7509161e+03 - -2.2563194e+03 2.1186911e+03 -1.7489552e+03 - -2.2555304e+03 2.1209625e+03 -1.7465486e+03 - -2.2518097e+03 2.1256942e+03 -1.7439347e+03 - -2.2455048e+03 2.1326448e+03 -1.7413295e+03 - -2.2369968e+03 2.1415311e+03 -1.7389235e+03 - -2.2266956e+03 2.1520297e+03 -1.7368778e+03 - -2.2150336e+03 2.1637790e+03 -1.7353218e+03 - -2.2024586e+03 2.1763846e+03 -1.7343497e+03 - -2.1894248e+03 2.1894248e+03 -1.7340193e+03 - -2.1763846e+03 2.2024586e+03 -1.7343497e+03 - -2.1637790e+03 2.2150336e+03 -1.7353218e+03 - -2.1520297e+03 2.2266956e+03 -1.7368778e+03 - -2.1415311e+03 2.2369968e+03 -1.7389235e+03 - -2.1326448e+03 2.2455048e+03 -1.7413295e+03 - -2.1256942e+03 2.2518097e+03 -1.7439347e+03 - -2.1209625e+03 2.2555304e+03 -1.7465486e+03 - -2.1186911e+03 2.2563194e+03 -1.7489552e+03 - -2.1190806e+03 2.2538657e+03 -1.7509161e+03 - -2.1222924e+03 2.2478966e+03 -1.7521739e+03 - -2.1284518e+03 2.2381776e+03 -1.7524548e+03 - -2.1376520e+03 2.2245118e+03 -1.7514714e+03 - -2.1499582e+03 2.2067375e+03 -1.7489251e+03 - -2.1654121e+03 2.1847252e+03 -1.7445081e+03 - -2.1840363e+03 2.1583749e+03 -1.7379051e+03 - -2.2058381e+03 2.1276118e+03 -1.7287955e+03 - -2.2308132e+03 2.0923824e+03 -1.7168548e+03 - -2.2589478e+03 2.0526510e+03 -1.7017578e+03 - -2.2902207e+03 2.0083950e+03 -1.6831812e+03 - -2.3246036e+03 1.9596013e+03 -1.6608084e+03 - -2.3620605e+03 1.9062620e+03 -1.6343346e+03 - -2.4025453e+03 1.8483708e+03 -1.6034753e+03 - -2.4459970e+03 1.7859184e+03 -1.5679761e+03 - -2.4923340e+03 1.7188892e+03 -1.5276269e+03 - -2.5414442e+03 1.6472571e+03 -1.4822795e+03 - -2.5931726e+03 1.5709823e+03 -1.4318706e+03 - -2.6473058e+03 1.4900088e+03 -1.3764499e+03 - -2.7035509e+03 1.4042628e+03 -1.3162156e+03 - -2.7615120e+03 1.3136539e+03 -1.2515556e+03 - -2.8206619e+03 1.2180798e+03 -1.1830945e+03 - -2.8803119e+03 1.1174358e+03 -1.1117440e+03 - -2.9395831e+03 1.0116315e+03 -1.0387502e+03 - -2.9973839e+03 9.0061696e+02 -9.6573001e+02 - -3.0524033e+03 7.8441778e+02 -8.9468177e+02 - -3.1031295e+03 6.6317898e+02 -8.2795321e+02 - -3.1479064e+03 5.3721296e+02 -7.6814807e+02 - -3.1850349e+03 4.0704246e+02 -7.1795904e+02 - -3.2129185e+03 2.7342612e+02 -6.7992955e+02 - -3.2302362e+03 1.3735335e+02 -6.5617099e+02 - -3.2361113e+03 0.0000000e+00 -6.4808716e+02 - -3.2302362e+03 -1.3735335e+02 -6.5617099e+02 - -3.2129185e+03 -2.7342612e+02 -6.7992955e+02 - -3.1850349e+03 -4.0704246e+02 -7.1795904e+02 - -3.1479064e+03 -5.3721296e+02 -7.6814807e+02 - -3.1031295e+03 -6.6317898e+02 -8.2795321e+02 - -3.0524033e+03 -7.8441778e+02 -8.9468177e+02 - -2.9973839e+03 -9.0061696e+02 -9.6573001e+02 - -2.9395831e+03 -1.0116315e+03 -1.0387502e+03 - -2.8803119e+03 -1.1174358e+03 -1.1117440e+03 - -2.8206619e+03 -1.2180798e+03 -1.1830945e+03 - -2.7615120e+03 -1.3136539e+03 -1.2515556e+03 - -2.7035509e+03 -1.4042628e+03 -1.3162156e+03 - -2.6473058e+03 -1.4900088e+03 -1.3764499e+03 - -2.5931726e+03 -1.5709823e+03 -1.4318706e+03 - -2.5414442e+03 -1.6472571e+03 -1.4822795e+03 - -2.4923340e+03 -1.7188892e+03 -1.5276269e+03 - -2.4459970e+03 -1.7859184e+03 -1.5679761e+03 - -2.4025453e+03 -1.8483708e+03 -1.6034753e+03 - -2.3620605e+03 -1.9062620e+03 -1.6343346e+03 - -2.3246036e+03 -1.9596013e+03 -1.6608084e+03 - -2.2902207e+03 -2.0083950e+03 -1.6831812e+03 - -2.2589478e+03 -2.0526510e+03 -1.7017578e+03 - -2.2308132e+03 -2.0923824e+03 -1.7168548e+03 - -2.2058381e+03 -2.1276118e+03 -1.7287955e+03 - -2.1840363e+03 -2.1583749e+03 -1.7379051e+03 - -2.1654121e+03 -2.1847252e+03 -1.7445081e+03 - -2.1499582e+03 -2.2067375e+03 -1.7489251e+03 - -2.1376520e+03 -2.2245118e+03 -1.7514714e+03 - -2.1284518e+03 -2.2381776e+03 -1.7524548e+03 - -2.1222924e+03 -2.2478966e+03 -1.7521739e+03 - -2.1190806e+03 -2.2538657e+03 -1.7509161e+03 - -2.1186911e+03 -2.2563194e+03 -1.7489552e+03 - -2.1209625e+03 -2.2555304e+03 -1.7465486e+03 - -2.1256942e+03 -2.2518097e+03 -1.7439347e+03 - -2.1326448e+03 -2.2455048e+03 -1.7413295e+03 - -2.1415311e+03 -2.2369968e+03 -1.7389235e+03 - -2.1520297e+03 -2.2266956e+03 -1.7368778e+03 - -2.1637790e+03 -2.2150336e+03 -1.7353218e+03 - -2.1763846e+03 -2.2024586e+03 -1.7343497e+03 - -2.1894248e+03 -2.1894248e+03 -1.7340193e+03 - -2.2024586e+03 -2.1763846e+03 -1.7343497e+03 - -2.2150336e+03 -2.1637790e+03 -1.7353218e+03 - -2.2266956e+03 -2.1520297e+03 -1.7368778e+03 - -2.2369968e+03 -2.1415311e+03 -1.7389235e+03 - -2.2455048e+03 -2.1326448e+03 -1.7413295e+03 - -2.2518097e+03 -2.1256942e+03 -1.7439347e+03 - -2.2555304e+03 -2.1209625e+03 -1.7465486e+03 - -2.2563194e+03 -2.1186911e+03 -1.7489552e+03 - -2.2538657e+03 -2.1190806e+03 -1.7509161e+03 - -2.2478966e+03 -2.1222924e+03 -1.7521739e+03 - -2.2381776e+03 -2.1284518e+03 -1.7524548e+03 - -2.2245118e+03 -2.1376520e+03 -1.7514714e+03 - -2.2067375e+03 -2.1499582e+03 -1.7489251e+03 - -2.1847252e+03 -2.1654121e+03 -1.7445081e+03 - -2.1583749e+03 -2.1840363e+03 -1.7379051e+03 - -2.1276118e+03 -2.2058381e+03 -1.7287955e+03 - -2.0923824e+03 -2.2308132e+03 -1.7168548e+03 - -2.0526510e+03 -2.2589478e+03 -1.7017578e+03 - -2.0083950e+03 -2.2902207e+03 -1.6831812e+03 - -1.9596013e+03 -2.3246036e+03 -1.6608084e+03 - -1.9062620e+03 -2.3620605e+03 -1.6343346e+03 - -1.8483708e+03 -2.4025453e+03 -1.6034753e+03 - -1.7859184e+03 -2.4459970e+03 -1.5679761e+03 - -1.7188892e+03 -2.4923340e+03 -1.5276269e+03 - -1.6472571e+03 -2.5414442e+03 -1.4822795e+03 - -1.5709823e+03 -2.5931726e+03 -1.4318706e+03 - -1.4900088e+03 -2.6473058e+03 -1.3764499e+03 - -1.4042628e+03 -2.7035509e+03 -1.3162156e+03 - -1.3136539e+03 -2.7615120e+03 -1.2515556e+03 - -1.2180798e+03 -2.8206619e+03 -1.1830945e+03 - -1.1174358e+03 -2.8803119e+03 -1.1117440e+03 - -1.0116315e+03 -2.9395831e+03 -1.0387502e+03 - -9.0061696e+02 -2.9973839e+03 -9.6573001e+02 - -7.8441778e+02 -3.0524033e+03 -8.9468177e+02 - -6.6317898e+02 -3.1031295e+03 -8.2795321e+02 - -5.3721296e+02 -3.1479064e+03 -7.6814807e+02 - -4.0704246e+02 -3.1850349e+03 -7.1795904e+02 - -2.7342612e+02 -3.2129185e+03 -6.7992955e+02 - -1.3735335e+02 -3.2302362e+03 -6.5617099e+02 - 2.4067136e-09 -3.2361113e+03 -6.4808716e+02 - 1.3735335e+02 -3.2302362e+03 -6.5617099e+02 - 2.7342612e+02 -3.2129185e+03 -6.7992955e+02 - 4.0704246e+02 -3.1850349e+03 -7.1795904e+02 - 5.3721296e+02 -3.1479064e+03 -7.6814807e+02 - 6.6317898e+02 -3.1031295e+03 -8.2795321e+02 - 7.8441778e+02 -3.0524033e+03 -8.9468177e+02 - 9.0061696e+02 -2.9973839e+03 -9.6573001e+02 - 1.0116315e+03 -2.9395831e+03 -1.0387502e+03 - 1.1174358e+03 -2.8803119e+03 -1.1117440e+03 - 1.2180798e+03 -2.8206619e+03 -1.1830945e+03 - 1.3136539e+03 -2.7615120e+03 -1.2515556e+03 - 1.4042628e+03 -2.7035509e+03 -1.3162156e+03 - 1.4900088e+03 -2.6473058e+03 -1.3764499e+03 - 1.5709823e+03 -2.5931726e+03 -1.4318706e+03 - 1.6472571e+03 -2.5414442e+03 -1.4822795e+03 - 1.7188892e+03 -2.4923340e+03 -1.5276269e+03 - 1.7859184e+03 -2.4459970e+03 -1.5679761e+03 - 1.8483708e+03 -2.4025453e+03 -1.6034753e+03 - 1.9062620e+03 -2.3620605e+03 -1.6343346e+03 - 1.9596013e+03 -2.3246036e+03 -1.6608084e+03 - 2.0083950e+03 -2.2902207e+03 -1.6831812e+03 - 2.0526510e+03 -2.2589478e+03 -1.7017578e+03 - 2.0923824e+03 -2.2308132e+03 -1.7168548e+03 - 2.1276118e+03 -2.2058381e+03 -1.7287955e+03 - 2.1583749e+03 -2.1840363e+03 -1.7379051e+03 - 2.1847252e+03 -2.1654121e+03 -1.7445081e+03 - 2.2067375e+03 -2.1499582e+03 -1.7489251e+03 - 2.2245118e+03 -2.1376520e+03 -1.7514714e+03 - 2.2381776e+03 -2.1284518e+03 -1.7524548e+03 - 2.2478966e+03 -2.1222924e+03 -1.7521739e+03 - 2.2538657e+03 -2.1190806e+03 -1.7509161e+03 - 2.2563194e+03 -2.1186911e+03 -1.7489552e+03 - 2.2555304e+03 -2.1209625e+03 -1.7465486e+03 - 2.2518097e+03 -2.1256942e+03 -1.7439347e+03 - 2.2455048e+03 -2.1326448e+03 -1.7413295e+03 - 2.2369968e+03 -2.1415311e+03 -1.7389235e+03 - 2.2266956e+03 -2.1520297e+03 -1.7368778e+03 - 2.2150336e+03 -2.1637790e+03 -1.7353218e+03 - 2.2024586e+03 -2.1763846e+03 -1.7343497e+03 - 2.1894248e+03 -2.1894248e+03 -1.7340193e+03 - 2.1763846e+03 -2.2024586e+03 -1.7343497e+03 - 2.1637790e+03 -2.2150336e+03 -1.7353218e+03 - 2.1520297e+03 -2.2266956e+03 -1.7368778e+03 - 2.1415311e+03 -2.2369968e+03 -1.7389235e+03 - 2.1326448e+03 -2.2455048e+03 -1.7413295e+03 - 2.1256942e+03 -2.2518097e+03 -1.7439347e+03 - 2.1209625e+03 -2.2555304e+03 -1.7465486e+03 - 2.1186911e+03 -2.2563194e+03 -1.7489552e+03 - 2.1190806e+03 -2.2538657e+03 -1.7509161e+03 - 2.1222924e+03 -2.2478966e+03 -1.7521739e+03 - 2.1284518e+03 -2.2381776e+03 -1.7524548e+03 - 2.1376520e+03 -2.2245118e+03 -1.7514714e+03 - 2.1499582e+03 -2.2067375e+03 -1.7489251e+03 - 2.1654121e+03 -2.1847252e+03 -1.7445081e+03 - 2.1840363e+03 -2.1583749e+03 -1.7379051e+03 - 2.2058381e+03 -2.1276118e+03 -1.7287955e+03 - 2.2308132e+03 -2.0923824e+03 -1.7168548e+03 - 2.2589478e+03 -2.0526510e+03 -1.7017578e+03 - 2.2902207e+03 -2.0083950e+03 -1.6831812e+03 - 2.3246036e+03 -1.9596013e+03 -1.6608084e+03 - 2.3620605e+03 -1.9062620e+03 -1.6343346e+03 - 2.4025453e+03 -1.8483708e+03 -1.6034753e+03 - 2.4459970e+03 -1.7859184e+03 -1.5679761e+03 - 2.4923340e+03 -1.7188892e+03 -1.5276269e+03 - 2.5414442e+03 -1.6472571e+03 -1.4822795e+03 - 2.5931726e+03 -1.5709823e+03 -1.4318706e+03 - 2.6473058e+03 -1.4900088e+03 -1.3764499e+03 - 2.7035509e+03 -1.4042628e+03 -1.3162156e+03 - 2.7615120e+03 -1.3136539e+03 -1.2515556e+03 - 2.8206619e+03 -1.2180798e+03 -1.1830945e+03 - 2.8803119e+03 -1.1174358e+03 -1.1117440e+03 - 2.9395831e+03 -1.0116315e+03 -1.0387502e+03 - 2.9973839e+03 -9.0061696e+02 -9.6573001e+02 - 3.0524033e+03 -7.8441778e+02 -8.9468177e+02 - 3.1031295e+03 -6.6317898e+02 -8.2795321e+02 - 3.1479064e+03 -5.3721296e+02 -7.6814807e+02 - 3.1850349e+03 -4.0704246e+02 -7.1795904e+02 - 3.2129185e+03 -2.7342612e+02 -6.7992955e+02 - 3.2302362e+03 -1.3735335e+02 -6.5617099e+02 - 3.2361113e+03 0.0000000e+00 -6.4808716e+02 - 3.1880487e+03 -2.4067136e-09 -7.3195095e+02 - 3.1793989e+03 1.6239448e+02 -7.4399309e+02 - 3.1544265e+03 3.2090358e+02 -7.7863152e+02 - 3.1157325e+03 4.7243172e+02 -8.3190498e+02 - 3.0667593e+03 6.1510081e+02 -8.9857251e+02 - 3.0109807e+03 7.4822236e+02 -9.7335065e+02 - 2.9513698e+03 8.7197948e+02 -1.0517291e+03 - 2.8901989e+03 9.8704465e+02 -1.1302813e+03 - 2.8290684e+03 1.0942739e+03 -1.2066262e+03 - 2.7690376e+03 1.1945156e+03 -1.2792313e+03 - 2.7107737e+03 1.2885149e+03 -1.3471883e+03 - 2.6546790e+03 1.3768803e+03 -1.4100200e+03 - 2.6009854e+03 1.4600847e+03 -1.4675355e+03 - 2.5498205e+03 1.5384812e+03 -1.5197281e+03 - 2.5012512e+03 1.6123236e+03 -1.5667082e+03 - 2.4553110e+03 1.6817871e+03 -1.6086591e+03 - 2.4120174e+03 1.7469866e+03 -1.6458083e+03 - 2.3713821e+03 1.8079918e+03 -1.6784106e+03 - 2.3334170e+03 1.8648403e+03 -1.7067359e+03 - 2.2981370e+03 1.9175474e+03 -1.7310627e+03 - 2.2655611e+03 1.9661148e+03 -1.7516738e+03 - 2.2357125e+03 2.0105378e+03 -1.7688529e+03 - 2.2086173e+03 2.0508108e+03 -1.7828837e+03 - 2.1843032e+03 2.0869329e+03 -1.7940480e+03 - 2.1627965e+03 2.1189128e+03 -1.8026256e+03 - 2.1441200e+03 2.1467726e+03 -1.8088935e+03 - 2.1282895e+03 2.1705522e+03 -1.8131255e+03 - 2.1153099e+03 2.1903133e+03 -1.8155914e+03 - 2.1051716e+03 2.2061427e+03 -1.8165566e+03 - 2.0978463e+03 2.2181560e+03 -1.8162810e+03 - 2.0932824e+03 2.2265001e+03 -1.8150174e+03 - 2.0914009e+03 2.2313562e+03 -1.8130104e+03 - 2.0920919e+03 2.2329406e+03 -1.8104938e+03 - 2.0952104e+03 2.2315060e+03 -1.8076886e+03 - 2.1005746e+03 2.2273407e+03 -1.8048000e+03 - 2.1079636e+03 2.2207672e+03 -1.8020147e+03 - 2.1171175e+03 2.2121384e+03 -1.7994973e+03 - 2.1277387e+03 2.2018342e+03 -1.7973879e+03 - 2.1394943e+03 2.1902544e+03 -1.7957987e+03 - 2.1520207e+03 2.1778129e+03 -1.7948117e+03 - 2.1649292e+03 2.1649292e+03 -1.7944771e+03 - 2.1778129e+03 2.1520207e+03 -1.7948117e+03 - 2.1902544e+03 2.1394943e+03 -1.7957987e+03 - 2.2018342e+03 2.1277387e+03 -1.7973879e+03 - 2.2121384e+03 2.1171175e+03 -1.7994973e+03 - 2.2207672e+03 2.1079636e+03 -1.8020147e+03 - 2.2273407e+03 2.1005746e+03 -1.8048000e+03 - 2.2315060e+03 2.0952104e+03 -1.8076886e+03 - 2.2329406e+03 2.0920919e+03 -1.8104938e+03 - 2.2313562e+03 2.0914009e+03 -1.8130104e+03 - 2.2265001e+03 2.0932824e+03 -1.8150174e+03 - 2.2181560e+03 2.0978463e+03 -1.8162810e+03 - 2.2061427e+03 2.1051716e+03 -1.8165566e+03 - 2.1903133e+03 2.1153099e+03 -1.8155914e+03 - 2.1705522e+03 2.1282895e+03 -1.8131255e+03 - 2.1467726e+03 2.1441200e+03 -1.8088935e+03 - 2.1189128e+03 2.1627965e+03 -1.8026256e+03 - 2.0869329e+03 2.1843032e+03 -1.7940480e+03 - 2.0508108e+03 2.2086173e+03 -1.7828837e+03 - 2.0105378e+03 2.2357125e+03 -1.7688529e+03 - 1.9661148e+03 2.2655611e+03 -1.7516738e+03 - 1.9175474e+03 2.2981370e+03 -1.7310627e+03 - 1.8648403e+03 2.3334170e+03 -1.7067359e+03 - 1.8079918e+03 2.3713821e+03 -1.6784106e+03 - 1.7469866e+03 2.4120174e+03 -1.6458083e+03 - 1.6817871e+03 2.4553110e+03 -1.6086591e+03 - 1.6123236e+03 2.5012512e+03 -1.5667082e+03 - 1.5384812e+03 2.5498205e+03 -1.5197281e+03 - 1.4600847e+03 2.6009854e+03 -1.4675355e+03 - 1.3768803e+03 2.6546790e+03 -1.4100200e+03 - 1.2885149e+03 2.7107737e+03 -1.3471883e+03 - 1.1945156e+03 2.7690376e+03 -1.2792313e+03 - 1.0942739e+03 2.8290684e+03 -1.2066262e+03 - 9.8704465e+02 2.8901989e+03 -1.1302813e+03 - 8.7197948e+02 2.9513698e+03 -1.0517291e+03 - 7.4822236e+02 3.0109807e+03 -9.7335065e+02 - 6.1510081e+02 3.0667593e+03 -8.9857251e+02 - 4.7243172e+02 3.1157325e+03 -8.3190498e+02 - 3.2090358e+02 3.1544265e+03 -7.7863152e+02 - 1.6239448e+02 3.1793989e+03 -7.4399309e+02 - 0.0000000e+00 3.1880487e+03 -7.3195095e+02 - -1.6239448e+02 3.1793989e+03 -7.4399309e+02 - -3.2090358e+02 3.1544265e+03 -7.7863152e+02 - -4.7243172e+02 3.1157325e+03 -8.3190498e+02 - -6.1510081e+02 3.0667593e+03 -8.9857251e+02 - -7.4822236e+02 3.0109807e+03 -9.7335065e+02 - -8.7197948e+02 2.9513698e+03 -1.0517291e+03 - -9.8704465e+02 2.8901989e+03 -1.1302813e+03 - -1.0942739e+03 2.8290684e+03 -1.2066262e+03 - -1.1945156e+03 2.7690376e+03 -1.2792313e+03 - -1.2885149e+03 2.7107737e+03 -1.3471883e+03 - -1.3768803e+03 2.6546790e+03 -1.4100200e+03 - -1.4600847e+03 2.6009854e+03 -1.4675355e+03 - -1.5384812e+03 2.5498205e+03 -1.5197281e+03 - -1.6123236e+03 2.5012512e+03 -1.5667082e+03 - -1.6817871e+03 2.4553110e+03 -1.6086591e+03 - -1.7469866e+03 2.4120174e+03 -1.6458083e+03 - -1.8079918e+03 2.3713821e+03 -1.6784106e+03 - -1.8648403e+03 2.3334170e+03 -1.7067359e+03 - -1.9175474e+03 2.2981370e+03 -1.7310627e+03 - -1.9661148e+03 2.2655611e+03 -1.7516738e+03 - -2.0105378e+03 2.2357125e+03 -1.7688529e+03 - -2.0508108e+03 2.2086173e+03 -1.7828837e+03 - -2.0869329e+03 2.1843032e+03 -1.7940480e+03 - -2.1189128e+03 2.1627965e+03 -1.8026256e+03 - -2.1467726e+03 2.1441200e+03 -1.8088935e+03 - -2.1705522e+03 2.1282895e+03 -1.8131255e+03 - -2.1903133e+03 2.1153099e+03 -1.8155914e+03 - -2.2061427e+03 2.1051716e+03 -1.8165566e+03 - -2.2181560e+03 2.0978463e+03 -1.8162810e+03 - -2.2265001e+03 2.0932824e+03 -1.8150174e+03 - -2.2313562e+03 2.0914009e+03 -1.8130104e+03 - -2.2329406e+03 2.0920919e+03 -1.8104938e+03 - -2.2315060e+03 2.0952104e+03 -1.8076886e+03 - -2.2273407e+03 2.1005746e+03 -1.8048000e+03 - -2.2207672e+03 2.1079636e+03 -1.8020147e+03 - -2.2121384e+03 2.1171175e+03 -1.7994973e+03 - -2.2018342e+03 2.1277387e+03 -1.7973879e+03 - -2.1902544e+03 2.1394943e+03 -1.7957987e+03 - -2.1778129e+03 2.1520207e+03 -1.7948117e+03 - -2.1649292e+03 2.1649292e+03 -1.7944771e+03 - -2.1520207e+03 2.1778129e+03 -1.7948117e+03 - -2.1394943e+03 2.1902544e+03 -1.7957987e+03 - -2.1277387e+03 2.2018342e+03 -1.7973879e+03 - -2.1171175e+03 2.2121384e+03 -1.7994973e+03 - -2.1079636e+03 2.2207672e+03 -1.8020147e+03 - -2.1005746e+03 2.2273407e+03 -1.8048000e+03 - -2.0952104e+03 2.2315060e+03 -1.8076886e+03 - -2.0920919e+03 2.2329406e+03 -1.8104938e+03 - -2.0914009e+03 2.2313562e+03 -1.8130104e+03 - -2.0932824e+03 2.2265001e+03 -1.8150174e+03 - -2.0978463e+03 2.2181560e+03 -1.8162810e+03 - -2.1051716e+03 2.2061427e+03 -1.8165566e+03 - -2.1153099e+03 2.1903133e+03 -1.8155914e+03 - -2.1282895e+03 2.1705522e+03 -1.8131255e+03 - -2.1441200e+03 2.1467726e+03 -1.8088935e+03 - -2.1627965e+03 2.1189128e+03 -1.8026256e+03 - -2.1843032e+03 2.0869329e+03 -1.7940480e+03 - -2.2086173e+03 2.0508108e+03 -1.7828837e+03 - -2.2357125e+03 2.0105378e+03 -1.7688529e+03 - -2.2655611e+03 1.9661148e+03 -1.7516738e+03 - -2.2981370e+03 1.9175474e+03 -1.7310627e+03 - -2.3334170e+03 1.8648403e+03 -1.7067359e+03 - -2.3713821e+03 1.8079918e+03 -1.6784106e+03 - -2.4120174e+03 1.7469866e+03 -1.6458083e+03 - -2.4553110e+03 1.6817871e+03 -1.6086591e+03 - -2.5012512e+03 1.6123236e+03 -1.5667082e+03 - -2.5498205e+03 1.5384812e+03 -1.5197281e+03 - -2.6009854e+03 1.4600847e+03 -1.4675355e+03 - -2.6546790e+03 1.3768803e+03 -1.4100200e+03 - -2.7107737e+03 1.2885149e+03 -1.3471883e+03 - -2.7690376e+03 1.1945156e+03 -1.2792313e+03 - -2.8290684e+03 1.0942739e+03 -1.2066262e+03 - -2.8901989e+03 9.8704465e+02 -1.1302813e+03 - -2.9513698e+03 8.7197948e+02 -1.0517291e+03 - -3.0109807e+03 7.4822236e+02 -9.7335065e+02 - -3.0667593e+03 6.1510081e+02 -8.9857251e+02 - -3.1157325e+03 4.7243172e+02 -8.3190498e+02 - -3.1544265e+03 3.2090358e+02 -7.7863152e+02 - -3.1793989e+03 1.6239448e+02 -7.4399309e+02 - -3.1880487e+03 0.0000000e+00 -7.3195095e+02 - -3.1793989e+03 -1.6239448e+02 -7.4399309e+02 - -3.1544265e+03 -3.2090358e+02 -7.7863152e+02 - -3.1157325e+03 -4.7243172e+02 -8.3190498e+02 - -3.0667593e+03 -6.1510081e+02 -8.9857251e+02 - -3.0109807e+03 -7.4822236e+02 -9.7335065e+02 - -2.9513698e+03 -8.7197948e+02 -1.0517291e+03 - -2.8901989e+03 -9.8704465e+02 -1.1302813e+03 - -2.8290684e+03 -1.0942739e+03 -1.2066262e+03 - -2.7690376e+03 -1.1945156e+03 -1.2792313e+03 - -2.7107737e+03 -1.2885149e+03 -1.3471883e+03 - -2.6546790e+03 -1.3768803e+03 -1.4100200e+03 - -2.6009854e+03 -1.4600847e+03 -1.4675355e+03 - -2.5498205e+03 -1.5384812e+03 -1.5197281e+03 - -2.5012512e+03 -1.6123236e+03 -1.5667082e+03 - -2.4553110e+03 -1.6817871e+03 -1.6086591e+03 - -2.4120174e+03 -1.7469866e+03 -1.6458083e+03 - -2.3713821e+03 -1.8079918e+03 -1.6784106e+03 - -2.3334170e+03 -1.8648403e+03 -1.7067359e+03 - -2.2981370e+03 -1.9175474e+03 -1.7310627e+03 - -2.2655611e+03 -1.9661148e+03 -1.7516738e+03 - -2.2357125e+03 -2.0105378e+03 -1.7688529e+03 - -2.2086173e+03 -2.0508108e+03 -1.7828837e+03 - -2.1843032e+03 -2.0869329e+03 -1.7940480e+03 - -2.1627965e+03 -2.1189128e+03 -1.8026256e+03 - -2.1441200e+03 -2.1467726e+03 -1.8088935e+03 - -2.1282895e+03 -2.1705522e+03 -1.8131255e+03 - -2.1153099e+03 -2.1903133e+03 -1.8155914e+03 - -2.1051716e+03 -2.2061427e+03 -1.8165566e+03 - -2.0978463e+03 -2.2181560e+03 -1.8162810e+03 - -2.0932824e+03 -2.2265001e+03 -1.8150174e+03 - -2.0914009e+03 -2.2313562e+03 -1.8130104e+03 - -2.0920919e+03 -2.2329406e+03 -1.8104938e+03 - -2.0952104e+03 -2.2315060e+03 -1.8076886e+03 - -2.1005746e+03 -2.2273407e+03 -1.8048000e+03 - -2.1079636e+03 -2.2207672e+03 -1.8020147e+03 - -2.1171175e+03 -2.2121384e+03 -1.7994973e+03 - -2.1277387e+03 -2.2018342e+03 -1.7973879e+03 - -2.1394943e+03 -2.1902544e+03 -1.7957987e+03 - -2.1520207e+03 -2.1778129e+03 -1.7948117e+03 - -2.1649292e+03 -2.1649292e+03 -1.7944771e+03 - -2.1778129e+03 -2.1520207e+03 -1.7948117e+03 - -2.1902544e+03 -2.1394943e+03 -1.7957987e+03 - -2.2018342e+03 -2.1277387e+03 -1.7973879e+03 - -2.2121384e+03 -2.1171175e+03 -1.7994973e+03 - -2.2207672e+03 -2.1079636e+03 -1.8020147e+03 - -2.2273407e+03 -2.1005746e+03 -1.8048000e+03 - -2.2315060e+03 -2.0952104e+03 -1.8076886e+03 - -2.2329406e+03 -2.0920919e+03 -1.8104938e+03 - -2.2313562e+03 -2.0914009e+03 -1.8130104e+03 - -2.2265001e+03 -2.0932824e+03 -1.8150174e+03 - -2.2181560e+03 -2.0978463e+03 -1.8162810e+03 - -2.2061427e+03 -2.1051716e+03 -1.8165566e+03 - -2.1903133e+03 -2.1153099e+03 -1.8155914e+03 - -2.1705522e+03 -2.1282895e+03 -1.8131255e+03 - -2.1467726e+03 -2.1441200e+03 -1.8088935e+03 - -2.1189128e+03 -2.1627965e+03 -1.8026256e+03 - -2.0869329e+03 -2.1843032e+03 -1.7940480e+03 - -2.0508108e+03 -2.2086173e+03 -1.7828837e+03 - -2.0105378e+03 -2.2357125e+03 -1.7688529e+03 - -1.9661148e+03 -2.2655611e+03 -1.7516738e+03 - -1.9175474e+03 -2.2981370e+03 -1.7310627e+03 - -1.8648403e+03 -2.3334170e+03 -1.7067359e+03 - -1.8079918e+03 -2.3713821e+03 -1.6784106e+03 - -1.7469866e+03 -2.4120174e+03 -1.6458083e+03 - -1.6817871e+03 -2.4553110e+03 -1.6086591e+03 - -1.6123236e+03 -2.5012512e+03 -1.5667082e+03 - -1.5384812e+03 -2.5498205e+03 -1.5197281e+03 - -1.4600847e+03 -2.6009854e+03 -1.4675355e+03 - -1.3768803e+03 -2.6546790e+03 -1.4100200e+03 - -1.2885149e+03 -2.7107737e+03 -1.3471883e+03 - -1.1945156e+03 -2.7690376e+03 -1.2792313e+03 - -1.0942739e+03 -2.8290684e+03 -1.2066262e+03 - -9.8704465e+02 -2.8901989e+03 -1.1302813e+03 - -8.7197948e+02 -2.9513698e+03 -1.0517291e+03 - -7.4822236e+02 -3.0109807e+03 -9.7335065e+02 - -6.1510081e+02 -3.0667593e+03 -8.9857251e+02 - -4.7243172e+02 -3.1157325e+03 -8.3190498e+02 - -3.2090358e+02 -3.1544265e+03 -7.7863152e+02 - -1.6239448e+02 -3.1793989e+03 -7.4399309e+02 - 0.0000000e+00 -3.1880487e+03 -7.3195095e+02 - 1.6239448e+02 -3.1793989e+03 -7.4399309e+02 - 3.2090358e+02 -3.1544265e+03 -7.7863152e+02 - 4.7243172e+02 -3.1157325e+03 -8.3190498e+02 - 6.1510081e+02 -3.0667593e+03 -8.9857251e+02 - 7.4822236e+02 -3.0109807e+03 -9.7335065e+02 - 8.7197948e+02 -2.9513698e+03 -1.0517291e+03 - 9.8704465e+02 -2.8901989e+03 -1.1302813e+03 - 1.0942739e+03 -2.8290684e+03 -1.2066262e+03 - 1.1945156e+03 -2.7690376e+03 -1.2792313e+03 - 1.2885149e+03 -2.7107737e+03 -1.3471883e+03 - 1.3768803e+03 -2.6546790e+03 -1.4100200e+03 - 1.4600847e+03 -2.6009854e+03 -1.4675355e+03 - 1.5384812e+03 -2.5498205e+03 -1.5197281e+03 - 1.6123236e+03 -2.5012512e+03 -1.5667082e+03 - 1.6817871e+03 -2.4553110e+03 -1.6086591e+03 - 1.7469866e+03 -2.4120174e+03 -1.6458083e+03 - 1.8079918e+03 -2.3713821e+03 -1.6784106e+03 - 1.8648403e+03 -2.3334170e+03 -1.7067359e+03 - 1.9175474e+03 -2.2981370e+03 -1.7310627e+03 - 1.9661148e+03 -2.2655611e+03 -1.7516738e+03 - 2.0105378e+03 -2.2357125e+03 -1.7688529e+03 - 2.0508108e+03 -2.2086173e+03 -1.7828837e+03 - 2.0869329e+03 -2.1843032e+03 -1.7940480e+03 - 2.1189128e+03 -2.1627965e+03 -1.8026256e+03 - 2.1467726e+03 -2.1441200e+03 -1.8088935e+03 - 2.1705522e+03 -2.1282895e+03 -1.8131255e+03 - 2.1903133e+03 -2.1153099e+03 -1.8155914e+03 - 2.2061427e+03 -2.1051716e+03 -1.8165566e+03 - 2.2181560e+03 -2.0978463e+03 -1.8162810e+03 - 2.2265001e+03 -2.0932824e+03 -1.8150174e+03 - 2.2313562e+03 -2.0914009e+03 -1.8130104e+03 - 2.2329406e+03 -2.0920919e+03 -1.8104938e+03 - 2.2315060e+03 -2.0952104e+03 -1.8076886e+03 - 2.2273407e+03 -2.1005746e+03 -1.8048000e+03 - 2.2207672e+03 -2.1079636e+03 -1.8020147e+03 - 2.2121384e+03 -2.1171175e+03 -1.7994973e+03 - 2.2018342e+03 -2.1277387e+03 -1.7973879e+03 - 2.1902544e+03 -2.1394943e+03 -1.7957987e+03 - 2.1778129e+03 -2.1520207e+03 -1.7948117e+03 - 2.1649292e+03 -2.1649292e+03 -1.7944771e+03 - 2.1520207e+03 -2.1778129e+03 -1.7948117e+03 - 2.1394943e+03 -2.1902544e+03 -1.7957987e+03 - 2.1277387e+03 -2.2018342e+03 -1.7973879e+03 - 2.1171175e+03 -2.2121384e+03 -1.7994973e+03 - 2.1079636e+03 -2.2207672e+03 -1.8020147e+03 - 2.1005746e+03 -2.2273407e+03 -1.8048000e+03 - 2.0952104e+03 -2.2315060e+03 -1.8076886e+03 - 2.0920919e+03 -2.2329406e+03 -1.8104938e+03 - 2.0914009e+03 -2.2313562e+03 -1.8130104e+03 - 2.0932824e+03 -2.2265001e+03 -1.8150174e+03 - 2.0978463e+03 -2.2181560e+03 -1.8162810e+03 - 2.1051716e+03 -2.2061427e+03 -1.8165566e+03 - 2.1153099e+03 -2.1903133e+03 -1.8155914e+03 - 2.1282895e+03 -2.1705522e+03 -1.8131255e+03 - 2.1441200e+03 -2.1467726e+03 -1.8088935e+03 - 2.1627965e+03 -2.1189128e+03 -1.8026256e+03 - 2.1843032e+03 -2.0869329e+03 -1.7940480e+03 - 2.2086173e+03 -2.0508108e+03 -1.7828837e+03 - 2.2357125e+03 -2.0105378e+03 -1.7688529e+03 - 2.2655611e+03 -1.9661148e+03 -1.7516738e+03 - 2.2981370e+03 -1.9175474e+03 -1.7310627e+03 - 2.3334170e+03 -1.8648403e+03 -1.7067359e+03 - 2.3713821e+03 -1.8079918e+03 -1.6784106e+03 - 2.4120174e+03 -1.7469866e+03 -1.6458083e+03 - 2.4553110e+03 -1.6817871e+03 -1.6086591e+03 - 2.5012512e+03 -1.6123236e+03 -1.5667082e+03 - 2.5498205e+03 -1.5384812e+03 -1.5197281e+03 - 2.6009854e+03 -1.4600847e+03 -1.4675355e+03 - 2.6546790e+03 -1.3768803e+03 -1.4100200e+03 - 2.7107737e+03 -1.2885149e+03 -1.3471883e+03 - 2.7690376e+03 -1.1945156e+03 -1.2792313e+03 - 2.8290684e+03 -1.0942739e+03 -1.2066262e+03 - 2.8901989e+03 -9.8704465e+02 -1.1302813e+03 - 2.9513698e+03 -8.7197948e+02 -1.0517291e+03 - 3.0109807e+03 -7.4822236e+02 -9.7335065e+02 - 3.0667593e+03 -6.1510081e+02 -8.9857251e+02 - 3.1157325e+03 -4.7243172e+02 -8.3190498e+02 - 3.1544265e+03 -3.2090358e+02 -7.7863152e+02 - 3.1793989e+03 -1.6239448e+02 -7.4399309e+02 - 3.1880487e+03 2.4067136e-09 -7.3195095e+02 - 3.1359312e+03 -2.4067136e-09 -8.1888896e+02 - 3.1218374e+03 2.0257376e+02 -8.3865780e+02 - 3.0829662e+03 3.9331912e+02 -8.9293757e+02 - 3.0272843e+03 5.6520810e+02 -9.6998101e+02 - 2.9630695e+03 7.1689353e+02 -1.0575750e+03 - 2.8963524e+03 8.5055073e+02 -1.1468183e+03 - 2.8306212e+03 9.6949945e+02 -1.2325697e+03 - 2.7675395e+03 1.0768654e+03 -1.3123989e+03 - 2.7077206e+03 1.1751265e+03 -1.3854515e+03 - 2.6512563e+03 1.2660936e+03 -1.4516701e+03 - 2.5980165e+03 1.3510346e+03 -1.5113519e+03 - 2.5478007e+03 1.4308143e+03 -1.5649237e+03 - 2.5004090e+03 1.5060099e+03 -1.6128361e+03 - 2.4556701e+03 1.5769980e+03 -1.6555196e+03 - 2.4134502e+03 1.6440155e+03 -1.6933704e+03 - 2.3736527e+03 1.7072035e+03 -1.7267486e+03 - 2.3362140e+03 1.7666368e+03 -1.7559827e+03 - 2.3010990e+03 1.8223462e+03 -1.7813751e+03 - 2.2682956e+03 1.8743333e+03 -1.8032072e+03 - 2.2378101e+03 1.9225818e+03 -1.8217450e+03 - 2.2096629e+03 1.9670668e+03 -1.8372423e+03 - 2.1838849e+03 2.0077605e+03 -1.8499442e+03 - 2.1605135e+03 2.0446383e+03 -1.8600897e+03 - 2.1395890e+03 2.0776833e+03 -1.8679132e+03 - 2.1211518e+03 2.1068902e+03 -1.8736458e+03 - 2.1052379e+03 2.1322694e+03 -1.8775162e+03 - 2.0918762e+03 2.1538501e+03 -1.8797511e+03 - 2.0810841e+03 2.1716839e+03 -1.8805750e+03 - 2.0728638e+03 2.1858478e+03 -1.8802101e+03 - 2.0671983e+03 2.1964469e+03 -1.8788751e+03 - 2.0640474e+03 2.2036170e+03 -1.8767847e+03 - 2.0633442e+03 2.2075261e+03 -1.8741473e+03 - 2.0649911e+03 2.2083761e+03 -1.8711635e+03 - 2.0688574e+03 2.2064027e+03 -1.8680233e+03 - 2.0747770e+03 2.2018750e+03 -1.8649044e+03 - 2.0825468e+03 2.1950932e+03 -1.8619683e+03 - 2.0919276e+03 2.1863862e+03 -1.8593584e+03 - 2.1026444e+03 2.1761066e+03 -1.8571963e+03 - 2.1143899e+03 2.1646257e+03 -1.8555800e+03 - 2.1268278e+03 2.1523269e+03 -1.8545810e+03 - 2.1395989e+03 2.1395989e+03 -1.8542432e+03 - 2.1523269e+03 2.1268278e+03 -1.8545810e+03 - 2.1646257e+03 2.1143899e+03 -1.8555800e+03 - 2.1761066e+03 2.1026444e+03 -1.8571963e+03 - 2.1863862e+03 2.0919276e+03 -1.8593584e+03 - 2.1950932e+03 2.0825468e+03 -1.8619683e+03 - 2.2018750e+03 2.0747770e+03 -1.8649044e+03 - 2.2064027e+03 2.0688574e+03 -1.8680233e+03 - 2.2083761e+03 2.0649911e+03 -1.8711635e+03 - 2.2075261e+03 2.0633442e+03 -1.8741473e+03 - 2.2036170e+03 2.0640474e+03 -1.8767847e+03 - 2.1964469e+03 2.0671983e+03 -1.8788751e+03 - 2.1858478e+03 2.0728638e+03 -1.8802101e+03 - 2.1716839e+03 2.0810841e+03 -1.8805750e+03 - 2.1538501e+03 2.0918762e+03 -1.8797511e+03 - 2.1322694e+03 2.1052379e+03 -1.8775162e+03 - 2.1068902e+03 2.1211518e+03 -1.8736458e+03 - 2.0776833e+03 2.1395890e+03 -1.8679132e+03 - 2.0446383e+03 2.1605135e+03 -1.8600897e+03 - 2.0077605e+03 2.1838849e+03 -1.8499442e+03 - 1.9670668e+03 2.2096629e+03 -1.8372423e+03 - 1.9225818e+03 2.2378101e+03 -1.8217450e+03 - 1.8743333e+03 2.2682956e+03 -1.8032072e+03 - 1.8223462e+03 2.3010990e+03 -1.7813751e+03 - 1.7666368e+03 2.3362140e+03 -1.7559827e+03 - 1.7072035e+03 2.3736527e+03 -1.7267486e+03 - 1.6440155e+03 2.4134502e+03 -1.6933704e+03 - 1.5769980e+03 2.4556701e+03 -1.6555196e+03 - 1.5060099e+03 2.5004090e+03 -1.6128361e+03 - 1.4308143e+03 2.5478007e+03 -1.5649237e+03 - 1.3510346e+03 2.5980165e+03 -1.5113519e+03 - 1.2660936e+03 2.6512563e+03 -1.4516701e+03 - 1.1751265e+03 2.7077206e+03 -1.3854515e+03 - 1.0768654e+03 2.7675395e+03 -1.3123989e+03 - 9.6949945e+02 2.8306212e+03 -1.2325697e+03 - 8.5055073e+02 2.8963524e+03 -1.1468183e+03 - 7.1689353e+02 2.9630695e+03 -1.0575750e+03 - 5.6520810e+02 3.0272843e+03 -9.6998101e+02 - 3.9331912e+02 3.0829662e+03 -8.9293757e+02 - 2.0257376e+02 3.1218374e+03 -8.3865780e+02 - -2.4067136e-09 3.1359312e+03 -8.1888896e+02 - -2.0257376e+02 3.1218374e+03 -8.3865780e+02 - -3.9331912e+02 3.0829662e+03 -8.9293757e+02 - -5.6520810e+02 3.0272843e+03 -9.6998101e+02 - -7.1689353e+02 2.9630695e+03 -1.0575750e+03 - -8.5055073e+02 2.8963524e+03 -1.1468183e+03 - -9.6949945e+02 2.8306212e+03 -1.2325697e+03 - -1.0768654e+03 2.7675395e+03 -1.3123989e+03 - -1.1751265e+03 2.7077206e+03 -1.3854515e+03 - -1.2660936e+03 2.6512563e+03 -1.4516701e+03 - -1.3510346e+03 2.5980165e+03 -1.5113519e+03 - -1.4308143e+03 2.5478007e+03 -1.5649237e+03 - -1.5060099e+03 2.5004090e+03 -1.6128361e+03 - -1.5769980e+03 2.4556701e+03 -1.6555196e+03 - -1.6440155e+03 2.4134502e+03 -1.6933704e+03 - -1.7072035e+03 2.3736527e+03 -1.7267486e+03 - -1.7666368e+03 2.3362140e+03 -1.7559827e+03 - -1.8223462e+03 2.3010990e+03 -1.7813751e+03 - -1.8743333e+03 2.2682956e+03 -1.8032072e+03 - -1.9225818e+03 2.2378101e+03 -1.8217450e+03 - -1.9670668e+03 2.2096629e+03 -1.8372423e+03 - -2.0077605e+03 2.1838849e+03 -1.8499442e+03 - -2.0446383e+03 2.1605135e+03 -1.8600897e+03 - -2.0776833e+03 2.1395890e+03 -1.8679132e+03 - -2.1068902e+03 2.1211518e+03 -1.8736458e+03 - -2.1322694e+03 2.1052379e+03 -1.8775162e+03 - -2.1538501e+03 2.0918762e+03 -1.8797511e+03 - -2.1716839e+03 2.0810841e+03 -1.8805750e+03 - -2.1858478e+03 2.0728638e+03 -1.8802101e+03 - -2.1964469e+03 2.0671983e+03 -1.8788751e+03 - -2.2036170e+03 2.0640474e+03 -1.8767847e+03 - -2.2075261e+03 2.0633442e+03 -1.8741473e+03 - -2.2083761e+03 2.0649911e+03 -1.8711635e+03 - -2.2064027e+03 2.0688574e+03 -1.8680233e+03 - -2.2018750e+03 2.0747770e+03 -1.8649044e+03 - -2.1950932e+03 2.0825468e+03 -1.8619683e+03 - -2.1863862e+03 2.0919276e+03 -1.8593584e+03 - -2.1761066e+03 2.1026444e+03 -1.8571963e+03 - -2.1646257e+03 2.1143899e+03 -1.8555800e+03 - -2.1523269e+03 2.1268278e+03 -1.8545810e+03 - -2.1395989e+03 2.1395989e+03 -1.8542432e+03 - -2.1268278e+03 2.1523269e+03 -1.8545810e+03 - -2.1143899e+03 2.1646257e+03 -1.8555800e+03 - -2.1026444e+03 2.1761066e+03 -1.8571963e+03 - -2.0919276e+03 2.1863862e+03 -1.8593584e+03 - -2.0825468e+03 2.1950932e+03 -1.8619683e+03 - -2.0747770e+03 2.2018750e+03 -1.8649044e+03 - -2.0688574e+03 2.2064027e+03 -1.8680233e+03 - -2.0649911e+03 2.2083761e+03 -1.8711635e+03 - -2.0633442e+03 2.2075261e+03 -1.8741473e+03 - -2.0640474e+03 2.2036170e+03 -1.8767847e+03 - -2.0671983e+03 2.1964469e+03 -1.8788751e+03 - -2.0728638e+03 2.1858478e+03 -1.8802101e+03 - -2.0810841e+03 2.1716839e+03 -1.8805750e+03 - -2.0918762e+03 2.1538501e+03 -1.8797511e+03 - -2.1052379e+03 2.1322694e+03 -1.8775162e+03 - -2.1211518e+03 2.1068902e+03 -1.8736458e+03 - -2.1395890e+03 2.0776833e+03 -1.8679132e+03 - -2.1605135e+03 2.0446383e+03 -1.8600897e+03 - -2.1838849e+03 2.0077605e+03 -1.8499442e+03 - -2.2096629e+03 1.9670668e+03 -1.8372423e+03 - -2.2378101e+03 1.9225818e+03 -1.8217450e+03 - -2.2682956e+03 1.8743333e+03 -1.8032072e+03 - -2.3010990e+03 1.8223462e+03 -1.7813751e+03 - -2.3362140e+03 1.7666368e+03 -1.7559827e+03 - -2.3736527e+03 1.7072035e+03 -1.7267486e+03 - -2.4134502e+03 1.6440155e+03 -1.6933704e+03 - -2.4556701e+03 1.5769980e+03 -1.6555196e+03 - -2.5004090e+03 1.5060099e+03 -1.6128361e+03 - -2.5478007e+03 1.4308143e+03 -1.5649237e+03 - -2.5980165e+03 1.3510346e+03 -1.5113519e+03 - -2.6512563e+03 1.2660936e+03 -1.4516701e+03 - -2.7077206e+03 1.1751265e+03 -1.3854515e+03 - -2.7675395e+03 1.0768654e+03 -1.3123989e+03 - -2.8306212e+03 9.6949945e+02 -1.2325697e+03 - -2.8963524e+03 8.5055073e+02 -1.1468183e+03 - -2.9630695e+03 7.1689353e+02 -1.0575750e+03 - -3.0272843e+03 5.6520810e+02 -9.6998101e+02 - -3.0829662e+03 3.9331912e+02 -8.9293757e+02 - -3.1218374e+03 2.0257376e+02 -8.3865780e+02 - -3.1359312e+03 0.0000000e+00 -8.1888896e+02 - -3.1218374e+03 -2.0257376e+02 -8.3865780e+02 - -3.0829662e+03 -3.9331912e+02 -8.9293757e+02 - -3.0272843e+03 -5.6520810e+02 -9.6998101e+02 - -2.9630695e+03 -7.1689353e+02 -1.0575750e+03 - -2.8963524e+03 -8.5055073e+02 -1.1468183e+03 - -2.8306212e+03 -9.6949945e+02 -1.2325697e+03 - -2.7675395e+03 -1.0768654e+03 -1.3123989e+03 - -2.7077206e+03 -1.1751265e+03 -1.3854515e+03 - -2.6512563e+03 -1.2660936e+03 -1.4516701e+03 - -2.5980165e+03 -1.3510346e+03 -1.5113519e+03 - -2.5478007e+03 -1.4308143e+03 -1.5649237e+03 - -2.5004090e+03 -1.5060099e+03 -1.6128361e+03 - -2.4556701e+03 -1.5769980e+03 -1.6555196e+03 - -2.4134502e+03 -1.6440155e+03 -1.6933704e+03 - -2.3736527e+03 -1.7072035e+03 -1.7267486e+03 - -2.3362140e+03 -1.7666368e+03 -1.7559827e+03 - -2.3010990e+03 -1.8223462e+03 -1.7813751e+03 - -2.2682956e+03 -1.8743333e+03 -1.8032072e+03 - -2.2378101e+03 -1.9225818e+03 -1.8217450e+03 - -2.2096629e+03 -1.9670668e+03 -1.8372423e+03 - -2.1838849e+03 -2.0077605e+03 -1.8499442e+03 - -2.1605135e+03 -2.0446383e+03 -1.8600897e+03 - -2.1395890e+03 -2.0776833e+03 -1.8679132e+03 - -2.1211518e+03 -2.1068902e+03 -1.8736458e+03 - -2.1052379e+03 -2.1322694e+03 -1.8775162e+03 - -2.0918762e+03 -2.1538501e+03 -1.8797511e+03 - -2.0810841e+03 -2.1716839e+03 -1.8805750e+03 - -2.0728638e+03 -2.1858478e+03 -1.8802101e+03 - -2.0671983e+03 -2.1964469e+03 -1.8788751e+03 - -2.0640474e+03 -2.2036170e+03 -1.8767847e+03 - -2.0633442e+03 -2.2075261e+03 -1.8741473e+03 - -2.0649911e+03 -2.2083761e+03 -1.8711635e+03 - -2.0688574e+03 -2.2064027e+03 -1.8680233e+03 - -2.0747770e+03 -2.2018750e+03 -1.8649044e+03 - -2.0825468e+03 -2.1950932e+03 -1.8619683e+03 - -2.0919276e+03 -2.1863862e+03 -1.8593584e+03 - -2.1026444e+03 -2.1761066e+03 -1.8571963e+03 - -2.1143899e+03 -2.1646257e+03 -1.8555800e+03 - -2.1268278e+03 -2.1523269e+03 -1.8545810e+03 - -2.1395989e+03 -2.1395989e+03 -1.8542432e+03 - -2.1523269e+03 -2.1268278e+03 -1.8545810e+03 - -2.1646257e+03 -2.1143899e+03 -1.8555800e+03 - -2.1761066e+03 -2.1026444e+03 -1.8571963e+03 - -2.1863862e+03 -2.0919276e+03 -1.8593584e+03 - -2.1950932e+03 -2.0825468e+03 -1.8619683e+03 - -2.2018750e+03 -2.0747770e+03 -1.8649044e+03 - -2.2064027e+03 -2.0688574e+03 -1.8680233e+03 - -2.2083761e+03 -2.0649911e+03 -1.8711635e+03 - -2.2075261e+03 -2.0633442e+03 -1.8741473e+03 - -2.2036170e+03 -2.0640474e+03 -1.8767847e+03 - -2.1964469e+03 -2.0671983e+03 -1.8788751e+03 - -2.1858478e+03 -2.0728638e+03 -1.8802101e+03 - -2.1716839e+03 -2.0810841e+03 -1.8805750e+03 - -2.1538501e+03 -2.0918762e+03 -1.8797511e+03 - -2.1322694e+03 -2.1052379e+03 -1.8775162e+03 - -2.1068902e+03 -2.1211518e+03 -1.8736458e+03 - -2.0776833e+03 -2.1395890e+03 -1.8679132e+03 - -2.0446383e+03 -2.1605135e+03 -1.8600897e+03 - -2.0077605e+03 -2.1838849e+03 -1.8499442e+03 - -1.9670668e+03 -2.2096629e+03 -1.8372423e+03 - -1.9225818e+03 -2.2378101e+03 -1.8217450e+03 - -1.8743333e+03 -2.2682956e+03 -1.8032072e+03 - -1.8223462e+03 -2.3010990e+03 -1.7813751e+03 - -1.7666368e+03 -2.3362140e+03 -1.7559827e+03 - -1.7072035e+03 -2.3736527e+03 -1.7267486e+03 - -1.6440155e+03 -2.4134502e+03 -1.6933704e+03 - -1.5769980e+03 -2.4556701e+03 -1.6555196e+03 - -1.5060099e+03 -2.5004090e+03 -1.6128361e+03 - -1.4308143e+03 -2.5478007e+03 -1.5649237e+03 - -1.3510346e+03 -2.5980165e+03 -1.5113519e+03 - -1.2660936e+03 -2.6512563e+03 -1.4516701e+03 - -1.1751265e+03 -2.7077206e+03 -1.3854515e+03 - -1.0768654e+03 -2.7675395e+03 -1.3123989e+03 - -9.6949945e+02 -2.8306212e+03 -1.2325697e+03 - -8.5055073e+02 -2.8963524e+03 -1.1468183e+03 - -7.1689353e+02 -2.9630695e+03 -1.0575750e+03 - -5.6520810e+02 -3.0272843e+03 -9.6998101e+02 - -3.9331912e+02 -3.0829662e+03 -8.9293757e+02 - -2.0257376e+02 -3.1218374e+03 -8.3865780e+02 - 2.4067136e-09 -3.1359312e+03 -8.1888896e+02 - 2.0257376e+02 -3.1218374e+03 -8.3865780e+02 - 3.9331912e+02 -3.0829662e+03 -8.9293757e+02 - 5.6520810e+02 -3.0272843e+03 -9.6998101e+02 - 7.1689353e+02 -2.9630695e+03 -1.0575750e+03 - 8.5055073e+02 -2.8963524e+03 -1.1468183e+03 - 9.6949945e+02 -2.8306212e+03 -1.2325697e+03 - 1.0768654e+03 -2.7675395e+03 -1.3123989e+03 - 1.1751265e+03 -2.7077206e+03 -1.3854515e+03 - 1.2660936e+03 -2.6512563e+03 -1.4516701e+03 - 1.3510346e+03 -2.5980165e+03 -1.5113519e+03 - 1.4308143e+03 -2.5478007e+03 -1.5649237e+03 - 1.5060099e+03 -2.5004090e+03 -1.6128361e+03 - 1.5769980e+03 -2.4556701e+03 -1.6555196e+03 - 1.6440155e+03 -2.4134502e+03 -1.6933704e+03 - 1.7072035e+03 -2.3736527e+03 -1.7267486e+03 - 1.7666368e+03 -2.3362140e+03 -1.7559827e+03 - 1.8223462e+03 -2.3010990e+03 -1.7813751e+03 - 1.8743333e+03 -2.2682956e+03 -1.8032072e+03 - 1.9225818e+03 -2.2378101e+03 -1.8217450e+03 - 1.9670668e+03 -2.2096629e+03 -1.8372423e+03 - 2.0077605e+03 -2.1838849e+03 -1.8499442e+03 - 2.0446383e+03 -2.1605135e+03 -1.8600897e+03 - 2.0776833e+03 -2.1395890e+03 -1.8679132e+03 - 2.1068902e+03 -2.1211518e+03 -1.8736458e+03 - 2.1322694e+03 -2.1052379e+03 -1.8775162e+03 - 2.1538501e+03 -2.0918762e+03 -1.8797511e+03 - 2.1716839e+03 -2.0810841e+03 -1.8805750e+03 - 2.1858478e+03 -2.0728638e+03 -1.8802101e+03 - 2.1964469e+03 -2.0671983e+03 -1.8788751e+03 - 2.2036170e+03 -2.0640474e+03 -1.8767847e+03 - 2.2075261e+03 -2.0633442e+03 -1.8741473e+03 - 2.2083761e+03 -2.0649911e+03 -1.8711635e+03 - 2.2064027e+03 -2.0688574e+03 -1.8680233e+03 - 2.2018750e+03 -2.0747770e+03 -1.8649044e+03 - 2.1950932e+03 -2.0825468e+03 -1.8619683e+03 - 2.1863862e+03 -2.0919276e+03 -1.8593584e+03 - 2.1761066e+03 -2.1026444e+03 -1.8571963e+03 - 2.1646257e+03 -2.1143899e+03 -1.8555800e+03 - 2.1523269e+03 -2.1268278e+03 -1.8545810e+03 - 2.1395989e+03 -2.1395989e+03 -1.8542432e+03 - 2.1268278e+03 -2.1523269e+03 -1.8545810e+03 - 2.1143899e+03 -2.1646257e+03 -1.8555800e+03 - 2.1026444e+03 -2.1761066e+03 -1.8571963e+03 - 2.0919276e+03 -2.1863862e+03 -1.8593584e+03 - 2.0825468e+03 -2.1950932e+03 -1.8619683e+03 - 2.0747770e+03 -2.2018750e+03 -1.8649044e+03 - 2.0688574e+03 -2.2064027e+03 -1.8680233e+03 - 2.0649911e+03 -2.2083761e+03 -1.8711635e+03 - 2.0633442e+03 -2.2075261e+03 -1.8741473e+03 - 2.0640474e+03 -2.2036170e+03 -1.8767847e+03 - 2.0671983e+03 -2.1964469e+03 -1.8788751e+03 - 2.0728638e+03 -2.1858478e+03 -1.8802101e+03 - 2.0810841e+03 -2.1716839e+03 -1.8805750e+03 - 2.0918762e+03 -2.1538501e+03 -1.8797511e+03 - 2.1052379e+03 -2.1322694e+03 -1.8775162e+03 - 2.1211518e+03 -2.1068902e+03 -1.8736458e+03 - 2.1395890e+03 -2.0776833e+03 -1.8679132e+03 - 2.1605135e+03 -2.0446383e+03 -1.8600897e+03 - 2.1838849e+03 -2.0077605e+03 -1.8499442e+03 - 2.2096629e+03 -1.9670668e+03 -1.8372423e+03 - 2.2378101e+03 -1.9225818e+03 -1.8217450e+03 - 2.2682956e+03 -1.8743333e+03 -1.8032072e+03 - 2.3010990e+03 -1.8223462e+03 -1.7813751e+03 - 2.3362140e+03 -1.7666368e+03 -1.7559827e+03 - 2.3736527e+03 -1.7072035e+03 -1.7267486e+03 - 2.4134502e+03 -1.6440155e+03 -1.6933704e+03 - 2.4556701e+03 -1.5769980e+03 -1.6555196e+03 - 2.5004090e+03 -1.5060099e+03 -1.6128361e+03 - 2.5478007e+03 -1.4308143e+03 -1.5649237e+03 - 2.5980165e+03 -1.3510346e+03 -1.5113519e+03 - 2.6512563e+03 -1.2660936e+03 -1.4516701e+03 - 2.7077206e+03 -1.1751265e+03 -1.3854515e+03 - 2.7675395e+03 -1.0768654e+03 -1.3123989e+03 - 2.8306212e+03 -9.6949945e+02 -1.2325697e+03 - 2.8963524e+03 -8.5055073e+02 -1.1468183e+03 - 2.9630695e+03 -7.1689353e+02 -1.0575750e+03 - 3.0272843e+03 -5.6520810e+02 -9.6998101e+02 - 3.0829662e+03 -3.9331912e+02 -8.9293757e+02 - 3.1218374e+03 -2.0257376e+02 -8.3865780e+02 - 3.1359312e+03 0.0000000e+00 -8.1888896e+02 - 3.0797102e+03 0.0000000e+00 -9.0862974e+02 - 3.0526412e+03 2.7490808e+02 -9.4675878e+02 - 2.9861501e+03 5.0951221e+02 -1.0399171e+03 - 2.9058878e+03 6.9457933e+02 -1.1510769e+03 - 2.8274297e+03 8.4104621e+02 -1.2577193e+03 - 2.7559173e+03 9.6190021e+02 -1.3523892e+03 - 2.6917224e+03 1.0662840e+03 -1.4345459e+03 - 2.6338101e+03 1.1597614e+03 -1.5057151e+03 - 2.5809940e+03 1.2455875e+03 -1.5676735e+03 - 2.5322865e+03 1.3256605e+03 -1.6219386e+03 - 2.4869454e+03 1.4010927e+03 -1.6696980e+03 - 2.4444385e+03 1.4725358e+03 -1.7118576e+03 - 2.4043954e+03 1.5403653e+03 -1.7491094e+03 - 2.3665660e+03 1.6047882e+03 -1.7819897e+03 - 2.3307887e+03 1.6659060e+03 -1.8109238e+03 - 2.2969667e+03 1.7237543e+03 -1.8362588e+03 - 2.2650514e+03 1.7783269e+03 -1.8582867e+03 - 2.2350289e+03 1.8295930e+03 -1.8772615e+03 - 2.2069117e+03 1.8775071e+03 -1.8934110e+03 - 2.1807305e+03 1.9220175e+03 -1.9069454e+03 - 2.1565297e+03 1.9630723e+03 -1.9180634e+03 - 2.1343617e+03 2.0006232e+03 -1.9269564e+03 - 2.1142838e+03 2.0346302e+03 -1.9338118e+03 - 2.0963543e+03 2.0650644e+03 -1.9388148e+03 - 2.0806288e+03 2.0919110e+03 -1.9421501e+03 - 2.0671573e+03 2.1151729e+03 -1.9440025e+03 - 2.0559807e+03 2.1348725e+03 -1.9445573e+03 - 2.0471270e+03 2.1510553e+03 -1.9440001e+03 - 2.0406083e+03 2.1637917e+03 -1.9425164e+03 - 2.0364167e+03 2.1731797e+03 -1.9402908e+03 - 2.0345212e+03 2.1793467e+03 -1.9375054e+03 - 2.0348645e+03 2.1824508e+03 -1.9343385e+03 - 2.0373593e+03 2.1826819e+03 -1.9309628e+03 - 2.0418868e+03 2.1802616e+03 -1.9275425e+03 - 2.0482944e+03 2.1754420e+03 -1.9242316e+03 - 2.0563947e+03 2.1685045e+03 -1.9211708e+03 - 2.0659663e+03 2.1597560e+03 -1.9184850e+03 - 2.0767546e+03 2.1495253e+03 -1.9162805e+03 - 2.0884748e+03 2.1381581e+03 -1.9146428e+03 - 2.1008156e+03 2.1260107e+03 -1.9136347e+03 - 2.1134438e+03 2.1134438e+03 -1.9132943e+03 - 2.1260107e+03 2.1008156e+03 -1.9136347e+03 - 2.1381581e+03 2.0884748e+03 -1.9146428e+03 - 2.1495253e+03 2.0767546e+03 -1.9162805e+03 - 2.1597560e+03 2.0659663e+03 -1.9184850e+03 - 2.1685045e+03 2.0563947e+03 -1.9211708e+03 - 2.1754420e+03 2.0482944e+03 -1.9242316e+03 - 2.1802616e+03 2.0418868e+03 -1.9275425e+03 - 2.1826819e+03 2.0373593e+03 -1.9309628e+03 - 2.1824508e+03 2.0348645e+03 -1.9343385e+03 - 2.1793467e+03 2.0345212e+03 -1.9375054e+03 - 2.1731797e+03 2.0364167e+03 -1.9402908e+03 - 2.1637917e+03 2.0406083e+03 -1.9425164e+03 - 2.1510553e+03 2.0471270e+03 -1.9440001e+03 - 2.1348725e+03 2.0559807e+03 -1.9445573e+03 - 2.1151729e+03 2.0671573e+03 -1.9440025e+03 - 2.0919110e+03 2.0806288e+03 -1.9421501e+03 - 2.0650644e+03 2.0963543e+03 -1.9388148e+03 - 2.0346302e+03 2.1142838e+03 -1.9338118e+03 - 2.0006232e+03 2.1343617e+03 -1.9269564e+03 - 1.9630723e+03 2.1565297e+03 -1.9180634e+03 - 1.9220175e+03 2.1807305e+03 -1.9069454e+03 - 1.8775071e+03 2.2069117e+03 -1.8934110e+03 - 1.8295930e+03 2.2350289e+03 -1.8772615e+03 - 1.7783269e+03 2.2650514e+03 -1.8582867e+03 - 1.7237543e+03 2.2969667e+03 -1.8362588e+03 - 1.6659060e+03 2.3307887e+03 -1.8109238e+03 - 1.6047882e+03 2.3665660e+03 -1.7819897e+03 - 1.5403653e+03 2.4043954e+03 -1.7491094e+03 - 1.4725358e+03 2.4444385e+03 -1.7118576e+03 - 1.4010927e+03 2.4869454e+03 -1.6696980e+03 - 1.3256605e+03 2.5322865e+03 -1.6219386e+03 - 1.2455875e+03 2.5809940e+03 -1.5676735e+03 - 1.1597614e+03 2.6338101e+03 -1.5057151e+03 - 1.0662840e+03 2.6917224e+03 -1.4345459e+03 - 9.6190021e+02 2.7559173e+03 -1.3523892e+03 - 8.4104621e+02 2.8274297e+03 -1.2577193e+03 - 6.9457933e+02 2.9058878e+03 -1.1510769e+03 - 5.0951221e+02 2.9861501e+03 -1.0399171e+03 - 2.7490808e+02 3.0526412e+03 -9.4675878e+02 - -2.4067136e-09 3.0797102e+03 -9.0862974e+02 - -2.7490808e+02 3.0526412e+03 -9.4675878e+02 - -5.0951221e+02 2.9861501e+03 -1.0399171e+03 - -6.9457933e+02 2.9058878e+03 -1.1510769e+03 - -8.4104621e+02 2.8274297e+03 -1.2577193e+03 - -9.6190021e+02 2.7559173e+03 -1.3523892e+03 - -1.0662840e+03 2.6917224e+03 -1.4345459e+03 - -1.1597614e+03 2.6338101e+03 -1.5057151e+03 - -1.2455875e+03 2.5809940e+03 -1.5676735e+03 - -1.3256605e+03 2.5322865e+03 -1.6219386e+03 - -1.4010927e+03 2.4869454e+03 -1.6696980e+03 - -1.4725358e+03 2.4444385e+03 -1.7118576e+03 - -1.5403653e+03 2.4043954e+03 -1.7491094e+03 - -1.6047882e+03 2.3665660e+03 -1.7819897e+03 - -1.6659060e+03 2.3307887e+03 -1.8109238e+03 - -1.7237543e+03 2.2969667e+03 -1.8362588e+03 - -1.7783269e+03 2.2650514e+03 -1.8582867e+03 - -1.8295930e+03 2.2350289e+03 -1.8772615e+03 - -1.8775071e+03 2.2069117e+03 -1.8934110e+03 - -1.9220175e+03 2.1807305e+03 -1.9069454e+03 - -1.9630723e+03 2.1565297e+03 -1.9180634e+03 - -2.0006232e+03 2.1343617e+03 -1.9269564e+03 - -2.0346302e+03 2.1142838e+03 -1.9338118e+03 - -2.0650644e+03 2.0963543e+03 -1.9388148e+03 - -2.0919110e+03 2.0806288e+03 -1.9421501e+03 - -2.1151729e+03 2.0671573e+03 -1.9440025e+03 - -2.1348725e+03 2.0559807e+03 -1.9445573e+03 - -2.1510553e+03 2.0471270e+03 -1.9440001e+03 - -2.1637917e+03 2.0406083e+03 -1.9425164e+03 - -2.1731797e+03 2.0364167e+03 -1.9402908e+03 - -2.1793467e+03 2.0345212e+03 -1.9375054e+03 - -2.1824508e+03 2.0348645e+03 -1.9343385e+03 - -2.1826819e+03 2.0373593e+03 -1.9309628e+03 - -2.1802616e+03 2.0418868e+03 -1.9275425e+03 - -2.1754420e+03 2.0482944e+03 -1.9242316e+03 - -2.1685045e+03 2.0563947e+03 -1.9211708e+03 - -2.1597560e+03 2.0659663e+03 -1.9184850e+03 - -2.1495253e+03 2.0767546e+03 -1.9162805e+03 - -2.1381581e+03 2.0884748e+03 -1.9146428e+03 - -2.1260107e+03 2.1008156e+03 -1.9136347e+03 - -2.1134438e+03 2.1134438e+03 -1.9132943e+03 - -2.1008156e+03 2.1260107e+03 -1.9136347e+03 - -2.0884748e+03 2.1381581e+03 -1.9146428e+03 - -2.0767546e+03 2.1495253e+03 -1.9162805e+03 - -2.0659663e+03 2.1597560e+03 -1.9184850e+03 - -2.0563947e+03 2.1685045e+03 -1.9211708e+03 - -2.0482944e+03 2.1754420e+03 -1.9242316e+03 - -2.0418868e+03 2.1802616e+03 -1.9275425e+03 - -2.0373593e+03 2.1826819e+03 -1.9309628e+03 - -2.0348645e+03 2.1824508e+03 -1.9343385e+03 - -2.0345212e+03 2.1793467e+03 -1.9375054e+03 - -2.0364167e+03 2.1731797e+03 -1.9402908e+03 - -2.0406083e+03 2.1637917e+03 -1.9425164e+03 - -2.0471270e+03 2.1510553e+03 -1.9440001e+03 - -2.0559807e+03 2.1348725e+03 -1.9445573e+03 - -2.0671573e+03 2.1151729e+03 -1.9440025e+03 - -2.0806288e+03 2.0919110e+03 -1.9421501e+03 - -2.0963543e+03 2.0650644e+03 -1.9388148e+03 - -2.1142838e+03 2.0346302e+03 -1.9338118e+03 - -2.1343617e+03 2.0006232e+03 -1.9269564e+03 - -2.1565297e+03 1.9630723e+03 -1.9180634e+03 - -2.1807305e+03 1.9220175e+03 -1.9069454e+03 - -2.2069117e+03 1.8775071e+03 -1.8934110e+03 - -2.2350289e+03 1.8295930e+03 -1.8772615e+03 - -2.2650514e+03 1.7783269e+03 -1.8582867e+03 - -2.2969667e+03 1.7237543e+03 -1.8362588e+03 - -2.3307887e+03 1.6659060e+03 -1.8109238e+03 - -2.3665660e+03 1.6047882e+03 -1.7819897e+03 - -2.4043954e+03 1.5403653e+03 -1.7491094e+03 - -2.4444385e+03 1.4725358e+03 -1.7118576e+03 - -2.4869454e+03 1.4010927e+03 -1.6696980e+03 - -2.5322865e+03 1.3256605e+03 -1.6219386e+03 - -2.5809940e+03 1.2455875e+03 -1.5676735e+03 - -2.6338101e+03 1.1597614e+03 -1.5057151e+03 - -2.6917224e+03 1.0662840e+03 -1.4345459e+03 - -2.7559173e+03 9.6190021e+02 -1.3523892e+03 - -2.8274297e+03 8.4104621e+02 -1.2577193e+03 - -2.9058878e+03 6.9457933e+02 -1.1510769e+03 - -2.9861501e+03 5.0951221e+02 -1.0399171e+03 - -3.0526412e+03 2.7490808e+02 -9.4675878e+02 - -3.0797102e+03 -2.4067136e-09 -9.0862974e+02 - -3.0526412e+03 -2.7490808e+02 -9.4675878e+02 - -2.9861501e+03 -5.0951221e+02 -1.0399171e+03 - -2.9058878e+03 -6.9457933e+02 -1.1510769e+03 - -2.8274297e+03 -8.4104621e+02 -1.2577193e+03 - -2.7559173e+03 -9.6190021e+02 -1.3523892e+03 - -2.6917224e+03 -1.0662840e+03 -1.4345459e+03 - -2.6338101e+03 -1.1597614e+03 -1.5057151e+03 - -2.5809940e+03 -1.2455875e+03 -1.5676735e+03 - -2.5322865e+03 -1.3256605e+03 -1.6219386e+03 - -2.4869454e+03 -1.4010927e+03 -1.6696980e+03 - -2.4444385e+03 -1.4725358e+03 -1.7118576e+03 - -2.4043954e+03 -1.5403653e+03 -1.7491094e+03 - -2.3665660e+03 -1.6047882e+03 -1.7819897e+03 - -2.3307887e+03 -1.6659060e+03 -1.8109238e+03 - -2.2969667e+03 -1.7237543e+03 -1.8362588e+03 - -2.2650514e+03 -1.7783269e+03 -1.8582867e+03 - -2.2350289e+03 -1.8295930e+03 -1.8772615e+03 - -2.2069117e+03 -1.8775071e+03 -1.8934110e+03 - -2.1807305e+03 -1.9220175e+03 -1.9069454e+03 - -2.1565297e+03 -1.9630723e+03 -1.9180634e+03 - -2.1343617e+03 -2.0006232e+03 -1.9269564e+03 - -2.1142838e+03 -2.0346302e+03 -1.9338118e+03 - -2.0963543e+03 -2.0650644e+03 -1.9388148e+03 - -2.0806288e+03 -2.0919110e+03 -1.9421501e+03 - -2.0671573e+03 -2.1151729e+03 -1.9440025e+03 - -2.0559807e+03 -2.1348725e+03 -1.9445573e+03 - -2.0471270e+03 -2.1510553e+03 -1.9440001e+03 - -2.0406083e+03 -2.1637917e+03 -1.9425164e+03 - -2.0364167e+03 -2.1731797e+03 -1.9402908e+03 - -2.0345212e+03 -2.1793467e+03 -1.9375054e+03 - -2.0348645e+03 -2.1824508e+03 -1.9343385e+03 - -2.0373593e+03 -2.1826819e+03 -1.9309628e+03 - -2.0418868e+03 -2.1802616e+03 -1.9275425e+03 - -2.0482944e+03 -2.1754420e+03 -1.9242316e+03 - -2.0563947e+03 -2.1685045e+03 -1.9211708e+03 - -2.0659663e+03 -2.1597560e+03 -1.9184850e+03 - -2.0767546e+03 -2.1495253e+03 -1.9162805e+03 - -2.0884748e+03 -2.1381581e+03 -1.9146428e+03 - -2.1008156e+03 -2.1260107e+03 -1.9136347e+03 - -2.1134438e+03 -2.1134438e+03 -1.9132943e+03 - -2.1260107e+03 -2.1008156e+03 -1.9136347e+03 - -2.1381581e+03 -2.0884748e+03 -1.9146428e+03 - -2.1495253e+03 -2.0767546e+03 -1.9162805e+03 - -2.1597560e+03 -2.0659663e+03 -1.9184850e+03 - -2.1685045e+03 -2.0563947e+03 -1.9211708e+03 - -2.1754420e+03 -2.0482944e+03 -1.9242316e+03 - -2.1802616e+03 -2.0418868e+03 -1.9275425e+03 - -2.1826819e+03 -2.0373593e+03 -1.9309628e+03 - -2.1824508e+03 -2.0348645e+03 -1.9343385e+03 - -2.1793467e+03 -2.0345212e+03 -1.9375054e+03 - -2.1731797e+03 -2.0364167e+03 -1.9402908e+03 - -2.1637917e+03 -2.0406083e+03 -1.9425164e+03 - -2.1510553e+03 -2.0471270e+03 -1.9440001e+03 - -2.1348725e+03 -2.0559807e+03 -1.9445573e+03 - -2.1151729e+03 -2.0671573e+03 -1.9440025e+03 - -2.0919110e+03 -2.0806288e+03 -1.9421501e+03 - -2.0650644e+03 -2.0963543e+03 -1.9388148e+03 - -2.0346302e+03 -2.1142838e+03 -1.9338118e+03 - -2.0006232e+03 -2.1343617e+03 -1.9269564e+03 - -1.9630723e+03 -2.1565297e+03 -1.9180634e+03 - -1.9220175e+03 -2.1807305e+03 -1.9069454e+03 - -1.8775071e+03 -2.2069117e+03 -1.8934110e+03 - -1.8295930e+03 -2.2350289e+03 -1.8772615e+03 - -1.7783269e+03 -2.2650514e+03 -1.8582867e+03 - -1.7237543e+03 -2.2969667e+03 -1.8362588e+03 - -1.6659060e+03 -2.3307887e+03 -1.8109238e+03 - -1.6047882e+03 -2.3665660e+03 -1.7819897e+03 - -1.5403653e+03 -2.4043954e+03 -1.7491094e+03 - -1.4725358e+03 -2.4444385e+03 -1.7118576e+03 - -1.4010927e+03 -2.4869454e+03 -1.6696980e+03 - -1.3256605e+03 -2.5322865e+03 -1.6219386e+03 - -1.2455875e+03 -2.5809940e+03 -1.5676735e+03 - -1.1597614e+03 -2.6338101e+03 -1.5057151e+03 - -1.0662840e+03 -2.6917224e+03 -1.4345459e+03 - -9.6190021e+02 -2.7559173e+03 -1.3523892e+03 - -8.4104621e+02 -2.8274297e+03 -1.2577193e+03 - -6.9457933e+02 -2.9058878e+03 -1.1510769e+03 - -5.0951221e+02 -2.9861501e+03 -1.0399171e+03 - -2.7490808e+02 -3.0526412e+03 -9.4675878e+02 - 0.0000000e+00 -3.0797102e+03 -9.0862974e+02 - 2.7490808e+02 -3.0526412e+03 -9.4675878e+02 - 5.0951221e+02 -2.9861501e+03 -1.0399171e+03 - 6.9457933e+02 -2.9058878e+03 -1.1510769e+03 - 8.4104621e+02 -2.8274297e+03 -1.2577193e+03 - 9.6190021e+02 -2.7559173e+03 -1.3523892e+03 - 1.0662840e+03 -2.6917224e+03 -1.4345459e+03 - 1.1597614e+03 -2.6338101e+03 -1.5057151e+03 - 1.2455875e+03 -2.5809940e+03 -1.5676735e+03 - 1.3256605e+03 -2.5322865e+03 -1.6219386e+03 - 1.4010927e+03 -2.4869454e+03 -1.6696980e+03 - 1.4725358e+03 -2.4444385e+03 -1.7118576e+03 - 1.5403653e+03 -2.4043954e+03 -1.7491094e+03 - 1.6047882e+03 -2.3665660e+03 -1.7819897e+03 - 1.6659060e+03 -2.3307887e+03 -1.8109238e+03 - 1.7237543e+03 -2.2969667e+03 -1.8362588e+03 - 1.7783269e+03 -2.2650514e+03 -1.8582867e+03 - 1.8295930e+03 -2.2350289e+03 -1.8772615e+03 - 1.8775071e+03 -2.2069117e+03 -1.8934110e+03 - 1.9220175e+03 -2.1807305e+03 -1.9069454e+03 - 1.9630723e+03 -2.1565297e+03 -1.9180634e+03 - 2.0006232e+03 -2.1343617e+03 -1.9269564e+03 - 2.0346302e+03 -2.1142838e+03 -1.9338118e+03 - 2.0650644e+03 -2.0963543e+03 -1.9388148e+03 - 2.0919110e+03 -2.0806288e+03 -1.9421501e+03 - 2.1151729e+03 -2.0671573e+03 -1.9440025e+03 - 2.1348725e+03 -2.0559807e+03 -1.9445573e+03 - 2.1510553e+03 -2.0471270e+03 -1.9440001e+03 - 2.1637917e+03 -2.0406083e+03 -1.9425164e+03 - 2.1731797e+03 -2.0364167e+03 -1.9402908e+03 - 2.1793467e+03 -2.0345212e+03 -1.9375054e+03 - 2.1824508e+03 -2.0348645e+03 -1.9343385e+03 - 2.1826819e+03 -2.0373593e+03 -1.9309628e+03 - 2.1802616e+03 -2.0418868e+03 -1.9275425e+03 - 2.1754420e+03 -2.0482944e+03 -1.9242316e+03 - 2.1685045e+03 -2.0563947e+03 -1.9211708e+03 - 2.1597560e+03 -2.0659663e+03 -1.9184850e+03 - 2.1495253e+03 -2.0767546e+03 -1.9162805e+03 - 2.1381581e+03 -2.0884748e+03 -1.9146428e+03 - 2.1260107e+03 -2.1008156e+03 -1.9136347e+03 - 2.1134438e+03 -2.1134438e+03 -1.9132943e+03 - 2.1008156e+03 -2.1260107e+03 -1.9136347e+03 - 2.0884748e+03 -2.1381581e+03 -1.9146428e+03 - 2.0767546e+03 -2.1495253e+03 -1.9162805e+03 - 2.0659663e+03 -2.1597560e+03 -1.9184850e+03 - 2.0563947e+03 -2.1685045e+03 -1.9211708e+03 - 2.0482944e+03 -2.1754420e+03 -1.9242316e+03 - 2.0418868e+03 -2.1802616e+03 -1.9275425e+03 - 2.0373593e+03 -2.1826819e+03 -1.9309628e+03 - 2.0348645e+03 -2.1824508e+03 -1.9343385e+03 - 2.0345212e+03 -2.1793467e+03 -1.9375054e+03 - 2.0364167e+03 -2.1731797e+03 -1.9402908e+03 - 2.0406083e+03 -2.1637917e+03 -1.9425164e+03 - 2.0471270e+03 -2.1510553e+03 -1.9440001e+03 - 2.0559807e+03 -2.1348725e+03 -1.9445573e+03 - 2.0671573e+03 -2.1151729e+03 -1.9440025e+03 - 2.0806288e+03 -2.0919110e+03 -1.9421501e+03 - 2.0963543e+03 -2.0650644e+03 -1.9388148e+03 - 2.1142838e+03 -2.0346302e+03 -1.9338118e+03 - 2.1343617e+03 -2.0006232e+03 -1.9269564e+03 - 2.1565297e+03 -1.9630723e+03 -1.9180634e+03 - 2.1807305e+03 -1.9220175e+03 -1.9069454e+03 - 2.2069117e+03 -1.8775071e+03 -1.8934110e+03 - 2.2350289e+03 -1.8295930e+03 -1.8772615e+03 - 2.2650514e+03 -1.7783269e+03 -1.8582867e+03 - 2.2969667e+03 -1.7237543e+03 -1.8362588e+03 - 2.3307887e+03 -1.6659060e+03 -1.8109238e+03 - 2.3665660e+03 -1.6047882e+03 -1.7819897e+03 - 2.4043954e+03 -1.5403653e+03 -1.7491094e+03 - 2.4444385e+03 -1.4725358e+03 -1.7118576e+03 - 2.4869454e+03 -1.4010927e+03 -1.6696980e+03 - 2.5322865e+03 -1.3256605e+03 -1.6219386e+03 - 2.5809940e+03 -1.2455875e+03 -1.5676735e+03 - 2.6338101e+03 -1.1597614e+03 -1.5057151e+03 - 2.6917224e+03 -1.0662840e+03 -1.4345459e+03 - 2.7559173e+03 -9.6190021e+02 -1.3523892e+03 - 2.8274297e+03 -8.4104621e+02 -1.2577193e+03 - 2.9058878e+03 -6.9457933e+02 -1.1510769e+03 - 2.9861501e+03 -5.0951221e+02 -1.0399171e+03 - 3.0526412e+03 -2.7490808e+02 -9.4675878e+02 - 3.0797102e+03 -7.2201409e-09 -9.0862974e+02 - 3.0193576e+03 0.0000000e+00 -1.0008894e+03 - 2.9493209e+03 4.3009247e+02 -1.0997273e+03 - 2.8297437e+03 6.9397545e+02 -1.2673449e+03 - 2.7309799e+03 8.5276944e+02 -1.4034785e+03 - 2.6551641e+03 9.6705532e+02 -1.5050015e+03 - 2.5943206e+03 1.0615812e+03 -1.5832556e+03 - 2.5428174e+03 1.1459500e+03 -1.6462964e+03 - 2.4973450e+03 1.2241916e+03 -1.6989057e+03 - 2.4559782e+03 1.2981364e+03 -1.7439169e+03 - 2.4175762e+03 1.3686592e+03 -1.7830656e+03 - 2.3814516e+03 1.4361817e+03 -1.8174585e+03 - 2.3471893e+03 1.5008953e+03 -1.8478305e+03 - 2.3145432e+03 1.5628674e+03 -1.8746904e+03 - 2.2833764e+03 1.6220962e+03 -1.8984057e+03 - 2.2536239e+03 1.6785404e+03 -1.9192549e+03 - 2.2252699e+03 1.7321366e+03 -1.9374592e+03 - 2.1983320e+03 1.7828100e+03 -1.9532034e+03 - 2.1728515e+03 1.8304814e+03 -1.9666499e+03 - 2.1488857e+03 1.8750714e+03 -1.9779469e+03 - 2.1265027e+03 1.9165049e+03 -1.9872355e+03 - 2.1057771e+03 1.9547132e+03 -1.9946532e+03 - 2.0867869e+03 1.9896369e+03 -2.0003369e+03 - 2.0696100e+03 2.0212280e+03 -2.0044249e+03 - 2.0543217e+03 2.0494524e+03 -2.0070579e+03 - 2.0409919e+03 2.0742918e+03 -2.0083796e+03 - 2.0296823e+03 2.0957461e+03 -2.0085371e+03 - 2.0204434e+03 2.1138353e+03 -2.0076808e+03 - 2.0133119e+03 2.1286023e+03 -2.0059636e+03 - 2.0083070e+03 2.1401141e+03 -2.0035404e+03 - 2.0054280e+03 2.1484645e+03 -2.0005672e+03 - 2.0046509e+03 2.1537748e+03 -1.9971990e+03 - 2.0059259e+03 2.1561957e+03 -1.9935891e+03 - 2.0091743e+03 2.1559073e+03 -1.9898864e+03 - 2.0142870e+03 2.1531191e+03 -1.9862336e+03 - 2.0211232e+03 2.1480689e+03 -1.9827645e+03 - 2.0295092e+03 2.1410210e+03 -1.9796021e+03 - 2.0392394e+03 2.1322632e+03 -1.9768555e+03 - 2.0500775e+03 2.1221029e+03 -1.9746180e+03 - 2.0617587e+03 2.1108627e+03 -1.9729644e+03 - 2.0739940e+03 2.0988745e+03 -1.9719499e+03 - 2.0864740e+03 2.0864740e+03 -1.9716079e+03 - 2.0988745e+03 2.0739940e+03 -1.9719499e+03 - 2.1108627e+03 2.0617587e+03 -1.9729644e+03 - 2.1221029e+03 2.0500775e+03 -1.9746180e+03 - 2.1322632e+03 2.0392394e+03 -1.9768555e+03 - 2.1410210e+03 2.0295092e+03 -1.9796021e+03 - 2.1480689e+03 2.0211232e+03 -1.9827645e+03 - 2.1531191e+03 2.0142870e+03 -1.9862336e+03 - 2.1559073e+03 2.0091743e+03 -1.9898864e+03 - 2.1561957e+03 2.0059259e+03 -1.9935891e+03 - 2.1537748e+03 2.0046509e+03 -1.9971990e+03 - 2.1484645e+03 2.0054280e+03 -2.0005672e+03 - 2.1401141e+03 2.0083070e+03 -2.0035404e+03 - 2.1286023e+03 2.0133119e+03 -2.0059636e+03 - 2.1138353e+03 2.0204434e+03 -2.0076808e+03 - 2.0957461e+03 2.0296823e+03 -2.0085371e+03 - 2.0742918e+03 2.0409919e+03 -2.0083796e+03 - 2.0494524e+03 2.0543217e+03 -2.0070579e+03 - 2.0212280e+03 2.0696100e+03 -2.0044249e+03 - 1.9896369e+03 2.0867869e+03 -2.0003369e+03 - 1.9547132e+03 2.1057771e+03 -1.9946532e+03 - 1.9165049e+03 2.1265027e+03 -1.9872355e+03 - 1.8750714e+03 2.1488857e+03 -1.9779469e+03 - 1.8304814e+03 2.1728515e+03 -1.9666499e+03 - 1.7828100e+03 2.1983320e+03 -1.9532034e+03 - 1.7321366e+03 2.2252699e+03 -1.9374592e+03 - 1.6785404e+03 2.2536239e+03 -1.9192549e+03 - 1.6220962e+03 2.2833764e+03 -1.8984057e+03 - 1.5628674e+03 2.3145432e+03 -1.8746904e+03 - 1.5008953e+03 2.3471893e+03 -1.8478305e+03 - 1.4361817e+03 2.3814516e+03 -1.8174585e+03 - 1.3686592e+03 2.4175762e+03 -1.7830656e+03 - 1.2981364e+03 2.4559782e+03 -1.7439169e+03 - 1.2241916e+03 2.4973450e+03 -1.6989057e+03 - 1.1459500e+03 2.5428174e+03 -1.6462964e+03 - 1.0615812e+03 2.5943206e+03 -1.5832556e+03 - 9.6705532e+02 2.6551641e+03 -1.5050015e+03 - 8.5276944e+02 2.7309799e+03 -1.4034785e+03 - 6.9397545e+02 2.8297437e+03 -1.2673449e+03 - 4.3009247e+02 2.9493209e+03 -1.0997273e+03 - 0.0000000e+00 3.0193576e+03 -1.0008894e+03 - -4.3009247e+02 2.9493209e+03 -1.0997273e+03 - -6.9397545e+02 2.8297437e+03 -1.2673449e+03 - -8.5276944e+02 2.7309799e+03 -1.4034785e+03 - -9.6705532e+02 2.6551641e+03 -1.5050015e+03 - -1.0615812e+03 2.5943206e+03 -1.5832556e+03 - -1.1459500e+03 2.5428174e+03 -1.6462964e+03 - -1.2241916e+03 2.4973450e+03 -1.6989057e+03 - -1.2981364e+03 2.4559782e+03 -1.7439169e+03 - -1.3686592e+03 2.4175762e+03 -1.7830656e+03 - -1.4361817e+03 2.3814516e+03 -1.8174585e+03 - -1.5008953e+03 2.3471893e+03 -1.8478305e+03 - -1.5628674e+03 2.3145432e+03 -1.8746904e+03 - -1.6220962e+03 2.2833764e+03 -1.8984057e+03 - -1.6785404e+03 2.2536239e+03 -1.9192549e+03 - -1.7321366e+03 2.2252699e+03 -1.9374592e+03 - -1.7828100e+03 2.1983320e+03 -1.9532034e+03 - -1.8304814e+03 2.1728515e+03 -1.9666499e+03 - -1.8750714e+03 2.1488857e+03 -1.9779469e+03 - -1.9165049e+03 2.1265027e+03 -1.9872355e+03 - -1.9547132e+03 2.1057771e+03 -1.9946532e+03 - -1.9896369e+03 2.0867869e+03 -2.0003369e+03 - -2.0212280e+03 2.0696100e+03 -2.0044249e+03 - -2.0494524e+03 2.0543217e+03 -2.0070579e+03 - -2.0742918e+03 2.0409919e+03 -2.0083796e+03 - -2.0957461e+03 2.0296823e+03 -2.0085371e+03 - -2.1138353e+03 2.0204434e+03 -2.0076808e+03 - -2.1286023e+03 2.0133119e+03 -2.0059636e+03 - -2.1401141e+03 2.0083070e+03 -2.0035404e+03 - -2.1484645e+03 2.0054280e+03 -2.0005672e+03 - -2.1537748e+03 2.0046509e+03 -1.9971990e+03 - -2.1561957e+03 2.0059259e+03 -1.9935891e+03 - -2.1559073e+03 2.0091743e+03 -1.9898864e+03 - -2.1531191e+03 2.0142870e+03 -1.9862336e+03 - -2.1480689e+03 2.0211232e+03 -1.9827645e+03 - -2.1410210e+03 2.0295092e+03 -1.9796021e+03 - -2.1322632e+03 2.0392394e+03 -1.9768555e+03 - -2.1221029e+03 2.0500775e+03 -1.9746180e+03 - -2.1108627e+03 2.0617587e+03 -1.9729644e+03 - -2.0988745e+03 2.0739940e+03 -1.9719499e+03 - -2.0864740e+03 2.0864740e+03 -1.9716079e+03 - -2.0739940e+03 2.0988745e+03 -1.9719499e+03 - -2.0617587e+03 2.1108627e+03 -1.9729644e+03 - -2.0500775e+03 2.1221029e+03 -1.9746180e+03 - -2.0392394e+03 2.1322632e+03 -1.9768555e+03 - -2.0295092e+03 2.1410210e+03 -1.9796021e+03 - -2.0211232e+03 2.1480689e+03 -1.9827645e+03 - -2.0142870e+03 2.1531191e+03 -1.9862336e+03 - -2.0091743e+03 2.1559073e+03 -1.9898864e+03 - -2.0059259e+03 2.1561957e+03 -1.9935891e+03 - -2.0046509e+03 2.1537748e+03 -1.9971990e+03 - -2.0054280e+03 2.1484645e+03 -2.0005672e+03 - -2.0083070e+03 2.1401141e+03 -2.0035404e+03 - -2.0133119e+03 2.1286023e+03 -2.0059636e+03 - -2.0204434e+03 2.1138353e+03 -2.0076808e+03 - -2.0296823e+03 2.0957461e+03 -2.0085371e+03 - -2.0409919e+03 2.0742918e+03 -2.0083796e+03 - -2.0543217e+03 2.0494524e+03 -2.0070579e+03 - -2.0696100e+03 2.0212280e+03 -2.0044249e+03 - -2.0867869e+03 1.9896369e+03 -2.0003369e+03 - -2.1057771e+03 1.9547132e+03 -1.9946532e+03 - -2.1265027e+03 1.9165049e+03 -1.9872355e+03 - -2.1488857e+03 1.8750714e+03 -1.9779469e+03 - -2.1728515e+03 1.8304814e+03 -1.9666499e+03 - -2.1983320e+03 1.7828100e+03 -1.9532034e+03 - -2.2252699e+03 1.7321366e+03 -1.9374592e+03 - -2.2536239e+03 1.6785404e+03 -1.9192549e+03 - -2.2833764e+03 1.6220962e+03 -1.8984057e+03 - -2.3145432e+03 1.5628674e+03 -1.8746904e+03 - -2.3471893e+03 1.5008953e+03 -1.8478305e+03 - -2.3814516e+03 1.4361817e+03 -1.8174585e+03 - -2.4175762e+03 1.3686592e+03 -1.7830656e+03 - -2.4559782e+03 1.2981364e+03 -1.7439169e+03 - -2.4973450e+03 1.2241916e+03 -1.6989057e+03 - -2.5428174e+03 1.1459500e+03 -1.6462964e+03 - -2.5943206e+03 1.0615812e+03 -1.5832556e+03 - -2.6551641e+03 9.6705532e+02 -1.5050015e+03 - -2.7309799e+03 8.5276944e+02 -1.4034785e+03 - -2.8297437e+03 6.9397545e+02 -1.2673449e+03 - -2.9493209e+03 4.3009247e+02 -1.0997273e+03 - -3.0193576e+03 0.0000000e+00 -1.0008894e+03 - -2.9493209e+03 -4.3009247e+02 -1.0997273e+03 - -2.8297437e+03 -6.9397545e+02 -1.2673449e+03 - -2.7309799e+03 -8.5276944e+02 -1.4034785e+03 - -2.6551641e+03 -9.6705532e+02 -1.5050015e+03 - -2.5943206e+03 -1.0615812e+03 -1.5832556e+03 - -2.5428174e+03 -1.1459500e+03 -1.6462964e+03 - -2.4973450e+03 -1.2241916e+03 -1.6989057e+03 - -2.4559782e+03 -1.2981364e+03 -1.7439169e+03 - -2.4175762e+03 -1.3686592e+03 -1.7830656e+03 - -2.3814516e+03 -1.4361817e+03 -1.8174585e+03 - -2.3471893e+03 -1.5008953e+03 -1.8478305e+03 - -2.3145432e+03 -1.5628674e+03 -1.8746904e+03 - -2.2833764e+03 -1.6220962e+03 -1.8984057e+03 - -2.2536239e+03 -1.6785404e+03 -1.9192549e+03 - -2.2252699e+03 -1.7321366e+03 -1.9374592e+03 - -2.1983320e+03 -1.7828100e+03 -1.9532034e+03 - -2.1728515e+03 -1.8304814e+03 -1.9666499e+03 - -2.1488857e+03 -1.8750714e+03 -1.9779469e+03 - -2.1265027e+03 -1.9165049e+03 -1.9872355e+03 - -2.1057771e+03 -1.9547132e+03 -1.9946532e+03 - -2.0867869e+03 -1.9896369e+03 -2.0003369e+03 - -2.0696100e+03 -2.0212280e+03 -2.0044249e+03 - -2.0543217e+03 -2.0494524e+03 -2.0070579e+03 - -2.0409919e+03 -2.0742918e+03 -2.0083796e+03 - -2.0296823e+03 -2.0957461e+03 -2.0085371e+03 - -2.0204434e+03 -2.1138353e+03 -2.0076808e+03 - -2.0133119e+03 -2.1286023e+03 -2.0059636e+03 - -2.0083070e+03 -2.1401141e+03 -2.0035404e+03 - -2.0054280e+03 -2.1484645e+03 -2.0005672e+03 - -2.0046509e+03 -2.1537748e+03 -1.9971990e+03 - -2.0059259e+03 -2.1561957e+03 -1.9935891e+03 - -2.0091743e+03 -2.1559073e+03 -1.9898864e+03 - -2.0142870e+03 -2.1531191e+03 -1.9862336e+03 - -2.0211232e+03 -2.1480689e+03 -1.9827645e+03 - -2.0295092e+03 -2.1410210e+03 -1.9796021e+03 - -2.0392394e+03 -2.1322632e+03 -1.9768555e+03 - -2.0500775e+03 -2.1221029e+03 -1.9746180e+03 - -2.0617587e+03 -2.1108627e+03 -1.9729644e+03 - -2.0739940e+03 -2.0988745e+03 -1.9719499e+03 - -2.0864740e+03 -2.0864740e+03 -1.9716079e+03 - -2.0988745e+03 -2.0739940e+03 -1.9719499e+03 - -2.1108627e+03 -2.0617587e+03 -1.9729644e+03 - -2.1221029e+03 -2.0500775e+03 -1.9746180e+03 - -2.1322632e+03 -2.0392394e+03 -1.9768555e+03 - -2.1410210e+03 -2.0295092e+03 -1.9796021e+03 - -2.1480689e+03 -2.0211232e+03 -1.9827645e+03 - -2.1531191e+03 -2.0142870e+03 -1.9862336e+03 - -2.1559073e+03 -2.0091743e+03 -1.9898864e+03 - -2.1561957e+03 -2.0059259e+03 -1.9935891e+03 - -2.1537748e+03 -2.0046509e+03 -1.9971990e+03 - -2.1484645e+03 -2.0054280e+03 -2.0005672e+03 - -2.1401141e+03 -2.0083070e+03 -2.0035404e+03 - -2.1286023e+03 -2.0133119e+03 -2.0059636e+03 - -2.1138353e+03 -2.0204434e+03 -2.0076808e+03 - -2.0957461e+03 -2.0296823e+03 -2.0085371e+03 - -2.0742918e+03 -2.0409919e+03 -2.0083796e+03 - -2.0494524e+03 -2.0543217e+03 -2.0070579e+03 - -2.0212280e+03 -2.0696100e+03 -2.0044249e+03 - -1.9896369e+03 -2.0867869e+03 -2.0003369e+03 - -1.9547132e+03 -2.1057771e+03 -1.9946532e+03 - -1.9165049e+03 -2.1265027e+03 -1.9872355e+03 - -1.8750714e+03 -2.1488857e+03 -1.9779469e+03 - -1.8304814e+03 -2.1728515e+03 -1.9666499e+03 - -1.7828100e+03 -2.1983320e+03 -1.9532034e+03 - -1.7321366e+03 -2.2252699e+03 -1.9374592e+03 - -1.6785404e+03 -2.2536239e+03 -1.9192549e+03 - -1.6220962e+03 -2.2833764e+03 -1.8984057e+03 - -1.5628674e+03 -2.3145432e+03 -1.8746904e+03 - -1.5008953e+03 -2.3471893e+03 -1.8478305e+03 - -1.4361817e+03 -2.3814516e+03 -1.8174585e+03 - -1.3686592e+03 -2.4175762e+03 -1.7830656e+03 - -1.2981364e+03 -2.4559782e+03 -1.7439169e+03 - -1.2241916e+03 -2.4973450e+03 -1.6989057e+03 - -1.1459500e+03 -2.5428174e+03 -1.6462964e+03 - -1.0615812e+03 -2.5943206e+03 -1.5832556e+03 - -9.6705532e+02 -2.6551641e+03 -1.5050015e+03 - -8.5276944e+02 -2.7309799e+03 -1.4034785e+03 - -6.9397545e+02 -2.8297437e+03 -1.2673449e+03 - -4.3009247e+02 -2.9493209e+03 -1.0997273e+03 - -2.4067136e-09 -3.0193576e+03 -1.0008894e+03 - 4.3009247e+02 -2.9493209e+03 -1.0997273e+03 - 6.9397545e+02 -2.8297437e+03 -1.2673449e+03 - 8.5276944e+02 -2.7309799e+03 -1.4034785e+03 - 9.6705532e+02 -2.6551641e+03 -1.5050015e+03 - 1.0615812e+03 -2.5943206e+03 -1.5832556e+03 - 1.1459500e+03 -2.5428174e+03 -1.6462964e+03 - 1.2241916e+03 -2.4973450e+03 -1.6989057e+03 - 1.2981364e+03 -2.4559782e+03 -1.7439169e+03 - 1.3686592e+03 -2.4175762e+03 -1.7830656e+03 - 1.4361817e+03 -2.3814516e+03 -1.8174585e+03 - 1.5008953e+03 -2.3471893e+03 -1.8478305e+03 - 1.5628674e+03 -2.3145432e+03 -1.8746904e+03 - 1.6220962e+03 -2.2833764e+03 -1.8984057e+03 - 1.6785404e+03 -2.2536239e+03 -1.9192549e+03 - 1.7321366e+03 -2.2252699e+03 -1.9374592e+03 - 1.7828100e+03 -2.1983320e+03 -1.9532034e+03 - 1.8304814e+03 -2.1728515e+03 -1.9666499e+03 - 1.8750714e+03 -2.1488857e+03 -1.9779469e+03 - 1.9165049e+03 -2.1265027e+03 -1.9872355e+03 - 1.9547132e+03 -2.1057771e+03 -1.9946532e+03 - 1.9896369e+03 -2.0867869e+03 -2.0003369e+03 - 2.0212280e+03 -2.0696100e+03 -2.0044249e+03 - 2.0494524e+03 -2.0543217e+03 -2.0070579e+03 - 2.0742918e+03 -2.0409919e+03 -2.0083796e+03 - 2.0957461e+03 -2.0296823e+03 -2.0085371e+03 - 2.1138353e+03 -2.0204434e+03 -2.0076808e+03 - 2.1286023e+03 -2.0133119e+03 -2.0059636e+03 - 2.1401141e+03 -2.0083070e+03 -2.0035404e+03 - 2.1484645e+03 -2.0054280e+03 -2.0005672e+03 - 2.1537748e+03 -2.0046509e+03 -1.9971990e+03 - 2.1561957e+03 -2.0059259e+03 -1.9935891e+03 - 2.1559073e+03 -2.0091743e+03 -1.9898864e+03 - 2.1531191e+03 -2.0142870e+03 -1.9862336e+03 - 2.1480689e+03 -2.0211232e+03 -1.9827645e+03 - 2.1410210e+03 -2.0295092e+03 -1.9796021e+03 - 2.1322632e+03 -2.0392394e+03 -1.9768555e+03 - 2.1221029e+03 -2.0500775e+03 -1.9746180e+03 - 2.1108627e+03 -2.0617587e+03 -1.9729644e+03 - 2.0988745e+03 -2.0739940e+03 -1.9719499e+03 - 2.0864740e+03 -2.0864740e+03 -1.9716079e+03 - 2.0739940e+03 -2.0988745e+03 -1.9719499e+03 - 2.0617587e+03 -2.1108627e+03 -1.9729644e+03 - 2.0500775e+03 -2.1221029e+03 -1.9746180e+03 - 2.0392394e+03 -2.1322632e+03 -1.9768555e+03 - 2.0295092e+03 -2.1410210e+03 -1.9796021e+03 - 2.0211232e+03 -2.1480689e+03 -1.9827645e+03 - 2.0142870e+03 -2.1531191e+03 -1.9862336e+03 - 2.0091743e+03 -2.1559073e+03 -1.9898864e+03 - 2.0059259e+03 -2.1561957e+03 -1.9935891e+03 - 2.0046509e+03 -2.1537748e+03 -1.9971990e+03 - 2.0054280e+03 -2.1484645e+03 -2.0005672e+03 - 2.0083070e+03 -2.1401141e+03 -2.0035404e+03 - 2.0133119e+03 -2.1286023e+03 -2.0059636e+03 - 2.0204434e+03 -2.1138353e+03 -2.0076808e+03 - 2.0296823e+03 -2.0957461e+03 -2.0085371e+03 - 2.0409919e+03 -2.0742918e+03 -2.0083796e+03 - 2.0543217e+03 -2.0494524e+03 -2.0070579e+03 - 2.0696100e+03 -2.0212280e+03 -2.0044249e+03 - 2.0867869e+03 -1.9896369e+03 -2.0003369e+03 - 2.1057771e+03 -1.9547132e+03 -1.9946532e+03 - 2.1265027e+03 -1.9165049e+03 -1.9872355e+03 - 2.1488857e+03 -1.8750714e+03 -1.9779469e+03 - 2.1728515e+03 -1.8304814e+03 -1.9666499e+03 - 2.1983320e+03 -1.7828100e+03 -1.9532034e+03 - 2.2252699e+03 -1.7321366e+03 -1.9374592e+03 - 2.2536239e+03 -1.6785404e+03 -1.9192549e+03 - 2.2833764e+03 -1.6220962e+03 -1.8984057e+03 - 2.3145432e+03 -1.5628674e+03 -1.8746904e+03 - 2.3471893e+03 -1.5008953e+03 -1.8478305e+03 - 2.3814516e+03 -1.4361817e+03 -1.8174585e+03 - 2.4175762e+03 -1.3686592e+03 -1.7830656e+03 - 2.4559782e+03 -1.2981364e+03 -1.7439169e+03 - 2.4973450e+03 -1.2241916e+03 -1.6989057e+03 - 2.5428174e+03 -1.1459500e+03 -1.6462964e+03 - 2.5943206e+03 -1.0615812e+03 -1.5832556e+03 - 2.6551641e+03 -9.6705532e+02 -1.5050015e+03 - 2.7309799e+03 -8.5276944e+02 -1.4034785e+03 - 2.8297437e+03 -6.9397545e+02 -1.2673449e+03 - 2.9493209e+03 -4.3009247e+02 -1.0997273e+03 - 3.0193576e+03 0.0000000e+00 -1.0008894e+03 - 2.9548678e+03 0.0000000e+00 -1.0953719e+03 - 2.6636333e+03 7.7269464e+02 -1.5065661e+03 - 2.5567673e+03 8.9267103e+02 -1.6549623e+03 - 2.5023177e+03 9.7563942e+02 -1.7271811e+03 - 2.4624839e+03 1.0513613e+03 -1.7767495e+03 - 2.4284621e+03 1.1239342e+03 -1.8161910e+03 - 2.3972604e+03 1.1943071e+03 -1.8498201e+03 - 2.3676396e+03 1.2627232e+03 -1.8794844e+03 - 2.3390346e+03 1.3292082e+03 -1.9060901e+03 - 2.3111843e+03 1.3937064e+03 -1.9301256e+03 - 2.2839815e+03 1.4561279e+03 -1.9518745e+03 - 2.2574032e+03 1.5163675e+03 -1.9715131e+03 - 2.2314761e+03 1.5743140e+03 -1.9891600e+03 - 2.2062570e+03 1.6298547e+03 -2.0049027e+03 - 2.1818221e+03 1.6828783e+03 -2.0188127e+03 - 2.1582600e+03 1.7332767e+03 -2.0309545e+03 - 2.1356673e+03 1.7809467e+03 -2.0413914e+03 - 2.1141452e+03 1.8257911e+03 -2.0501890e+03 - 2.0937978e+03 1.8677203e+03 -2.0574171e+03 - 2.0747292e+03 1.9066529e+03 -2.0631513e+03 - 2.0570426e+03 1.9425178e+03 -2.0674737e+03 - 2.0408382e+03 1.9752551e+03 -2.0704733e+03 - 2.0262118e+03 2.0048177e+03 -2.0722463e+03 - 2.0132526e+03 2.0311730e+03 -2.0728957e+03 - 2.0020415e+03 2.0543046e+03 -2.0725312e+03 - 1.9926489e+03 2.0742142e+03 -2.0712689e+03 - 1.9851325e+03 2.0909231e+03 -2.0692300e+03 - 1.9795348e+03 2.1044745e+03 -2.0665408e+03 - 1.9758802e+03 2.1149350e+03 -2.0633309e+03 - 1.9741731e+03 2.1223961e+03 -2.0597323e+03 - 1.9743945e+03 2.1269755e+03 -2.0558778e+03 - 1.9765005e+03 2.1288180e+03 -2.0518994e+03 - 1.9804194e+03 2.1280958e+03 -2.0479263e+03 - 1.9860503e+03 2.1250082e+03 -2.0440825e+03 - 1.9932625e+03 2.1197804e+03 -2.0404853e+03 - 2.0018943e+03 2.1126617e+03 -2.0372420e+03 - 2.0117542e+03 2.1039227e+03 -2.0344485e+03 - 2.0226220e+03 2.0938517e+03 -2.0321866e+03 - 2.0342515e+03 2.0827504e+03 -2.0305224e+03 - 2.0463734e+03 2.0709288e+03 -2.0295041e+03 - 2.0586997e+03 2.0586997e+03 -2.0291614e+03 - 2.0709288e+03 2.0463734e+03 -2.0295041e+03 - 2.0827504e+03 2.0342515e+03 -2.0305224e+03 - 2.0938517e+03 2.0226220e+03 -2.0321866e+03 - 2.1039227e+03 2.0117542e+03 -2.0344485e+03 - 2.1126617e+03 2.0018943e+03 -2.0372420e+03 - 2.1197804e+03 1.9932625e+03 -2.0404853e+03 - 2.1250082e+03 1.9860503e+03 -2.0440825e+03 - 2.1280958e+03 1.9804194e+03 -2.0479263e+03 - 2.1288180e+03 1.9765005e+03 -2.0518994e+03 - 2.1269755e+03 1.9743945e+03 -2.0558778e+03 - 2.1223961e+03 1.9741731e+03 -2.0597323e+03 - 2.1149350e+03 1.9758802e+03 -2.0633309e+03 - 2.1044745e+03 1.9795348e+03 -2.0665408e+03 - 2.0909231e+03 1.9851325e+03 -2.0692300e+03 - 2.0742142e+03 1.9926489e+03 -2.0712689e+03 - 2.0543046e+03 2.0020415e+03 -2.0725312e+03 - 2.0311730e+03 2.0132526e+03 -2.0728957e+03 - 2.0048177e+03 2.0262118e+03 -2.0722463e+03 - 1.9752551e+03 2.0408382e+03 -2.0704733e+03 - 1.9425178e+03 2.0570426e+03 -2.0674737e+03 - 1.9066529e+03 2.0747292e+03 -2.0631513e+03 - 1.8677203e+03 2.0937978e+03 -2.0574171e+03 - 1.8257911e+03 2.1141452e+03 -2.0501890e+03 - 1.7809467e+03 2.1356673e+03 -2.0413914e+03 - 1.7332767e+03 2.1582600e+03 -2.0309545e+03 - 1.6828783e+03 2.1818221e+03 -2.0188127e+03 - 1.6298547e+03 2.2062570e+03 -2.0049027e+03 - 1.5743140e+03 2.2314761e+03 -1.9891600e+03 - 1.5163675e+03 2.2574032e+03 -1.9715131e+03 - 1.4561279e+03 2.2839815e+03 -1.9518745e+03 - 1.3937064e+03 2.3111843e+03 -1.9301256e+03 - 1.3292082e+03 2.3390346e+03 -1.9060901e+03 - 1.2627232e+03 2.3676396e+03 -1.8794844e+03 - 1.1943071e+03 2.3972604e+03 -1.8498201e+03 - 1.1239342e+03 2.4284621e+03 -1.8161910e+03 - 1.0513613e+03 2.4624839e+03 -1.7767495e+03 - 9.7563942e+02 2.5023177e+03 -1.7271811e+03 - 8.9267103e+02 2.5567673e+03 -1.6549623e+03 - 7.7269464e+02 2.6636333e+03 -1.5065661e+03 - -2.4067136e-09 2.9548678e+03 -1.0953719e+03 - -7.7269464e+02 2.6636333e+03 -1.5065661e+03 - -8.9267103e+02 2.5567673e+03 -1.6549623e+03 - -9.7563942e+02 2.5023177e+03 -1.7271811e+03 - -1.0513613e+03 2.4624839e+03 -1.7767495e+03 - -1.1239342e+03 2.4284621e+03 -1.8161910e+03 - -1.1943071e+03 2.3972604e+03 -1.8498201e+03 - -1.2627232e+03 2.3676396e+03 -1.8794844e+03 - -1.3292082e+03 2.3390346e+03 -1.9060901e+03 - -1.3937064e+03 2.3111843e+03 -1.9301256e+03 - -1.4561279e+03 2.2839815e+03 -1.9518745e+03 - -1.5163675e+03 2.2574032e+03 -1.9715131e+03 - -1.5743140e+03 2.2314761e+03 -1.9891600e+03 - -1.6298547e+03 2.2062570e+03 -2.0049027e+03 - -1.6828783e+03 2.1818221e+03 -2.0188127e+03 - -1.7332767e+03 2.1582600e+03 -2.0309545e+03 - -1.7809467e+03 2.1356673e+03 -2.0413914e+03 - -1.8257911e+03 2.1141452e+03 -2.0501890e+03 - -1.8677203e+03 2.0937978e+03 -2.0574171e+03 - -1.9066529e+03 2.0747292e+03 -2.0631513e+03 - -1.9425178e+03 2.0570426e+03 -2.0674737e+03 - -1.9752551e+03 2.0408382e+03 -2.0704733e+03 - -2.0048177e+03 2.0262118e+03 -2.0722463e+03 - -2.0311730e+03 2.0132526e+03 -2.0728957e+03 - -2.0543046e+03 2.0020415e+03 -2.0725312e+03 - -2.0742142e+03 1.9926489e+03 -2.0712689e+03 - -2.0909231e+03 1.9851325e+03 -2.0692300e+03 - -2.1044745e+03 1.9795348e+03 -2.0665408e+03 - -2.1149350e+03 1.9758802e+03 -2.0633309e+03 - -2.1223961e+03 1.9741731e+03 -2.0597323e+03 - -2.1269755e+03 1.9743945e+03 -2.0558778e+03 - -2.1288180e+03 1.9765005e+03 -2.0518994e+03 - -2.1280958e+03 1.9804194e+03 -2.0479263e+03 - -2.1250082e+03 1.9860503e+03 -2.0440825e+03 - -2.1197804e+03 1.9932625e+03 -2.0404853e+03 - -2.1126617e+03 2.0018943e+03 -2.0372420e+03 - -2.1039227e+03 2.0117542e+03 -2.0344485e+03 - -2.0938517e+03 2.0226220e+03 -2.0321866e+03 - -2.0827504e+03 2.0342515e+03 -2.0305224e+03 - -2.0709288e+03 2.0463734e+03 -2.0295041e+03 - -2.0586997e+03 2.0586997e+03 -2.0291614e+03 - -2.0463734e+03 2.0709288e+03 -2.0295041e+03 - -2.0342515e+03 2.0827504e+03 -2.0305224e+03 - -2.0226220e+03 2.0938517e+03 -2.0321866e+03 - -2.0117542e+03 2.1039227e+03 -2.0344485e+03 - -2.0018943e+03 2.1126617e+03 -2.0372420e+03 - -1.9932625e+03 2.1197804e+03 -2.0404853e+03 - -1.9860503e+03 2.1250082e+03 -2.0440825e+03 - -1.9804194e+03 2.1280958e+03 -2.0479263e+03 - -1.9765005e+03 2.1288180e+03 -2.0518994e+03 - -1.9743945e+03 2.1269755e+03 -2.0558778e+03 - -1.9741731e+03 2.1223961e+03 -2.0597323e+03 - -1.9758802e+03 2.1149350e+03 -2.0633309e+03 - -1.9795348e+03 2.1044745e+03 -2.0665408e+03 - -1.9851325e+03 2.0909231e+03 -2.0692300e+03 - -1.9926489e+03 2.0742142e+03 -2.0712689e+03 - -2.0020415e+03 2.0543046e+03 -2.0725312e+03 - -2.0132526e+03 2.0311730e+03 -2.0728957e+03 - -2.0262118e+03 2.0048177e+03 -2.0722463e+03 - -2.0408382e+03 1.9752551e+03 -2.0704733e+03 - -2.0570426e+03 1.9425178e+03 -2.0674737e+03 - -2.0747292e+03 1.9066529e+03 -2.0631513e+03 - -2.0937978e+03 1.8677203e+03 -2.0574171e+03 - -2.1141452e+03 1.8257911e+03 -2.0501890e+03 - -2.1356673e+03 1.7809467e+03 -2.0413914e+03 - -2.1582600e+03 1.7332767e+03 -2.0309545e+03 - -2.1818221e+03 1.6828783e+03 -2.0188127e+03 - -2.2062570e+03 1.6298547e+03 -2.0049027e+03 - -2.2314761e+03 1.5743140e+03 -1.9891600e+03 - -2.2574032e+03 1.5163675e+03 -1.9715131e+03 - -2.2839815e+03 1.4561279e+03 -1.9518745e+03 - -2.3111843e+03 1.3937064e+03 -1.9301256e+03 - -2.3390346e+03 1.3292082e+03 -1.9060901e+03 - -2.3676396e+03 1.2627232e+03 -1.8794844e+03 - -2.3972604e+03 1.1943071e+03 -1.8498201e+03 - -2.4284621e+03 1.1239342e+03 -1.8161910e+03 - -2.4624839e+03 1.0513613e+03 -1.7767495e+03 - -2.5023177e+03 9.7563942e+02 -1.7271811e+03 - -2.5567673e+03 8.9267103e+02 -1.6549623e+03 - -2.6636333e+03 7.7269464e+02 -1.5065661e+03 - -2.9548678e+03 -2.4067136e-09 -1.0953719e+03 - -2.6636333e+03 -7.7269464e+02 -1.5065661e+03 - -2.5567673e+03 -8.9267103e+02 -1.6549623e+03 - -2.5023177e+03 -9.7563942e+02 -1.7271811e+03 - -2.4624839e+03 -1.0513613e+03 -1.7767495e+03 - -2.4284621e+03 -1.1239342e+03 -1.8161910e+03 - -2.3972604e+03 -1.1943071e+03 -1.8498201e+03 - -2.3676396e+03 -1.2627232e+03 -1.8794844e+03 - -2.3390346e+03 -1.3292082e+03 -1.9060901e+03 - -2.3111843e+03 -1.3937064e+03 -1.9301256e+03 - -2.2839815e+03 -1.4561279e+03 -1.9518745e+03 - -2.2574032e+03 -1.5163675e+03 -1.9715131e+03 - -2.2314761e+03 -1.5743140e+03 -1.9891600e+03 - -2.2062570e+03 -1.6298547e+03 -2.0049027e+03 - -2.1818221e+03 -1.6828783e+03 -2.0188127e+03 - -2.1582600e+03 -1.7332767e+03 -2.0309545e+03 - -2.1356673e+03 -1.7809467e+03 -2.0413914e+03 - -2.1141452e+03 -1.8257911e+03 -2.0501890e+03 - -2.0937978e+03 -1.8677203e+03 -2.0574171e+03 - -2.0747292e+03 -1.9066529e+03 -2.0631513e+03 - -2.0570426e+03 -1.9425178e+03 -2.0674737e+03 - -2.0408382e+03 -1.9752551e+03 -2.0704733e+03 - -2.0262118e+03 -2.0048177e+03 -2.0722463e+03 - -2.0132526e+03 -2.0311730e+03 -2.0728957e+03 - -2.0020415e+03 -2.0543046e+03 -2.0725312e+03 - -1.9926489e+03 -2.0742142e+03 -2.0712689e+03 - -1.9851325e+03 -2.0909231e+03 -2.0692300e+03 - -1.9795348e+03 -2.1044745e+03 -2.0665408e+03 - -1.9758802e+03 -2.1149350e+03 -2.0633309e+03 - -1.9741731e+03 -2.1223961e+03 -2.0597323e+03 - -1.9743945e+03 -2.1269755e+03 -2.0558778e+03 - -1.9765005e+03 -2.1288180e+03 -2.0518994e+03 - -1.9804194e+03 -2.1280958e+03 -2.0479263e+03 - -1.9860503e+03 -2.1250082e+03 -2.0440825e+03 - -1.9932625e+03 -2.1197804e+03 -2.0404853e+03 - -2.0018943e+03 -2.1126617e+03 -2.0372420e+03 - -2.0117542e+03 -2.1039227e+03 -2.0344485e+03 - -2.0226220e+03 -2.0938517e+03 -2.0321866e+03 - -2.0342515e+03 -2.0827504e+03 -2.0305224e+03 - -2.0463734e+03 -2.0709288e+03 -2.0295041e+03 - -2.0586997e+03 -2.0586997e+03 -2.0291614e+03 - -2.0709288e+03 -2.0463734e+03 -2.0295041e+03 - -2.0827504e+03 -2.0342515e+03 -2.0305224e+03 - -2.0938517e+03 -2.0226220e+03 -2.0321866e+03 - -2.1039227e+03 -2.0117542e+03 -2.0344485e+03 - -2.1126617e+03 -2.0018943e+03 -2.0372420e+03 - -2.1197804e+03 -1.9932625e+03 -2.0404853e+03 - -2.1250082e+03 -1.9860503e+03 -2.0440825e+03 - -2.1280958e+03 -1.9804194e+03 -2.0479263e+03 - -2.1288180e+03 -1.9765005e+03 -2.0518994e+03 - -2.1269755e+03 -1.9743945e+03 -2.0558778e+03 - -2.1223961e+03 -1.9741731e+03 -2.0597323e+03 - -2.1149350e+03 -1.9758802e+03 -2.0633309e+03 - -2.1044745e+03 -1.9795348e+03 -2.0665408e+03 - -2.0909231e+03 -1.9851325e+03 -2.0692300e+03 - -2.0742142e+03 -1.9926489e+03 -2.0712689e+03 - -2.0543046e+03 -2.0020415e+03 -2.0725312e+03 - -2.0311730e+03 -2.0132526e+03 -2.0728957e+03 - -2.0048177e+03 -2.0262118e+03 -2.0722463e+03 - -1.9752551e+03 -2.0408382e+03 -2.0704733e+03 - -1.9425178e+03 -2.0570426e+03 -2.0674737e+03 - -1.9066529e+03 -2.0747292e+03 -2.0631513e+03 - -1.8677203e+03 -2.0937978e+03 -2.0574171e+03 - -1.8257911e+03 -2.1141452e+03 -2.0501890e+03 - -1.7809467e+03 -2.1356673e+03 -2.0413914e+03 - -1.7332767e+03 -2.1582600e+03 -2.0309545e+03 - -1.6828783e+03 -2.1818221e+03 -2.0188127e+03 - -1.6298547e+03 -2.2062570e+03 -2.0049027e+03 - -1.5743140e+03 -2.2314761e+03 -1.9891600e+03 - -1.5163675e+03 -2.2574032e+03 -1.9715131e+03 - -1.4561279e+03 -2.2839815e+03 -1.9518745e+03 - -1.3937064e+03 -2.3111843e+03 -1.9301256e+03 - -1.3292082e+03 -2.3390346e+03 -1.9060901e+03 - -1.2627232e+03 -2.3676396e+03 -1.8794844e+03 - -1.1943071e+03 -2.3972604e+03 -1.8498201e+03 - -1.1239342e+03 -2.4284621e+03 -1.8161910e+03 - -1.0513613e+03 -2.4624839e+03 -1.7767495e+03 - -9.7563942e+02 -2.5023177e+03 -1.7271811e+03 - -8.9267103e+02 -2.5567673e+03 -1.6549623e+03 - -7.7269464e+02 -2.6636333e+03 -1.5065661e+03 - 2.4067136e-09 -2.9548678e+03 -1.0953719e+03 - 7.7269464e+02 -2.6636333e+03 -1.5065661e+03 - 8.9267103e+02 -2.5567673e+03 -1.6549623e+03 - 9.7563942e+02 -2.5023177e+03 -1.7271811e+03 - 1.0513613e+03 -2.4624839e+03 -1.7767495e+03 - 1.1239342e+03 -2.4284621e+03 -1.8161910e+03 - 1.1943071e+03 -2.3972604e+03 -1.8498201e+03 - 1.2627232e+03 -2.3676396e+03 -1.8794844e+03 - 1.3292082e+03 -2.3390346e+03 -1.9060901e+03 - 1.3937064e+03 -2.3111843e+03 -1.9301256e+03 - 1.4561279e+03 -2.2839815e+03 -1.9518745e+03 - 1.5163675e+03 -2.2574032e+03 -1.9715131e+03 - 1.5743140e+03 -2.2314761e+03 -1.9891600e+03 - 1.6298547e+03 -2.2062570e+03 -2.0049027e+03 - 1.6828783e+03 -2.1818221e+03 -2.0188127e+03 - 1.7332767e+03 -2.1582600e+03 -2.0309545e+03 - 1.7809467e+03 -2.1356673e+03 -2.0413914e+03 - 1.8257911e+03 -2.1141452e+03 -2.0501890e+03 - 1.8677203e+03 -2.0937978e+03 -2.0574171e+03 - 1.9066529e+03 -2.0747292e+03 -2.0631513e+03 - 1.9425178e+03 -2.0570426e+03 -2.0674737e+03 - 1.9752551e+03 -2.0408382e+03 -2.0704733e+03 - 2.0048177e+03 -2.0262118e+03 -2.0722463e+03 - 2.0311730e+03 -2.0132526e+03 -2.0728957e+03 - 2.0543046e+03 -2.0020415e+03 -2.0725312e+03 - 2.0742142e+03 -1.9926489e+03 -2.0712689e+03 - 2.0909231e+03 -1.9851325e+03 -2.0692300e+03 - 2.1044745e+03 -1.9795348e+03 -2.0665408e+03 - 2.1149350e+03 -1.9758802e+03 -2.0633309e+03 - 2.1223961e+03 -1.9741731e+03 -2.0597323e+03 - 2.1269755e+03 -1.9743945e+03 -2.0558778e+03 - 2.1288180e+03 -1.9765005e+03 -2.0518994e+03 - 2.1280958e+03 -1.9804194e+03 -2.0479263e+03 - 2.1250082e+03 -1.9860503e+03 -2.0440825e+03 - 2.1197804e+03 -1.9932625e+03 -2.0404853e+03 - 2.1126617e+03 -2.0018943e+03 -2.0372420e+03 - 2.1039227e+03 -2.0117542e+03 -2.0344485e+03 - 2.0938517e+03 -2.0226220e+03 -2.0321866e+03 - 2.0827504e+03 -2.0342515e+03 -2.0305224e+03 - 2.0709288e+03 -2.0463734e+03 -2.0295041e+03 - 2.0586997e+03 -2.0586997e+03 -2.0291614e+03 - 2.0463734e+03 -2.0709288e+03 -2.0295041e+03 - 2.0342515e+03 -2.0827504e+03 -2.0305224e+03 - 2.0226220e+03 -2.0938517e+03 -2.0321866e+03 - 2.0117542e+03 -2.1039227e+03 -2.0344485e+03 - 2.0018943e+03 -2.1126617e+03 -2.0372420e+03 - 1.9932625e+03 -2.1197804e+03 -2.0404853e+03 - 1.9860503e+03 -2.1250082e+03 -2.0440825e+03 - 1.9804194e+03 -2.1280958e+03 -2.0479263e+03 - 1.9765005e+03 -2.1288180e+03 -2.0518994e+03 - 1.9743945e+03 -2.1269755e+03 -2.0558778e+03 - 1.9741731e+03 -2.1223961e+03 -2.0597323e+03 - 1.9758802e+03 -2.1149350e+03 -2.0633309e+03 - 1.9795348e+03 -2.1044745e+03 -2.0665408e+03 - 1.9851325e+03 -2.0909231e+03 -2.0692300e+03 - 1.9926489e+03 -2.0742142e+03 -2.0712689e+03 - 2.0020415e+03 -2.0543046e+03 -2.0725312e+03 - 2.0132526e+03 -2.0311730e+03 -2.0728957e+03 - 2.0262118e+03 -2.0048177e+03 -2.0722463e+03 - 2.0408382e+03 -1.9752551e+03 -2.0704733e+03 - 2.0570426e+03 -1.9425178e+03 -2.0674737e+03 - 2.0747292e+03 -1.9066529e+03 -2.0631513e+03 - 2.0937978e+03 -1.8677203e+03 -2.0574171e+03 - 2.1141452e+03 -1.8257911e+03 -2.0501890e+03 - 2.1356673e+03 -1.7809467e+03 -2.0413914e+03 - 2.1582600e+03 -1.7332767e+03 -2.0309545e+03 - 2.1818221e+03 -1.6828783e+03 -2.0188127e+03 - 2.2062570e+03 -1.6298547e+03 -2.0049027e+03 - 2.2314761e+03 -1.5743140e+03 -1.9891600e+03 - 2.2574032e+03 -1.5163675e+03 -1.9715131e+03 - 2.2839815e+03 -1.4561279e+03 -1.9518745e+03 - 2.3111843e+03 -1.3937064e+03 -1.9301256e+03 - 2.3390346e+03 -1.3292082e+03 -1.9060901e+03 - 2.3676396e+03 -1.2627232e+03 -1.8794844e+03 - 2.3972604e+03 -1.1943071e+03 -1.8498201e+03 - 2.4284621e+03 -1.1239342e+03 -1.8161910e+03 - 2.4624839e+03 -1.0513613e+03 -1.7767495e+03 - 2.5023177e+03 -9.7563942e+02 -1.7271811e+03 - 2.5567673e+03 -8.9267103e+02 -1.6549623e+03 - 2.6636333e+03 -7.7269464e+02 -1.5065661e+03 - 2.9548678e+03 2.4067136e-09 -1.0953719e+03 - 2.0159189e+03 0.0000000e+00 -2.4230026e+03 - 2.1693779e+03 7.0065250e+02 -2.2043809e+03 - 2.2563726e+03 8.8489640e+02 -2.0776167e+03 - 2.2823793e+03 9.8420167e+02 -2.0352271e+03 - 2.2858665e+03 1.0647362e+03 -2.0228475e+03 - 2.2791117e+03 1.1383160e+03 -2.0231811e+03 - 2.2668776e+03 1.2081009e+03 -2.0295751e+03 - 2.2513950e+03 1.2751468e+03 -2.0389708e+03 - 2.2338725e+03 1.3398358e+03 -2.0497673e+03 - 2.2150458e+03 1.4022916e+03 -2.0610439e+03 - 2.1954090e+03 1.4625246e+03 -2.0722327e+03 - 2.1753221e+03 1.5204919e+03 -2.0829663e+03 - 2.1550666e+03 1.5761242e+03 -2.0929996e+03 - 2.1348747e+03 1.6293389e+03 -2.1021670e+03 - 2.1149467e+03 1.6800483e+03 -2.1103583e+03 - 2.0954611e+03 1.7281633e+03 -2.1175032e+03 - 2.0765809e+03 1.7735969e+03 -2.1235623e+03 - 2.0584572e+03 1.8162661e+03 -2.1285206e+03 - 2.0412313e+03 1.8560936e+03 -2.1323832e+03 - 2.0250363e+03 1.8930097e+03 -2.1351726e+03 - 2.0099973e+03 1.9269535e+03 -2.1369262e+03 - 1.9962315e+03 1.9578743e+03 -2.1376947e+03 - 1.9838473e+03 1.9857336e+03 -2.1375404e+03 - 1.9729439e+03 2.0105065e+03 -2.1365362e+03 - 1.9636096e+03 2.0321830e+03 -2.1347648e+03 - 1.9559206e+03 2.0507703e+03 -2.1323169e+03 - 1.9499389e+03 2.0662942e+03 -2.1292906e+03 - 1.9457105e+03 2.0788008e+03 -2.1257900e+03 - 1.9432632e+03 2.0883580e+03 -2.1219243e+03 - 1.9426044e+03 2.0950571e+03 -2.1178056e+03 - 1.9437190e+03 2.0990136e+03 -2.1135482e+03 - 1.9465672e+03 2.1003682e+03 -2.1092662e+03 - 1.9510829e+03 2.0992864e+03 -2.1050721e+03 - 1.9571723e+03 2.0959588e+03 -2.1010744e+03 - 1.9647133e+03 2.0905996e+03 -2.0973755e+03 - 1.9735549e+03 2.0834448e+03 -2.0940702e+03 - 1.9835183e+03 2.0747493e+03 -2.0912425e+03 - 1.9943977e+03 2.0647844e+03 -2.0889646e+03 - 2.0059635e+03 2.0538327e+03 -2.0872947e+03 - 2.0179643e+03 2.0421844e+03 -2.0862753e+03 - 2.0301318e+03 2.0301318e+03 -2.0859326e+03 - 2.0421844e+03 2.0179643e+03 -2.0862753e+03 - 2.0538327e+03 2.0059635e+03 -2.0872947e+03 - 2.0647844e+03 1.9943977e+03 -2.0889646e+03 - 2.0747493e+03 1.9835183e+03 -2.0912425e+03 - 2.0834448e+03 1.9735549e+03 -2.0940702e+03 - 2.0905996e+03 1.9647133e+03 -2.0973755e+03 - 2.0959588e+03 1.9571723e+03 -2.1010744e+03 - 2.0992864e+03 1.9510829e+03 -2.1050721e+03 - 2.1003682e+03 1.9465672e+03 -2.1092662e+03 - 2.0990136e+03 1.9437190e+03 -2.1135482e+03 - 2.0950571e+03 1.9426044e+03 -2.1178056e+03 - 2.0883580e+03 1.9432632e+03 -2.1219243e+03 - 2.0788008e+03 1.9457105e+03 -2.1257900e+03 - 2.0662942e+03 1.9499389e+03 -2.1292906e+03 - 2.0507703e+03 1.9559206e+03 -2.1323169e+03 - 2.0321830e+03 1.9636096e+03 -2.1347648e+03 - 2.0105065e+03 1.9729439e+03 -2.1365362e+03 - 1.9857336e+03 1.9838473e+03 -2.1375404e+03 - 1.9578743e+03 1.9962315e+03 -2.1376947e+03 - 1.9269535e+03 2.0099973e+03 -2.1369262e+03 - 1.8930097e+03 2.0250363e+03 -2.1351726e+03 - 1.8560936e+03 2.0412313e+03 -2.1323832e+03 - 1.8162661e+03 2.0584572e+03 -2.1285206e+03 - 1.7735969e+03 2.0765809e+03 -2.1235623e+03 - 1.7281633e+03 2.0954611e+03 -2.1175032e+03 - 1.6800483e+03 2.1149467e+03 -2.1103583e+03 - 1.6293389e+03 2.1348747e+03 -2.1021670e+03 - 1.5761242e+03 2.1550666e+03 -2.0929996e+03 - 1.5204919e+03 2.1753221e+03 -2.0829663e+03 - 1.4625246e+03 2.1954090e+03 -2.0722327e+03 - 1.4022916e+03 2.2150458e+03 -2.0610439e+03 - 1.3398358e+03 2.2338725e+03 -2.0497673e+03 - 1.2751468e+03 2.2513950e+03 -2.0389708e+03 - 1.2081009e+03 2.2668776e+03 -2.0295751e+03 - 1.1383160e+03 2.2791117e+03 -2.0231811e+03 - 1.0647362e+03 2.2858665e+03 -2.0228475e+03 - 9.8420167e+02 2.2823793e+03 -2.0352271e+03 - 8.8489640e+02 2.2563726e+03 -2.0776167e+03 - 7.0065250e+02 2.1693779e+03 -2.2043809e+03 - -2.4067136e-09 2.0159189e+03 -2.4230026e+03 - -7.0065250e+02 2.1693779e+03 -2.2043809e+03 - -8.8489640e+02 2.2563726e+03 -2.0776167e+03 - -9.8420167e+02 2.2823793e+03 -2.0352271e+03 - -1.0647362e+03 2.2858665e+03 -2.0228475e+03 - -1.1383160e+03 2.2791117e+03 -2.0231811e+03 - -1.2081009e+03 2.2668776e+03 -2.0295751e+03 - -1.2751468e+03 2.2513950e+03 -2.0389708e+03 - -1.3398358e+03 2.2338725e+03 -2.0497673e+03 - -1.4022916e+03 2.2150458e+03 -2.0610439e+03 - -1.4625246e+03 2.1954090e+03 -2.0722327e+03 - -1.5204919e+03 2.1753221e+03 -2.0829663e+03 - -1.5761242e+03 2.1550666e+03 -2.0929996e+03 - -1.6293389e+03 2.1348747e+03 -2.1021670e+03 - -1.6800483e+03 2.1149467e+03 -2.1103583e+03 - -1.7281633e+03 2.0954611e+03 -2.1175032e+03 - -1.7735969e+03 2.0765809e+03 -2.1235623e+03 - -1.8162661e+03 2.0584572e+03 -2.1285206e+03 - -1.8560936e+03 2.0412313e+03 -2.1323832e+03 - -1.8930097e+03 2.0250363e+03 -2.1351726e+03 - -1.9269535e+03 2.0099973e+03 -2.1369262e+03 - -1.9578743e+03 1.9962315e+03 -2.1376947e+03 - -1.9857336e+03 1.9838473e+03 -2.1375404e+03 - -2.0105065e+03 1.9729439e+03 -2.1365362e+03 - -2.0321830e+03 1.9636096e+03 -2.1347648e+03 - -2.0507703e+03 1.9559206e+03 -2.1323169e+03 - -2.0662942e+03 1.9499389e+03 -2.1292906e+03 - -2.0788008e+03 1.9457105e+03 -2.1257900e+03 - -2.0883580e+03 1.9432632e+03 -2.1219243e+03 - -2.0950571e+03 1.9426044e+03 -2.1178056e+03 - -2.0990136e+03 1.9437190e+03 -2.1135482e+03 - -2.1003682e+03 1.9465672e+03 -2.1092662e+03 - -2.0992864e+03 1.9510829e+03 -2.1050721e+03 - -2.0959588e+03 1.9571723e+03 -2.1010744e+03 - -2.0905996e+03 1.9647133e+03 -2.0973755e+03 - -2.0834448e+03 1.9735549e+03 -2.0940702e+03 - -2.0747493e+03 1.9835183e+03 -2.0912425e+03 - -2.0647844e+03 1.9943977e+03 -2.0889646e+03 - -2.0538327e+03 2.0059635e+03 -2.0872947e+03 - -2.0421844e+03 2.0179643e+03 -2.0862753e+03 - -2.0301318e+03 2.0301318e+03 -2.0859326e+03 - -2.0179643e+03 2.0421844e+03 -2.0862753e+03 - -2.0059635e+03 2.0538327e+03 -2.0872947e+03 - -1.9943977e+03 2.0647844e+03 -2.0889646e+03 - -1.9835183e+03 2.0747493e+03 -2.0912425e+03 - -1.9735549e+03 2.0834448e+03 -2.0940702e+03 - -1.9647133e+03 2.0905996e+03 -2.0973755e+03 - -1.9571723e+03 2.0959588e+03 -2.1010744e+03 - -1.9510829e+03 2.0992864e+03 -2.1050721e+03 - -1.9465672e+03 2.1003682e+03 -2.1092662e+03 - -1.9437190e+03 2.0990136e+03 -2.1135482e+03 - -1.9426044e+03 2.0950571e+03 -2.1178056e+03 - -1.9432632e+03 2.0883580e+03 -2.1219243e+03 - -1.9457105e+03 2.0788008e+03 -2.1257900e+03 - -1.9499389e+03 2.0662942e+03 -2.1292906e+03 - -1.9559206e+03 2.0507703e+03 -2.1323169e+03 - -1.9636096e+03 2.0321830e+03 -2.1347648e+03 - -1.9729439e+03 2.0105065e+03 -2.1365362e+03 - -1.9838473e+03 1.9857336e+03 -2.1375404e+03 - -1.9962315e+03 1.9578743e+03 -2.1376947e+03 - -2.0099973e+03 1.9269535e+03 -2.1369262e+03 - -2.0250363e+03 1.8930097e+03 -2.1351726e+03 - -2.0412313e+03 1.8560936e+03 -2.1323832e+03 - -2.0584572e+03 1.8162661e+03 -2.1285206e+03 - -2.0765809e+03 1.7735969e+03 -2.1235623e+03 - -2.0954611e+03 1.7281633e+03 -2.1175032e+03 - -2.1149467e+03 1.6800483e+03 -2.1103583e+03 - -2.1348747e+03 1.6293389e+03 -2.1021670e+03 - -2.1550666e+03 1.5761242e+03 -2.0929996e+03 - -2.1753221e+03 1.5204919e+03 -2.0829663e+03 - -2.1954090e+03 1.4625246e+03 -2.0722327e+03 - -2.2150458e+03 1.4022916e+03 -2.0610439e+03 - -2.2338725e+03 1.3398358e+03 -2.0497673e+03 - -2.2513950e+03 1.2751468e+03 -2.0389708e+03 - -2.2668776e+03 1.2081009e+03 -2.0295751e+03 - -2.2791117e+03 1.1383160e+03 -2.0231811e+03 - -2.2858665e+03 1.0647362e+03 -2.0228475e+03 - -2.2823793e+03 9.8420167e+02 -2.0352271e+03 - -2.2563726e+03 8.8489640e+02 -2.0776167e+03 - -2.1693779e+03 7.0065250e+02 -2.2043809e+03 - -2.0159189e+03 2.4067136e-09 -2.4230026e+03 - -2.1693779e+03 -7.0065250e+02 -2.2043809e+03 - -2.2563726e+03 -8.8489640e+02 -2.0776167e+03 - -2.2823793e+03 -9.8420167e+02 -2.0352271e+03 - -2.2858665e+03 -1.0647362e+03 -2.0228475e+03 - -2.2791117e+03 -1.1383160e+03 -2.0231811e+03 - -2.2668776e+03 -1.2081009e+03 -2.0295751e+03 - -2.2513950e+03 -1.2751468e+03 -2.0389708e+03 - -2.2338725e+03 -1.3398358e+03 -2.0497673e+03 - -2.2150458e+03 -1.4022916e+03 -2.0610439e+03 - -2.1954090e+03 -1.4625246e+03 -2.0722327e+03 - -2.1753221e+03 -1.5204919e+03 -2.0829663e+03 - -2.1550666e+03 -1.5761242e+03 -2.0929996e+03 - -2.1348747e+03 -1.6293389e+03 -2.1021670e+03 - -2.1149467e+03 -1.6800483e+03 -2.1103583e+03 - -2.0954611e+03 -1.7281633e+03 -2.1175032e+03 - -2.0765809e+03 -1.7735969e+03 -2.1235623e+03 - -2.0584572e+03 -1.8162661e+03 -2.1285206e+03 - -2.0412313e+03 -1.8560936e+03 -2.1323832e+03 - -2.0250363e+03 -1.8930097e+03 -2.1351726e+03 - -2.0099973e+03 -1.9269535e+03 -2.1369262e+03 - -1.9962315e+03 -1.9578743e+03 -2.1376947e+03 - -1.9838473e+03 -1.9857336e+03 -2.1375404e+03 - -1.9729439e+03 -2.0105065e+03 -2.1365362e+03 - -1.9636096e+03 -2.0321830e+03 -2.1347648e+03 - -1.9559206e+03 -2.0507703e+03 -2.1323169e+03 - -1.9499389e+03 -2.0662942e+03 -2.1292906e+03 - -1.9457105e+03 -2.0788008e+03 -2.1257900e+03 - -1.9432632e+03 -2.0883580e+03 -2.1219243e+03 - -1.9426044e+03 -2.0950571e+03 -2.1178056e+03 - -1.9437190e+03 -2.0990136e+03 -2.1135482e+03 - -1.9465672e+03 -2.1003682e+03 -2.1092662e+03 - -1.9510829e+03 -2.0992864e+03 -2.1050721e+03 - -1.9571723e+03 -2.0959588e+03 -2.1010744e+03 - -1.9647133e+03 -2.0905996e+03 -2.0973755e+03 - -1.9735549e+03 -2.0834448e+03 -2.0940702e+03 - -1.9835183e+03 -2.0747493e+03 -2.0912425e+03 - -1.9943977e+03 -2.0647844e+03 -2.0889646e+03 - -2.0059635e+03 -2.0538327e+03 -2.0872947e+03 - -2.0179643e+03 -2.0421844e+03 -2.0862753e+03 - -2.0301318e+03 -2.0301318e+03 -2.0859326e+03 - -2.0421844e+03 -2.0179643e+03 -2.0862753e+03 - -2.0538327e+03 -2.0059635e+03 -2.0872947e+03 - -2.0647844e+03 -1.9943977e+03 -2.0889646e+03 - -2.0747493e+03 -1.9835183e+03 -2.0912425e+03 - -2.0834448e+03 -1.9735549e+03 -2.0940702e+03 - -2.0905996e+03 -1.9647133e+03 -2.0973755e+03 - -2.0959588e+03 -1.9571723e+03 -2.1010744e+03 - -2.0992864e+03 -1.9510829e+03 -2.1050721e+03 - -2.1003682e+03 -1.9465672e+03 -2.1092662e+03 - -2.0990136e+03 -1.9437190e+03 -2.1135482e+03 - -2.0950571e+03 -1.9426044e+03 -2.1178056e+03 - -2.0883580e+03 -1.9432632e+03 -2.1219243e+03 - -2.0788008e+03 -1.9457105e+03 -2.1257900e+03 - -2.0662942e+03 -1.9499389e+03 -2.1292906e+03 - -2.0507703e+03 -1.9559206e+03 -2.1323169e+03 - -2.0321830e+03 -1.9636096e+03 -2.1347648e+03 - -2.0105065e+03 -1.9729439e+03 -2.1365362e+03 - -1.9857336e+03 -1.9838473e+03 -2.1375404e+03 - -1.9578743e+03 -1.9962315e+03 -2.1376947e+03 - -1.9269535e+03 -2.0099973e+03 -2.1369262e+03 - -1.8930097e+03 -2.0250363e+03 -2.1351726e+03 - -1.8560936e+03 -2.0412313e+03 -2.1323832e+03 - -1.8162661e+03 -2.0584572e+03 -2.1285206e+03 - -1.7735969e+03 -2.0765809e+03 -2.1235623e+03 - -1.7281633e+03 -2.0954611e+03 -2.1175032e+03 - -1.6800483e+03 -2.1149467e+03 -2.1103583e+03 - -1.6293389e+03 -2.1348747e+03 -2.1021670e+03 - -1.5761242e+03 -2.1550666e+03 -2.0929996e+03 - -1.5204919e+03 -2.1753221e+03 -2.0829663e+03 - -1.4625246e+03 -2.1954090e+03 -2.0722327e+03 - -1.4022916e+03 -2.2150458e+03 -2.0610439e+03 - -1.3398358e+03 -2.2338725e+03 -2.0497673e+03 - -1.2751468e+03 -2.2513950e+03 -2.0389708e+03 - -1.2081009e+03 -2.2668776e+03 -2.0295751e+03 - -1.1383160e+03 -2.2791117e+03 -2.0231811e+03 - -1.0647362e+03 -2.2858665e+03 -2.0228475e+03 - -9.8420167e+02 -2.2823793e+03 -2.0352271e+03 - -8.8489640e+02 -2.2563726e+03 -2.0776167e+03 - -7.0065250e+02 -2.1693779e+03 -2.2043809e+03 - 0.0000000e+00 -2.0159189e+03 -2.4230026e+03 - 7.0065250e+02 -2.1693779e+03 -2.2043809e+03 - 8.8489640e+02 -2.2563726e+03 -2.0776167e+03 - 9.8420167e+02 -2.2823793e+03 -2.0352271e+03 - 1.0647362e+03 -2.2858665e+03 -2.0228475e+03 - 1.1383160e+03 -2.2791117e+03 -2.0231811e+03 - 1.2081009e+03 -2.2668776e+03 -2.0295751e+03 - 1.2751468e+03 -2.2513950e+03 -2.0389708e+03 - 1.3398358e+03 -2.2338725e+03 -2.0497673e+03 - 1.4022916e+03 -2.2150458e+03 -2.0610439e+03 - 1.4625246e+03 -2.1954090e+03 -2.0722327e+03 - 1.5204919e+03 -2.1753221e+03 -2.0829663e+03 - 1.5761242e+03 -2.1550666e+03 -2.0929996e+03 - 1.6293389e+03 -2.1348747e+03 -2.1021670e+03 - 1.6800483e+03 -2.1149467e+03 -2.1103583e+03 - 1.7281633e+03 -2.0954611e+03 -2.1175032e+03 - 1.7735969e+03 -2.0765809e+03 -2.1235623e+03 - 1.8162661e+03 -2.0584572e+03 -2.1285206e+03 - 1.8560936e+03 -2.0412313e+03 -2.1323832e+03 - 1.8930097e+03 -2.0250363e+03 -2.1351726e+03 - 1.9269535e+03 -2.0099973e+03 -2.1369262e+03 - 1.9578743e+03 -1.9962315e+03 -2.1376947e+03 - 1.9857336e+03 -1.9838473e+03 -2.1375404e+03 - 2.0105065e+03 -1.9729439e+03 -2.1365362e+03 - 2.0321830e+03 -1.9636096e+03 -2.1347648e+03 - 2.0507703e+03 -1.9559206e+03 -2.1323169e+03 - 2.0662942e+03 -1.9499389e+03 -2.1292906e+03 - 2.0788008e+03 -1.9457105e+03 -2.1257900e+03 - 2.0883580e+03 -1.9432632e+03 -2.1219243e+03 - 2.0950571e+03 -1.9426044e+03 -2.1178056e+03 - 2.0990136e+03 -1.9437190e+03 -2.1135482e+03 - 2.1003682e+03 -1.9465672e+03 -2.1092662e+03 - 2.0992864e+03 -1.9510829e+03 -2.1050721e+03 - 2.0959588e+03 -1.9571723e+03 -2.1010744e+03 - 2.0905996e+03 -1.9647133e+03 -2.0973755e+03 - 2.0834448e+03 -1.9735549e+03 -2.0940702e+03 - 2.0747493e+03 -1.9835183e+03 -2.0912425e+03 - 2.0647844e+03 -1.9943977e+03 -2.0889646e+03 - 2.0538327e+03 -2.0059635e+03 -2.0872947e+03 - 2.0421844e+03 -2.0179643e+03 -2.0862753e+03 - 2.0301318e+03 -2.0301318e+03 -2.0859326e+03 - 2.0179643e+03 -2.0421844e+03 -2.0862753e+03 - 2.0059635e+03 -2.0538327e+03 -2.0872947e+03 - 1.9943977e+03 -2.0647844e+03 -2.0889646e+03 - 1.9835183e+03 -2.0747493e+03 -2.0912425e+03 - 1.9735549e+03 -2.0834448e+03 -2.0940702e+03 - 1.9647133e+03 -2.0905996e+03 -2.0973755e+03 - 1.9571723e+03 -2.0959588e+03 -2.1010744e+03 - 1.9510829e+03 -2.0992864e+03 -2.1050721e+03 - 1.9465672e+03 -2.1003682e+03 -2.1092662e+03 - 1.9437190e+03 -2.0990136e+03 -2.1135482e+03 - 1.9426044e+03 -2.0950571e+03 -2.1178056e+03 - 1.9432632e+03 -2.0883580e+03 -2.1219243e+03 - 1.9457105e+03 -2.0788008e+03 -2.1257900e+03 - 1.9499389e+03 -2.0662942e+03 -2.1292906e+03 - 1.9559206e+03 -2.0507703e+03 -2.1323169e+03 - 1.9636096e+03 -2.0321830e+03 -2.1347648e+03 - 1.9729439e+03 -2.0105065e+03 -2.1365362e+03 - 1.9838473e+03 -1.9857336e+03 -2.1375404e+03 - 1.9962315e+03 -1.9578743e+03 -2.1376947e+03 - 2.0099973e+03 -1.9269535e+03 -2.1369262e+03 - 2.0250363e+03 -1.8930097e+03 -2.1351726e+03 - 2.0412313e+03 -1.8560936e+03 -2.1323832e+03 - 2.0584572e+03 -1.8162661e+03 -2.1285206e+03 - 2.0765809e+03 -1.7735969e+03 -2.1235623e+03 - 2.0954611e+03 -1.7281633e+03 -2.1175032e+03 - 2.1149467e+03 -1.6800483e+03 -2.1103583e+03 - 2.1348747e+03 -1.6293389e+03 -2.1021670e+03 - 2.1550666e+03 -1.5761242e+03 -2.0929996e+03 - 2.1753221e+03 -1.5204919e+03 -2.0829663e+03 - 2.1954090e+03 -1.4625246e+03 -2.0722327e+03 - 2.2150458e+03 -1.4022916e+03 -2.0610439e+03 - 2.2338725e+03 -1.3398358e+03 -2.0497673e+03 - 2.2513950e+03 -1.2751468e+03 -2.0389708e+03 - 2.2668776e+03 -1.2081009e+03 -2.0295751e+03 - 2.2791117e+03 -1.1383160e+03 -2.0231811e+03 - 2.2858665e+03 -1.0647362e+03 -2.0228475e+03 - 2.2823793e+03 -9.8420167e+02 -2.0352271e+03 - 2.2563726e+03 -8.8489640e+02 -2.0776167e+03 - 2.1693779e+03 -7.0065250e+02 -2.2043809e+03 - 2.0159189e+03 0.0000000e+00 -2.4230026e+03 - 1.9768876e+03 4.8134273e-09 -2.4756330e+03 - 2.0181315e+03 4.6207630e+02 -2.4154854e+03 - 2.0829264e+03 7.4506979e+02 -2.3192748e+03 - 2.1260012e+03 9.1041528e+02 -2.2518834e+03 - 2.1481647e+03 1.0244862e+03 -2.2123941e+03 - 2.1566619e+03 1.1154967e+03 -2.1906356e+03 - 2.1565194e+03 1.1946538e+03 -2.1795694e+03 - 2.1507701e+03 1.2667472e+03 -2.1749917e+03 - 2.1412710e+03 1.3339984e+03 -2.1743768e+03 - 2.1292148e+03 1.3975050e+03 -2.1761519e+03 - 2.1154102e+03 1.4578283e+03 -2.1792990e+03 - 2.1004359e+03 1.5152561e+03 -2.1831370e+03 - 2.0847272e+03 1.5699277e+03 -2.1871975e+03 - 2.0686267e+03 1.6218990e+03 -2.1911528e+03 - 2.0524151e+03 1.6711775e+03 -2.1947721e+03 - 2.0363302e+03 1.7177427e+03 -2.1978933e+03 - 2.0205792e+03 1.7615582e+03 -2.2004055e+03 - 2.0053464e+03 1.8025798e+03 -2.2022367e+03 - 1.9907984e+03 1.8407611e+03 -2.2033458e+03 - 1.9770871e+03 1.8760570e+03 -2.2037165e+03 - 1.9643520e+03 1.9084268e+03 -2.2033530e+03 - 1.9527208e+03 1.9378372e+03 -2.2022774e+03 - 1.9423099e+03 1.9642639e+03 -2.2005265e+03 - 1.9332241e+03 1.9876939e+03 -2.1981503e+03 - 1.9255559e+03 2.0081278e+03 -2.1952099e+03 - 1.9193841e+03 2.0255808e+03 -2.1917766e+03 - 1.9147728e+03 2.0400855e+03 -2.1879298e+03 - 1.9117696e+03 2.0516926e+03 -2.1837560e+03 - 1.9104037e+03 2.0604733e+03 -2.1793473e+03 - 1.9106844e+03 2.0665198e+03 -2.1747998e+03 - 1.9125986e+03 2.0699467e+03 -2.1702121e+03 - 1.9161100e+03 2.0708914e+03 -2.1656835e+03 - 1.9211569e+03 2.0695144e+03 -2.1613121e+03 - 1.9276513e+03 2.0659986e+03 -2.1571932e+03 - 1.9354787e+03 2.0605483e+03 -2.1534169e+03 - 1.9444976e+03 2.0533876e+03 -2.1500666e+03 - 1.9545404e+03 2.0447575e+03 -2.1472165e+03 - 1.9654146e+03 2.0349135e+03 -2.1449303e+03 - 1.9769053e+03 2.0241212e+03 -2.1432594e+03 - 1.9887778e+03 2.0126526e+03 -2.1422415e+03 - 2.0007812e+03 2.0007812e+03 -2.1418996e+03 - 2.0126526e+03 1.9887778e+03 -2.1422415e+03 - 2.0241212e+03 1.9769053e+03 -2.1432594e+03 - 2.0349135e+03 1.9654146e+03 -2.1449303e+03 - 2.0447575e+03 1.9545404e+03 -2.1472165e+03 - 2.0533876e+03 1.9444976e+03 -2.1500666e+03 - 2.0605483e+03 1.9354787e+03 -2.1534169e+03 - 2.0659986e+03 1.9276513e+03 -2.1571932e+03 - 2.0695144e+03 1.9211569e+03 -2.1613121e+03 - 2.0708914e+03 1.9161100e+03 -2.1656835e+03 - 2.0699467e+03 1.9125986e+03 -2.1702121e+03 - 2.0665198e+03 1.9106844e+03 -2.1747998e+03 - 2.0604733e+03 1.9104037e+03 -2.1793473e+03 - 2.0516926e+03 1.9117696e+03 -2.1837560e+03 - 2.0400855e+03 1.9147728e+03 -2.1879298e+03 - 2.0255808e+03 1.9193841e+03 -2.1917766e+03 - 2.0081278e+03 1.9255559e+03 -2.1952099e+03 - 1.9876939e+03 1.9332241e+03 -2.1981503e+03 - 1.9642639e+03 1.9423099e+03 -2.2005265e+03 - 1.9378372e+03 1.9527208e+03 -2.2022774e+03 - 1.9084268e+03 1.9643520e+03 -2.2033530e+03 - 1.8760570e+03 1.9770871e+03 -2.2037165e+03 - 1.8407611e+03 1.9907984e+03 -2.2033458e+03 - 1.8025798e+03 2.0053464e+03 -2.2022367e+03 - 1.7615582e+03 2.0205792e+03 -2.2004055e+03 - 1.7177427e+03 2.0363302e+03 -2.1978933e+03 - 1.6711775e+03 2.0524151e+03 -2.1947721e+03 - 1.6218990e+03 2.0686267e+03 -2.1911528e+03 - 1.5699277e+03 2.0847272e+03 -2.1871975e+03 - 1.5152561e+03 2.1004359e+03 -2.1831370e+03 - 1.4578283e+03 2.1154102e+03 -2.1792990e+03 - 1.3975050e+03 2.1292148e+03 -2.1761519e+03 - 1.3339984e+03 2.1412710e+03 -2.1743768e+03 - 1.2667472e+03 2.1507701e+03 -2.1749917e+03 - 1.1946538e+03 2.1565194e+03 -2.1795694e+03 - 1.1154967e+03 2.1566619e+03 -2.1906356e+03 - 1.0244862e+03 2.1481647e+03 -2.2123941e+03 - 9.1041528e+02 2.1260012e+03 -2.2518834e+03 - 7.4506979e+02 2.0829264e+03 -2.3192748e+03 - 4.6207630e+02 2.0181315e+03 -2.4154854e+03 - 0.0000000e+00 1.9768876e+03 -2.4756330e+03 - -4.6207630e+02 2.0181315e+03 -2.4154854e+03 - -7.4506979e+02 2.0829264e+03 -2.3192748e+03 - -9.1041528e+02 2.1260012e+03 -2.2518834e+03 - -1.0244862e+03 2.1481647e+03 -2.2123941e+03 - -1.1154967e+03 2.1566619e+03 -2.1906356e+03 - -1.1946538e+03 2.1565194e+03 -2.1795694e+03 - -1.2667472e+03 2.1507701e+03 -2.1749917e+03 - -1.3339984e+03 2.1412710e+03 -2.1743768e+03 - -1.3975050e+03 2.1292148e+03 -2.1761519e+03 - -1.4578283e+03 2.1154102e+03 -2.1792990e+03 - -1.5152561e+03 2.1004359e+03 -2.1831370e+03 - -1.5699277e+03 2.0847272e+03 -2.1871975e+03 - -1.6218990e+03 2.0686267e+03 -2.1911528e+03 - -1.6711775e+03 2.0524151e+03 -2.1947721e+03 - -1.7177427e+03 2.0363302e+03 -2.1978933e+03 - -1.7615582e+03 2.0205792e+03 -2.2004055e+03 - -1.8025798e+03 2.0053464e+03 -2.2022367e+03 - -1.8407611e+03 1.9907984e+03 -2.2033458e+03 - -1.8760570e+03 1.9770871e+03 -2.2037165e+03 - -1.9084268e+03 1.9643520e+03 -2.2033530e+03 - -1.9378372e+03 1.9527208e+03 -2.2022774e+03 - -1.9642639e+03 1.9423099e+03 -2.2005265e+03 - -1.9876939e+03 1.9332241e+03 -2.1981503e+03 - -2.0081278e+03 1.9255559e+03 -2.1952099e+03 - -2.0255808e+03 1.9193841e+03 -2.1917766e+03 - -2.0400855e+03 1.9147728e+03 -2.1879298e+03 - -2.0516926e+03 1.9117696e+03 -2.1837560e+03 - -2.0604733e+03 1.9104037e+03 -2.1793473e+03 - -2.0665198e+03 1.9106844e+03 -2.1747998e+03 - -2.0699467e+03 1.9125986e+03 -2.1702121e+03 - -2.0708914e+03 1.9161100e+03 -2.1656835e+03 - -2.0695144e+03 1.9211569e+03 -2.1613121e+03 - -2.0659986e+03 1.9276513e+03 -2.1571932e+03 - -2.0605483e+03 1.9354787e+03 -2.1534169e+03 - -2.0533876e+03 1.9444976e+03 -2.1500666e+03 - -2.0447575e+03 1.9545404e+03 -2.1472165e+03 - -2.0349135e+03 1.9654146e+03 -2.1449303e+03 - -2.0241212e+03 1.9769053e+03 -2.1432594e+03 - -2.0126526e+03 1.9887778e+03 -2.1422415e+03 - -2.0007812e+03 2.0007812e+03 -2.1418996e+03 - -1.9887778e+03 2.0126526e+03 -2.1422415e+03 - -1.9769053e+03 2.0241212e+03 -2.1432594e+03 - -1.9654146e+03 2.0349135e+03 -2.1449303e+03 - -1.9545404e+03 2.0447575e+03 -2.1472165e+03 - -1.9444976e+03 2.0533876e+03 -2.1500666e+03 - -1.9354787e+03 2.0605483e+03 -2.1534169e+03 - -1.9276513e+03 2.0659986e+03 -2.1571932e+03 - -1.9211569e+03 2.0695144e+03 -2.1613121e+03 - -1.9161100e+03 2.0708914e+03 -2.1656835e+03 - -1.9125986e+03 2.0699467e+03 -2.1702121e+03 - -1.9106844e+03 2.0665198e+03 -2.1747998e+03 - -1.9104037e+03 2.0604733e+03 -2.1793473e+03 - -1.9117696e+03 2.0516926e+03 -2.1837560e+03 - -1.9147728e+03 2.0400855e+03 -2.1879298e+03 - -1.9193841e+03 2.0255808e+03 -2.1917766e+03 - -1.9255559e+03 2.0081278e+03 -2.1952099e+03 - -1.9332241e+03 1.9876939e+03 -2.1981503e+03 - -1.9423099e+03 1.9642639e+03 -2.2005265e+03 - -1.9527208e+03 1.9378372e+03 -2.2022774e+03 - -1.9643520e+03 1.9084268e+03 -2.2033530e+03 - -1.9770871e+03 1.8760570e+03 -2.2037165e+03 - -1.9907984e+03 1.8407611e+03 -2.2033458e+03 - -2.0053464e+03 1.8025798e+03 -2.2022367e+03 - -2.0205792e+03 1.7615582e+03 -2.2004055e+03 - -2.0363302e+03 1.7177427e+03 -2.1978933e+03 - -2.0524151e+03 1.6711775e+03 -2.1947721e+03 - -2.0686267e+03 1.6218990e+03 -2.1911528e+03 - -2.0847272e+03 1.5699277e+03 -2.1871975e+03 - -2.1004359e+03 1.5152561e+03 -2.1831370e+03 - -2.1154102e+03 1.4578283e+03 -2.1792990e+03 - -2.1292148e+03 1.3975050e+03 -2.1761519e+03 - -2.1412710e+03 1.3339984e+03 -2.1743768e+03 - -2.1507701e+03 1.2667472e+03 -2.1749917e+03 - -2.1565194e+03 1.1946538e+03 -2.1795694e+03 - -2.1566619e+03 1.1154967e+03 -2.1906356e+03 - -2.1481647e+03 1.0244862e+03 -2.2123941e+03 - -2.1260012e+03 9.1041528e+02 -2.2518834e+03 - -2.0829264e+03 7.4506979e+02 -2.3192748e+03 - -2.0181315e+03 4.6207630e+02 -2.4154854e+03 - -1.9768876e+03 2.4067136e-09 -2.4756330e+03 - -2.0181315e+03 -4.6207630e+02 -2.4154854e+03 - -2.0829264e+03 -7.4506979e+02 -2.3192748e+03 - -2.1260012e+03 -9.1041528e+02 -2.2518834e+03 - -2.1481647e+03 -1.0244862e+03 -2.2123941e+03 - -2.1566619e+03 -1.1154967e+03 -2.1906356e+03 - -2.1565194e+03 -1.1946538e+03 -2.1795694e+03 - -2.1507701e+03 -1.2667472e+03 -2.1749917e+03 - -2.1412710e+03 -1.3339984e+03 -2.1743768e+03 - -2.1292148e+03 -1.3975050e+03 -2.1761519e+03 - -2.1154102e+03 -1.4578283e+03 -2.1792990e+03 - -2.1004359e+03 -1.5152561e+03 -2.1831370e+03 - -2.0847272e+03 -1.5699277e+03 -2.1871975e+03 - -2.0686267e+03 -1.6218990e+03 -2.1911528e+03 - -2.0524151e+03 -1.6711775e+03 -2.1947721e+03 - -2.0363302e+03 -1.7177427e+03 -2.1978933e+03 - -2.0205792e+03 -1.7615582e+03 -2.2004055e+03 - -2.0053464e+03 -1.8025798e+03 -2.2022367e+03 - -1.9907984e+03 -1.8407611e+03 -2.2033458e+03 - -1.9770871e+03 -1.8760570e+03 -2.2037165e+03 - -1.9643520e+03 -1.9084268e+03 -2.2033530e+03 - -1.9527208e+03 -1.9378372e+03 -2.2022774e+03 - -1.9423099e+03 -1.9642639e+03 -2.2005265e+03 - -1.9332241e+03 -1.9876939e+03 -2.1981503e+03 - -1.9255559e+03 -2.0081278e+03 -2.1952099e+03 - -1.9193841e+03 -2.0255808e+03 -2.1917766e+03 - -1.9147728e+03 -2.0400855e+03 -2.1879298e+03 - -1.9117696e+03 -2.0516926e+03 -2.1837560e+03 - -1.9104037e+03 -2.0604733e+03 -2.1793473e+03 - -1.9106844e+03 -2.0665198e+03 -2.1747998e+03 - -1.9125986e+03 -2.0699467e+03 -2.1702121e+03 - -1.9161100e+03 -2.0708914e+03 -2.1656835e+03 - -1.9211569e+03 -2.0695144e+03 -2.1613121e+03 - -1.9276513e+03 -2.0659986e+03 -2.1571932e+03 - -1.9354787e+03 -2.0605483e+03 -2.1534169e+03 - -1.9444976e+03 -2.0533876e+03 -2.1500666e+03 - -1.9545404e+03 -2.0447575e+03 -2.1472165e+03 - -1.9654146e+03 -2.0349135e+03 -2.1449303e+03 - -1.9769053e+03 -2.0241212e+03 -2.1432594e+03 - -1.9887778e+03 -2.0126526e+03 -2.1422415e+03 - -2.0007812e+03 -2.0007812e+03 -2.1418996e+03 - -2.0126526e+03 -1.9887778e+03 -2.1422415e+03 - -2.0241212e+03 -1.9769053e+03 -2.1432594e+03 - -2.0349135e+03 -1.9654146e+03 -2.1449303e+03 - -2.0447575e+03 -1.9545404e+03 -2.1472165e+03 - -2.0533876e+03 -1.9444976e+03 -2.1500666e+03 - -2.0605483e+03 -1.9354787e+03 -2.1534169e+03 - -2.0659986e+03 -1.9276513e+03 -2.1571932e+03 - -2.0695144e+03 -1.9211569e+03 -2.1613121e+03 - -2.0708914e+03 -1.9161100e+03 -2.1656835e+03 - -2.0699467e+03 -1.9125986e+03 -2.1702121e+03 - -2.0665198e+03 -1.9106844e+03 -2.1747998e+03 - -2.0604733e+03 -1.9104037e+03 -2.1793473e+03 - -2.0516926e+03 -1.9117696e+03 -2.1837560e+03 - -2.0400855e+03 -1.9147728e+03 -2.1879298e+03 - -2.0255808e+03 -1.9193841e+03 -2.1917766e+03 - -2.0081278e+03 -1.9255559e+03 -2.1952099e+03 - -1.9876939e+03 -1.9332241e+03 -2.1981503e+03 - -1.9642639e+03 -1.9423099e+03 -2.2005265e+03 - -1.9378372e+03 -1.9527208e+03 -2.2022774e+03 - -1.9084268e+03 -1.9643520e+03 -2.2033530e+03 - -1.8760570e+03 -1.9770871e+03 -2.2037165e+03 - -1.8407611e+03 -1.9907984e+03 -2.2033458e+03 - -1.8025798e+03 -2.0053464e+03 -2.2022367e+03 - -1.7615582e+03 -2.0205792e+03 -2.2004055e+03 - -1.7177427e+03 -2.0363302e+03 -2.1978933e+03 - -1.6711775e+03 -2.0524151e+03 -2.1947721e+03 - -1.6218990e+03 -2.0686267e+03 -2.1911528e+03 - -1.5699277e+03 -2.0847272e+03 -2.1871975e+03 - -1.5152561e+03 -2.1004359e+03 -2.1831370e+03 - -1.4578283e+03 -2.1154102e+03 -2.1792990e+03 - -1.3975050e+03 -2.1292148e+03 -2.1761519e+03 - -1.3339984e+03 -2.1412710e+03 -2.1743768e+03 - -1.2667472e+03 -2.1507701e+03 -2.1749917e+03 - -1.1946538e+03 -2.1565194e+03 -2.1795694e+03 - -1.1154967e+03 -2.1566619e+03 -2.1906356e+03 - -1.0244862e+03 -2.1481647e+03 -2.2123941e+03 - -9.1041528e+02 -2.1260012e+03 -2.2518834e+03 - -7.4506979e+02 -2.0829264e+03 -2.3192748e+03 - -4.6207630e+02 -2.0181315e+03 -2.4154854e+03 - -4.8134273e-09 -1.9768876e+03 -2.4756330e+03 - 4.6207630e+02 -2.0181315e+03 -2.4154854e+03 - 7.4506979e+02 -2.0829264e+03 -2.3192748e+03 - 9.1041528e+02 -2.1260012e+03 -2.2518834e+03 - 1.0244862e+03 -2.1481647e+03 -2.2123941e+03 - 1.1154967e+03 -2.1566619e+03 -2.1906356e+03 - 1.1946538e+03 -2.1565194e+03 -2.1795694e+03 - 1.2667472e+03 -2.1507701e+03 -2.1749917e+03 - 1.3339984e+03 -2.1412710e+03 -2.1743768e+03 - 1.3975050e+03 -2.1292148e+03 -2.1761519e+03 - 1.4578283e+03 -2.1154102e+03 -2.1792990e+03 - 1.5152561e+03 -2.1004359e+03 -2.1831370e+03 - 1.5699277e+03 -2.0847272e+03 -2.1871975e+03 - 1.6218990e+03 -2.0686267e+03 -2.1911528e+03 - 1.6711775e+03 -2.0524151e+03 -2.1947721e+03 - 1.7177427e+03 -2.0363302e+03 -2.1978933e+03 - 1.7615582e+03 -2.0205792e+03 -2.2004055e+03 - 1.8025798e+03 -2.0053464e+03 -2.2022367e+03 - 1.8407611e+03 -1.9907984e+03 -2.2033458e+03 - 1.8760570e+03 -1.9770871e+03 -2.2037165e+03 - 1.9084268e+03 -1.9643520e+03 -2.2033530e+03 - 1.9378372e+03 -1.9527208e+03 -2.2022774e+03 - 1.9642639e+03 -1.9423099e+03 -2.2005265e+03 - 1.9876939e+03 -1.9332241e+03 -2.1981503e+03 - 2.0081278e+03 -1.9255559e+03 -2.1952099e+03 - 2.0255808e+03 -1.9193841e+03 -2.1917766e+03 - 2.0400855e+03 -1.9147728e+03 -2.1879298e+03 - 2.0516926e+03 -1.9117696e+03 -2.1837560e+03 - 2.0604733e+03 -1.9104037e+03 -2.1793473e+03 - 2.0665198e+03 -1.9106844e+03 -2.1747998e+03 - 2.0699467e+03 -1.9125986e+03 -2.1702121e+03 - 2.0708914e+03 -1.9161100e+03 -2.1656835e+03 - 2.0695144e+03 -1.9211569e+03 -2.1613121e+03 - 2.0659986e+03 -1.9276513e+03 -2.1571932e+03 - 2.0605483e+03 -1.9354787e+03 -2.1534169e+03 - 2.0533876e+03 -1.9444976e+03 -2.1500666e+03 - 2.0447575e+03 -1.9545404e+03 -2.1472165e+03 - 2.0349135e+03 -1.9654146e+03 -2.1449303e+03 - 2.0241212e+03 -1.9769053e+03 -2.1432594e+03 - 2.0126526e+03 -1.9887778e+03 -2.1422415e+03 - 2.0007812e+03 -2.0007812e+03 -2.1418996e+03 - 1.9887778e+03 -2.0126526e+03 -2.1422415e+03 - 1.9769053e+03 -2.0241212e+03 -2.1432594e+03 - 1.9654146e+03 -2.0349135e+03 -2.1449303e+03 - 1.9545404e+03 -2.0447575e+03 -2.1472165e+03 - 1.9444976e+03 -2.0533876e+03 -2.1500666e+03 - 1.9354787e+03 -2.0605483e+03 -2.1534169e+03 - 1.9276513e+03 -2.0659986e+03 -2.1571932e+03 - 1.9211569e+03 -2.0695144e+03 -2.1613121e+03 - 1.9161100e+03 -2.0708914e+03 -2.1656835e+03 - 1.9125986e+03 -2.0699467e+03 -2.1702121e+03 - 1.9106844e+03 -2.0665198e+03 -2.1747998e+03 - 1.9104037e+03 -2.0604733e+03 -2.1793473e+03 - 1.9117696e+03 -2.0516926e+03 -2.1837560e+03 - 1.9147728e+03 -2.0400855e+03 -2.1879298e+03 - 1.9193841e+03 -2.0255808e+03 -2.1917766e+03 - 1.9255559e+03 -2.0081278e+03 -2.1952099e+03 - 1.9332241e+03 -1.9876939e+03 -2.1981503e+03 - 1.9423099e+03 -1.9642639e+03 -2.2005265e+03 - 1.9527208e+03 -1.9378372e+03 -2.2022774e+03 - 1.9643520e+03 -1.9084268e+03 -2.2033530e+03 - 1.9770871e+03 -1.8760570e+03 -2.2037165e+03 - 1.9907984e+03 -1.8407611e+03 -2.2033458e+03 - 2.0053464e+03 -1.8025798e+03 -2.2022367e+03 - 2.0205792e+03 -1.7615582e+03 -2.2004055e+03 - 2.0363302e+03 -1.7177427e+03 -2.1978933e+03 - 2.0524151e+03 -1.6711775e+03 -2.1947721e+03 - 2.0686267e+03 -1.6218990e+03 -2.1911528e+03 - 2.0847272e+03 -1.5699277e+03 -2.1871975e+03 - 2.1004359e+03 -1.5152561e+03 -2.1831370e+03 - 2.1154102e+03 -1.4578283e+03 -2.1792990e+03 - 2.1292148e+03 -1.3975050e+03 -2.1761519e+03 - 2.1412710e+03 -1.3339984e+03 -2.1743768e+03 - 2.1507701e+03 -1.2667472e+03 -2.1749917e+03 - 2.1565194e+03 -1.1946538e+03 -2.1795694e+03 - 2.1566619e+03 -1.1154967e+03 -2.1906356e+03 - 2.1481647e+03 -1.0244862e+03 -2.2123941e+03 - 2.1260012e+03 -9.1041528e+02 -2.2518834e+03 - 2.0829264e+03 -7.4506979e+02 -2.3192748e+03 - 2.0181315e+03 -4.6207630e+02 -2.4154854e+03 - 1.9768876e+03 -2.4067136e-09 -2.4756330e+03 - 1.9374258e+03 -2.4067136e-09 -2.5267162e+03 - 1.9542683e+03 3.5208682e+02 -2.5010734e+03 - 1.9898425e+03 6.2768873e+02 -2.4458607e+03 - 2.0230791e+03 8.2243318e+02 -2.3917706e+03 - 2.0461790e+03 9.6353969e+02 -2.3503296e+03 - 2.0593581e+03 1.0733033e+03 -2.3214382e+03 - 2.0647766e+03 1.1646177e+03 -2.3021484e+03 - 2.0644817e+03 1.2444131e+03 -2.2896540e+03 - 2.0600401e+03 1.3164363e+03 -2.2818342e+03 - 2.0525965e+03 1.3827703e+03 -2.2771763e+03 - 2.0429900e+03 1.4446070e+03 -2.2746115e+03 - 2.0318496e+03 1.5026436e+03 -2.2733799e+03 - 2.0196603e+03 1.5572926e+03 -2.2729354e+03 - 2.0068077e+03 1.6087969e+03 -2.2728816e+03 - 1.9936077e+03 1.6572958e+03 -2.2729296e+03 - 1.9803263e+03 1.7028641e+03 -2.2728690e+03 - 1.9671926e+03 1.7455364e+03 -2.2725486e+03 - 1.9544079e+03 1.7853226e+03 -2.2718621e+03 - 1.9421517e+03 1.8222181e+03 -2.2707393e+03 - 1.9305856e+03 1.8562114e+03 -2.2691387e+03 - 1.9198561e+03 1.8872888e+03 -2.2670422e+03 - 1.9100958e+03 1.9154391e+03 -2.2644517e+03 - 1.9014246e+03 1.9406564e+03 -2.2613857e+03 - 1.8939492e+03 1.9629431e+03 -2.2578772e+03 - 1.8877631e+03 1.9823122e+03 -2.2539715e+03 - 1.8829454e+03 1.9987895e+03 -2.2497244e+03 - 1.8795603e+03 2.0124156e+03 -2.2452008e+03 - 1.8776553e+03 2.0232475e+03 -2.2404730e+03 - 1.8772596e+03 2.0313602e+03 -2.2356193e+03 - 1.8783830e+03 2.0368482e+03 -2.2307225e+03 - 1.8810138e+03 2.0398260e+03 -2.2258681e+03 - 1.8851177e+03 2.0404286e+03 -2.2211430e+03 - 1.8906367e+03 2.0388123e+03 -2.2166332e+03 - 1.8974879e+03 2.0351533e+03 -2.2124226e+03 - 1.9055633e+03 2.0296472e+03 -2.2085907e+03 - 1.9147297e+03 2.0225071e+03 -2.2052111e+03 - 1.9248298e+03 2.0139617e+03 -2.2023495e+03 - 1.9356830e+03 2.0042519e+03 -2.2000624e+03 - 1.9470880e+03 1.9936277e+03 -2.1983952e+03 - 1.9588250e+03 1.9823447e+03 -2.1973812e+03 - 1.9706593e+03 1.9706593e+03 -2.1970409e+03 - 1.9823447e+03 1.9588250e+03 -2.1973812e+03 - 1.9936277e+03 1.9470880e+03 -2.1983952e+03 - 2.0042519e+03 1.9356830e+03 -2.2000624e+03 - 2.0139617e+03 1.9248298e+03 -2.2023495e+03 - 2.0225071e+03 1.9147297e+03 -2.2052111e+03 - 2.0296472e+03 1.9055633e+03 -2.2085907e+03 - 2.0351533e+03 1.8974879e+03 -2.2124226e+03 - 2.0388123e+03 1.8906367e+03 -2.2166332e+03 - 2.0404286e+03 1.8851177e+03 -2.2211430e+03 - 2.0398260e+03 1.8810138e+03 -2.2258681e+03 - 2.0368482e+03 1.8783830e+03 -2.2307225e+03 - 2.0313602e+03 1.8772596e+03 -2.2356193e+03 - 2.0232475e+03 1.8776553e+03 -2.2404730e+03 - 2.0124156e+03 1.8795603e+03 -2.2452008e+03 - 1.9987895e+03 1.8829454e+03 -2.2497244e+03 - 1.9823122e+03 1.8877631e+03 -2.2539715e+03 - 1.9629431e+03 1.8939492e+03 -2.2578772e+03 - 1.9406564e+03 1.9014246e+03 -2.2613857e+03 - 1.9154391e+03 1.9100958e+03 -2.2644517e+03 - 1.8872888e+03 1.9198561e+03 -2.2670422e+03 - 1.8562114e+03 1.9305856e+03 -2.2691387e+03 - 1.8222181e+03 1.9421517e+03 -2.2707393e+03 - 1.7853226e+03 1.9544079e+03 -2.2718621e+03 - 1.7455364e+03 1.9671926e+03 -2.2725486e+03 - 1.7028641e+03 1.9803263e+03 -2.2728690e+03 - 1.6572958e+03 1.9936077e+03 -2.2729296e+03 - 1.6087969e+03 2.0068077e+03 -2.2728816e+03 - 1.5572926e+03 2.0196603e+03 -2.2729354e+03 - 1.5026436e+03 2.0318496e+03 -2.2733799e+03 - 1.4446070e+03 2.0429900e+03 -2.2746115e+03 - 1.3827703e+03 2.0525965e+03 -2.2771763e+03 - 1.3164363e+03 2.0600401e+03 -2.2818342e+03 - 1.2444131e+03 2.0644817e+03 -2.2896540e+03 - 1.1646177e+03 2.0647766e+03 -2.3021484e+03 - 1.0733033e+03 2.0593581e+03 -2.3214382e+03 - 9.6353969e+02 2.0461790e+03 -2.3503296e+03 - 8.2243318e+02 2.0230791e+03 -2.3917706e+03 - 6.2768873e+02 1.9898425e+03 -2.4458607e+03 - 3.5208682e+02 1.9542683e+03 -2.5010734e+03 - -2.4067136e-09 1.9374258e+03 -2.5267162e+03 - -3.5208682e+02 1.9542683e+03 -2.5010734e+03 - -6.2768873e+02 1.9898425e+03 -2.4458607e+03 - -8.2243318e+02 2.0230791e+03 -2.3917706e+03 - -9.6353969e+02 2.0461790e+03 -2.3503296e+03 - -1.0733033e+03 2.0593581e+03 -2.3214382e+03 - -1.1646177e+03 2.0647766e+03 -2.3021484e+03 - -1.2444131e+03 2.0644817e+03 -2.2896540e+03 - -1.3164363e+03 2.0600401e+03 -2.2818342e+03 - -1.3827703e+03 2.0525965e+03 -2.2771763e+03 - -1.4446070e+03 2.0429900e+03 -2.2746115e+03 - -1.5026436e+03 2.0318496e+03 -2.2733799e+03 - -1.5572926e+03 2.0196603e+03 -2.2729354e+03 - -1.6087969e+03 2.0068077e+03 -2.2728816e+03 - -1.6572958e+03 1.9936077e+03 -2.2729296e+03 - -1.7028641e+03 1.9803263e+03 -2.2728690e+03 - -1.7455364e+03 1.9671926e+03 -2.2725486e+03 - -1.7853226e+03 1.9544079e+03 -2.2718621e+03 - -1.8222181e+03 1.9421517e+03 -2.2707393e+03 - -1.8562114e+03 1.9305856e+03 -2.2691387e+03 - -1.8872888e+03 1.9198561e+03 -2.2670422e+03 - -1.9154391e+03 1.9100958e+03 -2.2644517e+03 - -1.9406564e+03 1.9014246e+03 -2.2613857e+03 - -1.9629431e+03 1.8939492e+03 -2.2578772e+03 - -1.9823122e+03 1.8877631e+03 -2.2539715e+03 - -1.9987895e+03 1.8829454e+03 -2.2497244e+03 - -2.0124156e+03 1.8795603e+03 -2.2452008e+03 - -2.0232475e+03 1.8776553e+03 -2.2404730e+03 - -2.0313602e+03 1.8772596e+03 -2.2356193e+03 - -2.0368482e+03 1.8783830e+03 -2.2307225e+03 - -2.0398260e+03 1.8810138e+03 -2.2258681e+03 - -2.0404286e+03 1.8851177e+03 -2.2211430e+03 - -2.0388123e+03 1.8906367e+03 -2.2166332e+03 - -2.0351533e+03 1.8974879e+03 -2.2124226e+03 - -2.0296472e+03 1.9055633e+03 -2.2085907e+03 - -2.0225071e+03 1.9147297e+03 -2.2052111e+03 - -2.0139617e+03 1.9248298e+03 -2.2023495e+03 - -2.0042519e+03 1.9356830e+03 -2.2000624e+03 - -1.9936277e+03 1.9470880e+03 -2.1983952e+03 - -1.9823447e+03 1.9588250e+03 -2.1973812e+03 - -1.9706593e+03 1.9706593e+03 -2.1970409e+03 - -1.9588250e+03 1.9823447e+03 -2.1973812e+03 - -1.9470880e+03 1.9936277e+03 -2.1983952e+03 - -1.9356830e+03 2.0042519e+03 -2.2000624e+03 - -1.9248298e+03 2.0139617e+03 -2.2023495e+03 - -1.9147297e+03 2.0225071e+03 -2.2052111e+03 - -1.9055633e+03 2.0296472e+03 -2.2085907e+03 - -1.8974879e+03 2.0351533e+03 -2.2124226e+03 - -1.8906367e+03 2.0388123e+03 -2.2166332e+03 - -1.8851177e+03 2.0404286e+03 -2.2211430e+03 - -1.8810138e+03 2.0398260e+03 -2.2258681e+03 - -1.8783830e+03 2.0368482e+03 -2.2307225e+03 - -1.8772596e+03 2.0313602e+03 -2.2356193e+03 - -1.8776553e+03 2.0232475e+03 -2.2404730e+03 - -1.8795603e+03 2.0124156e+03 -2.2452008e+03 - -1.8829454e+03 1.9987895e+03 -2.2497244e+03 - -1.8877631e+03 1.9823122e+03 -2.2539715e+03 - -1.8939492e+03 1.9629431e+03 -2.2578772e+03 - -1.9014246e+03 1.9406564e+03 -2.2613857e+03 - -1.9100958e+03 1.9154391e+03 -2.2644517e+03 - -1.9198561e+03 1.8872888e+03 -2.2670422e+03 - -1.9305856e+03 1.8562114e+03 -2.2691387e+03 - -1.9421517e+03 1.8222181e+03 -2.2707393e+03 - -1.9544079e+03 1.7853226e+03 -2.2718621e+03 - -1.9671926e+03 1.7455364e+03 -2.2725486e+03 - -1.9803263e+03 1.7028641e+03 -2.2728690e+03 - -1.9936077e+03 1.6572958e+03 -2.2729296e+03 - -2.0068077e+03 1.6087969e+03 -2.2728816e+03 - -2.0196603e+03 1.5572926e+03 -2.2729354e+03 - -2.0318496e+03 1.5026436e+03 -2.2733799e+03 - -2.0429900e+03 1.4446070e+03 -2.2746115e+03 - -2.0525965e+03 1.3827703e+03 -2.2771763e+03 - -2.0600401e+03 1.3164363e+03 -2.2818342e+03 - -2.0644817e+03 1.2444131e+03 -2.2896540e+03 - -2.0647766e+03 1.1646177e+03 -2.3021484e+03 - -2.0593581e+03 1.0733033e+03 -2.3214382e+03 - -2.0461790e+03 9.6353969e+02 -2.3503296e+03 - -2.0230791e+03 8.2243318e+02 -2.3917706e+03 - -1.9898425e+03 6.2768873e+02 -2.4458607e+03 - -1.9542683e+03 3.5208682e+02 -2.5010734e+03 - -1.9374258e+03 0.0000000e+00 -2.5267162e+03 - -1.9542683e+03 -3.5208682e+02 -2.5010734e+03 - -1.9898425e+03 -6.2768873e+02 -2.4458607e+03 - -2.0230791e+03 -8.2243318e+02 -2.3917706e+03 - -2.0461790e+03 -9.6353969e+02 -2.3503296e+03 - -2.0593581e+03 -1.0733033e+03 -2.3214382e+03 - -2.0647766e+03 -1.1646177e+03 -2.3021484e+03 - -2.0644817e+03 -1.2444131e+03 -2.2896540e+03 - -2.0600401e+03 -1.3164363e+03 -2.2818342e+03 - -2.0525965e+03 -1.3827703e+03 -2.2771763e+03 - -2.0429900e+03 -1.4446070e+03 -2.2746115e+03 - -2.0318496e+03 -1.5026436e+03 -2.2733799e+03 - -2.0196603e+03 -1.5572926e+03 -2.2729354e+03 - -2.0068077e+03 -1.6087969e+03 -2.2728816e+03 - -1.9936077e+03 -1.6572958e+03 -2.2729296e+03 - -1.9803263e+03 -1.7028641e+03 -2.2728690e+03 - -1.9671926e+03 -1.7455364e+03 -2.2725486e+03 - -1.9544079e+03 -1.7853226e+03 -2.2718621e+03 - -1.9421517e+03 -1.8222181e+03 -2.2707393e+03 - -1.9305856e+03 -1.8562114e+03 -2.2691387e+03 - -1.9198561e+03 -1.8872888e+03 -2.2670422e+03 - -1.9100958e+03 -1.9154391e+03 -2.2644517e+03 - -1.9014246e+03 -1.9406564e+03 -2.2613857e+03 - -1.8939492e+03 -1.9629431e+03 -2.2578772e+03 - -1.8877631e+03 -1.9823122e+03 -2.2539715e+03 - -1.8829454e+03 -1.9987895e+03 -2.2497244e+03 - -1.8795603e+03 -2.0124156e+03 -2.2452008e+03 - -1.8776553e+03 -2.0232475e+03 -2.2404730e+03 - -1.8772596e+03 -2.0313602e+03 -2.2356193e+03 - -1.8783830e+03 -2.0368482e+03 -2.2307225e+03 - -1.8810138e+03 -2.0398260e+03 -2.2258681e+03 - -1.8851177e+03 -2.0404286e+03 -2.2211430e+03 - -1.8906367e+03 -2.0388123e+03 -2.2166332e+03 - -1.8974879e+03 -2.0351533e+03 -2.2124226e+03 - -1.9055633e+03 -2.0296472e+03 -2.2085907e+03 - -1.9147297e+03 -2.0225071e+03 -2.2052111e+03 - -1.9248298e+03 -2.0139617e+03 -2.2023495e+03 - -1.9356830e+03 -2.0042519e+03 -2.2000624e+03 - -1.9470880e+03 -1.9936277e+03 -2.1983952e+03 - -1.9588250e+03 -1.9823447e+03 -2.1973812e+03 - -1.9706593e+03 -1.9706593e+03 -2.1970409e+03 - -1.9823447e+03 -1.9588250e+03 -2.1973812e+03 - -1.9936277e+03 -1.9470880e+03 -2.1983952e+03 - -2.0042519e+03 -1.9356830e+03 -2.2000624e+03 - -2.0139617e+03 -1.9248298e+03 -2.2023495e+03 - -2.0225071e+03 -1.9147297e+03 -2.2052111e+03 - -2.0296472e+03 -1.9055633e+03 -2.2085907e+03 - -2.0351533e+03 -1.8974879e+03 -2.2124226e+03 - -2.0388123e+03 -1.8906367e+03 -2.2166332e+03 - -2.0404286e+03 -1.8851177e+03 -2.2211430e+03 - -2.0398260e+03 -1.8810138e+03 -2.2258681e+03 - -2.0368482e+03 -1.8783830e+03 -2.2307225e+03 - -2.0313602e+03 -1.8772596e+03 -2.2356193e+03 - -2.0232475e+03 -1.8776553e+03 -2.2404730e+03 - -2.0124156e+03 -1.8795603e+03 -2.2452008e+03 - -1.9987895e+03 -1.8829454e+03 -2.2497244e+03 - -1.9823122e+03 -1.8877631e+03 -2.2539715e+03 - -1.9629431e+03 -1.8939492e+03 -2.2578772e+03 - -1.9406564e+03 -1.9014246e+03 -2.2613857e+03 - -1.9154391e+03 -1.9100958e+03 -2.2644517e+03 - -1.8872888e+03 -1.9198561e+03 -2.2670422e+03 - -1.8562114e+03 -1.9305856e+03 -2.2691387e+03 - -1.8222181e+03 -1.9421517e+03 -2.2707393e+03 - -1.7853226e+03 -1.9544079e+03 -2.2718621e+03 - -1.7455364e+03 -1.9671926e+03 -2.2725486e+03 - -1.7028641e+03 -1.9803263e+03 -2.2728690e+03 - -1.6572958e+03 -1.9936077e+03 -2.2729296e+03 - -1.6087969e+03 -2.0068077e+03 -2.2728816e+03 - -1.5572926e+03 -2.0196603e+03 -2.2729354e+03 - -1.5026436e+03 -2.0318496e+03 -2.2733799e+03 - -1.4446070e+03 -2.0429900e+03 -2.2746115e+03 - -1.3827703e+03 -2.0525965e+03 -2.2771763e+03 - -1.3164363e+03 -2.0600401e+03 -2.2818342e+03 - -1.2444131e+03 -2.0644817e+03 -2.2896540e+03 - -1.1646177e+03 -2.0647766e+03 -2.3021484e+03 - -1.0733033e+03 -2.0593581e+03 -2.3214382e+03 - -9.6353969e+02 -2.0461790e+03 -2.3503296e+03 - -8.2243318e+02 -2.0230791e+03 -2.3917706e+03 - -6.2768873e+02 -1.9898425e+03 -2.4458607e+03 - -3.5208682e+02 -1.9542683e+03 -2.5010734e+03 - 2.4067136e-09 -1.9374258e+03 -2.5267162e+03 - 3.5208682e+02 -1.9542683e+03 -2.5010734e+03 - 6.2768873e+02 -1.9898425e+03 -2.4458607e+03 - 8.2243318e+02 -2.0230791e+03 -2.3917706e+03 - 9.6353969e+02 -2.0461790e+03 -2.3503296e+03 - 1.0733033e+03 -2.0593581e+03 -2.3214382e+03 - 1.1646177e+03 -2.0647766e+03 -2.3021484e+03 - 1.2444131e+03 -2.0644817e+03 -2.2896540e+03 - 1.3164363e+03 -2.0600401e+03 -2.2818342e+03 - 1.3827703e+03 -2.0525965e+03 -2.2771763e+03 - 1.4446070e+03 -2.0429900e+03 -2.2746115e+03 - 1.5026436e+03 -2.0318496e+03 -2.2733799e+03 - 1.5572926e+03 -2.0196603e+03 -2.2729354e+03 - 1.6087969e+03 -2.0068077e+03 -2.2728816e+03 - 1.6572958e+03 -1.9936077e+03 -2.2729296e+03 - 1.7028641e+03 -1.9803263e+03 -2.2728690e+03 - 1.7455364e+03 -1.9671926e+03 -2.2725486e+03 - 1.7853226e+03 -1.9544079e+03 -2.2718621e+03 - 1.8222181e+03 -1.9421517e+03 -2.2707393e+03 - 1.8562114e+03 -1.9305856e+03 -2.2691387e+03 - 1.8872888e+03 -1.9198561e+03 -2.2670422e+03 - 1.9154391e+03 -1.9100958e+03 -2.2644517e+03 - 1.9406564e+03 -1.9014246e+03 -2.2613857e+03 - 1.9629431e+03 -1.8939492e+03 -2.2578772e+03 - 1.9823122e+03 -1.8877631e+03 -2.2539715e+03 - 1.9987895e+03 -1.8829454e+03 -2.2497244e+03 - 2.0124156e+03 -1.8795603e+03 -2.2452008e+03 - 2.0232475e+03 -1.8776553e+03 -2.2404730e+03 - 2.0313602e+03 -1.8772596e+03 -2.2356193e+03 - 2.0368482e+03 -1.8783830e+03 -2.2307225e+03 - 2.0398260e+03 -1.8810138e+03 -2.2258681e+03 - 2.0404286e+03 -1.8851177e+03 -2.2211430e+03 - 2.0388123e+03 -1.8906367e+03 -2.2166332e+03 - 2.0351533e+03 -1.8974879e+03 -2.2124226e+03 - 2.0296472e+03 -1.9055633e+03 -2.2085907e+03 - 2.0225071e+03 -1.9147297e+03 -2.2052111e+03 - 2.0139617e+03 -1.9248298e+03 -2.2023495e+03 - 2.0042519e+03 -1.9356830e+03 -2.2000624e+03 - 1.9936277e+03 -1.9470880e+03 -2.1983952e+03 - 1.9823447e+03 -1.9588250e+03 -2.1973812e+03 - 1.9706593e+03 -1.9706593e+03 -2.1970409e+03 - 1.9588250e+03 -1.9823447e+03 -2.1973812e+03 - 1.9470880e+03 -1.9936277e+03 -2.1983952e+03 - 1.9356830e+03 -2.0042519e+03 -2.2000624e+03 - 1.9248298e+03 -2.0139617e+03 -2.2023495e+03 - 1.9147297e+03 -2.0225071e+03 -2.2052111e+03 - 1.9055633e+03 -2.0296472e+03 -2.2085907e+03 - 1.8974879e+03 -2.0351533e+03 -2.2124226e+03 - 1.8906367e+03 -2.0388123e+03 -2.2166332e+03 - 1.8851177e+03 -2.0404286e+03 -2.2211430e+03 - 1.8810138e+03 -2.0398260e+03 -2.2258681e+03 - 1.8783830e+03 -2.0368482e+03 -2.2307225e+03 - 1.8772596e+03 -2.0313602e+03 -2.2356193e+03 - 1.8776553e+03 -2.0232475e+03 -2.2404730e+03 - 1.8795603e+03 -2.0124156e+03 -2.2452008e+03 - 1.8829454e+03 -1.9987895e+03 -2.2497244e+03 - 1.8877631e+03 -1.9823122e+03 -2.2539715e+03 - 1.8939492e+03 -1.9629431e+03 -2.2578772e+03 - 1.9014246e+03 -1.9406564e+03 -2.2613857e+03 - 1.9100958e+03 -1.9154391e+03 -2.2644517e+03 - 1.9198561e+03 -1.8872888e+03 -2.2670422e+03 - 1.9305856e+03 -1.8562114e+03 -2.2691387e+03 - 1.9421517e+03 -1.8222181e+03 -2.2707393e+03 - 1.9544079e+03 -1.7853226e+03 -2.2718621e+03 - 1.9671926e+03 -1.7455364e+03 -2.2725486e+03 - 1.9803263e+03 -1.7028641e+03 -2.2728690e+03 - 1.9936077e+03 -1.6572958e+03 -2.2729296e+03 - 2.0068077e+03 -1.6087969e+03 -2.2728816e+03 - 2.0196603e+03 -1.5572926e+03 -2.2729354e+03 - 2.0318496e+03 -1.5026436e+03 -2.2733799e+03 - 2.0429900e+03 -1.4446070e+03 -2.2746115e+03 - 2.0525965e+03 -1.3827703e+03 -2.2771763e+03 - 2.0600401e+03 -1.3164363e+03 -2.2818342e+03 - 2.0644817e+03 -1.2444131e+03 -2.2896540e+03 - 2.0647766e+03 -1.1646177e+03 -2.3021484e+03 - 2.0593581e+03 -1.0733033e+03 -2.3214382e+03 - 2.0461790e+03 -9.6353969e+02 -2.3503296e+03 - 2.0230791e+03 -8.2243318e+02 -2.3917706e+03 - 1.9898425e+03 -6.2768873e+02 -2.4458607e+03 - 1.9542683e+03 -3.5208682e+02 -2.5010734e+03 - 1.9374258e+03 0.0000000e+00 -2.5267162e+03 - 1.8975702e+03 -2.4067136e-09 -2.5762669e+03 - 1.9061402e+03 2.9344830e+02 -2.5623627e+03 - 1.9265851e+03 5.4654402e+02 -2.5284848e+03 - 1.9492585e+03 7.4644826e+02 -2.4890407e+03 - 1.9679332e+03 9.0147959e+02 -2.4534431e+03 - 1.9806387e+03 1.0247110e+03 -2.4248222e+03 - 1.9876098e+03 1.1265745e+03 -2.4030330e+03 - 1.9897861e+03 1.2139859e+03 -2.3868686e+03 - 1.9881730e+03 1.2912676e+03 -2.3750116e+03 - 1.9836447e+03 1.3610906e+03 -2.3663311e+03 - 1.9769141e+03 1.4251169e+03 -2.3599314e+03 - 1.9685543e+03 1.4843935e+03 -2.3551242e+03 - 1.9590282e+03 1.5395881e+03 -2.3513867e+03 - 1.9487153e+03 1.5911296e+03 -2.3483229e+03 - 1.9379322e+03 1.6392945e+03 -2.3456342e+03 - 1.9269482e+03 1.6842601e+03 -2.3430959e+03 - 1.9159966e+03 1.7261390e+03 -2.3405414e+03 - 1.9052823e+03 1.7650012e+03 -2.3378490e+03 - 1.8949877e+03 1.8008895e+03 -2.3349335e+03 - 1.8852763e+03 1.8338302e+03 -2.3317391e+03 - 1.8762956e+03 1.8638402e+03 -2.3282344e+03 - 1.8681785e+03 1.8909334e+03 -2.3244083e+03 - 1.8610444e+03 1.9151246e+03 -2.3202669e+03 - 1.8549988e+03 1.9364332e+03 -2.3158311e+03 - 1.8501338e+03 1.9548864e+03 -2.3111345e+03 - 1.8465271e+03 1.9705215e+03 -2.3062212e+03 - 1.8442411e+03 1.9833883e+03 -2.3011449e+03 - 1.8433217e+03 1.9935508e+03 -2.2959666e+03 - 1.8437973e+03 2.0010889e+03 -2.2907534e+03 - 1.8456771e+03 2.0060994e+03 -2.2855770e+03 - 1.8489498e+03 2.0086976e+03 -2.2805122e+03 - 1.8535828e+03 2.0090171e+03 -2.2756351e+03 - 1.8595206e+03 2.0072101e+03 -2.2710217e+03 - 1.8666847e+03 2.0034472e+03 -2.2667459e+03 - 1.8749728e+03 1.9979161e+03 -2.2628783e+03 - 1.8842594e+03 1.9908201e+03 -2.2594839e+03 - 1.8943963e+03 1.9823762e+03 -2.2566211e+03 - 1.9052138e+03 1.9728124e+03 -2.2543399e+03 - 1.9165229e+03 1.9623644e+03 -2.2526807e+03 - 1.9281175e+03 1.9512726e+03 -2.2516731e+03 - 1.9397777e+03 1.9397777e+03 -2.2513352e+03 - 1.9512726e+03 1.9281175e+03 -2.2516731e+03 - 1.9623644e+03 1.9165229e+03 -2.2526807e+03 - 1.9728124e+03 1.9052138e+03 -2.2543399e+03 - 1.9823762e+03 1.8943963e+03 -2.2566211e+03 - 1.9908201e+03 1.8842594e+03 -2.2594839e+03 - 1.9979161e+03 1.8749728e+03 -2.2628783e+03 - 2.0034472e+03 1.8666847e+03 -2.2667459e+03 - 2.0072101e+03 1.8595206e+03 -2.2710217e+03 - 2.0090171e+03 1.8535828e+03 -2.2756351e+03 - 2.0086976e+03 1.8489498e+03 -2.2805122e+03 - 2.0060994e+03 1.8456771e+03 -2.2855770e+03 - 2.0010889e+03 1.8437973e+03 -2.2907534e+03 - 1.9935508e+03 1.8433217e+03 -2.2959666e+03 - 1.9833883e+03 1.8442411e+03 -2.3011449e+03 - 1.9705215e+03 1.8465271e+03 -2.3062212e+03 - 1.9548864e+03 1.8501338e+03 -2.3111345e+03 - 1.9364332e+03 1.8549988e+03 -2.3158311e+03 - 1.9151246e+03 1.8610444e+03 -2.3202669e+03 - 1.8909334e+03 1.8681785e+03 -2.3244083e+03 - 1.8638402e+03 1.8762956e+03 -2.3282344e+03 - 1.8338302e+03 1.8852763e+03 -2.3317391e+03 - 1.8008895e+03 1.8949877e+03 -2.3349335e+03 - 1.7650012e+03 1.9052823e+03 -2.3378490e+03 - 1.7261390e+03 1.9159966e+03 -2.3405414e+03 - 1.6842601e+03 1.9269482e+03 -2.3430959e+03 - 1.6392945e+03 1.9379322e+03 -2.3456342e+03 - 1.5911296e+03 1.9487153e+03 -2.3483229e+03 - 1.5395881e+03 1.9590282e+03 -2.3513867e+03 - 1.4843935e+03 1.9685543e+03 -2.3551242e+03 - 1.4251169e+03 1.9769141e+03 -2.3599314e+03 - 1.3610906e+03 1.9836447e+03 -2.3663311e+03 - 1.2912676e+03 1.9881730e+03 -2.3750116e+03 - 1.2139859e+03 1.9897861e+03 -2.3868686e+03 - 1.1265745e+03 1.9876098e+03 -2.4030330e+03 - 1.0247110e+03 1.9806387e+03 -2.4248222e+03 - 9.0147959e+02 1.9679332e+03 -2.4534431e+03 - 7.4644826e+02 1.9492585e+03 -2.4890407e+03 - 5.4654402e+02 1.9265851e+03 -2.5284848e+03 - 2.9344830e+02 1.9061402e+03 -2.5623627e+03 - -4.8134273e-09 1.8975702e+03 -2.5762669e+03 - -2.9344830e+02 1.9061402e+03 -2.5623627e+03 - -5.4654402e+02 1.9265851e+03 -2.5284848e+03 - -7.4644826e+02 1.9492585e+03 -2.4890407e+03 - -9.0147959e+02 1.9679332e+03 -2.4534431e+03 - -1.0247110e+03 1.9806387e+03 -2.4248222e+03 - -1.1265745e+03 1.9876098e+03 -2.4030330e+03 - -1.2139859e+03 1.9897861e+03 -2.3868686e+03 - -1.2912676e+03 1.9881730e+03 -2.3750116e+03 - -1.3610906e+03 1.9836447e+03 -2.3663311e+03 - -1.4251169e+03 1.9769141e+03 -2.3599314e+03 - -1.4843935e+03 1.9685543e+03 -2.3551242e+03 - -1.5395881e+03 1.9590282e+03 -2.3513867e+03 - -1.5911296e+03 1.9487153e+03 -2.3483229e+03 - -1.6392945e+03 1.9379322e+03 -2.3456342e+03 - -1.6842601e+03 1.9269482e+03 -2.3430959e+03 - -1.7261390e+03 1.9159966e+03 -2.3405414e+03 - -1.7650012e+03 1.9052823e+03 -2.3378490e+03 - -1.8008895e+03 1.8949877e+03 -2.3349335e+03 - -1.8338302e+03 1.8852763e+03 -2.3317391e+03 - -1.8638402e+03 1.8762956e+03 -2.3282344e+03 - -1.8909334e+03 1.8681785e+03 -2.3244083e+03 - -1.9151246e+03 1.8610444e+03 -2.3202669e+03 - -1.9364332e+03 1.8549988e+03 -2.3158311e+03 - -1.9548864e+03 1.8501338e+03 -2.3111345e+03 - -1.9705215e+03 1.8465271e+03 -2.3062212e+03 - -1.9833883e+03 1.8442411e+03 -2.3011449e+03 - -1.9935508e+03 1.8433217e+03 -2.2959666e+03 - -2.0010889e+03 1.8437973e+03 -2.2907534e+03 - -2.0060994e+03 1.8456771e+03 -2.2855770e+03 - -2.0086976e+03 1.8489498e+03 -2.2805122e+03 - -2.0090171e+03 1.8535828e+03 -2.2756351e+03 - -2.0072101e+03 1.8595206e+03 -2.2710217e+03 - -2.0034472e+03 1.8666847e+03 -2.2667459e+03 - -1.9979161e+03 1.8749728e+03 -2.2628783e+03 - -1.9908201e+03 1.8842594e+03 -2.2594839e+03 - -1.9823762e+03 1.8943963e+03 -2.2566211e+03 - -1.9728124e+03 1.9052138e+03 -2.2543399e+03 - -1.9623644e+03 1.9165229e+03 -2.2526807e+03 - -1.9512726e+03 1.9281175e+03 -2.2516731e+03 - -1.9397777e+03 1.9397777e+03 -2.2513352e+03 - -1.9281175e+03 1.9512726e+03 -2.2516731e+03 - -1.9165229e+03 1.9623644e+03 -2.2526807e+03 - -1.9052138e+03 1.9728124e+03 -2.2543399e+03 - -1.8943963e+03 1.9823762e+03 -2.2566211e+03 - -1.8842594e+03 1.9908201e+03 -2.2594839e+03 - -1.8749728e+03 1.9979161e+03 -2.2628783e+03 - -1.8666847e+03 2.0034472e+03 -2.2667459e+03 - -1.8595206e+03 2.0072101e+03 -2.2710217e+03 - -1.8535828e+03 2.0090171e+03 -2.2756351e+03 - -1.8489498e+03 2.0086976e+03 -2.2805122e+03 - -1.8456771e+03 2.0060994e+03 -2.2855770e+03 - -1.8437973e+03 2.0010889e+03 -2.2907534e+03 - -1.8433217e+03 1.9935508e+03 -2.2959666e+03 - -1.8442411e+03 1.9833883e+03 -2.3011449e+03 - -1.8465271e+03 1.9705215e+03 -2.3062212e+03 - -1.8501338e+03 1.9548864e+03 -2.3111345e+03 - -1.8549988e+03 1.9364332e+03 -2.3158311e+03 - -1.8610444e+03 1.9151246e+03 -2.3202669e+03 - -1.8681785e+03 1.8909334e+03 -2.3244083e+03 - -1.8762956e+03 1.8638402e+03 -2.3282344e+03 - -1.8852763e+03 1.8338302e+03 -2.3317391e+03 - -1.8949877e+03 1.8008895e+03 -2.3349335e+03 - -1.9052823e+03 1.7650012e+03 -2.3378490e+03 - -1.9159966e+03 1.7261390e+03 -2.3405414e+03 - -1.9269482e+03 1.6842601e+03 -2.3430959e+03 - -1.9379322e+03 1.6392945e+03 -2.3456342e+03 - -1.9487153e+03 1.5911296e+03 -2.3483229e+03 - -1.9590282e+03 1.5395881e+03 -2.3513867e+03 - -1.9685543e+03 1.4843935e+03 -2.3551242e+03 - -1.9769141e+03 1.4251169e+03 -2.3599314e+03 - -1.9836447e+03 1.3610906e+03 -2.3663311e+03 - -1.9881730e+03 1.2912676e+03 -2.3750116e+03 - -1.9897861e+03 1.2139859e+03 -2.3868686e+03 - -1.9876098e+03 1.1265745e+03 -2.4030330e+03 - -1.9806387e+03 1.0247110e+03 -2.4248222e+03 - -1.9679332e+03 9.0147959e+02 -2.4534431e+03 - -1.9492585e+03 7.4644826e+02 -2.4890407e+03 - -1.9265851e+03 5.4654402e+02 -2.5284848e+03 - -1.9061402e+03 2.9344830e+02 -2.5623627e+03 - -1.8975702e+03 0.0000000e+00 -2.5762669e+03 - -1.9061402e+03 -2.9344830e+02 -2.5623627e+03 - -1.9265851e+03 -5.4654402e+02 -2.5284848e+03 - -1.9492585e+03 -7.4644826e+02 -2.4890407e+03 - -1.9679332e+03 -9.0147959e+02 -2.4534431e+03 - -1.9806387e+03 -1.0247110e+03 -2.4248222e+03 - -1.9876098e+03 -1.1265745e+03 -2.4030330e+03 - -1.9897861e+03 -1.2139859e+03 -2.3868686e+03 - -1.9881730e+03 -1.2912676e+03 -2.3750116e+03 - -1.9836447e+03 -1.3610906e+03 -2.3663311e+03 - -1.9769141e+03 -1.4251169e+03 -2.3599314e+03 - -1.9685543e+03 -1.4843935e+03 -2.3551242e+03 - -1.9590282e+03 -1.5395881e+03 -2.3513867e+03 - -1.9487153e+03 -1.5911296e+03 -2.3483229e+03 - -1.9379322e+03 -1.6392945e+03 -2.3456342e+03 - -1.9269482e+03 -1.6842601e+03 -2.3430959e+03 - -1.9159966e+03 -1.7261390e+03 -2.3405414e+03 - -1.9052823e+03 -1.7650012e+03 -2.3378490e+03 - -1.8949877e+03 -1.8008895e+03 -2.3349335e+03 - -1.8852763e+03 -1.8338302e+03 -2.3317391e+03 - -1.8762956e+03 -1.8638402e+03 -2.3282344e+03 - -1.8681785e+03 -1.8909334e+03 -2.3244083e+03 - -1.8610444e+03 -1.9151246e+03 -2.3202669e+03 - -1.8549988e+03 -1.9364332e+03 -2.3158311e+03 - -1.8501338e+03 -1.9548864e+03 -2.3111345e+03 - -1.8465271e+03 -1.9705215e+03 -2.3062212e+03 - -1.8442411e+03 -1.9833883e+03 -2.3011449e+03 - -1.8433217e+03 -1.9935508e+03 -2.2959666e+03 - -1.8437973e+03 -2.0010889e+03 -2.2907534e+03 - -1.8456771e+03 -2.0060994e+03 -2.2855770e+03 - -1.8489498e+03 -2.0086976e+03 -2.2805122e+03 - -1.8535828e+03 -2.0090171e+03 -2.2756351e+03 - -1.8595206e+03 -2.0072101e+03 -2.2710217e+03 - -1.8666847e+03 -2.0034472e+03 -2.2667459e+03 - -1.8749728e+03 -1.9979161e+03 -2.2628783e+03 - -1.8842594e+03 -1.9908201e+03 -2.2594839e+03 - -1.8943963e+03 -1.9823762e+03 -2.2566211e+03 - -1.9052138e+03 -1.9728124e+03 -2.2543399e+03 - -1.9165229e+03 -1.9623644e+03 -2.2526807e+03 - -1.9281175e+03 -1.9512726e+03 -2.2516731e+03 - -1.9397777e+03 -1.9397777e+03 -2.2513352e+03 - -1.9512726e+03 -1.9281175e+03 -2.2516731e+03 - -1.9623644e+03 -1.9165229e+03 -2.2526807e+03 - -1.9728124e+03 -1.9052138e+03 -2.2543399e+03 - -1.9823762e+03 -1.8943963e+03 -2.2566211e+03 - -1.9908201e+03 -1.8842594e+03 -2.2594839e+03 - -1.9979161e+03 -1.8749728e+03 -2.2628783e+03 - -2.0034472e+03 -1.8666847e+03 -2.2667459e+03 - -2.0072101e+03 -1.8595206e+03 -2.2710217e+03 - -2.0090171e+03 -1.8535828e+03 -2.2756351e+03 - -2.0086976e+03 -1.8489498e+03 -2.2805122e+03 - -2.0060994e+03 -1.8456771e+03 -2.2855770e+03 - -2.0010889e+03 -1.8437973e+03 -2.2907534e+03 - -1.9935508e+03 -1.8433217e+03 -2.2959666e+03 - -1.9833883e+03 -1.8442411e+03 -2.3011449e+03 - -1.9705215e+03 -1.8465271e+03 -2.3062212e+03 - -1.9548864e+03 -1.8501338e+03 -2.3111345e+03 - -1.9364332e+03 -1.8549988e+03 -2.3158311e+03 - -1.9151246e+03 -1.8610444e+03 -2.3202669e+03 - -1.8909334e+03 -1.8681785e+03 -2.3244083e+03 - -1.8638402e+03 -1.8762956e+03 -2.3282344e+03 - -1.8338302e+03 -1.8852763e+03 -2.3317391e+03 - -1.8008895e+03 -1.8949877e+03 -2.3349335e+03 - -1.7650012e+03 -1.9052823e+03 -2.3378490e+03 - -1.7261390e+03 -1.9159966e+03 -2.3405414e+03 - -1.6842601e+03 -1.9269482e+03 -2.3430959e+03 - -1.6392945e+03 -1.9379322e+03 -2.3456342e+03 - -1.5911296e+03 -1.9487153e+03 -2.3483229e+03 - -1.5395881e+03 -1.9590282e+03 -2.3513867e+03 - -1.4843935e+03 -1.9685543e+03 -2.3551242e+03 - -1.4251169e+03 -1.9769141e+03 -2.3599314e+03 - -1.3610906e+03 -1.9836447e+03 -2.3663311e+03 - -1.2912676e+03 -1.9881730e+03 -2.3750116e+03 - -1.2139859e+03 -1.9897861e+03 -2.3868686e+03 - -1.1265745e+03 -1.9876098e+03 -2.4030330e+03 - -1.0247110e+03 -1.9806387e+03 -2.4248222e+03 - -9.0147959e+02 -1.9679332e+03 -2.4534431e+03 - -7.4644826e+02 -1.9492585e+03 -2.4890407e+03 - -5.4654402e+02 -1.9265851e+03 -2.5284848e+03 - -2.9344830e+02 -1.9061402e+03 -2.5623627e+03 - 4.8134273e-09 -1.8975702e+03 -2.5762669e+03 - 2.9344830e+02 -1.9061402e+03 -2.5623627e+03 - 5.4654402e+02 -1.9265851e+03 -2.5284848e+03 - 7.4644826e+02 -1.9492585e+03 -2.4890407e+03 - 9.0147959e+02 -1.9679332e+03 -2.4534431e+03 - 1.0247110e+03 -1.9806387e+03 -2.4248222e+03 - 1.1265745e+03 -1.9876098e+03 -2.4030330e+03 - 1.2139859e+03 -1.9897861e+03 -2.3868686e+03 - 1.2912676e+03 -1.9881730e+03 -2.3750116e+03 - 1.3610906e+03 -1.9836447e+03 -2.3663311e+03 - 1.4251169e+03 -1.9769141e+03 -2.3599314e+03 - 1.4843935e+03 -1.9685543e+03 -2.3551242e+03 - 1.5395881e+03 -1.9590282e+03 -2.3513867e+03 - 1.5911296e+03 -1.9487153e+03 -2.3483229e+03 - 1.6392945e+03 -1.9379322e+03 -2.3456342e+03 - 1.6842601e+03 -1.9269482e+03 -2.3430959e+03 - 1.7261390e+03 -1.9159966e+03 -2.3405414e+03 - 1.7650012e+03 -1.9052823e+03 -2.3378490e+03 - 1.8008895e+03 -1.8949877e+03 -2.3349335e+03 - 1.8338302e+03 -1.8852763e+03 -2.3317391e+03 - 1.8638402e+03 -1.8762956e+03 -2.3282344e+03 - 1.8909334e+03 -1.8681785e+03 -2.3244083e+03 - 1.9151246e+03 -1.8610444e+03 -2.3202669e+03 - 1.9364332e+03 -1.8549988e+03 -2.3158311e+03 - 1.9548864e+03 -1.8501338e+03 -2.3111345e+03 - 1.9705215e+03 -1.8465271e+03 -2.3062212e+03 - 1.9833883e+03 -1.8442411e+03 -2.3011449e+03 - 1.9935508e+03 -1.8433217e+03 -2.2959666e+03 - 2.0010889e+03 -1.8437973e+03 -2.2907534e+03 - 2.0060994e+03 -1.8456771e+03 -2.2855770e+03 - 2.0086976e+03 -1.8489498e+03 -2.2805122e+03 - 2.0090171e+03 -1.8535828e+03 -2.2756351e+03 - 2.0072101e+03 -1.8595206e+03 -2.2710217e+03 - 2.0034472e+03 -1.8666847e+03 -2.2667459e+03 - 1.9979161e+03 -1.8749728e+03 -2.2628783e+03 - 1.9908201e+03 -1.8842594e+03 -2.2594839e+03 - 1.9823762e+03 -1.8943963e+03 -2.2566211e+03 - 1.9728124e+03 -1.9052138e+03 -2.2543399e+03 - 1.9623644e+03 -1.9165229e+03 -2.2526807e+03 - 1.9512726e+03 -1.9281175e+03 -2.2516731e+03 - 1.9397777e+03 -1.9397777e+03 -2.2513352e+03 - 1.9281175e+03 -1.9512726e+03 -2.2516731e+03 - 1.9165229e+03 -1.9623644e+03 -2.2526807e+03 - 1.9052138e+03 -1.9728124e+03 -2.2543399e+03 - 1.8943963e+03 -1.9823762e+03 -2.2566211e+03 - 1.8842594e+03 -1.9908201e+03 -2.2594839e+03 - 1.8749728e+03 -1.9979161e+03 -2.2628783e+03 - 1.8666847e+03 -2.0034472e+03 -2.2667459e+03 - 1.8595206e+03 -2.0072101e+03 -2.2710217e+03 - 1.8535828e+03 -2.0090171e+03 -2.2756351e+03 - 1.8489498e+03 -2.0086976e+03 -2.2805122e+03 - 1.8456771e+03 -2.0060994e+03 -2.2855770e+03 - 1.8437973e+03 -2.0010889e+03 -2.2907534e+03 - 1.8433217e+03 -1.9935508e+03 -2.2959666e+03 - 1.8442411e+03 -1.9833883e+03 -2.3011449e+03 - 1.8465271e+03 -1.9705215e+03 -2.3062212e+03 - 1.8501338e+03 -1.9548864e+03 -2.3111345e+03 - 1.8549988e+03 -1.9364332e+03 -2.3158311e+03 - 1.8610444e+03 -1.9151246e+03 -2.3202669e+03 - 1.8681785e+03 -1.8909334e+03 -2.3244083e+03 - 1.8762956e+03 -1.8638402e+03 -2.3282344e+03 - 1.8852763e+03 -1.8338302e+03 -2.3317391e+03 - 1.8949877e+03 -1.8008895e+03 -2.3349335e+03 - 1.9052823e+03 -1.7650012e+03 -2.3378490e+03 - 1.9159966e+03 -1.7261390e+03 -2.3405414e+03 - 1.9269482e+03 -1.6842601e+03 -2.3430959e+03 - 1.9379322e+03 -1.6392945e+03 -2.3456342e+03 - 1.9487153e+03 -1.5911296e+03 -2.3483229e+03 - 1.9590282e+03 -1.5395881e+03 -2.3513867e+03 - 1.9685543e+03 -1.4843935e+03 -2.3551242e+03 - 1.9769141e+03 -1.4251169e+03 -2.3599314e+03 - 1.9836447e+03 -1.3610906e+03 -2.3663311e+03 - 1.9881730e+03 -1.2912676e+03 -2.3750116e+03 - 1.9897861e+03 -1.2139859e+03 -2.3868686e+03 - 1.9876098e+03 -1.1265745e+03 -2.4030330e+03 - 1.9806387e+03 -1.0247110e+03 -2.4248222e+03 - 1.9679332e+03 -9.0147959e+02 -2.4534431e+03 - 1.9492585e+03 -7.4644826e+02 -2.4890407e+03 - 1.9265851e+03 -5.4654402e+02 -2.5284848e+03 - 1.9061402e+03 -2.9344830e+02 -2.5623627e+03 - 1.8975702e+03 2.4067136e-09 -2.5762669e+03 - 1.8573556e+03 -2.4067136e-09 -2.6243015e+03 - 1.8622663e+03 2.5697400e+02 -2.6156251e+03 - 1.8747196e+03 4.8933189e+02 -2.5931036e+03 - 1.8899172e+03 6.8511759e+02 -2.5641558e+03 - 1.9038124e+03 8.4520015e+02 -2.5351172e+03 - 1.9143318e+03 9.7633189e+02 -2.5093479e+03 - 1.9209300e+03 1.0858163e+03 -2.4878854e+03 - 1.9238456e+03 1.1794956e+03 -2.4705637e+03 - 1.9236093e+03 1.2615391e+03 -2.4567608e+03 - 1.9208043e+03 1.3347895e+03 -2.4457658e+03 - 1.9159721e+03 1.4011560e+03 -2.4369259e+03 - 1.9095855e+03 1.4619192e+03 -2.4296905e+03 - 1.9020489e+03 1.5179419e+03 -2.4236129e+03 - 1.8937071e+03 1.5698091e+03 -2.4183383e+03 - 1.8848561e+03 1.6179196e+03 -2.4135889e+03 - 1.8757521e+03 1.6625469e+03 -2.4091491e+03 - 1.8666200e+03 1.7038788e+03 -2.4048542e+03 - 1.8576587e+03 1.7420452e+03 -2.4005810e+03 - 1.8490460e+03 1.7771367e+03 -2.3962397e+03 - 1.8409416e+03 1.8092184e+03 -2.3917689e+03 - 1.8334894e+03 1.8383390e+03 -2.3871303e+03 - 1.8268189e+03 1.8645382e+03 -2.3823055e+03 - 1.8210458e+03 1.8878526e+03 -2.3772928e+03 - 1.8162724e+03 1.9083196e+03 -2.3721051e+03 - 1.8125875e+03 1.9259810e+03 -2.3667676e+03 - 1.8100655e+03 1.9408865e+03 -2.3613158e+03 - 1.8087658e+03 1.9530952e+03 -2.3557946e+03 - 1.8087320e+03 1.9626787e+03 -2.3502560e+03 - 1.8099903e+03 1.9697219e+03 -2.3447581e+03 - 1.8125489e+03 1.9743249e+03 -2.3393637e+03 - 1.8163963e+03 1.9766038e+03 -2.3341382e+03 - 1.8215007e+03 1.9766911e+03 -2.3291490e+03 - 1.8278088e+03 1.9747359e+03 -2.3244632e+03 - 1.8352457e+03 1.9709034e+03 -2.3201464e+03 - 1.8437143e+03 1.9653742e+03 -2.3162611e+03 - 1.8530958e+03 1.9583428e+03 -2.3128653e+03 - 1.8632503e+03 1.9500155e+03 -2.3100109e+03 - 1.8740182e+03 1.9406082e+03 -2.3077423e+03 - 1.8852216e+03 1.9303437e+03 -2.3060953e+03 - 1.8966672e+03 1.9194481e+03 -2.3050963e+03 - 1.9081482e+03 1.9081482e+03 -2.3047615e+03 - 1.9194481e+03 1.8966672e+03 -2.3050963e+03 - 1.9303437e+03 1.8852216e+03 -2.3060953e+03 - 1.9406082e+03 1.8740182e+03 -2.3077423e+03 - 1.9500155e+03 1.8632503e+03 -2.3100109e+03 - 1.9583428e+03 1.8530958e+03 -2.3128653e+03 - 1.9653742e+03 1.8437143e+03 -2.3162611e+03 - 1.9709034e+03 1.8352457e+03 -2.3201464e+03 - 1.9747359e+03 1.8278088e+03 -2.3244632e+03 - 1.9766911e+03 1.8215007e+03 -2.3291490e+03 - 1.9766038e+03 1.8163963e+03 -2.3341382e+03 - 1.9743249e+03 1.8125489e+03 -2.3393637e+03 - 1.9697219e+03 1.8099903e+03 -2.3447581e+03 - 1.9626787e+03 1.8087320e+03 -2.3502560e+03 - 1.9530952e+03 1.8087658e+03 -2.3557946e+03 - 1.9408865e+03 1.8100655e+03 -2.3613158e+03 - 1.9259810e+03 1.8125875e+03 -2.3667676e+03 - 1.9083196e+03 1.8162724e+03 -2.3721051e+03 - 1.8878526e+03 1.8210458e+03 -2.3772928e+03 - 1.8645382e+03 1.8268189e+03 -2.3823055e+03 - 1.8383390e+03 1.8334894e+03 -2.3871303e+03 - 1.8092184e+03 1.8409416e+03 -2.3917689e+03 - 1.7771367e+03 1.8490460e+03 -2.3962397e+03 - 1.7420452e+03 1.8576587e+03 -2.4005810e+03 - 1.7038788e+03 1.8666200e+03 -2.4048542e+03 - 1.6625469e+03 1.8757521e+03 -2.4091491e+03 - 1.6179196e+03 1.8848561e+03 -2.4135889e+03 - 1.5698091e+03 1.8937071e+03 -2.4183383e+03 - 1.5179419e+03 1.9020489e+03 -2.4236129e+03 - 1.4619192e+03 1.9095855e+03 -2.4296905e+03 - 1.4011560e+03 1.9159721e+03 -2.4369259e+03 - 1.3347895e+03 1.9208043e+03 -2.4457658e+03 - 1.2615391e+03 1.9236093e+03 -2.4567608e+03 - 1.1794956e+03 1.9238456e+03 -2.4705637e+03 - 1.0858163e+03 1.9209300e+03 -2.4878854e+03 - 9.7633189e+02 1.9143318e+03 -2.5093479e+03 - 8.4520015e+02 1.9038124e+03 -2.5351172e+03 - 6.8511759e+02 1.8899172e+03 -2.5641558e+03 - 4.8933189e+02 1.8747196e+03 -2.5931036e+03 - 2.5697400e+02 1.8622663e+03 -2.6156251e+03 - 2.4067136e-09 1.8573556e+03 -2.6243015e+03 - -2.5697400e+02 1.8622663e+03 -2.6156251e+03 - -4.8933189e+02 1.8747196e+03 -2.5931036e+03 - -6.8511759e+02 1.8899172e+03 -2.5641558e+03 - -8.4520015e+02 1.9038124e+03 -2.5351172e+03 - -9.7633189e+02 1.9143318e+03 -2.5093479e+03 - -1.0858163e+03 1.9209300e+03 -2.4878854e+03 - -1.1794956e+03 1.9238456e+03 -2.4705637e+03 - -1.2615391e+03 1.9236093e+03 -2.4567608e+03 - -1.3347895e+03 1.9208043e+03 -2.4457658e+03 - -1.4011560e+03 1.9159721e+03 -2.4369259e+03 - -1.4619192e+03 1.9095855e+03 -2.4296905e+03 - -1.5179419e+03 1.9020489e+03 -2.4236129e+03 - -1.5698091e+03 1.8937071e+03 -2.4183383e+03 - -1.6179196e+03 1.8848561e+03 -2.4135889e+03 - -1.6625469e+03 1.8757521e+03 -2.4091491e+03 - -1.7038788e+03 1.8666200e+03 -2.4048542e+03 - -1.7420452e+03 1.8576587e+03 -2.4005810e+03 - -1.7771367e+03 1.8490460e+03 -2.3962397e+03 - -1.8092184e+03 1.8409416e+03 -2.3917689e+03 - -1.8383390e+03 1.8334894e+03 -2.3871303e+03 - -1.8645382e+03 1.8268189e+03 -2.3823055e+03 - -1.8878526e+03 1.8210458e+03 -2.3772928e+03 - -1.9083196e+03 1.8162724e+03 -2.3721051e+03 - -1.9259810e+03 1.8125875e+03 -2.3667676e+03 - -1.9408865e+03 1.8100655e+03 -2.3613158e+03 - -1.9530952e+03 1.8087658e+03 -2.3557946e+03 - -1.9626787e+03 1.8087320e+03 -2.3502560e+03 - -1.9697219e+03 1.8099903e+03 -2.3447581e+03 - -1.9743249e+03 1.8125489e+03 -2.3393637e+03 - -1.9766038e+03 1.8163963e+03 -2.3341382e+03 - -1.9766911e+03 1.8215007e+03 -2.3291490e+03 - -1.9747359e+03 1.8278088e+03 -2.3244632e+03 - -1.9709034e+03 1.8352457e+03 -2.3201464e+03 - -1.9653742e+03 1.8437143e+03 -2.3162611e+03 - -1.9583428e+03 1.8530958e+03 -2.3128653e+03 - -1.9500155e+03 1.8632503e+03 -2.3100109e+03 - -1.9406082e+03 1.8740182e+03 -2.3077423e+03 - -1.9303437e+03 1.8852216e+03 -2.3060953e+03 - -1.9194481e+03 1.8966672e+03 -2.3050963e+03 - -1.9081482e+03 1.9081482e+03 -2.3047615e+03 - -1.8966672e+03 1.9194481e+03 -2.3050963e+03 - -1.8852216e+03 1.9303437e+03 -2.3060953e+03 - -1.8740182e+03 1.9406082e+03 -2.3077423e+03 - -1.8632503e+03 1.9500155e+03 -2.3100109e+03 - -1.8530958e+03 1.9583428e+03 -2.3128653e+03 - -1.8437143e+03 1.9653742e+03 -2.3162611e+03 - -1.8352457e+03 1.9709034e+03 -2.3201464e+03 - -1.8278088e+03 1.9747359e+03 -2.3244632e+03 - -1.8215007e+03 1.9766911e+03 -2.3291490e+03 - -1.8163963e+03 1.9766038e+03 -2.3341382e+03 - -1.8125489e+03 1.9743249e+03 -2.3393637e+03 - -1.8099903e+03 1.9697219e+03 -2.3447581e+03 - -1.8087320e+03 1.9626787e+03 -2.3502560e+03 - -1.8087658e+03 1.9530952e+03 -2.3557946e+03 - -1.8100655e+03 1.9408865e+03 -2.3613158e+03 - -1.8125875e+03 1.9259810e+03 -2.3667676e+03 - -1.8162724e+03 1.9083196e+03 -2.3721051e+03 - -1.8210458e+03 1.8878526e+03 -2.3772928e+03 - -1.8268189e+03 1.8645382e+03 -2.3823055e+03 - -1.8334894e+03 1.8383390e+03 -2.3871303e+03 - -1.8409416e+03 1.8092184e+03 -2.3917689e+03 - -1.8490460e+03 1.7771367e+03 -2.3962397e+03 - -1.8576587e+03 1.7420452e+03 -2.4005810e+03 - -1.8666200e+03 1.7038788e+03 -2.4048542e+03 - -1.8757521e+03 1.6625469e+03 -2.4091491e+03 - -1.8848561e+03 1.6179196e+03 -2.4135889e+03 - -1.8937071e+03 1.5698091e+03 -2.4183383e+03 - -1.9020489e+03 1.5179419e+03 -2.4236129e+03 - -1.9095855e+03 1.4619192e+03 -2.4296905e+03 - -1.9159721e+03 1.4011560e+03 -2.4369259e+03 - -1.9208043e+03 1.3347895e+03 -2.4457658e+03 - -1.9236093e+03 1.2615391e+03 -2.4567608e+03 - -1.9238456e+03 1.1794956e+03 -2.4705637e+03 - -1.9209300e+03 1.0858163e+03 -2.4878854e+03 - -1.9143318e+03 9.7633189e+02 -2.5093479e+03 - -1.9038124e+03 8.4520015e+02 -2.5351172e+03 - -1.8899172e+03 6.8511759e+02 -2.5641558e+03 - -1.8747196e+03 4.8933189e+02 -2.5931036e+03 - -1.8622663e+03 2.5697400e+02 -2.6156251e+03 - -1.8573556e+03 0.0000000e+00 -2.6243015e+03 - -1.8622663e+03 -2.5697400e+02 -2.6156251e+03 - -1.8747196e+03 -4.8933189e+02 -2.5931036e+03 - -1.8899172e+03 -6.8511759e+02 -2.5641558e+03 - -1.9038124e+03 -8.4520015e+02 -2.5351172e+03 - -1.9143318e+03 -9.7633189e+02 -2.5093479e+03 - -1.9209300e+03 -1.0858163e+03 -2.4878854e+03 - -1.9238456e+03 -1.1794956e+03 -2.4705637e+03 - -1.9236093e+03 -1.2615391e+03 -2.4567608e+03 - -1.9208043e+03 -1.3347895e+03 -2.4457658e+03 - -1.9159721e+03 -1.4011560e+03 -2.4369259e+03 - -1.9095855e+03 -1.4619192e+03 -2.4296905e+03 - -1.9020489e+03 -1.5179419e+03 -2.4236129e+03 - -1.8937071e+03 -1.5698091e+03 -2.4183383e+03 - -1.8848561e+03 -1.6179196e+03 -2.4135889e+03 - -1.8757521e+03 -1.6625469e+03 -2.4091491e+03 - -1.8666200e+03 -1.7038788e+03 -2.4048542e+03 - -1.8576587e+03 -1.7420452e+03 -2.4005810e+03 - -1.8490460e+03 -1.7771367e+03 -2.3962397e+03 - -1.8409416e+03 -1.8092184e+03 -2.3917689e+03 - -1.8334894e+03 -1.8383390e+03 -2.3871303e+03 - -1.8268189e+03 -1.8645382e+03 -2.3823055e+03 - -1.8210458e+03 -1.8878526e+03 -2.3772928e+03 - -1.8162724e+03 -1.9083196e+03 -2.3721051e+03 - -1.8125875e+03 -1.9259810e+03 -2.3667676e+03 - -1.8100655e+03 -1.9408865e+03 -2.3613158e+03 - -1.8087658e+03 -1.9530952e+03 -2.3557946e+03 - -1.8087320e+03 -1.9626787e+03 -2.3502560e+03 - -1.8099903e+03 -1.9697219e+03 -2.3447581e+03 - -1.8125489e+03 -1.9743249e+03 -2.3393637e+03 - -1.8163963e+03 -1.9766038e+03 -2.3341382e+03 - -1.8215007e+03 -1.9766911e+03 -2.3291490e+03 - -1.8278088e+03 -1.9747359e+03 -2.3244632e+03 - -1.8352457e+03 -1.9709034e+03 -2.3201464e+03 - -1.8437143e+03 -1.9653742e+03 -2.3162611e+03 - -1.8530958e+03 -1.9583428e+03 -2.3128653e+03 - -1.8632503e+03 -1.9500155e+03 -2.3100109e+03 - -1.8740182e+03 -1.9406082e+03 -2.3077423e+03 - -1.8852216e+03 -1.9303437e+03 -2.3060953e+03 - -1.8966672e+03 -1.9194481e+03 -2.3050963e+03 - -1.9081482e+03 -1.9081482e+03 -2.3047615e+03 - -1.9194481e+03 -1.8966672e+03 -2.3050963e+03 - -1.9303437e+03 -1.8852216e+03 -2.3060953e+03 - -1.9406082e+03 -1.8740182e+03 -2.3077423e+03 - -1.9500155e+03 -1.8632503e+03 -2.3100109e+03 - -1.9583428e+03 -1.8530958e+03 -2.3128653e+03 - -1.9653742e+03 -1.8437143e+03 -2.3162611e+03 - -1.9709034e+03 -1.8352457e+03 -2.3201464e+03 - -1.9747359e+03 -1.8278088e+03 -2.3244632e+03 - -1.9766911e+03 -1.8215007e+03 -2.3291490e+03 - -1.9766038e+03 -1.8163963e+03 -2.3341382e+03 - -1.9743249e+03 -1.8125489e+03 -2.3393637e+03 - -1.9697219e+03 -1.8099903e+03 -2.3447581e+03 - -1.9626787e+03 -1.8087320e+03 -2.3502560e+03 - -1.9530952e+03 -1.8087658e+03 -2.3557946e+03 - -1.9408865e+03 -1.8100655e+03 -2.3613158e+03 - -1.9259810e+03 -1.8125875e+03 -2.3667676e+03 - -1.9083196e+03 -1.8162724e+03 -2.3721051e+03 - -1.8878526e+03 -1.8210458e+03 -2.3772928e+03 - -1.8645382e+03 -1.8268189e+03 -2.3823055e+03 - -1.8383390e+03 -1.8334894e+03 -2.3871303e+03 - -1.8092184e+03 -1.8409416e+03 -2.3917689e+03 - -1.7771367e+03 -1.8490460e+03 -2.3962397e+03 - -1.7420452e+03 -1.8576587e+03 -2.4005810e+03 - -1.7038788e+03 -1.8666200e+03 -2.4048542e+03 - -1.6625469e+03 -1.8757521e+03 -2.4091491e+03 - -1.6179196e+03 -1.8848561e+03 -2.4135889e+03 - -1.5698091e+03 -1.8937071e+03 -2.4183383e+03 - -1.5179419e+03 -1.9020489e+03 -2.4236129e+03 - -1.4619192e+03 -1.9095855e+03 -2.4296905e+03 - -1.4011560e+03 -1.9159721e+03 -2.4369259e+03 - -1.3347895e+03 -1.9208043e+03 -2.4457658e+03 - -1.2615391e+03 -1.9236093e+03 -2.4567608e+03 - -1.1794956e+03 -1.9238456e+03 -2.4705637e+03 - -1.0858163e+03 -1.9209300e+03 -2.4878854e+03 - -9.7633189e+02 -1.9143318e+03 -2.5093479e+03 - -8.4520015e+02 -1.9038124e+03 -2.5351172e+03 - -6.8511759e+02 -1.8899172e+03 -2.5641558e+03 - -4.8933189e+02 -1.8747196e+03 -2.5931036e+03 - -2.5697400e+02 -1.8622663e+03 -2.6156251e+03 - -2.4067136e-09 -1.8573556e+03 -2.6243015e+03 - 2.5697400e+02 -1.8622663e+03 -2.6156251e+03 - 4.8933189e+02 -1.8747196e+03 -2.5931036e+03 - 6.8511759e+02 -1.8899172e+03 -2.5641558e+03 - 8.4520015e+02 -1.9038124e+03 -2.5351172e+03 - 9.7633189e+02 -1.9143318e+03 -2.5093479e+03 - 1.0858163e+03 -1.9209300e+03 -2.4878854e+03 - 1.1794956e+03 -1.9238456e+03 -2.4705637e+03 - 1.2615391e+03 -1.9236093e+03 -2.4567608e+03 - 1.3347895e+03 -1.9208043e+03 -2.4457658e+03 - 1.4011560e+03 -1.9159721e+03 -2.4369259e+03 - 1.4619192e+03 -1.9095855e+03 -2.4296905e+03 - 1.5179419e+03 -1.9020489e+03 -2.4236129e+03 - 1.5698091e+03 -1.8937071e+03 -2.4183383e+03 - 1.6179196e+03 -1.8848561e+03 -2.4135889e+03 - 1.6625469e+03 -1.8757521e+03 -2.4091491e+03 - 1.7038788e+03 -1.8666200e+03 -2.4048542e+03 - 1.7420452e+03 -1.8576587e+03 -2.4005810e+03 - 1.7771367e+03 -1.8490460e+03 -2.3962397e+03 - 1.8092184e+03 -1.8409416e+03 -2.3917689e+03 - 1.8383390e+03 -1.8334894e+03 -2.3871303e+03 - 1.8645382e+03 -1.8268189e+03 -2.3823055e+03 - 1.8878526e+03 -1.8210458e+03 -2.3772928e+03 - 1.9083196e+03 -1.8162724e+03 -2.3721051e+03 - 1.9259810e+03 -1.8125875e+03 -2.3667676e+03 - 1.9408865e+03 -1.8100655e+03 -2.3613158e+03 - 1.9530952e+03 -1.8087658e+03 -2.3557946e+03 - 1.9626787e+03 -1.8087320e+03 -2.3502560e+03 - 1.9697219e+03 -1.8099903e+03 -2.3447581e+03 - 1.9743249e+03 -1.8125489e+03 -2.3393637e+03 - 1.9766038e+03 -1.8163963e+03 -2.3341382e+03 - 1.9766911e+03 -1.8215007e+03 -2.3291490e+03 - 1.9747359e+03 -1.8278088e+03 -2.3244632e+03 - 1.9709034e+03 -1.8352457e+03 -2.3201464e+03 - 1.9653742e+03 -1.8437143e+03 -2.3162611e+03 - 1.9583428e+03 -1.8530958e+03 -2.3128653e+03 - 1.9500155e+03 -1.8632503e+03 -2.3100109e+03 - 1.9406082e+03 -1.8740182e+03 -2.3077423e+03 - 1.9303437e+03 -1.8852216e+03 -2.3060953e+03 - 1.9194481e+03 -1.8966672e+03 -2.3050963e+03 - 1.9081482e+03 -1.9081482e+03 -2.3047615e+03 - 1.8966672e+03 -1.9194481e+03 -2.3050963e+03 - 1.8852216e+03 -1.9303437e+03 -2.3060953e+03 - 1.8740182e+03 -1.9406082e+03 -2.3077423e+03 - 1.8632503e+03 -1.9500155e+03 -2.3100109e+03 - 1.8530958e+03 -1.9583428e+03 -2.3128653e+03 - 1.8437143e+03 -1.9653742e+03 -2.3162611e+03 - 1.8352457e+03 -1.9709034e+03 -2.3201464e+03 - 1.8278088e+03 -1.9747359e+03 -2.3244632e+03 - 1.8215007e+03 -1.9766911e+03 -2.3291490e+03 - 1.8163963e+03 -1.9766038e+03 -2.3341382e+03 - 1.8125489e+03 -1.9743249e+03 -2.3393637e+03 - 1.8099903e+03 -1.9697219e+03 -2.3447581e+03 - 1.8087320e+03 -1.9626787e+03 -2.3502560e+03 - 1.8087658e+03 -1.9530952e+03 -2.3557946e+03 - 1.8100655e+03 -1.9408865e+03 -2.3613158e+03 - 1.8125875e+03 -1.9259810e+03 -2.3667676e+03 - 1.8162724e+03 -1.9083196e+03 -2.3721051e+03 - 1.8210458e+03 -1.8878526e+03 -2.3772928e+03 - 1.8268189e+03 -1.8645382e+03 -2.3823055e+03 - 1.8334894e+03 -1.8383390e+03 -2.3871303e+03 - 1.8409416e+03 -1.8092184e+03 -2.3917689e+03 - 1.8490460e+03 -1.7771367e+03 -2.3962397e+03 - 1.8576587e+03 -1.7420452e+03 -2.4005810e+03 - 1.8666200e+03 -1.7038788e+03 -2.4048542e+03 - 1.8757521e+03 -1.6625469e+03 -2.4091491e+03 - 1.8848561e+03 -1.6179196e+03 -2.4135889e+03 - 1.8937071e+03 -1.5698091e+03 -2.4183383e+03 - 1.9020489e+03 -1.5179419e+03 -2.4236129e+03 - 1.9095855e+03 -1.4619192e+03 -2.4296905e+03 - 1.9159721e+03 -1.4011560e+03 -2.4369259e+03 - 1.9208043e+03 -1.3347895e+03 -2.4457658e+03 - 1.9236093e+03 -1.2615391e+03 -2.4567608e+03 - 1.9238456e+03 -1.1794956e+03 -2.4705637e+03 - 1.9209300e+03 -1.0858163e+03 -2.4878854e+03 - 1.9143318e+03 -9.7633189e+02 -2.5093479e+03 - 1.9038124e+03 -8.4520015e+02 -2.5351172e+03 - 1.8899172e+03 -6.8511759e+02 -2.5641558e+03 - 1.8747196e+03 -4.8933189e+02 -2.5931036e+03 - 1.8622663e+03 -2.5697400e+02 -2.6156251e+03 - 1.8573556e+03 0.0000000e+00 -2.6243015e+03 - 1.8168148e+03 -2.4067136e-09 -2.6708380e+03 - 1.8198253e+03 2.3174970e+02 -2.6649069e+03 - 1.8277290e+03 4.4691434e+02 -2.6489290e+03 - 1.8379462e+03 6.3559530e+02 -2.6270798e+03 - 1.8479326e+03 7.9586054e+02 -2.6035344e+03 - 1.8560337e+03 9.3078307e+02 -2.5810976e+03 - 1.8615227e+03 1.0451190e+03 -2.5611217e+03 - 1.8642965e+03 1.1434067e+03 -2.5439727e+03 - 1.8645768e+03 1.2293025e+03 -2.5294969e+03 - 1.8627170e+03 1.3055363e+03 -2.5173243e+03 - 1.8591011e+03 1.3740754e+03 -2.5070312e+03 - 1.8540966e+03 1.4363172e+03 -2.4982152e+03 - 1.8480382e+03 1.4932498e+03 -2.4905243e+03 - 1.8412241e+03 1.5455727e+03 -2.4836633e+03 - 1.8339186e+03 1.5937828e+03 -2.4773912e+03 - 1.8263559e+03 1.6382351e+03 -2.4715150e+03 - 1.8187447e+03 1.6791846e+03 -2.4658835e+03 - 1.8112719e+03 1.7168163e+03 -2.4603802e+03 - 1.8041056e+03 1.7512660e+03 -2.4549186e+03 - 1.7973977e+03 1.7826361e+03 -2.4494373e+03 - 1.7912850e+03 1.8110060e+03 -2.4438963e+03 - 1.7858911e+03 1.8364413e+03 -2.4382740e+03 - 1.7813259e+03 1.8590001e+03 -2.4325645e+03 - 1.7776868e+03 1.8787376e+03 -2.4267755e+03 - 1.7750575e+03 1.8957106e+03 -2.4209265e+03 - 1.7735082e+03 1.9099807e+03 -2.4150469e+03 - 1.7730945e+03 1.9216172e+03 -2.4091747e+03 - 1.7738565e+03 1.9306987e+03 -2.4033549e+03 - 1.7758180e+03 1.9373156e+03 -2.3976384e+03 - 1.7789854e+03 1.9415714e+03 -2.3920803e+03 - 1.7833465e+03 1.9435831e+03 -2.3867386e+03 - 1.7888697e+03 1.9434825e+03 -2.3816729e+03 - 1.7955038e+03 1.9414159e+03 -2.3769429e+03 - 1.8031766e+03 1.9375438e+03 -2.3726070e+03 - 1.8117958e+03 1.9320403e+03 -2.3687208e+03 - 1.8212487e+03 1.9250914e+03 -2.3653361e+03 - 1.8314029e+03 1.9168939e+03 -2.3624990e+03 - 1.8421078e+03 1.9076526e+03 -2.3602490e+03 - 1.8531962e+03 1.8975781e+03 -2.3586183e+03 - 1.8644861e+03 1.8868838e+03 -2.3576303e+03 - 1.8757831e+03 1.8757831e+03 -2.3572994e+03 - 1.8868838e+03 1.8644861e+03 -2.3576303e+03 - 1.8975781e+03 1.8531962e+03 -2.3586183e+03 - 1.9076526e+03 1.8421078e+03 -2.3602490e+03 - 1.9168939e+03 1.8314029e+03 -2.3624990e+03 - 1.9250914e+03 1.8212487e+03 -2.3653361e+03 - 1.9320403e+03 1.8117958e+03 -2.3687208e+03 - 1.9375438e+03 1.8031766e+03 -2.3726070e+03 - 1.9414159e+03 1.7955038e+03 -2.3769429e+03 - 1.9434825e+03 1.7888697e+03 -2.3816729e+03 - 1.9435831e+03 1.7833465e+03 -2.3867386e+03 - 1.9415714e+03 1.7789854e+03 -2.3920803e+03 - 1.9373156e+03 1.7758180e+03 -2.3976384e+03 - 1.9306987e+03 1.7738565e+03 -2.4033549e+03 - 1.9216172e+03 1.7730945e+03 -2.4091747e+03 - 1.9099807e+03 1.7735082e+03 -2.4150469e+03 - 1.8957106e+03 1.7750575e+03 -2.4209265e+03 - 1.8787376e+03 1.7776868e+03 -2.4267755e+03 - 1.8590001e+03 1.7813259e+03 -2.4325645e+03 - 1.8364413e+03 1.7858911e+03 -2.4382740e+03 - 1.8110060e+03 1.7912850e+03 -2.4438963e+03 - 1.7826361e+03 1.7973977e+03 -2.4494373e+03 - 1.7512660e+03 1.8041056e+03 -2.4549186e+03 - 1.7168163e+03 1.8112719e+03 -2.4603802e+03 - 1.6791846e+03 1.8187447e+03 -2.4658835e+03 - 1.6382351e+03 1.8263559e+03 -2.4715150e+03 - 1.5937828e+03 1.8339186e+03 -2.4773912e+03 - 1.5455727e+03 1.8412241e+03 -2.4836633e+03 - 1.4932498e+03 1.8480382e+03 -2.4905243e+03 - 1.4363172e+03 1.8540966e+03 -2.4982152e+03 - 1.3740754e+03 1.8591011e+03 -2.5070312e+03 - 1.3055363e+03 1.8627170e+03 -2.5173243e+03 - 1.2293025e+03 1.8645768e+03 -2.5294969e+03 - 1.1434067e+03 1.8642965e+03 -2.5439727e+03 - 1.0451190e+03 1.8615227e+03 -2.5611217e+03 - 9.3078307e+02 1.8560337e+03 -2.5810976e+03 - 7.9586054e+02 1.8479326e+03 -2.6035344e+03 - 6.3559530e+02 1.8379462e+03 -2.6270798e+03 - 4.4691434e+02 1.8277290e+03 -2.6489290e+03 - 2.3174970e+02 1.8198253e+03 -2.6649069e+03 - 2.4067136e-09 1.8168148e+03 -2.6708380e+03 - -2.3174970e+02 1.8198253e+03 -2.6649069e+03 - -4.4691434e+02 1.8277290e+03 -2.6489290e+03 - -6.3559530e+02 1.8379462e+03 -2.6270798e+03 - -7.9586054e+02 1.8479326e+03 -2.6035344e+03 - -9.3078307e+02 1.8560337e+03 -2.5810976e+03 - -1.0451190e+03 1.8615227e+03 -2.5611217e+03 - -1.1434067e+03 1.8642965e+03 -2.5439727e+03 - -1.2293025e+03 1.8645768e+03 -2.5294969e+03 - -1.3055363e+03 1.8627170e+03 -2.5173243e+03 - -1.3740754e+03 1.8591011e+03 -2.5070312e+03 - -1.4363172e+03 1.8540966e+03 -2.4982152e+03 - -1.4932498e+03 1.8480382e+03 -2.4905243e+03 - -1.5455727e+03 1.8412241e+03 -2.4836633e+03 - -1.5937828e+03 1.8339186e+03 -2.4773912e+03 - -1.6382351e+03 1.8263559e+03 -2.4715150e+03 - -1.6791846e+03 1.8187447e+03 -2.4658835e+03 - -1.7168163e+03 1.8112719e+03 -2.4603802e+03 - -1.7512660e+03 1.8041056e+03 -2.4549186e+03 - -1.7826361e+03 1.7973977e+03 -2.4494373e+03 - -1.8110060e+03 1.7912850e+03 -2.4438963e+03 - -1.8364413e+03 1.7858911e+03 -2.4382740e+03 - -1.8590001e+03 1.7813259e+03 -2.4325645e+03 - -1.8787376e+03 1.7776868e+03 -2.4267755e+03 - -1.8957106e+03 1.7750575e+03 -2.4209265e+03 - -1.9099807e+03 1.7735082e+03 -2.4150469e+03 - -1.9216172e+03 1.7730945e+03 -2.4091747e+03 - -1.9306987e+03 1.7738565e+03 -2.4033549e+03 - -1.9373156e+03 1.7758180e+03 -2.3976384e+03 - -1.9415714e+03 1.7789854e+03 -2.3920803e+03 - -1.9435831e+03 1.7833465e+03 -2.3867386e+03 - -1.9434825e+03 1.7888697e+03 -2.3816729e+03 - -1.9414159e+03 1.7955038e+03 -2.3769429e+03 - -1.9375438e+03 1.8031766e+03 -2.3726070e+03 - -1.9320403e+03 1.8117958e+03 -2.3687208e+03 - -1.9250914e+03 1.8212487e+03 -2.3653361e+03 - -1.9168939e+03 1.8314029e+03 -2.3624990e+03 - -1.9076526e+03 1.8421078e+03 -2.3602490e+03 - -1.8975781e+03 1.8531962e+03 -2.3586183e+03 - -1.8868838e+03 1.8644861e+03 -2.3576303e+03 - -1.8757831e+03 1.8757831e+03 -2.3572994e+03 - -1.8644861e+03 1.8868838e+03 -2.3576303e+03 - -1.8531962e+03 1.8975781e+03 -2.3586183e+03 - -1.8421078e+03 1.9076526e+03 -2.3602490e+03 - -1.8314029e+03 1.9168939e+03 -2.3624990e+03 - -1.8212487e+03 1.9250914e+03 -2.3653361e+03 - -1.8117958e+03 1.9320403e+03 -2.3687208e+03 - -1.8031766e+03 1.9375438e+03 -2.3726070e+03 - -1.7955038e+03 1.9414159e+03 -2.3769429e+03 - -1.7888697e+03 1.9434825e+03 -2.3816729e+03 - -1.7833465e+03 1.9435831e+03 -2.3867386e+03 - -1.7789854e+03 1.9415714e+03 -2.3920803e+03 - -1.7758180e+03 1.9373156e+03 -2.3976384e+03 - -1.7738565e+03 1.9306987e+03 -2.4033549e+03 - -1.7730945e+03 1.9216172e+03 -2.4091747e+03 - -1.7735082e+03 1.9099807e+03 -2.4150469e+03 - -1.7750575e+03 1.8957106e+03 -2.4209265e+03 - -1.7776868e+03 1.8787376e+03 -2.4267755e+03 - -1.7813259e+03 1.8590001e+03 -2.4325645e+03 - -1.7858911e+03 1.8364413e+03 -2.4382740e+03 - -1.7912850e+03 1.8110060e+03 -2.4438963e+03 - -1.7973977e+03 1.7826361e+03 -2.4494373e+03 - -1.8041056e+03 1.7512660e+03 -2.4549186e+03 - -1.8112719e+03 1.7168163e+03 -2.4603802e+03 - -1.8187447e+03 1.6791846e+03 -2.4658835e+03 - -1.8263559e+03 1.6382351e+03 -2.4715150e+03 - -1.8339186e+03 1.5937828e+03 -2.4773912e+03 - -1.8412241e+03 1.5455727e+03 -2.4836633e+03 - -1.8480382e+03 1.4932498e+03 -2.4905243e+03 - -1.8540966e+03 1.4363172e+03 -2.4982152e+03 - -1.8591011e+03 1.3740754e+03 -2.5070312e+03 - -1.8627170e+03 1.3055363e+03 -2.5173243e+03 - -1.8645768e+03 1.2293025e+03 -2.5294969e+03 - -1.8642965e+03 1.1434067e+03 -2.5439727e+03 - -1.8615227e+03 1.0451190e+03 -2.5611217e+03 - -1.8560337e+03 9.3078307e+02 -2.5810976e+03 - -1.8479326e+03 7.9586054e+02 -2.6035344e+03 - -1.8379462e+03 6.3559530e+02 -2.6270798e+03 - -1.8277290e+03 4.4691434e+02 -2.6489290e+03 - -1.8198253e+03 2.3174970e+02 -2.6649069e+03 - -1.8168148e+03 2.4067136e-09 -2.6708380e+03 - -1.8198253e+03 -2.3174970e+02 -2.6649069e+03 - -1.8277290e+03 -4.4691434e+02 -2.6489290e+03 - -1.8379462e+03 -6.3559530e+02 -2.6270798e+03 - -1.8479326e+03 -7.9586054e+02 -2.6035344e+03 - -1.8560337e+03 -9.3078307e+02 -2.5810976e+03 - -1.8615227e+03 -1.0451190e+03 -2.5611217e+03 - -1.8642965e+03 -1.1434067e+03 -2.5439727e+03 - -1.8645768e+03 -1.2293025e+03 -2.5294969e+03 - -1.8627170e+03 -1.3055363e+03 -2.5173243e+03 - -1.8591011e+03 -1.3740754e+03 -2.5070312e+03 - -1.8540966e+03 -1.4363172e+03 -2.4982152e+03 - -1.8480382e+03 -1.4932498e+03 -2.4905243e+03 - -1.8412241e+03 -1.5455727e+03 -2.4836633e+03 - -1.8339186e+03 -1.5937828e+03 -2.4773912e+03 - -1.8263559e+03 -1.6382351e+03 -2.4715150e+03 - -1.8187447e+03 -1.6791846e+03 -2.4658835e+03 - -1.8112719e+03 -1.7168163e+03 -2.4603802e+03 - -1.8041056e+03 -1.7512660e+03 -2.4549186e+03 - -1.7973977e+03 -1.7826361e+03 -2.4494373e+03 - -1.7912850e+03 -1.8110060e+03 -2.4438963e+03 - -1.7858911e+03 -1.8364413e+03 -2.4382740e+03 - -1.7813259e+03 -1.8590001e+03 -2.4325645e+03 - -1.7776868e+03 -1.8787376e+03 -2.4267755e+03 - -1.7750575e+03 -1.8957106e+03 -2.4209265e+03 - -1.7735082e+03 -1.9099807e+03 -2.4150469e+03 - -1.7730945e+03 -1.9216172e+03 -2.4091747e+03 - -1.7738565e+03 -1.9306987e+03 -2.4033549e+03 - -1.7758180e+03 -1.9373156e+03 -2.3976384e+03 - -1.7789854e+03 -1.9415714e+03 -2.3920803e+03 - -1.7833465e+03 -1.9435831e+03 -2.3867386e+03 - -1.7888697e+03 -1.9434825e+03 -2.3816729e+03 - -1.7955038e+03 -1.9414159e+03 -2.3769429e+03 - -1.8031766e+03 -1.9375438e+03 -2.3726070e+03 - -1.8117958e+03 -1.9320403e+03 -2.3687208e+03 - -1.8212487e+03 -1.9250914e+03 -2.3653361e+03 - -1.8314029e+03 -1.9168939e+03 -2.3624990e+03 - -1.8421078e+03 -1.9076526e+03 -2.3602490e+03 - -1.8531962e+03 -1.8975781e+03 -2.3586183e+03 - -1.8644861e+03 -1.8868838e+03 -2.3576303e+03 - -1.8757831e+03 -1.8757831e+03 -2.3572994e+03 - -1.8868838e+03 -1.8644861e+03 -2.3576303e+03 - -1.8975781e+03 -1.8531962e+03 -2.3586183e+03 - -1.9076526e+03 -1.8421078e+03 -2.3602490e+03 - -1.9168939e+03 -1.8314029e+03 -2.3624990e+03 - -1.9250914e+03 -1.8212487e+03 -2.3653361e+03 - -1.9320403e+03 -1.8117958e+03 -2.3687208e+03 - -1.9375438e+03 -1.8031766e+03 -2.3726070e+03 - -1.9414159e+03 -1.7955038e+03 -2.3769429e+03 - -1.9434825e+03 -1.7888697e+03 -2.3816729e+03 - -1.9435831e+03 -1.7833465e+03 -2.3867386e+03 - -1.9415714e+03 -1.7789854e+03 -2.3920803e+03 - -1.9373156e+03 -1.7758180e+03 -2.3976384e+03 - -1.9306987e+03 -1.7738565e+03 -2.4033549e+03 - -1.9216172e+03 -1.7730945e+03 -2.4091747e+03 - -1.9099807e+03 -1.7735082e+03 -2.4150469e+03 - -1.8957106e+03 -1.7750575e+03 -2.4209265e+03 - -1.8787376e+03 -1.7776868e+03 -2.4267755e+03 - -1.8590001e+03 -1.7813259e+03 -2.4325645e+03 - -1.8364413e+03 -1.7858911e+03 -2.4382740e+03 - -1.8110060e+03 -1.7912850e+03 -2.4438963e+03 - -1.7826361e+03 -1.7973977e+03 -2.4494373e+03 - -1.7512660e+03 -1.8041056e+03 -2.4549186e+03 - -1.7168163e+03 -1.8112719e+03 -2.4603802e+03 - -1.6791846e+03 -1.8187447e+03 -2.4658835e+03 - -1.6382351e+03 -1.8263559e+03 -2.4715150e+03 - -1.5937828e+03 -1.8339186e+03 -2.4773912e+03 - -1.5455727e+03 -1.8412241e+03 -2.4836633e+03 - -1.4932498e+03 -1.8480382e+03 -2.4905243e+03 - -1.4363172e+03 -1.8540966e+03 -2.4982152e+03 - -1.3740754e+03 -1.8591011e+03 -2.5070312e+03 - -1.3055363e+03 -1.8627170e+03 -2.5173243e+03 - -1.2293025e+03 -1.8645768e+03 -2.5294969e+03 - -1.1434067e+03 -1.8642965e+03 -2.5439727e+03 - -1.0451190e+03 -1.8615227e+03 -2.5611217e+03 - -9.3078307e+02 -1.8560337e+03 -2.5810976e+03 - -7.9586054e+02 -1.8479326e+03 -2.6035344e+03 - -6.3559530e+02 -1.8379462e+03 -2.6270798e+03 - -4.4691434e+02 -1.8277290e+03 -2.6489290e+03 - -2.3174970e+02 -1.8198253e+03 -2.6649069e+03 - -2.4067136e-09 -1.8168148e+03 -2.6708380e+03 - 2.3174970e+02 -1.8198253e+03 -2.6649069e+03 - 4.4691434e+02 -1.8277290e+03 -2.6489290e+03 - 6.3559530e+02 -1.8379462e+03 -2.6270798e+03 - 7.9586054e+02 -1.8479326e+03 -2.6035344e+03 - 9.3078307e+02 -1.8560337e+03 -2.5810976e+03 - 1.0451190e+03 -1.8615227e+03 -2.5611217e+03 - 1.1434067e+03 -1.8642965e+03 -2.5439727e+03 - 1.2293025e+03 -1.8645768e+03 -2.5294969e+03 - 1.3055363e+03 -1.8627170e+03 -2.5173243e+03 - 1.3740754e+03 -1.8591011e+03 -2.5070312e+03 - 1.4363172e+03 -1.8540966e+03 -2.4982152e+03 - 1.4932498e+03 -1.8480382e+03 -2.4905243e+03 - 1.5455727e+03 -1.8412241e+03 -2.4836633e+03 - 1.5937828e+03 -1.8339186e+03 -2.4773912e+03 - 1.6382351e+03 -1.8263559e+03 -2.4715150e+03 - 1.6791846e+03 -1.8187447e+03 -2.4658835e+03 - 1.7168163e+03 -1.8112719e+03 -2.4603802e+03 - 1.7512660e+03 -1.8041056e+03 -2.4549186e+03 - 1.7826361e+03 -1.7973977e+03 -2.4494373e+03 - 1.8110060e+03 -1.7912850e+03 -2.4438963e+03 - 1.8364413e+03 -1.7858911e+03 -2.4382740e+03 - 1.8590001e+03 -1.7813259e+03 -2.4325645e+03 - 1.8787376e+03 -1.7776868e+03 -2.4267755e+03 - 1.8957106e+03 -1.7750575e+03 -2.4209265e+03 - 1.9099807e+03 -1.7735082e+03 -2.4150469e+03 - 1.9216172e+03 -1.7730945e+03 -2.4091747e+03 - 1.9306987e+03 -1.7738565e+03 -2.4033549e+03 - 1.9373156e+03 -1.7758180e+03 -2.3976384e+03 - 1.9415714e+03 -1.7789854e+03 -2.3920803e+03 - 1.9435831e+03 -1.7833465e+03 -2.3867386e+03 - 1.9434825e+03 -1.7888697e+03 -2.3816729e+03 - 1.9414159e+03 -1.7955038e+03 -2.3769429e+03 - 1.9375438e+03 -1.8031766e+03 -2.3726070e+03 - 1.9320403e+03 -1.8117958e+03 -2.3687208e+03 - 1.9250914e+03 -1.8212487e+03 -2.3653361e+03 - 1.9168939e+03 -1.8314029e+03 -2.3624990e+03 - 1.9076526e+03 -1.8421078e+03 -2.3602490e+03 - 1.8975781e+03 -1.8531962e+03 -2.3586183e+03 - 1.8868838e+03 -1.8644861e+03 -2.3576303e+03 - 1.8757831e+03 -1.8757831e+03 -2.3572994e+03 - 1.8644861e+03 -1.8868838e+03 -2.3576303e+03 - 1.8531962e+03 -1.8975781e+03 -2.3586183e+03 - 1.8421078e+03 -1.9076526e+03 -2.3602490e+03 - 1.8314029e+03 -1.9168939e+03 -2.3624990e+03 - 1.8212487e+03 -1.9250914e+03 -2.3653361e+03 - 1.8117958e+03 -1.9320403e+03 -2.3687208e+03 - 1.8031766e+03 -1.9375438e+03 -2.3726070e+03 - 1.7955038e+03 -1.9414159e+03 -2.3769429e+03 - 1.7888697e+03 -1.9434825e+03 -2.3816729e+03 - 1.7833465e+03 -1.9435831e+03 -2.3867386e+03 - 1.7789854e+03 -1.9415714e+03 -2.3920803e+03 - 1.7758180e+03 -1.9373156e+03 -2.3976384e+03 - 1.7738565e+03 -1.9306987e+03 -2.4033549e+03 - 1.7730945e+03 -1.9216172e+03 -2.4091747e+03 - 1.7735082e+03 -1.9099807e+03 -2.4150469e+03 - 1.7750575e+03 -1.8957106e+03 -2.4209265e+03 - 1.7776868e+03 -1.8787376e+03 -2.4267755e+03 - 1.7813259e+03 -1.8590001e+03 -2.4325645e+03 - 1.7858911e+03 -1.8364413e+03 -2.4382740e+03 - 1.7912850e+03 -1.8110060e+03 -2.4438963e+03 - 1.7973977e+03 -1.7826361e+03 -2.4494373e+03 - 1.8041056e+03 -1.7512660e+03 -2.4549186e+03 - 1.8112719e+03 -1.7168163e+03 -2.4603802e+03 - 1.8187447e+03 -1.6791846e+03 -2.4658835e+03 - 1.8263559e+03 -1.6382351e+03 -2.4715150e+03 - 1.8339186e+03 -1.5937828e+03 -2.4773912e+03 - 1.8412241e+03 -1.5455727e+03 -2.4836633e+03 - 1.8480382e+03 -1.4932498e+03 -2.4905243e+03 - 1.8540966e+03 -1.4363172e+03 -2.4982152e+03 - 1.8591011e+03 -1.3740754e+03 -2.5070312e+03 - 1.8627170e+03 -1.3055363e+03 -2.5173243e+03 - 1.8645768e+03 -1.2293025e+03 -2.5294969e+03 - 1.8642965e+03 -1.1434067e+03 -2.5439727e+03 - 1.8615227e+03 -1.0451190e+03 -2.5611217e+03 - 1.8560337e+03 -9.3078307e+02 -2.5810976e+03 - 1.8479326e+03 -7.9586054e+02 -2.6035344e+03 - 1.8379462e+03 -6.3559530e+02 -2.6270798e+03 - 1.8277290e+03 -4.4691434e+02 -2.6489290e+03 - 1.8198253e+03 -2.3174970e+02 -2.6649069e+03 - 1.8168148e+03 0.0000000e+00 -2.6708380e+03 - 1.7759790e+03 -7.2201409e-09 -2.7158956e+03 - 1.7778941e+03 2.1295189e+02 -2.7115738e+03 - 1.7830292e+03 4.1391599e+02 -2.6996493e+03 - 1.7899115e+03 5.9481655e+02 -2.6826507e+03 - 1.7969344e+03 7.5275600e+02 -2.6633795e+03 - 1.8028883e+03 8.8875466e+02 -2.6440179e+03 - 1.8071030e+03 1.0057502e+03 -2.6258739e+03 - 1.8093486e+03 1.1071060e+03 -2.6095330e+03 - 1.8096747e+03 1.1958592e+03 -2.5951155e+03 - 1.8082789e+03 1.2744761e+03 -2.5824918e+03 - 1.8054218e+03 1.3448543e+03 -2.5714222e+03 - 1.8013796e+03 1.4084149e+03 -2.5616374e+03 - 1.7964204e+03 1.4662081e+03 -2.5528775e+03 - 1.7907943e+03 1.5190067e+03 -2.5449110e+03 - 1.7847304e+03 1.5673789e+03 -2.5375399e+03 - 1.7784368e+03 1.6117438e+03 -2.5306004e+03 - 1.7721025e+03 1.6524127e+03 -2.5239602e+03 - 1.7658985e+03 1.6896181e+03 -2.5175156e+03 - 1.7599806e+03 1.7235367e+03 -2.5111875e+03 - 1.7544901e+03 1.7543047e+03 -2.5049188e+03 - 1.7495547e+03 1.7820309e+03 -2.4986710e+03 - 1.7452901e+03 1.8068051e+03 -2.4924224e+03 - 1.7417993e+03 1.8287057e+03 -2.4861653e+03 - 1.7391729e+03 1.8478056e+03 -2.4799048e+03 - 1.7374891e+03 1.8641758e+03 -2.4736564e+03 - 1.7368128e+03 1.8778899e+03 -2.4674453e+03 - 1.7371950e+03 1.8890265e+03 -2.4613043e+03 - 1.7386721e+03 1.8976717e+03 -2.4552730e+03 - 1.7412648e+03 1.9039212e+03 -2.4493963e+03 - 1.7449773e+03 1.9078816e+03 -2.4437229e+03 - 1.7497963e+03 1.9096713e+03 -2.4383046e+03 - 1.7556904e+03 1.9094213e+03 -2.4331945e+03 - 1.7626094e+03 1.9072754e+03 -2.4284459e+03 - 1.7704841e+03 1.9033898e+03 -2.4241109e+03 - 1.7792261e+03 1.8979326e+03 -2.4202392e+03 - 1.7887282e+03 1.8910821e+03 -2.4168770e+03 - 1.7988652e+03 1.8830261e+03 -2.4140656e+03 - 1.8094947e+03 1.8739591e+03 -2.4118403e+03 - 1.8204590e+03 1.8640806e+03 -2.4102297e+03 - 1.8315866e+03 1.8535921e+03 -2.4092548e+03 - 1.8426949e+03 1.8426949e+03 -2.4089284e+03 - 1.8535921e+03 1.8315866e+03 -2.4092548e+03 - 1.8640806e+03 1.8204590e+03 -2.4102297e+03 - 1.8739591e+03 1.8094947e+03 -2.4118403e+03 - 1.8830261e+03 1.7988652e+03 -2.4140656e+03 - 1.8910821e+03 1.7887282e+03 -2.4168770e+03 - 1.8979326e+03 1.7792261e+03 -2.4202392e+03 - 1.9033898e+03 1.7704841e+03 -2.4241109e+03 - 1.9072754e+03 1.7626094e+03 -2.4284459e+03 - 1.9094213e+03 1.7556904e+03 -2.4331945e+03 - 1.9096713e+03 1.7497963e+03 -2.4383046e+03 - 1.9078816e+03 1.7449773e+03 -2.4437229e+03 - 1.9039212e+03 1.7412648e+03 -2.4493963e+03 - 1.8976717e+03 1.7386721e+03 -2.4552730e+03 - 1.8890265e+03 1.7371950e+03 -2.4613043e+03 - 1.8778899e+03 1.7368128e+03 -2.4674453e+03 - 1.8641758e+03 1.7374891e+03 -2.4736564e+03 - 1.8478056e+03 1.7391729e+03 -2.4799048e+03 - 1.8287057e+03 1.7417993e+03 -2.4861653e+03 - 1.8068051e+03 1.7452901e+03 -2.4924224e+03 - 1.7820309e+03 1.7495547e+03 -2.4986710e+03 - 1.7543047e+03 1.7544901e+03 -2.5049188e+03 - 1.7235367e+03 1.7599806e+03 -2.5111875e+03 - 1.6896181e+03 1.7658985e+03 -2.5175156e+03 - 1.6524127e+03 1.7721025e+03 -2.5239602e+03 - 1.6117438e+03 1.7784368e+03 -2.5306004e+03 - 1.5673789e+03 1.7847304e+03 -2.5375399e+03 - 1.5190067e+03 1.7907943e+03 -2.5449110e+03 - 1.4662081e+03 1.7964204e+03 -2.5528775e+03 - 1.4084149e+03 1.8013796e+03 -2.5616374e+03 - 1.3448543e+03 1.8054218e+03 -2.5714222e+03 - 1.2744761e+03 1.8082789e+03 -2.5824918e+03 - 1.1958592e+03 1.8096747e+03 -2.5951155e+03 - 1.1071060e+03 1.8093486e+03 -2.6095330e+03 - 1.0057502e+03 1.8071030e+03 -2.6258739e+03 - 8.8875466e+02 1.8028883e+03 -2.6440179e+03 - 7.5275600e+02 1.7969344e+03 -2.6633795e+03 - 5.9481655e+02 1.7899115e+03 -2.6826507e+03 - 4.1391599e+02 1.7830292e+03 -2.6996493e+03 - 2.1295189e+02 1.7778941e+03 -2.7115738e+03 - 2.4067136e-09 1.7759790e+03 -2.7158956e+03 - -2.1295189e+02 1.7778941e+03 -2.7115738e+03 - -4.1391599e+02 1.7830292e+03 -2.6996493e+03 - -5.9481655e+02 1.7899115e+03 -2.6826507e+03 - -7.5275600e+02 1.7969344e+03 -2.6633795e+03 - -8.8875466e+02 1.8028883e+03 -2.6440179e+03 - -1.0057502e+03 1.8071030e+03 -2.6258739e+03 - -1.1071060e+03 1.8093486e+03 -2.6095330e+03 - -1.1958592e+03 1.8096747e+03 -2.5951155e+03 - -1.2744761e+03 1.8082789e+03 -2.5824918e+03 - -1.3448543e+03 1.8054218e+03 -2.5714222e+03 - -1.4084149e+03 1.8013796e+03 -2.5616374e+03 - -1.4662081e+03 1.7964204e+03 -2.5528775e+03 - -1.5190067e+03 1.7907943e+03 -2.5449110e+03 - -1.5673789e+03 1.7847304e+03 -2.5375399e+03 - -1.6117438e+03 1.7784368e+03 -2.5306004e+03 - -1.6524127e+03 1.7721025e+03 -2.5239602e+03 - -1.6896181e+03 1.7658985e+03 -2.5175156e+03 - -1.7235367e+03 1.7599806e+03 -2.5111875e+03 - -1.7543047e+03 1.7544901e+03 -2.5049188e+03 - -1.7820309e+03 1.7495547e+03 -2.4986710e+03 - -1.8068051e+03 1.7452901e+03 -2.4924224e+03 - -1.8287057e+03 1.7417993e+03 -2.4861653e+03 - -1.8478056e+03 1.7391729e+03 -2.4799048e+03 - -1.8641758e+03 1.7374891e+03 -2.4736564e+03 - -1.8778899e+03 1.7368128e+03 -2.4674453e+03 - -1.8890265e+03 1.7371950e+03 -2.4613043e+03 - -1.8976717e+03 1.7386721e+03 -2.4552730e+03 - -1.9039212e+03 1.7412648e+03 -2.4493963e+03 - -1.9078816e+03 1.7449773e+03 -2.4437229e+03 - -1.9096713e+03 1.7497963e+03 -2.4383046e+03 - -1.9094213e+03 1.7556904e+03 -2.4331945e+03 - -1.9072754e+03 1.7626094e+03 -2.4284459e+03 - -1.9033898e+03 1.7704841e+03 -2.4241109e+03 - -1.8979326e+03 1.7792261e+03 -2.4202392e+03 - -1.8910821e+03 1.7887282e+03 -2.4168770e+03 - -1.8830261e+03 1.7988652e+03 -2.4140656e+03 - -1.8739591e+03 1.8094947e+03 -2.4118403e+03 - -1.8640806e+03 1.8204590e+03 -2.4102297e+03 - -1.8535921e+03 1.8315866e+03 -2.4092548e+03 - -1.8426949e+03 1.8426949e+03 -2.4089284e+03 - -1.8315866e+03 1.8535921e+03 -2.4092548e+03 - -1.8204590e+03 1.8640806e+03 -2.4102297e+03 - -1.8094947e+03 1.8739591e+03 -2.4118403e+03 - -1.7988652e+03 1.8830261e+03 -2.4140656e+03 - -1.7887282e+03 1.8910821e+03 -2.4168770e+03 - -1.7792261e+03 1.8979326e+03 -2.4202392e+03 - -1.7704841e+03 1.9033898e+03 -2.4241109e+03 - -1.7626094e+03 1.9072754e+03 -2.4284459e+03 - -1.7556904e+03 1.9094213e+03 -2.4331945e+03 - -1.7497963e+03 1.9096713e+03 -2.4383046e+03 - -1.7449773e+03 1.9078816e+03 -2.4437229e+03 - -1.7412648e+03 1.9039212e+03 -2.4493963e+03 - -1.7386721e+03 1.8976717e+03 -2.4552730e+03 - -1.7371950e+03 1.8890265e+03 -2.4613043e+03 - -1.7368128e+03 1.8778899e+03 -2.4674453e+03 - -1.7374891e+03 1.8641758e+03 -2.4736564e+03 - -1.7391729e+03 1.8478056e+03 -2.4799048e+03 - -1.7417993e+03 1.8287057e+03 -2.4861653e+03 - -1.7452901e+03 1.8068051e+03 -2.4924224e+03 - -1.7495547e+03 1.7820309e+03 -2.4986710e+03 - -1.7544901e+03 1.7543047e+03 -2.5049188e+03 - -1.7599806e+03 1.7235367e+03 -2.5111875e+03 - -1.7658985e+03 1.6896181e+03 -2.5175156e+03 - -1.7721025e+03 1.6524127e+03 -2.5239602e+03 - -1.7784368e+03 1.6117438e+03 -2.5306004e+03 - -1.7847304e+03 1.5673789e+03 -2.5375399e+03 - -1.7907943e+03 1.5190067e+03 -2.5449110e+03 - -1.7964204e+03 1.4662081e+03 -2.5528775e+03 - -1.8013796e+03 1.4084149e+03 -2.5616374e+03 - -1.8054218e+03 1.3448543e+03 -2.5714222e+03 - -1.8082789e+03 1.2744761e+03 -2.5824918e+03 - -1.8096747e+03 1.1958592e+03 -2.5951155e+03 - -1.8093486e+03 1.1071060e+03 -2.6095330e+03 - -1.8071030e+03 1.0057502e+03 -2.6258739e+03 - -1.8028883e+03 8.8875466e+02 -2.6440179e+03 - -1.7969344e+03 7.5275600e+02 -2.6633795e+03 - -1.7899115e+03 5.9481655e+02 -2.6826507e+03 - -1.7830292e+03 4.1391599e+02 -2.6996493e+03 - -1.7778941e+03 2.1295189e+02 -2.7115738e+03 - -1.7759790e+03 4.8134273e-09 -2.7158956e+03 - -1.7778941e+03 -2.1295189e+02 -2.7115738e+03 - -1.7830292e+03 -4.1391599e+02 -2.6996493e+03 - -1.7899115e+03 -5.9481655e+02 -2.6826507e+03 - -1.7969344e+03 -7.5275600e+02 -2.6633795e+03 - -1.8028883e+03 -8.8875466e+02 -2.6440179e+03 - -1.8071030e+03 -1.0057502e+03 -2.6258739e+03 - -1.8093486e+03 -1.1071060e+03 -2.6095330e+03 - -1.8096747e+03 -1.1958592e+03 -2.5951155e+03 - -1.8082789e+03 -1.2744761e+03 -2.5824918e+03 - -1.8054218e+03 -1.3448543e+03 -2.5714222e+03 - -1.8013796e+03 -1.4084149e+03 -2.5616374e+03 - -1.7964204e+03 -1.4662081e+03 -2.5528775e+03 - -1.7907943e+03 -1.5190067e+03 -2.5449110e+03 - -1.7847304e+03 -1.5673789e+03 -2.5375399e+03 - -1.7784368e+03 -1.6117438e+03 -2.5306004e+03 - -1.7721025e+03 -1.6524127e+03 -2.5239602e+03 - -1.7658985e+03 -1.6896181e+03 -2.5175156e+03 - -1.7599806e+03 -1.7235367e+03 -2.5111875e+03 - -1.7544901e+03 -1.7543047e+03 -2.5049188e+03 - -1.7495547e+03 -1.7820309e+03 -2.4986710e+03 - -1.7452901e+03 -1.8068051e+03 -2.4924224e+03 - -1.7417993e+03 -1.8287057e+03 -2.4861653e+03 - -1.7391729e+03 -1.8478056e+03 -2.4799048e+03 - -1.7374891e+03 -1.8641758e+03 -2.4736564e+03 - -1.7368128e+03 -1.8778899e+03 -2.4674453e+03 - -1.7371950e+03 -1.8890265e+03 -2.4613043e+03 - -1.7386721e+03 -1.8976717e+03 -2.4552730e+03 - -1.7412648e+03 -1.9039212e+03 -2.4493963e+03 - -1.7449773e+03 -1.9078816e+03 -2.4437229e+03 - -1.7497963e+03 -1.9096713e+03 -2.4383046e+03 - -1.7556904e+03 -1.9094213e+03 -2.4331945e+03 - -1.7626094e+03 -1.9072754e+03 -2.4284459e+03 - -1.7704841e+03 -1.9033898e+03 -2.4241109e+03 - -1.7792261e+03 -1.8979326e+03 -2.4202392e+03 - -1.7887282e+03 -1.8910821e+03 -2.4168770e+03 - -1.7988652e+03 -1.8830261e+03 -2.4140656e+03 - -1.8094947e+03 -1.8739591e+03 -2.4118403e+03 - -1.8204590e+03 -1.8640806e+03 -2.4102297e+03 - -1.8315866e+03 -1.8535921e+03 -2.4092548e+03 - -1.8426949e+03 -1.8426949e+03 -2.4089284e+03 - -1.8535921e+03 -1.8315866e+03 -2.4092548e+03 - -1.8640806e+03 -1.8204590e+03 -2.4102297e+03 - -1.8739591e+03 -1.8094947e+03 -2.4118403e+03 - -1.8830261e+03 -1.7988652e+03 -2.4140656e+03 - -1.8910821e+03 -1.7887282e+03 -2.4168770e+03 - -1.8979326e+03 -1.7792261e+03 -2.4202392e+03 - -1.9033898e+03 -1.7704841e+03 -2.4241109e+03 - -1.9072754e+03 -1.7626094e+03 -2.4284459e+03 - -1.9094213e+03 -1.7556904e+03 -2.4331945e+03 - -1.9096713e+03 -1.7497963e+03 -2.4383046e+03 - -1.9078816e+03 -1.7449773e+03 -2.4437229e+03 - -1.9039212e+03 -1.7412648e+03 -2.4493963e+03 - -1.8976717e+03 -1.7386721e+03 -2.4552730e+03 - -1.8890265e+03 -1.7371950e+03 -2.4613043e+03 - -1.8778899e+03 -1.7368128e+03 -2.4674453e+03 - -1.8641758e+03 -1.7374891e+03 -2.4736564e+03 - -1.8478056e+03 -1.7391729e+03 -2.4799048e+03 - -1.8287057e+03 -1.7417993e+03 -2.4861653e+03 - -1.8068051e+03 -1.7452901e+03 -2.4924224e+03 - -1.7820309e+03 -1.7495547e+03 -2.4986710e+03 - -1.7543047e+03 -1.7544901e+03 -2.5049188e+03 - -1.7235367e+03 -1.7599806e+03 -2.5111875e+03 - -1.6896181e+03 -1.7658985e+03 -2.5175156e+03 - -1.6524127e+03 -1.7721025e+03 -2.5239602e+03 - -1.6117438e+03 -1.7784368e+03 -2.5306004e+03 - -1.5673789e+03 -1.7847304e+03 -2.5375399e+03 - -1.5190067e+03 -1.7907943e+03 -2.5449110e+03 - -1.4662081e+03 -1.7964204e+03 -2.5528775e+03 - -1.4084149e+03 -1.8013796e+03 -2.5616374e+03 - -1.3448543e+03 -1.8054218e+03 -2.5714222e+03 - -1.2744761e+03 -1.8082789e+03 -2.5824918e+03 - -1.1958592e+03 -1.8096747e+03 -2.5951155e+03 - -1.1071060e+03 -1.8093486e+03 -2.6095330e+03 - -1.0057502e+03 -1.8071030e+03 -2.6258739e+03 - -8.8875466e+02 -1.8028883e+03 -2.6440179e+03 - -7.5275600e+02 -1.7969344e+03 -2.6633795e+03 - -5.9481655e+02 -1.7899115e+03 -2.6826507e+03 - -4.1391599e+02 -1.7830292e+03 -2.6996493e+03 - -2.1295189e+02 -1.7778941e+03 -2.7115738e+03 - -2.4067136e-09 -1.7759790e+03 -2.7158956e+03 - 2.1295189e+02 -1.7778941e+03 -2.7115738e+03 - 4.1391599e+02 -1.7830292e+03 -2.6996493e+03 - 5.9481655e+02 -1.7899115e+03 -2.6826507e+03 - 7.5275600e+02 -1.7969344e+03 -2.6633795e+03 - 8.8875466e+02 -1.8028883e+03 -2.6440179e+03 - 1.0057502e+03 -1.8071030e+03 -2.6258739e+03 - 1.1071060e+03 -1.8093486e+03 -2.6095330e+03 - 1.1958592e+03 -1.8096747e+03 -2.5951155e+03 - 1.2744761e+03 -1.8082789e+03 -2.5824918e+03 - 1.3448543e+03 -1.8054218e+03 -2.5714222e+03 - 1.4084149e+03 -1.8013796e+03 -2.5616374e+03 - 1.4662081e+03 -1.7964204e+03 -2.5528775e+03 - 1.5190067e+03 -1.7907943e+03 -2.5449110e+03 - 1.5673789e+03 -1.7847304e+03 -2.5375399e+03 - 1.6117438e+03 -1.7784368e+03 -2.5306004e+03 - 1.6524127e+03 -1.7721025e+03 -2.5239602e+03 - 1.6896181e+03 -1.7658985e+03 -2.5175156e+03 - 1.7235367e+03 -1.7599806e+03 -2.5111875e+03 - 1.7543047e+03 -1.7544901e+03 -2.5049188e+03 - 1.7820309e+03 -1.7495547e+03 -2.4986710e+03 - 1.8068051e+03 -1.7452901e+03 -2.4924224e+03 - 1.8287057e+03 -1.7417993e+03 -2.4861653e+03 - 1.8478056e+03 -1.7391729e+03 -2.4799048e+03 - 1.8641758e+03 -1.7374891e+03 -2.4736564e+03 - 1.8778899e+03 -1.7368128e+03 -2.4674453e+03 - 1.8890265e+03 -1.7371950e+03 -2.4613043e+03 - 1.8976717e+03 -1.7386721e+03 -2.4552730e+03 - 1.9039212e+03 -1.7412648e+03 -2.4493963e+03 - 1.9078816e+03 -1.7449773e+03 -2.4437229e+03 - 1.9096713e+03 -1.7497963e+03 -2.4383046e+03 - 1.9094213e+03 -1.7556904e+03 -2.4331945e+03 - 1.9072754e+03 -1.7626094e+03 -2.4284459e+03 - 1.9033898e+03 -1.7704841e+03 -2.4241109e+03 - 1.8979326e+03 -1.7792261e+03 -2.4202392e+03 - 1.8910821e+03 -1.7887282e+03 -2.4168770e+03 - 1.8830261e+03 -1.7988652e+03 -2.4140656e+03 - 1.8739591e+03 -1.8094947e+03 -2.4118403e+03 - 1.8640806e+03 -1.8204590e+03 -2.4102297e+03 - 1.8535921e+03 -1.8315866e+03 -2.4092548e+03 - 1.8426949e+03 -1.8426949e+03 -2.4089284e+03 - 1.8315866e+03 -1.8535921e+03 -2.4092548e+03 - 1.8204590e+03 -1.8640806e+03 -2.4102297e+03 - 1.8094947e+03 -1.8739591e+03 -2.4118403e+03 - 1.7988652e+03 -1.8830261e+03 -2.4140656e+03 - 1.7887282e+03 -1.8910821e+03 -2.4168770e+03 - 1.7792261e+03 -1.8979326e+03 -2.4202392e+03 - 1.7704841e+03 -1.9033898e+03 -2.4241109e+03 - 1.7626094e+03 -1.9072754e+03 -2.4284459e+03 - 1.7556904e+03 -1.9094213e+03 -2.4331945e+03 - 1.7497963e+03 -1.9096713e+03 -2.4383046e+03 - 1.7449773e+03 -1.9078816e+03 -2.4437229e+03 - 1.7412648e+03 -1.9039212e+03 -2.4493963e+03 - 1.7386721e+03 -1.8976717e+03 -2.4552730e+03 - 1.7371950e+03 -1.8890265e+03 -2.4613043e+03 - 1.7368128e+03 -1.8778899e+03 -2.4674453e+03 - 1.7374891e+03 -1.8641758e+03 -2.4736564e+03 - 1.7391729e+03 -1.8478056e+03 -2.4799048e+03 - 1.7417993e+03 -1.8287057e+03 -2.4861653e+03 - 1.7452901e+03 -1.8068051e+03 -2.4924224e+03 - 1.7495547e+03 -1.7820309e+03 -2.4986710e+03 - 1.7544901e+03 -1.7543047e+03 -2.5049188e+03 - 1.7599806e+03 -1.7235367e+03 -2.5111875e+03 - 1.7658985e+03 -1.6896181e+03 -2.5175156e+03 - 1.7721025e+03 -1.6524127e+03 -2.5239602e+03 - 1.7784368e+03 -1.6117438e+03 -2.5306004e+03 - 1.7847304e+03 -1.5673789e+03 -2.5375399e+03 - 1.7907943e+03 -1.5190067e+03 -2.5449110e+03 - 1.7964204e+03 -1.4662081e+03 -2.5528775e+03 - 1.8013796e+03 -1.4084149e+03 -2.5616374e+03 - 1.8054218e+03 -1.3448543e+03 -2.5714222e+03 - 1.8082789e+03 -1.2744761e+03 -2.5824918e+03 - 1.8096747e+03 -1.1958592e+03 -2.5951155e+03 - 1.8093486e+03 -1.1071060e+03 -2.6095330e+03 - 1.8071030e+03 -1.0057502e+03 -2.6258739e+03 - 1.8028883e+03 -8.8875466e+02 -2.6440179e+03 - 1.7969344e+03 -7.5275600e+02 -2.6633795e+03 - 1.7899115e+03 -5.9481655e+02 -2.6826507e+03 - 1.7830292e+03 -4.1391599e+02 -2.6996493e+03 - 1.7778941e+03 -2.1295189e+02 -2.7115738e+03 - 1.7759790e+03 0.0000000e+00 -2.7158956e+03 - 1.7348776e+03 0.0000000e+00 -2.7594944e+03 - 1.7361142e+03 1.9815016e+02 -2.7561934e+03 - 1.7394735e+03 3.8717809e+02 -2.7469339e+03 - 1.7440781e+03 5.6043504e+02 -2.7333396e+03 - 1.7489024e+03 7.1479347e+02 -2.7173429e+03 - 1.7530942e+03 8.5014091e+02 -2.7006095e+03 - 1.7561108e+03 9.6817706e+02 -2.6842858e+03 - 1.7577041e+03 1.0713164e+03 -2.6690115e+03 - 1.7578421e+03 1.1619996e+03 -2.6550494e+03 - 1.7566267e+03 1.2423715e+03 -2.6424249e+03 - 1.7542311e+03 1.3141868e+03 -2.6310343e+03 - 1.7508593e+03 1.3788257e+03 -2.6207155e+03 - 1.7467226e+03 1.4373513e+03 -2.6112899e+03 - 1.7420269e+03 1.4905733e+03 -2.6025855e+03 - 1.7369674e+03 1.5391062e+03 -2.5944473e+03 - 1.7317254e+03 1.5834163e+03 -2.5867423e+03 - 1.7264687e+03 1.6238585e+03 -2.5793598e+03 - 1.7213516e+03 1.6607054e+03 -2.5722112e+03 - 1.7165154e+03 1.6941684e+03 -2.5652277e+03 - 1.7120896e+03 1.7244141e+03 -2.5583587e+03 - 1.7081919e+03 1.7515772e+03 -2.5515697e+03 - 1.7049286e+03 1.7757703e+03 -2.5448407e+03 - 1.7023946e+03 1.7970909e+03 -2.5381643e+03 - 1.7006737e+03 1.8156278e+03 -2.5315442e+03 - 1.6998373e+03 1.8314660e+03 -2.5249940e+03 - 1.6999447e+03 1.8446903e+03 -2.5185355e+03 - 1.7010418e+03 1.8553882e+03 -2.5121980e+03 - 1.7031609e+03 1.8636530e+03 -2.5060166e+03 - 1.7063193e+03 1.8695854e+03 -2.5000314e+03 - 1.7105187e+03 1.8732950e+03 -2.4942860e+03 - 1.7157445e+03 1.8749016e+03 -2.4888267e+03 - 1.7219650e+03 1.8745355e+03 -2.4837012e+03 - 1.7291311e+03 1.8723382e+03 -2.4789572e+03 - 1.7371760e+03 1.8684620e+03 -2.4746413e+03 - 1.7460148e+03 1.8630690e+03 -2.4707983e+03 - 1.7555454e+03 1.8563308e+03 -2.4674694e+03 - 1.7656491e+03 1.8484266e+03 -2.4646916e+03 - 1.7761911e+03 1.8395414e+03 -2.4624965e+03 - 1.7870224e+03 1.8298643e+03 -2.4609097e+03 - 1.7979815e+03 1.8195860e+03 -2.4599500e+03 - 1.8088962e+03 1.8088962e+03 -2.4596288e+03 - 1.8195860e+03 1.7979815e+03 -2.4599500e+03 - 1.8298643e+03 1.7870224e+03 -2.4609097e+03 - 1.8395414e+03 1.7761911e+03 -2.4624965e+03 - 1.8484266e+03 1.7656491e+03 -2.4646916e+03 - 1.8563308e+03 1.7555454e+03 -2.4674694e+03 - 1.8630690e+03 1.7460148e+03 -2.4707983e+03 - 1.8684620e+03 1.7371760e+03 -2.4746413e+03 - 1.8723382e+03 1.7291311e+03 -2.4789572e+03 - 1.8745355e+03 1.7219650e+03 -2.4837012e+03 - 1.8749016e+03 1.7157445e+03 -2.4888267e+03 - 1.8732950e+03 1.7105187e+03 -2.4942860e+03 - 1.8695854e+03 1.7063193e+03 -2.5000314e+03 - 1.8636530e+03 1.7031609e+03 -2.5060166e+03 - 1.8553882e+03 1.7010418e+03 -2.5121980e+03 - 1.8446903e+03 1.6999447e+03 -2.5185355e+03 - 1.8314660e+03 1.6998373e+03 -2.5249940e+03 - 1.8156278e+03 1.7006737e+03 -2.5315442e+03 - 1.7970909e+03 1.7023946e+03 -2.5381643e+03 - 1.7757703e+03 1.7049286e+03 -2.5448407e+03 - 1.7515772e+03 1.7081919e+03 -2.5515697e+03 - 1.7244141e+03 1.7120896e+03 -2.5583587e+03 - 1.6941684e+03 1.7165154e+03 -2.5652277e+03 - 1.6607054e+03 1.7213516e+03 -2.5722112e+03 - 1.6238585e+03 1.7264687e+03 -2.5793598e+03 - 1.5834163e+03 1.7317254e+03 -2.5867423e+03 - 1.5391062e+03 1.7369674e+03 -2.5944473e+03 - 1.4905733e+03 1.7420269e+03 -2.6025855e+03 - 1.4373513e+03 1.7467226e+03 -2.6112899e+03 - 1.3788257e+03 1.7508593e+03 -2.6207155e+03 - 1.3141868e+03 1.7542311e+03 -2.6310343e+03 - 1.2423715e+03 1.7566267e+03 -2.6424249e+03 - 1.1619996e+03 1.7578421e+03 -2.6550494e+03 - 1.0713164e+03 1.7577041e+03 -2.6690115e+03 - 9.6817706e+02 1.7561108e+03 -2.6842858e+03 - 8.5014091e+02 1.7530942e+03 -2.7006095e+03 - 7.1479347e+02 1.7489024e+03 -2.7173429e+03 - 5.6043504e+02 1.7440781e+03 -2.7333396e+03 - 3.8717809e+02 1.7394735e+03 -2.7469339e+03 - 1.9815016e+02 1.7361142e+03 -2.7561934e+03 - 2.4067136e-09 1.7348776e+03 -2.7594944e+03 - -1.9815016e+02 1.7361142e+03 -2.7561934e+03 - -3.8717809e+02 1.7394735e+03 -2.7469339e+03 - -5.6043504e+02 1.7440781e+03 -2.7333396e+03 - -7.1479347e+02 1.7489024e+03 -2.7173429e+03 - -8.5014091e+02 1.7530942e+03 -2.7006095e+03 - -9.6817706e+02 1.7561108e+03 -2.6842858e+03 - -1.0713164e+03 1.7577041e+03 -2.6690115e+03 - -1.1619996e+03 1.7578421e+03 -2.6550494e+03 - -1.2423715e+03 1.7566267e+03 -2.6424249e+03 - -1.3141868e+03 1.7542311e+03 -2.6310343e+03 - -1.3788257e+03 1.7508593e+03 -2.6207155e+03 - -1.4373513e+03 1.7467226e+03 -2.6112899e+03 - -1.4905733e+03 1.7420269e+03 -2.6025855e+03 - -1.5391062e+03 1.7369674e+03 -2.5944473e+03 - -1.5834163e+03 1.7317254e+03 -2.5867423e+03 - -1.6238585e+03 1.7264687e+03 -2.5793598e+03 - -1.6607054e+03 1.7213516e+03 -2.5722112e+03 - -1.6941684e+03 1.7165154e+03 -2.5652277e+03 - -1.7244141e+03 1.7120896e+03 -2.5583587e+03 - -1.7515772e+03 1.7081919e+03 -2.5515697e+03 - -1.7757703e+03 1.7049286e+03 -2.5448407e+03 - -1.7970909e+03 1.7023946e+03 -2.5381643e+03 - -1.8156278e+03 1.7006737e+03 -2.5315442e+03 - -1.8314660e+03 1.6998373e+03 -2.5249940e+03 - -1.8446903e+03 1.6999447e+03 -2.5185355e+03 - -1.8553882e+03 1.7010418e+03 -2.5121980e+03 - -1.8636530e+03 1.7031609e+03 -2.5060166e+03 - -1.8695854e+03 1.7063193e+03 -2.5000314e+03 - -1.8732950e+03 1.7105187e+03 -2.4942860e+03 - -1.8749016e+03 1.7157445e+03 -2.4888267e+03 - -1.8745355e+03 1.7219650e+03 -2.4837012e+03 - -1.8723382e+03 1.7291311e+03 -2.4789572e+03 - -1.8684620e+03 1.7371760e+03 -2.4746413e+03 - -1.8630690e+03 1.7460148e+03 -2.4707983e+03 - -1.8563308e+03 1.7555454e+03 -2.4674694e+03 - -1.8484266e+03 1.7656491e+03 -2.4646916e+03 - -1.8395414e+03 1.7761911e+03 -2.4624965e+03 - -1.8298643e+03 1.7870224e+03 -2.4609097e+03 - -1.8195860e+03 1.7979815e+03 -2.4599500e+03 - -1.8088962e+03 1.8088962e+03 -2.4596288e+03 - -1.7979815e+03 1.8195860e+03 -2.4599500e+03 - -1.7870224e+03 1.8298643e+03 -2.4609097e+03 - -1.7761911e+03 1.8395414e+03 -2.4624965e+03 - -1.7656491e+03 1.8484266e+03 -2.4646916e+03 - -1.7555454e+03 1.8563308e+03 -2.4674694e+03 - -1.7460148e+03 1.8630690e+03 -2.4707983e+03 - -1.7371760e+03 1.8684620e+03 -2.4746413e+03 - -1.7291311e+03 1.8723382e+03 -2.4789572e+03 - -1.7219650e+03 1.8745355e+03 -2.4837012e+03 - -1.7157445e+03 1.8749016e+03 -2.4888267e+03 - -1.7105187e+03 1.8732950e+03 -2.4942860e+03 - -1.7063193e+03 1.8695854e+03 -2.5000314e+03 - -1.7031609e+03 1.8636530e+03 -2.5060166e+03 - -1.7010418e+03 1.8553882e+03 -2.5121980e+03 - -1.6999447e+03 1.8446903e+03 -2.5185355e+03 - -1.6998373e+03 1.8314660e+03 -2.5249940e+03 - -1.7006737e+03 1.8156278e+03 -2.5315442e+03 - -1.7023946e+03 1.7970909e+03 -2.5381643e+03 - -1.7049286e+03 1.7757703e+03 -2.5448407e+03 - -1.7081919e+03 1.7515772e+03 -2.5515697e+03 - -1.7120896e+03 1.7244141e+03 -2.5583587e+03 - -1.7165154e+03 1.6941684e+03 -2.5652277e+03 - -1.7213516e+03 1.6607054e+03 -2.5722112e+03 - -1.7264687e+03 1.6238585e+03 -2.5793598e+03 - -1.7317254e+03 1.5834163e+03 -2.5867423e+03 - -1.7369674e+03 1.5391062e+03 -2.5944473e+03 - -1.7420269e+03 1.4905733e+03 -2.6025855e+03 - -1.7467226e+03 1.4373513e+03 -2.6112899e+03 - -1.7508593e+03 1.3788257e+03 -2.6207155e+03 - -1.7542311e+03 1.3141868e+03 -2.6310343e+03 - -1.7566267e+03 1.2423715e+03 -2.6424249e+03 - -1.7578421e+03 1.1619996e+03 -2.6550494e+03 - -1.7577041e+03 1.0713164e+03 -2.6690115e+03 - -1.7561108e+03 9.6817706e+02 -2.6842858e+03 - -1.7530942e+03 8.5014091e+02 -2.7006095e+03 - -1.7489024e+03 7.1479347e+02 -2.7173429e+03 - -1.7440781e+03 5.6043504e+02 -2.7333396e+03 - -1.7394735e+03 3.8717809e+02 -2.7469339e+03 - -1.7361142e+03 1.9815016e+02 -2.7561934e+03 - -1.7348776e+03 0.0000000e+00 -2.7594944e+03 - -1.7361142e+03 -1.9815016e+02 -2.7561934e+03 - -1.7394735e+03 -3.8717809e+02 -2.7469339e+03 - -1.7440781e+03 -5.6043504e+02 -2.7333396e+03 - -1.7489024e+03 -7.1479347e+02 -2.7173429e+03 - -1.7530942e+03 -8.5014091e+02 -2.7006095e+03 - -1.7561108e+03 -9.6817706e+02 -2.6842858e+03 - -1.7577041e+03 -1.0713164e+03 -2.6690115e+03 - -1.7578421e+03 -1.1619996e+03 -2.6550494e+03 - -1.7566267e+03 -1.2423715e+03 -2.6424249e+03 - -1.7542311e+03 -1.3141868e+03 -2.6310343e+03 - -1.7508593e+03 -1.3788257e+03 -2.6207155e+03 - -1.7467226e+03 -1.4373513e+03 -2.6112899e+03 - -1.7420269e+03 -1.4905733e+03 -2.6025855e+03 - -1.7369674e+03 -1.5391062e+03 -2.5944473e+03 - -1.7317254e+03 -1.5834163e+03 -2.5867423e+03 - -1.7264687e+03 -1.6238585e+03 -2.5793598e+03 - -1.7213516e+03 -1.6607054e+03 -2.5722112e+03 - -1.7165154e+03 -1.6941684e+03 -2.5652277e+03 - -1.7120896e+03 -1.7244141e+03 -2.5583587e+03 - -1.7081919e+03 -1.7515772e+03 -2.5515697e+03 - -1.7049286e+03 -1.7757703e+03 -2.5448407e+03 - -1.7023946e+03 -1.7970909e+03 -2.5381643e+03 - -1.7006737e+03 -1.8156278e+03 -2.5315442e+03 - -1.6998373e+03 -1.8314660e+03 -2.5249940e+03 - -1.6999447e+03 -1.8446903e+03 -2.5185355e+03 - -1.7010418e+03 -1.8553882e+03 -2.5121980e+03 - -1.7031609e+03 -1.8636530e+03 -2.5060166e+03 - -1.7063193e+03 -1.8695854e+03 -2.5000314e+03 - -1.7105187e+03 -1.8732950e+03 -2.4942860e+03 - -1.7157445e+03 -1.8749016e+03 -2.4888267e+03 - -1.7219650e+03 -1.8745355e+03 -2.4837012e+03 - -1.7291311e+03 -1.8723382e+03 -2.4789572e+03 - -1.7371760e+03 -1.8684620e+03 -2.4746413e+03 - -1.7460148e+03 -1.8630690e+03 -2.4707983e+03 - -1.7555454e+03 -1.8563308e+03 -2.4674694e+03 - -1.7656491e+03 -1.8484266e+03 -2.4646916e+03 - -1.7761911e+03 -1.8395414e+03 -2.4624965e+03 - -1.7870224e+03 -1.8298643e+03 -2.4609097e+03 - -1.7979815e+03 -1.8195860e+03 -2.4599500e+03 - -1.8088962e+03 -1.8088962e+03 -2.4596288e+03 - -1.8195860e+03 -1.7979815e+03 -2.4599500e+03 - -1.8298643e+03 -1.7870224e+03 -2.4609097e+03 - -1.8395414e+03 -1.7761911e+03 -2.4624965e+03 - -1.8484266e+03 -1.7656491e+03 -2.4646916e+03 - -1.8563308e+03 -1.7555454e+03 -2.4674694e+03 - -1.8630690e+03 -1.7460148e+03 -2.4707983e+03 - -1.8684620e+03 -1.7371760e+03 -2.4746413e+03 - -1.8723382e+03 -1.7291311e+03 -2.4789572e+03 - -1.8745355e+03 -1.7219650e+03 -2.4837012e+03 - -1.8749016e+03 -1.7157445e+03 -2.4888267e+03 - -1.8732950e+03 -1.7105187e+03 -2.4942860e+03 - -1.8695854e+03 -1.7063193e+03 -2.5000314e+03 - -1.8636530e+03 -1.7031609e+03 -2.5060166e+03 - -1.8553882e+03 -1.7010418e+03 -2.5121980e+03 - -1.8446903e+03 -1.6999447e+03 -2.5185355e+03 - -1.8314660e+03 -1.6998373e+03 -2.5249940e+03 - -1.8156278e+03 -1.7006737e+03 -2.5315442e+03 - -1.7970909e+03 -1.7023946e+03 -2.5381643e+03 - -1.7757703e+03 -1.7049286e+03 -2.5448407e+03 - -1.7515772e+03 -1.7081919e+03 -2.5515697e+03 - -1.7244141e+03 -1.7120896e+03 -2.5583587e+03 - -1.6941684e+03 -1.7165154e+03 -2.5652277e+03 - -1.6607054e+03 -1.7213516e+03 -2.5722112e+03 - -1.6238585e+03 -1.7264687e+03 -2.5793598e+03 - -1.5834163e+03 -1.7317254e+03 -2.5867423e+03 - -1.5391062e+03 -1.7369674e+03 -2.5944473e+03 - -1.4905733e+03 -1.7420269e+03 -2.6025855e+03 - -1.4373513e+03 -1.7467226e+03 -2.6112899e+03 - -1.3788257e+03 -1.7508593e+03 -2.6207155e+03 - -1.3141868e+03 -1.7542311e+03 -2.6310343e+03 - -1.2423715e+03 -1.7566267e+03 -2.6424249e+03 - -1.1619996e+03 -1.7578421e+03 -2.6550494e+03 - -1.0713164e+03 -1.7577041e+03 -2.6690115e+03 - -9.6817706e+02 -1.7561108e+03 -2.6842858e+03 - -8.5014091e+02 -1.7530942e+03 -2.7006095e+03 - -7.1479347e+02 -1.7489024e+03 -2.7173429e+03 - -5.6043504e+02 -1.7440781e+03 -2.7333396e+03 - -3.8717809e+02 -1.7394735e+03 -2.7469339e+03 - -1.9815016e+02 -1.7361142e+03 -2.7561934e+03 - -2.4067136e-09 -1.7348776e+03 -2.7594944e+03 - 1.9815016e+02 -1.7361142e+03 -2.7561934e+03 - 3.8717809e+02 -1.7394735e+03 -2.7469339e+03 - 5.6043504e+02 -1.7440781e+03 -2.7333396e+03 - 7.1479347e+02 -1.7489024e+03 -2.7173429e+03 - 8.5014091e+02 -1.7530942e+03 -2.7006095e+03 - 9.6817706e+02 -1.7561108e+03 -2.6842858e+03 - 1.0713164e+03 -1.7577041e+03 -2.6690115e+03 - 1.1619996e+03 -1.7578421e+03 -2.6550494e+03 - 1.2423715e+03 -1.7566267e+03 -2.6424249e+03 - 1.3141868e+03 -1.7542311e+03 -2.6310343e+03 - 1.3788257e+03 -1.7508593e+03 -2.6207155e+03 - 1.4373513e+03 -1.7467226e+03 -2.6112899e+03 - 1.4905733e+03 -1.7420269e+03 -2.6025855e+03 - 1.5391062e+03 -1.7369674e+03 -2.5944473e+03 - 1.5834163e+03 -1.7317254e+03 -2.5867423e+03 - 1.6238585e+03 -1.7264687e+03 -2.5793598e+03 - 1.6607054e+03 -1.7213516e+03 -2.5722112e+03 - 1.6941684e+03 -1.7165154e+03 -2.5652277e+03 - 1.7244141e+03 -1.7120896e+03 -2.5583587e+03 - 1.7515772e+03 -1.7081919e+03 -2.5515697e+03 - 1.7757703e+03 -1.7049286e+03 -2.5448407e+03 - 1.7970909e+03 -1.7023946e+03 -2.5381643e+03 - 1.8156278e+03 -1.7006737e+03 -2.5315442e+03 - 1.8314660e+03 -1.6998373e+03 -2.5249940e+03 - 1.8446903e+03 -1.6999447e+03 -2.5185355e+03 - 1.8553882e+03 -1.7010418e+03 -2.5121980e+03 - 1.8636530e+03 -1.7031609e+03 -2.5060166e+03 - 1.8695854e+03 -1.7063193e+03 -2.5000314e+03 - 1.8732950e+03 -1.7105187e+03 -2.4942860e+03 - 1.8749016e+03 -1.7157445e+03 -2.4888267e+03 - 1.8745355e+03 -1.7219650e+03 -2.4837012e+03 - 1.8723382e+03 -1.7291311e+03 -2.4789572e+03 - 1.8684620e+03 -1.7371760e+03 -2.4746413e+03 - 1.8630690e+03 -1.7460148e+03 -2.4707983e+03 - 1.8563308e+03 -1.7555454e+03 -2.4674694e+03 - 1.8484266e+03 -1.7656491e+03 -2.4646916e+03 - 1.8395414e+03 -1.7761911e+03 -2.4624965e+03 - 1.8298643e+03 -1.7870224e+03 -2.4609097e+03 - 1.8195860e+03 -1.7979815e+03 -2.4599500e+03 - 1.8088962e+03 -1.8088962e+03 -2.4596288e+03 - 1.7979815e+03 -1.8195860e+03 -2.4599500e+03 - 1.7870224e+03 -1.8298643e+03 -2.4609097e+03 - 1.7761911e+03 -1.8395414e+03 -2.4624965e+03 - 1.7656491e+03 -1.8484266e+03 -2.4646916e+03 - 1.7555454e+03 -1.8563308e+03 -2.4674694e+03 - 1.7460148e+03 -1.8630690e+03 -2.4707983e+03 - 1.7371760e+03 -1.8684620e+03 -2.4746413e+03 - 1.7291311e+03 -1.8723382e+03 -2.4789572e+03 - 1.7219650e+03 -1.8745355e+03 -2.4837012e+03 - 1.7157445e+03 -1.8749016e+03 -2.4888267e+03 - 1.7105187e+03 -1.8732950e+03 -2.4942860e+03 - 1.7063193e+03 -1.8695854e+03 -2.5000314e+03 - 1.7031609e+03 -1.8636530e+03 -2.5060166e+03 - 1.7010418e+03 -1.8553882e+03 -2.5121980e+03 - 1.6999447e+03 -1.8446903e+03 -2.5185355e+03 - 1.6998373e+03 -1.8314660e+03 -2.5249940e+03 - 1.7006737e+03 -1.8156278e+03 -2.5315442e+03 - 1.7023946e+03 -1.7970909e+03 -2.5381643e+03 - 1.7049286e+03 -1.7757703e+03 -2.5448407e+03 - 1.7081919e+03 -1.7515772e+03 -2.5515697e+03 - 1.7120896e+03 -1.7244141e+03 -2.5583587e+03 - 1.7165154e+03 -1.6941684e+03 -2.5652277e+03 - 1.7213516e+03 -1.6607054e+03 -2.5722112e+03 - 1.7264687e+03 -1.6238585e+03 -2.5793598e+03 - 1.7317254e+03 -1.5834163e+03 -2.5867423e+03 - 1.7369674e+03 -1.5391062e+03 -2.5944473e+03 - 1.7420269e+03 -1.4905733e+03 -2.6025855e+03 - 1.7467226e+03 -1.4373513e+03 -2.6112899e+03 - 1.7508593e+03 -1.3788257e+03 -2.6207155e+03 - 1.7542311e+03 -1.3141868e+03 -2.6310343e+03 - 1.7566267e+03 -1.2423715e+03 -2.6424249e+03 - 1.7578421e+03 -1.1619996e+03 -2.6550494e+03 - 1.7577041e+03 -1.0713164e+03 -2.6690115e+03 - 1.7561108e+03 -9.6817706e+02 -2.6842858e+03 - 1.7530942e+03 -8.5014091e+02 -2.7006095e+03 - 1.7489024e+03 -7.1479347e+02 -2.7173429e+03 - 1.7440781e+03 -5.6043504e+02 -2.7333396e+03 - 1.7394735e+03 -3.8717809e+02 -2.7469339e+03 - 1.7361142e+03 -1.9815016e+02 -2.7561934e+03 - 1.7348776e+03 0.0000000e+00 -2.7594944e+03 - 1.6935381e+03 -2.4067136e-09 -2.8016556e+03 - 1.6943323e+03 1.8599469e+02 -2.7990418e+03 - 1.6965058e+03 3.6477337e+02 -2.7916217e+03 - 1.6995214e+03 5.3078087e+02 -2.7804885e+03 - 1.7027199e+03 6.8095451e+02 -2.7670126e+03 - 1.7055141e+03 8.1456234e+02 -2.7524662e+03 - 1.7074935e+03 9.3247494e+02 -2.7378139e+03 - 1.7084397e+03 1.0363766e+03 -2.7236718e+03 - 1.7082921e+03 1.1281849e+03 -2.7103647e+03 - 1.7070995e+03 1.2097197e+03 -2.6980111e+03 - 1.7049773e+03 1.2825585e+03 -2.6866011e+03 - 1.7020762e+03 1.3480009e+03 -2.6760550e+03 - 1.6985618e+03 1.4070869e+03 -2.6662609e+03 - 1.6946026e+03 1.4606351e+03 -2.6570986e+03 - 1.6903627e+03 1.5092845e+03 -2.6484527e+03 - 1.6859984e+03 1.5535327e+03 -2.6402197e+03 - 1.6816569e+03 1.5937673e+03 -2.6323109e+03 - 1.6774752e+03 1.6302923e+03 -2.6246535e+03 - 1.6735802e+03 1.6633478e+03 -2.6171903e+03 - 1.6700888e+03 1.6931266e+03 -2.6098784e+03 - 1.6671077e+03 1.7197865e+03 -2.6026887e+03 - 1.6647338e+03 1.7434600e+03 -2.5956042e+03 - 1.6630534e+03 1.7642620e+03 -2.5886188e+03 - 1.6621424e+03 1.7822965e+03 -2.5817362e+03 - 1.6620657e+03 1.7976608e+03 -2.5749690e+03 - 1.6628762e+03 1.8104503e+03 -2.5683370e+03 - 1.6646150e+03 1.8207611e+03 -2.5618665e+03 - 1.6673095e+03 1.8286929e+03 -2.5555894e+03 - 1.6709735e+03 1.8343512e+03 -2.5495417e+03 - 1.6756063e+03 1.8378483e+03 -2.5437630e+03 - 1.6811917e+03 1.8393053e+03 -2.5382948e+03 - 1.6876976e+03 1.8388520e+03 -2.5331800e+03 - 1.6950756e+03 1.8366275e+03 -2.5284617e+03 - 1.7032609e+03 1.8327803e+03 -2.5241818e+03 - 1.7121721e+03 1.8274674e+03 -2.5203805e+03 - 1.7217117e+03 1.8208535e+03 -2.5170948e+03 - 1.7317667e+03 1.8131101e+03 -2.5143580e+03 - 1.7422095e+03 1.8044133e+03 -2.5121983e+03 - 1.7528994e+03 1.7949427e+03 -2.5106388e+03 - 1.7636838e+03 1.7848785e+03 -2.5096962e+03 - 1.7744002e+03 1.7744002e+03 -2.5093809e+03 - 1.7848785e+03 1.7636838e+03 -2.5096962e+03 - 1.7949427e+03 1.7528994e+03 -2.5106388e+03 - 1.8044133e+03 1.7422095e+03 -2.5121983e+03 - 1.8131101e+03 1.7317667e+03 -2.5143580e+03 - 1.8208535e+03 1.7217117e+03 -2.5170948e+03 - 1.8274674e+03 1.7121721e+03 -2.5203805e+03 - 1.8327803e+03 1.7032609e+03 -2.5241818e+03 - 1.8366275e+03 1.6950756e+03 -2.5284617e+03 - 1.8388520e+03 1.6876976e+03 -2.5331800e+03 - 1.8393053e+03 1.6811917e+03 -2.5382948e+03 - 1.8378483e+03 1.6756063e+03 -2.5437630e+03 - 1.8343512e+03 1.6709735e+03 -2.5495417e+03 - 1.8286929e+03 1.6673095e+03 -2.5555894e+03 - 1.8207611e+03 1.6646150e+03 -2.5618665e+03 - 1.8104503e+03 1.6628762e+03 -2.5683370e+03 - 1.7976608e+03 1.6620657e+03 -2.5749690e+03 - 1.7822965e+03 1.6621424e+03 -2.5817362e+03 - 1.7642620e+03 1.6630534e+03 -2.5886188e+03 - 1.7434600e+03 1.6647338e+03 -2.5956042e+03 - 1.7197865e+03 1.6671077e+03 -2.6026887e+03 - 1.6931266e+03 1.6700888e+03 -2.6098784e+03 - 1.6633478e+03 1.6735802e+03 -2.6171903e+03 - 1.6302923e+03 1.6774752e+03 -2.6246535e+03 - 1.5937673e+03 1.6816569e+03 -2.6323109e+03 - 1.5535327e+03 1.6859984e+03 -2.6402197e+03 - 1.5092845e+03 1.6903627e+03 -2.6484527e+03 - 1.4606351e+03 1.6946026e+03 -2.6570986e+03 - 1.4070869e+03 1.6985618e+03 -2.6662609e+03 - 1.3480009e+03 1.7020762e+03 -2.6760550e+03 - 1.2825585e+03 1.7049773e+03 -2.6866011e+03 - 1.2097197e+03 1.7070995e+03 -2.6980111e+03 - 1.1281849e+03 1.7082921e+03 -2.7103647e+03 - 1.0363766e+03 1.7084397e+03 -2.7236718e+03 - 9.3247494e+02 1.7074935e+03 -2.7378139e+03 - 8.1456234e+02 1.7055141e+03 -2.7524662e+03 - 6.8095451e+02 1.7027199e+03 -2.7670126e+03 - 5.3078087e+02 1.6995214e+03 -2.7804885e+03 - 3.6477337e+02 1.6965058e+03 -2.7916217e+03 - 1.8599469e+02 1.6943323e+03 -2.7990418e+03 - 0.0000000e+00 1.6935381e+03 -2.8016556e+03 - -1.8599469e+02 1.6943323e+03 -2.7990418e+03 - -3.6477337e+02 1.6965058e+03 -2.7916217e+03 - -5.3078087e+02 1.6995214e+03 -2.7804885e+03 - -6.8095451e+02 1.7027199e+03 -2.7670126e+03 - -8.1456234e+02 1.7055141e+03 -2.7524662e+03 - -9.3247494e+02 1.7074935e+03 -2.7378139e+03 - -1.0363766e+03 1.7084397e+03 -2.7236718e+03 - -1.1281849e+03 1.7082921e+03 -2.7103647e+03 - -1.2097197e+03 1.7070995e+03 -2.6980111e+03 - -1.2825585e+03 1.7049773e+03 -2.6866011e+03 - -1.3480009e+03 1.7020762e+03 -2.6760550e+03 - -1.4070869e+03 1.6985618e+03 -2.6662609e+03 - -1.4606351e+03 1.6946026e+03 -2.6570986e+03 - -1.5092845e+03 1.6903627e+03 -2.6484527e+03 - -1.5535327e+03 1.6859984e+03 -2.6402197e+03 - -1.5937673e+03 1.6816569e+03 -2.6323109e+03 - -1.6302923e+03 1.6774752e+03 -2.6246535e+03 - -1.6633478e+03 1.6735802e+03 -2.6171903e+03 - -1.6931266e+03 1.6700888e+03 -2.6098784e+03 - -1.7197865e+03 1.6671077e+03 -2.6026887e+03 - -1.7434600e+03 1.6647338e+03 -2.5956042e+03 - -1.7642620e+03 1.6630534e+03 -2.5886188e+03 - -1.7822965e+03 1.6621424e+03 -2.5817362e+03 - -1.7976608e+03 1.6620657e+03 -2.5749690e+03 - -1.8104503e+03 1.6628762e+03 -2.5683370e+03 - -1.8207611e+03 1.6646150e+03 -2.5618665e+03 - -1.8286929e+03 1.6673095e+03 -2.5555894e+03 - -1.8343512e+03 1.6709735e+03 -2.5495417e+03 - -1.8378483e+03 1.6756063e+03 -2.5437630e+03 - -1.8393053e+03 1.6811917e+03 -2.5382948e+03 - -1.8388520e+03 1.6876976e+03 -2.5331800e+03 - -1.8366275e+03 1.6950756e+03 -2.5284617e+03 - -1.8327803e+03 1.7032609e+03 -2.5241818e+03 - -1.8274674e+03 1.7121721e+03 -2.5203805e+03 - -1.8208535e+03 1.7217117e+03 -2.5170948e+03 - -1.8131101e+03 1.7317667e+03 -2.5143580e+03 - -1.8044133e+03 1.7422095e+03 -2.5121983e+03 - -1.7949427e+03 1.7528994e+03 -2.5106388e+03 - -1.7848785e+03 1.7636838e+03 -2.5096962e+03 - -1.7744002e+03 1.7744002e+03 -2.5093809e+03 - -1.7636838e+03 1.7848785e+03 -2.5096962e+03 - -1.7528994e+03 1.7949427e+03 -2.5106388e+03 - -1.7422095e+03 1.8044133e+03 -2.5121983e+03 - -1.7317667e+03 1.8131101e+03 -2.5143580e+03 - -1.7217117e+03 1.8208535e+03 -2.5170948e+03 - -1.7121721e+03 1.8274674e+03 -2.5203805e+03 - -1.7032609e+03 1.8327803e+03 -2.5241818e+03 - -1.6950756e+03 1.8366275e+03 -2.5284617e+03 - -1.6876976e+03 1.8388520e+03 -2.5331800e+03 - -1.6811917e+03 1.8393053e+03 -2.5382948e+03 - -1.6756063e+03 1.8378483e+03 -2.5437630e+03 - -1.6709735e+03 1.8343512e+03 -2.5495417e+03 - -1.6673095e+03 1.8286929e+03 -2.5555894e+03 - -1.6646150e+03 1.8207611e+03 -2.5618665e+03 - -1.6628762e+03 1.8104503e+03 -2.5683370e+03 - -1.6620657e+03 1.7976608e+03 -2.5749690e+03 - -1.6621424e+03 1.7822965e+03 -2.5817362e+03 - -1.6630534e+03 1.7642620e+03 -2.5886188e+03 - -1.6647338e+03 1.7434600e+03 -2.5956042e+03 - -1.6671077e+03 1.7197865e+03 -2.6026887e+03 - -1.6700888e+03 1.6931266e+03 -2.6098784e+03 - -1.6735802e+03 1.6633478e+03 -2.6171903e+03 - -1.6774752e+03 1.6302923e+03 -2.6246535e+03 - -1.6816569e+03 1.5937673e+03 -2.6323109e+03 - -1.6859984e+03 1.5535327e+03 -2.6402197e+03 - -1.6903627e+03 1.5092845e+03 -2.6484527e+03 - -1.6946026e+03 1.4606351e+03 -2.6570986e+03 - -1.6985618e+03 1.4070869e+03 -2.6662609e+03 - -1.7020762e+03 1.3480009e+03 -2.6760550e+03 - -1.7049773e+03 1.2825585e+03 -2.6866011e+03 - -1.7070995e+03 1.2097197e+03 -2.6980111e+03 - -1.7082921e+03 1.1281849e+03 -2.7103647e+03 - -1.7084397e+03 1.0363766e+03 -2.7236718e+03 - -1.7074935e+03 9.3247494e+02 -2.7378139e+03 - -1.7055141e+03 8.1456234e+02 -2.7524662e+03 - -1.7027199e+03 6.8095451e+02 -2.7670126e+03 - -1.6995214e+03 5.3078087e+02 -2.7804885e+03 - -1.6965058e+03 3.6477337e+02 -2.7916217e+03 - -1.6943323e+03 1.8599469e+02 -2.7990418e+03 - -1.6935381e+03 2.4067136e-09 -2.8016556e+03 - -1.6943323e+03 -1.8599469e+02 -2.7990418e+03 - -1.6965058e+03 -3.6477337e+02 -2.7916217e+03 - -1.6995214e+03 -5.3078087e+02 -2.7804885e+03 - -1.7027199e+03 -6.8095451e+02 -2.7670126e+03 - -1.7055141e+03 -8.1456234e+02 -2.7524662e+03 - -1.7074935e+03 -9.3247494e+02 -2.7378139e+03 - -1.7084397e+03 -1.0363766e+03 -2.7236718e+03 - -1.7082921e+03 -1.1281849e+03 -2.7103647e+03 - -1.7070995e+03 -1.2097197e+03 -2.6980111e+03 - -1.7049773e+03 -1.2825585e+03 -2.6866011e+03 - -1.7020762e+03 -1.3480009e+03 -2.6760550e+03 - -1.6985618e+03 -1.4070869e+03 -2.6662609e+03 - -1.6946026e+03 -1.4606351e+03 -2.6570986e+03 - -1.6903627e+03 -1.5092845e+03 -2.6484527e+03 - -1.6859984e+03 -1.5535327e+03 -2.6402197e+03 - -1.6816569e+03 -1.5937673e+03 -2.6323109e+03 - -1.6774752e+03 -1.6302923e+03 -2.6246535e+03 - -1.6735802e+03 -1.6633478e+03 -2.6171903e+03 - -1.6700888e+03 -1.6931266e+03 -2.6098784e+03 - -1.6671077e+03 -1.7197865e+03 -2.6026887e+03 - -1.6647338e+03 -1.7434600e+03 -2.5956042e+03 - -1.6630534e+03 -1.7642620e+03 -2.5886188e+03 - -1.6621424e+03 -1.7822965e+03 -2.5817362e+03 - -1.6620657e+03 -1.7976608e+03 -2.5749690e+03 - -1.6628762e+03 -1.8104503e+03 -2.5683370e+03 - -1.6646150e+03 -1.8207611e+03 -2.5618665e+03 - -1.6673095e+03 -1.8286929e+03 -2.5555894e+03 - -1.6709735e+03 -1.8343512e+03 -2.5495417e+03 - -1.6756063e+03 -1.8378483e+03 -2.5437630e+03 - -1.6811917e+03 -1.8393053e+03 -2.5382948e+03 - -1.6876976e+03 -1.8388520e+03 -2.5331800e+03 - -1.6950756e+03 -1.8366275e+03 -2.5284617e+03 - -1.7032609e+03 -1.8327803e+03 -2.5241818e+03 - -1.7121721e+03 -1.8274674e+03 -2.5203805e+03 - -1.7217117e+03 -1.8208535e+03 -2.5170948e+03 - -1.7317667e+03 -1.8131101e+03 -2.5143580e+03 - -1.7422095e+03 -1.8044133e+03 -2.5121983e+03 - -1.7528994e+03 -1.7949427e+03 -2.5106388e+03 - -1.7636838e+03 -1.7848785e+03 -2.5096962e+03 - -1.7744002e+03 -1.7744002e+03 -2.5093809e+03 - -1.7848785e+03 -1.7636838e+03 -2.5096962e+03 - -1.7949427e+03 -1.7528994e+03 -2.5106388e+03 - -1.8044133e+03 -1.7422095e+03 -2.5121983e+03 - -1.8131101e+03 -1.7317667e+03 -2.5143580e+03 - -1.8208535e+03 -1.7217117e+03 -2.5170948e+03 - -1.8274674e+03 -1.7121721e+03 -2.5203805e+03 - -1.8327803e+03 -1.7032609e+03 -2.5241818e+03 - -1.8366275e+03 -1.6950756e+03 -2.5284617e+03 - -1.8388520e+03 -1.6876976e+03 -2.5331800e+03 - -1.8393053e+03 -1.6811917e+03 -2.5382948e+03 - -1.8378483e+03 -1.6756063e+03 -2.5437630e+03 - -1.8343512e+03 -1.6709735e+03 -2.5495417e+03 - -1.8286929e+03 -1.6673095e+03 -2.5555894e+03 - -1.8207611e+03 -1.6646150e+03 -2.5618665e+03 - -1.8104503e+03 -1.6628762e+03 -2.5683370e+03 - -1.7976608e+03 -1.6620657e+03 -2.5749690e+03 - -1.7822965e+03 -1.6621424e+03 -2.5817362e+03 - -1.7642620e+03 -1.6630534e+03 -2.5886188e+03 - -1.7434600e+03 -1.6647338e+03 -2.5956042e+03 - -1.7197865e+03 -1.6671077e+03 -2.6026887e+03 - -1.6931266e+03 -1.6700888e+03 -2.6098784e+03 - -1.6633478e+03 -1.6735802e+03 -2.6171903e+03 - -1.6302923e+03 -1.6774752e+03 -2.6246535e+03 - -1.5937673e+03 -1.6816569e+03 -2.6323109e+03 - -1.5535327e+03 -1.6859984e+03 -2.6402197e+03 - -1.5092845e+03 -1.6903627e+03 -2.6484527e+03 - -1.4606351e+03 -1.6946026e+03 -2.6570986e+03 - -1.4070869e+03 -1.6985618e+03 -2.6662609e+03 - -1.3480009e+03 -1.7020762e+03 -2.6760550e+03 - -1.2825585e+03 -1.7049773e+03 -2.6866011e+03 - -1.2097197e+03 -1.7070995e+03 -2.6980111e+03 - -1.1281849e+03 -1.7082921e+03 -2.7103647e+03 - -1.0363766e+03 -1.7084397e+03 -2.7236718e+03 - -9.3247494e+02 -1.7074935e+03 -2.7378139e+03 - -8.1456234e+02 -1.7055141e+03 -2.7524662e+03 - -6.8095451e+02 -1.7027199e+03 -2.7670126e+03 - -5.3078087e+02 -1.6995214e+03 -2.7804885e+03 - -3.6477337e+02 -1.6965058e+03 -2.7916217e+03 - -1.8599469e+02 -1.6943323e+03 -2.7990418e+03 - 2.4067136e-09 -1.6935381e+03 -2.8016556e+03 - 1.8599469e+02 -1.6943323e+03 -2.7990418e+03 - 3.6477337e+02 -1.6965058e+03 -2.7916217e+03 - 5.3078087e+02 -1.6995214e+03 -2.7804885e+03 - 6.8095451e+02 -1.7027199e+03 -2.7670126e+03 - 8.1456234e+02 -1.7055141e+03 -2.7524662e+03 - 9.3247494e+02 -1.7074935e+03 -2.7378139e+03 - 1.0363766e+03 -1.7084397e+03 -2.7236718e+03 - 1.1281849e+03 -1.7082921e+03 -2.7103647e+03 - 1.2097197e+03 -1.7070995e+03 -2.6980111e+03 - 1.2825585e+03 -1.7049773e+03 -2.6866011e+03 - 1.3480009e+03 -1.7020762e+03 -2.6760550e+03 - 1.4070869e+03 -1.6985618e+03 -2.6662609e+03 - 1.4606351e+03 -1.6946026e+03 -2.6570986e+03 - 1.5092845e+03 -1.6903627e+03 -2.6484527e+03 - 1.5535327e+03 -1.6859984e+03 -2.6402197e+03 - 1.5937673e+03 -1.6816569e+03 -2.6323109e+03 - 1.6302923e+03 -1.6774752e+03 -2.6246535e+03 - 1.6633478e+03 -1.6735802e+03 -2.6171903e+03 - 1.6931266e+03 -1.6700888e+03 -2.6098784e+03 - 1.7197865e+03 -1.6671077e+03 -2.6026887e+03 - 1.7434600e+03 -1.6647338e+03 -2.5956042e+03 - 1.7642620e+03 -1.6630534e+03 -2.5886188e+03 - 1.7822965e+03 -1.6621424e+03 -2.5817362e+03 - 1.7976608e+03 -1.6620657e+03 -2.5749690e+03 - 1.8104503e+03 -1.6628762e+03 -2.5683370e+03 - 1.8207611e+03 -1.6646150e+03 -2.5618665e+03 - 1.8286929e+03 -1.6673095e+03 -2.5555894e+03 - 1.8343512e+03 -1.6709735e+03 -2.5495417e+03 - 1.8378483e+03 -1.6756063e+03 -2.5437630e+03 - 1.8393053e+03 -1.6811917e+03 -2.5382948e+03 - 1.8388520e+03 -1.6876976e+03 -2.5331800e+03 - 1.8366275e+03 -1.6950756e+03 -2.5284617e+03 - 1.8327803e+03 -1.7032609e+03 -2.5241818e+03 - 1.8274674e+03 -1.7121721e+03 -2.5203805e+03 - 1.8208535e+03 -1.7217117e+03 -2.5170948e+03 - 1.8131101e+03 -1.7317667e+03 -2.5143580e+03 - 1.8044133e+03 -1.7422095e+03 -2.5121983e+03 - 1.7949427e+03 -1.7528994e+03 -2.5106388e+03 - 1.7848785e+03 -1.7636838e+03 -2.5096962e+03 - 1.7744002e+03 -1.7744002e+03 -2.5093809e+03 - 1.7636838e+03 -1.7848785e+03 -2.5096962e+03 - 1.7528994e+03 -1.7949427e+03 -2.5106388e+03 - 1.7422095e+03 -1.8044133e+03 -2.5121983e+03 - 1.7317667e+03 -1.8131101e+03 -2.5143580e+03 - 1.7217117e+03 -1.8208535e+03 -2.5170948e+03 - 1.7121721e+03 -1.8274674e+03 -2.5203805e+03 - 1.7032609e+03 -1.8327803e+03 -2.5241818e+03 - 1.6950756e+03 -1.8366275e+03 -2.5284617e+03 - 1.6876976e+03 -1.8388520e+03 -2.5331800e+03 - 1.6811917e+03 -1.8393053e+03 -2.5382948e+03 - 1.6756063e+03 -1.8378483e+03 -2.5437630e+03 - 1.6709735e+03 -1.8343512e+03 -2.5495417e+03 - 1.6673095e+03 -1.8286929e+03 -2.5555894e+03 - 1.6646150e+03 -1.8207611e+03 -2.5618665e+03 - 1.6628762e+03 -1.8104503e+03 -2.5683370e+03 - 1.6620657e+03 -1.7976608e+03 -2.5749690e+03 - 1.6621424e+03 -1.7822965e+03 -2.5817362e+03 - 1.6630534e+03 -1.7642620e+03 -2.5886188e+03 - 1.6647338e+03 -1.7434600e+03 -2.5956042e+03 - 1.6671077e+03 -1.7197865e+03 -2.6026887e+03 - 1.6700888e+03 -1.6931266e+03 -2.6098784e+03 - 1.6735802e+03 -1.6633478e+03 -2.6171903e+03 - 1.6774752e+03 -1.6302923e+03 -2.6246535e+03 - 1.6816569e+03 -1.5937673e+03 -2.6323109e+03 - 1.6859984e+03 -1.5535327e+03 -2.6402197e+03 - 1.6903627e+03 -1.5092845e+03 -2.6484527e+03 - 1.6946026e+03 -1.4606351e+03 -2.6570986e+03 - 1.6985618e+03 -1.4070869e+03 -2.6662609e+03 - 1.7020762e+03 -1.3480009e+03 -2.6760550e+03 - 1.7049773e+03 -1.2825585e+03 -2.6866011e+03 - 1.7070995e+03 -1.2097197e+03 -2.6980111e+03 - 1.7082921e+03 -1.1281849e+03 -2.7103647e+03 - 1.7084397e+03 -1.0363766e+03 -2.7236718e+03 - 1.7074935e+03 -9.3247494e+02 -2.7378139e+03 - 1.7055141e+03 -8.1456234e+02 -2.7524662e+03 - 1.7027199e+03 -6.8095451e+02 -2.7670126e+03 - 1.6995214e+03 -5.3078087e+02 -2.7804885e+03 - 1.6965058e+03 -3.6477337e+02 -2.7916217e+03 - 1.6943323e+03 -1.8599469e+02 -2.7990418e+03 - 1.6935381e+03 0.0000000e+00 -2.8016556e+03 - 1.6519865e+03 0.0000000e+00 -2.8424012e+03 - 1.6524813e+03 1.7567835e+02 -2.8402721e+03 - 1.6538383e+03 3.4547522e+02 -2.8341739e+03 - 1.6557248e+03 5.0467857e+02 -2.8248710e+03 - 1.6577177e+03 6.5040254e+02 -2.8133609e+03 - 1.6594209e+03 7.8158479e+02 -2.8006227e+03 - 1.6605393e+03 8.9854308e+02 -2.7874548e+03 - 1.6609012e+03 1.0024118e+03 -2.7744178e+03 - 1.6604457e+03 1.0946711e+03 -2.7618521e+03 - 1.6591960e+03 1.1768391e+03 -2.7499271e+03 - 1.6572319e+03 1.2503065e+03 -2.7386954e+03 - 1.6546666e+03 1.3162708e+03 -2.7281371e+03 - 1.6516307e+03 1.3757254e+03 -2.7181928e+03 - 1.6482619e+03 1.4294765e+03 -2.7087855e+03 - 1.6446978e+03 1.4781707e+03 -2.6998346e+03 - 1.6410722e+03 1.5223229e+03 -2.6912633e+03 - 1.6375128e+03 1.5623433e+03 -2.6830036e+03 - 1.6341403e+03 1.5985593e+03 -2.6749984e+03 - 1.6310672e+03 1.6312343e+03 -2.6672019e+03 - 1.6283980e+03 1.6605826e+03 -2.6595798e+03 - 1.6262285e+03 1.6867818e+03 -2.6521088e+03 - 1.6246456e+03 1.7099819e+03 -2.6447756e+03 - 1.6237270e+03 1.7303135e+03 -2.6375764e+03 - 1.6235408e+03 1.7478937e+03 -2.6305157e+03 - 1.6241447e+03 1.7628316e+03 -2.6236057e+03 - 1.6255856e+03 1.7752320e+03 -2.6168648e+03 - 1.6278990e+03 1.7851987e+03 -2.6103176e+03 - 1.6311079e+03 1.7928376e+03 -2.6039930e+03 - 1.6352226e+03 1.7982582e+03 -2.5979240e+03 - 1.6402394e+03 1.8015758e+03 -2.5921465e+03 - 1.6461406e+03 1.8029120e+03 -2.5866982e+03 - 1.6528936e+03 1.8023963e+03 -2.5816179e+03 - 1.6604506e+03 1.8001655e+03 -2.5769445e+03 - 1.6687484e+03 1.7963645e+03 -2.5727160e+03 - 1.6777089e+03 1.7911452e+03 -2.5689684e+03 - 1.6872388e+03 1.7846663e+03 -2.5657352e+03 - 1.6972304e+03 1.7770916e+03 -2.5630462e+03 - 1.7075630e+03 1.7685891e+03 -2.5609269e+03 - 1.7181030e+03 1.7593294e+03 -2.5593980e+03 - 1.7287066e+03 1.7494832e+03 -2.5584745e+03 - 1.7392202e+03 1.7392202e+03 -2.5581656e+03 - 1.7494832e+03 1.7287066e+03 -2.5584745e+03 - 1.7593294e+03 1.7181030e+03 -2.5593980e+03 - 1.7685891e+03 1.7075630e+03 -2.5609269e+03 - 1.7770916e+03 1.6972304e+03 -2.5630462e+03 - 1.7846663e+03 1.6872388e+03 -2.5657352e+03 - 1.7911452e+03 1.6777089e+03 -2.5689684e+03 - 1.7963645e+03 1.6687484e+03 -2.5727160e+03 - 1.8001655e+03 1.6604506e+03 -2.5769445e+03 - 1.8023963e+03 1.6528936e+03 -2.5816179e+03 - 1.8029120e+03 1.6461406e+03 -2.5866982e+03 - 1.8015758e+03 1.6402394e+03 -2.5921465e+03 - 1.7982582e+03 1.6352226e+03 -2.5979240e+03 - 1.7928376e+03 1.6311079e+03 -2.6039930e+03 - 1.7851987e+03 1.6278990e+03 -2.6103176e+03 - 1.7752320e+03 1.6255856e+03 -2.6168648e+03 - 1.7628316e+03 1.6241447e+03 -2.6236057e+03 - 1.7478937e+03 1.6235408e+03 -2.6305157e+03 - 1.7303135e+03 1.6237270e+03 -2.6375764e+03 - 1.7099819e+03 1.6246456e+03 -2.6447756e+03 - 1.6867818e+03 1.6262285e+03 -2.6521088e+03 - 1.6605826e+03 1.6283980e+03 -2.6595798e+03 - 1.6312343e+03 1.6310672e+03 -2.6672019e+03 - 1.5985593e+03 1.6341403e+03 -2.6749984e+03 - 1.5623433e+03 1.6375128e+03 -2.6830036e+03 - 1.5223229e+03 1.6410722e+03 -2.6912633e+03 - 1.4781707e+03 1.6446978e+03 -2.6998346e+03 - 1.4294765e+03 1.6482619e+03 -2.7087855e+03 - 1.3757254e+03 1.6516307e+03 -2.7181928e+03 - 1.3162708e+03 1.6546666e+03 -2.7281371e+03 - 1.2503065e+03 1.6572319e+03 -2.7386954e+03 - 1.1768391e+03 1.6591960e+03 -2.7499271e+03 - 1.0946711e+03 1.6604457e+03 -2.7618521e+03 - 1.0024118e+03 1.6609012e+03 -2.7744178e+03 - 8.9854308e+02 1.6605393e+03 -2.7874548e+03 - 7.8158479e+02 1.6594209e+03 -2.8006227e+03 - 6.5040254e+02 1.6577177e+03 -2.8133609e+03 - 5.0467857e+02 1.6557248e+03 -2.8248710e+03 - 3.4547522e+02 1.6538383e+03 -2.8341739e+03 - 1.7567835e+02 1.6524813e+03 -2.8402721e+03 - 0.0000000e+00 1.6519865e+03 -2.8424012e+03 - -1.7567835e+02 1.6524813e+03 -2.8402721e+03 - -3.4547522e+02 1.6538383e+03 -2.8341739e+03 - -5.0467857e+02 1.6557248e+03 -2.8248710e+03 - -6.5040254e+02 1.6577177e+03 -2.8133609e+03 - -7.8158479e+02 1.6594209e+03 -2.8006227e+03 - -8.9854308e+02 1.6605393e+03 -2.7874548e+03 - -1.0024118e+03 1.6609012e+03 -2.7744178e+03 - -1.0946711e+03 1.6604457e+03 -2.7618521e+03 - -1.1768391e+03 1.6591960e+03 -2.7499271e+03 - -1.2503065e+03 1.6572319e+03 -2.7386954e+03 - -1.3162708e+03 1.6546666e+03 -2.7281371e+03 - -1.3757254e+03 1.6516307e+03 -2.7181928e+03 - -1.4294765e+03 1.6482619e+03 -2.7087855e+03 - -1.4781707e+03 1.6446978e+03 -2.6998346e+03 - -1.5223229e+03 1.6410722e+03 -2.6912633e+03 - -1.5623433e+03 1.6375128e+03 -2.6830036e+03 - -1.5985593e+03 1.6341403e+03 -2.6749984e+03 - -1.6312343e+03 1.6310672e+03 -2.6672019e+03 - -1.6605826e+03 1.6283980e+03 -2.6595798e+03 - -1.6867818e+03 1.6262285e+03 -2.6521088e+03 - -1.7099819e+03 1.6246456e+03 -2.6447756e+03 - -1.7303135e+03 1.6237270e+03 -2.6375764e+03 - -1.7478937e+03 1.6235408e+03 -2.6305157e+03 - -1.7628316e+03 1.6241447e+03 -2.6236057e+03 - -1.7752320e+03 1.6255856e+03 -2.6168648e+03 - -1.7851987e+03 1.6278990e+03 -2.6103176e+03 - -1.7928376e+03 1.6311079e+03 -2.6039930e+03 - -1.7982582e+03 1.6352226e+03 -2.5979240e+03 - -1.8015758e+03 1.6402394e+03 -2.5921465e+03 - -1.8029120e+03 1.6461406e+03 -2.5866982e+03 - -1.8023963e+03 1.6528936e+03 -2.5816179e+03 - -1.8001655e+03 1.6604506e+03 -2.5769445e+03 - -1.7963645e+03 1.6687484e+03 -2.5727160e+03 - -1.7911452e+03 1.6777089e+03 -2.5689684e+03 - -1.7846663e+03 1.6872388e+03 -2.5657352e+03 - -1.7770916e+03 1.6972304e+03 -2.5630462e+03 - -1.7685891e+03 1.7075630e+03 -2.5609269e+03 - -1.7593294e+03 1.7181030e+03 -2.5593980e+03 - -1.7494832e+03 1.7287066e+03 -2.5584745e+03 - -1.7392202e+03 1.7392202e+03 -2.5581656e+03 - -1.7287066e+03 1.7494832e+03 -2.5584745e+03 - -1.7181030e+03 1.7593294e+03 -2.5593980e+03 - -1.7075630e+03 1.7685891e+03 -2.5609269e+03 - -1.6972304e+03 1.7770916e+03 -2.5630462e+03 - -1.6872388e+03 1.7846663e+03 -2.5657352e+03 - -1.6777089e+03 1.7911452e+03 -2.5689684e+03 - -1.6687484e+03 1.7963645e+03 -2.5727160e+03 - -1.6604506e+03 1.8001655e+03 -2.5769445e+03 - -1.6528936e+03 1.8023963e+03 -2.5816179e+03 - -1.6461406e+03 1.8029120e+03 -2.5866982e+03 - -1.6402394e+03 1.8015758e+03 -2.5921465e+03 - -1.6352226e+03 1.7982582e+03 -2.5979240e+03 - -1.6311079e+03 1.7928376e+03 -2.6039930e+03 - -1.6278990e+03 1.7851987e+03 -2.6103176e+03 - -1.6255856e+03 1.7752320e+03 -2.6168648e+03 - -1.6241447e+03 1.7628316e+03 -2.6236057e+03 - -1.6235408e+03 1.7478937e+03 -2.6305157e+03 - -1.6237270e+03 1.7303135e+03 -2.6375764e+03 - -1.6246456e+03 1.7099819e+03 -2.6447756e+03 - -1.6262285e+03 1.6867818e+03 -2.6521088e+03 - -1.6283980e+03 1.6605826e+03 -2.6595798e+03 - -1.6310672e+03 1.6312343e+03 -2.6672019e+03 - -1.6341403e+03 1.5985593e+03 -2.6749984e+03 - -1.6375128e+03 1.5623433e+03 -2.6830036e+03 - -1.6410722e+03 1.5223229e+03 -2.6912633e+03 - -1.6446978e+03 1.4781707e+03 -2.6998346e+03 - -1.6482619e+03 1.4294765e+03 -2.7087855e+03 - -1.6516307e+03 1.3757254e+03 -2.7181928e+03 - -1.6546666e+03 1.3162708e+03 -2.7281371e+03 - -1.6572319e+03 1.2503065e+03 -2.7386954e+03 - -1.6591960e+03 1.1768391e+03 -2.7499271e+03 - -1.6604457e+03 1.0946711e+03 -2.7618521e+03 - -1.6609012e+03 1.0024118e+03 -2.7744178e+03 - -1.6605393e+03 8.9854308e+02 -2.7874548e+03 - -1.6594209e+03 7.8158479e+02 -2.8006227e+03 - -1.6577177e+03 6.5040254e+02 -2.8133609e+03 - -1.6557248e+03 5.0467857e+02 -2.8248710e+03 - -1.6538383e+03 3.4547522e+02 -2.8341739e+03 - -1.6524813e+03 1.7567835e+02 -2.8402721e+03 - -1.6519865e+03 0.0000000e+00 -2.8424012e+03 - -1.6524813e+03 -1.7567835e+02 -2.8402721e+03 - -1.6538383e+03 -3.4547522e+02 -2.8341739e+03 - -1.6557248e+03 -5.0467857e+02 -2.8248710e+03 - -1.6577177e+03 -6.5040254e+02 -2.8133609e+03 - -1.6594209e+03 -7.8158479e+02 -2.8006227e+03 - -1.6605393e+03 -8.9854308e+02 -2.7874548e+03 - -1.6609012e+03 -1.0024118e+03 -2.7744178e+03 - -1.6604457e+03 -1.0946711e+03 -2.7618521e+03 - -1.6591960e+03 -1.1768391e+03 -2.7499271e+03 - -1.6572319e+03 -1.2503065e+03 -2.7386954e+03 - -1.6546666e+03 -1.3162708e+03 -2.7281371e+03 - -1.6516307e+03 -1.3757254e+03 -2.7181928e+03 - -1.6482619e+03 -1.4294765e+03 -2.7087855e+03 - -1.6446978e+03 -1.4781707e+03 -2.6998346e+03 - -1.6410722e+03 -1.5223229e+03 -2.6912633e+03 - -1.6375128e+03 -1.5623433e+03 -2.6830036e+03 - -1.6341403e+03 -1.5985593e+03 -2.6749984e+03 - -1.6310672e+03 -1.6312343e+03 -2.6672019e+03 - -1.6283980e+03 -1.6605826e+03 -2.6595798e+03 - -1.6262285e+03 -1.6867818e+03 -2.6521088e+03 - -1.6246456e+03 -1.7099819e+03 -2.6447756e+03 - -1.6237270e+03 -1.7303135e+03 -2.6375764e+03 - -1.6235408e+03 -1.7478937e+03 -2.6305157e+03 - -1.6241447e+03 -1.7628316e+03 -2.6236057e+03 - -1.6255856e+03 -1.7752320e+03 -2.6168648e+03 - -1.6278990e+03 -1.7851987e+03 -2.6103176e+03 - -1.6311079e+03 -1.7928376e+03 -2.6039930e+03 - -1.6352226e+03 -1.7982582e+03 -2.5979240e+03 - -1.6402394e+03 -1.8015758e+03 -2.5921465e+03 - -1.6461406e+03 -1.8029120e+03 -2.5866982e+03 - -1.6528936e+03 -1.8023963e+03 -2.5816179e+03 - -1.6604506e+03 -1.8001655e+03 -2.5769445e+03 - -1.6687484e+03 -1.7963645e+03 -2.5727160e+03 - -1.6777089e+03 -1.7911452e+03 -2.5689684e+03 - -1.6872388e+03 -1.7846663e+03 -2.5657352e+03 - -1.6972304e+03 -1.7770916e+03 -2.5630462e+03 - -1.7075630e+03 -1.7685891e+03 -2.5609269e+03 - -1.7181030e+03 -1.7593294e+03 -2.5593980e+03 - -1.7287066e+03 -1.7494832e+03 -2.5584745e+03 - -1.7392202e+03 -1.7392202e+03 -2.5581656e+03 - -1.7494832e+03 -1.7287066e+03 -2.5584745e+03 - -1.7593294e+03 -1.7181030e+03 -2.5593980e+03 - -1.7685891e+03 -1.7075630e+03 -2.5609269e+03 - -1.7770916e+03 -1.6972304e+03 -2.5630462e+03 - -1.7846663e+03 -1.6872388e+03 -2.5657352e+03 - -1.7911452e+03 -1.6777089e+03 -2.5689684e+03 - -1.7963645e+03 -1.6687484e+03 -2.5727160e+03 - -1.8001655e+03 -1.6604506e+03 -2.5769445e+03 - -1.8023963e+03 -1.6528936e+03 -2.5816179e+03 - -1.8029120e+03 -1.6461406e+03 -2.5866982e+03 - -1.8015758e+03 -1.6402394e+03 -2.5921465e+03 - -1.7982582e+03 -1.6352226e+03 -2.5979240e+03 - -1.7928376e+03 -1.6311079e+03 -2.6039930e+03 - -1.7851987e+03 -1.6278990e+03 -2.6103176e+03 - -1.7752320e+03 -1.6255856e+03 -2.6168648e+03 - -1.7628316e+03 -1.6241447e+03 -2.6236057e+03 - -1.7478937e+03 -1.6235408e+03 -2.6305157e+03 - -1.7303135e+03 -1.6237270e+03 -2.6375764e+03 - -1.7099819e+03 -1.6246456e+03 -2.6447756e+03 - -1.6867818e+03 -1.6262285e+03 -2.6521088e+03 - -1.6605826e+03 -1.6283980e+03 -2.6595798e+03 - -1.6312343e+03 -1.6310672e+03 -2.6672019e+03 - -1.5985593e+03 -1.6341403e+03 -2.6749984e+03 - -1.5623433e+03 -1.6375128e+03 -2.6830036e+03 - -1.5223229e+03 -1.6410722e+03 -2.6912633e+03 - -1.4781707e+03 -1.6446978e+03 -2.6998346e+03 - -1.4294765e+03 -1.6482619e+03 -2.7087855e+03 - -1.3757254e+03 -1.6516307e+03 -2.7181928e+03 - -1.3162708e+03 -1.6546666e+03 -2.7281371e+03 - -1.2503065e+03 -1.6572319e+03 -2.7386954e+03 - -1.1768391e+03 -1.6591960e+03 -2.7499271e+03 - -1.0946711e+03 -1.6604457e+03 -2.7618521e+03 - -1.0024118e+03 -1.6609012e+03 -2.7744178e+03 - -8.9854308e+02 -1.6605393e+03 -2.7874548e+03 - -7.8158479e+02 -1.6594209e+03 -2.8006227e+03 - -6.5040254e+02 -1.6577177e+03 -2.8133609e+03 - -5.0467857e+02 -1.6557248e+03 -2.8248710e+03 - -3.4547522e+02 -1.6538383e+03 -2.8341739e+03 - -1.7567835e+02 -1.6524813e+03 -2.8402721e+03 - -2.4067136e-09 -1.6519865e+03 -2.8424012e+03 - 1.7567835e+02 -1.6524813e+03 -2.8402721e+03 - 3.4547522e+02 -1.6538383e+03 -2.8341739e+03 - 5.0467857e+02 -1.6557248e+03 -2.8248710e+03 - 6.5040254e+02 -1.6577177e+03 -2.8133609e+03 - 7.8158479e+02 -1.6594209e+03 -2.8006227e+03 - 8.9854308e+02 -1.6605393e+03 -2.7874548e+03 - 1.0024118e+03 -1.6609012e+03 -2.7744178e+03 - 1.0946711e+03 -1.6604457e+03 -2.7618521e+03 - 1.1768391e+03 -1.6591960e+03 -2.7499271e+03 - 1.2503065e+03 -1.6572319e+03 -2.7386954e+03 - 1.3162708e+03 -1.6546666e+03 -2.7281371e+03 - 1.3757254e+03 -1.6516307e+03 -2.7181928e+03 - 1.4294765e+03 -1.6482619e+03 -2.7087855e+03 - 1.4781707e+03 -1.6446978e+03 -2.6998346e+03 - 1.5223229e+03 -1.6410722e+03 -2.6912633e+03 - 1.5623433e+03 -1.6375128e+03 -2.6830036e+03 - 1.5985593e+03 -1.6341403e+03 -2.6749984e+03 - 1.6312343e+03 -1.6310672e+03 -2.6672019e+03 - 1.6605826e+03 -1.6283980e+03 -2.6595798e+03 - 1.6867818e+03 -1.6262285e+03 -2.6521088e+03 - 1.7099819e+03 -1.6246456e+03 -2.6447756e+03 - 1.7303135e+03 -1.6237270e+03 -2.6375764e+03 - 1.7478937e+03 -1.6235408e+03 -2.6305157e+03 - 1.7628316e+03 -1.6241447e+03 -2.6236057e+03 - 1.7752320e+03 -1.6255856e+03 -2.6168648e+03 - 1.7851987e+03 -1.6278990e+03 -2.6103176e+03 - 1.7928376e+03 -1.6311079e+03 -2.6039930e+03 - 1.7982582e+03 -1.6352226e+03 -2.5979240e+03 - 1.8015758e+03 -1.6402394e+03 -2.5921465e+03 - 1.8029120e+03 -1.6461406e+03 -2.5866982e+03 - 1.8023963e+03 -1.6528936e+03 -2.5816179e+03 - 1.8001655e+03 -1.6604506e+03 -2.5769445e+03 - 1.7963645e+03 -1.6687484e+03 -2.5727160e+03 - 1.7911452e+03 -1.6777089e+03 -2.5689684e+03 - 1.7846663e+03 -1.6872388e+03 -2.5657352e+03 - 1.7770916e+03 -1.6972304e+03 -2.5630462e+03 - 1.7685891e+03 -1.7075630e+03 -2.5609269e+03 - 1.7593294e+03 -1.7181030e+03 -2.5593980e+03 - 1.7494832e+03 -1.7287066e+03 -2.5584745e+03 - 1.7392202e+03 -1.7392202e+03 -2.5581656e+03 - 1.7287066e+03 -1.7494832e+03 -2.5584745e+03 - 1.7181030e+03 -1.7593294e+03 -2.5593980e+03 - 1.7075630e+03 -1.7685891e+03 -2.5609269e+03 - 1.6972304e+03 -1.7770916e+03 -2.5630462e+03 - 1.6872388e+03 -1.7846663e+03 -2.5657352e+03 - 1.6777089e+03 -1.7911452e+03 -2.5689684e+03 - 1.6687484e+03 -1.7963645e+03 -2.5727160e+03 - 1.6604506e+03 -1.8001655e+03 -2.5769445e+03 - 1.6528936e+03 -1.8023963e+03 -2.5816179e+03 - 1.6461406e+03 -1.8029120e+03 -2.5866982e+03 - 1.6402394e+03 -1.8015758e+03 -2.5921465e+03 - 1.6352226e+03 -1.7982582e+03 -2.5979240e+03 - 1.6311079e+03 -1.7928376e+03 -2.6039930e+03 - 1.6278990e+03 -1.7851987e+03 -2.6103176e+03 - 1.6255856e+03 -1.7752320e+03 -2.6168648e+03 - 1.6241447e+03 -1.7628316e+03 -2.6236057e+03 - 1.6235408e+03 -1.7478937e+03 -2.6305157e+03 - 1.6237270e+03 -1.7303135e+03 -2.6375764e+03 - 1.6246456e+03 -1.7099819e+03 -2.6447756e+03 - 1.6262285e+03 -1.6867818e+03 -2.6521088e+03 - 1.6283980e+03 -1.6605826e+03 -2.6595798e+03 - 1.6310672e+03 -1.6312343e+03 -2.6672019e+03 - 1.6341403e+03 -1.5985593e+03 -2.6749984e+03 - 1.6375128e+03 -1.5623433e+03 -2.6830036e+03 - 1.6410722e+03 -1.5223229e+03 -2.6912633e+03 - 1.6446978e+03 -1.4781707e+03 -2.6998346e+03 - 1.6482619e+03 -1.4294765e+03 -2.7087855e+03 - 1.6516307e+03 -1.3757254e+03 -2.7181928e+03 - 1.6546666e+03 -1.3162708e+03 -2.7281371e+03 - 1.6572319e+03 -1.2503065e+03 -2.7386954e+03 - 1.6591960e+03 -1.1768391e+03 -2.7499271e+03 - 1.6604457e+03 -1.0946711e+03 -2.7618521e+03 - 1.6609012e+03 -1.0024118e+03 -2.7744178e+03 - 1.6605393e+03 -8.9854308e+02 -2.7874548e+03 - 1.6594209e+03 -7.8158479e+02 -2.8006227e+03 - 1.6577177e+03 -6.5040254e+02 -2.8133609e+03 - 1.6557248e+03 -5.0467857e+02 -2.8248710e+03 - 1.6538383e+03 -3.4547522e+02 -2.8341739e+03 - 1.6524813e+03 -1.7567835e+02 -2.8402721e+03 - 1.6519865e+03 4.8134273e-09 -2.8424012e+03 - 1.6102471e+03 0.0000000e+00 -2.8817535e+03 - 1.6105335e+03 1.6668996e+02 -2.8799799e+03 - 1.6113154e+03 3.2847188e+02 -2.8748644e+03 - 1.6123878e+03 4.8129329e+02 -2.8669588e+03 - 1.6134830e+03 6.2247944e+02 -2.8570058e+03 - 1.6143420e+03 7.5080271e+02 -2.8457673e+03 - 1.6147634e+03 8.6621291e+02 -2.8339004e+03 - 1.6146243e+03 9.6943405e+02 -2.8219009e+03 - 1.6138774e+03 1.0615897e+03 -2.8100998e+03 - 1.6125375e+03 1.1439296e+03 -2.7986906e+03 - 1.6106638e+03 1.2176633e+03 -2.7877645e+03 - 1.6083442e+03 1.2838771e+03 -2.7773440e+03 - 1.6056837e+03 1.3435034e+03 -2.7674098e+03 - 1.6027954e+03 1.3973214e+03 -2.7579198e+03 - 1.5997947e+03 1.4459716e+03 -2.7488223e+03 - 1.5967958e+03 1.4899756e+03 -2.7400643e+03 - 1.5939091e+03 1.5297568e+03 -2.7315964e+03 - 1.5912399e+03 1.5656593e+03 -2.7233761e+03 - 1.5888871e+03 1.5979643e+03 -2.7153687e+03 - 1.5869432e+03 1.6269034e+03 -2.7075484e+03 - 1.5854933e+03 1.6526707e+03 -2.6998978e+03 - 1.5846146e+03 1.6754311e+03 -2.6924078e+03 - 1.5843760e+03 1.6953289e+03 -2.6850772e+03 - 1.5848379e+03 1.7124930e+03 -2.6779117e+03 - 1.5860509e+03 1.7270428e+03 -2.6709237e+03 - 1.5880558e+03 1.7390915e+03 -2.6641311e+03 - 1.5908826e+03 1.7487502e+03 -2.6575567e+03 - 1.5945499e+03 1.7561297e+03 -2.6512275e+03 - 1.5990642e+03 1.7613437e+03 -2.6451739e+03 - 1.6044192e+03 1.7645096e+03 -2.6394286e+03 - 1.6105954e+03 1.7657498e+03 -2.6340262e+03 - 1.6175597e+03 1.7651929e+03 -2.6290019e+03 - 1.6252646e+03 1.7629739e+03 -2.6243910e+03 - 1.6336488e+03 1.7592338e+03 -2.6202278e+03 - 1.6426367e+03 1.7541200e+03 -2.6165451e+03 - 1.6521390e+03 1.7477850e+03 -2.6133729e+03 - 1.6620533e+03 1.7403860e+03 -2.6107381e+03 - 1.6722646e+03 1.7320831e+03 -2.6086639e+03 - 1.6826467e+03 1.7230383e+03 -2.6071686e+03 - 1.6930634e+03 1.7134136e+03 -2.6062659e+03 - 1.7033696e+03 1.7033696e+03 -2.6059641e+03 - 1.7134136e+03 1.6930634e+03 -2.6062659e+03 - 1.7230383e+03 1.6826467e+03 -2.6071686e+03 - 1.7320831e+03 1.6722646e+03 -2.6086639e+03 - 1.7403860e+03 1.6620533e+03 -2.6107381e+03 - 1.7477850e+03 1.6521390e+03 -2.6133729e+03 - 1.7541200e+03 1.6426367e+03 -2.6165451e+03 - 1.7592338e+03 1.6336488e+03 -2.6202278e+03 - 1.7629739e+03 1.6252646e+03 -2.6243910e+03 - 1.7651929e+03 1.6175597e+03 -2.6290019e+03 - 1.7657498e+03 1.6105954e+03 -2.6340262e+03 - 1.7645096e+03 1.6044192e+03 -2.6394286e+03 - 1.7613437e+03 1.5990642e+03 -2.6451739e+03 - 1.7561297e+03 1.5945499e+03 -2.6512275e+03 - 1.7487502e+03 1.5908826e+03 -2.6575567e+03 - 1.7390915e+03 1.5880558e+03 -2.6641311e+03 - 1.7270428e+03 1.5860509e+03 -2.6709237e+03 - 1.7124930e+03 1.5848379e+03 -2.6779117e+03 - 1.6953289e+03 1.5843760e+03 -2.6850772e+03 - 1.6754311e+03 1.5846146e+03 -2.6924078e+03 - 1.6526707e+03 1.5854933e+03 -2.6998978e+03 - 1.6269034e+03 1.5869432e+03 -2.7075484e+03 - 1.5979643e+03 1.5888871e+03 -2.7153687e+03 - 1.5656593e+03 1.5912399e+03 -2.7233761e+03 - 1.5297568e+03 1.5939091e+03 -2.7315964e+03 - 1.4899756e+03 1.5967958e+03 -2.7400643e+03 - 1.4459716e+03 1.5997947e+03 -2.7488223e+03 - 1.3973214e+03 1.6027954e+03 -2.7579198e+03 - 1.3435034e+03 1.6056837e+03 -2.7674098e+03 - 1.2838771e+03 1.6083442e+03 -2.7773440e+03 - 1.2176633e+03 1.6106638e+03 -2.7877645e+03 - 1.1439296e+03 1.6125375e+03 -2.7986906e+03 - 1.0615897e+03 1.6138774e+03 -2.8100998e+03 - 9.6943405e+02 1.6146243e+03 -2.8219009e+03 - 8.6621291e+02 1.6147634e+03 -2.8339004e+03 - 7.5080271e+02 1.6143420e+03 -2.8457673e+03 - 6.2247944e+02 1.6134830e+03 -2.8570058e+03 - 4.8129329e+02 1.6123878e+03 -2.8669588e+03 - 3.2847188e+02 1.6113154e+03 -2.8748644e+03 - 1.6668996e+02 1.6105335e+03 -2.8799799e+03 - -4.8134273e-09 1.6102471e+03 -2.8817535e+03 - -1.6668996e+02 1.6105335e+03 -2.8799799e+03 - -3.2847188e+02 1.6113154e+03 -2.8748644e+03 - -4.8129329e+02 1.6123878e+03 -2.8669588e+03 - -6.2247944e+02 1.6134830e+03 -2.8570058e+03 - -7.5080271e+02 1.6143420e+03 -2.8457673e+03 - -8.6621291e+02 1.6147634e+03 -2.8339004e+03 - -9.6943405e+02 1.6146243e+03 -2.8219009e+03 - -1.0615897e+03 1.6138774e+03 -2.8100998e+03 - -1.1439296e+03 1.6125375e+03 -2.7986906e+03 - -1.2176633e+03 1.6106638e+03 -2.7877645e+03 - -1.2838771e+03 1.6083442e+03 -2.7773440e+03 - -1.3435034e+03 1.6056837e+03 -2.7674098e+03 - -1.3973214e+03 1.6027954e+03 -2.7579198e+03 - -1.4459716e+03 1.5997947e+03 -2.7488223e+03 - -1.4899756e+03 1.5967958e+03 -2.7400643e+03 - -1.5297568e+03 1.5939091e+03 -2.7315964e+03 - -1.5656593e+03 1.5912399e+03 -2.7233761e+03 - -1.5979643e+03 1.5888871e+03 -2.7153687e+03 - -1.6269034e+03 1.5869432e+03 -2.7075484e+03 - -1.6526707e+03 1.5854933e+03 -2.6998978e+03 - -1.6754311e+03 1.5846146e+03 -2.6924078e+03 - -1.6953289e+03 1.5843760e+03 -2.6850772e+03 - -1.7124930e+03 1.5848379e+03 -2.6779117e+03 - -1.7270428e+03 1.5860509e+03 -2.6709237e+03 - -1.7390915e+03 1.5880558e+03 -2.6641311e+03 - -1.7487502e+03 1.5908826e+03 -2.6575567e+03 - -1.7561297e+03 1.5945499e+03 -2.6512275e+03 - -1.7613437e+03 1.5990642e+03 -2.6451739e+03 - -1.7645096e+03 1.6044192e+03 -2.6394286e+03 - -1.7657498e+03 1.6105954e+03 -2.6340262e+03 - -1.7651929e+03 1.6175597e+03 -2.6290019e+03 - -1.7629739e+03 1.6252646e+03 -2.6243910e+03 - -1.7592338e+03 1.6336488e+03 -2.6202278e+03 - -1.7541200e+03 1.6426367e+03 -2.6165451e+03 - -1.7477850e+03 1.6521390e+03 -2.6133729e+03 - -1.7403860e+03 1.6620533e+03 -2.6107381e+03 - -1.7320831e+03 1.6722646e+03 -2.6086639e+03 - -1.7230383e+03 1.6826467e+03 -2.6071686e+03 - -1.7134136e+03 1.6930634e+03 -2.6062659e+03 - -1.7033696e+03 1.7033696e+03 -2.6059641e+03 - -1.6930634e+03 1.7134136e+03 -2.6062659e+03 - -1.6826467e+03 1.7230383e+03 -2.6071686e+03 - -1.6722646e+03 1.7320831e+03 -2.6086639e+03 - -1.6620533e+03 1.7403860e+03 -2.6107381e+03 - -1.6521390e+03 1.7477850e+03 -2.6133729e+03 - -1.6426367e+03 1.7541200e+03 -2.6165451e+03 - -1.6336488e+03 1.7592338e+03 -2.6202278e+03 - -1.6252646e+03 1.7629739e+03 -2.6243910e+03 - -1.6175597e+03 1.7651929e+03 -2.6290019e+03 - -1.6105954e+03 1.7657498e+03 -2.6340262e+03 - -1.6044192e+03 1.7645096e+03 -2.6394286e+03 - -1.5990642e+03 1.7613437e+03 -2.6451739e+03 - -1.5945499e+03 1.7561297e+03 -2.6512275e+03 - -1.5908826e+03 1.7487502e+03 -2.6575567e+03 - -1.5880558e+03 1.7390915e+03 -2.6641311e+03 - -1.5860509e+03 1.7270428e+03 -2.6709237e+03 - -1.5848379e+03 1.7124930e+03 -2.6779117e+03 - -1.5843760e+03 1.6953289e+03 -2.6850772e+03 - -1.5846146e+03 1.6754311e+03 -2.6924078e+03 - -1.5854933e+03 1.6526707e+03 -2.6998978e+03 - -1.5869432e+03 1.6269034e+03 -2.7075484e+03 - -1.5888871e+03 1.5979643e+03 -2.7153687e+03 - -1.5912399e+03 1.5656593e+03 -2.7233761e+03 - -1.5939091e+03 1.5297568e+03 -2.7315964e+03 - -1.5967958e+03 1.4899756e+03 -2.7400643e+03 - -1.5997947e+03 1.4459716e+03 -2.7488223e+03 - -1.6027954e+03 1.3973214e+03 -2.7579198e+03 - -1.6056837e+03 1.3435034e+03 -2.7674098e+03 - -1.6083442e+03 1.2838771e+03 -2.7773440e+03 - -1.6106638e+03 1.2176633e+03 -2.7877645e+03 - -1.6125375e+03 1.1439296e+03 -2.7986906e+03 - -1.6138774e+03 1.0615897e+03 -2.8100998e+03 - -1.6146243e+03 9.6943405e+02 -2.8219009e+03 - -1.6147634e+03 8.6621291e+02 -2.8339004e+03 - -1.6143420e+03 7.5080271e+02 -2.8457673e+03 - -1.6134830e+03 6.2247944e+02 -2.8570058e+03 - -1.6123878e+03 4.8129329e+02 -2.8669588e+03 - -1.6113154e+03 3.2847188e+02 -2.8748644e+03 - -1.6105335e+03 1.6668996e+02 -2.8799799e+03 - -1.6102471e+03 0.0000000e+00 -2.8817535e+03 - -1.6105335e+03 -1.6668996e+02 -2.8799799e+03 - -1.6113154e+03 -3.2847188e+02 -2.8748644e+03 - -1.6123878e+03 -4.8129329e+02 -2.8669588e+03 - -1.6134830e+03 -6.2247944e+02 -2.8570058e+03 - -1.6143420e+03 -7.5080271e+02 -2.8457673e+03 - -1.6147634e+03 -8.6621291e+02 -2.8339004e+03 - -1.6146243e+03 -9.6943405e+02 -2.8219009e+03 - -1.6138774e+03 -1.0615897e+03 -2.8100998e+03 - -1.6125375e+03 -1.1439296e+03 -2.7986906e+03 - -1.6106638e+03 -1.2176633e+03 -2.7877645e+03 - -1.6083442e+03 -1.2838771e+03 -2.7773440e+03 - -1.6056837e+03 -1.3435034e+03 -2.7674098e+03 - -1.6027954e+03 -1.3973214e+03 -2.7579198e+03 - -1.5997947e+03 -1.4459716e+03 -2.7488223e+03 - -1.5967958e+03 -1.4899756e+03 -2.7400643e+03 - -1.5939091e+03 -1.5297568e+03 -2.7315964e+03 - -1.5912399e+03 -1.5656593e+03 -2.7233761e+03 - -1.5888871e+03 -1.5979643e+03 -2.7153687e+03 - -1.5869432e+03 -1.6269034e+03 -2.7075484e+03 - -1.5854933e+03 -1.6526707e+03 -2.6998978e+03 - -1.5846146e+03 -1.6754311e+03 -2.6924078e+03 - -1.5843760e+03 -1.6953289e+03 -2.6850772e+03 - -1.5848379e+03 -1.7124930e+03 -2.6779117e+03 - -1.5860509e+03 -1.7270428e+03 -2.6709237e+03 - -1.5880558e+03 -1.7390915e+03 -2.6641311e+03 - -1.5908826e+03 -1.7487502e+03 -2.6575567e+03 - -1.5945499e+03 -1.7561297e+03 -2.6512275e+03 - -1.5990642e+03 -1.7613437e+03 -2.6451739e+03 - -1.6044192e+03 -1.7645096e+03 -2.6394286e+03 - -1.6105954e+03 -1.7657498e+03 -2.6340262e+03 - -1.6175597e+03 -1.7651929e+03 -2.6290019e+03 - -1.6252646e+03 -1.7629739e+03 -2.6243910e+03 - -1.6336488e+03 -1.7592338e+03 -2.6202278e+03 - -1.6426367e+03 -1.7541200e+03 -2.6165451e+03 - -1.6521390e+03 -1.7477850e+03 -2.6133729e+03 - -1.6620533e+03 -1.7403860e+03 -2.6107381e+03 - -1.6722646e+03 -1.7320831e+03 -2.6086639e+03 - -1.6826467e+03 -1.7230383e+03 -2.6071686e+03 - -1.6930634e+03 -1.7134136e+03 -2.6062659e+03 - -1.7033696e+03 -1.7033696e+03 -2.6059641e+03 - -1.7134136e+03 -1.6930634e+03 -2.6062659e+03 - -1.7230383e+03 -1.6826467e+03 -2.6071686e+03 - -1.7320831e+03 -1.6722646e+03 -2.6086639e+03 - -1.7403860e+03 -1.6620533e+03 -2.6107381e+03 - -1.7477850e+03 -1.6521390e+03 -2.6133729e+03 - -1.7541200e+03 -1.6426367e+03 -2.6165451e+03 - -1.7592338e+03 -1.6336488e+03 -2.6202278e+03 - -1.7629739e+03 -1.6252646e+03 -2.6243910e+03 - -1.7651929e+03 -1.6175597e+03 -2.6290019e+03 - -1.7657498e+03 -1.6105954e+03 -2.6340262e+03 - -1.7645096e+03 -1.6044192e+03 -2.6394286e+03 - -1.7613437e+03 -1.5990642e+03 -2.6451739e+03 - -1.7561297e+03 -1.5945499e+03 -2.6512275e+03 - -1.7487502e+03 -1.5908826e+03 -2.6575567e+03 - -1.7390915e+03 -1.5880558e+03 -2.6641311e+03 - -1.7270428e+03 -1.5860509e+03 -2.6709237e+03 - -1.7124930e+03 -1.5848379e+03 -2.6779117e+03 - -1.6953289e+03 -1.5843760e+03 -2.6850772e+03 - -1.6754311e+03 -1.5846146e+03 -2.6924078e+03 - -1.6526707e+03 -1.5854933e+03 -2.6998978e+03 - -1.6269034e+03 -1.5869432e+03 -2.7075484e+03 - -1.5979643e+03 -1.5888871e+03 -2.7153687e+03 - -1.5656593e+03 -1.5912399e+03 -2.7233761e+03 - -1.5297568e+03 -1.5939091e+03 -2.7315964e+03 - -1.4899756e+03 -1.5967958e+03 -2.7400643e+03 - -1.4459716e+03 -1.5997947e+03 -2.7488223e+03 - -1.3973214e+03 -1.6027954e+03 -2.7579198e+03 - -1.3435034e+03 -1.6056837e+03 -2.7674098e+03 - -1.2838771e+03 -1.6083442e+03 -2.7773440e+03 - -1.2176633e+03 -1.6106638e+03 -2.7877645e+03 - -1.1439296e+03 -1.6125375e+03 -2.7986906e+03 - -1.0615897e+03 -1.6138774e+03 -2.8100998e+03 - -9.6943405e+02 -1.6146243e+03 -2.8219009e+03 - -8.6621291e+02 -1.6147634e+03 -2.8339004e+03 - -7.5080271e+02 -1.6143420e+03 -2.8457673e+03 - -6.2247944e+02 -1.6134830e+03 -2.8570058e+03 - -4.8129329e+02 -1.6123878e+03 -2.8669588e+03 - -3.2847188e+02 -1.6113154e+03 -2.8748644e+03 - -1.6668996e+02 -1.6105335e+03 -2.8799799e+03 - 0.0000000e+00 -1.6102471e+03 -2.8817535e+03 - 1.6668996e+02 -1.6105335e+03 -2.8799799e+03 - 3.2847188e+02 -1.6113154e+03 -2.8748644e+03 - 4.8129329e+02 -1.6123878e+03 -2.8669588e+03 - 6.2247944e+02 -1.6134830e+03 -2.8570058e+03 - 7.5080271e+02 -1.6143420e+03 -2.8457673e+03 - 8.6621291e+02 -1.6147634e+03 -2.8339004e+03 - 9.6943405e+02 -1.6146243e+03 -2.8219009e+03 - 1.0615897e+03 -1.6138774e+03 -2.8100998e+03 - 1.1439296e+03 -1.6125375e+03 -2.7986906e+03 - 1.2176633e+03 -1.6106638e+03 -2.7877645e+03 - 1.2838771e+03 -1.6083442e+03 -2.7773440e+03 - 1.3435034e+03 -1.6056837e+03 -2.7674098e+03 - 1.3973214e+03 -1.6027954e+03 -2.7579198e+03 - 1.4459716e+03 -1.5997947e+03 -2.7488223e+03 - 1.4899756e+03 -1.5967958e+03 -2.7400643e+03 - 1.5297568e+03 -1.5939091e+03 -2.7315964e+03 - 1.5656593e+03 -1.5912399e+03 -2.7233761e+03 - 1.5979643e+03 -1.5888871e+03 -2.7153687e+03 - 1.6269034e+03 -1.5869432e+03 -2.7075484e+03 - 1.6526707e+03 -1.5854933e+03 -2.6998978e+03 - 1.6754311e+03 -1.5846146e+03 -2.6924078e+03 - 1.6953289e+03 -1.5843760e+03 -2.6850772e+03 - 1.7124930e+03 -1.5848379e+03 -2.6779117e+03 - 1.7270428e+03 -1.5860509e+03 -2.6709237e+03 - 1.7390915e+03 -1.5880558e+03 -2.6641311e+03 - 1.7487502e+03 -1.5908826e+03 -2.6575567e+03 - 1.7561297e+03 -1.5945499e+03 -2.6512275e+03 - 1.7613437e+03 -1.5990642e+03 -2.6451739e+03 - 1.7645096e+03 -1.6044192e+03 -2.6394286e+03 - 1.7657498e+03 -1.6105954e+03 -2.6340262e+03 - 1.7651929e+03 -1.6175597e+03 -2.6290019e+03 - 1.7629739e+03 -1.6252646e+03 -2.6243910e+03 - 1.7592338e+03 -1.6336488e+03 -2.6202278e+03 - 1.7541200e+03 -1.6426367e+03 -2.6165451e+03 - 1.7477850e+03 -1.6521390e+03 -2.6133729e+03 - 1.7403860e+03 -1.6620533e+03 -2.6107381e+03 - 1.7320831e+03 -1.6722646e+03 -2.6086639e+03 - 1.7230383e+03 -1.6826467e+03 -2.6071686e+03 - 1.7134136e+03 -1.6930634e+03 -2.6062659e+03 - 1.7033696e+03 -1.7033696e+03 -2.6059641e+03 - 1.6930634e+03 -1.7134136e+03 -2.6062659e+03 - 1.6826467e+03 -1.7230383e+03 -2.6071686e+03 - 1.6722646e+03 -1.7320831e+03 -2.6086639e+03 - 1.6620533e+03 -1.7403860e+03 -2.6107381e+03 - 1.6521390e+03 -1.7477850e+03 -2.6133729e+03 - 1.6426367e+03 -1.7541200e+03 -2.6165451e+03 - 1.6336488e+03 -1.7592338e+03 -2.6202278e+03 - 1.6252646e+03 -1.7629739e+03 -2.6243910e+03 - 1.6175597e+03 -1.7651929e+03 -2.6290019e+03 - 1.6105954e+03 -1.7657498e+03 -2.6340262e+03 - 1.6044192e+03 -1.7645096e+03 -2.6394286e+03 - 1.5990642e+03 -1.7613437e+03 -2.6451739e+03 - 1.5945499e+03 -1.7561297e+03 -2.6512275e+03 - 1.5908826e+03 -1.7487502e+03 -2.6575567e+03 - 1.5880558e+03 -1.7390915e+03 -2.6641311e+03 - 1.5860509e+03 -1.7270428e+03 -2.6709237e+03 - 1.5848379e+03 -1.7124930e+03 -2.6779117e+03 - 1.5843760e+03 -1.6953289e+03 -2.6850772e+03 - 1.5846146e+03 -1.6754311e+03 -2.6924078e+03 - 1.5854933e+03 -1.6526707e+03 -2.6998978e+03 - 1.5869432e+03 -1.6269034e+03 -2.7075484e+03 - 1.5888871e+03 -1.5979643e+03 -2.7153687e+03 - 1.5912399e+03 -1.5656593e+03 -2.7233761e+03 - 1.5939091e+03 -1.5297568e+03 -2.7315964e+03 - 1.5967958e+03 -1.4899756e+03 -2.7400643e+03 - 1.5997947e+03 -1.4459716e+03 -2.7488223e+03 - 1.6027954e+03 -1.3973214e+03 -2.7579198e+03 - 1.6056837e+03 -1.3435034e+03 -2.7674098e+03 - 1.6083442e+03 -1.2838771e+03 -2.7773440e+03 - 1.6106638e+03 -1.2176633e+03 -2.7877645e+03 - 1.6125375e+03 -1.1439296e+03 -2.7986906e+03 - 1.6138774e+03 -1.0615897e+03 -2.8100998e+03 - 1.6146243e+03 -9.6943405e+02 -2.8219009e+03 - 1.6147634e+03 -8.6621291e+02 -2.8339004e+03 - 1.6143420e+03 -7.5080271e+02 -2.8457673e+03 - 1.6134830e+03 -6.2247944e+02 -2.8570058e+03 - 1.6123878e+03 -4.8129329e+02 -2.8669588e+03 - 1.6113154e+03 -3.2847188e+02 -2.8748644e+03 - 1.6105335e+03 -1.6668996e+02 -2.8799799e+03 - 1.6102471e+03 0.0000000e+00 -2.8817535e+03 - 1.5683423e+03 -2.4067136e-09 -2.9197355e+03 - 1.5684810e+03 1.5869052e+02 -2.9182310e+03 - 1.5688513e+03 3.1320741e+02 -2.9138676e+03 - 1.5693303e+03 4.6002279e+02 -2.9070544e+03 - 1.5697551e+03 5.9667435e+02 -2.8983553e+03 - 1.5699648e+03 7.2186486e+02 -2.8883703e+03 - 1.5698317e+03 8.3529996e+02 -2.8776402e+03 - 1.5692775e+03 9.3739864e+02 -2.8665968e+03 - 1.5682743e+03 1.0289972e+03 -2.8555497e+03 - 1.5668379e+03 1.1111135e+03 -2.8446992e+03 - 1.5650171e+03 1.1847887e+03 -2.8341591e+03 - 1.5628840e+03 1.2509968e+03 -2.8239806e+03 - 1.5605248e+03 1.3106020e+03 -2.8141742e+03 - 1.5580338e+03 1.3643465e+03 -2.8047250e+03 - 1.5555083e+03 1.4128549e+03 -2.7956052e+03 - 1.5530457e+03 1.4566466e+03 -2.7867818e+03 - 1.5507409e+03 1.4961510e+03 -2.7782220e+03 - 1.5486855e+03 1.5317226e+03 -2.7698964e+03 - 1.5469659e+03 1.5636554e+03 -2.7617806e+03 - 1.5456630e+03 1.5921946e+03 -2.7538567e+03 - 1.5448517e+03 1.6175475e+03 -2.7461133e+03 - 1.5445999e+03 1.6398918e+03 -2.7385454e+03 - 1.5449680e+03 1.6593831e+03 -2.7311546e+03 - 1.5460087e+03 1.6761607e+03 -2.7239483e+03 - 1.5477657e+03 1.6903529e+03 -2.7169392e+03 - 1.5502738e+03 1.7020805e+03 -2.7101449e+03 - 1.5535577e+03 1.7114606e+03 -2.7035873e+03 - 1.5576315e+03 1.7186090e+03 -2.6972917e+03 - 1.5624981e+03 1.7236425e+03 -2.6912862e+03 - 1.5681485e+03 1.7266803e+03 -2.6856010e+03 - 1.5745616e+03 1.7278455e+03 -2.6802679e+03 - 1.5817035e+03 1.7272657e+03 -2.6753190e+03 - 1.5895272e+03 1.7250737e+03 -2.6707865e+03 - 1.5979727e+03 1.7214073e+03 -2.6667015e+03 - 1.6069672e+03 1.7164090e+03 -2.6630938e+03 - 1.6164250e+03 1.7102260e+03 -2.6599905e+03 - 1.6262483e+03 1.7030086e+03 -2.6574160e+03 - 1.6363279e+03 1.6949097e+03 -2.6553910e+03 - 1.6465442e+03 1.6860835e+03 -2.6539323e+03 - 1.6567680e+03 1.6766838e+03 -2.6530522e+03 - 1.6668624e+03 1.6668624e+03 -2.6527579e+03 - 1.6766838e+03 1.6567680e+03 -2.6530522e+03 - 1.6860835e+03 1.6465442e+03 -2.6539323e+03 - 1.6949097e+03 1.6363279e+03 -2.6553910e+03 - 1.7030086e+03 1.6262483e+03 -2.6574160e+03 - 1.7102260e+03 1.6164250e+03 -2.6599905e+03 - 1.7164090e+03 1.6069672e+03 -2.6630938e+03 - 1.7214073e+03 1.5979727e+03 -2.6667015e+03 - 1.7250737e+03 1.5895272e+03 -2.6707865e+03 - 1.7272657e+03 1.5817035e+03 -2.6753190e+03 - 1.7278455e+03 1.5745616e+03 -2.6802679e+03 - 1.7266803e+03 1.5681485e+03 -2.6856010e+03 - 1.7236425e+03 1.5624981e+03 -2.6912862e+03 - 1.7186090e+03 1.5576315e+03 -2.6972917e+03 - 1.7114606e+03 1.5535577e+03 -2.7035873e+03 - 1.7020805e+03 1.5502738e+03 -2.7101449e+03 - 1.6903529e+03 1.5477657e+03 -2.7169392e+03 - 1.6761607e+03 1.5460087e+03 -2.7239483e+03 - 1.6593831e+03 1.5449680e+03 -2.7311546e+03 - 1.6398918e+03 1.5445999e+03 -2.7385454e+03 - 1.6175475e+03 1.5448517e+03 -2.7461133e+03 - 1.5921946e+03 1.5456630e+03 -2.7538567e+03 - 1.5636554e+03 1.5469659e+03 -2.7617806e+03 - 1.5317226e+03 1.5486855e+03 -2.7698964e+03 - 1.4961510e+03 1.5507409e+03 -2.7782220e+03 - 1.4566466e+03 1.5530457e+03 -2.7867818e+03 - 1.4128549e+03 1.5555083e+03 -2.7956052e+03 - 1.3643465e+03 1.5580338e+03 -2.8047250e+03 - 1.3106020e+03 1.5605248e+03 -2.8141742e+03 - 1.2509968e+03 1.5628840e+03 -2.8239806e+03 - 1.1847887e+03 1.5650171e+03 -2.8341591e+03 - 1.1111135e+03 1.5668379e+03 -2.8446992e+03 - 1.0289972e+03 1.5682743e+03 -2.8555497e+03 - 9.3739864e+02 1.5692775e+03 -2.8665968e+03 - 8.3529996e+02 1.5698317e+03 -2.8776402e+03 - 7.2186486e+02 1.5699648e+03 -2.8883703e+03 - 5.9667435e+02 1.5697551e+03 -2.8983553e+03 - 4.6002279e+02 1.5693303e+03 -2.9070544e+03 - 3.1320741e+02 1.5688513e+03 -2.9138676e+03 - 1.5869052e+02 1.5684810e+03 -2.9182310e+03 - -4.8134273e-09 1.5683423e+03 -2.9197355e+03 - -1.5869052e+02 1.5684810e+03 -2.9182310e+03 - -3.1320741e+02 1.5688513e+03 -2.9138676e+03 - -4.6002279e+02 1.5693303e+03 -2.9070544e+03 - -5.9667435e+02 1.5697551e+03 -2.8983553e+03 - -7.2186486e+02 1.5699648e+03 -2.8883703e+03 - -8.3529996e+02 1.5698317e+03 -2.8776402e+03 - -9.3739864e+02 1.5692775e+03 -2.8665968e+03 - -1.0289972e+03 1.5682743e+03 -2.8555497e+03 - -1.1111135e+03 1.5668379e+03 -2.8446992e+03 - -1.1847887e+03 1.5650171e+03 -2.8341591e+03 - -1.2509968e+03 1.5628840e+03 -2.8239806e+03 - -1.3106020e+03 1.5605248e+03 -2.8141742e+03 - -1.3643465e+03 1.5580338e+03 -2.8047250e+03 - -1.4128549e+03 1.5555083e+03 -2.7956052e+03 - -1.4566466e+03 1.5530457e+03 -2.7867818e+03 - -1.4961510e+03 1.5507409e+03 -2.7782220e+03 - -1.5317226e+03 1.5486855e+03 -2.7698964e+03 - -1.5636554e+03 1.5469659e+03 -2.7617806e+03 - -1.5921946e+03 1.5456630e+03 -2.7538567e+03 - -1.6175475e+03 1.5448517e+03 -2.7461133e+03 - -1.6398918e+03 1.5445999e+03 -2.7385454e+03 - -1.6593831e+03 1.5449680e+03 -2.7311546e+03 - -1.6761607e+03 1.5460087e+03 -2.7239483e+03 - -1.6903529e+03 1.5477657e+03 -2.7169392e+03 - -1.7020805e+03 1.5502738e+03 -2.7101449e+03 - -1.7114606e+03 1.5535577e+03 -2.7035873e+03 - -1.7186090e+03 1.5576315e+03 -2.6972917e+03 - -1.7236425e+03 1.5624981e+03 -2.6912862e+03 - -1.7266803e+03 1.5681485e+03 -2.6856010e+03 - -1.7278455e+03 1.5745616e+03 -2.6802679e+03 - -1.7272657e+03 1.5817035e+03 -2.6753190e+03 - -1.7250737e+03 1.5895272e+03 -2.6707865e+03 - -1.7214073e+03 1.5979727e+03 -2.6667015e+03 - -1.7164090e+03 1.6069672e+03 -2.6630938e+03 - -1.7102260e+03 1.6164250e+03 -2.6599905e+03 - -1.7030086e+03 1.6262483e+03 -2.6574160e+03 - -1.6949097e+03 1.6363279e+03 -2.6553910e+03 - -1.6860835e+03 1.6465442e+03 -2.6539323e+03 - -1.6766838e+03 1.6567680e+03 -2.6530522e+03 - -1.6668624e+03 1.6668624e+03 -2.6527579e+03 - -1.6567680e+03 1.6766838e+03 -2.6530522e+03 - -1.6465442e+03 1.6860835e+03 -2.6539323e+03 - -1.6363279e+03 1.6949097e+03 -2.6553910e+03 - -1.6262483e+03 1.7030086e+03 -2.6574160e+03 - -1.6164250e+03 1.7102260e+03 -2.6599905e+03 - -1.6069672e+03 1.7164090e+03 -2.6630938e+03 - -1.5979727e+03 1.7214073e+03 -2.6667015e+03 - -1.5895272e+03 1.7250737e+03 -2.6707865e+03 - -1.5817035e+03 1.7272657e+03 -2.6753190e+03 - -1.5745616e+03 1.7278455e+03 -2.6802679e+03 - -1.5681485e+03 1.7266803e+03 -2.6856010e+03 - -1.5624981e+03 1.7236425e+03 -2.6912862e+03 - -1.5576315e+03 1.7186090e+03 -2.6972917e+03 - -1.5535577e+03 1.7114606e+03 -2.7035873e+03 - -1.5502738e+03 1.7020805e+03 -2.7101449e+03 - -1.5477657e+03 1.6903529e+03 -2.7169392e+03 - -1.5460087e+03 1.6761607e+03 -2.7239483e+03 - -1.5449680e+03 1.6593831e+03 -2.7311546e+03 - -1.5445999e+03 1.6398918e+03 -2.7385454e+03 - -1.5448517e+03 1.6175475e+03 -2.7461133e+03 - -1.5456630e+03 1.5921946e+03 -2.7538567e+03 - -1.5469659e+03 1.5636554e+03 -2.7617806e+03 - -1.5486855e+03 1.5317226e+03 -2.7698964e+03 - -1.5507409e+03 1.4961510e+03 -2.7782220e+03 - -1.5530457e+03 1.4566466e+03 -2.7867818e+03 - -1.5555083e+03 1.4128549e+03 -2.7956052e+03 - -1.5580338e+03 1.3643465e+03 -2.8047250e+03 - -1.5605248e+03 1.3106020e+03 -2.8141742e+03 - -1.5628840e+03 1.2509968e+03 -2.8239806e+03 - -1.5650171e+03 1.1847887e+03 -2.8341591e+03 - -1.5668379e+03 1.1111135e+03 -2.8446992e+03 - -1.5682743e+03 1.0289972e+03 -2.8555497e+03 - -1.5692775e+03 9.3739864e+02 -2.8665968e+03 - -1.5698317e+03 8.3529996e+02 -2.8776402e+03 - -1.5699648e+03 7.2186486e+02 -2.8883703e+03 - -1.5697551e+03 5.9667435e+02 -2.8983553e+03 - -1.5693303e+03 4.6002279e+02 -2.9070544e+03 - -1.5688513e+03 3.1320741e+02 -2.9138676e+03 - -1.5684810e+03 1.5869052e+02 -2.9182310e+03 - -1.5683423e+03 -2.4067136e-09 -2.9197355e+03 - -1.5684810e+03 -1.5869052e+02 -2.9182310e+03 - -1.5688513e+03 -3.1320741e+02 -2.9138676e+03 - -1.5693303e+03 -4.6002279e+02 -2.9070544e+03 - -1.5697551e+03 -5.9667435e+02 -2.8983553e+03 - -1.5699648e+03 -7.2186486e+02 -2.8883703e+03 - -1.5698317e+03 -8.3529996e+02 -2.8776402e+03 - -1.5692775e+03 -9.3739864e+02 -2.8665968e+03 - -1.5682743e+03 -1.0289972e+03 -2.8555497e+03 - -1.5668379e+03 -1.1111135e+03 -2.8446992e+03 - -1.5650171e+03 -1.1847887e+03 -2.8341591e+03 - -1.5628840e+03 -1.2509968e+03 -2.8239806e+03 - -1.5605248e+03 -1.3106020e+03 -2.8141742e+03 - -1.5580338e+03 -1.3643465e+03 -2.8047250e+03 - -1.5555083e+03 -1.4128549e+03 -2.7956052e+03 - -1.5530457e+03 -1.4566466e+03 -2.7867818e+03 - -1.5507409e+03 -1.4961510e+03 -2.7782220e+03 - -1.5486855e+03 -1.5317226e+03 -2.7698964e+03 - -1.5469659e+03 -1.5636554e+03 -2.7617806e+03 - -1.5456630e+03 -1.5921946e+03 -2.7538567e+03 - -1.5448517e+03 -1.6175475e+03 -2.7461133e+03 - -1.5445999e+03 -1.6398918e+03 -2.7385454e+03 - -1.5449680e+03 -1.6593831e+03 -2.7311546e+03 - -1.5460087e+03 -1.6761607e+03 -2.7239483e+03 - -1.5477657e+03 -1.6903529e+03 -2.7169392e+03 - -1.5502738e+03 -1.7020805e+03 -2.7101449e+03 - -1.5535577e+03 -1.7114606e+03 -2.7035873e+03 - -1.5576315e+03 -1.7186090e+03 -2.6972917e+03 - -1.5624981e+03 -1.7236425e+03 -2.6912862e+03 - -1.5681485e+03 -1.7266803e+03 -2.6856010e+03 - -1.5745616e+03 -1.7278455e+03 -2.6802679e+03 - -1.5817035e+03 -1.7272657e+03 -2.6753190e+03 - -1.5895272e+03 -1.7250737e+03 -2.6707865e+03 - -1.5979727e+03 -1.7214073e+03 -2.6667015e+03 - -1.6069672e+03 -1.7164090e+03 -2.6630938e+03 - -1.6164250e+03 -1.7102260e+03 -2.6599905e+03 - -1.6262483e+03 -1.7030086e+03 -2.6574160e+03 - -1.6363279e+03 -1.6949097e+03 -2.6553910e+03 - -1.6465442e+03 -1.6860835e+03 -2.6539323e+03 - -1.6567680e+03 -1.6766838e+03 -2.6530522e+03 - -1.6668624e+03 -1.6668624e+03 -2.6527579e+03 - -1.6766838e+03 -1.6567680e+03 -2.6530522e+03 - -1.6860835e+03 -1.6465442e+03 -2.6539323e+03 - -1.6949097e+03 -1.6363279e+03 -2.6553910e+03 - -1.7030086e+03 -1.6262483e+03 -2.6574160e+03 - -1.7102260e+03 -1.6164250e+03 -2.6599905e+03 - -1.7164090e+03 -1.6069672e+03 -2.6630938e+03 - -1.7214073e+03 -1.5979727e+03 -2.6667015e+03 - -1.7250737e+03 -1.5895272e+03 -2.6707865e+03 - -1.7272657e+03 -1.5817035e+03 -2.6753190e+03 - -1.7278455e+03 -1.5745616e+03 -2.6802679e+03 - -1.7266803e+03 -1.5681485e+03 -2.6856010e+03 - -1.7236425e+03 -1.5624981e+03 -2.6912862e+03 - -1.7186090e+03 -1.5576315e+03 -2.6972917e+03 - -1.7114606e+03 -1.5535577e+03 -2.7035873e+03 - -1.7020805e+03 -1.5502738e+03 -2.7101449e+03 - -1.6903529e+03 -1.5477657e+03 -2.7169392e+03 - -1.6761607e+03 -1.5460087e+03 -2.7239483e+03 - -1.6593831e+03 -1.5449680e+03 -2.7311546e+03 - -1.6398918e+03 -1.5445999e+03 -2.7385454e+03 - -1.6175475e+03 -1.5448517e+03 -2.7461133e+03 - -1.5921946e+03 -1.5456630e+03 -2.7538567e+03 - -1.5636554e+03 -1.5469659e+03 -2.7617806e+03 - -1.5317226e+03 -1.5486855e+03 -2.7698964e+03 - -1.4961510e+03 -1.5507409e+03 -2.7782220e+03 - -1.4566466e+03 -1.5530457e+03 -2.7867818e+03 - -1.4128549e+03 -1.5555083e+03 -2.7956052e+03 - -1.3643465e+03 -1.5580338e+03 -2.8047250e+03 - -1.3106020e+03 -1.5605248e+03 -2.8141742e+03 - -1.2509968e+03 -1.5628840e+03 -2.8239806e+03 - -1.1847887e+03 -1.5650171e+03 -2.8341591e+03 - -1.1111135e+03 -1.5668379e+03 -2.8446992e+03 - -1.0289972e+03 -1.5682743e+03 -2.8555497e+03 - -9.3739864e+02 -1.5692775e+03 -2.8665968e+03 - -8.3529996e+02 -1.5698317e+03 -2.8776402e+03 - -7.2186486e+02 -1.5699648e+03 -2.8883703e+03 - -5.9667435e+02 -1.5697551e+03 -2.8983553e+03 - -4.6002279e+02 -1.5693303e+03 -2.9070544e+03 - -3.1320741e+02 -1.5688513e+03 -2.9138676e+03 - -1.5869052e+02 -1.5684810e+03 -2.9182310e+03 - 2.4067136e-09 -1.5683423e+03 -2.9197355e+03 - 1.5869052e+02 -1.5684810e+03 -2.9182310e+03 - 3.1320741e+02 -1.5688513e+03 -2.9138676e+03 - 4.6002279e+02 -1.5693303e+03 -2.9070544e+03 - 5.9667435e+02 -1.5697551e+03 -2.8983553e+03 - 7.2186486e+02 -1.5699648e+03 -2.8883703e+03 - 8.3529996e+02 -1.5698317e+03 -2.8776402e+03 - 9.3739864e+02 -1.5692775e+03 -2.8665968e+03 - 1.0289972e+03 -1.5682743e+03 -2.8555497e+03 - 1.1111135e+03 -1.5668379e+03 -2.8446992e+03 - 1.1847887e+03 -1.5650171e+03 -2.8341591e+03 - 1.2509968e+03 -1.5628840e+03 -2.8239806e+03 - 1.3106020e+03 -1.5605248e+03 -2.8141742e+03 - 1.3643465e+03 -1.5580338e+03 -2.8047250e+03 - 1.4128549e+03 -1.5555083e+03 -2.7956052e+03 - 1.4566466e+03 -1.5530457e+03 -2.7867818e+03 - 1.4961510e+03 -1.5507409e+03 -2.7782220e+03 - 1.5317226e+03 -1.5486855e+03 -2.7698964e+03 - 1.5636554e+03 -1.5469659e+03 -2.7617806e+03 - 1.5921946e+03 -1.5456630e+03 -2.7538567e+03 - 1.6175475e+03 -1.5448517e+03 -2.7461133e+03 - 1.6398918e+03 -1.5445999e+03 -2.7385454e+03 - 1.6593831e+03 -1.5449680e+03 -2.7311546e+03 - 1.6761607e+03 -1.5460087e+03 -2.7239483e+03 - 1.6903529e+03 -1.5477657e+03 -2.7169392e+03 - 1.7020805e+03 -1.5502738e+03 -2.7101449e+03 - 1.7114606e+03 -1.5535577e+03 -2.7035873e+03 - 1.7186090e+03 -1.5576315e+03 -2.6972917e+03 - 1.7236425e+03 -1.5624981e+03 -2.6912862e+03 - 1.7266803e+03 -1.5681485e+03 -2.6856010e+03 - 1.7278455e+03 -1.5745616e+03 -2.6802679e+03 - 1.7272657e+03 -1.5817035e+03 -2.6753190e+03 - 1.7250737e+03 -1.5895272e+03 -2.6707865e+03 - 1.7214073e+03 -1.5979727e+03 -2.6667015e+03 - 1.7164090e+03 -1.6069672e+03 -2.6630938e+03 - 1.7102260e+03 -1.6164250e+03 -2.6599905e+03 - 1.7030086e+03 -1.6262483e+03 -2.6574160e+03 - 1.6949097e+03 -1.6363279e+03 -2.6553910e+03 - 1.6860835e+03 -1.6465442e+03 -2.6539323e+03 - 1.6766838e+03 -1.6567680e+03 -2.6530522e+03 - 1.6668624e+03 -1.6668624e+03 -2.6527579e+03 - 1.6567680e+03 -1.6766838e+03 -2.6530522e+03 - 1.6465442e+03 -1.6860835e+03 -2.6539323e+03 - 1.6363279e+03 -1.6949097e+03 -2.6553910e+03 - 1.6262483e+03 -1.7030086e+03 -2.6574160e+03 - 1.6164250e+03 -1.7102260e+03 -2.6599905e+03 - 1.6069672e+03 -1.7164090e+03 -2.6630938e+03 - 1.5979727e+03 -1.7214073e+03 -2.6667015e+03 - 1.5895272e+03 -1.7250737e+03 -2.6707865e+03 - 1.5817035e+03 -1.7272657e+03 -2.6753190e+03 - 1.5745616e+03 -1.7278455e+03 -2.6802679e+03 - 1.5681485e+03 -1.7266803e+03 -2.6856010e+03 - 1.5624981e+03 -1.7236425e+03 -2.6912862e+03 - 1.5576315e+03 -1.7186090e+03 -2.6972917e+03 - 1.5535577e+03 -1.7114606e+03 -2.7035873e+03 - 1.5502738e+03 -1.7020805e+03 -2.7101449e+03 - 1.5477657e+03 -1.6903529e+03 -2.7169392e+03 - 1.5460087e+03 -1.6761607e+03 -2.7239483e+03 - 1.5449680e+03 -1.6593831e+03 -2.7311546e+03 - 1.5445999e+03 -1.6398918e+03 -2.7385454e+03 - 1.5448517e+03 -1.6175475e+03 -2.7461133e+03 - 1.5456630e+03 -1.5921946e+03 -2.7538567e+03 - 1.5469659e+03 -1.5636554e+03 -2.7617806e+03 - 1.5486855e+03 -1.5317226e+03 -2.7698964e+03 - 1.5507409e+03 -1.4961510e+03 -2.7782220e+03 - 1.5530457e+03 -1.4566466e+03 -2.7867818e+03 - 1.5555083e+03 -1.4128549e+03 -2.7956052e+03 - 1.5580338e+03 -1.3643465e+03 -2.8047250e+03 - 1.5605248e+03 -1.3106020e+03 -2.8141742e+03 - 1.5628840e+03 -1.2509968e+03 -2.8239806e+03 - 1.5650171e+03 -1.1847887e+03 -2.8341591e+03 - 1.5668379e+03 -1.1111135e+03 -2.8446992e+03 - 1.5682743e+03 -1.0289972e+03 -2.8555497e+03 - 1.5692775e+03 -9.3739864e+02 -2.8665968e+03 - 1.5698317e+03 -8.3529996e+02 -2.8776402e+03 - 1.5699648e+03 -7.2186486e+02 -2.8883703e+03 - 1.5697551e+03 -5.9667435e+02 -2.8983553e+03 - 1.5693303e+03 -4.6002279e+02 -2.9070544e+03 - 1.5688513e+03 -3.1320741e+02 -2.9138676e+03 - 1.5684810e+03 -1.5869052e+02 -2.9182310e+03 - 1.5683423e+03 0.0000000e+00 -2.9197355e+03 - 1.5262932e+03 -2.4067136e-09 -2.9563705e+03 - 1.5263259e+03 1.5144668e+02 -2.9550754e+03 - 1.5263985e+03 2.9928956e+02 -2.9513025e+03 - 1.5264423e+03 4.4042498e+02 -2.9453617e+03 - 1.5263660e+03 5.7259114e+02 -2.9376891e+03 - 1.5260792e+03 6.9447690e+02 -2.9287620e+03 - 1.5255114e+03 8.0562741e+02 -2.9190272e+03 - 1.5246223e+03 9.0623521e+02 -2.9088578e+03 - 1.5234047e+03 9.9690692e+02 -2.8985369e+03 - 1.5218803e+03 1.0784629e+03 -2.8882614e+03 - 1.5200945e+03 1.1517922e+03 -2.8781563e+03 - 1.5181093e+03 1.2177604e+03 -2.8682917e+03 - 1.5159983e+03 1.2771607e+03 -2.8586991e+03 - 1.5138411e+03 1.3306923e+03 -2.8493848e+03 - 1.5117208e+03 1.3789571e+03 -2.8403401e+03 - 1.5097205e+03 1.4224655e+03 -2.8315487e+03 - 1.5079221e+03 1.4616466e+03 -2.8229920e+03 - 1.5064043e+03 1.4968605e+03 -2.8146519e+03 - 1.5052424e+03 1.5284095e+03 -2.8065136e+03 - 1.5045068e+03 1.5565488e+03 -2.7985663e+03 - 1.5042624e+03 1.5814959e+03 -2.7908042e+03 - 1.5045683e+03 1.6034390e+03 -2.7832264e+03 - 1.5054769e+03 1.6225433e+03 -2.7758373e+03 - 1.5070333e+03 1.6389567e+03 -2.7686457e+03 - 1.5092749e+03 1.6528152e+03 -2.7616654e+03 - 1.5122303e+03 1.6642462e+03 -2.7549137e+03 - 1.5159192e+03 1.6733721e+03 -2.7484117e+03 - 1.5203512e+03 1.6803126e+03 -2.7421835e+03 - 1.5255259e+03 1.6851873e+03 -2.7362553e+03 - 1.5314318e+03 1.6881169e+03 -2.7306552e+03 - 1.5380459e+03 1.6892248e+03 -2.7254124e+03 - 1.5453336e+03 1.6886376e+03 -2.7205564e+03 - 1.5532484e+03 1.6864858e+03 -2.7161167e+03 - 1.5617317e+03 1.6829037e+03 -2.7121217e+03 - 1.5707128e+03 1.6780296e+03 -2.7085982e+03 - 1.5801097e+03 1.6720052e+03 -2.7055711e+03 - 1.5898290e+03 1.6649746e+03 -2.7030624e+03 - 1.5997667e+03 1.6570838e+03 -2.7010907e+03 - 1.6098092e+03 1.6484796e+03 -2.6996713e+03 - 1.6198344e+03 1.6393078e+03 -2.6988152e+03 - 1.6297125e+03 1.6297125e+03 -2.6985291e+03 - 1.6393078e+03 1.6198344e+03 -2.6988152e+03 - 1.6484796e+03 1.6098092e+03 -2.6996713e+03 - 1.6570838e+03 1.5997667e+03 -2.7010907e+03 - 1.6649746e+03 1.5898290e+03 -2.7030624e+03 - 1.6720052e+03 1.5801097e+03 -2.7055711e+03 - 1.6780296e+03 1.5707128e+03 -2.7085982e+03 - 1.6829037e+03 1.5617317e+03 -2.7121217e+03 - 1.6864858e+03 1.5532484e+03 -2.7161167e+03 - 1.6886376e+03 1.5453336e+03 -2.7205564e+03 - 1.6892248e+03 1.5380459e+03 -2.7254124e+03 - 1.6881169e+03 1.5314318e+03 -2.7306552e+03 - 1.6851873e+03 1.5255259e+03 -2.7362553e+03 - 1.6803126e+03 1.5203512e+03 -2.7421835e+03 - 1.6733721e+03 1.5159192e+03 -2.7484117e+03 - 1.6642462e+03 1.5122303e+03 -2.7549137e+03 - 1.6528152e+03 1.5092749e+03 -2.7616654e+03 - 1.6389567e+03 1.5070333e+03 -2.7686457e+03 - 1.6225433e+03 1.5054769e+03 -2.7758373e+03 - 1.6034390e+03 1.5045683e+03 -2.7832264e+03 - 1.5814959e+03 1.5042624e+03 -2.7908042e+03 - 1.5565488e+03 1.5045068e+03 -2.7985663e+03 - 1.5284095e+03 1.5052424e+03 -2.8065136e+03 - 1.4968605e+03 1.5064043e+03 -2.8146519e+03 - 1.4616466e+03 1.5079221e+03 -2.8229920e+03 - 1.4224655e+03 1.5097205e+03 -2.8315487e+03 - 1.3789571e+03 1.5117208e+03 -2.8403401e+03 - 1.3306923e+03 1.5138411e+03 -2.8493848e+03 - 1.2771607e+03 1.5159983e+03 -2.8586991e+03 - 1.2177604e+03 1.5181093e+03 -2.8682917e+03 - 1.1517922e+03 1.5200945e+03 -2.8781563e+03 - 1.0784629e+03 1.5218803e+03 -2.8882614e+03 - 9.9690692e+02 1.5234047e+03 -2.8985369e+03 - 9.0623521e+02 1.5246223e+03 -2.9088578e+03 - 8.0562741e+02 1.5255114e+03 -2.9190272e+03 - 6.9447690e+02 1.5260792e+03 -2.9287620e+03 - 5.7259114e+02 1.5263660e+03 -2.9376891e+03 - 4.4042498e+02 1.5264423e+03 -2.9453617e+03 - 2.9928956e+02 1.5263985e+03 -2.9513025e+03 - 1.5144668e+02 1.5263259e+03 -2.9550754e+03 - 2.4067136e-09 1.5262932e+03 -2.9563705e+03 - -1.5144668e+02 1.5263259e+03 -2.9550754e+03 - -2.9928956e+02 1.5263985e+03 -2.9513025e+03 - -4.4042498e+02 1.5264423e+03 -2.9453617e+03 - -5.7259114e+02 1.5263660e+03 -2.9376891e+03 - -6.9447690e+02 1.5260792e+03 -2.9287620e+03 - -8.0562741e+02 1.5255114e+03 -2.9190272e+03 - -9.0623521e+02 1.5246223e+03 -2.9088578e+03 - -9.9690692e+02 1.5234047e+03 -2.8985369e+03 - -1.0784629e+03 1.5218803e+03 -2.8882614e+03 - -1.1517922e+03 1.5200945e+03 -2.8781563e+03 - -1.2177604e+03 1.5181093e+03 -2.8682917e+03 - -1.2771607e+03 1.5159983e+03 -2.8586991e+03 - -1.3306923e+03 1.5138411e+03 -2.8493848e+03 - -1.3789571e+03 1.5117208e+03 -2.8403401e+03 - -1.4224655e+03 1.5097205e+03 -2.8315487e+03 - -1.4616466e+03 1.5079221e+03 -2.8229920e+03 - -1.4968605e+03 1.5064043e+03 -2.8146519e+03 - -1.5284095e+03 1.5052424e+03 -2.8065136e+03 - -1.5565488e+03 1.5045068e+03 -2.7985663e+03 - -1.5814959e+03 1.5042624e+03 -2.7908042e+03 - -1.6034390e+03 1.5045683e+03 -2.7832264e+03 - -1.6225433e+03 1.5054769e+03 -2.7758373e+03 - -1.6389567e+03 1.5070333e+03 -2.7686457e+03 - -1.6528152e+03 1.5092749e+03 -2.7616654e+03 - -1.6642462e+03 1.5122303e+03 -2.7549137e+03 - -1.6733721e+03 1.5159192e+03 -2.7484117e+03 - -1.6803126e+03 1.5203512e+03 -2.7421835e+03 - -1.6851873e+03 1.5255259e+03 -2.7362553e+03 - -1.6881169e+03 1.5314318e+03 -2.7306552e+03 - -1.6892248e+03 1.5380459e+03 -2.7254124e+03 - -1.6886376e+03 1.5453336e+03 -2.7205564e+03 - -1.6864858e+03 1.5532484e+03 -2.7161167e+03 - -1.6829037e+03 1.5617317e+03 -2.7121217e+03 - -1.6780296e+03 1.5707128e+03 -2.7085982e+03 - -1.6720052e+03 1.5801097e+03 -2.7055711e+03 - -1.6649746e+03 1.5898290e+03 -2.7030624e+03 - -1.6570838e+03 1.5997667e+03 -2.7010907e+03 - -1.6484796e+03 1.6098092e+03 -2.6996713e+03 - -1.6393078e+03 1.6198344e+03 -2.6988152e+03 - -1.6297125e+03 1.6297125e+03 -2.6985291e+03 - -1.6198344e+03 1.6393078e+03 -2.6988152e+03 - -1.6098092e+03 1.6484796e+03 -2.6996713e+03 - -1.5997667e+03 1.6570838e+03 -2.7010907e+03 - -1.5898290e+03 1.6649746e+03 -2.7030624e+03 - -1.5801097e+03 1.6720052e+03 -2.7055711e+03 - -1.5707128e+03 1.6780296e+03 -2.7085982e+03 - -1.5617317e+03 1.6829037e+03 -2.7121217e+03 - -1.5532484e+03 1.6864858e+03 -2.7161167e+03 - -1.5453336e+03 1.6886376e+03 -2.7205564e+03 - -1.5380459e+03 1.6892248e+03 -2.7254124e+03 - -1.5314318e+03 1.6881169e+03 -2.7306552e+03 - -1.5255259e+03 1.6851873e+03 -2.7362553e+03 - -1.5203512e+03 1.6803126e+03 -2.7421835e+03 - -1.5159192e+03 1.6733721e+03 -2.7484117e+03 - -1.5122303e+03 1.6642462e+03 -2.7549137e+03 - -1.5092749e+03 1.6528152e+03 -2.7616654e+03 - -1.5070333e+03 1.6389567e+03 -2.7686457e+03 - -1.5054769e+03 1.6225433e+03 -2.7758373e+03 - -1.5045683e+03 1.6034390e+03 -2.7832264e+03 - -1.5042624e+03 1.5814959e+03 -2.7908042e+03 - -1.5045068e+03 1.5565488e+03 -2.7985663e+03 - -1.5052424e+03 1.5284095e+03 -2.8065136e+03 - -1.5064043e+03 1.4968605e+03 -2.8146519e+03 - -1.5079221e+03 1.4616466e+03 -2.8229920e+03 - -1.5097205e+03 1.4224655e+03 -2.8315487e+03 - -1.5117208e+03 1.3789571e+03 -2.8403401e+03 - -1.5138411e+03 1.3306923e+03 -2.8493848e+03 - -1.5159983e+03 1.2771607e+03 -2.8586991e+03 - -1.5181093e+03 1.2177604e+03 -2.8682917e+03 - -1.5200945e+03 1.1517922e+03 -2.8781563e+03 - -1.5218803e+03 1.0784629e+03 -2.8882614e+03 - -1.5234047e+03 9.9690692e+02 -2.8985369e+03 - -1.5246223e+03 9.0623521e+02 -2.9088578e+03 - -1.5255114e+03 8.0562741e+02 -2.9190272e+03 - -1.5260792e+03 6.9447690e+02 -2.9287620e+03 - -1.5263660e+03 5.7259114e+02 -2.9376891e+03 - -1.5264423e+03 4.4042498e+02 -2.9453617e+03 - -1.5263985e+03 2.9928956e+02 -2.9513025e+03 - -1.5263259e+03 1.5144668e+02 -2.9550754e+03 - -1.5262932e+03 0.0000000e+00 -2.9563705e+03 - -1.5263259e+03 -1.5144668e+02 -2.9550754e+03 - -1.5263985e+03 -2.9928956e+02 -2.9513025e+03 - -1.5264423e+03 -4.4042498e+02 -2.9453617e+03 - -1.5263660e+03 -5.7259114e+02 -2.9376891e+03 - -1.5260792e+03 -6.9447690e+02 -2.9287620e+03 - -1.5255114e+03 -8.0562741e+02 -2.9190272e+03 - -1.5246223e+03 -9.0623521e+02 -2.9088578e+03 - -1.5234047e+03 -9.9690692e+02 -2.8985369e+03 - -1.5218803e+03 -1.0784629e+03 -2.8882614e+03 - -1.5200945e+03 -1.1517922e+03 -2.8781563e+03 - -1.5181093e+03 -1.2177604e+03 -2.8682917e+03 - -1.5159983e+03 -1.2771607e+03 -2.8586991e+03 - -1.5138411e+03 -1.3306923e+03 -2.8493848e+03 - -1.5117208e+03 -1.3789571e+03 -2.8403401e+03 - -1.5097205e+03 -1.4224655e+03 -2.8315487e+03 - -1.5079221e+03 -1.4616466e+03 -2.8229920e+03 - -1.5064043e+03 -1.4968605e+03 -2.8146519e+03 - -1.5052424e+03 -1.5284095e+03 -2.8065136e+03 - -1.5045068e+03 -1.5565488e+03 -2.7985663e+03 - -1.5042624e+03 -1.5814959e+03 -2.7908042e+03 - -1.5045683e+03 -1.6034390e+03 -2.7832264e+03 - -1.5054769e+03 -1.6225433e+03 -2.7758373e+03 - -1.5070333e+03 -1.6389567e+03 -2.7686457e+03 - -1.5092749e+03 -1.6528152e+03 -2.7616654e+03 - -1.5122303e+03 -1.6642462e+03 -2.7549137e+03 - -1.5159192e+03 -1.6733721e+03 -2.7484117e+03 - -1.5203512e+03 -1.6803126e+03 -2.7421835e+03 - -1.5255259e+03 -1.6851873e+03 -2.7362553e+03 - -1.5314318e+03 -1.6881169e+03 -2.7306552e+03 - -1.5380459e+03 -1.6892248e+03 -2.7254124e+03 - -1.5453336e+03 -1.6886376e+03 -2.7205564e+03 - -1.5532484e+03 -1.6864858e+03 -2.7161167e+03 - -1.5617317e+03 -1.6829037e+03 -2.7121217e+03 - -1.5707128e+03 -1.6780296e+03 -2.7085982e+03 - -1.5801097e+03 -1.6720052e+03 -2.7055711e+03 - -1.5898290e+03 -1.6649746e+03 -2.7030624e+03 - -1.5997667e+03 -1.6570838e+03 -2.7010907e+03 - -1.6098092e+03 -1.6484796e+03 -2.6996713e+03 - -1.6198344e+03 -1.6393078e+03 -2.6988152e+03 - -1.6297125e+03 -1.6297125e+03 -2.6985291e+03 - -1.6393078e+03 -1.6198344e+03 -2.6988152e+03 - -1.6484796e+03 -1.6098092e+03 -2.6996713e+03 - -1.6570838e+03 -1.5997667e+03 -2.7010907e+03 - -1.6649746e+03 -1.5898290e+03 -2.7030624e+03 - -1.6720052e+03 -1.5801097e+03 -2.7055711e+03 - -1.6780296e+03 -1.5707128e+03 -2.7085982e+03 - -1.6829037e+03 -1.5617317e+03 -2.7121217e+03 - -1.6864858e+03 -1.5532484e+03 -2.7161167e+03 - -1.6886376e+03 -1.5453336e+03 -2.7205564e+03 - -1.6892248e+03 -1.5380459e+03 -2.7254124e+03 - -1.6881169e+03 -1.5314318e+03 -2.7306552e+03 - -1.6851873e+03 -1.5255259e+03 -2.7362553e+03 - -1.6803126e+03 -1.5203512e+03 -2.7421835e+03 - -1.6733721e+03 -1.5159192e+03 -2.7484117e+03 - -1.6642462e+03 -1.5122303e+03 -2.7549137e+03 - -1.6528152e+03 -1.5092749e+03 -2.7616654e+03 - -1.6389567e+03 -1.5070333e+03 -2.7686457e+03 - -1.6225433e+03 -1.5054769e+03 -2.7758373e+03 - -1.6034390e+03 -1.5045683e+03 -2.7832264e+03 - -1.5814959e+03 -1.5042624e+03 -2.7908042e+03 - -1.5565488e+03 -1.5045068e+03 -2.7985663e+03 - -1.5284095e+03 -1.5052424e+03 -2.8065136e+03 - -1.4968605e+03 -1.5064043e+03 -2.8146519e+03 - -1.4616466e+03 -1.5079221e+03 -2.8229920e+03 - -1.4224655e+03 -1.5097205e+03 -2.8315487e+03 - -1.3789571e+03 -1.5117208e+03 -2.8403401e+03 - -1.3306923e+03 -1.5138411e+03 -2.8493848e+03 - -1.2771607e+03 -1.5159983e+03 -2.8586991e+03 - -1.2177604e+03 -1.5181093e+03 -2.8682917e+03 - -1.1517922e+03 -1.5200945e+03 -2.8781563e+03 - -1.0784629e+03 -1.5218803e+03 -2.8882614e+03 - -9.9690692e+02 -1.5234047e+03 -2.8985369e+03 - -9.0623521e+02 -1.5246223e+03 -2.9088578e+03 - -8.0562741e+02 -1.5255114e+03 -2.9190272e+03 - -6.9447690e+02 -1.5260792e+03 -2.9287620e+03 - -5.7259114e+02 -1.5263660e+03 -2.9376891e+03 - -4.4042498e+02 -1.5264423e+03 -2.9453617e+03 - -2.9928956e+02 -1.5263985e+03 -2.9513025e+03 - -1.5144668e+02 -1.5263259e+03 -2.9550754e+03 - 0.0000000e+00 -1.5262932e+03 -2.9563705e+03 - 1.5144668e+02 -1.5263259e+03 -2.9550754e+03 - 2.9928956e+02 -1.5263985e+03 -2.9513025e+03 - 4.4042498e+02 -1.5264423e+03 -2.9453617e+03 - 5.7259114e+02 -1.5263660e+03 -2.9376891e+03 - 6.9447690e+02 -1.5260792e+03 -2.9287620e+03 - 8.0562741e+02 -1.5255114e+03 -2.9190272e+03 - 9.0623521e+02 -1.5246223e+03 -2.9088578e+03 - 9.9690692e+02 -1.5234047e+03 -2.8985369e+03 - 1.0784629e+03 -1.5218803e+03 -2.8882614e+03 - 1.1517922e+03 -1.5200945e+03 -2.8781563e+03 - 1.2177604e+03 -1.5181093e+03 -2.8682917e+03 - 1.2771607e+03 -1.5159983e+03 -2.8586991e+03 - 1.3306923e+03 -1.5138411e+03 -2.8493848e+03 - 1.3789571e+03 -1.5117208e+03 -2.8403401e+03 - 1.4224655e+03 -1.5097205e+03 -2.8315487e+03 - 1.4616466e+03 -1.5079221e+03 -2.8229920e+03 - 1.4968605e+03 -1.5064043e+03 -2.8146519e+03 - 1.5284095e+03 -1.5052424e+03 -2.8065136e+03 - 1.5565488e+03 -1.5045068e+03 -2.7985663e+03 - 1.5814959e+03 -1.5042624e+03 -2.7908042e+03 - 1.6034390e+03 -1.5045683e+03 -2.7832264e+03 - 1.6225433e+03 -1.5054769e+03 -2.7758373e+03 - 1.6389567e+03 -1.5070333e+03 -2.7686457e+03 - 1.6528152e+03 -1.5092749e+03 -2.7616654e+03 - 1.6642462e+03 -1.5122303e+03 -2.7549137e+03 - 1.6733721e+03 -1.5159192e+03 -2.7484117e+03 - 1.6803126e+03 -1.5203512e+03 -2.7421835e+03 - 1.6851873e+03 -1.5255259e+03 -2.7362553e+03 - 1.6881169e+03 -1.5314318e+03 -2.7306552e+03 - 1.6892248e+03 -1.5380459e+03 -2.7254124e+03 - 1.6886376e+03 -1.5453336e+03 -2.7205564e+03 - 1.6864858e+03 -1.5532484e+03 -2.7161167e+03 - 1.6829037e+03 -1.5617317e+03 -2.7121217e+03 - 1.6780296e+03 -1.5707128e+03 -2.7085982e+03 - 1.6720052e+03 -1.5801097e+03 -2.7055711e+03 - 1.6649746e+03 -1.5898290e+03 -2.7030624e+03 - 1.6570838e+03 -1.5997667e+03 -2.7010907e+03 - 1.6484796e+03 -1.6098092e+03 -2.6996713e+03 - 1.6393078e+03 -1.6198344e+03 -2.6988152e+03 - 1.6297125e+03 -1.6297125e+03 -2.6985291e+03 - 1.6198344e+03 -1.6393078e+03 -2.6988152e+03 - 1.6098092e+03 -1.6484796e+03 -2.6996713e+03 - 1.5997667e+03 -1.6570838e+03 -2.7010907e+03 - 1.5898290e+03 -1.6649746e+03 -2.7030624e+03 - 1.5801097e+03 -1.6720052e+03 -2.7055711e+03 - 1.5707128e+03 -1.6780296e+03 -2.7085982e+03 - 1.5617317e+03 -1.6829037e+03 -2.7121217e+03 - 1.5532484e+03 -1.6864858e+03 -2.7161167e+03 - 1.5453336e+03 -1.6886376e+03 -2.7205564e+03 - 1.5380459e+03 -1.6892248e+03 -2.7254124e+03 - 1.5314318e+03 -1.6881169e+03 -2.7306552e+03 - 1.5255259e+03 -1.6851873e+03 -2.7362553e+03 - 1.5203512e+03 -1.6803126e+03 -2.7421835e+03 - 1.5159192e+03 -1.6733721e+03 -2.7484117e+03 - 1.5122303e+03 -1.6642462e+03 -2.7549137e+03 - 1.5092749e+03 -1.6528152e+03 -2.7616654e+03 - 1.5070333e+03 -1.6389567e+03 -2.7686457e+03 - 1.5054769e+03 -1.6225433e+03 -2.7758373e+03 - 1.5045683e+03 -1.6034390e+03 -2.7832264e+03 - 1.5042624e+03 -1.5814959e+03 -2.7908042e+03 - 1.5045068e+03 -1.5565488e+03 -2.7985663e+03 - 1.5052424e+03 -1.5284095e+03 -2.8065136e+03 - 1.5064043e+03 -1.4968605e+03 -2.8146519e+03 - 1.5079221e+03 -1.4616466e+03 -2.8229920e+03 - 1.5097205e+03 -1.4224655e+03 -2.8315487e+03 - 1.5117208e+03 -1.3789571e+03 -2.8403401e+03 - 1.5138411e+03 -1.3306923e+03 -2.8493848e+03 - 1.5159983e+03 -1.2771607e+03 -2.8586991e+03 - 1.5181093e+03 -1.2177604e+03 -2.8682917e+03 - 1.5200945e+03 -1.1517922e+03 -2.8781563e+03 - 1.5218803e+03 -1.0784629e+03 -2.8882614e+03 - 1.5234047e+03 -9.9690692e+02 -2.8985369e+03 - 1.5246223e+03 -9.0623521e+02 -2.9088578e+03 - 1.5255114e+03 -8.0562741e+02 -2.9190272e+03 - 1.5260792e+03 -6.9447690e+02 -2.9287620e+03 - 1.5263660e+03 -5.7259114e+02 -2.9376891e+03 - 1.5264423e+03 -4.4042498e+02 -2.9453617e+03 - 1.5263985e+03 -2.9928956e+02 -2.9513025e+03 - 1.5263259e+03 -1.5144668e+02 -2.9550754e+03 - 1.5262932e+03 0.0000000e+00 -2.9563705e+03 - 1.4841194e+03 2.4067136e-09 -2.9916819e+03 - 1.4840754e+03 1.4479268e+02 -2.9905535e+03 - 1.4839315e+03 2.8643433e+02 -2.9872547e+03 - 1.4836556e+03 4.2216979e+02 -2.9820246e+03 - 1.4832058e+03 5.4992108e+02 -2.9752053e+03 - 1.4825425e+03 6.6839574e+02 -2.9671808e+03 - 1.4816387e+03 7.7703543e+02 -2.9583219e+03 - 1.4804862e+03 8.7586480e+02 -2.9489496e+03 - 1.4790966e+03 9.6530750e+02 -2.9393193e+03 - 1.4775003e+03 1.0460174e+03 -2.9296189e+03 - 1.4757428e+03 1.1187480e+03 -2.9199769e+03 - 1.4738811e+03 1.1842638e+03 -2.9104749e+03 - 1.4719796e+03 1.2432870e+03 -2.9011590e+03 - 1.4701077e+03 1.2964709e+03 -2.8920513e+03 - 1.4683365e+03 1.3443899e+03 -2.8831581e+03 - 1.4667377e+03 1.3875403e+03 -2.8744769e+03 - 1.4653817e+03 1.4263463e+03 -2.8660007e+03 - 1.4643364e+03 1.4611690e+03 -2.8577215e+03 - 1.4636665e+03 1.4923153e+03 -2.8496327e+03 - 1.4634328e+03 1.5200472e+03 -2.8417299e+03 - 1.4636914e+03 1.5445901e+03 -2.8340124e+03 - 1.4644928e+03 1.5661401e+03 -2.8264832e+03 - 1.4658818e+03 1.5848702e+03 -2.8191491e+03 - 1.4678964e+03 1.6009357e+03 -2.8120210e+03 - 1.4705678e+03 1.6144788e+03 -2.8051130e+03 - 1.4739188e+03 1.6256325e+03 -2.7984428e+03 - 1.4779642e+03 1.6345236e+03 -2.7920308e+03 - 1.4827096e+03 1.6412752e+03 -2.7859000e+03 - 1.4881511e+03 1.6460092e+03 -2.7800751e+03 - 1.4942747e+03 1.6488473e+03 -2.7745824e+03 - 1.5010559e+03 1.6499127e+03 -2.7694488e+03 - 1.5084595e+03 1.6493310e+03 -2.7647016e+03 - 1.5164391e+03 1.6472303e+03 -2.7603678e+03 - 1.5249374e+03 1.6437417e+03 -2.7564733e+03 - 1.5338862e+03 1.6389991e+03 -2.7530426e+03 - 1.5432065e+03 1.6331389e+03 -2.7500983e+03 - 1.5528090e+03 1.6262995e+03 -2.7476603e+03 - 1.5625948e+03 1.6186204e+03 -2.7457457e+03 - 1.5724560e+03 1.6102410e+03 -2.7443681e+03 - 1.5822768e+03 1.6013002e+03 -2.7435374e+03 - 1.5919344e+03 1.5919344e+03 -2.7432599e+03 - 1.6013002e+03 1.5822768e+03 -2.7435374e+03 - 1.6102410e+03 1.5724560e+03 -2.7443681e+03 - 1.6186204e+03 1.5625948e+03 -2.7457457e+03 - 1.6262995e+03 1.5528090e+03 -2.7476603e+03 - 1.6331389e+03 1.5432065e+03 -2.7500983e+03 - 1.6389991e+03 1.5338862e+03 -2.7530426e+03 - 1.6437417e+03 1.5249374e+03 -2.7564733e+03 - 1.6472303e+03 1.5164391e+03 -2.7603678e+03 - 1.6493310e+03 1.5084595e+03 -2.7647016e+03 - 1.6499127e+03 1.5010559e+03 -2.7694488e+03 - 1.6488473e+03 1.4942747e+03 -2.7745824e+03 - 1.6460092e+03 1.4881511e+03 -2.7800751e+03 - 1.6412752e+03 1.4827096e+03 -2.7859000e+03 - 1.6345236e+03 1.4779642e+03 -2.7920308e+03 - 1.6256325e+03 1.4739188e+03 -2.7984428e+03 - 1.6144788e+03 1.4705678e+03 -2.8051130e+03 - 1.6009357e+03 1.4678964e+03 -2.8120210e+03 - 1.5848702e+03 1.4658818e+03 -2.8191491e+03 - 1.5661401e+03 1.4644928e+03 -2.8264832e+03 - 1.5445901e+03 1.4636914e+03 -2.8340124e+03 - 1.5200472e+03 1.4634328e+03 -2.8417299e+03 - 1.4923153e+03 1.4636665e+03 -2.8496327e+03 - 1.4611690e+03 1.4643364e+03 -2.8577215e+03 - 1.4263463e+03 1.4653817e+03 -2.8660007e+03 - 1.3875403e+03 1.4667377e+03 -2.8744769e+03 - 1.3443899e+03 1.4683365e+03 -2.8831581e+03 - 1.2964709e+03 1.4701077e+03 -2.8920513e+03 - 1.2432870e+03 1.4719796e+03 -2.9011590e+03 - 1.1842638e+03 1.4738811e+03 -2.9104749e+03 - 1.1187480e+03 1.4757428e+03 -2.9199769e+03 - 1.0460174e+03 1.4775003e+03 -2.9296189e+03 - 9.6530750e+02 1.4790966e+03 -2.9393193e+03 - 8.7586480e+02 1.4804862e+03 -2.9489496e+03 - 7.7703543e+02 1.4816387e+03 -2.9583219e+03 - 6.6839574e+02 1.4825425e+03 -2.9671808e+03 - 5.4992108e+02 1.4832058e+03 -2.9752053e+03 - 4.2216979e+02 1.4836556e+03 -2.9820246e+03 - 2.8643433e+02 1.4839315e+03 -2.9872547e+03 - 1.4479268e+02 1.4840754e+03 -2.9905535e+03 - 0.0000000e+00 1.4841194e+03 -2.9916819e+03 - -1.4479268e+02 1.4840754e+03 -2.9905535e+03 - -2.8643433e+02 1.4839315e+03 -2.9872547e+03 - -4.2216979e+02 1.4836556e+03 -2.9820246e+03 - -5.4992108e+02 1.4832058e+03 -2.9752053e+03 - -6.6839574e+02 1.4825425e+03 -2.9671808e+03 - -7.7703543e+02 1.4816387e+03 -2.9583219e+03 - -8.7586480e+02 1.4804862e+03 -2.9489496e+03 - -9.6530750e+02 1.4790966e+03 -2.9393193e+03 - -1.0460174e+03 1.4775003e+03 -2.9296189e+03 - -1.1187480e+03 1.4757428e+03 -2.9199769e+03 - -1.1842638e+03 1.4738811e+03 -2.9104749e+03 - -1.2432870e+03 1.4719796e+03 -2.9011590e+03 - -1.2964709e+03 1.4701077e+03 -2.8920513e+03 - -1.3443899e+03 1.4683365e+03 -2.8831581e+03 - -1.3875403e+03 1.4667377e+03 -2.8744769e+03 - -1.4263463e+03 1.4653817e+03 -2.8660007e+03 - -1.4611690e+03 1.4643364e+03 -2.8577215e+03 - -1.4923153e+03 1.4636665e+03 -2.8496327e+03 - -1.5200472e+03 1.4634328e+03 -2.8417299e+03 - -1.5445901e+03 1.4636914e+03 -2.8340124e+03 - -1.5661401e+03 1.4644928e+03 -2.8264832e+03 - -1.5848702e+03 1.4658818e+03 -2.8191491e+03 - -1.6009357e+03 1.4678964e+03 -2.8120210e+03 - -1.6144788e+03 1.4705678e+03 -2.8051130e+03 - -1.6256325e+03 1.4739188e+03 -2.7984428e+03 - -1.6345236e+03 1.4779642e+03 -2.7920308e+03 - -1.6412752e+03 1.4827096e+03 -2.7859000e+03 - -1.6460092e+03 1.4881511e+03 -2.7800751e+03 - -1.6488473e+03 1.4942747e+03 -2.7745824e+03 - -1.6499127e+03 1.5010559e+03 -2.7694488e+03 - -1.6493310e+03 1.5084595e+03 -2.7647016e+03 - -1.6472303e+03 1.5164391e+03 -2.7603678e+03 - -1.6437417e+03 1.5249374e+03 -2.7564733e+03 - -1.6389991e+03 1.5338862e+03 -2.7530426e+03 - -1.6331389e+03 1.5432065e+03 -2.7500983e+03 - -1.6262995e+03 1.5528090e+03 -2.7476603e+03 - -1.6186204e+03 1.5625948e+03 -2.7457457e+03 - -1.6102410e+03 1.5724560e+03 -2.7443681e+03 - -1.6013002e+03 1.5822768e+03 -2.7435374e+03 - -1.5919344e+03 1.5919344e+03 -2.7432599e+03 - -1.5822768e+03 1.6013002e+03 -2.7435374e+03 - -1.5724560e+03 1.6102410e+03 -2.7443681e+03 - -1.5625948e+03 1.6186204e+03 -2.7457457e+03 - -1.5528090e+03 1.6262995e+03 -2.7476603e+03 - -1.5432065e+03 1.6331389e+03 -2.7500983e+03 - -1.5338862e+03 1.6389991e+03 -2.7530426e+03 - -1.5249374e+03 1.6437417e+03 -2.7564733e+03 - -1.5164391e+03 1.6472303e+03 -2.7603678e+03 - -1.5084595e+03 1.6493310e+03 -2.7647016e+03 - -1.5010559e+03 1.6499127e+03 -2.7694488e+03 - -1.4942747e+03 1.6488473e+03 -2.7745824e+03 - -1.4881511e+03 1.6460092e+03 -2.7800751e+03 - -1.4827096e+03 1.6412752e+03 -2.7859000e+03 - -1.4779642e+03 1.6345236e+03 -2.7920308e+03 - -1.4739188e+03 1.6256325e+03 -2.7984428e+03 - -1.4705678e+03 1.6144788e+03 -2.8051130e+03 - -1.4678964e+03 1.6009357e+03 -2.8120210e+03 - -1.4658818e+03 1.5848702e+03 -2.8191491e+03 - -1.4644928e+03 1.5661401e+03 -2.8264832e+03 - -1.4636914e+03 1.5445901e+03 -2.8340124e+03 - -1.4634328e+03 1.5200472e+03 -2.8417299e+03 - -1.4636665e+03 1.4923153e+03 -2.8496327e+03 - -1.4643364e+03 1.4611690e+03 -2.8577215e+03 - -1.4653817e+03 1.4263463e+03 -2.8660007e+03 - -1.4667377e+03 1.3875403e+03 -2.8744769e+03 - -1.4683365e+03 1.3443899e+03 -2.8831581e+03 - -1.4701077e+03 1.2964709e+03 -2.8920513e+03 - -1.4719796e+03 1.2432870e+03 -2.9011590e+03 - -1.4738811e+03 1.1842638e+03 -2.9104749e+03 - -1.4757428e+03 1.1187480e+03 -2.9199769e+03 - -1.4775003e+03 1.0460174e+03 -2.9296189e+03 - -1.4790966e+03 9.6530750e+02 -2.9393193e+03 - -1.4804862e+03 8.7586480e+02 -2.9489496e+03 - -1.4816387e+03 7.7703543e+02 -2.9583219e+03 - -1.4825425e+03 6.6839574e+02 -2.9671808e+03 - -1.4832058e+03 5.4992108e+02 -2.9752053e+03 - -1.4836556e+03 4.2216979e+02 -2.9820246e+03 - -1.4839315e+03 2.8643433e+02 -2.9872547e+03 - -1.4840754e+03 1.4479268e+02 -2.9905535e+03 - -1.4841194e+03 0.0000000e+00 -2.9916819e+03 - -1.4840754e+03 -1.4479268e+02 -2.9905535e+03 - -1.4839315e+03 -2.8643433e+02 -2.9872547e+03 - -1.4836556e+03 -4.2216979e+02 -2.9820246e+03 - -1.4832058e+03 -5.4992108e+02 -2.9752053e+03 - -1.4825425e+03 -6.6839574e+02 -2.9671808e+03 - -1.4816387e+03 -7.7703543e+02 -2.9583219e+03 - -1.4804862e+03 -8.7586480e+02 -2.9489496e+03 - -1.4790966e+03 -9.6530750e+02 -2.9393193e+03 - -1.4775003e+03 -1.0460174e+03 -2.9296189e+03 - -1.4757428e+03 -1.1187480e+03 -2.9199769e+03 - -1.4738811e+03 -1.1842638e+03 -2.9104749e+03 - -1.4719796e+03 -1.2432870e+03 -2.9011590e+03 - -1.4701077e+03 -1.2964709e+03 -2.8920513e+03 - -1.4683365e+03 -1.3443899e+03 -2.8831581e+03 - -1.4667377e+03 -1.3875403e+03 -2.8744769e+03 - -1.4653817e+03 -1.4263463e+03 -2.8660007e+03 - -1.4643364e+03 -1.4611690e+03 -2.8577215e+03 - -1.4636665e+03 -1.4923153e+03 -2.8496327e+03 - -1.4634328e+03 -1.5200472e+03 -2.8417299e+03 - -1.4636914e+03 -1.5445901e+03 -2.8340124e+03 - -1.4644928e+03 -1.5661401e+03 -2.8264832e+03 - -1.4658818e+03 -1.5848702e+03 -2.8191491e+03 - -1.4678964e+03 -1.6009357e+03 -2.8120210e+03 - -1.4705678e+03 -1.6144788e+03 -2.8051130e+03 - -1.4739188e+03 -1.6256325e+03 -2.7984428e+03 - -1.4779642e+03 -1.6345236e+03 -2.7920308e+03 - -1.4827096e+03 -1.6412752e+03 -2.7859000e+03 - -1.4881511e+03 -1.6460092e+03 -2.7800751e+03 - -1.4942747e+03 -1.6488473e+03 -2.7745824e+03 - -1.5010559e+03 -1.6499127e+03 -2.7694488e+03 - -1.5084595e+03 -1.6493310e+03 -2.7647016e+03 - -1.5164391e+03 -1.6472303e+03 -2.7603678e+03 - -1.5249374e+03 -1.6437417e+03 -2.7564733e+03 - -1.5338862e+03 -1.6389991e+03 -2.7530426e+03 - -1.5432065e+03 -1.6331389e+03 -2.7500983e+03 - -1.5528090e+03 -1.6262995e+03 -2.7476603e+03 - -1.5625948e+03 -1.6186204e+03 -2.7457457e+03 - -1.5724560e+03 -1.6102410e+03 -2.7443681e+03 - -1.5822768e+03 -1.6013002e+03 -2.7435374e+03 - -1.5919344e+03 -1.5919344e+03 -2.7432599e+03 - -1.6013002e+03 -1.5822768e+03 -2.7435374e+03 - -1.6102410e+03 -1.5724560e+03 -2.7443681e+03 - -1.6186204e+03 -1.5625948e+03 -2.7457457e+03 - -1.6262995e+03 -1.5528090e+03 -2.7476603e+03 - -1.6331389e+03 -1.5432065e+03 -2.7500983e+03 - -1.6389991e+03 -1.5338862e+03 -2.7530426e+03 - -1.6437417e+03 -1.5249374e+03 -2.7564733e+03 - -1.6472303e+03 -1.5164391e+03 -2.7603678e+03 - -1.6493310e+03 -1.5084595e+03 -2.7647016e+03 - -1.6499127e+03 -1.5010559e+03 -2.7694488e+03 - -1.6488473e+03 -1.4942747e+03 -2.7745824e+03 - -1.6460092e+03 -1.4881511e+03 -2.7800751e+03 - -1.6412752e+03 -1.4827096e+03 -2.7859000e+03 - -1.6345236e+03 -1.4779642e+03 -2.7920308e+03 - -1.6256325e+03 -1.4739188e+03 -2.7984428e+03 - -1.6144788e+03 -1.4705678e+03 -2.8051130e+03 - -1.6009357e+03 -1.4678964e+03 -2.8120210e+03 - -1.5848702e+03 -1.4658818e+03 -2.8191491e+03 - -1.5661401e+03 -1.4644928e+03 -2.8264832e+03 - -1.5445901e+03 -1.4636914e+03 -2.8340124e+03 - -1.5200472e+03 -1.4634328e+03 -2.8417299e+03 - -1.4923153e+03 -1.4636665e+03 -2.8496327e+03 - -1.4611690e+03 -1.4643364e+03 -2.8577215e+03 - -1.4263463e+03 -1.4653817e+03 -2.8660007e+03 - -1.3875403e+03 -1.4667377e+03 -2.8744769e+03 - -1.3443899e+03 -1.4683365e+03 -2.8831581e+03 - -1.2964709e+03 -1.4701077e+03 -2.8920513e+03 - -1.2432870e+03 -1.4719796e+03 -2.9011590e+03 - -1.1842638e+03 -1.4738811e+03 -2.9104749e+03 - -1.1187480e+03 -1.4757428e+03 -2.9199769e+03 - -1.0460174e+03 -1.4775003e+03 -2.9296189e+03 - -9.6530750e+02 -1.4790966e+03 -2.9393193e+03 - -8.7586480e+02 -1.4804862e+03 -2.9489496e+03 - -7.7703543e+02 -1.4816387e+03 -2.9583219e+03 - -6.6839574e+02 -1.4825425e+03 -2.9671808e+03 - -5.4992108e+02 -1.4832058e+03 -2.9752053e+03 - -4.2216979e+02 -1.4836556e+03 -2.9820246e+03 - -2.8643433e+02 -1.4839315e+03 -2.9872547e+03 - -1.4479268e+02 -1.4840754e+03 -2.9905535e+03 - 0.0000000e+00 -1.4841194e+03 -2.9916819e+03 - 1.4479268e+02 -1.4840754e+03 -2.9905535e+03 - 2.8643433e+02 -1.4839315e+03 -2.9872547e+03 - 4.2216979e+02 -1.4836556e+03 -2.9820246e+03 - 5.4992108e+02 -1.4832058e+03 -2.9752053e+03 - 6.6839574e+02 -1.4825425e+03 -2.9671808e+03 - 7.7703543e+02 -1.4816387e+03 -2.9583219e+03 - 8.7586480e+02 -1.4804862e+03 -2.9489496e+03 - 9.6530750e+02 -1.4790966e+03 -2.9393193e+03 - 1.0460174e+03 -1.4775003e+03 -2.9296189e+03 - 1.1187480e+03 -1.4757428e+03 -2.9199769e+03 - 1.1842638e+03 -1.4738811e+03 -2.9104749e+03 - 1.2432870e+03 -1.4719796e+03 -2.9011590e+03 - 1.2964709e+03 -1.4701077e+03 -2.8920513e+03 - 1.3443899e+03 -1.4683365e+03 -2.8831581e+03 - 1.3875403e+03 -1.4667377e+03 -2.8744769e+03 - 1.4263463e+03 -1.4653817e+03 -2.8660007e+03 - 1.4611690e+03 -1.4643364e+03 -2.8577215e+03 - 1.4923153e+03 -1.4636665e+03 -2.8496327e+03 - 1.5200472e+03 -1.4634328e+03 -2.8417299e+03 - 1.5445901e+03 -1.4636914e+03 -2.8340124e+03 - 1.5661401e+03 -1.4644928e+03 -2.8264832e+03 - 1.5848702e+03 -1.4658818e+03 -2.8191491e+03 - 1.6009357e+03 -1.4678964e+03 -2.8120210e+03 - 1.6144788e+03 -1.4705678e+03 -2.8051130e+03 - 1.6256325e+03 -1.4739188e+03 -2.7984428e+03 - 1.6345236e+03 -1.4779642e+03 -2.7920308e+03 - 1.6412752e+03 -1.4827096e+03 -2.7859000e+03 - 1.6460092e+03 -1.4881511e+03 -2.7800751e+03 - 1.6488473e+03 -1.4942747e+03 -2.7745824e+03 - 1.6499127e+03 -1.5010559e+03 -2.7694488e+03 - 1.6493310e+03 -1.5084595e+03 -2.7647016e+03 - 1.6472303e+03 -1.5164391e+03 -2.7603678e+03 - 1.6437417e+03 -1.5249374e+03 -2.7564733e+03 - 1.6389991e+03 -1.5338862e+03 -2.7530426e+03 - 1.6331389e+03 -1.5432065e+03 -2.7500983e+03 - 1.6262995e+03 -1.5528090e+03 -2.7476603e+03 - 1.6186204e+03 -1.5625948e+03 -2.7457457e+03 - 1.6102410e+03 -1.5724560e+03 -2.7443681e+03 - 1.6013002e+03 -1.5822768e+03 -2.7435374e+03 - 1.5919344e+03 -1.5919344e+03 -2.7432599e+03 - 1.5822768e+03 -1.6013002e+03 -2.7435374e+03 - 1.5724560e+03 -1.6102410e+03 -2.7443681e+03 - 1.5625948e+03 -1.6186204e+03 -2.7457457e+03 - 1.5528090e+03 -1.6262995e+03 -2.7476603e+03 - 1.5432065e+03 -1.6331389e+03 -2.7500983e+03 - 1.5338862e+03 -1.6389991e+03 -2.7530426e+03 - 1.5249374e+03 -1.6437417e+03 -2.7564733e+03 - 1.5164391e+03 -1.6472303e+03 -2.7603678e+03 - 1.5084595e+03 -1.6493310e+03 -2.7647016e+03 - 1.5010559e+03 -1.6499127e+03 -2.7694488e+03 - 1.4942747e+03 -1.6488473e+03 -2.7745824e+03 - 1.4881511e+03 -1.6460092e+03 -2.7800751e+03 - 1.4827096e+03 -1.6412752e+03 -2.7859000e+03 - 1.4779642e+03 -1.6345236e+03 -2.7920308e+03 - 1.4739188e+03 -1.6256325e+03 -2.7984428e+03 - 1.4705678e+03 -1.6144788e+03 -2.8051130e+03 - 1.4678964e+03 -1.6009357e+03 -2.8120210e+03 - 1.4658818e+03 -1.5848702e+03 -2.8191491e+03 - 1.4644928e+03 -1.5661401e+03 -2.8264832e+03 - 1.4636914e+03 -1.5445901e+03 -2.8340124e+03 - 1.4634328e+03 -1.5200472e+03 -2.8417299e+03 - 1.4636665e+03 -1.4923153e+03 -2.8496327e+03 - 1.4643364e+03 -1.4611690e+03 -2.8577215e+03 - 1.4653817e+03 -1.4263463e+03 -2.8660007e+03 - 1.4667377e+03 -1.3875403e+03 -2.8744769e+03 - 1.4683365e+03 -1.3443899e+03 -2.8831581e+03 - 1.4701077e+03 -1.2964709e+03 -2.8920513e+03 - 1.4719796e+03 -1.2432870e+03 -2.9011590e+03 - 1.4738811e+03 -1.1842638e+03 -2.9104749e+03 - 1.4757428e+03 -1.1187480e+03 -2.9199769e+03 - 1.4775003e+03 -1.0460174e+03 -2.9296189e+03 - 1.4790966e+03 -9.6530750e+02 -2.9393193e+03 - 1.4804862e+03 -8.7586480e+02 -2.9489496e+03 - 1.4816387e+03 -7.7703543e+02 -2.9583219e+03 - 1.4825425e+03 -6.6839574e+02 -2.9671808e+03 - 1.4832058e+03 -5.4992108e+02 -2.9752053e+03 - 1.4836556e+03 -4.2216979e+02 -2.9820246e+03 - 1.4839315e+03 -2.8643433e+02 -2.9872547e+03 - 1.4840754e+03 -1.4479268e+02 -2.9905535e+03 - 1.4841194e+03 -2.4067136e-09 -2.9916819e+03 - 1.4418387e+03 -2.4067136e-09 -3.0256931e+03 - 1.4417394e+03 1.3860768e+02 -3.0247006e+03 - 1.4414383e+03 2.7443149e+02 -3.0217900e+03 - 1.4409282e+03 4.0500666e+02 -3.0171489e+03 - 1.4402018e+03 5.2842175e+02 -3.0110496e+03 - 1.4392561e+03 6.4342164e+02 -3.0038037e+03 - 1.4380974e+03 7.4938380e+02 -2.9957202e+03 - 1.4367428e+03 8.4620873e+02 -2.9870756e+03 - 1.4352213e+03 9.3417458e+02 -2.9780980e+03 - 1.4335722e+03 1.0137957e+03 -2.9689631e+03 - 1.4318435e+03 1.0857066e+03 -2.9597984e+03 - 1.4300898e+03 1.1505784e+03 -2.9506912e+03 - 1.4283698e+03 1.2090651e+03 -2.9416977e+03 - 1.4267450e+03 1.2617727e+03 -2.9328511e+03 - 1.4252777e+03 1.3092455e+03 -2.9241694e+03 - 1.4240297e+03 1.3519620e+03 -2.9156610e+03 - 1.4230617e+03 1.3903377e+03 -2.9073286e+03 - 1.4224323e+03 1.4247310e+03 -2.8991727e+03 - 1.4221968e+03 1.4554504e+03 -2.8911936e+03 - 1.4224072e+03 1.4827619e+03 -2.8833928e+03 - 1.4231112e+03 1.5068963e+03 -2.8757740e+03 - 1.4243517e+03 1.5280557e+03 -2.8683436e+03 - 1.4261662e+03 1.5464190e+03 -2.8611110e+03 - 1.4285862e+03 1.5621476e+03 -2.8540884e+03 - 1.4316366e+03 1.5753888e+03 -2.8472909e+03 - 1.4353353e+03 1.5862800e+03 -2.8407363e+03 - 1.4396920e+03 1.5949517e+03 -2.8344447e+03 - 1.4447087e+03 1.6015298e+03 -2.8284379e+03 - 1.4503781e+03 1.6061377e+03 -2.8227395e+03 - 1.4566840e+03 1.6088978e+03 -2.8173740e+03 - 1.4636003e+03 1.6099332e+03 -2.8123665e+03 - 1.4710911e+03 1.6093678e+03 -2.8077422e+03 - 1.4791105e+03 1.6073273e+03 -2.8035260e+03 - 1.4876024e+03 1.6039397e+03 -2.7997416e+03 - 1.4965005e+03 1.5993346e+03 -2.7964114e+03 - 1.5057290e+03 1.5936435e+03 -2.7935559e+03 - 1.5152024e+03 1.5869991e+03 -2.7911933e+03 - 1.5248266e+03 1.5795345e+03 -2.7893390e+03 - 1.5344990e+03 1.5713828e+03 -2.7880055e+03 - 1.5441097e+03 1.5626756e+03 -2.7872017e+03 - 1.5535425e+03 1.5535425e+03 -2.7869331e+03 - 1.5626756e+03 1.5441097e+03 -2.7872017e+03 - 1.5713828e+03 1.5344990e+03 -2.7880055e+03 - 1.5795345e+03 1.5248266e+03 -2.7893390e+03 - 1.5869991e+03 1.5152024e+03 -2.7911933e+03 - 1.5936435e+03 1.5057290e+03 -2.7935559e+03 - 1.5993346e+03 1.4965005e+03 -2.7964114e+03 - 1.6039397e+03 1.4876024e+03 -2.7997416e+03 - 1.6073273e+03 1.4791105e+03 -2.8035260e+03 - 1.6093678e+03 1.4710911e+03 -2.8077422e+03 - 1.6099332e+03 1.4636003e+03 -2.8123665e+03 - 1.6088978e+03 1.4566840e+03 -2.8173740e+03 - 1.6061377e+03 1.4503781e+03 -2.8227395e+03 - 1.6015298e+03 1.4447087e+03 -2.8284379e+03 - 1.5949517e+03 1.4396920e+03 -2.8344447e+03 - 1.5862800e+03 1.4353353e+03 -2.8407363e+03 - 1.5753888e+03 1.4316366e+03 -2.8472909e+03 - 1.5621476e+03 1.4285862e+03 -2.8540884e+03 - 1.5464190e+03 1.4261662e+03 -2.8611110e+03 - 1.5280557e+03 1.4243517e+03 -2.8683436e+03 - 1.5068963e+03 1.4231112e+03 -2.8757740e+03 - 1.4827619e+03 1.4224072e+03 -2.8833928e+03 - 1.4554504e+03 1.4221968e+03 -2.8911936e+03 - 1.4247310e+03 1.4224323e+03 -2.8991727e+03 - 1.3903377e+03 1.4230617e+03 -2.9073286e+03 - 1.3519620e+03 1.4240297e+03 -2.9156610e+03 - 1.3092455e+03 1.4252777e+03 -2.9241694e+03 - 1.2617727e+03 1.4267450e+03 -2.9328511e+03 - 1.2090651e+03 1.4283698e+03 -2.9416977e+03 - 1.1505784e+03 1.4300898e+03 -2.9506912e+03 - 1.0857066e+03 1.4318435e+03 -2.9597984e+03 - 1.0137957e+03 1.4335722e+03 -2.9689631e+03 - 9.3417458e+02 1.4352213e+03 -2.9780980e+03 - 8.4620873e+02 1.4367428e+03 -2.9870756e+03 - 7.4938380e+02 1.4380974e+03 -2.9957202e+03 - 6.4342164e+02 1.4392561e+03 -3.0038037e+03 - 5.2842175e+02 1.4402018e+03 -3.0110496e+03 - 4.0500666e+02 1.4409282e+03 -3.0171489e+03 - 2.7443149e+02 1.4414383e+03 -3.0217900e+03 - 1.3860768e+02 1.4417394e+03 -3.0247006e+03 - 2.4067136e-09 1.4418387e+03 -3.0256931e+03 - -1.3860768e+02 1.4417394e+03 -3.0247006e+03 - -2.7443149e+02 1.4414383e+03 -3.0217900e+03 - -4.0500666e+02 1.4409282e+03 -3.0171489e+03 - -5.2842175e+02 1.4402018e+03 -3.0110496e+03 - -6.4342164e+02 1.4392561e+03 -3.0038037e+03 - -7.4938380e+02 1.4380974e+03 -2.9957202e+03 - -8.4620873e+02 1.4367428e+03 -2.9870756e+03 - -9.3417458e+02 1.4352213e+03 -2.9780980e+03 - -1.0137957e+03 1.4335722e+03 -2.9689631e+03 - -1.0857066e+03 1.4318435e+03 -2.9597984e+03 - -1.1505784e+03 1.4300898e+03 -2.9506912e+03 - -1.2090651e+03 1.4283698e+03 -2.9416977e+03 - -1.2617727e+03 1.4267450e+03 -2.9328511e+03 - -1.3092455e+03 1.4252777e+03 -2.9241694e+03 - -1.3519620e+03 1.4240297e+03 -2.9156610e+03 - -1.3903377e+03 1.4230617e+03 -2.9073286e+03 - -1.4247310e+03 1.4224323e+03 -2.8991727e+03 - -1.4554504e+03 1.4221968e+03 -2.8911936e+03 - -1.4827619e+03 1.4224072e+03 -2.8833928e+03 - -1.5068963e+03 1.4231112e+03 -2.8757740e+03 - -1.5280557e+03 1.4243517e+03 -2.8683436e+03 - -1.5464190e+03 1.4261662e+03 -2.8611110e+03 - -1.5621476e+03 1.4285862e+03 -2.8540884e+03 - -1.5753888e+03 1.4316366e+03 -2.8472909e+03 - -1.5862800e+03 1.4353353e+03 -2.8407363e+03 - -1.5949517e+03 1.4396920e+03 -2.8344447e+03 - -1.6015298e+03 1.4447087e+03 -2.8284379e+03 - -1.6061377e+03 1.4503781e+03 -2.8227395e+03 - -1.6088978e+03 1.4566840e+03 -2.8173740e+03 - -1.6099332e+03 1.4636003e+03 -2.8123665e+03 - -1.6093678e+03 1.4710911e+03 -2.8077422e+03 - -1.6073273e+03 1.4791105e+03 -2.8035260e+03 - -1.6039397e+03 1.4876024e+03 -2.7997416e+03 - -1.5993346e+03 1.4965005e+03 -2.7964114e+03 - -1.5936435e+03 1.5057290e+03 -2.7935559e+03 - -1.5869991e+03 1.5152024e+03 -2.7911933e+03 - -1.5795345e+03 1.5248266e+03 -2.7893390e+03 - -1.5713828e+03 1.5344990e+03 -2.7880055e+03 - -1.5626756e+03 1.5441097e+03 -2.7872017e+03 - -1.5535425e+03 1.5535425e+03 -2.7869331e+03 - -1.5441097e+03 1.5626756e+03 -2.7872017e+03 - -1.5344990e+03 1.5713828e+03 -2.7880055e+03 - -1.5248266e+03 1.5795345e+03 -2.7893390e+03 - -1.5152024e+03 1.5869991e+03 -2.7911933e+03 - -1.5057290e+03 1.5936435e+03 -2.7935559e+03 - -1.4965005e+03 1.5993346e+03 -2.7964114e+03 - -1.4876024e+03 1.6039397e+03 -2.7997416e+03 - -1.4791105e+03 1.6073273e+03 -2.8035260e+03 - -1.4710911e+03 1.6093678e+03 -2.8077422e+03 - -1.4636003e+03 1.6099332e+03 -2.8123665e+03 - -1.4566840e+03 1.6088978e+03 -2.8173740e+03 - -1.4503781e+03 1.6061377e+03 -2.8227395e+03 - -1.4447087e+03 1.6015298e+03 -2.8284379e+03 - -1.4396920e+03 1.5949517e+03 -2.8344447e+03 - -1.4353353e+03 1.5862800e+03 -2.8407363e+03 - -1.4316366e+03 1.5753888e+03 -2.8472909e+03 - -1.4285862e+03 1.5621476e+03 -2.8540884e+03 - -1.4261662e+03 1.5464190e+03 -2.8611110e+03 - -1.4243517e+03 1.5280557e+03 -2.8683436e+03 - -1.4231112e+03 1.5068963e+03 -2.8757740e+03 - -1.4224072e+03 1.4827619e+03 -2.8833928e+03 - -1.4221968e+03 1.4554504e+03 -2.8911936e+03 - -1.4224323e+03 1.4247310e+03 -2.8991727e+03 - -1.4230617e+03 1.3903377e+03 -2.9073286e+03 - -1.4240297e+03 1.3519620e+03 -2.9156610e+03 - -1.4252777e+03 1.3092455e+03 -2.9241694e+03 - -1.4267450e+03 1.2617727e+03 -2.9328511e+03 - -1.4283698e+03 1.2090651e+03 -2.9416977e+03 - -1.4300898e+03 1.1505784e+03 -2.9506912e+03 - -1.4318435e+03 1.0857066e+03 -2.9597984e+03 - -1.4335722e+03 1.0137957e+03 -2.9689631e+03 - -1.4352213e+03 9.3417458e+02 -2.9780980e+03 - -1.4367428e+03 8.4620873e+02 -2.9870756e+03 - -1.4380974e+03 7.4938380e+02 -2.9957202e+03 - -1.4392561e+03 6.4342164e+02 -3.0038037e+03 - -1.4402018e+03 5.2842175e+02 -3.0110496e+03 - -1.4409282e+03 4.0500666e+02 -3.0171489e+03 - -1.4414383e+03 2.7443149e+02 -3.0217900e+03 - -1.4417394e+03 1.3860768e+02 -3.0247006e+03 - -1.4418387e+03 -2.4067136e-09 -3.0256931e+03 - -1.4417394e+03 -1.3860768e+02 -3.0247006e+03 - -1.4414383e+03 -2.7443149e+02 -3.0217900e+03 - -1.4409282e+03 -4.0500666e+02 -3.0171489e+03 - -1.4402018e+03 -5.2842175e+02 -3.0110496e+03 - -1.4392561e+03 -6.4342164e+02 -3.0038037e+03 - -1.4380974e+03 -7.4938380e+02 -2.9957202e+03 - -1.4367428e+03 -8.4620873e+02 -2.9870756e+03 - -1.4352213e+03 -9.3417458e+02 -2.9780980e+03 - -1.4335722e+03 -1.0137957e+03 -2.9689631e+03 - -1.4318435e+03 -1.0857066e+03 -2.9597984e+03 - -1.4300898e+03 -1.1505784e+03 -2.9506912e+03 - -1.4283698e+03 -1.2090651e+03 -2.9416977e+03 - -1.4267450e+03 -1.2617727e+03 -2.9328511e+03 - -1.4252777e+03 -1.3092455e+03 -2.9241694e+03 - -1.4240297e+03 -1.3519620e+03 -2.9156610e+03 - -1.4230617e+03 -1.3903377e+03 -2.9073286e+03 - -1.4224323e+03 -1.4247310e+03 -2.8991727e+03 - -1.4221968e+03 -1.4554504e+03 -2.8911936e+03 - -1.4224072e+03 -1.4827619e+03 -2.8833928e+03 - -1.4231112e+03 -1.5068963e+03 -2.8757740e+03 - -1.4243517e+03 -1.5280557e+03 -2.8683436e+03 - -1.4261662e+03 -1.5464190e+03 -2.8611110e+03 - -1.4285862e+03 -1.5621476e+03 -2.8540884e+03 - -1.4316366e+03 -1.5753888e+03 -2.8472909e+03 - -1.4353353e+03 -1.5862800e+03 -2.8407363e+03 - -1.4396920e+03 -1.5949517e+03 -2.8344447e+03 - -1.4447087e+03 -1.6015298e+03 -2.8284379e+03 - -1.4503781e+03 -1.6061377e+03 -2.8227395e+03 - -1.4566840e+03 -1.6088978e+03 -2.8173740e+03 - -1.4636003e+03 -1.6099332e+03 -2.8123665e+03 - -1.4710911e+03 -1.6093678e+03 -2.8077422e+03 - -1.4791105e+03 -1.6073273e+03 -2.8035260e+03 - -1.4876024e+03 -1.6039397e+03 -2.7997416e+03 - -1.4965005e+03 -1.5993346e+03 -2.7964114e+03 - -1.5057290e+03 -1.5936435e+03 -2.7935559e+03 - -1.5152024e+03 -1.5869991e+03 -2.7911933e+03 - -1.5248266e+03 -1.5795345e+03 -2.7893390e+03 - -1.5344990e+03 -1.5713828e+03 -2.7880055e+03 - -1.5441097e+03 -1.5626756e+03 -2.7872017e+03 - -1.5535425e+03 -1.5535425e+03 -2.7869331e+03 - -1.5626756e+03 -1.5441097e+03 -2.7872017e+03 - -1.5713828e+03 -1.5344990e+03 -2.7880055e+03 - -1.5795345e+03 -1.5248266e+03 -2.7893390e+03 - -1.5869991e+03 -1.5152024e+03 -2.7911933e+03 - -1.5936435e+03 -1.5057290e+03 -2.7935559e+03 - -1.5993346e+03 -1.4965005e+03 -2.7964114e+03 - -1.6039397e+03 -1.4876024e+03 -2.7997416e+03 - -1.6073273e+03 -1.4791105e+03 -2.8035260e+03 - -1.6093678e+03 -1.4710911e+03 -2.8077422e+03 - -1.6099332e+03 -1.4636003e+03 -2.8123665e+03 - -1.6088978e+03 -1.4566840e+03 -2.8173740e+03 - -1.6061377e+03 -1.4503781e+03 -2.8227395e+03 - -1.6015298e+03 -1.4447087e+03 -2.8284379e+03 - -1.5949517e+03 -1.4396920e+03 -2.8344447e+03 - -1.5862800e+03 -1.4353353e+03 -2.8407363e+03 - -1.5753888e+03 -1.4316366e+03 -2.8472909e+03 - -1.5621476e+03 -1.4285862e+03 -2.8540884e+03 - -1.5464190e+03 -1.4261662e+03 -2.8611110e+03 - -1.5280557e+03 -1.4243517e+03 -2.8683436e+03 - -1.5068963e+03 -1.4231112e+03 -2.8757740e+03 - -1.4827619e+03 -1.4224072e+03 -2.8833928e+03 - -1.4554504e+03 -1.4221968e+03 -2.8911936e+03 - -1.4247310e+03 -1.4224323e+03 -2.8991727e+03 - -1.3903377e+03 -1.4230617e+03 -2.9073286e+03 - -1.3519620e+03 -1.4240297e+03 -2.9156610e+03 - -1.3092455e+03 -1.4252777e+03 -2.9241694e+03 - -1.2617727e+03 -1.4267450e+03 -2.9328511e+03 - -1.2090651e+03 -1.4283698e+03 -2.9416977e+03 - -1.1505784e+03 -1.4300898e+03 -2.9506912e+03 - -1.0857066e+03 -1.4318435e+03 -2.9597984e+03 - -1.0137957e+03 -1.4335722e+03 -2.9689631e+03 - -9.3417458e+02 -1.4352213e+03 -2.9780980e+03 - -8.4620873e+02 -1.4367428e+03 -2.9870756e+03 - -7.4938380e+02 -1.4380974e+03 -2.9957202e+03 - -6.4342164e+02 -1.4392561e+03 -3.0038037e+03 - -5.2842175e+02 -1.4402018e+03 -3.0110496e+03 - -4.0500666e+02 -1.4409282e+03 -3.0171489e+03 - -2.7443149e+02 -1.4414383e+03 -3.0217900e+03 - -1.3860768e+02 -1.4417394e+03 -3.0247006e+03 - 2.4067136e-09 -1.4418387e+03 -3.0256931e+03 - 1.3860768e+02 -1.4417394e+03 -3.0247006e+03 - 2.7443149e+02 -1.4414383e+03 -3.0217900e+03 - 4.0500666e+02 -1.4409282e+03 -3.0171489e+03 - 5.2842175e+02 -1.4402018e+03 -3.0110496e+03 - 6.4342164e+02 -1.4392561e+03 -3.0038037e+03 - 7.4938380e+02 -1.4380974e+03 -2.9957202e+03 - 8.4620873e+02 -1.4367428e+03 -2.9870756e+03 - 9.3417458e+02 -1.4352213e+03 -2.9780980e+03 - 1.0137957e+03 -1.4335722e+03 -2.9689631e+03 - 1.0857066e+03 -1.4318435e+03 -2.9597984e+03 - 1.1505784e+03 -1.4300898e+03 -2.9506912e+03 - 1.2090651e+03 -1.4283698e+03 -2.9416977e+03 - 1.2617727e+03 -1.4267450e+03 -2.9328511e+03 - 1.3092455e+03 -1.4252777e+03 -2.9241694e+03 - 1.3519620e+03 -1.4240297e+03 -2.9156610e+03 - 1.3903377e+03 -1.4230617e+03 -2.9073286e+03 - 1.4247310e+03 -1.4224323e+03 -2.8991727e+03 - 1.4554504e+03 -1.4221968e+03 -2.8911936e+03 - 1.4827619e+03 -1.4224072e+03 -2.8833928e+03 - 1.5068963e+03 -1.4231112e+03 -2.8757740e+03 - 1.5280557e+03 -1.4243517e+03 -2.8683436e+03 - 1.5464190e+03 -1.4261662e+03 -2.8611110e+03 - 1.5621476e+03 -1.4285862e+03 -2.8540884e+03 - 1.5753888e+03 -1.4316366e+03 -2.8472909e+03 - 1.5862800e+03 -1.4353353e+03 -2.8407363e+03 - 1.5949517e+03 -1.4396920e+03 -2.8344447e+03 - 1.6015298e+03 -1.4447087e+03 -2.8284379e+03 - 1.6061377e+03 -1.4503781e+03 -2.8227395e+03 - 1.6088978e+03 -1.4566840e+03 -2.8173740e+03 - 1.6099332e+03 -1.4636003e+03 -2.8123665e+03 - 1.6093678e+03 -1.4710911e+03 -2.8077422e+03 - 1.6073273e+03 -1.4791105e+03 -2.8035260e+03 - 1.6039397e+03 -1.4876024e+03 -2.7997416e+03 - 1.5993346e+03 -1.4965005e+03 -2.7964114e+03 - 1.5936435e+03 -1.5057290e+03 -2.7935559e+03 - 1.5869991e+03 -1.5152024e+03 -2.7911933e+03 - 1.5795345e+03 -1.5248266e+03 -2.7893390e+03 - 1.5713828e+03 -1.5344990e+03 -2.7880055e+03 - 1.5626756e+03 -1.5441097e+03 -2.7872017e+03 - 1.5535425e+03 -1.5535425e+03 -2.7869331e+03 - 1.5441097e+03 -1.5626756e+03 -2.7872017e+03 - 1.5344990e+03 -1.5713828e+03 -2.7880055e+03 - 1.5248266e+03 -1.5795345e+03 -2.7893390e+03 - 1.5152024e+03 -1.5869991e+03 -2.7911933e+03 - 1.5057290e+03 -1.5936435e+03 -2.7935559e+03 - 1.4965005e+03 -1.5993346e+03 -2.7964114e+03 - 1.4876024e+03 -1.6039397e+03 -2.7997416e+03 - 1.4791105e+03 -1.6073273e+03 -2.8035260e+03 - 1.4710911e+03 -1.6093678e+03 -2.8077422e+03 - 1.4636003e+03 -1.6099332e+03 -2.8123665e+03 - 1.4566840e+03 -1.6088978e+03 -2.8173740e+03 - 1.4503781e+03 -1.6061377e+03 -2.8227395e+03 - 1.4447087e+03 -1.6015298e+03 -2.8284379e+03 - 1.4396920e+03 -1.5949517e+03 -2.8344447e+03 - 1.4353353e+03 -1.5862800e+03 -2.8407363e+03 - 1.4316366e+03 -1.5753888e+03 -2.8472909e+03 - 1.4285862e+03 -1.5621476e+03 -2.8540884e+03 - 1.4261662e+03 -1.5464190e+03 -2.8611110e+03 - 1.4243517e+03 -1.5280557e+03 -2.8683436e+03 - 1.4231112e+03 -1.5068963e+03 -2.8757740e+03 - 1.4224072e+03 -1.4827619e+03 -2.8833928e+03 - 1.4221968e+03 -1.4554504e+03 -2.8911936e+03 - 1.4224323e+03 -1.4247310e+03 -2.8991727e+03 - 1.4230617e+03 -1.3903377e+03 -2.9073286e+03 - 1.4240297e+03 -1.3519620e+03 -2.9156610e+03 - 1.4252777e+03 -1.3092455e+03 -2.9241694e+03 - 1.4267450e+03 -1.2617727e+03 -2.9328511e+03 - 1.4283698e+03 -1.2090651e+03 -2.9416977e+03 - 1.4300898e+03 -1.1505784e+03 -2.9506912e+03 - 1.4318435e+03 -1.0857066e+03 -2.9597984e+03 - 1.4335722e+03 -1.0137957e+03 -2.9689631e+03 - 1.4352213e+03 -9.3417458e+02 -2.9780980e+03 - 1.4367428e+03 -8.4620873e+02 -2.9870756e+03 - 1.4380974e+03 -7.4938380e+02 -2.9957202e+03 - 1.4392561e+03 -6.4342164e+02 -3.0038037e+03 - 1.4402018e+03 -5.2842175e+02 -3.0110496e+03 - 1.4409282e+03 -4.0500666e+02 -3.0171489e+03 - 1.4414383e+03 -2.7443149e+02 -3.0217900e+03 - 1.4417394e+03 -1.3860768e+02 -3.0247006e+03 - 1.4418387e+03 -2.4067136e-09 -3.0256931e+03 - 1.3994679e+03 0.0000000e+00 -3.0584277e+03 - 1.3993287e+03 1.3280155e+02 -3.0575477e+03 - 1.3989143e+03 2.6312228e+02 -3.0549608e+03 - 1.3982344e+03 3.8874257e+02 -3.0508160e+03 - 1.3973057e+03 5.0790113e+02 -3.0453323e+03 - 1.3961520e+03 6.1939054e+02 -3.0387651e+03 - 1.3948041e+03 7.2255140e+02 -3.0313732e+03 - 1.3932998e+03 8.1719287e+02 -3.0233946e+03 - 1.3916824e+03 9.0347766e+02 -3.0150320e+03 - 1.3899999e+03 9.8180351e+02 -3.0064478e+03 - 1.3883042e+03 1.0527012e+03 -2.9977651e+03 - 1.3866490e+03 1.1167573e+03 -2.9890734e+03 - 1.3850897e+03 1.1745608e+03 -2.9804347e+03 - 1.3836820e+03 1.2266712e+03 -2.9718904e+03 - 1.3824811e+03 1.2736007e+03 -2.9634671e+03 - 1.3815412e+03 1.3158077e+03 -2.9551816e+03 - 1.3809146e+03 1.3536961e+03 -2.9470446e+03 - 1.3806516e+03 1.3876189e+03 -2.9390635e+03 - 1.3807993e+03 1.4178834e+03 -2.9312446e+03 - 1.3814019e+03 1.4447570e+03 -2.9235943e+03 - 1.3824995e+03 1.4684740e+03 -2.9161203e+03 - 1.3841277e+03 1.4892405e+03 -2.9088319e+03 - 1.3863174e+03 1.5072401e+03 -2.9017406e+03 - 1.3890939e+03 1.5226384e+03 -2.8948602e+03 - 1.3924765e+03 1.5355870e+03 -2.8882066e+03 - 1.3964780e+03 1.5462267e+03 -2.8817975e+03 - 1.4011038e+03 1.5546909e+03 -2.8756527e+03 - 1.4063522e+03 1.5611075e+03 -2.8697934e+03 - 1.4122129e+03 1.5656011e+03 -2.8642419e+03 - 1.4186674e+03 1.5682943e+03 -2.8590212e+03 - 1.4256883e+03 1.5693096e+03 -2.8541549e+03 - 1.4332393e+03 1.5687692e+03 -2.8496662e+03 - 1.4412745e+03 1.5667966e+03 -2.8455780e+03 - 1.4497392e+03 1.5635162e+03 -2.8419123e+03 - 1.4585690e+03 1.5590536e+03 -2.8386894e+03 - 1.4676910e+03 1.5535355e+03 -2.8359282e+03 - 1.4770235e+03 1.5470891e+03 -2.8336451e+03 - 1.4864765e+03 1.5398416e+03 -2.8318543e+03 - 1.4959527e+03 1.5319199e+03 -2.8305669e+03 - 1.5053479e+03 1.5234489e+03 -2.8297911e+03 - 1.5145517e+03 1.5145517e+03 -2.8295319e+03 - 1.5234489e+03 1.5053479e+03 -2.8297911e+03 - 1.5319199e+03 1.4959527e+03 -2.8305669e+03 - 1.5398416e+03 1.4864765e+03 -2.8318543e+03 - 1.5470891e+03 1.4770235e+03 -2.8336451e+03 - 1.5535355e+03 1.4676910e+03 -2.8359282e+03 - 1.5590536e+03 1.4585690e+03 -2.8386894e+03 - 1.5635162e+03 1.4497392e+03 -2.8419123e+03 - 1.5667966e+03 1.4412745e+03 -2.8455780e+03 - 1.5687692e+03 1.4332393e+03 -2.8496662e+03 - 1.5693096e+03 1.4256883e+03 -2.8541549e+03 - 1.5682943e+03 1.4186674e+03 -2.8590212e+03 - 1.5656011e+03 1.4122129e+03 -2.8642419e+03 - 1.5611075e+03 1.4063522e+03 -2.8697934e+03 - 1.5546909e+03 1.4011038e+03 -2.8756527e+03 - 1.5462267e+03 1.3964780e+03 -2.8817975e+03 - 1.5355870e+03 1.3924765e+03 -2.8882066e+03 - 1.5226384e+03 1.3890939e+03 -2.8948602e+03 - 1.5072401e+03 1.3863174e+03 -2.9017406e+03 - 1.4892405e+03 1.3841277e+03 -2.9088319e+03 - 1.4684740e+03 1.3824995e+03 -2.9161203e+03 - 1.4447570e+03 1.3814019e+03 -2.9235943e+03 - 1.4178834e+03 1.3807993e+03 -2.9312446e+03 - 1.3876189e+03 1.3806516e+03 -2.9390635e+03 - 1.3536961e+03 1.3809146e+03 -2.9470446e+03 - 1.3158077e+03 1.3815412e+03 -2.9551816e+03 - 1.2736007e+03 1.3824811e+03 -2.9634671e+03 - 1.2266712e+03 1.3836820e+03 -2.9718904e+03 - 1.1745608e+03 1.3850897e+03 -2.9804347e+03 - 1.1167573e+03 1.3866490e+03 -2.9890734e+03 - 1.0527012e+03 1.3883042e+03 -2.9977651e+03 - 9.8180351e+02 1.3899999e+03 -3.0064478e+03 - 9.0347766e+02 1.3916824e+03 -3.0150320e+03 - 8.1719287e+02 1.3932998e+03 -3.0233946e+03 - 7.2255140e+02 1.3948041e+03 -3.0313732e+03 - 6.1939054e+02 1.3961520e+03 -3.0387651e+03 - 5.0790113e+02 1.3973057e+03 -3.0453323e+03 - 3.8874257e+02 1.3982344e+03 -3.0508160e+03 - 2.6312228e+02 1.3989143e+03 -3.0549608e+03 - 1.3280155e+02 1.3993287e+03 -3.0575477e+03 - 0.0000000e+00 1.3994679e+03 -3.0584277e+03 - -1.3280155e+02 1.3993287e+03 -3.0575477e+03 - -2.6312228e+02 1.3989143e+03 -3.0549608e+03 - -3.8874257e+02 1.3982344e+03 -3.0508160e+03 - -5.0790113e+02 1.3973057e+03 -3.0453323e+03 - -6.1939054e+02 1.3961520e+03 -3.0387651e+03 - -7.2255140e+02 1.3948041e+03 -3.0313732e+03 - -8.1719287e+02 1.3932998e+03 -3.0233946e+03 - -9.0347766e+02 1.3916824e+03 -3.0150320e+03 - -9.8180351e+02 1.3899999e+03 -3.0064478e+03 - -1.0527012e+03 1.3883042e+03 -2.9977651e+03 - -1.1167573e+03 1.3866490e+03 -2.9890734e+03 - -1.1745608e+03 1.3850897e+03 -2.9804347e+03 - -1.2266712e+03 1.3836820e+03 -2.9718904e+03 - -1.2736007e+03 1.3824811e+03 -2.9634671e+03 - -1.3158077e+03 1.3815412e+03 -2.9551816e+03 - -1.3536961e+03 1.3809146e+03 -2.9470446e+03 - -1.3876189e+03 1.3806516e+03 -2.9390635e+03 - -1.4178834e+03 1.3807993e+03 -2.9312446e+03 - -1.4447570e+03 1.3814019e+03 -2.9235943e+03 - -1.4684740e+03 1.3824995e+03 -2.9161203e+03 - -1.4892405e+03 1.3841277e+03 -2.9088319e+03 - -1.5072401e+03 1.3863174e+03 -2.9017406e+03 - -1.5226384e+03 1.3890939e+03 -2.8948602e+03 - -1.5355870e+03 1.3924765e+03 -2.8882066e+03 - -1.5462267e+03 1.3964780e+03 -2.8817975e+03 - -1.5546909e+03 1.4011038e+03 -2.8756527e+03 - -1.5611075e+03 1.4063522e+03 -2.8697934e+03 - -1.5656011e+03 1.4122129e+03 -2.8642419e+03 - -1.5682943e+03 1.4186674e+03 -2.8590212e+03 - -1.5693096e+03 1.4256883e+03 -2.8541549e+03 - -1.5687692e+03 1.4332393e+03 -2.8496662e+03 - -1.5667966e+03 1.4412745e+03 -2.8455780e+03 - -1.5635162e+03 1.4497392e+03 -2.8419123e+03 - -1.5590536e+03 1.4585690e+03 -2.8386894e+03 - -1.5535355e+03 1.4676910e+03 -2.8359282e+03 - -1.5470891e+03 1.4770235e+03 -2.8336451e+03 - -1.5398416e+03 1.4864765e+03 -2.8318543e+03 - -1.5319199e+03 1.4959527e+03 -2.8305669e+03 - -1.5234489e+03 1.5053479e+03 -2.8297911e+03 - -1.5145517e+03 1.5145517e+03 -2.8295319e+03 - -1.5053479e+03 1.5234489e+03 -2.8297911e+03 - -1.4959527e+03 1.5319199e+03 -2.8305669e+03 - -1.4864765e+03 1.5398416e+03 -2.8318543e+03 - -1.4770235e+03 1.5470891e+03 -2.8336451e+03 - -1.4676910e+03 1.5535355e+03 -2.8359282e+03 - -1.4585690e+03 1.5590536e+03 -2.8386894e+03 - -1.4497392e+03 1.5635162e+03 -2.8419123e+03 - -1.4412745e+03 1.5667966e+03 -2.8455780e+03 - -1.4332393e+03 1.5687692e+03 -2.8496662e+03 - -1.4256883e+03 1.5693096e+03 -2.8541549e+03 - -1.4186674e+03 1.5682943e+03 -2.8590212e+03 - -1.4122129e+03 1.5656011e+03 -2.8642419e+03 - -1.4063522e+03 1.5611075e+03 -2.8697934e+03 - -1.4011038e+03 1.5546909e+03 -2.8756527e+03 - -1.3964780e+03 1.5462267e+03 -2.8817975e+03 - -1.3924765e+03 1.5355870e+03 -2.8882066e+03 - -1.3890939e+03 1.5226384e+03 -2.8948602e+03 - -1.3863174e+03 1.5072401e+03 -2.9017406e+03 - -1.3841277e+03 1.4892405e+03 -2.9088319e+03 - -1.3824995e+03 1.4684740e+03 -2.9161203e+03 - -1.3814019e+03 1.4447570e+03 -2.9235943e+03 - -1.3807993e+03 1.4178834e+03 -2.9312446e+03 - -1.3806516e+03 1.3876189e+03 -2.9390635e+03 - -1.3809146e+03 1.3536961e+03 -2.9470446e+03 - -1.3815412e+03 1.3158077e+03 -2.9551816e+03 - -1.3824811e+03 1.2736007e+03 -2.9634671e+03 - -1.3836820e+03 1.2266712e+03 -2.9718904e+03 - -1.3850897e+03 1.1745608e+03 -2.9804347e+03 - -1.3866490e+03 1.1167573e+03 -2.9890734e+03 - -1.3883042e+03 1.0527012e+03 -2.9977651e+03 - -1.3899999e+03 9.8180351e+02 -3.0064478e+03 - -1.3916824e+03 9.0347766e+02 -3.0150320e+03 - -1.3932998e+03 8.1719287e+02 -3.0233946e+03 - -1.3948041e+03 7.2255140e+02 -3.0313732e+03 - -1.3961520e+03 6.1939054e+02 -3.0387651e+03 - -1.3973057e+03 5.0790113e+02 -3.0453323e+03 - -1.3982344e+03 3.8874257e+02 -3.0508160e+03 - -1.3989143e+03 2.6312228e+02 -3.0549608e+03 - -1.3993287e+03 1.3280155e+02 -3.0575477e+03 - -1.3994679e+03 2.4067136e-09 -3.0584277e+03 - -1.3993287e+03 -1.3280155e+02 -3.0575477e+03 - -1.3989143e+03 -2.6312228e+02 -3.0549608e+03 - -1.3982344e+03 -3.8874257e+02 -3.0508160e+03 - -1.3973057e+03 -5.0790113e+02 -3.0453323e+03 - -1.3961520e+03 -6.1939054e+02 -3.0387651e+03 - -1.3948041e+03 -7.2255140e+02 -3.0313732e+03 - -1.3932998e+03 -8.1719287e+02 -3.0233946e+03 - -1.3916824e+03 -9.0347766e+02 -3.0150320e+03 - -1.3899999e+03 -9.8180351e+02 -3.0064478e+03 - -1.3883042e+03 -1.0527012e+03 -2.9977651e+03 - -1.3866490e+03 -1.1167573e+03 -2.9890734e+03 - -1.3850897e+03 -1.1745608e+03 -2.9804347e+03 - -1.3836820e+03 -1.2266712e+03 -2.9718904e+03 - -1.3824811e+03 -1.2736007e+03 -2.9634671e+03 - -1.3815412e+03 -1.3158077e+03 -2.9551816e+03 - -1.3809146e+03 -1.3536961e+03 -2.9470446e+03 - -1.3806516e+03 -1.3876189e+03 -2.9390635e+03 - -1.3807993e+03 -1.4178834e+03 -2.9312446e+03 - -1.3814019e+03 -1.4447570e+03 -2.9235943e+03 - -1.3824995e+03 -1.4684740e+03 -2.9161203e+03 - -1.3841277e+03 -1.4892405e+03 -2.9088319e+03 - -1.3863174e+03 -1.5072401e+03 -2.9017406e+03 - -1.3890939e+03 -1.5226384e+03 -2.8948602e+03 - -1.3924765e+03 -1.5355870e+03 -2.8882066e+03 - -1.3964780e+03 -1.5462267e+03 -2.8817975e+03 - -1.4011038e+03 -1.5546909e+03 -2.8756527e+03 - -1.4063522e+03 -1.5611075e+03 -2.8697934e+03 - -1.4122129e+03 -1.5656011e+03 -2.8642419e+03 - -1.4186674e+03 -1.5682943e+03 -2.8590212e+03 - -1.4256883e+03 -1.5693096e+03 -2.8541549e+03 - -1.4332393e+03 -1.5687692e+03 -2.8496662e+03 - -1.4412745e+03 -1.5667966e+03 -2.8455780e+03 - -1.4497392e+03 -1.5635162e+03 -2.8419123e+03 - -1.4585690e+03 -1.5590536e+03 -2.8386894e+03 - -1.4676910e+03 -1.5535355e+03 -2.8359282e+03 - -1.4770235e+03 -1.5470891e+03 -2.8336451e+03 - -1.4864765e+03 -1.5398416e+03 -2.8318543e+03 - -1.4959527e+03 -1.5319199e+03 -2.8305669e+03 - -1.5053479e+03 -1.5234489e+03 -2.8297911e+03 - -1.5145517e+03 -1.5145517e+03 -2.8295319e+03 - -1.5234489e+03 -1.5053479e+03 -2.8297911e+03 - -1.5319199e+03 -1.4959527e+03 -2.8305669e+03 - -1.5398416e+03 -1.4864765e+03 -2.8318543e+03 - -1.5470891e+03 -1.4770235e+03 -2.8336451e+03 - -1.5535355e+03 -1.4676910e+03 -2.8359282e+03 - -1.5590536e+03 -1.4585690e+03 -2.8386894e+03 - -1.5635162e+03 -1.4497392e+03 -2.8419123e+03 - -1.5667966e+03 -1.4412745e+03 -2.8455780e+03 - -1.5687692e+03 -1.4332393e+03 -2.8496662e+03 - -1.5693096e+03 -1.4256883e+03 -2.8541549e+03 - -1.5682943e+03 -1.4186674e+03 -2.8590212e+03 - -1.5656011e+03 -1.4122129e+03 -2.8642419e+03 - -1.5611075e+03 -1.4063522e+03 -2.8697934e+03 - -1.5546909e+03 -1.4011038e+03 -2.8756527e+03 - -1.5462267e+03 -1.3964780e+03 -2.8817975e+03 - -1.5355870e+03 -1.3924765e+03 -2.8882066e+03 - -1.5226384e+03 -1.3890939e+03 -2.8948602e+03 - -1.5072401e+03 -1.3863174e+03 -2.9017406e+03 - -1.4892405e+03 -1.3841277e+03 -2.9088319e+03 - -1.4684740e+03 -1.3824995e+03 -2.9161203e+03 - -1.4447570e+03 -1.3814019e+03 -2.9235943e+03 - -1.4178834e+03 -1.3807993e+03 -2.9312446e+03 - -1.3876189e+03 -1.3806516e+03 -2.9390635e+03 - -1.3536961e+03 -1.3809146e+03 -2.9470446e+03 - -1.3158077e+03 -1.3815412e+03 -2.9551816e+03 - -1.2736007e+03 -1.3824811e+03 -2.9634671e+03 - -1.2266712e+03 -1.3836820e+03 -2.9718904e+03 - -1.1745608e+03 -1.3850897e+03 -2.9804347e+03 - -1.1167573e+03 -1.3866490e+03 -2.9890734e+03 - -1.0527012e+03 -1.3883042e+03 -2.9977651e+03 - -9.8180351e+02 -1.3899999e+03 -3.0064478e+03 - -9.0347766e+02 -1.3916824e+03 -3.0150320e+03 - -8.1719287e+02 -1.3932998e+03 -3.0233946e+03 - -7.2255140e+02 -1.3948041e+03 -3.0313732e+03 - -6.1939054e+02 -1.3961520e+03 -3.0387651e+03 - -5.0790113e+02 -1.3973057e+03 -3.0453323e+03 - -3.8874257e+02 -1.3982344e+03 -3.0508160e+03 - -2.6312228e+02 -1.3989143e+03 -3.0549608e+03 - -1.3280155e+02 -1.3993287e+03 -3.0575477e+03 - 0.0000000e+00 -1.3994679e+03 -3.0584277e+03 - 1.3280155e+02 -1.3993287e+03 -3.0575477e+03 - 2.6312228e+02 -1.3989143e+03 -3.0549608e+03 - 3.8874257e+02 -1.3982344e+03 -3.0508160e+03 - 5.0790113e+02 -1.3973057e+03 -3.0453323e+03 - 6.1939054e+02 -1.3961520e+03 -3.0387651e+03 - 7.2255140e+02 -1.3948041e+03 -3.0313732e+03 - 8.1719287e+02 -1.3932998e+03 -3.0233946e+03 - 9.0347766e+02 -1.3916824e+03 -3.0150320e+03 - 9.8180351e+02 -1.3899999e+03 -3.0064478e+03 - 1.0527012e+03 -1.3883042e+03 -2.9977651e+03 - 1.1167573e+03 -1.3866490e+03 -2.9890734e+03 - 1.1745608e+03 -1.3850897e+03 -2.9804347e+03 - 1.2266712e+03 -1.3836820e+03 -2.9718904e+03 - 1.2736007e+03 -1.3824811e+03 -2.9634671e+03 - 1.3158077e+03 -1.3815412e+03 -2.9551816e+03 - 1.3536961e+03 -1.3809146e+03 -2.9470446e+03 - 1.3876189e+03 -1.3806516e+03 -2.9390635e+03 - 1.4178834e+03 -1.3807993e+03 -2.9312446e+03 - 1.4447570e+03 -1.3814019e+03 -2.9235943e+03 - 1.4684740e+03 -1.3824995e+03 -2.9161203e+03 - 1.4892405e+03 -1.3841277e+03 -2.9088319e+03 - 1.5072401e+03 -1.3863174e+03 -2.9017406e+03 - 1.5226384e+03 -1.3890939e+03 -2.8948602e+03 - 1.5355870e+03 -1.3924765e+03 -2.8882066e+03 - 1.5462267e+03 -1.3964780e+03 -2.8817975e+03 - 1.5546909e+03 -1.4011038e+03 -2.8756527e+03 - 1.5611075e+03 -1.4063522e+03 -2.8697934e+03 - 1.5656011e+03 -1.4122129e+03 -2.8642419e+03 - 1.5682943e+03 -1.4186674e+03 -2.8590212e+03 - 1.5693096e+03 -1.4256883e+03 -2.8541549e+03 - 1.5687692e+03 -1.4332393e+03 -2.8496662e+03 - 1.5667966e+03 -1.4412745e+03 -2.8455780e+03 - 1.5635162e+03 -1.4497392e+03 -2.8419123e+03 - 1.5590536e+03 -1.4585690e+03 -2.8386894e+03 - 1.5535355e+03 -1.4676910e+03 -2.8359282e+03 - 1.5470891e+03 -1.4770235e+03 -2.8336451e+03 - 1.5398416e+03 -1.4864765e+03 -2.8318543e+03 - 1.5319199e+03 -1.4959527e+03 -2.8305669e+03 - 1.5234489e+03 -1.5053479e+03 -2.8297911e+03 - 1.5145517e+03 -1.5145517e+03 -2.8295319e+03 - 1.5053479e+03 -1.5234489e+03 -2.8297911e+03 - 1.4959527e+03 -1.5319199e+03 -2.8305669e+03 - 1.4864765e+03 -1.5398416e+03 -2.8318543e+03 - 1.4770235e+03 -1.5470891e+03 -2.8336451e+03 - 1.4676910e+03 -1.5535355e+03 -2.8359282e+03 - 1.4585690e+03 -1.5590536e+03 -2.8386894e+03 - 1.4497392e+03 -1.5635162e+03 -2.8419123e+03 - 1.4412745e+03 -1.5667966e+03 -2.8455780e+03 - 1.4332393e+03 -1.5687692e+03 -2.8496662e+03 - 1.4256883e+03 -1.5693096e+03 -2.8541549e+03 - 1.4186674e+03 -1.5682943e+03 -2.8590212e+03 - 1.4122129e+03 -1.5656011e+03 -2.8642419e+03 - 1.4063522e+03 -1.5611075e+03 -2.8697934e+03 - 1.4011038e+03 -1.5546909e+03 -2.8756527e+03 - 1.3964780e+03 -1.5462267e+03 -2.8817975e+03 - 1.3924765e+03 -1.5355870e+03 -2.8882066e+03 - 1.3890939e+03 -1.5226384e+03 -2.8948602e+03 - 1.3863174e+03 -1.5072401e+03 -2.9017406e+03 - 1.3841277e+03 -1.4892405e+03 -2.9088319e+03 - 1.3824995e+03 -1.4684740e+03 -2.9161203e+03 - 1.3814019e+03 -1.4447570e+03 -2.9235943e+03 - 1.3807993e+03 -1.4178834e+03 -2.9312446e+03 - 1.3806516e+03 -1.3876189e+03 -2.9390635e+03 - 1.3809146e+03 -1.3536961e+03 -2.9470446e+03 - 1.3815412e+03 -1.3158077e+03 -2.9551816e+03 - 1.3824811e+03 -1.2736007e+03 -2.9634671e+03 - 1.3836820e+03 -1.2266712e+03 -2.9718904e+03 - 1.3850897e+03 -1.1745608e+03 -2.9804347e+03 - 1.3866490e+03 -1.1167573e+03 -2.9890734e+03 - 1.3883042e+03 -1.0527012e+03 -2.9977651e+03 - 1.3899999e+03 -9.8180351e+02 -3.0064478e+03 - 1.3916824e+03 -9.0347766e+02 -3.0150320e+03 - 1.3932998e+03 -8.1719287e+02 -3.0233946e+03 - 1.3948041e+03 -7.2255140e+02 -3.0313732e+03 - 1.3961520e+03 -6.1939054e+02 -3.0387651e+03 - 1.3973057e+03 -5.0790113e+02 -3.0453323e+03 - 1.3982344e+03 -3.8874257e+02 -3.0508160e+03 - 1.3989143e+03 -2.6312228e+02 -3.0549608e+03 - 1.3993287e+03 -1.3280155e+02 -3.0575477e+03 - 1.3994679e+03 -2.4067136e-09 -3.0584277e+03 - 1.3570222e+03 0.0000000e+00 -3.0899090e+03 - 1.3568548e+03 1.2730579e+02 -3.0891239e+03 - 1.3563600e+03 2.5238473e+02 -3.0868111e+03 - 1.3555591e+03 3.7322674e+02 -3.0830904e+03 - 1.3544856e+03 4.8820574e+02 -3.0781399e+03 - 1.3531825e+03 5.9616737e+02 -3.0721703e+03 - 1.3516990e+03 6.9643442e+02 -3.0653995e+03 - 1.3500887e+03 7.8874957e+02 -3.0580326e+03 - 1.3484069e+03 8.7318407e+02 -3.0502493e+03 - 1.3467098e+03 9.5003857e+02 -3.0421980e+03 - 1.3450527e+03 1.0197539e+03 -3.0339958e+03 - 1.3434904e+03 1.0828403e+03 -3.0257316e+03 - 1.3420760e+03 1.1398264e+03 -3.0174705e+03 - 1.3408612e+03 1.1912262e+03 -3.0092591e+03 - 1.3398957e+03 1.2375195e+03 -3.0011305e+03 - 1.3392273e+03 1.2791430e+03 -2.9931079e+03 - 1.3389014e+03 1.3164868e+03 -2.9852082e+03 - 1.3389612e+03 1.3498961e+03 -2.9774444e+03 - 1.3394466e+03 1.3796748e+03 -2.9698278e+03 - 1.3403946e+03 1.4060899e+03 -2.9623688e+03 - 1.3418385e+03 1.4293770e+03 -2.9550786e+03 - 1.3438073e+03 1.4497447e+03 -2.9479690e+03 - 1.3463258e+03 1.4673797e+03 -2.9410535e+03 - 1.3494135e+03 1.4824507e+03 -2.9343470e+03 - 1.3530846e+03 1.4951124e+03 -2.9278660e+03 - 1.3573469e+03 1.5055083e+03 -2.9216285e+03 - 1.3622021e+03 1.5137737e+03 -2.9156538e+03 - 1.3676448e+03 1.5200380e+03 -2.9099625e+03 - 1.3736621e+03 1.5244264e+03 -2.9045759e+03 - 1.3802334e+03 1.5270615e+03 -2.8995156e+03 - 1.3873301e+03 1.5280646e+03 -2.8948036e+03 - 1.3949152e+03 1.5275564e+03 -2.8904617e+03 - 1.4029434e+03 1.5256576e+03 -2.8865109e+03 - 1.4113609e+03 1.5224894e+03 -2.8829715e+03 - 1.4201055e+03 1.5181733e+03 -2.8798621e+03 - 1.4291068e+03 1.5128313e+03 -2.8772000e+03 - 1.4382866e+03 1.5065854e+03 -2.8750001e+03 - 1.4475593e+03 1.4995573e+03 -2.8732754e+03 - 1.4568321e+03 1.4918676e+03 -2.8720360e+03 - 1.4660062e+03 1.4836353e+03 -2.8712893e+03 - 1.4749771e+03 1.4749771e+03 -2.8710399e+03 - 1.4836353e+03 1.4660062e+03 -2.8712893e+03 - 1.4918676e+03 1.4568321e+03 -2.8720360e+03 - 1.4995573e+03 1.4475593e+03 -2.8732754e+03 - 1.5065854e+03 1.4382866e+03 -2.8750001e+03 - 1.5128313e+03 1.4291068e+03 -2.8772000e+03 - 1.5181733e+03 1.4201055e+03 -2.8798621e+03 - 1.5224894e+03 1.4113609e+03 -2.8829715e+03 - 1.5256576e+03 1.4029434e+03 -2.8865109e+03 - 1.5275564e+03 1.3949152e+03 -2.8904617e+03 - 1.5280646e+03 1.3873301e+03 -2.8948036e+03 - 1.5270615e+03 1.3802334e+03 -2.8995156e+03 - 1.5244264e+03 1.3736621e+03 -2.9045759e+03 - 1.5200380e+03 1.3676448e+03 -2.9099625e+03 - 1.5137737e+03 1.3622021e+03 -2.9156538e+03 - 1.5055083e+03 1.3573469e+03 -2.9216285e+03 - 1.4951124e+03 1.3530846e+03 -2.9278660e+03 - 1.4824507e+03 1.3494135e+03 -2.9343470e+03 - 1.4673797e+03 1.3463258e+03 -2.9410535e+03 - 1.4497447e+03 1.3438073e+03 -2.9479690e+03 - 1.4293770e+03 1.3418385e+03 -2.9550786e+03 - 1.4060899e+03 1.3403946e+03 -2.9623688e+03 - 1.3796748e+03 1.3394466e+03 -2.9698278e+03 - 1.3498961e+03 1.3389612e+03 -2.9774444e+03 - 1.3164868e+03 1.3389014e+03 -2.9852082e+03 - 1.2791430e+03 1.3392273e+03 -2.9931079e+03 - 1.2375195e+03 1.3398957e+03 -3.0011305e+03 - 1.1912262e+03 1.3408612e+03 -3.0092591e+03 - 1.1398264e+03 1.3420760e+03 -3.0174705e+03 - 1.0828403e+03 1.3434904e+03 -3.0257316e+03 - 1.0197539e+03 1.3450527e+03 -3.0339958e+03 - 9.5003857e+02 1.3467098e+03 -3.0421980e+03 - 8.7318407e+02 1.3484069e+03 -3.0502493e+03 - 7.8874957e+02 1.3500887e+03 -3.0580326e+03 - 6.9643442e+02 1.3516990e+03 -3.0653995e+03 - 5.9616737e+02 1.3531825e+03 -3.0721703e+03 - 4.8820574e+02 1.3544856e+03 -3.0781399e+03 - 3.7322674e+02 1.3555591e+03 -3.0830904e+03 - 2.5238473e+02 1.3563600e+03 -3.0868111e+03 - 1.2730579e+02 1.3568548e+03 -3.0891239e+03 - 0.0000000e+00 1.3570222e+03 -3.0899090e+03 - -1.2730579e+02 1.3568548e+03 -3.0891239e+03 - -2.5238473e+02 1.3563600e+03 -3.0868111e+03 - -3.7322674e+02 1.3555591e+03 -3.0830904e+03 - -4.8820574e+02 1.3544856e+03 -3.0781399e+03 - -5.9616737e+02 1.3531825e+03 -3.0721703e+03 - -6.9643442e+02 1.3516990e+03 -3.0653995e+03 - -7.8874957e+02 1.3500887e+03 -3.0580326e+03 - -8.7318407e+02 1.3484069e+03 -3.0502493e+03 - -9.5003857e+02 1.3467098e+03 -3.0421980e+03 - -1.0197539e+03 1.3450527e+03 -3.0339958e+03 - -1.0828403e+03 1.3434904e+03 -3.0257316e+03 - -1.1398264e+03 1.3420760e+03 -3.0174705e+03 - -1.1912262e+03 1.3408612e+03 -3.0092591e+03 - -1.2375195e+03 1.3398957e+03 -3.0011305e+03 - -1.2791430e+03 1.3392273e+03 -2.9931079e+03 - -1.3164868e+03 1.3389014e+03 -2.9852082e+03 - -1.3498961e+03 1.3389612e+03 -2.9774444e+03 - -1.3796748e+03 1.3394466e+03 -2.9698278e+03 - -1.4060899e+03 1.3403946e+03 -2.9623688e+03 - -1.4293770e+03 1.3418385e+03 -2.9550786e+03 - -1.4497447e+03 1.3438073e+03 -2.9479690e+03 - -1.4673797e+03 1.3463258e+03 -2.9410535e+03 - -1.4824507e+03 1.3494135e+03 -2.9343470e+03 - -1.4951124e+03 1.3530846e+03 -2.9278660e+03 - -1.5055083e+03 1.3573469e+03 -2.9216285e+03 - -1.5137737e+03 1.3622021e+03 -2.9156538e+03 - -1.5200380e+03 1.3676448e+03 -2.9099625e+03 - -1.5244264e+03 1.3736621e+03 -2.9045759e+03 - -1.5270615e+03 1.3802334e+03 -2.8995156e+03 - -1.5280646e+03 1.3873301e+03 -2.8948036e+03 - -1.5275564e+03 1.3949152e+03 -2.8904617e+03 - -1.5256576e+03 1.4029434e+03 -2.8865109e+03 - -1.5224894e+03 1.4113609e+03 -2.8829715e+03 - -1.5181733e+03 1.4201055e+03 -2.8798621e+03 - -1.5128313e+03 1.4291068e+03 -2.8772000e+03 - -1.5065854e+03 1.4382866e+03 -2.8750001e+03 - -1.4995573e+03 1.4475593e+03 -2.8732754e+03 - -1.4918676e+03 1.4568321e+03 -2.8720360e+03 - -1.4836353e+03 1.4660062e+03 -2.8712893e+03 - -1.4749771e+03 1.4749771e+03 -2.8710399e+03 - -1.4660062e+03 1.4836353e+03 -2.8712893e+03 - -1.4568321e+03 1.4918676e+03 -2.8720360e+03 - -1.4475593e+03 1.4995573e+03 -2.8732754e+03 - -1.4382866e+03 1.5065854e+03 -2.8750001e+03 - -1.4291068e+03 1.5128313e+03 -2.8772000e+03 - -1.4201055e+03 1.5181733e+03 -2.8798621e+03 - -1.4113609e+03 1.5224894e+03 -2.8829715e+03 - -1.4029434e+03 1.5256576e+03 -2.8865109e+03 - -1.3949152e+03 1.5275564e+03 -2.8904617e+03 - -1.3873301e+03 1.5280646e+03 -2.8948036e+03 - -1.3802334e+03 1.5270615e+03 -2.8995156e+03 - -1.3736621e+03 1.5244264e+03 -2.9045759e+03 - -1.3676448e+03 1.5200380e+03 -2.9099625e+03 - -1.3622021e+03 1.5137737e+03 -2.9156538e+03 - -1.3573469e+03 1.5055083e+03 -2.9216285e+03 - -1.3530846e+03 1.4951124e+03 -2.9278660e+03 - -1.3494135e+03 1.4824507e+03 -2.9343470e+03 - -1.3463258e+03 1.4673797e+03 -2.9410535e+03 - -1.3438073e+03 1.4497447e+03 -2.9479690e+03 - -1.3418385e+03 1.4293770e+03 -2.9550786e+03 - -1.3403946e+03 1.4060899e+03 -2.9623688e+03 - -1.3394466e+03 1.3796748e+03 -2.9698278e+03 - -1.3389612e+03 1.3498961e+03 -2.9774444e+03 - -1.3389014e+03 1.3164868e+03 -2.9852082e+03 - -1.3392273e+03 1.2791430e+03 -2.9931079e+03 - -1.3398957e+03 1.2375195e+03 -3.0011305e+03 - -1.3408612e+03 1.1912262e+03 -3.0092591e+03 - -1.3420760e+03 1.1398264e+03 -3.0174705e+03 - -1.3434904e+03 1.0828403e+03 -3.0257316e+03 - -1.3450527e+03 1.0197539e+03 -3.0339958e+03 - -1.3467098e+03 9.5003857e+02 -3.0421980e+03 - -1.3484069e+03 8.7318407e+02 -3.0502493e+03 - -1.3500887e+03 7.8874957e+02 -3.0580326e+03 - -1.3516990e+03 6.9643442e+02 -3.0653995e+03 - -1.3531825e+03 5.9616737e+02 -3.0721703e+03 - -1.3544856e+03 4.8820574e+02 -3.0781399e+03 - -1.3555591e+03 3.7322674e+02 -3.0830904e+03 - -1.3563600e+03 2.5238473e+02 -3.0868111e+03 - -1.3568548e+03 1.2730579e+02 -3.0891239e+03 - -1.3570222e+03 0.0000000e+00 -3.0899090e+03 - -1.3568548e+03 -1.2730579e+02 -3.0891239e+03 - -1.3563600e+03 -2.5238473e+02 -3.0868111e+03 - -1.3555591e+03 -3.7322674e+02 -3.0830904e+03 - -1.3544856e+03 -4.8820574e+02 -3.0781399e+03 - -1.3531825e+03 -5.9616737e+02 -3.0721703e+03 - -1.3516990e+03 -6.9643442e+02 -3.0653995e+03 - -1.3500887e+03 -7.8874957e+02 -3.0580326e+03 - -1.3484069e+03 -8.7318407e+02 -3.0502493e+03 - -1.3467098e+03 -9.5003857e+02 -3.0421980e+03 - -1.3450527e+03 -1.0197539e+03 -3.0339958e+03 - -1.3434904e+03 -1.0828403e+03 -3.0257316e+03 - -1.3420760e+03 -1.1398264e+03 -3.0174705e+03 - -1.3408612e+03 -1.1912262e+03 -3.0092591e+03 - -1.3398957e+03 -1.2375195e+03 -3.0011305e+03 - -1.3392273e+03 -1.2791430e+03 -2.9931079e+03 - -1.3389014e+03 -1.3164868e+03 -2.9852082e+03 - -1.3389612e+03 -1.3498961e+03 -2.9774444e+03 - -1.3394466e+03 -1.3796748e+03 -2.9698278e+03 - -1.3403946e+03 -1.4060899e+03 -2.9623688e+03 - -1.3418385e+03 -1.4293770e+03 -2.9550786e+03 - -1.3438073e+03 -1.4497447e+03 -2.9479690e+03 - -1.3463258e+03 -1.4673797e+03 -2.9410535e+03 - -1.3494135e+03 -1.4824507e+03 -2.9343470e+03 - -1.3530846e+03 -1.4951124e+03 -2.9278660e+03 - -1.3573469e+03 -1.5055083e+03 -2.9216285e+03 - -1.3622021e+03 -1.5137737e+03 -2.9156538e+03 - -1.3676448e+03 -1.5200380e+03 -2.9099625e+03 - -1.3736621e+03 -1.5244264e+03 -2.9045759e+03 - -1.3802334e+03 -1.5270615e+03 -2.8995156e+03 - -1.3873301e+03 -1.5280646e+03 -2.8948036e+03 - -1.3949152e+03 -1.5275564e+03 -2.8904617e+03 - -1.4029434e+03 -1.5256576e+03 -2.8865109e+03 - -1.4113609e+03 -1.5224894e+03 -2.8829715e+03 - -1.4201055e+03 -1.5181733e+03 -2.8798621e+03 - -1.4291068e+03 -1.5128313e+03 -2.8772000e+03 - -1.4382866e+03 -1.5065854e+03 -2.8750001e+03 - -1.4475593e+03 -1.4995573e+03 -2.8732754e+03 - -1.4568321e+03 -1.4918676e+03 -2.8720360e+03 - -1.4660062e+03 -1.4836353e+03 -2.8712893e+03 - -1.4749771e+03 -1.4749771e+03 -2.8710399e+03 - -1.4836353e+03 -1.4660062e+03 -2.8712893e+03 - -1.4918676e+03 -1.4568321e+03 -2.8720360e+03 - -1.4995573e+03 -1.4475593e+03 -2.8732754e+03 - -1.5065854e+03 -1.4382866e+03 -2.8750001e+03 - -1.5128313e+03 -1.4291068e+03 -2.8772000e+03 - -1.5181733e+03 -1.4201055e+03 -2.8798621e+03 - -1.5224894e+03 -1.4113609e+03 -2.8829715e+03 - -1.5256576e+03 -1.4029434e+03 -2.8865109e+03 - -1.5275564e+03 -1.3949152e+03 -2.8904617e+03 - -1.5280646e+03 -1.3873301e+03 -2.8948036e+03 - -1.5270615e+03 -1.3802334e+03 -2.8995156e+03 - -1.5244264e+03 -1.3736621e+03 -2.9045759e+03 - -1.5200380e+03 -1.3676448e+03 -2.9099625e+03 - -1.5137737e+03 -1.3622021e+03 -2.9156538e+03 - -1.5055083e+03 -1.3573469e+03 -2.9216285e+03 - -1.4951124e+03 -1.3530846e+03 -2.9278660e+03 - -1.4824507e+03 -1.3494135e+03 -2.9343470e+03 - -1.4673797e+03 -1.3463258e+03 -2.9410535e+03 - -1.4497447e+03 -1.3438073e+03 -2.9479690e+03 - -1.4293770e+03 -1.3418385e+03 -2.9550786e+03 - -1.4060899e+03 -1.3403946e+03 -2.9623688e+03 - -1.3796748e+03 -1.3394466e+03 -2.9698278e+03 - -1.3498961e+03 -1.3389612e+03 -2.9774444e+03 - -1.3164868e+03 -1.3389014e+03 -2.9852082e+03 - -1.2791430e+03 -1.3392273e+03 -2.9931079e+03 - -1.2375195e+03 -1.3398957e+03 -3.0011305e+03 - -1.1912262e+03 -1.3408612e+03 -3.0092591e+03 - -1.1398264e+03 -1.3420760e+03 -3.0174705e+03 - -1.0828403e+03 -1.3434904e+03 -3.0257316e+03 - -1.0197539e+03 -1.3450527e+03 -3.0339958e+03 - -9.5003857e+02 -1.3467098e+03 -3.0421980e+03 - -8.7318407e+02 -1.3484069e+03 -3.0502493e+03 - -7.8874957e+02 -1.3500887e+03 -3.0580326e+03 - -6.9643442e+02 -1.3516990e+03 -3.0653995e+03 - -5.9616737e+02 -1.3531825e+03 -3.0721703e+03 - -4.8820574e+02 -1.3544856e+03 -3.0781399e+03 - -3.7322674e+02 -1.3555591e+03 -3.0830904e+03 - -2.5238473e+02 -1.3563600e+03 -3.0868111e+03 - -1.2730579e+02 -1.3568548e+03 -3.0891239e+03 - 0.0000000e+00 -1.3570222e+03 -3.0899090e+03 - 1.2730579e+02 -1.3568548e+03 -3.0891239e+03 - 2.5238473e+02 -1.3563600e+03 -3.0868111e+03 - 3.7322674e+02 -1.3555591e+03 -3.0830904e+03 - 4.8820574e+02 -1.3544856e+03 -3.0781399e+03 - 5.9616737e+02 -1.3531825e+03 -3.0721703e+03 - 6.9643442e+02 -1.3516990e+03 -3.0653995e+03 - 7.8874957e+02 -1.3500887e+03 -3.0580326e+03 - 8.7318407e+02 -1.3484069e+03 -3.0502493e+03 - 9.5003857e+02 -1.3467098e+03 -3.0421980e+03 - 1.0197539e+03 -1.3450527e+03 -3.0339958e+03 - 1.0828403e+03 -1.3434904e+03 -3.0257316e+03 - 1.1398264e+03 -1.3420760e+03 -3.0174705e+03 - 1.1912262e+03 -1.3408612e+03 -3.0092591e+03 - 1.2375195e+03 -1.3398957e+03 -3.0011305e+03 - 1.2791430e+03 -1.3392273e+03 -2.9931079e+03 - 1.3164868e+03 -1.3389014e+03 -2.9852082e+03 - 1.3498961e+03 -1.3389612e+03 -2.9774444e+03 - 1.3796748e+03 -1.3394466e+03 -2.9698278e+03 - 1.4060899e+03 -1.3403946e+03 -2.9623688e+03 - 1.4293770e+03 -1.3418385e+03 -2.9550786e+03 - 1.4497447e+03 -1.3438073e+03 -2.9479690e+03 - 1.4673797e+03 -1.3463258e+03 -2.9410535e+03 - 1.4824507e+03 -1.3494135e+03 -2.9343470e+03 - 1.4951124e+03 -1.3530846e+03 -2.9278660e+03 - 1.5055083e+03 -1.3573469e+03 -2.9216285e+03 - 1.5137737e+03 -1.3622021e+03 -2.9156538e+03 - 1.5200380e+03 -1.3676448e+03 -2.9099625e+03 - 1.5244264e+03 -1.3736621e+03 -2.9045759e+03 - 1.5270615e+03 -1.3802334e+03 -2.8995156e+03 - 1.5280646e+03 -1.3873301e+03 -2.8948036e+03 - 1.5275564e+03 -1.3949152e+03 -2.8904617e+03 - 1.5256576e+03 -1.4029434e+03 -2.8865109e+03 - 1.5224894e+03 -1.4113609e+03 -2.8829715e+03 - 1.5181733e+03 -1.4201055e+03 -2.8798621e+03 - 1.5128313e+03 -1.4291068e+03 -2.8772000e+03 - 1.5065854e+03 -1.4382866e+03 -2.8750001e+03 - 1.4995573e+03 -1.4475593e+03 -2.8732754e+03 - 1.4918676e+03 -1.4568321e+03 -2.8720360e+03 - 1.4836353e+03 -1.4660062e+03 -2.8712893e+03 - 1.4749771e+03 -1.4749771e+03 -2.8710399e+03 - 1.4660062e+03 -1.4836353e+03 -2.8712893e+03 - 1.4568321e+03 -1.4918676e+03 -2.8720360e+03 - 1.4475593e+03 -1.4995573e+03 -2.8732754e+03 - 1.4382866e+03 -1.5065854e+03 -2.8750001e+03 - 1.4291068e+03 -1.5128313e+03 -2.8772000e+03 - 1.4201055e+03 -1.5181733e+03 -2.8798621e+03 - 1.4113609e+03 -1.5224894e+03 -2.8829715e+03 - 1.4029434e+03 -1.5256576e+03 -2.8865109e+03 - 1.3949152e+03 -1.5275564e+03 -2.8904617e+03 - 1.3873301e+03 -1.5280646e+03 -2.8948036e+03 - 1.3802334e+03 -1.5270615e+03 -2.8995156e+03 - 1.3736621e+03 -1.5244264e+03 -2.9045759e+03 - 1.3676448e+03 -1.5200380e+03 -2.9099625e+03 - 1.3622021e+03 -1.5137737e+03 -2.9156538e+03 - 1.3573469e+03 -1.5055083e+03 -2.9216285e+03 - 1.3530846e+03 -1.4951124e+03 -2.9278660e+03 - 1.3494135e+03 -1.4824507e+03 -2.9343470e+03 - 1.3463258e+03 -1.4673797e+03 -2.9410535e+03 - 1.3438073e+03 -1.4497447e+03 -2.9479690e+03 - 1.3418385e+03 -1.4293770e+03 -2.9550786e+03 - 1.3403946e+03 -1.4060899e+03 -2.9623688e+03 - 1.3394466e+03 -1.3796748e+03 -2.9698278e+03 - 1.3389612e+03 -1.3498961e+03 -2.9774444e+03 - 1.3389014e+03 -1.3164868e+03 -2.9852082e+03 - 1.3392273e+03 -1.2791430e+03 -2.9931079e+03 - 1.3398957e+03 -1.2375195e+03 -3.0011305e+03 - 1.3408612e+03 -1.1912262e+03 -3.0092591e+03 - 1.3420760e+03 -1.1398264e+03 -3.0174705e+03 - 1.3434904e+03 -1.0828403e+03 -3.0257316e+03 - 1.3450527e+03 -1.0197539e+03 -3.0339958e+03 - 1.3467098e+03 -9.5003857e+02 -3.0421980e+03 - 1.3484069e+03 -8.7318407e+02 -3.0502493e+03 - 1.3500887e+03 -7.8874957e+02 -3.0580326e+03 - 1.3516990e+03 -6.9643442e+02 -3.0653995e+03 - 1.3531825e+03 -5.9616737e+02 -3.0721703e+03 - 1.3544856e+03 -4.8820574e+02 -3.0781399e+03 - 1.3555591e+03 -3.7322674e+02 -3.0830904e+03 - 1.3563600e+03 -2.5238473e+02 -3.0868111e+03 - 1.3568548e+03 -1.2730579e+02 -3.0891239e+03 - 1.3570222e+03 -2.4067136e-09 -3.0899090e+03 - 1.3145155e+03 0.0000000e+00 -3.1201602e+03 - 1.3143287e+03 1.2206739e+02 -3.1194563e+03 - 1.3137784e+03 2.4212372e+02 -3.1173790e+03 - 1.3128941e+03 3.5833987e+02 -3.1140256e+03 - 1.3117206e+03 4.6921180e+02 -3.1095421e+03 - 1.3103144e+03 5.7364042e+02 -3.1041037e+03 - 1.3087386e+03 6.7094419e+02 -3.0978945e+03 - 1.3070587e+03 7.6081816e+02 -3.0910916e+03 - 1.3053398e+03 8.4326135e+02 -3.0838540e+03 - 1.3036448e+03 9.1849372e+02 -3.0763165e+03 - 1.3020329e+03 9.8687841e+02 -3.0685891e+03 - 1.3005599e+03 1.0488574e+03 -3.0607581e+03 - 1.2992781e+03 1.1049035e+03 -3.0528898e+03 - 1.2982362e+03 1.1554871e+03 -3.0450341e+03 - 1.2974796e+03 1.2010562e+03 -3.0372280e+03 - 1.2970511e+03 1.2420242e+03 -3.0294998e+03 - 1.2969903e+03 1.2787664e+03 -3.0218711e+03 - 1.2973341e+03 1.3116183e+03 -3.0143594e+03 - 1.2981162e+03 1.3408786e+03 -3.0069799e+03 - 1.2993672e+03 1.3668120e+03 -2.9997466e+03 - 1.3011141e+03 1.3896538e+03 -2.9926731e+03 - 1.3033802e+03 1.4096137e+03 -2.9857737e+03 - 1.3061845e+03 1.4268801e+03 -2.9790632e+03 - 1.3095413e+03 1.4416238e+03 -2.9725578e+03 - 1.3134597e+03 1.4540014e+03 -2.9662743e+03 - 1.3179437e+03 1.4641582e+03 -2.9602309e+03 - 1.3229908e+03 1.4722309e+03 -2.9544466e+03 - 1.3285925e+03 1.4783497e+03 -2.9489412e+03 - 1.3347335e+03 1.4826398e+03 -2.9437350e+03 - 1.3413913e+03 1.4852234e+03 -2.9388487e+03 - 1.3485360e+03 1.4862206e+03 -2.9343027e+03 - 1.3561305e+03 1.4857500e+03 -2.9301173e+03 - 1.3641297e+03 1.4839297e+03 -2.9263121e+03 - 1.3724809e+03 1.4808776e+03 -2.9229056e+03 - 1.3811238e+03 1.4767111e+03 -2.9199152e+03 - 1.3899907e+03 1.4715477e+03 -2.9173564e+03 - 1.3990066e+03 1.4655044e+03 -2.9152430e+03 - 1.4080898e+03 1.4586973e+03 -2.9135868e+03 - 1.4171522e+03 1.4512416e+03 -2.9123970e+03 - 1.4260999e+03 1.4432502e+03 -2.9116804e+03 - 1.4348338e+03 1.4348338e+03 -2.9114410e+03 - 1.4432502e+03 1.4260999e+03 -2.9116804e+03 - 1.4512416e+03 1.4171522e+03 -2.9123970e+03 - 1.4586973e+03 1.4080898e+03 -2.9135868e+03 - 1.4655044e+03 1.3990066e+03 -2.9152430e+03 - 1.4715477e+03 1.3899907e+03 -2.9173564e+03 - 1.4767111e+03 1.3811238e+03 -2.9199152e+03 - 1.4808776e+03 1.3724809e+03 -2.9229056e+03 - 1.4839297e+03 1.3641297e+03 -2.9263121e+03 - 1.4857500e+03 1.3561305e+03 -2.9301173e+03 - 1.4862206e+03 1.3485360e+03 -2.9343027e+03 - 1.4852234e+03 1.3413913e+03 -2.9388487e+03 - 1.4826398e+03 1.3347335e+03 -2.9437350e+03 - 1.4783497e+03 1.3285925e+03 -2.9489412e+03 - 1.4722309e+03 1.3229908e+03 -2.9544466e+03 - 1.4641582e+03 1.3179437e+03 -2.9602309e+03 - 1.4540014e+03 1.3134597e+03 -2.9662743e+03 - 1.4416238e+03 1.3095413e+03 -2.9725578e+03 - 1.4268801e+03 1.3061845e+03 -2.9790632e+03 - 1.4096137e+03 1.3033802e+03 -2.9857737e+03 - 1.3896538e+03 1.3011141e+03 -2.9926731e+03 - 1.3668120e+03 1.2993672e+03 -2.9997466e+03 - 1.3408786e+03 1.2981162e+03 -3.0069799e+03 - 1.3116183e+03 1.2973341e+03 -3.0143594e+03 - 1.2787664e+03 1.2969903e+03 -3.0218711e+03 - 1.2420242e+03 1.2970511e+03 -3.0294998e+03 - 1.2010562e+03 1.2974796e+03 -3.0372280e+03 - 1.1554871e+03 1.2982362e+03 -3.0450341e+03 - 1.1049035e+03 1.2992781e+03 -3.0528898e+03 - 1.0488574e+03 1.3005599e+03 -3.0607581e+03 - 9.8687841e+02 1.3020329e+03 -3.0685891e+03 - 9.1849372e+02 1.3036448e+03 -3.0763165e+03 - 8.4326135e+02 1.3053398e+03 -3.0838540e+03 - 7.6081816e+02 1.3070587e+03 -3.0910916e+03 - 6.7094419e+02 1.3087386e+03 -3.0978945e+03 - 5.7364042e+02 1.3103144e+03 -3.1041037e+03 - 4.6921180e+02 1.3117206e+03 -3.1095421e+03 - 3.5833987e+02 1.3128941e+03 -3.1140256e+03 - 2.4212372e+02 1.3137784e+03 -3.1173790e+03 - 1.2206739e+02 1.3143287e+03 -3.1194563e+03 - 0.0000000e+00 1.3145155e+03 -3.1201602e+03 - -1.2206739e+02 1.3143287e+03 -3.1194563e+03 - -2.4212372e+02 1.3137784e+03 -3.1173790e+03 - -3.5833987e+02 1.3128941e+03 -3.1140256e+03 - -4.6921180e+02 1.3117206e+03 -3.1095421e+03 - -5.7364042e+02 1.3103144e+03 -3.1041037e+03 - -6.7094419e+02 1.3087386e+03 -3.0978945e+03 - -7.6081816e+02 1.3070587e+03 -3.0910916e+03 - -8.4326135e+02 1.3053398e+03 -3.0838540e+03 - -9.1849372e+02 1.3036448e+03 -3.0763165e+03 - -9.8687841e+02 1.3020329e+03 -3.0685891e+03 - -1.0488574e+03 1.3005599e+03 -3.0607581e+03 - -1.1049035e+03 1.2992781e+03 -3.0528898e+03 - -1.1554871e+03 1.2982362e+03 -3.0450341e+03 - -1.2010562e+03 1.2974796e+03 -3.0372280e+03 - -1.2420242e+03 1.2970511e+03 -3.0294998e+03 - -1.2787664e+03 1.2969903e+03 -3.0218711e+03 - -1.3116183e+03 1.2973341e+03 -3.0143594e+03 - -1.3408786e+03 1.2981162e+03 -3.0069799e+03 - -1.3668120e+03 1.2993672e+03 -2.9997466e+03 - -1.3896538e+03 1.3011141e+03 -2.9926731e+03 - -1.4096137e+03 1.3033802e+03 -2.9857737e+03 - -1.4268801e+03 1.3061845e+03 -2.9790632e+03 - -1.4416238e+03 1.3095413e+03 -2.9725578e+03 - -1.4540014e+03 1.3134597e+03 -2.9662743e+03 - -1.4641582e+03 1.3179437e+03 -2.9602309e+03 - -1.4722309e+03 1.3229908e+03 -2.9544466e+03 - -1.4783497e+03 1.3285925e+03 -2.9489412e+03 - -1.4826398e+03 1.3347335e+03 -2.9437350e+03 - -1.4852234e+03 1.3413913e+03 -2.9388487e+03 - -1.4862206e+03 1.3485360e+03 -2.9343027e+03 - -1.4857500e+03 1.3561305e+03 -2.9301173e+03 - -1.4839297e+03 1.3641297e+03 -2.9263121e+03 - -1.4808776e+03 1.3724809e+03 -2.9229056e+03 - -1.4767111e+03 1.3811238e+03 -2.9199152e+03 - -1.4715477e+03 1.3899907e+03 -2.9173564e+03 - -1.4655044e+03 1.3990066e+03 -2.9152430e+03 - -1.4586973e+03 1.4080898e+03 -2.9135868e+03 - -1.4512416e+03 1.4171522e+03 -2.9123970e+03 - -1.4432502e+03 1.4260999e+03 -2.9116804e+03 - -1.4348338e+03 1.4348338e+03 -2.9114410e+03 - -1.4260999e+03 1.4432502e+03 -2.9116804e+03 - -1.4171522e+03 1.4512416e+03 -2.9123970e+03 - -1.4080898e+03 1.4586973e+03 -2.9135868e+03 - -1.3990066e+03 1.4655044e+03 -2.9152430e+03 - -1.3899907e+03 1.4715477e+03 -2.9173564e+03 - -1.3811238e+03 1.4767111e+03 -2.9199152e+03 - -1.3724809e+03 1.4808776e+03 -2.9229056e+03 - -1.3641297e+03 1.4839297e+03 -2.9263121e+03 - -1.3561305e+03 1.4857500e+03 -2.9301173e+03 - -1.3485360e+03 1.4862206e+03 -2.9343027e+03 - -1.3413913e+03 1.4852234e+03 -2.9388487e+03 - -1.3347335e+03 1.4826398e+03 -2.9437350e+03 - -1.3285925e+03 1.4783497e+03 -2.9489412e+03 - -1.3229908e+03 1.4722309e+03 -2.9544466e+03 - -1.3179437e+03 1.4641582e+03 -2.9602309e+03 - -1.3134597e+03 1.4540014e+03 -2.9662743e+03 - -1.3095413e+03 1.4416238e+03 -2.9725578e+03 - -1.3061845e+03 1.4268801e+03 -2.9790632e+03 - -1.3033802e+03 1.4096137e+03 -2.9857737e+03 - -1.3011141e+03 1.3896538e+03 -2.9926731e+03 - -1.2993672e+03 1.3668120e+03 -2.9997466e+03 - -1.2981162e+03 1.3408786e+03 -3.0069799e+03 - -1.2973341e+03 1.3116183e+03 -3.0143594e+03 - -1.2969903e+03 1.2787664e+03 -3.0218711e+03 - -1.2970511e+03 1.2420242e+03 -3.0294998e+03 - -1.2974796e+03 1.2010562e+03 -3.0372280e+03 - -1.2982362e+03 1.1554871e+03 -3.0450341e+03 - -1.2992781e+03 1.1049035e+03 -3.0528898e+03 - -1.3005599e+03 1.0488574e+03 -3.0607581e+03 - -1.3020329e+03 9.8687841e+02 -3.0685891e+03 - -1.3036448e+03 9.1849372e+02 -3.0763165e+03 - -1.3053398e+03 8.4326135e+02 -3.0838540e+03 - -1.3070587e+03 7.6081816e+02 -3.0910916e+03 - -1.3087386e+03 6.7094419e+02 -3.0978945e+03 - -1.3103144e+03 5.7364042e+02 -3.1041037e+03 - -1.3117206e+03 4.6921180e+02 -3.1095421e+03 - -1.3128941e+03 3.5833987e+02 -3.1140256e+03 - -1.3137784e+03 2.4212372e+02 -3.1173790e+03 - -1.3143287e+03 1.2206739e+02 -3.1194563e+03 - -1.3145155e+03 4.8134273e-09 -3.1201602e+03 - -1.3143287e+03 -1.2206739e+02 -3.1194563e+03 - -1.3137784e+03 -2.4212372e+02 -3.1173790e+03 - -1.3128941e+03 -3.5833987e+02 -3.1140256e+03 - -1.3117206e+03 -4.6921180e+02 -3.1095421e+03 - -1.3103144e+03 -5.7364042e+02 -3.1041037e+03 - -1.3087386e+03 -6.7094419e+02 -3.0978945e+03 - -1.3070587e+03 -7.6081816e+02 -3.0910916e+03 - -1.3053398e+03 -8.4326135e+02 -3.0838540e+03 - -1.3036448e+03 -9.1849372e+02 -3.0763165e+03 - -1.3020329e+03 -9.8687841e+02 -3.0685891e+03 - -1.3005599e+03 -1.0488574e+03 -3.0607581e+03 - -1.2992781e+03 -1.1049035e+03 -3.0528898e+03 - -1.2982362e+03 -1.1554871e+03 -3.0450341e+03 - -1.2974796e+03 -1.2010562e+03 -3.0372280e+03 - -1.2970511e+03 -1.2420242e+03 -3.0294998e+03 - -1.2969903e+03 -1.2787664e+03 -3.0218711e+03 - -1.2973341e+03 -1.3116183e+03 -3.0143594e+03 - -1.2981162e+03 -1.3408786e+03 -3.0069799e+03 - -1.2993672e+03 -1.3668120e+03 -2.9997466e+03 - -1.3011141e+03 -1.3896538e+03 -2.9926731e+03 - -1.3033802e+03 -1.4096137e+03 -2.9857737e+03 - -1.3061845e+03 -1.4268801e+03 -2.9790632e+03 - -1.3095413e+03 -1.4416238e+03 -2.9725578e+03 - -1.3134597e+03 -1.4540014e+03 -2.9662743e+03 - -1.3179437e+03 -1.4641582e+03 -2.9602309e+03 - -1.3229908e+03 -1.4722309e+03 -2.9544466e+03 - -1.3285925e+03 -1.4783497e+03 -2.9489412e+03 - -1.3347335e+03 -1.4826398e+03 -2.9437350e+03 - -1.3413913e+03 -1.4852234e+03 -2.9388487e+03 - -1.3485360e+03 -1.4862206e+03 -2.9343027e+03 - -1.3561305e+03 -1.4857500e+03 -2.9301173e+03 - -1.3641297e+03 -1.4839297e+03 -2.9263121e+03 - -1.3724809e+03 -1.4808776e+03 -2.9229056e+03 - -1.3811238e+03 -1.4767111e+03 -2.9199152e+03 - -1.3899907e+03 -1.4715477e+03 -2.9173564e+03 - -1.3990066e+03 -1.4655044e+03 -2.9152430e+03 - -1.4080898e+03 -1.4586973e+03 -2.9135868e+03 - -1.4171522e+03 -1.4512416e+03 -2.9123970e+03 - -1.4260999e+03 -1.4432502e+03 -2.9116804e+03 - -1.4348338e+03 -1.4348338e+03 -2.9114410e+03 - -1.4432502e+03 -1.4260999e+03 -2.9116804e+03 - -1.4512416e+03 -1.4171522e+03 -2.9123970e+03 - -1.4586973e+03 -1.4080898e+03 -2.9135868e+03 - -1.4655044e+03 -1.3990066e+03 -2.9152430e+03 - -1.4715477e+03 -1.3899907e+03 -2.9173564e+03 - -1.4767111e+03 -1.3811238e+03 -2.9199152e+03 - -1.4808776e+03 -1.3724809e+03 -2.9229056e+03 - -1.4839297e+03 -1.3641297e+03 -2.9263121e+03 - -1.4857500e+03 -1.3561305e+03 -2.9301173e+03 - -1.4862206e+03 -1.3485360e+03 -2.9343027e+03 - -1.4852234e+03 -1.3413913e+03 -2.9388487e+03 - -1.4826398e+03 -1.3347335e+03 -2.9437350e+03 - -1.4783497e+03 -1.3285925e+03 -2.9489412e+03 - -1.4722309e+03 -1.3229908e+03 -2.9544466e+03 - -1.4641582e+03 -1.3179437e+03 -2.9602309e+03 - -1.4540014e+03 -1.3134597e+03 -2.9662743e+03 - -1.4416238e+03 -1.3095413e+03 -2.9725578e+03 - -1.4268801e+03 -1.3061845e+03 -2.9790632e+03 - -1.4096137e+03 -1.3033802e+03 -2.9857737e+03 - -1.3896538e+03 -1.3011141e+03 -2.9926731e+03 - -1.3668120e+03 -1.2993672e+03 -2.9997466e+03 - -1.3408786e+03 -1.2981162e+03 -3.0069799e+03 - -1.3116183e+03 -1.2973341e+03 -3.0143594e+03 - -1.2787664e+03 -1.2969903e+03 -3.0218711e+03 - -1.2420242e+03 -1.2970511e+03 -3.0294998e+03 - -1.2010562e+03 -1.2974796e+03 -3.0372280e+03 - -1.1554871e+03 -1.2982362e+03 -3.0450341e+03 - -1.1049035e+03 -1.2992781e+03 -3.0528898e+03 - -1.0488574e+03 -1.3005599e+03 -3.0607581e+03 - -9.8687841e+02 -1.3020329e+03 -3.0685891e+03 - -9.1849372e+02 -1.3036448e+03 -3.0763165e+03 - -8.4326135e+02 -1.3053398e+03 -3.0838540e+03 - -7.6081816e+02 -1.3070587e+03 -3.0910916e+03 - -6.7094419e+02 -1.3087386e+03 -3.0978945e+03 - -5.7364042e+02 -1.3103144e+03 -3.1041037e+03 - -4.6921180e+02 -1.3117206e+03 -3.1095421e+03 - -3.5833987e+02 -1.3128941e+03 -3.1140256e+03 - -2.4212372e+02 -1.3137784e+03 -3.1173790e+03 - -1.2206739e+02 -1.3143287e+03 -3.1194563e+03 - -2.4067136e-09 -1.3145155e+03 -3.1201602e+03 - 1.2206739e+02 -1.3143287e+03 -3.1194563e+03 - 2.4212372e+02 -1.3137784e+03 -3.1173790e+03 - 3.5833987e+02 -1.3128941e+03 -3.1140256e+03 - 4.6921180e+02 -1.3117206e+03 -3.1095421e+03 - 5.7364042e+02 -1.3103144e+03 -3.1041037e+03 - 6.7094419e+02 -1.3087386e+03 -3.0978945e+03 - 7.6081816e+02 -1.3070587e+03 -3.0910916e+03 - 8.4326135e+02 -1.3053398e+03 -3.0838540e+03 - 9.1849372e+02 -1.3036448e+03 -3.0763165e+03 - 9.8687841e+02 -1.3020329e+03 -3.0685891e+03 - 1.0488574e+03 -1.3005599e+03 -3.0607581e+03 - 1.1049035e+03 -1.2992781e+03 -3.0528898e+03 - 1.1554871e+03 -1.2982362e+03 -3.0450341e+03 - 1.2010562e+03 -1.2974796e+03 -3.0372280e+03 - 1.2420242e+03 -1.2970511e+03 -3.0294998e+03 - 1.2787664e+03 -1.2969903e+03 -3.0218711e+03 - 1.3116183e+03 -1.2973341e+03 -3.0143594e+03 - 1.3408786e+03 -1.2981162e+03 -3.0069799e+03 - 1.3668120e+03 -1.2993672e+03 -2.9997466e+03 - 1.3896538e+03 -1.3011141e+03 -2.9926731e+03 - 1.4096137e+03 -1.3033802e+03 -2.9857737e+03 - 1.4268801e+03 -1.3061845e+03 -2.9790632e+03 - 1.4416238e+03 -1.3095413e+03 -2.9725578e+03 - 1.4540014e+03 -1.3134597e+03 -2.9662743e+03 - 1.4641582e+03 -1.3179437e+03 -2.9602309e+03 - 1.4722309e+03 -1.3229908e+03 -2.9544466e+03 - 1.4783497e+03 -1.3285925e+03 -2.9489412e+03 - 1.4826398e+03 -1.3347335e+03 -2.9437350e+03 - 1.4852234e+03 -1.3413913e+03 -2.9388487e+03 - 1.4862206e+03 -1.3485360e+03 -2.9343027e+03 - 1.4857500e+03 -1.3561305e+03 -2.9301173e+03 - 1.4839297e+03 -1.3641297e+03 -2.9263121e+03 - 1.4808776e+03 -1.3724809e+03 -2.9229056e+03 - 1.4767111e+03 -1.3811238e+03 -2.9199152e+03 - 1.4715477e+03 -1.3899907e+03 -2.9173564e+03 - 1.4655044e+03 -1.3990066e+03 -2.9152430e+03 - 1.4586973e+03 -1.4080898e+03 -2.9135868e+03 - 1.4512416e+03 -1.4171522e+03 -2.9123970e+03 - 1.4432502e+03 -1.4260999e+03 -2.9116804e+03 - 1.4348338e+03 -1.4348338e+03 -2.9114410e+03 - 1.4260999e+03 -1.4432502e+03 -2.9116804e+03 - 1.4171522e+03 -1.4512416e+03 -2.9123970e+03 - 1.4080898e+03 -1.4586973e+03 -2.9135868e+03 - 1.3990066e+03 -1.4655044e+03 -2.9152430e+03 - 1.3899907e+03 -1.4715477e+03 -2.9173564e+03 - 1.3811238e+03 -1.4767111e+03 -2.9199152e+03 - 1.3724809e+03 -1.4808776e+03 -2.9229056e+03 - 1.3641297e+03 -1.4839297e+03 -2.9263121e+03 - 1.3561305e+03 -1.4857500e+03 -2.9301173e+03 - 1.3485360e+03 -1.4862206e+03 -2.9343027e+03 - 1.3413913e+03 -1.4852234e+03 -2.9388487e+03 - 1.3347335e+03 -1.4826398e+03 -2.9437350e+03 - 1.3285925e+03 -1.4783497e+03 -2.9489412e+03 - 1.3229908e+03 -1.4722309e+03 -2.9544466e+03 - 1.3179437e+03 -1.4641582e+03 -2.9602309e+03 - 1.3134597e+03 -1.4540014e+03 -2.9662743e+03 - 1.3095413e+03 -1.4416238e+03 -2.9725578e+03 - 1.3061845e+03 -1.4268801e+03 -2.9790632e+03 - 1.3033802e+03 -1.4096137e+03 -2.9857737e+03 - 1.3011141e+03 -1.3896538e+03 -2.9926731e+03 - 1.2993672e+03 -1.3668120e+03 -2.9997466e+03 - 1.2981162e+03 -1.3408786e+03 -3.0069799e+03 - 1.2973341e+03 -1.3116183e+03 -3.0143594e+03 - 1.2969903e+03 -1.2787664e+03 -3.0218711e+03 - 1.2970511e+03 -1.2420242e+03 -3.0294998e+03 - 1.2974796e+03 -1.2010562e+03 -3.0372280e+03 - 1.2982362e+03 -1.1554871e+03 -3.0450341e+03 - 1.2992781e+03 -1.1049035e+03 -3.0528898e+03 - 1.3005599e+03 -1.0488574e+03 -3.0607581e+03 - 1.3020329e+03 -9.8687841e+02 -3.0685891e+03 - 1.3036448e+03 -9.1849372e+02 -3.0763165e+03 - 1.3053398e+03 -8.4326135e+02 -3.0838540e+03 - 1.3070587e+03 -7.6081816e+02 -3.0910916e+03 - 1.3087386e+03 -6.7094419e+02 -3.0978945e+03 - 1.3103144e+03 -5.7364042e+02 -3.1041037e+03 - 1.3117206e+03 -4.6921180e+02 -3.1095421e+03 - 1.3128941e+03 -3.5833987e+02 -3.1140256e+03 - 1.3137784e+03 -2.4212372e+02 -3.1173790e+03 - 1.3143287e+03 -1.2206739e+02 -3.1194563e+03 - 1.3145155e+03 0.0000000e+00 -3.1201602e+03 - 1.2719605e+03 4.8134273e-09 -3.1492041e+03 - 1.2717610e+03 1.1704474e+02 -3.1485706e+03 - 1.2711745e+03 2.3226398e+02 -3.1466982e+03 - 1.2702355e+03 3.4398646e+02 -3.1436665e+03 - 1.2689970e+03 4.5081860e+02 -3.1395964e+03 - 1.2675248e+03 5.5171690e+02 -3.1346341e+03 - 1.2658917e+03 6.4600501e+02 -3.1289361e+03 - 1.2641722e+03 7.3334479e+02 -3.1226554e+03 - 1.2624392e+03 8.1367848e+02 -3.1159324e+03 - 1.2607609e+03 8.8715915e+02 -3.1088892e+03 - 1.2592004e+03 9.5408298e+02 -3.1016280e+03 - 1.2578146e+03 1.0148313e+03 -3.0942315e+03 - 1.2566555e+03 1.0698256e+03 -3.0867655e+03 - 1.2557696e+03 1.1194952e+03 -3.0792812e+03 - 1.2551993e+03 1.1642565e+03 -3.0718188e+03 - 1.2549829e+03 1.2045001e+03 -3.0644095e+03 - 1.2551555e+03 1.2405846e+03 -3.0570787e+03 - 1.2557484e+03 1.2728351e+03 -3.0498474e+03 - 1.2567900e+03 1.3015431e+03 -3.0427336e+03 - 1.2583052e+03 1.3269699e+03 -3.0357542e+03 - 1.2603155e+03 1.3493489e+03 -3.0289251e+03 - 1.2628387e+03 1.3688896e+03 -3.0222622e+03 - 1.2658888e+03 1.3857808e+03 -3.0157817e+03 - 1.2694752e+03 1.4001944e+03 -3.0095004e+03 - 1.2736027e+03 1.4122881e+03 -3.0034358e+03 - 1.2782711e+03 1.4222082e+03 -2.9976058e+03 - 1.2834748e+03 1.4300919e+03 -2.9920292e+03 - 1.2892021e+03 1.4360696e+03 -2.9867252e+03 - 1.2954355e+03 1.4402663e+03 -2.9817130e+03 - 1.3021509e+03 1.4428034e+03 -2.9770123e+03 - 1.3093174e+03 1.4437992e+03 -2.9726424e+03 - 1.3168974e+03 1.4433703e+03 -2.9686220e+03 - 1.3248464e+03 1.4416321e+03 -2.9649694e+03 - 1.3331129e+03 1.4386989e+03 -2.9617017e+03 - 1.3416383e+03 1.4346843e+03 -2.9588348e+03 - 1.3503573e+03 1.4297014e+03 -2.9563830e+03 - 1.3591984e+03 1.4238621e+03 -2.9543590e+03 - 1.3680833e+03 1.4172777e+03 -2.9527733e+03 - 1.3769283e+03 1.4100575e+03 -2.9516345e+03 - 1.3856444e+03 1.4023090e+03 -2.9509488e+03 - 1.3941373e+03 1.3941373e+03 -2.9507198e+03 - 1.4023090e+03 1.3856444e+03 -2.9509488e+03 - 1.4100575e+03 1.3769283e+03 -2.9516345e+03 - 1.4172777e+03 1.3680833e+03 -2.9527733e+03 - 1.4238621e+03 1.3591984e+03 -2.9543590e+03 - 1.4297014e+03 1.3503573e+03 -2.9563830e+03 - 1.4346843e+03 1.3416383e+03 -2.9588348e+03 - 1.4386989e+03 1.3331129e+03 -2.9617017e+03 - 1.4416321e+03 1.3248464e+03 -2.9649694e+03 - 1.4433703e+03 1.3168974e+03 -2.9686220e+03 - 1.4437992e+03 1.3093174e+03 -2.9726424e+03 - 1.4428034e+03 1.3021509e+03 -2.9770123e+03 - 1.4402663e+03 1.2954355e+03 -2.9817130e+03 - 1.4360696e+03 1.2892021e+03 -2.9867252e+03 - 1.4300919e+03 1.2834748e+03 -2.9920292e+03 - 1.4222082e+03 1.2782711e+03 -2.9976058e+03 - 1.4122881e+03 1.2736027e+03 -3.0034358e+03 - 1.4001944e+03 1.2694752e+03 -3.0095004e+03 - 1.3857808e+03 1.2658888e+03 -3.0157817e+03 - 1.3688896e+03 1.2628387e+03 -3.0222622e+03 - 1.3493489e+03 1.2603155e+03 -3.0289251e+03 - 1.3269699e+03 1.2583052e+03 -3.0357542e+03 - 1.3015431e+03 1.2567900e+03 -3.0427336e+03 - 1.2728351e+03 1.2557484e+03 -3.0498474e+03 - 1.2405846e+03 1.2551555e+03 -3.0570787e+03 - 1.2045001e+03 1.2549829e+03 -3.0644095e+03 - 1.1642565e+03 1.2551993e+03 -3.0718188e+03 - 1.1194952e+03 1.2557696e+03 -3.0792812e+03 - 1.0698256e+03 1.2566555e+03 -3.0867655e+03 - 1.0148313e+03 1.2578146e+03 -3.0942315e+03 - 9.5408298e+02 1.2592004e+03 -3.1016280e+03 - 8.8715915e+02 1.2607609e+03 -3.1088892e+03 - 8.1367848e+02 1.2624392e+03 -3.1159324e+03 - 7.3334479e+02 1.2641722e+03 -3.1226554e+03 - 6.4600501e+02 1.2658917e+03 -3.1289361e+03 - 5.5171690e+02 1.2675248e+03 -3.1346341e+03 - 4.5081860e+02 1.2689970e+03 -3.1395964e+03 - 3.4398646e+02 1.2702355e+03 -3.1436665e+03 - 2.3226398e+02 1.2711745e+03 -3.1466982e+03 - 1.1704474e+02 1.2717610e+03 -3.1485706e+03 - -2.4067136e-09 1.2719605e+03 -3.1492041e+03 - -1.1704474e+02 1.2717610e+03 -3.1485706e+03 - -2.3226398e+02 1.2711745e+03 -3.1466982e+03 - -3.4398646e+02 1.2702355e+03 -3.1436665e+03 - -4.5081860e+02 1.2689970e+03 -3.1395964e+03 - -5.5171690e+02 1.2675248e+03 -3.1346341e+03 - -6.4600501e+02 1.2658917e+03 -3.1289361e+03 - -7.3334479e+02 1.2641722e+03 -3.1226554e+03 - -8.1367848e+02 1.2624392e+03 -3.1159324e+03 - -8.8715915e+02 1.2607609e+03 -3.1088892e+03 - -9.5408298e+02 1.2592004e+03 -3.1016280e+03 - -1.0148313e+03 1.2578146e+03 -3.0942315e+03 - -1.0698256e+03 1.2566555e+03 -3.0867655e+03 - -1.1194952e+03 1.2557696e+03 -3.0792812e+03 - -1.1642565e+03 1.2551993e+03 -3.0718188e+03 - -1.2045001e+03 1.2549829e+03 -3.0644095e+03 - -1.2405846e+03 1.2551555e+03 -3.0570787e+03 - -1.2728351e+03 1.2557484e+03 -3.0498474e+03 - -1.3015431e+03 1.2567900e+03 -3.0427336e+03 - -1.3269699e+03 1.2583052e+03 -3.0357542e+03 - -1.3493489e+03 1.2603155e+03 -3.0289251e+03 - -1.3688896e+03 1.2628387e+03 -3.0222622e+03 - -1.3857808e+03 1.2658888e+03 -3.0157817e+03 - -1.4001944e+03 1.2694752e+03 -3.0095004e+03 - -1.4122881e+03 1.2736027e+03 -3.0034358e+03 - -1.4222082e+03 1.2782711e+03 -2.9976058e+03 - -1.4300919e+03 1.2834748e+03 -2.9920292e+03 - -1.4360696e+03 1.2892021e+03 -2.9867252e+03 - -1.4402663e+03 1.2954355e+03 -2.9817130e+03 - -1.4428034e+03 1.3021509e+03 -2.9770123e+03 - -1.4437992e+03 1.3093174e+03 -2.9726424e+03 - -1.4433703e+03 1.3168974e+03 -2.9686220e+03 - -1.4416321e+03 1.3248464e+03 -2.9649694e+03 - -1.4386989e+03 1.3331129e+03 -2.9617017e+03 - -1.4346843e+03 1.3416383e+03 -2.9588348e+03 - -1.4297014e+03 1.3503573e+03 -2.9563830e+03 - -1.4238621e+03 1.3591984e+03 -2.9543590e+03 - -1.4172777e+03 1.3680833e+03 -2.9527733e+03 - -1.4100575e+03 1.3769283e+03 -2.9516345e+03 - -1.4023090e+03 1.3856444e+03 -2.9509488e+03 - -1.3941373e+03 1.3941373e+03 -2.9507198e+03 - -1.3856444e+03 1.4023090e+03 -2.9509488e+03 - -1.3769283e+03 1.4100575e+03 -2.9516345e+03 - -1.3680833e+03 1.4172777e+03 -2.9527733e+03 - -1.3591984e+03 1.4238621e+03 -2.9543590e+03 - -1.3503573e+03 1.4297014e+03 -2.9563830e+03 - -1.3416383e+03 1.4346843e+03 -2.9588348e+03 - -1.3331129e+03 1.4386989e+03 -2.9617017e+03 - -1.3248464e+03 1.4416321e+03 -2.9649694e+03 - -1.3168974e+03 1.4433703e+03 -2.9686220e+03 - -1.3093174e+03 1.4437992e+03 -2.9726424e+03 - -1.3021509e+03 1.4428034e+03 -2.9770123e+03 - -1.2954355e+03 1.4402663e+03 -2.9817130e+03 - -1.2892021e+03 1.4360696e+03 -2.9867252e+03 - -1.2834748e+03 1.4300919e+03 -2.9920292e+03 - -1.2782711e+03 1.4222082e+03 -2.9976058e+03 - -1.2736027e+03 1.4122881e+03 -3.0034358e+03 - -1.2694752e+03 1.4001944e+03 -3.0095004e+03 - -1.2658888e+03 1.3857808e+03 -3.0157817e+03 - -1.2628387e+03 1.3688896e+03 -3.0222622e+03 - -1.2603155e+03 1.3493489e+03 -3.0289251e+03 - -1.2583052e+03 1.3269699e+03 -3.0357542e+03 - -1.2567900e+03 1.3015431e+03 -3.0427336e+03 - -1.2557484e+03 1.2728351e+03 -3.0498474e+03 - -1.2551555e+03 1.2405846e+03 -3.0570787e+03 - -1.2549829e+03 1.2045001e+03 -3.0644095e+03 - -1.2551993e+03 1.1642565e+03 -3.0718188e+03 - -1.2557696e+03 1.1194952e+03 -3.0792812e+03 - -1.2566555e+03 1.0698256e+03 -3.0867655e+03 - -1.2578146e+03 1.0148313e+03 -3.0942315e+03 - -1.2592004e+03 9.5408298e+02 -3.1016280e+03 - -1.2607609e+03 8.8715915e+02 -3.1088892e+03 - -1.2624392e+03 8.1367848e+02 -3.1159324e+03 - -1.2641722e+03 7.3334479e+02 -3.1226554e+03 - -1.2658917e+03 6.4600501e+02 -3.1289361e+03 - -1.2675248e+03 5.5171690e+02 -3.1346341e+03 - -1.2689970e+03 4.5081860e+02 -3.1395964e+03 - -1.2702355e+03 3.4398646e+02 -3.1436665e+03 - -1.2711745e+03 2.3226398e+02 -3.1466982e+03 - -1.2717610e+03 1.1704474e+02 -3.1485706e+03 - -1.2719605e+03 2.4067136e-09 -3.1492041e+03 - -1.2717610e+03 -1.1704474e+02 -3.1485706e+03 - -1.2711745e+03 -2.3226398e+02 -3.1466982e+03 - -1.2702355e+03 -3.4398646e+02 -3.1436665e+03 - -1.2689970e+03 -4.5081860e+02 -3.1395964e+03 - -1.2675248e+03 -5.5171690e+02 -3.1346341e+03 - -1.2658917e+03 -6.4600501e+02 -3.1289361e+03 - -1.2641722e+03 -7.3334479e+02 -3.1226554e+03 - -1.2624392e+03 -8.1367848e+02 -3.1159324e+03 - -1.2607609e+03 -8.8715915e+02 -3.1088892e+03 - -1.2592004e+03 -9.5408298e+02 -3.1016280e+03 - -1.2578146e+03 -1.0148313e+03 -3.0942315e+03 - -1.2566555e+03 -1.0698256e+03 -3.0867655e+03 - -1.2557696e+03 -1.1194952e+03 -3.0792812e+03 - -1.2551993e+03 -1.1642565e+03 -3.0718188e+03 - -1.2549829e+03 -1.2045001e+03 -3.0644095e+03 - -1.2551555e+03 -1.2405846e+03 -3.0570787e+03 - -1.2557484e+03 -1.2728351e+03 -3.0498474e+03 - -1.2567900e+03 -1.3015431e+03 -3.0427336e+03 - -1.2583052e+03 -1.3269699e+03 -3.0357542e+03 - -1.2603155e+03 -1.3493489e+03 -3.0289251e+03 - -1.2628387e+03 -1.3688896e+03 -3.0222622e+03 - -1.2658888e+03 -1.3857808e+03 -3.0157817e+03 - -1.2694752e+03 -1.4001944e+03 -3.0095004e+03 - -1.2736027e+03 -1.4122881e+03 -3.0034358e+03 - -1.2782711e+03 -1.4222082e+03 -2.9976058e+03 - -1.2834748e+03 -1.4300919e+03 -2.9920292e+03 - -1.2892021e+03 -1.4360696e+03 -2.9867252e+03 - -1.2954355e+03 -1.4402663e+03 -2.9817130e+03 - -1.3021509e+03 -1.4428034e+03 -2.9770123e+03 - -1.3093174e+03 -1.4437992e+03 -2.9726424e+03 - -1.3168974e+03 -1.4433703e+03 -2.9686220e+03 - -1.3248464e+03 -1.4416321e+03 -2.9649694e+03 - -1.3331129e+03 -1.4386989e+03 -2.9617017e+03 - -1.3416383e+03 -1.4346843e+03 -2.9588348e+03 - -1.3503573e+03 -1.4297014e+03 -2.9563830e+03 - -1.3591984e+03 -1.4238621e+03 -2.9543590e+03 - -1.3680833e+03 -1.4172777e+03 -2.9527733e+03 - -1.3769283e+03 -1.4100575e+03 -2.9516345e+03 - -1.3856444e+03 -1.4023090e+03 -2.9509488e+03 - -1.3941373e+03 -1.3941373e+03 -2.9507198e+03 - -1.4023090e+03 -1.3856444e+03 -2.9509488e+03 - -1.4100575e+03 -1.3769283e+03 -2.9516345e+03 - -1.4172777e+03 -1.3680833e+03 -2.9527733e+03 - -1.4238621e+03 -1.3591984e+03 -2.9543590e+03 - -1.4297014e+03 -1.3503573e+03 -2.9563830e+03 - -1.4346843e+03 -1.3416383e+03 -2.9588348e+03 - -1.4386989e+03 -1.3331129e+03 -2.9617017e+03 - -1.4416321e+03 -1.3248464e+03 -2.9649694e+03 - -1.4433703e+03 -1.3168974e+03 -2.9686220e+03 - -1.4437992e+03 -1.3093174e+03 -2.9726424e+03 - -1.4428034e+03 -1.3021509e+03 -2.9770123e+03 - -1.4402663e+03 -1.2954355e+03 -2.9817130e+03 - -1.4360696e+03 -1.2892021e+03 -2.9867252e+03 - -1.4300919e+03 -1.2834748e+03 -2.9920292e+03 - -1.4222082e+03 -1.2782711e+03 -2.9976058e+03 - -1.4122881e+03 -1.2736027e+03 -3.0034358e+03 - -1.4001944e+03 -1.2694752e+03 -3.0095004e+03 - -1.3857808e+03 -1.2658888e+03 -3.0157817e+03 - -1.3688896e+03 -1.2628387e+03 -3.0222622e+03 - -1.3493489e+03 -1.2603155e+03 -3.0289251e+03 - -1.3269699e+03 -1.2583052e+03 -3.0357542e+03 - -1.3015431e+03 -1.2567900e+03 -3.0427336e+03 - -1.2728351e+03 -1.2557484e+03 -3.0498474e+03 - -1.2405846e+03 -1.2551555e+03 -3.0570787e+03 - -1.2045001e+03 -1.2549829e+03 -3.0644095e+03 - -1.1642565e+03 -1.2551993e+03 -3.0718188e+03 - -1.1194952e+03 -1.2557696e+03 -3.0792812e+03 - -1.0698256e+03 -1.2566555e+03 -3.0867655e+03 - -1.0148313e+03 -1.2578146e+03 -3.0942315e+03 - -9.5408298e+02 -1.2592004e+03 -3.1016280e+03 - -8.8715915e+02 -1.2607609e+03 -3.1088892e+03 - -8.1367848e+02 -1.2624392e+03 -3.1159324e+03 - -7.3334479e+02 -1.2641722e+03 -3.1226554e+03 - -6.4600501e+02 -1.2658917e+03 -3.1289361e+03 - -5.5171690e+02 -1.2675248e+03 -3.1346341e+03 - -4.5081860e+02 -1.2689970e+03 -3.1395964e+03 - -3.4398646e+02 -1.2702355e+03 -3.1436665e+03 - -2.3226398e+02 -1.2711745e+03 -3.1466982e+03 - -1.1704474e+02 -1.2717610e+03 -3.1485706e+03 - 4.8134273e-09 -1.2719605e+03 -3.1492041e+03 - 1.1704474e+02 -1.2717610e+03 -3.1485706e+03 - 2.3226398e+02 -1.2711745e+03 -3.1466982e+03 - 3.4398646e+02 -1.2702355e+03 -3.1436665e+03 - 4.5081860e+02 -1.2689970e+03 -3.1395964e+03 - 5.5171690e+02 -1.2675248e+03 -3.1346341e+03 - 6.4600501e+02 -1.2658917e+03 -3.1289361e+03 - 7.3334479e+02 -1.2641722e+03 -3.1226554e+03 - 8.1367848e+02 -1.2624392e+03 -3.1159324e+03 - 8.8715915e+02 -1.2607609e+03 -3.1088892e+03 - 9.5408298e+02 -1.2592004e+03 -3.1016280e+03 - 1.0148313e+03 -1.2578146e+03 -3.0942315e+03 - 1.0698256e+03 -1.2566555e+03 -3.0867655e+03 - 1.1194952e+03 -1.2557696e+03 -3.0792812e+03 - 1.1642565e+03 -1.2551993e+03 -3.0718188e+03 - 1.2045001e+03 -1.2549829e+03 -3.0644095e+03 - 1.2405846e+03 -1.2551555e+03 -3.0570787e+03 - 1.2728351e+03 -1.2557484e+03 -3.0498474e+03 - 1.3015431e+03 -1.2567900e+03 -3.0427336e+03 - 1.3269699e+03 -1.2583052e+03 -3.0357542e+03 - 1.3493489e+03 -1.2603155e+03 -3.0289251e+03 - 1.3688896e+03 -1.2628387e+03 -3.0222622e+03 - 1.3857808e+03 -1.2658888e+03 -3.0157817e+03 - 1.4001944e+03 -1.2694752e+03 -3.0095004e+03 - 1.4122881e+03 -1.2736027e+03 -3.0034358e+03 - 1.4222082e+03 -1.2782711e+03 -2.9976058e+03 - 1.4300919e+03 -1.2834748e+03 -2.9920292e+03 - 1.4360696e+03 -1.2892021e+03 -2.9867252e+03 - 1.4402663e+03 -1.2954355e+03 -2.9817130e+03 - 1.4428034e+03 -1.3021509e+03 -2.9770123e+03 - 1.4437992e+03 -1.3093174e+03 -2.9726424e+03 - 1.4433703e+03 -1.3168974e+03 -2.9686220e+03 - 1.4416321e+03 -1.3248464e+03 -2.9649694e+03 - 1.4386989e+03 -1.3331129e+03 -2.9617017e+03 - 1.4346843e+03 -1.3416383e+03 -2.9588348e+03 - 1.4297014e+03 -1.3503573e+03 -2.9563830e+03 - 1.4238621e+03 -1.3591984e+03 -2.9543590e+03 - 1.4172777e+03 -1.3680833e+03 -2.9527733e+03 - 1.4100575e+03 -1.3769283e+03 -2.9516345e+03 - 1.4023090e+03 -1.3856444e+03 -2.9509488e+03 - 1.3941373e+03 -1.3941373e+03 -2.9507198e+03 - 1.3856444e+03 -1.4023090e+03 -2.9509488e+03 - 1.3769283e+03 -1.4100575e+03 -2.9516345e+03 - 1.3680833e+03 -1.4172777e+03 -2.9527733e+03 - 1.3591984e+03 -1.4238621e+03 -2.9543590e+03 - 1.3503573e+03 -1.4297014e+03 -2.9563830e+03 - 1.3416383e+03 -1.4346843e+03 -2.9588348e+03 - 1.3331129e+03 -1.4386989e+03 -2.9617017e+03 - 1.3248464e+03 -1.4416321e+03 -2.9649694e+03 - 1.3168974e+03 -1.4433703e+03 -2.9686220e+03 - 1.3093174e+03 -1.4437992e+03 -2.9726424e+03 - 1.3021509e+03 -1.4428034e+03 -2.9770123e+03 - 1.2954355e+03 -1.4402663e+03 -2.9817130e+03 - 1.2892021e+03 -1.4360696e+03 -2.9867252e+03 - 1.2834748e+03 -1.4300919e+03 -2.9920292e+03 - 1.2782711e+03 -1.4222082e+03 -2.9976058e+03 - 1.2736027e+03 -1.4122881e+03 -3.0034358e+03 - 1.2694752e+03 -1.4001944e+03 -3.0095004e+03 - 1.2658888e+03 -1.3857808e+03 -3.0157817e+03 - 1.2628387e+03 -1.3688896e+03 -3.0222622e+03 - 1.2603155e+03 -1.3493489e+03 -3.0289251e+03 - 1.2583052e+03 -1.3269699e+03 -3.0357542e+03 - 1.2567900e+03 -1.3015431e+03 -3.0427336e+03 - 1.2557484e+03 -1.2728351e+03 -3.0498474e+03 - 1.2551555e+03 -1.2405846e+03 -3.0570787e+03 - 1.2549829e+03 -1.2045001e+03 -3.0644095e+03 - 1.2551993e+03 -1.1642565e+03 -3.0718188e+03 - 1.2557696e+03 -1.1194952e+03 -3.0792812e+03 - 1.2566555e+03 -1.0698256e+03 -3.0867655e+03 - 1.2578146e+03 -1.0148313e+03 -3.0942315e+03 - 1.2592004e+03 -9.5408298e+02 -3.1016280e+03 - 1.2607609e+03 -8.8715915e+02 -3.1088892e+03 - 1.2624392e+03 -8.1367848e+02 -3.1159324e+03 - 1.2641722e+03 -7.3334479e+02 -3.1226554e+03 - 1.2658917e+03 -6.4600501e+02 -3.1289361e+03 - 1.2675248e+03 -5.5171690e+02 -3.1346341e+03 - 1.2689970e+03 -4.5081860e+02 -3.1395964e+03 - 1.2702355e+03 -3.4398646e+02 -3.1436665e+03 - 1.2711745e+03 -2.3226398e+02 -3.1466982e+03 - 1.2717610e+03 -1.1704474e+02 -3.1485706e+03 - 1.2719605e+03 0.0000000e+00 -3.1492041e+03 - 1.2293687e+03 2.4067136e-09 -3.1770633e+03 - 1.2291617e+03 1.1220473e+02 -3.1764915e+03 - 1.2285537e+03 2.2274524e+02 -3.1747994e+03 - 1.2275827e+03 3.3008925e+02 -3.1720526e+03 - 1.2263066e+03 4.3294348e+02 -3.1683517e+03 - 1.2247977e+03 5.3031929e+02 -3.1638195e+03 - 1.2231354e+03 6.2155218e+02 -3.1585894e+03 - 1.2214011e+03 7.0628195e+02 -3.1527939e+03 - 1.2196731e+03 7.8440654e+02 -3.1465569e+03 - 1.2180243e+03 8.5602368e+02 -3.1399885e+03 - 1.2165205e+03 9.2137205e+02 -3.1331830e+03 - 1.2152204e+03 9.8077922e+02 -3.1262188e+03 - 1.2141755e+03 1.0346198e+03 -3.1191599e+03 - 1.2134312e+03 1.0832848e+03 -3.1120579e+03 - 1.2130272e+03 1.1271600e+03 -3.1049544e+03 - 1.2129985e+03 1.1666128e+03 -3.0978829e+03 - 1.2133759e+03 1.2019853e+03 -3.0908711e+03 - 1.2141865e+03 1.2335904e+03 -3.0839425e+03 - 1.2154536e+03 1.2617119e+03 -3.0771177e+03 - 1.2171974e+03 1.2866059e+03 -3.0704156e+03 - 1.2194343e+03 1.3085029e+03 -3.0638536e+03 - 1.2221774e+03 1.3276109e+03 -3.0574493e+03 - 1.2254359e+03 1.3441183e+03 -3.0512196e+03 - 1.2292150e+03 1.3581970e+03 -3.0451820e+03 - 1.2335154e+03 1.3700048e+03 -3.0393542e+03 - 1.2383333e+03 1.3796882e+03 -3.0337540e+03 - 1.2436600e+03 1.3873845e+03 -3.0283999e+03 - 1.2494812e+03 1.3932238e+03 -3.0233102e+03 - 1.2557772e+03 1.3973304e+03 -3.0185036e+03 - 1.2625225e+03 1.3998241e+03 -3.0139986e+03 - 1.2696855e+03 1.4008218e+03 -3.0098132e+03 - 1.2772283e+03 1.4004375e+03 -3.0059650e+03 - 1.2851069e+03 1.3987838e+03 -3.0024710e+03 - 1.2932708e+03 1.3959715e+03 -2.9993470e+03 - 1.3016633e+03 1.3921105e+03 -2.9966075e+03 - 1.3102216e+03 1.3873092e+03 -2.9942659e+03 - 1.3188770e+03 1.3816752e+03 -2.9923335e+03 - 1.3275550e+03 1.3753145e+03 -2.9908202e+03 - 1.3361760e+03 1.3683312e+03 -2.9897336e+03 - 1.3446551e+03 1.3608277e+03 -2.9890794e+03 - 1.3529034e+03 1.3529034e+03 -2.9888609e+03 - 1.3608277e+03 1.3446551e+03 -2.9890794e+03 - 1.3683312e+03 1.3361760e+03 -2.9897336e+03 - 1.3753145e+03 1.3275550e+03 -2.9908202e+03 - 1.3816752e+03 1.3188770e+03 -2.9923335e+03 - 1.3873092e+03 1.3102216e+03 -2.9942659e+03 - 1.3921105e+03 1.3016633e+03 -2.9966075e+03 - 1.3959715e+03 1.2932708e+03 -2.9993470e+03 - 1.3987838e+03 1.2851069e+03 -3.0024710e+03 - 1.4004375e+03 1.2772283e+03 -3.0059650e+03 - 1.4008218e+03 1.2696855e+03 -3.0098132e+03 - 1.3998241e+03 1.2625225e+03 -3.0139986e+03 - 1.3973304e+03 1.2557772e+03 -3.0185036e+03 - 1.3932238e+03 1.2494812e+03 -3.0233102e+03 - 1.3873845e+03 1.2436600e+03 -3.0283999e+03 - 1.3796882e+03 1.2383333e+03 -3.0337540e+03 - 1.3700048e+03 1.2335154e+03 -3.0393542e+03 - 1.3581970e+03 1.2292150e+03 -3.0451820e+03 - 1.3441183e+03 1.2254359e+03 -3.0512196e+03 - 1.3276109e+03 1.2221774e+03 -3.0574493e+03 - 1.3085029e+03 1.2194343e+03 -3.0638536e+03 - 1.2866059e+03 1.2171974e+03 -3.0704156e+03 - 1.2617119e+03 1.2154536e+03 -3.0771177e+03 - 1.2335904e+03 1.2141865e+03 -3.0839425e+03 - 1.2019853e+03 1.2133759e+03 -3.0908711e+03 - 1.1666128e+03 1.2129985e+03 -3.0978829e+03 - 1.1271600e+03 1.2130272e+03 -3.1049544e+03 - 1.0832848e+03 1.2134312e+03 -3.1120579e+03 - 1.0346198e+03 1.2141755e+03 -3.1191599e+03 - 9.8077922e+02 1.2152204e+03 -3.1262188e+03 - 9.2137205e+02 1.2165205e+03 -3.1331830e+03 - 8.5602368e+02 1.2180243e+03 -3.1399885e+03 - 7.8440654e+02 1.2196731e+03 -3.1465569e+03 - 7.0628195e+02 1.2214011e+03 -3.1527939e+03 - 6.2155218e+02 1.2231354e+03 -3.1585894e+03 - 5.3031929e+02 1.2247977e+03 -3.1638195e+03 - 4.3294348e+02 1.2263066e+03 -3.1683517e+03 - 3.3008925e+02 1.2275827e+03 -3.1720526e+03 - 2.2274524e+02 1.2285537e+03 -3.1747994e+03 - 1.1220473e+02 1.2291617e+03 -3.1764915e+03 - 0.0000000e+00 1.2293687e+03 -3.1770633e+03 - -1.1220473e+02 1.2291617e+03 -3.1764915e+03 - -2.2274524e+02 1.2285537e+03 -3.1747994e+03 - -3.3008925e+02 1.2275827e+03 -3.1720526e+03 - -4.3294348e+02 1.2263066e+03 -3.1683517e+03 - -5.3031929e+02 1.2247977e+03 -3.1638195e+03 - -6.2155218e+02 1.2231354e+03 -3.1585894e+03 - -7.0628195e+02 1.2214011e+03 -3.1527939e+03 - -7.8440654e+02 1.2196731e+03 -3.1465569e+03 - -8.5602368e+02 1.2180243e+03 -3.1399885e+03 - -9.2137205e+02 1.2165205e+03 -3.1331830e+03 - -9.8077922e+02 1.2152204e+03 -3.1262188e+03 - -1.0346198e+03 1.2141755e+03 -3.1191599e+03 - -1.0832848e+03 1.2134312e+03 -3.1120579e+03 - -1.1271600e+03 1.2130272e+03 -3.1049544e+03 - -1.1666128e+03 1.2129985e+03 -3.0978829e+03 - -1.2019853e+03 1.2133759e+03 -3.0908711e+03 - -1.2335904e+03 1.2141865e+03 -3.0839425e+03 - -1.2617119e+03 1.2154536e+03 -3.0771177e+03 - -1.2866059e+03 1.2171974e+03 -3.0704156e+03 - -1.3085029e+03 1.2194343e+03 -3.0638536e+03 - -1.3276109e+03 1.2221774e+03 -3.0574493e+03 - -1.3441183e+03 1.2254359e+03 -3.0512196e+03 - -1.3581970e+03 1.2292150e+03 -3.0451820e+03 - -1.3700048e+03 1.2335154e+03 -3.0393542e+03 - -1.3796882e+03 1.2383333e+03 -3.0337540e+03 - -1.3873845e+03 1.2436600e+03 -3.0283999e+03 - -1.3932238e+03 1.2494812e+03 -3.0233102e+03 - -1.3973304e+03 1.2557772e+03 -3.0185036e+03 - -1.3998241e+03 1.2625225e+03 -3.0139986e+03 - -1.4008218e+03 1.2696855e+03 -3.0098132e+03 - -1.4004375e+03 1.2772283e+03 -3.0059650e+03 - -1.3987838e+03 1.2851069e+03 -3.0024710e+03 - -1.3959715e+03 1.2932708e+03 -2.9993470e+03 - -1.3921105e+03 1.3016633e+03 -2.9966075e+03 - -1.3873092e+03 1.3102216e+03 -2.9942659e+03 - -1.3816752e+03 1.3188770e+03 -2.9923335e+03 - -1.3753145e+03 1.3275550e+03 -2.9908202e+03 - -1.3683312e+03 1.3361760e+03 -2.9897336e+03 - -1.3608277e+03 1.3446551e+03 -2.9890794e+03 - -1.3529034e+03 1.3529034e+03 -2.9888609e+03 - -1.3446551e+03 1.3608277e+03 -2.9890794e+03 - -1.3361760e+03 1.3683312e+03 -2.9897336e+03 - -1.3275550e+03 1.3753145e+03 -2.9908202e+03 - -1.3188770e+03 1.3816752e+03 -2.9923335e+03 - -1.3102216e+03 1.3873092e+03 -2.9942659e+03 - -1.3016633e+03 1.3921105e+03 -2.9966075e+03 - -1.2932708e+03 1.3959715e+03 -2.9993470e+03 - -1.2851069e+03 1.3987838e+03 -3.0024710e+03 - -1.2772283e+03 1.4004375e+03 -3.0059650e+03 - -1.2696855e+03 1.4008218e+03 -3.0098132e+03 - -1.2625225e+03 1.3998241e+03 -3.0139986e+03 - -1.2557772e+03 1.3973304e+03 -3.0185036e+03 - -1.2494812e+03 1.3932238e+03 -3.0233102e+03 - -1.2436600e+03 1.3873845e+03 -3.0283999e+03 - -1.2383333e+03 1.3796882e+03 -3.0337540e+03 - -1.2335154e+03 1.3700048e+03 -3.0393542e+03 - -1.2292150e+03 1.3581970e+03 -3.0451820e+03 - -1.2254359e+03 1.3441183e+03 -3.0512196e+03 - -1.2221774e+03 1.3276109e+03 -3.0574493e+03 - -1.2194343e+03 1.3085029e+03 -3.0638536e+03 - -1.2171974e+03 1.2866059e+03 -3.0704156e+03 - -1.2154536e+03 1.2617119e+03 -3.0771177e+03 - -1.2141865e+03 1.2335904e+03 -3.0839425e+03 - -1.2133759e+03 1.2019853e+03 -3.0908711e+03 - -1.2129985e+03 1.1666128e+03 -3.0978829e+03 - -1.2130272e+03 1.1271600e+03 -3.1049544e+03 - -1.2134312e+03 1.0832848e+03 -3.1120579e+03 - -1.2141755e+03 1.0346198e+03 -3.1191599e+03 - -1.2152204e+03 9.8077922e+02 -3.1262188e+03 - -1.2165205e+03 9.2137205e+02 -3.1331830e+03 - -1.2180243e+03 8.5602368e+02 -3.1399885e+03 - -1.2196731e+03 7.8440654e+02 -3.1465569e+03 - -1.2214011e+03 7.0628195e+02 -3.1527939e+03 - -1.2231354e+03 6.2155218e+02 -3.1585894e+03 - -1.2247977e+03 5.3031929e+02 -3.1638195e+03 - -1.2263066e+03 4.3294348e+02 -3.1683517e+03 - -1.2275827e+03 3.3008925e+02 -3.1720526e+03 - -1.2285537e+03 2.2274524e+02 -3.1747994e+03 - -1.2291617e+03 1.1220473e+02 -3.1764915e+03 - -1.2293687e+03 2.4067136e-09 -3.1770633e+03 - -1.2291617e+03 -1.1220473e+02 -3.1764915e+03 - -1.2285537e+03 -2.2274524e+02 -3.1747994e+03 - -1.2275827e+03 -3.3008925e+02 -3.1720526e+03 - -1.2263066e+03 -4.3294348e+02 -3.1683517e+03 - -1.2247977e+03 -5.3031929e+02 -3.1638195e+03 - -1.2231354e+03 -6.2155218e+02 -3.1585894e+03 - -1.2214011e+03 -7.0628195e+02 -3.1527939e+03 - -1.2196731e+03 -7.8440654e+02 -3.1465569e+03 - -1.2180243e+03 -8.5602368e+02 -3.1399885e+03 - -1.2165205e+03 -9.2137205e+02 -3.1331830e+03 - -1.2152204e+03 -9.8077922e+02 -3.1262188e+03 - -1.2141755e+03 -1.0346198e+03 -3.1191599e+03 - -1.2134312e+03 -1.0832848e+03 -3.1120579e+03 - -1.2130272e+03 -1.1271600e+03 -3.1049544e+03 - -1.2129985e+03 -1.1666128e+03 -3.0978829e+03 - -1.2133759e+03 -1.2019853e+03 -3.0908711e+03 - -1.2141865e+03 -1.2335904e+03 -3.0839425e+03 - -1.2154536e+03 -1.2617119e+03 -3.0771177e+03 - -1.2171974e+03 -1.2866059e+03 -3.0704156e+03 - -1.2194343e+03 -1.3085029e+03 -3.0638536e+03 - -1.2221774e+03 -1.3276109e+03 -3.0574493e+03 - -1.2254359e+03 -1.3441183e+03 -3.0512196e+03 - -1.2292150e+03 -1.3581970e+03 -3.0451820e+03 - -1.2335154e+03 -1.3700048e+03 -3.0393542e+03 - -1.2383333e+03 -1.3796882e+03 -3.0337540e+03 - -1.2436600e+03 -1.3873845e+03 -3.0283999e+03 - -1.2494812e+03 -1.3932238e+03 -3.0233102e+03 - -1.2557772e+03 -1.3973304e+03 -3.0185036e+03 - -1.2625225e+03 -1.3998241e+03 -3.0139986e+03 - -1.2696855e+03 -1.4008218e+03 -3.0098132e+03 - -1.2772283e+03 -1.4004375e+03 -3.0059650e+03 - -1.2851069e+03 -1.3987838e+03 -3.0024710e+03 - -1.2932708e+03 -1.3959715e+03 -2.9993470e+03 - -1.3016633e+03 -1.3921105e+03 -2.9966075e+03 - -1.3102216e+03 -1.3873092e+03 -2.9942659e+03 - -1.3188770e+03 -1.3816752e+03 -2.9923335e+03 - -1.3275550e+03 -1.3753145e+03 -2.9908202e+03 - -1.3361760e+03 -1.3683312e+03 -2.9897336e+03 - -1.3446551e+03 -1.3608277e+03 -2.9890794e+03 - -1.3529034e+03 -1.3529034e+03 -2.9888609e+03 - -1.3608277e+03 -1.3446551e+03 -2.9890794e+03 - -1.3683312e+03 -1.3361760e+03 -2.9897336e+03 - -1.3753145e+03 -1.3275550e+03 -2.9908202e+03 - -1.3816752e+03 -1.3188770e+03 -2.9923335e+03 - -1.3873092e+03 -1.3102216e+03 -2.9942659e+03 - -1.3921105e+03 -1.3016633e+03 -2.9966075e+03 - -1.3959715e+03 -1.2932708e+03 -2.9993470e+03 - -1.3987838e+03 -1.2851069e+03 -3.0024710e+03 - -1.4004375e+03 -1.2772283e+03 -3.0059650e+03 - -1.4008218e+03 -1.2696855e+03 -3.0098132e+03 - -1.3998241e+03 -1.2625225e+03 -3.0139986e+03 - -1.3973304e+03 -1.2557772e+03 -3.0185036e+03 - -1.3932238e+03 -1.2494812e+03 -3.0233102e+03 - -1.3873845e+03 -1.2436600e+03 -3.0283999e+03 - -1.3796882e+03 -1.2383333e+03 -3.0337540e+03 - -1.3700048e+03 -1.2335154e+03 -3.0393542e+03 - -1.3581970e+03 -1.2292150e+03 -3.0451820e+03 - -1.3441183e+03 -1.2254359e+03 -3.0512196e+03 - -1.3276109e+03 -1.2221774e+03 -3.0574493e+03 - -1.3085029e+03 -1.2194343e+03 -3.0638536e+03 - -1.2866059e+03 -1.2171974e+03 -3.0704156e+03 - -1.2617119e+03 -1.2154536e+03 -3.0771177e+03 - -1.2335904e+03 -1.2141865e+03 -3.0839425e+03 - -1.2019853e+03 -1.2133759e+03 -3.0908711e+03 - -1.1666128e+03 -1.2129985e+03 -3.0978829e+03 - -1.1271600e+03 -1.2130272e+03 -3.1049544e+03 - -1.0832848e+03 -1.2134312e+03 -3.1120579e+03 - -1.0346198e+03 -1.2141755e+03 -3.1191599e+03 - -9.8077922e+02 -1.2152204e+03 -3.1262188e+03 - -9.2137205e+02 -1.2165205e+03 -3.1331830e+03 - -8.5602368e+02 -1.2180243e+03 -3.1399885e+03 - -7.8440654e+02 -1.2196731e+03 -3.1465569e+03 - -7.0628195e+02 -1.2214011e+03 -3.1527939e+03 - -6.2155218e+02 -1.2231354e+03 -3.1585894e+03 - -5.3031929e+02 -1.2247977e+03 -3.1638195e+03 - -4.3294348e+02 -1.2263066e+03 -3.1683517e+03 - -3.3008925e+02 -1.2275827e+03 -3.1720526e+03 - -2.2274524e+02 -1.2285537e+03 -3.1747994e+03 - -1.1220473e+02 -1.2291617e+03 -3.1764915e+03 - 0.0000000e+00 -1.2293687e+03 -3.1770633e+03 - 1.1220473e+02 -1.2291617e+03 -3.1764915e+03 - 2.2274524e+02 -1.2285537e+03 -3.1747994e+03 - 3.3008925e+02 -1.2275827e+03 -3.1720526e+03 - 4.3294348e+02 -1.2263066e+03 -3.1683517e+03 - 5.3031929e+02 -1.2247977e+03 -3.1638195e+03 - 6.2155218e+02 -1.2231354e+03 -3.1585894e+03 - 7.0628195e+02 -1.2214011e+03 -3.1527939e+03 - 7.8440654e+02 -1.2196731e+03 -3.1465569e+03 - 8.5602368e+02 -1.2180243e+03 -3.1399885e+03 - 9.2137205e+02 -1.2165205e+03 -3.1331830e+03 - 9.8077922e+02 -1.2152204e+03 -3.1262188e+03 - 1.0346198e+03 -1.2141755e+03 -3.1191599e+03 - 1.0832848e+03 -1.2134312e+03 -3.1120579e+03 - 1.1271600e+03 -1.2130272e+03 -3.1049544e+03 - 1.1666128e+03 -1.2129985e+03 -3.0978829e+03 - 1.2019853e+03 -1.2133759e+03 -3.0908711e+03 - 1.2335904e+03 -1.2141865e+03 -3.0839425e+03 - 1.2617119e+03 -1.2154536e+03 -3.0771177e+03 - 1.2866059e+03 -1.2171974e+03 -3.0704156e+03 - 1.3085029e+03 -1.2194343e+03 -3.0638536e+03 - 1.3276109e+03 -1.2221774e+03 -3.0574493e+03 - 1.3441183e+03 -1.2254359e+03 -3.0512196e+03 - 1.3581970e+03 -1.2292150e+03 -3.0451820e+03 - 1.3700048e+03 -1.2335154e+03 -3.0393542e+03 - 1.3796882e+03 -1.2383333e+03 -3.0337540e+03 - 1.3873845e+03 -1.2436600e+03 -3.0283999e+03 - 1.3932238e+03 -1.2494812e+03 -3.0233102e+03 - 1.3973304e+03 -1.2557772e+03 -3.0185036e+03 - 1.3998241e+03 -1.2625225e+03 -3.0139986e+03 - 1.4008218e+03 -1.2696855e+03 -3.0098132e+03 - 1.4004375e+03 -1.2772283e+03 -3.0059650e+03 - 1.3987838e+03 -1.2851069e+03 -3.0024710e+03 - 1.3959715e+03 -1.2932708e+03 -2.9993470e+03 - 1.3921105e+03 -1.3016633e+03 -2.9966075e+03 - 1.3873092e+03 -1.3102216e+03 -2.9942659e+03 - 1.3816752e+03 -1.3188770e+03 -2.9923335e+03 - 1.3753145e+03 -1.3275550e+03 -2.9908202e+03 - 1.3683312e+03 -1.3361760e+03 -2.9897336e+03 - 1.3608277e+03 -1.3446551e+03 -2.9890794e+03 - 1.3529034e+03 -1.3529034e+03 -2.9888609e+03 - 1.3446551e+03 -1.3608277e+03 -2.9890794e+03 - 1.3361760e+03 -1.3683312e+03 -2.9897336e+03 - 1.3275550e+03 -1.3753145e+03 -2.9908202e+03 - 1.3188770e+03 -1.3816752e+03 -2.9923335e+03 - 1.3102216e+03 -1.3873092e+03 -2.9942659e+03 - 1.3016633e+03 -1.3921105e+03 -2.9966075e+03 - 1.2932708e+03 -1.3959715e+03 -2.9993470e+03 - 1.2851069e+03 -1.3987838e+03 -3.0024710e+03 - 1.2772283e+03 -1.4004375e+03 -3.0059650e+03 - 1.2696855e+03 -1.4008218e+03 -3.0098132e+03 - 1.2625225e+03 -1.3998241e+03 -3.0139986e+03 - 1.2557772e+03 -1.3973304e+03 -3.0185036e+03 - 1.2494812e+03 -1.3932238e+03 -3.0233102e+03 - 1.2436600e+03 -1.3873845e+03 -3.0283999e+03 - 1.2383333e+03 -1.3796882e+03 -3.0337540e+03 - 1.2335154e+03 -1.3700048e+03 -3.0393542e+03 - 1.2292150e+03 -1.3581970e+03 -3.0451820e+03 - 1.2254359e+03 -1.3441183e+03 -3.0512196e+03 - 1.2221774e+03 -1.3276109e+03 -3.0574493e+03 - 1.2194343e+03 -1.3085029e+03 -3.0638536e+03 - 1.2171974e+03 -1.2866059e+03 -3.0704156e+03 - 1.2154536e+03 -1.2617119e+03 -3.0771177e+03 - 1.2141865e+03 -1.2335904e+03 -3.0839425e+03 - 1.2133759e+03 -1.2019853e+03 -3.0908711e+03 - 1.2129985e+03 -1.1666128e+03 -3.0978829e+03 - 1.2130272e+03 -1.1271600e+03 -3.1049544e+03 - 1.2134312e+03 -1.0832848e+03 -3.1120579e+03 - 1.2141755e+03 -1.0346198e+03 -3.1191599e+03 - 1.2152204e+03 -9.8077922e+02 -3.1262188e+03 - 1.2165205e+03 -9.2137205e+02 -3.1331830e+03 - 1.2180243e+03 -8.5602368e+02 -3.1399885e+03 - 1.2196731e+03 -7.8440654e+02 -3.1465569e+03 - 1.2214011e+03 -7.0628195e+02 -3.1527939e+03 - 1.2231354e+03 -6.2155218e+02 -3.1585894e+03 - 1.2247977e+03 -5.3031929e+02 -3.1638195e+03 - 1.2263066e+03 -4.3294348e+02 -3.1683517e+03 - 1.2275827e+03 -3.3008925e+02 -3.1720526e+03 - 1.2285537e+03 -2.2274524e+02 -3.1747994e+03 - 1.2291617e+03 -1.1220473e+02 -3.1764915e+03 - 1.2293687e+03 0.0000000e+00 -3.1770633e+03 - 1.1867507e+03 0.0000000e+00 -3.2037598e+03 - 1.1865401e+03 1.0752068e+02 -3.2032428e+03 - 1.1859220e+03 2.1351871e+02 -3.2017108e+03 - 1.1849364e+03 3.1658511e+02 -3.1992186e+03 - 1.1836444e+03 4.1551810e+02 -3.1958501e+03 - 1.1821220e+03 5.0938244e+02 -3.1917091e+03 - 1.1804534e+03 5.9753023e+02 -3.1869096e+03 - 1.1787243e+03 6.7958780e+02 -3.1815666e+03 - 1.1770172e+03 7.5541889e+02 -3.1757892e+03 - 1.1754084e+03 8.2507563e+02 -3.1696764e+03 - 1.1739661e+03 8.8874741e+02 -3.1633148e+03 - 1.1727502e+03 9.4671430e+02 -3.1567780e+03 - 1.1718123e+03 9.9930849e+02 -3.1501276e+03 - 1.1711967e+03 1.0468849e+03 -3.1434143e+03 - 1.1709412e+03 1.0898003e+03 -3.1366803e+03 - 1.1710780e+03 1.1283995e+03 -3.1299603e+03 - 1.1716346e+03 1.1630071e+03 -3.1232837e+03 - 1.1726340e+03 1.1939237e+03 -3.1166755e+03 - 1.1740956e+03 1.2214241e+03 -3.1101582e+03 - 1.1760350e+03 1.2457583e+03 -3.1037520e+03 - 1.1784645e+03 1.2671529e+03 -3.0974759e+03 - 1.1813927e+03 1.2858133e+03 -3.0913481e+03 - 1.1848247e+03 1.3019266e+03 -3.0853865e+03 - 1.1887617e+03 1.3156636e+03 -3.0796087e+03 - 1.1932009e+03 1.3271817e+03 -3.0740326e+03 - 1.1981352e+03 1.3366268e+03 -3.0686759e+03 - 1.2035530e+03 1.3441358e+03 -3.0635565e+03 - 1.2094379e+03 1.3498376e+03 -3.0586922e+03 - 1.2157682e+03 1.3538556e+03 -3.0541008e+03 - 1.2225171e+03 1.3563079e+03 -3.0497997e+03 - 1.2296524e+03 1.3573093e+03 -3.0458059e+03 - 1.2371361e+03 1.3569714e+03 -3.0421360e+03 - 1.2449247e+03 1.3554037e+03 -3.0388055e+03 - 1.2529688e+03 1.3527136e+03 -3.0358292e+03 - 1.2612136e+03 1.3490070e+03 -3.0332205e+03 - 1.2695986e+03 1.3443883e+03 -3.0309915e+03 - 1.2780580e+03 1.3389603e+03 -3.0291527e+03 - 1.2865206e+03 1.3328241e+03 -3.0277131e+03 - 1.2949108e+03 1.3260790e+03 -3.0266797e+03 - 1.3031481e+03 1.3188221e+03 -3.0260576e+03 - 1.3111479e+03 1.3111479e+03 -3.0258498e+03 - 1.3188221e+03 1.3031481e+03 -3.0260576e+03 - 1.3260790e+03 1.2949108e+03 -3.0266797e+03 - 1.3328241e+03 1.2865206e+03 -3.0277131e+03 - 1.3389603e+03 1.2780580e+03 -3.0291527e+03 - 1.3443883e+03 1.2695986e+03 -3.0309915e+03 - 1.3490070e+03 1.2612136e+03 -3.0332205e+03 - 1.3527136e+03 1.2529688e+03 -3.0358292e+03 - 1.3554037e+03 1.2449247e+03 -3.0388055e+03 - 1.3569714e+03 1.2371361e+03 -3.0421360e+03 - 1.3573093e+03 1.2296524e+03 -3.0458059e+03 - 1.3563079e+03 1.2225171e+03 -3.0497997e+03 - 1.3538556e+03 1.2157682e+03 -3.0541008e+03 - 1.3498376e+03 1.2094379e+03 -3.0586922e+03 - 1.3441358e+03 1.2035530e+03 -3.0635565e+03 - 1.3366268e+03 1.1981352e+03 -3.0686759e+03 - 1.3271817e+03 1.1932009e+03 -3.0740326e+03 - 1.3156636e+03 1.1887617e+03 -3.0796087e+03 - 1.3019266e+03 1.1848247e+03 -3.0853865e+03 - 1.2858133e+03 1.1813927e+03 -3.0913481e+03 - 1.2671529e+03 1.1784645e+03 -3.0974759e+03 - 1.2457583e+03 1.1760350e+03 -3.1037520e+03 - 1.2214241e+03 1.1740956e+03 -3.1101582e+03 - 1.1939237e+03 1.1726340e+03 -3.1166755e+03 - 1.1630071e+03 1.1716346e+03 -3.1232837e+03 - 1.1283995e+03 1.1710780e+03 -3.1299603e+03 - 1.0898003e+03 1.1709412e+03 -3.1366803e+03 - 1.0468849e+03 1.1711967e+03 -3.1434143e+03 - 9.9930849e+02 1.1718123e+03 -3.1501276e+03 - 9.4671430e+02 1.1727502e+03 -3.1567780e+03 - 8.8874741e+02 1.1739661e+03 -3.1633148e+03 - 8.2507563e+02 1.1754084e+03 -3.1696764e+03 - 7.5541889e+02 1.1770172e+03 -3.1757892e+03 - 6.7958780e+02 1.1787243e+03 -3.1815666e+03 - 5.9753023e+02 1.1804534e+03 -3.1869096e+03 - 5.0938244e+02 1.1821220e+03 -3.1917091e+03 - 4.1551810e+02 1.1836444e+03 -3.1958501e+03 - 3.1658511e+02 1.1849364e+03 -3.1992186e+03 - 2.1351871e+02 1.1859220e+03 -3.2017108e+03 - 1.0752068e+02 1.1865401e+03 -3.2032428e+03 - 4.8134273e-09 1.1867507e+03 -3.2037598e+03 - -1.0752068e+02 1.1865401e+03 -3.2032428e+03 - -2.1351871e+02 1.1859220e+03 -3.2017108e+03 - -3.1658511e+02 1.1849364e+03 -3.1992186e+03 - -4.1551810e+02 1.1836444e+03 -3.1958501e+03 - -5.0938244e+02 1.1821220e+03 -3.1917091e+03 - -5.9753023e+02 1.1804534e+03 -3.1869096e+03 - -6.7958780e+02 1.1787243e+03 -3.1815666e+03 - -7.5541889e+02 1.1770172e+03 -3.1757892e+03 - -8.2507563e+02 1.1754084e+03 -3.1696764e+03 - -8.8874741e+02 1.1739661e+03 -3.1633148e+03 - -9.4671430e+02 1.1727502e+03 -3.1567780e+03 - -9.9930849e+02 1.1718123e+03 -3.1501276e+03 - -1.0468849e+03 1.1711967e+03 -3.1434143e+03 - -1.0898003e+03 1.1709412e+03 -3.1366803e+03 - -1.1283995e+03 1.1710780e+03 -3.1299603e+03 - -1.1630071e+03 1.1716346e+03 -3.1232837e+03 - -1.1939237e+03 1.1726340e+03 -3.1166755e+03 - -1.2214241e+03 1.1740956e+03 -3.1101582e+03 - -1.2457583e+03 1.1760350e+03 -3.1037520e+03 - -1.2671529e+03 1.1784645e+03 -3.0974759e+03 - -1.2858133e+03 1.1813927e+03 -3.0913481e+03 - -1.3019266e+03 1.1848247e+03 -3.0853865e+03 - -1.3156636e+03 1.1887617e+03 -3.0796087e+03 - -1.3271817e+03 1.1932009e+03 -3.0740326e+03 - -1.3366268e+03 1.1981352e+03 -3.0686759e+03 - -1.3441358e+03 1.2035530e+03 -3.0635565e+03 - -1.3498376e+03 1.2094379e+03 -3.0586922e+03 - -1.3538556e+03 1.2157682e+03 -3.0541008e+03 - -1.3563079e+03 1.2225171e+03 -3.0497997e+03 - -1.3573093e+03 1.2296524e+03 -3.0458059e+03 - -1.3569714e+03 1.2371361e+03 -3.0421360e+03 - -1.3554037e+03 1.2449247e+03 -3.0388055e+03 - -1.3527136e+03 1.2529688e+03 -3.0358292e+03 - -1.3490070e+03 1.2612136e+03 -3.0332205e+03 - -1.3443883e+03 1.2695986e+03 -3.0309915e+03 - -1.3389603e+03 1.2780580e+03 -3.0291527e+03 - -1.3328241e+03 1.2865206e+03 -3.0277131e+03 - -1.3260790e+03 1.2949108e+03 -3.0266797e+03 - -1.3188221e+03 1.3031481e+03 -3.0260576e+03 - -1.3111479e+03 1.3111479e+03 -3.0258498e+03 - -1.3031481e+03 1.3188221e+03 -3.0260576e+03 - -1.2949108e+03 1.3260790e+03 -3.0266797e+03 - -1.2865206e+03 1.3328241e+03 -3.0277131e+03 - -1.2780580e+03 1.3389603e+03 -3.0291527e+03 - -1.2695986e+03 1.3443883e+03 -3.0309915e+03 - -1.2612136e+03 1.3490070e+03 -3.0332205e+03 - -1.2529688e+03 1.3527136e+03 -3.0358292e+03 - -1.2449247e+03 1.3554037e+03 -3.0388055e+03 - -1.2371361e+03 1.3569714e+03 -3.0421360e+03 - -1.2296524e+03 1.3573093e+03 -3.0458059e+03 - -1.2225171e+03 1.3563079e+03 -3.0497997e+03 - -1.2157682e+03 1.3538556e+03 -3.0541008e+03 - -1.2094379e+03 1.3498376e+03 -3.0586922e+03 - -1.2035530e+03 1.3441358e+03 -3.0635565e+03 - -1.1981352e+03 1.3366268e+03 -3.0686759e+03 - -1.1932009e+03 1.3271817e+03 -3.0740326e+03 - -1.1887617e+03 1.3156636e+03 -3.0796087e+03 - -1.1848247e+03 1.3019266e+03 -3.0853865e+03 - -1.1813927e+03 1.2858133e+03 -3.0913481e+03 - -1.1784645e+03 1.2671529e+03 -3.0974759e+03 - -1.1760350e+03 1.2457583e+03 -3.1037520e+03 - -1.1740956e+03 1.2214241e+03 -3.1101582e+03 - -1.1726340e+03 1.1939237e+03 -3.1166755e+03 - -1.1716346e+03 1.1630071e+03 -3.1232837e+03 - -1.1710780e+03 1.1283995e+03 -3.1299603e+03 - -1.1709412e+03 1.0898003e+03 -3.1366803e+03 - -1.1711967e+03 1.0468849e+03 -3.1434143e+03 - -1.1718123e+03 9.9930849e+02 -3.1501276e+03 - -1.1727502e+03 9.4671430e+02 -3.1567780e+03 - -1.1739661e+03 8.8874741e+02 -3.1633148e+03 - -1.1754084e+03 8.2507563e+02 -3.1696764e+03 - -1.1770172e+03 7.5541889e+02 -3.1757892e+03 - -1.1787243e+03 6.7958780e+02 -3.1815666e+03 - -1.1804534e+03 5.9753023e+02 -3.1869096e+03 - -1.1821220e+03 5.0938244e+02 -3.1917091e+03 - -1.1836444e+03 4.1551810e+02 -3.1958501e+03 - -1.1849364e+03 3.1658511e+02 -3.1992186e+03 - -1.1859220e+03 2.1351871e+02 -3.2017108e+03 - -1.1865401e+03 1.0752068e+02 -3.2032428e+03 - -1.1867507e+03 0.0000000e+00 -3.2037598e+03 - -1.1865401e+03 -1.0752068e+02 -3.2032428e+03 - -1.1859220e+03 -2.1351871e+02 -3.2017108e+03 - -1.1849364e+03 -3.1658511e+02 -3.1992186e+03 - -1.1836444e+03 -4.1551810e+02 -3.1958501e+03 - -1.1821220e+03 -5.0938244e+02 -3.1917091e+03 - -1.1804534e+03 -5.9753023e+02 -3.1869096e+03 - -1.1787243e+03 -6.7958780e+02 -3.1815666e+03 - -1.1770172e+03 -7.5541889e+02 -3.1757892e+03 - -1.1754084e+03 -8.2507563e+02 -3.1696764e+03 - -1.1739661e+03 -8.8874741e+02 -3.1633148e+03 - -1.1727502e+03 -9.4671430e+02 -3.1567780e+03 - -1.1718123e+03 -9.9930849e+02 -3.1501276e+03 - -1.1711967e+03 -1.0468849e+03 -3.1434143e+03 - -1.1709412e+03 -1.0898003e+03 -3.1366803e+03 - -1.1710780e+03 -1.1283995e+03 -3.1299603e+03 - -1.1716346e+03 -1.1630071e+03 -3.1232837e+03 - -1.1726340e+03 -1.1939237e+03 -3.1166755e+03 - -1.1740956e+03 -1.2214241e+03 -3.1101582e+03 - -1.1760350e+03 -1.2457583e+03 -3.1037520e+03 - -1.1784645e+03 -1.2671529e+03 -3.0974759e+03 - -1.1813927e+03 -1.2858133e+03 -3.0913481e+03 - -1.1848247e+03 -1.3019266e+03 -3.0853865e+03 - -1.1887617e+03 -1.3156636e+03 -3.0796087e+03 - -1.1932009e+03 -1.3271817e+03 -3.0740326e+03 - -1.1981352e+03 -1.3366268e+03 -3.0686759e+03 - -1.2035530e+03 -1.3441358e+03 -3.0635565e+03 - -1.2094379e+03 -1.3498376e+03 -3.0586922e+03 - -1.2157682e+03 -1.3538556e+03 -3.0541008e+03 - -1.2225171e+03 -1.3563079e+03 -3.0497997e+03 - -1.2296524e+03 -1.3573093e+03 -3.0458059e+03 - -1.2371361e+03 -1.3569714e+03 -3.0421360e+03 - -1.2449247e+03 -1.3554037e+03 -3.0388055e+03 - -1.2529688e+03 -1.3527136e+03 -3.0358292e+03 - -1.2612136e+03 -1.3490070e+03 -3.0332205e+03 - -1.2695986e+03 -1.3443883e+03 -3.0309915e+03 - -1.2780580e+03 -1.3389603e+03 -3.0291527e+03 - -1.2865206e+03 -1.3328241e+03 -3.0277131e+03 - -1.2949108e+03 -1.3260790e+03 -3.0266797e+03 - -1.3031481e+03 -1.3188221e+03 -3.0260576e+03 - -1.3111479e+03 -1.3111479e+03 -3.0258498e+03 - -1.3188221e+03 -1.3031481e+03 -3.0260576e+03 - -1.3260790e+03 -1.2949108e+03 -3.0266797e+03 - -1.3328241e+03 -1.2865206e+03 -3.0277131e+03 - -1.3389603e+03 -1.2780580e+03 -3.0291527e+03 - -1.3443883e+03 -1.2695986e+03 -3.0309915e+03 - -1.3490070e+03 -1.2612136e+03 -3.0332205e+03 - -1.3527136e+03 -1.2529688e+03 -3.0358292e+03 - -1.3554037e+03 -1.2449247e+03 -3.0388055e+03 - -1.3569714e+03 -1.2371361e+03 -3.0421360e+03 - -1.3573093e+03 -1.2296524e+03 -3.0458059e+03 - -1.3563079e+03 -1.2225171e+03 -3.0497997e+03 - -1.3538556e+03 -1.2157682e+03 -3.0541008e+03 - -1.3498376e+03 -1.2094379e+03 -3.0586922e+03 - -1.3441358e+03 -1.2035530e+03 -3.0635565e+03 - -1.3366268e+03 -1.1981352e+03 -3.0686759e+03 - -1.3271817e+03 -1.1932009e+03 -3.0740326e+03 - -1.3156636e+03 -1.1887617e+03 -3.0796087e+03 - -1.3019266e+03 -1.1848247e+03 -3.0853865e+03 - -1.2858133e+03 -1.1813927e+03 -3.0913481e+03 - -1.2671529e+03 -1.1784645e+03 -3.0974759e+03 - -1.2457583e+03 -1.1760350e+03 -3.1037520e+03 - -1.2214241e+03 -1.1740956e+03 -3.1101582e+03 - -1.1939237e+03 -1.1726340e+03 -3.1166755e+03 - -1.1630071e+03 -1.1716346e+03 -3.1232837e+03 - -1.1283995e+03 -1.1710780e+03 -3.1299603e+03 - -1.0898003e+03 -1.1709412e+03 -3.1366803e+03 - -1.0468849e+03 -1.1711967e+03 -3.1434143e+03 - -9.9930849e+02 -1.1718123e+03 -3.1501276e+03 - -9.4671430e+02 -1.1727502e+03 -3.1567780e+03 - -8.8874741e+02 -1.1739661e+03 -3.1633148e+03 - -8.2507563e+02 -1.1754084e+03 -3.1696764e+03 - -7.5541889e+02 -1.1770172e+03 -3.1757892e+03 - -6.7958780e+02 -1.1787243e+03 -3.1815666e+03 - -5.9753023e+02 -1.1804534e+03 -3.1869096e+03 - -5.0938244e+02 -1.1821220e+03 -3.1917091e+03 - -4.1551810e+02 -1.1836444e+03 -3.1958501e+03 - -3.1658511e+02 -1.1849364e+03 -3.1992186e+03 - -2.1351871e+02 -1.1859220e+03 -3.2017108e+03 - -1.0752068e+02 -1.1865401e+03 -3.2032428e+03 - -4.8134273e-09 -1.1867507e+03 -3.2037598e+03 - 1.0752068e+02 -1.1865401e+03 -3.2032428e+03 - 2.1351871e+02 -1.1859220e+03 -3.2017108e+03 - 3.1658511e+02 -1.1849364e+03 -3.1992186e+03 - 4.1551810e+02 -1.1836444e+03 -3.1958501e+03 - 5.0938244e+02 -1.1821220e+03 -3.1917091e+03 - 5.9753023e+02 -1.1804534e+03 -3.1869096e+03 - 6.7958780e+02 -1.1787243e+03 -3.1815666e+03 - 7.5541889e+02 -1.1770172e+03 -3.1757892e+03 - 8.2507563e+02 -1.1754084e+03 -3.1696764e+03 - 8.8874741e+02 -1.1739661e+03 -3.1633148e+03 - 9.4671430e+02 -1.1727502e+03 -3.1567780e+03 - 9.9930849e+02 -1.1718123e+03 -3.1501276e+03 - 1.0468849e+03 -1.1711967e+03 -3.1434143e+03 - 1.0898003e+03 -1.1709412e+03 -3.1366803e+03 - 1.1283995e+03 -1.1710780e+03 -3.1299603e+03 - 1.1630071e+03 -1.1716346e+03 -3.1232837e+03 - 1.1939237e+03 -1.1726340e+03 -3.1166755e+03 - 1.2214241e+03 -1.1740956e+03 -3.1101582e+03 - 1.2457583e+03 -1.1760350e+03 -3.1037520e+03 - 1.2671529e+03 -1.1784645e+03 -3.0974759e+03 - 1.2858133e+03 -1.1813927e+03 -3.0913481e+03 - 1.3019266e+03 -1.1848247e+03 -3.0853865e+03 - 1.3156636e+03 -1.1887617e+03 -3.0796087e+03 - 1.3271817e+03 -1.1932009e+03 -3.0740326e+03 - 1.3366268e+03 -1.1981352e+03 -3.0686759e+03 - 1.3441358e+03 -1.2035530e+03 -3.0635565e+03 - 1.3498376e+03 -1.2094379e+03 -3.0586922e+03 - 1.3538556e+03 -1.2157682e+03 -3.0541008e+03 - 1.3563079e+03 -1.2225171e+03 -3.0497997e+03 - 1.3573093e+03 -1.2296524e+03 -3.0458059e+03 - 1.3569714e+03 -1.2371361e+03 -3.0421360e+03 - 1.3554037e+03 -1.2449247e+03 -3.0388055e+03 - 1.3527136e+03 -1.2529688e+03 -3.0358292e+03 - 1.3490070e+03 -1.2612136e+03 -3.0332205e+03 - 1.3443883e+03 -1.2695986e+03 -3.0309915e+03 - 1.3389603e+03 -1.2780580e+03 -3.0291527e+03 - 1.3328241e+03 -1.2865206e+03 -3.0277131e+03 - 1.3260790e+03 -1.2949108e+03 -3.0266797e+03 - 1.3188221e+03 -1.3031481e+03 -3.0260576e+03 - 1.3111479e+03 -1.3111479e+03 -3.0258498e+03 - 1.3031481e+03 -1.3188221e+03 -3.0260576e+03 - 1.2949108e+03 -1.3260790e+03 -3.0266797e+03 - 1.2865206e+03 -1.3328241e+03 -3.0277131e+03 - 1.2780580e+03 -1.3389603e+03 -3.0291527e+03 - 1.2695986e+03 -1.3443883e+03 -3.0309915e+03 - 1.2612136e+03 -1.3490070e+03 -3.0332205e+03 - 1.2529688e+03 -1.3527136e+03 -3.0358292e+03 - 1.2449247e+03 -1.3554037e+03 -3.0388055e+03 - 1.2371361e+03 -1.3569714e+03 -3.0421360e+03 - 1.2296524e+03 -1.3573093e+03 -3.0458059e+03 - 1.2225171e+03 -1.3563079e+03 -3.0497997e+03 - 1.2157682e+03 -1.3538556e+03 -3.0541008e+03 - 1.2094379e+03 -1.3498376e+03 -3.0586922e+03 - 1.2035530e+03 -1.3441358e+03 -3.0635565e+03 - 1.1981352e+03 -1.3366268e+03 -3.0686759e+03 - 1.1932009e+03 -1.3271817e+03 -3.0740326e+03 - 1.1887617e+03 -1.3156636e+03 -3.0796087e+03 - 1.1848247e+03 -1.3019266e+03 -3.0853865e+03 - 1.1813927e+03 -1.2858133e+03 -3.0913481e+03 - 1.1784645e+03 -1.2671529e+03 -3.0974759e+03 - 1.1760350e+03 -1.2457583e+03 -3.1037520e+03 - 1.1740956e+03 -1.2214241e+03 -3.1101582e+03 - 1.1726340e+03 -1.1939237e+03 -3.1166755e+03 - 1.1716346e+03 -1.1630071e+03 -3.1232837e+03 - 1.1710780e+03 -1.1283995e+03 -3.1299603e+03 - 1.1709412e+03 -1.0898003e+03 -3.1366803e+03 - 1.1711967e+03 -1.0468849e+03 -3.1434143e+03 - 1.1718123e+03 -9.9930849e+02 -3.1501276e+03 - 1.1727502e+03 -9.4671430e+02 -3.1567780e+03 - 1.1739661e+03 -8.8874741e+02 -3.1633148e+03 - 1.1754084e+03 -8.2507563e+02 -3.1696764e+03 - 1.1770172e+03 -7.5541889e+02 -3.1757892e+03 - 1.1787243e+03 -6.7958780e+02 -3.1815666e+03 - 1.1804534e+03 -5.9753023e+02 -3.1869096e+03 - 1.1821220e+03 -5.0938244e+02 -3.1917091e+03 - 1.1836444e+03 -4.1551810e+02 -3.1958501e+03 - 1.1849364e+03 -3.1658511e+02 -3.1992186e+03 - 1.1859220e+03 -2.1351871e+02 -3.2017108e+03 - 1.1865401e+03 -1.0752068e+02 -3.2032428e+03 - 1.1867507e+03 0.0000000e+00 -3.2037598e+03 - 1.1441156e+03 0.0000000e+00 -3.2293154e+03 - 1.1439045e+03 1.0297087e+02 -3.2288473e+03 - 1.1432853e+03 2.0454442e+02 -3.2274589e+03 - 1.1422988e+03 3.0342195e+02 -3.2251960e+03 - 1.1410078e+03 3.9848545e+02 -3.2221290e+03 - 1.1394905e+03 4.8885130e+02 -3.2183460e+03 - 1.1378337e+03 5.7389148e+02 -3.2139445e+03 - 1.1361261e+03 6.5322557e+02 -3.2090245e+03 - 1.1344528e+03 7.2669128e+02 -3.2036822e+03 - 1.1328926e+03 7.9430336e+02 -3.1980064e+03 - 1.1315156e+03 8.5620907e+02 -3.1920761e+03 - 1.1303824e+03 9.1264662e+02 -3.1859598e+03 - 1.1295448e+03 9.6390978e+02 -3.1797162e+03 - 1.1290464e+03 1.0103202e+03 -3.1733947e+03 - 1.1289234e+03 1.0522069e+03 -3.1670369e+03 - 1.1292057e+03 1.0898925e+03 -3.1606780e+03 - 1.1299179e+03 1.1236845e+03 -3.1543483e+03 - 1.1310798e+03 1.1538704e+03 -3.1480740e+03 - 1.1327071e+03 1.1807153e+03 -3.1418785e+03 - 1.1348117e+03 1.2044624e+03 -3.1357830e+03 - 1.1374019e+03 1.2253333e+03 -3.1298075e+03 - 1.1404827e+03 1.2435302e+03 -3.1239707e+03 - 1.1440553e+03 1.2592376e+03 -3.1182909e+03 - 1.1481175e+03 1.2726247e+03 -3.1127861e+03 - 1.1526632e+03 1.2838477e+03 -3.1074739e+03 - 1.1576826e+03 1.2930514e+03 -3.1023718e+03 - 1.1631614e+03 1.3003713e+03 -3.0974971e+03 - 1.1690811e+03 1.3059353e+03 -3.0928671e+03 - 1.1754185e+03 1.3098648e+03 -3.0884986e+03 - 1.1821459e+03 1.3122764e+03 -3.0844082e+03 - 1.1892302e+03 1.3132824e+03 -3.0806118e+03 - 1.1966338e+03 1.3129917e+03 -3.0771249e+03 - 1.2043135e+03 1.3115107e+03 -3.0739620e+03 - 1.2122214e+03 1.3089433e+03 -3.0711366e+03 - 1.2203041e+03 1.3053916e+03 -3.0686611e+03 - 1.2285036e+03 1.3009557e+03 -3.0665467e+03 - 1.2367567e+03 1.2957340e+03 -3.0648030e+03 - 1.2449958e+03 1.2898230e+03 -3.0634382e+03 - 1.2531487e+03 1.2833171e+03 -3.0624587e+03 - 1.2611391e+03 1.2763086e+03 -3.0618691e+03 - 1.2688870e+03 1.2688870e+03 -3.0616722e+03 - 1.2763086e+03 1.2611391e+03 -3.0618691e+03 - 1.2833171e+03 1.2531487e+03 -3.0624587e+03 - 1.2898230e+03 1.2449958e+03 -3.0634382e+03 - 1.2957340e+03 1.2367567e+03 -3.0648030e+03 - 1.3009557e+03 1.2285036e+03 -3.0665467e+03 - 1.3053916e+03 1.2203041e+03 -3.0686611e+03 - 1.3089433e+03 1.2122214e+03 -3.0711366e+03 - 1.3115107e+03 1.2043135e+03 -3.0739620e+03 - 1.3129917e+03 1.1966338e+03 -3.0771249e+03 - 1.3132824e+03 1.1892302e+03 -3.0806118e+03 - 1.3122764e+03 1.1821459e+03 -3.0844082e+03 - 1.3098648e+03 1.1754185e+03 -3.0884986e+03 - 1.3059353e+03 1.1690811e+03 -3.0928671e+03 - 1.3003713e+03 1.1631614e+03 -3.0974971e+03 - 1.2930514e+03 1.1576826e+03 -3.1023718e+03 - 1.2838477e+03 1.1526632e+03 -3.1074739e+03 - 1.2726247e+03 1.1481175e+03 -3.1127861e+03 - 1.2592376e+03 1.1440553e+03 -3.1182909e+03 - 1.2435302e+03 1.1404827e+03 -3.1239707e+03 - 1.2253333e+03 1.1374019e+03 -3.1298075e+03 - 1.2044624e+03 1.1348117e+03 -3.1357830e+03 - 1.1807153e+03 1.1327071e+03 -3.1418785e+03 - 1.1538704e+03 1.1310798e+03 -3.1480740e+03 - 1.1236845e+03 1.1299179e+03 -3.1543483e+03 - 1.0898925e+03 1.1292057e+03 -3.1606780e+03 - 1.0522069e+03 1.1289234e+03 -3.1670369e+03 - 1.0103202e+03 1.1290464e+03 -3.1733947e+03 - 9.6390978e+02 1.1295448e+03 -3.1797162e+03 - 9.1264662e+02 1.1303824e+03 -3.1859598e+03 - 8.5620907e+02 1.1315156e+03 -3.1920761e+03 - 7.9430336e+02 1.1328926e+03 -3.1980064e+03 - 7.2669128e+02 1.1344528e+03 -3.2036822e+03 - 6.5322557e+02 1.1361261e+03 -3.2090245e+03 - 5.7389148e+02 1.1378337e+03 -3.2139445e+03 - 4.8885130e+02 1.1394905e+03 -3.2183460e+03 - 3.9848545e+02 1.1410078e+03 -3.2221290e+03 - 3.0342195e+02 1.1422988e+03 -3.2251960e+03 - 2.0454442e+02 1.1432853e+03 -3.2274589e+03 - 1.0297087e+02 1.1439045e+03 -3.2288473e+03 - 0.0000000e+00 1.1441156e+03 -3.2293154e+03 - -1.0297087e+02 1.1439045e+03 -3.2288473e+03 - -2.0454442e+02 1.1432853e+03 -3.2274589e+03 - -3.0342195e+02 1.1422988e+03 -3.2251960e+03 - -3.9848545e+02 1.1410078e+03 -3.2221290e+03 - -4.8885130e+02 1.1394905e+03 -3.2183460e+03 - -5.7389148e+02 1.1378337e+03 -3.2139445e+03 - -6.5322557e+02 1.1361261e+03 -3.2090245e+03 - -7.2669128e+02 1.1344528e+03 -3.2036822e+03 - -7.9430336e+02 1.1328926e+03 -3.1980064e+03 - -8.5620907e+02 1.1315156e+03 -3.1920761e+03 - -9.1264662e+02 1.1303824e+03 -3.1859598e+03 - -9.6390978e+02 1.1295448e+03 -3.1797162e+03 - -1.0103202e+03 1.1290464e+03 -3.1733947e+03 - -1.0522069e+03 1.1289234e+03 -3.1670369e+03 - -1.0898925e+03 1.1292057e+03 -3.1606780e+03 - -1.1236845e+03 1.1299179e+03 -3.1543483e+03 - -1.1538704e+03 1.1310798e+03 -3.1480740e+03 - -1.1807153e+03 1.1327071e+03 -3.1418785e+03 - -1.2044624e+03 1.1348117e+03 -3.1357830e+03 - -1.2253333e+03 1.1374019e+03 -3.1298075e+03 - -1.2435302e+03 1.1404827e+03 -3.1239707e+03 - -1.2592376e+03 1.1440553e+03 -3.1182909e+03 - -1.2726247e+03 1.1481175e+03 -3.1127861e+03 - -1.2838477e+03 1.1526632e+03 -3.1074739e+03 - -1.2930514e+03 1.1576826e+03 -3.1023718e+03 - -1.3003713e+03 1.1631614e+03 -3.0974971e+03 - -1.3059353e+03 1.1690811e+03 -3.0928671e+03 - -1.3098648e+03 1.1754185e+03 -3.0884986e+03 - -1.3122764e+03 1.1821459e+03 -3.0844082e+03 - -1.3132824e+03 1.1892302e+03 -3.0806118e+03 - -1.3129917e+03 1.1966338e+03 -3.0771249e+03 - -1.3115107e+03 1.2043135e+03 -3.0739620e+03 - -1.3089433e+03 1.2122214e+03 -3.0711366e+03 - -1.3053916e+03 1.2203041e+03 -3.0686611e+03 - -1.3009557e+03 1.2285036e+03 -3.0665467e+03 - -1.2957340e+03 1.2367567e+03 -3.0648030e+03 - -1.2898230e+03 1.2449958e+03 -3.0634382e+03 - -1.2833171e+03 1.2531487e+03 -3.0624587e+03 - -1.2763086e+03 1.2611391e+03 -3.0618691e+03 - -1.2688870e+03 1.2688870e+03 -3.0616722e+03 - -1.2611391e+03 1.2763086e+03 -3.0618691e+03 - -1.2531487e+03 1.2833171e+03 -3.0624587e+03 - -1.2449958e+03 1.2898230e+03 -3.0634382e+03 - -1.2367567e+03 1.2957340e+03 -3.0648030e+03 - -1.2285036e+03 1.3009557e+03 -3.0665467e+03 - -1.2203041e+03 1.3053916e+03 -3.0686611e+03 - -1.2122214e+03 1.3089433e+03 -3.0711366e+03 - -1.2043135e+03 1.3115107e+03 -3.0739620e+03 - -1.1966338e+03 1.3129917e+03 -3.0771249e+03 - -1.1892302e+03 1.3132824e+03 -3.0806118e+03 - -1.1821459e+03 1.3122764e+03 -3.0844082e+03 - -1.1754185e+03 1.3098648e+03 -3.0884986e+03 - -1.1690811e+03 1.3059353e+03 -3.0928671e+03 - -1.1631614e+03 1.3003713e+03 -3.0974971e+03 - -1.1576826e+03 1.2930514e+03 -3.1023718e+03 - -1.1526632e+03 1.2838477e+03 -3.1074739e+03 - -1.1481175e+03 1.2726247e+03 -3.1127861e+03 - -1.1440553e+03 1.2592376e+03 -3.1182909e+03 - -1.1404827e+03 1.2435302e+03 -3.1239707e+03 - -1.1374019e+03 1.2253333e+03 -3.1298075e+03 - -1.1348117e+03 1.2044624e+03 -3.1357830e+03 - -1.1327071e+03 1.1807153e+03 -3.1418785e+03 - -1.1310798e+03 1.1538704e+03 -3.1480740e+03 - -1.1299179e+03 1.1236845e+03 -3.1543483e+03 - -1.1292057e+03 1.0898925e+03 -3.1606780e+03 - -1.1289234e+03 1.0522069e+03 -3.1670369e+03 - -1.1290464e+03 1.0103202e+03 -3.1733947e+03 - -1.1295448e+03 9.6390978e+02 -3.1797162e+03 - -1.1303824e+03 9.1264662e+02 -3.1859598e+03 - -1.1315156e+03 8.5620907e+02 -3.1920761e+03 - -1.1328926e+03 7.9430336e+02 -3.1980064e+03 - -1.1344528e+03 7.2669128e+02 -3.2036822e+03 - -1.1361261e+03 6.5322557e+02 -3.2090245e+03 - -1.1378337e+03 5.7389148e+02 -3.2139445e+03 - -1.1394905e+03 4.8885130e+02 -3.2183460e+03 - -1.1410078e+03 3.9848545e+02 -3.2221290e+03 - -1.1422988e+03 3.0342195e+02 -3.2251960e+03 - -1.1432853e+03 2.0454442e+02 -3.2274589e+03 - -1.1439045e+03 1.0297087e+02 -3.2288473e+03 - -1.1441156e+03 4.8134273e-09 -3.2293154e+03 - -1.1439045e+03 -1.0297087e+02 -3.2288473e+03 - -1.1432853e+03 -2.0454442e+02 -3.2274589e+03 - -1.1422988e+03 -3.0342195e+02 -3.2251960e+03 - -1.1410078e+03 -3.9848545e+02 -3.2221290e+03 - -1.1394905e+03 -4.8885130e+02 -3.2183460e+03 - -1.1378337e+03 -5.7389148e+02 -3.2139445e+03 - -1.1361261e+03 -6.5322557e+02 -3.2090245e+03 - -1.1344528e+03 -7.2669128e+02 -3.2036822e+03 - -1.1328926e+03 -7.9430336e+02 -3.1980064e+03 - -1.1315156e+03 -8.5620907e+02 -3.1920761e+03 - -1.1303824e+03 -9.1264662e+02 -3.1859598e+03 - -1.1295448e+03 -9.6390978e+02 -3.1797162e+03 - -1.1290464e+03 -1.0103202e+03 -3.1733947e+03 - -1.1289234e+03 -1.0522069e+03 -3.1670369e+03 - -1.1292057e+03 -1.0898925e+03 -3.1606780e+03 - -1.1299179e+03 -1.1236845e+03 -3.1543483e+03 - -1.1310798e+03 -1.1538704e+03 -3.1480740e+03 - -1.1327071e+03 -1.1807153e+03 -3.1418785e+03 - -1.1348117e+03 -1.2044624e+03 -3.1357830e+03 - -1.1374019e+03 -1.2253333e+03 -3.1298075e+03 - -1.1404827e+03 -1.2435302e+03 -3.1239707e+03 - -1.1440553e+03 -1.2592376e+03 -3.1182909e+03 - -1.1481175e+03 -1.2726247e+03 -3.1127861e+03 - -1.1526632e+03 -1.2838477e+03 -3.1074739e+03 - -1.1576826e+03 -1.2930514e+03 -3.1023718e+03 - -1.1631614e+03 -1.3003713e+03 -3.0974971e+03 - -1.1690811e+03 -1.3059353e+03 -3.0928671e+03 - -1.1754185e+03 -1.3098648e+03 -3.0884986e+03 - -1.1821459e+03 -1.3122764e+03 -3.0844082e+03 - -1.1892302e+03 -1.3132824e+03 -3.0806118e+03 - -1.1966338e+03 -1.3129917e+03 -3.0771249e+03 - -1.2043135e+03 -1.3115107e+03 -3.0739620e+03 - -1.2122214e+03 -1.3089433e+03 -3.0711366e+03 - -1.2203041e+03 -1.3053916e+03 -3.0686611e+03 - -1.2285036e+03 -1.3009557e+03 -3.0665467e+03 - -1.2367567e+03 -1.2957340e+03 -3.0648030e+03 - -1.2449958e+03 -1.2898230e+03 -3.0634382e+03 - -1.2531487e+03 -1.2833171e+03 -3.0624587e+03 - -1.2611391e+03 -1.2763086e+03 -3.0618691e+03 - -1.2688870e+03 -1.2688870e+03 -3.0616722e+03 - -1.2763086e+03 -1.2611391e+03 -3.0618691e+03 - -1.2833171e+03 -1.2531487e+03 -3.0624587e+03 - -1.2898230e+03 -1.2449958e+03 -3.0634382e+03 - -1.2957340e+03 -1.2367567e+03 -3.0648030e+03 - -1.3009557e+03 -1.2285036e+03 -3.0665467e+03 - -1.3053916e+03 -1.2203041e+03 -3.0686611e+03 - -1.3089433e+03 -1.2122214e+03 -3.0711366e+03 - -1.3115107e+03 -1.2043135e+03 -3.0739620e+03 - -1.3129917e+03 -1.1966338e+03 -3.0771249e+03 - -1.3132824e+03 -1.1892302e+03 -3.0806118e+03 - -1.3122764e+03 -1.1821459e+03 -3.0844082e+03 - -1.3098648e+03 -1.1754185e+03 -3.0884986e+03 - -1.3059353e+03 -1.1690811e+03 -3.0928671e+03 - -1.3003713e+03 -1.1631614e+03 -3.0974971e+03 - -1.2930514e+03 -1.1576826e+03 -3.1023718e+03 - -1.2838477e+03 -1.1526632e+03 -3.1074739e+03 - -1.2726247e+03 -1.1481175e+03 -3.1127861e+03 - -1.2592376e+03 -1.1440553e+03 -3.1182909e+03 - -1.2435302e+03 -1.1404827e+03 -3.1239707e+03 - -1.2253333e+03 -1.1374019e+03 -3.1298075e+03 - -1.2044624e+03 -1.1348117e+03 -3.1357830e+03 - -1.1807153e+03 -1.1327071e+03 -3.1418785e+03 - -1.1538704e+03 -1.1310798e+03 -3.1480740e+03 - -1.1236845e+03 -1.1299179e+03 -3.1543483e+03 - -1.0898925e+03 -1.1292057e+03 -3.1606780e+03 - -1.0522069e+03 -1.1289234e+03 -3.1670369e+03 - -1.0103202e+03 -1.1290464e+03 -3.1733947e+03 - -9.6390978e+02 -1.1295448e+03 -3.1797162e+03 - -9.1264662e+02 -1.1303824e+03 -3.1859598e+03 - -8.5620907e+02 -1.1315156e+03 -3.1920761e+03 - -7.9430336e+02 -1.1328926e+03 -3.1980064e+03 - -7.2669128e+02 -1.1344528e+03 -3.2036822e+03 - -6.5322557e+02 -1.1361261e+03 -3.2090245e+03 - -5.7389148e+02 -1.1378337e+03 -3.2139445e+03 - -4.8885130e+02 -1.1394905e+03 -3.2183460e+03 - -3.9848545e+02 -1.1410078e+03 -3.2221290e+03 - -3.0342195e+02 -1.1422988e+03 -3.2251960e+03 - -2.0454442e+02 -1.1432853e+03 -3.2274589e+03 - -1.0297087e+02 -1.1439045e+03 -3.2288473e+03 - 2.4067136e-09 -1.1441156e+03 -3.2293154e+03 - 1.0297087e+02 -1.1439045e+03 -3.2288473e+03 - 2.0454442e+02 -1.1432853e+03 -3.2274589e+03 - 3.0342195e+02 -1.1422988e+03 -3.2251960e+03 - 3.9848545e+02 -1.1410078e+03 -3.2221290e+03 - 4.8885130e+02 -1.1394905e+03 -3.2183460e+03 - 5.7389148e+02 -1.1378337e+03 -3.2139445e+03 - 6.5322557e+02 -1.1361261e+03 -3.2090245e+03 - 7.2669128e+02 -1.1344528e+03 -3.2036822e+03 - 7.9430336e+02 -1.1328926e+03 -3.1980064e+03 - 8.5620907e+02 -1.1315156e+03 -3.1920761e+03 - 9.1264662e+02 -1.1303824e+03 -3.1859598e+03 - 9.6390978e+02 -1.1295448e+03 -3.1797162e+03 - 1.0103202e+03 -1.1290464e+03 -3.1733947e+03 - 1.0522069e+03 -1.1289234e+03 -3.1670369e+03 - 1.0898925e+03 -1.1292057e+03 -3.1606780e+03 - 1.1236845e+03 -1.1299179e+03 -3.1543483e+03 - 1.1538704e+03 -1.1310798e+03 -3.1480740e+03 - 1.1807153e+03 -1.1327071e+03 -3.1418785e+03 - 1.2044624e+03 -1.1348117e+03 -3.1357830e+03 - 1.2253333e+03 -1.1374019e+03 -3.1298075e+03 - 1.2435302e+03 -1.1404827e+03 -3.1239707e+03 - 1.2592376e+03 -1.1440553e+03 -3.1182909e+03 - 1.2726247e+03 -1.1481175e+03 -3.1127861e+03 - 1.2838477e+03 -1.1526632e+03 -3.1074739e+03 - 1.2930514e+03 -1.1576826e+03 -3.1023718e+03 - 1.3003713e+03 -1.1631614e+03 -3.0974971e+03 - 1.3059353e+03 -1.1690811e+03 -3.0928671e+03 - 1.3098648e+03 -1.1754185e+03 -3.0884986e+03 - 1.3122764e+03 -1.1821459e+03 -3.0844082e+03 - 1.3132824e+03 -1.1892302e+03 -3.0806118e+03 - 1.3129917e+03 -1.1966338e+03 -3.0771249e+03 - 1.3115107e+03 -1.2043135e+03 -3.0739620e+03 - 1.3089433e+03 -1.2122214e+03 -3.0711366e+03 - 1.3053916e+03 -1.2203041e+03 -3.0686611e+03 - 1.3009557e+03 -1.2285036e+03 -3.0665467e+03 - 1.2957340e+03 -1.2367567e+03 -3.0648030e+03 - 1.2898230e+03 -1.2449958e+03 -3.0634382e+03 - 1.2833171e+03 -1.2531487e+03 -3.0624587e+03 - 1.2763086e+03 -1.2611391e+03 -3.0618691e+03 - 1.2688870e+03 -1.2688870e+03 -3.0616722e+03 - 1.2611391e+03 -1.2763086e+03 -3.0618691e+03 - 1.2531487e+03 -1.2833171e+03 -3.0624587e+03 - 1.2449958e+03 -1.2898230e+03 -3.0634382e+03 - 1.2367567e+03 -1.2957340e+03 -3.0648030e+03 - 1.2285036e+03 -1.3009557e+03 -3.0665467e+03 - 1.2203041e+03 -1.3053916e+03 -3.0686611e+03 - 1.2122214e+03 -1.3089433e+03 -3.0711366e+03 - 1.2043135e+03 -1.3115107e+03 -3.0739620e+03 - 1.1966338e+03 -1.3129917e+03 -3.0771249e+03 - 1.1892302e+03 -1.3132824e+03 -3.0806118e+03 - 1.1821459e+03 -1.3122764e+03 -3.0844082e+03 - 1.1754185e+03 -1.3098648e+03 -3.0884986e+03 - 1.1690811e+03 -1.3059353e+03 -3.0928671e+03 - 1.1631614e+03 -1.3003713e+03 -3.0974971e+03 - 1.1576826e+03 -1.2930514e+03 -3.1023718e+03 - 1.1526632e+03 -1.2838477e+03 -3.1074739e+03 - 1.1481175e+03 -1.2726247e+03 -3.1127861e+03 - 1.1440553e+03 -1.2592376e+03 -3.1182909e+03 - 1.1404827e+03 -1.2435302e+03 -3.1239707e+03 - 1.1374019e+03 -1.2253333e+03 -3.1298075e+03 - 1.1348117e+03 -1.2044624e+03 -3.1357830e+03 - 1.1327071e+03 -1.1807153e+03 -3.1418785e+03 - 1.1310798e+03 -1.1538704e+03 -3.1480740e+03 - 1.1299179e+03 -1.1236845e+03 -3.1543483e+03 - 1.1292057e+03 -1.0898925e+03 -3.1606780e+03 - 1.1289234e+03 -1.0522069e+03 -3.1670369e+03 - 1.1290464e+03 -1.0103202e+03 -3.1733947e+03 - 1.1295448e+03 -9.6390978e+02 -3.1797162e+03 - 1.1303824e+03 -9.1264662e+02 -3.1859598e+03 - 1.1315156e+03 -8.5620907e+02 -3.1920761e+03 - 1.1328926e+03 -7.9430336e+02 -3.1980064e+03 - 1.1344528e+03 -7.2669128e+02 -3.2036822e+03 - 1.1361261e+03 -6.5322557e+02 -3.2090245e+03 - 1.1378337e+03 -5.7389148e+02 -3.2139445e+03 - 1.1394905e+03 -4.8885130e+02 -3.2183460e+03 - 1.1410078e+03 -3.9848545e+02 -3.2221290e+03 - 1.1422988e+03 -3.0342195e+02 -3.2251960e+03 - 1.1432853e+03 -2.0454442e+02 -3.2274589e+03 - 1.1439045e+03 -1.0297087e+02 -3.2288473e+03 - 1.1441156e+03 -2.4067136e-09 -3.2293154e+03 - 1.1014719e+03 0.0000000e+00 -3.2537510e+03 - 1.1012627e+03 9.8537420e+01 -3.2533271e+03 - 1.1006492e+03 1.9578937e+02 -3.2520684e+03 - 1.0996725e+03 2.9055646e+02 -3.2500134e+03 - 1.0983959e+03 3.8179768e+02 -3.2472215e+03 - 1.0968984e+03 4.6867908e+02 -3.2437677e+03 - 1.0952680e+03 5.5059480e+02 -3.2397357e+03 - 1.0935948e+03 6.2716287e+02 -3.2352124e+03 - 1.0919658e+03 6.9820171e+02 -3.2302824e+03 - 1.0904611e+03 7.6369557e+02 -3.2250254e+03 - 1.0891519e+03 8.2375581e+02 -3.2195130e+03 - 1.0880997e+03 8.7858387e+02 -3.2138088e+03 - 1.0873563e+03 9.2843887e+02 -3.2079681e+03 - 1.0869646e+03 9.7361167e+02 -3.2020382e+03 - 1.0869594e+03 1.0144052e+03 -3.1960599e+03 - 1.0873688e+03 1.0511207e+03 -3.1900682e+03 - 1.0882150e+03 1.0840484e+03 -3.1840936e+03 - 1.0895150e+03 1.1134625e+03 -3.1781627e+03 - 1.0912814e+03 1.1396181e+03 -3.1722996e+03 - 1.0935227e+03 1.1627506e+03 -3.1665260e+03 - 1.0962440e+03 1.1830760e+03 -3.1608624e+03 - 1.0994467e+03 1.2007923e+03 -3.1553278e+03 - 1.1031290e+03 1.2160810e+03 -3.1499408e+03 - 1.1072855e+03 1.2291089e+03 -3.1447192e+03 - 1.1119073e+03 1.2400302e+03 -3.1396804e+03 - 1.1169819e+03 1.2489879e+03 -3.1348417e+03 - 1.1224929e+03 1.2561159e+03 -3.1302196e+03 - 1.1284200e+03 1.2615403e+03 -3.1258309e+03 - 1.1347388e+03 1.2653806e+03 -3.1216914e+03 - 1.1414203e+03 1.2677510e+03 -3.1178169e+03 - 1.1484316e+03 1.2687614e+03 -3.1142224e+03 - 1.1557347e+03 1.2685179e+03 -3.1109222e+03 - 1.1632875e+03 1.2671235e+03 -3.1079298e+03 - 1.1710430e+03 1.2646787e+03 -3.1052577e+03 - 1.1789498e+03 1.2612818e+03 -3.1029173e+03 - 1.1869519e+03 1.2570287e+03 -3.1009190e+03 - 1.1949889e+03 1.2520134e+03 -3.0992714e+03 - 1.2029964e+03 1.2463280e+03 -3.0979821e+03 - 1.2109057e+03 1.2400621e+03 -3.0970570e+03 - 1.2186445e+03 1.2333034e+03 -3.0965002e+03 - 1.2261368e+03 1.2261368e+03 -3.0963143e+03 - 1.2333034e+03 1.2186445e+03 -3.0965002e+03 - 1.2400621e+03 1.2109057e+03 -3.0970570e+03 - 1.2463280e+03 1.2029964e+03 -3.0979821e+03 - 1.2520134e+03 1.1949889e+03 -3.0992714e+03 - 1.2570287e+03 1.1869519e+03 -3.1009190e+03 - 1.2612818e+03 1.1789498e+03 -3.1029173e+03 - 1.2646787e+03 1.1710430e+03 -3.1052577e+03 - 1.2671235e+03 1.1632875e+03 -3.1079298e+03 - 1.2685179e+03 1.1557347e+03 -3.1109222e+03 - 1.2687614e+03 1.1484316e+03 -3.1142224e+03 - 1.2677510e+03 1.1414203e+03 -3.1178169e+03 - 1.2653806e+03 1.1347388e+03 -3.1216914e+03 - 1.2615403e+03 1.1284200e+03 -3.1258309e+03 - 1.2561159e+03 1.1224929e+03 -3.1302196e+03 - 1.2489879e+03 1.1169819e+03 -3.1348417e+03 - 1.2400302e+03 1.1119073e+03 -3.1396804e+03 - 1.2291089e+03 1.1072855e+03 -3.1447192e+03 - 1.2160810e+03 1.1031290e+03 -3.1499408e+03 - 1.2007923e+03 1.0994467e+03 -3.1553278e+03 - 1.1830760e+03 1.0962440e+03 -3.1608624e+03 - 1.1627506e+03 1.0935227e+03 -3.1665260e+03 - 1.1396181e+03 1.0912814e+03 -3.1722996e+03 - 1.1134625e+03 1.0895150e+03 -3.1781627e+03 - 1.0840484e+03 1.0882150e+03 -3.1840936e+03 - 1.0511207e+03 1.0873688e+03 -3.1900682e+03 - 1.0144052e+03 1.0869594e+03 -3.1960599e+03 - 9.7361167e+02 1.0869646e+03 -3.2020382e+03 - 9.2843887e+02 1.0873563e+03 -3.2079681e+03 - 8.7858387e+02 1.0880997e+03 -3.2138088e+03 - 8.2375581e+02 1.0891519e+03 -3.2195130e+03 - 7.6369557e+02 1.0904611e+03 -3.2250254e+03 - 6.9820171e+02 1.0919658e+03 -3.2302824e+03 - 6.2716287e+02 1.0935948e+03 -3.2352124e+03 - 5.5059480e+02 1.0952680e+03 -3.2397357e+03 - 4.6867908e+02 1.0968984e+03 -3.2437677e+03 - 3.8179768e+02 1.0983959e+03 -3.2472215e+03 - 2.9055646e+02 1.0996725e+03 -3.2500134e+03 - 1.9578937e+02 1.1006492e+03 -3.2520684e+03 - 9.8537420e+01 1.1012627e+03 -3.2533271e+03 - 2.4067136e-09 1.1014719e+03 -3.2537510e+03 - -9.8537420e+01 1.1012627e+03 -3.2533271e+03 - -1.9578937e+02 1.1006492e+03 -3.2520684e+03 - -2.9055646e+02 1.0996725e+03 -3.2500134e+03 - -3.8179768e+02 1.0983959e+03 -3.2472215e+03 - -4.6867908e+02 1.0968984e+03 -3.2437677e+03 - -5.5059480e+02 1.0952680e+03 -3.2397357e+03 - -6.2716287e+02 1.0935948e+03 -3.2352124e+03 - -6.9820171e+02 1.0919658e+03 -3.2302824e+03 - -7.6369557e+02 1.0904611e+03 -3.2250254e+03 - -8.2375581e+02 1.0891519e+03 -3.2195130e+03 - -8.7858387e+02 1.0880997e+03 -3.2138088e+03 - -9.2843887e+02 1.0873563e+03 -3.2079681e+03 - -9.7361167e+02 1.0869646e+03 -3.2020382e+03 - -1.0144052e+03 1.0869594e+03 -3.1960599e+03 - -1.0511207e+03 1.0873688e+03 -3.1900682e+03 - -1.0840484e+03 1.0882150e+03 -3.1840936e+03 - -1.1134625e+03 1.0895150e+03 -3.1781627e+03 - -1.1396181e+03 1.0912814e+03 -3.1722996e+03 - -1.1627506e+03 1.0935227e+03 -3.1665260e+03 - -1.1830760e+03 1.0962440e+03 -3.1608624e+03 - -1.2007923e+03 1.0994467e+03 -3.1553278e+03 - -1.2160810e+03 1.1031290e+03 -3.1499408e+03 - -1.2291089e+03 1.1072855e+03 -3.1447192e+03 - -1.2400302e+03 1.1119073e+03 -3.1396804e+03 - -1.2489879e+03 1.1169819e+03 -3.1348417e+03 - -1.2561159e+03 1.1224929e+03 -3.1302196e+03 - -1.2615403e+03 1.1284200e+03 -3.1258309e+03 - -1.2653806e+03 1.1347388e+03 -3.1216914e+03 - -1.2677510e+03 1.1414203e+03 -3.1178169e+03 - -1.2687614e+03 1.1484316e+03 -3.1142224e+03 - -1.2685179e+03 1.1557347e+03 -3.1109222e+03 - -1.2671235e+03 1.1632875e+03 -3.1079298e+03 - -1.2646787e+03 1.1710430e+03 -3.1052577e+03 - -1.2612818e+03 1.1789498e+03 -3.1029173e+03 - -1.2570287e+03 1.1869519e+03 -3.1009190e+03 - -1.2520134e+03 1.1949889e+03 -3.0992714e+03 - -1.2463280e+03 1.2029964e+03 -3.0979821e+03 - -1.2400621e+03 1.2109057e+03 -3.0970570e+03 - -1.2333034e+03 1.2186445e+03 -3.0965002e+03 - -1.2261368e+03 1.2261368e+03 -3.0963143e+03 - -1.2186445e+03 1.2333034e+03 -3.0965002e+03 - -1.2109057e+03 1.2400621e+03 -3.0970570e+03 - -1.2029964e+03 1.2463280e+03 -3.0979821e+03 - -1.1949889e+03 1.2520134e+03 -3.0992714e+03 - -1.1869519e+03 1.2570287e+03 -3.1009190e+03 - -1.1789498e+03 1.2612818e+03 -3.1029173e+03 - -1.1710430e+03 1.2646787e+03 -3.1052577e+03 - -1.1632875e+03 1.2671235e+03 -3.1079298e+03 - -1.1557347e+03 1.2685179e+03 -3.1109222e+03 - -1.1484316e+03 1.2687614e+03 -3.1142224e+03 - -1.1414203e+03 1.2677510e+03 -3.1178169e+03 - -1.1347388e+03 1.2653806e+03 -3.1216914e+03 - -1.1284200e+03 1.2615403e+03 -3.1258309e+03 - -1.1224929e+03 1.2561159e+03 -3.1302196e+03 - -1.1169819e+03 1.2489879e+03 -3.1348417e+03 - -1.1119073e+03 1.2400302e+03 -3.1396804e+03 - -1.1072855e+03 1.2291089e+03 -3.1447192e+03 - -1.1031290e+03 1.2160810e+03 -3.1499408e+03 - -1.0994467e+03 1.2007923e+03 -3.1553278e+03 - -1.0962440e+03 1.1830760e+03 -3.1608624e+03 - -1.0935227e+03 1.1627506e+03 -3.1665260e+03 - -1.0912814e+03 1.1396181e+03 -3.1722996e+03 - -1.0895150e+03 1.1134625e+03 -3.1781627e+03 - -1.0882150e+03 1.0840484e+03 -3.1840936e+03 - -1.0873688e+03 1.0511207e+03 -3.1900682e+03 - -1.0869594e+03 1.0144052e+03 -3.1960599e+03 - -1.0869646e+03 9.7361167e+02 -3.2020382e+03 - -1.0873563e+03 9.2843887e+02 -3.2079681e+03 - -1.0880997e+03 8.7858387e+02 -3.2138088e+03 - -1.0891519e+03 8.2375581e+02 -3.2195130e+03 - -1.0904611e+03 7.6369557e+02 -3.2250254e+03 - -1.0919658e+03 6.9820171e+02 -3.2302824e+03 - -1.0935948e+03 6.2716287e+02 -3.2352124e+03 - -1.0952680e+03 5.5059480e+02 -3.2397357e+03 - -1.0968984e+03 4.6867908e+02 -3.2437677e+03 - -1.0983959e+03 3.8179768e+02 -3.2472215e+03 - -1.0996725e+03 2.9055646e+02 -3.2500134e+03 - -1.1006492e+03 1.9578937e+02 -3.2520684e+03 - -1.1012627e+03 9.8537420e+01 -3.2533271e+03 - -1.1014719e+03 0.0000000e+00 -3.2537510e+03 - -1.1012627e+03 -9.8537420e+01 -3.2533271e+03 - -1.1006492e+03 -1.9578937e+02 -3.2520684e+03 - -1.0996725e+03 -2.9055646e+02 -3.2500134e+03 - -1.0983959e+03 -3.8179768e+02 -3.2472215e+03 - -1.0968984e+03 -4.6867908e+02 -3.2437677e+03 - -1.0952680e+03 -5.5059480e+02 -3.2397357e+03 - -1.0935948e+03 -6.2716287e+02 -3.2352124e+03 - -1.0919658e+03 -6.9820171e+02 -3.2302824e+03 - -1.0904611e+03 -7.6369557e+02 -3.2250254e+03 - -1.0891519e+03 -8.2375581e+02 -3.2195130e+03 - -1.0880997e+03 -8.7858387e+02 -3.2138088e+03 - -1.0873563e+03 -9.2843887e+02 -3.2079681e+03 - -1.0869646e+03 -9.7361167e+02 -3.2020382e+03 - -1.0869594e+03 -1.0144052e+03 -3.1960599e+03 - -1.0873688e+03 -1.0511207e+03 -3.1900682e+03 - -1.0882150e+03 -1.0840484e+03 -3.1840936e+03 - -1.0895150e+03 -1.1134625e+03 -3.1781627e+03 - -1.0912814e+03 -1.1396181e+03 -3.1722996e+03 - -1.0935227e+03 -1.1627506e+03 -3.1665260e+03 - -1.0962440e+03 -1.1830760e+03 -3.1608624e+03 - -1.0994467e+03 -1.2007923e+03 -3.1553278e+03 - -1.1031290e+03 -1.2160810e+03 -3.1499408e+03 - -1.1072855e+03 -1.2291089e+03 -3.1447192e+03 - -1.1119073e+03 -1.2400302e+03 -3.1396804e+03 - -1.1169819e+03 -1.2489879e+03 -3.1348417e+03 - -1.1224929e+03 -1.2561159e+03 -3.1302196e+03 - -1.1284200e+03 -1.2615403e+03 -3.1258309e+03 - -1.1347388e+03 -1.2653806e+03 -3.1216914e+03 - -1.1414203e+03 -1.2677510e+03 -3.1178169e+03 - -1.1484316e+03 -1.2687614e+03 -3.1142224e+03 - -1.1557347e+03 -1.2685179e+03 -3.1109222e+03 - -1.1632875e+03 -1.2671235e+03 -3.1079298e+03 - -1.1710430e+03 -1.2646787e+03 -3.1052577e+03 - -1.1789498e+03 -1.2612818e+03 -3.1029173e+03 - -1.1869519e+03 -1.2570287e+03 -3.1009190e+03 - -1.1949889e+03 -1.2520134e+03 -3.0992714e+03 - -1.2029964e+03 -1.2463280e+03 -3.0979821e+03 - -1.2109057e+03 -1.2400621e+03 -3.0970570e+03 - -1.2186445e+03 -1.2333034e+03 -3.0965002e+03 - -1.2261368e+03 -1.2261368e+03 -3.0963143e+03 - -1.2333034e+03 -1.2186445e+03 -3.0965002e+03 - -1.2400621e+03 -1.2109057e+03 -3.0970570e+03 - -1.2463280e+03 -1.2029964e+03 -3.0979821e+03 - -1.2520134e+03 -1.1949889e+03 -3.0992714e+03 - -1.2570287e+03 -1.1869519e+03 -3.1009190e+03 - -1.2612818e+03 -1.1789498e+03 -3.1029173e+03 - -1.2646787e+03 -1.1710430e+03 -3.1052577e+03 - -1.2671235e+03 -1.1632875e+03 -3.1079298e+03 - -1.2685179e+03 -1.1557347e+03 -3.1109222e+03 - -1.2687614e+03 -1.1484316e+03 -3.1142224e+03 - -1.2677510e+03 -1.1414203e+03 -3.1178169e+03 - -1.2653806e+03 -1.1347388e+03 -3.1216914e+03 - -1.2615403e+03 -1.1284200e+03 -3.1258309e+03 - -1.2561159e+03 -1.1224929e+03 -3.1302196e+03 - -1.2489879e+03 -1.1169819e+03 -3.1348417e+03 - -1.2400302e+03 -1.1119073e+03 -3.1396804e+03 - -1.2291089e+03 -1.1072855e+03 -3.1447192e+03 - -1.2160810e+03 -1.1031290e+03 -3.1499408e+03 - -1.2007923e+03 -1.0994467e+03 -3.1553278e+03 - -1.1830760e+03 -1.0962440e+03 -3.1608624e+03 - -1.1627506e+03 -1.0935227e+03 -3.1665260e+03 - -1.1396181e+03 -1.0912814e+03 -3.1722996e+03 - -1.1134625e+03 -1.0895150e+03 -3.1781627e+03 - -1.0840484e+03 -1.0882150e+03 -3.1840936e+03 - -1.0511207e+03 -1.0873688e+03 -3.1900682e+03 - -1.0144052e+03 -1.0869594e+03 -3.1960599e+03 - -9.7361167e+02 -1.0869646e+03 -3.2020382e+03 - -9.2843887e+02 -1.0873563e+03 -3.2079681e+03 - -8.7858387e+02 -1.0880997e+03 -3.2138088e+03 - -8.2375581e+02 -1.0891519e+03 -3.2195130e+03 - -7.6369557e+02 -1.0904611e+03 -3.2250254e+03 - -6.9820171e+02 -1.0919658e+03 -3.2302824e+03 - -6.2716287e+02 -1.0935948e+03 -3.2352124e+03 - -5.5059480e+02 -1.0952680e+03 -3.2397357e+03 - -4.6867908e+02 -1.0968984e+03 -3.2437677e+03 - -3.8179768e+02 -1.0983959e+03 -3.2472215e+03 - -2.9055646e+02 -1.0996725e+03 -3.2500134e+03 - -1.9578937e+02 -1.1006492e+03 -3.2520684e+03 - -9.8537420e+01 -1.1012627e+03 -3.2533271e+03 - 0.0000000e+00 -1.1014719e+03 -3.2537510e+03 - 9.8537420e+01 -1.1012627e+03 -3.2533271e+03 - 1.9578937e+02 -1.1006492e+03 -3.2520684e+03 - 2.9055646e+02 -1.0996725e+03 -3.2500134e+03 - 3.8179768e+02 -1.0983959e+03 -3.2472215e+03 - 4.6867908e+02 -1.0968984e+03 -3.2437677e+03 - 5.5059480e+02 -1.0952680e+03 -3.2397357e+03 - 6.2716287e+02 -1.0935948e+03 -3.2352124e+03 - 6.9820171e+02 -1.0919658e+03 -3.2302824e+03 - 7.6369557e+02 -1.0904611e+03 -3.2250254e+03 - 8.2375581e+02 -1.0891519e+03 -3.2195130e+03 - 8.7858387e+02 -1.0880997e+03 -3.2138088e+03 - 9.2843887e+02 -1.0873563e+03 -3.2079681e+03 - 9.7361167e+02 -1.0869646e+03 -3.2020382e+03 - 1.0144052e+03 -1.0869594e+03 -3.1960599e+03 - 1.0511207e+03 -1.0873688e+03 -3.1900682e+03 - 1.0840484e+03 -1.0882150e+03 -3.1840936e+03 - 1.1134625e+03 -1.0895150e+03 -3.1781627e+03 - 1.1396181e+03 -1.0912814e+03 -3.1722996e+03 - 1.1627506e+03 -1.0935227e+03 -3.1665260e+03 - 1.1830760e+03 -1.0962440e+03 -3.1608624e+03 - 1.2007923e+03 -1.0994467e+03 -3.1553278e+03 - 1.2160810e+03 -1.1031290e+03 -3.1499408e+03 - 1.2291089e+03 -1.1072855e+03 -3.1447192e+03 - 1.2400302e+03 -1.1119073e+03 -3.1396804e+03 - 1.2489879e+03 -1.1169819e+03 -3.1348417e+03 - 1.2561159e+03 -1.1224929e+03 -3.1302196e+03 - 1.2615403e+03 -1.1284200e+03 -3.1258309e+03 - 1.2653806e+03 -1.1347388e+03 -3.1216914e+03 - 1.2677510e+03 -1.1414203e+03 -3.1178169e+03 - 1.2687614e+03 -1.1484316e+03 -3.1142224e+03 - 1.2685179e+03 -1.1557347e+03 -3.1109222e+03 - 1.2671235e+03 -1.1632875e+03 -3.1079298e+03 - 1.2646787e+03 -1.1710430e+03 -3.1052577e+03 - 1.2612818e+03 -1.1789498e+03 -3.1029173e+03 - 1.2570287e+03 -1.1869519e+03 -3.1009190e+03 - 1.2520134e+03 -1.1949889e+03 -3.0992714e+03 - 1.2463280e+03 -1.2029964e+03 -3.0979821e+03 - 1.2400621e+03 -1.2109057e+03 -3.0970570e+03 - 1.2333034e+03 -1.2186445e+03 -3.0965002e+03 - 1.2261368e+03 -1.2261368e+03 -3.0963143e+03 - 1.2186445e+03 -1.2333034e+03 -3.0965002e+03 - 1.2109057e+03 -1.2400621e+03 -3.0970570e+03 - 1.2029964e+03 -1.2463280e+03 -3.0979821e+03 - 1.1949889e+03 -1.2520134e+03 -3.0992714e+03 - 1.1869519e+03 -1.2570287e+03 -3.1009190e+03 - 1.1789498e+03 -1.2612818e+03 -3.1029173e+03 - 1.1710430e+03 -1.2646787e+03 -3.1052577e+03 - 1.1632875e+03 -1.2671235e+03 -3.1079298e+03 - 1.1557347e+03 -1.2685179e+03 -3.1109222e+03 - 1.1484316e+03 -1.2687614e+03 -3.1142224e+03 - 1.1414203e+03 -1.2677510e+03 -3.1178169e+03 - 1.1347388e+03 -1.2653806e+03 -3.1216914e+03 - 1.1284200e+03 -1.2615403e+03 -3.1258309e+03 - 1.1224929e+03 -1.2561159e+03 -3.1302196e+03 - 1.1169819e+03 -1.2489879e+03 -3.1348417e+03 - 1.1119073e+03 -1.2400302e+03 -3.1396804e+03 - 1.1072855e+03 -1.2291089e+03 -3.1447192e+03 - 1.1031290e+03 -1.2160810e+03 -3.1499408e+03 - 1.0994467e+03 -1.2007923e+03 -3.1553278e+03 - 1.0962440e+03 -1.1830760e+03 -3.1608624e+03 - 1.0935227e+03 -1.1627506e+03 -3.1665260e+03 - 1.0912814e+03 -1.1396181e+03 -3.1722996e+03 - 1.0895150e+03 -1.1134625e+03 -3.1781627e+03 - 1.0882150e+03 -1.0840484e+03 -3.1840936e+03 - 1.0873688e+03 -1.0511207e+03 -3.1900682e+03 - 1.0869594e+03 -1.0144052e+03 -3.1960599e+03 - 1.0869646e+03 -9.7361167e+02 -3.2020382e+03 - 1.0873563e+03 -9.2843887e+02 -3.2079681e+03 - 1.0880997e+03 -8.7858387e+02 -3.2138088e+03 - 1.0891519e+03 -8.2375581e+02 -3.2195130e+03 - 1.0904611e+03 -7.6369557e+02 -3.2250254e+03 - 1.0919658e+03 -6.9820171e+02 -3.2302824e+03 - 1.0935948e+03 -6.2716287e+02 -3.2352124e+03 - 1.0952680e+03 -5.5059480e+02 -3.2397357e+03 - 1.0968984e+03 -4.6867908e+02 -3.2437677e+03 - 1.0983959e+03 -3.8179768e+02 -3.2472215e+03 - 1.0996725e+03 -2.9055646e+02 -3.2500134e+03 - 1.1006492e+03 -1.9578937e+02 -3.2520684e+03 - 1.1012627e+03 -9.8537420e+01 -3.2533271e+03 - 1.1014719e+03 -4.8134273e-09 -3.2537510e+03 - 1.0588270e+03 2.4067136e-09 -3.2770874e+03 - 1.0586215e+03 9.4205469e+01 -3.2767034e+03 - 1.0580191e+03 1.8722603e+02 -3.2755626e+03 - 1.0570606e+03 2.7795226e+02 -3.2736973e+03 - 1.0558087e+03 3.6541428e+02 -3.2711579e+03 - 1.0543425e+03 4.4882575e+02 -3.2680082e+03 - 1.0527500e+03 5.2760452e+02 -3.2643202e+03 - 1.0511216e+03 6.0137114e+02 -3.2601694e+03 - 1.0495451e+03 6.6993026e+02 -3.2556306e+03 - 1.0481012e+03 7.3324146e+02 -3.2507745e+03 - 1.0468618e+03 7.9138563e+02 -3.2456664e+03 - 1.0458887e+03 8.4453195e+02 -3.2403646e+03 - 1.0452334e+03 8.9290841e+02 -3.2349208e+03 - 1.0449385e+03 9.3677755e+02 -3.2293801e+03 - 1.0450375e+03 9.7641773e+02 -3.2237818e+03 - 1.0455571e+03 1.0121095e+03 -3.2181602e+03 - 1.0465173e+03 1.0441264e+03 -3.2125454e+03 - 1.0479328e+03 1.0727290e+03 -3.2069643e+03 - 1.0498134e+03 1.0981620e+03 -3.2014408e+03 - 1.0521649e+03 1.1206526e+03 -3.1959971e+03 - 1.0549894e+03 1.1404105e+03 -3.1906536e+03 - 1.0582854e+03 1.1576287e+03 -3.1854296e+03 - 1.0620483e+03 1.1724851e+03 -3.1803434e+03 - 1.0662698e+03 1.1851434e+03 -3.1754126e+03 - 1.0709387e+03 1.1957552e+03 -3.1706545e+03 - 1.0760402e+03 1.2044613e+03 -3.1660856e+03 - 1.0815561e+03 1.2113934e+03 -3.1617221e+03 - 1.0874644e+03 1.2166754e+03 -3.1575797e+03 - 1.0937397e+03 1.2204246e+03 -3.1536738e+03 - 1.1003524e+03 1.2227525e+03 -3.1500191e+03 - 1.1072692e+03 1.2237664e+03 -3.1466295e+03 - 1.1144525e+03 1.2235692e+03 -3.1435186e+03 - 1.1218608e+03 1.2222608e+03 -3.1406987e+03 - 1.1294486e+03 1.2199380e+03 -3.1381815e+03 - 1.1371659e+03 1.2166953e+03 -3.1359775e+03 - 1.1449592e+03 1.2126245e+03 -3.1340960e+03 - 1.1527706e+03 1.2078155e+03 -3.1325453e+03 - 1.1605386e+03 1.2023558e+03 -3.1313319e+03 - 1.1681982e+03 1.1963307e+03 -3.1304614e+03 - 1.1756806e+03 1.1898233e+03 -3.1299375e+03 - 1.1829140e+03 1.1829140e+03 -3.1297626e+03 - 1.1898233e+03 1.1756806e+03 -3.1299375e+03 - 1.1963307e+03 1.1681982e+03 -3.1304614e+03 - 1.2023558e+03 1.1605386e+03 -3.1313319e+03 - 1.2078155e+03 1.1527706e+03 -3.1325453e+03 - 1.2126245e+03 1.1449592e+03 -3.1340960e+03 - 1.2166953e+03 1.1371659e+03 -3.1359775e+03 - 1.2199380e+03 1.1294486e+03 -3.1381815e+03 - 1.2222608e+03 1.1218608e+03 -3.1406987e+03 - 1.2235692e+03 1.1144525e+03 -3.1435186e+03 - 1.2237664e+03 1.1072692e+03 -3.1466295e+03 - 1.2227525e+03 1.1003524e+03 -3.1500191e+03 - 1.2204246e+03 1.0937397e+03 -3.1536738e+03 - 1.2166754e+03 1.0874644e+03 -3.1575797e+03 - 1.2113934e+03 1.0815561e+03 -3.1617221e+03 - 1.2044613e+03 1.0760402e+03 -3.1660856e+03 - 1.1957552e+03 1.0709387e+03 -3.1706545e+03 - 1.1851434e+03 1.0662698e+03 -3.1754126e+03 - 1.1724851e+03 1.0620483e+03 -3.1803434e+03 - 1.1576287e+03 1.0582854e+03 -3.1854296e+03 - 1.1404105e+03 1.0549894e+03 -3.1906536e+03 - 1.1206526e+03 1.0521649e+03 -3.1959971e+03 - 1.0981620e+03 1.0498134e+03 -3.2014408e+03 - 1.0727290e+03 1.0479328e+03 -3.2069643e+03 - 1.0441264e+03 1.0465173e+03 -3.2125454e+03 - 1.0121095e+03 1.0455571e+03 -3.2181602e+03 - 9.7641773e+02 1.0450375e+03 -3.2237818e+03 - 9.3677755e+02 1.0449385e+03 -3.2293801e+03 - 8.9290841e+02 1.0452334e+03 -3.2349208e+03 - 8.4453195e+02 1.0458887e+03 -3.2403646e+03 - 7.9138563e+02 1.0468618e+03 -3.2456664e+03 - 7.3324146e+02 1.0481012e+03 -3.2507745e+03 - 6.6993026e+02 1.0495451e+03 -3.2556306e+03 - 6.0137114e+02 1.0511216e+03 -3.2601694e+03 - 5.2760452e+02 1.0527500e+03 -3.2643202e+03 - 4.4882575e+02 1.0543425e+03 -3.2680082e+03 - 3.6541428e+02 1.0558087e+03 -3.2711579e+03 - 2.7795226e+02 1.0570606e+03 -3.2736973e+03 - 1.8722603e+02 1.0580191e+03 -3.2755626e+03 - 9.4205469e+01 1.0586215e+03 -3.2767034e+03 - 0.0000000e+00 1.0588270e+03 -3.2770874e+03 - -9.4205469e+01 1.0586215e+03 -3.2767034e+03 - -1.8722603e+02 1.0580191e+03 -3.2755626e+03 - -2.7795226e+02 1.0570606e+03 -3.2736973e+03 - -3.6541428e+02 1.0558087e+03 -3.2711579e+03 - -4.4882575e+02 1.0543425e+03 -3.2680082e+03 - -5.2760452e+02 1.0527500e+03 -3.2643202e+03 - -6.0137114e+02 1.0511216e+03 -3.2601694e+03 - -6.6993026e+02 1.0495451e+03 -3.2556306e+03 - -7.3324146e+02 1.0481012e+03 -3.2507745e+03 - -7.9138563e+02 1.0468618e+03 -3.2456664e+03 - -8.4453195e+02 1.0458887e+03 -3.2403646e+03 - -8.9290841e+02 1.0452334e+03 -3.2349208e+03 - -9.3677755e+02 1.0449385e+03 -3.2293801e+03 - -9.7641773e+02 1.0450375e+03 -3.2237818e+03 - -1.0121095e+03 1.0455571e+03 -3.2181602e+03 - -1.0441264e+03 1.0465173e+03 -3.2125454e+03 - -1.0727290e+03 1.0479328e+03 -3.2069643e+03 - -1.0981620e+03 1.0498134e+03 -3.2014408e+03 - -1.1206526e+03 1.0521649e+03 -3.1959971e+03 - -1.1404105e+03 1.0549894e+03 -3.1906536e+03 - -1.1576287e+03 1.0582854e+03 -3.1854296e+03 - -1.1724851e+03 1.0620483e+03 -3.1803434e+03 - -1.1851434e+03 1.0662698e+03 -3.1754126e+03 - -1.1957552e+03 1.0709387e+03 -3.1706545e+03 - -1.2044613e+03 1.0760402e+03 -3.1660856e+03 - -1.2113934e+03 1.0815561e+03 -3.1617221e+03 - -1.2166754e+03 1.0874644e+03 -3.1575797e+03 - -1.2204246e+03 1.0937397e+03 -3.1536738e+03 - -1.2227525e+03 1.1003524e+03 -3.1500191e+03 - -1.2237664e+03 1.1072692e+03 -3.1466295e+03 - -1.2235692e+03 1.1144525e+03 -3.1435186e+03 - -1.2222608e+03 1.1218608e+03 -3.1406987e+03 - -1.2199380e+03 1.1294486e+03 -3.1381815e+03 - -1.2166953e+03 1.1371659e+03 -3.1359775e+03 - -1.2126245e+03 1.1449592e+03 -3.1340960e+03 - -1.2078155e+03 1.1527706e+03 -3.1325453e+03 - -1.2023558e+03 1.1605386e+03 -3.1313319e+03 - -1.1963307e+03 1.1681982e+03 -3.1304614e+03 - -1.1898233e+03 1.1756806e+03 -3.1299375e+03 - -1.1829140e+03 1.1829140e+03 -3.1297626e+03 - -1.1756806e+03 1.1898233e+03 -3.1299375e+03 - -1.1681982e+03 1.1963307e+03 -3.1304614e+03 - -1.1605386e+03 1.2023558e+03 -3.1313319e+03 - -1.1527706e+03 1.2078155e+03 -3.1325453e+03 - -1.1449592e+03 1.2126245e+03 -3.1340960e+03 - -1.1371659e+03 1.2166953e+03 -3.1359775e+03 - -1.1294486e+03 1.2199380e+03 -3.1381815e+03 - -1.1218608e+03 1.2222608e+03 -3.1406987e+03 - -1.1144525e+03 1.2235692e+03 -3.1435186e+03 - -1.1072692e+03 1.2237664e+03 -3.1466295e+03 - -1.1003524e+03 1.2227525e+03 -3.1500191e+03 - -1.0937397e+03 1.2204246e+03 -3.1536738e+03 - -1.0874644e+03 1.2166754e+03 -3.1575797e+03 - -1.0815561e+03 1.2113934e+03 -3.1617221e+03 - -1.0760402e+03 1.2044613e+03 -3.1660856e+03 - -1.0709387e+03 1.1957552e+03 -3.1706545e+03 - -1.0662698e+03 1.1851434e+03 -3.1754126e+03 - -1.0620483e+03 1.1724851e+03 -3.1803434e+03 - -1.0582854e+03 1.1576287e+03 -3.1854296e+03 - -1.0549894e+03 1.1404105e+03 -3.1906536e+03 - -1.0521649e+03 1.1206526e+03 -3.1959971e+03 - -1.0498134e+03 1.0981620e+03 -3.2014408e+03 - -1.0479328e+03 1.0727290e+03 -3.2069643e+03 - -1.0465173e+03 1.0441264e+03 -3.2125454e+03 - -1.0455571e+03 1.0121095e+03 -3.2181602e+03 - -1.0450375e+03 9.7641773e+02 -3.2237818e+03 - -1.0449385e+03 9.3677755e+02 -3.2293801e+03 - -1.0452334e+03 8.9290841e+02 -3.2349208e+03 - -1.0458887e+03 8.4453195e+02 -3.2403646e+03 - -1.0468618e+03 7.9138563e+02 -3.2456664e+03 - -1.0481012e+03 7.3324146e+02 -3.2507745e+03 - -1.0495451e+03 6.6993026e+02 -3.2556306e+03 - -1.0511216e+03 6.0137114e+02 -3.2601694e+03 - -1.0527500e+03 5.2760452e+02 -3.2643202e+03 - -1.0543425e+03 4.4882575e+02 -3.2680082e+03 - -1.0558087e+03 3.6541428e+02 -3.2711579e+03 - -1.0570606e+03 2.7795226e+02 -3.2736973e+03 - -1.0580191e+03 1.8722603e+02 -3.2755626e+03 - -1.0586215e+03 9.4205469e+01 -3.2767034e+03 - -1.0588270e+03 -2.4067136e-09 -3.2770874e+03 - -1.0586215e+03 -9.4205469e+01 -3.2767034e+03 - -1.0580191e+03 -1.8722603e+02 -3.2755626e+03 - -1.0570606e+03 -2.7795226e+02 -3.2736973e+03 - -1.0558087e+03 -3.6541428e+02 -3.2711579e+03 - -1.0543425e+03 -4.4882575e+02 -3.2680082e+03 - -1.0527500e+03 -5.2760452e+02 -3.2643202e+03 - -1.0511216e+03 -6.0137114e+02 -3.2601694e+03 - -1.0495451e+03 -6.6993026e+02 -3.2556306e+03 - -1.0481012e+03 -7.3324146e+02 -3.2507745e+03 - -1.0468618e+03 -7.9138563e+02 -3.2456664e+03 - -1.0458887e+03 -8.4453195e+02 -3.2403646e+03 - -1.0452334e+03 -8.9290841e+02 -3.2349208e+03 - -1.0449385e+03 -9.3677755e+02 -3.2293801e+03 - -1.0450375e+03 -9.7641773e+02 -3.2237818e+03 - -1.0455571e+03 -1.0121095e+03 -3.2181602e+03 - -1.0465173e+03 -1.0441264e+03 -3.2125454e+03 - -1.0479328e+03 -1.0727290e+03 -3.2069643e+03 - -1.0498134e+03 -1.0981620e+03 -3.2014408e+03 - -1.0521649e+03 -1.1206526e+03 -3.1959971e+03 - -1.0549894e+03 -1.1404105e+03 -3.1906536e+03 - -1.0582854e+03 -1.1576287e+03 -3.1854296e+03 - -1.0620483e+03 -1.1724851e+03 -3.1803434e+03 - -1.0662698e+03 -1.1851434e+03 -3.1754126e+03 - -1.0709387e+03 -1.1957552e+03 -3.1706545e+03 - -1.0760402e+03 -1.2044613e+03 -3.1660856e+03 - -1.0815561e+03 -1.2113934e+03 -3.1617221e+03 - -1.0874644e+03 -1.2166754e+03 -3.1575797e+03 - -1.0937397e+03 -1.2204246e+03 -3.1536738e+03 - -1.1003524e+03 -1.2227525e+03 -3.1500191e+03 - -1.1072692e+03 -1.2237664e+03 -3.1466295e+03 - -1.1144525e+03 -1.2235692e+03 -3.1435186e+03 - -1.1218608e+03 -1.2222608e+03 -3.1406987e+03 - -1.1294486e+03 -1.2199380e+03 -3.1381815e+03 - -1.1371659e+03 -1.2166953e+03 -3.1359775e+03 - -1.1449592e+03 -1.2126245e+03 -3.1340960e+03 - -1.1527706e+03 -1.2078155e+03 -3.1325453e+03 - -1.1605386e+03 -1.2023558e+03 -3.1313319e+03 - -1.1681982e+03 -1.1963307e+03 -3.1304614e+03 - -1.1756806e+03 -1.1898233e+03 -3.1299375e+03 - -1.1829140e+03 -1.1829140e+03 -3.1297626e+03 - -1.1898233e+03 -1.1756806e+03 -3.1299375e+03 - -1.1963307e+03 -1.1681982e+03 -3.1304614e+03 - -1.2023558e+03 -1.1605386e+03 -3.1313319e+03 - -1.2078155e+03 -1.1527706e+03 -3.1325453e+03 - -1.2126245e+03 -1.1449592e+03 -3.1340960e+03 - -1.2166953e+03 -1.1371659e+03 -3.1359775e+03 - -1.2199380e+03 -1.1294486e+03 -3.1381815e+03 - -1.2222608e+03 -1.1218608e+03 -3.1406987e+03 - -1.2235692e+03 -1.1144525e+03 -3.1435186e+03 - -1.2237664e+03 -1.1072692e+03 -3.1466295e+03 - -1.2227525e+03 -1.1003524e+03 -3.1500191e+03 - -1.2204246e+03 -1.0937397e+03 -3.1536738e+03 - -1.2166754e+03 -1.0874644e+03 -3.1575797e+03 - -1.2113934e+03 -1.0815561e+03 -3.1617221e+03 - -1.2044613e+03 -1.0760402e+03 -3.1660856e+03 - -1.1957552e+03 -1.0709387e+03 -3.1706545e+03 - -1.1851434e+03 -1.0662698e+03 -3.1754126e+03 - -1.1724851e+03 -1.0620483e+03 -3.1803434e+03 - -1.1576287e+03 -1.0582854e+03 -3.1854296e+03 - -1.1404105e+03 -1.0549894e+03 -3.1906536e+03 - -1.1206526e+03 -1.0521649e+03 -3.1959971e+03 - -1.0981620e+03 -1.0498134e+03 -3.2014408e+03 - -1.0727290e+03 -1.0479328e+03 -3.2069643e+03 - -1.0441264e+03 -1.0465173e+03 -3.2125454e+03 - -1.0121095e+03 -1.0455571e+03 -3.2181602e+03 - -9.7641773e+02 -1.0450375e+03 -3.2237818e+03 - -9.3677755e+02 -1.0449385e+03 -3.2293801e+03 - -8.9290841e+02 -1.0452334e+03 -3.2349208e+03 - -8.4453195e+02 -1.0458887e+03 -3.2403646e+03 - -7.9138563e+02 -1.0468618e+03 -3.2456664e+03 - -7.3324146e+02 -1.0481012e+03 -3.2507745e+03 - -6.6993026e+02 -1.0495451e+03 -3.2556306e+03 - -6.0137114e+02 -1.0511216e+03 -3.2601694e+03 - -5.2760452e+02 -1.0527500e+03 -3.2643202e+03 - -4.4882575e+02 -1.0543425e+03 -3.2680082e+03 - -3.6541428e+02 -1.0558087e+03 -3.2711579e+03 - -2.7795226e+02 -1.0570606e+03 -3.2736973e+03 - -1.8722603e+02 -1.0580191e+03 -3.2755626e+03 - -9.4205469e+01 -1.0586215e+03 -3.2767034e+03 - -4.8134273e-09 -1.0588270e+03 -3.2770874e+03 - 9.4205469e+01 -1.0586215e+03 -3.2767034e+03 - 1.8722603e+02 -1.0580191e+03 -3.2755626e+03 - 2.7795226e+02 -1.0570606e+03 -3.2736973e+03 - 3.6541428e+02 -1.0558087e+03 -3.2711579e+03 - 4.4882575e+02 -1.0543425e+03 -3.2680082e+03 - 5.2760452e+02 -1.0527500e+03 -3.2643202e+03 - 6.0137114e+02 -1.0511216e+03 -3.2601694e+03 - 6.6993026e+02 -1.0495451e+03 -3.2556306e+03 - 7.3324146e+02 -1.0481012e+03 -3.2507745e+03 - 7.9138563e+02 -1.0468618e+03 -3.2456664e+03 - 8.4453195e+02 -1.0458887e+03 -3.2403646e+03 - 8.9290841e+02 -1.0452334e+03 -3.2349208e+03 - 9.3677755e+02 -1.0449385e+03 -3.2293801e+03 - 9.7641773e+02 -1.0450375e+03 -3.2237818e+03 - 1.0121095e+03 -1.0455571e+03 -3.2181602e+03 - 1.0441264e+03 -1.0465173e+03 -3.2125454e+03 - 1.0727290e+03 -1.0479328e+03 -3.2069643e+03 - 1.0981620e+03 -1.0498134e+03 -3.2014408e+03 - 1.1206526e+03 -1.0521649e+03 -3.1959971e+03 - 1.1404105e+03 -1.0549894e+03 -3.1906536e+03 - 1.1576287e+03 -1.0582854e+03 -3.1854296e+03 - 1.1724851e+03 -1.0620483e+03 -3.1803434e+03 - 1.1851434e+03 -1.0662698e+03 -3.1754126e+03 - 1.1957552e+03 -1.0709387e+03 -3.1706545e+03 - 1.2044613e+03 -1.0760402e+03 -3.1660856e+03 - 1.2113934e+03 -1.0815561e+03 -3.1617221e+03 - 1.2166754e+03 -1.0874644e+03 -3.1575797e+03 - 1.2204246e+03 -1.0937397e+03 -3.1536738e+03 - 1.2227525e+03 -1.1003524e+03 -3.1500191e+03 - 1.2237664e+03 -1.1072692e+03 -3.1466295e+03 - 1.2235692e+03 -1.1144525e+03 -3.1435186e+03 - 1.2222608e+03 -1.1218608e+03 -3.1406987e+03 - 1.2199380e+03 -1.1294486e+03 -3.1381815e+03 - 1.2166953e+03 -1.1371659e+03 -3.1359775e+03 - 1.2126245e+03 -1.1449592e+03 -3.1340960e+03 - 1.2078155e+03 -1.1527706e+03 -3.1325453e+03 - 1.2023558e+03 -1.1605386e+03 -3.1313319e+03 - 1.1963307e+03 -1.1681982e+03 -3.1304614e+03 - 1.1898233e+03 -1.1756806e+03 -3.1299375e+03 - 1.1829140e+03 -1.1829140e+03 -3.1297626e+03 - 1.1756806e+03 -1.1898233e+03 -3.1299375e+03 - 1.1681982e+03 -1.1963307e+03 -3.1304614e+03 - 1.1605386e+03 -1.2023558e+03 -3.1313319e+03 - 1.1527706e+03 -1.2078155e+03 -3.1325453e+03 - 1.1449592e+03 -1.2126245e+03 -3.1340960e+03 - 1.1371659e+03 -1.2166953e+03 -3.1359775e+03 - 1.1294486e+03 -1.2199380e+03 -3.1381815e+03 - 1.1218608e+03 -1.2222608e+03 -3.1406987e+03 - 1.1144525e+03 -1.2235692e+03 -3.1435186e+03 - 1.1072692e+03 -1.2237664e+03 -3.1466295e+03 - 1.1003524e+03 -1.2227525e+03 -3.1500191e+03 - 1.0937397e+03 -1.2204246e+03 -3.1536738e+03 - 1.0874644e+03 -1.2166754e+03 -3.1575797e+03 - 1.0815561e+03 -1.2113934e+03 -3.1617221e+03 - 1.0760402e+03 -1.2044613e+03 -3.1660856e+03 - 1.0709387e+03 -1.1957552e+03 -3.1706545e+03 - 1.0662698e+03 -1.1851434e+03 -3.1754126e+03 - 1.0620483e+03 -1.1724851e+03 -3.1803434e+03 - 1.0582854e+03 -1.1576287e+03 -3.1854296e+03 - 1.0549894e+03 -1.1404105e+03 -3.1906536e+03 - 1.0521649e+03 -1.1206526e+03 -3.1959971e+03 - 1.0498134e+03 -1.0981620e+03 -3.2014408e+03 - 1.0479328e+03 -1.0727290e+03 -3.2069643e+03 - 1.0465173e+03 -1.0441264e+03 -3.2125454e+03 - 1.0455571e+03 -1.0121095e+03 -3.2181602e+03 - 1.0450375e+03 -9.7641773e+02 -3.2237818e+03 - 1.0449385e+03 -9.3677755e+02 -3.2293801e+03 - 1.0452334e+03 -8.9290841e+02 -3.2349208e+03 - 1.0458887e+03 -8.4453195e+02 -3.2403646e+03 - 1.0468618e+03 -7.9138563e+02 -3.2456664e+03 - 1.0481012e+03 -7.3324146e+02 -3.2507745e+03 - 1.0495451e+03 -6.6993026e+02 -3.2556306e+03 - 1.0511216e+03 -6.0137114e+02 -3.2601694e+03 - 1.0527500e+03 -5.2760452e+02 -3.2643202e+03 - 1.0543425e+03 -4.4882575e+02 -3.2680082e+03 - 1.0558087e+03 -3.6541428e+02 -3.2711579e+03 - 1.0570606e+03 -2.7795226e+02 -3.2736973e+03 - 1.0580191e+03 -1.8722603e+02 -3.2755626e+03 - 1.0586215e+03 -9.4205469e+01 -3.2767034e+03 - 1.0588270e+03 0.0000000e+00 -3.2770874e+03 - 1.0161872e+03 -4.8134273e-09 -3.2993443e+03 - 1.0159869e+03 8.9962575e+01 -3.2989968e+03 - 1.0153998e+03 1.7883125e+02 -3.2979637e+03 - 1.0144659e+03 2.6557864e+02 -3.2962724e+03 - 1.0132470e+03 3.4930074e+02 -3.2939656e+03 - 1.0118211e+03 4.2925689e+02 -3.2910977e+03 - 1.0102755e+03 5.0488959e+02 -3.2877309e+03 - 1.0087001e+03 5.7582514e+02 -3.2839308e+03 - 1.0071824e+03 6.4185893e+02 -3.2797630e+03 - 1.0058033e+03 7.0293083e+02 -3.2752907e+03 - 1.0046346e+03 7.5909598e+02 -3.2705727e+03 - 1.0037382e+03 8.1049535e+02 -3.2656626e+03 - 1.0031653e+03 8.5732900e+02 -3.2606082e+03 - 1.0029578e+03 8.9983348e+02 -3.2554520e+03 - 1.0031485e+03 9.3826414e+02 -3.2502317e+03 - 1.0037625e+03 9.7288179e+02 -3.2449803e+03 - 1.0048181e+03 1.0039435e+03 -3.2397274e+03 - 1.0063279e+03 1.0316964e+03 -3.2344993e+03 - 1.0082995e+03 1.0563744e+03 -3.2293199e+03 - 1.0107364e+03 1.0781960e+03 -3.2242111e+03 - 1.0136379e+03 1.0973641e+03 -3.2191931e+03 - 1.0170003e+03 1.1140665e+03 -3.2142852e+03 - 1.0208161e+03 1.1284763e+03 -3.2095052e+03 - 1.0250750e+03 1.1407539e+03 -3.2048706e+03 - 1.0297636e+03 1.1510477e+03 -3.2003980e+03 - 1.0348651e+03 1.1594957e+03 -3.1961035e+03 - 1.0403598e+03 1.1662271e+03 -3.1920025e+03 - 1.0462244e+03 1.1713631e+03 -3.1881100e+03 - 1.0524325e+03 1.1750182e+03 -3.1844406e+03 - 1.0589542e+03 1.1773016e+03 -3.1810080e+03 - 1.0657560e+03 1.1783171e+03 -3.1778254e+03 - 1.0728008e+03 1.1781648e+03 -3.1749052e+03 - 1.0800480e+03 1.1769411e+03 -3.1722591e+03 - 1.0874530e+03 1.1747393e+03 -3.1698976e+03 - 1.0949680e+03 1.1716498e+03 -3.1678304e+03 - 1.1025412e+03 1.1677606e+03 -3.1660662e+03 - 1.1101177e+03 1.1631574e+03 -3.1646124e+03 - 1.1176387e+03 1.1579235e+03 -3.1634751e+03 - 1.1250425e+03 1.1521397e+03 -3.1626592e+03 - 1.1322640e+03 1.1458849e+03 -3.1621683e+03 - 1.1392351e+03 1.1392351e+03 -3.1620044e+03 - 1.1458849e+03 1.1322640e+03 -3.1621683e+03 - 1.1521397e+03 1.1250425e+03 -3.1626592e+03 - 1.1579235e+03 1.1176387e+03 -3.1634751e+03 - 1.1631574e+03 1.1101177e+03 -3.1646124e+03 - 1.1677606e+03 1.1025412e+03 -3.1660662e+03 - 1.1716498e+03 1.0949680e+03 -3.1678304e+03 - 1.1747393e+03 1.0874530e+03 -3.1698976e+03 - 1.1769411e+03 1.0800480e+03 -3.1722591e+03 - 1.1781648e+03 1.0728008e+03 -3.1749052e+03 - 1.1783171e+03 1.0657560e+03 -3.1778254e+03 - 1.1773016e+03 1.0589542e+03 -3.1810080e+03 - 1.1750182e+03 1.0524325e+03 -3.1844406e+03 - 1.1713631e+03 1.0462244e+03 -3.1881100e+03 - 1.1662271e+03 1.0403598e+03 -3.1920025e+03 - 1.1594957e+03 1.0348651e+03 -3.1961035e+03 - 1.1510477e+03 1.0297636e+03 -3.2003980e+03 - 1.1407539e+03 1.0250750e+03 -3.2048706e+03 - 1.1284763e+03 1.0208161e+03 -3.2095052e+03 - 1.1140665e+03 1.0170003e+03 -3.2142852e+03 - 1.0973641e+03 1.0136379e+03 -3.2191931e+03 - 1.0781960e+03 1.0107364e+03 -3.2242111e+03 - 1.0563744e+03 1.0082995e+03 -3.2293199e+03 - 1.0316964e+03 1.0063279e+03 -3.2344993e+03 - 1.0039435e+03 1.0048181e+03 -3.2397274e+03 - 9.7288179e+02 1.0037625e+03 -3.2449803e+03 - 9.3826414e+02 1.0031485e+03 -3.2502317e+03 - 8.9983348e+02 1.0029578e+03 -3.2554520e+03 - 8.5732900e+02 1.0031653e+03 -3.2606082e+03 - 8.1049535e+02 1.0037382e+03 -3.2656626e+03 - 7.5909598e+02 1.0046346e+03 -3.2705727e+03 - 7.0293083e+02 1.0058033e+03 -3.2752907e+03 - 6.4185893e+02 1.0071824e+03 -3.2797630e+03 - 5.7582514e+02 1.0087001e+03 -3.2839308e+03 - 5.0488959e+02 1.0102755e+03 -3.2877309e+03 - 4.2925689e+02 1.0118211e+03 -3.2910977e+03 - 3.4930074e+02 1.0132470e+03 -3.2939656e+03 - 2.6557864e+02 1.0144659e+03 -3.2962724e+03 - 1.7883125e+02 1.0153998e+03 -3.2979637e+03 - 8.9962575e+01 1.0159869e+03 -3.2989968e+03 - 0.0000000e+00 1.0161872e+03 -3.2993443e+03 - -8.9962575e+01 1.0159869e+03 -3.2989968e+03 - -1.7883125e+02 1.0153998e+03 -3.2979637e+03 - -2.6557864e+02 1.0144659e+03 -3.2962724e+03 - -3.4930074e+02 1.0132470e+03 -3.2939656e+03 - -4.2925689e+02 1.0118211e+03 -3.2910977e+03 - -5.0488959e+02 1.0102755e+03 -3.2877309e+03 - -5.7582514e+02 1.0087001e+03 -3.2839308e+03 - -6.4185893e+02 1.0071824e+03 -3.2797630e+03 - -7.0293083e+02 1.0058033e+03 -3.2752907e+03 - -7.5909598e+02 1.0046346e+03 -3.2705727e+03 - -8.1049535e+02 1.0037382e+03 -3.2656626e+03 - -8.5732900e+02 1.0031653e+03 -3.2606082e+03 - -8.9983348e+02 1.0029578e+03 -3.2554520e+03 - -9.3826414e+02 1.0031485e+03 -3.2502317e+03 - -9.7288179e+02 1.0037625e+03 -3.2449803e+03 - -1.0039435e+03 1.0048181e+03 -3.2397274e+03 - -1.0316964e+03 1.0063279e+03 -3.2344993e+03 - -1.0563744e+03 1.0082995e+03 -3.2293199e+03 - -1.0781960e+03 1.0107364e+03 -3.2242111e+03 - -1.0973641e+03 1.0136379e+03 -3.2191931e+03 - -1.1140665e+03 1.0170003e+03 -3.2142852e+03 - -1.1284763e+03 1.0208161e+03 -3.2095052e+03 - -1.1407539e+03 1.0250750e+03 -3.2048706e+03 - -1.1510477e+03 1.0297636e+03 -3.2003980e+03 - -1.1594957e+03 1.0348651e+03 -3.1961035e+03 - -1.1662271e+03 1.0403598e+03 -3.1920025e+03 - -1.1713631e+03 1.0462244e+03 -3.1881100e+03 - -1.1750182e+03 1.0524325e+03 -3.1844406e+03 - -1.1773016e+03 1.0589542e+03 -3.1810080e+03 - -1.1783171e+03 1.0657560e+03 -3.1778254e+03 - -1.1781648e+03 1.0728008e+03 -3.1749052e+03 - -1.1769411e+03 1.0800480e+03 -3.1722591e+03 - -1.1747393e+03 1.0874530e+03 -3.1698976e+03 - -1.1716498e+03 1.0949680e+03 -3.1678304e+03 - -1.1677606e+03 1.1025412e+03 -3.1660662e+03 - -1.1631574e+03 1.1101177e+03 -3.1646124e+03 - -1.1579235e+03 1.1176387e+03 -3.1634751e+03 - -1.1521397e+03 1.1250425e+03 -3.1626592e+03 - -1.1458849e+03 1.1322640e+03 -3.1621683e+03 - -1.1392351e+03 1.1392351e+03 -3.1620044e+03 - -1.1322640e+03 1.1458849e+03 -3.1621683e+03 - -1.1250425e+03 1.1521397e+03 -3.1626592e+03 - -1.1176387e+03 1.1579235e+03 -3.1634751e+03 - -1.1101177e+03 1.1631574e+03 -3.1646124e+03 - -1.1025412e+03 1.1677606e+03 -3.1660662e+03 - -1.0949680e+03 1.1716498e+03 -3.1678304e+03 - -1.0874530e+03 1.1747393e+03 -3.1698976e+03 - -1.0800480e+03 1.1769411e+03 -3.1722591e+03 - -1.0728008e+03 1.1781648e+03 -3.1749052e+03 - -1.0657560e+03 1.1783171e+03 -3.1778254e+03 - -1.0589542e+03 1.1773016e+03 -3.1810080e+03 - -1.0524325e+03 1.1750182e+03 -3.1844406e+03 - -1.0462244e+03 1.1713631e+03 -3.1881100e+03 - -1.0403598e+03 1.1662271e+03 -3.1920025e+03 - -1.0348651e+03 1.1594957e+03 -3.1961035e+03 - -1.0297636e+03 1.1510477e+03 -3.2003980e+03 - -1.0250750e+03 1.1407539e+03 -3.2048706e+03 - -1.0208161e+03 1.1284763e+03 -3.2095052e+03 - -1.0170003e+03 1.1140665e+03 -3.2142852e+03 - -1.0136379e+03 1.0973641e+03 -3.2191931e+03 - -1.0107364e+03 1.0781960e+03 -3.2242111e+03 - -1.0082995e+03 1.0563744e+03 -3.2293199e+03 - -1.0063279e+03 1.0316964e+03 -3.2344993e+03 - -1.0048181e+03 1.0039435e+03 -3.2397274e+03 - -1.0037625e+03 9.7288179e+02 -3.2449803e+03 - -1.0031485e+03 9.3826414e+02 -3.2502317e+03 - -1.0029578e+03 8.9983348e+02 -3.2554520e+03 - -1.0031653e+03 8.5732900e+02 -3.2606082e+03 - -1.0037382e+03 8.1049535e+02 -3.2656626e+03 - -1.0046346e+03 7.5909598e+02 -3.2705727e+03 - -1.0058033e+03 7.0293083e+02 -3.2752907e+03 - -1.0071824e+03 6.4185893e+02 -3.2797630e+03 - -1.0087001e+03 5.7582514e+02 -3.2839308e+03 - -1.0102755e+03 5.0488959e+02 -3.2877309e+03 - -1.0118211e+03 4.2925689e+02 -3.2910977e+03 - -1.0132470e+03 3.4930074e+02 -3.2939656e+03 - -1.0144659e+03 2.6557864e+02 -3.2962724e+03 - -1.0153998e+03 1.7883125e+02 -3.2979637e+03 - -1.0159869e+03 8.9962575e+01 -3.2989968e+03 - -1.0161872e+03 0.0000000e+00 -3.2993443e+03 - -1.0159869e+03 -8.9962575e+01 -3.2989968e+03 - -1.0153998e+03 -1.7883125e+02 -3.2979637e+03 - -1.0144659e+03 -2.6557864e+02 -3.2962724e+03 - -1.0132470e+03 -3.4930074e+02 -3.2939656e+03 - -1.0118211e+03 -4.2925689e+02 -3.2910977e+03 - -1.0102755e+03 -5.0488959e+02 -3.2877309e+03 - -1.0087001e+03 -5.7582514e+02 -3.2839308e+03 - -1.0071824e+03 -6.4185893e+02 -3.2797630e+03 - -1.0058033e+03 -7.0293083e+02 -3.2752907e+03 - -1.0046346e+03 -7.5909598e+02 -3.2705727e+03 - -1.0037382e+03 -8.1049535e+02 -3.2656626e+03 - -1.0031653e+03 -8.5732900e+02 -3.2606082e+03 - -1.0029578e+03 -8.9983348e+02 -3.2554520e+03 - -1.0031485e+03 -9.3826414e+02 -3.2502317e+03 - -1.0037625e+03 -9.7288179e+02 -3.2449803e+03 - -1.0048181e+03 -1.0039435e+03 -3.2397274e+03 - -1.0063279e+03 -1.0316964e+03 -3.2344993e+03 - -1.0082995e+03 -1.0563744e+03 -3.2293199e+03 - -1.0107364e+03 -1.0781960e+03 -3.2242111e+03 - -1.0136379e+03 -1.0973641e+03 -3.2191931e+03 - -1.0170003e+03 -1.1140665e+03 -3.2142852e+03 - -1.0208161e+03 -1.1284763e+03 -3.2095052e+03 - -1.0250750e+03 -1.1407539e+03 -3.2048706e+03 - -1.0297636e+03 -1.1510477e+03 -3.2003980e+03 - -1.0348651e+03 -1.1594957e+03 -3.1961035e+03 - -1.0403598e+03 -1.1662271e+03 -3.1920025e+03 - -1.0462244e+03 -1.1713631e+03 -3.1881100e+03 - -1.0524325e+03 -1.1750182e+03 -3.1844406e+03 - -1.0589542e+03 -1.1773016e+03 -3.1810080e+03 - -1.0657560e+03 -1.1783171e+03 -3.1778254e+03 - -1.0728008e+03 -1.1781648e+03 -3.1749052e+03 - -1.0800480e+03 -1.1769411e+03 -3.1722591e+03 - -1.0874530e+03 -1.1747393e+03 -3.1698976e+03 - -1.0949680e+03 -1.1716498e+03 -3.1678304e+03 - -1.1025412e+03 -1.1677606e+03 -3.1660662e+03 - -1.1101177e+03 -1.1631574e+03 -3.1646124e+03 - -1.1176387e+03 -1.1579235e+03 -3.1634751e+03 - -1.1250425e+03 -1.1521397e+03 -3.1626592e+03 - -1.1322640e+03 -1.1458849e+03 -3.1621683e+03 - -1.1392351e+03 -1.1392351e+03 -3.1620044e+03 - -1.1458849e+03 -1.1322640e+03 -3.1621683e+03 - -1.1521397e+03 -1.1250425e+03 -3.1626592e+03 - -1.1579235e+03 -1.1176387e+03 -3.1634751e+03 - -1.1631574e+03 -1.1101177e+03 -3.1646124e+03 - -1.1677606e+03 -1.1025412e+03 -3.1660662e+03 - -1.1716498e+03 -1.0949680e+03 -3.1678304e+03 - -1.1747393e+03 -1.0874530e+03 -3.1698976e+03 - -1.1769411e+03 -1.0800480e+03 -3.1722591e+03 - -1.1781648e+03 -1.0728008e+03 -3.1749052e+03 - -1.1783171e+03 -1.0657560e+03 -3.1778254e+03 - -1.1773016e+03 -1.0589542e+03 -3.1810080e+03 - -1.1750182e+03 -1.0524325e+03 -3.1844406e+03 - -1.1713631e+03 -1.0462244e+03 -3.1881100e+03 - -1.1662271e+03 -1.0403598e+03 -3.1920025e+03 - -1.1594957e+03 -1.0348651e+03 -3.1961035e+03 - -1.1510477e+03 -1.0297636e+03 -3.2003980e+03 - -1.1407539e+03 -1.0250750e+03 -3.2048706e+03 - -1.1284763e+03 -1.0208161e+03 -3.2095052e+03 - -1.1140665e+03 -1.0170003e+03 -3.2142852e+03 - -1.0973641e+03 -1.0136379e+03 -3.2191931e+03 - -1.0781960e+03 -1.0107364e+03 -3.2242111e+03 - -1.0563744e+03 -1.0082995e+03 -3.2293199e+03 - -1.0316964e+03 -1.0063279e+03 -3.2344993e+03 - -1.0039435e+03 -1.0048181e+03 -3.2397274e+03 - -9.7288179e+02 -1.0037625e+03 -3.2449803e+03 - -9.3826414e+02 -1.0031485e+03 -3.2502317e+03 - -8.9983348e+02 -1.0029578e+03 -3.2554520e+03 - -8.5732900e+02 -1.0031653e+03 -3.2606082e+03 - -8.1049535e+02 -1.0037382e+03 -3.2656626e+03 - -7.5909598e+02 -1.0046346e+03 -3.2705727e+03 - -7.0293083e+02 -1.0058033e+03 -3.2752907e+03 - -6.4185893e+02 -1.0071824e+03 -3.2797630e+03 - -5.7582514e+02 -1.0087001e+03 -3.2839308e+03 - -5.0488959e+02 -1.0102755e+03 -3.2877309e+03 - -4.2925689e+02 -1.0118211e+03 -3.2910977e+03 - -3.4930074e+02 -1.0132470e+03 -3.2939656e+03 - -2.6557864e+02 -1.0144659e+03 -3.2962724e+03 - -1.7883125e+02 -1.0153998e+03 -3.2979637e+03 - -8.9962575e+01 -1.0159869e+03 -3.2989968e+03 - 0.0000000e+00 -1.0161872e+03 -3.2993443e+03 - 8.9962575e+01 -1.0159869e+03 -3.2989968e+03 - 1.7883125e+02 -1.0153998e+03 -3.2979637e+03 - 2.6557864e+02 -1.0144659e+03 -3.2962724e+03 - 3.4930074e+02 -1.0132470e+03 -3.2939656e+03 - 4.2925689e+02 -1.0118211e+03 -3.2910977e+03 - 5.0488959e+02 -1.0102755e+03 -3.2877309e+03 - 5.7582514e+02 -1.0087001e+03 -3.2839308e+03 - 6.4185893e+02 -1.0071824e+03 -3.2797630e+03 - 7.0293083e+02 -1.0058033e+03 -3.2752907e+03 - 7.5909598e+02 -1.0046346e+03 -3.2705727e+03 - 8.1049535e+02 -1.0037382e+03 -3.2656626e+03 - 8.5732900e+02 -1.0031653e+03 -3.2606082e+03 - 8.9983348e+02 -1.0029578e+03 -3.2554520e+03 - 9.3826414e+02 -1.0031485e+03 -3.2502317e+03 - 9.7288179e+02 -1.0037625e+03 -3.2449803e+03 - 1.0039435e+03 -1.0048181e+03 -3.2397274e+03 - 1.0316964e+03 -1.0063279e+03 -3.2344993e+03 - 1.0563744e+03 -1.0082995e+03 -3.2293199e+03 - 1.0781960e+03 -1.0107364e+03 -3.2242111e+03 - 1.0973641e+03 -1.0136379e+03 -3.2191931e+03 - 1.1140665e+03 -1.0170003e+03 -3.2142852e+03 - 1.1284763e+03 -1.0208161e+03 -3.2095052e+03 - 1.1407539e+03 -1.0250750e+03 -3.2048706e+03 - 1.1510477e+03 -1.0297636e+03 -3.2003980e+03 - 1.1594957e+03 -1.0348651e+03 -3.1961035e+03 - 1.1662271e+03 -1.0403598e+03 -3.1920025e+03 - 1.1713631e+03 -1.0462244e+03 -3.1881100e+03 - 1.1750182e+03 -1.0524325e+03 -3.1844406e+03 - 1.1773016e+03 -1.0589542e+03 -3.1810080e+03 - 1.1783171e+03 -1.0657560e+03 -3.1778254e+03 - 1.1781648e+03 -1.0728008e+03 -3.1749052e+03 - 1.1769411e+03 -1.0800480e+03 -3.1722591e+03 - 1.1747393e+03 -1.0874530e+03 -3.1698976e+03 - 1.1716498e+03 -1.0949680e+03 -3.1678304e+03 - 1.1677606e+03 -1.1025412e+03 -3.1660662e+03 - 1.1631574e+03 -1.1101177e+03 -3.1646124e+03 - 1.1579235e+03 -1.1176387e+03 -3.1634751e+03 - 1.1521397e+03 -1.1250425e+03 -3.1626592e+03 - 1.1458849e+03 -1.1322640e+03 -3.1621683e+03 - 1.1392351e+03 -1.1392351e+03 -3.1620044e+03 - 1.1322640e+03 -1.1458849e+03 -3.1621683e+03 - 1.1250425e+03 -1.1521397e+03 -3.1626592e+03 - 1.1176387e+03 -1.1579235e+03 -3.1634751e+03 - 1.1101177e+03 -1.1631574e+03 -3.1646124e+03 - 1.1025412e+03 -1.1677606e+03 -3.1660662e+03 - 1.0949680e+03 -1.1716498e+03 -3.1678304e+03 - 1.0874530e+03 -1.1747393e+03 -3.1698976e+03 - 1.0800480e+03 -1.1769411e+03 -3.1722591e+03 - 1.0728008e+03 -1.1781648e+03 -3.1749052e+03 - 1.0657560e+03 -1.1783171e+03 -3.1778254e+03 - 1.0589542e+03 -1.1773016e+03 -3.1810080e+03 - 1.0524325e+03 -1.1750182e+03 -3.1844406e+03 - 1.0462244e+03 -1.1713631e+03 -3.1881100e+03 - 1.0403598e+03 -1.1662271e+03 -3.1920025e+03 - 1.0348651e+03 -1.1594957e+03 -3.1961035e+03 - 1.0297636e+03 -1.1510477e+03 -3.2003980e+03 - 1.0250750e+03 -1.1407539e+03 -3.2048706e+03 - 1.0208161e+03 -1.1284763e+03 -3.2095052e+03 - 1.0170003e+03 -1.1140665e+03 -3.2142852e+03 - 1.0136379e+03 -1.0973641e+03 -3.2191931e+03 - 1.0107364e+03 -1.0781960e+03 -3.2242111e+03 - 1.0082995e+03 -1.0563744e+03 -3.2293199e+03 - 1.0063279e+03 -1.0316964e+03 -3.2344993e+03 - 1.0048181e+03 -1.0039435e+03 -3.2397274e+03 - 1.0037625e+03 -9.7288179e+02 -3.2449803e+03 - 1.0031485e+03 -9.3826414e+02 -3.2502317e+03 - 1.0029578e+03 -8.9983348e+02 -3.2554520e+03 - 1.0031653e+03 -8.5732900e+02 -3.2606082e+03 - 1.0037382e+03 -8.1049535e+02 -3.2656626e+03 - 1.0046346e+03 -7.5909598e+02 -3.2705727e+03 - 1.0058033e+03 -7.0293083e+02 -3.2752907e+03 - 1.0071824e+03 -6.4185893e+02 -3.2797630e+03 - 1.0087001e+03 -5.7582514e+02 -3.2839308e+03 - 1.0102755e+03 -5.0488959e+02 -3.2877309e+03 - 1.0118211e+03 -4.2925689e+02 -3.2910977e+03 - 1.0132470e+03 -3.4930074e+02 -3.2939656e+03 - 1.0144659e+03 -2.6557864e+02 -3.2962724e+03 - 1.0153998e+03 -1.7883125e+02 -3.2979637e+03 - 1.0159869e+03 -8.9962575e+01 -3.2989968e+03 - 1.0161872e+03 0.0000000e+00 -3.2993443e+03 - 9.7355836e+02 -2.4067136e-09 -3.3205411e+03 - 9.7336432e+02 8.5798218e+01 -3.3202271e+03 - 9.7279565e+02 1.7058541e+02 -3.3192929e+03 - 9.7189127e+02 2.5340939e+02 -3.3177618e+03 - 9.7071166e+02 3.3342747e+02 -3.3156700e+03 - 9.6933314e+02 4.0994270e+02 -3.3130642e+03 - 9.6784141e+02 4.8242283e+02 -3.3099978e+03 - 9.6632526e+02 5.5050245e+02 -3.3065279e+03 - 9.6487125e+02 6.1397141e+02 -3.3027122e+03 - 9.6355965e+02 6.7275409e+02 -3.2986068e+03 - 9.6246196e+02 7.2688397e+02 -3.2942647e+03 - 9.6163955e+02 7.7647745e+02 -3.2897345e+03 - 9.6114340e+02 8.2170956e+02 -3.2850606e+03 - 9.6101457e+02 8.6279310e+02 -3.2802826e+03 - 9.6128499e+02 8.9996188e+02 -3.2754361e+03 - 9.6197854e+02 9.3345792e+02 -3.2705528e+03 - 9.6311209e+02 9.6352227e+02 -3.2656611e+03 - 9.6469650e+02 9.9038879e+02 -3.2607868e+03 - 9.6673748e+02 1.0142803e+03 -3.2559531e+03 - 9.6923630e+02 1.0354064e+03 -3.2511815e+03 - 9.7219032e+02 1.0539627e+03 -3.2464920e+03 - 9.7559342e+02 1.0701310e+03 -3.2419031e+03 - 9.7943624e+02 1.0840797e+03 -3.2374326e+03 - 9.8370641e+02 1.0959649e+03 -3.2330971e+03 - 9.8838860e+02 1.1059315e+03 -3.2289129e+03 - 9.9346457e+02 1.1141142e+03 -3.2248952e+03 - 9.9891315e+02 1.1206392e+03 -3.2210590e+03 - 1.0047102e+03 1.1256247e+03 -3.2174183e+03 - 1.0108286e+03 1.1291824e+03 -3.2139868e+03 - 1.0172381e+03 1.1314183e+03 -3.2107775e+03 - 1.0239054e+03 1.1324332e+03 -3.2078027e+03 - 1.0307937e+03 1.1323239e+03 -3.2050737e+03 - 1.0378634e+03 1.1311832e+03 -3.2026015e+03 - 1.0450714e+03 1.1291007e+03 -3.2003957e+03 - 1.0523714e+03 1.1261632e+03 -3.1984653e+03 - 1.0597140e+03 1.1224547e+03 -3.1968182e+03 - 1.0670464e+03 1.1180566e+03 -3.1954611e+03 - 1.0743131e+03 1.1130482e+03 -3.1943996e+03 - 1.0814553e+03 1.1075063e+03 -3.1936382e+03 - 1.0884114e+03 1.1015052e+03 -3.1931801e+03 - 1.0951170e+03 1.0951170e+03 -3.1930272e+03 - 1.1015052e+03 1.0884114e+03 -3.1931801e+03 - 1.1075063e+03 1.0814553e+03 -3.1936382e+03 - 1.1130482e+03 1.0743131e+03 -3.1943996e+03 - 1.1180566e+03 1.0670464e+03 -3.1954611e+03 - 1.1224547e+03 1.0597140e+03 -3.1968182e+03 - 1.1261632e+03 1.0523714e+03 -3.1984653e+03 - 1.1291007e+03 1.0450714e+03 -3.2003957e+03 - 1.1311832e+03 1.0378634e+03 -3.2026015e+03 - 1.1323239e+03 1.0307937e+03 -3.2050737e+03 - 1.1324332e+03 1.0239054e+03 -3.2078027e+03 - 1.1314183e+03 1.0172381e+03 -3.2107775e+03 - 1.1291824e+03 1.0108286e+03 -3.2139868e+03 - 1.1256247e+03 1.0047102e+03 -3.2174183e+03 - 1.1206392e+03 9.9891315e+02 -3.2210590e+03 - 1.1141142e+03 9.9346457e+02 -3.2248952e+03 - 1.1059315e+03 9.8838860e+02 -3.2289129e+03 - 1.0959649e+03 9.8370641e+02 -3.2330971e+03 - 1.0840797e+03 9.7943624e+02 -3.2374326e+03 - 1.0701310e+03 9.7559342e+02 -3.2419031e+03 - 1.0539627e+03 9.7219032e+02 -3.2464920e+03 - 1.0354064e+03 9.6923630e+02 -3.2511815e+03 - 1.0142803e+03 9.6673748e+02 -3.2559531e+03 - 9.9038879e+02 9.6469650e+02 -3.2607868e+03 - 9.6352227e+02 9.6311209e+02 -3.2656611e+03 - 9.3345792e+02 9.6197854e+02 -3.2705528e+03 - 8.9996188e+02 9.6128499e+02 -3.2754361e+03 - 8.6279310e+02 9.6101457e+02 -3.2802826e+03 - 8.2170956e+02 9.6114340e+02 -3.2850606e+03 - 7.7647745e+02 9.6163955e+02 -3.2897345e+03 - 7.2688397e+02 9.6246196e+02 -3.2942647e+03 - 6.7275409e+02 9.6355965e+02 -3.2986068e+03 - 6.1397141e+02 9.6487125e+02 -3.3027122e+03 - 5.5050245e+02 9.6632526e+02 -3.3065279e+03 - 4.8242283e+02 9.6784141e+02 -3.3099978e+03 - 4.0994270e+02 9.6933314e+02 -3.3130642e+03 - 3.3342747e+02 9.7071166e+02 -3.3156700e+03 - 2.5340939e+02 9.7189127e+02 -3.3177618e+03 - 1.7058541e+02 9.7279565e+02 -3.3192929e+03 - 8.5798218e+01 9.7336432e+02 -3.3202271e+03 - 0.0000000e+00 9.7355836e+02 -3.3205411e+03 - -8.5798218e+01 9.7336432e+02 -3.3202271e+03 - -1.7058541e+02 9.7279565e+02 -3.3192929e+03 - -2.5340939e+02 9.7189127e+02 -3.3177618e+03 - -3.3342747e+02 9.7071166e+02 -3.3156700e+03 - -4.0994270e+02 9.6933314e+02 -3.3130642e+03 - -4.8242283e+02 9.6784141e+02 -3.3099978e+03 - -5.5050245e+02 9.6632526e+02 -3.3065279e+03 - -6.1397141e+02 9.6487125e+02 -3.3027122e+03 - -6.7275409e+02 9.6355965e+02 -3.2986068e+03 - -7.2688397e+02 9.6246196e+02 -3.2942647e+03 - -7.7647745e+02 9.6163955e+02 -3.2897345e+03 - -8.2170956e+02 9.6114340e+02 -3.2850606e+03 - -8.6279310e+02 9.6101457e+02 -3.2802826e+03 - -8.9996188e+02 9.6128499e+02 -3.2754361e+03 - -9.3345792e+02 9.6197854e+02 -3.2705528e+03 - -9.6352227e+02 9.6311209e+02 -3.2656611e+03 - -9.9038879e+02 9.6469650e+02 -3.2607868e+03 - -1.0142803e+03 9.6673748e+02 -3.2559531e+03 - -1.0354064e+03 9.6923630e+02 -3.2511815e+03 - -1.0539627e+03 9.7219032e+02 -3.2464920e+03 - -1.0701310e+03 9.7559342e+02 -3.2419031e+03 - -1.0840797e+03 9.7943624e+02 -3.2374326e+03 - -1.0959649e+03 9.8370641e+02 -3.2330971e+03 - -1.1059315e+03 9.8838860e+02 -3.2289129e+03 - -1.1141142e+03 9.9346457e+02 -3.2248952e+03 - -1.1206392e+03 9.9891315e+02 -3.2210590e+03 - -1.1256247e+03 1.0047102e+03 -3.2174183e+03 - -1.1291824e+03 1.0108286e+03 -3.2139868e+03 - -1.1314183e+03 1.0172381e+03 -3.2107775e+03 - -1.1324332e+03 1.0239054e+03 -3.2078027e+03 - -1.1323239e+03 1.0307937e+03 -3.2050737e+03 - -1.1311832e+03 1.0378634e+03 -3.2026015e+03 - -1.1291007e+03 1.0450714e+03 -3.2003957e+03 - -1.1261632e+03 1.0523714e+03 -3.1984653e+03 - -1.1224547e+03 1.0597140e+03 -3.1968182e+03 - -1.1180566e+03 1.0670464e+03 -3.1954611e+03 - -1.1130482e+03 1.0743131e+03 -3.1943996e+03 - -1.1075063e+03 1.0814553e+03 -3.1936382e+03 - -1.1015052e+03 1.0884114e+03 -3.1931801e+03 - -1.0951170e+03 1.0951170e+03 -3.1930272e+03 - -1.0884114e+03 1.1015052e+03 -3.1931801e+03 - -1.0814553e+03 1.1075063e+03 -3.1936382e+03 - -1.0743131e+03 1.1130482e+03 -3.1943996e+03 - -1.0670464e+03 1.1180566e+03 -3.1954611e+03 - -1.0597140e+03 1.1224547e+03 -3.1968182e+03 - -1.0523714e+03 1.1261632e+03 -3.1984653e+03 - -1.0450714e+03 1.1291007e+03 -3.2003957e+03 - -1.0378634e+03 1.1311832e+03 -3.2026015e+03 - -1.0307937e+03 1.1323239e+03 -3.2050737e+03 - -1.0239054e+03 1.1324332e+03 -3.2078027e+03 - -1.0172381e+03 1.1314183e+03 -3.2107775e+03 - -1.0108286e+03 1.1291824e+03 -3.2139868e+03 - -1.0047102e+03 1.1256247e+03 -3.2174183e+03 - -9.9891315e+02 1.1206392e+03 -3.2210590e+03 - -9.9346457e+02 1.1141142e+03 -3.2248952e+03 - -9.8838860e+02 1.1059315e+03 -3.2289129e+03 - -9.8370641e+02 1.0959649e+03 -3.2330971e+03 - -9.7943624e+02 1.0840797e+03 -3.2374326e+03 - -9.7559342e+02 1.0701310e+03 -3.2419031e+03 - -9.7219032e+02 1.0539627e+03 -3.2464920e+03 - -9.6923630e+02 1.0354064e+03 -3.2511815e+03 - -9.6673748e+02 1.0142803e+03 -3.2559531e+03 - -9.6469650e+02 9.9038879e+02 -3.2607868e+03 - -9.6311209e+02 9.6352227e+02 -3.2656611e+03 - -9.6197854e+02 9.3345792e+02 -3.2705528e+03 - -9.6128499e+02 8.9996188e+02 -3.2754361e+03 - -9.6101457e+02 8.6279310e+02 -3.2802826e+03 - -9.6114340e+02 8.2170956e+02 -3.2850606e+03 - -9.6163955e+02 7.7647745e+02 -3.2897345e+03 - -9.6246196e+02 7.2688397e+02 -3.2942647e+03 - -9.6355965e+02 6.7275409e+02 -3.2986068e+03 - -9.6487125e+02 6.1397141e+02 -3.3027122e+03 - -9.6632526e+02 5.5050245e+02 -3.3065279e+03 - -9.6784141e+02 4.8242283e+02 -3.3099978e+03 - -9.6933314e+02 4.0994270e+02 -3.3130642e+03 - -9.7071166e+02 3.3342747e+02 -3.3156700e+03 - -9.7189127e+02 2.5340939e+02 -3.3177618e+03 - -9.7279565e+02 1.7058541e+02 -3.3192929e+03 - -9.7336432e+02 8.5798218e+01 -3.3202271e+03 - -9.7355836e+02 0.0000000e+00 -3.3205411e+03 - -9.7336432e+02 -8.5798218e+01 -3.3202271e+03 - -9.7279565e+02 -1.7058541e+02 -3.3192929e+03 - -9.7189127e+02 -2.5340939e+02 -3.3177618e+03 - -9.7071166e+02 -3.3342747e+02 -3.3156700e+03 - -9.6933314e+02 -4.0994270e+02 -3.3130642e+03 - -9.6784141e+02 -4.8242283e+02 -3.3099978e+03 - -9.6632526e+02 -5.5050245e+02 -3.3065279e+03 - -9.6487125e+02 -6.1397141e+02 -3.3027122e+03 - -9.6355965e+02 -6.7275409e+02 -3.2986068e+03 - -9.6246196e+02 -7.2688397e+02 -3.2942647e+03 - -9.6163955e+02 -7.7647745e+02 -3.2897345e+03 - -9.6114340e+02 -8.2170956e+02 -3.2850606e+03 - -9.6101457e+02 -8.6279310e+02 -3.2802826e+03 - -9.6128499e+02 -8.9996188e+02 -3.2754361e+03 - -9.6197854e+02 -9.3345792e+02 -3.2705528e+03 - -9.6311209e+02 -9.6352227e+02 -3.2656611e+03 - -9.6469650e+02 -9.9038879e+02 -3.2607868e+03 - -9.6673748e+02 -1.0142803e+03 -3.2559531e+03 - -9.6923630e+02 -1.0354064e+03 -3.2511815e+03 - -9.7219032e+02 -1.0539627e+03 -3.2464920e+03 - -9.7559342e+02 -1.0701310e+03 -3.2419031e+03 - -9.7943624e+02 -1.0840797e+03 -3.2374326e+03 - -9.8370641e+02 -1.0959649e+03 -3.2330971e+03 - -9.8838860e+02 -1.1059315e+03 -3.2289129e+03 - -9.9346457e+02 -1.1141142e+03 -3.2248952e+03 - -9.9891315e+02 -1.1206392e+03 -3.2210590e+03 - -1.0047102e+03 -1.1256247e+03 -3.2174183e+03 - -1.0108286e+03 -1.1291824e+03 -3.2139868e+03 - -1.0172381e+03 -1.1314183e+03 -3.2107775e+03 - -1.0239054e+03 -1.1324332e+03 -3.2078027e+03 - -1.0307937e+03 -1.1323239e+03 -3.2050737e+03 - -1.0378634e+03 -1.1311832e+03 -3.2026015e+03 - -1.0450714e+03 -1.1291007e+03 -3.2003957e+03 - -1.0523714e+03 -1.1261632e+03 -3.1984653e+03 - -1.0597140e+03 -1.1224547e+03 -3.1968182e+03 - -1.0670464e+03 -1.1180566e+03 -3.1954611e+03 - -1.0743131e+03 -1.1130482e+03 -3.1943996e+03 - -1.0814553e+03 -1.1075063e+03 -3.1936382e+03 - -1.0884114e+03 -1.1015052e+03 -3.1931801e+03 - -1.0951170e+03 -1.0951170e+03 -3.1930272e+03 - -1.1015052e+03 -1.0884114e+03 -3.1931801e+03 - -1.1075063e+03 -1.0814553e+03 -3.1936382e+03 - -1.1130482e+03 -1.0743131e+03 -3.1943996e+03 - -1.1180566e+03 -1.0670464e+03 -3.1954611e+03 - -1.1224547e+03 -1.0597140e+03 -3.1968182e+03 - -1.1261632e+03 -1.0523714e+03 -3.1984653e+03 - -1.1291007e+03 -1.0450714e+03 -3.2003957e+03 - -1.1311832e+03 -1.0378634e+03 -3.2026015e+03 - -1.1323239e+03 -1.0307937e+03 -3.2050737e+03 - -1.1324332e+03 -1.0239054e+03 -3.2078027e+03 - -1.1314183e+03 -1.0172381e+03 -3.2107775e+03 - -1.1291824e+03 -1.0108286e+03 -3.2139868e+03 - -1.1256247e+03 -1.0047102e+03 -3.2174183e+03 - -1.1206392e+03 -9.9891315e+02 -3.2210590e+03 - -1.1141142e+03 -9.9346457e+02 -3.2248952e+03 - -1.1059315e+03 -9.8838860e+02 -3.2289129e+03 - -1.0959649e+03 -9.8370641e+02 -3.2330971e+03 - -1.0840797e+03 -9.7943624e+02 -3.2374326e+03 - -1.0701310e+03 -9.7559342e+02 -3.2419031e+03 - -1.0539627e+03 -9.7219032e+02 -3.2464920e+03 - -1.0354064e+03 -9.6923630e+02 -3.2511815e+03 - -1.0142803e+03 -9.6673748e+02 -3.2559531e+03 - -9.9038879e+02 -9.6469650e+02 -3.2607868e+03 - -9.6352227e+02 -9.6311209e+02 -3.2656611e+03 - -9.3345792e+02 -9.6197854e+02 -3.2705528e+03 - -8.9996188e+02 -9.6128499e+02 -3.2754361e+03 - -8.6279310e+02 -9.6101457e+02 -3.2802826e+03 - -8.2170956e+02 -9.6114340e+02 -3.2850606e+03 - -7.7647745e+02 -9.6163955e+02 -3.2897345e+03 - -7.2688397e+02 -9.6246196e+02 -3.2942647e+03 - -6.7275409e+02 -9.6355965e+02 -3.2986068e+03 - -6.1397141e+02 -9.6487125e+02 -3.3027122e+03 - -5.5050245e+02 -9.6632526e+02 -3.3065279e+03 - -4.8242283e+02 -9.6784141e+02 -3.3099978e+03 - -4.0994270e+02 -9.6933314e+02 -3.3130642e+03 - -3.3342747e+02 -9.7071166e+02 -3.3156700e+03 - -2.5340939e+02 -9.7189127e+02 -3.3177618e+03 - -1.7058541e+02 -9.7279565e+02 -3.3192929e+03 - -8.5798218e+01 -9.7336432e+02 -3.3202271e+03 - 0.0000000e+00 -9.7355836e+02 -3.3205411e+03 - 8.5798218e+01 -9.7336432e+02 -3.3202271e+03 - 1.7058541e+02 -9.7279565e+02 -3.3192929e+03 - 2.5340939e+02 -9.7189127e+02 -3.3177618e+03 - 3.3342747e+02 -9.7071166e+02 -3.3156700e+03 - 4.0994270e+02 -9.6933314e+02 -3.3130642e+03 - 4.8242283e+02 -9.6784141e+02 -3.3099978e+03 - 5.5050245e+02 -9.6632526e+02 -3.3065279e+03 - 6.1397141e+02 -9.6487125e+02 -3.3027122e+03 - 6.7275409e+02 -9.6355965e+02 -3.2986068e+03 - 7.2688397e+02 -9.6246196e+02 -3.2942647e+03 - 7.7647745e+02 -9.6163955e+02 -3.2897345e+03 - 8.2170956e+02 -9.6114340e+02 -3.2850606e+03 - 8.6279310e+02 -9.6101457e+02 -3.2802826e+03 - 8.9996188e+02 -9.6128499e+02 -3.2754361e+03 - 9.3345792e+02 -9.6197854e+02 -3.2705528e+03 - 9.6352227e+02 -9.6311209e+02 -3.2656611e+03 - 9.9038879e+02 -9.6469650e+02 -3.2607868e+03 - 1.0142803e+03 -9.6673748e+02 -3.2559531e+03 - 1.0354064e+03 -9.6923630e+02 -3.2511815e+03 - 1.0539627e+03 -9.7219032e+02 -3.2464920e+03 - 1.0701310e+03 -9.7559342e+02 -3.2419031e+03 - 1.0840797e+03 -9.7943624e+02 -3.2374326e+03 - 1.0959649e+03 -9.8370641e+02 -3.2330971e+03 - 1.1059315e+03 -9.8838860e+02 -3.2289129e+03 - 1.1141142e+03 -9.9346457e+02 -3.2248952e+03 - 1.1206392e+03 -9.9891315e+02 -3.2210590e+03 - 1.1256247e+03 -1.0047102e+03 -3.2174183e+03 - 1.1291824e+03 -1.0108286e+03 -3.2139868e+03 - 1.1314183e+03 -1.0172381e+03 -3.2107775e+03 - 1.1324332e+03 -1.0239054e+03 -3.2078027e+03 - 1.1323239e+03 -1.0307937e+03 -3.2050737e+03 - 1.1311832e+03 -1.0378634e+03 -3.2026015e+03 - 1.1291007e+03 -1.0450714e+03 -3.2003957e+03 - 1.1261632e+03 -1.0523714e+03 -3.1984653e+03 - 1.1224547e+03 -1.0597140e+03 -3.1968182e+03 - 1.1180566e+03 -1.0670464e+03 -3.1954611e+03 - 1.1130482e+03 -1.0743131e+03 -3.1943996e+03 - 1.1075063e+03 -1.0814553e+03 -3.1936382e+03 - 1.1015052e+03 -1.0884114e+03 -3.1931801e+03 - 1.0951170e+03 -1.0951170e+03 -3.1930272e+03 - 1.0884114e+03 -1.1015052e+03 -3.1931801e+03 - 1.0814553e+03 -1.1075063e+03 -3.1936382e+03 - 1.0743131e+03 -1.1130482e+03 -3.1943996e+03 - 1.0670464e+03 -1.1180566e+03 -3.1954611e+03 - 1.0597140e+03 -1.1224547e+03 -3.1968182e+03 - 1.0523714e+03 -1.1261632e+03 -3.1984653e+03 - 1.0450714e+03 -1.1291007e+03 -3.2003957e+03 - 1.0378634e+03 -1.1311832e+03 -3.2026015e+03 - 1.0307937e+03 -1.1323239e+03 -3.2050737e+03 - 1.0239054e+03 -1.1324332e+03 -3.2078027e+03 - 1.0172381e+03 -1.1314183e+03 -3.2107775e+03 - 1.0108286e+03 -1.1291824e+03 -3.2139868e+03 - 1.0047102e+03 -1.1256247e+03 -3.2174183e+03 - 9.9891315e+02 -1.1206392e+03 -3.2210590e+03 - 9.9346457e+02 -1.1141142e+03 -3.2248952e+03 - 9.8838860e+02 -1.1059315e+03 -3.2289129e+03 - 9.8370641e+02 -1.0959649e+03 -3.2330971e+03 - 9.7943624e+02 -1.0840797e+03 -3.2374326e+03 - 9.7559342e+02 -1.0701310e+03 -3.2419031e+03 - 9.7219032e+02 -1.0539627e+03 -3.2464920e+03 - 9.6923630e+02 -1.0354064e+03 -3.2511815e+03 - 9.6673748e+02 -1.0142803e+03 -3.2559531e+03 - 9.6469650e+02 -9.9038879e+02 -3.2607868e+03 - 9.6311209e+02 -9.6352227e+02 -3.2656611e+03 - 9.6197854e+02 -9.3345792e+02 -3.2705528e+03 - 9.6128499e+02 -8.9996188e+02 -3.2754361e+03 - 9.6101457e+02 -8.6279310e+02 -3.2802826e+03 - 9.6114340e+02 -8.2170956e+02 -3.2850606e+03 - 9.6163955e+02 -7.7647745e+02 -3.2897345e+03 - 9.6246196e+02 -7.2688397e+02 -3.2942647e+03 - 9.6355965e+02 -6.7275409e+02 -3.2986068e+03 - 9.6487125e+02 -6.1397141e+02 -3.3027122e+03 - 9.6632526e+02 -5.5050245e+02 -3.3065279e+03 - 9.6784141e+02 -4.8242283e+02 -3.3099978e+03 - 9.6933314e+02 -4.0994270e+02 -3.3130642e+03 - 9.7071166e+02 -3.3342747e+02 -3.3156700e+03 - 9.7189127e+02 -2.5340939e+02 -3.3177618e+03 - 9.7279565e+02 -1.7058541e+02 -3.3192929e+03 - 9.7336432e+02 -8.5798218e+01 -3.3202271e+03 - 9.7355836e+02 0.0000000e+00 -3.3205411e+03 - 9.3094519e+02 0.0000000e+00 -3.3406965e+03 - 9.3075825e+02 8.1703437e+01 -3.3404132e+03 - 9.3021045e+02 1.6247176e+02 -3.3395702e+03 - 9.2933946e+02 2.4142206e+02 -3.3381871e+03 - 9.2820393e+02 3.1776891e+02 -3.3362947e+03 - 9.2687810e+02 3.9085725e+02 -3.3339329e+03 - 9.2544560e+02 4.6018036e+02 -3.3311479e+03 - 9.2399340e+02 5.2538311e+02 -3.3279893e+03 - 9.2260656e+02 5.8625292e+02 -3.3245076e+03 - 9.2136425e+02 6.4270226e+02 -3.3207526e+03 - 9.2033711e+02 6.9474653e+02 -3.3167718e+03 - 9.1958580e+02 7.4248076e+02 -3.3126092e+03 - 9.1916068e+02 7.8605765e+02 -3.3083056e+03 - 9.1910205e+02 8.2566829e+02 -3.3038978e+03 - 9.1944098e+02 8.6152644e+02 -3.2994191e+03 - 9.2020026e+02 8.9385625e+02 -3.2948995e+03 - 9.2139548e+02 9.2288329e+02 -3.2903663e+03 - 9.2303602e+02 9.4882822e+02 -3.2858441e+03 - 9.2512595e+02 9.7190279e+02 -3.2813554e+03 - 9.2766478e+02 9.9230744e+02 -3.2769211e+03 - 9.3064807e+02 1.0102302e+03 -3.2725604e+03 - 9.3406787e+02 1.0258464e+03 -3.2682914e+03 - 9.3791307e+02 1.0393192e+03 -3.2641312e+03 - 9.4216963e+02 1.0507999e+03 -3.2600959e+03 - 9.4682073e+02 1.0604295e+03 -3.2562009e+03 - 9.5184683e+02 1.0683391e+03 -3.2524608e+03 - 9.5722572e+02 1.0746514e+03 -3.2488898e+03 - 9.6293252e+02 1.0794814e+03 -3.2455012e+03 - 9.6893960e+02 1.0829377e+03 -3.2423078e+03 - 9.7521664e+02 1.0851227e+03 -3.2393216e+03 - 9.8173048e+02 1.0861342e+03 -3.2365541e+03 - 9.8844518e+02 1.0860653e+03 -3.2340159e+03 - 9.9532191e+02 1.0850054e+03 -3.2317170e+03 - 1.0023190e+03 1.0830405e+03 -3.2296663e+03 - 1.0093920e+03 1.0802534e+03 -3.2278720e+03 - 1.0164934e+03 1.0767242e+03 -3.2263412e+03 - 1.0235732e+03 1.0725305e+03 -3.2250801e+03 - 1.0305783e+03 1.0677474e+03 -3.2240939e+03 - 1.0374532e+03 1.0624475e+03 -3.2233866e+03 - 1.0441396e+03 1.0567013e+03 -3.2229610e+03 - 1.0505767e+03 1.0505767e+03 -3.2228189e+03 - 1.0567013e+03 1.0441396e+03 -3.2229610e+03 - 1.0624475e+03 1.0374532e+03 -3.2233866e+03 - 1.0677474e+03 1.0305783e+03 -3.2240939e+03 - 1.0725305e+03 1.0235732e+03 -3.2250801e+03 - 1.0767242e+03 1.0164934e+03 -3.2263412e+03 - 1.0802534e+03 1.0093920e+03 -3.2278720e+03 - 1.0830405e+03 1.0023190e+03 -3.2296663e+03 - 1.0850054e+03 9.9532191e+02 -3.2317170e+03 - 1.0860653e+03 9.8844518e+02 -3.2340159e+03 - 1.0861342e+03 9.8173048e+02 -3.2365541e+03 - 1.0851227e+03 9.7521664e+02 -3.2393216e+03 - 1.0829377e+03 9.6893960e+02 -3.2423078e+03 - 1.0794814e+03 9.6293252e+02 -3.2455012e+03 - 1.0746514e+03 9.5722572e+02 -3.2488898e+03 - 1.0683391e+03 9.5184683e+02 -3.2524608e+03 - 1.0604295e+03 9.4682073e+02 -3.2562009e+03 - 1.0507999e+03 9.4216963e+02 -3.2600959e+03 - 1.0393192e+03 9.3791307e+02 -3.2641312e+03 - 1.0258464e+03 9.3406787e+02 -3.2682914e+03 - 1.0102302e+03 9.3064807e+02 -3.2725604e+03 - 9.9230744e+02 9.2766478e+02 -3.2769211e+03 - 9.7190279e+02 9.2512595e+02 -3.2813554e+03 - 9.4882822e+02 9.2303602e+02 -3.2858441e+03 - 9.2288329e+02 9.2139548e+02 -3.2903663e+03 - 8.9385625e+02 9.2020026e+02 -3.2948995e+03 - 8.6152644e+02 9.1944098e+02 -3.2994191e+03 - 8.2566829e+02 9.1910205e+02 -3.3038978e+03 - 7.8605765e+02 9.1916068e+02 -3.3083056e+03 - 7.4248076e+02 9.1958580e+02 -3.3126092e+03 - 6.9474653e+02 9.2033711e+02 -3.3167718e+03 - 6.4270226e+02 9.2136425e+02 -3.3207526e+03 - 5.8625292e+02 9.2260656e+02 -3.3245076e+03 - 5.2538311e+02 9.2399340e+02 -3.3279893e+03 - 4.6018036e+02 9.2544560e+02 -3.3311479e+03 - 3.9085725e+02 9.2687810e+02 -3.3339329e+03 - 3.1776891e+02 9.2820393e+02 -3.3362947e+03 - 2.4142206e+02 9.2933946e+02 -3.3381871e+03 - 1.6247176e+02 9.3021045e+02 -3.3395702e+03 - 8.1703437e+01 9.3075825e+02 -3.3404132e+03 - 0.0000000e+00 9.3094519e+02 -3.3406965e+03 - -8.1703437e+01 9.3075825e+02 -3.3404132e+03 - -1.6247176e+02 9.3021045e+02 -3.3395702e+03 - -2.4142206e+02 9.2933946e+02 -3.3381871e+03 - -3.1776891e+02 9.2820393e+02 -3.3362947e+03 - -3.9085725e+02 9.2687810e+02 -3.3339329e+03 - -4.6018036e+02 9.2544560e+02 -3.3311479e+03 - -5.2538311e+02 9.2399340e+02 -3.3279893e+03 - -5.8625292e+02 9.2260656e+02 -3.3245076e+03 - -6.4270226e+02 9.2136425e+02 -3.3207526e+03 - -6.9474653e+02 9.2033711e+02 -3.3167718e+03 - -7.4248076e+02 9.1958580e+02 -3.3126092e+03 - -7.8605765e+02 9.1916068e+02 -3.3083056e+03 - -8.2566829e+02 9.1910205e+02 -3.3038978e+03 - -8.6152644e+02 9.1944098e+02 -3.2994191e+03 - -8.9385625e+02 9.2020026e+02 -3.2948995e+03 - -9.2288329e+02 9.2139548e+02 -3.2903663e+03 - -9.4882822e+02 9.2303602e+02 -3.2858441e+03 - -9.7190279e+02 9.2512595e+02 -3.2813554e+03 - -9.9230744e+02 9.2766478e+02 -3.2769211e+03 - -1.0102302e+03 9.3064807e+02 -3.2725604e+03 - -1.0258464e+03 9.3406787e+02 -3.2682914e+03 - -1.0393192e+03 9.3791307e+02 -3.2641312e+03 - -1.0507999e+03 9.4216963e+02 -3.2600959e+03 - -1.0604295e+03 9.4682073e+02 -3.2562009e+03 - -1.0683391e+03 9.5184683e+02 -3.2524608e+03 - -1.0746514e+03 9.5722572e+02 -3.2488898e+03 - -1.0794814e+03 9.6293252e+02 -3.2455012e+03 - -1.0829377e+03 9.6893960e+02 -3.2423078e+03 - -1.0851227e+03 9.7521664e+02 -3.2393216e+03 - -1.0861342e+03 9.8173048e+02 -3.2365541e+03 - -1.0860653e+03 9.8844518e+02 -3.2340159e+03 - -1.0850054e+03 9.9532191e+02 -3.2317170e+03 - -1.0830405e+03 1.0023190e+03 -3.2296663e+03 - -1.0802534e+03 1.0093920e+03 -3.2278720e+03 - -1.0767242e+03 1.0164934e+03 -3.2263412e+03 - -1.0725305e+03 1.0235732e+03 -3.2250801e+03 - -1.0677474e+03 1.0305783e+03 -3.2240939e+03 - -1.0624475e+03 1.0374532e+03 -3.2233866e+03 - -1.0567013e+03 1.0441396e+03 -3.2229610e+03 - -1.0505767e+03 1.0505767e+03 -3.2228189e+03 - -1.0441396e+03 1.0567013e+03 -3.2229610e+03 - -1.0374532e+03 1.0624475e+03 -3.2233866e+03 - -1.0305783e+03 1.0677474e+03 -3.2240939e+03 - -1.0235732e+03 1.0725305e+03 -3.2250801e+03 - -1.0164934e+03 1.0767242e+03 -3.2263412e+03 - -1.0093920e+03 1.0802534e+03 -3.2278720e+03 - -1.0023190e+03 1.0830405e+03 -3.2296663e+03 - -9.9532191e+02 1.0850054e+03 -3.2317170e+03 - -9.8844518e+02 1.0860653e+03 -3.2340159e+03 - -9.8173048e+02 1.0861342e+03 -3.2365541e+03 - -9.7521664e+02 1.0851227e+03 -3.2393216e+03 - -9.6893960e+02 1.0829377e+03 -3.2423078e+03 - -9.6293252e+02 1.0794814e+03 -3.2455012e+03 - -9.5722572e+02 1.0746514e+03 -3.2488898e+03 - -9.5184683e+02 1.0683391e+03 -3.2524608e+03 - -9.4682073e+02 1.0604295e+03 -3.2562009e+03 - -9.4216963e+02 1.0507999e+03 -3.2600959e+03 - -9.3791307e+02 1.0393192e+03 -3.2641312e+03 - -9.3406787e+02 1.0258464e+03 -3.2682914e+03 - -9.3064807e+02 1.0102302e+03 -3.2725604e+03 - -9.2766478e+02 9.9230744e+02 -3.2769211e+03 - -9.2512595e+02 9.7190279e+02 -3.2813554e+03 - -9.2303602e+02 9.4882822e+02 -3.2858441e+03 - -9.2139548e+02 9.2288329e+02 -3.2903663e+03 - -9.2020026e+02 8.9385625e+02 -3.2948995e+03 - -9.1944098e+02 8.6152644e+02 -3.2994191e+03 - -9.1910205e+02 8.2566829e+02 -3.3038978e+03 - -9.1916068e+02 7.8605765e+02 -3.3083056e+03 - -9.1958580e+02 7.4248076e+02 -3.3126092e+03 - -9.2033711e+02 6.9474653e+02 -3.3167718e+03 - -9.2136425e+02 6.4270226e+02 -3.3207526e+03 - -9.2260656e+02 5.8625292e+02 -3.3245076e+03 - -9.2399340e+02 5.2538311e+02 -3.3279893e+03 - -9.2544560e+02 4.6018036e+02 -3.3311479e+03 - -9.2687810e+02 3.9085725e+02 -3.3339329e+03 - -9.2820393e+02 3.1776891e+02 -3.3362947e+03 - -9.2933946e+02 2.4142206e+02 -3.3381871e+03 - -9.3021045e+02 1.6247176e+02 -3.3395702e+03 - -9.3075825e+02 8.1703437e+01 -3.3404132e+03 - -9.3094519e+02 0.0000000e+00 -3.3406965e+03 - -9.3075825e+02 -8.1703437e+01 -3.3404132e+03 - -9.3021045e+02 -1.6247176e+02 -3.3395702e+03 - -9.2933946e+02 -2.4142206e+02 -3.3381871e+03 - -9.2820393e+02 -3.1776891e+02 -3.3362947e+03 - -9.2687810e+02 -3.9085725e+02 -3.3339329e+03 - -9.2544560e+02 -4.6018036e+02 -3.3311479e+03 - -9.2399340e+02 -5.2538311e+02 -3.3279893e+03 - -9.2260656e+02 -5.8625292e+02 -3.3245076e+03 - -9.2136425e+02 -6.4270226e+02 -3.3207526e+03 - -9.2033711e+02 -6.9474653e+02 -3.3167718e+03 - -9.1958580e+02 -7.4248076e+02 -3.3126092e+03 - -9.1916068e+02 -7.8605765e+02 -3.3083056e+03 - -9.1910205e+02 -8.2566829e+02 -3.3038978e+03 - -9.1944098e+02 -8.6152644e+02 -3.2994191e+03 - -9.2020026e+02 -8.9385625e+02 -3.2948995e+03 - -9.2139548e+02 -9.2288329e+02 -3.2903663e+03 - -9.2303602e+02 -9.4882822e+02 -3.2858441e+03 - -9.2512595e+02 -9.7190279e+02 -3.2813554e+03 - -9.2766478e+02 -9.9230744e+02 -3.2769211e+03 - -9.3064807e+02 -1.0102302e+03 -3.2725604e+03 - -9.3406787e+02 -1.0258464e+03 -3.2682914e+03 - -9.3791307e+02 -1.0393192e+03 -3.2641312e+03 - -9.4216963e+02 -1.0507999e+03 -3.2600959e+03 - -9.4682073e+02 -1.0604295e+03 -3.2562009e+03 - -9.5184683e+02 -1.0683391e+03 -3.2524608e+03 - -9.5722572e+02 -1.0746514e+03 -3.2488898e+03 - -9.6293252e+02 -1.0794814e+03 -3.2455012e+03 - -9.6893960e+02 -1.0829377e+03 -3.2423078e+03 - -9.7521664e+02 -1.0851227e+03 -3.2393216e+03 - -9.8173048e+02 -1.0861342e+03 -3.2365541e+03 - -9.8844518e+02 -1.0860653e+03 -3.2340159e+03 - -9.9532191e+02 -1.0850054e+03 -3.2317170e+03 - -1.0023190e+03 -1.0830405e+03 -3.2296663e+03 - -1.0093920e+03 -1.0802534e+03 -3.2278720e+03 - -1.0164934e+03 -1.0767242e+03 -3.2263412e+03 - -1.0235732e+03 -1.0725305e+03 -3.2250801e+03 - -1.0305783e+03 -1.0677474e+03 -3.2240939e+03 - -1.0374532e+03 -1.0624475e+03 -3.2233866e+03 - -1.0441396e+03 -1.0567013e+03 -3.2229610e+03 - -1.0505767e+03 -1.0505767e+03 -3.2228189e+03 - -1.0567013e+03 -1.0441396e+03 -3.2229610e+03 - -1.0624475e+03 -1.0374532e+03 -3.2233866e+03 - -1.0677474e+03 -1.0305783e+03 -3.2240939e+03 - -1.0725305e+03 -1.0235732e+03 -3.2250801e+03 - -1.0767242e+03 -1.0164934e+03 -3.2263412e+03 - -1.0802534e+03 -1.0093920e+03 -3.2278720e+03 - -1.0830405e+03 -1.0023190e+03 -3.2296663e+03 - -1.0850054e+03 -9.9532191e+02 -3.2317170e+03 - -1.0860653e+03 -9.8844518e+02 -3.2340159e+03 - -1.0861342e+03 -9.8173048e+02 -3.2365541e+03 - -1.0851227e+03 -9.7521664e+02 -3.2393216e+03 - -1.0829377e+03 -9.6893960e+02 -3.2423078e+03 - -1.0794814e+03 -9.6293252e+02 -3.2455012e+03 - -1.0746514e+03 -9.5722572e+02 -3.2488898e+03 - -1.0683391e+03 -9.5184683e+02 -3.2524608e+03 - -1.0604295e+03 -9.4682073e+02 -3.2562009e+03 - -1.0507999e+03 -9.4216963e+02 -3.2600959e+03 - -1.0393192e+03 -9.3791307e+02 -3.2641312e+03 - -1.0258464e+03 -9.3406787e+02 -3.2682914e+03 - -1.0102302e+03 -9.3064807e+02 -3.2725604e+03 - -9.9230744e+02 -9.2766478e+02 -3.2769211e+03 - -9.7190279e+02 -9.2512595e+02 -3.2813554e+03 - -9.4882822e+02 -9.2303602e+02 -3.2858441e+03 - -9.2288329e+02 -9.2139548e+02 -3.2903663e+03 - -8.9385625e+02 -9.2020026e+02 -3.2948995e+03 - -8.6152644e+02 -9.1944098e+02 -3.2994191e+03 - -8.2566829e+02 -9.1910205e+02 -3.3038978e+03 - -7.8605765e+02 -9.1916068e+02 -3.3083056e+03 - -7.4248076e+02 -9.1958580e+02 -3.3126092e+03 - -6.9474653e+02 -9.2033711e+02 -3.3167718e+03 - -6.4270226e+02 -9.2136425e+02 -3.3207526e+03 - -5.8625292e+02 -9.2260656e+02 -3.3245076e+03 - -5.2538311e+02 -9.2399340e+02 -3.3279893e+03 - -4.6018036e+02 -9.2544560e+02 -3.3311479e+03 - -3.9085725e+02 -9.2687810e+02 -3.3339329e+03 - -3.1776891e+02 -9.2820393e+02 -3.3362947e+03 - -2.4142206e+02 -9.2933946e+02 -3.3381871e+03 - -1.6247176e+02 -9.3021045e+02 -3.3395702e+03 - -8.1703437e+01 -9.3075825e+02 -3.3404132e+03 - 0.0000000e+00 -9.3094519e+02 -3.3406965e+03 - 8.1703437e+01 -9.3075825e+02 -3.3404132e+03 - 1.6247176e+02 -9.3021045e+02 -3.3395702e+03 - 2.4142206e+02 -9.2933946e+02 -3.3381871e+03 - 3.1776891e+02 -9.2820393e+02 -3.3362947e+03 - 3.9085725e+02 -9.2687810e+02 -3.3339329e+03 - 4.6018036e+02 -9.2544560e+02 -3.3311479e+03 - 5.2538311e+02 -9.2399340e+02 -3.3279893e+03 - 5.8625292e+02 -9.2260656e+02 -3.3245076e+03 - 6.4270226e+02 -9.2136425e+02 -3.3207526e+03 - 6.9474653e+02 -9.2033711e+02 -3.3167718e+03 - 7.4248076e+02 -9.1958580e+02 -3.3126092e+03 - 7.8605765e+02 -9.1916068e+02 -3.3083056e+03 - 8.2566829e+02 -9.1910205e+02 -3.3038978e+03 - 8.6152644e+02 -9.1944098e+02 -3.2994191e+03 - 8.9385625e+02 -9.2020026e+02 -3.2948995e+03 - 9.2288329e+02 -9.2139548e+02 -3.2903663e+03 - 9.4882822e+02 -9.2303602e+02 -3.2858441e+03 - 9.7190279e+02 -9.2512595e+02 -3.2813554e+03 - 9.9230744e+02 -9.2766478e+02 -3.2769211e+03 - 1.0102302e+03 -9.3064807e+02 -3.2725604e+03 - 1.0258464e+03 -9.3406787e+02 -3.2682914e+03 - 1.0393192e+03 -9.3791307e+02 -3.2641312e+03 - 1.0507999e+03 -9.4216963e+02 -3.2600959e+03 - 1.0604295e+03 -9.4682073e+02 -3.2562009e+03 - 1.0683391e+03 -9.5184683e+02 -3.2524608e+03 - 1.0746514e+03 -9.5722572e+02 -3.2488898e+03 - 1.0794814e+03 -9.6293252e+02 -3.2455012e+03 - 1.0829377e+03 -9.6893960e+02 -3.2423078e+03 - 1.0851227e+03 -9.7521664e+02 -3.2393216e+03 - 1.0861342e+03 -9.8173048e+02 -3.2365541e+03 - 1.0860653e+03 -9.8844518e+02 -3.2340159e+03 - 1.0850054e+03 -9.9532191e+02 -3.2317170e+03 - 1.0830405e+03 -1.0023190e+03 -3.2296663e+03 - 1.0802534e+03 -1.0093920e+03 -3.2278720e+03 - 1.0767242e+03 -1.0164934e+03 -3.2263412e+03 - 1.0725305e+03 -1.0235732e+03 -3.2250801e+03 - 1.0677474e+03 -1.0305783e+03 -3.2240939e+03 - 1.0624475e+03 -1.0374532e+03 -3.2233866e+03 - 1.0567013e+03 -1.0441396e+03 -3.2229610e+03 - 1.0505767e+03 -1.0505767e+03 -3.2228189e+03 - 1.0441396e+03 -1.0567013e+03 -3.2229610e+03 - 1.0374532e+03 -1.0624475e+03 -3.2233866e+03 - 1.0305783e+03 -1.0677474e+03 -3.2240939e+03 - 1.0235732e+03 -1.0725305e+03 -3.2250801e+03 - 1.0164934e+03 -1.0767242e+03 -3.2263412e+03 - 1.0093920e+03 -1.0802534e+03 -3.2278720e+03 - 1.0023190e+03 -1.0830405e+03 -3.2296663e+03 - 9.9532191e+02 -1.0850054e+03 -3.2317170e+03 - 9.8844518e+02 -1.0860653e+03 -3.2340159e+03 - 9.8173048e+02 -1.0861342e+03 -3.2365541e+03 - 9.7521664e+02 -1.0851227e+03 -3.2393216e+03 - 9.6893960e+02 -1.0829377e+03 -3.2423078e+03 - 9.6293252e+02 -1.0794814e+03 -3.2455012e+03 - 9.5722572e+02 -1.0746514e+03 -3.2488898e+03 - 9.5184683e+02 -1.0683391e+03 -3.2524608e+03 - 9.4682073e+02 -1.0604295e+03 -3.2562009e+03 - 9.4216963e+02 -1.0507999e+03 -3.2600959e+03 - 9.3791307e+02 -1.0393192e+03 -3.2641312e+03 - 9.3406787e+02 -1.0258464e+03 -3.2682914e+03 - 9.3064807e+02 -1.0102302e+03 -3.2725604e+03 - 9.2766478e+02 -9.9230744e+02 -3.2769211e+03 - 9.2512595e+02 -9.7190279e+02 -3.2813554e+03 - 9.2303602e+02 -9.4882822e+02 -3.2858441e+03 - 9.2139548e+02 -9.2288329e+02 -3.2903663e+03 - 9.2020026e+02 -8.9385625e+02 -3.2948995e+03 - 9.1944098e+02 -8.6152644e+02 -3.2994191e+03 - 9.1910205e+02 -8.2566829e+02 -3.3038978e+03 - 9.1916068e+02 -7.8605765e+02 -3.3083056e+03 - 9.1958580e+02 -7.4248076e+02 -3.3126092e+03 - 9.2033711e+02 -6.9474653e+02 -3.3167718e+03 - 9.2136425e+02 -6.4270226e+02 -3.3207526e+03 - 9.2260656e+02 -5.8625292e+02 -3.3245076e+03 - 9.2399340e+02 -5.2538311e+02 -3.3279893e+03 - 9.2544560e+02 -4.6018036e+02 -3.3311479e+03 - 9.2687810e+02 -3.9085725e+02 -3.3339329e+03 - 9.2820393e+02 -3.1776891e+02 -3.3362947e+03 - 9.2933946e+02 -2.4142206e+02 -3.3381871e+03 - 9.3021045e+02 -1.6247176e+02 -3.3395702e+03 - 9.3075825e+02 -8.1703437e+01 -3.3404132e+03 - 9.3094519e+02 0.0000000e+00 -3.3406965e+03 - 8.8835181e+02 0.0000000e+00 -3.3598283e+03 - 8.8817260e+02 7.7670540e+01 -3.3595735e+03 - 8.8764749e+02 1.5447586e+02 -3.3588147e+03 - 8.8681274e+02 2.2959722e+02 -3.3575685e+03 - 8.8572492e+02 3.0230284e+02 -3.3558614e+03 - 8.8445580e+02 3.7197782e+02 -3.3537274e+03 - 8.8308650e+02 4.3814106e+02 -3.3512063e+03 - 8.8170168e+02 5.0044928e+02 -3.3483410e+03 - 8.8038442e+02 5.5869003e+02 -3.3451760e+03 - 8.7921230e+02 6.1276694e+02 -3.3417552e+03 - 8.7825471e+02 6.6268044e+02 -3.3381209e+03 - 8.7757132e+02 7.0850709e+02 -3.3343130e+03 - 8.7721161e+02 7.5037967e+02 -3.3303685e+03 - 8.7721508e+02 7.8846948e+02 -3.3263215e+03 - 8.7761188e+02 8.2297163e+02 -3.3222029e+03 - 8.7842383e+02 8.5409335e+02 -3.3180409e+03 - 8.7966539e+02 8.8204523e+02 -3.3138612e+03 - 8.8134468e+02 9.0703502e+02 -3.3096873e+03 - 8.8346439e+02 9.2926340e+02 -3.3055407e+03 - 8.8602258e+02 9.4892143e+02 -3.3014414e+03 - 8.8901328e+02 9.6618921e+02 -3.2974079e+03 - 8.9242707e+02 9.8123537e+02 -3.2934575e+03 - 8.9625138e+02 9.9421721e+02 -3.2896065e+03 - 9.0047082e+02 1.0052812e+03 -3.2858703e+03 - 9.0506739e+02 1.0145637e+03 -3.2822635e+03 - 9.1002052e+02 1.0221920e+03 -3.2788001e+03 - 9.1530723e+02 1.0282849e+03 -3.2754933e+03 - 9.2090209e+02 1.0329539e+03 -3.2723556e+03 - 9.2677725e+02 1.0363040e+03 -3.2693989e+03 - 9.3290245e+02 1.0384344e+03 -3.2666346e+03 - 9.3924492e+02 1.0394391e+03 -3.2640730e+03 - 9.4576946e+02 1.0394078e+03 -3.2617242e+03 - 9.5243832e+02 1.0384263e+03 -3.2595971e+03 - 9.5921127e+02 1.0365767e+03 -3.2577000e+03 - 9.6604555e+02 1.0339382e+03 -3.2560404e+03 - 9.7289588e+02 1.0305870e+03 -3.2546248e+03 - 9.7971451e+02 1.0265967e+03 -3.2534587e+03 - 9.8645121e+02 1.0220383e+03 -3.2525469e+03 - 9.9305335e+02 1.0169808e+03 -3.2518930e+03 - 9.9946589e+02 1.0114904e+03 -3.2514996e+03 - 1.0056315e+03 1.0056315e+03 -3.2513683e+03 - 1.0114904e+03 9.9946589e+02 -3.2514996e+03 - 1.0169808e+03 9.9305335e+02 -3.2518930e+03 - 1.0220383e+03 9.8645121e+02 -3.2525469e+03 - 1.0265967e+03 9.7971451e+02 -3.2534587e+03 - 1.0305870e+03 9.7289588e+02 -3.2546248e+03 - 1.0339382e+03 9.6604555e+02 -3.2560404e+03 - 1.0365767e+03 9.5921127e+02 -3.2577000e+03 - 1.0384263e+03 9.5243832e+02 -3.2595971e+03 - 1.0394078e+03 9.4576946e+02 -3.2617242e+03 - 1.0394391e+03 9.3924492e+02 -3.2640730e+03 - 1.0384344e+03 9.3290245e+02 -3.2666346e+03 - 1.0363040e+03 9.2677725e+02 -3.2693989e+03 - 1.0329539e+03 9.2090209e+02 -3.2723556e+03 - 1.0282849e+03 9.1530723e+02 -3.2754933e+03 - 1.0221920e+03 9.1002052e+02 -3.2788001e+03 - 1.0145637e+03 9.0506739e+02 -3.2822635e+03 - 1.0052812e+03 9.0047082e+02 -3.2858703e+03 - 9.9421721e+02 8.9625138e+02 -3.2896065e+03 - 9.8123537e+02 8.9242707e+02 -3.2934575e+03 - 9.6618921e+02 8.8901328e+02 -3.2974079e+03 - 9.4892143e+02 8.8602258e+02 -3.3014414e+03 - 9.2926340e+02 8.8346439e+02 -3.3055407e+03 - 9.0703502e+02 8.8134468e+02 -3.3096873e+03 - 8.8204523e+02 8.7966539e+02 -3.3138612e+03 - 8.5409335e+02 8.7842383e+02 -3.3180409e+03 - 8.2297163e+02 8.7761188e+02 -3.3222029e+03 - 7.8846948e+02 8.7721508e+02 -3.3263215e+03 - 7.5037967e+02 8.7721161e+02 -3.3303685e+03 - 7.0850709e+02 8.7757132e+02 -3.3343130e+03 - 6.6268044e+02 8.7825471e+02 -3.3381209e+03 - 6.1276694e+02 8.7921230e+02 -3.3417552e+03 - 5.5869003e+02 8.8038442e+02 -3.3451760e+03 - 5.0044928e+02 8.8170168e+02 -3.3483410e+03 - 4.3814106e+02 8.8308650e+02 -3.3512063e+03 - 3.7197782e+02 8.8445580e+02 -3.3537274e+03 - 3.0230284e+02 8.8572492e+02 -3.3558614e+03 - 2.2959722e+02 8.8681274e+02 -3.3575685e+03 - 1.5447586e+02 8.8764749e+02 -3.3588147e+03 - 7.7670540e+01 8.8817260e+02 -3.3595735e+03 - 0.0000000e+00 8.8835181e+02 -3.3598283e+03 - -7.7670540e+01 8.8817260e+02 -3.3595735e+03 - -1.5447586e+02 8.8764749e+02 -3.3588147e+03 - -2.2959722e+02 8.8681274e+02 -3.3575685e+03 - -3.0230284e+02 8.8572492e+02 -3.3558614e+03 - -3.7197782e+02 8.8445580e+02 -3.3537274e+03 - -4.3814106e+02 8.8308650e+02 -3.3512063e+03 - -5.0044928e+02 8.8170168e+02 -3.3483410e+03 - -5.5869003e+02 8.8038442e+02 -3.3451760e+03 - -6.1276694e+02 8.7921230e+02 -3.3417552e+03 - -6.6268044e+02 8.7825471e+02 -3.3381209e+03 - -7.0850709e+02 8.7757132e+02 -3.3343130e+03 - -7.5037967e+02 8.7721161e+02 -3.3303685e+03 - -7.8846948e+02 8.7721508e+02 -3.3263215e+03 - -8.2297163e+02 8.7761188e+02 -3.3222029e+03 - -8.5409335e+02 8.7842383e+02 -3.3180409e+03 - -8.8204523e+02 8.7966539e+02 -3.3138612e+03 - -9.0703502e+02 8.8134468e+02 -3.3096873e+03 - -9.2926340e+02 8.8346439e+02 -3.3055407e+03 - -9.4892143e+02 8.8602258e+02 -3.3014414e+03 - -9.6618921e+02 8.8901328e+02 -3.2974079e+03 - -9.8123537e+02 8.9242707e+02 -3.2934575e+03 - -9.9421721e+02 8.9625138e+02 -3.2896065e+03 - -1.0052812e+03 9.0047082e+02 -3.2858703e+03 - -1.0145637e+03 9.0506739e+02 -3.2822635e+03 - -1.0221920e+03 9.1002052e+02 -3.2788001e+03 - -1.0282849e+03 9.1530723e+02 -3.2754933e+03 - -1.0329539e+03 9.2090209e+02 -3.2723556e+03 - -1.0363040e+03 9.2677725e+02 -3.2693989e+03 - -1.0384344e+03 9.3290245e+02 -3.2666346e+03 - -1.0394391e+03 9.3924492e+02 -3.2640730e+03 - -1.0394078e+03 9.4576946e+02 -3.2617242e+03 - -1.0384263e+03 9.5243832e+02 -3.2595971e+03 - -1.0365767e+03 9.5921127e+02 -3.2577000e+03 - -1.0339382e+03 9.6604555e+02 -3.2560404e+03 - -1.0305870e+03 9.7289588e+02 -3.2546248e+03 - -1.0265967e+03 9.7971451e+02 -3.2534587e+03 - -1.0220383e+03 9.8645121e+02 -3.2525469e+03 - -1.0169808e+03 9.9305335e+02 -3.2518930e+03 - -1.0114904e+03 9.9946589e+02 -3.2514996e+03 - -1.0056315e+03 1.0056315e+03 -3.2513683e+03 - -9.9946589e+02 1.0114904e+03 -3.2514996e+03 - -9.9305335e+02 1.0169808e+03 -3.2518930e+03 - -9.8645121e+02 1.0220383e+03 -3.2525469e+03 - -9.7971451e+02 1.0265967e+03 -3.2534587e+03 - -9.7289588e+02 1.0305870e+03 -3.2546248e+03 - -9.6604555e+02 1.0339382e+03 -3.2560404e+03 - -9.5921127e+02 1.0365767e+03 -3.2577000e+03 - -9.5243832e+02 1.0384263e+03 -3.2595971e+03 - -9.4576946e+02 1.0394078e+03 -3.2617242e+03 - -9.3924492e+02 1.0394391e+03 -3.2640730e+03 - -9.3290245e+02 1.0384344e+03 -3.2666346e+03 - -9.2677725e+02 1.0363040e+03 -3.2693989e+03 - -9.2090209e+02 1.0329539e+03 -3.2723556e+03 - -9.1530723e+02 1.0282849e+03 -3.2754933e+03 - -9.1002052e+02 1.0221920e+03 -3.2788001e+03 - -9.0506739e+02 1.0145637e+03 -3.2822635e+03 - -9.0047082e+02 1.0052812e+03 -3.2858703e+03 - -8.9625138e+02 9.9421721e+02 -3.2896065e+03 - -8.9242707e+02 9.8123537e+02 -3.2934575e+03 - -8.8901328e+02 9.6618921e+02 -3.2974079e+03 - -8.8602258e+02 9.4892143e+02 -3.3014414e+03 - -8.8346439e+02 9.2926340e+02 -3.3055407e+03 - -8.8134468e+02 9.0703502e+02 -3.3096873e+03 - -8.7966539e+02 8.8204523e+02 -3.3138612e+03 - -8.7842383e+02 8.5409335e+02 -3.3180409e+03 - -8.7761188e+02 8.2297163e+02 -3.3222029e+03 - -8.7721508e+02 7.8846948e+02 -3.3263215e+03 - -8.7721161e+02 7.5037967e+02 -3.3303685e+03 - -8.7757132e+02 7.0850709e+02 -3.3343130e+03 - -8.7825471e+02 6.6268044e+02 -3.3381209e+03 - -8.7921230e+02 6.1276694e+02 -3.3417552e+03 - -8.8038442e+02 5.5869003e+02 -3.3451760e+03 - -8.8170168e+02 5.0044928e+02 -3.3483410e+03 - -8.8308650e+02 4.3814106e+02 -3.3512063e+03 - -8.8445580e+02 3.7197782e+02 -3.3537274e+03 - -8.8572492e+02 3.0230284e+02 -3.3558614e+03 - -8.8681274e+02 2.2959722e+02 -3.3575685e+03 - -8.8764749e+02 1.5447586e+02 -3.3588147e+03 - -8.8817260e+02 7.7670540e+01 -3.3595735e+03 - -8.8835181e+02 0.0000000e+00 -3.3598283e+03 - -8.8817260e+02 -7.7670540e+01 -3.3595735e+03 - -8.8764749e+02 -1.5447586e+02 -3.3588147e+03 - -8.8681274e+02 -2.2959722e+02 -3.3575685e+03 - -8.8572492e+02 -3.0230284e+02 -3.3558614e+03 - -8.8445580e+02 -3.7197782e+02 -3.3537274e+03 - -8.8308650e+02 -4.3814106e+02 -3.3512063e+03 - -8.8170168e+02 -5.0044928e+02 -3.3483410e+03 - -8.8038442e+02 -5.5869003e+02 -3.3451760e+03 - -8.7921230e+02 -6.1276694e+02 -3.3417552e+03 - -8.7825471e+02 -6.6268044e+02 -3.3381209e+03 - -8.7757132e+02 -7.0850709e+02 -3.3343130e+03 - -8.7721161e+02 -7.5037967e+02 -3.3303685e+03 - -8.7721508e+02 -7.8846948e+02 -3.3263215e+03 - -8.7761188e+02 -8.2297163e+02 -3.3222029e+03 - -8.7842383e+02 -8.5409335e+02 -3.3180409e+03 - -8.7966539e+02 -8.8204523e+02 -3.3138612e+03 - -8.8134468e+02 -9.0703502e+02 -3.3096873e+03 - -8.8346439e+02 -9.2926340e+02 -3.3055407e+03 - -8.8602258e+02 -9.4892143e+02 -3.3014414e+03 - -8.8901328e+02 -9.6618921e+02 -3.2974079e+03 - -8.9242707e+02 -9.8123537e+02 -3.2934575e+03 - -8.9625138e+02 -9.9421721e+02 -3.2896065e+03 - -9.0047082e+02 -1.0052812e+03 -3.2858703e+03 - -9.0506739e+02 -1.0145637e+03 -3.2822635e+03 - -9.1002052e+02 -1.0221920e+03 -3.2788001e+03 - -9.1530723e+02 -1.0282849e+03 -3.2754933e+03 - -9.2090209e+02 -1.0329539e+03 -3.2723556e+03 - -9.2677725e+02 -1.0363040e+03 -3.2693989e+03 - -9.3290245e+02 -1.0384344e+03 -3.2666346e+03 - -9.3924492e+02 -1.0394391e+03 -3.2640730e+03 - -9.4576946e+02 -1.0394078e+03 -3.2617242e+03 - -9.5243832e+02 -1.0384263e+03 -3.2595971e+03 - -9.5921127e+02 -1.0365767e+03 -3.2577000e+03 - -9.6604555e+02 -1.0339382e+03 -3.2560404e+03 - -9.7289588e+02 -1.0305870e+03 -3.2546248e+03 - -9.7971451e+02 -1.0265967e+03 -3.2534587e+03 - -9.8645121e+02 -1.0220383e+03 -3.2525469e+03 - -9.9305335e+02 -1.0169808e+03 -3.2518930e+03 - -9.9946589e+02 -1.0114904e+03 -3.2514996e+03 - -1.0056315e+03 -1.0056315e+03 -3.2513683e+03 - -1.0114904e+03 -9.9946589e+02 -3.2514996e+03 - -1.0169808e+03 -9.9305335e+02 -3.2518930e+03 - -1.0220383e+03 -9.8645121e+02 -3.2525469e+03 - -1.0265967e+03 -9.7971451e+02 -3.2534587e+03 - -1.0305870e+03 -9.7289588e+02 -3.2546248e+03 - -1.0339382e+03 -9.6604555e+02 -3.2560404e+03 - -1.0365767e+03 -9.5921127e+02 -3.2577000e+03 - -1.0384263e+03 -9.5243832e+02 -3.2595971e+03 - -1.0394078e+03 -9.4576946e+02 -3.2617242e+03 - -1.0394391e+03 -9.3924492e+02 -3.2640730e+03 - -1.0384344e+03 -9.3290245e+02 -3.2666346e+03 - -1.0363040e+03 -9.2677725e+02 -3.2693989e+03 - -1.0329539e+03 -9.2090209e+02 -3.2723556e+03 - -1.0282849e+03 -9.1530723e+02 -3.2754933e+03 - -1.0221920e+03 -9.1002052e+02 -3.2788001e+03 - -1.0145637e+03 -9.0506739e+02 -3.2822635e+03 - -1.0052812e+03 -9.0047082e+02 -3.2858703e+03 - -9.9421721e+02 -8.9625138e+02 -3.2896065e+03 - -9.8123537e+02 -8.9242707e+02 -3.2934575e+03 - -9.6618921e+02 -8.8901328e+02 -3.2974079e+03 - -9.4892143e+02 -8.8602258e+02 -3.3014414e+03 - -9.2926340e+02 -8.8346439e+02 -3.3055407e+03 - -9.0703502e+02 -8.8134468e+02 -3.3096873e+03 - -8.8204523e+02 -8.7966539e+02 -3.3138612e+03 - -8.5409335e+02 -8.7842383e+02 -3.3180409e+03 - -8.2297163e+02 -8.7761188e+02 -3.3222029e+03 - -7.8846948e+02 -8.7721508e+02 -3.3263215e+03 - -7.5037967e+02 -8.7721161e+02 -3.3303685e+03 - -7.0850709e+02 -8.7757132e+02 -3.3343130e+03 - -6.6268044e+02 -8.7825471e+02 -3.3381209e+03 - -6.1276694e+02 -8.7921230e+02 -3.3417552e+03 - -5.5869003e+02 -8.8038442e+02 -3.3451760e+03 - -5.0044928e+02 -8.8170168e+02 -3.3483410e+03 - -4.3814106e+02 -8.8308650e+02 -3.3512063e+03 - -3.7197782e+02 -8.8445580e+02 -3.3537274e+03 - -3.0230284e+02 -8.8572492e+02 -3.3558614e+03 - -2.2959722e+02 -8.8681274e+02 -3.3575685e+03 - -1.5447586e+02 -8.8764749e+02 -3.3588147e+03 - -7.7670540e+01 -8.8817260e+02 -3.3595735e+03 - 0.0000000e+00 -8.8835181e+02 -3.3598283e+03 - 7.7670540e+01 -8.8817260e+02 -3.3595735e+03 - 1.5447586e+02 -8.8764749e+02 -3.3588147e+03 - 2.2959722e+02 -8.8681274e+02 -3.3575685e+03 - 3.0230284e+02 -8.8572492e+02 -3.3558614e+03 - 3.7197782e+02 -8.8445580e+02 -3.3537274e+03 - 4.3814106e+02 -8.8308650e+02 -3.3512063e+03 - 5.0044928e+02 -8.8170168e+02 -3.3483410e+03 - 5.5869003e+02 -8.8038442e+02 -3.3451760e+03 - 6.1276694e+02 -8.7921230e+02 -3.3417552e+03 - 6.6268044e+02 -8.7825471e+02 -3.3381209e+03 - 7.0850709e+02 -8.7757132e+02 -3.3343130e+03 - 7.5037967e+02 -8.7721161e+02 -3.3303685e+03 - 7.8846948e+02 -8.7721508e+02 -3.3263215e+03 - 8.2297163e+02 -8.7761188e+02 -3.3222029e+03 - 8.5409335e+02 -8.7842383e+02 -3.3180409e+03 - 8.8204523e+02 -8.7966539e+02 -3.3138612e+03 - 9.0703502e+02 -8.8134468e+02 -3.3096873e+03 - 9.2926340e+02 -8.8346439e+02 -3.3055407e+03 - 9.4892143e+02 -8.8602258e+02 -3.3014414e+03 - 9.6618921e+02 -8.8901328e+02 -3.2974079e+03 - 9.8123537e+02 -8.9242707e+02 -3.2934575e+03 - 9.9421721e+02 -8.9625138e+02 -3.2896065e+03 - 1.0052812e+03 -9.0047082e+02 -3.2858703e+03 - 1.0145637e+03 -9.0506739e+02 -3.2822635e+03 - 1.0221920e+03 -9.1002052e+02 -3.2788001e+03 - 1.0282849e+03 -9.1530723e+02 -3.2754933e+03 - 1.0329539e+03 -9.2090209e+02 -3.2723556e+03 - 1.0363040e+03 -9.2677725e+02 -3.2693989e+03 - 1.0384344e+03 -9.3290245e+02 -3.2666346e+03 - 1.0394391e+03 -9.3924492e+02 -3.2640730e+03 - 1.0394078e+03 -9.4576946e+02 -3.2617242e+03 - 1.0384263e+03 -9.5243832e+02 -3.2595971e+03 - 1.0365767e+03 -9.5921127e+02 -3.2577000e+03 - 1.0339382e+03 -9.6604555e+02 -3.2560404e+03 - 1.0305870e+03 -9.7289588e+02 -3.2546248e+03 - 1.0265967e+03 -9.7971451e+02 -3.2534587e+03 - 1.0220383e+03 -9.8645121e+02 -3.2525469e+03 - 1.0169808e+03 -9.9305335e+02 -3.2518930e+03 - 1.0114904e+03 -9.9946589e+02 -3.2514996e+03 - 1.0056315e+03 -1.0056315e+03 -3.2513683e+03 - 9.9946589e+02 -1.0114904e+03 -3.2514996e+03 - 9.9305335e+02 -1.0169808e+03 -3.2518930e+03 - 9.8645121e+02 -1.0220383e+03 -3.2525469e+03 - 9.7971451e+02 -1.0265967e+03 -3.2534587e+03 - 9.7289588e+02 -1.0305870e+03 -3.2546248e+03 - 9.6604555e+02 -1.0339382e+03 -3.2560404e+03 - 9.5921127e+02 -1.0365767e+03 -3.2577000e+03 - 9.5243832e+02 -1.0384263e+03 -3.2595971e+03 - 9.4576946e+02 -1.0394078e+03 -3.2617242e+03 - 9.3924492e+02 -1.0394391e+03 -3.2640730e+03 - 9.3290245e+02 -1.0384344e+03 -3.2666346e+03 - 9.2677725e+02 -1.0363040e+03 -3.2693989e+03 - 9.2090209e+02 -1.0329539e+03 -3.2723556e+03 - 9.1530723e+02 -1.0282849e+03 -3.2754933e+03 - 9.1002052e+02 -1.0221920e+03 -3.2788001e+03 - 9.0506739e+02 -1.0145637e+03 -3.2822635e+03 - 9.0047082e+02 -1.0052812e+03 -3.2858703e+03 - 8.9625138e+02 -9.9421721e+02 -3.2896065e+03 - 8.9242707e+02 -9.8123537e+02 -3.2934575e+03 - 8.8901328e+02 -9.6618921e+02 -3.2974079e+03 - 8.8602258e+02 -9.4892143e+02 -3.3014414e+03 - 8.8346439e+02 -9.2926340e+02 -3.3055407e+03 - 8.8134468e+02 -9.0703502e+02 -3.3096873e+03 - 8.7966539e+02 -8.8204523e+02 -3.3138612e+03 - 8.7842383e+02 -8.5409335e+02 -3.3180409e+03 - 8.7761188e+02 -8.2297163e+02 -3.3222029e+03 - 8.7721508e+02 -7.8846948e+02 -3.3263215e+03 - 8.7721161e+02 -7.5037967e+02 -3.3303685e+03 - 8.7757132e+02 -7.0850709e+02 -3.3343130e+03 - 8.7825471e+02 -6.6268044e+02 -3.3381209e+03 - 8.7921230e+02 -6.1276694e+02 -3.3417552e+03 - 8.8038442e+02 -5.5869003e+02 -3.3451760e+03 - 8.8170168e+02 -5.0044928e+02 -3.3483410e+03 - 8.8308650e+02 -4.3814106e+02 -3.3512063e+03 - 8.8445580e+02 -3.7197782e+02 -3.3537274e+03 - 8.8572492e+02 -3.0230284e+02 -3.3558614e+03 - 8.8681274e+02 -2.2959722e+02 -3.3575685e+03 - 8.8764749e+02 -1.5447586e+02 -3.3588147e+03 - 8.8817260e+02 -7.7670540e+01 -3.3595735e+03 - 8.8835181e+02 0.0000000e+00 -3.3598283e+03 - 8.4578162e+02 2.4067136e-09 -3.3779538e+03 - 8.4561061e+02 7.3692876e+01 -3.3777253e+03 - 8.4510952e+02 1.4658523e+02 -3.3770444e+03 - 8.4431311e+02 2.1791798e+02 -3.3759254e+03 - 8.4327565e+02 2.8700982e+02 -3.3743907e+03 - 8.4206617e+02 3.5328440e+02 -3.3724694e+03 - 8.4076294e+02 4.1628616e+02 -3.3701957e+03 - 8.3944787e+02 4.7568491e+02 -3.3676069e+03 - 8.3820168e+02 5.3127047e+02 -3.3647418e+03 - 8.3709995e+02 5.8294025e+02 -3.3616391e+03 - 8.3621044e+02 6.3068244e+02 -3.3583365e+03 - 8.3559157e+02 6.7455769e+02 -3.3548697e+03 - 8.3529173e+02 7.1468105e+02 -3.3512723e+03 - 8.3534947e+02 7.5120582e+02 -3.3475755e+03 - 8.3579406e+02 7.8430980e+02 -3.3438078e+03 - 8.3664636e+02 8.1418419e+02 -3.3399955e+03 - 8.3791983e+02 8.4102522e+02 -3.3361626e+03 - 8.3962153e+02 8.6502795e+02 -3.3323313e+03 - 8.4175299e+02 8.8638205e+02 -3.3285220e+03 - 8.4431107e+02 9.0526909e+02 -3.3247536e+03 - 8.4728860e+02 9.2186100e+02 -3.3210435e+03 - 8.5067493e+02 9.3631937e+02 -3.3174084e+03 - 8.5445634e+02 9.4879541e+02 -3.3138635e+03 - 8.5861642e+02 9.5943022e+02 -3.3104237e+03 - 8.6313622e+02 9.6835540e+02 -3.3071025e+03 - 8.6799446e+02 9.7569378e+02 -3.3039131e+03 - 8.7316760e+02 9.8156019e+02 -3.3008679e+03 - 8.7862991e+02 9.8606228e+02 -3.2979786e+03 - 8.8435352e+02 9.8930127e+02 -3.2952561e+03 - 8.9030839e+02 9.9137268e+02 -3.2927111e+03 - 8.9646231e+02 9.9236699e+02 -3.2903531e+03 - 9.0278090e+02 9.9237017e+02 -3.2881912e+03 - 9.0922759e+02 9.9146425e+02 -3.2862337e+03 - 9.1576362e+02 9.8972769e+02 -3.2844881e+03 - 9.2234801e+02 9.8723579e+02 -3.2829613e+03 - 9.2893759e+02 9.8406093e+02 -3.2816591e+03 - 9.3548696e+02 9.8027284e+02 -3.2805866e+03 - 9.4194856e+02 9.7593877e+02 -3.2797480e+03 - 9.4827264e+02 9.7112362e+02 -3.2791466e+03 - 9.5440730e+02 9.6589004e+02 -3.2787849e+03 - 9.6029849e+02 9.6029849e+02 -3.2786641e+03 - 9.6589004e+02 9.5440730e+02 -3.2787849e+03 - 9.7112362e+02 9.4827264e+02 -3.2791466e+03 - 9.7593877e+02 9.4194856e+02 -3.2797480e+03 - 9.8027284e+02 9.3548696e+02 -3.2805866e+03 - 9.8406093e+02 9.2893759e+02 -3.2816591e+03 - 9.8723579e+02 9.2234801e+02 -3.2829613e+03 - 9.8972769e+02 9.1576362e+02 -3.2844881e+03 - 9.9146425e+02 9.0922759e+02 -3.2862337e+03 - 9.9237017e+02 9.0278090e+02 -3.2881912e+03 - 9.9236699e+02 8.9646231e+02 -3.2903531e+03 - 9.9137268e+02 8.9030839e+02 -3.2927111e+03 - 9.8930127e+02 8.8435352e+02 -3.2952561e+03 - 9.8606228e+02 8.7862991e+02 -3.2979786e+03 - 9.8156019e+02 8.7316760e+02 -3.3008679e+03 - 9.7569378e+02 8.6799446e+02 -3.3039131e+03 - 9.6835540e+02 8.6313622e+02 -3.3071025e+03 - 9.5943022e+02 8.5861642e+02 -3.3104237e+03 - 9.4879541e+02 8.5445634e+02 -3.3138635e+03 - 9.3631937e+02 8.5067493e+02 -3.3174084e+03 - 9.2186100e+02 8.4728860e+02 -3.3210435e+03 - 9.0526909e+02 8.4431107e+02 -3.3247536e+03 - 8.8638205e+02 8.4175299e+02 -3.3285220e+03 - 8.6502795e+02 8.3962153e+02 -3.3323313e+03 - 8.4102522e+02 8.3791983e+02 -3.3361626e+03 - 8.1418419e+02 8.3664636e+02 -3.3399955e+03 - 7.8430980e+02 8.3579406e+02 -3.3438078e+03 - 7.5120582e+02 8.3534947e+02 -3.3475755e+03 - 7.1468105e+02 8.3529173e+02 -3.3512723e+03 - 6.7455769e+02 8.3559157e+02 -3.3548697e+03 - 6.3068244e+02 8.3621044e+02 -3.3583365e+03 - 5.8294025e+02 8.3709995e+02 -3.3616391e+03 - 5.3127047e+02 8.3820168e+02 -3.3647418e+03 - 4.7568491e+02 8.3944787e+02 -3.3676069e+03 - 4.1628616e+02 8.4076294e+02 -3.3701957e+03 - 3.5328440e+02 8.4206617e+02 -3.3724694e+03 - 2.8700982e+02 8.4327565e+02 -3.3743907e+03 - 2.1791798e+02 8.4431311e+02 -3.3759254e+03 - 1.4658523e+02 8.4510952e+02 -3.3770444e+03 - 7.3692876e+01 8.4561061e+02 -3.3777253e+03 - 2.4067136e-09 8.4578162e+02 -3.3779538e+03 - -7.3692876e+01 8.4561061e+02 -3.3777253e+03 - -1.4658523e+02 8.4510952e+02 -3.3770444e+03 - -2.1791798e+02 8.4431311e+02 -3.3759254e+03 - -2.8700982e+02 8.4327565e+02 -3.3743907e+03 - -3.5328440e+02 8.4206617e+02 -3.3724694e+03 - -4.1628616e+02 8.4076294e+02 -3.3701957e+03 - -4.7568491e+02 8.3944787e+02 -3.3676069e+03 - -5.3127047e+02 8.3820168e+02 -3.3647418e+03 - -5.8294025e+02 8.3709995e+02 -3.3616391e+03 - -6.3068244e+02 8.3621044e+02 -3.3583365e+03 - -6.7455769e+02 8.3559157e+02 -3.3548697e+03 - -7.1468105e+02 8.3529173e+02 -3.3512723e+03 - -7.5120582e+02 8.3534947e+02 -3.3475755e+03 - -7.8430980e+02 8.3579406e+02 -3.3438078e+03 - -8.1418419e+02 8.3664636e+02 -3.3399955e+03 - -8.4102522e+02 8.3791983e+02 -3.3361626e+03 - -8.6502795e+02 8.3962153e+02 -3.3323313e+03 - -8.8638205e+02 8.4175299e+02 -3.3285220e+03 - -9.0526909e+02 8.4431107e+02 -3.3247536e+03 - -9.2186100e+02 8.4728860e+02 -3.3210435e+03 - -9.3631937e+02 8.5067493e+02 -3.3174084e+03 - -9.4879541e+02 8.5445634e+02 -3.3138635e+03 - -9.5943022e+02 8.5861642e+02 -3.3104237e+03 - -9.6835540e+02 8.6313622e+02 -3.3071025e+03 - -9.7569378e+02 8.6799446e+02 -3.3039131e+03 - -9.8156019e+02 8.7316760e+02 -3.3008679e+03 - -9.8606228e+02 8.7862991e+02 -3.2979786e+03 - -9.8930127e+02 8.8435352e+02 -3.2952561e+03 - -9.9137268e+02 8.9030839e+02 -3.2927111e+03 - -9.9236699e+02 8.9646231e+02 -3.2903531e+03 - -9.9237017e+02 9.0278090e+02 -3.2881912e+03 - -9.9146425e+02 9.0922759e+02 -3.2862337e+03 - -9.8972769e+02 9.1576362e+02 -3.2844881e+03 - -9.8723579e+02 9.2234801e+02 -3.2829613e+03 - -9.8406093e+02 9.2893759e+02 -3.2816591e+03 - -9.8027284e+02 9.3548696e+02 -3.2805866e+03 - -9.7593877e+02 9.4194856e+02 -3.2797480e+03 - -9.7112362e+02 9.4827264e+02 -3.2791466e+03 - -9.6589004e+02 9.5440730e+02 -3.2787849e+03 - -9.6029849e+02 9.6029849e+02 -3.2786641e+03 - -9.5440730e+02 9.6589004e+02 -3.2787849e+03 - -9.4827264e+02 9.7112362e+02 -3.2791466e+03 - -9.4194856e+02 9.7593877e+02 -3.2797480e+03 - -9.3548696e+02 9.8027284e+02 -3.2805866e+03 - -9.2893759e+02 9.8406093e+02 -3.2816591e+03 - -9.2234801e+02 9.8723579e+02 -3.2829613e+03 - -9.1576362e+02 9.8972769e+02 -3.2844881e+03 - -9.0922759e+02 9.9146425e+02 -3.2862337e+03 - -9.0278090e+02 9.9237017e+02 -3.2881912e+03 - -8.9646231e+02 9.9236699e+02 -3.2903531e+03 - -8.9030839e+02 9.9137268e+02 -3.2927111e+03 - -8.8435352e+02 9.8930127e+02 -3.2952561e+03 - -8.7862991e+02 9.8606228e+02 -3.2979786e+03 - -8.7316760e+02 9.8156019e+02 -3.3008679e+03 - -8.6799446e+02 9.7569378e+02 -3.3039131e+03 - -8.6313622e+02 9.6835540e+02 -3.3071025e+03 - -8.5861642e+02 9.5943022e+02 -3.3104237e+03 - -8.5445634e+02 9.4879541e+02 -3.3138635e+03 - -8.5067493e+02 9.3631937e+02 -3.3174084e+03 - -8.4728860e+02 9.2186100e+02 -3.3210435e+03 - -8.4431107e+02 9.0526909e+02 -3.3247536e+03 - -8.4175299e+02 8.8638205e+02 -3.3285220e+03 - -8.3962153e+02 8.6502795e+02 -3.3323313e+03 - -8.3791983e+02 8.4102522e+02 -3.3361626e+03 - -8.3664636e+02 8.1418419e+02 -3.3399955e+03 - -8.3579406e+02 7.8430980e+02 -3.3438078e+03 - -8.3534947e+02 7.5120582e+02 -3.3475755e+03 - -8.3529173e+02 7.1468105e+02 -3.3512723e+03 - -8.3559157e+02 6.7455769e+02 -3.3548697e+03 - -8.3621044e+02 6.3068244e+02 -3.3583365e+03 - -8.3709995e+02 5.8294025e+02 -3.3616391e+03 - -8.3820168e+02 5.3127047e+02 -3.3647418e+03 - -8.3944787e+02 4.7568491e+02 -3.3676069e+03 - -8.4076294e+02 4.1628616e+02 -3.3701957e+03 - -8.4206617e+02 3.5328440e+02 -3.3724694e+03 - -8.4327565e+02 2.8700982e+02 -3.3743907e+03 - -8.4431311e+02 2.1791798e+02 -3.3759254e+03 - -8.4510952e+02 1.4658523e+02 -3.3770444e+03 - -8.4561061e+02 7.3692876e+01 -3.3777253e+03 - -8.4578162e+02 0.0000000e+00 -3.3779538e+03 - -8.4561061e+02 -7.3692876e+01 -3.3777253e+03 - -8.4510952e+02 -1.4658523e+02 -3.3770444e+03 - -8.4431311e+02 -2.1791798e+02 -3.3759254e+03 - -8.4327565e+02 -2.8700982e+02 -3.3743907e+03 - -8.4206617e+02 -3.5328440e+02 -3.3724694e+03 - -8.4076294e+02 -4.1628616e+02 -3.3701957e+03 - -8.3944787e+02 -4.7568491e+02 -3.3676069e+03 - -8.3820168e+02 -5.3127047e+02 -3.3647418e+03 - -8.3709995e+02 -5.8294025e+02 -3.3616391e+03 - -8.3621044e+02 -6.3068244e+02 -3.3583365e+03 - -8.3559157e+02 -6.7455769e+02 -3.3548697e+03 - -8.3529173e+02 -7.1468105e+02 -3.3512723e+03 - -8.3534947e+02 -7.5120582e+02 -3.3475755e+03 - -8.3579406e+02 -7.8430980e+02 -3.3438078e+03 - -8.3664636e+02 -8.1418419e+02 -3.3399955e+03 - -8.3791983e+02 -8.4102522e+02 -3.3361626e+03 - -8.3962153e+02 -8.6502795e+02 -3.3323313e+03 - -8.4175299e+02 -8.8638205e+02 -3.3285220e+03 - -8.4431107e+02 -9.0526909e+02 -3.3247536e+03 - -8.4728860e+02 -9.2186100e+02 -3.3210435e+03 - -8.5067493e+02 -9.3631937e+02 -3.3174084e+03 - -8.5445634e+02 -9.4879541e+02 -3.3138635e+03 - -8.5861642e+02 -9.5943022e+02 -3.3104237e+03 - -8.6313622e+02 -9.6835540e+02 -3.3071025e+03 - -8.6799446e+02 -9.7569378e+02 -3.3039131e+03 - -8.7316760e+02 -9.8156019e+02 -3.3008679e+03 - -8.7862991e+02 -9.8606228e+02 -3.2979786e+03 - -8.8435352e+02 -9.8930127e+02 -3.2952561e+03 - -8.9030839e+02 -9.9137268e+02 -3.2927111e+03 - -8.9646231e+02 -9.9236699e+02 -3.2903531e+03 - -9.0278090e+02 -9.9237017e+02 -3.2881912e+03 - -9.0922759e+02 -9.9146425e+02 -3.2862337e+03 - -9.1576362e+02 -9.8972769e+02 -3.2844881e+03 - -9.2234801e+02 -9.8723579e+02 -3.2829613e+03 - -9.2893759e+02 -9.8406093e+02 -3.2816591e+03 - -9.3548696e+02 -9.8027284e+02 -3.2805866e+03 - -9.4194856e+02 -9.7593877e+02 -3.2797480e+03 - -9.4827264e+02 -9.7112362e+02 -3.2791466e+03 - -9.5440730e+02 -9.6589004e+02 -3.2787849e+03 - -9.6029849e+02 -9.6029849e+02 -3.2786641e+03 - -9.6589004e+02 -9.5440730e+02 -3.2787849e+03 - -9.7112362e+02 -9.4827264e+02 -3.2791466e+03 - -9.7593877e+02 -9.4194856e+02 -3.2797480e+03 - -9.8027284e+02 -9.3548696e+02 -3.2805866e+03 - -9.8406093e+02 -9.2893759e+02 -3.2816591e+03 - -9.8723579e+02 -9.2234801e+02 -3.2829613e+03 - -9.8972769e+02 -9.1576362e+02 -3.2844881e+03 - -9.9146425e+02 -9.0922759e+02 -3.2862337e+03 - -9.9237017e+02 -9.0278090e+02 -3.2881912e+03 - -9.9236699e+02 -8.9646231e+02 -3.2903531e+03 - -9.9137268e+02 -8.9030839e+02 -3.2927111e+03 - -9.8930127e+02 -8.8435352e+02 -3.2952561e+03 - -9.8606228e+02 -8.7862991e+02 -3.2979786e+03 - -9.8156019e+02 -8.7316760e+02 -3.3008679e+03 - -9.7569378e+02 -8.6799446e+02 -3.3039131e+03 - -9.6835540e+02 -8.6313622e+02 -3.3071025e+03 - -9.5943022e+02 -8.5861642e+02 -3.3104237e+03 - -9.4879541e+02 -8.5445634e+02 -3.3138635e+03 - -9.3631937e+02 -8.5067493e+02 -3.3174084e+03 - -9.2186100e+02 -8.4728860e+02 -3.3210435e+03 - -9.0526909e+02 -8.4431107e+02 -3.3247536e+03 - -8.8638205e+02 -8.4175299e+02 -3.3285220e+03 - -8.6502795e+02 -8.3962153e+02 -3.3323313e+03 - -8.4102522e+02 -8.3791983e+02 -3.3361626e+03 - -8.1418419e+02 -8.3664636e+02 -3.3399955e+03 - -7.8430980e+02 -8.3579406e+02 -3.3438078e+03 - -7.5120582e+02 -8.3534947e+02 -3.3475755e+03 - -7.1468105e+02 -8.3529173e+02 -3.3512723e+03 - -6.7455769e+02 -8.3559157e+02 -3.3548697e+03 - -6.3068244e+02 -8.3621044e+02 -3.3583365e+03 - -5.8294025e+02 -8.3709995e+02 -3.3616391e+03 - -5.3127047e+02 -8.3820168e+02 -3.3647418e+03 - -4.7568491e+02 -8.3944787e+02 -3.3676069e+03 - -4.1628616e+02 -8.4076294e+02 -3.3701957e+03 - -3.5328440e+02 -8.4206617e+02 -3.3724694e+03 - -2.8700982e+02 -8.4327565e+02 -3.3743907e+03 - -2.1791798e+02 -8.4431311e+02 -3.3759254e+03 - -1.4658523e+02 -8.4510952e+02 -3.3770444e+03 - -7.3692876e+01 -8.4561061e+02 -3.3777253e+03 - 0.0000000e+00 -8.4578162e+02 -3.3779538e+03 - 7.3692876e+01 -8.4561061e+02 -3.3777253e+03 - 1.4658523e+02 -8.4510952e+02 -3.3770444e+03 - 2.1791798e+02 -8.4431311e+02 -3.3759254e+03 - 2.8700982e+02 -8.4327565e+02 -3.3743907e+03 - 3.5328440e+02 -8.4206617e+02 -3.3724694e+03 - 4.1628616e+02 -8.4076294e+02 -3.3701957e+03 - 4.7568491e+02 -8.3944787e+02 -3.3676069e+03 - 5.3127047e+02 -8.3820168e+02 -3.3647418e+03 - 5.8294025e+02 -8.3709995e+02 -3.3616391e+03 - 6.3068244e+02 -8.3621044e+02 -3.3583365e+03 - 6.7455769e+02 -8.3559157e+02 -3.3548697e+03 - 7.1468105e+02 -8.3529173e+02 -3.3512723e+03 - 7.5120582e+02 -8.3534947e+02 -3.3475755e+03 - 7.8430980e+02 -8.3579406e+02 -3.3438078e+03 - 8.1418419e+02 -8.3664636e+02 -3.3399955e+03 - 8.4102522e+02 -8.3791983e+02 -3.3361626e+03 - 8.6502795e+02 -8.3962153e+02 -3.3323313e+03 - 8.8638205e+02 -8.4175299e+02 -3.3285220e+03 - 9.0526909e+02 -8.4431107e+02 -3.3247536e+03 - 9.2186100e+02 -8.4728860e+02 -3.3210435e+03 - 9.3631937e+02 -8.5067493e+02 -3.3174084e+03 - 9.4879541e+02 -8.5445634e+02 -3.3138635e+03 - 9.5943022e+02 -8.5861642e+02 -3.3104237e+03 - 9.6835540e+02 -8.6313622e+02 -3.3071025e+03 - 9.7569378e+02 -8.6799446e+02 -3.3039131e+03 - 9.8156019e+02 -8.7316760e+02 -3.3008679e+03 - 9.8606228e+02 -8.7862991e+02 -3.2979786e+03 - 9.8930127e+02 -8.8435352e+02 -3.2952561e+03 - 9.9137268e+02 -8.9030839e+02 -3.2927111e+03 - 9.9236699e+02 -8.9646231e+02 -3.2903531e+03 - 9.9237017e+02 -9.0278090e+02 -3.2881912e+03 - 9.9146425e+02 -9.0922759e+02 -3.2862337e+03 - 9.8972769e+02 -9.1576362e+02 -3.2844881e+03 - 9.8723579e+02 -9.2234801e+02 -3.2829613e+03 - 9.8406093e+02 -9.2893759e+02 -3.2816591e+03 - 9.8027284e+02 -9.3548696e+02 -3.2805866e+03 - 9.7593877e+02 -9.4194856e+02 -3.2797480e+03 - 9.7112362e+02 -9.4827264e+02 -3.2791466e+03 - 9.6589004e+02 -9.5440730e+02 -3.2787849e+03 - 9.6029849e+02 -9.6029849e+02 -3.2786641e+03 - 9.5440730e+02 -9.6589004e+02 -3.2787849e+03 - 9.4827264e+02 -9.7112362e+02 -3.2791466e+03 - 9.4194856e+02 -9.7593877e+02 -3.2797480e+03 - 9.3548696e+02 -9.8027284e+02 -3.2805866e+03 - 9.2893759e+02 -9.8406093e+02 -3.2816591e+03 - 9.2234801e+02 -9.8723579e+02 -3.2829613e+03 - 9.1576362e+02 -9.8972769e+02 -3.2844881e+03 - 9.0922759e+02 -9.9146425e+02 -3.2862337e+03 - 9.0278090e+02 -9.9237017e+02 -3.2881912e+03 - 8.9646231e+02 -9.9236699e+02 -3.2903531e+03 - 8.9030839e+02 -9.9137268e+02 -3.2927111e+03 - 8.8435352e+02 -9.8930127e+02 -3.2952561e+03 - 8.7862991e+02 -9.8606228e+02 -3.2979786e+03 - 8.7316760e+02 -9.8156019e+02 -3.3008679e+03 - 8.6799446e+02 -9.7569378e+02 -3.3039131e+03 - 8.6313622e+02 -9.6835540e+02 -3.3071025e+03 - 8.5861642e+02 -9.5943022e+02 -3.3104237e+03 - 8.5445634e+02 -9.4879541e+02 -3.3138635e+03 - 8.5067493e+02 -9.3631937e+02 -3.3174084e+03 - 8.4728860e+02 -9.2186100e+02 -3.3210435e+03 - 8.4431107e+02 -9.0526909e+02 -3.3247536e+03 - 8.4175299e+02 -8.8638205e+02 -3.3285220e+03 - 8.3962153e+02 -8.6502795e+02 -3.3323313e+03 - 8.3791983e+02 -8.4102522e+02 -3.3361626e+03 - 8.3664636e+02 -8.1418419e+02 -3.3399955e+03 - 8.3579406e+02 -7.8430980e+02 -3.3438078e+03 - 8.3534947e+02 -7.5120582e+02 -3.3475755e+03 - 8.3529173e+02 -7.1468105e+02 -3.3512723e+03 - 8.3559157e+02 -6.7455769e+02 -3.3548697e+03 - 8.3621044e+02 -6.3068244e+02 -3.3583365e+03 - 8.3709995e+02 -5.8294025e+02 -3.3616391e+03 - 8.3820168e+02 -5.3127047e+02 -3.3647418e+03 - 8.3944787e+02 -4.7568491e+02 -3.3676069e+03 - 8.4076294e+02 -4.1628616e+02 -3.3701957e+03 - 8.4206617e+02 -3.5328440e+02 -3.3724694e+03 - 8.4327565e+02 -2.8700982e+02 -3.3743907e+03 - 8.4431311e+02 -2.1791798e+02 -3.3759254e+03 - 8.4510952e+02 -1.4658523e+02 -3.3770444e+03 - 8.4561061e+02 -7.3692876e+01 -3.3777253e+03 - 8.4578162e+02 -2.4067136e-09 -3.3779538e+03 - 8.0323737e+02 0.0000000e+00 -3.3950896e+03 - 8.0307487e+02 6.9764652e+01 -3.3948853e+03 - 8.0259877e+02 1.3878894e+02 -3.3942767e+03 - 8.0184219e+02 2.0636953e+02 -3.3932758e+03 - 8.0085697e+02 2.7187274e+02 -3.3919015e+03 - 7.9970919e+02 3.3475925e+02 -3.3901789e+03 - 7.9847397e+02 3.9459889e+02 -3.3881373e+03 - 7.9723019e+02 4.5107551e+02 -3.3858089e+03 - 7.9605580e+02 5.0398301e+02 -3.3832275e+03 - 7.9502406e+02 5.5321480e+02 -3.3804271e+03 - 7.9420080e+02 5.9874924e+02 -3.3774410e+03 - 7.9364287e+02 6.4063331e+02 -3.3743013e+03 - 7.9339741e+02 6.7896638e+02 -3.3710381e+03 - 7.9350191e+02 7.1388537e+02 -3.3676798e+03 - 7.9398468e+02 7.4555201e+02 -3.3642526e+03 - 7.9486568e+02 7.7414240e+02 -3.3607806e+03 - 7.9615749e+02 7.9983894e+02 -3.3572862e+03 - 7.9786622e+02 8.2282432e+02 -3.3537900e+03 - 7.9999248e+02 8.4327729e+02 -3.3503113e+03 - 8.0253215e+02 8.6136986e+02 -3.3468676e+03 - 8.0547709e+02 8.7726560e+02 -3.3434755e+03 - 8.0881572e+02 8.9111884e+02 -3.3401505e+03 - 8.1253347e+02 9.0307436e+02 -3.3369072e+03 - 8.1661314e+02 9.1326757e+02 -3.3337591e+03 - 8.2103513e+02 9.2182497e+02 -3.3307192e+03 - 8.2577767e+02 9.2886471e+02 -3.3277997e+03 - 8.3081694e+02 9.3449729e+02 -3.3250122e+03 - 8.3612712e+02 9.3882625e+02 -3.3223673e+03 - 8.4168049e+02 9.4194888e+02 -3.3198754e+03 - 8.4744741e+02 9.4395683e+02 -3.3175461e+03 - 8.5339637e+02 9.4493680e+02 -3.3153882e+03 - 8.5949393e+02 9.4497101e+02 -3.3134100e+03 - 8.6570478e+02 9.4413770e+02 -3.3116190e+03 - 8.7199168e+02 9.4251157e+02 -3.3100222e+03 - 8.7831546e+02 9.4016410e+02 -3.3086256e+03 - 8.8463502e+02 9.3716388e+02 -3.3074346e+03 - 8.9090732e+02 9.3357682e+02 -3.3064538e+03 - 8.9708740e+02 9.2946638e+02 -3.3056870e+03 - 9.0312833e+02 9.2489370e+02 -3.3051372e+03 - 9.0898124e+02 9.1991773e+02 -3.3048064e+03 - 9.1459531e+02 9.1459531e+02 -3.3046960e+03 - 9.1991773e+02 9.0898124e+02 -3.3048064e+03 - 9.2489370e+02 9.0312833e+02 -3.3051372e+03 - 9.2946638e+02 8.9708740e+02 -3.3056870e+03 - 9.3357682e+02 8.9090732e+02 -3.3064538e+03 - 9.3716388e+02 8.8463502e+02 -3.3074346e+03 - 9.4016410e+02 8.7831546e+02 -3.3086256e+03 - 9.4251157e+02 8.7199168e+02 -3.3100222e+03 - 9.4413770e+02 8.6570478e+02 -3.3116190e+03 - 9.4497101e+02 8.5949393e+02 -3.3134100e+03 - 9.4493680e+02 8.5339637e+02 -3.3153882e+03 - 9.4395683e+02 8.4744741e+02 -3.3175461e+03 - 9.4194888e+02 8.4168049e+02 -3.3198754e+03 - 9.3882625e+02 8.3612712e+02 -3.3223673e+03 - 9.3449729e+02 8.3081694e+02 -3.3250122e+03 - 9.2886471e+02 8.2577767e+02 -3.3277997e+03 - 9.2182497e+02 8.2103513e+02 -3.3307192e+03 - 9.1326757e+02 8.1661314e+02 -3.3337591e+03 - 9.0307436e+02 8.1253347e+02 -3.3369072e+03 - 8.9111884e+02 8.0881572e+02 -3.3401505e+03 - 8.7726560e+02 8.0547709e+02 -3.3434755e+03 - 8.6136986e+02 8.0253215e+02 -3.3468676e+03 - 8.4327729e+02 7.9999248e+02 -3.3503113e+03 - 8.2282432e+02 7.9786622e+02 -3.3537900e+03 - 7.9983894e+02 7.9615749e+02 -3.3572862e+03 - 7.7414240e+02 7.9486568e+02 -3.3607806e+03 - 7.4555201e+02 7.9398468e+02 -3.3642526e+03 - 7.1388537e+02 7.9350191e+02 -3.3676798e+03 - 6.7896638e+02 7.9339741e+02 -3.3710381e+03 - 6.4063331e+02 7.9364287e+02 -3.3743013e+03 - 5.9874924e+02 7.9420080e+02 -3.3774410e+03 - 5.5321480e+02 7.9502406e+02 -3.3804271e+03 - 5.0398301e+02 7.9605580e+02 -3.3832275e+03 - 4.5107551e+02 7.9723019e+02 -3.3858089e+03 - 3.9459889e+02 7.9847397e+02 -3.3881373e+03 - 3.3475925e+02 7.9970919e+02 -3.3901789e+03 - 2.7187274e+02 8.0085697e+02 -3.3919015e+03 - 2.0636953e+02 8.0184219e+02 -3.3932758e+03 - 1.3878894e+02 8.0259877e+02 -3.3942767e+03 - 6.9764652e+01 8.0307487e+02 -3.3948853e+03 - 0.0000000e+00 8.0323737e+02 -3.3950896e+03 - -6.9764652e+01 8.0307487e+02 -3.3948853e+03 - -1.3878894e+02 8.0259877e+02 -3.3942767e+03 - -2.0636953e+02 8.0184219e+02 -3.3932758e+03 - -2.7187274e+02 8.0085697e+02 -3.3919015e+03 - -3.3475925e+02 7.9970919e+02 -3.3901789e+03 - -3.9459889e+02 7.9847397e+02 -3.3881373e+03 - -4.5107551e+02 7.9723019e+02 -3.3858089e+03 - -5.0398301e+02 7.9605580e+02 -3.3832275e+03 - -5.5321480e+02 7.9502406e+02 -3.3804271e+03 - -5.9874924e+02 7.9420080e+02 -3.3774410e+03 - -6.4063331e+02 7.9364287e+02 -3.3743013e+03 - -6.7896638e+02 7.9339741e+02 -3.3710381e+03 - -7.1388537e+02 7.9350191e+02 -3.3676798e+03 - -7.4555201e+02 7.9398468e+02 -3.3642526e+03 - -7.7414240e+02 7.9486568e+02 -3.3607806e+03 - -7.9983894e+02 7.9615749e+02 -3.3572862e+03 - -8.2282432e+02 7.9786622e+02 -3.3537900e+03 - -8.4327729e+02 7.9999248e+02 -3.3503113e+03 - -8.6136986e+02 8.0253215e+02 -3.3468676e+03 - -8.7726560e+02 8.0547709e+02 -3.3434755e+03 - -8.9111884e+02 8.0881572e+02 -3.3401505e+03 - -9.0307436e+02 8.1253347e+02 -3.3369072e+03 - -9.1326757e+02 8.1661314e+02 -3.3337591e+03 - -9.2182497e+02 8.2103513e+02 -3.3307192e+03 - -9.2886471e+02 8.2577767e+02 -3.3277997e+03 - -9.3449729e+02 8.3081694e+02 -3.3250122e+03 - -9.3882625e+02 8.3612712e+02 -3.3223673e+03 - -9.4194888e+02 8.4168049e+02 -3.3198754e+03 - -9.4395683e+02 8.4744741e+02 -3.3175461e+03 - -9.4493680e+02 8.5339637e+02 -3.3153882e+03 - -9.4497101e+02 8.5949393e+02 -3.3134100e+03 - -9.4413770e+02 8.6570478e+02 -3.3116190e+03 - -9.4251157e+02 8.7199168e+02 -3.3100222e+03 - -9.4016410e+02 8.7831546e+02 -3.3086256e+03 - -9.3716388e+02 8.8463502e+02 -3.3074346e+03 - -9.3357682e+02 8.9090732e+02 -3.3064538e+03 - -9.2946638e+02 8.9708740e+02 -3.3056870e+03 - -9.2489370e+02 9.0312833e+02 -3.3051372e+03 - -9.1991773e+02 9.0898124e+02 -3.3048064e+03 - -9.1459531e+02 9.1459531e+02 -3.3046960e+03 - -9.0898124e+02 9.1991773e+02 -3.3048064e+03 - -9.0312833e+02 9.2489370e+02 -3.3051372e+03 - -8.9708740e+02 9.2946638e+02 -3.3056870e+03 - -8.9090732e+02 9.3357682e+02 -3.3064538e+03 - -8.8463502e+02 9.3716388e+02 -3.3074346e+03 - -8.7831546e+02 9.4016410e+02 -3.3086256e+03 - -8.7199168e+02 9.4251157e+02 -3.3100222e+03 - -8.6570478e+02 9.4413770e+02 -3.3116190e+03 - -8.5949393e+02 9.4497101e+02 -3.3134100e+03 - -8.5339637e+02 9.4493680e+02 -3.3153882e+03 - -8.4744741e+02 9.4395683e+02 -3.3175461e+03 - -8.4168049e+02 9.4194888e+02 -3.3198754e+03 - -8.3612712e+02 9.3882625e+02 -3.3223673e+03 - -8.3081694e+02 9.3449729e+02 -3.3250122e+03 - -8.2577767e+02 9.2886471e+02 -3.3277997e+03 - -8.2103513e+02 9.2182497e+02 -3.3307192e+03 - -8.1661314e+02 9.1326757e+02 -3.3337591e+03 - -8.1253347e+02 9.0307436e+02 -3.3369072e+03 - -8.0881572e+02 8.9111884e+02 -3.3401505e+03 - -8.0547709e+02 8.7726560e+02 -3.3434755e+03 - -8.0253215e+02 8.6136986e+02 -3.3468676e+03 - -7.9999248e+02 8.4327729e+02 -3.3503113e+03 - -7.9786622e+02 8.2282432e+02 -3.3537900e+03 - -7.9615749e+02 7.9983894e+02 -3.3572862e+03 - -7.9486568e+02 7.7414240e+02 -3.3607806e+03 - -7.9398468e+02 7.4555201e+02 -3.3642526e+03 - -7.9350191e+02 7.1388537e+02 -3.3676798e+03 - -7.9339741e+02 6.7896638e+02 -3.3710381e+03 - -7.9364287e+02 6.4063331e+02 -3.3743013e+03 - -7.9420080e+02 5.9874924e+02 -3.3774410e+03 - -7.9502406e+02 5.5321480e+02 -3.3804271e+03 - -7.9605580e+02 5.0398301e+02 -3.3832275e+03 - -7.9723019e+02 4.5107551e+02 -3.3858089e+03 - -7.9847397e+02 3.9459889e+02 -3.3881373e+03 - -7.9970919e+02 3.3475925e+02 -3.3901789e+03 - -8.0085697e+02 2.7187274e+02 -3.3919015e+03 - -8.0184219e+02 2.0636953e+02 -3.3932758e+03 - -8.0259877e+02 1.3878894e+02 -3.3942767e+03 - -8.0307487e+02 6.9764652e+01 -3.3948853e+03 - -8.0323737e+02 0.0000000e+00 -3.3950896e+03 - -8.0307487e+02 -6.9764652e+01 -3.3948853e+03 - -8.0259877e+02 -1.3878894e+02 -3.3942767e+03 - -8.0184219e+02 -2.0636953e+02 -3.3932758e+03 - -8.0085697e+02 -2.7187274e+02 -3.3919015e+03 - -7.9970919e+02 -3.3475925e+02 -3.3901789e+03 - -7.9847397e+02 -3.9459889e+02 -3.3881373e+03 - -7.9723019e+02 -4.5107551e+02 -3.3858089e+03 - -7.9605580e+02 -5.0398301e+02 -3.3832275e+03 - -7.9502406e+02 -5.5321480e+02 -3.3804271e+03 - -7.9420080e+02 -5.9874924e+02 -3.3774410e+03 - -7.9364287e+02 -6.4063331e+02 -3.3743013e+03 - -7.9339741e+02 -6.7896638e+02 -3.3710381e+03 - -7.9350191e+02 -7.1388537e+02 -3.3676798e+03 - -7.9398468e+02 -7.4555201e+02 -3.3642526e+03 - -7.9486568e+02 -7.7414240e+02 -3.3607806e+03 - -7.9615749e+02 -7.9983894e+02 -3.3572862e+03 - -7.9786622e+02 -8.2282432e+02 -3.3537900e+03 - -7.9999248e+02 -8.4327729e+02 -3.3503113e+03 - -8.0253215e+02 -8.6136986e+02 -3.3468676e+03 - -8.0547709e+02 -8.7726560e+02 -3.3434755e+03 - -8.0881572e+02 -8.9111884e+02 -3.3401505e+03 - -8.1253347e+02 -9.0307436e+02 -3.3369072e+03 - -8.1661314e+02 -9.1326757e+02 -3.3337591e+03 - -8.2103513e+02 -9.2182497e+02 -3.3307192e+03 - -8.2577767e+02 -9.2886471e+02 -3.3277997e+03 - -8.3081694e+02 -9.3449729e+02 -3.3250122e+03 - -8.3612712e+02 -9.3882625e+02 -3.3223673e+03 - -8.4168049e+02 -9.4194888e+02 -3.3198754e+03 - -8.4744741e+02 -9.4395683e+02 -3.3175461e+03 - -8.5339637e+02 -9.4493680e+02 -3.3153882e+03 - -8.5949393e+02 -9.4497101e+02 -3.3134100e+03 - -8.6570478e+02 -9.4413770e+02 -3.3116190e+03 - -8.7199168e+02 -9.4251157e+02 -3.3100222e+03 - -8.7831546e+02 -9.4016410e+02 -3.3086256e+03 - -8.8463502e+02 -9.3716388e+02 -3.3074346e+03 - -8.9090732e+02 -9.3357682e+02 -3.3064538e+03 - -8.9708740e+02 -9.2946638e+02 -3.3056870e+03 - -9.0312833e+02 -9.2489370e+02 -3.3051372e+03 - -9.0898124e+02 -9.1991773e+02 -3.3048064e+03 - -9.1459531e+02 -9.1459531e+02 -3.3046960e+03 - -9.1991773e+02 -9.0898124e+02 -3.3048064e+03 - -9.2489370e+02 -9.0312833e+02 -3.3051372e+03 - -9.2946638e+02 -8.9708740e+02 -3.3056870e+03 - -9.3357682e+02 -8.9090732e+02 -3.3064538e+03 - -9.3716388e+02 -8.8463502e+02 -3.3074346e+03 - -9.4016410e+02 -8.7831546e+02 -3.3086256e+03 - -9.4251157e+02 -8.7199168e+02 -3.3100222e+03 - -9.4413770e+02 -8.6570478e+02 -3.3116190e+03 - -9.4497101e+02 -8.5949393e+02 -3.3134100e+03 - -9.4493680e+02 -8.5339637e+02 -3.3153882e+03 - -9.4395683e+02 -8.4744741e+02 -3.3175461e+03 - -9.4194888e+02 -8.4168049e+02 -3.3198754e+03 - -9.3882625e+02 -8.3612712e+02 -3.3223673e+03 - -9.3449729e+02 -8.3081694e+02 -3.3250122e+03 - -9.2886471e+02 -8.2577767e+02 -3.3277997e+03 - -9.2182497e+02 -8.2103513e+02 -3.3307192e+03 - -9.1326757e+02 -8.1661314e+02 -3.3337591e+03 - -9.0307436e+02 -8.1253347e+02 -3.3369072e+03 - -8.9111884e+02 -8.0881572e+02 -3.3401505e+03 - -8.7726560e+02 -8.0547709e+02 -3.3434755e+03 - -8.6136986e+02 -8.0253215e+02 -3.3468676e+03 - -8.4327729e+02 -7.9999248e+02 -3.3503113e+03 - -8.2282432e+02 -7.9786622e+02 -3.3537900e+03 - -7.9983894e+02 -7.9615749e+02 -3.3572862e+03 - -7.7414240e+02 -7.9486568e+02 -3.3607806e+03 - -7.4555201e+02 -7.9398468e+02 -3.3642526e+03 - -7.1388537e+02 -7.9350191e+02 -3.3676798e+03 - -6.7896638e+02 -7.9339741e+02 -3.3710381e+03 - -6.4063331e+02 -7.9364287e+02 -3.3743013e+03 - -5.9874924e+02 -7.9420080e+02 -3.3774410e+03 - -5.5321480e+02 -7.9502406e+02 -3.3804271e+03 - -5.0398301e+02 -7.9605580e+02 -3.3832275e+03 - -4.5107551e+02 -7.9723019e+02 -3.3858089e+03 - -3.9459889e+02 -7.9847397e+02 -3.3881373e+03 - -3.3475925e+02 -7.9970919e+02 -3.3901789e+03 - -2.7187274e+02 -8.0085697e+02 -3.3919015e+03 - -2.0636953e+02 -8.0184219e+02 -3.3932758e+03 - -1.3878894e+02 -8.0259877e+02 -3.3942767e+03 - -6.9764652e+01 -8.0307487e+02 -3.3948853e+03 - 0.0000000e+00 -8.0323737e+02 -3.3950896e+03 - 6.9764652e+01 -8.0307487e+02 -3.3948853e+03 - 1.3878894e+02 -8.0259877e+02 -3.3942767e+03 - 2.0636953e+02 -8.0184219e+02 -3.3932758e+03 - 2.7187274e+02 -8.0085697e+02 -3.3919015e+03 - 3.3475925e+02 -7.9970919e+02 -3.3901789e+03 - 3.9459889e+02 -7.9847397e+02 -3.3881373e+03 - 4.5107551e+02 -7.9723019e+02 -3.3858089e+03 - 5.0398301e+02 -7.9605580e+02 -3.3832275e+03 - 5.5321480e+02 -7.9502406e+02 -3.3804271e+03 - 5.9874924e+02 -7.9420080e+02 -3.3774410e+03 - 6.4063331e+02 -7.9364287e+02 -3.3743013e+03 - 6.7896638e+02 -7.9339741e+02 -3.3710381e+03 - 7.1388537e+02 -7.9350191e+02 -3.3676798e+03 - 7.4555201e+02 -7.9398468e+02 -3.3642526e+03 - 7.7414240e+02 -7.9486568e+02 -3.3607806e+03 - 7.9983894e+02 -7.9615749e+02 -3.3572862e+03 - 8.2282432e+02 -7.9786622e+02 -3.3537900e+03 - 8.4327729e+02 -7.9999248e+02 -3.3503113e+03 - 8.6136986e+02 -8.0253215e+02 -3.3468676e+03 - 8.7726560e+02 -8.0547709e+02 -3.3434755e+03 - 8.9111884e+02 -8.0881572e+02 -3.3401505e+03 - 9.0307436e+02 -8.1253347e+02 -3.3369072e+03 - 9.1326757e+02 -8.1661314e+02 -3.3337591e+03 - 9.2182497e+02 -8.2103513e+02 -3.3307192e+03 - 9.2886471e+02 -8.2577767e+02 -3.3277997e+03 - 9.3449729e+02 -8.3081694e+02 -3.3250122e+03 - 9.3882625e+02 -8.3612712e+02 -3.3223673e+03 - 9.4194888e+02 -8.4168049e+02 -3.3198754e+03 - 9.4395683e+02 -8.4744741e+02 -3.3175461e+03 - 9.4493680e+02 -8.5339637e+02 -3.3153882e+03 - 9.4497101e+02 -8.5949393e+02 -3.3134100e+03 - 9.4413770e+02 -8.6570478e+02 -3.3116190e+03 - 9.4251157e+02 -8.7199168e+02 -3.3100222e+03 - 9.4016410e+02 -8.7831546e+02 -3.3086256e+03 - 9.3716388e+02 -8.8463502e+02 -3.3074346e+03 - 9.3357682e+02 -8.9090732e+02 -3.3064538e+03 - 9.2946638e+02 -8.9708740e+02 -3.3056870e+03 - 9.2489370e+02 -9.0312833e+02 -3.3051372e+03 - 9.1991773e+02 -9.0898124e+02 -3.3048064e+03 - 9.1459531e+02 -9.1459531e+02 -3.3046960e+03 - 9.0898124e+02 -9.1991773e+02 -3.3048064e+03 - 9.0312833e+02 -9.2489370e+02 -3.3051372e+03 - 8.9708740e+02 -9.2946638e+02 -3.3056870e+03 - 8.9090732e+02 -9.3357682e+02 -3.3064538e+03 - 8.8463502e+02 -9.3716388e+02 -3.3074346e+03 - 8.7831546e+02 -9.4016410e+02 -3.3086256e+03 - 8.7199168e+02 -9.4251157e+02 -3.3100222e+03 - 8.6570478e+02 -9.4413770e+02 -3.3116190e+03 - 8.5949393e+02 -9.4497101e+02 -3.3134100e+03 - 8.5339637e+02 -9.4493680e+02 -3.3153882e+03 - 8.4744741e+02 -9.4395683e+02 -3.3175461e+03 - 8.4168049e+02 -9.4194888e+02 -3.3198754e+03 - 8.3612712e+02 -9.3882625e+02 -3.3223673e+03 - 8.3081694e+02 -9.3449729e+02 -3.3250122e+03 - 8.2577767e+02 -9.2886471e+02 -3.3277997e+03 - 8.2103513e+02 -9.2182497e+02 -3.3307192e+03 - 8.1661314e+02 -9.1326757e+02 -3.3337591e+03 - 8.1253347e+02 -9.0307436e+02 -3.3369072e+03 - 8.0881572e+02 -8.9111884e+02 -3.3401505e+03 - 8.0547709e+02 -8.7726560e+02 -3.3434755e+03 - 8.0253215e+02 -8.6136986e+02 -3.3468676e+03 - 7.9999248e+02 -8.4327729e+02 -3.3503113e+03 - 7.9786622e+02 -8.2282432e+02 -3.3537900e+03 - 7.9615749e+02 -7.9983894e+02 -3.3572862e+03 - 7.9486568e+02 -7.7414240e+02 -3.3607806e+03 - 7.9398468e+02 -7.4555201e+02 -3.3642526e+03 - 7.9350191e+02 -7.1388537e+02 -3.3676798e+03 - 7.9339741e+02 -6.7896638e+02 -3.3710381e+03 - 7.9364287e+02 -6.4063331e+02 -3.3743013e+03 - 7.9420080e+02 -5.9874924e+02 -3.3774410e+03 - 7.9502406e+02 -5.5321480e+02 -3.3804271e+03 - 7.9605580e+02 -5.0398301e+02 -3.3832275e+03 - 7.9723019e+02 -4.5107551e+02 -3.3858089e+03 - 7.9847397e+02 -3.9459889e+02 -3.3881373e+03 - 7.9970919e+02 -3.3475925e+02 -3.3901789e+03 - 8.0085697e+02 -2.7187274e+02 -3.3919015e+03 - 8.0184219e+02 -2.0636953e+02 -3.3932758e+03 - 8.0259877e+02 -1.3878894e+02 -3.3942767e+03 - 8.0307487e+02 -6.9764652e+01 -3.3948853e+03 - 8.0323737e+02 0.0000000e+00 -3.3950896e+03 - 7.6072118e+02 0.0000000e+00 -3.4112512e+03 - 7.6056742e+02 6.5880786e+01 -3.4110695e+03 - 7.6011694e+02 1.3107740e+02 -3.4105280e+03 - 7.5940121e+02 1.9493881e+02 -3.4096367e+03 - 7.5846950e+02 2.5687643e+02 -3.4084119e+03 - 7.5738477e+02 3.1638656e+02 -3.4068748e+03 - 7.5621878e+02 3.7306418e+02 -3.4050506e+03 - 7.5504711e+02 4.2660795e+02 -3.4029671e+03 - 7.5394466e+02 4.7681730e+02 -3.4006535e+03 - 7.5298203e+02 5.2358363e+02 -3.3981397e+03 - 7.5222286e+02 5.6687753e+02 -3.3954550e+03 - 7.5172219e+02 6.0673434e+02 -3.3926279e+03 - 7.5152572e+02 6.4323956e+02 -3.3896854e+03 - 7.5166974e+02 6.7651525e+02 -3.3866529e+03 - 7.5218157e+02 7.0670824e+02 -3.3835544e+03 - 7.5308028e+02 7.3398038e+02 -3.3804120e+03 - 7.5437763e+02 7.5850081e+02 -3.3772463e+03 - 7.5607894e+02 7.8044019e+02 -3.3740763e+03 - 7.5818404e+02 7.9996645e+02 -3.3709197e+03 - 7.6068806e+02 8.1724202e+02 -3.3677930e+03 - 7.6358215e+02 8.3242200e+02 -3.3647117e+03 - 7.6685402e+02 8.4565320e+02 -3.3616902e+03 - 7.7048851e+02 8.5707373e+02 -3.3587419e+03 - 7.7446789e+02 8.6681304e+02 -3.3558795e+03 - 7.7877217e+02 8.7499223e+02 -3.3531152e+03 - 7.8337933e+02 8.8172450e+02 -3.3504600e+03 - 7.8826549e+02 8.8711576e+02 -3.3479248e+03 - 7.9340495e+02 8.9126520e+02 -3.3455193e+03 - 7.9877032e+02 8.9426597e+02 -3.3432531e+03 - 8.0433255e+02 8.9620573e+02 -3.3411348e+03 - 8.1006093e+02 8.9716725e+02 -3.3391726e+03 - 8.1592310e+02 8.9722887e+02 -3.3373740e+03 - 8.2188507e+02 8.9646503e+02 -3.3357458e+03 - 8.2791116e+02 8.9494660e+02 -3.3342942e+03 - 8.3396405e+02 8.9274129e+02 -3.3330248e+03 - 8.4000473e+02 8.8991388e+02 -3.3319424e+03 - 8.4599248e+02 8.8652655e+02 -3.3310511e+03 - 8.5188488e+02 8.8263904e+02 -3.3303543e+03 - 8.5763776e+02 8.7830880e+02 -3.3298547e+03 - 8.6320521e+02 8.7359119e+02 -3.3295542e+03 - 8.6853953e+02 8.6853953e+02 -3.3294539e+03 - 8.7359119e+02 8.6320521e+02 -3.3295542e+03 - 8.7830880e+02 8.5763776e+02 -3.3298547e+03 - 8.8263904e+02 8.5188488e+02 -3.3303543e+03 - 8.8652655e+02 8.4599248e+02 -3.3310511e+03 - 8.8991388e+02 8.4000473e+02 -3.3319424e+03 - 8.9274129e+02 8.3396405e+02 -3.3330248e+03 - 8.9494660e+02 8.2791116e+02 -3.3342942e+03 - 8.9646503e+02 8.2188507e+02 -3.3357458e+03 - 8.9722887e+02 8.1592310e+02 -3.3373740e+03 - 8.9716725e+02 8.1006093e+02 -3.3391726e+03 - 8.9620573e+02 8.0433255e+02 -3.3411348e+03 - 8.9426597e+02 7.9877032e+02 -3.3432531e+03 - 8.9126520e+02 7.9340495e+02 -3.3455193e+03 - 8.8711576e+02 7.8826549e+02 -3.3479248e+03 - 8.8172450e+02 7.8337933e+02 -3.3504600e+03 - 8.7499223e+02 7.7877217e+02 -3.3531152e+03 - 8.6681304e+02 7.7446789e+02 -3.3558795e+03 - 8.5707373e+02 7.7048851e+02 -3.3587419e+03 - 8.4565320e+02 7.6685402e+02 -3.3616902e+03 - 8.3242200e+02 7.6358215e+02 -3.3647117e+03 - 8.1724202e+02 7.6068806e+02 -3.3677930e+03 - 7.9996645e+02 7.5818404e+02 -3.3709197e+03 - 7.8044019e+02 7.5607894e+02 -3.3740763e+03 - 7.5850081e+02 7.5437763e+02 -3.3772463e+03 - 7.3398038e+02 7.5308028e+02 -3.3804120e+03 - 7.0670824e+02 7.5218157e+02 -3.3835544e+03 - 6.7651525e+02 7.5166974e+02 -3.3866529e+03 - 6.4323956e+02 7.5152572e+02 -3.3896854e+03 - 6.0673434e+02 7.5172219e+02 -3.3926279e+03 - 5.6687753e+02 7.5222286e+02 -3.3954550e+03 - 5.2358363e+02 7.5298203e+02 -3.3981397e+03 - 4.7681730e+02 7.5394466e+02 -3.4006535e+03 - 4.2660795e+02 7.5504711e+02 -3.4029671e+03 - 3.7306418e+02 7.5621878e+02 -3.4050506e+03 - 3.1638656e+02 7.5738477e+02 -3.4068748e+03 - 2.5687643e+02 7.5846950e+02 -3.4084119e+03 - 1.9493881e+02 7.5940121e+02 -3.4096367e+03 - 1.3107740e+02 7.6011694e+02 -3.4105280e+03 - 6.5880786e+01 7.6056742e+02 -3.4110695e+03 - 0.0000000e+00 7.6072118e+02 -3.4112512e+03 - -6.5880786e+01 7.6056742e+02 -3.4110695e+03 - -1.3107740e+02 7.6011694e+02 -3.4105280e+03 - -1.9493881e+02 7.5940121e+02 -3.4096367e+03 - -2.5687643e+02 7.5846950e+02 -3.4084119e+03 - -3.1638656e+02 7.5738477e+02 -3.4068748e+03 - -3.7306418e+02 7.5621878e+02 -3.4050506e+03 - -4.2660795e+02 7.5504711e+02 -3.4029671e+03 - -4.7681730e+02 7.5394466e+02 -3.4006535e+03 - -5.2358363e+02 7.5298203e+02 -3.3981397e+03 - -5.6687753e+02 7.5222286e+02 -3.3954550e+03 - -6.0673434e+02 7.5172219e+02 -3.3926279e+03 - -6.4323956e+02 7.5152572e+02 -3.3896854e+03 - -6.7651525e+02 7.5166974e+02 -3.3866529e+03 - -7.0670824e+02 7.5218157e+02 -3.3835544e+03 - -7.3398038e+02 7.5308028e+02 -3.3804120e+03 - -7.5850081e+02 7.5437763e+02 -3.3772463e+03 - -7.8044019e+02 7.5607894e+02 -3.3740763e+03 - -7.9996645e+02 7.5818404e+02 -3.3709197e+03 - -8.1724202e+02 7.6068806e+02 -3.3677930e+03 - -8.3242200e+02 7.6358215e+02 -3.3647117e+03 - -8.4565320e+02 7.6685402e+02 -3.3616902e+03 - -8.5707373e+02 7.7048851e+02 -3.3587419e+03 - -8.6681304e+02 7.7446789e+02 -3.3558795e+03 - -8.7499223e+02 7.7877217e+02 -3.3531152e+03 - -8.8172450e+02 7.8337933e+02 -3.3504600e+03 - -8.8711576e+02 7.8826549e+02 -3.3479248e+03 - -8.9126520e+02 7.9340495e+02 -3.3455193e+03 - -8.9426597e+02 7.9877032e+02 -3.3432531e+03 - -8.9620573e+02 8.0433255e+02 -3.3411348e+03 - -8.9716725e+02 8.1006093e+02 -3.3391726e+03 - -8.9722887e+02 8.1592310e+02 -3.3373740e+03 - -8.9646503e+02 8.2188507e+02 -3.3357458e+03 - -8.9494660e+02 8.2791116e+02 -3.3342942e+03 - -8.9274129e+02 8.3396405e+02 -3.3330248e+03 - -8.8991388e+02 8.4000473e+02 -3.3319424e+03 - -8.8652655e+02 8.4599248e+02 -3.3310511e+03 - -8.8263904e+02 8.5188488e+02 -3.3303543e+03 - -8.7830880e+02 8.5763776e+02 -3.3298547e+03 - -8.7359119e+02 8.6320521e+02 -3.3295542e+03 - -8.6853953e+02 8.6853953e+02 -3.3294539e+03 - -8.6320521e+02 8.7359119e+02 -3.3295542e+03 - -8.5763776e+02 8.7830880e+02 -3.3298547e+03 - -8.5188488e+02 8.8263904e+02 -3.3303543e+03 - -8.4599248e+02 8.8652655e+02 -3.3310511e+03 - -8.4000473e+02 8.8991388e+02 -3.3319424e+03 - -8.3396405e+02 8.9274129e+02 -3.3330248e+03 - -8.2791116e+02 8.9494660e+02 -3.3342942e+03 - -8.2188507e+02 8.9646503e+02 -3.3357458e+03 - -8.1592310e+02 8.9722887e+02 -3.3373740e+03 - -8.1006093e+02 8.9716725e+02 -3.3391726e+03 - -8.0433255e+02 8.9620573e+02 -3.3411348e+03 - -7.9877032e+02 8.9426597e+02 -3.3432531e+03 - -7.9340495e+02 8.9126520e+02 -3.3455193e+03 - -7.8826549e+02 8.8711576e+02 -3.3479248e+03 - -7.8337933e+02 8.8172450e+02 -3.3504600e+03 - -7.7877217e+02 8.7499223e+02 -3.3531152e+03 - -7.7446789e+02 8.6681304e+02 -3.3558795e+03 - -7.7048851e+02 8.5707373e+02 -3.3587419e+03 - -7.6685402e+02 8.4565320e+02 -3.3616902e+03 - -7.6358215e+02 8.3242200e+02 -3.3647117e+03 - -7.6068806e+02 8.1724202e+02 -3.3677930e+03 - -7.5818404e+02 7.9996645e+02 -3.3709197e+03 - -7.5607894e+02 7.8044019e+02 -3.3740763e+03 - -7.5437763e+02 7.5850081e+02 -3.3772463e+03 - -7.5308028e+02 7.3398038e+02 -3.3804120e+03 - -7.5218157e+02 7.0670824e+02 -3.3835544e+03 - -7.5166974e+02 6.7651525e+02 -3.3866529e+03 - -7.5152572e+02 6.4323956e+02 -3.3896854e+03 - -7.5172219e+02 6.0673434e+02 -3.3926279e+03 - -7.5222286e+02 5.6687753e+02 -3.3954550e+03 - -7.5298203e+02 5.2358363e+02 -3.3981397e+03 - -7.5394466e+02 4.7681730e+02 -3.4006535e+03 - -7.5504711e+02 4.2660795e+02 -3.4029671e+03 - -7.5621878e+02 3.7306418e+02 -3.4050506e+03 - -7.5738477e+02 3.1638656e+02 -3.4068748e+03 - -7.5846950e+02 2.5687643e+02 -3.4084119e+03 - -7.5940121e+02 1.9493881e+02 -3.4096367e+03 - -7.6011694e+02 1.3107740e+02 -3.4105280e+03 - -7.6056742e+02 6.5880786e+01 -3.4110695e+03 - -7.6072118e+02 0.0000000e+00 -3.4112512e+03 - -7.6056742e+02 -6.5880786e+01 -3.4110695e+03 - -7.6011694e+02 -1.3107740e+02 -3.4105280e+03 - -7.5940121e+02 -1.9493881e+02 -3.4096367e+03 - -7.5846950e+02 -2.5687643e+02 -3.4084119e+03 - -7.5738477e+02 -3.1638656e+02 -3.4068748e+03 - -7.5621878e+02 -3.7306418e+02 -3.4050506e+03 - -7.5504711e+02 -4.2660795e+02 -3.4029671e+03 - -7.5394466e+02 -4.7681730e+02 -3.4006535e+03 - -7.5298203e+02 -5.2358363e+02 -3.3981397e+03 - -7.5222286e+02 -5.6687753e+02 -3.3954550e+03 - -7.5172219e+02 -6.0673434e+02 -3.3926279e+03 - -7.5152572e+02 -6.4323956e+02 -3.3896854e+03 - -7.5166974e+02 -6.7651525e+02 -3.3866529e+03 - -7.5218157e+02 -7.0670824e+02 -3.3835544e+03 - -7.5308028e+02 -7.3398038e+02 -3.3804120e+03 - -7.5437763e+02 -7.5850081e+02 -3.3772463e+03 - -7.5607894e+02 -7.8044019e+02 -3.3740763e+03 - -7.5818404e+02 -7.9996645e+02 -3.3709197e+03 - -7.6068806e+02 -8.1724202e+02 -3.3677930e+03 - -7.6358215e+02 -8.3242200e+02 -3.3647117e+03 - -7.6685402e+02 -8.4565320e+02 -3.3616902e+03 - -7.7048851e+02 -8.5707373e+02 -3.3587419e+03 - -7.7446789e+02 -8.6681304e+02 -3.3558795e+03 - -7.7877217e+02 -8.7499223e+02 -3.3531152e+03 - -7.8337933e+02 -8.8172450e+02 -3.3504600e+03 - -7.8826549e+02 -8.8711576e+02 -3.3479248e+03 - -7.9340495e+02 -8.9126520e+02 -3.3455193e+03 - -7.9877032e+02 -8.9426597e+02 -3.3432531e+03 - -8.0433255e+02 -8.9620573e+02 -3.3411348e+03 - -8.1006093e+02 -8.9716725e+02 -3.3391726e+03 - -8.1592310e+02 -8.9722887e+02 -3.3373740e+03 - -8.2188507e+02 -8.9646503e+02 -3.3357458e+03 - -8.2791116e+02 -8.9494660e+02 -3.3342942e+03 - -8.3396405e+02 -8.9274129e+02 -3.3330248e+03 - -8.4000473e+02 -8.8991388e+02 -3.3319424e+03 - -8.4599248e+02 -8.8652655e+02 -3.3310511e+03 - -8.5188488e+02 -8.8263904e+02 -3.3303543e+03 - -8.5763776e+02 -8.7830880e+02 -3.3298547e+03 - -8.6320521e+02 -8.7359119e+02 -3.3295542e+03 - -8.6853953e+02 -8.6853953e+02 -3.3294539e+03 - -8.7359119e+02 -8.6320521e+02 -3.3295542e+03 - -8.7830880e+02 -8.5763776e+02 -3.3298547e+03 - -8.8263904e+02 -8.5188488e+02 -3.3303543e+03 - -8.8652655e+02 -8.4599248e+02 -3.3310511e+03 - -8.8991388e+02 -8.4000473e+02 -3.3319424e+03 - -8.9274129e+02 -8.3396405e+02 -3.3330248e+03 - -8.9494660e+02 -8.2791116e+02 -3.3342942e+03 - -8.9646503e+02 -8.2188507e+02 -3.3357458e+03 - -8.9722887e+02 -8.1592310e+02 -3.3373740e+03 - -8.9716725e+02 -8.1006093e+02 -3.3391726e+03 - -8.9620573e+02 -8.0433255e+02 -3.3411348e+03 - -8.9426597e+02 -7.9877032e+02 -3.3432531e+03 - -8.9126520e+02 -7.9340494e+02 -3.3455193e+03 - -8.8711576e+02 -7.8826549e+02 -3.3479248e+03 - -8.8172450e+02 -7.8337933e+02 -3.3504600e+03 - -8.7499223e+02 -7.7877217e+02 -3.3531152e+03 - -8.6681304e+02 -7.7446789e+02 -3.3558795e+03 - -8.5707373e+02 -7.7048851e+02 -3.3587419e+03 - -8.4565320e+02 -7.6685402e+02 -3.3616902e+03 - -8.3242200e+02 -7.6358215e+02 -3.3647117e+03 - -8.1724202e+02 -7.6068806e+02 -3.3677930e+03 - -7.9996645e+02 -7.5818404e+02 -3.3709197e+03 - -7.8044019e+02 -7.5607894e+02 -3.3740763e+03 - -7.5850081e+02 -7.5437763e+02 -3.3772463e+03 - -7.3398038e+02 -7.5308028e+02 -3.3804120e+03 - -7.0670824e+02 -7.5218157e+02 -3.3835544e+03 - -6.7651525e+02 -7.5166974e+02 -3.3866529e+03 - -6.4323956e+02 -7.5152572e+02 -3.3896854e+03 - -6.0673434e+02 -7.5172219e+02 -3.3926279e+03 - -5.6687753e+02 -7.5222286e+02 -3.3954550e+03 - -5.2358363e+02 -7.5298203e+02 -3.3981397e+03 - -4.7681730e+02 -7.5394466e+02 -3.4006535e+03 - -4.2660795e+02 -7.5504711e+02 -3.4029671e+03 - -3.7306418e+02 -7.5621878e+02 -3.4050506e+03 - -3.1638656e+02 -7.5738477e+02 -3.4068748e+03 - -2.5687643e+02 -7.5846950e+02 -3.4084119e+03 - -1.9493881e+02 -7.5940121e+02 -3.4096367e+03 - -1.3107740e+02 -7.6011694e+02 -3.4105280e+03 - -6.5880786e+01 -7.6056742e+02 -3.4110695e+03 - 2.4067136e-09 -7.6072118e+02 -3.4112512e+03 - 6.5880786e+01 -7.6056742e+02 -3.4110695e+03 - 1.3107740e+02 -7.6011694e+02 -3.4105280e+03 - 1.9493881e+02 -7.5940121e+02 -3.4096367e+03 - 2.5687643e+02 -7.5846950e+02 -3.4084119e+03 - 3.1638656e+02 -7.5738477e+02 -3.4068748e+03 - 3.7306418e+02 -7.5621878e+02 -3.4050506e+03 - 4.2660795e+02 -7.5504711e+02 -3.4029671e+03 - 4.7681730e+02 -7.5394466e+02 -3.4006535e+03 - 5.2358363e+02 -7.5298203e+02 -3.3981397e+03 - 5.6687753e+02 -7.5222286e+02 -3.3954550e+03 - 6.0673434e+02 -7.5172219e+02 -3.3926279e+03 - 6.4323956e+02 -7.5152572e+02 -3.3896854e+03 - 6.7651525e+02 -7.5166974e+02 -3.3866529e+03 - 7.0670824e+02 -7.5218157e+02 -3.3835544e+03 - 7.3398038e+02 -7.5308028e+02 -3.3804120e+03 - 7.5850081e+02 -7.5437763e+02 -3.3772463e+03 - 7.8044019e+02 -7.5607894e+02 -3.3740763e+03 - 7.9996645e+02 -7.5818404e+02 -3.3709197e+03 - 8.1724202e+02 -7.6068806e+02 -3.3677930e+03 - 8.3242200e+02 -7.6358215e+02 -3.3647117e+03 - 8.4565320e+02 -7.6685402e+02 -3.3616902e+03 - 8.5707373e+02 -7.7048851e+02 -3.3587419e+03 - 8.6681304e+02 -7.7446789e+02 -3.3558795e+03 - 8.7499223e+02 -7.7877217e+02 -3.3531152e+03 - 8.8172450e+02 -7.8337933e+02 -3.3504600e+03 - 8.8711576e+02 -7.8826549e+02 -3.3479248e+03 - 8.9126520e+02 -7.9340495e+02 -3.3455193e+03 - 8.9426597e+02 -7.9877032e+02 -3.3432531e+03 - 8.9620573e+02 -8.0433255e+02 -3.3411348e+03 - 8.9716725e+02 -8.1006093e+02 -3.3391726e+03 - 8.9722887e+02 -8.1592310e+02 -3.3373740e+03 - 8.9646503e+02 -8.2188507e+02 -3.3357458e+03 - 8.9494660e+02 -8.2791116e+02 -3.3342942e+03 - 8.9274129e+02 -8.3396405e+02 -3.3330248e+03 - 8.8991388e+02 -8.4000473e+02 -3.3319424e+03 - 8.8652655e+02 -8.4599248e+02 -3.3310511e+03 - 8.8263904e+02 -8.5188488e+02 -3.3303543e+03 - 8.7830880e+02 -8.5763776e+02 -3.3298547e+03 - 8.7359119e+02 -8.6320521e+02 -3.3295542e+03 - 8.6853953e+02 -8.6853953e+02 -3.3294539e+03 - 8.6320521e+02 -8.7359119e+02 -3.3295542e+03 - 8.5763776e+02 -8.7830880e+02 -3.3298547e+03 - 8.5188488e+02 -8.8263904e+02 -3.3303543e+03 - 8.4599248e+02 -8.8652655e+02 -3.3310511e+03 - 8.4000473e+02 -8.8991388e+02 -3.3319424e+03 - 8.3396405e+02 -8.9274129e+02 -3.3330248e+03 - 8.2791116e+02 -8.9494660e+02 -3.3342942e+03 - 8.2188507e+02 -8.9646503e+02 -3.3357458e+03 - 8.1592310e+02 -8.9722887e+02 -3.3373740e+03 - 8.1006093e+02 -8.9716725e+02 -3.3391726e+03 - 8.0433255e+02 -8.9620573e+02 -3.3411348e+03 - 7.9877032e+02 -8.9426597e+02 -3.3432531e+03 - 7.9340495e+02 -8.9126520e+02 -3.3455193e+03 - 7.8826549e+02 -8.8711576e+02 -3.3479248e+03 - 7.8337933e+02 -8.8172450e+02 -3.3504600e+03 - 7.7877217e+02 -8.7499223e+02 -3.3531152e+03 - 7.7446789e+02 -8.6681304e+02 -3.3558795e+03 - 7.7048851e+02 -8.5707373e+02 -3.3587419e+03 - 7.6685402e+02 -8.4565320e+02 -3.3616902e+03 - 7.6358215e+02 -8.3242200e+02 -3.3647117e+03 - 7.6068806e+02 -8.1724202e+02 -3.3677930e+03 - 7.5818404e+02 -7.9996645e+02 -3.3709197e+03 - 7.5607894e+02 -7.8044019e+02 -3.3740763e+03 - 7.5437763e+02 -7.5850081e+02 -3.3772463e+03 - 7.5308028e+02 -7.3398038e+02 -3.3804120e+03 - 7.5218157e+02 -7.0670824e+02 -3.3835544e+03 - 7.5166974e+02 -6.7651525e+02 -3.3866529e+03 - 7.5152572e+02 -6.4323956e+02 -3.3896854e+03 - 7.5172219e+02 -6.0673434e+02 -3.3926279e+03 - 7.5222286e+02 -5.6687753e+02 -3.3954550e+03 - 7.5298203e+02 -5.2358363e+02 -3.3981397e+03 - 7.5394466e+02 -4.7681730e+02 -3.4006535e+03 - 7.5504711e+02 -4.2660795e+02 -3.4029671e+03 - 7.5621878e+02 -3.7306418e+02 -3.4050506e+03 - 7.5738477e+02 -3.1638656e+02 -3.4068748e+03 - 7.5846950e+02 -2.5687643e+02 -3.4084119e+03 - 7.5940121e+02 -1.9493881e+02 -3.4096367e+03 - 7.6011694e+02 -1.3107740e+02 -3.4105280e+03 - 7.6056742e+02 -6.5880786e+01 -3.4110695e+03 - 7.6072118e+02 -2.4067136e-09 -3.4112512e+03 - 7.1823461e+02 0.0000000e+00 -3.4264538e+03 - 7.1808973e+02 6.2036791e+01 -3.4262930e+03 - 7.1766529e+02 1.2344213e+02 -3.4258136e+03 - 7.1699102e+02 1.8361424e+02 -3.4250241e+03 - 7.1611359e+02 2.4200736e+02 -3.4239384e+03 - 7.1509271e+02 2.9815214e+02 -3.4225744e+03 - 7.1399659e+02 3.5166840e+02 -3.4209537e+03 - 7.1289728e+02 4.0227021e+02 -3.4191001e+03 - 7.1186640e+02 4.4976380e+02 -3.4170390e+03 - 7.1097165e+02 4.9404018e+02 -3.4147962e+03 - 7.1027419e+02 5.3506401e+02 -3.4123975e+03 - 7.0982704e+02 5.7286084e+02 -3.4098681e+03 - 7.0967427e+02 6.0750388e+02 -3.4072319e+03 - 7.0985087e+02 6.3910173e+02 -3.4045118e+03 - 7.1038308e+02 6.6778744e+02 -3.4017294e+03 - 7.1128912e+02 6.9370942e+02 -3.3989046e+03 - 7.1257996e+02 7.1702412e+02 -3.3960563e+03 - 7.1426026e+02 7.3789047e+02 -3.3932019e+03 - 7.1632923e+02 7.5646576e+02 -3.3903577e+03 - 7.1878142e+02 7.7290282e+02 -3.3875388e+03 - 7.2160747e+02 7.8734819e+02 -3.3847595e+03 - 7.2479466e+02 7.9994096e+02 -3.3820330e+03 - 7.2832742e+02 8.1081239e+02 -3.3793719e+03 - 7.3218777e+02 8.2008571e+02 -3.3767878e+03 - 7.3635555e+02 8.2787634e+02 -3.3742917e+03 - 7.4080874e+02 8.3429232e+02 -3.3718940e+03 - 7.4552359e+02 8.3943469e+02 -3.3696045e+03 - 7.5047472e+02 8.4339812e+02 -3.3674321e+03 - 7.5563528e+02 8.4627143e+02 -3.3653856e+03 - 7.6097693e+02 8.4813812e+02 -3.3634727e+03 - 7.6646991e+02 8.4907692e+02 -3.3617009e+03 - 7.7208302e+02 8.4916222e+02 -3.3600770e+03 - 7.7778368e+02 8.4846458e+02 -3.3586070e+03 - 7.8353785e+02 8.4705104e+02 -3.3572967e+03 - 7.8931006e+02 8.4498550e+02 -3.3561508e+03 - 7.9506339e+02 8.4232903e+02 -3.3551739e+03 - 8.0075943e+02 8.3914007e+02 -3.3543695e+03 - 8.0635826e+02 8.3547472e+02 -3.3537407e+03 - 8.1181841e+02 8.3138684e+02 -3.3532899e+03 - 8.1709685e+02 8.2692827e+02 -3.3530187e+03 - 8.2214891e+02 8.2214891e+02 -3.3529282e+03 - 8.2692827e+02 8.1709685e+02 -3.3530187e+03 - 8.3138684e+02 8.1181841e+02 -3.3532899e+03 - 8.3547472e+02 8.0635826e+02 -3.3537407e+03 - 8.3914007e+02 8.0075943e+02 -3.3543695e+03 - 8.4232903e+02 7.9506339e+02 -3.3551739e+03 - 8.4498550e+02 7.8931006e+02 -3.3561508e+03 - 8.4705104e+02 7.8353785e+02 -3.3572967e+03 - 8.4846458e+02 7.7778368e+02 -3.3586070e+03 - 8.4916222e+02 7.7208302e+02 -3.3600770e+03 - 8.4907692e+02 7.6646991e+02 -3.3617009e+03 - 8.4813812e+02 7.6097693e+02 -3.3634727e+03 - 8.4627143e+02 7.5563528e+02 -3.3653856e+03 - 8.4339812e+02 7.5047472e+02 -3.3674321e+03 - 8.3943469e+02 7.4552359e+02 -3.3696045e+03 - 8.3429232e+02 7.4080874e+02 -3.3718940e+03 - 8.2787634e+02 7.3635555e+02 -3.3742917e+03 - 8.2008571e+02 7.3218777e+02 -3.3767878e+03 - 8.1081239e+02 7.2832742e+02 -3.3793719e+03 - 7.9994096e+02 7.2479466e+02 -3.3820330e+03 - 7.8734819e+02 7.2160747e+02 -3.3847595e+03 - 7.7290282e+02 7.1878142e+02 -3.3875388e+03 - 7.5646576e+02 7.1632923e+02 -3.3903577e+03 - 7.3789047e+02 7.1426026e+02 -3.3932019e+03 - 7.1702412e+02 7.1257996e+02 -3.3960563e+03 - 6.9370942e+02 7.1128912e+02 -3.3989046e+03 - 6.6778744e+02 7.1038308e+02 -3.4017294e+03 - 6.3910173e+02 7.0985087e+02 -3.4045118e+03 - 6.0750388e+02 7.0967427e+02 -3.4072319e+03 - 5.7286084e+02 7.0982704e+02 -3.4098681e+03 - 5.3506401e+02 7.1027419e+02 -3.4123975e+03 - 4.9404018e+02 7.1097165e+02 -3.4147962e+03 - 4.4976380e+02 7.1186640e+02 -3.4170390e+03 - 4.0227021e+02 7.1289728e+02 -3.4191001e+03 - 3.5166840e+02 7.1399659e+02 -3.4209537e+03 - 2.9815214e+02 7.1509271e+02 -3.4225744e+03 - 2.4200736e+02 7.1611359e+02 -3.4239384e+03 - 1.8361424e+02 7.1699102e+02 -3.4250241e+03 - 1.2344213e+02 7.1766529e+02 -3.4258136e+03 - 6.2036791e+01 7.1808973e+02 -3.4262930e+03 - 0.0000000e+00 7.1823461e+02 -3.4264538e+03 - -6.2036791e+01 7.1808973e+02 -3.4262930e+03 - -1.2344213e+02 7.1766529e+02 -3.4258136e+03 - -1.8361424e+02 7.1699102e+02 -3.4250241e+03 - -2.4200736e+02 7.1611359e+02 -3.4239384e+03 - -2.9815214e+02 7.1509271e+02 -3.4225744e+03 - -3.5166840e+02 7.1399659e+02 -3.4209537e+03 - -4.0227021e+02 7.1289728e+02 -3.4191001e+03 - -4.4976380e+02 7.1186640e+02 -3.4170390e+03 - -4.9404018e+02 7.1097165e+02 -3.4147962e+03 - -5.3506401e+02 7.1027419e+02 -3.4123975e+03 - -5.7286084e+02 7.0982704e+02 -3.4098681e+03 - -6.0750388e+02 7.0967427e+02 -3.4072319e+03 - -6.3910173e+02 7.0985087e+02 -3.4045118e+03 - -6.6778744e+02 7.1038308e+02 -3.4017294e+03 - -6.9370942e+02 7.1128912e+02 -3.3989046e+03 - -7.1702412e+02 7.1257996e+02 -3.3960563e+03 - -7.3789047e+02 7.1426026e+02 -3.3932019e+03 - -7.5646576e+02 7.1632923e+02 -3.3903577e+03 - -7.7290282e+02 7.1878142e+02 -3.3875388e+03 - -7.8734819e+02 7.2160747e+02 -3.3847595e+03 - -7.9994096e+02 7.2479466e+02 -3.3820330e+03 - -8.1081239e+02 7.2832742e+02 -3.3793719e+03 - -8.2008571e+02 7.3218777e+02 -3.3767878e+03 - -8.2787634e+02 7.3635555e+02 -3.3742917e+03 - -8.3429232e+02 7.4080874e+02 -3.3718940e+03 - -8.3943469e+02 7.4552359e+02 -3.3696045e+03 - -8.4339812e+02 7.5047472e+02 -3.3674321e+03 - -8.4627143e+02 7.5563528e+02 -3.3653856e+03 - -8.4813812e+02 7.6097693e+02 -3.3634727e+03 - -8.4907692e+02 7.6646991e+02 -3.3617009e+03 - -8.4916222e+02 7.7208302e+02 -3.3600770e+03 - -8.4846458e+02 7.7778368e+02 -3.3586070e+03 - -8.4705104e+02 7.8353785e+02 -3.3572967e+03 - -8.4498550e+02 7.8931006e+02 -3.3561508e+03 - -8.4232903e+02 7.9506339e+02 -3.3551739e+03 - -8.3914007e+02 8.0075943e+02 -3.3543695e+03 - -8.3547472e+02 8.0635826e+02 -3.3537407e+03 - -8.3138684e+02 8.1181841e+02 -3.3532899e+03 - -8.2692827e+02 8.1709685e+02 -3.3530187e+03 - -8.2214891e+02 8.2214891e+02 -3.3529282e+03 - -8.1709685e+02 8.2692827e+02 -3.3530187e+03 - -8.1181841e+02 8.3138684e+02 -3.3532899e+03 - -8.0635826e+02 8.3547472e+02 -3.3537407e+03 - -8.0075943e+02 8.3914007e+02 -3.3543695e+03 - -7.9506339e+02 8.4232903e+02 -3.3551739e+03 - -7.8931006e+02 8.4498550e+02 -3.3561508e+03 - -7.8353785e+02 8.4705104e+02 -3.3572967e+03 - -7.7778368e+02 8.4846458e+02 -3.3586070e+03 - -7.7208302e+02 8.4916222e+02 -3.3600770e+03 - -7.6646991e+02 8.4907692e+02 -3.3617009e+03 - -7.6097693e+02 8.4813812e+02 -3.3634727e+03 - -7.5563528e+02 8.4627143e+02 -3.3653856e+03 - -7.5047472e+02 8.4339812e+02 -3.3674321e+03 - -7.4552359e+02 8.3943469e+02 -3.3696045e+03 - -7.4080874e+02 8.3429232e+02 -3.3718940e+03 - -7.3635555e+02 8.2787634e+02 -3.3742917e+03 - -7.3218777e+02 8.2008571e+02 -3.3767878e+03 - -7.2832742e+02 8.1081239e+02 -3.3793719e+03 - -7.2479466e+02 7.9994096e+02 -3.3820330e+03 - -7.2160747e+02 7.8734819e+02 -3.3847595e+03 - -7.1878142e+02 7.7290282e+02 -3.3875388e+03 - -7.1632923e+02 7.5646576e+02 -3.3903577e+03 - -7.1426026e+02 7.3789047e+02 -3.3932019e+03 - -7.1257996e+02 7.1702412e+02 -3.3960563e+03 - -7.1128912e+02 6.9370942e+02 -3.3989046e+03 - -7.1038308e+02 6.6778744e+02 -3.4017294e+03 - -7.0985087e+02 6.3910173e+02 -3.4045118e+03 - -7.0967427e+02 6.0750388e+02 -3.4072319e+03 - -7.0982704e+02 5.7286084e+02 -3.4098681e+03 - -7.1027419e+02 5.3506401e+02 -3.4123975e+03 - -7.1097165e+02 4.9404018e+02 -3.4147962e+03 - -7.1186640e+02 4.4976380e+02 -3.4170390e+03 - -7.1289728e+02 4.0227021e+02 -3.4191001e+03 - -7.1399659e+02 3.5166840e+02 -3.4209537e+03 - -7.1509271e+02 2.9815214e+02 -3.4225744e+03 - -7.1611359e+02 2.4200736e+02 -3.4239384e+03 - -7.1699102e+02 1.8361424e+02 -3.4250241e+03 - -7.1766529e+02 1.2344213e+02 -3.4258136e+03 - -7.1808973e+02 6.2036791e+01 -3.4262930e+03 - -7.1823461e+02 0.0000000e+00 -3.4264538e+03 - -7.1808973e+02 -6.2036791e+01 -3.4262930e+03 - -7.1766529e+02 -1.2344213e+02 -3.4258136e+03 - -7.1699102e+02 -1.8361424e+02 -3.4250241e+03 - -7.1611359e+02 -2.4200736e+02 -3.4239384e+03 - -7.1509271e+02 -2.9815214e+02 -3.4225744e+03 - -7.1399659e+02 -3.5166840e+02 -3.4209537e+03 - -7.1289728e+02 -4.0227021e+02 -3.4191001e+03 - -7.1186640e+02 -4.4976380e+02 -3.4170390e+03 - -7.1097165e+02 -4.9404018e+02 -3.4147962e+03 - -7.1027419e+02 -5.3506401e+02 -3.4123975e+03 - -7.0982704e+02 -5.7286084e+02 -3.4098681e+03 - -7.0967427e+02 -6.0750388e+02 -3.4072319e+03 - -7.0985087e+02 -6.3910173e+02 -3.4045118e+03 - -7.1038308e+02 -6.6778744e+02 -3.4017294e+03 - -7.1128912e+02 -6.9370942e+02 -3.3989046e+03 - -7.1257996e+02 -7.1702412e+02 -3.3960563e+03 - -7.1426026e+02 -7.3789047e+02 -3.3932019e+03 - -7.1632923e+02 -7.5646576e+02 -3.3903577e+03 - -7.1878142e+02 -7.7290282e+02 -3.3875388e+03 - -7.2160747e+02 -7.8734819e+02 -3.3847595e+03 - -7.2479466e+02 -7.9994096e+02 -3.3820330e+03 - -7.2832742e+02 -8.1081239e+02 -3.3793719e+03 - -7.3218777e+02 -8.2008571e+02 -3.3767878e+03 - -7.3635555e+02 -8.2787634e+02 -3.3742917e+03 - -7.4080874e+02 -8.3429232e+02 -3.3718940e+03 - -7.4552359e+02 -8.3943469e+02 -3.3696045e+03 - -7.5047472e+02 -8.4339812e+02 -3.3674321e+03 - -7.5563528e+02 -8.4627143e+02 -3.3653856e+03 - -7.6097693e+02 -8.4813812e+02 -3.3634727e+03 - -7.6646991e+02 -8.4907692e+02 -3.3617009e+03 - -7.7208302e+02 -8.4916222e+02 -3.3600770e+03 - -7.7778368e+02 -8.4846458e+02 -3.3586070e+03 - -7.8353785e+02 -8.4705104e+02 -3.3572967e+03 - -7.8931006e+02 -8.4498550e+02 -3.3561508e+03 - -7.9506339e+02 -8.4232903e+02 -3.3551739e+03 - -8.0075943e+02 -8.3914007e+02 -3.3543695e+03 - -8.0635826e+02 -8.3547472e+02 -3.3537407e+03 - -8.1181841e+02 -8.3138684e+02 -3.3532899e+03 - -8.1709685e+02 -8.2692827e+02 -3.3530187e+03 - -8.2214891e+02 -8.2214891e+02 -3.3529282e+03 - -8.2692827e+02 -8.1709685e+02 -3.3530187e+03 - -8.3138684e+02 -8.1181841e+02 -3.3532899e+03 - -8.3547472e+02 -8.0635826e+02 -3.3537407e+03 - -8.3914007e+02 -8.0075943e+02 -3.3543695e+03 - -8.4232903e+02 -7.9506339e+02 -3.3551739e+03 - -8.4498550e+02 -7.8931006e+02 -3.3561508e+03 - -8.4705104e+02 -7.8353785e+02 -3.3572967e+03 - -8.4846458e+02 -7.7778368e+02 -3.3586070e+03 - -8.4916222e+02 -7.7208302e+02 -3.3600770e+03 - -8.4907692e+02 -7.6646991e+02 -3.3617009e+03 - -8.4813812e+02 -7.6097693e+02 -3.3634727e+03 - -8.4627143e+02 -7.5563528e+02 -3.3653856e+03 - -8.4339812e+02 -7.5047472e+02 -3.3674321e+03 - -8.3943469e+02 -7.4552359e+02 -3.3696045e+03 - -8.3429232e+02 -7.4080874e+02 -3.3718940e+03 - -8.2787634e+02 -7.3635555e+02 -3.3742917e+03 - -8.2008571e+02 -7.3218777e+02 -3.3767878e+03 - -8.1081239e+02 -7.2832742e+02 -3.3793719e+03 - -7.9994096e+02 -7.2479466e+02 -3.3820330e+03 - -7.8734819e+02 -7.2160747e+02 -3.3847595e+03 - -7.7290282e+02 -7.1878142e+02 -3.3875388e+03 - -7.5646576e+02 -7.1632923e+02 -3.3903577e+03 - -7.3789047e+02 -7.1426026e+02 -3.3932019e+03 - -7.1702412e+02 -7.1257996e+02 -3.3960563e+03 - -6.9370942e+02 -7.1128912e+02 -3.3989046e+03 - -6.6778744e+02 -7.1038308e+02 -3.4017294e+03 - -6.3910173e+02 -7.0985087e+02 -3.4045118e+03 - -6.0750388e+02 -7.0967427e+02 -3.4072319e+03 - -5.7286084e+02 -7.0982704e+02 -3.4098681e+03 - -5.3506401e+02 -7.1027419e+02 -3.4123975e+03 - -4.9404018e+02 -7.1097165e+02 -3.4147962e+03 - -4.4976380e+02 -7.1186640e+02 -3.4170390e+03 - -4.0227021e+02 -7.1289728e+02 -3.4191001e+03 - -3.5166840e+02 -7.1399659e+02 -3.4209537e+03 - -2.9815214e+02 -7.1509271e+02 -3.4225744e+03 - -2.4200736e+02 -7.1611359e+02 -3.4239384e+03 - -1.8361424e+02 -7.1699102e+02 -3.4250241e+03 - -1.2344213e+02 -7.1766529e+02 -3.4258136e+03 - -6.2036791e+01 -7.1808973e+02 -3.4262930e+03 - 0.0000000e+00 -7.1823461e+02 -3.4264538e+03 - 6.2036791e+01 -7.1808973e+02 -3.4262930e+03 - 1.2344213e+02 -7.1766529e+02 -3.4258136e+03 - 1.8361424e+02 -7.1699102e+02 -3.4250241e+03 - 2.4200736e+02 -7.1611359e+02 -3.4239384e+03 - 2.9815214e+02 -7.1509271e+02 -3.4225744e+03 - 3.5166840e+02 -7.1399659e+02 -3.4209537e+03 - 4.0227021e+02 -7.1289728e+02 -3.4191001e+03 - 4.4976380e+02 -7.1186640e+02 -3.4170390e+03 - 4.9404018e+02 -7.1097165e+02 -3.4147962e+03 - 5.3506401e+02 -7.1027419e+02 -3.4123975e+03 - 5.7286084e+02 -7.0982704e+02 -3.4098681e+03 - 6.0750388e+02 -7.0967427e+02 -3.4072319e+03 - 6.3910173e+02 -7.0985087e+02 -3.4045118e+03 - 6.6778744e+02 -7.1038308e+02 -3.4017294e+03 - 6.9370942e+02 -7.1128912e+02 -3.3989046e+03 - 7.1702412e+02 -7.1257996e+02 -3.3960563e+03 - 7.3789047e+02 -7.1426026e+02 -3.3932019e+03 - 7.5646576e+02 -7.1632923e+02 -3.3903577e+03 - 7.7290282e+02 -7.1878142e+02 -3.3875388e+03 - 7.8734819e+02 -7.2160747e+02 -3.3847595e+03 - 7.9994096e+02 -7.2479466e+02 -3.3820330e+03 - 8.1081239e+02 -7.2832742e+02 -3.3793719e+03 - 8.2008571e+02 -7.3218777e+02 -3.3767878e+03 - 8.2787634e+02 -7.3635555e+02 -3.3742917e+03 - 8.3429232e+02 -7.4080874e+02 -3.3718940e+03 - 8.3943469e+02 -7.4552359e+02 -3.3696045e+03 - 8.4339812e+02 -7.5047472e+02 -3.3674321e+03 - 8.4627143e+02 -7.5563528e+02 -3.3653856e+03 - 8.4813812e+02 -7.6097693e+02 -3.3634727e+03 - 8.4907692e+02 -7.6646991e+02 -3.3617009e+03 - 8.4916222e+02 -7.7208302e+02 -3.3600770e+03 - 8.4846458e+02 -7.7778368e+02 -3.3586070e+03 - 8.4705104e+02 -7.8353785e+02 -3.3572967e+03 - 8.4498550e+02 -7.8931006e+02 -3.3561508e+03 - 8.4232903e+02 -7.9506339e+02 -3.3551739e+03 - 8.3914007e+02 -8.0075943e+02 -3.3543695e+03 - 8.3547472e+02 -8.0635826e+02 -3.3537407e+03 - 8.3138684e+02 -8.1181841e+02 -3.3532899e+03 - 8.2692827e+02 -8.1709685e+02 -3.3530187e+03 - 8.2214891e+02 -8.2214891e+02 -3.3529282e+03 - 8.1709685e+02 -8.2692827e+02 -3.3530187e+03 - 8.1181841e+02 -8.3138684e+02 -3.3532899e+03 - 8.0635826e+02 -8.3547472e+02 -3.3537407e+03 - 8.0075943e+02 -8.3914007e+02 -3.3543695e+03 - 7.9506339e+02 -8.4232903e+02 -3.3551739e+03 - 7.8931006e+02 -8.4498550e+02 -3.3561508e+03 - 7.8353785e+02 -8.4705104e+02 -3.3572967e+03 - 7.7778368e+02 -8.4846458e+02 -3.3586070e+03 - 7.7208302e+02 -8.4916222e+02 -3.3600770e+03 - 7.6646991e+02 -8.4907692e+02 -3.3617009e+03 - 7.6097693e+02 -8.4813812e+02 -3.3634727e+03 - 7.5563528e+02 -8.4627143e+02 -3.3653856e+03 - 7.5047472e+02 -8.4339812e+02 -3.3674321e+03 - 7.4552359e+02 -8.3943469e+02 -3.3696045e+03 - 7.4080874e+02 -8.3429232e+02 -3.3718940e+03 - 7.3635555e+02 -8.2787634e+02 -3.3742917e+03 - 7.3218777e+02 -8.2008571e+02 -3.3767878e+03 - 7.2832742e+02 -8.1081239e+02 -3.3793719e+03 - 7.2479466e+02 -7.9994096e+02 -3.3820330e+03 - 7.2160747e+02 -7.8734819e+02 -3.3847595e+03 - 7.1878142e+02 -7.7290282e+02 -3.3875388e+03 - 7.1632923e+02 -7.5646576e+02 -3.3903577e+03 - 7.1426026e+02 -7.3789047e+02 -3.3932019e+03 - 7.1257996e+02 -7.1702412e+02 -3.3960563e+03 - 7.1128912e+02 -6.9370942e+02 -3.3989046e+03 - 7.1038308e+02 -6.6778744e+02 -3.4017294e+03 - 7.0985087e+02 -6.3910173e+02 -3.4045118e+03 - 7.0967427e+02 -6.0750388e+02 -3.4072319e+03 - 7.0982704e+02 -5.7286084e+02 -3.4098681e+03 - 7.1027419e+02 -5.3506401e+02 -3.4123975e+03 - 7.1097165e+02 -4.9404018e+02 -3.4147962e+03 - 7.1186640e+02 -4.4976380e+02 -3.4170390e+03 - 7.1289728e+02 -4.0227021e+02 -3.4191001e+03 - 7.1399659e+02 -3.5166840e+02 -3.4209537e+03 - 7.1509271e+02 -2.9815214e+02 -3.4225744e+03 - 7.1611359e+02 -2.4200736e+02 -3.4239384e+03 - 7.1699102e+02 -1.8361424e+02 -3.4250241e+03 - 7.1766529e+02 -1.2344213e+02 -3.4258136e+03 - 7.1808973e+02 -6.2036791e+01 -3.4262930e+03 - 7.1823461e+02 0.0000000e+00 -3.4264538e+03 - 6.7577871e+02 0.0000000e+00 -3.4407114e+03 - 6.7564277e+02 5.8228676e+01 -3.4405700e+03 - 6.7524458e+02 1.1587556e+02 -3.4401482e+03 - 6.7461212e+02 1.7238545e+02 -3.4394532e+03 - 6.7378934e+02 2.2725339e+02 -3.4384967e+03 - 6.7283264e+02 2.8004318e+02 -3.4372940e+03 - 6.7180656e+02 3.3039918e+02 -3.4358634e+03 - 6.7077944e+02 3.7805130e+02 -3.4342252e+03 - 6.6981939e+02 4.2281363e+02 -3.4324013e+03 - 6.6899097e+02 4.6457821e+02 -3.4304140e+03 - 6.6835267e+02 5.0330542e+02 -3.4282859e+03 - 6.6795527e+02 5.3901256e+02 -3.4260389e+03 - 6.6784106e+02 5.7176208e+02 -3.4236942e+03 - 6.6804358e+02 6.0165037e+02 -3.4212723e+03 - 6.6858798e+02 6.2879773e+02 -3.4187922e+03 - 6.6949155e+02 6.5333989e+02 -3.4162720e+03 - 6.7076457e+02 6.7542115e+02 -3.4137287e+03 - 6.7241111e+02 6.9518906e+02 -3.4111781e+03 - 6.7442989e+02 7.1279043e+02 -3.4086350e+03 - 6.7681508e+02 7.2836853e+02 -3.4061132e+03 - 6.7955698e+02 7.4206123e+02 -3.4036257e+03 - 6.8264263e+02 7.5399983e+02 -3.4011846e+03 - 6.8605632e+02 7.6430848e+02 -3.3988013e+03 - 6.8978000e+02 7.7310399e+02 -3.3964865e+03 - 6.9379361e+02 7.8049591e+02 -3.3942502e+03 - 6.9807530e+02 7.8658683e+02 -3.3921018e+03 - 7.0260166e+02 7.9147278e+02 -3.3900502e+03 - 7.0734786e+02 7.9524369e+02 -3.3881036e+03 - 7.1228771e+02 7.9798387e+02 -3.3862697e+03 - 7.1739374e+02 7.9977254e+02 -3.3845557e+03 - 7.2263727e+02 8.0068428e+02 -3.3829681e+03 - 7.2798838e+02 8.0078945e+02 -3.3815132e+03 - 7.3341594e+02 8.0015467e+02 -3.3801963e+03 - 7.3888763e+02 7.9884314e+02 -3.3790224e+03 - 7.4436985e+02 7.9691497e+02 -3.3779961e+03 - 7.4982777e+02 7.9442749e+02 -3.3771210e+03 - 7.5522527e+02 7.9143551e+02 -3.3764006e+03 - 7.6052490e+02 7.8799152e+02 -3.3758375e+03 - 7.6568786e+02 7.8414586e+02 -3.3754337e+03 - 7.7067390e+02 7.7994695e+02 -3.3751909e+03 - 7.7544134e+02 7.7544134e+02 -3.3751098e+03 - 7.7994695e+02 7.7067390e+02 -3.3751909e+03 - 7.8414586e+02 7.6568786e+02 -3.3754337e+03 - 7.8799152e+02 7.6052490e+02 -3.3758375e+03 - 7.9143551e+02 7.5522527e+02 -3.3764006e+03 - 7.9442749e+02 7.4982777e+02 -3.3771210e+03 - 7.9691497e+02 7.4436985e+02 -3.3779961e+03 - 7.9884314e+02 7.3888763e+02 -3.3790224e+03 - 8.0015467e+02 7.3341594e+02 -3.3801963e+03 - 8.0078945e+02 7.2798838e+02 -3.3815132e+03 - 8.0068428e+02 7.2263727e+02 -3.3829681e+03 - 7.9977254e+02 7.1739374e+02 -3.3845557e+03 - 7.9798387e+02 7.1228771e+02 -3.3862697e+03 - 7.9524369e+02 7.0734786e+02 -3.3881036e+03 - 7.9147278e+02 7.0260166e+02 -3.3900502e+03 - 7.8658683e+02 6.9807530e+02 -3.3921018e+03 - 7.8049591e+02 6.9379361e+02 -3.3942502e+03 - 7.7310399e+02 6.8978000e+02 -3.3964865e+03 - 7.6430848e+02 6.8605632e+02 -3.3988013e+03 - 7.5399983e+02 6.8264263e+02 -3.4011846e+03 - 7.4206123e+02 6.7955698e+02 -3.4036257e+03 - 7.2836853e+02 6.7681508e+02 -3.4061132e+03 - 7.1279043e+02 6.7442989e+02 -3.4086350e+03 - 6.9518906e+02 6.7241111e+02 -3.4111781e+03 - 6.7542115e+02 6.7076457e+02 -3.4137287e+03 - 6.5333989e+02 6.6949155e+02 -3.4162720e+03 - 6.2879773e+02 6.6858798e+02 -3.4187922e+03 - 6.0165037e+02 6.6804358e+02 -3.4212723e+03 - 5.7176208e+02 6.6784106e+02 -3.4236942e+03 - 5.3901256e+02 6.6795527e+02 -3.4260389e+03 - 5.0330542e+02 6.6835267e+02 -3.4282859e+03 - 4.6457821e+02 6.6899097e+02 -3.4304140e+03 - 4.2281363e+02 6.6981939e+02 -3.4324013e+03 - 3.7805130e+02 6.7077944e+02 -3.4342252e+03 - 3.3039918e+02 6.7180656e+02 -3.4358634e+03 - 2.8004318e+02 6.7283264e+02 -3.4372940e+03 - 2.2725339e+02 6.7378934e+02 -3.4384967e+03 - 1.7238545e+02 6.7461212e+02 -3.4394532e+03 - 1.1587556e+02 6.7524458e+02 -3.4401482e+03 - 5.8228676e+01 6.7564277e+02 -3.4405700e+03 - 0.0000000e+00 6.7577871e+02 -3.4407114e+03 - -5.8228676e+01 6.7564277e+02 -3.4405700e+03 - -1.1587556e+02 6.7524458e+02 -3.4401482e+03 - -1.7238545e+02 6.7461212e+02 -3.4394532e+03 - -2.2725339e+02 6.7378934e+02 -3.4384967e+03 - -2.8004318e+02 6.7283264e+02 -3.4372940e+03 - -3.3039918e+02 6.7180656e+02 -3.4358634e+03 - -3.7805130e+02 6.7077944e+02 -3.4342252e+03 - -4.2281363e+02 6.6981939e+02 -3.4324013e+03 - -4.6457821e+02 6.6899097e+02 -3.4304140e+03 - -5.0330542e+02 6.6835267e+02 -3.4282859e+03 - -5.3901256e+02 6.6795527e+02 -3.4260389e+03 - -5.7176208e+02 6.6784106e+02 -3.4236942e+03 - -6.0165037e+02 6.6804358e+02 -3.4212723e+03 - -6.2879773e+02 6.6858798e+02 -3.4187922e+03 - -6.5333989e+02 6.6949155e+02 -3.4162720e+03 - -6.7542115e+02 6.7076457e+02 -3.4137287e+03 - -6.9518906e+02 6.7241111e+02 -3.4111781e+03 - -7.1279043e+02 6.7442989e+02 -3.4086350e+03 - -7.2836853e+02 6.7681508e+02 -3.4061132e+03 - -7.4206123e+02 6.7955698e+02 -3.4036257e+03 - -7.5399983e+02 6.8264263e+02 -3.4011846e+03 - -7.6430848e+02 6.8605632e+02 -3.3988013e+03 - -7.7310399e+02 6.8978000e+02 -3.3964865e+03 - -7.8049591e+02 6.9379361e+02 -3.3942502e+03 - -7.8658683e+02 6.9807530e+02 -3.3921018e+03 - -7.9147278e+02 7.0260166e+02 -3.3900502e+03 - -7.9524369e+02 7.0734786e+02 -3.3881036e+03 - -7.9798387e+02 7.1228771e+02 -3.3862697e+03 - -7.9977254e+02 7.1739374e+02 -3.3845557e+03 - -8.0068428e+02 7.2263727e+02 -3.3829681e+03 - -8.0078945e+02 7.2798838e+02 -3.3815132e+03 - -8.0015467e+02 7.3341594e+02 -3.3801963e+03 - -7.9884314e+02 7.3888763e+02 -3.3790224e+03 - -7.9691497e+02 7.4436985e+02 -3.3779961e+03 - -7.9442749e+02 7.4982777e+02 -3.3771210e+03 - -7.9143551e+02 7.5522527e+02 -3.3764006e+03 - -7.8799152e+02 7.6052490e+02 -3.3758375e+03 - -7.8414586e+02 7.6568786e+02 -3.3754337e+03 - -7.7994695e+02 7.7067390e+02 -3.3751909e+03 - -7.7544134e+02 7.7544134e+02 -3.3751098e+03 - -7.7067390e+02 7.7994695e+02 -3.3751909e+03 - -7.6568786e+02 7.8414586e+02 -3.3754337e+03 - -7.6052490e+02 7.8799152e+02 -3.3758375e+03 - -7.5522527e+02 7.9143551e+02 -3.3764006e+03 - -7.4982777e+02 7.9442749e+02 -3.3771210e+03 - -7.4436985e+02 7.9691497e+02 -3.3779961e+03 - -7.3888763e+02 7.9884314e+02 -3.3790224e+03 - -7.3341594e+02 8.0015467e+02 -3.3801963e+03 - -7.2798838e+02 8.0078945e+02 -3.3815132e+03 - -7.2263727e+02 8.0068428e+02 -3.3829681e+03 - -7.1739374e+02 7.9977254e+02 -3.3845557e+03 - -7.1228771e+02 7.9798387e+02 -3.3862697e+03 - -7.0734786e+02 7.9524369e+02 -3.3881036e+03 - -7.0260166e+02 7.9147278e+02 -3.3900502e+03 - -6.9807530e+02 7.8658683e+02 -3.3921018e+03 - -6.9379361e+02 7.8049591e+02 -3.3942502e+03 - -6.8978000e+02 7.7310399e+02 -3.3964865e+03 - -6.8605632e+02 7.6430848e+02 -3.3988013e+03 - -6.8264263e+02 7.5399983e+02 -3.4011846e+03 - -6.7955698e+02 7.4206123e+02 -3.4036257e+03 - -6.7681508e+02 7.2836853e+02 -3.4061132e+03 - -6.7442989e+02 7.1279043e+02 -3.4086350e+03 - -6.7241111e+02 6.9518906e+02 -3.4111781e+03 - -6.7076457e+02 6.7542115e+02 -3.4137287e+03 - -6.6949155e+02 6.5333989e+02 -3.4162720e+03 - -6.6858798e+02 6.2879773e+02 -3.4187922e+03 - -6.6804358e+02 6.0165037e+02 -3.4212723e+03 - -6.6784106e+02 5.7176208e+02 -3.4236942e+03 - -6.6795527e+02 5.3901256e+02 -3.4260389e+03 - -6.6835267e+02 5.0330542e+02 -3.4282859e+03 - -6.6899097e+02 4.6457821e+02 -3.4304140e+03 - -6.6981939e+02 4.2281363e+02 -3.4324013e+03 - -6.7077944e+02 3.7805130e+02 -3.4342252e+03 - -6.7180656e+02 3.3039918e+02 -3.4358634e+03 - -6.7283264e+02 2.8004318e+02 -3.4372940e+03 - -6.7378934e+02 2.2725339e+02 -3.4384967e+03 - -6.7461212e+02 1.7238545e+02 -3.4394532e+03 - -6.7524458e+02 1.1587556e+02 -3.4401482e+03 - -6.7564277e+02 5.8228676e+01 -3.4405700e+03 - -6.7577871e+02 0.0000000e+00 -3.4407114e+03 - -6.7564277e+02 -5.8228676e+01 -3.4405700e+03 - -6.7524458e+02 -1.1587556e+02 -3.4401482e+03 - -6.7461212e+02 -1.7238545e+02 -3.4394532e+03 - -6.7378934e+02 -2.2725339e+02 -3.4384967e+03 - -6.7283264e+02 -2.8004318e+02 -3.4372940e+03 - -6.7180656e+02 -3.3039918e+02 -3.4358634e+03 - -6.7077944e+02 -3.7805130e+02 -3.4342252e+03 - -6.6981939e+02 -4.2281363e+02 -3.4324013e+03 - -6.6899097e+02 -4.6457821e+02 -3.4304140e+03 - -6.6835267e+02 -5.0330542e+02 -3.4282859e+03 - -6.6795527e+02 -5.3901256e+02 -3.4260389e+03 - -6.6784106e+02 -5.7176208e+02 -3.4236942e+03 - -6.6804358e+02 -6.0165037e+02 -3.4212723e+03 - -6.6858798e+02 -6.2879773e+02 -3.4187922e+03 - -6.6949155e+02 -6.5333989e+02 -3.4162720e+03 - -6.7076457e+02 -6.7542115e+02 -3.4137287e+03 - -6.7241111e+02 -6.9518906e+02 -3.4111781e+03 - -6.7442989e+02 -7.1279043e+02 -3.4086350e+03 - -6.7681508e+02 -7.2836853e+02 -3.4061132e+03 - -6.7955698e+02 -7.4206123e+02 -3.4036257e+03 - -6.8264263e+02 -7.5399983e+02 -3.4011846e+03 - -6.8605632e+02 -7.6430848e+02 -3.3988013e+03 - -6.8978000e+02 -7.7310399e+02 -3.3964865e+03 - -6.9379361e+02 -7.8049591e+02 -3.3942502e+03 - -6.9807530e+02 -7.8658683e+02 -3.3921018e+03 - -7.0260166e+02 -7.9147278e+02 -3.3900502e+03 - -7.0734786e+02 -7.9524369e+02 -3.3881036e+03 - -7.1228771e+02 -7.9798387e+02 -3.3862697e+03 - -7.1739374e+02 -7.9977254e+02 -3.3845557e+03 - -7.2263727e+02 -8.0068428e+02 -3.3829681e+03 - -7.2798838e+02 -8.0078945e+02 -3.3815132e+03 - -7.3341594e+02 -8.0015467e+02 -3.3801963e+03 - -7.3888763e+02 -7.9884314e+02 -3.3790224e+03 - -7.4436985e+02 -7.9691497e+02 -3.3779961e+03 - -7.4982777e+02 -7.9442749e+02 -3.3771210e+03 - -7.5522527e+02 -7.9143551e+02 -3.3764006e+03 - -7.6052490e+02 -7.8799152e+02 -3.3758375e+03 - -7.6568786e+02 -7.8414586e+02 -3.3754337e+03 - -7.7067390e+02 -7.7994695e+02 -3.3751909e+03 - -7.7544134e+02 -7.7544134e+02 -3.3751098e+03 - -7.7994695e+02 -7.7067390e+02 -3.3751909e+03 - -7.8414586e+02 -7.6568786e+02 -3.3754337e+03 - -7.8799152e+02 -7.6052490e+02 -3.3758375e+03 - -7.9143551e+02 -7.5522527e+02 -3.3764006e+03 - -7.9442749e+02 -7.4982777e+02 -3.3771210e+03 - -7.9691497e+02 -7.4436985e+02 -3.3779961e+03 - -7.9884314e+02 -7.3888763e+02 -3.3790224e+03 - -8.0015467e+02 -7.3341594e+02 -3.3801963e+03 - -8.0078945e+02 -7.2798838e+02 -3.3815132e+03 - -8.0068428e+02 -7.2263727e+02 -3.3829681e+03 - -7.9977254e+02 -7.1739374e+02 -3.3845557e+03 - -7.9798387e+02 -7.1228771e+02 -3.3862697e+03 - -7.9524369e+02 -7.0734786e+02 -3.3881036e+03 - -7.9147278e+02 -7.0260166e+02 -3.3900502e+03 - -7.8658683e+02 -6.9807530e+02 -3.3921018e+03 - -7.8049591e+02 -6.9379361e+02 -3.3942502e+03 - -7.7310399e+02 -6.8978000e+02 -3.3964865e+03 - -7.6430848e+02 -6.8605632e+02 -3.3988013e+03 - -7.5399983e+02 -6.8264263e+02 -3.4011846e+03 - -7.4206123e+02 -6.7955698e+02 -3.4036257e+03 - -7.2836853e+02 -6.7681508e+02 -3.4061132e+03 - -7.1279043e+02 -6.7442989e+02 -3.4086350e+03 - -6.9518906e+02 -6.7241111e+02 -3.4111781e+03 - -6.7542115e+02 -6.7076457e+02 -3.4137287e+03 - -6.5333989e+02 -6.6949155e+02 -3.4162720e+03 - -6.2879773e+02 -6.6858798e+02 -3.4187922e+03 - -6.0165037e+02 -6.6804358e+02 -3.4212723e+03 - -5.7176208e+02 -6.6784106e+02 -3.4236942e+03 - -5.3901256e+02 -6.6795527e+02 -3.4260389e+03 - -5.0330542e+02 -6.6835267e+02 -3.4282859e+03 - -4.6457821e+02 -6.6899097e+02 -3.4304140e+03 - -4.2281363e+02 -6.6981939e+02 -3.4324013e+03 - -3.7805130e+02 -6.7077944e+02 -3.4342252e+03 - -3.3039918e+02 -6.7180656e+02 -3.4358634e+03 - -2.8004318e+02 -6.7283264e+02 -3.4372940e+03 - -2.2725339e+02 -6.7378934e+02 -3.4384967e+03 - -1.7238545e+02 -6.7461212e+02 -3.4394532e+03 - -1.1587556e+02 -6.7524458e+02 -3.4401482e+03 - -5.8228676e+01 -6.7564277e+02 -3.4405700e+03 - 0.0000000e+00 -6.7577871e+02 -3.4407114e+03 - 5.8228676e+01 -6.7564277e+02 -3.4405700e+03 - 1.1587556e+02 -6.7524458e+02 -3.4401482e+03 - 1.7238545e+02 -6.7461212e+02 -3.4394532e+03 - 2.2725339e+02 -6.7378934e+02 -3.4384967e+03 - 2.8004318e+02 -6.7283264e+02 -3.4372940e+03 - 3.3039918e+02 -6.7180656e+02 -3.4358634e+03 - 3.7805130e+02 -6.7077944e+02 -3.4342252e+03 - 4.2281363e+02 -6.6981939e+02 -3.4324013e+03 - 4.6457821e+02 -6.6899097e+02 -3.4304140e+03 - 5.0330542e+02 -6.6835267e+02 -3.4282859e+03 - 5.3901256e+02 -6.6795527e+02 -3.4260389e+03 - 5.7176208e+02 -6.6784106e+02 -3.4236942e+03 - 6.0165037e+02 -6.6804358e+02 -3.4212723e+03 - 6.2879773e+02 -6.6858798e+02 -3.4187922e+03 - 6.5333989e+02 -6.6949155e+02 -3.4162720e+03 - 6.7542115e+02 -6.7076457e+02 -3.4137287e+03 - 6.9518906e+02 -6.7241111e+02 -3.4111781e+03 - 7.1279043e+02 -6.7442989e+02 -3.4086350e+03 - 7.2836853e+02 -6.7681508e+02 -3.4061132e+03 - 7.4206123e+02 -6.7955698e+02 -3.4036257e+03 - 7.5399983e+02 -6.8264263e+02 -3.4011846e+03 - 7.6430848e+02 -6.8605632e+02 -3.3988013e+03 - 7.7310399e+02 -6.8978000e+02 -3.3964865e+03 - 7.8049591e+02 -6.9379361e+02 -3.3942502e+03 - 7.8658683e+02 -6.9807530e+02 -3.3921018e+03 - 7.9147278e+02 -7.0260166e+02 -3.3900502e+03 - 7.9524369e+02 -7.0734786e+02 -3.3881036e+03 - 7.9798387e+02 -7.1228771e+02 -3.3862697e+03 - 7.9977254e+02 -7.1739374e+02 -3.3845557e+03 - 8.0068428e+02 -7.2263727e+02 -3.3829681e+03 - 8.0078945e+02 -7.2798838e+02 -3.3815132e+03 - 8.0015467e+02 -7.3341594e+02 -3.3801963e+03 - 7.9884314e+02 -7.3888763e+02 -3.3790224e+03 - 7.9691497e+02 -7.4436985e+02 -3.3779961e+03 - 7.9442749e+02 -7.4982777e+02 -3.3771210e+03 - 7.9143551e+02 -7.5522527e+02 -3.3764006e+03 - 7.8799152e+02 -7.6052490e+02 -3.3758375e+03 - 7.8414586e+02 -7.6568786e+02 -3.3754337e+03 - 7.7994695e+02 -7.7067390e+02 -3.3751909e+03 - 7.7544134e+02 -7.7544134e+02 -3.3751098e+03 - 7.7067390e+02 -7.7994695e+02 -3.3751909e+03 - 7.6568786e+02 -7.8414586e+02 -3.3754337e+03 - 7.6052490e+02 -7.8799152e+02 -3.3758375e+03 - 7.5522527e+02 -7.9143551e+02 -3.3764006e+03 - 7.4982777e+02 -7.9442749e+02 -3.3771210e+03 - 7.4436985e+02 -7.9691497e+02 -3.3779961e+03 - 7.3888763e+02 -7.9884314e+02 -3.3790224e+03 - 7.3341594e+02 -8.0015467e+02 -3.3801963e+03 - 7.2798838e+02 -8.0078945e+02 -3.3815132e+03 - 7.2263727e+02 -8.0068428e+02 -3.3829681e+03 - 7.1739374e+02 -7.9977254e+02 -3.3845557e+03 - 7.1228771e+02 -7.9798387e+02 -3.3862697e+03 - 7.0734786e+02 -7.9524369e+02 -3.3881036e+03 - 7.0260166e+02 -7.9147278e+02 -3.3900502e+03 - 6.9807530e+02 -7.8658683e+02 -3.3921018e+03 - 6.9379361e+02 -7.8049591e+02 -3.3942502e+03 - 6.8978000e+02 -7.7310399e+02 -3.3964865e+03 - 6.8605632e+02 -7.6430848e+02 -3.3988013e+03 - 6.8264263e+02 -7.5399983e+02 -3.4011846e+03 - 6.7955698e+02 -7.4206123e+02 -3.4036257e+03 - 6.7681508e+02 -7.2836853e+02 -3.4061132e+03 - 6.7442989e+02 -7.1279043e+02 -3.4086350e+03 - 6.7241111e+02 -6.9518906e+02 -3.4111781e+03 - 6.7076457e+02 -6.7542115e+02 -3.4137287e+03 - 6.6949155e+02 -6.5333989e+02 -3.4162720e+03 - 6.6858798e+02 -6.2879773e+02 -3.4187922e+03 - 6.6804358e+02 -6.0165037e+02 -3.4212723e+03 - 6.6784106e+02 -5.7176208e+02 -3.4236942e+03 - 6.6795527e+02 -5.3901256e+02 -3.4260389e+03 - 6.6835267e+02 -5.0330542e+02 -3.4282859e+03 - 6.6899097e+02 -4.6457821e+02 -3.4304140e+03 - 6.6981939e+02 -4.2281363e+02 -3.4324013e+03 - 6.7077944e+02 -3.7805130e+02 -3.4342252e+03 - 6.7180656e+02 -3.3039918e+02 -3.4358634e+03 - 6.7283264e+02 -2.8004318e+02 -3.4372940e+03 - 6.7378934e+02 -2.2725339e+02 -3.4384967e+03 - 6.7461212e+02 -1.7238545e+02 -3.4394532e+03 - 6.7524458e+02 -1.1587556e+02 -3.4401482e+03 - 6.7564277e+02 -5.8228676e+01 -3.4405700e+03 - 6.7577871e+02 -2.4067136e-09 -3.4407114e+03 - 6.3335400e+02 0.0000000e+00 -3.4540375e+03 - 6.3322705e+02 5.4452868e+01 -3.4539140e+03 - 6.3285517e+02 1.0837092e+02 -3.4535455e+03 - 6.3226459e+02 1.6124313e+02 -3.4529381e+03 - 6.3149656e+02 2.1260356e+02 -3.4521015e+03 - 6.3060404e+02 2.6204805e+02 -3.4510487e+03 - 6.2964780e+02 3.0924519e+02 -3.4497952e+03 - 6.2869233e+02 3.5394105e+02 -3.4483583e+03 - 6.2780207e+02 3.9595849e+02 -3.4467566e+03 - 6.2703824e+02 4.3519182e+02 -3.4450094e+03 - 6.2645645e+02 4.7159849e+02 -3.4431361e+03 - 6.2610506e+02 5.0518904e+02 -3.4411560e+03 - 6.2602442e+02 5.3601646e+02 -3.4390875e+03 - 6.2624653e+02 5.6416609e+02 -3.4369487e+03 - 6.2679534e+02 5.8974643e+02 -3.4347564e+03 - 6.2768724e+02 6.1288127e+02 -3.4325268e+03 - 6.2893183e+02 6.3370328e+02 -3.4302750e+03 - 6.3053267e+02 6.5234895e+02 -3.4280152e+03 - 6.3248812e+02 6.6895479e+02 -3.4257607e+03 - 6.3479210e+02 6.8365456e+02 -3.4235240e+03 - 6.3743475e+02 6.9657743e+02 -3.4213167e+03 - 6.4040309e+02 7.0784675e+02 -3.4191499e+03 - 6.4368145e+02 7.1757945e+02 -3.4170339e+03 - 6.4725193e+02 7.2588570e+02 -3.4149782e+03 - 6.5109475e+02 7.3286898e+02 -3.4129919e+03 - 6.5518847e+02 7.3862627e+02 -3.4110835e+03 - 6.5951021e+02 7.4324836e+02 -3.4092609e+03 - 6.6403583e+02 7.4682027e+02 -3.4075316e+03 - 6.6873998e+02 7.4942168e+02 -3.4059024e+03 - 6.7359622e+02 7.5112737e+02 -3.4043797e+03 - 6.7857704e+02 7.5200768e+02 -3.4029695e+03 - 6.8365391e+02 7.5212889e+02 -3.4016771e+03 - 6.8879724e+02 7.5155362e+02 -3.4005074e+03 - 6.9397644e+02 7.5034120e+02 -3.3994648e+03 - 6.9915984e+02 7.4854796e+02 -3.3985533e+03 - 7.0431471e+02 7.4622753e+02 -3.3977762e+03 - 7.0940720e+02 7.4343111e+02 -3.3971365e+03 - 7.1440231e+02 7.4020764e+02 -3.3966364e+03 - 7.1926381e+02 7.3660402e+02 -3.3962779e+03 - 7.2395425e+02 7.3266532e+02 -3.3960623e+03 - 7.2843482e+02 7.2843482e+02 -3.3959903e+03 - 7.3266532e+02 7.2395425e+02 -3.3960623e+03 - 7.3660402e+02 7.1926381e+02 -3.3962779e+03 - 7.4020764e+02 7.1440231e+02 -3.3966364e+03 - 7.4343111e+02 7.0940720e+02 -3.3971365e+03 - 7.4622753e+02 7.0431471e+02 -3.3977762e+03 - 7.4854796e+02 6.9915984e+02 -3.3985533e+03 - 7.5034120e+02 6.9397644e+02 -3.3994648e+03 - 7.5155362e+02 6.8879724e+02 -3.4005074e+03 - 7.5212889e+02 6.8365391e+02 -3.4016771e+03 - 7.5200768e+02 6.7857704e+02 -3.4029695e+03 - 7.5112737e+02 6.7359622e+02 -3.4043797e+03 - 7.4942168e+02 6.6873998e+02 -3.4059024e+03 - 7.4682027e+02 6.6403583e+02 -3.4075316e+03 - 7.4324836e+02 6.5951021e+02 -3.4092609e+03 - 7.3862627e+02 6.5518847e+02 -3.4110835e+03 - 7.3286898e+02 6.5109475e+02 -3.4129919e+03 - 7.2588570e+02 6.4725193e+02 -3.4149782e+03 - 7.1757945e+02 6.4368145e+02 -3.4170339e+03 - 7.0784675e+02 6.4040309e+02 -3.4191499e+03 - 6.9657743e+02 6.3743475e+02 -3.4213167e+03 - 6.8365456e+02 6.3479210e+02 -3.4235240e+03 - 6.6895479e+02 6.3248812e+02 -3.4257607e+03 - 6.5234895e+02 6.3053267e+02 -3.4280152e+03 - 6.3370328e+02 6.2893183e+02 -3.4302750e+03 - 6.1288127e+02 6.2768724e+02 -3.4325268e+03 - 5.8974643e+02 6.2679534e+02 -3.4347564e+03 - 5.6416609e+02 6.2624653e+02 -3.4369487e+03 - 5.3601646e+02 6.2602442e+02 -3.4390875e+03 - 5.0518904e+02 6.2610506e+02 -3.4411560e+03 - 4.7159849e+02 6.2645645e+02 -3.4431361e+03 - 4.3519182e+02 6.2703824e+02 -3.4450094e+03 - 3.9595849e+02 6.2780207e+02 -3.4467566e+03 - 3.5394105e+02 6.2869233e+02 -3.4483583e+03 - 3.0924519e+02 6.2964780e+02 -3.4497952e+03 - 2.6204805e+02 6.3060404e+02 -3.4510487e+03 - 2.1260356e+02 6.3149656e+02 -3.4521015e+03 - 1.6124313e+02 6.3226459e+02 -3.4529381e+03 - 1.0837092e+02 6.3285517e+02 -3.4535455e+03 - 5.4452868e+01 6.3322705e+02 -3.4539140e+03 - -2.4067136e-09 6.3335400e+02 -3.4540375e+03 - -5.4452868e+01 6.3322705e+02 -3.4539140e+03 - -1.0837092e+02 6.3285517e+02 -3.4535455e+03 - -1.6124313e+02 6.3226459e+02 -3.4529381e+03 - -2.1260356e+02 6.3149656e+02 -3.4521015e+03 - -2.6204805e+02 6.3060404e+02 -3.4510487e+03 - -3.0924519e+02 6.2964780e+02 -3.4497952e+03 - -3.5394105e+02 6.2869233e+02 -3.4483583e+03 - -3.9595849e+02 6.2780207e+02 -3.4467566e+03 - -4.3519182e+02 6.2703824e+02 -3.4450094e+03 - -4.7159849e+02 6.2645645e+02 -3.4431361e+03 - -5.0518904e+02 6.2610506e+02 -3.4411560e+03 - -5.3601646e+02 6.2602442e+02 -3.4390875e+03 - -5.6416609e+02 6.2624653e+02 -3.4369487e+03 - -5.8974643e+02 6.2679534e+02 -3.4347564e+03 - -6.1288127e+02 6.2768724e+02 -3.4325268e+03 - -6.3370328e+02 6.2893183e+02 -3.4302750e+03 - -6.5234895e+02 6.3053267e+02 -3.4280152e+03 - -6.6895479e+02 6.3248812e+02 -3.4257607e+03 - -6.8365456e+02 6.3479210e+02 -3.4235240e+03 - -6.9657743e+02 6.3743475e+02 -3.4213167e+03 - -7.0784675e+02 6.4040309e+02 -3.4191499e+03 - -7.1757945e+02 6.4368145e+02 -3.4170339e+03 - -7.2588570e+02 6.4725193e+02 -3.4149782e+03 - -7.3286898e+02 6.5109475e+02 -3.4129919e+03 - -7.3862627e+02 6.5518847e+02 -3.4110835e+03 - -7.4324836e+02 6.5951021e+02 -3.4092609e+03 - -7.4682027e+02 6.6403583e+02 -3.4075316e+03 - -7.4942168e+02 6.6873998e+02 -3.4059024e+03 - -7.5112737e+02 6.7359622e+02 -3.4043797e+03 - -7.5200768e+02 6.7857704e+02 -3.4029695e+03 - -7.5212889e+02 6.8365391e+02 -3.4016771e+03 - -7.5155362e+02 6.8879724e+02 -3.4005074e+03 - -7.5034120e+02 6.9397644e+02 -3.3994648e+03 - -7.4854796e+02 6.9915984e+02 -3.3985533e+03 - -7.4622753e+02 7.0431471e+02 -3.3977762e+03 - -7.4343111e+02 7.0940720e+02 -3.3971365e+03 - -7.4020764e+02 7.1440231e+02 -3.3966364e+03 - -7.3660402e+02 7.1926381e+02 -3.3962779e+03 - -7.3266532e+02 7.2395425e+02 -3.3960623e+03 - -7.2843482e+02 7.2843482e+02 -3.3959903e+03 - -7.2395425e+02 7.3266532e+02 -3.3960623e+03 - -7.1926381e+02 7.3660402e+02 -3.3962779e+03 - -7.1440231e+02 7.4020764e+02 -3.3966364e+03 - -7.0940720e+02 7.4343111e+02 -3.3971365e+03 - -7.0431471e+02 7.4622753e+02 -3.3977762e+03 - -6.9915984e+02 7.4854796e+02 -3.3985533e+03 - -6.9397644e+02 7.5034120e+02 -3.3994648e+03 - -6.8879724e+02 7.5155362e+02 -3.4005074e+03 - -6.8365391e+02 7.5212889e+02 -3.4016771e+03 - -6.7857704e+02 7.5200768e+02 -3.4029695e+03 - -6.7359622e+02 7.5112737e+02 -3.4043797e+03 - -6.6873998e+02 7.4942168e+02 -3.4059024e+03 - -6.6403583e+02 7.4682027e+02 -3.4075316e+03 - -6.5951021e+02 7.4324836e+02 -3.4092609e+03 - -6.5518847e+02 7.3862627e+02 -3.4110835e+03 - -6.5109475e+02 7.3286898e+02 -3.4129919e+03 - -6.4725193e+02 7.2588570e+02 -3.4149782e+03 - -6.4368145e+02 7.1757945e+02 -3.4170339e+03 - -6.4040309e+02 7.0784675e+02 -3.4191499e+03 - -6.3743475e+02 6.9657743e+02 -3.4213167e+03 - -6.3479210e+02 6.8365456e+02 -3.4235240e+03 - -6.3248812e+02 6.6895479e+02 -3.4257607e+03 - -6.3053267e+02 6.5234895e+02 -3.4280152e+03 - -6.2893183e+02 6.3370328e+02 -3.4302750e+03 - -6.2768724e+02 6.1288127e+02 -3.4325268e+03 - -6.2679534e+02 5.8974643e+02 -3.4347564e+03 - -6.2624653e+02 5.6416609e+02 -3.4369487e+03 - -6.2602442e+02 5.3601646e+02 -3.4390875e+03 - -6.2610506e+02 5.0518904e+02 -3.4411560e+03 - -6.2645645e+02 4.7159849e+02 -3.4431361e+03 - -6.2703824e+02 4.3519182e+02 -3.4450094e+03 - -6.2780207e+02 3.9595849e+02 -3.4467566e+03 - -6.2869233e+02 3.5394105e+02 -3.4483583e+03 - -6.2964780e+02 3.0924519e+02 -3.4497952e+03 - -6.3060404e+02 2.6204805e+02 -3.4510487e+03 - -6.3149656e+02 2.1260356e+02 -3.4521015e+03 - -6.3226459e+02 1.6124313e+02 -3.4529381e+03 - -6.3285517e+02 1.0837092e+02 -3.4535455e+03 - -6.3322705e+02 5.4452868e+01 -3.4539140e+03 - -6.3335400e+02 0.0000000e+00 -3.4540375e+03 - -6.3322705e+02 -5.4452868e+01 -3.4539140e+03 - -6.3285517e+02 -1.0837092e+02 -3.4535455e+03 - -6.3226459e+02 -1.6124313e+02 -3.4529381e+03 - -6.3149656e+02 -2.1260356e+02 -3.4521015e+03 - -6.3060404e+02 -2.6204805e+02 -3.4510487e+03 - -6.2964780e+02 -3.0924519e+02 -3.4497952e+03 - -6.2869233e+02 -3.5394105e+02 -3.4483583e+03 - -6.2780207e+02 -3.9595849e+02 -3.4467566e+03 - -6.2703824e+02 -4.3519182e+02 -3.4450094e+03 - -6.2645645e+02 -4.7159849e+02 -3.4431361e+03 - -6.2610506e+02 -5.0518904e+02 -3.4411560e+03 - -6.2602442e+02 -5.3601646e+02 -3.4390875e+03 - -6.2624653e+02 -5.6416609e+02 -3.4369487e+03 - -6.2679534e+02 -5.8974643e+02 -3.4347564e+03 - -6.2768724e+02 -6.1288127e+02 -3.4325268e+03 - -6.2893183e+02 -6.3370328e+02 -3.4302750e+03 - -6.3053267e+02 -6.5234895e+02 -3.4280152e+03 - -6.3248812e+02 -6.6895479e+02 -3.4257607e+03 - -6.3479210e+02 -6.8365456e+02 -3.4235240e+03 - -6.3743475e+02 -6.9657743e+02 -3.4213167e+03 - -6.4040309e+02 -7.0784675e+02 -3.4191499e+03 - -6.4368145e+02 -7.1757945e+02 -3.4170339e+03 - -6.4725193e+02 -7.2588570e+02 -3.4149782e+03 - -6.5109475e+02 -7.3286898e+02 -3.4129919e+03 - -6.5518847e+02 -7.3862627e+02 -3.4110835e+03 - -6.5951021e+02 -7.4324836e+02 -3.4092609e+03 - -6.6403583e+02 -7.4682027e+02 -3.4075316e+03 - -6.6873998e+02 -7.4942168e+02 -3.4059024e+03 - -6.7359622e+02 -7.5112737e+02 -3.4043797e+03 - -6.7857704e+02 -7.5200768e+02 -3.4029695e+03 - -6.8365391e+02 -7.5212889e+02 -3.4016771e+03 - -6.8879724e+02 -7.5155362e+02 -3.4005074e+03 - -6.9397644e+02 -7.5034120e+02 -3.3994648e+03 - -6.9915984e+02 -7.4854796e+02 -3.3985533e+03 - -7.0431471e+02 -7.4622753e+02 -3.3977762e+03 - -7.0940720e+02 -7.4343111e+02 -3.3971365e+03 - -7.1440231e+02 -7.4020764e+02 -3.3966364e+03 - -7.1926381e+02 -7.3660402e+02 -3.3962779e+03 - -7.2395425e+02 -7.3266532e+02 -3.3960623e+03 - -7.2843482e+02 -7.2843482e+02 -3.3959903e+03 - -7.3266532e+02 -7.2395425e+02 -3.3960623e+03 - -7.3660402e+02 -7.1926381e+02 -3.3962779e+03 - -7.4020764e+02 -7.1440231e+02 -3.3966364e+03 - -7.4343111e+02 -7.0940720e+02 -3.3971365e+03 - -7.4622753e+02 -7.0431471e+02 -3.3977762e+03 - -7.4854796e+02 -6.9915984e+02 -3.3985533e+03 - -7.5034120e+02 -6.9397644e+02 -3.3994648e+03 - -7.5155362e+02 -6.8879724e+02 -3.4005074e+03 - -7.5212889e+02 -6.8365391e+02 -3.4016771e+03 - -7.5200768e+02 -6.7857704e+02 -3.4029695e+03 - -7.5112737e+02 -6.7359622e+02 -3.4043797e+03 - -7.4942168e+02 -6.6873998e+02 -3.4059024e+03 - -7.4682027e+02 -6.6403583e+02 -3.4075316e+03 - -7.4324836e+02 -6.5951021e+02 -3.4092609e+03 - -7.3862627e+02 -6.5518847e+02 -3.4110835e+03 - -7.3286898e+02 -6.5109475e+02 -3.4129919e+03 - -7.2588570e+02 -6.4725193e+02 -3.4149782e+03 - -7.1757945e+02 -6.4368145e+02 -3.4170339e+03 - -7.0784675e+02 -6.4040309e+02 -3.4191499e+03 - -6.9657743e+02 -6.3743475e+02 -3.4213167e+03 - -6.8365456e+02 -6.3479210e+02 -3.4235240e+03 - -6.6895479e+02 -6.3248812e+02 -3.4257607e+03 - -6.5234895e+02 -6.3053267e+02 -3.4280152e+03 - -6.3370328e+02 -6.2893183e+02 -3.4302750e+03 - -6.1288127e+02 -6.2768724e+02 -3.4325268e+03 - -5.8974643e+02 -6.2679534e+02 -3.4347564e+03 - -5.6416609e+02 -6.2624653e+02 -3.4369487e+03 - -5.3601646e+02 -6.2602442e+02 -3.4390875e+03 - -5.0518904e+02 -6.2610506e+02 -3.4411560e+03 - -4.7159849e+02 -6.2645645e+02 -3.4431361e+03 - -4.3519182e+02 -6.2703824e+02 -3.4450094e+03 - -3.9595849e+02 -6.2780207e+02 -3.4467566e+03 - -3.5394105e+02 -6.2869233e+02 -3.4483583e+03 - -3.0924519e+02 -6.2964780e+02 -3.4497952e+03 - -2.6204805e+02 -6.3060404e+02 -3.4510487e+03 - -2.1260356e+02 -6.3149656e+02 -3.4521015e+03 - -1.6124313e+02 -6.3226459e+02 -3.4529381e+03 - -1.0837092e+02 -6.3285517e+02 -3.4535455e+03 - -5.4452868e+01 -6.3322705e+02 -3.4539140e+03 - 0.0000000e+00 -6.3335400e+02 -3.4540375e+03 - 5.4452868e+01 -6.3322705e+02 -3.4539140e+03 - 1.0837092e+02 -6.3285517e+02 -3.4535455e+03 - 1.6124313e+02 -6.3226459e+02 -3.4529381e+03 - 2.1260356e+02 -6.3149656e+02 -3.4521015e+03 - 2.6204805e+02 -6.3060404e+02 -3.4510487e+03 - 3.0924519e+02 -6.2964780e+02 -3.4497952e+03 - 3.5394105e+02 -6.2869233e+02 -3.4483583e+03 - 3.9595849e+02 -6.2780207e+02 -3.4467566e+03 - 4.3519182e+02 -6.2703824e+02 -3.4450094e+03 - 4.7159849e+02 -6.2645645e+02 -3.4431361e+03 - 5.0518904e+02 -6.2610506e+02 -3.4411560e+03 - 5.3601646e+02 -6.2602442e+02 -3.4390875e+03 - 5.6416609e+02 -6.2624653e+02 -3.4369487e+03 - 5.8974643e+02 -6.2679534e+02 -3.4347564e+03 - 6.1288127e+02 -6.2768724e+02 -3.4325268e+03 - 6.3370328e+02 -6.2893183e+02 -3.4302750e+03 - 6.5234895e+02 -6.3053267e+02 -3.4280152e+03 - 6.6895479e+02 -6.3248812e+02 -3.4257607e+03 - 6.8365456e+02 -6.3479210e+02 -3.4235240e+03 - 6.9657743e+02 -6.3743475e+02 -3.4213167e+03 - 7.0784675e+02 -6.4040309e+02 -3.4191499e+03 - 7.1757945e+02 -6.4368145e+02 -3.4170339e+03 - 7.2588570e+02 -6.4725193e+02 -3.4149782e+03 - 7.3286898e+02 -6.5109475e+02 -3.4129919e+03 - 7.3862627e+02 -6.5518847e+02 -3.4110835e+03 - 7.4324836e+02 -6.5951021e+02 -3.4092609e+03 - 7.4682027e+02 -6.6403583e+02 -3.4075316e+03 - 7.4942168e+02 -6.6873998e+02 -3.4059024e+03 - 7.5112737e+02 -6.7359622e+02 -3.4043797e+03 - 7.5200768e+02 -6.7857704e+02 -3.4029695e+03 - 7.5212889e+02 -6.8365391e+02 -3.4016771e+03 - 7.5155362e+02 -6.8879724e+02 -3.4005074e+03 - 7.5034120e+02 -6.9397644e+02 -3.3994648e+03 - 7.4854796e+02 -6.9915984e+02 -3.3985533e+03 - 7.4622753e+02 -7.0431471e+02 -3.3977762e+03 - 7.4343111e+02 -7.0940720e+02 -3.3971365e+03 - 7.4020764e+02 -7.1440231e+02 -3.3966364e+03 - 7.3660402e+02 -7.1926381e+02 -3.3962779e+03 - 7.3266532e+02 -7.2395425e+02 -3.3960623e+03 - 7.2843482e+02 -7.2843482e+02 -3.3959903e+03 - 7.2395425e+02 -7.3266532e+02 -3.3960623e+03 - 7.1926381e+02 -7.3660402e+02 -3.3962779e+03 - 7.1440231e+02 -7.4020764e+02 -3.3966364e+03 - 7.0940720e+02 -7.4343111e+02 -3.3971365e+03 - 7.0431471e+02 -7.4622753e+02 -3.3977762e+03 - 6.9915984e+02 -7.4854796e+02 -3.3985533e+03 - 6.9397644e+02 -7.5034120e+02 -3.3994648e+03 - 6.8879724e+02 -7.5155362e+02 -3.4005074e+03 - 6.8365391e+02 -7.5212889e+02 -3.4016771e+03 - 6.7857704e+02 -7.5200768e+02 -3.4029695e+03 - 6.7359622e+02 -7.5112737e+02 -3.4043797e+03 - 6.6873998e+02 -7.4942168e+02 -3.4059024e+03 - 6.6403583e+02 -7.4682027e+02 -3.4075316e+03 - 6.5951021e+02 -7.4324836e+02 -3.4092609e+03 - 6.5518847e+02 -7.3862627e+02 -3.4110835e+03 - 6.5109475e+02 -7.3286898e+02 -3.4129919e+03 - 6.4725193e+02 -7.2588570e+02 -3.4149782e+03 - 6.4368145e+02 -7.1757945e+02 -3.4170339e+03 - 6.4040309e+02 -7.0784675e+02 -3.4191499e+03 - 6.3743475e+02 -6.9657743e+02 -3.4213167e+03 - 6.3479210e+02 -6.8365456e+02 -3.4235240e+03 - 6.3248812e+02 -6.6895479e+02 -3.4257607e+03 - 6.3053267e+02 -6.5234895e+02 -3.4280152e+03 - 6.2893183e+02 -6.3370328e+02 -3.4302750e+03 - 6.2768724e+02 -6.1288127e+02 -3.4325268e+03 - 6.2679534e+02 -5.8974643e+02 -3.4347564e+03 - 6.2624653e+02 -5.6416609e+02 -3.4369487e+03 - 6.2602442e+02 -5.3601646e+02 -3.4390875e+03 - 6.2610506e+02 -5.0518904e+02 -3.4411560e+03 - 6.2645645e+02 -4.7159849e+02 -3.4431361e+03 - 6.2703824e+02 -4.3519182e+02 -3.4450094e+03 - 6.2780207e+02 -3.9595849e+02 -3.4467566e+03 - 6.2869233e+02 -3.5394105e+02 -3.4483583e+03 - 6.2964780e+02 -3.0924519e+02 -3.4497952e+03 - 6.3060404e+02 -2.6204805e+02 -3.4510487e+03 - 6.3149656e+02 -2.1260356e+02 -3.4521015e+03 - 6.3226459e+02 -1.6124313e+02 -3.4529381e+03 - 6.3285517e+02 -1.0837092e+02 -3.4535455e+03 - 6.3322705e+02 -5.4452868e+01 -3.4539140e+03 - 6.3335400e+02 0.0000000e+00 -3.4540375e+03 - 5.9096060e+02 0.0000000e+00 -3.4664447e+03 - 5.9084260e+02 5.0706147e+01 -3.4663377e+03 - 5.9049699e+02 1.0092207e+02 -3.4660184e+03 - 5.8994822e+02 1.5017883e+02 -3.4654919e+03 - 5.8923477e+02 1.9804788e+02 -3.4647664e+03 - 5.8840616e+02 2.4415612e+02 -3.4638525e+03 - 5.8751930e+02 2.8819600e+02 -3.4627635e+03 - 5.8663469e+02 3.2993005e+02 -3.4615140e+03 - 5.8581296e+02 3.6919060e+02 -3.4601197e+03 - 5.8511183e+02 4.0587532e+02 -3.4585972e+03 - 5.8458384e+02 4.3993998e+02 -3.4569631e+03 - 5.8427479e+02 4.7138958e+02 -3.4552339e+03 - 5.8422292e+02 5.0026888e+02 -3.4534258e+03 - 5.8445859e+02 5.2665324e+02 -3.4515545e+03 - 5.8500449e+02 5.5064020e+02 -3.4496347e+03 - 5.8587610e+02 5.7234231e+02 -3.4476807e+03 - 5.8708234e+02 5.9188108e+02 -3.4457058e+03 - 5.8862633e+02 6.0938230e+02 -3.4437227e+03 - 5.9050618e+02 6.2497234e+02 -3.4417432e+03 - 5.9271569e+02 6.3877552e+02 -3.4397783e+03 - 5.9524503e+02 6.5091229e+02 -3.4378386e+03 - 5.9808131e+02 6.6149798e+02 -3.4359338e+03 - 6.0120914e+02 6.7064211e+02 -3.4340732e+03 - 6.0461097e+02 6.7844810e+02 -3.4322652e+03 - 6.0826746e+02 6.8501316e+02 -3.4305180e+03 - 6.1215778e+02 6.9042846e+02 -3.4288392e+03 - 6.1625978e+02 6.9477941e+02 -3.4272358e+03 - 6.2055014e+02 6.9814596e+02 -3.4257143e+03 - 6.2500454e+02 7.0060301e+02 -3.4242809e+03 - 6.2959766e+02 7.0222082e+02 -3.4229413e+03 - 6.3430331e+02 7.0306538e+02 -3.4217006e+03 - 6.3909442e+02 7.0319880e+02 -3.4205636e+03 - 6.4394302e+02 7.0267970e+02 -3.4195346e+03 - 6.4882031e+02 7.0156350e+02 -3.4186175e+03 - 6.5369657e+02 6.9990277e+02 -3.4178157e+03 - 6.5854117e+02 6.9774746e+02 -3.4171323e+03 - 6.6332253e+02 6.9514517e+02 -3.4165696e+03 - 6.6800805e+02 6.9214138e+02 -3.4161298e+03 - 6.7256410e+02 6.8877960e+02 -3.4158145e+03 - 6.7695590e+02 6.8510159e+02 -3.4156249e+03 - 6.8114748e+02 6.8114748e+02 -3.4155616e+03 - 6.8510159e+02 6.7695590e+02 -3.4156249e+03 - 6.8877960e+02 6.7256410e+02 -3.4158145e+03 - 6.9214138e+02 6.6800805e+02 -3.4161298e+03 - 6.9514517e+02 6.6332253e+02 -3.4165696e+03 - 6.9774746e+02 6.5854117e+02 -3.4171323e+03 - 6.9990277e+02 6.5369657e+02 -3.4178157e+03 - 7.0156350e+02 6.4882031e+02 -3.4186175e+03 - 7.0267970e+02 6.4394302e+02 -3.4195346e+03 - 7.0319880e+02 6.3909442e+02 -3.4205636e+03 - 7.0306538e+02 6.3430331e+02 -3.4217006e+03 - 7.0222082e+02 6.2959766e+02 -3.4229413e+03 - 7.0060301e+02 6.2500454e+02 -3.4242809e+03 - 6.9814596e+02 6.2055014e+02 -3.4257143e+03 - 6.9477941e+02 6.1625978e+02 -3.4272358e+03 - 6.9042846e+02 6.1215778e+02 -3.4288392e+03 - 6.8501316e+02 6.0826746e+02 -3.4305180e+03 - 6.7844810e+02 6.0461097e+02 -3.4322652e+03 - 6.7064211e+02 6.0120914e+02 -3.4340732e+03 - 6.6149798e+02 5.9808131e+02 -3.4359338e+03 - 6.5091229e+02 5.9524503e+02 -3.4378386e+03 - 6.3877552e+02 5.9271569e+02 -3.4397783e+03 - 6.2497234e+02 5.9050618e+02 -3.4417432e+03 - 6.0938230e+02 5.8862633e+02 -3.4437227e+03 - 5.9188108e+02 5.8708234e+02 -3.4457058e+03 - 5.7234231e+02 5.8587610e+02 -3.4476807e+03 - 5.5064020e+02 5.8500449e+02 -3.4496347e+03 - 5.2665324e+02 5.8445859e+02 -3.4515545e+03 - 5.0026888e+02 5.8422292e+02 -3.4534258e+03 - 4.7138958e+02 5.8427479e+02 -3.4552339e+03 - 4.3993998e+02 5.8458384e+02 -3.4569631e+03 - 4.0587532e+02 5.8511183e+02 -3.4585972e+03 - 3.6919060e+02 5.8581296e+02 -3.4601197e+03 - 3.2993005e+02 5.8663469e+02 -3.4615140e+03 - 2.8819600e+02 5.8751930e+02 -3.4627635e+03 - 2.4415612e+02 5.8840616e+02 -3.4638525e+03 - 1.9804788e+02 5.8923477e+02 -3.4647664e+03 - 1.5017883e+02 5.8994822e+02 -3.4654919e+03 - 1.0092207e+02 5.9049699e+02 -3.4660184e+03 - 5.0706147e+01 5.9084260e+02 -3.4663377e+03 - 0.0000000e+00 5.9096060e+02 -3.4664447e+03 - -5.0706147e+01 5.9084260e+02 -3.4663377e+03 - -1.0092207e+02 5.9049699e+02 -3.4660184e+03 - -1.5017883e+02 5.8994822e+02 -3.4654919e+03 - -1.9804788e+02 5.8923477e+02 -3.4647664e+03 - -2.4415612e+02 5.8840616e+02 -3.4638525e+03 - -2.8819600e+02 5.8751930e+02 -3.4627635e+03 - -3.2993005e+02 5.8663469e+02 -3.4615140e+03 - -3.6919060e+02 5.8581296e+02 -3.4601197e+03 - -4.0587532e+02 5.8511183e+02 -3.4585972e+03 - -4.3993998e+02 5.8458384e+02 -3.4569631e+03 - -4.7138958e+02 5.8427479e+02 -3.4552339e+03 - -5.0026888e+02 5.8422292e+02 -3.4534258e+03 - -5.2665324e+02 5.8445859e+02 -3.4515545e+03 - -5.5064020e+02 5.8500449e+02 -3.4496347e+03 - -5.7234231e+02 5.8587610e+02 -3.4476807e+03 - -5.9188108e+02 5.8708234e+02 -3.4457058e+03 - -6.0938230e+02 5.8862633e+02 -3.4437227e+03 - -6.2497234e+02 5.9050618e+02 -3.4417432e+03 - -6.3877552e+02 5.9271569e+02 -3.4397783e+03 - -6.5091229e+02 5.9524503e+02 -3.4378386e+03 - -6.6149798e+02 5.9808131e+02 -3.4359338e+03 - -6.7064211e+02 6.0120914e+02 -3.4340732e+03 - -6.7844810e+02 6.0461097e+02 -3.4322652e+03 - -6.8501316e+02 6.0826746e+02 -3.4305180e+03 - -6.9042846e+02 6.1215778e+02 -3.4288392e+03 - -6.9477941e+02 6.1625978e+02 -3.4272358e+03 - -6.9814596e+02 6.2055014e+02 -3.4257143e+03 - -7.0060301e+02 6.2500454e+02 -3.4242809e+03 - -7.0222082e+02 6.2959766e+02 -3.4229413e+03 - -7.0306538e+02 6.3430331e+02 -3.4217006e+03 - -7.0319880e+02 6.3909442e+02 -3.4205636e+03 - -7.0267970e+02 6.4394302e+02 -3.4195346e+03 - -7.0156350e+02 6.4882031e+02 -3.4186175e+03 - -6.9990277e+02 6.5369657e+02 -3.4178157e+03 - -6.9774746e+02 6.5854117e+02 -3.4171323e+03 - -6.9514517e+02 6.6332253e+02 -3.4165696e+03 - -6.9214138e+02 6.6800805e+02 -3.4161298e+03 - -6.8877960e+02 6.7256410e+02 -3.4158145e+03 - -6.8510159e+02 6.7695590e+02 -3.4156249e+03 - -6.8114748e+02 6.8114748e+02 -3.4155616e+03 - -6.7695590e+02 6.8510159e+02 -3.4156249e+03 - -6.7256410e+02 6.8877960e+02 -3.4158145e+03 - -6.6800805e+02 6.9214138e+02 -3.4161298e+03 - -6.6332253e+02 6.9514517e+02 -3.4165696e+03 - -6.5854117e+02 6.9774746e+02 -3.4171323e+03 - -6.5369657e+02 6.9990277e+02 -3.4178157e+03 - -6.4882031e+02 7.0156350e+02 -3.4186175e+03 - -6.4394302e+02 7.0267970e+02 -3.4195346e+03 - -6.3909442e+02 7.0319880e+02 -3.4205636e+03 - -6.3430331e+02 7.0306538e+02 -3.4217006e+03 - -6.2959766e+02 7.0222082e+02 -3.4229413e+03 - -6.2500454e+02 7.0060301e+02 -3.4242809e+03 - -6.2055014e+02 6.9814596e+02 -3.4257143e+03 - -6.1625978e+02 6.9477941e+02 -3.4272358e+03 - -6.1215778e+02 6.9042846e+02 -3.4288392e+03 - -6.0826746e+02 6.8501316e+02 -3.4305180e+03 - -6.0461097e+02 6.7844810e+02 -3.4322652e+03 - -6.0120914e+02 6.7064211e+02 -3.4340732e+03 - -5.9808131e+02 6.6149798e+02 -3.4359338e+03 - -5.9524503e+02 6.5091229e+02 -3.4378386e+03 - -5.9271569e+02 6.3877552e+02 -3.4397783e+03 - -5.9050618e+02 6.2497234e+02 -3.4417432e+03 - -5.8862633e+02 6.0938230e+02 -3.4437227e+03 - -5.8708234e+02 5.9188108e+02 -3.4457058e+03 - -5.8587610e+02 5.7234231e+02 -3.4476807e+03 - -5.8500449e+02 5.5064020e+02 -3.4496347e+03 - -5.8445859e+02 5.2665324e+02 -3.4515545e+03 - -5.8422292e+02 5.0026888e+02 -3.4534258e+03 - -5.8427479e+02 4.7138958e+02 -3.4552339e+03 - -5.8458384e+02 4.3993998e+02 -3.4569631e+03 - -5.8511183e+02 4.0587532e+02 -3.4585972e+03 - -5.8581296e+02 3.6919060e+02 -3.4601197e+03 - -5.8663469e+02 3.2993005e+02 -3.4615140e+03 - -5.8751930e+02 2.8819600e+02 -3.4627635e+03 - -5.8840616e+02 2.4415612e+02 -3.4638525e+03 - -5.8923477e+02 1.9804788e+02 -3.4647664e+03 - -5.8994822e+02 1.5017883e+02 -3.4654919e+03 - -5.9049699e+02 1.0092207e+02 -3.4660184e+03 - -5.9084260e+02 5.0706147e+01 -3.4663377e+03 - -5.9096060e+02 0.0000000e+00 -3.4664447e+03 - -5.9084260e+02 -5.0706147e+01 -3.4663377e+03 - -5.9049699e+02 -1.0092207e+02 -3.4660184e+03 - -5.8994822e+02 -1.5017883e+02 -3.4654919e+03 - -5.8923477e+02 -1.9804788e+02 -3.4647664e+03 - -5.8840616e+02 -2.4415612e+02 -3.4638525e+03 - -5.8751930e+02 -2.8819600e+02 -3.4627635e+03 - -5.8663469e+02 -3.2993005e+02 -3.4615140e+03 - -5.8581296e+02 -3.6919060e+02 -3.4601197e+03 - -5.8511183e+02 -4.0587532e+02 -3.4585972e+03 - -5.8458384e+02 -4.3993998e+02 -3.4569631e+03 - -5.8427479e+02 -4.7138958e+02 -3.4552339e+03 - -5.8422292e+02 -5.0026888e+02 -3.4534258e+03 - -5.8445859e+02 -5.2665324e+02 -3.4515545e+03 - -5.8500449e+02 -5.5064020e+02 -3.4496347e+03 - -5.8587610e+02 -5.7234231e+02 -3.4476807e+03 - -5.8708234e+02 -5.9188108e+02 -3.4457058e+03 - -5.8862633e+02 -6.0938230e+02 -3.4437227e+03 - -5.9050618e+02 -6.2497234e+02 -3.4417432e+03 - -5.9271569e+02 -6.3877552e+02 -3.4397783e+03 - -5.9524503e+02 -6.5091229e+02 -3.4378386e+03 - -5.9808131e+02 -6.6149798e+02 -3.4359338e+03 - -6.0120914e+02 -6.7064211e+02 -3.4340732e+03 - -6.0461097e+02 -6.7844810e+02 -3.4322652e+03 - -6.0826746e+02 -6.8501316e+02 -3.4305180e+03 - -6.1215778e+02 -6.9042846e+02 -3.4288392e+03 - -6.1625978e+02 -6.9477941e+02 -3.4272358e+03 - -6.2055014e+02 -6.9814596e+02 -3.4257143e+03 - -6.2500454e+02 -7.0060301e+02 -3.4242809e+03 - -6.2959766e+02 -7.0222082e+02 -3.4229413e+03 - -6.3430331e+02 -7.0306538e+02 -3.4217006e+03 - -6.3909442e+02 -7.0319880e+02 -3.4205636e+03 - -6.4394302e+02 -7.0267970e+02 -3.4195346e+03 - -6.4882031e+02 -7.0156350e+02 -3.4186175e+03 - -6.5369657e+02 -6.9990277e+02 -3.4178157e+03 - -6.5854117e+02 -6.9774746e+02 -3.4171323e+03 - -6.6332253e+02 -6.9514517e+02 -3.4165696e+03 - -6.6800805e+02 -6.9214138e+02 -3.4161298e+03 - -6.7256410e+02 -6.8877960e+02 -3.4158145e+03 - -6.7695590e+02 -6.8510159e+02 -3.4156249e+03 - -6.8114748e+02 -6.8114748e+02 -3.4155616e+03 - -6.8510159e+02 -6.7695590e+02 -3.4156249e+03 - -6.8877960e+02 -6.7256410e+02 -3.4158145e+03 - -6.9214138e+02 -6.6800805e+02 -3.4161298e+03 - -6.9514517e+02 -6.6332253e+02 -3.4165696e+03 - -6.9774746e+02 -6.5854117e+02 -3.4171323e+03 - -6.9990277e+02 -6.5369657e+02 -3.4178157e+03 - -7.0156350e+02 -6.4882031e+02 -3.4186175e+03 - -7.0267970e+02 -6.4394302e+02 -3.4195346e+03 - -7.0319880e+02 -6.3909442e+02 -3.4205636e+03 - -7.0306538e+02 -6.3430331e+02 -3.4217006e+03 - -7.0222082e+02 -6.2959766e+02 -3.4229413e+03 - -7.0060301e+02 -6.2500454e+02 -3.4242809e+03 - -6.9814596e+02 -6.2055014e+02 -3.4257143e+03 - -6.9477941e+02 -6.1625978e+02 -3.4272358e+03 - -6.9042846e+02 -6.1215778e+02 -3.4288392e+03 - -6.8501316e+02 -6.0826746e+02 -3.4305180e+03 - -6.7844810e+02 -6.0461097e+02 -3.4322652e+03 - -6.7064211e+02 -6.0120914e+02 -3.4340732e+03 - -6.6149798e+02 -5.9808131e+02 -3.4359338e+03 - -6.5091229e+02 -5.9524503e+02 -3.4378386e+03 - -6.3877552e+02 -5.9271569e+02 -3.4397783e+03 - -6.2497234e+02 -5.9050618e+02 -3.4417432e+03 - -6.0938230e+02 -5.8862633e+02 -3.4437227e+03 - -5.9188108e+02 -5.8708234e+02 -3.4457058e+03 - -5.7234231e+02 -5.8587610e+02 -3.4476807e+03 - -5.5064020e+02 -5.8500449e+02 -3.4496347e+03 - -5.2665324e+02 -5.8445859e+02 -3.4515545e+03 - -5.0026888e+02 -5.8422292e+02 -3.4534258e+03 - -4.7138958e+02 -5.8427479e+02 -3.4552339e+03 - -4.3993998e+02 -5.8458384e+02 -3.4569631e+03 - -4.0587532e+02 -5.8511183e+02 -3.4585972e+03 - -3.6919060e+02 -5.8581296e+02 -3.4601197e+03 - -3.2993005e+02 -5.8663469e+02 -3.4615140e+03 - -2.8819600e+02 -5.8751930e+02 -3.4627635e+03 - -2.4415612e+02 -5.8840616e+02 -3.4638525e+03 - -1.9804788e+02 -5.8923477e+02 -3.4647664e+03 - -1.5017883e+02 -5.8994822e+02 -3.4654919e+03 - -1.0092207e+02 -5.9049699e+02 -3.4660184e+03 - -5.0706147e+01 -5.9084260e+02 -3.4663377e+03 - 0.0000000e+00 -5.9096060e+02 -3.4664447e+03 - 5.0706147e+01 -5.9084260e+02 -3.4663377e+03 - 1.0092207e+02 -5.9049699e+02 -3.4660184e+03 - 1.5017883e+02 -5.8994822e+02 -3.4654919e+03 - 1.9804788e+02 -5.8923477e+02 -3.4647664e+03 - 2.4415612e+02 -5.8840616e+02 -3.4638525e+03 - 2.8819600e+02 -5.8751930e+02 -3.4627635e+03 - 3.2993005e+02 -5.8663469e+02 -3.4615140e+03 - 3.6919060e+02 -5.8581296e+02 -3.4601197e+03 - 4.0587532e+02 -5.8511183e+02 -3.4585972e+03 - 4.3993998e+02 -5.8458384e+02 -3.4569631e+03 - 4.7138958e+02 -5.8427479e+02 -3.4552339e+03 - 5.0026888e+02 -5.8422292e+02 -3.4534258e+03 - 5.2665324e+02 -5.8445859e+02 -3.4515545e+03 - 5.5064020e+02 -5.8500449e+02 -3.4496347e+03 - 5.7234231e+02 -5.8587610e+02 -3.4476807e+03 - 5.9188108e+02 -5.8708234e+02 -3.4457058e+03 - 6.0938230e+02 -5.8862633e+02 -3.4437227e+03 - 6.2497234e+02 -5.9050618e+02 -3.4417432e+03 - 6.3877552e+02 -5.9271569e+02 -3.4397783e+03 - 6.5091229e+02 -5.9524503e+02 -3.4378386e+03 - 6.6149798e+02 -5.9808131e+02 -3.4359338e+03 - 6.7064211e+02 -6.0120914e+02 -3.4340732e+03 - 6.7844810e+02 -6.0461097e+02 -3.4322652e+03 - 6.8501316e+02 -6.0826746e+02 -3.4305180e+03 - 6.9042846e+02 -6.1215778e+02 -3.4288392e+03 - 6.9477941e+02 -6.1625978e+02 -3.4272358e+03 - 6.9814596e+02 -6.2055014e+02 -3.4257143e+03 - 7.0060301e+02 -6.2500454e+02 -3.4242809e+03 - 7.0222082e+02 -6.2959766e+02 -3.4229413e+03 - 7.0306538e+02 -6.3430331e+02 -3.4217006e+03 - 7.0319880e+02 -6.3909442e+02 -3.4205636e+03 - 7.0267970e+02 -6.4394302e+02 -3.4195346e+03 - 7.0156350e+02 -6.4882031e+02 -3.4186175e+03 - 6.9990277e+02 -6.5369657e+02 -3.4178157e+03 - 6.9774746e+02 -6.5854117e+02 -3.4171323e+03 - 6.9514517e+02 -6.6332253e+02 -3.4165696e+03 - 6.9214138e+02 -6.6800805e+02 -3.4161298e+03 - 6.8877960e+02 -6.7256410e+02 -3.4158145e+03 - 6.8510159e+02 -6.7695590e+02 -3.4156249e+03 - 6.8114748e+02 -6.8114748e+02 -3.4155616e+03 - 6.7695590e+02 -6.8510159e+02 -3.4156249e+03 - 6.7256410e+02 -6.8877960e+02 -3.4158145e+03 - 6.6800805e+02 -6.9214138e+02 -3.4161298e+03 - 6.6332253e+02 -6.9514517e+02 -3.4165696e+03 - 6.5854117e+02 -6.9774746e+02 -3.4171323e+03 - 6.5369657e+02 -6.9990277e+02 -3.4178157e+03 - 6.4882031e+02 -7.0156350e+02 -3.4186175e+03 - 6.4394302e+02 -7.0267970e+02 -3.4195346e+03 - 6.3909442e+02 -7.0319880e+02 -3.4205636e+03 - 6.3430331e+02 -7.0306538e+02 -3.4217006e+03 - 6.2959766e+02 -7.0222082e+02 -3.4229413e+03 - 6.2500454e+02 -7.0060301e+02 -3.4242809e+03 - 6.2055014e+02 -6.9814596e+02 -3.4257143e+03 - 6.1625978e+02 -6.9477941e+02 -3.4272358e+03 - 6.1215778e+02 -6.9042846e+02 -3.4288392e+03 - 6.0826746e+02 -6.8501316e+02 -3.4305180e+03 - 6.0461097e+02 -6.7844810e+02 -3.4322652e+03 - 6.0120914e+02 -6.7064211e+02 -3.4340732e+03 - 5.9808131e+02 -6.6149798e+02 -3.4359338e+03 - 5.9524503e+02 -6.5091229e+02 -3.4378386e+03 - 5.9271569e+02 -6.3877552e+02 -3.4397783e+03 - 5.9050618e+02 -6.2497234e+02 -3.4417432e+03 - 5.8862633e+02 -6.0938230e+02 -3.4437227e+03 - 5.8708234e+02 -5.9188108e+02 -3.4457058e+03 - 5.8587610e+02 -5.7234231e+02 -3.4476807e+03 - 5.8500449e+02 -5.5064020e+02 -3.4496347e+03 - 5.8445859e+02 -5.2665324e+02 -3.4515545e+03 - 5.8422292e+02 -5.0026888e+02 -3.4534258e+03 - 5.8427479e+02 -4.7138958e+02 -3.4552339e+03 - 5.8458384e+02 -4.3993998e+02 -3.4569631e+03 - 5.8511183e+02 -4.0587532e+02 -3.4585972e+03 - 5.8581296e+02 -3.6919060e+02 -3.4601197e+03 - 5.8663469e+02 -3.2993005e+02 -3.4615140e+03 - 5.8751930e+02 -2.8819600e+02 -3.4627635e+03 - 5.8840616e+02 -2.4415612e+02 -3.4638525e+03 - 5.8923477e+02 -1.9804788e+02 -3.4647664e+03 - 5.8994822e+02 -1.5017883e+02 -3.4654919e+03 - 5.9049699e+02 -1.0092207e+02 -3.4660184e+03 - 5.9084260e+02 -5.0706147e+01 -3.4663377e+03 - 5.9096060e+02 0.0000000e+00 -3.4664447e+03 - 5.4859817e+02 0.0000000e+00 -3.4779449e+03 - 5.4848909e+02 4.6985589e+01 -3.4778531e+03 - 5.4816962e+02 9.3523456e+01 -3.4775791e+03 - 5.4766243e+02 1.3918488e+02 -3.4771271e+03 - 5.4700324e+02 1.8357724e+02 -3.4765039e+03 - 5.4623807e+02 2.2635763e+02 -3.4757184e+03 - 5.4541990e+02 2.6724199e+02 -3.4747817e+03 - 5.4460518e+02 3.0600952e+02 -3.4737059e+03 - 5.4385058e+02 3.4250264e+02 -3.4725044e+03 - 5.4321017e+02 3.7662328e+02 -3.4711911e+03 - 5.4273327e+02 4.0832664e+02 -3.4697802e+03 - 5.4246298e+02 4.3761331e+02 -3.4682859e+03 - 5.4243529e+02 4.6452088e+02 -3.4667219e+03 - 5.4267883e+02 4.8911566e+02 -3.4651018e+03 - 5.4321497e+02 5.1148507e+02 -3.4634386e+03 - 5.4405821e+02 5.3173103e+02 -3.4617444e+03 - 5.4521686e+02 5.4996440e+02 -3.4600310e+03 - 5.4669364e+02 5.6630052e+02 -3.4583095e+03 - 5.4848649e+02 5.8085585e+02 -3.4565902e+03 - 5.5058921e+02 5.9374534e+02 -3.4548829e+03 - 5.5299213e+02 6.0508069e+02 -3.4531969e+03 - 5.5568266e+02 6.1496914e+02 -3.4515408e+03 - 5.5864582e+02 6.2351273e+02 -3.4499225e+03 - 5.6186458e+02 6.3080794e+02 -3.4483499e+03 - 5.6532027e+02 6.3694556e+02 -3.4468299e+03 - 5.6899281e+02 6.4201083e+02 -3.4453691e+03 - 5.7286093e+02 6.4608359e+02 -3.4439739e+03 - 5.7690234e+02 6.4923859e+02 -3.4426500e+03 - 5.8109383e+02 6.5154585e+02 -3.4414027e+03 - 5.8541138e+02 6.5307096e+02 -3.4402369e+03 - 5.8983020e+02 6.5387551e+02 -3.4391573e+03 - 5.9432475e+02 6.5401740e+02 -3.4381679e+03 - 5.9886878e+02 6.5355118e+02 -3.4372726e+03 - 6.0343531e+02 6.5252838e+02 -3.4364747e+03 - 6.0799660e+02 6.5099777e+02 -3.4357771e+03 - 6.1252415e+02 6.4900566e+02 -3.4351825e+03 - 6.1698862e+02 6.4659611e+02 -3.4346930e+03 - 6.2135982e+02 6.4381114e+02 -3.4343104e+03 - 6.2560663e+02 6.4069096e+02 -3.4340362e+03 - 6.2969693e+02 6.3727409e+02 -3.4338712e+03 - 6.3359754e+02 6.3359754e+02 -3.4338161e+03 - 6.3727409e+02 6.2969693e+02 -3.4338712e+03 - 6.4069096e+02 6.2560663e+02 -3.4340362e+03 - 6.4381114e+02 6.2135982e+02 -3.4343104e+03 - 6.4659611e+02 6.1698862e+02 -3.4346930e+03 - 6.4900566e+02 6.1252415e+02 -3.4351825e+03 - 6.5099777e+02 6.0799660e+02 -3.4357771e+03 - 6.5252838e+02 6.0343531e+02 -3.4364747e+03 - 6.5355118e+02 5.9886878e+02 -3.4372726e+03 - 6.5401740e+02 5.9432475e+02 -3.4381679e+03 - 6.5387551e+02 5.8983020e+02 -3.4391573e+03 - 6.5307096e+02 5.8541138e+02 -3.4402369e+03 - 6.5154585e+02 5.8109383e+02 -3.4414027e+03 - 6.4923859e+02 5.7690234e+02 -3.4426500e+03 - 6.4608359e+02 5.7286093e+02 -3.4439739e+03 - 6.4201083e+02 5.6899281e+02 -3.4453691e+03 - 6.3694556e+02 5.6532027e+02 -3.4468299e+03 - 6.3080794e+02 5.6186458e+02 -3.4483499e+03 - 6.2351273e+02 5.5864582e+02 -3.4499225e+03 - 6.1496914e+02 5.5568266e+02 -3.4515408e+03 - 6.0508069e+02 5.5299213e+02 -3.4531969e+03 - 5.9374534e+02 5.5058921e+02 -3.4548829e+03 - 5.8085585e+02 5.4848649e+02 -3.4565902e+03 - 5.6630052e+02 5.4669364e+02 -3.4583095e+03 - 5.4996440e+02 5.4521686e+02 -3.4600310e+03 - 5.3173103e+02 5.4405821e+02 -3.4617444e+03 - 5.1148507e+02 5.4321497e+02 -3.4634386e+03 - 4.8911566e+02 5.4267883e+02 -3.4651018e+03 - 4.6452088e+02 5.4243529e+02 -3.4667219e+03 - 4.3761331e+02 5.4246298e+02 -3.4682859e+03 - 4.0832664e+02 5.4273327e+02 -3.4697802e+03 - 3.7662328e+02 5.4321017e+02 -3.4711911e+03 - 3.4250264e+02 5.4385058e+02 -3.4725044e+03 - 3.0600952e+02 5.4460518e+02 -3.4737059e+03 - 2.6724199e+02 5.4541990e+02 -3.4747817e+03 - 2.2635763e+02 5.4623807e+02 -3.4757184e+03 - 1.8357724e+02 5.4700324e+02 -3.4765039e+03 - 1.3918488e+02 5.4766243e+02 -3.4771271e+03 - 9.3523456e+01 5.4816962e+02 -3.4775791e+03 - 4.6985589e+01 5.4848909e+02 -3.4778531e+03 - 4.8134273e-09 5.4859817e+02 -3.4779449e+03 - -4.6985589e+01 5.4848909e+02 -3.4778531e+03 - -9.3523456e+01 5.4816962e+02 -3.4775791e+03 - -1.3918488e+02 5.4766243e+02 -3.4771271e+03 - -1.8357724e+02 5.4700324e+02 -3.4765039e+03 - -2.2635763e+02 5.4623807e+02 -3.4757184e+03 - -2.6724199e+02 5.4541990e+02 -3.4747817e+03 - -3.0600952e+02 5.4460518e+02 -3.4737059e+03 - -3.4250264e+02 5.4385058e+02 -3.4725044e+03 - -3.7662328e+02 5.4321017e+02 -3.4711911e+03 - -4.0832664e+02 5.4273327e+02 -3.4697802e+03 - -4.3761331e+02 5.4246298e+02 -3.4682859e+03 - -4.6452088e+02 5.4243529e+02 -3.4667219e+03 - -4.8911566e+02 5.4267883e+02 -3.4651018e+03 - -5.1148507e+02 5.4321497e+02 -3.4634386e+03 - -5.3173103e+02 5.4405821e+02 -3.4617444e+03 - -5.4996440e+02 5.4521686e+02 -3.4600310e+03 - -5.6630052e+02 5.4669364e+02 -3.4583095e+03 - -5.8085585e+02 5.4848649e+02 -3.4565902e+03 - -5.9374534e+02 5.5058921e+02 -3.4548829e+03 - -6.0508069e+02 5.5299213e+02 -3.4531969e+03 - -6.1496914e+02 5.5568266e+02 -3.4515408e+03 - -6.2351273e+02 5.5864582e+02 -3.4499225e+03 - -6.3080794e+02 5.6186458e+02 -3.4483499e+03 - -6.3694556e+02 5.6532027e+02 -3.4468299e+03 - -6.4201083e+02 5.6899281e+02 -3.4453691e+03 - -6.4608359e+02 5.7286093e+02 -3.4439739e+03 - -6.4923859e+02 5.7690234e+02 -3.4426500e+03 - -6.5154585e+02 5.8109383e+02 -3.4414027e+03 - -6.5307096e+02 5.8541138e+02 -3.4402369e+03 - -6.5387551e+02 5.8983020e+02 -3.4391573e+03 - -6.5401740e+02 5.9432475e+02 -3.4381679e+03 - -6.5355118e+02 5.9886878e+02 -3.4372726e+03 - -6.5252838e+02 6.0343531e+02 -3.4364747e+03 - -6.5099777e+02 6.0799660e+02 -3.4357771e+03 - -6.4900566e+02 6.1252415e+02 -3.4351825e+03 - -6.4659611e+02 6.1698862e+02 -3.4346930e+03 - -6.4381114e+02 6.2135982e+02 -3.4343104e+03 - -6.4069096e+02 6.2560663e+02 -3.4340362e+03 - -6.3727409e+02 6.2969693e+02 -3.4338712e+03 - -6.3359754e+02 6.3359754e+02 -3.4338161e+03 - -6.2969693e+02 6.3727409e+02 -3.4338712e+03 - -6.2560663e+02 6.4069096e+02 -3.4340362e+03 - -6.2135982e+02 6.4381114e+02 -3.4343104e+03 - -6.1698862e+02 6.4659611e+02 -3.4346930e+03 - -6.1252415e+02 6.4900566e+02 -3.4351825e+03 - -6.0799660e+02 6.5099777e+02 -3.4357771e+03 - -6.0343531e+02 6.5252838e+02 -3.4364747e+03 - -5.9886878e+02 6.5355118e+02 -3.4372726e+03 - -5.9432475e+02 6.5401740e+02 -3.4381679e+03 - -5.8983020e+02 6.5387551e+02 -3.4391573e+03 - -5.8541138e+02 6.5307096e+02 -3.4402369e+03 - -5.8109383e+02 6.5154585e+02 -3.4414027e+03 - -5.7690234e+02 6.4923859e+02 -3.4426500e+03 - -5.7286093e+02 6.4608359e+02 -3.4439739e+03 - -5.6899281e+02 6.4201083e+02 -3.4453691e+03 - -5.6532027e+02 6.3694556e+02 -3.4468299e+03 - -5.6186458e+02 6.3080794e+02 -3.4483499e+03 - -5.5864582e+02 6.2351273e+02 -3.4499225e+03 - -5.5568266e+02 6.1496914e+02 -3.4515408e+03 - -5.5299213e+02 6.0508069e+02 -3.4531969e+03 - -5.5058921e+02 5.9374534e+02 -3.4548829e+03 - -5.4848649e+02 5.8085585e+02 -3.4565902e+03 - -5.4669364e+02 5.6630052e+02 -3.4583095e+03 - -5.4521686e+02 5.4996440e+02 -3.4600310e+03 - -5.4405821e+02 5.3173103e+02 -3.4617444e+03 - -5.4321497e+02 5.1148507e+02 -3.4634386e+03 - -5.4267883e+02 4.8911566e+02 -3.4651018e+03 - -5.4243529e+02 4.6452088e+02 -3.4667219e+03 - -5.4246298e+02 4.3761331e+02 -3.4682859e+03 - -5.4273327e+02 4.0832664e+02 -3.4697802e+03 - -5.4321017e+02 3.7662328e+02 -3.4711911e+03 - -5.4385058e+02 3.4250264e+02 -3.4725044e+03 - -5.4460518e+02 3.0600952e+02 -3.4737059e+03 - -5.4541990e+02 2.6724199e+02 -3.4747817e+03 - -5.4623807e+02 2.2635763e+02 -3.4757184e+03 - -5.4700324e+02 1.8357724e+02 -3.4765039e+03 - -5.4766243e+02 1.3918488e+02 -3.4771271e+03 - -5.4816962e+02 9.3523456e+01 -3.4775791e+03 - -5.4848909e+02 4.6985589e+01 -3.4778531e+03 - -5.4859817e+02 0.0000000e+00 -3.4779449e+03 - -5.4848909e+02 -4.6985589e+01 -3.4778531e+03 - -5.4816962e+02 -9.3523456e+01 -3.4775791e+03 - -5.4766243e+02 -1.3918488e+02 -3.4771271e+03 - -5.4700324e+02 -1.8357724e+02 -3.4765039e+03 - -5.4623807e+02 -2.2635763e+02 -3.4757184e+03 - -5.4541990e+02 -2.6724199e+02 -3.4747817e+03 - -5.4460518e+02 -3.0600952e+02 -3.4737059e+03 - -5.4385058e+02 -3.4250264e+02 -3.4725044e+03 - -5.4321017e+02 -3.7662328e+02 -3.4711911e+03 - -5.4273327e+02 -4.0832664e+02 -3.4697802e+03 - -5.4246298e+02 -4.3761331e+02 -3.4682859e+03 - -5.4243529e+02 -4.6452088e+02 -3.4667219e+03 - -5.4267883e+02 -4.8911566e+02 -3.4651018e+03 - -5.4321497e+02 -5.1148507e+02 -3.4634386e+03 - -5.4405821e+02 -5.3173103e+02 -3.4617444e+03 - -5.4521686e+02 -5.4996440e+02 -3.4600310e+03 - -5.4669364e+02 -5.6630052e+02 -3.4583095e+03 - -5.4848649e+02 -5.8085585e+02 -3.4565902e+03 - -5.5058921e+02 -5.9374534e+02 -3.4548829e+03 - -5.5299213e+02 -6.0508069e+02 -3.4531969e+03 - -5.5568266e+02 -6.1496914e+02 -3.4515408e+03 - -5.5864582e+02 -6.2351273e+02 -3.4499225e+03 - -5.6186458e+02 -6.3080794e+02 -3.4483499e+03 - -5.6532027e+02 -6.3694556e+02 -3.4468299e+03 - -5.6899281e+02 -6.4201083e+02 -3.4453691e+03 - -5.7286093e+02 -6.4608359e+02 -3.4439739e+03 - -5.7690234e+02 -6.4923859e+02 -3.4426500e+03 - -5.8109383e+02 -6.5154585e+02 -3.4414027e+03 - -5.8541138e+02 -6.5307096e+02 -3.4402369e+03 - -5.8983020e+02 -6.5387551e+02 -3.4391573e+03 - -5.9432475e+02 -6.5401740e+02 -3.4381679e+03 - -5.9886878e+02 -6.5355118e+02 -3.4372726e+03 - -6.0343531e+02 -6.5252838e+02 -3.4364747e+03 - -6.0799660e+02 -6.5099777e+02 -3.4357771e+03 - -6.1252415e+02 -6.4900566e+02 -3.4351825e+03 - -6.1698862e+02 -6.4659611e+02 -3.4346930e+03 - -6.2135982e+02 -6.4381114e+02 -3.4343104e+03 - -6.2560663e+02 -6.4069096e+02 -3.4340362e+03 - -6.2969693e+02 -6.3727409e+02 -3.4338712e+03 - -6.3359754e+02 -6.3359754e+02 -3.4338161e+03 - -6.3727409e+02 -6.2969693e+02 -3.4338712e+03 - -6.4069096e+02 -6.2560663e+02 -3.4340362e+03 - -6.4381114e+02 -6.2135982e+02 -3.4343104e+03 - -6.4659611e+02 -6.1698862e+02 -3.4346930e+03 - -6.4900566e+02 -6.1252415e+02 -3.4351825e+03 - -6.5099777e+02 -6.0799660e+02 -3.4357771e+03 - -6.5252838e+02 -6.0343531e+02 -3.4364747e+03 - -6.5355118e+02 -5.9886878e+02 -3.4372726e+03 - -6.5401740e+02 -5.9432475e+02 -3.4381679e+03 - -6.5387551e+02 -5.8983020e+02 -3.4391573e+03 - -6.5307096e+02 -5.8541138e+02 -3.4402369e+03 - -6.5154585e+02 -5.8109383e+02 -3.4414027e+03 - -6.4923859e+02 -5.7690234e+02 -3.4426500e+03 - -6.4608359e+02 -5.7286093e+02 -3.4439739e+03 - -6.4201083e+02 -5.6899281e+02 -3.4453691e+03 - -6.3694556e+02 -5.6532027e+02 -3.4468299e+03 - -6.3080794e+02 -5.6186458e+02 -3.4483499e+03 - -6.2351273e+02 -5.5864582e+02 -3.4499225e+03 - -6.1496914e+02 -5.5568266e+02 -3.4515408e+03 - -6.0508069e+02 -5.5299213e+02 -3.4531969e+03 - -5.9374534e+02 -5.5058921e+02 -3.4548829e+03 - -5.8085585e+02 -5.4848649e+02 -3.4565902e+03 - -5.6630052e+02 -5.4669364e+02 -3.4583095e+03 - -5.4996440e+02 -5.4521686e+02 -3.4600310e+03 - -5.3173103e+02 -5.4405821e+02 -3.4617444e+03 - -5.1148507e+02 -5.4321497e+02 -3.4634386e+03 - -4.8911566e+02 -5.4267883e+02 -3.4651018e+03 - -4.6452088e+02 -5.4243529e+02 -3.4667219e+03 - -4.3761331e+02 -5.4246298e+02 -3.4682859e+03 - -4.0832664e+02 -5.4273327e+02 -3.4697802e+03 - -3.7662328e+02 -5.4321017e+02 -3.4711911e+03 - -3.4250264e+02 -5.4385058e+02 -3.4725044e+03 - -3.0600952e+02 -5.4460518e+02 -3.4737059e+03 - -2.6724199e+02 -5.4541990e+02 -3.4747817e+03 - -2.2635763e+02 -5.4623807e+02 -3.4757184e+03 - -1.8357724e+02 -5.4700324e+02 -3.4765039e+03 - -1.3918488e+02 -5.4766243e+02 -3.4771271e+03 - -9.3523456e+01 -5.4816962e+02 -3.4775791e+03 - -4.6985589e+01 -5.4848909e+02 -3.4778531e+03 - -4.8134273e-09 -5.4859817e+02 -3.4779449e+03 - 4.6985589e+01 -5.4848909e+02 -3.4778531e+03 - 9.3523456e+01 -5.4816962e+02 -3.4775791e+03 - 1.3918488e+02 -5.4766243e+02 -3.4771271e+03 - 1.8357724e+02 -5.4700324e+02 -3.4765039e+03 - 2.2635763e+02 -5.4623807e+02 -3.4757184e+03 - 2.6724199e+02 -5.4541990e+02 -3.4747817e+03 - 3.0600952e+02 -5.4460518e+02 -3.4737059e+03 - 3.4250264e+02 -5.4385058e+02 -3.4725044e+03 - 3.7662328e+02 -5.4321017e+02 -3.4711911e+03 - 4.0832664e+02 -5.4273327e+02 -3.4697802e+03 - 4.3761331e+02 -5.4246298e+02 -3.4682859e+03 - 4.6452088e+02 -5.4243529e+02 -3.4667219e+03 - 4.8911566e+02 -5.4267883e+02 -3.4651018e+03 - 5.1148507e+02 -5.4321497e+02 -3.4634386e+03 - 5.3173103e+02 -5.4405821e+02 -3.4617444e+03 - 5.4996440e+02 -5.4521686e+02 -3.4600310e+03 - 5.6630052e+02 -5.4669364e+02 -3.4583095e+03 - 5.8085585e+02 -5.4848649e+02 -3.4565902e+03 - 5.9374534e+02 -5.5058921e+02 -3.4548829e+03 - 6.0508069e+02 -5.5299213e+02 -3.4531969e+03 - 6.1496914e+02 -5.5568266e+02 -3.4515408e+03 - 6.2351273e+02 -5.5864582e+02 -3.4499225e+03 - 6.3080794e+02 -5.6186458e+02 -3.4483499e+03 - 6.3694556e+02 -5.6532027e+02 -3.4468299e+03 - 6.4201083e+02 -5.6899281e+02 -3.4453691e+03 - 6.4608359e+02 -5.7286093e+02 -3.4439739e+03 - 6.4923859e+02 -5.7690234e+02 -3.4426500e+03 - 6.5154585e+02 -5.8109383e+02 -3.4414027e+03 - 6.5307096e+02 -5.8541138e+02 -3.4402369e+03 - 6.5387551e+02 -5.8983020e+02 -3.4391573e+03 - 6.5401740e+02 -5.9432475e+02 -3.4381679e+03 - 6.5355118e+02 -5.9886878e+02 -3.4372726e+03 - 6.5252838e+02 -6.0343531e+02 -3.4364747e+03 - 6.5099777e+02 -6.0799660e+02 -3.4357771e+03 - 6.4900566e+02 -6.1252415e+02 -3.4351825e+03 - 6.4659611e+02 -6.1698862e+02 -3.4346930e+03 - 6.4381114e+02 -6.2135982e+02 -3.4343104e+03 - 6.4069096e+02 -6.2560663e+02 -3.4340362e+03 - 6.3727409e+02 -6.2969693e+02 -3.4338712e+03 - 6.3359754e+02 -6.3359754e+02 -3.4338161e+03 - 6.2969693e+02 -6.3727409e+02 -3.4338712e+03 - 6.2560663e+02 -6.4069096e+02 -3.4340362e+03 - 6.2135982e+02 -6.4381114e+02 -3.4343104e+03 - 6.1698862e+02 -6.4659611e+02 -3.4346930e+03 - 6.1252415e+02 -6.4900566e+02 -3.4351825e+03 - 6.0799660e+02 -6.5099777e+02 -3.4357771e+03 - 6.0343531e+02 -6.5252838e+02 -3.4364747e+03 - 5.9886878e+02 -6.5355118e+02 -3.4372726e+03 - 5.9432475e+02 -6.5401740e+02 -3.4381679e+03 - 5.8983020e+02 -6.5387551e+02 -3.4391573e+03 - 5.8541138e+02 -6.5307096e+02 -3.4402369e+03 - 5.8109383e+02 -6.5154585e+02 -3.4414027e+03 - 5.7690234e+02 -6.4923859e+02 -3.4426500e+03 - 5.7286093e+02 -6.4608359e+02 -3.4439739e+03 - 5.6899281e+02 -6.4201083e+02 -3.4453691e+03 - 5.6532027e+02 -6.3694556e+02 -3.4468299e+03 - 5.6186458e+02 -6.3080794e+02 -3.4483499e+03 - 5.5864582e+02 -6.2351273e+02 -3.4499225e+03 - 5.5568266e+02 -6.1496914e+02 -3.4515408e+03 - 5.5299213e+02 -6.0508069e+02 -3.4531969e+03 - 5.5058921e+02 -5.9374534e+02 -3.4548829e+03 - 5.4848649e+02 -5.8085585e+02 -3.4565902e+03 - 5.4669364e+02 -5.6630052e+02 -3.4583095e+03 - 5.4521686e+02 -5.4996440e+02 -3.4600310e+03 - 5.4405821e+02 -5.3173103e+02 -3.4617444e+03 - 5.4321497e+02 -5.1148507e+02 -3.4634386e+03 - 5.4267883e+02 -4.8911566e+02 -3.4651018e+03 - 5.4243529e+02 -4.6452088e+02 -3.4667219e+03 - 5.4246298e+02 -4.3761331e+02 -3.4682859e+03 - 5.4273327e+02 -4.0832664e+02 -3.4697802e+03 - 5.4321017e+02 -3.7662328e+02 -3.4711911e+03 - 5.4385058e+02 -3.4250264e+02 -3.4725044e+03 - 5.4460518e+02 -3.0600952e+02 -3.4737059e+03 - 5.4541990e+02 -2.6724199e+02 -3.4747817e+03 - 5.4623807e+02 -2.2635763e+02 -3.4757184e+03 - 5.4700324e+02 -1.8357724e+02 -3.4765039e+03 - 5.4766243e+02 -1.3918488e+02 -3.4771271e+03 - 5.4816962e+02 -9.3523456e+01 -3.4775791e+03 - 5.4848909e+02 -4.6985589e+01 -3.4778531e+03 - 5.4859817e+02 -2.4067136e-09 -3.4779449e+03 - 5.0626602e+02 0.0000000e+00 -3.4885489e+03 - 5.0616579e+02 4.3288527e+01 -3.4884711e+03 - 5.0587226e+02 8.6169981e+01 -3.4882386e+03 - 5.0540633e+02 1.2825421e+02 -3.4878549e+03 - 5.0480095e+02 1.6918325e+02 -3.4873257e+03 - 5.0409861e+02 2.0864352e+02 -3.4866583e+03 - 5.0334832e+02 2.4637417e+02 -3.4858618e+03 - 5.0260238e+02 2.8217120e+02 -3.4849464e+03 - 5.0191342e+02 3.1588763e+02 -3.4839231e+03 - 5.0133172e+02 3.4743047e+02 -3.4828037e+03 - 5.0090326e+02 3.7675525e+02 -3.4816000e+03 - 5.0066827e+02 4.0385918e+02 -3.4803241e+03 - 5.0066041e+02 4.2877364e+02 -3.4789876e+03 - 5.0090648e+02 4.5155675e+02 -3.4776021e+03 - 5.0142643e+02 4.7228654e+02 -3.4761787e+03 - 5.0223382e+02 4.9105489e+02 -3.4747278e+03 - 5.0333630e+02 5.0796241e+02 -3.4732596e+03 - 5.0473626e+02 5.2311436e+02 -3.4717837e+03 - 5.0643155e+02 5.3661742e+02 -3.4703090e+03 - 5.0841608e+02 5.4857727e+02 -3.4688441e+03 - 5.1068046e+02 5.5909688e+02 -3.4673969e+03 - 5.1321256e+02 5.6827532e+02 -3.4659749e+03 - 5.1599794e+02 5.7620706e+02 -3.4645851e+03 - 5.1902029e+02 5.8298151e+02 -3.4632343e+03 - 5.2226175e+02 5.8868294e+02 -3.4619285e+03 - 5.2570315e+02 5.9339047e+02 -3.4606735e+03 - 5.2932428e+02 5.9717827e+02 -3.4594746e+03 - 5.3310399e+02 6.0011577e+02 -3.4583370e+03 - 5.3702036e+02 6.0226795e+02 -3.4572652e+03 - 5.4105073e+02 6.0369571e+02 -3.4562635e+03 - 5.4517184e+02 6.0445614e+02 -3.4553358e+03 - 5.4935979e+02 6.0460285e+02 -3.4544857e+03 - 5.5359007e+02 6.0418632e+02 -3.4537164e+03 - 5.5783759e+02 6.0325415e+02 -3.4530308e+03 - 5.6207661e+02 6.0185134e+02 -3.4524315e+03 - 5.6628075e+02 6.0002057e+02 -3.4519207e+03 - 5.7042295e+02 5.9780238e+02 -3.4515001e+03 - 5.7447538e+02 5.9523541e+02 -3.4511715e+03 - 5.7840942e+02 5.9235657e+02 -3.4509359e+03 - 5.8219556e+02 5.8920123e+02 -3.4507941e+03 - 5.8580334e+02 5.8580334e+02 -3.4507469e+03 - 5.8920123e+02 5.8219556e+02 -3.4507941e+03 - 5.9235657e+02 5.7840942e+02 -3.4509359e+03 - 5.9523541e+02 5.7447538e+02 -3.4511715e+03 - 5.9780238e+02 5.7042295e+02 -3.4515001e+03 - 6.0002057e+02 5.6628075e+02 -3.4519207e+03 - 6.0185134e+02 5.6207661e+02 -3.4524315e+03 - 6.0325415e+02 5.5783759e+02 -3.4530308e+03 - 6.0418632e+02 5.5359007e+02 -3.4537164e+03 - 6.0460285e+02 5.4935979e+02 -3.4544857e+03 - 6.0445614e+02 5.4517184e+02 -3.4553358e+03 - 6.0369571e+02 5.4105073e+02 -3.4562635e+03 - 6.0226795e+02 5.3702036e+02 -3.4572652e+03 - 6.0011577e+02 5.3310399e+02 -3.4583370e+03 - 5.9717827e+02 5.2932428e+02 -3.4594746e+03 - 5.9339047e+02 5.2570315e+02 -3.4606735e+03 - 5.8868294e+02 5.2226175e+02 -3.4619285e+03 - 5.8298151e+02 5.1902029e+02 -3.4632343e+03 - 5.7620706e+02 5.1599794e+02 -3.4645851e+03 - 5.6827532e+02 5.1321256e+02 -3.4659749e+03 - 5.5909688e+02 5.1068046e+02 -3.4673969e+03 - 5.4857727e+02 5.0841608e+02 -3.4688441e+03 - 5.3661742e+02 5.0643155e+02 -3.4703090e+03 - 5.2311436e+02 5.0473626e+02 -3.4717837e+03 - 5.0796241e+02 5.0333630e+02 -3.4732596e+03 - 4.9105489e+02 5.0223382e+02 -3.4747278e+03 - 4.7228654e+02 5.0142643e+02 -3.4761787e+03 - 4.5155675e+02 5.0090648e+02 -3.4776021e+03 - 4.2877364e+02 5.0066041e+02 -3.4789876e+03 - 4.0385918e+02 5.0066827e+02 -3.4803241e+03 - 3.7675525e+02 5.0090326e+02 -3.4816000e+03 - 3.4743047e+02 5.0133172e+02 -3.4828037e+03 - 3.1588763e+02 5.0191342e+02 -3.4839231e+03 - 2.8217120e+02 5.0260238e+02 -3.4849464e+03 - 2.4637417e+02 5.0334832e+02 -3.4858618e+03 - 2.0864352e+02 5.0409861e+02 -3.4866583e+03 - 1.6918325e+02 5.0480095e+02 -3.4873257e+03 - 1.2825421e+02 5.0540633e+02 -3.4878549e+03 - 8.6169981e+01 5.0587226e+02 -3.4882386e+03 - 4.3288527e+01 5.0616579e+02 -3.4884711e+03 - 0.0000000e+00 5.0626602e+02 -3.4885489e+03 - -4.3288527e+01 5.0616579e+02 -3.4884711e+03 - -8.6169981e+01 5.0587226e+02 -3.4882386e+03 - -1.2825421e+02 5.0540633e+02 -3.4878549e+03 - -1.6918325e+02 5.0480095e+02 -3.4873257e+03 - -2.0864352e+02 5.0409861e+02 -3.4866583e+03 - -2.4637417e+02 5.0334832e+02 -3.4858618e+03 - -2.8217120e+02 5.0260238e+02 -3.4849464e+03 - -3.1588763e+02 5.0191342e+02 -3.4839231e+03 - -3.4743047e+02 5.0133172e+02 -3.4828037e+03 - -3.7675525e+02 5.0090326e+02 -3.4816000e+03 - -4.0385918e+02 5.0066827e+02 -3.4803241e+03 - -4.2877364e+02 5.0066041e+02 -3.4789876e+03 - -4.5155675e+02 5.0090648e+02 -3.4776021e+03 - -4.7228654e+02 5.0142643e+02 -3.4761787e+03 - -4.9105489e+02 5.0223382e+02 -3.4747278e+03 - -5.0796241e+02 5.0333630e+02 -3.4732596e+03 - -5.2311436e+02 5.0473626e+02 -3.4717837e+03 - -5.3661742e+02 5.0643155e+02 -3.4703090e+03 - -5.4857727e+02 5.0841608e+02 -3.4688441e+03 - -5.5909688e+02 5.1068046e+02 -3.4673969e+03 - -5.6827532e+02 5.1321256e+02 -3.4659749e+03 - -5.7620706e+02 5.1599794e+02 -3.4645851e+03 - -5.8298151e+02 5.1902029e+02 -3.4632343e+03 - -5.8868294e+02 5.2226175e+02 -3.4619285e+03 - -5.9339047e+02 5.2570315e+02 -3.4606735e+03 - -5.9717827e+02 5.2932428e+02 -3.4594746e+03 - -6.0011577e+02 5.3310399e+02 -3.4583370e+03 - -6.0226795e+02 5.3702036e+02 -3.4572652e+03 - -6.0369571e+02 5.4105073e+02 -3.4562635e+03 - -6.0445614e+02 5.4517184e+02 -3.4553358e+03 - -6.0460285e+02 5.4935979e+02 -3.4544857e+03 - -6.0418632e+02 5.5359007e+02 -3.4537164e+03 - -6.0325415e+02 5.5783759e+02 -3.4530308e+03 - -6.0185134e+02 5.6207661e+02 -3.4524315e+03 - -6.0002057e+02 5.6628075e+02 -3.4519207e+03 - -5.9780238e+02 5.7042295e+02 -3.4515001e+03 - -5.9523541e+02 5.7447538e+02 -3.4511715e+03 - -5.9235657e+02 5.7840942e+02 -3.4509359e+03 - -5.8920123e+02 5.8219556e+02 -3.4507941e+03 - -5.8580334e+02 5.8580334e+02 -3.4507469e+03 - -5.8219556e+02 5.8920123e+02 -3.4507941e+03 - -5.7840942e+02 5.9235657e+02 -3.4509359e+03 - -5.7447538e+02 5.9523541e+02 -3.4511715e+03 - -5.7042295e+02 5.9780238e+02 -3.4515001e+03 - -5.6628075e+02 6.0002057e+02 -3.4519207e+03 - -5.6207661e+02 6.0185134e+02 -3.4524315e+03 - -5.5783759e+02 6.0325415e+02 -3.4530308e+03 - -5.5359007e+02 6.0418632e+02 -3.4537164e+03 - -5.4935979e+02 6.0460285e+02 -3.4544857e+03 - -5.4517184e+02 6.0445614e+02 -3.4553358e+03 - -5.4105073e+02 6.0369571e+02 -3.4562635e+03 - -5.3702036e+02 6.0226795e+02 -3.4572652e+03 - -5.3310399e+02 6.0011577e+02 -3.4583370e+03 - -5.2932428e+02 5.9717827e+02 -3.4594746e+03 - -5.2570315e+02 5.9339047e+02 -3.4606735e+03 - -5.2226175e+02 5.8868294e+02 -3.4619285e+03 - -5.1902029e+02 5.8298151e+02 -3.4632343e+03 - -5.1599794e+02 5.7620706e+02 -3.4645851e+03 - -5.1321256e+02 5.6827532e+02 -3.4659749e+03 - -5.1068046e+02 5.5909688e+02 -3.4673969e+03 - -5.0841608e+02 5.4857727e+02 -3.4688441e+03 - -5.0643155e+02 5.3661742e+02 -3.4703090e+03 - -5.0473626e+02 5.2311436e+02 -3.4717837e+03 - -5.0333630e+02 5.0796241e+02 -3.4732596e+03 - -5.0223382e+02 4.9105489e+02 -3.4747278e+03 - -5.0142643e+02 4.7228654e+02 -3.4761787e+03 - -5.0090648e+02 4.5155675e+02 -3.4776021e+03 - -5.0066041e+02 4.2877364e+02 -3.4789876e+03 - -5.0066827e+02 4.0385918e+02 -3.4803241e+03 - -5.0090326e+02 3.7675525e+02 -3.4816000e+03 - -5.0133172e+02 3.4743047e+02 -3.4828037e+03 - -5.0191342e+02 3.1588763e+02 -3.4839231e+03 - -5.0260238e+02 2.8217120e+02 -3.4849464e+03 - -5.0334832e+02 2.4637417e+02 -3.4858618e+03 - -5.0409861e+02 2.0864352e+02 -3.4866583e+03 - -5.0480095e+02 1.6918325e+02 -3.4873257e+03 - -5.0540633e+02 1.2825421e+02 -3.4878549e+03 - -5.0587226e+02 8.6169981e+01 -3.4882386e+03 - -5.0616579e+02 4.3288527e+01 -3.4884711e+03 - -5.0626602e+02 0.0000000e+00 -3.4885489e+03 - -5.0616579e+02 -4.3288527e+01 -3.4884711e+03 - -5.0587226e+02 -8.6169981e+01 -3.4882386e+03 - -5.0540633e+02 -1.2825421e+02 -3.4878549e+03 - -5.0480095e+02 -1.6918325e+02 -3.4873257e+03 - -5.0409861e+02 -2.0864352e+02 -3.4866583e+03 - -5.0334832e+02 -2.4637417e+02 -3.4858618e+03 - -5.0260238e+02 -2.8217120e+02 -3.4849464e+03 - -5.0191342e+02 -3.1588763e+02 -3.4839231e+03 - -5.0133172e+02 -3.4743047e+02 -3.4828037e+03 - -5.0090326e+02 -3.7675525e+02 -3.4816000e+03 - -5.0066827e+02 -4.0385918e+02 -3.4803241e+03 - -5.0066041e+02 -4.2877364e+02 -3.4789876e+03 - -5.0090648e+02 -4.5155675e+02 -3.4776021e+03 - -5.0142643e+02 -4.7228654e+02 -3.4761787e+03 - -5.0223382e+02 -4.9105489e+02 -3.4747278e+03 - -5.0333630e+02 -5.0796241e+02 -3.4732596e+03 - -5.0473626e+02 -5.2311436e+02 -3.4717837e+03 - -5.0643155e+02 -5.3661742e+02 -3.4703090e+03 - -5.0841608e+02 -5.4857727e+02 -3.4688441e+03 - -5.1068046e+02 -5.5909688e+02 -3.4673969e+03 - -5.1321256e+02 -5.6827532e+02 -3.4659749e+03 - -5.1599794e+02 -5.7620706e+02 -3.4645851e+03 - -5.1902029e+02 -5.8298151e+02 -3.4632343e+03 - -5.2226175e+02 -5.8868294e+02 -3.4619285e+03 - -5.2570315e+02 -5.9339047e+02 -3.4606735e+03 - -5.2932428e+02 -5.9717827e+02 -3.4594746e+03 - -5.3310399e+02 -6.0011577e+02 -3.4583370e+03 - -5.3702036e+02 -6.0226795e+02 -3.4572652e+03 - -5.4105073e+02 -6.0369571e+02 -3.4562635e+03 - -5.4517184e+02 -6.0445614e+02 -3.4553358e+03 - -5.4935979e+02 -6.0460285e+02 -3.4544857e+03 - -5.5359007e+02 -6.0418632e+02 -3.4537164e+03 - -5.5783759e+02 -6.0325415e+02 -3.4530308e+03 - -5.6207661e+02 -6.0185134e+02 -3.4524315e+03 - -5.6628075e+02 -6.0002057e+02 -3.4519207e+03 - -5.7042295e+02 -5.9780238e+02 -3.4515001e+03 - -5.7447538e+02 -5.9523541e+02 -3.4511715e+03 - -5.7840942e+02 -5.9235657e+02 -3.4509359e+03 - -5.8219556e+02 -5.8920123e+02 -3.4507941e+03 - -5.8580334e+02 -5.8580334e+02 -3.4507469e+03 - -5.8920123e+02 -5.8219556e+02 -3.4507941e+03 - -5.9235657e+02 -5.7840942e+02 -3.4509359e+03 - -5.9523541e+02 -5.7447538e+02 -3.4511715e+03 - -5.9780238e+02 -5.7042295e+02 -3.4515001e+03 - -6.0002057e+02 -5.6628075e+02 -3.4519207e+03 - -6.0185134e+02 -5.6207661e+02 -3.4524315e+03 - -6.0325415e+02 -5.5783759e+02 -3.4530308e+03 - -6.0418632e+02 -5.5359007e+02 -3.4537164e+03 - -6.0460285e+02 -5.4935979e+02 -3.4544857e+03 - -6.0445614e+02 -5.4517184e+02 -3.4553358e+03 - -6.0369571e+02 -5.4105073e+02 -3.4562635e+03 - -6.0226795e+02 -5.3702036e+02 -3.4572652e+03 - -6.0011577e+02 -5.3310399e+02 -3.4583370e+03 - -5.9717827e+02 -5.2932428e+02 -3.4594746e+03 - -5.9339047e+02 -5.2570315e+02 -3.4606735e+03 - -5.8868294e+02 -5.2226175e+02 -3.4619285e+03 - -5.8298151e+02 -5.1902029e+02 -3.4632343e+03 - -5.7620706e+02 -5.1599794e+02 -3.4645851e+03 - -5.6827532e+02 -5.1321256e+02 -3.4659749e+03 - -5.5909688e+02 -5.1068046e+02 -3.4673969e+03 - -5.4857727e+02 -5.0841608e+02 -3.4688441e+03 - -5.3661742e+02 -5.0643155e+02 -3.4703090e+03 - -5.2311436e+02 -5.0473626e+02 -3.4717837e+03 - -5.0796241e+02 -5.0333630e+02 -3.4732596e+03 - -4.9105489e+02 -5.0223382e+02 -3.4747278e+03 - -4.7228654e+02 -5.0142643e+02 -3.4761787e+03 - -4.5155675e+02 -5.0090648e+02 -3.4776021e+03 - -4.2877364e+02 -5.0066041e+02 -3.4789876e+03 - -4.0385918e+02 -5.0066827e+02 -3.4803241e+03 - -3.7675525e+02 -5.0090326e+02 -3.4816000e+03 - -3.4743047e+02 -5.0133172e+02 -3.4828037e+03 - -3.1588763e+02 -5.0191342e+02 -3.4839231e+03 - -2.8217120e+02 -5.0260238e+02 -3.4849464e+03 - -2.4637417e+02 -5.0334832e+02 -3.4858618e+03 - -2.0864352e+02 -5.0409861e+02 -3.4866583e+03 - -1.6918325e+02 -5.0480095e+02 -3.4873257e+03 - -1.2825421e+02 -5.0540633e+02 -3.4878549e+03 - -8.6169981e+01 -5.0587226e+02 -3.4882386e+03 - -4.3288527e+01 -5.0616579e+02 -3.4884711e+03 - 0.0000000e+00 -5.0626602e+02 -3.4885489e+03 - 4.3288527e+01 -5.0616579e+02 -3.4884711e+03 - 8.6169981e+01 -5.0587226e+02 -3.4882386e+03 - 1.2825421e+02 -5.0540633e+02 -3.4878549e+03 - 1.6918325e+02 -5.0480095e+02 -3.4873257e+03 - 2.0864352e+02 -5.0409861e+02 -3.4866583e+03 - 2.4637417e+02 -5.0334832e+02 -3.4858618e+03 - 2.8217120e+02 -5.0260238e+02 -3.4849464e+03 - 3.1588763e+02 -5.0191342e+02 -3.4839231e+03 - 3.4743047e+02 -5.0133172e+02 -3.4828037e+03 - 3.7675525e+02 -5.0090326e+02 -3.4816000e+03 - 4.0385918e+02 -5.0066827e+02 -3.4803241e+03 - 4.2877364e+02 -5.0066041e+02 -3.4789876e+03 - 4.5155675e+02 -5.0090648e+02 -3.4776021e+03 - 4.7228654e+02 -5.0142643e+02 -3.4761787e+03 - 4.9105489e+02 -5.0223382e+02 -3.4747278e+03 - 5.0796241e+02 -5.0333630e+02 -3.4732596e+03 - 5.2311436e+02 -5.0473626e+02 -3.4717837e+03 - 5.3661742e+02 -5.0643155e+02 -3.4703090e+03 - 5.4857727e+02 -5.0841608e+02 -3.4688441e+03 - 5.5909688e+02 -5.1068046e+02 -3.4673969e+03 - 5.6827532e+02 -5.1321256e+02 -3.4659749e+03 - 5.7620706e+02 -5.1599794e+02 -3.4645851e+03 - 5.8298151e+02 -5.1902029e+02 -3.4632343e+03 - 5.8868294e+02 -5.2226175e+02 -3.4619285e+03 - 5.9339047e+02 -5.2570315e+02 -3.4606735e+03 - 5.9717827e+02 -5.2932428e+02 -3.4594746e+03 - 6.0011577e+02 -5.3310399e+02 -3.4583370e+03 - 6.0226795e+02 -5.3702036e+02 -3.4572652e+03 - 6.0369571e+02 -5.4105073e+02 -3.4562635e+03 - 6.0445614e+02 -5.4517184e+02 -3.4553358e+03 - 6.0460285e+02 -5.4935979e+02 -3.4544857e+03 - 6.0418632e+02 -5.5359007e+02 -3.4537164e+03 - 6.0325415e+02 -5.5783759e+02 -3.4530308e+03 - 6.0185134e+02 -5.6207661e+02 -3.4524315e+03 - 6.0002057e+02 -5.6628075e+02 -3.4519207e+03 - 5.9780238e+02 -5.7042295e+02 -3.4515001e+03 - 5.9523541e+02 -5.7447538e+02 -3.4511715e+03 - 5.9235657e+02 -5.7840942e+02 -3.4509359e+03 - 5.8920123e+02 -5.8219556e+02 -3.4507941e+03 - 5.8580334e+02 -5.8580334e+02 -3.4507469e+03 - 5.8219556e+02 -5.8920123e+02 -3.4507941e+03 - 5.7840942e+02 -5.9235657e+02 -3.4509359e+03 - 5.7447538e+02 -5.9523541e+02 -3.4511715e+03 - 5.7042295e+02 -5.9780238e+02 -3.4515001e+03 - 5.6628075e+02 -6.0002057e+02 -3.4519207e+03 - 5.6207661e+02 -6.0185134e+02 -3.4524315e+03 - 5.5783759e+02 -6.0325415e+02 -3.4530308e+03 - 5.5359007e+02 -6.0418632e+02 -3.4537164e+03 - 5.4935979e+02 -6.0460285e+02 -3.4544857e+03 - 5.4517184e+02 -6.0445614e+02 -3.4553358e+03 - 5.4105073e+02 -6.0369571e+02 -3.4562635e+03 - 5.3702036e+02 -6.0226795e+02 -3.4572652e+03 - 5.3310399e+02 -6.0011577e+02 -3.4583370e+03 - 5.2932428e+02 -5.9717827e+02 -3.4594746e+03 - 5.2570315e+02 -5.9339047e+02 -3.4606735e+03 - 5.2226175e+02 -5.8868294e+02 -3.4619285e+03 - 5.1902029e+02 -5.8298151e+02 -3.4632343e+03 - 5.1599794e+02 -5.7620706e+02 -3.4645851e+03 - 5.1321256e+02 -5.6827532e+02 -3.4659749e+03 - 5.1068046e+02 -5.5909688e+02 -3.4673969e+03 - 5.0841608e+02 -5.4857727e+02 -3.4688441e+03 - 5.0643155e+02 -5.3661742e+02 -3.4703090e+03 - 5.0473626e+02 -5.2311436e+02 -3.4717837e+03 - 5.0333630e+02 -5.0796241e+02 -3.4732596e+03 - 5.0223382e+02 -4.9105489e+02 -3.4747278e+03 - 5.0142643e+02 -4.7228654e+02 -3.4761787e+03 - 5.0090648e+02 -4.5155675e+02 -3.4776021e+03 - 5.0066041e+02 -4.2877364e+02 -3.4789876e+03 - 5.0066827e+02 -4.0385918e+02 -3.4803241e+03 - 5.0090326e+02 -3.7675525e+02 -3.4816000e+03 - 5.0133172e+02 -3.4743047e+02 -3.4828037e+03 - 5.0191342e+02 -3.1588763e+02 -3.4839231e+03 - 5.0260238e+02 -2.8217120e+02 -3.4849464e+03 - 5.0334832e+02 -2.4637417e+02 -3.4858618e+03 - 5.0409861e+02 -2.0864352e+02 -3.4866583e+03 - 5.0480095e+02 -1.6918325e+02 -3.4873257e+03 - 5.0540633e+02 -1.2825421e+02 -3.4878549e+03 - 5.0587226e+02 -8.6169981e+01 -3.4882386e+03 - 5.0616579e+02 -4.3288527e+01 -3.4884711e+03 - 5.0626602e+02 0.0000000e+00 -3.4885489e+03 - 4.6396309e+02 0.0000000e+00 -3.4982671e+03 - 4.6387163e+02 3.9612504e+01 -3.4982019e+03 - 4.6360382e+02 7.8856957e+01 -3.4980073e+03 - 4.6317877e+02 1.1738032e+02 -3.4976860e+03 - 4.6262665e+02 1.5485812e+02 -3.4972427e+03 - 4.6198644e+02 1.9100538e+02 -3.4966833e+03 - 4.6130312e+02 2.2558416e+02 -3.4960152e+03 - 4.6062479e+02 2.5840732e+02 -3.4952469e+03 - 4.5999992e+02 2.8933895e+02 -3.4943874e+03 - 4.5947492e+02 3.1829180e+02 -3.4934464e+03 - 4.5909232e+02 3.4522260e+02 -3.4924338e+03 - 4.5888935e+02 3.7012602e+02 -3.4913596e+03 - 4.5889724e+02 3.9302808e+02 -3.4902337e+03 - 4.5914083e+02 4.1397951e+02 -3.4890656e+03 - 4.5963866e+02 4.3304962e+02 -3.4878647e+03 - 4.6040326e+02 4.5032076e+02 -3.4866400e+03 - 4.6144166e+02 4.6588373e+02 -3.4854000e+03 - 4.6275596e+02 4.7983396e+02 -3.4841529e+03 - 4.6434397e+02 4.9226855e+02 -3.4829063e+03 - 4.6619981e+02 5.0328400e+02 -3.4816674e+03 - 4.6831450e+02 5.1297454e+02 -3.4804432e+03 - 4.7067647e+02 5.2143106e+02 -3.4792400e+03 - 4.7327200e+02 5.2874035e+02 -3.4780638e+03 - 4.7608564e+02 5.3498468e+02 -3.4769204e+03 - 4.7910047e+02 5.4024164e+02 -3.4758149e+03 - 4.8229842e+02 5.4458415e+02 -3.4747524e+03 - 4.8566044e+02 5.4808056e+02 -3.4737373e+03 - 4.8916668e+02 5.5079486e+02 -3.4727740e+03 - 4.9279661e+02 5.5278695e+02 -3.4718665e+03 - 4.9652909e+02 5.5411289e+02 -3.4710182e+03 - 5.0034243e+02 5.5482523e+02 -3.4702327e+03 - 5.0421446e+02 5.5497327e+02 -3.4695129e+03 - 5.0812248e+02 5.5460335e+02 -3.4688615e+03 - 5.1204332e+02 5.5375916e+02 -3.4682810e+03 - 5.1595328e+02 5.5248192e+02 -3.4677735e+03 - 5.1982814e+02 5.5081070e+02 -3.4673410e+03 - 5.2364306e+02 5.4878254e+02 -3.4669850e+03 - 5.2737259e+02 5.4643275e+02 -3.4667067e+03 - 5.3099057e+02 5.4379500e+02 -3.4665072e+03 - 5.3447006e+02 5.4090153e+02 -3.4663873e+03 - 5.3778329e+02 5.3778329e+02 -3.4663472e+03 - 5.4090153e+02 5.3447006e+02 -3.4663873e+03 - 5.4379500e+02 5.3099057e+02 -3.4665072e+03 - 5.4643275e+02 5.2737259e+02 -3.4667067e+03 - 5.4878254e+02 5.2364306e+02 -3.4669850e+03 - 5.5081070e+02 5.1982814e+02 -3.4673410e+03 - 5.5248192e+02 5.1595328e+02 -3.4677735e+03 - 5.5375916e+02 5.1204332e+02 -3.4682810e+03 - 5.5460335e+02 5.0812248e+02 -3.4688615e+03 - 5.5497327e+02 5.0421446e+02 -3.4695129e+03 - 5.5482523e+02 5.0034243e+02 -3.4702327e+03 - 5.5411289e+02 4.9652909e+02 -3.4710182e+03 - 5.5278695e+02 4.9279661e+02 -3.4718665e+03 - 5.5079486e+02 4.8916668e+02 -3.4727740e+03 - 5.4808056e+02 4.8566044e+02 -3.4737373e+03 - 5.4458415e+02 4.8229842e+02 -3.4747524e+03 - 5.4024164e+02 4.7910047e+02 -3.4758149e+03 - 5.3498468e+02 4.7608564e+02 -3.4769204e+03 - 5.2874035e+02 4.7327200e+02 -3.4780638e+03 - 5.2143106e+02 4.7067647e+02 -3.4792400e+03 - 5.1297454e+02 4.6831450e+02 -3.4804432e+03 - 5.0328400e+02 4.6619981e+02 -3.4816674e+03 - 4.9226855e+02 4.6434397e+02 -3.4829063e+03 - 4.7983396e+02 4.6275596e+02 -3.4841529e+03 - 4.6588373e+02 4.6144166e+02 -3.4854000e+03 - 4.5032076e+02 4.6040326e+02 -3.4866400e+03 - 4.3304962e+02 4.5963866e+02 -3.4878647e+03 - 4.1397951e+02 4.5914083e+02 -3.4890656e+03 - 3.9302808e+02 4.5889724e+02 -3.4902337e+03 - 3.7012602e+02 4.5888935e+02 -3.4913596e+03 - 3.4522260e+02 4.5909232e+02 -3.4924338e+03 - 3.1829180e+02 4.5947492e+02 -3.4934464e+03 - 2.8933895e+02 4.5999992e+02 -3.4943874e+03 - 2.5840732e+02 4.6062479e+02 -3.4952469e+03 - 2.2558416e+02 4.6130312e+02 -3.4960152e+03 - 1.9100538e+02 4.6198644e+02 -3.4966833e+03 - 1.5485812e+02 4.6262665e+02 -3.4972427e+03 - 1.1738032e+02 4.6317877e+02 -3.4976860e+03 - 7.8856957e+01 4.6360382e+02 -3.4980073e+03 - 3.9612504e+01 4.6387163e+02 -3.4982019e+03 - 0.0000000e+00 4.6396309e+02 -3.4982671e+03 - -3.9612504e+01 4.6387163e+02 -3.4982019e+03 - -7.8856957e+01 4.6360382e+02 -3.4980073e+03 - -1.1738032e+02 4.6317877e+02 -3.4976860e+03 - -1.5485812e+02 4.6262665e+02 -3.4972427e+03 - -1.9100538e+02 4.6198644e+02 -3.4966833e+03 - -2.2558416e+02 4.6130312e+02 -3.4960152e+03 - -2.5840732e+02 4.6062479e+02 -3.4952469e+03 - -2.8933895e+02 4.5999992e+02 -3.4943874e+03 - -3.1829180e+02 4.5947492e+02 -3.4934464e+03 - -3.4522260e+02 4.5909232e+02 -3.4924338e+03 - -3.7012602e+02 4.5888935e+02 -3.4913596e+03 - -3.9302808e+02 4.5889724e+02 -3.4902337e+03 - -4.1397951e+02 4.5914083e+02 -3.4890656e+03 - -4.3304962e+02 4.5963866e+02 -3.4878647e+03 - -4.5032076e+02 4.6040326e+02 -3.4866400e+03 - -4.6588373e+02 4.6144166e+02 -3.4854000e+03 - -4.7983396e+02 4.6275596e+02 -3.4841529e+03 - -4.9226855e+02 4.6434397e+02 -3.4829063e+03 - -5.0328400e+02 4.6619981e+02 -3.4816674e+03 - -5.1297454e+02 4.6831450e+02 -3.4804432e+03 - -5.2143106e+02 4.7067647e+02 -3.4792400e+03 - -5.2874035e+02 4.7327200e+02 -3.4780638e+03 - -5.3498468e+02 4.7608564e+02 -3.4769204e+03 - -5.4024164e+02 4.7910047e+02 -3.4758149e+03 - -5.4458415e+02 4.8229842e+02 -3.4747524e+03 - -5.4808056e+02 4.8566044e+02 -3.4737373e+03 - -5.5079486e+02 4.8916668e+02 -3.4727740e+03 - -5.5278695e+02 4.9279661e+02 -3.4718665e+03 - -5.5411289e+02 4.9652909e+02 -3.4710182e+03 - -5.5482523e+02 5.0034243e+02 -3.4702327e+03 - -5.5497327e+02 5.0421446e+02 -3.4695129e+03 - -5.5460335e+02 5.0812248e+02 -3.4688615e+03 - -5.5375916e+02 5.1204332e+02 -3.4682810e+03 - -5.5248192e+02 5.1595328e+02 -3.4677735e+03 - -5.5081070e+02 5.1982814e+02 -3.4673410e+03 - -5.4878254e+02 5.2364306e+02 -3.4669850e+03 - -5.4643275e+02 5.2737259e+02 -3.4667067e+03 - -5.4379500e+02 5.3099057e+02 -3.4665072e+03 - -5.4090153e+02 5.3447006e+02 -3.4663873e+03 - -5.3778329e+02 5.3778329e+02 -3.4663472e+03 - -5.3447006e+02 5.4090153e+02 -3.4663873e+03 - -5.3099057e+02 5.4379500e+02 -3.4665072e+03 - -5.2737259e+02 5.4643275e+02 -3.4667067e+03 - -5.2364306e+02 5.4878254e+02 -3.4669850e+03 - -5.1982814e+02 5.5081070e+02 -3.4673410e+03 - -5.1595328e+02 5.5248192e+02 -3.4677735e+03 - -5.1204332e+02 5.5375916e+02 -3.4682810e+03 - -5.0812248e+02 5.5460335e+02 -3.4688615e+03 - -5.0421446e+02 5.5497327e+02 -3.4695129e+03 - -5.0034243e+02 5.5482523e+02 -3.4702327e+03 - -4.9652909e+02 5.5411289e+02 -3.4710182e+03 - -4.9279661e+02 5.5278695e+02 -3.4718665e+03 - -4.8916668e+02 5.5079486e+02 -3.4727740e+03 - -4.8566044e+02 5.4808056e+02 -3.4737373e+03 - -4.8229842e+02 5.4458415e+02 -3.4747524e+03 - -4.7910047e+02 5.4024164e+02 -3.4758149e+03 - -4.7608564e+02 5.3498468e+02 -3.4769204e+03 - -4.7327200e+02 5.2874035e+02 -3.4780638e+03 - -4.7067647e+02 5.2143106e+02 -3.4792400e+03 - -4.6831450e+02 5.1297454e+02 -3.4804432e+03 - -4.6619981e+02 5.0328400e+02 -3.4816674e+03 - -4.6434397e+02 4.9226855e+02 -3.4829063e+03 - -4.6275596e+02 4.7983396e+02 -3.4841529e+03 - -4.6144166e+02 4.6588373e+02 -3.4854000e+03 - -4.6040326e+02 4.5032076e+02 -3.4866400e+03 - -4.5963866e+02 4.3304962e+02 -3.4878647e+03 - -4.5914083e+02 4.1397951e+02 -3.4890656e+03 - -4.5889724e+02 3.9302808e+02 -3.4902337e+03 - -4.5888935e+02 3.7012602e+02 -3.4913596e+03 - -4.5909232e+02 3.4522260e+02 -3.4924338e+03 - -4.5947492e+02 3.1829180e+02 -3.4934464e+03 - -4.5999992e+02 2.8933895e+02 -3.4943874e+03 - -4.6062479e+02 2.5840732e+02 -3.4952469e+03 - -4.6130312e+02 2.2558416e+02 -3.4960152e+03 - -4.6198644e+02 1.9100538e+02 -3.4966833e+03 - -4.6262665e+02 1.5485812e+02 -3.4972427e+03 - -4.6317877e+02 1.1738032e+02 -3.4976860e+03 - -4.6360382e+02 7.8856957e+01 -3.4980073e+03 - -4.6387163e+02 3.9612504e+01 -3.4982019e+03 - -4.6396309e+02 0.0000000e+00 -3.4982671e+03 - -4.6387163e+02 -3.9612504e+01 -3.4982019e+03 - -4.6360382e+02 -7.8856957e+01 -3.4980073e+03 - -4.6317877e+02 -1.1738032e+02 -3.4976860e+03 - -4.6262665e+02 -1.5485812e+02 -3.4972427e+03 - -4.6198644e+02 -1.9100538e+02 -3.4966833e+03 - -4.6130312e+02 -2.2558416e+02 -3.4960152e+03 - -4.6062479e+02 -2.5840732e+02 -3.4952469e+03 - -4.5999992e+02 -2.8933895e+02 -3.4943874e+03 - -4.5947492e+02 -3.1829180e+02 -3.4934464e+03 - -4.5909232e+02 -3.4522260e+02 -3.4924338e+03 - -4.5888935e+02 -3.7012602e+02 -3.4913596e+03 - -4.5889724e+02 -3.9302808e+02 -3.4902337e+03 - -4.5914083e+02 -4.1397951e+02 -3.4890656e+03 - -4.5963866e+02 -4.3304962e+02 -3.4878647e+03 - -4.6040326e+02 -4.5032076e+02 -3.4866400e+03 - -4.6144166e+02 -4.6588373e+02 -3.4854000e+03 - -4.6275596e+02 -4.7983396e+02 -3.4841529e+03 - -4.6434397e+02 -4.9226855e+02 -3.4829063e+03 - -4.6619981e+02 -5.0328400e+02 -3.4816674e+03 - -4.6831450e+02 -5.1297454e+02 -3.4804432e+03 - -4.7067647e+02 -5.2143106e+02 -3.4792400e+03 - -4.7327200e+02 -5.2874035e+02 -3.4780638e+03 - -4.7608564e+02 -5.3498468e+02 -3.4769204e+03 - -4.7910047e+02 -5.4024164e+02 -3.4758149e+03 - -4.8229842e+02 -5.4458415e+02 -3.4747524e+03 - -4.8566044e+02 -5.4808056e+02 -3.4737373e+03 - -4.8916668e+02 -5.5079486e+02 -3.4727740e+03 - -4.9279661e+02 -5.5278695e+02 -3.4718665e+03 - -4.9652909e+02 -5.5411289e+02 -3.4710182e+03 - -5.0034243e+02 -5.5482523e+02 -3.4702327e+03 - -5.0421446e+02 -5.5497327e+02 -3.4695129e+03 - -5.0812248e+02 -5.5460335e+02 -3.4688615e+03 - -5.1204332e+02 -5.5375916e+02 -3.4682810e+03 - -5.1595328e+02 -5.5248192e+02 -3.4677735e+03 - -5.1982814e+02 -5.5081070e+02 -3.4673410e+03 - -5.2364306e+02 -5.4878254e+02 -3.4669850e+03 - -5.2737259e+02 -5.4643275e+02 -3.4667067e+03 - -5.3099057e+02 -5.4379500e+02 -3.4665072e+03 - -5.3447006e+02 -5.4090153e+02 -3.4663873e+03 - -5.3778329e+02 -5.3778329e+02 -3.4663472e+03 - -5.4090153e+02 -5.3447006e+02 -3.4663873e+03 - -5.4379500e+02 -5.3099057e+02 -3.4665072e+03 - -5.4643275e+02 -5.2737259e+02 -3.4667067e+03 - -5.4878254e+02 -5.2364306e+02 -3.4669850e+03 - -5.5081070e+02 -5.1982814e+02 -3.4673410e+03 - -5.5248192e+02 -5.1595328e+02 -3.4677735e+03 - -5.5375916e+02 -5.1204332e+02 -3.4682810e+03 - -5.5460335e+02 -5.0812248e+02 -3.4688615e+03 - -5.5497327e+02 -5.0421446e+02 -3.4695129e+03 - -5.5482523e+02 -5.0034243e+02 -3.4702327e+03 - -5.5411289e+02 -4.9652909e+02 -3.4710182e+03 - -5.5278695e+02 -4.9279661e+02 -3.4718665e+03 - -5.5079486e+02 -4.8916668e+02 -3.4727740e+03 - -5.4808056e+02 -4.8566044e+02 -3.4737373e+03 - -5.4458415e+02 -4.8229842e+02 -3.4747524e+03 - -5.4024164e+02 -4.7910047e+02 -3.4758149e+03 - -5.3498468e+02 -4.7608564e+02 -3.4769204e+03 - -5.2874035e+02 -4.7327200e+02 -3.4780638e+03 - -5.2143106e+02 -4.7067647e+02 -3.4792400e+03 - -5.1297454e+02 -4.6831450e+02 -3.4804432e+03 - -5.0328400e+02 -4.6619981e+02 -3.4816674e+03 - -4.9226855e+02 -4.6434397e+02 -3.4829063e+03 - -4.7983396e+02 -4.6275596e+02 -3.4841529e+03 - -4.6588373e+02 -4.6144166e+02 -3.4854000e+03 - -4.5032076e+02 -4.6040326e+02 -3.4866400e+03 - -4.3304962e+02 -4.5963866e+02 -3.4878647e+03 - -4.1397951e+02 -4.5914083e+02 -3.4890656e+03 - -3.9302808e+02 -4.5889724e+02 -3.4902337e+03 - -3.7012602e+02 -4.5888935e+02 -3.4913596e+03 - -3.4522260e+02 -4.5909232e+02 -3.4924338e+03 - -3.1829180e+02 -4.5947492e+02 -3.4934464e+03 - -2.8933895e+02 -4.5999992e+02 -3.4943874e+03 - -2.5840732e+02 -4.6062479e+02 -3.4952469e+03 - -2.2558416e+02 -4.6130312e+02 -3.4960152e+03 - -1.9100538e+02 -4.6198644e+02 -3.4966833e+03 - -1.5485812e+02 -4.6262665e+02 -3.4972427e+03 - -1.1738032e+02 -4.6317877e+02 -3.4976860e+03 - -7.8856957e+01 -4.6360382e+02 -3.4980073e+03 - -3.9612504e+01 -4.6387163e+02 -3.4982019e+03 - 0.0000000e+00 -4.6396309e+02 -3.4982671e+03 - 3.9612504e+01 -4.6387163e+02 -3.4982019e+03 - 7.8856957e+01 -4.6360382e+02 -3.4980073e+03 - 1.1738032e+02 -4.6317877e+02 -3.4976860e+03 - 1.5485812e+02 -4.6262665e+02 -3.4972427e+03 - 1.9100538e+02 -4.6198644e+02 -3.4966833e+03 - 2.2558416e+02 -4.6130312e+02 -3.4960152e+03 - 2.5840732e+02 -4.6062479e+02 -3.4952469e+03 - 2.8933895e+02 -4.5999992e+02 -3.4943874e+03 - 3.1829180e+02 -4.5947492e+02 -3.4934464e+03 - 3.4522260e+02 -4.5909232e+02 -3.4924338e+03 - 3.7012602e+02 -4.5888935e+02 -3.4913596e+03 - 3.9302808e+02 -4.5889724e+02 -3.4902337e+03 - 4.1397951e+02 -4.5914083e+02 -3.4890656e+03 - 4.3304962e+02 -4.5963866e+02 -3.4878647e+03 - 4.5032076e+02 -4.6040326e+02 -3.4866400e+03 - 4.6588373e+02 -4.6144166e+02 -3.4854000e+03 - 4.7983396e+02 -4.6275596e+02 -3.4841529e+03 - 4.9226855e+02 -4.6434397e+02 -3.4829063e+03 - 5.0328400e+02 -4.6619981e+02 -3.4816674e+03 - 5.1297454e+02 -4.6831450e+02 -3.4804432e+03 - 5.2143106e+02 -4.7067647e+02 -3.4792400e+03 - 5.2874035e+02 -4.7327200e+02 -3.4780638e+03 - 5.3498468e+02 -4.7608564e+02 -3.4769204e+03 - 5.4024164e+02 -4.7910047e+02 -3.4758149e+03 - 5.4458415e+02 -4.8229842e+02 -3.4747524e+03 - 5.4808056e+02 -4.8566044e+02 -3.4737373e+03 - 5.5079486e+02 -4.8916668e+02 -3.4727740e+03 - 5.5278695e+02 -4.9279661e+02 -3.4718665e+03 - 5.5411289e+02 -4.9652909e+02 -3.4710182e+03 - 5.5482523e+02 -5.0034243e+02 -3.4702327e+03 - 5.5497327e+02 -5.0421446e+02 -3.4695129e+03 - 5.5460335e+02 -5.0812248e+02 -3.4688615e+03 - 5.5375916e+02 -5.1204332e+02 -3.4682810e+03 - 5.5248192e+02 -5.1595328e+02 -3.4677735e+03 - 5.5081070e+02 -5.1982814e+02 -3.4673410e+03 - 5.4878254e+02 -5.2364306e+02 -3.4669850e+03 - 5.4643275e+02 -5.2737259e+02 -3.4667067e+03 - 5.4379500e+02 -5.3099057e+02 -3.4665072e+03 - 5.4090153e+02 -5.3447006e+02 -3.4663873e+03 - 5.3778329e+02 -5.3778329e+02 -3.4663472e+03 - 5.3447006e+02 -5.4090153e+02 -3.4663873e+03 - 5.3099057e+02 -5.4379500e+02 -3.4665072e+03 - 5.2737259e+02 -5.4643275e+02 -3.4667067e+03 - 5.2364306e+02 -5.4878254e+02 -3.4669850e+03 - 5.1982814e+02 -5.5081070e+02 -3.4673410e+03 - 5.1595328e+02 -5.5248192e+02 -3.4677735e+03 - 5.1204332e+02 -5.5375916e+02 -3.4682810e+03 - 5.0812248e+02 -5.5460335e+02 -3.4688615e+03 - 5.0421446e+02 -5.5497327e+02 -3.4695129e+03 - 5.0034243e+02 -5.5482523e+02 -3.4702327e+03 - 4.9652909e+02 -5.5411289e+02 -3.4710182e+03 - 4.9279661e+02 -5.5278695e+02 -3.4718665e+03 - 4.8916668e+02 -5.5079486e+02 -3.4727740e+03 - 4.8566044e+02 -5.4808056e+02 -3.4737373e+03 - 4.8229842e+02 -5.4458415e+02 -3.4747524e+03 - 4.7910047e+02 -5.4024164e+02 -3.4758149e+03 - 4.7608564e+02 -5.3498468e+02 -3.4769204e+03 - 4.7327200e+02 -5.2874035e+02 -3.4780638e+03 - 4.7067647e+02 -5.2143106e+02 -3.4792400e+03 - 4.6831450e+02 -5.1297454e+02 -3.4804432e+03 - 4.6619981e+02 -5.0328400e+02 -3.4816674e+03 - 4.6434397e+02 -4.9226855e+02 -3.4829063e+03 - 4.6275596e+02 -4.7983396e+02 -3.4841529e+03 - 4.6144166e+02 -4.6588373e+02 -3.4854000e+03 - 4.6040326e+02 -4.5032076e+02 -3.4866400e+03 - 4.5963866e+02 -4.3304962e+02 -3.4878647e+03 - 4.5914083e+02 -4.1397951e+02 -3.4890656e+03 - 4.5889724e+02 -3.9302808e+02 -3.4902337e+03 - 4.5888935e+02 -3.7012602e+02 -3.4913596e+03 - 4.5909232e+02 -3.4522260e+02 -3.4924338e+03 - 4.5947492e+02 -3.1829180e+02 -3.4934464e+03 - 4.5999992e+02 -2.8933895e+02 -3.4943874e+03 - 4.6062479e+02 -2.5840732e+02 -3.4952469e+03 - 4.6130312e+02 -2.2558416e+02 -3.4960152e+03 - 4.6198644e+02 -1.9100538e+02 -3.4966833e+03 - 4.6262665e+02 -1.5485812e+02 -3.4972427e+03 - 4.6317877e+02 -1.1738032e+02 -3.4976860e+03 - 4.6360382e+02 -7.8856957e+01 -3.4980073e+03 - 4.6387163e+02 -3.9612504e+01 -3.4982019e+03 - 4.6396309e+02 -2.4067136e-09 -3.4982671e+03 - 4.2168801e+02 0.0000000e+00 -3.5071088e+03 - 4.2160524e+02 3.5955249e+01 -3.5070551e+03 - 4.2136288e+02 7.1580037e+01 -3.5068948e+03 - 4.2097829e+02 1.0655715e+02 -3.5066301e+03 - 4.2047886e+02 1.4059460e+02 -3.5062646e+03 - 4.1990002e+02 1.7343535e+02 -3.5058033e+03 - 4.1928271e+02 2.0486404e+02 -3.5052521e+03 - 4.1867077e+02 2.3471050e+02 -3.5046177e+03 - 4.1810846e+02 2.6285025e+02 -3.5039076e+03 - 4.1763823e+02 2.8920237e+02 -3.5031297e+03 - 4.1729901e+02 3.1372547e+02 -3.5022920e+03 - 4.1712496e+02 3.3641249e+02 -3.5014027e+03 - 4.1714477e+02 3.5728486e+02 -3.5004699e+03 - 4.1738127e+02 3.7638660e+02 -3.4995016e+03 - 4.1785150e+02 3.9377888e+02 -3.4985056e+03 - 4.1856695e+02 4.0953504e+02 -3.4974893e+03 - 4.1953403e+02 4.2373643e+02 -3.4964597e+03 - 4.2075456e+02 4.3646894e+02 -3.4954238e+03 - 4.2222639e+02 4.4782022e+02 -3.4943880e+03 - 4.2394394e+02 4.5787769e+02 -3.4933582e+03 - 4.2589874e+02 4.6672688e+02 -3.4923403e+03 - 4.2807989e+02 4.7445046e+02 -3.4913397e+03 - 4.3047453e+02 4.8112747e+02 -3.4903614e+03 - 4.3306817e+02 4.8683294e+02 -3.4894101e+03 - 4.3584503e+02 4.9163770e+02 -3.4884903e+03 - 4.3878822e+02 4.9560835e+02 -3.4876061e+03 - 4.4188003e+02 4.9880731e+02 -3.4867614e+03 - 4.4510201e+02 5.0129306e+02 -3.4859597e+03 - 4.4843513e+02 5.0312029e+02 -3.4852044e+03 - 4.5185984e+02 5.0434018e+02 -3.4844985e+03 - 4.5535617e+02 5.0500068e+02 -3.4838447e+03 - 4.5890370e+02 5.0514671e+02 -3.4832456e+03 - 4.6248163e+02 5.0482050e+02 -3.4827035e+03 - 4.6606874e+02 5.0406176e+02 -3.4822204e+03 - 4.6964340e+02 5.0290797e+02 -3.4817982e+03 - 4.7318353e+02 5.0139458e+02 -3.4814382e+03 - 4.7666656e+02 4.9955520e+02 -3.4811420e+03 - 4.8006938e+02 4.9742180e+02 -3.4809104e+03 - 4.8336826e+02 4.9502487e+02 -3.4807444e+03 - 4.8653882e+02 4.9239359e+02 -3.4806446e+03 - 4.8955593e+02 4.8955593e+02 -3.4806113e+03 - 4.9239359e+02 4.8653882e+02 -3.4806446e+03 - 4.9502487e+02 4.8336826e+02 -3.4807444e+03 - 4.9742180e+02 4.8006938e+02 -3.4809104e+03 - 4.9955520e+02 4.7666656e+02 -3.4811420e+03 - 5.0139458e+02 4.7318353e+02 -3.4814382e+03 - 5.0290797e+02 4.6964340e+02 -3.4817982e+03 - 5.0406176e+02 4.6606874e+02 -3.4822204e+03 - 5.0482050e+02 4.6248163e+02 -3.4827035e+03 - 5.0514671e+02 4.5890370e+02 -3.4832456e+03 - 5.0500068e+02 4.5535617e+02 -3.4838447e+03 - 5.0434018e+02 4.5185984e+02 -3.4844985e+03 - 5.0312029e+02 4.4843513e+02 -3.4852044e+03 - 5.0129306e+02 4.4510201e+02 -3.4859597e+03 - 4.9880731e+02 4.4188003e+02 -3.4867614e+03 - 4.9560835e+02 4.3878822e+02 -3.4876061e+03 - 4.9163770e+02 4.3584503e+02 -3.4884903e+03 - 4.8683294e+02 4.3306817e+02 -3.4894101e+03 - 4.8112747e+02 4.3047453e+02 -3.4903614e+03 - 4.7445046e+02 4.2807989e+02 -3.4913397e+03 - 4.6672688e+02 4.2589874e+02 -3.4923403e+03 - 4.5787769e+02 4.2394394e+02 -3.4933582e+03 - 4.4782022e+02 4.2222639e+02 -3.4943880e+03 - 4.3646894e+02 4.2075456e+02 -3.4954238e+03 - 4.2373643e+02 4.1953403e+02 -3.4964597e+03 - 4.0953504e+02 4.1856695e+02 -3.4974893e+03 - 3.9377888e+02 4.1785150e+02 -3.4985056e+03 - 3.7638660e+02 4.1738127e+02 -3.4995016e+03 - 3.5728486e+02 4.1714477e+02 -3.5004699e+03 - 3.3641249e+02 4.1712496e+02 -3.5014027e+03 - 3.1372547e+02 4.1729901e+02 -3.5022920e+03 - 2.8920237e+02 4.1763823e+02 -3.5031297e+03 - 2.6285025e+02 4.1810846e+02 -3.5039076e+03 - 2.3471050e+02 4.1867077e+02 -3.5046177e+03 - 2.0486404e+02 4.1928271e+02 -3.5052521e+03 - 1.7343535e+02 4.1990002e+02 -3.5058033e+03 - 1.4059460e+02 4.2047886e+02 -3.5062646e+03 - 1.0655715e+02 4.2097829e+02 -3.5066301e+03 - 7.1580037e+01 4.2136288e+02 -3.5068948e+03 - 3.5955249e+01 4.2160524e+02 -3.5070551e+03 - 0.0000000e+00 4.2168801e+02 -3.5071088e+03 - -3.5955249e+01 4.2160524e+02 -3.5070551e+03 - -7.1580037e+01 4.2136288e+02 -3.5068948e+03 - -1.0655715e+02 4.2097829e+02 -3.5066301e+03 - -1.4059460e+02 4.2047886e+02 -3.5062646e+03 - -1.7343535e+02 4.1990002e+02 -3.5058033e+03 - -2.0486404e+02 4.1928271e+02 -3.5052521e+03 - -2.3471050e+02 4.1867077e+02 -3.5046177e+03 - -2.6285025e+02 4.1810846e+02 -3.5039076e+03 - -2.8920237e+02 4.1763823e+02 -3.5031297e+03 - -3.1372547e+02 4.1729901e+02 -3.5022920e+03 - -3.3641249e+02 4.1712496e+02 -3.5014027e+03 - -3.5728486e+02 4.1714477e+02 -3.5004699e+03 - -3.7638660e+02 4.1738127e+02 -3.4995016e+03 - -3.9377888e+02 4.1785150e+02 -3.4985056e+03 - -4.0953504e+02 4.1856695e+02 -3.4974893e+03 - -4.2373643e+02 4.1953403e+02 -3.4964597e+03 - -4.3646894e+02 4.2075456e+02 -3.4954238e+03 - -4.4782022e+02 4.2222639e+02 -3.4943880e+03 - -4.5787769e+02 4.2394394e+02 -3.4933582e+03 - -4.6672688e+02 4.2589874e+02 -3.4923403e+03 - -4.7445046e+02 4.2807989e+02 -3.4913397e+03 - -4.8112747e+02 4.3047453e+02 -3.4903614e+03 - -4.8683294e+02 4.3306817e+02 -3.4894101e+03 - -4.9163770e+02 4.3584503e+02 -3.4884903e+03 - -4.9560835e+02 4.3878822e+02 -3.4876061e+03 - -4.9880731e+02 4.4188003e+02 -3.4867614e+03 - -5.0129306e+02 4.4510201e+02 -3.4859597e+03 - -5.0312029e+02 4.4843513e+02 -3.4852044e+03 - -5.0434018e+02 4.5185984e+02 -3.4844985e+03 - -5.0500068e+02 4.5535617e+02 -3.4838447e+03 - -5.0514671e+02 4.5890370e+02 -3.4832456e+03 - -5.0482050e+02 4.6248163e+02 -3.4827035e+03 - -5.0406176e+02 4.6606874e+02 -3.4822204e+03 - -5.0290797e+02 4.6964340e+02 -3.4817982e+03 - -5.0139458e+02 4.7318353e+02 -3.4814382e+03 - -4.9955520e+02 4.7666656e+02 -3.4811420e+03 - -4.9742180e+02 4.8006938e+02 -3.4809104e+03 - -4.9502487e+02 4.8336826e+02 -3.4807444e+03 - -4.9239359e+02 4.8653882e+02 -3.4806446e+03 - -4.8955593e+02 4.8955593e+02 -3.4806113e+03 - -4.8653882e+02 4.9239359e+02 -3.4806446e+03 - -4.8336826e+02 4.9502487e+02 -3.4807444e+03 - -4.8006938e+02 4.9742180e+02 -3.4809104e+03 - -4.7666656e+02 4.9955520e+02 -3.4811420e+03 - -4.7318353e+02 5.0139458e+02 -3.4814382e+03 - -4.6964340e+02 5.0290797e+02 -3.4817982e+03 - -4.6606874e+02 5.0406176e+02 -3.4822204e+03 - -4.6248163e+02 5.0482050e+02 -3.4827035e+03 - -4.5890370e+02 5.0514671e+02 -3.4832456e+03 - -4.5535617e+02 5.0500068e+02 -3.4838447e+03 - -4.5185984e+02 5.0434018e+02 -3.4844985e+03 - -4.4843513e+02 5.0312029e+02 -3.4852044e+03 - -4.4510201e+02 5.0129306e+02 -3.4859597e+03 - -4.4188003e+02 4.9880731e+02 -3.4867614e+03 - -4.3878822e+02 4.9560835e+02 -3.4876061e+03 - -4.3584503e+02 4.9163770e+02 -3.4884903e+03 - -4.3306817e+02 4.8683294e+02 -3.4894101e+03 - -4.3047453e+02 4.8112747e+02 -3.4903614e+03 - -4.2807989e+02 4.7445046e+02 -3.4913397e+03 - -4.2589874e+02 4.6672688e+02 -3.4923403e+03 - -4.2394394e+02 4.5787769e+02 -3.4933582e+03 - -4.2222639e+02 4.4782022e+02 -3.4943880e+03 - -4.2075456e+02 4.3646894e+02 -3.4954238e+03 - -4.1953403e+02 4.2373643e+02 -3.4964597e+03 - -4.1856695e+02 4.0953504e+02 -3.4974893e+03 - -4.1785150e+02 3.9377888e+02 -3.4985056e+03 - -4.1738127e+02 3.7638660e+02 -3.4995016e+03 - -4.1714477e+02 3.5728486e+02 -3.5004699e+03 - -4.1712496e+02 3.3641249e+02 -3.5014027e+03 - -4.1729901e+02 3.1372547e+02 -3.5022920e+03 - -4.1763823e+02 2.8920237e+02 -3.5031297e+03 - -4.1810846e+02 2.6285025e+02 -3.5039076e+03 - -4.1867077e+02 2.3471050e+02 -3.5046177e+03 - -4.1928271e+02 2.0486404e+02 -3.5052521e+03 - -4.1990002e+02 1.7343535e+02 -3.5058033e+03 - -4.2047886e+02 1.4059460e+02 -3.5062646e+03 - -4.2097829e+02 1.0655715e+02 -3.5066301e+03 - -4.2136288e+02 7.1580037e+01 -3.5068948e+03 - -4.2160524e+02 3.5955249e+01 -3.5070551e+03 - -4.2168801e+02 0.0000000e+00 -3.5071088e+03 - -4.2160524e+02 -3.5955249e+01 -3.5070551e+03 - -4.2136288e+02 -7.1580037e+01 -3.5068948e+03 - -4.2097829e+02 -1.0655715e+02 -3.5066301e+03 - -4.2047886e+02 -1.4059460e+02 -3.5062646e+03 - -4.1990002e+02 -1.7343535e+02 -3.5058033e+03 - -4.1928271e+02 -2.0486404e+02 -3.5052521e+03 - -4.1867077e+02 -2.3471050e+02 -3.5046177e+03 - -4.1810846e+02 -2.6285025e+02 -3.5039076e+03 - -4.1763823e+02 -2.8920237e+02 -3.5031297e+03 - -4.1729901e+02 -3.1372547e+02 -3.5022920e+03 - -4.1712496e+02 -3.3641249e+02 -3.5014027e+03 - -4.1714477e+02 -3.5728486e+02 -3.5004699e+03 - -4.1738127e+02 -3.7638660e+02 -3.4995016e+03 - -4.1785150e+02 -3.9377888e+02 -3.4985056e+03 - -4.1856695e+02 -4.0953504e+02 -3.4974893e+03 - -4.1953403e+02 -4.2373643e+02 -3.4964597e+03 - -4.2075456e+02 -4.3646894e+02 -3.4954238e+03 - -4.2222639e+02 -4.4782022e+02 -3.4943880e+03 - -4.2394394e+02 -4.5787769e+02 -3.4933582e+03 - -4.2589874e+02 -4.6672688e+02 -3.4923403e+03 - -4.2807989e+02 -4.7445046e+02 -3.4913397e+03 - -4.3047453e+02 -4.8112747e+02 -3.4903614e+03 - -4.3306817e+02 -4.8683294e+02 -3.4894101e+03 - -4.3584503e+02 -4.9163770e+02 -3.4884903e+03 - -4.3878822e+02 -4.9560835e+02 -3.4876061e+03 - -4.4188003e+02 -4.9880731e+02 -3.4867614e+03 - -4.4510201e+02 -5.0129306e+02 -3.4859597e+03 - -4.4843513e+02 -5.0312029e+02 -3.4852044e+03 - -4.5185984e+02 -5.0434018e+02 -3.4844985e+03 - -4.5535617e+02 -5.0500068e+02 -3.4838447e+03 - -4.5890370e+02 -5.0514671e+02 -3.4832456e+03 - -4.6248163e+02 -5.0482050e+02 -3.4827035e+03 - -4.6606874e+02 -5.0406176e+02 -3.4822204e+03 - -4.6964340e+02 -5.0290797e+02 -3.4817982e+03 - -4.7318353e+02 -5.0139458e+02 -3.4814382e+03 - -4.7666656e+02 -4.9955520e+02 -3.4811420e+03 - -4.8006938e+02 -4.9742180e+02 -3.4809104e+03 - -4.8336826e+02 -4.9502487e+02 -3.4807444e+03 - -4.8653882e+02 -4.9239359e+02 -3.4806446e+03 - -4.8955593e+02 -4.8955593e+02 -3.4806113e+03 - -4.9239359e+02 -4.8653882e+02 -3.4806446e+03 - -4.9502487e+02 -4.8336826e+02 -3.4807444e+03 - -4.9742180e+02 -4.8006938e+02 -3.4809104e+03 - -4.9955520e+02 -4.7666656e+02 -3.4811420e+03 - -5.0139458e+02 -4.7318353e+02 -3.4814382e+03 - -5.0290797e+02 -4.6964340e+02 -3.4817982e+03 - -5.0406176e+02 -4.6606874e+02 -3.4822204e+03 - -5.0482050e+02 -4.6248163e+02 -3.4827035e+03 - -5.0514671e+02 -4.5890370e+02 -3.4832456e+03 - -5.0500068e+02 -4.5535617e+02 -3.4838447e+03 - -5.0434018e+02 -4.5185984e+02 -3.4844985e+03 - -5.0312029e+02 -4.4843513e+02 -3.4852044e+03 - -5.0129306e+02 -4.4510201e+02 -3.4859597e+03 - -4.9880731e+02 -4.4188003e+02 -3.4867614e+03 - -4.9560835e+02 -4.3878822e+02 -3.4876061e+03 - -4.9163770e+02 -4.3584503e+02 -3.4884903e+03 - -4.8683294e+02 -4.3306817e+02 -3.4894101e+03 - -4.8112747e+02 -4.3047453e+02 -3.4903614e+03 - -4.7445046e+02 -4.2807989e+02 -3.4913397e+03 - -4.6672688e+02 -4.2589874e+02 -3.4923403e+03 - -4.5787769e+02 -4.2394394e+02 -3.4933582e+03 - -4.4782022e+02 -4.2222639e+02 -3.4943880e+03 - -4.3646894e+02 -4.2075456e+02 -3.4954238e+03 - -4.2373643e+02 -4.1953403e+02 -3.4964597e+03 - -4.0953504e+02 -4.1856695e+02 -3.4974893e+03 - -3.9377888e+02 -4.1785150e+02 -3.4985056e+03 - -3.7638660e+02 -4.1738127e+02 -3.4995016e+03 - -3.5728486e+02 -4.1714477e+02 -3.5004699e+03 - -3.3641249e+02 -4.1712496e+02 -3.5014027e+03 - -3.1372547e+02 -4.1729901e+02 -3.5022920e+03 - -2.8920237e+02 -4.1763823e+02 -3.5031297e+03 - -2.6285025e+02 -4.1810846e+02 -3.5039076e+03 - -2.3471050e+02 -4.1867077e+02 -3.5046177e+03 - -2.0486404e+02 -4.1928271e+02 -3.5052521e+03 - -1.7343535e+02 -4.1990002e+02 -3.5058033e+03 - -1.4059460e+02 -4.2047886e+02 -3.5062646e+03 - -1.0655715e+02 -4.2097829e+02 -3.5066301e+03 - -7.1580037e+01 -4.2136288e+02 -3.5068948e+03 - -3.5955249e+01 -4.2160524e+02 -3.5070551e+03 - 0.0000000e+00 -4.2168801e+02 -3.5071088e+03 - 3.5955249e+01 -4.2160524e+02 -3.5070551e+03 - 7.1580037e+01 -4.2136288e+02 -3.5068948e+03 - 1.0655715e+02 -4.2097829e+02 -3.5066301e+03 - 1.4059460e+02 -4.2047886e+02 -3.5062646e+03 - 1.7343535e+02 -4.1990002e+02 -3.5058033e+03 - 2.0486404e+02 -4.1928271e+02 -3.5052521e+03 - 2.3471050e+02 -4.1867077e+02 -3.5046177e+03 - 2.6285025e+02 -4.1810846e+02 -3.5039076e+03 - 2.8920237e+02 -4.1763823e+02 -3.5031297e+03 - 3.1372547e+02 -4.1729901e+02 -3.5022920e+03 - 3.3641249e+02 -4.1712496e+02 -3.5014027e+03 - 3.5728486e+02 -4.1714477e+02 -3.5004699e+03 - 3.7638660e+02 -4.1738127e+02 -3.4995016e+03 - 3.9377888e+02 -4.1785150e+02 -3.4985056e+03 - 4.0953504e+02 -4.1856695e+02 -3.4974893e+03 - 4.2373643e+02 -4.1953403e+02 -3.4964597e+03 - 4.3646894e+02 -4.2075456e+02 -3.4954238e+03 - 4.4782022e+02 -4.2222639e+02 -3.4943880e+03 - 4.5787769e+02 -4.2394394e+02 -3.4933582e+03 - 4.6672688e+02 -4.2589874e+02 -3.4923403e+03 - 4.7445046e+02 -4.2807989e+02 -3.4913397e+03 - 4.8112747e+02 -4.3047453e+02 -3.4903614e+03 - 4.8683294e+02 -4.3306817e+02 -3.4894101e+03 - 4.9163770e+02 -4.3584503e+02 -3.4884903e+03 - 4.9560835e+02 -4.3878822e+02 -3.4876061e+03 - 4.9880731e+02 -4.4188003e+02 -3.4867614e+03 - 5.0129306e+02 -4.4510201e+02 -3.4859597e+03 - 5.0312029e+02 -4.4843513e+02 -3.4852044e+03 - 5.0434018e+02 -4.5185984e+02 -3.4844985e+03 - 5.0500068e+02 -4.5535617e+02 -3.4838447e+03 - 5.0514671e+02 -4.5890370e+02 -3.4832456e+03 - 5.0482050e+02 -4.6248163e+02 -3.4827035e+03 - 5.0406176e+02 -4.6606874e+02 -3.4822204e+03 - 5.0290797e+02 -4.6964340e+02 -3.4817982e+03 - 5.0139458e+02 -4.7318353e+02 -3.4814382e+03 - 4.9955520e+02 -4.7666656e+02 -3.4811420e+03 - 4.9742180e+02 -4.8006938e+02 -3.4809104e+03 - 4.9502487e+02 -4.8336826e+02 -3.4807444e+03 - 4.9239359e+02 -4.8653882e+02 -3.4806446e+03 - 4.8955593e+02 -4.8955593e+02 -3.4806113e+03 - 4.8653882e+02 -4.9239359e+02 -3.4806446e+03 - 4.8336826e+02 -4.9502487e+02 -3.4807444e+03 - 4.8006938e+02 -4.9742180e+02 -3.4809104e+03 - 4.7666656e+02 -4.9955520e+02 -3.4811420e+03 - 4.7318353e+02 -5.0139458e+02 -3.4814382e+03 - 4.6964340e+02 -5.0290797e+02 -3.4817982e+03 - 4.6606874e+02 -5.0406176e+02 -3.4822204e+03 - 4.6248163e+02 -5.0482050e+02 -3.4827035e+03 - 4.5890370e+02 -5.0514671e+02 -3.4832456e+03 - 4.5535617e+02 -5.0500068e+02 -3.4838447e+03 - 4.5185984e+02 -5.0434018e+02 -3.4844985e+03 - 4.4843513e+02 -5.0312029e+02 -3.4852044e+03 - 4.4510201e+02 -5.0129306e+02 -3.4859597e+03 - 4.4188003e+02 -4.9880731e+02 -3.4867614e+03 - 4.3878822e+02 -4.9560835e+02 -3.4876061e+03 - 4.3584503e+02 -4.9163770e+02 -3.4884903e+03 - 4.3306817e+02 -4.8683294e+02 -3.4894101e+03 - 4.3047453e+02 -4.8112747e+02 -3.4903614e+03 - 4.2807989e+02 -4.7445046e+02 -3.4913397e+03 - 4.2589874e+02 -4.6672688e+02 -3.4923403e+03 - 4.2394394e+02 -4.5787769e+02 -3.4933582e+03 - 4.2222639e+02 -4.4782022e+02 -3.4943880e+03 - 4.2075456e+02 -4.3646894e+02 -3.4954238e+03 - 4.1953403e+02 -4.2373643e+02 -3.4964597e+03 - 4.1856695e+02 -4.0953504e+02 -3.4974893e+03 - 4.1785150e+02 -3.9377888e+02 -3.4985056e+03 - 4.1738127e+02 -3.7638660e+02 -3.4995016e+03 - 4.1714477e+02 -3.5728486e+02 -3.5004699e+03 - 4.1712496e+02 -3.3641249e+02 -3.5014027e+03 - 4.1729901e+02 -3.1372547e+02 -3.5022920e+03 - 4.1763823e+02 -2.8920237e+02 -3.5031297e+03 - 4.1810846e+02 -2.6285025e+02 -3.5039076e+03 - 4.1867077e+02 -2.3471050e+02 -3.5046177e+03 - 4.1928271e+02 -2.0486404e+02 -3.5052521e+03 - 4.1990002e+02 -1.7343535e+02 -3.5058033e+03 - 4.2047886e+02 -1.4059460e+02 -3.5062646e+03 - 4.2097829e+02 -1.0655715e+02 -3.5066301e+03 - 4.2136288e+02 -7.1580037e+01 -3.5068948e+03 - 4.2160524e+02 -3.5955249e+01 -3.5070551e+03 - 4.2168801e+02 0.0000000e+00 -3.5071088e+03 - 3.7943912e+02 0.0000000e+00 -3.5150826e+03 - 3.7936496e+02 3.2314643e+01 -3.5150392e+03 - 3.7914779e+02 6.4335162e+01 -3.5149097e+03 - 3.7880322e+02 9.5779038e+01 -3.5146959e+03 - 3.7835587e+02 1.2638588e+02 -3.5144005e+03 - 3.7783762e+02 1.5592599e+02 -3.5140276e+03 - 3.7728535e+02 1.8420633e+02 -3.5135817e+03 - 3.7673862e+02 2.1107373e+02 -3.5130683e+03 - 3.7623738e+02 2.3641543e+02 -3.5124933e+03 - 3.7582004e+02 2.6015735e+02 -3.5118629e+03 - 3.7552186e+02 2.8226064e+02 -3.5111837e+03 - 3.7537386e+02 3.0271717e+02 -3.5104623e+03 - 3.7540206e+02 3.2154442e+02 -3.5097051e+03 - 3.7562724e+02 3.3878035e+02 -3.5089187e+03 - 3.7606486e+02 3.5447852e+02 -3.5081093e+03 - 3.7672536e+02 3.6870371e+02 -3.5072830e+03 - 3.7761453e+02 3.8152815e+02 -3.5064457e+03 - 3.7873394e+02 3.9302841e+02 -3.5056028e+03 - 3.8008153e+02 4.0328292e+02 -3.5047597e+03 - 3.8165207e+02 4.1237003e+02 -3.5039213e+03 - 3.8343770e+02 4.2036665e+02 -3.5030923e+03 - 3.8542833e+02 4.2734717e+02 -3.5022772e+03 - 3.8761204e+02 4.3338286e+02 -3.5014802e+03 - 3.8997546e+02 4.3854143e+02 -3.5007050e+03 - 3.9250403e+02 4.4288684e+02 -3.4999555e+03 - 3.9518220e+02 4.4647928e+02 -3.4992348e+03 - 3.9799368e+02 4.4937517e+02 -3.4985464e+03 - 4.0092156e+02 4.5162736e+02 -3.4978929e+03 - 4.0394842e+02 4.5328529e+02 -3.4972773e+03 - 4.0705639e+02 4.5439518e+02 -3.4967018e+03 - 4.1022727e+02 4.5500031e+02 -3.4961689e+03 - 4.1344249e+02 4.5514123e+02 -3.4956806e+03 - 4.1668318e+02 4.5485597e+02 -3.4952388e+03 - 4.1993012e+02 4.5418032e+02 -3.4948450e+03 - 4.2316377e+02 4.5314799e+02 -3.4945008e+03 - 4.2636421e+02 4.5179083e+02 -3.4942075e+03 - 4.2951113e+02 4.5013904e+02 -3.4939660e+03 - 4.3258374e+02 4.4822129e+02 -3.4937773e+03 - 4.3556075e+02 4.4606492e+02 -3.4936420e+03 - 4.3842029e+02 4.4369608e+02 -3.4935606e+03 - 4.4113983e+02 4.4113983e+02 -3.4935335e+03 - 4.4369608e+02 4.3842029e+02 -3.4935606e+03 - 4.4606492e+02 4.3556075e+02 -3.4936420e+03 - 4.4822129e+02 4.3258374e+02 -3.4937773e+03 - 4.5013904e+02 4.2951113e+02 -3.4939660e+03 - 4.5179083e+02 4.2636421e+02 -3.4942075e+03 - 4.5314799e+02 4.2316377e+02 -3.4945008e+03 - 4.5418032e+02 4.1993012e+02 -3.4948450e+03 - 4.5485597e+02 4.1668318e+02 -3.4952388e+03 - 4.5514123e+02 4.1344249e+02 -3.4956806e+03 - 4.5500031e+02 4.1022727e+02 -3.4961689e+03 - 4.5439518e+02 4.0705639e+02 -3.4967018e+03 - 4.5328529e+02 4.0394842e+02 -3.4972773e+03 - 4.5162736e+02 4.0092156e+02 -3.4978929e+03 - 4.4937517e+02 3.9799368e+02 -3.4985464e+03 - 4.4647928e+02 3.9518220e+02 -3.4992348e+03 - 4.4288684e+02 3.9250403e+02 -3.4999555e+03 - 4.3854143e+02 3.8997546e+02 -3.5007050e+03 - 4.3338286e+02 3.8761204e+02 -3.5014802e+03 - 4.2734717e+02 3.8542833e+02 -3.5022772e+03 - 4.2036665e+02 3.8343770e+02 -3.5030923e+03 - 4.1237003e+02 3.8165207e+02 -3.5039213e+03 - 4.0328292e+02 3.8008153e+02 -3.5047597e+03 - 3.9302841e+02 3.7873394e+02 -3.5056028e+03 - 3.8152815e+02 3.7761453e+02 -3.5064457e+03 - 3.6870371e+02 3.7672536e+02 -3.5072830e+03 - 3.5447852e+02 3.7606486e+02 -3.5081093e+03 - 3.3878035e+02 3.7562724e+02 -3.5089187e+03 - 3.2154442e+02 3.7540206e+02 -3.5097051e+03 - 3.0271717e+02 3.7537386e+02 -3.5104623e+03 - 2.8226064e+02 3.7552186e+02 -3.5111837e+03 - 2.6015735e+02 3.7582004e+02 -3.5118629e+03 - 2.3641543e+02 3.7623738e+02 -3.5124933e+03 - 2.1107373e+02 3.7673862e+02 -3.5130683e+03 - 1.8420633e+02 3.7728535e+02 -3.5135817e+03 - 1.5592599e+02 3.7783762e+02 -3.5140276e+03 - 1.2638588e+02 3.7835587e+02 -3.5144005e+03 - 9.5779038e+01 3.7880322e+02 -3.5146959e+03 - 6.4335162e+01 3.7914779e+02 -3.5149097e+03 - 3.2314643e+01 3.7936496e+02 -3.5150392e+03 - 0.0000000e+00 3.7943912e+02 -3.5150826e+03 - -3.2314643e+01 3.7936496e+02 -3.5150392e+03 - -6.4335162e+01 3.7914779e+02 -3.5149097e+03 - -9.5779038e+01 3.7880322e+02 -3.5146959e+03 - -1.2638588e+02 3.7835587e+02 -3.5144005e+03 - -1.5592599e+02 3.7783762e+02 -3.5140276e+03 - -1.8420633e+02 3.7728535e+02 -3.5135817e+03 - -2.1107373e+02 3.7673862e+02 -3.5130683e+03 - -2.3641543e+02 3.7623738e+02 -3.5124933e+03 - -2.6015735e+02 3.7582004e+02 -3.5118629e+03 - -2.8226064e+02 3.7552186e+02 -3.5111837e+03 - -3.0271717e+02 3.7537386e+02 -3.5104623e+03 - -3.2154442e+02 3.7540206e+02 -3.5097051e+03 - -3.3878035e+02 3.7562724e+02 -3.5089187e+03 - -3.5447852e+02 3.7606486e+02 -3.5081093e+03 - -3.6870371e+02 3.7672536e+02 -3.5072830e+03 - -3.8152815e+02 3.7761453e+02 -3.5064457e+03 - -3.9302841e+02 3.7873394e+02 -3.5056028e+03 - -4.0328292e+02 3.8008153e+02 -3.5047597e+03 - -4.1237003e+02 3.8165207e+02 -3.5039213e+03 - -4.2036665e+02 3.8343770e+02 -3.5030923e+03 - -4.2734717e+02 3.8542833e+02 -3.5022772e+03 - -4.3338286e+02 3.8761204e+02 -3.5014802e+03 - -4.3854143e+02 3.8997546e+02 -3.5007050e+03 - -4.4288684e+02 3.9250403e+02 -3.4999555e+03 - -4.4647928e+02 3.9518220e+02 -3.4992348e+03 - -4.4937517e+02 3.9799368e+02 -3.4985464e+03 - -4.5162736e+02 4.0092156e+02 -3.4978929e+03 - -4.5328529e+02 4.0394842e+02 -3.4972773e+03 - -4.5439518e+02 4.0705639e+02 -3.4967018e+03 - -4.5500031e+02 4.1022727e+02 -3.4961689e+03 - -4.5514123e+02 4.1344249e+02 -3.4956806e+03 - -4.5485597e+02 4.1668318e+02 -3.4952388e+03 - -4.5418032e+02 4.1993012e+02 -3.4948450e+03 - -4.5314799e+02 4.2316377e+02 -3.4945008e+03 - -4.5179083e+02 4.2636421e+02 -3.4942075e+03 - -4.5013904e+02 4.2951113e+02 -3.4939660e+03 - -4.4822129e+02 4.3258374e+02 -3.4937773e+03 - -4.4606492e+02 4.3556075e+02 -3.4936420e+03 - -4.4369608e+02 4.3842029e+02 -3.4935606e+03 - -4.4113983e+02 4.4113983e+02 -3.4935335e+03 - -4.3842029e+02 4.4369608e+02 -3.4935606e+03 - -4.3556075e+02 4.4606492e+02 -3.4936420e+03 - -4.3258374e+02 4.4822129e+02 -3.4937773e+03 - -4.2951113e+02 4.5013904e+02 -3.4939660e+03 - -4.2636421e+02 4.5179083e+02 -3.4942075e+03 - -4.2316377e+02 4.5314799e+02 -3.4945008e+03 - -4.1993012e+02 4.5418032e+02 -3.4948450e+03 - -4.1668318e+02 4.5485597e+02 -3.4952388e+03 - -4.1344249e+02 4.5514123e+02 -3.4956806e+03 - -4.1022727e+02 4.5500031e+02 -3.4961689e+03 - -4.0705639e+02 4.5439518e+02 -3.4967018e+03 - -4.0394842e+02 4.5328529e+02 -3.4972773e+03 - -4.0092156e+02 4.5162736e+02 -3.4978929e+03 - -3.9799368e+02 4.4937517e+02 -3.4985464e+03 - -3.9518220e+02 4.4647928e+02 -3.4992348e+03 - -3.9250403e+02 4.4288684e+02 -3.4999555e+03 - -3.8997546e+02 4.3854143e+02 -3.5007050e+03 - -3.8761204e+02 4.3338286e+02 -3.5014802e+03 - -3.8542833e+02 4.2734717e+02 -3.5022772e+03 - -3.8343770e+02 4.2036665e+02 -3.5030923e+03 - -3.8165207e+02 4.1237003e+02 -3.5039213e+03 - -3.8008153e+02 4.0328292e+02 -3.5047597e+03 - -3.7873394e+02 3.9302841e+02 -3.5056028e+03 - -3.7761453e+02 3.8152815e+02 -3.5064457e+03 - -3.7672536e+02 3.6870371e+02 -3.5072830e+03 - -3.7606486e+02 3.5447852e+02 -3.5081093e+03 - -3.7562724e+02 3.3878035e+02 -3.5089187e+03 - -3.7540206e+02 3.2154442e+02 -3.5097051e+03 - -3.7537386e+02 3.0271717e+02 -3.5104623e+03 - -3.7552186e+02 2.8226064e+02 -3.5111837e+03 - -3.7582004e+02 2.6015735e+02 -3.5118629e+03 - -3.7623738e+02 2.3641543e+02 -3.5124933e+03 - -3.7673862e+02 2.1107373e+02 -3.5130683e+03 - -3.7728535e+02 1.8420633e+02 -3.5135817e+03 - -3.7783762e+02 1.5592599e+02 -3.5140276e+03 - -3.7835587e+02 1.2638588e+02 -3.5144005e+03 - -3.7880322e+02 9.5779038e+01 -3.5146959e+03 - -3.7914779e+02 6.4335162e+01 -3.5149097e+03 - -3.7936496e+02 3.2314643e+01 -3.5150392e+03 - -3.7943912e+02 -2.4067136e-09 -3.5150826e+03 - -3.7936496e+02 -3.2314643e+01 -3.5150392e+03 - -3.7914779e+02 -6.4335162e+01 -3.5149097e+03 - -3.7880322e+02 -9.5779038e+01 -3.5146959e+03 - -3.7835587e+02 -1.2638588e+02 -3.5144005e+03 - -3.7783762e+02 -1.5592599e+02 -3.5140276e+03 - -3.7728535e+02 -1.8420633e+02 -3.5135817e+03 - -3.7673862e+02 -2.1107373e+02 -3.5130683e+03 - -3.7623738e+02 -2.3641543e+02 -3.5124933e+03 - -3.7582004e+02 -2.6015735e+02 -3.5118629e+03 - -3.7552186e+02 -2.8226064e+02 -3.5111837e+03 - -3.7537386e+02 -3.0271717e+02 -3.5104623e+03 - -3.7540206e+02 -3.2154442e+02 -3.5097051e+03 - -3.7562724e+02 -3.3878035e+02 -3.5089187e+03 - -3.7606486e+02 -3.5447852e+02 -3.5081093e+03 - -3.7672536e+02 -3.6870371e+02 -3.5072830e+03 - -3.7761453e+02 -3.8152815e+02 -3.5064457e+03 - -3.7873394e+02 -3.9302841e+02 -3.5056028e+03 - -3.8008153e+02 -4.0328292e+02 -3.5047597e+03 - -3.8165207e+02 -4.1237003e+02 -3.5039213e+03 - -3.8343770e+02 -4.2036665e+02 -3.5030923e+03 - -3.8542833e+02 -4.2734717e+02 -3.5022772e+03 - -3.8761204e+02 -4.3338286e+02 -3.5014802e+03 - -3.8997546e+02 -4.3854143e+02 -3.5007050e+03 - -3.9250403e+02 -4.4288684e+02 -3.4999555e+03 - -3.9518220e+02 -4.4647928e+02 -3.4992348e+03 - -3.9799368e+02 -4.4937517e+02 -3.4985464e+03 - -4.0092156e+02 -4.5162736e+02 -3.4978929e+03 - -4.0394842e+02 -4.5328529e+02 -3.4972773e+03 - -4.0705639e+02 -4.5439518e+02 -3.4967018e+03 - -4.1022727e+02 -4.5500031e+02 -3.4961689e+03 - -4.1344249e+02 -4.5514123e+02 -3.4956806e+03 - -4.1668318e+02 -4.5485597e+02 -3.4952388e+03 - -4.1993012e+02 -4.5418032e+02 -3.4948450e+03 - -4.2316377e+02 -4.5314799e+02 -3.4945008e+03 - -4.2636421e+02 -4.5179083e+02 -3.4942075e+03 - -4.2951113e+02 -4.5013904e+02 -3.4939660e+03 - -4.3258374e+02 -4.4822129e+02 -3.4937773e+03 - -4.3556075e+02 -4.4606492e+02 -3.4936420e+03 - -4.3842029e+02 -4.4369608e+02 -3.4935606e+03 - -4.4113983e+02 -4.4113983e+02 -3.4935335e+03 - -4.4369608e+02 -4.3842029e+02 -3.4935606e+03 - -4.4606492e+02 -4.3556075e+02 -3.4936420e+03 - -4.4822129e+02 -4.3258374e+02 -3.4937773e+03 - -4.5013904e+02 -4.2951113e+02 -3.4939660e+03 - -4.5179083e+02 -4.2636421e+02 -3.4942075e+03 - -4.5314799e+02 -4.2316377e+02 -3.4945008e+03 - -4.5418032e+02 -4.1993012e+02 -3.4948450e+03 - -4.5485597e+02 -4.1668318e+02 -3.4952388e+03 - -4.5514123e+02 -4.1344249e+02 -3.4956806e+03 - -4.5500031e+02 -4.1022727e+02 -3.4961689e+03 - -4.5439518e+02 -4.0705639e+02 -3.4967018e+03 - -4.5328529e+02 -4.0394842e+02 -3.4972773e+03 - -4.5162736e+02 -4.0092156e+02 -3.4978929e+03 - -4.4937517e+02 -3.9799368e+02 -3.4985464e+03 - -4.4647928e+02 -3.9518220e+02 -3.4992348e+03 - -4.4288684e+02 -3.9250403e+02 -3.4999555e+03 - -4.3854143e+02 -3.8997546e+02 -3.5007050e+03 - -4.3338286e+02 -3.8761204e+02 -3.5014802e+03 - -4.2734717e+02 -3.8542833e+02 -3.5022772e+03 - -4.2036665e+02 -3.8343770e+02 -3.5030923e+03 - -4.1237003e+02 -3.8165207e+02 -3.5039213e+03 - -4.0328292e+02 -3.8008153e+02 -3.5047597e+03 - -3.9302841e+02 -3.7873394e+02 -3.5056028e+03 - -3.8152815e+02 -3.7761453e+02 -3.5064457e+03 - -3.6870371e+02 -3.7672536e+02 -3.5072830e+03 - -3.5447852e+02 -3.7606486e+02 -3.5081093e+03 - -3.3878035e+02 -3.7562724e+02 -3.5089187e+03 - -3.2154442e+02 -3.7540206e+02 -3.5097051e+03 - -3.0271717e+02 -3.7537386e+02 -3.5104623e+03 - -2.8226064e+02 -3.7552186e+02 -3.5111837e+03 - -2.6015735e+02 -3.7582004e+02 -3.5118629e+03 - -2.3641543e+02 -3.7623738e+02 -3.5124933e+03 - -2.1107373e+02 -3.7673862e+02 -3.5130683e+03 - -1.8420633e+02 -3.7728535e+02 -3.5135817e+03 - -1.5592599e+02 -3.7783762e+02 -3.5140276e+03 - -1.2638588e+02 -3.7835587e+02 -3.5144005e+03 - -9.5779038e+01 -3.7880322e+02 -3.5146959e+03 - -6.4335162e+01 -3.7914779e+02 -3.5149097e+03 - -3.2314643e+01 -3.7936496e+02 -3.5150392e+03 - 0.0000000e+00 -3.7943912e+02 -3.5150826e+03 - 3.2314643e+01 -3.7936496e+02 -3.5150392e+03 - 6.4335162e+01 -3.7914779e+02 -3.5149097e+03 - 9.5779038e+01 -3.7880322e+02 -3.5146959e+03 - 1.2638588e+02 -3.7835587e+02 -3.5144005e+03 - 1.5592599e+02 -3.7783762e+02 -3.5140276e+03 - 1.8420633e+02 -3.7728535e+02 -3.5135817e+03 - 2.1107373e+02 -3.7673862e+02 -3.5130683e+03 - 2.3641543e+02 -3.7623738e+02 -3.5124933e+03 - 2.6015735e+02 -3.7582004e+02 -3.5118629e+03 - 2.8226064e+02 -3.7552186e+02 -3.5111837e+03 - 3.0271717e+02 -3.7537386e+02 -3.5104623e+03 - 3.2154442e+02 -3.7540206e+02 -3.5097051e+03 - 3.3878035e+02 -3.7562724e+02 -3.5089187e+03 - 3.5447852e+02 -3.7606486e+02 -3.5081093e+03 - 3.6870371e+02 -3.7672536e+02 -3.5072830e+03 - 3.8152815e+02 -3.7761453e+02 -3.5064457e+03 - 3.9302841e+02 -3.7873394e+02 -3.5056028e+03 - 4.0328292e+02 -3.8008153e+02 -3.5047597e+03 - 4.1237003e+02 -3.8165207e+02 -3.5039213e+03 - 4.2036665e+02 -3.8343770e+02 -3.5030923e+03 - 4.2734717e+02 -3.8542833e+02 -3.5022772e+03 - 4.3338286e+02 -3.8761204e+02 -3.5014802e+03 - 4.3854143e+02 -3.8997546e+02 -3.5007050e+03 - 4.4288684e+02 -3.9250403e+02 -3.4999555e+03 - 4.4647928e+02 -3.9518220e+02 -3.4992348e+03 - 4.4937517e+02 -3.9799368e+02 -3.4985464e+03 - 4.5162736e+02 -4.0092156e+02 -3.4978929e+03 - 4.5328529e+02 -4.0394842e+02 -3.4972773e+03 - 4.5439518e+02 -4.0705639e+02 -3.4967018e+03 - 4.5500031e+02 -4.1022727e+02 -3.4961689e+03 - 4.5514123e+02 -4.1344249e+02 -3.4956806e+03 - 4.5485597e+02 -4.1668318e+02 -3.4952388e+03 - 4.5418032e+02 -4.1993012e+02 -3.4948450e+03 - 4.5314799e+02 -4.2316377e+02 -3.4945008e+03 - 4.5179083e+02 -4.2636421e+02 -3.4942075e+03 - 4.5013904e+02 -4.2951113e+02 -3.4939660e+03 - 4.4822129e+02 -4.3258374e+02 -3.4937773e+03 - 4.4606492e+02 -4.3556075e+02 -3.4936420e+03 - 4.4369608e+02 -4.3842029e+02 -3.4935606e+03 - 4.4113983e+02 -4.4113983e+02 -3.4935335e+03 - 4.3842029e+02 -4.4369608e+02 -3.4935606e+03 - 4.3556075e+02 -4.4606492e+02 -3.4936420e+03 - 4.3258374e+02 -4.4822129e+02 -3.4937773e+03 - 4.2951113e+02 -4.5013904e+02 -3.4939660e+03 - 4.2636421e+02 -4.5179083e+02 -3.4942075e+03 - 4.2316377e+02 -4.5314799e+02 -3.4945008e+03 - 4.1993012e+02 -4.5418032e+02 -3.4948450e+03 - 4.1668318e+02 -4.5485597e+02 -3.4952388e+03 - 4.1344249e+02 -4.5514123e+02 -3.4956806e+03 - 4.1022727e+02 -4.5500031e+02 -3.4961689e+03 - 4.0705639e+02 -4.5439518e+02 -3.4967018e+03 - 4.0394842e+02 -4.5328529e+02 -3.4972773e+03 - 4.0092156e+02 -4.5162736e+02 -3.4978929e+03 - 3.9799368e+02 -4.4937517e+02 -3.4985464e+03 - 3.9518220e+02 -4.4647928e+02 -3.4992348e+03 - 3.9250403e+02 -4.4288684e+02 -3.4999555e+03 - 3.8997546e+02 -4.3854143e+02 -3.5007050e+03 - 3.8761204e+02 -4.3338286e+02 -3.5014802e+03 - 3.8542833e+02 -4.2734717e+02 -3.5022772e+03 - 3.8343770e+02 -4.2036665e+02 -3.5030923e+03 - 3.8165207e+02 -4.1237003e+02 -3.5039213e+03 - 3.8008153e+02 -4.0328292e+02 -3.5047597e+03 - 3.7873394e+02 -3.9302841e+02 -3.5056028e+03 - 3.7761453e+02 -3.8152815e+02 -3.5064457e+03 - 3.7672536e+02 -3.6870371e+02 -3.5072830e+03 - 3.7606486e+02 -3.5447852e+02 -3.5081093e+03 - 3.7562724e+02 -3.3878035e+02 -3.5089187e+03 - 3.7540206e+02 -3.2154442e+02 -3.5097051e+03 - 3.7537386e+02 -3.0271717e+02 -3.5104623e+03 - 3.7552186e+02 -2.8226064e+02 -3.5111837e+03 - 3.7582004e+02 -2.6015735e+02 -3.5118629e+03 - 3.7623738e+02 -2.3641543e+02 -3.5124933e+03 - 3.7673862e+02 -2.1107373e+02 -3.5130683e+03 - 3.7728535e+02 -1.8420633e+02 -3.5135817e+03 - 3.7783762e+02 -1.5592599e+02 -3.5140276e+03 - 3.7835587e+02 -1.2638588e+02 -3.5144005e+03 - 3.7880322e+02 -9.5779038e+01 -3.5146959e+03 - 3.7914779e+02 -6.4335162e+01 -3.5149097e+03 - 3.7936496e+02 -3.2314643e+01 -3.5150392e+03 - 3.7943912e+02 0.0000000e+00 -3.5150826e+03 - 3.3721453e+02 -2.4067136e-09 -3.5221962e+03 - 3.3714887e+02 2.8688700e+01 -3.5221620e+03 - 3.3695663e+02 5.7118524e+01 -3.5220600e+03 - 3.3665164e+02 8.5040668e+01 -3.5218914e+03 - 3.3625577e+02 1.1222555e+02 -3.5216585e+03 - 3.3579735e+02 1.3847027e+02 -3.5213643e+03 - 3.3530918e+02 1.6360389e+02 -3.5210124e+03 - 3.3482648e+02 1.8749025e+02 -3.5206070e+03 - 3.3438489e+02 2.1002858e+02 -3.5201528e+03 - 3.3401869e+02 2.3115206e+02 -3.5196546e+03 - 3.3375940e+02 2.5082491e+02 -3.5191175e+03 - 3.3363479e+02 2.6903851e+02 -3.5185466e+03 - 3.3366818e+02 2.8580701e+02 -3.5179473e+03 - 3.3387817e+02 3.0116283e+02 -3.5173244e+03 - 3.3427866e+02 3.1515241e+02 -3.5166831e+03 - 3.3487900e+02 3.2783235e+02 -3.5160281e+03 - 3.3568431e+02 3.3926608e+02 -3.5153641e+03 - 3.3669599e+02 3.4952109e+02 -3.5146954e+03 - 3.3791208e+02 3.5866669e+02 -3.5140264e+03 - 3.3932779e+02 3.6677231e+02 -3.5133609e+03 - 3.4093594e+02 3.7390620e+02 -3.5127028e+03 - 3.4272731e+02 3.8013450e+02 -3.5120555e+03 - 3.4469107e+02 3.8552065e+02 -3.5114225e+03 - 3.4681507e+02 3.9012498e+02 -3.5108068e+03 - 3.4908605e+02 3.9400451e+02 -3.5102113e+03 - 3.5148996e+02 3.9721293e+02 -3.5096388e+03 - 3.5401201e+02 3.9980058e+02 -3.5090918e+03 - 3.5663694e+02 4.0181462e+02 -3.5085727e+03 - 3.5934901e+02 4.0329914e+02 -3.5080835e+03 - 3.6213215e+02 4.0429537e+02 -3.5076263e+03 - 3.6496997e+02 4.0484189e+02 -3.5072028e+03 - 3.6784583e+02 4.0497480e+02 -3.5068148e+03 - 3.7074281e+02 4.0472797e+02 -3.5064638e+03 - 3.7364376e+02 4.0413321e+02 -3.5061509e+03 - 3.7653124e+02 4.0322049e+02 -3.5058774e+03 - 3.7938750e+02 4.0201809e+02 -3.5056443e+03 - 3.8219449e+02 4.0055277e+02 -3.5054525e+03 - 3.8493374e+02 3.9884998e+02 -3.5053026e+03 - 3.8758637e+02 3.9693392e+02 -3.5051951e+03 - 3.9013299e+02 3.9482775e+02 -3.5051304e+03 - 3.9255366e+02 3.9255366e+02 -3.5051089e+03 - 3.9482775e+02 3.9013299e+02 -3.5051304e+03 - 3.9693392e+02 3.8758637e+02 -3.5051951e+03 - 3.9884998e+02 3.8493374e+02 -3.5053026e+03 - 4.0055277e+02 3.8219449e+02 -3.5054525e+03 - 4.0201809e+02 3.7938750e+02 -3.5056443e+03 - 4.0322049e+02 3.7653124e+02 -3.5058774e+03 - 4.0413321e+02 3.7364376e+02 -3.5061509e+03 - 4.0472797e+02 3.7074281e+02 -3.5064638e+03 - 4.0497480e+02 3.6784583e+02 -3.5068148e+03 - 4.0484189e+02 3.6496997e+02 -3.5072028e+03 - 4.0429537e+02 3.6213215e+02 -3.5076263e+03 - 4.0329914e+02 3.5934901e+02 -3.5080835e+03 - 4.0181462e+02 3.5663694e+02 -3.5085727e+03 - 3.9980058e+02 3.5401201e+02 -3.5090918e+03 - 3.9721293e+02 3.5148996e+02 -3.5096388e+03 - 3.9400451e+02 3.4908605e+02 -3.5102113e+03 - 3.9012498e+02 3.4681507e+02 -3.5108068e+03 - 3.8552065e+02 3.4469107e+02 -3.5114225e+03 - 3.8013450e+02 3.4272731e+02 -3.5120555e+03 - 3.7390620e+02 3.4093594e+02 -3.5127028e+03 - 3.6677231e+02 3.3932779e+02 -3.5133609e+03 - 3.5866669e+02 3.3791208e+02 -3.5140264e+03 - 3.4952109e+02 3.3669599e+02 -3.5146954e+03 - 3.3926608e+02 3.3568431e+02 -3.5153641e+03 - 3.2783235e+02 3.3487900e+02 -3.5160281e+03 - 3.1515241e+02 3.3427866e+02 -3.5166831e+03 - 3.0116283e+02 3.3387817e+02 -3.5173244e+03 - 2.8580701e+02 3.3366818e+02 -3.5179473e+03 - 2.6903851e+02 3.3363479e+02 -3.5185466e+03 - 2.5082491e+02 3.3375940e+02 -3.5191175e+03 - 2.3115206e+02 3.3401869e+02 -3.5196546e+03 - 2.1002858e+02 3.3438489e+02 -3.5201528e+03 - 1.8749025e+02 3.3482648e+02 -3.5206070e+03 - 1.6360389e+02 3.3530918e+02 -3.5210124e+03 - 1.3847027e+02 3.3579735e+02 -3.5213643e+03 - 1.1222555e+02 3.3625577e+02 -3.5216585e+03 - 8.5040668e+01 3.3665164e+02 -3.5218914e+03 - 5.7118524e+01 3.3695663e+02 -3.5220600e+03 - 2.8688700e+01 3.3714887e+02 -3.5221620e+03 - -2.4067136e-09 3.3721453e+02 -3.5221962e+03 - -2.8688700e+01 3.3714887e+02 -3.5221620e+03 - -5.7118524e+01 3.3695663e+02 -3.5220600e+03 - -8.5040668e+01 3.3665164e+02 -3.5218914e+03 - -1.1222555e+02 3.3625577e+02 -3.5216585e+03 - -1.3847027e+02 3.3579735e+02 -3.5213643e+03 - -1.6360389e+02 3.3530918e+02 -3.5210124e+03 - -1.8749025e+02 3.3482648e+02 -3.5206070e+03 - -2.1002858e+02 3.3438489e+02 -3.5201528e+03 - -2.3115206e+02 3.3401869e+02 -3.5196546e+03 - -2.5082491e+02 3.3375940e+02 -3.5191175e+03 - -2.6903851e+02 3.3363479e+02 -3.5185466e+03 - -2.8580701e+02 3.3366818e+02 -3.5179473e+03 - -3.0116283e+02 3.3387817e+02 -3.5173244e+03 - -3.1515241e+02 3.3427866e+02 -3.5166831e+03 - -3.2783235e+02 3.3487900e+02 -3.5160281e+03 - -3.3926608e+02 3.3568431e+02 -3.5153641e+03 - -3.4952109e+02 3.3669599e+02 -3.5146954e+03 - -3.5866669e+02 3.3791208e+02 -3.5140264e+03 - -3.6677231e+02 3.3932779e+02 -3.5133609e+03 - -3.7390620e+02 3.4093594e+02 -3.5127028e+03 - -3.8013450e+02 3.4272731e+02 -3.5120555e+03 - -3.8552065e+02 3.4469107e+02 -3.5114225e+03 - -3.9012498e+02 3.4681507e+02 -3.5108068e+03 - -3.9400451e+02 3.4908605e+02 -3.5102113e+03 - -3.9721293e+02 3.5148996e+02 -3.5096388e+03 - -3.9980058e+02 3.5401201e+02 -3.5090918e+03 - -4.0181462e+02 3.5663694e+02 -3.5085727e+03 - -4.0329914e+02 3.5934901e+02 -3.5080835e+03 - -4.0429537e+02 3.6213215e+02 -3.5076263e+03 - -4.0484189e+02 3.6496997e+02 -3.5072028e+03 - -4.0497480e+02 3.6784583e+02 -3.5068148e+03 - -4.0472797e+02 3.7074281e+02 -3.5064638e+03 - -4.0413321e+02 3.7364376e+02 -3.5061509e+03 - -4.0322049e+02 3.7653124e+02 -3.5058774e+03 - -4.0201809e+02 3.7938750e+02 -3.5056443e+03 - -4.0055277e+02 3.8219449e+02 -3.5054525e+03 - -3.9884998e+02 3.8493374e+02 -3.5053026e+03 - -3.9693392e+02 3.8758637e+02 -3.5051951e+03 - -3.9482775e+02 3.9013299e+02 -3.5051304e+03 - -3.9255366e+02 3.9255366e+02 -3.5051089e+03 - -3.9013299e+02 3.9482775e+02 -3.5051304e+03 - -3.8758637e+02 3.9693392e+02 -3.5051951e+03 - -3.8493374e+02 3.9884998e+02 -3.5053026e+03 - -3.8219449e+02 4.0055277e+02 -3.5054525e+03 - -3.7938750e+02 4.0201809e+02 -3.5056443e+03 - -3.7653124e+02 4.0322049e+02 -3.5058774e+03 - -3.7364376e+02 4.0413321e+02 -3.5061509e+03 - -3.7074281e+02 4.0472797e+02 -3.5064638e+03 - -3.6784583e+02 4.0497480e+02 -3.5068148e+03 - -3.6496997e+02 4.0484189e+02 -3.5072028e+03 - -3.6213215e+02 4.0429537e+02 -3.5076263e+03 - -3.5934901e+02 4.0329914e+02 -3.5080835e+03 - -3.5663694e+02 4.0181462e+02 -3.5085727e+03 - -3.5401201e+02 3.9980058e+02 -3.5090918e+03 - -3.5148996e+02 3.9721293e+02 -3.5096388e+03 - -3.4908605e+02 3.9400451e+02 -3.5102113e+03 - -3.4681507e+02 3.9012498e+02 -3.5108068e+03 - -3.4469107e+02 3.8552065e+02 -3.5114225e+03 - -3.4272731e+02 3.8013450e+02 -3.5120555e+03 - -3.4093594e+02 3.7390620e+02 -3.5127028e+03 - -3.3932779e+02 3.6677231e+02 -3.5133609e+03 - -3.3791208e+02 3.5866669e+02 -3.5140264e+03 - -3.3669599e+02 3.4952109e+02 -3.5146954e+03 - -3.3568431e+02 3.3926608e+02 -3.5153641e+03 - -3.3487900e+02 3.2783235e+02 -3.5160281e+03 - -3.3427866e+02 3.1515241e+02 -3.5166831e+03 - -3.3387817e+02 3.0116283e+02 -3.5173244e+03 - -3.3366818e+02 2.8580701e+02 -3.5179473e+03 - -3.3363479e+02 2.6903851e+02 -3.5185466e+03 - -3.3375940e+02 2.5082491e+02 -3.5191175e+03 - -3.3401869e+02 2.3115206e+02 -3.5196546e+03 - -3.3438489e+02 2.1002858e+02 -3.5201528e+03 - -3.3482648e+02 1.8749025e+02 -3.5206070e+03 - -3.3530918e+02 1.6360389e+02 -3.5210124e+03 - -3.3579735e+02 1.3847027e+02 -3.5213643e+03 - -3.3625577e+02 1.1222555e+02 -3.5216585e+03 - -3.3665164e+02 8.5040668e+01 -3.5218914e+03 - -3.3695663e+02 5.7118524e+01 -3.5220600e+03 - -3.3714887e+02 2.8688700e+01 -3.5221620e+03 - -3.3721453e+02 2.4067136e-09 -3.5221962e+03 - -3.3714887e+02 -2.8688700e+01 -3.5221620e+03 - -3.3695663e+02 -5.7118524e+01 -3.5220600e+03 - -3.3665164e+02 -8.5040668e+01 -3.5218914e+03 - -3.3625577e+02 -1.1222555e+02 -3.5216585e+03 - -3.3579735e+02 -1.3847027e+02 -3.5213643e+03 - -3.3530918e+02 -1.6360389e+02 -3.5210124e+03 - -3.3482648e+02 -1.8749025e+02 -3.5206070e+03 - -3.3438489e+02 -2.1002858e+02 -3.5201528e+03 - -3.3401869e+02 -2.3115206e+02 -3.5196546e+03 - -3.3375940e+02 -2.5082491e+02 -3.5191175e+03 - -3.3363479e+02 -2.6903851e+02 -3.5185466e+03 - -3.3366818e+02 -2.8580701e+02 -3.5179473e+03 - -3.3387817e+02 -3.0116283e+02 -3.5173244e+03 - -3.3427866e+02 -3.1515241e+02 -3.5166831e+03 - -3.3487900e+02 -3.2783235e+02 -3.5160281e+03 - -3.3568431e+02 -3.3926608e+02 -3.5153641e+03 - -3.3669599e+02 -3.4952109e+02 -3.5146954e+03 - -3.3791208e+02 -3.5866669e+02 -3.5140264e+03 - -3.3932779e+02 -3.6677231e+02 -3.5133609e+03 - -3.4093594e+02 -3.7390620e+02 -3.5127028e+03 - -3.4272731e+02 -3.8013450e+02 -3.5120555e+03 - -3.4469107e+02 -3.8552065e+02 -3.5114225e+03 - -3.4681507e+02 -3.9012498e+02 -3.5108068e+03 - -3.4908605e+02 -3.9400451e+02 -3.5102113e+03 - -3.5148996e+02 -3.9721293e+02 -3.5096388e+03 - -3.5401201e+02 -3.9980058e+02 -3.5090918e+03 - -3.5663694e+02 -4.0181462e+02 -3.5085727e+03 - -3.5934901e+02 -4.0329914e+02 -3.5080835e+03 - -3.6213215e+02 -4.0429537e+02 -3.5076263e+03 - -3.6496997e+02 -4.0484189e+02 -3.5072028e+03 - -3.6784583e+02 -4.0497480e+02 -3.5068148e+03 - -3.7074281e+02 -4.0472797e+02 -3.5064638e+03 - -3.7364376e+02 -4.0413321e+02 -3.5061509e+03 - -3.7653124e+02 -4.0322049e+02 -3.5058774e+03 - -3.7938750e+02 -4.0201809e+02 -3.5056443e+03 - -3.8219449e+02 -4.0055277e+02 -3.5054525e+03 - -3.8493374e+02 -3.9884998e+02 -3.5053026e+03 - -3.8758637e+02 -3.9693392e+02 -3.5051951e+03 - -3.9013299e+02 -3.9482775e+02 -3.5051304e+03 - -3.9255366e+02 -3.9255366e+02 -3.5051089e+03 - -3.9482775e+02 -3.9013299e+02 -3.5051304e+03 - -3.9693392e+02 -3.8758637e+02 -3.5051951e+03 - -3.9884998e+02 -3.8493374e+02 -3.5053026e+03 - -4.0055277e+02 -3.8219449e+02 -3.5054525e+03 - -4.0201809e+02 -3.7938750e+02 -3.5056443e+03 - -4.0322049e+02 -3.7653124e+02 -3.5058774e+03 - -4.0413321e+02 -3.7364376e+02 -3.5061509e+03 - -4.0472797e+02 -3.7074281e+02 -3.5064638e+03 - -4.0497480e+02 -3.6784583e+02 -3.5068148e+03 - -4.0484189e+02 -3.6496997e+02 -3.5072028e+03 - -4.0429537e+02 -3.6213215e+02 -3.5076263e+03 - -4.0329914e+02 -3.5934901e+02 -3.5080835e+03 - -4.0181462e+02 -3.5663694e+02 -3.5085727e+03 - -3.9980058e+02 -3.5401201e+02 -3.5090918e+03 - -3.9721293e+02 -3.5148996e+02 -3.5096388e+03 - -3.9400451e+02 -3.4908605e+02 -3.5102113e+03 - -3.9012498e+02 -3.4681507e+02 -3.5108068e+03 - -3.8552065e+02 -3.4469107e+02 -3.5114225e+03 - -3.8013450e+02 -3.4272731e+02 -3.5120555e+03 - -3.7390620e+02 -3.4093594e+02 -3.5127028e+03 - -3.6677231e+02 -3.3932779e+02 -3.5133609e+03 - -3.5866669e+02 -3.3791208e+02 -3.5140264e+03 - -3.4952109e+02 -3.3669599e+02 -3.5146954e+03 - -3.3926608e+02 -3.3568431e+02 -3.5153641e+03 - -3.2783235e+02 -3.3487900e+02 -3.5160281e+03 - -3.1515241e+02 -3.3427866e+02 -3.5166831e+03 - -3.0116283e+02 -3.3387817e+02 -3.5173244e+03 - -2.8580701e+02 -3.3366818e+02 -3.5179473e+03 - -2.6903851e+02 -3.3363479e+02 -3.5185466e+03 - -2.5082491e+02 -3.3375940e+02 -3.5191175e+03 - -2.3115206e+02 -3.3401869e+02 -3.5196546e+03 - -2.1002858e+02 -3.3438489e+02 -3.5201528e+03 - -1.8749025e+02 -3.3482648e+02 -3.5206070e+03 - -1.6360389e+02 -3.3530918e+02 -3.5210124e+03 - -1.3847027e+02 -3.3579735e+02 -3.5213643e+03 - -1.1222555e+02 -3.3625577e+02 -3.5216585e+03 - -8.5040668e+01 -3.3665164e+02 -3.5218914e+03 - -5.7118524e+01 -3.3695663e+02 -3.5220600e+03 - -2.8688700e+01 -3.3714887e+02 -3.5221620e+03 - 4.8134273e-09 -3.3721453e+02 -3.5221962e+03 - 2.8688700e+01 -3.3714887e+02 -3.5221620e+03 - 5.7118524e+01 -3.3695663e+02 -3.5220600e+03 - 8.5040668e+01 -3.3665164e+02 -3.5218914e+03 - 1.1222555e+02 -3.3625577e+02 -3.5216585e+03 - 1.3847027e+02 -3.3579735e+02 -3.5213643e+03 - 1.6360389e+02 -3.3530918e+02 -3.5210124e+03 - 1.8749025e+02 -3.3482648e+02 -3.5206070e+03 - 2.1002858e+02 -3.3438489e+02 -3.5201528e+03 - 2.3115206e+02 -3.3401869e+02 -3.5196546e+03 - 2.5082491e+02 -3.3375940e+02 -3.5191175e+03 - 2.6903851e+02 -3.3363479e+02 -3.5185466e+03 - 2.8580701e+02 -3.3366818e+02 -3.5179473e+03 - 3.0116283e+02 -3.3387817e+02 -3.5173244e+03 - 3.1515241e+02 -3.3427866e+02 -3.5166831e+03 - 3.2783235e+02 -3.3487900e+02 -3.5160281e+03 - 3.3926608e+02 -3.3568431e+02 -3.5153641e+03 - 3.4952109e+02 -3.3669599e+02 -3.5146954e+03 - 3.5866669e+02 -3.3791208e+02 -3.5140264e+03 - 3.6677231e+02 -3.3932779e+02 -3.5133609e+03 - 3.7390620e+02 -3.4093594e+02 -3.5127028e+03 - 3.8013450e+02 -3.4272731e+02 -3.5120555e+03 - 3.8552065e+02 -3.4469107e+02 -3.5114225e+03 - 3.9012498e+02 -3.4681507e+02 -3.5108068e+03 - 3.9400451e+02 -3.4908605e+02 -3.5102113e+03 - 3.9721293e+02 -3.5148996e+02 -3.5096388e+03 - 3.9980058e+02 -3.5401201e+02 -3.5090918e+03 - 4.0181462e+02 -3.5663694e+02 -3.5085727e+03 - 4.0329914e+02 -3.5934901e+02 -3.5080835e+03 - 4.0429537e+02 -3.6213215e+02 -3.5076263e+03 - 4.0484189e+02 -3.6496997e+02 -3.5072028e+03 - 4.0497480e+02 -3.6784583e+02 -3.5068148e+03 - 4.0472797e+02 -3.7074281e+02 -3.5064638e+03 - 4.0413321e+02 -3.7364376e+02 -3.5061509e+03 - 4.0322049e+02 -3.7653124e+02 -3.5058774e+03 - 4.0201809e+02 -3.7938750e+02 -3.5056443e+03 - 4.0055277e+02 -3.8219449e+02 -3.5054525e+03 - 3.9884998e+02 -3.8493374e+02 -3.5053026e+03 - 3.9693392e+02 -3.8758637e+02 -3.5051951e+03 - 3.9482775e+02 -3.9013299e+02 -3.5051304e+03 - 3.9255366e+02 -3.9255366e+02 -3.5051089e+03 - 3.9013299e+02 -3.9482775e+02 -3.5051304e+03 - 3.8758637e+02 -3.9693392e+02 -3.5051951e+03 - 3.8493374e+02 -3.9884998e+02 -3.5053026e+03 - 3.8219449e+02 -4.0055277e+02 -3.5054525e+03 - 3.7938750e+02 -4.0201809e+02 -3.5056443e+03 - 3.7653124e+02 -4.0322049e+02 -3.5058774e+03 - 3.7364376e+02 -4.0413321e+02 -3.5061509e+03 - 3.7074281e+02 -4.0472797e+02 -3.5064638e+03 - 3.6784583e+02 -4.0497480e+02 -3.5068148e+03 - 3.6496997e+02 -4.0484189e+02 -3.5072028e+03 - 3.6213215e+02 -4.0429537e+02 -3.5076263e+03 - 3.5934901e+02 -4.0329914e+02 -3.5080835e+03 - 3.5663694e+02 -4.0181462e+02 -3.5085727e+03 - 3.5401201e+02 -3.9980058e+02 -3.5090918e+03 - 3.5148996e+02 -3.9721293e+02 -3.5096388e+03 - 3.4908605e+02 -3.9400451e+02 -3.5102113e+03 - 3.4681507e+02 -3.9012498e+02 -3.5108068e+03 - 3.4469107e+02 -3.8552065e+02 -3.5114225e+03 - 3.4272731e+02 -3.8013450e+02 -3.5120555e+03 - 3.4093594e+02 -3.7390620e+02 -3.5127028e+03 - 3.3932779e+02 -3.6677231e+02 -3.5133609e+03 - 3.3791208e+02 -3.5866669e+02 -3.5140264e+03 - 3.3669599e+02 -3.4952109e+02 -3.5146954e+03 - 3.3568431e+02 -3.3926608e+02 -3.5153641e+03 - 3.3487900e+02 -3.2783235e+02 -3.5160281e+03 - 3.3427866e+02 -3.1515241e+02 -3.5166831e+03 - 3.3387817e+02 -3.0116283e+02 -3.5173244e+03 - 3.3366818e+02 -2.8580701e+02 -3.5179473e+03 - 3.3363479e+02 -2.6903851e+02 -3.5185466e+03 - 3.3375940e+02 -2.5082491e+02 -3.5191175e+03 - 3.3401869e+02 -2.3115206e+02 -3.5196546e+03 - 3.3438489e+02 -2.1002858e+02 -3.5201528e+03 - 3.3482648e+02 -1.8749025e+02 -3.5206070e+03 - 3.3530918e+02 -1.6360389e+02 -3.5210124e+03 - 3.3579735e+02 -1.3847027e+02 -3.5213643e+03 - 3.3625577e+02 -1.1222555e+02 -3.5216585e+03 - 3.3665164e+02 -8.5040668e+01 -3.5218914e+03 - 3.3695663e+02 -5.7118524e+01 -3.5220600e+03 - 3.3714887e+02 -2.8688700e+01 -3.5221620e+03 - 3.3721453e+02 -2.4067136e-09 -3.5221962e+03 - 2.9501208e+02 0.0000000e+00 -3.5284566e+03 - 2.9495485e+02 2.5075544e+01 -3.5284305e+03 - 2.9478727e+02 4.9926521e+01 -3.5283525e+03 - 2.9452144e+02 7.4336992e+01 -3.5282237e+03 - 2.9417648e+02 9.8107504e+01 -3.5280457e+03 - 2.9377715e+02 1.2106150e+02 -3.5278207e+03 - 2.9335218e+02 1.4304990e+02 -3.5275516e+03 - 2.9293243e+02 1.6395359e+02 -3.5272414e+03 - 2.9254916e+02 1.8368398e+02 -3.5268937e+03 - 2.9223248e+02 2.0218188e+02 -3.5265122e+03 - 2.9201012e+02 2.1941504e+02 -3.5261006e+03 - 2.9190649e+02 2.3537488e+02 -3.5256631e+03 - 2.9194217e+02 2.5007269e+02 -3.5252034e+03 - 2.9213354e+02 2.6353586e+02 -3.5247255e+03 - 2.9249287e+02 2.7580411e+02 -3.5242333e+03 - 2.9302838e+02 2.8692621e+02 -3.5237304e+03 - 2.9374458e+02 2.9695708e+02 -3.5232203e+03 - 2.9464264e+02 3.0595530e+02 -3.5227066e+03 - 2.9572079e+02 3.1398122e+02 -3.5221924e+03 - 2.9697472e+02 3.2109542e+02 -3.5216809e+03 - 2.9839798e+02 3.2735752e+02 -3.5211749e+03 - 2.9998236e+02 3.3282542e+02 -3.5206772e+03 - 3.0171816e+02 3.3755466e+02 -3.5201903e+03 - 3.0359454e+02 3.4159815e+02 -3.5197167e+03 - 3.0559970e+02 3.4500591e+02 -3.5192587e+03 - 3.0772111e+02 3.4782506e+02 -3.5188183e+03 - 3.0994565e+02 3.5009980e+02 -3.5183974e+03 - 3.1225974e+02 3.5187152e+02 -3.5179980e+03 - 3.1464944e+02 3.5317891e+02 -3.5176216e+03 - 3.1710052e+02 3.5405817e+02 -3.5172698e+03 - 3.1959851e+02 3.5454311e+02 -3.5169440e+03 - 3.2212872e+02 3.5466539e+02 -3.5166455e+03 - 3.2467625e+02 3.5445468e+02 -3.5163754e+03 - 3.2722601e+02 3.5393882e+02 -3.5161347e+03 - 3.2976271e+02 3.5314403e+02 -3.5159243e+03 - 3.3227078e+02 3.5209502e+02 -3.5157449e+03 - 3.3473442e+02 3.5081518e+02 -3.5155973e+03 - 3.3713749e+02 3.4932671e+02 -3.5154820e+03 - 3.3946350e+02 3.4765073e+02 -3.5153993e+03 - 3.4169552e+02 3.4580743e+02 -3.5153496e+03 - 3.4381615e+02 3.4381615e+02 -3.5153330e+03 - 3.4580743e+02 3.4169552e+02 -3.5153496e+03 - 3.4765073e+02 3.3946350e+02 -3.5153993e+03 - 3.4932671e+02 3.3713749e+02 -3.5154820e+03 - 3.5081518e+02 3.3473442e+02 -3.5155973e+03 - 3.5209502e+02 3.3227078e+02 -3.5157449e+03 - 3.5314403e+02 3.2976271e+02 -3.5159243e+03 - 3.5393882e+02 3.2722601e+02 -3.5161347e+03 - 3.5445468e+02 3.2467625e+02 -3.5163754e+03 - 3.5466539e+02 3.2212872e+02 -3.5166455e+03 - 3.5454311e+02 3.1959851e+02 -3.5169440e+03 - 3.5405817e+02 3.1710052e+02 -3.5172698e+03 - 3.5317891e+02 3.1464944e+02 -3.5176216e+03 - 3.5187152e+02 3.1225974e+02 -3.5179980e+03 - 3.5009980e+02 3.0994565e+02 -3.5183974e+03 - 3.4782506e+02 3.0772111e+02 -3.5188183e+03 - 3.4500591e+02 3.0559970e+02 -3.5192587e+03 - 3.4159815e+02 3.0359454e+02 -3.5197167e+03 - 3.3755466e+02 3.0171816e+02 -3.5201903e+03 - 3.3282542e+02 2.9998236e+02 -3.5206772e+03 - 3.2735752e+02 2.9839798e+02 -3.5211749e+03 - 3.2109542e+02 2.9697472e+02 -3.5216809e+03 - 3.1398122e+02 2.9572079e+02 -3.5221924e+03 - 3.0595530e+02 2.9464264e+02 -3.5227066e+03 - 2.9695708e+02 2.9374458e+02 -3.5232203e+03 - 2.8692621e+02 2.9302838e+02 -3.5237304e+03 - 2.7580411e+02 2.9249287e+02 -3.5242333e+03 - 2.6353586e+02 2.9213354e+02 -3.5247255e+03 - 2.5007269e+02 2.9194217e+02 -3.5252034e+03 - 2.3537488e+02 2.9190649e+02 -3.5256631e+03 - 2.1941504e+02 2.9201012e+02 -3.5261006e+03 - 2.0218188e+02 2.9223248e+02 -3.5265122e+03 - 1.8368398e+02 2.9254916e+02 -3.5268937e+03 - 1.6395359e+02 2.9293243e+02 -3.5272414e+03 - 1.4304990e+02 2.9335218e+02 -3.5275516e+03 - 1.2106150e+02 2.9377715e+02 -3.5278207e+03 - 9.8107504e+01 2.9417648e+02 -3.5280457e+03 - 7.4336992e+01 2.9452144e+02 -3.5282237e+03 - 4.9926521e+01 2.9478727e+02 -3.5283525e+03 - 2.5075544e+01 2.9495485e+02 -3.5284305e+03 - 0.0000000e+00 2.9501208e+02 -3.5284566e+03 - -2.5075544e+01 2.9495485e+02 -3.5284305e+03 - -4.9926521e+01 2.9478727e+02 -3.5283525e+03 - -7.4336992e+01 2.9452144e+02 -3.5282237e+03 - -9.8107504e+01 2.9417648e+02 -3.5280457e+03 - -1.2106150e+02 2.9377715e+02 -3.5278207e+03 - -1.4304990e+02 2.9335218e+02 -3.5275516e+03 - -1.6395359e+02 2.9293243e+02 -3.5272414e+03 - -1.8368398e+02 2.9254916e+02 -3.5268937e+03 - -2.0218188e+02 2.9223248e+02 -3.5265122e+03 - -2.1941504e+02 2.9201012e+02 -3.5261006e+03 - -2.3537488e+02 2.9190649e+02 -3.5256631e+03 - -2.5007269e+02 2.9194217e+02 -3.5252034e+03 - -2.6353586e+02 2.9213354e+02 -3.5247255e+03 - -2.7580411e+02 2.9249287e+02 -3.5242333e+03 - -2.8692621e+02 2.9302838e+02 -3.5237304e+03 - -2.9695708e+02 2.9374458e+02 -3.5232203e+03 - -3.0595530e+02 2.9464264e+02 -3.5227066e+03 - -3.1398122e+02 2.9572079e+02 -3.5221924e+03 - -3.2109542e+02 2.9697472e+02 -3.5216809e+03 - -3.2735752e+02 2.9839798e+02 -3.5211749e+03 - -3.3282542e+02 2.9998236e+02 -3.5206772e+03 - -3.3755466e+02 3.0171816e+02 -3.5201903e+03 - -3.4159815e+02 3.0359454e+02 -3.5197167e+03 - -3.4500591e+02 3.0559970e+02 -3.5192587e+03 - -3.4782506e+02 3.0772111e+02 -3.5188183e+03 - -3.5009980e+02 3.0994565e+02 -3.5183974e+03 - -3.5187152e+02 3.1225974e+02 -3.5179980e+03 - -3.5317891e+02 3.1464944e+02 -3.5176216e+03 - -3.5405817e+02 3.1710052e+02 -3.5172698e+03 - -3.5454311e+02 3.1959851e+02 -3.5169440e+03 - -3.5466539e+02 3.2212872e+02 -3.5166455e+03 - -3.5445468e+02 3.2467625e+02 -3.5163754e+03 - -3.5393882e+02 3.2722601e+02 -3.5161347e+03 - -3.5314403e+02 3.2976271e+02 -3.5159243e+03 - -3.5209502e+02 3.3227078e+02 -3.5157449e+03 - -3.5081518e+02 3.3473442e+02 -3.5155973e+03 - -3.4932671e+02 3.3713749e+02 -3.5154820e+03 - -3.4765073e+02 3.3946350e+02 -3.5153993e+03 - -3.4580743e+02 3.4169552e+02 -3.5153496e+03 - -3.4381615e+02 3.4381615e+02 -3.5153330e+03 - -3.4169552e+02 3.4580743e+02 -3.5153496e+03 - -3.3946350e+02 3.4765073e+02 -3.5153993e+03 - -3.3713749e+02 3.4932671e+02 -3.5154820e+03 - -3.3473442e+02 3.5081518e+02 -3.5155973e+03 - -3.3227078e+02 3.5209502e+02 -3.5157449e+03 - -3.2976271e+02 3.5314403e+02 -3.5159243e+03 - -3.2722601e+02 3.5393882e+02 -3.5161347e+03 - -3.2467625e+02 3.5445468e+02 -3.5163754e+03 - -3.2212872e+02 3.5466539e+02 -3.5166455e+03 - -3.1959851e+02 3.5454311e+02 -3.5169440e+03 - -3.1710052e+02 3.5405817e+02 -3.5172698e+03 - -3.1464944e+02 3.5317891e+02 -3.5176216e+03 - -3.1225974e+02 3.5187152e+02 -3.5179980e+03 - -3.0994565e+02 3.5009980e+02 -3.5183974e+03 - -3.0772111e+02 3.4782506e+02 -3.5188183e+03 - -3.0559970e+02 3.4500591e+02 -3.5192587e+03 - -3.0359454e+02 3.4159815e+02 -3.5197167e+03 - -3.0171816e+02 3.3755466e+02 -3.5201903e+03 - -2.9998236e+02 3.3282542e+02 -3.5206772e+03 - -2.9839798e+02 3.2735752e+02 -3.5211749e+03 - -2.9697472e+02 3.2109542e+02 -3.5216809e+03 - -2.9572079e+02 3.1398122e+02 -3.5221924e+03 - -2.9464264e+02 3.0595530e+02 -3.5227066e+03 - -2.9374458e+02 2.9695708e+02 -3.5232203e+03 - -2.9302838e+02 2.8692621e+02 -3.5237304e+03 - -2.9249287e+02 2.7580411e+02 -3.5242333e+03 - -2.9213354e+02 2.6353586e+02 -3.5247255e+03 - -2.9194217e+02 2.5007269e+02 -3.5252034e+03 - -2.9190649e+02 2.3537488e+02 -3.5256631e+03 - -2.9201012e+02 2.1941504e+02 -3.5261006e+03 - -2.9223248e+02 2.0218188e+02 -3.5265122e+03 - -2.9254916e+02 1.8368398e+02 -3.5268937e+03 - -2.9293243e+02 1.6395359e+02 -3.5272414e+03 - -2.9335218e+02 1.4304990e+02 -3.5275516e+03 - -2.9377715e+02 1.2106150e+02 -3.5278207e+03 - -2.9417648e+02 9.8107504e+01 -3.5280457e+03 - -2.9452144e+02 7.4336992e+01 -3.5282237e+03 - -2.9478727e+02 4.9926521e+01 -3.5283525e+03 - -2.9495485e+02 2.5075544e+01 -3.5284305e+03 - -2.9501208e+02 2.4067136e-09 -3.5284566e+03 - -2.9495485e+02 -2.5075544e+01 -3.5284305e+03 - -2.9478727e+02 -4.9926521e+01 -3.5283525e+03 - -2.9452144e+02 -7.4336992e+01 -3.5282237e+03 - -2.9417648e+02 -9.8107504e+01 -3.5280457e+03 - -2.9377715e+02 -1.2106150e+02 -3.5278207e+03 - -2.9335218e+02 -1.4304990e+02 -3.5275516e+03 - -2.9293243e+02 -1.6395359e+02 -3.5272414e+03 - -2.9254916e+02 -1.8368398e+02 -3.5268937e+03 - -2.9223248e+02 -2.0218188e+02 -3.5265122e+03 - -2.9201012e+02 -2.1941504e+02 -3.5261006e+03 - -2.9190649e+02 -2.3537488e+02 -3.5256631e+03 - -2.9194217e+02 -2.5007269e+02 -3.5252034e+03 - -2.9213354e+02 -2.6353586e+02 -3.5247255e+03 - -2.9249287e+02 -2.7580411e+02 -3.5242333e+03 - -2.9302838e+02 -2.8692621e+02 -3.5237304e+03 - -2.9374458e+02 -2.9695708e+02 -3.5232203e+03 - -2.9464264e+02 -3.0595530e+02 -3.5227066e+03 - -2.9572079e+02 -3.1398122e+02 -3.5221924e+03 - -2.9697472e+02 -3.2109542e+02 -3.5216809e+03 - -2.9839798e+02 -3.2735752e+02 -3.5211749e+03 - -2.9998236e+02 -3.3282542e+02 -3.5206772e+03 - -3.0171816e+02 -3.3755466e+02 -3.5201903e+03 - -3.0359454e+02 -3.4159815e+02 -3.5197167e+03 - -3.0559970e+02 -3.4500591e+02 -3.5192587e+03 - -3.0772111e+02 -3.4782506e+02 -3.5188183e+03 - -3.0994565e+02 -3.5009980e+02 -3.5183974e+03 - -3.1225974e+02 -3.5187152e+02 -3.5179980e+03 - -3.1464944e+02 -3.5317891e+02 -3.5176216e+03 - -3.1710052e+02 -3.5405817e+02 -3.5172698e+03 - -3.1959851e+02 -3.5454311e+02 -3.5169440e+03 - -3.2212872e+02 -3.5466539e+02 -3.5166455e+03 - -3.2467625e+02 -3.5445468e+02 -3.5163754e+03 - -3.2722601e+02 -3.5393882e+02 -3.5161347e+03 - -3.2976271e+02 -3.5314403e+02 -3.5159243e+03 - -3.3227078e+02 -3.5209502e+02 -3.5157449e+03 - -3.3473442e+02 -3.5081518e+02 -3.5155973e+03 - -3.3713749e+02 -3.4932671e+02 -3.5154820e+03 - -3.3946350e+02 -3.4765073e+02 -3.5153993e+03 - -3.4169552e+02 -3.4580743e+02 -3.5153496e+03 - -3.4381615e+02 -3.4381615e+02 -3.5153330e+03 - -3.4580743e+02 -3.4169552e+02 -3.5153496e+03 - -3.4765073e+02 -3.3946350e+02 -3.5153993e+03 - -3.4932671e+02 -3.3713749e+02 -3.5154820e+03 - -3.5081518e+02 -3.3473442e+02 -3.5155973e+03 - -3.5209502e+02 -3.3227078e+02 -3.5157449e+03 - -3.5314403e+02 -3.2976271e+02 -3.5159243e+03 - -3.5393882e+02 -3.2722602e+02 -3.5161347e+03 - -3.5445468e+02 -3.2467625e+02 -3.5163754e+03 - -3.5466539e+02 -3.2212872e+02 -3.5166455e+03 - -3.5454311e+02 -3.1959851e+02 -3.5169440e+03 - -3.5405817e+02 -3.1710052e+02 -3.5172698e+03 - -3.5317891e+02 -3.1464944e+02 -3.5176216e+03 - -3.5187152e+02 -3.1225974e+02 -3.5179980e+03 - -3.5009980e+02 -3.0994565e+02 -3.5183974e+03 - -3.4782506e+02 -3.0772111e+02 -3.5188183e+03 - -3.4500591e+02 -3.0559970e+02 -3.5192587e+03 - -3.4159815e+02 -3.0359454e+02 -3.5197167e+03 - -3.3755466e+02 -3.0171816e+02 -3.5201903e+03 - -3.3282542e+02 -2.9998236e+02 -3.5206772e+03 - -3.2735752e+02 -2.9839798e+02 -3.5211749e+03 - -3.2109542e+02 -2.9697472e+02 -3.5216809e+03 - -3.1398122e+02 -2.9572079e+02 -3.5221924e+03 - -3.0595530e+02 -2.9464264e+02 -3.5227066e+03 - -2.9695708e+02 -2.9374458e+02 -3.5232203e+03 - -2.8692621e+02 -2.9302838e+02 -3.5237304e+03 - -2.7580411e+02 -2.9249287e+02 -3.5242333e+03 - -2.6353586e+02 -2.9213354e+02 -3.5247255e+03 - -2.5007269e+02 -2.9194217e+02 -3.5252034e+03 - -2.3537488e+02 -2.9190649e+02 -3.5256631e+03 - -2.1941504e+02 -2.9201012e+02 -3.5261006e+03 - -2.0218188e+02 -2.9223248e+02 -3.5265122e+03 - -1.8368398e+02 -2.9254916e+02 -3.5268937e+03 - -1.6395359e+02 -2.9293243e+02 -3.5272414e+03 - -1.4304990e+02 -2.9335218e+02 -3.5275516e+03 - -1.2106150e+02 -2.9377715e+02 -3.5278207e+03 - -9.8107504e+01 -2.9417648e+02 -3.5280457e+03 - -7.4336992e+01 -2.9452144e+02 -3.5282237e+03 - -4.9926521e+01 -2.9478727e+02 -3.5283525e+03 - -2.5075544e+01 -2.9495485e+02 -3.5284305e+03 - -2.4067136e-09 -2.9501208e+02 -3.5284566e+03 - 2.5075544e+01 -2.9495485e+02 -3.5284305e+03 - 4.9926521e+01 -2.9478727e+02 -3.5283525e+03 - 7.4336992e+01 -2.9452144e+02 -3.5282237e+03 - 9.8107504e+01 -2.9417648e+02 -3.5280457e+03 - 1.2106150e+02 -2.9377715e+02 -3.5278207e+03 - 1.4304990e+02 -2.9335218e+02 -3.5275516e+03 - 1.6395359e+02 -2.9293243e+02 -3.5272414e+03 - 1.8368398e+02 -2.9254916e+02 -3.5268937e+03 - 2.0218188e+02 -2.9223248e+02 -3.5265122e+03 - 2.1941504e+02 -2.9201012e+02 -3.5261006e+03 - 2.3537488e+02 -2.9190649e+02 -3.5256631e+03 - 2.5007269e+02 -2.9194217e+02 -3.5252034e+03 - 2.6353586e+02 -2.9213354e+02 -3.5247255e+03 - 2.7580411e+02 -2.9249287e+02 -3.5242333e+03 - 2.8692621e+02 -2.9302838e+02 -3.5237304e+03 - 2.9695708e+02 -2.9374458e+02 -3.5232203e+03 - 3.0595530e+02 -2.9464264e+02 -3.5227066e+03 - 3.1398122e+02 -2.9572079e+02 -3.5221924e+03 - 3.2109542e+02 -2.9697472e+02 -3.5216809e+03 - 3.2735752e+02 -2.9839798e+02 -3.5211749e+03 - 3.3282542e+02 -2.9998236e+02 -3.5206772e+03 - 3.3755466e+02 -3.0171816e+02 -3.5201903e+03 - 3.4159815e+02 -3.0359454e+02 -3.5197167e+03 - 3.4500591e+02 -3.0559970e+02 -3.5192587e+03 - 3.4782506e+02 -3.0772111e+02 -3.5188183e+03 - 3.5009980e+02 -3.0994565e+02 -3.5183974e+03 - 3.5187152e+02 -3.1225974e+02 -3.5179980e+03 - 3.5317891e+02 -3.1464944e+02 -3.5176216e+03 - 3.5405817e+02 -3.1710052e+02 -3.5172698e+03 - 3.5454311e+02 -3.1959851e+02 -3.5169440e+03 - 3.5466539e+02 -3.2212872e+02 -3.5166455e+03 - 3.5445468e+02 -3.2467625e+02 -3.5163754e+03 - 3.5393882e+02 -3.2722601e+02 -3.5161347e+03 - 3.5314403e+02 -3.2976271e+02 -3.5159243e+03 - 3.5209502e+02 -3.3227078e+02 -3.5157449e+03 - 3.5081518e+02 -3.3473442e+02 -3.5155973e+03 - 3.4932671e+02 -3.3713749e+02 -3.5154820e+03 - 3.4765073e+02 -3.3946350e+02 -3.5153993e+03 - 3.4580743e+02 -3.4169552e+02 -3.5153496e+03 - 3.4381615e+02 -3.4381615e+02 -3.5153330e+03 - 3.4169552e+02 -3.4580743e+02 -3.5153496e+03 - 3.3946350e+02 -3.4765073e+02 -3.5153993e+03 - 3.3713749e+02 -3.4932671e+02 -3.5154820e+03 - 3.3473442e+02 -3.5081518e+02 -3.5155973e+03 - 3.3227078e+02 -3.5209502e+02 -3.5157449e+03 - 3.2976271e+02 -3.5314403e+02 -3.5159243e+03 - 3.2722601e+02 -3.5393882e+02 -3.5161347e+03 - 3.2467625e+02 -3.5445468e+02 -3.5163754e+03 - 3.2212872e+02 -3.5466539e+02 -3.5166455e+03 - 3.1959851e+02 -3.5454311e+02 -3.5169440e+03 - 3.1710052e+02 -3.5405817e+02 -3.5172698e+03 - 3.1464944e+02 -3.5317891e+02 -3.5176216e+03 - 3.1225974e+02 -3.5187152e+02 -3.5179980e+03 - 3.0994565e+02 -3.5009980e+02 -3.5183974e+03 - 3.0772111e+02 -3.4782506e+02 -3.5188183e+03 - 3.0559970e+02 -3.4500591e+02 -3.5192587e+03 - 3.0359454e+02 -3.4159815e+02 -3.5197167e+03 - 3.0171816e+02 -3.3755466e+02 -3.5201903e+03 - 2.9998236e+02 -3.3282542e+02 -3.5206772e+03 - 2.9839798e+02 -3.2735752e+02 -3.5211749e+03 - 2.9697472e+02 -3.2109542e+02 -3.5216809e+03 - 2.9572079e+02 -3.1398122e+02 -3.5221924e+03 - 2.9464264e+02 -3.0595530e+02 -3.5227066e+03 - 2.9374458e+02 -2.9695708e+02 -3.5232203e+03 - 2.9302838e+02 -2.8692621e+02 -3.5237304e+03 - 2.9249287e+02 -2.7580411e+02 -3.5242333e+03 - 2.9213354e+02 -2.6353586e+02 -3.5247255e+03 - 2.9194217e+02 -2.5007269e+02 -3.5252034e+03 - 2.9190649e+02 -2.3537488e+02 -3.5256631e+03 - 2.9201012e+02 -2.1941504e+02 -3.5261006e+03 - 2.9223248e+02 -2.0218188e+02 -3.5265122e+03 - 2.9254916e+02 -1.8368398e+02 -3.5268937e+03 - 2.9293243e+02 -1.6395359e+02 -3.5272414e+03 - 2.9335218e+02 -1.4304990e+02 -3.5275516e+03 - 2.9377715e+02 -1.2106150e+02 -3.5278207e+03 - 2.9417648e+02 -9.8107504e+01 -3.5280457e+03 - 2.9452144e+02 -7.4336992e+01 -3.5282237e+03 - 2.9478727e+02 -4.9926521e+01 -3.5283525e+03 - 2.9495485e+02 -2.5075544e+01 -3.5284305e+03 - 2.9501208e+02 -2.4067136e-09 -3.5284566e+03 - 2.5282945e+02 2.4067136e-09 -3.5338699e+03 - 2.5278055e+02 2.1473392e+01 -3.5338507e+03 - 2.5263740e+02 4.2755724e+01 -3.5337935e+03 - 2.5241034e+02 6.3663202e+01 -3.5336990e+03 - 2.5211574e+02 8.4025912e+01 -3.5335685e+03 - 2.5177483e+02 1.0369325e+02 -3.5334034e+03 - 2.5141223e+02 1.2253780e+02 -3.5332058e+03 - 2.5105443e+02 1.4045747e+02 -3.5329781e+03 - 2.5072828e+02 1.5737605e+02 -3.5327226e+03 - 2.5045967e+02 1.7324228e+02 -3.5324422e+03 - 2.5027246e+02 1.8802783e+02 -3.5321397e+03 - 2.5018769e+02 2.0172456e+02 -3.5318179e+03 - 2.5022310e+02 2.1434140e+02 -3.5314797e+03 - 2.5039282e+02 2.2590106e+02 -3.5311279e+03 - 2.5070744e+02 2.3643693e+02 -3.5307655e+03 - 2.5117404e+02 2.4599026e+02 -3.5303951e+03 - 2.5179650e+02 2.5460766e+02 -3.5300194e+03 - 2.5257581e+02 2.6233903e+02 -3.5296408e+03 - 2.5351039e+02 2.6923587e+02 -3.5292618e+03 - 2.5459646e+02 2.7534994e+02 -3.5288847e+03 - 2.5582838e+02 2.8073231e+02 -3.5285116e+03 - 2.5719898e+02 2.8543258e+02 -3.5281446e+03 - 2.5869982e+02 2.8949843e+02 -3.5277855e+03 - 2.6032143e+02 2.9297525e+02 -3.5274361e+03 - 2.6205355e+02 2.9590604e+02 -3.5270982e+03 - 2.6388528e+02 2.9833128e+02 -3.5267733e+03 - 2.6580521e+02 3.0028895e+02 -3.5264628e+03 - 2.6780155e+02 3.0181463e+02 -3.5261681e+03 - 2.6986224e+02 3.0294159e+02 -3.5258904e+03 - 2.7197495e+02 3.0370090e+02 -3.5256309e+03 - 2.7412715e+02 3.0412163e+02 -3.5253905e+03 - 2.7630619e+02 3.0423094e+02 -3.5251702e+03 - 2.7849921e+02 3.0405428e+02 -3.5249709e+03 - 2.8069324e+02 3.0361554e+02 -3.5247933e+03 - 2.8287510e+02 3.0293718e+02 -3.5246381e+03 - 2.8503147e+02 3.0204036e+02 -3.5245058e+03 - 2.8714876e+02 3.0094509e+02 -3.5243969e+03 - 2.8921317e+02 2.9967036e+02 -3.5243118e+03 - 2.9121058e+02 2.9823424e+02 -3.5242508e+03 - 2.9312652e+02 2.9665398e+02 -3.5242141e+03 - 2.9494610e+02 2.9494610e+02 -3.5242018e+03 - 2.9665398e+02 2.9312652e+02 -3.5242141e+03 - 2.9823424e+02 2.9121058e+02 -3.5242508e+03 - 2.9967036e+02 2.8921317e+02 -3.5243118e+03 - 3.0094509e+02 2.8714876e+02 -3.5243969e+03 - 3.0204036e+02 2.8503147e+02 -3.5245058e+03 - 3.0293718e+02 2.8287510e+02 -3.5246381e+03 - 3.0361554e+02 2.8069324e+02 -3.5247933e+03 - 3.0405428e+02 2.7849921e+02 -3.5249709e+03 - 3.0423094e+02 2.7630619e+02 -3.5251702e+03 - 3.0412163e+02 2.7412715e+02 -3.5253905e+03 - 3.0370090e+02 2.7197495e+02 -3.5256309e+03 - 3.0294159e+02 2.6986224e+02 -3.5258904e+03 - 3.0181463e+02 2.6780155e+02 -3.5261681e+03 - 3.0028895e+02 2.6580521e+02 -3.5264628e+03 - 2.9833128e+02 2.6388528e+02 -3.5267733e+03 - 2.9590604e+02 2.6205355e+02 -3.5270982e+03 - 2.9297525e+02 2.6032143e+02 -3.5274361e+03 - 2.8949843e+02 2.5869982e+02 -3.5277855e+03 - 2.8543258e+02 2.5719898e+02 -3.5281446e+03 - 2.8073231e+02 2.5582838e+02 -3.5285116e+03 - 2.7534994e+02 2.5459646e+02 -3.5288847e+03 - 2.6923587e+02 2.5351039e+02 -3.5292618e+03 - 2.6233903e+02 2.5257581e+02 -3.5296408e+03 - 2.5460766e+02 2.5179650e+02 -3.5300194e+03 - 2.4599026e+02 2.5117404e+02 -3.5303951e+03 - 2.3643693e+02 2.5070744e+02 -3.5307655e+03 - 2.2590106e+02 2.5039282e+02 -3.5311279e+03 - 2.1434140e+02 2.5022310e+02 -3.5314797e+03 - 2.0172456e+02 2.5018769e+02 -3.5318179e+03 - 1.8802783e+02 2.5027246e+02 -3.5321397e+03 - 1.7324228e+02 2.5045967e+02 -3.5324422e+03 - 1.5737605e+02 2.5072828e+02 -3.5327226e+03 - 1.4045747e+02 2.5105443e+02 -3.5329781e+03 - 1.2253780e+02 2.5141223e+02 -3.5332058e+03 - 1.0369325e+02 2.5177483e+02 -3.5334034e+03 - 8.4025912e+01 2.5211574e+02 -3.5335685e+03 - 6.3663202e+01 2.5241034e+02 -3.5336990e+03 - 4.2755724e+01 2.5263740e+02 -3.5337935e+03 - 2.1473392e+01 2.5278055e+02 -3.5338507e+03 - 2.4067136e-09 2.5282945e+02 -3.5338699e+03 - -2.1473392e+01 2.5278055e+02 -3.5338507e+03 - -4.2755724e+01 2.5263740e+02 -3.5337935e+03 - -6.3663202e+01 2.5241034e+02 -3.5336990e+03 - -8.4025912e+01 2.5211574e+02 -3.5335685e+03 - -1.0369325e+02 2.5177483e+02 -3.5334034e+03 - -1.2253780e+02 2.5141223e+02 -3.5332058e+03 - -1.4045747e+02 2.5105443e+02 -3.5329781e+03 - -1.5737605e+02 2.5072828e+02 -3.5327226e+03 - -1.7324228e+02 2.5045967e+02 -3.5324422e+03 - -1.8802783e+02 2.5027246e+02 -3.5321397e+03 - -2.0172456e+02 2.5018769e+02 -3.5318179e+03 - -2.1434140e+02 2.5022310e+02 -3.5314797e+03 - -2.2590106e+02 2.5039282e+02 -3.5311279e+03 - -2.3643693e+02 2.5070744e+02 -3.5307655e+03 - -2.4599026e+02 2.5117404e+02 -3.5303951e+03 - -2.5460766e+02 2.5179650e+02 -3.5300194e+03 - -2.6233903e+02 2.5257581e+02 -3.5296408e+03 - -2.6923587e+02 2.5351039e+02 -3.5292618e+03 - -2.7534994e+02 2.5459646e+02 -3.5288847e+03 - -2.8073231e+02 2.5582838e+02 -3.5285116e+03 - -2.8543258e+02 2.5719898e+02 -3.5281446e+03 - -2.8949843e+02 2.5869982e+02 -3.5277855e+03 - -2.9297525e+02 2.6032143e+02 -3.5274361e+03 - -2.9590604e+02 2.6205355e+02 -3.5270982e+03 - -2.9833128e+02 2.6388528e+02 -3.5267733e+03 - -3.0028895e+02 2.6580521e+02 -3.5264628e+03 - -3.0181463e+02 2.6780155e+02 -3.5261681e+03 - -3.0294159e+02 2.6986224e+02 -3.5258904e+03 - -3.0370090e+02 2.7197495e+02 -3.5256309e+03 - -3.0412163e+02 2.7412715e+02 -3.5253905e+03 - -3.0423094e+02 2.7630619e+02 -3.5251702e+03 - -3.0405428e+02 2.7849921e+02 -3.5249709e+03 - -3.0361554e+02 2.8069324e+02 -3.5247933e+03 - -3.0293718e+02 2.8287510e+02 -3.5246381e+03 - -3.0204036e+02 2.8503147e+02 -3.5245058e+03 - -3.0094509e+02 2.8714876e+02 -3.5243969e+03 - -2.9967036e+02 2.8921317e+02 -3.5243118e+03 - -2.9823424e+02 2.9121058e+02 -3.5242508e+03 - -2.9665398e+02 2.9312652e+02 -3.5242141e+03 - -2.9494610e+02 2.9494610e+02 -3.5242018e+03 - -2.9312652e+02 2.9665398e+02 -3.5242141e+03 - -2.9121058e+02 2.9823424e+02 -3.5242508e+03 - -2.8921317e+02 2.9967036e+02 -3.5243118e+03 - -2.8714876e+02 3.0094509e+02 -3.5243969e+03 - -2.8503147e+02 3.0204036e+02 -3.5245058e+03 - -2.8287510e+02 3.0293718e+02 -3.5246381e+03 - -2.8069324e+02 3.0361554e+02 -3.5247933e+03 - -2.7849921e+02 3.0405428e+02 -3.5249709e+03 - -2.7630619e+02 3.0423094e+02 -3.5251702e+03 - -2.7412715e+02 3.0412163e+02 -3.5253905e+03 - -2.7197495e+02 3.0370090e+02 -3.5256309e+03 - -2.6986224e+02 3.0294159e+02 -3.5258904e+03 - -2.6780155e+02 3.0181463e+02 -3.5261681e+03 - -2.6580521e+02 3.0028895e+02 -3.5264628e+03 - -2.6388528e+02 2.9833128e+02 -3.5267733e+03 - -2.6205355e+02 2.9590604e+02 -3.5270982e+03 - -2.6032143e+02 2.9297525e+02 -3.5274361e+03 - -2.5869982e+02 2.8949843e+02 -3.5277855e+03 - -2.5719898e+02 2.8543258e+02 -3.5281446e+03 - -2.5582838e+02 2.8073231e+02 -3.5285116e+03 - -2.5459646e+02 2.7534994e+02 -3.5288847e+03 - -2.5351039e+02 2.6923587e+02 -3.5292618e+03 - -2.5257581e+02 2.6233903e+02 -3.5296408e+03 - -2.5179650e+02 2.5460766e+02 -3.5300194e+03 - -2.5117404e+02 2.4599026e+02 -3.5303951e+03 - -2.5070744e+02 2.3643693e+02 -3.5307655e+03 - -2.5039282e+02 2.2590106e+02 -3.5311279e+03 - -2.5022310e+02 2.1434140e+02 -3.5314797e+03 - -2.5018769e+02 2.0172456e+02 -3.5318179e+03 - -2.5027246e+02 1.8802783e+02 -3.5321397e+03 - -2.5045967e+02 1.7324228e+02 -3.5324422e+03 - -2.5072828e+02 1.5737605e+02 -3.5327226e+03 - -2.5105443e+02 1.4045747e+02 -3.5329781e+03 - -2.5141223e+02 1.2253780e+02 -3.5332058e+03 - -2.5177483e+02 1.0369325e+02 -3.5334034e+03 - -2.5211574e+02 8.4025912e+01 -3.5335685e+03 - -2.5241034e+02 6.3663202e+01 -3.5336990e+03 - -2.5263740e+02 4.2755724e+01 -3.5337935e+03 - -2.5278055e+02 2.1473392e+01 -3.5338507e+03 - -2.5282945e+02 -2.4067136e-09 -3.5338699e+03 - -2.5278055e+02 -2.1473392e+01 -3.5338507e+03 - -2.5263740e+02 -4.2755724e+01 -3.5337935e+03 - -2.5241034e+02 -6.3663202e+01 -3.5336990e+03 - -2.5211574e+02 -8.4025912e+01 -3.5335685e+03 - -2.5177483e+02 -1.0369325e+02 -3.5334034e+03 - -2.5141223e+02 -1.2253780e+02 -3.5332058e+03 - -2.5105443e+02 -1.4045747e+02 -3.5329781e+03 - -2.5072828e+02 -1.5737605e+02 -3.5327226e+03 - -2.5045967e+02 -1.7324228e+02 -3.5324422e+03 - -2.5027246e+02 -1.8802783e+02 -3.5321397e+03 - -2.5018769e+02 -2.0172456e+02 -3.5318179e+03 - -2.5022310e+02 -2.1434140e+02 -3.5314797e+03 - -2.5039282e+02 -2.2590106e+02 -3.5311279e+03 - -2.5070744e+02 -2.3643693e+02 -3.5307655e+03 - -2.5117404e+02 -2.4599026e+02 -3.5303951e+03 - -2.5179650e+02 -2.5460766e+02 -3.5300194e+03 - -2.5257581e+02 -2.6233903e+02 -3.5296408e+03 - -2.5351039e+02 -2.6923587e+02 -3.5292618e+03 - -2.5459646e+02 -2.7534994e+02 -3.5288847e+03 - -2.5582838e+02 -2.8073231e+02 -3.5285116e+03 - -2.5719898e+02 -2.8543258e+02 -3.5281446e+03 - -2.5869982e+02 -2.8949843e+02 -3.5277855e+03 - -2.6032143e+02 -2.9297525e+02 -3.5274361e+03 - -2.6205355e+02 -2.9590604e+02 -3.5270982e+03 - -2.6388528e+02 -2.9833128e+02 -3.5267733e+03 - -2.6580521e+02 -3.0028895e+02 -3.5264628e+03 - -2.6780155e+02 -3.0181463e+02 -3.5261681e+03 - -2.6986224e+02 -3.0294159e+02 -3.5258904e+03 - -2.7197495e+02 -3.0370090e+02 -3.5256309e+03 - -2.7412715e+02 -3.0412163e+02 -3.5253905e+03 - -2.7630619e+02 -3.0423094e+02 -3.5251702e+03 - -2.7849921e+02 -3.0405428e+02 -3.5249709e+03 - -2.8069324e+02 -3.0361554e+02 -3.5247933e+03 - -2.8287510e+02 -3.0293718e+02 -3.5246381e+03 - -2.8503147e+02 -3.0204036e+02 -3.5245058e+03 - -2.8714876e+02 -3.0094509e+02 -3.5243969e+03 - -2.8921317e+02 -2.9967036e+02 -3.5243118e+03 - -2.9121058e+02 -2.9823424e+02 -3.5242508e+03 - -2.9312652e+02 -2.9665398e+02 -3.5242141e+03 - -2.9494610e+02 -2.9494610e+02 -3.5242018e+03 - -2.9665398e+02 -2.9312652e+02 -3.5242141e+03 - -2.9823424e+02 -2.9121058e+02 -3.5242508e+03 - -2.9967036e+02 -2.8921317e+02 -3.5243118e+03 - -3.0094509e+02 -2.8714876e+02 -3.5243969e+03 - -3.0204036e+02 -2.8503147e+02 -3.5245058e+03 - -3.0293718e+02 -2.8287510e+02 -3.5246381e+03 - -3.0361554e+02 -2.8069324e+02 -3.5247933e+03 - -3.0405428e+02 -2.7849921e+02 -3.5249709e+03 - -3.0423094e+02 -2.7630619e+02 -3.5251702e+03 - -3.0412163e+02 -2.7412715e+02 -3.5253905e+03 - -3.0370090e+02 -2.7197495e+02 -3.5256309e+03 - -3.0294159e+02 -2.6986224e+02 -3.5258904e+03 - -3.0181463e+02 -2.6780155e+02 -3.5261681e+03 - -3.0028895e+02 -2.6580521e+02 -3.5264628e+03 - -2.9833128e+02 -2.6388528e+02 -3.5267733e+03 - -2.9590604e+02 -2.6205355e+02 -3.5270982e+03 - -2.9297525e+02 -2.6032143e+02 -3.5274361e+03 - -2.8949843e+02 -2.5869982e+02 -3.5277855e+03 - -2.8543258e+02 -2.5719898e+02 -3.5281446e+03 - -2.8073231e+02 -2.5582838e+02 -3.5285116e+03 - -2.7534994e+02 -2.5459646e+02 -3.5288847e+03 - -2.6923587e+02 -2.5351039e+02 -3.5292618e+03 - -2.6233903e+02 -2.5257581e+02 -3.5296408e+03 - -2.5460766e+02 -2.5179650e+02 -3.5300194e+03 - -2.4599026e+02 -2.5117404e+02 -3.5303951e+03 - -2.3643693e+02 -2.5070744e+02 -3.5307655e+03 - -2.2590106e+02 -2.5039282e+02 -3.5311279e+03 - -2.1434140e+02 -2.5022310e+02 -3.5314797e+03 - -2.0172456e+02 -2.5018769e+02 -3.5318179e+03 - -1.8802783e+02 -2.5027246e+02 -3.5321397e+03 - -1.7324228e+02 -2.5045967e+02 -3.5324422e+03 - -1.5737605e+02 -2.5072828e+02 -3.5327226e+03 - -1.4045747e+02 -2.5105443e+02 -3.5329781e+03 - -1.2253780e+02 -2.5141223e+02 -3.5332058e+03 - -1.0369325e+02 -2.5177483e+02 -3.5334034e+03 - -8.4025912e+01 -2.5211574e+02 -3.5335685e+03 - -6.3663202e+01 -2.5241034e+02 -3.5336990e+03 - -4.2755724e+01 -2.5263740e+02 -3.5337935e+03 - -2.1473392e+01 -2.5278055e+02 -3.5338507e+03 - -2.4067136e-09 -2.5282945e+02 -3.5338699e+03 - 2.1473392e+01 -2.5278055e+02 -3.5338507e+03 - 4.2755724e+01 -2.5263740e+02 -3.5337935e+03 - 6.3663202e+01 -2.5241034e+02 -3.5336990e+03 - 8.4025912e+01 -2.5211574e+02 -3.5335685e+03 - 1.0369325e+02 -2.5177483e+02 -3.5334034e+03 - 1.2253780e+02 -2.5141223e+02 -3.5332058e+03 - 1.4045747e+02 -2.5105443e+02 -3.5329781e+03 - 1.5737605e+02 -2.5072828e+02 -3.5327226e+03 - 1.7324228e+02 -2.5045967e+02 -3.5324422e+03 - 1.8802783e+02 -2.5027246e+02 -3.5321397e+03 - 2.0172456e+02 -2.5018769e+02 -3.5318179e+03 - 2.1434140e+02 -2.5022310e+02 -3.5314797e+03 - 2.2590106e+02 -2.5039282e+02 -3.5311279e+03 - 2.3643693e+02 -2.5070744e+02 -3.5307655e+03 - 2.4599026e+02 -2.5117404e+02 -3.5303951e+03 - 2.5460766e+02 -2.5179650e+02 -3.5300194e+03 - 2.6233903e+02 -2.5257581e+02 -3.5296408e+03 - 2.6923587e+02 -2.5351039e+02 -3.5292618e+03 - 2.7534994e+02 -2.5459646e+02 -3.5288847e+03 - 2.8073231e+02 -2.5582838e+02 -3.5285116e+03 - 2.8543258e+02 -2.5719898e+02 -3.5281446e+03 - 2.8949843e+02 -2.5869982e+02 -3.5277855e+03 - 2.9297525e+02 -2.6032143e+02 -3.5274361e+03 - 2.9590604e+02 -2.6205355e+02 -3.5270982e+03 - 2.9833128e+02 -2.6388528e+02 -3.5267733e+03 - 3.0028895e+02 -2.6580521e+02 -3.5264628e+03 - 3.0181463e+02 -2.6780155e+02 -3.5261681e+03 - 3.0294159e+02 -2.6986224e+02 -3.5258904e+03 - 3.0370090e+02 -2.7197495e+02 -3.5256309e+03 - 3.0412163e+02 -2.7412715e+02 -3.5253905e+03 - 3.0423094e+02 -2.7630619e+02 -3.5251702e+03 - 3.0405428e+02 -2.7849921e+02 -3.5249709e+03 - 3.0361554e+02 -2.8069324e+02 -3.5247933e+03 - 3.0293718e+02 -2.8287510e+02 -3.5246381e+03 - 3.0204036e+02 -2.8503147e+02 -3.5245058e+03 - 3.0094509e+02 -2.8714876e+02 -3.5243969e+03 - 2.9967036e+02 -2.8921317e+02 -3.5243118e+03 - 2.9823424e+02 -2.9121058e+02 -3.5242508e+03 - 2.9665398e+02 -2.9312652e+02 -3.5242141e+03 - 2.9494610e+02 -2.9494610e+02 -3.5242018e+03 - 2.9312652e+02 -2.9665398e+02 -3.5242141e+03 - 2.9121058e+02 -2.9823424e+02 -3.5242508e+03 - 2.8921317e+02 -2.9967036e+02 -3.5243118e+03 - 2.8714876e+02 -3.0094509e+02 -3.5243969e+03 - 2.8503147e+02 -3.0204036e+02 -3.5245058e+03 - 2.8287510e+02 -3.0293718e+02 -3.5246381e+03 - 2.8069324e+02 -3.0361554e+02 -3.5247933e+03 - 2.7849921e+02 -3.0405428e+02 -3.5249709e+03 - 2.7630619e+02 -3.0423094e+02 -3.5251702e+03 - 2.7412715e+02 -3.0412163e+02 -3.5253905e+03 - 2.7197495e+02 -3.0370090e+02 -3.5256309e+03 - 2.6986224e+02 -3.0294159e+02 -3.5258904e+03 - 2.6780155e+02 -3.0181463e+02 -3.5261681e+03 - 2.6580521e+02 -3.0028895e+02 -3.5264628e+03 - 2.6388528e+02 -2.9833128e+02 -3.5267733e+03 - 2.6205355e+02 -2.9590604e+02 -3.5270982e+03 - 2.6032143e+02 -2.9297525e+02 -3.5274361e+03 - 2.5869982e+02 -2.8949843e+02 -3.5277855e+03 - 2.5719898e+02 -2.8543258e+02 -3.5281446e+03 - 2.5582838e+02 -2.8073231e+02 -3.5285116e+03 - 2.5459646e+02 -2.7534994e+02 -3.5288847e+03 - 2.5351039e+02 -2.6923587e+02 -3.5292618e+03 - 2.5257581e+02 -2.6233903e+02 -3.5296408e+03 - 2.5179650e+02 -2.5460766e+02 -3.5300194e+03 - 2.5117404e+02 -2.4599026e+02 -3.5303951e+03 - 2.5070744e+02 -2.3643693e+02 -3.5307655e+03 - 2.5039282e+02 -2.2590106e+02 -3.5311279e+03 - 2.5022310e+02 -2.1434140e+02 -3.5314797e+03 - 2.5018769e+02 -2.0172456e+02 -3.5318179e+03 - 2.5027246e+02 -1.8802783e+02 -3.5321397e+03 - 2.5045967e+02 -1.7324228e+02 -3.5324422e+03 - 2.5072828e+02 -1.5737605e+02 -3.5327226e+03 - 2.5105443e+02 -1.4045747e+02 -3.5329781e+03 - 2.5141223e+02 -1.2253780e+02 -3.5332058e+03 - 2.5177483e+02 -1.0369325e+02 -3.5334034e+03 - 2.5211574e+02 -8.4025912e+01 -3.5335685e+03 - 2.5241034e+02 -6.3663202e+01 -3.5336990e+03 - 2.5263740e+02 -4.2755724e+01 -3.5337935e+03 - 2.5278055e+02 -2.1473392e+01 -3.5338507e+03 - 2.5282945e+02 0.0000000e+00 -3.5338699e+03 - 2.1066411e+02 2.4067136e-09 -3.5384414e+03 - 2.1062348e+02 1.7880537e+01 -3.5384281e+03 - 2.1050454e+02 3.5602852e+01 -3.5383884e+03 - 2.1031589e+02 5.3014685e+01 -3.5383229e+03 - 2.1007118e+02 6.9975173e+01 -3.5382323e+03 - 2.0978808e+02 8.6359323e+01 -3.5381178e+03 - 2.0948711e+02 1.0206121e+02 -3.5379807e+03 - 2.0919037e+02 1.1699578e+02 -3.5378226e+03 - 2.0892027e+02 1.3109933e+02 -3.5376452e+03 - 2.0869844e+02 1.4432877e+02 -3.5374505e+03 - 2.0854485e+02 1.5666003e+02 -3.5372403e+03 - 2.0847709e+02 1.6808578e+02 -3.5370166e+03 - 2.0851001e+02 1.7861292e+02 -3.5367814e+03 - 2.0865547e+02 1.8825985e+02 -3.5365368e+03 - 2.0892233e+02 1.9705395e+02 -3.5362847e+03 - 2.0931652e+02 2.0502919e+02 -3.5360269e+03 - 2.0984130e+02 2.1222409e+02 -3.5357654e+03 - 2.1049745e+02 2.1868001e+02 -3.5355018e+03 - 2.1128363e+02 2.2443969e+02 -3.5352379e+03 - 2.1219663e+02 2.2954618e+02 -3.5349753e+03 - 2.1323168e+02 2.3404198e+02 -3.5347154e+03 - 2.1438271e+02 2.3796842e+02 -3.5344597e+03 - 2.1564257e+02 2.4136526e+02 -3.5342095e+03 - 2.1700328e+02 2.4427040e+02 -3.5339661e+03 - 2.1845617e+02 2.4671971e+02 -3.5337306e+03 - 2.1999204e+02 2.4874699e+02 -3.5335042e+03 - 2.2160128e+02 2.5038400e+02 -3.5332878e+03 - 2.2327396e+02 2.5166042e+02 -3.5330824e+03 - 2.2499993e+02 2.5260405e+02 -3.5328889e+03 - 2.2676883e+02 2.5324085e+02 -3.5327080e+03 - 2.2857016e+02 2.5359505e+02 -3.5325405e+03 - 2.3039328e+02 2.5368935e+02 -3.5323870e+03 - 2.3222746e+02 2.5354495e+02 -3.5322481e+03 - 2.3406182e+02 2.5318177e+02 -3.5321243e+03 - 2.3588538e+02 2.5261853e+02 -3.5320161e+03 - 2.3768700e+02 2.5187283e+02 -3.5319239e+03 - 2.3945538e+02 2.5096135e+02 -3.5318480e+03 - 2.4117900e+02 2.4989987e+02 -3.5317887e+03 - 2.4284611e+02 2.4870341e+02 -3.5317462e+03 - 2.4444468e+02 2.4738632e+02 -3.5317206e+03 - 2.4596234e+02 2.4596234e+02 -3.5317121e+03 - 2.4738632e+02 2.4444468e+02 -3.5317206e+03 - 2.4870341e+02 2.4284611e+02 -3.5317462e+03 - 2.4989987e+02 2.4117900e+02 -3.5317887e+03 - 2.5096135e+02 2.3945538e+02 -3.5318480e+03 - 2.5187283e+02 2.3768700e+02 -3.5319239e+03 - 2.5261853e+02 2.3588538e+02 -3.5320161e+03 - 2.5318177e+02 2.3406182e+02 -3.5321243e+03 - 2.5354495e+02 2.3222746e+02 -3.5322481e+03 - 2.5368935e+02 2.3039328e+02 -3.5323870e+03 - 2.5359505e+02 2.2857016e+02 -3.5325405e+03 - 2.5324085e+02 2.2676883e+02 -3.5327080e+03 - 2.5260405e+02 2.2499993e+02 -3.5328889e+03 - 2.5166042e+02 2.2327396e+02 -3.5330824e+03 - 2.5038400e+02 2.2160128e+02 -3.5332878e+03 - 2.4874699e+02 2.1999204e+02 -3.5335042e+03 - 2.4671971e+02 2.1845617e+02 -3.5337306e+03 - 2.4427040e+02 2.1700328e+02 -3.5339661e+03 - 2.4136526e+02 2.1564257e+02 -3.5342095e+03 - 2.3796842e+02 2.1438271e+02 -3.5344597e+03 - 2.3404198e+02 2.1323168e+02 -3.5347154e+03 - 2.2954618e+02 2.1219663e+02 -3.5349753e+03 - 2.2443969e+02 2.1128363e+02 -3.5352379e+03 - 2.1868001e+02 2.1049745e+02 -3.5355018e+03 - 2.1222409e+02 2.0984130e+02 -3.5357654e+03 - 2.0502919e+02 2.0931652e+02 -3.5360269e+03 - 1.9705395e+02 2.0892233e+02 -3.5362847e+03 - 1.8825985e+02 2.0865547e+02 -3.5365368e+03 - 1.7861292e+02 2.0851001e+02 -3.5367814e+03 - 1.6808578e+02 2.0847709e+02 -3.5370166e+03 - 1.5666003e+02 2.0854485e+02 -3.5372403e+03 - 1.4432877e+02 2.0869844e+02 -3.5374505e+03 - 1.3109933e+02 2.0892027e+02 -3.5376452e+03 - 1.1699578e+02 2.0919037e+02 -3.5378226e+03 - 1.0206121e+02 2.0948711e+02 -3.5379807e+03 - 8.6359323e+01 2.0978808e+02 -3.5381178e+03 - 6.9975173e+01 2.1007118e+02 -3.5382323e+03 - 5.3014685e+01 2.1031589e+02 -3.5383229e+03 - 3.5602852e+01 2.1050454e+02 -3.5383884e+03 - 1.7880537e+01 2.1062348e+02 -3.5384281e+03 - 0.0000000e+00 2.1066411e+02 -3.5384414e+03 - -1.7880537e+01 2.1062348e+02 -3.5384281e+03 - -3.5602852e+01 2.1050454e+02 -3.5383884e+03 - -5.3014685e+01 2.1031589e+02 -3.5383229e+03 - -6.9975173e+01 2.1007118e+02 -3.5382323e+03 - -8.6359323e+01 2.0978808e+02 -3.5381178e+03 - -1.0206121e+02 2.0948711e+02 -3.5379807e+03 - -1.1699578e+02 2.0919037e+02 -3.5378226e+03 - -1.3109933e+02 2.0892027e+02 -3.5376452e+03 - -1.4432877e+02 2.0869844e+02 -3.5374505e+03 - -1.5666003e+02 2.0854485e+02 -3.5372403e+03 - -1.6808578e+02 2.0847709e+02 -3.5370166e+03 - -1.7861292e+02 2.0851001e+02 -3.5367814e+03 - -1.8825985e+02 2.0865547e+02 -3.5365368e+03 - -1.9705395e+02 2.0892233e+02 -3.5362847e+03 - -2.0502919e+02 2.0931652e+02 -3.5360269e+03 - -2.1222409e+02 2.0984130e+02 -3.5357654e+03 - -2.1868001e+02 2.1049745e+02 -3.5355018e+03 - -2.2443969e+02 2.1128363e+02 -3.5352379e+03 - -2.2954618e+02 2.1219663e+02 -3.5349753e+03 - -2.3404198e+02 2.1323168e+02 -3.5347154e+03 - -2.3796842e+02 2.1438271e+02 -3.5344597e+03 - -2.4136526e+02 2.1564257e+02 -3.5342095e+03 - -2.4427040e+02 2.1700328e+02 -3.5339661e+03 - -2.4671971e+02 2.1845617e+02 -3.5337306e+03 - -2.4874699e+02 2.1999204e+02 -3.5335042e+03 - -2.5038400e+02 2.2160128e+02 -3.5332878e+03 - -2.5166042e+02 2.2327396e+02 -3.5330824e+03 - -2.5260405e+02 2.2499993e+02 -3.5328889e+03 - -2.5324085e+02 2.2676883e+02 -3.5327080e+03 - -2.5359505e+02 2.2857016e+02 -3.5325405e+03 - -2.5368935e+02 2.3039328e+02 -3.5323870e+03 - -2.5354495e+02 2.3222746e+02 -3.5322481e+03 - -2.5318177e+02 2.3406182e+02 -3.5321243e+03 - -2.5261853e+02 2.3588538e+02 -3.5320161e+03 - -2.5187283e+02 2.3768700e+02 -3.5319239e+03 - -2.5096135e+02 2.3945538e+02 -3.5318480e+03 - -2.4989987e+02 2.4117900e+02 -3.5317887e+03 - -2.4870341e+02 2.4284611e+02 -3.5317462e+03 - -2.4738632e+02 2.4444468e+02 -3.5317206e+03 - -2.4596234e+02 2.4596234e+02 -3.5317121e+03 - -2.4444468e+02 2.4738632e+02 -3.5317206e+03 - -2.4284611e+02 2.4870341e+02 -3.5317462e+03 - -2.4117900e+02 2.4989987e+02 -3.5317887e+03 - -2.3945538e+02 2.5096135e+02 -3.5318480e+03 - -2.3768700e+02 2.5187283e+02 -3.5319239e+03 - -2.3588538e+02 2.5261853e+02 -3.5320161e+03 - -2.3406182e+02 2.5318177e+02 -3.5321243e+03 - -2.3222746e+02 2.5354495e+02 -3.5322481e+03 - -2.3039328e+02 2.5368935e+02 -3.5323870e+03 - -2.2857016e+02 2.5359505e+02 -3.5325405e+03 - -2.2676883e+02 2.5324085e+02 -3.5327080e+03 - -2.2499993e+02 2.5260405e+02 -3.5328889e+03 - -2.2327396e+02 2.5166042e+02 -3.5330824e+03 - -2.2160128e+02 2.5038400e+02 -3.5332878e+03 - -2.1999204e+02 2.4874699e+02 -3.5335042e+03 - -2.1845617e+02 2.4671971e+02 -3.5337306e+03 - -2.1700328e+02 2.4427040e+02 -3.5339661e+03 - -2.1564257e+02 2.4136526e+02 -3.5342095e+03 - -2.1438271e+02 2.3796842e+02 -3.5344597e+03 - -2.1323168e+02 2.3404198e+02 -3.5347154e+03 - -2.1219663e+02 2.2954618e+02 -3.5349753e+03 - -2.1128363e+02 2.2443969e+02 -3.5352379e+03 - -2.1049745e+02 2.1868001e+02 -3.5355018e+03 - -2.0984130e+02 2.1222409e+02 -3.5357654e+03 - -2.0931652e+02 2.0502919e+02 -3.5360269e+03 - -2.0892233e+02 1.9705395e+02 -3.5362847e+03 - -2.0865547e+02 1.8825985e+02 -3.5365368e+03 - -2.0851001e+02 1.7861292e+02 -3.5367814e+03 - -2.0847709e+02 1.6808578e+02 -3.5370166e+03 - -2.0854485e+02 1.5666003e+02 -3.5372403e+03 - -2.0869844e+02 1.4432877e+02 -3.5374505e+03 - -2.0892027e+02 1.3109933e+02 -3.5376452e+03 - -2.0919037e+02 1.1699578e+02 -3.5378226e+03 - -2.0948711e+02 1.0206121e+02 -3.5379807e+03 - -2.0978808e+02 8.6359323e+01 -3.5381178e+03 - -2.1007118e+02 6.9975173e+01 -3.5382323e+03 - -2.1031589e+02 5.3014685e+01 -3.5383229e+03 - -2.1050454e+02 3.5602852e+01 -3.5383884e+03 - -2.1062348e+02 1.7880537e+01 -3.5384281e+03 - -2.1066411e+02 -2.4067136e-09 -3.5384414e+03 - -2.1062348e+02 -1.7880537e+01 -3.5384281e+03 - -2.1050454e+02 -3.5602852e+01 -3.5383884e+03 - -2.1031589e+02 -5.3014685e+01 -3.5383229e+03 - -2.1007118e+02 -6.9975173e+01 -3.5382323e+03 - -2.0978808e+02 -8.6359323e+01 -3.5381178e+03 - -2.0948711e+02 -1.0206121e+02 -3.5379807e+03 - -2.0919037e+02 -1.1699578e+02 -3.5378226e+03 - -2.0892027e+02 -1.3109933e+02 -3.5376452e+03 - -2.0869844e+02 -1.4432877e+02 -3.5374505e+03 - -2.0854485e+02 -1.5666003e+02 -3.5372403e+03 - -2.0847709e+02 -1.6808578e+02 -3.5370166e+03 - -2.0851001e+02 -1.7861292e+02 -3.5367814e+03 - -2.0865547e+02 -1.8825985e+02 -3.5365368e+03 - -2.0892233e+02 -1.9705395e+02 -3.5362847e+03 - -2.0931652e+02 -2.0502919e+02 -3.5360269e+03 - -2.0984130e+02 -2.1222409e+02 -3.5357654e+03 - -2.1049745e+02 -2.1868001e+02 -3.5355018e+03 - -2.1128363e+02 -2.2443969e+02 -3.5352379e+03 - -2.1219663e+02 -2.2954618e+02 -3.5349753e+03 - -2.1323168e+02 -2.3404198e+02 -3.5347154e+03 - -2.1438271e+02 -2.3796842e+02 -3.5344597e+03 - -2.1564257e+02 -2.4136526e+02 -3.5342095e+03 - -2.1700328e+02 -2.4427040e+02 -3.5339661e+03 - -2.1845617e+02 -2.4671971e+02 -3.5337306e+03 - -2.1999204e+02 -2.4874699e+02 -3.5335042e+03 - -2.2160128e+02 -2.5038400e+02 -3.5332878e+03 - -2.2327396e+02 -2.5166042e+02 -3.5330824e+03 - -2.2499993e+02 -2.5260405e+02 -3.5328889e+03 - -2.2676883e+02 -2.5324085e+02 -3.5327080e+03 - -2.2857016e+02 -2.5359505e+02 -3.5325405e+03 - -2.3039328e+02 -2.5368935e+02 -3.5323870e+03 - -2.3222746e+02 -2.5354495e+02 -3.5322481e+03 - -2.3406182e+02 -2.5318177e+02 -3.5321243e+03 - -2.3588538e+02 -2.5261853e+02 -3.5320161e+03 - -2.3768700e+02 -2.5187283e+02 -3.5319239e+03 - -2.3945538e+02 -2.5096135e+02 -3.5318480e+03 - -2.4117900e+02 -2.4989987e+02 -3.5317887e+03 - -2.4284611e+02 -2.4870341e+02 -3.5317462e+03 - -2.4444468e+02 -2.4738632e+02 -3.5317206e+03 - -2.4596234e+02 -2.4596234e+02 -3.5317121e+03 - -2.4738632e+02 -2.4444468e+02 -3.5317206e+03 - -2.4870341e+02 -2.4284611e+02 -3.5317462e+03 - -2.4989987e+02 -2.4117900e+02 -3.5317887e+03 - -2.5096135e+02 -2.3945538e+02 -3.5318480e+03 - -2.5187283e+02 -2.3768700e+02 -3.5319239e+03 - -2.5261853e+02 -2.3588538e+02 -3.5320161e+03 - -2.5318177e+02 -2.3406182e+02 -3.5321243e+03 - -2.5354495e+02 -2.3222746e+02 -3.5322481e+03 - -2.5368935e+02 -2.3039328e+02 -3.5323870e+03 - -2.5359505e+02 -2.2857016e+02 -3.5325405e+03 - -2.5324085e+02 -2.2676883e+02 -3.5327080e+03 - -2.5260405e+02 -2.2499993e+02 -3.5328889e+03 - -2.5166042e+02 -2.2327396e+02 -3.5330824e+03 - -2.5038400e+02 -2.2160128e+02 -3.5332878e+03 - -2.4874699e+02 -2.1999204e+02 -3.5335042e+03 - -2.4671971e+02 -2.1845617e+02 -3.5337306e+03 - -2.4427040e+02 -2.1700328e+02 -3.5339661e+03 - -2.4136526e+02 -2.1564257e+02 -3.5342095e+03 - -2.3796842e+02 -2.1438271e+02 -3.5344597e+03 - -2.3404198e+02 -2.1323168e+02 -3.5347154e+03 - -2.2954618e+02 -2.1219663e+02 -3.5349753e+03 - -2.2443969e+02 -2.1128363e+02 -3.5352379e+03 - -2.1868001e+02 -2.1049745e+02 -3.5355018e+03 - -2.1222409e+02 -2.0984130e+02 -3.5357654e+03 - -2.0502919e+02 -2.0931652e+02 -3.5360269e+03 - -1.9705395e+02 -2.0892233e+02 -3.5362847e+03 - -1.8825985e+02 -2.0865547e+02 -3.5365368e+03 - -1.7861292e+02 -2.0851001e+02 -3.5367814e+03 - -1.6808578e+02 -2.0847709e+02 -3.5370166e+03 - -1.5666003e+02 -2.0854485e+02 -3.5372403e+03 - -1.4432877e+02 -2.0869844e+02 -3.5374505e+03 - -1.3109933e+02 -2.0892027e+02 -3.5376452e+03 - -1.1699578e+02 -2.0919037e+02 -3.5378226e+03 - -1.0206121e+02 -2.0948711e+02 -3.5379807e+03 - -8.6359323e+01 -2.0978808e+02 -3.5381178e+03 - -6.9975173e+01 -2.1007118e+02 -3.5382323e+03 - -5.3014685e+01 -2.1031589e+02 -3.5383229e+03 - -3.5602852e+01 -2.1050454e+02 -3.5383884e+03 - -1.7880537e+01 -2.1062348e+02 -3.5384281e+03 - 0.0000000e+00 -2.1066411e+02 -3.5384414e+03 - 1.7880537e+01 -2.1062348e+02 -3.5384281e+03 - 3.5602852e+01 -2.1050454e+02 -3.5383884e+03 - 5.3014685e+01 -2.1031589e+02 -3.5383229e+03 - 6.9975173e+01 -2.1007118e+02 -3.5382323e+03 - 8.6359323e+01 -2.0978808e+02 -3.5381178e+03 - 1.0206121e+02 -2.0948711e+02 -3.5379807e+03 - 1.1699578e+02 -2.0919037e+02 -3.5378226e+03 - 1.3109933e+02 -2.0892027e+02 -3.5376452e+03 - 1.4432877e+02 -2.0869844e+02 -3.5374505e+03 - 1.5666003e+02 -2.0854485e+02 -3.5372403e+03 - 1.6808578e+02 -2.0847709e+02 -3.5370166e+03 - 1.7861292e+02 -2.0851001e+02 -3.5367814e+03 - 1.8825985e+02 -2.0865547e+02 -3.5365368e+03 - 1.9705395e+02 -2.0892233e+02 -3.5362847e+03 - 2.0502919e+02 -2.0931652e+02 -3.5360269e+03 - 2.1222409e+02 -2.0984130e+02 -3.5357654e+03 - 2.1868001e+02 -2.1049745e+02 -3.5355018e+03 - 2.2443969e+02 -2.1128363e+02 -3.5352379e+03 - 2.2954618e+02 -2.1219663e+02 -3.5349753e+03 - 2.3404198e+02 -2.1323168e+02 -3.5347154e+03 - 2.3796842e+02 -2.1438271e+02 -3.5344597e+03 - 2.4136526e+02 -2.1564257e+02 -3.5342095e+03 - 2.4427040e+02 -2.1700328e+02 -3.5339661e+03 - 2.4671971e+02 -2.1845617e+02 -3.5337306e+03 - 2.4874699e+02 -2.1999204e+02 -3.5335042e+03 - 2.5038400e+02 -2.2160128e+02 -3.5332878e+03 - 2.5166042e+02 -2.2327396e+02 -3.5330824e+03 - 2.5260405e+02 -2.2499993e+02 -3.5328889e+03 - 2.5324085e+02 -2.2676883e+02 -3.5327080e+03 - 2.5359505e+02 -2.2857016e+02 -3.5325405e+03 - 2.5368935e+02 -2.3039328e+02 -3.5323870e+03 - 2.5354495e+02 -2.3222746e+02 -3.5322481e+03 - 2.5318177e+02 -2.3406182e+02 -3.5321243e+03 - 2.5261853e+02 -2.3588538e+02 -3.5320161e+03 - 2.5187283e+02 -2.3768700e+02 -3.5319239e+03 - 2.5096135e+02 -2.3945538e+02 -3.5318480e+03 - 2.4989987e+02 -2.4117900e+02 -3.5317887e+03 - 2.4870341e+02 -2.4284611e+02 -3.5317462e+03 - 2.4738632e+02 -2.4444468e+02 -3.5317206e+03 - 2.4596234e+02 -2.4596234e+02 -3.5317121e+03 - 2.4444468e+02 -2.4738632e+02 -3.5317206e+03 - 2.4284611e+02 -2.4870341e+02 -3.5317462e+03 - 2.4117900e+02 -2.4989987e+02 -3.5317887e+03 - 2.3945538e+02 -2.5096135e+02 -3.5318480e+03 - 2.3768700e+02 -2.5187283e+02 -3.5319239e+03 - 2.3588538e+02 -2.5261853e+02 -3.5320161e+03 - 2.3406182e+02 -2.5318177e+02 -3.5321243e+03 - 2.3222746e+02 -2.5354495e+02 -3.5322481e+03 - 2.3039328e+02 -2.5368935e+02 -3.5323870e+03 - 2.2857016e+02 -2.5359505e+02 -3.5325405e+03 - 2.2676883e+02 -2.5324085e+02 -3.5327080e+03 - 2.2499993e+02 -2.5260405e+02 -3.5328889e+03 - 2.2327396e+02 -2.5166042e+02 -3.5330824e+03 - 2.2160128e+02 -2.5038400e+02 -3.5332878e+03 - 2.1999204e+02 -2.4874699e+02 -3.5335042e+03 - 2.1845617e+02 -2.4671971e+02 -3.5337306e+03 - 2.1700328e+02 -2.4427040e+02 -3.5339661e+03 - 2.1564257e+02 -2.4136526e+02 -3.5342095e+03 - 2.1438271e+02 -2.3796842e+02 -3.5344597e+03 - 2.1323168e+02 -2.3404198e+02 -3.5347154e+03 - 2.1219663e+02 -2.2954618e+02 -3.5349753e+03 - 2.1128363e+02 -2.2443969e+02 -3.5352379e+03 - 2.1049745e+02 -2.1868001e+02 -3.5355018e+03 - 2.0984130e+02 -2.1222409e+02 -3.5357654e+03 - 2.0931652e+02 -2.0502919e+02 -3.5360269e+03 - 2.0892233e+02 -1.9705395e+02 -3.5362847e+03 - 2.0865547e+02 -1.8825985e+02 -3.5365368e+03 - 2.0851001e+02 -1.7861292e+02 -3.5367814e+03 - 2.0847709e+02 -1.6808578e+02 -3.5370166e+03 - 2.0854485e+02 -1.5666003e+02 -3.5372403e+03 - 2.0869844e+02 -1.4432877e+02 -3.5374505e+03 - 2.0892027e+02 -1.3109933e+02 -3.5376452e+03 - 2.0919037e+02 -1.1699578e+02 -3.5378226e+03 - 2.0948711e+02 -1.0206121e+02 -3.5379807e+03 - 2.0978808e+02 -8.6359323e+01 -3.5381178e+03 - 2.1007118e+02 -6.9975173e+01 -3.5382323e+03 - 2.1031589e+02 -5.3014685e+01 -3.5383229e+03 - 2.1050454e+02 -3.5602852e+01 -3.5383884e+03 - 2.1062348e+02 -1.7880537e+01 -3.5384281e+03 - 2.1066411e+02 0.0000000e+00 -3.5384414e+03 - 1.6851340e+02 0.0000000e+00 -3.5421755e+03 - 1.6848098e+02 1.4295336e+01 -3.5421671e+03 - 1.6838606e+02 2.8464740e+01 -3.5421417e+03 - 1.6823553e+02 4.2386987e+01 -3.5420998e+03 - 1.6804028e+02 5.5949865e+01 -3.5420419e+03 - 1.6781446e+02 6.9053710e+01 -3.5419687e+03 - 1.6757448e+02 8.1613951e+01 -3.5418810e+03 - 1.6733803e+02 9.3562563e+01 -3.5417798e+03 - 1.6712308e+02 1.0484845e+02 -3.5416663e+03 - 1.6694695e+02 1.1543692e+02 -3.5415416e+03 - 1.6682567e+02 1.2530840e+02 -3.5414070e+03 - 1.6677336e+02 1.3445668e+02 -3.5412638e+03 - 1.6680194e+02 1.4288693e+02 -3.5411131e+03 - 1.6692095e+02 1.5061353e+02 -3.5409564e+03 - 1.6713750e+02 1.5765807e+02 -3.5407948e+03 - 1.6745637e+02 1.6404749e+02 -3.5406295e+03 - 1.6788015e+02 1.6981239e+02 -3.5404619e+03 - 1.6840948e+02 1.7498571e+02 -3.5402928e+03 - 1.6904324e+02 1.7960152e+02 -3.5401236e+03 - 1.6977884e+02 1.8369420e+02 -3.5399551e+03 - 1.7061241e+02 1.8729771e+02 -3.5397883e+03 - 1.7153903e+02 1.9044513e+02 -3.5396242e+03 - 1.7255292e+02 1.9316828e+02 -3.5394637e+03 - 1.7364762e+02 1.9549750e+02 -3.5393075e+03 - 1.7481612e+02 1.9746154e+02 -3.5391564e+03 - 1.7605099e+02 1.9908750e+02 -3.5390111e+03 - 1.7734447e+02 2.0040079e+02 -3.5388722e+03 - 1.7868855e+02 2.0142525e+02 -3.5387403e+03 - 1.8007504e+02 2.0218312e+02 -3.5386161e+03 - 1.8149561e+02 2.0269522e+02 -3.5385000e+03 - 1.8294179e+02 2.0298096e+02 -3.5383925e+03 - 1.8440505e+02 2.0305851e+02 -3.5382939e+03 - 1.8587675e+02 2.0294485e+02 -3.5382048e+03 - 1.8734818e+02 2.0265592e+02 -3.5381253e+03 - 1.8881053e+02 2.0220668e+02 -3.5380559e+03 - 1.9025487e+02 2.0161122e+02 -3.5379967e+03 - 1.9167217e+02 2.0088285e+02 -3.5379480e+03 - 1.9305321e+02 2.0003419e+02 -3.5379099e+03 - 1.9438861e+02 1.9907724e+02 -3.5378826e+03 - 1.9566875e+02 1.9802343e+02 -3.5378662e+03 - 1.9688376e+02 1.9688376e+02 -3.5378607e+03 - 1.9802343e+02 1.9566875e+02 -3.5378662e+03 - 1.9907724e+02 1.9438861e+02 -3.5378826e+03 - 2.0003419e+02 1.9305321e+02 -3.5379099e+03 - 2.0088285e+02 1.9167217e+02 -3.5379480e+03 - 2.0161122e+02 1.9025487e+02 -3.5379967e+03 - 2.0220668e+02 1.8881053e+02 -3.5380559e+03 - 2.0265592e+02 1.8734818e+02 -3.5381253e+03 - 2.0294485e+02 1.8587675e+02 -3.5382048e+03 - 2.0305851e+02 1.8440505e+02 -3.5382939e+03 - 2.0298096e+02 1.8294179e+02 -3.5383925e+03 - 2.0269522e+02 1.8149561e+02 -3.5385000e+03 - 2.0218312e+02 1.8007504e+02 -3.5386161e+03 - 2.0142525e+02 1.7868855e+02 -3.5387403e+03 - 2.0040079e+02 1.7734447e+02 -3.5388722e+03 - 1.9908750e+02 1.7605099e+02 -3.5390111e+03 - 1.9746154e+02 1.7481612e+02 -3.5391564e+03 - 1.9549750e+02 1.7364762e+02 -3.5393075e+03 - 1.9316828e+02 1.7255292e+02 -3.5394637e+03 - 1.9044513e+02 1.7153903e+02 -3.5396242e+03 - 1.8729771e+02 1.7061241e+02 -3.5397883e+03 - 1.8369420e+02 1.6977884e+02 -3.5399551e+03 - 1.7960152e+02 1.6904324e+02 -3.5401236e+03 - 1.7498571e+02 1.6840948e+02 -3.5402928e+03 - 1.6981239e+02 1.6788015e+02 -3.5404619e+03 - 1.6404749e+02 1.6745637e+02 -3.5406295e+03 - 1.5765807e+02 1.6713750e+02 -3.5407948e+03 - 1.5061353e+02 1.6692095e+02 -3.5409564e+03 - 1.4288693e+02 1.6680194e+02 -3.5411131e+03 - 1.3445668e+02 1.6677336e+02 -3.5412638e+03 - 1.2530840e+02 1.6682567e+02 -3.5414070e+03 - 1.1543692e+02 1.6694695e+02 -3.5415416e+03 - 1.0484845e+02 1.6712308e+02 -3.5416663e+03 - 9.3562563e+01 1.6733803e+02 -3.5417798e+03 - 8.1613951e+01 1.6757448e+02 -3.5418810e+03 - 6.9053710e+01 1.6781446e+02 -3.5419687e+03 - 5.5949865e+01 1.6804028e+02 -3.5420419e+03 - 4.2386987e+01 1.6823553e+02 -3.5420998e+03 - 2.8464740e+01 1.6838606e+02 -3.5421417e+03 - 1.4295336e+01 1.6848098e+02 -3.5421671e+03 - 0.0000000e+00 1.6851340e+02 -3.5421755e+03 - -1.4295336e+01 1.6848098e+02 -3.5421671e+03 - -2.8464740e+01 1.6838606e+02 -3.5421417e+03 - -4.2386987e+01 1.6823553e+02 -3.5420998e+03 - -5.5949865e+01 1.6804028e+02 -3.5420419e+03 - -6.9053710e+01 1.6781446e+02 -3.5419687e+03 - -8.1613951e+01 1.6757448e+02 -3.5418810e+03 - -9.3562563e+01 1.6733803e+02 -3.5417798e+03 - -1.0484845e+02 1.6712308e+02 -3.5416663e+03 - -1.1543692e+02 1.6694695e+02 -3.5415416e+03 - -1.2530840e+02 1.6682567e+02 -3.5414070e+03 - -1.3445668e+02 1.6677336e+02 -3.5412638e+03 - -1.4288693e+02 1.6680194e+02 -3.5411131e+03 - -1.5061353e+02 1.6692095e+02 -3.5409564e+03 - -1.5765807e+02 1.6713750e+02 -3.5407948e+03 - -1.6404749e+02 1.6745637e+02 -3.5406295e+03 - -1.6981239e+02 1.6788015e+02 -3.5404619e+03 - -1.7498571e+02 1.6840948e+02 -3.5402928e+03 - -1.7960152e+02 1.6904324e+02 -3.5401236e+03 - -1.8369420e+02 1.6977884e+02 -3.5399551e+03 - -1.8729771e+02 1.7061241e+02 -3.5397883e+03 - -1.9044513e+02 1.7153903e+02 -3.5396242e+03 - -1.9316828e+02 1.7255292e+02 -3.5394637e+03 - -1.9549750e+02 1.7364762e+02 -3.5393075e+03 - -1.9746154e+02 1.7481612e+02 -3.5391564e+03 - -1.9908750e+02 1.7605099e+02 -3.5390111e+03 - -2.0040079e+02 1.7734447e+02 -3.5388722e+03 - -2.0142525e+02 1.7868855e+02 -3.5387403e+03 - -2.0218312e+02 1.8007504e+02 -3.5386161e+03 - -2.0269522e+02 1.8149561e+02 -3.5385000e+03 - -2.0298096e+02 1.8294179e+02 -3.5383925e+03 - -2.0305851e+02 1.8440505e+02 -3.5382939e+03 - -2.0294485e+02 1.8587675e+02 -3.5382048e+03 - -2.0265592e+02 1.8734818e+02 -3.5381253e+03 - -2.0220668e+02 1.8881053e+02 -3.5380559e+03 - -2.0161122e+02 1.9025487e+02 -3.5379967e+03 - -2.0088285e+02 1.9167217e+02 -3.5379480e+03 - -2.0003419e+02 1.9305321e+02 -3.5379099e+03 - -1.9907724e+02 1.9438861e+02 -3.5378826e+03 - -1.9802343e+02 1.9566875e+02 -3.5378662e+03 - -1.9688376e+02 1.9688376e+02 -3.5378607e+03 - -1.9566875e+02 1.9802343e+02 -3.5378662e+03 - -1.9438861e+02 1.9907724e+02 -3.5378826e+03 - -1.9305321e+02 2.0003419e+02 -3.5379099e+03 - -1.9167217e+02 2.0088285e+02 -3.5379480e+03 - -1.9025487e+02 2.0161122e+02 -3.5379967e+03 - -1.8881053e+02 2.0220668e+02 -3.5380559e+03 - -1.8734818e+02 2.0265592e+02 -3.5381253e+03 - -1.8587675e+02 2.0294485e+02 -3.5382048e+03 - -1.8440505e+02 2.0305851e+02 -3.5382939e+03 - -1.8294179e+02 2.0298096e+02 -3.5383925e+03 - -1.8149561e+02 2.0269522e+02 -3.5385000e+03 - -1.8007504e+02 2.0218312e+02 -3.5386161e+03 - -1.7868855e+02 2.0142525e+02 -3.5387403e+03 - -1.7734447e+02 2.0040079e+02 -3.5388722e+03 - -1.7605099e+02 1.9908750e+02 -3.5390111e+03 - -1.7481612e+02 1.9746154e+02 -3.5391564e+03 - -1.7364762e+02 1.9549750e+02 -3.5393075e+03 - -1.7255292e+02 1.9316828e+02 -3.5394637e+03 - -1.7153903e+02 1.9044513e+02 -3.5396242e+03 - -1.7061241e+02 1.8729771e+02 -3.5397883e+03 - -1.6977884e+02 1.8369420e+02 -3.5399551e+03 - -1.6904324e+02 1.7960152e+02 -3.5401236e+03 - -1.6840948e+02 1.7498571e+02 -3.5402928e+03 - -1.6788015e+02 1.6981239e+02 -3.5404619e+03 - -1.6745637e+02 1.6404749e+02 -3.5406295e+03 - -1.6713750e+02 1.5765807e+02 -3.5407948e+03 - -1.6692095e+02 1.5061353e+02 -3.5409564e+03 - -1.6680194e+02 1.4288693e+02 -3.5411131e+03 - -1.6677336e+02 1.3445668e+02 -3.5412638e+03 - -1.6682567e+02 1.2530840e+02 -3.5414070e+03 - -1.6694695e+02 1.1543692e+02 -3.5415416e+03 - -1.6712308e+02 1.0484845e+02 -3.5416663e+03 - -1.6733803e+02 9.3562563e+01 -3.5417798e+03 - -1.6757448e+02 8.1613951e+01 -3.5418810e+03 - -1.6781446e+02 6.9053710e+01 -3.5419687e+03 - -1.6804028e+02 5.5949865e+01 -3.5420419e+03 - -1.6823553e+02 4.2386987e+01 -3.5420998e+03 - -1.6838606e+02 2.8464740e+01 -3.5421417e+03 - -1.6848098e+02 1.4295336e+01 -3.5421671e+03 - -1.6851340e+02 0.0000000e+00 -3.5421755e+03 - -1.6848098e+02 -1.4295336e+01 -3.5421671e+03 - -1.6838606e+02 -2.8464740e+01 -3.5421417e+03 - -1.6823553e+02 -4.2386987e+01 -3.5420998e+03 - -1.6804028e+02 -5.5949865e+01 -3.5420419e+03 - -1.6781446e+02 -6.9053710e+01 -3.5419687e+03 - -1.6757448e+02 -8.1613951e+01 -3.5418810e+03 - -1.6733803e+02 -9.3562563e+01 -3.5417798e+03 - -1.6712308e+02 -1.0484845e+02 -3.5416663e+03 - -1.6694695e+02 -1.1543692e+02 -3.5415416e+03 - -1.6682567e+02 -1.2530840e+02 -3.5414070e+03 - -1.6677336e+02 -1.3445668e+02 -3.5412638e+03 - -1.6680194e+02 -1.4288693e+02 -3.5411131e+03 - -1.6692095e+02 -1.5061353e+02 -3.5409564e+03 - -1.6713750e+02 -1.5765807e+02 -3.5407948e+03 - -1.6745637e+02 -1.6404749e+02 -3.5406295e+03 - -1.6788015e+02 -1.6981239e+02 -3.5404619e+03 - -1.6840948e+02 -1.7498571e+02 -3.5402928e+03 - -1.6904324e+02 -1.7960152e+02 -3.5401236e+03 - -1.6977884e+02 -1.8369420e+02 -3.5399551e+03 - -1.7061241e+02 -1.8729771e+02 -3.5397883e+03 - -1.7153903e+02 -1.9044513e+02 -3.5396242e+03 - -1.7255292e+02 -1.9316828e+02 -3.5394637e+03 - -1.7364762e+02 -1.9549750e+02 -3.5393075e+03 - -1.7481612e+02 -1.9746154e+02 -3.5391564e+03 - -1.7605099e+02 -1.9908750e+02 -3.5390111e+03 - -1.7734447e+02 -2.0040079e+02 -3.5388722e+03 - -1.7868855e+02 -2.0142525e+02 -3.5387403e+03 - -1.8007504e+02 -2.0218312e+02 -3.5386161e+03 - -1.8149561e+02 -2.0269522e+02 -3.5385000e+03 - -1.8294179e+02 -2.0298096e+02 -3.5383925e+03 - -1.8440505e+02 -2.0305851e+02 -3.5382939e+03 - -1.8587675e+02 -2.0294485e+02 -3.5382048e+03 - -1.8734818e+02 -2.0265592e+02 -3.5381253e+03 - -1.8881053e+02 -2.0220668e+02 -3.5380559e+03 - -1.9025487e+02 -2.0161122e+02 -3.5379967e+03 - -1.9167217e+02 -2.0088285e+02 -3.5379480e+03 - -1.9305321e+02 -2.0003419e+02 -3.5379099e+03 - -1.9438861e+02 -1.9907724e+02 -3.5378826e+03 - -1.9566875e+02 -1.9802343e+02 -3.5378662e+03 - -1.9688376e+02 -1.9688376e+02 -3.5378607e+03 - -1.9802343e+02 -1.9566875e+02 -3.5378662e+03 - -1.9907724e+02 -1.9438861e+02 -3.5378826e+03 - -2.0003419e+02 -1.9305321e+02 -3.5379099e+03 - -2.0088285e+02 -1.9167217e+02 -3.5379480e+03 - -2.0161122e+02 -1.9025487e+02 -3.5379967e+03 - -2.0220668e+02 -1.8881053e+02 -3.5380559e+03 - -2.0265592e+02 -1.8734818e+02 -3.5381253e+03 - -2.0294485e+02 -1.8587675e+02 -3.5382048e+03 - -2.0305851e+02 -1.8440505e+02 -3.5382939e+03 - -2.0298096e+02 -1.8294179e+02 -3.5383925e+03 - -2.0269522e+02 -1.8149561e+02 -3.5385000e+03 - -2.0218312e+02 -1.8007504e+02 -3.5386161e+03 - -2.0142525e+02 -1.7868855e+02 -3.5387403e+03 - -2.0040079e+02 -1.7734447e+02 -3.5388722e+03 - -1.9908750e+02 -1.7605099e+02 -3.5390111e+03 - -1.9746154e+02 -1.7481612e+02 -3.5391564e+03 - -1.9549750e+02 -1.7364762e+02 -3.5393075e+03 - -1.9316828e+02 -1.7255292e+02 -3.5394637e+03 - -1.9044513e+02 -1.7153903e+02 -3.5396242e+03 - -1.8729771e+02 -1.7061241e+02 -3.5397883e+03 - -1.8369420e+02 -1.6977884e+02 -3.5399551e+03 - -1.7960152e+02 -1.6904324e+02 -3.5401236e+03 - -1.7498571e+02 -1.6840948e+02 -3.5402928e+03 - -1.6981239e+02 -1.6788015e+02 -3.5404619e+03 - -1.6404749e+02 -1.6745637e+02 -3.5406295e+03 - -1.5765807e+02 -1.6713750e+02 -3.5407948e+03 - -1.5061353e+02 -1.6692095e+02 -3.5409564e+03 - -1.4288693e+02 -1.6680194e+02 -3.5411131e+03 - -1.3445668e+02 -1.6677336e+02 -3.5412638e+03 - -1.2530840e+02 -1.6682567e+02 -3.5414070e+03 - -1.1543692e+02 -1.6694695e+02 -3.5415416e+03 - -1.0484845e+02 -1.6712308e+02 -3.5416663e+03 - -9.3562563e+01 -1.6733803e+02 -3.5417798e+03 - -8.1613951e+01 -1.6757448e+02 -3.5418810e+03 - -6.9053710e+01 -1.6781446e+02 -3.5419687e+03 - -5.5949865e+01 -1.6804028e+02 -3.5420419e+03 - -4.2386987e+01 -1.6823553e+02 -3.5420998e+03 - -2.8464740e+01 -1.6838606e+02 -3.5421417e+03 - -1.4295336e+01 -1.6848098e+02 -3.5421671e+03 - 0.0000000e+00 -1.6851340e+02 -3.5421755e+03 - 1.4295336e+01 -1.6848098e+02 -3.5421671e+03 - 2.8464740e+01 -1.6838606e+02 -3.5421417e+03 - 4.2386987e+01 -1.6823553e+02 -3.5420998e+03 - 5.5949865e+01 -1.6804028e+02 -3.5420419e+03 - 6.9053710e+01 -1.6781446e+02 -3.5419687e+03 - 8.1613951e+01 -1.6757448e+02 -3.5418810e+03 - 9.3562563e+01 -1.6733803e+02 -3.5417798e+03 - 1.0484845e+02 -1.6712308e+02 -3.5416663e+03 - 1.1543692e+02 -1.6694695e+02 -3.5415416e+03 - 1.2530840e+02 -1.6682567e+02 -3.5414070e+03 - 1.3445668e+02 -1.6677336e+02 -3.5412638e+03 - 1.4288693e+02 -1.6680194e+02 -3.5411131e+03 - 1.5061353e+02 -1.6692095e+02 -3.5409564e+03 - 1.5765807e+02 -1.6713750e+02 -3.5407948e+03 - 1.6404749e+02 -1.6745637e+02 -3.5406295e+03 - 1.6981239e+02 -1.6788015e+02 -3.5404619e+03 - 1.7498571e+02 -1.6840948e+02 -3.5402928e+03 - 1.7960152e+02 -1.6904324e+02 -3.5401236e+03 - 1.8369420e+02 -1.6977884e+02 -3.5399551e+03 - 1.8729771e+02 -1.7061241e+02 -3.5397883e+03 - 1.9044513e+02 -1.7153903e+02 -3.5396242e+03 - 1.9316828e+02 -1.7255292e+02 -3.5394637e+03 - 1.9549750e+02 -1.7364762e+02 -3.5393075e+03 - 1.9746154e+02 -1.7481612e+02 -3.5391564e+03 - 1.9908750e+02 -1.7605099e+02 -3.5390111e+03 - 2.0040079e+02 -1.7734447e+02 -3.5388722e+03 - 2.0142525e+02 -1.7868855e+02 -3.5387403e+03 - 2.0218312e+02 -1.8007504e+02 -3.5386161e+03 - 2.0269522e+02 -1.8149561e+02 -3.5385000e+03 - 2.0298096e+02 -1.8294179e+02 -3.5383925e+03 - 2.0305851e+02 -1.8440505e+02 -3.5382939e+03 - 2.0294485e+02 -1.8587675e+02 -3.5382048e+03 - 2.0265592e+02 -1.8734818e+02 -3.5381253e+03 - 2.0220668e+02 -1.8881053e+02 -3.5380559e+03 - 2.0161122e+02 -1.9025487e+02 -3.5379967e+03 - 2.0088285e+02 -1.9167217e+02 -3.5379480e+03 - 2.0003419e+02 -1.9305321e+02 -3.5379099e+03 - 1.9907724e+02 -1.9438861e+02 -3.5378826e+03 - 1.9802343e+02 -1.9566875e+02 -3.5378662e+03 - 1.9688376e+02 -1.9688376e+02 -3.5378607e+03 - 1.9566875e+02 -1.9802343e+02 -3.5378662e+03 - 1.9438861e+02 -1.9907724e+02 -3.5378826e+03 - 1.9305321e+02 -2.0003419e+02 -3.5379099e+03 - 1.9167217e+02 -2.0088285e+02 -3.5379480e+03 - 1.9025487e+02 -2.0161122e+02 -3.5379967e+03 - 1.8881053e+02 -2.0220668e+02 -3.5380559e+03 - 1.8734818e+02 -2.0265592e+02 -3.5381253e+03 - 1.8587675e+02 -2.0294485e+02 -3.5382048e+03 - 1.8440505e+02 -2.0305851e+02 -3.5382939e+03 - 1.8294179e+02 -2.0298096e+02 -3.5383925e+03 - 1.8149561e+02 -2.0269522e+02 -3.5385000e+03 - 1.8007504e+02 -2.0218312e+02 -3.5386161e+03 - 1.7868855e+02 -2.0142525e+02 -3.5387403e+03 - 1.7734447e+02 -2.0040079e+02 -3.5388722e+03 - 1.7605099e+02 -1.9908750e+02 -3.5390111e+03 - 1.7481612e+02 -1.9746154e+02 -3.5391564e+03 - 1.7364762e+02 -1.9549750e+02 -3.5393075e+03 - 1.7255292e+02 -1.9316828e+02 -3.5394637e+03 - 1.7153903e+02 -1.9044513e+02 -3.5396242e+03 - 1.7061241e+02 -1.8729771e+02 -3.5397883e+03 - 1.6977884e+02 -1.8369420e+02 -3.5399551e+03 - 1.6904324e+02 -1.7960152e+02 -3.5401236e+03 - 1.6840948e+02 -1.7498571e+02 -3.5402928e+03 - 1.6788015e+02 -1.6981239e+02 -3.5404619e+03 - 1.6745637e+02 -1.6404749e+02 -3.5406295e+03 - 1.6713750e+02 -1.5765807e+02 -3.5407948e+03 - 1.6692095e+02 -1.5061353e+02 -3.5409564e+03 - 1.6680194e+02 -1.4288693e+02 -3.5411131e+03 - 1.6677336e+02 -1.3445668e+02 -3.5412638e+03 - 1.6682567e+02 -1.2530840e+02 -3.5414070e+03 - 1.6694695e+02 -1.1543692e+02 -3.5415416e+03 - 1.6712308e+02 -1.0484845e+02 -3.5416663e+03 - 1.6733803e+02 -9.3562563e+01 -3.5417798e+03 - 1.6757448e+02 -8.1613951e+01 -3.5418810e+03 - 1.6781446e+02 -6.9053710e+01 -3.5419687e+03 - 1.6804028e+02 -5.5949865e+01 -3.5420419e+03 - 1.6823553e+02 -4.2386987e+01 -3.5420998e+03 - 1.6838606e+02 -2.8464740e+01 -3.5421417e+03 - 1.6848098e+02 -1.4295336e+01 -3.5421671e+03 - 1.6851340e+02 0.0000000e+00 -3.5421755e+03 - 1.2637455e+02 0.0000000e+00 -3.5450761e+03 - 1.2635028e+02 1.0716193e+01 -3.5450713e+03 - 1.2627923e+02 2.1338311e+01 -3.5450571e+03 - 1.2616656e+02 3.1775776e+01 -3.5450335e+03 - 1.2602044e+02 4.1944705e+01 -3.5450010e+03 - 1.2585146e+02 5.1770543e+01 -3.5449598e+03 - 1.2567195e+02 6.1189963e+01 -3.5449105e+03 - 1.2549517e+02 7.0151955e+01 -3.5448536e+03 - 1.2533462e+02 7.8618128e+01 -3.5447898e+03 - 1.2520331e+02 8.6562322e+01 -3.5447197e+03 - 1.2511328e+02 9.3969680e+01 -3.5446439e+03 - 1.2507516e+02 1.0083535e+02 -3.5445633e+03 - 1.2509791e+02 1.0716300e+02 -3.5444785e+03 - 1.2518871e+02 1.1296322e+02 -3.5443902e+03 - 1.2535291e+02 1.1825203e+02 -3.5442992e+03 - 1.2559411e+02 1.2304947e+02 -3.5442062e+03 - 1.2591426e+02 1.2737839e+02 -3.5441117e+03 - 1.2631383e+02 1.3126338e+02 -3.5440165e+03 - 1.2679196e+02 1.3472995e+02 -3.5439211e+03 - 1.2734670e+02 1.3780384e+02 -3.5438261e+03 - 1.2797510e+02 1.4051050e+02 -3.5437322e+03 - 1.2867344e+02 1.4287474e+02 -3.5436397e+03 - 1.2943736e+02 1.4492043e+02 -3.5435492e+03 - 1.3026196e+02 1.4667034e+02 -3.5434611e+03 - 1.3114195e+02 1.4814607e+02 -3.5433759e+03 - 1.3207170e+02 1.4936795e+02 -3.5432940e+03 - 1.3304536e+02 1.5035510e+02 -3.5432157e+03 - 1.3405689e+02 1.5112538e+02 -3.5431414e+03 - 1.3510009e+02 1.5169554e+02 -3.5430714e+03 - 1.3616869e+02 1.5208117e+02 -3.5430059e+03 - 1.3725632e+02 1.5229688e+02 -3.5429453e+03 - 1.3835654e+02 1.5235628e+02 -3.5428897e+03 - 1.3946287e+02 1.5227214e+02 -3.5428395e+03 - 1.4056874e+02 1.5205639e+02 -3.5427947e+03 - 1.4166754e+02 1.5172025e+02 -3.5427555e+03 - 1.4275258e+02 1.5127431e+02 -3.5427221e+03 - 1.4381707e+02 1.5072851e+02 -3.5426947e+03 - 1.4485411e+02 1.5009233e+02 -3.5426732e+03 - 1.4585665e+02 1.4937474e+02 -3.5426578e+03 - 1.4681751e+02 1.4858431e+02 -3.5426486e+03 - 1.4772927e+02 1.4772927e+02 -3.5426455e+03 - 1.4858431e+02 1.4681751e+02 -3.5426486e+03 - 1.4937474e+02 1.4585665e+02 -3.5426578e+03 - 1.5009233e+02 1.4485411e+02 -3.5426732e+03 - 1.5072851e+02 1.4381707e+02 -3.5426947e+03 - 1.5127431e+02 1.4275258e+02 -3.5427221e+03 - 1.5172026e+02 1.4166754e+02 -3.5427555e+03 - 1.5205639e+02 1.4056874e+02 -3.5427947e+03 - 1.5227214e+02 1.3946287e+02 -3.5428395e+03 - 1.5235628e+02 1.3835654e+02 -3.5428897e+03 - 1.5229688e+02 1.3725632e+02 -3.5429453e+03 - 1.5208117e+02 1.3616869e+02 -3.5430059e+03 - 1.5169554e+02 1.3510009e+02 -3.5430714e+03 - 1.5112538e+02 1.3405689e+02 -3.5431414e+03 - 1.5035510e+02 1.3304536e+02 -3.5432157e+03 - 1.4936795e+02 1.3207170e+02 -3.5432940e+03 - 1.4814607e+02 1.3114195e+02 -3.5433759e+03 - 1.4667034e+02 1.3026196e+02 -3.5434611e+03 - 1.4492043e+02 1.2943736e+02 -3.5435492e+03 - 1.4287474e+02 1.2867344e+02 -3.5436397e+03 - 1.4051050e+02 1.2797510e+02 -3.5437322e+03 - 1.3780384e+02 1.2734670e+02 -3.5438261e+03 - 1.3472995e+02 1.2679196e+02 -3.5439211e+03 - 1.3126338e+02 1.2631383e+02 -3.5440165e+03 - 1.2737839e+02 1.2591426e+02 -3.5441117e+03 - 1.2304947e+02 1.2559411e+02 -3.5442062e+03 - 1.1825203e+02 1.2535291e+02 -3.5442992e+03 - 1.1296322e+02 1.2518871e+02 -3.5443902e+03 - 1.0716300e+02 1.2509791e+02 -3.5444785e+03 - 1.0083535e+02 1.2507515e+02 -3.5445633e+03 - 9.3969680e+01 1.2511328e+02 -3.5446439e+03 - 8.6562322e+01 1.2520331e+02 -3.5447197e+03 - 7.8618128e+01 1.2533462e+02 -3.5447898e+03 - 7.0151955e+01 1.2549517e+02 -3.5448536e+03 - 6.1189963e+01 1.2567195e+02 -3.5449105e+03 - 5.1770543e+01 1.2585146e+02 -3.5449598e+03 - 4.1944705e+01 1.2602044e+02 -3.5450010e+03 - 3.1775776e+01 1.2616656e+02 -3.5450335e+03 - 2.1338311e+01 1.2627923e+02 -3.5450571e+03 - 1.0716193e+01 1.2635028e+02 -3.5450713e+03 - 0.0000000e+00 1.2637455e+02 -3.5450761e+03 - -1.0716193e+01 1.2635028e+02 -3.5450713e+03 - -2.1338311e+01 1.2627923e+02 -3.5450571e+03 - -3.1775776e+01 1.2616656e+02 -3.5450335e+03 - -4.1944705e+01 1.2602044e+02 -3.5450010e+03 - -5.1770543e+01 1.2585146e+02 -3.5449598e+03 - -6.1189963e+01 1.2567195e+02 -3.5449105e+03 - -7.0151955e+01 1.2549517e+02 -3.5448536e+03 - -7.8618128e+01 1.2533462e+02 -3.5447898e+03 - -8.6562322e+01 1.2520331e+02 -3.5447197e+03 - -9.3969680e+01 1.2511328e+02 -3.5446439e+03 - -1.0083535e+02 1.2507516e+02 -3.5445633e+03 - -1.0716300e+02 1.2509791e+02 -3.5444785e+03 - -1.1296322e+02 1.2518871e+02 -3.5443902e+03 - -1.1825203e+02 1.2535291e+02 -3.5442992e+03 - -1.2304947e+02 1.2559411e+02 -3.5442062e+03 - -1.2737839e+02 1.2591426e+02 -3.5441117e+03 - -1.3126338e+02 1.2631383e+02 -3.5440165e+03 - -1.3472995e+02 1.2679196e+02 -3.5439211e+03 - -1.3780384e+02 1.2734670e+02 -3.5438261e+03 - -1.4051050e+02 1.2797510e+02 -3.5437322e+03 - -1.4287474e+02 1.2867344e+02 -3.5436397e+03 - -1.4492043e+02 1.2943736e+02 -3.5435492e+03 - -1.4667034e+02 1.3026196e+02 -3.5434611e+03 - -1.4814607e+02 1.3114195e+02 -3.5433759e+03 - -1.4936795e+02 1.3207170e+02 -3.5432940e+03 - -1.5035510e+02 1.3304536e+02 -3.5432157e+03 - -1.5112538e+02 1.3405689e+02 -3.5431414e+03 - -1.5169554e+02 1.3510009e+02 -3.5430714e+03 - -1.5208117e+02 1.3616869e+02 -3.5430059e+03 - -1.5229688e+02 1.3725632e+02 -3.5429453e+03 - -1.5235628e+02 1.3835654e+02 -3.5428897e+03 - -1.5227214e+02 1.3946287e+02 -3.5428395e+03 - -1.5205639e+02 1.4056874e+02 -3.5427947e+03 - -1.5172025e+02 1.4166754e+02 -3.5427555e+03 - -1.5127431e+02 1.4275258e+02 -3.5427221e+03 - -1.5072851e+02 1.4381707e+02 -3.5426947e+03 - -1.5009233e+02 1.4485411e+02 -3.5426732e+03 - -1.4937474e+02 1.4585665e+02 -3.5426578e+03 - -1.4858431e+02 1.4681751e+02 -3.5426486e+03 - -1.4772927e+02 1.4772927e+02 -3.5426455e+03 - -1.4681751e+02 1.4858431e+02 -3.5426486e+03 - -1.4585665e+02 1.4937474e+02 -3.5426578e+03 - -1.4485411e+02 1.5009233e+02 -3.5426732e+03 - -1.4381707e+02 1.5072851e+02 -3.5426947e+03 - -1.4275258e+02 1.5127431e+02 -3.5427221e+03 - -1.4166754e+02 1.5172025e+02 -3.5427555e+03 - -1.4056874e+02 1.5205639e+02 -3.5427947e+03 - -1.3946287e+02 1.5227214e+02 -3.5428395e+03 - -1.3835654e+02 1.5235628e+02 -3.5428897e+03 - -1.3725632e+02 1.5229688e+02 -3.5429453e+03 - -1.3616869e+02 1.5208117e+02 -3.5430059e+03 - -1.3510009e+02 1.5169554e+02 -3.5430714e+03 - -1.3405689e+02 1.5112538e+02 -3.5431414e+03 - -1.3304536e+02 1.5035510e+02 -3.5432157e+03 - -1.3207170e+02 1.4936795e+02 -3.5432940e+03 - -1.3114195e+02 1.4814607e+02 -3.5433759e+03 - -1.3026196e+02 1.4667034e+02 -3.5434611e+03 - -1.2943736e+02 1.4492043e+02 -3.5435492e+03 - -1.2867344e+02 1.4287474e+02 -3.5436397e+03 - -1.2797510e+02 1.4051050e+02 -3.5437322e+03 - -1.2734670e+02 1.3780384e+02 -3.5438261e+03 - -1.2679196e+02 1.3472995e+02 -3.5439211e+03 - -1.2631383e+02 1.3126338e+02 -3.5440165e+03 - -1.2591426e+02 1.2737839e+02 -3.5441117e+03 - -1.2559411e+02 1.2304947e+02 -3.5442062e+03 - -1.2535291e+02 1.1825203e+02 -3.5442992e+03 - -1.2518871e+02 1.1296322e+02 -3.5443902e+03 - -1.2509791e+02 1.0716300e+02 -3.5444785e+03 - -1.2507516e+02 1.0083535e+02 -3.5445633e+03 - -1.2511328e+02 9.3969680e+01 -3.5446439e+03 - -1.2520331e+02 8.6562322e+01 -3.5447197e+03 - -1.2533462e+02 7.8618128e+01 -3.5447898e+03 - -1.2549517e+02 7.0151955e+01 -3.5448536e+03 - -1.2567195e+02 6.1189963e+01 -3.5449105e+03 - -1.2585146e+02 5.1770543e+01 -3.5449598e+03 - -1.2602044e+02 4.1944705e+01 -3.5450010e+03 - -1.2616656e+02 3.1775776e+01 -3.5450335e+03 - -1.2627923e+02 2.1338311e+01 -3.5450571e+03 - -1.2635028e+02 1.0716193e+01 -3.5450713e+03 - -1.2637455e+02 0.0000000e+00 -3.5450761e+03 - -1.2635028e+02 -1.0716193e+01 -3.5450713e+03 - -1.2627923e+02 -2.1338311e+01 -3.5450571e+03 - -1.2616656e+02 -3.1775776e+01 -3.5450335e+03 - -1.2602044e+02 -4.1944705e+01 -3.5450010e+03 - -1.2585146e+02 -5.1770543e+01 -3.5449598e+03 - -1.2567195e+02 -6.1189963e+01 -3.5449105e+03 - -1.2549517e+02 -7.0151955e+01 -3.5448536e+03 - -1.2533462e+02 -7.8618128e+01 -3.5447898e+03 - -1.2520331e+02 -8.6562322e+01 -3.5447197e+03 - -1.2511328e+02 -9.3969680e+01 -3.5446439e+03 - -1.2507516e+02 -1.0083535e+02 -3.5445633e+03 - -1.2509791e+02 -1.0716300e+02 -3.5444785e+03 - -1.2518871e+02 -1.1296322e+02 -3.5443902e+03 - -1.2535291e+02 -1.1825203e+02 -3.5442992e+03 - -1.2559411e+02 -1.2304947e+02 -3.5442062e+03 - -1.2591426e+02 -1.2737839e+02 -3.5441117e+03 - -1.2631383e+02 -1.3126338e+02 -3.5440165e+03 - -1.2679196e+02 -1.3472995e+02 -3.5439211e+03 - -1.2734670e+02 -1.3780384e+02 -3.5438261e+03 - -1.2797510e+02 -1.4051050e+02 -3.5437322e+03 - -1.2867344e+02 -1.4287474e+02 -3.5436397e+03 - -1.2943736e+02 -1.4492043e+02 -3.5435492e+03 - -1.3026196e+02 -1.4667034e+02 -3.5434611e+03 - -1.3114195e+02 -1.4814607e+02 -3.5433759e+03 - -1.3207170e+02 -1.4936795e+02 -3.5432940e+03 - -1.3304536e+02 -1.5035510e+02 -3.5432157e+03 - -1.3405689e+02 -1.5112538e+02 -3.5431414e+03 - -1.3510009e+02 -1.5169554e+02 -3.5430714e+03 - -1.3616869e+02 -1.5208117e+02 -3.5430059e+03 - -1.3725632e+02 -1.5229688e+02 -3.5429453e+03 - -1.3835654e+02 -1.5235628e+02 -3.5428897e+03 - -1.3946287e+02 -1.5227214e+02 -3.5428395e+03 - -1.4056874e+02 -1.5205639e+02 -3.5427947e+03 - -1.4166754e+02 -1.5172026e+02 -3.5427555e+03 - -1.4275258e+02 -1.5127431e+02 -3.5427221e+03 - -1.4381707e+02 -1.5072851e+02 -3.5426947e+03 - -1.4485411e+02 -1.5009233e+02 -3.5426732e+03 - -1.4585665e+02 -1.4937474e+02 -3.5426578e+03 - -1.4681751e+02 -1.4858431e+02 -3.5426486e+03 - -1.4772927e+02 -1.4772927e+02 -3.5426455e+03 - -1.4858431e+02 -1.4681751e+02 -3.5426486e+03 - -1.4937474e+02 -1.4585665e+02 -3.5426578e+03 - -1.5009233e+02 -1.4485411e+02 -3.5426732e+03 - -1.5072851e+02 -1.4381707e+02 -3.5426947e+03 - -1.5127431e+02 -1.4275258e+02 -3.5427221e+03 - -1.5172025e+02 -1.4166754e+02 -3.5427555e+03 - -1.5205639e+02 -1.4056874e+02 -3.5427947e+03 - -1.5227214e+02 -1.3946287e+02 -3.5428395e+03 - -1.5235628e+02 -1.3835654e+02 -3.5428897e+03 - -1.5229688e+02 -1.3725632e+02 -3.5429453e+03 - -1.5208117e+02 -1.3616869e+02 -3.5430059e+03 - -1.5169554e+02 -1.3510009e+02 -3.5430714e+03 - -1.5112538e+02 -1.3405689e+02 -3.5431414e+03 - -1.5035510e+02 -1.3304536e+02 -3.5432157e+03 - -1.4936795e+02 -1.3207170e+02 -3.5432940e+03 - -1.4814607e+02 -1.3114195e+02 -3.5433759e+03 - -1.4667034e+02 -1.3026196e+02 -3.5434611e+03 - -1.4492043e+02 -1.2943736e+02 -3.5435492e+03 - -1.4287474e+02 -1.2867344e+02 -3.5436397e+03 - -1.4051050e+02 -1.2797510e+02 -3.5437322e+03 - -1.3780384e+02 -1.2734670e+02 -3.5438261e+03 - -1.3472995e+02 -1.2679196e+02 -3.5439211e+03 - -1.3126338e+02 -1.2631383e+02 -3.5440165e+03 - -1.2737839e+02 -1.2591426e+02 -3.5441117e+03 - -1.2304947e+02 -1.2559411e+02 -3.5442062e+03 - -1.1825203e+02 -1.2535291e+02 -3.5442992e+03 - -1.1296322e+02 -1.2518871e+02 -3.5443902e+03 - -1.0716300e+02 -1.2509791e+02 -3.5444785e+03 - -1.0083535e+02 -1.2507515e+02 -3.5445633e+03 - -9.3969680e+01 -1.2511328e+02 -3.5446439e+03 - -8.6562322e+01 -1.2520331e+02 -3.5447197e+03 - -7.8618128e+01 -1.2533462e+02 -3.5447898e+03 - -7.0151955e+01 -1.2549517e+02 -3.5448536e+03 - -6.1189963e+01 -1.2567195e+02 -3.5449105e+03 - -5.1770543e+01 -1.2585146e+02 -3.5449598e+03 - -4.1944705e+01 -1.2602044e+02 -3.5450010e+03 - -3.1775776e+01 -1.2616656e+02 -3.5450335e+03 - -2.1338311e+01 -1.2627923e+02 -3.5450571e+03 - -1.0716193e+01 -1.2635028e+02 -3.5450713e+03 - 0.0000000e+00 -1.2637455e+02 -3.5450761e+03 - 1.0716193e+01 -1.2635028e+02 -3.5450713e+03 - 2.1338311e+01 -1.2627923e+02 -3.5450571e+03 - 3.1775776e+01 -1.2616656e+02 -3.5450335e+03 - 4.1944705e+01 -1.2602044e+02 -3.5450010e+03 - 5.1770543e+01 -1.2585146e+02 -3.5449598e+03 - 6.1189963e+01 -1.2567195e+02 -3.5449105e+03 - 7.0151955e+01 -1.2549517e+02 -3.5448536e+03 - 7.8618128e+01 -1.2533462e+02 -3.5447898e+03 - 8.6562322e+01 -1.2520331e+02 -3.5447197e+03 - 9.3969680e+01 -1.2511328e+02 -3.5446439e+03 - 1.0083535e+02 -1.2507516e+02 -3.5445633e+03 - 1.0716300e+02 -1.2509791e+02 -3.5444785e+03 - 1.1296322e+02 -1.2518871e+02 -3.5443902e+03 - 1.1825203e+02 -1.2535291e+02 -3.5442992e+03 - 1.2304947e+02 -1.2559411e+02 -3.5442062e+03 - 1.2737839e+02 -1.2591426e+02 -3.5441117e+03 - 1.3126338e+02 -1.2631383e+02 -3.5440165e+03 - 1.3472995e+02 -1.2679196e+02 -3.5439211e+03 - 1.3780384e+02 -1.2734670e+02 -3.5438261e+03 - 1.4051050e+02 -1.2797510e+02 -3.5437322e+03 - 1.4287474e+02 -1.2867344e+02 -3.5436397e+03 - 1.4492043e+02 -1.2943736e+02 -3.5435492e+03 - 1.4667034e+02 -1.3026196e+02 -3.5434611e+03 - 1.4814607e+02 -1.3114195e+02 -3.5433759e+03 - 1.4936795e+02 -1.3207170e+02 -3.5432940e+03 - 1.5035510e+02 -1.3304536e+02 -3.5432157e+03 - 1.5112538e+02 -1.3405689e+02 -3.5431414e+03 - 1.5169554e+02 -1.3510009e+02 -3.5430714e+03 - 1.5208117e+02 -1.3616869e+02 -3.5430059e+03 - 1.5229688e+02 -1.3725632e+02 -3.5429453e+03 - 1.5235628e+02 -1.3835654e+02 -3.5428897e+03 - 1.5227214e+02 -1.3946287e+02 -3.5428395e+03 - 1.5205639e+02 -1.4056874e+02 -3.5427947e+03 - 1.5172025e+02 -1.4166754e+02 -3.5427555e+03 - 1.5127431e+02 -1.4275258e+02 -3.5427221e+03 - 1.5072851e+02 -1.4381707e+02 -3.5426947e+03 - 1.5009233e+02 -1.4485411e+02 -3.5426732e+03 - 1.4937474e+02 -1.4585665e+02 -3.5426578e+03 - 1.4858431e+02 -1.4681751e+02 -3.5426486e+03 - 1.4772927e+02 -1.4772927e+02 -3.5426455e+03 - 1.4681751e+02 -1.4858431e+02 -3.5426486e+03 - 1.4585665e+02 -1.4937474e+02 -3.5426578e+03 - 1.4485411e+02 -1.5009233e+02 -3.5426732e+03 - 1.4381707e+02 -1.5072851e+02 -3.5426947e+03 - 1.4275258e+02 -1.5127431e+02 -3.5427221e+03 - 1.4166754e+02 -1.5172025e+02 -3.5427555e+03 - 1.4056874e+02 -1.5205639e+02 -3.5427947e+03 - 1.3946287e+02 -1.5227214e+02 -3.5428395e+03 - 1.3835654e+02 -1.5235628e+02 -3.5428897e+03 - 1.3725632e+02 -1.5229688e+02 -3.5429453e+03 - 1.3616869e+02 -1.5208117e+02 -3.5430059e+03 - 1.3510009e+02 -1.5169554e+02 -3.5430714e+03 - 1.3405689e+02 -1.5112538e+02 -3.5431414e+03 - 1.3304536e+02 -1.5035510e+02 -3.5432157e+03 - 1.3207170e+02 -1.4936795e+02 -3.5432940e+03 - 1.3114195e+02 -1.4814607e+02 -3.5433759e+03 - 1.3026196e+02 -1.4667034e+02 -3.5434611e+03 - 1.2943736e+02 -1.4492043e+02 -3.5435492e+03 - 1.2867344e+02 -1.4287474e+02 -3.5436397e+03 - 1.2797510e+02 -1.4051050e+02 -3.5437322e+03 - 1.2734670e+02 -1.3780384e+02 -3.5438261e+03 - 1.2679196e+02 -1.3472995e+02 -3.5439211e+03 - 1.2631383e+02 -1.3126338e+02 -3.5440165e+03 - 1.2591426e+02 -1.2737839e+02 -3.5441117e+03 - 1.2559411e+02 -1.2304947e+02 -3.5442062e+03 - 1.2535291e+02 -1.1825203e+02 -3.5442992e+03 - 1.2518871e+02 -1.1296322e+02 -3.5443902e+03 - 1.2509791e+02 -1.0716300e+02 -3.5444785e+03 - 1.2507516e+02 -1.0083535e+02 -3.5445633e+03 - 1.2511328e+02 -9.3969680e+01 -3.5446439e+03 - 1.2520331e+02 -8.6562322e+01 -3.5447197e+03 - 1.2533462e+02 -7.8618128e+01 -3.5447898e+03 - 1.2549517e+02 -7.0151955e+01 -3.5448536e+03 - 1.2567195e+02 -6.1189963e+01 -3.5449105e+03 - 1.2585146e+02 -5.1770543e+01 -3.5449598e+03 - 1.2602044e+02 -4.1944705e+01 -3.5450010e+03 - 1.2616656e+02 -3.1775776e+01 -3.5450335e+03 - 1.2627923e+02 -2.1338311e+01 -3.5450571e+03 - 1.2635028e+02 -1.0716193e+01 -3.5450713e+03 - 1.2637455e+02 0.0000000e+00 -3.5450761e+03 - 8.4244679e+01 2.4067136e-09 -3.5471459e+03 - 8.4228521e+01 7.1415404e+00 -3.5471438e+03 - 8.4181222e+01 1.4220544e+01 -3.5471374e+03 - 8.4106216e+01 2.1176789e+01 -3.5471270e+03 - 8.4008949e+01 2.7954486e+01 -3.5471125e+03 - 8.3896484e+01 3.4504027e+01 -3.5470942e+03 - 8.3777036e+01 4.0783241e+01 -3.5470723e+03 - 8.3659455e+01 4.6758126e+01 -3.5470471e+03 - 8.3552736e+01 5.2403055e+01 -3.5470187e+03 - 8.3465575e+01 5.7700523e+01 -3.5469875e+03 - 8.3406003e+01 6.2640541e+01 -3.5469538e+03 - 8.3381120e+01 6.7219780e+01 -3.5469180e+03 - 8.3396917e+01 7.1440580e+01 -3.5468803e+03 - 8.3458189e+01 7.5309912e+01 -3.5468410e+03 - 8.3568513e+01 7.8838369e+01 -3.5468005e+03 - 8.3730291e+01 8.2039243e+01 -3.5467591e+03 - 8.3944826e+01 8.4927702e+01 -3.5467171e+03 - 8.4212426e+01 8.7520102e+01 -3.5466747e+03 - 8.4532523e+01 8.9833416e+01 -3.5466323e+03 - 8.4903791e+01 9.1884782e+01 -3.5465900e+03 - 8.5324260e+01 9.3691164e+01 -3.5465482e+03 - 8.5791434e+01 9.5269092e+01 -3.5465071e+03 - 8.6302380e+01 9.6634487e+01 -3.5464668e+03 - 8.6853818e+01 9.7802545e+01 -3.5464276e+03 - 8.7442196e+01 9.8787666e+01 -3.5463897e+03 - 8.8063748e+01 9.9603426e+01 -3.5463532e+03 - 8.8714548e+01 1.0026257e+02 -3.5463183e+03 - 8.9390547e+01 1.0077704e+02 -3.5462853e+03 - 9.0087607e+01 1.0115799e+02 -3.5462541e+03 - 9.0801520e+01 1.0141584e+02 -3.5462249e+03 - 9.1528030e+01 1.0156032e+02 -3.5461980e+03 - 9.2262834e+01 1.0160052e+02 -3.5461732e+03 - 9.3001596e+01 1.0154496e+02 -3.5461508e+03 - 9.3739940e+01 1.0140158e+02 -3.5461309e+03 - 9.4473448e+01 1.0117788e+02 -3.5461135e+03 - 9.5197655e+01 1.0088090e+02 -3.5460986e+03 - 9.5908034e+01 1.0051727e+02 -3.5460864e+03 - 9.6599987e+01 1.0009330e+02 -3.5460768e+03 - 9.7268824e+01 9.9614975e+01 -3.5460700e+03 - 9.7909748e+01 9.9087994e+01 -3.5460659e+03 - 9.8517831e+01 9.8517831e+01 -3.5460645e+03 - 9.9087994e+01 9.7909748e+01 -3.5460659e+03 - 9.9614975e+01 9.7268824e+01 -3.5460700e+03 - 1.0009330e+02 9.6599987e+01 -3.5460768e+03 - 1.0051727e+02 9.5908034e+01 -3.5460864e+03 - 1.0088090e+02 9.5197655e+01 -3.5460986e+03 - 1.0117788e+02 9.4473448e+01 -3.5461135e+03 - 1.0140158e+02 9.3739940e+01 -3.5461309e+03 - 1.0154496e+02 9.3001596e+01 -3.5461508e+03 - 1.0160052e+02 9.2262834e+01 -3.5461732e+03 - 1.0156032e+02 9.1528030e+01 -3.5461980e+03 - 1.0141584e+02 9.0801520e+01 -3.5462249e+03 - 1.0115799e+02 9.0087607e+01 -3.5462541e+03 - 1.0077704e+02 8.9390547e+01 -3.5462853e+03 - 1.0026257e+02 8.8714548e+01 -3.5463183e+03 - 9.9603426e+01 8.8063748e+01 -3.5463532e+03 - 9.8787666e+01 8.7442196e+01 -3.5463897e+03 - 9.7802545e+01 8.6853818e+01 -3.5464276e+03 - 9.6634487e+01 8.6302380e+01 -3.5464668e+03 - 9.5269092e+01 8.5791434e+01 -3.5465071e+03 - 9.3691164e+01 8.5324260e+01 -3.5465482e+03 - 9.1884782e+01 8.4903791e+01 -3.5465900e+03 - 8.9833416e+01 8.4532523e+01 -3.5466323e+03 - 8.7520102e+01 8.4212426e+01 -3.5466747e+03 - 8.4927702e+01 8.3944826e+01 -3.5467171e+03 - 8.2039243e+01 8.3730291e+01 -3.5467591e+03 - 7.8838369e+01 8.3568513e+01 -3.5468005e+03 - 7.5309912e+01 8.3458189e+01 -3.5468410e+03 - 7.1440580e+01 8.3396917e+01 -3.5468803e+03 - 6.7219780e+01 8.3381120e+01 -3.5469180e+03 - 6.2640541e+01 8.3406003e+01 -3.5469538e+03 - 5.7700523e+01 8.3465575e+01 -3.5469875e+03 - 5.2403055e+01 8.3552736e+01 -3.5470187e+03 - 4.6758126e+01 8.3659455e+01 -3.5470471e+03 - 4.0783241e+01 8.3777036e+01 -3.5470723e+03 - 3.4504027e+01 8.3896484e+01 -3.5470942e+03 - 2.7954486e+01 8.4008949e+01 -3.5471125e+03 - 2.1176789e+01 8.4106216e+01 -3.5471270e+03 - 1.4220544e+01 8.4181222e+01 -3.5471374e+03 - 7.1415404e+00 8.4228521e+01 -3.5471438e+03 - 2.4067136e-09 8.4244679e+01 -3.5471459e+03 - -7.1415404e+00 8.4228521e+01 -3.5471438e+03 - -1.4220544e+01 8.4181222e+01 -3.5471374e+03 - -2.1176789e+01 8.4106216e+01 -3.5471270e+03 - -2.7954486e+01 8.4008949e+01 -3.5471125e+03 - -3.4504027e+01 8.3896484e+01 -3.5470942e+03 - -4.0783241e+01 8.3777036e+01 -3.5470723e+03 - -4.6758126e+01 8.3659455e+01 -3.5470471e+03 - -5.2403055e+01 8.3552736e+01 -3.5470187e+03 - -5.7700523e+01 8.3465575e+01 -3.5469875e+03 - -6.2640541e+01 8.3406003e+01 -3.5469538e+03 - -6.7219780e+01 8.3381120e+01 -3.5469180e+03 - -7.1440580e+01 8.3396917e+01 -3.5468803e+03 - -7.5309912e+01 8.3458189e+01 -3.5468410e+03 - -7.8838369e+01 8.3568513e+01 -3.5468005e+03 - -8.2039243e+01 8.3730291e+01 -3.5467591e+03 - -8.4927702e+01 8.3944826e+01 -3.5467171e+03 - -8.7520102e+01 8.4212426e+01 -3.5466747e+03 - -8.9833416e+01 8.4532523e+01 -3.5466323e+03 - -9.1884782e+01 8.4903791e+01 -3.5465900e+03 - -9.3691164e+01 8.5324260e+01 -3.5465482e+03 - -9.5269092e+01 8.5791434e+01 -3.5465071e+03 - -9.6634487e+01 8.6302380e+01 -3.5464668e+03 - -9.7802545e+01 8.6853818e+01 -3.5464276e+03 - -9.8787666e+01 8.7442196e+01 -3.5463897e+03 - -9.9603426e+01 8.8063748e+01 -3.5463532e+03 - -1.0026257e+02 8.8714548e+01 -3.5463183e+03 - -1.0077704e+02 8.9390547e+01 -3.5462853e+03 - -1.0115799e+02 9.0087607e+01 -3.5462541e+03 - -1.0141584e+02 9.0801520e+01 -3.5462249e+03 - -1.0156032e+02 9.1528030e+01 -3.5461980e+03 - -1.0160052e+02 9.2262834e+01 -3.5461732e+03 - -1.0154496e+02 9.3001596e+01 -3.5461508e+03 - -1.0140158e+02 9.3739940e+01 -3.5461309e+03 - -1.0117788e+02 9.4473448e+01 -3.5461135e+03 - -1.0088090e+02 9.5197655e+01 -3.5460986e+03 - -1.0051727e+02 9.5908034e+01 -3.5460864e+03 - -1.0009330e+02 9.6599987e+01 -3.5460768e+03 - -9.9614975e+01 9.7268824e+01 -3.5460700e+03 - -9.9087994e+01 9.7909748e+01 -3.5460659e+03 - -9.8517831e+01 9.8517831e+01 -3.5460645e+03 - -9.7909748e+01 9.9087994e+01 -3.5460659e+03 - -9.7268824e+01 9.9614975e+01 -3.5460700e+03 - -9.6599987e+01 1.0009330e+02 -3.5460768e+03 - -9.5908034e+01 1.0051727e+02 -3.5460864e+03 - -9.5197655e+01 1.0088090e+02 -3.5460986e+03 - -9.4473448e+01 1.0117788e+02 -3.5461135e+03 - -9.3739940e+01 1.0140158e+02 -3.5461309e+03 - -9.3001596e+01 1.0154496e+02 -3.5461508e+03 - -9.2262834e+01 1.0160052e+02 -3.5461732e+03 - -9.1528030e+01 1.0156032e+02 -3.5461980e+03 - -9.0801520e+01 1.0141584e+02 -3.5462249e+03 - -9.0087607e+01 1.0115799e+02 -3.5462541e+03 - -8.9390547e+01 1.0077704e+02 -3.5462853e+03 - -8.8714548e+01 1.0026257e+02 -3.5463183e+03 - -8.8063748e+01 9.9603426e+01 -3.5463532e+03 - -8.7442196e+01 9.8787666e+01 -3.5463897e+03 - -8.6853818e+01 9.7802545e+01 -3.5464276e+03 - -8.6302380e+01 9.6634487e+01 -3.5464668e+03 - -8.5791434e+01 9.5269092e+01 -3.5465071e+03 - -8.5324260e+01 9.3691164e+01 -3.5465482e+03 - -8.4903791e+01 9.1884782e+01 -3.5465900e+03 - -8.4532523e+01 8.9833416e+01 -3.5466323e+03 - -8.4212426e+01 8.7520102e+01 -3.5466747e+03 - -8.3944826e+01 8.4927702e+01 -3.5467171e+03 - -8.3730291e+01 8.2039243e+01 -3.5467591e+03 - -8.3568513e+01 7.8838369e+01 -3.5468005e+03 - -8.3458189e+01 7.5309912e+01 -3.5468410e+03 - -8.3396917e+01 7.1440580e+01 -3.5468803e+03 - -8.3381120e+01 6.7219780e+01 -3.5469180e+03 - -8.3406003e+01 6.2640541e+01 -3.5469538e+03 - -8.3465575e+01 5.7700523e+01 -3.5469875e+03 - -8.3552736e+01 5.2403055e+01 -3.5470187e+03 - -8.3659455e+01 4.6758126e+01 -3.5470471e+03 - -8.3777036e+01 4.0783241e+01 -3.5470723e+03 - -8.3896484e+01 3.4504027e+01 -3.5470942e+03 - -8.4008949e+01 2.7954486e+01 -3.5471125e+03 - -8.4106216e+01 2.1176789e+01 -3.5471270e+03 - -8.4181222e+01 1.4220544e+01 -3.5471374e+03 - -8.4228521e+01 7.1415404e+00 -3.5471438e+03 - -8.4244679e+01 0.0000000e+00 -3.5471459e+03 - -8.4228521e+01 -7.1415404e+00 -3.5471438e+03 - -8.4181222e+01 -1.4220544e+01 -3.5471374e+03 - -8.4106216e+01 -2.1176789e+01 -3.5471270e+03 - -8.4008949e+01 -2.7954486e+01 -3.5471125e+03 - -8.3896484e+01 -3.4504027e+01 -3.5470942e+03 - -8.3777036e+01 -4.0783241e+01 -3.5470723e+03 - -8.3659455e+01 -4.6758126e+01 -3.5470471e+03 - -8.3552736e+01 -5.2403055e+01 -3.5470187e+03 - -8.3465575e+01 -5.7700523e+01 -3.5469875e+03 - -8.3406003e+01 -6.2640541e+01 -3.5469538e+03 - -8.3381120e+01 -6.7219780e+01 -3.5469180e+03 - -8.3396917e+01 -7.1440580e+01 -3.5468803e+03 - -8.3458189e+01 -7.5309912e+01 -3.5468410e+03 - -8.3568513e+01 -7.8838369e+01 -3.5468005e+03 - -8.3730291e+01 -8.2039243e+01 -3.5467591e+03 - -8.3944826e+01 -8.4927702e+01 -3.5467171e+03 - -8.4212426e+01 -8.7520102e+01 -3.5466747e+03 - -8.4532523e+01 -8.9833416e+01 -3.5466323e+03 - -8.4903791e+01 -9.1884782e+01 -3.5465900e+03 - -8.5324260e+01 -9.3691164e+01 -3.5465482e+03 - -8.5791434e+01 -9.5269092e+01 -3.5465071e+03 - -8.6302380e+01 -9.6634487e+01 -3.5464668e+03 - -8.6853818e+01 -9.7802545e+01 -3.5464276e+03 - -8.7442196e+01 -9.8787666e+01 -3.5463897e+03 - -8.8063748e+01 -9.9603426e+01 -3.5463532e+03 - -8.8714548e+01 -1.0026257e+02 -3.5463183e+03 - -8.9390547e+01 -1.0077704e+02 -3.5462853e+03 - -9.0087607e+01 -1.0115799e+02 -3.5462541e+03 - -9.0801520e+01 -1.0141584e+02 -3.5462249e+03 - -9.1528030e+01 -1.0156032e+02 -3.5461980e+03 - -9.2262834e+01 -1.0160052e+02 -3.5461732e+03 - -9.3001596e+01 -1.0154496e+02 -3.5461508e+03 - -9.3739940e+01 -1.0140158e+02 -3.5461309e+03 - -9.4473448e+01 -1.0117788e+02 -3.5461135e+03 - -9.5197655e+01 -1.0088090e+02 -3.5460986e+03 - -9.5908034e+01 -1.0051727e+02 -3.5460864e+03 - -9.6599987e+01 -1.0009330e+02 -3.5460768e+03 - -9.7268824e+01 -9.9614975e+01 -3.5460700e+03 - -9.7909748e+01 -9.9087994e+01 -3.5460659e+03 - -9.8517831e+01 -9.8517831e+01 -3.5460645e+03 - -9.9087994e+01 -9.7909748e+01 -3.5460659e+03 - -9.9614975e+01 -9.7268824e+01 -3.5460700e+03 - -1.0009330e+02 -9.6599987e+01 -3.5460768e+03 - -1.0051727e+02 -9.5908034e+01 -3.5460864e+03 - -1.0088090e+02 -9.5197655e+01 -3.5460986e+03 - -1.0117788e+02 -9.4473448e+01 -3.5461135e+03 - -1.0140158e+02 -9.3739940e+01 -3.5461309e+03 - -1.0154496e+02 -9.3001596e+01 -3.5461508e+03 - -1.0160052e+02 -9.2262834e+01 -3.5461732e+03 - -1.0156032e+02 -9.1528030e+01 -3.5461980e+03 - -1.0141584e+02 -9.0801520e+01 -3.5462249e+03 - -1.0115799e+02 -9.0087607e+01 -3.5462541e+03 - -1.0077704e+02 -8.9390547e+01 -3.5462853e+03 - -1.0026257e+02 -8.8714548e+01 -3.5463183e+03 - -9.9603426e+01 -8.8063748e+01 -3.5463532e+03 - -9.8787666e+01 -8.7442196e+01 -3.5463897e+03 - -9.7802545e+01 -8.6853818e+01 -3.5464276e+03 - -9.6634487e+01 -8.6302380e+01 -3.5464668e+03 - -9.5269092e+01 -8.5791434e+01 -3.5465071e+03 - -9.3691164e+01 -8.5324260e+01 -3.5465482e+03 - -9.1884782e+01 -8.4903790e+01 -3.5465900e+03 - -8.9833416e+01 -8.4532523e+01 -3.5466323e+03 - -8.7520102e+01 -8.4212426e+01 -3.5466747e+03 - -8.4927702e+01 -8.3944826e+01 -3.5467171e+03 - -8.2039243e+01 -8.3730291e+01 -3.5467591e+03 - -7.8838369e+01 -8.3568513e+01 -3.5468005e+03 - -7.5309912e+01 -8.3458189e+01 -3.5468410e+03 - -7.1440580e+01 -8.3396917e+01 -3.5468803e+03 - -6.7219780e+01 -8.3381120e+01 -3.5469180e+03 - -6.2640541e+01 -8.3406003e+01 -3.5469538e+03 - -5.7700523e+01 -8.3465575e+01 -3.5469875e+03 - -5.2403055e+01 -8.3552736e+01 -3.5470187e+03 - -4.6758126e+01 -8.3659455e+01 -3.5470471e+03 - -4.0783241e+01 -8.3777036e+01 -3.5470723e+03 - -3.4504027e+01 -8.3896484e+01 -3.5470942e+03 - -2.7954486e+01 -8.4008949e+01 -3.5471125e+03 - -2.1176789e+01 -8.4106216e+01 -3.5471270e+03 - -1.4220544e+01 -8.4181222e+01 -3.5471374e+03 - -7.1415404e+00 -8.4228521e+01 -3.5471438e+03 - -2.4067136e-09 -8.4244679e+01 -3.5471459e+03 - 7.1415404e+00 -8.4228521e+01 -3.5471438e+03 - 1.4220544e+01 -8.4181222e+01 -3.5471374e+03 - 2.1176789e+01 -8.4106216e+01 -3.5471270e+03 - 2.7954486e+01 -8.4008949e+01 -3.5471125e+03 - 3.4504027e+01 -8.3896484e+01 -3.5470942e+03 - 4.0783241e+01 -8.3777036e+01 -3.5470723e+03 - 4.6758126e+01 -8.3659455e+01 -3.5470471e+03 - 5.2403055e+01 -8.3552736e+01 -3.5470187e+03 - 5.7700523e+01 -8.3465575e+01 -3.5469875e+03 - 6.2640541e+01 -8.3406003e+01 -3.5469538e+03 - 6.7219780e+01 -8.3381120e+01 -3.5469180e+03 - 7.1440580e+01 -8.3396917e+01 -3.5468803e+03 - 7.5309912e+01 -8.3458189e+01 -3.5468410e+03 - 7.8838369e+01 -8.3568513e+01 -3.5468005e+03 - 8.2039243e+01 -8.3730291e+01 -3.5467591e+03 - 8.4927702e+01 -8.3944826e+01 -3.5467171e+03 - 8.7520102e+01 -8.4212426e+01 -3.5466747e+03 - 8.9833416e+01 -8.4532523e+01 -3.5466323e+03 - 9.1884782e+01 -8.4903791e+01 -3.5465900e+03 - 9.3691164e+01 -8.5324260e+01 -3.5465482e+03 - 9.5269092e+01 -8.5791434e+01 -3.5465071e+03 - 9.6634487e+01 -8.6302380e+01 -3.5464668e+03 - 9.7802545e+01 -8.6853818e+01 -3.5464276e+03 - 9.8787666e+01 -8.7442196e+01 -3.5463897e+03 - 9.9603426e+01 -8.8063748e+01 -3.5463532e+03 - 1.0026257e+02 -8.8714548e+01 -3.5463183e+03 - 1.0077704e+02 -8.9390547e+01 -3.5462853e+03 - 1.0115799e+02 -9.0087607e+01 -3.5462541e+03 - 1.0141584e+02 -9.0801520e+01 -3.5462249e+03 - 1.0156032e+02 -9.1528030e+01 -3.5461980e+03 - 1.0160052e+02 -9.2262834e+01 -3.5461732e+03 - 1.0154496e+02 -9.3001596e+01 -3.5461508e+03 - 1.0140158e+02 -9.3739940e+01 -3.5461309e+03 - 1.0117788e+02 -9.4473448e+01 -3.5461135e+03 - 1.0088090e+02 -9.5197655e+01 -3.5460986e+03 - 1.0051727e+02 -9.5908034e+01 -3.5460864e+03 - 1.0009330e+02 -9.6599987e+01 -3.5460768e+03 - 9.9614975e+01 -9.7268824e+01 -3.5460700e+03 - 9.9087994e+01 -9.7909748e+01 -3.5460659e+03 - 9.8517831e+01 -9.8517831e+01 -3.5460645e+03 - 9.7909748e+01 -9.9087994e+01 -3.5460659e+03 - 9.7268824e+01 -9.9614975e+01 -3.5460700e+03 - 9.6599987e+01 -1.0009330e+02 -3.5460768e+03 - 9.5908034e+01 -1.0051727e+02 -3.5460864e+03 - 9.5197655e+01 -1.0088090e+02 -3.5460986e+03 - 9.4473448e+01 -1.0117788e+02 -3.5461135e+03 - 9.3739940e+01 -1.0140158e+02 -3.5461309e+03 - 9.3001596e+01 -1.0154496e+02 -3.5461508e+03 - 9.2262834e+01 -1.0160052e+02 -3.5461732e+03 - 9.1528030e+01 -1.0156032e+02 -3.5461980e+03 - 9.0801520e+01 -1.0141584e+02 -3.5462249e+03 - 9.0087607e+01 -1.0115799e+02 -3.5462541e+03 - 8.9390547e+01 -1.0077704e+02 -3.5462853e+03 - 8.8714548e+01 -1.0026257e+02 -3.5463183e+03 - 8.8063748e+01 -9.9603426e+01 -3.5463532e+03 - 8.7442196e+01 -9.8787666e+01 -3.5463897e+03 - 8.6853818e+01 -9.7802545e+01 -3.5464276e+03 - 8.6302380e+01 -9.6634487e+01 -3.5464668e+03 - 8.5791434e+01 -9.5269092e+01 -3.5465071e+03 - 8.5324260e+01 -9.3691164e+01 -3.5465482e+03 - 8.4903791e+01 -9.1884782e+01 -3.5465900e+03 - 8.4532523e+01 -8.9833416e+01 -3.5466323e+03 - 8.4212426e+01 -8.7520102e+01 -3.5466747e+03 - 8.3944826e+01 -8.4927702e+01 -3.5467171e+03 - 8.3730291e+01 -8.2039243e+01 -3.5467591e+03 - 8.3568513e+01 -7.8838369e+01 -3.5468005e+03 - 8.3458189e+01 -7.5309912e+01 -3.5468410e+03 - 8.3396917e+01 -7.1440580e+01 -3.5468803e+03 - 8.3381120e+01 -6.7219780e+01 -3.5469180e+03 - 8.3406003e+01 -6.2640541e+01 -3.5469538e+03 - 8.3465575e+01 -5.7700523e+01 -3.5469875e+03 - 8.3552736e+01 -5.2403055e+01 -3.5470187e+03 - 8.3659455e+01 -4.6758126e+01 -3.5470471e+03 - 8.3777036e+01 -4.0783241e+01 -3.5470723e+03 - 8.3896484e+01 -3.4504027e+01 -3.5470942e+03 - 8.4008949e+01 -2.7954486e+01 -3.5471125e+03 - 8.4106216e+01 -2.1176789e+01 -3.5471270e+03 - 8.4181222e+01 -1.4220544e+01 -3.5471374e+03 - 8.4228521e+01 -7.1415404e+00 -3.5471438e+03 - 8.4244679e+01 0.0000000e+00 -3.5471459e+03 - 4.2120828e+01 0.0000000e+00 -3.5483869e+03 - 4.2112756e+01 3.5697720e+00 -3.5483864e+03 - 4.2089126e+01 7.1083382e+00 -3.5483848e+03 - 4.2051657e+01 1.0585645e+01 -3.5483822e+03 - 4.2003068e+01 1.3973846e+01 -3.5483786e+03 - 4.1946893e+01 1.7248166e+01 -3.5483740e+03 - 4.1887238e+01 2.0387541e+01 -3.5483686e+03 - 4.1828530e+01 2.3374969e+01 -3.5483622e+03 - 4.1775268e+01 2.6197627e+01 -3.5483552e+03 - 4.1731804e+01 2.8846740e+01 -3.5483474e+03 - 4.1702155e+01 3.1317285e+01 -3.5483389e+03 - 4.1689876e+01 3.3607565e+01 -3.5483300e+03 - 4.1697967e+01 3.5718715e+01 -3.5483205e+03 - 4.1728828e+01 3.7654189e+01 -3.5483107e+03 - 4.1784250e+01 3.9419254e+01 -3.5483006e+03 - 4.1865436e+01 4.1020532e+01 -3.5482902e+03 - 4.1973038e+01 4.2465586e+01 -3.5482797e+03 - 4.2107210e+01 4.3762579e+01 -3.5482691e+03 - 4.2267664e+01 4.4919986e+01 -3.5482585e+03 - 4.2453734e+01 4.5946371e+01 -3.5482479e+03 - 4.2664432e+01 4.6850209e+01 -3.5482375e+03 - 4.2898505e+01 4.7639767e+01 -3.5482272e+03 - 4.3154480e+01 4.8323004e+01 -3.5482171e+03 - 4.3430712e+01 4.8907522e+01 -3.5482073e+03 - 4.3725418e+01 4.9400524e+01 -3.5481978e+03 - 4.4036710e+01 4.9808801e+01 -3.5481887e+03 - 4.4362618e+01 5.0138732e+01 -3.5481800e+03 - 4.4701113e+01 5.0396288e+01 -3.5481717e+03 - 4.5050119e+01 5.0587051e+01 -3.5481639e+03 - 4.5407529e+01 5.0716236e+01 -3.5481566e+03 - 4.5771210e+01 5.0788709e+01 -3.5481498e+03 - 4.6139007e+01 5.0809019e+01 -3.5481436e+03 - 4.6508750e+01 5.0781419e+01 -3.5481380e+03 - 4.6878247e+01 5.0709892e+01 -3.5481330e+03 - 4.7245289e+01 5.0598178e+01 -3.5481287e+03 - 4.7607643e+01 5.0449797e+01 -3.5481250e+03 - 4.7963044e+01 5.0268071e+01 -3.5481219e+03 - 4.8309193e+01 5.0056146e+01 -3.5481195e+03 - 4.8643747e+01 4.9817013e+01 -3.5481178e+03 - 4.8964307e+01 4.9553524e+01 -3.5481168e+03 - 4.9268413e+01 4.9268413e+01 -3.5481164e+03 - 4.9553524e+01 4.8964307e+01 -3.5481168e+03 - 4.9817013e+01 4.8643747e+01 -3.5481178e+03 - 5.0056146e+01 4.8309193e+01 -3.5481195e+03 - 5.0268071e+01 4.7963044e+01 -3.5481219e+03 - 5.0449797e+01 4.7607643e+01 -3.5481250e+03 - 5.0598178e+01 4.7245289e+01 -3.5481287e+03 - 5.0709892e+01 4.6878247e+01 -3.5481330e+03 - 5.0781419e+01 4.6508750e+01 -3.5481380e+03 - 5.0809019e+01 4.6139007e+01 -3.5481436e+03 - 5.0788709e+01 4.5771210e+01 -3.5481498e+03 - 5.0716236e+01 4.5407529e+01 -3.5481566e+03 - 5.0587051e+01 4.5050119e+01 -3.5481639e+03 - 5.0396288e+01 4.4701113e+01 -3.5481717e+03 - 5.0138732e+01 4.4362618e+01 -3.5481800e+03 - 4.9808801e+01 4.4036710e+01 -3.5481887e+03 - 4.9400524e+01 4.3725418e+01 -3.5481978e+03 - 4.8907522e+01 4.3430712e+01 -3.5482073e+03 - 4.8323004e+01 4.3154480e+01 -3.5482171e+03 - 4.7639767e+01 4.2898505e+01 -3.5482272e+03 - 4.6850209e+01 4.2664432e+01 -3.5482375e+03 - 4.5946371e+01 4.2453734e+01 -3.5482479e+03 - 4.4919986e+01 4.2267664e+01 -3.5482585e+03 - 4.3762579e+01 4.2107210e+01 -3.5482691e+03 - 4.2465586e+01 4.1973038e+01 -3.5482797e+03 - 4.1020532e+01 4.1865436e+01 -3.5482902e+03 - 3.9419254e+01 4.1784250e+01 -3.5483006e+03 - 3.7654189e+01 4.1728828e+01 -3.5483107e+03 - 3.5718715e+01 4.1697967e+01 -3.5483205e+03 - 3.3607565e+01 4.1689876e+01 -3.5483300e+03 - 3.1317285e+01 4.1702155e+01 -3.5483389e+03 - 2.8846740e+01 4.1731804e+01 -3.5483474e+03 - 2.6197627e+01 4.1775268e+01 -3.5483552e+03 - 2.3374969e+01 4.1828530e+01 -3.5483622e+03 - 2.0387541e+01 4.1887238e+01 -3.5483686e+03 - 1.7248166e+01 4.1946893e+01 -3.5483740e+03 - 1.3973846e+01 4.2003068e+01 -3.5483786e+03 - 1.0585645e+01 4.2051657e+01 -3.5483822e+03 - 7.1083382e+00 4.2089126e+01 -3.5483848e+03 - 3.5697720e+00 4.2112756e+01 -3.5483864e+03 - 0.0000000e+00 4.2120828e+01 -3.5483869e+03 - -3.5697720e+00 4.2112756e+01 -3.5483864e+03 - -7.1083382e+00 4.2089126e+01 -3.5483848e+03 - -1.0585645e+01 4.2051657e+01 -3.5483822e+03 - -1.3973846e+01 4.2003068e+01 -3.5483786e+03 - -1.7248166e+01 4.1946893e+01 -3.5483740e+03 - -2.0387541e+01 4.1887238e+01 -3.5483686e+03 - -2.3374969e+01 4.1828530e+01 -3.5483622e+03 - -2.6197627e+01 4.1775268e+01 -3.5483552e+03 - -2.8846740e+01 4.1731804e+01 -3.5483474e+03 - -3.1317285e+01 4.1702155e+01 -3.5483389e+03 - -3.3607565e+01 4.1689876e+01 -3.5483300e+03 - -3.5718715e+01 4.1697967e+01 -3.5483205e+03 - -3.7654189e+01 4.1728828e+01 -3.5483107e+03 - -3.9419254e+01 4.1784250e+01 -3.5483006e+03 - -4.1020532e+01 4.1865436e+01 -3.5482902e+03 - -4.2465586e+01 4.1973038e+01 -3.5482797e+03 - -4.3762579e+01 4.2107210e+01 -3.5482691e+03 - -4.4919986e+01 4.2267664e+01 -3.5482585e+03 - -4.5946371e+01 4.2453734e+01 -3.5482479e+03 - -4.6850209e+01 4.2664432e+01 -3.5482375e+03 - -4.7639767e+01 4.2898505e+01 -3.5482272e+03 - -4.8323004e+01 4.3154480e+01 -3.5482171e+03 - -4.8907522e+01 4.3430712e+01 -3.5482073e+03 - -4.9400524e+01 4.3725418e+01 -3.5481978e+03 - -4.9808801e+01 4.4036710e+01 -3.5481887e+03 - -5.0138732e+01 4.4362618e+01 -3.5481800e+03 - -5.0396288e+01 4.4701113e+01 -3.5481717e+03 - -5.0587051e+01 4.5050119e+01 -3.5481639e+03 - -5.0716236e+01 4.5407529e+01 -3.5481566e+03 - -5.0788709e+01 4.5771210e+01 -3.5481498e+03 - -5.0809019e+01 4.6139007e+01 -3.5481436e+03 - -5.0781419e+01 4.6508750e+01 -3.5481380e+03 - -5.0709892e+01 4.6878247e+01 -3.5481330e+03 - -5.0598178e+01 4.7245289e+01 -3.5481287e+03 - -5.0449797e+01 4.7607643e+01 -3.5481250e+03 - -5.0268071e+01 4.7963044e+01 -3.5481219e+03 - -5.0056146e+01 4.8309193e+01 -3.5481195e+03 - -4.9817013e+01 4.8643747e+01 -3.5481178e+03 - -4.9553524e+01 4.8964307e+01 -3.5481168e+03 - -4.9268413e+01 4.9268413e+01 -3.5481164e+03 - -4.8964307e+01 4.9553524e+01 -3.5481168e+03 - -4.8643747e+01 4.9817013e+01 -3.5481178e+03 - -4.8309193e+01 5.0056146e+01 -3.5481195e+03 - -4.7963044e+01 5.0268071e+01 -3.5481219e+03 - -4.7607643e+01 5.0449797e+01 -3.5481250e+03 - -4.7245289e+01 5.0598178e+01 -3.5481287e+03 - -4.6878247e+01 5.0709892e+01 -3.5481330e+03 - -4.6508750e+01 5.0781419e+01 -3.5481380e+03 - -4.6139007e+01 5.0809019e+01 -3.5481436e+03 - -4.5771210e+01 5.0788709e+01 -3.5481498e+03 - -4.5407529e+01 5.0716236e+01 -3.5481566e+03 - -4.5050119e+01 5.0587051e+01 -3.5481639e+03 - -4.4701113e+01 5.0396288e+01 -3.5481717e+03 - -4.4362618e+01 5.0138732e+01 -3.5481800e+03 - -4.4036710e+01 4.9808801e+01 -3.5481887e+03 - -4.3725418e+01 4.9400524e+01 -3.5481978e+03 - -4.3430712e+01 4.8907522e+01 -3.5482073e+03 - -4.3154480e+01 4.8323004e+01 -3.5482171e+03 - -4.2898505e+01 4.7639767e+01 -3.5482272e+03 - -4.2664432e+01 4.6850209e+01 -3.5482375e+03 - -4.2453734e+01 4.5946371e+01 -3.5482479e+03 - -4.2267664e+01 4.4919986e+01 -3.5482585e+03 - -4.2107210e+01 4.3762579e+01 -3.5482691e+03 - -4.1973038e+01 4.2465586e+01 -3.5482797e+03 - -4.1865436e+01 4.1020532e+01 -3.5482902e+03 - -4.1784250e+01 3.9419254e+01 -3.5483006e+03 - -4.1728828e+01 3.7654189e+01 -3.5483107e+03 - -4.1697967e+01 3.5718715e+01 -3.5483205e+03 - -4.1689876e+01 3.3607565e+01 -3.5483300e+03 - -4.1702155e+01 3.1317285e+01 -3.5483389e+03 - -4.1731804e+01 2.8846740e+01 -3.5483474e+03 - -4.1775268e+01 2.6197627e+01 -3.5483552e+03 - -4.1828530e+01 2.3374969e+01 -3.5483622e+03 - -4.1887238e+01 2.0387541e+01 -3.5483686e+03 - -4.1946893e+01 1.7248166e+01 -3.5483740e+03 - -4.2003068e+01 1.3973846e+01 -3.5483786e+03 - -4.2051657e+01 1.0585645e+01 -3.5483822e+03 - -4.2089126e+01 7.1083382e+00 -3.5483848e+03 - -4.2112756e+01 3.5697720e+00 -3.5483864e+03 - -4.2120828e+01 0.0000000e+00 -3.5483869e+03 - -4.2112756e+01 -3.5697720e+00 -3.5483864e+03 - -4.2089126e+01 -7.1083382e+00 -3.5483848e+03 - -4.2051657e+01 -1.0585645e+01 -3.5483822e+03 - -4.2003068e+01 -1.3973846e+01 -3.5483786e+03 - -4.1946893e+01 -1.7248166e+01 -3.5483740e+03 - -4.1887238e+01 -2.0387541e+01 -3.5483686e+03 - -4.1828530e+01 -2.3374969e+01 -3.5483622e+03 - -4.1775268e+01 -2.6197627e+01 -3.5483552e+03 - -4.1731804e+01 -2.8846740e+01 -3.5483474e+03 - -4.1702155e+01 -3.1317285e+01 -3.5483389e+03 - -4.1689876e+01 -3.3607565e+01 -3.5483300e+03 - -4.1697967e+01 -3.5718715e+01 -3.5483205e+03 - -4.1728828e+01 -3.7654189e+01 -3.5483107e+03 - -4.1784250e+01 -3.9419254e+01 -3.5483006e+03 - -4.1865436e+01 -4.1020532e+01 -3.5482902e+03 - -4.1973038e+01 -4.2465586e+01 -3.5482797e+03 - -4.2107210e+01 -4.3762579e+01 -3.5482691e+03 - -4.2267664e+01 -4.4919986e+01 -3.5482585e+03 - -4.2453734e+01 -4.5946371e+01 -3.5482479e+03 - -4.2664432e+01 -4.6850209e+01 -3.5482375e+03 - -4.2898505e+01 -4.7639767e+01 -3.5482272e+03 - -4.3154480e+01 -4.8323004e+01 -3.5482171e+03 - -4.3430712e+01 -4.8907522e+01 -3.5482073e+03 - -4.3725418e+01 -4.9400524e+01 -3.5481978e+03 - -4.4036710e+01 -4.9808801e+01 -3.5481887e+03 - -4.4362618e+01 -5.0138732e+01 -3.5481800e+03 - -4.4701113e+01 -5.0396288e+01 -3.5481717e+03 - -4.5050119e+01 -5.0587051e+01 -3.5481639e+03 - -4.5407529e+01 -5.0716236e+01 -3.5481566e+03 - -4.5771210e+01 -5.0788709e+01 -3.5481498e+03 - -4.6139007e+01 -5.0809019e+01 -3.5481436e+03 - -4.6508750e+01 -5.0781419e+01 -3.5481380e+03 - -4.6878247e+01 -5.0709892e+01 -3.5481330e+03 - -4.7245289e+01 -5.0598178e+01 -3.5481287e+03 - -4.7607643e+01 -5.0449797e+01 -3.5481250e+03 - -4.7963044e+01 -5.0268071e+01 -3.5481219e+03 - -4.8309193e+01 -5.0056146e+01 -3.5481195e+03 - -4.8643747e+01 -4.9817013e+01 -3.5481178e+03 - -4.8964307e+01 -4.9553524e+01 -3.5481168e+03 - -4.9268413e+01 -4.9268413e+01 -3.5481164e+03 - -4.9553524e+01 -4.8964307e+01 -3.5481168e+03 - -4.9817013e+01 -4.8643747e+01 -3.5481178e+03 - -5.0056146e+01 -4.8309193e+01 -3.5481195e+03 - -5.0268071e+01 -4.7963044e+01 -3.5481219e+03 - -5.0449797e+01 -4.7607643e+01 -3.5481250e+03 - -5.0598178e+01 -4.7245289e+01 -3.5481287e+03 - -5.0709892e+01 -4.6878247e+01 -3.5481330e+03 - -5.0781419e+01 -4.6508750e+01 -3.5481380e+03 - -5.0809019e+01 -4.6139007e+01 -3.5481436e+03 - -5.0788709e+01 -4.5771210e+01 -3.5481498e+03 - -5.0716236e+01 -4.5407529e+01 -3.5481566e+03 - -5.0587051e+01 -4.5050119e+01 -3.5481639e+03 - -5.0396288e+01 -4.4701113e+01 -3.5481717e+03 - -5.0138732e+01 -4.4362618e+01 -3.5481800e+03 - -4.9808801e+01 -4.4036710e+01 -3.5481887e+03 - -4.9400524e+01 -4.3725418e+01 -3.5481978e+03 - -4.8907522e+01 -4.3430712e+01 -3.5482073e+03 - -4.8323004e+01 -4.3154480e+01 -3.5482171e+03 - -4.7639767e+01 -4.2898505e+01 -3.5482272e+03 - -4.6850209e+01 -4.2664432e+01 -3.5482375e+03 - -4.5946371e+01 -4.2453734e+01 -3.5482479e+03 - -4.4919986e+01 -4.2267664e+01 -3.5482585e+03 - -4.3762579e+01 -4.2107210e+01 -3.5482691e+03 - -4.2465586e+01 -4.1973038e+01 -3.5482797e+03 - -4.1020532e+01 -4.1865436e+01 -3.5482902e+03 - -3.9419254e+01 -4.1784250e+01 -3.5483006e+03 - -3.7654189e+01 -4.1728828e+01 -3.5483107e+03 - -3.5718715e+01 -4.1697967e+01 -3.5483205e+03 - -3.3607565e+01 -4.1689876e+01 -3.5483300e+03 - -3.1317285e+01 -4.1702155e+01 -3.5483389e+03 - -2.8846740e+01 -4.1731804e+01 -3.5483474e+03 - -2.6197627e+01 -4.1775268e+01 -3.5483552e+03 - -2.3374969e+01 -4.1828530e+01 -3.5483622e+03 - -2.0387541e+01 -4.1887238e+01 -3.5483686e+03 - -1.7248166e+01 -4.1946893e+01 -3.5483740e+03 - -1.3973846e+01 -4.2003068e+01 -3.5483786e+03 - -1.0585645e+01 -4.2051657e+01 -3.5483822e+03 - -7.1083382e+00 -4.2089126e+01 -3.5483848e+03 - -3.5697720e+00 -4.2112756e+01 -3.5483864e+03 - 0.0000000e+00 -4.2120828e+01 -3.5483869e+03 - 3.5697720e+00 -4.2112756e+01 -3.5483864e+03 - 7.1083382e+00 -4.2089126e+01 -3.5483848e+03 - 1.0585645e+01 -4.2051657e+01 -3.5483822e+03 - 1.3973846e+01 -4.2003068e+01 -3.5483786e+03 - 1.7248166e+01 -4.1946893e+01 -3.5483740e+03 - 2.0387541e+01 -4.1887238e+01 -3.5483686e+03 - 2.3374969e+01 -4.1828530e+01 -3.5483622e+03 - 2.6197627e+01 -4.1775268e+01 -3.5483552e+03 - 2.8846740e+01 -4.1731804e+01 -3.5483474e+03 - 3.1317285e+01 -4.1702155e+01 -3.5483389e+03 - 3.3607565e+01 -4.1689876e+01 -3.5483300e+03 - 3.5718715e+01 -4.1697967e+01 -3.5483205e+03 - 3.7654189e+01 -4.1728828e+01 -3.5483107e+03 - 3.9419254e+01 -4.1784250e+01 -3.5483006e+03 - 4.1020532e+01 -4.1865436e+01 -3.5482902e+03 - 4.2465586e+01 -4.1973038e+01 -3.5482797e+03 - 4.3762579e+01 -4.2107210e+01 -3.5482691e+03 - 4.4919986e+01 -4.2267664e+01 -3.5482585e+03 - 4.5946371e+01 -4.2453734e+01 -3.5482479e+03 - 4.6850209e+01 -4.2664432e+01 -3.5482375e+03 - 4.7639767e+01 -4.2898505e+01 -3.5482272e+03 - 4.8323004e+01 -4.3154480e+01 -3.5482171e+03 - 4.8907522e+01 -4.3430712e+01 -3.5482073e+03 - 4.9400524e+01 -4.3725418e+01 -3.5481978e+03 - 4.9808801e+01 -4.4036710e+01 -3.5481887e+03 - 5.0138732e+01 -4.4362618e+01 -3.5481800e+03 - 5.0396288e+01 -4.4701113e+01 -3.5481717e+03 - 5.0587051e+01 -4.5050119e+01 -3.5481639e+03 - 5.0716236e+01 -4.5407529e+01 -3.5481566e+03 - 5.0788709e+01 -4.5771210e+01 -3.5481498e+03 - 5.0809019e+01 -4.6139007e+01 -3.5481436e+03 - 5.0781419e+01 -4.6508750e+01 -3.5481380e+03 - 5.0709892e+01 -4.6878247e+01 -3.5481330e+03 - 5.0598178e+01 -4.7245289e+01 -3.5481287e+03 - 5.0449797e+01 -4.7607643e+01 -3.5481250e+03 - 5.0268071e+01 -4.7963044e+01 -3.5481219e+03 - 5.0056146e+01 -4.8309193e+01 -3.5481195e+03 - 4.9817013e+01 -4.8643747e+01 -3.5481178e+03 - 4.9553524e+01 -4.8964307e+01 -3.5481168e+03 - 4.9268413e+01 -4.9268413e+01 -3.5481164e+03 - 4.8964307e+01 -4.9553524e+01 -3.5481168e+03 - 4.8643747e+01 -4.9817013e+01 -3.5481178e+03 - 4.8309193e+01 -5.0056146e+01 -3.5481195e+03 - 4.7963044e+01 -5.0268071e+01 -3.5481219e+03 - 4.7607643e+01 -5.0449797e+01 -3.5481250e+03 - 4.7245289e+01 -5.0598178e+01 -3.5481287e+03 - 4.6878247e+01 -5.0709892e+01 -3.5481330e+03 - 4.6508750e+01 -5.0781419e+01 -3.5481380e+03 - 4.6139007e+01 -5.0809019e+01 -3.5481436e+03 - 4.5771210e+01 -5.0788709e+01 -3.5481498e+03 - 4.5407529e+01 -5.0716236e+01 -3.5481566e+03 - 4.5050119e+01 -5.0587051e+01 -3.5481639e+03 - 4.4701113e+01 -5.0396288e+01 -3.5481717e+03 - 4.4362618e+01 -5.0138732e+01 -3.5481800e+03 - 4.4036710e+01 -4.9808801e+01 -3.5481887e+03 - 4.3725418e+01 -4.9400524e+01 -3.5481978e+03 - 4.3430712e+01 -4.8907522e+01 -3.5482073e+03 - 4.3154480e+01 -4.8323004e+01 -3.5482171e+03 - 4.2898505e+01 -4.7639767e+01 -3.5482272e+03 - 4.2664432e+01 -4.6850209e+01 -3.5482375e+03 - 4.2453734e+01 -4.5946371e+01 -3.5482479e+03 - 4.2267664e+01 -4.4919986e+01 -3.5482585e+03 - 4.2107210e+01 -4.3762579e+01 -3.5482691e+03 - 4.1973038e+01 -4.2465586e+01 -3.5482797e+03 - 4.1865436e+01 -4.1020532e+01 -3.5482902e+03 - 4.1784250e+01 -3.9419254e+01 -3.5483006e+03 - 4.1728828e+01 -3.7654189e+01 -3.5483107e+03 - 4.1697967e+01 -3.5718715e+01 -3.5483205e+03 - 4.1689876e+01 -3.3607565e+01 -3.5483300e+03 - 4.1702155e+01 -3.1317285e+01 -3.5483389e+03 - 4.1731804e+01 -2.8846740e+01 -3.5483474e+03 - 4.1775268e+01 -2.6197627e+01 -3.5483552e+03 - 4.1828530e+01 -2.3374969e+01 -3.5483622e+03 - 4.1887238e+01 -2.0387541e+01 -3.5483686e+03 - 4.1946893e+01 -1.7248166e+01 -3.5483740e+03 - 4.2003068e+01 -1.3973846e+01 -3.5483786e+03 - 4.2051657e+01 -1.0585645e+01 -3.5483822e+03 - 4.2089126e+01 -7.1083382e+00 -3.5483848e+03 - 4.2112756e+01 -3.5697720e+00 -3.5483864e+03 - 4.2120828e+01 0.0000000e+00 -3.5483869e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - -4.8134273e-09 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 4.8134273e-09 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 2.4067136e-09 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - -2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -2.4067136e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 - 2.4067136e-09 -2.4067136e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 2.4067136e-09 -3.5488005e+03 diff --git a/examples/extended/exoticphysics/phonon/CrystalMaps/Ge/LVec.ssv b/examples/extended/exoticphysics/phonon/CrystalMaps/Ge/LVec.ssv deleted file mode 100644 index 8a122ab523..0000000000 --- a/examples/extended/exoticphysics/phonon/CrystalMaps/Ge/LVec.ssv +++ /dev/null @@ -1,51681 +0,0 @@ - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 0.0000000e+00 0.0000000e+00 4.9242380e+03 - 2.0978506e+02 0.0000000e+00 4.9221799e+03 - 2.0974458e+02 4.1167934e+00 4.9221799e+03 - 2.0962316e+02 8.2320045e+00 4.9221799e+03 - 2.0942085e+02 1.2344052e+01 4.9221799e+03 - 2.0913772e+02 1.6451354e+01 4.9221799e+03 - 2.0877388e+02 2.0552333e+01 4.9221799e+03 - 2.0832949e+02 2.4645413e+01 4.9221799e+03 - 2.0780470e+02 2.8729019e+01 4.9221799e+03 - 2.0719972e+02 3.2801582e+01 4.9221799e+03 - 2.0651480e+02 3.6861537e+01 4.9221800e+03 - 2.0575019e+02 4.0907321e+01 4.9221800e+03 - 2.0490619e+02 4.4937381e+01 4.9221800e+03 - 2.0398313e+02 4.8950165e+01 4.9221800e+03 - 2.0298137e+02 5.2944130e+01 4.9221800e+03 - 2.0190130e+02 5.6917741e+01 4.9221801e+03 - 2.0074334e+02 6.0869469e+01 4.9221801e+03 - 1.9950793e+02 6.4797793e+01 4.9221801e+03 - 1.9819557e+02 6.8701202e+01 4.9221802e+03 - 1.9680675e+02 7.2578194e+01 4.9221802e+03 - 1.9534202e+02 7.6427276e+01 4.9221802e+03 - 1.9380195e+02 8.0246967e+01 4.9221802e+03 - 1.9218713e+02 8.4035796e+01 4.9221803e+03 - 1.9049819e+02 8.7792305e+01 4.9221803e+03 - 1.8873579e+02 9.1515046e+01 4.9221803e+03 - 1.8690061e+02 9.5202585e+01 4.9221804e+03 - 1.8499337e+02 9.8853502e+01 4.9221804e+03 - 1.8301480e+02 1.0246639e+02 4.9221804e+03 - 1.8096567e+02 1.0603986e+02 4.9221804e+03 - 1.7884677e+02 1.0957252e+02 4.9221805e+03 - 1.7665893e+02 1.1306303e+02 4.9221805e+03 - 1.7440300e+02 1.1651002e+02 4.9221805e+03 - 1.7207985e+02 1.1991218e+02 4.9221805e+03 - 1.6969038e+02 1.2326819e+02 4.9221806e+03 - 1.6723551e+02 1.2657676e+02 4.9221806e+03 - 1.6471620e+02 1.2983660e+02 4.9221806e+03 - 1.6213343e+02 1.3304646e+02 4.9221806e+03 - 1.5948818e+02 1.3620510e+02 4.9221806e+03 - 1.5678149e+02 1.3931130e+02 4.9221806e+03 - 1.5401441e+02 1.4236386e+02 4.9221806e+03 - 1.5118800e+02 1.4536160e+02 4.9221806e+03 - 1.4830336e+02 1.4830336e+02 4.9221806e+03 - 1.4536160e+02 1.5118800e+02 4.9221806e+03 - 1.4236386e+02 1.5401441e+02 4.9221806e+03 - 1.3931130e+02 1.5678149e+02 4.9221806e+03 - 1.3620510e+02 1.5948818e+02 4.9221806e+03 - 1.3304646e+02 1.6213343e+02 4.9221806e+03 - 1.2983660e+02 1.6471620e+02 4.9221806e+03 - 1.2657676e+02 1.6723551e+02 4.9221806e+03 - 1.2326819e+02 1.6969038e+02 4.9221806e+03 - 1.1991218e+02 1.7207985e+02 4.9221805e+03 - 1.1651002e+02 1.7440300e+02 4.9221805e+03 - 1.1306303e+02 1.7665893e+02 4.9221805e+03 - 1.0957252e+02 1.7884677e+02 4.9221805e+03 - 1.0603986e+02 1.8096567e+02 4.9221804e+03 - 1.0246639e+02 1.8301480e+02 4.9221804e+03 - 9.8853502e+01 1.8499337e+02 4.9221804e+03 - 9.5202585e+01 1.8690061e+02 4.9221804e+03 - 9.1515046e+01 1.8873579e+02 4.9221803e+03 - 8.7792305e+01 1.9049819e+02 4.9221803e+03 - 8.4035796e+01 1.9218713e+02 4.9221803e+03 - 8.0246967e+01 1.9380195e+02 4.9221802e+03 - 7.6427276e+01 1.9534202e+02 4.9221802e+03 - 7.2578194e+01 1.9680675e+02 4.9221802e+03 - 6.8701202e+01 1.9819557e+02 4.9221802e+03 - 6.4797793e+01 1.9950793e+02 4.9221801e+03 - 6.0869469e+01 2.0074334e+02 4.9221801e+03 - 5.6917741e+01 2.0190130e+02 4.9221801e+03 - 5.2944130e+01 2.0298137e+02 4.9221800e+03 - 4.8950165e+01 2.0398313e+02 4.9221800e+03 - 4.4937381e+01 2.0490619e+02 4.9221800e+03 - 4.0907321e+01 2.0575019e+02 4.9221800e+03 - 3.6861537e+01 2.0651480e+02 4.9221800e+03 - 3.2801582e+01 2.0719972e+02 4.9221799e+03 - 2.8729019e+01 2.0780470e+02 4.9221799e+03 - 2.4645413e+01 2.0832949e+02 4.9221799e+03 - 2.0552333e+01 2.0877388e+02 4.9221799e+03 - 1.6451354e+01 2.0913772e+02 4.9221799e+03 - 1.2344052e+01 2.0942085e+02 4.9221799e+03 - 8.2320045e+00 2.0962316e+02 4.9221799e+03 - 4.1167934e+00 2.0974458e+02 4.9221799e+03 - 0.0000000e+00 2.0978506e+02 4.9221799e+03 - -4.1167934e+00 2.0974458e+02 4.9221799e+03 - -8.2320045e+00 2.0962316e+02 4.9221799e+03 - -1.2344052e+01 2.0942085e+02 4.9221799e+03 - -1.6451354e+01 2.0913772e+02 4.9221799e+03 - -2.0552333e+01 2.0877388e+02 4.9221799e+03 - -2.4645413e+01 2.0832949e+02 4.9221799e+03 - -2.8729019e+01 2.0780470e+02 4.9221799e+03 - -3.2801582e+01 2.0719972e+02 4.9221799e+03 - -3.6861537e+01 2.0651480e+02 4.9221800e+03 - -4.0907321e+01 2.0575019e+02 4.9221800e+03 - -4.4937381e+01 2.0490619e+02 4.9221800e+03 - -4.8950165e+01 2.0398313e+02 4.9221800e+03 - -5.2944130e+01 2.0298137e+02 4.9221800e+03 - -5.6917741e+01 2.0190130e+02 4.9221801e+03 - -6.0869469e+01 2.0074334e+02 4.9221801e+03 - -6.4797793e+01 1.9950793e+02 4.9221801e+03 - -6.8701202e+01 1.9819557e+02 4.9221802e+03 - -7.2578194e+01 1.9680675e+02 4.9221802e+03 - -7.6427276e+01 1.9534202e+02 4.9221802e+03 - -8.0246967e+01 1.9380195e+02 4.9221802e+03 - -8.4035796e+01 1.9218713e+02 4.9221803e+03 - -8.7792305e+01 1.9049819e+02 4.9221803e+03 - -9.1515046e+01 1.8873579e+02 4.9221803e+03 - -9.5202585e+01 1.8690061e+02 4.9221804e+03 - -9.8853502e+01 1.8499337e+02 4.9221804e+03 - -1.0246639e+02 1.8301480e+02 4.9221804e+03 - -1.0603986e+02 1.8096567e+02 4.9221804e+03 - -1.0957252e+02 1.7884677e+02 4.9221805e+03 - -1.1306303e+02 1.7665893e+02 4.9221805e+03 - -1.1651002e+02 1.7440300e+02 4.9221805e+03 - -1.1991218e+02 1.7207985e+02 4.9221805e+03 - -1.2326819e+02 1.6969038e+02 4.9221806e+03 - -1.2657676e+02 1.6723551e+02 4.9221806e+03 - -1.2983660e+02 1.6471620e+02 4.9221806e+03 - -1.3304646e+02 1.6213343e+02 4.9221806e+03 - -1.3620510e+02 1.5948818e+02 4.9221806e+03 - -1.3931130e+02 1.5678149e+02 4.9221806e+03 - -1.4236386e+02 1.5401441e+02 4.9221806e+03 - -1.4536160e+02 1.5118800e+02 4.9221806e+03 - -1.4830336e+02 1.4830336e+02 4.9221806e+03 - -1.5118800e+02 1.4536160e+02 4.9221806e+03 - -1.5401441e+02 1.4236386e+02 4.9221806e+03 - -1.5678149e+02 1.3931130e+02 4.9221806e+03 - -1.5948818e+02 1.3620510e+02 4.9221806e+03 - -1.6213343e+02 1.3304646e+02 4.9221806e+03 - -1.6471620e+02 1.2983660e+02 4.9221806e+03 - -1.6723551e+02 1.2657676e+02 4.9221806e+03 - -1.6969038e+02 1.2326819e+02 4.9221806e+03 - -1.7207985e+02 1.1991218e+02 4.9221805e+03 - -1.7440300e+02 1.1651002e+02 4.9221805e+03 - -1.7665893e+02 1.1306303e+02 4.9221805e+03 - -1.7884677e+02 1.0957252e+02 4.9221805e+03 - -1.8096567e+02 1.0603986e+02 4.9221804e+03 - -1.8301480e+02 1.0246639e+02 4.9221804e+03 - -1.8499337e+02 9.8853502e+01 4.9221804e+03 - -1.8690061e+02 9.5202585e+01 4.9221804e+03 - -1.8873579e+02 9.1515046e+01 4.9221803e+03 - -1.9049819e+02 8.7792305e+01 4.9221803e+03 - -1.9218713e+02 8.4035796e+01 4.9221803e+03 - -1.9380195e+02 8.0246967e+01 4.9221802e+03 - -1.9534202e+02 7.6427276e+01 4.9221802e+03 - -1.9680675e+02 7.2578194e+01 4.9221802e+03 - -1.9819557e+02 6.8701202e+01 4.9221802e+03 - -1.9950793e+02 6.4797793e+01 4.9221801e+03 - -2.0074334e+02 6.0869469e+01 4.9221801e+03 - -2.0190130e+02 5.6917741e+01 4.9221801e+03 - -2.0298137e+02 5.2944130e+01 4.9221800e+03 - -2.0398313e+02 4.8950165e+01 4.9221800e+03 - -2.0490619e+02 4.4937381e+01 4.9221800e+03 - -2.0575019e+02 4.0907321e+01 4.9221800e+03 - -2.0651480e+02 3.6861537e+01 4.9221800e+03 - -2.0719972e+02 3.2801582e+01 4.9221799e+03 - -2.0780470e+02 2.8729019e+01 4.9221799e+03 - -2.0832949e+02 2.4645413e+01 4.9221799e+03 - -2.0877388e+02 2.0552333e+01 4.9221799e+03 - -2.0913772e+02 1.6451354e+01 4.9221799e+03 - -2.0942085e+02 1.2344052e+01 4.9221799e+03 - -2.0962316e+02 8.2320045e+00 4.9221799e+03 - -2.0974458e+02 4.1167934e+00 4.9221799e+03 - -2.0978506e+02 0.0000000e+00 4.9221799e+03 - -2.0974458e+02 -4.1167934e+00 4.9221799e+03 - -2.0962316e+02 -8.2320045e+00 4.9221799e+03 - -2.0942085e+02 -1.2344052e+01 4.9221799e+03 - -2.0913772e+02 -1.6451354e+01 4.9221799e+03 - -2.0877388e+02 -2.0552333e+01 4.9221799e+03 - -2.0832949e+02 -2.4645413e+01 4.9221799e+03 - -2.0780470e+02 -2.8729019e+01 4.9221799e+03 - -2.0719972e+02 -3.2801582e+01 4.9221799e+03 - -2.0651480e+02 -3.6861537e+01 4.9221800e+03 - -2.0575019e+02 -4.0907321e+01 4.9221800e+03 - -2.0490619e+02 -4.4937381e+01 4.9221800e+03 - -2.0398313e+02 -4.8950165e+01 4.9221800e+03 - -2.0298137e+02 -5.2944130e+01 4.9221800e+03 - -2.0190130e+02 -5.6917741e+01 4.9221801e+03 - -2.0074334e+02 -6.0869469e+01 4.9221801e+03 - -1.9950793e+02 -6.4797793e+01 4.9221801e+03 - -1.9819557e+02 -6.8701202e+01 4.9221802e+03 - -1.9680675e+02 -7.2578194e+01 4.9221802e+03 - -1.9534202e+02 -7.6427276e+01 4.9221802e+03 - -1.9380195e+02 -8.0246967e+01 4.9221802e+03 - -1.9218713e+02 -8.4035796e+01 4.9221803e+03 - -1.9049819e+02 -8.7792305e+01 4.9221803e+03 - -1.8873579e+02 -9.1515046e+01 4.9221803e+03 - -1.8690061e+02 -9.5202585e+01 4.9221804e+03 - -1.8499337e+02 -9.8853502e+01 4.9221804e+03 - -1.8301480e+02 -1.0246639e+02 4.9221804e+03 - -1.8096567e+02 -1.0603986e+02 4.9221804e+03 - -1.7884677e+02 -1.0957252e+02 4.9221805e+03 - -1.7665893e+02 -1.1306303e+02 4.9221805e+03 - -1.7440300e+02 -1.1651002e+02 4.9221805e+03 - -1.7207985e+02 -1.1991218e+02 4.9221805e+03 - -1.6969038e+02 -1.2326819e+02 4.9221806e+03 - -1.6723551e+02 -1.2657676e+02 4.9221806e+03 - -1.6471620e+02 -1.2983660e+02 4.9221806e+03 - -1.6213343e+02 -1.3304646e+02 4.9221806e+03 - -1.5948818e+02 -1.3620510e+02 4.9221806e+03 - -1.5678149e+02 -1.3931130e+02 4.9221806e+03 - -1.5401441e+02 -1.4236386e+02 4.9221806e+03 - -1.5118800e+02 -1.4536160e+02 4.9221806e+03 - -1.4830336e+02 -1.4830336e+02 4.9221806e+03 - -1.4536160e+02 -1.5118800e+02 4.9221806e+03 - -1.4236386e+02 -1.5401441e+02 4.9221806e+03 - -1.3931130e+02 -1.5678149e+02 4.9221806e+03 - -1.3620510e+02 -1.5948818e+02 4.9221806e+03 - -1.3304646e+02 -1.6213343e+02 4.9221806e+03 - -1.2983660e+02 -1.6471620e+02 4.9221806e+03 - -1.2657676e+02 -1.6723551e+02 4.9221806e+03 - -1.2326819e+02 -1.6969038e+02 4.9221806e+03 - -1.1991218e+02 -1.7207985e+02 4.9221805e+03 - -1.1651002e+02 -1.7440300e+02 4.9221805e+03 - -1.1306303e+02 -1.7665893e+02 4.9221805e+03 - -1.0957252e+02 -1.7884677e+02 4.9221805e+03 - -1.0603986e+02 -1.8096567e+02 4.9221804e+03 - -1.0246639e+02 -1.8301480e+02 4.9221804e+03 - -9.8853502e+01 -1.8499337e+02 4.9221804e+03 - -9.5202585e+01 -1.8690061e+02 4.9221804e+03 - -9.1515046e+01 -1.8873579e+02 4.9221803e+03 - -8.7792305e+01 -1.9049819e+02 4.9221803e+03 - -8.4035796e+01 -1.9218713e+02 4.9221803e+03 - -8.0246967e+01 -1.9380195e+02 4.9221802e+03 - -7.6427276e+01 -1.9534202e+02 4.9221802e+03 - -7.2578194e+01 -1.9680675e+02 4.9221802e+03 - -6.8701202e+01 -1.9819557e+02 4.9221802e+03 - -6.4797793e+01 -1.9950793e+02 4.9221801e+03 - -6.0869469e+01 -2.0074334e+02 4.9221801e+03 - -5.6917741e+01 -2.0190130e+02 4.9221801e+03 - -5.2944130e+01 -2.0298137e+02 4.9221800e+03 - -4.8950165e+01 -2.0398313e+02 4.9221800e+03 - -4.4937381e+01 -2.0490619e+02 4.9221800e+03 - -4.0907321e+01 -2.0575019e+02 4.9221800e+03 - -3.6861537e+01 -2.0651480e+02 4.9221800e+03 - -3.2801582e+01 -2.0719972e+02 4.9221799e+03 - -2.8729019e+01 -2.0780470e+02 4.9221799e+03 - -2.4645413e+01 -2.0832949e+02 4.9221799e+03 - -2.0552333e+01 -2.0877388e+02 4.9221799e+03 - -1.6451354e+01 -2.0913772e+02 4.9221799e+03 - -1.2344052e+01 -2.0942085e+02 4.9221799e+03 - -8.2320045e+00 -2.0962316e+02 4.9221799e+03 - -4.1167934e+00 -2.0974458e+02 4.9221799e+03 - 0.0000000e+00 -2.0978506e+02 4.9221799e+03 - 4.1167934e+00 -2.0974458e+02 4.9221799e+03 - 8.2320045e+00 -2.0962316e+02 4.9221799e+03 - 1.2344052e+01 -2.0942085e+02 4.9221799e+03 - 1.6451354e+01 -2.0913772e+02 4.9221799e+03 - 2.0552333e+01 -2.0877388e+02 4.9221799e+03 - 2.4645413e+01 -2.0832949e+02 4.9221799e+03 - 2.8729019e+01 -2.0780470e+02 4.9221799e+03 - 3.2801582e+01 -2.0719972e+02 4.9221799e+03 - 3.6861537e+01 -2.0651480e+02 4.9221800e+03 - 4.0907321e+01 -2.0575019e+02 4.9221800e+03 - 4.4937381e+01 -2.0490619e+02 4.9221800e+03 - 4.8950165e+01 -2.0398313e+02 4.9221800e+03 - 5.2944130e+01 -2.0298137e+02 4.9221800e+03 - 5.6917741e+01 -2.0190130e+02 4.9221801e+03 - 6.0869469e+01 -2.0074334e+02 4.9221801e+03 - 6.4797793e+01 -1.9950793e+02 4.9221801e+03 - 6.8701202e+01 -1.9819557e+02 4.9221802e+03 - 7.2578194e+01 -1.9680675e+02 4.9221802e+03 - 7.6427276e+01 -1.9534202e+02 4.9221802e+03 - 8.0246967e+01 -1.9380195e+02 4.9221802e+03 - 8.4035796e+01 -1.9218713e+02 4.9221803e+03 - 8.7792305e+01 -1.9049819e+02 4.9221803e+03 - 9.1515046e+01 -1.8873579e+02 4.9221803e+03 - 9.5202585e+01 -1.8690061e+02 4.9221804e+03 - 9.8853502e+01 -1.8499337e+02 4.9221804e+03 - 1.0246639e+02 -1.8301480e+02 4.9221804e+03 - 1.0603986e+02 -1.8096567e+02 4.9221804e+03 - 1.0957252e+02 -1.7884677e+02 4.9221805e+03 - 1.1306303e+02 -1.7665893e+02 4.9221805e+03 - 1.1651002e+02 -1.7440300e+02 4.9221805e+03 - 1.1991218e+02 -1.7207985e+02 4.9221805e+03 - 1.2326819e+02 -1.6969038e+02 4.9221806e+03 - 1.2657676e+02 -1.6723551e+02 4.9221806e+03 - 1.2983660e+02 -1.6471620e+02 4.9221806e+03 - 1.3304646e+02 -1.6213343e+02 4.9221806e+03 - 1.3620510e+02 -1.5948818e+02 4.9221806e+03 - 1.3931130e+02 -1.5678149e+02 4.9221806e+03 - 1.4236386e+02 -1.5401441e+02 4.9221806e+03 - 1.4536160e+02 -1.5118800e+02 4.9221806e+03 - 1.4830336e+02 -1.4830336e+02 4.9221806e+03 - 1.5118800e+02 -1.4536160e+02 4.9221806e+03 - 1.5401441e+02 -1.4236386e+02 4.9221806e+03 - 1.5678149e+02 -1.3931130e+02 4.9221806e+03 - 1.5948818e+02 -1.3620510e+02 4.9221806e+03 - 1.6213343e+02 -1.3304646e+02 4.9221806e+03 - 1.6471620e+02 -1.2983660e+02 4.9221806e+03 - 1.6723551e+02 -1.2657676e+02 4.9221806e+03 - 1.6969038e+02 -1.2326819e+02 4.9221806e+03 - 1.7207985e+02 -1.1991218e+02 4.9221805e+03 - 1.7440300e+02 -1.1651002e+02 4.9221805e+03 - 1.7665893e+02 -1.1306303e+02 4.9221805e+03 - 1.7884677e+02 -1.0957252e+02 4.9221805e+03 - 1.8096567e+02 -1.0603986e+02 4.9221804e+03 - 1.8301480e+02 -1.0246639e+02 4.9221804e+03 - 1.8499337e+02 -9.8853502e+01 4.9221804e+03 - 1.8690061e+02 -9.5202585e+01 4.9221804e+03 - 1.8873579e+02 -9.1515046e+01 4.9221803e+03 - 1.9049819e+02 -8.7792305e+01 4.9221803e+03 - 1.9218713e+02 -8.4035796e+01 4.9221803e+03 - 1.9380195e+02 -8.0246967e+01 4.9221802e+03 - 1.9534202e+02 -7.6427276e+01 4.9221802e+03 - 1.9680675e+02 -7.2578194e+01 4.9221802e+03 - 1.9819557e+02 -6.8701202e+01 4.9221802e+03 - 1.9950793e+02 -6.4797793e+01 4.9221801e+03 - 2.0074334e+02 -6.0869469e+01 4.9221801e+03 - 2.0190130e+02 -5.6917741e+01 4.9221801e+03 - 2.0298137e+02 -5.2944130e+01 4.9221800e+03 - 2.0398313e+02 -4.8950165e+01 4.9221800e+03 - 2.0490619e+02 -4.4937381e+01 4.9221800e+03 - 2.0575019e+02 -4.0907321e+01 4.9221800e+03 - 2.0651480e+02 -3.6861537e+01 4.9221800e+03 - 2.0719972e+02 -3.2801582e+01 4.9221799e+03 - 2.0780470e+02 -2.8729019e+01 4.9221799e+03 - 2.0832949e+02 -2.4645413e+01 4.9221799e+03 - 2.0877388e+02 -2.0552333e+01 4.9221799e+03 - 2.0913772e+02 -1.6451354e+01 4.9221799e+03 - 2.0942085e+02 -1.2344052e+01 4.9221799e+03 - 2.0962316e+02 -8.2320045e+00 4.9221799e+03 - 2.0974458e+02 -4.1167934e+00 4.9221799e+03 - 2.0978506e+02 0.0000000e+00 4.9221799e+03 - 4.1774090e+02 0.0000000e+00 4.9160575e+03 - 4.1766006e+02 8.1854518e+00 4.9160576e+03 - 4.1741757e+02 1.6367786e+01 4.9160576e+03 - 4.1701353e+02 2.4543887e+01 4.9160577e+03 - 4.1644810e+02 3.2710640e+01 4.9160578e+03 - 4.1572151e+02 4.0864935e+01 4.9160580e+03 - 4.1483404e+02 4.9003663e+01 4.9160582e+03 - 4.1378605e+02 5.7123726e+01 4.9160584e+03 - 4.1257795e+02 6.5222026e+01 4.9160587e+03 - 4.1121024e+02 7.3295477e+01 4.9160590e+03 - 4.0968344e+02 8.1341000e+01 4.9160593e+03 - 4.0799818e+02 8.9355525e+01 4.9160597e+03 - 4.0615512e+02 9.7335994e+01 4.9160601e+03 - 4.0415500e+02 1.0527936e+02 4.9160604e+03 - 4.0199861e+02 1.1318259e+02 4.9160609e+03 - 3.9968680e+02 1.2104266e+02 4.9160613e+03 - 3.9722050e+02 1.2885657e+02 4.9160617e+03 - 3.9460070e+02 1.3662132e+02 4.9160622e+03 - 3.9182842e+02 1.4433395e+02 4.9160627e+03 - 3.8890476e+02 1.5199150e+02 4.9160631e+03 - 3.8583090e+02 1.5959104e+02 4.9160636e+03 - 3.8260805e+02 1.6712965e+02 4.9160641e+03 - 3.7923748e+02 1.7460443e+02 4.9160646e+03 - 3.7572053e+02 1.8201253e+02 4.9160650e+03 - 3.7205859e+02 1.8935109e+02 4.9160655e+03 - 3.6825311e+02 1.9661728e+02 4.9160660e+03 - 3.6430559e+02 2.0380831e+02 4.9160664e+03 - 3.6021760e+02 2.1092142e+02 4.9160668e+03 - 3.5599074e+02 2.1795386e+02 4.9160672e+03 - 3.5162668e+02 2.2490290e+02 4.9160676e+03 - 3.4712715e+02 2.3176589e+02 4.9160679e+03 - 3.4249391e+02 2.3854014e+02 4.9160682e+03 - 3.3772879e+02 2.4522306e+02 4.9160685e+03 - 3.3283366e+02 2.5181205e+02 4.9160688e+03 - 3.2781044e+02 2.5830455e+02 4.9160690e+03 - 3.2266111e+02 2.6469806e+02 4.9160692e+03 - 3.1738768e+02 2.7099008e+02 4.9160694e+03 - 3.1199222e+02 2.7717817e+02 4.9160695e+03 - 3.0647684e+02 2.8325992e+02 4.9160696e+03 - 3.0084369e+02 2.8923297e+02 4.9160697e+03 - 2.9509499e+02 2.9509499e+02 4.9160697e+03 - 2.8923297e+02 3.0084369e+02 4.9160697e+03 - 2.8325992e+02 3.0647684e+02 4.9160696e+03 - 2.7717817e+02 3.1199222e+02 4.9160695e+03 - 2.7099008e+02 3.1738768e+02 4.9160694e+03 - 2.6469806e+02 3.2266111e+02 4.9160692e+03 - 2.5830455e+02 3.2781044e+02 4.9160690e+03 - 2.5181205e+02 3.3283366e+02 4.9160688e+03 - 2.4522306e+02 3.3772879e+02 4.9160685e+03 - 2.3854014e+02 3.4249391e+02 4.9160682e+03 - 2.3176589e+02 3.4712715e+02 4.9160679e+03 - 2.2490290e+02 3.5162668e+02 4.9160676e+03 - 2.1795386e+02 3.5599074e+02 4.9160672e+03 - 2.1092142e+02 3.6021760e+02 4.9160668e+03 - 2.0380831e+02 3.6430559e+02 4.9160664e+03 - 1.9661728e+02 3.6825311e+02 4.9160660e+03 - 1.8935109e+02 3.7205859e+02 4.9160655e+03 - 1.8201253e+02 3.7572053e+02 4.9160650e+03 - 1.7460443e+02 3.7923748e+02 4.9160646e+03 - 1.6712965e+02 3.8260805e+02 4.9160641e+03 - 1.5959104e+02 3.8583090e+02 4.9160636e+03 - 1.5199150e+02 3.8890476e+02 4.9160631e+03 - 1.4433395e+02 3.9182842e+02 4.9160627e+03 - 1.3662132e+02 3.9460070e+02 4.9160622e+03 - 1.2885657e+02 3.9722050e+02 4.9160617e+03 - 1.2104266e+02 3.9968680e+02 4.9160613e+03 - 1.1318259e+02 4.0199861e+02 4.9160609e+03 - 1.0527936e+02 4.0415500e+02 4.9160604e+03 - 9.7335994e+01 4.0615512e+02 4.9160601e+03 - 8.9355525e+01 4.0799818e+02 4.9160597e+03 - 8.1341000e+01 4.0968344e+02 4.9160593e+03 - 7.3295477e+01 4.1121024e+02 4.9160590e+03 - 6.5222026e+01 4.1257795e+02 4.9160587e+03 - 5.7123726e+01 4.1378605e+02 4.9160584e+03 - 4.9003663e+01 4.1483404e+02 4.9160582e+03 - 4.0864935e+01 4.1572151e+02 4.9160580e+03 - 3.2710640e+01 4.1644810e+02 4.9160578e+03 - 2.4543887e+01 4.1701353e+02 4.9160577e+03 - 1.6367786e+01 4.1741757e+02 4.9160576e+03 - 8.1854518e+00 4.1766006e+02 4.9160576e+03 - 0.0000000e+00 4.1774090e+02 4.9160575e+03 - -8.1854518e+00 4.1766006e+02 4.9160576e+03 - -1.6367786e+01 4.1741757e+02 4.9160576e+03 - -2.4543887e+01 4.1701353e+02 4.9160577e+03 - -3.2710640e+01 4.1644810e+02 4.9160578e+03 - -4.0864935e+01 4.1572151e+02 4.9160580e+03 - -4.9003663e+01 4.1483404e+02 4.9160582e+03 - -5.7123726e+01 4.1378605e+02 4.9160584e+03 - -6.5222026e+01 4.1257795e+02 4.9160587e+03 - -7.3295477e+01 4.1121024e+02 4.9160590e+03 - -8.1341000e+01 4.0968344e+02 4.9160593e+03 - -8.9355525e+01 4.0799818e+02 4.9160597e+03 - -9.7335994e+01 4.0615512e+02 4.9160601e+03 - -1.0527936e+02 4.0415500e+02 4.9160604e+03 - -1.1318259e+02 4.0199861e+02 4.9160609e+03 - -1.2104266e+02 3.9968680e+02 4.9160613e+03 - -1.2885657e+02 3.9722050e+02 4.9160617e+03 - -1.3662132e+02 3.9460070e+02 4.9160622e+03 - -1.4433395e+02 3.9182842e+02 4.9160627e+03 - -1.5199150e+02 3.8890476e+02 4.9160631e+03 - -1.5959104e+02 3.8583090e+02 4.9160636e+03 - -1.6712965e+02 3.8260805e+02 4.9160641e+03 - -1.7460443e+02 3.7923748e+02 4.9160646e+03 - -1.8201253e+02 3.7572053e+02 4.9160650e+03 - -1.8935109e+02 3.7205859e+02 4.9160655e+03 - -1.9661728e+02 3.6825311e+02 4.9160660e+03 - -2.0380831e+02 3.6430559e+02 4.9160664e+03 - -2.1092142e+02 3.6021760e+02 4.9160668e+03 - -2.1795386e+02 3.5599074e+02 4.9160672e+03 - -2.2490290e+02 3.5162668e+02 4.9160676e+03 - -2.3176589e+02 3.4712715e+02 4.9160679e+03 - -2.3854014e+02 3.4249391e+02 4.9160682e+03 - -2.4522306e+02 3.3772879e+02 4.9160685e+03 - -2.5181205e+02 3.3283366e+02 4.9160688e+03 - -2.5830455e+02 3.2781044e+02 4.9160690e+03 - -2.6469806e+02 3.2266111e+02 4.9160692e+03 - -2.7099008e+02 3.1738768e+02 4.9160694e+03 - -2.7717817e+02 3.1199222e+02 4.9160695e+03 - -2.8325992e+02 3.0647684e+02 4.9160696e+03 - -2.8923297e+02 3.0084369e+02 4.9160697e+03 - -2.9509499e+02 2.9509499e+02 4.9160697e+03 - -3.0084369e+02 2.8923297e+02 4.9160697e+03 - -3.0647684e+02 2.8325992e+02 4.9160696e+03 - -3.1199222e+02 2.7717817e+02 4.9160695e+03 - -3.1738768e+02 2.7099008e+02 4.9160694e+03 - -3.2266111e+02 2.6469806e+02 4.9160692e+03 - -3.2781044e+02 2.5830455e+02 4.9160690e+03 - -3.3283366e+02 2.5181205e+02 4.9160688e+03 - -3.3772879e+02 2.4522306e+02 4.9160685e+03 - -3.4249391e+02 2.3854014e+02 4.9160682e+03 - -3.4712715e+02 2.3176589e+02 4.9160679e+03 - -3.5162668e+02 2.2490290e+02 4.9160676e+03 - -3.5599074e+02 2.1795386e+02 4.9160672e+03 - -3.6021760e+02 2.1092142e+02 4.9160668e+03 - -3.6430559e+02 2.0380831e+02 4.9160664e+03 - -3.6825311e+02 1.9661728e+02 4.9160660e+03 - -3.7205859e+02 1.8935109e+02 4.9160655e+03 - -3.7572053e+02 1.8201253e+02 4.9160650e+03 - -3.7923748e+02 1.7460443e+02 4.9160646e+03 - -3.8260805e+02 1.6712965e+02 4.9160641e+03 - -3.8583090e+02 1.5959104e+02 4.9160636e+03 - -3.8890476e+02 1.5199150e+02 4.9160631e+03 - -3.9182842e+02 1.4433395e+02 4.9160627e+03 - -3.9460070e+02 1.3662132e+02 4.9160622e+03 - -3.9722050e+02 1.2885657e+02 4.9160617e+03 - -3.9968680e+02 1.2104266e+02 4.9160613e+03 - -4.0199861e+02 1.1318259e+02 4.9160609e+03 - -4.0415500e+02 1.0527936e+02 4.9160604e+03 - -4.0615512e+02 9.7335994e+01 4.9160601e+03 - -4.0799818e+02 8.9355525e+01 4.9160597e+03 - -4.0968344e+02 8.1341000e+01 4.9160593e+03 - -4.1121024e+02 7.3295477e+01 4.9160590e+03 - -4.1257795e+02 6.5222026e+01 4.9160587e+03 - -4.1378605e+02 5.7123726e+01 4.9160584e+03 - -4.1483404e+02 4.9003663e+01 4.9160582e+03 - -4.1572151e+02 4.0864935e+01 4.9160580e+03 - -4.1644810e+02 3.2710640e+01 4.9160578e+03 - -4.1701353e+02 2.4543887e+01 4.9160577e+03 - -4.1741757e+02 1.6367786e+01 4.9160576e+03 - -4.1766006e+02 8.1854518e+00 4.9160576e+03 - -4.1774090e+02 0.0000000e+00 4.9160575e+03 - -4.1766006e+02 -8.1854518e+00 4.9160576e+03 - -4.1741757e+02 -1.6367786e+01 4.9160576e+03 - -4.1701353e+02 -2.4543887e+01 4.9160577e+03 - -4.1644810e+02 -3.2710640e+01 4.9160578e+03 - -4.1572151e+02 -4.0864935e+01 4.9160580e+03 - -4.1483404e+02 -4.9003663e+01 4.9160582e+03 - -4.1378605e+02 -5.7123726e+01 4.9160584e+03 - -4.1257795e+02 -6.5222026e+01 4.9160587e+03 - -4.1121024e+02 -7.3295477e+01 4.9160590e+03 - -4.0968344e+02 -8.1341000e+01 4.9160593e+03 - -4.0799818e+02 -8.9355525e+01 4.9160597e+03 - -4.0615512e+02 -9.7335994e+01 4.9160601e+03 - -4.0415500e+02 -1.0527936e+02 4.9160604e+03 - -4.0199861e+02 -1.1318259e+02 4.9160609e+03 - -3.9968680e+02 -1.2104266e+02 4.9160613e+03 - -3.9722050e+02 -1.2885657e+02 4.9160617e+03 - -3.9460070e+02 -1.3662132e+02 4.9160622e+03 - -3.9182842e+02 -1.4433395e+02 4.9160627e+03 - -3.8890476e+02 -1.5199150e+02 4.9160631e+03 - -3.8583090e+02 -1.5959104e+02 4.9160636e+03 - -3.8260805e+02 -1.6712965e+02 4.9160641e+03 - -3.7923748e+02 -1.7460443e+02 4.9160646e+03 - -3.7572053e+02 -1.8201253e+02 4.9160650e+03 - -3.7205859e+02 -1.8935109e+02 4.9160655e+03 - -3.6825311e+02 -1.9661728e+02 4.9160660e+03 - -3.6430559e+02 -2.0380831e+02 4.9160664e+03 - -3.6021760e+02 -2.1092142e+02 4.9160668e+03 - -3.5599074e+02 -2.1795386e+02 4.9160672e+03 - -3.5162668e+02 -2.2490290e+02 4.9160676e+03 - -3.4712715e+02 -2.3176589e+02 4.9160679e+03 - -3.4249391e+02 -2.3854014e+02 4.9160682e+03 - -3.3772879e+02 -2.4522306e+02 4.9160685e+03 - -3.3283366e+02 -2.5181205e+02 4.9160688e+03 - -3.2781044e+02 -2.5830455e+02 4.9160690e+03 - -3.2266111e+02 -2.6469806e+02 4.9160692e+03 - -3.1738768e+02 -2.7099008e+02 4.9160694e+03 - -3.1199222e+02 -2.7717817e+02 4.9160695e+03 - -3.0647684e+02 -2.8325992e+02 4.9160696e+03 - -3.0084369e+02 -2.8923297e+02 4.9160697e+03 - -2.9509499e+02 -2.9509499e+02 4.9160697e+03 - -2.8923297e+02 -3.0084369e+02 4.9160697e+03 - -2.8325992e+02 -3.0647684e+02 4.9160696e+03 - -2.7717817e+02 -3.1199222e+02 4.9160695e+03 - -2.7099008e+02 -3.1738768e+02 4.9160694e+03 - -2.6469806e+02 -3.2266111e+02 4.9160692e+03 - -2.5830455e+02 -3.2781044e+02 4.9160690e+03 - -2.5181205e+02 -3.3283366e+02 4.9160688e+03 - -2.4522306e+02 -3.3772879e+02 4.9160685e+03 - -2.3854014e+02 -3.4249391e+02 4.9160682e+03 - -2.3176589e+02 -3.4712715e+02 4.9160679e+03 - -2.2490290e+02 -3.5162668e+02 4.9160676e+03 - -2.1795386e+02 -3.5599074e+02 4.9160672e+03 - -2.1092142e+02 -3.6021760e+02 4.9160668e+03 - -2.0380831e+02 -3.6430559e+02 4.9160664e+03 - -1.9661728e+02 -3.6825311e+02 4.9160660e+03 - -1.8935109e+02 -3.7205859e+02 4.9160655e+03 - -1.8201253e+02 -3.7572053e+02 4.9160650e+03 - -1.7460443e+02 -3.7923748e+02 4.9160646e+03 - -1.6712965e+02 -3.8260805e+02 4.9160641e+03 - -1.5959104e+02 -3.8583090e+02 4.9160636e+03 - -1.5199150e+02 -3.8890476e+02 4.9160631e+03 - -1.4433395e+02 -3.9182842e+02 4.9160627e+03 - -1.3662132e+02 -3.9460070e+02 4.9160622e+03 - -1.2885657e+02 -3.9722050e+02 4.9160617e+03 - -1.2104266e+02 -3.9968680e+02 4.9160613e+03 - -1.1318259e+02 -4.0199861e+02 4.9160609e+03 - -1.0527936e+02 -4.0415500e+02 4.9160604e+03 - -9.7335994e+01 -4.0615512e+02 4.9160601e+03 - -8.9355525e+01 -4.0799818e+02 4.9160597e+03 - -8.1341000e+01 -4.0968344e+02 4.9160593e+03 - -7.3295477e+01 -4.1121024e+02 4.9160590e+03 - -6.5222026e+01 -4.1257795e+02 4.9160587e+03 - -5.7123726e+01 -4.1378605e+02 4.9160584e+03 - -4.9003663e+01 -4.1483404e+02 4.9160582e+03 - -4.0864935e+01 -4.1572151e+02 4.9160580e+03 - -3.2710640e+01 -4.1644810e+02 4.9160578e+03 - -2.4543887e+01 -4.1701353e+02 4.9160577e+03 - -1.6367786e+01 -4.1741757e+02 4.9160576e+03 - -8.1854518e+00 -4.1766006e+02 4.9160576e+03 - 0.0000000e+00 -4.1774090e+02 4.9160575e+03 - 8.1854518e+00 -4.1766006e+02 4.9160576e+03 - 1.6367786e+01 -4.1741757e+02 4.9160576e+03 - 2.4543887e+01 -4.1701353e+02 4.9160577e+03 - 3.2710640e+01 -4.1644810e+02 4.9160578e+03 - 4.0864935e+01 -4.1572151e+02 4.9160580e+03 - 4.9003663e+01 -4.1483404e+02 4.9160582e+03 - 5.7123726e+01 -4.1378605e+02 4.9160584e+03 - 6.5222026e+01 -4.1257795e+02 4.9160587e+03 - 7.3295477e+01 -4.1121024e+02 4.9160590e+03 - 8.1341000e+01 -4.0968344e+02 4.9160593e+03 - 8.9355525e+01 -4.0799818e+02 4.9160597e+03 - 9.7335994e+01 -4.0615512e+02 4.9160601e+03 - 1.0527936e+02 -4.0415500e+02 4.9160604e+03 - 1.1318259e+02 -4.0199861e+02 4.9160609e+03 - 1.2104266e+02 -3.9968680e+02 4.9160613e+03 - 1.2885657e+02 -3.9722050e+02 4.9160617e+03 - 1.3662132e+02 -3.9460070e+02 4.9160622e+03 - 1.4433395e+02 -3.9182842e+02 4.9160627e+03 - 1.5199150e+02 -3.8890476e+02 4.9160631e+03 - 1.5959104e+02 -3.8583090e+02 4.9160636e+03 - 1.6712965e+02 -3.8260805e+02 4.9160641e+03 - 1.7460443e+02 -3.7923748e+02 4.9160646e+03 - 1.8201253e+02 -3.7572053e+02 4.9160650e+03 - 1.8935109e+02 -3.7205859e+02 4.9160655e+03 - 1.9661728e+02 -3.6825311e+02 4.9160660e+03 - 2.0380831e+02 -3.6430559e+02 4.9160664e+03 - 2.1092142e+02 -3.6021760e+02 4.9160668e+03 - 2.1795386e+02 -3.5599074e+02 4.9160672e+03 - 2.2490290e+02 -3.5162668e+02 4.9160676e+03 - 2.3176589e+02 -3.4712715e+02 4.9160679e+03 - 2.3854014e+02 -3.4249391e+02 4.9160682e+03 - 2.4522306e+02 -3.3772879e+02 4.9160685e+03 - 2.5181205e+02 -3.3283366e+02 4.9160688e+03 - 2.5830455e+02 -3.2781044e+02 4.9160690e+03 - 2.6469806e+02 -3.2266111e+02 4.9160692e+03 - 2.7099008e+02 -3.1738768e+02 4.9160694e+03 - 2.7717817e+02 -3.1199222e+02 4.9160695e+03 - 2.8325992e+02 -3.0647684e+02 4.9160696e+03 - 2.8923297e+02 -3.0084369e+02 4.9160697e+03 - 2.9509499e+02 -2.9509499e+02 4.9160697e+03 - 3.0084369e+02 -2.8923297e+02 4.9160697e+03 - 3.0647684e+02 -2.8325992e+02 4.9160696e+03 - 3.1199222e+02 -2.7717817e+02 4.9160695e+03 - 3.1738768e+02 -2.7099008e+02 4.9160694e+03 - 3.2266111e+02 -2.6469806e+02 4.9160692e+03 - 3.2781044e+02 -2.5830455e+02 4.9160690e+03 - 3.3283366e+02 -2.5181205e+02 4.9160688e+03 - 3.3772879e+02 -2.4522306e+02 4.9160685e+03 - 3.4249391e+02 -2.3854014e+02 4.9160682e+03 - 3.4712715e+02 -2.3176589e+02 4.9160679e+03 - 3.5162668e+02 -2.2490290e+02 4.9160676e+03 - 3.5599074e+02 -2.1795386e+02 4.9160672e+03 - 3.6021760e+02 -2.1092142e+02 4.9160668e+03 - 3.6430559e+02 -2.0380831e+02 4.9160664e+03 - 3.6825311e+02 -1.9661728e+02 4.9160660e+03 - 3.7205859e+02 -1.8935109e+02 4.9160655e+03 - 3.7572053e+02 -1.8201253e+02 4.9160650e+03 - 3.7923748e+02 -1.7460443e+02 4.9160646e+03 - 3.8260805e+02 -1.6712965e+02 4.9160641e+03 - 3.8583090e+02 -1.5959104e+02 4.9160636e+03 - 3.8890476e+02 -1.5199150e+02 4.9160631e+03 - 3.9182842e+02 -1.4433395e+02 4.9160627e+03 - 3.9460070e+02 -1.3662132e+02 4.9160622e+03 - 3.9722050e+02 -1.2885657e+02 4.9160617e+03 - 3.9968680e+02 -1.2104266e+02 4.9160613e+03 - 4.0199861e+02 -1.1318259e+02 4.9160609e+03 - 4.0415500e+02 -1.0527936e+02 4.9160604e+03 - 4.0615512e+02 -9.7335994e+01 4.9160601e+03 - 4.0799818e+02 -8.9355525e+01 4.9160597e+03 - 4.0968344e+02 -8.1341000e+01 4.9160593e+03 - 4.1121024e+02 -7.3295477e+01 4.9160590e+03 - 4.1257795e+02 -6.5222026e+01 4.9160587e+03 - 4.1378605e+02 -5.7123726e+01 4.9160584e+03 - 4.1483404e+02 -4.9003663e+01 4.9160582e+03 - 4.1572151e+02 -4.0864935e+01 4.9160580e+03 - 4.1644810e+02 -3.2710640e+01 4.9160578e+03 - 4.1701353e+02 -2.4543887e+01 4.9160577e+03 - 4.1741757e+02 -1.6367786e+01 4.9160576e+03 - 4.1766006e+02 -8.1854518e+00 4.9160576e+03 - 4.1774090e+02 0.0000000e+00 4.9160575e+03 - 6.2213802e+02 0.0000000e+00 4.9060230e+03 - 6.2201706e+02 1.2160528e+01 4.9060231e+03 - 6.2165424e+02 2.4316497e+01 4.9060234e+03 - 6.2104970e+02 3.6463349e+01 4.9060238e+03 - 6.2020370e+02 4.8596531e+01 4.9060245e+03 - 6.1911658e+02 6.0711491e+01 4.9060253e+03 - 6.1778879e+02 7.2803683e+01 4.9060263e+03 - 6.1622089e+02 8.4868567e+01 4.9060274e+03 - 6.1441352e+02 9.6901613e+01 4.9060287e+03 - 6.1236743e+02 1.0889830e+02 4.9060302e+03 - 6.1008346e+02 1.2085411e+02 4.9060318e+03 - 6.0756257e+02 1.3276454e+02 4.9060335e+03 - 6.0480577e+02 1.4462511e+02 4.9060354e+03 - 6.0181422e+02 1.5643135e+02 4.9060373e+03 - 5.9858915e+02 1.6817879e+02 4.9060394e+03 - 5.9513188e+02 1.7986300e+02 4.9060415e+03 - 5.9144384e+02 1.9147956e+02 4.9060437e+03 - 5.8752654e+02 2.0302405e+02 4.9060460e+03 - 5.8338159e+02 2.1449211e+02 4.9060483e+03 - 5.7901069e+02 2.2587938e+02 4.9060506e+03 - 5.7441564e+02 2.3718151e+02 4.9060530e+03 - 5.6959830e+02 2.4839421e+02 4.9060554e+03 - 5.6456066e+02 2.5951319e+02 4.9060577e+03 - 5.5930477e+02 2.7053420e+02 4.9060600e+03 - 5.5383277e+02 2.8145303e+02 4.9060623e+03 - 5.4814689e+02 2.9226547e+02 4.9060645e+03 - 5.4224944e+02 3.0296738e+02 4.9060666e+03 - 5.3614283e+02 3.1355463e+02 4.9060687e+03 - 5.2982952e+02 3.2402314e+02 4.9060706e+03 - 5.2331207e+02 3.3436887e+02 4.9060725e+03 - 5.1659312e+02 3.4458780e+02 4.9060742e+03 - 5.0967537e+02 3.5467597e+02 4.9060758e+03 - 5.0256163e+02 3.6462947e+02 4.9060773e+03 - 4.9525474e+02 3.7444441e+02 4.9060786e+03 - 4.8775765e+02 3.8411695e+02 4.9060797e+03 - 4.8007336e+02 3.9364333e+02 4.9060807e+03 - 4.7220494e+02 4.0301981e+02 4.9060815e+03 - 4.6415554e+02 4.1224270e+02 4.9060822e+03 - 4.5592837e+02 4.2130838e+02 4.9060826e+03 - 4.4752670e+02 4.3021328e+02 4.9060829e+03 - 4.3895387e+02 4.3895387e+02 4.9060830e+03 - 4.3021328e+02 4.4752670e+02 4.9060829e+03 - 4.2130838e+02 4.5592837e+02 4.9060826e+03 - 4.1224270e+02 4.6415554e+02 4.9060822e+03 - 4.0301981e+02 4.7220494e+02 4.9060815e+03 - 3.9364333e+02 4.8007336e+02 4.9060807e+03 - 3.8411695e+02 4.8775765e+02 4.9060797e+03 - 3.7444441e+02 4.9525474e+02 4.9060786e+03 - 3.6462947e+02 5.0256163e+02 4.9060773e+03 - 3.5467597e+02 5.0967537e+02 4.9060758e+03 - 3.4458780e+02 5.1659312e+02 4.9060742e+03 - 3.3436887e+02 5.2331207e+02 4.9060725e+03 - 3.2402314e+02 5.2982952e+02 4.9060706e+03 - 3.1355463e+02 5.3614283e+02 4.9060687e+03 - 3.0296738e+02 5.4224944e+02 4.9060666e+03 - 2.9226547e+02 5.4814689e+02 4.9060645e+03 - 2.8145303e+02 5.5383277e+02 4.9060623e+03 - 2.7053420e+02 5.5930477e+02 4.9060600e+03 - 2.5951319e+02 5.6456066e+02 4.9060577e+03 - 2.4839421e+02 5.6959830e+02 4.9060554e+03 - 2.3718151e+02 5.7441564e+02 4.9060530e+03 - 2.2587938e+02 5.7901069e+02 4.9060506e+03 - 2.1449211e+02 5.8338159e+02 4.9060483e+03 - 2.0302405e+02 5.8752654e+02 4.9060460e+03 - 1.9147956e+02 5.9144384e+02 4.9060437e+03 - 1.7986300e+02 5.9513188e+02 4.9060415e+03 - 1.6817879e+02 5.9858915e+02 4.9060394e+03 - 1.5643135e+02 6.0181422e+02 4.9060373e+03 - 1.4462511e+02 6.0480577e+02 4.9060354e+03 - 1.3276454e+02 6.0756257e+02 4.9060335e+03 - 1.2085411e+02 6.1008346e+02 4.9060318e+03 - 1.0889830e+02 6.1236743e+02 4.9060302e+03 - 9.6901613e+01 6.1441352e+02 4.9060287e+03 - 8.4868567e+01 6.1622089e+02 4.9060274e+03 - 7.2803683e+01 6.1778879e+02 4.9060263e+03 - 6.0711491e+01 6.1911658e+02 4.9060253e+03 - 4.8596531e+01 6.2020370e+02 4.9060245e+03 - 3.6463349e+01 6.2104970e+02 4.9060238e+03 - 2.4316497e+01 6.2165424e+02 4.9060234e+03 - 1.2160528e+01 6.2201706e+02 4.9060231e+03 - 0.0000000e+00 6.2213802e+02 4.9060230e+03 - -1.2160528e+01 6.2201706e+02 4.9060231e+03 - -2.4316497e+01 6.2165424e+02 4.9060234e+03 - -3.6463349e+01 6.2104970e+02 4.9060238e+03 - -4.8596531e+01 6.2020370e+02 4.9060245e+03 - -6.0711491e+01 6.1911658e+02 4.9060253e+03 - -7.2803683e+01 6.1778879e+02 4.9060263e+03 - -8.4868567e+01 6.1622089e+02 4.9060274e+03 - -9.6901613e+01 6.1441352e+02 4.9060287e+03 - -1.0889830e+02 6.1236743e+02 4.9060302e+03 - -1.2085411e+02 6.1008346e+02 4.9060318e+03 - -1.3276454e+02 6.0756257e+02 4.9060335e+03 - -1.4462511e+02 6.0480577e+02 4.9060354e+03 - -1.5643135e+02 6.0181422e+02 4.9060373e+03 - -1.6817879e+02 5.9858915e+02 4.9060394e+03 - -1.7986300e+02 5.9513188e+02 4.9060415e+03 - -1.9147956e+02 5.9144384e+02 4.9060437e+03 - -2.0302405e+02 5.8752654e+02 4.9060460e+03 - -2.1449211e+02 5.8338159e+02 4.9060483e+03 - -2.2587938e+02 5.7901069e+02 4.9060506e+03 - -2.3718151e+02 5.7441564e+02 4.9060530e+03 - -2.4839421e+02 5.6959830e+02 4.9060554e+03 - -2.5951319e+02 5.6456066e+02 4.9060577e+03 - -2.7053420e+02 5.5930477e+02 4.9060600e+03 - -2.8145303e+02 5.5383277e+02 4.9060623e+03 - -2.9226547e+02 5.4814689e+02 4.9060645e+03 - -3.0296738e+02 5.4224944e+02 4.9060666e+03 - -3.1355463e+02 5.3614283e+02 4.9060687e+03 - -3.2402314e+02 5.2982952e+02 4.9060706e+03 - -3.3436887e+02 5.2331207e+02 4.9060725e+03 - -3.4458780e+02 5.1659312e+02 4.9060742e+03 - -3.5467597e+02 5.0967537e+02 4.9060758e+03 - -3.6462947e+02 5.0256163e+02 4.9060773e+03 - -3.7444441e+02 4.9525474e+02 4.9060786e+03 - -3.8411695e+02 4.8775765e+02 4.9060797e+03 - -3.9364333e+02 4.8007336e+02 4.9060807e+03 - -4.0301981e+02 4.7220494e+02 4.9060815e+03 - -4.1224270e+02 4.6415554e+02 4.9060822e+03 - -4.2130838e+02 4.5592837e+02 4.9060826e+03 - -4.3021328e+02 4.4752670e+02 4.9060829e+03 - -4.3895387e+02 4.3895387e+02 4.9060830e+03 - -4.4752670e+02 4.3021328e+02 4.9060829e+03 - -4.5592837e+02 4.2130838e+02 4.9060826e+03 - -4.6415554e+02 4.1224270e+02 4.9060822e+03 - -4.7220494e+02 4.0301981e+02 4.9060815e+03 - -4.8007336e+02 3.9364333e+02 4.9060807e+03 - -4.8775765e+02 3.8411695e+02 4.9060797e+03 - -4.9525474e+02 3.7444441e+02 4.9060786e+03 - -5.0256163e+02 3.6462947e+02 4.9060773e+03 - -5.0967537e+02 3.5467597e+02 4.9060758e+03 - -5.1659312e+02 3.4458780e+02 4.9060742e+03 - -5.2331207e+02 3.3436887e+02 4.9060725e+03 - -5.2982952e+02 3.2402314e+02 4.9060706e+03 - -5.3614283e+02 3.1355463e+02 4.9060687e+03 - -5.4224944e+02 3.0296738e+02 4.9060666e+03 - -5.4814689e+02 2.9226547e+02 4.9060645e+03 - -5.5383277e+02 2.8145303e+02 4.9060623e+03 - -5.5930477e+02 2.7053420e+02 4.9060600e+03 - -5.6456066e+02 2.5951319e+02 4.9060577e+03 - -5.6959830e+02 2.4839421e+02 4.9060554e+03 - -5.7441564e+02 2.3718151e+02 4.9060530e+03 - -5.7901069e+02 2.2587938e+02 4.9060506e+03 - -5.8338159e+02 2.1449211e+02 4.9060483e+03 - -5.8752654e+02 2.0302405e+02 4.9060460e+03 - -5.9144384e+02 1.9147956e+02 4.9060437e+03 - -5.9513188e+02 1.7986300e+02 4.9060415e+03 - -5.9858915e+02 1.6817879e+02 4.9060394e+03 - -6.0181422e+02 1.5643135e+02 4.9060373e+03 - -6.0480577e+02 1.4462511e+02 4.9060354e+03 - -6.0756257e+02 1.3276454e+02 4.9060335e+03 - -6.1008346e+02 1.2085411e+02 4.9060318e+03 - -6.1236743e+02 1.0889830e+02 4.9060302e+03 - -6.1441352e+02 9.6901613e+01 4.9060287e+03 - -6.1622089e+02 8.4868567e+01 4.9060274e+03 - -6.1778879e+02 7.2803683e+01 4.9060263e+03 - -6.1911658e+02 6.0711491e+01 4.9060253e+03 - -6.2020370e+02 4.8596531e+01 4.9060245e+03 - -6.2104970e+02 3.6463349e+01 4.9060238e+03 - -6.2165424e+02 2.4316497e+01 4.9060234e+03 - -6.2201706e+02 1.2160528e+01 4.9060231e+03 - -6.2213802e+02 0.0000000e+00 4.9060230e+03 - -6.2201706e+02 -1.2160528e+01 4.9060231e+03 - -6.2165424e+02 -2.4316497e+01 4.9060234e+03 - -6.2104970e+02 -3.6463349e+01 4.9060238e+03 - -6.2020370e+02 -4.8596531e+01 4.9060245e+03 - -6.1911658e+02 -6.0711491e+01 4.9060253e+03 - -6.1778879e+02 -7.2803683e+01 4.9060263e+03 - -6.1622089e+02 -8.4868567e+01 4.9060274e+03 - -6.1441352e+02 -9.6901613e+01 4.9060287e+03 - -6.1236743e+02 -1.0889830e+02 4.9060302e+03 - -6.1008346e+02 -1.2085411e+02 4.9060318e+03 - -6.0756257e+02 -1.3276454e+02 4.9060335e+03 - -6.0480577e+02 -1.4462511e+02 4.9060354e+03 - -6.0181422e+02 -1.5643135e+02 4.9060373e+03 - -5.9858915e+02 -1.6817879e+02 4.9060394e+03 - -5.9513188e+02 -1.7986300e+02 4.9060415e+03 - -5.9144384e+02 -1.9147956e+02 4.9060437e+03 - -5.8752654e+02 -2.0302405e+02 4.9060460e+03 - -5.8338159e+02 -2.1449211e+02 4.9060483e+03 - -5.7901069e+02 -2.2587938e+02 4.9060506e+03 - -5.7441564e+02 -2.3718151e+02 4.9060530e+03 - -5.6959830e+02 -2.4839421e+02 4.9060554e+03 - -5.6456066e+02 -2.5951319e+02 4.9060577e+03 - -5.5930477e+02 -2.7053420e+02 4.9060600e+03 - -5.5383277e+02 -2.8145303e+02 4.9060623e+03 - -5.4814689e+02 -2.9226547e+02 4.9060645e+03 - -5.4224944e+02 -3.0296738e+02 4.9060666e+03 - -5.3614283e+02 -3.1355463e+02 4.9060687e+03 - -5.2982952e+02 -3.2402314e+02 4.9060706e+03 - -5.2331207e+02 -3.3436887e+02 4.9060725e+03 - -5.1659312e+02 -3.4458780e+02 4.9060742e+03 - -5.0967537e+02 -3.5467597e+02 4.9060758e+03 - -5.0256163e+02 -3.6462947e+02 4.9060773e+03 - -4.9525474e+02 -3.7444441e+02 4.9060786e+03 - -4.8775765e+02 -3.8411695e+02 4.9060797e+03 - -4.8007336e+02 -3.9364333e+02 4.9060807e+03 - -4.7220494e+02 -4.0301981e+02 4.9060815e+03 - -4.6415554e+02 -4.1224270e+02 4.9060822e+03 - -4.5592837e+02 -4.2130838e+02 4.9060826e+03 - -4.4752670e+02 -4.3021328e+02 4.9060829e+03 - -4.3895387e+02 -4.3895387e+02 4.9060830e+03 - -4.3021328e+02 -4.4752670e+02 4.9060829e+03 - -4.2130838e+02 -4.5592837e+02 4.9060826e+03 - -4.1224270e+02 -4.6415554e+02 4.9060822e+03 - -4.0301981e+02 -4.7220494e+02 4.9060815e+03 - -3.9364333e+02 -4.8007336e+02 4.9060807e+03 - -3.8411695e+02 -4.8775765e+02 4.9060797e+03 - -3.7444441e+02 -4.9525474e+02 4.9060786e+03 - -3.6462947e+02 -5.0256163e+02 4.9060773e+03 - -3.5467597e+02 -5.0967537e+02 4.9060758e+03 - -3.4458780e+02 -5.1659312e+02 4.9060742e+03 - -3.3436887e+02 -5.2331207e+02 4.9060725e+03 - -3.2402314e+02 -5.2982952e+02 4.9060706e+03 - -3.1355463e+02 -5.3614283e+02 4.9060687e+03 - -3.0296738e+02 -5.4224944e+02 4.9060666e+03 - -2.9226547e+02 -5.4814689e+02 4.9060645e+03 - -2.8145303e+02 -5.5383277e+02 4.9060623e+03 - -2.7053420e+02 -5.5930477e+02 4.9060600e+03 - -2.5951319e+02 -5.6456066e+02 4.9060577e+03 - -2.4839421e+02 -5.6959830e+02 4.9060554e+03 - -2.3718151e+02 -5.7441564e+02 4.9060530e+03 - -2.2587938e+02 -5.7901069e+02 4.9060506e+03 - -2.1449211e+02 -5.8338159e+02 4.9060483e+03 - -2.0302405e+02 -5.8752654e+02 4.9060460e+03 - -1.9147956e+02 -5.9144384e+02 4.9060437e+03 - -1.7986300e+02 -5.9513188e+02 4.9060415e+03 - -1.6817879e+02 -5.9858915e+02 4.9060394e+03 - -1.5643135e+02 -6.0181422e+02 4.9060373e+03 - -1.4462511e+02 -6.0480577e+02 4.9060354e+03 - -1.3276454e+02 -6.0756257e+02 4.9060335e+03 - -1.2085411e+02 -6.1008346e+02 4.9060318e+03 - -1.0889830e+02 -6.1236743e+02 4.9060302e+03 - -9.6901613e+01 -6.1441352e+02 4.9060287e+03 - -8.4868567e+01 -6.1622089e+02 4.9060274e+03 - -7.2803683e+01 -6.1778879e+02 4.9060263e+03 - -6.0711491e+01 -6.1911658e+02 4.9060253e+03 - -4.8596531e+01 -6.2020370e+02 4.9060245e+03 - -3.6463349e+01 -6.2104970e+02 4.9060238e+03 - -2.4316497e+01 -6.2165424e+02 4.9060234e+03 - -1.2160528e+01 -6.2201706e+02 4.9060231e+03 - 0.0000000e+00 -6.2213802e+02 4.9060230e+03 - 1.2160528e+01 -6.2201706e+02 4.9060231e+03 - 2.4316497e+01 -6.2165424e+02 4.9060234e+03 - 3.6463349e+01 -6.2104970e+02 4.9060238e+03 - 4.8596531e+01 -6.2020370e+02 4.9060245e+03 - 6.0711491e+01 -6.1911658e+02 4.9060253e+03 - 7.2803683e+01 -6.1778879e+02 4.9060263e+03 - 8.4868567e+01 -6.1622089e+02 4.9060274e+03 - 9.6901613e+01 -6.1441352e+02 4.9060287e+03 - 1.0889830e+02 -6.1236743e+02 4.9060302e+03 - 1.2085411e+02 -6.1008346e+02 4.9060318e+03 - 1.3276454e+02 -6.0756257e+02 4.9060335e+03 - 1.4462511e+02 -6.0480577e+02 4.9060354e+03 - 1.5643135e+02 -6.0181422e+02 4.9060373e+03 - 1.6817879e+02 -5.9858915e+02 4.9060394e+03 - 1.7986300e+02 -5.9513188e+02 4.9060415e+03 - 1.9147956e+02 -5.9144384e+02 4.9060437e+03 - 2.0302405e+02 -5.8752654e+02 4.9060460e+03 - 2.1449211e+02 -5.8338159e+02 4.9060483e+03 - 2.2587938e+02 -5.7901069e+02 4.9060506e+03 - 2.3718151e+02 -5.7441564e+02 4.9060530e+03 - 2.4839421e+02 -5.6959830e+02 4.9060554e+03 - 2.5951319e+02 -5.6456066e+02 4.9060577e+03 - 2.7053420e+02 -5.5930477e+02 4.9060600e+03 - 2.8145303e+02 -5.5383277e+02 4.9060623e+03 - 2.9226547e+02 -5.4814689e+02 4.9060645e+03 - 3.0296738e+02 -5.4224944e+02 4.9060666e+03 - 3.1355463e+02 -5.3614283e+02 4.9060687e+03 - 3.2402314e+02 -5.2982952e+02 4.9060706e+03 - 3.3436887e+02 -5.2331207e+02 4.9060725e+03 - 3.4458780e+02 -5.1659312e+02 4.9060742e+03 - 3.5467597e+02 -5.0967537e+02 4.9060758e+03 - 3.6462947e+02 -5.0256163e+02 4.9060773e+03 - 3.7444441e+02 -4.9525474e+02 4.9060786e+03 - 3.8411695e+02 -4.8775765e+02 4.9060797e+03 - 3.9364333e+02 -4.8007336e+02 4.9060807e+03 - 4.0301981e+02 -4.7220494e+02 4.9060815e+03 - 4.1224270e+02 -4.6415554e+02 4.9060822e+03 - 4.2130838e+02 -4.5592837e+02 4.9060826e+03 - 4.3021328e+02 -4.4752670e+02 4.9060829e+03 - 4.3895387e+02 -4.3895387e+02 4.9060830e+03 - 4.4752670e+02 -4.3021328e+02 4.9060829e+03 - 4.5592837e+02 -4.2130838e+02 4.9060826e+03 - 4.6415554e+02 -4.1224270e+02 4.9060822e+03 - 4.7220494e+02 -4.0301981e+02 4.9060815e+03 - 4.8007336e+02 -3.9364333e+02 4.9060807e+03 - 4.8775765e+02 -3.8411695e+02 4.9060797e+03 - 4.9525474e+02 -3.7444441e+02 4.9060786e+03 - 5.0256163e+02 -3.6462947e+02 4.9060773e+03 - 5.0967537e+02 -3.5467597e+02 4.9060758e+03 - 5.1659312e+02 -3.4458780e+02 4.9060742e+03 - 5.2331207e+02 -3.3436887e+02 4.9060725e+03 - 5.2982952e+02 -3.2402314e+02 4.9060706e+03 - 5.3614283e+02 -3.1355463e+02 4.9060687e+03 - 5.4224944e+02 -3.0296738e+02 4.9060666e+03 - 5.4814689e+02 -2.9226547e+02 4.9060645e+03 - 5.5383277e+02 -2.8145303e+02 4.9060623e+03 - 5.5930477e+02 -2.7053420e+02 4.9060600e+03 - 5.6456066e+02 -2.5951319e+02 4.9060577e+03 - 5.6959830e+02 -2.4839421e+02 4.9060554e+03 - 5.7441564e+02 -2.3718151e+02 4.9060530e+03 - 5.7901069e+02 -2.2587938e+02 4.9060506e+03 - 5.8338159e+02 -2.1449211e+02 4.9060483e+03 - 5.8752654e+02 -2.0302405e+02 4.9060460e+03 - 5.9144384e+02 -1.9147956e+02 4.9060437e+03 - 5.9513188e+02 -1.7986300e+02 4.9060415e+03 - 5.9858915e+02 -1.6817879e+02 4.9060394e+03 - 6.0181422e+02 -1.5643135e+02 4.9060373e+03 - 6.0480577e+02 -1.4462511e+02 4.9060354e+03 - 6.0756257e+02 -1.3276454e+02 4.9060335e+03 - 6.1008346e+02 -1.2085411e+02 4.9060318e+03 - 6.1236743e+02 -1.0889830e+02 4.9060302e+03 - 6.1441352e+02 -9.6901613e+01 4.9060287e+03 - 6.1622089e+02 -8.4868567e+01 4.9060274e+03 - 6.1778879e+02 -7.2803683e+01 4.9060263e+03 - 6.1911658e+02 -6.0711491e+01 4.9060253e+03 - 6.2020370e+02 -4.8596531e+01 4.9060245e+03 - 6.2104970e+02 -3.6463349e+01 4.9060238e+03 - 6.2165424e+02 -2.4316497e+01 4.9060234e+03 - 6.2201706e+02 -1.2160528e+01 4.9060231e+03 - 6.2213802e+02 0.0000000e+00 4.9060230e+03 - 8.2143369e+02 -4.8134273e-09 4.8923144e+03 - 8.2127301e+02 1.6001605e+01 4.8923147e+03 - 8.2079102e+02 3.1997347e+01 4.8923156e+03 - 8.1998793e+02 4.7981367e+01 4.8923170e+03 - 8.1886410e+02 6.3947805e+01 4.8923189e+03 - 8.1742000e+02 7.9890805e+01 4.8923214e+03 - 8.1565626e+02 9.5804516e+01 4.8923244e+03 - 8.1357365e+02 1.1168309e+02 4.8923279e+03 - 8.1117306e+02 1.2752070e+02 4.8923319e+03 - 8.0845553e+02 1.4331150e+02 4.8923364e+03 - 8.0542222e+02 1.5904967e+02 4.8923412e+03 - 8.0207446e+02 1.7472940e+02 4.8923465e+03 - 7.9841367e+02 1.9034490e+02 4.8923522e+03 - 7.9444143e+02 2.0589036e+02 4.8923581e+03 - 7.9015945e+02 2.2136003e+02 4.8923644e+03 - 7.8556957e+02 2.3674814e+02 4.8923709e+03 - 7.8067374e+02 2.5204895e+02 4.8923777e+03 - 7.7547408e+02 2.6725675e+02 4.8923846e+03 - 7.6997281e+02 2.8236582e+02 4.8923917e+03 - 7.6417226e+02 2.9737050e+02 4.8923988e+03 - 7.5807492e+02 3.1226511e+02 4.8924060e+03 - 7.5168338e+02 3.2704405e+02 4.8924132e+03 - 7.4500036e+02 3.4170169e+02 4.8924203e+03 - 7.3802868e+02 3.5623247e+02 4.8924274e+03 - 7.3077131e+02 3.7063084e+02 4.8924343e+03 - 7.2323131e+02 3.8489130e+02 4.8924410e+03 - 7.1541186e+02 3.9900836e+02 4.8924475e+03 - 7.0731625e+02 4.1297660e+02 4.8924538e+03 - 6.9894788e+02 4.2679060e+02 4.8924598e+03 - 6.9031026e+02 4.4044503e+02 4.8924654e+03 - 6.8140698e+02 4.5393455e+02 4.8924707e+03 - 6.7224178e+02 4.6725391e+02 4.8924756e+03 - 6.6281846e+02 4.8039789e+02 4.8924801e+03 - 6.5314092e+02 4.9336132e+02 4.8924841e+03 - 6.4321317e+02 5.0613909e+02 4.8924876e+03 - 6.3303931e+02 5.1872613e+02 4.8924906e+03 - 6.2262352e+02 5.3111746e+02 4.8924931e+03 - 6.1197007e+02 5.4330812e+02 4.8924950e+03 - 6.0108332e+02 5.5529325e+02 4.8924964e+03 - 5.8996770e+02 5.6706804e+02 4.8924973e+03 - 5.7862775e+02 5.7862775e+02 4.8924975e+03 - 5.6706804e+02 5.8996770e+02 4.8924973e+03 - 5.5529325e+02 6.0108332e+02 4.8924964e+03 - 5.4330812e+02 6.1197007e+02 4.8924950e+03 - 5.3111746e+02 6.2262352e+02 4.8924931e+03 - 5.1872613e+02 6.3303931e+02 4.8924906e+03 - 5.0613909e+02 6.4321317e+02 4.8924876e+03 - 4.9336132e+02 6.5314092e+02 4.8924841e+03 - 4.8039789e+02 6.6281846e+02 4.8924801e+03 - 4.6725391e+02 6.7224178e+02 4.8924756e+03 - 4.5393455e+02 6.8140698e+02 4.8924707e+03 - 4.4044503e+02 6.9031026e+02 4.8924654e+03 - 4.2679060e+02 6.9894788e+02 4.8924598e+03 - 4.1297660e+02 7.0731625e+02 4.8924538e+03 - 3.9900836e+02 7.1541186e+02 4.8924475e+03 - 3.8489130e+02 7.2323131e+02 4.8924410e+03 - 3.7063084e+02 7.3077131e+02 4.8924343e+03 - 3.5623247e+02 7.3802868e+02 4.8924274e+03 - 3.4170169e+02 7.4500036e+02 4.8924203e+03 - 3.2704405e+02 7.5168338e+02 4.8924132e+03 - 3.1226511e+02 7.5807492e+02 4.8924060e+03 - 2.9737050e+02 7.6417226e+02 4.8923988e+03 - 2.8236582e+02 7.6997281e+02 4.8923917e+03 - 2.6725675e+02 7.7547408e+02 4.8923846e+03 - 2.5204895e+02 7.8067374e+02 4.8923777e+03 - 2.3674814e+02 7.8556957e+02 4.8923709e+03 - 2.2136003e+02 7.9015945e+02 4.8923644e+03 - 2.0589036e+02 7.9444143e+02 4.8923581e+03 - 1.9034490e+02 7.9841367e+02 4.8923522e+03 - 1.7472940e+02 8.0207446e+02 4.8923465e+03 - 1.5904967e+02 8.0542222e+02 4.8923412e+03 - 1.4331150e+02 8.0845553e+02 4.8923364e+03 - 1.2752070e+02 8.1117306e+02 4.8923319e+03 - 1.1168309e+02 8.1357365e+02 4.8923279e+03 - 9.5804516e+01 8.1565626e+02 4.8923244e+03 - 7.9890805e+01 8.1742000e+02 4.8923214e+03 - 6.3947805e+01 8.1886410e+02 4.8923189e+03 - 4.7981367e+01 8.1998793e+02 4.8923170e+03 - 3.1997347e+01 8.2079102e+02 4.8923156e+03 - 1.6001605e+01 8.2127301e+02 4.8923147e+03 - -4.8134273e-09 8.2143369e+02 4.8923144e+03 - -1.6001605e+01 8.2127301e+02 4.8923147e+03 - -3.1997347e+01 8.2079102e+02 4.8923156e+03 - -4.7981367e+01 8.1998793e+02 4.8923170e+03 - -6.3947805e+01 8.1886410e+02 4.8923189e+03 - -7.9890805e+01 8.1742000e+02 4.8923214e+03 - -9.5804516e+01 8.1565626e+02 4.8923244e+03 - -1.1168309e+02 8.1357365e+02 4.8923279e+03 - -1.2752070e+02 8.1117306e+02 4.8923319e+03 - -1.4331150e+02 8.0845553e+02 4.8923364e+03 - -1.5904967e+02 8.0542222e+02 4.8923412e+03 - -1.7472940e+02 8.0207446e+02 4.8923465e+03 - -1.9034490e+02 7.9841367e+02 4.8923522e+03 - -2.0589036e+02 7.9444143e+02 4.8923581e+03 - -2.2136003e+02 7.9015945e+02 4.8923644e+03 - -2.3674814e+02 7.8556957e+02 4.8923709e+03 - -2.5204895e+02 7.8067374e+02 4.8923777e+03 - -2.6725675e+02 7.7547408e+02 4.8923846e+03 - -2.8236582e+02 7.6997281e+02 4.8923917e+03 - -2.9737050e+02 7.6417226e+02 4.8923988e+03 - -3.1226511e+02 7.5807492e+02 4.8924060e+03 - -3.2704405e+02 7.5168338e+02 4.8924132e+03 - -3.4170169e+02 7.4500036e+02 4.8924203e+03 - -3.5623247e+02 7.3802868e+02 4.8924274e+03 - -3.7063084e+02 7.3077131e+02 4.8924343e+03 - -3.8489130e+02 7.2323131e+02 4.8924410e+03 - -3.9900836e+02 7.1541186e+02 4.8924475e+03 - -4.1297660e+02 7.0731625e+02 4.8924538e+03 - -4.2679060e+02 6.9894788e+02 4.8924598e+03 - -4.4044503e+02 6.9031026e+02 4.8924654e+03 - -4.5393455e+02 6.8140698e+02 4.8924707e+03 - -4.6725391e+02 6.7224178e+02 4.8924756e+03 - -4.8039789e+02 6.6281846e+02 4.8924801e+03 - -4.9336132e+02 6.5314092e+02 4.8924841e+03 - -5.0613909e+02 6.4321317e+02 4.8924876e+03 - -5.1872613e+02 6.3303931e+02 4.8924906e+03 - -5.3111746e+02 6.2262352e+02 4.8924931e+03 - -5.4330812e+02 6.1197007e+02 4.8924950e+03 - -5.5529325e+02 6.0108332e+02 4.8924964e+03 - -5.6706804e+02 5.8996770e+02 4.8924973e+03 - -5.7862775e+02 5.7862775e+02 4.8924975e+03 - -5.8996770e+02 5.6706804e+02 4.8924973e+03 - -6.0108332e+02 5.5529325e+02 4.8924964e+03 - -6.1197007e+02 5.4330812e+02 4.8924950e+03 - -6.2262352e+02 5.3111746e+02 4.8924931e+03 - -6.3303931e+02 5.1872613e+02 4.8924906e+03 - -6.4321317e+02 5.0613909e+02 4.8924876e+03 - -6.5314092e+02 4.9336132e+02 4.8924841e+03 - -6.6281846e+02 4.8039789e+02 4.8924801e+03 - -6.7224178e+02 4.6725391e+02 4.8924756e+03 - -6.8140698e+02 4.5393455e+02 4.8924707e+03 - -6.9031026e+02 4.4044503e+02 4.8924654e+03 - -6.9894788e+02 4.2679060e+02 4.8924598e+03 - -7.0731625e+02 4.1297660e+02 4.8924538e+03 - -7.1541186e+02 3.9900836e+02 4.8924475e+03 - -7.2323131e+02 3.8489130e+02 4.8924410e+03 - -7.3077131e+02 3.7063084e+02 4.8924343e+03 - -7.3802868e+02 3.5623247e+02 4.8924274e+03 - -7.4500036e+02 3.4170169e+02 4.8924203e+03 - -7.5168338e+02 3.2704405e+02 4.8924132e+03 - -7.5807492e+02 3.1226511e+02 4.8924060e+03 - -7.6417226e+02 2.9737050e+02 4.8923988e+03 - -7.6997281e+02 2.8236582e+02 4.8923917e+03 - -7.7547408e+02 2.6725675e+02 4.8923846e+03 - -7.8067374e+02 2.5204895e+02 4.8923777e+03 - -7.8556957e+02 2.3674814e+02 4.8923709e+03 - -7.9015945e+02 2.2136003e+02 4.8923644e+03 - -7.9444143e+02 2.0589036e+02 4.8923581e+03 - -7.9841367e+02 1.9034490e+02 4.8923522e+03 - -8.0207446e+02 1.7472940e+02 4.8923465e+03 - -8.0542222e+02 1.5904967e+02 4.8923412e+03 - -8.0845553e+02 1.4331150e+02 4.8923364e+03 - -8.1117306e+02 1.2752070e+02 4.8923319e+03 - -8.1357365e+02 1.1168309e+02 4.8923279e+03 - -8.1565626e+02 9.5804516e+01 4.8923244e+03 - -8.1742000e+02 7.9890805e+01 4.8923214e+03 - -8.1886410e+02 6.3947805e+01 4.8923189e+03 - -8.1998793e+02 4.7981367e+01 4.8923170e+03 - -8.2079102e+02 3.1997347e+01 4.8923156e+03 - -8.2127301e+02 1.6001605e+01 4.8923147e+03 - -8.2143369e+02 4.8134273e-09 4.8923144e+03 - -8.2127301e+02 -1.6001605e+01 4.8923147e+03 - -8.2079102e+02 -3.1997347e+01 4.8923156e+03 - -8.1998793e+02 -4.7981367e+01 4.8923170e+03 - -8.1886410e+02 -6.3947805e+01 4.8923189e+03 - -8.1742000e+02 -7.9890805e+01 4.8923214e+03 - -8.1565626e+02 -9.5804516e+01 4.8923244e+03 - -8.1357365e+02 -1.1168309e+02 4.8923279e+03 - -8.1117306e+02 -1.2752070e+02 4.8923319e+03 - -8.0845553e+02 -1.4331150e+02 4.8923364e+03 - -8.0542222e+02 -1.5904967e+02 4.8923412e+03 - -8.0207446e+02 -1.7472940e+02 4.8923465e+03 - -7.9841367e+02 -1.9034490e+02 4.8923522e+03 - -7.9444143e+02 -2.0589036e+02 4.8923581e+03 - -7.9015945e+02 -2.2136003e+02 4.8923644e+03 - -7.8556957e+02 -2.3674814e+02 4.8923709e+03 - -7.8067374e+02 -2.5204895e+02 4.8923777e+03 - -7.7547408e+02 -2.6725675e+02 4.8923846e+03 - -7.6997281e+02 -2.8236582e+02 4.8923917e+03 - -7.6417226e+02 -2.9737050e+02 4.8923988e+03 - -7.5807492e+02 -3.1226511e+02 4.8924060e+03 - -7.5168338e+02 -3.2704405e+02 4.8924132e+03 - -7.4500036e+02 -3.4170169e+02 4.8924203e+03 - -7.3802868e+02 -3.5623247e+02 4.8924274e+03 - -7.3077131e+02 -3.7063084e+02 4.8924343e+03 - -7.2323131e+02 -3.8489130e+02 4.8924410e+03 - -7.1541186e+02 -3.9900836e+02 4.8924475e+03 - -7.0731625e+02 -4.1297660e+02 4.8924538e+03 - -6.9894788e+02 -4.2679060e+02 4.8924598e+03 - -6.9031026e+02 -4.4044503e+02 4.8924654e+03 - -6.8140698e+02 -4.5393455e+02 4.8924707e+03 - -6.7224178e+02 -4.6725391e+02 4.8924756e+03 - -6.6281846e+02 -4.8039789e+02 4.8924801e+03 - -6.5314092e+02 -4.9336132e+02 4.8924841e+03 - -6.4321317e+02 -5.0613909e+02 4.8924876e+03 - -6.3303931e+02 -5.1872613e+02 4.8924906e+03 - -6.2262352e+02 -5.3111746e+02 4.8924931e+03 - -6.1197007e+02 -5.4330812e+02 4.8924950e+03 - -6.0108332e+02 -5.5529325e+02 4.8924964e+03 - -5.8996770e+02 -5.6706804e+02 4.8924973e+03 - -5.7862775e+02 -5.7862775e+02 4.8924975e+03 - -5.6706804e+02 -5.8996770e+02 4.8924973e+03 - -5.5529325e+02 -6.0108332e+02 4.8924964e+03 - -5.4330812e+02 -6.1197007e+02 4.8924950e+03 - -5.3111746e+02 -6.2262352e+02 4.8924931e+03 - -5.1872613e+02 -6.3303931e+02 4.8924906e+03 - -5.0613909e+02 -6.4321317e+02 4.8924876e+03 - -4.9336132e+02 -6.5314092e+02 4.8924841e+03 - -4.8039789e+02 -6.6281846e+02 4.8924801e+03 - -4.6725391e+02 -6.7224178e+02 4.8924756e+03 - -4.5393455e+02 -6.8140698e+02 4.8924707e+03 - -4.4044503e+02 -6.9031026e+02 4.8924654e+03 - -4.2679060e+02 -6.9894788e+02 4.8924598e+03 - -4.1297660e+02 -7.0731625e+02 4.8924538e+03 - -3.9900836e+02 -7.1541186e+02 4.8924475e+03 - -3.8489130e+02 -7.2323131e+02 4.8924410e+03 - -3.7063084e+02 -7.3077131e+02 4.8924343e+03 - -3.5623247e+02 -7.3802868e+02 4.8924274e+03 - -3.4170169e+02 -7.4500036e+02 4.8924203e+03 - -3.2704405e+02 -7.5168338e+02 4.8924132e+03 - -3.1226511e+02 -7.5807492e+02 4.8924060e+03 - -2.9737050e+02 -7.6417226e+02 4.8923988e+03 - -2.8236582e+02 -7.6997281e+02 4.8923917e+03 - -2.6725675e+02 -7.7547408e+02 4.8923846e+03 - -2.5204895e+02 -7.8067374e+02 4.8923777e+03 - -2.3674814e+02 -7.8556957e+02 4.8923709e+03 - -2.2136003e+02 -7.9015945e+02 4.8923644e+03 - -2.0589036e+02 -7.9444143e+02 4.8923581e+03 - -1.9034490e+02 -7.9841367e+02 4.8923522e+03 - -1.7472940e+02 -8.0207446e+02 4.8923465e+03 - -1.5904967e+02 -8.0542222e+02 4.8923412e+03 - -1.4331150e+02 -8.0845553e+02 4.8923364e+03 - -1.2752070e+02 -8.1117306e+02 4.8923319e+03 - -1.1168309e+02 -8.1357365e+02 4.8923279e+03 - -9.5804516e+01 -8.1565626e+02 4.8923244e+03 - -7.9890805e+01 -8.1742000e+02 4.8923214e+03 - -6.3947805e+01 -8.1886410e+02 4.8923189e+03 - -4.7981367e+01 -8.1998793e+02 4.8923170e+03 - -3.1997347e+01 -8.2079102e+02 4.8923156e+03 - -1.6001605e+01 -8.2127301e+02 4.8923147e+03 - 4.8134273e-09 -8.2143369e+02 4.8923144e+03 - 1.6001605e+01 -8.2127301e+02 4.8923147e+03 - 3.1997347e+01 -8.2079102e+02 4.8923156e+03 - 4.7981367e+01 -8.1998793e+02 4.8923170e+03 - 6.3947805e+01 -8.1886410e+02 4.8923189e+03 - 7.9890805e+01 -8.1742000e+02 4.8923214e+03 - 9.5804516e+01 -8.1565626e+02 4.8923244e+03 - 1.1168309e+02 -8.1357365e+02 4.8923279e+03 - 1.2752070e+02 -8.1117306e+02 4.8923319e+03 - 1.4331150e+02 -8.0845553e+02 4.8923364e+03 - 1.5904967e+02 -8.0542222e+02 4.8923412e+03 - 1.7472940e+02 -8.0207446e+02 4.8923465e+03 - 1.9034490e+02 -7.9841367e+02 4.8923522e+03 - 2.0589036e+02 -7.9444143e+02 4.8923581e+03 - 2.2136003e+02 -7.9015945e+02 4.8923644e+03 - 2.3674814e+02 -7.8556957e+02 4.8923709e+03 - 2.5204895e+02 -7.8067374e+02 4.8923777e+03 - 2.6725675e+02 -7.7547408e+02 4.8923846e+03 - 2.8236582e+02 -7.6997281e+02 4.8923917e+03 - 2.9737050e+02 -7.6417226e+02 4.8923988e+03 - 3.1226511e+02 -7.5807492e+02 4.8924060e+03 - 3.2704405e+02 -7.5168338e+02 4.8924132e+03 - 3.4170169e+02 -7.4500036e+02 4.8924203e+03 - 3.5623247e+02 -7.3802868e+02 4.8924274e+03 - 3.7063084e+02 -7.3077131e+02 4.8924343e+03 - 3.8489130e+02 -7.2323131e+02 4.8924410e+03 - 3.9900836e+02 -7.1541186e+02 4.8924475e+03 - 4.1297660e+02 -7.0731625e+02 4.8924538e+03 - 4.2679060e+02 -6.9894788e+02 4.8924598e+03 - 4.4044503e+02 -6.9031026e+02 4.8924654e+03 - 4.5393455e+02 -6.8140698e+02 4.8924707e+03 - 4.6725391e+02 -6.7224178e+02 4.8924756e+03 - 4.8039789e+02 -6.6281846e+02 4.8924801e+03 - 4.9336132e+02 -6.5314092e+02 4.8924841e+03 - 5.0613909e+02 -6.4321317e+02 4.8924876e+03 - 5.1872613e+02 -6.3303931e+02 4.8924906e+03 - 5.3111746e+02 -6.2262352e+02 4.8924931e+03 - 5.4330812e+02 -6.1197007e+02 4.8924950e+03 - 5.5529325e+02 -6.0108332e+02 4.8924964e+03 - 5.6706804e+02 -5.8996770e+02 4.8924973e+03 - 5.7862775e+02 -5.7862775e+02 4.8924975e+03 - 5.8996770e+02 -5.6706804e+02 4.8924973e+03 - 6.0108332e+02 -5.5529325e+02 4.8924964e+03 - 6.1197007e+02 -5.4330812e+02 4.8924950e+03 - 6.2262352e+02 -5.3111746e+02 4.8924931e+03 - 6.3303931e+02 -5.1872613e+02 4.8924906e+03 - 6.4321317e+02 -5.0613909e+02 4.8924876e+03 - 6.5314092e+02 -4.9336132e+02 4.8924841e+03 - 6.6281846e+02 -4.8039789e+02 4.8924801e+03 - 6.7224178e+02 -4.6725391e+02 4.8924756e+03 - 6.8140698e+02 -4.5393455e+02 4.8924707e+03 - 6.9031026e+02 -4.4044503e+02 4.8924654e+03 - 6.9894788e+02 -4.2679060e+02 4.8924598e+03 - 7.0731625e+02 -4.1297660e+02 4.8924538e+03 - 7.1541186e+02 -3.9900836e+02 4.8924475e+03 - 7.2323131e+02 -3.8489130e+02 4.8924410e+03 - 7.3077131e+02 -3.7063084e+02 4.8924343e+03 - 7.3802868e+02 -3.5623247e+02 4.8924274e+03 - 7.4500036e+02 -3.4170169e+02 4.8924203e+03 - 7.5168338e+02 -3.2704405e+02 4.8924132e+03 - 7.5807492e+02 -3.1226511e+02 4.8924060e+03 - 7.6417226e+02 -2.9737050e+02 4.8923988e+03 - 7.6997281e+02 -2.8236582e+02 4.8923917e+03 - 7.7547408e+02 -2.6725675e+02 4.8923846e+03 - 7.8067374e+02 -2.5204895e+02 4.8923777e+03 - 7.8556957e+02 -2.3674814e+02 4.8923709e+03 - 7.9015945e+02 -2.2136003e+02 4.8923644e+03 - 7.9444143e+02 -2.0589036e+02 4.8923581e+03 - 7.9841367e+02 -1.9034490e+02 4.8923522e+03 - 8.0207446e+02 -1.7472940e+02 4.8923465e+03 - 8.0542222e+02 -1.5904967e+02 4.8923412e+03 - 8.0845553e+02 -1.4331150e+02 4.8923364e+03 - 8.1117306e+02 -1.2752070e+02 4.8923319e+03 - 8.1357365e+02 -1.1168309e+02 4.8923279e+03 - 8.1565626e+02 -9.5804516e+01 4.8923244e+03 - 8.1742000e+02 -7.9890805e+01 4.8923214e+03 - 8.1886410e+02 -6.3947805e+01 4.8923189e+03 - 8.1998793e+02 -4.7981367e+01 4.8923170e+03 - 8.2079102e+02 -3.1997347e+01 4.8923156e+03 - 8.2127301e+02 -1.6001605e+01 4.8923147e+03 - 8.2143369e+02 -4.8134273e-09 4.8923144e+03 - 1.0143366e+03 0.0000000e+00 4.8752365e+03 - 1.0141367e+03 1.9675031e+01 4.8752371e+03 - 1.0135372e+03 3.9343076e+01 4.8752391e+03 - 1.0125383e+03 5.8997147e+01 4.8752424e+03 - 1.0111406e+03 7.8630261e+01 4.8752469e+03 - 1.0093445e+03 9.8235432e+01 4.8752527e+03 - 1.0071510e+03 1.1780568e+02 4.8752598e+03 - 1.0045610e+03 1.3733401e+02 4.8752680e+03 - 1.0015757e+03 1.5681346e+02 4.8752773e+03 - 9.9819640e+02 1.7623704e+02 4.8752877e+03 - 9.9442468e+02 1.9559779e+02 4.8752991e+03 - 9.9026222e+02 2.1488873e+02 4.8753115e+03 - 9.8571088e+02 2.3410289e+02 4.8753247e+03 - 9.8077272e+02 2.5323332e+02 4.8753386e+03 - 9.7544995e+02 2.7227307e+02 4.8753533e+03 - 9.6974496e+02 2.9121518e+02 4.8753685e+03 - 9.6366029e+02 3.1005273e+02 4.8753843e+03 - 9.5719868e+02 3.2877879e+02 4.8754005e+03 - 9.5036301e+02 3.4738643e+02 4.8754170e+03 - 9.4315633e+02 3.6586877e+02 4.8754337e+03 - 9.3558183e+02 3.8421891e+02 4.8754504e+03 - 9.2764289e+02 4.0242999e+02 4.8754672e+03 - 9.1934303e+02 4.2049516e+02 4.8754839e+03 - 9.1068592e+02 4.3840758e+02 4.8755004e+03 - 9.0167537e+02 4.5616045e+02 4.8755166e+03 - 8.9231537e+02 4.7374700e+02 4.8755324e+03 - 8.8261001e+02 4.9116047e+02 4.8755476e+03 - 8.7256355e+02 5.0839414e+02 4.8755623e+03 - 8.6218039e+02 5.2544133e+02 4.8755763e+03 - 8.5146504e+02 5.4229539e+02 4.8755895e+03 - 8.4042215e+02 5.5894970e+02 4.8756018e+03 - 8.2905652e+02 5.7539772e+02 4.8756132e+03 - 8.1737305e+02 5.9163292e+02 4.8756236e+03 - 8.0537675e+02 6.0764883e+02 4.8756330e+03 - 7.9307278e+02 6.2343904e+02 4.8756412e+03 - 7.8046637e+02 6.3899720e+02 4.8756482e+03 - 7.6756291e+02 6.5431701e+02 4.8756541e+03 - 7.5436785e+02 6.6939224e+02 4.8756586e+03 - 7.4088676e+02 6.8421673e+02 4.8756619e+03 - 7.2712530e+02 6.9878440e+02 4.8756639e+03 - 7.1308923e+02 7.1308923e+02 4.8756645e+03 - 6.9878440e+02 7.2712530e+02 4.8756639e+03 - 6.8421673e+02 7.4088676e+02 4.8756619e+03 - 6.6939224e+02 7.5436785e+02 4.8756586e+03 - 6.5431701e+02 7.6756291e+02 4.8756541e+03 - 6.3899720e+02 7.8046637e+02 4.8756482e+03 - 6.2343904e+02 7.9307278e+02 4.8756412e+03 - 6.0764883e+02 8.0537675e+02 4.8756330e+03 - 5.9163292e+02 8.1737305e+02 4.8756236e+03 - 5.7539772e+02 8.2905652e+02 4.8756132e+03 - 5.5894970e+02 8.4042215e+02 4.8756018e+03 - 5.4229539e+02 8.5146504e+02 4.8755895e+03 - 5.2544133e+02 8.6218039e+02 4.8755763e+03 - 5.0839414e+02 8.7256355e+02 4.8755623e+03 - 4.9116047e+02 8.8261001e+02 4.8755476e+03 - 4.7374700e+02 8.9231537e+02 4.8755324e+03 - 4.5616045e+02 9.0167537e+02 4.8755166e+03 - 4.3840758e+02 9.1068592e+02 4.8755004e+03 - 4.2049516e+02 9.1934303e+02 4.8754839e+03 - 4.0242999e+02 9.2764289e+02 4.8754672e+03 - 3.8421891e+02 9.3558183e+02 4.8754504e+03 - 3.6586877e+02 9.4315633e+02 4.8754337e+03 - 3.4738643e+02 9.5036301e+02 4.8754170e+03 - 3.2877879e+02 9.5719868e+02 4.8754005e+03 - 3.1005273e+02 9.6366029e+02 4.8753843e+03 - 2.9121518e+02 9.6974496e+02 4.8753685e+03 - 2.7227307e+02 9.7544995e+02 4.8753533e+03 - 2.5323332e+02 9.8077272e+02 4.8753386e+03 - 2.3410289e+02 9.8571088e+02 4.8753247e+03 - 2.1488873e+02 9.9026222e+02 4.8753115e+03 - 1.9559779e+02 9.9442468e+02 4.8752991e+03 - 1.7623704e+02 9.9819640e+02 4.8752877e+03 - 1.5681346e+02 1.0015757e+03 4.8752773e+03 - 1.3733401e+02 1.0045610e+03 4.8752680e+03 - 1.1780568e+02 1.0071510e+03 4.8752598e+03 - 9.8235432e+01 1.0093445e+03 4.8752527e+03 - 7.8630261e+01 1.0111406e+03 4.8752469e+03 - 5.8997147e+01 1.0125383e+03 4.8752424e+03 - 3.9343076e+01 1.0135372e+03 4.8752391e+03 - 1.9675031e+01 1.0141367e+03 4.8752371e+03 - 0.0000000e+00 1.0143366e+03 4.8752365e+03 - -1.9675031e+01 1.0141367e+03 4.8752371e+03 - -3.9343076e+01 1.0135372e+03 4.8752391e+03 - -5.8997147e+01 1.0125383e+03 4.8752424e+03 - -7.8630261e+01 1.0111406e+03 4.8752469e+03 - -9.8235432e+01 1.0093445e+03 4.8752527e+03 - -1.1780568e+02 1.0071510e+03 4.8752598e+03 - -1.3733401e+02 1.0045610e+03 4.8752680e+03 - -1.5681346e+02 1.0015757e+03 4.8752773e+03 - -1.7623704e+02 9.9819640e+02 4.8752877e+03 - -1.9559779e+02 9.9442468e+02 4.8752991e+03 - -2.1488873e+02 9.9026222e+02 4.8753115e+03 - -2.3410289e+02 9.8571088e+02 4.8753247e+03 - -2.5323332e+02 9.8077272e+02 4.8753386e+03 - -2.7227307e+02 9.7544995e+02 4.8753533e+03 - -2.9121518e+02 9.6974496e+02 4.8753685e+03 - -3.1005273e+02 9.6366029e+02 4.8753843e+03 - -3.2877879e+02 9.5719868e+02 4.8754005e+03 - -3.4738643e+02 9.5036301e+02 4.8754170e+03 - -3.6586877e+02 9.4315633e+02 4.8754337e+03 - -3.8421891e+02 9.3558183e+02 4.8754504e+03 - -4.0242999e+02 9.2764289e+02 4.8754672e+03 - -4.2049516e+02 9.1934303e+02 4.8754839e+03 - -4.3840758e+02 9.1068592e+02 4.8755004e+03 - -4.5616045e+02 9.0167537e+02 4.8755166e+03 - -4.7374700e+02 8.9231537e+02 4.8755324e+03 - -4.9116047e+02 8.8261001e+02 4.8755476e+03 - -5.0839414e+02 8.7256355e+02 4.8755623e+03 - -5.2544133e+02 8.6218039e+02 4.8755763e+03 - -5.4229539e+02 8.5146504e+02 4.8755895e+03 - -5.5894970e+02 8.4042215e+02 4.8756018e+03 - -5.7539772e+02 8.2905652e+02 4.8756132e+03 - -5.9163292e+02 8.1737305e+02 4.8756236e+03 - -6.0764883e+02 8.0537675e+02 4.8756330e+03 - -6.2343904e+02 7.9307278e+02 4.8756412e+03 - -6.3899720e+02 7.8046637e+02 4.8756482e+03 - -6.5431701e+02 7.6756291e+02 4.8756541e+03 - -6.6939224e+02 7.5436785e+02 4.8756586e+03 - -6.8421673e+02 7.4088676e+02 4.8756619e+03 - -6.9878440e+02 7.2712530e+02 4.8756639e+03 - -7.1308923e+02 7.1308923e+02 4.8756645e+03 - -7.2712530e+02 6.9878440e+02 4.8756639e+03 - -7.4088676e+02 6.8421673e+02 4.8756619e+03 - -7.5436785e+02 6.6939224e+02 4.8756586e+03 - -7.6756291e+02 6.5431701e+02 4.8756541e+03 - -7.8046637e+02 6.3899720e+02 4.8756482e+03 - -7.9307278e+02 6.2343904e+02 4.8756412e+03 - -8.0537675e+02 6.0764883e+02 4.8756330e+03 - -8.1737305e+02 5.9163292e+02 4.8756236e+03 - -8.2905652e+02 5.7539772e+02 4.8756132e+03 - -8.4042215e+02 5.5894970e+02 4.8756018e+03 - -8.5146504e+02 5.4229539e+02 4.8755895e+03 - -8.6218039e+02 5.2544133e+02 4.8755763e+03 - -8.7256355e+02 5.0839414e+02 4.8755623e+03 - -8.8261001e+02 4.9116047e+02 4.8755476e+03 - -8.9231537e+02 4.7374700e+02 4.8755324e+03 - -9.0167537e+02 4.5616045e+02 4.8755166e+03 - -9.1068592e+02 4.3840758e+02 4.8755004e+03 - -9.1934303e+02 4.2049516e+02 4.8754839e+03 - -9.2764289e+02 4.0242999e+02 4.8754672e+03 - -9.3558183e+02 3.8421891e+02 4.8754504e+03 - -9.4315633e+02 3.6586877e+02 4.8754337e+03 - -9.5036301e+02 3.4738643e+02 4.8754170e+03 - -9.5719868e+02 3.2877879e+02 4.8754005e+03 - -9.6366029e+02 3.1005273e+02 4.8753843e+03 - -9.6974496e+02 2.9121518e+02 4.8753685e+03 - -9.7544995e+02 2.7227307e+02 4.8753533e+03 - -9.8077272e+02 2.5323332e+02 4.8753386e+03 - -9.8571088e+02 2.3410289e+02 4.8753247e+03 - -9.9026222e+02 2.1488873e+02 4.8753115e+03 - -9.9442468e+02 1.9559779e+02 4.8752991e+03 - -9.9819640e+02 1.7623704e+02 4.8752877e+03 - -1.0015757e+03 1.5681346e+02 4.8752773e+03 - -1.0045610e+03 1.3733401e+02 4.8752680e+03 - -1.0071510e+03 1.1780568e+02 4.8752598e+03 - -1.0093445e+03 9.8235432e+01 4.8752527e+03 - -1.0111406e+03 7.8630261e+01 4.8752469e+03 - -1.0125383e+03 5.8997147e+01 4.8752424e+03 - -1.0135372e+03 3.9343076e+01 4.8752391e+03 - -1.0141367e+03 1.9675031e+01 4.8752371e+03 - -1.0143366e+03 0.0000000e+00 4.8752365e+03 - -1.0141367e+03 -1.9675031e+01 4.8752371e+03 - -1.0135372e+03 -3.9343076e+01 4.8752391e+03 - -1.0125383e+03 -5.8997147e+01 4.8752424e+03 - -1.0111406e+03 -7.8630261e+01 4.8752469e+03 - -1.0093445e+03 -9.8235432e+01 4.8752527e+03 - -1.0071510e+03 -1.1780568e+02 4.8752598e+03 - -1.0045610e+03 -1.3733401e+02 4.8752680e+03 - -1.0015757e+03 -1.5681346e+02 4.8752773e+03 - -9.9819640e+02 -1.7623704e+02 4.8752877e+03 - -9.9442468e+02 -1.9559779e+02 4.8752991e+03 - -9.9026222e+02 -2.1488873e+02 4.8753115e+03 - -9.8571088e+02 -2.3410289e+02 4.8753247e+03 - -9.8077272e+02 -2.5323332e+02 4.8753386e+03 - -9.7544995e+02 -2.7227307e+02 4.8753533e+03 - -9.6974496e+02 -2.9121518e+02 4.8753685e+03 - -9.6366029e+02 -3.1005273e+02 4.8753843e+03 - -9.5719868e+02 -3.2877879e+02 4.8754005e+03 - -9.5036301e+02 -3.4738643e+02 4.8754170e+03 - -9.4315633e+02 -3.6586877e+02 4.8754337e+03 - -9.3558183e+02 -3.8421891e+02 4.8754504e+03 - -9.2764289e+02 -4.0242999e+02 4.8754672e+03 - -9.1934303e+02 -4.2049516e+02 4.8754839e+03 - -9.1068592e+02 -4.3840758e+02 4.8755004e+03 - -9.0167537e+02 -4.5616045e+02 4.8755166e+03 - -8.9231537e+02 -4.7374700e+02 4.8755324e+03 - -8.8261001e+02 -4.9116047e+02 4.8755476e+03 - -8.7256355e+02 -5.0839414e+02 4.8755623e+03 - -8.6218039e+02 -5.2544133e+02 4.8755763e+03 - -8.5146504e+02 -5.4229539e+02 4.8755895e+03 - -8.4042215e+02 -5.5894970e+02 4.8756018e+03 - -8.2905652e+02 -5.7539772e+02 4.8756132e+03 - -8.1737305e+02 -5.9163292e+02 4.8756236e+03 - -8.0537675e+02 -6.0764883e+02 4.8756330e+03 - -7.9307278e+02 -6.2343904e+02 4.8756412e+03 - -7.8046637e+02 -6.3899720e+02 4.8756482e+03 - -7.6756291e+02 -6.5431701e+02 4.8756541e+03 - -7.5436785e+02 -6.6939224e+02 4.8756586e+03 - -7.4088676e+02 -6.8421673e+02 4.8756619e+03 - -7.2712530e+02 -6.9878440e+02 4.8756639e+03 - -7.1308923e+02 -7.1308923e+02 4.8756645e+03 - -6.9878440e+02 -7.2712530e+02 4.8756639e+03 - -6.8421673e+02 -7.4088676e+02 4.8756619e+03 - -6.6939224e+02 -7.5436785e+02 4.8756586e+03 - -6.5431701e+02 -7.6756291e+02 4.8756541e+03 - -6.3899720e+02 -7.8046637e+02 4.8756482e+03 - -6.2343904e+02 -7.9307278e+02 4.8756412e+03 - -6.0764883e+02 -8.0537675e+02 4.8756330e+03 - -5.9163292e+02 -8.1737305e+02 4.8756236e+03 - -5.7539772e+02 -8.2905652e+02 4.8756132e+03 - -5.5894970e+02 -8.4042215e+02 4.8756018e+03 - -5.4229539e+02 -8.5146504e+02 4.8755895e+03 - -5.2544133e+02 -8.6218039e+02 4.8755763e+03 - -5.0839414e+02 -8.7256355e+02 4.8755623e+03 - -4.9116047e+02 -8.8261001e+02 4.8755476e+03 - -4.7374700e+02 -8.9231537e+02 4.8755324e+03 - -4.5616045e+02 -9.0167537e+02 4.8755166e+03 - -4.3840758e+02 -9.1068592e+02 4.8755004e+03 - -4.2049516e+02 -9.1934303e+02 4.8754839e+03 - -4.0242999e+02 -9.2764289e+02 4.8754672e+03 - -3.8421891e+02 -9.3558183e+02 4.8754504e+03 - -3.6586877e+02 -9.4315633e+02 4.8754337e+03 - -3.4738643e+02 -9.5036301e+02 4.8754170e+03 - -3.2877879e+02 -9.5719868e+02 4.8754005e+03 - -3.1005273e+02 -9.6366029e+02 4.8753843e+03 - -2.9121518e+02 -9.6974496e+02 4.8753685e+03 - -2.7227307e+02 -9.7544995e+02 4.8753533e+03 - -2.5323332e+02 -9.8077272e+02 4.8753386e+03 - -2.3410289e+02 -9.8571088e+02 4.8753247e+03 - -2.1488873e+02 -9.9026222e+02 4.8753115e+03 - -1.9559779e+02 -9.9442468e+02 4.8752991e+03 - -1.7623704e+02 -9.9819640e+02 4.8752877e+03 - -1.5681346e+02 -1.0015757e+03 4.8752773e+03 - -1.3733401e+02 -1.0045610e+03 4.8752680e+03 - -1.1780568e+02 -1.0071510e+03 4.8752598e+03 - -9.8235432e+01 -1.0093445e+03 4.8752527e+03 - -7.8630261e+01 -1.0111406e+03 4.8752469e+03 - -5.8997147e+01 -1.0125383e+03 4.8752424e+03 - -3.9343076e+01 -1.0135372e+03 4.8752391e+03 - -1.9675031e+01 -1.0141367e+03 4.8752371e+03 - 0.0000000e+00 -1.0143366e+03 4.8752365e+03 - 1.9675031e+01 -1.0141367e+03 4.8752371e+03 - 3.9343076e+01 -1.0135372e+03 4.8752391e+03 - 5.8997147e+01 -1.0125383e+03 4.8752424e+03 - 7.8630261e+01 -1.0111406e+03 4.8752469e+03 - 9.8235432e+01 -1.0093445e+03 4.8752527e+03 - 1.1780568e+02 -1.0071510e+03 4.8752598e+03 - 1.3733401e+02 -1.0045610e+03 4.8752680e+03 - 1.5681346e+02 -1.0015757e+03 4.8752773e+03 - 1.7623704e+02 -9.9819640e+02 4.8752877e+03 - 1.9559779e+02 -9.9442468e+02 4.8752991e+03 - 2.1488873e+02 -9.9026222e+02 4.8753115e+03 - 2.3410289e+02 -9.8571088e+02 4.8753247e+03 - 2.5323332e+02 -9.8077272e+02 4.8753386e+03 - 2.7227307e+02 -9.7544995e+02 4.8753533e+03 - 2.9121518e+02 -9.6974496e+02 4.8753685e+03 - 3.1005273e+02 -9.6366029e+02 4.8753843e+03 - 3.2877879e+02 -9.5719868e+02 4.8754005e+03 - 3.4738643e+02 -9.5036301e+02 4.8754170e+03 - 3.6586877e+02 -9.4315633e+02 4.8754337e+03 - 3.8421891e+02 -9.3558183e+02 4.8754504e+03 - 4.0242999e+02 -9.2764289e+02 4.8754672e+03 - 4.2049516e+02 -9.1934303e+02 4.8754839e+03 - 4.3840758e+02 -9.1068592e+02 4.8755004e+03 - 4.5616045e+02 -9.0167537e+02 4.8755166e+03 - 4.7374700e+02 -8.9231537e+02 4.8755324e+03 - 4.9116047e+02 -8.8261001e+02 4.8755476e+03 - 5.0839414e+02 -8.7256355e+02 4.8755623e+03 - 5.2544133e+02 -8.6218039e+02 4.8755763e+03 - 5.4229539e+02 -8.5146504e+02 4.8755895e+03 - 5.5894970e+02 -8.4042215e+02 4.8756018e+03 - 5.7539772e+02 -8.2905652e+02 4.8756132e+03 - 5.9163292e+02 -8.1737305e+02 4.8756236e+03 - 6.0764883e+02 -8.0537675e+02 4.8756330e+03 - 6.2343904e+02 -7.9307278e+02 4.8756412e+03 - 6.3899720e+02 -7.8046637e+02 4.8756482e+03 - 6.5431701e+02 -7.6756291e+02 4.8756541e+03 - 6.6939224e+02 -7.5436785e+02 4.8756586e+03 - 6.8421673e+02 -7.4088676e+02 4.8756619e+03 - 6.9878440e+02 -7.2712530e+02 4.8756639e+03 - 7.1308923e+02 -7.1308923e+02 4.8756645e+03 - 7.2712530e+02 -6.9878440e+02 4.8756639e+03 - 7.4088676e+02 -6.8421673e+02 4.8756619e+03 - 7.5436785e+02 -6.6939224e+02 4.8756586e+03 - 7.6756291e+02 -6.5431701e+02 4.8756541e+03 - 7.8046637e+02 -6.3899720e+02 4.8756482e+03 - 7.9307278e+02 -6.2343904e+02 4.8756412e+03 - 8.0537675e+02 -6.0764883e+02 4.8756330e+03 - 8.1737305e+02 -5.9163292e+02 4.8756236e+03 - 8.2905652e+02 -5.7539772e+02 4.8756132e+03 - 8.4042215e+02 -5.5894970e+02 4.8756018e+03 - 8.5146504e+02 -5.4229539e+02 4.8755895e+03 - 8.6218039e+02 -5.2544133e+02 4.8755763e+03 - 8.7256355e+02 -5.0839414e+02 4.8755623e+03 - 8.8261001e+02 -4.9116047e+02 4.8755476e+03 - 8.9231537e+02 -4.7374700e+02 4.8755324e+03 - 9.0167537e+02 -4.5616045e+02 4.8755166e+03 - 9.1068592e+02 -4.3840758e+02 4.8755004e+03 - 9.1934303e+02 -4.2049516e+02 4.8754839e+03 - 9.2764289e+02 -4.0242999e+02 4.8754672e+03 - 9.3558183e+02 -3.8421891e+02 4.8754504e+03 - 9.4315633e+02 -3.6586877e+02 4.8754337e+03 - 9.5036301e+02 -3.4738643e+02 4.8754170e+03 - 9.5719868e+02 -3.2877879e+02 4.8754005e+03 - 9.6366029e+02 -3.1005273e+02 4.8753843e+03 - 9.6974496e+02 -2.9121518e+02 4.8753685e+03 - 9.7544995e+02 -2.7227307e+02 4.8753533e+03 - 9.8077272e+02 -2.5323332e+02 4.8753386e+03 - 9.8571088e+02 -2.3410289e+02 4.8753247e+03 - 9.9026222e+02 -2.1488873e+02 4.8753115e+03 - 9.9442468e+02 -1.9559779e+02 4.8752991e+03 - 9.9819640e+02 -1.7623704e+02 4.8752877e+03 - 1.0015757e+03 -1.5681346e+02 4.8752773e+03 - 1.0045610e+03 -1.3733401e+02 4.8752680e+03 - 1.0071510e+03 -1.1780568e+02 4.8752598e+03 - 1.0093445e+03 -9.8235432e+01 4.8752527e+03 - 1.0111406e+03 -7.8630261e+01 4.8752469e+03 - 1.0125383e+03 -5.8997147e+01 4.8752424e+03 - 1.0135372e+03 -3.9343076e+01 4.8752391e+03 - 1.0141367e+03 -1.9675031e+01 4.8752371e+03 - 1.0143366e+03 0.0000000e+00 4.8752365e+03 - 1.1998436e+03 0.0000000e+00 4.8551372e+03 - 1.1996053e+03 2.3154901e+01 4.8551385e+03 - 1.1988905e+03 4.6301906e+01 4.8551423e+03 - 1.1976995e+03 6.9433119e+01 4.8551488e+03 - 1.1960329e+03 9.2540639e+01 4.8551578e+03 - 1.1938915e+03 1.1561656e+02 4.8551692e+03 - 1.1912763e+03 1.3865298e+02 4.8551831e+03 - 1.1881886e+03 1.6164199e+02 4.8551993e+03 - 1.1846296e+03 1.8457565e+02 4.8552176e+03 - 1.1806013e+03 2.0744605e+02 4.8552381e+03 - 1.1761053e+03 2.3024524e+02 4.8552606e+03 - 1.1711439e+03 2.5296528e+02 4.8552849e+03 - 1.1657193e+03 2.7559821e+02 4.8553109e+03 - 1.1598342e+03 2.9813607e+02 4.8553384e+03 - 1.1534912e+03 3.2057089e+02 4.8553673e+03 - 1.1466933e+03 3.4289468e+02 4.8553973e+03 - 1.1394437e+03 3.6509945e+02 4.8554284e+03 - 1.1317458e+03 3.8717721e+02 4.8554602e+03 - 1.1236031e+03 4.0911994e+02 4.8554927e+03 - 1.1150195e+03 4.3091963e+02 4.8555256e+03 - 1.1059990e+03 4.5256828e+02 4.8555587e+03 - 1.0965456e+03 4.7405786e+02 4.8555918e+03 - 1.0866638e+03 4.9538037e+02 4.8556247e+03 - 1.0763582e+03 5.1652779e+02 4.8556571e+03 - 1.0656335e+03 5.3749210e+02 4.8556890e+03 - 1.0544946e+03 5.5826533e+02 4.8557201e+03 - 1.0429466e+03 5.7883947e+02 4.8557502e+03 - 1.0309949e+03 5.9920656e+02 4.8557791e+03 - 1.0186448e+03 6.1935864e+02 4.8558066e+03 - 1.0059020e+03 6.3928780e+02 4.8558327e+03 - 9.9277220e+02 6.5898612e+02 4.8558570e+03 - 9.7926141e+02 6.7844575e+02 4.8558795e+03 - 9.6537565e+02 6.9765885e+02 4.8559000e+03 - 9.5112117e+02 7.1661763e+02 4.8559184e+03 - 9.3650430e+02 7.3531435e+02 4.8559346e+03 - 9.2153154e+02 7.5374132e+02 4.8559485e+03 - 9.0620951e+02 7.7189091e+02 4.8559600e+03 - 8.9054495e+02 7.8975555e+02 4.8559690e+03 - 8.7454470e+02 8.0732774e+02 4.8559754e+03 - 8.5821574e+02 8.2460005e+02 4.8559793e+03 - 8.4156513e+02 8.4156513e+02 4.8559806e+03 - 8.2460005e+02 8.5821574e+02 4.8559793e+03 - 8.0732774e+02 8.7454470e+02 4.8559754e+03 - 7.8975555e+02 8.9054495e+02 4.8559690e+03 - 7.7189091e+02 9.0620951e+02 4.8559600e+03 - 7.5374132e+02 9.2153154e+02 4.8559485e+03 - 7.3531435e+02 9.3650430e+02 4.8559346e+03 - 7.1661763e+02 9.5112117e+02 4.8559184e+03 - 6.9765885e+02 9.6537565e+02 4.8559000e+03 - 6.7844575e+02 9.7926141e+02 4.8558795e+03 - 6.5898612e+02 9.9277220e+02 4.8558570e+03 - 6.3928780e+02 1.0059020e+03 4.8558327e+03 - 6.1935864e+02 1.0186448e+03 4.8558066e+03 - 5.9920656e+02 1.0309949e+03 4.8557791e+03 - 5.7883947e+02 1.0429466e+03 4.8557502e+03 - 5.5826533e+02 1.0544946e+03 4.8557201e+03 - 5.3749210e+02 1.0656335e+03 4.8556890e+03 - 5.1652779e+02 1.0763582e+03 4.8556571e+03 - 4.9538037e+02 1.0866638e+03 4.8556247e+03 - 4.7405786e+02 1.0965456e+03 4.8555918e+03 - 4.5256828e+02 1.1059990e+03 4.8555587e+03 - 4.3091963e+02 1.1150195e+03 4.8555256e+03 - 4.0911994e+02 1.1236031e+03 4.8554927e+03 - 3.8717721e+02 1.1317458e+03 4.8554602e+03 - 3.6509945e+02 1.1394437e+03 4.8554284e+03 - 3.4289468e+02 1.1466933e+03 4.8553973e+03 - 3.2057089e+02 1.1534912e+03 4.8553673e+03 - 2.9813607e+02 1.1598342e+03 4.8553384e+03 - 2.7559821e+02 1.1657193e+03 4.8553109e+03 - 2.5296528e+02 1.1711439e+03 4.8552849e+03 - 2.3024524e+02 1.1761053e+03 4.8552606e+03 - 2.0744605e+02 1.1806013e+03 4.8552381e+03 - 1.8457565e+02 1.1846296e+03 4.8552176e+03 - 1.6164199e+02 1.1881886e+03 4.8551993e+03 - 1.3865298e+02 1.1912763e+03 4.8551831e+03 - 1.1561656e+02 1.1938915e+03 4.8551692e+03 - 9.2540639e+01 1.1960329e+03 4.8551578e+03 - 6.9433119e+01 1.1976995e+03 4.8551488e+03 - 4.6301906e+01 1.1988905e+03 4.8551423e+03 - 2.3154901e+01 1.1996053e+03 4.8551385e+03 - 0.0000000e+00 1.1998436e+03 4.8551372e+03 - -2.3154901e+01 1.1996053e+03 4.8551385e+03 - -4.6301906e+01 1.1988905e+03 4.8551423e+03 - -6.9433119e+01 1.1976995e+03 4.8551488e+03 - -9.2540639e+01 1.1960329e+03 4.8551578e+03 - -1.1561656e+02 1.1938915e+03 4.8551692e+03 - -1.3865298e+02 1.1912763e+03 4.8551831e+03 - -1.6164199e+02 1.1881886e+03 4.8551993e+03 - -1.8457565e+02 1.1846296e+03 4.8552176e+03 - -2.0744605e+02 1.1806013e+03 4.8552381e+03 - -2.3024524e+02 1.1761053e+03 4.8552606e+03 - -2.5296528e+02 1.1711439e+03 4.8552849e+03 - -2.7559821e+02 1.1657193e+03 4.8553109e+03 - -2.9813607e+02 1.1598342e+03 4.8553384e+03 - -3.2057089e+02 1.1534912e+03 4.8553673e+03 - -3.4289468e+02 1.1466933e+03 4.8553973e+03 - -3.6509945e+02 1.1394437e+03 4.8554284e+03 - -3.8717721e+02 1.1317458e+03 4.8554602e+03 - -4.0911994e+02 1.1236031e+03 4.8554927e+03 - -4.3091963e+02 1.1150195e+03 4.8555256e+03 - -4.5256828e+02 1.1059990e+03 4.8555587e+03 - -4.7405786e+02 1.0965456e+03 4.8555918e+03 - -4.9538037e+02 1.0866638e+03 4.8556247e+03 - -5.1652779e+02 1.0763582e+03 4.8556571e+03 - -5.3749210e+02 1.0656335e+03 4.8556890e+03 - -5.5826533e+02 1.0544946e+03 4.8557201e+03 - -5.7883947e+02 1.0429466e+03 4.8557502e+03 - -5.9920656e+02 1.0309949e+03 4.8557791e+03 - -6.1935864e+02 1.0186448e+03 4.8558066e+03 - -6.3928780e+02 1.0059020e+03 4.8558327e+03 - -6.5898612e+02 9.9277220e+02 4.8558570e+03 - -6.7844575e+02 9.7926141e+02 4.8558795e+03 - -6.9765885e+02 9.6537565e+02 4.8559000e+03 - -7.1661763e+02 9.5112117e+02 4.8559184e+03 - -7.3531435e+02 9.3650430e+02 4.8559346e+03 - -7.5374132e+02 9.2153154e+02 4.8559485e+03 - -7.7189091e+02 9.0620951e+02 4.8559600e+03 - -7.8975555e+02 8.9054495e+02 4.8559690e+03 - -8.0732774e+02 8.7454470e+02 4.8559754e+03 - -8.2460005e+02 8.5821574e+02 4.8559793e+03 - -8.4156513e+02 8.4156513e+02 4.8559806e+03 - -8.5821574e+02 8.2460005e+02 4.8559793e+03 - -8.7454470e+02 8.0732774e+02 4.8559754e+03 - -8.9054495e+02 7.8975555e+02 4.8559690e+03 - -9.0620951e+02 7.7189091e+02 4.8559600e+03 - -9.2153154e+02 7.5374132e+02 4.8559485e+03 - -9.3650430e+02 7.3531435e+02 4.8559346e+03 - -9.5112117e+02 7.1661763e+02 4.8559184e+03 - -9.6537565e+02 6.9765885e+02 4.8559000e+03 - -9.7926141e+02 6.7844575e+02 4.8558795e+03 - -9.9277220e+02 6.5898612e+02 4.8558570e+03 - -1.0059020e+03 6.3928780e+02 4.8558327e+03 - -1.0186448e+03 6.1935864e+02 4.8558066e+03 - -1.0309949e+03 5.9920656e+02 4.8557791e+03 - -1.0429466e+03 5.7883947e+02 4.8557502e+03 - -1.0544946e+03 5.5826533e+02 4.8557201e+03 - -1.0656335e+03 5.3749210e+02 4.8556890e+03 - -1.0763582e+03 5.1652779e+02 4.8556571e+03 - -1.0866638e+03 4.9538037e+02 4.8556247e+03 - -1.0965456e+03 4.7405786e+02 4.8555918e+03 - -1.1059990e+03 4.5256828e+02 4.8555587e+03 - -1.1150195e+03 4.3091963e+02 4.8555256e+03 - -1.1236031e+03 4.0911994e+02 4.8554927e+03 - -1.1317458e+03 3.8717721e+02 4.8554602e+03 - -1.1394437e+03 3.6509945e+02 4.8554284e+03 - -1.1466933e+03 3.4289468e+02 4.8553973e+03 - -1.1534912e+03 3.2057089e+02 4.8553673e+03 - -1.1598342e+03 2.9813607e+02 4.8553384e+03 - -1.1657193e+03 2.7559821e+02 4.8553109e+03 - -1.1711439e+03 2.5296528e+02 4.8552849e+03 - -1.1761053e+03 2.3024524e+02 4.8552606e+03 - -1.1806013e+03 2.0744605e+02 4.8552381e+03 - -1.1846296e+03 1.8457565e+02 4.8552176e+03 - -1.1881886e+03 1.6164199e+02 4.8551993e+03 - -1.1912763e+03 1.3865298e+02 4.8551831e+03 - -1.1938915e+03 1.1561656e+02 4.8551692e+03 - -1.1960329e+03 9.2540639e+01 4.8551578e+03 - -1.1976995e+03 6.9433119e+01 4.8551488e+03 - -1.1988905e+03 4.6301906e+01 4.8551423e+03 - -1.1996053e+03 2.3154901e+01 4.8551385e+03 - -1.1998436e+03 0.0000000e+00 4.8551372e+03 - -1.1996053e+03 -2.3154901e+01 4.8551385e+03 - -1.1988905e+03 -4.6301906e+01 4.8551423e+03 - -1.1976995e+03 -6.9433119e+01 4.8551488e+03 - -1.1960329e+03 -9.2540639e+01 4.8551578e+03 - -1.1938915e+03 -1.1561656e+02 4.8551692e+03 - -1.1912763e+03 -1.3865298e+02 4.8551831e+03 - -1.1881886e+03 -1.6164199e+02 4.8551993e+03 - -1.1846296e+03 -1.8457565e+02 4.8552176e+03 - -1.1806013e+03 -2.0744605e+02 4.8552381e+03 - -1.1761053e+03 -2.3024524e+02 4.8552606e+03 - -1.1711439e+03 -2.5296528e+02 4.8552849e+03 - -1.1657193e+03 -2.7559821e+02 4.8553109e+03 - -1.1598342e+03 -2.9813607e+02 4.8553384e+03 - -1.1534912e+03 -3.2057089e+02 4.8553673e+03 - -1.1466933e+03 -3.4289468e+02 4.8553973e+03 - -1.1394437e+03 -3.6509945e+02 4.8554284e+03 - -1.1317458e+03 -3.8717721e+02 4.8554602e+03 - -1.1236031e+03 -4.0911994e+02 4.8554927e+03 - -1.1150195e+03 -4.3091963e+02 4.8555256e+03 - -1.1059990e+03 -4.5256828e+02 4.8555587e+03 - -1.0965456e+03 -4.7405786e+02 4.8555918e+03 - -1.0866638e+03 -4.9538037e+02 4.8556247e+03 - -1.0763582e+03 -5.1652779e+02 4.8556571e+03 - -1.0656335e+03 -5.3749210e+02 4.8556890e+03 - -1.0544946e+03 -5.5826533e+02 4.8557201e+03 - -1.0429466e+03 -5.7883947e+02 4.8557502e+03 - -1.0309949e+03 -5.9920656e+02 4.8557791e+03 - -1.0186448e+03 -6.1935864e+02 4.8558066e+03 - -1.0059020e+03 -6.3928780e+02 4.8558327e+03 - -9.9277220e+02 -6.5898612e+02 4.8558570e+03 - -9.7926141e+02 -6.7844575e+02 4.8558795e+03 - -9.6537565e+02 -6.9765885e+02 4.8559000e+03 - -9.5112117e+02 -7.1661763e+02 4.8559184e+03 - -9.3650430e+02 -7.3531435e+02 4.8559346e+03 - -9.2153154e+02 -7.5374132e+02 4.8559485e+03 - -9.0620951e+02 -7.7189091e+02 4.8559600e+03 - -8.9054495e+02 -7.8975555e+02 4.8559690e+03 - -8.7454470e+02 -8.0732774e+02 4.8559754e+03 - -8.5821574e+02 -8.2460005e+02 4.8559793e+03 - -8.4156513e+02 -8.4156513e+02 4.8559806e+03 - -8.2460005e+02 -8.5821574e+02 4.8559793e+03 - -8.0732774e+02 -8.7454470e+02 4.8559754e+03 - -7.8975555e+02 -8.9054495e+02 4.8559690e+03 - -7.7189091e+02 -9.0620951e+02 4.8559600e+03 - -7.5374132e+02 -9.2153154e+02 4.8559485e+03 - -7.3531435e+02 -9.3650430e+02 4.8559346e+03 - -7.1661763e+02 -9.5112117e+02 4.8559184e+03 - -6.9765885e+02 -9.6537565e+02 4.8559000e+03 - -6.7844575e+02 -9.7926141e+02 4.8558795e+03 - -6.5898612e+02 -9.9277220e+02 4.8558570e+03 - -6.3928780e+02 -1.0059020e+03 4.8558327e+03 - -6.1935864e+02 -1.0186448e+03 4.8558066e+03 - -5.9920656e+02 -1.0309949e+03 4.8557791e+03 - -5.7883947e+02 -1.0429466e+03 4.8557502e+03 - -5.5826533e+02 -1.0544946e+03 4.8557201e+03 - -5.3749210e+02 -1.0656335e+03 4.8556890e+03 - -5.1652779e+02 -1.0763582e+03 4.8556571e+03 - -4.9538037e+02 -1.0866638e+03 4.8556247e+03 - -4.7405786e+02 -1.0965456e+03 4.8555918e+03 - -4.5256828e+02 -1.1059990e+03 4.8555587e+03 - -4.3091963e+02 -1.1150195e+03 4.8555256e+03 - -4.0911994e+02 -1.1236031e+03 4.8554927e+03 - -3.8717721e+02 -1.1317458e+03 4.8554602e+03 - -3.6509945e+02 -1.1394437e+03 4.8554284e+03 - -3.4289468e+02 -1.1466933e+03 4.8553973e+03 - -3.2057089e+02 -1.1534912e+03 4.8553673e+03 - -2.9813607e+02 -1.1598342e+03 4.8553384e+03 - -2.7559821e+02 -1.1657193e+03 4.8553109e+03 - -2.5296528e+02 -1.1711439e+03 4.8552849e+03 - -2.3024524e+02 -1.1761053e+03 4.8552606e+03 - -2.0744605e+02 -1.1806013e+03 4.8552381e+03 - -1.8457565e+02 -1.1846296e+03 4.8552176e+03 - -1.6164199e+02 -1.1881886e+03 4.8551993e+03 - -1.3865298e+02 -1.1912763e+03 4.8551831e+03 - -1.1561656e+02 -1.1938915e+03 4.8551692e+03 - -9.2540639e+01 -1.1960329e+03 4.8551578e+03 - -6.9433119e+01 -1.1976995e+03 4.8551488e+03 - -4.6301906e+01 -1.1988905e+03 4.8551423e+03 - -2.3154901e+01 -1.1996053e+03 4.8551385e+03 - 0.0000000e+00 -1.1998436e+03 4.8551372e+03 - 2.3154901e+01 -1.1996053e+03 4.8551385e+03 - 4.6301906e+01 -1.1988905e+03 4.8551423e+03 - 6.9433119e+01 -1.1976995e+03 4.8551488e+03 - 9.2540639e+01 -1.1960329e+03 4.8551578e+03 - 1.1561656e+02 -1.1938915e+03 4.8551692e+03 - 1.3865298e+02 -1.1912763e+03 4.8551831e+03 - 1.6164199e+02 -1.1881886e+03 4.8551993e+03 - 1.8457565e+02 -1.1846296e+03 4.8552176e+03 - 2.0744605e+02 -1.1806013e+03 4.8552381e+03 - 2.3024524e+02 -1.1761053e+03 4.8552606e+03 - 2.5296528e+02 -1.1711439e+03 4.8552849e+03 - 2.7559821e+02 -1.1657193e+03 4.8553109e+03 - 2.9813607e+02 -1.1598342e+03 4.8553384e+03 - 3.2057089e+02 -1.1534912e+03 4.8553673e+03 - 3.4289468e+02 -1.1466933e+03 4.8553973e+03 - 3.6509945e+02 -1.1394437e+03 4.8554284e+03 - 3.8717721e+02 -1.1317458e+03 4.8554602e+03 - 4.0911994e+02 -1.1236031e+03 4.8554927e+03 - 4.3091963e+02 -1.1150195e+03 4.8555256e+03 - 4.5256828e+02 -1.1059990e+03 4.8555587e+03 - 4.7405786e+02 -1.0965456e+03 4.8555918e+03 - 4.9538037e+02 -1.0866638e+03 4.8556247e+03 - 5.1652779e+02 -1.0763582e+03 4.8556571e+03 - 5.3749210e+02 -1.0656335e+03 4.8556890e+03 - 5.5826533e+02 -1.0544946e+03 4.8557201e+03 - 5.7883947e+02 -1.0429466e+03 4.8557502e+03 - 5.9920656e+02 -1.0309949e+03 4.8557791e+03 - 6.1935864e+02 -1.0186448e+03 4.8558066e+03 - 6.3928780e+02 -1.0059020e+03 4.8558327e+03 - 6.5898612e+02 -9.9277220e+02 4.8558570e+03 - 6.7844575e+02 -9.7926141e+02 4.8558795e+03 - 6.9765885e+02 -9.6537565e+02 4.8559000e+03 - 7.1661763e+02 -9.5112117e+02 4.8559184e+03 - 7.3531435e+02 -9.3650430e+02 4.8559346e+03 - 7.5374132e+02 -9.2153154e+02 4.8559485e+03 - 7.7189091e+02 -9.0620951e+02 4.8559600e+03 - 7.8975555e+02 -8.9054495e+02 4.8559690e+03 - 8.0732774e+02 -8.7454470e+02 4.8559754e+03 - 8.2460005e+02 -8.5821574e+02 4.8559793e+03 - 8.4156513e+02 -8.4156513e+02 4.8559806e+03 - 8.5821574e+02 -8.2460005e+02 4.8559793e+03 - 8.7454470e+02 -8.0732774e+02 4.8559754e+03 - 8.9054495e+02 -7.8975555e+02 4.8559690e+03 - 9.0620951e+02 -7.7189091e+02 4.8559600e+03 - 9.2153154e+02 -7.5374132e+02 4.8559485e+03 - 9.3650430e+02 -7.3531435e+02 4.8559346e+03 - 9.5112117e+02 -7.1661763e+02 4.8559184e+03 - 9.6537565e+02 -6.9765885e+02 4.8559000e+03 - 9.7926141e+02 -6.7844575e+02 4.8558795e+03 - 9.9277220e+02 -6.5898612e+02 4.8558570e+03 - 1.0059020e+03 -6.3928780e+02 4.8558327e+03 - 1.0186448e+03 -6.1935864e+02 4.8558066e+03 - 1.0309949e+03 -5.9920656e+02 4.8557791e+03 - 1.0429466e+03 -5.7883947e+02 4.8557502e+03 - 1.0544946e+03 -5.5826533e+02 4.8557201e+03 - 1.0656335e+03 -5.3749210e+02 4.8556890e+03 - 1.0763582e+03 -5.1652779e+02 4.8556571e+03 - 1.0866638e+03 -4.9538037e+02 4.8556247e+03 - 1.0965456e+03 -4.7405786e+02 4.8555918e+03 - 1.1059990e+03 -4.5256828e+02 4.8555587e+03 - 1.1150195e+03 -4.3091963e+02 4.8555256e+03 - 1.1236031e+03 -4.0911994e+02 4.8554927e+03 - 1.1317458e+03 -3.8717721e+02 4.8554602e+03 - 1.1394437e+03 -3.6509945e+02 4.8554284e+03 - 1.1466933e+03 -3.4289468e+02 4.8553973e+03 - 1.1534912e+03 -3.2057089e+02 4.8553673e+03 - 1.1598342e+03 -2.9813607e+02 4.8553384e+03 - 1.1657193e+03 -2.7559821e+02 4.8553109e+03 - 1.1711439e+03 -2.5296528e+02 4.8552849e+03 - 1.1761053e+03 -2.3024524e+02 4.8552606e+03 - 1.1806013e+03 -2.0744605e+02 4.8552381e+03 - 1.1846296e+03 -1.8457565e+02 4.8552176e+03 - 1.1881886e+03 -1.6164199e+02 4.8551993e+03 - 1.1912763e+03 -1.3865298e+02 4.8551831e+03 - 1.1938915e+03 -1.1561656e+02 4.8551692e+03 - 1.1960329e+03 -9.2540639e+01 4.8551578e+03 - 1.1976995e+03 -6.9433119e+01 4.8551488e+03 - 1.1988905e+03 -4.6301906e+01 4.8551423e+03 - 1.1996053e+03 -2.3154901e+01 4.8551385e+03 - 1.1998436e+03 0.0000000e+00 4.8551372e+03 - 1.3772493e+03 0.0000000e+00 4.8323848e+03 - 1.3769735e+03 2.6423288e+01 4.8323871e+03 - 1.3761461e+03 5.2838016e+01 4.8323938e+03 - 1.3747677e+03 7.9235620e+01 4.8324051e+03 - 1.3728387e+03 1.0560753e+02 4.8324208e+03 - 1.3703603e+03 1.3194516e+02 4.8324408e+03 - 1.3673335e+03 1.5823992e+02 4.8324650e+03 - 1.3637599e+03 1.8448319e+02 4.8324933e+03 - 1.3596411e+03 2.1066632e+02 4.8325254e+03 - 1.3549792e+03 2.3678067e+02 4.8325612e+03 - 1.3497765e+03 2.6281755e+02 4.8326005e+03 - 1.3440355e+03 2.8876822e+02 4.8326430e+03 - 1.3377589e+03 3.1462395e+02 4.8326884e+03 - 1.3309497e+03 3.4037594e+02 4.8327365e+03 - 1.3236114e+03 3.6601539e+02 4.8327870e+03 - 1.3157475e+03 3.9153343e+02 4.8328395e+03 - 1.3073617e+03 4.1692117e+02 4.8328938e+03 - 1.2984581e+03 4.4216969e+02 4.8329495e+03 - 1.2890410e+03 4.6727001e+02 4.8330063e+03 - 1.2791150e+03 4.9221315e+02 4.8330638e+03 - 1.2686849e+03 5.1699005e+02 4.8331217e+03 - 1.2577556e+03 5.4159167e+02 4.8331795e+03 - 1.2463326e+03 5.6600889e+02 4.8332371e+03 - 1.2344212e+03 5.9023259e+02 4.8332939e+03 - 1.2220272e+03 6.1425362e+02 4.8333496e+03 - 1.2091565e+03 6.3806281e+02 4.8334040e+03 - 1.1958152e+03 6.6165097e+02 4.8334566e+03 - 1.1820099e+03 6.8500891e+02 4.8335072e+03 - 1.1677469e+03 7.0812741e+02 4.8335554e+03 - 1.1530331e+03 7.3099726e+02 4.8336009e+03 - 1.1378754e+03 7.5360927e+02 4.8336435e+03 - 1.1222810e+03 7.7595424e+02 4.8336828e+03 - 1.1062572e+03 7.9802300e+02 4.8337187e+03 - 1.0898115e+03 8.1980639e+02 4.8337509e+03 - 1.0729516e+03 8.4129530e+02 4.8337793e+03 - 1.0556852e+03 8.6248064e+02 4.8338036e+03 - 1.0380203e+03 8.8335339e+02 4.8338236e+03 - 1.0199651e+03 9.0390457e+02 4.8338394e+03 - 1.0015277e+03 9.2412527e+02 4.8338507e+03 - 9.8271646e+02 9.4400664e+02 4.8338575e+03 - 9.6353993e+02 9.6353993e+02 4.8338598e+03 - 9.4400664e+02 9.8271646e+02 4.8338575e+03 - 9.2412527e+02 1.0015277e+03 4.8338507e+03 - 9.0390457e+02 1.0199651e+03 4.8338394e+03 - 8.8335339e+02 1.0380203e+03 4.8338236e+03 - 8.6248064e+02 1.0556852e+03 4.8338036e+03 - 8.4129530e+02 1.0729516e+03 4.8337793e+03 - 8.1980639e+02 1.0898115e+03 4.8337509e+03 - 7.9802300e+02 1.1062572e+03 4.8337187e+03 - 7.7595424e+02 1.1222810e+03 4.8336828e+03 - 7.5360927e+02 1.1378754e+03 4.8336435e+03 - 7.3099726e+02 1.1530331e+03 4.8336009e+03 - 7.0812741e+02 1.1677469e+03 4.8335554e+03 - 6.8500891e+02 1.1820099e+03 4.8335072e+03 - 6.6165097e+02 1.1958152e+03 4.8334566e+03 - 6.3806281e+02 1.2091565e+03 4.8334040e+03 - 6.1425362e+02 1.2220272e+03 4.8333496e+03 - 5.9023259e+02 1.2344212e+03 4.8332939e+03 - 5.6600889e+02 1.2463326e+03 4.8332371e+03 - 5.4159167e+02 1.2577556e+03 4.8331795e+03 - 5.1699005e+02 1.2686849e+03 4.8331217e+03 - 4.9221315e+02 1.2791150e+03 4.8330638e+03 - 4.6727001e+02 1.2890410e+03 4.8330063e+03 - 4.4216969e+02 1.2984581e+03 4.8329495e+03 - 4.1692117e+02 1.3073617e+03 4.8328938e+03 - 3.9153343e+02 1.3157475e+03 4.8328395e+03 - 3.6601539e+02 1.3236114e+03 4.8327870e+03 - 3.4037594e+02 1.3309497e+03 4.8327365e+03 - 3.1462395e+02 1.3377589e+03 4.8326884e+03 - 2.8876822e+02 1.3440355e+03 4.8326430e+03 - 2.6281755e+02 1.3497765e+03 4.8326005e+03 - 2.3678067e+02 1.3549792e+03 4.8325612e+03 - 2.1066632e+02 1.3596411e+03 4.8325254e+03 - 1.8448319e+02 1.3637599e+03 4.8324933e+03 - 1.5823992e+02 1.3673335e+03 4.8324650e+03 - 1.3194516e+02 1.3703603e+03 4.8324408e+03 - 1.0560753e+02 1.3728387e+03 4.8324208e+03 - 7.9235620e+01 1.3747677e+03 4.8324051e+03 - 5.2838016e+01 1.3761461e+03 4.8323938e+03 - 2.6423288e+01 1.3769735e+03 4.8323871e+03 - 0.0000000e+00 1.3772493e+03 4.8323848e+03 - -2.6423288e+01 1.3769735e+03 4.8323871e+03 - -5.2838016e+01 1.3761461e+03 4.8323938e+03 - -7.9235620e+01 1.3747677e+03 4.8324051e+03 - -1.0560753e+02 1.3728387e+03 4.8324208e+03 - -1.3194516e+02 1.3703603e+03 4.8324408e+03 - -1.5823992e+02 1.3673335e+03 4.8324650e+03 - -1.8448319e+02 1.3637599e+03 4.8324933e+03 - -2.1066632e+02 1.3596411e+03 4.8325254e+03 - -2.3678067e+02 1.3549792e+03 4.8325612e+03 - -2.6281755e+02 1.3497765e+03 4.8326005e+03 - -2.8876822e+02 1.3440355e+03 4.8326430e+03 - -3.1462395e+02 1.3377589e+03 4.8326884e+03 - -3.4037594e+02 1.3309497e+03 4.8327365e+03 - -3.6601539e+02 1.3236114e+03 4.8327870e+03 - -3.9153343e+02 1.3157475e+03 4.8328395e+03 - -4.1692117e+02 1.3073617e+03 4.8328938e+03 - -4.4216969e+02 1.2984581e+03 4.8329495e+03 - -4.6727001e+02 1.2890410e+03 4.8330063e+03 - -4.9221315e+02 1.2791150e+03 4.8330638e+03 - -5.1699005e+02 1.2686849e+03 4.8331217e+03 - -5.4159167e+02 1.2577556e+03 4.8331795e+03 - -5.6600889e+02 1.2463326e+03 4.8332371e+03 - -5.9023259e+02 1.2344212e+03 4.8332939e+03 - -6.1425362e+02 1.2220272e+03 4.8333496e+03 - -6.3806281e+02 1.2091565e+03 4.8334040e+03 - -6.6165097e+02 1.1958152e+03 4.8334566e+03 - -6.8500891e+02 1.1820099e+03 4.8335072e+03 - -7.0812741e+02 1.1677469e+03 4.8335554e+03 - -7.3099726e+02 1.1530331e+03 4.8336009e+03 - -7.5360927e+02 1.1378754e+03 4.8336435e+03 - -7.7595424e+02 1.1222810e+03 4.8336828e+03 - -7.9802300e+02 1.1062572e+03 4.8337187e+03 - -8.1980639e+02 1.0898115e+03 4.8337509e+03 - -8.4129530e+02 1.0729516e+03 4.8337793e+03 - -8.6248064e+02 1.0556852e+03 4.8338036e+03 - -8.8335339e+02 1.0380203e+03 4.8338236e+03 - -9.0390457e+02 1.0199651e+03 4.8338394e+03 - -9.2412527e+02 1.0015277e+03 4.8338507e+03 - -9.4400664e+02 9.8271646e+02 4.8338575e+03 - -9.6353993e+02 9.6353993e+02 4.8338598e+03 - -9.8271646e+02 9.4400664e+02 4.8338575e+03 - -1.0015277e+03 9.2412527e+02 4.8338507e+03 - -1.0199651e+03 9.0390457e+02 4.8338394e+03 - -1.0380203e+03 8.8335339e+02 4.8338236e+03 - -1.0556852e+03 8.6248064e+02 4.8338036e+03 - -1.0729516e+03 8.4129530e+02 4.8337793e+03 - -1.0898115e+03 8.1980639e+02 4.8337509e+03 - -1.1062572e+03 7.9802300e+02 4.8337187e+03 - -1.1222810e+03 7.7595424e+02 4.8336828e+03 - -1.1378754e+03 7.5360927e+02 4.8336435e+03 - -1.1530331e+03 7.3099726e+02 4.8336009e+03 - -1.1677469e+03 7.0812741e+02 4.8335554e+03 - -1.1820099e+03 6.8500891e+02 4.8335072e+03 - -1.1958152e+03 6.6165097e+02 4.8334566e+03 - -1.2091565e+03 6.3806281e+02 4.8334040e+03 - -1.2220272e+03 6.1425362e+02 4.8333496e+03 - -1.2344212e+03 5.9023259e+02 4.8332939e+03 - -1.2463326e+03 5.6600889e+02 4.8332371e+03 - -1.2577556e+03 5.4159167e+02 4.8331795e+03 - -1.2686849e+03 5.1699005e+02 4.8331217e+03 - -1.2791150e+03 4.9221315e+02 4.8330638e+03 - -1.2890410e+03 4.6727001e+02 4.8330063e+03 - -1.2984581e+03 4.4216969e+02 4.8329495e+03 - -1.3073617e+03 4.1692117e+02 4.8328938e+03 - -1.3157475e+03 3.9153343e+02 4.8328395e+03 - -1.3236114e+03 3.6601539e+02 4.8327870e+03 - -1.3309497e+03 3.4037594e+02 4.8327365e+03 - -1.3377589e+03 3.1462395e+02 4.8326884e+03 - -1.3440355e+03 2.8876822e+02 4.8326430e+03 - -1.3497765e+03 2.6281755e+02 4.8326005e+03 - -1.3549792e+03 2.3678067e+02 4.8325612e+03 - -1.3596411e+03 2.1066632e+02 4.8325254e+03 - -1.3637599e+03 1.8448319e+02 4.8324933e+03 - -1.3673335e+03 1.5823992e+02 4.8324650e+03 - -1.3703603e+03 1.3194516e+02 4.8324408e+03 - -1.3728387e+03 1.0560753e+02 4.8324208e+03 - -1.3747677e+03 7.9235620e+01 4.8324051e+03 - -1.3761461e+03 5.2838016e+01 4.8323938e+03 - -1.3769735e+03 2.6423288e+01 4.8323871e+03 - -1.3772493e+03 0.0000000e+00 4.8323848e+03 - -1.3769735e+03 -2.6423288e+01 4.8323871e+03 - -1.3761461e+03 -5.2838016e+01 4.8323938e+03 - -1.3747677e+03 -7.9235620e+01 4.8324051e+03 - -1.3728387e+03 -1.0560753e+02 4.8324208e+03 - -1.3703603e+03 -1.3194516e+02 4.8324408e+03 - -1.3673335e+03 -1.5823992e+02 4.8324650e+03 - -1.3637599e+03 -1.8448319e+02 4.8324933e+03 - -1.3596411e+03 -2.1066632e+02 4.8325254e+03 - -1.3549792e+03 -2.3678067e+02 4.8325612e+03 - -1.3497765e+03 -2.6281755e+02 4.8326005e+03 - -1.3440355e+03 -2.8876822e+02 4.8326430e+03 - -1.3377589e+03 -3.1462395e+02 4.8326884e+03 - -1.3309497e+03 -3.4037594e+02 4.8327365e+03 - -1.3236114e+03 -3.6601539e+02 4.8327870e+03 - -1.3157475e+03 -3.9153343e+02 4.8328395e+03 - -1.3073617e+03 -4.1692117e+02 4.8328938e+03 - -1.2984581e+03 -4.4216969e+02 4.8329495e+03 - -1.2890410e+03 -4.6727001e+02 4.8330063e+03 - -1.2791150e+03 -4.9221315e+02 4.8330638e+03 - -1.2686849e+03 -5.1699005e+02 4.8331217e+03 - -1.2577556e+03 -5.4159167e+02 4.8331795e+03 - -1.2463326e+03 -5.6600889e+02 4.8332371e+03 - -1.2344212e+03 -5.9023259e+02 4.8332939e+03 - -1.2220272e+03 -6.1425362e+02 4.8333496e+03 - -1.2091565e+03 -6.3806281e+02 4.8334040e+03 - -1.1958152e+03 -6.6165097e+02 4.8334566e+03 - -1.1820099e+03 -6.8500891e+02 4.8335072e+03 - -1.1677469e+03 -7.0812741e+02 4.8335554e+03 - -1.1530331e+03 -7.3099726e+02 4.8336009e+03 - -1.1378754e+03 -7.5360927e+02 4.8336435e+03 - -1.1222810e+03 -7.7595424e+02 4.8336828e+03 - -1.1062572e+03 -7.9802300e+02 4.8337187e+03 - -1.0898115e+03 -8.1980639e+02 4.8337509e+03 - -1.0729516e+03 -8.4129530e+02 4.8337793e+03 - -1.0556852e+03 -8.6248064e+02 4.8338036e+03 - -1.0380203e+03 -8.8335339e+02 4.8338236e+03 - -1.0199651e+03 -9.0390457e+02 4.8338394e+03 - -1.0015277e+03 -9.2412527e+02 4.8338507e+03 - -9.8271646e+02 -9.4400664e+02 4.8338575e+03 - -9.6353993e+02 -9.6353993e+02 4.8338598e+03 - -9.4400664e+02 -9.8271646e+02 4.8338575e+03 - -9.2412527e+02 -1.0015277e+03 4.8338507e+03 - -9.0390457e+02 -1.0199651e+03 4.8338394e+03 - -8.8335339e+02 -1.0380203e+03 4.8338236e+03 - -8.6248064e+02 -1.0556852e+03 4.8338036e+03 - -8.4129530e+02 -1.0729516e+03 4.8337793e+03 - -8.1980639e+02 -1.0898115e+03 4.8337509e+03 - -7.9802300e+02 -1.1062572e+03 4.8337187e+03 - -7.7595424e+02 -1.1222810e+03 4.8336828e+03 - -7.5360927e+02 -1.1378754e+03 4.8336435e+03 - -7.3099726e+02 -1.1530331e+03 4.8336009e+03 - -7.0812741e+02 -1.1677469e+03 4.8335554e+03 - -6.8500891e+02 -1.1820099e+03 4.8335072e+03 - -6.6165097e+02 -1.1958152e+03 4.8334566e+03 - -6.3806281e+02 -1.2091565e+03 4.8334040e+03 - -6.1425362e+02 -1.2220272e+03 4.8333496e+03 - -5.9023259e+02 -1.2344212e+03 4.8332939e+03 - -5.6600889e+02 -1.2463326e+03 4.8332371e+03 - -5.4159167e+02 -1.2577556e+03 4.8331795e+03 - -5.1699005e+02 -1.2686849e+03 4.8331217e+03 - -4.9221315e+02 -1.2791150e+03 4.8330638e+03 - -4.6727001e+02 -1.2890410e+03 4.8330063e+03 - -4.4216969e+02 -1.2984581e+03 4.8329495e+03 - -4.1692117e+02 -1.3073617e+03 4.8328938e+03 - -3.9153343e+02 -1.3157475e+03 4.8328395e+03 - -3.6601539e+02 -1.3236114e+03 4.8327870e+03 - -3.4037594e+02 -1.3309497e+03 4.8327365e+03 - -3.1462395e+02 -1.3377589e+03 4.8326884e+03 - -2.8876822e+02 -1.3440355e+03 4.8326430e+03 - -2.6281755e+02 -1.3497765e+03 4.8326005e+03 - -2.3678067e+02 -1.3549792e+03 4.8325612e+03 - -2.1066632e+02 -1.3596411e+03 4.8325254e+03 - -1.8448319e+02 -1.3637599e+03 4.8324933e+03 - -1.5823992e+02 -1.3673335e+03 4.8324650e+03 - -1.3194516e+02 -1.3703603e+03 4.8324408e+03 - -1.0560753e+02 -1.3728387e+03 4.8324208e+03 - -7.9235620e+01 -1.3747677e+03 4.8324051e+03 - -5.2838016e+01 -1.3761461e+03 4.8323938e+03 - -2.6423288e+01 -1.3769735e+03 4.8323871e+03 - 0.0000000e+00 -1.3772493e+03 4.8323848e+03 - 2.6423288e+01 -1.3769735e+03 4.8323871e+03 - 5.2838016e+01 -1.3761461e+03 4.8323938e+03 - 7.9235620e+01 -1.3747677e+03 4.8324051e+03 - 1.0560753e+02 -1.3728387e+03 4.8324208e+03 - 1.3194516e+02 -1.3703603e+03 4.8324408e+03 - 1.5823992e+02 -1.3673335e+03 4.8324650e+03 - 1.8448319e+02 -1.3637599e+03 4.8324933e+03 - 2.1066632e+02 -1.3596411e+03 4.8325254e+03 - 2.3678067e+02 -1.3549792e+03 4.8325612e+03 - 2.6281755e+02 -1.3497765e+03 4.8326005e+03 - 2.8876822e+02 -1.3440355e+03 4.8326430e+03 - 3.1462395e+02 -1.3377589e+03 4.8326884e+03 - 3.4037594e+02 -1.3309497e+03 4.8327365e+03 - 3.6601539e+02 -1.3236114e+03 4.8327870e+03 - 3.9153343e+02 -1.3157475e+03 4.8328395e+03 - 4.1692117e+02 -1.3073617e+03 4.8328938e+03 - 4.4216969e+02 -1.2984581e+03 4.8329495e+03 - 4.6727001e+02 -1.2890410e+03 4.8330063e+03 - 4.9221315e+02 -1.2791150e+03 4.8330638e+03 - 5.1699005e+02 -1.2686849e+03 4.8331217e+03 - 5.4159167e+02 -1.2577556e+03 4.8331795e+03 - 5.6600889e+02 -1.2463326e+03 4.8332371e+03 - 5.9023259e+02 -1.2344212e+03 4.8332939e+03 - 6.1425362e+02 -1.2220272e+03 4.8333496e+03 - 6.3806281e+02 -1.2091565e+03 4.8334040e+03 - 6.6165097e+02 -1.1958152e+03 4.8334566e+03 - 6.8500891e+02 -1.1820099e+03 4.8335072e+03 - 7.0812741e+02 -1.1677469e+03 4.8335554e+03 - 7.3099726e+02 -1.1530331e+03 4.8336009e+03 - 7.5360927e+02 -1.1378754e+03 4.8336435e+03 - 7.7595424e+02 -1.1222810e+03 4.8336828e+03 - 7.9802300e+02 -1.1062572e+03 4.8337187e+03 - 8.1980639e+02 -1.0898115e+03 4.8337509e+03 - 8.4129530e+02 -1.0729516e+03 4.8337793e+03 - 8.6248064e+02 -1.0556852e+03 4.8338036e+03 - 8.8335339e+02 -1.0380203e+03 4.8338236e+03 - 9.0390457e+02 -1.0199651e+03 4.8338394e+03 - 9.2412527e+02 -1.0015277e+03 4.8338507e+03 - 9.4400664e+02 -9.8271646e+02 4.8338575e+03 - 9.6353993e+02 -9.6353993e+02 4.8338598e+03 - 9.8271646e+02 -9.4400664e+02 4.8338575e+03 - 1.0015277e+03 -9.2412527e+02 4.8338507e+03 - 1.0199651e+03 -9.0390457e+02 4.8338394e+03 - 1.0380203e+03 -8.8335339e+02 4.8338236e+03 - 1.0556852e+03 -8.6248064e+02 4.8338036e+03 - 1.0729516e+03 -8.4129530e+02 4.8337793e+03 - 1.0898115e+03 -8.1980639e+02 4.8337509e+03 - 1.1062572e+03 -7.9802300e+02 4.8337187e+03 - 1.1222810e+03 -7.7595424e+02 4.8336828e+03 - 1.1378754e+03 -7.5360927e+02 4.8336435e+03 - 1.1530331e+03 -7.3099726e+02 4.8336009e+03 - 1.1677469e+03 -7.0812741e+02 4.8335554e+03 - 1.1820099e+03 -6.8500891e+02 4.8335072e+03 - 1.1958152e+03 -6.6165097e+02 4.8334566e+03 - 1.2091565e+03 -6.3806281e+02 4.8334040e+03 - 1.2220272e+03 -6.1425362e+02 4.8333496e+03 - 1.2344212e+03 -5.9023259e+02 4.8332939e+03 - 1.2463326e+03 -5.6600889e+02 4.8332371e+03 - 1.2577556e+03 -5.4159167e+02 4.8331795e+03 - 1.2686849e+03 -5.1699005e+02 4.8331217e+03 - 1.2791150e+03 -4.9221315e+02 4.8330638e+03 - 1.2890410e+03 -4.6727001e+02 4.8330063e+03 - 1.2984581e+03 -4.4216969e+02 4.8329495e+03 - 1.3073617e+03 -4.1692117e+02 4.8328938e+03 - 1.3157475e+03 -3.9153343e+02 4.8328395e+03 - 1.3236114e+03 -3.6601539e+02 4.8327870e+03 - 1.3309497e+03 -3.4037594e+02 4.8327365e+03 - 1.3377589e+03 -3.1462395e+02 4.8326884e+03 - 1.3440355e+03 -2.8876822e+02 4.8326430e+03 - 1.3497765e+03 -2.6281755e+02 4.8326005e+03 - 1.3549792e+03 -2.3678067e+02 4.8325612e+03 - 1.3596411e+03 -2.1066632e+02 4.8325254e+03 - 1.3637599e+03 -1.8448319e+02 4.8324933e+03 - 1.3673335e+03 -1.5823992e+02 4.8324650e+03 - 1.3703603e+03 -1.3194516e+02 4.8324408e+03 - 1.3728387e+03 -1.0560753e+02 4.8324208e+03 - 1.3747677e+03 -7.9235620e+01 4.8324051e+03 - 1.3761461e+03 -5.2838016e+01 4.8323938e+03 - 1.3769735e+03 -2.6423288e+01 4.8323871e+03 - 1.3772493e+03 0.0000000e+00 4.8323848e+03 - 1.5461317e+03 0.0000000e+00 4.8073471e+03 - 1.5458194e+03 2.9469837e+01 4.8073507e+03 - 1.5448828e+03 5.8930717e+01 4.8073616e+03 - 1.5433223e+03 8.8373678e+01 4.8073796e+03 - 1.5411387e+03 1.1778974e+02 4.8074047e+03 - 1.5383330e+03 1.4716990e+02 4.8074368e+03 - 1.5349067e+03 1.7650513e+02 4.8074755e+03 - 1.5308614e+03 2.0578637e+02 4.8075207e+03 - 1.5261991e+03 2.3500451e+02 4.8075721e+03 - 1.5209223e+03 2.6415038e+02 4.8076294e+03 - 1.5150334e+03 2.9321478e+02 4.8076922e+03 - 1.5085354e+03 3.2218844e+02 4.8077602e+03 - 1.5014315e+03 3.5106201e+02 4.8078329e+03 - 1.4937253e+03 3.7982611e+02 4.8079099e+03 - 1.4854207e+03 4.0847124e+02 4.8079907e+03 - 1.4765216e+03 4.3698786e+02 4.8080748e+03 - 1.4670326e+03 4.6536633e+02 4.8081617e+03 - 1.4569585e+03 4.9359695e+02 4.8082509e+03 - 1.4463042e+03 5.2166994e+02 4.8083418e+03 - 1.4350750e+03 5.4957541e+02 4.8084338e+03 - 1.4232766e+03 5.7730342e+02 4.8085265e+03 - 1.4109149e+03 6.0484394e+02 4.8086192e+03 - 1.3979960e+03 6.3218688e+02 4.8087113e+03 - 1.3845264e+03 6.5932205e+02 4.8088023e+03 - 1.3705127e+03 6.8623922e+02 4.8088916e+03 - 1.3559621e+03 7.1292807e+02 4.8089787e+03 - 1.3408817e+03 7.3937823e+02 4.8090630e+03 - 1.3252790e+03 7.6557930e+02 4.8091440e+03 - 1.3091618e+03 7.9152079e+02 4.8092212e+03 - 1.2925380e+03 8.1719222e+02 4.8092942e+03 - 1.2754159e+03 8.4258303e+02 4.8093624e+03 - 1.2578038e+03 8.6768269e+02 4.8094254e+03 - 1.2397105e+03 8.9248062e+02 4.8094830e+03 - 1.2211448e+03 9.1696625e+02 4.8095346e+03 - 1.2021157e+03 9.4112901e+02 4.8095800e+03 - 1.1826324e+03 9.6495838e+02 4.8096190e+03 - 1.1627044e+03 9.8844383e+02 4.8096511e+03 - 1.1423412e+03 1.0115749e+03 4.8096764e+03 - 1.1215525e+03 1.0343412e+03 4.8096945e+03 - 1.1003481e+03 1.0567323e+03 4.8097054e+03 - 1.0787380e+03 1.0787380e+03 4.8097091e+03 - 1.0567323e+03 1.1003481e+03 4.8097054e+03 - 1.0343412e+03 1.1215525e+03 4.8096945e+03 - 1.0115749e+03 1.1423412e+03 4.8096764e+03 - 9.8844383e+02 1.1627044e+03 4.8096511e+03 - 9.6495838e+02 1.1826324e+03 4.8096190e+03 - 9.4112901e+02 1.2021157e+03 4.8095800e+03 - 9.1696625e+02 1.2211448e+03 4.8095346e+03 - 8.9248062e+02 1.2397105e+03 4.8094830e+03 - 8.6768269e+02 1.2578038e+03 4.8094254e+03 - 8.4258303e+02 1.2754159e+03 4.8093624e+03 - 8.1719222e+02 1.2925380e+03 4.8092942e+03 - 7.9152079e+02 1.3091618e+03 4.8092212e+03 - 7.6557930e+02 1.3252790e+03 4.8091440e+03 - 7.3937823e+02 1.3408817e+03 4.8090630e+03 - 7.1292807e+02 1.3559621e+03 4.8089787e+03 - 6.8623922e+02 1.3705127e+03 4.8088916e+03 - 6.5932205e+02 1.3845264e+03 4.8088023e+03 - 6.3218688e+02 1.3979960e+03 4.8087113e+03 - 6.0484394e+02 1.4109149e+03 4.8086192e+03 - 5.7730342e+02 1.4232766e+03 4.8085265e+03 - 5.4957541e+02 1.4350750e+03 4.8084338e+03 - 5.2166994e+02 1.4463042e+03 4.8083418e+03 - 4.9359695e+02 1.4569585e+03 4.8082509e+03 - 4.6536633e+02 1.4670326e+03 4.8081617e+03 - 4.3698786e+02 1.4765216e+03 4.8080748e+03 - 4.0847124e+02 1.4854207e+03 4.8079907e+03 - 3.7982611e+02 1.4937253e+03 4.8079099e+03 - 3.5106201e+02 1.5014315e+03 4.8078329e+03 - 3.2218844e+02 1.5085354e+03 4.8077602e+03 - 2.9321478e+02 1.5150334e+03 4.8076922e+03 - 2.6415038e+02 1.5209223e+03 4.8076294e+03 - 2.3500451e+02 1.5261991e+03 4.8075721e+03 - 2.0578637e+02 1.5308614e+03 4.8075207e+03 - 1.7650513e+02 1.5349067e+03 4.8074755e+03 - 1.4716990e+02 1.5383330e+03 4.8074368e+03 - 1.1778974e+02 1.5411387e+03 4.8074047e+03 - 8.8373678e+01 1.5433223e+03 4.8073796e+03 - 5.8930717e+01 1.5448828e+03 4.8073616e+03 - 2.9469837e+01 1.5458194e+03 4.8073507e+03 - 0.0000000e+00 1.5461317e+03 4.8073471e+03 - -2.9469837e+01 1.5458194e+03 4.8073507e+03 - -5.8930717e+01 1.5448828e+03 4.8073616e+03 - -8.8373678e+01 1.5433223e+03 4.8073796e+03 - -1.1778974e+02 1.5411387e+03 4.8074047e+03 - -1.4716990e+02 1.5383330e+03 4.8074368e+03 - -1.7650513e+02 1.5349067e+03 4.8074755e+03 - -2.0578637e+02 1.5308614e+03 4.8075207e+03 - -2.3500451e+02 1.5261991e+03 4.8075721e+03 - -2.6415038e+02 1.5209223e+03 4.8076294e+03 - -2.9321478e+02 1.5150334e+03 4.8076922e+03 - -3.2218844e+02 1.5085354e+03 4.8077602e+03 - -3.5106201e+02 1.5014315e+03 4.8078329e+03 - -3.7982611e+02 1.4937253e+03 4.8079099e+03 - -4.0847124e+02 1.4854207e+03 4.8079907e+03 - -4.3698786e+02 1.4765216e+03 4.8080748e+03 - -4.6536633e+02 1.4670326e+03 4.8081617e+03 - -4.9359695e+02 1.4569585e+03 4.8082509e+03 - -5.2166994e+02 1.4463042e+03 4.8083418e+03 - -5.4957541e+02 1.4350750e+03 4.8084338e+03 - -5.7730342e+02 1.4232766e+03 4.8085265e+03 - -6.0484394e+02 1.4109149e+03 4.8086192e+03 - -6.3218688e+02 1.3979960e+03 4.8087113e+03 - -6.5932205e+02 1.3845264e+03 4.8088023e+03 - -6.8623922e+02 1.3705127e+03 4.8088916e+03 - -7.1292807e+02 1.3559621e+03 4.8089787e+03 - -7.3937823e+02 1.3408817e+03 4.8090630e+03 - -7.6557930e+02 1.3252790e+03 4.8091440e+03 - -7.9152079e+02 1.3091618e+03 4.8092212e+03 - -8.1719222e+02 1.2925380e+03 4.8092942e+03 - -8.4258303e+02 1.2754159e+03 4.8093624e+03 - -8.6768269e+02 1.2578038e+03 4.8094254e+03 - -8.9248062e+02 1.2397105e+03 4.8094830e+03 - -9.1696625e+02 1.2211448e+03 4.8095346e+03 - -9.4112901e+02 1.2021157e+03 4.8095800e+03 - -9.6495838e+02 1.1826324e+03 4.8096190e+03 - -9.8844383e+02 1.1627044e+03 4.8096511e+03 - -1.0115749e+03 1.1423412e+03 4.8096764e+03 - -1.0343412e+03 1.1215525e+03 4.8096945e+03 - -1.0567323e+03 1.1003481e+03 4.8097054e+03 - -1.0787380e+03 1.0787380e+03 4.8097091e+03 - -1.1003481e+03 1.0567323e+03 4.8097054e+03 - -1.1215525e+03 1.0343412e+03 4.8096945e+03 - -1.1423412e+03 1.0115749e+03 4.8096764e+03 - -1.1627044e+03 9.8844383e+02 4.8096511e+03 - -1.1826324e+03 9.6495838e+02 4.8096190e+03 - -1.2021157e+03 9.4112901e+02 4.8095800e+03 - -1.2211448e+03 9.1696625e+02 4.8095346e+03 - -1.2397105e+03 8.9248062e+02 4.8094830e+03 - -1.2578038e+03 8.6768269e+02 4.8094254e+03 - -1.2754159e+03 8.4258303e+02 4.8093624e+03 - -1.2925380e+03 8.1719222e+02 4.8092942e+03 - -1.3091618e+03 7.9152079e+02 4.8092212e+03 - -1.3252790e+03 7.6557930e+02 4.8091440e+03 - -1.3408817e+03 7.3937823e+02 4.8090630e+03 - -1.3559621e+03 7.1292807e+02 4.8089787e+03 - -1.3705127e+03 6.8623922e+02 4.8088916e+03 - -1.3845264e+03 6.5932205e+02 4.8088023e+03 - -1.3979960e+03 6.3218688e+02 4.8087113e+03 - -1.4109149e+03 6.0484394e+02 4.8086192e+03 - -1.4232766e+03 5.7730342e+02 4.8085265e+03 - -1.4350750e+03 5.4957541e+02 4.8084338e+03 - -1.4463042e+03 5.2166994e+02 4.8083418e+03 - -1.4569585e+03 4.9359695e+02 4.8082509e+03 - -1.4670326e+03 4.6536633e+02 4.8081617e+03 - -1.4765216e+03 4.3698786e+02 4.8080748e+03 - -1.4854207e+03 4.0847124e+02 4.8079907e+03 - -1.4937253e+03 3.7982611e+02 4.8079099e+03 - -1.5014315e+03 3.5106201e+02 4.8078329e+03 - -1.5085354e+03 3.2218844e+02 4.8077602e+03 - -1.5150334e+03 2.9321478e+02 4.8076922e+03 - -1.5209223e+03 2.6415038e+02 4.8076294e+03 - -1.5261991e+03 2.3500451e+02 4.8075721e+03 - -1.5308614e+03 2.0578637e+02 4.8075207e+03 - -1.5349067e+03 1.7650513e+02 4.8074755e+03 - -1.5383330e+03 1.4716990e+02 4.8074368e+03 - -1.5411387e+03 1.1778974e+02 4.8074047e+03 - -1.5433223e+03 8.8373678e+01 4.8073796e+03 - -1.5448828e+03 5.8930717e+01 4.8073616e+03 - -1.5458194e+03 2.9469837e+01 4.8073507e+03 - -1.5461317e+03 0.0000000e+00 4.8073471e+03 - -1.5458194e+03 -2.9469837e+01 4.8073507e+03 - -1.5448828e+03 -5.8930717e+01 4.8073616e+03 - -1.5433223e+03 -8.8373678e+01 4.8073796e+03 - -1.5411387e+03 -1.1778974e+02 4.8074047e+03 - -1.5383330e+03 -1.4716990e+02 4.8074368e+03 - -1.5349067e+03 -1.7650513e+02 4.8074755e+03 - -1.5308614e+03 -2.0578637e+02 4.8075207e+03 - -1.5261991e+03 -2.3500451e+02 4.8075721e+03 - -1.5209223e+03 -2.6415038e+02 4.8076294e+03 - -1.5150334e+03 -2.9321478e+02 4.8076922e+03 - -1.5085354e+03 -3.2218844e+02 4.8077602e+03 - -1.5014315e+03 -3.5106201e+02 4.8078329e+03 - -1.4937253e+03 -3.7982611e+02 4.8079099e+03 - -1.4854207e+03 -4.0847124e+02 4.8079907e+03 - -1.4765216e+03 -4.3698786e+02 4.8080748e+03 - -1.4670326e+03 -4.6536633e+02 4.8081617e+03 - -1.4569585e+03 -4.9359695e+02 4.8082509e+03 - -1.4463042e+03 -5.2166994e+02 4.8083418e+03 - -1.4350750e+03 -5.4957541e+02 4.8084338e+03 - -1.4232766e+03 -5.7730342e+02 4.8085265e+03 - -1.4109149e+03 -6.0484394e+02 4.8086192e+03 - -1.3979960e+03 -6.3218688e+02 4.8087113e+03 - -1.3845264e+03 -6.5932205e+02 4.8088023e+03 - -1.3705127e+03 -6.8623922e+02 4.8088916e+03 - -1.3559621e+03 -7.1292807e+02 4.8089787e+03 - -1.3408817e+03 -7.3937823e+02 4.8090630e+03 - -1.3252790e+03 -7.6557930e+02 4.8091440e+03 - -1.3091618e+03 -7.9152079e+02 4.8092212e+03 - -1.2925380e+03 -8.1719222e+02 4.8092942e+03 - -1.2754159e+03 -8.4258303e+02 4.8093624e+03 - -1.2578038e+03 -8.6768269e+02 4.8094254e+03 - -1.2397105e+03 -8.9248062e+02 4.8094830e+03 - -1.2211448e+03 -9.1696625e+02 4.8095346e+03 - -1.2021157e+03 -9.4112901e+02 4.8095800e+03 - -1.1826324e+03 -9.6495838e+02 4.8096190e+03 - -1.1627044e+03 -9.8844383e+02 4.8096511e+03 - -1.1423412e+03 -1.0115749e+03 4.8096764e+03 - -1.1215525e+03 -1.0343412e+03 4.8096945e+03 - -1.1003481e+03 -1.0567323e+03 4.8097054e+03 - -1.0787380e+03 -1.0787380e+03 4.8097091e+03 - -1.0567323e+03 -1.1003481e+03 4.8097054e+03 - -1.0343412e+03 -1.1215525e+03 4.8096945e+03 - -1.0115749e+03 -1.1423412e+03 4.8096764e+03 - -9.8844383e+02 -1.1627044e+03 4.8096511e+03 - -9.6495838e+02 -1.1826324e+03 4.8096190e+03 - -9.4112901e+02 -1.2021157e+03 4.8095800e+03 - -9.1696625e+02 -1.2211448e+03 4.8095346e+03 - -8.9248062e+02 -1.2397105e+03 4.8094830e+03 - -8.6768269e+02 -1.2578038e+03 4.8094254e+03 - -8.4258303e+02 -1.2754159e+03 4.8093624e+03 - -8.1719222e+02 -1.2925380e+03 4.8092942e+03 - -7.9152079e+02 -1.3091618e+03 4.8092212e+03 - -7.6557930e+02 -1.3252790e+03 4.8091440e+03 - -7.3937823e+02 -1.3408817e+03 4.8090630e+03 - -7.1292807e+02 -1.3559621e+03 4.8089787e+03 - -6.8623922e+02 -1.3705127e+03 4.8088916e+03 - -6.5932205e+02 -1.3845264e+03 4.8088023e+03 - -6.3218688e+02 -1.3979960e+03 4.8087113e+03 - -6.0484394e+02 -1.4109149e+03 4.8086192e+03 - -5.7730342e+02 -1.4232766e+03 4.8085265e+03 - -5.4957541e+02 -1.4350750e+03 4.8084338e+03 - -5.2166994e+02 -1.4463042e+03 4.8083418e+03 - -4.9359695e+02 -1.4569585e+03 4.8082509e+03 - -4.6536633e+02 -1.4670326e+03 4.8081617e+03 - -4.3698786e+02 -1.4765216e+03 4.8080748e+03 - -4.0847124e+02 -1.4854207e+03 4.8079907e+03 - -3.7982611e+02 -1.4937253e+03 4.8079099e+03 - -3.5106201e+02 -1.5014315e+03 4.8078329e+03 - -3.2218844e+02 -1.5085354e+03 4.8077602e+03 - -2.9321478e+02 -1.5150334e+03 4.8076922e+03 - -2.6415038e+02 -1.5209223e+03 4.8076294e+03 - -2.3500451e+02 -1.5261991e+03 4.8075721e+03 - -2.0578637e+02 -1.5308614e+03 4.8075207e+03 - -1.7650513e+02 -1.5349067e+03 4.8074755e+03 - -1.4716990e+02 -1.5383330e+03 4.8074368e+03 - -1.1778974e+02 -1.5411387e+03 4.8074047e+03 - -8.8373678e+01 -1.5433223e+03 4.8073796e+03 - -5.8930717e+01 -1.5448828e+03 4.8073616e+03 - -2.9469837e+01 -1.5458194e+03 4.8073507e+03 - 0.0000000e+00 -1.5461317e+03 4.8073471e+03 - 2.9469837e+01 -1.5458194e+03 4.8073507e+03 - 5.8930717e+01 -1.5448828e+03 4.8073616e+03 - 8.8373678e+01 -1.5433223e+03 4.8073796e+03 - 1.1778974e+02 -1.5411387e+03 4.8074047e+03 - 1.4716990e+02 -1.5383330e+03 4.8074368e+03 - 1.7650513e+02 -1.5349067e+03 4.8074755e+03 - 2.0578637e+02 -1.5308614e+03 4.8075207e+03 - 2.3500451e+02 -1.5261991e+03 4.8075721e+03 - 2.6415038e+02 -1.5209223e+03 4.8076294e+03 - 2.9321478e+02 -1.5150334e+03 4.8076922e+03 - 3.2218844e+02 -1.5085354e+03 4.8077602e+03 - 3.5106201e+02 -1.5014315e+03 4.8078329e+03 - 3.7982611e+02 -1.4937253e+03 4.8079099e+03 - 4.0847124e+02 -1.4854207e+03 4.8079907e+03 - 4.3698786e+02 -1.4765216e+03 4.8080748e+03 - 4.6536633e+02 -1.4670326e+03 4.8081617e+03 - 4.9359695e+02 -1.4569585e+03 4.8082509e+03 - 5.2166994e+02 -1.4463042e+03 4.8083418e+03 - 5.4957541e+02 -1.4350750e+03 4.8084338e+03 - 5.7730342e+02 -1.4232766e+03 4.8085265e+03 - 6.0484394e+02 -1.4109149e+03 4.8086192e+03 - 6.3218688e+02 -1.3979960e+03 4.8087113e+03 - 6.5932205e+02 -1.3845264e+03 4.8088023e+03 - 6.8623922e+02 -1.3705127e+03 4.8088916e+03 - 7.1292807e+02 -1.3559621e+03 4.8089787e+03 - 7.3937823e+02 -1.3408817e+03 4.8090630e+03 - 7.6557930e+02 -1.3252790e+03 4.8091440e+03 - 7.9152079e+02 -1.3091618e+03 4.8092212e+03 - 8.1719222e+02 -1.2925380e+03 4.8092942e+03 - 8.4258303e+02 -1.2754159e+03 4.8093624e+03 - 8.6768269e+02 -1.2578038e+03 4.8094254e+03 - 8.9248062e+02 -1.2397105e+03 4.8094830e+03 - 9.1696625e+02 -1.2211448e+03 4.8095346e+03 - 9.4112901e+02 -1.2021157e+03 4.8095800e+03 - 9.6495838e+02 -1.1826324e+03 4.8096190e+03 - 9.8844383e+02 -1.1627044e+03 4.8096511e+03 - 1.0115749e+03 -1.1423412e+03 4.8096764e+03 - 1.0343412e+03 -1.1215525e+03 4.8096945e+03 - 1.0567323e+03 -1.1003481e+03 4.8097054e+03 - 1.0787380e+03 -1.0787380e+03 4.8097091e+03 - 1.1003481e+03 -1.0567323e+03 4.8097054e+03 - 1.1215525e+03 -1.0343412e+03 4.8096945e+03 - 1.1423412e+03 -1.0115749e+03 4.8096764e+03 - 1.1627044e+03 -9.8844383e+02 4.8096511e+03 - 1.1826324e+03 -9.6495838e+02 4.8096190e+03 - 1.2021157e+03 -9.4112901e+02 4.8095800e+03 - 1.2211448e+03 -9.1696625e+02 4.8095346e+03 - 1.2397105e+03 -8.9248062e+02 4.8094830e+03 - 1.2578038e+03 -8.6768269e+02 4.8094254e+03 - 1.2754159e+03 -8.4258303e+02 4.8093624e+03 - 1.2925380e+03 -8.1719222e+02 4.8092942e+03 - 1.3091618e+03 -7.9152079e+02 4.8092212e+03 - 1.3252790e+03 -7.6557930e+02 4.8091440e+03 - 1.3408817e+03 -7.3937823e+02 4.8090630e+03 - 1.3559621e+03 -7.1292807e+02 4.8089787e+03 - 1.3705127e+03 -6.8623922e+02 4.8088916e+03 - 1.3845264e+03 -6.5932205e+02 4.8088023e+03 - 1.3979960e+03 -6.3218688e+02 4.8087113e+03 - 1.4109149e+03 -6.0484394e+02 4.8086192e+03 - 1.4232766e+03 -5.7730342e+02 4.8085265e+03 - 1.4350750e+03 -5.4957541e+02 4.8084338e+03 - 1.4463042e+03 -5.2166994e+02 4.8083418e+03 - 1.4569585e+03 -4.9359695e+02 4.8082509e+03 - 1.4670326e+03 -4.6536633e+02 4.8081617e+03 - 1.4765216e+03 -4.3698786e+02 4.8080748e+03 - 1.4854207e+03 -4.0847124e+02 4.8079907e+03 - 1.4937253e+03 -3.7982611e+02 4.8079099e+03 - 1.5014315e+03 -3.5106201e+02 4.8078329e+03 - 1.5085354e+03 -3.2218844e+02 4.8077602e+03 - 1.5150334e+03 -2.9321478e+02 4.8076922e+03 - 1.5209223e+03 -2.6415038e+02 4.8076294e+03 - 1.5261991e+03 -2.3500451e+02 4.8075721e+03 - 1.5308614e+03 -2.0578637e+02 4.8075207e+03 - 1.5349067e+03 -1.7650513e+02 4.8074755e+03 - 1.5383330e+03 -1.4716990e+02 4.8074368e+03 - 1.5411387e+03 -1.1778974e+02 4.8074047e+03 - 1.5433223e+03 -8.8373678e+01 4.8073796e+03 - 1.5448828e+03 -5.8930717e+01 4.8073616e+03 - 1.5458194e+03 -2.9469837e+01 4.8073507e+03 - 1.5461317e+03 0.0000000e+00 4.8073471e+03 - 1.7063204e+03 0.0000000e+00 4.7803748e+03 - 1.7059730e+03 3.2290898e+01 4.7803802e+03 - 1.7049309e+03 6.4572726e+01 4.7803965e+03 - 1.7031946e+03 9.6836402e+01 4.7804234e+03 - 1.7007651e+03 1.2907282e+02 4.7804610e+03 - 1.6976435e+03 1.6127283e+02 4.7805088e+03 - 1.6938314e+03 1.9342724e+02 4.7805667e+03 - 1.6893307e+03 2.2552681e+02 4.7806343e+03 - 1.6841436e+03 2.5756221e+02 4.7807111e+03 - 1.6782728e+03 2.8952403e+02 4.7807968e+03 - 1.6717211e+03 3.2140279e+02 4.7808907e+03 - 1.6644919e+03 3.5318888e+02 4.7809923e+03 - 1.6565888e+03 3.8487261e+02 4.7811010e+03 - 1.6480158e+03 4.1644415e+02 4.7812162e+03 - 1.6387772e+03 4.4789357e+02 4.7813370e+03 - 1.6288778e+03 4.7921080e+02 4.7814628e+03 - 1.6183225e+03 5.1038563e+02 4.7815929e+03 - 1.6071167e+03 5.4140773e+02 4.7817263e+03 - 1.5952662e+03 5.7226661e+02 4.7818623e+03 - 1.5827770e+03 6.0295167e+02 4.7820001e+03 - 1.5696555e+03 6.3345215e+02 4.7821387e+03 - 1.5559085e+03 6.6375715e+02 4.7822774e+03 - 1.5415430e+03 6.9385563e+02 4.7824153e+03 - 1.5265664e+03 7.2373643e+02 4.7825515e+03 - 1.5109865e+03 7.5338826e+02 4.7826853e+03 - 1.4948113e+03 7.8279970e+02 4.7828157e+03 - 1.4780492e+03 8.1195920e+02 4.7829419e+03 - 1.4607088e+03 8.4085513e+02 4.7830633e+03 - 1.4427990e+03 8.6947575e+02 4.7831789e+03 - 1.4243292e+03 8.9780922e+02 4.7832882e+03 - 1.4053088e+03 9.2584364e+02 4.7833904e+03 - 1.3857476e+03 9.5356704e+02 4.7834849e+03 - 1.3656556e+03 9.8096738e+02 4.7835711e+03 - 1.3450432e+03 1.0080326e+03 4.7836484e+03 - 1.3239208e+03 1.0347506e+03 4.7837165e+03 - 1.3022992e+03 1.0611093e+03 4.7837748e+03 - 1.2801893e+03 1.0870967e+03 4.7838230e+03 - 1.2576022e+03 1.1127005e+03 4.7838609e+03 - 1.2345492e+03 1.1379089e+03 4.7838880e+03 - 1.2110417e+03 1.1627098e+03 4.7839044e+03 - 1.1870913e+03 1.1870913e+03 4.7839099e+03 - 1.1627098e+03 1.2110417e+03 4.7839044e+03 - 1.1379089e+03 1.2345492e+03 4.7838880e+03 - 1.1127005e+03 1.2576022e+03 4.7838609e+03 - 1.0870967e+03 1.2801893e+03 4.7838230e+03 - 1.0611093e+03 1.3022992e+03 4.7837748e+03 - 1.0347506e+03 1.3239208e+03 4.7837165e+03 - 1.0080326e+03 1.3450432e+03 4.7836484e+03 - 9.8096738e+02 1.3656556e+03 4.7835711e+03 - 9.5356704e+02 1.3857476e+03 4.7834849e+03 - 9.2584364e+02 1.4053088e+03 4.7833904e+03 - 8.9780922e+02 1.4243292e+03 4.7832882e+03 - 8.6947575e+02 1.4427990e+03 4.7831789e+03 - 8.4085513e+02 1.4607088e+03 4.7830633e+03 - 8.1195920e+02 1.4780492e+03 4.7829419e+03 - 7.8279970e+02 1.4948113e+03 4.7828157e+03 - 7.5338826e+02 1.5109865e+03 4.7826853e+03 - 7.2373643e+02 1.5265664e+03 4.7825515e+03 - 6.9385563e+02 1.5415430e+03 4.7824153e+03 - 6.6375715e+02 1.5559085e+03 4.7822774e+03 - 6.3345215e+02 1.5696555e+03 4.7821387e+03 - 6.0295167e+02 1.5827770e+03 4.7820001e+03 - 5.7226661e+02 1.5952662e+03 4.7818623e+03 - 5.4140773e+02 1.6071167e+03 4.7817263e+03 - 5.1038563e+02 1.6183225e+03 4.7815929e+03 - 4.7921080e+02 1.6288778e+03 4.7814628e+03 - 4.4789357e+02 1.6387772e+03 4.7813370e+03 - 4.1644415e+02 1.6480158e+03 4.7812162e+03 - 3.8487261e+02 1.6565888e+03 4.7811010e+03 - 3.5318888e+02 1.6644919e+03 4.7809923e+03 - 3.2140279e+02 1.6717211e+03 4.7808907e+03 - 2.8952403e+02 1.6782728e+03 4.7807968e+03 - 2.5756221e+02 1.6841436e+03 4.7807111e+03 - 2.2552681e+02 1.6893307e+03 4.7806343e+03 - 1.9342724e+02 1.6938314e+03 4.7805667e+03 - 1.6127283e+02 1.6976435e+03 4.7805088e+03 - 1.2907282e+02 1.7007651e+03 4.7804610e+03 - 9.6836402e+01 1.7031946e+03 4.7804234e+03 - 6.4572726e+01 1.7049309e+03 4.7803965e+03 - 3.2290898e+01 1.7059730e+03 4.7803802e+03 - 0.0000000e+00 1.7063204e+03 4.7803748e+03 - -3.2290898e+01 1.7059730e+03 4.7803802e+03 - -6.4572726e+01 1.7049309e+03 4.7803965e+03 - -9.6836402e+01 1.7031946e+03 4.7804234e+03 - -1.2907282e+02 1.7007651e+03 4.7804610e+03 - -1.6127283e+02 1.6976435e+03 4.7805088e+03 - -1.9342724e+02 1.6938314e+03 4.7805667e+03 - -2.2552681e+02 1.6893307e+03 4.7806343e+03 - -2.5756221e+02 1.6841436e+03 4.7807111e+03 - -2.8952403e+02 1.6782728e+03 4.7807968e+03 - -3.2140279e+02 1.6717211e+03 4.7808907e+03 - -3.5318888e+02 1.6644919e+03 4.7809923e+03 - -3.8487261e+02 1.6565888e+03 4.7811010e+03 - -4.1644415e+02 1.6480158e+03 4.7812162e+03 - -4.4789357e+02 1.6387772e+03 4.7813370e+03 - -4.7921080e+02 1.6288778e+03 4.7814628e+03 - -5.1038563e+02 1.6183225e+03 4.7815929e+03 - -5.4140773e+02 1.6071167e+03 4.7817263e+03 - -5.7226661e+02 1.5952662e+03 4.7818623e+03 - -6.0295167e+02 1.5827770e+03 4.7820001e+03 - -6.3345215e+02 1.5696555e+03 4.7821387e+03 - -6.6375715e+02 1.5559085e+03 4.7822774e+03 - -6.9385563e+02 1.5415430e+03 4.7824153e+03 - -7.2373643e+02 1.5265664e+03 4.7825515e+03 - -7.5338826e+02 1.5109865e+03 4.7826853e+03 - -7.8279970e+02 1.4948113e+03 4.7828157e+03 - -8.1195920e+02 1.4780492e+03 4.7829419e+03 - -8.4085513e+02 1.4607088e+03 4.7830633e+03 - -8.6947575e+02 1.4427990e+03 4.7831789e+03 - -8.9780922e+02 1.4243292e+03 4.7832882e+03 - -9.2584364e+02 1.4053088e+03 4.7833904e+03 - -9.5356704e+02 1.3857476e+03 4.7834849e+03 - -9.8096738e+02 1.3656556e+03 4.7835711e+03 - -1.0080326e+03 1.3450432e+03 4.7836484e+03 - -1.0347506e+03 1.3239208e+03 4.7837165e+03 - -1.0611093e+03 1.3022992e+03 4.7837748e+03 - -1.0870967e+03 1.2801893e+03 4.7838230e+03 - -1.1127005e+03 1.2576022e+03 4.7838609e+03 - -1.1379089e+03 1.2345492e+03 4.7838880e+03 - -1.1627098e+03 1.2110417e+03 4.7839044e+03 - -1.1870913e+03 1.1870913e+03 4.7839099e+03 - -1.2110417e+03 1.1627098e+03 4.7839044e+03 - -1.2345492e+03 1.1379089e+03 4.7838880e+03 - -1.2576022e+03 1.1127005e+03 4.7838609e+03 - -1.2801893e+03 1.0870967e+03 4.7838230e+03 - -1.3022992e+03 1.0611093e+03 4.7837748e+03 - -1.3239208e+03 1.0347506e+03 4.7837165e+03 - -1.3450432e+03 1.0080326e+03 4.7836484e+03 - -1.3656556e+03 9.8096738e+02 4.7835711e+03 - -1.3857476e+03 9.5356704e+02 4.7834849e+03 - -1.4053088e+03 9.2584364e+02 4.7833904e+03 - -1.4243292e+03 8.9780922e+02 4.7832882e+03 - -1.4427990e+03 8.6947575e+02 4.7831789e+03 - -1.4607088e+03 8.4085513e+02 4.7830633e+03 - -1.4780492e+03 8.1195920e+02 4.7829419e+03 - -1.4948113e+03 7.8279970e+02 4.7828157e+03 - -1.5109865e+03 7.5338826e+02 4.7826853e+03 - -1.5265664e+03 7.2373643e+02 4.7825515e+03 - -1.5415430e+03 6.9385563e+02 4.7824153e+03 - -1.5559085e+03 6.6375715e+02 4.7822774e+03 - -1.5696555e+03 6.3345215e+02 4.7821387e+03 - -1.5827770e+03 6.0295167e+02 4.7820001e+03 - -1.5952662e+03 5.7226661e+02 4.7818623e+03 - -1.6071167e+03 5.4140773e+02 4.7817263e+03 - -1.6183225e+03 5.1038563e+02 4.7815929e+03 - -1.6288778e+03 4.7921080e+02 4.7814628e+03 - -1.6387772e+03 4.4789357e+02 4.7813370e+03 - -1.6480158e+03 4.1644415e+02 4.7812162e+03 - -1.6565888e+03 3.8487261e+02 4.7811010e+03 - -1.6644919e+03 3.5318888e+02 4.7809923e+03 - -1.6717211e+03 3.2140279e+02 4.7808907e+03 - -1.6782728e+03 2.8952403e+02 4.7807968e+03 - -1.6841436e+03 2.5756221e+02 4.7807111e+03 - -1.6893307e+03 2.2552681e+02 4.7806343e+03 - -1.6938314e+03 1.9342724e+02 4.7805667e+03 - -1.6976435e+03 1.6127283e+02 4.7805088e+03 - -1.7007651e+03 1.2907282e+02 4.7804610e+03 - -1.7031946e+03 9.6836402e+01 4.7804234e+03 - -1.7049309e+03 6.4572726e+01 4.7803965e+03 - -1.7059730e+03 3.2290898e+01 4.7803802e+03 - -1.7063204e+03 4.8134273e-09 4.7803748e+03 - -1.7059730e+03 -3.2290898e+01 4.7803802e+03 - -1.7049309e+03 -6.4572726e+01 4.7803965e+03 - -1.7031946e+03 -9.6836402e+01 4.7804234e+03 - -1.7007651e+03 -1.2907282e+02 4.7804610e+03 - -1.6976435e+03 -1.6127283e+02 4.7805088e+03 - -1.6938314e+03 -1.9342724e+02 4.7805667e+03 - -1.6893307e+03 -2.2552681e+02 4.7806343e+03 - -1.6841436e+03 -2.5756221e+02 4.7807111e+03 - -1.6782728e+03 -2.8952403e+02 4.7807968e+03 - -1.6717211e+03 -3.2140279e+02 4.7808907e+03 - -1.6644919e+03 -3.5318888e+02 4.7809923e+03 - -1.6565888e+03 -3.8487261e+02 4.7811010e+03 - -1.6480158e+03 -4.1644415e+02 4.7812162e+03 - -1.6387772e+03 -4.4789357e+02 4.7813370e+03 - -1.6288778e+03 -4.7921080e+02 4.7814628e+03 - -1.6183225e+03 -5.1038563e+02 4.7815929e+03 - -1.6071167e+03 -5.4140773e+02 4.7817263e+03 - -1.5952662e+03 -5.7226661e+02 4.7818623e+03 - -1.5827770e+03 -6.0295167e+02 4.7820001e+03 - -1.5696555e+03 -6.3345215e+02 4.7821387e+03 - -1.5559085e+03 -6.6375715e+02 4.7822774e+03 - -1.5415430e+03 -6.9385563e+02 4.7824153e+03 - -1.5265664e+03 -7.2373643e+02 4.7825515e+03 - -1.5109865e+03 -7.5338826e+02 4.7826853e+03 - -1.4948113e+03 -7.8279970e+02 4.7828157e+03 - -1.4780492e+03 -8.1195920e+02 4.7829419e+03 - -1.4607088e+03 -8.4085513e+02 4.7830633e+03 - -1.4427990e+03 -8.6947575e+02 4.7831789e+03 - -1.4243292e+03 -8.9780922e+02 4.7832882e+03 - -1.4053088e+03 -9.2584364e+02 4.7833904e+03 - -1.3857476e+03 -9.5356704e+02 4.7834849e+03 - -1.3656556e+03 -9.8096738e+02 4.7835711e+03 - -1.3450432e+03 -1.0080326e+03 4.7836484e+03 - -1.3239208e+03 -1.0347506e+03 4.7837165e+03 - -1.3022992e+03 -1.0611093e+03 4.7837748e+03 - -1.2801893e+03 -1.0870967e+03 4.7838230e+03 - -1.2576022e+03 -1.1127005e+03 4.7838609e+03 - -1.2345492e+03 -1.1379089e+03 4.7838880e+03 - -1.2110417e+03 -1.1627098e+03 4.7839044e+03 - -1.1870913e+03 -1.1870913e+03 4.7839099e+03 - -1.1627098e+03 -1.2110417e+03 4.7839044e+03 - -1.1379089e+03 -1.2345492e+03 4.7838880e+03 - -1.1127005e+03 -1.2576022e+03 4.7838609e+03 - -1.0870967e+03 -1.2801893e+03 4.7838230e+03 - -1.0611093e+03 -1.3022992e+03 4.7837748e+03 - -1.0347506e+03 -1.3239208e+03 4.7837165e+03 - -1.0080326e+03 -1.3450432e+03 4.7836484e+03 - -9.8096738e+02 -1.3656556e+03 4.7835711e+03 - -9.5356704e+02 -1.3857476e+03 4.7834849e+03 - -9.2584364e+02 -1.4053088e+03 4.7833904e+03 - -8.9780922e+02 -1.4243292e+03 4.7832882e+03 - -8.6947575e+02 -1.4427990e+03 4.7831789e+03 - -8.4085513e+02 -1.4607088e+03 4.7830633e+03 - -8.1195920e+02 -1.4780492e+03 4.7829419e+03 - -7.8279970e+02 -1.4948113e+03 4.7828157e+03 - -7.5338826e+02 -1.5109865e+03 4.7826853e+03 - -7.2373643e+02 -1.5265664e+03 4.7825515e+03 - -6.9385563e+02 -1.5415430e+03 4.7824153e+03 - -6.6375715e+02 -1.5559085e+03 4.7822774e+03 - -6.3345215e+02 -1.5696555e+03 4.7821387e+03 - -6.0295167e+02 -1.5827770e+03 4.7820001e+03 - -5.7226661e+02 -1.5952662e+03 4.7818623e+03 - -5.4140773e+02 -1.6071167e+03 4.7817263e+03 - -5.1038563e+02 -1.6183225e+03 4.7815929e+03 - -4.7921080e+02 -1.6288778e+03 4.7814628e+03 - -4.4789357e+02 -1.6387772e+03 4.7813370e+03 - -4.1644415e+02 -1.6480158e+03 4.7812162e+03 - -3.8487261e+02 -1.6565888e+03 4.7811010e+03 - -3.5318888e+02 -1.6644919e+03 4.7809923e+03 - -3.2140279e+02 -1.6717211e+03 4.7808907e+03 - -2.8952403e+02 -1.6782728e+03 4.7807968e+03 - -2.5756221e+02 -1.6841436e+03 4.7807111e+03 - -2.2552681e+02 -1.6893307e+03 4.7806343e+03 - -1.9342724e+02 -1.6938314e+03 4.7805667e+03 - -1.6127283e+02 -1.6976435e+03 4.7805088e+03 - -1.2907282e+02 -1.7007651e+03 4.7804610e+03 - -9.6836402e+01 -1.7031946e+03 4.7804234e+03 - -6.4572726e+01 -1.7049309e+03 4.7803965e+03 - -3.2290898e+01 -1.7059730e+03 4.7803802e+03 - 0.0000000e+00 -1.7063204e+03 4.7803748e+03 - 3.2290898e+01 -1.7059730e+03 4.7803802e+03 - 6.4572726e+01 -1.7049309e+03 4.7803965e+03 - 9.6836402e+01 -1.7031946e+03 4.7804234e+03 - 1.2907282e+02 -1.7007651e+03 4.7804610e+03 - 1.6127283e+02 -1.6976435e+03 4.7805088e+03 - 1.9342724e+02 -1.6938314e+03 4.7805667e+03 - 2.2552681e+02 -1.6893307e+03 4.7806343e+03 - 2.5756221e+02 -1.6841436e+03 4.7807111e+03 - 2.8952403e+02 -1.6782728e+03 4.7807968e+03 - 3.2140279e+02 -1.6717211e+03 4.7808907e+03 - 3.5318888e+02 -1.6644919e+03 4.7809923e+03 - 3.8487261e+02 -1.6565888e+03 4.7811010e+03 - 4.1644415e+02 -1.6480158e+03 4.7812162e+03 - 4.4789357e+02 -1.6387772e+03 4.7813370e+03 - 4.7921080e+02 -1.6288778e+03 4.7814628e+03 - 5.1038563e+02 -1.6183225e+03 4.7815929e+03 - 5.4140773e+02 -1.6071167e+03 4.7817263e+03 - 5.7226661e+02 -1.5952662e+03 4.7818623e+03 - 6.0295167e+02 -1.5827770e+03 4.7820001e+03 - 6.3345215e+02 -1.5696555e+03 4.7821387e+03 - 6.6375715e+02 -1.5559085e+03 4.7822774e+03 - 6.9385563e+02 -1.5415430e+03 4.7824153e+03 - 7.2373643e+02 -1.5265664e+03 4.7825515e+03 - 7.5338826e+02 -1.5109865e+03 4.7826853e+03 - 7.8279970e+02 -1.4948113e+03 4.7828157e+03 - 8.1195920e+02 -1.4780492e+03 4.7829419e+03 - 8.4085513e+02 -1.4607088e+03 4.7830633e+03 - 8.6947575e+02 -1.4427990e+03 4.7831789e+03 - 8.9780922e+02 -1.4243292e+03 4.7832882e+03 - 9.2584364e+02 -1.4053088e+03 4.7833904e+03 - 9.5356704e+02 -1.3857476e+03 4.7834849e+03 - 9.8096738e+02 -1.3656556e+03 4.7835711e+03 - 1.0080326e+03 -1.3450432e+03 4.7836484e+03 - 1.0347506e+03 -1.3239208e+03 4.7837165e+03 - 1.0611093e+03 -1.3022992e+03 4.7837748e+03 - 1.0870967e+03 -1.2801893e+03 4.7838230e+03 - 1.1127005e+03 -1.2576022e+03 4.7838609e+03 - 1.1379089e+03 -1.2345492e+03 4.7838880e+03 - 1.1627098e+03 -1.2110417e+03 4.7839044e+03 - 1.1870913e+03 -1.1870913e+03 4.7839099e+03 - 1.2110417e+03 -1.1627098e+03 4.7839044e+03 - 1.2345492e+03 -1.1379089e+03 4.7838880e+03 - 1.2576022e+03 -1.1127005e+03 4.7838609e+03 - 1.2801893e+03 -1.0870967e+03 4.7838230e+03 - 1.3022992e+03 -1.0611093e+03 4.7837748e+03 - 1.3239208e+03 -1.0347506e+03 4.7837165e+03 - 1.3450432e+03 -1.0080326e+03 4.7836484e+03 - 1.3656556e+03 -9.8096738e+02 4.7835711e+03 - 1.3857476e+03 -9.5356704e+02 4.7834849e+03 - 1.4053088e+03 -9.2584364e+02 4.7833904e+03 - 1.4243292e+03 -8.9780922e+02 4.7832882e+03 - 1.4427990e+03 -8.6947575e+02 4.7831789e+03 - 1.4607088e+03 -8.4085513e+02 4.7830633e+03 - 1.4780492e+03 -8.1195920e+02 4.7829419e+03 - 1.4948113e+03 -7.8279970e+02 4.7828157e+03 - 1.5109865e+03 -7.5338826e+02 4.7826853e+03 - 1.5265664e+03 -7.2373643e+02 4.7825515e+03 - 1.5415430e+03 -6.9385563e+02 4.7824153e+03 - 1.5559085e+03 -6.6375715e+02 4.7822774e+03 - 1.5696555e+03 -6.3345215e+02 4.7821387e+03 - 1.5827770e+03 -6.0295167e+02 4.7820001e+03 - 1.5952662e+03 -5.7226661e+02 4.7818623e+03 - 1.6071167e+03 -5.4140773e+02 4.7817263e+03 - 1.6183225e+03 -5.1038563e+02 4.7815929e+03 - 1.6288778e+03 -4.7921080e+02 4.7814628e+03 - 1.6387772e+03 -4.4789357e+02 4.7813370e+03 - 1.6480158e+03 -4.1644415e+02 4.7812162e+03 - 1.6565888e+03 -3.8487261e+02 4.7811010e+03 - 1.6644919e+03 -3.5318888e+02 4.7809923e+03 - 1.6717211e+03 -3.2140279e+02 4.7808907e+03 - 1.6782728e+03 -2.8952403e+02 4.7807968e+03 - 1.6841436e+03 -2.5756221e+02 4.7807111e+03 - 1.6893307e+03 -2.2552681e+02 4.7806343e+03 - 1.6938314e+03 -1.9342724e+02 4.7805667e+03 - 1.6976435e+03 -1.6127283e+02 4.7805088e+03 - 1.7007651e+03 -1.2907282e+02 4.7804610e+03 - 1.7031946e+03 -9.6836402e+01 4.7804234e+03 - 1.7049309e+03 -6.4572726e+01 4.7803965e+03 - 1.7059730e+03 -3.2290898e+01 4.7803802e+03 - 1.7063204e+03 0.0000000e+00 4.7803748e+03 - 1.8578557e+03 0.0000000e+00 4.7517897e+03 - 1.8574745e+03 3.4888398e+01 4.7517974e+03 - 1.8563311e+03 6.9767900e+01 4.7518204e+03 - 1.8544262e+03 1.0462959e+02 4.7518586e+03 - 1.8517606e+03 1.3946453e+02 4.7519118e+03 - 1.8483356e+03 1.7426370e+02 4.7519796e+03 - 1.8441530e+03 2.0901803e+02 4.7520616e+03 - 1.8392148e+03 2.4371834e+02 4.7521573e+03 - 1.8335235e+03 2.7835538e+02 4.7522662e+03 - 1.8270819e+03 3.1291974e+02 4.7523875e+03 - 1.8198931e+03 3.4740188e+02 4.7525206e+03 - 1.8119609e+03 3.8179214e+02 4.7526647e+03 - 1.8032893e+03 4.1608065e+02 4.7528188e+03 - 1.7938825e+03 4.5025739e+02 4.7529820e+03 - 1.7837454e+03 4.8431217e+02 4.7531533e+03 - 1.7728831e+03 5.1823456e+02 4.7533317e+03 - 1.7613013e+03 5.5201398e+02 4.7535161e+03 - 1.7490059e+03 5.8563959e+02 4.7537053e+03 - 1.7360032e+03 6.1910037e+02 4.7538982e+03 - 1.7223000e+03 6.5238508e+02 4.7540936e+03 - 1.7079035e+03 6.8548224e+02 4.7542903e+03 - 1.6928212e+03 7.1838019e+02 4.7544872e+03 - 1.6770611e+03 7.5106702e+02 4.7546829e+03 - 1.6606315e+03 7.8353062e+02 4.7548762e+03 - 1.6435411e+03 8.1575869e+02 4.7550660e+03 - 1.6257990e+03 8.4773870e+02 4.7552512e+03 - 1.6074147e+03 8.7945796e+02 4.7554304e+03 - 1.5883980e+03 9.1090358e+02 4.7556027e+03 - 1.5687591e+03 9.4206252e+02 4.7557670e+03 - 1.5485086e+03 9.7292157e+02 4.7559222e+03 - 1.5276572e+03 1.0034674e+03 4.7560674e+03 - 1.5062163e+03 1.0336865e+03 4.7562016e+03 - 1.4841972e+03 1.0635654e+03 4.7563241e+03 - 1.4616118e+03 1.0930903e+03 4.7564340e+03 - 1.4384721e+03 1.1222477e+03 4.7565308e+03 - 1.4147905e+03 1.1510236e+03 4.7566136e+03 - 1.3905795e+03 1.1794043e+03 4.7566822e+03 - 1.3658519e+03 1.2073761e+03 4.7567359e+03 - 1.3406207e+03 1.2349252e+03 4.7567746e+03 - 1.3148991e+03 1.2620378e+03 4.7567978e+03 - 1.2887003e+03 1.2887003e+03 4.7568056e+03 - 1.2620378e+03 1.3148991e+03 4.7567978e+03 - 1.2349252e+03 1.3406207e+03 4.7567746e+03 - 1.2073761e+03 1.3658519e+03 4.7567359e+03 - 1.1794043e+03 1.3905795e+03 4.7566822e+03 - 1.1510236e+03 1.4147905e+03 4.7566136e+03 - 1.1222477e+03 1.4384721e+03 4.7565308e+03 - 1.0930903e+03 1.4616118e+03 4.7564340e+03 - 1.0635654e+03 1.4841972e+03 4.7563241e+03 - 1.0336865e+03 1.5062163e+03 4.7562016e+03 - 1.0034674e+03 1.5276572e+03 4.7560674e+03 - 9.7292157e+02 1.5485086e+03 4.7559222e+03 - 9.4206252e+02 1.5687591e+03 4.7557670e+03 - 9.1090358e+02 1.5883980e+03 4.7556027e+03 - 8.7945796e+02 1.6074147e+03 4.7554304e+03 - 8.4773870e+02 1.6257990e+03 4.7552512e+03 - 8.1575869e+02 1.6435411e+03 4.7550660e+03 - 7.8353062e+02 1.6606315e+03 4.7548762e+03 - 7.5106702e+02 1.6770611e+03 4.7546829e+03 - 7.1838019e+02 1.6928212e+03 4.7544872e+03 - 6.8548224e+02 1.7079035e+03 4.7542903e+03 - 6.5238508e+02 1.7223000e+03 4.7540936e+03 - 6.1910037e+02 1.7360032e+03 4.7538982e+03 - 5.8563959e+02 1.7490059e+03 4.7537053e+03 - 5.5201398e+02 1.7613013e+03 4.7535161e+03 - 5.1823456e+02 1.7728831e+03 4.7533317e+03 - 4.8431217e+02 1.7837454e+03 4.7531533e+03 - 4.5025739e+02 1.7938825e+03 4.7529820e+03 - 4.1608065e+02 1.8032893e+03 4.7528188e+03 - 3.8179214e+02 1.8119609e+03 4.7526647e+03 - 3.4740188e+02 1.8198931e+03 4.7525206e+03 - 3.1291974e+02 1.8270819e+03 4.7523875e+03 - 2.7835538e+02 1.8335235e+03 4.7522662e+03 - 2.4371834e+02 1.8392148e+03 4.7521573e+03 - 2.0901803e+02 1.8441530e+03 4.7520616e+03 - 1.7426370e+02 1.8483356e+03 4.7519796e+03 - 1.3946453e+02 1.8517606e+03 4.7519118e+03 - 1.0462959e+02 1.8544262e+03 4.7518586e+03 - 6.9767900e+01 1.8563311e+03 4.7518204e+03 - 3.4888398e+01 1.8574745e+03 4.7517974e+03 - 0.0000000e+00 1.8578557e+03 4.7517897e+03 - -3.4888398e+01 1.8574745e+03 4.7517974e+03 - -6.9767900e+01 1.8563311e+03 4.7518204e+03 - -1.0462959e+02 1.8544262e+03 4.7518586e+03 - -1.3946453e+02 1.8517606e+03 4.7519118e+03 - -1.7426370e+02 1.8483356e+03 4.7519796e+03 - -2.0901803e+02 1.8441530e+03 4.7520616e+03 - -2.4371834e+02 1.8392148e+03 4.7521573e+03 - -2.7835538e+02 1.8335235e+03 4.7522662e+03 - -3.1291974e+02 1.8270819e+03 4.7523875e+03 - -3.4740188e+02 1.8198931e+03 4.7525206e+03 - -3.8179214e+02 1.8119609e+03 4.7526647e+03 - -4.1608065e+02 1.8032893e+03 4.7528188e+03 - -4.5025739e+02 1.7938825e+03 4.7529820e+03 - -4.8431217e+02 1.7837454e+03 4.7531533e+03 - -5.1823456e+02 1.7728831e+03 4.7533317e+03 - -5.5201398e+02 1.7613013e+03 4.7535161e+03 - -5.8563959e+02 1.7490059e+03 4.7537053e+03 - -6.1910037e+02 1.7360032e+03 4.7538982e+03 - -6.5238508e+02 1.7223000e+03 4.7540936e+03 - -6.8548224e+02 1.7079035e+03 4.7542903e+03 - -7.1838019e+02 1.6928212e+03 4.7544872e+03 - -7.5106702e+02 1.6770611e+03 4.7546829e+03 - -7.8353062e+02 1.6606315e+03 4.7548762e+03 - -8.1575869e+02 1.6435411e+03 4.7550660e+03 - -8.4773870e+02 1.6257990e+03 4.7552512e+03 - -8.7945796e+02 1.6074147e+03 4.7554304e+03 - -9.1090358e+02 1.5883980e+03 4.7556027e+03 - -9.4206252e+02 1.5687591e+03 4.7557670e+03 - -9.7292157e+02 1.5485086e+03 4.7559222e+03 - -1.0034674e+03 1.5276572e+03 4.7560674e+03 - -1.0336865e+03 1.5062163e+03 4.7562016e+03 - -1.0635654e+03 1.4841972e+03 4.7563241e+03 - -1.0930903e+03 1.4616118e+03 4.7564340e+03 - -1.1222477e+03 1.4384721e+03 4.7565308e+03 - -1.1510236e+03 1.4147905e+03 4.7566136e+03 - -1.1794043e+03 1.3905795e+03 4.7566822e+03 - -1.2073761e+03 1.3658519e+03 4.7567359e+03 - -1.2349252e+03 1.3406207e+03 4.7567746e+03 - -1.2620378e+03 1.3148991e+03 4.7567978e+03 - -1.2887003e+03 1.2887003e+03 4.7568056e+03 - -1.3148991e+03 1.2620378e+03 4.7567978e+03 - -1.3406207e+03 1.2349252e+03 4.7567746e+03 - -1.3658519e+03 1.2073761e+03 4.7567359e+03 - -1.3905795e+03 1.1794043e+03 4.7566822e+03 - -1.4147905e+03 1.1510236e+03 4.7566136e+03 - -1.4384721e+03 1.1222477e+03 4.7565308e+03 - -1.4616118e+03 1.0930903e+03 4.7564340e+03 - -1.4841972e+03 1.0635654e+03 4.7563241e+03 - -1.5062163e+03 1.0336865e+03 4.7562016e+03 - -1.5276572e+03 1.0034674e+03 4.7560674e+03 - -1.5485086e+03 9.7292157e+02 4.7559222e+03 - -1.5687591e+03 9.4206252e+02 4.7557670e+03 - -1.5883980e+03 9.1090358e+02 4.7556027e+03 - -1.6074147e+03 8.7945796e+02 4.7554304e+03 - -1.6257990e+03 8.4773870e+02 4.7552512e+03 - -1.6435411e+03 8.1575869e+02 4.7550660e+03 - -1.6606315e+03 7.8353062e+02 4.7548762e+03 - -1.6770611e+03 7.5106702e+02 4.7546829e+03 - -1.6928212e+03 7.1838019e+02 4.7544872e+03 - -1.7079035e+03 6.8548224e+02 4.7542903e+03 - -1.7223000e+03 6.5238508e+02 4.7540936e+03 - -1.7360032e+03 6.1910037e+02 4.7538982e+03 - -1.7490059e+03 5.8563959e+02 4.7537053e+03 - -1.7613013e+03 5.5201398e+02 4.7535161e+03 - -1.7728831e+03 5.1823456e+02 4.7533317e+03 - -1.7837454e+03 4.8431217e+02 4.7531533e+03 - -1.7938825e+03 4.5025739e+02 4.7529820e+03 - -1.8032893e+03 4.1608065e+02 4.7528188e+03 - -1.8119609e+03 3.8179214e+02 4.7526647e+03 - -1.8198931e+03 3.4740188e+02 4.7525206e+03 - -1.8270819e+03 3.1291974e+02 4.7523875e+03 - -1.8335235e+03 2.7835538e+02 4.7522662e+03 - -1.8392148e+03 2.4371834e+02 4.7521573e+03 - -1.8441530e+03 2.0901803e+02 4.7520616e+03 - -1.8483356e+03 1.7426370e+02 4.7519796e+03 - -1.8517606e+03 1.3946453e+02 4.7519118e+03 - -1.8544262e+03 1.0462959e+02 4.7518586e+03 - -1.8563311e+03 6.9767900e+01 4.7518204e+03 - -1.8574745e+03 3.4888398e+01 4.7517974e+03 - -1.8578557e+03 0.0000000e+00 4.7517897e+03 - -1.8574745e+03 -3.4888398e+01 4.7517974e+03 - -1.8563311e+03 -6.9767900e+01 4.7518204e+03 - -1.8544262e+03 -1.0462959e+02 4.7518586e+03 - -1.8517606e+03 -1.3946453e+02 4.7519118e+03 - -1.8483356e+03 -1.7426370e+02 4.7519796e+03 - -1.8441530e+03 -2.0901803e+02 4.7520616e+03 - -1.8392148e+03 -2.4371834e+02 4.7521573e+03 - -1.8335235e+03 -2.7835538e+02 4.7522662e+03 - -1.8270819e+03 -3.1291974e+02 4.7523875e+03 - -1.8198931e+03 -3.4740188e+02 4.7525206e+03 - -1.8119609e+03 -3.8179214e+02 4.7526647e+03 - -1.8032893e+03 -4.1608065e+02 4.7528188e+03 - -1.7938825e+03 -4.5025739e+02 4.7529820e+03 - -1.7837454e+03 -4.8431217e+02 4.7531533e+03 - -1.7728831e+03 -5.1823456e+02 4.7533317e+03 - -1.7613013e+03 -5.5201398e+02 4.7535161e+03 - -1.7490059e+03 -5.8563959e+02 4.7537053e+03 - -1.7360032e+03 -6.1910037e+02 4.7538982e+03 - -1.7223000e+03 -6.5238508e+02 4.7540936e+03 - -1.7079035e+03 -6.8548224e+02 4.7542903e+03 - -1.6928212e+03 -7.1838019e+02 4.7544872e+03 - -1.6770611e+03 -7.5106702e+02 4.7546829e+03 - -1.6606315e+03 -7.8353062e+02 4.7548762e+03 - -1.6435411e+03 -8.1575869e+02 4.7550660e+03 - -1.6257990e+03 -8.4773870e+02 4.7552512e+03 - -1.6074147e+03 -8.7945796e+02 4.7554304e+03 - -1.5883980e+03 -9.1090358e+02 4.7556027e+03 - -1.5687591e+03 -9.4206252e+02 4.7557670e+03 - -1.5485086e+03 -9.7292157e+02 4.7559222e+03 - -1.5276572e+03 -1.0034674e+03 4.7560674e+03 - -1.5062163e+03 -1.0336865e+03 4.7562016e+03 - -1.4841972e+03 -1.0635654e+03 4.7563241e+03 - -1.4616118e+03 -1.0930903e+03 4.7564340e+03 - -1.4384721e+03 -1.1222477e+03 4.7565308e+03 - -1.4147905e+03 -1.1510236e+03 4.7566136e+03 - -1.3905795e+03 -1.1794043e+03 4.7566822e+03 - -1.3658519e+03 -1.2073761e+03 4.7567359e+03 - -1.3406207e+03 -1.2349252e+03 4.7567746e+03 - -1.3148991e+03 -1.2620378e+03 4.7567978e+03 - -1.2887003e+03 -1.2887003e+03 4.7568056e+03 - -1.2620378e+03 -1.3148991e+03 4.7567978e+03 - -1.2349252e+03 -1.3406207e+03 4.7567746e+03 - -1.2073761e+03 -1.3658519e+03 4.7567359e+03 - -1.1794043e+03 -1.3905795e+03 4.7566822e+03 - -1.1510236e+03 -1.4147905e+03 4.7566136e+03 - -1.1222477e+03 -1.4384721e+03 4.7565308e+03 - -1.0930903e+03 -1.4616118e+03 4.7564340e+03 - -1.0635654e+03 -1.4841972e+03 4.7563241e+03 - -1.0336865e+03 -1.5062163e+03 4.7562016e+03 - -1.0034674e+03 -1.5276572e+03 4.7560674e+03 - -9.7292157e+02 -1.5485086e+03 4.7559222e+03 - -9.4206252e+02 -1.5687591e+03 4.7557670e+03 - -9.1090358e+02 -1.5883980e+03 4.7556027e+03 - -8.7945796e+02 -1.6074147e+03 4.7554304e+03 - -8.4773870e+02 -1.6257990e+03 4.7552512e+03 - -8.1575869e+02 -1.6435411e+03 4.7550660e+03 - -7.8353062e+02 -1.6606315e+03 4.7548762e+03 - -7.5106702e+02 -1.6770611e+03 4.7546829e+03 - -7.1838019e+02 -1.6928212e+03 4.7544872e+03 - -6.8548224e+02 -1.7079035e+03 4.7542903e+03 - -6.5238508e+02 -1.7223000e+03 4.7540936e+03 - -6.1910037e+02 -1.7360032e+03 4.7538982e+03 - -5.8563959e+02 -1.7490059e+03 4.7537053e+03 - -5.5201398e+02 -1.7613013e+03 4.7535161e+03 - -5.1823456e+02 -1.7728831e+03 4.7533317e+03 - -4.8431217e+02 -1.7837454e+03 4.7531533e+03 - -4.5025739e+02 -1.7938825e+03 4.7529820e+03 - -4.1608065e+02 -1.8032893e+03 4.7528188e+03 - -3.8179214e+02 -1.8119609e+03 4.7526647e+03 - -3.4740188e+02 -1.8198931e+03 4.7525206e+03 - -3.1291974e+02 -1.8270819e+03 4.7523875e+03 - -2.7835538e+02 -1.8335235e+03 4.7522662e+03 - -2.4371834e+02 -1.8392148e+03 4.7521573e+03 - -2.0901803e+02 -1.8441530e+03 4.7520616e+03 - -1.7426370e+02 -1.8483356e+03 4.7519796e+03 - -1.3946453e+02 -1.8517606e+03 4.7519118e+03 - -1.0462959e+02 -1.8544262e+03 4.7518586e+03 - -6.9767900e+01 -1.8563311e+03 4.7518204e+03 - -3.4888398e+01 -1.8574745e+03 4.7517974e+03 - 0.0000000e+00 -1.8578557e+03 4.7517897e+03 - 3.4888398e+01 -1.8574745e+03 4.7517974e+03 - 6.9767900e+01 -1.8563311e+03 4.7518204e+03 - 1.0462959e+02 -1.8544262e+03 4.7518586e+03 - 1.3946453e+02 -1.8517606e+03 4.7519118e+03 - 1.7426370e+02 -1.8483356e+03 4.7519796e+03 - 2.0901803e+02 -1.8441530e+03 4.7520616e+03 - 2.4371834e+02 -1.8392148e+03 4.7521573e+03 - 2.7835538e+02 -1.8335235e+03 4.7522662e+03 - 3.1291974e+02 -1.8270819e+03 4.7523875e+03 - 3.4740188e+02 -1.8198931e+03 4.7525206e+03 - 3.8179214e+02 -1.8119609e+03 4.7526647e+03 - 4.1608065e+02 -1.8032893e+03 4.7528188e+03 - 4.5025739e+02 -1.7938825e+03 4.7529820e+03 - 4.8431217e+02 -1.7837454e+03 4.7531533e+03 - 5.1823456e+02 -1.7728831e+03 4.7533317e+03 - 5.5201398e+02 -1.7613013e+03 4.7535161e+03 - 5.8563959e+02 -1.7490059e+03 4.7537053e+03 - 6.1910037e+02 -1.7360032e+03 4.7538982e+03 - 6.5238508e+02 -1.7223000e+03 4.7540936e+03 - 6.8548224e+02 -1.7079035e+03 4.7542903e+03 - 7.1838019e+02 -1.6928212e+03 4.7544872e+03 - 7.5106702e+02 -1.6770611e+03 4.7546829e+03 - 7.8353062e+02 -1.6606315e+03 4.7548762e+03 - 8.1575869e+02 -1.6435411e+03 4.7550660e+03 - 8.4773870e+02 -1.6257990e+03 4.7552512e+03 - 8.7945796e+02 -1.6074147e+03 4.7554304e+03 - 9.1090358e+02 -1.5883980e+03 4.7556027e+03 - 9.4206252e+02 -1.5687591e+03 4.7557670e+03 - 9.7292157e+02 -1.5485086e+03 4.7559222e+03 - 1.0034674e+03 -1.5276572e+03 4.7560674e+03 - 1.0336865e+03 -1.5062163e+03 4.7562016e+03 - 1.0635654e+03 -1.4841972e+03 4.7563241e+03 - 1.0930903e+03 -1.4616118e+03 4.7564340e+03 - 1.1222477e+03 -1.4384721e+03 4.7565308e+03 - 1.1510236e+03 -1.4147905e+03 4.7566136e+03 - 1.1794043e+03 -1.3905795e+03 4.7566822e+03 - 1.2073761e+03 -1.3658519e+03 4.7567359e+03 - 1.2349252e+03 -1.3406207e+03 4.7567746e+03 - 1.2620378e+03 -1.3148991e+03 4.7567978e+03 - 1.2887003e+03 -1.2887003e+03 4.7568056e+03 - 1.3148991e+03 -1.2620378e+03 4.7567978e+03 - 1.3406207e+03 -1.2349252e+03 4.7567746e+03 - 1.3658519e+03 -1.2073761e+03 4.7567359e+03 - 1.3905795e+03 -1.1794043e+03 4.7566822e+03 - 1.4147905e+03 -1.1510236e+03 4.7566136e+03 - 1.4384721e+03 -1.1222477e+03 4.7565308e+03 - 1.4616118e+03 -1.0930903e+03 4.7564340e+03 - 1.4841972e+03 -1.0635654e+03 4.7563241e+03 - 1.5062163e+03 -1.0336865e+03 4.7562016e+03 - 1.5276572e+03 -1.0034674e+03 4.7560674e+03 - 1.5485086e+03 -9.7292157e+02 4.7559222e+03 - 1.5687591e+03 -9.4206252e+02 4.7557670e+03 - 1.5883980e+03 -9.1090358e+02 4.7556027e+03 - 1.6074147e+03 -8.7945796e+02 4.7554304e+03 - 1.6257990e+03 -8.4773870e+02 4.7552512e+03 - 1.6435411e+03 -8.1575869e+02 4.7550660e+03 - 1.6606315e+03 -7.8353062e+02 4.7548762e+03 - 1.6770611e+03 -7.5106702e+02 4.7546829e+03 - 1.6928212e+03 -7.1838019e+02 4.7544872e+03 - 1.7079035e+03 -6.8548224e+02 4.7542903e+03 - 1.7223000e+03 -6.5238508e+02 4.7540936e+03 - 1.7360032e+03 -6.1910037e+02 4.7538982e+03 - 1.7490059e+03 -5.8563959e+02 4.7537053e+03 - 1.7613013e+03 -5.5201398e+02 4.7535161e+03 - 1.7728831e+03 -5.1823456e+02 4.7533317e+03 - 1.7837454e+03 -4.8431217e+02 4.7531533e+03 - 1.7938825e+03 -4.5025739e+02 4.7529820e+03 - 1.8032893e+03 -4.1608065e+02 4.7528188e+03 - 1.8119609e+03 -3.8179214e+02 4.7526647e+03 - 1.8198931e+03 -3.4740188e+02 4.7525206e+03 - 1.8270819e+03 -3.1291974e+02 4.7523875e+03 - 1.8335235e+03 -2.7835538e+02 4.7522662e+03 - 1.8392148e+03 -2.4371834e+02 4.7521573e+03 - 1.8441530e+03 -2.0901803e+02 4.7520616e+03 - 1.8483356e+03 -1.7426370e+02 4.7519796e+03 - 1.8517606e+03 -1.3946453e+02 4.7519118e+03 - 1.8544262e+03 -1.0462959e+02 4.7518586e+03 - 1.8563311e+03 -6.9767900e+01 4.7518204e+03 - 1.8574745e+03 -3.4888398e+01 4.7517974e+03 - 1.8578557e+03 0.0000000e+00 4.7517897e+03 - 2.0009436e+03 0.0000000e+00 4.7218777e+03 - 2.0005301e+03 3.7268613e+01 4.7218881e+03 - 1.9992901e+03 7.4528794e+01 4.7219193e+03 - 1.9972240e+03 1.1177209e+02 4.7219711e+03 - 1.9943329e+03 1.4898998e+02 4.7220432e+03 - 1.9906180e+03 1.8617389e+02 4.7221352e+03 - 1.9860813e+03 2.2331513e+02 4.7222464e+03 - 1.9807249e+03 2.6040488e+02 4.7223763e+03 - 1.9745515e+03 2.9743419e+02 4.7225240e+03 - 1.9675639e+03 3.3439392e+02 4.7226887e+03 - 1.9597657e+03 3.7127474e+02 4.7228693e+03 - 1.9511606e+03 4.0806712e+02 4.7230648e+03 - 1.9417530e+03 4.4476127e+02 4.7232739e+03 - 1.9315476e+03 4.8134720e+02 4.7234955e+03 - 1.9205494e+03 5.1781460e+02 4.7237281e+03 - 1.9087642e+03 5.5415293e+02 4.7239703e+03 - 1.8961978e+03 5.9035134e+02 4.7242207e+03 - 1.8828568e+03 6.2639868e+02 4.7244778e+03 - 1.8687481e+03 6.6228350e+02 4.7247399e+03 - 1.8538791e+03 6.9799405e+02 4.7250054e+03 - 1.8382576e+03 7.3351824e+02 4.7252728e+03 - 1.8218920e+03 7.6884369e+02 4.7255403e+03 - 1.8047909e+03 8.0395771e+02 4.7258063e+03 - 1.7869636e+03 8.3884729e+02 4.7260692e+03 - 1.7684198e+03 8.7349912e+02 4.7263274e+03 - 1.7491696e+03 9.0789960e+02 4.7265792e+03 - 1.7292236e+03 9.4203485e+02 4.7268230e+03 - 1.7085927e+03 9.7589072e+02 4.7270575e+03 - 1.6872884e+03 1.0094528e+03 4.7272810e+03 - 1.6653225e+03 1.0427065e+03 4.7274922e+03 - 1.6427074e+03 1.0756370e+03 4.7276898e+03 - 1.6194556e+03 1.1082291e+03 4.7278726e+03 - 1.5955801e+03 1.1404678e+03 4.7280393e+03 - 1.5710943e+03 1.1723376e+03 4.7281890e+03 - 1.5460119e+03 1.2038231e+03 4.7283207e+03 - 1.5203469e+03 1.2349088e+03 4.7284336e+03 - 1.4941137e+03 1.2655790e+03 4.7285269e+03 - 1.4673267e+03 1.2958181e+03 4.7286001e+03 - 1.4400007e+03 1.3256104e+03 4.7286527e+03 - 1.4121509e+03 1.3549403e+03 4.7286844e+03 - 1.3837923e+03 1.3837923e+03 4.7286950e+03 - 1.3549403e+03 1.4121509e+03 4.7286844e+03 - 1.3256104e+03 1.4400007e+03 4.7286527e+03 - 1.2958181e+03 1.4673267e+03 4.7286001e+03 - 1.2655790e+03 1.4941137e+03 4.7285269e+03 - 1.2349088e+03 1.5203469e+03 4.7284336e+03 - 1.2038231e+03 1.5460119e+03 4.7283207e+03 - 1.1723376e+03 1.5710943e+03 4.7281890e+03 - 1.1404678e+03 1.5955801e+03 4.7280393e+03 - 1.1082291e+03 1.6194556e+03 4.7278726e+03 - 1.0756370e+03 1.6427074e+03 4.7276898e+03 - 1.0427065e+03 1.6653225e+03 4.7274922e+03 - 1.0094528e+03 1.6872884e+03 4.7272810e+03 - 9.7589072e+02 1.7085927e+03 4.7270575e+03 - 9.4203485e+02 1.7292236e+03 4.7268230e+03 - 9.0789960e+02 1.7491696e+03 4.7265792e+03 - 8.7349912e+02 1.7684198e+03 4.7263274e+03 - 8.3884729e+02 1.7869636e+03 4.7260692e+03 - 8.0395771e+02 1.8047909e+03 4.7258063e+03 - 7.6884369e+02 1.8218920e+03 4.7255403e+03 - 7.3351824e+02 1.8382576e+03 4.7252728e+03 - 6.9799405e+02 1.8538791e+03 4.7250054e+03 - 6.6228350e+02 1.8687481e+03 4.7247399e+03 - 6.2639868e+02 1.8828568e+03 4.7244778e+03 - 5.9035134e+02 1.8961978e+03 4.7242207e+03 - 5.5415293e+02 1.9087642e+03 4.7239703e+03 - 5.1781460e+02 1.9205494e+03 4.7237281e+03 - 4.8134720e+02 1.9315476e+03 4.7234955e+03 - 4.4476127e+02 1.9417530e+03 4.7232739e+03 - 4.0806712e+02 1.9511606e+03 4.7230648e+03 - 3.7127474e+02 1.9597657e+03 4.7228693e+03 - 3.3439392e+02 1.9675639e+03 4.7226887e+03 - 2.9743419e+02 1.9745515e+03 4.7225240e+03 - 2.6040488e+02 1.9807249e+03 4.7223763e+03 - 2.2331513e+02 1.9860813e+03 4.7222464e+03 - 1.8617389e+02 1.9906180e+03 4.7221352e+03 - 1.4898998e+02 1.9943329e+03 4.7220432e+03 - 1.1177209e+02 1.9972240e+03 4.7219711e+03 - 7.4528794e+01 1.9992901e+03 4.7219193e+03 - 3.7268613e+01 2.0005301e+03 4.7218881e+03 - 0.0000000e+00 2.0009436e+03 4.7218777e+03 - -3.7268613e+01 2.0005301e+03 4.7218881e+03 - -7.4528794e+01 1.9992901e+03 4.7219193e+03 - -1.1177209e+02 1.9972240e+03 4.7219711e+03 - -1.4898998e+02 1.9943329e+03 4.7220432e+03 - -1.8617389e+02 1.9906180e+03 4.7221352e+03 - -2.2331513e+02 1.9860813e+03 4.7222464e+03 - -2.6040488e+02 1.9807249e+03 4.7223763e+03 - -2.9743419e+02 1.9745515e+03 4.7225240e+03 - -3.3439392e+02 1.9675639e+03 4.7226887e+03 - -3.7127474e+02 1.9597657e+03 4.7228693e+03 - -4.0806712e+02 1.9511606e+03 4.7230648e+03 - -4.4476127e+02 1.9417530e+03 4.7232739e+03 - -4.8134720e+02 1.9315476e+03 4.7234955e+03 - -5.1781460e+02 1.9205494e+03 4.7237281e+03 - -5.5415293e+02 1.9087642e+03 4.7239703e+03 - -5.9035134e+02 1.8961978e+03 4.7242207e+03 - -6.2639868e+02 1.8828568e+03 4.7244778e+03 - -6.6228350e+02 1.8687481e+03 4.7247399e+03 - -6.9799405e+02 1.8538791e+03 4.7250054e+03 - -7.3351824e+02 1.8382576e+03 4.7252728e+03 - -7.6884369e+02 1.8218920e+03 4.7255403e+03 - -8.0395771e+02 1.8047909e+03 4.7258063e+03 - -8.3884729e+02 1.7869636e+03 4.7260692e+03 - -8.7349912e+02 1.7684198e+03 4.7263274e+03 - -9.0789960e+02 1.7491696e+03 4.7265792e+03 - -9.4203485e+02 1.7292236e+03 4.7268230e+03 - -9.7589072e+02 1.7085927e+03 4.7270575e+03 - -1.0094528e+03 1.6872884e+03 4.7272810e+03 - -1.0427065e+03 1.6653225e+03 4.7274922e+03 - -1.0756370e+03 1.6427074e+03 4.7276898e+03 - -1.1082291e+03 1.6194556e+03 4.7278726e+03 - -1.1404678e+03 1.5955801e+03 4.7280393e+03 - -1.1723376e+03 1.5710943e+03 4.7281890e+03 - -1.2038231e+03 1.5460119e+03 4.7283207e+03 - -1.2349088e+03 1.5203469e+03 4.7284336e+03 - -1.2655790e+03 1.4941137e+03 4.7285269e+03 - -1.2958181e+03 1.4673267e+03 4.7286001e+03 - -1.3256104e+03 1.4400007e+03 4.7286527e+03 - -1.3549403e+03 1.4121509e+03 4.7286844e+03 - -1.3837923e+03 1.3837923e+03 4.7286950e+03 - -1.4121509e+03 1.3549403e+03 4.7286844e+03 - -1.4400007e+03 1.3256104e+03 4.7286527e+03 - -1.4673267e+03 1.2958181e+03 4.7286001e+03 - -1.4941137e+03 1.2655790e+03 4.7285269e+03 - -1.5203469e+03 1.2349088e+03 4.7284336e+03 - -1.5460119e+03 1.2038231e+03 4.7283207e+03 - -1.5710943e+03 1.1723376e+03 4.7281890e+03 - -1.5955801e+03 1.1404678e+03 4.7280393e+03 - -1.6194556e+03 1.1082291e+03 4.7278726e+03 - -1.6427074e+03 1.0756370e+03 4.7276898e+03 - -1.6653225e+03 1.0427065e+03 4.7274922e+03 - -1.6872884e+03 1.0094528e+03 4.7272810e+03 - -1.7085927e+03 9.7589072e+02 4.7270575e+03 - -1.7292236e+03 9.4203485e+02 4.7268230e+03 - -1.7491696e+03 9.0789960e+02 4.7265792e+03 - -1.7684198e+03 8.7349912e+02 4.7263274e+03 - -1.7869636e+03 8.3884729e+02 4.7260692e+03 - -1.8047909e+03 8.0395771e+02 4.7258063e+03 - -1.8218920e+03 7.6884369e+02 4.7255403e+03 - -1.8382576e+03 7.3351824e+02 4.7252728e+03 - -1.8538791e+03 6.9799405e+02 4.7250054e+03 - -1.8687481e+03 6.6228350e+02 4.7247399e+03 - -1.8828568e+03 6.2639868e+02 4.7244778e+03 - -1.8961978e+03 5.9035134e+02 4.7242207e+03 - -1.9087642e+03 5.5415293e+02 4.7239703e+03 - -1.9205494e+03 5.1781460e+02 4.7237281e+03 - -1.9315476e+03 4.8134720e+02 4.7234955e+03 - -1.9417530e+03 4.4476127e+02 4.7232739e+03 - -1.9511606e+03 4.0806712e+02 4.7230648e+03 - -1.9597657e+03 3.7127474e+02 4.7228693e+03 - -1.9675639e+03 3.3439392e+02 4.7226887e+03 - -1.9745515e+03 2.9743419e+02 4.7225240e+03 - -1.9807249e+03 2.6040488e+02 4.7223763e+03 - -1.9860813e+03 2.2331513e+02 4.7222464e+03 - -1.9906180e+03 1.8617389e+02 4.7221352e+03 - -1.9943329e+03 1.4898998e+02 4.7220432e+03 - -1.9972240e+03 1.1177209e+02 4.7219711e+03 - -1.9992901e+03 7.4528794e+01 4.7219193e+03 - -2.0005301e+03 3.7268613e+01 4.7218881e+03 - -2.0009436e+03 4.8134273e-09 4.7218777e+03 - -2.0005301e+03 -3.7268613e+01 4.7218881e+03 - -1.9992901e+03 -7.4528794e+01 4.7219193e+03 - -1.9972240e+03 -1.1177209e+02 4.7219711e+03 - -1.9943329e+03 -1.4898998e+02 4.7220432e+03 - -1.9906180e+03 -1.8617389e+02 4.7221352e+03 - -1.9860813e+03 -2.2331513e+02 4.7222464e+03 - -1.9807249e+03 -2.6040488e+02 4.7223763e+03 - -1.9745515e+03 -2.9743419e+02 4.7225240e+03 - -1.9675639e+03 -3.3439392e+02 4.7226887e+03 - -1.9597657e+03 -3.7127474e+02 4.7228693e+03 - -1.9511606e+03 -4.0806712e+02 4.7230648e+03 - -1.9417530e+03 -4.4476127e+02 4.7232739e+03 - -1.9315476e+03 -4.8134720e+02 4.7234955e+03 - -1.9205494e+03 -5.1781460e+02 4.7237281e+03 - -1.9087642e+03 -5.5415293e+02 4.7239703e+03 - -1.8961978e+03 -5.9035134e+02 4.7242207e+03 - -1.8828568e+03 -6.2639868e+02 4.7244778e+03 - -1.8687481e+03 -6.6228350e+02 4.7247399e+03 - -1.8538791e+03 -6.9799405e+02 4.7250054e+03 - -1.8382576e+03 -7.3351824e+02 4.7252728e+03 - -1.8218920e+03 -7.6884369e+02 4.7255403e+03 - -1.8047909e+03 -8.0395771e+02 4.7258063e+03 - -1.7869636e+03 -8.3884729e+02 4.7260692e+03 - -1.7684198e+03 -8.7349912e+02 4.7263274e+03 - -1.7491696e+03 -9.0789960e+02 4.7265792e+03 - -1.7292236e+03 -9.4203485e+02 4.7268230e+03 - -1.7085927e+03 -9.7589072e+02 4.7270575e+03 - -1.6872884e+03 -1.0094528e+03 4.7272810e+03 - -1.6653225e+03 -1.0427065e+03 4.7274922e+03 - -1.6427074e+03 -1.0756370e+03 4.7276898e+03 - -1.6194556e+03 -1.1082291e+03 4.7278726e+03 - -1.5955801e+03 -1.1404678e+03 4.7280393e+03 - -1.5710943e+03 -1.1723376e+03 4.7281890e+03 - -1.5460119e+03 -1.2038231e+03 4.7283207e+03 - -1.5203469e+03 -1.2349088e+03 4.7284336e+03 - -1.4941137e+03 -1.2655790e+03 4.7285269e+03 - -1.4673267e+03 -1.2958181e+03 4.7286001e+03 - -1.4400007e+03 -1.3256104e+03 4.7286527e+03 - -1.4121509e+03 -1.3549403e+03 4.7286844e+03 - -1.3837923e+03 -1.3837923e+03 4.7286950e+03 - -1.3549403e+03 -1.4121509e+03 4.7286844e+03 - -1.3256104e+03 -1.4400007e+03 4.7286527e+03 - -1.2958181e+03 -1.4673267e+03 4.7286001e+03 - -1.2655790e+03 -1.4941137e+03 4.7285269e+03 - -1.2349088e+03 -1.5203469e+03 4.7284336e+03 - -1.2038231e+03 -1.5460119e+03 4.7283207e+03 - -1.1723376e+03 -1.5710943e+03 4.7281890e+03 - -1.1404678e+03 -1.5955801e+03 4.7280393e+03 - -1.1082291e+03 -1.6194556e+03 4.7278726e+03 - -1.0756370e+03 -1.6427074e+03 4.7276898e+03 - -1.0427065e+03 -1.6653225e+03 4.7274922e+03 - -1.0094528e+03 -1.6872884e+03 4.7272810e+03 - -9.7589072e+02 -1.7085927e+03 4.7270575e+03 - -9.4203485e+02 -1.7292236e+03 4.7268230e+03 - -9.0789960e+02 -1.7491696e+03 4.7265792e+03 - -8.7349912e+02 -1.7684198e+03 4.7263274e+03 - -8.3884729e+02 -1.7869636e+03 4.7260692e+03 - -8.0395771e+02 -1.8047909e+03 4.7258063e+03 - -7.6884369e+02 -1.8218920e+03 4.7255403e+03 - -7.3351824e+02 -1.8382576e+03 4.7252728e+03 - -6.9799405e+02 -1.8538791e+03 4.7250054e+03 - -6.6228350e+02 -1.8687481e+03 4.7247399e+03 - -6.2639868e+02 -1.8828568e+03 4.7244778e+03 - -5.9035134e+02 -1.8961978e+03 4.7242207e+03 - -5.5415293e+02 -1.9087642e+03 4.7239703e+03 - -5.1781460e+02 -1.9205494e+03 4.7237281e+03 - -4.8134720e+02 -1.9315476e+03 4.7234955e+03 - -4.4476127e+02 -1.9417530e+03 4.7232739e+03 - -4.0806712e+02 -1.9511606e+03 4.7230648e+03 - -3.7127474e+02 -1.9597657e+03 4.7228693e+03 - -3.3439392e+02 -1.9675639e+03 4.7226887e+03 - -2.9743419e+02 -1.9745515e+03 4.7225240e+03 - -2.6040488e+02 -1.9807249e+03 4.7223763e+03 - -2.2331513e+02 -1.9860813e+03 4.7222464e+03 - -1.8617389e+02 -1.9906180e+03 4.7221352e+03 - -1.4898998e+02 -1.9943329e+03 4.7220432e+03 - -1.1177209e+02 -1.9972240e+03 4.7219711e+03 - -7.4528794e+01 -1.9992901e+03 4.7219193e+03 - -3.7268613e+01 -2.0005301e+03 4.7218881e+03 - 0.0000000e+00 -2.0009436e+03 4.7218777e+03 - 3.7268613e+01 -2.0005301e+03 4.7218881e+03 - 7.4528794e+01 -1.9992901e+03 4.7219193e+03 - 1.1177209e+02 -1.9972240e+03 4.7219711e+03 - 1.4898998e+02 -1.9943329e+03 4.7220432e+03 - 1.8617389e+02 -1.9906180e+03 4.7221352e+03 - 2.2331513e+02 -1.9860813e+03 4.7222464e+03 - 2.6040488e+02 -1.9807249e+03 4.7223763e+03 - 2.9743419e+02 -1.9745515e+03 4.7225240e+03 - 3.3439392e+02 -1.9675639e+03 4.7226887e+03 - 3.7127474e+02 -1.9597657e+03 4.7228693e+03 - 4.0806712e+02 -1.9511606e+03 4.7230648e+03 - 4.4476127e+02 -1.9417530e+03 4.7232739e+03 - 4.8134720e+02 -1.9315476e+03 4.7234955e+03 - 5.1781460e+02 -1.9205494e+03 4.7237281e+03 - 5.5415293e+02 -1.9087642e+03 4.7239703e+03 - 5.9035134e+02 -1.8961978e+03 4.7242207e+03 - 6.2639868e+02 -1.8828568e+03 4.7244778e+03 - 6.6228350e+02 -1.8687481e+03 4.7247399e+03 - 6.9799405e+02 -1.8538791e+03 4.7250054e+03 - 7.3351824e+02 -1.8382576e+03 4.7252728e+03 - 7.6884369e+02 -1.8218920e+03 4.7255403e+03 - 8.0395771e+02 -1.8047909e+03 4.7258063e+03 - 8.3884729e+02 -1.7869636e+03 4.7260692e+03 - 8.7349912e+02 -1.7684198e+03 4.7263274e+03 - 9.0789960e+02 -1.7491696e+03 4.7265792e+03 - 9.4203485e+02 -1.7292236e+03 4.7268230e+03 - 9.7589072e+02 -1.7085927e+03 4.7270575e+03 - 1.0094528e+03 -1.6872884e+03 4.7272810e+03 - 1.0427065e+03 -1.6653225e+03 4.7274922e+03 - 1.0756370e+03 -1.6427074e+03 4.7276898e+03 - 1.1082291e+03 -1.6194556e+03 4.7278726e+03 - 1.1404678e+03 -1.5955801e+03 4.7280393e+03 - 1.1723376e+03 -1.5710943e+03 4.7281890e+03 - 1.2038231e+03 -1.5460119e+03 4.7283207e+03 - 1.2349088e+03 -1.5203469e+03 4.7284336e+03 - 1.2655790e+03 -1.4941137e+03 4.7285269e+03 - 1.2958181e+03 -1.4673267e+03 4.7286001e+03 - 1.3256104e+03 -1.4400007e+03 4.7286527e+03 - 1.3549403e+03 -1.4121509e+03 4.7286844e+03 - 1.3837923e+03 -1.3837923e+03 4.7286950e+03 - 1.4121509e+03 -1.3549403e+03 4.7286844e+03 - 1.4400007e+03 -1.3256104e+03 4.7286527e+03 - 1.4673267e+03 -1.2958181e+03 4.7286001e+03 - 1.4941137e+03 -1.2655790e+03 4.7285269e+03 - 1.5203469e+03 -1.2349088e+03 4.7284336e+03 - 1.5460119e+03 -1.2038231e+03 4.7283207e+03 - 1.5710943e+03 -1.1723376e+03 4.7281890e+03 - 1.5955801e+03 -1.1404678e+03 4.7280393e+03 - 1.6194556e+03 -1.1082291e+03 4.7278726e+03 - 1.6427074e+03 -1.0756370e+03 4.7276898e+03 - 1.6653225e+03 -1.0427065e+03 4.7274922e+03 - 1.6872884e+03 -1.0094528e+03 4.7272810e+03 - 1.7085927e+03 -9.7589072e+02 4.7270575e+03 - 1.7292236e+03 -9.4203485e+02 4.7268230e+03 - 1.7491696e+03 -9.0789960e+02 4.7265792e+03 - 1.7684198e+03 -8.7349912e+02 4.7263274e+03 - 1.7869636e+03 -8.3884729e+02 4.7260692e+03 - 1.8047909e+03 -8.0395771e+02 4.7258063e+03 - 1.8218920e+03 -7.6884369e+02 4.7255403e+03 - 1.8382576e+03 -7.3351824e+02 4.7252728e+03 - 1.8538791e+03 -6.9799405e+02 4.7250054e+03 - 1.8687481e+03 -6.6228350e+02 4.7247399e+03 - 1.8828568e+03 -6.2639868e+02 4.7244778e+03 - 1.8961978e+03 -5.9035134e+02 4.7242207e+03 - 1.9087642e+03 -5.5415293e+02 4.7239703e+03 - 1.9205494e+03 -5.1781460e+02 4.7237281e+03 - 1.9315476e+03 -4.8134720e+02 4.7234955e+03 - 1.9417530e+03 -4.4476127e+02 4.7232739e+03 - 1.9511606e+03 -4.0806712e+02 4.7230648e+03 - 1.9597657e+03 -3.7127474e+02 4.7228693e+03 - 1.9675639e+03 -3.3439392e+02 4.7226887e+03 - 1.9745515e+03 -2.9743419e+02 4.7225240e+03 - 1.9807249e+03 -2.6040488e+02 4.7223763e+03 - 1.9860813e+03 -2.2331513e+02 4.7222464e+03 - 1.9906180e+03 -1.8617389e+02 4.7221352e+03 - 1.9943329e+03 -1.4898998e+02 4.7220432e+03 - 1.9972240e+03 -1.1177209e+02 4.7219711e+03 - 1.9992901e+03 -7.4528794e+01 4.7219193e+03 - 2.0005301e+03 -3.7268613e+01 4.7218881e+03 - 2.0009436e+03 4.8134273e-09 4.7218777e+03 - 2.1359124e+03 0.0000000e+00 4.6908853e+03 - 2.1354683e+03 3.9440997e+01 4.6908990e+03 - 2.1341363e+03 7.8874306e+01 4.6909398e+03 - 2.1319170e+03 1.1829221e+02 4.6910076e+03 - 2.1288114e+03 1.5768691e+02 4.6911020e+03 - 2.1248209e+03 1.9705052e+02 4.6912224e+03 - 2.1199474e+03 2.3637502e+02 4.6913680e+03 - 2.1141930e+03 2.7565220e+02 4.6915380e+03 - 2.1075606e+03 3.1487367e+02 4.6917314e+03 - 2.1000531e+03 3.5403080e+02 4.6919470e+03 - 2.0916741e+03 3.9311473e+02 4.6921836e+03 - 2.0824277e+03 4.3211627e+02 4.6924396e+03 - 2.0723182e+03 4.7102595e+02 4.6927136e+03 - 2.0613506e+03 5.0983397e+02 4.6930039e+03 - 2.0495303e+03 5.4853015e+02 4.6933087e+03 - 2.0368632e+03 5.8710397e+02 4.6936262e+03 - 2.0233557e+03 6.2554449e+02 4.6939545e+03 - 2.0090145e+03 6.6384039e+02 4.6942915e+03 - 1.9938472e+03 7.0197993e+02 4.6946352e+03 - 1.9778616e+03 7.3995095e+02 4.6949835e+03 - 1.9610662e+03 7.7774084e+02 4.6953342e+03 - 1.9434699e+03 8.1533661e+02 4.6956853e+03 - 1.9250822e+03 8.5272480e+02 4.6960344e+03 - 1.9059131e+03 8.8989154e+02 4.6963796e+03 - 1.8859733e+03 9.2682257e+02 4.6967185e+03 - 1.8652738e+03 9.6350320e+02 4.6970492e+03 - 1.8438263e+03 9.9991834e+02 4.6973695e+03 - 1.8216429e+03 1.0360526e+03 4.6976774e+03 - 1.7987362e+03 1.0718901e+03 4.6979711e+03 - 1.7751195e+03 1.1074147e+03 4.6982487e+03 - 1.7508064e+03 1.1426101e+03 4.6985084e+03 - 1.7258110e+03 1.1774595e+03 4.6987487e+03 - 1.7001479e+03 1.2119459e+03 4.6989679e+03 - 1.6738321e+03 1.2460523e+03 4.6991647e+03 - 1.6468790e+03 1.2797612e+03 4.6993379e+03 - 1.6193044e+03 1.3130551e+03 4.6994863e+03 - 1.5911245e+03 1.3459166e+03 4.6996091e+03 - 1.5623556e+03 1.3783279e+03 4.6997053e+03 - 1.5330146e+03 1.4102713e+03 4.6997746e+03 - 1.5031183e+03 1.4417293e+03 4.6998163e+03 - 1.4726841e+03 1.4726841e+03 4.6998302e+03 - 1.4417293e+03 1.5031183e+03 4.6998163e+03 - 1.4102713e+03 1.5330146e+03 4.6997746e+03 - 1.3783279e+03 1.5623556e+03 4.6997053e+03 - 1.3459166e+03 1.5911245e+03 4.6996091e+03 - 1.3130551e+03 1.6193044e+03 4.6994863e+03 - 1.2797612e+03 1.6468790e+03 4.6993379e+03 - 1.2460523e+03 1.6738321e+03 4.6991647e+03 - 1.2119459e+03 1.7001479e+03 4.6989679e+03 - 1.1774595e+03 1.7258110e+03 4.6987487e+03 - 1.1426101e+03 1.7508064e+03 4.6985084e+03 - 1.1074147e+03 1.7751195e+03 4.6982487e+03 - 1.0718901e+03 1.7987362e+03 4.6979711e+03 - 1.0360526e+03 1.8216429e+03 4.6976774e+03 - 9.9991834e+02 1.8438263e+03 4.6973695e+03 - 9.6350320e+02 1.8652738e+03 4.6970492e+03 - 9.2682257e+02 1.8859733e+03 4.6967185e+03 - 8.8989154e+02 1.9059131e+03 4.6963796e+03 - 8.5272480e+02 1.9250822e+03 4.6960344e+03 - 8.1533661e+02 1.9434699e+03 4.6956853e+03 - 7.7774084e+02 1.9610662e+03 4.6953342e+03 - 7.3995095e+02 1.9778616e+03 4.6949835e+03 - 7.0197993e+02 1.9938472e+03 4.6946352e+03 - 6.6384039e+02 2.0090145e+03 4.6942915e+03 - 6.2554449e+02 2.0233557e+03 4.6939545e+03 - 5.8710397e+02 2.0368632e+03 4.6936262e+03 - 5.4853015e+02 2.0495303e+03 4.6933087e+03 - 5.0983397e+02 2.0613506e+03 4.6930039e+03 - 4.7102595e+02 2.0723182e+03 4.6927136e+03 - 4.3211627e+02 2.0824277e+03 4.6924396e+03 - 3.9311473e+02 2.0916741e+03 4.6921836e+03 - 3.5403080e+02 2.1000531e+03 4.6919470e+03 - 3.1487367e+02 2.1075606e+03 4.6917314e+03 - 2.7565220e+02 2.1141930e+03 4.6915380e+03 - 2.3637502e+02 2.1199474e+03 4.6913680e+03 - 1.9705052e+02 2.1248209e+03 4.6912224e+03 - 1.5768691e+02 2.1288114e+03 4.6911020e+03 - 1.1829221e+02 2.1319170e+03 4.6910076e+03 - 7.8874306e+01 2.1341363e+03 4.6909398e+03 - 3.9440997e+01 2.1354683e+03 4.6908990e+03 - 0.0000000e+00 2.1359124e+03 4.6908853e+03 - -3.9440997e+01 2.1354683e+03 4.6908990e+03 - -7.8874306e+01 2.1341363e+03 4.6909398e+03 - -1.1829221e+02 2.1319170e+03 4.6910076e+03 - -1.5768691e+02 2.1288114e+03 4.6911020e+03 - -1.9705052e+02 2.1248209e+03 4.6912224e+03 - -2.3637502e+02 2.1199474e+03 4.6913680e+03 - -2.7565220e+02 2.1141930e+03 4.6915380e+03 - -3.1487367e+02 2.1075606e+03 4.6917314e+03 - -3.5403080e+02 2.1000531e+03 4.6919470e+03 - -3.9311473e+02 2.0916741e+03 4.6921836e+03 - -4.3211627e+02 2.0824277e+03 4.6924396e+03 - -4.7102595e+02 2.0723182e+03 4.6927136e+03 - -5.0983397e+02 2.0613506e+03 4.6930039e+03 - -5.4853015e+02 2.0495303e+03 4.6933087e+03 - -5.8710397e+02 2.0368632e+03 4.6936262e+03 - -6.2554449e+02 2.0233557e+03 4.6939545e+03 - -6.6384039e+02 2.0090145e+03 4.6942915e+03 - -7.0197993e+02 1.9938472e+03 4.6946352e+03 - -7.3995095e+02 1.9778616e+03 4.6949835e+03 - -7.7774084e+02 1.9610662e+03 4.6953342e+03 - -8.1533661e+02 1.9434699e+03 4.6956853e+03 - -8.5272480e+02 1.9250822e+03 4.6960344e+03 - -8.8989154e+02 1.9059131e+03 4.6963796e+03 - -9.2682257e+02 1.8859733e+03 4.6967185e+03 - -9.6350320e+02 1.8652738e+03 4.6970492e+03 - -9.9991834e+02 1.8438263e+03 4.6973695e+03 - -1.0360526e+03 1.8216429e+03 4.6976774e+03 - -1.0718901e+03 1.7987362e+03 4.6979711e+03 - -1.1074147e+03 1.7751195e+03 4.6982487e+03 - -1.1426101e+03 1.7508064e+03 4.6985084e+03 - -1.1774595e+03 1.7258110e+03 4.6987487e+03 - -1.2119459e+03 1.7001479e+03 4.6989679e+03 - -1.2460523e+03 1.6738321e+03 4.6991647e+03 - -1.2797612e+03 1.6468790e+03 4.6993379e+03 - -1.3130551e+03 1.6193044e+03 4.6994863e+03 - -1.3459166e+03 1.5911245e+03 4.6996091e+03 - -1.3783279e+03 1.5623556e+03 4.6997053e+03 - -1.4102713e+03 1.5330146e+03 4.6997746e+03 - -1.4417293e+03 1.5031183e+03 4.6998163e+03 - -1.4726841e+03 1.4726841e+03 4.6998302e+03 - -1.5031183e+03 1.4417293e+03 4.6998163e+03 - -1.5330146e+03 1.4102713e+03 4.6997746e+03 - -1.5623556e+03 1.3783279e+03 4.6997053e+03 - -1.5911245e+03 1.3459166e+03 4.6996091e+03 - -1.6193044e+03 1.3130551e+03 4.6994863e+03 - -1.6468790e+03 1.2797612e+03 4.6993379e+03 - -1.6738321e+03 1.2460523e+03 4.6991647e+03 - -1.7001479e+03 1.2119459e+03 4.6989679e+03 - -1.7258110e+03 1.1774595e+03 4.6987487e+03 - -1.7508064e+03 1.1426101e+03 4.6985084e+03 - -1.7751195e+03 1.1074147e+03 4.6982487e+03 - -1.7987362e+03 1.0718901e+03 4.6979711e+03 - -1.8216429e+03 1.0360526e+03 4.6976774e+03 - -1.8438263e+03 9.9991834e+02 4.6973695e+03 - -1.8652738e+03 9.6350320e+02 4.6970492e+03 - -1.8859733e+03 9.2682257e+02 4.6967185e+03 - -1.9059131e+03 8.8989154e+02 4.6963796e+03 - -1.9250822e+03 8.5272480e+02 4.6960344e+03 - -1.9434699e+03 8.1533661e+02 4.6956853e+03 - -1.9610662e+03 7.7774084e+02 4.6953342e+03 - -1.9778616e+03 7.3995095e+02 4.6949835e+03 - -1.9938472e+03 7.0197993e+02 4.6946352e+03 - -2.0090145e+03 6.6384039e+02 4.6942915e+03 - -2.0233557e+03 6.2554449e+02 4.6939545e+03 - -2.0368632e+03 5.8710397e+02 4.6936262e+03 - -2.0495303e+03 5.4853015e+02 4.6933087e+03 - -2.0613506e+03 5.0983397e+02 4.6930039e+03 - -2.0723182e+03 4.7102595e+02 4.6927136e+03 - -2.0824277e+03 4.3211627e+02 4.6924396e+03 - -2.0916741e+03 3.9311473e+02 4.6921836e+03 - -2.1000531e+03 3.5403080e+02 4.6919470e+03 - -2.1075606e+03 3.1487367e+02 4.6917314e+03 - -2.1141930e+03 2.7565220e+02 4.6915380e+03 - -2.1199474e+03 2.3637502e+02 4.6913680e+03 - -2.1248209e+03 1.9705052e+02 4.6912224e+03 - -2.1288114e+03 1.5768691e+02 4.6911020e+03 - -2.1319170e+03 1.1829221e+02 4.6910076e+03 - -2.1341363e+03 7.8874306e+01 4.6909398e+03 - -2.1354683e+03 3.9440997e+01 4.6908990e+03 - -2.1359124e+03 0.0000000e+00 4.6908853e+03 - -2.1354683e+03 -3.9440997e+01 4.6908990e+03 - -2.1341363e+03 -7.8874306e+01 4.6909398e+03 - -2.1319170e+03 -1.1829221e+02 4.6910076e+03 - -2.1288114e+03 -1.5768691e+02 4.6911020e+03 - -2.1248209e+03 -1.9705052e+02 4.6912224e+03 - -2.1199474e+03 -2.3637502e+02 4.6913680e+03 - -2.1141930e+03 -2.7565220e+02 4.6915380e+03 - -2.1075606e+03 -3.1487367e+02 4.6917314e+03 - -2.1000531e+03 -3.5403080e+02 4.6919470e+03 - -2.0916741e+03 -3.9311473e+02 4.6921836e+03 - -2.0824277e+03 -4.3211627e+02 4.6924396e+03 - -2.0723182e+03 -4.7102595e+02 4.6927136e+03 - -2.0613506e+03 -5.0983397e+02 4.6930039e+03 - -2.0495303e+03 -5.4853015e+02 4.6933087e+03 - -2.0368632e+03 -5.8710397e+02 4.6936262e+03 - -2.0233557e+03 -6.2554449e+02 4.6939545e+03 - -2.0090145e+03 -6.6384039e+02 4.6942915e+03 - -1.9938472e+03 -7.0197993e+02 4.6946352e+03 - -1.9778616e+03 -7.3995095e+02 4.6949835e+03 - -1.9610662e+03 -7.7774084e+02 4.6953342e+03 - -1.9434699e+03 -8.1533661e+02 4.6956853e+03 - -1.9250822e+03 -8.5272480e+02 4.6960344e+03 - -1.9059131e+03 -8.8989154e+02 4.6963796e+03 - -1.8859733e+03 -9.2682257e+02 4.6967185e+03 - -1.8652738e+03 -9.6350320e+02 4.6970492e+03 - -1.8438263e+03 -9.9991834e+02 4.6973695e+03 - -1.8216429e+03 -1.0360526e+03 4.6976774e+03 - -1.7987362e+03 -1.0718901e+03 4.6979711e+03 - -1.7751195e+03 -1.1074147e+03 4.6982487e+03 - -1.7508064e+03 -1.1426101e+03 4.6985084e+03 - -1.7258110e+03 -1.1774595e+03 4.6987487e+03 - -1.7001479e+03 -1.2119459e+03 4.6989679e+03 - -1.6738321e+03 -1.2460523e+03 4.6991647e+03 - -1.6468790e+03 -1.2797612e+03 4.6993379e+03 - -1.6193044e+03 -1.3130551e+03 4.6994863e+03 - -1.5911245e+03 -1.3459166e+03 4.6996091e+03 - -1.5623556e+03 -1.3783279e+03 4.6997053e+03 - -1.5330146e+03 -1.4102713e+03 4.6997746e+03 - -1.5031183e+03 -1.4417293e+03 4.6998163e+03 - -1.4726841e+03 -1.4726841e+03 4.6998302e+03 - -1.4417293e+03 -1.5031183e+03 4.6998163e+03 - -1.4102713e+03 -1.5330146e+03 4.6997746e+03 - -1.3783279e+03 -1.5623556e+03 4.6997053e+03 - -1.3459166e+03 -1.5911245e+03 4.6996091e+03 - -1.3130551e+03 -1.6193044e+03 4.6994863e+03 - -1.2797612e+03 -1.6468790e+03 4.6993379e+03 - -1.2460523e+03 -1.6738321e+03 4.6991647e+03 - -1.2119459e+03 -1.7001479e+03 4.6989679e+03 - -1.1774595e+03 -1.7258110e+03 4.6987487e+03 - -1.1426101e+03 -1.7508064e+03 4.6985084e+03 - -1.1074147e+03 -1.7751195e+03 4.6982487e+03 - -1.0718901e+03 -1.7987362e+03 4.6979711e+03 - -1.0360526e+03 -1.8216429e+03 4.6976774e+03 - -9.9991834e+02 -1.8438263e+03 4.6973695e+03 - -9.6350320e+02 -1.8652738e+03 4.6970492e+03 - -9.2682257e+02 -1.8859733e+03 4.6967185e+03 - -8.8989154e+02 -1.9059131e+03 4.6963796e+03 - -8.5272480e+02 -1.9250822e+03 4.6960344e+03 - -8.1533661e+02 -1.9434699e+03 4.6956853e+03 - -7.7774084e+02 -1.9610662e+03 4.6953342e+03 - -7.3995095e+02 -1.9778616e+03 4.6949835e+03 - -7.0197993e+02 -1.9938472e+03 4.6946352e+03 - -6.6384039e+02 -2.0090145e+03 4.6942915e+03 - -6.2554449e+02 -2.0233557e+03 4.6939545e+03 - -5.8710397e+02 -2.0368632e+03 4.6936262e+03 - -5.4853015e+02 -2.0495303e+03 4.6933087e+03 - -5.0983397e+02 -2.0613506e+03 4.6930039e+03 - -4.7102595e+02 -2.0723182e+03 4.6927136e+03 - -4.3211627e+02 -2.0824277e+03 4.6924396e+03 - -3.9311473e+02 -2.0916741e+03 4.6921836e+03 - -3.5403080e+02 -2.1000531e+03 4.6919470e+03 - -3.1487367e+02 -2.1075606e+03 4.6917314e+03 - -2.7565220e+02 -2.1141930e+03 4.6915380e+03 - -2.3637502e+02 -2.1199474e+03 4.6913680e+03 - -1.9705052e+02 -2.1248209e+03 4.6912224e+03 - -1.5768691e+02 -2.1288114e+03 4.6911020e+03 - -1.1829221e+02 -2.1319170e+03 4.6910076e+03 - -7.8874306e+01 -2.1341363e+03 4.6909398e+03 - -3.9440997e+01 -2.1354683e+03 4.6908990e+03 - 0.0000000e+00 -2.1359124e+03 4.6908853e+03 - 3.9440997e+01 -2.1354683e+03 4.6908990e+03 - 7.8874306e+01 -2.1341363e+03 4.6909398e+03 - 1.1829221e+02 -2.1319170e+03 4.6910076e+03 - 1.5768691e+02 -2.1288114e+03 4.6911020e+03 - 1.9705052e+02 -2.1248209e+03 4.6912224e+03 - 2.3637502e+02 -2.1199474e+03 4.6913680e+03 - 2.7565220e+02 -2.1141930e+03 4.6915380e+03 - 3.1487367e+02 -2.1075606e+03 4.6917314e+03 - 3.5403080e+02 -2.1000531e+03 4.6919470e+03 - 3.9311473e+02 -2.0916741e+03 4.6921836e+03 - 4.3211627e+02 -2.0824277e+03 4.6924396e+03 - 4.7102595e+02 -2.0723182e+03 4.6927136e+03 - 5.0983397e+02 -2.0613506e+03 4.6930039e+03 - 5.4853015e+02 -2.0495303e+03 4.6933087e+03 - 5.8710397e+02 -2.0368632e+03 4.6936262e+03 - 6.2554449e+02 -2.0233557e+03 4.6939545e+03 - 6.6384039e+02 -2.0090145e+03 4.6942915e+03 - 7.0197993e+02 -1.9938472e+03 4.6946352e+03 - 7.3995095e+02 -1.9778616e+03 4.6949835e+03 - 7.7774084e+02 -1.9610662e+03 4.6953342e+03 - 8.1533661e+02 -1.9434699e+03 4.6956853e+03 - 8.5272480e+02 -1.9250822e+03 4.6960344e+03 - 8.8989154e+02 -1.9059131e+03 4.6963796e+03 - 9.2682257e+02 -1.8859733e+03 4.6967185e+03 - 9.6350320e+02 -1.8652738e+03 4.6970492e+03 - 9.9991834e+02 -1.8438263e+03 4.6973695e+03 - 1.0360526e+03 -1.8216429e+03 4.6976774e+03 - 1.0718901e+03 -1.7987362e+03 4.6979711e+03 - 1.1074147e+03 -1.7751195e+03 4.6982487e+03 - 1.1426101e+03 -1.7508064e+03 4.6985084e+03 - 1.1774595e+03 -1.7258110e+03 4.6987487e+03 - 1.2119459e+03 -1.7001479e+03 4.6989679e+03 - 1.2460523e+03 -1.6738321e+03 4.6991647e+03 - 1.2797612e+03 -1.6468790e+03 4.6993379e+03 - 1.3130551e+03 -1.6193044e+03 4.6994863e+03 - 1.3459166e+03 -1.5911245e+03 4.6996091e+03 - 1.3783279e+03 -1.5623556e+03 4.6997053e+03 - 1.4102713e+03 -1.5330146e+03 4.6997746e+03 - 1.4417293e+03 -1.5031183e+03 4.6998163e+03 - 1.4726841e+03 -1.4726841e+03 4.6998302e+03 - 1.5031183e+03 -1.4417293e+03 4.6998163e+03 - 1.5330146e+03 -1.4102713e+03 4.6997746e+03 - 1.5623556e+03 -1.3783279e+03 4.6997053e+03 - 1.5911245e+03 -1.3459166e+03 4.6996091e+03 - 1.6193044e+03 -1.3130551e+03 4.6994863e+03 - 1.6468790e+03 -1.2797612e+03 4.6993379e+03 - 1.6738321e+03 -1.2460523e+03 4.6991647e+03 - 1.7001479e+03 -1.2119459e+03 4.6989679e+03 - 1.7258110e+03 -1.1774595e+03 4.6987487e+03 - 1.7508064e+03 -1.1426101e+03 4.6985084e+03 - 1.7751195e+03 -1.1074147e+03 4.6982487e+03 - 1.7987362e+03 -1.0718901e+03 4.6979711e+03 - 1.8216429e+03 -1.0360526e+03 4.6976774e+03 - 1.8438263e+03 -9.9991834e+02 4.6973695e+03 - 1.8652738e+03 -9.6350320e+02 4.6970492e+03 - 1.8859733e+03 -9.2682257e+02 4.6967185e+03 - 1.9059131e+03 -8.8989154e+02 4.6963796e+03 - 1.9250822e+03 -8.5272480e+02 4.6960344e+03 - 1.9434699e+03 -8.1533661e+02 4.6956853e+03 - 1.9610662e+03 -7.7774084e+02 4.6953342e+03 - 1.9778616e+03 -7.3995095e+02 4.6949835e+03 - 1.9938472e+03 -7.0197993e+02 4.6946352e+03 - 2.0090145e+03 -6.6384039e+02 4.6942915e+03 - 2.0233557e+03 -6.2554449e+02 4.6939545e+03 - 2.0368632e+03 -5.8710397e+02 4.6936262e+03 - 2.0495303e+03 -5.4853015e+02 4.6933087e+03 - 2.0613506e+03 -5.0983397e+02 4.6930039e+03 - 2.0723182e+03 -4.7102595e+02 4.6927136e+03 - 2.0824277e+03 -4.3211627e+02 4.6924396e+03 - 2.0916741e+03 -3.9311473e+02 4.6921836e+03 - 2.1000531e+03 -3.5403080e+02 4.6919470e+03 - 2.1075606e+03 -3.1487367e+02 4.6917314e+03 - 2.1141930e+03 -2.7565220e+02 4.6915380e+03 - 2.1199474e+03 -2.3637502e+02 4.6913680e+03 - 2.1248209e+03 -1.9705052e+02 4.6912224e+03 - 2.1288114e+03 -1.5768691e+02 4.6911020e+03 - 2.1319170e+03 -1.1829221e+02 4.6910076e+03 - 2.1341363e+03 -7.8874306e+01 4.6909398e+03 - 2.1354683e+03 -3.9440997e+01 4.6908990e+03 - 2.1359124e+03 0.0000000e+00 4.6908853e+03 - 2.2631739e+03 0.0000000e+00 4.6590199e+03 - 2.2627008e+03 4.1417126e+01 4.6590373e+03 - 2.2612818e+03 8.2827578e+01 4.6590892e+03 - 2.2589175e+03 1.2422464e+02 4.6591753e+03 - 2.2556088e+03 1.6560150e+02 4.6592952e+03 - 2.2513573e+03 2.0695123e+02 4.6594482e+03 - 2.2461646e+03 2.4826671e+02 4.6596332e+03 - 2.2400331e+03 2.8954061e+02 4.6598493e+03 - 2.2329654e+03 3.3076537e+02 4.6600952e+03 - 2.2249646e+03 3.7193310e+02 4.6603693e+03 - 2.2160344e+03 4.1303559e+02 4.6606700e+03 - 2.2061787e+03 4.5406428e+02 4.6609957e+03 - 2.1954021e+03 4.9501018e+02 4.6613441e+03 - 2.1837096e+03 5.3586390e+02 4.6617134e+03 - 2.1711068e+03 5.7661558e+02 4.6621013e+03 - 2.1575997e+03 6.1725487e+02 4.6625054e+03 - 2.1431949e+03 6.5777092e+02 4.6629232e+03 - 2.1278995e+03 6.9815238e+02 4.6633523e+03 - 2.1117214e+03 7.3838732e+02 4.6637900e+03 - 2.0946687e+03 7.7846329e+02 4.6642337e+03 - 2.0767506e+03 8.1836729e+02 4.6646806e+03 - 2.0579763e+03 8.5808573e+02 4.6651279e+03 - 2.0383562e+03 8.9760448e+02 4.6655730e+03 - 2.0179010e+03 9.3690885e+02 4.6660130e+03 - 1.9966220e+03 9.7598360e+02 4.6664453e+03 - 1.9745313e+03 1.0148130e+03 4.6668670e+03 - 1.9516415e+03 1.0533807e+03 4.6672757e+03 - 1.9279660e+03 1.0916699e+03 4.6676687e+03 - 1.9035184e+03 1.1296635e+03 4.6680436e+03 - 1.8783135e+03 1.1673436e+03 4.6683979e+03 - 1.8523661e+03 1.2046922e+03 4.6687295e+03 - 1.8256920e+03 1.2416908e+03 4.6690363e+03 - 1.7983073e+03 1.2783206e+03 4.6693163e+03 - 1.7702288e+03 1.3145625e+03 4.6695677e+03 - 1.7414736e+03 1.3503971e+03 4.6697889e+03 - 1.7120595e+03 1.3858049e+03 4.6699786e+03 - 1.6820043e+03 1.4207661e+03 4.6701354e+03 - 1.6513268e+03 1.4552610e+03 4.6702585e+03 - 1.6200455e+03 1.4892696e+03 4.6703469e+03 - 1.5881798e+03 1.5227722e+03 4.6704002e+03 - 1.5557488e+03 1.5557488e+03 4.6704180e+03 - 1.5227722e+03 1.5881798e+03 4.6704002e+03 - 1.4892696e+03 1.6200455e+03 4.6703469e+03 - 1.4552610e+03 1.6513268e+03 4.6702585e+03 - 1.4207661e+03 1.6820043e+03 4.6701354e+03 - 1.3858049e+03 1.7120595e+03 4.6699786e+03 - 1.3503971e+03 1.7414736e+03 4.6697889e+03 - 1.3145625e+03 1.7702288e+03 4.6695677e+03 - 1.2783206e+03 1.7983073e+03 4.6693163e+03 - 1.2416908e+03 1.8256920e+03 4.6690363e+03 - 1.2046922e+03 1.8523661e+03 4.6687295e+03 - 1.1673436e+03 1.8783135e+03 4.6683979e+03 - 1.1296635e+03 1.9035184e+03 4.6680436e+03 - 1.0916699e+03 1.9279660e+03 4.6676687e+03 - 1.0533807e+03 1.9516415e+03 4.6672757e+03 - 1.0148130e+03 1.9745313e+03 4.6668670e+03 - 9.7598360e+02 1.9966220e+03 4.6664453e+03 - 9.3690885e+02 2.0179010e+03 4.6660130e+03 - 8.9760448e+02 2.0383562e+03 4.6655730e+03 - 8.5808573e+02 2.0579763e+03 4.6651279e+03 - 8.1836729e+02 2.0767506e+03 4.6646806e+03 - 7.7846329e+02 2.0946687e+03 4.6642337e+03 - 7.3838732e+02 2.1117214e+03 4.6637900e+03 - 6.9815238e+02 2.1278995e+03 4.6633523e+03 - 6.5777092e+02 2.1431949e+03 4.6629232e+03 - 6.1725487e+02 2.1575997e+03 4.6625054e+03 - 5.7661558e+02 2.1711068e+03 4.6621013e+03 - 5.3586390e+02 2.1837096e+03 4.6617134e+03 - 4.9501018e+02 2.1954021e+03 4.6613441e+03 - 4.5406428e+02 2.2061787e+03 4.6609957e+03 - 4.1303559e+02 2.2160344e+03 4.6606700e+03 - 3.7193310e+02 2.2249646e+03 4.6603693e+03 - 3.3076537e+02 2.2329654e+03 4.6600952e+03 - 2.8954061e+02 2.2400331e+03 4.6598493e+03 - 2.4826671e+02 2.2461646e+03 4.6596332e+03 - 2.0695123e+02 2.2513573e+03 4.6594482e+03 - 1.6560150e+02 2.2556088e+03 4.6592952e+03 - 1.2422464e+02 2.2589175e+03 4.6591753e+03 - 8.2827578e+01 2.2612818e+03 4.6590892e+03 - 4.1417126e+01 2.2627008e+03 4.6590373e+03 - 0.0000000e+00 2.2631739e+03 4.6590199e+03 - -4.1417126e+01 2.2627008e+03 4.6590373e+03 - -8.2827578e+01 2.2612818e+03 4.6590892e+03 - -1.2422464e+02 2.2589175e+03 4.6591753e+03 - -1.6560150e+02 2.2556088e+03 4.6592952e+03 - -2.0695123e+02 2.2513573e+03 4.6594482e+03 - -2.4826671e+02 2.2461646e+03 4.6596332e+03 - -2.8954061e+02 2.2400331e+03 4.6598493e+03 - -3.3076537e+02 2.2329654e+03 4.6600952e+03 - -3.7193310e+02 2.2249646e+03 4.6603693e+03 - -4.1303559e+02 2.2160344e+03 4.6606700e+03 - -4.5406428e+02 2.2061787e+03 4.6609957e+03 - -4.9501018e+02 2.1954021e+03 4.6613441e+03 - -5.3586390e+02 2.1837096e+03 4.6617134e+03 - -5.7661558e+02 2.1711068e+03 4.6621013e+03 - -6.1725487e+02 2.1575997e+03 4.6625054e+03 - -6.5777092e+02 2.1431949e+03 4.6629232e+03 - -6.9815238e+02 2.1278995e+03 4.6633523e+03 - -7.3838732e+02 2.1117214e+03 4.6637900e+03 - -7.7846329e+02 2.0946687e+03 4.6642337e+03 - -8.1836729e+02 2.0767506e+03 4.6646806e+03 - -8.5808573e+02 2.0579763e+03 4.6651279e+03 - -8.9760448e+02 2.0383562e+03 4.6655730e+03 - -9.3690885e+02 2.0179010e+03 4.6660130e+03 - -9.7598360e+02 1.9966220e+03 4.6664453e+03 - -1.0148130e+03 1.9745313e+03 4.6668670e+03 - -1.0533807e+03 1.9516415e+03 4.6672757e+03 - -1.0916699e+03 1.9279660e+03 4.6676687e+03 - -1.1296635e+03 1.9035184e+03 4.6680436e+03 - -1.1673436e+03 1.8783135e+03 4.6683979e+03 - -1.2046922e+03 1.8523661e+03 4.6687295e+03 - -1.2416908e+03 1.8256920e+03 4.6690363e+03 - -1.2783206e+03 1.7983073e+03 4.6693163e+03 - -1.3145625e+03 1.7702288e+03 4.6695677e+03 - -1.3503971e+03 1.7414736e+03 4.6697889e+03 - -1.3858049e+03 1.7120595e+03 4.6699786e+03 - -1.4207661e+03 1.6820043e+03 4.6701354e+03 - -1.4552610e+03 1.6513268e+03 4.6702585e+03 - -1.4892696e+03 1.6200455e+03 4.6703469e+03 - -1.5227722e+03 1.5881798e+03 4.6704002e+03 - -1.5557488e+03 1.5557488e+03 4.6704180e+03 - -1.5881798e+03 1.5227722e+03 4.6704002e+03 - -1.6200455e+03 1.4892696e+03 4.6703469e+03 - -1.6513268e+03 1.4552610e+03 4.6702585e+03 - -1.6820043e+03 1.4207661e+03 4.6701354e+03 - -1.7120595e+03 1.3858049e+03 4.6699786e+03 - -1.7414736e+03 1.3503971e+03 4.6697889e+03 - -1.7702288e+03 1.3145625e+03 4.6695677e+03 - -1.7983073e+03 1.2783206e+03 4.6693163e+03 - -1.8256920e+03 1.2416908e+03 4.6690363e+03 - -1.8523661e+03 1.2046922e+03 4.6687295e+03 - -1.8783135e+03 1.1673436e+03 4.6683979e+03 - -1.9035184e+03 1.1296635e+03 4.6680436e+03 - -1.9279660e+03 1.0916699e+03 4.6676687e+03 - -1.9516415e+03 1.0533807e+03 4.6672757e+03 - -1.9745313e+03 1.0148130e+03 4.6668670e+03 - -1.9966220e+03 9.7598360e+02 4.6664453e+03 - -2.0179010e+03 9.3690885e+02 4.6660130e+03 - -2.0383562e+03 8.9760448e+02 4.6655730e+03 - -2.0579763e+03 8.5808573e+02 4.6651279e+03 - -2.0767506e+03 8.1836729e+02 4.6646806e+03 - -2.0946687e+03 7.7846329e+02 4.6642337e+03 - -2.1117214e+03 7.3838732e+02 4.6637900e+03 - -2.1278995e+03 6.9815238e+02 4.6633523e+03 - -2.1431949e+03 6.5777092e+02 4.6629232e+03 - -2.1575997e+03 6.1725487e+02 4.6625054e+03 - -2.1711068e+03 5.7661558e+02 4.6621013e+03 - -2.1837096e+03 5.3586390e+02 4.6617134e+03 - -2.1954021e+03 4.9501018e+02 4.6613441e+03 - -2.2061787e+03 4.5406428e+02 4.6609957e+03 - -2.2160344e+03 4.1303559e+02 4.6606700e+03 - -2.2249646e+03 3.7193310e+02 4.6603693e+03 - -2.2329654e+03 3.3076537e+02 4.6600952e+03 - -2.2400331e+03 2.8954061e+02 4.6598493e+03 - -2.2461646e+03 2.4826671e+02 4.6596332e+03 - -2.2513573e+03 2.0695123e+02 4.6594482e+03 - -2.2556088e+03 1.6560150e+02 4.6592952e+03 - -2.2589175e+03 1.2422464e+02 4.6591753e+03 - -2.2612818e+03 8.2827578e+01 4.6590892e+03 - -2.2627008e+03 4.1417126e+01 4.6590373e+03 - -2.2631739e+03 0.0000000e+00 4.6590199e+03 - -2.2627008e+03 -4.1417126e+01 4.6590373e+03 - -2.2612818e+03 -8.2827578e+01 4.6590892e+03 - -2.2589175e+03 -1.2422464e+02 4.6591753e+03 - -2.2556088e+03 -1.6560150e+02 4.6592952e+03 - -2.2513573e+03 -2.0695123e+02 4.6594482e+03 - -2.2461646e+03 -2.4826671e+02 4.6596332e+03 - -2.2400331e+03 -2.8954061e+02 4.6598493e+03 - -2.2329654e+03 -3.3076537e+02 4.6600952e+03 - -2.2249646e+03 -3.7193310e+02 4.6603693e+03 - -2.2160344e+03 -4.1303559e+02 4.6606700e+03 - -2.2061787e+03 -4.5406428e+02 4.6609957e+03 - -2.1954021e+03 -4.9501018e+02 4.6613441e+03 - -2.1837096e+03 -5.3586390e+02 4.6617134e+03 - -2.1711068e+03 -5.7661558e+02 4.6621013e+03 - -2.1575997e+03 -6.1725487e+02 4.6625054e+03 - -2.1431949e+03 -6.5777092e+02 4.6629232e+03 - -2.1278995e+03 -6.9815238e+02 4.6633523e+03 - -2.1117214e+03 -7.3838732e+02 4.6637900e+03 - -2.0946687e+03 -7.7846329e+02 4.6642337e+03 - -2.0767506e+03 -8.1836729e+02 4.6646806e+03 - -2.0579763e+03 -8.5808573e+02 4.6651279e+03 - -2.0383562e+03 -8.9760448e+02 4.6655730e+03 - -2.0179010e+03 -9.3690885e+02 4.6660130e+03 - -1.9966220e+03 -9.7598360e+02 4.6664453e+03 - -1.9745313e+03 -1.0148130e+03 4.6668670e+03 - -1.9516415e+03 -1.0533807e+03 4.6672757e+03 - -1.9279660e+03 -1.0916699e+03 4.6676687e+03 - -1.9035184e+03 -1.1296635e+03 4.6680436e+03 - -1.8783135e+03 -1.1673436e+03 4.6683979e+03 - -1.8523661e+03 -1.2046922e+03 4.6687295e+03 - -1.8256920e+03 -1.2416908e+03 4.6690363e+03 - -1.7983073e+03 -1.2783206e+03 4.6693163e+03 - -1.7702288e+03 -1.3145625e+03 4.6695677e+03 - -1.7414736e+03 -1.3503971e+03 4.6697889e+03 - -1.7120595e+03 -1.3858049e+03 4.6699786e+03 - -1.6820043e+03 -1.4207661e+03 4.6701354e+03 - -1.6513268e+03 -1.4552610e+03 4.6702585e+03 - -1.6200455e+03 -1.4892696e+03 4.6703469e+03 - -1.5881798e+03 -1.5227722e+03 4.6704002e+03 - -1.5557488e+03 -1.5557488e+03 4.6704180e+03 - -1.5227722e+03 -1.5881798e+03 4.6704002e+03 - -1.4892696e+03 -1.6200455e+03 4.6703469e+03 - -1.4552610e+03 -1.6513268e+03 4.6702585e+03 - -1.4207661e+03 -1.6820043e+03 4.6701354e+03 - -1.3858049e+03 -1.7120595e+03 4.6699786e+03 - -1.3503971e+03 -1.7414736e+03 4.6697889e+03 - -1.3145625e+03 -1.7702288e+03 4.6695677e+03 - -1.2783206e+03 -1.7983073e+03 4.6693163e+03 - -1.2416908e+03 -1.8256920e+03 4.6690363e+03 - -1.2046922e+03 -1.8523661e+03 4.6687295e+03 - -1.1673436e+03 -1.8783135e+03 4.6683979e+03 - -1.1296635e+03 -1.9035184e+03 4.6680436e+03 - -1.0916699e+03 -1.9279660e+03 4.6676687e+03 - -1.0533807e+03 -1.9516415e+03 4.6672757e+03 - -1.0148130e+03 -1.9745313e+03 4.6668670e+03 - -9.7598360e+02 -1.9966220e+03 4.6664453e+03 - -9.3690885e+02 -2.0179010e+03 4.6660130e+03 - -8.9760448e+02 -2.0383562e+03 4.6655730e+03 - -8.5808573e+02 -2.0579763e+03 4.6651279e+03 - -8.1836729e+02 -2.0767506e+03 4.6646806e+03 - -7.7846329e+02 -2.0946687e+03 4.6642337e+03 - -7.3838732e+02 -2.1117214e+03 4.6637900e+03 - -6.9815238e+02 -2.1278995e+03 4.6633523e+03 - -6.5777092e+02 -2.1431949e+03 4.6629232e+03 - -6.1725487e+02 -2.1575997e+03 4.6625054e+03 - -5.7661558e+02 -2.1711068e+03 4.6621013e+03 - -5.3586390e+02 -2.1837096e+03 4.6617134e+03 - -4.9501018e+02 -2.1954021e+03 4.6613441e+03 - -4.5406428e+02 -2.2061787e+03 4.6609957e+03 - -4.1303559e+02 -2.2160344e+03 4.6606700e+03 - -3.7193310e+02 -2.2249646e+03 4.6603693e+03 - -3.3076537e+02 -2.2329654e+03 4.6600952e+03 - -2.8954061e+02 -2.2400331e+03 4.6598493e+03 - -2.4826671e+02 -2.2461646e+03 4.6596332e+03 - -2.0695123e+02 -2.2513573e+03 4.6594482e+03 - -1.6560150e+02 -2.2556088e+03 4.6592952e+03 - -1.2422464e+02 -2.2589175e+03 4.6591753e+03 - -8.2827578e+01 -2.2612818e+03 4.6590892e+03 - -4.1417126e+01 -2.2627008e+03 4.6590373e+03 - 0.0000000e+00 -2.2631739e+03 4.6590199e+03 - 4.1417126e+01 -2.2627008e+03 4.6590373e+03 - 8.2827578e+01 -2.2612818e+03 4.6590892e+03 - 1.2422464e+02 -2.2589175e+03 4.6591753e+03 - 1.6560150e+02 -2.2556088e+03 4.6592952e+03 - 2.0695123e+02 -2.2513573e+03 4.6594482e+03 - 2.4826671e+02 -2.2461646e+03 4.6596332e+03 - 2.8954061e+02 -2.2400331e+03 4.6598493e+03 - 3.3076537e+02 -2.2329654e+03 4.6600952e+03 - 3.7193310e+02 -2.2249646e+03 4.6603693e+03 - 4.1303559e+02 -2.2160344e+03 4.6606700e+03 - 4.5406428e+02 -2.2061787e+03 4.6609957e+03 - 4.9501018e+02 -2.1954021e+03 4.6613441e+03 - 5.3586390e+02 -2.1837096e+03 4.6617134e+03 - 5.7661558e+02 -2.1711068e+03 4.6621013e+03 - 6.1725487e+02 -2.1575997e+03 4.6625054e+03 - 6.5777092e+02 -2.1431949e+03 4.6629232e+03 - 6.9815238e+02 -2.1278995e+03 4.6633523e+03 - 7.3838732e+02 -2.1117214e+03 4.6637900e+03 - 7.7846329e+02 -2.0946687e+03 4.6642337e+03 - 8.1836729e+02 -2.0767506e+03 4.6646806e+03 - 8.5808573e+02 -2.0579763e+03 4.6651279e+03 - 8.9760448e+02 -2.0383562e+03 4.6655730e+03 - 9.3690885e+02 -2.0179010e+03 4.6660130e+03 - 9.7598360e+02 -1.9966220e+03 4.6664453e+03 - 1.0148130e+03 -1.9745313e+03 4.6668670e+03 - 1.0533807e+03 -1.9516415e+03 4.6672757e+03 - 1.0916699e+03 -1.9279660e+03 4.6676687e+03 - 1.1296635e+03 -1.9035184e+03 4.6680436e+03 - 1.1673436e+03 -1.8783135e+03 4.6683979e+03 - 1.2046922e+03 -1.8523661e+03 4.6687295e+03 - 1.2416908e+03 -1.8256920e+03 4.6690363e+03 - 1.2783206e+03 -1.7983073e+03 4.6693163e+03 - 1.3145625e+03 -1.7702288e+03 4.6695677e+03 - 1.3503971e+03 -1.7414736e+03 4.6697889e+03 - 1.3858049e+03 -1.7120595e+03 4.6699786e+03 - 1.4207661e+03 -1.6820043e+03 4.6701354e+03 - 1.4552610e+03 -1.6513268e+03 4.6702585e+03 - 1.4892696e+03 -1.6200455e+03 4.6703469e+03 - 1.5227722e+03 -1.5881798e+03 4.6704002e+03 - 1.5557488e+03 -1.5557488e+03 4.6704180e+03 - 1.5881798e+03 -1.5227722e+03 4.6704002e+03 - 1.6200455e+03 -1.4892696e+03 4.6703469e+03 - 1.6513268e+03 -1.4552610e+03 4.6702585e+03 - 1.6820043e+03 -1.4207661e+03 4.6701354e+03 - 1.7120595e+03 -1.3858049e+03 4.6699786e+03 - 1.7414736e+03 -1.3503971e+03 4.6697889e+03 - 1.7702288e+03 -1.3145625e+03 4.6695677e+03 - 1.7983073e+03 -1.2783206e+03 4.6693163e+03 - 1.8256920e+03 -1.2416908e+03 4.6690363e+03 - 1.8523661e+03 -1.2046922e+03 4.6687295e+03 - 1.8783135e+03 -1.1673436e+03 4.6683979e+03 - 1.9035184e+03 -1.1296635e+03 4.6680436e+03 - 1.9279660e+03 -1.0916699e+03 4.6676687e+03 - 1.9516415e+03 -1.0533807e+03 4.6672757e+03 - 1.9745313e+03 -1.0148130e+03 4.6668670e+03 - 1.9966220e+03 -9.7598360e+02 4.6664453e+03 - 2.0179010e+03 -9.3690885e+02 4.6660130e+03 - 2.0383562e+03 -8.9760448e+02 4.6655730e+03 - 2.0579763e+03 -8.5808573e+02 4.6651279e+03 - 2.0767506e+03 -8.1836729e+02 4.6646806e+03 - 2.0946687e+03 -7.7846329e+02 4.6642337e+03 - 2.1117214e+03 -7.3838732e+02 4.6637900e+03 - 2.1278995e+03 -6.9815238e+02 4.6633523e+03 - 2.1431949e+03 -6.5777092e+02 4.6629232e+03 - 2.1575997e+03 -6.1725487e+02 4.6625054e+03 - 2.1711068e+03 -5.7661558e+02 4.6621013e+03 - 2.1837096e+03 -5.3586390e+02 4.6617134e+03 - 2.1954021e+03 -4.9501018e+02 4.6613441e+03 - 2.2061787e+03 -4.5406428e+02 4.6609957e+03 - 2.2160344e+03 -4.1303559e+02 4.6606700e+03 - 2.2249646e+03 -3.7193310e+02 4.6603693e+03 - 2.2329654e+03 -3.3076537e+02 4.6600952e+03 - 2.2400331e+03 -2.8954061e+02 4.6598493e+03 - 2.2461646e+03 -2.4826671e+02 4.6596332e+03 - 2.2513573e+03 -2.0695123e+02 4.6594482e+03 - 2.2556088e+03 -1.6560150e+02 4.6592952e+03 - 2.2589175e+03 -1.2422464e+02 4.6591753e+03 - 2.2612818e+03 -8.2827578e+01 4.6590892e+03 - 2.2627008e+03 -4.1417126e+01 4.6590373e+03 - 2.2631739e+03 0.0000000e+00 4.6590199e+03 - 2.3831905e+03 0.0000000e+00 4.6264514e+03 - 2.3826901e+03 4.3209822e+01 4.6264729e+03 - 2.3811890e+03 8.6414234e+01 4.6265372e+03 - 2.3786880e+03 1.2960777e+02 4.6266440e+03 - 2.3751878e+03 1.7278486e+02 4.6267926e+03 - 2.3706899e+03 2.1593977e+02 4.6269822e+03 - 2.3651960e+03 2.5906654e+02 4.6272116e+03 - 2.3587082e+03 3.0215896e+02 4.6274795e+03 - 2.3512293e+03 3.4521049e+02 4.6277843e+03 - 2.3427622e+03 3.8821424e+02 4.6281243e+03 - 2.3333103e+03 4.3116288e+02 4.6284973e+03 - 2.3228778e+03 4.7404865e+02 4.6289013e+03 - 2.3114690e+03 5.1686328e+02 4.6293337e+03 - 2.2990890e+03 5.5959797e+02 4.6297920e+03 - 2.2857433e+03 6.0224334e+02 4.6302734e+03 - 2.2714380e+03 6.4478940e+02 4.6307752e+03 - 2.2561798e+03 6.8722554e+02 4.6312941e+03 - 2.2399760e+03 7.2954049e+02 4.6318271e+03 - 2.2228346e+03 7.7172230e+02 4.6323710e+03 - 2.2047641e+03 8.1375832e+02 4.6329224e+03 - 2.1857739e+03 8.5563520e+02 4.6334780e+03 - 2.1658738e+03 8.9733889e+02 4.6340343e+03 - 2.1450747e+03 9.3885460e+02 4.6345879e+03 - 2.1233877e+03 9.8016688e+02 4.6351353e+03 - 2.1008252e+03 1.0212595e+03 4.6356732e+03 - 2.0773999e+03 1.0621157e+03 4.6361983e+03 - 2.0531254e+03 1.1027179e+03 4.6367071e+03 - 2.0280161e+03 1.1430479e+03 4.6371965e+03 - 2.0020869e+03 1.1830869e+03 4.6376635e+03 - 1.9753538e+03 1.2228157e+03 4.6381050e+03 - 1.9478332e+03 1.2622143e+03 4.6385182e+03 - 1.9195422e+03 1.3012624e+03 4.6389006e+03 - 1.8904987e+03 1.3399392e+03 4.6392496e+03 - 1.8607211e+03 1.3782235e+03 4.6395631e+03 - 1.8302285e+03 1.4160937e+03 4.6398390e+03 - 1.7990405e+03 1.4535282e+03 4.6400755e+03 - 1.7671772e+03 1.4905048e+03 4.6402711e+03 - 1.7346593e+03 1.5270014e+03 4.6404246e+03 - 1.7015076e+03 1.5629958e+03 4.6405350e+03 - 1.6677437e+03 1.5984658e+03 4.6406015e+03 - 1.6333891e+03 1.6333891e+03 4.6406237e+03 - 1.5984658e+03 1.6677437e+03 4.6406015e+03 - 1.5629958e+03 1.7015076e+03 4.6405350e+03 - 1.5270014e+03 1.7346593e+03 4.6404246e+03 - 1.4905048e+03 1.7671772e+03 4.6402711e+03 - 1.4535282e+03 1.7990405e+03 4.6400755e+03 - 1.4160937e+03 1.8302285e+03 4.6398390e+03 - 1.3782235e+03 1.8607211e+03 4.6395631e+03 - 1.3399392e+03 1.8904987e+03 4.6392496e+03 - 1.3012624e+03 1.9195422e+03 4.6389006e+03 - 1.2622143e+03 1.9478332e+03 4.6385182e+03 - 1.2228157e+03 1.9753538e+03 4.6381050e+03 - 1.1830869e+03 2.0020869e+03 4.6376635e+03 - 1.1430479e+03 2.0280161e+03 4.6371965e+03 - 1.1027179e+03 2.0531254e+03 4.6367071e+03 - 1.0621157e+03 2.0773999e+03 4.6361983e+03 - 1.0212595e+03 2.1008252e+03 4.6356732e+03 - 9.8016688e+02 2.1233877e+03 4.6351353e+03 - 9.3885460e+02 2.1450747e+03 4.6345879e+03 - 8.9733889e+02 2.1658738e+03 4.6340343e+03 - 8.5563520e+02 2.1857739e+03 4.6334780e+03 - 8.1375832e+02 2.2047641e+03 4.6329224e+03 - 7.7172230e+02 2.2228346e+03 4.6323710e+03 - 7.2954049e+02 2.2399760e+03 4.6318271e+03 - 6.8722554e+02 2.2561798e+03 4.6312941e+03 - 6.4478940e+02 2.2714380e+03 4.6307752e+03 - 6.0224334e+02 2.2857433e+03 4.6302734e+03 - 5.5959797e+02 2.2990890e+03 4.6297920e+03 - 5.1686328e+02 2.3114690e+03 4.6293337e+03 - 4.7404865e+02 2.3228778e+03 4.6289013e+03 - 4.3116288e+02 2.3333103e+03 4.6284973e+03 - 3.8821424e+02 2.3427622e+03 4.6281243e+03 - 3.4521049e+02 2.3512293e+03 4.6277843e+03 - 3.0215896e+02 2.3587082e+03 4.6274795e+03 - 2.5906654e+02 2.3651960e+03 4.6272116e+03 - 2.1593977e+02 2.3706899e+03 4.6269822e+03 - 1.7278486e+02 2.3751878e+03 4.6267926e+03 - 1.2960777e+02 2.3786880e+03 4.6266440e+03 - 8.6414234e+01 2.3811890e+03 4.6265372e+03 - 4.3209822e+01 2.3826901e+03 4.6264729e+03 - 0.0000000e+00 2.3831905e+03 4.6264514e+03 - -4.3209822e+01 2.3826901e+03 4.6264729e+03 - -8.6414234e+01 2.3811890e+03 4.6265372e+03 - -1.2960777e+02 2.3786880e+03 4.6266440e+03 - -1.7278486e+02 2.3751878e+03 4.6267926e+03 - -2.1593977e+02 2.3706899e+03 4.6269822e+03 - -2.5906654e+02 2.3651960e+03 4.6272116e+03 - -3.0215896e+02 2.3587082e+03 4.6274795e+03 - -3.4521049e+02 2.3512293e+03 4.6277843e+03 - -3.8821424e+02 2.3427622e+03 4.6281243e+03 - -4.3116288e+02 2.3333103e+03 4.6284973e+03 - -4.7404865e+02 2.3228778e+03 4.6289013e+03 - -5.1686328e+02 2.3114690e+03 4.6293337e+03 - -5.5959797e+02 2.2990890e+03 4.6297920e+03 - -6.0224334e+02 2.2857433e+03 4.6302734e+03 - -6.4478940e+02 2.2714380e+03 4.6307752e+03 - -6.8722554e+02 2.2561798e+03 4.6312941e+03 - -7.2954049e+02 2.2399760e+03 4.6318271e+03 - -7.7172230e+02 2.2228346e+03 4.6323710e+03 - -8.1375832e+02 2.2047641e+03 4.6329224e+03 - -8.5563520e+02 2.1857739e+03 4.6334780e+03 - -8.9733889e+02 2.1658738e+03 4.6340343e+03 - -9.3885460e+02 2.1450747e+03 4.6345879e+03 - -9.8016688e+02 2.1233877e+03 4.6351353e+03 - -1.0212595e+03 2.1008252e+03 4.6356732e+03 - -1.0621157e+03 2.0773999e+03 4.6361983e+03 - -1.1027179e+03 2.0531254e+03 4.6367071e+03 - -1.1430479e+03 2.0280161e+03 4.6371965e+03 - -1.1830869e+03 2.0020869e+03 4.6376635e+03 - -1.2228157e+03 1.9753538e+03 4.6381050e+03 - -1.2622143e+03 1.9478332e+03 4.6385182e+03 - -1.3012624e+03 1.9195422e+03 4.6389006e+03 - -1.3399392e+03 1.8904987e+03 4.6392496e+03 - -1.3782235e+03 1.8607211e+03 4.6395631e+03 - -1.4160937e+03 1.8302285e+03 4.6398390e+03 - -1.4535282e+03 1.7990405e+03 4.6400755e+03 - -1.4905048e+03 1.7671772e+03 4.6402711e+03 - -1.5270014e+03 1.7346593e+03 4.6404246e+03 - -1.5629958e+03 1.7015076e+03 4.6405350e+03 - -1.5984658e+03 1.6677437e+03 4.6406015e+03 - -1.6333891e+03 1.6333891e+03 4.6406237e+03 - -1.6677437e+03 1.5984658e+03 4.6406015e+03 - -1.7015076e+03 1.5629958e+03 4.6405350e+03 - -1.7346593e+03 1.5270014e+03 4.6404246e+03 - -1.7671772e+03 1.4905048e+03 4.6402711e+03 - -1.7990405e+03 1.4535282e+03 4.6400755e+03 - -1.8302285e+03 1.4160937e+03 4.6398390e+03 - -1.8607211e+03 1.3782235e+03 4.6395631e+03 - -1.8904987e+03 1.3399392e+03 4.6392496e+03 - -1.9195422e+03 1.3012624e+03 4.6389006e+03 - -1.9478332e+03 1.2622143e+03 4.6385182e+03 - -1.9753538e+03 1.2228157e+03 4.6381050e+03 - -2.0020869e+03 1.1830869e+03 4.6376635e+03 - -2.0280161e+03 1.1430479e+03 4.6371965e+03 - -2.0531254e+03 1.1027179e+03 4.6367071e+03 - -2.0773999e+03 1.0621157e+03 4.6361983e+03 - -2.1008252e+03 1.0212595e+03 4.6356732e+03 - -2.1233877e+03 9.8016688e+02 4.6351353e+03 - -2.1450747e+03 9.3885460e+02 4.6345879e+03 - -2.1658738e+03 8.9733889e+02 4.6340343e+03 - -2.1857739e+03 8.5563520e+02 4.6334780e+03 - -2.2047641e+03 8.1375832e+02 4.6329224e+03 - -2.2228346e+03 7.7172230e+02 4.6323710e+03 - -2.2399760e+03 7.2954049e+02 4.6318271e+03 - -2.2561798e+03 6.8722554e+02 4.6312941e+03 - -2.2714380e+03 6.4478940e+02 4.6307752e+03 - -2.2857433e+03 6.0224334e+02 4.6302734e+03 - -2.2990890e+03 5.5959797e+02 4.6297920e+03 - -2.3114690e+03 5.1686328e+02 4.6293337e+03 - -2.3228778e+03 4.7404865e+02 4.6289013e+03 - -2.3333103e+03 4.3116288e+02 4.6284973e+03 - -2.3427622e+03 3.8821424e+02 4.6281243e+03 - -2.3512293e+03 3.4521049e+02 4.6277843e+03 - -2.3587082e+03 3.0215896e+02 4.6274795e+03 - -2.3651960e+03 2.5906654e+02 4.6272116e+03 - -2.3706899e+03 2.1593977e+02 4.6269822e+03 - -2.3751878e+03 1.7278486e+02 4.6267926e+03 - -2.3786880e+03 1.2960777e+02 4.6266440e+03 - -2.3811890e+03 8.6414234e+01 4.6265372e+03 - -2.3826901e+03 4.3209822e+01 4.6264729e+03 - -2.3831905e+03 0.0000000e+00 4.6264514e+03 - -2.3826901e+03 -4.3209822e+01 4.6264729e+03 - -2.3811890e+03 -8.6414234e+01 4.6265372e+03 - -2.3786880e+03 -1.2960777e+02 4.6266440e+03 - -2.3751878e+03 -1.7278486e+02 4.6267926e+03 - -2.3706899e+03 -2.1593977e+02 4.6269822e+03 - -2.3651960e+03 -2.5906654e+02 4.6272116e+03 - -2.3587082e+03 -3.0215896e+02 4.6274795e+03 - -2.3512293e+03 -3.4521049e+02 4.6277843e+03 - -2.3427622e+03 -3.8821424e+02 4.6281243e+03 - -2.3333103e+03 -4.3116288e+02 4.6284973e+03 - -2.3228778e+03 -4.7404865e+02 4.6289013e+03 - -2.3114690e+03 -5.1686328e+02 4.6293337e+03 - -2.2990890e+03 -5.5959797e+02 4.6297920e+03 - -2.2857433e+03 -6.0224334e+02 4.6302734e+03 - -2.2714380e+03 -6.4478940e+02 4.6307752e+03 - -2.2561798e+03 -6.8722554e+02 4.6312941e+03 - -2.2399760e+03 -7.2954049e+02 4.6318271e+03 - -2.2228346e+03 -7.7172230e+02 4.6323710e+03 - -2.2047641e+03 -8.1375832e+02 4.6329224e+03 - -2.1857739e+03 -8.5563520e+02 4.6334780e+03 - -2.1658738e+03 -8.9733889e+02 4.6340343e+03 - -2.1450747e+03 -9.3885460e+02 4.6345879e+03 - -2.1233877e+03 -9.8016688e+02 4.6351353e+03 - -2.1008252e+03 -1.0212595e+03 4.6356732e+03 - -2.0773999e+03 -1.0621157e+03 4.6361983e+03 - -2.0531254e+03 -1.1027179e+03 4.6367071e+03 - -2.0280161e+03 -1.1430479e+03 4.6371965e+03 - -2.0020869e+03 -1.1830869e+03 4.6376635e+03 - -1.9753538e+03 -1.2228157e+03 4.6381050e+03 - -1.9478332e+03 -1.2622143e+03 4.6385182e+03 - -1.9195422e+03 -1.3012624e+03 4.6389006e+03 - -1.8904987e+03 -1.3399392e+03 4.6392496e+03 - -1.8607211e+03 -1.3782235e+03 4.6395631e+03 - -1.8302285e+03 -1.4160937e+03 4.6398390e+03 - -1.7990405e+03 -1.4535282e+03 4.6400755e+03 - -1.7671772e+03 -1.4905048e+03 4.6402711e+03 - -1.7346593e+03 -1.5270014e+03 4.6404246e+03 - -1.7015076e+03 -1.5629958e+03 4.6405350e+03 - -1.6677437e+03 -1.5984658e+03 4.6406015e+03 - -1.6333891e+03 -1.6333891e+03 4.6406237e+03 - -1.5984658e+03 -1.6677437e+03 4.6406015e+03 - -1.5629958e+03 -1.7015076e+03 4.6405350e+03 - -1.5270014e+03 -1.7346593e+03 4.6404246e+03 - -1.4905048e+03 -1.7671772e+03 4.6402711e+03 - -1.4535282e+03 -1.7990405e+03 4.6400755e+03 - -1.4160937e+03 -1.8302285e+03 4.6398390e+03 - -1.3782235e+03 -1.8607211e+03 4.6395631e+03 - -1.3399392e+03 -1.8904987e+03 4.6392496e+03 - -1.3012624e+03 -1.9195422e+03 4.6389006e+03 - -1.2622143e+03 -1.9478332e+03 4.6385182e+03 - -1.2228157e+03 -1.9753538e+03 4.6381050e+03 - -1.1830869e+03 -2.0020869e+03 4.6376635e+03 - -1.1430479e+03 -2.0280161e+03 4.6371965e+03 - -1.1027179e+03 -2.0531254e+03 4.6367071e+03 - -1.0621157e+03 -2.0773999e+03 4.6361983e+03 - -1.0212595e+03 -2.1008252e+03 4.6356732e+03 - -9.8016688e+02 -2.1233877e+03 4.6351353e+03 - -9.3885460e+02 -2.1450747e+03 4.6345879e+03 - -8.9733889e+02 -2.1658738e+03 4.6340343e+03 - -8.5563520e+02 -2.1857739e+03 4.6334780e+03 - -8.1375832e+02 -2.2047641e+03 4.6329224e+03 - -7.7172230e+02 -2.2228346e+03 4.6323710e+03 - -7.2954049e+02 -2.2399760e+03 4.6318271e+03 - -6.8722554e+02 -2.2561798e+03 4.6312941e+03 - -6.4478940e+02 -2.2714380e+03 4.6307752e+03 - -6.0224334e+02 -2.2857433e+03 4.6302734e+03 - -5.5959797e+02 -2.2990890e+03 4.6297920e+03 - -5.1686328e+02 -2.3114690e+03 4.6293337e+03 - -4.7404865e+02 -2.3228778e+03 4.6289013e+03 - -4.3116288e+02 -2.3333103e+03 4.6284973e+03 - -3.8821424e+02 -2.3427622e+03 4.6281243e+03 - -3.4521049e+02 -2.3512293e+03 4.6277843e+03 - -3.0215896e+02 -2.3587082e+03 4.6274795e+03 - -2.5906654e+02 -2.3651960e+03 4.6272116e+03 - -2.1593977e+02 -2.3706899e+03 4.6269822e+03 - -1.7278486e+02 -2.3751878e+03 4.6267926e+03 - -1.2960777e+02 -2.3786880e+03 4.6266440e+03 - -8.6414234e+01 -2.3811890e+03 4.6265372e+03 - -4.3209822e+01 -2.3826901e+03 4.6264729e+03 - 0.0000000e+00 -2.3831905e+03 4.6264514e+03 - 4.3209822e+01 -2.3826901e+03 4.6264729e+03 - 8.6414234e+01 -2.3811890e+03 4.6265372e+03 - 1.2960777e+02 -2.3786880e+03 4.6266440e+03 - 1.7278486e+02 -2.3751878e+03 4.6267926e+03 - 2.1593977e+02 -2.3706899e+03 4.6269822e+03 - 2.5906654e+02 -2.3651960e+03 4.6272116e+03 - 3.0215896e+02 -2.3587082e+03 4.6274795e+03 - 3.4521049e+02 -2.3512293e+03 4.6277843e+03 - 3.8821424e+02 -2.3427622e+03 4.6281243e+03 - 4.3116288e+02 -2.3333103e+03 4.6284973e+03 - 4.7404865e+02 -2.3228778e+03 4.6289013e+03 - 5.1686328e+02 -2.3114690e+03 4.6293337e+03 - 5.5959797e+02 -2.2990890e+03 4.6297920e+03 - 6.0224334e+02 -2.2857433e+03 4.6302734e+03 - 6.4478940e+02 -2.2714380e+03 4.6307752e+03 - 6.8722554e+02 -2.2561798e+03 4.6312941e+03 - 7.2954049e+02 -2.2399760e+03 4.6318271e+03 - 7.7172230e+02 -2.2228346e+03 4.6323710e+03 - 8.1375832e+02 -2.2047641e+03 4.6329224e+03 - 8.5563520e+02 -2.1857739e+03 4.6334780e+03 - 8.9733889e+02 -2.1658738e+03 4.6340343e+03 - 9.3885460e+02 -2.1450747e+03 4.6345879e+03 - 9.8016688e+02 -2.1233877e+03 4.6351353e+03 - 1.0212595e+03 -2.1008252e+03 4.6356732e+03 - 1.0621157e+03 -2.0773999e+03 4.6361983e+03 - 1.1027179e+03 -2.0531254e+03 4.6367071e+03 - 1.1430479e+03 -2.0280161e+03 4.6371965e+03 - 1.1830869e+03 -2.0020869e+03 4.6376635e+03 - 1.2228157e+03 -1.9753538e+03 4.6381050e+03 - 1.2622143e+03 -1.9478332e+03 4.6385182e+03 - 1.3012624e+03 -1.9195422e+03 4.6389006e+03 - 1.3399392e+03 -1.8904987e+03 4.6392496e+03 - 1.3782235e+03 -1.8607211e+03 4.6395631e+03 - 1.4160937e+03 -1.8302285e+03 4.6398390e+03 - 1.4535282e+03 -1.7990405e+03 4.6400755e+03 - 1.4905048e+03 -1.7671772e+03 4.6402711e+03 - 1.5270014e+03 -1.7346593e+03 4.6404246e+03 - 1.5629958e+03 -1.7015076e+03 4.6405350e+03 - 1.5984658e+03 -1.6677437e+03 4.6406015e+03 - 1.6333891e+03 -1.6333891e+03 4.6406237e+03 - 1.6677437e+03 -1.5984658e+03 4.6406015e+03 - 1.7015076e+03 -1.5629958e+03 4.6405350e+03 - 1.7346593e+03 -1.5270014e+03 4.6404246e+03 - 1.7671772e+03 -1.4905048e+03 4.6402711e+03 - 1.7990405e+03 -1.4535282e+03 4.6400755e+03 - 1.8302285e+03 -1.4160937e+03 4.6398390e+03 - 1.8607211e+03 -1.3782235e+03 4.6395631e+03 - 1.8904987e+03 -1.3399392e+03 4.6392496e+03 - 1.9195422e+03 -1.3012624e+03 4.6389006e+03 - 1.9478332e+03 -1.2622143e+03 4.6385182e+03 - 1.9753538e+03 -1.2228157e+03 4.6381050e+03 - 2.0020869e+03 -1.1830869e+03 4.6376635e+03 - 2.0280161e+03 -1.1430479e+03 4.6371965e+03 - 2.0531254e+03 -1.1027179e+03 4.6367071e+03 - 2.0773999e+03 -1.0621157e+03 4.6361983e+03 - 2.1008252e+03 -1.0212595e+03 4.6356732e+03 - 2.1233877e+03 -9.8016688e+02 4.6351353e+03 - 2.1450747e+03 -9.3885460e+02 4.6345879e+03 - 2.1658738e+03 -8.9733889e+02 4.6340343e+03 - 2.1857739e+03 -8.5563520e+02 4.6334780e+03 - 2.2047641e+03 -8.1375832e+02 4.6329224e+03 - 2.2228346e+03 -7.7172230e+02 4.6323710e+03 - 2.2399760e+03 -7.2954049e+02 4.6318271e+03 - 2.2561798e+03 -6.8722554e+02 4.6312941e+03 - 2.2714380e+03 -6.4478940e+02 4.6307752e+03 - 2.2857433e+03 -6.0224334e+02 4.6302734e+03 - 2.2990890e+03 -5.5959797e+02 4.6297920e+03 - 2.3114690e+03 -5.1686328e+02 4.6293337e+03 - 2.3228778e+03 -4.7404865e+02 4.6289013e+03 - 2.3333103e+03 -4.3116288e+02 4.6284973e+03 - 2.3427622e+03 -3.8821424e+02 4.6281243e+03 - 2.3512293e+03 -3.4521049e+02 4.6277843e+03 - 2.3587082e+03 -3.0215896e+02 4.6274795e+03 - 2.3651960e+03 -2.5906654e+02 4.6272116e+03 - 2.3706899e+03 -2.1593977e+02 4.6269822e+03 - 2.3751878e+03 -1.7278486e+02 4.6267926e+03 - 2.3786880e+03 -1.2960777e+02 4.6266440e+03 - 2.3811890e+03 -8.6414234e+01 4.6265372e+03 - 2.3826901e+03 -4.3209822e+01 4.6264729e+03 - 2.3831905e+03 0.0000000e+00 4.6264514e+03 - 2.4964493e+03 0.0000000e+00 4.5933158e+03 - 2.4959232e+03 4.4832450e+01 4.5933419e+03 - 2.4943451e+03 8.9660986e+01 4.5934199e+03 - 2.4917155e+03 1.3448163e+02 4.5935495e+03 - 2.4880353e+03 1.7929026e+02 4.5937298e+03 - 2.4833057e+03 2.2408258e+02 4.5939599e+03 - 2.4775284e+03 2.6885403e+02 4.5942383e+03 - 2.4707053e+03 3.1359970e+02 4.5945636e+03 - 2.4628390e+03 3.5831434e+02 4.5949336e+03 - 2.4539322e+03 4.0299221e+02 4.5953464e+03 - 2.4439882e+03 4.4762712e+02 4.5957995e+03 - 2.4330109e+03 4.9221229e+02 4.5962901e+03 - 2.4210046e+03 5.3674035e+02 4.5968155e+03 - 2.4079740e+03 5.8120328e+02 4.5973725e+03 - 2.3939247e+03 6.2559234e+02 4.5979578e+03 - 2.3788625e+03 6.6989808e+02 4.5985678e+03 - 2.3627942e+03 7.1411027e+02 4.5991990e+03 - 2.3457271e+03 7.5821785e+02 4.5998474e+03 - 2.3276691e+03 8.0220897e+02 4.6005093e+03 - 2.3086290e+03 8.4607088e+02 4.6011805e+03 - 2.2886163e+03 8.8979000e+02 4.6018569e+03 - 2.2676413e+03 9.3335186e+02 4.6025345e+03 - 2.2457150e+03 9.7674109e+02 4.6032089e+03 - 2.2228493e+03 1.0199415e+03 4.6038761e+03 - 2.1990570e+03 1.0629359e+03 4.6045319e+03 - 2.1743517e+03 1.1057064e+03 4.6051720e+03 - 2.1487478e+03 1.1482343e+03 4.6057927e+03 - 2.1222608e+03 1.1904999e+03 4.6063898e+03 - 2.0949067e+03 1.2324828e+03 4.6069596e+03 - 2.0667026e+03 1.2741621e+03 4.6074985e+03 - 2.0376665e+03 1.3155160e+03 4.6080031e+03 - 2.0078170e+03 1.3565221e+03 4.6084700e+03 - 1.9771736e+03 1.3971576e+03 4.6088963e+03 - 1.9457566e+03 1.4373989e+03 4.6092793e+03 - 1.9135871e+03 1.4772223e+03 4.6096163e+03 - 1.8806865e+03 1.5166036e+03 4.6099054e+03 - 1.8470773e+03 1.5555184e+03 4.6101445e+03 - 1.8127822e+03 1.5939419e+03 4.6103321e+03 - 1.7778246e+03 1.6318494e+03 4.6104670e+03 - 1.7422282e+03 1.6692161e+03 4.6105482e+03 - 1.7060173e+03 1.7060173e+03 4.6105754e+03 - 1.6692161e+03 1.7422282e+03 4.6105482e+03 - 1.6318494e+03 1.7778246e+03 4.6104670e+03 - 1.5939419e+03 1.8127822e+03 4.6103321e+03 - 1.5555184e+03 1.8470773e+03 4.6101445e+03 - 1.5166036e+03 1.8806865e+03 4.6099054e+03 - 1.4772223e+03 1.9135871e+03 4.6096163e+03 - 1.4373989e+03 1.9457566e+03 4.6092793e+03 - 1.3971576e+03 1.9771736e+03 4.6088963e+03 - 1.3565221e+03 2.0078170e+03 4.6084700e+03 - 1.3155160e+03 2.0376665e+03 4.6080031e+03 - 1.2741621e+03 2.0667026e+03 4.6074985e+03 - 1.2324828e+03 2.0949067e+03 4.6069596e+03 - 1.1904999e+03 2.1222608e+03 4.6063898e+03 - 1.1482343e+03 2.1487478e+03 4.6057927e+03 - 1.1057064e+03 2.1743517e+03 4.6051720e+03 - 1.0629359e+03 2.1990570e+03 4.6045319e+03 - 1.0199415e+03 2.2228493e+03 4.6038761e+03 - 9.7674109e+02 2.2457150e+03 4.6032089e+03 - 9.3335186e+02 2.2676413e+03 4.6025345e+03 - 8.8979000e+02 2.2886163e+03 4.6018569e+03 - 8.4607088e+02 2.3086290e+03 4.6011805e+03 - 8.0220897e+02 2.3276691e+03 4.6005093e+03 - 7.5821785e+02 2.3457271e+03 4.5998474e+03 - 7.1411027e+02 2.3627942e+03 4.5991990e+03 - 6.6989808e+02 2.3788625e+03 4.5985678e+03 - 6.2559234e+02 2.3939247e+03 4.5979578e+03 - 5.8120328e+02 2.4079740e+03 4.5973725e+03 - 5.3674035e+02 2.4210046e+03 4.5968155e+03 - 4.9221229e+02 2.4330109e+03 4.5962901e+03 - 4.4762712e+02 2.4439882e+03 4.5957995e+03 - 4.0299221e+02 2.4539322e+03 4.5953464e+03 - 3.5831434e+02 2.4628390e+03 4.5949336e+03 - 3.1359970e+02 2.4707053e+03 4.5945636e+03 - 2.6885403e+02 2.4775284e+03 4.5942383e+03 - 2.2408258e+02 2.4833057e+03 4.5939599e+03 - 1.7929026e+02 2.4880353e+03 4.5937298e+03 - 1.3448163e+02 2.4917155e+03 4.5935495e+03 - 8.9660986e+01 2.4943451e+03 4.5934199e+03 - 4.4832450e+01 2.4959232e+03 4.5933419e+03 - 0.0000000e+00 2.4964493e+03 4.5933158e+03 - -4.4832450e+01 2.4959232e+03 4.5933419e+03 - -8.9660986e+01 2.4943451e+03 4.5934199e+03 - -1.3448163e+02 2.4917155e+03 4.5935495e+03 - -1.7929026e+02 2.4880353e+03 4.5937298e+03 - -2.2408258e+02 2.4833057e+03 4.5939599e+03 - -2.6885403e+02 2.4775284e+03 4.5942383e+03 - -3.1359970e+02 2.4707053e+03 4.5945636e+03 - -3.5831434e+02 2.4628390e+03 4.5949336e+03 - -4.0299221e+02 2.4539322e+03 4.5953464e+03 - -4.4762712e+02 2.4439882e+03 4.5957995e+03 - -4.9221229e+02 2.4330109e+03 4.5962901e+03 - -5.3674035e+02 2.4210046e+03 4.5968155e+03 - -5.8120328e+02 2.4079740e+03 4.5973725e+03 - -6.2559234e+02 2.3939247e+03 4.5979578e+03 - -6.6989808e+02 2.3788625e+03 4.5985678e+03 - -7.1411027e+02 2.3627942e+03 4.5991990e+03 - -7.5821785e+02 2.3457271e+03 4.5998474e+03 - -8.0220897e+02 2.3276691e+03 4.6005093e+03 - -8.4607088e+02 2.3086290e+03 4.6011805e+03 - -8.8979000e+02 2.2886163e+03 4.6018569e+03 - -9.3335186e+02 2.2676413e+03 4.6025345e+03 - -9.7674109e+02 2.2457150e+03 4.6032089e+03 - -1.0199415e+03 2.2228493e+03 4.6038761e+03 - -1.0629359e+03 2.1990570e+03 4.6045319e+03 - -1.1057064e+03 2.1743517e+03 4.6051720e+03 - -1.1482343e+03 2.1487478e+03 4.6057927e+03 - -1.1904999e+03 2.1222608e+03 4.6063898e+03 - -1.2324828e+03 2.0949067e+03 4.6069596e+03 - -1.2741621e+03 2.0667026e+03 4.6074985e+03 - -1.3155160e+03 2.0376665e+03 4.6080031e+03 - -1.3565221e+03 2.0078170e+03 4.6084700e+03 - -1.3971576e+03 1.9771736e+03 4.6088963e+03 - -1.4373989e+03 1.9457566e+03 4.6092793e+03 - -1.4772223e+03 1.9135871e+03 4.6096163e+03 - -1.5166036e+03 1.8806865e+03 4.6099054e+03 - -1.5555184e+03 1.8470773e+03 4.6101445e+03 - -1.5939419e+03 1.8127822e+03 4.6103321e+03 - -1.6318494e+03 1.7778246e+03 4.6104670e+03 - -1.6692161e+03 1.7422282e+03 4.6105482e+03 - -1.7060173e+03 1.7060173e+03 4.6105754e+03 - -1.7422282e+03 1.6692161e+03 4.6105482e+03 - -1.7778246e+03 1.6318494e+03 4.6104670e+03 - -1.8127822e+03 1.5939419e+03 4.6103321e+03 - -1.8470773e+03 1.5555184e+03 4.6101445e+03 - -1.8806865e+03 1.5166036e+03 4.6099054e+03 - -1.9135871e+03 1.4772223e+03 4.6096163e+03 - -1.9457566e+03 1.4373989e+03 4.6092793e+03 - -1.9771736e+03 1.3971576e+03 4.6088963e+03 - -2.0078170e+03 1.3565221e+03 4.6084700e+03 - -2.0376665e+03 1.3155160e+03 4.6080031e+03 - -2.0667026e+03 1.2741621e+03 4.6074985e+03 - -2.0949067e+03 1.2324828e+03 4.6069596e+03 - -2.1222608e+03 1.1904999e+03 4.6063898e+03 - -2.1487478e+03 1.1482343e+03 4.6057927e+03 - -2.1743517e+03 1.1057064e+03 4.6051720e+03 - -2.1990570e+03 1.0629359e+03 4.6045319e+03 - -2.2228493e+03 1.0199415e+03 4.6038761e+03 - -2.2457150e+03 9.7674109e+02 4.6032089e+03 - -2.2676413e+03 9.3335186e+02 4.6025345e+03 - -2.2886163e+03 8.8979000e+02 4.6018569e+03 - -2.3086290e+03 8.4607088e+02 4.6011805e+03 - -2.3276691e+03 8.0220897e+02 4.6005093e+03 - -2.3457271e+03 7.5821785e+02 4.5998474e+03 - -2.3627942e+03 7.1411027e+02 4.5991990e+03 - -2.3788625e+03 6.6989808e+02 4.5985678e+03 - -2.3939247e+03 6.2559234e+02 4.5979578e+03 - -2.4079740e+03 5.8120328e+02 4.5973725e+03 - -2.4210046e+03 5.3674035e+02 4.5968155e+03 - -2.4330109e+03 4.9221229e+02 4.5962901e+03 - -2.4439882e+03 4.4762712e+02 4.5957995e+03 - -2.4539322e+03 4.0299221e+02 4.5953464e+03 - -2.4628390e+03 3.5831434e+02 4.5949336e+03 - -2.4707053e+03 3.1359970e+02 4.5945636e+03 - -2.4775284e+03 2.6885403e+02 4.5942383e+03 - -2.4833057e+03 2.2408258e+02 4.5939599e+03 - -2.4880353e+03 1.7929026e+02 4.5937298e+03 - -2.4917155e+03 1.3448163e+02 4.5935495e+03 - -2.4943451e+03 8.9660986e+01 4.5934199e+03 - -2.4959232e+03 4.4832450e+01 4.5933419e+03 - -2.4964493e+03 4.8134273e-09 4.5933158e+03 - -2.4959232e+03 -4.4832450e+01 4.5933419e+03 - -2.4943451e+03 -8.9660986e+01 4.5934199e+03 - -2.4917155e+03 -1.3448163e+02 4.5935495e+03 - -2.4880353e+03 -1.7929026e+02 4.5937298e+03 - -2.4833057e+03 -2.2408258e+02 4.5939599e+03 - -2.4775284e+03 -2.6885403e+02 4.5942383e+03 - -2.4707053e+03 -3.1359970e+02 4.5945636e+03 - -2.4628390e+03 -3.5831434e+02 4.5949336e+03 - -2.4539322e+03 -4.0299221e+02 4.5953464e+03 - -2.4439882e+03 -4.4762712e+02 4.5957995e+03 - -2.4330109e+03 -4.9221229e+02 4.5962901e+03 - -2.4210046e+03 -5.3674035e+02 4.5968155e+03 - -2.4079740e+03 -5.8120328e+02 4.5973725e+03 - -2.3939247e+03 -6.2559234e+02 4.5979578e+03 - -2.3788625e+03 -6.6989808e+02 4.5985678e+03 - -2.3627942e+03 -7.1411027e+02 4.5991990e+03 - -2.3457271e+03 -7.5821785e+02 4.5998474e+03 - -2.3276691e+03 -8.0220897e+02 4.6005093e+03 - -2.3086290e+03 -8.4607088e+02 4.6011805e+03 - -2.2886163e+03 -8.8979000e+02 4.6018569e+03 - -2.2676413e+03 -9.3335186e+02 4.6025345e+03 - -2.2457150e+03 -9.7674109e+02 4.6032089e+03 - -2.2228493e+03 -1.0199415e+03 4.6038761e+03 - -2.1990570e+03 -1.0629359e+03 4.6045319e+03 - -2.1743517e+03 -1.1057064e+03 4.6051720e+03 - -2.1487478e+03 -1.1482343e+03 4.6057927e+03 - -2.1222608e+03 -1.1904999e+03 4.6063898e+03 - -2.0949067e+03 -1.2324828e+03 4.6069596e+03 - -2.0667026e+03 -1.2741621e+03 4.6074985e+03 - -2.0376665e+03 -1.3155160e+03 4.6080031e+03 - -2.0078170e+03 -1.3565221e+03 4.6084700e+03 - -1.9771736e+03 -1.3971576e+03 4.6088963e+03 - -1.9457566e+03 -1.4373989e+03 4.6092793e+03 - -1.9135871e+03 -1.4772223e+03 4.6096163e+03 - -1.8806865e+03 -1.5166036e+03 4.6099054e+03 - -1.8470773e+03 -1.5555184e+03 4.6101445e+03 - -1.8127822e+03 -1.5939419e+03 4.6103321e+03 - -1.7778246e+03 -1.6318494e+03 4.6104670e+03 - -1.7422282e+03 -1.6692161e+03 4.6105482e+03 - -1.7060173e+03 -1.7060173e+03 4.6105754e+03 - -1.6692161e+03 -1.7422282e+03 4.6105482e+03 - -1.6318494e+03 -1.7778246e+03 4.6104670e+03 - -1.5939419e+03 -1.8127822e+03 4.6103321e+03 - -1.5555184e+03 -1.8470773e+03 4.6101445e+03 - -1.5166036e+03 -1.8806865e+03 4.6099054e+03 - -1.4772223e+03 -1.9135871e+03 4.6096163e+03 - -1.4373989e+03 -1.9457566e+03 4.6092793e+03 - -1.3971576e+03 -1.9771736e+03 4.6088963e+03 - -1.3565221e+03 -2.0078170e+03 4.6084700e+03 - -1.3155160e+03 -2.0376665e+03 4.6080031e+03 - -1.2741621e+03 -2.0667026e+03 4.6074985e+03 - -1.2324828e+03 -2.0949067e+03 4.6069596e+03 - -1.1904999e+03 -2.1222608e+03 4.6063898e+03 - -1.1482343e+03 -2.1487478e+03 4.6057927e+03 - -1.1057064e+03 -2.1743517e+03 4.6051720e+03 - -1.0629359e+03 -2.1990570e+03 4.6045319e+03 - -1.0199415e+03 -2.2228493e+03 4.6038761e+03 - -9.7674109e+02 -2.2457150e+03 4.6032089e+03 - -9.3335186e+02 -2.2676413e+03 4.6025345e+03 - -8.8979000e+02 -2.2886163e+03 4.6018569e+03 - -8.4607088e+02 -2.3086290e+03 4.6011805e+03 - -8.0220897e+02 -2.3276691e+03 4.6005093e+03 - -7.5821785e+02 -2.3457271e+03 4.5998474e+03 - -7.1411027e+02 -2.3627942e+03 4.5991990e+03 - -6.6989808e+02 -2.3788625e+03 4.5985678e+03 - -6.2559234e+02 -2.3939247e+03 4.5979578e+03 - -5.8120328e+02 -2.4079740e+03 4.5973725e+03 - -5.3674035e+02 -2.4210046e+03 4.5968155e+03 - -4.9221229e+02 -2.4330109e+03 4.5962901e+03 - -4.4762712e+02 -2.4439882e+03 4.5957995e+03 - -4.0299221e+02 -2.4539322e+03 4.5953464e+03 - -3.5831434e+02 -2.4628390e+03 4.5949336e+03 - -3.1359970e+02 -2.4707053e+03 4.5945636e+03 - -2.6885403e+02 -2.4775284e+03 4.5942383e+03 - -2.2408258e+02 -2.4833057e+03 4.5939599e+03 - -1.7929026e+02 -2.4880353e+03 4.5937298e+03 - -1.3448163e+02 -2.4917155e+03 4.5935495e+03 - -8.9660986e+01 -2.4943451e+03 4.5934199e+03 - -4.4832450e+01 -2.4959232e+03 4.5933419e+03 - 0.0000000e+00 -2.4964493e+03 4.5933158e+03 - 4.4832450e+01 -2.4959232e+03 4.5933419e+03 - 8.9660986e+01 -2.4943451e+03 4.5934199e+03 - 1.3448163e+02 -2.4917155e+03 4.5935495e+03 - 1.7929026e+02 -2.4880353e+03 4.5937298e+03 - 2.2408258e+02 -2.4833057e+03 4.5939599e+03 - 2.6885403e+02 -2.4775284e+03 4.5942383e+03 - 3.1359970e+02 -2.4707053e+03 4.5945636e+03 - 3.5831434e+02 -2.4628390e+03 4.5949336e+03 - 4.0299221e+02 -2.4539322e+03 4.5953464e+03 - 4.4762712e+02 -2.4439882e+03 4.5957995e+03 - 4.9221229e+02 -2.4330109e+03 4.5962901e+03 - 5.3674035e+02 -2.4210046e+03 4.5968155e+03 - 5.8120328e+02 -2.4079740e+03 4.5973725e+03 - 6.2559234e+02 -2.3939247e+03 4.5979578e+03 - 6.6989808e+02 -2.3788625e+03 4.5985678e+03 - 7.1411027e+02 -2.3627942e+03 4.5991990e+03 - 7.5821785e+02 -2.3457271e+03 4.5998474e+03 - 8.0220897e+02 -2.3276691e+03 4.6005093e+03 - 8.4607088e+02 -2.3086290e+03 4.6011805e+03 - 8.8979000e+02 -2.2886163e+03 4.6018569e+03 - 9.3335186e+02 -2.2676413e+03 4.6025345e+03 - 9.7674109e+02 -2.2457150e+03 4.6032089e+03 - 1.0199415e+03 -2.2228493e+03 4.6038761e+03 - 1.0629359e+03 -2.1990570e+03 4.6045319e+03 - 1.1057064e+03 -2.1743517e+03 4.6051720e+03 - 1.1482343e+03 -2.1487478e+03 4.6057927e+03 - 1.1904999e+03 -2.1222608e+03 4.6063898e+03 - 1.2324828e+03 -2.0949067e+03 4.6069596e+03 - 1.2741621e+03 -2.0667026e+03 4.6074985e+03 - 1.3155160e+03 -2.0376665e+03 4.6080031e+03 - 1.3565221e+03 -2.0078170e+03 4.6084700e+03 - 1.3971576e+03 -1.9771736e+03 4.6088963e+03 - 1.4373989e+03 -1.9457566e+03 4.6092793e+03 - 1.4772223e+03 -1.9135871e+03 4.6096163e+03 - 1.5166036e+03 -1.8806865e+03 4.6099054e+03 - 1.5555184e+03 -1.8470773e+03 4.6101445e+03 - 1.5939419e+03 -1.8127822e+03 4.6103321e+03 - 1.6318494e+03 -1.7778246e+03 4.6104670e+03 - 1.6692161e+03 -1.7422282e+03 4.6105482e+03 - 1.7060173e+03 -1.7060173e+03 4.6105754e+03 - 1.7422282e+03 -1.6692161e+03 4.6105482e+03 - 1.7778246e+03 -1.6318494e+03 4.6104670e+03 - 1.8127822e+03 -1.5939419e+03 4.6103321e+03 - 1.8470773e+03 -1.5555184e+03 4.6101445e+03 - 1.8806865e+03 -1.5166036e+03 4.6099054e+03 - 1.9135871e+03 -1.4772223e+03 4.6096163e+03 - 1.9457566e+03 -1.4373989e+03 4.6092793e+03 - 1.9771736e+03 -1.3971576e+03 4.6088963e+03 - 2.0078170e+03 -1.3565221e+03 4.6084700e+03 - 2.0376665e+03 -1.3155160e+03 4.6080031e+03 - 2.0667026e+03 -1.2741621e+03 4.6074985e+03 - 2.0949067e+03 -1.2324828e+03 4.6069596e+03 - 2.1222608e+03 -1.1904999e+03 4.6063898e+03 - 2.1487478e+03 -1.1482343e+03 4.6057927e+03 - 2.1743517e+03 -1.1057064e+03 4.6051720e+03 - 2.1990570e+03 -1.0629359e+03 4.6045319e+03 - 2.2228493e+03 -1.0199415e+03 4.6038761e+03 - 2.2457150e+03 -9.7674109e+02 4.6032089e+03 - 2.2676413e+03 -9.3335186e+02 4.6025345e+03 - 2.2886163e+03 -8.8979000e+02 4.6018569e+03 - 2.3086290e+03 -8.4607088e+02 4.6011805e+03 - 2.3276691e+03 -8.0220897e+02 4.6005093e+03 - 2.3457271e+03 -7.5821785e+02 4.5998474e+03 - 2.3627942e+03 -7.1411027e+02 4.5991990e+03 - 2.3788625e+03 -6.6989808e+02 4.5985678e+03 - 2.3939247e+03 -6.2559234e+02 4.5979578e+03 - 2.4079740e+03 -5.8120328e+02 4.5973725e+03 - 2.4210046e+03 -5.3674035e+02 4.5968155e+03 - 2.4330109e+03 -4.9221229e+02 4.5962901e+03 - 2.4439882e+03 -4.4762712e+02 4.5957995e+03 - 2.4539322e+03 -4.0299221e+02 4.5953464e+03 - 2.4628390e+03 -3.5831434e+02 4.5949336e+03 - 2.4707053e+03 -3.1359970e+02 4.5945636e+03 - 2.4775284e+03 -2.6885403e+02 4.5942383e+03 - 2.4833057e+03 -2.2408258e+02 4.5939599e+03 - 2.4880353e+03 -1.7929026e+02 4.5937298e+03 - 2.4917155e+03 -1.3448163e+02 4.5935495e+03 - 2.4943451e+03 -8.9660986e+01 4.5934199e+03 - 2.4959232e+03 -4.4832450e+01 4.5933419e+03 - 2.4964493e+03 4.8134273e-09 4.5933158e+03 - 2.6034422e+03 -4.8134273e-09 4.5597190e+03 - 2.6028920e+03 4.6298395e+01 4.5597501e+03 - 2.6012417e+03 9.2594581e+01 4.5598431e+03 - 2.5984917e+03 1.3888627e+02 4.5599975e+03 - 2.5946427e+03 1.8517103e+02 4.5602124e+03 - 2.5896959e+03 2.3144617e+02 4.5604866e+03 - 2.5836527e+03 2.7770873e+02 4.5608185e+03 - 2.5765149e+03 3.2395535e+02 4.5612062e+03 - 2.5682845e+03 3.7018222e+02 4.5616475e+03 - 2.5589643e+03 4.1638499e+02 4.5621398e+03 - 2.5485571e+03 4.6255876e+02 4.5626802e+03 - 2.5370666e+03 5.0869794e+02 4.5632656e+03 - 2.5244966e+03 5.5479623e+02 4.5638926e+03 - 2.5108517e+03 6.0084656e+02 4.5645575e+03 - 2.4961371e+03 6.4684101e+02 4.5652563e+03 - 2.4803585e+03 6.9277082e+02 4.5659849e+03 - 2.4635223e+03 7.3862625e+02 4.5667390e+03 - 2.4456358e+03 7.8439664e+02 4.5675139e+03 - 2.4267067e+03 8.3007030e+02 4.5683052e+03 - 2.4067439e+03 8.7563454e+02 4.5691078e+03 - 2.3857568e+03 9.2107561e+02 4.5699170e+03 - 2.3637560e+03 9.6637868e+02 4.5707277e+03 - 2.3407527e+03 1.0115279e+03 4.5715350e+03 - 2.3167593e+03 1.0565063e+03 4.5723339e+03 - 2.2917889e+03 1.1012959e+03 4.5731193e+03 - 2.2658559e+03 1.1458776e+03 4.5738863e+03 - 2.2389755e+03 1.1902314e+03 4.5746301e+03 - 2.2111640e+03 1.2343363e+03 4.5753459e+03 - 2.1824386e+03 1.2781702e+03 4.5760293e+03 - 2.1528177e+03 1.3217103e+03 4.5766757e+03 - 2.1223204e+03 1.3649330e+03 4.5772810e+03 - 2.0909672e+03 1.4078137e+03 4.5778414e+03 - 2.0587791e+03 1.4503273e+03 4.5783531e+03 - 2.0257783e+03 1.4924480e+03 4.5788128e+03 - 1.9919877e+03 1.5341496e+03 4.5792176e+03 - 1.9574313e+03 1.5754053e+03 4.5795647e+03 - 1.9221333e+03 1.6161879e+03 4.5798519e+03 - 1.8861192e+03 1.6564702e+03 4.5800772e+03 - 1.8494146e+03 1.6962247e+03 4.5802393e+03 - 1.8120460e+03 1.7354238e+03 4.5803369e+03 - 1.7740400e+03 1.7740400e+03 4.5803695e+03 - 1.7354238e+03 1.8120460e+03 4.5803369e+03 - 1.6962247e+03 1.8494146e+03 4.5802393e+03 - 1.6564702e+03 1.8861192e+03 4.5800772e+03 - 1.6161879e+03 1.9221333e+03 4.5798519e+03 - 1.5754053e+03 1.9574313e+03 4.5795647e+03 - 1.5341496e+03 1.9919877e+03 4.5792176e+03 - 1.4924480e+03 2.0257783e+03 4.5788128e+03 - 1.4503273e+03 2.0587791e+03 4.5783531e+03 - 1.4078137e+03 2.0909672e+03 4.5778414e+03 - 1.3649330e+03 2.1223204e+03 4.5772810e+03 - 1.3217103e+03 2.1528177e+03 4.5766757e+03 - 1.2781702e+03 2.1824386e+03 4.5760293e+03 - 1.2343363e+03 2.2111640e+03 4.5753459e+03 - 1.1902314e+03 2.2389755e+03 4.5746301e+03 - 1.1458776e+03 2.2658559e+03 4.5738863e+03 - 1.1012959e+03 2.2917889e+03 4.5731193e+03 - 1.0565063e+03 2.3167593e+03 4.5723339e+03 - 1.0115279e+03 2.3407527e+03 4.5715350e+03 - 9.6637868e+02 2.3637560e+03 4.5707277e+03 - 9.2107561e+02 2.3857568e+03 4.5699170e+03 - 8.7563454e+02 2.4067439e+03 4.5691078e+03 - 8.3007030e+02 2.4267067e+03 4.5683052e+03 - 7.8439664e+02 2.4456358e+03 4.5675139e+03 - 7.3862625e+02 2.4635223e+03 4.5667390e+03 - 6.9277082e+02 2.4803585e+03 4.5659849e+03 - 6.4684101e+02 2.4961371e+03 4.5652563e+03 - 6.0084656e+02 2.5108517e+03 4.5645575e+03 - 5.5479623e+02 2.5244966e+03 4.5638926e+03 - 5.0869794e+02 2.5370666e+03 4.5632656e+03 - 4.6255876e+02 2.5485571e+03 4.5626802e+03 - 4.1638499e+02 2.5589643e+03 4.5621398e+03 - 3.7018222e+02 2.5682845e+03 4.5616475e+03 - 3.2395535e+02 2.5765149e+03 4.5612062e+03 - 2.7770873e+02 2.5836527e+03 4.5608185e+03 - 2.3144617e+02 2.5896959e+03 4.5604866e+03 - 1.8517103e+02 2.5946427e+03 4.5602124e+03 - 1.3888627e+02 2.5984917e+03 4.5599975e+03 - 9.2594581e+01 2.6012417e+03 4.5598431e+03 - 4.6298395e+01 2.6028920e+03 4.5597501e+03 - 0.0000000e+00 2.6034422e+03 4.5597190e+03 - -4.6298395e+01 2.6028920e+03 4.5597501e+03 - -9.2594581e+01 2.6012417e+03 4.5598431e+03 - -1.3888627e+02 2.5984917e+03 4.5599975e+03 - -1.8517103e+02 2.5946427e+03 4.5602124e+03 - -2.3144617e+02 2.5896959e+03 4.5604866e+03 - -2.7770873e+02 2.5836527e+03 4.5608185e+03 - -3.2395535e+02 2.5765149e+03 4.5612062e+03 - -3.7018222e+02 2.5682845e+03 4.5616475e+03 - -4.1638499e+02 2.5589643e+03 4.5621398e+03 - -4.6255876e+02 2.5485571e+03 4.5626802e+03 - -5.0869794e+02 2.5370666e+03 4.5632656e+03 - -5.5479623e+02 2.5244966e+03 4.5638926e+03 - -6.0084656e+02 2.5108517e+03 4.5645575e+03 - -6.4684101e+02 2.4961371e+03 4.5652563e+03 - -6.9277082e+02 2.4803585e+03 4.5659849e+03 - -7.3862625e+02 2.4635223e+03 4.5667390e+03 - -7.8439664e+02 2.4456358e+03 4.5675139e+03 - -8.3007030e+02 2.4267067e+03 4.5683052e+03 - -8.7563454e+02 2.4067439e+03 4.5691078e+03 - -9.2107561e+02 2.3857568e+03 4.5699170e+03 - -9.6637868e+02 2.3637560e+03 4.5707277e+03 - -1.0115279e+03 2.3407527e+03 4.5715350e+03 - -1.0565063e+03 2.3167593e+03 4.5723339e+03 - -1.1012959e+03 2.2917889e+03 4.5731193e+03 - -1.1458776e+03 2.2658559e+03 4.5738863e+03 - -1.1902314e+03 2.2389755e+03 4.5746301e+03 - -1.2343363e+03 2.2111640e+03 4.5753459e+03 - -1.2781702e+03 2.1824386e+03 4.5760293e+03 - -1.3217103e+03 2.1528177e+03 4.5766757e+03 - -1.3649330e+03 2.1223204e+03 4.5772810e+03 - -1.4078137e+03 2.0909672e+03 4.5778414e+03 - -1.4503273e+03 2.0587791e+03 4.5783531e+03 - -1.4924480e+03 2.0257783e+03 4.5788128e+03 - -1.5341496e+03 1.9919877e+03 4.5792176e+03 - -1.5754053e+03 1.9574313e+03 4.5795647e+03 - -1.6161879e+03 1.9221333e+03 4.5798519e+03 - -1.6564702e+03 1.8861192e+03 4.5800772e+03 - -1.6962247e+03 1.8494146e+03 4.5802393e+03 - -1.7354238e+03 1.8120460e+03 4.5803369e+03 - -1.7740400e+03 1.7740400e+03 4.5803695e+03 - -1.8120460e+03 1.7354238e+03 4.5803369e+03 - -1.8494146e+03 1.6962247e+03 4.5802393e+03 - -1.8861192e+03 1.6564702e+03 4.5800772e+03 - -1.9221333e+03 1.6161879e+03 4.5798519e+03 - -1.9574313e+03 1.5754053e+03 4.5795647e+03 - -1.9919877e+03 1.5341496e+03 4.5792176e+03 - -2.0257783e+03 1.4924480e+03 4.5788128e+03 - -2.0587791e+03 1.4503273e+03 4.5783531e+03 - -2.0909672e+03 1.4078137e+03 4.5778414e+03 - -2.1223204e+03 1.3649330e+03 4.5772810e+03 - -2.1528177e+03 1.3217103e+03 4.5766757e+03 - -2.1824386e+03 1.2781702e+03 4.5760293e+03 - -2.2111640e+03 1.2343363e+03 4.5753459e+03 - -2.2389755e+03 1.1902314e+03 4.5746301e+03 - -2.2658559e+03 1.1458776e+03 4.5738863e+03 - -2.2917889e+03 1.1012959e+03 4.5731193e+03 - -2.3167593e+03 1.0565063e+03 4.5723339e+03 - -2.3407527e+03 1.0115279e+03 4.5715350e+03 - -2.3637560e+03 9.6637868e+02 4.5707277e+03 - -2.3857568e+03 9.2107561e+02 4.5699170e+03 - -2.4067439e+03 8.7563454e+02 4.5691078e+03 - -2.4267067e+03 8.3007030e+02 4.5683052e+03 - -2.4456358e+03 7.8439664e+02 4.5675139e+03 - -2.4635223e+03 7.3862625e+02 4.5667390e+03 - -2.4803585e+03 6.9277082e+02 4.5659849e+03 - -2.4961371e+03 6.4684101e+02 4.5652563e+03 - -2.5108517e+03 6.0084656e+02 4.5645575e+03 - -2.5244966e+03 5.5479623e+02 4.5638926e+03 - -2.5370666e+03 5.0869794e+02 4.5632656e+03 - -2.5485571e+03 4.6255876e+02 4.5626802e+03 - -2.5589643e+03 4.1638499e+02 4.5621398e+03 - -2.5682845e+03 3.7018222e+02 4.5616475e+03 - -2.5765149e+03 3.2395535e+02 4.5612062e+03 - -2.5836527e+03 2.7770873e+02 4.5608185e+03 - -2.5896959e+03 2.3144617e+02 4.5604866e+03 - -2.5946427e+03 1.8517103e+02 4.5602124e+03 - -2.5984917e+03 1.3888627e+02 4.5599975e+03 - -2.6012417e+03 9.2594581e+01 4.5598431e+03 - -2.6028920e+03 4.6298395e+01 4.5597501e+03 - -2.6034422e+03 4.8134273e-09 4.5597190e+03 - -2.6028920e+03 -4.6298395e+01 4.5597501e+03 - -2.6012417e+03 -9.2594581e+01 4.5598431e+03 - -2.5984917e+03 -1.3888627e+02 4.5599975e+03 - -2.5946427e+03 -1.8517103e+02 4.5602124e+03 - -2.5896959e+03 -2.3144617e+02 4.5604866e+03 - -2.5836527e+03 -2.7770873e+02 4.5608185e+03 - -2.5765149e+03 -3.2395535e+02 4.5612062e+03 - -2.5682845e+03 -3.7018222e+02 4.5616475e+03 - -2.5589643e+03 -4.1638499e+02 4.5621398e+03 - -2.5485571e+03 -4.6255876e+02 4.5626802e+03 - -2.5370666e+03 -5.0869794e+02 4.5632656e+03 - -2.5244966e+03 -5.5479623e+02 4.5638926e+03 - -2.5108517e+03 -6.0084656e+02 4.5645575e+03 - -2.4961371e+03 -6.4684101e+02 4.5652563e+03 - -2.4803585e+03 -6.9277082e+02 4.5659849e+03 - -2.4635223e+03 -7.3862625e+02 4.5667390e+03 - -2.4456358e+03 -7.8439664e+02 4.5675139e+03 - -2.4267067e+03 -8.3007030e+02 4.5683052e+03 - -2.4067439e+03 -8.7563454e+02 4.5691078e+03 - -2.3857568e+03 -9.2107561e+02 4.5699170e+03 - -2.3637560e+03 -9.6637868e+02 4.5707277e+03 - -2.3407527e+03 -1.0115279e+03 4.5715350e+03 - -2.3167593e+03 -1.0565063e+03 4.5723339e+03 - -2.2917889e+03 -1.1012959e+03 4.5731193e+03 - -2.2658559e+03 -1.1458776e+03 4.5738863e+03 - -2.2389755e+03 -1.1902314e+03 4.5746301e+03 - -2.2111640e+03 -1.2343363e+03 4.5753459e+03 - -2.1824386e+03 -1.2781702e+03 4.5760293e+03 - -2.1528177e+03 -1.3217103e+03 4.5766757e+03 - -2.1223204e+03 -1.3649330e+03 4.5772810e+03 - -2.0909672e+03 -1.4078137e+03 4.5778414e+03 - -2.0587791e+03 -1.4503273e+03 4.5783531e+03 - -2.0257783e+03 -1.4924480e+03 4.5788128e+03 - -1.9919877e+03 -1.5341496e+03 4.5792176e+03 - -1.9574313e+03 -1.5754053e+03 4.5795647e+03 - -1.9221333e+03 -1.6161879e+03 4.5798519e+03 - -1.8861192e+03 -1.6564702e+03 4.5800772e+03 - -1.8494146e+03 -1.6962247e+03 4.5802393e+03 - -1.8120460e+03 -1.7354238e+03 4.5803369e+03 - -1.7740400e+03 -1.7740400e+03 4.5803695e+03 - -1.7354238e+03 -1.8120460e+03 4.5803369e+03 - -1.6962247e+03 -1.8494146e+03 4.5802393e+03 - -1.6564702e+03 -1.8861192e+03 4.5800772e+03 - -1.6161879e+03 -1.9221333e+03 4.5798519e+03 - -1.5754053e+03 -1.9574313e+03 4.5795647e+03 - -1.5341496e+03 -1.9919877e+03 4.5792176e+03 - -1.4924480e+03 -2.0257783e+03 4.5788128e+03 - -1.4503273e+03 -2.0587791e+03 4.5783531e+03 - -1.4078137e+03 -2.0909672e+03 4.5778414e+03 - -1.3649330e+03 -2.1223204e+03 4.5772810e+03 - -1.3217103e+03 -2.1528177e+03 4.5766757e+03 - -1.2781702e+03 -2.1824386e+03 4.5760293e+03 - -1.2343363e+03 -2.2111640e+03 4.5753459e+03 - -1.1902314e+03 -2.2389755e+03 4.5746301e+03 - -1.1458776e+03 -2.2658559e+03 4.5738863e+03 - -1.1012959e+03 -2.2917889e+03 4.5731193e+03 - -1.0565063e+03 -2.3167593e+03 4.5723339e+03 - -1.0115279e+03 -2.3407527e+03 4.5715350e+03 - -9.6637868e+02 -2.3637560e+03 4.5707277e+03 - -9.2107561e+02 -2.3857568e+03 4.5699170e+03 - -8.7563454e+02 -2.4067439e+03 4.5691078e+03 - -8.3007030e+02 -2.4267067e+03 4.5683052e+03 - -7.8439664e+02 -2.4456358e+03 4.5675139e+03 - -7.3862625e+02 -2.4635223e+03 4.5667390e+03 - -6.9277082e+02 -2.4803585e+03 4.5659849e+03 - -6.4684101e+02 -2.4961371e+03 4.5652563e+03 - -6.0084656e+02 -2.5108517e+03 4.5645575e+03 - -5.5479623e+02 -2.5244966e+03 4.5638926e+03 - -5.0869794e+02 -2.5370666e+03 4.5632656e+03 - -4.6255876e+02 -2.5485571e+03 4.5626802e+03 - -4.1638499e+02 -2.5589643e+03 4.5621398e+03 - -3.7018222e+02 -2.5682845e+03 4.5616475e+03 - -3.2395535e+02 -2.5765149e+03 4.5612062e+03 - -2.7770873e+02 -2.5836527e+03 4.5608185e+03 - -2.3144617e+02 -2.5896959e+03 4.5604866e+03 - -1.8517103e+02 -2.5946427e+03 4.5602124e+03 - -1.3888627e+02 -2.5984917e+03 4.5599975e+03 - -9.2594581e+01 -2.6012417e+03 4.5598431e+03 - -4.6298395e+01 -2.6028920e+03 4.5597501e+03 - 4.8134273e-09 -2.6034422e+03 4.5597190e+03 - 4.6298395e+01 -2.6028920e+03 4.5597501e+03 - 9.2594581e+01 -2.6012417e+03 4.5598431e+03 - 1.3888627e+02 -2.5984917e+03 4.5599975e+03 - 1.8517103e+02 -2.5946427e+03 4.5602124e+03 - 2.3144617e+02 -2.5896959e+03 4.5604866e+03 - 2.7770873e+02 -2.5836527e+03 4.5608185e+03 - 3.2395535e+02 -2.5765149e+03 4.5612062e+03 - 3.7018222e+02 -2.5682845e+03 4.5616475e+03 - 4.1638499e+02 -2.5589643e+03 4.5621398e+03 - 4.6255876e+02 -2.5485571e+03 4.5626802e+03 - 5.0869794e+02 -2.5370666e+03 4.5632656e+03 - 5.5479623e+02 -2.5244966e+03 4.5638926e+03 - 6.0084656e+02 -2.5108517e+03 4.5645575e+03 - 6.4684101e+02 -2.4961371e+03 4.5652563e+03 - 6.9277082e+02 -2.4803585e+03 4.5659849e+03 - 7.3862625e+02 -2.4635223e+03 4.5667390e+03 - 7.8439664e+02 -2.4456358e+03 4.5675139e+03 - 8.3007030e+02 -2.4267067e+03 4.5683052e+03 - 8.7563454e+02 -2.4067439e+03 4.5691078e+03 - 9.2107561e+02 -2.3857568e+03 4.5699170e+03 - 9.6637868e+02 -2.3637560e+03 4.5707277e+03 - 1.0115279e+03 -2.3407527e+03 4.5715350e+03 - 1.0565063e+03 -2.3167593e+03 4.5723339e+03 - 1.1012959e+03 -2.2917889e+03 4.5731193e+03 - 1.1458776e+03 -2.2658559e+03 4.5738863e+03 - 1.1902314e+03 -2.2389755e+03 4.5746301e+03 - 1.2343363e+03 -2.2111640e+03 4.5753459e+03 - 1.2781702e+03 -2.1824386e+03 4.5760293e+03 - 1.3217103e+03 -2.1528177e+03 4.5766757e+03 - 1.3649330e+03 -2.1223204e+03 4.5772810e+03 - 1.4078137e+03 -2.0909672e+03 4.5778414e+03 - 1.4503273e+03 -2.0587791e+03 4.5783531e+03 - 1.4924480e+03 -2.0257783e+03 4.5788128e+03 - 1.5341496e+03 -1.9919877e+03 4.5792176e+03 - 1.5754053e+03 -1.9574313e+03 4.5795647e+03 - 1.6161879e+03 -1.9221333e+03 4.5798519e+03 - 1.6564702e+03 -1.8861192e+03 4.5800772e+03 - 1.6962247e+03 -1.8494146e+03 4.5802393e+03 - 1.7354238e+03 -1.8120460e+03 4.5803369e+03 - 1.7740400e+03 -1.7740400e+03 4.5803695e+03 - 1.8120460e+03 -1.7354238e+03 4.5803369e+03 - 1.8494146e+03 -1.6962247e+03 4.5802393e+03 - 1.8861192e+03 -1.6564702e+03 4.5800772e+03 - 1.9221333e+03 -1.6161879e+03 4.5798519e+03 - 1.9574313e+03 -1.5754053e+03 4.5795647e+03 - 1.9919877e+03 -1.5341496e+03 4.5792176e+03 - 2.0257783e+03 -1.4924480e+03 4.5788128e+03 - 2.0587791e+03 -1.4503273e+03 4.5783531e+03 - 2.0909672e+03 -1.4078137e+03 4.5778414e+03 - 2.1223204e+03 -1.3649330e+03 4.5772810e+03 - 2.1528177e+03 -1.3217103e+03 4.5766757e+03 - 2.1824386e+03 -1.2781702e+03 4.5760293e+03 - 2.2111640e+03 -1.2343363e+03 4.5753459e+03 - 2.2389755e+03 -1.1902314e+03 4.5746301e+03 - 2.2658559e+03 -1.1458776e+03 4.5738863e+03 - 2.2917889e+03 -1.1012959e+03 4.5731193e+03 - 2.3167593e+03 -1.0565063e+03 4.5723339e+03 - 2.3407527e+03 -1.0115279e+03 4.5715350e+03 - 2.3637560e+03 -9.6637868e+02 4.5707277e+03 - 2.3857568e+03 -9.2107561e+02 4.5699170e+03 - 2.4067439e+03 -8.7563454e+02 4.5691078e+03 - 2.4267067e+03 -8.3007030e+02 4.5683052e+03 - 2.4456358e+03 -7.8439664e+02 4.5675139e+03 - 2.4635223e+03 -7.3862625e+02 4.5667390e+03 - 2.4803585e+03 -6.9277082e+02 4.5659849e+03 - 2.4961371e+03 -6.4684101e+02 4.5652563e+03 - 2.5108517e+03 -6.0084656e+02 4.5645575e+03 - 2.5244966e+03 -5.5479623e+02 4.5638926e+03 - 2.5370666e+03 -5.0869794e+02 4.5632656e+03 - 2.5485571e+03 -4.6255876e+02 4.5626802e+03 - 2.5589643e+03 -4.1638499e+02 4.5621398e+03 - 2.5682845e+03 -3.7018222e+02 4.5616475e+03 - 2.5765149e+03 -3.2395535e+02 4.5612062e+03 - 2.5836527e+03 -2.7770873e+02 4.5608185e+03 - 2.5896959e+03 -2.3144617e+02 4.5604866e+03 - 2.5946427e+03 -1.8517103e+02 4.5602124e+03 - 2.5984917e+03 -1.3888627e+02 4.5599975e+03 - 2.6012417e+03 -9.2594581e+01 4.5598431e+03 - 2.6028920e+03 -4.6298395e+01 4.5597501e+03 - 2.6034422e+03 -4.8134273e-09 4.5597190e+03 - 2.7046516e+03 0.0000000e+00 4.5257409e+03 - 2.7040789e+03 4.7620684e+01 4.5257773e+03 - 2.7023612e+03 9.5241051e+01 4.5258864e+03 - 2.6994986e+03 1.4286070e+02 4.5260676e+03 - 2.6954919e+03 1.9047903e+02 4.5263198e+03 - 2.6903420e+03 2.3809521e+02 4.5266416e+03 - 2.6840499e+03 2.8570804e+02 4.5270311e+03 - 2.6766171e+03 3.3331585e+02 4.5274862e+03 - 2.6680456e+03 3.8091650e+02 4.5280043e+03 - 2.6583374e+03 4.2850721e+02 4.5285824e+03 - 2.6474952e+03 4.7608452e+02 4.5292172e+03 - 2.6355219e+03 5.2364421e+02 4.5299049e+03 - 2.6224213e+03 5.7118123e+02 4.5306417e+03 - 2.6081973e+03 6.1868961e+02 4.5314232e+03 - 2.5928546e+03 6.6616243e+02 4.5322449e+03 - 2.5763987e+03 7.1359171e+02 4.5331018e+03 - 2.5588356e+03 7.6096841e+02 4.5339890e+03 - 2.5401721e+03 8.0828236e+02 4.5349011e+03 - 2.5204159e+03 8.5552217e+02 4.5358326e+03 - 2.4995755e+03 9.0267529e+02 4.5367778e+03 - 2.4776604e+03 9.4972790e+02 4.5377312e+03 - 2.4546810e+03 9.9666492e+02 4.5386867e+03 - 2.4306488e+03 1.0434700e+03 4.5396384e+03 - 2.4055764e+03 1.0901256e+03 4.5405806e+03 - 2.3794773e+03 1.1366127e+03 4.5415072e+03 - 2.3523664e+03 1.1829112e+03 4.5424124e+03 - 2.3242596e+03 1.2289999e+03 4.5432905e+03 - 2.2951740e+03 1.2748562e+03 4.5441358e+03 - 2.2651279e+03 1.3204563e+03 4.5449430e+03 - 2.2341408e+03 1.3657757e+03 4.5457068e+03 - 2.2022333e+03 1.4107884e+03 4.5464223e+03 - 2.1694274e+03 1.4554680e+03 4.5470848e+03 - 2.1357458e+03 1.4997867e+03 4.5476899e+03 - 2.1012125e+03 1.5437165e+03 4.5482337e+03 - 2.0658527e+03 1.5872283e+03 4.5487125e+03 - 2.0296923e+03 1.6302927e+03 4.5491232e+03 - 1.9927582e+03 1.6728797e+03 4.5494631e+03 - 1.9550781e+03 1.7149593e+03 4.5497298e+03 - 1.9166803e+03 1.7565009e+03 4.5499216e+03 - 1.8775940e+03 1.7974742e+03 4.5500372e+03 - 1.8378486e+03 1.8378486e+03 4.5500758e+03 - 1.7974742e+03 1.8775940e+03 4.5500372e+03 - 1.7565009e+03 1.9166803e+03 4.5499216e+03 - 1.7149593e+03 1.9550781e+03 4.5497298e+03 - 1.6728797e+03 1.9927582e+03 4.5494631e+03 - 1.6302927e+03 2.0296923e+03 4.5491232e+03 - 1.5872283e+03 2.0658527e+03 4.5487125e+03 - 1.5437165e+03 2.1012125e+03 4.5482337e+03 - 1.4997867e+03 2.1357458e+03 4.5476899e+03 - 1.4554680e+03 2.1694274e+03 4.5470848e+03 - 1.4107884e+03 2.2022333e+03 4.5464223e+03 - 1.3657757e+03 2.2341408e+03 4.5457068e+03 - 1.3204563e+03 2.2651279e+03 4.5449430e+03 - 1.2748562e+03 2.2951740e+03 4.5441358e+03 - 1.2289999e+03 2.3242596e+03 4.5432905e+03 - 1.1829112e+03 2.3523664e+03 4.5424124e+03 - 1.1366127e+03 2.3794773e+03 4.5415072e+03 - 1.0901256e+03 2.4055764e+03 4.5405806e+03 - 1.0434700e+03 2.4306488e+03 4.5396384e+03 - 9.9666492e+02 2.4546810e+03 4.5386867e+03 - 9.4972790e+02 2.4776604e+03 4.5377312e+03 - 9.0267529e+02 2.4995755e+03 4.5367778e+03 - 8.5552217e+02 2.5204159e+03 4.5358326e+03 - 8.0828236e+02 2.5401721e+03 4.5349011e+03 - 7.6096841e+02 2.5588356e+03 4.5339890e+03 - 7.1359171e+02 2.5763987e+03 4.5331018e+03 - 6.6616243e+02 2.5928546e+03 4.5322449e+03 - 6.1868961e+02 2.6081973e+03 4.5314232e+03 - 5.7118123e+02 2.6224213e+03 4.5306417e+03 - 5.2364421e+02 2.6355219e+03 4.5299049e+03 - 4.7608452e+02 2.6474952e+03 4.5292172e+03 - 4.2850721e+02 2.6583374e+03 4.5285824e+03 - 3.8091650e+02 2.6680456e+03 4.5280043e+03 - 3.3331585e+02 2.6766171e+03 4.5274862e+03 - 2.8570804e+02 2.6840499e+03 4.5270311e+03 - 2.3809521e+02 2.6903420e+03 4.5266416e+03 - 1.9047903e+02 2.6954919e+03 4.5263198e+03 - 1.4286070e+02 2.6994986e+03 4.5260676e+03 - 9.5241051e+01 2.7023612e+03 4.5258864e+03 - 4.7620684e+01 2.7040789e+03 4.5257773e+03 - 0.0000000e+00 2.7046516e+03 4.5257409e+03 - -4.7620684e+01 2.7040789e+03 4.5257773e+03 - -9.5241051e+01 2.7023612e+03 4.5258864e+03 - -1.4286070e+02 2.6994986e+03 4.5260676e+03 - -1.9047903e+02 2.6954919e+03 4.5263198e+03 - -2.3809521e+02 2.6903420e+03 4.5266416e+03 - -2.8570804e+02 2.6840499e+03 4.5270311e+03 - -3.3331585e+02 2.6766171e+03 4.5274862e+03 - -3.8091650e+02 2.6680456e+03 4.5280043e+03 - -4.2850721e+02 2.6583374e+03 4.5285824e+03 - -4.7608452e+02 2.6474952e+03 4.5292172e+03 - -5.2364421e+02 2.6355219e+03 4.5299049e+03 - -5.7118123e+02 2.6224213e+03 4.5306417e+03 - -6.1868961e+02 2.6081973e+03 4.5314232e+03 - -6.6616243e+02 2.5928546e+03 4.5322449e+03 - -7.1359171e+02 2.5763987e+03 4.5331018e+03 - -7.6096841e+02 2.5588356e+03 4.5339890e+03 - -8.0828236e+02 2.5401721e+03 4.5349011e+03 - -8.5552217e+02 2.5204159e+03 4.5358326e+03 - -9.0267529e+02 2.4995755e+03 4.5367778e+03 - -9.4972790e+02 2.4776604e+03 4.5377312e+03 - -9.9666492e+02 2.4546810e+03 4.5386867e+03 - -1.0434700e+03 2.4306488e+03 4.5396384e+03 - -1.0901256e+03 2.4055764e+03 4.5405806e+03 - -1.1366127e+03 2.3794773e+03 4.5415072e+03 - -1.1829112e+03 2.3523664e+03 4.5424124e+03 - -1.2289999e+03 2.3242596e+03 4.5432905e+03 - -1.2748562e+03 2.2951740e+03 4.5441358e+03 - -1.3204563e+03 2.2651279e+03 4.5449430e+03 - -1.3657757e+03 2.2341408e+03 4.5457068e+03 - -1.4107884e+03 2.2022333e+03 4.5464223e+03 - -1.4554680e+03 2.1694274e+03 4.5470848e+03 - -1.4997867e+03 2.1357458e+03 4.5476899e+03 - -1.5437165e+03 2.1012125e+03 4.5482337e+03 - -1.5872283e+03 2.0658527e+03 4.5487125e+03 - -1.6302927e+03 2.0296923e+03 4.5491232e+03 - -1.6728797e+03 1.9927582e+03 4.5494631e+03 - -1.7149593e+03 1.9550781e+03 4.5497298e+03 - -1.7565009e+03 1.9166803e+03 4.5499216e+03 - -1.7974742e+03 1.8775940e+03 4.5500372e+03 - -1.8378486e+03 1.8378486e+03 4.5500758e+03 - -1.8775940e+03 1.7974742e+03 4.5500372e+03 - -1.9166803e+03 1.7565009e+03 4.5499216e+03 - -1.9550781e+03 1.7149593e+03 4.5497298e+03 - -1.9927582e+03 1.6728797e+03 4.5494631e+03 - -2.0296923e+03 1.6302927e+03 4.5491232e+03 - -2.0658527e+03 1.5872283e+03 4.5487125e+03 - -2.1012125e+03 1.5437165e+03 4.5482337e+03 - -2.1357458e+03 1.4997867e+03 4.5476899e+03 - -2.1694274e+03 1.4554680e+03 4.5470848e+03 - -2.2022333e+03 1.4107884e+03 4.5464223e+03 - -2.2341408e+03 1.3657757e+03 4.5457068e+03 - -2.2651279e+03 1.3204563e+03 4.5449430e+03 - -2.2951740e+03 1.2748562e+03 4.5441358e+03 - -2.3242596e+03 1.2289999e+03 4.5432905e+03 - -2.3523664e+03 1.1829112e+03 4.5424124e+03 - -2.3794773e+03 1.1366127e+03 4.5415072e+03 - -2.4055764e+03 1.0901256e+03 4.5405806e+03 - -2.4306488e+03 1.0434700e+03 4.5396384e+03 - -2.4546810e+03 9.9666492e+02 4.5386867e+03 - -2.4776604e+03 9.4972790e+02 4.5377312e+03 - -2.4995755e+03 9.0267529e+02 4.5367778e+03 - -2.5204159e+03 8.5552217e+02 4.5358326e+03 - -2.5401721e+03 8.0828236e+02 4.5349011e+03 - -2.5588356e+03 7.6096841e+02 4.5339890e+03 - -2.5763987e+03 7.1359171e+02 4.5331018e+03 - -2.5928546e+03 6.6616243e+02 4.5322449e+03 - -2.6081973e+03 6.1868961e+02 4.5314232e+03 - -2.6224213e+03 5.7118123e+02 4.5306417e+03 - -2.6355219e+03 5.2364421e+02 4.5299049e+03 - -2.6474952e+03 4.7608452e+02 4.5292172e+03 - -2.6583374e+03 4.2850721e+02 4.5285824e+03 - -2.6680456e+03 3.8091650e+02 4.5280043e+03 - -2.6766171e+03 3.3331585e+02 4.5274862e+03 - -2.6840499e+03 2.8570804e+02 4.5270311e+03 - -2.6903420e+03 2.3809521e+02 4.5266416e+03 - -2.6954919e+03 1.9047903e+02 4.5263198e+03 - -2.6994986e+03 1.4286070e+02 4.5260676e+03 - -2.7023612e+03 9.5241051e+01 4.5258864e+03 - -2.7040789e+03 4.7620684e+01 4.5257773e+03 - -2.7046516e+03 0.0000000e+00 4.5257409e+03 - -2.7040789e+03 -4.7620684e+01 4.5257773e+03 - -2.7023612e+03 -9.5241051e+01 4.5258864e+03 - -2.6994986e+03 -1.4286070e+02 4.5260676e+03 - -2.6954919e+03 -1.9047903e+02 4.5263198e+03 - -2.6903420e+03 -2.3809521e+02 4.5266416e+03 - -2.6840499e+03 -2.8570804e+02 4.5270311e+03 - -2.6766171e+03 -3.3331585e+02 4.5274862e+03 - -2.6680456e+03 -3.8091650e+02 4.5280043e+03 - -2.6583374e+03 -4.2850721e+02 4.5285824e+03 - -2.6474952e+03 -4.7608452e+02 4.5292172e+03 - -2.6355219e+03 -5.2364421e+02 4.5299049e+03 - -2.6224213e+03 -5.7118123e+02 4.5306417e+03 - -2.6081973e+03 -6.1868961e+02 4.5314232e+03 - -2.5928546e+03 -6.6616243e+02 4.5322449e+03 - -2.5763987e+03 -7.1359171e+02 4.5331018e+03 - -2.5588356e+03 -7.6096841e+02 4.5339890e+03 - -2.5401721e+03 -8.0828236e+02 4.5349011e+03 - -2.5204159e+03 -8.5552217e+02 4.5358326e+03 - -2.4995755e+03 -9.0267529e+02 4.5367778e+03 - -2.4776604e+03 -9.4972790e+02 4.5377312e+03 - -2.4546810e+03 -9.9666492e+02 4.5386867e+03 - -2.4306488e+03 -1.0434700e+03 4.5396384e+03 - -2.4055764e+03 -1.0901256e+03 4.5405806e+03 - -2.3794773e+03 -1.1366127e+03 4.5415072e+03 - -2.3523664e+03 -1.1829112e+03 4.5424124e+03 - -2.3242596e+03 -1.2289999e+03 4.5432905e+03 - -2.2951740e+03 -1.2748562e+03 4.5441358e+03 - -2.2651279e+03 -1.3204563e+03 4.5449430e+03 - -2.2341408e+03 -1.3657757e+03 4.5457068e+03 - -2.2022333e+03 -1.4107884e+03 4.5464223e+03 - -2.1694274e+03 -1.4554680e+03 4.5470848e+03 - -2.1357458e+03 -1.4997867e+03 4.5476899e+03 - -2.1012125e+03 -1.5437165e+03 4.5482337e+03 - -2.0658527e+03 -1.5872283e+03 4.5487125e+03 - -2.0296923e+03 -1.6302927e+03 4.5491232e+03 - -1.9927582e+03 -1.6728797e+03 4.5494631e+03 - -1.9550781e+03 -1.7149593e+03 4.5497298e+03 - -1.9166803e+03 -1.7565009e+03 4.5499216e+03 - -1.8775940e+03 -1.7974742e+03 4.5500372e+03 - -1.8378486e+03 -1.8378486e+03 4.5500758e+03 - -1.7974742e+03 -1.8775940e+03 4.5500372e+03 - -1.7565009e+03 -1.9166803e+03 4.5499216e+03 - -1.7149593e+03 -1.9550781e+03 4.5497298e+03 - -1.6728797e+03 -1.9927582e+03 4.5494631e+03 - -1.6302927e+03 -2.0296923e+03 4.5491232e+03 - -1.5872283e+03 -2.0658527e+03 4.5487125e+03 - -1.5437165e+03 -2.1012125e+03 4.5482337e+03 - -1.4997867e+03 -2.1357458e+03 4.5476899e+03 - -1.4554680e+03 -2.1694274e+03 4.5470848e+03 - -1.4107884e+03 -2.2022333e+03 4.5464223e+03 - -1.3657757e+03 -2.2341408e+03 4.5457068e+03 - -1.3204563e+03 -2.2651279e+03 4.5449430e+03 - -1.2748562e+03 -2.2951740e+03 4.5441358e+03 - -1.2289999e+03 -2.3242596e+03 4.5432905e+03 - -1.1829112e+03 -2.3523664e+03 4.5424124e+03 - -1.1366127e+03 -2.3794773e+03 4.5415072e+03 - -1.0901256e+03 -2.4055764e+03 4.5405806e+03 - -1.0434700e+03 -2.4306488e+03 4.5396384e+03 - -9.9666492e+02 -2.4546810e+03 4.5386867e+03 - -9.4972790e+02 -2.4776604e+03 4.5377312e+03 - -9.0267529e+02 -2.4995755e+03 4.5367778e+03 - -8.5552217e+02 -2.5204159e+03 4.5358326e+03 - -8.0828236e+02 -2.5401721e+03 4.5349011e+03 - -7.6096841e+02 -2.5588356e+03 4.5339890e+03 - -7.1359171e+02 -2.5763987e+03 4.5331018e+03 - -6.6616243e+02 -2.5928546e+03 4.5322449e+03 - -6.1868961e+02 -2.6081973e+03 4.5314232e+03 - -5.7118123e+02 -2.6224213e+03 4.5306417e+03 - -5.2364421e+02 -2.6355219e+03 4.5299049e+03 - -4.7608452e+02 -2.6474952e+03 4.5292172e+03 - -4.2850721e+02 -2.6583374e+03 4.5285824e+03 - -3.8091650e+02 -2.6680456e+03 4.5280043e+03 - -3.3331585e+02 -2.6766171e+03 4.5274862e+03 - -2.8570804e+02 -2.6840499e+03 4.5270311e+03 - -2.3809521e+02 -2.6903420e+03 4.5266416e+03 - -1.9047903e+02 -2.6954919e+03 4.5263198e+03 - -1.4286070e+02 -2.6994986e+03 4.5260676e+03 - -9.5241051e+01 -2.7023612e+03 4.5258864e+03 - -4.7620684e+01 -2.7040789e+03 4.5257773e+03 - 0.0000000e+00 -2.7046516e+03 4.5257409e+03 - 4.7620684e+01 -2.7040789e+03 4.5257773e+03 - 9.5241051e+01 -2.7023612e+03 4.5258864e+03 - 1.4286070e+02 -2.6994986e+03 4.5260676e+03 - 1.9047903e+02 -2.6954919e+03 4.5263198e+03 - 2.3809521e+02 -2.6903420e+03 4.5266416e+03 - 2.8570804e+02 -2.6840499e+03 4.5270311e+03 - 3.3331585e+02 -2.6766171e+03 4.5274862e+03 - 3.8091650e+02 -2.6680456e+03 4.5280043e+03 - 4.2850721e+02 -2.6583374e+03 4.5285824e+03 - 4.7608452e+02 -2.6474952e+03 4.5292172e+03 - 5.2364421e+02 -2.6355219e+03 4.5299049e+03 - 5.7118123e+02 -2.6224213e+03 4.5306417e+03 - 6.1868961e+02 -2.6081973e+03 4.5314232e+03 - 6.6616243e+02 -2.5928546e+03 4.5322449e+03 - 7.1359171e+02 -2.5763987e+03 4.5331018e+03 - 7.6096841e+02 -2.5588356e+03 4.5339890e+03 - 8.0828236e+02 -2.5401721e+03 4.5349011e+03 - 8.5552217e+02 -2.5204159e+03 4.5358326e+03 - 9.0267529e+02 -2.4995755e+03 4.5367778e+03 - 9.4972790e+02 -2.4776604e+03 4.5377312e+03 - 9.9666492e+02 -2.4546810e+03 4.5386867e+03 - 1.0434700e+03 -2.4306488e+03 4.5396384e+03 - 1.0901256e+03 -2.4055764e+03 4.5405806e+03 - 1.1366127e+03 -2.3794773e+03 4.5415072e+03 - 1.1829112e+03 -2.3523664e+03 4.5424124e+03 - 1.2289999e+03 -2.3242596e+03 4.5432905e+03 - 1.2748562e+03 -2.2951740e+03 4.5441358e+03 - 1.3204563e+03 -2.2651279e+03 4.5449430e+03 - 1.3657757e+03 -2.2341408e+03 4.5457068e+03 - 1.4107884e+03 -2.2022333e+03 4.5464223e+03 - 1.4554680e+03 -2.1694274e+03 4.5470848e+03 - 1.4997867e+03 -2.1357458e+03 4.5476899e+03 - 1.5437165e+03 -2.1012125e+03 4.5482337e+03 - 1.5872283e+03 -2.0658527e+03 4.5487125e+03 - 1.6302927e+03 -2.0296923e+03 4.5491232e+03 - 1.6728797e+03 -1.9927582e+03 4.5494631e+03 - 1.7149593e+03 -1.9550781e+03 4.5497298e+03 - 1.7565009e+03 -1.9166803e+03 4.5499216e+03 - 1.7974742e+03 -1.8775940e+03 4.5500372e+03 - 1.8378486e+03 -1.8378486e+03 4.5500758e+03 - 1.8775940e+03 -1.7974742e+03 4.5500372e+03 - 1.9166803e+03 -1.7565009e+03 4.5499216e+03 - 1.9550781e+03 -1.7149593e+03 4.5497298e+03 - 1.9927582e+03 -1.6728797e+03 4.5494631e+03 - 2.0296923e+03 -1.6302927e+03 4.5491232e+03 - 2.0658527e+03 -1.5872283e+03 4.5487125e+03 - 2.1012125e+03 -1.5437165e+03 4.5482337e+03 - 2.1357458e+03 -1.4997867e+03 4.5476899e+03 - 2.1694274e+03 -1.4554680e+03 4.5470848e+03 - 2.2022333e+03 -1.4107884e+03 4.5464223e+03 - 2.2341408e+03 -1.3657757e+03 4.5457068e+03 - 2.2651279e+03 -1.3204563e+03 4.5449430e+03 - 2.2951740e+03 -1.2748562e+03 4.5441358e+03 - 2.3242596e+03 -1.2289999e+03 4.5432905e+03 - 2.3523664e+03 -1.1829112e+03 4.5424124e+03 - 2.3794773e+03 -1.1366127e+03 4.5415072e+03 - 2.4055764e+03 -1.0901256e+03 4.5405806e+03 - 2.4306488e+03 -1.0434700e+03 4.5396384e+03 - 2.4546810e+03 -9.9666492e+02 4.5386867e+03 - 2.4776604e+03 -9.4972790e+02 4.5377312e+03 - 2.4995755e+03 -9.0267529e+02 4.5367778e+03 - 2.5204159e+03 -8.5552217e+02 4.5358326e+03 - 2.5401721e+03 -8.0828236e+02 4.5349011e+03 - 2.5588356e+03 -7.6096841e+02 4.5339890e+03 - 2.5763987e+03 -7.1359171e+02 4.5331018e+03 - 2.5928546e+03 -6.6616243e+02 4.5322449e+03 - 2.6081973e+03 -6.1868961e+02 4.5314232e+03 - 2.6224213e+03 -5.7118123e+02 4.5306417e+03 - 2.6355219e+03 -5.2364421e+02 4.5299049e+03 - 2.6474952e+03 -4.7608452e+02 4.5292172e+03 - 2.6583374e+03 -4.2850721e+02 4.5285824e+03 - 2.6680456e+03 -3.8091650e+02 4.5280043e+03 - 2.6766171e+03 -3.3331585e+02 4.5274862e+03 - 2.6840499e+03 -2.8570804e+02 4.5270311e+03 - 2.6903420e+03 -2.3809521e+02 4.5266416e+03 - 2.6954919e+03 -1.9047903e+02 4.5263198e+03 - 2.6994986e+03 -1.4286070e+02 4.5260676e+03 - 2.7023612e+03 -9.5241051e+01 4.5258864e+03 - 2.7040789e+03 -4.7620684e+01 4.5257773e+03 - 2.7046516e+03 4.8134273e-09 4.5257409e+03 - 2.8005405e+03 0.0000000e+00 4.4914394e+03 - 2.7999469e+03 4.8811730e+01 4.4914816e+03 - 2.7981663e+03 9.7625201e+01 4.4916079e+03 - 2.7951989e+03 1.4644205e+02 4.4918176e+03 - 2.7910450e+03 1.9526372e+02 4.4921096e+03 - 2.7857055e+03 2.4409134e+02 4.4924821e+03 - 2.7791810e+03 2.9292565e+02 4.4929332e+03 - 2.7714727e+03 3.4176688e+02 4.4934603e+03 - 2.7625819e+03 3.9061468e+02 4.4940605e+03 - 2.7525104e+03 4.3946799e+02 4.4947303e+03 - 2.7412602e+03 4.8832499e+02 4.4954659e+03 - 2.7288338e+03 5.3718298e+02 4.4962632e+03 - 2.7152343e+03 5.8603831e+02 4.4971175e+03 - 2.7004650e+03 6.3488626e+02 4.4980239e+03 - 2.6845302e+03 6.8372105e+02 4.4989773e+03 - 2.6674346e+03 7.3253567e+02 4.4999718e+03 - 2.6491839e+03 7.8132186e+02 4.5010018e+03 - 2.6297843e+03 8.3007008e+02 4.5020611e+03 - 2.6092431e+03 8.7876940e+02 4.5031434e+03 - 2.5875684e+03 9.2740746e+02 4.5042421e+03 - 2.5647696e+03 9.7597050e+02 4.5053505e+03 - 2.5408568e+03 1.0244433e+03 4.5064619e+03 - 2.5158416e+03 1.0728090e+03 4.5075693e+03 - 2.4897365e+03 1.1210495e+03 4.5086660e+03 - 2.4625555e+03 1.1691449e+03 4.5097450e+03 - 2.4343138e+03 1.2170742e+03 4.5107994e+03 - 2.4050278e+03 1.2648147e+03 4.5118227e+03 - 2.3747156e+03 1.3123423e+03 4.5128081e+03 - 2.3433963e+03 1.3596316e+03 4.5137494e+03 - 2.3110905e+03 1.4066560e+03 4.5146403e+03 - 2.2778203e+03 1.4533876e+03 4.5154751e+03 - 2.2436089e+03 1.4997973e+03 4.5162483e+03 - 2.2084811e+03 1.5458553e+03 4.5169547e+03 - 2.1724628e+03 1.5915305e+03 4.5175897e+03 - 2.1355812e+03 1.6367913e+03 4.5181489e+03 - 2.0978644e+03 1.6816053e+03 4.5186287e+03 - 2.0593419e+03 1.7259397e+03 4.5190257e+03 - 2.0200439e+03 1.7697611e+03 4.5193374e+03 - 1.9800017e+03 1.8130361e+03 4.5195615e+03 - 1.9392470e+03 1.8557311e+03 4.5196966e+03 - 1.8978125e+03 1.8978125e+03 4.5197417e+03 - 1.8557311e+03 1.9392470e+03 4.5196966e+03 - 1.8130361e+03 1.9800017e+03 4.5195615e+03 - 1.7697611e+03 2.0200439e+03 4.5193374e+03 - 1.7259397e+03 2.0593419e+03 4.5190257e+03 - 1.6816053e+03 2.0978644e+03 4.5186287e+03 - 1.6367913e+03 2.1355812e+03 4.5181489e+03 - 1.5915305e+03 2.1724628e+03 4.5175897e+03 - 1.5458553e+03 2.2084811e+03 4.5169547e+03 - 1.4997973e+03 2.2436089e+03 4.5162483e+03 - 1.4533876e+03 2.2778203e+03 4.5154751e+03 - 1.4066560e+03 2.3110905e+03 4.5146403e+03 - 1.3596316e+03 2.3433963e+03 4.5137494e+03 - 1.3123423e+03 2.3747156e+03 4.5128081e+03 - 1.2648147e+03 2.4050278e+03 4.5118227e+03 - 1.2170742e+03 2.4343138e+03 4.5107994e+03 - 1.1691449e+03 2.4625555e+03 4.5097450e+03 - 1.1210495e+03 2.4897365e+03 4.5086660e+03 - 1.0728090e+03 2.5158416e+03 4.5075693e+03 - 1.0244433e+03 2.5408568e+03 4.5064619e+03 - 9.7597050e+02 2.5647696e+03 4.5053505e+03 - 9.2740746e+02 2.5875684e+03 4.5042421e+03 - 8.7876940e+02 2.6092431e+03 4.5031434e+03 - 8.3007008e+02 2.6297843e+03 4.5020611e+03 - 7.8132186e+02 2.6491839e+03 4.5010018e+03 - 7.3253567e+02 2.6674346e+03 4.4999718e+03 - 6.8372105e+02 2.6845302e+03 4.4989773e+03 - 6.3488626e+02 2.7004650e+03 4.4980239e+03 - 5.8603831e+02 2.7152343e+03 4.4971175e+03 - 5.3718298e+02 2.7288338e+03 4.4962632e+03 - 4.8832499e+02 2.7412602e+03 4.4954659e+03 - 4.3946799e+02 2.7525104e+03 4.4947303e+03 - 3.9061468e+02 2.7625819e+03 4.4940605e+03 - 3.4176688e+02 2.7714727e+03 4.4934603e+03 - 2.9292565e+02 2.7791810e+03 4.4929332e+03 - 2.4409134e+02 2.7857055e+03 4.4924821e+03 - 1.9526372e+02 2.7910450e+03 4.4921096e+03 - 1.4644205e+02 2.7951989e+03 4.4918176e+03 - 9.7625201e+01 2.7981663e+03 4.4916079e+03 - 4.8811730e+01 2.7999469e+03 4.4914816e+03 - 0.0000000e+00 2.8005405e+03 4.4914394e+03 - -4.8811730e+01 2.7999469e+03 4.4914816e+03 - -9.7625201e+01 2.7981663e+03 4.4916079e+03 - -1.4644205e+02 2.7951989e+03 4.4918176e+03 - -1.9526372e+02 2.7910450e+03 4.4921096e+03 - -2.4409134e+02 2.7857055e+03 4.4924821e+03 - -2.9292565e+02 2.7791810e+03 4.4929332e+03 - -3.4176688e+02 2.7714727e+03 4.4934603e+03 - -3.9061468e+02 2.7625819e+03 4.4940605e+03 - -4.3946799e+02 2.7525104e+03 4.4947303e+03 - -4.8832499e+02 2.7412602e+03 4.4954659e+03 - -5.3718298e+02 2.7288338e+03 4.4962632e+03 - -5.8603831e+02 2.7152343e+03 4.4971175e+03 - -6.3488626e+02 2.7004650e+03 4.4980239e+03 - -6.8372105e+02 2.6845302e+03 4.4989773e+03 - -7.3253567e+02 2.6674346e+03 4.4999718e+03 - -7.8132186e+02 2.6491839e+03 4.5010018e+03 - -8.3007008e+02 2.6297843e+03 4.5020611e+03 - -8.7876940e+02 2.6092431e+03 4.5031434e+03 - -9.2740746e+02 2.5875684e+03 4.5042421e+03 - -9.7597050e+02 2.5647696e+03 4.5053505e+03 - -1.0244433e+03 2.5408568e+03 4.5064619e+03 - -1.0728090e+03 2.5158416e+03 4.5075693e+03 - -1.1210495e+03 2.4897365e+03 4.5086660e+03 - -1.1691449e+03 2.4625555e+03 4.5097450e+03 - -1.2170742e+03 2.4343138e+03 4.5107994e+03 - -1.2648147e+03 2.4050278e+03 4.5118227e+03 - -1.3123423e+03 2.3747156e+03 4.5128081e+03 - -1.3596316e+03 2.3433963e+03 4.5137494e+03 - -1.4066560e+03 2.3110905e+03 4.5146403e+03 - -1.4533876e+03 2.2778203e+03 4.5154751e+03 - -1.4997973e+03 2.2436089e+03 4.5162483e+03 - -1.5458553e+03 2.2084811e+03 4.5169547e+03 - -1.5915305e+03 2.1724628e+03 4.5175897e+03 - -1.6367913e+03 2.1355812e+03 4.5181489e+03 - -1.6816053e+03 2.0978644e+03 4.5186287e+03 - -1.7259397e+03 2.0593419e+03 4.5190257e+03 - -1.7697611e+03 2.0200439e+03 4.5193374e+03 - -1.8130361e+03 1.9800017e+03 4.5195615e+03 - -1.8557311e+03 1.9392470e+03 4.5196966e+03 - -1.8978125e+03 1.8978125e+03 4.5197417e+03 - -1.9392470e+03 1.8557311e+03 4.5196966e+03 - -1.9800017e+03 1.8130361e+03 4.5195615e+03 - -2.0200439e+03 1.7697611e+03 4.5193374e+03 - -2.0593419e+03 1.7259397e+03 4.5190257e+03 - -2.0978644e+03 1.6816053e+03 4.5186287e+03 - -2.1355812e+03 1.6367913e+03 4.5181489e+03 - -2.1724628e+03 1.5915305e+03 4.5175897e+03 - -2.2084811e+03 1.5458553e+03 4.5169547e+03 - -2.2436089e+03 1.4997973e+03 4.5162483e+03 - -2.2778203e+03 1.4533876e+03 4.5154751e+03 - -2.3110905e+03 1.4066560e+03 4.5146403e+03 - -2.3433963e+03 1.3596316e+03 4.5137494e+03 - -2.3747156e+03 1.3123423e+03 4.5128081e+03 - -2.4050278e+03 1.2648147e+03 4.5118227e+03 - -2.4343138e+03 1.2170742e+03 4.5107994e+03 - -2.4625555e+03 1.1691449e+03 4.5097450e+03 - -2.4897365e+03 1.1210495e+03 4.5086660e+03 - -2.5158416e+03 1.0728090e+03 4.5075693e+03 - -2.5408568e+03 1.0244433e+03 4.5064619e+03 - -2.5647696e+03 9.7597050e+02 4.5053505e+03 - -2.5875684e+03 9.2740746e+02 4.5042421e+03 - -2.6092431e+03 8.7876940e+02 4.5031434e+03 - -2.6297843e+03 8.3007008e+02 4.5020611e+03 - -2.6491839e+03 7.8132186e+02 4.5010018e+03 - -2.6674346e+03 7.3253567e+02 4.4999718e+03 - -2.6845302e+03 6.8372105e+02 4.4989773e+03 - -2.7004650e+03 6.3488626e+02 4.4980239e+03 - -2.7152343e+03 5.8603831e+02 4.4971175e+03 - -2.7288338e+03 5.3718298e+02 4.4962632e+03 - -2.7412602e+03 4.8832499e+02 4.4954659e+03 - -2.7525104e+03 4.3946799e+02 4.4947303e+03 - -2.7625819e+03 3.9061468e+02 4.4940605e+03 - -2.7714727e+03 3.4176688e+02 4.4934603e+03 - -2.7791810e+03 2.9292565e+02 4.4929332e+03 - -2.7857055e+03 2.4409134e+02 4.4924821e+03 - -2.7910450e+03 1.9526372e+02 4.4921096e+03 - -2.7951989e+03 1.4644205e+02 4.4918176e+03 - -2.7981663e+03 9.7625201e+01 4.4916079e+03 - -2.7999469e+03 4.8811730e+01 4.4914816e+03 - -2.8005405e+03 0.0000000e+00 4.4914394e+03 - -2.7999469e+03 -4.8811730e+01 4.4914816e+03 - -2.7981663e+03 -9.7625201e+01 4.4916079e+03 - -2.7951989e+03 -1.4644205e+02 4.4918176e+03 - -2.7910450e+03 -1.9526372e+02 4.4921096e+03 - -2.7857055e+03 -2.4409134e+02 4.4924821e+03 - -2.7791810e+03 -2.9292565e+02 4.4929332e+03 - -2.7714727e+03 -3.4176688e+02 4.4934603e+03 - -2.7625819e+03 -3.9061468e+02 4.4940605e+03 - -2.7525104e+03 -4.3946799e+02 4.4947303e+03 - -2.7412602e+03 -4.8832499e+02 4.4954659e+03 - -2.7288338e+03 -5.3718298e+02 4.4962632e+03 - -2.7152343e+03 -5.8603831e+02 4.4971175e+03 - -2.7004650e+03 -6.3488626e+02 4.4980239e+03 - -2.6845302e+03 -6.8372105e+02 4.4989773e+03 - -2.6674346e+03 -7.3253567e+02 4.4999718e+03 - -2.6491839e+03 -7.8132186e+02 4.5010018e+03 - -2.6297843e+03 -8.3007008e+02 4.5020611e+03 - -2.6092431e+03 -8.7876940e+02 4.5031434e+03 - -2.5875684e+03 -9.2740746e+02 4.5042421e+03 - -2.5647696e+03 -9.7597050e+02 4.5053505e+03 - -2.5408568e+03 -1.0244433e+03 4.5064619e+03 - -2.5158416e+03 -1.0728090e+03 4.5075693e+03 - -2.4897365e+03 -1.1210495e+03 4.5086660e+03 - -2.4625555e+03 -1.1691449e+03 4.5097450e+03 - -2.4343138e+03 -1.2170742e+03 4.5107994e+03 - -2.4050278e+03 -1.2648147e+03 4.5118227e+03 - -2.3747156e+03 -1.3123423e+03 4.5128081e+03 - -2.3433963e+03 -1.3596316e+03 4.5137494e+03 - -2.3110905e+03 -1.4066560e+03 4.5146403e+03 - -2.2778203e+03 -1.4533876e+03 4.5154751e+03 - -2.2436089e+03 -1.4997973e+03 4.5162483e+03 - -2.2084811e+03 -1.5458553e+03 4.5169547e+03 - -2.1724628e+03 -1.5915305e+03 4.5175897e+03 - -2.1355812e+03 -1.6367913e+03 4.5181489e+03 - -2.0978644e+03 -1.6816053e+03 4.5186287e+03 - -2.0593419e+03 -1.7259397e+03 4.5190257e+03 - -2.0200439e+03 -1.7697611e+03 4.5193374e+03 - -1.9800017e+03 -1.8130361e+03 4.5195615e+03 - -1.9392470e+03 -1.8557311e+03 4.5196966e+03 - -1.8978125e+03 -1.8978125e+03 4.5197417e+03 - -1.8557311e+03 -1.9392470e+03 4.5196966e+03 - -1.8130361e+03 -1.9800017e+03 4.5195615e+03 - -1.7697611e+03 -2.0200439e+03 4.5193374e+03 - -1.7259397e+03 -2.0593419e+03 4.5190257e+03 - -1.6816053e+03 -2.0978644e+03 4.5186287e+03 - -1.6367913e+03 -2.1355812e+03 4.5181489e+03 - -1.5915305e+03 -2.1724628e+03 4.5175897e+03 - -1.5458553e+03 -2.2084811e+03 4.5169547e+03 - -1.4997973e+03 -2.2436089e+03 4.5162483e+03 - -1.4533876e+03 -2.2778203e+03 4.5154751e+03 - -1.4066560e+03 -2.3110905e+03 4.5146403e+03 - -1.3596316e+03 -2.3433963e+03 4.5137494e+03 - -1.3123423e+03 -2.3747156e+03 4.5128081e+03 - -1.2648147e+03 -2.4050278e+03 4.5118227e+03 - -1.2170742e+03 -2.4343138e+03 4.5107994e+03 - -1.1691449e+03 -2.4625555e+03 4.5097450e+03 - -1.1210495e+03 -2.4897365e+03 4.5086660e+03 - -1.0728090e+03 -2.5158416e+03 4.5075693e+03 - -1.0244433e+03 -2.5408568e+03 4.5064619e+03 - -9.7597050e+02 -2.5647696e+03 4.5053505e+03 - -9.2740746e+02 -2.5875684e+03 4.5042421e+03 - -8.7876940e+02 -2.6092431e+03 4.5031434e+03 - -8.3007008e+02 -2.6297843e+03 4.5020611e+03 - -7.8132186e+02 -2.6491839e+03 4.5010018e+03 - -7.3253567e+02 -2.6674346e+03 4.4999718e+03 - -6.8372105e+02 -2.6845302e+03 4.4989773e+03 - -6.3488626e+02 -2.7004650e+03 4.4980239e+03 - -5.8603831e+02 -2.7152343e+03 4.4971175e+03 - -5.3718298e+02 -2.7288338e+03 4.4962632e+03 - -4.8832499e+02 -2.7412602e+03 4.4954659e+03 - -4.3946799e+02 -2.7525104e+03 4.4947303e+03 - -3.9061468e+02 -2.7625819e+03 4.4940605e+03 - -3.4176688e+02 -2.7714727e+03 4.4934603e+03 - -2.9292565e+02 -2.7791810e+03 4.4929332e+03 - -2.4409134e+02 -2.7857055e+03 4.4924821e+03 - -1.9526372e+02 -2.7910450e+03 4.4921096e+03 - -1.4644205e+02 -2.7951989e+03 4.4918176e+03 - -9.7625201e+01 -2.7981663e+03 4.4916079e+03 - -4.8811730e+01 -2.7999469e+03 4.4914816e+03 - 0.0000000e+00 -2.8005405e+03 4.4914394e+03 - 4.8811730e+01 -2.7999469e+03 4.4914816e+03 - 9.7625201e+01 -2.7981663e+03 4.4916079e+03 - 1.4644205e+02 -2.7951989e+03 4.4918176e+03 - 1.9526372e+02 -2.7910450e+03 4.4921096e+03 - 2.4409134e+02 -2.7857055e+03 4.4924821e+03 - 2.9292565e+02 -2.7791810e+03 4.4929332e+03 - 3.4176688e+02 -2.7714727e+03 4.4934603e+03 - 3.9061468e+02 -2.7625819e+03 4.4940605e+03 - 4.3946799e+02 -2.7525104e+03 4.4947303e+03 - 4.8832499e+02 -2.7412602e+03 4.4954659e+03 - 5.3718298e+02 -2.7288338e+03 4.4962632e+03 - 5.8603831e+02 -2.7152343e+03 4.4971175e+03 - 6.3488626e+02 -2.7004650e+03 4.4980239e+03 - 6.8372105e+02 -2.6845302e+03 4.4989773e+03 - 7.3253567e+02 -2.6674346e+03 4.4999718e+03 - 7.8132186e+02 -2.6491839e+03 4.5010018e+03 - 8.3007008e+02 -2.6297843e+03 4.5020611e+03 - 8.7876940e+02 -2.6092431e+03 4.5031434e+03 - 9.2740746e+02 -2.5875684e+03 4.5042421e+03 - 9.7597050e+02 -2.5647696e+03 4.5053505e+03 - 1.0244433e+03 -2.5408568e+03 4.5064619e+03 - 1.0728090e+03 -2.5158416e+03 4.5075693e+03 - 1.1210495e+03 -2.4897365e+03 4.5086660e+03 - 1.1691449e+03 -2.4625555e+03 4.5097450e+03 - 1.2170742e+03 -2.4343138e+03 4.5107994e+03 - 1.2648147e+03 -2.4050278e+03 4.5118227e+03 - 1.3123423e+03 -2.3747156e+03 4.5128081e+03 - 1.3596316e+03 -2.3433963e+03 4.5137494e+03 - 1.4066560e+03 -2.3110905e+03 4.5146403e+03 - 1.4533876e+03 -2.2778203e+03 4.5154751e+03 - 1.4997973e+03 -2.2436089e+03 4.5162483e+03 - 1.5458553e+03 -2.2084811e+03 4.5169547e+03 - 1.5915305e+03 -2.1724628e+03 4.5175897e+03 - 1.6367913e+03 -2.1355812e+03 4.5181489e+03 - 1.6816053e+03 -2.0978644e+03 4.5186287e+03 - 1.7259397e+03 -2.0593419e+03 4.5190257e+03 - 1.7697611e+03 -2.0200439e+03 4.5193374e+03 - 1.8130361e+03 -1.9800017e+03 4.5195615e+03 - 1.8557311e+03 -1.9392470e+03 4.5196966e+03 - 1.8978125e+03 -1.8978125e+03 4.5197417e+03 - 1.9392470e+03 -1.8557311e+03 4.5196966e+03 - 1.9800017e+03 -1.8130361e+03 4.5195615e+03 - 2.0200439e+03 -1.7697611e+03 4.5193374e+03 - 2.0593419e+03 -1.7259397e+03 4.5190257e+03 - 2.0978644e+03 -1.6816053e+03 4.5186287e+03 - 2.1355812e+03 -1.6367913e+03 4.5181489e+03 - 2.1724628e+03 -1.5915305e+03 4.5175897e+03 - 2.2084811e+03 -1.5458553e+03 4.5169547e+03 - 2.2436089e+03 -1.4997973e+03 4.5162483e+03 - 2.2778203e+03 -1.4533876e+03 4.5154751e+03 - 2.3110905e+03 -1.4066560e+03 4.5146403e+03 - 2.3433963e+03 -1.3596316e+03 4.5137494e+03 - 2.3747156e+03 -1.3123423e+03 4.5128081e+03 - 2.4050278e+03 -1.2648147e+03 4.5118227e+03 - 2.4343138e+03 -1.2170742e+03 4.5107994e+03 - 2.4625555e+03 -1.1691449e+03 4.5097450e+03 - 2.4897365e+03 -1.1210495e+03 4.5086660e+03 - 2.5158416e+03 -1.0728090e+03 4.5075693e+03 - 2.5408568e+03 -1.0244433e+03 4.5064619e+03 - 2.5647696e+03 -9.7597050e+02 4.5053505e+03 - 2.5875684e+03 -9.2740746e+02 4.5042421e+03 - 2.6092431e+03 -8.7876940e+02 4.5031434e+03 - 2.6297843e+03 -8.3007008e+02 4.5020611e+03 - 2.6491839e+03 -7.8132186e+02 4.5010018e+03 - 2.6674346e+03 -7.3253567e+02 4.4999718e+03 - 2.6845302e+03 -6.8372105e+02 4.4989773e+03 - 2.7004650e+03 -6.3488626e+02 4.4980239e+03 - 2.7152343e+03 -5.8603831e+02 4.4971175e+03 - 2.7288338e+03 -5.3718298e+02 4.4962632e+03 - 2.7412602e+03 -4.8832499e+02 4.4954659e+03 - 2.7525104e+03 -4.3946799e+02 4.4947303e+03 - 2.7625819e+03 -3.9061468e+02 4.4940605e+03 - 2.7714727e+03 -3.4176688e+02 4.4934603e+03 - 2.7791810e+03 -2.9292565e+02 4.4929332e+03 - 2.7857055e+03 -2.4409134e+02 4.4924821e+03 - 2.7910450e+03 -1.9526372e+02 4.4921096e+03 - 2.7951989e+03 -1.4644205e+02 4.4918176e+03 - 2.7981663e+03 -9.7625201e+01 4.4916079e+03 - 2.7999469e+03 -4.8811730e+01 4.4914816e+03 - 2.8005405e+03 0.0000000e+00 4.4914394e+03 - 2.8915467e+03 0.0000000e+00 4.4568542e+03 - 2.8909336e+03 4.9883181e+01 4.4569025e+03 - 2.8890945e+03 9.9770301e+01 4.4570469e+03 - 2.8860295e+03 1.4966519e+02 4.4572869e+03 - 2.8817387e+03 1.9957144e+02 4.4576209e+03 - 2.8762226e+03 2.4949234e+02 4.4580472e+03 - 2.8694814e+03 2.9943068e+02 4.4585635e+03 - 2.8615160e+03 3.4938874e+02 4.4591669e+03 - 2.8523271e+03 3.9936810e+02 4.4598540e+03 - 2.8419159e+03 4.4936960e+02 4.4606211e+03 - 2.8302838e+03 4.9939317e+02 4.4614637e+03 - 2.8174326e+03 5.4943778e+02 4.4623772e+03 - 2.8033646e+03 5.9950132e+02 4.4633564e+03 - 2.7880825e+03 6.4958052e+02 4.4643956e+03 - 2.7715899e+03 6.9967081e+02 4.4654889e+03 - 2.7538908e+03 7.4976632e+02 4.4666300e+03 - 2.7349901e+03 7.9985971e+02 4.4678121e+03 - 2.7148934e+03 8.4994219e+02 4.4690283e+03 - 2.6936074e+03 9.0000338e+02 4.4702713e+03 - 2.6711398e+03 9.5003128e+02 4.4715337e+03 - 2.6474995e+03 1.0000122e+03 4.4728078e+03 - 2.6226963e+03 1.0499309e+03 4.4740858e+03 - 2.5967415e+03 1.0997702e+03 4.4753598e+03 - 2.5696478e+03 1.1495114e+03 4.4766219e+03 - 2.5414292e+03 1.1991338e+03 4.4778642e+03 - 2.5121011e+03 1.2486153e+03 4.4790787e+03 - 2.4816806e+03 1.2979319e+03 4.4802576e+03 - 2.4501862e+03 1.3470581e+03 4.4813935e+03 - 2.4176380e+03 1.3959666e+03 4.4824788e+03 - 2.3840577e+03 1.4446289e+03 4.4835064e+03 - 2.3494687e+03 1.4930147e+03 4.4844696e+03 - 2.3138958e+03 1.5410927e+03 4.4853620e+03 - 2.2773654e+03 1.5888304e+03 4.4861775e+03 - 2.2399055e+03 1.6361938e+03 4.4869107e+03 - 2.2015452e+03 1.6831486e+03 4.4875566e+03 - 2.1623154e+03 1.7296591e+03 4.4881108e+03 - 2.1222479e+03 1.7756895e+03 4.4885696e+03 - 2.0813756e+03 1.8212032e+03 4.4889297e+03 - 2.0397328e+03 1.8661633e+03 4.4891887e+03 - 1.9973542e+03 1.9105331e+03 4.4893448e+03 - 1.9542756e+03 1.9542756e+03 4.4893970e+03 - 1.9105331e+03 1.9973542e+03 4.4893448e+03 - 1.8661633e+03 2.0397328e+03 4.4891887e+03 - 1.8212032e+03 2.0813756e+03 4.4889297e+03 - 1.7756895e+03 2.1222479e+03 4.4885696e+03 - 1.7296591e+03 2.1623154e+03 4.4881108e+03 - 1.6831486e+03 2.2015452e+03 4.4875566e+03 - 1.6361938e+03 2.2399055e+03 4.4869107e+03 - 1.5888304e+03 2.2773654e+03 4.4861775e+03 - 1.5410927e+03 2.3138958e+03 4.4853620e+03 - 1.4930147e+03 2.3494687e+03 4.4844696e+03 - 1.4446289e+03 2.3840577e+03 4.4835064e+03 - 1.3959666e+03 2.4176380e+03 4.4824788e+03 - 1.3470581e+03 2.4501862e+03 4.4813935e+03 - 1.2979319e+03 2.4816806e+03 4.4802576e+03 - 1.2486153e+03 2.5121011e+03 4.4790787e+03 - 1.1991338e+03 2.5414292e+03 4.4778642e+03 - 1.1495114e+03 2.5696478e+03 4.4766219e+03 - 1.0997702e+03 2.5967415e+03 4.4753598e+03 - 1.0499309e+03 2.6226963e+03 4.4740858e+03 - 1.0000122e+03 2.6474995e+03 4.4728078e+03 - 9.5003128e+02 2.6711398e+03 4.4715337e+03 - 9.0000338e+02 2.6936074e+03 4.4702713e+03 - 8.4994219e+02 2.7148934e+03 4.4690283e+03 - 7.9985971e+02 2.7349901e+03 4.4678121e+03 - 7.4976632e+02 2.7538908e+03 4.4666300e+03 - 6.9967081e+02 2.7715899e+03 4.4654889e+03 - 6.4958052e+02 2.7880825e+03 4.4643956e+03 - 5.9950132e+02 2.8033646e+03 4.4633564e+03 - 5.4943778e+02 2.8174326e+03 4.4623772e+03 - 4.9939317e+02 2.8302838e+03 4.4614637e+03 - 4.4936960e+02 2.8419159e+03 4.4606211e+03 - 3.9936810e+02 2.8523271e+03 4.4598540e+03 - 3.4938874e+02 2.8615160e+03 4.4591669e+03 - 2.9943068e+02 2.8694814e+03 4.4585635e+03 - 2.4949234e+02 2.8762226e+03 4.4580472e+03 - 1.9957144e+02 2.8817387e+03 4.4576209e+03 - 1.4966519e+02 2.8860295e+03 4.4572869e+03 - 9.9770301e+01 2.8890945e+03 4.4570469e+03 - 4.9883181e+01 2.8909336e+03 4.4569025e+03 - 0.0000000e+00 2.8915467e+03 4.4568542e+03 - -4.9883181e+01 2.8909336e+03 4.4569025e+03 - -9.9770301e+01 2.8890945e+03 4.4570469e+03 - -1.4966519e+02 2.8860295e+03 4.4572869e+03 - -1.9957144e+02 2.8817387e+03 4.4576209e+03 - -2.4949234e+02 2.8762226e+03 4.4580472e+03 - -2.9943068e+02 2.8694814e+03 4.4585635e+03 - -3.4938874e+02 2.8615160e+03 4.4591669e+03 - -3.9936810e+02 2.8523271e+03 4.4598540e+03 - -4.4936960e+02 2.8419159e+03 4.4606211e+03 - -4.9939317e+02 2.8302838e+03 4.4614637e+03 - -5.4943778e+02 2.8174326e+03 4.4623772e+03 - -5.9950132e+02 2.8033646e+03 4.4633564e+03 - -6.4958052e+02 2.7880825e+03 4.4643956e+03 - -6.9967081e+02 2.7715899e+03 4.4654889e+03 - -7.4976632e+02 2.7538908e+03 4.4666300e+03 - -7.9985971e+02 2.7349901e+03 4.4678121e+03 - -8.4994219e+02 2.7148934e+03 4.4690283e+03 - -9.0000338e+02 2.6936074e+03 4.4702713e+03 - -9.5003128e+02 2.6711398e+03 4.4715337e+03 - -1.0000122e+03 2.6474995e+03 4.4728078e+03 - -1.0499309e+03 2.6226963e+03 4.4740858e+03 - -1.0997702e+03 2.5967415e+03 4.4753598e+03 - -1.1495114e+03 2.5696478e+03 4.4766219e+03 - -1.1991338e+03 2.5414292e+03 4.4778642e+03 - -1.2486153e+03 2.5121011e+03 4.4790787e+03 - -1.2979319e+03 2.4816806e+03 4.4802576e+03 - -1.3470581e+03 2.4501862e+03 4.4813935e+03 - -1.3959666e+03 2.4176380e+03 4.4824788e+03 - -1.4446289e+03 2.3840577e+03 4.4835064e+03 - -1.4930147e+03 2.3494687e+03 4.4844696e+03 - -1.5410927e+03 2.3138958e+03 4.4853620e+03 - -1.5888304e+03 2.2773654e+03 4.4861775e+03 - -1.6361938e+03 2.2399055e+03 4.4869107e+03 - -1.6831486e+03 2.2015452e+03 4.4875566e+03 - -1.7296591e+03 2.1623154e+03 4.4881108e+03 - -1.7756895e+03 2.1222479e+03 4.4885696e+03 - -1.8212032e+03 2.0813756e+03 4.4889297e+03 - -1.8661633e+03 2.0397328e+03 4.4891887e+03 - -1.9105331e+03 1.9973542e+03 4.4893448e+03 - -1.9542756e+03 1.9542756e+03 4.4893970e+03 - -1.9973542e+03 1.9105331e+03 4.4893448e+03 - -2.0397328e+03 1.8661633e+03 4.4891887e+03 - -2.0813756e+03 1.8212032e+03 4.4889297e+03 - -2.1222479e+03 1.7756895e+03 4.4885696e+03 - -2.1623154e+03 1.7296591e+03 4.4881108e+03 - -2.2015452e+03 1.6831486e+03 4.4875566e+03 - -2.2399055e+03 1.6361938e+03 4.4869107e+03 - -2.2773654e+03 1.5888304e+03 4.4861775e+03 - -2.3138958e+03 1.5410927e+03 4.4853620e+03 - -2.3494687e+03 1.4930147e+03 4.4844696e+03 - -2.3840577e+03 1.4446289e+03 4.4835064e+03 - -2.4176380e+03 1.3959666e+03 4.4824788e+03 - -2.4501862e+03 1.3470581e+03 4.4813935e+03 - -2.4816806e+03 1.2979319e+03 4.4802576e+03 - -2.5121011e+03 1.2486153e+03 4.4790787e+03 - -2.5414292e+03 1.1991338e+03 4.4778642e+03 - -2.5696478e+03 1.1495114e+03 4.4766219e+03 - -2.5967415e+03 1.0997702e+03 4.4753598e+03 - -2.6226963e+03 1.0499309e+03 4.4740858e+03 - -2.6474995e+03 1.0000122e+03 4.4728078e+03 - -2.6711398e+03 9.5003128e+02 4.4715337e+03 - -2.6936074e+03 9.0000338e+02 4.4702713e+03 - -2.7148934e+03 8.4994219e+02 4.4690283e+03 - -2.7349901e+03 7.9985971e+02 4.4678121e+03 - -2.7538908e+03 7.4976632e+02 4.4666300e+03 - -2.7715899e+03 6.9967081e+02 4.4654889e+03 - -2.7880825e+03 6.4958052e+02 4.4643956e+03 - -2.8033646e+03 5.9950132e+02 4.4633564e+03 - -2.8174326e+03 5.4943778e+02 4.4623772e+03 - -2.8302838e+03 4.9939317e+02 4.4614637e+03 - -2.8419159e+03 4.4936960e+02 4.4606211e+03 - -2.8523271e+03 3.9936810e+02 4.4598540e+03 - -2.8615160e+03 3.4938874e+02 4.4591669e+03 - -2.8694814e+03 2.9943068e+02 4.4585635e+03 - -2.8762226e+03 2.4949234e+02 4.4580472e+03 - -2.8817387e+03 1.9957144e+02 4.4576209e+03 - -2.8860295e+03 1.4966519e+02 4.4572869e+03 - -2.8890945e+03 9.9770301e+01 4.4570469e+03 - -2.8909336e+03 4.9883181e+01 4.4569025e+03 - -2.8915467e+03 0.0000000e+00 4.4568542e+03 - -2.8909336e+03 -4.9883181e+01 4.4569025e+03 - -2.8890945e+03 -9.9770301e+01 4.4570469e+03 - -2.8860295e+03 -1.4966519e+02 4.4572869e+03 - -2.8817387e+03 -1.9957144e+02 4.4576209e+03 - -2.8762226e+03 -2.4949234e+02 4.4580472e+03 - -2.8694814e+03 -2.9943068e+02 4.4585635e+03 - -2.8615160e+03 -3.4938874e+02 4.4591669e+03 - -2.8523271e+03 -3.9936810e+02 4.4598540e+03 - -2.8419159e+03 -4.4936960e+02 4.4606211e+03 - -2.8302838e+03 -4.9939317e+02 4.4614637e+03 - -2.8174326e+03 -5.4943778e+02 4.4623772e+03 - -2.8033646e+03 -5.9950132e+02 4.4633564e+03 - -2.7880825e+03 -6.4958052e+02 4.4643956e+03 - -2.7715899e+03 -6.9967081e+02 4.4654889e+03 - -2.7538908e+03 -7.4976632e+02 4.4666300e+03 - -2.7349901e+03 -7.9985971e+02 4.4678121e+03 - -2.7148934e+03 -8.4994219e+02 4.4690283e+03 - -2.6936074e+03 -9.0000338e+02 4.4702713e+03 - -2.6711398e+03 -9.5003128e+02 4.4715337e+03 - -2.6474995e+03 -1.0000122e+03 4.4728078e+03 - -2.6226963e+03 -1.0499309e+03 4.4740858e+03 - -2.5967415e+03 -1.0997702e+03 4.4753598e+03 - -2.5696478e+03 -1.1495114e+03 4.4766219e+03 - -2.5414292e+03 -1.1991338e+03 4.4778642e+03 - -2.5121011e+03 -1.2486153e+03 4.4790787e+03 - -2.4816806e+03 -1.2979319e+03 4.4802576e+03 - -2.4501862e+03 -1.3470581e+03 4.4813935e+03 - -2.4176380e+03 -1.3959666e+03 4.4824788e+03 - -2.3840577e+03 -1.4446289e+03 4.4835064e+03 - -2.3494687e+03 -1.4930147e+03 4.4844696e+03 - -2.3138958e+03 -1.5410927e+03 4.4853620e+03 - -2.2773654e+03 -1.5888304e+03 4.4861775e+03 - -2.2399055e+03 -1.6361938e+03 4.4869107e+03 - -2.2015452e+03 -1.6831486e+03 4.4875566e+03 - -2.1623154e+03 -1.7296591e+03 4.4881108e+03 - -2.1222479e+03 -1.7756895e+03 4.4885696e+03 - -2.0813756e+03 -1.8212032e+03 4.4889297e+03 - -2.0397328e+03 -1.8661633e+03 4.4891887e+03 - -1.9973542e+03 -1.9105331e+03 4.4893448e+03 - -1.9542756e+03 -1.9542756e+03 4.4893970e+03 - -1.9105331e+03 -1.9973542e+03 4.4893448e+03 - -1.8661633e+03 -2.0397328e+03 4.4891887e+03 - -1.8212032e+03 -2.0813756e+03 4.4889297e+03 - -1.7756895e+03 -2.1222479e+03 4.4885696e+03 - -1.7296591e+03 -2.1623154e+03 4.4881108e+03 - -1.6831486e+03 -2.2015452e+03 4.4875566e+03 - -1.6361938e+03 -2.2399055e+03 4.4869107e+03 - -1.5888304e+03 -2.2773654e+03 4.4861775e+03 - -1.5410927e+03 -2.3138958e+03 4.4853620e+03 - -1.4930147e+03 -2.3494687e+03 4.4844696e+03 - -1.4446289e+03 -2.3840577e+03 4.4835064e+03 - -1.3959666e+03 -2.4176380e+03 4.4824788e+03 - -1.3470581e+03 -2.4501862e+03 4.4813935e+03 - -1.2979319e+03 -2.4816806e+03 4.4802576e+03 - -1.2486153e+03 -2.5121011e+03 4.4790787e+03 - -1.1991338e+03 -2.5414292e+03 4.4778642e+03 - -1.1495114e+03 -2.5696478e+03 4.4766219e+03 - -1.0997702e+03 -2.5967415e+03 4.4753598e+03 - -1.0499309e+03 -2.6226963e+03 4.4740858e+03 - -1.0000122e+03 -2.6474995e+03 4.4728078e+03 - -9.5003128e+02 -2.6711398e+03 4.4715337e+03 - -9.0000338e+02 -2.6936074e+03 4.4702713e+03 - -8.4994219e+02 -2.7148934e+03 4.4690283e+03 - -7.9985971e+02 -2.7349901e+03 4.4678121e+03 - -7.4976632e+02 -2.7538908e+03 4.4666300e+03 - -6.9967081e+02 -2.7715899e+03 4.4654889e+03 - -6.4958052e+02 -2.7880825e+03 4.4643956e+03 - -5.9950132e+02 -2.8033646e+03 4.4633564e+03 - -5.4943778e+02 -2.8174326e+03 4.4623772e+03 - -4.9939317e+02 -2.8302838e+03 4.4614637e+03 - -4.4936960e+02 -2.8419159e+03 4.4606211e+03 - -3.9936810e+02 -2.8523271e+03 4.4598540e+03 - -3.4938874e+02 -2.8615160e+03 4.4591669e+03 - -2.9943068e+02 -2.8694814e+03 4.4585635e+03 - -2.4949234e+02 -2.8762226e+03 4.4580472e+03 - -1.9957144e+02 -2.8817387e+03 4.4576209e+03 - -1.4966519e+02 -2.8860295e+03 4.4572869e+03 - -9.9770301e+01 -2.8890945e+03 4.4570469e+03 - -4.9883181e+01 -2.8909336e+03 4.4569025e+03 - 0.0000000e+00 -2.8915467e+03 4.4568542e+03 - 4.9883181e+01 -2.8909336e+03 4.4569025e+03 - 9.9770301e+01 -2.8890945e+03 4.4570469e+03 - 1.4966519e+02 -2.8860295e+03 4.4572869e+03 - 1.9957144e+02 -2.8817387e+03 4.4576209e+03 - 2.4949234e+02 -2.8762226e+03 4.4580472e+03 - 2.9943068e+02 -2.8694814e+03 4.4585635e+03 - 3.4938874e+02 -2.8615160e+03 4.4591669e+03 - 3.9936810e+02 -2.8523271e+03 4.4598540e+03 - 4.4936960e+02 -2.8419159e+03 4.4606211e+03 - 4.9939317e+02 -2.8302838e+03 4.4614637e+03 - 5.4943778e+02 -2.8174326e+03 4.4623772e+03 - 5.9950132e+02 -2.8033646e+03 4.4633564e+03 - 6.4958052e+02 -2.7880825e+03 4.4643956e+03 - 6.9967081e+02 -2.7715899e+03 4.4654889e+03 - 7.4976632e+02 -2.7538908e+03 4.4666300e+03 - 7.9985971e+02 -2.7349901e+03 4.4678121e+03 - 8.4994219e+02 -2.7148934e+03 4.4690283e+03 - 9.0000338e+02 -2.6936074e+03 4.4702713e+03 - 9.5003128e+02 -2.6711398e+03 4.4715337e+03 - 1.0000122e+03 -2.6474995e+03 4.4728078e+03 - 1.0499309e+03 -2.6226963e+03 4.4740858e+03 - 1.0997702e+03 -2.5967415e+03 4.4753598e+03 - 1.1495114e+03 -2.5696478e+03 4.4766219e+03 - 1.1991338e+03 -2.5414292e+03 4.4778642e+03 - 1.2486153e+03 -2.5121011e+03 4.4790787e+03 - 1.2979319e+03 -2.4816806e+03 4.4802576e+03 - 1.3470581e+03 -2.4501862e+03 4.4813935e+03 - 1.3959666e+03 -2.4176380e+03 4.4824788e+03 - 1.4446289e+03 -2.3840577e+03 4.4835064e+03 - 1.4930147e+03 -2.3494687e+03 4.4844696e+03 - 1.5410927e+03 -2.3138958e+03 4.4853620e+03 - 1.5888304e+03 -2.2773654e+03 4.4861775e+03 - 1.6361938e+03 -2.2399055e+03 4.4869107e+03 - 1.6831486e+03 -2.2015452e+03 4.4875566e+03 - 1.7296591e+03 -2.1623154e+03 4.4881108e+03 - 1.7756895e+03 -2.1222479e+03 4.4885696e+03 - 1.8212032e+03 -2.0813756e+03 4.4889297e+03 - 1.8661633e+03 -2.0397328e+03 4.4891887e+03 - 1.9105331e+03 -1.9973542e+03 4.4893448e+03 - 1.9542756e+03 -1.9542756e+03 4.4893970e+03 - 1.9973542e+03 -1.9105331e+03 4.4893448e+03 - 2.0397328e+03 -1.8661633e+03 4.4891887e+03 - 2.0813756e+03 -1.8212032e+03 4.4889297e+03 - 2.1222479e+03 -1.7756895e+03 4.4885696e+03 - 2.1623154e+03 -1.7296591e+03 4.4881108e+03 - 2.2015452e+03 -1.6831486e+03 4.4875566e+03 - 2.2399055e+03 -1.6361938e+03 4.4869107e+03 - 2.2773654e+03 -1.5888304e+03 4.4861775e+03 - 2.3138958e+03 -1.5410927e+03 4.4853620e+03 - 2.3494687e+03 -1.4930147e+03 4.4844696e+03 - 2.3840577e+03 -1.4446289e+03 4.4835064e+03 - 2.4176380e+03 -1.3959666e+03 4.4824788e+03 - 2.4501862e+03 -1.3470581e+03 4.4813935e+03 - 2.4816806e+03 -1.2979319e+03 4.4802576e+03 - 2.5121011e+03 -1.2486153e+03 4.4790787e+03 - 2.5414292e+03 -1.1991338e+03 4.4778642e+03 - 2.5696478e+03 -1.1495114e+03 4.4766219e+03 - 2.5967415e+03 -1.0997702e+03 4.4753598e+03 - 2.6226963e+03 -1.0499309e+03 4.4740858e+03 - 2.6474995e+03 -1.0000122e+03 4.4728078e+03 - 2.6711398e+03 -9.5003128e+02 4.4715337e+03 - 2.6936074e+03 -9.0000338e+02 4.4702713e+03 - 2.7148934e+03 -8.4994219e+02 4.4690283e+03 - 2.7349901e+03 -7.9985971e+02 4.4678121e+03 - 2.7538908e+03 -7.4976632e+02 4.4666300e+03 - 2.7715899e+03 -6.9967081e+02 4.4654889e+03 - 2.7880825e+03 -6.4958052e+02 4.4643956e+03 - 2.8033646e+03 -5.9950132e+02 4.4633564e+03 - 2.8174326e+03 -5.4943778e+02 4.4623772e+03 - 2.8302838e+03 -4.9939317e+02 4.4614637e+03 - 2.8419159e+03 -4.4936960e+02 4.4606211e+03 - 2.8523271e+03 -3.9936810e+02 4.4598540e+03 - 2.8615160e+03 -3.4938874e+02 4.4591669e+03 - 2.8694814e+03 -2.9943068e+02 4.4585635e+03 - 2.8762226e+03 -2.4949234e+02 4.4580472e+03 - 2.8817387e+03 -1.9957144e+02 4.4576209e+03 - 2.8860295e+03 -1.4966519e+02 4.4572869e+03 - 2.8890945e+03 -9.9770301e+01 4.4570469e+03 - 2.8909336e+03 -4.9883181e+01 4.4569025e+03 - 2.8915467e+03 0.0000000e+00 4.4568542e+03 - 2.9780787e+03 0.0000000e+00 4.4220096e+03 - 2.9774476e+03 5.0845830e+01 4.4220642e+03 - 2.9755542e+03 1.0169792e+02 4.4222278e+03 - 2.9723986e+03 1.5256241e+02 4.4224995e+03 - 2.9679806e+03 2.0344518e+02 4.4228778e+03 - 2.9623003e+03 2.5435176e+02 4.4233607e+03 - 2.9553576e+03 3.0528717e+02 4.4239456e+03 - 2.9471527e+03 3.5625583e+02 4.4246292e+03 - 2.9376858e+03 4.0726141e+02 4.4254079e+03 - 2.9269574e+03 4.5830674e+02 4.4262774e+03 - 2.9149682e+03 5.0939367e+02 4.4272328e+03 - 2.9017192e+03 5.6052296e+02 4.4282688e+03 - 2.8872118e+03 6.1169419e+02 4.4293797e+03 - 2.8714480e+03 6.6290562e+02 4.4305592e+03 - 2.8544304e+03 7.1415410e+02 4.4318004e+03 - 2.8361621e+03 7.6543499e+02 4.4330963e+03 - 2.8166472e+03 8.1674201e+02 4.4344394e+03 - 2.7958906e+03 8.6806725e+02 4.4358217e+03 - 2.7738982e+03 9.1940098e+02 4.4372351e+03 - 2.7506771e+03 9.7073168e+02 4.4386711e+03 - 2.7262353e+03 1.0220459e+03 4.4401211e+03 - 2.7005824e+03 1.0733284e+03 4.4415761e+03 - 2.6737294e+03 1.1245617e+03 4.4430272e+03 - 2.6456887e+03 1.1757266e+03 4.4444653e+03 - 2.6164742e+03 1.2268017e+03 4.4458814e+03 - 2.5861015e+03 1.2777639e+03 4.4472665e+03 - 2.5545882e+03 1.3285878e+03 4.4486115e+03 - 2.5219532e+03 1.3792464e+03 4.4499079e+03 - 2.4882175e+03 1.4297106e+03 4.4511471e+03 - 2.4534038e+03 1.4799498e+03 4.4523208e+03 - 2.4175367e+03 1.5299316e+03 4.4534214e+03 - 2.3806426e+03 1.5796220e+03 4.4544413e+03 - 2.3427497e+03 1.6289857e+03 4.4553736e+03 - 2.3038877e+03 1.6779861e+03 4.4562121e+03 - 2.2640884e+03 1.7265854e+03 4.4569509e+03 - 2.2233847e+03 1.7747451e+03 4.4575850e+03 - 2.1818113e+03 1.8224257e+03 4.4581099e+03 - 2.1394041e+03 1.8695873e+03 4.4585220e+03 - 2.0962000e+03 1.9161896e+03 4.4588185e+03 - 2.0522373e+03 1.9621923e+03 4.4589972e+03 - 2.0075548e+03 2.0075548e+03 4.4590569e+03 - 1.9621923e+03 2.0522373e+03 4.4589972e+03 - 1.9161896e+03 2.0962000e+03 4.4588185e+03 - 1.8695873e+03 2.1394041e+03 4.4585220e+03 - 1.8224257e+03 2.1818113e+03 4.4581099e+03 - 1.7747451e+03 2.2233847e+03 4.4575850e+03 - 1.7265854e+03 2.2640884e+03 4.4569509e+03 - 1.6779861e+03 2.3038877e+03 4.4562121e+03 - 1.6289857e+03 2.3427497e+03 4.4553736e+03 - 1.5796220e+03 2.3806426e+03 4.4544413e+03 - 1.5299316e+03 2.4175367e+03 4.4534214e+03 - 1.4799498e+03 2.4534038e+03 4.4523208e+03 - 1.4297106e+03 2.4882175e+03 4.4511471e+03 - 1.3792464e+03 2.5219532e+03 4.4499079e+03 - 1.3285878e+03 2.5545882e+03 4.4486115e+03 - 1.2777639e+03 2.5861015e+03 4.4472665e+03 - 1.2268017e+03 2.6164742e+03 4.4458814e+03 - 1.1757266e+03 2.6456887e+03 4.4444653e+03 - 1.1245617e+03 2.6737294e+03 4.4430272e+03 - 1.0733284e+03 2.7005824e+03 4.4415761e+03 - 1.0220459e+03 2.7262353e+03 4.4401211e+03 - 9.7073168e+02 2.7506771e+03 4.4386711e+03 - 9.1940098e+02 2.7738982e+03 4.4372351e+03 - 8.6806725e+02 2.7958906e+03 4.4358217e+03 - 8.1674201e+02 2.8166472e+03 4.4344394e+03 - 7.6543499e+02 2.8361621e+03 4.4330963e+03 - 7.1415410e+02 2.8544304e+03 4.4318004e+03 - 6.6290562e+02 2.8714480e+03 4.4305592e+03 - 6.1169419e+02 2.8872118e+03 4.4293797e+03 - 5.6052296e+02 2.9017192e+03 4.4282688e+03 - 5.0939367e+02 2.9149682e+03 4.4272328e+03 - 4.5830674e+02 2.9269574e+03 4.4262774e+03 - 4.0726141e+02 2.9376858e+03 4.4254079e+03 - 3.5625583e+02 2.9471527e+03 4.4246292e+03 - 3.0528717e+02 2.9553576e+03 4.4239456e+03 - 2.5435176e+02 2.9623003e+03 4.4233607e+03 - 2.0344518e+02 2.9679806e+03 4.4228778e+03 - 1.5256241e+02 2.9723986e+03 4.4224995e+03 - 1.0169792e+02 2.9755542e+03 4.4222278e+03 - 5.0845830e+01 2.9774476e+03 4.4220642e+03 - 0.0000000e+00 2.9780787e+03 4.4220096e+03 - -5.0845830e+01 2.9774476e+03 4.4220642e+03 - -1.0169792e+02 2.9755542e+03 4.4222278e+03 - -1.5256241e+02 2.9723986e+03 4.4224995e+03 - -2.0344518e+02 2.9679806e+03 4.4228778e+03 - -2.5435176e+02 2.9623003e+03 4.4233607e+03 - -3.0528717e+02 2.9553576e+03 4.4239456e+03 - -3.5625583e+02 2.9471527e+03 4.4246292e+03 - -4.0726141e+02 2.9376858e+03 4.4254079e+03 - -4.5830674e+02 2.9269574e+03 4.4262774e+03 - -5.0939367e+02 2.9149682e+03 4.4272328e+03 - -5.6052296e+02 2.9017192e+03 4.4282688e+03 - -6.1169419e+02 2.8872118e+03 4.4293797e+03 - -6.6290562e+02 2.8714480e+03 4.4305592e+03 - -7.1415410e+02 2.8544304e+03 4.4318004e+03 - -7.6543499e+02 2.8361621e+03 4.4330963e+03 - -8.1674201e+02 2.8166472e+03 4.4344394e+03 - -8.6806725e+02 2.7958906e+03 4.4358217e+03 - -9.1940098e+02 2.7738982e+03 4.4372351e+03 - -9.7073168e+02 2.7506771e+03 4.4386711e+03 - -1.0220459e+03 2.7262353e+03 4.4401211e+03 - -1.0733284e+03 2.7005824e+03 4.4415761e+03 - -1.1245617e+03 2.6737294e+03 4.4430272e+03 - -1.1757266e+03 2.6456887e+03 4.4444653e+03 - -1.2268017e+03 2.6164742e+03 4.4458814e+03 - -1.2777639e+03 2.5861015e+03 4.4472665e+03 - -1.3285878e+03 2.5545882e+03 4.4486115e+03 - -1.3792464e+03 2.5219532e+03 4.4499079e+03 - -1.4297106e+03 2.4882175e+03 4.4511471e+03 - -1.4799498e+03 2.4534038e+03 4.4523208e+03 - -1.5299316e+03 2.4175367e+03 4.4534214e+03 - -1.5796220e+03 2.3806426e+03 4.4544413e+03 - -1.6289857e+03 2.3427497e+03 4.4553736e+03 - -1.6779861e+03 2.3038877e+03 4.4562121e+03 - -1.7265854e+03 2.2640884e+03 4.4569509e+03 - -1.7747451e+03 2.2233847e+03 4.4575850e+03 - -1.8224257e+03 2.1818113e+03 4.4581099e+03 - -1.8695873e+03 2.1394041e+03 4.4585220e+03 - -1.9161896e+03 2.0962000e+03 4.4588185e+03 - -1.9621923e+03 2.0522373e+03 4.4589972e+03 - -2.0075548e+03 2.0075548e+03 4.4590569e+03 - -2.0522373e+03 1.9621923e+03 4.4589972e+03 - -2.0962000e+03 1.9161896e+03 4.4588185e+03 - -2.1394041e+03 1.8695873e+03 4.4585220e+03 - -2.1818113e+03 1.8224257e+03 4.4581099e+03 - -2.2233847e+03 1.7747451e+03 4.4575850e+03 - -2.2640884e+03 1.7265854e+03 4.4569509e+03 - -2.3038877e+03 1.6779861e+03 4.4562121e+03 - -2.3427497e+03 1.6289857e+03 4.4553736e+03 - -2.3806426e+03 1.5796220e+03 4.4544413e+03 - -2.4175367e+03 1.5299316e+03 4.4534214e+03 - -2.4534038e+03 1.4799498e+03 4.4523208e+03 - -2.4882175e+03 1.4297106e+03 4.4511471e+03 - -2.5219532e+03 1.3792464e+03 4.4499079e+03 - -2.5545882e+03 1.3285878e+03 4.4486115e+03 - -2.5861015e+03 1.2777639e+03 4.4472665e+03 - -2.6164742e+03 1.2268017e+03 4.4458814e+03 - -2.6456887e+03 1.1757266e+03 4.4444653e+03 - -2.6737294e+03 1.1245617e+03 4.4430272e+03 - -2.7005824e+03 1.0733284e+03 4.4415761e+03 - -2.7262353e+03 1.0220459e+03 4.4401211e+03 - -2.7506771e+03 9.7073168e+02 4.4386711e+03 - -2.7738982e+03 9.1940098e+02 4.4372351e+03 - -2.7958906e+03 8.6806725e+02 4.4358217e+03 - -2.8166472e+03 8.1674201e+02 4.4344394e+03 - -2.8361621e+03 7.6543499e+02 4.4330963e+03 - -2.8544304e+03 7.1415410e+02 4.4318004e+03 - -2.8714480e+03 6.6290562e+02 4.4305592e+03 - -2.8872118e+03 6.1169419e+02 4.4293797e+03 - -2.9017192e+03 5.6052296e+02 4.4282688e+03 - -2.9149682e+03 5.0939367e+02 4.4272328e+03 - -2.9269574e+03 4.5830674e+02 4.4262774e+03 - -2.9376858e+03 4.0726141e+02 4.4254079e+03 - -2.9471527e+03 3.5625583e+02 4.4246292e+03 - -2.9553576e+03 3.0528717e+02 4.4239456e+03 - -2.9623003e+03 2.5435176e+02 4.4233607e+03 - -2.9679806e+03 2.0344518e+02 4.4228778e+03 - -2.9723986e+03 1.5256241e+02 4.4224995e+03 - -2.9755542e+03 1.0169792e+02 4.4222278e+03 - -2.9774476e+03 5.0845830e+01 4.4220642e+03 - -2.9780787e+03 0.0000000e+00 4.4220096e+03 - -2.9774476e+03 -5.0845830e+01 4.4220642e+03 - -2.9755542e+03 -1.0169792e+02 4.4222278e+03 - -2.9723986e+03 -1.5256241e+02 4.4224995e+03 - -2.9679806e+03 -2.0344518e+02 4.4228778e+03 - -2.9623003e+03 -2.5435176e+02 4.4233607e+03 - -2.9553576e+03 -3.0528717e+02 4.4239456e+03 - -2.9471527e+03 -3.5625583e+02 4.4246292e+03 - -2.9376858e+03 -4.0726141e+02 4.4254079e+03 - -2.9269574e+03 -4.5830674e+02 4.4262774e+03 - -2.9149682e+03 -5.0939367e+02 4.4272328e+03 - -2.9017192e+03 -5.6052296e+02 4.4282688e+03 - -2.8872118e+03 -6.1169419e+02 4.4293797e+03 - -2.8714480e+03 -6.6290562e+02 4.4305592e+03 - -2.8544304e+03 -7.1415410e+02 4.4318004e+03 - -2.8361621e+03 -7.6543499e+02 4.4330963e+03 - -2.8166472e+03 -8.1674201e+02 4.4344394e+03 - -2.7958906e+03 -8.6806725e+02 4.4358217e+03 - -2.7738982e+03 -9.1940098e+02 4.4372351e+03 - -2.7506771e+03 -9.7073168e+02 4.4386711e+03 - -2.7262353e+03 -1.0220459e+03 4.4401211e+03 - -2.7005824e+03 -1.0733284e+03 4.4415761e+03 - -2.6737294e+03 -1.1245617e+03 4.4430272e+03 - -2.6456887e+03 -1.1757266e+03 4.4444653e+03 - -2.6164742e+03 -1.2268017e+03 4.4458814e+03 - -2.5861015e+03 -1.2777639e+03 4.4472665e+03 - -2.5545882e+03 -1.3285878e+03 4.4486115e+03 - -2.5219532e+03 -1.3792464e+03 4.4499079e+03 - -2.4882175e+03 -1.4297106e+03 4.4511471e+03 - -2.4534038e+03 -1.4799498e+03 4.4523208e+03 - -2.4175367e+03 -1.5299316e+03 4.4534214e+03 - -2.3806426e+03 -1.5796220e+03 4.4544413e+03 - -2.3427497e+03 -1.6289857e+03 4.4553736e+03 - -2.3038877e+03 -1.6779861e+03 4.4562121e+03 - -2.2640884e+03 -1.7265854e+03 4.4569509e+03 - -2.2233847e+03 -1.7747451e+03 4.4575850e+03 - -2.1818113e+03 -1.8224257e+03 4.4581099e+03 - -2.1394041e+03 -1.8695873e+03 4.4585220e+03 - -2.0962000e+03 -1.9161896e+03 4.4588185e+03 - -2.0522373e+03 -1.9621923e+03 4.4589972e+03 - -2.0075548e+03 -2.0075548e+03 4.4590569e+03 - -1.9621923e+03 -2.0522373e+03 4.4589972e+03 - -1.9161896e+03 -2.0962000e+03 4.4588185e+03 - -1.8695873e+03 -2.1394041e+03 4.4585220e+03 - -1.8224257e+03 -2.1818113e+03 4.4581099e+03 - -1.7747451e+03 -2.2233847e+03 4.4575850e+03 - -1.7265854e+03 -2.2640884e+03 4.4569509e+03 - -1.6779861e+03 -2.3038877e+03 4.4562121e+03 - -1.6289857e+03 -2.3427497e+03 4.4553736e+03 - -1.5796220e+03 -2.3806426e+03 4.4544413e+03 - -1.5299316e+03 -2.4175367e+03 4.4534214e+03 - -1.4799498e+03 -2.4534038e+03 4.4523208e+03 - -1.4297106e+03 -2.4882175e+03 4.4511471e+03 - -1.3792464e+03 -2.5219532e+03 4.4499079e+03 - -1.3285878e+03 -2.5545882e+03 4.4486115e+03 - -1.2777639e+03 -2.5861015e+03 4.4472665e+03 - -1.2268017e+03 -2.6164742e+03 4.4458814e+03 - -1.1757266e+03 -2.6456887e+03 4.4444653e+03 - -1.1245617e+03 -2.6737294e+03 4.4430272e+03 - -1.0733284e+03 -2.7005824e+03 4.4415761e+03 - -1.0220459e+03 -2.7262353e+03 4.4401211e+03 - -9.7073168e+02 -2.7506771e+03 4.4386711e+03 - -9.1940098e+02 -2.7738982e+03 4.4372351e+03 - -8.6806725e+02 -2.7958906e+03 4.4358217e+03 - -8.1674201e+02 -2.8166472e+03 4.4344394e+03 - -7.6543499e+02 -2.8361621e+03 4.4330963e+03 - -7.1415410e+02 -2.8544304e+03 4.4318004e+03 - -6.6290562e+02 -2.8714480e+03 4.4305592e+03 - -6.1169419e+02 -2.8872118e+03 4.4293797e+03 - -5.6052296e+02 -2.9017192e+03 4.4282688e+03 - -5.0939367e+02 -2.9149682e+03 4.4272328e+03 - -4.5830674e+02 -2.9269574e+03 4.4262774e+03 - -4.0726141e+02 -2.9376858e+03 4.4254079e+03 - -3.5625583e+02 -2.9471527e+03 4.4246292e+03 - -3.0528717e+02 -2.9553576e+03 4.4239456e+03 - -2.5435176e+02 -2.9623003e+03 4.4233607e+03 - -2.0344518e+02 -2.9679806e+03 4.4228778e+03 - -1.5256241e+02 -2.9723986e+03 4.4224995e+03 - -1.0169792e+02 -2.9755542e+03 4.4222278e+03 - -5.0845830e+01 -2.9774476e+03 4.4220642e+03 - 0.0000000e+00 -2.9780787e+03 4.4220096e+03 - 5.0845830e+01 -2.9774476e+03 4.4220642e+03 - 1.0169792e+02 -2.9755542e+03 4.4222278e+03 - 1.5256241e+02 -2.9723986e+03 4.4224995e+03 - 2.0344518e+02 -2.9679806e+03 4.4228778e+03 - 2.5435176e+02 -2.9623003e+03 4.4233607e+03 - 3.0528717e+02 -2.9553576e+03 4.4239456e+03 - 3.5625583e+02 -2.9471527e+03 4.4246292e+03 - 4.0726141e+02 -2.9376858e+03 4.4254079e+03 - 4.5830674e+02 -2.9269574e+03 4.4262774e+03 - 5.0939367e+02 -2.9149682e+03 4.4272328e+03 - 5.6052296e+02 -2.9017192e+03 4.4282688e+03 - 6.1169419e+02 -2.8872118e+03 4.4293797e+03 - 6.6290562e+02 -2.8714480e+03 4.4305592e+03 - 7.1415410e+02 -2.8544304e+03 4.4318004e+03 - 7.6543499e+02 -2.8361621e+03 4.4330963e+03 - 8.1674201e+02 -2.8166472e+03 4.4344394e+03 - 8.6806725e+02 -2.7958906e+03 4.4358217e+03 - 9.1940098e+02 -2.7738982e+03 4.4372351e+03 - 9.7073168e+02 -2.7506771e+03 4.4386711e+03 - 1.0220459e+03 -2.7262353e+03 4.4401211e+03 - 1.0733284e+03 -2.7005824e+03 4.4415761e+03 - 1.1245617e+03 -2.6737294e+03 4.4430272e+03 - 1.1757266e+03 -2.6456887e+03 4.4444653e+03 - 1.2268017e+03 -2.6164742e+03 4.4458814e+03 - 1.2777639e+03 -2.5861015e+03 4.4472665e+03 - 1.3285878e+03 -2.5545882e+03 4.4486115e+03 - 1.3792464e+03 -2.5219532e+03 4.4499079e+03 - 1.4297106e+03 -2.4882175e+03 4.4511471e+03 - 1.4799498e+03 -2.4534038e+03 4.4523208e+03 - 1.5299316e+03 -2.4175367e+03 4.4534214e+03 - 1.5796220e+03 -2.3806426e+03 4.4544413e+03 - 1.6289857e+03 -2.3427497e+03 4.4553736e+03 - 1.6779861e+03 -2.3038877e+03 4.4562121e+03 - 1.7265854e+03 -2.2640884e+03 4.4569509e+03 - 1.7747451e+03 -2.2233847e+03 4.4575850e+03 - 1.8224257e+03 -2.1818113e+03 4.4581099e+03 - 1.8695873e+03 -2.1394041e+03 4.4585220e+03 - 1.9161896e+03 -2.0962000e+03 4.4588185e+03 - 1.9621923e+03 -2.0522373e+03 4.4589972e+03 - 2.0075548e+03 -2.0075548e+03 4.4590569e+03 - 2.0522373e+03 -1.9621923e+03 4.4589972e+03 - 2.0962000e+03 -1.9161896e+03 4.4588185e+03 - 2.1394041e+03 -1.8695873e+03 4.4585220e+03 - 2.1818113e+03 -1.8224257e+03 4.4581099e+03 - 2.2233847e+03 -1.7747451e+03 4.4575850e+03 - 2.2640884e+03 -1.7265854e+03 4.4569509e+03 - 2.3038877e+03 -1.6779861e+03 4.4562121e+03 - 2.3427497e+03 -1.6289857e+03 4.4553736e+03 - 2.3806426e+03 -1.5796220e+03 4.4544413e+03 - 2.4175367e+03 -1.5299316e+03 4.4534214e+03 - 2.4534038e+03 -1.4799498e+03 4.4523208e+03 - 2.4882175e+03 -1.4297106e+03 4.4511471e+03 - 2.5219532e+03 -1.3792464e+03 4.4499079e+03 - 2.5545882e+03 -1.3285878e+03 4.4486115e+03 - 2.5861015e+03 -1.2777639e+03 4.4472665e+03 - 2.6164742e+03 -1.2268017e+03 4.4458814e+03 - 2.6456887e+03 -1.1757266e+03 4.4444653e+03 - 2.6737294e+03 -1.1245617e+03 4.4430272e+03 - 2.7005824e+03 -1.0733284e+03 4.4415761e+03 - 2.7262353e+03 -1.0220459e+03 4.4401211e+03 - 2.7506771e+03 -9.7073168e+02 4.4386711e+03 - 2.7738982e+03 -9.1940098e+02 4.4372351e+03 - 2.7958906e+03 -8.6806725e+02 4.4358217e+03 - 2.8166472e+03 -8.1674201e+02 4.4344394e+03 - 2.8361621e+03 -7.6543499e+02 4.4330963e+03 - 2.8544304e+03 -7.1415410e+02 4.4318004e+03 - 2.8714480e+03 -6.6290562e+02 4.4305592e+03 - 2.8872118e+03 -6.1169419e+02 4.4293797e+03 - 2.9017192e+03 -5.6052296e+02 4.4282688e+03 - 2.9149682e+03 -5.0939367e+02 4.4272328e+03 - 2.9269574e+03 -4.5830674e+02 4.4262774e+03 - 2.9376858e+03 -4.0726141e+02 4.4254079e+03 - 2.9471527e+03 -3.5625583e+02 4.4246292e+03 - 2.9553576e+03 -3.0528717e+02 4.4239456e+03 - 2.9623003e+03 -2.5435176e+02 4.4233607e+03 - 2.9679806e+03 -2.0344518e+02 4.4228778e+03 - 2.9723986e+03 -1.5256241e+02 4.4224995e+03 - 2.9755542e+03 -1.0169792e+02 4.4222278e+03 - 2.9774476e+03 -5.0845830e+01 4.4220642e+03 - 2.9780787e+03 0.0000000e+00 4.4220096e+03 - 3.0605150e+03 0.0000000e+00 4.3869175e+03 - 3.0598671e+03 5.1709593e+01 4.3869788e+03 - 3.0579235e+03 1.0342787e+02 4.3871624e+03 - 3.0546838e+03 1.5516337e+02 4.3874673e+03 - 3.0501479e+03 2.0692439e+02 4.3878919e+03 - 3.0443152e+03 2.5871879e+02 4.3884339e+03 - 3.0371853e+03 3.1055393e+02 4.3890905e+03 - 3.0287577e+03 3.6243647e+02 4.3898582e+03 - 3.0190320e+03 4.1437230e+02 4.3907328e+03 - 3.0080079e+03 4.6636635e+02 4.3917095e+03 - 2.9956852e+03 5.1842250e+02 4.3927831e+03 - 2.9820640e+03 5.7054344e+02 4.3939477e+03 - 2.9671449e+03 6.2273056e+02 4.3951968e+03 - 2.9509289e+03 6.7498378e+02 4.3965234e+03 - 2.9334174e+03 7.2730148e+02 4.3979201e+03 - 2.9146127e+03 7.7968039e+02 4.3993788e+03 - 2.8945178e+03 8.3211543e+02 4.4008913e+03 - 2.8731366e+03 8.8459967e+02 4.4024486e+03 - 2.8504742e+03 9.3712419e+02 4.4040415e+03 - 2.8265367e+03 9.8967802e+02 4.4056607e+03 - 2.8013315e+03 1.0422481e+03 4.4072964e+03 - 2.7748676e+03 1.0948191e+03 4.4089384e+03 - 2.7471553e+03 1.1473737e+03 4.4105768e+03 - 2.7182067e+03 1.1998920e+03 4.4122013e+03 - 2.6880357e+03 1.2523520e+03 4.4138016e+03 - 2.6566578e+03 1.3047296e+03 4.4153675e+03 - 2.6240907e+03 1.3569981e+03 4.4168889e+03 - 2.5903540e+03 1.4091290e+03 4.4183558e+03 - 2.5554693e+03 1.4610914e+03 4.4197585e+03 - 2.5194603e+03 1.5128524e+03 4.4210877e+03 - 2.4823527e+03 1.5643775e+03 4.4223344e+03 - 2.4441746e+03 1.6156299e+03 4.4234901e+03 - 2.4049557e+03 1.6665716e+03 4.4245470e+03 - 2.3647280e+03 1.7171628e+03 4.4254977e+03 - 2.3235253e+03 1.7673627e+03 4.4263357e+03 - 2.2813833e+03 1.8171291e+03 4.4270550e+03 - 2.2383393e+03 1.8664191e+03 4.4276505e+03 - 2.1944322e+03 1.9151893e+03 4.4281182e+03 - 2.1497021e+03 1.9633956e+03 4.4284547e+03 - 2.1041907e+03 2.0109939e+03 4.4286575e+03 - 2.0579402e+03 2.0579402e+03 4.4287253e+03 - 2.0109939e+03 2.1041907e+03 4.4286575e+03 - 1.9633956e+03 2.1497021e+03 4.4284547e+03 - 1.9151893e+03 2.1944322e+03 4.4281182e+03 - 1.8664191e+03 2.2383393e+03 4.4276505e+03 - 1.8171291e+03 2.2813833e+03 4.4270550e+03 - 1.7673627e+03 2.3235253e+03 4.4263357e+03 - 1.7171628e+03 2.3647280e+03 4.4254977e+03 - 1.6665716e+03 2.4049557e+03 4.4245470e+03 - 1.6156299e+03 2.4441746e+03 4.4234901e+03 - 1.5643775e+03 2.4823527e+03 4.4223344e+03 - 1.5128524e+03 2.5194603e+03 4.4210877e+03 - 1.4610914e+03 2.5554693e+03 4.4197585e+03 - 1.4091290e+03 2.5903540e+03 4.4183558e+03 - 1.3569981e+03 2.6240907e+03 4.4168889e+03 - 1.3047296e+03 2.6566578e+03 4.4153675e+03 - 1.2523520e+03 2.6880357e+03 4.4138016e+03 - 1.1998920e+03 2.7182067e+03 4.4122013e+03 - 1.1473737e+03 2.7471553e+03 4.4105768e+03 - 1.0948191e+03 2.7748676e+03 4.4089384e+03 - 1.0422481e+03 2.8013315e+03 4.4072964e+03 - 9.8967802e+02 2.8265367e+03 4.4056607e+03 - 9.3712419e+02 2.8504742e+03 4.4040415e+03 - 8.8459967e+02 2.8731366e+03 4.4024486e+03 - 8.3211543e+02 2.8945178e+03 4.4008913e+03 - 7.7968039e+02 2.9146127e+03 4.3993788e+03 - 7.2730148e+02 2.9334174e+03 4.3979201e+03 - 6.7498378e+02 2.9509289e+03 4.3965234e+03 - 6.2273056e+02 2.9671449e+03 4.3951968e+03 - 5.7054344e+02 2.9820640e+03 4.3939477e+03 - 5.1842250e+02 2.9956852e+03 4.3927831e+03 - 4.6636635e+02 3.0080079e+03 4.3917095e+03 - 4.1437230e+02 3.0190320e+03 4.3907328e+03 - 3.6243647e+02 3.0287577e+03 4.3898582e+03 - 3.1055393e+02 3.0371853e+03 4.3890905e+03 - 2.5871879e+02 3.0443152e+03 4.3884339e+03 - 2.0692439e+02 3.0501479e+03 4.3878919e+03 - 1.5516337e+02 3.0546838e+03 4.3874673e+03 - 1.0342787e+02 3.0579235e+03 4.3871624e+03 - 5.1709593e+01 3.0598671e+03 4.3869788e+03 - 0.0000000e+00 3.0605150e+03 4.3869175e+03 - -5.1709593e+01 3.0598671e+03 4.3869788e+03 - -1.0342787e+02 3.0579235e+03 4.3871624e+03 - -1.5516337e+02 3.0546838e+03 4.3874673e+03 - -2.0692439e+02 3.0501479e+03 4.3878919e+03 - -2.5871879e+02 3.0443152e+03 4.3884339e+03 - -3.1055393e+02 3.0371853e+03 4.3890905e+03 - -3.6243647e+02 3.0287577e+03 4.3898582e+03 - -4.1437230e+02 3.0190320e+03 4.3907328e+03 - -4.6636635e+02 3.0080079e+03 4.3917095e+03 - -5.1842250e+02 2.9956852e+03 4.3927831e+03 - -5.7054344e+02 2.9820640e+03 4.3939477e+03 - -6.2273056e+02 2.9671449e+03 4.3951968e+03 - -6.7498378e+02 2.9509289e+03 4.3965234e+03 - -7.2730148e+02 2.9334174e+03 4.3979201e+03 - -7.7968039e+02 2.9146127e+03 4.3993788e+03 - -8.3211543e+02 2.8945178e+03 4.4008913e+03 - -8.8459967e+02 2.8731366e+03 4.4024486e+03 - -9.3712419e+02 2.8504742e+03 4.4040415e+03 - -9.8967802e+02 2.8265367e+03 4.4056607e+03 - -1.0422481e+03 2.8013315e+03 4.4072964e+03 - -1.0948191e+03 2.7748676e+03 4.4089384e+03 - -1.1473737e+03 2.7471553e+03 4.4105768e+03 - -1.1998920e+03 2.7182067e+03 4.4122013e+03 - -1.2523520e+03 2.6880357e+03 4.4138016e+03 - -1.3047296e+03 2.6566578e+03 4.4153675e+03 - -1.3569981e+03 2.6240907e+03 4.4168889e+03 - -1.4091290e+03 2.5903540e+03 4.4183558e+03 - -1.4610914e+03 2.5554693e+03 4.4197585e+03 - -1.5128524e+03 2.5194603e+03 4.4210877e+03 - -1.5643775e+03 2.4823527e+03 4.4223344e+03 - -1.6156299e+03 2.4441746e+03 4.4234901e+03 - -1.6665716e+03 2.4049557e+03 4.4245470e+03 - -1.7171628e+03 2.3647280e+03 4.4254977e+03 - -1.7673627e+03 2.3235253e+03 4.4263357e+03 - -1.8171291e+03 2.2813833e+03 4.4270550e+03 - -1.8664191e+03 2.2383393e+03 4.4276505e+03 - -1.9151893e+03 2.1944322e+03 4.4281182e+03 - -1.9633956e+03 2.1497021e+03 4.4284547e+03 - -2.0109939e+03 2.1041907e+03 4.4286575e+03 - -2.0579402e+03 2.0579402e+03 4.4287253e+03 - -2.1041907e+03 2.0109939e+03 4.4286575e+03 - -2.1497021e+03 1.9633956e+03 4.4284547e+03 - -2.1944322e+03 1.9151893e+03 4.4281182e+03 - -2.2383393e+03 1.8664191e+03 4.4276505e+03 - -2.2813833e+03 1.8171291e+03 4.4270550e+03 - -2.3235253e+03 1.7673627e+03 4.4263357e+03 - -2.3647280e+03 1.7171628e+03 4.4254977e+03 - -2.4049557e+03 1.6665716e+03 4.4245470e+03 - -2.4441746e+03 1.6156299e+03 4.4234901e+03 - -2.4823527e+03 1.5643775e+03 4.4223344e+03 - -2.5194603e+03 1.5128524e+03 4.4210877e+03 - -2.5554693e+03 1.4610914e+03 4.4197585e+03 - -2.5903540e+03 1.4091290e+03 4.4183558e+03 - -2.6240907e+03 1.3569981e+03 4.4168889e+03 - -2.6566578e+03 1.3047296e+03 4.4153675e+03 - -2.6880357e+03 1.2523520e+03 4.4138016e+03 - -2.7182067e+03 1.1998920e+03 4.4122013e+03 - -2.7471553e+03 1.1473737e+03 4.4105768e+03 - -2.7748676e+03 1.0948191e+03 4.4089384e+03 - -2.8013315e+03 1.0422481e+03 4.4072964e+03 - -2.8265367e+03 9.8967802e+02 4.4056607e+03 - -2.8504742e+03 9.3712419e+02 4.4040415e+03 - -2.8731366e+03 8.8459967e+02 4.4024486e+03 - -2.8945178e+03 8.3211543e+02 4.4008913e+03 - -2.9146127e+03 7.7968039e+02 4.3993788e+03 - -2.9334174e+03 7.2730148e+02 4.3979201e+03 - -2.9509289e+03 6.7498378e+02 4.3965234e+03 - -2.9671449e+03 6.2273056e+02 4.3951968e+03 - -2.9820640e+03 5.7054344e+02 4.3939477e+03 - -2.9956852e+03 5.1842250e+02 4.3927831e+03 - -3.0080079e+03 4.6636635e+02 4.3917095e+03 - -3.0190320e+03 4.1437230e+02 4.3907328e+03 - -3.0287577e+03 3.6243647e+02 4.3898582e+03 - -3.0371853e+03 3.1055393e+02 4.3890905e+03 - -3.0443152e+03 2.5871879e+02 4.3884339e+03 - -3.0501479e+03 2.0692439e+02 4.3878919e+03 - -3.0546838e+03 1.5516337e+02 4.3874673e+03 - -3.0579235e+03 1.0342787e+02 4.3871624e+03 - -3.0598671e+03 5.1709593e+01 4.3869788e+03 - -3.0605150e+03 0.0000000e+00 4.3869175e+03 - -3.0598671e+03 -5.1709593e+01 4.3869788e+03 - -3.0579235e+03 -1.0342787e+02 4.3871624e+03 - -3.0546838e+03 -1.5516337e+02 4.3874673e+03 - -3.0501479e+03 -2.0692439e+02 4.3878919e+03 - -3.0443152e+03 -2.5871879e+02 4.3884339e+03 - -3.0371853e+03 -3.1055393e+02 4.3890905e+03 - -3.0287577e+03 -3.6243647e+02 4.3898582e+03 - -3.0190320e+03 -4.1437230e+02 4.3907328e+03 - -3.0080079e+03 -4.6636635e+02 4.3917095e+03 - -2.9956852e+03 -5.1842250e+02 4.3927831e+03 - -2.9820640e+03 -5.7054344e+02 4.3939477e+03 - -2.9671449e+03 -6.2273056e+02 4.3951968e+03 - -2.9509289e+03 -6.7498378e+02 4.3965234e+03 - -2.9334174e+03 -7.2730148e+02 4.3979201e+03 - -2.9146127e+03 -7.7968039e+02 4.3993788e+03 - -2.8945178e+03 -8.3211543e+02 4.4008913e+03 - -2.8731366e+03 -8.8459967e+02 4.4024486e+03 - -2.8504742e+03 -9.3712419e+02 4.4040415e+03 - -2.8265367e+03 -9.8967802e+02 4.4056607e+03 - -2.8013315e+03 -1.0422481e+03 4.4072964e+03 - -2.7748676e+03 -1.0948191e+03 4.4089384e+03 - -2.7471553e+03 -1.1473737e+03 4.4105768e+03 - -2.7182067e+03 -1.1998920e+03 4.4122013e+03 - -2.6880357e+03 -1.2523520e+03 4.4138016e+03 - -2.6566578e+03 -1.3047296e+03 4.4153675e+03 - -2.6240907e+03 -1.3569981e+03 4.4168889e+03 - -2.5903540e+03 -1.4091290e+03 4.4183558e+03 - -2.5554693e+03 -1.4610914e+03 4.4197585e+03 - -2.5194603e+03 -1.5128524e+03 4.4210877e+03 - -2.4823527e+03 -1.5643775e+03 4.4223344e+03 - -2.4441746e+03 -1.6156299e+03 4.4234901e+03 - -2.4049557e+03 -1.6665716e+03 4.4245470e+03 - -2.3647280e+03 -1.7171628e+03 4.4254977e+03 - -2.3235253e+03 -1.7673627e+03 4.4263357e+03 - -2.2813833e+03 -1.8171291e+03 4.4270550e+03 - -2.2383393e+03 -1.8664191e+03 4.4276505e+03 - -2.1944322e+03 -1.9151893e+03 4.4281182e+03 - -2.1497021e+03 -1.9633956e+03 4.4284547e+03 - -2.1041907e+03 -2.0109939e+03 4.4286575e+03 - -2.0579402e+03 -2.0579402e+03 4.4287253e+03 - -2.0109939e+03 -2.1041907e+03 4.4286575e+03 - -1.9633956e+03 -2.1497021e+03 4.4284547e+03 - -1.9151893e+03 -2.1944322e+03 4.4281182e+03 - -1.8664191e+03 -2.2383393e+03 4.4276505e+03 - -1.8171291e+03 -2.2813833e+03 4.4270550e+03 - -1.7673627e+03 -2.3235253e+03 4.4263357e+03 - -1.7171628e+03 -2.3647280e+03 4.4254977e+03 - -1.6665716e+03 -2.4049557e+03 4.4245470e+03 - -1.6156299e+03 -2.4441746e+03 4.4234901e+03 - -1.5643775e+03 -2.4823527e+03 4.4223344e+03 - -1.5128524e+03 -2.5194603e+03 4.4210877e+03 - -1.4610914e+03 -2.5554693e+03 4.4197585e+03 - -1.4091290e+03 -2.5903540e+03 4.4183558e+03 - -1.3569981e+03 -2.6240907e+03 4.4168889e+03 - -1.3047296e+03 -2.6566578e+03 4.4153675e+03 - -1.2523520e+03 -2.6880357e+03 4.4138016e+03 - -1.1998920e+03 -2.7182067e+03 4.4122013e+03 - -1.1473737e+03 -2.7471553e+03 4.4105768e+03 - -1.0948191e+03 -2.7748676e+03 4.4089384e+03 - -1.0422481e+03 -2.8013315e+03 4.4072964e+03 - -9.8967802e+02 -2.8265367e+03 4.4056607e+03 - -9.3712419e+02 -2.8504742e+03 4.4040415e+03 - -8.8459967e+02 -2.8731366e+03 4.4024486e+03 - -8.3211543e+02 -2.8945178e+03 4.4008913e+03 - -7.7968039e+02 -2.9146127e+03 4.3993788e+03 - -7.2730148e+02 -2.9334174e+03 4.3979201e+03 - -6.7498378e+02 -2.9509289e+03 4.3965234e+03 - -6.2273056e+02 -2.9671449e+03 4.3951968e+03 - -5.7054344e+02 -2.9820640e+03 4.3939477e+03 - -5.1842250e+02 -2.9956852e+03 4.3927831e+03 - -4.6636635e+02 -3.0080079e+03 4.3917095e+03 - -4.1437230e+02 -3.0190320e+03 4.3907328e+03 - -3.6243647e+02 -3.0287577e+03 4.3898582e+03 - -3.1055393e+02 -3.0371853e+03 4.3890905e+03 - -2.5871879e+02 -3.0443152e+03 4.3884339e+03 - -2.0692439e+02 -3.0501479e+03 4.3878919e+03 - -1.5516337e+02 -3.0546838e+03 4.3874673e+03 - -1.0342787e+02 -3.0579235e+03 4.3871624e+03 - -5.1709593e+01 -3.0598671e+03 4.3869788e+03 - 0.0000000e+00 -3.0605150e+03 4.3869175e+03 - 5.1709593e+01 -3.0598671e+03 4.3869788e+03 - 1.0342787e+02 -3.0579235e+03 4.3871624e+03 - 1.5516337e+02 -3.0546838e+03 4.3874673e+03 - 2.0692439e+02 -3.0501479e+03 4.3878919e+03 - 2.5871879e+02 -3.0443152e+03 4.3884339e+03 - 3.1055393e+02 -3.0371853e+03 4.3890905e+03 - 3.6243647e+02 -3.0287577e+03 4.3898582e+03 - 4.1437230e+02 -3.0190320e+03 4.3907328e+03 - 4.6636635e+02 -3.0080079e+03 4.3917095e+03 - 5.1842250e+02 -2.9956852e+03 4.3927831e+03 - 5.7054344e+02 -2.9820640e+03 4.3939477e+03 - 6.2273056e+02 -2.9671449e+03 4.3951968e+03 - 6.7498378e+02 -2.9509289e+03 4.3965234e+03 - 7.2730148e+02 -2.9334174e+03 4.3979201e+03 - 7.7968039e+02 -2.9146127e+03 4.3993788e+03 - 8.3211543e+02 -2.8945178e+03 4.4008913e+03 - 8.8459967e+02 -2.8731366e+03 4.4024486e+03 - 9.3712419e+02 -2.8504742e+03 4.4040415e+03 - 9.8967802e+02 -2.8265367e+03 4.4056607e+03 - 1.0422481e+03 -2.8013315e+03 4.4072964e+03 - 1.0948191e+03 -2.7748676e+03 4.4089384e+03 - 1.1473737e+03 -2.7471553e+03 4.4105768e+03 - 1.1998920e+03 -2.7182067e+03 4.4122013e+03 - 1.2523520e+03 -2.6880357e+03 4.4138016e+03 - 1.3047296e+03 -2.6566578e+03 4.4153675e+03 - 1.3569981e+03 -2.6240907e+03 4.4168889e+03 - 1.4091290e+03 -2.5903540e+03 4.4183558e+03 - 1.4610914e+03 -2.5554693e+03 4.4197585e+03 - 1.5128524e+03 -2.5194603e+03 4.4210877e+03 - 1.5643775e+03 -2.4823527e+03 4.4223344e+03 - 1.6156299e+03 -2.4441746e+03 4.4234901e+03 - 1.6665716e+03 -2.4049557e+03 4.4245470e+03 - 1.7171628e+03 -2.3647280e+03 4.4254977e+03 - 1.7673627e+03 -2.3235253e+03 4.4263357e+03 - 1.8171291e+03 -2.2813833e+03 4.4270550e+03 - 1.8664191e+03 -2.2383393e+03 4.4276505e+03 - 1.9151893e+03 -2.1944322e+03 4.4281182e+03 - 1.9633956e+03 -2.1497021e+03 4.4284547e+03 - 2.0109939e+03 -2.1041907e+03 4.4286575e+03 - 2.0579402e+03 -2.0579402e+03 4.4287253e+03 - 2.1041907e+03 -2.0109939e+03 4.4286575e+03 - 2.1497021e+03 -1.9633956e+03 4.4284547e+03 - 2.1944322e+03 -1.9151893e+03 4.4281182e+03 - 2.2383393e+03 -1.8664191e+03 4.4276505e+03 - 2.2813833e+03 -1.8171291e+03 4.4270550e+03 - 2.3235253e+03 -1.7673627e+03 4.4263357e+03 - 2.3647280e+03 -1.7171628e+03 4.4254977e+03 - 2.4049557e+03 -1.6665716e+03 4.4245470e+03 - 2.4441746e+03 -1.6156299e+03 4.4234901e+03 - 2.4823527e+03 -1.5643775e+03 4.4223344e+03 - 2.5194603e+03 -1.5128524e+03 4.4210877e+03 - 2.5554693e+03 -1.4610914e+03 4.4197585e+03 - 2.5903540e+03 -1.4091290e+03 4.4183558e+03 - 2.6240907e+03 -1.3569981e+03 4.4168889e+03 - 2.6566578e+03 -1.3047296e+03 4.4153675e+03 - 2.6880357e+03 -1.2523520e+03 4.4138016e+03 - 2.7182067e+03 -1.1998920e+03 4.4122013e+03 - 2.7471553e+03 -1.1473737e+03 4.4105768e+03 - 2.7748676e+03 -1.0948191e+03 4.4089384e+03 - 2.8013315e+03 -1.0422481e+03 4.4072964e+03 - 2.8265367e+03 -9.8967802e+02 4.4056607e+03 - 2.8504742e+03 -9.3712419e+02 4.4040415e+03 - 2.8731366e+03 -8.8459967e+02 4.4024486e+03 - 2.8945178e+03 -8.3211543e+02 4.4008913e+03 - 2.9146127e+03 -7.7968039e+02 4.3993788e+03 - 2.9334174e+03 -7.2730148e+02 4.3979201e+03 - 2.9509289e+03 -6.7498378e+02 4.3965234e+03 - 2.9671449e+03 -6.2273056e+02 4.3951968e+03 - 2.9820640e+03 -5.7054344e+02 4.3939477e+03 - 2.9956852e+03 -5.1842250e+02 4.3927831e+03 - 3.0080079e+03 -4.6636635e+02 4.3917095e+03 - 3.0190320e+03 -4.1437230e+02 4.3907328e+03 - 3.0287577e+03 -3.6243647e+02 4.3898582e+03 - 3.0371853e+03 -3.1055393e+02 4.3890905e+03 - 3.0443152e+03 -2.5871879e+02 4.3884339e+03 - 3.0501479e+03 -2.0692439e+02 4.3878919e+03 - 3.0546838e+03 -1.5516337e+02 4.3874673e+03 - 3.0579235e+03 -1.0342787e+02 4.3871624e+03 - 3.0598671e+03 -5.1709593e+01 4.3869788e+03 - 3.0605150e+03 0.0000000e+00 4.3869175e+03 - 3.1392033e+03 0.0000000e+00 4.3515799e+03 - 3.1385400e+03 5.2483509e+01 4.3516481e+03 - 3.1365499e+03 1.0497820e+02 4.3518525e+03 - 3.1332325e+03 1.5749513e+02 4.3521919e+03 - 3.1285873e+03 2.1004504e+02 4.3526647e+03 - 3.1226135e+03 2.6263827e+02 4.3532683e+03 - 3.1153099e+03 3.1528455e+02 4.3539996e+03 - 3.1066756e+03 3.6799293e+02 4.3548547e+03 - 3.0967092e+03 4.2077158e+02 4.3558292e+03 - 3.0854097e+03 4.7362764e+02 4.3569178e+03 - 3.0727759e+03 5.2656715e+02 4.3581147e+03 - 3.0588071e+03 5.7959483e+02 4.3594134e+03 - 3.0435025e+03 6.3271396e+02 4.3608068e+03 - 3.0268622e+03 6.8592629e+02 4.3622873e+03 - 3.0088865e+03 7.3923185e+02 4.3638465e+03 - 2.9895764e+03 7.9262883e+02 4.3654757e+03 - 2.9689338e+03 8.4611349e+02 4.3671656e+03 - 2.9469616e+03 8.9968001e+02 4.3689063e+03 - 2.9236637e+03 9.5332039e+02 4.3706877e+03 - 2.8990451e+03 1.0070244e+03 4.3724993e+03 - 2.8731126e+03 1.0607793e+03 4.3743301e+03 - 2.8458740e+03 1.1145701e+03 4.3761690e+03 - 2.8173393e+03 1.1683792e+03 4.3780047e+03 - 2.7875198e+03 1.2221866e+03 4.3798256e+03 - 2.7564292e+03 1.2759696e+03 4.3816203e+03 - 2.7240830e+03 1.3297029e+03 4.3833772e+03 - 2.6904988e+03 1.3833590e+03 4.3850848e+03 - 2.6556966e+03 1.4369074e+03 4.3867321e+03 - 2.6196987e+03 1.4903157e+03 4.3883079e+03 - 2.5825296e+03 1.5435488e+03 4.3898018e+03 - 2.5442163e+03 1.5965696e+03 4.3912035e+03 - 2.5047882e+03 1.6493387e+03 4.3925034e+03 - 2.4642768e+03 1.7018152e+03 4.3936924e+03 - 2.4227163e+03 1.7539561e+03 4.3947624e+03 - 2.3801427e+03 1.8057171e+03 4.3957056e+03 - 2.3365942e+03 1.8570526e+03 4.3965155e+03 - 2.2921112e+03 1.9079160e+03 4.3971863e+03 - 2.2467355e+03 1.9582599e+03 4.3977131e+03 - 2.2005109e+03 2.0080364e+03 4.3980921e+03 - 2.1534821e+03 2.0571975e+03 4.3983206e+03 - 2.1056953e+03 2.1056953e+03 4.3983969e+03 - 2.0571975e+03 2.1534821e+03 4.3983206e+03 - 2.0080364e+03 2.2005109e+03 4.3980921e+03 - 1.9582599e+03 2.2467355e+03 4.3977131e+03 - 1.9079160e+03 2.2921112e+03 4.3971863e+03 - 1.8570526e+03 2.3365942e+03 4.3965155e+03 - 1.8057171e+03 2.3801427e+03 4.3957056e+03 - 1.7539561e+03 2.4227163e+03 4.3947624e+03 - 1.7018152e+03 2.4642768e+03 4.3936924e+03 - 1.6493387e+03 2.5047882e+03 4.3925034e+03 - 1.5965696e+03 2.5442163e+03 4.3912035e+03 - 1.5435488e+03 2.5825296e+03 4.3898018e+03 - 1.4903157e+03 2.6196987e+03 4.3883079e+03 - 1.4369074e+03 2.6556966e+03 4.3867321e+03 - 1.3833590e+03 2.6904988e+03 4.3850848e+03 - 1.3297029e+03 2.7240830e+03 4.3833772e+03 - 1.2759696e+03 2.7564292e+03 4.3816203e+03 - 1.2221866e+03 2.7875198e+03 4.3798256e+03 - 1.1683792e+03 2.8173393e+03 4.3780047e+03 - 1.1145701e+03 2.8458740e+03 4.3761690e+03 - 1.0607793e+03 2.8731126e+03 4.3743301e+03 - 1.0070244e+03 2.8990451e+03 4.3724993e+03 - 9.5332039e+02 2.9236637e+03 4.3706877e+03 - 8.9968001e+02 2.9469616e+03 4.3689063e+03 - 8.4611349e+02 2.9689338e+03 4.3671656e+03 - 7.9262883e+02 2.9895764e+03 4.3654757e+03 - 7.3923185e+02 3.0088865e+03 4.3638465e+03 - 6.8592629e+02 3.0268622e+03 4.3622873e+03 - 6.3271396e+02 3.0435025e+03 4.3608068e+03 - 5.7959483e+02 3.0588071e+03 4.3594134e+03 - 5.2656715e+02 3.0727759e+03 4.3581147e+03 - 4.7362764e+02 3.0854097e+03 4.3569178e+03 - 4.2077158e+02 3.0967092e+03 4.3558292e+03 - 3.6799293e+02 3.1066756e+03 4.3548547e+03 - 3.1528455e+02 3.1153099e+03 4.3539996e+03 - 2.6263827e+02 3.1226135e+03 4.3532683e+03 - 2.1004504e+02 3.1285873e+03 4.3526647e+03 - 1.5749513e+02 3.1332325e+03 4.3521919e+03 - 1.0497820e+02 3.1365499e+03 4.3518525e+03 - 5.2483509e+01 3.1385400e+03 4.3516481e+03 - 0.0000000e+00 3.1392033e+03 4.3515799e+03 - -5.2483509e+01 3.1385400e+03 4.3516481e+03 - -1.0497820e+02 3.1365499e+03 4.3518525e+03 - -1.5749513e+02 3.1332325e+03 4.3521919e+03 - -2.1004504e+02 3.1285873e+03 4.3526647e+03 - -2.6263827e+02 3.1226135e+03 4.3532683e+03 - -3.1528455e+02 3.1153099e+03 4.3539996e+03 - -3.6799293e+02 3.1066756e+03 4.3548547e+03 - -4.2077158e+02 3.0967092e+03 4.3558292e+03 - -4.7362764e+02 3.0854097e+03 4.3569178e+03 - -5.2656715e+02 3.0727759e+03 4.3581147e+03 - -5.7959483e+02 3.0588071e+03 4.3594134e+03 - -6.3271396e+02 3.0435025e+03 4.3608068e+03 - -6.8592629e+02 3.0268622e+03 4.3622873e+03 - -7.3923185e+02 3.0088865e+03 4.3638465e+03 - -7.9262883e+02 2.9895764e+03 4.3654757e+03 - -8.4611349e+02 2.9689338e+03 4.3671656e+03 - -8.9968001e+02 2.9469616e+03 4.3689063e+03 - -9.5332039e+02 2.9236637e+03 4.3706877e+03 - -1.0070244e+03 2.8990451e+03 4.3724993e+03 - -1.0607793e+03 2.8731126e+03 4.3743301e+03 - -1.1145701e+03 2.8458740e+03 4.3761690e+03 - -1.1683792e+03 2.8173393e+03 4.3780047e+03 - -1.2221866e+03 2.7875198e+03 4.3798256e+03 - -1.2759696e+03 2.7564292e+03 4.3816203e+03 - -1.3297029e+03 2.7240830e+03 4.3833772e+03 - -1.3833590e+03 2.6904988e+03 4.3850848e+03 - -1.4369074e+03 2.6556966e+03 4.3867321e+03 - -1.4903157e+03 2.6196987e+03 4.3883079e+03 - -1.5435488e+03 2.5825296e+03 4.3898018e+03 - -1.5965696e+03 2.5442163e+03 4.3912035e+03 - -1.6493387e+03 2.5047882e+03 4.3925034e+03 - -1.7018152e+03 2.4642768e+03 4.3936924e+03 - -1.7539561e+03 2.4227163e+03 4.3947624e+03 - -1.8057171e+03 2.3801427e+03 4.3957056e+03 - -1.8570526e+03 2.3365942e+03 4.3965155e+03 - -1.9079160e+03 2.2921112e+03 4.3971863e+03 - -1.9582599e+03 2.2467355e+03 4.3977131e+03 - -2.0080364e+03 2.2005109e+03 4.3980921e+03 - -2.0571975e+03 2.1534821e+03 4.3983206e+03 - -2.1056953e+03 2.1056953e+03 4.3983969e+03 - -2.1534821e+03 2.0571975e+03 4.3983206e+03 - -2.2005109e+03 2.0080364e+03 4.3980921e+03 - -2.2467355e+03 1.9582599e+03 4.3977131e+03 - -2.2921112e+03 1.9079160e+03 4.3971863e+03 - -2.3365942e+03 1.8570526e+03 4.3965155e+03 - -2.3801427e+03 1.8057171e+03 4.3957056e+03 - -2.4227163e+03 1.7539561e+03 4.3947624e+03 - -2.4642768e+03 1.7018152e+03 4.3936924e+03 - -2.5047882e+03 1.6493387e+03 4.3925034e+03 - -2.5442163e+03 1.5965696e+03 4.3912035e+03 - -2.5825296e+03 1.5435488e+03 4.3898018e+03 - -2.6196987e+03 1.4903157e+03 4.3883079e+03 - -2.6556966e+03 1.4369074e+03 4.3867321e+03 - -2.6904988e+03 1.3833590e+03 4.3850848e+03 - -2.7240830e+03 1.3297029e+03 4.3833772e+03 - -2.7564292e+03 1.2759696e+03 4.3816203e+03 - -2.7875198e+03 1.2221866e+03 4.3798256e+03 - -2.8173393e+03 1.1683792e+03 4.3780047e+03 - -2.8458740e+03 1.1145701e+03 4.3761690e+03 - -2.8731126e+03 1.0607793e+03 4.3743301e+03 - -2.8990451e+03 1.0070244e+03 4.3724993e+03 - -2.9236637e+03 9.5332039e+02 4.3706877e+03 - -2.9469616e+03 8.9968001e+02 4.3689063e+03 - -2.9689338e+03 8.4611349e+02 4.3671656e+03 - -2.9895764e+03 7.9262883e+02 4.3654757e+03 - -3.0088865e+03 7.3923185e+02 4.3638465e+03 - -3.0268622e+03 6.8592629e+02 4.3622873e+03 - -3.0435025e+03 6.3271396e+02 4.3608068e+03 - -3.0588071e+03 5.7959483e+02 4.3594134e+03 - -3.0727759e+03 5.2656715e+02 4.3581147e+03 - -3.0854097e+03 4.7362764e+02 4.3569178e+03 - -3.0967092e+03 4.2077158e+02 4.3558292e+03 - -3.1066756e+03 3.6799293e+02 4.3548547e+03 - -3.1153099e+03 3.1528455e+02 4.3539996e+03 - -3.1226135e+03 2.6263827e+02 4.3532683e+03 - -3.1285873e+03 2.1004504e+02 4.3526647e+03 - -3.1332325e+03 1.5749513e+02 4.3521919e+03 - -3.1365499e+03 1.0497820e+02 4.3518525e+03 - -3.1385400e+03 5.2483509e+01 4.3516481e+03 - -3.1392033e+03 0.0000000e+00 4.3515799e+03 - -3.1385400e+03 -5.2483509e+01 4.3516481e+03 - -3.1365499e+03 -1.0497820e+02 4.3518525e+03 - -3.1332325e+03 -1.5749513e+02 4.3521919e+03 - -3.1285873e+03 -2.1004504e+02 4.3526647e+03 - -3.1226135e+03 -2.6263827e+02 4.3532683e+03 - -3.1153099e+03 -3.1528455e+02 4.3539996e+03 - -3.1066756e+03 -3.6799293e+02 4.3548547e+03 - -3.0967092e+03 -4.2077158e+02 4.3558292e+03 - -3.0854097e+03 -4.7362764e+02 4.3569178e+03 - -3.0727759e+03 -5.2656715e+02 4.3581147e+03 - -3.0588071e+03 -5.7959483e+02 4.3594134e+03 - -3.0435025e+03 -6.3271396e+02 4.3608068e+03 - -3.0268622e+03 -6.8592629e+02 4.3622873e+03 - -3.0088865e+03 -7.3923185e+02 4.3638465e+03 - -2.9895764e+03 -7.9262883e+02 4.3654757e+03 - -2.9689338e+03 -8.4611349e+02 4.3671656e+03 - -2.9469616e+03 -8.9968001e+02 4.3689063e+03 - -2.9236637e+03 -9.5332039e+02 4.3706877e+03 - -2.8990451e+03 -1.0070244e+03 4.3724993e+03 - -2.8731126e+03 -1.0607793e+03 4.3743301e+03 - -2.8458740e+03 -1.1145701e+03 4.3761690e+03 - -2.8173393e+03 -1.1683792e+03 4.3780047e+03 - -2.7875198e+03 -1.2221866e+03 4.3798256e+03 - -2.7564292e+03 -1.2759696e+03 4.3816203e+03 - -2.7240830e+03 -1.3297029e+03 4.3833772e+03 - -2.6904988e+03 -1.3833590e+03 4.3850848e+03 - -2.6556966e+03 -1.4369074e+03 4.3867321e+03 - -2.6196987e+03 -1.4903157e+03 4.3883079e+03 - -2.5825296e+03 -1.5435488e+03 4.3898018e+03 - -2.5442163e+03 -1.5965696e+03 4.3912035e+03 - -2.5047882e+03 -1.6493387e+03 4.3925034e+03 - -2.4642768e+03 -1.7018152e+03 4.3936924e+03 - -2.4227163e+03 -1.7539561e+03 4.3947624e+03 - -2.3801427e+03 -1.8057171e+03 4.3957056e+03 - -2.3365942e+03 -1.8570526e+03 4.3965155e+03 - -2.2921112e+03 -1.9079160e+03 4.3971863e+03 - -2.2467355e+03 -1.9582599e+03 4.3977131e+03 - -2.2005109e+03 -2.0080364e+03 4.3980921e+03 - -2.1534821e+03 -2.0571975e+03 4.3983206e+03 - -2.1056953e+03 -2.1056953e+03 4.3983969e+03 - -2.0571975e+03 -2.1534821e+03 4.3983206e+03 - -2.0080364e+03 -2.2005109e+03 4.3980921e+03 - -1.9582599e+03 -2.2467355e+03 4.3977131e+03 - -1.9079160e+03 -2.2921112e+03 4.3971863e+03 - -1.8570526e+03 -2.3365942e+03 4.3965155e+03 - -1.8057171e+03 -2.3801427e+03 4.3957056e+03 - -1.7539561e+03 -2.4227163e+03 4.3947624e+03 - -1.7018152e+03 -2.4642768e+03 4.3936924e+03 - -1.6493387e+03 -2.5047882e+03 4.3925034e+03 - -1.5965696e+03 -2.5442163e+03 4.3912035e+03 - -1.5435488e+03 -2.5825296e+03 4.3898018e+03 - -1.4903157e+03 -2.6196987e+03 4.3883079e+03 - -1.4369074e+03 -2.6556966e+03 4.3867321e+03 - -1.3833590e+03 -2.6904988e+03 4.3850848e+03 - -1.3297029e+03 -2.7240830e+03 4.3833772e+03 - -1.2759696e+03 -2.7564292e+03 4.3816203e+03 - -1.2221866e+03 -2.7875198e+03 4.3798256e+03 - -1.1683792e+03 -2.8173393e+03 4.3780047e+03 - -1.1145701e+03 -2.8458740e+03 4.3761690e+03 - -1.0607793e+03 -2.8731126e+03 4.3743301e+03 - -1.0070244e+03 -2.8990451e+03 4.3724993e+03 - -9.5332039e+02 -2.9236637e+03 4.3706877e+03 - -8.9968001e+02 -2.9469616e+03 4.3689063e+03 - -8.4611349e+02 -2.9689338e+03 4.3671656e+03 - -7.9262883e+02 -2.9895764e+03 4.3654757e+03 - -7.3923185e+02 -3.0088865e+03 4.3638465e+03 - -6.8592629e+02 -3.0268622e+03 4.3622873e+03 - -6.3271396e+02 -3.0435025e+03 4.3608068e+03 - -5.7959483e+02 -3.0588071e+03 4.3594134e+03 - -5.2656715e+02 -3.0727759e+03 4.3581147e+03 - -4.7362764e+02 -3.0854097e+03 4.3569178e+03 - -4.2077158e+02 -3.0967092e+03 4.3558292e+03 - -3.6799293e+02 -3.1066756e+03 4.3548547e+03 - -3.1528455e+02 -3.1153099e+03 4.3539996e+03 - -2.6263827e+02 -3.1226135e+03 4.3532683e+03 - -2.1004504e+02 -3.1285873e+03 4.3526647e+03 - -1.5749513e+02 -3.1332325e+03 4.3521919e+03 - -1.0497820e+02 -3.1365499e+03 4.3518525e+03 - -5.2483509e+01 -3.1385400e+03 4.3516481e+03 - 0.0000000e+00 -3.1392033e+03 4.3515799e+03 - 5.2483509e+01 -3.1385400e+03 4.3516481e+03 - 1.0497820e+02 -3.1365499e+03 4.3518525e+03 - 1.5749513e+02 -3.1332325e+03 4.3521919e+03 - 2.1004504e+02 -3.1285873e+03 4.3526647e+03 - 2.6263827e+02 -3.1226135e+03 4.3532683e+03 - 3.1528455e+02 -3.1153099e+03 4.3539996e+03 - 3.6799293e+02 -3.1066756e+03 4.3548547e+03 - 4.2077158e+02 -3.0967092e+03 4.3558292e+03 - 4.7362764e+02 -3.0854097e+03 4.3569178e+03 - 5.2656715e+02 -3.0727759e+03 4.3581147e+03 - 5.7959483e+02 -3.0588071e+03 4.3594134e+03 - 6.3271396e+02 -3.0435025e+03 4.3608068e+03 - 6.8592629e+02 -3.0268622e+03 4.3622873e+03 - 7.3923185e+02 -3.0088865e+03 4.3638465e+03 - 7.9262883e+02 -2.9895764e+03 4.3654757e+03 - 8.4611349e+02 -2.9689338e+03 4.3671656e+03 - 8.9968001e+02 -2.9469616e+03 4.3689063e+03 - 9.5332039e+02 -2.9236637e+03 4.3706877e+03 - 1.0070244e+03 -2.8990451e+03 4.3724993e+03 - 1.0607793e+03 -2.8731126e+03 4.3743301e+03 - 1.1145701e+03 -2.8458740e+03 4.3761690e+03 - 1.1683792e+03 -2.8173393e+03 4.3780047e+03 - 1.2221866e+03 -2.7875198e+03 4.3798256e+03 - 1.2759696e+03 -2.7564292e+03 4.3816203e+03 - 1.3297029e+03 -2.7240830e+03 4.3833772e+03 - 1.3833590e+03 -2.6904988e+03 4.3850848e+03 - 1.4369074e+03 -2.6556966e+03 4.3867321e+03 - 1.4903157e+03 -2.6196987e+03 4.3883079e+03 - 1.5435488e+03 -2.5825296e+03 4.3898018e+03 - 1.5965696e+03 -2.5442163e+03 4.3912035e+03 - 1.6493387e+03 -2.5047882e+03 4.3925034e+03 - 1.7018152e+03 -2.4642768e+03 4.3936924e+03 - 1.7539561e+03 -2.4227163e+03 4.3947624e+03 - 1.8057171e+03 -2.3801427e+03 4.3957056e+03 - 1.8570526e+03 -2.3365942e+03 4.3965155e+03 - 1.9079160e+03 -2.2921112e+03 4.3971863e+03 - 1.9582599e+03 -2.2467355e+03 4.3977131e+03 - 2.0080364e+03 -2.2005109e+03 4.3980921e+03 - 2.0571975e+03 -2.1534821e+03 4.3983206e+03 - 2.1056953e+03 -2.1056953e+03 4.3983969e+03 - 2.1534821e+03 -2.0571975e+03 4.3983206e+03 - 2.2005109e+03 -2.0080364e+03 4.3980921e+03 - 2.2467355e+03 -1.9582599e+03 4.3977131e+03 - 2.2921112e+03 -1.9079160e+03 4.3971863e+03 - 2.3365942e+03 -1.8570526e+03 4.3965155e+03 - 2.3801427e+03 -1.8057171e+03 4.3957056e+03 - 2.4227163e+03 -1.7539561e+03 4.3947624e+03 - 2.4642768e+03 -1.7018152e+03 4.3936924e+03 - 2.5047882e+03 -1.6493387e+03 4.3925034e+03 - 2.5442163e+03 -1.5965696e+03 4.3912035e+03 - 2.5825296e+03 -1.5435488e+03 4.3898018e+03 - 2.6196987e+03 -1.4903157e+03 4.3883079e+03 - 2.6556966e+03 -1.4369074e+03 4.3867321e+03 - 2.6904988e+03 -1.3833590e+03 4.3850848e+03 - 2.7240830e+03 -1.3297029e+03 4.3833772e+03 - 2.7564292e+03 -1.2759696e+03 4.3816203e+03 - 2.7875198e+03 -1.2221866e+03 4.3798256e+03 - 2.8173393e+03 -1.1683792e+03 4.3780047e+03 - 2.8458740e+03 -1.1145701e+03 4.3761690e+03 - 2.8731126e+03 -1.0607793e+03 4.3743301e+03 - 2.8990451e+03 -1.0070244e+03 4.3724993e+03 - 2.9236637e+03 -9.5332039e+02 4.3706877e+03 - 2.9469616e+03 -8.9968001e+02 4.3689063e+03 - 2.9689338e+03 -8.4611349e+02 4.3671656e+03 - 2.9895764e+03 -7.9262883e+02 4.3654757e+03 - 3.0088865e+03 -7.3923185e+02 4.3638465e+03 - 3.0268622e+03 -6.8592629e+02 4.3622873e+03 - 3.0435025e+03 -6.3271396e+02 4.3608068e+03 - 3.0588071e+03 -5.7959483e+02 4.3594134e+03 - 3.0727759e+03 -5.2656715e+02 4.3581147e+03 - 3.0854097e+03 -4.7362764e+02 4.3569178e+03 - 3.0967092e+03 -4.2077158e+02 4.3558292e+03 - 3.1066756e+03 -3.6799293e+02 4.3548547e+03 - 3.1153099e+03 -3.1528455e+02 4.3539996e+03 - 3.1226135e+03 -2.6263827e+02 4.3532683e+03 - 3.1285873e+03 -2.1004504e+02 4.3526647e+03 - 3.1332325e+03 -1.5749513e+02 4.3521919e+03 - 3.1365499e+03 -1.0497820e+02 4.3518525e+03 - 3.1385400e+03 -5.2483509e+01 4.3516481e+03 - 3.1392033e+03 0.0000000e+00 4.3515799e+03 - 3.2144622e+03 4.8134273e-09 4.3159903e+03 - 3.2137846e+03 5.3175777e+01 4.3160657e+03 - 3.2117515e+03 1.0636531e+02 4.3162916e+03 - 3.2083624e+03 1.5958221e+02 4.3166668e+03 - 3.2036163e+03 2.1283977e+02 4.3171895e+03 - 3.1975119e+03 2.6615085e+02 4.3178569e+03 - 3.1900476e+03 3.1952766e+02 4.3186656e+03 - 3.1812215e+03 3.7298168e+02 4.3196115e+03 - 3.1710317e+03 4.2652345e+02 4.3206896e+03 - 3.1594760e+03 4.8016246e+02 4.3218944e+03 - 3.1465524e+03 5.3390694e+02 4.3232194e+03 - 3.1322590e+03 5.8776376e+02 4.3246575e+03 - 3.1165939e+03 6.4173825e+02 4.3262011e+03 - 3.0995558e+03 6.9583404e+02 4.3278417e+03 - 3.0811439e+03 7.5005292e+02 4.3295703e+03 - 3.0613578e+03 8.0439472e+02 4.3313772e+03 - 3.0401983e+03 8.5885712e+02 4.3332523e+03 - 3.0176668e+03 9.1343554e+02 4.3351846e+03 - 2.9937660e+03 9.6812303e+02 4.3371631e+03 - 2.9685000e+03 1.0229101e+03 4.3391759e+03 - 2.9418740e+03 1.0777847e+03 4.3412112e+03 - 2.9138954e+03 1.1327321e+03 4.3432564e+03 - 2.8845728e+03 1.1877348e+03 4.3452991e+03 - 2.8539174e+03 1.2427723e+03 4.3473263e+03 - 2.8219420e+03 1.2978215e+03 4.3493253e+03 - 2.7886620e+03 1.3528562e+03 4.3512832e+03 - 2.7540950e+03 1.4078476e+03 4.3531871e+03 - 2.7182612e+03 1.4627639e+03 4.3550245e+03 - 2.6811833e+03 1.5175707e+03 4.3567830e+03 - 2.6428868e+03 1.5722306e+03 4.3584507e+03 - 2.6033997e+03 1.6267042e+03 4.3600161e+03 - 2.5627528e+03 1.6809494e+03 4.3614684e+03 - 2.5209795e+03 1.7349220e+03 4.3627974e+03 - 2.4781160e+03 1.7885758e+03 4.3639936e+03 - 2.4342006e+03 1.8418630e+03 4.3650484e+03 - 2.3892744e+03 1.8947342e+03 4.3659544e+03 - 2.3433805e+03 1.9471389e+03 4.3667048e+03 - 2.2965643e+03 1.9990258e+03 4.3672943e+03 - 2.2488726e+03 2.0503429e+03 4.3677184e+03 - 2.2003542e+03 2.1010380e+03 4.3679742e+03 - 2.1510590e+03 2.1510590e+03 4.3680596e+03 - 2.1010380e+03 2.2003542e+03 4.3679742e+03 - 2.0503429e+03 2.2488726e+03 4.3677184e+03 - 1.9990258e+03 2.2965643e+03 4.3672943e+03 - 1.9471389e+03 2.3433805e+03 4.3667048e+03 - 1.8947342e+03 2.3892744e+03 4.3659544e+03 - 1.8418630e+03 2.4342006e+03 4.3650484e+03 - 1.7885758e+03 2.4781160e+03 4.3639936e+03 - 1.7349220e+03 2.5209795e+03 4.3627974e+03 - 1.6809494e+03 2.5627528e+03 4.3614684e+03 - 1.6267042e+03 2.6033997e+03 4.3600161e+03 - 1.5722306e+03 2.6428868e+03 4.3584507e+03 - 1.5175707e+03 2.6811833e+03 4.3567830e+03 - 1.4627639e+03 2.7182612e+03 4.3550245e+03 - 1.4078476e+03 2.7540950e+03 4.3531871e+03 - 1.3528562e+03 2.7886620e+03 4.3512832e+03 - 1.2978215e+03 2.8219420e+03 4.3493253e+03 - 1.2427723e+03 2.8539174e+03 4.3473263e+03 - 1.1877348e+03 2.8845728e+03 4.3452991e+03 - 1.1327321e+03 2.9138954e+03 4.3432564e+03 - 1.0777847e+03 2.9418740e+03 4.3412112e+03 - 1.0229101e+03 2.9685000e+03 4.3391759e+03 - 9.6812303e+02 2.9937660e+03 4.3371631e+03 - 9.1343554e+02 3.0176668e+03 4.3351846e+03 - 8.5885712e+02 3.0401983e+03 4.3332523e+03 - 8.0439472e+02 3.0613578e+03 4.3313772e+03 - 7.5005292e+02 3.0811439e+03 4.3295703e+03 - 6.9583404e+02 3.0995558e+03 4.3278417e+03 - 6.4173825e+02 3.1165939e+03 4.3262011e+03 - 5.8776376e+02 3.1322590e+03 4.3246575e+03 - 5.3390694e+02 3.1465524e+03 4.3232194e+03 - 4.8016246e+02 3.1594760e+03 4.3218944e+03 - 4.2652345e+02 3.1710317e+03 4.3206896e+03 - 3.7298168e+02 3.1812215e+03 4.3196115e+03 - 3.1952766e+02 3.1900476e+03 4.3186656e+03 - 2.6615085e+02 3.1975119e+03 4.3178569e+03 - 2.1283977e+02 3.2036163e+03 4.3171895e+03 - 1.5958221e+02 3.2083624e+03 4.3166668e+03 - 1.0636531e+02 3.2117515e+03 4.3162916e+03 - 5.3175777e+01 3.2137846e+03 4.3160657e+03 - 0.0000000e+00 3.2144622e+03 4.3159903e+03 - -5.3175777e+01 3.2137846e+03 4.3160657e+03 - -1.0636531e+02 3.2117515e+03 4.3162916e+03 - -1.5958221e+02 3.2083624e+03 4.3166668e+03 - -2.1283977e+02 3.2036163e+03 4.3171895e+03 - -2.6615085e+02 3.1975119e+03 4.3178569e+03 - -3.1952766e+02 3.1900476e+03 4.3186656e+03 - -3.7298168e+02 3.1812215e+03 4.3196115e+03 - -4.2652345e+02 3.1710317e+03 4.3206896e+03 - -4.8016246e+02 3.1594760e+03 4.3218944e+03 - -5.3390694e+02 3.1465524e+03 4.3232194e+03 - -5.8776376e+02 3.1322590e+03 4.3246575e+03 - -6.4173825e+02 3.1165939e+03 4.3262011e+03 - -6.9583404e+02 3.0995558e+03 4.3278417e+03 - -7.5005292e+02 3.0811439e+03 4.3295703e+03 - -8.0439472e+02 3.0613578e+03 4.3313772e+03 - -8.5885712e+02 3.0401983e+03 4.3332523e+03 - -9.1343554e+02 3.0176668e+03 4.3351846e+03 - -9.6812303e+02 2.9937660e+03 4.3371631e+03 - -1.0229101e+03 2.9685000e+03 4.3391759e+03 - -1.0777847e+03 2.9418740e+03 4.3412112e+03 - -1.1327321e+03 2.9138954e+03 4.3432564e+03 - -1.1877348e+03 2.8845728e+03 4.3452991e+03 - -1.2427723e+03 2.8539174e+03 4.3473263e+03 - -1.2978215e+03 2.8219420e+03 4.3493253e+03 - -1.3528562e+03 2.7886620e+03 4.3512832e+03 - -1.4078476e+03 2.7540950e+03 4.3531871e+03 - -1.4627639e+03 2.7182612e+03 4.3550245e+03 - -1.5175707e+03 2.6811833e+03 4.3567830e+03 - -1.5722306e+03 2.6428868e+03 4.3584507e+03 - -1.6267042e+03 2.6033997e+03 4.3600161e+03 - -1.6809494e+03 2.5627528e+03 4.3614684e+03 - -1.7349220e+03 2.5209795e+03 4.3627974e+03 - -1.7885758e+03 2.4781160e+03 4.3639936e+03 - -1.8418630e+03 2.4342006e+03 4.3650484e+03 - -1.8947342e+03 2.3892744e+03 4.3659544e+03 - -1.9471389e+03 2.3433805e+03 4.3667048e+03 - -1.9990258e+03 2.2965643e+03 4.3672943e+03 - -2.0503429e+03 2.2488726e+03 4.3677184e+03 - -2.1010380e+03 2.2003542e+03 4.3679742e+03 - -2.1510590e+03 2.1510590e+03 4.3680596e+03 - -2.2003542e+03 2.1010380e+03 4.3679742e+03 - -2.2488726e+03 2.0503429e+03 4.3677184e+03 - -2.2965643e+03 1.9990258e+03 4.3672943e+03 - -2.3433805e+03 1.9471389e+03 4.3667048e+03 - -2.3892744e+03 1.8947342e+03 4.3659544e+03 - -2.4342006e+03 1.8418630e+03 4.3650484e+03 - -2.4781160e+03 1.7885758e+03 4.3639936e+03 - -2.5209795e+03 1.7349220e+03 4.3627974e+03 - -2.5627528e+03 1.6809494e+03 4.3614684e+03 - -2.6033997e+03 1.6267042e+03 4.3600161e+03 - -2.6428868e+03 1.5722306e+03 4.3584507e+03 - -2.6811833e+03 1.5175707e+03 4.3567830e+03 - -2.7182612e+03 1.4627639e+03 4.3550245e+03 - -2.7540950e+03 1.4078476e+03 4.3531871e+03 - -2.7886620e+03 1.3528562e+03 4.3512832e+03 - -2.8219420e+03 1.2978215e+03 4.3493253e+03 - -2.8539174e+03 1.2427723e+03 4.3473263e+03 - -2.8845728e+03 1.1877348e+03 4.3452991e+03 - -2.9138954e+03 1.1327321e+03 4.3432564e+03 - -2.9418740e+03 1.0777847e+03 4.3412112e+03 - -2.9685000e+03 1.0229101e+03 4.3391759e+03 - -2.9937660e+03 9.6812303e+02 4.3371631e+03 - -3.0176668e+03 9.1343554e+02 4.3351846e+03 - -3.0401983e+03 8.5885712e+02 4.3332523e+03 - -3.0613578e+03 8.0439472e+02 4.3313772e+03 - -3.0811439e+03 7.5005292e+02 4.3295703e+03 - -3.0995558e+03 6.9583404e+02 4.3278417e+03 - -3.1165939e+03 6.4173825e+02 4.3262011e+03 - -3.1322590e+03 5.8776376e+02 4.3246575e+03 - -3.1465524e+03 5.3390694e+02 4.3232194e+03 - -3.1594760e+03 4.8016246e+02 4.3218944e+03 - -3.1710317e+03 4.2652345e+02 4.3206896e+03 - -3.1812215e+03 3.7298168e+02 4.3196115e+03 - -3.1900476e+03 3.1952766e+02 4.3186656e+03 - -3.1975119e+03 2.6615085e+02 4.3178569e+03 - -3.2036163e+03 2.1283977e+02 4.3171895e+03 - -3.2083624e+03 1.5958221e+02 4.3166668e+03 - -3.2117515e+03 1.0636531e+02 4.3162916e+03 - -3.2137846e+03 5.3175777e+01 4.3160657e+03 - -3.2144622e+03 0.0000000e+00 4.3159903e+03 - -3.2137846e+03 -5.3175777e+01 4.3160657e+03 - -3.2117515e+03 -1.0636531e+02 4.3162916e+03 - -3.2083624e+03 -1.5958221e+02 4.3166668e+03 - -3.2036163e+03 -2.1283977e+02 4.3171895e+03 - -3.1975119e+03 -2.6615085e+02 4.3178569e+03 - -3.1900476e+03 -3.1952766e+02 4.3186656e+03 - -3.1812215e+03 -3.7298168e+02 4.3196115e+03 - -3.1710317e+03 -4.2652345e+02 4.3206896e+03 - -3.1594760e+03 -4.8016246e+02 4.3218944e+03 - -3.1465524e+03 -5.3390694e+02 4.3232194e+03 - -3.1322590e+03 -5.8776376e+02 4.3246575e+03 - -3.1165939e+03 -6.4173825e+02 4.3262011e+03 - -3.0995558e+03 -6.9583404e+02 4.3278417e+03 - -3.0811439e+03 -7.5005292e+02 4.3295703e+03 - -3.0613578e+03 -8.0439472e+02 4.3313772e+03 - -3.0401983e+03 -8.5885712e+02 4.3332523e+03 - -3.0176668e+03 -9.1343554e+02 4.3351846e+03 - -2.9937660e+03 -9.6812303e+02 4.3371631e+03 - -2.9685000e+03 -1.0229101e+03 4.3391759e+03 - -2.9418740e+03 -1.0777847e+03 4.3412112e+03 - -2.9138954e+03 -1.1327321e+03 4.3432564e+03 - -2.8845728e+03 -1.1877348e+03 4.3452991e+03 - -2.8539174e+03 -1.2427723e+03 4.3473263e+03 - -2.8219420e+03 -1.2978215e+03 4.3493253e+03 - -2.7886620e+03 -1.3528562e+03 4.3512832e+03 - -2.7540950e+03 -1.4078476e+03 4.3531871e+03 - -2.7182612e+03 -1.4627639e+03 4.3550245e+03 - -2.6811833e+03 -1.5175707e+03 4.3567830e+03 - -2.6428868e+03 -1.5722306e+03 4.3584507e+03 - -2.6033997e+03 -1.6267042e+03 4.3600161e+03 - -2.5627528e+03 -1.6809494e+03 4.3614684e+03 - -2.5209795e+03 -1.7349220e+03 4.3627974e+03 - -2.4781160e+03 -1.7885758e+03 4.3639936e+03 - -2.4342006e+03 -1.8418630e+03 4.3650484e+03 - -2.3892744e+03 -1.8947342e+03 4.3659544e+03 - -2.3433805e+03 -1.9471389e+03 4.3667048e+03 - -2.2965643e+03 -1.9990258e+03 4.3672943e+03 - -2.2488726e+03 -2.0503429e+03 4.3677184e+03 - -2.2003542e+03 -2.1010380e+03 4.3679742e+03 - -2.1510590e+03 -2.1510590e+03 4.3680596e+03 - -2.1010380e+03 -2.2003542e+03 4.3679742e+03 - -2.0503429e+03 -2.2488726e+03 4.3677184e+03 - -1.9990258e+03 -2.2965643e+03 4.3672943e+03 - -1.9471389e+03 -2.3433805e+03 4.3667048e+03 - -1.8947342e+03 -2.3892744e+03 4.3659544e+03 - -1.8418630e+03 -2.4342006e+03 4.3650484e+03 - -1.7885758e+03 -2.4781160e+03 4.3639936e+03 - -1.7349220e+03 -2.5209795e+03 4.3627974e+03 - -1.6809494e+03 -2.5627528e+03 4.3614684e+03 - -1.6267042e+03 -2.6033997e+03 4.3600161e+03 - -1.5722306e+03 -2.6428868e+03 4.3584507e+03 - -1.5175707e+03 -2.6811833e+03 4.3567830e+03 - -1.4627639e+03 -2.7182612e+03 4.3550245e+03 - -1.4078476e+03 -2.7540950e+03 4.3531871e+03 - -1.3528562e+03 -2.7886620e+03 4.3512832e+03 - -1.2978215e+03 -2.8219420e+03 4.3493253e+03 - -1.2427723e+03 -2.8539174e+03 4.3473263e+03 - -1.1877348e+03 -2.8845728e+03 4.3452991e+03 - -1.1327321e+03 -2.9138954e+03 4.3432564e+03 - -1.0777847e+03 -2.9418740e+03 4.3412112e+03 - -1.0229101e+03 -2.9685000e+03 4.3391759e+03 - -9.6812303e+02 -2.9937660e+03 4.3371631e+03 - -9.1343554e+02 -3.0176668e+03 4.3351846e+03 - -8.5885712e+02 -3.0401983e+03 4.3332523e+03 - -8.0439472e+02 -3.0613578e+03 4.3313772e+03 - -7.5005292e+02 -3.0811439e+03 4.3295703e+03 - -6.9583404e+02 -3.0995558e+03 4.3278417e+03 - -6.4173825e+02 -3.1165939e+03 4.3262011e+03 - -5.8776376e+02 -3.1322590e+03 4.3246575e+03 - -5.3390694e+02 -3.1465524e+03 4.3232194e+03 - -4.8016246e+02 -3.1594760e+03 4.3218944e+03 - -4.2652345e+02 -3.1710317e+03 4.3206896e+03 - -3.7298168e+02 -3.1812215e+03 4.3196115e+03 - -3.1952766e+02 -3.1900476e+03 4.3186656e+03 - -2.6615085e+02 -3.1975119e+03 4.3178569e+03 - -2.1283977e+02 -3.2036163e+03 4.3171895e+03 - -1.5958221e+02 -3.2083624e+03 4.3166668e+03 - -1.0636531e+02 -3.2117515e+03 4.3162916e+03 - -5.3175777e+01 -3.2137846e+03 4.3160657e+03 - 4.8134273e-09 -3.2144622e+03 4.3159903e+03 - 5.3175777e+01 -3.2137846e+03 4.3160657e+03 - 1.0636531e+02 -3.2117515e+03 4.3162916e+03 - 1.5958221e+02 -3.2083624e+03 4.3166668e+03 - 2.1283977e+02 -3.2036163e+03 4.3171895e+03 - 2.6615085e+02 -3.1975119e+03 4.3178569e+03 - 3.1952766e+02 -3.1900476e+03 4.3186656e+03 - 3.7298168e+02 -3.1812215e+03 4.3196115e+03 - 4.2652345e+02 -3.1710317e+03 4.3206896e+03 - 4.8016246e+02 -3.1594760e+03 4.3218944e+03 - 5.3390694e+02 -3.1465524e+03 4.3232194e+03 - 5.8776376e+02 -3.1322590e+03 4.3246575e+03 - 6.4173825e+02 -3.1165939e+03 4.3262011e+03 - 6.9583404e+02 -3.0995558e+03 4.3278417e+03 - 7.5005292e+02 -3.0811439e+03 4.3295703e+03 - 8.0439472e+02 -3.0613578e+03 4.3313772e+03 - 8.5885712e+02 -3.0401983e+03 4.3332523e+03 - 9.1343554e+02 -3.0176668e+03 4.3351846e+03 - 9.6812303e+02 -2.9937660e+03 4.3371631e+03 - 1.0229101e+03 -2.9685000e+03 4.3391759e+03 - 1.0777847e+03 -2.9418740e+03 4.3412112e+03 - 1.1327321e+03 -2.9138954e+03 4.3432564e+03 - 1.1877348e+03 -2.8845728e+03 4.3452991e+03 - 1.2427723e+03 -2.8539174e+03 4.3473263e+03 - 1.2978215e+03 -2.8219420e+03 4.3493253e+03 - 1.3528562e+03 -2.7886620e+03 4.3512832e+03 - 1.4078476e+03 -2.7540950e+03 4.3531871e+03 - 1.4627639e+03 -2.7182612e+03 4.3550245e+03 - 1.5175707e+03 -2.6811833e+03 4.3567830e+03 - 1.5722306e+03 -2.6428868e+03 4.3584507e+03 - 1.6267042e+03 -2.6033997e+03 4.3600161e+03 - 1.6809494e+03 -2.5627528e+03 4.3614684e+03 - 1.7349220e+03 -2.5209795e+03 4.3627974e+03 - 1.7885758e+03 -2.4781160e+03 4.3639936e+03 - 1.8418630e+03 -2.4342006e+03 4.3650484e+03 - 1.8947342e+03 -2.3892744e+03 4.3659544e+03 - 1.9471389e+03 -2.3433805e+03 4.3667048e+03 - 1.9990258e+03 -2.2965643e+03 4.3672943e+03 - 2.0503429e+03 -2.2488726e+03 4.3677184e+03 - 2.1010380e+03 -2.2003542e+03 4.3679742e+03 - 2.1510590e+03 -2.1510590e+03 4.3680596e+03 - 2.2003542e+03 -2.1010380e+03 4.3679742e+03 - 2.2488726e+03 -2.0503429e+03 4.3677184e+03 - 2.2965643e+03 -1.9990258e+03 4.3672943e+03 - 2.3433805e+03 -1.9471389e+03 4.3667048e+03 - 2.3892744e+03 -1.8947342e+03 4.3659544e+03 - 2.4342006e+03 -1.8418630e+03 4.3650484e+03 - 2.4781160e+03 -1.7885758e+03 4.3639936e+03 - 2.5209795e+03 -1.7349220e+03 4.3627974e+03 - 2.5627528e+03 -1.6809494e+03 4.3614684e+03 - 2.6033997e+03 -1.6267042e+03 4.3600161e+03 - 2.6428868e+03 -1.5722306e+03 4.3584507e+03 - 2.6811833e+03 -1.5175707e+03 4.3567830e+03 - 2.7182612e+03 -1.4627639e+03 4.3550245e+03 - 2.7540950e+03 -1.4078476e+03 4.3531871e+03 - 2.7886620e+03 -1.3528562e+03 4.3512832e+03 - 2.8219420e+03 -1.2978215e+03 4.3493253e+03 - 2.8539174e+03 -1.2427723e+03 4.3473263e+03 - 2.8845728e+03 -1.1877348e+03 4.3452991e+03 - 2.9138954e+03 -1.1327321e+03 4.3432564e+03 - 2.9418740e+03 -1.0777847e+03 4.3412112e+03 - 2.9685000e+03 -1.0229101e+03 4.3391759e+03 - 2.9937660e+03 -9.6812303e+02 4.3371631e+03 - 3.0176668e+03 -9.1343554e+02 4.3351846e+03 - 3.0401983e+03 -8.5885712e+02 4.3332523e+03 - 3.0613578e+03 -8.0439472e+02 4.3313772e+03 - 3.0811439e+03 -7.5005292e+02 4.3295703e+03 - 3.0995558e+03 -6.9583404e+02 4.3278417e+03 - 3.1165939e+03 -6.4173825e+02 4.3262011e+03 - 3.1322590e+03 -5.8776376e+02 4.3246575e+03 - 3.1465524e+03 -5.3390694e+02 4.3232194e+03 - 3.1594760e+03 -4.8016246e+02 4.3218944e+03 - 3.1710317e+03 -4.2652345e+02 4.3206896e+03 - 3.1812215e+03 -3.7298168e+02 4.3196115e+03 - 3.1900476e+03 -3.1952766e+02 4.3186656e+03 - 3.1975119e+03 -2.6615085e+02 4.3178569e+03 - 3.2036163e+03 -2.1283977e+02 4.3171895e+03 - 3.2083624e+03 -1.5958221e+02 4.3166668e+03 - 3.2117515e+03 -1.0636531e+02 4.3162916e+03 - 3.2137846e+03 -5.3175777e+01 4.3160657e+03 - 3.2144622e+03 0.0000000e+00 4.3159903e+03 - 3.2865820e+03 0.0000000e+00 4.2801355e+03 - 3.2858912e+03 5.3793806e+01 4.2802184e+03 - 3.2838186e+03 1.0760399e+02 4.2804665e+03 - 3.2803633e+03 1.6144677e+02 4.2808787e+03 - 3.2755241e+03 2.1533805e+02 4.2814529e+03 - 3.2692991e+03 2.6929325e+02 4.2821862e+03 - 3.2616861e+03 3.2332714e+02 4.2830750e+03 - 3.2526826e+03 3.7745369e+02 4.2841147e+03 - 3.2422856e+03 4.3168590e+02 4.2853001e+03 - 3.2304920e+03 4.8603564e+02 4.2866250e+03 - 3.2172987e+03 5.4051347e+02 4.2880826e+03 - 3.2027025e+03 5.9512848e+02 4.2896652e+03 - 3.1867005e+03 6.4988812e+02 4.2913645e+03 - 3.1692898e+03 7.0479804e+02 4.2931713e+03 - 3.1504682e+03 7.5986192e+02 4.2950758e+03 - 3.1302342e+03 8.1508129e+02 4.2970674e+03 - 3.1085867e+03 8.7045541e+02 4.2991350e+03 - 3.0855261e+03 9.2598106e+02 4.3012668e+03 - 3.0610534e+03 9.8165245e+02 4.3034506e+03 - 3.0351715e+03 1.0374611e+03 4.3056735e+03 - 3.0078844e+03 1.0933955e+03 4.3079222e+03 - 2.9791982e+03 1.1494414e+03 4.3101831e+03 - 2.9491208e+03 1.2055814e+03 4.3124422e+03 - 2.9176621e+03 1.2617949e+03 4.3146856e+03 - 2.8848347e+03 1.3180583e+03 4.3168987e+03 - 2.8506534e+03 1.3743447e+03 4.3190674e+03 - 2.8151356e+03 1.4306239e+03 4.3211774e+03 - 2.7783016e+03 1.4868626e+03 4.3232147e+03 - 2.7401747e+03 1.5430247e+03 4.3251654e+03 - 2.7007810e+03 1.5990706e+03 4.3270162e+03 - 2.6601495e+03 1.6549583e+03 4.3287542e+03 - 2.6183125e+03 1.7106429e+03 4.3303672e+03 - 2.5753051e+03 1.7660770e+03 4.3318438e+03 - 2.5311656e+03 1.8212110e+03 4.3331733e+03 - 2.4859347e+03 1.8759934e+03 4.3343460e+03 - 2.4396563e+03 1.9303709e+03 4.3353535e+03 - 2.3923767e+03 1.9842890e+03 4.3361882e+03 - 2.3441444e+03 2.0376920e+03 4.3368440e+03 - 2.2950101e+03 2.0905237e+03 4.3373159e+03 - 2.2450263e+03 2.1427275e+03 4.3376005e+03 - 2.1942471e+03 2.1942471e+03 4.3376956e+03 - 2.1427275e+03 2.2450263e+03 4.3376005e+03 - 2.0905237e+03 2.2950101e+03 4.3373159e+03 - 2.0376920e+03 2.3441444e+03 4.3368440e+03 - 1.9842890e+03 2.3923767e+03 4.3361882e+03 - 1.9303709e+03 2.4396563e+03 4.3353535e+03 - 1.8759934e+03 2.4859347e+03 4.3343460e+03 - 1.8212110e+03 2.5311656e+03 4.3331733e+03 - 1.7660770e+03 2.5753051e+03 4.3318438e+03 - 1.7106429e+03 2.6183125e+03 4.3303672e+03 - 1.6549583e+03 2.6601495e+03 4.3287542e+03 - 1.5990706e+03 2.7007810e+03 4.3270162e+03 - 1.5430247e+03 2.7401747e+03 4.3251654e+03 - 1.4868626e+03 2.7783016e+03 4.3232147e+03 - 1.4306239e+03 2.8151356e+03 4.3211774e+03 - 1.3743447e+03 2.8506534e+03 4.3190674e+03 - 1.3180583e+03 2.8848347e+03 4.3168987e+03 - 1.2617949e+03 2.9176621e+03 4.3146856e+03 - 1.2055814e+03 2.9491208e+03 4.3124422e+03 - 1.1494414e+03 2.9791982e+03 4.3101831e+03 - 1.0933955e+03 3.0078844e+03 4.3079222e+03 - 1.0374611e+03 3.0351715e+03 4.3056735e+03 - 9.8165245e+02 3.0610534e+03 4.3034506e+03 - 9.2598106e+02 3.0855261e+03 4.3012668e+03 - 8.7045541e+02 3.1085867e+03 4.2991350e+03 - 8.1508129e+02 3.1302342e+03 4.2970674e+03 - 7.5986192e+02 3.1504682e+03 4.2950758e+03 - 7.0479804e+02 3.1692898e+03 4.2931713e+03 - 6.4988812e+02 3.1867005e+03 4.2913645e+03 - 5.9512848e+02 3.2027025e+03 4.2896652e+03 - 5.4051347e+02 3.2172987e+03 4.2880826e+03 - 4.8603564e+02 3.2304920e+03 4.2866250e+03 - 4.3168590e+02 3.2422856e+03 4.2853001e+03 - 3.7745369e+02 3.2526826e+03 4.2841147e+03 - 3.2332714e+02 3.2616861e+03 4.2830750e+03 - 2.6929325e+02 3.2692991e+03 4.2821862e+03 - 2.1533805e+02 3.2755241e+03 4.2814529e+03 - 1.6144677e+02 3.2803633e+03 4.2808787e+03 - 1.0760399e+02 3.2838186e+03 4.2804665e+03 - 5.3793806e+01 3.2858912e+03 4.2802184e+03 - 0.0000000e+00 3.2865820e+03 4.2801355e+03 - -5.3793806e+01 3.2858912e+03 4.2802184e+03 - -1.0760399e+02 3.2838186e+03 4.2804665e+03 - -1.6144677e+02 3.2803633e+03 4.2808787e+03 - -2.1533805e+02 3.2755241e+03 4.2814529e+03 - -2.6929325e+02 3.2692991e+03 4.2821862e+03 - -3.2332714e+02 3.2616861e+03 4.2830750e+03 - -3.7745369e+02 3.2526826e+03 4.2841147e+03 - -4.3168590e+02 3.2422856e+03 4.2853001e+03 - -4.8603564e+02 3.2304920e+03 4.2866250e+03 - -5.4051347e+02 3.2172987e+03 4.2880826e+03 - -5.9512848e+02 3.2027025e+03 4.2896652e+03 - -6.4988812e+02 3.1867005e+03 4.2913645e+03 - -7.0479804e+02 3.1692898e+03 4.2931713e+03 - -7.5986192e+02 3.1504682e+03 4.2950758e+03 - -8.1508129e+02 3.1302342e+03 4.2970674e+03 - -8.7045541e+02 3.1085867e+03 4.2991350e+03 - -9.2598106e+02 3.0855261e+03 4.3012668e+03 - -9.8165245e+02 3.0610534e+03 4.3034506e+03 - -1.0374611e+03 3.0351715e+03 4.3056735e+03 - -1.0933955e+03 3.0078844e+03 4.3079222e+03 - -1.1494414e+03 2.9791982e+03 4.3101831e+03 - -1.2055814e+03 2.9491208e+03 4.3124422e+03 - -1.2617949e+03 2.9176621e+03 4.3146856e+03 - -1.3180583e+03 2.8848347e+03 4.3168987e+03 - -1.3743447e+03 2.8506534e+03 4.3190674e+03 - -1.4306239e+03 2.8151356e+03 4.3211774e+03 - -1.4868626e+03 2.7783016e+03 4.3232147e+03 - -1.5430247e+03 2.7401747e+03 4.3251654e+03 - -1.5990706e+03 2.7007810e+03 4.3270162e+03 - -1.6549583e+03 2.6601495e+03 4.3287542e+03 - -1.7106429e+03 2.6183125e+03 4.3303672e+03 - -1.7660770e+03 2.5753051e+03 4.3318438e+03 - -1.8212110e+03 2.5311656e+03 4.3331733e+03 - -1.8759934e+03 2.4859347e+03 4.3343460e+03 - -1.9303709e+03 2.4396563e+03 4.3353535e+03 - -1.9842890e+03 2.3923767e+03 4.3361882e+03 - -2.0376920e+03 2.3441444e+03 4.3368440e+03 - -2.0905237e+03 2.2950101e+03 4.3373159e+03 - -2.1427275e+03 2.2450263e+03 4.3376005e+03 - -2.1942471e+03 2.1942471e+03 4.3376956e+03 - -2.2450263e+03 2.1427275e+03 4.3376005e+03 - -2.2950101e+03 2.0905237e+03 4.3373159e+03 - -2.3441444e+03 2.0376920e+03 4.3368440e+03 - -2.3923767e+03 1.9842890e+03 4.3361882e+03 - -2.4396563e+03 1.9303709e+03 4.3353535e+03 - -2.4859347e+03 1.8759934e+03 4.3343460e+03 - -2.5311656e+03 1.8212110e+03 4.3331733e+03 - -2.5753051e+03 1.7660770e+03 4.3318438e+03 - -2.6183125e+03 1.7106429e+03 4.3303672e+03 - -2.6601495e+03 1.6549583e+03 4.3287542e+03 - -2.7007810e+03 1.5990706e+03 4.3270162e+03 - -2.7401747e+03 1.5430247e+03 4.3251654e+03 - -2.7783016e+03 1.4868626e+03 4.3232147e+03 - -2.8151356e+03 1.4306239e+03 4.3211774e+03 - -2.8506534e+03 1.3743447e+03 4.3190674e+03 - -2.8848347e+03 1.3180583e+03 4.3168987e+03 - -2.9176621e+03 1.2617949e+03 4.3146856e+03 - -2.9491208e+03 1.2055814e+03 4.3124422e+03 - -2.9791982e+03 1.1494414e+03 4.3101831e+03 - -3.0078844e+03 1.0933955e+03 4.3079222e+03 - -3.0351715e+03 1.0374611e+03 4.3056735e+03 - -3.0610534e+03 9.8165245e+02 4.3034506e+03 - -3.0855261e+03 9.2598106e+02 4.3012668e+03 - -3.1085867e+03 8.7045541e+02 4.2991350e+03 - -3.1302342e+03 8.1508129e+02 4.2970674e+03 - -3.1504682e+03 7.5986192e+02 4.2950758e+03 - -3.1692898e+03 7.0479804e+02 4.2931713e+03 - -3.1867005e+03 6.4988812e+02 4.2913645e+03 - -3.2027025e+03 5.9512848e+02 4.2896652e+03 - -3.2172987e+03 5.4051347e+02 4.2880826e+03 - -3.2304920e+03 4.8603564e+02 4.2866250e+03 - -3.2422856e+03 4.3168590e+02 4.2853001e+03 - -3.2526826e+03 3.7745369e+02 4.2841147e+03 - -3.2616861e+03 3.2332714e+02 4.2830750e+03 - -3.2692991e+03 2.6929325e+02 4.2821862e+03 - -3.2755241e+03 2.1533805e+02 4.2814529e+03 - -3.2803633e+03 1.6144677e+02 4.2808787e+03 - -3.2838186e+03 1.0760399e+02 4.2804665e+03 - -3.2858912e+03 5.3793806e+01 4.2802184e+03 - -3.2865820e+03 0.0000000e+00 4.2801355e+03 - -3.2858912e+03 -5.3793806e+01 4.2802184e+03 - -3.2838186e+03 -1.0760399e+02 4.2804665e+03 - -3.2803633e+03 -1.6144677e+02 4.2808787e+03 - -3.2755241e+03 -2.1533805e+02 4.2814529e+03 - -3.2692991e+03 -2.6929325e+02 4.2821862e+03 - -3.2616861e+03 -3.2332714e+02 4.2830750e+03 - -3.2526826e+03 -3.7745369e+02 4.2841147e+03 - -3.2422856e+03 -4.3168590e+02 4.2853001e+03 - -3.2304920e+03 -4.8603564e+02 4.2866250e+03 - -3.2172987e+03 -5.4051347e+02 4.2880826e+03 - -3.2027025e+03 -5.9512848e+02 4.2896652e+03 - -3.1867005e+03 -6.4988812e+02 4.2913645e+03 - -3.1692898e+03 -7.0479804e+02 4.2931713e+03 - -3.1504682e+03 -7.5986192e+02 4.2950758e+03 - -3.1302342e+03 -8.1508129e+02 4.2970674e+03 - -3.1085867e+03 -8.7045541e+02 4.2991350e+03 - -3.0855261e+03 -9.2598106e+02 4.3012668e+03 - -3.0610534e+03 -9.8165245e+02 4.3034506e+03 - -3.0351715e+03 -1.0374611e+03 4.3056735e+03 - -3.0078844e+03 -1.0933955e+03 4.3079222e+03 - -2.9791982e+03 -1.1494414e+03 4.3101831e+03 - -2.9491208e+03 -1.2055814e+03 4.3124422e+03 - -2.9176621e+03 -1.2617949e+03 4.3146856e+03 - -2.8848347e+03 -1.3180583e+03 4.3168987e+03 - -2.8506534e+03 -1.3743447e+03 4.3190674e+03 - -2.8151356e+03 -1.4306239e+03 4.3211774e+03 - -2.7783016e+03 -1.4868626e+03 4.3232147e+03 - -2.7401747e+03 -1.5430247e+03 4.3251654e+03 - -2.7007810e+03 -1.5990706e+03 4.3270162e+03 - -2.6601495e+03 -1.6549583e+03 4.3287542e+03 - -2.6183125e+03 -1.7106429e+03 4.3303672e+03 - -2.5753051e+03 -1.7660770e+03 4.3318438e+03 - -2.5311656e+03 -1.8212110e+03 4.3331733e+03 - -2.4859347e+03 -1.8759934e+03 4.3343460e+03 - -2.4396563e+03 -1.9303709e+03 4.3353535e+03 - -2.3923767e+03 -1.9842890e+03 4.3361882e+03 - -2.3441444e+03 -2.0376920e+03 4.3368440e+03 - -2.2950101e+03 -2.0905237e+03 4.3373159e+03 - -2.2450263e+03 -2.1427275e+03 4.3376005e+03 - -2.1942471e+03 -2.1942471e+03 4.3376956e+03 - -2.1427275e+03 -2.2450263e+03 4.3376005e+03 - -2.0905237e+03 -2.2950101e+03 4.3373159e+03 - -2.0376920e+03 -2.3441444e+03 4.3368440e+03 - -1.9842890e+03 -2.3923767e+03 4.3361882e+03 - -1.9303709e+03 -2.4396563e+03 4.3353535e+03 - -1.8759934e+03 -2.4859347e+03 4.3343460e+03 - -1.8212110e+03 -2.5311656e+03 4.3331733e+03 - -1.7660770e+03 -2.5753051e+03 4.3318438e+03 - -1.7106429e+03 -2.6183125e+03 4.3303672e+03 - -1.6549583e+03 -2.6601495e+03 4.3287542e+03 - -1.5990706e+03 -2.7007810e+03 4.3270162e+03 - -1.5430247e+03 -2.7401747e+03 4.3251654e+03 - -1.4868626e+03 -2.7783016e+03 4.3232147e+03 - -1.4306239e+03 -2.8151356e+03 4.3211774e+03 - -1.3743447e+03 -2.8506534e+03 4.3190674e+03 - -1.3180583e+03 -2.8848347e+03 4.3168987e+03 - -1.2617949e+03 -2.9176621e+03 4.3146856e+03 - -1.2055814e+03 -2.9491208e+03 4.3124422e+03 - -1.1494414e+03 -2.9791982e+03 4.3101831e+03 - -1.0933955e+03 -3.0078844e+03 4.3079222e+03 - -1.0374611e+03 -3.0351715e+03 4.3056735e+03 - -9.8165245e+02 -3.0610534e+03 4.3034506e+03 - -9.2598106e+02 -3.0855261e+03 4.3012668e+03 - -8.7045541e+02 -3.1085867e+03 4.2991350e+03 - -8.1508129e+02 -3.1302342e+03 4.2970674e+03 - -7.5986192e+02 -3.1504682e+03 4.2950758e+03 - -7.0479804e+02 -3.1692898e+03 4.2931713e+03 - -6.4988812e+02 -3.1867005e+03 4.2913645e+03 - -5.9512848e+02 -3.2027025e+03 4.2896652e+03 - -5.4051347e+02 -3.2172987e+03 4.2880826e+03 - -4.8603564e+02 -3.2304920e+03 4.2866250e+03 - -4.3168590e+02 -3.2422856e+03 4.2853001e+03 - -3.7745369e+02 -3.2526826e+03 4.2841147e+03 - -3.2332714e+02 -3.2616861e+03 4.2830750e+03 - -2.6929325e+02 -3.2692991e+03 4.2821862e+03 - -2.1533805e+02 -3.2755241e+03 4.2814529e+03 - -1.6144677e+02 -3.2803633e+03 4.2808787e+03 - -1.0760399e+02 -3.2838186e+03 4.2804665e+03 - -5.3793806e+01 -3.2858912e+03 4.2802184e+03 - 0.0000000e+00 -3.2865820e+03 4.2801355e+03 - 5.3793806e+01 -3.2858912e+03 4.2802184e+03 - 1.0760399e+02 -3.2838186e+03 4.2804665e+03 - 1.6144677e+02 -3.2803633e+03 4.2808787e+03 - 2.1533805e+02 -3.2755241e+03 4.2814529e+03 - 2.6929325e+02 -3.2692991e+03 4.2821862e+03 - 3.2332714e+02 -3.2616861e+03 4.2830750e+03 - 3.7745369e+02 -3.2526826e+03 4.2841147e+03 - 4.3168590e+02 -3.2422856e+03 4.2853001e+03 - 4.8603564e+02 -3.2304920e+03 4.2866250e+03 - 5.4051347e+02 -3.2172987e+03 4.2880826e+03 - 5.9512848e+02 -3.2027025e+03 4.2896652e+03 - 6.4988812e+02 -3.1867005e+03 4.2913645e+03 - 7.0479804e+02 -3.1692898e+03 4.2931713e+03 - 7.5986192e+02 -3.1504682e+03 4.2950758e+03 - 8.1508129e+02 -3.1302342e+03 4.2970674e+03 - 8.7045541e+02 -3.1085867e+03 4.2991350e+03 - 9.2598106e+02 -3.0855261e+03 4.3012668e+03 - 9.8165245e+02 -3.0610534e+03 4.3034506e+03 - 1.0374611e+03 -3.0351715e+03 4.3056735e+03 - 1.0933955e+03 -3.0078844e+03 4.3079222e+03 - 1.1494414e+03 -2.9791982e+03 4.3101831e+03 - 1.2055814e+03 -2.9491208e+03 4.3124422e+03 - 1.2617949e+03 -2.9176621e+03 4.3146856e+03 - 1.3180583e+03 -2.8848347e+03 4.3168987e+03 - 1.3743447e+03 -2.8506534e+03 4.3190674e+03 - 1.4306239e+03 -2.8151356e+03 4.3211774e+03 - 1.4868626e+03 -2.7783016e+03 4.3232147e+03 - 1.5430247e+03 -2.7401747e+03 4.3251654e+03 - 1.5990706e+03 -2.7007810e+03 4.3270162e+03 - 1.6549583e+03 -2.6601495e+03 4.3287542e+03 - 1.7106429e+03 -2.6183125e+03 4.3303672e+03 - 1.7660770e+03 -2.5753051e+03 4.3318438e+03 - 1.8212110e+03 -2.5311656e+03 4.3331733e+03 - 1.8759934e+03 -2.4859347e+03 4.3343460e+03 - 1.9303709e+03 -2.4396563e+03 4.3353535e+03 - 1.9842890e+03 -2.3923767e+03 4.3361882e+03 - 2.0376920e+03 -2.3441444e+03 4.3368440e+03 - 2.0905237e+03 -2.2950101e+03 4.3373159e+03 - 2.1427275e+03 -2.2450263e+03 4.3376005e+03 - 2.1942471e+03 -2.1942471e+03 4.3376956e+03 - 2.2450263e+03 -2.1427275e+03 4.3376005e+03 - 2.2950101e+03 -2.0905237e+03 4.3373159e+03 - 2.3441444e+03 -2.0376920e+03 4.3368440e+03 - 2.3923767e+03 -1.9842890e+03 4.3361882e+03 - 2.4396563e+03 -1.9303709e+03 4.3353535e+03 - 2.4859347e+03 -1.8759934e+03 4.3343460e+03 - 2.5311656e+03 -1.8212110e+03 4.3331733e+03 - 2.5753051e+03 -1.7660770e+03 4.3318438e+03 - 2.6183125e+03 -1.7106429e+03 4.3303672e+03 - 2.6601495e+03 -1.6549583e+03 4.3287542e+03 - 2.7007810e+03 -1.5990706e+03 4.3270162e+03 - 2.7401747e+03 -1.5430247e+03 4.3251654e+03 - 2.7783016e+03 -1.4868626e+03 4.3232147e+03 - 2.8151356e+03 -1.4306239e+03 4.3211774e+03 - 2.8506534e+03 -1.3743447e+03 4.3190674e+03 - 2.8848347e+03 -1.3180583e+03 4.3168987e+03 - 2.9176621e+03 -1.2617949e+03 4.3146856e+03 - 2.9491208e+03 -1.2055814e+03 4.3124422e+03 - 2.9791982e+03 -1.1494414e+03 4.3101831e+03 - 3.0078844e+03 -1.0933955e+03 4.3079222e+03 - 3.0351715e+03 -1.0374611e+03 4.3056735e+03 - 3.0610534e+03 -9.8165245e+02 4.3034506e+03 - 3.0855261e+03 -9.2598106e+02 4.3012668e+03 - 3.1085867e+03 -8.7045541e+02 4.2991350e+03 - 3.1302342e+03 -8.1508129e+02 4.2970674e+03 - 3.1504682e+03 -7.5986192e+02 4.2950758e+03 - 3.1692898e+03 -7.0479804e+02 4.2931713e+03 - 3.1867005e+03 -6.4988812e+02 4.2913645e+03 - 3.2027025e+03 -5.9512848e+02 4.2896652e+03 - 3.2172987e+03 -5.4051347e+02 4.2880826e+03 - 3.2304920e+03 -4.8603564e+02 4.2866250e+03 - 3.2422856e+03 -4.3168590e+02 4.2853001e+03 - 3.2526826e+03 -3.7745369e+02 4.2841147e+03 - 3.2616861e+03 -3.2332714e+02 4.2830750e+03 - 3.2692991e+03 -2.6929325e+02 4.2821862e+03 - 3.2755241e+03 -2.1533805e+02 4.2814529e+03 - 3.2803633e+03 -1.6144677e+02 4.2808787e+03 - 3.2838186e+03 -1.0760399e+02 4.2804665e+03 - 3.2858912e+03 -5.3793806e+01 4.2802184e+03 - 3.2865820e+03 0.0000000e+00 4.2801355e+03 - 3.3558267e+03 4.8134273e-09 4.2439972e+03 - 3.3551239e+03 5.4344263e+01 4.2440877e+03 - 3.3530149e+03 1.0870756e+02 4.2443587e+03 - 3.3494988e+03 1.6310877e+02 4.2448089e+03 - 3.3445739e+03 2.1756642e+02 4.2454362e+03 - 3.3382378e+03 2.7209855e+02 4.2462374e+03 - 3.3304876e+03 3.2672253e+02 4.2472086e+03 - 3.3213201e+03 3.8145489e+02 4.2483450e+03 - 3.3107313e+03 4.3631114e+02 4.2496410e+03 - 3.2987170e+03 4.9130560e+02 4.2510899e+03 - 3.2852731e+03 5.4645122e+02 4.2526844e+03 - 3.2703949e+03 6.0175941e+02 4.2544163e+03 - 3.2540781e+03 6.5723983e+02 4.2562766e+03 - 3.2363187e+03 7.1290025e+02 4.2582553e+03 - 3.2171127e+03 7.6874633e+02 4.2603419e+03 - 3.1964570e+03 8.2478145e+02 4.2625249e+03 - 3.1743493e+03 8.8100653e+02 4.2647923e+03 - 3.1507880e+03 9.3741985e+02 4.2671313e+03 - 3.1257728e+03 9.9401692e+02 4.2695284e+03 - 3.0993050e+03 1.0507903e+03 4.2719697e+03 - 3.0713873e+03 1.1077293e+03 4.2744407e+03 - 3.0420244e+03 1.1648202e+03 4.2769264e+03 - 3.0112230e+03 1.2220459e+03 4.2794116e+03 - 2.9789922e+03 1.2793857e+03 4.2818806e+03 - 2.9453435e+03 1.3368155e+03 4.2843177e+03 - 2.9102913e+03 1.3943077e+03 4.2867071e+03 - 2.8738528e+03 1.4518311e+03 4.2890330e+03 - 2.8360482e+03 1.5093510e+03 4.2912798e+03 - 2.7969010e+03 1.5668292e+03 4.2934323e+03 - 2.7564379e+03 1.6242241e+03 4.2954754e+03 - 2.7146891e+03 1.6814910e+03 4.2973949e+03 - 2.6716882e+03 1.7385821e+03 4.2991770e+03 - 2.6274720e+03 1.7954468e+03 4.3008090e+03 - 2.5820807e+03 1.8520319e+03 4.3022790e+03 - 2.5355580e+03 1.9082822e+03 4.3035760e+03 - 2.4879502e+03 1.9641401e+03 4.3046906e+03 - 2.4393069e+03 2.0195470e+03 4.3056142e+03 - 2.3896802e+03 2.0744428e+03 4.3063400e+03 - 2.3391245e+03 2.1287666e+03 4.3068624e+03 - 2.2876964e+03 2.1824575e+03 4.3071774e+03 - 2.2354542e+03 2.2354542e+03 4.3072827e+03 - 2.1824575e+03 2.2876964e+03 4.3071774e+03 - 2.1287666e+03 2.3391245e+03 4.3068624e+03 - 2.0744428e+03 2.3896802e+03 4.3063400e+03 - 2.0195470e+03 2.4393069e+03 4.3056142e+03 - 1.9641401e+03 2.4879502e+03 4.3046906e+03 - 1.9082822e+03 2.5355580e+03 4.3035760e+03 - 1.8520319e+03 2.5820807e+03 4.3022790e+03 - 1.7954468e+03 2.6274720e+03 4.3008090e+03 - 1.7385821e+03 2.6716882e+03 4.2991770e+03 - 1.6814910e+03 2.7146891e+03 4.2973949e+03 - 1.6242241e+03 2.7564379e+03 4.2954754e+03 - 1.5668292e+03 2.7969010e+03 4.2934323e+03 - 1.5093510e+03 2.8360482e+03 4.2912798e+03 - 1.4518311e+03 2.8738528e+03 4.2890330e+03 - 1.3943077e+03 2.9102913e+03 4.2867071e+03 - 1.3368155e+03 2.9453435e+03 4.2843177e+03 - 1.2793857e+03 2.9789922e+03 4.2818806e+03 - 1.2220459e+03 3.0112230e+03 4.2794116e+03 - 1.1648202e+03 3.0420244e+03 4.2769264e+03 - 1.1077293e+03 3.0713873e+03 4.2744407e+03 - 1.0507903e+03 3.0993050e+03 4.2719697e+03 - 9.9401692e+02 3.1257728e+03 4.2695284e+03 - 9.3741985e+02 3.1507880e+03 4.2671313e+03 - 8.8100653e+02 3.1743493e+03 4.2647923e+03 - 8.2478145e+02 3.1964570e+03 4.2625249e+03 - 7.6874633e+02 3.2171127e+03 4.2603419e+03 - 7.1290025e+02 3.2363187e+03 4.2582553e+03 - 6.5723983e+02 3.2540781e+03 4.2562766e+03 - 6.0175941e+02 3.2703949e+03 4.2544163e+03 - 5.4645122e+02 3.2852731e+03 4.2526844e+03 - 4.9130560e+02 3.2987170e+03 4.2510899e+03 - 4.3631114e+02 3.3107313e+03 4.2496410e+03 - 3.8145489e+02 3.3213201e+03 4.2483450e+03 - 3.2672253e+02 3.3304876e+03 4.2472086e+03 - 2.7209855e+02 3.3382378e+03 4.2462374e+03 - 2.1756642e+02 3.3445739e+03 4.2454362e+03 - 1.6310877e+02 3.3494988e+03 4.2448089e+03 - 1.0870756e+02 3.3530149e+03 4.2443587e+03 - 5.4344263e+01 3.3551239e+03 4.2440877e+03 - 0.0000000e+00 3.3558267e+03 4.2439972e+03 - -5.4344263e+01 3.3551239e+03 4.2440877e+03 - -1.0870756e+02 3.3530149e+03 4.2443587e+03 - -1.6310877e+02 3.3494988e+03 4.2448089e+03 - -2.1756642e+02 3.3445739e+03 4.2454362e+03 - -2.7209855e+02 3.3382378e+03 4.2462374e+03 - -3.2672253e+02 3.3304876e+03 4.2472086e+03 - -3.8145489e+02 3.3213201e+03 4.2483450e+03 - -4.3631114e+02 3.3107313e+03 4.2496410e+03 - -4.9130560e+02 3.2987170e+03 4.2510899e+03 - -5.4645122e+02 3.2852731e+03 4.2526844e+03 - -6.0175941e+02 3.2703949e+03 4.2544163e+03 - -6.5723983e+02 3.2540781e+03 4.2562766e+03 - -7.1290025e+02 3.2363187e+03 4.2582553e+03 - -7.6874633e+02 3.2171127e+03 4.2603419e+03 - -8.2478145e+02 3.1964570e+03 4.2625249e+03 - -8.8100653e+02 3.1743493e+03 4.2647923e+03 - -9.3741985e+02 3.1507880e+03 4.2671313e+03 - -9.9401692e+02 3.1257728e+03 4.2695284e+03 - -1.0507903e+03 3.0993050e+03 4.2719697e+03 - -1.1077293e+03 3.0713873e+03 4.2744407e+03 - -1.1648202e+03 3.0420244e+03 4.2769264e+03 - -1.2220459e+03 3.0112230e+03 4.2794116e+03 - -1.2793857e+03 2.9789922e+03 4.2818806e+03 - -1.3368155e+03 2.9453435e+03 4.2843177e+03 - -1.3943077e+03 2.9102913e+03 4.2867071e+03 - -1.4518311e+03 2.8738528e+03 4.2890330e+03 - -1.5093510e+03 2.8360482e+03 4.2912798e+03 - -1.5668292e+03 2.7969010e+03 4.2934323e+03 - -1.6242241e+03 2.7564379e+03 4.2954754e+03 - -1.6814910e+03 2.7146891e+03 4.2973949e+03 - -1.7385821e+03 2.6716882e+03 4.2991770e+03 - -1.7954468e+03 2.6274720e+03 4.3008090e+03 - -1.8520319e+03 2.5820807e+03 4.3022790e+03 - -1.9082822e+03 2.5355580e+03 4.3035760e+03 - -1.9641401e+03 2.4879502e+03 4.3046906e+03 - -2.0195470e+03 2.4393069e+03 4.3056142e+03 - -2.0744428e+03 2.3896802e+03 4.3063400e+03 - -2.1287666e+03 2.3391245e+03 4.3068624e+03 - -2.1824575e+03 2.2876964e+03 4.3071774e+03 - -2.2354542e+03 2.2354542e+03 4.3072827e+03 - -2.2876964e+03 2.1824575e+03 4.3071774e+03 - -2.3391245e+03 2.1287666e+03 4.3068624e+03 - -2.3896802e+03 2.0744428e+03 4.3063400e+03 - -2.4393069e+03 2.0195470e+03 4.3056142e+03 - -2.4879502e+03 1.9641401e+03 4.3046906e+03 - -2.5355580e+03 1.9082822e+03 4.3035760e+03 - -2.5820807e+03 1.8520319e+03 4.3022790e+03 - -2.6274720e+03 1.7954468e+03 4.3008090e+03 - -2.6716882e+03 1.7385821e+03 4.2991770e+03 - -2.7146891e+03 1.6814910e+03 4.2973949e+03 - -2.7564379e+03 1.6242241e+03 4.2954754e+03 - -2.7969010e+03 1.5668292e+03 4.2934323e+03 - -2.8360482e+03 1.5093510e+03 4.2912798e+03 - -2.8738528e+03 1.4518311e+03 4.2890330e+03 - -2.9102913e+03 1.3943077e+03 4.2867071e+03 - -2.9453435e+03 1.3368155e+03 4.2843177e+03 - -2.9789922e+03 1.2793857e+03 4.2818806e+03 - -3.0112230e+03 1.2220459e+03 4.2794116e+03 - -3.0420244e+03 1.1648202e+03 4.2769264e+03 - -3.0713873e+03 1.1077293e+03 4.2744407e+03 - -3.0993050e+03 1.0507903e+03 4.2719697e+03 - -3.1257728e+03 9.9401692e+02 4.2695284e+03 - -3.1507880e+03 9.3741985e+02 4.2671313e+03 - -3.1743493e+03 8.8100653e+02 4.2647923e+03 - -3.1964570e+03 8.2478145e+02 4.2625249e+03 - -3.2171127e+03 7.6874633e+02 4.2603419e+03 - -3.2363187e+03 7.1290025e+02 4.2582553e+03 - -3.2540781e+03 6.5723983e+02 4.2562766e+03 - -3.2703949e+03 6.0175941e+02 4.2544163e+03 - -3.2852731e+03 5.4645122e+02 4.2526844e+03 - -3.2987170e+03 4.9130560e+02 4.2510899e+03 - -3.3107313e+03 4.3631114e+02 4.2496410e+03 - -3.3213201e+03 3.8145489e+02 4.2483450e+03 - -3.3304876e+03 3.2672253e+02 4.2472086e+03 - -3.3382378e+03 2.7209855e+02 4.2462374e+03 - -3.3445739e+03 2.1756642e+02 4.2454362e+03 - -3.3494988e+03 1.6310877e+02 4.2448089e+03 - -3.3530149e+03 1.0870756e+02 4.2443587e+03 - -3.3551239e+03 5.4344263e+01 4.2440877e+03 - -3.3558267e+03 0.0000000e+00 4.2439972e+03 - -3.3551239e+03 -5.4344263e+01 4.2440877e+03 - -3.3530149e+03 -1.0870756e+02 4.2443587e+03 - -3.3494988e+03 -1.6310877e+02 4.2448089e+03 - -3.3445739e+03 -2.1756642e+02 4.2454362e+03 - -3.3382378e+03 -2.7209855e+02 4.2462374e+03 - -3.3304876e+03 -3.2672253e+02 4.2472086e+03 - -3.3213201e+03 -3.8145489e+02 4.2483450e+03 - -3.3107313e+03 -4.3631114e+02 4.2496410e+03 - -3.2987170e+03 -4.9130560e+02 4.2510899e+03 - -3.2852731e+03 -5.4645122e+02 4.2526844e+03 - -3.2703949e+03 -6.0175941e+02 4.2544163e+03 - -3.2540781e+03 -6.5723983e+02 4.2562766e+03 - -3.2363187e+03 -7.1290025e+02 4.2582553e+03 - -3.2171127e+03 -7.6874633e+02 4.2603419e+03 - -3.1964570e+03 -8.2478145e+02 4.2625249e+03 - -3.1743493e+03 -8.8100653e+02 4.2647923e+03 - -3.1507880e+03 -9.3741985e+02 4.2671313e+03 - -3.1257728e+03 -9.9401692e+02 4.2695284e+03 - -3.0993050e+03 -1.0507903e+03 4.2719697e+03 - -3.0713873e+03 -1.1077293e+03 4.2744407e+03 - -3.0420244e+03 -1.1648202e+03 4.2769264e+03 - -3.0112230e+03 -1.2220459e+03 4.2794116e+03 - -2.9789922e+03 -1.2793857e+03 4.2818806e+03 - -2.9453435e+03 -1.3368155e+03 4.2843177e+03 - -2.9102913e+03 -1.3943077e+03 4.2867071e+03 - -2.8738528e+03 -1.4518311e+03 4.2890330e+03 - -2.8360482e+03 -1.5093510e+03 4.2912798e+03 - -2.7969010e+03 -1.5668292e+03 4.2934323e+03 - -2.7564379e+03 -1.6242241e+03 4.2954754e+03 - -2.7146891e+03 -1.6814910e+03 4.2973949e+03 - -2.6716882e+03 -1.7385821e+03 4.2991770e+03 - -2.6274720e+03 -1.7954468e+03 4.3008090e+03 - -2.5820807e+03 -1.8520319e+03 4.3022790e+03 - -2.5355580e+03 -1.9082822e+03 4.3035760e+03 - -2.4879502e+03 -1.9641401e+03 4.3046906e+03 - -2.4393069e+03 -2.0195470e+03 4.3056142e+03 - -2.3896802e+03 -2.0744428e+03 4.3063400e+03 - -2.3391245e+03 -2.1287666e+03 4.3068624e+03 - -2.2876964e+03 -2.1824575e+03 4.3071774e+03 - -2.2354542e+03 -2.2354542e+03 4.3072827e+03 - -2.1824575e+03 -2.2876964e+03 4.3071774e+03 - -2.1287666e+03 -2.3391245e+03 4.3068624e+03 - -2.0744428e+03 -2.3896802e+03 4.3063400e+03 - -2.0195470e+03 -2.4393069e+03 4.3056142e+03 - -1.9641401e+03 -2.4879502e+03 4.3046906e+03 - -1.9082822e+03 -2.5355580e+03 4.3035760e+03 - -1.8520319e+03 -2.5820807e+03 4.3022790e+03 - -1.7954468e+03 -2.6274720e+03 4.3008090e+03 - -1.7385821e+03 -2.6716882e+03 4.2991770e+03 - -1.6814910e+03 -2.7146891e+03 4.2973949e+03 - -1.6242241e+03 -2.7564379e+03 4.2954754e+03 - -1.5668292e+03 -2.7969010e+03 4.2934323e+03 - -1.5093510e+03 -2.8360482e+03 4.2912798e+03 - -1.4518311e+03 -2.8738528e+03 4.2890330e+03 - -1.3943077e+03 -2.9102913e+03 4.2867071e+03 - -1.3368155e+03 -2.9453435e+03 4.2843177e+03 - -1.2793857e+03 -2.9789922e+03 4.2818806e+03 - -1.2220459e+03 -3.0112230e+03 4.2794116e+03 - -1.1648202e+03 -3.0420244e+03 4.2769264e+03 - -1.1077293e+03 -3.0713873e+03 4.2744407e+03 - -1.0507903e+03 -3.0993050e+03 4.2719697e+03 - -9.9401692e+02 -3.1257728e+03 4.2695284e+03 - -9.3741985e+02 -3.1507880e+03 4.2671313e+03 - -8.8100653e+02 -3.1743493e+03 4.2647923e+03 - -8.2478145e+02 -3.1964570e+03 4.2625249e+03 - -7.6874633e+02 -3.2171127e+03 4.2603419e+03 - -7.1290025e+02 -3.2363187e+03 4.2582553e+03 - -6.5723983e+02 -3.2540781e+03 4.2562766e+03 - -6.0175941e+02 -3.2703949e+03 4.2544163e+03 - -5.4645122e+02 -3.2852731e+03 4.2526844e+03 - -4.9130560e+02 -3.2987170e+03 4.2510899e+03 - -4.3631114e+02 -3.3107313e+03 4.2496410e+03 - -3.8145489e+02 -3.3213201e+03 4.2483450e+03 - -3.2672253e+02 -3.3304876e+03 4.2472086e+03 - -2.7209855e+02 -3.3382378e+03 4.2462374e+03 - -2.1756642e+02 -3.3445739e+03 4.2454362e+03 - -1.6310877e+02 -3.3494988e+03 4.2448089e+03 - -1.0870756e+02 -3.3530149e+03 4.2443587e+03 - -5.4344263e+01 -3.3551239e+03 4.2440877e+03 - 4.8134273e-09 -3.3558267e+03 4.2439972e+03 - 5.4344263e+01 -3.3551239e+03 4.2440877e+03 - 1.0870756e+02 -3.3530149e+03 4.2443587e+03 - 1.6310877e+02 -3.3494988e+03 4.2448089e+03 - 2.1756642e+02 -3.3445739e+03 4.2454362e+03 - 2.7209855e+02 -3.3382378e+03 4.2462374e+03 - 3.2672253e+02 -3.3304876e+03 4.2472086e+03 - 3.8145489e+02 -3.3213201e+03 4.2483450e+03 - 4.3631114e+02 -3.3107313e+03 4.2496410e+03 - 4.9130560e+02 -3.2987170e+03 4.2510899e+03 - 5.4645122e+02 -3.2852731e+03 4.2526844e+03 - 6.0175941e+02 -3.2703949e+03 4.2544163e+03 - 6.5723983e+02 -3.2540781e+03 4.2562766e+03 - 7.1290025e+02 -3.2363187e+03 4.2582553e+03 - 7.6874633e+02 -3.2171127e+03 4.2603419e+03 - 8.2478145e+02 -3.1964570e+03 4.2625249e+03 - 8.8100653e+02 -3.1743493e+03 4.2647923e+03 - 9.3741985e+02 -3.1507880e+03 4.2671313e+03 - 9.9401692e+02 -3.1257728e+03 4.2695284e+03 - 1.0507903e+03 -3.0993050e+03 4.2719697e+03 - 1.1077293e+03 -3.0713873e+03 4.2744407e+03 - 1.1648202e+03 -3.0420244e+03 4.2769264e+03 - 1.2220459e+03 -3.0112230e+03 4.2794116e+03 - 1.2793857e+03 -2.9789922e+03 4.2818806e+03 - 1.3368155e+03 -2.9453435e+03 4.2843177e+03 - 1.3943077e+03 -2.9102913e+03 4.2867071e+03 - 1.4518311e+03 -2.8738528e+03 4.2890330e+03 - 1.5093510e+03 -2.8360482e+03 4.2912798e+03 - 1.5668292e+03 -2.7969010e+03 4.2934323e+03 - 1.6242241e+03 -2.7564379e+03 4.2954754e+03 - 1.6814910e+03 -2.7146891e+03 4.2973949e+03 - 1.7385821e+03 -2.6716882e+03 4.2991770e+03 - 1.7954468e+03 -2.6274720e+03 4.3008090e+03 - 1.8520319e+03 -2.5820807e+03 4.3022790e+03 - 1.9082822e+03 -2.5355580e+03 4.3035760e+03 - 1.9641401e+03 -2.4879502e+03 4.3046906e+03 - 2.0195470e+03 -2.4393069e+03 4.3056142e+03 - 2.0744428e+03 -2.3896802e+03 4.3063400e+03 - 2.1287666e+03 -2.3391245e+03 4.3068624e+03 - 2.1824575e+03 -2.2876964e+03 4.3071774e+03 - 2.2354542e+03 -2.2354542e+03 4.3072827e+03 - 2.2876964e+03 -2.1824575e+03 4.3071774e+03 - 2.3391245e+03 -2.1287666e+03 4.3068624e+03 - 2.3896802e+03 -2.0744428e+03 4.3063400e+03 - 2.4393069e+03 -2.0195470e+03 4.3056142e+03 - 2.4879502e+03 -1.9641401e+03 4.3046906e+03 - 2.5355580e+03 -1.9082822e+03 4.3035760e+03 - 2.5820807e+03 -1.8520319e+03 4.3022790e+03 - 2.6274720e+03 -1.7954468e+03 4.3008090e+03 - 2.6716882e+03 -1.7385821e+03 4.2991770e+03 - 2.7146891e+03 -1.6814910e+03 4.2973949e+03 - 2.7564379e+03 -1.6242241e+03 4.2954754e+03 - 2.7969010e+03 -1.5668292e+03 4.2934323e+03 - 2.8360482e+03 -1.5093510e+03 4.2912798e+03 - 2.8738528e+03 -1.4518311e+03 4.2890330e+03 - 2.9102913e+03 -1.3943077e+03 4.2867071e+03 - 2.9453435e+03 -1.3368155e+03 4.2843177e+03 - 2.9789922e+03 -1.2793857e+03 4.2818806e+03 - 3.0112230e+03 -1.2220459e+03 4.2794116e+03 - 3.0420244e+03 -1.1648202e+03 4.2769264e+03 - 3.0713873e+03 -1.1077293e+03 4.2744407e+03 - 3.0993050e+03 -1.0507903e+03 4.2719697e+03 - 3.1257728e+03 -9.9401692e+02 4.2695284e+03 - 3.1507880e+03 -9.3741985e+02 4.2671313e+03 - 3.1743493e+03 -8.8100653e+02 4.2647923e+03 - 3.1964570e+03 -8.2478145e+02 4.2625249e+03 - 3.2171127e+03 -7.6874633e+02 4.2603419e+03 - 3.2363187e+03 -7.1290025e+02 4.2582553e+03 - 3.2540781e+03 -6.5723983e+02 4.2562766e+03 - 3.2703949e+03 -6.0175941e+02 4.2544163e+03 - 3.2852731e+03 -5.4645122e+02 4.2526844e+03 - 3.2987170e+03 -4.9130560e+02 4.2510899e+03 - 3.3107313e+03 -4.3631114e+02 4.2496410e+03 - 3.3213201e+03 -3.8145489e+02 4.2483450e+03 - 3.3304876e+03 -3.2672253e+02 4.2472086e+03 - 3.3382378e+03 -2.7209855e+02 4.2462374e+03 - 3.3445739e+03 -2.1756642e+02 4.2454362e+03 - 3.3494988e+03 -1.6310877e+02 4.2448089e+03 - 3.3530149e+03 -1.0870756e+02 4.2443587e+03 - 3.3551239e+03 -5.4344263e+01 4.2440877e+03 - 3.3558267e+03 -4.8134273e-09 4.2439972e+03 - 3.4224366e+03 0.0000000e+00 4.2075521e+03 - 3.4217226e+03 5.4833139e+01 4.2076504e+03 - 3.4195803e+03 1.0968800e+02 4.2079449e+03 - 3.4160084e+03 1.6458612e+02 4.2084342e+03 - 3.4110047e+03 2.1954871e+02 4.2091160e+03 - 3.4045664e+03 2.7459646e+02 4.2099869e+03 - 3.3966900e+03 3.2974935e+02 4.2110429e+03 - 3.3873711e+03 3.8502653e+02 4.2122788e+03 - 3.3766051e+03 4.4044606e+02 4.2136884e+03 - 3.3643865e+03 4.9602477e+02 4.2152650e+03 - 3.3507098e+03 5.5177809e+02 4.2170006e+03 - 3.3355693e+03 6.0771979e+02 4.2188863e+03 - 3.3189590e+03 6.6386186e+02 4.2209126e+03 - 3.3008733e+03 7.2021426e+02 4.2230688e+03 - 3.2813068e+03 7.7678472e+02 4.2253435e+03 - 3.2602547e+03 8.3357860e+02 4.2277245e+03 - 3.2377127e+03 8.9059860e+02 4.2301986e+03 - 3.2136778e+03 9.4784463e+02 4.2327522e+03 - 3.1881480e+03 1.0053136e+03 4.2353706e+03 - 3.1611228e+03 1.0629992e+03 4.2380386e+03 - 3.1326034e+03 1.1208919e+03 4.2407406e+03 - 3.1025930e+03 1.1789784e+03 4.2434601e+03 - 3.0710970e+03 1.2372420e+03 4.2461805e+03 - 3.0381232e+03 1.2956622e+03 4.2488848e+03 - 3.0036824e+03 1.3542144e+03 4.2515556e+03 - 2.9677880e+03 1.4128705e+03 4.2541755e+03 - 2.9304568e+03 1.4715983e+03 4.2567271e+03 - 2.8917090e+03 1.5303614e+03 4.2591933e+03 - 2.8515682e+03 1.5891200e+03 4.2615571e+03 - 2.8100617e+03 1.6478303e+03 4.2638019e+03 - 2.7672206e+03 1.7064449e+03 4.2659118e+03 - 2.7230796e+03 1.7649131e+03 4.2678715e+03 - 2.6776775e+03 1.8231809e+03 4.2696669e+03 - 2.6310565e+03 1.8811915e+03 4.2712846e+03 - 2.5832628e+03 1.9388855e+03 4.2727125e+03 - 2.5343458e+03 1.9962014e+03 4.2739397e+03 - 2.4843583e+03 2.0530758e+03 4.2749571e+03 - 2.4333559e+03 2.1094442e+03 4.2757566e+03 - 2.3813972e+03 2.1652409e+03 4.2763322e+03 - 2.3285430e+03 2.2204001e+03 4.2766793e+03 - 2.2748558e+03 2.2748558e+03 4.2767953e+03 - 2.2204001e+03 2.3285430e+03 4.2766793e+03 - 2.1652409e+03 2.3813972e+03 4.2763322e+03 - 2.1094442e+03 2.4333559e+03 4.2757566e+03 - 2.0530758e+03 2.4843583e+03 4.2749571e+03 - 1.9962014e+03 2.5343458e+03 4.2739397e+03 - 1.9388855e+03 2.5832628e+03 4.2727125e+03 - 1.8811915e+03 2.6310565e+03 4.2712846e+03 - 1.8231809e+03 2.6776775e+03 4.2696669e+03 - 1.7649131e+03 2.7230796e+03 4.2678715e+03 - 1.7064449e+03 2.7672206e+03 4.2659118e+03 - 1.6478303e+03 2.8100617e+03 4.2638019e+03 - 1.5891200e+03 2.8515682e+03 4.2615571e+03 - 1.5303614e+03 2.8917090e+03 4.2591933e+03 - 1.4715983e+03 2.9304568e+03 4.2567271e+03 - 1.4128705e+03 2.9677880e+03 4.2541755e+03 - 1.3542144e+03 3.0036824e+03 4.2515556e+03 - 1.2956622e+03 3.0381232e+03 4.2488848e+03 - 1.2372420e+03 3.0710970e+03 4.2461805e+03 - 1.1789784e+03 3.1025930e+03 4.2434601e+03 - 1.1208919e+03 3.1326034e+03 4.2407406e+03 - 1.0629992e+03 3.1611228e+03 4.2380386e+03 - 1.0053136e+03 3.1881480e+03 4.2353706e+03 - 9.4784463e+02 3.2136778e+03 4.2327522e+03 - 8.9059860e+02 3.2377127e+03 4.2301986e+03 - 8.3357860e+02 3.2602547e+03 4.2277245e+03 - 7.7678472e+02 3.2813068e+03 4.2253435e+03 - 7.2021426e+02 3.3008733e+03 4.2230688e+03 - 6.6386186e+02 3.3189590e+03 4.2209126e+03 - 6.0771979e+02 3.3355693e+03 4.2188863e+03 - 5.5177809e+02 3.3507098e+03 4.2170006e+03 - 4.9602477e+02 3.3643865e+03 4.2152650e+03 - 4.4044606e+02 3.3766051e+03 4.2136884e+03 - 3.8502653e+02 3.3873711e+03 4.2122788e+03 - 3.2974935e+02 3.3966900e+03 4.2110429e+03 - 2.7459646e+02 3.4045664e+03 4.2099869e+03 - 2.1954871e+02 3.4110047e+03 4.2091160e+03 - 1.6458612e+02 3.4160084e+03 4.2084342e+03 - 1.0968800e+02 3.4195803e+03 4.2079449e+03 - 5.4833139e+01 3.4217226e+03 4.2076504e+03 - 0.0000000e+00 3.4224366e+03 4.2075521e+03 - -5.4833139e+01 3.4217226e+03 4.2076504e+03 - -1.0968800e+02 3.4195803e+03 4.2079449e+03 - -1.6458612e+02 3.4160084e+03 4.2084342e+03 - -2.1954871e+02 3.4110047e+03 4.2091160e+03 - -2.7459646e+02 3.4045664e+03 4.2099869e+03 - -3.2974935e+02 3.3966900e+03 4.2110429e+03 - -3.8502653e+02 3.3873711e+03 4.2122788e+03 - -4.4044606e+02 3.3766051e+03 4.2136884e+03 - -4.9602477e+02 3.3643865e+03 4.2152650e+03 - -5.5177809e+02 3.3507098e+03 4.2170006e+03 - -6.0771979e+02 3.3355693e+03 4.2188863e+03 - -6.6386186e+02 3.3189590e+03 4.2209126e+03 - -7.2021426e+02 3.3008733e+03 4.2230688e+03 - -7.7678472e+02 3.2813068e+03 4.2253435e+03 - -8.3357860e+02 3.2602547e+03 4.2277245e+03 - -8.9059860e+02 3.2377127e+03 4.2301986e+03 - -9.4784463e+02 3.2136778e+03 4.2327522e+03 - -1.0053136e+03 3.1881480e+03 4.2353706e+03 - -1.0629992e+03 3.1611228e+03 4.2380386e+03 - -1.1208919e+03 3.1326034e+03 4.2407406e+03 - -1.1789784e+03 3.1025930e+03 4.2434601e+03 - -1.2372420e+03 3.0710970e+03 4.2461805e+03 - -1.2956622e+03 3.0381232e+03 4.2488848e+03 - -1.3542144e+03 3.0036824e+03 4.2515556e+03 - -1.4128705e+03 2.9677880e+03 4.2541755e+03 - -1.4715983e+03 2.9304568e+03 4.2567271e+03 - -1.5303614e+03 2.8917090e+03 4.2591933e+03 - -1.5891200e+03 2.8515682e+03 4.2615571e+03 - -1.6478303e+03 2.8100617e+03 4.2638019e+03 - -1.7064449e+03 2.7672206e+03 4.2659118e+03 - -1.7649131e+03 2.7230796e+03 4.2678715e+03 - -1.8231809e+03 2.6776775e+03 4.2696669e+03 - -1.8811915e+03 2.6310565e+03 4.2712846e+03 - -1.9388855e+03 2.5832628e+03 4.2727125e+03 - -1.9962014e+03 2.5343458e+03 4.2739397e+03 - -2.0530758e+03 2.4843583e+03 4.2749571e+03 - -2.1094442e+03 2.4333559e+03 4.2757566e+03 - -2.1652409e+03 2.3813972e+03 4.2763322e+03 - -2.2204001e+03 2.3285430e+03 4.2766793e+03 - -2.2748558e+03 2.2748558e+03 4.2767953e+03 - -2.3285430e+03 2.2204001e+03 4.2766793e+03 - -2.3813972e+03 2.1652409e+03 4.2763322e+03 - -2.4333559e+03 2.1094442e+03 4.2757566e+03 - -2.4843583e+03 2.0530758e+03 4.2749571e+03 - -2.5343458e+03 1.9962014e+03 4.2739397e+03 - -2.5832628e+03 1.9388855e+03 4.2727125e+03 - -2.6310565e+03 1.8811915e+03 4.2712846e+03 - -2.6776775e+03 1.8231809e+03 4.2696669e+03 - -2.7230796e+03 1.7649131e+03 4.2678715e+03 - -2.7672206e+03 1.7064449e+03 4.2659118e+03 - -2.8100617e+03 1.6478303e+03 4.2638019e+03 - -2.8515682e+03 1.5891200e+03 4.2615571e+03 - -2.8917090e+03 1.5303614e+03 4.2591933e+03 - -2.9304568e+03 1.4715983e+03 4.2567271e+03 - -2.9677880e+03 1.4128705e+03 4.2541755e+03 - -3.0036824e+03 1.3542144e+03 4.2515556e+03 - -3.0381232e+03 1.2956622e+03 4.2488848e+03 - -3.0710970e+03 1.2372420e+03 4.2461805e+03 - -3.1025930e+03 1.1789784e+03 4.2434601e+03 - -3.1326034e+03 1.1208919e+03 4.2407406e+03 - -3.1611228e+03 1.0629992e+03 4.2380386e+03 - -3.1881480e+03 1.0053136e+03 4.2353706e+03 - -3.2136778e+03 9.4784463e+02 4.2327522e+03 - -3.2377127e+03 8.9059860e+02 4.2301986e+03 - -3.2602547e+03 8.3357860e+02 4.2277245e+03 - -3.2813068e+03 7.7678472e+02 4.2253435e+03 - -3.3008733e+03 7.2021426e+02 4.2230688e+03 - -3.3189590e+03 6.6386186e+02 4.2209126e+03 - -3.3355693e+03 6.0771979e+02 4.2188863e+03 - -3.3507098e+03 5.5177809e+02 4.2170006e+03 - -3.3643865e+03 4.9602477e+02 4.2152650e+03 - -3.3766051e+03 4.4044606e+02 4.2136884e+03 - -3.3873711e+03 3.8502653e+02 4.2122788e+03 - -3.3966900e+03 3.2974935e+02 4.2110429e+03 - -3.4045664e+03 2.7459646e+02 4.2099869e+03 - -3.4110047e+03 2.1954871e+02 4.2091160e+03 - -3.4160084e+03 1.6458612e+02 4.2084342e+03 - -3.4195803e+03 1.0968800e+02 4.2079449e+03 - -3.4217226e+03 5.4833139e+01 4.2076504e+03 - -3.4224366e+03 0.0000000e+00 4.2075521e+03 - -3.4217226e+03 -5.4833139e+01 4.2076504e+03 - -3.4195803e+03 -1.0968800e+02 4.2079449e+03 - -3.4160084e+03 -1.6458612e+02 4.2084342e+03 - -3.4110047e+03 -2.1954871e+02 4.2091160e+03 - -3.4045664e+03 -2.7459646e+02 4.2099869e+03 - -3.3966900e+03 -3.2974935e+02 4.2110429e+03 - -3.3873711e+03 -3.8502653e+02 4.2122788e+03 - -3.3766051e+03 -4.4044606e+02 4.2136884e+03 - -3.3643865e+03 -4.9602477e+02 4.2152650e+03 - -3.3507098e+03 -5.5177809e+02 4.2170006e+03 - -3.3355693e+03 -6.0771979e+02 4.2188863e+03 - -3.3189590e+03 -6.6386186e+02 4.2209126e+03 - -3.3008733e+03 -7.2021426e+02 4.2230688e+03 - -3.2813068e+03 -7.7678472e+02 4.2253435e+03 - -3.2602547e+03 -8.3357860e+02 4.2277245e+03 - -3.2377127e+03 -8.9059860e+02 4.2301986e+03 - -3.2136778e+03 -9.4784463e+02 4.2327522e+03 - -3.1881480e+03 -1.0053136e+03 4.2353706e+03 - -3.1611228e+03 -1.0629992e+03 4.2380386e+03 - -3.1326034e+03 -1.1208919e+03 4.2407406e+03 - -3.1025930e+03 -1.1789784e+03 4.2434601e+03 - -3.0710970e+03 -1.2372420e+03 4.2461805e+03 - -3.0381232e+03 -1.2956622e+03 4.2488848e+03 - -3.0036824e+03 -1.3542144e+03 4.2515556e+03 - -2.9677880e+03 -1.4128705e+03 4.2541755e+03 - -2.9304568e+03 -1.4715983e+03 4.2567271e+03 - -2.8917090e+03 -1.5303614e+03 4.2591933e+03 - -2.8515682e+03 -1.5891200e+03 4.2615571e+03 - -2.8100617e+03 -1.6478303e+03 4.2638019e+03 - -2.7672206e+03 -1.7064449e+03 4.2659118e+03 - -2.7230796e+03 -1.7649131e+03 4.2678715e+03 - -2.6776775e+03 -1.8231809e+03 4.2696669e+03 - -2.6310565e+03 -1.8811915e+03 4.2712846e+03 - -2.5832628e+03 -1.9388855e+03 4.2727125e+03 - -2.5343458e+03 -1.9962014e+03 4.2739397e+03 - -2.4843583e+03 -2.0530758e+03 4.2749571e+03 - -2.4333559e+03 -2.1094442e+03 4.2757566e+03 - -2.3813972e+03 -2.1652409e+03 4.2763322e+03 - -2.3285430e+03 -2.2204001e+03 4.2766793e+03 - -2.2748558e+03 -2.2748558e+03 4.2767953e+03 - -2.2204001e+03 -2.3285430e+03 4.2766793e+03 - -2.1652409e+03 -2.3813972e+03 4.2763322e+03 - -2.1094442e+03 -2.4333559e+03 4.2757566e+03 - -2.0530758e+03 -2.4843583e+03 4.2749571e+03 - -1.9962014e+03 -2.5343458e+03 4.2739397e+03 - -1.9388855e+03 -2.5832628e+03 4.2727125e+03 - -1.8811915e+03 -2.6310565e+03 4.2712846e+03 - -1.8231809e+03 -2.6776775e+03 4.2696669e+03 - -1.7649131e+03 -2.7230796e+03 4.2678715e+03 - -1.7064449e+03 -2.7672206e+03 4.2659118e+03 - -1.6478303e+03 -2.8100617e+03 4.2638019e+03 - -1.5891200e+03 -2.8515682e+03 4.2615571e+03 - -1.5303614e+03 -2.8917090e+03 4.2591933e+03 - -1.4715983e+03 -2.9304568e+03 4.2567271e+03 - -1.4128705e+03 -2.9677880e+03 4.2541755e+03 - -1.3542144e+03 -3.0036824e+03 4.2515556e+03 - -1.2956622e+03 -3.0381232e+03 4.2488848e+03 - -1.2372420e+03 -3.0710970e+03 4.2461805e+03 - -1.1789784e+03 -3.1025930e+03 4.2434601e+03 - -1.1208919e+03 -3.1326034e+03 4.2407406e+03 - -1.0629992e+03 -3.1611228e+03 4.2380386e+03 - -1.0053136e+03 -3.1881480e+03 4.2353706e+03 - -9.4784463e+02 -3.2136778e+03 4.2327522e+03 - -8.9059860e+02 -3.2377127e+03 4.2301986e+03 - -8.3357860e+02 -3.2602547e+03 4.2277245e+03 - -7.7678472e+02 -3.2813068e+03 4.2253435e+03 - -7.2021426e+02 -3.3008733e+03 4.2230688e+03 - -6.6386186e+02 -3.3189590e+03 4.2209126e+03 - -6.0771979e+02 -3.3355693e+03 4.2188863e+03 - -5.5177809e+02 -3.3507098e+03 4.2170006e+03 - -4.9602477e+02 -3.3643865e+03 4.2152650e+03 - -4.4044606e+02 -3.3766051e+03 4.2136884e+03 - -3.8502653e+02 -3.3873711e+03 4.2122788e+03 - -3.2974935e+02 -3.3966900e+03 4.2110429e+03 - -2.7459646e+02 -3.4045664e+03 4.2099869e+03 - -2.1954871e+02 -3.4110047e+03 4.2091160e+03 - -1.6458612e+02 -3.4160084e+03 4.2084342e+03 - -1.0968800e+02 -3.4195803e+03 4.2079449e+03 - -5.4833139e+01 -3.4217226e+03 4.2076504e+03 - 0.0000000e+00 -3.4224366e+03 4.2075521e+03 - 5.4833139e+01 -3.4217226e+03 4.2076504e+03 - 1.0968800e+02 -3.4195803e+03 4.2079449e+03 - 1.6458612e+02 -3.4160084e+03 4.2084342e+03 - 2.1954871e+02 -3.4110047e+03 4.2091160e+03 - 2.7459646e+02 -3.4045664e+03 4.2099869e+03 - 3.2974935e+02 -3.3966900e+03 4.2110429e+03 - 3.8502653e+02 -3.3873711e+03 4.2122788e+03 - 4.4044606e+02 -3.3766051e+03 4.2136884e+03 - 4.9602477e+02 -3.3643865e+03 4.2152650e+03 - 5.5177809e+02 -3.3507098e+03 4.2170006e+03 - 6.0771979e+02 -3.3355693e+03 4.2188863e+03 - 6.6386186e+02 -3.3189590e+03 4.2209126e+03 - 7.2021426e+02 -3.3008733e+03 4.2230688e+03 - 7.7678472e+02 -3.2813068e+03 4.2253435e+03 - 8.3357860e+02 -3.2602547e+03 4.2277245e+03 - 8.9059860e+02 -3.2377127e+03 4.2301986e+03 - 9.4784463e+02 -3.2136778e+03 4.2327522e+03 - 1.0053136e+03 -3.1881480e+03 4.2353706e+03 - 1.0629992e+03 -3.1611228e+03 4.2380386e+03 - 1.1208919e+03 -3.1326034e+03 4.2407406e+03 - 1.1789784e+03 -3.1025930e+03 4.2434601e+03 - 1.2372420e+03 -3.0710970e+03 4.2461805e+03 - 1.2956622e+03 -3.0381232e+03 4.2488848e+03 - 1.3542144e+03 -3.0036824e+03 4.2515556e+03 - 1.4128705e+03 -2.9677880e+03 4.2541755e+03 - 1.4715983e+03 -2.9304568e+03 4.2567271e+03 - 1.5303614e+03 -2.8917090e+03 4.2591933e+03 - 1.5891200e+03 -2.8515682e+03 4.2615571e+03 - 1.6478303e+03 -2.8100617e+03 4.2638019e+03 - 1.7064449e+03 -2.7672206e+03 4.2659118e+03 - 1.7649131e+03 -2.7230796e+03 4.2678715e+03 - 1.8231809e+03 -2.6776775e+03 4.2696669e+03 - 1.8811915e+03 -2.6310565e+03 4.2712846e+03 - 1.9388855e+03 -2.5832628e+03 4.2727125e+03 - 1.9962014e+03 -2.5343458e+03 4.2739397e+03 - 2.0530758e+03 -2.4843583e+03 4.2749571e+03 - 2.1094442e+03 -2.4333559e+03 4.2757566e+03 - 2.1652409e+03 -2.3813972e+03 4.2763322e+03 - 2.2204001e+03 -2.3285430e+03 4.2766793e+03 - 2.2748558e+03 -2.2748558e+03 4.2767953e+03 - 2.3285430e+03 -2.2204001e+03 4.2766793e+03 - 2.3813972e+03 -2.1652409e+03 4.2763322e+03 - 2.4333559e+03 -2.1094442e+03 4.2757566e+03 - 2.4843583e+03 -2.0530758e+03 4.2749571e+03 - 2.5343458e+03 -1.9962014e+03 4.2739397e+03 - 2.5832628e+03 -1.9388855e+03 4.2727125e+03 - 2.6310565e+03 -1.8811915e+03 4.2712846e+03 - 2.6776775e+03 -1.8231809e+03 4.2696669e+03 - 2.7230796e+03 -1.7649131e+03 4.2678715e+03 - 2.7672206e+03 -1.7064449e+03 4.2659118e+03 - 2.8100617e+03 -1.6478303e+03 4.2638019e+03 - 2.8515682e+03 -1.5891200e+03 4.2615571e+03 - 2.8917090e+03 -1.5303614e+03 4.2591933e+03 - 2.9304568e+03 -1.4715983e+03 4.2567271e+03 - 2.9677880e+03 -1.4128705e+03 4.2541755e+03 - 3.0036824e+03 -1.3542144e+03 4.2515556e+03 - 3.0381232e+03 -1.2956622e+03 4.2488848e+03 - 3.0710970e+03 -1.2372420e+03 4.2461805e+03 - 3.1025930e+03 -1.1789784e+03 4.2434601e+03 - 3.1326034e+03 -1.1208919e+03 4.2407406e+03 - 3.1611228e+03 -1.0629992e+03 4.2380386e+03 - 3.1881480e+03 -1.0053136e+03 4.2353706e+03 - 3.2136778e+03 -9.4784463e+02 4.2327522e+03 - 3.2377127e+03 -8.9059860e+02 4.2301986e+03 - 3.2602547e+03 -8.3357860e+02 4.2277245e+03 - 3.2813068e+03 -7.7678472e+02 4.2253435e+03 - 3.3008733e+03 -7.2021426e+02 4.2230688e+03 - 3.3189590e+03 -6.6386186e+02 4.2209126e+03 - 3.3355693e+03 -6.0771979e+02 4.2188863e+03 - 3.3507098e+03 -5.5177809e+02 4.2170006e+03 - 3.3643865e+03 -4.9602477e+02 4.2152650e+03 - 3.3766051e+03 -4.4044606e+02 4.2136884e+03 - 3.3873711e+03 -3.8502653e+02 4.2122788e+03 - 3.3966900e+03 -3.2974935e+02 4.2110429e+03 - 3.4045664e+03 -2.7459646e+02 4.2099869e+03 - 3.4110047e+03 -2.1954871e+02 4.2091160e+03 - 3.4160084e+03 -1.6458612e+02 4.2084342e+03 - 3.4195803e+03 -1.0968800e+02 4.2079449e+03 - 3.4217226e+03 -5.4833139e+01 4.2076504e+03 - 3.4224366e+03 0.0000000e+00 4.2075521e+03 - 3.4866294e+03 0.0000000e+00 4.1707734e+03 - 3.4859053e+03 5.5265810e+01 4.1708797e+03 - 3.4837325e+03 1.1055603e+02 4.1711983e+03 - 3.4801094e+03 1.6589490e+02 4.1717276e+03 - 3.4750336e+03 2.2130631e+02 4.1724653e+03 - 3.4685016e+03 2.7681361e+02 4.1734077e+03 - 3.4605091e+03 3.3243945e+02 4.1745506e+03 - 3.4510510e+03 3.8820560e+02 4.1758885e+03 - 3.4401214e+03 4.4413272e+02 4.1774149e+03 - 3.4277139e+03 5.0024022e+02 4.1791226e+03 - 3.4138216e+03 5.5654602e+02 4.1810031e+03 - 3.3984373e+03 6.1306637e+02 4.1830471e+03 - 3.3815536e+03 6.6981563e+02 4.1852442e+03 - 3.3631631e+03 7.2680604e+02 4.1875832e+03 - 3.3432588e+03 7.8404755e+02 4.1900519e+03 - 3.3218339e+03 8.4154754e+02 4.1926371e+03 - 3.2988827e+03 8.9931065e+02 4.1953249e+03 - 3.2743999e+03 9.5733851e+02 4.1981002e+03 - 3.2483819e+03 1.0156296e+03 4.2009476e+03 - 3.2208263e+03 1.0741789e+03 4.2038506e+03 - 3.1917327e+03 1.1329779e+03 4.2067921e+03 - 3.1611024e+03 1.1920143e+03 4.2097544e+03 - 3.1289396e+03 1.2512717e+03 4.2127193e+03 - 3.0952506e+03 1.3107298e+03 4.2156683e+03 - 3.0600449e+03 1.3703639e+03 4.2185825e+03 - 3.0233354e+03 1.4301452e+03 4.2214427e+03 - 2.9851380e+03 1.4900405e+03 4.2242301e+03 - 2.9454727e+03 1.5500123e+03 4.2269254e+03 - 2.9043632e+03 1.6100188e+03 4.2295102e+03 - 2.8618372e+03 1.6700141e+03 4.2319661e+03 - 2.8179265e+03 1.7299480e+03 4.2342755e+03 - 2.7726674e+03 1.7897669e+03 4.2364216e+03 - 2.7261001e+03 1.8494134e+03 4.2383884e+03 - 2.6782692e+03 1.9088268e+03 4.2401612e+03 - 2.6292232e+03 1.9679436e+03 4.2417266e+03 - 2.5790147e+03 2.0266979e+03 4.2430724e+03 - 2.5276997e+03 2.0850217e+03 4.2441883e+03 - 2.4753380e+03 2.1428455e+03 4.2450654e+03 - 2.4219919e+03 2.2000988e+03 4.2456970e+03 - 2.3677268e+03 2.2567106e+03 4.2460779e+03 - 2.3126100e+03 2.3126100e+03 4.2462052e+03 - 2.2567106e+03 2.3677268e+03 4.2460779e+03 - 2.2000988e+03 2.4219919e+03 4.2456970e+03 - 2.1428455e+03 2.4753380e+03 4.2450654e+03 - 2.0850217e+03 2.5276997e+03 4.2441883e+03 - 2.0266979e+03 2.5790147e+03 4.2430724e+03 - 1.9679436e+03 2.6292232e+03 4.2417266e+03 - 1.9088268e+03 2.6782692e+03 4.2401612e+03 - 1.8494134e+03 2.7261001e+03 4.2383884e+03 - 1.7897669e+03 2.7726674e+03 4.2364216e+03 - 1.7299480e+03 2.8179265e+03 4.2342755e+03 - 1.6700141e+03 2.8618372e+03 4.2319661e+03 - 1.6100188e+03 2.9043632e+03 4.2295102e+03 - 1.5500123e+03 2.9454727e+03 4.2269254e+03 - 1.4900405e+03 2.9851380e+03 4.2242301e+03 - 1.4301452e+03 3.0233354e+03 4.2214427e+03 - 1.3703639e+03 3.0600449e+03 4.2185825e+03 - 1.3107298e+03 3.0952506e+03 4.2156683e+03 - 1.2512717e+03 3.1289396e+03 4.2127193e+03 - 1.1920143e+03 3.1611024e+03 4.2097544e+03 - 1.1329779e+03 3.1917327e+03 4.2067921e+03 - 1.0741789e+03 3.2208263e+03 4.2038506e+03 - 1.0156296e+03 3.2483819e+03 4.2009476e+03 - 9.5733851e+02 3.2743999e+03 4.1981002e+03 - 8.9931065e+02 3.2988827e+03 4.1953249e+03 - 8.4154754e+02 3.3218339e+03 4.1926371e+03 - 7.8404755e+02 3.3432588e+03 4.1900519e+03 - 7.2680604e+02 3.3631631e+03 4.1875832e+03 - 6.6981563e+02 3.3815536e+03 4.1852442e+03 - 6.1306637e+02 3.3984373e+03 4.1830471e+03 - 5.5654602e+02 3.4138216e+03 4.1810031e+03 - 5.0024022e+02 3.4277139e+03 4.1791226e+03 - 4.4413272e+02 3.4401214e+03 4.1774149e+03 - 3.8820560e+02 3.4510510e+03 4.1758885e+03 - 3.3243945e+02 3.4605091e+03 4.1745506e+03 - 2.7681361e+02 3.4685016e+03 4.1734077e+03 - 2.2130631e+02 3.4750336e+03 4.1724653e+03 - 1.6589490e+02 3.4801094e+03 4.1717276e+03 - 1.1055603e+02 3.4837325e+03 4.1711983e+03 - 5.5265810e+01 3.4859053e+03 4.1708797e+03 - 0.0000000e+00 3.4866294e+03 4.1707734e+03 - -5.5265810e+01 3.4859053e+03 4.1708797e+03 - -1.1055603e+02 3.4837325e+03 4.1711983e+03 - -1.6589490e+02 3.4801094e+03 4.1717276e+03 - -2.2130631e+02 3.4750336e+03 4.1724653e+03 - -2.7681361e+02 3.4685016e+03 4.1734077e+03 - -3.3243945e+02 3.4605091e+03 4.1745506e+03 - -3.8820560e+02 3.4510510e+03 4.1758885e+03 - -4.4413272e+02 3.4401214e+03 4.1774149e+03 - -5.0024022e+02 3.4277139e+03 4.1791226e+03 - -5.5654602e+02 3.4138216e+03 4.1810031e+03 - -6.1306637e+02 3.3984373e+03 4.1830471e+03 - -6.6981563e+02 3.3815536e+03 4.1852442e+03 - -7.2680604e+02 3.3631631e+03 4.1875832e+03 - -7.8404755e+02 3.3432588e+03 4.1900519e+03 - -8.4154754e+02 3.3218339e+03 4.1926371e+03 - -8.9931065e+02 3.2988827e+03 4.1953249e+03 - -9.5733851e+02 3.2743999e+03 4.1981002e+03 - -1.0156296e+03 3.2483819e+03 4.2009476e+03 - -1.0741789e+03 3.2208263e+03 4.2038506e+03 - -1.1329779e+03 3.1917327e+03 4.2067921e+03 - -1.1920143e+03 3.1611024e+03 4.2097544e+03 - -1.2512717e+03 3.1289396e+03 4.2127193e+03 - -1.3107298e+03 3.0952506e+03 4.2156683e+03 - -1.3703639e+03 3.0600449e+03 4.2185825e+03 - -1.4301452e+03 3.0233354e+03 4.2214427e+03 - -1.4900405e+03 2.9851380e+03 4.2242301e+03 - -1.5500123e+03 2.9454727e+03 4.2269254e+03 - -1.6100188e+03 2.9043632e+03 4.2295102e+03 - -1.6700141e+03 2.8618372e+03 4.2319661e+03 - -1.7299480e+03 2.8179265e+03 4.2342755e+03 - -1.7897669e+03 2.7726674e+03 4.2364216e+03 - -1.8494134e+03 2.7261001e+03 4.2383884e+03 - -1.9088268e+03 2.6782692e+03 4.2401612e+03 - -1.9679436e+03 2.6292232e+03 4.2417266e+03 - -2.0266979e+03 2.5790147e+03 4.2430724e+03 - -2.0850217e+03 2.5276997e+03 4.2441883e+03 - -2.1428455e+03 2.4753380e+03 4.2450654e+03 - -2.2000988e+03 2.4219919e+03 4.2456970e+03 - -2.2567106e+03 2.3677268e+03 4.2460779e+03 - -2.3126100e+03 2.3126100e+03 4.2462052e+03 - -2.3677268e+03 2.2567106e+03 4.2460779e+03 - -2.4219919e+03 2.2000988e+03 4.2456970e+03 - -2.4753380e+03 2.1428455e+03 4.2450654e+03 - -2.5276997e+03 2.0850217e+03 4.2441883e+03 - -2.5790147e+03 2.0266979e+03 4.2430724e+03 - -2.6292232e+03 1.9679436e+03 4.2417266e+03 - -2.6782692e+03 1.9088268e+03 4.2401612e+03 - -2.7261001e+03 1.8494134e+03 4.2383884e+03 - -2.7726674e+03 1.7897669e+03 4.2364216e+03 - -2.8179265e+03 1.7299480e+03 4.2342755e+03 - -2.8618372e+03 1.6700141e+03 4.2319661e+03 - -2.9043632e+03 1.6100188e+03 4.2295102e+03 - -2.9454727e+03 1.5500123e+03 4.2269254e+03 - -2.9851380e+03 1.4900405e+03 4.2242301e+03 - -3.0233354e+03 1.4301452e+03 4.2214427e+03 - -3.0600449e+03 1.3703639e+03 4.2185825e+03 - -3.0952506e+03 1.3107298e+03 4.2156683e+03 - -3.1289396e+03 1.2512717e+03 4.2127193e+03 - -3.1611024e+03 1.1920143e+03 4.2097544e+03 - -3.1917327e+03 1.1329779e+03 4.2067921e+03 - -3.2208263e+03 1.0741789e+03 4.2038506e+03 - -3.2483819e+03 1.0156296e+03 4.2009476e+03 - -3.2743999e+03 9.5733851e+02 4.1981002e+03 - -3.2988827e+03 8.9931065e+02 4.1953249e+03 - -3.3218339e+03 8.4154754e+02 4.1926371e+03 - -3.3432588e+03 7.8404755e+02 4.1900519e+03 - -3.3631631e+03 7.2680604e+02 4.1875832e+03 - -3.3815536e+03 6.6981563e+02 4.1852442e+03 - -3.3984373e+03 6.1306637e+02 4.1830471e+03 - -3.4138216e+03 5.5654602e+02 4.1810031e+03 - -3.4277139e+03 5.0024022e+02 4.1791226e+03 - -3.4401214e+03 4.4413272e+02 4.1774149e+03 - -3.4510510e+03 3.8820560e+02 4.1758885e+03 - -3.4605091e+03 3.3243945e+02 4.1745506e+03 - -3.4685016e+03 2.7681361e+02 4.1734077e+03 - -3.4750336e+03 2.2130631e+02 4.1724653e+03 - -3.4801094e+03 1.6589490e+02 4.1717276e+03 - -3.4837325e+03 1.1055603e+02 4.1711983e+03 - -3.4859053e+03 5.5265810e+01 4.1708797e+03 - -3.4866294e+03 4.8134273e-09 4.1707734e+03 - -3.4859053e+03 -5.5265810e+01 4.1708797e+03 - -3.4837325e+03 -1.1055603e+02 4.1711983e+03 - -3.4801094e+03 -1.6589490e+02 4.1717276e+03 - -3.4750336e+03 -2.2130631e+02 4.1724653e+03 - -3.4685016e+03 -2.7681361e+02 4.1734077e+03 - -3.4605091e+03 -3.3243945e+02 4.1745506e+03 - -3.4510510e+03 -3.8820560e+02 4.1758885e+03 - -3.4401214e+03 -4.4413272e+02 4.1774149e+03 - -3.4277139e+03 -5.0024022e+02 4.1791226e+03 - -3.4138216e+03 -5.5654602e+02 4.1810031e+03 - -3.3984373e+03 -6.1306637e+02 4.1830471e+03 - -3.3815536e+03 -6.6981563e+02 4.1852442e+03 - -3.3631631e+03 -7.2680604e+02 4.1875832e+03 - -3.3432588e+03 -7.8404755e+02 4.1900519e+03 - -3.3218339e+03 -8.4154754e+02 4.1926371e+03 - -3.2988827e+03 -8.9931065e+02 4.1953249e+03 - -3.2743999e+03 -9.5733851e+02 4.1981002e+03 - -3.2483819e+03 -1.0156296e+03 4.2009476e+03 - -3.2208263e+03 -1.0741789e+03 4.2038506e+03 - -3.1917327e+03 -1.1329779e+03 4.2067921e+03 - -3.1611024e+03 -1.1920143e+03 4.2097544e+03 - -3.1289396e+03 -1.2512717e+03 4.2127193e+03 - -3.0952506e+03 -1.3107298e+03 4.2156683e+03 - -3.0600449e+03 -1.3703639e+03 4.2185825e+03 - -3.0233354e+03 -1.4301452e+03 4.2214427e+03 - -2.9851380e+03 -1.4900405e+03 4.2242301e+03 - -2.9454727e+03 -1.5500123e+03 4.2269254e+03 - -2.9043632e+03 -1.6100188e+03 4.2295102e+03 - -2.8618372e+03 -1.6700141e+03 4.2319661e+03 - -2.8179265e+03 -1.7299480e+03 4.2342755e+03 - -2.7726674e+03 -1.7897669e+03 4.2364216e+03 - -2.7261001e+03 -1.8494134e+03 4.2383884e+03 - -2.6782692e+03 -1.9088268e+03 4.2401612e+03 - -2.6292232e+03 -1.9679436e+03 4.2417266e+03 - -2.5790147e+03 -2.0266979e+03 4.2430724e+03 - -2.5276997e+03 -2.0850217e+03 4.2441883e+03 - -2.4753380e+03 -2.1428455e+03 4.2450654e+03 - -2.4219919e+03 -2.2000988e+03 4.2456970e+03 - -2.3677268e+03 -2.2567106e+03 4.2460779e+03 - -2.3126100e+03 -2.3126100e+03 4.2462052e+03 - -2.2567106e+03 -2.3677268e+03 4.2460779e+03 - -2.2000988e+03 -2.4219919e+03 4.2456970e+03 - -2.1428455e+03 -2.4753380e+03 4.2450654e+03 - -2.0850217e+03 -2.5276997e+03 4.2441883e+03 - -2.0266979e+03 -2.5790147e+03 4.2430724e+03 - -1.9679436e+03 -2.6292232e+03 4.2417266e+03 - -1.9088268e+03 -2.6782692e+03 4.2401612e+03 - -1.8494134e+03 -2.7261001e+03 4.2383884e+03 - -1.7897669e+03 -2.7726674e+03 4.2364216e+03 - -1.7299480e+03 -2.8179265e+03 4.2342755e+03 - -1.6700141e+03 -2.8618372e+03 4.2319661e+03 - -1.6100188e+03 -2.9043632e+03 4.2295102e+03 - -1.5500123e+03 -2.9454727e+03 4.2269254e+03 - -1.4900405e+03 -2.9851380e+03 4.2242301e+03 - -1.4301452e+03 -3.0233354e+03 4.2214427e+03 - -1.3703639e+03 -3.0600449e+03 4.2185825e+03 - -1.3107298e+03 -3.0952506e+03 4.2156683e+03 - -1.2512717e+03 -3.1289396e+03 4.2127193e+03 - -1.1920143e+03 -3.1611024e+03 4.2097544e+03 - -1.1329779e+03 -3.1917327e+03 4.2067921e+03 - -1.0741789e+03 -3.2208263e+03 4.2038506e+03 - -1.0156296e+03 -3.2483819e+03 4.2009476e+03 - -9.5733851e+02 -3.2743999e+03 4.1981002e+03 - -8.9931065e+02 -3.2988827e+03 4.1953249e+03 - -8.4154754e+02 -3.3218339e+03 4.1926371e+03 - -7.8404755e+02 -3.3432588e+03 4.1900519e+03 - -7.2680604e+02 -3.3631631e+03 4.1875832e+03 - -6.6981563e+02 -3.3815536e+03 4.1852442e+03 - -6.1306637e+02 -3.3984373e+03 4.1830471e+03 - -5.5654602e+02 -3.4138216e+03 4.1810031e+03 - -5.0024022e+02 -3.4277139e+03 4.1791226e+03 - -4.4413272e+02 -3.4401214e+03 4.1774149e+03 - -3.8820560e+02 -3.4510510e+03 4.1758885e+03 - -3.3243945e+02 -3.4605091e+03 4.1745506e+03 - -2.7681361e+02 -3.4685016e+03 4.1734077e+03 - -2.2130631e+02 -3.4750336e+03 4.1724653e+03 - -1.6589490e+02 -3.4801094e+03 4.1717276e+03 - -1.1055603e+02 -3.4837325e+03 4.1711983e+03 - -5.5265810e+01 -3.4859053e+03 4.1708797e+03 - 0.0000000e+00 -3.4866294e+03 4.1707734e+03 - 5.5265810e+01 -3.4859053e+03 4.1708797e+03 - 1.1055603e+02 -3.4837325e+03 4.1711983e+03 - 1.6589490e+02 -3.4801094e+03 4.1717276e+03 - 2.2130631e+02 -3.4750336e+03 4.1724653e+03 - 2.7681361e+02 -3.4685016e+03 4.1734077e+03 - 3.3243945e+02 -3.4605091e+03 4.1745506e+03 - 3.8820560e+02 -3.4510510e+03 4.1758885e+03 - 4.4413272e+02 -3.4401214e+03 4.1774149e+03 - 5.0024022e+02 -3.4277139e+03 4.1791226e+03 - 5.5654602e+02 -3.4138216e+03 4.1810031e+03 - 6.1306637e+02 -3.3984373e+03 4.1830471e+03 - 6.6981563e+02 -3.3815536e+03 4.1852442e+03 - 7.2680604e+02 -3.3631631e+03 4.1875832e+03 - 7.8404755e+02 -3.3432588e+03 4.1900519e+03 - 8.4154754e+02 -3.3218339e+03 4.1926371e+03 - 8.9931065e+02 -3.2988827e+03 4.1953249e+03 - 9.5733851e+02 -3.2743999e+03 4.1981002e+03 - 1.0156296e+03 -3.2483819e+03 4.2009476e+03 - 1.0741789e+03 -3.2208263e+03 4.2038506e+03 - 1.1329779e+03 -3.1917327e+03 4.2067921e+03 - 1.1920143e+03 -3.1611024e+03 4.2097544e+03 - 1.2512717e+03 -3.1289396e+03 4.2127193e+03 - 1.3107298e+03 -3.0952506e+03 4.2156683e+03 - 1.3703639e+03 -3.0600449e+03 4.2185825e+03 - 1.4301452e+03 -3.0233354e+03 4.2214427e+03 - 1.4900405e+03 -2.9851380e+03 4.2242301e+03 - 1.5500123e+03 -2.9454727e+03 4.2269254e+03 - 1.6100188e+03 -2.9043632e+03 4.2295102e+03 - 1.6700141e+03 -2.8618372e+03 4.2319661e+03 - 1.7299480e+03 -2.8179265e+03 4.2342755e+03 - 1.7897669e+03 -2.7726674e+03 4.2364216e+03 - 1.8494134e+03 -2.7261001e+03 4.2383884e+03 - 1.9088268e+03 -2.6782692e+03 4.2401612e+03 - 1.9679436e+03 -2.6292232e+03 4.2417266e+03 - 2.0266979e+03 -2.5790147e+03 4.2430724e+03 - 2.0850217e+03 -2.5276997e+03 4.2441883e+03 - 2.1428455e+03 -2.4753380e+03 4.2450654e+03 - 2.2000988e+03 -2.4219919e+03 4.2456970e+03 - 2.2567106e+03 -2.3677268e+03 4.2460779e+03 - 2.3126100e+03 -2.3126100e+03 4.2462052e+03 - 2.3677268e+03 -2.2567106e+03 4.2460779e+03 - 2.4219919e+03 -2.2000988e+03 4.2456970e+03 - 2.4753380e+03 -2.1428455e+03 4.2450654e+03 - 2.5276997e+03 -2.0850217e+03 4.2441883e+03 - 2.5790147e+03 -2.0266979e+03 4.2430724e+03 - 2.6292232e+03 -1.9679436e+03 4.2417266e+03 - 2.6782692e+03 -1.9088268e+03 4.2401612e+03 - 2.7261001e+03 -1.8494134e+03 4.2383884e+03 - 2.7726674e+03 -1.7897669e+03 4.2364216e+03 - 2.8179265e+03 -1.7299480e+03 4.2342755e+03 - 2.8618372e+03 -1.6700141e+03 4.2319661e+03 - 2.9043632e+03 -1.6100188e+03 4.2295102e+03 - 2.9454727e+03 -1.5500123e+03 4.2269254e+03 - 2.9851380e+03 -1.4900405e+03 4.2242301e+03 - 3.0233354e+03 -1.4301452e+03 4.2214427e+03 - 3.0600449e+03 -1.3703639e+03 4.2185825e+03 - 3.0952506e+03 -1.3107298e+03 4.2156683e+03 - 3.1289396e+03 -1.2512717e+03 4.2127193e+03 - 3.1611024e+03 -1.1920143e+03 4.2097544e+03 - 3.1917327e+03 -1.1329779e+03 4.2067921e+03 - 3.2208263e+03 -1.0741789e+03 4.2038506e+03 - 3.2483819e+03 -1.0156296e+03 4.2009476e+03 - 3.2743999e+03 -9.5733851e+02 4.1981002e+03 - 3.2988827e+03 -8.9931065e+02 4.1953249e+03 - 3.3218339e+03 -8.4154754e+02 4.1926371e+03 - 3.3432588e+03 -7.8404755e+02 4.1900519e+03 - 3.3631631e+03 -7.2680604e+02 4.1875832e+03 - 3.3815536e+03 -6.6981563e+02 4.1852442e+03 - 3.3984373e+03 -6.1306637e+02 4.1830471e+03 - 3.4138216e+03 -5.5654602e+02 4.1810031e+03 - 3.4277139e+03 -5.0024022e+02 4.1791226e+03 - 3.4401214e+03 -4.4413272e+02 4.1774149e+03 - 3.4510510e+03 -3.8820560e+02 4.1758885e+03 - 3.4605091e+03 -3.3243945e+02 4.1745506e+03 - 3.4685016e+03 -2.7681361e+02 4.1734077e+03 - 3.4750336e+03 -2.2130631e+02 4.1724653e+03 - 3.4801094e+03 -1.6589490e+02 4.1717276e+03 - 3.4837325e+03 -1.1055603e+02 4.1711983e+03 - 3.4859053e+03 -5.5265810e+01 4.1708797e+03 - 3.4866294e+03 -4.8134273e-09 4.1707734e+03 - 3.5486030e+03 0.0000000e+00 4.1336309e+03 - 3.5478697e+03 5.5647091e+01 4.1337455e+03 - 3.5456690e+03 1.1132129e+02 4.1340887e+03 - 3.5419993e+03 1.6704953e+02 4.1346590e+03 - 3.5368576e+03 2.2285838e+02 4.1354537e+03 - 3.5302398e+03 2.7877389e+02 4.1364694e+03 - 3.5221410e+03 3.3482137e+02 4.1377012e+03 - 3.5125550e+03 3.9102524e+02 4.1391436e+03 - 3.5014749e+03 4.4740882e+02 4.1407897e+03 - 3.4888931e+03 5.0399409e+02 4.1426318e+03 - 3.4748014e+03 5.6080156e+02 4.1446610e+03 - 3.4591909e+03 6.1784998e+02 4.1468674e+03 - 3.4420528e+03 6.7515616e+02 4.1492401e+03 - 3.4233778e+03 7.3273474e+02 4.1517671e+03 - 3.4031572e+03 7.9059793e+02 4.1544354e+03 - 3.3813824e+03 8.4875528e+02 4.1572310e+03 - 3.3580454e+03 9.0721345e+02 4.1601390e+03 - 3.3331393e+03 9.6597594e+02 4.1631433e+03 - 3.3066583e+03 1.0250429e+03 4.1662273e+03 - 3.2785981e+03 1.0844108e+03 4.1693732e+03 - 3.2489562e+03 1.1440723e+03 4.1725627e+03 - 3.2177325e+03 1.2040160e+03 4.1757767e+03 - 3.1849292e+03 1.2642262e+03 4.1789954e+03 - 3.1505512e+03 1.3246828e+03 4.1821987e+03 - 3.1146067e+03 1.3853612e+03 4.1853659e+03 - 3.0771075e+03 1.4462321e+03 4.1884765e+03 - 3.0380688e+03 1.5072613e+03 4.1915094e+03 - 2.9975101e+03 1.5684100e+03 4.1944439e+03 - 2.9554550e+03 1.6296348e+03 4.1972595e+03 - 2.9119316e+03 1.6908873e+03 4.1999361e+03 - 2.8669726e+03 1.7521151e+03 4.2024543e+03 - 2.8206152e+03 1.8132611e+03 4.2047955e+03 - 2.7729015e+03 1.8742646e+03 4.2069420e+03 - 2.7238782e+03 1.9350610e+03 4.2088776e+03 - 2.6735964e+03 1.9955825e+03 4.2105873e+03 - 2.6221118e+03 2.0557585e+03 4.2120576e+03 - 2.5694840e+03 2.1155162e+03 4.2132770e+03 - 2.5157766e+03 2.1747811e+03 4.2142358e+03 - 2.4610563e+03 2.2334774e+03 4.2149262e+03 - 2.4053931e+03 2.2915288e+03 4.2153427e+03 - 2.3488592e+03 2.3488592e+03 4.2154819e+03 - 2.2915288e+03 2.4053931e+03 4.2153427e+03 - 2.2334774e+03 2.4610563e+03 4.2149262e+03 - 2.1747811e+03 2.5157766e+03 4.2142358e+03 - 2.1155162e+03 2.5694840e+03 4.2132770e+03 - 2.0557585e+03 2.6221118e+03 4.2120576e+03 - 1.9955825e+03 2.6735964e+03 4.2105873e+03 - 1.9350610e+03 2.7238782e+03 4.2088776e+03 - 1.8742646e+03 2.7729015e+03 4.2069420e+03 - 1.8132611e+03 2.8206152e+03 4.2047955e+03 - 1.7521151e+03 2.8669726e+03 4.2024543e+03 - 1.6908873e+03 2.9119316e+03 4.1999361e+03 - 1.6296348e+03 2.9554550e+03 4.1972595e+03 - 1.5684100e+03 2.9975101e+03 4.1944439e+03 - 1.5072613e+03 3.0380688e+03 4.1915094e+03 - 1.4462321e+03 3.0771075e+03 4.1884765e+03 - 1.3853612e+03 3.1146067e+03 4.1853659e+03 - 1.3246828e+03 3.1505512e+03 4.1821987e+03 - 1.2642262e+03 3.1849292e+03 4.1789954e+03 - 1.2040160e+03 3.2177325e+03 4.1757767e+03 - 1.1440723e+03 3.2489562e+03 4.1725627e+03 - 1.0844108e+03 3.2785981e+03 4.1693732e+03 - 1.0250429e+03 3.3066583e+03 4.1662273e+03 - 9.6597594e+02 3.3331393e+03 4.1631433e+03 - 9.0721345e+02 3.3580454e+03 4.1601390e+03 - 8.4875528e+02 3.3813824e+03 4.1572310e+03 - 7.9059793e+02 3.4031572e+03 4.1544354e+03 - 7.3273474e+02 3.4233778e+03 4.1517671e+03 - 6.7515616e+02 3.4420528e+03 4.1492401e+03 - 6.1784998e+02 3.4591909e+03 4.1468674e+03 - 5.6080156e+02 3.4748014e+03 4.1446610e+03 - 5.0399409e+02 3.4888931e+03 4.1426318e+03 - 4.4740882e+02 3.5014749e+03 4.1407897e+03 - 3.9102524e+02 3.5125550e+03 4.1391436e+03 - 3.3482137e+02 3.5221410e+03 4.1377012e+03 - 2.7877389e+02 3.5302398e+03 4.1364694e+03 - 2.2285838e+02 3.5368576e+03 4.1354537e+03 - 1.6704953e+02 3.5419993e+03 4.1346590e+03 - 1.1132129e+02 3.5456690e+03 4.1340887e+03 - 5.5647091e+01 3.5478697e+03 4.1337455e+03 - 0.0000000e+00 3.5486030e+03 4.1336309e+03 - -5.5647091e+01 3.5478697e+03 4.1337455e+03 - -1.1132129e+02 3.5456690e+03 4.1340887e+03 - -1.6704953e+02 3.5419993e+03 4.1346590e+03 - -2.2285838e+02 3.5368576e+03 4.1354537e+03 - -2.7877389e+02 3.5302398e+03 4.1364694e+03 - -3.3482137e+02 3.5221410e+03 4.1377012e+03 - -3.9102524e+02 3.5125550e+03 4.1391436e+03 - -4.4740882e+02 3.5014749e+03 4.1407897e+03 - -5.0399409e+02 3.4888931e+03 4.1426318e+03 - -5.6080156e+02 3.4748014e+03 4.1446610e+03 - -6.1784998e+02 3.4591909e+03 4.1468674e+03 - -6.7515616e+02 3.4420528e+03 4.1492401e+03 - -7.3273474e+02 3.4233778e+03 4.1517671e+03 - -7.9059793e+02 3.4031572e+03 4.1544354e+03 - -8.4875528e+02 3.3813824e+03 4.1572310e+03 - -9.0721345e+02 3.3580454e+03 4.1601390e+03 - -9.6597594e+02 3.3331393e+03 4.1631433e+03 - -1.0250429e+03 3.3066583e+03 4.1662273e+03 - -1.0844108e+03 3.2785981e+03 4.1693732e+03 - -1.1440723e+03 3.2489562e+03 4.1725627e+03 - -1.2040160e+03 3.2177325e+03 4.1757767e+03 - -1.2642262e+03 3.1849292e+03 4.1789954e+03 - -1.3246828e+03 3.1505512e+03 4.1821987e+03 - -1.3853612e+03 3.1146067e+03 4.1853659e+03 - -1.4462321e+03 3.0771075e+03 4.1884765e+03 - -1.5072613e+03 3.0380688e+03 4.1915094e+03 - -1.5684100e+03 2.9975101e+03 4.1944439e+03 - -1.6296348e+03 2.9554550e+03 4.1972595e+03 - -1.6908873e+03 2.9119316e+03 4.1999361e+03 - -1.7521151e+03 2.8669726e+03 4.2024543e+03 - -1.8132611e+03 2.8206152e+03 4.2047955e+03 - -1.8742646e+03 2.7729015e+03 4.2069420e+03 - -1.9350610e+03 2.7238782e+03 4.2088776e+03 - -1.9955825e+03 2.6735964e+03 4.2105873e+03 - -2.0557585e+03 2.6221118e+03 4.2120576e+03 - -2.1155162e+03 2.5694840e+03 4.2132770e+03 - -2.1747811e+03 2.5157766e+03 4.2142358e+03 - -2.2334774e+03 2.4610563e+03 4.2149262e+03 - -2.2915288e+03 2.4053931e+03 4.2153427e+03 - -2.3488592e+03 2.3488592e+03 4.2154819e+03 - -2.4053931e+03 2.2915288e+03 4.2153427e+03 - -2.4610563e+03 2.2334774e+03 4.2149262e+03 - -2.5157766e+03 2.1747811e+03 4.2142358e+03 - -2.5694840e+03 2.1155162e+03 4.2132770e+03 - -2.6221118e+03 2.0557585e+03 4.2120576e+03 - -2.6735964e+03 1.9955825e+03 4.2105873e+03 - -2.7238782e+03 1.9350610e+03 4.2088776e+03 - -2.7729015e+03 1.8742646e+03 4.2069420e+03 - -2.8206152e+03 1.8132611e+03 4.2047955e+03 - -2.8669726e+03 1.7521151e+03 4.2024543e+03 - -2.9119316e+03 1.6908873e+03 4.1999361e+03 - -2.9554550e+03 1.6296348e+03 4.1972595e+03 - -2.9975101e+03 1.5684100e+03 4.1944439e+03 - -3.0380688e+03 1.5072613e+03 4.1915094e+03 - -3.0771075e+03 1.4462321e+03 4.1884765e+03 - -3.1146067e+03 1.3853612e+03 4.1853659e+03 - -3.1505512e+03 1.3246828e+03 4.1821987e+03 - -3.1849292e+03 1.2642262e+03 4.1789954e+03 - -3.2177325e+03 1.2040160e+03 4.1757767e+03 - -3.2489562e+03 1.1440723e+03 4.1725627e+03 - -3.2785981e+03 1.0844108e+03 4.1693732e+03 - -3.3066583e+03 1.0250429e+03 4.1662273e+03 - -3.3331393e+03 9.6597594e+02 4.1631433e+03 - -3.3580454e+03 9.0721345e+02 4.1601390e+03 - -3.3813824e+03 8.4875528e+02 4.1572310e+03 - -3.4031572e+03 7.9059793e+02 4.1544354e+03 - -3.4233778e+03 7.3273474e+02 4.1517671e+03 - -3.4420528e+03 6.7515616e+02 4.1492401e+03 - -3.4591909e+03 6.1784998e+02 4.1468674e+03 - -3.4748014e+03 5.6080156e+02 4.1446610e+03 - -3.4888931e+03 5.0399409e+02 4.1426318e+03 - -3.5014749e+03 4.4740882e+02 4.1407897e+03 - -3.5125550e+03 3.9102524e+02 4.1391436e+03 - -3.5221410e+03 3.3482137e+02 4.1377012e+03 - -3.5302398e+03 2.7877389e+02 4.1364694e+03 - -3.5368576e+03 2.2285838e+02 4.1354537e+03 - -3.5419993e+03 1.6704953e+02 4.1346590e+03 - -3.5456690e+03 1.1132129e+02 4.1340887e+03 - -3.5478697e+03 5.5647091e+01 4.1337455e+03 - -3.5486030e+03 0.0000000e+00 4.1336309e+03 - -3.5478697e+03 -5.5647091e+01 4.1337455e+03 - -3.5456690e+03 -1.1132129e+02 4.1340887e+03 - -3.5419993e+03 -1.6704953e+02 4.1346590e+03 - -3.5368576e+03 -2.2285838e+02 4.1354537e+03 - -3.5302398e+03 -2.7877389e+02 4.1364694e+03 - -3.5221410e+03 -3.3482137e+02 4.1377012e+03 - -3.5125550e+03 -3.9102524e+02 4.1391436e+03 - -3.5014749e+03 -4.4740882e+02 4.1407897e+03 - -3.4888931e+03 -5.0399409e+02 4.1426318e+03 - -3.4748014e+03 -5.6080156e+02 4.1446610e+03 - -3.4591909e+03 -6.1784998e+02 4.1468674e+03 - -3.4420528e+03 -6.7515616e+02 4.1492401e+03 - -3.4233778e+03 -7.3273474e+02 4.1517671e+03 - -3.4031572e+03 -7.9059793e+02 4.1544354e+03 - -3.3813824e+03 -8.4875528e+02 4.1572310e+03 - -3.3580454e+03 -9.0721345e+02 4.1601390e+03 - -3.3331393e+03 -9.6597594e+02 4.1631433e+03 - -3.3066583e+03 -1.0250429e+03 4.1662273e+03 - -3.2785981e+03 -1.0844108e+03 4.1693732e+03 - -3.2489562e+03 -1.1440723e+03 4.1725627e+03 - -3.2177325e+03 -1.2040160e+03 4.1757767e+03 - -3.1849292e+03 -1.2642262e+03 4.1789954e+03 - -3.1505512e+03 -1.3246828e+03 4.1821987e+03 - -3.1146067e+03 -1.3853612e+03 4.1853659e+03 - -3.0771075e+03 -1.4462321e+03 4.1884765e+03 - -3.0380688e+03 -1.5072613e+03 4.1915094e+03 - -2.9975101e+03 -1.5684100e+03 4.1944439e+03 - -2.9554550e+03 -1.6296348e+03 4.1972595e+03 - -2.9119316e+03 -1.6908873e+03 4.1999361e+03 - -2.8669726e+03 -1.7521151e+03 4.2024543e+03 - -2.8206152e+03 -1.8132611e+03 4.2047955e+03 - -2.7729015e+03 -1.8742646e+03 4.2069420e+03 - -2.7238782e+03 -1.9350610e+03 4.2088776e+03 - -2.6735964e+03 -1.9955825e+03 4.2105873e+03 - -2.6221118e+03 -2.0557585e+03 4.2120576e+03 - -2.5694840e+03 -2.1155162e+03 4.2132770e+03 - -2.5157766e+03 -2.1747811e+03 4.2142358e+03 - -2.4610563e+03 -2.2334774e+03 4.2149262e+03 - -2.4053931e+03 -2.2915288e+03 4.2153427e+03 - -2.3488592e+03 -2.3488592e+03 4.2154819e+03 - -2.2915288e+03 -2.4053931e+03 4.2153427e+03 - -2.2334774e+03 -2.4610563e+03 4.2149262e+03 - -2.1747811e+03 -2.5157766e+03 4.2142358e+03 - -2.1155162e+03 -2.5694840e+03 4.2132770e+03 - -2.0557585e+03 -2.6221118e+03 4.2120576e+03 - -1.9955825e+03 -2.6735964e+03 4.2105873e+03 - -1.9350610e+03 -2.7238782e+03 4.2088776e+03 - -1.8742646e+03 -2.7729015e+03 4.2069420e+03 - -1.8132611e+03 -2.8206152e+03 4.2047955e+03 - -1.7521151e+03 -2.8669726e+03 4.2024543e+03 - -1.6908873e+03 -2.9119316e+03 4.1999361e+03 - -1.6296348e+03 -2.9554550e+03 4.1972595e+03 - -1.5684100e+03 -2.9975101e+03 4.1944439e+03 - -1.5072613e+03 -3.0380688e+03 4.1915094e+03 - -1.4462321e+03 -3.0771075e+03 4.1884765e+03 - -1.3853612e+03 -3.1146067e+03 4.1853659e+03 - -1.3246828e+03 -3.1505512e+03 4.1821987e+03 - -1.2642262e+03 -3.1849292e+03 4.1789954e+03 - -1.2040160e+03 -3.2177325e+03 4.1757767e+03 - -1.1440723e+03 -3.2489562e+03 4.1725627e+03 - -1.0844108e+03 -3.2785981e+03 4.1693732e+03 - -1.0250429e+03 -3.3066583e+03 4.1662273e+03 - -9.6597594e+02 -3.3331393e+03 4.1631433e+03 - -9.0721345e+02 -3.3580454e+03 4.1601390e+03 - -8.4875528e+02 -3.3813824e+03 4.1572310e+03 - -7.9059793e+02 -3.4031572e+03 4.1544354e+03 - -7.3273474e+02 -3.4233778e+03 4.1517671e+03 - -6.7515616e+02 -3.4420528e+03 4.1492401e+03 - -6.1784998e+02 -3.4591909e+03 4.1468674e+03 - -5.6080156e+02 -3.4748014e+03 4.1446610e+03 - -5.0399409e+02 -3.4888931e+03 4.1426318e+03 - -4.4740882e+02 -3.5014749e+03 4.1407897e+03 - -3.9102524e+02 -3.5125550e+03 4.1391436e+03 - -3.3482137e+02 -3.5221410e+03 4.1377012e+03 - -2.7877389e+02 -3.5302398e+03 4.1364694e+03 - -2.2285838e+02 -3.5368576e+03 4.1354537e+03 - -1.6704953e+02 -3.5419993e+03 4.1346590e+03 - -1.1132129e+02 -3.5456690e+03 4.1340887e+03 - -5.5647091e+01 -3.5478697e+03 4.1337455e+03 - 0.0000000e+00 -3.5486030e+03 4.1336309e+03 - 5.5647091e+01 -3.5478697e+03 4.1337455e+03 - 1.1132129e+02 -3.5456690e+03 4.1340887e+03 - 1.6704953e+02 -3.5419993e+03 4.1346590e+03 - 2.2285838e+02 -3.5368576e+03 4.1354537e+03 - 2.7877389e+02 -3.5302398e+03 4.1364694e+03 - 3.3482137e+02 -3.5221410e+03 4.1377012e+03 - 3.9102524e+02 -3.5125550e+03 4.1391436e+03 - 4.4740882e+02 -3.5014749e+03 4.1407897e+03 - 5.0399409e+02 -3.4888931e+03 4.1426318e+03 - 5.6080156e+02 -3.4748014e+03 4.1446610e+03 - 6.1784998e+02 -3.4591909e+03 4.1468674e+03 - 6.7515616e+02 -3.4420528e+03 4.1492401e+03 - 7.3273474e+02 -3.4233778e+03 4.1517671e+03 - 7.9059793e+02 -3.4031572e+03 4.1544354e+03 - 8.4875528e+02 -3.3813824e+03 4.1572310e+03 - 9.0721345e+02 -3.3580454e+03 4.1601390e+03 - 9.6597594e+02 -3.3331393e+03 4.1631433e+03 - 1.0250429e+03 -3.3066583e+03 4.1662273e+03 - 1.0844108e+03 -3.2785981e+03 4.1693732e+03 - 1.1440723e+03 -3.2489562e+03 4.1725627e+03 - 1.2040160e+03 -3.2177325e+03 4.1757767e+03 - 1.2642262e+03 -3.1849292e+03 4.1789954e+03 - 1.3246828e+03 -3.1505512e+03 4.1821987e+03 - 1.3853612e+03 -3.1146067e+03 4.1853659e+03 - 1.4462321e+03 -3.0771075e+03 4.1884765e+03 - 1.5072613e+03 -3.0380688e+03 4.1915094e+03 - 1.5684100e+03 -2.9975101e+03 4.1944439e+03 - 1.6296348e+03 -2.9554550e+03 4.1972595e+03 - 1.6908873e+03 -2.9119316e+03 4.1999361e+03 - 1.7521151e+03 -2.8669726e+03 4.2024543e+03 - 1.8132611e+03 -2.8206152e+03 4.2047955e+03 - 1.8742646e+03 -2.7729015e+03 4.2069420e+03 - 1.9350610e+03 -2.7238782e+03 4.2088776e+03 - 1.9955825e+03 -2.6735964e+03 4.2105873e+03 - 2.0557585e+03 -2.6221118e+03 4.2120576e+03 - 2.1155162e+03 -2.5694840e+03 4.2132770e+03 - 2.1747811e+03 -2.5157766e+03 4.2142358e+03 - 2.2334774e+03 -2.4610563e+03 4.2149262e+03 - 2.2915288e+03 -2.4053931e+03 4.2153427e+03 - 2.3488592e+03 -2.3488592e+03 4.2154819e+03 - 2.4053931e+03 -2.2915288e+03 4.2153427e+03 - 2.4610563e+03 -2.2334774e+03 4.2149262e+03 - 2.5157766e+03 -2.1747811e+03 4.2142358e+03 - 2.5694840e+03 -2.1155162e+03 4.2132770e+03 - 2.6221118e+03 -2.0557585e+03 4.2120576e+03 - 2.6735964e+03 -1.9955825e+03 4.2105873e+03 - 2.7238782e+03 -1.9350610e+03 4.2088776e+03 - 2.7729015e+03 -1.8742646e+03 4.2069420e+03 - 2.8206152e+03 -1.8132611e+03 4.2047955e+03 - 2.8669726e+03 -1.7521151e+03 4.2024543e+03 - 2.9119316e+03 -1.6908873e+03 4.1999361e+03 - 2.9554550e+03 -1.6296348e+03 4.1972595e+03 - 2.9975101e+03 -1.5684100e+03 4.1944439e+03 - 3.0380688e+03 -1.5072613e+03 4.1915094e+03 - 3.0771075e+03 -1.4462321e+03 4.1884765e+03 - 3.1146067e+03 -1.3853612e+03 4.1853659e+03 - 3.1505512e+03 -1.3246828e+03 4.1821987e+03 - 3.1849292e+03 -1.2642262e+03 4.1789954e+03 - 3.2177325e+03 -1.2040160e+03 4.1757767e+03 - 3.2489562e+03 -1.1440723e+03 4.1725627e+03 - 3.2785981e+03 -1.0844108e+03 4.1693732e+03 - 3.3066583e+03 -1.0250429e+03 4.1662273e+03 - 3.3331393e+03 -9.6597594e+02 4.1631433e+03 - 3.3580454e+03 -9.0721345e+02 4.1601390e+03 - 3.3813824e+03 -8.4875528e+02 4.1572310e+03 - 3.4031572e+03 -7.9059793e+02 4.1544354e+03 - 3.4233778e+03 -7.3273474e+02 4.1517671e+03 - 3.4420528e+03 -6.7515616e+02 4.1492401e+03 - 3.4591909e+03 -6.1784998e+02 4.1468674e+03 - 3.4748014e+03 -5.6080156e+02 4.1446610e+03 - 3.4888931e+03 -5.0399409e+02 4.1426318e+03 - 3.5014749e+03 -4.4740882e+02 4.1407897e+03 - 3.5125550e+03 -3.9102524e+02 4.1391436e+03 - 3.5221410e+03 -3.3482137e+02 4.1377012e+03 - 3.5302398e+03 -2.7877389e+02 4.1364694e+03 - 3.5368576e+03 -2.2285838e+02 4.1354537e+03 - 3.5419993e+03 -1.6704953e+02 4.1346590e+03 - 3.5456690e+03 -1.1132129e+02 4.1340887e+03 - 3.5478697e+03 -5.5647091e+01 4.1337455e+03 - 3.5486030e+03 -4.8134273e-09 4.1336309e+03 - 3.6085369e+03 -4.8134273e-09 4.0960919e+03 - 3.6077952e+03 5.5981292e+01 4.0962148e+03 - 3.6055692e+03 1.1199238e+02 4.0965832e+03 - 3.6018571e+03 1.6806289e+02 4.0971952e+03 - 3.5966554e+03 2.2422208e+02 4.0980484e+03 - 3.5899594e+03 2.8049867e+02 4.0991388e+03 - 3.5817634e+03 3.3692067e+02 4.1004616e+03 - 3.5720603e+03 3.9351516e+02 4.1020108e+03 - 3.5608422e+03 4.5030810e+02 4.1037793e+03 - 3.5481000e+03 5.0732414e+02 4.1057590e+03 - 3.5338242e+03 5.6458637e+02 4.1079405e+03 - 3.5180043e+03 6.2211613e+02 4.1103135e+03 - 3.5006299e+03 6.7993274e+02 4.1128663e+03 - 3.4816899e+03 7.3805330e+02 4.1155863e+03 - 3.4611735e+03 7.9649238e+02 4.1184597e+03 - 3.4390702e+03 8.5526180e+02 4.1214717e+03 - 3.4153701e+03 9.1437036e+02 4.1246064e+03 - 3.3900639e+03 9.7382356e+02 4.1278467e+03 - 3.3631439e+03 1.0336233e+03 4.1311748e+03 - 3.3346036e+03 1.0937677e+03 4.1345717e+03 - 3.3044385e+03 1.1542508e+03 4.1380176e+03 - 3.2726464e+03 1.2150623e+03 4.1414921e+03 - 3.2392276e+03 1.2761872e+03 4.1449738e+03 - 3.2041856e+03 1.3376058e+03 4.1484409e+03 - 3.1675269e+03 1.3992936e+03 4.1518711e+03 - 3.1292621e+03 1.4612209e+03 4.1552419e+03 - 3.0894055e+03 1.5233529e+03 4.1585305e+03 - 3.0479760e+03 1.5856494e+03 4.1617142e+03 - 3.0049970e+03 1.6480653e+03 4.1647707e+03 - 2.9604968e+03 1.7105502e+03 4.1676778e+03 - 2.9145088e+03 1.7730488e+03 4.1704143e+03 - 2.8670713e+03 1.8355010e+03 4.1729596e+03 - 2.8182281e+03 1.8978425e+03 4.1752943e+03 - 2.7680281e+03 1.9600046e+03 4.1774004e+03 - 2.7165250e+03 2.0219151e+03 4.1792614e+03 - 2.6637776e+03 2.0834987e+03 4.1808624e+03 - 2.6098493e+03 2.1446776e+03 4.1821905e+03 - 2.5548076e+03 2.2053718e+03 4.1832350e+03 - 2.4987240e+03 2.2655001e+03 4.1839872e+03 - 2.4416730e+03 2.3249808e+03 4.1844411e+03 - 2.3837321e+03 2.3837321e+03 4.1845928e+03 - 2.3249808e+03 2.4416730e+03 4.1844411e+03 - 2.2655001e+03 2.4987240e+03 4.1839872e+03 - 2.2053718e+03 2.5548076e+03 4.1832350e+03 - 2.1446776e+03 2.6098493e+03 4.1821905e+03 - 2.0834987e+03 2.6637776e+03 4.1808624e+03 - 2.0219151e+03 2.7165250e+03 4.1792614e+03 - 1.9600046e+03 2.7680281e+03 4.1774004e+03 - 1.8978425e+03 2.8182281e+03 4.1752943e+03 - 1.8355010e+03 2.8670713e+03 4.1729596e+03 - 1.7730488e+03 2.9145088e+03 4.1704143e+03 - 1.7105502e+03 2.9604968e+03 4.1676778e+03 - 1.6480653e+03 3.0049970e+03 4.1647707e+03 - 1.5856494e+03 3.0479760e+03 4.1617142e+03 - 1.5233529e+03 3.0894055e+03 4.1585305e+03 - 1.4612209e+03 3.1292621e+03 4.1552419e+03 - 1.3992936e+03 3.1675269e+03 4.1518711e+03 - 1.3376058e+03 3.2041856e+03 4.1484409e+03 - 1.2761872e+03 3.2392276e+03 4.1449738e+03 - 1.2150623e+03 3.2726464e+03 4.1414921e+03 - 1.1542508e+03 3.3044385e+03 4.1380176e+03 - 1.0937677e+03 3.3346036e+03 4.1345717e+03 - 1.0336233e+03 3.3631439e+03 4.1311748e+03 - 9.7382356e+02 3.3900639e+03 4.1278467e+03 - 9.1437036e+02 3.4153701e+03 4.1246064e+03 - 8.5526180e+02 3.4390702e+03 4.1214717e+03 - 7.9649238e+02 3.4611735e+03 4.1184597e+03 - 7.3805330e+02 3.4816899e+03 4.1155863e+03 - 6.7993274e+02 3.5006299e+03 4.1128663e+03 - 6.2211613e+02 3.5180043e+03 4.1103135e+03 - 5.6458637e+02 3.5338242e+03 4.1079405e+03 - 5.0732414e+02 3.5481000e+03 4.1057590e+03 - 4.5030810e+02 3.5608422e+03 4.1037793e+03 - 3.9351516e+02 3.5720603e+03 4.1020108e+03 - 3.3692067e+02 3.5817634e+03 4.1004616e+03 - 2.8049867e+02 3.5899594e+03 4.0991388e+03 - 2.2422208e+02 3.5966554e+03 4.0980484e+03 - 1.6806289e+02 3.6018571e+03 4.0971952e+03 - 1.1199238e+02 3.6055692e+03 4.0965832e+03 - 5.5981292e+01 3.6077952e+03 4.0962148e+03 - 0.0000000e+00 3.6085369e+03 4.0960919e+03 - -5.5981292e+01 3.6077952e+03 4.0962148e+03 - -1.1199238e+02 3.6055692e+03 4.0965832e+03 - -1.6806289e+02 3.6018571e+03 4.0971952e+03 - -2.2422208e+02 3.5966554e+03 4.0980484e+03 - -2.8049867e+02 3.5899594e+03 4.0991388e+03 - -3.3692067e+02 3.5817634e+03 4.1004616e+03 - -3.9351516e+02 3.5720603e+03 4.1020108e+03 - -4.5030810e+02 3.5608422e+03 4.1037793e+03 - -5.0732414e+02 3.5481000e+03 4.1057590e+03 - -5.6458637e+02 3.5338242e+03 4.1079405e+03 - -6.2211613e+02 3.5180043e+03 4.1103135e+03 - -6.7993274e+02 3.5006299e+03 4.1128663e+03 - -7.3805330e+02 3.4816899e+03 4.1155863e+03 - -7.9649238e+02 3.4611735e+03 4.1184597e+03 - -8.5526180e+02 3.4390702e+03 4.1214717e+03 - -9.1437036e+02 3.4153701e+03 4.1246064e+03 - -9.7382356e+02 3.3900639e+03 4.1278467e+03 - -1.0336233e+03 3.3631439e+03 4.1311748e+03 - -1.0937677e+03 3.3346036e+03 4.1345717e+03 - -1.1542508e+03 3.3044385e+03 4.1380176e+03 - -1.2150623e+03 3.2726464e+03 4.1414921e+03 - -1.2761872e+03 3.2392276e+03 4.1449738e+03 - -1.3376058e+03 3.2041856e+03 4.1484409e+03 - -1.3992936e+03 3.1675269e+03 4.1518711e+03 - -1.4612209e+03 3.1292621e+03 4.1552419e+03 - -1.5233529e+03 3.0894055e+03 4.1585305e+03 - -1.5856494e+03 3.0479760e+03 4.1617142e+03 - -1.6480653e+03 3.0049970e+03 4.1647707e+03 - -1.7105502e+03 2.9604968e+03 4.1676778e+03 - -1.7730488e+03 2.9145088e+03 4.1704143e+03 - -1.8355010e+03 2.8670713e+03 4.1729596e+03 - -1.8978425e+03 2.8182281e+03 4.1752943e+03 - -1.9600046e+03 2.7680281e+03 4.1774004e+03 - -2.0219151e+03 2.7165250e+03 4.1792614e+03 - -2.0834987e+03 2.6637776e+03 4.1808624e+03 - -2.1446776e+03 2.6098493e+03 4.1821905e+03 - -2.2053718e+03 2.5548076e+03 4.1832350e+03 - -2.2655001e+03 2.4987240e+03 4.1839872e+03 - -2.3249808e+03 2.4416730e+03 4.1844411e+03 - -2.3837321e+03 2.3837321e+03 4.1845928e+03 - -2.4416730e+03 2.3249808e+03 4.1844411e+03 - -2.4987240e+03 2.2655001e+03 4.1839872e+03 - -2.5548076e+03 2.2053718e+03 4.1832350e+03 - -2.6098493e+03 2.1446776e+03 4.1821905e+03 - -2.6637776e+03 2.0834987e+03 4.1808624e+03 - -2.7165250e+03 2.0219151e+03 4.1792614e+03 - -2.7680281e+03 1.9600046e+03 4.1774004e+03 - -2.8182281e+03 1.8978425e+03 4.1752943e+03 - -2.8670713e+03 1.8355010e+03 4.1729596e+03 - -2.9145088e+03 1.7730488e+03 4.1704143e+03 - -2.9604968e+03 1.7105502e+03 4.1676778e+03 - -3.0049970e+03 1.6480653e+03 4.1647707e+03 - -3.0479760e+03 1.5856494e+03 4.1617142e+03 - -3.0894055e+03 1.5233529e+03 4.1585305e+03 - -3.1292621e+03 1.4612209e+03 4.1552419e+03 - -3.1675269e+03 1.3992936e+03 4.1518711e+03 - -3.2041856e+03 1.3376058e+03 4.1484409e+03 - -3.2392276e+03 1.2761872e+03 4.1449738e+03 - -3.2726464e+03 1.2150623e+03 4.1414921e+03 - -3.3044385e+03 1.1542508e+03 4.1380176e+03 - -3.3346036e+03 1.0937677e+03 4.1345717e+03 - -3.3631439e+03 1.0336233e+03 4.1311748e+03 - -3.3900639e+03 9.7382356e+02 4.1278467e+03 - -3.4153701e+03 9.1437036e+02 4.1246064e+03 - -3.4390702e+03 8.5526180e+02 4.1214717e+03 - -3.4611735e+03 7.9649238e+02 4.1184597e+03 - -3.4816899e+03 7.3805330e+02 4.1155863e+03 - -3.5006299e+03 6.7993274e+02 4.1128663e+03 - -3.5180043e+03 6.2211613e+02 4.1103135e+03 - -3.5338242e+03 5.6458637e+02 4.1079405e+03 - -3.5481000e+03 5.0732414e+02 4.1057590e+03 - -3.5608422e+03 4.5030810e+02 4.1037793e+03 - -3.5720603e+03 3.9351516e+02 4.1020108e+03 - -3.5817634e+03 3.3692067e+02 4.1004616e+03 - -3.5899594e+03 2.8049867e+02 4.0991388e+03 - -3.5966554e+03 2.2422208e+02 4.0980484e+03 - -3.6018571e+03 1.6806289e+02 4.0971952e+03 - -3.6055692e+03 1.1199238e+02 4.0965832e+03 - -3.6077952e+03 5.5981292e+01 4.0962148e+03 - -3.6085369e+03 0.0000000e+00 4.0960919e+03 - -3.6077952e+03 -5.5981292e+01 4.0962148e+03 - -3.6055692e+03 -1.1199238e+02 4.0965832e+03 - -3.6018571e+03 -1.6806289e+02 4.0971952e+03 - -3.5966554e+03 -2.2422208e+02 4.0980484e+03 - -3.5899594e+03 -2.8049867e+02 4.0991388e+03 - -3.5817634e+03 -3.3692067e+02 4.1004616e+03 - -3.5720603e+03 -3.9351516e+02 4.1020108e+03 - -3.5608422e+03 -4.5030810e+02 4.1037793e+03 - -3.5481000e+03 -5.0732414e+02 4.1057590e+03 - -3.5338242e+03 -5.6458637e+02 4.1079405e+03 - -3.5180043e+03 -6.2211613e+02 4.1103135e+03 - -3.5006299e+03 -6.7993274e+02 4.1128663e+03 - -3.4816899e+03 -7.3805330e+02 4.1155863e+03 - -3.4611735e+03 -7.9649238e+02 4.1184597e+03 - -3.4390702e+03 -8.5526180e+02 4.1214717e+03 - -3.4153701e+03 -9.1437036e+02 4.1246064e+03 - -3.3900639e+03 -9.7382356e+02 4.1278467e+03 - -3.3631439e+03 -1.0336233e+03 4.1311748e+03 - -3.3346036e+03 -1.0937677e+03 4.1345717e+03 - -3.3044385e+03 -1.1542508e+03 4.1380176e+03 - -3.2726464e+03 -1.2150623e+03 4.1414921e+03 - -3.2392276e+03 -1.2761872e+03 4.1449738e+03 - -3.2041856e+03 -1.3376058e+03 4.1484409e+03 - -3.1675269e+03 -1.3992936e+03 4.1518711e+03 - -3.1292621e+03 -1.4612209e+03 4.1552419e+03 - -3.0894055e+03 -1.5233529e+03 4.1585305e+03 - -3.0479760e+03 -1.5856494e+03 4.1617142e+03 - -3.0049970e+03 -1.6480653e+03 4.1647707e+03 - -2.9604968e+03 -1.7105502e+03 4.1676778e+03 - -2.9145088e+03 -1.7730488e+03 4.1704143e+03 - -2.8670713e+03 -1.8355010e+03 4.1729596e+03 - -2.8182281e+03 -1.8978425e+03 4.1752943e+03 - -2.7680281e+03 -1.9600046e+03 4.1774004e+03 - -2.7165250e+03 -2.0219151e+03 4.1792614e+03 - -2.6637776e+03 -2.0834987e+03 4.1808624e+03 - -2.6098493e+03 -2.1446776e+03 4.1821905e+03 - -2.5548076e+03 -2.2053718e+03 4.1832350e+03 - -2.4987240e+03 -2.2655001e+03 4.1839872e+03 - -2.4416730e+03 -2.3249808e+03 4.1844411e+03 - -2.3837321e+03 -2.3837321e+03 4.1845928e+03 - -2.3249808e+03 -2.4416730e+03 4.1844411e+03 - -2.2655001e+03 -2.4987240e+03 4.1839872e+03 - -2.2053718e+03 -2.5548076e+03 4.1832350e+03 - -2.1446776e+03 -2.6098493e+03 4.1821905e+03 - -2.0834987e+03 -2.6637776e+03 4.1808624e+03 - -2.0219151e+03 -2.7165250e+03 4.1792614e+03 - -1.9600046e+03 -2.7680281e+03 4.1774004e+03 - -1.8978425e+03 -2.8182281e+03 4.1752943e+03 - -1.8355010e+03 -2.8670713e+03 4.1729596e+03 - -1.7730488e+03 -2.9145088e+03 4.1704143e+03 - -1.7105502e+03 -2.9604968e+03 4.1676778e+03 - -1.6480653e+03 -3.0049970e+03 4.1647707e+03 - -1.5856494e+03 -3.0479760e+03 4.1617142e+03 - -1.5233529e+03 -3.0894055e+03 4.1585305e+03 - -1.4612209e+03 -3.1292621e+03 4.1552419e+03 - -1.3992936e+03 -3.1675269e+03 4.1518711e+03 - -1.3376058e+03 -3.2041856e+03 4.1484409e+03 - -1.2761872e+03 -3.2392276e+03 4.1449738e+03 - -1.2150623e+03 -3.2726464e+03 4.1414921e+03 - -1.1542508e+03 -3.3044385e+03 4.1380176e+03 - -1.0937677e+03 -3.3346036e+03 4.1345717e+03 - -1.0336233e+03 -3.3631439e+03 4.1311748e+03 - -9.7382356e+02 -3.3900639e+03 4.1278467e+03 - -9.1437036e+02 -3.4153701e+03 4.1246064e+03 - -8.5526180e+02 -3.4390702e+03 4.1214717e+03 - -7.9649238e+02 -3.4611735e+03 4.1184597e+03 - -7.3805330e+02 -3.4816899e+03 4.1155863e+03 - -6.7993274e+02 -3.5006299e+03 4.1128663e+03 - -6.2211613e+02 -3.5180043e+03 4.1103135e+03 - -5.6458637e+02 -3.5338242e+03 4.1079405e+03 - -5.0732414e+02 -3.5481000e+03 4.1057590e+03 - -4.5030810e+02 -3.5608422e+03 4.1037793e+03 - -3.9351516e+02 -3.5720603e+03 4.1020108e+03 - -3.3692067e+02 -3.5817634e+03 4.1004616e+03 - -2.8049867e+02 -3.5899594e+03 4.0991388e+03 - -2.2422208e+02 -3.5966554e+03 4.0980484e+03 - -1.6806289e+02 -3.6018571e+03 4.0971952e+03 - -1.1199238e+02 -3.6055692e+03 4.0965832e+03 - -5.5981292e+01 -3.6077952e+03 4.0962148e+03 - 0.0000000e+00 -3.6085369e+03 4.0960919e+03 - 5.5981292e+01 -3.6077952e+03 4.0962148e+03 - 1.1199238e+02 -3.6055692e+03 4.0965832e+03 - 1.6806289e+02 -3.6018571e+03 4.0971952e+03 - 2.2422208e+02 -3.5966554e+03 4.0980484e+03 - 2.8049867e+02 -3.5899594e+03 4.0991388e+03 - 3.3692067e+02 -3.5817634e+03 4.1004616e+03 - 3.9351516e+02 -3.5720603e+03 4.1020108e+03 - 4.5030810e+02 -3.5608422e+03 4.1037793e+03 - 5.0732414e+02 -3.5481000e+03 4.1057590e+03 - 5.6458637e+02 -3.5338242e+03 4.1079405e+03 - 6.2211613e+02 -3.5180043e+03 4.1103135e+03 - 6.7993274e+02 -3.5006299e+03 4.1128663e+03 - 7.3805330e+02 -3.4816899e+03 4.1155863e+03 - 7.9649238e+02 -3.4611735e+03 4.1184597e+03 - 8.5526180e+02 -3.4390702e+03 4.1214717e+03 - 9.1437036e+02 -3.4153701e+03 4.1246064e+03 - 9.7382356e+02 -3.3900639e+03 4.1278467e+03 - 1.0336233e+03 -3.3631439e+03 4.1311748e+03 - 1.0937677e+03 -3.3346036e+03 4.1345717e+03 - 1.1542508e+03 -3.3044385e+03 4.1380176e+03 - 1.2150623e+03 -3.2726464e+03 4.1414921e+03 - 1.2761872e+03 -3.2392276e+03 4.1449738e+03 - 1.3376058e+03 -3.2041856e+03 4.1484409e+03 - 1.3992936e+03 -3.1675269e+03 4.1518711e+03 - 1.4612209e+03 -3.1292621e+03 4.1552419e+03 - 1.5233529e+03 -3.0894055e+03 4.1585305e+03 - 1.5856494e+03 -3.0479760e+03 4.1617142e+03 - 1.6480653e+03 -3.0049970e+03 4.1647707e+03 - 1.7105502e+03 -2.9604968e+03 4.1676778e+03 - 1.7730488e+03 -2.9145088e+03 4.1704143e+03 - 1.8355010e+03 -2.8670713e+03 4.1729596e+03 - 1.8978425e+03 -2.8182281e+03 4.1752943e+03 - 1.9600046e+03 -2.7680281e+03 4.1774004e+03 - 2.0219151e+03 -2.7165250e+03 4.1792614e+03 - 2.0834987e+03 -2.6637776e+03 4.1808624e+03 - 2.1446776e+03 -2.6098493e+03 4.1821905e+03 - 2.2053718e+03 -2.5548076e+03 4.1832350e+03 - 2.2655001e+03 -2.4987240e+03 4.1839872e+03 - 2.3249808e+03 -2.4416730e+03 4.1844411e+03 - 2.3837321e+03 -2.3837321e+03 4.1845928e+03 - 2.4416730e+03 -2.3249808e+03 4.1844411e+03 - 2.4987240e+03 -2.2655001e+03 4.1839872e+03 - 2.5548076e+03 -2.2053718e+03 4.1832350e+03 - 2.6098493e+03 -2.1446776e+03 4.1821905e+03 - 2.6637776e+03 -2.0834987e+03 4.1808624e+03 - 2.7165250e+03 -2.0219151e+03 4.1792614e+03 - 2.7680281e+03 -1.9600046e+03 4.1774004e+03 - 2.8182281e+03 -1.8978425e+03 4.1752943e+03 - 2.8670713e+03 -1.8355010e+03 4.1729596e+03 - 2.9145088e+03 -1.7730488e+03 4.1704143e+03 - 2.9604968e+03 -1.7105502e+03 4.1676778e+03 - 3.0049970e+03 -1.6480653e+03 4.1647707e+03 - 3.0479760e+03 -1.5856494e+03 4.1617142e+03 - 3.0894055e+03 -1.5233529e+03 4.1585305e+03 - 3.1292621e+03 -1.4612209e+03 4.1552419e+03 - 3.1675269e+03 -1.3992936e+03 4.1518711e+03 - 3.2041856e+03 -1.3376058e+03 4.1484409e+03 - 3.2392276e+03 -1.2761872e+03 4.1449738e+03 - 3.2726464e+03 -1.2150623e+03 4.1414921e+03 - 3.3044385e+03 -1.1542508e+03 4.1380176e+03 - 3.3346036e+03 -1.0937677e+03 4.1345717e+03 - 3.3631439e+03 -1.0336233e+03 4.1311748e+03 - 3.3900639e+03 -9.7382356e+02 4.1278467e+03 - 3.4153701e+03 -9.1437036e+02 4.1246064e+03 - 3.4390702e+03 -8.5526180e+02 4.1214717e+03 - 3.4611735e+03 -7.9649238e+02 4.1184597e+03 - 3.4816899e+03 -7.3805330e+02 4.1155863e+03 - 3.5006299e+03 -6.7993274e+02 4.1128663e+03 - 3.5180043e+03 -6.2211613e+02 4.1103135e+03 - 3.5338242e+03 -5.6458637e+02 4.1079405e+03 - 3.5481000e+03 -5.0732414e+02 4.1057590e+03 - 3.5608422e+03 -4.5030810e+02 4.1037793e+03 - 3.5720603e+03 -3.9351516e+02 4.1020108e+03 - 3.5817634e+03 -3.3692067e+02 4.1004616e+03 - 3.5899594e+03 -2.8049867e+02 4.0991388e+03 - 3.5966554e+03 -2.2422208e+02 4.0980484e+03 - 3.6018571e+03 -1.6806289e+02 4.0971952e+03 - 3.6055692e+03 -1.1199238e+02 4.0965832e+03 - 3.6077952e+03 -5.5981292e+01 4.0962148e+03 - 3.6085369e+03 0.0000000e+00 4.0960919e+03 - 3.6665943e+03 0.0000000e+00 4.0581207e+03 - 3.6658450e+03 5.6272274e+01 4.0582522e+03 - 3.6635962e+03 1.1257702e+02 4.0586462e+03 - 3.6598456e+03 1.6894654e+02 4.0593009e+03 - 3.6545895e+03 2.2541276e+02 4.0602136e+03 - 3.6478225e+03 2.8200710e+02 4.0613803e+03 - 3.6395380e+03 3.3876023e+02 4.0627959e+03 - 3.6297281e+03 3.9570191e+02 4.0644542e+03 - 3.6183836e+03 4.5286078e+02 4.0663478e+03 - 3.6054943e+03 5.1026415e+02 4.0684682e+03 - 3.5910490e+03 5.6793777e+02 4.0708055e+03 - 3.5750357e+03 6.2590557e+02 4.0733489e+03 - 3.5574422e+03 6.8418948e+02 4.0760862e+03 - 3.5382556e+03 7.4280911e+02 4.0790041e+03 - 3.5174631e+03 8.0178148e+02 4.0820880e+03 - 3.4950520e+03 8.6112080e+02 4.0853223e+03 - 3.4710102e+03 9.2083811e+02 4.0886902e+03 - 3.4453263e+03 9.8094101e+02 4.0921734e+03 - 3.4179902e+03 1.0414334e+03 4.0957530e+03 - 3.3889933e+03 1.1023150e+03 4.0994088e+03 - 3.3583287e+03 1.1635815e+03 4.1031197e+03 - 3.3259922e+03 1.2252237e+03 4.1068635e+03 - 3.2919820e+03 1.2872276e+03 4.1106174e+03 - 3.2562996e+03 1.3495742e+03 4.1143580e+03 - 3.2189502e+03 1.4122390e+03 4.1180610e+03 - 3.1799426e+03 1.4751921e+03 4.1217022e+03 - 3.1392902e+03 1.5383981e+03 4.1252567e+03 - 3.0970112e+03 1.6018156e+03 4.1287000e+03 - 3.0531285e+03 1.6653978e+03 4.1320074e+03 - 3.0076706e+03 1.7290923e+03 4.1351551e+03 - 2.9606714e+03 1.7928411e+03 4.1381195e+03 - 2.9121704e+03 1.8565809e+03 4.1408782e+03 - 2.8622130e+03 1.9202437e+03 4.1434099e+03 - 2.8108500e+03 1.9837567e+03 4.1456946e+03 - 2.7581381e+03 2.0470431e+03 4.1477141e+03 - 2.7041393e+03 2.1100227e+03 4.1494521e+03 - 2.6489207e+03 2.1726124e+03 4.1508943e+03 - 2.5925542e+03 2.2347266e+03 4.1520287e+03 - 2.5351156e+03 2.2962785e+03 4.1528458e+03 - 2.4766849e+03 2.3571804e+03 4.1533389e+03 - 2.4173448e+03 2.4173448e+03 4.1535038e+03 - 2.3571804e+03 2.4766849e+03 4.1533389e+03 - 2.2962785e+03 2.5351156e+03 4.1528458e+03 - 2.2347266e+03 2.5925542e+03 4.1520287e+03 - 2.1726124e+03 2.6489207e+03 4.1508943e+03 - 2.1100227e+03 2.7041393e+03 4.1494521e+03 - 2.0470431e+03 2.7581381e+03 4.1477141e+03 - 1.9837567e+03 2.8108500e+03 4.1456946e+03 - 1.9202437e+03 2.8622130e+03 4.1434099e+03 - 1.8565809e+03 2.9121704e+03 4.1408782e+03 - 1.7928411e+03 2.9606714e+03 4.1381195e+03 - 1.7290923e+03 3.0076706e+03 4.1351551e+03 - 1.6653978e+03 3.0531285e+03 4.1320074e+03 - 1.6018156e+03 3.0970112e+03 4.1287000e+03 - 1.5383981e+03 3.1392902e+03 4.1252567e+03 - 1.4751921e+03 3.1799426e+03 4.1217022e+03 - 1.4122390e+03 3.2189502e+03 4.1180610e+03 - 1.3495742e+03 3.2562996e+03 4.1143580e+03 - 1.2872276e+03 3.2919820e+03 4.1106174e+03 - 1.2252237e+03 3.3259922e+03 4.1068635e+03 - 1.1635815e+03 3.3583287e+03 4.1031197e+03 - 1.1023150e+03 3.3889933e+03 4.0994088e+03 - 1.0414334e+03 3.4179902e+03 4.0957530e+03 - 9.8094101e+02 3.4453263e+03 4.0921734e+03 - 9.2083811e+02 3.4710102e+03 4.0886902e+03 - 8.6112080e+02 3.4950520e+03 4.0853223e+03 - 8.0178148e+02 3.5174631e+03 4.0820880e+03 - 7.4280911e+02 3.5382556e+03 4.0790041e+03 - 6.8418948e+02 3.5574422e+03 4.0760862e+03 - 6.2590557e+02 3.5750357e+03 4.0733489e+03 - 5.6793777e+02 3.5910490e+03 4.0708055e+03 - 5.1026415e+02 3.6054943e+03 4.0684682e+03 - 4.5286078e+02 3.6183836e+03 4.0663478e+03 - 3.9570191e+02 3.6297281e+03 4.0644542e+03 - 3.3876023e+02 3.6395380e+03 4.0627959e+03 - 2.8200710e+02 3.6478225e+03 4.0613803e+03 - 2.2541276e+02 3.6545895e+03 4.0602136e+03 - 1.6894654e+02 3.6598456e+03 4.0593009e+03 - 1.1257702e+02 3.6635962e+03 4.0586462e+03 - 5.6272274e+01 3.6658450e+03 4.0582522e+03 - 0.0000000e+00 3.6665943e+03 4.0581207e+03 - -5.6272274e+01 3.6658450e+03 4.0582522e+03 - -1.1257702e+02 3.6635962e+03 4.0586462e+03 - -1.6894654e+02 3.6598456e+03 4.0593009e+03 - -2.2541276e+02 3.6545895e+03 4.0602136e+03 - -2.8200710e+02 3.6478225e+03 4.0613803e+03 - -3.3876023e+02 3.6395380e+03 4.0627959e+03 - -3.9570191e+02 3.6297281e+03 4.0644542e+03 - -4.5286078e+02 3.6183836e+03 4.0663478e+03 - -5.1026415e+02 3.6054943e+03 4.0684682e+03 - -5.6793777e+02 3.5910490e+03 4.0708055e+03 - -6.2590557e+02 3.5750357e+03 4.0733489e+03 - -6.8418948e+02 3.5574422e+03 4.0760862e+03 - -7.4280911e+02 3.5382556e+03 4.0790041e+03 - -8.0178148e+02 3.5174631e+03 4.0820880e+03 - -8.6112080e+02 3.4950520e+03 4.0853223e+03 - -9.2083811e+02 3.4710102e+03 4.0886902e+03 - -9.8094101e+02 3.4453263e+03 4.0921734e+03 - -1.0414334e+03 3.4179902e+03 4.0957530e+03 - -1.1023150e+03 3.3889933e+03 4.0994088e+03 - -1.1635815e+03 3.3583287e+03 4.1031197e+03 - -1.2252237e+03 3.3259922e+03 4.1068635e+03 - -1.2872276e+03 3.2919820e+03 4.1106174e+03 - -1.3495742e+03 3.2562996e+03 4.1143580e+03 - -1.4122390e+03 3.2189502e+03 4.1180610e+03 - -1.4751921e+03 3.1799426e+03 4.1217022e+03 - -1.5383981e+03 3.1392902e+03 4.1252567e+03 - -1.6018156e+03 3.0970112e+03 4.1287000e+03 - -1.6653978e+03 3.0531285e+03 4.1320074e+03 - -1.7290923e+03 3.0076706e+03 4.1351551e+03 - -1.7928411e+03 2.9606714e+03 4.1381195e+03 - -1.8565809e+03 2.9121704e+03 4.1408782e+03 - -1.9202437e+03 2.8622130e+03 4.1434099e+03 - -1.9837567e+03 2.8108500e+03 4.1456946e+03 - -2.0470431e+03 2.7581381e+03 4.1477141e+03 - -2.1100227e+03 2.7041393e+03 4.1494521e+03 - -2.1726124e+03 2.6489207e+03 4.1508943e+03 - -2.2347266e+03 2.5925542e+03 4.1520287e+03 - -2.2962785e+03 2.5351156e+03 4.1528458e+03 - -2.3571804e+03 2.4766849e+03 4.1533389e+03 - -2.4173448e+03 2.4173448e+03 4.1535038e+03 - -2.4766849e+03 2.3571804e+03 4.1533389e+03 - -2.5351156e+03 2.2962785e+03 4.1528458e+03 - -2.5925542e+03 2.2347266e+03 4.1520287e+03 - -2.6489207e+03 2.1726124e+03 4.1508943e+03 - -2.7041393e+03 2.1100227e+03 4.1494521e+03 - -2.7581381e+03 2.0470431e+03 4.1477141e+03 - -2.8108500e+03 1.9837567e+03 4.1456946e+03 - -2.8622130e+03 1.9202437e+03 4.1434099e+03 - -2.9121704e+03 1.8565809e+03 4.1408782e+03 - -2.9606714e+03 1.7928411e+03 4.1381195e+03 - -3.0076706e+03 1.7290923e+03 4.1351551e+03 - -3.0531285e+03 1.6653978e+03 4.1320074e+03 - -3.0970112e+03 1.6018156e+03 4.1287000e+03 - -3.1392902e+03 1.5383981e+03 4.1252567e+03 - -3.1799426e+03 1.4751921e+03 4.1217022e+03 - -3.2189502e+03 1.4122390e+03 4.1180610e+03 - -3.2562996e+03 1.3495742e+03 4.1143580e+03 - -3.2919820e+03 1.2872276e+03 4.1106174e+03 - -3.3259922e+03 1.2252237e+03 4.1068635e+03 - -3.3583287e+03 1.1635815e+03 4.1031197e+03 - -3.3889933e+03 1.1023150e+03 4.0994088e+03 - -3.4179902e+03 1.0414334e+03 4.0957530e+03 - -3.4453263e+03 9.8094101e+02 4.0921734e+03 - -3.4710102e+03 9.2083811e+02 4.0886902e+03 - -3.4950520e+03 8.6112080e+02 4.0853223e+03 - -3.5174631e+03 8.0178148e+02 4.0820880e+03 - -3.5382556e+03 7.4280911e+02 4.0790041e+03 - -3.5574422e+03 6.8418948e+02 4.0760862e+03 - -3.5750357e+03 6.2590557e+02 4.0733489e+03 - -3.5910490e+03 5.6793777e+02 4.0708055e+03 - -3.6054943e+03 5.1026415e+02 4.0684682e+03 - -3.6183836e+03 4.5286078e+02 4.0663478e+03 - -3.6297281e+03 3.9570191e+02 4.0644542e+03 - -3.6395380e+03 3.3876023e+02 4.0627959e+03 - -3.6478225e+03 2.8200710e+02 4.0613803e+03 - -3.6545895e+03 2.2541276e+02 4.0602136e+03 - -3.6598456e+03 1.6894654e+02 4.0593009e+03 - -3.6635962e+03 1.1257702e+02 4.0586462e+03 - -3.6658450e+03 5.6272274e+01 4.0582522e+03 - -3.6665943e+03 0.0000000e+00 4.0581207e+03 - -3.6658450e+03 -5.6272274e+01 4.0582522e+03 - -3.6635962e+03 -1.1257702e+02 4.0586462e+03 - -3.6598456e+03 -1.6894654e+02 4.0593009e+03 - -3.6545895e+03 -2.2541276e+02 4.0602136e+03 - -3.6478225e+03 -2.8200710e+02 4.0613803e+03 - -3.6395380e+03 -3.3876023e+02 4.0627959e+03 - -3.6297281e+03 -3.9570191e+02 4.0644542e+03 - -3.6183836e+03 -4.5286078e+02 4.0663478e+03 - -3.6054943e+03 -5.1026415e+02 4.0684682e+03 - -3.5910490e+03 -5.6793777e+02 4.0708055e+03 - -3.5750357e+03 -6.2590557e+02 4.0733489e+03 - -3.5574422e+03 -6.8418948e+02 4.0760862e+03 - -3.5382556e+03 -7.4280911e+02 4.0790041e+03 - -3.5174631e+03 -8.0178148e+02 4.0820880e+03 - -3.4950520e+03 -8.6112080e+02 4.0853223e+03 - -3.4710102e+03 -9.2083811e+02 4.0886902e+03 - -3.4453263e+03 -9.8094101e+02 4.0921734e+03 - -3.4179902e+03 -1.0414334e+03 4.0957530e+03 - -3.3889933e+03 -1.1023150e+03 4.0994088e+03 - -3.3583287e+03 -1.1635815e+03 4.1031197e+03 - -3.3259922e+03 -1.2252237e+03 4.1068635e+03 - -3.2919820e+03 -1.2872276e+03 4.1106174e+03 - -3.2562996e+03 -1.3495742e+03 4.1143580e+03 - -3.2189502e+03 -1.4122390e+03 4.1180610e+03 - -3.1799426e+03 -1.4751921e+03 4.1217022e+03 - -3.1392902e+03 -1.5383981e+03 4.1252567e+03 - -3.0970112e+03 -1.6018156e+03 4.1287000e+03 - -3.0531285e+03 -1.6653978e+03 4.1320074e+03 - -3.0076706e+03 -1.7290923e+03 4.1351551e+03 - -2.9606714e+03 -1.7928411e+03 4.1381195e+03 - -2.9121704e+03 -1.8565809e+03 4.1408782e+03 - -2.8622130e+03 -1.9202437e+03 4.1434099e+03 - -2.8108500e+03 -1.9837567e+03 4.1456946e+03 - -2.7581381e+03 -2.0470431e+03 4.1477141e+03 - -2.7041393e+03 -2.1100227e+03 4.1494521e+03 - -2.6489207e+03 -2.1726124e+03 4.1508943e+03 - -2.5925542e+03 -2.2347266e+03 4.1520287e+03 - -2.5351156e+03 -2.2962785e+03 4.1528458e+03 - -2.4766849e+03 -2.3571804e+03 4.1533389e+03 - -2.4173448e+03 -2.4173448e+03 4.1535038e+03 - -2.3571804e+03 -2.4766849e+03 4.1533389e+03 - -2.2962785e+03 -2.5351156e+03 4.1528458e+03 - -2.2347266e+03 -2.5925542e+03 4.1520287e+03 - -2.1726124e+03 -2.6489207e+03 4.1508943e+03 - -2.1100227e+03 -2.7041393e+03 4.1494521e+03 - -2.0470431e+03 -2.7581381e+03 4.1477141e+03 - -1.9837567e+03 -2.8108500e+03 4.1456946e+03 - -1.9202437e+03 -2.8622130e+03 4.1434099e+03 - -1.8565809e+03 -2.9121704e+03 4.1408782e+03 - -1.7928411e+03 -2.9606714e+03 4.1381195e+03 - -1.7290923e+03 -3.0076706e+03 4.1351551e+03 - -1.6653978e+03 -3.0531285e+03 4.1320074e+03 - -1.6018156e+03 -3.0970112e+03 4.1287000e+03 - -1.5383981e+03 -3.1392902e+03 4.1252567e+03 - -1.4751921e+03 -3.1799426e+03 4.1217022e+03 - -1.4122390e+03 -3.2189502e+03 4.1180610e+03 - -1.3495742e+03 -3.2562996e+03 4.1143580e+03 - -1.2872276e+03 -3.2919820e+03 4.1106174e+03 - -1.2252237e+03 -3.3259922e+03 4.1068635e+03 - -1.1635815e+03 -3.3583287e+03 4.1031197e+03 - -1.1023150e+03 -3.3889933e+03 4.0994088e+03 - -1.0414334e+03 -3.4179902e+03 4.0957530e+03 - -9.8094101e+02 -3.4453263e+03 4.0921734e+03 - -9.2083811e+02 -3.4710102e+03 4.0886902e+03 - -8.6112080e+02 -3.4950520e+03 4.0853223e+03 - -8.0178148e+02 -3.5174631e+03 4.0820880e+03 - -7.4280911e+02 -3.5382556e+03 4.0790041e+03 - -6.8418948e+02 -3.5574422e+03 4.0760862e+03 - -6.2590557e+02 -3.5750357e+03 4.0733489e+03 - -5.6793777e+02 -3.5910490e+03 4.0708055e+03 - -5.1026415e+02 -3.6054943e+03 4.0684682e+03 - -4.5286078e+02 -3.6183836e+03 4.0663478e+03 - -3.9570191e+02 -3.6297281e+03 4.0644542e+03 - -3.3876023e+02 -3.6395380e+03 4.0627959e+03 - -2.8200710e+02 -3.6478225e+03 4.0613803e+03 - -2.2541276e+02 -3.6545895e+03 4.0602136e+03 - -1.6894654e+02 -3.6598456e+03 4.0593009e+03 - -1.1257702e+02 -3.6635962e+03 4.0586462e+03 - -5.6272274e+01 -3.6658450e+03 4.0582522e+03 - -4.8134273e-09 -3.6665943e+03 4.0581207e+03 - 5.6272274e+01 -3.6658450e+03 4.0582522e+03 - 1.1257702e+02 -3.6635962e+03 4.0586462e+03 - 1.6894654e+02 -3.6598456e+03 4.0593009e+03 - 2.2541276e+02 -3.6545895e+03 4.0602136e+03 - 2.8200710e+02 -3.6478225e+03 4.0613803e+03 - 3.3876023e+02 -3.6395380e+03 4.0627959e+03 - 3.9570191e+02 -3.6297281e+03 4.0644542e+03 - 4.5286078e+02 -3.6183836e+03 4.0663478e+03 - 5.1026415e+02 -3.6054943e+03 4.0684682e+03 - 5.6793777e+02 -3.5910490e+03 4.0708055e+03 - 6.2590557e+02 -3.5750357e+03 4.0733489e+03 - 6.8418948e+02 -3.5574422e+03 4.0760862e+03 - 7.4280911e+02 -3.5382556e+03 4.0790041e+03 - 8.0178148e+02 -3.5174631e+03 4.0820880e+03 - 8.6112080e+02 -3.4950520e+03 4.0853223e+03 - 9.2083811e+02 -3.4710102e+03 4.0886902e+03 - 9.8094101e+02 -3.4453263e+03 4.0921734e+03 - 1.0414334e+03 -3.4179902e+03 4.0957530e+03 - 1.1023150e+03 -3.3889933e+03 4.0994088e+03 - 1.1635815e+03 -3.3583287e+03 4.1031197e+03 - 1.2252237e+03 -3.3259922e+03 4.1068635e+03 - 1.2872276e+03 -3.2919820e+03 4.1106174e+03 - 1.3495742e+03 -3.2562996e+03 4.1143580e+03 - 1.4122390e+03 -3.2189502e+03 4.1180610e+03 - 1.4751921e+03 -3.1799426e+03 4.1217022e+03 - 1.5383981e+03 -3.1392902e+03 4.1252567e+03 - 1.6018156e+03 -3.0970112e+03 4.1287000e+03 - 1.6653978e+03 -3.0531285e+03 4.1320074e+03 - 1.7290923e+03 -3.0076706e+03 4.1351551e+03 - 1.7928411e+03 -2.9606714e+03 4.1381195e+03 - 1.8565809e+03 -2.9121704e+03 4.1408782e+03 - 1.9202437e+03 -2.8622130e+03 4.1434099e+03 - 1.9837567e+03 -2.8108500e+03 4.1456946e+03 - 2.0470431e+03 -2.7581381e+03 4.1477141e+03 - 2.1100227e+03 -2.7041393e+03 4.1494521e+03 - 2.1726124e+03 -2.6489207e+03 4.1508943e+03 - 2.2347266e+03 -2.5925542e+03 4.1520287e+03 - 2.2962785e+03 -2.5351156e+03 4.1528458e+03 - 2.3571804e+03 -2.4766849e+03 4.1533389e+03 - 2.4173448e+03 -2.4173448e+03 4.1535038e+03 - 2.4766849e+03 -2.3571804e+03 4.1533389e+03 - 2.5351156e+03 -2.2962785e+03 4.1528458e+03 - 2.5925542e+03 -2.2347266e+03 4.1520287e+03 - 2.6489207e+03 -2.1726124e+03 4.1508943e+03 - 2.7041393e+03 -2.1100227e+03 4.1494521e+03 - 2.7581381e+03 -2.0470431e+03 4.1477141e+03 - 2.8108500e+03 -1.9837567e+03 4.1456946e+03 - 2.8622130e+03 -1.9202437e+03 4.1434099e+03 - 2.9121704e+03 -1.8565809e+03 4.1408782e+03 - 2.9606714e+03 -1.7928411e+03 4.1381195e+03 - 3.0076706e+03 -1.7290923e+03 4.1351551e+03 - 3.0531285e+03 -1.6653978e+03 4.1320074e+03 - 3.0970112e+03 -1.6018156e+03 4.1287000e+03 - 3.1392902e+03 -1.5383981e+03 4.1252567e+03 - 3.1799426e+03 -1.4751921e+03 4.1217022e+03 - 3.2189502e+03 -1.4122390e+03 4.1180610e+03 - 3.2562996e+03 -1.3495742e+03 4.1143580e+03 - 3.2919820e+03 -1.2872276e+03 4.1106174e+03 - 3.3259922e+03 -1.2252237e+03 4.1068635e+03 - 3.3583287e+03 -1.1635815e+03 4.1031197e+03 - 3.3889933e+03 -1.1023150e+03 4.0994088e+03 - 3.4179902e+03 -1.0414334e+03 4.0957530e+03 - 3.4453263e+03 -9.8094101e+02 4.0921734e+03 - 3.4710102e+03 -9.2083811e+02 4.0886902e+03 - 3.4950520e+03 -8.6112080e+02 4.0853223e+03 - 3.5174631e+03 -8.0178148e+02 4.0820880e+03 - 3.5382556e+03 -7.4280911e+02 4.0790041e+03 - 3.5574422e+03 -6.8418948e+02 4.0760862e+03 - 3.5750357e+03 -6.2590557e+02 4.0733489e+03 - 3.5910490e+03 -5.6793777e+02 4.0708055e+03 - 3.6054943e+03 -5.1026415e+02 4.0684682e+03 - 3.6183836e+03 -4.5286078e+02 4.0663478e+03 - 3.6297281e+03 -3.9570191e+02 4.0644542e+03 - 3.6395380e+03 -3.3876023e+02 4.0627959e+03 - 3.6478225e+03 -2.8200710e+02 4.0613803e+03 - 3.6545895e+03 -2.2541276e+02 4.0602136e+03 - 3.6598456e+03 -1.6894654e+02 4.0593009e+03 - 3.6635962e+03 -1.1257702e+02 4.0586462e+03 - 3.6658450e+03 -5.6272274e+01 4.0582522e+03 - 3.6665943e+03 0.0000000e+00 4.0581207e+03 - 3.7229236e+03 0.0000000e+00 4.0196797e+03 - 3.7221674e+03 5.6523491e+01 4.0198199e+03 - 3.7198980e+03 1.1308211e+02 4.0202399e+03 - 3.7161128e+03 1.6971080e+02 4.0209381e+03 - 3.7108076e+03 2.2644418e+02 4.0219114e+03 - 3.7039764e+03 2.8331630e+02 4.0231558e+03 - 3.6956118e+03 3.4036052e+02 4.0246661e+03 - 3.6857048e+03 3.9760929e+02 4.0264357e+03 - 3.6742452e+03 4.5509392e+02 4.0284569e+03 - 3.6612212e+03 5.1284440e+02 4.0307209e+03 - 3.6466204e+03 5.7088915e+02 4.0332174e+03 - 3.6304290e+03 6.2925479e+02 4.0359351e+03 - 3.6126329e+03 6.8796587e+02 4.0388612e+03 - 3.5932174e+03 7.4704458e+02 4.0419818e+03 - 3.5721674e+03 8.0651052e+02 4.0452815e+03 - 3.5494683e+03 8.6638033e+02 4.0487440e+03 - 3.5251054e+03 9.2666743e+02 4.0523513e+03 - 3.4990652e+03 9.8738165e+02 4.0560843e+03 - 3.4713350e+03 1.0485289e+03 4.0599229e+03 - 3.4419039e+03 1.1101110e+03 4.0638455e+03 - 3.4107627e+03 1.1721251e+03 4.0678296e+03 - 3.3779047e+03 1.2345633e+03 4.0718517e+03 - 3.3433260e+03 1.2974130e+03 4.0758872e+03 - 3.3070261e+03 1.3606556e+03 4.0799109e+03 - 3.2690081e+03 1.4242671e+03 4.0838968e+03 - 3.2292795e+03 1.4882175e+03 4.0878186e+03 - 3.1878523e+03 1.5524707e+03 4.0916495e+03 - 3.1447437e+03 1.6169846e+03 4.0953627e+03 - 3.0999764e+03 1.6817106e+03 4.0989317e+03 - 3.0535785e+03 1.7465941e+03 4.1023301e+03 - 3.0055846e+03 1.8115746e+03 4.1055324e+03 - 2.9560351e+03 1.8765855e+03 4.1085141e+03 - 2.9049769e+03 1.9415551e+03 4.1112517e+03 - 2.8524633e+03 2.0064064e+03 4.1137233e+03 - 2.7985534e+03 2.0710578e+03 4.1159089e+03 - 2.7433127e+03 2.1354241e+03 4.1177904e+03 - 2.6868121e+03 2.1994164e+03 4.1193522e+03 - 2.6291279e+03 2.2629436e+03 4.1205809e+03 - 2.5703409e+03 2.3259129e+03 4.1214662e+03 - 2.5105363e+03 2.3882304e+03 4.1220005e+03 - 2.4498025e+03 2.4498025e+03 4.1221791e+03 - 2.3882304e+03 2.5105363e+03 4.1220005e+03 - 2.3259129e+03 2.5703409e+03 4.1214662e+03 - 2.2629436e+03 2.6291279e+03 4.1205809e+03 - 2.1994164e+03 2.6868121e+03 4.1193522e+03 - 2.1354241e+03 2.7433127e+03 4.1177904e+03 - 2.0710578e+03 2.7985534e+03 4.1159089e+03 - 2.0064064e+03 2.8524633e+03 4.1137233e+03 - 1.9415551e+03 2.9049769e+03 4.1112517e+03 - 1.8765855e+03 2.9560351e+03 4.1085141e+03 - 1.8115746e+03 3.0055846e+03 4.1055324e+03 - 1.7465941e+03 3.0535785e+03 4.1023301e+03 - 1.6817106e+03 3.0999764e+03 4.0989317e+03 - 1.6169846e+03 3.1447437e+03 4.0953627e+03 - 1.5524707e+03 3.1878523e+03 4.0916495e+03 - 1.4882175e+03 3.2292795e+03 4.0878186e+03 - 1.4242671e+03 3.2690081e+03 4.0838968e+03 - 1.3606556e+03 3.3070261e+03 4.0799109e+03 - 1.2974130e+03 3.3433260e+03 4.0758872e+03 - 1.2345633e+03 3.3779047e+03 4.0718517e+03 - 1.1721251e+03 3.4107627e+03 4.0678296e+03 - 1.1101110e+03 3.4419039e+03 4.0638455e+03 - 1.0485289e+03 3.4713350e+03 4.0599229e+03 - 9.8738165e+02 3.4990652e+03 4.0560843e+03 - 9.2666743e+02 3.5251054e+03 4.0523513e+03 - 8.6638033e+02 3.5494683e+03 4.0487440e+03 - 8.0651052e+02 3.5721674e+03 4.0452815e+03 - 7.4704458e+02 3.5932174e+03 4.0419818e+03 - 6.8796587e+02 3.6126329e+03 4.0388612e+03 - 6.2925479e+02 3.6304290e+03 4.0359351e+03 - 5.7088915e+02 3.6466204e+03 4.0332174e+03 - 5.1284440e+02 3.6612212e+03 4.0307209e+03 - 4.5509392e+02 3.6742452e+03 4.0284569e+03 - 3.9760929e+02 3.6857048e+03 4.0264357e+03 - 3.4036052e+02 3.6956118e+03 4.0246661e+03 - 2.8331630e+02 3.7039764e+03 4.0231558e+03 - 2.2644418e+02 3.7108076e+03 4.0219114e+03 - 1.6971080e+02 3.7161128e+03 4.0209381e+03 - 1.1308211e+02 3.7198980e+03 4.0202399e+03 - 5.6523491e+01 3.7221674e+03 4.0198199e+03 - 0.0000000e+00 3.7229236e+03 4.0196797e+03 - -5.6523491e+01 3.7221674e+03 4.0198199e+03 - -1.1308211e+02 3.7198980e+03 4.0202399e+03 - -1.6971080e+02 3.7161128e+03 4.0209381e+03 - -2.2644418e+02 3.7108076e+03 4.0219114e+03 - -2.8331630e+02 3.7039764e+03 4.0231558e+03 - -3.4036052e+02 3.6956118e+03 4.0246661e+03 - -3.9760929e+02 3.6857048e+03 4.0264357e+03 - -4.5509392e+02 3.6742452e+03 4.0284569e+03 - -5.1284440e+02 3.6612212e+03 4.0307209e+03 - -5.7088915e+02 3.6466204e+03 4.0332174e+03 - -6.2925479e+02 3.6304290e+03 4.0359351e+03 - -6.8796587e+02 3.6126329e+03 4.0388612e+03 - -7.4704458e+02 3.5932174e+03 4.0419818e+03 - -8.0651052e+02 3.5721674e+03 4.0452815e+03 - -8.6638033e+02 3.5494683e+03 4.0487440e+03 - -9.2666743e+02 3.5251054e+03 4.0523513e+03 - -9.8738165e+02 3.4990652e+03 4.0560843e+03 - -1.0485289e+03 3.4713350e+03 4.0599229e+03 - -1.1101110e+03 3.4419039e+03 4.0638455e+03 - -1.1721251e+03 3.4107627e+03 4.0678296e+03 - -1.2345633e+03 3.3779047e+03 4.0718517e+03 - -1.2974130e+03 3.3433260e+03 4.0758872e+03 - -1.3606556e+03 3.3070261e+03 4.0799109e+03 - -1.4242671e+03 3.2690081e+03 4.0838968e+03 - -1.4882175e+03 3.2292795e+03 4.0878186e+03 - -1.5524707e+03 3.1878523e+03 4.0916495e+03 - -1.6169846e+03 3.1447437e+03 4.0953627e+03 - -1.6817106e+03 3.0999764e+03 4.0989317e+03 - -1.7465941e+03 3.0535785e+03 4.1023301e+03 - -1.8115746e+03 3.0055846e+03 4.1055324e+03 - -1.8765855e+03 2.9560351e+03 4.1085141e+03 - -1.9415551e+03 2.9049769e+03 4.1112517e+03 - -2.0064064e+03 2.8524633e+03 4.1137233e+03 - -2.0710578e+03 2.7985534e+03 4.1159089e+03 - -2.1354241e+03 2.7433127e+03 4.1177904e+03 - -2.1994164e+03 2.6868121e+03 4.1193522e+03 - -2.2629436e+03 2.6291279e+03 4.1205809e+03 - -2.3259129e+03 2.5703409e+03 4.1214662e+03 - -2.3882304e+03 2.5105363e+03 4.1220005e+03 - -2.4498025e+03 2.4498025e+03 4.1221791e+03 - -2.5105363e+03 2.3882304e+03 4.1220005e+03 - -2.5703409e+03 2.3259129e+03 4.1214662e+03 - -2.6291279e+03 2.2629436e+03 4.1205809e+03 - -2.6868121e+03 2.1994164e+03 4.1193522e+03 - -2.7433127e+03 2.1354241e+03 4.1177904e+03 - -2.7985534e+03 2.0710578e+03 4.1159089e+03 - -2.8524633e+03 2.0064064e+03 4.1137233e+03 - -2.9049769e+03 1.9415551e+03 4.1112517e+03 - -2.9560351e+03 1.8765855e+03 4.1085141e+03 - -3.0055846e+03 1.8115746e+03 4.1055324e+03 - -3.0535785e+03 1.7465941e+03 4.1023301e+03 - -3.0999764e+03 1.6817106e+03 4.0989317e+03 - -3.1447437e+03 1.6169846e+03 4.0953627e+03 - -3.1878523e+03 1.5524707e+03 4.0916495e+03 - -3.2292795e+03 1.4882175e+03 4.0878186e+03 - -3.2690081e+03 1.4242671e+03 4.0838968e+03 - -3.3070261e+03 1.3606556e+03 4.0799109e+03 - -3.3433260e+03 1.2974130e+03 4.0758872e+03 - -3.3779047e+03 1.2345633e+03 4.0718517e+03 - -3.4107627e+03 1.1721251e+03 4.0678296e+03 - -3.4419039e+03 1.1101110e+03 4.0638455e+03 - -3.4713350e+03 1.0485289e+03 4.0599229e+03 - -3.4990652e+03 9.8738165e+02 4.0560843e+03 - -3.5251054e+03 9.2666743e+02 4.0523513e+03 - -3.5494683e+03 8.6638033e+02 4.0487440e+03 - -3.5721674e+03 8.0651052e+02 4.0452815e+03 - -3.5932174e+03 7.4704458e+02 4.0419818e+03 - -3.6126329e+03 6.8796587e+02 4.0388612e+03 - -3.6304290e+03 6.2925479e+02 4.0359351e+03 - -3.6466204e+03 5.7088915e+02 4.0332174e+03 - -3.6612212e+03 5.1284440e+02 4.0307209e+03 - -3.6742452e+03 4.5509392e+02 4.0284569e+03 - -3.6857048e+03 3.9760929e+02 4.0264357e+03 - -3.6956118e+03 3.4036052e+02 4.0246661e+03 - -3.7039764e+03 2.8331630e+02 4.0231558e+03 - -3.7108076e+03 2.2644418e+02 4.0219114e+03 - -3.7161128e+03 1.6971080e+02 4.0209381e+03 - -3.7198980e+03 1.1308211e+02 4.0202399e+03 - -3.7221674e+03 5.6523491e+01 4.0198199e+03 - -3.7229236e+03 4.8134273e-09 4.0196797e+03 - -3.7221674e+03 -5.6523491e+01 4.0198199e+03 - -3.7198980e+03 -1.1308211e+02 4.0202399e+03 - -3.7161128e+03 -1.6971080e+02 4.0209381e+03 - -3.7108076e+03 -2.2644418e+02 4.0219114e+03 - -3.7039764e+03 -2.8331630e+02 4.0231558e+03 - -3.6956118e+03 -3.4036052e+02 4.0246661e+03 - -3.6857048e+03 -3.9760929e+02 4.0264357e+03 - -3.6742452e+03 -4.5509392e+02 4.0284569e+03 - -3.6612212e+03 -5.1284440e+02 4.0307209e+03 - -3.6466204e+03 -5.7088915e+02 4.0332174e+03 - -3.6304290e+03 -6.2925479e+02 4.0359351e+03 - -3.6126329e+03 -6.8796587e+02 4.0388612e+03 - -3.5932174e+03 -7.4704458e+02 4.0419818e+03 - -3.5721674e+03 -8.0651052e+02 4.0452815e+03 - -3.5494683e+03 -8.6638033e+02 4.0487440e+03 - -3.5251054e+03 -9.2666743e+02 4.0523513e+03 - -3.4990652e+03 -9.8738165e+02 4.0560843e+03 - -3.4713350e+03 -1.0485289e+03 4.0599229e+03 - -3.4419039e+03 -1.1101110e+03 4.0638455e+03 - -3.4107627e+03 -1.1721251e+03 4.0678296e+03 - -3.3779047e+03 -1.2345633e+03 4.0718517e+03 - -3.3433260e+03 -1.2974130e+03 4.0758872e+03 - -3.3070261e+03 -1.3606556e+03 4.0799109e+03 - -3.2690081e+03 -1.4242671e+03 4.0838968e+03 - -3.2292795e+03 -1.4882175e+03 4.0878186e+03 - -3.1878523e+03 -1.5524707e+03 4.0916495e+03 - -3.1447437e+03 -1.6169846e+03 4.0953627e+03 - -3.0999764e+03 -1.6817106e+03 4.0989317e+03 - -3.0535785e+03 -1.7465941e+03 4.1023301e+03 - -3.0055846e+03 -1.8115746e+03 4.1055324e+03 - -2.9560351e+03 -1.8765855e+03 4.1085141e+03 - -2.9049769e+03 -1.9415551e+03 4.1112517e+03 - -2.8524633e+03 -2.0064064e+03 4.1137233e+03 - -2.7985534e+03 -2.0710578e+03 4.1159089e+03 - -2.7433127e+03 -2.1354241e+03 4.1177904e+03 - -2.6868121e+03 -2.1994164e+03 4.1193522e+03 - -2.6291279e+03 -2.2629436e+03 4.1205809e+03 - -2.5703409e+03 -2.3259129e+03 4.1214662e+03 - -2.5105363e+03 -2.3882304e+03 4.1220005e+03 - -2.4498025e+03 -2.4498025e+03 4.1221791e+03 - -2.3882304e+03 -2.5105363e+03 4.1220005e+03 - -2.3259129e+03 -2.5703409e+03 4.1214662e+03 - -2.2629436e+03 -2.6291279e+03 4.1205809e+03 - -2.1994164e+03 -2.6868121e+03 4.1193522e+03 - -2.1354241e+03 -2.7433127e+03 4.1177904e+03 - -2.0710578e+03 -2.7985534e+03 4.1159089e+03 - -2.0064064e+03 -2.8524633e+03 4.1137233e+03 - -1.9415551e+03 -2.9049769e+03 4.1112517e+03 - -1.8765855e+03 -2.9560351e+03 4.1085141e+03 - -1.8115746e+03 -3.0055846e+03 4.1055324e+03 - -1.7465941e+03 -3.0535785e+03 4.1023301e+03 - -1.6817106e+03 -3.0999764e+03 4.0989317e+03 - -1.6169846e+03 -3.1447437e+03 4.0953627e+03 - -1.5524707e+03 -3.1878523e+03 4.0916495e+03 - -1.4882175e+03 -3.2292795e+03 4.0878186e+03 - -1.4242671e+03 -3.2690081e+03 4.0838968e+03 - -1.3606556e+03 -3.3070261e+03 4.0799109e+03 - -1.2974130e+03 -3.3433260e+03 4.0758872e+03 - -1.2345633e+03 -3.3779047e+03 4.0718517e+03 - -1.1721251e+03 -3.4107627e+03 4.0678296e+03 - -1.1101110e+03 -3.4419039e+03 4.0638455e+03 - -1.0485289e+03 -3.4713350e+03 4.0599229e+03 - -9.8738165e+02 -3.4990652e+03 4.0560843e+03 - -9.2666743e+02 -3.5251054e+03 4.0523513e+03 - -8.6638033e+02 -3.5494683e+03 4.0487440e+03 - -8.0651052e+02 -3.5721674e+03 4.0452815e+03 - -7.4704458e+02 -3.5932174e+03 4.0419818e+03 - -6.8796587e+02 -3.6126329e+03 4.0388612e+03 - -6.2925479e+02 -3.6304290e+03 4.0359351e+03 - -5.7088915e+02 -3.6466204e+03 4.0332174e+03 - -5.1284440e+02 -3.6612212e+03 4.0307209e+03 - -4.5509392e+02 -3.6742452e+03 4.0284569e+03 - -3.9760929e+02 -3.6857048e+03 4.0264357e+03 - -3.4036052e+02 -3.6956118e+03 4.0246661e+03 - -2.8331630e+02 -3.7039764e+03 4.0231558e+03 - -2.2644418e+02 -3.7108076e+03 4.0219114e+03 - -1.6971080e+02 -3.7161128e+03 4.0209381e+03 - -1.1308211e+02 -3.7198980e+03 4.0202399e+03 - -5.6523491e+01 -3.7221674e+03 4.0198199e+03 - -4.8134273e-09 -3.7229236e+03 4.0196797e+03 - 5.6523491e+01 -3.7221674e+03 4.0198199e+03 - 1.1308211e+02 -3.7198980e+03 4.0202399e+03 - 1.6971080e+02 -3.7161128e+03 4.0209381e+03 - 2.2644418e+02 -3.7108076e+03 4.0219114e+03 - 2.8331630e+02 -3.7039764e+03 4.0231558e+03 - 3.4036052e+02 -3.6956118e+03 4.0246661e+03 - 3.9760929e+02 -3.6857048e+03 4.0264357e+03 - 4.5509392e+02 -3.6742452e+03 4.0284569e+03 - 5.1284440e+02 -3.6612212e+03 4.0307209e+03 - 5.7088915e+02 -3.6466204e+03 4.0332174e+03 - 6.2925479e+02 -3.6304290e+03 4.0359351e+03 - 6.8796587e+02 -3.6126329e+03 4.0388612e+03 - 7.4704458e+02 -3.5932174e+03 4.0419818e+03 - 8.0651052e+02 -3.5721674e+03 4.0452815e+03 - 8.6638033e+02 -3.5494683e+03 4.0487440e+03 - 9.2666743e+02 -3.5251054e+03 4.0523513e+03 - 9.8738165e+02 -3.4990652e+03 4.0560843e+03 - 1.0485289e+03 -3.4713350e+03 4.0599229e+03 - 1.1101110e+03 -3.4419039e+03 4.0638455e+03 - 1.1721251e+03 -3.4107627e+03 4.0678296e+03 - 1.2345633e+03 -3.3779047e+03 4.0718517e+03 - 1.2974130e+03 -3.3433260e+03 4.0758872e+03 - 1.3606556e+03 -3.3070261e+03 4.0799109e+03 - 1.4242671e+03 -3.2690081e+03 4.0838968e+03 - 1.4882175e+03 -3.2292795e+03 4.0878186e+03 - 1.5524707e+03 -3.1878523e+03 4.0916495e+03 - 1.6169846e+03 -3.1447437e+03 4.0953627e+03 - 1.6817106e+03 -3.0999764e+03 4.0989317e+03 - 1.7465941e+03 -3.0535785e+03 4.1023301e+03 - 1.8115746e+03 -3.0055846e+03 4.1055324e+03 - 1.8765855e+03 -2.9560351e+03 4.1085141e+03 - 1.9415551e+03 -2.9049769e+03 4.1112517e+03 - 2.0064064e+03 -2.8524633e+03 4.1137233e+03 - 2.0710578e+03 -2.7985534e+03 4.1159089e+03 - 2.1354241e+03 -2.7433127e+03 4.1177904e+03 - 2.1994164e+03 -2.6868121e+03 4.1193522e+03 - 2.2629436e+03 -2.6291279e+03 4.1205809e+03 - 2.3259129e+03 -2.5703409e+03 4.1214662e+03 - 2.3882304e+03 -2.5105363e+03 4.1220005e+03 - 2.4498025e+03 -2.4498025e+03 4.1221791e+03 - 2.5105363e+03 -2.3882304e+03 4.1220005e+03 - 2.5703409e+03 -2.3259129e+03 4.1214662e+03 - 2.6291279e+03 -2.2629436e+03 4.1205809e+03 - 2.6868121e+03 -2.1994164e+03 4.1193522e+03 - 2.7433127e+03 -2.1354241e+03 4.1177904e+03 - 2.7985534e+03 -2.0710578e+03 4.1159089e+03 - 2.8524633e+03 -2.0064064e+03 4.1137233e+03 - 2.9049769e+03 -1.9415551e+03 4.1112517e+03 - 2.9560351e+03 -1.8765855e+03 4.1085141e+03 - 3.0055846e+03 -1.8115746e+03 4.1055324e+03 - 3.0535785e+03 -1.7465941e+03 4.1023301e+03 - 3.0999764e+03 -1.6817106e+03 4.0989317e+03 - 3.1447437e+03 -1.6169846e+03 4.0953627e+03 - 3.1878523e+03 -1.5524707e+03 4.0916495e+03 - 3.2292795e+03 -1.4882175e+03 4.0878186e+03 - 3.2690081e+03 -1.4242671e+03 4.0838968e+03 - 3.3070261e+03 -1.3606556e+03 4.0799109e+03 - 3.3433260e+03 -1.2974130e+03 4.0758872e+03 - 3.3779047e+03 -1.2345633e+03 4.0718517e+03 - 3.4107627e+03 -1.1721251e+03 4.0678296e+03 - 3.4419039e+03 -1.1101110e+03 4.0638455e+03 - 3.4713350e+03 -1.0485289e+03 4.0599229e+03 - 3.4990652e+03 -9.8738165e+02 4.0560843e+03 - 3.5251054e+03 -9.2666743e+02 4.0523513e+03 - 3.5494683e+03 -8.6638033e+02 4.0487440e+03 - 3.5721674e+03 -8.0651052e+02 4.0452815e+03 - 3.5932174e+03 -7.4704458e+02 4.0419818e+03 - 3.6126329e+03 -6.8796587e+02 4.0388612e+03 - 3.6304290e+03 -6.2925479e+02 4.0359351e+03 - 3.6466204e+03 -5.7088915e+02 4.0332174e+03 - 3.6612212e+03 -5.1284440e+02 4.0307209e+03 - 3.6742452e+03 -4.5509392e+02 4.0284569e+03 - 3.6857048e+03 -3.9760929e+02 4.0264357e+03 - 3.6956118e+03 -3.4036052e+02 4.0246661e+03 - 3.7039764e+03 -2.8331630e+02 4.0231558e+03 - 3.7108076e+03 -2.2644418e+02 4.0219114e+03 - 3.7161128e+03 -1.6971080e+02 4.0209381e+03 - 3.7198980e+03 -1.1308211e+02 4.0202399e+03 - 3.7221674e+03 -5.6523491e+01 4.0198199e+03 - 3.7229236e+03 4.8134273e-09 4.0196797e+03 - 3.7776598e+03 4.8134273e-09 3.9807286e+03 - 3.7768975e+03 5.6738035e+01 3.9808777e+03 - 3.7746097e+03 1.1351382e+02 3.9813243e+03 - 3.7707935e+03 1.7036494e+02 3.9820666e+03 - 3.7654443e+03 2.2732863e+02 3.9831017e+03 - 3.7585554e+03 2.8444161e+02 3.9844252e+03 - 3.7501185e+03 3.4173990e+02 3.9860318e+03 - 3.7401238e+03 3.9925860e+02 3.9879148e+03 - 3.7285596e+03 4.5703173e+02 3.9900661e+03 - 3.7154131e+03 5.1509196e+02 3.9924766e+03 - 3.7006700e+03 5.7347043e+02 3.9951356e+03 - 3.6843151e+03 6.3219645e+02 3.9980313e+03 - 3.6663322e+03 6.9129725e+02 4.0011504e+03 - 3.6467047e+03 7.5079771e+02 4.0044784e+03 - 3.6254153e+03 8.1072003e+02 4.0079992e+03 - 3.6024470e+03 8.7108342e+02 4.0116955e+03 - 3.5777829e+03 9.3190376e+02 4.0155485e+03 - 3.5514069e+03 9.9319325e+02 4.0195382e+03 - 3.5233038e+03 1.0549601e+03 4.0236431e+03 - 3.4934601e+03 1.1172079e+03 4.0278404e+03 - 3.4618642e+03 1.1799358e+03 4.0321063e+03 - 3.4285067e+03 1.2431376e+03 4.0364155e+03 - 3.3933815e+03 1.3068016e+03 4.0407420e+03 - 3.3564858e+03 1.3709103e+03 4.0450586e+03 - 3.3178207e+03 1.4354402e+03 4.0493376e+03 - 3.2773918e+03 1.5003613e+03 4.0535504e+03 - 3.2352097e+03 1.5656372e+03 4.0576683e+03 - 3.1912906e+03 1.6312246e+03 4.0616623e+03 - 3.1456563e+03 1.6970736e+03 4.0655034e+03 - 3.0983350e+03 1.7631275e+03 4.0691631e+03 - 3.0493615e+03 1.8293231e+03 4.0726137e+03 - 2.9987772e+03 1.8955907e+03 4.0758282e+03 - 2.9466305e+03 1.9618547e+03 4.0787810e+03 - 2.8929767e+03 2.0280337e+03 4.0814481e+03 - 2.8378780e+03 2.0940414e+03 4.0838075e+03 - 2.7814030e+03 2.1597871e+03 4.0858394e+03 - 2.7236268e+03 2.2251763e+03 4.0875265e+03 - 2.6646303e+03 2.2901117e+03 4.0888542e+03 - 2.6044993e+03 2.3544943e+03 4.0898110e+03 - 2.5433246e+03 2.4182240e+03 4.0903884e+03 - 2.4812004e+03 2.4812004e+03 4.0905815e+03 - 2.4182240e+03 2.5433246e+03 4.0903884e+03 - 2.3544943e+03 2.6044993e+03 4.0898110e+03 - 2.2901117e+03 2.6646303e+03 4.0888542e+03 - 2.2251763e+03 2.7236268e+03 4.0875265e+03 - 2.1597871e+03 2.7814030e+03 4.0858394e+03 - 2.0940414e+03 2.8378780e+03 4.0838075e+03 - 2.0280337e+03 2.8929767e+03 4.0814481e+03 - 1.9618547e+03 2.9466305e+03 4.0787810e+03 - 1.8955907e+03 2.9987772e+03 4.0758282e+03 - 1.8293231e+03 3.0493615e+03 4.0726137e+03 - 1.7631275e+03 3.0983350e+03 4.0691631e+03 - 1.6970736e+03 3.1456563e+03 4.0655034e+03 - 1.6312246e+03 3.1912906e+03 4.0616623e+03 - 1.5656372e+03 3.2352097e+03 4.0576683e+03 - 1.5003613e+03 3.2773918e+03 4.0535504e+03 - 1.4354402e+03 3.3178207e+03 4.0493376e+03 - 1.3709103e+03 3.3564858e+03 4.0450586e+03 - 1.3068016e+03 3.3933815e+03 4.0407420e+03 - 1.2431376e+03 3.4285067e+03 4.0364155e+03 - 1.1799358e+03 3.4618642e+03 4.0321063e+03 - 1.1172079e+03 3.4934601e+03 4.0278404e+03 - 1.0549601e+03 3.5233038e+03 4.0236431e+03 - 9.9319325e+02 3.5514069e+03 4.0195382e+03 - 9.3190376e+02 3.5777829e+03 4.0155485e+03 - 8.7108342e+02 3.6024470e+03 4.0116955e+03 - 8.1072003e+02 3.6254153e+03 4.0079992e+03 - 7.5079771e+02 3.6467047e+03 4.0044784e+03 - 6.9129725e+02 3.6663322e+03 4.0011504e+03 - 6.3219645e+02 3.6843151e+03 3.9980313e+03 - 5.7347043e+02 3.7006700e+03 3.9951356e+03 - 5.1509196e+02 3.7154131e+03 3.9924766e+03 - 4.5703173e+02 3.7285596e+03 3.9900661e+03 - 3.9925860e+02 3.7401238e+03 3.9879148e+03 - 3.4173990e+02 3.7501185e+03 3.9860318e+03 - 2.8444161e+02 3.7585554e+03 3.9844252e+03 - 2.2732863e+02 3.7654443e+03 3.9831017e+03 - 1.7036494e+02 3.7707935e+03 3.9820666e+03 - 1.1351382e+02 3.7746097e+03 3.9813243e+03 - 5.6738035e+01 3.7768975e+03 3.9808777e+03 - 4.8134273e-09 3.7776598e+03 3.9807286e+03 - -5.6738035e+01 3.7768975e+03 3.9808777e+03 - -1.1351382e+02 3.7746097e+03 3.9813243e+03 - -1.7036494e+02 3.7707935e+03 3.9820666e+03 - -2.2732863e+02 3.7654443e+03 3.9831017e+03 - -2.8444161e+02 3.7585554e+03 3.9844252e+03 - -3.4173990e+02 3.7501185e+03 3.9860318e+03 - -3.9925860e+02 3.7401238e+03 3.9879148e+03 - -4.5703173e+02 3.7285596e+03 3.9900661e+03 - -5.1509196e+02 3.7154131e+03 3.9924766e+03 - -5.7347043e+02 3.7006700e+03 3.9951356e+03 - -6.3219645e+02 3.6843151e+03 3.9980313e+03 - -6.9129725e+02 3.6663322e+03 4.0011504e+03 - -7.5079771e+02 3.6467047e+03 4.0044784e+03 - -8.1072003e+02 3.6254153e+03 4.0079992e+03 - -8.7108342e+02 3.6024470e+03 4.0116955e+03 - -9.3190376e+02 3.5777829e+03 4.0155485e+03 - -9.9319325e+02 3.5514069e+03 4.0195382e+03 - -1.0549601e+03 3.5233038e+03 4.0236431e+03 - -1.1172079e+03 3.4934601e+03 4.0278404e+03 - -1.1799358e+03 3.4618642e+03 4.0321063e+03 - -1.2431376e+03 3.4285067e+03 4.0364155e+03 - -1.3068016e+03 3.3933815e+03 4.0407420e+03 - -1.3709103e+03 3.3564858e+03 4.0450586e+03 - -1.4354402e+03 3.3178207e+03 4.0493376e+03 - -1.5003613e+03 3.2773918e+03 4.0535504e+03 - -1.5656372e+03 3.2352097e+03 4.0576683e+03 - -1.6312246e+03 3.1912906e+03 4.0616623e+03 - -1.6970736e+03 3.1456563e+03 4.0655034e+03 - -1.7631275e+03 3.0983350e+03 4.0691631e+03 - -1.8293231e+03 3.0493615e+03 4.0726137e+03 - -1.8955907e+03 2.9987772e+03 4.0758282e+03 - -1.9618547e+03 2.9466305e+03 4.0787810e+03 - -2.0280337e+03 2.8929767e+03 4.0814481e+03 - -2.0940414e+03 2.8378780e+03 4.0838075e+03 - -2.1597871e+03 2.7814030e+03 4.0858394e+03 - -2.2251763e+03 2.7236268e+03 4.0875265e+03 - -2.2901117e+03 2.6646303e+03 4.0888542e+03 - -2.3544943e+03 2.6044993e+03 4.0898110e+03 - -2.4182240e+03 2.5433246e+03 4.0903884e+03 - -2.4812004e+03 2.4812004e+03 4.0905815e+03 - -2.5433246e+03 2.4182240e+03 4.0903884e+03 - -2.6044993e+03 2.3544943e+03 4.0898110e+03 - -2.6646303e+03 2.2901117e+03 4.0888542e+03 - -2.7236268e+03 2.2251763e+03 4.0875265e+03 - -2.7814030e+03 2.1597871e+03 4.0858394e+03 - -2.8378780e+03 2.0940414e+03 4.0838075e+03 - -2.8929767e+03 2.0280337e+03 4.0814481e+03 - -2.9466305e+03 1.9618547e+03 4.0787810e+03 - -2.9987772e+03 1.8955907e+03 4.0758282e+03 - -3.0493615e+03 1.8293231e+03 4.0726137e+03 - -3.0983350e+03 1.7631275e+03 4.0691631e+03 - -3.1456563e+03 1.6970736e+03 4.0655034e+03 - -3.1912906e+03 1.6312246e+03 4.0616623e+03 - -3.2352097e+03 1.5656372e+03 4.0576683e+03 - -3.2773918e+03 1.5003613e+03 4.0535504e+03 - -3.3178207e+03 1.4354402e+03 4.0493376e+03 - -3.3564858e+03 1.3709103e+03 4.0450586e+03 - -3.3933815e+03 1.3068016e+03 4.0407420e+03 - -3.4285067e+03 1.2431376e+03 4.0364155e+03 - -3.4618642e+03 1.1799358e+03 4.0321063e+03 - -3.4934601e+03 1.1172079e+03 4.0278404e+03 - -3.5233038e+03 1.0549601e+03 4.0236431e+03 - -3.5514069e+03 9.9319325e+02 4.0195382e+03 - -3.5777829e+03 9.3190376e+02 4.0155485e+03 - -3.6024470e+03 8.7108342e+02 4.0116955e+03 - -3.6254153e+03 8.1072003e+02 4.0079992e+03 - -3.6467047e+03 7.5079771e+02 4.0044784e+03 - -3.6663322e+03 6.9129725e+02 4.0011504e+03 - -3.6843151e+03 6.3219645e+02 3.9980313e+03 - -3.7006700e+03 5.7347043e+02 3.9951356e+03 - -3.7154131e+03 5.1509196e+02 3.9924766e+03 - -3.7285596e+03 4.5703173e+02 3.9900661e+03 - -3.7401238e+03 3.9925860e+02 3.9879148e+03 - -3.7501185e+03 3.4173990e+02 3.9860318e+03 - -3.7585554e+03 2.8444161e+02 3.9844252e+03 - -3.7654443e+03 2.2732863e+02 3.9831017e+03 - -3.7707935e+03 1.7036494e+02 3.9820666e+03 - -3.7746097e+03 1.1351382e+02 3.9813243e+03 - -3.7768975e+03 5.6738035e+01 3.9808777e+03 - -3.7776598e+03 0.0000000e+00 3.9807286e+03 - -3.7768975e+03 -5.6738035e+01 3.9808777e+03 - -3.7746097e+03 -1.1351382e+02 3.9813243e+03 - -3.7707935e+03 -1.7036494e+02 3.9820666e+03 - -3.7654443e+03 -2.2732863e+02 3.9831017e+03 - -3.7585554e+03 -2.8444161e+02 3.9844252e+03 - -3.7501185e+03 -3.4173990e+02 3.9860318e+03 - -3.7401238e+03 -3.9925860e+02 3.9879148e+03 - -3.7285596e+03 -4.5703173e+02 3.9900661e+03 - -3.7154131e+03 -5.1509196e+02 3.9924766e+03 - -3.7006700e+03 -5.7347043e+02 3.9951356e+03 - -3.6843151e+03 -6.3219645e+02 3.9980313e+03 - -3.6663322e+03 -6.9129725e+02 4.0011504e+03 - -3.6467047e+03 -7.5079771e+02 4.0044784e+03 - -3.6254153e+03 -8.1072003e+02 4.0079992e+03 - -3.6024470e+03 -8.7108342e+02 4.0116955e+03 - -3.5777829e+03 -9.3190376e+02 4.0155485e+03 - -3.5514069e+03 -9.9319325e+02 4.0195382e+03 - -3.5233038e+03 -1.0549601e+03 4.0236431e+03 - -3.4934601e+03 -1.1172079e+03 4.0278404e+03 - -3.4618642e+03 -1.1799358e+03 4.0321063e+03 - -3.4285067e+03 -1.2431376e+03 4.0364155e+03 - -3.3933815e+03 -1.3068016e+03 4.0407420e+03 - -3.3564858e+03 -1.3709103e+03 4.0450586e+03 - -3.3178207e+03 -1.4354402e+03 4.0493376e+03 - -3.2773918e+03 -1.5003613e+03 4.0535504e+03 - -3.2352097e+03 -1.5656372e+03 4.0576683e+03 - -3.1912906e+03 -1.6312246e+03 4.0616623e+03 - -3.1456563e+03 -1.6970736e+03 4.0655034e+03 - -3.0983350e+03 -1.7631275e+03 4.0691631e+03 - -3.0493615e+03 -1.8293231e+03 4.0726137e+03 - -2.9987772e+03 -1.8955907e+03 4.0758282e+03 - -2.9466305e+03 -1.9618547e+03 4.0787810e+03 - -2.8929767e+03 -2.0280337e+03 4.0814481e+03 - -2.8378780e+03 -2.0940414e+03 4.0838075e+03 - -2.7814030e+03 -2.1597871e+03 4.0858394e+03 - -2.7236268e+03 -2.2251763e+03 4.0875265e+03 - -2.6646303e+03 -2.2901117e+03 4.0888542e+03 - -2.6044993e+03 -2.3544943e+03 4.0898110e+03 - -2.5433246e+03 -2.4182240e+03 4.0903884e+03 - -2.4812004e+03 -2.4812004e+03 4.0905815e+03 - -2.4182240e+03 -2.5433246e+03 4.0903884e+03 - -2.3544943e+03 -2.6044993e+03 4.0898110e+03 - -2.2901117e+03 -2.6646303e+03 4.0888542e+03 - -2.2251763e+03 -2.7236268e+03 4.0875265e+03 - -2.1597871e+03 -2.7814030e+03 4.0858394e+03 - -2.0940414e+03 -2.8378780e+03 4.0838075e+03 - -2.0280337e+03 -2.8929767e+03 4.0814481e+03 - -1.9618547e+03 -2.9466305e+03 4.0787810e+03 - -1.8955907e+03 -2.9987772e+03 4.0758282e+03 - -1.8293231e+03 -3.0493615e+03 4.0726137e+03 - -1.7631275e+03 -3.0983350e+03 4.0691631e+03 - -1.6970736e+03 -3.1456563e+03 4.0655034e+03 - -1.6312246e+03 -3.1912906e+03 4.0616623e+03 - -1.5656372e+03 -3.2352097e+03 4.0576683e+03 - -1.5003613e+03 -3.2773918e+03 4.0535504e+03 - -1.4354402e+03 -3.3178207e+03 4.0493376e+03 - -1.3709103e+03 -3.3564858e+03 4.0450586e+03 - -1.3068016e+03 -3.3933815e+03 4.0407420e+03 - -1.2431376e+03 -3.4285067e+03 4.0364155e+03 - -1.1799358e+03 -3.4618642e+03 4.0321063e+03 - -1.1172079e+03 -3.4934601e+03 4.0278404e+03 - -1.0549601e+03 -3.5233038e+03 4.0236431e+03 - -9.9319325e+02 -3.5514069e+03 4.0195382e+03 - -9.3190376e+02 -3.5777829e+03 4.0155485e+03 - -8.7108342e+02 -3.6024470e+03 4.0116955e+03 - -8.1072003e+02 -3.6254153e+03 4.0079992e+03 - -7.5079771e+02 -3.6467047e+03 4.0044784e+03 - -6.9129725e+02 -3.6663322e+03 4.0011504e+03 - -6.3219645e+02 -3.6843151e+03 3.9980313e+03 - -5.7347043e+02 -3.7006700e+03 3.9951356e+03 - -5.1509196e+02 -3.7154131e+03 3.9924766e+03 - -4.5703173e+02 -3.7285596e+03 3.9900661e+03 - -3.9925860e+02 -3.7401238e+03 3.9879148e+03 - -3.4173990e+02 -3.7501185e+03 3.9860318e+03 - -2.8444161e+02 -3.7585554e+03 3.9844252e+03 - -2.2732863e+02 -3.7654443e+03 3.9831017e+03 - -1.7036494e+02 -3.7707935e+03 3.9820666e+03 - -1.1351382e+02 -3.7746097e+03 3.9813243e+03 - -5.6738035e+01 -3.7768975e+03 3.9808777e+03 - -4.8134273e-09 -3.7776598e+03 3.9807286e+03 - 5.6738035e+01 -3.7768975e+03 3.9808777e+03 - 1.1351382e+02 -3.7746097e+03 3.9813243e+03 - 1.7036494e+02 -3.7707935e+03 3.9820666e+03 - 2.2732863e+02 -3.7654443e+03 3.9831017e+03 - 2.8444161e+02 -3.7585554e+03 3.9844252e+03 - 3.4173990e+02 -3.7501185e+03 3.9860318e+03 - 3.9925860e+02 -3.7401238e+03 3.9879148e+03 - 4.5703173e+02 -3.7285596e+03 3.9900661e+03 - 5.1509196e+02 -3.7154131e+03 3.9924766e+03 - 5.7347043e+02 -3.7006700e+03 3.9951356e+03 - 6.3219645e+02 -3.6843151e+03 3.9980313e+03 - 6.9129725e+02 -3.6663322e+03 4.0011504e+03 - 7.5079771e+02 -3.6467047e+03 4.0044784e+03 - 8.1072003e+02 -3.6254153e+03 4.0079992e+03 - 8.7108342e+02 -3.6024470e+03 4.0116955e+03 - 9.3190376e+02 -3.5777829e+03 4.0155485e+03 - 9.9319325e+02 -3.5514069e+03 4.0195382e+03 - 1.0549601e+03 -3.5233038e+03 4.0236431e+03 - 1.1172079e+03 -3.4934601e+03 4.0278404e+03 - 1.1799358e+03 -3.4618642e+03 4.0321063e+03 - 1.2431376e+03 -3.4285067e+03 4.0364155e+03 - 1.3068016e+03 -3.3933815e+03 4.0407420e+03 - 1.3709103e+03 -3.3564858e+03 4.0450586e+03 - 1.4354402e+03 -3.3178207e+03 4.0493376e+03 - 1.5003613e+03 -3.2773918e+03 4.0535504e+03 - 1.5656372e+03 -3.2352097e+03 4.0576683e+03 - 1.6312246e+03 -3.1912906e+03 4.0616623e+03 - 1.6970736e+03 -3.1456563e+03 4.0655034e+03 - 1.7631275e+03 -3.0983350e+03 4.0691631e+03 - 1.8293231e+03 -3.0493615e+03 4.0726137e+03 - 1.8955907e+03 -2.9987772e+03 4.0758282e+03 - 1.9618547e+03 -2.9466305e+03 4.0787810e+03 - 2.0280337e+03 -2.8929767e+03 4.0814481e+03 - 2.0940414e+03 -2.8378780e+03 4.0838075e+03 - 2.1597871e+03 -2.7814030e+03 4.0858394e+03 - 2.2251763e+03 -2.7236268e+03 4.0875265e+03 - 2.2901117e+03 -2.6646303e+03 4.0888542e+03 - 2.3544943e+03 -2.6044993e+03 4.0898110e+03 - 2.4182240e+03 -2.5433246e+03 4.0903884e+03 - 2.4812004e+03 -2.4812004e+03 4.0905815e+03 - 2.5433246e+03 -2.4182240e+03 4.0903884e+03 - 2.6044993e+03 -2.3544943e+03 4.0898110e+03 - 2.6646303e+03 -2.2901117e+03 4.0888542e+03 - 2.7236268e+03 -2.2251763e+03 4.0875265e+03 - 2.7814030e+03 -2.1597871e+03 4.0858394e+03 - 2.8378780e+03 -2.0940414e+03 4.0838075e+03 - 2.8929767e+03 -2.0280337e+03 4.0814481e+03 - 2.9466305e+03 -1.9618547e+03 4.0787810e+03 - 2.9987772e+03 -1.8955907e+03 4.0758282e+03 - 3.0493615e+03 -1.8293231e+03 4.0726137e+03 - 3.0983350e+03 -1.7631275e+03 4.0691631e+03 - 3.1456563e+03 -1.6970736e+03 4.0655034e+03 - 3.1912906e+03 -1.6312246e+03 4.0616623e+03 - 3.2352097e+03 -1.5656372e+03 4.0576683e+03 - 3.2773918e+03 -1.5003613e+03 4.0535504e+03 - 3.3178207e+03 -1.4354402e+03 4.0493376e+03 - 3.3564858e+03 -1.3709103e+03 4.0450586e+03 - 3.3933815e+03 -1.3068016e+03 4.0407420e+03 - 3.4285067e+03 -1.2431376e+03 4.0364155e+03 - 3.4618642e+03 -1.1799358e+03 4.0321063e+03 - 3.4934601e+03 -1.1172079e+03 4.0278404e+03 - 3.5233038e+03 -1.0549601e+03 4.0236431e+03 - 3.5514069e+03 -9.9319325e+02 4.0195382e+03 - 3.5777829e+03 -9.3190376e+02 4.0155485e+03 - 3.6024470e+03 -8.7108342e+02 4.0116955e+03 - 3.6254153e+03 -8.1072003e+02 4.0079992e+03 - 3.6467047e+03 -7.5079771e+02 4.0044784e+03 - 3.6663322e+03 -6.9129725e+02 4.0011504e+03 - 3.6843151e+03 -6.3219645e+02 3.9980313e+03 - 3.7006700e+03 -5.7347043e+02 3.9951356e+03 - 3.7154131e+03 -5.1509196e+02 3.9924766e+03 - 3.7285596e+03 -4.5703173e+02 3.9900661e+03 - 3.7401238e+03 -3.9925860e+02 3.9879148e+03 - 3.7501185e+03 -3.4173990e+02 3.9860318e+03 - 3.7585554e+03 -2.8444161e+02 3.9844252e+03 - 3.7654443e+03 -2.2732863e+02 3.9831017e+03 - 3.7707935e+03 -1.7036494e+02 3.9820666e+03 - 3.7746097e+03 -1.1351382e+02 3.9813243e+03 - 3.7768975e+03 -5.6738035e+01 3.9808777e+03 - 3.7776598e+03 -4.8134273e-09 3.9807286e+03 - 3.8309260e+03 0.0000000e+00 3.9412253e+03 - 3.8301583e+03 5.6918676e+01 3.9413833e+03 - 3.8278542e+03 1.1387770e+02 3.9418569e+03 - 3.8240105e+03 1.7091724e+02 3.9426441e+03 - 3.8186221e+03 2.2807715e+02 3.9437420e+03 - 3.8116816e+03 2.8539678e+02 3.9451460e+03 - 3.8031801e+03 3.4291477e+02 3.9468506e+03 - 3.7931065e+03 4.0066891e+02 3.9488490e+03 - 3.7814481e+03 4.5869589e+02 3.9511328e+03 - 3.7681905e+03 5.1703110e+02 3.9536925e+03 - 3.7533180e+03 5.7570838e+02 3.9565172e+03 - 3.7368135e+03 6.3475979e+02 3.9595946e+03 - 3.7186590e+03 6.9421530e+02 3.9629109e+03 - 3.6988357e+03 7.5410251e+02 3.9664508e+03 - 3.6773241e+03 8.1444632e+02 3.9701978e+03 - 3.6541049e+03 8.7526858e+02 3.9741336e+03 - 3.6291587e+03 9.3658778e+02 3.9782386e+03 - 3.6024666e+03 9.9841857e+02 3.9824917e+03 - 3.5740111e+03 1.0607715e+03 3.9868702e+03 - 3.5437757e+03 1.1236525e+03 3.9913502e+03 - 3.5117461e+03 1.1870624e+03 3.9959063e+03 - 3.4779105e+03 1.2509969e+03 4.0005117e+03 - 3.4422600e+03 1.3154457e+03 4.0051387e+03 - 3.4047895e+03 1.3803924e+03 4.0097582e+03 - 3.3654977e+03 1.4458141e+03 4.0143406e+03 - 3.3243883e+03 1.5116811e+03 4.0188551e+03 - 3.2814704e+03 1.5779565e+03 4.0232709e+03 - 3.2367587e+03 1.6445964e+03 4.0275565e+03 - 3.1902743e+03 1.7115494e+03 4.0316808e+03 - 3.1420450e+03 1.7787569e+03 4.0356128e+03 - 3.0921058e+03 1.8461530e+03 4.0393221e+03 - 3.0404990e+03 1.9136647e+03 4.0427796e+03 - 2.9872745e+03 1.9812126e+03 4.0459572e+03 - 2.9324898e+03 2.0487108e+03 4.0488288e+03 - 2.8762097e+03 2.1160680e+03 4.0513701e+03 - 2.8185066e+03 2.1831879e+03 4.0535595e+03 - 2.7594595e+03 2.2499701e+03 4.0553779e+03 - 2.6991540e+03 2.3163111e+03 4.0568093e+03 - 2.6376816e+03 2.3821053e+03 4.0578410e+03 - 2.5751385e+03 2.4472456e+03 4.0584638e+03 - 2.5116253e+03 2.5116253e+03 4.0586720e+03 - 2.4472456e+03 2.5751385e+03 4.0584638e+03 - 2.3821053e+03 2.6376816e+03 4.0578410e+03 - 2.3163111e+03 2.6991540e+03 4.0568093e+03 - 2.2499701e+03 2.7594595e+03 4.0553779e+03 - 2.1831879e+03 2.8185066e+03 4.0535595e+03 - 2.1160680e+03 2.8762097e+03 4.0513701e+03 - 2.0487108e+03 2.9324898e+03 4.0488288e+03 - 1.9812126e+03 2.9872745e+03 4.0459572e+03 - 1.9136647e+03 3.0404990e+03 4.0427796e+03 - 1.8461530e+03 3.0921058e+03 4.0393221e+03 - 1.7787569e+03 3.1420450e+03 4.0356128e+03 - 1.7115494e+03 3.1902743e+03 4.0316808e+03 - 1.6445964e+03 3.2367587e+03 4.0275565e+03 - 1.5779565e+03 3.2814704e+03 4.0232709e+03 - 1.5116811e+03 3.3243883e+03 4.0188551e+03 - 1.4458141e+03 3.3654977e+03 4.0143406e+03 - 1.3803924e+03 3.4047895e+03 4.0097582e+03 - 1.3154457e+03 3.4422600e+03 4.0051387e+03 - 1.2509969e+03 3.4779105e+03 4.0005117e+03 - 1.1870624e+03 3.5117461e+03 3.9959063e+03 - 1.1236525e+03 3.5437757e+03 3.9913502e+03 - 1.0607715e+03 3.5740111e+03 3.9868702e+03 - 9.9841857e+02 3.6024666e+03 3.9824917e+03 - 9.3658778e+02 3.6291587e+03 3.9782386e+03 - 8.7526858e+02 3.6541049e+03 3.9741336e+03 - 8.1444632e+02 3.6773241e+03 3.9701978e+03 - 7.5410251e+02 3.6988357e+03 3.9664508e+03 - 6.9421530e+02 3.7186590e+03 3.9629109e+03 - 6.3475979e+02 3.7368135e+03 3.9595946e+03 - 5.7570838e+02 3.7533180e+03 3.9565172e+03 - 5.1703110e+02 3.7681905e+03 3.9536925e+03 - 4.5869589e+02 3.7814481e+03 3.9511328e+03 - 4.0066891e+02 3.7931065e+03 3.9488490e+03 - 3.4291477e+02 3.8031801e+03 3.9468506e+03 - 2.8539678e+02 3.8116816e+03 3.9451460e+03 - 2.2807715e+02 3.8186221e+03 3.9437420e+03 - 1.7091724e+02 3.8240105e+03 3.9426441e+03 - 1.1387770e+02 3.8278542e+03 3.9418569e+03 - 5.6918676e+01 3.8301583e+03 3.9413833e+03 - 0.0000000e+00 3.8309260e+03 3.9412253e+03 - -5.6918676e+01 3.8301583e+03 3.9413833e+03 - -1.1387770e+02 3.8278542e+03 3.9418569e+03 - -1.7091724e+02 3.8240105e+03 3.9426441e+03 - -2.2807715e+02 3.8186221e+03 3.9437420e+03 - -2.8539678e+02 3.8116816e+03 3.9451460e+03 - -3.4291477e+02 3.8031801e+03 3.9468506e+03 - -4.0066891e+02 3.7931065e+03 3.9488490e+03 - -4.5869589e+02 3.7814481e+03 3.9511328e+03 - -5.1703110e+02 3.7681905e+03 3.9536925e+03 - -5.7570838e+02 3.7533180e+03 3.9565172e+03 - -6.3475979e+02 3.7368135e+03 3.9595946e+03 - -6.9421530e+02 3.7186590e+03 3.9629109e+03 - -7.5410251e+02 3.6988357e+03 3.9664508e+03 - -8.1444632e+02 3.6773241e+03 3.9701978e+03 - -8.7526858e+02 3.6541049e+03 3.9741336e+03 - -9.3658778e+02 3.6291587e+03 3.9782386e+03 - -9.9841857e+02 3.6024666e+03 3.9824917e+03 - -1.0607715e+03 3.5740111e+03 3.9868702e+03 - -1.1236525e+03 3.5437757e+03 3.9913502e+03 - -1.1870624e+03 3.5117461e+03 3.9959063e+03 - -1.2509969e+03 3.4779105e+03 4.0005117e+03 - -1.3154457e+03 3.4422600e+03 4.0051387e+03 - -1.3803924e+03 3.4047895e+03 4.0097582e+03 - -1.4458141e+03 3.3654977e+03 4.0143406e+03 - -1.5116811e+03 3.3243883e+03 4.0188551e+03 - -1.5779565e+03 3.2814704e+03 4.0232709e+03 - -1.6445964e+03 3.2367587e+03 4.0275565e+03 - -1.7115494e+03 3.1902743e+03 4.0316808e+03 - -1.7787569e+03 3.1420450e+03 4.0356128e+03 - -1.8461530e+03 3.0921058e+03 4.0393221e+03 - -1.9136647e+03 3.0404990e+03 4.0427796e+03 - -1.9812126e+03 2.9872745e+03 4.0459572e+03 - -2.0487108e+03 2.9324898e+03 4.0488288e+03 - -2.1160680e+03 2.8762097e+03 4.0513701e+03 - -2.1831879e+03 2.8185066e+03 4.0535595e+03 - -2.2499701e+03 2.7594595e+03 4.0553779e+03 - -2.3163111e+03 2.6991540e+03 4.0568093e+03 - -2.3821053e+03 2.6376816e+03 4.0578410e+03 - -2.4472456e+03 2.5751385e+03 4.0584638e+03 - -2.5116253e+03 2.5116253e+03 4.0586720e+03 - -2.5751385e+03 2.4472456e+03 4.0584638e+03 - -2.6376816e+03 2.3821053e+03 4.0578410e+03 - -2.6991540e+03 2.3163111e+03 4.0568093e+03 - -2.7594595e+03 2.2499701e+03 4.0553779e+03 - -2.8185066e+03 2.1831879e+03 4.0535595e+03 - -2.8762097e+03 2.1160680e+03 4.0513701e+03 - -2.9324898e+03 2.0487108e+03 4.0488288e+03 - -2.9872745e+03 1.9812126e+03 4.0459572e+03 - -3.0404990e+03 1.9136647e+03 4.0427796e+03 - -3.0921058e+03 1.8461530e+03 4.0393221e+03 - -3.1420450e+03 1.7787569e+03 4.0356128e+03 - -3.1902743e+03 1.7115494e+03 4.0316808e+03 - -3.2367587e+03 1.6445964e+03 4.0275565e+03 - -3.2814704e+03 1.5779565e+03 4.0232709e+03 - -3.3243883e+03 1.5116811e+03 4.0188551e+03 - -3.3654977e+03 1.4458141e+03 4.0143406e+03 - -3.4047895e+03 1.3803924e+03 4.0097582e+03 - -3.4422600e+03 1.3154457e+03 4.0051387e+03 - -3.4779105e+03 1.2509969e+03 4.0005117e+03 - -3.5117461e+03 1.1870624e+03 3.9959063e+03 - -3.5437757e+03 1.1236525e+03 3.9913502e+03 - -3.5740111e+03 1.0607715e+03 3.9868702e+03 - -3.6024666e+03 9.9841857e+02 3.9824917e+03 - -3.6291587e+03 9.3658778e+02 3.9782386e+03 - -3.6541049e+03 8.7526858e+02 3.9741336e+03 - -3.6773241e+03 8.1444632e+02 3.9701978e+03 - -3.6988357e+03 7.5410251e+02 3.9664508e+03 - -3.7186590e+03 6.9421530e+02 3.9629109e+03 - -3.7368135e+03 6.3475979e+02 3.9595946e+03 - -3.7533180e+03 5.7570838e+02 3.9565172e+03 - -3.7681905e+03 5.1703110e+02 3.9536925e+03 - -3.7814481e+03 4.5869589e+02 3.9511328e+03 - -3.7931065e+03 4.0066891e+02 3.9488490e+03 - -3.8031801e+03 3.4291477e+02 3.9468506e+03 - -3.8116816e+03 2.8539678e+02 3.9451460e+03 - -3.8186221e+03 2.2807715e+02 3.9437420e+03 - -3.8240105e+03 1.7091724e+02 3.9426441e+03 - -3.8278542e+03 1.1387770e+02 3.9418569e+03 - -3.8301583e+03 5.6918676e+01 3.9413833e+03 - -3.8309260e+03 0.0000000e+00 3.9412253e+03 - -3.8301583e+03 -5.6918676e+01 3.9413833e+03 - -3.8278542e+03 -1.1387770e+02 3.9418569e+03 - -3.8240105e+03 -1.7091724e+02 3.9426441e+03 - -3.8186221e+03 -2.2807715e+02 3.9437420e+03 - -3.8116816e+03 -2.8539678e+02 3.9451460e+03 - -3.8031801e+03 -3.4291477e+02 3.9468506e+03 - -3.7931065e+03 -4.0066891e+02 3.9488490e+03 - -3.7814481e+03 -4.5869589e+02 3.9511328e+03 - -3.7681905e+03 -5.1703110e+02 3.9536925e+03 - -3.7533180e+03 -5.7570838e+02 3.9565172e+03 - -3.7368135e+03 -6.3475979e+02 3.9595946e+03 - -3.7186590e+03 -6.9421530e+02 3.9629109e+03 - -3.6988357e+03 -7.5410251e+02 3.9664508e+03 - -3.6773241e+03 -8.1444632e+02 3.9701978e+03 - -3.6541049e+03 -8.7526858e+02 3.9741336e+03 - -3.6291587e+03 -9.3658778e+02 3.9782386e+03 - -3.6024666e+03 -9.9841857e+02 3.9824917e+03 - -3.5740111e+03 -1.0607715e+03 3.9868702e+03 - -3.5437757e+03 -1.1236525e+03 3.9913502e+03 - -3.5117461e+03 -1.1870624e+03 3.9959063e+03 - -3.4779105e+03 -1.2509969e+03 4.0005117e+03 - -3.4422600e+03 -1.3154457e+03 4.0051387e+03 - -3.4047895e+03 -1.3803924e+03 4.0097582e+03 - -3.3654977e+03 -1.4458141e+03 4.0143406e+03 - -3.3243883e+03 -1.5116811e+03 4.0188551e+03 - -3.2814704e+03 -1.5779565e+03 4.0232709e+03 - -3.2367587e+03 -1.6445964e+03 4.0275565e+03 - -3.1902743e+03 -1.7115494e+03 4.0316808e+03 - -3.1420450e+03 -1.7787569e+03 4.0356128e+03 - -3.0921058e+03 -1.8461530e+03 4.0393221e+03 - -3.0404990e+03 -1.9136647e+03 4.0427796e+03 - -2.9872745e+03 -1.9812126e+03 4.0459572e+03 - -2.9324898e+03 -2.0487108e+03 4.0488288e+03 - -2.8762097e+03 -2.1160680e+03 4.0513701e+03 - -2.8185066e+03 -2.1831879e+03 4.0535595e+03 - -2.7594595e+03 -2.2499701e+03 4.0553779e+03 - -2.6991540e+03 -2.3163111e+03 4.0568093e+03 - -2.6376816e+03 -2.3821053e+03 4.0578410e+03 - -2.5751385e+03 -2.4472456e+03 4.0584638e+03 - -2.5116253e+03 -2.5116253e+03 4.0586720e+03 - -2.4472456e+03 -2.5751385e+03 4.0584638e+03 - -2.3821053e+03 -2.6376816e+03 4.0578410e+03 - -2.3163111e+03 -2.6991540e+03 4.0568093e+03 - -2.2499701e+03 -2.7594595e+03 4.0553779e+03 - -2.1831879e+03 -2.8185066e+03 4.0535595e+03 - -2.1160680e+03 -2.8762097e+03 4.0513701e+03 - -2.0487108e+03 -2.9324898e+03 4.0488288e+03 - -1.9812126e+03 -2.9872745e+03 4.0459572e+03 - -1.9136647e+03 -3.0404990e+03 4.0427796e+03 - -1.8461530e+03 -3.0921058e+03 4.0393221e+03 - -1.7787569e+03 -3.1420450e+03 4.0356128e+03 - -1.7115494e+03 -3.1902743e+03 4.0316808e+03 - -1.6445964e+03 -3.2367587e+03 4.0275565e+03 - -1.5779565e+03 -3.2814704e+03 4.0232709e+03 - -1.5116811e+03 -3.3243883e+03 4.0188551e+03 - -1.4458141e+03 -3.3654977e+03 4.0143406e+03 - -1.3803924e+03 -3.4047895e+03 4.0097582e+03 - -1.3154457e+03 -3.4422600e+03 4.0051387e+03 - -1.2509969e+03 -3.4779105e+03 4.0005117e+03 - -1.1870624e+03 -3.5117461e+03 3.9959063e+03 - -1.1236525e+03 -3.5437757e+03 3.9913502e+03 - -1.0607715e+03 -3.5740111e+03 3.9868702e+03 - -9.9841857e+02 -3.6024666e+03 3.9824917e+03 - -9.3658778e+02 -3.6291587e+03 3.9782386e+03 - -8.7526858e+02 -3.6541049e+03 3.9741336e+03 - -8.1444632e+02 -3.6773241e+03 3.9701978e+03 - -7.5410251e+02 -3.6988357e+03 3.9664508e+03 - -6.9421530e+02 -3.7186590e+03 3.9629109e+03 - -6.3475979e+02 -3.7368135e+03 3.9595946e+03 - -5.7570838e+02 -3.7533180e+03 3.9565172e+03 - -5.1703110e+02 -3.7681905e+03 3.9536925e+03 - -4.5869589e+02 -3.7814481e+03 3.9511328e+03 - -4.0066891e+02 -3.7931065e+03 3.9488490e+03 - -3.4291477e+02 -3.8031801e+03 3.9468506e+03 - -2.8539678e+02 -3.8116816e+03 3.9451460e+03 - -2.2807715e+02 -3.8186221e+03 3.9437420e+03 - -1.7091724e+02 -3.8240105e+03 3.9426441e+03 - -1.1387770e+02 -3.8278542e+03 3.9418569e+03 - -5.6918676e+01 -3.8301583e+03 3.9413833e+03 - -4.8134273e-09 -3.8309260e+03 3.9412253e+03 - 5.6918676e+01 -3.8301583e+03 3.9413833e+03 - 1.1387770e+02 -3.8278542e+03 3.9418569e+03 - 1.7091724e+02 -3.8240105e+03 3.9426441e+03 - 2.2807715e+02 -3.8186221e+03 3.9437420e+03 - 2.8539678e+02 -3.8116816e+03 3.9451460e+03 - 3.4291477e+02 -3.8031801e+03 3.9468506e+03 - 4.0066891e+02 -3.7931065e+03 3.9488490e+03 - 4.5869589e+02 -3.7814481e+03 3.9511328e+03 - 5.1703110e+02 -3.7681905e+03 3.9536925e+03 - 5.7570838e+02 -3.7533180e+03 3.9565172e+03 - 6.3475979e+02 -3.7368135e+03 3.9595946e+03 - 6.9421530e+02 -3.7186590e+03 3.9629109e+03 - 7.5410251e+02 -3.6988357e+03 3.9664508e+03 - 8.1444632e+02 -3.6773241e+03 3.9701978e+03 - 8.7526858e+02 -3.6541049e+03 3.9741336e+03 - 9.3658778e+02 -3.6291587e+03 3.9782386e+03 - 9.9841857e+02 -3.6024666e+03 3.9824917e+03 - 1.0607715e+03 -3.5740111e+03 3.9868702e+03 - 1.1236525e+03 -3.5437757e+03 3.9913502e+03 - 1.1870624e+03 -3.5117461e+03 3.9959063e+03 - 1.2509969e+03 -3.4779105e+03 4.0005117e+03 - 1.3154457e+03 -3.4422600e+03 4.0051387e+03 - 1.3803924e+03 -3.4047895e+03 4.0097582e+03 - 1.4458141e+03 -3.3654977e+03 4.0143406e+03 - 1.5116811e+03 -3.3243883e+03 4.0188551e+03 - 1.5779565e+03 -3.2814704e+03 4.0232709e+03 - 1.6445964e+03 -3.2367587e+03 4.0275565e+03 - 1.7115494e+03 -3.1902743e+03 4.0316808e+03 - 1.7787569e+03 -3.1420450e+03 4.0356128e+03 - 1.8461530e+03 -3.0921058e+03 4.0393221e+03 - 1.9136647e+03 -3.0404990e+03 4.0427796e+03 - 1.9812126e+03 -2.9872745e+03 4.0459572e+03 - 2.0487108e+03 -2.9324898e+03 4.0488288e+03 - 2.1160680e+03 -2.8762097e+03 4.0513701e+03 - 2.1831879e+03 -2.8185066e+03 4.0535595e+03 - 2.2499701e+03 -2.7594595e+03 4.0553779e+03 - 2.3163111e+03 -2.6991540e+03 4.0568093e+03 - 2.3821053e+03 -2.6376816e+03 4.0578410e+03 - 2.4472456e+03 -2.5751385e+03 4.0584638e+03 - 2.5116253e+03 -2.5116253e+03 4.0586720e+03 - 2.5751385e+03 -2.4472456e+03 4.0584638e+03 - 2.6376816e+03 -2.3821053e+03 4.0578410e+03 - 2.6991540e+03 -2.3163111e+03 4.0568093e+03 - 2.7594595e+03 -2.2499701e+03 4.0553779e+03 - 2.8185066e+03 -2.1831879e+03 4.0535595e+03 - 2.8762097e+03 -2.1160680e+03 4.0513701e+03 - 2.9324898e+03 -2.0487108e+03 4.0488288e+03 - 2.9872745e+03 -1.9812126e+03 4.0459572e+03 - 3.0404990e+03 -1.9136647e+03 4.0427796e+03 - 3.0921058e+03 -1.8461530e+03 4.0393221e+03 - 3.1420450e+03 -1.7787569e+03 4.0356128e+03 - 3.1902743e+03 -1.7115494e+03 4.0316808e+03 - 3.2367587e+03 -1.6445964e+03 4.0275565e+03 - 3.2814704e+03 -1.5779565e+03 4.0232709e+03 - 3.3243883e+03 -1.5116811e+03 4.0188551e+03 - 3.3654977e+03 -1.4458141e+03 4.0143406e+03 - 3.4047895e+03 -1.3803924e+03 4.0097582e+03 - 3.4422600e+03 -1.3154457e+03 4.0051387e+03 - 3.4779105e+03 -1.2509969e+03 4.0005117e+03 - 3.5117461e+03 -1.1870624e+03 3.9959063e+03 - 3.5437757e+03 -1.1236525e+03 3.9913502e+03 - 3.5740111e+03 -1.0607715e+03 3.9868702e+03 - 3.6024666e+03 -9.9841857e+02 3.9824917e+03 - 3.6291587e+03 -9.3658778e+02 3.9782386e+03 - 3.6541049e+03 -8.7526858e+02 3.9741336e+03 - 3.6773241e+03 -8.1444632e+02 3.9701978e+03 - 3.6988357e+03 -7.5410251e+02 3.9664508e+03 - 3.7186590e+03 -6.9421530e+02 3.9629109e+03 - 3.7368135e+03 -6.3475979e+02 3.9595946e+03 - 3.7533180e+03 -5.7570838e+02 3.9565172e+03 - 3.7681905e+03 -5.1703110e+02 3.9536925e+03 - 3.7814481e+03 -4.5869589e+02 3.9511328e+03 - 3.7931065e+03 -4.0066891e+02 3.9488490e+03 - 3.8031801e+03 -3.4291477e+02 3.9468506e+03 - 3.8116816e+03 -2.8539678e+02 3.9451460e+03 - 3.8186221e+03 -2.2807715e+02 3.9437420e+03 - 3.8240105e+03 -1.7091724e+02 3.9426441e+03 - 3.8278542e+03 -1.1387770e+02 3.9418569e+03 - 3.8301583e+03 -5.6918676e+01 3.9413833e+03 - 3.8309260e+03 4.8134273e-09 3.9412253e+03 - 3.8828348e+03 0.0000000e+00 3.9011251e+03 - 3.8820623e+03 5.7067895e+01 3.9012923e+03 - 3.8797439e+03 1.1417869e+02 3.9017932e+03 - 3.8758759e+03 1.7137512e+02 3.9026261e+03 - 3.8704529e+03 2.2869961e+02 3.9037876e+03 - 3.8634669e+03 2.8619410e+02 3.9052734e+03 - 3.8549080e+03 3.4389986e+02 3.9070777e+03 - 3.8447640e+03 4.0185732e+02 3.9091934e+03 - 3.8330211e+03 4.6010585e+02 3.9116120e+03 - 3.8196635e+03 5.1868355e+02 3.9143238e+03 - 3.8046739e+03 5.7762701e+02 3.9173173e+03 - 3.7880333e+03 6.3697104e+02 3.9205799e+03 - 3.7697217e+03 6.9674840e+02 3.9240974e+03 - 3.7497183e+03 7.5698946e+02 3.9278538e+03 - 3.7280013e+03 8.1772190e+02 3.9318320e+03 - 3.7045488e+03 8.7897032e+02 3.9360129e+03 - 3.6793388e+03 9.4075589e+02 3.9403761e+03 - 3.6523499e+03 1.0030959e+03 3.9448993e+03 - 3.6235616e+03 1.0660033e+03 3.9495589e+03 - 3.5929547e+03 1.1294865e+03 3.9543294e+03 - 3.5605120e+03 1.1935484e+03 3.9591842e+03 - 3.5262188e+03 1.2581865e+03 3.9640950e+03 - 3.4900636e+03 1.3233922e+03 3.9690320e+03 - 3.4520384e+03 1.3891503e+03 3.9739646e+03 - 3.4121397e+03 1.4554387e+03 3.9788609e+03 - 3.3703690e+03 1.5222282e+03 3.9836880e+03 - 3.3267334e+03 1.5894817e+03 3.9884128e+03 - 3.2812462e+03 1.6571546e+03 3.9930014e+03 - 3.2339275e+03 1.7251943e+03 3.9974201e+03 - 3.1848046e+03 1.7935401e+03 4.0016355e+03 - 3.1339126e+03 1.8621236e+03 4.0056146e+03 - 3.0812946e+03 1.9308686e+03 4.0093256e+03 - 3.0270018e+03 1.9996916e+03 4.0127381e+03 - 2.9710938e+03 2.0685023e+03 4.0158234e+03 - 2.9136384e+03 2.1372041e+03 4.0185552e+03 - 2.8547115e+03 2.2056951e+03 4.0209094e+03 - 2.7943965e+03 2.2738686e+03 4.0228654e+03 - 2.7327839e+03 2.3416146e+03 4.0244056e+03 - 2.6699705e+03 2.4088204e+03 4.0255158e+03 - 2.6060589e+03 2.4753722e+03 4.0261861e+03 - 2.5411559e+03 2.5411559e+03 4.0264102e+03 - 2.4753722e+03 2.6060589e+03 4.0261861e+03 - 2.4088204e+03 2.6699705e+03 4.0255158e+03 - 2.3416146e+03 2.7327839e+03 4.0244056e+03 - 2.2738686e+03 2.7943965e+03 4.0228654e+03 - 2.2056951e+03 2.8547115e+03 4.0209094e+03 - 2.1372041e+03 2.9136384e+03 4.0185552e+03 - 2.0685023e+03 2.9710938e+03 4.0158234e+03 - 1.9996916e+03 3.0270018e+03 4.0127381e+03 - 1.9308686e+03 3.0812946e+03 4.0093256e+03 - 1.8621236e+03 3.1339126e+03 4.0056146e+03 - 1.7935401e+03 3.1848046e+03 4.0016355e+03 - 1.7251943e+03 3.2339275e+03 3.9974201e+03 - 1.6571546e+03 3.2812462e+03 3.9930014e+03 - 1.5894817e+03 3.3267334e+03 3.9884128e+03 - 1.5222282e+03 3.3703690e+03 3.9836880e+03 - 1.4554387e+03 3.4121397e+03 3.9788609e+03 - 1.3891503e+03 3.4520384e+03 3.9739646e+03 - 1.3233922e+03 3.4900636e+03 3.9690320e+03 - 1.2581865e+03 3.5262188e+03 3.9640950e+03 - 1.1935484e+03 3.5605120e+03 3.9591842e+03 - 1.1294865e+03 3.5929547e+03 3.9543294e+03 - 1.0660033e+03 3.6235616e+03 3.9495589e+03 - 1.0030959e+03 3.6523499e+03 3.9448993e+03 - 9.4075589e+02 3.6793388e+03 3.9403761e+03 - 8.7897032e+02 3.7045488e+03 3.9360129e+03 - 8.1772190e+02 3.7280013e+03 3.9318320e+03 - 7.5698946e+02 3.7497183e+03 3.9278538e+03 - 6.9674840e+02 3.7697217e+03 3.9240974e+03 - 6.3697104e+02 3.7880333e+03 3.9205799e+03 - 5.7762701e+02 3.8046739e+03 3.9173173e+03 - 5.1868355e+02 3.8196635e+03 3.9143238e+03 - 4.6010585e+02 3.8330211e+03 3.9116120e+03 - 4.0185732e+02 3.8447640e+03 3.9091934e+03 - 3.4389986e+02 3.8549080e+03 3.9070777e+03 - 2.8619410e+02 3.8634669e+03 3.9052734e+03 - 2.2869961e+02 3.8704529e+03 3.9037876e+03 - 1.7137512e+02 3.8758759e+03 3.9026261e+03 - 1.1417869e+02 3.8797439e+03 3.9017932e+03 - 5.7067895e+01 3.8820623e+03 3.9012923e+03 - -4.8134273e-09 3.8828348e+03 3.9011251e+03 - -5.7067895e+01 3.8820623e+03 3.9012923e+03 - -1.1417869e+02 3.8797439e+03 3.9017932e+03 - -1.7137512e+02 3.8758759e+03 3.9026261e+03 - -2.2869961e+02 3.8704529e+03 3.9037876e+03 - -2.8619410e+02 3.8634669e+03 3.9052734e+03 - -3.4389986e+02 3.8549080e+03 3.9070777e+03 - -4.0185732e+02 3.8447640e+03 3.9091934e+03 - -4.6010585e+02 3.8330211e+03 3.9116120e+03 - -5.1868355e+02 3.8196635e+03 3.9143238e+03 - -5.7762701e+02 3.8046739e+03 3.9173173e+03 - -6.3697104e+02 3.7880333e+03 3.9205799e+03 - -6.9674840e+02 3.7697217e+03 3.9240974e+03 - -7.5698946e+02 3.7497183e+03 3.9278538e+03 - -8.1772190e+02 3.7280013e+03 3.9318320e+03 - -8.7897032e+02 3.7045488e+03 3.9360129e+03 - -9.4075589e+02 3.6793388e+03 3.9403761e+03 - -1.0030959e+03 3.6523499e+03 3.9448993e+03 - -1.0660033e+03 3.6235616e+03 3.9495589e+03 - -1.1294865e+03 3.5929547e+03 3.9543294e+03 - -1.1935484e+03 3.5605120e+03 3.9591842e+03 - -1.2581865e+03 3.5262188e+03 3.9640950e+03 - -1.3233922e+03 3.4900636e+03 3.9690320e+03 - -1.3891503e+03 3.4520384e+03 3.9739646e+03 - -1.4554387e+03 3.4121397e+03 3.9788609e+03 - -1.5222282e+03 3.3703690e+03 3.9836880e+03 - -1.5894817e+03 3.3267334e+03 3.9884128e+03 - -1.6571546e+03 3.2812462e+03 3.9930014e+03 - -1.7251943e+03 3.2339275e+03 3.9974201e+03 - -1.7935401e+03 3.1848046e+03 4.0016355e+03 - -1.8621236e+03 3.1339126e+03 4.0056146e+03 - -1.9308686e+03 3.0812946e+03 4.0093256e+03 - -1.9996916e+03 3.0270018e+03 4.0127381e+03 - -2.0685023e+03 2.9710938e+03 4.0158234e+03 - -2.1372041e+03 2.9136384e+03 4.0185552e+03 - -2.2056951e+03 2.8547115e+03 4.0209094e+03 - -2.2738686e+03 2.7943965e+03 4.0228654e+03 - -2.3416146e+03 2.7327839e+03 4.0244056e+03 - -2.4088204e+03 2.6699705e+03 4.0255158e+03 - -2.4753722e+03 2.6060589e+03 4.0261861e+03 - -2.5411559e+03 2.5411559e+03 4.0264102e+03 - -2.6060589e+03 2.4753722e+03 4.0261861e+03 - -2.6699705e+03 2.4088204e+03 4.0255158e+03 - -2.7327839e+03 2.3416146e+03 4.0244056e+03 - -2.7943965e+03 2.2738686e+03 4.0228654e+03 - -2.8547115e+03 2.2056951e+03 4.0209094e+03 - -2.9136384e+03 2.1372041e+03 4.0185552e+03 - -2.9710938e+03 2.0685023e+03 4.0158234e+03 - -3.0270018e+03 1.9996916e+03 4.0127381e+03 - -3.0812946e+03 1.9308686e+03 4.0093256e+03 - -3.1339126e+03 1.8621236e+03 4.0056146e+03 - -3.1848046e+03 1.7935401e+03 4.0016355e+03 - -3.2339275e+03 1.7251943e+03 3.9974201e+03 - -3.2812462e+03 1.6571546e+03 3.9930014e+03 - -3.3267334e+03 1.5894817e+03 3.9884128e+03 - -3.3703690e+03 1.5222282e+03 3.9836880e+03 - -3.4121397e+03 1.4554387e+03 3.9788609e+03 - -3.4520384e+03 1.3891503e+03 3.9739646e+03 - -3.4900636e+03 1.3233922e+03 3.9690320e+03 - -3.5262188e+03 1.2581865e+03 3.9640950e+03 - -3.5605120e+03 1.1935484e+03 3.9591842e+03 - -3.5929547e+03 1.1294865e+03 3.9543294e+03 - -3.6235616e+03 1.0660033e+03 3.9495589e+03 - -3.6523499e+03 1.0030959e+03 3.9448993e+03 - -3.6793388e+03 9.4075589e+02 3.9403761e+03 - -3.7045488e+03 8.7897032e+02 3.9360129e+03 - -3.7280013e+03 8.1772190e+02 3.9318320e+03 - -3.7497183e+03 7.5698946e+02 3.9278538e+03 - -3.7697217e+03 6.9674840e+02 3.9240974e+03 - -3.7880333e+03 6.3697104e+02 3.9205799e+03 - -3.8046739e+03 5.7762701e+02 3.9173173e+03 - -3.8196635e+03 5.1868355e+02 3.9143238e+03 - -3.8330211e+03 4.6010585e+02 3.9116120e+03 - -3.8447640e+03 4.0185732e+02 3.9091934e+03 - -3.8549080e+03 3.4389986e+02 3.9070777e+03 - -3.8634669e+03 2.8619410e+02 3.9052734e+03 - -3.8704529e+03 2.2869961e+02 3.9037876e+03 - -3.8758759e+03 1.7137512e+02 3.9026261e+03 - -3.8797439e+03 1.1417869e+02 3.9017932e+03 - -3.8820623e+03 5.7067895e+01 3.9012923e+03 - -3.8828348e+03 0.0000000e+00 3.9011251e+03 - -3.8820623e+03 -5.7067895e+01 3.9012923e+03 - -3.8797439e+03 -1.1417869e+02 3.9017932e+03 - -3.8758759e+03 -1.7137512e+02 3.9026261e+03 - -3.8704529e+03 -2.2869961e+02 3.9037876e+03 - -3.8634669e+03 -2.8619410e+02 3.9052734e+03 - -3.8549080e+03 -3.4389986e+02 3.9070777e+03 - -3.8447640e+03 -4.0185732e+02 3.9091934e+03 - -3.8330211e+03 -4.6010585e+02 3.9116120e+03 - -3.8196635e+03 -5.1868355e+02 3.9143238e+03 - -3.8046739e+03 -5.7762701e+02 3.9173173e+03 - -3.7880333e+03 -6.3697104e+02 3.9205799e+03 - -3.7697217e+03 -6.9674840e+02 3.9240974e+03 - -3.7497183e+03 -7.5698946e+02 3.9278538e+03 - -3.7280013e+03 -8.1772190e+02 3.9318320e+03 - -3.7045488e+03 -8.7897032e+02 3.9360129e+03 - -3.6793388e+03 -9.4075589e+02 3.9403761e+03 - -3.6523499e+03 -1.0030959e+03 3.9448993e+03 - -3.6235616e+03 -1.0660033e+03 3.9495589e+03 - -3.5929547e+03 -1.1294865e+03 3.9543294e+03 - -3.5605120e+03 -1.1935484e+03 3.9591842e+03 - -3.5262188e+03 -1.2581865e+03 3.9640950e+03 - -3.4900636e+03 -1.3233922e+03 3.9690320e+03 - -3.4520384e+03 -1.3891503e+03 3.9739646e+03 - -3.4121397e+03 -1.4554387e+03 3.9788609e+03 - -3.3703690e+03 -1.5222282e+03 3.9836880e+03 - -3.3267334e+03 -1.5894817e+03 3.9884128e+03 - -3.2812462e+03 -1.6571546e+03 3.9930014e+03 - -3.2339275e+03 -1.7251943e+03 3.9974201e+03 - -3.1848046e+03 -1.7935401e+03 4.0016355e+03 - -3.1339126e+03 -1.8621236e+03 4.0056146e+03 - -3.0812946e+03 -1.9308686e+03 4.0093256e+03 - -3.0270018e+03 -1.9996916e+03 4.0127381e+03 - -2.9710938e+03 -2.0685023e+03 4.0158234e+03 - -2.9136384e+03 -2.1372041e+03 4.0185552e+03 - -2.8547115e+03 -2.2056951e+03 4.0209094e+03 - -2.7943965e+03 -2.2738686e+03 4.0228654e+03 - -2.7327839e+03 -2.3416146e+03 4.0244056e+03 - -2.6699705e+03 -2.4088204e+03 4.0255158e+03 - -2.6060589e+03 -2.4753722e+03 4.0261861e+03 - -2.5411559e+03 -2.5411559e+03 4.0264102e+03 - -2.4753722e+03 -2.6060589e+03 4.0261861e+03 - -2.4088204e+03 -2.6699705e+03 4.0255158e+03 - -2.3416146e+03 -2.7327839e+03 4.0244056e+03 - -2.2738686e+03 -2.7943965e+03 4.0228654e+03 - -2.2056951e+03 -2.8547115e+03 4.0209094e+03 - -2.1372041e+03 -2.9136384e+03 4.0185552e+03 - -2.0685023e+03 -2.9710938e+03 4.0158234e+03 - -1.9996916e+03 -3.0270018e+03 4.0127381e+03 - -1.9308686e+03 -3.0812946e+03 4.0093256e+03 - -1.8621236e+03 -3.1339126e+03 4.0056146e+03 - -1.7935401e+03 -3.1848046e+03 4.0016355e+03 - -1.7251943e+03 -3.2339275e+03 3.9974201e+03 - -1.6571546e+03 -3.2812462e+03 3.9930014e+03 - -1.5894817e+03 -3.3267334e+03 3.9884128e+03 - -1.5222282e+03 -3.3703690e+03 3.9836880e+03 - -1.4554387e+03 -3.4121397e+03 3.9788609e+03 - -1.3891503e+03 -3.4520384e+03 3.9739646e+03 - -1.3233922e+03 -3.4900636e+03 3.9690320e+03 - -1.2581865e+03 -3.5262188e+03 3.9640950e+03 - -1.1935484e+03 -3.5605120e+03 3.9591842e+03 - -1.1294865e+03 -3.5929547e+03 3.9543294e+03 - -1.0660033e+03 -3.6235616e+03 3.9495589e+03 - -1.0030959e+03 -3.6523499e+03 3.9448993e+03 - -9.4075589e+02 -3.6793388e+03 3.9403761e+03 - -8.7897032e+02 -3.7045488e+03 3.9360129e+03 - -8.1772190e+02 -3.7280013e+03 3.9318320e+03 - -7.5698946e+02 -3.7497183e+03 3.9278538e+03 - -6.9674840e+02 -3.7697217e+03 3.9240974e+03 - -6.3697104e+02 -3.7880333e+03 3.9205799e+03 - -5.7762701e+02 -3.8046739e+03 3.9173173e+03 - -5.1868355e+02 -3.8196635e+03 3.9143238e+03 - -4.6010585e+02 -3.8330211e+03 3.9116120e+03 - -4.0185732e+02 -3.8447640e+03 3.9091934e+03 - -3.4389986e+02 -3.8549080e+03 3.9070777e+03 - -2.8619410e+02 -3.8634669e+03 3.9052734e+03 - -2.2869961e+02 -3.8704529e+03 3.9037876e+03 - -1.7137512e+02 -3.8758759e+03 3.9026261e+03 - -1.1417869e+02 -3.8797439e+03 3.9017932e+03 - -5.7067895e+01 -3.8820623e+03 3.9012923e+03 - 0.0000000e+00 -3.8828348e+03 3.9011251e+03 - 5.7067895e+01 -3.8820623e+03 3.9012923e+03 - 1.1417869e+02 -3.8797439e+03 3.9017932e+03 - 1.7137512e+02 -3.8758759e+03 3.9026261e+03 - 2.2869961e+02 -3.8704529e+03 3.9037876e+03 - 2.8619410e+02 -3.8634669e+03 3.9052734e+03 - 3.4389986e+02 -3.8549080e+03 3.9070777e+03 - 4.0185732e+02 -3.8447640e+03 3.9091934e+03 - 4.6010585e+02 -3.8330211e+03 3.9116120e+03 - 5.1868355e+02 -3.8196635e+03 3.9143238e+03 - 5.7762701e+02 -3.8046739e+03 3.9173173e+03 - 6.3697104e+02 -3.7880333e+03 3.9205799e+03 - 6.9674840e+02 -3.7697217e+03 3.9240974e+03 - 7.5698946e+02 -3.7497183e+03 3.9278538e+03 - 8.1772190e+02 -3.7280013e+03 3.9318320e+03 - 8.7897032e+02 -3.7045488e+03 3.9360129e+03 - 9.4075589e+02 -3.6793388e+03 3.9403761e+03 - 1.0030959e+03 -3.6523499e+03 3.9448993e+03 - 1.0660033e+03 -3.6235616e+03 3.9495589e+03 - 1.1294865e+03 -3.5929547e+03 3.9543294e+03 - 1.1935484e+03 -3.5605120e+03 3.9591842e+03 - 1.2581865e+03 -3.5262188e+03 3.9640950e+03 - 1.3233922e+03 -3.4900636e+03 3.9690320e+03 - 1.3891503e+03 -3.4520384e+03 3.9739646e+03 - 1.4554387e+03 -3.4121397e+03 3.9788609e+03 - 1.5222282e+03 -3.3703690e+03 3.9836880e+03 - 1.5894817e+03 -3.3267334e+03 3.9884128e+03 - 1.6571546e+03 -3.2812462e+03 3.9930014e+03 - 1.7251943e+03 -3.2339275e+03 3.9974201e+03 - 1.7935401e+03 -3.1848046e+03 4.0016355e+03 - 1.8621236e+03 -3.1339126e+03 4.0056146e+03 - 1.9308686e+03 -3.0812946e+03 4.0093256e+03 - 1.9996916e+03 -3.0270018e+03 4.0127381e+03 - 2.0685023e+03 -2.9710938e+03 4.0158234e+03 - 2.1372041e+03 -2.9136384e+03 4.0185552e+03 - 2.2056951e+03 -2.8547115e+03 4.0209094e+03 - 2.2738686e+03 -2.7943965e+03 4.0228654e+03 - 2.3416146e+03 -2.7327839e+03 4.0244056e+03 - 2.4088204e+03 -2.6699705e+03 4.0255158e+03 - 2.4753722e+03 -2.6060589e+03 4.0261861e+03 - 2.5411559e+03 -2.5411559e+03 4.0264102e+03 - 2.6060589e+03 -2.4753722e+03 4.0261861e+03 - 2.6699705e+03 -2.4088204e+03 4.0255158e+03 - 2.7327839e+03 -2.3416146e+03 4.0244056e+03 - 2.7943965e+03 -2.2738686e+03 4.0228654e+03 - 2.8547115e+03 -2.2056951e+03 4.0209094e+03 - 2.9136384e+03 -2.1372041e+03 4.0185552e+03 - 2.9710938e+03 -2.0685023e+03 4.0158234e+03 - 3.0270018e+03 -1.9996916e+03 4.0127381e+03 - 3.0812946e+03 -1.9308686e+03 4.0093256e+03 - 3.1339126e+03 -1.8621236e+03 4.0056146e+03 - 3.1848046e+03 -1.7935401e+03 4.0016355e+03 - 3.2339275e+03 -1.7251943e+03 3.9974201e+03 - 3.2812462e+03 -1.6571546e+03 3.9930014e+03 - 3.3267334e+03 -1.5894817e+03 3.9884128e+03 - 3.3703690e+03 -1.5222282e+03 3.9836880e+03 - 3.4121397e+03 -1.4554387e+03 3.9788609e+03 - 3.4520384e+03 -1.3891503e+03 3.9739646e+03 - 3.4900636e+03 -1.3233922e+03 3.9690320e+03 - 3.5262188e+03 -1.2581865e+03 3.9640950e+03 - 3.5605120e+03 -1.1935484e+03 3.9591842e+03 - 3.5929547e+03 -1.1294865e+03 3.9543294e+03 - 3.6235616e+03 -1.0660033e+03 3.9495589e+03 - 3.6523499e+03 -1.0030959e+03 3.9448993e+03 - 3.6793388e+03 -9.4075589e+02 3.9403761e+03 - 3.7045488e+03 -8.7897032e+02 3.9360129e+03 - 3.7280013e+03 -8.1772190e+02 3.9318320e+03 - 3.7497183e+03 -7.5698946e+02 3.9278538e+03 - 3.7697217e+03 -6.9674840e+02 3.9240974e+03 - 3.7880333e+03 -6.3697104e+02 3.9205799e+03 - 3.8046739e+03 -5.7762701e+02 3.9173173e+03 - 3.8196635e+03 -5.1868355e+02 3.9143238e+03 - 3.8330211e+03 -4.6010585e+02 3.9116120e+03 - 3.8447640e+03 -4.0185732e+02 3.9091934e+03 - 3.8549080e+03 -3.4389986e+02 3.9070777e+03 - 3.8634669e+03 -2.8619410e+02 3.9052734e+03 - 3.8704529e+03 -2.2869961e+02 3.9037876e+03 - 3.8758759e+03 -1.7137512e+02 3.9026261e+03 - 3.8797439e+03 -1.1417869e+02 3.9017932e+03 - 3.8820623e+03 -5.7067895e+01 3.9012923e+03 - 3.8828348e+03 0.0000000e+00 3.9011251e+03 - 3.9334887e+03 4.8134273e-09 3.8603812e+03 - 3.9327122e+03 5.7187916e+01 3.8605576e+03 - 3.9303813e+03 1.1442124e+02 3.8610864e+03 - 3.9264923e+03 1.7174524e+02 3.8619655e+03 - 3.9210392e+03 2.2920487e+02 3.8631917e+03 - 3.9140133e+03 2.8684462e+02 3.8647605e+03 - 3.9054039e+03 3.4470837e+02 3.8666660e+03 - 3.8951978e+03 4.0283916e+02 3.8689009e+03 - 3.8833799e+03 4.6127904e+02 3.8714566e+03 - 3.8699329e+03 5.2006882e+02 3.8743230e+03 - 3.8548379e+03 5.7924784e+02 3.8774884e+03 - 3.8380742e+03 6.3885370e+02 3.8809397e+03 - 3.8196198e+03 6.9892196e+02 3.8846623e+03 - 3.7994514e+03 7.5948586e+02 3.8886398e+03 - 3.7775450e+03 8.2057591e+02 3.8928541e+03 - 3.7538763e+03 8.8221956e+02 3.8972858e+03 - 3.7284205e+03 9.4444075e+02 3.9019132e+03 - 3.7011534e+03 1.0072595e+03 3.9067133e+03 - 3.6720515e+03 1.0706915e+03 3.9116612e+03 - 3.6410926e+03 1.1347474e+03 3.9167304e+03 - 3.6082567e+03 1.1994326e+03 3.9218925e+03 - 3.5735259e+03 1.2647467e+03 3.9271177e+03 - 3.5368858e+03 1.3306828e+03 3.9323746e+03 - 3.4983256e+03 1.3972271e+03 3.9376305e+03 - 3.4578391e+03 1.4643587e+03 3.9428514e+03 - 3.4154255e+03 1.5320487e+03 3.9480023e+03 - 3.3710897e+03 1.6002603e+03 3.9530475e+03 - 3.3248433e+03 1.6689481e+03 3.9579507e+03 - 3.2767053e+03 1.7380585e+03 3.9626756e+03 - 3.2267024e+03 1.8075289e+03 3.9671859e+03 - 3.1748695e+03 1.8772883e+03 3.9714462e+03 - 3.1212503e+03 1.9472573e+03 3.9754217e+03 - 3.0658975e+03 2.0173485e+03 3.9790795e+03 - 3.0088727e+03 2.0874667e+03 3.9823882e+03 - 2.9502467e+03 2.1575102e+03 3.9853190e+03 - 2.8900990e+03 2.2273709e+03 3.9878459e+03 - 2.8285174e+03 2.2969359e+03 3.9899461e+03 - 2.7655975e+03 2.3660881e+03 3.9916001e+03 - 2.7014420e+03 2.4347078e+03 3.9927928e+03 - 2.6361597e+03 2.5026737e+03 3.9935130e+03 - 2.5698644e+03 2.5698644e+03 3.9937538e+03 - 2.5026737e+03 2.6361597e+03 3.9935130e+03 - 2.4347078e+03 2.7014420e+03 3.9927928e+03 - 2.3660881e+03 2.7655975e+03 3.9916001e+03 - 2.2969359e+03 2.8285174e+03 3.9899461e+03 - 2.2273709e+03 2.8900990e+03 3.9878459e+03 - 2.1575102e+03 2.9502467e+03 3.9853190e+03 - 2.0874667e+03 3.0088727e+03 3.9823882e+03 - 2.0173485e+03 3.0658975e+03 3.9790795e+03 - 1.9472573e+03 3.1212503e+03 3.9754217e+03 - 1.8772883e+03 3.1748695e+03 3.9714462e+03 - 1.8075289e+03 3.2267024e+03 3.9671859e+03 - 1.7380585e+03 3.2767053e+03 3.9626756e+03 - 1.6689481e+03 3.3248433e+03 3.9579507e+03 - 1.6002603e+03 3.3710897e+03 3.9530475e+03 - 1.5320487e+03 3.4154255e+03 3.9480023e+03 - 1.4643587e+03 3.4578391e+03 3.9428514e+03 - 1.3972271e+03 3.4983256e+03 3.9376305e+03 - 1.3306828e+03 3.5368858e+03 3.9323746e+03 - 1.2647467e+03 3.5735259e+03 3.9271177e+03 - 1.1994326e+03 3.6082567e+03 3.9218925e+03 - 1.1347474e+03 3.6410926e+03 3.9167304e+03 - 1.0706915e+03 3.6720515e+03 3.9116612e+03 - 1.0072595e+03 3.7011534e+03 3.9067133e+03 - 9.4444075e+02 3.7284205e+03 3.9019132e+03 - 8.8221956e+02 3.7538763e+03 3.8972858e+03 - 8.2057591e+02 3.7775450e+03 3.8928541e+03 - 7.5948586e+02 3.7994514e+03 3.8886398e+03 - 6.9892196e+02 3.8196198e+03 3.8846623e+03 - 6.3885370e+02 3.8380742e+03 3.8809397e+03 - 5.7924784e+02 3.8548379e+03 3.8774884e+03 - 5.2006882e+02 3.8699329e+03 3.8743230e+03 - 4.6127904e+02 3.8833799e+03 3.8714566e+03 - 4.0283916e+02 3.8951978e+03 3.8689009e+03 - 3.4470837e+02 3.9054039e+03 3.8666660e+03 - 2.8684462e+02 3.9140133e+03 3.8647605e+03 - 2.2920487e+02 3.9210392e+03 3.8631917e+03 - 1.7174524e+02 3.9264923e+03 3.8619655e+03 - 1.1442124e+02 3.9303813e+03 3.8610864e+03 - 5.7187916e+01 3.9327122e+03 3.8605576e+03 - 4.8134273e-09 3.9334887e+03 3.8603812e+03 - -5.7187916e+01 3.9327122e+03 3.8605576e+03 - -1.1442124e+02 3.9303813e+03 3.8610864e+03 - -1.7174524e+02 3.9264923e+03 3.8619655e+03 - -2.2920487e+02 3.9210392e+03 3.8631917e+03 - -2.8684462e+02 3.9140133e+03 3.8647605e+03 - -3.4470837e+02 3.9054039e+03 3.8666660e+03 - -4.0283916e+02 3.8951978e+03 3.8689009e+03 - -4.6127904e+02 3.8833799e+03 3.8714566e+03 - -5.2006882e+02 3.8699329e+03 3.8743230e+03 - -5.7924784e+02 3.8548379e+03 3.8774884e+03 - -6.3885370e+02 3.8380742e+03 3.8809397e+03 - -6.9892196e+02 3.8196198e+03 3.8846623e+03 - -7.5948586e+02 3.7994514e+03 3.8886398e+03 - -8.2057591e+02 3.7775450e+03 3.8928541e+03 - -8.8221956e+02 3.7538763e+03 3.8972858e+03 - -9.4444075e+02 3.7284205e+03 3.9019132e+03 - -1.0072595e+03 3.7011534e+03 3.9067133e+03 - -1.0706915e+03 3.6720515e+03 3.9116612e+03 - -1.1347474e+03 3.6410926e+03 3.9167304e+03 - -1.1994326e+03 3.6082567e+03 3.9218925e+03 - -1.2647467e+03 3.5735259e+03 3.9271177e+03 - -1.3306828e+03 3.5368858e+03 3.9323746e+03 - -1.3972271e+03 3.4983256e+03 3.9376305e+03 - -1.4643587e+03 3.4578391e+03 3.9428514e+03 - -1.5320487e+03 3.4154255e+03 3.9480023e+03 - -1.6002603e+03 3.3710897e+03 3.9530475e+03 - -1.6689481e+03 3.3248433e+03 3.9579507e+03 - -1.7380585e+03 3.2767053e+03 3.9626756e+03 - -1.8075289e+03 3.2267024e+03 3.9671859e+03 - -1.8772883e+03 3.1748695e+03 3.9714462e+03 - -1.9472573e+03 3.1212503e+03 3.9754217e+03 - -2.0173485e+03 3.0658975e+03 3.9790795e+03 - -2.0874667e+03 3.0088727e+03 3.9823882e+03 - -2.1575102e+03 2.9502467e+03 3.9853190e+03 - -2.2273709e+03 2.8900990e+03 3.9878459e+03 - -2.2969359e+03 2.8285174e+03 3.9899461e+03 - -2.3660881e+03 2.7655975e+03 3.9916001e+03 - -2.4347078e+03 2.7014420e+03 3.9927928e+03 - -2.5026737e+03 2.6361597e+03 3.9935130e+03 - -2.5698644e+03 2.5698644e+03 3.9937538e+03 - -2.6361597e+03 2.5026737e+03 3.9935130e+03 - -2.7014420e+03 2.4347078e+03 3.9927928e+03 - -2.7655975e+03 2.3660881e+03 3.9916001e+03 - -2.8285174e+03 2.2969359e+03 3.9899461e+03 - -2.8900990e+03 2.2273709e+03 3.9878459e+03 - -2.9502467e+03 2.1575102e+03 3.9853190e+03 - -3.0088727e+03 2.0874667e+03 3.9823882e+03 - -3.0658975e+03 2.0173485e+03 3.9790795e+03 - -3.1212503e+03 1.9472573e+03 3.9754217e+03 - -3.1748695e+03 1.8772883e+03 3.9714462e+03 - -3.2267024e+03 1.8075289e+03 3.9671859e+03 - -3.2767053e+03 1.7380585e+03 3.9626756e+03 - -3.3248433e+03 1.6689481e+03 3.9579507e+03 - -3.3710897e+03 1.6002603e+03 3.9530475e+03 - -3.4154255e+03 1.5320487e+03 3.9480023e+03 - -3.4578391e+03 1.4643587e+03 3.9428514e+03 - -3.4983256e+03 1.3972271e+03 3.9376305e+03 - -3.5368858e+03 1.3306828e+03 3.9323746e+03 - -3.5735259e+03 1.2647467e+03 3.9271177e+03 - -3.6082567e+03 1.1994326e+03 3.9218925e+03 - -3.6410926e+03 1.1347474e+03 3.9167304e+03 - -3.6720515e+03 1.0706915e+03 3.9116612e+03 - -3.7011534e+03 1.0072595e+03 3.9067133e+03 - -3.7284205e+03 9.4444075e+02 3.9019132e+03 - -3.7538763e+03 8.8221956e+02 3.8972858e+03 - -3.7775450e+03 8.2057591e+02 3.8928541e+03 - -3.7994514e+03 7.5948586e+02 3.8886398e+03 - -3.8196198e+03 6.9892196e+02 3.8846623e+03 - -3.8380742e+03 6.3885370e+02 3.8809397e+03 - -3.8548379e+03 5.7924784e+02 3.8774884e+03 - -3.8699329e+03 5.2006882e+02 3.8743230e+03 - -3.8833799e+03 4.6127904e+02 3.8714566e+03 - -3.8951978e+03 4.0283916e+02 3.8689009e+03 - -3.9054039e+03 3.4470837e+02 3.8666660e+03 - -3.9140133e+03 2.8684462e+02 3.8647605e+03 - -3.9210392e+03 2.2920487e+02 3.8631917e+03 - -3.9264923e+03 1.7174524e+02 3.8619655e+03 - -3.9303813e+03 1.1442124e+02 3.8610864e+03 - -3.9327122e+03 5.7187916e+01 3.8605576e+03 - -3.9334887e+03 4.8134273e-09 3.8603812e+03 - -3.9327122e+03 -5.7187916e+01 3.8605576e+03 - -3.9303813e+03 -1.1442124e+02 3.8610864e+03 - -3.9264923e+03 -1.7174524e+02 3.8619655e+03 - -3.9210392e+03 -2.2920487e+02 3.8631917e+03 - -3.9140133e+03 -2.8684462e+02 3.8647605e+03 - -3.9054039e+03 -3.4470837e+02 3.8666660e+03 - -3.8951978e+03 -4.0283916e+02 3.8689009e+03 - -3.8833799e+03 -4.6127904e+02 3.8714566e+03 - -3.8699329e+03 -5.2006882e+02 3.8743230e+03 - -3.8548379e+03 -5.7924784e+02 3.8774884e+03 - -3.8380742e+03 -6.3885370e+02 3.8809397e+03 - -3.8196198e+03 -6.9892196e+02 3.8846623e+03 - -3.7994514e+03 -7.5948586e+02 3.8886398e+03 - -3.7775450e+03 -8.2057591e+02 3.8928541e+03 - -3.7538763e+03 -8.8221956e+02 3.8972858e+03 - -3.7284205e+03 -9.4444075e+02 3.9019132e+03 - -3.7011534e+03 -1.0072595e+03 3.9067133e+03 - -3.6720515e+03 -1.0706915e+03 3.9116612e+03 - -3.6410926e+03 -1.1347474e+03 3.9167304e+03 - -3.6082567e+03 -1.1994326e+03 3.9218925e+03 - -3.5735259e+03 -1.2647467e+03 3.9271177e+03 - -3.5368858e+03 -1.3306828e+03 3.9323746e+03 - -3.4983256e+03 -1.3972271e+03 3.9376305e+03 - -3.4578391e+03 -1.4643587e+03 3.9428514e+03 - -3.4154255e+03 -1.5320487e+03 3.9480023e+03 - -3.3710897e+03 -1.6002603e+03 3.9530475e+03 - -3.3248433e+03 -1.6689481e+03 3.9579507e+03 - -3.2767053e+03 -1.7380585e+03 3.9626756e+03 - -3.2267024e+03 -1.8075289e+03 3.9671859e+03 - -3.1748695e+03 -1.8772883e+03 3.9714462e+03 - -3.1212503e+03 -1.9472573e+03 3.9754217e+03 - -3.0658975e+03 -2.0173485e+03 3.9790795e+03 - -3.0088727e+03 -2.0874667e+03 3.9823882e+03 - -2.9502467e+03 -2.1575102e+03 3.9853190e+03 - -2.8900990e+03 -2.2273709e+03 3.9878459e+03 - -2.8285174e+03 -2.2969359e+03 3.9899461e+03 - -2.7655975e+03 -2.3660881e+03 3.9916001e+03 - -2.7014420e+03 -2.4347078e+03 3.9927928e+03 - -2.6361597e+03 -2.5026737e+03 3.9935130e+03 - -2.5698644e+03 -2.5698644e+03 3.9937538e+03 - -2.5026737e+03 -2.6361597e+03 3.9935130e+03 - -2.4347078e+03 -2.7014420e+03 3.9927928e+03 - -2.3660881e+03 -2.7655975e+03 3.9916001e+03 - -2.2969359e+03 -2.8285174e+03 3.9899461e+03 - -2.2273709e+03 -2.8900990e+03 3.9878459e+03 - -2.1575102e+03 -2.9502467e+03 3.9853190e+03 - -2.0874667e+03 -3.0088727e+03 3.9823882e+03 - -2.0173485e+03 -3.0658975e+03 3.9790795e+03 - -1.9472573e+03 -3.1212503e+03 3.9754217e+03 - -1.8772883e+03 -3.1748695e+03 3.9714462e+03 - -1.8075289e+03 -3.2267024e+03 3.9671859e+03 - -1.7380585e+03 -3.2767053e+03 3.9626756e+03 - -1.6689481e+03 -3.3248433e+03 3.9579507e+03 - -1.6002603e+03 -3.3710897e+03 3.9530475e+03 - -1.5320487e+03 -3.4154255e+03 3.9480023e+03 - -1.4643587e+03 -3.4578391e+03 3.9428514e+03 - -1.3972271e+03 -3.4983256e+03 3.9376305e+03 - -1.3306828e+03 -3.5368858e+03 3.9323746e+03 - -1.2647467e+03 -3.5735259e+03 3.9271177e+03 - -1.1994326e+03 -3.6082567e+03 3.9218925e+03 - -1.1347474e+03 -3.6410926e+03 3.9167304e+03 - -1.0706915e+03 -3.6720515e+03 3.9116612e+03 - -1.0072595e+03 -3.7011534e+03 3.9067133e+03 - -9.4444075e+02 -3.7284205e+03 3.9019132e+03 - -8.8221956e+02 -3.7538763e+03 3.8972858e+03 - -8.2057591e+02 -3.7775450e+03 3.8928541e+03 - -7.5948586e+02 -3.7994514e+03 3.8886398e+03 - -6.9892196e+02 -3.8196198e+03 3.8846623e+03 - -6.3885370e+02 -3.8380742e+03 3.8809397e+03 - -5.7924784e+02 -3.8548379e+03 3.8774884e+03 - -5.2006882e+02 -3.8699329e+03 3.8743230e+03 - -4.6127904e+02 -3.8833799e+03 3.8714566e+03 - -4.0283916e+02 -3.8951978e+03 3.8689009e+03 - -3.4470837e+02 -3.9054039e+03 3.8666660e+03 - -2.8684462e+02 -3.9140133e+03 3.8647605e+03 - -2.2920487e+02 -3.9210392e+03 3.8631917e+03 - -1.7174524e+02 -3.9264923e+03 3.8619655e+03 - -1.1442124e+02 -3.9303813e+03 3.8610864e+03 - -5.7187916e+01 -3.9327122e+03 3.8605576e+03 - 0.0000000e+00 -3.9334887e+03 3.8603812e+03 - 5.7187916e+01 -3.9327122e+03 3.8605576e+03 - 1.1442124e+02 -3.9303813e+03 3.8610864e+03 - 1.7174524e+02 -3.9264923e+03 3.8619655e+03 - 2.2920487e+02 -3.9210392e+03 3.8631917e+03 - 2.8684462e+02 -3.9140133e+03 3.8647605e+03 - 3.4470837e+02 -3.9054039e+03 3.8666660e+03 - 4.0283916e+02 -3.8951978e+03 3.8689009e+03 - 4.6127904e+02 -3.8833799e+03 3.8714566e+03 - 5.2006882e+02 -3.8699329e+03 3.8743230e+03 - 5.7924784e+02 -3.8548379e+03 3.8774884e+03 - 6.3885370e+02 -3.8380742e+03 3.8809397e+03 - 6.9892196e+02 -3.8196198e+03 3.8846623e+03 - 7.5948586e+02 -3.7994514e+03 3.8886398e+03 - 8.2057591e+02 -3.7775450e+03 3.8928541e+03 - 8.8221956e+02 -3.7538763e+03 3.8972858e+03 - 9.4444075e+02 -3.7284205e+03 3.9019132e+03 - 1.0072595e+03 -3.7011534e+03 3.9067133e+03 - 1.0706915e+03 -3.6720515e+03 3.9116612e+03 - 1.1347474e+03 -3.6410926e+03 3.9167304e+03 - 1.1994326e+03 -3.6082567e+03 3.9218925e+03 - 1.2647467e+03 -3.5735259e+03 3.9271177e+03 - 1.3306828e+03 -3.5368858e+03 3.9323746e+03 - 1.3972271e+03 -3.4983256e+03 3.9376305e+03 - 1.4643587e+03 -3.4578391e+03 3.9428514e+03 - 1.5320487e+03 -3.4154255e+03 3.9480023e+03 - 1.6002603e+03 -3.3710897e+03 3.9530475e+03 - 1.6689481e+03 -3.3248433e+03 3.9579507e+03 - 1.7380585e+03 -3.2767053e+03 3.9626756e+03 - 1.8075289e+03 -3.2267024e+03 3.9671859e+03 - 1.8772883e+03 -3.1748695e+03 3.9714462e+03 - 1.9472573e+03 -3.1212503e+03 3.9754217e+03 - 2.0173485e+03 -3.0658975e+03 3.9790795e+03 - 2.0874667e+03 -3.0088727e+03 3.9823882e+03 - 2.1575102e+03 -2.9502467e+03 3.9853190e+03 - 2.2273709e+03 -2.8900990e+03 3.9878459e+03 - 2.2969359e+03 -2.8285174e+03 3.9899461e+03 - 2.3660881e+03 -2.7655975e+03 3.9916001e+03 - 2.4347078e+03 -2.7014420e+03 3.9927928e+03 - 2.5026737e+03 -2.6361597e+03 3.9935130e+03 - 2.5698644e+03 -2.5698644e+03 3.9937538e+03 - 2.6361597e+03 -2.5026737e+03 3.9935130e+03 - 2.7014420e+03 -2.4347078e+03 3.9927928e+03 - 2.7655975e+03 -2.3660881e+03 3.9916001e+03 - 2.8285174e+03 -2.2969359e+03 3.9899461e+03 - 2.8900990e+03 -2.2273709e+03 3.9878459e+03 - 2.9502467e+03 -2.1575102e+03 3.9853190e+03 - 3.0088727e+03 -2.0874667e+03 3.9823882e+03 - 3.0658975e+03 -2.0173485e+03 3.9790795e+03 - 3.1212503e+03 -1.9472573e+03 3.9754217e+03 - 3.1748695e+03 -1.8772883e+03 3.9714462e+03 - 3.2267024e+03 -1.8075289e+03 3.9671859e+03 - 3.2767053e+03 -1.7380585e+03 3.9626756e+03 - 3.3248433e+03 -1.6689481e+03 3.9579507e+03 - 3.3710897e+03 -1.6002603e+03 3.9530475e+03 - 3.4154255e+03 -1.5320487e+03 3.9480023e+03 - 3.4578391e+03 -1.4643587e+03 3.9428514e+03 - 3.4983256e+03 -1.3972271e+03 3.9376305e+03 - 3.5368858e+03 -1.3306828e+03 3.9323746e+03 - 3.5735259e+03 -1.2647467e+03 3.9271177e+03 - 3.6082567e+03 -1.1994326e+03 3.9218925e+03 - 3.6410926e+03 -1.1347474e+03 3.9167304e+03 - 3.6720515e+03 -1.0706915e+03 3.9116612e+03 - 3.7011534e+03 -1.0072595e+03 3.9067133e+03 - 3.7284205e+03 -9.4444075e+02 3.9019132e+03 - 3.7538763e+03 -8.8221956e+02 3.8972858e+03 - 3.7775450e+03 -8.2057591e+02 3.8928541e+03 - 3.7994514e+03 -7.5948586e+02 3.8886398e+03 - 3.8196198e+03 -6.9892196e+02 3.8846623e+03 - 3.8380742e+03 -6.3885370e+02 3.8809397e+03 - 3.8548379e+03 -5.7924784e+02 3.8774884e+03 - 3.8699329e+03 -5.2006882e+02 3.8743230e+03 - 3.8833799e+03 -4.6127904e+02 3.8714566e+03 - 3.8951978e+03 -4.0283916e+02 3.8689009e+03 - 3.9054039e+03 -3.4470837e+02 3.8666660e+03 - 3.9140133e+03 -2.8684462e+02 3.8647605e+03 - 3.9210392e+03 -2.2920487e+02 3.8631917e+03 - 3.9264923e+03 -1.7174524e+02 3.8619655e+03 - 3.9303813e+03 -1.1442124e+02 3.8610864e+03 - 3.9327122e+03 -5.7187916e+01 3.8605576e+03 - 3.9334887e+03 -9.6268545e-09 3.8603812e+03 - 3.9829820e+03 0.0000000e+00 3.8189442e+03 - 3.9822019e+03 5.7280737e+01 3.8191300e+03 - 3.9798604e+03 1.1460935e+02 3.8196869e+03 - 3.9759535e+03 1.7203357e+02 3.8206129e+03 - 3.9704745e+03 2.2960086e+02 3.8219048e+03 - 3.9634142e+03 2.8735823e+02 3.8235578e+03 - 3.9547611e+03 3.4535212e+02 3.8255660e+03 - 3.9445008e+03 4.0362818e+02 3.8279220e+03 - 3.9326170e+03 4.6223110e+02 3.8306169e+03 - 3.9190910e+03 5.2120440e+02 3.8336404e+03 - 3.9039021e+03 5.8059017e+02 3.8369807e+03 - 3.8870278e+03 6.4042884e+02 3.8406241e+03 - 3.8684441e+03 7.0075882e+02 3.8445557e+03 - 3.8481255e+03 7.6161623e+02 3.8487586e+03 - 3.8260455e+03 8.2303450e+02 3.8532141e+03 - 3.8021771e+03 8.8504401e+02 3.8579019e+03 - 3.7764929e+03 9.4767159e+02 3.8627997e+03 - 3.7489656e+03 1.0109401e+03 3.8678835e+03 - 3.7195688e+03 1.0748680e+03 3.8731272e+03 - 3.6882772e+03 1.1394687e+03 3.8785029e+03 - 3.6550674e+03 1.2047500e+03 3.8839810e+03 - 3.6199186e+03 1.2707137e+03 3.8895300e+03 - 3.5828130e+03 1.3373550e+03 3.8951167e+03 - 3.5437368e+03 1.4046616e+03 3.9007063e+03 - 3.5026812e+03 1.4726139e+03 3.9062628e+03 - 3.4596424e+03 1.5411837e+03 3.9117488e+03 - 3.4146233e+03 1.6103345e+03 3.9171261e+03 - 3.3676335e+03 1.6800205e+03 3.9223559e+03 - 3.3186905e+03 1.7501870e+03 3.9273989e+03 - 3.2678202e+03 1.8207697e+03 3.9322163e+03 - 3.2150574e+03 1.8916950e+03 3.9367694e+03 - 3.1604461e+03 1.9628804e+03 3.9410209e+03 - 3.1040405e+03 2.0342342e+03 3.9449347e+03 - 3.0459042e+03 2.1056567e+03 3.9484769e+03 - 2.9861109e+03 2.1770405e+03 3.9516161e+03 - 2.9247438e+03 2.2482716e+03 3.9543238e+03 - 2.8618953e+03 2.3192301e+03 3.9565749e+03 - 2.7976664e+03 2.3897919e+03 3.9583484e+03 - 2.7321658e+03 2.4598296e+03 3.9596275e+03 - 2.6655089e+03 2.5292143e+03 3.9603999e+03 - 2.5978167e+03 2.5978167e+03 3.9606582e+03 - 2.5292143e+03 2.6655089e+03 3.9603999e+03 - 2.4598296e+03 2.7321658e+03 3.9596275e+03 - 2.3897919e+03 2.7976664e+03 3.9583484e+03 - 2.3192301e+03 2.8618953e+03 3.9565749e+03 - 2.2482716e+03 2.9247438e+03 3.9543238e+03 - 2.1770405e+03 2.9861109e+03 3.9516161e+03 - 2.1056567e+03 3.0459042e+03 3.9484769e+03 - 2.0342342e+03 3.1040405e+03 3.9449347e+03 - 1.9628804e+03 3.1604461e+03 3.9410209e+03 - 1.8916950e+03 3.2150574e+03 3.9367694e+03 - 1.8207697e+03 3.2678202e+03 3.9322163e+03 - 1.7501870e+03 3.3186905e+03 3.9273989e+03 - 1.6800205e+03 3.3676335e+03 3.9223559e+03 - 1.6103345e+03 3.4146233e+03 3.9171261e+03 - 1.5411837e+03 3.4596424e+03 3.9117488e+03 - 1.4726139e+03 3.5026812e+03 3.9062628e+03 - 1.4046616e+03 3.5437368e+03 3.9007063e+03 - 1.3373550e+03 3.5828130e+03 3.8951167e+03 - 1.2707137e+03 3.6199186e+03 3.8895300e+03 - 1.2047500e+03 3.6550674e+03 3.8839810e+03 - 1.1394687e+03 3.6882772e+03 3.8785029e+03 - 1.0748680e+03 3.7195688e+03 3.8731272e+03 - 1.0109401e+03 3.7489656e+03 3.8678835e+03 - 9.4767159e+02 3.7764929e+03 3.8627997e+03 - 8.8504401e+02 3.8021771e+03 3.8579019e+03 - 8.2303450e+02 3.8260455e+03 3.8532141e+03 - 7.6161623e+02 3.8481255e+03 3.8487586e+03 - 7.0075882e+02 3.8684441e+03 3.8445557e+03 - 6.4042884e+02 3.8870278e+03 3.8406241e+03 - 5.8059017e+02 3.9039021e+03 3.8369807e+03 - 5.2120440e+02 3.9190910e+03 3.8336404e+03 - 4.6223110e+02 3.9326170e+03 3.8306169e+03 - 4.0362818e+02 3.9445008e+03 3.8279220e+03 - 3.4535212e+02 3.9547611e+03 3.8255660e+03 - 2.8735823e+02 3.9634142e+03 3.8235578e+03 - 2.2960086e+02 3.9704745e+03 3.8219048e+03 - 1.7203357e+02 3.9759535e+03 3.8206129e+03 - 1.1460935e+02 3.9798604e+03 3.8196869e+03 - 5.7280737e+01 3.9822019e+03 3.8191300e+03 - 4.8134273e-09 3.9829820e+03 3.8189442e+03 - -5.7280737e+01 3.9822019e+03 3.8191300e+03 - -1.1460935e+02 3.9798604e+03 3.8196869e+03 - -1.7203357e+02 3.9759535e+03 3.8206129e+03 - -2.2960086e+02 3.9704745e+03 3.8219048e+03 - -2.8735823e+02 3.9634142e+03 3.8235578e+03 - -3.4535212e+02 3.9547611e+03 3.8255660e+03 - -4.0362818e+02 3.9445008e+03 3.8279220e+03 - -4.6223110e+02 3.9326170e+03 3.8306169e+03 - -5.2120440e+02 3.9190910e+03 3.8336404e+03 - -5.8059017e+02 3.9039021e+03 3.8369807e+03 - -6.4042884e+02 3.8870278e+03 3.8406241e+03 - -7.0075882e+02 3.8684441e+03 3.8445557e+03 - -7.6161623e+02 3.8481255e+03 3.8487586e+03 - -8.2303450e+02 3.8260455e+03 3.8532141e+03 - -8.8504401e+02 3.8021771e+03 3.8579019e+03 - -9.4767159e+02 3.7764929e+03 3.8627997e+03 - -1.0109401e+03 3.7489656e+03 3.8678835e+03 - -1.0748680e+03 3.7195688e+03 3.8731272e+03 - -1.1394687e+03 3.6882772e+03 3.8785029e+03 - -1.2047500e+03 3.6550674e+03 3.8839810e+03 - -1.2707137e+03 3.6199186e+03 3.8895300e+03 - -1.3373550e+03 3.5828130e+03 3.8951167e+03 - -1.4046616e+03 3.5437368e+03 3.9007063e+03 - -1.4726139e+03 3.5026812e+03 3.9062628e+03 - -1.5411837e+03 3.4596424e+03 3.9117488e+03 - -1.6103345e+03 3.4146233e+03 3.9171261e+03 - -1.6800205e+03 3.3676335e+03 3.9223559e+03 - -1.7501870e+03 3.3186905e+03 3.9273989e+03 - -1.8207697e+03 3.2678202e+03 3.9322163e+03 - -1.8916950e+03 3.2150574e+03 3.9367694e+03 - -1.9628804e+03 3.1604461e+03 3.9410209e+03 - -2.0342342e+03 3.1040405e+03 3.9449347e+03 - -2.1056567e+03 3.0459042e+03 3.9484769e+03 - -2.1770405e+03 2.9861109e+03 3.9516161e+03 - -2.2482716e+03 2.9247438e+03 3.9543238e+03 - -2.3192301e+03 2.8618953e+03 3.9565749e+03 - -2.3897919e+03 2.7976664e+03 3.9583484e+03 - -2.4598296e+03 2.7321658e+03 3.9596275e+03 - -2.5292143e+03 2.6655089e+03 3.9603999e+03 - -2.5978167e+03 2.5978167e+03 3.9606582e+03 - -2.6655089e+03 2.5292143e+03 3.9603999e+03 - -2.7321658e+03 2.4598296e+03 3.9596275e+03 - -2.7976664e+03 2.3897919e+03 3.9583484e+03 - -2.8618953e+03 2.3192301e+03 3.9565749e+03 - -2.9247438e+03 2.2482716e+03 3.9543238e+03 - -2.9861109e+03 2.1770405e+03 3.9516161e+03 - -3.0459042e+03 2.1056567e+03 3.9484769e+03 - -3.1040405e+03 2.0342342e+03 3.9449347e+03 - -3.1604461e+03 1.9628804e+03 3.9410209e+03 - -3.2150574e+03 1.8916950e+03 3.9367694e+03 - -3.2678202e+03 1.8207697e+03 3.9322163e+03 - -3.3186905e+03 1.7501870e+03 3.9273989e+03 - -3.3676335e+03 1.6800205e+03 3.9223559e+03 - -3.4146233e+03 1.6103345e+03 3.9171261e+03 - -3.4596424e+03 1.5411837e+03 3.9117488e+03 - -3.5026812e+03 1.4726139e+03 3.9062628e+03 - -3.5437368e+03 1.4046616e+03 3.9007063e+03 - -3.5828130e+03 1.3373550e+03 3.8951167e+03 - -3.6199186e+03 1.2707137e+03 3.8895300e+03 - -3.6550674e+03 1.2047500e+03 3.8839810e+03 - -3.6882772e+03 1.1394687e+03 3.8785029e+03 - -3.7195688e+03 1.0748680e+03 3.8731272e+03 - -3.7489656e+03 1.0109401e+03 3.8678835e+03 - -3.7764929e+03 9.4767159e+02 3.8627997e+03 - -3.8021771e+03 8.8504401e+02 3.8579019e+03 - -3.8260455e+03 8.2303450e+02 3.8532141e+03 - -3.8481255e+03 7.6161623e+02 3.8487586e+03 - -3.8684441e+03 7.0075882e+02 3.8445557e+03 - -3.8870278e+03 6.4042884e+02 3.8406241e+03 - -3.9039021e+03 5.8059017e+02 3.8369807e+03 - -3.9190910e+03 5.2120440e+02 3.8336404e+03 - -3.9326170e+03 4.6223110e+02 3.8306169e+03 - -3.9445008e+03 4.0362818e+02 3.8279220e+03 - -3.9547611e+03 3.4535212e+02 3.8255660e+03 - -3.9634142e+03 2.8735823e+02 3.8235578e+03 - -3.9704745e+03 2.2960086e+02 3.8219048e+03 - -3.9759535e+03 1.7203357e+02 3.8206129e+03 - -3.9798604e+03 1.1460935e+02 3.8196869e+03 - -3.9822019e+03 5.7280737e+01 3.8191300e+03 - -3.9829820e+03 0.0000000e+00 3.8189442e+03 - -3.9822019e+03 -5.7280737e+01 3.8191300e+03 - -3.9798604e+03 -1.1460935e+02 3.8196869e+03 - -3.9759535e+03 -1.7203357e+02 3.8206129e+03 - -3.9704745e+03 -2.2960086e+02 3.8219048e+03 - -3.9634142e+03 -2.8735823e+02 3.8235578e+03 - -3.9547611e+03 -3.4535212e+02 3.8255660e+03 - -3.9445008e+03 -4.0362818e+02 3.8279220e+03 - -3.9326170e+03 -4.6223110e+02 3.8306169e+03 - -3.9190910e+03 -5.2120440e+02 3.8336404e+03 - -3.9039021e+03 -5.8059017e+02 3.8369807e+03 - -3.8870278e+03 -6.4042884e+02 3.8406241e+03 - -3.8684441e+03 -7.0075882e+02 3.8445557e+03 - -3.8481255e+03 -7.6161623e+02 3.8487586e+03 - -3.8260455e+03 -8.2303450e+02 3.8532141e+03 - -3.8021771e+03 -8.8504401e+02 3.8579019e+03 - -3.7764929e+03 -9.4767159e+02 3.8627997e+03 - -3.7489656e+03 -1.0109401e+03 3.8678835e+03 - -3.7195688e+03 -1.0748680e+03 3.8731272e+03 - -3.6882772e+03 -1.1394687e+03 3.8785029e+03 - -3.6550674e+03 -1.2047500e+03 3.8839810e+03 - -3.6199186e+03 -1.2707137e+03 3.8895300e+03 - -3.5828130e+03 -1.3373550e+03 3.8951167e+03 - -3.5437368e+03 -1.4046616e+03 3.9007063e+03 - -3.5026812e+03 -1.4726139e+03 3.9062628e+03 - -3.4596424e+03 -1.5411837e+03 3.9117488e+03 - -3.4146233e+03 -1.6103345e+03 3.9171261e+03 - -3.3676335e+03 -1.6800205e+03 3.9223559e+03 - -3.3186905e+03 -1.7501870e+03 3.9273989e+03 - -3.2678202e+03 -1.8207697e+03 3.9322163e+03 - -3.2150574e+03 -1.8916950e+03 3.9367694e+03 - -3.1604461e+03 -1.9628804e+03 3.9410209e+03 - -3.1040405e+03 -2.0342342e+03 3.9449347e+03 - -3.0459042e+03 -2.1056567e+03 3.9484769e+03 - -2.9861109e+03 -2.1770405e+03 3.9516161e+03 - -2.9247438e+03 -2.2482716e+03 3.9543238e+03 - -2.8618953e+03 -2.3192301e+03 3.9565749e+03 - -2.7976664e+03 -2.3897919e+03 3.9583484e+03 - -2.7321658e+03 -2.4598296e+03 3.9596275e+03 - -2.6655089e+03 -2.5292143e+03 3.9603999e+03 - -2.5978167e+03 -2.5978167e+03 3.9606582e+03 - -2.5292143e+03 -2.6655089e+03 3.9603999e+03 - -2.4598296e+03 -2.7321658e+03 3.9596275e+03 - -2.3897919e+03 -2.7976664e+03 3.9583484e+03 - -2.3192301e+03 -2.8618953e+03 3.9565749e+03 - -2.2482716e+03 -2.9247438e+03 3.9543238e+03 - -2.1770405e+03 -2.9861109e+03 3.9516161e+03 - -2.1056567e+03 -3.0459042e+03 3.9484769e+03 - -2.0342342e+03 -3.1040405e+03 3.9449347e+03 - -1.9628804e+03 -3.1604461e+03 3.9410209e+03 - -1.8916950e+03 -3.2150574e+03 3.9367694e+03 - -1.8207697e+03 -3.2678202e+03 3.9322163e+03 - -1.7501870e+03 -3.3186905e+03 3.9273989e+03 - -1.6800205e+03 -3.3676335e+03 3.9223559e+03 - -1.6103345e+03 -3.4146233e+03 3.9171261e+03 - -1.5411837e+03 -3.4596424e+03 3.9117488e+03 - -1.4726139e+03 -3.5026812e+03 3.9062628e+03 - -1.4046616e+03 -3.5437368e+03 3.9007063e+03 - -1.3373550e+03 -3.5828130e+03 3.8951167e+03 - -1.2707137e+03 -3.6199186e+03 3.8895300e+03 - -1.2047500e+03 -3.6550674e+03 3.8839810e+03 - -1.1394687e+03 -3.6882772e+03 3.8785029e+03 - -1.0748680e+03 -3.7195688e+03 3.8731272e+03 - -1.0109401e+03 -3.7489656e+03 3.8678835e+03 - -9.4767159e+02 -3.7764929e+03 3.8627997e+03 - -8.8504401e+02 -3.8021771e+03 3.8579019e+03 - -8.2303450e+02 -3.8260455e+03 3.8532141e+03 - -7.6161623e+02 -3.8481255e+03 3.8487586e+03 - -7.0075882e+02 -3.8684441e+03 3.8445557e+03 - -6.4042884e+02 -3.8870278e+03 3.8406241e+03 - -5.8059017e+02 -3.9039021e+03 3.8369807e+03 - -5.2120440e+02 -3.9190910e+03 3.8336404e+03 - -4.6223110e+02 -3.9326170e+03 3.8306169e+03 - -4.0362818e+02 -3.9445008e+03 3.8279220e+03 - -3.4535212e+02 -3.9547611e+03 3.8255660e+03 - -2.8735823e+02 -3.9634142e+03 3.8235578e+03 - -2.2960086e+02 -3.9704745e+03 3.8219048e+03 - -1.7203357e+02 -3.9759535e+03 3.8206129e+03 - -1.1460935e+02 -3.9798604e+03 3.8196869e+03 - -5.7280737e+01 -3.9822019e+03 3.8191300e+03 - 0.0000000e+00 -3.9829820e+03 3.8189442e+03 - 5.7280737e+01 -3.9822019e+03 3.8191300e+03 - 1.1460935e+02 -3.9798604e+03 3.8196869e+03 - 1.7203357e+02 -3.9759535e+03 3.8206129e+03 - 2.2960086e+02 -3.9704745e+03 3.8219048e+03 - 2.8735823e+02 -3.9634142e+03 3.8235578e+03 - 3.4535212e+02 -3.9547611e+03 3.8255660e+03 - 4.0362818e+02 -3.9445008e+03 3.8279220e+03 - 4.6223110e+02 -3.9326170e+03 3.8306169e+03 - 5.2120440e+02 -3.9190910e+03 3.8336404e+03 - 5.8059017e+02 -3.9039021e+03 3.8369807e+03 - 6.4042884e+02 -3.8870278e+03 3.8406241e+03 - 7.0075882e+02 -3.8684441e+03 3.8445557e+03 - 7.6161623e+02 -3.8481255e+03 3.8487586e+03 - 8.2303450e+02 -3.8260455e+03 3.8532141e+03 - 8.8504401e+02 -3.8021771e+03 3.8579019e+03 - 9.4767159e+02 -3.7764929e+03 3.8627997e+03 - 1.0109401e+03 -3.7489656e+03 3.8678835e+03 - 1.0748680e+03 -3.7195688e+03 3.8731272e+03 - 1.1394687e+03 -3.6882772e+03 3.8785029e+03 - 1.2047500e+03 -3.6550674e+03 3.8839810e+03 - 1.2707137e+03 -3.6199186e+03 3.8895300e+03 - 1.3373550e+03 -3.5828130e+03 3.8951167e+03 - 1.4046616e+03 -3.5437368e+03 3.9007063e+03 - 1.4726139e+03 -3.5026812e+03 3.9062628e+03 - 1.5411837e+03 -3.4596424e+03 3.9117488e+03 - 1.6103345e+03 -3.4146233e+03 3.9171261e+03 - 1.6800205e+03 -3.3676335e+03 3.9223559e+03 - 1.7501870e+03 -3.3186905e+03 3.9273989e+03 - 1.8207697e+03 -3.2678202e+03 3.9322163e+03 - 1.8916950e+03 -3.2150574e+03 3.9367694e+03 - 1.9628804e+03 -3.1604461e+03 3.9410209e+03 - 2.0342342e+03 -3.1040405e+03 3.9449347e+03 - 2.1056567e+03 -3.0459042e+03 3.9484769e+03 - 2.1770405e+03 -2.9861109e+03 3.9516161e+03 - 2.2482716e+03 -2.9247438e+03 3.9543238e+03 - 2.3192301e+03 -2.8618953e+03 3.9565749e+03 - 2.3897919e+03 -2.7976664e+03 3.9583484e+03 - 2.4598296e+03 -2.7321658e+03 3.9596275e+03 - 2.5292143e+03 -2.6655089e+03 3.9603999e+03 - 2.5978167e+03 -2.5978167e+03 3.9606582e+03 - 2.6655089e+03 -2.5292143e+03 3.9603999e+03 - 2.7321658e+03 -2.4598296e+03 3.9596275e+03 - 2.7976664e+03 -2.3897919e+03 3.9583484e+03 - 2.8618953e+03 -2.3192301e+03 3.9565749e+03 - 2.9247438e+03 -2.2482716e+03 3.9543238e+03 - 2.9861109e+03 -2.1770405e+03 3.9516161e+03 - 3.0459042e+03 -2.1056567e+03 3.9484769e+03 - 3.1040405e+03 -2.0342342e+03 3.9449347e+03 - 3.1604461e+03 -1.9628804e+03 3.9410209e+03 - 3.2150574e+03 -1.8916950e+03 3.9367694e+03 - 3.2678202e+03 -1.8207697e+03 3.9322163e+03 - 3.3186905e+03 -1.7501870e+03 3.9273989e+03 - 3.3676335e+03 -1.6800205e+03 3.9223559e+03 - 3.4146233e+03 -1.6103345e+03 3.9171261e+03 - 3.4596424e+03 -1.5411837e+03 3.9117488e+03 - 3.5026812e+03 -1.4726139e+03 3.9062628e+03 - 3.5437368e+03 -1.4046616e+03 3.9007063e+03 - 3.5828130e+03 -1.3373550e+03 3.8951167e+03 - 3.6199186e+03 -1.2707137e+03 3.8895300e+03 - 3.6550674e+03 -1.2047500e+03 3.8839810e+03 - 3.6882772e+03 -1.1394687e+03 3.8785029e+03 - 3.7195688e+03 -1.0748680e+03 3.8731272e+03 - 3.7489656e+03 -1.0109401e+03 3.8678835e+03 - 3.7764929e+03 -9.4767159e+02 3.8627997e+03 - 3.8021771e+03 -8.8504401e+02 3.8579019e+03 - 3.8260455e+03 -8.2303450e+02 3.8532141e+03 - 3.8481255e+03 -7.6161623e+02 3.8487586e+03 - 3.8684441e+03 -7.0075882e+02 3.8445557e+03 - 3.8870278e+03 -6.4042884e+02 3.8406241e+03 - 3.9039021e+03 -5.8059017e+02 3.8369807e+03 - 3.9190910e+03 -5.2120440e+02 3.8336404e+03 - 3.9326170e+03 -4.6223110e+02 3.8306169e+03 - 3.9445008e+03 -4.0362818e+02 3.8279220e+03 - 3.9547611e+03 -3.4535212e+02 3.8255660e+03 - 3.9634142e+03 -2.8735823e+02 3.8235578e+03 - 3.9704745e+03 -2.2960086e+02 3.8219048e+03 - 3.9759535e+03 -1.7203357e+02 3.8206129e+03 - 3.9798604e+03 -1.1460935e+02 3.8196869e+03 - 3.9822019e+03 -5.7280737e+01 3.8191300e+03 - 3.9829820e+03 0.0000000e+00 3.8189442e+03 - 4.0314007e+03 4.8134273e-09 3.7767622e+03 - 4.0306177e+03 5.7348150e+01 3.7769575e+03 - 4.0282674e+03 1.1474659e+02 3.7775430e+03 - 4.0243454e+03 1.7224548e+02 3.7785165e+03 - 4.0188447e+03 2.2989473e+02 3.7798748e+03 - 4.0117555e+03 2.8774384e+02 3.7816132e+03 - 4.0030650e+03 3.4584176e+02 3.7837255e+03 - 3.9927582e+03 4.0423673e+02 3.7862044e+03 - 3.9808173e+03 4.6297606e+02 3.7890406e+03 - 3.9672222e+03 5.2210598e+02 3.7922238e+03 - 3.9519506e+03 5.8167135e+02 3.7957418e+03 - 3.9349780e+03 6.4171540e+02 3.7995807e+03 - 3.9162783e+03 7.0227944e+02 3.8037251e+03 - 3.8958238e+03 7.6340254e+02 3.8081577e+03 - 3.8735855e+03 8.2512112e+02 3.8128592e+03 - 3.8495336e+03 8.8746853e+02 3.8178086e+03 - 3.8236380e+03 9.5047464e+02 3.8229829e+03 - 3.7958683e+03 1.0141653e+03 3.8283570e+03 - 3.7661948e+03 1.0785619e+03 3.8339038e+03 - 3.7345892e+03 1.1436805e+03 3.8395942e+03 - 3.7010246e+03 1.2095318e+03 3.8453970e+03 - 3.6654768e+03 1.2761199e+03 3.8512792e+03 - 3.6279247e+03 1.3434422e+03 3.8572056e+03 - 3.5883513e+03 1.4114883e+03 3.8631397e+03 - 3.5467446e+03 1.4802400e+03 3.8690430e+03 - 3.5030981e+03 1.5496701e+03 3.8748758e+03 - 3.4574120e+03 1.6197424e+03 3.8805973e+03 - 3.4096939e+03 1.6904110e+03 3.8861659e+03 - 3.3599596e+03 1.7616202e+03 3.8915396e+03 - 3.3082339e+03 1.8333040e+03 3.8966763e+03 - 3.2545513e+03 1.9053866e+03 3.9015346e+03 - 3.1989563e+03 1.9777820e+03 3.9060738e+03 - 3.1415040e+03 2.0503946e+03 3.9102550e+03 - 3.0822602e+03 2.1231198e+03 3.9140413e+03 - 3.0213016e+03 2.1958444e+03 3.9173984e+03 - 2.9587151e+03 2.2684481e+03 3.9202953e+03 - 2.8945980e+03 2.3408040e+03 3.9227046e+03 - 2.8290566e+03 2.4127805e+03 3.9246033e+03 - 2.7622062e+03 2.4842424e+03 3.9259730e+03 - 2.6941689e+03 2.5550525e+03 3.9268003e+03 - 2.6250734e+03 2.6250734e+03 3.9270769e+03 - 2.5550525e+03 2.6941689e+03 3.9268003e+03 - 2.4842424e+03 2.7622062e+03 3.9259730e+03 - 2.4127805e+03 2.8290566e+03 3.9246033e+03 - 2.3408040e+03 2.8945980e+03 3.9227046e+03 - 2.2684481e+03 2.9587151e+03 3.9202953e+03 - 2.1958444e+03 3.0213016e+03 3.9173984e+03 - 2.1231198e+03 3.0822602e+03 3.9140413e+03 - 2.0503946e+03 3.1415040e+03 3.9102550e+03 - 1.9777820e+03 3.1989563e+03 3.9060738e+03 - 1.9053866e+03 3.2545513e+03 3.9015346e+03 - 1.8333040e+03 3.3082339e+03 3.8966763e+03 - 1.7616202e+03 3.3599596e+03 3.8915396e+03 - 1.6904110e+03 3.4096939e+03 3.8861659e+03 - 1.6197424e+03 3.4574120e+03 3.8805973e+03 - 1.5496701e+03 3.5030981e+03 3.8748758e+03 - 1.4802400e+03 3.5467446e+03 3.8690430e+03 - 1.4114883e+03 3.5883513e+03 3.8631397e+03 - 1.3434422e+03 3.6279247e+03 3.8572056e+03 - 1.2761199e+03 3.6654768e+03 3.8512792e+03 - 1.2095318e+03 3.7010246e+03 3.8453970e+03 - 1.1436805e+03 3.7345892e+03 3.8395942e+03 - 1.0785619e+03 3.7661948e+03 3.8339038e+03 - 1.0141653e+03 3.7958683e+03 3.8283570e+03 - 9.5047464e+02 3.8236380e+03 3.8229829e+03 - 8.8746853e+02 3.8495336e+03 3.8178086e+03 - 8.2512112e+02 3.8735855e+03 3.8128592e+03 - 7.6340254e+02 3.8958238e+03 3.8081577e+03 - 7.0227944e+02 3.9162783e+03 3.8037251e+03 - 6.4171540e+02 3.9349780e+03 3.7995807e+03 - 5.8167135e+02 3.9519506e+03 3.7957418e+03 - 5.2210598e+02 3.9672222e+03 3.7922238e+03 - 4.6297606e+02 3.9808173e+03 3.7890406e+03 - 4.0423673e+02 3.9927582e+03 3.7862044e+03 - 3.4584176e+02 4.0030650e+03 3.7837255e+03 - 2.8774384e+02 4.0117555e+03 3.7816132e+03 - 2.2989473e+02 4.0188447e+03 3.7798748e+03 - 1.7224548e+02 4.0243454e+03 3.7785165e+03 - 1.1474659e+02 4.0282674e+03 3.7775430e+03 - 5.7348150e+01 4.0306177e+03 3.7769575e+03 - 0.0000000e+00 4.0314007e+03 3.7767622e+03 - -5.7348150e+01 4.0306177e+03 3.7769575e+03 - -1.1474659e+02 4.0282674e+03 3.7775430e+03 - -1.7224548e+02 4.0243454e+03 3.7785165e+03 - -2.2989473e+02 4.0188447e+03 3.7798748e+03 - -2.8774384e+02 4.0117555e+03 3.7816132e+03 - -3.4584176e+02 4.0030650e+03 3.7837255e+03 - -4.0423673e+02 3.9927582e+03 3.7862044e+03 - -4.6297606e+02 3.9808173e+03 3.7890406e+03 - -5.2210598e+02 3.9672222e+03 3.7922238e+03 - -5.8167135e+02 3.9519506e+03 3.7957418e+03 - -6.4171540e+02 3.9349780e+03 3.7995807e+03 - -7.0227944e+02 3.9162783e+03 3.8037251e+03 - -7.6340254e+02 3.8958238e+03 3.8081577e+03 - -8.2512112e+02 3.8735855e+03 3.8128592e+03 - -8.8746853e+02 3.8495336e+03 3.8178086e+03 - -9.5047464e+02 3.8236380e+03 3.8229829e+03 - -1.0141653e+03 3.7958683e+03 3.8283570e+03 - -1.0785619e+03 3.7661948e+03 3.8339038e+03 - -1.1436805e+03 3.7345892e+03 3.8395942e+03 - -1.2095318e+03 3.7010246e+03 3.8453970e+03 - -1.2761199e+03 3.6654768e+03 3.8512792e+03 - -1.3434422e+03 3.6279247e+03 3.8572056e+03 - -1.4114883e+03 3.5883513e+03 3.8631397e+03 - -1.4802400e+03 3.5467446e+03 3.8690430e+03 - -1.5496701e+03 3.5030981e+03 3.8748758e+03 - -1.6197424e+03 3.4574120e+03 3.8805973e+03 - -1.6904110e+03 3.4096939e+03 3.8861659e+03 - -1.7616202e+03 3.3599596e+03 3.8915396e+03 - -1.8333040e+03 3.3082339e+03 3.8966763e+03 - -1.9053866e+03 3.2545513e+03 3.9015346e+03 - -1.9777820e+03 3.1989563e+03 3.9060738e+03 - -2.0503946e+03 3.1415040e+03 3.9102550e+03 - -2.1231198e+03 3.0822602e+03 3.9140413e+03 - -2.1958444e+03 3.0213016e+03 3.9173984e+03 - -2.2684481e+03 2.9587151e+03 3.9202953e+03 - -2.3408040e+03 2.8945980e+03 3.9227046e+03 - -2.4127805e+03 2.8290566e+03 3.9246033e+03 - -2.4842424e+03 2.7622062e+03 3.9259730e+03 - -2.5550525e+03 2.6941689e+03 3.9268003e+03 - -2.6250734e+03 2.6250734e+03 3.9270769e+03 - -2.6941689e+03 2.5550525e+03 3.9268003e+03 - -2.7622062e+03 2.4842424e+03 3.9259730e+03 - -2.8290566e+03 2.4127805e+03 3.9246033e+03 - -2.8945980e+03 2.3408040e+03 3.9227046e+03 - -2.9587151e+03 2.2684481e+03 3.9202953e+03 - -3.0213016e+03 2.1958444e+03 3.9173984e+03 - -3.0822602e+03 2.1231198e+03 3.9140413e+03 - -3.1415040e+03 2.0503946e+03 3.9102550e+03 - -3.1989563e+03 1.9777820e+03 3.9060738e+03 - -3.2545513e+03 1.9053866e+03 3.9015346e+03 - -3.3082339e+03 1.8333040e+03 3.8966763e+03 - -3.3599596e+03 1.7616202e+03 3.8915396e+03 - -3.4096939e+03 1.6904110e+03 3.8861659e+03 - -3.4574120e+03 1.6197424e+03 3.8805973e+03 - -3.5030981e+03 1.5496701e+03 3.8748758e+03 - -3.5467446e+03 1.4802400e+03 3.8690430e+03 - -3.5883513e+03 1.4114883e+03 3.8631397e+03 - -3.6279247e+03 1.3434422e+03 3.8572056e+03 - -3.6654768e+03 1.2761199e+03 3.8512792e+03 - -3.7010246e+03 1.2095318e+03 3.8453970e+03 - -3.7345892e+03 1.1436805e+03 3.8395942e+03 - -3.7661948e+03 1.0785619e+03 3.8339038e+03 - -3.7958683e+03 1.0141653e+03 3.8283570e+03 - -3.8236380e+03 9.5047464e+02 3.8229829e+03 - -3.8495336e+03 8.8746853e+02 3.8178086e+03 - -3.8735855e+03 8.2512112e+02 3.8128592e+03 - -3.8958238e+03 7.6340254e+02 3.8081577e+03 - -3.9162783e+03 7.0227944e+02 3.8037251e+03 - -3.9349780e+03 6.4171540e+02 3.7995807e+03 - -3.9519506e+03 5.8167135e+02 3.7957418e+03 - -3.9672222e+03 5.2210598e+02 3.7922238e+03 - -3.9808173e+03 4.6297606e+02 3.7890406e+03 - -3.9927582e+03 4.0423673e+02 3.7862044e+03 - -4.0030650e+03 3.4584176e+02 3.7837255e+03 - -4.0117555e+03 2.8774384e+02 3.7816132e+03 - -4.0188447e+03 2.2989473e+02 3.7798748e+03 - -4.0243454e+03 1.7224548e+02 3.7785165e+03 - -4.0282674e+03 1.1474659e+02 3.7775430e+03 - -4.0306177e+03 5.7348150e+01 3.7769575e+03 - -4.0314007e+03 0.0000000e+00 3.7767622e+03 - -4.0306177e+03 -5.7348150e+01 3.7769575e+03 - -4.0282674e+03 -1.1474659e+02 3.7775430e+03 - -4.0243454e+03 -1.7224548e+02 3.7785165e+03 - -4.0188447e+03 -2.2989473e+02 3.7798748e+03 - -4.0117555e+03 -2.8774384e+02 3.7816132e+03 - -4.0030650e+03 -3.4584176e+02 3.7837255e+03 - -3.9927582e+03 -4.0423673e+02 3.7862044e+03 - -3.9808173e+03 -4.6297606e+02 3.7890406e+03 - -3.9672222e+03 -5.2210598e+02 3.7922238e+03 - -3.9519506e+03 -5.8167135e+02 3.7957418e+03 - -3.9349780e+03 -6.4171540e+02 3.7995807e+03 - -3.9162783e+03 -7.0227944e+02 3.8037251e+03 - -3.8958238e+03 -7.6340254e+02 3.8081577e+03 - -3.8735855e+03 -8.2512112e+02 3.8128592e+03 - -3.8495336e+03 -8.8746853e+02 3.8178086e+03 - -3.8236380e+03 -9.5047464e+02 3.8229829e+03 - -3.7958683e+03 -1.0141653e+03 3.8283570e+03 - -3.7661948e+03 -1.0785619e+03 3.8339038e+03 - -3.7345892e+03 -1.1436805e+03 3.8395942e+03 - -3.7010246e+03 -1.2095318e+03 3.8453970e+03 - -3.6654768e+03 -1.2761199e+03 3.8512792e+03 - -3.6279247e+03 -1.3434422e+03 3.8572056e+03 - -3.5883513e+03 -1.4114883e+03 3.8631397e+03 - -3.5467446e+03 -1.4802400e+03 3.8690430e+03 - -3.5030981e+03 -1.5496701e+03 3.8748758e+03 - -3.4574120e+03 -1.6197424e+03 3.8805973e+03 - -3.4096939e+03 -1.6904110e+03 3.8861659e+03 - -3.3599596e+03 -1.7616202e+03 3.8915396e+03 - -3.3082339e+03 -1.8333040e+03 3.8966763e+03 - -3.2545513e+03 -1.9053866e+03 3.9015346e+03 - -3.1989563e+03 -1.9777820e+03 3.9060738e+03 - -3.1415040e+03 -2.0503946e+03 3.9102550e+03 - -3.0822602e+03 -2.1231198e+03 3.9140413e+03 - -3.0213016e+03 -2.1958444e+03 3.9173984e+03 - -2.9587151e+03 -2.2684481e+03 3.9202953e+03 - -2.8945980e+03 -2.3408040e+03 3.9227046e+03 - -2.8290566e+03 -2.4127805e+03 3.9246033e+03 - -2.7622062e+03 -2.4842424e+03 3.9259730e+03 - -2.6941689e+03 -2.5550525e+03 3.9268003e+03 - -2.6250734e+03 -2.6250734e+03 3.9270769e+03 - -2.5550525e+03 -2.6941689e+03 3.9268003e+03 - -2.4842424e+03 -2.7622062e+03 3.9259730e+03 - -2.4127805e+03 -2.8290566e+03 3.9246033e+03 - -2.3408040e+03 -2.8945980e+03 3.9227046e+03 - -2.2684481e+03 -2.9587151e+03 3.9202953e+03 - -2.1958444e+03 -3.0213016e+03 3.9173984e+03 - -2.1231198e+03 -3.0822602e+03 3.9140413e+03 - -2.0503946e+03 -3.1415040e+03 3.9102550e+03 - -1.9777820e+03 -3.1989563e+03 3.9060738e+03 - -1.9053866e+03 -3.2545513e+03 3.9015346e+03 - -1.8333040e+03 -3.3082339e+03 3.8966763e+03 - -1.7616202e+03 -3.3599596e+03 3.8915396e+03 - -1.6904110e+03 -3.4096939e+03 3.8861659e+03 - -1.6197424e+03 -3.4574120e+03 3.8805973e+03 - -1.5496701e+03 -3.5030981e+03 3.8748758e+03 - -1.4802400e+03 -3.5467446e+03 3.8690430e+03 - -1.4114883e+03 -3.5883513e+03 3.8631397e+03 - -1.3434422e+03 -3.6279247e+03 3.8572056e+03 - -1.2761199e+03 -3.6654768e+03 3.8512792e+03 - -1.2095318e+03 -3.7010246e+03 3.8453970e+03 - -1.1436805e+03 -3.7345892e+03 3.8395942e+03 - -1.0785619e+03 -3.7661948e+03 3.8339038e+03 - -1.0141653e+03 -3.7958683e+03 3.8283570e+03 - -9.5047464e+02 -3.8236380e+03 3.8229829e+03 - -8.8746853e+02 -3.8495336e+03 3.8178086e+03 - -8.2512112e+02 -3.8735855e+03 3.8128592e+03 - -7.6340254e+02 -3.8958238e+03 3.8081577e+03 - -7.0227944e+02 -3.9162783e+03 3.8037251e+03 - -6.4171540e+02 -3.9349780e+03 3.7995807e+03 - -5.8167135e+02 -3.9519506e+03 3.7957418e+03 - -5.2210598e+02 -3.9672222e+03 3.7922238e+03 - -4.6297606e+02 -3.9808173e+03 3.7890406e+03 - -4.0423673e+02 -3.9927582e+03 3.7862044e+03 - -3.4584176e+02 -4.0030650e+03 3.7837255e+03 - -2.8774384e+02 -4.0117555e+03 3.7816132e+03 - -2.2989473e+02 -4.0188447e+03 3.7798748e+03 - -1.7224548e+02 -4.0243454e+03 3.7785165e+03 - -1.1474659e+02 -4.0282674e+03 3.7775430e+03 - -5.7348150e+01 -4.0306177e+03 3.7769575e+03 - 0.0000000e+00 -4.0314007e+03 3.7767622e+03 - 5.7348150e+01 -4.0306177e+03 3.7769575e+03 - 1.1474659e+02 -4.0282674e+03 3.7775430e+03 - 1.7224548e+02 -4.0243454e+03 3.7785165e+03 - 2.2989473e+02 -4.0188447e+03 3.7798748e+03 - 2.8774384e+02 -4.0117555e+03 3.7816132e+03 - 3.4584176e+02 -4.0030650e+03 3.7837255e+03 - 4.0423673e+02 -3.9927582e+03 3.7862044e+03 - 4.6297606e+02 -3.9808173e+03 3.7890406e+03 - 5.2210598e+02 -3.9672222e+03 3.7922238e+03 - 5.8167135e+02 -3.9519506e+03 3.7957418e+03 - 6.4171540e+02 -3.9349780e+03 3.7995807e+03 - 7.0227944e+02 -3.9162783e+03 3.8037251e+03 - 7.6340254e+02 -3.8958238e+03 3.8081577e+03 - 8.2512112e+02 -3.8735855e+03 3.8128592e+03 - 8.8746853e+02 -3.8495336e+03 3.8178086e+03 - 9.5047464e+02 -3.8236380e+03 3.8229829e+03 - 1.0141653e+03 -3.7958683e+03 3.8283570e+03 - 1.0785619e+03 -3.7661948e+03 3.8339038e+03 - 1.1436805e+03 -3.7345892e+03 3.8395942e+03 - 1.2095318e+03 -3.7010246e+03 3.8453970e+03 - 1.2761199e+03 -3.6654768e+03 3.8512792e+03 - 1.3434422e+03 -3.6279247e+03 3.8572056e+03 - 1.4114883e+03 -3.5883513e+03 3.8631397e+03 - 1.4802400e+03 -3.5467446e+03 3.8690430e+03 - 1.5496701e+03 -3.5030981e+03 3.8748758e+03 - 1.6197424e+03 -3.4574120e+03 3.8805973e+03 - 1.6904110e+03 -3.4096939e+03 3.8861659e+03 - 1.7616202e+03 -3.3599596e+03 3.8915396e+03 - 1.8333040e+03 -3.3082339e+03 3.8966763e+03 - 1.9053866e+03 -3.2545513e+03 3.9015346e+03 - 1.9777820e+03 -3.1989563e+03 3.9060738e+03 - 2.0503946e+03 -3.1415040e+03 3.9102550e+03 - 2.1231198e+03 -3.0822602e+03 3.9140413e+03 - 2.1958444e+03 -3.0213016e+03 3.9173984e+03 - 2.2684481e+03 -2.9587151e+03 3.9202953e+03 - 2.3408040e+03 -2.8945980e+03 3.9227046e+03 - 2.4127805e+03 -2.8290566e+03 3.9246033e+03 - 2.4842424e+03 -2.7622062e+03 3.9259730e+03 - 2.5550525e+03 -2.6941689e+03 3.9268003e+03 - 2.6250734e+03 -2.6250734e+03 3.9270769e+03 - 2.6941689e+03 -2.5550525e+03 3.9268003e+03 - 2.7622062e+03 -2.4842424e+03 3.9259730e+03 - 2.8290566e+03 -2.4127805e+03 3.9246033e+03 - 2.8945980e+03 -2.3408040e+03 3.9227046e+03 - 2.9587151e+03 -2.2684481e+03 3.9202953e+03 - 3.0213016e+03 -2.1958444e+03 3.9173984e+03 - 3.0822602e+03 -2.1231198e+03 3.9140413e+03 - 3.1415040e+03 -2.0503946e+03 3.9102550e+03 - 3.1989563e+03 -1.9777820e+03 3.9060738e+03 - 3.2545513e+03 -1.9053866e+03 3.9015346e+03 - 3.3082339e+03 -1.8333040e+03 3.8966763e+03 - 3.3599596e+03 -1.7616202e+03 3.8915396e+03 - 3.4096939e+03 -1.6904110e+03 3.8861659e+03 - 3.4574120e+03 -1.6197424e+03 3.8805973e+03 - 3.5030981e+03 -1.5496701e+03 3.8748758e+03 - 3.5467446e+03 -1.4802400e+03 3.8690430e+03 - 3.5883513e+03 -1.4114883e+03 3.8631397e+03 - 3.6279247e+03 -1.3434422e+03 3.8572056e+03 - 3.6654768e+03 -1.2761199e+03 3.8512792e+03 - 3.7010246e+03 -1.2095318e+03 3.8453970e+03 - 3.7345892e+03 -1.1436805e+03 3.8395942e+03 - 3.7661948e+03 -1.0785619e+03 3.8339038e+03 - 3.7958683e+03 -1.0141653e+03 3.8283570e+03 - 3.8236380e+03 -9.5047464e+02 3.8229829e+03 - 3.8495336e+03 -8.8746853e+02 3.8178086e+03 - 3.8735855e+03 -8.2512112e+02 3.8128592e+03 - 3.8958238e+03 -7.6340254e+02 3.8081577e+03 - 3.9162783e+03 -7.0227944e+02 3.8037251e+03 - 3.9349780e+03 -6.4171540e+02 3.7995807e+03 - 3.9519506e+03 -5.8167135e+02 3.7957418e+03 - 3.9672222e+03 -5.2210598e+02 3.7922238e+03 - 3.9808173e+03 -4.6297606e+02 3.7890406e+03 - 3.9927582e+03 -4.0423673e+02 3.7862044e+03 - 4.0030650e+03 -3.4584176e+02 3.7837255e+03 - 4.0117555e+03 -2.8774384e+02 3.7816132e+03 - 4.0188447e+03 -2.2989473e+02 3.7798748e+03 - 4.0243454e+03 -1.7224548e+02 3.7785165e+03 - 4.0282674e+03 -1.1474659e+02 3.7775430e+03 - 4.0306177e+03 -5.7348150e+01 3.7769575e+03 - 4.0314007e+03 0.0000000e+00 3.7767622e+03 - 4.0788240e+03 0.0000000e+00 3.7337805e+03 - 4.0780387e+03 5.7391768e+01 3.7339855e+03 - 4.0756813e+03 1.1483619e+02 3.7345999e+03 - 4.0717471e+03 1.7238580e+02 3.7356215e+03 - 4.0662287e+03 2.3009290e+02 3.7370471e+03 - 4.0591156e+03 2.8800944e+02 3.7388719e+03 - 4.0503942e+03 3.4618685e+02 3.7410898e+03 - 4.0400483e+03 4.0467591e+02 3.7436931e+03 - 4.0280589e+03 4.6352657e+02 3.7466727e+03 - 4.0144045e+03 5.2278770e+02 3.7500180e+03 - 3.9990609e+03 5.8250695e+02 3.7537164e+03 - 3.9820020e+03 6.4273039e+02 3.7577541e+03 - 3.9631993e+03 7.0350224e+02 3.7621150e+03 - 3.9426229e+03 7.6486456e+02 3.7667815e+03 - 3.9202412e+03 8.2685681e+02 3.7717339e+03 - 3.8960217e+03 8.8951545e+02 3.7769503e+03 - 3.8699313e+03 9.5287344e+02 3.7824071e+03 - 3.8419365e+03 1.0169598e+03 3.7880782e+03 - 3.8120045e+03 1.0817988e+03 3.7939355e+03 - 3.7801032e+03 1.1474097e+03 3.7999486e+03 - 3.7462024e+03 1.2138059e+03 3.8060850e+03 - 3.7102744e+03 1.2809942e+03 3.8123098e+03 - 3.6722945e+03 1.3489744e+03 3.8185862e+03 - 3.6322423e+03 1.4177382e+03 3.8248755e+03 - 3.5901024e+03 1.4872689e+03 3.8311371e+03 - 3.5458651e+03 1.5575406e+03 3.8373286e+03 - 3.4995280e+03 1.6285178e+03 3.8434067e+03 - 3.4510962e+03 1.7001544e+03 3.8493269e+03 - 3.4005838e+03 1.7723940e+03 3.8550440e+03 - 3.3480141e+03 1.8451692e+03 3.8605130e+03 - 3.2934212e+03 1.9184016e+03 3.8656891e+03 - 3.2368498e+03 1.9920022e+03 3.8705285e+03 - 3.1783560e+03 2.0658711e+03 3.8749889e+03 - 3.1180078e+03 2.1398988e+03 3.8790303e+03 - 3.0558846e+03 2.2139664e+03 3.8826153e+03 - 2.9920774e+03 2.2879467e+03 3.8857103e+03 - 2.9266883e+03 2.3617059e+03 3.8882854e+03 - 2.8598296e+03 2.4351042e+03 3.8903154e+03 - 2.7916227e+03 2.5079982e+03 3.8917801e+03 - 2.7221975e+03 2.5802423e+03 3.8926649e+03 - 2.6516903e+03 2.6516903e+03 3.8929608e+03 - 2.5802423e+03 2.7221975e+03 3.8926649e+03 - 2.5079982e+03 2.7916227e+03 3.8917801e+03 - 2.4351042e+03 2.8598296e+03 3.8903154e+03 - 2.3617059e+03 2.9266883e+03 3.8882854e+03 - 2.2879467e+03 2.9920774e+03 3.8857103e+03 - 2.2139664e+03 3.0558846e+03 3.8826153e+03 - 2.1398988e+03 3.1180078e+03 3.8790303e+03 - 2.0658711e+03 3.1783560e+03 3.8749889e+03 - 1.9920022e+03 3.2368498e+03 3.8705285e+03 - 1.9184016e+03 3.2934212e+03 3.8656891e+03 - 1.8451692e+03 3.3480141e+03 3.8605130e+03 - 1.7723940e+03 3.4005838e+03 3.8550440e+03 - 1.7001544e+03 3.4510962e+03 3.8493269e+03 - 1.6285178e+03 3.4995280e+03 3.8434067e+03 - 1.5575406e+03 3.5458651e+03 3.8373286e+03 - 1.4872689e+03 3.5901024e+03 3.8311371e+03 - 1.4177382e+03 3.6322423e+03 3.8248755e+03 - 1.3489744e+03 3.6722945e+03 3.8185862e+03 - 1.2809942e+03 3.7102744e+03 3.8123098e+03 - 1.2138059e+03 3.7462024e+03 3.8060850e+03 - 1.1474097e+03 3.7801032e+03 3.7999486e+03 - 1.0817988e+03 3.8120045e+03 3.7939355e+03 - 1.0169598e+03 3.8419365e+03 3.7880782e+03 - 9.5287344e+02 3.8699313e+03 3.7824071e+03 - 8.8951545e+02 3.8960217e+03 3.7769503e+03 - 8.2685681e+02 3.9202412e+03 3.7717339e+03 - 7.6486456e+02 3.9426229e+03 3.7667815e+03 - 7.0350224e+02 3.9631993e+03 3.7621150e+03 - 6.4273039e+02 3.9820020e+03 3.7577541e+03 - 5.8250695e+02 3.9990609e+03 3.7537164e+03 - 5.2278770e+02 4.0144045e+03 3.7500180e+03 - 4.6352657e+02 4.0280589e+03 3.7466727e+03 - 4.0467591e+02 4.0400483e+03 3.7436931e+03 - 3.4618685e+02 4.0503942e+03 3.7410898e+03 - 2.8800944e+02 4.0591156e+03 3.7388719e+03 - 2.3009290e+02 4.0662287e+03 3.7370471e+03 - 1.7238580e+02 4.0717471e+03 3.7356215e+03 - 1.1483619e+02 4.0756813e+03 3.7345999e+03 - 5.7391768e+01 4.0780387e+03 3.7339855e+03 - 0.0000000e+00 4.0788240e+03 3.7337805e+03 - -5.7391768e+01 4.0780387e+03 3.7339855e+03 - -1.1483619e+02 4.0756813e+03 3.7345999e+03 - -1.7238580e+02 4.0717471e+03 3.7356215e+03 - -2.3009290e+02 4.0662287e+03 3.7370471e+03 - -2.8800944e+02 4.0591156e+03 3.7388719e+03 - -3.4618685e+02 4.0503942e+03 3.7410898e+03 - -4.0467591e+02 4.0400483e+03 3.7436931e+03 - -4.6352657e+02 4.0280589e+03 3.7466727e+03 - -5.2278770e+02 4.0144045e+03 3.7500180e+03 - -5.8250695e+02 3.9990609e+03 3.7537164e+03 - -6.4273039e+02 3.9820020e+03 3.7577541e+03 - -7.0350224e+02 3.9631993e+03 3.7621150e+03 - -7.6486456e+02 3.9426229e+03 3.7667815e+03 - -8.2685681e+02 3.9202412e+03 3.7717339e+03 - -8.8951545e+02 3.8960217e+03 3.7769503e+03 - -9.5287344e+02 3.8699313e+03 3.7824071e+03 - -1.0169598e+03 3.8419365e+03 3.7880782e+03 - -1.0817988e+03 3.8120045e+03 3.7939355e+03 - -1.1474097e+03 3.7801032e+03 3.7999486e+03 - -1.2138059e+03 3.7462024e+03 3.8060850e+03 - -1.2809942e+03 3.7102744e+03 3.8123098e+03 - -1.3489744e+03 3.6722945e+03 3.8185862e+03 - -1.4177382e+03 3.6322423e+03 3.8248755e+03 - -1.4872689e+03 3.5901024e+03 3.8311371e+03 - -1.5575406e+03 3.5458651e+03 3.8373286e+03 - -1.6285178e+03 3.4995280e+03 3.8434067e+03 - -1.7001544e+03 3.4510962e+03 3.8493269e+03 - -1.7723940e+03 3.4005838e+03 3.8550440e+03 - -1.8451692e+03 3.3480141e+03 3.8605130e+03 - -1.9184016e+03 3.2934212e+03 3.8656891e+03 - -1.9920022e+03 3.2368498e+03 3.8705285e+03 - -2.0658711e+03 3.1783560e+03 3.8749889e+03 - -2.1398988e+03 3.1180078e+03 3.8790303e+03 - -2.2139664e+03 3.0558846e+03 3.8826153e+03 - -2.2879467e+03 2.9920774e+03 3.8857103e+03 - -2.3617059e+03 2.9266883e+03 3.8882854e+03 - -2.4351042e+03 2.8598296e+03 3.8903154e+03 - -2.5079982e+03 2.7916227e+03 3.8917801e+03 - -2.5802423e+03 2.7221975e+03 3.8926649e+03 - -2.6516903e+03 2.6516903e+03 3.8929608e+03 - -2.7221975e+03 2.5802423e+03 3.8926649e+03 - -2.7916227e+03 2.5079982e+03 3.8917801e+03 - -2.8598296e+03 2.4351042e+03 3.8903154e+03 - -2.9266883e+03 2.3617059e+03 3.8882854e+03 - -2.9920774e+03 2.2879467e+03 3.8857103e+03 - -3.0558846e+03 2.2139664e+03 3.8826153e+03 - -3.1180078e+03 2.1398988e+03 3.8790303e+03 - -3.1783560e+03 2.0658711e+03 3.8749889e+03 - -3.2368498e+03 1.9920022e+03 3.8705285e+03 - -3.2934212e+03 1.9184016e+03 3.8656891e+03 - -3.3480141e+03 1.8451692e+03 3.8605130e+03 - -3.4005838e+03 1.7723940e+03 3.8550440e+03 - -3.4510962e+03 1.7001544e+03 3.8493269e+03 - -3.4995280e+03 1.6285178e+03 3.8434067e+03 - -3.5458651e+03 1.5575406e+03 3.8373286e+03 - -3.5901024e+03 1.4872689e+03 3.8311371e+03 - -3.6322423e+03 1.4177382e+03 3.8248755e+03 - -3.6722945e+03 1.3489744e+03 3.8185862e+03 - -3.7102744e+03 1.2809942e+03 3.8123098e+03 - -3.7462024e+03 1.2138059e+03 3.8060850e+03 - -3.7801032e+03 1.1474097e+03 3.7999486e+03 - -3.8120045e+03 1.0817988e+03 3.7939355e+03 - -3.8419365e+03 1.0169598e+03 3.7880782e+03 - -3.8699313e+03 9.5287344e+02 3.7824071e+03 - -3.8960217e+03 8.8951545e+02 3.7769503e+03 - -3.9202412e+03 8.2685681e+02 3.7717339e+03 - -3.9426229e+03 7.6486456e+02 3.7667815e+03 - -3.9631993e+03 7.0350224e+02 3.7621150e+03 - -3.9820020e+03 6.4273039e+02 3.7577541e+03 - -3.9990609e+03 5.8250695e+02 3.7537164e+03 - -4.0144045e+03 5.2278770e+02 3.7500180e+03 - -4.0280589e+03 4.6352657e+02 3.7466727e+03 - -4.0400483e+03 4.0467591e+02 3.7436931e+03 - -4.0503942e+03 3.4618685e+02 3.7410898e+03 - -4.0591156e+03 2.8800944e+02 3.7388719e+03 - -4.0662287e+03 2.3009290e+02 3.7370471e+03 - -4.0717471e+03 1.7238580e+02 3.7356215e+03 - -4.0756813e+03 1.1483619e+02 3.7345999e+03 - -4.0780387e+03 5.7391768e+01 3.7339855e+03 - -4.0788240e+03 0.0000000e+00 3.7337805e+03 - -4.0780387e+03 -5.7391768e+01 3.7339855e+03 - -4.0756813e+03 -1.1483619e+02 3.7345999e+03 - -4.0717471e+03 -1.7238580e+02 3.7356215e+03 - -4.0662287e+03 -2.3009290e+02 3.7370471e+03 - -4.0591156e+03 -2.8800944e+02 3.7388719e+03 - -4.0503942e+03 -3.4618685e+02 3.7410898e+03 - -4.0400483e+03 -4.0467591e+02 3.7436931e+03 - -4.0280589e+03 -4.6352657e+02 3.7466727e+03 - -4.0144045e+03 -5.2278770e+02 3.7500180e+03 - -3.9990609e+03 -5.8250695e+02 3.7537164e+03 - -3.9820020e+03 -6.4273039e+02 3.7577541e+03 - -3.9631993e+03 -7.0350224e+02 3.7621150e+03 - -3.9426229e+03 -7.6486456e+02 3.7667815e+03 - -3.9202412e+03 -8.2685681e+02 3.7717339e+03 - -3.8960217e+03 -8.8951545e+02 3.7769503e+03 - -3.8699313e+03 -9.5287344e+02 3.7824071e+03 - -3.8419365e+03 -1.0169598e+03 3.7880782e+03 - -3.8120045e+03 -1.0817988e+03 3.7939355e+03 - -3.7801032e+03 -1.1474097e+03 3.7999486e+03 - -3.7462024e+03 -1.2138059e+03 3.8060850e+03 - -3.7102744e+03 -1.2809942e+03 3.8123098e+03 - -3.6722945e+03 -1.3489744e+03 3.8185862e+03 - -3.6322423e+03 -1.4177382e+03 3.8248755e+03 - -3.5901024e+03 -1.4872689e+03 3.8311371e+03 - -3.5458651e+03 -1.5575406e+03 3.8373286e+03 - -3.4995280e+03 -1.6285178e+03 3.8434067e+03 - -3.4510962e+03 -1.7001544e+03 3.8493269e+03 - -3.4005838e+03 -1.7723940e+03 3.8550440e+03 - -3.3480141e+03 -1.8451692e+03 3.8605130e+03 - -3.2934212e+03 -1.9184016e+03 3.8656891e+03 - -3.2368498e+03 -1.9920022e+03 3.8705285e+03 - -3.1783560e+03 -2.0658711e+03 3.8749889e+03 - -3.1180078e+03 -2.1398988e+03 3.8790303e+03 - -3.0558846e+03 -2.2139664e+03 3.8826153e+03 - -2.9920774e+03 -2.2879467e+03 3.8857103e+03 - -2.9266883e+03 -2.3617059e+03 3.8882854e+03 - -2.8598296e+03 -2.4351042e+03 3.8903154e+03 - -2.7916227e+03 -2.5079982e+03 3.8917801e+03 - -2.7221975e+03 -2.5802423e+03 3.8926649e+03 - -2.6516903e+03 -2.6516903e+03 3.8929608e+03 - -2.5802423e+03 -2.7221975e+03 3.8926649e+03 - -2.5079982e+03 -2.7916227e+03 3.8917801e+03 - -2.4351042e+03 -2.8598296e+03 3.8903154e+03 - -2.3617059e+03 -2.9266883e+03 3.8882854e+03 - -2.2879467e+03 -2.9920774e+03 3.8857103e+03 - -2.2139664e+03 -3.0558846e+03 3.8826153e+03 - -2.1398988e+03 -3.1180078e+03 3.8790303e+03 - -2.0658711e+03 -3.1783560e+03 3.8749889e+03 - -1.9920022e+03 -3.2368498e+03 3.8705285e+03 - -1.9184016e+03 -3.2934212e+03 3.8656891e+03 - -1.8451692e+03 -3.3480141e+03 3.8605130e+03 - -1.7723940e+03 -3.4005838e+03 3.8550440e+03 - -1.7001544e+03 -3.4510962e+03 3.8493269e+03 - -1.6285178e+03 -3.4995280e+03 3.8434067e+03 - -1.5575406e+03 -3.5458651e+03 3.8373286e+03 - -1.4872689e+03 -3.5901024e+03 3.8311371e+03 - -1.4177382e+03 -3.6322423e+03 3.8248755e+03 - -1.3489744e+03 -3.6722945e+03 3.8185862e+03 - -1.2809942e+03 -3.7102744e+03 3.8123098e+03 - -1.2138059e+03 -3.7462024e+03 3.8060850e+03 - -1.1474097e+03 -3.7801032e+03 3.7999486e+03 - -1.0817988e+03 -3.8120045e+03 3.7939355e+03 - -1.0169598e+03 -3.8419365e+03 3.7880782e+03 - -9.5287344e+02 -3.8699313e+03 3.7824071e+03 - -8.8951545e+02 -3.8960217e+03 3.7769503e+03 - -8.2685681e+02 -3.9202412e+03 3.7717339e+03 - -7.6486456e+02 -3.9426229e+03 3.7667815e+03 - -7.0350224e+02 -3.9631993e+03 3.7621150e+03 - -6.4273039e+02 -3.9820020e+03 3.7577541e+03 - -5.8250695e+02 -3.9990609e+03 3.7537164e+03 - -5.2278770e+02 -4.0144045e+03 3.7500180e+03 - -4.6352657e+02 -4.0280589e+03 3.7466727e+03 - -4.0467591e+02 -4.0400483e+03 3.7436931e+03 - -3.4618685e+02 -4.0503942e+03 3.7410898e+03 - -2.8800944e+02 -4.0591156e+03 3.7388719e+03 - -2.3009290e+02 -4.0662287e+03 3.7370471e+03 - -1.7238580e+02 -4.0717471e+03 3.7356215e+03 - -1.1483619e+02 -4.0756813e+03 3.7345999e+03 - -5.7391768e+01 -4.0780387e+03 3.7339855e+03 - -4.8134273e-09 -4.0788240e+03 3.7337805e+03 - 5.7391768e+01 -4.0780387e+03 3.7339855e+03 - 1.1483619e+02 -4.0756813e+03 3.7345999e+03 - 1.7238580e+02 -4.0717471e+03 3.7356215e+03 - 2.3009290e+02 -4.0662287e+03 3.7370471e+03 - 2.8800944e+02 -4.0591156e+03 3.7388719e+03 - 3.4618685e+02 -4.0503942e+03 3.7410898e+03 - 4.0467591e+02 -4.0400483e+03 3.7436931e+03 - 4.6352657e+02 -4.0280589e+03 3.7466727e+03 - 5.2278770e+02 -4.0144045e+03 3.7500180e+03 - 5.8250695e+02 -3.9990609e+03 3.7537164e+03 - 6.4273039e+02 -3.9820020e+03 3.7577541e+03 - 7.0350224e+02 -3.9631993e+03 3.7621150e+03 - 7.6486456e+02 -3.9426229e+03 3.7667815e+03 - 8.2685681e+02 -3.9202412e+03 3.7717339e+03 - 8.8951545e+02 -3.8960217e+03 3.7769503e+03 - 9.5287344e+02 -3.8699313e+03 3.7824071e+03 - 1.0169598e+03 -3.8419365e+03 3.7880782e+03 - 1.0817988e+03 -3.8120045e+03 3.7939355e+03 - 1.1474097e+03 -3.7801032e+03 3.7999486e+03 - 1.2138059e+03 -3.7462024e+03 3.8060850e+03 - 1.2809942e+03 -3.7102744e+03 3.8123098e+03 - 1.3489744e+03 -3.6722945e+03 3.8185862e+03 - 1.4177382e+03 -3.6322423e+03 3.8248755e+03 - 1.4872689e+03 -3.5901024e+03 3.8311371e+03 - 1.5575406e+03 -3.5458651e+03 3.8373286e+03 - 1.6285178e+03 -3.4995280e+03 3.8434067e+03 - 1.7001544e+03 -3.4510962e+03 3.8493269e+03 - 1.7723940e+03 -3.4005838e+03 3.8550440e+03 - 1.8451692e+03 -3.3480141e+03 3.8605130e+03 - 1.9184016e+03 -3.2934212e+03 3.8656891e+03 - 1.9920022e+03 -3.2368498e+03 3.8705285e+03 - 2.0658711e+03 -3.1783560e+03 3.8749889e+03 - 2.1398988e+03 -3.1180078e+03 3.8790303e+03 - 2.2139664e+03 -3.0558846e+03 3.8826153e+03 - 2.2879467e+03 -2.9920774e+03 3.8857103e+03 - 2.3617059e+03 -2.9266883e+03 3.8882854e+03 - 2.4351042e+03 -2.8598296e+03 3.8903154e+03 - 2.5079982e+03 -2.7916227e+03 3.8917801e+03 - 2.5802423e+03 -2.7221975e+03 3.8926649e+03 - 2.6516903e+03 -2.6516903e+03 3.8929608e+03 - 2.7221975e+03 -2.5802423e+03 3.8926649e+03 - 2.7916227e+03 -2.5079982e+03 3.8917801e+03 - 2.8598296e+03 -2.4351042e+03 3.8903154e+03 - 2.9266883e+03 -2.3617059e+03 3.8882854e+03 - 2.9920774e+03 -2.2879467e+03 3.8857103e+03 - 3.0558846e+03 -2.2139664e+03 3.8826153e+03 - 3.1180078e+03 -2.1398988e+03 3.8790303e+03 - 3.1783560e+03 -2.0658711e+03 3.8749889e+03 - 3.2368498e+03 -1.9920022e+03 3.8705285e+03 - 3.2934212e+03 -1.9184016e+03 3.8656891e+03 - 3.3480141e+03 -1.8451692e+03 3.8605130e+03 - 3.4005838e+03 -1.7723940e+03 3.8550440e+03 - 3.4510962e+03 -1.7001544e+03 3.8493269e+03 - 3.4995280e+03 -1.6285178e+03 3.8434067e+03 - 3.5458651e+03 -1.5575406e+03 3.8373286e+03 - 3.5901024e+03 -1.4872689e+03 3.8311371e+03 - 3.6322423e+03 -1.4177382e+03 3.8248755e+03 - 3.6722945e+03 -1.3489744e+03 3.8185862e+03 - 3.7102744e+03 -1.2809942e+03 3.8123098e+03 - 3.7462024e+03 -1.2138059e+03 3.8060850e+03 - 3.7801032e+03 -1.1474097e+03 3.7999486e+03 - 3.8120045e+03 -1.0817988e+03 3.7939355e+03 - 3.8419365e+03 -1.0169598e+03 3.7880782e+03 - 3.8699313e+03 -9.5287344e+02 3.7824071e+03 - 3.8960217e+03 -8.8951545e+02 3.7769503e+03 - 3.9202412e+03 -8.2685681e+02 3.7717339e+03 - 3.9426229e+03 -7.6486456e+02 3.7667815e+03 - 3.9631993e+03 -7.0350224e+02 3.7621150e+03 - 3.9820020e+03 -6.4273039e+02 3.7577541e+03 - 3.9990609e+03 -5.8250695e+02 3.7537164e+03 - 4.0144045e+03 -5.2278770e+02 3.7500180e+03 - 4.0280589e+03 -4.6352657e+02 3.7466727e+03 - 4.0400483e+03 -4.0467591e+02 3.7436931e+03 - 4.0503942e+03 -3.4618685e+02 3.7410898e+03 - 4.0591156e+03 -2.8800944e+02 3.7388719e+03 - 4.0662287e+03 -2.3009290e+02 3.7370471e+03 - 4.0717471e+03 -1.7238580e+02 3.7356215e+03 - 4.0756813e+03 -1.1483619e+02 3.7345999e+03 - 4.0780387e+03 -5.7391768e+01 3.7339855e+03 - 4.0788240e+03 0.0000000e+00 3.7337805e+03 - 4.1253245e+03 0.0000000e+00 3.6899416e+03 - 4.1245374e+03 5.7413041e+01 3.6901564e+03 - 4.1221745e+03 1.1488104e+02 3.6907999e+03 - 4.1182310e+03 1.7245886e+02 3.6918702e+03 - 4.1126989e+03 2.3020114e+02 3.6933638e+03 - 4.1055668e+03 2.8816223e+02 3.6952762e+03 - 4.0968207e+03 3.4639600e+02 3.6976009e+03 - 4.0864430e+03 4.0495574e+02 3.7003303e+03 - 4.0744135e+03 4.6389397e+02 3.7034552e+03 - 4.0607092e+03 5.2326226e+02 3.7069648e+03 - 4.0453043e+03 5.8311100e+02 3.7108465e+03 - 4.0281706e+03 6.4348911e+02 3.7150860e+03 - 4.0092777e+03 7.0444376e+02 3.7196670e+03 - 3.9885931e+03 7.6602004e+02 3.7245716e+03 - 3.9660828e+03 8.2826051e+02 3.7297795e+03 - 3.9417114e+03 8.9120480e+02 3.7352683e+03 - 3.9154426e+03 9.5488910e+02 3.7410135e+03 - 3.8872399e+03 1.0193456e+03 3.7469883e+03 - 3.8570669e+03 1.0846019e+03 3.7531635e+03 - 3.8248882e+03 1.1506803e+03 3.7595074e+03 - 3.7906697e+03 1.2175973e+03 3.7659861e+03 - 3.7543801e+03 1.2853625e+03 3.7725632e+03 - 3.7159909e+03 1.3539783e+03 3.7792000e+03 - 3.6754780e+03 1.4234388e+03 3.7858555e+03 - 3.6328224e+03 1.4937291e+03 3.7924870e+03 - 3.5880111e+03 1.5648247e+03 3.7990495e+03 - 3.5410387e+03 1.6366909e+03 3.8054969e+03 - 3.4919075e+03 1.7092820e+03 3.8117817e+03 - 3.4406295e+03 1.7825407e+03 3.8178556e+03 - 3.3872268e+03 1.8563985e+03 3.8236702e+03 - 3.3317324e+03 1.9307746e+03 3.8291774e+03 - 3.2741911e+03 2.0055767e+03 3.8343297e+03 - 3.2146602e+03 2.0807009e+03 3.8390816e+03 - 3.1532095e+03 2.1560326e+03 3.8433896e+03 - 3.0899214e+03 2.2314468e+03 3.8472132e+03 - 3.0248909e+03 2.3068097e+03 3.8505157e+03 - 2.9582250e+03 2.3819795e+03 3.8532645e+03 - 2.8900422e+03 2.4568087e+03 3.8554321e+03 - 2.8204708e+03 2.5311448e+03 3.8569965e+03 - 2.7496482e+03 2.6048333e+03 3.8579417e+03 - 2.6777190e+03 2.6777190e+03 3.8582578e+03 - 2.6048333e+03 2.7496482e+03 3.8579417e+03 - 2.5311448e+03 2.8204708e+03 3.8569965e+03 - 2.4568087e+03 2.8900422e+03 3.8554321e+03 - 2.3819795e+03 2.9582250e+03 3.8532645e+03 - 2.3068097e+03 3.0248909e+03 3.8505157e+03 - 2.2314468e+03 3.0899214e+03 3.8472132e+03 - 2.1560326e+03 3.1532095e+03 3.8433896e+03 - 2.0807009e+03 3.2146602e+03 3.8390816e+03 - 2.0055767e+03 3.2741911e+03 3.8343297e+03 - 1.9307746e+03 3.3317324e+03 3.8291774e+03 - 1.8563985e+03 3.3872268e+03 3.8236702e+03 - 1.7825407e+03 3.4406295e+03 3.8178556e+03 - 1.7092820e+03 3.4919075e+03 3.8117817e+03 - 1.6366909e+03 3.5410387e+03 3.8054969e+03 - 1.5648247e+03 3.5880111e+03 3.7990495e+03 - 1.4937291e+03 3.6328224e+03 3.7924870e+03 - 1.4234388e+03 3.6754780e+03 3.7858555e+03 - 1.3539783e+03 3.7159909e+03 3.7792000e+03 - 1.2853625e+03 3.7543801e+03 3.7725632e+03 - 1.2175973e+03 3.7906697e+03 3.7659861e+03 - 1.1506803e+03 3.8248882e+03 3.7595074e+03 - 1.0846019e+03 3.8570669e+03 3.7531635e+03 - 1.0193456e+03 3.8872399e+03 3.7469883e+03 - 9.5488910e+02 3.9154426e+03 3.7410135e+03 - 8.9120480e+02 3.9417114e+03 3.7352683e+03 - 8.2826051e+02 3.9660828e+03 3.7297795e+03 - 7.6602004e+02 3.9885931e+03 3.7245716e+03 - 7.0444376e+02 4.0092777e+03 3.7196670e+03 - 6.4348911e+02 4.0281706e+03 3.7150860e+03 - 5.8311100e+02 4.0453043e+03 3.7108465e+03 - 5.2326226e+02 4.0607092e+03 3.7069648e+03 - 4.6389397e+02 4.0744135e+03 3.7034552e+03 - 4.0495574e+02 4.0864430e+03 3.7003303e+03 - 3.4639600e+02 4.0968207e+03 3.6976009e+03 - 2.8816223e+02 4.1055668e+03 3.6952762e+03 - 2.3020114e+02 4.1126989e+03 3.6933638e+03 - 1.7245886e+02 4.1182310e+03 3.6918702e+03 - 1.1488104e+02 4.1221745e+03 3.6907999e+03 - 5.7413041e+01 4.1245374e+03 3.6901564e+03 - 0.0000000e+00 4.1253245e+03 3.6899416e+03 - -5.7413041e+01 4.1245374e+03 3.6901564e+03 - -1.1488104e+02 4.1221745e+03 3.6907999e+03 - -1.7245886e+02 4.1182310e+03 3.6918702e+03 - -2.3020114e+02 4.1126989e+03 3.6933638e+03 - -2.8816223e+02 4.1055668e+03 3.6952762e+03 - -3.4639600e+02 4.0968207e+03 3.6976009e+03 - -4.0495574e+02 4.0864430e+03 3.7003303e+03 - -4.6389397e+02 4.0744135e+03 3.7034552e+03 - -5.2326226e+02 4.0607092e+03 3.7069648e+03 - -5.8311100e+02 4.0453043e+03 3.7108465e+03 - -6.4348911e+02 4.0281706e+03 3.7150860e+03 - -7.0444376e+02 4.0092777e+03 3.7196670e+03 - -7.6602004e+02 3.9885931e+03 3.7245716e+03 - -8.2826051e+02 3.9660828e+03 3.7297795e+03 - -8.9120480e+02 3.9417114e+03 3.7352683e+03 - -9.5488910e+02 3.9154426e+03 3.7410135e+03 - -1.0193456e+03 3.8872399e+03 3.7469883e+03 - -1.0846019e+03 3.8570669e+03 3.7531635e+03 - -1.1506803e+03 3.8248882e+03 3.7595074e+03 - -1.2175973e+03 3.7906697e+03 3.7659861e+03 - -1.2853625e+03 3.7543801e+03 3.7725632e+03 - -1.3539783e+03 3.7159909e+03 3.7792000e+03 - -1.4234388e+03 3.6754780e+03 3.7858555e+03 - -1.4937291e+03 3.6328224e+03 3.7924870e+03 - -1.5648247e+03 3.5880111e+03 3.7990495e+03 - -1.6366909e+03 3.5410387e+03 3.8054969e+03 - -1.7092820e+03 3.4919075e+03 3.8117817e+03 - -1.7825407e+03 3.4406295e+03 3.8178556e+03 - -1.8563985e+03 3.3872268e+03 3.8236702e+03 - -1.9307746e+03 3.3317324e+03 3.8291774e+03 - -2.0055767e+03 3.2741911e+03 3.8343297e+03 - -2.0807009e+03 3.2146602e+03 3.8390816e+03 - -2.1560326e+03 3.1532095e+03 3.8433896e+03 - -2.2314468e+03 3.0899214e+03 3.8472132e+03 - -2.3068097e+03 3.0248909e+03 3.8505157e+03 - -2.3819795e+03 2.9582250e+03 3.8532645e+03 - -2.4568087e+03 2.8900422e+03 3.8554321e+03 - -2.5311448e+03 2.8204708e+03 3.8569965e+03 - -2.6048333e+03 2.7496482e+03 3.8579417e+03 - -2.6777190e+03 2.6777190e+03 3.8582578e+03 - -2.7496482e+03 2.6048333e+03 3.8579417e+03 - -2.8204708e+03 2.5311448e+03 3.8569965e+03 - -2.8900422e+03 2.4568087e+03 3.8554321e+03 - -2.9582250e+03 2.3819795e+03 3.8532645e+03 - -3.0248909e+03 2.3068097e+03 3.8505157e+03 - -3.0899214e+03 2.2314468e+03 3.8472132e+03 - -3.1532095e+03 2.1560326e+03 3.8433896e+03 - -3.2146602e+03 2.0807009e+03 3.8390816e+03 - -3.2741911e+03 2.0055767e+03 3.8343297e+03 - -3.3317324e+03 1.9307746e+03 3.8291774e+03 - -3.3872268e+03 1.8563985e+03 3.8236702e+03 - -3.4406295e+03 1.7825407e+03 3.8178556e+03 - -3.4919075e+03 1.7092820e+03 3.8117817e+03 - -3.5410387e+03 1.6366909e+03 3.8054969e+03 - -3.5880111e+03 1.5648247e+03 3.7990495e+03 - -3.6328224e+03 1.4937291e+03 3.7924870e+03 - -3.6754780e+03 1.4234388e+03 3.7858555e+03 - -3.7159909e+03 1.3539783e+03 3.7792000e+03 - -3.7543801e+03 1.2853625e+03 3.7725632e+03 - -3.7906697e+03 1.2175973e+03 3.7659861e+03 - -3.8248882e+03 1.1506803e+03 3.7595074e+03 - -3.8570669e+03 1.0846019e+03 3.7531635e+03 - -3.8872399e+03 1.0193456e+03 3.7469883e+03 - -3.9154426e+03 9.5488910e+02 3.7410135e+03 - -3.9417114e+03 8.9120480e+02 3.7352683e+03 - -3.9660828e+03 8.2826051e+02 3.7297795e+03 - -3.9885931e+03 7.6602004e+02 3.7245716e+03 - -4.0092777e+03 7.0444376e+02 3.7196670e+03 - -4.0281706e+03 6.4348911e+02 3.7150860e+03 - -4.0453043e+03 5.8311100e+02 3.7108465e+03 - -4.0607092e+03 5.2326226e+02 3.7069648e+03 - -4.0744135e+03 4.6389397e+02 3.7034552e+03 - -4.0864430e+03 4.0495574e+02 3.7003303e+03 - -4.0968207e+03 3.4639600e+02 3.6976009e+03 - -4.1055668e+03 2.8816223e+02 3.6952762e+03 - -4.1126989e+03 2.3020114e+02 3.6933638e+03 - -4.1182310e+03 1.7245886e+02 3.6918702e+03 - -4.1221745e+03 1.1488104e+02 3.6907999e+03 - -4.1245374e+03 5.7413041e+01 3.6901564e+03 - -4.1253245e+03 0.0000000e+00 3.6899416e+03 - -4.1245374e+03 -5.7413041e+01 3.6901564e+03 - -4.1221745e+03 -1.1488104e+02 3.6907999e+03 - -4.1182310e+03 -1.7245886e+02 3.6918702e+03 - -4.1126989e+03 -2.3020114e+02 3.6933638e+03 - -4.1055668e+03 -2.8816223e+02 3.6952762e+03 - -4.0968207e+03 -3.4639600e+02 3.6976009e+03 - -4.0864430e+03 -4.0495574e+02 3.7003303e+03 - -4.0744135e+03 -4.6389397e+02 3.7034552e+03 - -4.0607092e+03 -5.2326226e+02 3.7069648e+03 - -4.0453043e+03 -5.8311100e+02 3.7108465e+03 - -4.0281706e+03 -6.4348911e+02 3.7150860e+03 - -4.0092777e+03 -7.0444376e+02 3.7196670e+03 - -3.9885931e+03 -7.6602004e+02 3.7245716e+03 - -3.9660828e+03 -8.2826051e+02 3.7297795e+03 - -3.9417114e+03 -8.9120480e+02 3.7352683e+03 - -3.9154426e+03 -9.5488910e+02 3.7410135e+03 - -3.8872399e+03 -1.0193456e+03 3.7469883e+03 - -3.8570669e+03 -1.0846019e+03 3.7531635e+03 - -3.8248882e+03 -1.1506803e+03 3.7595074e+03 - -3.7906697e+03 -1.2175973e+03 3.7659861e+03 - -3.7543801e+03 -1.2853625e+03 3.7725632e+03 - -3.7159909e+03 -1.3539783e+03 3.7792000e+03 - -3.6754780e+03 -1.4234388e+03 3.7858555e+03 - -3.6328224e+03 -1.4937291e+03 3.7924870e+03 - -3.5880111e+03 -1.5648247e+03 3.7990495e+03 - -3.5410387e+03 -1.6366909e+03 3.8054969e+03 - -3.4919075e+03 -1.7092820e+03 3.8117817e+03 - -3.4406295e+03 -1.7825407e+03 3.8178556e+03 - -3.3872268e+03 -1.8563985e+03 3.8236702e+03 - -3.3317324e+03 -1.9307746e+03 3.8291774e+03 - -3.2741911e+03 -2.0055767e+03 3.8343297e+03 - -3.2146602e+03 -2.0807009e+03 3.8390816e+03 - -3.1532095e+03 -2.1560326e+03 3.8433896e+03 - -3.0899214e+03 -2.2314468e+03 3.8472132e+03 - -3.0248909e+03 -2.3068097e+03 3.8505157e+03 - -2.9582250e+03 -2.3819795e+03 3.8532645e+03 - -2.8900422e+03 -2.4568087e+03 3.8554321e+03 - -2.8204708e+03 -2.5311448e+03 3.8569965e+03 - -2.7496482e+03 -2.6048333e+03 3.8579417e+03 - -2.6777190e+03 -2.6777190e+03 3.8582578e+03 - -2.6048333e+03 -2.7496482e+03 3.8579417e+03 - -2.5311448e+03 -2.8204708e+03 3.8569965e+03 - -2.4568087e+03 -2.8900422e+03 3.8554321e+03 - -2.3819795e+03 -2.9582250e+03 3.8532645e+03 - -2.3068097e+03 -3.0248909e+03 3.8505157e+03 - -2.2314468e+03 -3.0899214e+03 3.8472132e+03 - -2.1560326e+03 -3.1532095e+03 3.8433896e+03 - -2.0807009e+03 -3.2146602e+03 3.8390816e+03 - -2.0055767e+03 -3.2741911e+03 3.8343297e+03 - -1.9307746e+03 -3.3317324e+03 3.8291774e+03 - -1.8563985e+03 -3.3872268e+03 3.8236702e+03 - -1.7825407e+03 -3.4406295e+03 3.8178556e+03 - -1.7092820e+03 -3.4919075e+03 3.8117817e+03 - -1.6366909e+03 -3.5410387e+03 3.8054969e+03 - -1.5648247e+03 -3.5880111e+03 3.7990495e+03 - -1.4937291e+03 -3.6328224e+03 3.7924870e+03 - -1.4234388e+03 -3.6754780e+03 3.7858555e+03 - -1.3539783e+03 -3.7159909e+03 3.7792000e+03 - -1.2853625e+03 -3.7543801e+03 3.7725632e+03 - -1.2175973e+03 -3.7906697e+03 3.7659861e+03 - -1.1506803e+03 -3.8248882e+03 3.7595074e+03 - -1.0846019e+03 -3.8570669e+03 3.7531635e+03 - -1.0193456e+03 -3.8872399e+03 3.7469883e+03 - -9.5488910e+02 -3.9154426e+03 3.7410135e+03 - -8.9120480e+02 -3.9417114e+03 3.7352683e+03 - -8.2826051e+02 -3.9660828e+03 3.7297795e+03 - -7.6602004e+02 -3.9885931e+03 3.7245716e+03 - -7.0444376e+02 -4.0092777e+03 3.7196670e+03 - -6.4348911e+02 -4.0281706e+03 3.7150860e+03 - -5.8311100e+02 -4.0453043e+03 3.7108465e+03 - -5.2326226e+02 -4.0607092e+03 3.7069648e+03 - -4.6389397e+02 -4.0744135e+03 3.7034552e+03 - -4.0495574e+02 -4.0864430e+03 3.7003303e+03 - -3.4639600e+02 -4.0968207e+03 3.6976009e+03 - -2.8816223e+02 -4.1055668e+03 3.6952762e+03 - -2.3020114e+02 -4.1126989e+03 3.6933638e+03 - -1.7245886e+02 -4.1182310e+03 3.6918702e+03 - -1.1488104e+02 -4.1221745e+03 3.6907999e+03 - -5.7413041e+01 -4.1245374e+03 3.6901564e+03 - 0.0000000e+00 -4.1253245e+03 3.6899416e+03 - 5.7413041e+01 -4.1245374e+03 3.6901564e+03 - 1.1488104e+02 -4.1221745e+03 3.6907999e+03 - 1.7245886e+02 -4.1182310e+03 3.6918702e+03 - 2.3020114e+02 -4.1126989e+03 3.6933638e+03 - 2.8816223e+02 -4.1055668e+03 3.6952762e+03 - 3.4639600e+02 -4.0968207e+03 3.6976009e+03 - 4.0495574e+02 -4.0864430e+03 3.7003303e+03 - 4.6389397e+02 -4.0744135e+03 3.7034552e+03 - 5.2326226e+02 -4.0607092e+03 3.7069648e+03 - 5.8311100e+02 -4.0453043e+03 3.7108465e+03 - 6.4348911e+02 -4.0281706e+03 3.7150860e+03 - 7.0444376e+02 -4.0092777e+03 3.7196670e+03 - 7.6602004e+02 -3.9885931e+03 3.7245716e+03 - 8.2826051e+02 -3.9660828e+03 3.7297795e+03 - 8.9120480e+02 -3.9417114e+03 3.7352683e+03 - 9.5488910e+02 -3.9154426e+03 3.7410135e+03 - 1.0193456e+03 -3.8872399e+03 3.7469883e+03 - 1.0846019e+03 -3.8570669e+03 3.7531635e+03 - 1.1506803e+03 -3.8248882e+03 3.7595074e+03 - 1.2175973e+03 -3.7906697e+03 3.7659861e+03 - 1.2853625e+03 -3.7543801e+03 3.7725632e+03 - 1.3539783e+03 -3.7159909e+03 3.7792000e+03 - 1.4234388e+03 -3.6754780e+03 3.7858555e+03 - 1.4937291e+03 -3.6328224e+03 3.7924870e+03 - 1.5648247e+03 -3.5880111e+03 3.7990495e+03 - 1.6366909e+03 -3.5410387e+03 3.8054969e+03 - 1.7092820e+03 -3.4919075e+03 3.8117817e+03 - 1.7825407e+03 -3.4406295e+03 3.8178556e+03 - 1.8563985e+03 -3.3872268e+03 3.8236702e+03 - 1.9307746e+03 -3.3317324e+03 3.8291774e+03 - 2.0055767e+03 -3.2741911e+03 3.8343297e+03 - 2.0807009e+03 -3.2146602e+03 3.8390816e+03 - 2.1560326e+03 -3.1532095e+03 3.8433896e+03 - 2.2314468e+03 -3.0899214e+03 3.8472132e+03 - 2.3068097e+03 -3.0248909e+03 3.8505157e+03 - 2.3819795e+03 -2.9582250e+03 3.8532645e+03 - 2.4568087e+03 -2.8900422e+03 3.8554321e+03 - 2.5311448e+03 -2.8204708e+03 3.8569965e+03 - 2.6048333e+03 -2.7496482e+03 3.8579417e+03 - 2.6777190e+03 -2.6777190e+03 3.8582578e+03 - 2.7496482e+03 -2.6048333e+03 3.8579417e+03 - 2.8204708e+03 -2.5311448e+03 3.8569965e+03 - 2.8900422e+03 -2.4568087e+03 3.8554321e+03 - 2.9582250e+03 -2.3819795e+03 3.8532645e+03 - 3.0248909e+03 -2.3068097e+03 3.8505157e+03 - 3.0899214e+03 -2.2314468e+03 3.8472132e+03 - 3.1532095e+03 -2.1560326e+03 3.8433896e+03 - 3.2146602e+03 -2.0807009e+03 3.8390816e+03 - 3.2741911e+03 -2.0055767e+03 3.8343297e+03 - 3.3317324e+03 -1.9307746e+03 3.8291774e+03 - 3.3872268e+03 -1.8563985e+03 3.8236702e+03 - 3.4406295e+03 -1.7825407e+03 3.8178556e+03 - 3.4919075e+03 -1.7092820e+03 3.8117817e+03 - 3.5410387e+03 -1.6366909e+03 3.8054969e+03 - 3.5880111e+03 -1.5648247e+03 3.7990495e+03 - 3.6328224e+03 -1.4937291e+03 3.7924870e+03 - 3.6754780e+03 -1.4234388e+03 3.7858555e+03 - 3.7159909e+03 -1.3539783e+03 3.7792000e+03 - 3.7543801e+03 -1.2853625e+03 3.7725632e+03 - 3.7906697e+03 -1.2175973e+03 3.7659861e+03 - 3.8248882e+03 -1.1506803e+03 3.7595074e+03 - 3.8570669e+03 -1.0846019e+03 3.7531635e+03 - 3.8872399e+03 -1.0193456e+03 3.7469883e+03 - 3.9154426e+03 -9.5488910e+02 3.7410135e+03 - 3.9417114e+03 -8.9120480e+02 3.7352683e+03 - 3.9660828e+03 -8.2826051e+02 3.7297795e+03 - 3.9885931e+03 -7.6602004e+02 3.7245716e+03 - 4.0092777e+03 -7.0444376e+02 3.7196670e+03 - 4.0281706e+03 -6.4348911e+02 3.7150860e+03 - 4.0453043e+03 -5.8311100e+02 3.7108465e+03 - 4.0607092e+03 -5.2326226e+02 3.7069648e+03 - 4.0744135e+03 -4.6389397e+02 3.7034552e+03 - 4.0864430e+03 -4.0495574e+02 3.7003303e+03 - 4.0968207e+03 -3.4639600e+02 3.6976009e+03 - 4.1055668e+03 -2.8816223e+02 3.6952762e+03 - 4.1126989e+03 -2.3020114e+02 3.6933638e+03 - 4.1182310e+03 -1.7245886e+02 3.6918702e+03 - 4.1221745e+03 -1.1488104e+02 3.6907999e+03 - 4.1245374e+03 -5.7413041e+01 3.6901564e+03 - 4.1253245e+03 0.0000000e+00 3.6899416e+03 - 4.1709689e+03 -4.8134273e-09 3.6451846e+03 - 4.1701805e+03 5.7413279e+01 3.6454092e+03 - 4.1678139e+03 1.1488377e+02 3.6460822e+03 - 4.1638637e+03 1.7246858e+02 3.6472016e+03 - 4.1583216e+03 2.3022467e+02 3.6487641e+03 - 4.1511757e+03 2.8820870e+02 3.6507649e+03 - 4.1424107e+03 3.4647696e+02 3.6531977e+03 - 4.1320083e+03 4.0508521e+02 3.6560547e+03 - 4.1199470e+03 4.6408852e+02 3.6593268e+03 - 4.1062021e+03 5.2354112e+02 3.6630029e+03 - 4.0907463e+03 5.8349613e+02 3.6670704e+03 - 4.0735494e+03 6.4400534e+02 3.6715147e+03 - 4.0545788e+03 7.0511890e+02 3.6763194e+03 - 4.0337996e+03 7.6688495e+02 3.6814661e+03 - 4.0111751e+03 8.2934922e+02 3.6869341e+03 - 3.9866671e+03 8.9255461e+02 3.6927005e+03 - 3.9602362e+03 9.5654060e+02 3.6987400e+03 - 3.9318425e+03 1.0213428e+03 3.7050251e+03 - 3.9014462e+03 1.0869920e+03 3.7115255e+03 - 3.8690080e+03 1.1535140e+03 3.7182083e+03 - 3.8344903e+03 1.2209284e+03 3.7250382e+03 - 3.7978575e+03 1.2892480e+03 3.7319773e+03 - 3.7590773e+03 1.3584779e+03 3.7389848e+03 - 3.7181217e+03 1.4286148e+03 3.7460179e+03 - 3.6749678e+03 1.4996459e+03 3.7530312e+03 - 3.6295992e+03 1.5715485e+03 3.7599773e+03 - 3.5820068e+03 1.6442888e+03 3.7668070e+03 - 3.5321903e+03 1.7178215e+03 3.7734699e+03 - 3.4801591e+03 1.7920892e+03 3.7799144e+03 - 3.4259337e+03 1.8670217e+03 3.7860884e+03 - 3.3695461e+03 1.9425364e+03 3.7919403e+03 - 3.3110410e+03 2.0185377e+03 3.7974191e+03 - 3.2504764e+03 2.0949176e+03 3.8024753e+03 - 3.1879241e+03 2.1715562e+03 3.8070620e+03 - 3.1234695e+03 2.2483224e+03 3.8111352e+03 - 3.0572117e+03 2.3250753e+03 3.8146550e+03 - 2.9892630e+03 2.4016652e+03 3.8175858e+03 - 2.9197478e+03 2.4779360e+03 3.8198978e+03 - 2.8488019e+03 2.5537261e+03 3.8215668e+03 - 2.7765707e+03 2.6288716e+03 3.8225753e+03 - 2.7032075e+03 2.7032075e+03 3.8229127e+03 - 2.6288716e+03 2.7765707e+03 3.8225753e+03 - 2.5537261e+03 2.8488019e+03 3.8215668e+03 - 2.4779360e+03 2.9197478e+03 3.8198978e+03 - 2.4016652e+03 2.9892630e+03 3.8175858e+03 - 2.3250753e+03 3.0572117e+03 3.8146550e+03 - 2.2483224e+03 3.1234695e+03 3.8111352e+03 - 2.1715562e+03 3.1879241e+03 3.8070620e+03 - 2.0949176e+03 3.2504764e+03 3.8024753e+03 - 2.0185377e+03 3.3110410e+03 3.7974191e+03 - 1.9425364e+03 3.3695461e+03 3.7919403e+03 - 1.8670217e+03 3.4259337e+03 3.7860884e+03 - 1.7920892e+03 3.4801591e+03 3.7799144e+03 - 1.7178215e+03 3.5321903e+03 3.7734699e+03 - 1.6442888e+03 3.5820068e+03 3.7668070e+03 - 1.5715485e+03 3.6295992e+03 3.7599773e+03 - 1.4996459e+03 3.6749678e+03 3.7530312e+03 - 1.4286148e+03 3.7181217e+03 3.7460179e+03 - 1.3584779e+03 3.7590773e+03 3.7389848e+03 - 1.2892480e+03 3.7978575e+03 3.7319773e+03 - 1.2209284e+03 3.8344903e+03 3.7250382e+03 - 1.1535140e+03 3.8690080e+03 3.7182083e+03 - 1.0869920e+03 3.9014462e+03 3.7115255e+03 - 1.0213428e+03 3.9318425e+03 3.7050251e+03 - 9.5654060e+02 3.9602362e+03 3.6987400e+03 - 8.9255461e+02 3.9866671e+03 3.6927005e+03 - 8.2934922e+02 4.0111751e+03 3.6869341e+03 - 7.6688495e+02 4.0337996e+03 3.6814661e+03 - 7.0511890e+02 4.0545788e+03 3.6763194e+03 - 6.4400534e+02 4.0735494e+03 3.6715147e+03 - 5.8349613e+02 4.0907463e+03 3.6670704e+03 - 5.2354112e+02 4.1062021e+03 3.6630029e+03 - 4.6408852e+02 4.1199470e+03 3.6593268e+03 - 4.0508521e+02 4.1320083e+03 3.6560547e+03 - 3.4647696e+02 4.1424107e+03 3.6531977e+03 - 2.8820870e+02 4.1511757e+03 3.6507649e+03 - 2.3022467e+02 4.1583216e+03 3.6487641e+03 - 1.7246858e+02 4.1638637e+03 3.6472016e+03 - 1.1488377e+02 4.1678139e+03 3.6460822e+03 - 5.7413279e+01 4.1701805e+03 3.6454092e+03 - -4.8134273e-09 4.1709689e+03 3.6451846e+03 - -5.7413279e+01 4.1701805e+03 3.6454092e+03 - -1.1488377e+02 4.1678139e+03 3.6460822e+03 - -1.7246858e+02 4.1638637e+03 3.6472016e+03 - -2.3022467e+02 4.1583216e+03 3.6487641e+03 - -2.8820870e+02 4.1511757e+03 3.6507649e+03 - -3.4647696e+02 4.1424107e+03 3.6531977e+03 - -4.0508521e+02 4.1320083e+03 3.6560547e+03 - -4.6408852e+02 4.1199470e+03 3.6593268e+03 - -5.2354112e+02 4.1062021e+03 3.6630029e+03 - -5.8349613e+02 4.0907463e+03 3.6670704e+03 - -6.4400534e+02 4.0735494e+03 3.6715147e+03 - -7.0511890e+02 4.0545788e+03 3.6763194e+03 - -7.6688495e+02 4.0337996e+03 3.6814661e+03 - -8.2934922e+02 4.0111751e+03 3.6869341e+03 - -8.9255461e+02 3.9866671e+03 3.6927005e+03 - -9.5654060e+02 3.9602362e+03 3.6987400e+03 - -1.0213428e+03 3.9318425e+03 3.7050251e+03 - -1.0869920e+03 3.9014462e+03 3.7115255e+03 - -1.1535140e+03 3.8690080e+03 3.7182083e+03 - -1.2209284e+03 3.8344903e+03 3.7250382e+03 - -1.2892480e+03 3.7978575e+03 3.7319773e+03 - -1.3584779e+03 3.7590773e+03 3.7389848e+03 - -1.4286148e+03 3.7181217e+03 3.7460179e+03 - -1.4996459e+03 3.6749678e+03 3.7530312e+03 - -1.5715485e+03 3.6295992e+03 3.7599773e+03 - -1.6442888e+03 3.5820068e+03 3.7668070e+03 - -1.7178215e+03 3.5321903e+03 3.7734699e+03 - -1.7920892e+03 3.4801591e+03 3.7799144e+03 - -1.8670217e+03 3.4259337e+03 3.7860884e+03 - -1.9425364e+03 3.3695461e+03 3.7919403e+03 - -2.0185377e+03 3.3110410e+03 3.7974191e+03 - -2.0949176e+03 3.2504764e+03 3.8024753e+03 - -2.1715562e+03 3.1879241e+03 3.8070620e+03 - -2.2483224e+03 3.1234695e+03 3.8111352e+03 - -2.3250753e+03 3.0572117e+03 3.8146550e+03 - -2.4016652e+03 2.9892630e+03 3.8175858e+03 - -2.4779360e+03 2.9197478e+03 3.8198978e+03 - -2.5537261e+03 2.8488019e+03 3.8215668e+03 - -2.6288716e+03 2.7765707e+03 3.8225753e+03 - -2.7032075e+03 2.7032075e+03 3.8229127e+03 - -2.7765707e+03 2.6288716e+03 3.8225753e+03 - -2.8488019e+03 2.5537261e+03 3.8215668e+03 - -2.9197478e+03 2.4779360e+03 3.8198978e+03 - -2.9892630e+03 2.4016652e+03 3.8175858e+03 - -3.0572117e+03 2.3250753e+03 3.8146550e+03 - -3.1234695e+03 2.2483224e+03 3.8111352e+03 - -3.1879241e+03 2.1715562e+03 3.8070620e+03 - -3.2504764e+03 2.0949176e+03 3.8024753e+03 - -3.3110410e+03 2.0185377e+03 3.7974191e+03 - -3.3695461e+03 1.9425364e+03 3.7919403e+03 - -3.4259337e+03 1.8670217e+03 3.7860884e+03 - -3.4801591e+03 1.7920892e+03 3.7799144e+03 - -3.5321903e+03 1.7178215e+03 3.7734699e+03 - -3.5820068e+03 1.6442888e+03 3.7668070e+03 - -3.6295992e+03 1.5715485e+03 3.7599773e+03 - -3.6749678e+03 1.4996459e+03 3.7530312e+03 - -3.7181217e+03 1.4286148e+03 3.7460179e+03 - -3.7590773e+03 1.3584779e+03 3.7389848e+03 - -3.7978575e+03 1.2892480e+03 3.7319773e+03 - -3.8344903e+03 1.2209284e+03 3.7250382e+03 - -3.8690080e+03 1.1535140e+03 3.7182083e+03 - -3.9014462e+03 1.0869920e+03 3.7115255e+03 - -3.9318425e+03 1.0213428e+03 3.7050251e+03 - -3.9602362e+03 9.5654060e+02 3.6987400e+03 - -3.9866671e+03 8.9255461e+02 3.6927005e+03 - -4.0111751e+03 8.2934922e+02 3.6869341e+03 - -4.0337996e+03 7.6688495e+02 3.6814661e+03 - -4.0545788e+03 7.0511890e+02 3.6763194e+03 - -4.0735494e+03 6.4400534e+02 3.6715147e+03 - -4.0907463e+03 5.8349613e+02 3.6670704e+03 - -4.1062021e+03 5.2354112e+02 3.6630029e+03 - -4.1199470e+03 4.6408852e+02 3.6593268e+03 - -4.1320083e+03 4.0508521e+02 3.6560547e+03 - -4.1424107e+03 3.4647696e+02 3.6531977e+03 - -4.1511757e+03 2.8820870e+02 3.6507649e+03 - -4.1583216e+03 2.3022467e+02 3.6487641e+03 - -4.1638637e+03 1.7246858e+02 3.6472016e+03 - -4.1678139e+03 1.1488377e+02 3.6460822e+03 - -4.1701805e+03 5.7413279e+01 3.6454092e+03 - -4.1709689e+03 0.0000000e+00 3.6451846e+03 - -4.1701805e+03 -5.7413279e+01 3.6454092e+03 - -4.1678139e+03 -1.1488377e+02 3.6460822e+03 - -4.1638637e+03 -1.7246858e+02 3.6472016e+03 - -4.1583216e+03 -2.3022467e+02 3.6487641e+03 - -4.1511757e+03 -2.8820870e+02 3.6507649e+03 - -4.1424107e+03 -3.4647696e+02 3.6531977e+03 - -4.1320083e+03 -4.0508521e+02 3.6560547e+03 - -4.1199470e+03 -4.6408852e+02 3.6593268e+03 - -4.1062021e+03 -5.2354112e+02 3.6630029e+03 - -4.0907463e+03 -5.8349613e+02 3.6670704e+03 - -4.0735494e+03 -6.4400534e+02 3.6715147e+03 - -4.0545788e+03 -7.0511890e+02 3.6763194e+03 - -4.0337996e+03 -7.6688495e+02 3.6814661e+03 - -4.0111751e+03 -8.2934922e+02 3.6869341e+03 - -3.9866671e+03 -8.9255461e+02 3.6927005e+03 - -3.9602362e+03 -9.5654060e+02 3.6987400e+03 - -3.9318425e+03 -1.0213428e+03 3.7050251e+03 - -3.9014462e+03 -1.0869920e+03 3.7115255e+03 - -3.8690080e+03 -1.1535140e+03 3.7182083e+03 - -3.8344903e+03 -1.2209284e+03 3.7250382e+03 - -3.7978575e+03 -1.2892480e+03 3.7319773e+03 - -3.7590773e+03 -1.3584779e+03 3.7389848e+03 - -3.7181217e+03 -1.4286148e+03 3.7460179e+03 - -3.6749678e+03 -1.4996459e+03 3.7530312e+03 - -3.6295992e+03 -1.5715485e+03 3.7599773e+03 - -3.5820068e+03 -1.6442888e+03 3.7668070e+03 - -3.5321903e+03 -1.7178215e+03 3.7734699e+03 - -3.4801591e+03 -1.7920892e+03 3.7799144e+03 - -3.4259337e+03 -1.8670217e+03 3.7860884e+03 - -3.3695461e+03 -1.9425364e+03 3.7919403e+03 - -3.3110410e+03 -2.0185377e+03 3.7974191e+03 - -3.2504764e+03 -2.0949176e+03 3.8024753e+03 - -3.1879241e+03 -2.1715562e+03 3.8070620e+03 - -3.1234695e+03 -2.2483224e+03 3.8111352e+03 - -3.0572117e+03 -2.3250753e+03 3.8146550e+03 - -2.9892630e+03 -2.4016652e+03 3.8175858e+03 - -2.9197478e+03 -2.4779360e+03 3.8198978e+03 - -2.8488019e+03 -2.5537261e+03 3.8215668e+03 - -2.7765707e+03 -2.6288716e+03 3.8225753e+03 - -2.7032075e+03 -2.7032075e+03 3.8229127e+03 - -2.6288716e+03 -2.7765707e+03 3.8225753e+03 - -2.5537261e+03 -2.8488019e+03 3.8215668e+03 - -2.4779360e+03 -2.9197478e+03 3.8198978e+03 - -2.4016652e+03 -2.9892630e+03 3.8175858e+03 - -2.3250753e+03 -3.0572117e+03 3.8146550e+03 - -2.2483224e+03 -3.1234695e+03 3.8111352e+03 - -2.1715562e+03 -3.1879241e+03 3.8070620e+03 - -2.0949176e+03 -3.2504764e+03 3.8024753e+03 - -2.0185377e+03 -3.3110410e+03 3.7974191e+03 - -1.9425364e+03 -3.3695461e+03 3.7919403e+03 - -1.8670217e+03 -3.4259337e+03 3.7860884e+03 - -1.7920892e+03 -3.4801591e+03 3.7799144e+03 - -1.7178215e+03 -3.5321903e+03 3.7734699e+03 - -1.6442888e+03 -3.5820068e+03 3.7668070e+03 - -1.5715485e+03 -3.6295992e+03 3.7599773e+03 - -1.4996459e+03 -3.6749678e+03 3.7530312e+03 - -1.4286148e+03 -3.7181217e+03 3.7460179e+03 - -1.3584779e+03 -3.7590773e+03 3.7389848e+03 - -1.2892480e+03 -3.7978575e+03 3.7319773e+03 - -1.2209284e+03 -3.8344903e+03 3.7250382e+03 - -1.1535140e+03 -3.8690080e+03 3.7182083e+03 - -1.0869920e+03 -3.9014462e+03 3.7115255e+03 - -1.0213428e+03 -3.9318425e+03 3.7050251e+03 - -9.5654060e+02 -3.9602362e+03 3.6987400e+03 - -8.9255461e+02 -3.9866671e+03 3.6927005e+03 - -8.2934922e+02 -4.0111751e+03 3.6869341e+03 - -7.6688495e+02 -4.0337996e+03 3.6814661e+03 - -7.0511890e+02 -4.0545788e+03 3.6763194e+03 - -6.4400534e+02 -4.0735494e+03 3.6715147e+03 - -5.8349613e+02 -4.0907463e+03 3.6670704e+03 - -5.2354112e+02 -4.1062021e+03 3.6630029e+03 - -4.6408852e+02 -4.1199470e+03 3.6593268e+03 - -4.0508521e+02 -4.1320083e+03 3.6560547e+03 - -3.4647696e+02 -4.1424107e+03 3.6531977e+03 - -2.8820870e+02 -4.1511757e+03 3.6507649e+03 - -2.3022467e+02 -4.1583216e+03 3.6487641e+03 - -1.7246858e+02 -4.1638637e+03 3.6472016e+03 - -1.1488377e+02 -4.1678139e+03 3.6460822e+03 - -5.7413279e+01 -4.1701805e+03 3.6454092e+03 - 0.0000000e+00 -4.1709689e+03 3.6451846e+03 - 5.7413279e+01 -4.1701805e+03 3.6454092e+03 - 1.1488377e+02 -4.1678139e+03 3.6460822e+03 - 1.7246858e+02 -4.1638637e+03 3.6472016e+03 - 2.3022467e+02 -4.1583216e+03 3.6487641e+03 - 2.8820870e+02 -4.1511757e+03 3.6507649e+03 - 3.4647696e+02 -4.1424107e+03 3.6531977e+03 - 4.0508521e+02 -4.1320083e+03 3.6560547e+03 - 4.6408852e+02 -4.1199470e+03 3.6593268e+03 - 5.2354112e+02 -4.1062021e+03 3.6630029e+03 - 5.8349613e+02 -4.0907463e+03 3.6670704e+03 - 6.4400534e+02 -4.0735494e+03 3.6715147e+03 - 7.0511890e+02 -4.0545788e+03 3.6763194e+03 - 7.6688495e+02 -4.0337996e+03 3.6814661e+03 - 8.2934922e+02 -4.0111751e+03 3.6869341e+03 - 8.9255461e+02 -3.9866671e+03 3.6927005e+03 - 9.5654060e+02 -3.9602362e+03 3.6987400e+03 - 1.0213428e+03 -3.9318425e+03 3.7050251e+03 - 1.0869920e+03 -3.9014462e+03 3.7115255e+03 - 1.1535140e+03 -3.8690080e+03 3.7182083e+03 - 1.2209284e+03 -3.8344903e+03 3.7250382e+03 - 1.2892480e+03 -3.7978575e+03 3.7319773e+03 - 1.3584779e+03 -3.7590773e+03 3.7389848e+03 - 1.4286148e+03 -3.7181217e+03 3.7460179e+03 - 1.4996459e+03 -3.6749678e+03 3.7530312e+03 - 1.5715485e+03 -3.6295992e+03 3.7599773e+03 - 1.6442888e+03 -3.5820068e+03 3.7668070e+03 - 1.7178215e+03 -3.5321903e+03 3.7734699e+03 - 1.7920892e+03 -3.4801591e+03 3.7799144e+03 - 1.8670217e+03 -3.4259337e+03 3.7860884e+03 - 1.9425364e+03 -3.3695461e+03 3.7919403e+03 - 2.0185377e+03 -3.3110410e+03 3.7974191e+03 - 2.0949176e+03 -3.2504764e+03 3.8024753e+03 - 2.1715562e+03 -3.1879241e+03 3.8070620e+03 - 2.2483224e+03 -3.1234695e+03 3.8111352e+03 - 2.3250753e+03 -3.0572117e+03 3.8146550e+03 - 2.4016652e+03 -2.9892630e+03 3.8175858e+03 - 2.4779360e+03 -2.9197478e+03 3.8198978e+03 - 2.5537261e+03 -2.8488019e+03 3.8215668e+03 - 2.6288716e+03 -2.7765707e+03 3.8225753e+03 - 2.7032075e+03 -2.7032075e+03 3.8229127e+03 - 2.7765707e+03 -2.6288716e+03 3.8225753e+03 - 2.8488019e+03 -2.5537261e+03 3.8215668e+03 - 2.9197478e+03 -2.4779360e+03 3.8198978e+03 - 2.9892630e+03 -2.4016652e+03 3.8175858e+03 - 3.0572117e+03 -2.3250753e+03 3.8146550e+03 - 3.1234695e+03 -2.2483224e+03 3.8111352e+03 - 3.1879241e+03 -2.1715562e+03 3.8070620e+03 - 3.2504764e+03 -2.0949176e+03 3.8024753e+03 - 3.3110410e+03 -2.0185377e+03 3.7974191e+03 - 3.3695461e+03 -1.9425364e+03 3.7919403e+03 - 3.4259337e+03 -1.8670217e+03 3.7860884e+03 - 3.4801591e+03 -1.7920892e+03 3.7799144e+03 - 3.5321903e+03 -1.7178215e+03 3.7734699e+03 - 3.5820068e+03 -1.6442888e+03 3.7668070e+03 - 3.6295992e+03 -1.5715485e+03 3.7599773e+03 - 3.6749678e+03 -1.4996459e+03 3.7530312e+03 - 3.7181217e+03 -1.4286148e+03 3.7460179e+03 - 3.7590773e+03 -1.3584779e+03 3.7389848e+03 - 3.7978575e+03 -1.2892480e+03 3.7319773e+03 - 3.8344903e+03 -1.2209284e+03 3.7250382e+03 - 3.8690080e+03 -1.1535140e+03 3.7182083e+03 - 3.9014462e+03 -1.0869920e+03 3.7115255e+03 - 3.9318425e+03 -1.0213428e+03 3.7050251e+03 - 3.9602362e+03 -9.5654060e+02 3.6987400e+03 - 3.9866671e+03 -8.9255461e+02 3.6927005e+03 - 4.0111751e+03 -8.2934922e+02 3.6869341e+03 - 4.0337996e+03 -7.6688495e+02 3.6814661e+03 - 4.0545788e+03 -7.0511890e+02 3.6763194e+03 - 4.0735494e+03 -6.4400534e+02 3.6715147e+03 - 4.0907463e+03 -5.8349613e+02 3.6670704e+03 - 4.1062021e+03 -5.2354112e+02 3.6630029e+03 - 4.1199470e+03 -4.6408852e+02 3.6593268e+03 - 4.1320083e+03 -4.0508521e+02 3.6560547e+03 - 4.1424107e+03 -3.4647696e+02 3.6531977e+03 - 4.1511757e+03 -2.8820870e+02 3.6507649e+03 - 4.1583216e+03 -2.3022467e+02 3.6487641e+03 - 4.1638637e+03 -1.7246858e+02 3.6472016e+03 - 4.1678139e+03 -1.1488377e+02 3.6460822e+03 - 4.1701805e+03 -5.7413279e+01 3.6454092e+03 - 4.1709689e+03 4.8134273e-09 3.6451846e+03 - 4.2158184e+03 0.0000000e+00 3.5994453e+03 - 4.2150294e+03 5.7393666e+01 3.5996798e+03 - 4.2126605e+03 1.1484673e+02 3.6003825e+03 - 4.2087064e+03 1.7241850e+02 3.6015516e+03 - 4.2031581e+03 2.3016818e+02 3.6031836e+03 - 4.1960030e+03 2.8815472e+02 3.6052737e+03 - 4.1872252e+03 3.4643675e+02 3.6078157e+03 - 4.1768051e+03 4.0507247e+02 3.6108018e+03 - 4.1647200e+03 4.6411947e+02 3.6142227e+03 - 4.1509438e+03 5.2363460e+02 3.6180674e+03 - 4.1354474e+03 5.8367374e+02 3.6223231e+03 - 4.1181985e+03 6.4429153e+02 3.6269751e+03 - 4.0991625e+03 7.0554110e+02 3.6320068e+03 - 4.0783021e+03 7.6747370e+02 3.6373995e+03 - 4.0555778e+03 8.3013829e+02 3.6431320e+03 - 4.0309485e+03 8.9358109e+02 3.6491811e+03 - 4.0043716e+03 9.5784501e+02 3.6555208e+03 - 3.9758038e+03 1.0229691e+03 3.6621226e+03 - 3.9452017e+03 1.0889877e+03 3.6689554e+03 - 3.9125221e+03 1.1559301e+03 3.6759853e+03 - 3.8777233e+03 1.2238193e+03 3.6831754e+03 - 3.8407657e+03 1.2926714e+03 3.6904861e+03 - 3.8016129e+03 1.3624945e+03 3.6978750e+03 - 3.7602326e+03 1.4332882e+03 3.7052969e+03 - 3.7165979e+03 1.5050421e+03 3.7127042e+03 - 3.6706883e+03 1.5777354e+03 3.7200466e+03 - 3.6224913e+03 1.6513355e+03 3.7272722e+03 - 3.5720033e+03 1.7257980e+03 3.7343270e+03 - 3.5192311e+03 1.8010650e+03 3.7411562e+03 - 3.4641931e+03 1.8770655e+03 3.7477040e+03 - 3.4069200e+03 1.9537148e+03 3.7539149e+03 - 3.3474564e+03 2.0309141e+03 3.7597341e+03 - 3.2858610e+03 2.1085512e+03 3.7651081e+03 - 3.2222072e+03 2.1865011e+03 3.7699862e+03 - 3.1565835e+03 2.2646263e+03 3.7743206e+03 - 3.0890932e+03 2.3427784e+03 3.7780679e+03 - 3.0198539e+03 2.4207997e+03 3.7811896e+03 - 2.9489966e+03 2.4985248e+03 3.7836530e+03 - 2.8766645e+03 2.5757828e+03 3.7854318e+03 - 2.8030116e+03 2.6523996e+03 3.7865069e+03 - 2.7282003e+03 2.7282003e+03 3.7868666e+03 - 2.6523996e+03 2.8030116e+03 3.7865069e+03 - 2.5757828e+03 2.8766645e+03 3.7854318e+03 - 2.4985248e+03 2.9489966e+03 3.7836530e+03 - 2.4207997e+03 3.0198539e+03 3.7811896e+03 - 2.3427784e+03 3.0890932e+03 3.7780679e+03 - 2.2646263e+03 3.1565835e+03 3.7743206e+03 - 2.1865011e+03 3.2222072e+03 3.7699862e+03 - 2.1085512e+03 3.2858610e+03 3.7651081e+03 - 2.0309141e+03 3.3474564e+03 3.7597341e+03 - 1.9537148e+03 3.4069200e+03 3.7539149e+03 - 1.8770655e+03 3.4641931e+03 3.7477040e+03 - 1.8010650e+03 3.5192311e+03 3.7411562e+03 - 1.7257980e+03 3.5720033e+03 3.7343270e+03 - 1.6513355e+03 3.6224913e+03 3.7272722e+03 - 1.5777354e+03 3.6706883e+03 3.7200466e+03 - 1.5050421e+03 3.7165979e+03 3.7127042e+03 - 1.4332882e+03 3.7602326e+03 3.7052969e+03 - 1.3624945e+03 3.8016129e+03 3.6978750e+03 - 1.2926714e+03 3.8407657e+03 3.6904861e+03 - 1.2238193e+03 3.8777233e+03 3.6831754e+03 - 1.1559301e+03 3.9125221e+03 3.6759853e+03 - 1.0889877e+03 3.9452017e+03 3.6689554e+03 - 1.0229691e+03 3.9758038e+03 3.6621226e+03 - 9.5784501e+02 4.0043716e+03 3.6555208e+03 - 8.9358109e+02 4.0309485e+03 3.6491811e+03 - 8.3013829e+02 4.0555778e+03 3.6431320e+03 - 7.6747370e+02 4.0783021e+03 3.6373995e+03 - 7.0554110e+02 4.0991625e+03 3.6320068e+03 - 6.4429153e+02 4.1181985e+03 3.6269751e+03 - 5.8367374e+02 4.1354474e+03 3.6223231e+03 - 5.2363460e+02 4.1509438e+03 3.6180674e+03 - 4.6411947e+02 4.1647200e+03 3.6142227e+03 - 4.0507247e+02 4.1768051e+03 3.6108018e+03 - 3.4643675e+02 4.1872252e+03 3.6078157e+03 - 2.8815472e+02 4.1960030e+03 3.6052737e+03 - 2.3016818e+02 4.2031581e+03 3.6031836e+03 - 1.7241850e+02 4.2087064e+03 3.6015516e+03 - 1.1484673e+02 4.2126605e+03 3.6003825e+03 - 5.7393666e+01 4.2150294e+03 3.5996798e+03 - -4.8134273e-09 4.2158184e+03 3.5994453e+03 - -5.7393666e+01 4.2150294e+03 3.5996798e+03 - -1.1484673e+02 4.2126605e+03 3.6003825e+03 - -1.7241850e+02 4.2087064e+03 3.6015516e+03 - -2.3016818e+02 4.2031581e+03 3.6031836e+03 - -2.8815472e+02 4.1960030e+03 3.6052737e+03 - -3.4643675e+02 4.1872252e+03 3.6078157e+03 - -4.0507247e+02 4.1768051e+03 3.6108018e+03 - -4.6411947e+02 4.1647200e+03 3.6142227e+03 - -5.2363460e+02 4.1509438e+03 3.6180674e+03 - -5.8367374e+02 4.1354474e+03 3.6223231e+03 - -6.4429153e+02 4.1181985e+03 3.6269751e+03 - -7.0554110e+02 4.0991625e+03 3.6320068e+03 - -7.6747370e+02 4.0783021e+03 3.6373995e+03 - -8.3013829e+02 4.0555778e+03 3.6431320e+03 - -8.9358109e+02 4.0309485e+03 3.6491811e+03 - -9.5784501e+02 4.0043716e+03 3.6555208e+03 - -1.0229691e+03 3.9758038e+03 3.6621226e+03 - -1.0889877e+03 3.9452017e+03 3.6689554e+03 - -1.1559301e+03 3.9125221e+03 3.6759853e+03 - -1.2238193e+03 3.8777233e+03 3.6831754e+03 - -1.2926714e+03 3.8407657e+03 3.6904861e+03 - -1.3624945e+03 3.8016129e+03 3.6978750e+03 - -1.4332882e+03 3.7602326e+03 3.7052969e+03 - -1.5050421e+03 3.7165979e+03 3.7127042e+03 - -1.5777354e+03 3.6706883e+03 3.7200466e+03 - -1.6513355e+03 3.6224913e+03 3.7272722e+03 - -1.7257980e+03 3.5720033e+03 3.7343270e+03 - -1.8010650e+03 3.5192311e+03 3.7411562e+03 - -1.8770655e+03 3.4641931e+03 3.7477040e+03 - -1.9537148e+03 3.4069200e+03 3.7539149e+03 - -2.0309141e+03 3.3474564e+03 3.7597341e+03 - -2.1085512e+03 3.2858610e+03 3.7651081e+03 - -2.1865011e+03 3.2222072e+03 3.7699862e+03 - -2.2646263e+03 3.1565835e+03 3.7743206e+03 - -2.3427784e+03 3.0890932e+03 3.7780679e+03 - -2.4207997e+03 3.0198539e+03 3.7811896e+03 - -2.4985248e+03 2.9489966e+03 3.7836530e+03 - -2.5757828e+03 2.8766645e+03 3.7854318e+03 - -2.6523996e+03 2.8030116e+03 3.7865069e+03 - -2.7282003e+03 2.7282003e+03 3.7868666e+03 - -2.8030116e+03 2.6523996e+03 3.7865069e+03 - -2.8766645e+03 2.5757828e+03 3.7854318e+03 - -2.9489966e+03 2.4985248e+03 3.7836530e+03 - -3.0198539e+03 2.4207997e+03 3.7811896e+03 - -3.0890932e+03 2.3427784e+03 3.7780679e+03 - -3.1565835e+03 2.2646263e+03 3.7743206e+03 - -3.2222072e+03 2.1865011e+03 3.7699862e+03 - -3.2858610e+03 2.1085512e+03 3.7651081e+03 - -3.3474564e+03 2.0309141e+03 3.7597341e+03 - -3.4069200e+03 1.9537148e+03 3.7539149e+03 - -3.4641931e+03 1.8770655e+03 3.7477040e+03 - -3.5192311e+03 1.8010650e+03 3.7411562e+03 - -3.5720033e+03 1.7257980e+03 3.7343270e+03 - -3.6224913e+03 1.6513355e+03 3.7272722e+03 - -3.6706883e+03 1.5777354e+03 3.7200466e+03 - -3.7165979e+03 1.5050421e+03 3.7127042e+03 - -3.7602326e+03 1.4332882e+03 3.7052969e+03 - -3.8016129e+03 1.3624945e+03 3.6978750e+03 - -3.8407657e+03 1.2926714e+03 3.6904861e+03 - -3.8777233e+03 1.2238193e+03 3.6831754e+03 - -3.9125221e+03 1.1559301e+03 3.6759853e+03 - -3.9452017e+03 1.0889877e+03 3.6689554e+03 - -3.9758038e+03 1.0229691e+03 3.6621226e+03 - -4.0043716e+03 9.5784501e+02 3.6555208e+03 - -4.0309485e+03 8.9358109e+02 3.6491811e+03 - -4.0555778e+03 8.3013829e+02 3.6431320e+03 - -4.0783021e+03 7.6747370e+02 3.6373995e+03 - -4.0991625e+03 7.0554110e+02 3.6320068e+03 - -4.1181985e+03 6.4429153e+02 3.6269751e+03 - -4.1354474e+03 5.8367374e+02 3.6223231e+03 - -4.1509438e+03 5.2363460e+02 3.6180674e+03 - -4.1647200e+03 4.6411947e+02 3.6142227e+03 - -4.1768051e+03 4.0507247e+02 3.6108018e+03 - -4.1872252e+03 3.4643675e+02 3.6078157e+03 - -4.1960030e+03 2.8815472e+02 3.6052737e+03 - -4.2031581e+03 2.3016818e+02 3.6031836e+03 - -4.2087064e+03 1.7241850e+02 3.6015516e+03 - -4.2126605e+03 1.1484673e+02 3.6003825e+03 - -4.2150294e+03 5.7393666e+01 3.5996798e+03 - -4.2158184e+03 -4.8134273e-09 3.5994453e+03 - -4.2150294e+03 -5.7393666e+01 3.5996798e+03 - -4.2126605e+03 -1.1484673e+02 3.6003825e+03 - -4.2087064e+03 -1.7241850e+02 3.6015516e+03 - -4.2031581e+03 -2.3016818e+02 3.6031836e+03 - -4.1960030e+03 -2.8815472e+02 3.6052737e+03 - -4.1872252e+03 -3.4643675e+02 3.6078157e+03 - -4.1768051e+03 -4.0507247e+02 3.6108018e+03 - -4.1647200e+03 -4.6411947e+02 3.6142227e+03 - -4.1509438e+03 -5.2363460e+02 3.6180674e+03 - -4.1354474e+03 -5.8367374e+02 3.6223231e+03 - -4.1181985e+03 -6.4429153e+02 3.6269751e+03 - -4.0991625e+03 -7.0554110e+02 3.6320068e+03 - -4.0783021e+03 -7.6747370e+02 3.6373995e+03 - -4.0555778e+03 -8.3013829e+02 3.6431320e+03 - -4.0309485e+03 -8.9358109e+02 3.6491811e+03 - -4.0043716e+03 -9.5784501e+02 3.6555208e+03 - -3.9758038e+03 -1.0229691e+03 3.6621226e+03 - -3.9452017e+03 -1.0889877e+03 3.6689554e+03 - -3.9125221e+03 -1.1559301e+03 3.6759853e+03 - -3.8777233e+03 -1.2238193e+03 3.6831754e+03 - -3.8407657e+03 -1.2926714e+03 3.6904861e+03 - -3.8016129e+03 -1.3624945e+03 3.6978750e+03 - -3.7602326e+03 -1.4332882e+03 3.7052969e+03 - -3.7165979e+03 -1.5050421e+03 3.7127042e+03 - -3.6706883e+03 -1.5777354e+03 3.7200466e+03 - -3.6224913e+03 -1.6513355e+03 3.7272722e+03 - -3.5720033e+03 -1.7257980e+03 3.7343270e+03 - -3.5192311e+03 -1.8010650e+03 3.7411562e+03 - -3.4641931e+03 -1.8770655e+03 3.7477040e+03 - -3.4069200e+03 -1.9537148e+03 3.7539149e+03 - -3.3474564e+03 -2.0309141e+03 3.7597341e+03 - -3.2858610e+03 -2.1085512e+03 3.7651081e+03 - -3.2222072e+03 -2.1865011e+03 3.7699862e+03 - -3.1565835e+03 -2.2646263e+03 3.7743206e+03 - -3.0890932e+03 -2.3427784e+03 3.7780679e+03 - -3.0198539e+03 -2.4207997e+03 3.7811896e+03 - -2.9489966e+03 -2.4985248e+03 3.7836530e+03 - -2.8766645e+03 -2.5757828e+03 3.7854318e+03 - -2.8030116e+03 -2.6523996e+03 3.7865069e+03 - -2.7282003e+03 -2.7282003e+03 3.7868666e+03 - -2.6523996e+03 -2.8030116e+03 3.7865069e+03 - -2.5757828e+03 -2.8766645e+03 3.7854318e+03 - -2.4985248e+03 -2.9489966e+03 3.7836530e+03 - -2.4207997e+03 -3.0198539e+03 3.7811896e+03 - -2.3427784e+03 -3.0890932e+03 3.7780679e+03 - -2.2646263e+03 -3.1565835e+03 3.7743206e+03 - -2.1865011e+03 -3.2222072e+03 3.7699862e+03 - -2.1085512e+03 -3.2858610e+03 3.7651081e+03 - -2.0309141e+03 -3.3474564e+03 3.7597341e+03 - -1.9537148e+03 -3.4069200e+03 3.7539149e+03 - -1.8770655e+03 -3.4641931e+03 3.7477040e+03 - -1.8010650e+03 -3.5192311e+03 3.7411562e+03 - -1.7257980e+03 -3.5720033e+03 3.7343270e+03 - -1.6513355e+03 -3.6224913e+03 3.7272722e+03 - -1.5777354e+03 -3.6706883e+03 3.7200466e+03 - -1.5050421e+03 -3.7165979e+03 3.7127042e+03 - -1.4332882e+03 -3.7602326e+03 3.7052969e+03 - -1.3624945e+03 -3.8016129e+03 3.6978750e+03 - -1.2926714e+03 -3.8407657e+03 3.6904861e+03 - -1.2238193e+03 -3.8777233e+03 3.6831754e+03 - -1.1559301e+03 -3.9125221e+03 3.6759853e+03 - -1.0889877e+03 -3.9452017e+03 3.6689554e+03 - -1.0229691e+03 -3.9758038e+03 3.6621226e+03 - -9.5784501e+02 -4.0043716e+03 3.6555208e+03 - -8.9358109e+02 -4.0309485e+03 3.6491811e+03 - -8.3013829e+02 -4.0555778e+03 3.6431320e+03 - -7.6747370e+02 -4.0783021e+03 3.6373995e+03 - -7.0554110e+02 -4.0991625e+03 3.6320068e+03 - -6.4429153e+02 -4.1181985e+03 3.6269751e+03 - -5.8367374e+02 -4.1354474e+03 3.6223231e+03 - -5.2363460e+02 -4.1509438e+03 3.6180674e+03 - -4.6411947e+02 -4.1647200e+03 3.6142227e+03 - -4.0507247e+02 -4.1768051e+03 3.6108018e+03 - -3.4643675e+02 -4.1872252e+03 3.6078157e+03 - -2.8815472e+02 -4.1960030e+03 3.6052737e+03 - -2.3016818e+02 -4.2031581e+03 3.6031836e+03 - -1.7241850e+02 -4.2087064e+03 3.6015516e+03 - -1.1484673e+02 -4.2126605e+03 3.6003825e+03 - -5.7393666e+01 -4.2150294e+03 3.5996798e+03 - 4.8134273e-09 -4.2158184e+03 3.5994453e+03 - 5.7393666e+01 -4.2150294e+03 3.5996798e+03 - 1.1484673e+02 -4.2126605e+03 3.6003825e+03 - 1.7241850e+02 -4.2087064e+03 3.6015516e+03 - 2.3016818e+02 -4.2031581e+03 3.6031836e+03 - 2.8815472e+02 -4.1960030e+03 3.6052737e+03 - 3.4643675e+02 -4.1872252e+03 3.6078157e+03 - 4.0507247e+02 -4.1768051e+03 3.6108018e+03 - 4.6411947e+02 -4.1647200e+03 3.6142227e+03 - 5.2363460e+02 -4.1509438e+03 3.6180674e+03 - 5.8367374e+02 -4.1354474e+03 3.6223231e+03 - 6.4429153e+02 -4.1181985e+03 3.6269751e+03 - 7.0554110e+02 -4.0991625e+03 3.6320068e+03 - 7.6747370e+02 -4.0783021e+03 3.6373995e+03 - 8.3013829e+02 -4.0555778e+03 3.6431320e+03 - 8.9358109e+02 -4.0309485e+03 3.6491811e+03 - 9.5784501e+02 -4.0043716e+03 3.6555208e+03 - 1.0229691e+03 -3.9758038e+03 3.6621226e+03 - 1.0889877e+03 -3.9452017e+03 3.6689554e+03 - 1.1559301e+03 -3.9125221e+03 3.6759853e+03 - 1.2238193e+03 -3.8777233e+03 3.6831754e+03 - 1.2926714e+03 -3.8407657e+03 3.6904861e+03 - 1.3624945e+03 -3.8016129e+03 3.6978750e+03 - 1.4332882e+03 -3.7602326e+03 3.7052969e+03 - 1.5050421e+03 -3.7165979e+03 3.7127042e+03 - 1.5777354e+03 -3.6706883e+03 3.7200466e+03 - 1.6513355e+03 -3.6224913e+03 3.7272722e+03 - 1.7257980e+03 -3.5720033e+03 3.7343270e+03 - 1.8010650e+03 -3.5192311e+03 3.7411562e+03 - 1.8770655e+03 -3.4641931e+03 3.7477040e+03 - 1.9537148e+03 -3.4069200e+03 3.7539149e+03 - 2.0309141e+03 -3.3474564e+03 3.7597341e+03 - 2.1085512e+03 -3.2858610e+03 3.7651081e+03 - 2.1865011e+03 -3.2222072e+03 3.7699862e+03 - 2.2646263e+03 -3.1565835e+03 3.7743206e+03 - 2.3427784e+03 -3.0890932e+03 3.7780679e+03 - 2.4207997e+03 -3.0198539e+03 3.7811896e+03 - 2.4985248e+03 -2.9489966e+03 3.7836530e+03 - 2.5757828e+03 -2.8766645e+03 3.7854318e+03 - 2.6523996e+03 -2.8030116e+03 3.7865069e+03 - 2.7282003e+03 -2.7282003e+03 3.7868666e+03 - 2.8030116e+03 -2.6523996e+03 3.7865069e+03 - 2.8766645e+03 -2.5757828e+03 3.7854318e+03 - 2.9489966e+03 -2.4985248e+03 3.7836530e+03 - 3.0198539e+03 -2.4207997e+03 3.7811896e+03 - 3.0890932e+03 -2.3427784e+03 3.7780679e+03 - 3.1565835e+03 -2.2646263e+03 3.7743206e+03 - 3.2222072e+03 -2.1865011e+03 3.7699862e+03 - 3.2858610e+03 -2.1085512e+03 3.7651081e+03 - 3.3474564e+03 -2.0309141e+03 3.7597341e+03 - 3.4069200e+03 -1.9537148e+03 3.7539149e+03 - 3.4641931e+03 -1.8770655e+03 3.7477040e+03 - 3.5192311e+03 -1.8010650e+03 3.7411562e+03 - 3.5720033e+03 -1.7257980e+03 3.7343270e+03 - 3.6224913e+03 -1.6513355e+03 3.7272722e+03 - 3.6706883e+03 -1.5777354e+03 3.7200466e+03 - 3.7165979e+03 -1.5050421e+03 3.7127042e+03 - 3.7602326e+03 -1.4332882e+03 3.7052969e+03 - 3.8016129e+03 -1.3624945e+03 3.6978750e+03 - 3.8407657e+03 -1.2926714e+03 3.6904861e+03 - 3.8777233e+03 -1.2238193e+03 3.6831754e+03 - 3.9125221e+03 -1.1559301e+03 3.6759853e+03 - 3.9452017e+03 -1.0889877e+03 3.6689554e+03 - 3.9758038e+03 -1.0229691e+03 3.6621226e+03 - 4.0043716e+03 -9.5784501e+02 3.6555208e+03 - 4.0309485e+03 -8.9358109e+02 3.6491811e+03 - 4.0555778e+03 -8.3013829e+02 3.6431320e+03 - 4.0783021e+03 -7.6747370e+02 3.6373995e+03 - 4.0991625e+03 -7.0554110e+02 3.6320068e+03 - 4.1181985e+03 -6.4429153e+02 3.6269751e+03 - 4.1354474e+03 -5.8367374e+02 3.6223231e+03 - 4.1509438e+03 -5.2363460e+02 3.6180674e+03 - 4.1647200e+03 -4.6411947e+02 3.6142227e+03 - 4.1768051e+03 -4.0507247e+02 3.6108018e+03 - 4.1872252e+03 -3.4643675e+02 3.6078157e+03 - 4.1960030e+03 -2.8815472e+02 3.6052737e+03 - 4.2031581e+03 -2.3016818e+02 3.6031836e+03 - 4.2087064e+03 -1.7241850e+02 3.6015516e+03 - 4.2126605e+03 -1.1484673e+02 3.6003825e+03 - 4.2150294e+03 -5.7393666e+01 3.5996798e+03 - 4.2158184e+03 0.0000000e+00 3.5994453e+03 - 4.2599293e+03 4.8134273e-09 3.5526556e+03 - 4.2591401e+03 5.7355272e+01 3.5529001e+03 - 4.2567706e+03 1.1477206e+02 3.5536329e+03 - 4.2528152e+03 1.7231183e+02 3.5548520e+03 - 4.2472644e+03 2.3003595e+02 3.5565541e+03 - 4.2401050e+03 2.8800560e+02 3.5587343e+03 - 4.2313201e+03 3.4628172e+02 3.5613865e+03 - 4.2208893e+03 4.0492488e+02 3.5645029e+03 - 4.2087884e+03 4.6399518e+02 3.5680743e+03 - 4.1949899e+03 5.2355207e+02 3.5720895e+03 - 4.1794629e+03 5.8365414e+02 3.5765357e+03 - 4.1621734e+03 6.4435891e+02 3.5813981e+03 - 4.1430844e+03 7.0572249e+02 3.5866601e+03 - 4.1221560e+03 7.6779929e+02 3.5923024e+03 - 4.0993462e+03 8.3064154e+02 3.5983038e+03 - 4.0746108e+03 8.9429885e+02 3.6046405e+03 - 4.0479040e+03 9.5881767e+02 3.6112859e+03 - 4.0191790e+03 1.0242406e+03 3.6182109e+03 - 3.9883885e+03 1.0906058e+03 3.6253833e+03 - 3.9554854e+03 1.1579460e+03 3.6327682e+03 - 3.9204239e+03 1.2262879e+03 3.6403273e+03 - 3.8831601e+03 1.2956511e+03 3.6480195e+03 - 3.8436530e+03 1.3660472e+03 3.6558004e+03 - 3.8018660e+03 1.4374786e+03 3.6636227e+03 - 3.7577679e+03 1.5099378e+03 3.6714362e+03 - 3.7113339e+03 1.5834060e+03 3.6791881e+03 - 3.6625476e+03 1.6578524e+03 3.6868232e+03 - 3.6114019e+03 1.7332333e+03 3.6942843e+03 - 3.5579006e+03 1.8094910e+03 3.7015128e+03 - 3.5020598e+03 1.8865536e+03 3.7084493e+03 - 3.4439088e+03 1.9643344e+03 3.7150340e+03 - 3.3834915e+03 2.0427317e+03 3.7212081e+03 - 3.3208672e+03 2.1216291e+03 3.7269140e+03 - 3.2561111e+03 2.2008961e+03 3.7320966e+03 - 3.1893147e+03 2.2803887e+03 3.7367044e+03 - 3.1205854e+03 2.3599510e+03 3.7406902e+03 - 3.0500464e+03 2.4394167e+03 3.7440120e+03 - 2.9778356e+03 2.5186108e+03 3.7466342e+03 - 2.9041040e+03 2.5973525e+03 3.7485283e+03 - 2.8290144e+03 2.6754571e+03 3.7496733e+03 - 2.7527390e+03 2.7527390e+03 3.7500564e+03 - 2.6754571e+03 2.8290144e+03 3.7496733e+03 - 2.5973525e+03 2.9041040e+03 3.7485283e+03 - 2.5186108e+03 2.9778356e+03 3.7466342e+03 - 2.4394167e+03 3.0500464e+03 3.7440120e+03 - 2.3599510e+03 3.1205854e+03 3.7406902e+03 - 2.2803887e+03 3.1893147e+03 3.7367044e+03 - 2.2008961e+03 3.2561111e+03 3.7320966e+03 - 2.1216291e+03 3.3208672e+03 3.7269140e+03 - 2.0427317e+03 3.3834915e+03 3.7212081e+03 - 1.9643344e+03 3.4439088e+03 3.7150340e+03 - 1.8865536e+03 3.5020598e+03 3.7084493e+03 - 1.8094910e+03 3.5579006e+03 3.7015128e+03 - 1.7332333e+03 3.6114019e+03 3.6942843e+03 - 1.6578524e+03 3.6625476e+03 3.6868232e+03 - 1.5834060e+03 3.7113339e+03 3.6791881e+03 - 1.5099378e+03 3.7577679e+03 3.6714362e+03 - 1.4374786e+03 3.8018660e+03 3.6636227e+03 - 1.3660472e+03 3.8436530e+03 3.6558004e+03 - 1.2956511e+03 3.8831601e+03 3.6480195e+03 - 1.2262879e+03 3.9204239e+03 3.6403273e+03 - 1.1579460e+03 3.9554854e+03 3.6327682e+03 - 1.0906058e+03 3.9883885e+03 3.6253833e+03 - 1.0242406e+03 4.0191790e+03 3.6182109e+03 - 9.5881767e+02 4.0479040e+03 3.6112859e+03 - 8.9429885e+02 4.0746108e+03 3.6046405e+03 - 8.3064154e+02 4.0993462e+03 3.5983038e+03 - 7.6779929e+02 4.1221560e+03 3.5923024e+03 - 7.0572249e+02 4.1430844e+03 3.5866601e+03 - 6.4435891e+02 4.1621734e+03 3.5813981e+03 - 5.8365414e+02 4.1794629e+03 3.5765357e+03 - 5.2355207e+02 4.1949899e+03 3.5720895e+03 - 4.6399518e+02 4.2087884e+03 3.5680743e+03 - 4.0492488e+02 4.2208893e+03 3.5645029e+03 - 3.4628172e+02 4.2313201e+03 3.5613865e+03 - 2.8800560e+02 4.2401050e+03 3.5587343e+03 - 2.3003595e+02 4.2472644e+03 3.5565541e+03 - 1.7231183e+02 4.2528152e+03 3.5548520e+03 - 1.1477206e+02 4.2567706e+03 3.5536329e+03 - 5.7355272e+01 4.2591401e+03 3.5529001e+03 - 0.0000000e+00 4.2599293e+03 3.5526556e+03 - -5.7355272e+01 4.2591401e+03 3.5529001e+03 - -1.1477206e+02 4.2567706e+03 3.5536329e+03 - -1.7231183e+02 4.2528152e+03 3.5548520e+03 - -2.3003595e+02 4.2472644e+03 3.5565541e+03 - -2.8800560e+02 4.2401050e+03 3.5587343e+03 - -3.4628172e+02 4.2313201e+03 3.5613865e+03 - -4.0492488e+02 4.2208893e+03 3.5645029e+03 - -4.6399518e+02 4.2087884e+03 3.5680743e+03 - -5.2355207e+02 4.1949899e+03 3.5720895e+03 - -5.8365414e+02 4.1794629e+03 3.5765357e+03 - -6.4435891e+02 4.1621734e+03 3.5813981e+03 - -7.0572249e+02 4.1430844e+03 3.5866601e+03 - -7.6779929e+02 4.1221560e+03 3.5923024e+03 - -8.3064154e+02 4.0993462e+03 3.5983038e+03 - -8.9429885e+02 4.0746108e+03 3.6046405e+03 - -9.5881767e+02 4.0479040e+03 3.6112859e+03 - -1.0242406e+03 4.0191790e+03 3.6182109e+03 - -1.0906058e+03 3.9883885e+03 3.6253833e+03 - -1.1579460e+03 3.9554854e+03 3.6327682e+03 - -1.2262879e+03 3.9204239e+03 3.6403273e+03 - -1.2956511e+03 3.8831601e+03 3.6480195e+03 - -1.3660472e+03 3.8436530e+03 3.6558004e+03 - -1.4374786e+03 3.8018660e+03 3.6636227e+03 - -1.5099378e+03 3.7577679e+03 3.6714362e+03 - -1.5834060e+03 3.7113339e+03 3.6791881e+03 - -1.6578524e+03 3.6625476e+03 3.6868232e+03 - -1.7332333e+03 3.6114019e+03 3.6942843e+03 - -1.8094910e+03 3.5579006e+03 3.7015128e+03 - -1.8865536e+03 3.5020598e+03 3.7084493e+03 - -1.9643344e+03 3.4439088e+03 3.7150340e+03 - -2.0427317e+03 3.3834915e+03 3.7212081e+03 - -2.1216291e+03 3.3208672e+03 3.7269140e+03 - -2.2008961e+03 3.2561111e+03 3.7320966e+03 - -2.2803887e+03 3.1893147e+03 3.7367044e+03 - -2.3599510e+03 3.1205854e+03 3.7406902e+03 - -2.4394167e+03 3.0500464e+03 3.7440120e+03 - -2.5186108e+03 2.9778356e+03 3.7466342e+03 - -2.5973525e+03 2.9041040e+03 3.7485283e+03 - -2.6754571e+03 2.8290144e+03 3.7496733e+03 - -2.7527390e+03 2.7527390e+03 3.7500564e+03 - -2.8290144e+03 2.6754571e+03 3.7496733e+03 - -2.9041040e+03 2.5973525e+03 3.7485283e+03 - -2.9778356e+03 2.5186108e+03 3.7466342e+03 - -3.0500464e+03 2.4394167e+03 3.7440120e+03 - -3.1205854e+03 2.3599510e+03 3.7406902e+03 - -3.1893147e+03 2.2803887e+03 3.7367044e+03 - -3.2561111e+03 2.2008961e+03 3.7320966e+03 - -3.3208672e+03 2.1216291e+03 3.7269140e+03 - -3.3834915e+03 2.0427317e+03 3.7212081e+03 - -3.4439088e+03 1.9643344e+03 3.7150340e+03 - -3.5020598e+03 1.8865536e+03 3.7084493e+03 - -3.5579006e+03 1.8094910e+03 3.7015128e+03 - -3.6114019e+03 1.7332333e+03 3.6942843e+03 - -3.6625476e+03 1.6578524e+03 3.6868232e+03 - -3.7113339e+03 1.5834060e+03 3.6791881e+03 - -3.7577679e+03 1.5099378e+03 3.6714362e+03 - -3.8018660e+03 1.4374786e+03 3.6636227e+03 - -3.8436530e+03 1.3660472e+03 3.6558004e+03 - -3.8831601e+03 1.2956511e+03 3.6480195e+03 - -3.9204239e+03 1.2262879e+03 3.6403273e+03 - -3.9554854e+03 1.1579460e+03 3.6327682e+03 - -3.9883885e+03 1.0906058e+03 3.6253833e+03 - -4.0191790e+03 1.0242406e+03 3.6182109e+03 - -4.0479040e+03 9.5881767e+02 3.6112859e+03 - -4.0746108e+03 8.9429885e+02 3.6046405e+03 - -4.0993462e+03 8.3064154e+02 3.5983038e+03 - -4.1221560e+03 7.6779929e+02 3.5923024e+03 - -4.1430844e+03 7.0572249e+02 3.5866601e+03 - -4.1621734e+03 6.4435891e+02 3.5813981e+03 - -4.1794629e+03 5.8365414e+02 3.5765357e+03 - -4.1949899e+03 5.2355207e+02 3.5720895e+03 - -4.2087884e+03 4.6399518e+02 3.5680743e+03 - -4.2208893e+03 4.0492488e+02 3.5645029e+03 - -4.2313201e+03 3.4628172e+02 3.5613865e+03 - -4.2401050e+03 2.8800560e+02 3.5587343e+03 - -4.2472644e+03 2.3003595e+02 3.5565541e+03 - -4.2528152e+03 1.7231183e+02 3.5548520e+03 - -4.2567706e+03 1.1477206e+02 3.5536329e+03 - -4.2591401e+03 5.7355272e+01 3.5529001e+03 - -4.2599293e+03 -4.8134273e-09 3.5526556e+03 - -4.2591401e+03 -5.7355272e+01 3.5529001e+03 - -4.2567706e+03 -1.1477206e+02 3.5536329e+03 - -4.2528152e+03 -1.7231183e+02 3.5548520e+03 - -4.2472644e+03 -2.3003595e+02 3.5565541e+03 - -4.2401050e+03 -2.8800560e+02 3.5587343e+03 - -4.2313201e+03 -3.4628172e+02 3.5613865e+03 - -4.2208893e+03 -4.0492488e+02 3.5645029e+03 - -4.2087884e+03 -4.6399518e+02 3.5680743e+03 - -4.1949899e+03 -5.2355207e+02 3.5720895e+03 - -4.1794629e+03 -5.8365414e+02 3.5765357e+03 - -4.1621734e+03 -6.4435891e+02 3.5813981e+03 - -4.1430844e+03 -7.0572249e+02 3.5866601e+03 - -4.1221560e+03 -7.6779929e+02 3.5923024e+03 - -4.0993462e+03 -8.3064154e+02 3.5983038e+03 - -4.0746108e+03 -8.9429885e+02 3.6046405e+03 - -4.0479040e+03 -9.5881767e+02 3.6112859e+03 - -4.0191790e+03 -1.0242406e+03 3.6182109e+03 - -3.9883885e+03 -1.0906058e+03 3.6253833e+03 - -3.9554854e+03 -1.1579460e+03 3.6327682e+03 - -3.9204239e+03 -1.2262879e+03 3.6403273e+03 - -3.8831601e+03 -1.2956511e+03 3.6480195e+03 - -3.8436530e+03 -1.3660472e+03 3.6558004e+03 - -3.8018660e+03 -1.4374786e+03 3.6636227e+03 - -3.7577679e+03 -1.5099378e+03 3.6714362e+03 - -3.7113339e+03 -1.5834060e+03 3.6791881e+03 - -3.6625476e+03 -1.6578524e+03 3.6868232e+03 - -3.6114019e+03 -1.7332333e+03 3.6942843e+03 - -3.5579006e+03 -1.8094910e+03 3.7015128e+03 - -3.5020598e+03 -1.8865536e+03 3.7084493e+03 - -3.4439088e+03 -1.9643344e+03 3.7150340e+03 - -3.3834915e+03 -2.0427317e+03 3.7212081e+03 - -3.3208672e+03 -2.1216291e+03 3.7269140e+03 - -3.2561111e+03 -2.2008961e+03 3.7320966e+03 - -3.1893147e+03 -2.2803887e+03 3.7367044e+03 - -3.1205854e+03 -2.3599510e+03 3.7406902e+03 - -3.0500464e+03 -2.4394167e+03 3.7440120e+03 - -2.9778356e+03 -2.5186108e+03 3.7466342e+03 - -2.9041040e+03 -2.5973525e+03 3.7485283e+03 - -2.8290144e+03 -2.6754571e+03 3.7496733e+03 - -2.7527390e+03 -2.7527390e+03 3.7500564e+03 - -2.6754571e+03 -2.8290144e+03 3.7496733e+03 - -2.5973525e+03 -2.9041040e+03 3.7485283e+03 - -2.5186108e+03 -2.9778356e+03 3.7466342e+03 - -2.4394167e+03 -3.0500464e+03 3.7440120e+03 - -2.3599510e+03 -3.1205854e+03 3.7406902e+03 - -2.2803887e+03 -3.1893147e+03 3.7367044e+03 - -2.2008961e+03 -3.2561111e+03 3.7320966e+03 - -2.1216291e+03 -3.3208672e+03 3.7269140e+03 - -2.0427317e+03 -3.3834915e+03 3.7212081e+03 - -1.9643344e+03 -3.4439088e+03 3.7150340e+03 - -1.8865536e+03 -3.5020598e+03 3.7084493e+03 - -1.8094910e+03 -3.5579006e+03 3.7015128e+03 - -1.7332333e+03 -3.6114019e+03 3.6942843e+03 - -1.6578524e+03 -3.6625476e+03 3.6868232e+03 - -1.5834060e+03 -3.7113339e+03 3.6791881e+03 - -1.5099378e+03 -3.7577679e+03 3.6714362e+03 - -1.4374786e+03 -3.8018660e+03 3.6636227e+03 - -1.3660472e+03 -3.8436530e+03 3.6558004e+03 - -1.2956511e+03 -3.8831601e+03 3.6480195e+03 - -1.2262879e+03 -3.9204239e+03 3.6403273e+03 - -1.1579460e+03 -3.9554854e+03 3.6327682e+03 - -1.0906058e+03 -3.9883885e+03 3.6253833e+03 - -1.0242406e+03 -4.0191790e+03 3.6182109e+03 - -9.5881767e+02 -4.0479040e+03 3.6112859e+03 - -8.9429885e+02 -4.0746108e+03 3.6046405e+03 - -8.3064154e+02 -4.0993462e+03 3.5983038e+03 - -7.6779929e+02 -4.1221560e+03 3.5923024e+03 - -7.0572249e+02 -4.1430844e+03 3.5866601e+03 - -6.4435891e+02 -4.1621734e+03 3.5813981e+03 - -5.8365414e+02 -4.1794629e+03 3.5765357e+03 - -5.2355207e+02 -4.1949899e+03 3.5720895e+03 - -4.6399518e+02 -4.2087884e+03 3.5680743e+03 - -4.0492488e+02 -4.2208893e+03 3.5645029e+03 - -3.4628172e+02 -4.2313201e+03 3.5613865e+03 - -2.8800560e+02 -4.2401050e+03 3.5587343e+03 - -2.3003595e+02 -4.2472644e+03 3.5565541e+03 - -1.7231183e+02 -4.2528152e+03 3.5548520e+03 - -1.1477206e+02 -4.2567706e+03 3.5536329e+03 - -5.7355272e+01 -4.2591401e+03 3.5529001e+03 - 0.0000000e+00 -4.2599293e+03 3.5526556e+03 - 5.7355272e+01 -4.2591401e+03 3.5529001e+03 - 1.1477206e+02 -4.2567706e+03 3.5536329e+03 - 1.7231183e+02 -4.2528152e+03 3.5548520e+03 - 2.3003595e+02 -4.2472644e+03 3.5565541e+03 - 2.8800560e+02 -4.2401050e+03 3.5587343e+03 - 3.4628172e+02 -4.2313201e+03 3.5613865e+03 - 4.0492488e+02 -4.2208893e+03 3.5645029e+03 - 4.6399518e+02 -4.2087884e+03 3.5680743e+03 - 5.2355207e+02 -4.1949899e+03 3.5720895e+03 - 5.8365414e+02 -4.1794629e+03 3.5765357e+03 - 6.4435891e+02 -4.1621734e+03 3.5813981e+03 - 7.0572249e+02 -4.1430844e+03 3.5866601e+03 - 7.6779929e+02 -4.1221560e+03 3.5923024e+03 - 8.3064154e+02 -4.0993462e+03 3.5983038e+03 - 8.9429885e+02 -4.0746108e+03 3.6046405e+03 - 9.5881767e+02 -4.0479040e+03 3.6112859e+03 - 1.0242406e+03 -4.0191790e+03 3.6182109e+03 - 1.0906058e+03 -3.9883885e+03 3.6253833e+03 - 1.1579460e+03 -3.9554854e+03 3.6327682e+03 - 1.2262879e+03 -3.9204239e+03 3.6403273e+03 - 1.2956511e+03 -3.8831601e+03 3.6480195e+03 - 1.3660472e+03 -3.8436530e+03 3.6558004e+03 - 1.4374786e+03 -3.8018660e+03 3.6636227e+03 - 1.5099378e+03 -3.7577679e+03 3.6714362e+03 - 1.5834060e+03 -3.7113339e+03 3.6791881e+03 - 1.6578524e+03 -3.6625476e+03 3.6868232e+03 - 1.7332333e+03 -3.6114019e+03 3.6942843e+03 - 1.8094910e+03 -3.5579006e+03 3.7015128e+03 - 1.8865536e+03 -3.5020598e+03 3.7084493e+03 - 1.9643344e+03 -3.4439088e+03 3.7150340e+03 - 2.0427317e+03 -3.3834915e+03 3.7212081e+03 - 2.1216291e+03 -3.3208672e+03 3.7269140e+03 - 2.2008961e+03 -3.2561111e+03 3.7320966e+03 - 2.2803887e+03 -3.1893147e+03 3.7367044e+03 - 2.3599510e+03 -3.1205854e+03 3.7406902e+03 - 2.4394167e+03 -3.0500464e+03 3.7440120e+03 - 2.5186108e+03 -2.9778356e+03 3.7466342e+03 - 2.5973525e+03 -2.9041040e+03 3.7485283e+03 - 2.6754571e+03 -2.8290144e+03 3.7496733e+03 - 2.7527390e+03 -2.7527390e+03 3.7500564e+03 - 2.8290144e+03 -2.6754571e+03 3.7496733e+03 - 2.9041040e+03 -2.5973525e+03 3.7485283e+03 - 2.9778356e+03 -2.5186108e+03 3.7466342e+03 - 3.0500464e+03 -2.4394167e+03 3.7440120e+03 - 3.1205854e+03 -2.3599510e+03 3.7406902e+03 - 3.1893147e+03 -2.2803887e+03 3.7367044e+03 - 3.2561111e+03 -2.2008961e+03 3.7320966e+03 - 3.3208672e+03 -2.1216291e+03 3.7269140e+03 - 3.3834915e+03 -2.0427317e+03 3.7212081e+03 - 3.4439088e+03 -1.9643344e+03 3.7150340e+03 - 3.5020598e+03 -1.8865536e+03 3.7084493e+03 - 3.5579006e+03 -1.8094910e+03 3.7015128e+03 - 3.6114019e+03 -1.7332333e+03 3.6942843e+03 - 3.6625476e+03 -1.6578524e+03 3.6868232e+03 - 3.7113339e+03 -1.5834060e+03 3.6791881e+03 - 3.7577679e+03 -1.5099378e+03 3.6714362e+03 - 3.8018660e+03 -1.4374786e+03 3.6636227e+03 - 3.8436530e+03 -1.3660472e+03 3.6558004e+03 - 3.8831601e+03 -1.2956511e+03 3.6480195e+03 - 3.9204239e+03 -1.2262879e+03 3.6403273e+03 - 3.9554854e+03 -1.1579460e+03 3.6327682e+03 - 3.9883885e+03 -1.0906058e+03 3.6253833e+03 - 4.0191790e+03 -1.0242406e+03 3.6182109e+03 - 4.0479040e+03 -9.5881767e+02 3.6112859e+03 - 4.0746108e+03 -8.9429885e+02 3.6046405e+03 - 4.0993462e+03 -8.3064154e+02 3.5983038e+03 - 4.1221560e+03 -7.6779929e+02 3.5923024e+03 - 4.1430844e+03 -7.0572249e+02 3.5866601e+03 - 4.1621734e+03 -6.4435891e+02 3.5813981e+03 - 4.1794629e+03 -5.8365414e+02 3.5765357e+03 - 4.1949899e+03 -5.2355207e+02 3.5720895e+03 - 4.2087884e+03 -4.6399518e+02 3.5680743e+03 - 4.2208893e+03 -4.0492488e+02 3.5645029e+03 - 4.2313201e+03 -3.4628172e+02 3.5613865e+03 - 4.2401050e+03 -2.8800560e+02 3.5587343e+03 - 4.2472644e+03 -2.3003595e+02 3.5565541e+03 - 4.2528152e+03 -1.7231183e+02 3.5548520e+03 - 4.2567706e+03 -1.1477206e+02 3.5536329e+03 - 4.2591401e+03 -5.7355272e+01 3.5529001e+03 - 4.2599293e+03 0.0000000e+00 3.5526556e+03 - 4.3033531e+03 -4.8134273e-09 3.5047439e+03 - 4.3025642e+03 5.7299072e+01 3.5049984e+03 - 4.3001957e+03 1.1466172e+02 3.5057614e+03 - 4.2962416e+03 1.7215149e+02 3.5070309e+03 - 4.2906919e+03 2.2983185e+02 3.5088036e+03 - 4.2835329e+03 2.8776617e+02 3.5110746e+03 - 4.2747467e+03 3.4601763e+02 3.5138379e+03 - 4.2643120e+03 4.0464915e+02 3.5170858e+03 - 4.2522033e+03 4.6372327e+02 3.5208090e+03 - 4.2383915e+03 5.2330201e+02 3.5249964e+03 - 4.2228442e+03 5.8344669e+02 3.5296352e+03 - 4.2055251e+03 6.4421766e+02 3.5347106e+03 - 4.1863953e+03 7.0567407e+02 3.5402056e+03 - 4.1654123e+03 7.6787348e+02 3.5461011e+03 - 4.1425313e+03 8.3087146e+02 3.5523755e+03 - 4.1177050e+03 8.9472110e+02 3.5590044e+03 - 4.0908844e+03 9.5947243e+02 3.5659611e+03 - 4.0620190e+03 1.0251718e+03 3.5732154e+03 - 4.0310576e+03 1.0918612e+03 3.5807345e+03 - 3.9979492e+03 1.1595771e+03 3.5884823e+03 - 3.9626435e+03 1.2283502e+03 3.5964193e+03 - 3.9250920e+03 1.2982038e+03 3.6045026e+03 - 3.8852492e+03 1.3691529e+03 3.6126861e+03 - 3.8430738e+03 1.4412035e+03 3.6209204e+03 - 3.7985297e+03 1.5143509e+03 3.6291527e+03 - 3.7515880e+03 1.5885788e+03 3.6373274e+03 - 3.7022278e+03 1.6638584e+03 3.6453861e+03 - 3.6504383e+03 1.7401471e+03 3.6532681e+03 - 3.5962199e+03 1.8173875e+03 3.6609111e+03 - 3.5395859e+03 1.8955071e+03 3.6682515e+03 - 3.4805641e+03 1.9744174e+03 3.6752255e+03 - 3.4191976e+03 2.0540137e+03 3.6817696e+03 - 3.3555459e+03 2.1341755e+03 3.6878219e+03 - 3.2896859e+03 2.2147668e+03 3.6933230e+03 - 3.2217120e+03 2.2956370e+03 3.6982170e+03 - 3.1517361e+03 2.3766222e+03 3.7024526e+03 - 3.0798870e+03 2.4575471e+03 3.7059843e+03 - 3.0063096e+03 2.5382269e+03 3.7087732e+03 - 2.9311633e+03 2.6184701e+03 3.7107883e+03 - 2.8546202e+03 2.6980810e+03 3.7120067e+03 - 2.7768627e+03 2.7768627e+03 3.7124144e+03 - 2.6980810e+03 2.8546202e+03 3.7120067e+03 - 2.6184701e+03 2.9311633e+03 3.7107883e+03 - 2.5382269e+03 3.0063096e+03 3.7087732e+03 - 2.4575471e+03 3.0798870e+03 3.7059843e+03 - 2.3766222e+03 3.1517361e+03 3.7024526e+03 - 2.2956370e+03 3.2217120e+03 3.6982170e+03 - 2.2147668e+03 3.2896859e+03 3.6933230e+03 - 2.1341755e+03 3.3555459e+03 3.6878219e+03 - 2.0540137e+03 3.4191976e+03 3.6817696e+03 - 1.9744174e+03 3.4805641e+03 3.6752255e+03 - 1.8955071e+03 3.5395859e+03 3.6682515e+03 - 1.8173875e+03 3.5962199e+03 3.6609111e+03 - 1.7401471e+03 3.6504383e+03 3.6532681e+03 - 1.6638584e+03 3.7022278e+03 3.6453861e+03 - 1.5885788e+03 3.7515880e+03 3.6373274e+03 - 1.5143509e+03 3.7985297e+03 3.6291527e+03 - 1.4412035e+03 3.8430738e+03 3.6209204e+03 - 1.3691529e+03 3.8852492e+03 3.6126861e+03 - 1.2982038e+03 3.9250920e+03 3.6045026e+03 - 1.2283502e+03 3.9626435e+03 3.5964193e+03 - 1.1595771e+03 3.9979492e+03 3.5884823e+03 - 1.0918612e+03 4.0310576e+03 3.5807345e+03 - 1.0251718e+03 4.0620190e+03 3.5732154e+03 - 9.5947243e+02 4.0908844e+03 3.5659611e+03 - 8.9472110e+02 4.1177050e+03 3.5590044e+03 - 8.3087146e+02 4.1425313e+03 3.5523755e+03 - 7.6787348e+02 4.1654123e+03 3.5461011e+03 - 7.0567407e+02 4.1863953e+03 3.5402056e+03 - 6.4421766e+02 4.2055251e+03 3.5347106e+03 - 5.8344669e+02 4.2228442e+03 3.5296352e+03 - 5.2330201e+02 4.2383915e+03 3.5249964e+03 - 4.6372327e+02 4.2522033e+03 3.5208090e+03 - 4.0464915e+02 4.2643120e+03 3.5170858e+03 - 3.4601763e+02 4.2747467e+03 3.5138379e+03 - 2.8776617e+02 4.2835329e+03 3.5110746e+03 - 2.2983185e+02 4.2906919e+03 3.5088036e+03 - 1.7215149e+02 4.2962416e+03 3.5070309e+03 - 1.1466172e+02 4.3001957e+03 3.5057614e+03 - 5.7299072e+01 4.3025642e+03 3.5049984e+03 - 0.0000000e+00 4.3033531e+03 3.5047439e+03 - -5.7299072e+01 4.3025642e+03 3.5049984e+03 - -1.1466172e+02 4.3001957e+03 3.5057614e+03 - -1.7215149e+02 4.2962416e+03 3.5070309e+03 - -2.2983185e+02 4.2906919e+03 3.5088036e+03 - -2.8776617e+02 4.2835329e+03 3.5110746e+03 - -3.4601763e+02 4.2747467e+03 3.5138379e+03 - -4.0464915e+02 4.2643120e+03 3.5170858e+03 - -4.6372327e+02 4.2522033e+03 3.5208090e+03 - -5.2330201e+02 4.2383915e+03 3.5249964e+03 - -5.8344669e+02 4.2228442e+03 3.5296352e+03 - -6.4421766e+02 4.2055251e+03 3.5347106e+03 - -7.0567407e+02 4.1863953e+03 3.5402056e+03 - -7.6787348e+02 4.1654123e+03 3.5461011e+03 - -8.3087146e+02 4.1425313e+03 3.5523755e+03 - -8.9472110e+02 4.1177050e+03 3.5590044e+03 - -9.5947243e+02 4.0908844e+03 3.5659611e+03 - -1.0251718e+03 4.0620190e+03 3.5732154e+03 - -1.0918612e+03 4.0310576e+03 3.5807345e+03 - -1.1595771e+03 3.9979492e+03 3.5884823e+03 - -1.2283502e+03 3.9626435e+03 3.5964193e+03 - -1.2982038e+03 3.9250920e+03 3.6045026e+03 - -1.3691529e+03 3.8852492e+03 3.6126861e+03 - -1.4412035e+03 3.8430738e+03 3.6209204e+03 - -1.5143509e+03 3.7985297e+03 3.6291527e+03 - -1.5885788e+03 3.7515880e+03 3.6373274e+03 - -1.6638584e+03 3.7022278e+03 3.6453861e+03 - -1.7401471e+03 3.6504383e+03 3.6532681e+03 - -1.8173875e+03 3.5962199e+03 3.6609111e+03 - -1.8955071e+03 3.5395859e+03 3.6682515e+03 - -1.9744174e+03 3.4805641e+03 3.6752255e+03 - -2.0540137e+03 3.4191976e+03 3.6817696e+03 - -2.1341755e+03 3.3555459e+03 3.6878219e+03 - -2.2147668e+03 3.2896859e+03 3.6933230e+03 - -2.2956370e+03 3.2217120e+03 3.6982170e+03 - -2.3766222e+03 3.1517361e+03 3.7024526e+03 - -2.4575471e+03 3.0798870e+03 3.7059843e+03 - -2.5382269e+03 3.0063096e+03 3.7087732e+03 - -2.6184701e+03 2.9311633e+03 3.7107883e+03 - -2.6980810e+03 2.8546202e+03 3.7120067e+03 - -2.7768627e+03 2.7768627e+03 3.7124144e+03 - -2.8546202e+03 2.6980810e+03 3.7120067e+03 - -2.9311633e+03 2.6184701e+03 3.7107883e+03 - -3.0063096e+03 2.5382269e+03 3.7087732e+03 - -3.0798870e+03 2.4575471e+03 3.7059843e+03 - -3.1517361e+03 2.3766222e+03 3.7024526e+03 - -3.2217120e+03 2.2956370e+03 3.6982170e+03 - -3.2896859e+03 2.2147668e+03 3.6933230e+03 - -3.3555459e+03 2.1341755e+03 3.6878219e+03 - -3.4191976e+03 2.0540137e+03 3.6817696e+03 - -3.4805641e+03 1.9744174e+03 3.6752255e+03 - -3.5395859e+03 1.8955071e+03 3.6682515e+03 - -3.5962199e+03 1.8173875e+03 3.6609111e+03 - -3.6504383e+03 1.7401471e+03 3.6532681e+03 - -3.7022278e+03 1.6638584e+03 3.6453861e+03 - -3.7515880e+03 1.5885788e+03 3.6373274e+03 - -3.7985297e+03 1.5143509e+03 3.6291527e+03 - -3.8430738e+03 1.4412035e+03 3.6209204e+03 - -3.8852492e+03 1.3691529e+03 3.6126861e+03 - -3.9250920e+03 1.2982038e+03 3.6045026e+03 - -3.9626435e+03 1.2283502e+03 3.5964193e+03 - -3.9979492e+03 1.1595771e+03 3.5884823e+03 - -4.0310576e+03 1.0918612e+03 3.5807345e+03 - -4.0620190e+03 1.0251718e+03 3.5732154e+03 - -4.0908844e+03 9.5947243e+02 3.5659611e+03 - -4.1177050e+03 8.9472110e+02 3.5590044e+03 - -4.1425313e+03 8.3087146e+02 3.5523755e+03 - -4.1654123e+03 7.6787348e+02 3.5461011e+03 - -4.1863953e+03 7.0567407e+02 3.5402056e+03 - -4.2055251e+03 6.4421766e+02 3.5347106e+03 - -4.2228442e+03 5.8344669e+02 3.5296352e+03 - -4.2383915e+03 5.2330201e+02 3.5249964e+03 - -4.2522033e+03 4.6372327e+02 3.5208090e+03 - -4.2643120e+03 4.0464915e+02 3.5170858e+03 - -4.2747467e+03 3.4601763e+02 3.5138379e+03 - -4.2835329e+03 2.8776617e+02 3.5110746e+03 - -4.2906919e+03 2.2983185e+02 3.5088036e+03 - -4.2962416e+03 1.7215149e+02 3.5070309e+03 - -4.3001957e+03 1.1466172e+02 3.5057614e+03 - -4.3025642e+03 5.7299072e+01 3.5049984e+03 - -4.3033531e+03 4.8134273e-09 3.5047439e+03 - -4.3025642e+03 -5.7299072e+01 3.5049984e+03 - -4.3001957e+03 -1.1466172e+02 3.5057614e+03 - -4.2962416e+03 -1.7215149e+02 3.5070309e+03 - -4.2906919e+03 -2.2983185e+02 3.5088036e+03 - -4.2835329e+03 -2.8776617e+02 3.5110746e+03 - -4.2747467e+03 -3.4601763e+02 3.5138379e+03 - -4.2643120e+03 -4.0464915e+02 3.5170858e+03 - -4.2522033e+03 -4.6372327e+02 3.5208090e+03 - -4.2383915e+03 -5.2330201e+02 3.5249964e+03 - -4.2228442e+03 -5.8344669e+02 3.5296352e+03 - -4.2055251e+03 -6.4421766e+02 3.5347106e+03 - -4.1863953e+03 -7.0567407e+02 3.5402056e+03 - -4.1654123e+03 -7.6787348e+02 3.5461011e+03 - -4.1425313e+03 -8.3087146e+02 3.5523755e+03 - -4.1177050e+03 -8.9472110e+02 3.5590044e+03 - -4.0908844e+03 -9.5947243e+02 3.5659611e+03 - -4.0620190e+03 -1.0251718e+03 3.5732154e+03 - -4.0310576e+03 -1.0918612e+03 3.5807345e+03 - -3.9979492e+03 -1.1595771e+03 3.5884823e+03 - -3.9626435e+03 -1.2283502e+03 3.5964193e+03 - -3.9250920e+03 -1.2982038e+03 3.6045026e+03 - -3.8852492e+03 -1.3691529e+03 3.6126861e+03 - -3.8430738e+03 -1.4412035e+03 3.6209204e+03 - -3.7985297e+03 -1.5143509e+03 3.6291527e+03 - -3.7515880e+03 -1.5885788e+03 3.6373274e+03 - -3.7022278e+03 -1.6638584e+03 3.6453861e+03 - -3.6504383e+03 -1.7401471e+03 3.6532681e+03 - -3.5962199e+03 -1.8173875e+03 3.6609111e+03 - -3.5395859e+03 -1.8955071e+03 3.6682515e+03 - -3.4805641e+03 -1.9744174e+03 3.6752255e+03 - -3.4191976e+03 -2.0540137e+03 3.6817696e+03 - -3.3555459e+03 -2.1341755e+03 3.6878219e+03 - -3.2896859e+03 -2.2147668e+03 3.6933230e+03 - -3.2217120e+03 -2.2956370e+03 3.6982170e+03 - -3.1517361e+03 -2.3766222e+03 3.7024526e+03 - -3.0798870e+03 -2.4575471e+03 3.7059843e+03 - -3.0063096e+03 -2.5382269e+03 3.7087732e+03 - -2.9311633e+03 -2.6184701e+03 3.7107883e+03 - -2.8546202e+03 -2.6980810e+03 3.7120067e+03 - -2.7768627e+03 -2.7768627e+03 3.7124144e+03 - -2.6980810e+03 -2.8546202e+03 3.7120067e+03 - -2.6184701e+03 -2.9311633e+03 3.7107883e+03 - -2.5382269e+03 -3.0063096e+03 3.7087732e+03 - -2.4575471e+03 -3.0798870e+03 3.7059843e+03 - -2.3766222e+03 -3.1517361e+03 3.7024526e+03 - -2.2956370e+03 -3.2217120e+03 3.6982170e+03 - -2.2147668e+03 -3.2896859e+03 3.6933230e+03 - -2.1341755e+03 -3.3555459e+03 3.6878219e+03 - -2.0540137e+03 -3.4191976e+03 3.6817696e+03 - -1.9744174e+03 -3.4805641e+03 3.6752255e+03 - -1.8955071e+03 -3.5395859e+03 3.6682515e+03 - -1.8173875e+03 -3.5962199e+03 3.6609111e+03 - -1.7401471e+03 -3.6504383e+03 3.6532681e+03 - -1.6638584e+03 -3.7022278e+03 3.6453861e+03 - -1.5885788e+03 -3.7515880e+03 3.6373274e+03 - -1.5143509e+03 -3.7985297e+03 3.6291527e+03 - -1.4412035e+03 -3.8430738e+03 3.6209204e+03 - -1.3691529e+03 -3.8852492e+03 3.6126861e+03 - -1.2982038e+03 -3.9250920e+03 3.6045026e+03 - -1.2283502e+03 -3.9626435e+03 3.5964193e+03 - -1.1595771e+03 -3.9979492e+03 3.5884823e+03 - -1.0918612e+03 -4.0310576e+03 3.5807345e+03 - -1.0251718e+03 -4.0620190e+03 3.5732154e+03 - -9.5947243e+02 -4.0908844e+03 3.5659611e+03 - -8.9472110e+02 -4.1177050e+03 3.5590044e+03 - -8.3087146e+02 -4.1425313e+03 3.5523755e+03 - -7.6787348e+02 -4.1654123e+03 3.5461011e+03 - -7.0567407e+02 -4.1863953e+03 3.5402056e+03 - -6.4421766e+02 -4.2055251e+03 3.5347106e+03 - -5.8344669e+02 -4.2228442e+03 3.5296352e+03 - -5.2330201e+02 -4.2383915e+03 3.5249964e+03 - -4.6372327e+02 -4.2522033e+03 3.5208090e+03 - -4.0464915e+02 -4.2643120e+03 3.5170858e+03 - -3.4601763e+02 -4.2747467e+03 3.5138379e+03 - -2.8776617e+02 -4.2835329e+03 3.5110746e+03 - -2.2983185e+02 -4.2906919e+03 3.5088036e+03 - -1.7215149e+02 -4.2962416e+03 3.5070309e+03 - -1.1466172e+02 -4.3001957e+03 3.5057614e+03 - -5.7299072e+01 -4.3025642e+03 3.5049984e+03 - 0.0000000e+00 -4.3033531e+03 3.5047439e+03 - 5.7299072e+01 -4.3025642e+03 3.5049984e+03 - 1.1466172e+02 -4.3001957e+03 3.5057614e+03 - 1.7215149e+02 -4.2962416e+03 3.5070309e+03 - 2.2983185e+02 -4.2906919e+03 3.5088036e+03 - 2.8776617e+02 -4.2835329e+03 3.5110746e+03 - 3.4601763e+02 -4.2747467e+03 3.5138379e+03 - 4.0464915e+02 -4.2643120e+03 3.5170858e+03 - 4.6372327e+02 -4.2522033e+03 3.5208090e+03 - 5.2330201e+02 -4.2383915e+03 3.5249964e+03 - 5.8344669e+02 -4.2228442e+03 3.5296352e+03 - 6.4421766e+02 -4.2055251e+03 3.5347106e+03 - 7.0567407e+02 -4.1863953e+03 3.5402056e+03 - 7.6787348e+02 -4.1654123e+03 3.5461011e+03 - 8.3087146e+02 -4.1425313e+03 3.5523755e+03 - 8.9472110e+02 -4.1177050e+03 3.5590044e+03 - 9.5947243e+02 -4.0908844e+03 3.5659611e+03 - 1.0251718e+03 -4.0620190e+03 3.5732154e+03 - 1.0918612e+03 -4.0310576e+03 3.5807345e+03 - 1.1595771e+03 -3.9979492e+03 3.5884823e+03 - 1.2283502e+03 -3.9626435e+03 3.5964193e+03 - 1.2982038e+03 -3.9250920e+03 3.6045026e+03 - 1.3691529e+03 -3.8852492e+03 3.6126861e+03 - 1.4412035e+03 -3.8430738e+03 3.6209204e+03 - 1.5143509e+03 -3.7985297e+03 3.6291527e+03 - 1.5885788e+03 -3.7515880e+03 3.6373274e+03 - 1.6638584e+03 -3.7022278e+03 3.6453861e+03 - 1.7401471e+03 -3.6504383e+03 3.6532681e+03 - 1.8173875e+03 -3.5962199e+03 3.6609111e+03 - 1.8955071e+03 -3.5395859e+03 3.6682515e+03 - 1.9744174e+03 -3.4805641e+03 3.6752255e+03 - 2.0540137e+03 -3.4191976e+03 3.6817696e+03 - 2.1341755e+03 -3.3555459e+03 3.6878219e+03 - 2.2147668e+03 -3.2896859e+03 3.6933230e+03 - 2.2956370e+03 -3.2217120e+03 3.6982170e+03 - 2.3766222e+03 -3.1517361e+03 3.7024526e+03 - 2.4575471e+03 -3.0798870e+03 3.7059843e+03 - 2.5382269e+03 -3.0063096e+03 3.7087732e+03 - 2.6184701e+03 -2.9311633e+03 3.7107883e+03 - 2.6980810e+03 -2.8546202e+03 3.7120067e+03 - 2.7768627e+03 -2.7768627e+03 3.7124144e+03 - 2.8546202e+03 -2.6980810e+03 3.7120067e+03 - 2.9311633e+03 -2.6184701e+03 3.7107883e+03 - 3.0063096e+03 -2.5382269e+03 3.7087732e+03 - 3.0798870e+03 -2.4575471e+03 3.7059843e+03 - 3.1517361e+03 -2.3766222e+03 3.7024526e+03 - 3.2217120e+03 -2.2956370e+03 3.6982170e+03 - 3.2896859e+03 -2.2147668e+03 3.6933230e+03 - 3.3555459e+03 -2.1341755e+03 3.6878219e+03 - 3.4191976e+03 -2.0540137e+03 3.6817696e+03 - 3.4805641e+03 -1.9744174e+03 3.6752255e+03 - 3.5395859e+03 -1.8955071e+03 3.6682515e+03 - 3.5962199e+03 -1.8173875e+03 3.6609111e+03 - 3.6504383e+03 -1.7401471e+03 3.6532681e+03 - 3.7022278e+03 -1.6638584e+03 3.6453861e+03 - 3.7515880e+03 -1.5885788e+03 3.6373274e+03 - 3.7985297e+03 -1.5143509e+03 3.6291527e+03 - 3.8430738e+03 -1.4412035e+03 3.6209204e+03 - 3.8852492e+03 -1.3691529e+03 3.6126861e+03 - 3.9250920e+03 -1.2982038e+03 3.6045026e+03 - 3.9626435e+03 -1.2283502e+03 3.5964193e+03 - 3.9979492e+03 -1.1595771e+03 3.5884823e+03 - 4.0310576e+03 -1.0918612e+03 3.5807345e+03 - 4.0620190e+03 -1.0251718e+03 3.5732154e+03 - 4.0908844e+03 -9.5947243e+02 3.5659611e+03 - 4.1177050e+03 -8.9472110e+02 3.5590044e+03 - 4.1425313e+03 -8.3087146e+02 3.5523755e+03 - 4.1654123e+03 -7.6787348e+02 3.5461011e+03 - 4.1863953e+03 -7.0567407e+02 3.5402056e+03 - 4.2055251e+03 -6.4421766e+02 3.5347106e+03 - 4.2228442e+03 -5.8344669e+02 3.5296352e+03 - 4.2383915e+03 -5.2330201e+02 3.5249964e+03 - 4.2522033e+03 -4.6372327e+02 3.5208090e+03 - 4.2643120e+03 -4.0464915e+02 3.5170858e+03 - 4.2747467e+03 -3.4601763e+02 3.5138379e+03 - 4.2835329e+03 -2.8776617e+02 3.5110746e+03 - 4.2906919e+03 -2.2983185e+02 3.5088036e+03 - 4.2962416e+03 -1.7215149e+02 3.5070309e+03 - 4.3001957e+03 -1.1466172e+02 3.5057614e+03 - 4.3025642e+03 -5.7299072e+01 3.5049984e+03 - 4.3033531e+03 0.0000000e+00 3.5047439e+03 - 4.3461369e+03 4.8134273e-09 3.4556338e+03 - 4.3453489e+03 5.7225953e+01 3.4558984e+03 - 4.3429828e+03 1.1451747e+02 3.4566918e+03 - 4.3390326e+03 1.7194011e+02 3.4580120e+03 - 4.3334877e+03 2.2955941e+02 3.4598556e+03 - 4.3263337e+03 2.8744082e+02 3.4622180e+03 - 4.3175521e+03 3.4564974e+02 3.4650932e+03 - 4.3071203e+03 4.0425136e+02 3.4684735e+03 - 4.2950116e+03 4.6331065e+02 3.4723497e+03 - 4.2811956e+03 5.2289216e+02 3.4767108e+03 - 4.2656379e+03 5.8305989e+02 3.4815441e+03 - 4.2483005e+03 6.4387706e+02 3.4868346e+03 - 4.2291420e+03 7.0540583e+02 3.4925655e+03 - 4.2081177e+03 7.6770696e+02 3.4987174e+03 - 4.1851798e+03 8.3083940e+02 3.5052685e+03 - 4.1602779e+03 8.9485977e+02 3.5121942e+03 - 4.1333597e+03 9.5982183e+02 3.5194672e+03 - 4.1043710e+03 1.0257758e+03 3.5270569e+03 - 4.0732565e+03 1.0927675e+03 3.5349295e+03 - 4.0399610e+03 1.1608376e+03 3.5430479e+03 - 4.0044297e+03 1.2300207e+03 3.5513714e+03 - 3.9666094e+03 1.3003442e+03 3.5598555e+03 - 3.9264497e+03 1.3718269e+03 3.5684524e+03 - 3.8839043e+03 1.4444784e+03 3.5771103e+03 - 3.8389323e+03 1.5182973e+03 3.5857740e+03 - 3.7914998e+03 1.5932701e+03 3.5943849e+03 - 3.7415814e+03 1.6693703e+03 3.6028815e+03 - 3.6891620e+03 1.7465567e+03 3.6111994e+03 - 3.6342384e+03 1.8247725e+03 3.6192724e+03 - 3.5768210e+03 1.9039447e+03 3.6270326e+03 - 3.5169353e+03 1.9839833e+03 3.6344117e+03 - 3.4546235e+03 2.0647808e+03 3.6413417e+03 - 3.3899454e+03 2.1462124e+03 3.6477557e+03 - 3.3229791e+03 2.2281367e+03 3.6535898e+03 - 3.2538222e+03 2.3103961e+03 3.6587832e+03 - 3.1825908e+03 2.3928186e+03 3.6632806e+03 - 3.1094197e+03 2.4752195e+03 3.6670324e+03 - 3.0344611e+03 2.5574036e+03 3.6699964e+03 - 2.9578832e+03 2.6391683e+03 3.6721386e+03 - 2.8798678e+03 2.7203061e+03 3.6734341e+03 - 2.8006083e+03 2.8006083e+03 3.6738676e+03 - 2.7203061e+03 2.8798678e+03 3.6734341e+03 - 2.6391683e+03 2.9578832e+03 3.6721386e+03 - 2.5574036e+03 3.0344611e+03 3.6699964e+03 - 2.4752195e+03 3.1094197e+03 3.6670324e+03 - 2.3928186e+03 3.1825908e+03 3.6632806e+03 - 2.3103961e+03 3.2538222e+03 3.6587832e+03 - 2.2281367e+03 3.3229791e+03 3.6535898e+03 - 2.1462124e+03 3.3899454e+03 3.6477557e+03 - 2.0647808e+03 3.4546235e+03 3.6413417e+03 - 1.9839833e+03 3.5169353e+03 3.6344117e+03 - 1.9039447e+03 3.5768210e+03 3.6270326e+03 - 1.8247725e+03 3.6342384e+03 3.6192724e+03 - 1.7465567e+03 3.6891620e+03 3.6111994e+03 - 1.6693703e+03 3.7415814e+03 3.6028815e+03 - 1.5932701e+03 3.7914998e+03 3.5943849e+03 - 1.5182973e+03 3.8389323e+03 3.5857740e+03 - 1.4444784e+03 3.8839043e+03 3.5771103e+03 - 1.3718269e+03 3.9264497e+03 3.5684524e+03 - 1.3003442e+03 3.9666094e+03 3.5598555e+03 - 1.2300207e+03 4.0044297e+03 3.5513714e+03 - 1.1608376e+03 4.0399610e+03 3.5430479e+03 - 1.0927675e+03 4.0732565e+03 3.5349295e+03 - 1.0257758e+03 4.1043710e+03 3.5270569e+03 - 9.5982183e+02 4.1333597e+03 3.5194672e+03 - 8.9485977e+02 4.1602779e+03 3.5121942e+03 - 8.3083940e+02 4.1851798e+03 3.5052685e+03 - 7.6770696e+02 4.2081177e+03 3.4987174e+03 - 7.0540583e+02 4.2291420e+03 3.4925655e+03 - 6.4387706e+02 4.2483005e+03 3.4868346e+03 - 5.8305989e+02 4.2656379e+03 3.4815441e+03 - 5.2289216e+02 4.2811956e+03 3.4767108e+03 - 4.6331065e+02 4.2950116e+03 3.4723497e+03 - 4.0425136e+02 4.3071203e+03 3.4684735e+03 - 3.4564974e+02 4.3175521e+03 3.4650932e+03 - 2.8744082e+02 4.3263337e+03 3.4622180e+03 - 2.2955941e+02 4.3334877e+03 3.4598556e+03 - 1.7194011e+02 4.3390326e+03 3.4580120e+03 - 1.1451747e+02 4.3429828e+03 3.4566918e+03 - 5.7225953e+01 4.3453489e+03 3.4558984e+03 - 4.8134273e-09 4.3461369e+03 3.4556338e+03 - -5.7225953e+01 4.3453489e+03 3.4558984e+03 - -1.1451747e+02 4.3429828e+03 3.4566918e+03 - -1.7194011e+02 4.3390326e+03 3.4580120e+03 - -2.2955941e+02 4.3334877e+03 3.4598556e+03 - -2.8744082e+02 4.3263337e+03 3.4622180e+03 - -3.4564974e+02 4.3175521e+03 3.4650932e+03 - -4.0425136e+02 4.3071203e+03 3.4684735e+03 - -4.6331065e+02 4.2950116e+03 3.4723497e+03 - -5.2289216e+02 4.2811956e+03 3.4767108e+03 - -5.8305989e+02 4.2656379e+03 3.4815441e+03 - -6.4387706e+02 4.2483005e+03 3.4868346e+03 - -7.0540583e+02 4.2291420e+03 3.4925655e+03 - -7.6770696e+02 4.2081177e+03 3.4987174e+03 - -8.3083940e+02 4.1851798e+03 3.5052685e+03 - -8.9485977e+02 4.1602779e+03 3.5121942e+03 - -9.5982183e+02 4.1333597e+03 3.5194672e+03 - -1.0257758e+03 4.1043710e+03 3.5270569e+03 - -1.0927675e+03 4.0732565e+03 3.5349295e+03 - -1.1608376e+03 4.0399610e+03 3.5430479e+03 - -1.2300207e+03 4.0044297e+03 3.5513714e+03 - -1.3003442e+03 3.9666094e+03 3.5598555e+03 - -1.3718269e+03 3.9264497e+03 3.5684524e+03 - -1.4444784e+03 3.8839043e+03 3.5771103e+03 - -1.5182973e+03 3.8389323e+03 3.5857740e+03 - -1.5932701e+03 3.7914998e+03 3.5943849e+03 - -1.6693703e+03 3.7415814e+03 3.6028815e+03 - -1.7465567e+03 3.6891620e+03 3.6111994e+03 - -1.8247725e+03 3.6342384e+03 3.6192724e+03 - -1.9039447e+03 3.5768210e+03 3.6270326e+03 - -1.9839833e+03 3.5169353e+03 3.6344117e+03 - -2.0647808e+03 3.4546235e+03 3.6413417e+03 - -2.1462124e+03 3.3899454e+03 3.6477557e+03 - -2.2281367e+03 3.3229791e+03 3.6535898e+03 - -2.3103961e+03 3.2538222e+03 3.6587832e+03 - -2.3928186e+03 3.1825908e+03 3.6632806e+03 - -2.4752195e+03 3.1094197e+03 3.6670324e+03 - -2.5574036e+03 3.0344611e+03 3.6699964e+03 - -2.6391683e+03 2.9578832e+03 3.6721386e+03 - -2.7203061e+03 2.8798678e+03 3.6734341e+03 - -2.8006083e+03 2.8006083e+03 3.6738676e+03 - -2.8798678e+03 2.7203061e+03 3.6734341e+03 - -2.9578832e+03 2.6391683e+03 3.6721386e+03 - -3.0344611e+03 2.5574036e+03 3.6699964e+03 - -3.1094197e+03 2.4752195e+03 3.6670324e+03 - -3.1825908e+03 2.3928186e+03 3.6632806e+03 - -3.2538222e+03 2.3103961e+03 3.6587832e+03 - -3.3229791e+03 2.2281367e+03 3.6535898e+03 - -3.3899454e+03 2.1462124e+03 3.6477557e+03 - -3.4546235e+03 2.0647808e+03 3.6413417e+03 - -3.5169353e+03 1.9839833e+03 3.6344117e+03 - -3.5768210e+03 1.9039447e+03 3.6270326e+03 - -3.6342384e+03 1.8247725e+03 3.6192724e+03 - -3.6891620e+03 1.7465567e+03 3.6111994e+03 - -3.7415814e+03 1.6693703e+03 3.6028815e+03 - -3.7914998e+03 1.5932701e+03 3.5943849e+03 - -3.8389323e+03 1.5182973e+03 3.5857740e+03 - -3.8839043e+03 1.4444784e+03 3.5771103e+03 - -3.9264497e+03 1.3718269e+03 3.5684524e+03 - -3.9666094e+03 1.3003442e+03 3.5598555e+03 - -4.0044297e+03 1.2300207e+03 3.5513714e+03 - -4.0399610e+03 1.1608376e+03 3.5430479e+03 - -4.0732565e+03 1.0927675e+03 3.5349295e+03 - -4.1043710e+03 1.0257758e+03 3.5270569e+03 - -4.1333597e+03 9.5982183e+02 3.5194672e+03 - -4.1602779e+03 8.9485977e+02 3.5121942e+03 - -4.1851798e+03 8.3083940e+02 3.5052685e+03 - -4.2081177e+03 7.6770696e+02 3.4987174e+03 - -4.2291420e+03 7.0540583e+02 3.4925655e+03 - -4.2483005e+03 6.4387706e+02 3.4868346e+03 - -4.2656379e+03 5.8305989e+02 3.4815441e+03 - -4.2811956e+03 5.2289216e+02 3.4767108e+03 - -4.2950116e+03 4.6331065e+02 3.4723497e+03 - -4.3071203e+03 4.0425136e+02 3.4684735e+03 - -4.3175521e+03 3.4564974e+02 3.4650932e+03 - -4.3263337e+03 2.8744082e+02 3.4622180e+03 - -4.3334877e+03 2.2955941e+02 3.4598556e+03 - -4.3390326e+03 1.7194011e+02 3.4580120e+03 - -4.3429828e+03 1.1451747e+02 3.4566918e+03 - -4.3453489e+03 5.7225953e+01 3.4558984e+03 - -4.3461369e+03 0.0000000e+00 3.4556338e+03 - -4.3453489e+03 -5.7225953e+01 3.4558984e+03 - -4.3429828e+03 -1.1451747e+02 3.4566918e+03 - -4.3390326e+03 -1.7194011e+02 3.4580120e+03 - -4.3334877e+03 -2.2955941e+02 3.4598556e+03 - -4.3263337e+03 -2.8744082e+02 3.4622180e+03 - -4.3175521e+03 -3.4564974e+02 3.4650932e+03 - -4.3071203e+03 -4.0425136e+02 3.4684735e+03 - -4.2950116e+03 -4.6331065e+02 3.4723497e+03 - -4.2811956e+03 -5.2289216e+02 3.4767108e+03 - -4.2656379e+03 -5.8305989e+02 3.4815441e+03 - -4.2483005e+03 -6.4387706e+02 3.4868346e+03 - -4.2291420e+03 -7.0540583e+02 3.4925655e+03 - -4.2081177e+03 -7.6770696e+02 3.4987174e+03 - -4.1851798e+03 -8.3083940e+02 3.5052685e+03 - -4.1602779e+03 -8.9485977e+02 3.5121942e+03 - -4.1333597e+03 -9.5982183e+02 3.5194672e+03 - -4.1043710e+03 -1.0257758e+03 3.5270569e+03 - -4.0732565e+03 -1.0927675e+03 3.5349295e+03 - -4.0399610e+03 -1.1608376e+03 3.5430479e+03 - -4.0044297e+03 -1.2300207e+03 3.5513714e+03 - -3.9666094e+03 -1.3003442e+03 3.5598555e+03 - -3.9264497e+03 -1.3718269e+03 3.5684524e+03 - -3.8839043e+03 -1.4444784e+03 3.5771103e+03 - -3.8389323e+03 -1.5182973e+03 3.5857740e+03 - -3.7914998e+03 -1.5932701e+03 3.5943849e+03 - -3.7415814e+03 -1.6693703e+03 3.6028815e+03 - -3.6891620e+03 -1.7465567e+03 3.6111994e+03 - -3.6342384e+03 -1.8247725e+03 3.6192724e+03 - -3.5768210e+03 -1.9039447e+03 3.6270326e+03 - -3.5169353e+03 -1.9839833e+03 3.6344117e+03 - -3.4546235e+03 -2.0647808e+03 3.6413417e+03 - -3.3899454e+03 -2.1462124e+03 3.6477557e+03 - -3.3229791e+03 -2.2281367e+03 3.6535898e+03 - -3.2538222e+03 -2.3103961e+03 3.6587832e+03 - -3.1825908e+03 -2.3928186e+03 3.6632806e+03 - -3.1094197e+03 -2.4752195e+03 3.6670324e+03 - -3.0344611e+03 -2.5574036e+03 3.6699964e+03 - -2.9578832e+03 -2.6391683e+03 3.6721386e+03 - -2.8798678e+03 -2.7203061e+03 3.6734341e+03 - -2.8006083e+03 -2.8006083e+03 3.6738676e+03 - -2.7203061e+03 -2.8798678e+03 3.6734341e+03 - -2.6391683e+03 -2.9578832e+03 3.6721386e+03 - -2.5574036e+03 -3.0344611e+03 3.6699964e+03 - -2.4752195e+03 -3.1094197e+03 3.6670324e+03 - -2.3928186e+03 -3.1825908e+03 3.6632806e+03 - -2.3103961e+03 -3.2538222e+03 3.6587832e+03 - -2.2281367e+03 -3.3229791e+03 3.6535898e+03 - -2.1462124e+03 -3.3899454e+03 3.6477557e+03 - -2.0647808e+03 -3.4546235e+03 3.6413417e+03 - -1.9839833e+03 -3.5169353e+03 3.6344117e+03 - -1.9039447e+03 -3.5768210e+03 3.6270326e+03 - -1.8247725e+03 -3.6342384e+03 3.6192724e+03 - -1.7465567e+03 -3.6891620e+03 3.6111994e+03 - -1.6693703e+03 -3.7415814e+03 3.6028815e+03 - -1.5932701e+03 -3.7914998e+03 3.5943849e+03 - -1.5182973e+03 -3.8389323e+03 3.5857740e+03 - -1.4444784e+03 -3.8839043e+03 3.5771103e+03 - -1.3718269e+03 -3.9264497e+03 3.5684524e+03 - -1.3003442e+03 -3.9666094e+03 3.5598555e+03 - -1.2300207e+03 -4.0044297e+03 3.5513714e+03 - -1.1608376e+03 -4.0399610e+03 3.5430479e+03 - -1.0927675e+03 -4.0732565e+03 3.5349295e+03 - -1.0257758e+03 -4.1043710e+03 3.5270569e+03 - -9.5982183e+02 -4.1333597e+03 3.5194672e+03 - -8.9485977e+02 -4.1602779e+03 3.5121942e+03 - -8.3083940e+02 -4.1851798e+03 3.5052685e+03 - -7.6770696e+02 -4.2081177e+03 3.4987174e+03 - -7.0540583e+02 -4.2291420e+03 3.4925655e+03 - -6.4387706e+02 -4.2483005e+03 3.4868346e+03 - -5.8305989e+02 -4.2656379e+03 3.4815441e+03 - -5.2289216e+02 -4.2811956e+03 3.4767108e+03 - -4.6331065e+02 -4.2950116e+03 3.4723497e+03 - -4.0425136e+02 -4.3071203e+03 3.4684735e+03 - -3.4564974e+02 -4.3175521e+03 3.4650932e+03 - -2.8744082e+02 -4.3263337e+03 3.4622180e+03 - -2.2955941e+02 -4.3334877e+03 3.4598556e+03 - -1.7194011e+02 -4.3390326e+03 3.4580120e+03 - -1.1451747e+02 -4.3429828e+03 3.4566918e+03 - -5.7225953e+01 -4.3453489e+03 3.4558984e+03 - -4.8134273e-09 -4.3461369e+03 3.4556338e+03 - 5.7225953e+01 -4.3453489e+03 3.4558984e+03 - 1.1451747e+02 -4.3429828e+03 3.4566918e+03 - 1.7194011e+02 -4.3390326e+03 3.4580120e+03 - 2.2955941e+02 -4.3334877e+03 3.4598556e+03 - 2.8744082e+02 -4.3263337e+03 3.4622180e+03 - 3.4564974e+02 -4.3175521e+03 3.4650932e+03 - 4.0425136e+02 -4.3071203e+03 3.4684735e+03 - 4.6331065e+02 -4.2950116e+03 3.4723497e+03 - 5.2289216e+02 -4.2811956e+03 3.4767108e+03 - 5.8305989e+02 -4.2656379e+03 3.4815441e+03 - 6.4387706e+02 -4.2483005e+03 3.4868346e+03 - 7.0540583e+02 -4.2291420e+03 3.4925655e+03 - 7.6770696e+02 -4.2081177e+03 3.4987174e+03 - 8.3083940e+02 -4.1851798e+03 3.5052685e+03 - 8.9485977e+02 -4.1602779e+03 3.5121942e+03 - 9.5982183e+02 -4.1333597e+03 3.5194672e+03 - 1.0257758e+03 -4.1043710e+03 3.5270569e+03 - 1.0927675e+03 -4.0732565e+03 3.5349295e+03 - 1.1608376e+03 -4.0399610e+03 3.5430479e+03 - 1.2300207e+03 -4.0044297e+03 3.5513714e+03 - 1.3003442e+03 -3.9666094e+03 3.5598555e+03 - 1.3718269e+03 -3.9264497e+03 3.5684524e+03 - 1.4444784e+03 -3.8839043e+03 3.5771103e+03 - 1.5182973e+03 -3.8389323e+03 3.5857740e+03 - 1.5932701e+03 -3.7914998e+03 3.5943849e+03 - 1.6693703e+03 -3.7415814e+03 3.6028815e+03 - 1.7465567e+03 -3.6891620e+03 3.6111994e+03 - 1.8247725e+03 -3.6342384e+03 3.6192724e+03 - 1.9039447e+03 -3.5768210e+03 3.6270326e+03 - 1.9839833e+03 -3.5169353e+03 3.6344117e+03 - 2.0647808e+03 -3.4546235e+03 3.6413417e+03 - 2.1462124e+03 -3.3899454e+03 3.6477557e+03 - 2.2281367e+03 -3.3229791e+03 3.6535898e+03 - 2.3103961e+03 -3.2538222e+03 3.6587832e+03 - 2.3928186e+03 -3.1825908e+03 3.6632806e+03 - 2.4752195e+03 -3.1094197e+03 3.6670324e+03 - 2.5574036e+03 -3.0344611e+03 3.6699964e+03 - 2.6391683e+03 -2.9578832e+03 3.6721386e+03 - 2.7203061e+03 -2.8798678e+03 3.6734341e+03 - 2.8006083e+03 -2.8006083e+03 3.6738676e+03 - 2.8798678e+03 -2.7203061e+03 3.6734341e+03 - 2.9578832e+03 -2.6391683e+03 3.6721386e+03 - 3.0344611e+03 -2.5574036e+03 3.6699964e+03 - 3.1094197e+03 -2.4752195e+03 3.6670324e+03 - 3.1825908e+03 -2.3928186e+03 3.6632806e+03 - 3.2538222e+03 -2.3103961e+03 3.6587832e+03 - 3.3229791e+03 -2.2281367e+03 3.6535898e+03 - 3.3899454e+03 -2.1462124e+03 3.6477557e+03 - 3.4546235e+03 -2.0647808e+03 3.6413417e+03 - 3.5169353e+03 -1.9839833e+03 3.6344117e+03 - 3.5768210e+03 -1.9039447e+03 3.6270326e+03 - 3.6342384e+03 -1.8247725e+03 3.6192724e+03 - 3.6891620e+03 -1.7465567e+03 3.6111994e+03 - 3.7415814e+03 -1.6693703e+03 3.6028815e+03 - 3.7914998e+03 -1.5932701e+03 3.5943849e+03 - 3.8389323e+03 -1.5182973e+03 3.5857740e+03 - 3.8839043e+03 -1.4444784e+03 3.5771103e+03 - 3.9264497e+03 -1.3718269e+03 3.5684524e+03 - 3.9666094e+03 -1.3003442e+03 3.5598555e+03 - 4.0044297e+03 -1.2300207e+03 3.5513714e+03 - 4.0399610e+03 -1.1608376e+03 3.5430479e+03 - 4.0732565e+03 -1.0927675e+03 3.5349295e+03 - 4.1043710e+03 -1.0257758e+03 3.5270569e+03 - 4.1333597e+03 -9.5982183e+02 3.5194672e+03 - 4.1602779e+03 -8.9485977e+02 3.5121942e+03 - 4.1851798e+03 -8.3083940e+02 3.5052685e+03 - 4.2081177e+03 -7.6770696e+02 3.4987174e+03 - 4.2291420e+03 -7.0540583e+02 3.4925655e+03 - 4.2483005e+03 -6.4387706e+02 3.4868346e+03 - 4.2656379e+03 -5.8305989e+02 3.4815441e+03 - 4.2811956e+03 -5.2289216e+02 3.4767108e+03 - 4.2950116e+03 -4.6331065e+02 3.4723497e+03 - 4.3071203e+03 -4.0425136e+02 3.4684735e+03 - 4.3175521e+03 -3.4564974e+02 3.4650932e+03 - 4.3263337e+03 -2.8744082e+02 3.4622180e+03 - 4.3334877e+03 -2.2955941e+02 3.4598556e+03 - 4.3390326e+03 -1.7194011e+02 3.4580120e+03 - 4.3429828e+03 -1.1451747e+02 3.4566918e+03 - 4.3453489e+03 -5.7225953e+01 3.4558984e+03 - 4.3461369e+03 4.8134273e-09 3.4556338e+03 - 4.3883234e+03 0.0000000e+00 3.4052446e+03 - 4.3875368e+03 5.7136731e+01 3.4055195e+03 - 4.3851748e+03 1.1434095e+02 3.4063433e+03 - 4.3812310e+03 1.7168016e+02 3.4077143e+03 - 4.3756945e+03 2.2922186e+02 3.4096292e+03 - 4.3685503e+03 2.8703360e+02 3.4120835e+03 - 4.3597790e+03 3.4518286e+02 3.4150711e+03 - 4.3493568e+03 4.0373711e+02 3.4185845e+03 - 4.3372561e+03 4.6276366e+02 3.4226147e+03 - 4.3234448e+03 5.2232957e+02 3.4271508e+03 - 4.3078869e+03 5.8250152e+02 3.4321800e+03 - 4.2905424e+03 6.4334556e+02 3.4376876e+03 - 4.2713676e+03 7.0492688e+02 3.4436567e+03 - 4.2503153e+03 7.6730946e+02 3.4500679e+03 - 4.2273349e+03 8.3055565e+02 3.4568992e+03 - 4.2023729e+03 8.9472571e+02 3.4641259e+03 - 4.1753734e+03 9.5987720e+02 3.4717200e+03 - 4.1462785e+03 1.0260643e+03 3.4796507e+03 - 4.1150290e+03 1.0933369e+03 3.4878833e+03 - 4.0815649e+03 1.1617400e+03 3.4963798e+03 - 4.0458270e+03 1.2313124e+03 3.5050982e+03 - 4.0077571e+03 1.3020855e+03 3.5139927e+03 - 3.9672997e+03 1.3740826e+03 3.5230135e+03 - 3.9244032e+03 1.4473171e+03 3.5321066e+03 - 3.8790215e+03 1.5217911e+03 3.5412143e+03 - 3.8311154e+03 1.5974944e+03 3.5502752e+03 - 3.7806548e+03 1.6744030e+03 3.5592242e+03 - 3.7276198e+03 1.7524773e+03 3.5679933e+03 - 3.6720031e+03 1.8316617e+03 3.5765122e+03 - 3.6138120e+03 1.9118829e+03 3.5847085e+03 - 3.5530694e+03 1.9930495e+03 3.5925092e+03 - 3.4898162e+03 2.0750512e+03 3.5998413e+03 - 3.4241120e+03 2.1577593e+03 3.6066330e+03 - 3.3560365e+03 2.2410266e+03 3.6128151e+03 - 3.2856900e+03 2.3246885e+03 3.6183221e+03 - 3.2131931e+03 2.4085645e+03 3.6230938e+03 - 3.1386867e+03 2.4924601e+03 3.6270765e+03 - 3.0623308e+03 2.5761692e+03 3.6302242e+03 - 2.9843025e+03 2.6594775e+03 3.6324999e+03 - 2.9047941e+03 2.7421650e+03 3.6338764e+03 - 2.8240104e+03 2.8240104e+03 3.6343371e+03 - 2.7421650e+03 2.9047941e+03 3.6338764e+03 - 2.6594775e+03 2.9843025e+03 3.6324999e+03 - 2.5761692e+03 3.0623308e+03 3.6302242e+03 - 2.4924601e+03 3.1386867e+03 3.6270765e+03 - 2.4085645e+03 3.2131931e+03 3.6230938e+03 - 2.3246885e+03 3.2856900e+03 3.6183221e+03 - 2.2410266e+03 3.3560365e+03 3.6128151e+03 - 2.1577593e+03 3.4241120e+03 3.6066330e+03 - 2.0750512e+03 3.4898162e+03 3.5998413e+03 - 1.9930495e+03 3.5530694e+03 3.5925092e+03 - 1.9118829e+03 3.6138120e+03 3.5847085e+03 - 1.8316617e+03 3.6720031e+03 3.5765122e+03 - 1.7524773e+03 3.7276198e+03 3.5679933e+03 - 1.6744030e+03 3.7806548e+03 3.5592242e+03 - 1.5974944e+03 3.8311154e+03 3.5502752e+03 - 1.5217911e+03 3.8790215e+03 3.5412143e+03 - 1.4473171e+03 3.9244032e+03 3.5321066e+03 - 1.3740826e+03 3.9672997e+03 3.5230135e+03 - 1.3020855e+03 4.0077571e+03 3.5139927e+03 - 1.2313124e+03 4.0458270e+03 3.5050982e+03 - 1.1617400e+03 4.0815649e+03 3.4963798e+03 - 1.0933369e+03 4.1150290e+03 3.4878833e+03 - 1.0260643e+03 4.1462785e+03 3.4796507e+03 - 9.5987720e+02 4.1753734e+03 3.4717200e+03 - 8.9472571e+02 4.2023729e+03 3.4641259e+03 - 8.3055565e+02 4.2273349e+03 3.4568992e+03 - 7.6730946e+02 4.2503153e+03 3.4500679e+03 - 7.0492688e+02 4.2713676e+03 3.4436567e+03 - 6.4334556e+02 4.2905424e+03 3.4376876e+03 - 5.8250152e+02 4.3078869e+03 3.4321800e+03 - 5.2232957e+02 4.3234448e+03 3.4271508e+03 - 4.6276366e+02 4.3372561e+03 3.4226147e+03 - 4.0373711e+02 4.3493568e+03 3.4185845e+03 - 3.4518286e+02 4.3597790e+03 3.4150711e+03 - 2.8703360e+02 4.3685503e+03 3.4120835e+03 - 2.2922186e+02 4.3756945e+03 3.4096292e+03 - 1.7168016e+02 4.3812310e+03 3.4077143e+03 - 1.1434095e+02 4.3851748e+03 3.4063433e+03 - 5.7136731e+01 4.3875368e+03 3.4055195e+03 - 0.0000000e+00 4.3883234e+03 3.4052446e+03 - -5.7136731e+01 4.3875368e+03 3.4055195e+03 - -1.1434095e+02 4.3851748e+03 3.4063433e+03 - -1.7168016e+02 4.3812310e+03 3.4077143e+03 - -2.2922186e+02 4.3756945e+03 3.4096292e+03 - -2.8703360e+02 4.3685503e+03 3.4120835e+03 - -3.4518286e+02 4.3597790e+03 3.4150711e+03 - -4.0373711e+02 4.3493568e+03 3.4185845e+03 - -4.6276366e+02 4.3372561e+03 3.4226147e+03 - -5.2232957e+02 4.3234448e+03 3.4271508e+03 - -5.8250152e+02 4.3078869e+03 3.4321800e+03 - -6.4334556e+02 4.2905424e+03 3.4376876e+03 - -7.0492688e+02 4.2713676e+03 3.4436567e+03 - -7.6730946e+02 4.2503153e+03 3.4500679e+03 - -8.3055565e+02 4.2273349e+03 3.4568992e+03 - -8.9472571e+02 4.2023729e+03 3.4641259e+03 - -9.5987720e+02 4.1753734e+03 3.4717200e+03 - -1.0260643e+03 4.1462785e+03 3.4796507e+03 - -1.0933369e+03 4.1150290e+03 3.4878833e+03 - -1.1617400e+03 4.0815649e+03 3.4963798e+03 - -1.2313124e+03 4.0458270e+03 3.5050982e+03 - -1.3020855e+03 4.0077571e+03 3.5139927e+03 - -1.3740826e+03 3.9672997e+03 3.5230135e+03 - -1.4473171e+03 3.9244032e+03 3.5321066e+03 - -1.5217911e+03 3.8790215e+03 3.5412143e+03 - -1.5974944e+03 3.8311154e+03 3.5502752e+03 - -1.6744030e+03 3.7806548e+03 3.5592242e+03 - -1.7524773e+03 3.7276198e+03 3.5679933e+03 - -1.8316617e+03 3.6720031e+03 3.5765122e+03 - -1.9118829e+03 3.6138120e+03 3.5847085e+03 - -1.9930495e+03 3.5530694e+03 3.5925092e+03 - -2.0750512e+03 3.4898162e+03 3.5998413e+03 - -2.1577593e+03 3.4241120e+03 3.6066330e+03 - -2.2410266e+03 3.3560365e+03 3.6128151e+03 - -2.3246885e+03 3.2856900e+03 3.6183221e+03 - -2.4085645e+03 3.2131931e+03 3.6230938e+03 - -2.4924601e+03 3.1386867e+03 3.6270765e+03 - -2.5761692e+03 3.0623308e+03 3.6302242e+03 - -2.6594775e+03 2.9843025e+03 3.6324999e+03 - -2.7421650e+03 2.9047941e+03 3.6338764e+03 - -2.8240104e+03 2.8240104e+03 3.6343371e+03 - -2.9047941e+03 2.7421650e+03 3.6338764e+03 - -2.9843025e+03 2.6594775e+03 3.6324999e+03 - -3.0623308e+03 2.5761692e+03 3.6302242e+03 - -3.1386867e+03 2.4924601e+03 3.6270765e+03 - -3.2131931e+03 2.4085645e+03 3.6230938e+03 - -3.2856900e+03 2.3246885e+03 3.6183221e+03 - -3.3560365e+03 2.2410266e+03 3.6128151e+03 - -3.4241120e+03 2.1577593e+03 3.6066330e+03 - -3.4898162e+03 2.0750512e+03 3.5998413e+03 - -3.5530694e+03 1.9930495e+03 3.5925092e+03 - -3.6138120e+03 1.9118829e+03 3.5847085e+03 - -3.6720031e+03 1.8316617e+03 3.5765122e+03 - -3.7276198e+03 1.7524773e+03 3.5679933e+03 - -3.7806548e+03 1.6744030e+03 3.5592242e+03 - -3.8311154e+03 1.5974944e+03 3.5502752e+03 - -3.8790215e+03 1.5217911e+03 3.5412143e+03 - -3.9244032e+03 1.4473171e+03 3.5321066e+03 - -3.9672997e+03 1.3740826e+03 3.5230135e+03 - -4.0077571e+03 1.3020855e+03 3.5139927e+03 - -4.0458270e+03 1.2313124e+03 3.5050982e+03 - -4.0815649e+03 1.1617400e+03 3.4963798e+03 - -4.1150290e+03 1.0933369e+03 3.4878833e+03 - -4.1462785e+03 1.0260643e+03 3.4796507e+03 - -4.1753734e+03 9.5987720e+02 3.4717200e+03 - -4.2023729e+03 8.9472571e+02 3.4641259e+03 - -4.2273349e+03 8.3055565e+02 3.4568992e+03 - -4.2503153e+03 7.6730946e+02 3.4500679e+03 - -4.2713676e+03 7.0492688e+02 3.4436567e+03 - -4.2905424e+03 6.4334556e+02 3.4376876e+03 - -4.3078869e+03 5.8250152e+02 3.4321800e+03 - -4.3234448e+03 5.2232957e+02 3.4271508e+03 - -4.3372561e+03 4.6276366e+02 3.4226147e+03 - -4.3493568e+03 4.0373711e+02 3.4185845e+03 - -4.3597790e+03 3.4518286e+02 3.4150711e+03 - -4.3685503e+03 2.8703360e+02 3.4120835e+03 - -4.3756945e+03 2.2922186e+02 3.4096292e+03 - -4.3812310e+03 1.7168016e+02 3.4077143e+03 - -4.3851748e+03 1.1434095e+02 3.4063433e+03 - -4.3875368e+03 5.7136731e+01 3.4055195e+03 - -4.3883234e+03 0.0000000e+00 3.4052446e+03 - -4.3875368e+03 -5.7136731e+01 3.4055195e+03 - -4.3851748e+03 -1.1434095e+02 3.4063433e+03 - -4.3812310e+03 -1.7168016e+02 3.4077143e+03 - -4.3756945e+03 -2.2922186e+02 3.4096292e+03 - -4.3685503e+03 -2.8703360e+02 3.4120835e+03 - -4.3597790e+03 -3.4518286e+02 3.4150711e+03 - -4.3493568e+03 -4.0373711e+02 3.4185845e+03 - -4.3372561e+03 -4.6276366e+02 3.4226147e+03 - -4.3234448e+03 -5.2232957e+02 3.4271508e+03 - -4.3078869e+03 -5.8250152e+02 3.4321800e+03 - -4.2905424e+03 -6.4334556e+02 3.4376876e+03 - -4.2713676e+03 -7.0492688e+02 3.4436567e+03 - -4.2503153e+03 -7.6730946e+02 3.4500679e+03 - -4.2273349e+03 -8.3055565e+02 3.4568992e+03 - -4.2023729e+03 -8.9472571e+02 3.4641259e+03 - -4.1753734e+03 -9.5987720e+02 3.4717200e+03 - -4.1462785e+03 -1.0260643e+03 3.4796507e+03 - -4.1150290e+03 -1.0933369e+03 3.4878833e+03 - -4.0815649e+03 -1.1617400e+03 3.4963798e+03 - -4.0458270e+03 -1.2313124e+03 3.5050982e+03 - -4.0077571e+03 -1.3020855e+03 3.5139927e+03 - -3.9672997e+03 -1.3740826e+03 3.5230135e+03 - -3.9244032e+03 -1.4473171e+03 3.5321066e+03 - -3.8790215e+03 -1.5217911e+03 3.5412143e+03 - -3.8311154e+03 -1.5974944e+03 3.5502752e+03 - -3.7806548e+03 -1.6744030e+03 3.5592242e+03 - -3.7276198e+03 -1.7524773e+03 3.5679933e+03 - -3.6720031e+03 -1.8316617e+03 3.5765122e+03 - -3.6138120e+03 -1.9118829e+03 3.5847085e+03 - -3.5530694e+03 -1.9930495e+03 3.5925092e+03 - -3.4898162e+03 -2.0750512e+03 3.5998413e+03 - -3.4241120e+03 -2.1577593e+03 3.6066330e+03 - -3.3560365e+03 -2.2410266e+03 3.6128151e+03 - -3.2856900e+03 -2.3246885e+03 3.6183221e+03 - -3.2131931e+03 -2.4085645e+03 3.6230938e+03 - -3.1386867e+03 -2.4924601e+03 3.6270765e+03 - -3.0623308e+03 -2.5761692e+03 3.6302242e+03 - -2.9843025e+03 -2.6594775e+03 3.6324999e+03 - -2.9047941e+03 -2.7421650e+03 3.6338764e+03 - -2.8240104e+03 -2.8240104e+03 3.6343371e+03 - -2.7421650e+03 -2.9047941e+03 3.6338764e+03 - -2.6594775e+03 -2.9843025e+03 3.6324999e+03 - -2.5761692e+03 -3.0623308e+03 3.6302242e+03 - -2.4924601e+03 -3.1386867e+03 3.6270765e+03 - -2.4085645e+03 -3.2131931e+03 3.6230938e+03 - -2.3246885e+03 -3.2856900e+03 3.6183221e+03 - -2.2410266e+03 -3.3560365e+03 3.6128151e+03 - -2.1577593e+03 -3.4241120e+03 3.6066330e+03 - -2.0750512e+03 -3.4898162e+03 3.5998413e+03 - -1.9930495e+03 -3.5530694e+03 3.5925092e+03 - -1.9118829e+03 -3.6138120e+03 3.5847085e+03 - -1.8316617e+03 -3.6720031e+03 3.5765122e+03 - -1.7524773e+03 -3.7276198e+03 3.5679933e+03 - -1.6744030e+03 -3.7806548e+03 3.5592242e+03 - -1.5974944e+03 -3.8311154e+03 3.5502752e+03 - -1.5217911e+03 -3.8790215e+03 3.5412143e+03 - -1.4473171e+03 -3.9244032e+03 3.5321066e+03 - -1.3740826e+03 -3.9672997e+03 3.5230135e+03 - -1.3020855e+03 -4.0077571e+03 3.5139927e+03 - -1.2313124e+03 -4.0458270e+03 3.5050982e+03 - -1.1617400e+03 -4.0815649e+03 3.4963798e+03 - -1.0933369e+03 -4.1150290e+03 3.4878833e+03 - -1.0260643e+03 -4.1462785e+03 3.4796507e+03 - -9.5987720e+02 -4.1753734e+03 3.4717200e+03 - -8.9472571e+02 -4.2023729e+03 3.4641259e+03 - -8.3055565e+02 -4.2273349e+03 3.4568992e+03 - -7.6730946e+02 -4.2503153e+03 3.4500679e+03 - -7.0492688e+02 -4.2713676e+03 3.4436567e+03 - -6.4334556e+02 -4.2905424e+03 3.4376876e+03 - -5.8250152e+02 -4.3078869e+03 3.4321800e+03 - -5.2232957e+02 -4.3234448e+03 3.4271508e+03 - -4.6276366e+02 -4.3372561e+03 3.4226147e+03 - -4.0373711e+02 -4.3493568e+03 3.4185845e+03 - -3.4518286e+02 -4.3597790e+03 3.4150711e+03 - -2.8703360e+02 -4.3685503e+03 3.4120835e+03 - -2.2922186e+02 -4.3756945e+03 3.4096292e+03 - -1.7168016e+02 -4.3812310e+03 3.4077143e+03 - -1.1434095e+02 -4.3851748e+03 3.4063433e+03 - -5.7136731e+01 -4.3875368e+03 3.4055195e+03 - 0.0000000e+00 -4.3883234e+03 3.4052446e+03 - 5.7136731e+01 -4.3875368e+03 3.4055195e+03 - 1.1434095e+02 -4.3851748e+03 3.4063433e+03 - 1.7168016e+02 -4.3812310e+03 3.4077143e+03 - 2.2922186e+02 -4.3756945e+03 3.4096292e+03 - 2.8703360e+02 -4.3685503e+03 3.4120835e+03 - 3.4518286e+02 -4.3597790e+03 3.4150711e+03 - 4.0373711e+02 -4.3493568e+03 3.4185845e+03 - 4.6276366e+02 -4.3372561e+03 3.4226147e+03 - 5.2232957e+02 -4.3234448e+03 3.4271508e+03 - 5.8250152e+02 -4.3078869e+03 3.4321800e+03 - 6.4334556e+02 -4.2905424e+03 3.4376876e+03 - 7.0492688e+02 -4.2713676e+03 3.4436567e+03 - 7.6730946e+02 -4.2503153e+03 3.4500679e+03 - 8.3055565e+02 -4.2273349e+03 3.4568992e+03 - 8.9472571e+02 -4.2023729e+03 3.4641259e+03 - 9.5987720e+02 -4.1753734e+03 3.4717200e+03 - 1.0260643e+03 -4.1462785e+03 3.4796507e+03 - 1.0933369e+03 -4.1150290e+03 3.4878833e+03 - 1.1617400e+03 -4.0815649e+03 3.4963798e+03 - 1.2313124e+03 -4.0458270e+03 3.5050982e+03 - 1.3020855e+03 -4.0077571e+03 3.5139927e+03 - 1.3740826e+03 -3.9672997e+03 3.5230135e+03 - 1.4473171e+03 -3.9244032e+03 3.5321066e+03 - 1.5217911e+03 -3.8790215e+03 3.5412143e+03 - 1.5974944e+03 -3.8311154e+03 3.5502752e+03 - 1.6744030e+03 -3.7806548e+03 3.5592242e+03 - 1.7524773e+03 -3.7276198e+03 3.5679933e+03 - 1.8316617e+03 -3.6720031e+03 3.5765122e+03 - 1.9118829e+03 -3.6138120e+03 3.5847085e+03 - 1.9930495e+03 -3.5530694e+03 3.5925092e+03 - 2.0750512e+03 -3.4898162e+03 3.5998413e+03 - 2.1577593e+03 -3.4241120e+03 3.6066330e+03 - 2.2410266e+03 -3.3560365e+03 3.6128151e+03 - 2.3246885e+03 -3.2856900e+03 3.6183221e+03 - 2.4085645e+03 -3.2131931e+03 3.6230938e+03 - 2.4924601e+03 -3.1386867e+03 3.6270765e+03 - 2.5761692e+03 -3.0623308e+03 3.6302242e+03 - 2.6594775e+03 -2.9843025e+03 3.6324999e+03 - 2.7421650e+03 -2.9047941e+03 3.6338764e+03 - 2.8240104e+03 -2.8240104e+03 3.6343371e+03 - 2.9047941e+03 -2.7421650e+03 3.6338764e+03 - 2.9843025e+03 -2.6594775e+03 3.6324999e+03 - 3.0623308e+03 -2.5761692e+03 3.6302242e+03 - 3.1386867e+03 -2.4924601e+03 3.6270765e+03 - 3.2131931e+03 -2.4085645e+03 3.6230938e+03 - 3.2856900e+03 -2.3246885e+03 3.6183221e+03 - 3.3560365e+03 -2.2410266e+03 3.6128151e+03 - 3.4241120e+03 -2.1577593e+03 3.6066330e+03 - 3.4898162e+03 -2.0750512e+03 3.5998413e+03 - 3.5530694e+03 -1.9930495e+03 3.5925092e+03 - 3.6138120e+03 -1.9118829e+03 3.5847085e+03 - 3.6720031e+03 -1.8316617e+03 3.5765122e+03 - 3.7276198e+03 -1.7524773e+03 3.5679933e+03 - 3.7806548e+03 -1.6744030e+03 3.5592242e+03 - 3.8311154e+03 -1.5974944e+03 3.5502752e+03 - 3.8790215e+03 -1.5217911e+03 3.5412143e+03 - 3.9244032e+03 -1.4473171e+03 3.5321066e+03 - 3.9672997e+03 -1.3740826e+03 3.5230135e+03 - 4.0077571e+03 -1.3020855e+03 3.5139927e+03 - 4.0458270e+03 -1.2313124e+03 3.5050982e+03 - 4.0815649e+03 -1.1617400e+03 3.4963798e+03 - 4.1150290e+03 -1.0933369e+03 3.4878833e+03 - 4.1462785e+03 -1.0260643e+03 3.4796507e+03 - 4.1753734e+03 -9.5987720e+02 3.4717200e+03 - 4.2023729e+03 -8.9472571e+02 3.4641259e+03 - 4.2273349e+03 -8.3055565e+02 3.4568992e+03 - 4.2503153e+03 -7.6730946e+02 3.4500679e+03 - 4.2713676e+03 -7.0492688e+02 3.4436567e+03 - 4.2905424e+03 -6.4334556e+02 3.4376876e+03 - 4.3078869e+03 -5.8250152e+02 3.4321800e+03 - 4.3234448e+03 -5.2232957e+02 3.4271508e+03 - 4.3372561e+03 -4.6276366e+02 3.4226147e+03 - 4.3493568e+03 -4.0373711e+02 3.4185845e+03 - 4.3597790e+03 -3.4518286e+02 3.4150711e+03 - 4.3685503e+03 -2.8703360e+02 3.4120835e+03 - 4.3756945e+03 -2.2922186e+02 3.4096292e+03 - 4.3812310e+03 -1.7168016e+02 3.4077143e+03 - 4.3851748e+03 -1.1434095e+02 3.4063433e+03 - 4.3875368e+03 -5.7136731e+01 3.4055195e+03 - 4.3883234e+03 4.8134273e-09 3.4052446e+03 - 4.4299515e+03 0.0000000e+00 3.3534909e+03 - 4.4291667e+03 5.7032156e+01 3.3537759e+03 - 4.4268104e+03 1.1413365e+02 3.3546303e+03 - 4.4228756e+03 1.7137386e+02 3.3560523e+03 - 4.4173512e+03 2.2882220e+02 3.3580386e+03 - 4.4102214e+03 2.8654820e+02 3.3605849e+03 - 4.4014660e+03 3.4462143e+02 3.3636852e+03 - 4.3910605e+03 4.0311153e+02 3.3673323e+03 - 4.3789757e+03 4.6208813e+02 3.3715171e+03 - 4.3651781e+03 5.2162077e+02 3.3762290e+03 - 4.3496302e+03 5.8177874e+02 3.3814555e+03 - 4.3322898e+03 6.4263094e+02 3.3871818e+03 - 4.3131111e+03 7.0424558e+02 3.3933911e+03 - 4.2920443e+03 7.6668988e+02 3.4000640e+03 - 4.2690360e+03 8.3002966e+02 3.4071785e+03 - 4.2440295e+03 8.9432884e+02 3.4147098e+03 - 4.2169654e+03 9.5964888e+02 3.4226296e+03 - 4.1877818e+03 1.0260480e+03 3.4309065e+03 - 4.1564154e+03 1.0935805e+03 3.4395053e+03 - 4.1228017e+03 1.1622956e+03 3.4483870e+03 - 4.0868766e+03 1.2322367e+03 3.4575085e+03 - 4.0485767e+03 1.3034397e+03 3.4668225e+03 - 4.0078412e+03 1.3759322e+03 3.4762775e+03 - 3.9646130e+03 1.4497319e+03 3.4858173e+03 - 3.9188403e+03 1.5248448e+03 3.4953817e+03 - 3.8704786e+03 1.6012644e+03 3.5049061e+03 - 3.8194921e+03 1.6789693e+03 3.5143223e+03 - 3.7658561e+03 1.7579224e+03 3.5235582e+03 - 3.7095590e+03 1.8380691e+03 3.5325392e+03 - 3.6506040e+03 1.9193363e+03 3.5411884e+03 - 3.5890115e+03 2.0016313e+03 3.5494276e+03 - 3.5248205e+03 2.0848414e+03 3.5571787e+03 - 3.4580904e+03 2.1688338e+03 3.5643646e+03 - 3.3889021e+03 2.2534555e+03 3.5709104e+03 - 3.3173585e+03 2.3385348e+03 3.5767456e+03 - 3.2435850e+03 2.4238822e+03 3.5818048e+03 - 3.1677287e+03 2.5092931e+03 3.5860297e+03 - 3.0899575e+03 2.5945501e+03 3.5893703e+03 - 3.0104583e+03 2.6794261e+03 3.5917863e+03 - 2.9294342e+03 2.7636884e+03 3.5932479e+03 - 2.8471020e+03 2.8471020e+03 3.5937372e+03 - 2.7636884e+03 2.9294342e+03 3.5932479e+03 - 2.6794261e+03 3.0104583e+03 3.5917863e+03 - 2.5945501e+03 3.0899575e+03 3.5893703e+03 - 2.5092931e+03 3.1677287e+03 3.5860297e+03 - 2.4238822e+03 3.2435850e+03 3.5818048e+03 - 2.3385348e+03 3.3173585e+03 3.5767456e+03 - 2.2534555e+03 3.3889021e+03 3.5709104e+03 - 2.1688338e+03 3.4580904e+03 3.5643646e+03 - 2.0848414e+03 3.5248205e+03 3.5571787e+03 - 2.0016313e+03 3.5890115e+03 3.5494276e+03 - 1.9193363e+03 3.6506040e+03 3.5411884e+03 - 1.8380691e+03 3.7095590e+03 3.5325392e+03 - 1.7579224e+03 3.7658561e+03 3.5235582e+03 - 1.6789693e+03 3.8194921e+03 3.5143223e+03 - 1.6012644e+03 3.8704786e+03 3.5049061e+03 - 1.5248448e+03 3.9188403e+03 3.4953817e+03 - 1.4497319e+03 3.9646130e+03 3.4858173e+03 - 1.3759322e+03 4.0078412e+03 3.4762775e+03 - 1.3034397e+03 4.0485767e+03 3.4668225e+03 - 1.2322367e+03 4.0868766e+03 3.4575085e+03 - 1.1622956e+03 4.1228017e+03 3.4483870e+03 - 1.0935805e+03 4.1564154e+03 3.4395053e+03 - 1.0260480e+03 4.1877818e+03 3.4309065e+03 - 9.5964888e+02 4.2169654e+03 3.4226296e+03 - 8.9432884e+02 4.2440295e+03 3.4147098e+03 - 8.3002966e+02 4.2690360e+03 3.4071785e+03 - 7.6668988e+02 4.2920443e+03 3.4000640e+03 - 7.0424558e+02 4.3131111e+03 3.3933911e+03 - 6.4263094e+02 4.3322898e+03 3.3871818e+03 - 5.8177874e+02 4.3496302e+03 3.3814555e+03 - 5.2162077e+02 4.3651781e+03 3.3762290e+03 - 4.6208813e+02 4.3789757e+03 3.3715171e+03 - 4.0311153e+02 4.3910605e+03 3.3673323e+03 - 3.4462143e+02 4.4014660e+03 3.3636852e+03 - 2.8654820e+02 4.4102214e+03 3.3605849e+03 - 2.2882220e+02 4.4173512e+03 3.3580386e+03 - 1.7137386e+02 4.4228756e+03 3.3560523e+03 - 1.1413365e+02 4.4268104e+03 3.3546303e+03 - 5.7032156e+01 4.4291667e+03 3.3537759e+03 - -4.8134273e-09 4.4299515e+03 3.3534909e+03 - -5.7032156e+01 4.4291667e+03 3.3537759e+03 - -1.1413365e+02 4.4268104e+03 3.3546303e+03 - -1.7137386e+02 4.4228756e+03 3.3560523e+03 - -2.2882220e+02 4.4173512e+03 3.3580386e+03 - -2.8654820e+02 4.4102214e+03 3.3605849e+03 - -3.4462143e+02 4.4014660e+03 3.3636852e+03 - -4.0311153e+02 4.3910605e+03 3.3673323e+03 - -4.6208813e+02 4.3789757e+03 3.3715171e+03 - -5.2162077e+02 4.3651781e+03 3.3762290e+03 - -5.8177874e+02 4.3496302e+03 3.3814555e+03 - -6.4263094e+02 4.3322898e+03 3.3871818e+03 - -7.0424558e+02 4.3131111e+03 3.3933911e+03 - -7.6668988e+02 4.2920443e+03 3.4000640e+03 - -8.3002966e+02 4.2690360e+03 3.4071785e+03 - -8.9432884e+02 4.2440295e+03 3.4147098e+03 - -9.5964888e+02 4.2169654e+03 3.4226296e+03 - -1.0260480e+03 4.1877818e+03 3.4309065e+03 - -1.0935805e+03 4.1564154e+03 3.4395053e+03 - -1.1622956e+03 4.1228017e+03 3.4483870e+03 - -1.2322367e+03 4.0868766e+03 3.4575085e+03 - -1.3034397e+03 4.0485767e+03 3.4668225e+03 - -1.3759322e+03 4.0078412e+03 3.4762775e+03 - -1.4497319e+03 3.9646130e+03 3.4858173e+03 - -1.5248448e+03 3.9188403e+03 3.4953817e+03 - -1.6012644e+03 3.8704786e+03 3.5049061e+03 - -1.6789693e+03 3.8194921e+03 3.5143223e+03 - -1.7579224e+03 3.7658561e+03 3.5235582e+03 - -1.8380691e+03 3.7095590e+03 3.5325392e+03 - -1.9193363e+03 3.6506040e+03 3.5411884e+03 - -2.0016313e+03 3.5890115e+03 3.5494276e+03 - -2.0848414e+03 3.5248205e+03 3.5571787e+03 - -2.1688338e+03 3.4580904e+03 3.5643646e+03 - -2.2534555e+03 3.3889021e+03 3.5709104e+03 - -2.3385348e+03 3.3173585e+03 3.5767456e+03 - -2.4238822e+03 3.2435850e+03 3.5818048e+03 - -2.5092931e+03 3.1677287e+03 3.5860297e+03 - -2.5945501e+03 3.0899575e+03 3.5893703e+03 - -2.6794261e+03 3.0104583e+03 3.5917863e+03 - -2.7636884e+03 2.9294342e+03 3.5932479e+03 - -2.8471020e+03 2.8471020e+03 3.5937372e+03 - -2.9294342e+03 2.7636884e+03 3.5932479e+03 - -3.0104583e+03 2.6794261e+03 3.5917863e+03 - -3.0899575e+03 2.5945501e+03 3.5893703e+03 - -3.1677287e+03 2.5092931e+03 3.5860297e+03 - -3.2435850e+03 2.4238822e+03 3.5818048e+03 - -3.3173585e+03 2.3385348e+03 3.5767456e+03 - -3.3889021e+03 2.2534555e+03 3.5709104e+03 - -3.4580904e+03 2.1688338e+03 3.5643646e+03 - -3.5248205e+03 2.0848414e+03 3.5571787e+03 - -3.5890115e+03 2.0016313e+03 3.5494276e+03 - -3.6506040e+03 1.9193363e+03 3.5411884e+03 - -3.7095590e+03 1.8380691e+03 3.5325392e+03 - -3.7658561e+03 1.7579224e+03 3.5235582e+03 - -3.8194921e+03 1.6789693e+03 3.5143223e+03 - -3.8704786e+03 1.6012644e+03 3.5049061e+03 - -3.9188403e+03 1.5248448e+03 3.4953817e+03 - -3.9646130e+03 1.4497319e+03 3.4858173e+03 - -4.0078412e+03 1.3759322e+03 3.4762775e+03 - -4.0485767e+03 1.3034397e+03 3.4668225e+03 - -4.0868766e+03 1.2322367e+03 3.4575085e+03 - -4.1228017e+03 1.1622956e+03 3.4483870e+03 - -4.1564154e+03 1.0935805e+03 3.4395053e+03 - -4.1877818e+03 1.0260480e+03 3.4309065e+03 - -4.2169654e+03 9.5964888e+02 3.4226296e+03 - -4.2440295e+03 8.9432884e+02 3.4147098e+03 - -4.2690360e+03 8.3002966e+02 3.4071785e+03 - -4.2920443e+03 7.6668988e+02 3.4000640e+03 - -4.3131111e+03 7.0424558e+02 3.3933911e+03 - -4.3322898e+03 6.4263094e+02 3.3871818e+03 - -4.3496302e+03 5.8177874e+02 3.3814555e+03 - -4.3651781e+03 5.2162077e+02 3.3762290e+03 - -4.3789757e+03 4.6208813e+02 3.3715171e+03 - -4.3910605e+03 4.0311153e+02 3.3673323e+03 - -4.4014660e+03 3.4462143e+02 3.3636852e+03 - -4.4102214e+03 2.8654820e+02 3.3605849e+03 - -4.4173512e+03 2.2882220e+02 3.3580386e+03 - -4.4228756e+03 1.7137386e+02 3.3560523e+03 - -4.4268104e+03 1.1413365e+02 3.3546303e+03 - -4.4291667e+03 5.7032156e+01 3.3537759e+03 - -4.4299515e+03 -4.8134273e-09 3.3534909e+03 - -4.4291667e+03 -5.7032156e+01 3.3537759e+03 - -4.4268104e+03 -1.1413365e+02 3.3546303e+03 - -4.4228756e+03 -1.7137386e+02 3.3560523e+03 - -4.4173512e+03 -2.2882220e+02 3.3580386e+03 - -4.4102214e+03 -2.8654820e+02 3.3605849e+03 - -4.4014660e+03 -3.4462143e+02 3.3636852e+03 - -4.3910605e+03 -4.0311153e+02 3.3673323e+03 - -4.3789757e+03 -4.6208813e+02 3.3715171e+03 - -4.3651781e+03 -5.2162077e+02 3.3762290e+03 - -4.3496302e+03 -5.8177874e+02 3.3814555e+03 - -4.3322898e+03 -6.4263094e+02 3.3871818e+03 - -4.3131111e+03 -7.0424558e+02 3.3933911e+03 - -4.2920443e+03 -7.6668988e+02 3.4000640e+03 - -4.2690360e+03 -8.3002966e+02 3.4071785e+03 - -4.2440295e+03 -8.9432884e+02 3.4147098e+03 - -4.2169654e+03 -9.5964888e+02 3.4226296e+03 - -4.1877818e+03 -1.0260480e+03 3.4309065e+03 - -4.1564154e+03 -1.0935805e+03 3.4395053e+03 - -4.1228017e+03 -1.1622956e+03 3.4483870e+03 - -4.0868766e+03 -1.2322367e+03 3.4575085e+03 - -4.0485767e+03 -1.3034397e+03 3.4668225e+03 - -4.0078412e+03 -1.3759322e+03 3.4762775e+03 - -3.9646130e+03 -1.4497319e+03 3.4858173e+03 - -3.9188403e+03 -1.5248448e+03 3.4953817e+03 - -3.8704786e+03 -1.6012644e+03 3.5049061e+03 - -3.8194921e+03 -1.6789693e+03 3.5143223e+03 - -3.7658561e+03 -1.7579224e+03 3.5235582e+03 - -3.7095590e+03 -1.8380691e+03 3.5325392e+03 - -3.6506040e+03 -1.9193363e+03 3.5411884e+03 - -3.5890115e+03 -2.0016313e+03 3.5494276e+03 - -3.5248205e+03 -2.0848414e+03 3.5571787e+03 - -3.4580904e+03 -2.1688338e+03 3.5643646e+03 - -3.3889021e+03 -2.2534555e+03 3.5709104e+03 - -3.3173585e+03 -2.3385348e+03 3.5767456e+03 - -3.2435850e+03 -2.4238822e+03 3.5818048e+03 - -3.1677287e+03 -2.5092931e+03 3.5860297e+03 - -3.0899575e+03 -2.5945501e+03 3.5893703e+03 - -3.0104583e+03 -2.6794261e+03 3.5917863e+03 - -2.9294342e+03 -2.7636884e+03 3.5932479e+03 - -2.8471020e+03 -2.8471020e+03 3.5937372e+03 - -2.7636884e+03 -2.9294342e+03 3.5932479e+03 - -2.6794261e+03 -3.0104583e+03 3.5917863e+03 - -2.5945501e+03 -3.0899575e+03 3.5893703e+03 - -2.5092931e+03 -3.1677287e+03 3.5860297e+03 - -2.4238822e+03 -3.2435850e+03 3.5818048e+03 - -2.3385348e+03 -3.3173585e+03 3.5767456e+03 - -2.2534555e+03 -3.3889021e+03 3.5709104e+03 - -2.1688338e+03 -3.4580904e+03 3.5643646e+03 - -2.0848414e+03 -3.5248205e+03 3.5571787e+03 - -2.0016313e+03 -3.5890115e+03 3.5494276e+03 - -1.9193363e+03 -3.6506040e+03 3.5411884e+03 - -1.8380691e+03 -3.7095590e+03 3.5325392e+03 - -1.7579224e+03 -3.7658561e+03 3.5235582e+03 - -1.6789693e+03 -3.8194921e+03 3.5143223e+03 - -1.6012644e+03 -3.8704786e+03 3.5049061e+03 - -1.5248448e+03 -3.9188403e+03 3.4953817e+03 - -1.4497319e+03 -3.9646130e+03 3.4858173e+03 - -1.3759322e+03 -4.0078412e+03 3.4762775e+03 - -1.3034397e+03 -4.0485767e+03 3.4668225e+03 - -1.2322367e+03 -4.0868766e+03 3.4575085e+03 - -1.1622956e+03 -4.1228017e+03 3.4483870e+03 - -1.0935805e+03 -4.1564154e+03 3.4395053e+03 - -1.0260480e+03 -4.1877818e+03 3.4309065e+03 - -9.5964888e+02 -4.2169654e+03 3.4226296e+03 - -8.9432884e+02 -4.2440295e+03 3.4147098e+03 - -8.3002966e+02 -4.2690360e+03 3.4071785e+03 - -7.6668988e+02 -4.2920443e+03 3.4000640e+03 - -7.0424558e+02 -4.3131111e+03 3.3933911e+03 - -6.4263094e+02 -4.3322898e+03 3.3871818e+03 - -5.8177874e+02 -4.3496302e+03 3.3814555e+03 - -5.2162077e+02 -4.3651781e+03 3.3762290e+03 - -4.6208813e+02 -4.3789757e+03 3.3715171e+03 - -4.0311153e+02 -4.3910605e+03 3.3673323e+03 - -3.4462143e+02 -4.4014660e+03 3.3636852e+03 - -2.8654820e+02 -4.4102214e+03 3.3605849e+03 - -2.2882220e+02 -4.4173512e+03 3.3580386e+03 - -1.7137386e+02 -4.4228756e+03 3.3560523e+03 - -1.1413365e+02 -4.4268104e+03 3.3546303e+03 - -5.7032156e+01 -4.4291667e+03 3.3537759e+03 - 4.8134273e-09 -4.4299515e+03 3.3534909e+03 - 5.7032156e+01 -4.4291667e+03 3.3537759e+03 - 1.1413365e+02 -4.4268104e+03 3.3546303e+03 - 1.7137386e+02 -4.4228756e+03 3.3560523e+03 - 2.2882220e+02 -4.4173512e+03 3.3580386e+03 - 2.8654820e+02 -4.4102214e+03 3.3605849e+03 - 3.4462143e+02 -4.4014660e+03 3.3636852e+03 - 4.0311153e+02 -4.3910605e+03 3.3673323e+03 - 4.6208813e+02 -4.3789757e+03 3.3715171e+03 - 5.2162077e+02 -4.3651781e+03 3.3762290e+03 - 5.8177874e+02 -4.3496302e+03 3.3814555e+03 - 6.4263094e+02 -4.3322898e+03 3.3871818e+03 - 7.0424558e+02 -4.3131111e+03 3.3933911e+03 - 7.6668988e+02 -4.2920443e+03 3.4000640e+03 - 8.3002966e+02 -4.2690360e+03 3.4071785e+03 - 8.9432884e+02 -4.2440295e+03 3.4147098e+03 - 9.5964888e+02 -4.2169654e+03 3.4226296e+03 - 1.0260480e+03 -4.1877818e+03 3.4309065e+03 - 1.0935805e+03 -4.1564154e+03 3.4395053e+03 - 1.1622956e+03 -4.1228017e+03 3.4483870e+03 - 1.2322367e+03 -4.0868766e+03 3.4575085e+03 - 1.3034397e+03 -4.0485767e+03 3.4668225e+03 - 1.3759322e+03 -4.0078412e+03 3.4762775e+03 - 1.4497319e+03 -3.9646130e+03 3.4858173e+03 - 1.5248448e+03 -3.9188403e+03 3.4953817e+03 - 1.6012644e+03 -3.8704786e+03 3.5049061e+03 - 1.6789693e+03 -3.8194921e+03 3.5143223e+03 - 1.7579224e+03 -3.7658561e+03 3.5235582e+03 - 1.8380691e+03 -3.7095590e+03 3.5325392e+03 - 1.9193363e+03 -3.6506040e+03 3.5411884e+03 - 2.0016313e+03 -3.5890115e+03 3.5494276e+03 - 2.0848414e+03 -3.5248205e+03 3.5571787e+03 - 2.1688338e+03 -3.4580904e+03 3.5643646e+03 - 2.2534555e+03 -3.3889021e+03 3.5709104e+03 - 2.3385348e+03 -3.3173585e+03 3.5767456e+03 - 2.4238822e+03 -3.2435850e+03 3.5818048e+03 - 2.5092931e+03 -3.1677287e+03 3.5860297e+03 - 2.5945501e+03 -3.0899575e+03 3.5893703e+03 - 2.6794261e+03 -3.0104583e+03 3.5917863e+03 - 2.7636884e+03 -2.9294342e+03 3.5932479e+03 - 2.8471020e+03 -2.8471020e+03 3.5937372e+03 - 2.9294342e+03 -2.7636884e+03 3.5932479e+03 - 3.0104583e+03 -2.6794261e+03 3.5917863e+03 - 3.0899575e+03 -2.5945501e+03 3.5893703e+03 - 3.1677287e+03 -2.5092931e+03 3.5860297e+03 - 3.2435850e+03 -2.4238822e+03 3.5818048e+03 - 3.3173585e+03 -2.3385348e+03 3.5767456e+03 - 3.3889021e+03 -2.2534555e+03 3.5709104e+03 - 3.4580904e+03 -2.1688338e+03 3.5643646e+03 - 3.5248205e+03 -2.0848414e+03 3.5571787e+03 - 3.5890115e+03 -2.0016313e+03 3.5494276e+03 - 3.6506040e+03 -1.9193363e+03 3.5411884e+03 - 3.7095590e+03 -1.8380691e+03 3.5325392e+03 - 3.7658561e+03 -1.7579224e+03 3.5235582e+03 - 3.8194921e+03 -1.6789693e+03 3.5143223e+03 - 3.8704786e+03 -1.6012644e+03 3.5049061e+03 - 3.9188403e+03 -1.5248448e+03 3.4953817e+03 - 3.9646130e+03 -1.4497319e+03 3.4858173e+03 - 4.0078412e+03 -1.3759322e+03 3.4762775e+03 - 4.0485767e+03 -1.3034397e+03 3.4668225e+03 - 4.0868766e+03 -1.2322367e+03 3.4575085e+03 - 4.1228017e+03 -1.1622956e+03 3.4483870e+03 - 4.1564154e+03 -1.0935805e+03 3.4395053e+03 - 4.1877818e+03 -1.0260480e+03 3.4309065e+03 - 4.2169654e+03 -9.5964888e+02 3.4226296e+03 - 4.2440295e+03 -8.9432884e+02 3.4147098e+03 - 4.2690360e+03 -8.3002966e+02 3.4071785e+03 - 4.2920443e+03 -7.6668988e+02 3.4000640e+03 - 4.3131111e+03 -7.0424558e+02 3.3933911e+03 - 4.3322898e+03 -6.4263094e+02 3.3871818e+03 - 4.3496302e+03 -5.8177874e+02 3.3814555e+03 - 4.3651781e+03 -5.2162077e+02 3.3762290e+03 - 4.3789757e+03 -4.6208813e+02 3.3715171e+03 - 4.3910605e+03 -4.0311153e+02 3.3673323e+03 - 4.4014660e+03 -3.4462143e+02 3.3636852e+03 - 4.4102214e+03 -2.8654820e+02 3.3605849e+03 - 4.4173512e+03 -2.2882220e+02 3.3580386e+03 - 4.4228756e+03 -1.7137386e+02 3.3560523e+03 - 4.4268104e+03 -1.1413365e+02 3.3546303e+03 - 4.4291667e+03 -5.7032156e+01 3.3537759e+03 - 4.4299515e+03 -4.8134273e-09 3.3534909e+03 - 4.4710557e+03 0.0000000e+00 3.3002819e+03 - 4.4702734e+03 5.6912928e+01 3.3005771e+03 - 4.4679242e+03 1.1389697e+02 3.3014620e+03 - 4.4640010e+03 1.7102330e+02 3.3029348e+03 - 4.4584923e+03 2.2836320e+02 3.3049926e+03 - 4.4513817e+03 2.8598810e+02 3.3076309e+03 - 4.4426482e+03 3.4396958e+02 3.3108441e+03 - 4.4322661e+03 4.0237941e+02 3.3146249e+03 - 4.4202052e+03 4.6128948e+02 3.3189647e+03 - 4.4064305e+03 5.2077176e+02 3.3238530e+03 - 4.3909027e+03 5.8089817e+02 3.3292774e+03 - 4.3735779e+03 6.4174039e+02 3.3352235e+03 - 4.3544079e+03 7.0336966e+02 3.3416744e+03 - 4.3333403e+03 7.6585646e+02 3.3486111e+03 - 4.3103188e+03 8.2927011e+02 3.3560114e+03 - 4.2852837e+03 8.9367826e+02 3.3638504e+03 - 4.2581718e+03 9.5914636e+02 3.3720998e+03 - 4.2289174e+03 1.0257369e+03 3.3807276e+03 - 4.1974528e+03 1.0935084e+03 3.3896982e+03 - 4.1637089e+03 1.1625149e+03 3.3989718e+03 - 4.1276164e+03 1.2328043e+03 3.4085041e+03 - 4.0891068e+03 1.3044173e+03 3.4182466e+03 - 4.0481134e+03 1.3773864e+03 3.4281458e+03 - 4.0045735e+03 1.4517336e+03 3.4381436e+03 - 3.9584292e+03 1.5274696e+03 3.4481771e+03 - 3.9096302e+03 1.6045913e+03 3.4581787e+03 - 3.8581349e+03 1.6830809e+03 3.4680767e+03 - 3.8039133e+03 1.7629038e+03 3.4777950e+03 - 3.7469485e+03 1.8440069e+03 3.4872547e+03 - 3.6872400e+03 1.9263175e+03 3.4963738e+03 - 3.6248046e+03 2.0097422e+03 3.5050690e+03 - 3.5596794e+03 2.0941658e+03 3.5132566e+03 - 3.4919233e+03 2.1794513e+03 3.5208536e+03 - 3.4216180e+03 2.2654403e+03 3.5277796e+03 - 3.3488692e+03 2.3519534e+03 3.5339582e+03 - 3.2738069e+03 2.4387921e+03 3.5393187e+03 - 3.1965847e+03 2.5257410e+03 3.5437977e+03 - 3.1173789e+03 2.6125707e+03 3.5473408e+03 - 3.0363862e+03 2.6990411e+03 3.5499041e+03 - 2.9538216e+03 2.7849054e+03 3.5514553e+03 - 2.8699145e+03 2.8699145e+03 3.5519746e+03 - 2.7849054e+03 2.9538216e+03 3.5514553e+03 - 2.6990411e+03 3.0363862e+03 3.5499041e+03 - 2.6125707e+03 3.1173789e+03 3.5473408e+03 - 2.5257410e+03 3.1965847e+03 3.5437977e+03 - 2.4387921e+03 3.2738069e+03 3.5393187e+03 - 2.3519534e+03 3.3488692e+03 3.5339582e+03 - 2.2654403e+03 3.4216180e+03 3.5277796e+03 - 2.1794513e+03 3.4919233e+03 3.5208536e+03 - 2.0941658e+03 3.5596794e+03 3.5132566e+03 - 2.0097422e+03 3.6248046e+03 3.5050690e+03 - 1.9263175e+03 3.6872400e+03 3.4963738e+03 - 1.8440069e+03 3.7469485e+03 3.4872547e+03 - 1.7629038e+03 3.8039133e+03 3.4777950e+03 - 1.6830809e+03 3.8581349e+03 3.4680767e+03 - 1.6045913e+03 3.9096302e+03 3.4581787e+03 - 1.5274696e+03 3.9584292e+03 3.4481771e+03 - 1.4517336e+03 4.0045735e+03 3.4381436e+03 - 1.3773864e+03 4.0481134e+03 3.4281458e+03 - 1.3044173e+03 4.0891068e+03 3.4182466e+03 - 1.2328043e+03 4.1276164e+03 3.4085041e+03 - 1.1625149e+03 4.1637089e+03 3.3989718e+03 - 1.0935084e+03 4.1974528e+03 3.3896982e+03 - 1.0257369e+03 4.2289174e+03 3.3807276e+03 - 9.5914636e+02 4.2581718e+03 3.3720998e+03 - 8.9367826e+02 4.2852837e+03 3.3638504e+03 - 8.2927011e+02 4.3103188e+03 3.3560114e+03 - 7.6585646e+02 4.3333403e+03 3.3486111e+03 - 7.0336966e+02 4.3544079e+03 3.3416744e+03 - 6.4174039e+02 4.3735779e+03 3.3352235e+03 - 5.8089817e+02 4.3909027e+03 3.3292774e+03 - 5.2077176e+02 4.4064305e+03 3.3238530e+03 - 4.6128948e+02 4.4202052e+03 3.3189647e+03 - 4.0237941e+02 4.4322661e+03 3.3146249e+03 - 3.4396958e+02 4.4426482e+03 3.3108441e+03 - 2.8598810e+02 4.4513817e+03 3.3076309e+03 - 2.2836320e+02 4.4584923e+03 3.3049926e+03 - 1.7102330e+02 4.4640010e+03 3.3029348e+03 - 1.1389697e+02 4.4679242e+03 3.3014620e+03 - 5.6912928e+01 4.4702734e+03 3.3005771e+03 - 0.0000000e+00 4.4710557e+03 3.3002819e+03 - -5.6912928e+01 4.4702734e+03 3.3005771e+03 - -1.1389697e+02 4.4679242e+03 3.3014620e+03 - -1.7102330e+02 4.4640010e+03 3.3029348e+03 - -2.2836320e+02 4.4584923e+03 3.3049926e+03 - -2.8598810e+02 4.4513817e+03 3.3076309e+03 - -3.4396958e+02 4.4426482e+03 3.3108441e+03 - -4.0237941e+02 4.4322661e+03 3.3146249e+03 - -4.6128948e+02 4.4202052e+03 3.3189647e+03 - -5.2077176e+02 4.4064305e+03 3.3238530e+03 - -5.8089817e+02 4.3909027e+03 3.3292774e+03 - -6.4174039e+02 4.3735779e+03 3.3352235e+03 - -7.0336966e+02 4.3544079e+03 3.3416744e+03 - -7.6585646e+02 4.3333403e+03 3.3486111e+03 - -8.2927011e+02 4.3103188e+03 3.3560114e+03 - -8.9367826e+02 4.2852837e+03 3.3638504e+03 - -9.5914636e+02 4.2581718e+03 3.3720998e+03 - -1.0257369e+03 4.2289174e+03 3.3807276e+03 - -1.0935084e+03 4.1974528e+03 3.3896982e+03 - -1.1625149e+03 4.1637089e+03 3.3989718e+03 - -1.2328043e+03 4.1276164e+03 3.4085041e+03 - -1.3044173e+03 4.0891068e+03 3.4182466e+03 - -1.3773864e+03 4.0481134e+03 3.4281458e+03 - -1.4517336e+03 4.0045735e+03 3.4381436e+03 - -1.5274696e+03 3.9584292e+03 3.4481771e+03 - -1.6045913e+03 3.9096302e+03 3.4581787e+03 - -1.6830809e+03 3.8581349e+03 3.4680767e+03 - -1.7629038e+03 3.8039133e+03 3.4777950e+03 - -1.8440069e+03 3.7469485e+03 3.4872547e+03 - -1.9263175e+03 3.6872400e+03 3.4963738e+03 - -2.0097422e+03 3.6248046e+03 3.5050690e+03 - -2.0941658e+03 3.5596794e+03 3.5132566e+03 - -2.1794513e+03 3.4919233e+03 3.5208536e+03 - -2.2654403e+03 3.4216180e+03 3.5277796e+03 - -2.3519534e+03 3.3488692e+03 3.5339582e+03 - -2.4387921e+03 3.2738069e+03 3.5393187e+03 - -2.5257410e+03 3.1965847e+03 3.5437977e+03 - -2.6125707e+03 3.1173789e+03 3.5473408e+03 - -2.6990411e+03 3.0363862e+03 3.5499041e+03 - -2.7849054e+03 2.9538216e+03 3.5514553e+03 - -2.8699145e+03 2.8699145e+03 3.5519746e+03 - -2.9538216e+03 2.7849054e+03 3.5514553e+03 - -3.0363862e+03 2.6990411e+03 3.5499041e+03 - -3.1173789e+03 2.6125707e+03 3.5473408e+03 - -3.1965847e+03 2.5257410e+03 3.5437977e+03 - -3.2738069e+03 2.4387921e+03 3.5393187e+03 - -3.3488692e+03 2.3519534e+03 3.5339582e+03 - -3.4216180e+03 2.2654403e+03 3.5277796e+03 - -3.4919233e+03 2.1794513e+03 3.5208536e+03 - -3.5596794e+03 2.0941658e+03 3.5132566e+03 - -3.6248046e+03 2.0097422e+03 3.5050690e+03 - -3.6872400e+03 1.9263175e+03 3.4963738e+03 - -3.7469485e+03 1.8440069e+03 3.4872547e+03 - -3.8039133e+03 1.7629038e+03 3.4777950e+03 - -3.8581349e+03 1.6830809e+03 3.4680767e+03 - -3.9096302e+03 1.6045913e+03 3.4581787e+03 - -3.9584292e+03 1.5274696e+03 3.4481771e+03 - -4.0045735e+03 1.4517336e+03 3.4381436e+03 - -4.0481134e+03 1.3773864e+03 3.4281458e+03 - -4.0891068e+03 1.3044173e+03 3.4182466e+03 - -4.1276164e+03 1.2328043e+03 3.4085041e+03 - -4.1637089e+03 1.1625149e+03 3.3989718e+03 - -4.1974528e+03 1.0935084e+03 3.3896982e+03 - -4.2289174e+03 1.0257369e+03 3.3807276e+03 - -4.2581718e+03 9.5914636e+02 3.3720998e+03 - -4.2852837e+03 8.9367826e+02 3.3638504e+03 - -4.3103188e+03 8.2927011e+02 3.3560114e+03 - -4.3333403e+03 7.6585646e+02 3.3486111e+03 - -4.3544079e+03 7.0336966e+02 3.3416744e+03 - -4.3735779e+03 6.4174039e+02 3.3352235e+03 - -4.3909027e+03 5.8089817e+02 3.3292774e+03 - -4.4064305e+03 5.2077176e+02 3.3238530e+03 - -4.4202052e+03 4.6128948e+02 3.3189647e+03 - -4.4322661e+03 4.0237941e+02 3.3146249e+03 - -4.4426482e+03 3.4396958e+02 3.3108441e+03 - -4.4513817e+03 2.8598810e+02 3.3076309e+03 - -4.4584923e+03 2.2836320e+02 3.3049926e+03 - -4.4640010e+03 1.7102330e+02 3.3029348e+03 - -4.4679242e+03 1.1389697e+02 3.3014620e+03 - -4.4702734e+03 5.6912928e+01 3.3005771e+03 - -4.4710557e+03 0.0000000e+00 3.3002819e+03 - -4.4702734e+03 -5.6912928e+01 3.3005771e+03 - -4.4679242e+03 -1.1389697e+02 3.3014620e+03 - -4.4640010e+03 -1.7102330e+02 3.3029348e+03 - -4.4584923e+03 -2.2836320e+02 3.3049926e+03 - -4.4513817e+03 -2.8598810e+02 3.3076309e+03 - -4.4426482e+03 -3.4396958e+02 3.3108441e+03 - -4.4322661e+03 -4.0237941e+02 3.3146249e+03 - -4.4202052e+03 -4.6128948e+02 3.3189647e+03 - -4.4064305e+03 -5.2077176e+02 3.3238530e+03 - -4.3909027e+03 -5.8089817e+02 3.3292774e+03 - -4.3735779e+03 -6.4174039e+02 3.3352235e+03 - -4.3544079e+03 -7.0336966e+02 3.3416744e+03 - -4.3333403e+03 -7.6585646e+02 3.3486111e+03 - -4.3103188e+03 -8.2927011e+02 3.3560114e+03 - -4.2852837e+03 -8.9367826e+02 3.3638504e+03 - -4.2581718e+03 -9.5914636e+02 3.3720998e+03 - -4.2289174e+03 -1.0257369e+03 3.3807276e+03 - -4.1974528e+03 -1.0935084e+03 3.3896982e+03 - -4.1637089e+03 -1.1625149e+03 3.3989718e+03 - -4.1276164e+03 -1.2328043e+03 3.4085041e+03 - -4.0891068e+03 -1.3044173e+03 3.4182466e+03 - -4.0481134e+03 -1.3773864e+03 3.4281458e+03 - -4.0045735e+03 -1.4517336e+03 3.4381436e+03 - -3.9584292e+03 -1.5274696e+03 3.4481771e+03 - -3.9096302e+03 -1.6045913e+03 3.4581787e+03 - -3.8581349e+03 -1.6830809e+03 3.4680767e+03 - -3.8039133e+03 -1.7629038e+03 3.4777950e+03 - -3.7469485e+03 -1.8440069e+03 3.4872547e+03 - -3.6872400e+03 -1.9263175e+03 3.4963738e+03 - -3.6248046e+03 -2.0097422e+03 3.5050690e+03 - -3.5596794e+03 -2.0941658e+03 3.5132566e+03 - -3.4919233e+03 -2.1794513e+03 3.5208536e+03 - -3.4216180e+03 -2.2654403e+03 3.5277796e+03 - -3.3488692e+03 -2.3519534e+03 3.5339582e+03 - -3.2738069e+03 -2.4387921e+03 3.5393187e+03 - -3.1965847e+03 -2.5257410e+03 3.5437977e+03 - -3.1173789e+03 -2.6125707e+03 3.5473408e+03 - -3.0363862e+03 -2.6990411e+03 3.5499041e+03 - -2.9538216e+03 -2.7849054e+03 3.5514553e+03 - -2.8699145e+03 -2.8699145e+03 3.5519746e+03 - -2.7849054e+03 -2.9538216e+03 3.5514553e+03 - -2.6990411e+03 -3.0363862e+03 3.5499041e+03 - -2.6125707e+03 -3.1173789e+03 3.5473408e+03 - -2.5257410e+03 -3.1965847e+03 3.5437977e+03 - -2.4387921e+03 -3.2738069e+03 3.5393187e+03 - -2.3519534e+03 -3.3488692e+03 3.5339582e+03 - -2.2654403e+03 -3.4216180e+03 3.5277796e+03 - -2.1794513e+03 -3.4919233e+03 3.5208536e+03 - -2.0941658e+03 -3.5596794e+03 3.5132566e+03 - -2.0097422e+03 -3.6248046e+03 3.5050690e+03 - -1.9263175e+03 -3.6872400e+03 3.4963738e+03 - -1.8440069e+03 -3.7469485e+03 3.4872547e+03 - -1.7629038e+03 -3.8039133e+03 3.4777950e+03 - -1.6830809e+03 -3.8581349e+03 3.4680767e+03 - -1.6045913e+03 -3.9096302e+03 3.4581787e+03 - -1.5274696e+03 -3.9584292e+03 3.4481771e+03 - -1.4517336e+03 -4.0045735e+03 3.4381436e+03 - -1.3773864e+03 -4.0481134e+03 3.4281458e+03 - -1.3044173e+03 -4.0891068e+03 3.4182466e+03 - -1.2328043e+03 -4.1276164e+03 3.4085041e+03 - -1.1625149e+03 -4.1637089e+03 3.3989718e+03 - -1.0935084e+03 -4.1974528e+03 3.3896982e+03 - -1.0257369e+03 -4.2289174e+03 3.3807276e+03 - -9.5914636e+02 -4.2581718e+03 3.3720998e+03 - -8.9367826e+02 -4.2852837e+03 3.3638504e+03 - -8.2927011e+02 -4.3103188e+03 3.3560114e+03 - -7.6585646e+02 -4.3333403e+03 3.3486111e+03 - -7.0336966e+02 -4.3544079e+03 3.3416744e+03 - -6.4174039e+02 -4.3735779e+03 3.3352235e+03 - -5.8089817e+02 -4.3909027e+03 3.3292774e+03 - -5.2077176e+02 -4.4064305e+03 3.3238530e+03 - -4.6128948e+02 -4.4202052e+03 3.3189647e+03 - -4.0237941e+02 -4.4322661e+03 3.3146249e+03 - -3.4396958e+02 -4.4426482e+03 3.3108441e+03 - -2.8598810e+02 -4.4513817e+03 3.3076309e+03 - -2.2836320e+02 -4.4584923e+03 3.3049926e+03 - -1.7102330e+02 -4.4640010e+03 3.3029348e+03 - -1.1389697e+02 -4.4679242e+03 3.3014620e+03 - -5.6912928e+01 -4.4702734e+03 3.3005771e+03 - -4.8134273e-09 -4.4710557e+03 3.3002819e+03 - 5.6912928e+01 -4.4702734e+03 3.3005771e+03 - 1.1389697e+02 -4.4679242e+03 3.3014620e+03 - 1.7102330e+02 -4.4640010e+03 3.3029348e+03 - 2.2836320e+02 -4.4584923e+03 3.3049926e+03 - 2.8598810e+02 -4.4513817e+03 3.3076309e+03 - 3.4396958e+02 -4.4426482e+03 3.3108441e+03 - 4.0237941e+02 -4.4322661e+03 3.3146249e+03 - 4.6128948e+02 -4.4202052e+03 3.3189647e+03 - 5.2077176e+02 -4.4064305e+03 3.3238530e+03 - 5.8089817e+02 -4.3909027e+03 3.3292774e+03 - 6.4174039e+02 -4.3735779e+03 3.3352235e+03 - 7.0336966e+02 -4.3544079e+03 3.3416744e+03 - 7.6585646e+02 -4.3333403e+03 3.3486111e+03 - 8.2927011e+02 -4.3103188e+03 3.3560114e+03 - 8.9367826e+02 -4.2852837e+03 3.3638504e+03 - 9.5914636e+02 -4.2581718e+03 3.3720998e+03 - 1.0257369e+03 -4.2289174e+03 3.3807276e+03 - 1.0935084e+03 -4.1974528e+03 3.3896982e+03 - 1.1625149e+03 -4.1637089e+03 3.3989718e+03 - 1.2328043e+03 -4.1276164e+03 3.4085041e+03 - 1.3044173e+03 -4.0891068e+03 3.4182466e+03 - 1.3773864e+03 -4.0481134e+03 3.4281458e+03 - 1.4517336e+03 -4.0045735e+03 3.4381436e+03 - 1.5274696e+03 -3.9584292e+03 3.4481771e+03 - 1.6045913e+03 -3.9096302e+03 3.4581787e+03 - 1.6830809e+03 -3.8581349e+03 3.4680767e+03 - 1.7629038e+03 -3.8039133e+03 3.4777950e+03 - 1.8440069e+03 -3.7469485e+03 3.4872547e+03 - 1.9263175e+03 -3.6872400e+03 3.4963738e+03 - 2.0097422e+03 -3.6248046e+03 3.5050690e+03 - 2.0941658e+03 -3.5596794e+03 3.5132566e+03 - 2.1794513e+03 -3.4919233e+03 3.5208536e+03 - 2.2654403e+03 -3.4216180e+03 3.5277796e+03 - 2.3519534e+03 -3.3488692e+03 3.5339582e+03 - 2.4387921e+03 -3.2738069e+03 3.5393187e+03 - 2.5257410e+03 -3.1965847e+03 3.5437977e+03 - 2.6125707e+03 -3.1173789e+03 3.5473408e+03 - 2.6990411e+03 -3.0363862e+03 3.5499041e+03 - 2.7849054e+03 -2.9538216e+03 3.5514553e+03 - 2.8699145e+03 -2.8699145e+03 3.5519746e+03 - 2.9538216e+03 -2.7849054e+03 3.5514553e+03 - 3.0363862e+03 -2.6990411e+03 3.5499041e+03 - 3.1173789e+03 -2.6125707e+03 3.5473408e+03 - 3.1965847e+03 -2.5257410e+03 3.5437977e+03 - 3.2738069e+03 -2.4387921e+03 3.5393187e+03 - 3.3488692e+03 -2.3519534e+03 3.5339582e+03 - 3.4216180e+03 -2.2654403e+03 3.5277796e+03 - 3.4919233e+03 -2.1794513e+03 3.5208536e+03 - 3.5596794e+03 -2.0941658e+03 3.5132566e+03 - 3.6248046e+03 -2.0097422e+03 3.5050690e+03 - 3.6872400e+03 -1.9263175e+03 3.4963738e+03 - 3.7469485e+03 -1.8440069e+03 3.4872547e+03 - 3.8039133e+03 -1.7629038e+03 3.4777950e+03 - 3.8581349e+03 -1.6830809e+03 3.4680767e+03 - 3.9096302e+03 -1.6045913e+03 3.4581787e+03 - 3.9584292e+03 -1.5274696e+03 3.4481771e+03 - 4.0045735e+03 -1.4517336e+03 3.4381436e+03 - 4.0481134e+03 -1.3773864e+03 3.4281458e+03 - 4.0891068e+03 -1.3044173e+03 3.4182466e+03 - 4.1276164e+03 -1.2328043e+03 3.4085041e+03 - 4.1637089e+03 -1.1625149e+03 3.3989718e+03 - 4.1974528e+03 -1.0935084e+03 3.3896982e+03 - 4.2289174e+03 -1.0257369e+03 3.3807276e+03 - 4.2581718e+03 -9.5914636e+02 3.3720998e+03 - 4.2852837e+03 -8.9367826e+02 3.3638504e+03 - 4.3103188e+03 -8.2927011e+02 3.3560114e+03 - 4.3333403e+03 -7.6585646e+02 3.3486111e+03 - 4.3544079e+03 -7.0336966e+02 3.3416744e+03 - 4.3735779e+03 -6.4174039e+02 3.3352235e+03 - 4.3909027e+03 -5.8089817e+02 3.3292774e+03 - 4.4064305e+03 -5.2077176e+02 3.3238530e+03 - 4.4202052e+03 -4.6128948e+02 3.3189647e+03 - 4.4322661e+03 -4.0237941e+02 3.3146249e+03 - 4.4426482e+03 -3.4396958e+02 3.3108441e+03 - 4.4513817e+03 -2.8598810e+02 3.3076309e+03 - 4.4584923e+03 -2.2836320e+02 3.3049926e+03 - 4.4640010e+03 -1.7102330e+02 3.3029348e+03 - 4.4679242e+03 -1.1389697e+02 3.3014620e+03 - 4.4702734e+03 -5.6912928e+01 3.3005771e+03 - 4.4710557e+03 -4.8134273e-09 3.3002819e+03 - 4.5116667e+03 0.0000000e+00 3.2455215e+03 - 4.5108874e+03 5.6779702e+01 3.2458268e+03 - 4.5085469e+03 1.1363222e+02 3.2467421e+03 - 4.5046380e+03 1.7063046e+02 3.2482657e+03 - 4.4991487e+03 2.2784747e+02 3.2503946e+03 - 4.4920620e+03 2.8535652e+02 3.2531246e+03 - 4.4833562e+03 3.4323116e+02 3.2564504e+03 - 4.4730045e+03 4.0154520e+02 3.2603649e+03 - 4.4609756e+03 4.6037277e+02 3.2648596e+03 - 4.4472330e+03 5.1978821e+02 3.2699243e+03 - 4.4317359e+03 5.7986600e+02 3.2755469e+03 - 4.4144382e+03 6.4068062e+02 3.2817133e+03 - 4.3952895e+03 7.0230632e+02 3.2884068e+03 - 4.3742350e+03 7.6481685e+02 3.2956086e+03 - 4.3512156e+03 8.2828506e+02 3.3032966e+03 - 4.3261680e+03 8.9278241e+02 3.3114459e+03 - 4.2990256e+03 9.5837838e+02 3.3200280e+03 - 4.2697187e+03 1.0251398e+03 3.3290108e+03 - 4.2381751e+03 1.0931298e+03 3.3383582e+03 - 4.2043208e+03 1.1624071e+03 3.3480296e+03 - 4.1680815e+03 1.2330246e+03 3.3579799e+03 - 4.1293829e+03 1.3050281e+03 3.3681591e+03 - 4.0881526e+03 1.3784549e+03 3.3785122e+03 - 4.0443216e+03 1.4533322e+03 3.3889788e+03 - 3.9978260e+03 1.5296750e+03 3.3994935e+03 - 3.9486089e+03 1.6074849e+03 3.4099859e+03 - 3.8966226e+03 1.6867477e+03 3.4203803e+03 - 3.8418311e+03 1.7674316e+03 3.4305968e+03 - 3.7842124e+03 1.8494855e+03 3.4405517e+03 - 3.7237609e+03 1.9328377e+03 3.4501581e+03 - 3.6604901e+03 2.0173939e+03 3.4593271e+03 - 3.5944346e+03 2.1030369e+03 3.4679691e+03 - 3.5256522e+03 2.1896257e+03 3.4759949e+03 - 3.4542253e+03 2.2769961e+03 3.4833181e+03 - 3.3802625e+03 2.3649611e+03 3.4898559e+03 - 3.3038982e+03 2.4533127e+03 3.4955320e+03 - 3.2252927e+03 2.5418244e+03 3.5002774e+03 - 3.1446310e+03 2.6302540e+03 3.5040331e+03 - 3.0621206e+03 2.7183476e+03 3.5067512e+03 - 2.9779885e+03 2.8058436e+03 3.5083965e+03 - 2.8924779e+03 2.8924779e+03 3.5089473e+03 - 2.8058436e+03 2.9779885e+03 3.5083965e+03 - 2.7183476e+03 3.0621206e+03 3.5067512e+03 - 2.6302540e+03 3.1446310e+03 3.5040331e+03 - 2.5418244e+03 3.2252927e+03 3.5002774e+03 - 2.4533127e+03 3.3038982e+03 3.4955320e+03 - 2.3649611e+03 3.3802625e+03 3.4898559e+03 - 2.2769961e+03 3.4542253e+03 3.4833181e+03 - 2.1896257e+03 3.5256522e+03 3.4759949e+03 - 2.1030369e+03 3.5944346e+03 3.4679691e+03 - 2.0173939e+03 3.6604901e+03 3.4593271e+03 - 1.9328377e+03 3.7237609e+03 3.4501581e+03 - 1.8494855e+03 3.7842124e+03 3.4405517e+03 - 1.7674316e+03 3.8418311e+03 3.4305968e+03 - 1.6867477e+03 3.8966226e+03 3.4203803e+03 - 1.6074849e+03 3.9486089e+03 3.4099859e+03 - 1.5296750e+03 3.9978260e+03 3.3994935e+03 - 1.4533322e+03 4.0443216e+03 3.3889788e+03 - 1.3784549e+03 4.0881526e+03 3.3785122e+03 - 1.3050281e+03 4.1293829e+03 3.3681591e+03 - 1.2330246e+03 4.1680815e+03 3.3579799e+03 - 1.1624071e+03 4.2043208e+03 3.3480296e+03 - 1.0931298e+03 4.2381751e+03 3.3383582e+03 - 1.0251398e+03 4.2697187e+03 3.3290108e+03 - 9.5837838e+02 4.2990256e+03 3.3200280e+03 - 8.9278241e+02 4.3261680e+03 3.3114459e+03 - 8.2828506e+02 4.3512156e+03 3.3032966e+03 - 7.6481685e+02 4.3742350e+03 3.2956086e+03 - 7.0230632e+02 4.3952895e+03 3.2884068e+03 - 6.4068062e+02 4.4144382e+03 3.2817133e+03 - 5.7986600e+02 4.4317359e+03 3.2755469e+03 - 5.1978821e+02 4.4472330e+03 3.2699243e+03 - 4.6037277e+02 4.4609756e+03 3.2648596e+03 - 4.0154520e+02 4.4730045e+03 3.2603649e+03 - 3.4323116e+02 4.4833562e+03 3.2564504e+03 - 2.8535652e+02 4.4920620e+03 3.2531246e+03 - 2.2784747e+02 4.4991487e+03 3.2503946e+03 - 1.7063046e+02 4.5046380e+03 3.2482657e+03 - 1.1363222e+02 4.5085469e+03 3.2467421e+03 - 5.6779702e+01 4.5108874e+03 3.2458268e+03 - 0.0000000e+00 4.5116667e+03 3.2455215e+03 - -5.6779702e+01 4.5108874e+03 3.2458268e+03 - -1.1363222e+02 4.5085469e+03 3.2467421e+03 - -1.7063046e+02 4.5046380e+03 3.2482657e+03 - -2.2784747e+02 4.4991487e+03 3.2503946e+03 - -2.8535652e+02 4.4920620e+03 3.2531246e+03 - -3.4323116e+02 4.4833562e+03 3.2564504e+03 - -4.0154520e+02 4.4730045e+03 3.2603649e+03 - -4.6037277e+02 4.4609756e+03 3.2648596e+03 - -5.1978821e+02 4.4472330e+03 3.2699243e+03 - -5.7986600e+02 4.4317359e+03 3.2755469e+03 - -6.4068062e+02 4.4144382e+03 3.2817133e+03 - -7.0230632e+02 4.3952895e+03 3.2884068e+03 - -7.6481685e+02 4.3742350e+03 3.2956086e+03 - -8.2828506e+02 4.3512156e+03 3.3032966e+03 - -8.9278241e+02 4.3261680e+03 3.3114459e+03 - -9.5837838e+02 4.2990256e+03 3.3200280e+03 - -1.0251398e+03 4.2697187e+03 3.3290108e+03 - -1.0931298e+03 4.2381751e+03 3.3383582e+03 - -1.1624071e+03 4.2043208e+03 3.3480296e+03 - -1.2330246e+03 4.1680815e+03 3.3579799e+03 - -1.3050281e+03 4.1293829e+03 3.3681591e+03 - -1.3784549e+03 4.0881526e+03 3.3785122e+03 - -1.4533322e+03 4.0443216e+03 3.3889788e+03 - -1.5296750e+03 3.9978260e+03 3.3994935e+03 - -1.6074849e+03 3.9486089e+03 3.4099859e+03 - -1.6867477e+03 3.8966226e+03 3.4203803e+03 - -1.7674316e+03 3.8418311e+03 3.4305968e+03 - -1.8494855e+03 3.7842124e+03 3.4405517e+03 - -1.9328377e+03 3.7237609e+03 3.4501581e+03 - -2.0173939e+03 3.6604901e+03 3.4593271e+03 - -2.1030369e+03 3.5944346e+03 3.4679691e+03 - -2.1896257e+03 3.5256522e+03 3.4759949e+03 - -2.2769961e+03 3.4542253e+03 3.4833181e+03 - -2.3649611e+03 3.3802625e+03 3.4898559e+03 - -2.4533127e+03 3.3038982e+03 3.4955320e+03 - -2.5418244e+03 3.2252927e+03 3.5002774e+03 - -2.6302540e+03 3.1446310e+03 3.5040331e+03 - -2.7183476e+03 3.0621206e+03 3.5067512e+03 - -2.8058436e+03 2.9779885e+03 3.5083965e+03 - -2.8924779e+03 2.8924779e+03 3.5089473e+03 - -2.9779885e+03 2.8058436e+03 3.5083965e+03 - -3.0621206e+03 2.7183476e+03 3.5067512e+03 - -3.1446310e+03 2.6302540e+03 3.5040331e+03 - -3.2252927e+03 2.5418244e+03 3.5002774e+03 - -3.3038982e+03 2.4533127e+03 3.4955320e+03 - -3.3802625e+03 2.3649611e+03 3.4898559e+03 - -3.4542253e+03 2.2769961e+03 3.4833181e+03 - -3.5256522e+03 2.1896257e+03 3.4759949e+03 - -3.5944346e+03 2.1030369e+03 3.4679691e+03 - -3.6604901e+03 2.0173939e+03 3.4593271e+03 - -3.7237609e+03 1.9328377e+03 3.4501581e+03 - -3.7842124e+03 1.8494855e+03 3.4405517e+03 - -3.8418311e+03 1.7674316e+03 3.4305968e+03 - -3.8966226e+03 1.6867477e+03 3.4203803e+03 - -3.9486089e+03 1.6074849e+03 3.4099859e+03 - -3.9978260e+03 1.5296750e+03 3.3994935e+03 - -4.0443216e+03 1.4533322e+03 3.3889788e+03 - -4.0881526e+03 1.3784549e+03 3.3785122e+03 - -4.1293829e+03 1.3050281e+03 3.3681591e+03 - -4.1680815e+03 1.2330246e+03 3.3579799e+03 - -4.2043208e+03 1.1624071e+03 3.3480296e+03 - -4.2381751e+03 1.0931298e+03 3.3383582e+03 - -4.2697187e+03 1.0251398e+03 3.3290108e+03 - -4.2990256e+03 9.5837838e+02 3.3200280e+03 - -4.3261680e+03 8.9278241e+02 3.3114459e+03 - -4.3512156e+03 8.2828506e+02 3.3032966e+03 - -4.3742350e+03 7.6481685e+02 3.2956086e+03 - -4.3952895e+03 7.0230632e+02 3.2884068e+03 - -4.4144382e+03 6.4068062e+02 3.2817133e+03 - -4.4317359e+03 5.7986600e+02 3.2755469e+03 - -4.4472330e+03 5.1978821e+02 3.2699243e+03 - -4.4609756e+03 4.6037277e+02 3.2648596e+03 - -4.4730045e+03 4.0154520e+02 3.2603649e+03 - -4.4833562e+03 3.4323116e+02 3.2564504e+03 - -4.4920620e+03 2.8535652e+02 3.2531246e+03 - -4.4991487e+03 2.2784747e+02 3.2503946e+03 - -4.5046380e+03 1.7063046e+02 3.2482657e+03 - -4.5085469e+03 1.1363222e+02 3.2467421e+03 - -4.5108874e+03 5.6779702e+01 3.2458268e+03 - -4.5116667e+03 -4.8134273e-09 3.2455215e+03 - -4.5108874e+03 -5.6779702e+01 3.2458268e+03 - -4.5085469e+03 -1.1363222e+02 3.2467421e+03 - -4.5046380e+03 -1.7063046e+02 3.2482657e+03 - -4.4991487e+03 -2.2784747e+02 3.2503946e+03 - -4.4920620e+03 -2.8535652e+02 3.2531246e+03 - -4.4833562e+03 -3.4323116e+02 3.2564504e+03 - -4.4730045e+03 -4.0154520e+02 3.2603649e+03 - -4.4609756e+03 -4.6037277e+02 3.2648596e+03 - -4.4472330e+03 -5.1978821e+02 3.2699243e+03 - -4.4317359e+03 -5.7986600e+02 3.2755469e+03 - -4.4144382e+03 -6.4068062e+02 3.2817133e+03 - -4.3952895e+03 -7.0230632e+02 3.2884068e+03 - -4.3742350e+03 -7.6481685e+02 3.2956086e+03 - -4.3512156e+03 -8.2828506e+02 3.3032966e+03 - -4.3261680e+03 -8.9278241e+02 3.3114459e+03 - -4.2990256e+03 -9.5837838e+02 3.3200280e+03 - -4.2697187e+03 -1.0251398e+03 3.3290108e+03 - -4.2381751e+03 -1.0931298e+03 3.3383582e+03 - -4.2043208e+03 -1.1624071e+03 3.3480296e+03 - -4.1680815e+03 -1.2330246e+03 3.3579799e+03 - -4.1293829e+03 -1.3050281e+03 3.3681591e+03 - -4.0881526e+03 -1.3784549e+03 3.3785122e+03 - -4.0443216e+03 -1.4533322e+03 3.3889788e+03 - -3.9978260e+03 -1.5296750e+03 3.3994935e+03 - -3.9486089e+03 -1.6074849e+03 3.4099859e+03 - -3.8966226e+03 -1.6867477e+03 3.4203803e+03 - -3.8418311e+03 -1.7674316e+03 3.4305968e+03 - -3.7842124e+03 -1.8494855e+03 3.4405517e+03 - -3.7237609e+03 -1.9328377e+03 3.4501581e+03 - -3.6604901e+03 -2.0173939e+03 3.4593271e+03 - -3.5944346e+03 -2.1030369e+03 3.4679691e+03 - -3.5256522e+03 -2.1896257e+03 3.4759949e+03 - -3.4542253e+03 -2.2769961e+03 3.4833181e+03 - -3.3802625e+03 -2.3649611e+03 3.4898559e+03 - -3.3038982e+03 -2.4533127e+03 3.4955320e+03 - -3.2252927e+03 -2.5418244e+03 3.5002774e+03 - -3.1446310e+03 -2.6302540e+03 3.5040331e+03 - -3.0621206e+03 -2.7183476e+03 3.5067512e+03 - -2.9779885e+03 -2.8058436e+03 3.5083965e+03 - -2.8924779e+03 -2.8924779e+03 3.5089473e+03 - -2.8058436e+03 -2.9779885e+03 3.5083965e+03 - -2.7183476e+03 -3.0621206e+03 3.5067512e+03 - -2.6302540e+03 -3.1446310e+03 3.5040331e+03 - -2.5418244e+03 -3.2252927e+03 3.5002774e+03 - -2.4533127e+03 -3.3038982e+03 3.4955320e+03 - -2.3649611e+03 -3.3802625e+03 3.4898559e+03 - -2.2769961e+03 -3.4542253e+03 3.4833181e+03 - -2.1896257e+03 -3.5256522e+03 3.4759949e+03 - -2.1030369e+03 -3.5944346e+03 3.4679691e+03 - -2.0173939e+03 -3.6604901e+03 3.4593271e+03 - -1.9328377e+03 -3.7237609e+03 3.4501581e+03 - -1.8494855e+03 -3.7842124e+03 3.4405517e+03 - -1.7674316e+03 -3.8418311e+03 3.4305968e+03 - -1.6867477e+03 -3.8966226e+03 3.4203803e+03 - -1.6074849e+03 -3.9486089e+03 3.4099859e+03 - -1.5296750e+03 -3.9978260e+03 3.3994935e+03 - -1.4533322e+03 -4.0443216e+03 3.3889788e+03 - -1.3784549e+03 -4.0881526e+03 3.3785122e+03 - -1.3050281e+03 -4.1293829e+03 3.3681591e+03 - -1.2330246e+03 -4.1680815e+03 3.3579799e+03 - -1.1624071e+03 -4.2043208e+03 3.3480296e+03 - -1.0931298e+03 -4.2381751e+03 3.3383582e+03 - -1.0251398e+03 -4.2697187e+03 3.3290108e+03 - -9.5837838e+02 -4.2990256e+03 3.3200280e+03 - -8.9278241e+02 -4.3261680e+03 3.3114459e+03 - -8.2828506e+02 -4.3512156e+03 3.3032966e+03 - -7.6481685e+02 -4.3742350e+03 3.2956086e+03 - -7.0230632e+02 -4.3952895e+03 3.2884068e+03 - -6.4068062e+02 -4.4144382e+03 3.2817133e+03 - -5.7986600e+02 -4.4317359e+03 3.2755469e+03 - -5.1978821e+02 -4.4472330e+03 3.2699243e+03 - -4.6037277e+02 -4.4609756e+03 3.2648596e+03 - -4.0154520e+02 -4.4730045e+03 3.2603649e+03 - -3.4323116e+02 -4.4833562e+03 3.2564504e+03 - -2.8535652e+02 -4.4920620e+03 3.2531246e+03 - -2.2784747e+02 -4.4991487e+03 3.2503946e+03 - -1.7063046e+02 -4.5046380e+03 3.2482657e+03 - -1.1363222e+02 -4.5085469e+03 3.2467421e+03 - -5.6779702e+01 -4.5108874e+03 3.2458268e+03 - 0.0000000e+00 -4.5116667e+03 3.2455215e+03 - 5.6779702e+01 -4.5108874e+03 3.2458268e+03 - 1.1363222e+02 -4.5085469e+03 3.2467421e+03 - 1.7063046e+02 -4.5046380e+03 3.2482657e+03 - 2.2784747e+02 -4.4991487e+03 3.2503946e+03 - 2.8535652e+02 -4.4920620e+03 3.2531246e+03 - 3.4323116e+02 -4.4833562e+03 3.2564504e+03 - 4.0154520e+02 -4.4730045e+03 3.2603649e+03 - 4.6037277e+02 -4.4609756e+03 3.2648596e+03 - 5.1978821e+02 -4.4472330e+03 3.2699243e+03 - 5.7986600e+02 -4.4317359e+03 3.2755469e+03 - 6.4068062e+02 -4.4144382e+03 3.2817133e+03 - 7.0230632e+02 -4.3952895e+03 3.2884068e+03 - 7.6481685e+02 -4.3742350e+03 3.2956086e+03 - 8.2828506e+02 -4.3512156e+03 3.3032966e+03 - 8.9278241e+02 -4.3261680e+03 3.3114459e+03 - 9.5837838e+02 -4.2990256e+03 3.3200280e+03 - 1.0251398e+03 -4.2697187e+03 3.3290108e+03 - 1.0931298e+03 -4.2381751e+03 3.3383582e+03 - 1.1624071e+03 -4.2043208e+03 3.3480296e+03 - 1.2330246e+03 -4.1680815e+03 3.3579799e+03 - 1.3050281e+03 -4.1293829e+03 3.3681591e+03 - 1.3784549e+03 -4.0881526e+03 3.3785122e+03 - 1.4533322e+03 -4.0443216e+03 3.3889788e+03 - 1.5296750e+03 -3.9978260e+03 3.3994935e+03 - 1.6074849e+03 -3.9486089e+03 3.4099859e+03 - 1.6867477e+03 -3.8966226e+03 3.4203803e+03 - 1.7674316e+03 -3.8418311e+03 3.4305968e+03 - 1.8494855e+03 -3.7842124e+03 3.4405517e+03 - 1.9328377e+03 -3.7237609e+03 3.4501581e+03 - 2.0173939e+03 -3.6604901e+03 3.4593271e+03 - 2.1030369e+03 -3.5944346e+03 3.4679691e+03 - 2.1896257e+03 -3.5256522e+03 3.4759949e+03 - 2.2769961e+03 -3.4542253e+03 3.4833181e+03 - 2.3649611e+03 -3.3802625e+03 3.4898559e+03 - 2.4533127e+03 -3.3038982e+03 3.4955320e+03 - 2.5418244e+03 -3.2252927e+03 3.5002774e+03 - 2.6302540e+03 -3.1446310e+03 3.5040331e+03 - 2.7183476e+03 -3.0621206e+03 3.5067512e+03 - 2.8058436e+03 -2.9779885e+03 3.5083965e+03 - 2.8924779e+03 -2.8924779e+03 3.5089473e+03 - 2.9779885e+03 -2.8058436e+03 3.5083965e+03 - 3.0621206e+03 -2.7183476e+03 3.5067512e+03 - 3.1446310e+03 -2.6302540e+03 3.5040331e+03 - 3.2252927e+03 -2.5418244e+03 3.5002774e+03 - 3.3038982e+03 -2.4533127e+03 3.4955320e+03 - 3.3802625e+03 -2.3649611e+03 3.4898559e+03 - 3.4542253e+03 -2.2769961e+03 3.4833181e+03 - 3.5256522e+03 -2.1896257e+03 3.4759949e+03 - 3.5944346e+03 -2.1030369e+03 3.4679691e+03 - 3.6604901e+03 -2.0173939e+03 3.4593271e+03 - 3.7237609e+03 -1.9328377e+03 3.4501581e+03 - 3.7842124e+03 -1.8494855e+03 3.4405517e+03 - 3.8418311e+03 -1.7674316e+03 3.4305968e+03 - 3.8966226e+03 -1.6867477e+03 3.4203803e+03 - 3.9486089e+03 -1.6074849e+03 3.4099859e+03 - 3.9978260e+03 -1.5296750e+03 3.3994935e+03 - 4.0443216e+03 -1.4533322e+03 3.3889788e+03 - 4.0881526e+03 -1.3784549e+03 3.3785122e+03 - 4.1293829e+03 -1.3050281e+03 3.3681591e+03 - 4.1680815e+03 -1.2330246e+03 3.3579799e+03 - 4.2043208e+03 -1.1624071e+03 3.3480296e+03 - 4.2381751e+03 -1.0931298e+03 3.3383582e+03 - 4.2697187e+03 -1.0251398e+03 3.3290108e+03 - 4.2990256e+03 -9.5837838e+02 3.3200280e+03 - 4.3261680e+03 -8.9278241e+02 3.3114459e+03 - 4.3512156e+03 -8.2828506e+02 3.3032966e+03 - 4.3742350e+03 -7.6481685e+02 3.2956086e+03 - 4.3952895e+03 -7.0230632e+02 3.2884068e+03 - 4.4144382e+03 -6.4068062e+02 3.2817133e+03 - 4.4317359e+03 -5.7986600e+02 3.2755469e+03 - 4.4472330e+03 -5.1978821e+02 3.2699243e+03 - 4.4609756e+03 -4.6037277e+02 3.2648596e+03 - 4.4730045e+03 -4.0154520e+02 3.2603649e+03 - 4.4833562e+03 -3.4323116e+02 3.2564504e+03 - 4.4920620e+03 -2.8535652e+02 3.2531246e+03 - 4.4991487e+03 -2.2784747e+02 3.2503946e+03 - 4.5046380e+03 -1.7063046e+02 3.2482657e+03 - 4.5085469e+03 -1.1363222e+02 3.2467421e+03 - 4.5108874e+03 -5.6779702e+01 3.2458268e+03 - 4.5116667e+03 0.0000000e+00 3.2455215e+03 - 4.5518112e+03 0.0000000e+00 3.1891078e+03 - 4.5510353e+03 5.6633100e+01 3.1894231e+03 - 4.5487052e+03 1.1334064e+02 3.1903686e+03 - 4.5448132e+03 1.7019718e+02 3.1919425e+03 - 4.5393470e+03 2.2727746e+02 3.1941421e+03 - 4.5322891e+03 2.8465654e+02 3.1969634e+03 - 4.5236168e+03 3.4240983e+02 3.2004012e+03 - 4.5133027e+03 4.0061317e+02 3.2044486e+03 - 4.5013139e+03 4.5934281e+02 3.2090976e+03 - 4.4876129e+03 5.1867544e+02 3.2143383e+03 - 4.4721569e+03 5.7868808e+02 3.2201588e+03 - 4.4548981e+03 6.3945796e+02 3.2265453e+03 - 4.4357839e+03 7.0106235e+02 3.2334817e+03 - 4.4147567e+03 7.6357826e+02 3.2409491e+03 - 4.3917546e+03 8.2708210e+02 3.2489259e+03 - 4.3667112e+03 8.9164918e+02 3.2573871e+03 - 4.3395560e+03 9.5735313e+02 3.2663045e+03 - 4.3102153e+03 1.0242652e+03 3.2756456e+03 - 4.2786124e+03 1.0924533e+03 3.2853739e+03 - 4.2446684e+03 1.1619810e+03 3.2954484e+03 - 4.2083034e+03 1.2329065e+03 3.3058230e+03 - 4.1694375e+03 1.3052808e+03 3.3164466e+03 - 4.1279921e+03 1.3791465e+03 3.3272624e+03 - 4.0838917e+03 1.4545362e+03 3.3382081e+03 - 4.0370657e+03 1.5314700e+03 3.3492158e+03 - 3.9874506e+03 1.6099541e+03 3.3602118e+03 - 3.9349920e+03 1.6899784e+03 3.3711171e+03 - 3.8796475e+03 1.7715147e+03 3.3818474e+03 - 3.8213891e+03 1.8545143e+03 3.3923143e+03 - 3.7602061e+03 1.9389064e+03 3.4024255e+03 - 3.6961078e+03 2.0245967e+03 3.4120863e+03 - 3.6291259e+03 2.1114658e+03 3.4212009e+03 - 3.5593168e+03 2.1993691e+03 3.4296736e+03 - 3.4867636e+03 2.2881365e+03 3.4374114e+03 - 3.4115772e+03 2.3775731e+03 3.4443250e+03 - 3.3338966e+03 2.4674612e+03 3.4503314e+03 - 3.2538893e+03 2.5575625e+03 3.4553562e+03 - 3.1717491e+03 2.6476214e+03 3.4593350e+03 - 3.0876947e+03 2.7373693e+03 3.4622157e+03 - 3.0019660e+03 2.8265292e+03 3.4639599e+03 - 2.9148208e+03 2.9148208e+03 3.4645439e+03 - 2.8265292e+03 3.0019660e+03 3.4639599e+03 - 2.7373693e+03 3.0876947e+03 3.4622157e+03 - 2.6476214e+03 3.1717491e+03 3.4593350e+03 - 2.5575625e+03 3.2538893e+03 3.4553562e+03 - 2.4674612e+03 3.3338966e+03 3.4503314e+03 - 2.3775731e+03 3.4115772e+03 3.4443250e+03 - 2.2881365e+03 3.4867636e+03 3.4374114e+03 - 2.1993691e+03 3.5593168e+03 3.4296736e+03 - 2.1114658e+03 3.6291259e+03 3.4212009e+03 - 2.0245967e+03 3.6961078e+03 3.4120863e+03 - 1.9389064e+03 3.7602061e+03 3.4024255e+03 - 1.8545143e+03 3.8213891e+03 3.3923143e+03 - 1.7715147e+03 3.8796475e+03 3.3818474e+03 - 1.6899784e+03 3.9349920e+03 3.3711171e+03 - 1.6099541e+03 3.9874506e+03 3.3602118e+03 - 1.5314700e+03 4.0370657e+03 3.3492158e+03 - 1.4545362e+03 4.0838917e+03 3.3382081e+03 - 1.3791465e+03 4.1279921e+03 3.3272624e+03 - 1.3052808e+03 4.1694375e+03 3.3164466e+03 - 1.2329065e+03 4.2083034e+03 3.3058230e+03 - 1.1619810e+03 4.2446684e+03 3.2954484e+03 - 1.0924533e+03 4.2786124e+03 3.2853739e+03 - 1.0242652e+03 4.3102153e+03 3.2756456e+03 - 9.5735313e+02 4.3395560e+03 3.2663045e+03 - 8.9164918e+02 4.3667112e+03 3.2573871e+03 - 8.2708210e+02 4.3917546e+03 3.2489259e+03 - 7.6357826e+02 4.4147567e+03 3.2409491e+03 - 7.0106235e+02 4.4357839e+03 3.2334817e+03 - 6.3945796e+02 4.4548981e+03 3.2265453e+03 - 5.7868808e+02 4.4721569e+03 3.2201588e+03 - 5.1867544e+02 4.4876129e+03 3.2143383e+03 - 4.5934281e+02 4.5013139e+03 3.2090976e+03 - 4.0061317e+02 4.5133027e+03 3.2044486e+03 - 3.4240983e+02 4.5236168e+03 3.2004012e+03 - 2.8465654e+02 4.5322891e+03 3.1969634e+03 - 2.2727746e+02 4.5393470e+03 3.1941421e+03 - 1.7019718e+02 4.5448132e+03 3.1919425e+03 - 1.1334064e+02 4.5487052e+03 3.1903686e+03 - 5.6633100e+01 4.5510353e+03 3.1894231e+03 - -4.8134273e-09 4.5518112e+03 3.1891078e+03 - -5.6633100e+01 4.5510353e+03 3.1894231e+03 - -1.1334064e+02 4.5487052e+03 3.1903686e+03 - -1.7019718e+02 4.5448132e+03 3.1919425e+03 - -2.2727746e+02 4.5393470e+03 3.1941421e+03 - -2.8465654e+02 4.5322891e+03 3.1969634e+03 - -3.4240983e+02 4.5236168e+03 3.2004012e+03 - -4.0061317e+02 4.5133027e+03 3.2044486e+03 - -4.5934281e+02 4.5013139e+03 3.2090976e+03 - -5.1867544e+02 4.4876129e+03 3.2143383e+03 - -5.7868808e+02 4.4721569e+03 3.2201588e+03 - -6.3945796e+02 4.4548981e+03 3.2265453e+03 - -7.0106235e+02 4.4357839e+03 3.2334817e+03 - -7.6357826e+02 4.4147567e+03 3.2409491e+03 - -8.2708210e+02 4.3917546e+03 3.2489259e+03 - -8.9164918e+02 4.3667112e+03 3.2573871e+03 - -9.5735313e+02 4.3395560e+03 3.2663045e+03 - -1.0242652e+03 4.3102153e+03 3.2756456e+03 - -1.0924533e+03 4.2786124e+03 3.2853739e+03 - -1.1619810e+03 4.2446684e+03 3.2954484e+03 - -1.2329065e+03 4.2083034e+03 3.3058230e+03 - -1.3052808e+03 4.1694375e+03 3.3164466e+03 - -1.3791465e+03 4.1279921e+03 3.3272624e+03 - -1.4545362e+03 4.0838917e+03 3.3382081e+03 - -1.5314700e+03 4.0370657e+03 3.3492158e+03 - -1.6099541e+03 3.9874506e+03 3.3602118e+03 - -1.6899784e+03 3.9349920e+03 3.3711171e+03 - -1.7715147e+03 3.8796475e+03 3.3818474e+03 - -1.8545143e+03 3.8213891e+03 3.3923143e+03 - -1.9389064e+03 3.7602061e+03 3.4024255e+03 - -2.0245967e+03 3.6961078e+03 3.4120863e+03 - -2.1114658e+03 3.6291259e+03 3.4212009e+03 - -2.1993691e+03 3.5593168e+03 3.4296736e+03 - -2.2881365e+03 3.4867636e+03 3.4374114e+03 - -2.3775731e+03 3.4115772e+03 3.4443250e+03 - -2.4674612e+03 3.3338966e+03 3.4503314e+03 - -2.5575625e+03 3.2538893e+03 3.4553562e+03 - -2.6476214e+03 3.1717491e+03 3.4593350e+03 - -2.7373693e+03 3.0876947e+03 3.4622157e+03 - -2.8265292e+03 3.0019660e+03 3.4639599e+03 - -2.9148208e+03 2.9148208e+03 3.4645439e+03 - -3.0019660e+03 2.8265292e+03 3.4639599e+03 - -3.0876947e+03 2.7373693e+03 3.4622157e+03 - -3.1717491e+03 2.6476214e+03 3.4593350e+03 - -3.2538893e+03 2.5575625e+03 3.4553562e+03 - -3.3338966e+03 2.4674612e+03 3.4503314e+03 - -3.4115772e+03 2.3775731e+03 3.4443250e+03 - -3.4867636e+03 2.2881365e+03 3.4374114e+03 - -3.5593168e+03 2.1993691e+03 3.4296736e+03 - -3.6291259e+03 2.1114658e+03 3.4212009e+03 - -3.6961078e+03 2.0245967e+03 3.4120863e+03 - -3.7602061e+03 1.9389064e+03 3.4024255e+03 - -3.8213891e+03 1.8545143e+03 3.3923143e+03 - -3.8796475e+03 1.7715147e+03 3.3818474e+03 - -3.9349920e+03 1.6899784e+03 3.3711171e+03 - -3.9874506e+03 1.6099541e+03 3.3602118e+03 - -4.0370657e+03 1.5314700e+03 3.3492158e+03 - -4.0838917e+03 1.4545362e+03 3.3382081e+03 - -4.1279921e+03 1.3791465e+03 3.3272624e+03 - -4.1694375e+03 1.3052808e+03 3.3164466e+03 - -4.2083034e+03 1.2329065e+03 3.3058230e+03 - -4.2446684e+03 1.1619810e+03 3.2954484e+03 - -4.2786124e+03 1.0924533e+03 3.2853739e+03 - -4.3102153e+03 1.0242652e+03 3.2756456e+03 - -4.3395560e+03 9.5735313e+02 3.2663045e+03 - -4.3667112e+03 8.9164918e+02 3.2573871e+03 - -4.3917546e+03 8.2708210e+02 3.2489259e+03 - -4.4147567e+03 7.6357826e+02 3.2409491e+03 - -4.4357839e+03 7.0106235e+02 3.2334817e+03 - -4.4548981e+03 6.3945796e+02 3.2265453e+03 - -4.4721569e+03 5.7868808e+02 3.2201588e+03 - -4.4876129e+03 5.1867544e+02 3.2143383e+03 - -4.5013139e+03 4.5934281e+02 3.2090976e+03 - -4.5133027e+03 4.0061317e+02 3.2044486e+03 - -4.5236168e+03 3.4240983e+02 3.2004012e+03 - -4.5322891e+03 2.8465654e+02 3.1969634e+03 - -4.5393470e+03 2.2727746e+02 3.1941421e+03 - -4.5448132e+03 1.7019718e+02 3.1919425e+03 - -4.5487052e+03 1.1334064e+02 3.1903686e+03 - -4.5510353e+03 5.6633100e+01 3.1894231e+03 - -4.5518112e+03 4.8134273e-09 3.1891078e+03 - -4.5510353e+03 -5.6633100e+01 3.1894231e+03 - -4.5487052e+03 -1.1334064e+02 3.1903686e+03 - -4.5448132e+03 -1.7019718e+02 3.1919425e+03 - -4.5393470e+03 -2.2727746e+02 3.1941421e+03 - -4.5322891e+03 -2.8465654e+02 3.1969634e+03 - -4.5236168e+03 -3.4240983e+02 3.2004012e+03 - -4.5133027e+03 -4.0061317e+02 3.2044486e+03 - -4.5013139e+03 -4.5934281e+02 3.2090976e+03 - -4.4876129e+03 -5.1867544e+02 3.2143383e+03 - -4.4721569e+03 -5.7868808e+02 3.2201588e+03 - -4.4548981e+03 -6.3945796e+02 3.2265453e+03 - -4.4357839e+03 -7.0106235e+02 3.2334817e+03 - -4.4147567e+03 -7.6357826e+02 3.2409491e+03 - -4.3917546e+03 -8.2708210e+02 3.2489259e+03 - -4.3667112e+03 -8.9164918e+02 3.2573871e+03 - -4.3395560e+03 -9.5735313e+02 3.2663045e+03 - -4.3102153e+03 -1.0242652e+03 3.2756456e+03 - -4.2786124e+03 -1.0924533e+03 3.2853739e+03 - -4.2446684e+03 -1.1619810e+03 3.2954484e+03 - -4.2083034e+03 -1.2329065e+03 3.3058230e+03 - -4.1694375e+03 -1.3052808e+03 3.3164466e+03 - -4.1279921e+03 -1.3791465e+03 3.3272624e+03 - -4.0838917e+03 -1.4545362e+03 3.3382081e+03 - -4.0370657e+03 -1.5314700e+03 3.3492158e+03 - -3.9874506e+03 -1.6099541e+03 3.3602118e+03 - -3.9349920e+03 -1.6899784e+03 3.3711171e+03 - -3.8796475e+03 -1.7715147e+03 3.3818474e+03 - -3.8213891e+03 -1.8545143e+03 3.3923143e+03 - -3.7602061e+03 -1.9389064e+03 3.4024255e+03 - -3.6961078e+03 -2.0245967e+03 3.4120863e+03 - -3.6291259e+03 -2.1114658e+03 3.4212009e+03 - -3.5593168e+03 -2.1993691e+03 3.4296736e+03 - -3.4867636e+03 -2.2881365e+03 3.4374114e+03 - -3.4115772e+03 -2.3775731e+03 3.4443250e+03 - -3.3338966e+03 -2.4674612e+03 3.4503314e+03 - -3.2538893e+03 -2.5575625e+03 3.4553562e+03 - -3.1717491e+03 -2.6476214e+03 3.4593350e+03 - -3.0876947e+03 -2.7373693e+03 3.4622157e+03 - -3.0019660e+03 -2.8265292e+03 3.4639599e+03 - -2.9148208e+03 -2.9148208e+03 3.4645439e+03 - -2.8265292e+03 -3.0019660e+03 3.4639599e+03 - -2.7373693e+03 -3.0876947e+03 3.4622157e+03 - -2.6476214e+03 -3.1717491e+03 3.4593350e+03 - -2.5575625e+03 -3.2538893e+03 3.4553562e+03 - -2.4674612e+03 -3.3338966e+03 3.4503314e+03 - -2.3775731e+03 -3.4115772e+03 3.4443250e+03 - -2.2881365e+03 -3.4867636e+03 3.4374114e+03 - -2.1993691e+03 -3.5593168e+03 3.4296736e+03 - -2.1114658e+03 -3.6291259e+03 3.4212009e+03 - -2.0245967e+03 -3.6961078e+03 3.4120863e+03 - -1.9389064e+03 -3.7602061e+03 3.4024255e+03 - -1.8545143e+03 -3.8213891e+03 3.3923143e+03 - -1.7715147e+03 -3.8796475e+03 3.3818474e+03 - -1.6899784e+03 -3.9349920e+03 3.3711171e+03 - -1.6099541e+03 -3.9874506e+03 3.3602118e+03 - -1.5314700e+03 -4.0370657e+03 3.3492158e+03 - -1.4545362e+03 -4.0838917e+03 3.3382081e+03 - -1.3791465e+03 -4.1279921e+03 3.3272624e+03 - -1.3052808e+03 -4.1694375e+03 3.3164466e+03 - -1.2329065e+03 -4.2083034e+03 3.3058230e+03 - -1.1619810e+03 -4.2446684e+03 3.2954484e+03 - -1.0924533e+03 -4.2786124e+03 3.2853739e+03 - -1.0242652e+03 -4.3102153e+03 3.2756456e+03 - -9.5735313e+02 -4.3395560e+03 3.2663045e+03 - -8.9164918e+02 -4.3667112e+03 3.2573871e+03 - -8.2708210e+02 -4.3917546e+03 3.2489259e+03 - -7.6357826e+02 -4.4147567e+03 3.2409491e+03 - -7.0106235e+02 -4.4357839e+03 3.2334817e+03 - -6.3945796e+02 -4.4548981e+03 3.2265453e+03 - -5.7868808e+02 -4.4721569e+03 3.2201588e+03 - -5.1867544e+02 -4.4876129e+03 3.2143383e+03 - -4.5934281e+02 -4.5013139e+03 3.2090976e+03 - -4.0061317e+02 -4.5133027e+03 3.2044486e+03 - -3.4240983e+02 -4.5236168e+03 3.2004012e+03 - -2.8465654e+02 -4.5322891e+03 3.1969634e+03 - -2.2727746e+02 -4.5393470e+03 3.1941421e+03 - -1.7019718e+02 -4.5448132e+03 3.1919425e+03 - -1.1334064e+02 -4.5487052e+03 3.1903686e+03 - -5.6633100e+01 -4.5510353e+03 3.1894231e+03 - 0.0000000e+00 -4.5518112e+03 3.1891078e+03 - 5.6633100e+01 -4.5510353e+03 3.1894231e+03 - 1.1334064e+02 -4.5487052e+03 3.1903686e+03 - 1.7019718e+02 -4.5448132e+03 3.1919425e+03 - 2.2727746e+02 -4.5393470e+03 3.1941421e+03 - 2.8465654e+02 -4.5322891e+03 3.1969634e+03 - 3.4240983e+02 -4.5236168e+03 3.2004012e+03 - 4.0061317e+02 -4.5133027e+03 3.2044486e+03 - 4.5934281e+02 -4.5013139e+03 3.2090976e+03 - 5.1867544e+02 -4.4876129e+03 3.2143383e+03 - 5.7868808e+02 -4.4721569e+03 3.2201588e+03 - 6.3945796e+02 -4.4548981e+03 3.2265453e+03 - 7.0106235e+02 -4.4357839e+03 3.2334817e+03 - 7.6357826e+02 -4.4147567e+03 3.2409491e+03 - 8.2708210e+02 -4.3917546e+03 3.2489259e+03 - 8.9164918e+02 -4.3667112e+03 3.2573871e+03 - 9.5735313e+02 -4.3395560e+03 3.2663045e+03 - 1.0242652e+03 -4.3102153e+03 3.2756456e+03 - 1.0924533e+03 -4.2786124e+03 3.2853739e+03 - 1.1619810e+03 -4.2446684e+03 3.2954484e+03 - 1.2329065e+03 -4.2083034e+03 3.3058230e+03 - 1.3052808e+03 -4.1694375e+03 3.3164466e+03 - 1.3791465e+03 -4.1279921e+03 3.3272624e+03 - 1.4545362e+03 -4.0838917e+03 3.3382081e+03 - 1.5314700e+03 -4.0370657e+03 3.3492158e+03 - 1.6099541e+03 -3.9874506e+03 3.3602118e+03 - 1.6899784e+03 -3.9349920e+03 3.3711171e+03 - 1.7715147e+03 -3.8796475e+03 3.3818474e+03 - 1.8545143e+03 -3.8213891e+03 3.3923143e+03 - 1.9389064e+03 -3.7602061e+03 3.4024255e+03 - 2.0245967e+03 -3.6961078e+03 3.4120863e+03 - 2.1114658e+03 -3.6291259e+03 3.4212009e+03 - 2.1993691e+03 -3.5593168e+03 3.4296736e+03 - 2.2881365e+03 -3.4867636e+03 3.4374114e+03 - 2.3775731e+03 -3.4115772e+03 3.4443250e+03 - 2.4674612e+03 -3.3338966e+03 3.4503314e+03 - 2.5575625e+03 -3.2538893e+03 3.4553562e+03 - 2.6476214e+03 -3.1717491e+03 3.4593350e+03 - 2.7373693e+03 -3.0876947e+03 3.4622157e+03 - 2.8265292e+03 -3.0019660e+03 3.4639599e+03 - 2.9148208e+03 -2.9148208e+03 3.4645439e+03 - 3.0019660e+03 -2.8265292e+03 3.4639599e+03 - 3.0876947e+03 -2.7373693e+03 3.4622157e+03 - 3.1717491e+03 -2.6476214e+03 3.4593350e+03 - 3.2538893e+03 -2.5575625e+03 3.4553562e+03 - 3.3338966e+03 -2.4674612e+03 3.4503314e+03 - 3.4115772e+03 -2.3775731e+03 3.4443250e+03 - 3.4867636e+03 -2.2881365e+03 3.4374114e+03 - 3.5593168e+03 -2.1993691e+03 3.4296736e+03 - 3.6291259e+03 -2.1114658e+03 3.4212009e+03 - 3.6961078e+03 -2.0245967e+03 3.4120863e+03 - 3.7602061e+03 -1.9389064e+03 3.4024255e+03 - 3.8213891e+03 -1.8545143e+03 3.3923143e+03 - 3.8796475e+03 -1.7715147e+03 3.3818474e+03 - 3.9349920e+03 -1.6899784e+03 3.3711171e+03 - 3.9874506e+03 -1.6099541e+03 3.3602118e+03 - 4.0370657e+03 -1.5314700e+03 3.3492158e+03 - 4.0838917e+03 -1.4545362e+03 3.3382081e+03 - 4.1279921e+03 -1.3791465e+03 3.3272624e+03 - 4.1694375e+03 -1.3052808e+03 3.3164466e+03 - 4.2083034e+03 -1.2329065e+03 3.3058230e+03 - 4.2446684e+03 -1.1619810e+03 3.2954484e+03 - 4.2786124e+03 -1.0924533e+03 3.2853739e+03 - 4.3102153e+03 -1.0242652e+03 3.2756456e+03 - 4.3395560e+03 -9.5735313e+02 3.2663045e+03 - 4.3667112e+03 -8.9164918e+02 3.2573871e+03 - 4.3917546e+03 -8.2708210e+02 3.2489259e+03 - 4.4147567e+03 -7.6357826e+02 3.2409491e+03 - 4.4357839e+03 -7.0106235e+02 3.2334817e+03 - 4.4548981e+03 -6.3945796e+02 3.2265453e+03 - 4.4721569e+03 -5.7868808e+02 3.2201588e+03 - 4.4876129e+03 -5.1867544e+02 3.2143383e+03 - 4.5013139e+03 -4.5934281e+02 3.2090976e+03 - 4.5133027e+03 -4.0061317e+02 3.2044486e+03 - 4.5236168e+03 -3.4240983e+02 3.2004012e+03 - 4.5322891e+03 -2.8465654e+02 3.1969634e+03 - 4.5393470e+03 -2.2727746e+02 3.1941421e+03 - 4.5448132e+03 -1.7019718e+02 3.1919425e+03 - 4.5487052e+03 -1.1334064e+02 3.1903686e+03 - 4.5510353e+03 -5.6633100e+01 3.1894231e+03 - 4.5518112e+03 4.8134273e-09 3.1891078e+03 - 4.5915115e+03 4.8134273e-09 3.1309330e+03 - 4.5907396e+03 5.6473721e+01 3.1312582e+03 - 4.5884214e+03 1.1302343e+02 3.1322335e+03 - 4.5845491e+03 1.6972525e+02 3.1338573e+03 - 4.5791098e+03 2.2665556e+02 3.1361268e+03 - 4.5720855e+03 2.8389111e+02 3.1390384e+03 - 4.5634529e+03 3.4150912e+02 3.1425871e+03 - 4.5531834e+03 3.9958736e+02 3.1467664e+03 - 4.5412432e+03 4.5820420e+02 3.1515685e+03 - 4.5275933e+03 5.1743858e+02 3.1569839e+03 - 4.5121892e+03 5.7737002e+02 3.1630012e+03 - 4.4949814e+03 6.3807849e+02 3.1696070e+03 - 4.4759148e+03 6.9964424e+02 3.1767855e+03 - 4.4549295e+03 7.6214757e+02 3.1845183e+03 - 4.4319606e+03 8.2566844e+02 3.1927841e+03 - 4.4069383e+03 8.9028609e+02 3.2015580e+03 - 4.3797886e+03 9.5607836e+02 3.2108120e+03 - 4.3504335e+03 1.0231210e+03 3.2205135e+03 - 4.3187917e+03 1.0914869e+03 3.2306260e+03 - 4.2847792e+03 1.1612447e+03 3.2411078e+03 - 4.2483105e+03 1.2324580e+03 3.2519121e+03 - 4.2092998e+03 1.3051834e+03 3.2629867e+03 - 4.1676619e+03 1.3794692e+03 3.2742733e+03 - 4.1233148e+03 1.4553536e+03 3.2857076e+03 - 4.0761806e+03 1.5328622e+03 3.2972193e+03 - 4.0261887e+03 1.6120064e+03 3.3087315e+03 - 3.9732775e+03 1.6927808e+03 3.3201615e+03 - 3.9173977e+03 1.7751609e+03 3.3314209e+03 - 3.8585149e+03 1.8591010e+03 3.3424162e+03 - 3.7966127e+03 1.9445319e+03 3.3530497e+03 - 3.7316954e+03 2.0313593e+03 3.3632205e+03 - 3.6637916e+03 2.1194622e+03 3.3728262e+03 - 3.5929557e+03 2.2086922e+03 3.3817643e+03 - 3.5192712e+03 2.2988733e+03 3.3899346e+03 - 3.4428511e+03 2.3898029e+03 3.3972408e+03 - 3.3638392e+03 2.4812529e+03 3.4035931e+03 - 3.2824101e+03 2.5729727e+03 3.4089107e+03 - 3.1987670e+03 2.6646928e+03 3.4131235e+03 - 3.1131404e+03 2.7561288e+03 3.4161749e+03 - 3.0257840e+03 2.8469872e+03 3.4180229e+03 - 2.9369707e+03 2.9369707e+03 3.4186418e+03 - 2.8469872e+03 3.0257840e+03 3.4180229e+03 - 2.7561288e+03 3.1131404e+03 3.4161749e+03 - 2.6646928e+03 3.1987670e+03 3.4131235e+03 - 2.5729727e+03 3.2824101e+03 3.4089107e+03 - 2.4812529e+03 3.3638392e+03 3.4035931e+03 - 2.3898029e+03 3.4428511e+03 3.3972408e+03 - 2.2988733e+03 3.5192712e+03 3.3899346e+03 - 2.2086922e+03 3.5929557e+03 3.3817643e+03 - 2.1194622e+03 3.6637916e+03 3.3728262e+03 - 2.0313593e+03 3.7316954e+03 3.3632205e+03 - 1.9445319e+03 3.7966127e+03 3.3530497e+03 - 1.8591010e+03 3.8585149e+03 3.3424162e+03 - 1.7751609e+03 3.9173977e+03 3.3314209e+03 - 1.6927808e+03 3.9732775e+03 3.3201615e+03 - 1.6120064e+03 4.0261887e+03 3.3087315e+03 - 1.5328622e+03 4.0761806e+03 3.2972193e+03 - 1.4553536e+03 4.1233148e+03 3.2857076e+03 - 1.3794692e+03 4.1676619e+03 3.2742733e+03 - 1.3051834e+03 4.2092998e+03 3.2629867e+03 - 1.2324580e+03 4.2483105e+03 3.2519121e+03 - 1.1612447e+03 4.2847792e+03 3.2411078e+03 - 1.0914869e+03 4.3187917e+03 3.2306260e+03 - 1.0231210e+03 4.3504335e+03 3.2205135e+03 - 9.5607836e+02 4.3797886e+03 3.2108120e+03 - 8.9028609e+02 4.4069383e+03 3.2015580e+03 - 8.2566844e+02 4.4319606e+03 3.1927841e+03 - 7.6214757e+02 4.4549295e+03 3.1845183e+03 - 6.9964424e+02 4.4759148e+03 3.1767855e+03 - 6.3807849e+02 4.4949814e+03 3.1696070e+03 - 5.7737002e+02 4.5121892e+03 3.1630012e+03 - 5.1743858e+02 4.5275933e+03 3.1569839e+03 - 4.5820420e+02 4.5412432e+03 3.1515685e+03 - 3.9958736e+02 4.5531834e+03 3.1467664e+03 - 3.4150912e+02 4.5634529e+03 3.1425871e+03 - 2.8389111e+02 4.5720855e+03 3.1390384e+03 - 2.2665556e+02 4.5791098e+03 3.1361268e+03 - 1.6972525e+02 4.5845491e+03 3.1338573e+03 - 1.1302343e+02 4.5884214e+03 3.1322335e+03 - 5.6473721e+01 4.5907396e+03 3.1312582e+03 - 4.8134273e-09 4.5915115e+03 3.1309330e+03 - -5.6473721e+01 4.5907396e+03 3.1312582e+03 - -1.1302343e+02 4.5884214e+03 3.1322335e+03 - -1.6972525e+02 4.5845491e+03 3.1338573e+03 - -2.2665556e+02 4.5791098e+03 3.1361268e+03 - -2.8389111e+02 4.5720855e+03 3.1390384e+03 - -3.4150912e+02 4.5634529e+03 3.1425871e+03 - -3.9958736e+02 4.5531834e+03 3.1467664e+03 - -4.5820420e+02 4.5412432e+03 3.1515685e+03 - -5.1743858e+02 4.5275933e+03 3.1569839e+03 - -5.7737002e+02 4.5121892e+03 3.1630012e+03 - -6.3807849e+02 4.4949814e+03 3.1696070e+03 - -6.9964424e+02 4.4759148e+03 3.1767855e+03 - -7.6214757e+02 4.4549295e+03 3.1845183e+03 - -8.2566844e+02 4.4319606e+03 3.1927841e+03 - -8.9028609e+02 4.4069383e+03 3.2015580e+03 - -9.5607836e+02 4.3797886e+03 3.2108120e+03 - -1.0231210e+03 4.3504335e+03 3.2205135e+03 - -1.0914869e+03 4.3187917e+03 3.2306260e+03 - -1.1612447e+03 4.2847792e+03 3.2411078e+03 - -1.2324580e+03 4.2483105e+03 3.2519121e+03 - -1.3051834e+03 4.2092998e+03 3.2629867e+03 - -1.3794692e+03 4.1676619e+03 3.2742733e+03 - -1.4553536e+03 4.1233148e+03 3.2857076e+03 - -1.5328622e+03 4.0761806e+03 3.2972193e+03 - -1.6120064e+03 4.0261887e+03 3.3087315e+03 - -1.6927808e+03 3.9732775e+03 3.3201615e+03 - -1.7751609e+03 3.9173977e+03 3.3314209e+03 - -1.8591010e+03 3.8585149e+03 3.3424162e+03 - -1.9445319e+03 3.7966127e+03 3.3530497e+03 - -2.0313593e+03 3.7316954e+03 3.3632205e+03 - -2.1194622e+03 3.6637916e+03 3.3728262e+03 - -2.2086922e+03 3.5929557e+03 3.3817643e+03 - -2.2988733e+03 3.5192712e+03 3.3899346e+03 - -2.3898029e+03 3.4428511e+03 3.3972408e+03 - -2.4812529e+03 3.3638392e+03 3.4035931e+03 - -2.5729727e+03 3.2824101e+03 3.4089107e+03 - -2.6646928e+03 3.1987670e+03 3.4131235e+03 - -2.7561288e+03 3.1131404e+03 3.4161749e+03 - -2.8469872e+03 3.0257840e+03 3.4180229e+03 - -2.9369707e+03 2.9369707e+03 3.4186418e+03 - -3.0257840e+03 2.8469872e+03 3.4180229e+03 - -3.1131404e+03 2.7561288e+03 3.4161749e+03 - -3.1987670e+03 2.6646928e+03 3.4131235e+03 - -3.2824101e+03 2.5729727e+03 3.4089107e+03 - -3.3638392e+03 2.4812529e+03 3.4035931e+03 - -3.4428511e+03 2.3898029e+03 3.3972408e+03 - -3.5192712e+03 2.2988733e+03 3.3899346e+03 - -3.5929557e+03 2.2086922e+03 3.3817643e+03 - -3.6637916e+03 2.1194622e+03 3.3728262e+03 - -3.7316954e+03 2.0313593e+03 3.3632205e+03 - -3.7966127e+03 1.9445319e+03 3.3530497e+03 - -3.8585149e+03 1.8591010e+03 3.3424162e+03 - -3.9173977e+03 1.7751609e+03 3.3314209e+03 - -3.9732775e+03 1.6927808e+03 3.3201615e+03 - -4.0261887e+03 1.6120064e+03 3.3087315e+03 - -4.0761806e+03 1.5328622e+03 3.2972193e+03 - -4.1233148e+03 1.4553536e+03 3.2857076e+03 - -4.1676619e+03 1.3794692e+03 3.2742733e+03 - -4.2092998e+03 1.3051834e+03 3.2629867e+03 - -4.2483105e+03 1.2324580e+03 3.2519121e+03 - -4.2847792e+03 1.1612447e+03 3.2411078e+03 - -4.3187917e+03 1.0914869e+03 3.2306260e+03 - -4.3504335e+03 1.0231210e+03 3.2205135e+03 - -4.3797886e+03 9.5607836e+02 3.2108120e+03 - -4.4069383e+03 8.9028609e+02 3.2015580e+03 - -4.4319606e+03 8.2566844e+02 3.1927841e+03 - -4.4549295e+03 7.6214757e+02 3.1845183e+03 - -4.4759148e+03 6.9964424e+02 3.1767855e+03 - -4.4949814e+03 6.3807849e+02 3.1696070e+03 - -4.5121892e+03 5.7737002e+02 3.1630012e+03 - -4.5275933e+03 5.1743858e+02 3.1569839e+03 - -4.5412432e+03 4.5820420e+02 3.1515685e+03 - -4.5531834e+03 3.9958736e+02 3.1467664e+03 - -4.5634529e+03 3.4150912e+02 3.1425871e+03 - -4.5720855e+03 2.8389111e+02 3.1390384e+03 - -4.5791098e+03 2.2665556e+02 3.1361268e+03 - -4.5845491e+03 1.6972525e+02 3.1338573e+03 - -4.5884214e+03 1.1302343e+02 3.1322335e+03 - -4.5907396e+03 5.6473721e+01 3.1312582e+03 - -4.5915115e+03 4.8134273e-09 3.1309330e+03 - -4.5907396e+03 -5.6473721e+01 3.1312582e+03 - -4.5884214e+03 -1.1302343e+02 3.1322335e+03 - -4.5845491e+03 -1.6972525e+02 3.1338573e+03 - -4.5791098e+03 -2.2665556e+02 3.1361268e+03 - -4.5720855e+03 -2.8389111e+02 3.1390384e+03 - -4.5634529e+03 -3.4150912e+02 3.1425871e+03 - -4.5531834e+03 -3.9958736e+02 3.1467664e+03 - -4.5412432e+03 -4.5820420e+02 3.1515685e+03 - -4.5275933e+03 -5.1743858e+02 3.1569839e+03 - -4.5121892e+03 -5.7737002e+02 3.1630012e+03 - -4.4949814e+03 -6.3807849e+02 3.1696070e+03 - -4.4759148e+03 -6.9964424e+02 3.1767855e+03 - -4.4549295e+03 -7.6214757e+02 3.1845183e+03 - -4.4319606e+03 -8.2566844e+02 3.1927841e+03 - -4.4069383e+03 -8.9028609e+02 3.2015580e+03 - -4.3797886e+03 -9.5607836e+02 3.2108120e+03 - -4.3504335e+03 -1.0231210e+03 3.2205135e+03 - -4.3187917e+03 -1.0914869e+03 3.2306260e+03 - -4.2847792e+03 -1.1612447e+03 3.2411078e+03 - -4.2483105e+03 -1.2324580e+03 3.2519121e+03 - -4.2092998e+03 -1.3051834e+03 3.2629867e+03 - -4.1676619e+03 -1.3794692e+03 3.2742733e+03 - -4.1233148e+03 -1.4553536e+03 3.2857076e+03 - -4.0761806e+03 -1.5328622e+03 3.2972193e+03 - -4.0261887e+03 -1.6120064e+03 3.3087315e+03 - -3.9732775e+03 -1.6927808e+03 3.3201615e+03 - -3.9173977e+03 -1.7751609e+03 3.3314209e+03 - -3.8585149e+03 -1.8591010e+03 3.3424162e+03 - -3.7966127e+03 -1.9445319e+03 3.3530497e+03 - -3.7316954e+03 -2.0313593e+03 3.3632205e+03 - -3.6637916e+03 -2.1194622e+03 3.3728262e+03 - -3.5929557e+03 -2.2086922e+03 3.3817643e+03 - -3.5192712e+03 -2.2988733e+03 3.3899346e+03 - -3.4428511e+03 -2.3898029e+03 3.3972408e+03 - -3.3638392e+03 -2.4812529e+03 3.4035931e+03 - -3.2824101e+03 -2.5729727e+03 3.4089107e+03 - -3.1987670e+03 -2.6646928e+03 3.4131235e+03 - -3.1131404e+03 -2.7561288e+03 3.4161749e+03 - -3.0257840e+03 -2.8469872e+03 3.4180229e+03 - -2.9369707e+03 -2.9369707e+03 3.4186418e+03 - -2.8469872e+03 -3.0257840e+03 3.4180229e+03 - -2.7561288e+03 -3.1131404e+03 3.4161749e+03 - -2.6646928e+03 -3.1987670e+03 3.4131235e+03 - -2.5729727e+03 -3.2824101e+03 3.4089107e+03 - -2.4812529e+03 -3.3638392e+03 3.4035931e+03 - -2.3898029e+03 -3.4428511e+03 3.3972408e+03 - -2.2988733e+03 -3.5192712e+03 3.3899346e+03 - -2.2086922e+03 -3.5929557e+03 3.3817643e+03 - -2.1194622e+03 -3.6637916e+03 3.3728262e+03 - -2.0313593e+03 -3.7316954e+03 3.3632205e+03 - -1.9445319e+03 -3.7966127e+03 3.3530497e+03 - -1.8591010e+03 -3.8585149e+03 3.3424162e+03 - -1.7751609e+03 -3.9173977e+03 3.3314209e+03 - -1.6927808e+03 -3.9732775e+03 3.3201615e+03 - -1.6120064e+03 -4.0261887e+03 3.3087315e+03 - -1.5328622e+03 -4.0761806e+03 3.2972193e+03 - -1.4553536e+03 -4.1233148e+03 3.2857076e+03 - -1.3794692e+03 -4.1676619e+03 3.2742733e+03 - -1.3051834e+03 -4.2092998e+03 3.2629867e+03 - -1.2324580e+03 -4.2483105e+03 3.2519121e+03 - -1.1612447e+03 -4.2847792e+03 3.2411078e+03 - -1.0914869e+03 -4.3187917e+03 3.2306260e+03 - -1.0231210e+03 -4.3504335e+03 3.2205135e+03 - -9.5607836e+02 -4.3797886e+03 3.2108120e+03 - -8.9028609e+02 -4.4069383e+03 3.2015580e+03 - -8.2566844e+02 -4.4319606e+03 3.1927841e+03 - -7.6214757e+02 -4.4549295e+03 3.1845183e+03 - -6.9964424e+02 -4.4759148e+03 3.1767855e+03 - -6.3807849e+02 -4.4949814e+03 3.1696070e+03 - -5.7737002e+02 -4.5121892e+03 3.1630012e+03 - -5.1743858e+02 -4.5275933e+03 3.1569839e+03 - -4.5820420e+02 -4.5412432e+03 3.1515685e+03 - -3.9958736e+02 -4.5531834e+03 3.1467664e+03 - -3.4150912e+02 -4.5634529e+03 3.1425871e+03 - -2.8389111e+02 -4.5720855e+03 3.1390384e+03 - -2.2665556e+02 -4.5791098e+03 3.1361268e+03 - -1.6972525e+02 -4.5845491e+03 3.1338573e+03 - -1.1302343e+02 -4.5884214e+03 3.1322335e+03 - -5.6473721e+01 -4.5907396e+03 3.1312582e+03 - -4.8134273e-09 -4.5915115e+03 3.1309330e+03 - 5.6473721e+01 -4.5907396e+03 3.1312582e+03 - 1.1302343e+02 -4.5884214e+03 3.1322335e+03 - 1.6972525e+02 -4.5845491e+03 3.1338573e+03 - 2.2665556e+02 -4.5791098e+03 3.1361268e+03 - 2.8389111e+02 -4.5720855e+03 3.1390384e+03 - 3.4150912e+02 -4.5634529e+03 3.1425871e+03 - 3.9958736e+02 -4.5531834e+03 3.1467664e+03 - 4.5820420e+02 -4.5412432e+03 3.1515685e+03 - 5.1743858e+02 -4.5275933e+03 3.1569839e+03 - 5.7737002e+02 -4.5121892e+03 3.1630012e+03 - 6.3807849e+02 -4.4949814e+03 3.1696070e+03 - 6.9964424e+02 -4.4759148e+03 3.1767855e+03 - 7.6214757e+02 -4.4549295e+03 3.1845183e+03 - 8.2566844e+02 -4.4319606e+03 3.1927841e+03 - 8.9028609e+02 -4.4069383e+03 3.2015580e+03 - 9.5607836e+02 -4.3797886e+03 3.2108120e+03 - 1.0231210e+03 -4.3504335e+03 3.2205135e+03 - 1.0914869e+03 -4.3187917e+03 3.2306260e+03 - 1.1612447e+03 -4.2847792e+03 3.2411078e+03 - 1.2324580e+03 -4.2483105e+03 3.2519121e+03 - 1.3051834e+03 -4.2092998e+03 3.2629867e+03 - 1.3794692e+03 -4.1676619e+03 3.2742733e+03 - 1.4553536e+03 -4.1233148e+03 3.2857076e+03 - 1.5328622e+03 -4.0761806e+03 3.2972193e+03 - 1.6120064e+03 -4.0261887e+03 3.3087315e+03 - 1.6927808e+03 -3.9732775e+03 3.3201615e+03 - 1.7751609e+03 -3.9173977e+03 3.3314209e+03 - 1.8591010e+03 -3.8585149e+03 3.3424162e+03 - 1.9445319e+03 -3.7966127e+03 3.3530497e+03 - 2.0313593e+03 -3.7316954e+03 3.3632205e+03 - 2.1194622e+03 -3.6637916e+03 3.3728262e+03 - 2.2086922e+03 -3.5929557e+03 3.3817643e+03 - 2.2988733e+03 -3.5192712e+03 3.3899346e+03 - 2.3898029e+03 -3.4428511e+03 3.3972408e+03 - 2.4812529e+03 -3.3638392e+03 3.4035931e+03 - 2.5729727e+03 -3.2824101e+03 3.4089107e+03 - 2.6646928e+03 -3.1987670e+03 3.4131235e+03 - 2.7561288e+03 -3.1131404e+03 3.4161749e+03 - 2.8469872e+03 -3.0257840e+03 3.4180229e+03 - 2.9369707e+03 -2.9369707e+03 3.4186418e+03 - 3.0257840e+03 -2.8469872e+03 3.4180229e+03 - 3.1131404e+03 -2.7561288e+03 3.4161749e+03 - 3.1987670e+03 -2.6646928e+03 3.4131235e+03 - 3.2824101e+03 -2.5729727e+03 3.4089107e+03 - 3.3638392e+03 -2.4812529e+03 3.4035931e+03 - 3.4428511e+03 -2.3898029e+03 3.3972408e+03 - 3.5192712e+03 -2.2988733e+03 3.3899346e+03 - 3.5929557e+03 -2.2086922e+03 3.3817643e+03 - 3.6637916e+03 -2.1194622e+03 3.3728262e+03 - 3.7316954e+03 -2.0313593e+03 3.3632205e+03 - 3.7966127e+03 -1.9445319e+03 3.3530497e+03 - 3.8585149e+03 -1.8591010e+03 3.3424162e+03 - 3.9173977e+03 -1.7751609e+03 3.3314209e+03 - 3.9732775e+03 -1.6927808e+03 3.3201615e+03 - 4.0261887e+03 -1.6120064e+03 3.3087315e+03 - 4.0761806e+03 -1.5328622e+03 3.2972193e+03 - 4.1233148e+03 -1.4553536e+03 3.2857076e+03 - 4.1676619e+03 -1.3794692e+03 3.2742733e+03 - 4.2092998e+03 -1.3051834e+03 3.2629867e+03 - 4.2483105e+03 -1.2324580e+03 3.2519121e+03 - 4.2847792e+03 -1.1612447e+03 3.2411078e+03 - 4.3187917e+03 -1.0914869e+03 3.2306260e+03 - 4.3504335e+03 -1.0231210e+03 3.2205135e+03 - 4.3797886e+03 -9.5607836e+02 3.2108120e+03 - 4.4069383e+03 -8.9028609e+02 3.2015580e+03 - 4.4319606e+03 -8.2566844e+02 3.1927841e+03 - 4.4549295e+03 -7.6214757e+02 3.1845183e+03 - 4.4759148e+03 -6.9964424e+02 3.1767855e+03 - 4.4949814e+03 -6.3807849e+02 3.1696070e+03 - 4.5121892e+03 -5.7737002e+02 3.1630012e+03 - 4.5275933e+03 -5.1743858e+02 3.1569839e+03 - 4.5412432e+03 -4.5820420e+02 3.1515685e+03 - 4.5531834e+03 -3.9958736e+02 3.1467664e+03 - 4.5634529e+03 -3.4150912e+02 3.1425871e+03 - 4.5720855e+03 -2.8389111e+02 3.1390384e+03 - 4.5791098e+03 -2.2665556e+02 3.1361268e+03 - 4.5845491e+03 -1.6972525e+02 3.1338573e+03 - 4.5884214e+03 -1.1302343e+02 3.1322335e+03 - 4.5907396e+03 -5.6473721e+01 3.1312582e+03 - 4.5915115e+03 -1.4440282e-08 3.1309330e+03 - 4.6307856e+03 0.0000000e+00 3.0708830e+03 - 4.6300183e+03 5.6302148e+01 3.0712181e+03 - 4.6277136e+03 1.1268175e+02 3.0722227e+03 - 4.6238637e+03 1.6921642e+02 3.0738955e+03 - 4.6184552e+03 2.2598408e+02 3.0762339e+03 - 4.6114696e+03 2.8306311e+02 3.0792345e+03 - 4.6028827e+03 3.4053245e+02 3.0828925e+03 - 4.5926652e+03 3.9847176e+02 3.0872018e+03 - 4.5807822e+03 4.5696142e+02 3.0921551e+03 - 4.5671931e+03 5.1608261e+02 3.0977434e+03 - 4.5518520e+03 5.7591729e+02 3.1039556e+03 - 4.5347073e+03 6.3654811e+02 3.1107788e+03 - 4.5157020e+03 6.9805830e+02 3.1181978e+03 - 4.4947735e+03 7.6053143e+02 3.1261946e+03 - 4.4718540e+03 8.2405107e+02 3.1347483e+03 - 4.4468705e+03 8.8870038e+02 3.1438345e+03 - 4.4197451e+03 9.5456151e+02 3.1534252e+03 - 4.3903956e+03 1.0217149e+03 3.1634883e+03 - 4.3587359e+03 1.0902383e+03 3.1739867e+03 - 4.3246770e+03 1.1602060e+03 3.1848787e+03 - 4.2881276e+03 1.2316868e+03 3.1961169e+03 - 4.2489956e+03 1.3047436e+03 3.2076479e+03 - 4.2071891e+03 1.3794304e+03 3.2194122e+03 - 4.1626190e+03 1.4557916e+03 3.2313436e+03 - 4.1151999e+03 1.5338587e+03 3.2433691e+03 - 4.0648536e+03 1.6136488e+03 3.2554092e+03 - 4.0115109e+03 1.6951616e+03 3.2673772e+03 - 3.9551149e+03 1.7783769e+03 3.2791804e+03 - 3.8956242e+03 1.8632525e+03 3.2907202e+03 - 3.8330158e+03 1.9497213e+03 3.3018932e+03 - 3.7672891e+03 2.0376893e+03 3.3125921e+03 - 3.6984682e+03 2.1270342e+03 3.3227075e+03 - 3.6266059e+03 2.2176041e+03 3.3321297e+03 - 3.5517849e+03 2.3092173e+03 3.3407508e+03 - 3.4741207e+03 2.4016627e+03 3.3484668e+03 - 3.3937617e+03 2.4947019e+03 3.3551808e+03 - 3.3108896e+03 2.5880715e+03 3.3608050e+03 - 3.2257178e+03 2.6814868e+03 3.3652632e+03 - 3.1384888e+03 2.7746473e+03 3.3684937e+03 - 3.0494712e+03 2.8672415e+03 3.3704508e+03 - 2.9589539e+03 2.9589539e+03 3.3711063e+03 - 2.8672415e+03 3.0494712e+03 3.3704508e+03 - 2.7746473e+03 3.1384888e+03 3.3684937e+03 - 2.6814868e+03 3.2257178e+03 3.3652632e+03 - 2.5880715e+03 3.3108896e+03 3.3608050e+03 - 2.4947019e+03 3.3937617e+03 3.3551808e+03 - 2.4016627e+03 3.4741207e+03 3.3484668e+03 - 2.3092173e+03 3.5517849e+03 3.3407508e+03 - 2.2176041e+03 3.6266059e+03 3.3321297e+03 - 2.1270342e+03 3.6984682e+03 3.3227075e+03 - 2.0376893e+03 3.7672891e+03 3.3125921e+03 - 1.9497213e+03 3.8330158e+03 3.3018932e+03 - 1.8632525e+03 3.8956242e+03 3.2907202e+03 - 1.7783769e+03 3.9551149e+03 3.2791804e+03 - 1.6951616e+03 4.0115109e+03 3.2673772e+03 - 1.6136488e+03 4.0648536e+03 3.2554092e+03 - 1.5338587e+03 4.1151999e+03 3.2433691e+03 - 1.4557916e+03 4.1626190e+03 3.2313436e+03 - 1.3794304e+03 4.2071891e+03 3.2194122e+03 - 1.3047436e+03 4.2489956e+03 3.2076479e+03 - 1.2316868e+03 4.2881276e+03 3.1961169e+03 - 1.1602060e+03 4.3246770e+03 3.1848787e+03 - 1.0902383e+03 4.3587359e+03 3.1739867e+03 - 1.0217149e+03 4.3903956e+03 3.1634883e+03 - 9.5456151e+02 4.4197451e+03 3.1534252e+03 - 8.8870038e+02 4.4468705e+03 3.1438345e+03 - 8.2405107e+02 4.4718540e+03 3.1347483e+03 - 7.6053143e+02 4.4947735e+03 3.1261946e+03 - 6.9805830e+02 4.5157020e+03 3.1181978e+03 - 6.3654811e+02 4.5347073e+03 3.1107788e+03 - 5.7591729e+02 4.5518520e+03 3.1039556e+03 - 5.1608261e+02 4.5671931e+03 3.0977434e+03 - 4.5696142e+02 4.5807822e+03 3.0921551e+03 - 3.9847176e+02 4.5926652e+03 3.0872018e+03 - 3.4053245e+02 4.6028827e+03 3.0828925e+03 - 2.8306311e+02 4.6114696e+03 3.0792345e+03 - 2.2598408e+02 4.6184552e+03 3.0762339e+03 - 1.6921642e+02 4.6238637e+03 3.0738955e+03 - 1.1268175e+02 4.6277136e+03 3.0722227e+03 - 5.6302148e+01 4.6300183e+03 3.0712181e+03 - -4.8134273e-09 4.6307856e+03 3.0708830e+03 - -5.6302148e+01 4.6300183e+03 3.0712181e+03 - -1.1268175e+02 4.6277136e+03 3.0722227e+03 - -1.6921642e+02 4.6238637e+03 3.0738955e+03 - -2.2598408e+02 4.6184552e+03 3.0762339e+03 - -2.8306311e+02 4.6114696e+03 3.0792345e+03 - -3.4053245e+02 4.6028827e+03 3.0828925e+03 - -3.9847176e+02 4.5926652e+03 3.0872018e+03 - -4.5696142e+02 4.5807822e+03 3.0921551e+03 - -5.1608261e+02 4.5671931e+03 3.0977434e+03 - -5.7591729e+02 4.5518520e+03 3.1039556e+03 - -6.3654811e+02 4.5347073e+03 3.1107788e+03 - -6.9805830e+02 4.5157020e+03 3.1181978e+03 - -7.6053143e+02 4.4947735e+03 3.1261946e+03 - -8.2405107e+02 4.4718540e+03 3.1347483e+03 - -8.8870038e+02 4.4468705e+03 3.1438345e+03 - -9.5456151e+02 4.4197451e+03 3.1534252e+03 - -1.0217149e+03 4.3903956e+03 3.1634883e+03 - -1.0902383e+03 4.3587359e+03 3.1739867e+03 - -1.1602060e+03 4.3246770e+03 3.1848787e+03 - -1.2316868e+03 4.2881276e+03 3.1961169e+03 - -1.3047436e+03 4.2489956e+03 3.2076479e+03 - -1.3794304e+03 4.2071891e+03 3.2194122e+03 - -1.4557916e+03 4.1626190e+03 3.2313436e+03 - -1.5338587e+03 4.1151999e+03 3.2433691e+03 - -1.6136488e+03 4.0648536e+03 3.2554092e+03 - -1.6951616e+03 4.0115109e+03 3.2673772e+03 - -1.7783769e+03 3.9551149e+03 3.2791804e+03 - -1.8632525e+03 3.8956242e+03 3.2907202e+03 - -1.9497213e+03 3.8330158e+03 3.3018932e+03 - -2.0376893e+03 3.7672891e+03 3.3125921e+03 - -2.1270342e+03 3.6984682e+03 3.3227075e+03 - -2.2176041e+03 3.6266059e+03 3.3321297e+03 - -2.3092173e+03 3.5517849e+03 3.3407508e+03 - -2.4016627e+03 3.4741207e+03 3.3484668e+03 - -2.4947019e+03 3.3937617e+03 3.3551808e+03 - -2.5880715e+03 3.3108896e+03 3.3608050e+03 - -2.6814868e+03 3.2257178e+03 3.3652632e+03 - -2.7746473e+03 3.1384888e+03 3.3684937e+03 - -2.8672415e+03 3.0494712e+03 3.3704508e+03 - -2.9589539e+03 2.9589539e+03 3.3711063e+03 - -3.0494712e+03 2.8672415e+03 3.3704508e+03 - -3.1384888e+03 2.7746473e+03 3.3684937e+03 - -3.2257178e+03 2.6814868e+03 3.3652632e+03 - -3.3108896e+03 2.5880715e+03 3.3608050e+03 - -3.3937617e+03 2.4947019e+03 3.3551808e+03 - -3.4741207e+03 2.4016627e+03 3.3484668e+03 - -3.5517849e+03 2.3092173e+03 3.3407508e+03 - -3.6266059e+03 2.2176041e+03 3.3321297e+03 - -3.6984682e+03 2.1270342e+03 3.3227075e+03 - -3.7672891e+03 2.0376893e+03 3.3125921e+03 - -3.8330158e+03 1.9497213e+03 3.3018932e+03 - -3.8956242e+03 1.8632525e+03 3.2907202e+03 - -3.9551149e+03 1.7783769e+03 3.2791804e+03 - -4.0115109e+03 1.6951616e+03 3.2673772e+03 - -4.0648536e+03 1.6136488e+03 3.2554092e+03 - -4.1151999e+03 1.5338587e+03 3.2433691e+03 - -4.1626190e+03 1.4557916e+03 3.2313436e+03 - -4.2071891e+03 1.3794304e+03 3.2194122e+03 - -4.2489956e+03 1.3047436e+03 3.2076479e+03 - -4.2881276e+03 1.2316868e+03 3.1961169e+03 - -4.3246770e+03 1.1602060e+03 3.1848787e+03 - -4.3587359e+03 1.0902383e+03 3.1739867e+03 - -4.3903956e+03 1.0217149e+03 3.1634883e+03 - -4.4197451e+03 9.5456151e+02 3.1534252e+03 - -4.4468705e+03 8.8870038e+02 3.1438345e+03 - -4.4718540e+03 8.2405107e+02 3.1347483e+03 - -4.4947735e+03 7.6053143e+02 3.1261946e+03 - -4.5157020e+03 6.9805830e+02 3.1181978e+03 - -4.5347073e+03 6.3654811e+02 3.1107788e+03 - -4.5518520e+03 5.7591729e+02 3.1039556e+03 - -4.5671931e+03 5.1608261e+02 3.0977434e+03 - -4.5807822e+03 4.5696142e+02 3.0921551e+03 - -4.5926652e+03 3.9847176e+02 3.0872018e+03 - -4.6028827e+03 3.4053245e+02 3.0828925e+03 - -4.6114696e+03 2.8306311e+02 3.0792345e+03 - -4.6184552e+03 2.2598408e+02 3.0762339e+03 - -4.6238637e+03 1.6921642e+02 3.0738955e+03 - -4.6277136e+03 1.1268175e+02 3.0722227e+03 - -4.6300183e+03 5.6302148e+01 3.0712181e+03 - -4.6307856e+03 4.8134273e-09 3.0708830e+03 - -4.6300183e+03 -5.6302148e+01 3.0712181e+03 - -4.6277136e+03 -1.1268175e+02 3.0722227e+03 - -4.6238637e+03 -1.6921642e+02 3.0738955e+03 - -4.6184552e+03 -2.2598408e+02 3.0762339e+03 - -4.6114696e+03 -2.8306311e+02 3.0792345e+03 - -4.6028827e+03 -3.4053245e+02 3.0828925e+03 - -4.5926652e+03 -3.9847176e+02 3.0872018e+03 - -4.5807822e+03 -4.5696142e+02 3.0921551e+03 - -4.5671931e+03 -5.1608261e+02 3.0977434e+03 - -4.5518520e+03 -5.7591729e+02 3.1039556e+03 - -4.5347073e+03 -6.3654811e+02 3.1107788e+03 - -4.5157020e+03 -6.9805830e+02 3.1181978e+03 - -4.4947735e+03 -7.6053143e+02 3.1261946e+03 - -4.4718540e+03 -8.2405107e+02 3.1347483e+03 - -4.4468705e+03 -8.8870038e+02 3.1438345e+03 - -4.4197451e+03 -9.5456151e+02 3.1534252e+03 - -4.3903956e+03 -1.0217149e+03 3.1634883e+03 - -4.3587359e+03 -1.0902383e+03 3.1739867e+03 - -4.3246770e+03 -1.1602060e+03 3.1848787e+03 - -4.2881276e+03 -1.2316868e+03 3.1961169e+03 - -4.2489956e+03 -1.3047436e+03 3.2076479e+03 - -4.2071891e+03 -1.3794304e+03 3.2194122e+03 - -4.1626190e+03 -1.4557916e+03 3.2313436e+03 - -4.1151999e+03 -1.5338587e+03 3.2433691e+03 - -4.0648536e+03 -1.6136488e+03 3.2554092e+03 - -4.0115109e+03 -1.6951616e+03 3.2673772e+03 - -3.9551149e+03 -1.7783769e+03 3.2791804e+03 - -3.8956242e+03 -1.8632525e+03 3.2907202e+03 - -3.8330158e+03 -1.9497213e+03 3.3018932e+03 - -3.7672891e+03 -2.0376893e+03 3.3125921e+03 - -3.6984682e+03 -2.1270342e+03 3.3227075e+03 - -3.6266059e+03 -2.2176041e+03 3.3321297e+03 - -3.5517849e+03 -2.3092173e+03 3.3407508e+03 - -3.4741207e+03 -2.4016627e+03 3.3484668e+03 - -3.3937617e+03 -2.4947019e+03 3.3551808e+03 - -3.3108896e+03 -2.5880715e+03 3.3608050e+03 - -3.2257178e+03 -2.6814868e+03 3.3652632e+03 - -3.1384888e+03 -2.7746473e+03 3.3684937e+03 - -3.0494712e+03 -2.8672415e+03 3.3704508e+03 - -2.9589539e+03 -2.9589539e+03 3.3711063e+03 - -2.8672415e+03 -3.0494712e+03 3.3704508e+03 - -2.7746473e+03 -3.1384888e+03 3.3684937e+03 - -2.6814868e+03 -3.2257178e+03 3.3652632e+03 - -2.5880715e+03 -3.3108896e+03 3.3608050e+03 - -2.4947019e+03 -3.3937617e+03 3.3551808e+03 - -2.4016627e+03 -3.4741207e+03 3.3484668e+03 - -2.3092173e+03 -3.5517849e+03 3.3407508e+03 - -2.2176041e+03 -3.6266059e+03 3.3321297e+03 - -2.1270342e+03 -3.6984682e+03 3.3227075e+03 - -2.0376893e+03 -3.7672891e+03 3.3125921e+03 - -1.9497213e+03 -3.8330158e+03 3.3018932e+03 - -1.8632525e+03 -3.8956242e+03 3.2907202e+03 - -1.7783769e+03 -3.9551149e+03 3.2791804e+03 - -1.6951616e+03 -4.0115109e+03 3.2673772e+03 - -1.6136488e+03 -4.0648536e+03 3.2554092e+03 - -1.5338587e+03 -4.1151999e+03 3.2433691e+03 - -1.4557916e+03 -4.1626190e+03 3.2313436e+03 - -1.3794304e+03 -4.2071891e+03 3.2194122e+03 - -1.3047436e+03 -4.2489956e+03 3.2076479e+03 - -1.2316868e+03 -4.2881276e+03 3.1961169e+03 - -1.1602060e+03 -4.3246770e+03 3.1848787e+03 - -1.0902383e+03 -4.3587359e+03 3.1739867e+03 - -1.0217149e+03 -4.3903956e+03 3.1634883e+03 - -9.5456151e+02 -4.4197451e+03 3.1534252e+03 - -8.8870038e+02 -4.4468705e+03 3.1438345e+03 - -8.2405107e+02 -4.4718540e+03 3.1347483e+03 - -7.6053143e+02 -4.4947735e+03 3.1261946e+03 - -6.9805830e+02 -4.5157020e+03 3.1181978e+03 - -6.3654811e+02 -4.5347073e+03 3.1107788e+03 - -5.7591729e+02 -4.5518520e+03 3.1039556e+03 - -5.1608261e+02 -4.5671931e+03 3.0977434e+03 - -4.5696142e+02 -4.5807822e+03 3.0921551e+03 - -3.9847176e+02 -4.5926652e+03 3.0872018e+03 - -3.4053245e+02 -4.6028827e+03 3.0828925e+03 - -2.8306311e+02 -4.6114696e+03 3.0792345e+03 - -2.2598408e+02 -4.6184552e+03 3.0762339e+03 - -1.6921642e+02 -4.6238637e+03 3.0738955e+03 - -1.1268175e+02 -4.6277136e+03 3.0722227e+03 - -5.6302148e+01 -4.6300183e+03 3.0712181e+03 - 4.8134273e-09 -4.6307856e+03 3.0708830e+03 - 5.6302148e+01 -4.6300183e+03 3.0712181e+03 - 1.1268175e+02 -4.6277136e+03 3.0722227e+03 - 1.6921642e+02 -4.6238637e+03 3.0738955e+03 - 2.2598408e+02 -4.6184552e+03 3.0762339e+03 - 2.8306311e+02 -4.6114696e+03 3.0792345e+03 - 3.4053245e+02 -4.6028827e+03 3.0828925e+03 - 3.9847176e+02 -4.5926652e+03 3.0872018e+03 - 4.5696142e+02 -4.5807822e+03 3.0921551e+03 - 5.1608261e+02 -4.5671931e+03 3.0977434e+03 - 5.7591729e+02 -4.5518520e+03 3.1039556e+03 - 6.3654811e+02 -4.5347073e+03 3.1107788e+03 - 6.9805830e+02 -4.5157020e+03 3.1181978e+03 - 7.6053143e+02 -4.4947735e+03 3.1261946e+03 - 8.2405107e+02 -4.4718540e+03 3.1347483e+03 - 8.8870038e+02 -4.4468705e+03 3.1438345e+03 - 9.5456151e+02 -4.4197451e+03 3.1534252e+03 - 1.0217149e+03 -4.3903956e+03 3.1634883e+03 - 1.0902383e+03 -4.3587359e+03 3.1739867e+03 - 1.1602060e+03 -4.3246770e+03 3.1848787e+03 - 1.2316868e+03 -4.2881276e+03 3.1961169e+03 - 1.3047436e+03 -4.2489956e+03 3.2076479e+03 - 1.3794304e+03 -4.2071891e+03 3.2194122e+03 - 1.4557916e+03 -4.1626190e+03 3.2313436e+03 - 1.5338587e+03 -4.1151999e+03 3.2433691e+03 - 1.6136488e+03 -4.0648536e+03 3.2554092e+03 - 1.6951616e+03 -4.0115109e+03 3.2673772e+03 - 1.7783769e+03 -3.9551149e+03 3.2791804e+03 - 1.8632525e+03 -3.8956242e+03 3.2907202e+03 - 1.9497213e+03 -3.8330158e+03 3.3018932e+03 - 2.0376893e+03 -3.7672891e+03 3.3125921e+03 - 2.1270342e+03 -3.6984682e+03 3.3227075e+03 - 2.2176041e+03 -3.6266059e+03 3.3321297e+03 - 2.3092173e+03 -3.5517849e+03 3.3407508e+03 - 2.4016627e+03 -3.4741207e+03 3.3484668e+03 - 2.4947019e+03 -3.3937617e+03 3.3551808e+03 - 2.5880715e+03 -3.3108896e+03 3.3608050e+03 - 2.6814868e+03 -3.2257178e+03 3.3652632e+03 - 2.7746473e+03 -3.1384888e+03 3.3684937e+03 - 2.8672415e+03 -3.0494712e+03 3.3704508e+03 - 2.9589539e+03 -2.9589539e+03 3.3711063e+03 - 3.0494712e+03 -2.8672415e+03 3.3704508e+03 - 3.1384888e+03 -2.7746473e+03 3.3684937e+03 - 3.2257178e+03 -2.6814868e+03 3.3652632e+03 - 3.3108896e+03 -2.5880715e+03 3.3608050e+03 - 3.3937617e+03 -2.4947019e+03 3.3551808e+03 - 3.4741207e+03 -2.4016627e+03 3.3484668e+03 - 3.5517849e+03 -2.3092173e+03 3.3407508e+03 - 3.6266059e+03 -2.2176041e+03 3.3321297e+03 - 3.6984682e+03 -2.1270342e+03 3.3227075e+03 - 3.7672891e+03 -2.0376893e+03 3.3125921e+03 - 3.8330158e+03 -1.9497213e+03 3.3018932e+03 - 3.8956242e+03 -1.8632525e+03 3.2907202e+03 - 3.9551149e+03 -1.7783769e+03 3.2791804e+03 - 4.0115109e+03 -1.6951616e+03 3.2673772e+03 - 4.0648536e+03 -1.6136488e+03 3.2554092e+03 - 4.1151999e+03 -1.5338587e+03 3.2433691e+03 - 4.1626190e+03 -1.4557916e+03 3.2313436e+03 - 4.2071891e+03 -1.3794304e+03 3.2194122e+03 - 4.2489956e+03 -1.3047436e+03 3.2076479e+03 - 4.2881276e+03 -1.2316868e+03 3.1961169e+03 - 4.3246770e+03 -1.1602060e+03 3.1848787e+03 - 4.3587359e+03 -1.0902383e+03 3.1739867e+03 - 4.3903956e+03 -1.0217149e+03 3.1634883e+03 - 4.4197451e+03 -9.5456151e+02 3.1534252e+03 - 4.4468705e+03 -8.8870038e+02 3.1438345e+03 - 4.4718540e+03 -8.2405107e+02 3.1347483e+03 - 4.4947735e+03 -7.6053143e+02 3.1261946e+03 - 4.5157020e+03 -6.9805830e+02 3.1181978e+03 - 4.5347073e+03 -6.3654811e+02 3.1107788e+03 - 4.5518520e+03 -5.7591729e+02 3.1039556e+03 - 4.5671931e+03 -5.1608261e+02 3.0977434e+03 - 4.5807822e+03 -4.5696142e+02 3.0921551e+03 - 4.5926652e+03 -3.9847176e+02 3.0872018e+03 - 4.6028827e+03 -3.4053245e+02 3.0828925e+03 - 4.6114696e+03 -2.8306311e+02 3.0792345e+03 - 4.6184552e+03 -2.2598408e+02 3.0762339e+03 - 4.6238637e+03 -1.6921642e+02 3.0738955e+03 - 4.6277136e+03 -1.1268175e+02 3.0722227e+03 - 4.6300183e+03 -5.6302148e+01 3.0712181e+03 - 4.6307856e+03 4.8134273e-09 3.0708830e+03 - 4.6696470e+03 -9.6268545e-09 3.0088378e+03 - 4.6688848e+03 5.6118961e+01 3.0091824e+03 - 4.6665954e+03 1.1231676e+02 3.0102157e+03 - 4.6627706e+03 1.6867241e+02 3.0119364e+03 - 4.6573969e+03 2.2526532e+02 3.0143422e+03 - 4.6504550e+03 2.8217539e+02 3.0174299e+03 - 4.6419201e+03 3.3948324e+02 3.0211950e+03 - 4.6317621e+03 3.9727030e+02 3.0256320e+03 - 4.6199449e+03 4.5561893e+02 3.0307338e+03 - 4.6064266e+03 5.1461248e+02 3.0364920e+03 - 4.5911597e+03 5.7433528e+02 3.0428961e+03 - 4.5740909e+03 6.3487265e+02 3.0499338e+03 - 4.5551608e+03 6.9631077e+02 3.0575904e+03 - 4.5343045e+03 7.5873645e+02 3.0658486e+03 - 4.5114511e+03 8.2223688e+02 3.0746878e+03 - 4.4865244e+03 8.8689920e+02 3.0840844e+03 - 4.4594427e+03 9.5280992e+02 3.0940106e+03 - 4.4301196e+03 1.0200542e+03 3.1044345e+03 - 4.3984641e+03 1.0887151e+03 3.1153193e+03 - 4.3643818e+03 1.1588722e+03 3.1266229e+03 - 4.3277757e+03 1.2306004e+03 3.1382974e+03 - 4.2885469e+03 1.3039685e+03 3.1502888e+03 - 4.2465969e+03 1.3790372e+03 3.1625362e+03 - 4.2018288e+03 1.4558570e+03 3.1749716e+03 - 4.1541496e+03 1.5344661e+03 3.1875198e+03 - 4.1034728e+03 1.6148876e+03 3.2000980e+03 - 4.0497210e+03 1.6971268e+03 3.2126162e+03 - 3.9928293e+03 1.7811687e+03 3.2249771e+03 - 3.9327484e+03 1.8669747e+03 3.2370768e+03 - 3.8694484e+03 1.9544805e+03 3.2488060e+03 - 3.8029226e+03 2.0435930e+03 3.2600507e+03 - 3.7331908e+03 2.1341889e+03 3.2706943e+03 - 3.6603025e+03 2.2261129e+03 3.2806192e+03 - 3.5843403e+03 2.3191775e+03 3.2897094e+03 - 3.5054213e+03 2.4131634e+03 3.2978530e+03 - 3.4236987e+03 2.5078211e+03 3.3049448e+03 - 3.3393614e+03 2.6028737e+03 3.3108897e+03 - 3.2526333e+03 2.6980210e+03 3.3156049e+03 - 3.1637700e+03 2.7929447e+03 3.3190232e+03 - 3.0730553e+03 2.8873147e+03 3.3210946e+03 - 2.9807958e+03 2.9807958e+03 3.3217886e+03 - 2.8873147e+03 3.0730553e+03 3.3210946e+03 - 2.7929447e+03 3.1637700e+03 3.3190232e+03 - 2.6980210e+03 3.2526333e+03 3.3156049e+03 - 2.6028737e+03 3.3393614e+03 3.3108897e+03 - 2.5078211e+03 3.4236987e+03 3.3049448e+03 - 2.4131634e+03 3.5054213e+03 3.2978530e+03 - 2.3191775e+03 3.5843403e+03 3.2897094e+03 - 2.2261129e+03 3.6603025e+03 3.2806192e+03 - 2.1341889e+03 3.7331908e+03 3.2706943e+03 - 2.0435930e+03 3.8029226e+03 3.2600507e+03 - 1.9544805e+03 3.8694484e+03 3.2488060e+03 - 1.8669747e+03 3.9327484e+03 3.2370768e+03 - 1.7811687e+03 3.9928293e+03 3.2249771e+03 - 1.6971268e+03 4.0497210e+03 3.2126162e+03 - 1.6148876e+03 4.1034728e+03 3.2000980e+03 - 1.5344661e+03 4.1541496e+03 3.1875198e+03 - 1.4558570e+03 4.2018288e+03 3.1749716e+03 - 1.3790372e+03 4.2465969e+03 3.1625362e+03 - 1.3039685e+03 4.2885469e+03 3.1502888e+03 - 1.2306004e+03 4.3277757e+03 3.1382974e+03 - 1.1588722e+03 4.3643818e+03 3.1266229e+03 - 1.0887151e+03 4.3984641e+03 3.1153193e+03 - 1.0200542e+03 4.4301196e+03 3.1044345e+03 - 9.5280992e+02 4.4594427e+03 3.0940106e+03 - 8.8689920e+02 4.4865244e+03 3.0840844e+03 - 8.2223688e+02 4.5114511e+03 3.0746878e+03 - 7.5873645e+02 4.5343045e+03 3.0658486e+03 - 6.9631077e+02 4.5551608e+03 3.0575904e+03 - 6.3487265e+02 4.5740909e+03 3.0499338e+03 - 5.7433528e+02 4.5911597e+03 3.0428961e+03 - 5.1461248e+02 4.6064266e+03 3.0364920e+03 - 4.5561893e+02 4.6199449e+03 3.0307338e+03 - 3.9727030e+02 4.6317621e+03 3.0256320e+03 - 3.3948324e+02 4.6419201e+03 3.0211950e+03 - 2.8217539e+02 4.6504550e+03 3.0174299e+03 - 2.2526532e+02 4.6573969e+03 3.0143422e+03 - 1.6867241e+02 4.6627706e+03 3.0119364e+03 - 1.1231676e+02 4.6665954e+03 3.0102157e+03 - 5.6118961e+01 4.6688848e+03 3.0091824e+03 - 0.0000000e+00 4.6696470e+03 3.0088378e+03 - -5.6118961e+01 4.6688848e+03 3.0091824e+03 - -1.1231676e+02 4.6665954e+03 3.0102157e+03 - -1.6867241e+02 4.6627706e+03 3.0119364e+03 - -2.2526532e+02 4.6573969e+03 3.0143422e+03 - -2.8217539e+02 4.6504550e+03 3.0174299e+03 - -3.3948324e+02 4.6419201e+03 3.0211950e+03 - -3.9727030e+02 4.6317621e+03 3.0256320e+03 - -4.5561893e+02 4.6199449e+03 3.0307338e+03 - -5.1461248e+02 4.6064266e+03 3.0364920e+03 - -5.7433528e+02 4.5911597e+03 3.0428961e+03 - -6.3487265e+02 4.5740909e+03 3.0499338e+03 - -6.9631077e+02 4.5551608e+03 3.0575904e+03 - -7.5873645e+02 4.5343045e+03 3.0658486e+03 - -8.2223688e+02 4.5114511e+03 3.0746878e+03 - -8.8689920e+02 4.4865244e+03 3.0840844e+03 - -9.5280992e+02 4.4594427e+03 3.0940106e+03 - -1.0200542e+03 4.4301196e+03 3.1044345e+03 - -1.0887151e+03 4.3984641e+03 3.1153193e+03 - -1.1588722e+03 4.3643818e+03 3.1266229e+03 - -1.2306004e+03 4.3277757e+03 3.1382974e+03 - -1.3039685e+03 4.2885469e+03 3.1502888e+03 - -1.3790372e+03 4.2465969e+03 3.1625362e+03 - -1.4558570e+03 4.2018288e+03 3.1749716e+03 - -1.5344661e+03 4.1541496e+03 3.1875198e+03 - -1.6148876e+03 4.1034728e+03 3.2000980e+03 - -1.6971268e+03 4.0497210e+03 3.2126162e+03 - -1.7811687e+03 3.9928293e+03 3.2249771e+03 - -1.8669747e+03 3.9327484e+03 3.2370768e+03 - -1.9544805e+03 3.8694484e+03 3.2488060e+03 - -2.0435930e+03 3.8029226e+03 3.2600507e+03 - -2.1341889e+03 3.7331908e+03 3.2706943e+03 - -2.2261129e+03 3.6603025e+03 3.2806192e+03 - -2.3191775e+03 3.5843403e+03 3.2897094e+03 - -2.4131634e+03 3.5054213e+03 3.2978530e+03 - -2.5078211e+03 3.4236987e+03 3.3049448e+03 - -2.6028737e+03 3.3393614e+03 3.3108897e+03 - -2.6980210e+03 3.2526333e+03 3.3156049e+03 - -2.7929447e+03 3.1637700e+03 3.3190232e+03 - -2.8873147e+03 3.0730553e+03 3.3210946e+03 - -2.9807958e+03 2.9807958e+03 3.3217886e+03 - -3.0730553e+03 2.8873147e+03 3.3210946e+03 - -3.1637700e+03 2.7929447e+03 3.3190232e+03 - -3.2526333e+03 2.6980210e+03 3.3156049e+03 - -3.3393614e+03 2.6028737e+03 3.3108897e+03 - -3.4236987e+03 2.5078211e+03 3.3049448e+03 - -3.5054213e+03 2.4131634e+03 3.2978530e+03 - -3.5843403e+03 2.3191775e+03 3.2897094e+03 - -3.6603025e+03 2.2261129e+03 3.2806192e+03 - -3.7331908e+03 2.1341889e+03 3.2706943e+03 - -3.8029226e+03 2.0435930e+03 3.2600507e+03 - -3.8694484e+03 1.9544805e+03 3.2488060e+03 - -3.9327484e+03 1.8669747e+03 3.2370768e+03 - -3.9928293e+03 1.7811687e+03 3.2249771e+03 - -4.0497210e+03 1.6971268e+03 3.2126162e+03 - -4.1034728e+03 1.6148876e+03 3.2000980e+03 - -4.1541496e+03 1.5344661e+03 3.1875198e+03 - -4.2018288e+03 1.4558570e+03 3.1749716e+03 - -4.2465969e+03 1.3790372e+03 3.1625362e+03 - -4.2885469e+03 1.3039685e+03 3.1502888e+03 - -4.3277757e+03 1.2306004e+03 3.1382974e+03 - -4.3643818e+03 1.1588722e+03 3.1266229e+03 - -4.3984641e+03 1.0887151e+03 3.1153193e+03 - -4.4301196e+03 1.0200542e+03 3.1044345e+03 - -4.4594427e+03 9.5280992e+02 3.0940106e+03 - -4.4865244e+03 8.8689920e+02 3.0840844e+03 - -4.5114511e+03 8.2223688e+02 3.0746878e+03 - -4.5343045e+03 7.5873645e+02 3.0658486e+03 - -4.5551608e+03 6.9631077e+02 3.0575904e+03 - -4.5740909e+03 6.3487265e+02 3.0499338e+03 - -4.5911597e+03 5.7433528e+02 3.0428961e+03 - -4.6064266e+03 5.1461248e+02 3.0364920e+03 - -4.6199449e+03 4.5561893e+02 3.0307338e+03 - -4.6317621e+03 3.9727030e+02 3.0256320e+03 - -4.6419201e+03 3.3948324e+02 3.0211950e+03 - -4.6504550e+03 2.8217539e+02 3.0174299e+03 - -4.6573969e+03 2.2526532e+02 3.0143422e+03 - -4.6627706e+03 1.6867241e+02 3.0119364e+03 - -4.6665954e+03 1.1231676e+02 3.0102157e+03 - -4.6688848e+03 5.6118961e+01 3.0091824e+03 - -4.6696470e+03 9.6268545e-09 3.0088378e+03 - -4.6688848e+03 -5.6118961e+01 3.0091824e+03 - -4.6665954e+03 -1.1231676e+02 3.0102157e+03 - -4.6627706e+03 -1.6867241e+02 3.0119364e+03 - -4.6573969e+03 -2.2526532e+02 3.0143422e+03 - -4.6504550e+03 -2.8217539e+02 3.0174299e+03 - -4.6419201e+03 -3.3948324e+02 3.0211950e+03 - -4.6317621e+03 -3.9727030e+02 3.0256320e+03 - -4.6199449e+03 -4.5561893e+02 3.0307338e+03 - -4.6064266e+03 -5.1461248e+02 3.0364920e+03 - -4.5911597e+03 -5.7433528e+02 3.0428961e+03 - -4.5740909e+03 -6.3487265e+02 3.0499338e+03 - -4.5551608e+03 -6.9631077e+02 3.0575904e+03 - -4.5343045e+03 -7.5873645e+02 3.0658486e+03 - -4.5114511e+03 -8.2223688e+02 3.0746878e+03 - -4.4865244e+03 -8.8689920e+02 3.0840844e+03 - -4.4594427e+03 -9.5280992e+02 3.0940106e+03 - -4.4301196e+03 -1.0200542e+03 3.1044345e+03 - -4.3984641e+03 -1.0887151e+03 3.1153193e+03 - -4.3643818e+03 -1.1588722e+03 3.1266229e+03 - -4.3277757e+03 -1.2306004e+03 3.1382974e+03 - -4.2885469e+03 -1.3039685e+03 3.1502888e+03 - -4.2465969e+03 -1.3790372e+03 3.1625362e+03 - -4.2018288e+03 -1.4558570e+03 3.1749716e+03 - -4.1541496e+03 -1.5344661e+03 3.1875198e+03 - -4.1034728e+03 -1.6148876e+03 3.2000980e+03 - -4.0497210e+03 -1.6971268e+03 3.2126162e+03 - -3.9928293e+03 -1.7811687e+03 3.2249771e+03 - -3.9327484e+03 -1.8669747e+03 3.2370768e+03 - -3.8694484e+03 -1.9544805e+03 3.2488060e+03 - -3.8029226e+03 -2.0435930e+03 3.2600507e+03 - -3.7331908e+03 -2.1341889e+03 3.2706943e+03 - -3.6603025e+03 -2.2261129e+03 3.2806192e+03 - -3.5843403e+03 -2.3191775e+03 3.2897094e+03 - -3.5054213e+03 -2.4131634e+03 3.2978530e+03 - -3.4236987e+03 -2.5078211e+03 3.3049448e+03 - -3.3393614e+03 -2.6028737e+03 3.3108897e+03 - -3.2526333e+03 -2.6980210e+03 3.3156049e+03 - -3.1637700e+03 -2.7929447e+03 3.3190232e+03 - -3.0730553e+03 -2.8873147e+03 3.3210946e+03 - -2.9807958e+03 -2.9807958e+03 3.3217886e+03 - -2.8873147e+03 -3.0730553e+03 3.3210946e+03 - -2.7929447e+03 -3.1637700e+03 3.3190232e+03 - -2.6980210e+03 -3.2526333e+03 3.3156049e+03 - -2.6028737e+03 -3.3393614e+03 3.3108897e+03 - -2.5078211e+03 -3.4236987e+03 3.3049448e+03 - -2.4131634e+03 -3.5054213e+03 3.2978530e+03 - -2.3191775e+03 -3.5843403e+03 3.2897094e+03 - -2.2261129e+03 -3.6603025e+03 3.2806192e+03 - -2.1341889e+03 -3.7331908e+03 3.2706943e+03 - -2.0435930e+03 -3.8029226e+03 3.2600507e+03 - -1.9544805e+03 -3.8694484e+03 3.2488060e+03 - -1.8669747e+03 -3.9327484e+03 3.2370768e+03 - -1.7811687e+03 -3.9928293e+03 3.2249771e+03 - -1.6971268e+03 -4.0497210e+03 3.2126162e+03 - -1.6148876e+03 -4.1034728e+03 3.2000980e+03 - -1.5344661e+03 -4.1541496e+03 3.1875198e+03 - -1.4558570e+03 -4.2018288e+03 3.1749716e+03 - -1.3790372e+03 -4.2465969e+03 3.1625362e+03 - -1.3039685e+03 -4.2885469e+03 3.1502888e+03 - -1.2306004e+03 -4.3277757e+03 3.1382974e+03 - -1.1588722e+03 -4.3643818e+03 3.1266229e+03 - -1.0887151e+03 -4.3984641e+03 3.1153193e+03 - -1.0200542e+03 -4.4301196e+03 3.1044345e+03 - -9.5280992e+02 -4.4594427e+03 3.0940106e+03 - -8.8689920e+02 -4.4865244e+03 3.0840844e+03 - -8.2223688e+02 -4.5114511e+03 3.0746878e+03 - -7.5873645e+02 -4.5343045e+03 3.0658486e+03 - -6.9631077e+02 -4.5551608e+03 3.0575904e+03 - -6.3487265e+02 -4.5740909e+03 3.0499338e+03 - -5.7433528e+02 -4.5911597e+03 3.0428961e+03 - -5.1461248e+02 -4.6064266e+03 3.0364920e+03 - -4.5561893e+02 -4.6199449e+03 3.0307338e+03 - -3.9727030e+02 -4.6317621e+03 3.0256320e+03 - -3.3948324e+02 -4.6419201e+03 3.0211950e+03 - -2.8217539e+02 -4.6504550e+03 3.0174299e+03 - -2.2526532e+02 -4.6573969e+03 3.0143422e+03 - -1.6867241e+02 -4.6627706e+03 3.0119364e+03 - -1.1231676e+02 -4.6665954e+03 3.0102157e+03 - -5.6118961e+01 -4.6688848e+03 3.0091824e+03 - -4.8134273e-09 -4.6696470e+03 3.0088378e+03 - 5.6118961e+01 -4.6688848e+03 3.0091824e+03 - 1.1231676e+02 -4.6665954e+03 3.0102157e+03 - 1.6867241e+02 -4.6627706e+03 3.0119364e+03 - 2.2526532e+02 -4.6573969e+03 3.0143422e+03 - 2.8217539e+02 -4.6504550e+03 3.0174299e+03 - 3.3948324e+02 -4.6419201e+03 3.0211950e+03 - 3.9727030e+02 -4.6317621e+03 3.0256320e+03 - 4.5561893e+02 -4.6199449e+03 3.0307338e+03 - 5.1461248e+02 -4.6064266e+03 3.0364920e+03 - 5.7433528e+02 -4.5911597e+03 3.0428961e+03 - 6.3487265e+02 -4.5740909e+03 3.0499338e+03 - 6.9631077e+02 -4.5551608e+03 3.0575904e+03 - 7.5873645e+02 -4.5343045e+03 3.0658486e+03 - 8.2223688e+02 -4.5114511e+03 3.0746878e+03 - 8.8689920e+02 -4.4865244e+03 3.0840844e+03 - 9.5280992e+02 -4.4594427e+03 3.0940106e+03 - 1.0200542e+03 -4.4301196e+03 3.1044345e+03 - 1.0887151e+03 -4.3984641e+03 3.1153193e+03 - 1.1588722e+03 -4.3643818e+03 3.1266229e+03 - 1.2306004e+03 -4.3277757e+03 3.1382974e+03 - 1.3039685e+03 -4.2885469e+03 3.1502888e+03 - 1.3790372e+03 -4.2465969e+03 3.1625362e+03 - 1.4558570e+03 -4.2018288e+03 3.1749716e+03 - 1.5344661e+03 -4.1541496e+03 3.1875198e+03 - 1.6148876e+03 -4.1034728e+03 3.2000980e+03 - 1.6971268e+03 -4.0497210e+03 3.2126162e+03 - 1.7811687e+03 -3.9928293e+03 3.2249771e+03 - 1.8669747e+03 -3.9327484e+03 3.2370768e+03 - 1.9544805e+03 -3.8694484e+03 3.2488060e+03 - 2.0435930e+03 -3.8029226e+03 3.2600507e+03 - 2.1341889e+03 -3.7331908e+03 3.2706943e+03 - 2.2261129e+03 -3.6603025e+03 3.2806192e+03 - 2.3191775e+03 -3.5843403e+03 3.2897094e+03 - 2.4131634e+03 -3.5054213e+03 3.2978530e+03 - 2.5078211e+03 -3.4236987e+03 3.3049448e+03 - 2.6028737e+03 -3.3393614e+03 3.3108897e+03 - 2.6980210e+03 -3.2526333e+03 3.3156049e+03 - 2.7929447e+03 -3.1637700e+03 3.3190232e+03 - 2.8873147e+03 -3.0730553e+03 3.3210946e+03 - 2.9807958e+03 -2.9807958e+03 3.3217886e+03 - 3.0730553e+03 -2.8873147e+03 3.3210946e+03 - 3.1637700e+03 -2.7929447e+03 3.3190232e+03 - 3.2526333e+03 -2.6980210e+03 3.3156049e+03 - 3.3393614e+03 -2.6028737e+03 3.3108897e+03 - 3.4236987e+03 -2.5078211e+03 3.3049448e+03 - 3.5054213e+03 -2.4131634e+03 3.2978530e+03 - 3.5843403e+03 -2.3191775e+03 3.2897094e+03 - 3.6603025e+03 -2.2261129e+03 3.2806192e+03 - 3.7331908e+03 -2.1341889e+03 3.2706943e+03 - 3.8029226e+03 -2.0435930e+03 3.2600507e+03 - 3.8694484e+03 -1.9544805e+03 3.2488060e+03 - 3.9327484e+03 -1.8669747e+03 3.2370768e+03 - 3.9928293e+03 -1.7811687e+03 3.2249771e+03 - 4.0497210e+03 -1.6971268e+03 3.2126162e+03 - 4.1034728e+03 -1.6148876e+03 3.2000980e+03 - 4.1541496e+03 -1.5344661e+03 3.1875198e+03 - 4.2018288e+03 -1.4558570e+03 3.1749716e+03 - 4.2465969e+03 -1.3790372e+03 3.1625362e+03 - 4.2885469e+03 -1.3039685e+03 3.1502888e+03 - 4.3277757e+03 -1.2306004e+03 3.1382974e+03 - 4.3643818e+03 -1.1588722e+03 3.1266229e+03 - 4.3984641e+03 -1.0887151e+03 3.1153193e+03 - 4.4301196e+03 -1.0200542e+03 3.1044345e+03 - 4.4594427e+03 -9.5280992e+02 3.0940106e+03 - 4.4865244e+03 -8.8689920e+02 3.0840844e+03 - 4.5114511e+03 -8.2223688e+02 3.0746878e+03 - 4.5343045e+03 -7.5873645e+02 3.0658486e+03 - 4.5551608e+03 -6.9631077e+02 3.0575904e+03 - 4.5740909e+03 -6.3487265e+02 3.0499338e+03 - 4.5911597e+03 -5.7433528e+02 3.0428961e+03 - 4.6064266e+03 -5.1461248e+02 3.0364920e+03 - 4.6199449e+03 -4.5561893e+02 3.0307338e+03 - 4.6317621e+03 -3.9727030e+02 3.0256320e+03 - 4.6419201e+03 -3.3948324e+02 3.0211950e+03 - 4.6504550e+03 -2.8217539e+02 3.0174299e+03 - 4.6573969e+03 -2.2526532e+02 3.0143422e+03 - 4.6627706e+03 -1.6867241e+02 3.0119364e+03 - 4.6665954e+03 -1.1231676e+02 3.0102157e+03 - 4.6688848e+03 -5.6118961e+01 3.0091824e+03 - 4.6696470e+03 0.0000000e+00 3.0088378e+03 - 4.7081042e+03 -4.8134273e-09 2.9446705e+03 - 4.7073477e+03 5.5924745e+01 2.9450244e+03 - 4.7050752e+03 1.1192962e+02 2.9460855e+03 - 4.7012785e+03 1.6809498e+02 2.9478528e+03 - 4.6959434e+03 2.2450159e+02 2.9503241e+03 - 4.6890504e+03 2.8123084e+02 2.9534964e+03 - 4.6805741e+03 3.3836491e+02 2.9573658e+03 - 4.6704832e+03 3.9598695e+02 2.9619271e+03 - 4.6587406e+03 4.5418122e+02 2.9671737e+03 - 4.6453034e+03 5.1303316e+02 2.9730979e+03 - 4.6301223e+03 5.7262945e+02 2.9796897e+03 - 4.6131423e+03 6.3305801e+02 2.9869376e+03 - 4.5943018e+03 6.9440791e+02 2.9948275e+03 - 4.5735335e+03 7.5676924e+02 3.0033428e+03 - 4.5507635e+03 8.2023279e+02 3.0124636e+03 - 4.5259123e+03 8.8488971e+02 3.0221669e+03 - 4.4988945e+03 9.5083092e+02 3.0324255e+03 - 4.4696192e+03 1.0181465e+03 3.0432079e+03 - 4.4379907e+03 1.0869247e+03 3.0544774e+03 - 4.4039091e+03 1.1572508e+03 3.0661920e+03 - 4.3672712e+03 1.2292059e+03 3.0783036e+03 - 4.3279716e+03 1.3028653e+03 3.0907573e+03 - 4.2859044e+03 1.3782963e+03 3.1034913e+03 - 4.2409649e+03 1.4555564e+03 3.1164359e+03 - 4.1930519e+03 1.5346905e+03 3.1295137e+03 - 4.1420701e+03 1.6157284e+03 3.1426390e+03 - 4.0879334e+03 1.6986819e+03 3.1557180e+03 - 4.0305681e+03 1.7835413e+03 3.1686491e+03 - 3.9699164e+03 1.8702727e+03 3.1813230e+03 - 3.9059408e+03 1.9588147e+03 3.1936242e+03 - 3.8386278e+03 2.0490759e+03 3.2054319e+03 - 3.7679918e+03 2.1409322e+03 3.2166216e+03 - 3.6940792e+03 2.2342253e+03 3.2270676e+03 - 3.6169712e+03 2.3287620e+03 3.2366453e+03 - 3.5367867e+03 2.4243145e+03 3.2452339e+03 - 3.4536833e+03 2.5206219e+03 3.2527199e+03 - 3.3678577e+03 2.6173931e+03 3.2589998e+03 - 3.2795443e+03 2.7143114e+03 3.2639840e+03 - 3.1890127e+03 2.8110399e+03 3.2675989e+03 - 3.0965631e+03 2.9072282e+03 3.2697902e+03 - 3.0025205e+03 3.0025205e+03 3.2705244e+03 - 2.9072282e+03 3.0965631e+03 3.2697902e+03 - 2.8110399e+03 3.1890127e+03 3.2675989e+03 - 2.7143114e+03 3.2795443e+03 3.2639840e+03 - 2.6173931e+03 3.3678577e+03 3.2589998e+03 - 2.5206219e+03 3.4536833e+03 3.2527199e+03 - 2.4243145e+03 3.5367867e+03 3.2452339e+03 - 2.3287620e+03 3.6169712e+03 3.2366453e+03 - 2.2342253e+03 3.6940792e+03 3.2270676e+03 - 2.1409322e+03 3.7679918e+03 3.2166216e+03 - 2.0490759e+03 3.8386278e+03 3.2054319e+03 - 1.9588147e+03 3.9059408e+03 3.1936242e+03 - 1.8702727e+03 3.9699164e+03 3.1813230e+03 - 1.7835413e+03 4.0305681e+03 3.1686491e+03 - 1.6986819e+03 4.0879334e+03 3.1557180e+03 - 1.6157284e+03 4.1420701e+03 3.1426390e+03 - 1.5346905e+03 4.1930519e+03 3.1295137e+03 - 1.4555564e+03 4.2409649e+03 3.1164359e+03 - 1.3782963e+03 4.2859044e+03 3.1034913e+03 - 1.3028653e+03 4.3279716e+03 3.0907573e+03 - 1.2292059e+03 4.3672712e+03 3.0783036e+03 - 1.1572508e+03 4.4039091e+03 3.0661920e+03 - 1.0869247e+03 4.4379907e+03 3.0544774e+03 - 1.0181465e+03 4.4696192e+03 3.0432079e+03 - 9.5083092e+02 4.4988945e+03 3.0324255e+03 - 8.8488971e+02 4.5259123e+03 3.0221669e+03 - 8.2023279e+02 4.5507635e+03 3.0124636e+03 - 7.5676924e+02 4.5735335e+03 3.0033428e+03 - 6.9440791e+02 4.5943018e+03 2.9948275e+03 - 6.3305801e+02 4.6131423e+03 2.9869376e+03 - 5.7262945e+02 4.6301223e+03 2.9796897e+03 - 5.1303316e+02 4.6453034e+03 2.9730979e+03 - 4.5418122e+02 4.6587406e+03 2.9671737e+03 - 3.9598695e+02 4.6704832e+03 2.9619271e+03 - 3.3836491e+02 4.6805741e+03 2.9573658e+03 - 2.8123084e+02 4.6890504e+03 2.9534964e+03 - 2.2450159e+02 4.6959434e+03 2.9503241e+03 - 1.6809498e+02 4.7012785e+03 2.9478528e+03 - 1.1192962e+02 4.7050752e+03 2.9460855e+03 - 5.5924745e+01 4.7073477e+03 2.9450244e+03 - -4.8134273e-09 4.7081042e+03 2.9446705e+03 - -5.5924745e+01 4.7073477e+03 2.9450244e+03 - -1.1192962e+02 4.7050752e+03 2.9460855e+03 - -1.6809498e+02 4.7012785e+03 2.9478528e+03 - -2.2450159e+02 4.6959434e+03 2.9503241e+03 - -2.8123084e+02 4.6890504e+03 2.9534964e+03 - -3.3836491e+02 4.6805741e+03 2.9573658e+03 - -3.9598695e+02 4.6704832e+03 2.9619271e+03 - -4.5418122e+02 4.6587406e+03 2.9671737e+03 - -5.1303316e+02 4.6453034e+03 2.9730979e+03 - -5.7262945e+02 4.6301223e+03 2.9796897e+03 - -6.3305801e+02 4.6131423e+03 2.9869376e+03 - -6.9440791e+02 4.5943018e+03 2.9948275e+03 - -7.5676924e+02 4.5735335e+03 3.0033428e+03 - -8.2023279e+02 4.5507635e+03 3.0124636e+03 - -8.8488971e+02 4.5259123e+03 3.0221669e+03 - -9.5083092e+02 4.4988945e+03 3.0324255e+03 - -1.0181465e+03 4.4696192e+03 3.0432079e+03 - -1.0869247e+03 4.4379907e+03 3.0544774e+03 - -1.1572508e+03 4.4039091e+03 3.0661920e+03 - -1.2292059e+03 4.3672712e+03 3.0783036e+03 - -1.3028653e+03 4.3279716e+03 3.0907573e+03 - -1.3782963e+03 4.2859044e+03 3.1034913e+03 - -1.4555564e+03 4.2409649e+03 3.1164359e+03 - -1.5346905e+03 4.1930519e+03 3.1295137e+03 - -1.6157284e+03 4.1420701e+03 3.1426390e+03 - -1.6986819e+03 4.0879334e+03 3.1557180e+03 - -1.7835413e+03 4.0305681e+03 3.1686491e+03 - -1.8702727e+03 3.9699164e+03 3.1813230e+03 - -1.9588147e+03 3.9059408e+03 3.1936242e+03 - -2.0490759e+03 3.8386278e+03 3.2054319e+03 - -2.1409322e+03 3.7679918e+03 3.2166216e+03 - -2.2342253e+03 3.6940792e+03 3.2270676e+03 - -2.3287620e+03 3.6169712e+03 3.2366453e+03 - -2.4243145e+03 3.5367867e+03 3.2452339e+03 - -2.5206219e+03 3.4536833e+03 3.2527199e+03 - -2.6173931e+03 3.3678577e+03 3.2589998e+03 - -2.7143114e+03 3.2795443e+03 3.2639840e+03 - -2.8110399e+03 3.1890127e+03 3.2675989e+03 - -2.9072282e+03 3.0965631e+03 3.2697902e+03 - -3.0025205e+03 3.0025205e+03 3.2705244e+03 - -3.0965631e+03 2.9072282e+03 3.2697902e+03 - -3.1890127e+03 2.8110399e+03 3.2675989e+03 - -3.2795443e+03 2.7143114e+03 3.2639840e+03 - -3.3678577e+03 2.6173931e+03 3.2589998e+03 - -3.4536833e+03 2.5206219e+03 3.2527199e+03 - -3.5367867e+03 2.4243145e+03 3.2452339e+03 - -3.6169712e+03 2.3287620e+03 3.2366453e+03 - -3.6940792e+03 2.2342253e+03 3.2270676e+03 - -3.7679918e+03 2.1409322e+03 3.2166216e+03 - -3.8386278e+03 2.0490759e+03 3.2054319e+03 - -3.9059408e+03 1.9588147e+03 3.1936242e+03 - -3.9699164e+03 1.8702727e+03 3.1813230e+03 - -4.0305681e+03 1.7835413e+03 3.1686491e+03 - -4.0879334e+03 1.6986819e+03 3.1557180e+03 - -4.1420701e+03 1.6157284e+03 3.1426390e+03 - -4.1930519e+03 1.5346905e+03 3.1295137e+03 - -4.2409649e+03 1.4555564e+03 3.1164359e+03 - -4.2859044e+03 1.3782963e+03 3.1034913e+03 - -4.3279716e+03 1.3028653e+03 3.0907573e+03 - -4.3672712e+03 1.2292059e+03 3.0783036e+03 - -4.4039091e+03 1.1572508e+03 3.0661920e+03 - -4.4379907e+03 1.0869247e+03 3.0544774e+03 - -4.4696192e+03 1.0181465e+03 3.0432079e+03 - -4.4988945e+03 9.5083092e+02 3.0324255e+03 - -4.5259123e+03 8.8488971e+02 3.0221669e+03 - -4.5507635e+03 8.2023279e+02 3.0124636e+03 - -4.5735335e+03 7.5676924e+02 3.0033428e+03 - -4.5943018e+03 6.9440791e+02 2.9948275e+03 - -4.6131423e+03 6.3305801e+02 2.9869376e+03 - -4.6301223e+03 5.7262945e+02 2.9796897e+03 - -4.6453034e+03 5.1303316e+02 2.9730979e+03 - -4.6587406e+03 4.5418122e+02 2.9671737e+03 - -4.6704832e+03 3.9598695e+02 2.9619271e+03 - -4.6805741e+03 3.3836491e+02 2.9573658e+03 - -4.6890504e+03 2.8123084e+02 2.9534964e+03 - -4.6959434e+03 2.2450159e+02 2.9503241e+03 - -4.7012785e+03 1.6809498e+02 2.9478528e+03 - -4.7050752e+03 1.1192962e+02 2.9460855e+03 - -4.7073477e+03 5.5924745e+01 2.9450244e+03 - -4.7081042e+03 0.0000000e+00 2.9446705e+03 - -4.7073477e+03 -5.5924745e+01 2.9450244e+03 - -4.7050752e+03 -1.1192962e+02 2.9460855e+03 - -4.7012785e+03 -1.6809498e+02 2.9478528e+03 - -4.6959434e+03 -2.2450159e+02 2.9503241e+03 - -4.6890504e+03 -2.8123084e+02 2.9534964e+03 - -4.6805741e+03 -3.3836491e+02 2.9573658e+03 - -4.6704832e+03 -3.9598695e+02 2.9619271e+03 - -4.6587406e+03 -4.5418122e+02 2.9671737e+03 - -4.6453034e+03 -5.1303316e+02 2.9730979e+03 - -4.6301223e+03 -5.7262945e+02 2.9796897e+03 - -4.6131423e+03 -6.3305801e+02 2.9869376e+03 - -4.5943018e+03 -6.9440791e+02 2.9948275e+03 - -4.5735335e+03 -7.5676924e+02 3.0033428e+03 - -4.5507635e+03 -8.2023279e+02 3.0124636e+03 - -4.5259123e+03 -8.8488971e+02 3.0221669e+03 - -4.4988945e+03 -9.5083092e+02 3.0324255e+03 - -4.4696192e+03 -1.0181465e+03 3.0432079e+03 - -4.4379907e+03 -1.0869247e+03 3.0544774e+03 - -4.4039091e+03 -1.1572508e+03 3.0661920e+03 - -4.3672712e+03 -1.2292059e+03 3.0783036e+03 - -4.3279716e+03 -1.3028653e+03 3.0907573e+03 - -4.2859044e+03 -1.3782963e+03 3.1034913e+03 - -4.2409649e+03 -1.4555564e+03 3.1164359e+03 - -4.1930519e+03 -1.5346905e+03 3.1295137e+03 - -4.1420701e+03 -1.6157284e+03 3.1426390e+03 - -4.0879334e+03 -1.6986819e+03 3.1557180e+03 - -4.0305681e+03 -1.7835413e+03 3.1686491e+03 - -3.9699164e+03 -1.8702727e+03 3.1813230e+03 - -3.9059408e+03 -1.9588147e+03 3.1936242e+03 - -3.8386278e+03 -2.0490759e+03 3.2054319e+03 - -3.7679918e+03 -2.1409322e+03 3.2166216e+03 - -3.6940792e+03 -2.2342253e+03 3.2270676e+03 - -3.6169712e+03 -2.3287620e+03 3.2366453e+03 - -3.5367867e+03 -2.4243145e+03 3.2452339e+03 - -3.4536833e+03 -2.5206219e+03 3.2527199e+03 - -3.3678577e+03 -2.6173931e+03 3.2589998e+03 - -3.2795443e+03 -2.7143114e+03 3.2639840e+03 - -3.1890127e+03 -2.8110399e+03 3.2675989e+03 - -3.0965631e+03 -2.9072282e+03 3.2697902e+03 - -3.0025205e+03 -3.0025205e+03 3.2705244e+03 - -2.9072282e+03 -3.0965631e+03 3.2697902e+03 - -2.8110399e+03 -3.1890127e+03 3.2675989e+03 - -2.7143114e+03 -3.2795443e+03 3.2639840e+03 - -2.6173931e+03 -3.3678577e+03 3.2589998e+03 - -2.5206219e+03 -3.4536833e+03 3.2527199e+03 - -2.4243145e+03 -3.5367867e+03 3.2452339e+03 - -2.3287620e+03 -3.6169712e+03 3.2366453e+03 - -2.2342253e+03 -3.6940792e+03 3.2270676e+03 - -2.1409322e+03 -3.7679918e+03 3.2166216e+03 - -2.0490759e+03 -3.8386278e+03 3.2054319e+03 - -1.9588147e+03 -3.9059408e+03 3.1936242e+03 - -1.8702727e+03 -3.9699164e+03 3.1813230e+03 - -1.7835413e+03 -4.0305681e+03 3.1686491e+03 - -1.6986819e+03 -4.0879334e+03 3.1557180e+03 - -1.6157284e+03 -4.1420701e+03 3.1426390e+03 - -1.5346905e+03 -4.1930519e+03 3.1295137e+03 - -1.4555564e+03 -4.2409649e+03 3.1164359e+03 - -1.3782963e+03 -4.2859044e+03 3.1034913e+03 - -1.3028653e+03 -4.3279716e+03 3.0907573e+03 - -1.2292059e+03 -4.3672712e+03 3.0783036e+03 - -1.1572508e+03 -4.4039091e+03 3.0661920e+03 - -1.0869247e+03 -4.4379907e+03 3.0544774e+03 - -1.0181465e+03 -4.4696192e+03 3.0432079e+03 - -9.5083092e+02 -4.4988945e+03 3.0324255e+03 - -8.8488971e+02 -4.5259123e+03 3.0221669e+03 - -8.2023279e+02 -4.5507635e+03 3.0124636e+03 - -7.5676924e+02 -4.5735335e+03 3.0033428e+03 - -6.9440791e+02 -4.5943018e+03 2.9948275e+03 - -6.3305801e+02 -4.6131423e+03 2.9869376e+03 - -5.7262945e+02 -4.6301223e+03 2.9796897e+03 - -5.1303316e+02 -4.6453034e+03 2.9730979e+03 - -4.5418122e+02 -4.6587406e+03 2.9671737e+03 - -3.9598695e+02 -4.6704832e+03 2.9619271e+03 - -3.3836491e+02 -4.6805741e+03 2.9573658e+03 - -2.8123084e+02 -4.6890504e+03 2.9534964e+03 - -2.2450159e+02 -4.6959434e+03 2.9503241e+03 - -1.6809498e+02 -4.7012785e+03 2.9478528e+03 - -1.1192962e+02 -4.7050752e+03 2.9460855e+03 - -5.5924745e+01 -4.7073477e+03 2.9450244e+03 - 0.0000000e+00 -4.7081042e+03 2.9446705e+03 - 5.5924745e+01 -4.7073477e+03 2.9450244e+03 - 1.1192962e+02 -4.7050752e+03 2.9460855e+03 - 1.6809498e+02 -4.7012785e+03 2.9478528e+03 - 2.2450159e+02 -4.6959434e+03 2.9503241e+03 - 2.8123084e+02 -4.6890504e+03 2.9534964e+03 - 3.3836491e+02 -4.6805741e+03 2.9573658e+03 - 3.9598695e+02 -4.6704832e+03 2.9619271e+03 - 4.5418122e+02 -4.6587406e+03 2.9671737e+03 - 5.1303316e+02 -4.6453034e+03 2.9730979e+03 - 5.7262945e+02 -4.6301223e+03 2.9796897e+03 - 6.3305801e+02 -4.6131423e+03 2.9869376e+03 - 6.9440791e+02 -4.5943018e+03 2.9948275e+03 - 7.5676924e+02 -4.5735335e+03 3.0033428e+03 - 8.2023279e+02 -4.5507635e+03 3.0124636e+03 - 8.8488971e+02 -4.5259123e+03 3.0221669e+03 - 9.5083092e+02 -4.4988945e+03 3.0324255e+03 - 1.0181465e+03 -4.4696192e+03 3.0432079e+03 - 1.0869247e+03 -4.4379907e+03 3.0544774e+03 - 1.1572508e+03 -4.4039091e+03 3.0661920e+03 - 1.2292059e+03 -4.3672712e+03 3.0783036e+03 - 1.3028653e+03 -4.3279716e+03 3.0907573e+03 - 1.3782963e+03 -4.2859044e+03 3.1034913e+03 - 1.4555564e+03 -4.2409649e+03 3.1164359e+03 - 1.5346905e+03 -4.1930519e+03 3.1295137e+03 - 1.6157284e+03 -4.1420701e+03 3.1426390e+03 - 1.6986819e+03 -4.0879334e+03 3.1557180e+03 - 1.7835413e+03 -4.0305681e+03 3.1686491e+03 - 1.8702727e+03 -3.9699164e+03 3.1813230e+03 - 1.9588147e+03 -3.9059408e+03 3.1936242e+03 - 2.0490759e+03 -3.8386278e+03 3.2054319e+03 - 2.1409322e+03 -3.7679918e+03 3.2166216e+03 - 2.2342253e+03 -3.6940792e+03 3.2270676e+03 - 2.3287620e+03 -3.6169712e+03 3.2366453e+03 - 2.4243145e+03 -3.5367867e+03 3.2452339e+03 - 2.5206219e+03 -3.4536833e+03 3.2527199e+03 - 2.6173931e+03 -3.3678577e+03 3.2589998e+03 - 2.7143114e+03 -3.2795443e+03 3.2639840e+03 - 2.8110399e+03 -3.1890127e+03 3.2675989e+03 - 2.9072282e+03 -3.0965631e+03 3.2697902e+03 - 3.0025205e+03 -3.0025205e+03 3.2705244e+03 - 3.0965631e+03 -2.9072282e+03 3.2697902e+03 - 3.1890127e+03 -2.8110399e+03 3.2675989e+03 - 3.2795443e+03 -2.7143114e+03 3.2639840e+03 - 3.3678577e+03 -2.6173931e+03 3.2589998e+03 - 3.4536833e+03 -2.5206219e+03 3.2527199e+03 - 3.5367867e+03 -2.4243145e+03 3.2452339e+03 - 3.6169712e+03 -2.3287620e+03 3.2366453e+03 - 3.6940792e+03 -2.2342253e+03 3.2270676e+03 - 3.7679918e+03 -2.1409322e+03 3.2166216e+03 - 3.8386278e+03 -2.0490759e+03 3.2054319e+03 - 3.9059408e+03 -1.9588147e+03 3.1936242e+03 - 3.9699164e+03 -1.8702727e+03 3.1813230e+03 - 4.0305681e+03 -1.7835413e+03 3.1686491e+03 - 4.0879334e+03 -1.6986819e+03 3.1557180e+03 - 4.1420701e+03 -1.6157284e+03 3.1426390e+03 - 4.1930519e+03 -1.5346905e+03 3.1295137e+03 - 4.2409649e+03 -1.4555564e+03 3.1164359e+03 - 4.2859044e+03 -1.3782963e+03 3.1034913e+03 - 4.3279716e+03 -1.3028653e+03 3.0907573e+03 - 4.3672712e+03 -1.2292059e+03 3.0783036e+03 - 4.4039091e+03 -1.1572508e+03 3.0661920e+03 - 4.4379907e+03 -1.0869247e+03 3.0544774e+03 - 4.4696192e+03 -1.0181465e+03 3.0432079e+03 - 4.4988945e+03 -9.5083092e+02 3.0324255e+03 - 4.5259123e+03 -8.8488971e+02 3.0221669e+03 - 4.5507635e+03 -8.2023279e+02 3.0124636e+03 - 4.5735335e+03 -7.5676924e+02 3.0033428e+03 - 4.5943018e+03 -6.9440791e+02 2.9948275e+03 - 4.6131423e+03 -6.3305801e+02 2.9869376e+03 - 4.6301223e+03 -5.7262945e+02 2.9796897e+03 - 4.6453034e+03 -5.1303316e+02 2.9730979e+03 - 4.6587406e+03 -4.5418122e+02 2.9671737e+03 - 4.6704832e+03 -3.9598695e+02 2.9619271e+03 - 4.6805741e+03 -3.3836491e+02 2.9573658e+03 - 4.6890504e+03 -2.8123084e+02 2.9534964e+03 - 4.6959434e+03 -2.2450159e+02 2.9503241e+03 - 4.7012785e+03 -1.6809498e+02 2.9478528e+03 - 4.7050752e+03 -1.1192962e+02 2.9460855e+03 - 4.7073477e+03 -5.5924745e+01 2.9450244e+03 - 4.7081042e+03 0.0000000e+00 2.9446705e+03 - 4.7461604e+03 -4.8134273e-09 2.8782484e+03 - 4.7454100e+03 5.5720100e+01 2.8786112e+03 - 4.7431563e+03 1.1152155e+02 2.8796991e+03 - 4.7393904e+03 1.6748592e+02 2.8815111e+03 - 4.7340982e+03 2.2369529e+02 2.8840454e+03 - 4.7272595e+03 2.8023242e+02 2.8872993e+03 - 4.7188481e+03 3.3718099e+02 2.8912692e+03 - 4.7088321e+03 3.9462580e+02 2.8959504e+03 - 4.6971734e+03 4.5265291e+02 2.9013371e+03 - 4.6838277e+03 5.1134979e+02 2.9074220e+03 - 4.6687443e+03 5.7080541e+02 2.9141960e+03 - 4.6518664e+03 6.3111023e+02 2.9216483e+03 - 4.6331303e+03 6.9235621e+02 2.9297655e+03 - 4.6124662e+03 7.5463664e+02 2.9385318e+03 - 4.5897974e+03 8.1804594e+02 2.9479284e+03 - 4.5650411e+03 8.8267927e+02 2.9579327e+03 - 4.5381080e+03 9.4863206e+02 2.9685184e+03 - 4.5089030e+03 1.0159993e+03 2.9796545e+03 - 4.4773253e+03 1.0848746e+03 2.9913049e+03 - 4.4432695e+03 1.1553494e+03 3.0034276e+03 - 4.4066261e+03 1.2275109e+03 3.0159745e+03 - 4.3672829e+03 1.3014411e+03 3.0288902e+03 - 4.3251264e+03 1.3772146e+03 3.0421119e+03 - 4.2800437e+03 1.4548961e+03 3.0555686e+03 - 4.2319248e+03 1.5345378e+03 3.0691807e+03 - 4.1806654e+03 1.6161770e+03 3.0828598e+03 - 4.1261698e+03 1.6998320e+03 3.0965084e+03 - 4.0683548e+03 1.7854995e+03 3.1100204e+03 - 4.0071537e+03 1.8731508e+03 3.1232813e+03 - 3.9425203e+03 1.9627283e+03 3.1361690e+03 - 3.8744334e+03 2.0541425e+03 3.1485556e+03 - 3.8029016e+03 2.1472691e+03 3.1603086e+03 - 3.7279670e+03 2.2419471e+03 3.1712935e+03 - 3.6497095e+03 2.3379777e+03 3.1813766e+03 - 3.5682489e+03 2.4351244e+03 3.1904276e+03 - 3.4837473e+03 2.5331145e+03 3.1983239e+03 - 3.3964092e+03 2.6316421e+03 3.2049534e+03 - 3.3064804e+03 2.7303730e+03 3.2102184e+03 - 3.2142448e+03 2.8289503e+03 3.2140389e+03 - 3.1200200e+03 2.9270024e+03 3.2163556e+03 - 3.0241510e+03 3.0241510e+03 3.2171320e+03 - 2.9270024e+03 3.1200200e+03 3.2163556e+03 - 2.8289503e+03 3.2142448e+03 3.2140389e+03 - 2.7303730e+03 3.3064804e+03 3.2102184e+03 - 2.6316421e+03 3.3964092e+03 3.2049534e+03 - 2.5331145e+03 3.4837473e+03 3.1983239e+03 - 2.4351244e+03 3.5682489e+03 3.1904276e+03 - 2.3379777e+03 3.6497095e+03 3.1813766e+03 - 2.2419471e+03 3.7279670e+03 3.1712935e+03 - 2.1472691e+03 3.8029016e+03 3.1603086e+03 - 2.0541425e+03 3.8744334e+03 3.1485556e+03 - 1.9627283e+03 3.9425203e+03 3.1361690e+03 - 1.8731508e+03 4.0071537e+03 3.1232813e+03 - 1.7854995e+03 4.0683548e+03 3.1100204e+03 - 1.6998320e+03 4.1261698e+03 3.0965084e+03 - 1.6161770e+03 4.1806654e+03 3.0828598e+03 - 1.5345378e+03 4.2319248e+03 3.0691807e+03 - 1.4548961e+03 4.2800437e+03 3.0555686e+03 - 1.3772146e+03 4.3251264e+03 3.0421119e+03 - 1.3014411e+03 4.3672829e+03 3.0288902e+03 - 1.2275109e+03 4.4066261e+03 3.0159745e+03 - 1.1553494e+03 4.4432695e+03 3.0034276e+03 - 1.0848746e+03 4.4773253e+03 2.9913049e+03 - 1.0159993e+03 4.5089030e+03 2.9796545e+03 - 9.4863206e+02 4.5381080e+03 2.9685184e+03 - 8.8267927e+02 4.5650411e+03 2.9579327e+03 - 8.1804594e+02 4.5897974e+03 2.9479284e+03 - 7.5463664e+02 4.6124662e+03 2.9385318e+03 - 6.9235621e+02 4.6331303e+03 2.9297655e+03 - 6.3111023e+02 4.6518664e+03 2.9216483e+03 - 5.7080541e+02 4.6687443e+03 2.9141960e+03 - 5.1134979e+02 4.6838277e+03 2.9074220e+03 - 4.5265291e+02 4.6971734e+03 2.9013371e+03 - 3.9462580e+02 4.7088321e+03 2.8959504e+03 - 3.3718099e+02 4.7188481e+03 2.8912692e+03 - 2.8023242e+02 4.7272595e+03 2.8872993e+03 - 2.2369529e+02 4.7340982e+03 2.8840454e+03 - 1.6748592e+02 4.7393904e+03 2.8815111e+03 - 1.1152155e+02 4.7431563e+03 2.8796991e+03 - 5.5720100e+01 4.7454100e+03 2.8786112e+03 - -4.8134273e-09 4.7461604e+03 2.8782484e+03 - -5.5720100e+01 4.7454100e+03 2.8786112e+03 - -1.1152155e+02 4.7431563e+03 2.8796991e+03 - -1.6748592e+02 4.7393904e+03 2.8815111e+03 - -2.2369529e+02 4.7340982e+03 2.8840454e+03 - -2.8023242e+02 4.7272595e+03 2.8872993e+03 - -3.3718099e+02 4.7188481e+03 2.8912692e+03 - -3.9462580e+02 4.7088321e+03 2.8959504e+03 - -4.5265291e+02 4.6971734e+03 2.9013371e+03 - -5.1134979e+02 4.6838277e+03 2.9074220e+03 - -5.7080541e+02 4.6687443e+03 2.9141960e+03 - -6.3111023e+02 4.6518664e+03 2.9216483e+03 - -6.9235621e+02 4.6331303e+03 2.9297655e+03 - -7.5463664e+02 4.6124662e+03 2.9385318e+03 - -8.1804594e+02 4.5897974e+03 2.9479284e+03 - -8.8267927e+02 4.5650411e+03 2.9579327e+03 - -9.4863206e+02 4.5381080e+03 2.9685184e+03 - -1.0159993e+03 4.5089030e+03 2.9796545e+03 - -1.0848746e+03 4.4773253e+03 2.9913049e+03 - -1.1553494e+03 4.4432695e+03 3.0034276e+03 - -1.2275109e+03 4.4066261e+03 3.0159745e+03 - -1.3014411e+03 4.3672829e+03 3.0288902e+03 - -1.3772146e+03 4.3251264e+03 3.0421119e+03 - -1.4548961e+03 4.2800437e+03 3.0555686e+03 - -1.5345378e+03 4.2319248e+03 3.0691807e+03 - -1.6161770e+03 4.1806654e+03 3.0828598e+03 - -1.6998320e+03 4.1261698e+03 3.0965084e+03 - -1.7854995e+03 4.0683548e+03 3.1100204e+03 - -1.8731508e+03 4.0071537e+03 3.1232813e+03 - -1.9627283e+03 3.9425203e+03 3.1361690e+03 - -2.0541425e+03 3.8744334e+03 3.1485556e+03 - -2.1472691e+03 3.8029016e+03 3.1603086e+03 - -2.2419471e+03 3.7279670e+03 3.1712935e+03 - -2.3379777e+03 3.6497095e+03 3.1813766e+03 - -2.4351244e+03 3.5682489e+03 3.1904276e+03 - -2.5331145e+03 3.4837473e+03 3.1983239e+03 - -2.6316421e+03 3.3964092e+03 3.2049534e+03 - -2.7303730e+03 3.3064804e+03 3.2102184e+03 - -2.8289503e+03 3.2142448e+03 3.2140389e+03 - -2.9270024e+03 3.1200200e+03 3.2163556e+03 - -3.0241510e+03 3.0241510e+03 3.2171320e+03 - -3.1200200e+03 2.9270024e+03 3.2163556e+03 - -3.2142448e+03 2.8289503e+03 3.2140389e+03 - -3.3064804e+03 2.7303730e+03 3.2102184e+03 - -3.3964092e+03 2.6316421e+03 3.2049534e+03 - -3.4837473e+03 2.5331145e+03 3.1983239e+03 - -3.5682489e+03 2.4351244e+03 3.1904276e+03 - -3.6497095e+03 2.3379777e+03 3.1813766e+03 - -3.7279670e+03 2.2419471e+03 3.1712935e+03 - -3.8029016e+03 2.1472691e+03 3.1603086e+03 - -3.8744334e+03 2.0541425e+03 3.1485556e+03 - -3.9425203e+03 1.9627283e+03 3.1361690e+03 - -4.0071537e+03 1.8731508e+03 3.1232813e+03 - -4.0683548e+03 1.7854995e+03 3.1100204e+03 - -4.1261698e+03 1.6998320e+03 3.0965084e+03 - -4.1806654e+03 1.6161770e+03 3.0828598e+03 - -4.2319248e+03 1.5345378e+03 3.0691807e+03 - -4.2800437e+03 1.4548961e+03 3.0555686e+03 - -4.3251264e+03 1.3772146e+03 3.0421119e+03 - -4.3672829e+03 1.3014411e+03 3.0288902e+03 - -4.4066261e+03 1.2275109e+03 3.0159745e+03 - -4.4432695e+03 1.1553494e+03 3.0034276e+03 - -4.4773253e+03 1.0848746e+03 2.9913049e+03 - -4.5089030e+03 1.0159993e+03 2.9796545e+03 - -4.5381080e+03 9.4863206e+02 2.9685184e+03 - -4.5650411e+03 8.8267927e+02 2.9579327e+03 - -4.5897974e+03 8.1804594e+02 2.9479284e+03 - -4.6124662e+03 7.5463664e+02 2.9385318e+03 - -4.6331303e+03 6.9235621e+02 2.9297655e+03 - -4.6518664e+03 6.3111023e+02 2.9216483e+03 - -4.6687443e+03 5.7080541e+02 2.9141960e+03 - -4.6838277e+03 5.1134979e+02 2.9074220e+03 - -4.6971734e+03 4.5265291e+02 2.9013371e+03 - -4.7088321e+03 3.9462580e+02 2.8959504e+03 - -4.7188481e+03 3.3718099e+02 2.8912692e+03 - -4.7272595e+03 2.8023242e+02 2.8872993e+03 - -4.7340982e+03 2.2369529e+02 2.8840454e+03 - -4.7393904e+03 1.6748592e+02 2.8815111e+03 - -4.7431563e+03 1.1152155e+02 2.8796991e+03 - -4.7454100e+03 5.5720100e+01 2.8786112e+03 - -4.7461604e+03 0.0000000e+00 2.8782484e+03 - -4.7454100e+03 -5.5720100e+01 2.8786112e+03 - -4.7431563e+03 -1.1152155e+02 2.8796991e+03 - -4.7393904e+03 -1.6748592e+02 2.8815111e+03 - -4.7340982e+03 -2.2369529e+02 2.8840454e+03 - -4.7272595e+03 -2.8023242e+02 2.8872993e+03 - -4.7188481e+03 -3.3718099e+02 2.8912692e+03 - -4.7088321e+03 -3.9462580e+02 2.8959504e+03 - -4.6971734e+03 -4.5265291e+02 2.9013371e+03 - -4.6838277e+03 -5.1134979e+02 2.9074220e+03 - -4.6687443e+03 -5.7080541e+02 2.9141960e+03 - -4.6518664e+03 -6.3111023e+02 2.9216483e+03 - -4.6331303e+03 -6.9235621e+02 2.9297655e+03 - -4.6124662e+03 -7.5463664e+02 2.9385318e+03 - -4.5897974e+03 -8.1804594e+02 2.9479284e+03 - -4.5650411e+03 -8.8267927e+02 2.9579327e+03 - -4.5381080e+03 -9.4863206e+02 2.9685184e+03 - -4.5089030e+03 -1.0159993e+03 2.9796545e+03 - -4.4773253e+03 -1.0848746e+03 2.9913049e+03 - -4.4432695e+03 -1.1553494e+03 3.0034276e+03 - -4.4066261e+03 -1.2275109e+03 3.0159745e+03 - -4.3672829e+03 -1.3014411e+03 3.0288902e+03 - -4.3251264e+03 -1.3772146e+03 3.0421119e+03 - -4.2800437e+03 -1.4548961e+03 3.0555686e+03 - -4.2319248e+03 -1.5345378e+03 3.0691807e+03 - -4.1806654e+03 -1.6161770e+03 3.0828598e+03 - -4.1261698e+03 -1.6998320e+03 3.0965084e+03 - -4.0683548e+03 -1.7854995e+03 3.1100204e+03 - -4.0071537e+03 -1.8731508e+03 3.1232813e+03 - -3.9425203e+03 -1.9627283e+03 3.1361690e+03 - -3.8744334e+03 -2.0541425e+03 3.1485556e+03 - -3.8029016e+03 -2.1472691e+03 3.1603086e+03 - -3.7279670e+03 -2.2419471e+03 3.1712935e+03 - -3.6497095e+03 -2.3379777e+03 3.1813766e+03 - -3.5682489e+03 -2.4351244e+03 3.1904276e+03 - -3.4837473e+03 -2.5331145e+03 3.1983239e+03 - -3.3964092e+03 -2.6316421e+03 3.2049534e+03 - -3.3064804e+03 -2.7303730e+03 3.2102184e+03 - -3.2142448e+03 -2.8289503e+03 3.2140389e+03 - -3.1200200e+03 -2.9270024e+03 3.2163556e+03 - -3.0241510e+03 -3.0241510e+03 3.2171320e+03 - -2.9270024e+03 -3.1200200e+03 3.2163556e+03 - -2.8289503e+03 -3.2142448e+03 3.2140389e+03 - -2.7303730e+03 -3.3064804e+03 3.2102184e+03 - -2.6316421e+03 -3.3964092e+03 3.2049534e+03 - -2.5331145e+03 -3.4837473e+03 3.1983239e+03 - -2.4351244e+03 -3.5682489e+03 3.1904276e+03 - -2.3379777e+03 -3.6497095e+03 3.1813766e+03 - -2.2419471e+03 -3.7279670e+03 3.1712935e+03 - -2.1472691e+03 -3.8029016e+03 3.1603086e+03 - -2.0541425e+03 -3.8744334e+03 3.1485556e+03 - -1.9627283e+03 -3.9425203e+03 3.1361690e+03 - -1.8731508e+03 -4.0071537e+03 3.1232813e+03 - -1.7854995e+03 -4.0683548e+03 3.1100204e+03 - -1.6998320e+03 -4.1261698e+03 3.0965084e+03 - -1.6161770e+03 -4.1806654e+03 3.0828598e+03 - -1.5345378e+03 -4.2319248e+03 3.0691807e+03 - -1.4548961e+03 -4.2800437e+03 3.0555686e+03 - -1.3772146e+03 -4.3251264e+03 3.0421119e+03 - -1.3014411e+03 -4.3672829e+03 3.0288902e+03 - -1.2275109e+03 -4.4066261e+03 3.0159745e+03 - -1.1553494e+03 -4.4432695e+03 3.0034276e+03 - -1.0848746e+03 -4.4773253e+03 2.9913049e+03 - -1.0159993e+03 -4.5089030e+03 2.9796545e+03 - -9.4863206e+02 -4.5381080e+03 2.9685184e+03 - -8.8267927e+02 -4.5650411e+03 2.9579327e+03 - -8.1804594e+02 -4.5897974e+03 2.9479284e+03 - -7.5463664e+02 -4.6124662e+03 2.9385318e+03 - -6.9235621e+02 -4.6331303e+03 2.9297655e+03 - -6.3111023e+02 -4.6518664e+03 2.9216483e+03 - -5.7080541e+02 -4.6687443e+03 2.9141960e+03 - -5.1134979e+02 -4.6838277e+03 2.9074220e+03 - -4.5265291e+02 -4.6971734e+03 2.9013371e+03 - -3.9462580e+02 -4.7088321e+03 2.8959504e+03 - -3.3718099e+02 -4.7188481e+03 2.8912692e+03 - -2.8023242e+02 -4.7272595e+03 2.8872993e+03 - -2.2369529e+02 -4.7340982e+03 2.8840454e+03 - -1.6748592e+02 -4.7393904e+03 2.8815111e+03 - -1.1152155e+02 -4.7431563e+03 2.8796991e+03 - -5.5720100e+01 -4.7454100e+03 2.8786112e+03 - 4.8134273e-09 -4.7461604e+03 2.8782484e+03 - 5.5720100e+01 -4.7454100e+03 2.8786112e+03 - 1.1152155e+02 -4.7431563e+03 2.8796991e+03 - 1.6748592e+02 -4.7393904e+03 2.8815111e+03 - 2.2369529e+02 -4.7340982e+03 2.8840454e+03 - 2.8023242e+02 -4.7272595e+03 2.8872993e+03 - 3.3718099e+02 -4.7188481e+03 2.8912692e+03 - 3.9462580e+02 -4.7088321e+03 2.8959504e+03 - 4.5265291e+02 -4.6971734e+03 2.9013371e+03 - 5.1134979e+02 -4.6838277e+03 2.9074220e+03 - 5.7080541e+02 -4.6687443e+03 2.9141960e+03 - 6.3111023e+02 -4.6518664e+03 2.9216483e+03 - 6.9235621e+02 -4.6331303e+03 2.9297655e+03 - 7.5463664e+02 -4.6124662e+03 2.9385318e+03 - 8.1804594e+02 -4.5897974e+03 2.9479284e+03 - 8.8267927e+02 -4.5650411e+03 2.9579327e+03 - 9.4863206e+02 -4.5381080e+03 2.9685184e+03 - 1.0159993e+03 -4.5089030e+03 2.9796545e+03 - 1.0848746e+03 -4.4773253e+03 2.9913049e+03 - 1.1553494e+03 -4.4432695e+03 3.0034276e+03 - 1.2275109e+03 -4.4066261e+03 3.0159745e+03 - 1.3014411e+03 -4.3672829e+03 3.0288902e+03 - 1.3772146e+03 -4.3251264e+03 3.0421119e+03 - 1.4548961e+03 -4.2800437e+03 3.0555686e+03 - 1.5345378e+03 -4.2319248e+03 3.0691807e+03 - 1.6161770e+03 -4.1806654e+03 3.0828598e+03 - 1.6998320e+03 -4.1261698e+03 3.0965084e+03 - 1.7854995e+03 -4.0683548e+03 3.1100204e+03 - 1.8731508e+03 -4.0071537e+03 3.1232813e+03 - 1.9627283e+03 -3.9425203e+03 3.1361690e+03 - 2.0541425e+03 -3.8744334e+03 3.1485556e+03 - 2.1472691e+03 -3.8029016e+03 3.1603086e+03 - 2.2419471e+03 -3.7279670e+03 3.1712935e+03 - 2.3379777e+03 -3.6497095e+03 3.1813766e+03 - 2.4351244e+03 -3.5682489e+03 3.1904276e+03 - 2.5331145e+03 -3.4837473e+03 3.1983239e+03 - 2.6316421e+03 -3.3964092e+03 3.2049534e+03 - 2.7303730e+03 -3.3064804e+03 3.2102184e+03 - 2.8289503e+03 -3.2142448e+03 3.2140389e+03 - 2.9270024e+03 -3.1200200e+03 3.2163556e+03 - 3.0241510e+03 -3.0241510e+03 3.2171320e+03 - 3.1200200e+03 -2.9270024e+03 3.2163556e+03 - 3.2142448e+03 -2.8289503e+03 3.2140389e+03 - 3.3064804e+03 -2.7303730e+03 3.2102184e+03 - 3.3964092e+03 -2.6316421e+03 3.2049534e+03 - 3.4837473e+03 -2.5331145e+03 3.1983239e+03 - 3.5682489e+03 -2.4351244e+03 3.1904276e+03 - 3.6497095e+03 -2.3379777e+03 3.1813766e+03 - 3.7279670e+03 -2.2419471e+03 3.1712935e+03 - 3.8029016e+03 -2.1472691e+03 3.1603086e+03 - 3.8744334e+03 -2.0541425e+03 3.1485556e+03 - 3.9425203e+03 -1.9627283e+03 3.1361690e+03 - 4.0071537e+03 -1.8731508e+03 3.1232813e+03 - 4.0683548e+03 -1.7854995e+03 3.1100204e+03 - 4.1261698e+03 -1.6998320e+03 3.0965084e+03 - 4.1806654e+03 -1.6161770e+03 3.0828598e+03 - 4.2319248e+03 -1.5345378e+03 3.0691807e+03 - 4.2800437e+03 -1.4548961e+03 3.0555686e+03 - 4.3251264e+03 -1.3772146e+03 3.0421119e+03 - 4.3672829e+03 -1.3014411e+03 3.0288902e+03 - 4.4066261e+03 -1.2275109e+03 3.0159745e+03 - 4.4432695e+03 -1.1553494e+03 3.0034276e+03 - 4.4773253e+03 -1.0848746e+03 2.9913049e+03 - 4.5089030e+03 -1.0159993e+03 2.9796545e+03 - 4.5381080e+03 -9.4863206e+02 2.9685184e+03 - 4.5650411e+03 -8.8267927e+02 2.9579327e+03 - 4.5897974e+03 -8.1804594e+02 2.9479284e+03 - 4.6124662e+03 -7.5463664e+02 2.9385318e+03 - 4.6331303e+03 -6.9235621e+02 2.9297655e+03 - 4.6518664e+03 -6.3111023e+02 2.9216483e+03 - 4.6687443e+03 -5.7080541e+02 2.9141960e+03 - 4.6838277e+03 -5.1134979e+02 2.9074220e+03 - 4.6971734e+03 -4.5265291e+02 2.9013371e+03 - 4.7088321e+03 -3.9462580e+02 2.8959504e+03 - 4.7188481e+03 -3.3718099e+02 2.8912692e+03 - 4.7272595e+03 -2.8023242e+02 2.8872993e+03 - 4.7340982e+03 -2.2369529e+02 2.8840454e+03 - 4.7393904e+03 -1.6748592e+02 2.8815111e+03 - 4.7431563e+03 -1.1152155e+02 2.8796991e+03 - 4.7454100e+03 -5.5720100e+01 2.8786112e+03 - 4.7461604e+03 9.6268545e-09 2.8782484e+03 - 4.7838128e+03 4.8134273e-09 2.8094324e+03 - 4.7830694e+03 5.5505655e+01 2.8098036e+03 - 4.7808360e+03 1.1109378e+02 2.8109170e+03 - 4.7771041e+03 1.6684710e+02 2.8127715e+03 - 4.7718589e+03 2.2284889e+02 2.8153657e+03 - 4.7650798e+03 2.7918322e+02 2.8186972e+03 - 4.7567401e+03 3.3593517e+02 2.8227630e+03 - 4.7468070e+03 3.9319110e+02 2.8275588e+03 - 4.7352415e+03 4.5103881e+02 2.8330794e+03 - 4.7219980e+03 5.0956773e+02 2.8393183e+03 - 4.7070245e+03 5.6886902e+02 2.8462673e+03 - 4.6902623e+03 6.2903566e+02 2.8539162e+03 - 4.6716458e+03 6.9016243e+02 2.8622527e+03 - 4.6511027e+03 7.5234580e+02 2.8712620e+03 - 4.6285535e+03 8.1568380e+02 2.8809260e+03 - 4.6039121e+03 8.8027564e+02 2.8912233e+03 - 4.5770854e+03 9.4622126e+02 2.9021284e+03 - 4.5479739e+03 1.0136207e+03 2.9136109e+03 - 4.5164719e+03 1.0825731e+03 2.9256354e+03 - 4.4824681e+03 1.1531759e+03 2.9381605e+03 - 4.4458469e+03 1.2255230e+03 2.9511379e+03 - 4.4064888e+03 1.2997035e+03 2.9645123e+03 - 4.3642724e+03 1.3757992e+03 2.9782200e+03 - 4.3190764e+03 1.4538828e+03 2.9921887e+03 - 4.2707815e+03 1.5340143e+03 3.0063371e+03 - 4.2192738e+03 1.6162388e+03 3.0205740e+03 - 4.1644474e+03 1.7005822e+03 3.0347984e+03 - 4.1062091e+03 1.7870480e+03 3.0488998e+03 - 4.0444819e+03 1.8756134e+03 3.0627581e+03 - 3.9792104e+03 1.9662253e+03 3.0762449e+03 - 3.9103650e+03 2.0587967e+03 3.0892248e+03 - 3.8379473e+03 2.1532038e+03 3.1015568e+03 - 3.7619947e+03 2.2492831e+03 3.1130974e+03 - 3.6825846e+03 2.3468303e+03 3.1237029e+03 - 3.5998378e+03 2.4456002e+03 3.1332333e+03 - 3.5139205e+03 2.5453079e+03 3.1415558e+03 - 3.4250453e+03 2.6456319e+03 3.1485489e+03 - 3.3334694e+03 2.7462193e+03 3.1541065e+03 - 3.2394923e+03 2.8466923e+03 3.1581416e+03 - 3.1434501e+03 2.9466562e+03 3.1605893e+03 - 3.0457088e+03 3.0457088e+03 3.1614097e+03 - 2.9466562e+03 3.1434501e+03 3.1605893e+03 - 2.8466923e+03 3.2394923e+03 3.1581416e+03 - 2.7462193e+03 3.3334694e+03 3.1541065e+03 - 2.6456319e+03 3.4250453e+03 3.1485489e+03 - 2.5453079e+03 3.5139205e+03 3.1415558e+03 - 2.4456002e+03 3.5998378e+03 3.1332333e+03 - 2.3468303e+03 3.6825846e+03 3.1237029e+03 - 2.2492831e+03 3.7619947e+03 3.1130974e+03 - 2.1532038e+03 3.8379473e+03 3.1015568e+03 - 2.0587967e+03 3.9103650e+03 3.0892248e+03 - 1.9662253e+03 3.9792104e+03 3.0762449e+03 - 1.8756134e+03 4.0444819e+03 3.0627581e+03 - 1.7870480e+03 4.1062091e+03 3.0488998e+03 - 1.7005822e+03 4.1644474e+03 3.0347984e+03 - 1.6162388e+03 4.2192738e+03 3.0205740e+03 - 1.5340143e+03 4.2707815e+03 3.0063371e+03 - 1.4538828e+03 4.3190764e+03 2.9921887e+03 - 1.3757992e+03 4.3642724e+03 2.9782200e+03 - 1.2997035e+03 4.4064888e+03 2.9645123e+03 - 1.2255230e+03 4.4458469e+03 2.9511379e+03 - 1.1531759e+03 4.4824681e+03 2.9381605e+03 - 1.0825731e+03 4.5164719e+03 2.9256354e+03 - 1.0136207e+03 4.5479739e+03 2.9136109e+03 - 9.4622126e+02 4.5770854e+03 2.9021284e+03 - 8.8027564e+02 4.6039121e+03 2.8912233e+03 - 8.1568380e+02 4.6285535e+03 2.8809260e+03 - 7.5234580e+02 4.6511027e+03 2.8712620e+03 - 6.9016243e+02 4.6716458e+03 2.8622527e+03 - 6.2903566e+02 4.6902623e+03 2.8539162e+03 - 5.6886902e+02 4.7070245e+03 2.8462673e+03 - 5.0956773e+02 4.7219980e+03 2.8393183e+03 - 4.5103881e+02 4.7352415e+03 2.8330794e+03 - 3.9319110e+02 4.7468070e+03 2.8275588e+03 - 3.3593517e+02 4.7567401e+03 2.8227630e+03 - 2.7918322e+02 4.7650798e+03 2.8186972e+03 - 2.2284889e+02 4.7718589e+03 2.8153657e+03 - 1.6684710e+02 4.7771041e+03 2.8127715e+03 - 1.1109378e+02 4.7808360e+03 2.8109170e+03 - 5.5505655e+01 4.7830694e+03 2.8098036e+03 - -4.8134273e-09 4.7838128e+03 2.8094324e+03 - -5.5505655e+01 4.7830694e+03 2.8098036e+03 - -1.1109378e+02 4.7808360e+03 2.8109170e+03 - -1.6684710e+02 4.7771041e+03 2.8127715e+03 - -2.2284889e+02 4.7718589e+03 2.8153657e+03 - -2.7918322e+02 4.7650798e+03 2.8186972e+03 - -3.3593517e+02 4.7567401e+03 2.8227630e+03 - -3.9319110e+02 4.7468070e+03 2.8275588e+03 - -4.5103881e+02 4.7352415e+03 2.8330794e+03 - -5.0956773e+02 4.7219980e+03 2.8393183e+03 - -5.6886902e+02 4.7070245e+03 2.8462673e+03 - -6.2903566e+02 4.6902623e+03 2.8539162e+03 - -6.9016243e+02 4.6716458e+03 2.8622527e+03 - -7.5234580e+02 4.6511027e+03 2.8712620e+03 - -8.1568380e+02 4.6285535e+03 2.8809260e+03 - -8.8027564e+02 4.6039121e+03 2.8912233e+03 - -9.4622126e+02 4.5770854e+03 2.9021284e+03 - -1.0136207e+03 4.5479739e+03 2.9136109e+03 - -1.0825731e+03 4.5164719e+03 2.9256354e+03 - -1.1531759e+03 4.4824681e+03 2.9381605e+03 - -1.2255230e+03 4.4458469e+03 2.9511379e+03 - -1.2997035e+03 4.4064888e+03 2.9645123e+03 - -1.3757992e+03 4.3642724e+03 2.9782200e+03 - -1.4538828e+03 4.3190764e+03 2.9921887e+03 - -1.5340143e+03 4.2707815e+03 3.0063371e+03 - -1.6162388e+03 4.2192738e+03 3.0205740e+03 - -1.7005822e+03 4.1644474e+03 3.0347984e+03 - -1.7870480e+03 4.1062091e+03 3.0488998e+03 - -1.8756134e+03 4.0444819e+03 3.0627581e+03 - -1.9662253e+03 3.9792104e+03 3.0762449e+03 - -2.0587967e+03 3.9103650e+03 3.0892248e+03 - -2.1532038e+03 3.8379473e+03 3.1015568e+03 - -2.2492831e+03 3.7619947e+03 3.1130974e+03 - -2.3468303e+03 3.6825846e+03 3.1237029e+03 - -2.4456002e+03 3.5998378e+03 3.1332333e+03 - -2.5453079e+03 3.5139205e+03 3.1415558e+03 - -2.6456319e+03 3.4250453e+03 3.1485489e+03 - -2.7462193e+03 3.3334694e+03 3.1541065e+03 - -2.8466923e+03 3.2394923e+03 3.1581416e+03 - -2.9466562e+03 3.1434501e+03 3.1605893e+03 - -3.0457088e+03 3.0457088e+03 3.1614097e+03 - -3.1434501e+03 2.9466562e+03 3.1605893e+03 - -3.2394923e+03 2.8466923e+03 3.1581416e+03 - -3.3334694e+03 2.7462193e+03 3.1541065e+03 - -3.4250453e+03 2.6456319e+03 3.1485489e+03 - -3.5139205e+03 2.5453079e+03 3.1415558e+03 - -3.5998378e+03 2.4456002e+03 3.1332333e+03 - -3.6825846e+03 2.3468303e+03 3.1237029e+03 - -3.7619947e+03 2.2492831e+03 3.1130974e+03 - -3.8379473e+03 2.1532038e+03 3.1015568e+03 - -3.9103650e+03 2.0587967e+03 3.0892248e+03 - -3.9792104e+03 1.9662253e+03 3.0762449e+03 - -4.0444819e+03 1.8756134e+03 3.0627581e+03 - -4.1062091e+03 1.7870480e+03 3.0488998e+03 - -4.1644474e+03 1.7005822e+03 3.0347984e+03 - -4.2192738e+03 1.6162388e+03 3.0205740e+03 - -4.2707815e+03 1.5340143e+03 3.0063371e+03 - -4.3190764e+03 1.4538828e+03 2.9921887e+03 - -4.3642724e+03 1.3757992e+03 2.9782200e+03 - -4.4064888e+03 1.2997035e+03 2.9645123e+03 - -4.4458469e+03 1.2255230e+03 2.9511379e+03 - -4.4824681e+03 1.1531759e+03 2.9381605e+03 - -4.5164719e+03 1.0825731e+03 2.9256354e+03 - -4.5479739e+03 1.0136207e+03 2.9136109e+03 - -4.5770854e+03 9.4622126e+02 2.9021284e+03 - -4.6039121e+03 8.8027564e+02 2.8912233e+03 - -4.6285535e+03 8.1568380e+02 2.8809260e+03 - -4.6511027e+03 7.5234580e+02 2.8712620e+03 - -4.6716458e+03 6.9016243e+02 2.8622527e+03 - -4.6902623e+03 6.2903566e+02 2.8539162e+03 - -4.7070245e+03 5.6886902e+02 2.8462673e+03 - -4.7219980e+03 5.0956773e+02 2.8393183e+03 - -4.7352415e+03 4.5103881e+02 2.8330794e+03 - -4.7468070e+03 3.9319110e+02 2.8275588e+03 - -4.7567401e+03 3.3593517e+02 2.8227630e+03 - -4.7650798e+03 2.7918322e+02 2.8186972e+03 - -4.7718589e+03 2.2284889e+02 2.8153657e+03 - -4.7771041e+03 1.6684710e+02 2.8127715e+03 - -4.7808360e+03 1.1109378e+02 2.8109170e+03 - -4.7830694e+03 5.5505655e+01 2.8098036e+03 - -4.7838128e+03 4.8134273e-09 2.8094324e+03 - -4.7830694e+03 -5.5505655e+01 2.8098036e+03 - -4.7808360e+03 -1.1109378e+02 2.8109170e+03 - -4.7771041e+03 -1.6684710e+02 2.8127715e+03 - -4.7718589e+03 -2.2284889e+02 2.8153657e+03 - -4.7650798e+03 -2.7918322e+02 2.8186972e+03 - -4.7567401e+03 -3.3593517e+02 2.8227630e+03 - -4.7468070e+03 -3.9319110e+02 2.8275588e+03 - -4.7352415e+03 -4.5103881e+02 2.8330794e+03 - -4.7219980e+03 -5.0956773e+02 2.8393183e+03 - -4.7070245e+03 -5.6886902e+02 2.8462673e+03 - -4.6902623e+03 -6.2903566e+02 2.8539162e+03 - -4.6716458e+03 -6.9016243e+02 2.8622527e+03 - -4.6511027e+03 -7.5234580e+02 2.8712620e+03 - -4.6285535e+03 -8.1568380e+02 2.8809260e+03 - -4.6039121e+03 -8.8027564e+02 2.8912233e+03 - -4.5770854e+03 -9.4622126e+02 2.9021284e+03 - -4.5479739e+03 -1.0136207e+03 2.9136109e+03 - -4.5164719e+03 -1.0825731e+03 2.9256354e+03 - -4.4824681e+03 -1.1531759e+03 2.9381605e+03 - -4.4458469e+03 -1.2255230e+03 2.9511379e+03 - -4.4064888e+03 -1.2997035e+03 2.9645123e+03 - -4.3642724e+03 -1.3757992e+03 2.9782200e+03 - -4.3190764e+03 -1.4538828e+03 2.9921887e+03 - -4.2707815e+03 -1.5340143e+03 3.0063371e+03 - -4.2192738e+03 -1.6162388e+03 3.0205740e+03 - -4.1644474e+03 -1.7005822e+03 3.0347984e+03 - -4.1062091e+03 -1.7870480e+03 3.0488998e+03 - -4.0444819e+03 -1.8756134e+03 3.0627581e+03 - -3.9792104e+03 -1.9662253e+03 3.0762449e+03 - -3.9103650e+03 -2.0587967e+03 3.0892248e+03 - -3.8379473e+03 -2.1532038e+03 3.1015568e+03 - -3.7619947e+03 -2.2492831e+03 3.1130974e+03 - -3.6825846e+03 -2.3468303e+03 3.1237029e+03 - -3.5998378e+03 -2.4456002e+03 3.1332333e+03 - -3.5139205e+03 -2.5453079e+03 3.1415558e+03 - -3.4250453e+03 -2.6456319e+03 3.1485489e+03 - -3.3334694e+03 -2.7462193e+03 3.1541065e+03 - -3.2394923e+03 -2.8466923e+03 3.1581416e+03 - -3.1434501e+03 -2.9466562e+03 3.1605893e+03 - -3.0457088e+03 -3.0457088e+03 3.1614097e+03 - -2.9466562e+03 -3.1434501e+03 3.1605893e+03 - -2.8466923e+03 -3.2394923e+03 3.1581416e+03 - -2.7462193e+03 -3.3334694e+03 3.1541065e+03 - -2.6456319e+03 -3.4250453e+03 3.1485489e+03 - -2.5453079e+03 -3.5139205e+03 3.1415558e+03 - -2.4456002e+03 -3.5998378e+03 3.1332333e+03 - -2.3468303e+03 -3.6825846e+03 3.1237029e+03 - -2.2492831e+03 -3.7619947e+03 3.1130974e+03 - -2.1532038e+03 -3.8379473e+03 3.1015568e+03 - -2.0587967e+03 -3.9103650e+03 3.0892248e+03 - -1.9662253e+03 -3.9792104e+03 3.0762449e+03 - -1.8756134e+03 -4.0444819e+03 3.0627581e+03 - -1.7870480e+03 -4.1062091e+03 3.0488998e+03 - -1.7005822e+03 -4.1644474e+03 3.0347984e+03 - -1.6162388e+03 -4.2192738e+03 3.0205740e+03 - -1.5340143e+03 -4.2707815e+03 3.0063371e+03 - -1.4538828e+03 -4.3190764e+03 2.9921887e+03 - -1.3757992e+03 -4.3642724e+03 2.9782200e+03 - -1.2997035e+03 -4.4064888e+03 2.9645123e+03 - -1.2255230e+03 -4.4458469e+03 2.9511379e+03 - -1.1531759e+03 -4.4824681e+03 2.9381605e+03 - -1.0825731e+03 -4.5164719e+03 2.9256354e+03 - -1.0136207e+03 -4.5479739e+03 2.9136109e+03 - -9.4622126e+02 -4.5770854e+03 2.9021284e+03 - -8.8027564e+02 -4.6039121e+03 2.8912233e+03 - -8.1568380e+02 -4.6285535e+03 2.8809260e+03 - -7.5234580e+02 -4.6511027e+03 2.8712620e+03 - -6.9016243e+02 -4.6716458e+03 2.8622527e+03 - -6.2903566e+02 -4.6902623e+03 2.8539162e+03 - -5.6886902e+02 -4.7070245e+03 2.8462673e+03 - -5.0956773e+02 -4.7219980e+03 2.8393183e+03 - -4.5103881e+02 -4.7352415e+03 2.8330794e+03 - -3.9319110e+02 -4.7468070e+03 2.8275588e+03 - -3.3593517e+02 -4.7567401e+03 2.8227630e+03 - -2.7918322e+02 -4.7650798e+03 2.8186972e+03 - -2.2284889e+02 -4.7718589e+03 2.8153657e+03 - -1.6684710e+02 -4.7771041e+03 2.8127715e+03 - -1.1109378e+02 -4.7808360e+03 2.8109170e+03 - -5.5505655e+01 -4.7830694e+03 2.8098036e+03 - 1.4440282e-08 -4.7838128e+03 2.8094324e+03 - 5.5505655e+01 -4.7830694e+03 2.8098036e+03 - 1.1109378e+02 -4.7808360e+03 2.8109170e+03 - 1.6684710e+02 -4.7771041e+03 2.8127715e+03 - 2.2284889e+02 -4.7718589e+03 2.8153657e+03 - 2.7918322e+02 -4.7650798e+03 2.8186972e+03 - 3.3593517e+02 -4.7567401e+03 2.8227630e+03 - 3.9319110e+02 -4.7468070e+03 2.8275588e+03 - 4.5103881e+02 -4.7352415e+03 2.8330794e+03 - 5.0956773e+02 -4.7219980e+03 2.8393183e+03 - 5.6886902e+02 -4.7070245e+03 2.8462673e+03 - 6.2903566e+02 -4.6902623e+03 2.8539162e+03 - 6.9016243e+02 -4.6716458e+03 2.8622527e+03 - 7.5234580e+02 -4.6511027e+03 2.8712620e+03 - 8.1568380e+02 -4.6285535e+03 2.8809260e+03 - 8.8027564e+02 -4.6039121e+03 2.8912233e+03 - 9.4622126e+02 -4.5770854e+03 2.9021284e+03 - 1.0136207e+03 -4.5479739e+03 2.9136109e+03 - 1.0825731e+03 -4.5164719e+03 2.9256354e+03 - 1.1531759e+03 -4.4824681e+03 2.9381605e+03 - 1.2255230e+03 -4.4458469e+03 2.9511379e+03 - 1.2997035e+03 -4.4064888e+03 2.9645123e+03 - 1.3757992e+03 -4.3642724e+03 2.9782200e+03 - 1.4538828e+03 -4.3190764e+03 2.9921887e+03 - 1.5340143e+03 -4.2707815e+03 3.0063371e+03 - 1.6162388e+03 -4.2192738e+03 3.0205740e+03 - 1.7005822e+03 -4.1644474e+03 3.0347984e+03 - 1.7870480e+03 -4.1062091e+03 3.0488998e+03 - 1.8756134e+03 -4.0444819e+03 3.0627581e+03 - 1.9662253e+03 -3.9792104e+03 3.0762449e+03 - 2.0587967e+03 -3.9103650e+03 3.0892248e+03 - 2.1532038e+03 -3.8379473e+03 3.1015568e+03 - 2.2492831e+03 -3.7619947e+03 3.1130974e+03 - 2.3468303e+03 -3.6825846e+03 3.1237029e+03 - 2.4456002e+03 -3.5998378e+03 3.1332333e+03 - 2.5453079e+03 -3.5139205e+03 3.1415558e+03 - 2.6456319e+03 -3.4250453e+03 3.1485489e+03 - 2.7462193e+03 -3.3334694e+03 3.1541065e+03 - 2.8466923e+03 -3.2394923e+03 3.1581416e+03 - 2.9466562e+03 -3.1434501e+03 3.1605893e+03 - 3.0457088e+03 -3.0457088e+03 3.1614097e+03 - 3.1434501e+03 -2.9466562e+03 3.1605893e+03 - 3.2394923e+03 -2.8466923e+03 3.1581416e+03 - 3.3334694e+03 -2.7462193e+03 3.1541065e+03 - 3.4250453e+03 -2.6456319e+03 3.1485489e+03 - 3.5139205e+03 -2.5453079e+03 3.1415558e+03 - 3.5998378e+03 -2.4456002e+03 3.1332333e+03 - 3.6825846e+03 -2.3468303e+03 3.1237029e+03 - 3.7619947e+03 -2.2492831e+03 3.1130974e+03 - 3.8379473e+03 -2.1532038e+03 3.1015568e+03 - 3.9103650e+03 -2.0587967e+03 3.0892248e+03 - 3.9792104e+03 -1.9662253e+03 3.0762449e+03 - 4.0444819e+03 -1.8756134e+03 3.0627581e+03 - 4.1062091e+03 -1.7870480e+03 3.0488998e+03 - 4.1644474e+03 -1.7005822e+03 3.0347984e+03 - 4.2192738e+03 -1.6162388e+03 3.0205740e+03 - 4.2707815e+03 -1.5340143e+03 3.0063371e+03 - 4.3190764e+03 -1.4538828e+03 2.9921887e+03 - 4.3642724e+03 -1.3757992e+03 2.9782200e+03 - 4.4064888e+03 -1.2997035e+03 2.9645123e+03 - 4.4458469e+03 -1.2255230e+03 2.9511379e+03 - 4.4824681e+03 -1.1531759e+03 2.9381605e+03 - 4.5164719e+03 -1.0825731e+03 2.9256354e+03 - 4.5479739e+03 -1.0136207e+03 2.9136109e+03 - 4.5770854e+03 -9.4622126e+02 2.9021284e+03 - 4.6039121e+03 -8.8027564e+02 2.8912233e+03 - 4.6285535e+03 -8.1568380e+02 2.8809260e+03 - 4.6511027e+03 -7.5234580e+02 2.8712620e+03 - 4.6716458e+03 -6.9016243e+02 2.8622527e+03 - 4.6902623e+03 -6.2903566e+02 2.8539162e+03 - 4.7070245e+03 -5.6886902e+02 2.8462673e+03 - 4.7219980e+03 -5.0956773e+02 2.8393183e+03 - 4.7352415e+03 -4.5103881e+02 2.8330794e+03 - 4.7468070e+03 -3.9319110e+02 2.8275588e+03 - 4.7567401e+03 -3.3593517e+02 2.8227630e+03 - 4.7650798e+03 -2.7918322e+02 2.8186972e+03 - 4.7718589e+03 -2.2284889e+02 2.8153657e+03 - 4.7771041e+03 -1.6684710e+02 2.8127715e+03 - 4.7808360e+03 -1.1109378e+02 2.8109170e+03 - 4.7830694e+03 -5.5505655e+01 2.8098036e+03 - 4.7838128e+03 -4.8134273e-09 2.8094324e+03 - 4.8210527e+03 4.8134273e-09 2.7380779e+03 - 4.8203167e+03 5.5282072e+01 2.7384570e+03 - 4.8181056e+03 1.1064764e+02 2.7395941e+03 - 4.8144106e+03 1.6618050e+02 2.7414885e+03 - 4.8092167e+03 2.2196505e+02 2.7441388e+03 - 4.8025027e+03 2.7808653e+02 2.7475432e+03 - 4.7942415e+03 3.3463138e+02 2.7516989e+03 - 4.7843995e+03 3.9168740e+02 2.7566025e+03 - 4.7729367e+03 4.4934407e+02 2.7622495e+03 - 4.7598064e+03 5.0769269e+02 2.7686340e+03 - 4.7449552e+03 5.6682656e+02 2.7757487e+03 - 4.7283227e+03 6.2684108e+02 2.7835845e+03 - 4.7098415e+03 6.8783380e+02 2.7921301e+03 - 4.6894366e+03 7.4990436e+02 2.8013716e+03 - 4.6670260e+03 8.1315437e+02 2.8112923e+03 - 4.6425202e+03 8.7768709e+02 2.8218716e+03 - 4.6158223e+03 9.4360701e+02 2.8330851e+03 - 4.5868285e+03 1.0110192e+03 2.8449036e+03 - 4.5554280e+03 1.0800287e+03 2.8572923e+03 - 4.5215039e+03 1.1507389e+03 2.8702105e+03 - 4.4849337e+03 1.2232506e+03 2.8836104e+03 - 4.4455909e+03 1.2976604e+03 2.8974365e+03 - 4.4033459e+03 1.3740578e+03 2.9116248e+03 - 4.3580684e+03 1.4525236e+03 2.9261020e+03 - 4.3096295e+03 1.5331265e+03 2.9407850e+03 - 4.2579050e+03 1.6159197e+03 2.9555802e+03 - 4.2027783e+03 1.7009376e+03 2.9703834e+03 - 4.1441452e+03 1.7881912e+03 2.9850794e+03 - 4.0819179e+03 1.8776643e+03 2.9995429e+03 - 4.0160304e+03 1.9693090e+03 3.0136388e+03 - 3.9464440e+03 2.0630418e+03 3.0272240e+03 - 3.8731524e+03 2.1587397e+03 3.0401489e+03 - 3.7961872e+03 2.2562371e+03 3.0522601e+03 - 3.7156229e+03 2.3553246e+03 3.0634039e+03 - 3.6315805e+03 2.4557480e+03 3.0734293e+03 - 3.5442303e+03 2.5572098e+03 3.0821931e+03 - 3.4537927e+03 2.6593721e+03 3.0895635e+03 - 3.3605374e+03 2.7618625e+03 3.0954253e+03 - 3.2647798e+03 2.8642806e+03 3.0996836e+03 - 3.1668757e+03 2.9662070e+03 3.1022677e+03 - 3.0672140e+03 3.0672140e+03 3.1031340e+03 - 2.9662070e+03 3.1668757e+03 3.1022677e+03 - 2.8642806e+03 3.2647798e+03 3.0996836e+03 - 2.7618625e+03 3.3605374e+03 3.0954253e+03 - 2.6593721e+03 3.4537927e+03 3.0895635e+03 - 2.5572098e+03 3.5442303e+03 3.0821931e+03 - 2.4557480e+03 3.6315805e+03 3.0734293e+03 - 2.3553246e+03 3.7156229e+03 3.0634039e+03 - 2.2562371e+03 3.7961872e+03 3.0522601e+03 - 2.1587397e+03 3.8731524e+03 3.0401489e+03 - 2.0630418e+03 3.9464440e+03 3.0272240e+03 - 1.9693090e+03 4.0160304e+03 3.0136388e+03 - 1.8776643e+03 4.0819179e+03 2.9995429e+03 - 1.7881912e+03 4.1441452e+03 2.9850794e+03 - 1.7009376e+03 4.2027783e+03 2.9703834e+03 - 1.6159197e+03 4.2579050e+03 2.9555802e+03 - 1.5331265e+03 4.3096295e+03 2.9407850e+03 - 1.4525236e+03 4.3580684e+03 2.9261020e+03 - 1.3740578e+03 4.4033459e+03 2.9116248e+03 - 1.2976604e+03 4.4455909e+03 2.8974365e+03 - 1.2232506e+03 4.4849337e+03 2.8836104e+03 - 1.1507389e+03 4.5215039e+03 2.8702105e+03 - 1.0800287e+03 4.5554280e+03 2.8572923e+03 - 1.0110192e+03 4.5868285e+03 2.8449036e+03 - 9.4360701e+02 4.6158223e+03 2.8330851e+03 - 8.7768709e+02 4.6425202e+03 2.8218716e+03 - 8.1315437e+02 4.6670260e+03 2.8112923e+03 - 7.4990436e+02 4.6894366e+03 2.8013716e+03 - 6.8783380e+02 4.7098415e+03 2.7921301e+03 - 6.2684108e+02 4.7283227e+03 2.7835845e+03 - 5.6682656e+02 4.7449552e+03 2.7757487e+03 - 5.0769269e+02 4.7598064e+03 2.7686340e+03 - 4.4934407e+02 4.7729367e+03 2.7622495e+03 - 3.9168740e+02 4.7843995e+03 2.7566025e+03 - 3.3463138e+02 4.7942415e+03 2.7516989e+03 - 2.7808653e+02 4.8025027e+03 2.7475432e+03 - 2.2196505e+02 4.8092167e+03 2.7441388e+03 - 1.6618050e+02 4.8144106e+03 2.7414885e+03 - 1.1064764e+02 4.8181056e+03 2.7395941e+03 - 5.5282072e+01 4.8203167e+03 2.7384570e+03 - 0.0000000e+00 4.8210527e+03 2.7380779e+03 - -5.5282072e+01 4.8203167e+03 2.7384570e+03 - -1.1064764e+02 4.8181056e+03 2.7395941e+03 - -1.6618050e+02 4.8144106e+03 2.7414885e+03 - -2.2196505e+02 4.8092167e+03 2.7441388e+03 - -2.7808653e+02 4.8025027e+03 2.7475432e+03 - -3.3463138e+02 4.7942415e+03 2.7516989e+03 - -3.9168740e+02 4.7843995e+03 2.7566025e+03 - -4.4934407e+02 4.7729367e+03 2.7622495e+03 - -5.0769269e+02 4.7598064e+03 2.7686340e+03 - -5.6682656e+02 4.7449552e+03 2.7757487e+03 - -6.2684108e+02 4.7283227e+03 2.7835845e+03 - -6.8783380e+02 4.7098415e+03 2.7921301e+03 - -7.4990436e+02 4.6894366e+03 2.8013716e+03 - -8.1315437e+02 4.6670260e+03 2.8112923e+03 - -8.7768709e+02 4.6425202e+03 2.8218716e+03 - -9.4360701e+02 4.6158223e+03 2.8330851e+03 - -1.0110192e+03 4.5868285e+03 2.8449036e+03 - -1.0800287e+03 4.5554280e+03 2.8572923e+03 - -1.1507389e+03 4.5215039e+03 2.8702105e+03 - -1.2232506e+03 4.4849337e+03 2.8836104e+03 - -1.2976604e+03 4.4455909e+03 2.8974365e+03 - -1.3740578e+03 4.4033459e+03 2.9116248e+03 - -1.4525236e+03 4.3580684e+03 2.9261020e+03 - -1.5331265e+03 4.3096295e+03 2.9407850e+03 - -1.6159197e+03 4.2579050e+03 2.9555802e+03 - -1.7009376e+03 4.2027783e+03 2.9703834e+03 - -1.7881912e+03 4.1441452e+03 2.9850794e+03 - -1.8776643e+03 4.0819179e+03 2.9995429e+03 - -1.9693090e+03 4.0160304e+03 3.0136388e+03 - -2.0630418e+03 3.9464440e+03 3.0272240e+03 - -2.1587397e+03 3.8731524e+03 3.0401489e+03 - -2.2562371e+03 3.7961872e+03 3.0522601e+03 - -2.3553246e+03 3.7156229e+03 3.0634039e+03 - -2.4557480e+03 3.6315805e+03 3.0734293e+03 - -2.5572098e+03 3.5442303e+03 3.0821931e+03 - -2.6593721e+03 3.4537927e+03 3.0895635e+03 - -2.7618625e+03 3.3605374e+03 3.0954253e+03 - -2.8642806e+03 3.2647798e+03 3.0996836e+03 - -2.9662070e+03 3.1668757e+03 3.1022677e+03 - -3.0672140e+03 3.0672140e+03 3.1031340e+03 - -3.1668757e+03 2.9662070e+03 3.1022677e+03 - -3.2647798e+03 2.8642806e+03 3.0996836e+03 - -3.3605374e+03 2.7618625e+03 3.0954253e+03 - -3.4537927e+03 2.6593721e+03 3.0895635e+03 - -3.5442303e+03 2.5572098e+03 3.0821931e+03 - -3.6315805e+03 2.4557480e+03 3.0734293e+03 - -3.7156229e+03 2.3553246e+03 3.0634039e+03 - -3.7961872e+03 2.2562371e+03 3.0522601e+03 - -3.8731524e+03 2.1587397e+03 3.0401489e+03 - -3.9464440e+03 2.0630418e+03 3.0272240e+03 - -4.0160304e+03 1.9693090e+03 3.0136388e+03 - -4.0819179e+03 1.8776643e+03 2.9995429e+03 - -4.1441452e+03 1.7881912e+03 2.9850794e+03 - -4.2027783e+03 1.7009376e+03 2.9703834e+03 - -4.2579050e+03 1.6159197e+03 2.9555802e+03 - -4.3096295e+03 1.5331265e+03 2.9407850e+03 - -4.3580684e+03 1.4525236e+03 2.9261020e+03 - -4.4033459e+03 1.3740578e+03 2.9116248e+03 - -4.4455909e+03 1.2976604e+03 2.8974365e+03 - -4.4849337e+03 1.2232506e+03 2.8836104e+03 - -4.5215039e+03 1.1507389e+03 2.8702105e+03 - -4.5554280e+03 1.0800287e+03 2.8572923e+03 - -4.5868285e+03 1.0110192e+03 2.8449036e+03 - -4.6158223e+03 9.4360701e+02 2.8330851e+03 - -4.6425202e+03 8.7768709e+02 2.8218716e+03 - -4.6670260e+03 8.1315437e+02 2.8112923e+03 - -4.6894366e+03 7.4990436e+02 2.8013716e+03 - -4.7098415e+03 6.8783380e+02 2.7921301e+03 - -4.7283227e+03 6.2684108e+02 2.7835845e+03 - -4.7449552e+03 5.6682656e+02 2.7757487e+03 - -4.7598064e+03 5.0769269e+02 2.7686340e+03 - -4.7729367e+03 4.4934407e+02 2.7622495e+03 - -4.7843995e+03 3.9168740e+02 2.7566025e+03 - -4.7942415e+03 3.3463138e+02 2.7516989e+03 - -4.8025027e+03 2.7808653e+02 2.7475432e+03 - -4.8092167e+03 2.2196505e+02 2.7441388e+03 - -4.8144106e+03 1.6618050e+02 2.7414885e+03 - -4.8181056e+03 1.1064764e+02 2.7395941e+03 - -4.8203167e+03 5.5282072e+01 2.7384570e+03 - -4.8210527e+03 -9.6268545e-09 2.7380779e+03 - -4.8203167e+03 -5.5282072e+01 2.7384570e+03 - -4.8181056e+03 -1.1064764e+02 2.7395941e+03 - -4.8144106e+03 -1.6618050e+02 2.7414885e+03 - -4.8092167e+03 -2.2196505e+02 2.7441388e+03 - -4.8025027e+03 -2.7808653e+02 2.7475432e+03 - -4.7942415e+03 -3.3463138e+02 2.7516989e+03 - -4.7843995e+03 -3.9168740e+02 2.7566025e+03 - -4.7729367e+03 -4.4934407e+02 2.7622495e+03 - -4.7598064e+03 -5.0769269e+02 2.7686340e+03 - -4.7449552e+03 -5.6682656e+02 2.7757487e+03 - -4.7283227e+03 -6.2684108e+02 2.7835845e+03 - -4.7098415e+03 -6.8783380e+02 2.7921301e+03 - -4.6894366e+03 -7.4990436e+02 2.8013716e+03 - -4.6670260e+03 -8.1315437e+02 2.8112923e+03 - -4.6425202e+03 -8.7768709e+02 2.8218716e+03 - -4.6158223e+03 -9.4360701e+02 2.8330851e+03 - -4.5868285e+03 -1.0110192e+03 2.8449036e+03 - -4.5554280e+03 -1.0800287e+03 2.8572923e+03 - -4.5215039e+03 -1.1507389e+03 2.8702105e+03 - -4.4849337e+03 -1.2232506e+03 2.8836104e+03 - -4.4455909e+03 -1.2976604e+03 2.8974365e+03 - -4.4033459e+03 -1.3740578e+03 2.9116248e+03 - -4.3580684e+03 -1.4525236e+03 2.9261020e+03 - -4.3096295e+03 -1.5331265e+03 2.9407850e+03 - -4.2579050e+03 -1.6159197e+03 2.9555802e+03 - -4.2027783e+03 -1.7009376e+03 2.9703834e+03 - -4.1441452e+03 -1.7881912e+03 2.9850794e+03 - -4.0819179e+03 -1.8776643e+03 2.9995429e+03 - -4.0160304e+03 -1.9693090e+03 3.0136388e+03 - -3.9464440e+03 -2.0630418e+03 3.0272240e+03 - -3.8731524e+03 -2.1587397e+03 3.0401489e+03 - -3.7961872e+03 -2.2562371e+03 3.0522601e+03 - -3.7156229e+03 -2.3553246e+03 3.0634039e+03 - -3.6315805e+03 -2.4557480e+03 3.0734293e+03 - -3.5442303e+03 -2.5572098e+03 3.0821931e+03 - -3.4537927e+03 -2.6593721e+03 3.0895635e+03 - -3.3605374e+03 -2.7618625e+03 3.0954253e+03 - -3.2647798e+03 -2.8642806e+03 3.0996836e+03 - -3.1668757e+03 -2.9662070e+03 3.1022677e+03 - -3.0672140e+03 -3.0672140e+03 3.1031340e+03 - -2.9662070e+03 -3.1668757e+03 3.1022677e+03 - -2.8642806e+03 -3.2647798e+03 3.0996836e+03 - -2.7618625e+03 -3.3605374e+03 3.0954253e+03 - -2.6593721e+03 -3.4537927e+03 3.0895635e+03 - -2.5572098e+03 -3.5442303e+03 3.0821931e+03 - -2.4557480e+03 -3.6315805e+03 3.0734293e+03 - -2.3553246e+03 -3.7156229e+03 3.0634039e+03 - -2.2562371e+03 -3.7961872e+03 3.0522601e+03 - -2.1587397e+03 -3.8731524e+03 3.0401489e+03 - -2.0630418e+03 -3.9464440e+03 3.0272240e+03 - -1.9693090e+03 -4.0160304e+03 3.0136388e+03 - -1.8776643e+03 -4.0819179e+03 2.9995429e+03 - -1.7881912e+03 -4.1441452e+03 2.9850794e+03 - -1.7009376e+03 -4.2027783e+03 2.9703834e+03 - -1.6159197e+03 -4.2579050e+03 2.9555802e+03 - -1.5331265e+03 -4.3096295e+03 2.9407850e+03 - -1.4525236e+03 -4.3580684e+03 2.9261020e+03 - -1.3740578e+03 -4.4033459e+03 2.9116248e+03 - -1.2976604e+03 -4.4455909e+03 2.8974365e+03 - -1.2232506e+03 -4.4849337e+03 2.8836104e+03 - -1.1507389e+03 -4.5215039e+03 2.8702105e+03 - -1.0800287e+03 -4.5554280e+03 2.8572923e+03 - -1.0110192e+03 -4.5868285e+03 2.8449036e+03 - -9.4360701e+02 -4.6158223e+03 2.8330851e+03 - -8.7768709e+02 -4.6425202e+03 2.8218716e+03 - -8.1315437e+02 -4.6670260e+03 2.8112923e+03 - -7.4990436e+02 -4.6894366e+03 2.8013716e+03 - -6.8783380e+02 -4.7098415e+03 2.7921301e+03 - -6.2684108e+02 -4.7283227e+03 2.7835845e+03 - -5.6682656e+02 -4.7449552e+03 2.7757487e+03 - -5.0769269e+02 -4.7598064e+03 2.7686340e+03 - -4.4934407e+02 -4.7729367e+03 2.7622495e+03 - -3.9168740e+02 -4.7843995e+03 2.7566025e+03 - -3.3463138e+02 -4.7942415e+03 2.7516989e+03 - -2.7808653e+02 -4.8025027e+03 2.7475432e+03 - -2.2196505e+02 -4.8092167e+03 2.7441388e+03 - -1.6618050e+02 -4.8144106e+03 2.7414885e+03 - -1.1064764e+02 -4.8181056e+03 2.7395941e+03 - -5.5282072e+01 -4.8203167e+03 2.7384570e+03 - 4.8134273e-09 -4.8210527e+03 2.7380779e+03 - 5.5282072e+01 -4.8203167e+03 2.7384570e+03 - 1.1064764e+02 -4.8181056e+03 2.7395941e+03 - 1.6618050e+02 -4.8144106e+03 2.7414885e+03 - 2.2196505e+02 -4.8092167e+03 2.7441388e+03 - 2.7808653e+02 -4.8025027e+03 2.7475432e+03 - 3.3463138e+02 -4.7942415e+03 2.7516989e+03 - 3.9168740e+02 -4.7843995e+03 2.7566025e+03 - 4.4934407e+02 -4.7729367e+03 2.7622495e+03 - 5.0769269e+02 -4.7598064e+03 2.7686340e+03 - 5.6682656e+02 -4.7449552e+03 2.7757487e+03 - 6.2684108e+02 -4.7283227e+03 2.7835845e+03 - 6.8783380e+02 -4.7098415e+03 2.7921301e+03 - 7.4990436e+02 -4.6894366e+03 2.8013716e+03 - 8.1315437e+02 -4.6670260e+03 2.8112923e+03 - 8.7768709e+02 -4.6425202e+03 2.8218716e+03 - 9.4360701e+02 -4.6158223e+03 2.8330851e+03 - 1.0110192e+03 -4.5868285e+03 2.8449036e+03 - 1.0800287e+03 -4.5554280e+03 2.8572923e+03 - 1.1507389e+03 -4.5215039e+03 2.8702105e+03 - 1.2232506e+03 -4.4849337e+03 2.8836104e+03 - 1.2976604e+03 -4.4455909e+03 2.8974365e+03 - 1.3740578e+03 -4.4033459e+03 2.9116248e+03 - 1.4525236e+03 -4.3580684e+03 2.9261020e+03 - 1.5331265e+03 -4.3096295e+03 2.9407850e+03 - 1.6159197e+03 -4.2579050e+03 2.9555802e+03 - 1.7009376e+03 -4.2027783e+03 2.9703834e+03 - 1.7881912e+03 -4.1441452e+03 2.9850794e+03 - 1.8776643e+03 -4.0819179e+03 2.9995429e+03 - 1.9693090e+03 -4.0160304e+03 3.0136388e+03 - 2.0630418e+03 -3.9464440e+03 3.0272240e+03 - 2.1587397e+03 -3.8731524e+03 3.0401489e+03 - 2.2562371e+03 -3.7961872e+03 3.0522601e+03 - 2.3553246e+03 -3.7156229e+03 3.0634039e+03 - 2.4557480e+03 -3.6315805e+03 3.0734293e+03 - 2.5572098e+03 -3.5442303e+03 3.0821931e+03 - 2.6593721e+03 -3.4537927e+03 3.0895635e+03 - 2.7618625e+03 -3.3605374e+03 3.0954253e+03 - 2.8642806e+03 -3.2647798e+03 3.0996836e+03 - 2.9662070e+03 -3.1668757e+03 3.1022677e+03 - 3.0672140e+03 -3.0672140e+03 3.1031340e+03 - 3.1668757e+03 -2.9662070e+03 3.1022677e+03 - 3.2647798e+03 -2.8642806e+03 3.0996836e+03 - 3.3605374e+03 -2.7618625e+03 3.0954253e+03 - 3.4537927e+03 -2.6593721e+03 3.0895635e+03 - 3.5442303e+03 -2.5572098e+03 3.0821931e+03 - 3.6315805e+03 -2.4557480e+03 3.0734293e+03 - 3.7156229e+03 -2.3553246e+03 3.0634039e+03 - 3.7961872e+03 -2.2562371e+03 3.0522601e+03 - 3.8731524e+03 -2.1587397e+03 3.0401489e+03 - 3.9464440e+03 -2.0630418e+03 3.0272240e+03 - 4.0160304e+03 -1.9693090e+03 3.0136388e+03 - 4.0819179e+03 -1.8776643e+03 2.9995429e+03 - 4.1441452e+03 -1.7881912e+03 2.9850794e+03 - 4.2027783e+03 -1.7009376e+03 2.9703834e+03 - 4.2579050e+03 -1.6159197e+03 2.9555802e+03 - 4.3096295e+03 -1.5331265e+03 2.9407850e+03 - 4.3580684e+03 -1.4525236e+03 2.9261020e+03 - 4.4033459e+03 -1.3740578e+03 2.9116248e+03 - 4.4455909e+03 -1.2976604e+03 2.8974365e+03 - 4.4849337e+03 -1.2232506e+03 2.8836104e+03 - 4.5215039e+03 -1.1507389e+03 2.8702105e+03 - 4.5554280e+03 -1.0800287e+03 2.8572923e+03 - 4.5868285e+03 -1.0110192e+03 2.8449036e+03 - 4.6158223e+03 -9.4360701e+02 2.8330851e+03 - 4.6425202e+03 -8.7768709e+02 2.8218716e+03 - 4.6670260e+03 -8.1315437e+02 2.8112923e+03 - 4.6894366e+03 -7.4990436e+02 2.8013716e+03 - 4.7098415e+03 -6.8783380e+02 2.7921301e+03 - 4.7283227e+03 -6.2684108e+02 2.7835845e+03 - 4.7449552e+03 -5.6682656e+02 2.7757487e+03 - 4.7598064e+03 -5.0769269e+02 2.7686340e+03 - 4.7729367e+03 -4.4934407e+02 2.7622495e+03 - 4.7843995e+03 -3.9168740e+02 2.7566025e+03 - 4.7942415e+03 -3.3463138e+02 2.7516989e+03 - 4.8025027e+03 -2.7808653e+02 2.7475432e+03 - 4.8092167e+03 -2.2196505e+02 2.7441388e+03 - 4.8144106e+03 -1.6618050e+02 2.7414885e+03 - 4.8181056e+03 -1.1064764e+02 2.7395941e+03 - 4.8203167e+03 -5.5282072e+01 2.7384570e+03 - 4.8210527e+03 0.0000000e+00 2.7380779e+03 - 4.8578642e+03 0.0000000e+00 2.6640350e+03 - 4.8571362e+03 5.5050067e+01 2.6644213e+03 - 4.8549493e+03 1.1018457e+02 2.6655802e+03 - 4.8512942e+03 1.6548827e+02 2.6675111e+03 - 4.8461558e+03 2.2104658e+02 2.6702130e+03 - 4.8395126e+03 2.7694588e+02 2.6736843e+03 - 4.8313368e+03 3.3327382e+02 2.6779230e+03 - 4.8215942e+03 3.9011959e+02 2.6829262e+03 - 4.8102438e+03 4.4757423e+02 2.6886902e+03 - 4.7972379e+03 5.0573084e+02 2.6952099e+03 - 4.7825218e+03 5.6468477e+02 2.7024790e+03 - 4.7660334e+03 6.2453379e+02 2.7104895e+03 - 4.7477033e+03 6.8537816e+02 2.7192312e+03 - 4.7274544e+03 7.4732065e+02 2.7286914e+03 - 4.7052019e+03 8.1046638e+02 2.7388547e+03 - 4.6808531e+03 8.7492267e+02 2.7497018e+03 - 4.6543073e+03 9.4079860e+02 2.7612094e+03 - 4.6254563e+03 1.0082044e+03 2.7733496e+03 - 4.5941843e+03 1.0772508e+03 2.7860886e+03 - 4.5603684e+03 1.1480477e+03 2.7993867e+03 - 4.5238797e+03 1.2207030e+03 2.8131967e+03 - 4.4845840e+03 1.2953207e+03 2.8274633e+03 - 4.4423433e+03 1.3719987e+03 2.8421224e+03 - 4.3970182e+03 1.4508264e+03 2.8571001e+03 - 4.3484696e+03 1.5318814e+03 2.8723117e+03 - 4.2965622e+03 1.6152262e+03 2.8876616e+03 - 4.2411682e+03 1.7009039e+03 2.9030421e+03 - 4.1821716e+03 1.7889339e+03 2.9183341e+03 - 4.1194726e+03 1.8793076e+03 2.9334067e+03 - 4.0529942e+03 1.9719832e+03 2.9481182e+03 - 3.9826869e+03 2.0668811e+03 2.9623177e+03 - 3.9085357e+03 2.1638798e+03 2.9758464e+03 - 3.8305656e+03 2.2628125e+03 2.9885410e+03 - 3.7488470e+03 2.3634645e+03 3.0002367e+03 - 3.6635008e+03 2.4655728e+03 3.0107713e+03 - 3.5747008e+03 2.5688266e+03 3.0199902e+03 - 3.4826758e+03 2.6728713e+03 3.0277506e+03 - 3.3877077e+03 2.7773132e+03 3.0339274e+03 - 3.2901292e+03 2.8817282e+03 3.0384172e+03 - 3.1903172e+03 2.9856705e+03 3.0411429e+03 - 3.0886846e+03 3.0886846e+03 3.0420568e+03 - 2.9856705e+03 3.1903172e+03 3.0411429e+03 - 2.8817282e+03 3.2901292e+03 3.0384172e+03 - 2.7773132e+03 3.3877077e+03 3.0339274e+03 - 2.6728713e+03 3.4826758e+03 3.0277506e+03 - 2.5688266e+03 3.5747008e+03 3.0199902e+03 - 2.4655728e+03 3.6635008e+03 3.0107713e+03 - 2.3634645e+03 3.7488470e+03 3.0002367e+03 - 2.2628125e+03 3.8305656e+03 2.9885410e+03 - 2.1638798e+03 3.9085357e+03 2.9758464e+03 - 2.0668811e+03 3.9826869e+03 2.9623177e+03 - 1.9719832e+03 4.0529942e+03 2.9481182e+03 - 1.8793076e+03 4.1194726e+03 2.9334067e+03 - 1.7889339e+03 4.1821716e+03 2.9183341e+03 - 1.7009039e+03 4.2411682e+03 2.9030421e+03 - 1.6152262e+03 4.2965622e+03 2.8876616e+03 - 1.5318814e+03 4.3484696e+03 2.8723117e+03 - 1.4508264e+03 4.3970182e+03 2.8571001e+03 - 1.3719987e+03 4.4423433e+03 2.8421224e+03 - 1.2953207e+03 4.4845840e+03 2.8274633e+03 - 1.2207030e+03 4.5238797e+03 2.8131967e+03 - 1.1480477e+03 4.5603684e+03 2.7993867e+03 - 1.0772508e+03 4.5941843e+03 2.7860886e+03 - 1.0082044e+03 4.6254563e+03 2.7733496e+03 - 9.4079860e+02 4.6543073e+03 2.7612094e+03 - 8.7492267e+02 4.6808531e+03 2.7497018e+03 - 8.1046638e+02 4.7052019e+03 2.7388547e+03 - 7.4732065e+02 4.7274544e+03 2.7286914e+03 - 6.8537816e+02 4.7477033e+03 2.7192312e+03 - 6.2453379e+02 4.7660334e+03 2.7104895e+03 - 5.6468477e+02 4.7825218e+03 2.7024790e+03 - 5.0573084e+02 4.7972379e+03 2.6952099e+03 - 4.4757423e+02 4.8102438e+03 2.6886902e+03 - 3.9011959e+02 4.8215942e+03 2.6829262e+03 - 3.3327382e+02 4.8313368e+03 2.6779230e+03 - 2.7694588e+02 4.8395126e+03 2.6736843e+03 - 2.2104658e+02 4.8461558e+03 2.6702130e+03 - 1.6548827e+02 4.8512942e+03 2.6675111e+03 - 1.1018457e+02 4.8549493e+03 2.6655802e+03 - 5.5050067e+01 4.8571362e+03 2.6644213e+03 - 4.8134273e-09 4.8578642e+03 2.6640350e+03 - -5.5050067e+01 4.8571362e+03 2.6644213e+03 - -1.1018457e+02 4.8549493e+03 2.6655802e+03 - -1.6548827e+02 4.8512942e+03 2.6675111e+03 - -2.2104658e+02 4.8461558e+03 2.6702130e+03 - -2.7694588e+02 4.8395126e+03 2.6736843e+03 - -3.3327382e+02 4.8313368e+03 2.6779230e+03 - -3.9011959e+02 4.8215942e+03 2.6829262e+03 - -4.4757423e+02 4.8102438e+03 2.6886902e+03 - -5.0573084e+02 4.7972379e+03 2.6952099e+03 - -5.6468477e+02 4.7825218e+03 2.7024790e+03 - -6.2453379e+02 4.7660334e+03 2.7104895e+03 - -6.8537816e+02 4.7477033e+03 2.7192312e+03 - -7.4732065e+02 4.7274544e+03 2.7286914e+03 - -8.1046638e+02 4.7052019e+03 2.7388547e+03 - -8.7492267e+02 4.6808531e+03 2.7497018e+03 - -9.4079860e+02 4.6543073e+03 2.7612094e+03 - -1.0082044e+03 4.6254563e+03 2.7733496e+03 - -1.0772508e+03 4.5941843e+03 2.7860886e+03 - -1.1480477e+03 4.5603684e+03 2.7993867e+03 - -1.2207030e+03 4.5238797e+03 2.8131967e+03 - -1.2953207e+03 4.4845840e+03 2.8274633e+03 - -1.3719987e+03 4.4423433e+03 2.8421224e+03 - -1.4508264e+03 4.3970182e+03 2.8571001e+03 - -1.5318814e+03 4.3484696e+03 2.8723117e+03 - -1.6152262e+03 4.2965622e+03 2.8876616e+03 - -1.7009039e+03 4.2411682e+03 2.9030421e+03 - -1.7889339e+03 4.1821716e+03 2.9183341e+03 - -1.8793076e+03 4.1194726e+03 2.9334067e+03 - -1.9719832e+03 4.0529942e+03 2.9481182e+03 - -2.0668811e+03 3.9826869e+03 2.9623177e+03 - -2.1638798e+03 3.9085357e+03 2.9758464e+03 - -2.2628125e+03 3.8305656e+03 2.9885410e+03 - -2.3634645e+03 3.7488470e+03 3.0002367e+03 - -2.4655728e+03 3.6635008e+03 3.0107713e+03 - -2.5688266e+03 3.5747008e+03 3.0199902e+03 - -2.6728713e+03 3.4826758e+03 3.0277506e+03 - -2.7773132e+03 3.3877077e+03 3.0339274e+03 - -2.8817282e+03 3.2901292e+03 3.0384172e+03 - -2.9856705e+03 3.1903172e+03 3.0411429e+03 - -3.0886846e+03 3.0886846e+03 3.0420568e+03 - -3.1903172e+03 2.9856705e+03 3.0411429e+03 - -3.2901292e+03 2.8817282e+03 3.0384172e+03 - -3.3877077e+03 2.7773132e+03 3.0339274e+03 - -3.4826758e+03 2.6728713e+03 3.0277506e+03 - -3.5747008e+03 2.5688266e+03 3.0199902e+03 - -3.6635008e+03 2.4655728e+03 3.0107713e+03 - -3.7488470e+03 2.3634645e+03 3.0002367e+03 - -3.8305656e+03 2.2628125e+03 2.9885410e+03 - -3.9085357e+03 2.1638798e+03 2.9758464e+03 - -3.9826869e+03 2.0668811e+03 2.9623177e+03 - -4.0529942e+03 1.9719832e+03 2.9481182e+03 - -4.1194726e+03 1.8793076e+03 2.9334067e+03 - -4.1821716e+03 1.7889339e+03 2.9183341e+03 - -4.2411682e+03 1.7009039e+03 2.9030421e+03 - -4.2965622e+03 1.6152262e+03 2.8876616e+03 - -4.3484696e+03 1.5318814e+03 2.8723117e+03 - -4.3970182e+03 1.4508264e+03 2.8571001e+03 - -4.4423433e+03 1.3719987e+03 2.8421224e+03 - -4.4845840e+03 1.2953207e+03 2.8274633e+03 - -4.5238797e+03 1.2207030e+03 2.8131967e+03 - -4.5603684e+03 1.1480477e+03 2.7993867e+03 - -4.5941843e+03 1.0772508e+03 2.7860886e+03 - -4.6254563e+03 1.0082044e+03 2.7733496e+03 - -4.6543073e+03 9.4079860e+02 2.7612094e+03 - -4.6808531e+03 8.7492267e+02 2.7497018e+03 - -4.7052019e+03 8.1046638e+02 2.7388547e+03 - -4.7274544e+03 7.4732065e+02 2.7286914e+03 - -4.7477033e+03 6.8537816e+02 2.7192312e+03 - -4.7660334e+03 6.2453379e+02 2.7104895e+03 - -4.7825218e+03 5.6468477e+02 2.7024790e+03 - -4.7972379e+03 5.0573084e+02 2.6952099e+03 - -4.8102438e+03 4.4757423e+02 2.6886902e+03 - -4.8215942e+03 3.9011959e+02 2.6829262e+03 - -4.8313368e+03 3.3327382e+02 2.6779230e+03 - -4.8395126e+03 2.7694588e+02 2.6736843e+03 - -4.8461558e+03 2.2104658e+02 2.6702130e+03 - -4.8512942e+03 1.6548827e+02 2.6675111e+03 - -4.8549493e+03 1.1018457e+02 2.6655802e+03 - -4.8571362e+03 5.5050067e+01 2.6644213e+03 - -4.8578642e+03 0.0000000e+00 2.6640350e+03 - -4.8571362e+03 -5.5050067e+01 2.6644213e+03 - -4.8549493e+03 -1.1018457e+02 2.6655802e+03 - -4.8512942e+03 -1.6548827e+02 2.6675111e+03 - -4.8461558e+03 -2.2104658e+02 2.6702130e+03 - -4.8395126e+03 -2.7694588e+02 2.6736843e+03 - -4.8313368e+03 -3.3327382e+02 2.6779230e+03 - -4.8215942e+03 -3.9011959e+02 2.6829262e+03 - -4.8102438e+03 -4.4757423e+02 2.6886902e+03 - -4.7972379e+03 -5.0573084e+02 2.6952099e+03 - -4.7825218e+03 -5.6468477e+02 2.7024790e+03 - -4.7660334e+03 -6.2453379e+02 2.7104895e+03 - -4.7477033e+03 -6.8537816e+02 2.7192312e+03 - -4.7274544e+03 -7.4732065e+02 2.7286914e+03 - -4.7052019e+03 -8.1046638e+02 2.7388547e+03 - -4.6808531e+03 -8.7492267e+02 2.7497018e+03 - -4.6543073e+03 -9.4079860e+02 2.7612094e+03 - -4.6254563e+03 -1.0082044e+03 2.7733496e+03 - -4.5941843e+03 -1.0772508e+03 2.7860886e+03 - -4.5603684e+03 -1.1480477e+03 2.7993867e+03 - -4.5238797e+03 -1.2207030e+03 2.8131967e+03 - -4.4845840e+03 -1.2953207e+03 2.8274633e+03 - -4.4423433e+03 -1.3719987e+03 2.8421224e+03 - -4.3970182e+03 -1.4508264e+03 2.8571001e+03 - -4.3484696e+03 -1.5318814e+03 2.8723117e+03 - -4.2965622e+03 -1.6152262e+03 2.8876616e+03 - -4.2411682e+03 -1.7009039e+03 2.9030421e+03 - -4.1821716e+03 -1.7889339e+03 2.9183341e+03 - -4.1194726e+03 -1.8793076e+03 2.9334067e+03 - -4.0529942e+03 -1.9719832e+03 2.9481182e+03 - -3.9826869e+03 -2.0668811e+03 2.9623177e+03 - -3.9085357e+03 -2.1638798e+03 2.9758464e+03 - -3.8305656e+03 -2.2628125e+03 2.9885410e+03 - -3.7488470e+03 -2.3634645e+03 3.0002367e+03 - -3.6635008e+03 -2.4655728e+03 3.0107713e+03 - -3.5747008e+03 -2.5688266e+03 3.0199902e+03 - -3.4826758e+03 -2.6728713e+03 3.0277506e+03 - -3.3877077e+03 -2.7773132e+03 3.0339274e+03 - -3.2901292e+03 -2.8817282e+03 3.0384172e+03 - -3.1903172e+03 -2.9856705e+03 3.0411429e+03 - -3.0886846e+03 -3.0886846e+03 3.0420568e+03 - -2.9856705e+03 -3.1903172e+03 3.0411429e+03 - -2.8817282e+03 -3.2901292e+03 3.0384172e+03 - -2.7773132e+03 -3.3877077e+03 3.0339274e+03 - -2.6728713e+03 -3.4826758e+03 3.0277506e+03 - -2.5688266e+03 -3.5747008e+03 3.0199902e+03 - -2.4655728e+03 -3.6635008e+03 3.0107713e+03 - -2.3634645e+03 -3.7488470e+03 3.0002367e+03 - -2.2628125e+03 -3.8305656e+03 2.9885410e+03 - -2.1638798e+03 -3.9085357e+03 2.9758464e+03 - -2.0668811e+03 -3.9826869e+03 2.9623177e+03 - -1.9719832e+03 -4.0529942e+03 2.9481182e+03 - -1.8793076e+03 -4.1194726e+03 2.9334067e+03 - -1.7889339e+03 -4.1821716e+03 2.9183341e+03 - -1.7009039e+03 -4.2411682e+03 2.9030421e+03 - -1.6152262e+03 -4.2965622e+03 2.8876616e+03 - -1.5318814e+03 -4.3484696e+03 2.8723117e+03 - -1.4508264e+03 -4.3970182e+03 2.8571001e+03 - -1.3719987e+03 -4.4423433e+03 2.8421224e+03 - -1.2953207e+03 -4.4845840e+03 2.8274633e+03 - -1.2207030e+03 -4.5238797e+03 2.8131967e+03 - -1.1480477e+03 -4.5603684e+03 2.7993867e+03 - -1.0772508e+03 -4.5941843e+03 2.7860886e+03 - -1.0082044e+03 -4.6254563e+03 2.7733496e+03 - -9.4079860e+02 -4.6543073e+03 2.7612094e+03 - -8.7492267e+02 -4.6808531e+03 2.7497018e+03 - -8.1046638e+02 -4.7052019e+03 2.7388547e+03 - -7.4732065e+02 -4.7274544e+03 2.7286914e+03 - -6.8537816e+02 -4.7477033e+03 2.7192312e+03 - -6.2453379e+02 -4.7660334e+03 2.7104895e+03 - -5.6468477e+02 -4.7825218e+03 2.7024790e+03 - -5.0573084e+02 -4.7972379e+03 2.6952099e+03 - -4.4757423e+02 -4.8102438e+03 2.6886902e+03 - -3.9011959e+02 -4.8215942e+03 2.6829262e+03 - -3.3327382e+02 -4.8313368e+03 2.6779230e+03 - -2.7694588e+02 -4.8395126e+03 2.6736843e+03 - -2.2104658e+02 -4.8461558e+03 2.6702130e+03 - -1.6548827e+02 -4.8512942e+03 2.6675111e+03 - -1.1018457e+02 -4.8549493e+03 2.6655802e+03 - -5.5050067e+01 -4.8571362e+03 2.6644213e+03 - -4.8134273e-09 -4.8578642e+03 2.6640350e+03 - 5.5050067e+01 -4.8571362e+03 2.6644213e+03 - 1.1018457e+02 -4.8549493e+03 2.6655802e+03 - 1.6548827e+02 -4.8512942e+03 2.6675111e+03 - 2.2104658e+02 -4.8461558e+03 2.6702130e+03 - 2.7694588e+02 -4.8395126e+03 2.6736843e+03 - 3.3327382e+02 -4.8313368e+03 2.6779230e+03 - 3.9011959e+02 -4.8215942e+03 2.6829262e+03 - 4.4757423e+02 -4.8102438e+03 2.6886902e+03 - 5.0573084e+02 -4.7972379e+03 2.6952099e+03 - 5.6468477e+02 -4.7825218e+03 2.7024790e+03 - 6.2453379e+02 -4.7660334e+03 2.7104895e+03 - 6.8537816e+02 -4.7477033e+03 2.7192312e+03 - 7.4732065e+02 -4.7274544e+03 2.7286914e+03 - 8.1046638e+02 -4.7052019e+03 2.7388547e+03 - 8.7492267e+02 -4.6808531e+03 2.7497018e+03 - 9.4079860e+02 -4.6543073e+03 2.7612094e+03 - 1.0082044e+03 -4.6254563e+03 2.7733496e+03 - 1.0772508e+03 -4.5941843e+03 2.7860886e+03 - 1.1480477e+03 -4.5603684e+03 2.7993867e+03 - 1.2207030e+03 -4.5238797e+03 2.8131967e+03 - 1.2953207e+03 -4.4845840e+03 2.8274633e+03 - 1.3719987e+03 -4.4423433e+03 2.8421224e+03 - 1.4508264e+03 -4.3970182e+03 2.8571001e+03 - 1.5318814e+03 -4.3484696e+03 2.8723117e+03 - 1.6152262e+03 -4.2965622e+03 2.8876616e+03 - 1.7009039e+03 -4.2411682e+03 2.9030421e+03 - 1.7889339e+03 -4.1821716e+03 2.9183341e+03 - 1.8793076e+03 -4.1194726e+03 2.9334067e+03 - 1.9719832e+03 -4.0529942e+03 2.9481182e+03 - 2.0668811e+03 -3.9826869e+03 2.9623177e+03 - 2.1638798e+03 -3.9085357e+03 2.9758464e+03 - 2.2628125e+03 -3.8305656e+03 2.9885410e+03 - 2.3634645e+03 -3.7488470e+03 3.0002367e+03 - 2.4655728e+03 -3.6635008e+03 3.0107713e+03 - 2.5688266e+03 -3.5747008e+03 3.0199902e+03 - 2.6728713e+03 -3.4826758e+03 3.0277506e+03 - 2.7773132e+03 -3.3877077e+03 3.0339274e+03 - 2.8817282e+03 -3.2901292e+03 3.0384172e+03 - 2.9856705e+03 -3.1903172e+03 3.0411429e+03 - 3.0886846e+03 -3.0886846e+03 3.0420568e+03 - 3.1903172e+03 -2.9856705e+03 3.0411429e+03 - 3.2901292e+03 -2.8817282e+03 3.0384172e+03 - 3.3877077e+03 -2.7773132e+03 3.0339274e+03 - 3.4826758e+03 -2.6728713e+03 3.0277506e+03 - 3.5747008e+03 -2.5688266e+03 3.0199902e+03 - 3.6635008e+03 -2.4655728e+03 3.0107713e+03 - 3.7488470e+03 -2.3634645e+03 3.0002367e+03 - 3.8305656e+03 -2.2628125e+03 2.9885410e+03 - 3.9085357e+03 -2.1638798e+03 2.9758464e+03 - 3.9826869e+03 -2.0668811e+03 2.9623177e+03 - 4.0529942e+03 -1.9719832e+03 2.9481182e+03 - 4.1194726e+03 -1.8793076e+03 2.9334067e+03 - 4.1821716e+03 -1.7889339e+03 2.9183341e+03 - 4.2411682e+03 -1.7009039e+03 2.9030421e+03 - 4.2965622e+03 -1.6152262e+03 2.8876616e+03 - 4.3484696e+03 -1.5318814e+03 2.8723117e+03 - 4.3970182e+03 -1.4508264e+03 2.8571001e+03 - 4.4423433e+03 -1.3719987e+03 2.8421224e+03 - 4.4845840e+03 -1.2953207e+03 2.8274633e+03 - 4.5238797e+03 -1.2207030e+03 2.8131967e+03 - 4.5603684e+03 -1.1480477e+03 2.7993867e+03 - 4.5941843e+03 -1.0772508e+03 2.7860886e+03 - 4.6254563e+03 -1.0082044e+03 2.7733496e+03 - 4.6543073e+03 -9.4079860e+02 2.7612094e+03 - 4.6808531e+03 -8.7492267e+02 2.7497018e+03 - 4.7052019e+03 -8.1046638e+02 2.7388547e+03 - 4.7274544e+03 -7.4732065e+02 2.7286914e+03 - 4.7477033e+03 -6.8537816e+02 2.7192312e+03 - 4.7660334e+03 -6.2453379e+02 2.7104895e+03 - 4.7825218e+03 -5.6468477e+02 2.7024790e+03 - 4.7972379e+03 -5.0573084e+02 2.6952099e+03 - 4.8102438e+03 -4.4757423e+02 2.6886902e+03 - 4.8215942e+03 -3.9011959e+02 2.6829262e+03 - 4.8313368e+03 -3.3327382e+02 2.6779230e+03 - 4.8395126e+03 -2.7694588e+02 2.6736843e+03 - 4.8461558e+03 -2.2104658e+02 2.6702130e+03 - 4.8512942e+03 -1.6548827e+02 2.6675111e+03 - 4.8549493e+03 -1.1018457e+02 2.6655802e+03 - 4.8571362e+03 -5.5050067e+01 2.6644213e+03 - 4.8578642e+03 -4.8134273e-09 2.6640350e+03 - 4.8942238e+03 0.0000000e+00 2.5871496e+03 - 4.8935045e+03 5.4810416e+01 2.5875425e+03 - 4.8913435e+03 1.0970611e+02 2.5887208e+03 - 4.8877315e+03 1.6477272e+02 2.5906842e+03 - 4.8826531e+03 2.2009660e+02 2.5934321e+03 - 4.8760863e+03 2.7576512e+02 2.5969634e+03 - 4.8680029e+03 3.3186709e+02 2.6012766e+03 - 4.8583680e+03 3.8849298e+02 2.6063694e+03 - 4.8471399e+03 4.4573532e+02 2.6122390e+03 - 4.8342698e+03 5.0368891e+02 2.6188812e+03 - 4.8197016e+03 5.6245106e+02 2.6262909e+03 - 4.8033719e+03 6.2212184e+02 2.6344611e+03 - 4.7852094e+03 6.8280415e+02 2.6433829e+03 - 4.7651346e+03 7.4460379e+02 2.6530450e+03 - 4.7430603e+03 8.0762943e+02 2.6634333e+03 - 4.7188904e+03 8.7199239e+02 2.6745299e+03 - 4.6925207e+03 9.3780634e+02 2.6863132e+03 - 4.6638385e+03 1.0051868e+03 2.6987564e+03 - 4.6327229e+03 1.0742502e+03 2.7118274e+03 - 4.5990452e+03 1.1451130e+03 2.7254873e+03 - 4.5626698e+03 1.2178905e+03 2.7396899e+03 - 4.5234546e+03 1.2926945e+03 2.7543807e+03 - 4.4812533e+03 1.3696315e+03 2.7694957e+03 - 4.4359164e+03 1.4488001e+03 2.7849605e+03 - 4.3872945e+03 1.5302874e+03 2.8006894e+03 - 4.3352409e+03 1.6141655e+03 2.8165848e+03 - 4.2796154e+03 1.7004874e+03 2.8325362e+03 - 4.2202894e+03 1.7892817e+03 2.8484204e+03 - 4.1571505e+03 1.8805480e+03 2.8641012e+03 - 4.0901090e+03 1.9742514e+03 2.8794304e+03 - 4.0191041e+03 2.0703174e+03 2.8942488e+03 - 3.9441105e+03 2.1686268e+03 2.9083886e+03 - 3.8651454e+03 2.2690117e+03 2.9216758e+03 - 3.7822747e+03 2.3712529e+03 2.9339344e+03 - 3.6956180e+03 2.4750782e+03 2.9449900e+03 - 3.6053525e+03 2.5801635e+03 2.9546758e+03 - 3.5117149e+03 2.6861360e+03 2.9628375e+03 - 3.4150006e+03 2.7925803e+03 2.9693389e+03 - 3.3155599e+03 2.8990462e+03 2.9740677e+03 - 3.2137921e+03 3.0050599e+03 2.9769397e+03 - 3.1101363e+03 3.1101363e+03 2.9779029e+03 - 3.0050599e+03 3.2137921e+03 2.9769397e+03 - 2.8990462e+03 3.3155599e+03 2.9740677e+03 - 2.7925803e+03 3.4150006e+03 2.9693389e+03 - 2.6861360e+03 3.5117149e+03 2.9628375e+03 - 2.5801635e+03 3.6053525e+03 2.9546758e+03 - 2.4750782e+03 3.6956180e+03 2.9449900e+03 - 2.3712529e+03 3.7822747e+03 2.9339344e+03 - 2.2690117e+03 3.8651454e+03 2.9216758e+03 - 2.1686268e+03 3.9441105e+03 2.9083886e+03 - 2.0703174e+03 4.0191041e+03 2.8942488e+03 - 1.9742514e+03 4.0901090e+03 2.8794304e+03 - 1.8805480e+03 4.1571505e+03 2.8641012e+03 - 1.7892817e+03 4.2202894e+03 2.8484204e+03 - 1.7004874e+03 4.2796154e+03 2.8325362e+03 - 1.6141655e+03 4.3352409e+03 2.8165848e+03 - 1.5302874e+03 4.3872945e+03 2.8006894e+03 - 1.4488001e+03 4.4359164e+03 2.7849605e+03 - 1.3696315e+03 4.4812533e+03 2.7694957e+03 - 1.2926945e+03 4.5234546e+03 2.7543807e+03 - 1.2178905e+03 4.5626698e+03 2.7396899e+03 - 1.1451130e+03 4.5990452e+03 2.7254873e+03 - 1.0742502e+03 4.6327229e+03 2.7118274e+03 - 1.0051868e+03 4.6638385e+03 2.6987564e+03 - 9.3780634e+02 4.6925207e+03 2.6863132e+03 - 8.7199239e+02 4.7188904e+03 2.6745299e+03 - 8.0762943e+02 4.7430603e+03 2.6634333e+03 - 7.4460379e+02 4.7651346e+03 2.6530450e+03 - 6.8280415e+02 4.7852094e+03 2.6433829e+03 - 6.2212184e+02 4.8033719e+03 2.6344611e+03 - 5.6245106e+02 4.8197016e+03 2.6262909e+03 - 5.0368891e+02 4.8342698e+03 2.6188812e+03 - 4.4573532e+02 4.8471399e+03 2.6122390e+03 - 3.8849298e+02 4.8583680e+03 2.6063694e+03 - 3.3186709e+02 4.8680029e+03 2.6012766e+03 - 2.7576512e+02 4.8760863e+03 2.5969634e+03 - 2.2009660e+02 4.8826531e+03 2.5934321e+03 - 1.6477272e+02 4.8877315e+03 2.5906842e+03 - 1.0970611e+02 4.8913435e+03 2.5887208e+03 - 5.4810416e+01 4.8935045e+03 2.5875425e+03 - 4.8134273e-09 4.8942238e+03 2.5871496e+03 - -5.4810416e+01 4.8935045e+03 2.5875425e+03 - -1.0970611e+02 4.8913435e+03 2.5887208e+03 - -1.6477272e+02 4.8877315e+03 2.5906842e+03 - -2.2009660e+02 4.8826531e+03 2.5934321e+03 - -2.7576512e+02 4.8760863e+03 2.5969634e+03 - -3.3186709e+02 4.8680029e+03 2.6012766e+03 - -3.8849298e+02 4.8583680e+03 2.6063694e+03 - -4.4573532e+02 4.8471399e+03 2.6122390e+03 - -5.0368891e+02 4.8342698e+03 2.6188812e+03 - -5.6245106e+02 4.8197016e+03 2.6262909e+03 - -6.2212184e+02 4.8033719e+03 2.6344611e+03 - -6.8280415e+02 4.7852094e+03 2.6433829e+03 - -7.4460379e+02 4.7651346e+03 2.6530450e+03 - -8.0762943e+02 4.7430603e+03 2.6634333e+03 - -8.7199239e+02 4.7188904e+03 2.6745299e+03 - -9.3780634e+02 4.6925207e+03 2.6863132e+03 - -1.0051868e+03 4.6638385e+03 2.6987564e+03 - -1.0742502e+03 4.6327229e+03 2.7118274e+03 - -1.1451130e+03 4.5990452e+03 2.7254873e+03 - -1.2178905e+03 4.5626698e+03 2.7396899e+03 - -1.2926945e+03 4.5234546e+03 2.7543807e+03 - -1.3696315e+03 4.4812533e+03 2.7694957e+03 - -1.4488001e+03 4.4359164e+03 2.7849605e+03 - -1.5302874e+03 4.3872945e+03 2.8006894e+03 - -1.6141655e+03 4.3352409e+03 2.8165848e+03 - -1.7004874e+03 4.2796154e+03 2.8325362e+03 - -1.7892817e+03 4.2202894e+03 2.8484204e+03 - -1.8805480e+03 4.1571505e+03 2.8641012e+03 - -1.9742514e+03 4.0901090e+03 2.8794304e+03 - -2.0703174e+03 4.0191041e+03 2.8942488e+03 - -2.1686268e+03 3.9441105e+03 2.9083886e+03 - -2.2690117e+03 3.8651454e+03 2.9216758e+03 - -2.3712529e+03 3.7822747e+03 2.9339344e+03 - -2.4750782e+03 3.6956180e+03 2.9449900e+03 - -2.5801635e+03 3.6053525e+03 2.9546758e+03 - -2.6861360e+03 3.5117149e+03 2.9628375e+03 - -2.7925803e+03 3.4150006e+03 2.9693389e+03 - -2.8990462e+03 3.3155599e+03 2.9740677e+03 - -3.0050599e+03 3.2137921e+03 2.9769397e+03 - -3.1101363e+03 3.1101363e+03 2.9779029e+03 - -3.2137921e+03 3.0050599e+03 2.9769397e+03 - -3.3155599e+03 2.8990462e+03 2.9740677e+03 - -3.4150006e+03 2.7925803e+03 2.9693389e+03 - -3.5117149e+03 2.6861360e+03 2.9628375e+03 - -3.6053525e+03 2.5801635e+03 2.9546758e+03 - -3.6956180e+03 2.4750782e+03 2.9449900e+03 - -3.7822747e+03 2.3712529e+03 2.9339344e+03 - -3.8651454e+03 2.2690117e+03 2.9216758e+03 - -3.9441105e+03 2.1686268e+03 2.9083886e+03 - -4.0191041e+03 2.0703174e+03 2.8942488e+03 - -4.0901090e+03 1.9742514e+03 2.8794304e+03 - -4.1571505e+03 1.8805480e+03 2.8641012e+03 - -4.2202894e+03 1.7892817e+03 2.8484204e+03 - -4.2796154e+03 1.7004874e+03 2.8325362e+03 - -4.3352409e+03 1.6141655e+03 2.8165848e+03 - -4.3872945e+03 1.5302874e+03 2.8006894e+03 - -4.4359164e+03 1.4488001e+03 2.7849605e+03 - -4.4812533e+03 1.3696315e+03 2.7694957e+03 - -4.5234546e+03 1.2926945e+03 2.7543807e+03 - -4.5626698e+03 1.2178905e+03 2.7396899e+03 - -4.5990452e+03 1.1451130e+03 2.7254873e+03 - -4.6327229e+03 1.0742502e+03 2.7118274e+03 - -4.6638385e+03 1.0051868e+03 2.6987564e+03 - -4.6925207e+03 9.3780634e+02 2.6863132e+03 - -4.7188904e+03 8.7199239e+02 2.6745299e+03 - -4.7430603e+03 8.0762943e+02 2.6634333e+03 - -4.7651346e+03 7.4460379e+02 2.6530450e+03 - -4.7852094e+03 6.8280415e+02 2.6433829e+03 - -4.8033719e+03 6.2212184e+02 2.6344611e+03 - -4.8197016e+03 5.6245106e+02 2.6262909e+03 - -4.8342698e+03 5.0368891e+02 2.6188812e+03 - -4.8471399e+03 4.4573532e+02 2.6122390e+03 - -4.8583680e+03 3.8849298e+02 2.6063694e+03 - -4.8680029e+03 3.3186709e+02 2.6012766e+03 - -4.8760863e+03 2.7576512e+02 2.5969634e+03 - -4.8826531e+03 2.2009660e+02 2.5934321e+03 - -4.8877315e+03 1.6477272e+02 2.5906842e+03 - -4.8913435e+03 1.0970611e+02 2.5887208e+03 - -4.8935045e+03 5.4810416e+01 2.5875425e+03 - -4.8942238e+03 4.8134273e-09 2.5871496e+03 - -4.8935045e+03 -5.4810416e+01 2.5875425e+03 - -4.8913435e+03 -1.0970611e+02 2.5887208e+03 - -4.8877315e+03 -1.6477272e+02 2.5906842e+03 - -4.8826531e+03 -2.2009660e+02 2.5934321e+03 - -4.8760863e+03 -2.7576512e+02 2.5969634e+03 - -4.8680029e+03 -3.3186709e+02 2.6012766e+03 - -4.8583680e+03 -3.8849298e+02 2.6063694e+03 - -4.8471399e+03 -4.4573532e+02 2.6122390e+03 - -4.8342698e+03 -5.0368891e+02 2.6188812e+03 - -4.8197016e+03 -5.6245106e+02 2.6262909e+03 - -4.8033719e+03 -6.2212184e+02 2.6344611e+03 - -4.7852094e+03 -6.8280415e+02 2.6433829e+03 - -4.7651346e+03 -7.4460379e+02 2.6530450e+03 - -4.7430603e+03 -8.0762943e+02 2.6634333e+03 - -4.7188904e+03 -8.7199239e+02 2.6745299e+03 - -4.6925207e+03 -9.3780634e+02 2.6863132e+03 - -4.6638385e+03 -1.0051868e+03 2.6987564e+03 - -4.6327229e+03 -1.0742502e+03 2.7118274e+03 - -4.5990452e+03 -1.1451130e+03 2.7254873e+03 - -4.5626698e+03 -1.2178905e+03 2.7396899e+03 - -4.5234546e+03 -1.2926945e+03 2.7543807e+03 - -4.4812533e+03 -1.3696315e+03 2.7694957e+03 - -4.4359164e+03 -1.4488001e+03 2.7849605e+03 - -4.3872945e+03 -1.5302874e+03 2.8006894e+03 - -4.3352409e+03 -1.6141655e+03 2.8165848e+03 - -4.2796154e+03 -1.7004874e+03 2.8325362e+03 - -4.2202894e+03 -1.7892817e+03 2.8484204e+03 - -4.1571505e+03 -1.8805480e+03 2.8641012e+03 - -4.0901090e+03 -1.9742514e+03 2.8794304e+03 - -4.0191041e+03 -2.0703174e+03 2.8942488e+03 - -3.9441105e+03 -2.1686268e+03 2.9083886e+03 - -3.8651454e+03 -2.2690117e+03 2.9216758e+03 - -3.7822747e+03 -2.3712529e+03 2.9339344e+03 - -3.6956180e+03 -2.4750782e+03 2.9449900e+03 - -3.6053525e+03 -2.5801635e+03 2.9546758e+03 - -3.5117149e+03 -2.6861360e+03 2.9628375e+03 - -3.4150006e+03 -2.7925803e+03 2.9693389e+03 - -3.3155599e+03 -2.8990462e+03 2.9740677e+03 - -3.2137921e+03 -3.0050599e+03 2.9769397e+03 - -3.1101363e+03 -3.1101363e+03 2.9779029e+03 - -3.0050599e+03 -3.2137921e+03 2.9769397e+03 - -2.8990462e+03 -3.3155599e+03 2.9740677e+03 - -2.7925803e+03 -3.4150006e+03 2.9693389e+03 - -2.6861360e+03 -3.5117149e+03 2.9628375e+03 - -2.5801635e+03 -3.6053525e+03 2.9546758e+03 - -2.4750782e+03 -3.6956180e+03 2.9449900e+03 - -2.3712529e+03 -3.7822747e+03 2.9339344e+03 - -2.2690117e+03 -3.8651454e+03 2.9216758e+03 - -2.1686268e+03 -3.9441105e+03 2.9083886e+03 - -2.0703174e+03 -4.0191041e+03 2.8942488e+03 - -1.9742514e+03 -4.0901090e+03 2.8794304e+03 - -1.8805480e+03 -4.1571505e+03 2.8641012e+03 - -1.7892817e+03 -4.2202894e+03 2.8484204e+03 - -1.7004874e+03 -4.2796154e+03 2.8325362e+03 - -1.6141655e+03 -4.3352409e+03 2.8165848e+03 - -1.5302874e+03 -4.3872945e+03 2.8006894e+03 - -1.4488001e+03 -4.4359164e+03 2.7849605e+03 - -1.3696315e+03 -4.4812533e+03 2.7694957e+03 - -1.2926945e+03 -4.5234546e+03 2.7543807e+03 - -1.2178905e+03 -4.5626698e+03 2.7396899e+03 - -1.1451130e+03 -4.5990452e+03 2.7254873e+03 - -1.0742502e+03 -4.6327229e+03 2.7118274e+03 - -1.0051868e+03 -4.6638385e+03 2.6987564e+03 - -9.3780634e+02 -4.6925207e+03 2.6863132e+03 - -8.7199239e+02 -4.7188904e+03 2.6745299e+03 - -8.0762943e+02 -4.7430603e+03 2.6634333e+03 - -7.4460379e+02 -4.7651346e+03 2.6530450e+03 - -6.8280415e+02 -4.7852094e+03 2.6433829e+03 - -6.2212184e+02 -4.8033719e+03 2.6344611e+03 - -5.6245106e+02 -4.8197016e+03 2.6262909e+03 - -5.0368891e+02 -4.8342698e+03 2.6188812e+03 - -4.4573532e+02 -4.8471399e+03 2.6122390e+03 - -3.8849298e+02 -4.8583680e+03 2.6063694e+03 - -3.3186709e+02 -4.8680029e+03 2.6012766e+03 - -2.7576512e+02 -4.8760863e+03 2.5969634e+03 - -2.2009660e+02 -4.8826531e+03 2.5934321e+03 - -1.6477272e+02 -4.8877315e+03 2.5906842e+03 - -1.0970611e+02 -4.8913435e+03 2.5887208e+03 - -5.4810416e+01 -4.8935045e+03 2.5875425e+03 - -4.8134273e-09 -4.8942238e+03 2.5871496e+03 - 5.4810416e+01 -4.8935045e+03 2.5875425e+03 - 1.0970611e+02 -4.8913435e+03 2.5887208e+03 - 1.6477272e+02 -4.8877315e+03 2.5906842e+03 - 2.2009660e+02 -4.8826531e+03 2.5934321e+03 - 2.7576512e+02 -4.8760863e+03 2.5969634e+03 - 3.3186709e+02 -4.8680029e+03 2.6012766e+03 - 3.8849298e+02 -4.8583680e+03 2.6063694e+03 - 4.4573532e+02 -4.8471399e+03 2.6122390e+03 - 5.0368891e+02 -4.8342698e+03 2.6188812e+03 - 5.6245106e+02 -4.8197016e+03 2.6262909e+03 - 6.2212184e+02 -4.8033719e+03 2.6344611e+03 - 6.8280415e+02 -4.7852094e+03 2.6433829e+03 - 7.4460379e+02 -4.7651346e+03 2.6530450e+03 - 8.0762943e+02 -4.7430603e+03 2.6634333e+03 - 8.7199239e+02 -4.7188904e+03 2.6745299e+03 - 9.3780634e+02 -4.6925207e+03 2.6863132e+03 - 1.0051868e+03 -4.6638385e+03 2.6987564e+03 - 1.0742502e+03 -4.6327229e+03 2.7118274e+03 - 1.1451130e+03 -4.5990452e+03 2.7254873e+03 - 1.2178905e+03 -4.5626698e+03 2.7396899e+03 - 1.2926945e+03 -4.5234546e+03 2.7543807e+03 - 1.3696315e+03 -4.4812533e+03 2.7694957e+03 - 1.4488001e+03 -4.4359164e+03 2.7849605e+03 - 1.5302874e+03 -4.3872945e+03 2.8006894e+03 - 1.6141655e+03 -4.3352409e+03 2.8165848e+03 - 1.7004874e+03 -4.2796154e+03 2.8325362e+03 - 1.7892817e+03 -4.2202894e+03 2.8484204e+03 - 1.8805480e+03 -4.1571505e+03 2.8641012e+03 - 1.9742514e+03 -4.0901090e+03 2.8794304e+03 - 2.0703174e+03 -4.0191041e+03 2.8942488e+03 - 2.1686268e+03 -3.9441105e+03 2.9083886e+03 - 2.2690117e+03 -3.8651454e+03 2.9216758e+03 - 2.3712529e+03 -3.7822747e+03 2.9339344e+03 - 2.4750782e+03 -3.6956180e+03 2.9449900e+03 - 2.5801635e+03 -3.6053525e+03 2.9546758e+03 - 2.6861360e+03 -3.5117149e+03 2.9628375e+03 - 2.7925803e+03 -3.4150006e+03 2.9693389e+03 - 2.8990462e+03 -3.3155599e+03 2.9740677e+03 - 3.0050599e+03 -3.2137921e+03 2.9769397e+03 - 3.1101363e+03 -3.1101363e+03 2.9779029e+03 - 3.2137921e+03 -3.0050599e+03 2.9769397e+03 - 3.3155599e+03 -2.8990462e+03 2.9740677e+03 - 3.4150006e+03 -2.7925803e+03 2.9693389e+03 - 3.5117149e+03 -2.6861360e+03 2.9628375e+03 - 3.6053525e+03 -2.5801635e+03 2.9546758e+03 - 3.6956180e+03 -2.4750782e+03 2.9449900e+03 - 3.7822747e+03 -2.3712529e+03 2.9339344e+03 - 3.8651454e+03 -2.2690117e+03 2.9216758e+03 - 3.9441105e+03 -2.1686268e+03 2.9083886e+03 - 4.0191041e+03 -2.0703174e+03 2.8942488e+03 - 4.0901090e+03 -1.9742514e+03 2.8794304e+03 - 4.1571505e+03 -1.8805480e+03 2.8641012e+03 - 4.2202894e+03 -1.7892817e+03 2.8484204e+03 - 4.2796154e+03 -1.7004874e+03 2.8325362e+03 - 4.3352409e+03 -1.6141655e+03 2.8165848e+03 - 4.3872945e+03 -1.5302874e+03 2.8006894e+03 - 4.4359164e+03 -1.4488001e+03 2.7849605e+03 - 4.4812533e+03 -1.3696315e+03 2.7694957e+03 - 4.5234546e+03 -1.2926945e+03 2.7543807e+03 - 4.5626698e+03 -1.2178905e+03 2.7396899e+03 - 4.5990452e+03 -1.1451130e+03 2.7254873e+03 - 4.6327229e+03 -1.0742502e+03 2.7118274e+03 - 4.6638385e+03 -1.0051868e+03 2.6987564e+03 - 4.6925207e+03 -9.3780634e+02 2.6863132e+03 - 4.7188904e+03 -8.7199239e+02 2.6745299e+03 - 4.7430603e+03 -8.0762943e+02 2.6634333e+03 - 4.7651346e+03 -7.4460379e+02 2.6530450e+03 - 4.7852094e+03 -6.8280415e+02 2.6433829e+03 - 4.8033719e+03 -6.2212184e+02 2.6344611e+03 - 4.8197016e+03 -5.6245106e+02 2.6262909e+03 - 4.8342698e+03 -5.0368891e+02 2.6188812e+03 - 4.8471399e+03 -4.4573532e+02 2.6122390e+03 - 4.8583680e+03 -3.8849298e+02 2.6063694e+03 - 4.8680029e+03 -3.3186709e+02 2.6012766e+03 - 4.8760863e+03 -2.7576512e+02 2.5969634e+03 - 4.8826531e+03 -2.2009660e+02 2.5934321e+03 - 4.8877315e+03 -1.6477272e+02 2.5906842e+03 - 4.8913435e+03 -1.0970611e+02 2.5887208e+03 - 4.8935045e+03 -5.4810416e+01 2.5875425e+03 - 4.8942238e+03 0.0000000e+00 2.5871496e+03 - 4.9300998e+03 -4.8134273e-09 2.5072649e+03 - 4.9293898e+03 5.4563967e+01 2.5076633e+03 - 4.9272566e+03 1.0921397e+02 2.5088582e+03 - 4.9236907e+03 1.6403641e+02 2.5108495e+03 - 4.9186766e+03 2.1911847e+02 2.5136369e+03 - 4.9121920e+03 2.7454847e+02 2.5172198e+03 - 4.9042081e+03 3.3041623e+02 2.5215973e+03 - 4.8946894e+03 3.8681345e+02 2.5267679e+03 - 4.8835935e+03 4.4383402e+02 2.5327295e+03 - 4.8708706e+03 5.0157434e+02 2.5394791e+03 - 4.8564635e+03 5.6013363e+02 2.5470126e+03 - 4.8403073e+03 6.1961413e+02 2.5553243e+03 - 4.8223289e+03 6.8012133e+02 2.5644067e+03 - 4.8024468e+03 7.4176399e+02 2.5742500e+03 - 4.7805711e+03 8.0465426e+02 2.5848415e+03 - 4.7566026e+03 8.6890745e+02 2.5961652e+03 - 4.7304336e+03 9.3464181e+02 2.6082008e+03 - 4.7019470e+03 1.0019781e+03 2.6209235e+03 - 4.6710168e+03 1.0710387e+03 2.6343024e+03 - 4.6375085e+03 1.1419468e+03 2.6483004e+03 - 4.6012795e+03 1.2148250e+03 2.6628725e+03 - 4.5621800e+03 1.2897933e+03 2.6779650e+03 - 4.5200547e+03 1.3669674e+03 2.6935145e+03 - 4.4747443e+03 1.4464552e+03 2.7094466e+03 - 4.4260881e+03 1.5283540e+03 2.7256750e+03 - 4.3739274e+03 1.6127464e+03 2.7421003e+03 - 4.3181092e+03 1.6996958e+03 2.7586097e+03 - 4.2584912e+03 1.7892408e+03 2.7750760e+03 - 4.1949473e+03 1.8813905e+03 2.7913580e+03 - 4.1273741e+03 1.9761178e+03 2.8073009e+03 - 4.0556980e+03 2.0733540e+03 2.8227376e+03 - 3.9798824e+03 2.1729832e+03 2.8374908e+03 - 3.8999356e+03 2.2748371e+03 2.8513756e+03 - 3.8159174e+03 2.3786921e+03 2.8642039e+03 - 3.7279457e+03 2.4842670e+03 2.8757889e+03 - 3.6362004e+03 2.5912240e+03 2.8859508e+03 - 3.5409262e+03 2.6991714e+03 2.8945226e+03 - 3.4424320e+03 2.8076703e+03 2.9013566e+03 - 3.3410872e+03 2.9162432e+03 2.9063307e+03 - 3.2373148e+03 3.0243861e+03 2.9093531e+03 - 3.1315817e+03 3.1315817e+03 2.9103670e+03 - 3.0243861e+03 3.2373148e+03 2.9093531e+03 - 2.9162432e+03 3.3410872e+03 2.9063307e+03 - 2.8076703e+03 3.4424320e+03 2.9013566e+03 - 2.6991714e+03 3.5409262e+03 2.8945226e+03 - 2.5912240e+03 3.6362004e+03 2.8859508e+03 - 2.4842670e+03 3.7279457e+03 2.8757889e+03 - 2.3786921e+03 3.8159174e+03 2.8642039e+03 - 2.2748371e+03 3.8999356e+03 2.8513756e+03 - 2.1729832e+03 3.9798824e+03 2.8374908e+03 - 2.0733540e+03 4.0556980e+03 2.8227376e+03 - 1.9761178e+03 4.1273741e+03 2.8073009e+03 - 1.8813905e+03 4.1949473e+03 2.7913580e+03 - 1.7892408e+03 4.2584912e+03 2.7750760e+03 - 1.6996958e+03 4.3181092e+03 2.7586097e+03 - 1.6127464e+03 4.3739274e+03 2.7421003e+03 - 1.5283540e+03 4.4260881e+03 2.7256750e+03 - 1.4464552e+03 4.4747443e+03 2.7094466e+03 - 1.3669674e+03 4.5200547e+03 2.6935145e+03 - 1.2897933e+03 4.5621800e+03 2.6779650e+03 - 1.2148250e+03 4.6012795e+03 2.6628725e+03 - 1.1419468e+03 4.6375085e+03 2.6483004e+03 - 1.0710387e+03 4.6710168e+03 2.6343024e+03 - 1.0019781e+03 4.7019470e+03 2.6209235e+03 - 9.3464181e+02 4.7304336e+03 2.6082008e+03 - 8.6890745e+02 4.7566026e+03 2.5961652e+03 - 8.0465426e+02 4.7805711e+03 2.5848415e+03 - 7.4176399e+02 4.8024468e+03 2.5742500e+03 - 6.8012133e+02 4.8223289e+03 2.5644067e+03 - 6.1961413e+02 4.8403073e+03 2.5553243e+03 - 5.6013363e+02 4.8564635e+03 2.5470126e+03 - 5.0157434e+02 4.8708706e+03 2.5394791e+03 - 4.4383402e+02 4.8835935e+03 2.5327295e+03 - 3.8681345e+02 4.8946894e+03 2.5267679e+03 - 3.3041623e+02 4.9042081e+03 2.5215973e+03 - 2.7454847e+02 4.9121920e+03 2.5172198e+03 - 2.1911847e+02 4.9186766e+03 2.5136369e+03 - 1.6403641e+02 4.9236907e+03 2.5108495e+03 - 1.0921397e+02 4.9272566e+03 2.5088582e+03 - 5.4563967e+01 4.9293898e+03 2.5076633e+03 - -9.6268545e-09 4.9300998e+03 2.5072649e+03 - -5.4563967e+01 4.9293898e+03 2.5076633e+03 - -1.0921397e+02 4.9272566e+03 2.5088582e+03 - -1.6403641e+02 4.9236907e+03 2.5108495e+03 - -2.1911847e+02 4.9186766e+03 2.5136369e+03 - -2.7454847e+02 4.9121920e+03 2.5172198e+03 - -3.3041623e+02 4.9042081e+03 2.5215973e+03 - -3.8681345e+02 4.8946894e+03 2.5267679e+03 - -4.4383402e+02 4.8835935e+03 2.5327295e+03 - -5.0157434e+02 4.8708706e+03 2.5394791e+03 - -5.6013363e+02 4.8564635e+03 2.5470126e+03 - -6.1961413e+02 4.8403073e+03 2.5553243e+03 - -6.8012133e+02 4.8223289e+03 2.5644067e+03 - -7.4176399e+02 4.8024468e+03 2.5742500e+03 - -8.0465426e+02 4.7805711e+03 2.5848415e+03 - -8.6890745e+02 4.7566026e+03 2.5961652e+03 - -9.3464181e+02 4.7304336e+03 2.6082008e+03 - -1.0019781e+03 4.7019470e+03 2.6209235e+03 - -1.0710387e+03 4.6710168e+03 2.6343024e+03 - -1.1419468e+03 4.6375085e+03 2.6483004e+03 - -1.2148250e+03 4.6012795e+03 2.6628725e+03 - -1.2897933e+03 4.5621800e+03 2.6779650e+03 - -1.3669674e+03 4.5200547e+03 2.6935145e+03 - -1.4464552e+03 4.4747443e+03 2.7094466e+03 - -1.5283540e+03 4.4260881e+03 2.7256750e+03 - -1.6127464e+03 4.3739274e+03 2.7421003e+03 - -1.6996958e+03 4.3181092e+03 2.7586097e+03 - -1.7892408e+03 4.2584912e+03 2.7750760e+03 - -1.8813905e+03 4.1949473e+03 2.7913580e+03 - -1.9761178e+03 4.1273741e+03 2.8073009e+03 - -2.0733540e+03 4.0556980e+03 2.8227376e+03 - -2.1729832e+03 3.9798824e+03 2.8374908e+03 - -2.2748371e+03 3.8999356e+03 2.8513756e+03 - -2.3786921e+03 3.8159174e+03 2.8642039e+03 - -2.4842670e+03 3.7279457e+03 2.8757889e+03 - -2.5912240e+03 3.6362004e+03 2.8859508e+03 - -2.6991714e+03 3.5409262e+03 2.8945226e+03 - -2.8076703e+03 3.4424320e+03 2.9013566e+03 - -2.9162432e+03 3.3410872e+03 2.9063307e+03 - -3.0243861e+03 3.2373148e+03 2.9093531e+03 - -3.1315817e+03 3.1315817e+03 2.9103670e+03 - -3.2373148e+03 3.0243861e+03 2.9093531e+03 - -3.3410872e+03 2.9162432e+03 2.9063307e+03 - -3.4424320e+03 2.8076703e+03 2.9013566e+03 - -3.5409262e+03 2.6991714e+03 2.8945226e+03 - -3.6362004e+03 2.5912240e+03 2.8859508e+03 - -3.7279457e+03 2.4842670e+03 2.8757889e+03 - -3.8159174e+03 2.3786921e+03 2.8642039e+03 - -3.8999356e+03 2.2748371e+03 2.8513756e+03 - -3.9798824e+03 2.1729832e+03 2.8374908e+03 - -4.0556980e+03 2.0733540e+03 2.8227376e+03 - -4.1273741e+03 1.9761178e+03 2.8073009e+03 - -4.1949473e+03 1.8813905e+03 2.7913580e+03 - -4.2584912e+03 1.7892408e+03 2.7750760e+03 - -4.3181092e+03 1.6996958e+03 2.7586097e+03 - -4.3739274e+03 1.6127464e+03 2.7421003e+03 - -4.4260881e+03 1.5283540e+03 2.7256750e+03 - -4.4747443e+03 1.4464552e+03 2.7094466e+03 - -4.5200547e+03 1.3669674e+03 2.6935145e+03 - -4.5621800e+03 1.2897933e+03 2.6779650e+03 - -4.6012795e+03 1.2148250e+03 2.6628725e+03 - -4.6375085e+03 1.1419468e+03 2.6483004e+03 - -4.6710168e+03 1.0710387e+03 2.6343024e+03 - -4.7019470e+03 1.0019781e+03 2.6209235e+03 - -4.7304336e+03 9.3464181e+02 2.6082008e+03 - -4.7566026e+03 8.6890745e+02 2.5961652e+03 - -4.7805711e+03 8.0465426e+02 2.5848415e+03 - -4.8024468e+03 7.4176399e+02 2.5742500e+03 - -4.8223289e+03 6.8012133e+02 2.5644067e+03 - -4.8403073e+03 6.1961413e+02 2.5553243e+03 - -4.8564635e+03 5.6013363e+02 2.5470126e+03 - -4.8708706e+03 5.0157434e+02 2.5394791e+03 - -4.8835935e+03 4.4383402e+02 2.5327295e+03 - -4.8946894e+03 3.8681345e+02 2.5267679e+03 - -4.9042081e+03 3.3041623e+02 2.5215973e+03 - -4.9121920e+03 2.7454847e+02 2.5172198e+03 - -4.9186766e+03 2.1911847e+02 2.5136369e+03 - -4.9236907e+03 1.6403641e+02 2.5108495e+03 - -4.9272566e+03 1.0921397e+02 2.5088582e+03 - -4.9293898e+03 5.4563967e+01 2.5076633e+03 - -4.9300998e+03 0.0000000e+00 2.5072649e+03 - -4.9293898e+03 -5.4563967e+01 2.5076633e+03 - -4.9272566e+03 -1.0921397e+02 2.5088582e+03 - -4.9236907e+03 -1.6403641e+02 2.5108495e+03 - -4.9186766e+03 -2.1911847e+02 2.5136369e+03 - -4.9121920e+03 -2.7454847e+02 2.5172198e+03 - -4.9042081e+03 -3.3041623e+02 2.5215973e+03 - -4.8946894e+03 -3.8681345e+02 2.5267679e+03 - -4.8835935e+03 -4.4383402e+02 2.5327295e+03 - -4.8708706e+03 -5.0157434e+02 2.5394791e+03 - -4.8564635e+03 -5.6013363e+02 2.5470126e+03 - -4.8403073e+03 -6.1961413e+02 2.5553243e+03 - -4.8223289e+03 -6.8012133e+02 2.5644067e+03 - -4.8024468e+03 -7.4176399e+02 2.5742500e+03 - -4.7805711e+03 -8.0465426e+02 2.5848415e+03 - -4.7566026e+03 -8.6890745e+02 2.5961652e+03 - -4.7304336e+03 -9.3464181e+02 2.6082008e+03 - -4.7019470e+03 -1.0019781e+03 2.6209235e+03 - -4.6710168e+03 -1.0710387e+03 2.6343024e+03 - -4.6375085e+03 -1.1419468e+03 2.6483004e+03 - -4.6012795e+03 -1.2148250e+03 2.6628725e+03 - -4.5621800e+03 -1.2897933e+03 2.6779650e+03 - -4.5200547e+03 -1.3669674e+03 2.6935145e+03 - -4.4747443e+03 -1.4464552e+03 2.7094466e+03 - -4.4260881e+03 -1.5283540e+03 2.7256750e+03 - -4.3739274e+03 -1.6127464e+03 2.7421003e+03 - -4.3181092e+03 -1.6996958e+03 2.7586097e+03 - -4.2584912e+03 -1.7892408e+03 2.7750760e+03 - -4.1949473e+03 -1.8813905e+03 2.7913580e+03 - -4.1273741e+03 -1.9761178e+03 2.8073009e+03 - -4.0556980e+03 -2.0733540e+03 2.8227376e+03 - -3.9798824e+03 -2.1729832e+03 2.8374908e+03 - -3.8999356e+03 -2.2748371e+03 2.8513756e+03 - -3.8159174e+03 -2.3786921e+03 2.8642039e+03 - -3.7279457e+03 -2.4842670e+03 2.8757889e+03 - -3.6362004e+03 -2.5912240e+03 2.8859508e+03 - -3.5409262e+03 -2.6991714e+03 2.8945226e+03 - -3.4424320e+03 -2.8076703e+03 2.9013566e+03 - -3.3410872e+03 -2.9162432e+03 2.9063307e+03 - -3.2373148e+03 -3.0243861e+03 2.9093531e+03 - -3.1315817e+03 -3.1315817e+03 2.9103670e+03 - -3.0243861e+03 -3.2373148e+03 2.9093531e+03 - -2.9162432e+03 -3.3410872e+03 2.9063307e+03 - -2.8076703e+03 -3.4424320e+03 2.9013566e+03 - -2.6991714e+03 -3.5409262e+03 2.8945226e+03 - -2.5912240e+03 -3.6362004e+03 2.8859508e+03 - -2.4842670e+03 -3.7279457e+03 2.8757889e+03 - -2.3786921e+03 -3.8159174e+03 2.8642039e+03 - -2.2748371e+03 -3.8999356e+03 2.8513756e+03 - -2.1729832e+03 -3.9798824e+03 2.8374908e+03 - -2.0733540e+03 -4.0556980e+03 2.8227376e+03 - -1.9761178e+03 -4.1273741e+03 2.8073009e+03 - -1.8813905e+03 -4.1949473e+03 2.7913580e+03 - -1.7892408e+03 -4.2584912e+03 2.7750760e+03 - -1.6996958e+03 -4.3181092e+03 2.7586097e+03 - -1.6127464e+03 -4.3739274e+03 2.7421003e+03 - -1.5283540e+03 -4.4260881e+03 2.7256750e+03 - -1.4464552e+03 -4.4747443e+03 2.7094466e+03 - -1.3669674e+03 -4.5200547e+03 2.6935145e+03 - -1.2897933e+03 -4.5621800e+03 2.6779650e+03 - -1.2148250e+03 -4.6012795e+03 2.6628725e+03 - -1.1419468e+03 -4.6375085e+03 2.6483004e+03 - -1.0710387e+03 -4.6710168e+03 2.6343024e+03 - -1.0019781e+03 -4.7019470e+03 2.6209235e+03 - -9.3464181e+02 -4.7304336e+03 2.6082008e+03 - -8.6890745e+02 -4.7566026e+03 2.5961652e+03 - -8.0465426e+02 -4.7805711e+03 2.5848415e+03 - -7.4176399e+02 -4.8024468e+03 2.5742500e+03 - -6.8012133e+02 -4.8223289e+03 2.5644067e+03 - -6.1961413e+02 -4.8403073e+03 2.5553243e+03 - -5.6013363e+02 -4.8564635e+03 2.5470126e+03 - -5.0157434e+02 -4.8708706e+03 2.5394791e+03 - -4.4383402e+02 -4.8835935e+03 2.5327295e+03 - -3.8681345e+02 -4.8946894e+03 2.5267679e+03 - -3.3041623e+02 -4.9042081e+03 2.5215973e+03 - -2.7454847e+02 -4.9121920e+03 2.5172198e+03 - -2.1911847e+02 -4.9186766e+03 2.5136369e+03 - -1.6403641e+02 -4.9236907e+03 2.5108495e+03 - -1.0921397e+02 -4.9272566e+03 2.5088582e+03 - -5.4563967e+01 -4.9293898e+03 2.5076633e+03 - 4.8134273e-09 -4.9300998e+03 2.5072649e+03 - 5.4563967e+01 -4.9293898e+03 2.5076633e+03 - 1.0921397e+02 -4.9272566e+03 2.5088582e+03 - 1.6403641e+02 -4.9236907e+03 2.5108495e+03 - 2.1911847e+02 -4.9186766e+03 2.5136369e+03 - 2.7454847e+02 -4.9121920e+03 2.5172198e+03 - 3.3041623e+02 -4.9042081e+03 2.5215973e+03 - 3.8681345e+02 -4.8946894e+03 2.5267679e+03 - 4.4383402e+02 -4.8835935e+03 2.5327295e+03 - 5.0157434e+02 -4.8708706e+03 2.5394791e+03 - 5.6013363e+02 -4.8564635e+03 2.5470126e+03 - 6.1961413e+02 -4.8403073e+03 2.5553243e+03 - 6.8012133e+02 -4.8223289e+03 2.5644067e+03 - 7.4176399e+02 -4.8024468e+03 2.5742500e+03 - 8.0465426e+02 -4.7805711e+03 2.5848415e+03 - 8.6890745e+02 -4.7566026e+03 2.5961652e+03 - 9.3464181e+02 -4.7304336e+03 2.6082008e+03 - 1.0019781e+03 -4.7019470e+03 2.6209235e+03 - 1.0710387e+03 -4.6710168e+03 2.6343024e+03 - 1.1419468e+03 -4.6375085e+03 2.6483004e+03 - 1.2148250e+03 -4.6012795e+03 2.6628725e+03 - 1.2897933e+03 -4.5621800e+03 2.6779650e+03 - 1.3669674e+03 -4.5200547e+03 2.6935145e+03 - 1.4464552e+03 -4.4747443e+03 2.7094466e+03 - 1.5283540e+03 -4.4260881e+03 2.7256750e+03 - 1.6127464e+03 -4.3739274e+03 2.7421003e+03 - 1.6996958e+03 -4.3181092e+03 2.7586097e+03 - 1.7892408e+03 -4.2584912e+03 2.7750760e+03 - 1.8813905e+03 -4.1949473e+03 2.7913580e+03 - 1.9761178e+03 -4.1273741e+03 2.8073009e+03 - 2.0733540e+03 -4.0556980e+03 2.8227376e+03 - 2.1729832e+03 -3.9798824e+03 2.8374908e+03 - 2.2748371e+03 -3.8999356e+03 2.8513756e+03 - 2.3786921e+03 -3.8159174e+03 2.8642039e+03 - 2.4842670e+03 -3.7279457e+03 2.8757889e+03 - 2.5912240e+03 -3.6362004e+03 2.8859508e+03 - 2.6991714e+03 -3.5409262e+03 2.8945226e+03 - 2.8076703e+03 -3.4424320e+03 2.9013566e+03 - 2.9162432e+03 -3.3410872e+03 2.9063307e+03 - 3.0243861e+03 -3.2373148e+03 2.9093531e+03 - 3.1315817e+03 -3.1315817e+03 2.9103670e+03 - 3.2373148e+03 -3.0243861e+03 2.9093531e+03 - 3.3410872e+03 -2.9162432e+03 2.9063307e+03 - 3.4424320e+03 -2.8076703e+03 2.9013566e+03 - 3.5409262e+03 -2.6991714e+03 2.8945226e+03 - 3.6362004e+03 -2.5912240e+03 2.8859508e+03 - 3.7279457e+03 -2.4842670e+03 2.8757889e+03 - 3.8159174e+03 -2.3786921e+03 2.8642039e+03 - 3.8999356e+03 -2.2748371e+03 2.8513756e+03 - 3.9798824e+03 -2.1729832e+03 2.8374908e+03 - 4.0556980e+03 -2.0733540e+03 2.8227376e+03 - 4.1273741e+03 -1.9761178e+03 2.8073009e+03 - 4.1949473e+03 -1.8813905e+03 2.7913580e+03 - 4.2584912e+03 -1.7892408e+03 2.7750760e+03 - 4.3181092e+03 -1.6996958e+03 2.7586097e+03 - 4.3739274e+03 -1.6127464e+03 2.7421003e+03 - 4.4260881e+03 -1.5283540e+03 2.7256750e+03 - 4.4747443e+03 -1.4464552e+03 2.7094466e+03 - 4.5200547e+03 -1.3669674e+03 2.6935145e+03 - 4.5621800e+03 -1.2897933e+03 2.6779650e+03 - 4.6012795e+03 -1.2148250e+03 2.6628725e+03 - 4.6375085e+03 -1.1419468e+03 2.6483004e+03 - 4.6710168e+03 -1.0710387e+03 2.6343024e+03 - 4.7019470e+03 -1.0019781e+03 2.6209235e+03 - 4.7304336e+03 -9.3464181e+02 2.6082008e+03 - 4.7566026e+03 -8.6890745e+02 2.5961652e+03 - 4.7805711e+03 -8.0465426e+02 2.5848415e+03 - 4.8024468e+03 -7.4176399e+02 2.5742500e+03 - 4.8223289e+03 -6.8012133e+02 2.5644067e+03 - 4.8403073e+03 -6.1961413e+02 2.5553243e+03 - 4.8564635e+03 -5.6013363e+02 2.5470126e+03 - 4.8708706e+03 -5.0157434e+02 2.5394791e+03 - 4.8835935e+03 -4.4383402e+02 2.5327295e+03 - 4.8946894e+03 -3.8681345e+02 2.5267679e+03 - 4.9042081e+03 -3.3041623e+02 2.5215973e+03 - 4.9121920e+03 -2.7454847e+02 2.5172198e+03 - 4.9186766e+03 -2.1911847e+02 2.5136369e+03 - 4.9236907e+03 -1.6403641e+02 2.5108495e+03 - 4.9272566e+03 -1.0921397e+02 2.5088582e+03 - 4.9293898e+03 -5.4563967e+01 2.5076633e+03 - 4.9300998e+03 9.6268545e-09 2.5072649e+03 - 4.9654513e+03 4.8134273e-09 2.4242224e+03 - 4.9647512e+03 5.4311660e+01 2.4246251e+03 - 4.9626476e+03 1.0871000e+02 2.4258334e+03 - 4.9591310e+03 1.6328213e+02 2.4278471e+03 - 4.9541856e+03 2.1811594e+02 2.4306664e+03 - 4.9477887e+03 2.7330059e+02 2.4342910e+03 - 4.9399113e+03 3.2892685e+02 2.4387209e+03 - 4.9305173e+03 3.8508749e+02 2.4439552e+03 - 4.9195635e+03 4.4187770e+02 2.4499927e+03 - 4.9069994e+03 4.9939539e+02 2.4568317e+03 - 4.8927666e+03 5.5774157e+02 2.4644691e+03 - 4.8767988e+03 6.1702059e+02 2.4729006e+03 - 4.8590213e+03 6.7734038e+02 2.4821201e+03 - 4.8393506e+03 7.3881267e+02 2.4921195e+03 - 4.8176942e+03 8.0155294e+02 2.5028878e+03 - 4.7939501e+03 8.6568050e+02 2.5144107e+03 - 4.7680070e+03 9.3131815e+02 2.5266700e+03 - 4.7397434e+03 9.9859187e+02 2.5396425e+03 - 4.7090285e+03 1.0676301e+03 2.5532995e+03 - 4.6757217e+03 1.1385628e+03 2.5676053e+03 - 4.6396735e+03 1.2115201e+03 2.5825166e+03 - 4.6007264e+03 1.2866307e+03 2.5979812e+03 - 4.5587157e+03 1.3640192e+03 2.6139364e+03 - 4.5134719e+03 1.4438039e+03 2.6303085e+03 - 4.4648228e+03 1.5260927e+03 2.6470106e+03 - 4.4125971e+03 1.6109793e+03 2.6639425e+03 - 4.3566280e+03 1.6985381e+03 2.6809889e+03 - 4.2967587e+03 1.7888192e+03 2.6980194e+03 - 4.2328484e+03 1.8818417e+03 2.7148880e+03 - 4.1647787e+03 1.9775875e+03 2.7314336e+03 - 4.0924618e+03 2.0759948e+03 2.7474810e+03 - 4.0158485e+03 2.1769517e+03 2.7628433e+03 - 3.9349366e+03 2.2802904e+03 2.7773246e+03 - 3.8497789e+03 2.3857834e+03 2.7907244e+03 - 3.7604902e+03 2.4931407e+03 2.8028427e+03 - 3.6672528e+03 2.6020100e+03 2.8134858e+03 - 3.5703193e+03 2.7119802e+03 2.8224736e+03 - 3.4700125e+03 2.8225874e+03 2.8296459e+03 - 3.3667215e+03 2.9333249e+03 2.8348699e+03 - 3.2608949e+03 3.0436561e+03 2.8380457e+03 - 3.1530294e+03 3.1530294e+03 2.8391113e+03 - 3.0436561e+03 3.2608949e+03 2.8380457e+03 - 2.9333249e+03 3.3667215e+03 2.8348699e+03 - 2.8225874e+03 3.4700125e+03 2.8296459e+03 - 2.7119802e+03 3.5703193e+03 2.8224736e+03 - 2.6020100e+03 3.6672528e+03 2.8134858e+03 - 2.4931407e+03 3.7604902e+03 2.8028427e+03 - 2.3857834e+03 3.8497789e+03 2.7907244e+03 - 2.2802904e+03 3.9349366e+03 2.7773246e+03 - 2.1769517e+03 4.0158485e+03 2.7628433e+03 - 2.0759948e+03 4.0924618e+03 2.7474810e+03 - 1.9775875e+03 4.1647787e+03 2.7314336e+03 - 1.8818417e+03 4.2328484e+03 2.7148880e+03 - 1.7888192e+03 4.2967587e+03 2.6980194e+03 - 1.6985381e+03 4.3566280e+03 2.6809889e+03 - 1.6109793e+03 4.4125971e+03 2.6639425e+03 - 1.5260927e+03 4.4648228e+03 2.6470106e+03 - 1.4438039e+03 4.5134719e+03 2.6303085e+03 - 1.3640192e+03 4.5587157e+03 2.6139364e+03 - 1.2866307e+03 4.6007264e+03 2.5979812e+03 - 1.2115201e+03 4.6396735e+03 2.5825166e+03 - 1.1385628e+03 4.6757217e+03 2.5676053e+03 - 1.0676301e+03 4.7090285e+03 2.5532995e+03 - 9.9859187e+02 4.7397434e+03 2.5396425e+03 - 9.3131815e+02 4.7680070e+03 2.5266700e+03 - 8.6568050e+02 4.7939501e+03 2.5144107e+03 - 8.0155294e+02 4.8176942e+03 2.5028878e+03 - 7.3881267e+02 4.8393506e+03 2.4921195e+03 - 6.7734038e+02 4.8590213e+03 2.4821201e+03 - 6.1702059e+02 4.8767988e+03 2.4729006e+03 - 5.5774157e+02 4.8927666e+03 2.4644691e+03 - 4.9939539e+02 4.9069994e+03 2.4568317e+03 - 4.4187770e+02 4.9195635e+03 2.4499927e+03 - 3.8508749e+02 4.9305173e+03 2.4439552e+03 - 3.2892685e+02 4.9399113e+03 2.4387209e+03 - 2.7330059e+02 4.9477887e+03 2.4342910e+03 - 2.1811594e+02 4.9541856e+03 2.4306664e+03 - 1.6328213e+02 4.9591310e+03 2.4278471e+03 - 1.0871000e+02 4.9626476e+03 2.4258334e+03 - 5.4311660e+01 4.9647512e+03 2.4246251e+03 - 0.0000000e+00 4.9654513e+03 2.4242224e+03 - -5.4311660e+01 4.9647512e+03 2.4246251e+03 - -1.0871000e+02 4.9626476e+03 2.4258334e+03 - -1.6328213e+02 4.9591310e+03 2.4278471e+03 - -2.1811594e+02 4.9541856e+03 2.4306664e+03 - -2.7330059e+02 4.9477887e+03 2.4342910e+03 - -3.2892685e+02 4.9399113e+03 2.4387209e+03 - -3.8508749e+02 4.9305173e+03 2.4439552e+03 - -4.4187770e+02 4.9195635e+03 2.4499927e+03 - -4.9939539e+02 4.9069994e+03 2.4568317e+03 - -5.5774157e+02 4.8927666e+03 2.4644691e+03 - -6.1702059e+02 4.8767988e+03 2.4729006e+03 - -6.7734038e+02 4.8590213e+03 2.4821201e+03 - -7.3881267e+02 4.8393506e+03 2.4921195e+03 - -8.0155294e+02 4.8176942e+03 2.5028878e+03 - -8.6568050e+02 4.7939501e+03 2.5144107e+03 - -9.3131815e+02 4.7680070e+03 2.5266700e+03 - -9.9859187e+02 4.7397434e+03 2.5396425e+03 - -1.0676301e+03 4.7090285e+03 2.5532995e+03 - -1.1385628e+03 4.6757217e+03 2.5676053e+03 - -1.2115201e+03 4.6396735e+03 2.5825166e+03 - -1.2866307e+03 4.6007264e+03 2.5979812e+03 - -1.3640192e+03 4.5587157e+03 2.6139364e+03 - -1.4438039e+03 4.5134719e+03 2.6303085e+03 - -1.5260927e+03 4.4648228e+03 2.6470106e+03 - -1.6109793e+03 4.4125971e+03 2.6639425e+03 - -1.6985381e+03 4.3566280e+03 2.6809889e+03 - -1.7888192e+03 4.2967587e+03 2.6980194e+03 - -1.8818417e+03 4.2328484e+03 2.7148880e+03 - -1.9775875e+03 4.1647787e+03 2.7314336e+03 - -2.0759948e+03 4.0924618e+03 2.7474810e+03 - -2.1769517e+03 4.0158485e+03 2.7628433e+03 - -2.2802904e+03 3.9349366e+03 2.7773246e+03 - -2.3857834e+03 3.8497789e+03 2.7907244e+03 - -2.4931407e+03 3.7604902e+03 2.8028427e+03 - -2.6020100e+03 3.6672528e+03 2.8134858e+03 - -2.7119802e+03 3.5703193e+03 2.8224736e+03 - -2.8225874e+03 3.4700125e+03 2.8296459e+03 - -2.9333249e+03 3.3667215e+03 2.8348699e+03 - -3.0436561e+03 3.2608949e+03 2.8380457e+03 - -3.1530294e+03 3.1530294e+03 2.8391113e+03 - -3.2608949e+03 3.0436561e+03 2.8380457e+03 - -3.3667215e+03 2.9333249e+03 2.8348699e+03 - -3.4700125e+03 2.8225874e+03 2.8296459e+03 - -3.5703193e+03 2.7119802e+03 2.8224736e+03 - -3.6672528e+03 2.6020100e+03 2.8134858e+03 - -3.7604902e+03 2.4931407e+03 2.8028427e+03 - -3.8497789e+03 2.3857834e+03 2.7907244e+03 - -3.9349366e+03 2.2802904e+03 2.7773246e+03 - -4.0158485e+03 2.1769517e+03 2.7628433e+03 - -4.0924618e+03 2.0759948e+03 2.7474810e+03 - -4.1647787e+03 1.9775875e+03 2.7314336e+03 - -4.2328484e+03 1.8818417e+03 2.7148880e+03 - -4.2967587e+03 1.7888192e+03 2.6980194e+03 - -4.3566280e+03 1.6985381e+03 2.6809889e+03 - -4.4125971e+03 1.6109793e+03 2.6639425e+03 - -4.4648228e+03 1.5260927e+03 2.6470106e+03 - -4.5134719e+03 1.4438039e+03 2.6303085e+03 - -4.5587157e+03 1.3640192e+03 2.6139364e+03 - -4.6007264e+03 1.2866307e+03 2.5979812e+03 - -4.6396735e+03 1.2115201e+03 2.5825166e+03 - -4.6757217e+03 1.1385628e+03 2.5676053e+03 - -4.7090285e+03 1.0676301e+03 2.5532995e+03 - -4.7397434e+03 9.9859187e+02 2.5396425e+03 - -4.7680070e+03 9.3131815e+02 2.5266700e+03 - -4.7939501e+03 8.6568050e+02 2.5144107e+03 - -4.8176942e+03 8.0155294e+02 2.5028878e+03 - -4.8393506e+03 7.3881267e+02 2.4921195e+03 - -4.8590213e+03 6.7734038e+02 2.4821201e+03 - -4.8767988e+03 6.1702059e+02 2.4729006e+03 - -4.8927666e+03 5.5774157e+02 2.4644691e+03 - -4.9069994e+03 4.9939539e+02 2.4568317e+03 - -4.9195635e+03 4.4187770e+02 2.4499927e+03 - -4.9305173e+03 3.8508749e+02 2.4439552e+03 - -4.9399113e+03 3.2892685e+02 2.4387209e+03 - -4.9477887e+03 2.7330059e+02 2.4342910e+03 - -4.9541856e+03 2.1811594e+02 2.4306664e+03 - -4.9591310e+03 1.6328213e+02 2.4278471e+03 - -4.9626476e+03 1.0871000e+02 2.4258334e+03 - -4.9647512e+03 5.4311660e+01 2.4246251e+03 - -4.9654513e+03 -9.6268545e-09 2.4242224e+03 - -4.9647512e+03 -5.4311660e+01 2.4246251e+03 - -4.9626476e+03 -1.0871000e+02 2.4258334e+03 - -4.9591310e+03 -1.6328213e+02 2.4278471e+03 - -4.9541856e+03 -2.1811594e+02 2.4306664e+03 - -4.9477887e+03 -2.7330059e+02 2.4342910e+03 - -4.9399113e+03 -3.2892685e+02 2.4387209e+03 - -4.9305173e+03 -3.8508749e+02 2.4439552e+03 - -4.9195635e+03 -4.4187770e+02 2.4499927e+03 - -4.9069994e+03 -4.9939539e+02 2.4568317e+03 - -4.8927666e+03 -5.5774157e+02 2.4644691e+03 - -4.8767988e+03 -6.1702059e+02 2.4729006e+03 - -4.8590213e+03 -6.7734038e+02 2.4821201e+03 - -4.8393506e+03 -7.3881267e+02 2.4921195e+03 - -4.8176942e+03 -8.0155294e+02 2.5028878e+03 - -4.7939501e+03 -8.6568050e+02 2.5144107e+03 - -4.7680070e+03 -9.3131815e+02 2.5266700e+03 - -4.7397434e+03 -9.9859187e+02 2.5396425e+03 - -4.7090285e+03 -1.0676301e+03 2.5532995e+03 - -4.6757217e+03 -1.1385628e+03 2.5676053e+03 - -4.6396735e+03 -1.2115201e+03 2.5825166e+03 - -4.6007264e+03 -1.2866307e+03 2.5979812e+03 - -4.5587157e+03 -1.3640192e+03 2.6139364e+03 - -4.5134719e+03 -1.4438039e+03 2.6303085e+03 - -4.4648228e+03 -1.5260927e+03 2.6470106e+03 - -4.4125971e+03 -1.6109793e+03 2.6639425e+03 - -4.3566280e+03 -1.6985381e+03 2.6809889e+03 - -4.2967587e+03 -1.7888192e+03 2.6980194e+03 - -4.2328484e+03 -1.8818417e+03 2.7148880e+03 - -4.1647787e+03 -1.9775875e+03 2.7314336e+03 - -4.0924618e+03 -2.0759948e+03 2.7474810e+03 - -4.0158485e+03 -2.1769517e+03 2.7628433e+03 - -3.9349366e+03 -2.2802904e+03 2.7773246e+03 - -3.8497789e+03 -2.3857834e+03 2.7907244e+03 - -3.7604902e+03 -2.4931407e+03 2.8028427e+03 - -3.6672528e+03 -2.6020100e+03 2.8134858e+03 - -3.5703193e+03 -2.7119802e+03 2.8224736e+03 - -3.4700125e+03 -2.8225874e+03 2.8296459e+03 - -3.3667215e+03 -2.9333249e+03 2.8348699e+03 - -3.2608949e+03 -3.0436561e+03 2.8380457e+03 - -3.1530294e+03 -3.1530294e+03 2.8391113e+03 - -3.0436561e+03 -3.2608949e+03 2.8380457e+03 - -2.9333249e+03 -3.3667215e+03 2.8348699e+03 - -2.8225874e+03 -3.4700125e+03 2.8296459e+03 - -2.7119802e+03 -3.5703193e+03 2.8224736e+03 - -2.6020100e+03 -3.6672528e+03 2.8134858e+03 - -2.4931407e+03 -3.7604902e+03 2.8028427e+03 - -2.3857834e+03 -3.8497789e+03 2.7907244e+03 - -2.2802904e+03 -3.9349366e+03 2.7773246e+03 - -2.1769517e+03 -4.0158485e+03 2.7628433e+03 - -2.0759948e+03 -4.0924618e+03 2.7474810e+03 - -1.9775875e+03 -4.1647787e+03 2.7314336e+03 - -1.8818417e+03 -4.2328484e+03 2.7148880e+03 - -1.7888192e+03 -4.2967587e+03 2.6980194e+03 - -1.6985381e+03 -4.3566280e+03 2.6809889e+03 - -1.6109793e+03 -4.4125971e+03 2.6639425e+03 - -1.5260927e+03 -4.4648228e+03 2.6470106e+03 - -1.4438039e+03 -4.5134719e+03 2.6303085e+03 - -1.3640192e+03 -4.5587157e+03 2.6139364e+03 - -1.2866307e+03 -4.6007264e+03 2.5979812e+03 - -1.2115201e+03 -4.6396735e+03 2.5825166e+03 - -1.1385628e+03 -4.6757217e+03 2.5676053e+03 - -1.0676301e+03 -4.7090285e+03 2.5532995e+03 - -9.9859187e+02 -4.7397434e+03 2.5396425e+03 - -9.3131815e+02 -4.7680070e+03 2.5266700e+03 - -8.6568050e+02 -4.7939501e+03 2.5144107e+03 - -8.0155294e+02 -4.8176942e+03 2.5028878e+03 - -7.3881267e+02 -4.8393506e+03 2.4921195e+03 - -6.7734038e+02 -4.8590213e+03 2.4821201e+03 - -6.1702059e+02 -4.8767988e+03 2.4729006e+03 - -5.5774157e+02 -4.8927666e+03 2.4644691e+03 - -4.9939539e+02 -4.9069994e+03 2.4568317e+03 - -4.4187770e+02 -4.9195635e+03 2.4499927e+03 - -3.8508749e+02 -4.9305173e+03 2.4439552e+03 - -3.2892685e+02 -4.9399113e+03 2.4387209e+03 - -2.7330059e+02 -4.9477887e+03 2.4342910e+03 - -2.1811594e+02 -4.9541856e+03 2.4306664e+03 - -1.6328213e+02 -4.9591310e+03 2.4278471e+03 - -1.0871000e+02 -4.9626476e+03 2.4258334e+03 - -5.4311660e+01 -4.9647512e+03 2.4246251e+03 - 0.0000000e+00 -4.9654513e+03 2.4242224e+03 - 5.4311660e+01 -4.9647512e+03 2.4246251e+03 - 1.0871000e+02 -4.9626476e+03 2.4258334e+03 - 1.6328213e+02 -4.9591310e+03 2.4278471e+03 - 2.1811594e+02 -4.9541856e+03 2.4306664e+03 - 2.7330059e+02 -4.9477887e+03 2.4342910e+03 - 3.2892685e+02 -4.9399113e+03 2.4387209e+03 - 3.8508749e+02 -4.9305173e+03 2.4439552e+03 - 4.4187770e+02 -4.9195635e+03 2.4499927e+03 - 4.9939539e+02 -4.9069994e+03 2.4568317e+03 - 5.5774157e+02 -4.8927666e+03 2.4644691e+03 - 6.1702059e+02 -4.8767988e+03 2.4729006e+03 - 6.7734038e+02 -4.8590213e+03 2.4821201e+03 - 7.3881267e+02 -4.8393506e+03 2.4921195e+03 - 8.0155294e+02 -4.8176942e+03 2.5028878e+03 - 8.6568050e+02 -4.7939501e+03 2.5144107e+03 - 9.3131815e+02 -4.7680070e+03 2.5266700e+03 - 9.9859187e+02 -4.7397434e+03 2.5396425e+03 - 1.0676301e+03 -4.7090285e+03 2.5532995e+03 - 1.1385628e+03 -4.6757217e+03 2.5676053e+03 - 1.2115201e+03 -4.6396735e+03 2.5825166e+03 - 1.2866307e+03 -4.6007264e+03 2.5979812e+03 - 1.3640192e+03 -4.5587157e+03 2.6139364e+03 - 1.4438039e+03 -4.5134719e+03 2.6303085e+03 - 1.5260927e+03 -4.4648228e+03 2.6470106e+03 - 1.6109793e+03 -4.4125971e+03 2.6639425e+03 - 1.6985381e+03 -4.3566280e+03 2.6809889e+03 - 1.7888192e+03 -4.2967587e+03 2.6980194e+03 - 1.8818417e+03 -4.2328484e+03 2.7148880e+03 - 1.9775875e+03 -4.1647787e+03 2.7314336e+03 - 2.0759948e+03 -4.0924618e+03 2.7474810e+03 - 2.1769517e+03 -4.0158485e+03 2.7628433e+03 - 2.2802904e+03 -3.9349366e+03 2.7773246e+03 - 2.3857834e+03 -3.8497789e+03 2.7907244e+03 - 2.4931407e+03 -3.7604902e+03 2.8028427e+03 - 2.6020100e+03 -3.6672528e+03 2.8134858e+03 - 2.7119802e+03 -3.5703193e+03 2.8224736e+03 - 2.8225874e+03 -3.4700125e+03 2.8296459e+03 - 2.9333249e+03 -3.3667215e+03 2.8348699e+03 - 3.0436561e+03 -3.2608949e+03 2.8380457e+03 - 3.1530294e+03 -3.1530294e+03 2.8391113e+03 - 3.2608949e+03 -3.0436561e+03 2.8380457e+03 - 3.3667215e+03 -2.9333249e+03 2.8348699e+03 - 3.4700125e+03 -2.8225874e+03 2.8296459e+03 - 3.5703193e+03 -2.7119802e+03 2.8224736e+03 - 3.6672528e+03 -2.6020100e+03 2.8134858e+03 - 3.7604902e+03 -2.4931407e+03 2.8028427e+03 - 3.8497789e+03 -2.3857834e+03 2.7907244e+03 - 3.9349366e+03 -2.2802904e+03 2.7773246e+03 - 4.0158485e+03 -2.1769517e+03 2.7628433e+03 - 4.0924618e+03 -2.0759948e+03 2.7474810e+03 - 4.1647787e+03 -1.9775875e+03 2.7314336e+03 - 4.2328484e+03 -1.8818417e+03 2.7148880e+03 - 4.2967587e+03 -1.7888192e+03 2.6980194e+03 - 4.3566280e+03 -1.6985381e+03 2.6809889e+03 - 4.4125971e+03 -1.6109793e+03 2.6639425e+03 - 4.4648228e+03 -1.5260927e+03 2.6470106e+03 - 4.5134719e+03 -1.4438039e+03 2.6303085e+03 - 4.5587157e+03 -1.3640192e+03 2.6139364e+03 - 4.6007264e+03 -1.2866307e+03 2.5979812e+03 - 4.6396735e+03 -1.2115201e+03 2.5825166e+03 - 4.6757217e+03 -1.1385628e+03 2.5676053e+03 - 4.7090285e+03 -1.0676301e+03 2.5532995e+03 - 4.7397434e+03 -9.9859187e+02 2.5396425e+03 - 4.7680070e+03 -9.3131815e+02 2.5266700e+03 - 4.7939501e+03 -8.6568050e+02 2.5144107e+03 - 4.8176942e+03 -8.0155294e+02 2.5028878e+03 - 4.8393506e+03 -7.3881267e+02 2.4921195e+03 - 4.8590213e+03 -6.7734038e+02 2.4821201e+03 - 4.8767988e+03 -6.1702059e+02 2.4729006e+03 - 4.8927666e+03 -5.5774157e+02 2.4644691e+03 - 4.9069994e+03 -4.9939539e+02 2.4568317e+03 - 4.9195635e+03 -4.4187770e+02 2.4499927e+03 - 4.9305173e+03 -3.8508749e+02 2.4439552e+03 - 4.9399113e+03 -3.2892685e+02 2.4387209e+03 - 4.9477887e+03 -2.7330059e+02 2.4342910e+03 - 4.9541856e+03 -2.1811594e+02 2.4306664e+03 - 4.9591310e+03 -1.6328213e+02 2.4278471e+03 - 4.9626476e+03 -1.0871000e+02 2.4258334e+03 - 4.9647512e+03 -5.4311660e+01 2.4246251e+03 - 4.9654513e+03 0.0000000e+00 2.4242224e+03 - 5.0002276e+03 -9.6268545e-09 2.3378643e+03 - 4.9995379e+03 5.4054530e+01 2.3382702e+03 - 4.9974658e+03 1.0819630e+02 2.3394879e+03 - 4.9940015e+03 1.6251299e+02 2.3415176e+03 - 4.9891290e+03 2.1709315e+02 2.3443598e+03 - 4.9828255e+03 2.7202666e+02 2.3480148e+03 - 4.9750615e+03 3.2740512e+02 2.3524830e+03 - 4.9658006e+03 3.8332231e+02 2.3577646e+03 - 4.9549988e+03 4.3987458e+02 2.3638593e+03 - 4.9426048e+03 4.9716128e+02 2.3707663e+03 - 4.9285593e+03 5.5528507e+02 2.3784840e+03 - 4.9127948e+03 6.1435231e+02 2.3870095e+03 - 4.8952349e+03 6.7447334e+02 2.3963383e+03 - 4.8757943e+03 7.3576267e+02 2.4064639e+03 - 4.8543782e+03 7.9833913e+02 2.4173773e+03 - 4.8308817e+03 8.6232589e+02 2.4290661e+03 - 4.8051899e+03 9.2785030e+02 2.4415140e+03 - 4.7771773e+03 9.9504359e+02 2.4547003e+03 - 4.7467081e+03 1.0640402e+03 2.4685980e+03 - 4.7136359e+03 1.1349770e+03 2.4831738e+03 - 4.6778042e+03 1.2079919e+03 2.4983863e+03 - 4.6390475e+03 1.2832223e+03 2.5141849e+03 - 4.5971917e+03 1.3608024e+03 2.5305084e+03 - 4.5520568e+03 1.4408610e+03 2.5472839e+03 - 4.5034587e+03 1.5235172e+03 2.5644249e+03 - 4.4512127e+03 1.6088766e+03 2.5818303e+03 - 4.3951377e+03 1.6970258e+03 2.5993834e+03 - 4.3350615e+03 1.7880267e+03 2.6169508e+03 - 4.2708271e+03 1.8819097e+03 2.6343819e+03 - 4.2023001e+03 1.9786669e+03 2.6515098e+03 - 4.1293770e+03 2.0782444e+03 2.6681516e+03 - 4.0519944e+03 2.1805354e+03 2.6841106e+03 - 3.9701382e+03 2.2853736e+03 2.6991798e+03 - 3.8838526e+03 2.3925279e+03 2.7131460e+03 - 3.7932486e+03 2.5016995e+03 2.7257953e+03 - 3.6985097e+03 2.6125218e+03 2.7369198e+03 - 3.5998963e+03 2.7245629e+03 2.7463252e+03 - 3.4977454e+03 2.8373327e+03 2.7538381e+03 - 3.3924670e+03 2.9502932e+03 2.7593143e+03 - 3.2845367e+03 3.0628729e+03 2.7626451e+03 - 3.1744830e+03 3.1744830e+03 2.7637630e+03 - 3.0628729e+03 3.2845367e+03 2.7626451e+03 - 2.9502932e+03 3.3924670e+03 2.7593143e+03 - 2.8373327e+03 3.4977454e+03 2.7538381e+03 - 2.7245629e+03 3.5998963e+03 2.7463252e+03 - 2.6125218e+03 3.6985097e+03 2.7369198e+03 - 2.5016995e+03 3.7932486e+03 2.7257953e+03 - 2.3925279e+03 3.8838526e+03 2.7131460e+03 - 2.2853736e+03 3.9701382e+03 2.6991798e+03 - 2.1805354e+03 4.0519944e+03 2.6841106e+03 - 2.0782444e+03 4.1293770e+03 2.6681516e+03 - 1.9786669e+03 4.2023001e+03 2.6515098e+03 - 1.8819097e+03 4.2708271e+03 2.6343819e+03 - 1.7880267e+03 4.3350615e+03 2.6169508e+03 - 1.6970258e+03 4.3951377e+03 2.5993834e+03 - 1.6088766e+03 4.4512127e+03 2.5818303e+03 - 1.5235172e+03 4.5034587e+03 2.5644249e+03 - 1.4408610e+03 4.5520568e+03 2.5472839e+03 - 1.3608024e+03 4.5971917e+03 2.5305084e+03 - 1.2832223e+03 4.6390475e+03 2.5141849e+03 - 1.2079919e+03 4.6778042e+03 2.4983863e+03 - 1.1349770e+03 4.7136359e+03 2.4831738e+03 - 1.0640402e+03 4.7467081e+03 2.4685980e+03 - 9.9504359e+02 4.7771773e+03 2.4547003e+03 - 9.2785030e+02 4.8051899e+03 2.4415140e+03 - 8.6232589e+02 4.8308817e+03 2.4290661e+03 - 7.9833913e+02 4.8543782e+03 2.4173773e+03 - 7.3576267e+02 4.8757943e+03 2.4064639e+03 - 6.7447334e+02 4.8952349e+03 2.3963383e+03 - 6.1435231e+02 4.9127948e+03 2.3870095e+03 - 5.5528507e+02 4.9285593e+03 2.3784840e+03 - 4.9716128e+02 4.9426048e+03 2.3707663e+03 - 4.3987458e+02 4.9549988e+03 2.3638593e+03 - 3.8332231e+02 4.9658006e+03 2.3577646e+03 - 3.2740512e+02 4.9750615e+03 2.3524830e+03 - 2.7202666e+02 4.9828255e+03 2.3480148e+03 - 2.1709315e+02 4.9891290e+03 2.3443598e+03 - 1.6251299e+02 4.9940015e+03 2.3415176e+03 - 1.0819630e+02 4.9974658e+03 2.3394879e+03 - 5.4054530e+01 4.9995379e+03 2.3382702e+03 - 4.8134273e-09 5.0002276e+03 2.3378643e+03 - -5.4054530e+01 4.9995379e+03 2.3382702e+03 - -1.0819630e+02 4.9974658e+03 2.3394879e+03 - -1.6251299e+02 4.9940015e+03 2.3415176e+03 - -2.1709315e+02 4.9891290e+03 2.3443598e+03 - -2.7202666e+02 4.9828255e+03 2.3480148e+03 - -3.2740512e+02 4.9750615e+03 2.3524830e+03 - -3.8332231e+02 4.9658006e+03 2.3577646e+03 - -4.3987458e+02 4.9549988e+03 2.3638593e+03 - -4.9716128e+02 4.9426048e+03 2.3707663e+03 - -5.5528507e+02 4.9285593e+03 2.3784840e+03 - -6.1435231e+02 4.9127948e+03 2.3870095e+03 - -6.7447334e+02 4.8952349e+03 2.3963383e+03 - -7.3576267e+02 4.8757943e+03 2.4064639e+03 - -7.9833913e+02 4.8543782e+03 2.4173773e+03 - -8.6232589e+02 4.8308817e+03 2.4290661e+03 - -9.2785030e+02 4.8051899e+03 2.4415140e+03 - -9.9504359e+02 4.7771773e+03 2.4547003e+03 - -1.0640402e+03 4.7467081e+03 2.4685980e+03 - -1.1349770e+03 4.7136359e+03 2.4831738e+03 - -1.2079919e+03 4.6778042e+03 2.4983863e+03 - -1.2832223e+03 4.6390475e+03 2.5141849e+03 - -1.3608024e+03 4.5971917e+03 2.5305084e+03 - -1.4408610e+03 4.5520568e+03 2.5472839e+03 - -1.5235172e+03 4.5034587e+03 2.5644249e+03 - -1.6088766e+03 4.4512127e+03 2.5818303e+03 - -1.6970258e+03 4.3951377e+03 2.5993834e+03 - -1.7880267e+03 4.3350615e+03 2.6169508e+03 - -1.8819097e+03 4.2708271e+03 2.6343819e+03 - -1.9786669e+03 4.2023001e+03 2.6515098e+03 - -2.0782444e+03 4.1293770e+03 2.6681516e+03 - -2.1805354e+03 4.0519944e+03 2.6841106e+03 - -2.2853736e+03 3.9701382e+03 2.6991798e+03 - -2.3925279e+03 3.8838526e+03 2.7131460e+03 - -2.5016995e+03 3.7932486e+03 2.7257953e+03 - -2.6125218e+03 3.6985097e+03 2.7369198e+03 - -2.7245629e+03 3.5998963e+03 2.7463252e+03 - -2.8373327e+03 3.4977454e+03 2.7538381e+03 - -2.9502932e+03 3.3924670e+03 2.7593143e+03 - -3.0628729e+03 3.2845367e+03 2.7626451e+03 - -3.1744830e+03 3.1744830e+03 2.7637630e+03 - -3.2845367e+03 3.0628729e+03 2.7626451e+03 - -3.3924670e+03 2.9502932e+03 2.7593143e+03 - -3.4977454e+03 2.8373327e+03 2.7538381e+03 - -3.5998963e+03 2.7245629e+03 2.7463252e+03 - -3.6985097e+03 2.6125218e+03 2.7369198e+03 - -3.7932486e+03 2.5016995e+03 2.7257953e+03 - -3.8838526e+03 2.3925279e+03 2.7131460e+03 - -3.9701382e+03 2.2853736e+03 2.6991798e+03 - -4.0519944e+03 2.1805354e+03 2.6841106e+03 - -4.1293770e+03 2.0782444e+03 2.6681516e+03 - -4.2023001e+03 1.9786669e+03 2.6515098e+03 - -4.2708271e+03 1.8819097e+03 2.6343819e+03 - -4.3350615e+03 1.7880267e+03 2.6169508e+03 - -4.3951377e+03 1.6970258e+03 2.5993834e+03 - -4.4512127e+03 1.6088766e+03 2.5818303e+03 - -4.5034587e+03 1.5235172e+03 2.5644249e+03 - -4.5520568e+03 1.4408610e+03 2.5472839e+03 - -4.5971917e+03 1.3608024e+03 2.5305084e+03 - -4.6390475e+03 1.2832223e+03 2.5141849e+03 - -4.6778042e+03 1.2079919e+03 2.4983863e+03 - -4.7136359e+03 1.1349770e+03 2.4831738e+03 - -4.7467081e+03 1.0640402e+03 2.4685980e+03 - -4.7771773e+03 9.9504359e+02 2.4547003e+03 - -4.8051899e+03 9.2785030e+02 2.4415140e+03 - -4.8308817e+03 8.6232589e+02 2.4290661e+03 - -4.8543782e+03 7.9833913e+02 2.4173773e+03 - -4.8757943e+03 7.3576267e+02 2.4064639e+03 - -4.8952349e+03 6.7447334e+02 2.3963383e+03 - -4.9127948e+03 6.1435231e+02 2.3870095e+03 - -4.9285593e+03 5.5528507e+02 2.3784840e+03 - -4.9426048e+03 4.9716128e+02 2.3707663e+03 - -4.9549988e+03 4.3987458e+02 2.3638593e+03 - -4.9658006e+03 3.8332231e+02 2.3577646e+03 - -4.9750615e+03 3.2740512e+02 2.3524830e+03 - -4.9828255e+03 2.7202666e+02 2.3480148e+03 - -4.9891290e+03 2.1709315e+02 2.3443598e+03 - -4.9940015e+03 1.6251299e+02 2.3415176e+03 - -4.9974658e+03 1.0819630e+02 2.3394879e+03 - -4.9995379e+03 5.4054530e+01 2.3382702e+03 - -5.0002276e+03 9.6268545e-09 2.3378643e+03 - -4.9995379e+03 -5.4054530e+01 2.3382702e+03 - -4.9974658e+03 -1.0819630e+02 2.3394879e+03 - -4.9940015e+03 -1.6251299e+02 2.3415176e+03 - -4.9891290e+03 -2.1709315e+02 2.3443598e+03 - -4.9828255e+03 -2.7202666e+02 2.3480148e+03 - -4.9750615e+03 -3.2740512e+02 2.3524830e+03 - -4.9658006e+03 -3.8332231e+02 2.3577646e+03 - -4.9549988e+03 -4.3987458e+02 2.3638593e+03 - -4.9426048e+03 -4.9716128e+02 2.3707663e+03 - -4.9285593e+03 -5.5528507e+02 2.3784840e+03 - -4.9127948e+03 -6.1435231e+02 2.3870095e+03 - -4.8952349e+03 -6.7447334e+02 2.3963383e+03 - -4.8757943e+03 -7.3576267e+02 2.4064639e+03 - -4.8543782e+03 -7.9833913e+02 2.4173773e+03 - -4.8308817e+03 -8.6232589e+02 2.4290661e+03 - -4.8051899e+03 -9.2785030e+02 2.4415140e+03 - -4.7771773e+03 -9.9504359e+02 2.4547003e+03 - -4.7467081e+03 -1.0640402e+03 2.4685980e+03 - -4.7136359e+03 -1.1349770e+03 2.4831738e+03 - -4.6778042e+03 -1.2079919e+03 2.4983863e+03 - -4.6390475e+03 -1.2832223e+03 2.5141849e+03 - -4.5971917e+03 -1.3608024e+03 2.5305084e+03 - -4.5520568e+03 -1.4408610e+03 2.5472839e+03 - -4.5034587e+03 -1.5235172e+03 2.5644249e+03 - -4.4512127e+03 -1.6088766e+03 2.5818303e+03 - -4.3951377e+03 -1.6970258e+03 2.5993834e+03 - -4.3350615e+03 -1.7880267e+03 2.6169508e+03 - -4.2708271e+03 -1.8819097e+03 2.6343819e+03 - -4.2023001e+03 -1.9786669e+03 2.6515098e+03 - -4.1293770e+03 -2.0782444e+03 2.6681516e+03 - -4.0519944e+03 -2.1805354e+03 2.6841106e+03 - -3.9701382e+03 -2.2853736e+03 2.6991798e+03 - -3.8838526e+03 -2.3925279e+03 2.7131460e+03 - -3.7932486e+03 -2.5016995e+03 2.7257953e+03 - -3.6985097e+03 -2.6125218e+03 2.7369198e+03 - -3.5998963e+03 -2.7245629e+03 2.7463252e+03 - -3.4977454e+03 -2.8373327e+03 2.7538381e+03 - -3.3924670e+03 -2.9502932e+03 2.7593143e+03 - -3.2845367e+03 -3.0628729e+03 2.7626451e+03 - -3.1744830e+03 -3.1744830e+03 2.7637630e+03 - -3.0628729e+03 -3.2845367e+03 2.7626451e+03 - -2.9502932e+03 -3.3924670e+03 2.7593143e+03 - -2.8373327e+03 -3.4977454e+03 2.7538381e+03 - -2.7245629e+03 -3.5998963e+03 2.7463252e+03 - -2.6125218e+03 -3.6985097e+03 2.7369198e+03 - -2.5016995e+03 -3.7932486e+03 2.7257953e+03 - -2.3925279e+03 -3.8838526e+03 2.7131460e+03 - -2.2853736e+03 -3.9701382e+03 2.6991798e+03 - -2.1805354e+03 -4.0519944e+03 2.6841106e+03 - -2.0782444e+03 -4.1293770e+03 2.6681516e+03 - -1.9786669e+03 -4.2023001e+03 2.6515098e+03 - -1.8819097e+03 -4.2708271e+03 2.6343819e+03 - -1.7880267e+03 -4.3350615e+03 2.6169508e+03 - -1.6970258e+03 -4.3951377e+03 2.5993834e+03 - -1.6088766e+03 -4.4512127e+03 2.5818303e+03 - -1.5235172e+03 -4.5034587e+03 2.5644249e+03 - -1.4408610e+03 -4.5520568e+03 2.5472839e+03 - -1.3608024e+03 -4.5971917e+03 2.5305084e+03 - -1.2832223e+03 -4.6390475e+03 2.5141849e+03 - -1.2079919e+03 -4.6778042e+03 2.4983863e+03 - -1.1349770e+03 -4.7136359e+03 2.4831738e+03 - -1.0640402e+03 -4.7467081e+03 2.4685980e+03 - -9.9504359e+02 -4.7771773e+03 2.4547003e+03 - -9.2785030e+02 -4.8051899e+03 2.4415140e+03 - -8.6232589e+02 -4.8308817e+03 2.4290661e+03 - -7.9833913e+02 -4.8543782e+03 2.4173773e+03 - -7.3576267e+02 -4.8757943e+03 2.4064639e+03 - -6.7447334e+02 -4.8952349e+03 2.3963383e+03 - -6.1435231e+02 -4.9127948e+03 2.3870095e+03 - -5.5528507e+02 -4.9285593e+03 2.3784840e+03 - -4.9716128e+02 -4.9426048e+03 2.3707663e+03 - -4.3987458e+02 -4.9549988e+03 2.3638593e+03 - -3.8332231e+02 -4.9658006e+03 2.3577646e+03 - -3.2740512e+02 -4.9750615e+03 2.3524830e+03 - -2.7202666e+02 -4.9828255e+03 2.3480148e+03 - -2.1709315e+02 -4.9891290e+03 2.3443598e+03 - -1.6251299e+02 -4.9940015e+03 2.3415176e+03 - -1.0819630e+02 -4.9974658e+03 2.3394879e+03 - -5.4054530e+01 -4.9995379e+03 2.3382702e+03 - -4.8134273e-09 -5.0002276e+03 2.3378643e+03 - 5.4054530e+01 -4.9995379e+03 2.3382702e+03 - 1.0819630e+02 -4.9974658e+03 2.3394879e+03 - 1.6251299e+02 -4.9940015e+03 2.3415176e+03 - 2.1709315e+02 -4.9891290e+03 2.3443598e+03 - 2.7202666e+02 -4.9828255e+03 2.3480148e+03 - 3.2740512e+02 -4.9750615e+03 2.3524830e+03 - 3.8332231e+02 -4.9658006e+03 2.3577646e+03 - 4.3987458e+02 -4.9549988e+03 2.3638593e+03 - 4.9716128e+02 -4.9426048e+03 2.3707663e+03 - 5.5528507e+02 -4.9285593e+03 2.3784840e+03 - 6.1435231e+02 -4.9127948e+03 2.3870095e+03 - 6.7447334e+02 -4.8952349e+03 2.3963383e+03 - 7.3576267e+02 -4.8757943e+03 2.4064639e+03 - 7.9833913e+02 -4.8543782e+03 2.4173773e+03 - 8.6232589e+02 -4.8308817e+03 2.4290661e+03 - 9.2785030e+02 -4.8051899e+03 2.4415140e+03 - 9.9504359e+02 -4.7771773e+03 2.4547003e+03 - 1.0640402e+03 -4.7467081e+03 2.4685980e+03 - 1.1349770e+03 -4.7136359e+03 2.4831738e+03 - 1.2079919e+03 -4.6778042e+03 2.4983863e+03 - 1.2832223e+03 -4.6390475e+03 2.5141849e+03 - 1.3608024e+03 -4.5971917e+03 2.5305084e+03 - 1.4408610e+03 -4.5520568e+03 2.5472839e+03 - 1.5235172e+03 -4.5034587e+03 2.5644249e+03 - 1.6088766e+03 -4.4512127e+03 2.5818303e+03 - 1.6970258e+03 -4.3951377e+03 2.5993834e+03 - 1.7880267e+03 -4.3350615e+03 2.6169508e+03 - 1.8819097e+03 -4.2708271e+03 2.6343819e+03 - 1.9786669e+03 -4.2023001e+03 2.6515098e+03 - 2.0782444e+03 -4.1293770e+03 2.6681516e+03 - 2.1805354e+03 -4.0519944e+03 2.6841106e+03 - 2.2853736e+03 -3.9701382e+03 2.6991798e+03 - 2.3925279e+03 -3.8838526e+03 2.7131460e+03 - 2.5016995e+03 -3.7932486e+03 2.7257953e+03 - 2.6125218e+03 -3.6985097e+03 2.7369198e+03 - 2.7245629e+03 -3.5998963e+03 2.7463252e+03 - 2.8373327e+03 -3.4977454e+03 2.7538381e+03 - 2.9502932e+03 -3.3924670e+03 2.7593143e+03 - 3.0628729e+03 -3.2845367e+03 2.7626451e+03 - 3.1744830e+03 -3.1744830e+03 2.7637630e+03 - 3.2845367e+03 -3.0628729e+03 2.7626451e+03 - 3.3924670e+03 -2.9502932e+03 2.7593143e+03 - 3.4977454e+03 -2.8373327e+03 2.7538381e+03 - 3.5998963e+03 -2.7245629e+03 2.7463252e+03 - 3.6985097e+03 -2.6125218e+03 2.7369198e+03 - 3.7932486e+03 -2.5016995e+03 2.7257953e+03 - 3.8838526e+03 -2.3925279e+03 2.7131460e+03 - 3.9701382e+03 -2.2853736e+03 2.6991798e+03 - 4.0519944e+03 -2.1805354e+03 2.6841106e+03 - 4.1293770e+03 -2.0782444e+03 2.6681516e+03 - 4.2023001e+03 -1.9786669e+03 2.6515098e+03 - 4.2708271e+03 -1.8819097e+03 2.6343819e+03 - 4.3350615e+03 -1.7880267e+03 2.6169508e+03 - 4.3951377e+03 -1.6970258e+03 2.5993834e+03 - 4.4512127e+03 -1.6088766e+03 2.5818303e+03 - 4.5034587e+03 -1.5235172e+03 2.5644249e+03 - 4.5520568e+03 -1.4408610e+03 2.5472839e+03 - 4.5971917e+03 -1.3608024e+03 2.5305084e+03 - 4.6390475e+03 -1.2832223e+03 2.5141849e+03 - 4.6778042e+03 -1.2079919e+03 2.4983863e+03 - 4.7136359e+03 -1.1349770e+03 2.4831738e+03 - 4.7467081e+03 -1.0640402e+03 2.4685980e+03 - 4.7771773e+03 -9.9504359e+02 2.4547003e+03 - 4.8051899e+03 -9.2785030e+02 2.4415140e+03 - 4.8308817e+03 -8.6232589e+02 2.4290661e+03 - 4.8543782e+03 -7.9833913e+02 2.4173773e+03 - 4.8757943e+03 -7.3576267e+02 2.4064639e+03 - 4.8952349e+03 -6.7447334e+02 2.3963383e+03 - 4.9127948e+03 -6.1435231e+02 2.3870095e+03 - 4.9285593e+03 -5.5528507e+02 2.3784840e+03 - 4.9426048e+03 -4.9716128e+02 2.3707663e+03 - 4.9549988e+03 -4.3987458e+02 2.3638593e+03 - 4.9658006e+03 -3.8332231e+02 2.3577646e+03 - 4.9750615e+03 -3.2740512e+02 2.3524830e+03 - 4.9828255e+03 -2.7202666e+02 2.3480148e+03 - 4.9891290e+03 -2.1709315e+02 2.3443598e+03 - 4.9940015e+03 -1.6251299e+02 2.3415176e+03 - 4.9974658e+03 -1.0819630e+02 2.3394879e+03 - 4.9995379e+03 -5.4054530e+01 2.3382702e+03 - 5.0002276e+03 0.0000000e+00 2.3378643e+03 - 5.0343671e+03 -4.8134273e-09 2.2480363e+03 - 5.0336885e+03 5.3793728e+01 2.2484438e+03 - 5.0316496e+03 1.0767516e+02 2.2496665e+03 - 5.0282405e+03 1.6173245e+02 2.2517048e+03 - 5.0234451e+03 2.1605471e+02 2.2545595e+03 - 5.0172405e+03 2.7073242e+02 2.2582316e+03 - 5.0095967e+03 3.2585795e+02 2.2627221e+03 - 5.0004768e+03 3.8152594e+02 2.2680319e+03 - 4.9898366e+03 4.3783385e+02 2.2741618e+03 - 4.9776239e+03 4.9488229e+02 2.2811122e+03 - 4.9637786e+03 5.5277552e+02 2.2888828e+03 - 4.9482320e+03 6.1162179e+02 2.2974721e+03 - 4.9309063e+03 6.7153371e+02 2.3068773e+03 - 4.9117144e+03 7.3262851e+02 2.3170939e+03 - 4.8905593e+03 7.9502825e+02 2.3281146e+03 - 4.8673335e+03 8.5885991e+02 2.3399293e+03 - 4.8419186e+03 9.2425533e+02 2.3525241e+03 - 4.8141853e+03 9.9135092e+02 2.3658803e+03 - 4.7839927e+03 1.0602872e+03 2.3799736e+03 - 4.7511887e+03 1.1312080e+03 2.3947730e+03 - 4.7156099e+03 1.2042591e+03 2.4102394e+03 - 4.6770826e+03 1.2795867e+03 2.4263243e+03 - 4.6354236e+03 1.3573351e+03 2.4429686e+03 - 4.5904417e+03 1.4376440e+03 2.4601004e+03 - 4.5419406e+03 1.5206443e+03 2.4776344e+03 - 4.4897218e+03 1.6064540e+03 2.4954693e+03 - 4.4335891e+03 1.6951727e+03 2.5134872e+03 - 4.3733538e+03 1.7868753e+03 2.5315525e+03 - 4.3088417e+03 1.8816046e+03 2.5495109e+03 - 4.2399009e+03 1.9793640e+03 2.5671896e+03 - 4.1664108e+03 2.0801088e+03 2.5843985e+03 - 4.0882921e+03 2.1837383e+03 2.6009315e+03 - 4.0055170e+03 2.2900885e+03 2.6165704e+03 - 3.9181198e+03 2.3989256e+03 2.6310890e+03 - 3.8262062e+03 2.5099425e+03 2.6442593e+03 - 3.7299601e+03 2.6227574e+03 2.6558586e+03 - 3.6296492e+03 2.7369170e+03 2.6656775e+03 - 3.5256251e+03 2.8519035e+03 2.6735289e+03 - 3.4183196e+03 2.9671454e+03 2.6792564e+03 - 3.3082369e+03 3.0820338e+03 2.6827420e+03 - 3.1959400e+03 3.1959400e+03 2.6839122e+03 - 3.0820338e+03 3.3082369e+03 2.6827420e+03 - 2.9671454e+03 3.4183196e+03 2.6792564e+03 - 2.8519035e+03 3.5256251e+03 2.6735289e+03 - 2.7369170e+03 3.6296492e+03 2.6656775e+03 - 2.6227574e+03 3.7299601e+03 2.6558586e+03 - 2.5099425e+03 3.8262062e+03 2.6442593e+03 - 2.3989256e+03 3.9181198e+03 2.6310890e+03 - 2.2900885e+03 4.0055170e+03 2.6165704e+03 - 2.1837383e+03 4.0882921e+03 2.6009315e+03 - 2.0801088e+03 4.1664108e+03 2.5843985e+03 - 1.9793640e+03 4.2399009e+03 2.5671896e+03 - 1.8816046e+03 4.3088417e+03 2.5495109e+03 - 1.7868753e+03 4.3733538e+03 2.5315525e+03 - 1.6951727e+03 4.4335891e+03 2.5134872e+03 - 1.6064540e+03 4.4897218e+03 2.4954693e+03 - 1.5206443e+03 4.5419406e+03 2.4776344e+03 - 1.4376440e+03 4.5904417e+03 2.4601004e+03 - 1.3573351e+03 4.6354236e+03 2.4429686e+03 - 1.2795867e+03 4.6770826e+03 2.4263243e+03 - 1.2042591e+03 4.7156099e+03 2.4102394e+03 - 1.1312080e+03 4.7511887e+03 2.3947730e+03 - 1.0602872e+03 4.7839927e+03 2.3799736e+03 - 9.9135092e+02 4.8141853e+03 2.3658803e+03 - 9.2425533e+02 4.8419186e+03 2.3525241e+03 - 8.5885991e+02 4.8673335e+03 2.3399293e+03 - 7.9502825e+02 4.8905593e+03 2.3281146e+03 - 7.3262851e+02 4.9117144e+03 2.3170939e+03 - 6.7153371e+02 4.9309063e+03 2.3068773e+03 - 6.1162179e+02 4.9482320e+03 2.2974721e+03 - 5.5277552e+02 4.9637786e+03 2.2888828e+03 - 4.9488229e+02 4.9776239e+03 2.2811122e+03 - 4.3783385e+02 4.9898366e+03 2.2741618e+03 - 3.8152594e+02 5.0004768e+03 2.2680319e+03 - 3.2585795e+02 5.0095967e+03 2.2627221e+03 - 2.7073242e+02 5.0172405e+03 2.2582316e+03 - 2.1605471e+02 5.0234451e+03 2.2545595e+03 - 1.6173245e+02 5.0282405e+03 2.2517048e+03 - 1.0767516e+02 5.0316496e+03 2.2496665e+03 - 5.3793728e+01 5.0336885e+03 2.2484438e+03 - -9.6268545e-09 5.0343671e+03 2.2480363e+03 - -5.3793728e+01 5.0336885e+03 2.2484438e+03 - -1.0767516e+02 5.0316496e+03 2.2496665e+03 - -1.6173245e+02 5.0282405e+03 2.2517048e+03 - -2.1605471e+02 5.0234451e+03 2.2545595e+03 - -2.7073242e+02 5.0172405e+03 2.2582316e+03 - -3.2585795e+02 5.0095967e+03 2.2627221e+03 - -3.8152594e+02 5.0004768e+03 2.2680319e+03 - -4.3783385e+02 4.9898366e+03 2.2741618e+03 - -4.9488229e+02 4.9776239e+03 2.2811122e+03 - -5.5277552e+02 4.9637786e+03 2.2888828e+03 - -6.1162179e+02 4.9482320e+03 2.2974721e+03 - -6.7153371e+02 4.9309063e+03 2.3068773e+03 - -7.3262851e+02 4.9117144e+03 2.3170939e+03 - -7.9502825e+02 4.8905593e+03 2.3281146e+03 - -8.5885991e+02 4.8673335e+03 2.3399293e+03 - -9.2425533e+02 4.8419186e+03 2.3525241e+03 - -9.9135092e+02 4.8141853e+03 2.3658803e+03 - -1.0602872e+03 4.7839927e+03 2.3799736e+03 - -1.1312080e+03 4.7511887e+03 2.3947730e+03 - -1.2042591e+03 4.7156099e+03 2.4102394e+03 - -1.2795867e+03 4.6770826e+03 2.4263243e+03 - -1.3573351e+03 4.6354236e+03 2.4429686e+03 - -1.4376440e+03 4.5904417e+03 2.4601004e+03 - -1.5206443e+03 4.5419406e+03 2.4776344e+03 - -1.6064540e+03 4.4897218e+03 2.4954693e+03 - -1.6951727e+03 4.4335891e+03 2.5134872e+03 - -1.7868753e+03 4.3733538e+03 2.5315525e+03 - -1.8816046e+03 4.3088417e+03 2.5495109e+03 - -1.9793640e+03 4.2399009e+03 2.5671896e+03 - -2.0801088e+03 4.1664108e+03 2.5843985e+03 - -2.1837383e+03 4.0882921e+03 2.6009315e+03 - -2.2900885e+03 4.0055170e+03 2.6165704e+03 - -2.3989256e+03 3.9181198e+03 2.6310890e+03 - -2.5099425e+03 3.8262062e+03 2.6442593e+03 - -2.6227574e+03 3.7299601e+03 2.6558586e+03 - -2.7369170e+03 3.6296492e+03 2.6656775e+03 - -2.8519035e+03 3.5256251e+03 2.6735289e+03 - -2.9671454e+03 3.4183196e+03 2.6792564e+03 - -3.0820338e+03 3.3082369e+03 2.6827420e+03 - -3.1959400e+03 3.1959400e+03 2.6839122e+03 - -3.3082369e+03 3.0820338e+03 2.6827420e+03 - -3.4183196e+03 2.9671454e+03 2.6792564e+03 - -3.5256251e+03 2.8519035e+03 2.6735289e+03 - -3.6296492e+03 2.7369170e+03 2.6656775e+03 - -3.7299601e+03 2.6227574e+03 2.6558586e+03 - -3.8262062e+03 2.5099425e+03 2.6442593e+03 - -3.9181198e+03 2.3989256e+03 2.6310890e+03 - -4.0055170e+03 2.2900885e+03 2.6165704e+03 - -4.0882921e+03 2.1837383e+03 2.6009315e+03 - -4.1664108e+03 2.0801088e+03 2.5843985e+03 - -4.2399009e+03 1.9793640e+03 2.5671896e+03 - -4.3088417e+03 1.8816046e+03 2.5495109e+03 - -4.3733538e+03 1.7868753e+03 2.5315525e+03 - -4.4335891e+03 1.6951727e+03 2.5134872e+03 - -4.4897218e+03 1.6064540e+03 2.4954693e+03 - -4.5419406e+03 1.5206443e+03 2.4776344e+03 - -4.5904417e+03 1.4376440e+03 2.4601004e+03 - -4.6354236e+03 1.3573351e+03 2.4429686e+03 - -4.6770826e+03 1.2795867e+03 2.4263243e+03 - -4.7156099e+03 1.2042591e+03 2.4102394e+03 - -4.7511887e+03 1.1312080e+03 2.3947730e+03 - -4.7839927e+03 1.0602872e+03 2.3799736e+03 - -4.8141853e+03 9.9135092e+02 2.3658803e+03 - -4.8419186e+03 9.2425533e+02 2.3525241e+03 - -4.8673335e+03 8.5885991e+02 2.3399293e+03 - -4.8905593e+03 7.9502825e+02 2.3281146e+03 - -4.9117144e+03 7.3262851e+02 2.3170939e+03 - -4.9309063e+03 6.7153371e+02 2.3068773e+03 - -4.9482320e+03 6.1162179e+02 2.2974721e+03 - -4.9637786e+03 5.5277552e+02 2.2888828e+03 - -4.9776239e+03 4.9488229e+02 2.2811122e+03 - -4.9898366e+03 4.3783385e+02 2.2741618e+03 - -5.0004768e+03 3.8152594e+02 2.2680319e+03 - -5.0095967e+03 3.2585795e+02 2.2627221e+03 - -5.0172405e+03 2.7073242e+02 2.2582316e+03 - -5.0234451e+03 2.1605471e+02 2.2545595e+03 - -5.0282405e+03 1.6173245e+02 2.2517048e+03 - -5.0316496e+03 1.0767516e+02 2.2496665e+03 - -5.0336885e+03 5.3793728e+01 2.2484438e+03 - -5.0343671e+03 0.0000000e+00 2.2480363e+03 - -5.0336885e+03 -5.3793728e+01 2.2484438e+03 - -5.0316496e+03 -1.0767516e+02 2.2496665e+03 - -5.0282405e+03 -1.6173245e+02 2.2517048e+03 - -5.0234451e+03 -2.1605471e+02 2.2545595e+03 - -5.0172405e+03 -2.7073242e+02 2.2582316e+03 - -5.0095967e+03 -3.2585795e+02 2.2627221e+03 - -5.0004768e+03 -3.8152594e+02 2.2680319e+03 - -4.9898366e+03 -4.3783385e+02 2.2741618e+03 - -4.9776239e+03 -4.9488229e+02 2.2811122e+03 - -4.9637786e+03 -5.5277552e+02 2.2888828e+03 - -4.9482320e+03 -6.1162179e+02 2.2974721e+03 - -4.9309063e+03 -6.7153371e+02 2.3068773e+03 - -4.9117144e+03 -7.3262851e+02 2.3170939e+03 - -4.8905593e+03 -7.9502825e+02 2.3281146e+03 - -4.8673335e+03 -8.5885991e+02 2.3399293e+03 - -4.8419186e+03 -9.2425533e+02 2.3525241e+03 - -4.8141853e+03 -9.9135092e+02 2.3658803e+03 - -4.7839927e+03 -1.0602872e+03 2.3799736e+03 - -4.7511887e+03 -1.1312080e+03 2.3947730e+03 - -4.7156099e+03 -1.2042591e+03 2.4102394e+03 - -4.6770826e+03 -1.2795867e+03 2.4263243e+03 - -4.6354236e+03 -1.3573351e+03 2.4429686e+03 - -4.5904417e+03 -1.4376440e+03 2.4601004e+03 - -4.5419406e+03 -1.5206443e+03 2.4776344e+03 - -4.4897218e+03 -1.6064540e+03 2.4954693e+03 - -4.4335891e+03 -1.6951727e+03 2.5134872e+03 - -4.3733538e+03 -1.7868753e+03 2.5315525e+03 - -4.3088417e+03 -1.8816046e+03 2.5495109e+03 - -4.2399009e+03 -1.9793640e+03 2.5671896e+03 - -4.1664108e+03 -2.0801088e+03 2.5843985e+03 - -4.0882921e+03 -2.1837383e+03 2.6009315e+03 - -4.0055170e+03 -2.2900885e+03 2.6165704e+03 - -3.9181198e+03 -2.3989256e+03 2.6310890e+03 - -3.8262062e+03 -2.5099425e+03 2.6442593e+03 - -3.7299601e+03 -2.6227574e+03 2.6558586e+03 - -3.6296492e+03 -2.7369170e+03 2.6656775e+03 - -3.5256251e+03 -2.8519035e+03 2.6735289e+03 - -3.4183196e+03 -2.9671454e+03 2.6792564e+03 - -3.3082369e+03 -3.0820338e+03 2.6827420e+03 - -3.1959400e+03 -3.1959400e+03 2.6839122e+03 - -3.0820338e+03 -3.3082369e+03 2.6827420e+03 - -2.9671454e+03 -3.4183196e+03 2.6792564e+03 - -2.8519035e+03 -3.5256251e+03 2.6735289e+03 - -2.7369170e+03 -3.6296492e+03 2.6656775e+03 - -2.6227574e+03 -3.7299601e+03 2.6558586e+03 - -2.5099425e+03 -3.8262062e+03 2.6442593e+03 - -2.3989256e+03 -3.9181198e+03 2.6310890e+03 - -2.2900885e+03 -4.0055170e+03 2.6165704e+03 - -2.1837383e+03 -4.0882921e+03 2.6009315e+03 - -2.0801088e+03 -4.1664108e+03 2.5843985e+03 - -1.9793640e+03 -4.2399009e+03 2.5671896e+03 - -1.8816046e+03 -4.3088417e+03 2.5495109e+03 - -1.7868753e+03 -4.3733538e+03 2.5315525e+03 - -1.6951727e+03 -4.4335891e+03 2.5134872e+03 - -1.6064540e+03 -4.4897218e+03 2.4954693e+03 - -1.5206443e+03 -4.5419406e+03 2.4776344e+03 - -1.4376440e+03 -4.5904417e+03 2.4601004e+03 - -1.3573351e+03 -4.6354236e+03 2.4429686e+03 - -1.2795867e+03 -4.6770826e+03 2.4263243e+03 - -1.2042591e+03 -4.7156099e+03 2.4102394e+03 - -1.1312080e+03 -4.7511887e+03 2.3947730e+03 - -1.0602872e+03 -4.7839927e+03 2.3799736e+03 - -9.9135092e+02 -4.8141853e+03 2.3658803e+03 - -9.2425533e+02 -4.8419186e+03 2.3525241e+03 - -8.5885991e+02 -4.8673335e+03 2.3399293e+03 - -7.9502825e+02 -4.8905593e+03 2.3281146e+03 - -7.3262851e+02 -4.9117144e+03 2.3170939e+03 - -6.7153371e+02 -4.9309063e+03 2.3068773e+03 - -6.1162179e+02 -4.9482320e+03 2.2974721e+03 - -5.5277552e+02 -4.9637786e+03 2.2888828e+03 - -4.9488229e+02 -4.9776239e+03 2.2811122e+03 - -4.3783385e+02 -4.9898366e+03 2.2741618e+03 - -3.8152594e+02 -5.0004768e+03 2.2680319e+03 - -3.2585795e+02 -5.0095967e+03 2.2627221e+03 - -2.7073242e+02 -5.0172405e+03 2.2582316e+03 - -2.1605471e+02 -5.0234451e+03 2.2545595e+03 - -1.6173245e+02 -5.0282405e+03 2.2517048e+03 - -1.0767516e+02 -5.0316496e+03 2.2496665e+03 - -5.3793728e+01 -5.0336885e+03 2.2484438e+03 - 9.6268545e-09 -5.0343671e+03 2.2480363e+03 - 5.3793728e+01 -5.0336885e+03 2.2484438e+03 - 1.0767516e+02 -5.0316496e+03 2.2496665e+03 - 1.6173245e+02 -5.0282405e+03 2.2517048e+03 - 2.1605471e+02 -5.0234451e+03 2.2545595e+03 - 2.7073242e+02 -5.0172405e+03 2.2582316e+03 - 3.2585795e+02 -5.0095967e+03 2.2627221e+03 - 3.8152594e+02 -5.0004768e+03 2.2680319e+03 - 4.3783385e+02 -4.9898366e+03 2.2741618e+03 - 4.9488229e+02 -4.9776239e+03 2.2811122e+03 - 5.5277552e+02 -4.9637786e+03 2.2888828e+03 - 6.1162179e+02 -4.9482320e+03 2.2974721e+03 - 6.7153371e+02 -4.9309063e+03 2.3068773e+03 - 7.3262851e+02 -4.9117144e+03 2.3170939e+03 - 7.9502825e+02 -4.8905593e+03 2.3281146e+03 - 8.5885991e+02 -4.8673335e+03 2.3399293e+03 - 9.2425533e+02 -4.8419186e+03 2.3525241e+03 - 9.9135092e+02 -4.8141853e+03 2.3658803e+03 - 1.0602872e+03 -4.7839927e+03 2.3799736e+03 - 1.1312080e+03 -4.7511887e+03 2.3947730e+03 - 1.2042591e+03 -4.7156099e+03 2.4102394e+03 - 1.2795867e+03 -4.6770826e+03 2.4263243e+03 - 1.3573351e+03 -4.6354236e+03 2.4429686e+03 - 1.4376440e+03 -4.5904417e+03 2.4601004e+03 - 1.5206443e+03 -4.5419406e+03 2.4776344e+03 - 1.6064540e+03 -4.4897218e+03 2.4954693e+03 - 1.6951727e+03 -4.4335891e+03 2.5134872e+03 - 1.7868753e+03 -4.3733538e+03 2.5315525e+03 - 1.8816046e+03 -4.3088417e+03 2.5495109e+03 - 1.9793640e+03 -4.2399009e+03 2.5671896e+03 - 2.0801088e+03 -4.1664108e+03 2.5843985e+03 - 2.1837383e+03 -4.0882921e+03 2.6009315e+03 - 2.2900885e+03 -4.0055170e+03 2.6165704e+03 - 2.3989256e+03 -3.9181198e+03 2.6310890e+03 - 2.5099425e+03 -3.8262062e+03 2.6442593e+03 - 2.6227574e+03 -3.7299601e+03 2.6558586e+03 - 2.7369170e+03 -3.6296492e+03 2.6656775e+03 - 2.8519035e+03 -3.5256251e+03 2.6735289e+03 - 2.9671454e+03 -3.4183196e+03 2.6792564e+03 - 3.0820338e+03 -3.3082369e+03 2.6827420e+03 - 3.1959400e+03 -3.1959400e+03 2.6839122e+03 - 3.3082369e+03 -3.0820338e+03 2.6827420e+03 - 3.4183196e+03 -2.9671454e+03 2.6792564e+03 - 3.5256251e+03 -2.8519035e+03 2.6735289e+03 - 3.6296492e+03 -2.7369170e+03 2.6656775e+03 - 3.7299601e+03 -2.6227574e+03 2.6558586e+03 - 3.8262062e+03 -2.5099425e+03 2.6442593e+03 - 3.9181198e+03 -2.3989256e+03 2.6310890e+03 - 4.0055170e+03 -2.2900885e+03 2.6165704e+03 - 4.0882921e+03 -2.1837383e+03 2.6009315e+03 - 4.1664108e+03 -2.0801088e+03 2.5843985e+03 - 4.2399009e+03 -1.9793640e+03 2.5671896e+03 - 4.3088417e+03 -1.8816046e+03 2.5495109e+03 - 4.3733538e+03 -1.7868753e+03 2.5315525e+03 - 4.4335891e+03 -1.6951727e+03 2.5134872e+03 - 4.4897218e+03 -1.6064540e+03 2.4954693e+03 - 4.5419406e+03 -1.5206443e+03 2.4776344e+03 - 4.5904417e+03 -1.4376440e+03 2.4601004e+03 - 4.6354236e+03 -1.3573351e+03 2.4429686e+03 - 4.6770826e+03 -1.2795867e+03 2.4263243e+03 - 4.7156099e+03 -1.2042591e+03 2.4102394e+03 - 4.7511887e+03 -1.1312080e+03 2.3947730e+03 - 4.7839927e+03 -1.0602872e+03 2.3799736e+03 - 4.8141853e+03 -9.9135092e+02 2.3658803e+03 - 4.8419186e+03 -9.2425533e+02 2.3525241e+03 - 4.8673335e+03 -8.5885991e+02 2.3399293e+03 - 4.8905593e+03 -7.9502825e+02 2.3281146e+03 - 4.9117144e+03 -7.3262851e+02 2.3170939e+03 - 4.9309063e+03 -6.7153371e+02 2.3068773e+03 - 4.9482320e+03 -6.1162179e+02 2.2974721e+03 - 4.9637786e+03 -5.5277552e+02 2.2888828e+03 - 4.9776239e+03 -4.9488229e+02 2.2811122e+03 - 4.9898366e+03 -4.3783385e+02 2.2741618e+03 - 5.0004768e+03 -3.8152594e+02 2.2680319e+03 - 5.0095967e+03 -3.2585795e+02 2.2627221e+03 - 5.0172405e+03 -2.7073242e+02 2.2582316e+03 - 5.0234451e+03 -2.1605471e+02 2.2545595e+03 - 5.0282405e+03 -1.6173245e+02 2.2517048e+03 - 5.0316496e+03 -1.0767516e+02 2.2496665e+03 - 5.0336885e+03 -5.3793728e+01 2.2484438e+03 - 5.0343671e+03 0.0000000e+00 2.2480363e+03 - 5.0677971e+03 4.8134273e-09 2.1545901e+03 - 5.0671301e+03 5.3530525e+01 2.1549976e+03 - 5.0651260e+03 1.0714911e+02 2.1562202e+03 - 5.0617750e+03 1.6094432e+02 2.1582587e+03 - 5.0570607e+03 2.1500570e+02 2.1611142e+03 - 5.0509600e+03 2.6942426e+02 2.1647882e+03 - 5.0434428e+03 3.2429298e+02 2.1692823e+03 - 5.0344718e+03 3.7970733e+02 2.1745985e+03 - 5.0240024e+03 4.3576570e+02 2.1807384e+03 - 5.0119817e+03 4.9256991e+02 2.1877037e+03 - 4.9983490e+03 5.5022567e+02 2.1954953e+03 - 4.9830344e+03 6.0884301e+02 2.2041134e+03 - 4.9659589e+03 6.6853669e+02 2.2135570e+03 - 4.9470339e+03 7.2942656e+02 2.2238232e+03 - 4.9261602e+03 7.9163779e+02 2.2349071e+03 - 4.9032277e+03 8.5530109e+02 2.2468008e+03 - 4.8781151e+03 9.2055268e+02 2.2594927e+03 - 4.8506890e+03 9.8753415e+02 2.2729667e+03 - 4.8208039e+03 1.0563920e+03 2.2872014e+03 - 4.7883019e+03 1.1272771e+03 2.3021682e+03 - 4.7530130e+03 1.2003432e+03 2.3178309e+03 - 4.7147551e+03 1.2757456e+03 2.3341436e+03 - 4.6733356e+03 1.3536389e+03 2.3510494e+03 - 4.6285524e+03 1.4341739e+03 2.3684785e+03 - 4.5801963e+03 1.5174939e+03 2.3863468e+03 - 4.5280547e+03 1.6037301e+03 2.4045539e+03 - 4.4719152e+03 1.6929960e+03 2.4229815e+03 - 4.4115721e+03 1.7853803e+03 2.4414922e+03 - 4.3468327e+03 1.8809395e+03 2.4599287e+03 - 4.2775262e+03 1.9796894e+03 2.4781132e+03 - 4.2035131e+03 2.0815958e+03 2.4958487e+03 - 4.1246966e+03 2.1865654e+03 2.5129202e+03 - 4.0410334e+03 2.2944376e+03 2.5290985e+03 - 3.9525462e+03 2.4049766e+03 2.5441445e+03 - 3.8593336e+03 2.5178671e+03 2.5578158e+03 - 3.7615793e+03 2.6327123e+03 2.5698744e+03 - 3.6595574e+03 2.7490365e+03 2.5800955e+03 - 3.5536343e+03 2.8662924e+03 2.5882775e+03 - 3.4442648e+03 2.9838731e+03 2.5942513e+03 - 3.3319833e+03 3.1011292e+03 2.5978889e+03 - 3.2173894e+03 3.2173894e+03 2.5991104e+03 - 3.1011292e+03 3.3319833e+03 2.5978889e+03 - 2.9838731e+03 3.4442648e+03 2.5942513e+03 - 2.8662924e+03 3.5536343e+03 2.5882775e+03 - 2.7490365e+03 3.6595574e+03 2.5800955e+03 - 2.6327123e+03 3.7615793e+03 2.5698744e+03 - 2.5178671e+03 3.8593336e+03 2.5578158e+03 - 2.4049766e+03 3.9525462e+03 2.5441445e+03 - 2.2944376e+03 4.0410334e+03 2.5290985e+03 - 2.1865654e+03 4.1246966e+03 2.5129202e+03 - 2.0815958e+03 4.2035131e+03 2.4958487e+03 - 1.9796894e+03 4.2775262e+03 2.4781132e+03 - 1.8809395e+03 4.3468327e+03 2.4599287e+03 - 1.7853803e+03 4.4115721e+03 2.4414922e+03 - 1.6929960e+03 4.4719152e+03 2.4229815e+03 - 1.6037301e+03 4.5280547e+03 2.4045539e+03 - 1.5174939e+03 4.5801963e+03 2.3863468e+03 - 1.4341739e+03 4.6285524e+03 2.3684785e+03 - 1.3536389e+03 4.6733356e+03 2.3510494e+03 - 1.2757456e+03 4.7147551e+03 2.3341436e+03 - 1.2003432e+03 4.7530130e+03 2.3178309e+03 - 1.1272771e+03 4.7883019e+03 2.3021682e+03 - 1.0563920e+03 4.8208039e+03 2.2872014e+03 - 9.8753415e+02 4.8506890e+03 2.2729667e+03 - 9.2055268e+02 4.8781151e+03 2.2594927e+03 - 8.5530109e+02 4.9032277e+03 2.2468008e+03 - 7.9163779e+02 4.9261602e+03 2.2349071e+03 - 7.2942656e+02 4.9470339e+03 2.2238232e+03 - 6.6853669e+02 4.9659589e+03 2.2135570e+03 - 6.0884301e+02 4.9830344e+03 2.2041134e+03 - 5.5022567e+02 4.9983490e+03 2.1954953e+03 - 4.9256991e+02 5.0119817e+03 2.1877037e+03 - 4.3576570e+02 5.0240024e+03 2.1807384e+03 - 3.7970733e+02 5.0344718e+03 2.1745985e+03 - 3.2429298e+02 5.0434428e+03 2.1692823e+03 - 2.6942426e+02 5.0509600e+03 2.1647882e+03 - 2.1500570e+02 5.0570607e+03 2.1611142e+03 - 1.6094432e+02 5.0617750e+03 2.1582587e+03 - 1.0714911e+02 5.0651260e+03 2.1562202e+03 - 5.3530525e+01 5.0671301e+03 2.1549976e+03 - -4.8134273e-09 5.0677971e+03 2.1545901e+03 - -5.3530525e+01 5.0671301e+03 2.1549976e+03 - -1.0714911e+02 5.0651260e+03 2.1562202e+03 - -1.6094432e+02 5.0617750e+03 2.1582587e+03 - -2.1500570e+02 5.0570607e+03 2.1611142e+03 - -2.6942426e+02 5.0509600e+03 2.1647882e+03 - -3.2429298e+02 5.0434428e+03 2.1692823e+03 - -3.7970733e+02 5.0344718e+03 2.1745985e+03 - -4.3576570e+02 5.0240024e+03 2.1807384e+03 - -4.9256991e+02 5.0119817e+03 2.1877037e+03 - -5.5022567e+02 4.9983490e+03 2.1954953e+03 - -6.0884301e+02 4.9830344e+03 2.2041134e+03 - -6.6853669e+02 4.9659589e+03 2.2135570e+03 - -7.2942656e+02 4.9470339e+03 2.2238232e+03 - -7.9163779e+02 4.9261602e+03 2.2349071e+03 - -8.5530109e+02 4.9032277e+03 2.2468008e+03 - -9.2055268e+02 4.8781151e+03 2.2594927e+03 - -9.8753415e+02 4.8506890e+03 2.2729667e+03 - -1.0563920e+03 4.8208039e+03 2.2872014e+03 - -1.1272771e+03 4.7883019e+03 2.3021682e+03 - -1.2003432e+03 4.7530130e+03 2.3178309e+03 - -1.2757456e+03 4.7147551e+03 2.3341436e+03 - -1.3536389e+03 4.6733356e+03 2.3510494e+03 - -1.4341739e+03 4.6285524e+03 2.3684785e+03 - -1.5174939e+03 4.5801963e+03 2.3863468e+03 - -1.6037301e+03 4.5280547e+03 2.4045539e+03 - -1.6929960e+03 4.4719152e+03 2.4229815e+03 - -1.7853803e+03 4.4115721e+03 2.4414922e+03 - -1.8809395e+03 4.3468327e+03 2.4599287e+03 - -1.9796894e+03 4.2775262e+03 2.4781132e+03 - -2.0815958e+03 4.2035131e+03 2.4958487e+03 - -2.1865654e+03 4.1246966e+03 2.5129202e+03 - -2.2944376e+03 4.0410334e+03 2.5290985e+03 - -2.4049766e+03 3.9525462e+03 2.5441445e+03 - -2.5178671e+03 3.8593336e+03 2.5578158e+03 - -2.6327123e+03 3.7615793e+03 2.5698744e+03 - -2.7490365e+03 3.6595574e+03 2.5800955e+03 - -2.8662924e+03 3.5536343e+03 2.5882775e+03 - -2.9838731e+03 3.4442648e+03 2.5942513e+03 - -3.1011292e+03 3.3319833e+03 2.5978889e+03 - -3.2173894e+03 3.2173894e+03 2.5991104e+03 - -3.3319833e+03 3.1011292e+03 2.5978889e+03 - -3.4442648e+03 2.9838731e+03 2.5942513e+03 - -3.5536343e+03 2.8662924e+03 2.5882775e+03 - -3.6595574e+03 2.7490365e+03 2.5800955e+03 - -3.7615793e+03 2.6327123e+03 2.5698744e+03 - -3.8593336e+03 2.5178671e+03 2.5578158e+03 - -3.9525462e+03 2.4049766e+03 2.5441445e+03 - -4.0410334e+03 2.2944376e+03 2.5290985e+03 - -4.1246966e+03 2.1865654e+03 2.5129202e+03 - -4.2035131e+03 2.0815958e+03 2.4958487e+03 - -4.2775262e+03 1.9796894e+03 2.4781132e+03 - -4.3468327e+03 1.8809395e+03 2.4599287e+03 - -4.4115721e+03 1.7853803e+03 2.4414922e+03 - -4.4719152e+03 1.6929960e+03 2.4229815e+03 - -4.5280547e+03 1.6037301e+03 2.4045539e+03 - -4.5801963e+03 1.5174939e+03 2.3863468e+03 - -4.6285524e+03 1.4341739e+03 2.3684785e+03 - -4.6733356e+03 1.3536389e+03 2.3510494e+03 - -4.7147551e+03 1.2757456e+03 2.3341436e+03 - -4.7530130e+03 1.2003432e+03 2.3178309e+03 - -4.7883019e+03 1.1272771e+03 2.3021682e+03 - -4.8208039e+03 1.0563920e+03 2.2872014e+03 - -4.8506890e+03 9.8753415e+02 2.2729667e+03 - -4.8781151e+03 9.2055268e+02 2.2594927e+03 - -4.9032277e+03 8.5530109e+02 2.2468008e+03 - -4.9261602e+03 7.9163779e+02 2.2349071e+03 - -4.9470339e+03 7.2942656e+02 2.2238232e+03 - -4.9659589e+03 6.6853669e+02 2.2135570e+03 - -4.9830344e+03 6.0884301e+02 2.2041134e+03 - -4.9983490e+03 5.5022567e+02 2.1954953e+03 - -5.0119817e+03 4.9256991e+02 2.1877037e+03 - -5.0240024e+03 4.3576570e+02 2.1807384e+03 - -5.0344718e+03 3.7970733e+02 2.1745985e+03 - -5.0434428e+03 3.2429298e+02 2.1692823e+03 - -5.0509600e+03 2.6942426e+02 2.1647882e+03 - -5.0570607e+03 2.1500570e+02 2.1611142e+03 - -5.0617750e+03 1.6094432e+02 2.1582587e+03 - -5.0651260e+03 1.0714911e+02 2.1562202e+03 - -5.0671301e+03 5.3530525e+01 2.1549976e+03 - -5.0677971e+03 0.0000000e+00 2.1545901e+03 - -5.0671301e+03 -5.3530525e+01 2.1549976e+03 - -5.0651260e+03 -1.0714911e+02 2.1562202e+03 - -5.0617750e+03 -1.6094432e+02 2.1582587e+03 - -5.0570607e+03 -2.1500570e+02 2.1611142e+03 - -5.0509600e+03 -2.6942426e+02 2.1647882e+03 - -5.0434428e+03 -3.2429298e+02 2.1692823e+03 - -5.0344718e+03 -3.7970733e+02 2.1745985e+03 - -5.0240024e+03 -4.3576570e+02 2.1807384e+03 - -5.0119817e+03 -4.9256991e+02 2.1877037e+03 - -4.9983490e+03 -5.5022567e+02 2.1954953e+03 - -4.9830344e+03 -6.0884301e+02 2.2041134e+03 - -4.9659589e+03 -6.6853669e+02 2.2135570e+03 - -4.9470339e+03 -7.2942656e+02 2.2238232e+03 - -4.9261602e+03 -7.9163779e+02 2.2349071e+03 - -4.9032277e+03 -8.5530109e+02 2.2468008e+03 - -4.8781151e+03 -9.2055268e+02 2.2594927e+03 - -4.8506890e+03 -9.8753415e+02 2.2729667e+03 - -4.8208039e+03 -1.0563920e+03 2.2872014e+03 - -4.7883019e+03 -1.1272771e+03 2.3021682e+03 - -4.7530130e+03 -1.2003432e+03 2.3178309e+03 - -4.7147551e+03 -1.2757456e+03 2.3341436e+03 - -4.6733356e+03 -1.3536389e+03 2.3510494e+03 - -4.6285524e+03 -1.4341739e+03 2.3684785e+03 - -4.5801963e+03 -1.5174939e+03 2.3863468e+03 - -4.5280547e+03 -1.6037301e+03 2.4045539e+03 - -4.4719152e+03 -1.6929960e+03 2.4229815e+03 - -4.4115721e+03 -1.7853803e+03 2.4414922e+03 - -4.3468327e+03 -1.8809395e+03 2.4599287e+03 - -4.2775262e+03 -1.9796894e+03 2.4781132e+03 - -4.2035131e+03 -2.0815958e+03 2.4958487e+03 - -4.1246966e+03 -2.1865654e+03 2.5129202e+03 - -4.0410334e+03 -2.2944376e+03 2.5290985e+03 - -3.9525462e+03 -2.4049766e+03 2.5441445e+03 - -3.8593336e+03 -2.5178671e+03 2.5578158e+03 - -3.7615793e+03 -2.6327123e+03 2.5698744e+03 - -3.6595574e+03 -2.7490365e+03 2.5800955e+03 - -3.5536343e+03 -2.8662924e+03 2.5882775e+03 - -3.4442648e+03 -2.9838731e+03 2.5942513e+03 - -3.3319833e+03 -3.1011292e+03 2.5978889e+03 - -3.2173894e+03 -3.2173894e+03 2.5991104e+03 - -3.1011292e+03 -3.3319833e+03 2.5978889e+03 - -2.9838731e+03 -3.4442648e+03 2.5942513e+03 - -2.8662924e+03 -3.5536343e+03 2.5882775e+03 - -2.7490365e+03 -3.6595574e+03 2.5800955e+03 - -2.6327123e+03 -3.7615793e+03 2.5698744e+03 - -2.5178671e+03 -3.8593336e+03 2.5578158e+03 - -2.4049766e+03 -3.9525462e+03 2.5441445e+03 - -2.2944376e+03 -4.0410334e+03 2.5290985e+03 - -2.1865654e+03 -4.1246966e+03 2.5129202e+03 - -2.0815958e+03 -4.2035131e+03 2.4958487e+03 - -1.9796894e+03 -4.2775262e+03 2.4781132e+03 - -1.8809395e+03 -4.3468327e+03 2.4599287e+03 - -1.7853803e+03 -4.4115721e+03 2.4414922e+03 - -1.6929960e+03 -4.4719152e+03 2.4229815e+03 - -1.6037301e+03 -4.5280547e+03 2.4045539e+03 - -1.5174939e+03 -4.5801963e+03 2.3863468e+03 - -1.4341739e+03 -4.6285524e+03 2.3684785e+03 - -1.3536389e+03 -4.6733356e+03 2.3510494e+03 - -1.2757456e+03 -4.7147551e+03 2.3341436e+03 - -1.2003432e+03 -4.7530130e+03 2.3178309e+03 - -1.1272771e+03 -4.7883019e+03 2.3021682e+03 - -1.0563920e+03 -4.8208039e+03 2.2872014e+03 - -9.8753415e+02 -4.8506890e+03 2.2729667e+03 - -9.2055268e+02 -4.8781151e+03 2.2594927e+03 - -8.5530109e+02 -4.9032277e+03 2.2468008e+03 - -7.9163779e+02 -4.9261602e+03 2.2349071e+03 - -7.2942656e+02 -4.9470339e+03 2.2238232e+03 - -6.6853669e+02 -4.9659589e+03 2.2135570e+03 - -6.0884301e+02 -4.9830344e+03 2.2041134e+03 - -5.5022567e+02 -4.9983490e+03 2.1954953e+03 - -4.9256991e+02 -5.0119817e+03 2.1877037e+03 - -4.3576570e+02 -5.0240024e+03 2.1807384e+03 - -3.7970733e+02 -5.0344718e+03 2.1745985e+03 - -3.2429298e+02 -5.0434428e+03 2.1692823e+03 - -2.6942426e+02 -5.0509600e+03 2.1647882e+03 - -2.1500570e+02 -5.0570607e+03 2.1611142e+03 - -1.6094432e+02 -5.0617750e+03 2.1582587e+03 - -1.0714911e+02 -5.0651260e+03 2.1562202e+03 - -5.3530525e+01 -5.0671301e+03 2.1549976e+03 - 4.8134273e-09 -5.0677971e+03 2.1545901e+03 - 5.3530525e+01 -5.0671301e+03 2.1549976e+03 - 1.0714911e+02 -5.0651260e+03 2.1562202e+03 - 1.6094432e+02 -5.0617750e+03 2.1582587e+03 - 2.1500570e+02 -5.0570607e+03 2.1611142e+03 - 2.6942426e+02 -5.0509600e+03 2.1647882e+03 - 3.2429298e+02 -5.0434428e+03 2.1692823e+03 - 3.7970733e+02 -5.0344718e+03 2.1745985e+03 - 4.3576570e+02 -5.0240024e+03 2.1807384e+03 - 4.9256991e+02 -5.0119817e+03 2.1877037e+03 - 5.5022567e+02 -4.9983490e+03 2.1954953e+03 - 6.0884301e+02 -4.9830344e+03 2.2041134e+03 - 6.6853669e+02 -4.9659589e+03 2.2135570e+03 - 7.2942656e+02 -4.9470339e+03 2.2238232e+03 - 7.9163779e+02 -4.9261602e+03 2.2349071e+03 - 8.5530109e+02 -4.9032277e+03 2.2468008e+03 - 9.2055268e+02 -4.8781151e+03 2.2594927e+03 - 9.8753415e+02 -4.8506890e+03 2.2729667e+03 - 1.0563920e+03 -4.8208039e+03 2.2872014e+03 - 1.1272771e+03 -4.7883019e+03 2.3021682e+03 - 1.2003432e+03 -4.7530130e+03 2.3178309e+03 - 1.2757456e+03 -4.7147551e+03 2.3341436e+03 - 1.3536389e+03 -4.6733356e+03 2.3510494e+03 - 1.4341739e+03 -4.6285524e+03 2.3684785e+03 - 1.5174939e+03 -4.5801963e+03 2.3863468e+03 - 1.6037301e+03 -4.5280547e+03 2.4045539e+03 - 1.6929960e+03 -4.4719152e+03 2.4229815e+03 - 1.7853803e+03 -4.4115721e+03 2.4414922e+03 - 1.8809395e+03 -4.3468327e+03 2.4599287e+03 - 1.9796894e+03 -4.2775262e+03 2.4781132e+03 - 2.0815958e+03 -4.2035131e+03 2.4958487e+03 - 2.1865654e+03 -4.1246966e+03 2.5129202e+03 - 2.2944376e+03 -4.0410334e+03 2.5290985e+03 - 2.4049766e+03 -3.9525462e+03 2.5441445e+03 - 2.5178671e+03 -3.8593336e+03 2.5578158e+03 - 2.6327123e+03 -3.7615793e+03 2.5698744e+03 - 2.7490365e+03 -3.6595574e+03 2.5800955e+03 - 2.8662924e+03 -3.5536343e+03 2.5882775e+03 - 2.9838731e+03 -3.4442648e+03 2.5942513e+03 - 3.1011292e+03 -3.3319833e+03 2.5978889e+03 - 3.2173894e+03 -3.2173894e+03 2.5991104e+03 - 3.3319833e+03 -3.1011292e+03 2.5978889e+03 - 3.4442648e+03 -2.9838731e+03 2.5942513e+03 - 3.5536343e+03 -2.8662924e+03 2.5882775e+03 - 3.6595574e+03 -2.7490365e+03 2.5800955e+03 - 3.7615793e+03 -2.6327123e+03 2.5698744e+03 - 3.8593336e+03 -2.5178671e+03 2.5578158e+03 - 3.9525462e+03 -2.4049766e+03 2.5441445e+03 - 4.0410334e+03 -2.2944376e+03 2.5290985e+03 - 4.1246966e+03 -2.1865654e+03 2.5129202e+03 - 4.2035131e+03 -2.0815958e+03 2.4958487e+03 - 4.2775262e+03 -1.9796894e+03 2.4781132e+03 - 4.3468327e+03 -1.8809395e+03 2.4599287e+03 - 4.4115721e+03 -1.7853803e+03 2.4414922e+03 - 4.4719152e+03 -1.6929960e+03 2.4229815e+03 - 4.5280547e+03 -1.6037301e+03 2.4045539e+03 - 4.5801963e+03 -1.5174939e+03 2.3863468e+03 - 4.6285524e+03 -1.4341739e+03 2.3684785e+03 - 4.6733356e+03 -1.3536389e+03 2.3510494e+03 - 4.7147551e+03 -1.2757456e+03 2.3341436e+03 - 4.7530130e+03 -1.2003432e+03 2.3178309e+03 - 4.7883019e+03 -1.1272771e+03 2.3021682e+03 - 4.8208039e+03 -1.0563920e+03 2.2872014e+03 - 4.8506890e+03 -9.8753415e+02 2.2729667e+03 - 4.8781151e+03 -9.2055268e+02 2.2594927e+03 - 4.9032277e+03 -8.5530109e+02 2.2468008e+03 - 4.9261602e+03 -7.9163779e+02 2.2349071e+03 - 4.9470339e+03 -7.2942656e+02 2.2238232e+03 - 4.9659589e+03 -6.6853669e+02 2.2135570e+03 - 4.9830344e+03 -6.0884301e+02 2.2041134e+03 - 4.9983490e+03 -5.5022567e+02 2.1954953e+03 - 5.0119817e+03 -4.9256991e+02 2.1877037e+03 - 5.0240024e+03 -4.3576570e+02 2.1807384e+03 - 5.0344718e+03 -3.7970733e+02 2.1745985e+03 - 5.0434428e+03 -3.2429298e+02 2.1692823e+03 - 5.0509600e+03 -2.6942426e+02 2.1647882e+03 - 5.0570607e+03 -2.1500570e+02 2.1611142e+03 - 5.0617750e+03 -1.6094432e+02 2.1582587e+03 - 5.0651260e+03 -1.0714911e+02 2.1562202e+03 - 5.0671301e+03 -5.3530525e+01 2.1549976e+03 - 5.0677971e+03 9.6268545e-09 2.1545901e+03 - 5.1004326e+03 -9.6268545e-09 2.0573880e+03 - 5.0997778e+03 5.3266327e+01 2.0577935e+03 - 5.0978100e+03 1.0662099e+02 2.0590104e+03 - 5.0945196e+03 1.6015284e+02 2.0610396e+03 - 5.0898900e+03 2.1395177e+02 2.0638824e+03 - 5.0838980e+03 2.6810923e+02 2.0675411e+03 - 5.0765134e+03 3.2271873e+02 2.0720178e+03 - 5.0676986e+03 3.7787641e+02 2.0773154e+03 - 5.0574085e+03 4.3368151e+02 2.0834366e+03 - 5.0455899e+03 4.9023694e+02 2.0903842e+03 - 5.0321813e+03 5.4764974e+02 2.0981605e+03 - 5.0171121e+03 6.0603161e+02 2.1067672e+03 - 5.0003022e+03 6.6549933e+02 2.1162051e+03 - 4.9816613e+03 7.2617523e+02 2.1264734e+03 - 4.9610885e+03 7.8818749e+02 2.1375692e+03 - 4.9384714e+03 8.5167041e+02 2.1494870e+03 - 4.9136856e+03 9.1676451e+02 2.1622179e+03 - 4.8865941e+03 9.8361646e+02 2.1757486e+03 - 4.8570469e+03 1.0523788e+03 2.1900604e+03 - 4.8248805e+03 1.1232092e+03 2.2051278e+03 - 4.7899181e+03 1.1962697e+03 2.2209177e+03 - 4.7519698e+03 1.2717246e+03 2.2373872e+03 - 4.7108333e+03 1.3497391e+03 2.2544821e+03 - 4.6662953e+03 1.4304755e+03 2.2721355e+03 - 4.6181338e+03 1.5140901e+03 2.2902652e+03 - 4.5661212e+03 1.6007278e+03 2.3087721e+03 - 4.5100287e+03 1.6905168e+03 2.3275384e+03 - 4.4496324e+03 1.7835607e+03 2.3464260e+03 - 4.3847199e+03 1.8799307e+03 2.3652752e+03 - 4.3151001e+03 1.9796564e+03 2.3839043e+03 - 4.2406132e+03 2.0827154e+03 2.4021099e+03 - 4.1611426e+03 2.1890233e+03 2.4196689e+03 - 4.0766280e+03 2.2984238e+03 2.4363415e+03 - 3.9870783e+03 2.4106802e+03 2.4518761e+03 - 3.8925834e+03 2.5254694e+03 2.4660158e+03 - 3.7933253e+03 2.6423793e+03 2.4785073e+03 - 3.6895842e+03 2.7609111e+03 2.4891100e+03 - 3.5817412e+03 2.8804864e+03 2.4976074e+03 - 3.4702748e+03 3.0004606e+03 2.5038170e+03 - 3.3557516e+03 3.1201410e+03 2.5076005e+03 - 3.2388103e+03 3.2388103e+03 2.5088714e+03 - 3.1201410e+03 3.3557516e+03 2.5076005e+03 - 3.0004606e+03 3.4702748e+03 2.5038170e+03 - 2.8804864e+03 3.5817412e+03 2.4976074e+03 - 2.7609111e+03 3.6895842e+03 2.4891100e+03 - 2.6423793e+03 3.7933253e+03 2.4785073e+03 - 2.5254694e+03 3.8925834e+03 2.4660158e+03 - 2.4106802e+03 3.9870783e+03 2.4518761e+03 - 2.2984238e+03 4.0766280e+03 2.4363415e+03 - 2.1890233e+03 4.1611426e+03 2.4196689e+03 - 2.0827154e+03 4.2406132e+03 2.4021099e+03 - 1.9796564e+03 4.3151001e+03 2.3839043e+03 - 1.8799307e+03 4.3847199e+03 2.3652752e+03 - 1.7835607e+03 4.4496324e+03 2.3464260e+03 - 1.6905168e+03 4.5100287e+03 2.3275384e+03 - 1.6007278e+03 4.5661212e+03 2.3087721e+03 - 1.5140901e+03 4.6181338e+03 2.2902652e+03 - 1.4304755e+03 4.6662953e+03 2.2721355e+03 - 1.3497391e+03 4.7108333e+03 2.2544821e+03 - 1.2717246e+03 4.7519698e+03 2.2373872e+03 - 1.1962697e+03 4.7899181e+03 2.2209177e+03 - 1.1232092e+03 4.8248805e+03 2.2051278e+03 - 1.0523788e+03 4.8570469e+03 2.1900604e+03 - 9.8361646e+02 4.8865941e+03 2.1757486e+03 - 9.1676451e+02 4.9136856e+03 2.1622179e+03 - 8.5167041e+02 4.9384714e+03 2.1494870e+03 - 7.8818749e+02 4.9610885e+03 2.1375692e+03 - 7.2617523e+02 4.9816613e+03 2.1264734e+03 - 6.6549933e+02 5.0003022e+03 2.1162051e+03 - 6.0603161e+02 5.0171121e+03 2.1067672e+03 - 5.4764974e+02 5.0321813e+03 2.0981605e+03 - 4.9023694e+02 5.0455899e+03 2.0903842e+03 - 4.3368151e+02 5.0574085e+03 2.0834366e+03 - 3.7787641e+02 5.0676986e+03 2.0773154e+03 - 3.2271873e+02 5.0765134e+03 2.0720178e+03 - 2.6810923e+02 5.0838980e+03 2.0675411e+03 - 2.1395177e+02 5.0898900e+03 2.0638824e+03 - 1.6015284e+02 5.0945196e+03 2.0610396e+03 - 1.0662099e+02 5.0978100e+03 2.0590104e+03 - 5.3266327e+01 5.0997778e+03 2.0577935e+03 - 0.0000000e+00 5.1004326e+03 2.0573880e+03 - -5.3266327e+01 5.0997778e+03 2.0577935e+03 - -1.0662099e+02 5.0978100e+03 2.0590104e+03 - -1.6015284e+02 5.0945196e+03 2.0610396e+03 - -2.1395177e+02 5.0898900e+03 2.0638824e+03 - -2.6810923e+02 5.0838980e+03 2.0675411e+03 - -3.2271873e+02 5.0765134e+03 2.0720178e+03 - -3.7787641e+02 5.0676986e+03 2.0773154e+03 - -4.3368151e+02 5.0574085e+03 2.0834366e+03 - -4.9023694e+02 5.0455899e+03 2.0903842e+03 - -5.4764974e+02 5.0321813e+03 2.0981605e+03 - -6.0603161e+02 5.0171121e+03 2.1067672e+03 - -6.6549933e+02 5.0003022e+03 2.1162051e+03 - -7.2617523e+02 4.9816613e+03 2.1264734e+03 - -7.8818749e+02 4.9610885e+03 2.1375692e+03 - -8.5167041e+02 4.9384714e+03 2.1494870e+03 - -9.1676451e+02 4.9136856e+03 2.1622179e+03 - -9.8361646e+02 4.8865941e+03 2.1757486e+03 - -1.0523788e+03 4.8570469e+03 2.1900604e+03 - -1.1232092e+03 4.8248805e+03 2.2051278e+03 - -1.1962697e+03 4.7899181e+03 2.2209177e+03 - -1.2717246e+03 4.7519698e+03 2.2373872e+03 - -1.3497391e+03 4.7108333e+03 2.2544821e+03 - -1.4304755e+03 4.6662953e+03 2.2721355e+03 - -1.5140901e+03 4.6181338e+03 2.2902652e+03 - -1.6007278e+03 4.5661212e+03 2.3087721e+03 - -1.6905168e+03 4.5100287e+03 2.3275384e+03 - -1.7835607e+03 4.4496324e+03 2.3464260e+03 - -1.8799307e+03 4.3847199e+03 2.3652752e+03 - -1.9796564e+03 4.3151001e+03 2.3839043e+03 - -2.0827154e+03 4.2406132e+03 2.4021099e+03 - -2.1890233e+03 4.1611426e+03 2.4196689e+03 - -2.2984238e+03 4.0766280e+03 2.4363415e+03 - -2.4106802e+03 3.9870783e+03 2.4518761e+03 - -2.5254694e+03 3.8925834e+03 2.4660158e+03 - -2.6423793e+03 3.7933253e+03 2.4785073e+03 - -2.7609111e+03 3.6895842e+03 2.4891100e+03 - -2.8804864e+03 3.5817412e+03 2.4976074e+03 - -3.0004606e+03 3.4702748e+03 2.5038170e+03 - -3.1201410e+03 3.3557516e+03 2.5076005e+03 - -3.2388103e+03 3.2388103e+03 2.5088714e+03 - -3.3557516e+03 3.1201410e+03 2.5076005e+03 - -3.4702748e+03 3.0004606e+03 2.5038170e+03 - -3.5817412e+03 2.8804864e+03 2.4976074e+03 - -3.6895842e+03 2.7609111e+03 2.4891100e+03 - -3.7933253e+03 2.6423793e+03 2.4785073e+03 - -3.8925834e+03 2.5254694e+03 2.4660158e+03 - -3.9870783e+03 2.4106802e+03 2.4518761e+03 - -4.0766280e+03 2.2984238e+03 2.4363415e+03 - -4.1611426e+03 2.1890233e+03 2.4196689e+03 - -4.2406132e+03 2.0827154e+03 2.4021099e+03 - -4.3151001e+03 1.9796564e+03 2.3839043e+03 - -4.3847199e+03 1.8799307e+03 2.3652752e+03 - -4.4496324e+03 1.7835607e+03 2.3464260e+03 - -4.5100287e+03 1.6905168e+03 2.3275384e+03 - -4.5661212e+03 1.6007278e+03 2.3087721e+03 - -4.6181338e+03 1.5140901e+03 2.2902652e+03 - -4.6662953e+03 1.4304755e+03 2.2721355e+03 - -4.7108333e+03 1.3497391e+03 2.2544821e+03 - -4.7519698e+03 1.2717246e+03 2.2373872e+03 - -4.7899181e+03 1.1962697e+03 2.2209177e+03 - -4.8248805e+03 1.1232092e+03 2.2051278e+03 - -4.8570469e+03 1.0523788e+03 2.1900604e+03 - -4.8865941e+03 9.8361646e+02 2.1757486e+03 - -4.9136856e+03 9.1676451e+02 2.1622179e+03 - -4.9384714e+03 8.5167041e+02 2.1494870e+03 - -4.9610885e+03 7.8818749e+02 2.1375692e+03 - -4.9816613e+03 7.2617523e+02 2.1264734e+03 - -5.0003022e+03 6.6549933e+02 2.1162051e+03 - -5.0171121e+03 6.0603161e+02 2.1067672e+03 - -5.0321813e+03 5.4764974e+02 2.0981605e+03 - -5.0455899e+03 4.9023694e+02 2.0903842e+03 - -5.0574085e+03 4.3368151e+02 2.0834366e+03 - -5.0676986e+03 3.7787641e+02 2.0773154e+03 - -5.0765134e+03 3.2271873e+02 2.0720178e+03 - -5.0838980e+03 2.6810923e+02 2.0675411e+03 - -5.0898900e+03 2.1395177e+02 2.0638824e+03 - -5.0945196e+03 1.6015284e+02 2.0610396e+03 - -5.0978100e+03 1.0662099e+02 2.0590104e+03 - -5.0997778e+03 5.3266327e+01 2.0577935e+03 - -5.1004326e+03 4.8134273e-09 2.0573880e+03 - -5.0997778e+03 -5.3266327e+01 2.0577935e+03 - -5.0978100e+03 -1.0662099e+02 2.0590104e+03 - -5.0945196e+03 -1.6015284e+02 2.0610396e+03 - -5.0898900e+03 -2.1395177e+02 2.0638824e+03 - -5.0838980e+03 -2.6810923e+02 2.0675411e+03 - -5.0765134e+03 -3.2271873e+02 2.0720178e+03 - -5.0676986e+03 -3.7787641e+02 2.0773154e+03 - -5.0574085e+03 -4.3368151e+02 2.0834366e+03 - -5.0455899e+03 -4.9023694e+02 2.0903842e+03 - -5.0321813e+03 -5.4764974e+02 2.0981605e+03 - -5.0171121e+03 -6.0603161e+02 2.1067672e+03 - -5.0003022e+03 -6.6549933e+02 2.1162051e+03 - -4.9816613e+03 -7.2617523e+02 2.1264734e+03 - -4.9610885e+03 -7.8818749e+02 2.1375692e+03 - -4.9384714e+03 -8.5167041e+02 2.1494870e+03 - -4.9136856e+03 -9.1676451e+02 2.1622179e+03 - -4.8865941e+03 -9.8361646e+02 2.1757486e+03 - -4.8570469e+03 -1.0523788e+03 2.1900604e+03 - -4.8248805e+03 -1.1232092e+03 2.2051278e+03 - -4.7899181e+03 -1.1962697e+03 2.2209177e+03 - -4.7519698e+03 -1.2717246e+03 2.2373872e+03 - -4.7108333e+03 -1.3497391e+03 2.2544821e+03 - -4.6662953e+03 -1.4304755e+03 2.2721355e+03 - -4.6181338e+03 -1.5140901e+03 2.2902652e+03 - -4.5661212e+03 -1.6007278e+03 2.3087721e+03 - -4.5100287e+03 -1.6905168e+03 2.3275384e+03 - -4.4496324e+03 -1.7835607e+03 2.3464260e+03 - -4.3847199e+03 -1.8799307e+03 2.3652752e+03 - -4.3151001e+03 -1.9796564e+03 2.3839043e+03 - -4.2406132e+03 -2.0827154e+03 2.4021099e+03 - -4.1611426e+03 -2.1890233e+03 2.4196689e+03 - -4.0766280e+03 -2.2984238e+03 2.4363415e+03 - -3.9870783e+03 -2.4106802e+03 2.4518761e+03 - -3.8925834e+03 -2.5254694e+03 2.4660158e+03 - -3.7933253e+03 -2.6423793e+03 2.4785073e+03 - -3.6895842e+03 -2.7609111e+03 2.4891100e+03 - -3.5817412e+03 -2.8804864e+03 2.4976074e+03 - -3.4702748e+03 -3.0004606e+03 2.5038170e+03 - -3.3557516e+03 -3.1201410e+03 2.5076005e+03 - -3.2388103e+03 -3.2388103e+03 2.5088714e+03 - -3.1201410e+03 -3.3557516e+03 2.5076005e+03 - -3.0004606e+03 -3.4702748e+03 2.5038170e+03 - -2.8804864e+03 -3.5817412e+03 2.4976074e+03 - -2.7609111e+03 -3.6895842e+03 2.4891100e+03 - -2.6423793e+03 -3.7933253e+03 2.4785073e+03 - -2.5254694e+03 -3.8925834e+03 2.4660158e+03 - -2.4106802e+03 -3.9870783e+03 2.4518761e+03 - -2.2984238e+03 -4.0766280e+03 2.4363415e+03 - -2.1890233e+03 -4.1611426e+03 2.4196689e+03 - -2.0827154e+03 -4.2406132e+03 2.4021099e+03 - -1.9796564e+03 -4.3151001e+03 2.3839043e+03 - -1.8799307e+03 -4.3847199e+03 2.3652752e+03 - -1.7835607e+03 -4.4496324e+03 2.3464260e+03 - -1.6905168e+03 -4.5100287e+03 2.3275384e+03 - -1.6007278e+03 -4.5661212e+03 2.3087721e+03 - -1.5140901e+03 -4.6181338e+03 2.2902652e+03 - -1.4304755e+03 -4.6662953e+03 2.2721355e+03 - -1.3497391e+03 -4.7108333e+03 2.2544821e+03 - -1.2717246e+03 -4.7519698e+03 2.2373872e+03 - -1.1962697e+03 -4.7899181e+03 2.2209177e+03 - -1.1232092e+03 -4.8248805e+03 2.2051278e+03 - -1.0523788e+03 -4.8570469e+03 2.1900604e+03 - -9.8361646e+02 -4.8865941e+03 2.1757486e+03 - -9.1676451e+02 -4.9136856e+03 2.1622179e+03 - -8.5167041e+02 -4.9384714e+03 2.1494870e+03 - -7.8818749e+02 -4.9610885e+03 2.1375692e+03 - -7.2617523e+02 -4.9816613e+03 2.1264734e+03 - -6.6549933e+02 -5.0003022e+03 2.1162051e+03 - -6.0603161e+02 -5.0171121e+03 2.1067672e+03 - -5.4764974e+02 -5.0321813e+03 2.0981605e+03 - -4.9023694e+02 -5.0455899e+03 2.0903842e+03 - -4.3368151e+02 -5.0574085e+03 2.0834366e+03 - -3.7787641e+02 -5.0676986e+03 2.0773154e+03 - -3.2271873e+02 -5.0765134e+03 2.0720178e+03 - -2.6810923e+02 -5.0838980e+03 2.0675411e+03 - -2.1395177e+02 -5.0898900e+03 2.0638824e+03 - -1.6015284e+02 -5.0945196e+03 2.0610396e+03 - -1.0662099e+02 -5.0978100e+03 2.0590104e+03 - -5.3266327e+01 -5.0997778e+03 2.0577935e+03 - 4.8134273e-09 -5.1004326e+03 2.0573880e+03 - 5.3266327e+01 -5.0997778e+03 2.0577935e+03 - 1.0662099e+02 -5.0978100e+03 2.0590104e+03 - 1.6015284e+02 -5.0945196e+03 2.0610396e+03 - 2.1395177e+02 -5.0898900e+03 2.0638824e+03 - 2.6810923e+02 -5.0838980e+03 2.0675411e+03 - 3.2271873e+02 -5.0765134e+03 2.0720178e+03 - 3.7787641e+02 -5.0676986e+03 2.0773154e+03 - 4.3368151e+02 -5.0574085e+03 2.0834366e+03 - 4.9023694e+02 -5.0455899e+03 2.0903842e+03 - 5.4764974e+02 -5.0321813e+03 2.0981605e+03 - 6.0603161e+02 -5.0171121e+03 2.1067672e+03 - 6.6549933e+02 -5.0003022e+03 2.1162051e+03 - 7.2617523e+02 -4.9816613e+03 2.1264734e+03 - 7.8818749e+02 -4.9610885e+03 2.1375692e+03 - 8.5167041e+02 -4.9384714e+03 2.1494870e+03 - 9.1676451e+02 -4.9136856e+03 2.1622179e+03 - 9.8361646e+02 -4.8865941e+03 2.1757486e+03 - 1.0523788e+03 -4.8570469e+03 2.1900604e+03 - 1.1232092e+03 -4.8248805e+03 2.2051278e+03 - 1.1962697e+03 -4.7899181e+03 2.2209177e+03 - 1.2717246e+03 -4.7519698e+03 2.2373872e+03 - 1.3497391e+03 -4.7108333e+03 2.2544821e+03 - 1.4304755e+03 -4.6662953e+03 2.2721355e+03 - 1.5140901e+03 -4.6181338e+03 2.2902652e+03 - 1.6007278e+03 -4.5661212e+03 2.3087721e+03 - 1.6905168e+03 -4.5100287e+03 2.3275384e+03 - 1.7835607e+03 -4.4496324e+03 2.3464260e+03 - 1.8799307e+03 -4.3847199e+03 2.3652752e+03 - 1.9796564e+03 -4.3151001e+03 2.3839043e+03 - 2.0827154e+03 -4.2406132e+03 2.4021099e+03 - 2.1890233e+03 -4.1611426e+03 2.4196689e+03 - 2.2984238e+03 -4.0766280e+03 2.4363415e+03 - 2.4106802e+03 -3.9870783e+03 2.4518761e+03 - 2.5254694e+03 -3.8925834e+03 2.4660158e+03 - 2.6423793e+03 -3.7933253e+03 2.4785073e+03 - 2.7609111e+03 -3.6895842e+03 2.4891100e+03 - 2.8804864e+03 -3.5817412e+03 2.4976074e+03 - 3.0004606e+03 -3.4702748e+03 2.5038170e+03 - 3.1201410e+03 -3.3557516e+03 2.5076005e+03 - 3.2388103e+03 -3.2388103e+03 2.5088714e+03 - 3.3557516e+03 -3.1201410e+03 2.5076005e+03 - 3.4702748e+03 -3.0004606e+03 2.5038170e+03 - 3.5817412e+03 -2.8804864e+03 2.4976074e+03 - 3.6895842e+03 -2.7609111e+03 2.4891100e+03 - 3.7933253e+03 -2.6423793e+03 2.4785073e+03 - 3.8925834e+03 -2.5254694e+03 2.4660158e+03 - 3.9870783e+03 -2.4106802e+03 2.4518761e+03 - 4.0766280e+03 -2.2984238e+03 2.4363415e+03 - 4.1611426e+03 -2.1890233e+03 2.4196689e+03 - 4.2406132e+03 -2.0827154e+03 2.4021099e+03 - 4.3151001e+03 -1.9796564e+03 2.3839043e+03 - 4.3847199e+03 -1.8799307e+03 2.3652752e+03 - 4.4496324e+03 -1.7835607e+03 2.3464260e+03 - 4.5100287e+03 -1.6905168e+03 2.3275384e+03 - 4.5661212e+03 -1.6007278e+03 2.3087721e+03 - 4.6181338e+03 -1.5140901e+03 2.2902652e+03 - 4.6662953e+03 -1.4304755e+03 2.2721355e+03 - 4.7108333e+03 -1.3497391e+03 2.2544821e+03 - 4.7519698e+03 -1.2717246e+03 2.2373872e+03 - 4.7899181e+03 -1.1962697e+03 2.2209177e+03 - 4.8248805e+03 -1.1232092e+03 2.2051278e+03 - 4.8570469e+03 -1.0523788e+03 2.1900604e+03 - 4.8865941e+03 -9.8361646e+02 2.1757486e+03 - 4.9136856e+03 -9.1676451e+02 2.1622179e+03 - 4.9384714e+03 -8.5167041e+02 2.1494870e+03 - 4.9610885e+03 -7.8818749e+02 2.1375692e+03 - 4.9816613e+03 -7.2617523e+02 2.1264734e+03 - 5.0003022e+03 -6.6549933e+02 2.1162051e+03 - 5.0171121e+03 -6.0603161e+02 2.1067672e+03 - 5.0321813e+03 -5.4764974e+02 2.0981605e+03 - 5.0455899e+03 -4.9023694e+02 2.0903842e+03 - 5.0574085e+03 -4.3368151e+02 2.0834366e+03 - 5.0676986e+03 -3.7787641e+02 2.0773154e+03 - 5.0765134e+03 -3.2271873e+02 2.0720178e+03 - 5.0838980e+03 -2.6810923e+02 2.0675411e+03 - 5.0898900e+03 -2.1395177e+02 2.0638824e+03 - 5.0945196e+03 -1.6015284e+02 2.0610396e+03 - 5.0978100e+03 -1.0662099e+02 2.0590104e+03 - 5.0997778e+03 -5.3266327e+01 2.0577935e+03 - 5.1004326e+03 0.0000000e+00 2.0573880e+03 - 5.1321762e+03 0.0000000e+00 1.9563068e+03 - 5.1315340e+03 5.3002684e+01 1.9567083e+03 - 5.1296040e+03 1.0609388e+02 1.9579129e+03 - 5.1263764e+03 1.5936265e+02 1.9599220e+03 - 5.1218348e+03 2.1289914e+02 1.9627372e+03 - 5.1159557e+03 2.6679512e+02 1.9663611e+03 - 5.1087090e+03 3.2114455e+02 1.9707969e+03 - 5.1000568e+03 3.7604414e+02 1.9760479e+03 - 5.0899537e+03 4.3159386e+02 1.9821179e+03 - 5.0783463e+03 4.8789758e+02 1.9890109e+03 - 5.0651725e+03 5.4506357e+02 1.9967307e+03 - 5.0503609e+03 6.0320503e+02 2.0052804e+03 - 5.0338306e+03 6.6244068e+02 2.0146626e+03 - 5.0154899e+03 7.2289516e+02 2.0248784e+03 - 4.9952363e+03 7.8469952e+02 2.0359274e+03 - 4.9729552e+03 8.4799153e+02 2.0478063e+03 - 4.9485196e+03 9.1291588e+02 2.0605091e+03 - 4.9217888e+03 9.7962423e+02 2.0740251e+03 - 4.8926087e+03 1.0482750e+03 2.0883389e+03 - 4.8608104e+03 1.1190328e+03 2.1034284e+03 - 4.8262107e+03 1.1920676e+03 2.1192637e+03 - 4.7886115e+03 1.2675533e+03 2.1358054e+03 - 4.7478012e+03 1.3456654e+03 2.1530028e+03 - 4.7035553e+03 1.4265784e+03 2.1707919e+03 - 4.6556386e+03 1.5104616e+03 2.1890934e+03 - 4.6038083e+03 1.5974747e+03 2.2078106e+03 - 4.5478186e+03 1.6877608e+03 2.2268268e+03 - 4.4874262e+03 1.7814398e+03 2.2460043e+03 - 4.4223985e+03 1.8785986e+03 2.2651820e+03 - 4.3525223e+03 1.9792820e+03 2.2841752e+03 - 4.2776156e+03 2.0834808e+03 2.3027755e+03 - 4.1975406e+03 2.1911207e+03 2.3207524e+03 - 4.1122175e+03 2.3020512e+03 2.3378564e+03 - 4.0216393e+03 2.4160356e+03 2.3538238e+03 - 3.9258857e+03 2.5327436e+03 2.3683840e+03 - 3.8251353e+03 2.6517480e+03 2.3812682e+03 - 3.7196734e+03 2.7725257e+03 2.3922204e+03 - 3.6098958e+03 2.8944658e+03 2.4010085e+03 - 3.4963057e+03 3.0168836e+03 2.4074366e+03 - 3.3795033e+03 3.1390403e+03 2.4113558e+03 - 3.2601691e+03 3.2601691e+03 2.4126727e+03 - 3.1390403e+03 3.3795033e+03 2.4113558e+03 - 3.0168836e+03 3.4963057e+03 2.4074366e+03 - 2.8944658e+03 3.6098958e+03 2.4010085e+03 - 2.7725257e+03 3.7196734e+03 2.3922204e+03 - 2.6517480e+03 3.8251353e+03 2.3812682e+03 - 2.5327436e+03 3.9258857e+03 2.3683840e+03 - 2.4160356e+03 4.0216393e+03 2.3538238e+03 - 2.3020512e+03 4.1122175e+03 2.3378564e+03 - 2.1911207e+03 4.1975406e+03 2.3207524e+03 - 2.0834808e+03 4.2776156e+03 2.3027755e+03 - 1.9792820e+03 4.3525223e+03 2.2841752e+03 - 1.8785986e+03 4.4223985e+03 2.2651820e+03 - 1.7814398e+03 4.4874262e+03 2.2460043e+03 - 1.6877608e+03 4.5478186e+03 2.2268268e+03 - 1.5974747e+03 4.6038083e+03 2.2078106e+03 - 1.5104616e+03 4.6556386e+03 2.1890934e+03 - 1.4265784e+03 4.7035553e+03 2.1707919e+03 - 1.3456654e+03 4.7478012e+03 2.1530028e+03 - 1.2675533e+03 4.7886115e+03 2.1358054e+03 - 1.1920676e+03 4.8262107e+03 2.1192637e+03 - 1.1190328e+03 4.8608104e+03 2.1034284e+03 - 1.0482750e+03 4.8926087e+03 2.0883389e+03 - 9.7962423e+02 4.9217888e+03 2.0740251e+03 - 9.1291588e+02 4.9485196e+03 2.0605091e+03 - 8.4799153e+02 4.9729552e+03 2.0478063e+03 - 7.8469952e+02 4.9952363e+03 2.0359274e+03 - 7.2289516e+02 5.0154899e+03 2.0248784e+03 - 6.6244068e+02 5.0338306e+03 2.0146626e+03 - 6.0320503e+02 5.0503609e+03 2.0052804e+03 - 5.4506357e+02 5.0651725e+03 1.9967307e+03 - 4.8789758e+02 5.0783463e+03 1.9890109e+03 - 4.3159386e+02 5.0899537e+03 1.9821179e+03 - 3.7604414e+02 5.1000568e+03 1.9760479e+03 - 3.2114455e+02 5.1087090e+03 1.9707969e+03 - 2.6679512e+02 5.1159557e+03 1.9663611e+03 - 2.1289914e+02 5.1218348e+03 1.9627372e+03 - 1.5936265e+02 5.1263764e+03 1.9599220e+03 - 1.0609388e+02 5.1296040e+03 1.9579129e+03 - 5.3002684e+01 5.1315340e+03 1.9567083e+03 - -9.6268545e-09 5.1321762e+03 1.9563068e+03 - -5.3002684e+01 5.1315340e+03 1.9567083e+03 - -1.0609388e+02 5.1296040e+03 1.9579129e+03 - -1.5936265e+02 5.1263764e+03 1.9599220e+03 - -2.1289914e+02 5.1218348e+03 1.9627372e+03 - -2.6679512e+02 5.1159557e+03 1.9663611e+03 - -3.2114455e+02 5.1087090e+03 1.9707969e+03 - -3.7604414e+02 5.1000568e+03 1.9760479e+03 - -4.3159386e+02 5.0899537e+03 1.9821179e+03 - -4.8789758e+02 5.0783463e+03 1.9890109e+03 - -5.4506357e+02 5.0651725e+03 1.9967307e+03 - -6.0320503e+02 5.0503609e+03 2.0052804e+03 - -6.6244068e+02 5.0338306e+03 2.0146626e+03 - -7.2289516e+02 5.0154899e+03 2.0248784e+03 - -7.8469952e+02 4.9952363e+03 2.0359274e+03 - -8.4799153e+02 4.9729552e+03 2.0478063e+03 - -9.1291588e+02 4.9485196e+03 2.0605091e+03 - -9.7962423e+02 4.9217888e+03 2.0740251e+03 - -1.0482750e+03 4.8926087e+03 2.0883389e+03 - -1.1190328e+03 4.8608104e+03 2.1034284e+03 - -1.1920676e+03 4.8262107e+03 2.1192637e+03 - -1.2675533e+03 4.7886115e+03 2.1358054e+03 - -1.3456654e+03 4.7478012e+03 2.1530028e+03 - -1.4265784e+03 4.7035553e+03 2.1707919e+03 - -1.5104616e+03 4.6556386e+03 2.1890934e+03 - -1.5974747e+03 4.6038083e+03 2.2078106e+03 - -1.6877608e+03 4.5478186e+03 2.2268268e+03 - -1.7814398e+03 4.4874262e+03 2.2460043e+03 - -1.8785986e+03 4.4223985e+03 2.2651820e+03 - -1.9792820e+03 4.3525223e+03 2.2841752e+03 - -2.0834808e+03 4.2776156e+03 2.3027755e+03 - -2.1911207e+03 4.1975406e+03 2.3207524e+03 - -2.3020512e+03 4.1122175e+03 2.3378564e+03 - -2.4160356e+03 4.0216393e+03 2.3538238e+03 - -2.5327436e+03 3.9258857e+03 2.3683840e+03 - -2.6517480e+03 3.8251353e+03 2.3812682e+03 - -2.7725257e+03 3.7196734e+03 2.3922204e+03 - -2.8944658e+03 3.6098958e+03 2.4010085e+03 - -3.0168836e+03 3.4963057e+03 2.4074366e+03 - -3.1390403e+03 3.3795033e+03 2.4113558e+03 - -3.2601691e+03 3.2601691e+03 2.4126727e+03 - -3.3795033e+03 3.1390403e+03 2.4113558e+03 - -3.4963057e+03 3.0168836e+03 2.4074366e+03 - -3.6098958e+03 2.8944658e+03 2.4010085e+03 - -3.7196734e+03 2.7725257e+03 2.3922204e+03 - -3.8251353e+03 2.6517480e+03 2.3812682e+03 - -3.9258857e+03 2.5327436e+03 2.3683840e+03 - -4.0216393e+03 2.4160356e+03 2.3538238e+03 - -4.1122175e+03 2.3020512e+03 2.3378564e+03 - -4.1975406e+03 2.1911207e+03 2.3207524e+03 - -4.2776156e+03 2.0834808e+03 2.3027755e+03 - -4.3525223e+03 1.9792820e+03 2.2841752e+03 - -4.4223985e+03 1.8785986e+03 2.2651820e+03 - -4.4874262e+03 1.7814398e+03 2.2460043e+03 - -4.5478186e+03 1.6877608e+03 2.2268268e+03 - -4.6038083e+03 1.5974747e+03 2.2078106e+03 - -4.6556386e+03 1.5104616e+03 2.1890934e+03 - -4.7035553e+03 1.4265784e+03 2.1707919e+03 - -4.7478012e+03 1.3456654e+03 2.1530028e+03 - -4.7886115e+03 1.2675533e+03 2.1358054e+03 - -4.8262107e+03 1.1920676e+03 2.1192637e+03 - -4.8608104e+03 1.1190328e+03 2.1034284e+03 - -4.8926087e+03 1.0482750e+03 2.0883389e+03 - -4.9217888e+03 9.7962423e+02 2.0740251e+03 - -4.9485196e+03 9.1291588e+02 2.0605091e+03 - -4.9729552e+03 8.4799153e+02 2.0478063e+03 - -4.9952363e+03 7.8469952e+02 2.0359274e+03 - -5.0154899e+03 7.2289516e+02 2.0248784e+03 - -5.0338306e+03 6.6244068e+02 2.0146626e+03 - -5.0503609e+03 6.0320503e+02 2.0052804e+03 - -5.0651725e+03 5.4506357e+02 1.9967307e+03 - -5.0783463e+03 4.8789758e+02 1.9890109e+03 - -5.0899537e+03 4.3159386e+02 1.9821179e+03 - -5.1000568e+03 3.7604414e+02 1.9760479e+03 - -5.1087090e+03 3.2114455e+02 1.9707969e+03 - -5.1159557e+03 2.6679512e+02 1.9663611e+03 - -5.1218348e+03 2.1289914e+02 1.9627372e+03 - -5.1263764e+03 1.5936265e+02 1.9599220e+03 - -5.1296040e+03 1.0609388e+02 1.9579129e+03 - -5.1315340e+03 5.3002684e+01 1.9567083e+03 - -5.1321762e+03 0.0000000e+00 1.9563068e+03 - -5.1315340e+03 -5.3002684e+01 1.9567083e+03 - -5.1296040e+03 -1.0609388e+02 1.9579129e+03 - -5.1263764e+03 -1.5936265e+02 1.9599220e+03 - -5.1218348e+03 -2.1289914e+02 1.9627372e+03 - -5.1159557e+03 -2.6679512e+02 1.9663611e+03 - -5.1087090e+03 -3.2114455e+02 1.9707969e+03 - -5.1000568e+03 -3.7604414e+02 1.9760479e+03 - -5.0899537e+03 -4.3159386e+02 1.9821179e+03 - -5.0783463e+03 -4.8789758e+02 1.9890109e+03 - -5.0651725e+03 -5.4506357e+02 1.9967307e+03 - -5.0503609e+03 -6.0320503e+02 2.0052804e+03 - -5.0338306e+03 -6.6244068e+02 2.0146626e+03 - -5.0154899e+03 -7.2289516e+02 2.0248784e+03 - -4.9952363e+03 -7.8469952e+02 2.0359274e+03 - -4.9729552e+03 -8.4799153e+02 2.0478063e+03 - -4.9485196e+03 -9.1291588e+02 2.0605091e+03 - -4.9217888e+03 -9.7962423e+02 2.0740251e+03 - -4.8926087e+03 -1.0482750e+03 2.0883389e+03 - -4.8608104e+03 -1.1190328e+03 2.1034284e+03 - -4.8262107e+03 -1.1920676e+03 2.1192637e+03 - -4.7886115e+03 -1.2675533e+03 2.1358054e+03 - -4.7478012e+03 -1.3456654e+03 2.1530028e+03 - -4.7035553e+03 -1.4265784e+03 2.1707919e+03 - -4.6556386e+03 -1.5104616e+03 2.1890934e+03 - -4.6038083e+03 -1.5974747e+03 2.2078106e+03 - -4.5478186e+03 -1.6877608e+03 2.2268268e+03 - -4.4874262e+03 -1.7814398e+03 2.2460043e+03 - -4.4223985e+03 -1.8785986e+03 2.2651820e+03 - -4.3525223e+03 -1.9792820e+03 2.2841752e+03 - -4.2776156e+03 -2.0834808e+03 2.3027755e+03 - -4.1975406e+03 -2.1911207e+03 2.3207524e+03 - -4.1122175e+03 -2.3020512e+03 2.3378564e+03 - -4.0216393e+03 -2.4160356e+03 2.3538238e+03 - -3.9258857e+03 -2.5327436e+03 2.3683840e+03 - -3.8251353e+03 -2.6517480e+03 2.3812682e+03 - -3.7196734e+03 -2.7725257e+03 2.3922204e+03 - -3.6098958e+03 -2.8944658e+03 2.4010085e+03 - -3.4963057e+03 -3.0168836e+03 2.4074366e+03 - -3.3795033e+03 -3.1390403e+03 2.4113558e+03 - -3.2601691e+03 -3.2601691e+03 2.4126727e+03 - -3.1390403e+03 -3.3795033e+03 2.4113558e+03 - -3.0168836e+03 -3.4963057e+03 2.4074366e+03 - -2.8944658e+03 -3.6098958e+03 2.4010085e+03 - -2.7725257e+03 -3.7196734e+03 2.3922204e+03 - -2.6517480e+03 -3.8251353e+03 2.3812682e+03 - -2.5327436e+03 -3.9258857e+03 2.3683840e+03 - -2.4160356e+03 -4.0216393e+03 2.3538238e+03 - -2.3020512e+03 -4.1122175e+03 2.3378564e+03 - -2.1911207e+03 -4.1975406e+03 2.3207524e+03 - -2.0834808e+03 -4.2776156e+03 2.3027755e+03 - -1.9792820e+03 -4.3525223e+03 2.2841752e+03 - -1.8785986e+03 -4.4223985e+03 2.2651820e+03 - -1.7814398e+03 -4.4874262e+03 2.2460043e+03 - -1.6877608e+03 -4.5478186e+03 2.2268268e+03 - -1.5974747e+03 -4.6038083e+03 2.2078106e+03 - -1.5104616e+03 -4.6556386e+03 2.1890934e+03 - -1.4265784e+03 -4.7035553e+03 2.1707919e+03 - -1.3456654e+03 -4.7478012e+03 2.1530028e+03 - -1.2675533e+03 -4.7886115e+03 2.1358054e+03 - -1.1920676e+03 -4.8262107e+03 2.1192637e+03 - -1.1190328e+03 -4.8608104e+03 2.1034284e+03 - -1.0482750e+03 -4.8926087e+03 2.0883389e+03 - -9.7962423e+02 -4.9217888e+03 2.0740251e+03 - -9.1291588e+02 -4.9485196e+03 2.0605091e+03 - -8.4799153e+02 -4.9729552e+03 2.0478063e+03 - -7.8469952e+02 -4.9952363e+03 2.0359274e+03 - -7.2289516e+02 -5.0154899e+03 2.0248784e+03 - -6.6244068e+02 -5.0338306e+03 2.0146626e+03 - -6.0320503e+02 -5.0503609e+03 2.0052804e+03 - -5.4506357e+02 -5.0651725e+03 1.9967307e+03 - -4.8789758e+02 -5.0783463e+03 1.9890109e+03 - -4.3159386e+02 -5.0899537e+03 1.9821179e+03 - -3.7604414e+02 -5.1000568e+03 1.9760479e+03 - -3.2114455e+02 -5.1087090e+03 1.9707969e+03 - -2.6679512e+02 -5.1159557e+03 1.9663611e+03 - -2.1289914e+02 -5.1218348e+03 1.9627372e+03 - -1.5936265e+02 -5.1263764e+03 1.9599220e+03 - -1.0609388e+02 -5.1296040e+03 1.9579129e+03 - -5.3002684e+01 -5.1315340e+03 1.9567083e+03 - 0.0000000e+00 -5.1321762e+03 1.9563068e+03 - 5.3002684e+01 -5.1315340e+03 1.9567083e+03 - 1.0609388e+02 -5.1296040e+03 1.9579129e+03 - 1.5936265e+02 -5.1263764e+03 1.9599220e+03 - 2.1289914e+02 -5.1218348e+03 1.9627372e+03 - 2.6679512e+02 -5.1159557e+03 1.9663611e+03 - 3.2114455e+02 -5.1087090e+03 1.9707969e+03 - 3.7604414e+02 -5.1000568e+03 1.9760479e+03 - 4.3159386e+02 -5.0899537e+03 1.9821179e+03 - 4.8789758e+02 -5.0783463e+03 1.9890109e+03 - 5.4506357e+02 -5.0651725e+03 1.9967307e+03 - 6.0320503e+02 -5.0503609e+03 2.0052804e+03 - 6.6244068e+02 -5.0338306e+03 2.0146626e+03 - 7.2289516e+02 -5.0154899e+03 2.0248784e+03 - 7.8469952e+02 -4.9952363e+03 2.0359274e+03 - 8.4799153e+02 -4.9729552e+03 2.0478063e+03 - 9.1291588e+02 -4.9485196e+03 2.0605091e+03 - 9.7962423e+02 -4.9217888e+03 2.0740251e+03 - 1.0482750e+03 -4.8926087e+03 2.0883389e+03 - 1.1190328e+03 -4.8608104e+03 2.1034284e+03 - 1.1920676e+03 -4.8262107e+03 2.1192637e+03 - 1.2675533e+03 -4.7886115e+03 2.1358054e+03 - 1.3456654e+03 -4.7478012e+03 2.1530028e+03 - 1.4265784e+03 -4.7035553e+03 2.1707919e+03 - 1.5104616e+03 -4.6556386e+03 2.1890934e+03 - 1.5974747e+03 -4.6038083e+03 2.2078106e+03 - 1.6877608e+03 -4.5478186e+03 2.2268268e+03 - 1.7814398e+03 -4.4874262e+03 2.2460043e+03 - 1.8785986e+03 -4.4223985e+03 2.2651820e+03 - 1.9792820e+03 -4.3525223e+03 2.2841752e+03 - 2.0834808e+03 -4.2776156e+03 2.3027755e+03 - 2.1911207e+03 -4.1975406e+03 2.3207524e+03 - 2.3020512e+03 -4.1122175e+03 2.3378564e+03 - 2.4160356e+03 -4.0216393e+03 2.3538238e+03 - 2.5327436e+03 -3.9258857e+03 2.3683840e+03 - 2.6517480e+03 -3.8251353e+03 2.3812682e+03 - 2.7725257e+03 -3.7196734e+03 2.3922204e+03 - 2.8944658e+03 -3.6098958e+03 2.4010085e+03 - 3.0168836e+03 -3.4963057e+03 2.4074366e+03 - 3.1390403e+03 -3.3795033e+03 2.4113558e+03 - 3.2601691e+03 -3.2601691e+03 2.4126727e+03 - 3.3795033e+03 -3.1390403e+03 2.4113558e+03 - 3.4963057e+03 -3.0168836e+03 2.4074366e+03 - 3.6098958e+03 -2.8944658e+03 2.4010085e+03 - 3.7196734e+03 -2.7725257e+03 2.3922204e+03 - 3.8251353e+03 -2.6517480e+03 2.3812682e+03 - 3.9258857e+03 -2.5327436e+03 2.3683840e+03 - 4.0216393e+03 -2.4160356e+03 2.3538238e+03 - 4.1122175e+03 -2.3020512e+03 2.3378564e+03 - 4.1975406e+03 -2.1911207e+03 2.3207524e+03 - 4.2776156e+03 -2.0834808e+03 2.3027755e+03 - 4.3525223e+03 -1.9792820e+03 2.2841752e+03 - 4.4223985e+03 -1.8785986e+03 2.2651820e+03 - 4.4874262e+03 -1.7814398e+03 2.2460043e+03 - 4.5478186e+03 -1.6877608e+03 2.2268268e+03 - 4.6038083e+03 -1.5974747e+03 2.2078106e+03 - 4.6556386e+03 -1.5104616e+03 2.1890934e+03 - 4.7035553e+03 -1.4265784e+03 2.1707919e+03 - 4.7478012e+03 -1.3456654e+03 2.1530028e+03 - 4.7886115e+03 -1.2675533e+03 2.1358054e+03 - 4.8262107e+03 -1.1920676e+03 2.1192637e+03 - 4.8608104e+03 -1.1190328e+03 2.1034284e+03 - 4.8926087e+03 -1.0482750e+03 2.0883389e+03 - 4.9217888e+03 -9.7962423e+02 2.0740251e+03 - 4.9485196e+03 -9.1291588e+02 2.0605091e+03 - 4.9729552e+03 -8.4799153e+02 2.0478063e+03 - 4.9952363e+03 -7.8469952e+02 2.0359274e+03 - 5.0154899e+03 -7.2289516e+02 2.0248784e+03 - 5.0338306e+03 -6.6244068e+02 2.0146626e+03 - 5.0503609e+03 -6.0320503e+02 2.0052804e+03 - 5.0651725e+03 -5.4506357e+02 1.9967307e+03 - 5.0783463e+03 -4.8789758e+02 1.9890109e+03 - 5.0899537e+03 -4.3159386e+02 1.9821179e+03 - 5.1000568e+03 -3.7604414e+02 1.9760479e+03 - 5.1087090e+03 -3.2114455e+02 1.9707969e+03 - 5.1159557e+03 -2.6679512e+02 1.9663611e+03 - 5.1218348e+03 -2.1289914e+02 1.9627372e+03 - 5.1263764e+03 -1.5936265e+02 1.9599220e+03 - 5.1296040e+03 -1.0609388e+02 1.9579129e+03 - 5.1315340e+03 -5.3002684e+01 1.9567083e+03 - 5.1321762e+03 -1.4440282e-08 1.9563068e+03 - 5.1629178e+03 4.8134273e-09 1.8512430e+03 - 5.1622885e+03 5.2741285e+01 1.8516380e+03 - 5.1603974e+03 1.0557118e+02 1.8528233e+03 - 5.1572346e+03 1.5857885e+02 1.8548003e+03 - 5.1527836e+03 2.1185462e+02 1.8575712e+03 - 5.1470210e+03 2.6549049e+02 1.8611390e+03 - 5.1399166e+03 3.1958075e+02 1.8655073e+03 - 5.1314325e+03 3.7422257e+02 1.8706804e+03 - 5.1215231e+03 4.2951659e+02 1.8766632e+03 - 5.1101347e+03 4.8556748e+02 1.8834605e+03 - 5.0972048e+03 5.4248461e+02 1.8910774e+03 - 5.0826615e+03 6.0038258e+02 1.8995189e+03 - 5.0664231e+03 6.5938186e+02 1.9087890e+03 - 5.0483969e+03 7.1960929e+02 1.9188909e+03 - 5.0284789e+03 7.8119864e+02 1.9298264e+03 - 5.0065526e+03 8.4429097e+02 1.9415948e+03 - 4.9824884e+03 9.0903501e+02 1.9541925e+03 - 4.9561427e+03 9.7558724e+02 1.9676122e+03 - 4.9273571e+03 1.0441119e+03 1.9818416e+03 - 4.8959576e+03 1.1147803e+03 1.9968620e+03 - 4.8617548e+03 1.1877707e+03 2.0126474e+03 - 4.8245430e+03 1.2632660e+03 2.0291620e+03 - 4.7841011e+03 1.3414526e+03 2.0463590e+03 - 4.7401934e+03 1.4225171e+03 2.0641784e+03 - 4.6925715e+03 1.5066426e+03 2.0825443e+03 - 4.6409772e+03 1.5940034e+03 2.1013629e+03 - 4.5851471e+03 1.6847591e+03 2.1205201e+03 - 4.5248181e+03 1.7790461e+03 2.1398794e+03 - 4.4597357e+03 1.8769686e+03 2.1592797e+03 - 4.3896637e+03 1.9785876e+03 2.1785346e+03 - 4.3143962e+03 2.0839085e+03 2.1974320e+03 - 4.2337720e+03 2.1928688e+03 2.2157352e+03 - 4.1476898e+03 2.3053251e+03 2.2331863e+03 - 4.0561246e+03 2.4210419e+03 2.2495108e+03 - 3.9591437e+03 2.5396823e+03 2.2644248e+03 - 3.8569205e+03 2.6608039e+03 2.2776451e+03 - 3.7497445e+03 2.7838589e+03 2.2889001e+03 - 3.6380259e+03 2.9082024e+03 2.2979427e+03 - 3.5222930e+03 3.0331069e+03 2.3045637e+03 - 3.4031817e+03 3.1577849e+03 2.3086032e+03 - 3.2814165e+03 3.2814165e+03 2.3099610e+03 - 3.1577849e+03 3.4031817e+03 2.3086032e+03 - 3.0331069e+03 3.5222930e+03 2.3045637e+03 - 2.9082024e+03 3.6380259e+03 2.2979427e+03 - 2.7838589e+03 3.7497445e+03 2.2889001e+03 - 2.6608039e+03 3.8569205e+03 2.2776451e+03 - 2.5396823e+03 3.9591437e+03 2.2644248e+03 - 2.4210419e+03 4.0561246e+03 2.2495108e+03 - 2.3053251e+03 4.1476898e+03 2.2331863e+03 - 2.1928688e+03 4.2337720e+03 2.2157352e+03 - 2.0839085e+03 4.3143962e+03 2.1974320e+03 - 1.9785876e+03 4.3896637e+03 2.1785346e+03 - 1.8769686e+03 4.4597357e+03 2.1592797e+03 - 1.7790461e+03 4.5248181e+03 2.1398794e+03 - 1.6847591e+03 4.5851471e+03 2.1205201e+03 - 1.5940034e+03 4.6409772e+03 2.1013629e+03 - 1.5066426e+03 4.6925715e+03 2.0825443e+03 - 1.4225171e+03 4.7401934e+03 2.0641784e+03 - 1.3414526e+03 4.7841011e+03 2.0463590e+03 - 1.2632660e+03 4.8245430e+03 2.0291620e+03 - 1.1877707e+03 4.8617548e+03 2.0126474e+03 - 1.1147803e+03 4.8959576e+03 1.9968620e+03 - 1.0441119e+03 4.9273571e+03 1.9818416e+03 - 9.7558724e+02 4.9561427e+03 1.9676122e+03 - 9.0903501e+02 4.9824884e+03 1.9541925e+03 - 8.4429097e+02 5.0065526e+03 1.9415948e+03 - 7.8119864e+02 5.0284789e+03 1.9298264e+03 - 7.1960929e+02 5.0483969e+03 1.9188909e+03 - 6.5938186e+02 5.0664231e+03 1.9087890e+03 - 6.0038258e+02 5.0826615e+03 1.8995189e+03 - 5.4248461e+02 5.0972048e+03 1.8910774e+03 - 4.8556748e+02 5.1101347e+03 1.8834605e+03 - 4.2951659e+02 5.1215231e+03 1.8766632e+03 - 3.7422257e+02 5.1314325e+03 1.8706804e+03 - 3.1958075e+02 5.1399166e+03 1.8655073e+03 - 2.6549049e+02 5.1470210e+03 1.8611390e+03 - 2.1185462e+02 5.1527836e+03 1.8575712e+03 - 1.5857885e+02 5.1572346e+03 1.8548003e+03 - 1.0557118e+02 5.1603974e+03 1.8528233e+03 - 5.2741285e+01 5.1622885e+03 1.8516380e+03 - 0.0000000e+00 5.1629178e+03 1.8512430e+03 - -5.2741285e+01 5.1622885e+03 1.8516380e+03 - -1.0557118e+02 5.1603974e+03 1.8528233e+03 - -1.5857885e+02 5.1572346e+03 1.8548003e+03 - -2.1185462e+02 5.1527836e+03 1.8575712e+03 - -2.6549049e+02 5.1470210e+03 1.8611390e+03 - -3.1958075e+02 5.1399166e+03 1.8655073e+03 - -3.7422257e+02 5.1314325e+03 1.8706804e+03 - -4.2951659e+02 5.1215231e+03 1.8766632e+03 - -4.8556748e+02 5.1101347e+03 1.8834605e+03 - -5.4248461e+02 5.0972048e+03 1.8910774e+03 - -6.0038258e+02 5.0826615e+03 1.8995189e+03 - -6.5938186e+02 5.0664231e+03 1.9087890e+03 - -7.1960929e+02 5.0483969e+03 1.9188909e+03 - -7.8119864e+02 5.0284789e+03 1.9298264e+03 - -8.4429097e+02 5.0065526e+03 1.9415948e+03 - -9.0903501e+02 4.9824884e+03 1.9541925e+03 - -9.7558724e+02 4.9561427e+03 1.9676122e+03 - -1.0441119e+03 4.9273571e+03 1.9818416e+03 - -1.1147803e+03 4.8959576e+03 1.9968620e+03 - -1.1877707e+03 4.8617548e+03 2.0126474e+03 - -1.2632660e+03 4.8245430e+03 2.0291620e+03 - -1.3414526e+03 4.7841011e+03 2.0463590e+03 - -1.4225171e+03 4.7401934e+03 2.0641784e+03 - -1.5066426e+03 4.6925715e+03 2.0825443e+03 - -1.5940034e+03 4.6409772e+03 2.1013629e+03 - -1.6847591e+03 4.5851471e+03 2.1205201e+03 - -1.7790461e+03 4.5248181e+03 2.1398794e+03 - -1.8769686e+03 4.4597357e+03 2.1592797e+03 - -1.9785876e+03 4.3896637e+03 2.1785346e+03 - -2.0839085e+03 4.3143962e+03 2.1974320e+03 - -2.1928688e+03 4.2337720e+03 2.2157352e+03 - -2.3053251e+03 4.1476898e+03 2.2331863e+03 - -2.4210419e+03 4.0561246e+03 2.2495108e+03 - -2.5396823e+03 3.9591437e+03 2.2644248e+03 - -2.6608039e+03 3.8569205e+03 2.2776451e+03 - -2.7838589e+03 3.7497445e+03 2.2889001e+03 - -2.9082024e+03 3.6380259e+03 2.2979427e+03 - -3.0331069e+03 3.5222930e+03 2.3045637e+03 - -3.1577849e+03 3.4031817e+03 2.3086032e+03 - -3.2814165e+03 3.2814165e+03 2.3099610e+03 - -3.4031817e+03 3.1577849e+03 2.3086032e+03 - -3.5222930e+03 3.0331069e+03 2.3045637e+03 - -3.6380259e+03 2.9082024e+03 2.2979427e+03 - -3.7497445e+03 2.7838589e+03 2.2889001e+03 - -3.8569205e+03 2.6608039e+03 2.2776451e+03 - -3.9591437e+03 2.5396823e+03 2.2644248e+03 - -4.0561246e+03 2.4210419e+03 2.2495108e+03 - -4.1476898e+03 2.3053251e+03 2.2331863e+03 - -4.2337720e+03 2.1928688e+03 2.2157352e+03 - -4.3143962e+03 2.0839085e+03 2.1974320e+03 - -4.3896637e+03 1.9785876e+03 2.1785346e+03 - -4.4597357e+03 1.8769686e+03 2.1592797e+03 - -4.5248181e+03 1.7790461e+03 2.1398794e+03 - -4.5851471e+03 1.6847591e+03 2.1205201e+03 - -4.6409772e+03 1.5940034e+03 2.1013629e+03 - -4.6925715e+03 1.5066426e+03 2.0825443e+03 - -4.7401934e+03 1.4225171e+03 2.0641784e+03 - -4.7841011e+03 1.3414526e+03 2.0463590e+03 - -4.8245430e+03 1.2632660e+03 2.0291620e+03 - -4.8617548e+03 1.1877707e+03 2.0126474e+03 - -4.8959576e+03 1.1147803e+03 1.9968620e+03 - -4.9273571e+03 1.0441119e+03 1.9818416e+03 - -4.9561427e+03 9.7558724e+02 1.9676122e+03 - -4.9824884e+03 9.0903501e+02 1.9541925e+03 - -5.0065526e+03 8.4429097e+02 1.9415948e+03 - -5.0284789e+03 7.8119864e+02 1.9298264e+03 - -5.0483969e+03 7.1960929e+02 1.9188909e+03 - -5.0664231e+03 6.5938186e+02 1.9087890e+03 - -5.0826615e+03 6.0038258e+02 1.8995189e+03 - -5.0972048e+03 5.4248461e+02 1.8910774e+03 - -5.1101347e+03 4.8556748e+02 1.8834605e+03 - -5.1215231e+03 4.2951659e+02 1.8766632e+03 - -5.1314325e+03 3.7422257e+02 1.8706804e+03 - -5.1399166e+03 3.1958075e+02 1.8655073e+03 - -5.1470210e+03 2.6549049e+02 1.8611390e+03 - -5.1527836e+03 2.1185462e+02 1.8575712e+03 - -5.1572346e+03 1.5857885e+02 1.8548003e+03 - -5.1603974e+03 1.0557118e+02 1.8528233e+03 - -5.1622885e+03 5.2741285e+01 1.8516380e+03 - -5.1629178e+03 0.0000000e+00 1.8512430e+03 - -5.1622885e+03 -5.2741285e+01 1.8516380e+03 - -5.1603974e+03 -1.0557118e+02 1.8528233e+03 - -5.1572346e+03 -1.5857885e+02 1.8548003e+03 - -5.1527836e+03 -2.1185462e+02 1.8575712e+03 - -5.1470210e+03 -2.6549049e+02 1.8611390e+03 - -5.1399166e+03 -3.1958075e+02 1.8655073e+03 - -5.1314325e+03 -3.7422257e+02 1.8706804e+03 - -5.1215231e+03 -4.2951659e+02 1.8766632e+03 - -5.1101347e+03 -4.8556748e+02 1.8834605e+03 - -5.0972048e+03 -5.4248461e+02 1.8910774e+03 - -5.0826615e+03 -6.0038258e+02 1.8995189e+03 - -5.0664231e+03 -6.5938186e+02 1.9087890e+03 - -5.0483969e+03 -7.1960929e+02 1.9188909e+03 - -5.0284789e+03 -7.8119864e+02 1.9298264e+03 - -5.0065526e+03 -8.4429097e+02 1.9415948e+03 - -4.9824884e+03 -9.0903501e+02 1.9541925e+03 - -4.9561427e+03 -9.7558724e+02 1.9676122e+03 - -4.9273571e+03 -1.0441119e+03 1.9818416e+03 - -4.8959576e+03 -1.1147803e+03 1.9968620e+03 - -4.8617548e+03 -1.1877707e+03 2.0126474e+03 - -4.8245430e+03 -1.2632660e+03 2.0291620e+03 - -4.7841011e+03 -1.3414526e+03 2.0463590e+03 - -4.7401934e+03 -1.4225171e+03 2.0641784e+03 - -4.6925715e+03 -1.5066426e+03 2.0825443e+03 - -4.6409772e+03 -1.5940034e+03 2.1013629e+03 - -4.5851471e+03 -1.6847591e+03 2.1205201e+03 - -4.5248181e+03 -1.7790461e+03 2.1398794e+03 - -4.4597357e+03 -1.8769686e+03 2.1592797e+03 - -4.3896637e+03 -1.9785876e+03 2.1785346e+03 - -4.3143962e+03 -2.0839085e+03 2.1974320e+03 - -4.2337720e+03 -2.1928688e+03 2.2157352e+03 - -4.1476898e+03 -2.3053251e+03 2.2331863e+03 - -4.0561246e+03 -2.4210419e+03 2.2495108e+03 - -3.9591437e+03 -2.5396823e+03 2.2644248e+03 - -3.8569205e+03 -2.6608039e+03 2.2776451e+03 - -3.7497445e+03 -2.7838589e+03 2.2889001e+03 - -3.6380259e+03 -2.9082024e+03 2.2979427e+03 - -3.5222930e+03 -3.0331069e+03 2.3045637e+03 - -3.4031817e+03 -3.1577849e+03 2.3086032e+03 - -3.2814165e+03 -3.2814165e+03 2.3099610e+03 - -3.1577849e+03 -3.4031817e+03 2.3086032e+03 - -3.0331069e+03 -3.5222930e+03 2.3045637e+03 - -2.9082024e+03 -3.6380259e+03 2.2979427e+03 - -2.7838589e+03 -3.7497445e+03 2.2889001e+03 - -2.6608039e+03 -3.8569205e+03 2.2776451e+03 - -2.5396823e+03 -3.9591437e+03 2.2644248e+03 - -2.4210419e+03 -4.0561246e+03 2.2495108e+03 - -2.3053251e+03 -4.1476898e+03 2.2331863e+03 - -2.1928688e+03 -4.2337720e+03 2.2157352e+03 - -2.0839085e+03 -4.3143962e+03 2.1974320e+03 - -1.9785876e+03 -4.3896637e+03 2.1785346e+03 - -1.8769686e+03 -4.4597357e+03 2.1592797e+03 - -1.7790461e+03 -4.5248181e+03 2.1398794e+03 - -1.6847591e+03 -4.5851471e+03 2.1205201e+03 - -1.5940034e+03 -4.6409772e+03 2.1013629e+03 - -1.5066426e+03 -4.6925715e+03 2.0825443e+03 - -1.4225171e+03 -4.7401934e+03 2.0641784e+03 - -1.3414526e+03 -4.7841011e+03 2.0463590e+03 - -1.2632660e+03 -4.8245430e+03 2.0291620e+03 - -1.1877707e+03 -4.8617548e+03 2.0126474e+03 - -1.1147803e+03 -4.8959576e+03 1.9968620e+03 - -1.0441119e+03 -4.9273571e+03 1.9818416e+03 - -9.7558724e+02 -4.9561427e+03 1.9676122e+03 - -9.0903501e+02 -4.9824884e+03 1.9541925e+03 - -8.4429097e+02 -5.0065526e+03 1.9415948e+03 - -7.8119864e+02 -5.0284789e+03 1.9298264e+03 - -7.1960929e+02 -5.0483969e+03 1.9188909e+03 - -6.5938186e+02 -5.0664231e+03 1.9087890e+03 - -6.0038258e+02 -5.0826615e+03 1.8995189e+03 - -5.4248461e+02 -5.0972048e+03 1.8910774e+03 - -4.8556748e+02 -5.1101347e+03 1.8834605e+03 - -4.2951659e+02 -5.1215231e+03 1.8766632e+03 - -3.7422257e+02 -5.1314325e+03 1.8706804e+03 - -3.1958075e+02 -5.1399166e+03 1.8655073e+03 - -2.6549049e+02 -5.1470210e+03 1.8611390e+03 - -2.1185462e+02 -5.1527836e+03 1.8575712e+03 - -1.5857885e+02 -5.1572346e+03 1.8548003e+03 - -1.0557118e+02 -5.1603974e+03 1.8528233e+03 - -5.2741285e+01 -5.1622885e+03 1.8516380e+03 - 0.0000000e+00 -5.1629178e+03 1.8512430e+03 - 5.2741285e+01 -5.1622885e+03 1.8516380e+03 - 1.0557118e+02 -5.1603974e+03 1.8528233e+03 - 1.5857885e+02 -5.1572346e+03 1.8548003e+03 - 2.1185462e+02 -5.1527836e+03 1.8575712e+03 - 2.6549049e+02 -5.1470210e+03 1.8611390e+03 - 3.1958075e+02 -5.1399166e+03 1.8655073e+03 - 3.7422257e+02 -5.1314325e+03 1.8706804e+03 - 4.2951659e+02 -5.1215231e+03 1.8766632e+03 - 4.8556748e+02 -5.1101347e+03 1.8834605e+03 - 5.4248461e+02 -5.0972048e+03 1.8910774e+03 - 6.0038258e+02 -5.0826615e+03 1.8995189e+03 - 6.5938186e+02 -5.0664231e+03 1.9087890e+03 - 7.1960929e+02 -5.0483969e+03 1.9188909e+03 - 7.8119864e+02 -5.0284789e+03 1.9298264e+03 - 8.4429097e+02 -5.0065526e+03 1.9415948e+03 - 9.0903501e+02 -4.9824884e+03 1.9541925e+03 - 9.7558724e+02 -4.9561427e+03 1.9676122e+03 - 1.0441119e+03 -4.9273571e+03 1.9818416e+03 - 1.1147803e+03 -4.8959576e+03 1.9968620e+03 - 1.1877707e+03 -4.8617548e+03 2.0126474e+03 - 1.2632660e+03 -4.8245430e+03 2.0291620e+03 - 1.3414526e+03 -4.7841011e+03 2.0463590e+03 - 1.4225171e+03 -4.7401934e+03 2.0641784e+03 - 1.5066426e+03 -4.6925715e+03 2.0825443e+03 - 1.5940034e+03 -4.6409772e+03 2.1013629e+03 - 1.6847591e+03 -4.5851471e+03 2.1205201e+03 - 1.7790461e+03 -4.5248181e+03 2.1398794e+03 - 1.8769686e+03 -4.4597357e+03 2.1592797e+03 - 1.9785876e+03 -4.3896637e+03 2.1785346e+03 - 2.0839085e+03 -4.3143962e+03 2.1974320e+03 - 2.1928688e+03 -4.2337720e+03 2.2157352e+03 - 2.3053251e+03 -4.1476898e+03 2.2331863e+03 - 2.4210419e+03 -4.0561246e+03 2.2495108e+03 - 2.5396823e+03 -3.9591437e+03 2.2644248e+03 - 2.6608039e+03 -3.8569205e+03 2.2776451e+03 - 2.7838589e+03 -3.7497445e+03 2.2889001e+03 - 2.9082024e+03 -3.6380259e+03 2.2979427e+03 - 3.0331069e+03 -3.5222930e+03 2.3045637e+03 - 3.1577849e+03 -3.4031817e+03 2.3086032e+03 - 3.2814165e+03 -3.2814165e+03 2.3099610e+03 - 3.4031817e+03 -3.1577849e+03 2.3086032e+03 - 3.5222930e+03 -3.0331069e+03 2.3045637e+03 - 3.6380259e+03 -2.9082024e+03 2.2979427e+03 - 3.7497445e+03 -2.7838589e+03 2.2889001e+03 - 3.8569205e+03 -2.6608039e+03 2.2776451e+03 - 3.9591437e+03 -2.5396823e+03 2.2644248e+03 - 4.0561246e+03 -2.4210419e+03 2.2495108e+03 - 4.1476898e+03 -2.3053251e+03 2.2331863e+03 - 4.2337720e+03 -2.1928688e+03 2.2157352e+03 - 4.3143962e+03 -2.0839085e+03 2.1974320e+03 - 4.3896637e+03 -1.9785876e+03 2.1785346e+03 - 4.4597357e+03 -1.8769686e+03 2.1592797e+03 - 4.5248181e+03 -1.7790461e+03 2.1398794e+03 - 4.5851471e+03 -1.6847591e+03 2.1205201e+03 - 4.6409772e+03 -1.5940034e+03 2.1013629e+03 - 4.6925715e+03 -1.5066426e+03 2.0825443e+03 - 4.7401934e+03 -1.4225171e+03 2.0641784e+03 - 4.7841011e+03 -1.3414526e+03 2.0463590e+03 - 4.8245430e+03 -1.2632660e+03 2.0291620e+03 - 4.8617548e+03 -1.1877707e+03 2.0126474e+03 - 4.8959576e+03 -1.1147803e+03 1.9968620e+03 - 4.9273571e+03 -1.0441119e+03 1.9818416e+03 - 4.9561427e+03 -9.7558724e+02 1.9676122e+03 - 4.9824884e+03 -9.0903501e+02 1.9541925e+03 - 5.0065526e+03 -8.4429097e+02 1.9415948e+03 - 5.0284789e+03 -7.8119864e+02 1.9298264e+03 - 5.0483969e+03 -7.1960929e+02 1.9188909e+03 - 5.0664231e+03 -6.5938186e+02 1.9087890e+03 - 5.0826615e+03 -6.0038258e+02 1.8995189e+03 - 5.0972048e+03 -5.4248461e+02 1.8910774e+03 - 5.1101347e+03 -4.8556748e+02 1.8834605e+03 - 5.1215231e+03 -4.2951659e+02 1.8766632e+03 - 5.1314325e+03 -3.7422257e+02 1.8706804e+03 - 5.1399166e+03 -3.1958075e+02 1.8655073e+03 - 5.1470210e+03 -2.6549049e+02 1.8611390e+03 - 5.1527836e+03 -2.1185462e+02 1.8575712e+03 - 5.1572346e+03 -1.5857885e+02 1.8548003e+03 - 5.1603974e+03 -1.0557118e+02 1.8528233e+03 - 5.1622885e+03 -5.2741285e+01 1.8516380e+03 - 5.1629178e+03 -4.8134273e-09 1.8512430e+03 - 5.1925346e+03 0.0000000e+00 1.7421185e+03 - 5.1919185e+03 5.2483969e+01 1.7425044e+03 - 5.1900670e+03 1.0505656e+02 1.7436625e+03 - 5.1869704e+03 1.5780698e+02 1.7455945e+03 - 5.1826120e+03 2.1082561e+02 1.7483027e+03 - 5.1769687e+03 2.6420461e+02 1.7517907e+03 - 5.1700100e+03 3.1803852e+02 1.7560626e+03 - 5.1616981e+03 3.7242487e+02 1.7611234e+03 - 5.1519875e+03 4.2746481e+02 1.7669789e+03 - 5.1408243e+03 4.8326376e+02 1.7736350e+03 - 5.1281456e+03 5.3993202e+02 1.7810980e+03 - 5.1138794e+03 5.9758546e+02 1.7893742e+03 - 5.0979431e+03 6.5634616e+02 1.7984695e+03 - 5.0802434e+03 7.1634301e+02 1.8083890e+03 - 5.0606748e+03 7.7771229e+02 1.8191364e+03 - 5.0391194e+03 8.4059823e+02 1.8307136e+03 - 5.0154453e+03 9.0515338e+02 1.8431198e+03 - 4.9895060e+03 9.7153889e+02 1.8563506e+03 - 4.9611393e+03 1.0399246e+03 1.8703971e+03 - 4.9301667e+03 1.1104886e+03 1.8852444e+03 - 4.8963924e+03 1.1834169e+03 1.9008700e+03 - 4.8596037e+03 1.2589019e+03 1.9172427e+03 - 4.8195700e+03 1.3371405e+03 1.9343199e+03 - 4.7760447e+03 1.4183318e+03 1.9520457e+03 - 4.7287663e+03 1.5026726e+03 1.9703487e+03 - 4.6774609e+03 1.5903528e+03 1.9891391e+03 - 4.6218472e+03 1.6815486e+03 2.0083062e+03 - 4.5616417e+03 1.7764140e+03 2.0277159e+03 - 4.4965671e+03 1.8750714e+03 2.0472088e+03 - 4.4263629e+03 1.9775993e+03 2.0665981e+03 - 4.3507978e+03 2.0840193e+03 2.0856696e+03 - 4.2696852e+03 2.1942821e+03 2.1041824e+03 - 4.1828999e+03 2.3082527e+03 2.1218717e+03 - 4.0903969e+03 2.4256981e+03 2.1384537e+03 - 3.9922287e+03 2.5462758e+03 2.1536328e+03 - 3.8885616e+03 2.6695282e+03 2.1671124e+03 - 3.7796881e+03 2.7948825e+03 2.1786065e+03 - 3.6660322e+03 2.9216581e+03 2.1878537e+03 - 3.5481480e+03 3.0490827e+03 2.1946314e+03 - 3.4267084e+03 3.1763168e+03 2.1987695e+03 - 3.3024843e+03 3.3024843e+03 2.2001610e+03 - 3.1763168e+03 3.4267084e+03 2.1987695e+03 - 3.0490827e+03 3.5481480e+03 2.1946314e+03 - 2.9216581e+03 3.6660322e+03 2.1878537e+03 - 2.7948825e+03 3.7796881e+03 2.1786065e+03 - 2.6695282e+03 3.8885616e+03 2.1671124e+03 - 2.5462758e+03 3.9922287e+03 2.1536328e+03 - 2.4256981e+03 4.0903969e+03 2.1384537e+03 - 2.3082527e+03 4.1828999e+03 2.1218717e+03 - 2.1942821e+03 4.2696852e+03 2.1041824e+03 - 2.0840193e+03 4.3507978e+03 2.0856696e+03 - 1.9775993e+03 4.4263629e+03 2.0665981e+03 - 1.8750714e+03 4.4965671e+03 2.0472088e+03 - 1.7764140e+03 4.5616417e+03 2.0277159e+03 - 1.6815486e+03 4.6218472e+03 2.0083062e+03 - 1.5903528e+03 4.6774609e+03 1.9891391e+03 - 1.5026726e+03 4.7287663e+03 1.9703487e+03 - 1.4183318e+03 4.7760447e+03 1.9520457e+03 - 1.3371405e+03 4.8195700e+03 1.9343199e+03 - 1.2589019e+03 4.8596037e+03 1.9172427e+03 - 1.1834169e+03 4.8963924e+03 1.9008700e+03 - 1.1104886e+03 4.9301667e+03 1.8852444e+03 - 1.0399246e+03 4.9611393e+03 1.8703971e+03 - 9.7153889e+02 4.9895060e+03 1.8563506e+03 - 9.0515338e+02 5.0154453e+03 1.8431198e+03 - 8.4059823e+02 5.0391194e+03 1.8307136e+03 - 7.7771229e+02 5.0606748e+03 1.8191364e+03 - 7.1634301e+02 5.0802434e+03 1.8083890e+03 - 6.5634616e+02 5.0979431e+03 1.7984695e+03 - 5.9758546e+02 5.1138794e+03 1.7893742e+03 - 5.3993202e+02 5.1281456e+03 1.7810980e+03 - 4.8326376e+02 5.1408243e+03 1.7736350e+03 - 4.2746481e+02 5.1519875e+03 1.7669789e+03 - 3.7242487e+02 5.1616981e+03 1.7611234e+03 - 3.1803852e+02 5.1700100e+03 1.7560626e+03 - 2.6420461e+02 5.1769687e+03 1.7517907e+03 - 2.1082561e+02 5.1826120e+03 1.7483027e+03 - 1.5780698e+02 5.1869704e+03 1.7455945e+03 - 1.0505656e+02 5.1900670e+03 1.7436625e+03 - 5.2483969e+01 5.1919185e+03 1.7425044e+03 - -9.6268545e-09 5.1925346e+03 1.7421185e+03 - -5.2483969e+01 5.1919185e+03 1.7425044e+03 - -1.0505656e+02 5.1900670e+03 1.7436625e+03 - -1.5780698e+02 5.1869704e+03 1.7455945e+03 - -2.1082561e+02 5.1826120e+03 1.7483027e+03 - -2.6420461e+02 5.1769687e+03 1.7517907e+03 - -3.1803852e+02 5.1700100e+03 1.7560626e+03 - -3.7242487e+02 5.1616981e+03 1.7611234e+03 - -4.2746481e+02 5.1519875e+03 1.7669789e+03 - -4.8326376e+02 5.1408243e+03 1.7736350e+03 - -5.3993202e+02 5.1281456e+03 1.7810980e+03 - -5.9758546e+02 5.1138794e+03 1.7893742e+03 - -6.5634616e+02 5.0979431e+03 1.7984695e+03 - -7.1634301e+02 5.0802434e+03 1.8083890e+03 - -7.7771229e+02 5.0606748e+03 1.8191364e+03 - -8.4059823e+02 5.0391194e+03 1.8307136e+03 - -9.0515338e+02 5.0154453e+03 1.8431198e+03 - -9.7153889e+02 4.9895060e+03 1.8563506e+03 - -1.0399246e+03 4.9611393e+03 1.8703971e+03 - -1.1104886e+03 4.9301667e+03 1.8852444e+03 - -1.1834169e+03 4.8963924e+03 1.9008700e+03 - -1.2589019e+03 4.8596037e+03 1.9172427e+03 - -1.3371405e+03 4.8195700e+03 1.9343199e+03 - -1.4183318e+03 4.7760447e+03 1.9520457e+03 - -1.5026726e+03 4.7287663e+03 1.9703487e+03 - -1.5903528e+03 4.6774609e+03 1.9891391e+03 - -1.6815486e+03 4.6218472e+03 2.0083062e+03 - -1.7764140e+03 4.5616417e+03 2.0277159e+03 - -1.8750714e+03 4.4965671e+03 2.0472088e+03 - -1.9775993e+03 4.4263629e+03 2.0665981e+03 - -2.0840193e+03 4.3507978e+03 2.0856696e+03 - -2.1942821e+03 4.2696852e+03 2.1041824e+03 - -2.3082527e+03 4.1828999e+03 2.1218717e+03 - -2.4256981e+03 4.0903969e+03 2.1384537e+03 - -2.5462758e+03 3.9922287e+03 2.1536328e+03 - -2.6695282e+03 3.8885616e+03 2.1671124e+03 - -2.7948825e+03 3.7796881e+03 2.1786065e+03 - -2.9216581e+03 3.6660322e+03 2.1878537e+03 - -3.0490827e+03 3.5481480e+03 2.1946314e+03 - -3.1763168e+03 3.4267084e+03 2.1987695e+03 - -3.3024843e+03 3.3024843e+03 2.2001610e+03 - -3.4267084e+03 3.1763168e+03 2.1987695e+03 - -3.5481480e+03 3.0490827e+03 2.1946314e+03 - -3.6660322e+03 2.9216581e+03 2.1878537e+03 - -3.7796881e+03 2.7948825e+03 2.1786065e+03 - -3.8885616e+03 2.6695282e+03 2.1671124e+03 - -3.9922287e+03 2.5462758e+03 2.1536328e+03 - -4.0903969e+03 2.4256981e+03 2.1384537e+03 - -4.1828999e+03 2.3082527e+03 2.1218717e+03 - -4.2696852e+03 2.1942821e+03 2.1041824e+03 - -4.3507978e+03 2.0840193e+03 2.0856696e+03 - -4.4263629e+03 1.9775993e+03 2.0665981e+03 - -4.4965671e+03 1.8750714e+03 2.0472088e+03 - -4.5616417e+03 1.7764140e+03 2.0277159e+03 - -4.6218472e+03 1.6815486e+03 2.0083062e+03 - -4.6774609e+03 1.5903528e+03 1.9891391e+03 - -4.7287663e+03 1.5026726e+03 1.9703487e+03 - -4.7760447e+03 1.4183318e+03 1.9520457e+03 - -4.8195700e+03 1.3371405e+03 1.9343199e+03 - -4.8596037e+03 1.2589019e+03 1.9172427e+03 - -4.8963924e+03 1.1834169e+03 1.9008700e+03 - -4.9301667e+03 1.1104886e+03 1.8852444e+03 - -4.9611393e+03 1.0399246e+03 1.8703971e+03 - -4.9895060e+03 9.7153889e+02 1.8563506e+03 - -5.0154453e+03 9.0515338e+02 1.8431198e+03 - -5.0391194e+03 8.4059823e+02 1.8307136e+03 - -5.0606748e+03 7.7771229e+02 1.8191364e+03 - -5.0802434e+03 7.1634301e+02 1.8083890e+03 - -5.0979431e+03 6.5634616e+02 1.7984695e+03 - -5.1138794e+03 5.9758546e+02 1.7893742e+03 - -5.1281456e+03 5.3993202e+02 1.7810980e+03 - -5.1408243e+03 4.8326376e+02 1.7736350e+03 - -5.1519875e+03 4.2746481e+02 1.7669789e+03 - -5.1616981e+03 3.7242487e+02 1.7611234e+03 - -5.1700100e+03 3.1803852e+02 1.7560626e+03 - -5.1769687e+03 2.6420461e+02 1.7517907e+03 - -5.1826120e+03 2.1082561e+02 1.7483027e+03 - -5.1869704e+03 1.5780698e+02 1.7455945e+03 - -5.1900670e+03 1.0505656e+02 1.7436625e+03 - -5.1919185e+03 5.2483969e+01 1.7425044e+03 - -5.1925346e+03 0.0000000e+00 1.7421185e+03 - -5.1919185e+03 -5.2483969e+01 1.7425044e+03 - -5.1900670e+03 -1.0505656e+02 1.7436625e+03 - -5.1869704e+03 -1.5780698e+02 1.7455945e+03 - -5.1826120e+03 -2.1082561e+02 1.7483027e+03 - -5.1769687e+03 -2.6420461e+02 1.7517907e+03 - -5.1700100e+03 -3.1803852e+02 1.7560626e+03 - -5.1616981e+03 -3.7242487e+02 1.7611234e+03 - -5.1519875e+03 -4.2746481e+02 1.7669789e+03 - -5.1408243e+03 -4.8326376e+02 1.7736350e+03 - -5.1281456e+03 -5.3993202e+02 1.7810980e+03 - -5.1138794e+03 -5.9758546e+02 1.7893742e+03 - -5.0979431e+03 -6.5634616e+02 1.7984695e+03 - -5.0802434e+03 -7.1634301e+02 1.8083890e+03 - -5.0606748e+03 -7.7771229e+02 1.8191364e+03 - -5.0391194e+03 -8.4059823e+02 1.8307136e+03 - -5.0154453e+03 -9.0515338e+02 1.8431198e+03 - -4.9895060e+03 -9.7153889e+02 1.8563506e+03 - -4.9611393e+03 -1.0399246e+03 1.8703971e+03 - -4.9301667e+03 -1.1104886e+03 1.8852444e+03 - -4.8963924e+03 -1.1834169e+03 1.9008700e+03 - -4.8596037e+03 -1.2589019e+03 1.9172427e+03 - -4.8195700e+03 -1.3371405e+03 1.9343199e+03 - -4.7760447e+03 -1.4183318e+03 1.9520457e+03 - -4.7287663e+03 -1.5026726e+03 1.9703487e+03 - -4.6774609e+03 -1.5903528e+03 1.9891391e+03 - -4.6218472e+03 -1.6815486e+03 2.0083062e+03 - -4.5616417e+03 -1.7764140e+03 2.0277159e+03 - -4.4965671e+03 -1.8750714e+03 2.0472088e+03 - -4.4263629e+03 -1.9775993e+03 2.0665981e+03 - -4.3507978e+03 -2.0840193e+03 2.0856696e+03 - -4.2696852e+03 -2.1942821e+03 2.1041824e+03 - -4.1828999e+03 -2.3082527e+03 2.1218717e+03 - -4.0903969e+03 -2.4256981e+03 2.1384537e+03 - -3.9922287e+03 -2.5462758e+03 2.1536328e+03 - -3.8885616e+03 -2.6695282e+03 2.1671124e+03 - -3.7796881e+03 -2.7948825e+03 2.1786065e+03 - -3.6660322e+03 -2.9216581e+03 2.1878537e+03 - -3.5481480e+03 -3.0490827e+03 2.1946314e+03 - -3.4267084e+03 -3.1763168e+03 2.1987695e+03 - -3.3024843e+03 -3.3024843e+03 2.2001610e+03 - -3.1763168e+03 -3.4267084e+03 2.1987695e+03 - -3.0490827e+03 -3.5481480e+03 2.1946314e+03 - -2.9216581e+03 -3.6660322e+03 2.1878537e+03 - -2.7948825e+03 -3.7796881e+03 2.1786065e+03 - -2.6695282e+03 -3.8885616e+03 2.1671124e+03 - -2.5462758e+03 -3.9922287e+03 2.1536328e+03 - -2.4256981e+03 -4.0903969e+03 2.1384537e+03 - -2.3082527e+03 -4.1828999e+03 2.1218717e+03 - -2.1942821e+03 -4.2696852e+03 2.1041824e+03 - -2.0840193e+03 -4.3507978e+03 2.0856696e+03 - -1.9775993e+03 -4.4263629e+03 2.0665981e+03 - -1.8750714e+03 -4.4965671e+03 2.0472088e+03 - -1.7764140e+03 -4.5616417e+03 2.0277159e+03 - -1.6815486e+03 -4.6218472e+03 2.0083062e+03 - -1.5903528e+03 -4.6774609e+03 1.9891391e+03 - -1.5026726e+03 -4.7287663e+03 1.9703487e+03 - -1.4183318e+03 -4.7760447e+03 1.9520457e+03 - -1.3371405e+03 -4.8195700e+03 1.9343199e+03 - -1.2589019e+03 -4.8596037e+03 1.9172427e+03 - -1.1834169e+03 -4.8963924e+03 1.9008700e+03 - -1.1104886e+03 -4.9301667e+03 1.8852444e+03 - -1.0399246e+03 -4.9611393e+03 1.8703971e+03 - -9.7153889e+02 -4.9895060e+03 1.8563506e+03 - -9.0515338e+02 -5.0154453e+03 1.8431198e+03 - -8.4059823e+02 -5.0391194e+03 1.8307136e+03 - -7.7771229e+02 -5.0606748e+03 1.8191364e+03 - -7.1634301e+02 -5.0802434e+03 1.8083890e+03 - -6.5634616e+02 -5.0979431e+03 1.7984695e+03 - -5.9758546e+02 -5.1138794e+03 1.7893742e+03 - -5.3993202e+02 -5.1281456e+03 1.7810980e+03 - -4.8326376e+02 -5.1408243e+03 1.7736350e+03 - -4.2746481e+02 -5.1519875e+03 1.7669789e+03 - -3.7242487e+02 -5.1616981e+03 1.7611234e+03 - -3.1803852e+02 -5.1700100e+03 1.7560626e+03 - -2.6420461e+02 -5.1769687e+03 1.7517907e+03 - -2.1082561e+02 -5.1826120e+03 1.7483027e+03 - -1.5780698e+02 -5.1869704e+03 1.7455945e+03 - -1.0505656e+02 -5.1900670e+03 1.7436625e+03 - -5.2483969e+01 -5.1919185e+03 1.7425044e+03 - -9.6268545e-09 -5.1925346e+03 1.7421185e+03 - 5.2483969e+01 -5.1919185e+03 1.7425044e+03 - 1.0505656e+02 -5.1900670e+03 1.7436625e+03 - 1.5780698e+02 -5.1869704e+03 1.7455945e+03 - 2.1082561e+02 -5.1826120e+03 1.7483027e+03 - 2.6420461e+02 -5.1769687e+03 1.7517907e+03 - 3.1803852e+02 -5.1700100e+03 1.7560626e+03 - 3.7242487e+02 -5.1616981e+03 1.7611234e+03 - 4.2746481e+02 -5.1519875e+03 1.7669789e+03 - 4.8326376e+02 -5.1408243e+03 1.7736350e+03 - 5.3993202e+02 -5.1281456e+03 1.7810980e+03 - 5.9758546e+02 -5.1138794e+03 1.7893742e+03 - 6.5634616e+02 -5.0979431e+03 1.7984695e+03 - 7.1634301e+02 -5.0802434e+03 1.8083890e+03 - 7.7771229e+02 -5.0606748e+03 1.8191364e+03 - 8.4059823e+02 -5.0391194e+03 1.8307136e+03 - 9.0515338e+02 -5.0154453e+03 1.8431198e+03 - 9.7153889e+02 -4.9895060e+03 1.8563506e+03 - 1.0399246e+03 -4.9611393e+03 1.8703971e+03 - 1.1104886e+03 -4.9301667e+03 1.8852444e+03 - 1.1834169e+03 -4.8963924e+03 1.9008700e+03 - 1.2589019e+03 -4.8596037e+03 1.9172427e+03 - 1.3371405e+03 -4.8195700e+03 1.9343199e+03 - 1.4183318e+03 -4.7760447e+03 1.9520457e+03 - 1.5026726e+03 -4.7287663e+03 1.9703487e+03 - 1.5903528e+03 -4.6774609e+03 1.9891391e+03 - 1.6815486e+03 -4.6218472e+03 2.0083062e+03 - 1.7764140e+03 -4.5616417e+03 2.0277159e+03 - 1.8750714e+03 -4.4965671e+03 2.0472088e+03 - 1.9775993e+03 -4.4263629e+03 2.0665981e+03 - 2.0840193e+03 -4.3507978e+03 2.0856696e+03 - 2.1942821e+03 -4.2696852e+03 2.1041824e+03 - 2.3082527e+03 -4.1828999e+03 2.1218717e+03 - 2.4256981e+03 -4.0903969e+03 2.1384537e+03 - 2.5462758e+03 -3.9922287e+03 2.1536328e+03 - 2.6695282e+03 -3.8885616e+03 2.1671124e+03 - 2.7948825e+03 -3.7796881e+03 2.1786065e+03 - 2.9216581e+03 -3.6660322e+03 2.1878537e+03 - 3.0490827e+03 -3.5481480e+03 2.1946314e+03 - 3.1763168e+03 -3.4267084e+03 2.1987695e+03 - 3.3024843e+03 -3.3024843e+03 2.2001610e+03 - 3.4267084e+03 -3.1763168e+03 2.1987695e+03 - 3.5481480e+03 -3.0490827e+03 2.1946314e+03 - 3.6660322e+03 -2.9216581e+03 2.1878537e+03 - 3.7796881e+03 -2.7948825e+03 2.1786065e+03 - 3.8885616e+03 -2.6695282e+03 2.1671124e+03 - 3.9922287e+03 -2.5462758e+03 2.1536328e+03 - 4.0903969e+03 -2.4256981e+03 2.1384537e+03 - 4.1828999e+03 -2.3082527e+03 2.1218717e+03 - 4.2696852e+03 -2.1942821e+03 2.1041824e+03 - 4.3507978e+03 -2.0840193e+03 2.0856696e+03 - 4.4263629e+03 -1.9775993e+03 2.0665981e+03 - 4.4965671e+03 -1.8750714e+03 2.0472088e+03 - 4.5616417e+03 -1.7764140e+03 2.0277159e+03 - 4.6218472e+03 -1.6815486e+03 2.0083062e+03 - 4.6774609e+03 -1.5903528e+03 1.9891391e+03 - 4.7287663e+03 -1.5026726e+03 1.9703487e+03 - 4.7760447e+03 -1.4183318e+03 1.9520457e+03 - 4.8195700e+03 -1.3371405e+03 1.9343199e+03 - 4.8596037e+03 -1.2589019e+03 1.9172427e+03 - 4.8963924e+03 -1.1834169e+03 1.9008700e+03 - 4.9301667e+03 -1.1104886e+03 1.8852444e+03 - 4.9611393e+03 -1.0399246e+03 1.8703971e+03 - 4.9895060e+03 -9.7153889e+02 1.8563506e+03 - 5.0154453e+03 -9.0515338e+02 1.8431198e+03 - 5.0391194e+03 -8.4059823e+02 1.8307136e+03 - 5.0606748e+03 -7.7771229e+02 1.8191364e+03 - 5.0802434e+03 -7.1634301e+02 1.8083890e+03 - 5.0979431e+03 -6.5634616e+02 1.7984695e+03 - 5.1138794e+03 -5.9758546e+02 1.7893742e+03 - 5.1281456e+03 -5.3993202e+02 1.7810980e+03 - 5.1408243e+03 -4.8326376e+02 1.7736350e+03 - 5.1519875e+03 -4.2746481e+02 1.7669789e+03 - 5.1616981e+03 -3.7242487e+02 1.7611234e+03 - 5.1700100e+03 -3.1803852e+02 1.7560626e+03 - 5.1769687e+03 -2.6420461e+02 1.7517907e+03 - 5.1826120e+03 -2.1082561e+02 1.7483027e+03 - 5.1869704e+03 -1.5780698e+02 1.7455945e+03 - 5.1900670e+03 -1.0505656e+02 1.7436625e+03 - 5.1919185e+03 -5.2483969e+01 1.7425044e+03 - 5.1925346e+03 -4.8134273e-09 1.7421185e+03 - 5.2208915e+03 4.8134273e-09 1.6288866e+03 - 5.2202888e+03 5.2232711e+01 1.6292606e+03 - 5.2184775e+03 1.0455398e+02 1.6303831e+03 - 5.2154478e+03 1.5705298e+02 1.6322559e+03 - 5.2111832e+03 2.0982008e+02 1.6348816e+03 - 5.2056607e+03 2.6294752e+02 1.6382640e+03 - 5.1988498e+03 3.1652997e+02 1.6424080e+03 - 5.1907129e+03 3.7066524e+02 1.6473191e+03 - 5.1812044e+03 4.2545491e+02 1.6530038e+03 - 5.1702704e+03 4.8100497e+02 1.6594690e+03 - 5.1578481e+03 5.3742660e+02 1.6667222e+03 - 5.1438650e+03 5.9483676e+02 1.6747709e+03 - 5.1282383e+03 6.5335899e+02 1.6836225e+03 - 5.1108738e+03 7.1312404e+02 1.6932839e+03 - 5.0916654e+03 7.7427058e+02 1.7037608e+03 - 5.0704936e+03 8.3694575e+02 1.7150576e+03 - 5.0472245e+03 9.0130577e+02 1.7271760e+03 - 5.0217092e+03 9.6751624e+02 1.7401146e+03 - 4.9937821e+03 1.0357524e+03 1.7538679e+03 - 4.9632602e+03 1.1061989e+03 1.7684245e+03 - 4.9299422e+03 1.1790493e+03 1.7837663e+03 - 4.8936082e+03 1.2545054e+03 1.7998662e+03 - 4.8540189e+03 1.3327747e+03 1.8166864e+03 - 4.8109170e+03 1.4140685e+03 1.8341760e+03 - 4.7640276e+03 1.4985979e+03 1.8522684e+03 - 4.7130618e+03 1.5865682e+03 1.8708786e+03 - 4.6577196e+03 1.6781728e+03 1.8899006e+03 - 4.5976970e+03 1.7735844e+03 1.9092043e+03 - 4.5326933e+03 1.8729441e+03 1.9286331e+03 - 4.4624223e+03 1.9763493e+03 1.9480019e+03 - 4.3866260e+03 2.0838390e+03 1.9670966e+03 - 4.3050903e+03 2.1953786e+03 1.9856739e+03 - 4.2176645e+03 2.3108432e+03 2.0034644e+03 - 4.1242808e+03 2.4300034e+03 2.0201771e+03 - 4.0249745e+03 2.5525122e+03 2.0355072e+03 - 3.9199033e+03 2.6778972e+03 2.0491463e+03 - 3.8093605e+03 2.8055600e+03 2.0607956e+03 - 3.6937837e+03 2.9347832e+03 2.0701806e+03 - 3.5737528e+03 3.0647478e+03 2.0770669e+03 - 3.4499788e+03 3.1945592e+03 2.0812744e+03 - 3.3232818e+03 3.3232818e+03 2.0826898e+03 - 3.1945592e+03 3.4499788e+03 2.0812744e+03 - 3.0647478e+03 3.5737528e+03 2.0770669e+03 - 2.9347832e+03 3.6937837e+03 2.0701806e+03 - 2.8055600e+03 3.8093605e+03 2.0607956e+03 - 2.6778972e+03 3.9199033e+03 2.0491463e+03 - 2.5525122e+03 4.0249745e+03 2.0355072e+03 - 2.4300034e+03 4.1242808e+03 2.0201771e+03 - 2.3108432e+03 4.2176645e+03 2.0034644e+03 - 2.1953786e+03 4.3050903e+03 1.9856739e+03 - 2.0838390e+03 4.3866260e+03 1.9670966e+03 - 1.9763493e+03 4.4624223e+03 1.9480019e+03 - 1.8729441e+03 4.5326933e+03 1.9286331e+03 - 1.7735844e+03 4.5976970e+03 1.9092043e+03 - 1.6781728e+03 4.6577196e+03 1.8899006e+03 - 1.5865682e+03 4.7130618e+03 1.8708786e+03 - 1.4985979e+03 4.7640276e+03 1.8522684e+03 - 1.4140685e+03 4.8109170e+03 1.8341760e+03 - 1.3327747e+03 4.8540189e+03 1.8166864e+03 - 1.2545054e+03 4.8936082e+03 1.7998662e+03 - 1.1790493e+03 4.9299422e+03 1.7837663e+03 - 1.1061989e+03 4.9632602e+03 1.7684245e+03 - 1.0357524e+03 4.9937821e+03 1.7538679e+03 - 9.6751624e+02 5.0217092e+03 1.7401146e+03 - 9.0130577e+02 5.0472245e+03 1.7271760e+03 - 8.3694575e+02 5.0704936e+03 1.7150576e+03 - 7.7427058e+02 5.0916654e+03 1.7037608e+03 - 7.1312404e+02 5.1108738e+03 1.6932839e+03 - 6.5335899e+02 5.1282383e+03 1.6836225e+03 - 5.9483676e+02 5.1438650e+03 1.6747709e+03 - 5.3742660e+02 5.1578481e+03 1.6667222e+03 - 4.8100497e+02 5.1702704e+03 1.6594690e+03 - 4.2545491e+02 5.1812044e+03 1.6530038e+03 - 3.7066524e+02 5.1907129e+03 1.6473191e+03 - 3.1652997e+02 5.1988498e+03 1.6424080e+03 - 2.6294752e+02 5.2056607e+03 1.6382640e+03 - 2.0982008e+02 5.2111832e+03 1.6348816e+03 - 1.5705298e+02 5.2154478e+03 1.6322559e+03 - 1.0455398e+02 5.2184775e+03 1.6303831e+03 - 5.2232711e+01 5.2202888e+03 1.6292606e+03 - 0.0000000e+00 5.2208915e+03 1.6288866e+03 - -5.2232711e+01 5.2202888e+03 1.6292606e+03 - -1.0455398e+02 5.2184775e+03 1.6303831e+03 - -1.5705298e+02 5.2154478e+03 1.6322559e+03 - -2.0982008e+02 5.2111832e+03 1.6348816e+03 - -2.6294752e+02 5.2056607e+03 1.6382640e+03 - -3.1652997e+02 5.1988498e+03 1.6424080e+03 - -3.7066524e+02 5.1907129e+03 1.6473191e+03 - -4.2545491e+02 5.1812044e+03 1.6530038e+03 - -4.8100497e+02 5.1702704e+03 1.6594690e+03 - -5.3742660e+02 5.1578481e+03 1.6667222e+03 - -5.9483676e+02 5.1438650e+03 1.6747709e+03 - -6.5335899e+02 5.1282383e+03 1.6836225e+03 - -7.1312404e+02 5.1108738e+03 1.6932839e+03 - -7.7427058e+02 5.0916654e+03 1.7037608e+03 - -8.3694575e+02 5.0704936e+03 1.7150576e+03 - -9.0130577e+02 5.0472245e+03 1.7271760e+03 - -9.6751624e+02 5.0217092e+03 1.7401146e+03 - -1.0357524e+03 4.9937821e+03 1.7538679e+03 - -1.1061989e+03 4.9632602e+03 1.7684245e+03 - -1.1790493e+03 4.9299422e+03 1.7837663e+03 - -1.2545054e+03 4.8936082e+03 1.7998662e+03 - -1.3327747e+03 4.8540189e+03 1.8166864e+03 - -1.4140685e+03 4.8109170e+03 1.8341760e+03 - -1.4985979e+03 4.7640276e+03 1.8522684e+03 - -1.5865682e+03 4.7130618e+03 1.8708786e+03 - -1.6781728e+03 4.6577196e+03 1.8899006e+03 - -1.7735844e+03 4.5976970e+03 1.9092043e+03 - -1.8729441e+03 4.5326933e+03 1.9286331e+03 - -1.9763493e+03 4.4624223e+03 1.9480019e+03 - -2.0838390e+03 4.3866260e+03 1.9670966e+03 - -2.1953786e+03 4.3050903e+03 1.9856739e+03 - -2.3108432e+03 4.2176645e+03 2.0034644e+03 - -2.4300034e+03 4.1242808e+03 2.0201771e+03 - -2.5525122e+03 4.0249745e+03 2.0355072e+03 - -2.6778972e+03 3.9199033e+03 2.0491463e+03 - -2.8055600e+03 3.8093605e+03 2.0607956e+03 - -2.9347832e+03 3.6937837e+03 2.0701806e+03 - -3.0647478e+03 3.5737528e+03 2.0770669e+03 - -3.1945592e+03 3.4499788e+03 2.0812744e+03 - -3.3232818e+03 3.3232818e+03 2.0826898e+03 - -3.4499788e+03 3.1945592e+03 2.0812744e+03 - -3.5737528e+03 3.0647478e+03 2.0770669e+03 - -3.6937837e+03 2.9347832e+03 2.0701806e+03 - -3.8093605e+03 2.8055600e+03 2.0607956e+03 - -3.9199033e+03 2.6778972e+03 2.0491463e+03 - -4.0249745e+03 2.5525122e+03 2.0355072e+03 - -4.1242808e+03 2.4300034e+03 2.0201771e+03 - -4.2176645e+03 2.3108432e+03 2.0034644e+03 - -4.3050903e+03 2.1953786e+03 1.9856739e+03 - -4.3866260e+03 2.0838390e+03 1.9670966e+03 - -4.4624223e+03 1.9763493e+03 1.9480019e+03 - -4.5326933e+03 1.8729441e+03 1.9286331e+03 - -4.5976970e+03 1.7735844e+03 1.9092043e+03 - -4.6577196e+03 1.6781728e+03 1.8899006e+03 - -4.7130618e+03 1.5865682e+03 1.8708786e+03 - -4.7640276e+03 1.4985979e+03 1.8522684e+03 - -4.8109170e+03 1.4140685e+03 1.8341760e+03 - -4.8540189e+03 1.3327747e+03 1.8166864e+03 - -4.8936082e+03 1.2545054e+03 1.7998662e+03 - -4.9299422e+03 1.1790493e+03 1.7837663e+03 - -4.9632602e+03 1.1061989e+03 1.7684245e+03 - -4.9937821e+03 1.0357524e+03 1.7538679e+03 - -5.0217092e+03 9.6751624e+02 1.7401146e+03 - -5.0472245e+03 9.0130577e+02 1.7271760e+03 - -5.0704936e+03 8.3694575e+02 1.7150576e+03 - -5.0916654e+03 7.7427058e+02 1.7037608e+03 - -5.1108738e+03 7.1312404e+02 1.6932839e+03 - -5.1282383e+03 6.5335899e+02 1.6836225e+03 - -5.1438650e+03 5.9483676e+02 1.6747709e+03 - -5.1578481e+03 5.3742660e+02 1.6667222e+03 - -5.1702704e+03 4.8100497e+02 1.6594690e+03 - -5.1812044e+03 4.2545491e+02 1.6530038e+03 - -5.1907129e+03 3.7066524e+02 1.6473191e+03 - -5.1988498e+03 3.1652997e+02 1.6424080e+03 - -5.2056607e+03 2.6294752e+02 1.6382640e+03 - -5.2111832e+03 2.0982008e+02 1.6348816e+03 - -5.2154478e+03 1.5705298e+02 1.6322559e+03 - -5.2184775e+03 1.0455398e+02 1.6303831e+03 - -5.2202888e+03 5.2232711e+01 1.6292606e+03 - -5.2208915e+03 -4.8134273e-09 1.6288866e+03 - -5.2202888e+03 -5.2232711e+01 1.6292606e+03 - -5.2184775e+03 -1.0455398e+02 1.6303831e+03 - -5.2154478e+03 -1.5705298e+02 1.6322559e+03 - -5.2111832e+03 -2.0982008e+02 1.6348816e+03 - -5.2056607e+03 -2.6294752e+02 1.6382640e+03 - -5.1988498e+03 -3.1652997e+02 1.6424080e+03 - -5.1907129e+03 -3.7066524e+02 1.6473191e+03 - -5.1812044e+03 -4.2545491e+02 1.6530038e+03 - -5.1702704e+03 -4.8100497e+02 1.6594690e+03 - -5.1578481e+03 -5.3742660e+02 1.6667222e+03 - -5.1438650e+03 -5.9483676e+02 1.6747709e+03 - -5.1282383e+03 -6.5335899e+02 1.6836225e+03 - -5.1108738e+03 -7.1312404e+02 1.6932839e+03 - -5.0916654e+03 -7.7427058e+02 1.7037608e+03 - -5.0704936e+03 -8.3694575e+02 1.7150576e+03 - -5.0472245e+03 -9.0130577e+02 1.7271760e+03 - -5.0217092e+03 -9.6751624e+02 1.7401146e+03 - -4.9937821e+03 -1.0357524e+03 1.7538679e+03 - -4.9632602e+03 -1.1061989e+03 1.7684245e+03 - -4.9299422e+03 -1.1790493e+03 1.7837663e+03 - -4.8936082e+03 -1.2545054e+03 1.7998662e+03 - -4.8540189e+03 -1.3327747e+03 1.8166864e+03 - -4.8109170e+03 -1.4140685e+03 1.8341760e+03 - -4.7640276e+03 -1.4985979e+03 1.8522684e+03 - -4.7130618e+03 -1.5865682e+03 1.8708786e+03 - -4.6577196e+03 -1.6781728e+03 1.8899006e+03 - -4.5976970e+03 -1.7735844e+03 1.9092043e+03 - -4.5326933e+03 -1.8729441e+03 1.9286331e+03 - -4.4624223e+03 -1.9763493e+03 1.9480019e+03 - -4.3866260e+03 -2.0838390e+03 1.9670966e+03 - -4.3050903e+03 -2.1953786e+03 1.9856739e+03 - -4.2176645e+03 -2.3108432e+03 2.0034644e+03 - -4.1242808e+03 -2.4300034e+03 2.0201771e+03 - -4.0249745e+03 -2.5525122e+03 2.0355072e+03 - -3.9199033e+03 -2.6778972e+03 2.0491463e+03 - -3.8093605e+03 -2.8055600e+03 2.0607956e+03 - -3.6937837e+03 -2.9347832e+03 2.0701806e+03 - -3.5737528e+03 -3.0647478e+03 2.0770669e+03 - -3.4499788e+03 -3.1945592e+03 2.0812744e+03 - -3.3232818e+03 -3.3232818e+03 2.0826898e+03 - -3.1945592e+03 -3.4499788e+03 2.0812744e+03 - -3.0647478e+03 -3.5737528e+03 2.0770669e+03 - -2.9347832e+03 -3.6937837e+03 2.0701806e+03 - -2.8055600e+03 -3.8093605e+03 2.0607956e+03 - -2.6778972e+03 -3.9199033e+03 2.0491463e+03 - -2.5525122e+03 -4.0249745e+03 2.0355072e+03 - -2.4300034e+03 -4.1242808e+03 2.0201771e+03 - -2.3108432e+03 -4.2176645e+03 2.0034644e+03 - -2.1953786e+03 -4.3050903e+03 1.9856739e+03 - -2.0838390e+03 -4.3866260e+03 1.9670966e+03 - -1.9763493e+03 -4.4624223e+03 1.9480019e+03 - -1.8729441e+03 -4.5326933e+03 1.9286331e+03 - -1.7735844e+03 -4.5976970e+03 1.9092043e+03 - -1.6781728e+03 -4.6577196e+03 1.8899006e+03 - -1.5865682e+03 -4.7130618e+03 1.8708786e+03 - -1.4985979e+03 -4.7640276e+03 1.8522684e+03 - -1.4140685e+03 -4.8109170e+03 1.8341760e+03 - -1.3327747e+03 -4.8540189e+03 1.8166864e+03 - -1.2545054e+03 -4.8936082e+03 1.7998662e+03 - -1.1790493e+03 -4.9299422e+03 1.7837663e+03 - -1.1061989e+03 -4.9632602e+03 1.7684245e+03 - -1.0357524e+03 -4.9937821e+03 1.7538679e+03 - -9.6751624e+02 -5.0217092e+03 1.7401146e+03 - -9.0130577e+02 -5.0472245e+03 1.7271760e+03 - -8.3694575e+02 -5.0704936e+03 1.7150576e+03 - -7.7427058e+02 -5.0916654e+03 1.7037608e+03 - -7.1312404e+02 -5.1108738e+03 1.6932839e+03 - -6.5335899e+02 -5.1282383e+03 1.6836225e+03 - -5.9483676e+02 -5.1438650e+03 1.6747709e+03 - -5.3742660e+02 -5.1578481e+03 1.6667222e+03 - -4.8100497e+02 -5.1702704e+03 1.6594690e+03 - -4.2545491e+02 -5.1812044e+03 1.6530038e+03 - -3.7066524e+02 -5.1907129e+03 1.6473191e+03 - -3.1652997e+02 -5.1988498e+03 1.6424080e+03 - -2.6294752e+02 -5.2056607e+03 1.6382640e+03 - -2.0982008e+02 -5.2111832e+03 1.6348816e+03 - -1.5705298e+02 -5.2154478e+03 1.6322559e+03 - -1.0455398e+02 -5.2184775e+03 1.6303831e+03 - -5.2232711e+01 -5.2202888e+03 1.6292606e+03 - -9.6268545e-09 -5.2208915e+03 1.6288866e+03 - 5.2232711e+01 -5.2202888e+03 1.6292606e+03 - 1.0455398e+02 -5.2184775e+03 1.6303831e+03 - 1.5705298e+02 -5.2154478e+03 1.6322559e+03 - 2.0982008e+02 -5.2111832e+03 1.6348816e+03 - 2.6294752e+02 -5.2056607e+03 1.6382640e+03 - 3.1652997e+02 -5.1988498e+03 1.6424080e+03 - 3.7066524e+02 -5.1907129e+03 1.6473191e+03 - 4.2545491e+02 -5.1812044e+03 1.6530038e+03 - 4.8100497e+02 -5.1702704e+03 1.6594690e+03 - 5.3742660e+02 -5.1578481e+03 1.6667222e+03 - 5.9483676e+02 -5.1438650e+03 1.6747709e+03 - 6.5335899e+02 -5.1282383e+03 1.6836225e+03 - 7.1312404e+02 -5.1108738e+03 1.6932839e+03 - 7.7427058e+02 -5.0916654e+03 1.7037608e+03 - 8.3694575e+02 -5.0704936e+03 1.7150576e+03 - 9.0130577e+02 -5.0472245e+03 1.7271760e+03 - 9.6751624e+02 -5.0217092e+03 1.7401146e+03 - 1.0357524e+03 -4.9937821e+03 1.7538679e+03 - 1.1061989e+03 -4.9632602e+03 1.7684245e+03 - 1.1790493e+03 -4.9299422e+03 1.7837663e+03 - 1.2545054e+03 -4.8936082e+03 1.7998662e+03 - 1.3327747e+03 -4.8540189e+03 1.8166864e+03 - 1.4140685e+03 -4.8109170e+03 1.8341760e+03 - 1.4985979e+03 -4.7640276e+03 1.8522684e+03 - 1.5865682e+03 -4.7130618e+03 1.8708786e+03 - 1.6781728e+03 -4.6577196e+03 1.8899006e+03 - 1.7735844e+03 -4.5976970e+03 1.9092043e+03 - 1.8729441e+03 -4.5326933e+03 1.9286331e+03 - 1.9763493e+03 -4.4624223e+03 1.9480019e+03 - 2.0838390e+03 -4.3866260e+03 1.9670966e+03 - 2.1953786e+03 -4.3050903e+03 1.9856739e+03 - 2.3108432e+03 -4.2176645e+03 2.0034644e+03 - 2.4300034e+03 -4.1242808e+03 2.0201771e+03 - 2.5525122e+03 -4.0249745e+03 2.0355072e+03 - 2.6778972e+03 -3.9199033e+03 2.0491463e+03 - 2.8055600e+03 -3.8093605e+03 2.0607956e+03 - 2.9347832e+03 -3.6937837e+03 2.0701806e+03 - 3.0647478e+03 -3.5737528e+03 2.0770669e+03 - 3.1945592e+03 -3.4499788e+03 2.0812744e+03 - 3.3232818e+03 -3.3232818e+03 2.0826898e+03 - 3.4499788e+03 -3.1945592e+03 2.0812744e+03 - 3.5737528e+03 -3.0647478e+03 2.0770669e+03 - 3.6937837e+03 -2.9347832e+03 2.0701806e+03 - 3.8093605e+03 -2.8055600e+03 2.0607956e+03 - 3.9199033e+03 -2.6778972e+03 2.0491463e+03 - 4.0249745e+03 -2.5525122e+03 2.0355072e+03 - 4.1242808e+03 -2.4300034e+03 2.0201771e+03 - 4.2176645e+03 -2.3108432e+03 2.0034644e+03 - 4.3050903e+03 -2.1953786e+03 1.9856739e+03 - 4.3866260e+03 -2.0838390e+03 1.9670966e+03 - 4.4624223e+03 -1.9763493e+03 1.9480019e+03 - 4.5326933e+03 -1.8729441e+03 1.9286331e+03 - 4.5976970e+03 -1.7735844e+03 1.9092043e+03 - 4.6577196e+03 -1.6781728e+03 1.8899006e+03 - 4.7130618e+03 -1.5865682e+03 1.8708786e+03 - 4.7640276e+03 -1.4985979e+03 1.8522684e+03 - 4.8109170e+03 -1.4140685e+03 1.8341760e+03 - 4.8540189e+03 -1.3327747e+03 1.8166864e+03 - 4.8936082e+03 -1.2545054e+03 1.7998662e+03 - 4.9299422e+03 -1.1790493e+03 1.7837663e+03 - 4.9632602e+03 -1.1061989e+03 1.7684245e+03 - 4.9937821e+03 -1.0357524e+03 1.7538679e+03 - 5.0217092e+03 -9.6751624e+02 1.7401146e+03 - 5.0472245e+03 -9.0130577e+02 1.7271760e+03 - 5.0704936e+03 -8.3694575e+02 1.7150576e+03 - 5.0916654e+03 -7.7427058e+02 1.7037608e+03 - 5.1108738e+03 -7.1312404e+02 1.6932839e+03 - 5.1282383e+03 -6.5335899e+02 1.6836225e+03 - 5.1438650e+03 -5.9483676e+02 1.6747709e+03 - 5.1578481e+03 -5.3742660e+02 1.6667222e+03 - 5.1702704e+03 -4.8100497e+02 1.6594690e+03 - 5.1812044e+03 -4.2545491e+02 1.6530038e+03 - 5.1907129e+03 -3.7066524e+02 1.6473191e+03 - 5.1988498e+03 -3.1652997e+02 1.6424080e+03 - 5.2056607e+03 -2.6294752e+02 1.6382640e+03 - 5.2111832e+03 -2.0982008e+02 1.6348816e+03 - 5.2154478e+03 -1.5705298e+02 1.6322559e+03 - 5.2184775e+03 -1.0455398e+02 1.6303831e+03 - 5.2202888e+03 -5.2232711e+01 1.6292606e+03 - 5.2208915e+03 -4.8134273e-09 1.6288866e+03 - 5.2478424e+03 4.8134273e-09 1.5115387e+03 - 5.2472531e+03 5.1989616e+01 1.5118978e+03 - 5.2454820e+03 1.0406766e+02 1.5129756e+03 - 5.2425193e+03 1.5632320e+02 1.5147740e+03 - 5.2383488e+03 2.0884653e+02 1.5172959e+03 - 5.2329474e+03 2.6172988e+02 1.5205455e+03 - 5.2262848e+03 3.1506800e+02 1.5245278e+03 - 5.2183237e+03 3.6895887e+02 1.5292490e+03 - 5.2090184e+03 4.2350438e+02 1.5347162e+03 - 5.1983153e+03 4.7881103e+02 1.5409371e+03 - 5.1861516e+03 5.3499069e+02 1.5479201e+03 - 5.1724547e+03 5.9216132e+02 1.5556740e+03 - 5.1571415e+03 6.5044774e+02 1.5642073e+03 - 5.1401176e+03 7.0998241e+02 1.5735286e+03 - 5.1212760e+03 7.7090615e+02 1.5836455e+03 - 5.1004960e+03 8.3336887e+02 1.5945643e+03 - 5.0776424e+03 8.9753017e+02 1.6062894e+03 - 5.0525638e+03 9.6355989e+02 1.6188222e+03 - 5.0250918e+03 1.0316384e+03 1.6321603e+03 - 4.9950393e+03 1.1019566e+03 1.6462961e+03 - 4.9621999e+03 1.1747157e+03 1.6612156e+03 - 4.9263469e+03 1.2501262e+03 1.6768962e+03 - 4.8872328e+03 1.3284063e+03 1.6933049e+03 - 4.8445898e+03 1.4097794e+03 1.7103963e+03 - 4.7981304e+03 1.4944707e+03 1.7281093e+03 - 4.7475502e+03 1.5827013e+03 1.7463648e+03 - 4.6925314e+03 1.6746822e+03 1.7650623e+03 - 4.6327485e+03 1.7706049e+03 1.7840770e+03 - 4.5678773e+03 1.8706303e+03 1.8032571e+03 - 4.4976050e+03 1.9748756e+03 1.8224214e+03 - 4.4216455e+03 2.0833986e+03 1.8413578e+03 - 4.3397560e+03 2.1961805e+03 1.8598235e+03 - 4.2517578e+03 2.3131082e+03 1.8775473e+03 - 4.1575580e+03 2.4339572e+03 1.8942340e+03 - 4.0571730e+03 2.5583770e+03 1.9095721e+03 - 3.9507489e+03 2.6858811e+03 1.9232446e+03 - 3.8385789e+03 2.8158454e+03 1.9349422e+03 - 3.7211125e+03 2.9475148e+03 1.9443797e+03 - 3.5989556e+03 3.0800214e+03 1.9513122e+03 - 3.4728586e+03 3.2124132e+03 1.9555512e+03 - 3.3436923e+03 3.3436923e+03 1.9569778e+03 - 3.2124132e+03 3.4728586e+03 1.9555512e+03 - 3.0800214e+03 3.5989556e+03 1.9513122e+03 - 2.9475148e+03 3.7211125e+03 1.9443797e+03 - 2.8158454e+03 3.8385789e+03 1.9349422e+03 - 2.6858811e+03 3.9507489e+03 1.9232446e+03 - 2.5583770e+03 4.0571730e+03 1.9095721e+03 - 2.4339572e+03 4.1575580e+03 1.8942340e+03 - 2.3131082e+03 4.2517578e+03 1.8775473e+03 - 2.1961805e+03 4.3397560e+03 1.8598235e+03 - 2.0833986e+03 4.4216455e+03 1.8413578e+03 - 1.9748756e+03 4.4976050e+03 1.8224214e+03 - 1.8706303e+03 4.5678773e+03 1.8032571e+03 - 1.7706049e+03 4.6327485e+03 1.7840770e+03 - 1.6746822e+03 4.6925314e+03 1.7650623e+03 - 1.5827013e+03 4.7475502e+03 1.7463648e+03 - 1.4944707e+03 4.7981304e+03 1.7281093e+03 - 1.4097794e+03 4.8445898e+03 1.7103963e+03 - 1.3284063e+03 4.8872328e+03 1.6933049e+03 - 1.2501262e+03 4.9263469e+03 1.6768962e+03 - 1.1747157e+03 4.9621999e+03 1.6612156e+03 - 1.1019566e+03 4.9950393e+03 1.6462961e+03 - 1.0316384e+03 5.0250918e+03 1.6321603e+03 - 9.6355989e+02 5.0525638e+03 1.6188222e+03 - 8.9753017e+02 5.0776424e+03 1.6062894e+03 - 8.3336887e+02 5.1004960e+03 1.5945643e+03 - 7.7090615e+02 5.1212760e+03 1.5836455e+03 - 7.0998241e+02 5.1401176e+03 1.5735286e+03 - 6.5044774e+02 5.1571415e+03 1.5642073e+03 - 5.9216132e+02 5.1724547e+03 1.5556740e+03 - 5.3499069e+02 5.1861516e+03 1.5479201e+03 - 4.7881103e+02 5.1983153e+03 1.5409371e+03 - 4.2350438e+02 5.2090184e+03 1.5347162e+03 - 3.6895887e+02 5.2183237e+03 1.5292490e+03 - 3.1506800e+02 5.2262848e+03 1.5245278e+03 - 2.6172988e+02 5.2329474e+03 1.5205455e+03 - 2.0884653e+02 5.2383488e+03 1.5172959e+03 - 1.5632320e+02 5.2425193e+03 1.5147740e+03 - 1.0406766e+02 5.2454820e+03 1.5129756e+03 - 5.1989616e+01 5.2472531e+03 1.5118978e+03 - 4.8134273e-09 5.2478424e+03 1.5115387e+03 - -5.1989616e+01 5.2472531e+03 1.5118978e+03 - -1.0406766e+02 5.2454820e+03 1.5129756e+03 - -1.5632320e+02 5.2425193e+03 1.5147740e+03 - -2.0884653e+02 5.2383488e+03 1.5172959e+03 - -2.6172988e+02 5.2329474e+03 1.5205455e+03 - -3.1506800e+02 5.2262848e+03 1.5245278e+03 - -3.6895887e+02 5.2183237e+03 1.5292490e+03 - -4.2350438e+02 5.2090184e+03 1.5347162e+03 - -4.7881103e+02 5.1983153e+03 1.5409371e+03 - -5.3499069e+02 5.1861516e+03 1.5479201e+03 - -5.9216132e+02 5.1724547e+03 1.5556740e+03 - -6.5044774e+02 5.1571415e+03 1.5642073e+03 - -7.0998241e+02 5.1401176e+03 1.5735286e+03 - -7.7090615e+02 5.1212760e+03 1.5836455e+03 - -8.3336887e+02 5.1004960e+03 1.5945643e+03 - -8.9753017e+02 5.0776424e+03 1.6062894e+03 - -9.6355989e+02 5.0525638e+03 1.6188222e+03 - -1.0316384e+03 5.0250918e+03 1.6321603e+03 - -1.1019566e+03 4.9950393e+03 1.6462961e+03 - -1.1747157e+03 4.9621999e+03 1.6612156e+03 - -1.2501262e+03 4.9263469e+03 1.6768962e+03 - -1.3284063e+03 4.8872328e+03 1.6933049e+03 - -1.4097794e+03 4.8445898e+03 1.7103963e+03 - -1.4944707e+03 4.7981304e+03 1.7281093e+03 - -1.5827013e+03 4.7475502e+03 1.7463648e+03 - -1.6746822e+03 4.6925314e+03 1.7650623e+03 - -1.7706049e+03 4.6327485e+03 1.7840770e+03 - -1.8706303e+03 4.5678773e+03 1.8032571e+03 - -1.9748756e+03 4.4976050e+03 1.8224214e+03 - -2.0833986e+03 4.4216455e+03 1.8413578e+03 - -2.1961805e+03 4.3397560e+03 1.8598235e+03 - -2.3131082e+03 4.2517578e+03 1.8775473e+03 - -2.4339572e+03 4.1575580e+03 1.8942340e+03 - -2.5583770e+03 4.0571730e+03 1.9095721e+03 - -2.6858811e+03 3.9507489e+03 1.9232446e+03 - -2.8158454e+03 3.8385789e+03 1.9349422e+03 - -2.9475148e+03 3.7211125e+03 1.9443797e+03 - -3.0800214e+03 3.5989556e+03 1.9513122e+03 - -3.2124132e+03 3.4728586e+03 1.9555512e+03 - -3.3436923e+03 3.3436923e+03 1.9569778e+03 - -3.4728586e+03 3.2124132e+03 1.9555512e+03 - -3.5989556e+03 3.0800214e+03 1.9513122e+03 - -3.7211125e+03 2.9475148e+03 1.9443797e+03 - -3.8385789e+03 2.8158454e+03 1.9349422e+03 - -3.9507489e+03 2.6858811e+03 1.9232446e+03 - -4.0571730e+03 2.5583770e+03 1.9095721e+03 - -4.1575580e+03 2.4339572e+03 1.8942340e+03 - -4.2517578e+03 2.3131082e+03 1.8775473e+03 - -4.3397560e+03 2.1961805e+03 1.8598235e+03 - -4.4216455e+03 2.0833986e+03 1.8413578e+03 - -4.4976050e+03 1.9748756e+03 1.8224214e+03 - -4.5678773e+03 1.8706303e+03 1.8032571e+03 - -4.6327485e+03 1.7706049e+03 1.7840770e+03 - -4.6925314e+03 1.6746822e+03 1.7650623e+03 - -4.7475502e+03 1.5827013e+03 1.7463648e+03 - -4.7981304e+03 1.4944707e+03 1.7281093e+03 - -4.8445898e+03 1.4097794e+03 1.7103963e+03 - -4.8872328e+03 1.3284063e+03 1.6933049e+03 - -4.9263469e+03 1.2501262e+03 1.6768962e+03 - -4.9621999e+03 1.1747157e+03 1.6612156e+03 - -4.9950393e+03 1.1019566e+03 1.6462961e+03 - -5.0250918e+03 1.0316384e+03 1.6321603e+03 - -5.0525638e+03 9.6355989e+02 1.6188222e+03 - -5.0776424e+03 8.9753017e+02 1.6062894e+03 - -5.1004960e+03 8.3336887e+02 1.5945643e+03 - -5.1212760e+03 7.7090615e+02 1.5836455e+03 - -5.1401176e+03 7.0998241e+02 1.5735286e+03 - -5.1571415e+03 6.5044774e+02 1.5642073e+03 - -5.1724547e+03 5.9216132e+02 1.5556740e+03 - -5.1861516e+03 5.3499069e+02 1.5479201e+03 - -5.1983153e+03 4.7881103e+02 1.5409371e+03 - -5.2090184e+03 4.2350438e+02 1.5347162e+03 - -5.2183237e+03 3.6895887e+02 1.5292490e+03 - -5.2262848e+03 3.1506800e+02 1.5245278e+03 - -5.2329474e+03 2.6172988e+02 1.5205455e+03 - -5.2383488e+03 2.0884653e+02 1.5172959e+03 - -5.2425193e+03 1.5632320e+02 1.5147740e+03 - -5.2454820e+03 1.0406766e+02 1.5129756e+03 - -5.2472531e+03 5.1989616e+01 1.5118978e+03 - -5.2478424e+03 0.0000000e+00 1.5115387e+03 - -5.2472531e+03 -5.1989616e+01 1.5118978e+03 - -5.2454820e+03 -1.0406766e+02 1.5129756e+03 - -5.2425193e+03 -1.5632320e+02 1.5147740e+03 - -5.2383488e+03 -2.0884653e+02 1.5172959e+03 - -5.2329474e+03 -2.6172988e+02 1.5205455e+03 - -5.2262848e+03 -3.1506800e+02 1.5245278e+03 - -5.2183237e+03 -3.6895887e+02 1.5292490e+03 - -5.2090184e+03 -4.2350438e+02 1.5347162e+03 - -5.1983153e+03 -4.7881103e+02 1.5409371e+03 - -5.1861516e+03 -5.3499069e+02 1.5479201e+03 - -5.1724547e+03 -5.9216132e+02 1.5556740e+03 - -5.1571415e+03 -6.5044774e+02 1.5642073e+03 - -5.1401176e+03 -7.0998241e+02 1.5735286e+03 - -5.1212760e+03 -7.7090615e+02 1.5836455e+03 - -5.1004960e+03 -8.3336887e+02 1.5945643e+03 - -5.0776424e+03 -8.9753017e+02 1.6062894e+03 - -5.0525638e+03 -9.6355989e+02 1.6188222e+03 - -5.0250918e+03 -1.0316384e+03 1.6321603e+03 - -4.9950393e+03 -1.1019566e+03 1.6462961e+03 - -4.9621999e+03 -1.1747157e+03 1.6612156e+03 - -4.9263469e+03 -1.2501262e+03 1.6768962e+03 - -4.8872328e+03 -1.3284063e+03 1.6933049e+03 - -4.8445898e+03 -1.4097794e+03 1.7103963e+03 - -4.7981304e+03 -1.4944707e+03 1.7281093e+03 - -4.7475502e+03 -1.5827013e+03 1.7463648e+03 - -4.6925314e+03 -1.6746822e+03 1.7650623e+03 - -4.6327485e+03 -1.7706049e+03 1.7840770e+03 - -4.5678773e+03 -1.8706303e+03 1.8032571e+03 - -4.4976050e+03 -1.9748756e+03 1.8224214e+03 - -4.4216455e+03 -2.0833986e+03 1.8413578e+03 - -4.3397560e+03 -2.1961805e+03 1.8598235e+03 - -4.2517578e+03 -2.3131082e+03 1.8775473e+03 - -4.1575580e+03 -2.4339572e+03 1.8942340e+03 - -4.0571730e+03 -2.5583770e+03 1.9095721e+03 - -3.9507489e+03 -2.6858811e+03 1.9232446e+03 - -3.8385789e+03 -2.8158454e+03 1.9349422e+03 - -3.7211125e+03 -2.9475148e+03 1.9443797e+03 - -3.5989556e+03 -3.0800214e+03 1.9513122e+03 - -3.4728586e+03 -3.2124132e+03 1.9555512e+03 - -3.3436923e+03 -3.3436923e+03 1.9569778e+03 - -3.2124132e+03 -3.4728586e+03 1.9555512e+03 - -3.0800214e+03 -3.5989556e+03 1.9513122e+03 - -2.9475148e+03 -3.7211125e+03 1.9443797e+03 - -2.8158454e+03 -3.8385789e+03 1.9349422e+03 - -2.6858811e+03 -3.9507489e+03 1.9232446e+03 - -2.5583770e+03 -4.0571730e+03 1.9095721e+03 - -2.4339572e+03 -4.1575580e+03 1.8942340e+03 - -2.3131082e+03 -4.2517578e+03 1.8775473e+03 - -2.1961805e+03 -4.3397560e+03 1.8598235e+03 - -2.0833986e+03 -4.4216455e+03 1.8413578e+03 - -1.9748756e+03 -4.4976050e+03 1.8224214e+03 - -1.8706303e+03 -4.5678773e+03 1.8032571e+03 - -1.7706049e+03 -4.6327485e+03 1.7840770e+03 - -1.6746822e+03 -4.6925314e+03 1.7650623e+03 - -1.5827013e+03 -4.7475502e+03 1.7463648e+03 - -1.4944707e+03 -4.7981304e+03 1.7281093e+03 - -1.4097794e+03 -4.8445898e+03 1.7103963e+03 - -1.3284063e+03 -4.8872328e+03 1.6933049e+03 - -1.2501262e+03 -4.9263469e+03 1.6768962e+03 - -1.1747157e+03 -4.9621999e+03 1.6612156e+03 - -1.1019566e+03 -4.9950393e+03 1.6462961e+03 - -1.0316384e+03 -5.0250918e+03 1.6321603e+03 - -9.6355989e+02 -5.0525638e+03 1.6188222e+03 - -8.9753017e+02 -5.0776424e+03 1.6062894e+03 - -8.3336887e+02 -5.1004960e+03 1.5945643e+03 - -7.7090615e+02 -5.1212760e+03 1.5836455e+03 - -7.0998241e+02 -5.1401176e+03 1.5735286e+03 - -6.5044774e+02 -5.1571415e+03 1.5642073e+03 - -5.9216132e+02 -5.1724547e+03 1.5556740e+03 - -5.3499069e+02 -5.1861516e+03 1.5479201e+03 - -4.7881103e+02 -5.1983153e+03 1.5409371e+03 - -4.2350438e+02 -5.2090184e+03 1.5347162e+03 - -3.6895887e+02 -5.2183237e+03 1.5292490e+03 - -3.1506800e+02 -5.2262848e+03 1.5245278e+03 - -2.6172988e+02 -5.2329474e+03 1.5205455e+03 - -2.0884653e+02 -5.2383488e+03 1.5172959e+03 - -1.5632320e+02 -5.2425193e+03 1.5147740e+03 - -1.0406766e+02 -5.2454820e+03 1.5129756e+03 - -5.1989616e+01 -5.2472531e+03 1.5118978e+03 - 0.0000000e+00 -5.2478424e+03 1.5115387e+03 - 5.1989616e+01 -5.2472531e+03 1.5118978e+03 - 1.0406766e+02 -5.2454820e+03 1.5129756e+03 - 1.5632320e+02 -5.2425193e+03 1.5147740e+03 - 2.0884653e+02 -5.2383488e+03 1.5172959e+03 - 2.6172988e+02 -5.2329474e+03 1.5205455e+03 - 3.1506800e+02 -5.2262848e+03 1.5245278e+03 - 3.6895887e+02 -5.2183237e+03 1.5292490e+03 - 4.2350438e+02 -5.2090184e+03 1.5347162e+03 - 4.7881103e+02 -5.1983153e+03 1.5409371e+03 - 5.3499069e+02 -5.1861516e+03 1.5479201e+03 - 5.9216132e+02 -5.1724547e+03 1.5556740e+03 - 6.5044774e+02 -5.1571415e+03 1.5642073e+03 - 7.0998241e+02 -5.1401176e+03 1.5735286e+03 - 7.7090615e+02 -5.1212760e+03 1.5836455e+03 - 8.3336887e+02 -5.1004960e+03 1.5945643e+03 - 8.9753017e+02 -5.0776424e+03 1.6062894e+03 - 9.6355989e+02 -5.0525638e+03 1.6188222e+03 - 1.0316384e+03 -5.0250918e+03 1.6321603e+03 - 1.1019566e+03 -4.9950393e+03 1.6462961e+03 - 1.1747157e+03 -4.9621999e+03 1.6612156e+03 - 1.2501262e+03 -4.9263469e+03 1.6768962e+03 - 1.3284063e+03 -4.8872328e+03 1.6933049e+03 - 1.4097794e+03 -4.8445898e+03 1.7103963e+03 - 1.4944707e+03 -4.7981304e+03 1.7281093e+03 - 1.5827013e+03 -4.7475502e+03 1.7463648e+03 - 1.6746822e+03 -4.6925314e+03 1.7650623e+03 - 1.7706049e+03 -4.6327485e+03 1.7840770e+03 - 1.8706303e+03 -4.5678773e+03 1.8032571e+03 - 1.9748756e+03 -4.4976050e+03 1.8224214e+03 - 2.0833986e+03 -4.4216455e+03 1.8413578e+03 - 2.1961805e+03 -4.3397560e+03 1.8598235e+03 - 2.3131082e+03 -4.2517578e+03 1.8775473e+03 - 2.4339572e+03 -4.1575580e+03 1.8942340e+03 - 2.5583770e+03 -4.0571730e+03 1.9095721e+03 - 2.6858811e+03 -3.9507489e+03 1.9232446e+03 - 2.8158454e+03 -3.8385789e+03 1.9349422e+03 - 2.9475148e+03 -3.7211125e+03 1.9443797e+03 - 3.0800214e+03 -3.5989556e+03 1.9513122e+03 - 3.2124132e+03 -3.4728586e+03 1.9555512e+03 - 3.3436923e+03 -3.3436923e+03 1.9569778e+03 - 3.4728586e+03 -3.2124132e+03 1.9555512e+03 - 3.5989556e+03 -3.0800214e+03 1.9513122e+03 - 3.7211125e+03 -2.9475148e+03 1.9443797e+03 - 3.8385789e+03 -2.8158454e+03 1.9349422e+03 - 3.9507489e+03 -2.6858811e+03 1.9232446e+03 - 4.0571730e+03 -2.5583770e+03 1.9095721e+03 - 4.1575580e+03 -2.4339572e+03 1.8942340e+03 - 4.2517578e+03 -2.3131082e+03 1.8775473e+03 - 4.3397560e+03 -2.1961805e+03 1.8598235e+03 - 4.4216455e+03 -2.0833986e+03 1.8413578e+03 - 4.4976050e+03 -1.9748756e+03 1.8224214e+03 - 4.5678773e+03 -1.8706303e+03 1.8032571e+03 - 4.6327485e+03 -1.7706049e+03 1.7840770e+03 - 4.6925314e+03 -1.6746822e+03 1.7650623e+03 - 4.7475502e+03 -1.5827013e+03 1.7463648e+03 - 4.7981304e+03 -1.4944707e+03 1.7281093e+03 - 4.8445898e+03 -1.4097794e+03 1.7103963e+03 - 4.8872328e+03 -1.3284063e+03 1.6933049e+03 - 4.9263469e+03 -1.2501262e+03 1.6768962e+03 - 4.9621999e+03 -1.1747157e+03 1.6612156e+03 - 4.9950393e+03 -1.1019566e+03 1.6462961e+03 - 5.0250918e+03 -1.0316384e+03 1.6321603e+03 - 5.0525638e+03 -9.6355989e+02 1.6188222e+03 - 5.0776424e+03 -8.9753017e+02 1.6062894e+03 - 5.1004960e+03 -8.3336887e+02 1.5945643e+03 - 5.1212760e+03 -7.7090615e+02 1.5836455e+03 - 5.1401176e+03 -7.0998241e+02 1.5735286e+03 - 5.1571415e+03 -6.5044774e+02 1.5642073e+03 - 5.1724547e+03 -5.9216132e+02 1.5556740e+03 - 5.1861516e+03 -5.3499069e+02 1.5479201e+03 - 5.1983153e+03 -4.7881103e+02 1.5409371e+03 - 5.2090184e+03 -4.2350438e+02 1.5347162e+03 - 5.2183237e+03 -3.6895887e+02 1.5292490e+03 - 5.2262848e+03 -3.1506800e+02 1.5245278e+03 - 5.2329474e+03 -2.6172988e+02 1.5205455e+03 - 5.2383488e+03 -2.0884653e+02 1.5172959e+03 - 5.2425193e+03 -1.5632320e+02 1.5147740e+03 - 5.2454820e+03 -1.0406766e+02 1.5129756e+03 - 5.2472531e+03 -5.1989616e+01 1.5118978e+03 - 5.2478424e+03 0.0000000e+00 1.5115387e+03 - 5.2732317e+03 0.0000000e+00 1.3901107e+03 - 5.2726556e+03 5.1756892e+01 1.3904517e+03 - 5.2709242e+03 1.0360203e+02 1.3914753e+03 - 5.2680279e+03 1.5562431e+02 1.3931834e+03 - 5.2639504e+03 2.0791391e+02 1.3955791e+03 - 5.2586689e+03 2.6056296e+02 1.3986668e+03 - 5.2521535e+03 3.1366622e+02 1.4024518e+03 - 5.2443666e+03 3.6732177e+02 1.4069407e+03 - 5.2352633e+03 4.2163173e+02 1.4121410e+03 - 5.2247898e+03 4.7670298e+02 1.4180611e+03 - 5.2128837e+03 5.3264797e+02 1.4247100e+03 - 5.1994723e+03 5.8958552e+02 1.4320974e+03 - 5.1844727e+03 6.4764159e+02 1.4402330e+03 - 5.1677901e+03 7.0695014e+02 1.4491266e+03 - 5.1493170e+03 7.6765397e+02 1.4587874e+03 - 5.1289320e+03 8.2990550e+02 1.4692236e+03 - 5.1064986e+03 8.9386750e+02 1.4804418e+03 - 5.0818635e+03 9.5971375e+02 1.4924459e+03 - 5.0548556e+03 1.0276295e+03 1.5052365e+03 - 5.0252845e+03 1.0978116e+03 1.5188097e+03 - 4.9929390e+03 1.1704684e+03 1.5331551e+03 - 4.9575862e+03 1.2458190e+03 1.5482550e+03 - 4.9189710e+03 1.3240920e+03 1.5640814e+03 - 4.8768154e+03 1.4055226e+03 1.5805943e+03 - 4.8308198e+03 1.4903499e+03 1.5977390e+03 - 4.7806650e+03 1.5788110e+03 1.6154428e+03 - 4.7260152e+03 1.6711342e+03 1.6336118e+03 - 4.6665241e+03 1.7675304e+03 1.6521284e+03 - 4.6018432e+03 1.8681808e+03 1.6708470e+03 - 4.5316330e+03 1.9732231e+03 1.6895924e+03 - 4.4555783e+03 2.0827348e+03 1.7081576e+03 - 4.3734060e+03 2.1967145e+03 1.7263032e+03 - 4.2849078e+03 2.3150621e+03 1.7437596e+03 - 4.1899641e+03 2.4375593e+03 1.7602312e+03 - 4.0885693e+03 2.5638533e+03 1.7754035e+03 - 3.9808564e+03 2.6934444e+03 1.7889545e+03 - 3.8671162e+03 2.8256828e+03 1.8005683e+03 - 3.7478092e+03 2.9597750e+03 1.8099519e+03 - 3.6235668e+03 3.0948031e+03 1.8168527e+03 - 3.4951792e+03 3.2297556e+03 1.8210757e+03 - 3.3635695e+03 3.3635695e+03 1.8224974e+03 - 3.2297556e+03 3.4951792e+03 1.8210757e+03 - 3.0948031e+03 3.6235668e+03 1.8168527e+03 - 2.9597750e+03 3.7478092e+03 1.8099519e+03 - 2.8256828e+03 3.8671162e+03 1.8005683e+03 - 2.6934444e+03 3.9808564e+03 1.7889545e+03 - 2.5638533e+03 4.0885693e+03 1.7754035e+03 - 2.4375593e+03 4.1899641e+03 1.7602312e+03 - 2.3150621e+03 4.2849078e+03 1.7437596e+03 - 2.1967145e+03 4.3734060e+03 1.7263032e+03 - 2.0827348e+03 4.4555783e+03 1.7081576e+03 - 1.9732231e+03 4.5316330e+03 1.6895924e+03 - 1.8681808e+03 4.6018432e+03 1.6708470e+03 - 1.7675304e+03 4.6665241e+03 1.6521284e+03 - 1.6711342e+03 4.7260152e+03 1.6336118e+03 - 1.5788110e+03 4.7806650e+03 1.6154428e+03 - 1.4903499e+03 4.8308198e+03 1.5977390e+03 - 1.4055226e+03 4.8768154e+03 1.5805943e+03 - 1.3240920e+03 4.9189710e+03 1.5640814e+03 - 1.2458190e+03 4.9575862e+03 1.5482550e+03 - 1.1704684e+03 4.9929390e+03 1.5331551e+03 - 1.0978116e+03 5.0252845e+03 1.5188097e+03 - 1.0276295e+03 5.0548556e+03 1.5052365e+03 - 9.5971375e+02 5.0818635e+03 1.4924459e+03 - 8.9386750e+02 5.1064986e+03 1.4804418e+03 - 8.2990550e+02 5.1289320e+03 1.4692236e+03 - 7.6765397e+02 5.1493170e+03 1.4587874e+03 - 7.0695014e+02 5.1677901e+03 1.4491266e+03 - 6.4764159e+02 5.1844727e+03 1.4402330e+03 - 5.8958552e+02 5.1994723e+03 1.4320974e+03 - 5.3264797e+02 5.2128837e+03 1.4247100e+03 - 4.7670298e+02 5.2247898e+03 1.4180611e+03 - 4.2163173e+02 5.2352633e+03 1.4121410e+03 - 3.6732177e+02 5.2443666e+03 1.4069407e+03 - 3.1366622e+02 5.2521535e+03 1.4024518e+03 - 2.6056296e+02 5.2586689e+03 1.3986668e+03 - 2.0791391e+02 5.2639504e+03 1.3955791e+03 - 1.5562431e+02 5.2680279e+03 1.3931834e+03 - 1.0360203e+02 5.2709242e+03 1.3914753e+03 - 5.1756892e+01 5.2726556e+03 1.3904517e+03 - -4.8134273e-09 5.2732317e+03 1.3901107e+03 - -5.1756892e+01 5.2726556e+03 1.3904517e+03 - -1.0360203e+02 5.2709242e+03 1.3914753e+03 - -1.5562431e+02 5.2680279e+03 1.3931834e+03 - -2.0791391e+02 5.2639504e+03 1.3955791e+03 - -2.6056296e+02 5.2586689e+03 1.3986668e+03 - -3.1366622e+02 5.2521535e+03 1.4024518e+03 - -3.6732177e+02 5.2443666e+03 1.4069407e+03 - -4.2163173e+02 5.2352633e+03 1.4121410e+03 - -4.7670298e+02 5.2247898e+03 1.4180611e+03 - -5.3264797e+02 5.2128837e+03 1.4247100e+03 - -5.8958552e+02 5.1994723e+03 1.4320974e+03 - -6.4764159e+02 5.1844727e+03 1.4402330e+03 - -7.0695014e+02 5.1677901e+03 1.4491266e+03 - -7.6765397e+02 5.1493170e+03 1.4587874e+03 - -8.2990550e+02 5.1289320e+03 1.4692236e+03 - -8.9386750e+02 5.1064986e+03 1.4804418e+03 - -9.5971375e+02 5.0818635e+03 1.4924459e+03 - -1.0276295e+03 5.0548556e+03 1.5052365e+03 - -1.0978116e+03 5.0252845e+03 1.5188097e+03 - -1.1704684e+03 4.9929390e+03 1.5331551e+03 - -1.2458190e+03 4.9575862e+03 1.5482550e+03 - -1.3240920e+03 4.9189710e+03 1.5640814e+03 - -1.4055226e+03 4.8768154e+03 1.5805943e+03 - -1.4903499e+03 4.8308198e+03 1.5977390e+03 - -1.5788110e+03 4.7806650e+03 1.6154428e+03 - -1.6711342e+03 4.7260152e+03 1.6336118e+03 - -1.7675304e+03 4.6665241e+03 1.6521284e+03 - -1.8681808e+03 4.6018432e+03 1.6708470e+03 - -1.9732231e+03 4.5316330e+03 1.6895924e+03 - -2.0827348e+03 4.4555783e+03 1.7081576e+03 - -2.1967145e+03 4.3734060e+03 1.7263032e+03 - -2.3150621e+03 4.2849078e+03 1.7437596e+03 - -2.4375593e+03 4.1899641e+03 1.7602312e+03 - -2.5638533e+03 4.0885693e+03 1.7754035e+03 - -2.6934444e+03 3.9808564e+03 1.7889545e+03 - -2.8256828e+03 3.8671162e+03 1.8005683e+03 - -2.9597750e+03 3.7478092e+03 1.8099519e+03 - -3.0948031e+03 3.6235668e+03 1.8168527e+03 - -3.2297556e+03 3.4951792e+03 1.8210757e+03 - -3.3635695e+03 3.3635695e+03 1.8224974e+03 - -3.4951792e+03 3.2297556e+03 1.8210757e+03 - -3.6235668e+03 3.0948031e+03 1.8168527e+03 - -3.7478092e+03 2.9597750e+03 1.8099519e+03 - -3.8671162e+03 2.8256828e+03 1.8005683e+03 - -3.9808564e+03 2.6934444e+03 1.7889545e+03 - -4.0885693e+03 2.5638533e+03 1.7754035e+03 - -4.1899641e+03 2.4375593e+03 1.7602312e+03 - -4.2849078e+03 2.3150621e+03 1.7437596e+03 - -4.3734060e+03 2.1967145e+03 1.7263032e+03 - -4.4555783e+03 2.0827348e+03 1.7081576e+03 - -4.5316330e+03 1.9732231e+03 1.6895924e+03 - -4.6018432e+03 1.8681808e+03 1.6708470e+03 - -4.6665241e+03 1.7675304e+03 1.6521284e+03 - -4.7260152e+03 1.6711342e+03 1.6336118e+03 - -4.7806650e+03 1.5788110e+03 1.6154428e+03 - -4.8308198e+03 1.4903499e+03 1.5977390e+03 - -4.8768154e+03 1.4055226e+03 1.5805943e+03 - -4.9189710e+03 1.3240920e+03 1.5640814e+03 - -4.9575862e+03 1.2458190e+03 1.5482550e+03 - -4.9929390e+03 1.1704684e+03 1.5331551e+03 - -5.0252845e+03 1.0978116e+03 1.5188097e+03 - -5.0548556e+03 1.0276295e+03 1.5052365e+03 - -5.0818635e+03 9.5971375e+02 1.4924459e+03 - -5.1064986e+03 8.9386750e+02 1.4804418e+03 - -5.1289320e+03 8.2990550e+02 1.4692236e+03 - -5.1493170e+03 7.6765397e+02 1.4587874e+03 - -5.1677901e+03 7.0695014e+02 1.4491266e+03 - -5.1844727e+03 6.4764159e+02 1.4402330e+03 - -5.1994723e+03 5.8958552e+02 1.4320974e+03 - -5.2128837e+03 5.3264797e+02 1.4247100e+03 - -5.2247898e+03 4.7670298e+02 1.4180611e+03 - -5.2352633e+03 4.2163173e+02 1.4121410e+03 - -5.2443666e+03 3.6732177e+02 1.4069407e+03 - -5.2521535e+03 3.1366622e+02 1.4024518e+03 - -5.2586689e+03 2.6056296e+02 1.3986668e+03 - -5.2639504e+03 2.0791391e+02 1.3955791e+03 - -5.2680279e+03 1.5562431e+02 1.3931834e+03 - -5.2709242e+03 1.0360203e+02 1.3914753e+03 - -5.2726556e+03 5.1756892e+01 1.3904517e+03 - -5.2732317e+03 0.0000000e+00 1.3901107e+03 - -5.2726556e+03 -5.1756892e+01 1.3904517e+03 - -5.2709242e+03 -1.0360203e+02 1.3914753e+03 - -5.2680279e+03 -1.5562431e+02 1.3931834e+03 - -5.2639504e+03 -2.0791391e+02 1.3955791e+03 - -5.2586689e+03 -2.6056296e+02 1.3986668e+03 - -5.2521535e+03 -3.1366622e+02 1.4024518e+03 - -5.2443666e+03 -3.6732177e+02 1.4069407e+03 - -5.2352633e+03 -4.2163173e+02 1.4121410e+03 - -5.2247898e+03 -4.7670298e+02 1.4180611e+03 - -5.2128837e+03 -5.3264797e+02 1.4247100e+03 - -5.1994723e+03 -5.8958552e+02 1.4320974e+03 - -5.1844727e+03 -6.4764159e+02 1.4402330e+03 - -5.1677901e+03 -7.0695014e+02 1.4491266e+03 - -5.1493170e+03 -7.6765397e+02 1.4587874e+03 - -5.1289320e+03 -8.2990550e+02 1.4692236e+03 - -5.1064986e+03 -8.9386750e+02 1.4804418e+03 - -5.0818635e+03 -9.5971375e+02 1.4924459e+03 - -5.0548556e+03 -1.0276295e+03 1.5052365e+03 - -5.0252845e+03 -1.0978116e+03 1.5188097e+03 - -4.9929390e+03 -1.1704684e+03 1.5331551e+03 - -4.9575862e+03 -1.2458190e+03 1.5482550e+03 - -4.9189710e+03 -1.3240920e+03 1.5640814e+03 - -4.8768154e+03 -1.4055226e+03 1.5805943e+03 - -4.8308198e+03 -1.4903499e+03 1.5977390e+03 - -4.7806650e+03 -1.5788110e+03 1.6154428e+03 - -4.7260152e+03 -1.6711342e+03 1.6336118e+03 - -4.6665241e+03 -1.7675304e+03 1.6521284e+03 - -4.6018432e+03 -1.8681808e+03 1.6708470e+03 - -4.5316330e+03 -1.9732231e+03 1.6895924e+03 - -4.4555783e+03 -2.0827348e+03 1.7081576e+03 - -4.3734060e+03 -2.1967145e+03 1.7263032e+03 - -4.2849078e+03 -2.3150621e+03 1.7437596e+03 - -4.1899641e+03 -2.4375593e+03 1.7602312e+03 - -4.0885693e+03 -2.5638533e+03 1.7754035e+03 - -3.9808564e+03 -2.6934444e+03 1.7889545e+03 - -3.8671162e+03 -2.8256828e+03 1.8005683e+03 - -3.7478092e+03 -2.9597750e+03 1.8099519e+03 - -3.6235668e+03 -3.0948031e+03 1.8168527e+03 - -3.4951792e+03 -3.2297556e+03 1.8210757e+03 - -3.3635695e+03 -3.3635695e+03 1.8224974e+03 - -3.2297556e+03 -3.4951792e+03 1.8210757e+03 - -3.0948031e+03 -3.6235668e+03 1.8168527e+03 - -2.9597750e+03 -3.7478092e+03 1.8099519e+03 - -2.8256828e+03 -3.8671162e+03 1.8005683e+03 - -2.6934444e+03 -3.9808564e+03 1.7889545e+03 - -2.5638533e+03 -4.0885693e+03 1.7754035e+03 - -2.4375593e+03 -4.1899641e+03 1.7602312e+03 - -2.3150621e+03 -4.2849078e+03 1.7437596e+03 - -2.1967145e+03 -4.3734060e+03 1.7263032e+03 - -2.0827348e+03 -4.4555783e+03 1.7081576e+03 - -1.9732231e+03 -4.5316330e+03 1.6895924e+03 - -1.8681808e+03 -4.6018432e+03 1.6708470e+03 - -1.7675304e+03 -4.6665241e+03 1.6521284e+03 - -1.6711342e+03 -4.7260152e+03 1.6336118e+03 - -1.5788110e+03 -4.7806650e+03 1.6154428e+03 - -1.4903499e+03 -4.8308198e+03 1.5977390e+03 - -1.4055226e+03 -4.8768154e+03 1.5805943e+03 - -1.3240920e+03 -4.9189710e+03 1.5640814e+03 - -1.2458190e+03 -4.9575862e+03 1.5482550e+03 - -1.1704684e+03 -4.9929390e+03 1.5331551e+03 - -1.0978116e+03 -5.0252845e+03 1.5188097e+03 - -1.0276295e+03 -5.0548556e+03 1.5052365e+03 - -9.5971375e+02 -5.0818635e+03 1.4924459e+03 - -8.9386750e+02 -5.1064986e+03 1.4804418e+03 - -8.2990550e+02 -5.1289320e+03 1.4692236e+03 - -7.6765397e+02 -5.1493170e+03 1.4587874e+03 - -7.0695014e+02 -5.1677901e+03 1.4491266e+03 - -6.4764159e+02 -5.1844727e+03 1.4402330e+03 - -5.8958552e+02 -5.1994723e+03 1.4320974e+03 - -5.3264797e+02 -5.2128837e+03 1.4247100e+03 - -4.7670298e+02 -5.2247898e+03 1.4180611e+03 - -4.2163173e+02 -5.2352633e+03 1.4121410e+03 - -3.6732177e+02 -5.2443666e+03 1.4069407e+03 - -3.1366622e+02 -5.2521535e+03 1.4024518e+03 - -2.6056296e+02 -5.2586689e+03 1.3986668e+03 - -2.0791391e+02 -5.2639504e+03 1.3955791e+03 - -1.5562431e+02 -5.2680279e+03 1.3931834e+03 - -1.0360203e+02 -5.2709242e+03 1.3914753e+03 - -5.1756892e+01 -5.2726556e+03 1.3904517e+03 - -4.8134273e-09 -5.2732317e+03 1.3901107e+03 - 5.1756892e+01 -5.2726556e+03 1.3904517e+03 - 1.0360203e+02 -5.2709242e+03 1.3914753e+03 - 1.5562431e+02 -5.2680279e+03 1.3931834e+03 - 2.0791391e+02 -5.2639504e+03 1.3955791e+03 - 2.6056296e+02 -5.2586689e+03 1.3986668e+03 - 3.1366622e+02 -5.2521535e+03 1.4024518e+03 - 3.6732177e+02 -5.2443666e+03 1.4069407e+03 - 4.2163173e+02 -5.2352633e+03 1.4121410e+03 - 4.7670298e+02 -5.2247898e+03 1.4180611e+03 - 5.3264797e+02 -5.2128837e+03 1.4247100e+03 - 5.8958552e+02 -5.1994723e+03 1.4320974e+03 - 6.4764159e+02 -5.1844727e+03 1.4402330e+03 - 7.0695014e+02 -5.1677901e+03 1.4491266e+03 - 7.6765397e+02 -5.1493170e+03 1.4587874e+03 - 8.2990550e+02 -5.1289320e+03 1.4692236e+03 - 8.9386750e+02 -5.1064986e+03 1.4804418e+03 - 9.5971375e+02 -5.0818635e+03 1.4924459e+03 - 1.0276295e+03 -5.0548556e+03 1.5052365e+03 - 1.0978116e+03 -5.0252845e+03 1.5188097e+03 - 1.1704684e+03 -4.9929390e+03 1.5331551e+03 - 1.2458190e+03 -4.9575862e+03 1.5482550e+03 - 1.3240920e+03 -4.9189710e+03 1.5640814e+03 - 1.4055226e+03 -4.8768154e+03 1.5805943e+03 - 1.4903499e+03 -4.8308198e+03 1.5977390e+03 - 1.5788110e+03 -4.7806650e+03 1.6154428e+03 - 1.6711342e+03 -4.7260152e+03 1.6336118e+03 - 1.7675304e+03 -4.6665241e+03 1.6521284e+03 - 1.8681808e+03 -4.6018432e+03 1.6708470e+03 - 1.9732231e+03 -4.5316330e+03 1.6895924e+03 - 2.0827348e+03 -4.4555783e+03 1.7081576e+03 - 2.1967145e+03 -4.3734060e+03 1.7263032e+03 - 2.3150621e+03 -4.2849078e+03 1.7437596e+03 - 2.4375593e+03 -4.1899641e+03 1.7602312e+03 - 2.5638533e+03 -4.0885693e+03 1.7754035e+03 - 2.6934444e+03 -3.9808564e+03 1.7889545e+03 - 2.8256828e+03 -3.8671162e+03 1.8005683e+03 - 2.9597750e+03 -3.7478092e+03 1.8099519e+03 - 3.0948031e+03 -3.6235668e+03 1.8168527e+03 - 3.2297556e+03 -3.4951792e+03 1.8210757e+03 - 3.3635695e+03 -3.3635695e+03 1.8224974e+03 - 3.4951792e+03 -3.2297556e+03 1.8210757e+03 - 3.6235668e+03 -3.0948031e+03 1.8168527e+03 - 3.7478092e+03 -2.9597750e+03 1.8099519e+03 - 3.8671162e+03 -2.8256828e+03 1.8005683e+03 - 3.9808564e+03 -2.6934444e+03 1.7889545e+03 - 4.0885693e+03 -2.5638533e+03 1.7754035e+03 - 4.1899641e+03 -2.4375593e+03 1.7602312e+03 - 4.2849078e+03 -2.3150621e+03 1.7437596e+03 - 4.3734060e+03 -2.1967145e+03 1.7263032e+03 - 4.4555783e+03 -2.0827348e+03 1.7081576e+03 - 4.5316330e+03 -1.9732231e+03 1.6895924e+03 - 4.6018432e+03 -1.8681808e+03 1.6708470e+03 - 4.6665241e+03 -1.7675304e+03 1.6521284e+03 - 4.7260152e+03 -1.6711342e+03 1.6336118e+03 - 4.7806650e+03 -1.5788110e+03 1.6154428e+03 - 4.8308198e+03 -1.4903499e+03 1.5977390e+03 - 4.8768154e+03 -1.4055226e+03 1.5805943e+03 - 4.9189710e+03 -1.3240920e+03 1.5640814e+03 - 4.9575862e+03 -1.2458190e+03 1.5482550e+03 - 4.9929390e+03 -1.1704684e+03 1.5331551e+03 - 5.0252845e+03 -1.0978116e+03 1.5188097e+03 - 5.0548556e+03 -1.0276295e+03 1.5052365e+03 - 5.0818635e+03 -9.5971375e+02 1.4924459e+03 - 5.1064986e+03 -8.9386750e+02 1.4804418e+03 - 5.1289320e+03 -8.2990550e+02 1.4692236e+03 - 5.1493170e+03 -7.6765397e+02 1.4587874e+03 - 5.1677901e+03 -7.0695014e+02 1.4491266e+03 - 5.1844727e+03 -6.4764159e+02 1.4402330e+03 - 5.1994723e+03 -5.8958552e+02 1.4320974e+03 - 5.2128837e+03 -5.3264797e+02 1.4247100e+03 - 5.2247898e+03 -4.7670298e+02 1.4180611e+03 - 5.2352633e+03 -4.2163173e+02 1.4121410e+03 - 5.2443666e+03 -3.6732177e+02 1.4069407e+03 - 5.2521535e+03 -3.1366622e+02 1.4024518e+03 - 5.2586689e+03 -2.6056296e+02 1.3986668e+03 - 5.2639504e+03 -2.0791391e+02 1.3955791e+03 - 5.2680279e+03 -1.5562431e+02 1.3931834e+03 - 5.2709242e+03 -1.0360203e+02 1.3914753e+03 - 5.2726556e+03 -5.1756892e+01 1.3904517e+03 - 5.2732317e+03 0.0000000e+00 1.3901107e+03 - 5.2968961e+03 4.8134273e-09 1.2646890e+03 - 5.2963330e+03 5.1536827e+01 1.2650086e+03 - 5.2946404e+03 1.0316167e+02 1.2659681e+03 - 5.2918087e+03 1.5496322e+02 1.2675695e+03 - 5.2878221e+03 2.0703147e+02 1.2698159e+03 - 5.2826577e+03 2.5945842e+02 1.2727117e+03 - 5.2762859e+03 3.1233877e+02 1.2762625e+03 - 5.2686696e+03 3.6577061e+02 1.2804750e+03 - 5.2597639e+03 4.1985622e+02 1.2853571e+03 - 5.2495155e+03 4.7470276e+02 1.2909174e+03 - 5.2378622e+03 5.3042318e+02 1.2971656e+03 - 5.2247316e+03 5.8713698e+02 1.3041118e+03 - 5.2100408e+03 6.4497111e+02 1.3117665e+03 - 5.1936951e+03 7.0406089e+02 1.3201406e+03 - 5.1755867e+03 7.6455086e+02 1.3292444e+03 - 5.1555936e+03 8.2659571e+02 1.3390877e+03 - 5.1335784e+03 8.9036113e+02 1.3496787e+03 - 5.1093864e+03 9.5602454e+02 1.3610237e+03 - 5.0828443e+03 1.0237757e+03 1.3731259e+03 - 5.0537584e+03 1.0938170e+03 1.3859846e+03 - 5.0219135e+03 1.1663637e+03 1.3995932e+03 - 4.9870713e+03 1.2416431e+03 1.4139382e+03 - 4.9489692e+03 1.3198934e+03 1.4289969e+03 - 4.9073202e+03 1.4013618e+03 1.4447349e+03 - 4.8618131e+03 1.4863005e+03 1.4611040e+03 - 4.8121143e+03 1.5749623e+03 1.4780387e+03 - 4.7578708e+03 1.6675931e+03 1.4954529e+03 - 4.6987157e+03 1.7644228e+03 1.5132370e+03 - 4.6342766e+03 1.8656532e+03 1.5312541e+03 - 4.5641872e+03 1.9714432e+03 1.5493373e+03 - 4.4881023e+03 2.0818905e+03 1.5672874e+03 - 4.4057182e+03 2.1970121e+03 1.5848720e+03 - 4.3167953e+03 2.3167220e+03 1.6018274e+03 - 4.2211854e+03 2.4408099e+03 1.6178617e+03 - 4.1188596e+03 2.5689214e+03 1.6326624e+03 - 4.0099351e+03 2.7005447e+03 1.6459074e+03 - 3.8946985e+03 2.8350049e+03 1.6572787e+03 - 3.7736199e+03 2.9714700e+03 1.6664799e+03 - 3.6473554e+03 3.1089712e+03 1.6732543e+03 - 3.5167351e+03 3.2464361e+03 1.6774033e+03 - 3.3827351e+03 3.3827351e+03 1.6788007e+03 - 3.2464361e+03 3.5167351e+03 1.6774033e+03 - 3.1089712e+03 3.6473554e+03 1.6732543e+03 - 2.9714700e+03 3.7736199e+03 1.6664799e+03 - 2.8350049e+03 3.8946985e+03 1.6572787e+03 - 2.7005447e+03 4.0099351e+03 1.6459074e+03 - 2.5689214e+03 4.1188596e+03 1.6326624e+03 - 2.4408099e+03 4.2211854e+03 1.6178617e+03 - 2.3167220e+03 4.3167953e+03 1.6018274e+03 - 2.1970121e+03 4.4057182e+03 1.5848720e+03 - 2.0818905e+03 4.4881023e+03 1.5672874e+03 - 1.9714432e+03 4.5641872e+03 1.5493373e+03 - 1.8656532e+03 4.6342766e+03 1.5312541e+03 - 1.7644228e+03 4.6987157e+03 1.5132370e+03 - 1.6675931e+03 4.7578708e+03 1.4954529e+03 - 1.5749623e+03 4.8121143e+03 1.4780387e+03 - 1.4863005e+03 4.8618131e+03 1.4611040e+03 - 1.4013618e+03 4.9073202e+03 1.4447349e+03 - 1.3198934e+03 4.9489692e+03 1.4289969e+03 - 1.2416431e+03 4.9870713e+03 1.4139382e+03 - 1.1663637e+03 5.0219135e+03 1.3995932e+03 - 1.0938170e+03 5.0537584e+03 1.3859846e+03 - 1.0237757e+03 5.0828443e+03 1.3731259e+03 - 9.5602454e+02 5.1093864e+03 1.3610237e+03 - 8.9036113e+02 5.1335784e+03 1.3496787e+03 - 8.2659571e+02 5.1555936e+03 1.3390877e+03 - 7.6455086e+02 5.1755867e+03 1.3292444e+03 - 7.0406089e+02 5.1936951e+03 1.3201406e+03 - 6.4497111e+02 5.2100408e+03 1.3117665e+03 - 5.8713698e+02 5.2247316e+03 1.3041118e+03 - 5.3042318e+02 5.2378622e+03 1.2971656e+03 - 4.7470276e+02 5.2495155e+03 1.2909174e+03 - 4.1985622e+02 5.2597639e+03 1.2853571e+03 - 3.6577061e+02 5.2686696e+03 1.2804750e+03 - 3.1233877e+02 5.2762859e+03 1.2762625e+03 - 2.5945842e+02 5.2826577e+03 1.2727117e+03 - 2.0703147e+02 5.2878221e+03 1.2698159e+03 - 1.5496322e+02 5.2918087e+03 1.2675695e+03 - 1.0316167e+02 5.2946404e+03 1.2659681e+03 - 5.1536827e+01 5.2963330e+03 1.2650086e+03 - 4.8134273e-09 5.2968961e+03 1.2646890e+03 - -5.1536827e+01 5.2963330e+03 1.2650086e+03 - -1.0316167e+02 5.2946404e+03 1.2659681e+03 - -1.5496322e+02 5.2918087e+03 1.2675695e+03 - -2.0703147e+02 5.2878221e+03 1.2698159e+03 - -2.5945842e+02 5.2826577e+03 1.2727117e+03 - -3.1233877e+02 5.2762859e+03 1.2762625e+03 - -3.6577061e+02 5.2686696e+03 1.2804750e+03 - -4.1985622e+02 5.2597639e+03 1.2853571e+03 - -4.7470276e+02 5.2495155e+03 1.2909174e+03 - -5.3042318e+02 5.2378622e+03 1.2971656e+03 - -5.8713698e+02 5.2247316e+03 1.3041118e+03 - -6.4497111e+02 5.2100408e+03 1.3117665e+03 - -7.0406089e+02 5.1936951e+03 1.3201406e+03 - -7.6455086e+02 5.1755867e+03 1.3292444e+03 - -8.2659571e+02 5.1555936e+03 1.3390877e+03 - -8.9036113e+02 5.1335784e+03 1.3496787e+03 - -9.5602454e+02 5.1093864e+03 1.3610237e+03 - -1.0237757e+03 5.0828443e+03 1.3731259e+03 - -1.0938170e+03 5.0537584e+03 1.3859846e+03 - -1.1663637e+03 5.0219135e+03 1.3995932e+03 - -1.2416431e+03 4.9870713e+03 1.4139382e+03 - -1.3198934e+03 4.9489692e+03 1.4289969e+03 - -1.4013618e+03 4.9073202e+03 1.4447349e+03 - -1.4863005e+03 4.8618131e+03 1.4611040e+03 - -1.5749623e+03 4.8121143e+03 1.4780387e+03 - -1.6675931e+03 4.7578708e+03 1.4954529e+03 - -1.7644228e+03 4.6987157e+03 1.5132370e+03 - -1.8656532e+03 4.6342766e+03 1.5312541e+03 - -1.9714432e+03 4.5641872e+03 1.5493373e+03 - -2.0818905e+03 4.4881023e+03 1.5672874e+03 - -2.1970121e+03 4.4057182e+03 1.5848720e+03 - -2.3167220e+03 4.3167953e+03 1.6018274e+03 - -2.4408099e+03 4.2211854e+03 1.6178617e+03 - -2.5689214e+03 4.1188596e+03 1.6326624e+03 - -2.7005447e+03 4.0099351e+03 1.6459074e+03 - -2.8350049e+03 3.8946985e+03 1.6572787e+03 - -2.9714700e+03 3.7736199e+03 1.6664799e+03 - -3.1089712e+03 3.6473554e+03 1.6732543e+03 - -3.2464361e+03 3.5167351e+03 1.6774033e+03 - -3.3827351e+03 3.3827351e+03 1.6788007e+03 - -3.5167351e+03 3.2464361e+03 1.6774033e+03 - -3.6473554e+03 3.1089712e+03 1.6732543e+03 - -3.7736199e+03 2.9714700e+03 1.6664799e+03 - -3.8946985e+03 2.8350049e+03 1.6572787e+03 - -4.0099351e+03 2.7005447e+03 1.6459074e+03 - -4.1188596e+03 2.5689214e+03 1.6326624e+03 - -4.2211854e+03 2.4408099e+03 1.6178617e+03 - -4.3167953e+03 2.3167220e+03 1.6018274e+03 - -4.4057182e+03 2.1970121e+03 1.5848720e+03 - -4.4881023e+03 2.0818905e+03 1.5672874e+03 - -4.5641872e+03 1.9714432e+03 1.5493373e+03 - -4.6342766e+03 1.8656532e+03 1.5312541e+03 - -4.6987157e+03 1.7644228e+03 1.5132370e+03 - -4.7578708e+03 1.6675931e+03 1.4954529e+03 - -4.8121143e+03 1.5749623e+03 1.4780387e+03 - -4.8618131e+03 1.4863005e+03 1.4611040e+03 - -4.9073202e+03 1.4013618e+03 1.4447349e+03 - -4.9489692e+03 1.3198934e+03 1.4289969e+03 - -4.9870713e+03 1.2416431e+03 1.4139382e+03 - -5.0219135e+03 1.1663637e+03 1.3995932e+03 - -5.0537584e+03 1.0938170e+03 1.3859846e+03 - -5.0828443e+03 1.0237757e+03 1.3731259e+03 - -5.1093864e+03 9.5602454e+02 1.3610237e+03 - -5.1335784e+03 8.9036113e+02 1.3496787e+03 - -5.1555936e+03 8.2659571e+02 1.3390877e+03 - -5.1755867e+03 7.6455086e+02 1.3292444e+03 - -5.1936951e+03 7.0406089e+02 1.3201406e+03 - -5.2100408e+03 6.4497111e+02 1.3117665e+03 - -5.2247316e+03 5.8713698e+02 1.3041118e+03 - -5.2378622e+03 5.3042318e+02 1.2971656e+03 - -5.2495155e+03 4.7470276e+02 1.2909174e+03 - -5.2597639e+03 4.1985622e+02 1.2853571e+03 - -5.2686696e+03 3.6577061e+02 1.2804750e+03 - -5.2762859e+03 3.1233877e+02 1.2762625e+03 - -5.2826577e+03 2.5945842e+02 1.2727117e+03 - -5.2878221e+03 2.0703147e+02 1.2698159e+03 - -5.2918087e+03 1.5496322e+02 1.2675695e+03 - -5.2946404e+03 1.0316167e+02 1.2659681e+03 - -5.2963330e+03 5.1536827e+01 1.2650086e+03 - -5.2968961e+03 0.0000000e+00 1.2646890e+03 - -5.2963330e+03 -5.1536827e+01 1.2650086e+03 - -5.2946404e+03 -1.0316167e+02 1.2659681e+03 - -5.2918087e+03 -1.5496322e+02 1.2675695e+03 - -5.2878221e+03 -2.0703147e+02 1.2698159e+03 - -5.2826577e+03 -2.5945842e+02 1.2727117e+03 - -5.2762859e+03 -3.1233877e+02 1.2762625e+03 - -5.2686696e+03 -3.6577061e+02 1.2804750e+03 - -5.2597639e+03 -4.1985622e+02 1.2853571e+03 - -5.2495155e+03 -4.7470276e+02 1.2909174e+03 - -5.2378622e+03 -5.3042318e+02 1.2971656e+03 - -5.2247316e+03 -5.8713698e+02 1.3041118e+03 - -5.2100408e+03 -6.4497111e+02 1.3117665e+03 - -5.1936951e+03 -7.0406089e+02 1.3201406e+03 - -5.1755867e+03 -7.6455086e+02 1.3292444e+03 - -5.1555936e+03 -8.2659571e+02 1.3390877e+03 - -5.1335784e+03 -8.9036113e+02 1.3496787e+03 - -5.1093864e+03 -9.5602454e+02 1.3610237e+03 - -5.0828443e+03 -1.0237757e+03 1.3731259e+03 - -5.0537584e+03 -1.0938170e+03 1.3859846e+03 - -5.0219135e+03 -1.1663637e+03 1.3995932e+03 - -4.9870713e+03 -1.2416431e+03 1.4139382e+03 - -4.9489692e+03 -1.3198934e+03 1.4289969e+03 - -4.9073202e+03 -1.4013618e+03 1.4447349e+03 - -4.8618131e+03 -1.4863005e+03 1.4611040e+03 - -4.8121143e+03 -1.5749623e+03 1.4780387e+03 - -4.7578708e+03 -1.6675931e+03 1.4954529e+03 - -4.6987157e+03 -1.7644228e+03 1.5132370e+03 - -4.6342766e+03 -1.8656532e+03 1.5312541e+03 - -4.5641872e+03 -1.9714432e+03 1.5493373e+03 - -4.4881023e+03 -2.0818905e+03 1.5672874e+03 - -4.4057182e+03 -2.1970121e+03 1.5848720e+03 - -4.3167953e+03 -2.3167220e+03 1.6018274e+03 - -4.2211854e+03 -2.4408099e+03 1.6178617e+03 - -4.1188596e+03 -2.5689214e+03 1.6326624e+03 - -4.0099351e+03 -2.7005447e+03 1.6459074e+03 - -3.8946985e+03 -2.8350049e+03 1.6572787e+03 - -3.7736199e+03 -2.9714700e+03 1.6664799e+03 - -3.6473554e+03 -3.1089712e+03 1.6732543e+03 - -3.5167351e+03 -3.2464361e+03 1.6774033e+03 - -3.3827351e+03 -3.3827351e+03 1.6788007e+03 - -3.2464361e+03 -3.5167351e+03 1.6774033e+03 - -3.1089712e+03 -3.6473554e+03 1.6732543e+03 - -2.9714700e+03 -3.7736199e+03 1.6664799e+03 - -2.8350049e+03 -3.8946985e+03 1.6572787e+03 - -2.7005447e+03 -4.0099351e+03 1.6459074e+03 - -2.5689214e+03 -4.1188596e+03 1.6326624e+03 - -2.4408099e+03 -4.2211854e+03 1.6178617e+03 - -2.3167220e+03 -4.3167953e+03 1.6018274e+03 - -2.1970121e+03 -4.4057182e+03 1.5848720e+03 - -2.0818905e+03 -4.4881023e+03 1.5672874e+03 - -1.9714432e+03 -4.5641872e+03 1.5493373e+03 - -1.8656532e+03 -4.6342766e+03 1.5312541e+03 - -1.7644228e+03 -4.6987157e+03 1.5132370e+03 - -1.6675931e+03 -4.7578708e+03 1.4954529e+03 - -1.5749623e+03 -4.8121143e+03 1.4780387e+03 - -1.4863005e+03 -4.8618131e+03 1.4611040e+03 - -1.4013618e+03 -4.9073202e+03 1.4447349e+03 - -1.3198934e+03 -4.9489692e+03 1.4289969e+03 - -1.2416431e+03 -4.9870713e+03 1.4139382e+03 - -1.1663637e+03 -5.0219135e+03 1.3995932e+03 - -1.0938170e+03 -5.0537584e+03 1.3859846e+03 - -1.0237757e+03 -5.0828443e+03 1.3731259e+03 - -9.5602454e+02 -5.1093864e+03 1.3610237e+03 - -8.9036113e+02 -5.1335784e+03 1.3496787e+03 - -8.2659571e+02 -5.1555936e+03 1.3390877e+03 - -7.6455086e+02 -5.1755867e+03 1.3292444e+03 - -7.0406089e+02 -5.1936951e+03 1.3201406e+03 - -6.4497111e+02 -5.2100408e+03 1.3117665e+03 - -5.8713698e+02 -5.2247316e+03 1.3041118e+03 - -5.3042318e+02 -5.2378622e+03 1.2971656e+03 - -4.7470276e+02 -5.2495155e+03 1.2909174e+03 - -4.1985622e+02 -5.2597639e+03 1.2853571e+03 - -3.6577061e+02 -5.2686696e+03 1.2804750e+03 - -3.1233877e+02 -5.2762859e+03 1.2762625e+03 - -2.5945842e+02 -5.2826577e+03 1.2727117e+03 - -2.0703147e+02 -5.2878221e+03 1.2698159e+03 - -1.5496322e+02 -5.2918087e+03 1.2675695e+03 - -1.0316167e+02 -5.2946404e+03 1.2659681e+03 - -5.1536827e+01 -5.2963330e+03 1.2650086e+03 - 0.0000000e+00 -5.2968961e+03 1.2646890e+03 - 5.1536827e+01 -5.2963330e+03 1.2650086e+03 - 1.0316167e+02 -5.2946404e+03 1.2659681e+03 - 1.5496322e+02 -5.2918087e+03 1.2675695e+03 - 2.0703147e+02 -5.2878221e+03 1.2698159e+03 - 2.5945842e+02 -5.2826577e+03 1.2727117e+03 - 3.1233877e+02 -5.2762859e+03 1.2762625e+03 - 3.6577061e+02 -5.2686696e+03 1.2804750e+03 - 4.1985622e+02 -5.2597639e+03 1.2853571e+03 - 4.7470276e+02 -5.2495155e+03 1.2909174e+03 - 5.3042318e+02 -5.2378622e+03 1.2971656e+03 - 5.8713698e+02 -5.2247316e+03 1.3041118e+03 - 6.4497111e+02 -5.2100408e+03 1.3117665e+03 - 7.0406089e+02 -5.1936951e+03 1.3201406e+03 - 7.6455086e+02 -5.1755867e+03 1.3292444e+03 - 8.2659571e+02 -5.1555936e+03 1.3390877e+03 - 8.9036113e+02 -5.1335784e+03 1.3496787e+03 - 9.5602454e+02 -5.1093864e+03 1.3610237e+03 - 1.0237757e+03 -5.0828443e+03 1.3731259e+03 - 1.0938170e+03 -5.0537584e+03 1.3859846e+03 - 1.1663637e+03 -5.0219135e+03 1.3995932e+03 - 1.2416431e+03 -4.9870713e+03 1.4139382e+03 - 1.3198934e+03 -4.9489692e+03 1.4289969e+03 - 1.4013618e+03 -4.9073202e+03 1.4447349e+03 - 1.4863005e+03 -4.8618131e+03 1.4611040e+03 - 1.5749623e+03 -4.8121143e+03 1.4780387e+03 - 1.6675931e+03 -4.7578708e+03 1.4954529e+03 - 1.7644228e+03 -4.6987157e+03 1.5132370e+03 - 1.8656532e+03 -4.6342766e+03 1.5312541e+03 - 1.9714432e+03 -4.5641872e+03 1.5493373e+03 - 2.0818905e+03 -4.4881023e+03 1.5672874e+03 - 2.1970121e+03 -4.4057182e+03 1.5848720e+03 - 2.3167220e+03 -4.3167953e+03 1.6018274e+03 - 2.4408099e+03 -4.2211854e+03 1.6178617e+03 - 2.5689214e+03 -4.1188596e+03 1.6326624e+03 - 2.7005447e+03 -4.0099351e+03 1.6459074e+03 - 2.8350049e+03 -3.8946985e+03 1.6572787e+03 - 2.9714700e+03 -3.7736199e+03 1.6664799e+03 - 3.1089712e+03 -3.6473554e+03 1.6732543e+03 - 3.2464361e+03 -3.5167351e+03 1.6774033e+03 - 3.3827351e+03 -3.3827351e+03 1.6788007e+03 - 3.5167351e+03 -3.2464361e+03 1.6774033e+03 - 3.6473554e+03 -3.1089712e+03 1.6732543e+03 - 3.7736199e+03 -2.9714700e+03 1.6664799e+03 - 3.8946985e+03 -2.8350049e+03 1.6572787e+03 - 4.0099351e+03 -2.7005447e+03 1.6459074e+03 - 4.1188596e+03 -2.5689214e+03 1.6326624e+03 - 4.2211854e+03 -2.4408099e+03 1.6178617e+03 - 4.3167953e+03 -2.3167220e+03 1.6018274e+03 - 4.4057182e+03 -2.1970121e+03 1.5848720e+03 - 4.4881023e+03 -2.0818905e+03 1.5672874e+03 - 4.5641872e+03 -1.9714432e+03 1.5493373e+03 - 4.6342766e+03 -1.8656532e+03 1.5312541e+03 - 4.6987157e+03 -1.7644228e+03 1.5132370e+03 - 4.7578708e+03 -1.6675931e+03 1.4954529e+03 - 4.8121143e+03 -1.5749623e+03 1.4780387e+03 - 4.8618131e+03 -1.4863005e+03 1.4611040e+03 - 4.9073202e+03 -1.4013618e+03 1.4447349e+03 - 4.9489692e+03 -1.3198934e+03 1.4289969e+03 - 4.9870713e+03 -1.2416431e+03 1.4139382e+03 - 5.0219135e+03 -1.1663637e+03 1.3995932e+03 - 5.0537584e+03 -1.0938170e+03 1.3859846e+03 - 5.0828443e+03 -1.0237757e+03 1.3731259e+03 - 5.1093864e+03 -9.5602454e+02 1.3610237e+03 - 5.1335784e+03 -8.9036113e+02 1.3496787e+03 - 5.1555936e+03 -8.2659571e+02 1.3390877e+03 - 5.1755867e+03 -7.6455086e+02 1.3292444e+03 - 5.1936951e+03 -7.0406089e+02 1.3201406e+03 - 5.2100408e+03 -6.4497111e+02 1.3117665e+03 - 5.2247316e+03 -5.8713698e+02 1.3041118e+03 - 5.2378622e+03 -5.3042318e+02 1.2971656e+03 - 5.2495155e+03 -4.7470276e+02 1.2909174e+03 - 5.2597639e+03 -4.1985622e+02 1.2853571e+03 - 5.2686696e+03 -3.6577061e+02 1.2804750e+03 - 5.2762859e+03 -3.1233877e+02 1.2762625e+03 - 5.2826577e+03 -2.5945842e+02 1.2727117e+03 - 5.2878221e+03 -2.0703147e+02 1.2698159e+03 - 5.2918087e+03 -1.5496322e+02 1.2675695e+03 - 5.2946404e+03 -1.0316167e+02 1.2659681e+03 - 5.2963330e+03 -5.1536827e+01 1.2650086e+03 - 5.2968961e+03 4.8134273e-09 1.2646890e+03 - 5.3186683e+03 4.8134273e-09 1.1354164e+03 - 5.3181175e+03 5.1331748e+01 1.1357114e+03 - 5.3164621e+03 1.0275126e+02 1.1365968e+03 - 5.3136926e+03 1.5434697e+02 1.1380747e+03 - 5.3097930e+03 2.0620866e+02 1.1401482e+03 - 5.3047411e+03 2.5842816e+02 1.1428217e+03 - 5.2985073e+03 3.1110005e+02 1.1461007e+03 - 5.2910549e+03 3.6432241e+02 1.1499921e+03 - 5.2823394e+03 4.1819755e+02 1.1545037e+03 - 5.2723080e+03 4.7283287e+02 1.1596442e+03 - 5.2608985e+03 5.2834168e+02 1.1654235e+03 - 5.2480392e+03 5.8484406e+02 1.1718520e+03 - 5.2336474e+03 6.4246781e+02 1.1789407e+03 - 5.2176284e+03 7.0134940e+02 1.1867009e+03 - 5.1998744e+03 7.6163492e+02 1.1951438e+03 - 5.1802633e+03 8.2348110e+02 1.2042800e+03 - 5.1586569e+03 8.8705623e+02 1.2141194e+03 - 5.1348992e+03 9.5254104e+02 1.2246698e+03 - 5.1088153e+03 1.0201294e+03 1.2359368e+03 - 5.0802091e+03 1.0900290e+03 1.2479222e+03 - 5.0488615e+03 1.1624613e+03 1.2606229e+03 - 5.0145294e+03 1.2376613e+03 1.2740293e+03 - 4.9769438e+03 1.3158766e+03 1.2881237e+03 - 4.9358091e+03 1.3973652e+03 1.3028775e+03 - 4.8908035e+03 1.4823925e+03 1.3182489e+03 - 4.8415798e+03 1.5712261e+03 1.3341802e+03 - 4.7877686e+03 1.6641291e+03 1.3505940e+03 - 4.7289832e+03 1.7613503e+03 1.3673901e+03 - 4.6648280e+03 1.8631117e+03 1.3844419e+03 - 4.5949098e+03 1.9695933e+03 1.4015933e+03 - 4.5188543e+03 2.0809138e+03 1.4186562e+03 - 4.4363262e+03 2.1971091e+03 1.4354093e+03 - 4.3470544e+03 2.3181083e+03 1.4515989e+03 - 4.2508607e+03 2.4437097e+03 1.4669424e+03 - 4.1476909e+03 2.5735591e+03 1.4811350e+03 - 4.0376452e+03 2.7071335e+03 1.4938603e+03 - 3.9210040e+03 2.8437337e+03 1.5048042e+03 - 3.7982452e+03 2.9824899e+03 1.5136724e+03 - 3.6700484e+03 3.1223822e+03 1.5202093e+03 - 3.5372828e+03 3.2622773e+03 1.5242159e+03 - 3.4009779e+03 3.4009779e+03 1.5255659e+03 - 3.2622773e+03 3.5372828e+03 1.5242159e+03 - 3.1223822e+03 3.6700484e+03 1.5202093e+03 - 2.9824899e+03 3.7982452e+03 1.5136724e+03 - 2.8437337e+03 3.9210040e+03 1.5048042e+03 - 2.7071335e+03 4.0376452e+03 1.4938603e+03 - 2.5735591e+03 4.1476909e+03 1.4811350e+03 - 2.4437097e+03 4.2508607e+03 1.4669424e+03 - 2.3181083e+03 4.3470544e+03 1.4515989e+03 - 2.1971091e+03 4.4363262e+03 1.4354093e+03 - 2.0809138e+03 4.5188543e+03 1.4186562e+03 - 1.9695933e+03 4.5949098e+03 1.4015933e+03 - 1.8631117e+03 4.6648280e+03 1.3844419e+03 - 1.7613503e+03 4.7289832e+03 1.3673901e+03 - 1.6641291e+03 4.7877686e+03 1.3505940e+03 - 1.5712261e+03 4.8415798e+03 1.3341802e+03 - 1.4823925e+03 4.8908035e+03 1.3182489e+03 - 1.3973652e+03 4.9358091e+03 1.3028775e+03 - 1.3158766e+03 4.9769438e+03 1.2881237e+03 - 1.2376613e+03 5.0145294e+03 1.2740293e+03 - 1.1624613e+03 5.0488615e+03 1.2606229e+03 - 1.0900290e+03 5.0802091e+03 1.2479222e+03 - 1.0201294e+03 5.1088153e+03 1.2359368e+03 - 9.5254104e+02 5.1348992e+03 1.2246698e+03 - 8.8705623e+02 5.1586569e+03 1.2141194e+03 - 8.2348110e+02 5.1802633e+03 1.2042800e+03 - 7.6163492e+02 5.1998744e+03 1.1951438e+03 - 7.0134940e+02 5.2176284e+03 1.1867009e+03 - 6.4246781e+02 5.2336474e+03 1.1789407e+03 - 5.8484406e+02 5.2480392e+03 1.1718520e+03 - 5.2834168e+02 5.2608985e+03 1.1654235e+03 - 4.7283287e+02 5.2723080e+03 1.1596442e+03 - 4.1819755e+02 5.2823394e+03 1.1545037e+03 - 3.6432241e+02 5.2910549e+03 1.1499921e+03 - 3.1110005e+02 5.2985073e+03 1.1461007e+03 - 2.5842816e+02 5.3047411e+03 1.1428217e+03 - 2.0620866e+02 5.3097930e+03 1.1401482e+03 - 1.5434697e+02 5.3136926e+03 1.1380747e+03 - 1.0275126e+02 5.3164621e+03 1.1365968e+03 - 5.1331748e+01 5.3181175e+03 1.1357114e+03 - 9.6268545e-09 5.3186683e+03 1.1354164e+03 - -5.1331748e+01 5.3181175e+03 1.1357114e+03 - -1.0275126e+02 5.3164621e+03 1.1365968e+03 - -1.5434697e+02 5.3136926e+03 1.1380747e+03 - -2.0620866e+02 5.3097930e+03 1.1401482e+03 - -2.5842816e+02 5.3047411e+03 1.1428217e+03 - -3.1110005e+02 5.2985073e+03 1.1461007e+03 - -3.6432241e+02 5.2910549e+03 1.1499921e+03 - -4.1819755e+02 5.2823394e+03 1.1545037e+03 - -4.7283287e+02 5.2723080e+03 1.1596442e+03 - -5.2834168e+02 5.2608985e+03 1.1654235e+03 - -5.8484406e+02 5.2480392e+03 1.1718520e+03 - -6.4246781e+02 5.2336474e+03 1.1789407e+03 - -7.0134940e+02 5.2176284e+03 1.1867009e+03 - -7.6163492e+02 5.1998744e+03 1.1951438e+03 - -8.2348110e+02 5.1802633e+03 1.2042800e+03 - -8.8705623e+02 5.1586569e+03 1.2141194e+03 - -9.5254104e+02 5.1348992e+03 1.2246698e+03 - -1.0201294e+03 5.1088153e+03 1.2359368e+03 - -1.0900290e+03 5.0802091e+03 1.2479222e+03 - -1.1624613e+03 5.0488615e+03 1.2606229e+03 - -1.2376613e+03 5.0145294e+03 1.2740293e+03 - -1.3158766e+03 4.9769438e+03 1.2881237e+03 - -1.3973652e+03 4.9358091e+03 1.3028775e+03 - -1.4823925e+03 4.8908035e+03 1.3182489e+03 - -1.5712261e+03 4.8415798e+03 1.3341802e+03 - -1.6641291e+03 4.7877686e+03 1.3505940e+03 - -1.7613503e+03 4.7289832e+03 1.3673901e+03 - -1.8631117e+03 4.6648280e+03 1.3844419e+03 - -1.9695933e+03 4.5949098e+03 1.4015933e+03 - -2.0809138e+03 4.5188543e+03 1.4186562e+03 - -2.1971091e+03 4.4363262e+03 1.4354093e+03 - -2.3181083e+03 4.3470544e+03 1.4515989e+03 - -2.4437097e+03 4.2508607e+03 1.4669424e+03 - -2.5735591e+03 4.1476909e+03 1.4811350e+03 - -2.7071335e+03 4.0376452e+03 1.4938603e+03 - -2.8437337e+03 3.9210040e+03 1.5048042e+03 - -2.9824899e+03 3.7982452e+03 1.5136724e+03 - -3.1223822e+03 3.6700484e+03 1.5202093e+03 - -3.2622773e+03 3.5372828e+03 1.5242159e+03 - -3.4009779e+03 3.4009779e+03 1.5255659e+03 - -3.5372828e+03 3.2622773e+03 1.5242159e+03 - -3.6700484e+03 3.1223822e+03 1.5202093e+03 - -3.7982452e+03 2.9824899e+03 1.5136724e+03 - -3.9210040e+03 2.8437337e+03 1.5048042e+03 - -4.0376452e+03 2.7071335e+03 1.4938603e+03 - -4.1476909e+03 2.5735591e+03 1.4811350e+03 - -4.2508607e+03 2.4437097e+03 1.4669424e+03 - -4.3470544e+03 2.3181083e+03 1.4515989e+03 - -4.4363262e+03 2.1971091e+03 1.4354093e+03 - -4.5188543e+03 2.0809138e+03 1.4186562e+03 - -4.5949098e+03 1.9695933e+03 1.4015933e+03 - -4.6648280e+03 1.8631117e+03 1.3844419e+03 - -4.7289832e+03 1.7613503e+03 1.3673901e+03 - -4.7877686e+03 1.6641291e+03 1.3505940e+03 - -4.8415798e+03 1.5712261e+03 1.3341802e+03 - -4.8908035e+03 1.4823925e+03 1.3182489e+03 - -4.9358091e+03 1.3973652e+03 1.3028775e+03 - -4.9769438e+03 1.3158766e+03 1.2881237e+03 - -5.0145294e+03 1.2376613e+03 1.2740293e+03 - -5.0488615e+03 1.1624613e+03 1.2606229e+03 - -5.0802091e+03 1.0900290e+03 1.2479222e+03 - -5.1088153e+03 1.0201294e+03 1.2359368e+03 - -5.1348992e+03 9.5254104e+02 1.2246698e+03 - -5.1586569e+03 8.8705623e+02 1.2141194e+03 - -5.1802633e+03 8.2348110e+02 1.2042800e+03 - -5.1998744e+03 7.6163492e+02 1.1951438e+03 - -5.2176284e+03 7.0134940e+02 1.1867009e+03 - -5.2336474e+03 6.4246781e+02 1.1789407e+03 - -5.2480392e+03 5.8484406e+02 1.1718520e+03 - -5.2608985e+03 5.2834168e+02 1.1654235e+03 - -5.2723080e+03 4.7283287e+02 1.1596442e+03 - -5.2823394e+03 4.1819755e+02 1.1545037e+03 - -5.2910549e+03 3.6432241e+02 1.1499921e+03 - -5.2985073e+03 3.1110005e+02 1.1461007e+03 - -5.3047411e+03 2.5842816e+02 1.1428217e+03 - -5.3097930e+03 2.0620866e+02 1.1401482e+03 - -5.3136926e+03 1.5434697e+02 1.1380747e+03 - -5.3164621e+03 1.0275126e+02 1.1365968e+03 - -5.3181175e+03 5.1331748e+01 1.1357114e+03 - -5.3186683e+03 -4.8134273e-09 1.1354164e+03 - -5.3181175e+03 -5.1331748e+01 1.1357114e+03 - -5.3164621e+03 -1.0275126e+02 1.1365968e+03 - -5.3136926e+03 -1.5434697e+02 1.1380747e+03 - -5.3097930e+03 -2.0620866e+02 1.1401482e+03 - -5.3047411e+03 -2.5842816e+02 1.1428217e+03 - -5.2985073e+03 -3.1110005e+02 1.1461007e+03 - -5.2910549e+03 -3.6432241e+02 1.1499921e+03 - -5.2823394e+03 -4.1819755e+02 1.1545037e+03 - -5.2723080e+03 -4.7283287e+02 1.1596442e+03 - -5.2608985e+03 -5.2834168e+02 1.1654235e+03 - -5.2480392e+03 -5.8484406e+02 1.1718520e+03 - -5.2336474e+03 -6.4246781e+02 1.1789407e+03 - -5.2176284e+03 -7.0134940e+02 1.1867009e+03 - -5.1998744e+03 -7.6163492e+02 1.1951438e+03 - -5.1802633e+03 -8.2348110e+02 1.2042800e+03 - -5.1586569e+03 -8.8705623e+02 1.2141194e+03 - -5.1348992e+03 -9.5254104e+02 1.2246698e+03 - -5.1088153e+03 -1.0201294e+03 1.2359368e+03 - -5.0802091e+03 -1.0900290e+03 1.2479222e+03 - -5.0488615e+03 -1.1624613e+03 1.2606229e+03 - -5.0145294e+03 -1.2376613e+03 1.2740293e+03 - -4.9769438e+03 -1.3158766e+03 1.2881237e+03 - -4.9358091e+03 -1.3973652e+03 1.3028775e+03 - -4.8908035e+03 -1.4823925e+03 1.3182489e+03 - -4.8415798e+03 -1.5712261e+03 1.3341802e+03 - -4.7877686e+03 -1.6641291e+03 1.3505940e+03 - -4.7289832e+03 -1.7613503e+03 1.3673901e+03 - -4.6648280e+03 -1.8631117e+03 1.3844419e+03 - -4.5949098e+03 -1.9695933e+03 1.4015933e+03 - -4.5188543e+03 -2.0809138e+03 1.4186562e+03 - -4.4363262e+03 -2.1971091e+03 1.4354093e+03 - -4.3470544e+03 -2.3181083e+03 1.4515989e+03 - -4.2508607e+03 -2.4437097e+03 1.4669424e+03 - -4.1476909e+03 -2.5735591e+03 1.4811350e+03 - -4.0376452e+03 -2.7071335e+03 1.4938603e+03 - -3.9210040e+03 -2.8437337e+03 1.5048042e+03 - -3.7982452e+03 -2.9824899e+03 1.5136724e+03 - -3.6700484e+03 -3.1223822e+03 1.5202093e+03 - -3.5372828e+03 -3.2622773e+03 1.5242159e+03 - -3.4009779e+03 -3.4009779e+03 1.5255659e+03 - -3.2622773e+03 -3.5372828e+03 1.5242159e+03 - -3.1223822e+03 -3.6700484e+03 1.5202093e+03 - -2.9824899e+03 -3.7982452e+03 1.5136724e+03 - -2.8437337e+03 -3.9210040e+03 1.5048042e+03 - -2.7071335e+03 -4.0376452e+03 1.4938603e+03 - -2.5735591e+03 -4.1476909e+03 1.4811350e+03 - -2.4437097e+03 -4.2508607e+03 1.4669424e+03 - -2.3181083e+03 -4.3470544e+03 1.4515989e+03 - -2.1971091e+03 -4.4363262e+03 1.4354093e+03 - -2.0809138e+03 -4.5188543e+03 1.4186562e+03 - -1.9695933e+03 -4.5949098e+03 1.4015933e+03 - -1.8631117e+03 -4.6648280e+03 1.3844419e+03 - -1.7613503e+03 -4.7289832e+03 1.3673901e+03 - -1.6641291e+03 -4.7877686e+03 1.3505940e+03 - -1.5712261e+03 -4.8415798e+03 1.3341802e+03 - -1.4823925e+03 -4.8908035e+03 1.3182489e+03 - -1.3973652e+03 -4.9358091e+03 1.3028775e+03 - -1.3158766e+03 -4.9769438e+03 1.2881237e+03 - -1.2376613e+03 -5.0145294e+03 1.2740293e+03 - -1.1624613e+03 -5.0488615e+03 1.2606229e+03 - -1.0900290e+03 -5.0802091e+03 1.2479222e+03 - -1.0201294e+03 -5.1088153e+03 1.2359368e+03 - -9.5254104e+02 -5.1348992e+03 1.2246698e+03 - -8.8705623e+02 -5.1586569e+03 1.2141194e+03 - -8.2348110e+02 -5.1802633e+03 1.2042800e+03 - -7.6163492e+02 -5.1998744e+03 1.1951438e+03 - -7.0134940e+02 -5.2176284e+03 1.1867009e+03 - -6.4246781e+02 -5.2336474e+03 1.1789407e+03 - -5.8484406e+02 -5.2480392e+03 1.1718520e+03 - -5.2834168e+02 -5.2608985e+03 1.1654235e+03 - -4.7283287e+02 -5.2723080e+03 1.1596442e+03 - -4.1819755e+02 -5.2823394e+03 1.1545037e+03 - -3.6432241e+02 -5.2910549e+03 1.1499921e+03 - -3.1110005e+02 -5.2985073e+03 1.1461007e+03 - -2.5842816e+02 -5.3047411e+03 1.1428217e+03 - -2.0620866e+02 -5.3097930e+03 1.1401482e+03 - -1.5434697e+02 -5.3136926e+03 1.1380747e+03 - -1.0275126e+02 -5.3164621e+03 1.1365968e+03 - -5.1331748e+01 -5.3181175e+03 1.1357114e+03 - 9.6268545e-09 -5.3186683e+03 1.1354164e+03 - 5.1331748e+01 -5.3181175e+03 1.1357114e+03 - 1.0275126e+02 -5.3164621e+03 1.1365968e+03 - 1.5434697e+02 -5.3136926e+03 1.1380747e+03 - 2.0620866e+02 -5.3097930e+03 1.1401482e+03 - 2.5842816e+02 -5.3047411e+03 1.1428217e+03 - 3.1110005e+02 -5.2985073e+03 1.1461007e+03 - 3.6432241e+02 -5.2910549e+03 1.1499921e+03 - 4.1819755e+02 -5.2823394e+03 1.1545037e+03 - 4.7283287e+02 -5.2723080e+03 1.1596442e+03 - 5.2834168e+02 -5.2608985e+03 1.1654235e+03 - 5.8484406e+02 -5.2480392e+03 1.1718520e+03 - 6.4246781e+02 -5.2336474e+03 1.1789407e+03 - 7.0134940e+02 -5.2176284e+03 1.1867009e+03 - 7.6163492e+02 -5.1998744e+03 1.1951438e+03 - 8.2348110e+02 -5.1802633e+03 1.2042800e+03 - 8.8705623e+02 -5.1586569e+03 1.2141194e+03 - 9.5254104e+02 -5.1348992e+03 1.2246698e+03 - 1.0201294e+03 -5.1088153e+03 1.2359368e+03 - 1.0900290e+03 -5.0802091e+03 1.2479222e+03 - 1.1624613e+03 -5.0488615e+03 1.2606229e+03 - 1.2376613e+03 -5.0145294e+03 1.2740293e+03 - 1.3158766e+03 -4.9769438e+03 1.2881237e+03 - 1.3973652e+03 -4.9358091e+03 1.3028775e+03 - 1.4823925e+03 -4.8908035e+03 1.3182489e+03 - 1.5712261e+03 -4.8415798e+03 1.3341802e+03 - 1.6641291e+03 -4.7877686e+03 1.3505940e+03 - 1.7613503e+03 -4.7289832e+03 1.3673901e+03 - 1.8631117e+03 -4.6648280e+03 1.3844419e+03 - 1.9695933e+03 -4.5949098e+03 1.4015933e+03 - 2.0809138e+03 -4.5188543e+03 1.4186562e+03 - 2.1971091e+03 -4.4363262e+03 1.4354093e+03 - 2.3181083e+03 -4.3470544e+03 1.4515989e+03 - 2.4437097e+03 -4.2508607e+03 1.4669424e+03 - 2.5735591e+03 -4.1476909e+03 1.4811350e+03 - 2.7071335e+03 -4.0376452e+03 1.4938603e+03 - 2.8437337e+03 -3.9210040e+03 1.5048042e+03 - 2.9824899e+03 -3.7982452e+03 1.5136724e+03 - 3.1223822e+03 -3.6700484e+03 1.5202093e+03 - 3.2622773e+03 -3.5372828e+03 1.5242159e+03 - 3.4009779e+03 -3.4009779e+03 1.5255659e+03 - 3.5372828e+03 -3.2622773e+03 1.5242159e+03 - 3.6700484e+03 -3.1223822e+03 1.5202093e+03 - 3.7982452e+03 -2.9824899e+03 1.5136724e+03 - 3.9210040e+03 -2.8437337e+03 1.5048042e+03 - 4.0376452e+03 -2.7071335e+03 1.4938603e+03 - 4.1476909e+03 -2.5735591e+03 1.4811350e+03 - 4.2508607e+03 -2.4437097e+03 1.4669424e+03 - 4.3470544e+03 -2.3181083e+03 1.4515989e+03 - 4.4363262e+03 -2.1971091e+03 1.4354093e+03 - 4.5188543e+03 -2.0809138e+03 1.4186562e+03 - 4.5949098e+03 -1.9695933e+03 1.4015933e+03 - 4.6648280e+03 -1.8631117e+03 1.3844419e+03 - 4.7289832e+03 -1.7613503e+03 1.3673901e+03 - 4.7877686e+03 -1.6641291e+03 1.3505940e+03 - 4.8415798e+03 -1.5712261e+03 1.3341802e+03 - 4.8908035e+03 -1.4823925e+03 1.3182489e+03 - 4.9358091e+03 -1.3973652e+03 1.3028775e+03 - 4.9769438e+03 -1.3158766e+03 1.2881237e+03 - 5.0145294e+03 -1.2376613e+03 1.2740293e+03 - 5.0488615e+03 -1.1624613e+03 1.2606229e+03 - 5.0802091e+03 -1.0900290e+03 1.2479222e+03 - 5.1088153e+03 -1.0201294e+03 1.2359368e+03 - 5.1348992e+03 -9.5254104e+02 1.2246698e+03 - 5.1586569e+03 -8.8705623e+02 1.2141194e+03 - 5.1802633e+03 -8.2348110e+02 1.2042800e+03 - 5.1998744e+03 -7.6163492e+02 1.1951438e+03 - 5.2176284e+03 -7.0134940e+02 1.1867009e+03 - 5.2336474e+03 -6.4246781e+02 1.1789407e+03 - 5.2480392e+03 -5.8484406e+02 1.1718520e+03 - 5.2608985e+03 -5.2834168e+02 1.1654235e+03 - 5.2723080e+03 -4.7283287e+02 1.1596442e+03 - 5.2823394e+03 -4.1819755e+02 1.1545037e+03 - 5.2910549e+03 -3.6432241e+02 1.1499921e+03 - 5.2985073e+03 -3.1110005e+02 1.1461007e+03 - 5.3047411e+03 -2.5842816e+02 1.1428217e+03 - 5.3097930e+03 -2.0620866e+02 1.1401482e+03 - 5.3136926e+03 -1.5434697e+02 1.1380747e+03 - 5.3164621e+03 -1.0275126e+02 1.1365968e+03 - 5.3181175e+03 -5.1331748e+01 1.1357114e+03 - 5.3186683e+03 4.8134273e-09 1.1354164e+03 - 5.3383799e+03 0.0000000e+00 1.0024965e+03 - 5.3378407e+03 5.1143979e+01 1.0027635e+03 - 5.3362202e+03 1.0237545e+02 1.0035650e+03 - 5.3335090e+03 1.5378257e+02 1.0049028e+03 - 5.3296915e+03 2.0545491e+02 1.0067801e+03 - 5.3247453e+03 2.5748407e+02 1.0092010e+03 - 5.3186415e+03 3.0996450e+02 1.0121710e+03 - 5.3113436e+03 3.6299418e+02 1.0156967e+03 - 5.3028075e+03 4.1667546e+02 1.0197857e+03 - 5.2929807e+03 4.7111586e+02 1.0244466e+03 - 5.2818018e+03 5.2642897e+02 1.0296890e+03 - 5.2691993e+03 5.8273533e+02 1.0355234e+03 - 5.2550908e+03 6.4016346e+02 1.0419607e+03 - 5.2393821e+03 6.9885078e+02 1.0490122e+03 - 5.2219654e+03 7.5894477e+02 1.0566896e+03 - 5.2027185e+03 8.2060390e+02 1.0650039e+03 - 5.1815028e+03 8.8399879e+02 1.0739658e+03 - 5.1581618e+03 9.4931311e+02 1.0835844e+03 - 5.1325189e+03 1.0167445e+03 1.0938667e+03 - 5.1043759e+03 1.0865053e+03 1.1048167e+03 - 5.0735108e+03 1.1588227e+03 1.1164342e+03 - 5.0396763e+03 1.2339389e+03 1.1287132e+03 - 5.0025974e+03 1.3121101e+03 1.1416403e+03 - 4.9619713e+03 1.3936045e+03 1.1551924e+03 - 4.9174662e+03 1.4786997e+03 1.1693346e+03 - 4.8687226e+03 1.5676776e+03 1.1840168e+03 - 4.8153557e+03 1.6608173e+03 1.1991710e+03 - 4.7569602e+03 1.7583860e+03 1.2147078e+03 - 4.6931181e+03 1.8606254e+03 1.2305125e+03 - 4.6234109e+03 1.9677364e+03 1.2464424e+03 - 4.5474354e+03 2.0798581e+03 1.2623236e+03 - 4.4648253e+03 2.1970457e+03 1.2779500e+03 - 4.3752779e+03 2.3192436e+03 1.2930832e+03 - 4.2785847e+03 2.4462600e+03 1.3074555e+03 - 4.1746654e+03 2.5777418e+03 1.3207765e+03 - 4.0636016e+03 2.7131561e+03 1.3327426e+03 - 3.9456658e+03 2.8517808e+03 1.3430508e+03 - 3.8213422e+03 2.9927093e+03 1.3514158e+03 - 3.6913321e+03 3.1348721e+03 1.3575886e+03 - 3.5565427e+03 3.2770753e+03 1.3613750e+03 - 3.4180550e+03 3.4180550e+03 1.3626512e+03 - 3.2770753e+03 3.5565427e+03 1.3613750e+03 - 3.1348721e+03 3.6913321e+03 1.3575886e+03 - 2.9927093e+03 3.8213422e+03 1.3514158e+03 - 2.8517808e+03 3.9456658e+03 1.3430508e+03 - 2.7131561e+03 4.0636016e+03 1.3327426e+03 - 2.5777418e+03 4.1746654e+03 1.3207765e+03 - 2.4462600e+03 4.2785847e+03 1.3074555e+03 - 2.3192436e+03 4.3752779e+03 1.2930832e+03 - 2.1970457e+03 4.4648253e+03 1.2779500e+03 - 2.0798581e+03 4.5474354e+03 1.2623236e+03 - 1.9677364e+03 4.6234109e+03 1.2464424e+03 - 1.8606254e+03 4.6931181e+03 1.2305125e+03 - 1.7583860e+03 4.7569602e+03 1.2147078e+03 - 1.6608173e+03 4.8153557e+03 1.1991710e+03 - 1.5676776e+03 4.8687226e+03 1.1840168e+03 - 1.4786997e+03 4.9174662e+03 1.1693346e+03 - 1.3936045e+03 4.9619713e+03 1.1551924e+03 - 1.3121101e+03 5.0025974e+03 1.1416403e+03 - 1.2339389e+03 5.0396763e+03 1.1287132e+03 - 1.1588227e+03 5.0735108e+03 1.1164342e+03 - 1.0865053e+03 5.1043759e+03 1.1048167e+03 - 1.0167445e+03 5.1325189e+03 1.0938667e+03 - 9.4931311e+02 5.1581618e+03 1.0835844e+03 - 8.8399879e+02 5.1815028e+03 1.0739658e+03 - 8.2060390e+02 5.2027185e+03 1.0650039e+03 - 7.5894477e+02 5.2219654e+03 1.0566896e+03 - 6.9885078e+02 5.2393821e+03 1.0490122e+03 - 6.4016346e+02 5.2550908e+03 1.0419607e+03 - 5.8273533e+02 5.2691993e+03 1.0355234e+03 - 5.2642897e+02 5.2818018e+03 1.0296890e+03 - 4.7111586e+02 5.2929807e+03 1.0244466e+03 - 4.1667546e+02 5.3028075e+03 1.0197857e+03 - 3.6299418e+02 5.3113436e+03 1.0156967e+03 - 3.0996450e+02 5.3186415e+03 1.0121710e+03 - 2.5748407e+02 5.3247453e+03 1.0092010e+03 - 2.0545491e+02 5.3296915e+03 1.0067801e+03 - 1.5378257e+02 5.3335090e+03 1.0049028e+03 - 1.0237545e+02 5.3362202e+03 1.0035650e+03 - 5.1143979e+01 5.3378407e+03 1.0027635e+03 - 9.6268545e-09 5.3383799e+03 1.0024965e+03 - -5.1143979e+01 5.3378407e+03 1.0027635e+03 - -1.0237545e+02 5.3362202e+03 1.0035650e+03 - -1.5378257e+02 5.3335090e+03 1.0049028e+03 - -2.0545491e+02 5.3296915e+03 1.0067801e+03 - -2.5748407e+02 5.3247453e+03 1.0092010e+03 - -3.0996450e+02 5.3186415e+03 1.0121710e+03 - -3.6299418e+02 5.3113436e+03 1.0156967e+03 - -4.1667546e+02 5.3028075e+03 1.0197857e+03 - -4.7111586e+02 5.2929807e+03 1.0244466e+03 - -5.2642897e+02 5.2818018e+03 1.0296890e+03 - -5.8273533e+02 5.2691993e+03 1.0355234e+03 - -6.4016346e+02 5.2550908e+03 1.0419607e+03 - -6.9885078e+02 5.2393821e+03 1.0490122e+03 - -7.5894477e+02 5.2219654e+03 1.0566896e+03 - -8.2060390e+02 5.2027185e+03 1.0650039e+03 - -8.8399879e+02 5.1815028e+03 1.0739658e+03 - -9.4931311e+02 5.1581618e+03 1.0835844e+03 - -1.0167445e+03 5.1325189e+03 1.0938667e+03 - -1.0865053e+03 5.1043759e+03 1.1048167e+03 - -1.1588227e+03 5.0735108e+03 1.1164342e+03 - -1.2339389e+03 5.0396763e+03 1.1287132e+03 - -1.3121101e+03 5.0025974e+03 1.1416403e+03 - -1.3936045e+03 4.9619713e+03 1.1551924e+03 - -1.4786997e+03 4.9174662e+03 1.1693346e+03 - -1.5676776e+03 4.8687226e+03 1.1840168e+03 - -1.6608173e+03 4.8153557e+03 1.1991710e+03 - -1.7583860e+03 4.7569602e+03 1.2147078e+03 - -1.8606254e+03 4.6931181e+03 1.2305125e+03 - -1.9677364e+03 4.6234109e+03 1.2464424e+03 - -2.0798581e+03 4.5474354e+03 1.2623236e+03 - -2.1970457e+03 4.4648253e+03 1.2779500e+03 - -2.3192436e+03 4.3752779e+03 1.2930832e+03 - -2.4462600e+03 4.2785847e+03 1.3074555e+03 - -2.5777418e+03 4.1746654e+03 1.3207765e+03 - -2.7131561e+03 4.0636016e+03 1.3327426e+03 - -2.8517808e+03 3.9456658e+03 1.3430508e+03 - -2.9927093e+03 3.8213422e+03 1.3514158e+03 - -3.1348721e+03 3.6913321e+03 1.3575886e+03 - -3.2770753e+03 3.5565427e+03 1.3613750e+03 - -3.4180550e+03 3.4180550e+03 1.3626512e+03 - -3.5565427e+03 3.2770753e+03 1.3613750e+03 - -3.6913321e+03 3.1348721e+03 1.3575886e+03 - -3.8213422e+03 2.9927093e+03 1.3514158e+03 - -3.9456658e+03 2.8517808e+03 1.3430508e+03 - -4.0636016e+03 2.7131561e+03 1.3327426e+03 - -4.1746654e+03 2.5777418e+03 1.3207765e+03 - -4.2785847e+03 2.4462600e+03 1.3074555e+03 - -4.3752779e+03 2.3192436e+03 1.2930832e+03 - -4.4648253e+03 2.1970457e+03 1.2779500e+03 - -4.5474354e+03 2.0798581e+03 1.2623236e+03 - -4.6234109e+03 1.9677364e+03 1.2464424e+03 - -4.6931181e+03 1.8606254e+03 1.2305125e+03 - -4.7569602e+03 1.7583860e+03 1.2147078e+03 - -4.8153557e+03 1.6608173e+03 1.1991710e+03 - -4.8687226e+03 1.5676776e+03 1.1840168e+03 - -4.9174662e+03 1.4786997e+03 1.1693346e+03 - -4.9619713e+03 1.3936045e+03 1.1551924e+03 - -5.0025974e+03 1.3121101e+03 1.1416403e+03 - -5.0396763e+03 1.2339389e+03 1.1287132e+03 - -5.0735108e+03 1.1588227e+03 1.1164342e+03 - -5.1043759e+03 1.0865053e+03 1.1048167e+03 - -5.1325189e+03 1.0167445e+03 1.0938667e+03 - -5.1581618e+03 9.4931311e+02 1.0835844e+03 - -5.1815028e+03 8.8399879e+02 1.0739658e+03 - -5.2027185e+03 8.2060390e+02 1.0650039e+03 - -5.2219654e+03 7.5894477e+02 1.0566896e+03 - -5.2393821e+03 6.9885078e+02 1.0490122e+03 - -5.2550908e+03 6.4016346e+02 1.0419607e+03 - -5.2691993e+03 5.8273533e+02 1.0355234e+03 - -5.2818018e+03 5.2642897e+02 1.0296890e+03 - -5.2929807e+03 4.7111586e+02 1.0244466e+03 - -5.3028075e+03 4.1667546e+02 1.0197857e+03 - -5.3113436e+03 3.6299418e+02 1.0156967e+03 - -5.3186415e+03 3.0996450e+02 1.0121710e+03 - -5.3247453e+03 2.5748407e+02 1.0092010e+03 - -5.3296915e+03 2.0545491e+02 1.0067801e+03 - -5.3335090e+03 1.5378257e+02 1.0049028e+03 - -5.3362202e+03 1.0237545e+02 1.0035650e+03 - -5.3378407e+03 5.1143979e+01 1.0027635e+03 - -5.3383799e+03 0.0000000e+00 1.0024965e+03 - -5.3378407e+03 -5.1143979e+01 1.0027635e+03 - -5.3362202e+03 -1.0237545e+02 1.0035650e+03 - -5.3335090e+03 -1.5378257e+02 1.0049028e+03 - -5.3296915e+03 -2.0545491e+02 1.0067801e+03 - -5.3247453e+03 -2.5748407e+02 1.0092010e+03 - -5.3186415e+03 -3.0996450e+02 1.0121710e+03 - -5.3113436e+03 -3.6299418e+02 1.0156967e+03 - -5.3028075e+03 -4.1667546e+02 1.0197857e+03 - -5.2929807e+03 -4.7111586e+02 1.0244466e+03 - -5.2818018e+03 -5.2642897e+02 1.0296890e+03 - -5.2691993e+03 -5.8273533e+02 1.0355234e+03 - -5.2550908e+03 -6.4016346e+02 1.0419607e+03 - -5.2393821e+03 -6.9885078e+02 1.0490122e+03 - -5.2219654e+03 -7.5894477e+02 1.0566896e+03 - -5.2027185e+03 -8.2060390e+02 1.0650039e+03 - -5.1815028e+03 -8.8399879e+02 1.0739658e+03 - -5.1581618e+03 -9.4931311e+02 1.0835844e+03 - -5.1325189e+03 -1.0167445e+03 1.0938667e+03 - -5.1043759e+03 -1.0865053e+03 1.1048167e+03 - -5.0735108e+03 -1.1588227e+03 1.1164342e+03 - -5.0396763e+03 -1.2339389e+03 1.1287132e+03 - -5.0025974e+03 -1.3121101e+03 1.1416403e+03 - -4.9619713e+03 -1.3936045e+03 1.1551924e+03 - -4.9174662e+03 -1.4786997e+03 1.1693346e+03 - -4.8687226e+03 -1.5676776e+03 1.1840168e+03 - -4.8153557e+03 -1.6608173e+03 1.1991710e+03 - -4.7569602e+03 -1.7583860e+03 1.2147078e+03 - -4.6931181e+03 -1.8606254e+03 1.2305125e+03 - -4.6234109e+03 -1.9677364e+03 1.2464424e+03 - -4.5474354e+03 -2.0798581e+03 1.2623236e+03 - -4.4648253e+03 -2.1970457e+03 1.2779500e+03 - -4.3752779e+03 -2.3192436e+03 1.2930832e+03 - -4.2785847e+03 -2.4462600e+03 1.3074555e+03 - -4.1746654e+03 -2.5777418e+03 1.3207765e+03 - -4.0636016e+03 -2.7131561e+03 1.3327426e+03 - -3.9456658e+03 -2.8517808e+03 1.3430508e+03 - -3.8213422e+03 -2.9927093e+03 1.3514158e+03 - -3.6913321e+03 -3.1348721e+03 1.3575886e+03 - -3.5565427e+03 -3.2770753e+03 1.3613750e+03 - -3.4180550e+03 -3.4180550e+03 1.3626512e+03 - -3.2770753e+03 -3.5565427e+03 1.3613750e+03 - -3.1348721e+03 -3.6913321e+03 1.3575886e+03 - -2.9927093e+03 -3.8213422e+03 1.3514158e+03 - -2.8517808e+03 -3.9456658e+03 1.3430508e+03 - -2.7131561e+03 -4.0636016e+03 1.3327426e+03 - -2.5777418e+03 -4.1746654e+03 1.3207765e+03 - -2.4462600e+03 -4.2785847e+03 1.3074555e+03 - -2.3192436e+03 -4.3752779e+03 1.2930832e+03 - -2.1970457e+03 -4.4648253e+03 1.2779500e+03 - -2.0798581e+03 -4.5474354e+03 1.2623236e+03 - -1.9677364e+03 -4.6234109e+03 1.2464424e+03 - -1.8606254e+03 -4.6931181e+03 1.2305125e+03 - -1.7583860e+03 -4.7569602e+03 1.2147078e+03 - -1.6608173e+03 -4.8153557e+03 1.1991710e+03 - -1.5676776e+03 -4.8687226e+03 1.1840168e+03 - -1.4786997e+03 -4.9174662e+03 1.1693346e+03 - -1.3936045e+03 -4.9619713e+03 1.1551924e+03 - -1.3121101e+03 -5.0025974e+03 1.1416403e+03 - -1.2339389e+03 -5.0396763e+03 1.1287132e+03 - -1.1588227e+03 -5.0735108e+03 1.1164342e+03 - -1.0865053e+03 -5.1043759e+03 1.1048167e+03 - -1.0167445e+03 -5.1325189e+03 1.0938667e+03 - -9.4931311e+02 -5.1581618e+03 1.0835844e+03 - -8.8399879e+02 -5.1815028e+03 1.0739658e+03 - -8.2060390e+02 -5.2027185e+03 1.0650039e+03 - -7.5894477e+02 -5.2219654e+03 1.0566896e+03 - -6.9885078e+02 -5.2393821e+03 1.0490122e+03 - -6.4016346e+02 -5.2550908e+03 1.0419607e+03 - -5.8273533e+02 -5.2691993e+03 1.0355234e+03 - -5.2642897e+02 -5.2818018e+03 1.0296890e+03 - -4.7111586e+02 -5.2929807e+03 1.0244466e+03 - -4.1667546e+02 -5.3028075e+03 1.0197857e+03 - -3.6299418e+02 -5.3113436e+03 1.0156967e+03 - -3.0996450e+02 -5.3186415e+03 1.0121710e+03 - -2.5748407e+02 -5.3247453e+03 1.0092010e+03 - -2.0545491e+02 -5.3296915e+03 1.0067801e+03 - -1.5378257e+02 -5.3335090e+03 1.0049028e+03 - -1.0237545e+02 -5.3362202e+03 1.0035650e+03 - -5.1143979e+01 -5.3378407e+03 1.0027635e+03 - 0.0000000e+00 -5.3383799e+03 1.0024965e+03 - 5.1143979e+01 -5.3378407e+03 1.0027635e+03 - 1.0237545e+02 -5.3362202e+03 1.0035650e+03 - 1.5378257e+02 -5.3335090e+03 1.0049028e+03 - 2.0545491e+02 -5.3296915e+03 1.0067801e+03 - 2.5748407e+02 -5.3247453e+03 1.0092010e+03 - 3.0996450e+02 -5.3186415e+03 1.0121710e+03 - 3.6299418e+02 -5.3113436e+03 1.0156967e+03 - 4.1667546e+02 -5.3028075e+03 1.0197857e+03 - 4.7111586e+02 -5.2929807e+03 1.0244466e+03 - 5.2642897e+02 -5.2818018e+03 1.0296890e+03 - 5.8273533e+02 -5.2691993e+03 1.0355234e+03 - 6.4016346e+02 -5.2550908e+03 1.0419607e+03 - 6.9885078e+02 -5.2393821e+03 1.0490122e+03 - 7.5894477e+02 -5.2219654e+03 1.0566896e+03 - 8.2060390e+02 -5.2027185e+03 1.0650039e+03 - 8.8399879e+02 -5.1815028e+03 1.0739658e+03 - 9.4931311e+02 -5.1581618e+03 1.0835844e+03 - 1.0167445e+03 -5.1325189e+03 1.0938667e+03 - 1.0865053e+03 -5.1043759e+03 1.1048167e+03 - 1.1588227e+03 -5.0735108e+03 1.1164342e+03 - 1.2339389e+03 -5.0396763e+03 1.1287132e+03 - 1.3121101e+03 -5.0025974e+03 1.1416403e+03 - 1.3936045e+03 -4.9619713e+03 1.1551924e+03 - 1.4786997e+03 -4.9174662e+03 1.1693346e+03 - 1.5676776e+03 -4.8687226e+03 1.1840168e+03 - 1.6608173e+03 -4.8153557e+03 1.1991710e+03 - 1.7583860e+03 -4.7569602e+03 1.2147078e+03 - 1.8606254e+03 -4.6931181e+03 1.2305125e+03 - 1.9677364e+03 -4.6234109e+03 1.2464424e+03 - 2.0798581e+03 -4.5474354e+03 1.2623236e+03 - 2.1970457e+03 -4.4648253e+03 1.2779500e+03 - 2.3192436e+03 -4.3752779e+03 1.2930832e+03 - 2.4462600e+03 -4.2785847e+03 1.3074555e+03 - 2.5777418e+03 -4.1746654e+03 1.3207765e+03 - 2.7131561e+03 -4.0636016e+03 1.3327426e+03 - 2.8517808e+03 -3.9456658e+03 1.3430508e+03 - 2.9927093e+03 -3.8213422e+03 1.3514158e+03 - 3.1348721e+03 -3.6913321e+03 1.3575886e+03 - 3.2770753e+03 -3.5565427e+03 1.3613750e+03 - 3.4180550e+03 -3.4180550e+03 1.3626512e+03 - 3.5565427e+03 -3.2770753e+03 1.3613750e+03 - 3.6913321e+03 -3.1348721e+03 1.3575886e+03 - 3.8213422e+03 -2.9927093e+03 1.3514158e+03 - 3.9456658e+03 -2.8517808e+03 1.3430508e+03 - 4.0636016e+03 -2.7131561e+03 1.3327426e+03 - 4.1746654e+03 -2.5777418e+03 1.3207765e+03 - 4.2785847e+03 -2.4462600e+03 1.3074555e+03 - 4.3752779e+03 -2.3192436e+03 1.2930832e+03 - 4.4648253e+03 -2.1970457e+03 1.2779500e+03 - 4.5474354e+03 -2.0798581e+03 1.2623236e+03 - 4.6234109e+03 -1.9677364e+03 1.2464424e+03 - 4.6931181e+03 -1.8606254e+03 1.2305125e+03 - 4.7569602e+03 -1.7583860e+03 1.2147078e+03 - 4.8153557e+03 -1.6608173e+03 1.1991710e+03 - 4.8687226e+03 -1.5676776e+03 1.1840168e+03 - 4.9174662e+03 -1.4786997e+03 1.1693346e+03 - 4.9619713e+03 -1.3936045e+03 1.1551924e+03 - 5.0025974e+03 -1.3121101e+03 1.1416403e+03 - 5.0396763e+03 -1.2339389e+03 1.1287132e+03 - 5.0735108e+03 -1.1588227e+03 1.1164342e+03 - 5.1043759e+03 -1.0865053e+03 1.1048167e+03 - 5.1325189e+03 -1.0167445e+03 1.0938667e+03 - 5.1581618e+03 -9.4931311e+02 1.0835844e+03 - 5.1815028e+03 -8.8399879e+02 1.0739658e+03 - 5.2027185e+03 -8.2060390e+02 1.0650039e+03 - 5.2219654e+03 -7.5894477e+02 1.0566896e+03 - 5.2393821e+03 -6.9885078e+02 1.0490122e+03 - 5.2550908e+03 -6.4016346e+02 1.0419607e+03 - 5.2691993e+03 -5.8273533e+02 1.0355234e+03 - 5.2818018e+03 -5.2642897e+02 1.0296890e+03 - 5.2929807e+03 -4.7111586e+02 1.0244466e+03 - 5.3028075e+03 -4.1667546e+02 1.0197857e+03 - 5.3113436e+03 -3.6299418e+02 1.0156967e+03 - 5.3186415e+03 -3.0996450e+02 1.0121710e+03 - 5.3247453e+03 -2.5748407e+02 1.0092010e+03 - 5.3296915e+03 -2.0545491e+02 1.0067801e+03 - 5.3335090e+03 -1.5378257e+02 1.0049028e+03 - 5.3362202e+03 -1.0237545e+02 1.0035650e+03 - 5.3378407e+03 -5.1143979e+01 1.0027635e+03 - 5.3383799e+03 0.0000000e+00 1.0024965e+03 - 5.3558658e+03 4.8134273e-09 8.6619626e+02 - 5.3553373e+03 5.0975781e+01 8.6643204e+02 - 5.3537488e+03 1.0203877e+02 8.6713997e+02 - 5.3510912e+03 1.5327688e+02 8.6832175e+02 - 5.3473488e+03 2.0477940e+02 8.6998024e+02 - 5.3424998e+03 2.5663775e+02 8.7211941e+02 - 5.3365153e+03 3.0894618e+02 8.7474433e+02 - 5.3293594e+03 3.6180258e+02 8.7786118e+02 - 5.3209883e+03 4.1530926e+02 8.8147713e+02 - 5.3113501e+03 4.6957383e+02 8.8560037e+02 - 5.3003836e+03 5.2471006e+02 8.9023998e+02 - 5.2880181e+03 5.8083886e+02 8.9540584e+02 - 5.2741715e+03 6.3808932e+02 9.0110850e+02 - 5.2587499e+03 6.9659969e+02 9.0735898e+02 - 5.2416459e+03 7.5651856e+02 9.1416855e+02 - 5.2227375e+03 8.1800596e+02 9.2154839e+02 - 5.2018858e+03 8.8123449e+02 9.2950917e+02 - 5.1789336e+03 9.4639042e+02 9.3806057e+02 - 5.1537037e+03 1.0136747e+03 9.4721058e+02 - 5.1259960e+03 1.0833038e+03 9.5696464e+02 - 5.0955861e+03 1.1555100e+03 9.6732462e+02 - 5.0622230e+03 1.2305420e+03 9.7828750e+02 - 5.0256271e+03 1.3086637e+03 9.8984376e+02 - 4.9854886e+03 1.3901527e+03 1.0019755e+03 - 4.9414673e+03 1.4752978e+03 1.0146540e+03 - 4.8931925e+03 1.5643940e+03 1.0278375e+03 - 4.8402655e+03 1.6577355e+03 1.0414675e+03 - 4.7822637e+03 1.7556064e+03 1.0554662e+03 - 4.7187488e+03 1.8582674e+03 1.0697326e+03 - 4.6492779e+03 1.9659389e+03 1.0841396e+03 - 4.5734209e+03 2.0787801e+03 1.0985310e+03 - 4.4907817e+03 2.1968647e+03 1.1127198e+03 - 4.4010268e+03 2.3201529e+03 1.1264884e+03 - 4.3039180e+03 2.4484628e+03 1.1395905e+03 - 4.1993488e+03 2.5814434e+03 1.1517572e+03 - 4.0873815e+03 2.7185532e+03 1.1627056e+03 - 3.9682798e+03 2.8590492e+03 1.1721521e+03 - 3.8425319e+03 3.0019903e+03 1.1798281e+03 - 3.7108591e+03 3.1462592e+03 1.1854984e+03 - 3.5742038e+03 3.2906040e+03 1.1889791e+03 - 3.4336968e+03 3.4336968e+03 1.1901528e+03 - 3.2906040e+03 3.5742038e+03 1.1889791e+03 - 3.1462592e+03 3.7108591e+03 1.1854984e+03 - 3.0019903e+03 3.8425319e+03 1.1798281e+03 - 2.8590492e+03 3.9682798e+03 1.1721521e+03 - 2.7185532e+03 4.0873815e+03 1.1627056e+03 - 2.5814434e+03 4.1993488e+03 1.1517572e+03 - 2.4484628e+03 4.3039180e+03 1.1395905e+03 - 2.3201529e+03 4.4010268e+03 1.1264884e+03 - 2.1968647e+03 4.4907817e+03 1.1127198e+03 - 2.0787801e+03 4.5734209e+03 1.0985310e+03 - 1.9659389e+03 4.6492779e+03 1.0841396e+03 - 1.8582674e+03 4.7187488e+03 1.0697326e+03 - 1.7556064e+03 4.7822637e+03 1.0554662e+03 - 1.6577355e+03 4.8402655e+03 1.0414675e+03 - 1.5643940e+03 4.8931925e+03 1.0278375e+03 - 1.4752978e+03 4.9414673e+03 1.0146540e+03 - 1.3901527e+03 4.9854886e+03 1.0019755e+03 - 1.3086637e+03 5.0256271e+03 9.8984376e+02 - 1.2305420e+03 5.0622230e+03 9.7828750e+02 - 1.1555100e+03 5.0955861e+03 9.6732462e+02 - 1.0833038e+03 5.1259960e+03 9.5696464e+02 - 1.0136747e+03 5.1537037e+03 9.4721058e+02 - 9.4639042e+02 5.1789336e+03 9.3806057e+02 - 8.8123449e+02 5.2018858e+03 9.2950917e+02 - 8.1800596e+02 5.2227375e+03 9.2154839e+02 - 7.5651856e+02 5.2416459e+03 9.1416855e+02 - 6.9659969e+02 5.2587499e+03 9.0735898e+02 - 6.3808932e+02 5.2741715e+03 9.0110850e+02 - 5.8083886e+02 5.2880181e+03 8.9540584e+02 - 5.2471006e+02 5.3003836e+03 8.9023998e+02 - 4.6957383e+02 5.3113501e+03 8.8560037e+02 - 4.1530926e+02 5.3209883e+03 8.8147713e+02 - 3.6180258e+02 5.3293594e+03 8.7786118e+02 - 3.0894618e+02 5.3365153e+03 8.7474433e+02 - 2.5663775e+02 5.3424998e+03 8.7211941e+02 - 2.0477940e+02 5.3473488e+03 8.6998024e+02 - 1.5327688e+02 5.3510912e+03 8.6832175e+02 - 1.0203877e+02 5.3537488e+03 8.6713997e+02 - 5.0975781e+01 5.3553373e+03 8.6643204e+02 - -1.4440282e-08 5.3558658e+03 8.6619626e+02 - -5.0975781e+01 5.3553373e+03 8.6643204e+02 - -1.0203877e+02 5.3537488e+03 8.6713997e+02 - -1.5327688e+02 5.3510912e+03 8.6832175e+02 - -2.0477940e+02 5.3473488e+03 8.6998024e+02 - -2.5663775e+02 5.3424998e+03 8.7211941e+02 - -3.0894618e+02 5.3365153e+03 8.7474433e+02 - -3.6180258e+02 5.3293594e+03 8.7786118e+02 - -4.1530926e+02 5.3209883e+03 8.8147713e+02 - -4.6957383e+02 5.3113501e+03 8.8560037e+02 - -5.2471006e+02 5.3003836e+03 8.9023998e+02 - -5.8083886e+02 5.2880181e+03 8.9540584e+02 - -6.3808932e+02 5.2741715e+03 9.0110850e+02 - -6.9659969e+02 5.2587499e+03 9.0735898e+02 - -7.5651856e+02 5.2416459e+03 9.1416855e+02 - -8.1800596e+02 5.2227375e+03 9.2154839e+02 - -8.8123449e+02 5.2018858e+03 9.2950917e+02 - -9.4639042e+02 5.1789336e+03 9.3806057e+02 - -1.0136747e+03 5.1537037e+03 9.4721058e+02 - -1.0833038e+03 5.1259960e+03 9.5696464e+02 - -1.1555100e+03 5.0955861e+03 9.6732462e+02 - -1.2305420e+03 5.0622230e+03 9.7828750e+02 - -1.3086637e+03 5.0256271e+03 9.8984376e+02 - -1.3901527e+03 4.9854886e+03 1.0019755e+03 - -1.4752978e+03 4.9414673e+03 1.0146540e+03 - -1.5643940e+03 4.8931925e+03 1.0278375e+03 - -1.6577355e+03 4.8402655e+03 1.0414675e+03 - -1.7556064e+03 4.7822637e+03 1.0554662e+03 - -1.8582674e+03 4.7187488e+03 1.0697326e+03 - -1.9659389e+03 4.6492779e+03 1.0841396e+03 - -2.0787801e+03 4.5734209e+03 1.0985310e+03 - -2.1968647e+03 4.4907817e+03 1.1127198e+03 - -2.3201529e+03 4.4010268e+03 1.1264884e+03 - -2.4484628e+03 4.3039180e+03 1.1395905e+03 - -2.5814434e+03 4.1993488e+03 1.1517572e+03 - -2.7185532e+03 4.0873815e+03 1.1627056e+03 - -2.8590492e+03 3.9682798e+03 1.1721521e+03 - -3.0019903e+03 3.8425319e+03 1.1798281e+03 - -3.1462592e+03 3.7108591e+03 1.1854984e+03 - -3.2906040e+03 3.5742038e+03 1.1889791e+03 - -3.4336968e+03 3.4336968e+03 1.1901528e+03 - -3.5742038e+03 3.2906040e+03 1.1889791e+03 - -3.7108591e+03 3.1462592e+03 1.1854984e+03 - -3.8425319e+03 3.0019903e+03 1.1798281e+03 - -3.9682798e+03 2.8590492e+03 1.1721521e+03 - -4.0873815e+03 2.7185532e+03 1.1627056e+03 - -4.1993488e+03 2.5814434e+03 1.1517572e+03 - -4.3039180e+03 2.4484628e+03 1.1395905e+03 - -4.4010268e+03 2.3201529e+03 1.1264884e+03 - -4.4907817e+03 2.1968647e+03 1.1127198e+03 - -4.5734209e+03 2.0787801e+03 1.0985310e+03 - -4.6492779e+03 1.9659389e+03 1.0841396e+03 - -4.7187488e+03 1.8582674e+03 1.0697326e+03 - -4.7822637e+03 1.7556064e+03 1.0554662e+03 - -4.8402655e+03 1.6577355e+03 1.0414675e+03 - -4.8931925e+03 1.5643940e+03 1.0278375e+03 - -4.9414673e+03 1.4752978e+03 1.0146540e+03 - -4.9854886e+03 1.3901527e+03 1.0019755e+03 - -5.0256271e+03 1.3086637e+03 9.8984376e+02 - -5.0622230e+03 1.2305420e+03 9.7828750e+02 - -5.0955861e+03 1.1555100e+03 9.6732462e+02 - -5.1259960e+03 1.0833038e+03 9.5696464e+02 - -5.1537037e+03 1.0136747e+03 9.4721058e+02 - -5.1789336e+03 9.4639042e+02 9.3806057e+02 - -5.2018858e+03 8.8123449e+02 9.2950917e+02 - -5.2227375e+03 8.1800596e+02 9.2154839e+02 - -5.2416459e+03 7.5651856e+02 9.1416855e+02 - -5.2587499e+03 6.9659969e+02 9.0735898e+02 - -5.2741715e+03 6.3808932e+02 9.0110850e+02 - -5.2880181e+03 5.8083886e+02 8.9540584e+02 - -5.3003836e+03 5.2471006e+02 8.9023998e+02 - -5.3113501e+03 4.6957383e+02 8.8560037e+02 - -5.3209883e+03 4.1530926e+02 8.8147713e+02 - -5.3293594e+03 3.6180258e+02 8.7786118e+02 - -5.3365153e+03 3.0894618e+02 8.7474433e+02 - -5.3424998e+03 2.5663775e+02 8.7211941e+02 - -5.3473488e+03 2.0477940e+02 8.6998024e+02 - -5.3510912e+03 1.5327688e+02 8.6832175e+02 - -5.3537488e+03 1.0203877e+02 8.6713997e+02 - -5.3553373e+03 5.0975781e+01 8.6643204e+02 - -5.3558658e+03 0.0000000e+00 8.6619626e+02 - -5.3553373e+03 -5.0975781e+01 8.6643204e+02 - -5.3537488e+03 -1.0203877e+02 8.6713997e+02 - -5.3510912e+03 -1.5327688e+02 8.6832175e+02 - -5.3473488e+03 -2.0477940e+02 8.6998024e+02 - -5.3424998e+03 -2.5663775e+02 8.7211941e+02 - -5.3365153e+03 -3.0894618e+02 8.7474433e+02 - -5.3293594e+03 -3.6180258e+02 8.7786118e+02 - -5.3209883e+03 -4.1530926e+02 8.8147713e+02 - -5.3113501e+03 -4.6957383e+02 8.8560037e+02 - -5.3003836e+03 -5.2471006e+02 8.9023998e+02 - -5.2880181e+03 -5.8083886e+02 8.9540584e+02 - -5.2741715e+03 -6.3808932e+02 9.0110850e+02 - -5.2587499e+03 -6.9659969e+02 9.0735898e+02 - -5.2416459e+03 -7.5651856e+02 9.1416855e+02 - -5.2227375e+03 -8.1800596e+02 9.2154839e+02 - -5.2018858e+03 -8.8123449e+02 9.2950917e+02 - -5.1789336e+03 -9.4639042e+02 9.3806057e+02 - -5.1537037e+03 -1.0136747e+03 9.4721058e+02 - -5.1259960e+03 -1.0833038e+03 9.5696464e+02 - -5.0955861e+03 -1.1555100e+03 9.6732462e+02 - -5.0622230e+03 -1.2305420e+03 9.7828750e+02 - -5.0256271e+03 -1.3086637e+03 9.8984376e+02 - -4.9854886e+03 -1.3901527e+03 1.0019755e+03 - -4.9414673e+03 -1.4752978e+03 1.0146540e+03 - -4.8931925e+03 -1.5643940e+03 1.0278375e+03 - -4.8402655e+03 -1.6577355e+03 1.0414675e+03 - -4.7822637e+03 -1.7556064e+03 1.0554662e+03 - -4.7187488e+03 -1.8582674e+03 1.0697326e+03 - -4.6492779e+03 -1.9659389e+03 1.0841396e+03 - -4.5734209e+03 -2.0787801e+03 1.0985310e+03 - -4.4907817e+03 -2.1968647e+03 1.1127198e+03 - -4.4010268e+03 -2.3201529e+03 1.1264884e+03 - -4.3039180e+03 -2.4484628e+03 1.1395905e+03 - -4.1993488e+03 -2.5814434e+03 1.1517572e+03 - -4.0873815e+03 -2.7185532e+03 1.1627056e+03 - -3.9682798e+03 -2.8590492e+03 1.1721521e+03 - -3.8425319e+03 -3.0019903e+03 1.1798281e+03 - -3.7108591e+03 -3.1462592e+03 1.1854984e+03 - -3.5742038e+03 -3.2906040e+03 1.1889791e+03 - -3.4336968e+03 -3.4336968e+03 1.1901528e+03 - -3.2906040e+03 -3.5742038e+03 1.1889791e+03 - -3.1462592e+03 -3.7108591e+03 1.1854984e+03 - -3.0019903e+03 -3.8425319e+03 1.1798281e+03 - -2.8590492e+03 -3.9682798e+03 1.1721521e+03 - -2.7185532e+03 -4.0873815e+03 1.1627056e+03 - -2.5814434e+03 -4.1993488e+03 1.1517572e+03 - -2.4484628e+03 -4.3039180e+03 1.1395905e+03 - -2.3201529e+03 -4.4010268e+03 1.1264884e+03 - -2.1968647e+03 -4.4907817e+03 1.1127198e+03 - -2.0787801e+03 -4.5734209e+03 1.0985310e+03 - -1.9659389e+03 -4.6492779e+03 1.0841396e+03 - -1.8582674e+03 -4.7187488e+03 1.0697326e+03 - -1.7556064e+03 -4.7822637e+03 1.0554662e+03 - -1.6577355e+03 -4.8402655e+03 1.0414675e+03 - -1.5643940e+03 -4.8931925e+03 1.0278375e+03 - -1.4752978e+03 -4.9414673e+03 1.0146540e+03 - -1.3901527e+03 -4.9854886e+03 1.0019755e+03 - -1.3086637e+03 -5.0256271e+03 9.8984376e+02 - -1.2305420e+03 -5.0622230e+03 9.7828750e+02 - -1.1555100e+03 -5.0955861e+03 9.6732462e+02 - -1.0833038e+03 -5.1259960e+03 9.5696464e+02 - -1.0136747e+03 -5.1537037e+03 9.4721058e+02 - -9.4639042e+02 -5.1789336e+03 9.3806057e+02 - -8.8123449e+02 -5.2018858e+03 9.2950917e+02 - -8.1800596e+02 -5.2227375e+03 9.2154839e+02 - -7.5651856e+02 -5.2416459e+03 9.1416855e+02 - -6.9659969e+02 -5.2587499e+03 9.0735898e+02 - -6.3808932e+02 -5.2741715e+03 9.0110850e+02 - -5.8083886e+02 -5.2880181e+03 8.9540584e+02 - -5.2471006e+02 -5.3003836e+03 8.9023998e+02 - -4.6957383e+02 -5.3113501e+03 8.8560037e+02 - -4.1530926e+02 -5.3209883e+03 8.8147713e+02 - -3.6180258e+02 -5.3293594e+03 8.7786118e+02 - -3.0894618e+02 -5.3365153e+03 8.7474433e+02 - -2.5663775e+02 -5.3424998e+03 8.7211941e+02 - -2.0477940e+02 -5.3473488e+03 8.6998024e+02 - -1.5327688e+02 -5.3510912e+03 8.6832175e+02 - -1.0203877e+02 -5.3537488e+03 8.6713997e+02 - -5.0975781e+01 -5.3553373e+03 8.6643204e+02 - -4.8134273e-09 -5.3558658e+03 8.6619626e+02 - 5.0975781e+01 -5.3553373e+03 8.6643204e+02 - 1.0203877e+02 -5.3537488e+03 8.6713997e+02 - 1.5327688e+02 -5.3510912e+03 8.6832175e+02 - 2.0477940e+02 -5.3473488e+03 8.6998024e+02 - 2.5663775e+02 -5.3424998e+03 8.7211941e+02 - 3.0894618e+02 -5.3365153e+03 8.7474433e+02 - 3.6180258e+02 -5.3293594e+03 8.7786118e+02 - 4.1530926e+02 -5.3209883e+03 8.8147713e+02 - 4.6957383e+02 -5.3113501e+03 8.8560037e+02 - 5.2471006e+02 -5.3003836e+03 8.9023998e+02 - 5.8083886e+02 -5.2880181e+03 8.9540584e+02 - 6.3808932e+02 -5.2741715e+03 9.0110850e+02 - 6.9659969e+02 -5.2587499e+03 9.0735898e+02 - 7.5651856e+02 -5.2416459e+03 9.1416855e+02 - 8.1800596e+02 -5.2227375e+03 9.2154839e+02 - 8.8123449e+02 -5.2018858e+03 9.2950917e+02 - 9.4639042e+02 -5.1789336e+03 9.3806057e+02 - 1.0136747e+03 -5.1537037e+03 9.4721058e+02 - 1.0833038e+03 -5.1259960e+03 9.5696464e+02 - 1.1555100e+03 -5.0955861e+03 9.6732462e+02 - 1.2305420e+03 -5.0622230e+03 9.7828750e+02 - 1.3086637e+03 -5.0256271e+03 9.8984376e+02 - 1.3901527e+03 -4.9854886e+03 1.0019755e+03 - 1.4752978e+03 -4.9414673e+03 1.0146540e+03 - 1.5643940e+03 -4.8931925e+03 1.0278375e+03 - 1.6577355e+03 -4.8402655e+03 1.0414675e+03 - 1.7556064e+03 -4.7822637e+03 1.0554662e+03 - 1.8582674e+03 -4.7187488e+03 1.0697326e+03 - 1.9659389e+03 -4.6492779e+03 1.0841396e+03 - 2.0787801e+03 -4.5734209e+03 1.0985310e+03 - 2.1968647e+03 -4.4907817e+03 1.1127198e+03 - 2.3201529e+03 -4.4010268e+03 1.1264884e+03 - 2.4484628e+03 -4.3039180e+03 1.1395905e+03 - 2.5814434e+03 -4.1993488e+03 1.1517572e+03 - 2.7185532e+03 -4.0873815e+03 1.1627056e+03 - 2.8590492e+03 -3.9682798e+03 1.1721521e+03 - 3.0019903e+03 -3.8425319e+03 1.1798281e+03 - 3.1462592e+03 -3.7108591e+03 1.1854984e+03 - 3.2906040e+03 -3.5742038e+03 1.1889791e+03 - 3.4336968e+03 -3.4336968e+03 1.1901528e+03 - 3.5742038e+03 -3.2906040e+03 1.1889791e+03 - 3.7108591e+03 -3.1462592e+03 1.1854984e+03 - 3.8425319e+03 -3.0019903e+03 1.1798281e+03 - 3.9682798e+03 -2.8590492e+03 1.1721521e+03 - 4.0873815e+03 -2.7185532e+03 1.1627056e+03 - 4.1993488e+03 -2.5814434e+03 1.1517572e+03 - 4.3039180e+03 -2.4484628e+03 1.1395905e+03 - 4.4010268e+03 -2.3201529e+03 1.1264884e+03 - 4.4907817e+03 -2.1968647e+03 1.1127198e+03 - 4.5734209e+03 -2.0787801e+03 1.0985310e+03 - 4.6492779e+03 -1.9659389e+03 1.0841396e+03 - 4.7187488e+03 -1.8582674e+03 1.0697326e+03 - 4.7822637e+03 -1.7556064e+03 1.0554662e+03 - 4.8402655e+03 -1.6577355e+03 1.0414675e+03 - 4.8931925e+03 -1.5643940e+03 1.0278375e+03 - 4.9414673e+03 -1.4752978e+03 1.0146540e+03 - 4.9854886e+03 -1.3901527e+03 1.0019755e+03 - 5.0256271e+03 -1.3086637e+03 9.8984376e+02 - 5.0622230e+03 -1.2305420e+03 9.7828750e+02 - 5.0955861e+03 -1.1555100e+03 9.6732462e+02 - 5.1259960e+03 -1.0833038e+03 9.5696464e+02 - 5.1537037e+03 -1.0136747e+03 9.4721058e+02 - 5.1789336e+03 -9.4639042e+02 9.3806057e+02 - 5.2018858e+03 -8.8123449e+02 9.2950917e+02 - 5.2227375e+03 -8.1800596e+02 9.2154839e+02 - 5.2416459e+03 -7.5651856e+02 9.1416855e+02 - 5.2587499e+03 -6.9659969e+02 9.0735898e+02 - 5.2741715e+03 -6.3808932e+02 9.0110850e+02 - 5.2880181e+03 -5.8083886e+02 8.9540584e+02 - 5.3003836e+03 -5.2471006e+02 8.9023998e+02 - 5.3113501e+03 -4.6957383e+02 8.8560037e+02 - 5.3209883e+03 -4.1530926e+02 8.8147713e+02 - 5.3293594e+03 -3.6180258e+02 8.7786118e+02 - 5.3365153e+03 -3.0894618e+02 8.7474433e+02 - 5.3424998e+03 -2.5663775e+02 8.7211941e+02 - 5.3473488e+03 -2.0477940e+02 8.6998024e+02 - 5.3510912e+03 -1.5327688e+02 8.6832175e+02 - 5.3537488e+03 -1.0203877e+02 8.6713997e+02 - 5.3553373e+03 -5.0975781e+01 8.6643204e+02 - 5.3558658e+03 1.4440282e-08 8.6619626e+02 - 5.3709690e+03 4.8134273e-09 7.2684683e+02 - 5.3704500e+03 5.0829296e+01 7.2704847e+02 - 5.3688900e+03 1.0174554e+02 7.2765389e+02 - 5.3662800e+03 1.5283637e+02 7.2866464e+02 - 5.3626045e+03 2.0419086e+02 7.3008327e+02 - 5.3578419e+03 2.5590019e+02 7.3191334e+02 - 5.3519637e+03 3.0805846e+02 7.3415942e+02 - 5.3449342e+03 3.6076342e+02 7.3682703e+02 - 5.3367103e+03 4.1411733e+02 7.3992266e+02 - 5.3272402e+03 4.6822781e+02 7.4345371e+02 - 5.3164635e+03 5.2320878e+02 7.4742841e+02 - 5.3043098e+03 5.7918144e+02 7.5185577e+02 - 5.2906976e+03 6.3627529e+02 7.5674544e+02 - 5.2755334e+03 6.9462928e+02 7.6210759e+02 - 5.2587102e+03 7.5439293e+02 7.6795269e+02 - 5.2401061e+03 8.1572753e+02 7.7429125e+02 - 5.2195823e+03 8.7880738e+02 7.8113351e+02 - 5.1969815e+03 9.4382096e+02 7.8848896e+02 - 5.1721254e+03 1.0109720e+03 7.9636576e+02 - 5.1448130e+03 1.0804806e+03 8.0477010e+02 - 5.1148179e+03 1.1525836e+03 8.1370520e+02 - 5.0818861e+03 1.2275351e+03 8.2317025e+02 - 5.0457339e+03 1.3056059e+03 8.3315896e+02 - 5.0060460e+03 1.3870819e+03 8.4365793e+02 - 4.9624747e+03 1.4722619e+03 8.5464458e+02 - 4.9146396e+03 1.5614525e+03 8.6608478e+02 - 4.8621298e+03 1.6549616e+03 8.7793019e+02 - 4.8045074e+03 1.7530887e+03 8.9011522e+02 - 4.7413157e+03 1.8561115e+03 9.0255393e+02 - 4.6720900e+03 1.9642687e+03 9.1513693e+02 - 4.5963751e+03 2.0777382e+03 9.2772869e+02 - 4.5137477e+03 2.1966110e+03 9.4016576e+02 - 4.4238455e+03 2.3208623e+03 9.5225643e+02 - 4.3264020e+03 2.4503203e+03 9.6378252e+02 - 4.2212856e+03 2.5846366e+03 9.7450412e+02 - 4.1085395e+03 2.7232629e+03 9.8416768e+02 - 3.9884177e+03 2.8654371e+03 9.9251758e+02 - 3.8614113e+03 3.0101866e+03 9.9931091e+02 - 3.7282587e+03 3.1563504e+03 1.0043341e+03 - 3.5899347e+03 3.3026226e+03 1.0074197e+03 - 3.4476154e+03 3.4476154e+03 1.0084605e+03 - 3.3026226e+03 3.5899347e+03 1.0074197e+03 - 3.1563504e+03 3.7282587e+03 1.0043341e+03 - 3.0101866e+03 3.8614113e+03 9.9931091e+02 - 2.8654371e+03 3.9884177e+03 9.9251758e+02 - 2.7232629e+03 4.1085395e+03 9.8416768e+02 - 2.5846366e+03 4.2212856e+03 9.7450412e+02 - 2.4503203e+03 4.3264020e+03 9.6378252e+02 - 2.3208623e+03 4.4238455e+03 9.5225643e+02 - 2.1966110e+03 4.5137477e+03 9.4016576e+02 - 2.0777382e+03 4.5963751e+03 9.2772869e+02 - 1.9642687e+03 4.6720900e+03 9.1513693e+02 - 1.8561115e+03 4.7413157e+03 9.0255393e+02 - 1.7530887e+03 4.8045074e+03 8.9011522e+02 - 1.6549616e+03 4.8621298e+03 8.7793019e+02 - 1.5614525e+03 4.9146396e+03 8.6608478e+02 - 1.4722619e+03 4.9624747e+03 8.5464458e+02 - 1.3870819e+03 5.0060460e+03 8.4365793e+02 - 1.3056059e+03 5.0457339e+03 8.3315896e+02 - 1.2275351e+03 5.0818861e+03 8.2317025e+02 - 1.1525836e+03 5.1148179e+03 8.1370520e+02 - 1.0804806e+03 5.1448130e+03 8.0477010e+02 - 1.0109720e+03 5.1721254e+03 7.9636576e+02 - 9.4382096e+02 5.1969815e+03 7.8848896e+02 - 8.7880738e+02 5.2195823e+03 7.8113351e+02 - 8.1572753e+02 5.2401061e+03 7.7429125e+02 - 7.5439293e+02 5.2587102e+03 7.6795269e+02 - 6.9462928e+02 5.2755334e+03 7.6210759e+02 - 6.3627529e+02 5.2906976e+03 7.5674544e+02 - 5.7918144e+02 5.3043098e+03 7.5185577e+02 - 5.2320878e+02 5.3164635e+03 7.4742841e+02 - 4.6822781e+02 5.3272402e+03 7.4345371e+02 - 4.1411733e+02 5.3367103e+03 7.3992266e+02 - 3.6076342e+02 5.3449342e+03 7.3682703e+02 - 3.0805846e+02 5.3519637e+03 7.3415942e+02 - 2.5590019e+02 5.3578419e+03 7.3191334e+02 - 2.0419086e+02 5.3626045e+03 7.3008327e+02 - 1.5283637e+02 5.3662800e+03 7.2866464e+02 - 1.0174554e+02 5.3688900e+03 7.2765389e+02 - 5.0829296e+01 5.3704500e+03 7.2704847e+02 - 0.0000000e+00 5.3709690e+03 7.2684683e+02 - -5.0829296e+01 5.3704500e+03 7.2704847e+02 - -1.0174554e+02 5.3688900e+03 7.2765389e+02 - -1.5283637e+02 5.3662800e+03 7.2866464e+02 - -2.0419086e+02 5.3626045e+03 7.3008327e+02 - -2.5590019e+02 5.3578419e+03 7.3191334e+02 - -3.0805846e+02 5.3519637e+03 7.3415942e+02 - -3.6076342e+02 5.3449342e+03 7.3682703e+02 - -4.1411733e+02 5.3367103e+03 7.3992266e+02 - -4.6822781e+02 5.3272402e+03 7.4345371e+02 - -5.2320878e+02 5.3164635e+03 7.4742841e+02 - -5.7918144e+02 5.3043098e+03 7.5185577e+02 - -6.3627529e+02 5.2906976e+03 7.5674544e+02 - -6.9462928e+02 5.2755334e+03 7.6210759e+02 - -7.5439293e+02 5.2587102e+03 7.6795269e+02 - -8.1572753e+02 5.2401061e+03 7.7429125e+02 - -8.7880738e+02 5.2195823e+03 7.8113351e+02 - -9.4382096e+02 5.1969815e+03 7.8848896e+02 - -1.0109720e+03 5.1721254e+03 7.9636576e+02 - -1.0804806e+03 5.1448130e+03 8.0477010e+02 - -1.1525836e+03 5.1148179e+03 8.1370520e+02 - -1.2275351e+03 5.0818861e+03 8.2317025e+02 - -1.3056059e+03 5.0457339e+03 8.3315896e+02 - -1.3870819e+03 5.0060460e+03 8.4365793e+02 - -1.4722619e+03 4.9624747e+03 8.5464458e+02 - -1.5614525e+03 4.9146396e+03 8.6608478e+02 - -1.6549616e+03 4.8621298e+03 8.7793019e+02 - -1.7530887e+03 4.8045074e+03 8.9011522e+02 - -1.8561115e+03 4.7413157e+03 9.0255393e+02 - -1.9642687e+03 4.6720900e+03 9.1513693e+02 - -2.0777382e+03 4.5963751e+03 9.2772869e+02 - -2.1966110e+03 4.5137477e+03 9.4016576e+02 - -2.3208623e+03 4.4238455e+03 9.5225643e+02 - -2.4503203e+03 4.3264020e+03 9.6378252e+02 - -2.5846366e+03 4.2212856e+03 9.7450412e+02 - -2.7232629e+03 4.1085395e+03 9.8416768e+02 - -2.8654371e+03 3.9884177e+03 9.9251758e+02 - -3.0101866e+03 3.8614113e+03 9.9931091e+02 - -3.1563504e+03 3.7282587e+03 1.0043341e+03 - -3.3026226e+03 3.5899347e+03 1.0074197e+03 - -3.4476154e+03 3.4476154e+03 1.0084605e+03 - -3.5899347e+03 3.3026226e+03 1.0074197e+03 - -3.7282587e+03 3.1563504e+03 1.0043341e+03 - -3.8614113e+03 3.0101866e+03 9.9931091e+02 - -3.9884177e+03 2.8654371e+03 9.9251758e+02 - -4.1085395e+03 2.7232629e+03 9.8416768e+02 - -4.2212856e+03 2.5846366e+03 9.7450412e+02 - -4.3264020e+03 2.4503203e+03 9.6378252e+02 - -4.4238455e+03 2.3208623e+03 9.5225643e+02 - -4.5137477e+03 2.1966110e+03 9.4016576e+02 - -4.5963751e+03 2.0777382e+03 9.2772869e+02 - -4.6720900e+03 1.9642687e+03 9.1513693e+02 - -4.7413157e+03 1.8561115e+03 9.0255393e+02 - -4.8045074e+03 1.7530887e+03 8.9011522e+02 - -4.8621298e+03 1.6549616e+03 8.7793019e+02 - -4.9146396e+03 1.5614525e+03 8.6608478e+02 - -4.9624747e+03 1.4722619e+03 8.5464458e+02 - -5.0060460e+03 1.3870819e+03 8.4365793e+02 - -5.0457339e+03 1.3056059e+03 8.3315896e+02 - -5.0818861e+03 1.2275351e+03 8.2317025e+02 - -5.1148179e+03 1.1525836e+03 8.1370520e+02 - -5.1448130e+03 1.0804806e+03 8.0477010e+02 - -5.1721254e+03 1.0109720e+03 7.9636576e+02 - -5.1969815e+03 9.4382096e+02 7.8848896e+02 - -5.2195823e+03 8.7880738e+02 7.8113351e+02 - -5.2401061e+03 8.1572753e+02 7.7429125e+02 - -5.2587102e+03 7.5439293e+02 7.6795269e+02 - -5.2755334e+03 6.9462928e+02 7.6210759e+02 - -5.2906976e+03 6.3627529e+02 7.5674544e+02 - -5.3043098e+03 5.7918144e+02 7.5185577e+02 - -5.3164635e+03 5.2320878e+02 7.4742841e+02 - -5.3272402e+03 4.6822781e+02 7.4345371e+02 - -5.3367103e+03 4.1411733e+02 7.3992266e+02 - -5.3449342e+03 3.6076342e+02 7.3682703e+02 - -5.3519637e+03 3.0805846e+02 7.3415942e+02 - -5.3578419e+03 2.5590019e+02 7.3191334e+02 - -5.3626045e+03 2.0419086e+02 7.3008327e+02 - -5.3662800e+03 1.5283637e+02 7.2866464e+02 - -5.3688900e+03 1.0174554e+02 7.2765389e+02 - -5.3704500e+03 5.0829296e+01 7.2704847e+02 - -5.3709690e+03 0.0000000e+00 7.2684683e+02 - -5.3704500e+03 -5.0829296e+01 7.2704847e+02 - -5.3688900e+03 -1.0174554e+02 7.2765389e+02 - -5.3662800e+03 -1.5283637e+02 7.2866464e+02 - -5.3626045e+03 -2.0419086e+02 7.3008327e+02 - -5.3578419e+03 -2.5590019e+02 7.3191334e+02 - -5.3519637e+03 -3.0805846e+02 7.3415942e+02 - -5.3449342e+03 -3.6076342e+02 7.3682703e+02 - -5.3367103e+03 -4.1411733e+02 7.3992266e+02 - -5.3272402e+03 -4.6822781e+02 7.4345371e+02 - -5.3164635e+03 -5.2320878e+02 7.4742841e+02 - -5.3043098e+03 -5.7918144e+02 7.5185577e+02 - -5.2906976e+03 -6.3627529e+02 7.5674544e+02 - -5.2755334e+03 -6.9462928e+02 7.6210759e+02 - -5.2587102e+03 -7.5439293e+02 7.6795269e+02 - -5.2401061e+03 -8.1572753e+02 7.7429125e+02 - -5.2195823e+03 -8.7880738e+02 7.8113351e+02 - -5.1969815e+03 -9.4382096e+02 7.8848896e+02 - -5.1721254e+03 -1.0109720e+03 7.9636576e+02 - -5.1448130e+03 -1.0804806e+03 8.0477010e+02 - -5.1148179e+03 -1.1525836e+03 8.1370520e+02 - -5.0818861e+03 -1.2275351e+03 8.2317025e+02 - -5.0457339e+03 -1.3056059e+03 8.3315896e+02 - -5.0060460e+03 -1.3870819e+03 8.4365793e+02 - -4.9624747e+03 -1.4722619e+03 8.5464458e+02 - -4.9146396e+03 -1.5614525e+03 8.6608478e+02 - -4.8621298e+03 -1.6549616e+03 8.7793019e+02 - -4.8045074e+03 -1.7530887e+03 8.9011522e+02 - -4.7413157e+03 -1.8561115e+03 9.0255393e+02 - -4.6720900e+03 -1.9642687e+03 9.1513693e+02 - -4.5963751e+03 -2.0777382e+03 9.2772869e+02 - -4.5137477e+03 -2.1966110e+03 9.4016576e+02 - -4.4238455e+03 -2.3208623e+03 9.5225643e+02 - -4.3264020e+03 -2.4503203e+03 9.6378252e+02 - -4.2212856e+03 -2.5846366e+03 9.7450412e+02 - -4.1085395e+03 -2.7232629e+03 9.8416768e+02 - -3.9884177e+03 -2.8654371e+03 9.9251758e+02 - -3.8614113e+03 -3.0101866e+03 9.9931091e+02 - -3.7282587e+03 -3.1563504e+03 1.0043341e+03 - -3.5899347e+03 -3.3026226e+03 1.0074197e+03 - -3.4476154e+03 -3.4476154e+03 1.0084605e+03 - -3.3026226e+03 -3.5899347e+03 1.0074197e+03 - -3.1563504e+03 -3.7282587e+03 1.0043341e+03 - -3.0101866e+03 -3.8614113e+03 9.9931091e+02 - -2.8654371e+03 -3.9884177e+03 9.9251758e+02 - -2.7232629e+03 -4.1085395e+03 9.8416768e+02 - -2.5846366e+03 -4.2212856e+03 9.7450412e+02 - -2.4503203e+03 -4.3264020e+03 9.6378252e+02 - -2.3208623e+03 -4.4238455e+03 9.5225643e+02 - -2.1966110e+03 -4.5137477e+03 9.4016576e+02 - -2.0777382e+03 -4.5963751e+03 9.2772869e+02 - -1.9642687e+03 -4.6720900e+03 9.1513693e+02 - -1.8561115e+03 -4.7413157e+03 9.0255393e+02 - -1.7530887e+03 -4.8045074e+03 8.9011522e+02 - -1.6549616e+03 -4.8621298e+03 8.7793019e+02 - -1.5614525e+03 -4.9146396e+03 8.6608478e+02 - -1.4722619e+03 -4.9624747e+03 8.5464458e+02 - -1.3870819e+03 -5.0060460e+03 8.4365793e+02 - -1.3056059e+03 -5.0457339e+03 8.3315896e+02 - -1.2275351e+03 -5.0818861e+03 8.2317025e+02 - -1.1525836e+03 -5.1148179e+03 8.1370520e+02 - -1.0804806e+03 -5.1448130e+03 8.0477010e+02 - -1.0109720e+03 -5.1721254e+03 7.9636576e+02 - -9.4382096e+02 -5.1969815e+03 7.8848896e+02 - -8.7880738e+02 -5.2195823e+03 7.8113351e+02 - -8.1572753e+02 -5.2401061e+03 7.7429125e+02 - -7.5439293e+02 -5.2587102e+03 7.6795269e+02 - -6.9462928e+02 -5.2755334e+03 7.6210759e+02 - -6.3627529e+02 -5.2906976e+03 7.5674544e+02 - -5.7918144e+02 -5.3043098e+03 7.5185577e+02 - -5.2320878e+02 -5.3164635e+03 7.4742841e+02 - -4.6822781e+02 -5.3272402e+03 7.4345371e+02 - -4.1411733e+02 -5.3367103e+03 7.3992266e+02 - -3.6076342e+02 -5.3449342e+03 7.3682703e+02 - -3.0805846e+02 -5.3519637e+03 7.3415942e+02 - -2.5590019e+02 -5.3578419e+03 7.3191334e+02 - -2.0419086e+02 -5.3626045e+03 7.3008327e+02 - -1.5283637e+02 -5.3662800e+03 7.2866464e+02 - -1.0174554e+02 -5.3688900e+03 7.2765389e+02 - -5.0829296e+01 -5.3704500e+03 7.2704847e+02 - 0.0000000e+00 -5.3709690e+03 7.2684683e+02 - 5.0829296e+01 -5.3704500e+03 7.2704847e+02 - 1.0174554e+02 -5.3688900e+03 7.2765389e+02 - 1.5283637e+02 -5.3662800e+03 7.2866464e+02 - 2.0419086e+02 -5.3626045e+03 7.3008327e+02 - 2.5590019e+02 -5.3578419e+03 7.3191334e+02 - 3.0805846e+02 -5.3519637e+03 7.3415942e+02 - 3.6076342e+02 -5.3449342e+03 7.3682703e+02 - 4.1411733e+02 -5.3367103e+03 7.3992266e+02 - 4.6822781e+02 -5.3272402e+03 7.4345371e+02 - 5.2320878e+02 -5.3164635e+03 7.4742841e+02 - 5.7918144e+02 -5.3043098e+03 7.5185577e+02 - 6.3627529e+02 -5.2906976e+03 7.5674544e+02 - 6.9462928e+02 -5.2755334e+03 7.6210759e+02 - 7.5439293e+02 -5.2587102e+03 7.6795269e+02 - 8.1572753e+02 -5.2401061e+03 7.7429125e+02 - 8.7880738e+02 -5.2195823e+03 7.8113351e+02 - 9.4382096e+02 -5.1969815e+03 7.8848896e+02 - 1.0109720e+03 -5.1721254e+03 7.9636576e+02 - 1.0804806e+03 -5.1448130e+03 8.0477010e+02 - 1.1525836e+03 -5.1148179e+03 8.1370520e+02 - 1.2275351e+03 -5.0818861e+03 8.2317025e+02 - 1.3056059e+03 -5.0457339e+03 8.3315896e+02 - 1.3870819e+03 -5.0060460e+03 8.4365793e+02 - 1.4722619e+03 -4.9624747e+03 8.5464458e+02 - 1.5614525e+03 -4.9146396e+03 8.6608478e+02 - 1.6549616e+03 -4.8621298e+03 8.7793019e+02 - 1.7530887e+03 -4.8045074e+03 8.9011522e+02 - 1.8561115e+03 -4.7413157e+03 9.0255393e+02 - 1.9642687e+03 -4.6720900e+03 9.1513693e+02 - 2.0777382e+03 -4.5963751e+03 9.2772869e+02 - 2.1966110e+03 -4.5137477e+03 9.4016576e+02 - 2.3208623e+03 -4.4238455e+03 9.5225643e+02 - 2.4503203e+03 -4.3264020e+03 9.6378252e+02 - 2.5846366e+03 -4.2212856e+03 9.7450412e+02 - 2.7232629e+03 -4.1085395e+03 9.8416768e+02 - 2.8654371e+03 -3.9884177e+03 9.9251758e+02 - 3.0101866e+03 -3.8614113e+03 9.9931091e+02 - 3.1563504e+03 -3.7282587e+03 1.0043341e+03 - 3.3026226e+03 -3.5899347e+03 1.0074197e+03 - 3.4476154e+03 -3.4476154e+03 1.0084605e+03 - 3.5899347e+03 -3.3026226e+03 1.0074197e+03 - 3.7282587e+03 -3.1563504e+03 1.0043341e+03 - 3.8614113e+03 -3.0101866e+03 9.9931091e+02 - 3.9884177e+03 -2.8654371e+03 9.9251758e+02 - 4.1085395e+03 -2.7232629e+03 9.8416768e+02 - 4.2212856e+03 -2.5846366e+03 9.7450412e+02 - 4.3264020e+03 -2.4503203e+03 9.6378252e+02 - 4.4238455e+03 -2.3208623e+03 9.5225643e+02 - 4.5137477e+03 -2.1966110e+03 9.4016576e+02 - 4.5963751e+03 -2.0777382e+03 9.2772869e+02 - 4.6720900e+03 -1.9642687e+03 9.1513693e+02 - 4.7413157e+03 -1.8561115e+03 9.0255393e+02 - 4.8045074e+03 -1.7530887e+03 8.9011522e+02 - 4.8621298e+03 -1.6549616e+03 8.7793019e+02 - 4.9146396e+03 -1.5614525e+03 8.6608478e+02 - 4.9624747e+03 -1.4722619e+03 8.5464458e+02 - 5.0060460e+03 -1.3870819e+03 8.4365793e+02 - 5.0457339e+03 -1.3056059e+03 8.3315896e+02 - 5.0818861e+03 -1.2275351e+03 8.2317025e+02 - 5.1148179e+03 -1.1525836e+03 8.1370520e+02 - 5.1448130e+03 -1.0804806e+03 8.0477010e+02 - 5.1721254e+03 -1.0109720e+03 7.9636576e+02 - 5.1969815e+03 -9.4382096e+02 7.8848896e+02 - 5.2195823e+03 -8.7880738e+02 7.8113351e+02 - 5.2401061e+03 -8.1572753e+02 7.7429125e+02 - 5.2587102e+03 -7.5439293e+02 7.6795269e+02 - 5.2755334e+03 -6.9462928e+02 7.6210759e+02 - 5.2906976e+03 -6.3627529e+02 7.5674544e+02 - 5.3043098e+03 -5.7918144e+02 7.5185577e+02 - 5.3164635e+03 -5.2320878e+02 7.4742841e+02 - 5.3272402e+03 -4.6822781e+02 7.4345371e+02 - 5.3367103e+03 -4.1411733e+02 7.3992266e+02 - 5.3449342e+03 -3.6076342e+02 7.3682703e+02 - 5.3519637e+03 -3.0805846e+02 7.3415942e+02 - 5.3578419e+03 -2.5590019e+02 7.3191334e+02 - 5.3626045e+03 -2.0419086e+02 7.3008327e+02 - 5.3662800e+03 -1.5283637e+02 7.2866464e+02 - 5.3688900e+03 -1.0174554e+02 7.2765389e+02 - 5.3704500e+03 -5.0829296e+01 7.2704847e+02 - 5.3709690e+03 0.0000000e+00 7.2684683e+02 - 5.3835453e+03 4.8134273e-09 5.8484192e+02 - 5.3830344e+03 5.0706483e+01 5.8500674e+02 - 5.3814987e+03 1.0149967e+02 5.8550164e+02 - 5.3789293e+03 1.5246698e+02 5.8632792e+02 - 5.3753110e+03 2.0369725e+02 5.8748775e+02 - 5.3706222e+03 2.5528148e+02 5.8898416e+02 - 5.3648348e+03 3.0731358e+02 5.9082101e+02 - 5.3579134e+03 3.5989120e+02 5.9300304e+02 - 5.3498152e+03 4.1311651e+02 5.9553576e+02 - 5.3404891e+03 4.6709712e+02 5.9842550e+02 - 5.3298750e+03 5.2194706e+02 6.0167932e+02 - 5.3179028e+03 5.7778771e+02 6.0530496e+02 - 5.3044917e+03 6.3474892e+02 6.0931076e+02 - 5.2895487e+03 6.9297017e+02 6.1370554e+02 - 5.2729670e+03 7.5260171e+02 6.1849846e+02 - 5.2546252e+03 8.1380589e+02 6.2369878e+02 - 5.2343844e+03 8.7675836e+02 6.2931563e+02 - 5.2120873e+03 9.4164940e+02 6.3535762e+02 - 5.1875553e+03 1.0086851e+03 6.4183241e+02 - 5.1605863e+03 1.0780885e+03 6.4874610e+02 - 5.1309525e+03 1.1501003e+03 6.5610251e+02 - 5.0983977e+03 1.2249791e+03 6.6390224e+02 - 5.0626347e+03 1.3030015e+03 6.7214150e+02 - 5.0233440e+03 1.3844606e+03 6.8081073e+02 - 4.9801714e+03 1.4696635e+03 6.8989285e+02 - 4.9327287e+03 1.5589269e+03 6.9936131e+02 - 4.8805943e+03 1.6525705e+03 7.0917771e+02 - 4.8233178e+03 1.7509071e+03 7.1928929e+02 - 4.7604261e+03 1.8542295e+03 7.2962616e+02 - 4.6914360e+03 1.9627922e+03 7.4009854e+02 - 4.6158703e+03 2.0767897e+03 7.5059438e+02 - 4.5332816e+03 2.1963287e+03 7.6097760e+02 - 4.4432818e+03 2.3213979e+03 7.7108758e+02 - 4.3455792e+03 2.4518350e+03 7.8074051e+02 - 4.2400191e+03 2.5872947e+03 7.8973321e+02 - 4.1266269e+03 2.7272229e+03 7.9784986e+02 - 4.0056471e+03 2.8708415e+03 8.0487203e+02 - 3.8775721e+03 3.0171504e+03 8.1059132e+02 - 3.7431549e+03 3.1649497e+03 8.1482396e+02 - 3.6033981e+03 3.3128860e+03 8.1742543e+02 - 3.4595182e+03 3.4595182e+03 8.1830320e+02 - 3.3128860e+03 3.6033981e+03 8.1742543e+02 - 3.1649497e+03 3.7431549e+03 8.1482396e+02 - 3.0171504e+03 3.8775721e+03 8.1059132e+02 - 2.8708415e+03 4.0056471e+03 8.0487203e+02 - 2.7272229e+03 4.1266269e+03 7.9784986e+02 - 2.5872947e+03 4.2400191e+03 7.8973321e+02 - 2.4518350e+03 4.3455792e+03 7.8074051e+02 - 2.3213979e+03 4.4432818e+03 7.7108758e+02 - 2.1963287e+03 4.5332816e+03 7.6097760e+02 - 2.0767897e+03 4.6158703e+03 7.5059438e+02 - 1.9627922e+03 4.6914360e+03 7.4009854e+02 - 1.8542295e+03 4.7604261e+03 7.2962616e+02 - 1.7509071e+03 4.8233178e+03 7.1928929e+02 - 1.6525705e+03 4.8805943e+03 7.0917771e+02 - 1.5589269e+03 4.9327287e+03 6.9936131e+02 - 1.4696635e+03 4.9801714e+03 6.8989285e+02 - 1.3844606e+03 5.0233440e+03 6.8081073e+02 - 1.3030015e+03 5.0626347e+03 6.7214150e+02 - 1.2249791e+03 5.0983977e+03 6.6390224e+02 - 1.1501003e+03 5.1309525e+03 6.5610251e+02 - 1.0780885e+03 5.1605863e+03 6.4874610e+02 - 1.0086851e+03 5.1875553e+03 6.4183241e+02 - 9.4164940e+02 5.2120873e+03 6.3535762e+02 - 8.7675836e+02 5.2343844e+03 6.2931563e+02 - 8.1380589e+02 5.2546252e+03 6.2369878e+02 - 7.5260171e+02 5.2729670e+03 6.1849846e+02 - 6.9297017e+02 5.2895487e+03 6.1370554e+02 - 6.3474892e+02 5.3044917e+03 6.0931076e+02 - 5.7778771e+02 5.3179028e+03 6.0530496e+02 - 5.2194706e+02 5.3298750e+03 6.0167932e+02 - 4.6709712e+02 5.3404891e+03 5.9842550e+02 - 4.1311651e+02 5.3498152e+03 5.9553576e+02 - 3.5989120e+02 5.3579134e+03 5.9300304e+02 - 3.0731358e+02 5.3648348e+03 5.9082101e+02 - 2.5528148e+02 5.3706222e+03 5.8898416e+02 - 2.0369725e+02 5.3753110e+03 5.8748775e+02 - 1.5246698e+02 5.3789293e+03 5.8632792e+02 - 1.0149967e+02 5.3814987e+03 5.8550164e+02 - 5.0706483e+01 5.3830344e+03 5.8500674e+02 - 0.0000000e+00 5.3835453e+03 5.8484192e+02 - -5.0706483e+01 5.3830344e+03 5.8500674e+02 - -1.0149967e+02 5.3814987e+03 5.8550164e+02 - -1.5246698e+02 5.3789293e+03 5.8632792e+02 - -2.0369725e+02 5.3753110e+03 5.8748775e+02 - -2.5528148e+02 5.3706222e+03 5.8898416e+02 - -3.0731358e+02 5.3648348e+03 5.9082101e+02 - -3.5989120e+02 5.3579134e+03 5.9300304e+02 - -4.1311651e+02 5.3498152e+03 5.9553576e+02 - -4.6709712e+02 5.3404891e+03 5.9842550e+02 - -5.2194706e+02 5.3298750e+03 6.0167932e+02 - -5.7778771e+02 5.3179028e+03 6.0530496e+02 - -6.3474892e+02 5.3044917e+03 6.0931076e+02 - -6.9297017e+02 5.2895487e+03 6.1370554e+02 - -7.5260171e+02 5.2729670e+03 6.1849846e+02 - -8.1380589e+02 5.2546252e+03 6.2369878e+02 - -8.7675836e+02 5.2343844e+03 6.2931563e+02 - -9.4164940e+02 5.2120873e+03 6.3535762e+02 - -1.0086851e+03 5.1875553e+03 6.4183241e+02 - -1.0780885e+03 5.1605863e+03 6.4874610e+02 - -1.1501003e+03 5.1309525e+03 6.5610251e+02 - -1.2249791e+03 5.0983977e+03 6.6390224e+02 - -1.3030015e+03 5.0626347e+03 6.7214150e+02 - -1.3844606e+03 5.0233440e+03 6.8081073e+02 - -1.4696635e+03 4.9801714e+03 6.8989285e+02 - -1.5589269e+03 4.9327287e+03 6.9936131e+02 - -1.6525705e+03 4.8805943e+03 7.0917771e+02 - -1.7509071e+03 4.8233178e+03 7.1928929e+02 - -1.8542295e+03 4.7604261e+03 7.2962616e+02 - -1.9627922e+03 4.6914360e+03 7.4009854e+02 - -2.0767897e+03 4.6158703e+03 7.5059438e+02 - -2.1963287e+03 4.5332816e+03 7.6097760e+02 - -2.3213979e+03 4.4432818e+03 7.7108758e+02 - -2.4518350e+03 4.3455792e+03 7.8074051e+02 - -2.5872947e+03 4.2400191e+03 7.8973321e+02 - -2.7272229e+03 4.1266269e+03 7.9784986e+02 - -2.8708415e+03 4.0056471e+03 8.0487203e+02 - -3.0171504e+03 3.8775721e+03 8.1059132e+02 - -3.1649497e+03 3.7431549e+03 8.1482396e+02 - -3.3128860e+03 3.6033981e+03 8.1742543e+02 - -3.4595182e+03 3.4595182e+03 8.1830320e+02 - -3.6033981e+03 3.3128860e+03 8.1742543e+02 - -3.7431549e+03 3.1649497e+03 8.1482396e+02 - -3.8775721e+03 3.0171504e+03 8.1059132e+02 - -4.0056471e+03 2.8708415e+03 8.0487203e+02 - -4.1266269e+03 2.7272229e+03 7.9784986e+02 - -4.2400191e+03 2.5872947e+03 7.8973321e+02 - -4.3455792e+03 2.4518350e+03 7.8074051e+02 - -4.4432818e+03 2.3213979e+03 7.7108758e+02 - -4.5332816e+03 2.1963287e+03 7.6097760e+02 - -4.6158703e+03 2.0767897e+03 7.5059438e+02 - -4.6914360e+03 1.9627922e+03 7.4009854e+02 - -4.7604261e+03 1.8542295e+03 7.2962616e+02 - -4.8233178e+03 1.7509071e+03 7.1928929e+02 - -4.8805943e+03 1.6525705e+03 7.0917771e+02 - -4.9327287e+03 1.5589269e+03 6.9936131e+02 - -4.9801714e+03 1.4696635e+03 6.8989285e+02 - -5.0233440e+03 1.3844606e+03 6.8081073e+02 - -5.0626347e+03 1.3030015e+03 6.7214150e+02 - -5.0983977e+03 1.2249791e+03 6.6390224e+02 - -5.1309525e+03 1.1501003e+03 6.5610251e+02 - -5.1605863e+03 1.0780885e+03 6.4874610e+02 - -5.1875553e+03 1.0086851e+03 6.4183241e+02 - -5.2120873e+03 9.4164940e+02 6.3535762e+02 - -5.2343844e+03 8.7675836e+02 6.2931563e+02 - -5.2546252e+03 8.1380589e+02 6.2369878e+02 - -5.2729670e+03 7.5260171e+02 6.1849846e+02 - -5.2895487e+03 6.9297017e+02 6.1370554e+02 - -5.3044917e+03 6.3474892e+02 6.0931076e+02 - -5.3179028e+03 5.7778771e+02 6.0530496e+02 - -5.3298750e+03 5.2194706e+02 6.0167932e+02 - -5.3404891e+03 4.6709712e+02 5.9842550e+02 - -5.3498152e+03 4.1311651e+02 5.9553576e+02 - -5.3579134e+03 3.5989120e+02 5.9300304e+02 - -5.3648348e+03 3.0731358e+02 5.9082101e+02 - -5.3706222e+03 2.5528148e+02 5.8898416e+02 - -5.3753110e+03 2.0369725e+02 5.8748775e+02 - -5.3789293e+03 1.5246698e+02 5.8632792e+02 - -5.3814987e+03 1.0149967e+02 5.8550164e+02 - -5.3830344e+03 5.0706483e+01 5.8500674e+02 - -5.3835453e+03 0.0000000e+00 5.8484192e+02 - -5.3830344e+03 -5.0706483e+01 5.8500674e+02 - -5.3814987e+03 -1.0149967e+02 5.8550164e+02 - -5.3789293e+03 -1.5246698e+02 5.8632792e+02 - -5.3753110e+03 -2.0369725e+02 5.8748775e+02 - -5.3706222e+03 -2.5528148e+02 5.8898416e+02 - -5.3648348e+03 -3.0731358e+02 5.9082101e+02 - -5.3579134e+03 -3.5989120e+02 5.9300304e+02 - -5.3498152e+03 -4.1311651e+02 5.9553576e+02 - -5.3404891e+03 -4.6709712e+02 5.9842550e+02 - -5.3298750e+03 -5.2194706e+02 6.0167932e+02 - -5.3179028e+03 -5.7778771e+02 6.0530496e+02 - -5.3044917e+03 -6.3474892e+02 6.0931076e+02 - -5.2895487e+03 -6.9297017e+02 6.1370554e+02 - -5.2729670e+03 -7.5260171e+02 6.1849846e+02 - -5.2546252e+03 -8.1380589e+02 6.2369878e+02 - -5.2343844e+03 -8.7675836e+02 6.2931563e+02 - -5.2120873e+03 -9.4164940e+02 6.3535762e+02 - -5.1875553e+03 -1.0086851e+03 6.4183241e+02 - -5.1605863e+03 -1.0780885e+03 6.4874610e+02 - -5.1309525e+03 -1.1501003e+03 6.5610251e+02 - -5.0983977e+03 -1.2249791e+03 6.6390224e+02 - -5.0626347e+03 -1.3030015e+03 6.7214150e+02 - -5.0233440e+03 -1.3844606e+03 6.8081073e+02 - -4.9801714e+03 -1.4696635e+03 6.8989285e+02 - -4.9327287e+03 -1.5589269e+03 6.9936131e+02 - -4.8805943e+03 -1.6525705e+03 7.0917771e+02 - -4.8233178e+03 -1.7509071e+03 7.1928929e+02 - -4.7604261e+03 -1.8542295e+03 7.2962616e+02 - -4.6914360e+03 -1.9627922e+03 7.4009854e+02 - -4.6158703e+03 -2.0767897e+03 7.5059438e+02 - -4.5332816e+03 -2.1963287e+03 7.6097760e+02 - -4.4432818e+03 -2.3213979e+03 7.7108758e+02 - -4.3455792e+03 -2.4518350e+03 7.8074051e+02 - -4.2400191e+03 -2.5872947e+03 7.8973321e+02 - -4.1266269e+03 -2.7272229e+03 7.9784986e+02 - -4.0056471e+03 -2.8708415e+03 8.0487203e+02 - -3.8775721e+03 -3.0171504e+03 8.1059132e+02 - -3.7431549e+03 -3.1649497e+03 8.1482396e+02 - -3.6033981e+03 -3.3128860e+03 8.1742543e+02 - -3.4595182e+03 -3.4595182e+03 8.1830320e+02 - -3.3128860e+03 -3.6033981e+03 8.1742543e+02 - -3.1649497e+03 -3.7431549e+03 8.1482396e+02 - -3.0171504e+03 -3.8775721e+03 8.1059132e+02 - -2.8708415e+03 -4.0056471e+03 8.0487203e+02 - -2.7272229e+03 -4.1266269e+03 7.9784986e+02 - -2.5872947e+03 -4.2400191e+03 7.8973321e+02 - -2.4518350e+03 -4.3455792e+03 7.8074051e+02 - -2.3213979e+03 -4.4432818e+03 7.7108758e+02 - -2.1963287e+03 -4.5332816e+03 7.6097760e+02 - -2.0767897e+03 -4.6158703e+03 7.5059438e+02 - -1.9627922e+03 -4.6914360e+03 7.4009854e+02 - -1.8542295e+03 -4.7604261e+03 7.2962616e+02 - -1.7509071e+03 -4.8233178e+03 7.1928929e+02 - -1.6525705e+03 -4.8805943e+03 7.0917771e+02 - -1.5589269e+03 -4.9327287e+03 6.9936131e+02 - -1.4696635e+03 -4.9801714e+03 6.8989285e+02 - -1.3844606e+03 -5.0233440e+03 6.8081073e+02 - -1.3030015e+03 -5.0626347e+03 6.7214150e+02 - -1.2249791e+03 -5.0983977e+03 6.6390224e+02 - -1.1501003e+03 -5.1309525e+03 6.5610251e+02 - -1.0780885e+03 -5.1605863e+03 6.4874610e+02 - -1.0086851e+03 -5.1875553e+03 6.4183241e+02 - -9.4164940e+02 -5.2120873e+03 6.3535762e+02 - -8.7675836e+02 -5.2343844e+03 6.2931563e+02 - -8.1380589e+02 -5.2546252e+03 6.2369878e+02 - -7.5260171e+02 -5.2729670e+03 6.1849846e+02 - -6.9297017e+02 -5.2895487e+03 6.1370554e+02 - -6.3474892e+02 -5.3044917e+03 6.0931076e+02 - -5.7778771e+02 -5.3179028e+03 6.0530496e+02 - -5.2194706e+02 -5.3298750e+03 6.0167932e+02 - -4.6709712e+02 -5.3404891e+03 5.9842550e+02 - -4.1311651e+02 -5.3498152e+03 5.9553576e+02 - -3.5989120e+02 -5.3579134e+03 5.9300304e+02 - -3.0731358e+02 -5.3648348e+03 5.9082101e+02 - -2.5528148e+02 -5.3706222e+03 5.8898416e+02 - -2.0369725e+02 -5.3753110e+03 5.8748775e+02 - -1.5246698e+02 -5.3789293e+03 5.8632792e+02 - -1.0149967e+02 -5.3814987e+03 5.8550164e+02 - -5.0706483e+01 -5.3830344e+03 5.8500674e+02 - 0.0000000e+00 -5.3835453e+03 5.8484192e+02 - 5.0706483e+01 -5.3830344e+03 5.8500674e+02 - 1.0149967e+02 -5.3814987e+03 5.8550164e+02 - 1.5246698e+02 -5.3789293e+03 5.8632792e+02 - 2.0369725e+02 -5.3753110e+03 5.8748775e+02 - 2.5528148e+02 -5.3706222e+03 5.8898416e+02 - 3.0731358e+02 -5.3648348e+03 5.9082101e+02 - 3.5989120e+02 -5.3579134e+03 5.9300304e+02 - 4.1311651e+02 -5.3498152e+03 5.9553576e+02 - 4.6709712e+02 -5.3404891e+03 5.9842550e+02 - 5.2194706e+02 -5.3298750e+03 6.0167932e+02 - 5.7778771e+02 -5.3179028e+03 6.0530496e+02 - 6.3474892e+02 -5.3044917e+03 6.0931076e+02 - 6.9297017e+02 -5.2895487e+03 6.1370554e+02 - 7.5260171e+02 -5.2729670e+03 6.1849846e+02 - 8.1380589e+02 -5.2546252e+03 6.2369878e+02 - 8.7675836e+02 -5.2343844e+03 6.2931563e+02 - 9.4164940e+02 -5.2120873e+03 6.3535762e+02 - 1.0086851e+03 -5.1875553e+03 6.4183241e+02 - 1.0780885e+03 -5.1605863e+03 6.4874610e+02 - 1.1501003e+03 -5.1309525e+03 6.5610251e+02 - 1.2249791e+03 -5.0983977e+03 6.6390224e+02 - 1.3030015e+03 -5.0626347e+03 6.7214150e+02 - 1.3844606e+03 -5.0233440e+03 6.8081073e+02 - 1.4696635e+03 -4.9801714e+03 6.8989285e+02 - 1.5589269e+03 -4.9327287e+03 6.9936131e+02 - 1.6525705e+03 -4.8805943e+03 7.0917771e+02 - 1.7509071e+03 -4.8233178e+03 7.1928929e+02 - 1.8542295e+03 -4.7604261e+03 7.2962616e+02 - 1.9627922e+03 -4.6914360e+03 7.4009854e+02 - 2.0767897e+03 -4.6158703e+03 7.5059438e+02 - 2.1963287e+03 -4.5332816e+03 7.6097760e+02 - 2.3213979e+03 -4.4432818e+03 7.7108758e+02 - 2.4518350e+03 -4.3455792e+03 7.8074051e+02 - 2.5872947e+03 -4.2400191e+03 7.8973321e+02 - 2.7272229e+03 -4.1266269e+03 7.9784986e+02 - 2.8708415e+03 -4.0056471e+03 8.0487203e+02 - 3.0171504e+03 -3.8775721e+03 8.1059132e+02 - 3.1649497e+03 -3.7431549e+03 8.1482396e+02 - 3.3128860e+03 -3.6033981e+03 8.1742543e+02 - 3.4595182e+03 -3.4595182e+03 8.1830320e+02 - 3.6033981e+03 -3.3128860e+03 8.1742543e+02 - 3.7431549e+03 -3.1649497e+03 8.1482396e+02 - 3.8775721e+03 -3.0171504e+03 8.1059132e+02 - 4.0056471e+03 -2.8708415e+03 8.0487203e+02 - 4.1266269e+03 -2.7272229e+03 7.9784986e+02 - 4.2400191e+03 -2.5872947e+03 7.8973321e+02 - 4.3455792e+03 -2.4518350e+03 7.8074051e+02 - 4.4432818e+03 -2.3213979e+03 7.7108758e+02 - 4.5332816e+03 -2.1963287e+03 7.6097760e+02 - 4.6158703e+03 -2.0767897e+03 7.5059438e+02 - 4.6914360e+03 -1.9627922e+03 7.4009854e+02 - 4.7604261e+03 -1.8542295e+03 7.2962616e+02 - 4.8233178e+03 -1.7509071e+03 7.1928929e+02 - 4.8805943e+03 -1.6525705e+03 7.0917771e+02 - 4.9327287e+03 -1.5589269e+03 6.9936131e+02 - 4.9801714e+03 -1.4696635e+03 6.8989285e+02 - 5.0233440e+03 -1.3844606e+03 6.8081073e+02 - 5.0626347e+03 -1.3030015e+03 6.7214150e+02 - 5.0983977e+03 -1.2249791e+03 6.6390224e+02 - 5.1309525e+03 -1.1501003e+03 6.5610251e+02 - 5.1605863e+03 -1.0780885e+03 6.4874610e+02 - 5.1875553e+03 -1.0086851e+03 6.4183241e+02 - 5.2120873e+03 -9.4164940e+02 6.3535762e+02 - 5.2343844e+03 -8.7675836e+02 6.2931563e+02 - 5.2546252e+03 -8.1380589e+02 6.2369878e+02 - 5.2729670e+03 -7.5260171e+02 6.1849846e+02 - 5.2895487e+03 -6.9297017e+02 6.1370554e+02 - 5.3044917e+03 -6.3474892e+02 6.0931076e+02 - 5.3179028e+03 -5.7778771e+02 6.0530496e+02 - 5.3298750e+03 -5.2194706e+02 6.0167932e+02 - 5.3404891e+03 -4.6709712e+02 5.9842550e+02 - 5.3498152e+03 -4.1311651e+02 5.9553576e+02 - 5.3579134e+03 -3.5989120e+02 5.9300304e+02 - 5.3648348e+03 -3.0731358e+02 5.9082101e+02 - 5.3706222e+03 -2.5528148e+02 5.8898416e+02 - 5.3753110e+03 -2.0369725e+02 5.8748775e+02 - 5.3789293e+03 -1.5246698e+02 5.8632792e+02 - 5.3814987e+03 -1.0149967e+02 5.8550164e+02 - 5.3830344e+03 -5.0706483e+01 5.8500674e+02 - 5.3835453e+03 4.8134273e-09 5.8484192e+02 - 5.3934684e+03 -4.8134273e-09 4.4063321e+02 - 5.3929640e+03 5.0609051e+01 4.4075895e+02 - 5.3914479e+03 1.0130461e+02 4.4113649e+02 - 5.3889112e+03 1.5217389e+02 4.4176686e+02 - 5.3853388e+03 2.0330555e+02 4.4265177e+02 - 5.3807095e+03 2.5479041e+02 4.4379358e+02 - 5.3749952e+03 3.0672226e+02 4.4519536e+02 - 5.3681609e+03 3.5919860e+02 4.4686080e+02 - 5.3601642e+03 4.1232155e+02 4.4879428e+02 - 5.3509542e+03 4.6619871e+02 4.5100078e+02 - 5.3404712e+03 5.2094413e+02 4.5348589e+02 - 5.3286458e+03 5.7667934e+02 4.5625575e+02 - 5.3153973e+03 6.3353446e+02 4.5931699e+02 - 5.3006332e+03 6.9164934e+02 4.6267667e+02 - 5.2842473e+03 7.5117481e+02 4.6634212e+02 - 5.2661181e+03 8.1227399e+02 4.7032084e+02 - 5.2461072e+03 8.7512362e+02 4.7462025e+02 - 5.2240572e+03 9.3991538e+02 4.7924746e+02 - 5.1997892e+03 1.0068572e+03 4.8420892e+02 - 5.1731007e+03 1.0761744e+03 4.8950994e+02 - 5.1437626e+03 1.1481107e+03 4.9515417e+02 - 5.1115171e+03 1.2229284e+03 5.0114287e+02 - 5.0760746e+03 1.3009088e+03 5.0747400e+02 - 5.0371119e+03 1.3823504e+03 5.1414115e+02 - 4.9942701e+03 1.4675673e+03 5.2113218e+02 - 4.9471546e+03 1.5568843e+03 5.2842769e+02 - 4.8953357e+03 1.6506305e+03 5.3599916e+02 - 4.8383522e+03 1.7491299e+03 5.4380690e+02 - 4.7757185e+03 1.8526874e+03 5.5179786e+02 - 4.7069359e+03 1.9615707e+03 5.5990341e+02 - 4.6315093e+03 2.0759879e+03 5.6803732e+02 - 4.5489711e+03 2.1960591e+03 5.7609428e+02 - 4.4589121e+03 2.3217845e+03 5.8394937e+02 - 4.3610191e+03 2.4530097e+03 5.9145893e+02 - 4.2551178e+03 2.5893925e+03 5.9846348e+02 - 4.1412182e+03 2.7303746e+03 6.0479297e+02 - 4.0195561e+03 2.8751650e+03 6.1027467e+02 - 3.8906245e+03 3.0227408e+03 6.1474329e+02 - 3.7551876e+03 3.1718702e+03 6.1805268e+02 - 3.6142711e+03 3.3211599e+03 6.2008769e+02 - 3.4691245e+03 3.4691245e+03 6.2077451e+02 - 3.3211599e+03 3.6142711e+03 6.2008769e+02 - 3.1718702e+03 3.7551876e+03 6.1805268e+02 - 3.0227408e+03 3.8906245e+03 6.1474329e+02 - 2.8751650e+03 4.0195561e+03 6.1027467e+02 - 2.7303746e+03 4.1412182e+03 6.0479297e+02 - 2.5893925e+03 4.2551178e+03 5.9846348e+02 - 2.4530097e+03 4.3610191e+03 5.9145893e+02 - 2.3217845e+03 4.4589121e+03 5.8394937e+02 - 2.1960591e+03 4.5489711e+03 5.7609428e+02 - 2.0759879e+03 4.6315093e+03 5.6803732e+02 - 1.9615707e+03 4.7069359e+03 5.5990341e+02 - 1.8526874e+03 4.7757185e+03 5.5179786e+02 - 1.7491299e+03 4.8383522e+03 5.4380690e+02 - 1.6506305e+03 4.8953357e+03 5.3599916e+02 - 1.5568843e+03 4.9471546e+03 5.2842769e+02 - 1.4675673e+03 4.9942701e+03 5.2113218e+02 - 1.3823504e+03 5.0371119e+03 5.1414115e+02 - 1.3009088e+03 5.0760746e+03 5.0747400e+02 - 1.2229284e+03 5.1115171e+03 5.0114287e+02 - 1.1481107e+03 5.1437626e+03 4.9515417e+02 - 1.0761744e+03 5.1731007e+03 4.8950994e+02 - 1.0068572e+03 5.1997892e+03 4.8420892e+02 - 9.3991538e+02 5.2240572e+03 4.7924746e+02 - 8.7512362e+02 5.2461072e+03 4.7462025e+02 - 8.1227399e+02 5.2661181e+03 4.7032084e+02 - 7.5117481e+02 5.2842473e+03 4.6634212e+02 - 6.9164934e+02 5.3006332e+03 4.6267667e+02 - 6.3353446e+02 5.3153973e+03 4.5931699e+02 - 5.7667934e+02 5.3286458e+03 4.5625575e+02 - 5.2094413e+02 5.3404712e+03 4.5348589e+02 - 4.6619871e+02 5.3509542e+03 4.5100078e+02 - 4.1232155e+02 5.3601642e+03 4.4879428e+02 - 3.5919860e+02 5.3681609e+03 4.4686080e+02 - 3.0672226e+02 5.3749952e+03 4.4519536e+02 - 2.5479041e+02 5.3807095e+03 4.4379358e+02 - 2.0330555e+02 5.3853388e+03 4.4265177e+02 - 1.5217389e+02 5.3889112e+03 4.4176686e+02 - 1.0130461e+02 5.3914479e+03 4.4113649e+02 - 5.0609051e+01 5.3929640e+03 4.4075895e+02 - -4.8134273e-09 5.3934684e+03 4.4063321e+02 - -5.0609051e+01 5.3929640e+03 4.4075895e+02 - -1.0130461e+02 5.3914479e+03 4.4113649e+02 - -1.5217389e+02 5.3889112e+03 4.4176686e+02 - -2.0330555e+02 5.3853388e+03 4.4265177e+02 - -2.5479041e+02 5.3807095e+03 4.4379358e+02 - -3.0672226e+02 5.3749952e+03 4.4519536e+02 - -3.5919860e+02 5.3681609e+03 4.4686080e+02 - -4.1232155e+02 5.3601642e+03 4.4879428e+02 - -4.6619871e+02 5.3509542e+03 4.5100078e+02 - -5.2094413e+02 5.3404712e+03 4.5348589e+02 - -5.7667934e+02 5.3286458e+03 4.5625575e+02 - -6.3353446e+02 5.3153973e+03 4.5931699e+02 - -6.9164934e+02 5.3006332e+03 4.6267667e+02 - -7.5117481e+02 5.2842473e+03 4.6634212e+02 - -8.1227399e+02 5.2661181e+03 4.7032084e+02 - -8.7512362e+02 5.2461072e+03 4.7462025e+02 - -9.3991538e+02 5.2240572e+03 4.7924746e+02 - -1.0068572e+03 5.1997892e+03 4.8420892e+02 - -1.0761744e+03 5.1731007e+03 4.8950994e+02 - -1.1481107e+03 5.1437626e+03 4.9515417e+02 - -1.2229284e+03 5.1115171e+03 5.0114287e+02 - -1.3009088e+03 5.0760746e+03 5.0747400e+02 - -1.3823504e+03 5.0371119e+03 5.1414115e+02 - -1.4675673e+03 4.9942701e+03 5.2113218e+02 - -1.5568843e+03 4.9471546e+03 5.2842769e+02 - -1.6506305e+03 4.8953357e+03 5.3599916e+02 - -1.7491299e+03 4.8383522e+03 5.4380690e+02 - -1.8526874e+03 4.7757185e+03 5.5179786e+02 - -1.9615707e+03 4.7069359e+03 5.5990341e+02 - -2.0759879e+03 4.6315093e+03 5.6803732e+02 - -2.1960591e+03 4.5489711e+03 5.7609428e+02 - -2.3217845e+03 4.4589121e+03 5.8394937e+02 - -2.4530097e+03 4.3610191e+03 5.9145893e+02 - -2.5893925e+03 4.2551178e+03 5.9846348e+02 - -2.7303746e+03 4.1412182e+03 6.0479297e+02 - -2.8751650e+03 4.0195561e+03 6.1027467e+02 - -3.0227408e+03 3.8906245e+03 6.1474329e+02 - -3.1718702e+03 3.7551876e+03 6.1805268e+02 - -3.3211599e+03 3.6142711e+03 6.2008769e+02 - -3.4691245e+03 3.4691245e+03 6.2077451e+02 - -3.6142711e+03 3.3211599e+03 6.2008769e+02 - -3.7551876e+03 3.1718702e+03 6.1805268e+02 - -3.8906245e+03 3.0227408e+03 6.1474329e+02 - -4.0195561e+03 2.8751650e+03 6.1027467e+02 - -4.1412182e+03 2.7303746e+03 6.0479297e+02 - -4.2551178e+03 2.5893925e+03 5.9846348e+02 - -4.3610191e+03 2.4530097e+03 5.9145893e+02 - -4.4589121e+03 2.3217845e+03 5.8394937e+02 - -4.5489711e+03 2.1960591e+03 5.7609428e+02 - -4.6315093e+03 2.0759879e+03 5.6803732e+02 - -4.7069359e+03 1.9615707e+03 5.5990341e+02 - -4.7757185e+03 1.8526874e+03 5.5179786e+02 - -4.8383522e+03 1.7491299e+03 5.4380690e+02 - -4.8953357e+03 1.6506305e+03 5.3599916e+02 - -4.9471546e+03 1.5568843e+03 5.2842769e+02 - -4.9942701e+03 1.4675673e+03 5.2113218e+02 - -5.0371119e+03 1.3823504e+03 5.1414115e+02 - -5.0760746e+03 1.3009088e+03 5.0747400e+02 - -5.1115171e+03 1.2229284e+03 5.0114287e+02 - -5.1437626e+03 1.1481107e+03 4.9515417e+02 - -5.1731007e+03 1.0761744e+03 4.8950994e+02 - -5.1997892e+03 1.0068572e+03 4.8420892e+02 - -5.2240572e+03 9.3991538e+02 4.7924746e+02 - -5.2461072e+03 8.7512362e+02 4.7462025e+02 - -5.2661181e+03 8.1227399e+02 4.7032084e+02 - -5.2842473e+03 7.5117481e+02 4.6634212e+02 - -5.3006332e+03 6.9164934e+02 4.6267667e+02 - -5.3153973e+03 6.3353446e+02 4.5931699e+02 - -5.3286458e+03 5.7667934e+02 4.5625575e+02 - -5.3404712e+03 5.2094413e+02 4.5348589e+02 - -5.3509542e+03 4.6619871e+02 4.5100078e+02 - -5.3601642e+03 4.1232155e+02 4.4879428e+02 - -5.3681609e+03 3.5919860e+02 4.4686080e+02 - -5.3749952e+03 3.0672226e+02 4.4519536e+02 - -5.3807095e+03 2.5479041e+02 4.4379358e+02 - -5.3853388e+03 2.0330555e+02 4.4265177e+02 - -5.3889112e+03 1.5217389e+02 4.4176686e+02 - -5.3914479e+03 1.0130461e+02 4.4113649e+02 - -5.3929640e+03 5.0609051e+01 4.4075895e+02 - -5.3934684e+03 -9.6268545e-09 4.4063321e+02 - -5.3929640e+03 -5.0609051e+01 4.4075895e+02 - -5.3914479e+03 -1.0130461e+02 4.4113649e+02 - -5.3889112e+03 -1.5217389e+02 4.4176686e+02 - -5.3853388e+03 -2.0330555e+02 4.4265177e+02 - -5.3807095e+03 -2.5479041e+02 4.4379358e+02 - -5.3749952e+03 -3.0672226e+02 4.4519536e+02 - -5.3681609e+03 -3.5919860e+02 4.4686080e+02 - -5.3601642e+03 -4.1232155e+02 4.4879428e+02 - -5.3509542e+03 -4.6619871e+02 4.5100078e+02 - -5.3404712e+03 -5.2094413e+02 4.5348589e+02 - -5.3286458e+03 -5.7667934e+02 4.5625575e+02 - -5.3153973e+03 -6.3353446e+02 4.5931699e+02 - -5.3006332e+03 -6.9164934e+02 4.6267667e+02 - -5.2842473e+03 -7.5117481e+02 4.6634212e+02 - -5.2661181e+03 -8.1227399e+02 4.7032084e+02 - -5.2461072e+03 -8.7512362e+02 4.7462025e+02 - -5.2240572e+03 -9.3991538e+02 4.7924746e+02 - -5.1997892e+03 -1.0068572e+03 4.8420892e+02 - -5.1731007e+03 -1.0761744e+03 4.8950994e+02 - -5.1437626e+03 -1.1481107e+03 4.9515417e+02 - -5.1115171e+03 -1.2229284e+03 5.0114287e+02 - -5.0760746e+03 -1.3009088e+03 5.0747400e+02 - -5.0371119e+03 -1.3823504e+03 5.1414115e+02 - -4.9942701e+03 -1.4675673e+03 5.2113218e+02 - -4.9471546e+03 -1.5568843e+03 5.2842769e+02 - -4.8953357e+03 -1.6506305e+03 5.3599916e+02 - -4.8383522e+03 -1.7491299e+03 5.4380690e+02 - -4.7757185e+03 -1.8526874e+03 5.5179786e+02 - -4.7069359e+03 -1.9615707e+03 5.5990341e+02 - -4.6315093e+03 -2.0759879e+03 5.6803732e+02 - -4.5489711e+03 -2.1960591e+03 5.7609428e+02 - -4.4589121e+03 -2.3217845e+03 5.8394937e+02 - -4.3610191e+03 -2.4530097e+03 5.9145893e+02 - -4.2551178e+03 -2.5893925e+03 5.9846348e+02 - -4.1412182e+03 -2.7303746e+03 6.0479297e+02 - -4.0195561e+03 -2.8751650e+03 6.1027467e+02 - -3.8906245e+03 -3.0227408e+03 6.1474329e+02 - -3.7551876e+03 -3.1718702e+03 6.1805268e+02 - -3.6142711e+03 -3.3211599e+03 6.2008769e+02 - -3.4691245e+03 -3.4691245e+03 6.2077451e+02 - -3.3211599e+03 -3.6142711e+03 6.2008769e+02 - -3.1718702e+03 -3.7551876e+03 6.1805268e+02 - -3.0227408e+03 -3.8906245e+03 6.1474329e+02 - -2.8751650e+03 -4.0195561e+03 6.1027467e+02 - -2.7303746e+03 -4.1412182e+03 6.0479297e+02 - -2.5893925e+03 -4.2551178e+03 5.9846348e+02 - -2.4530097e+03 -4.3610191e+03 5.9145893e+02 - -2.3217845e+03 -4.4589121e+03 5.8394937e+02 - -2.1960591e+03 -4.5489711e+03 5.7609428e+02 - -2.0759879e+03 -4.6315093e+03 5.6803732e+02 - -1.9615707e+03 -4.7069359e+03 5.5990341e+02 - -1.8526874e+03 -4.7757185e+03 5.5179786e+02 - -1.7491299e+03 -4.8383522e+03 5.4380690e+02 - -1.6506305e+03 -4.8953357e+03 5.3599916e+02 - -1.5568843e+03 -4.9471546e+03 5.2842769e+02 - -1.4675673e+03 -4.9942701e+03 5.2113218e+02 - -1.3823504e+03 -5.0371119e+03 5.1414115e+02 - -1.3009088e+03 -5.0760746e+03 5.0747400e+02 - -1.2229284e+03 -5.1115171e+03 5.0114287e+02 - -1.1481107e+03 -5.1437626e+03 4.9515417e+02 - -1.0761744e+03 -5.1731007e+03 4.8950994e+02 - -1.0068572e+03 -5.1997892e+03 4.8420892e+02 - -9.3991538e+02 -5.2240572e+03 4.7924746e+02 - -8.7512362e+02 -5.2461072e+03 4.7462025e+02 - -8.1227399e+02 -5.2661181e+03 4.7032084e+02 - -7.5117481e+02 -5.2842473e+03 4.6634212e+02 - -6.9164934e+02 -5.3006332e+03 4.6267667e+02 - -6.3353446e+02 -5.3153973e+03 4.5931699e+02 - -5.7667934e+02 -5.3286458e+03 4.5625575e+02 - -5.2094413e+02 -5.3404712e+03 4.5348589e+02 - -4.6619871e+02 -5.3509542e+03 4.5100078e+02 - -4.1232155e+02 -5.3601642e+03 4.4879428e+02 - -3.5919860e+02 -5.3681609e+03 4.4686080e+02 - -3.0672226e+02 -5.3749952e+03 4.4519536e+02 - -2.5479041e+02 -5.3807095e+03 4.4379358e+02 - -2.0330555e+02 -5.3853388e+03 4.4265177e+02 - -1.5217389e+02 -5.3889112e+03 4.4176686e+02 - -1.0130461e+02 -5.3914479e+03 4.4113649e+02 - -5.0609052e+01 -5.3929640e+03 4.4075895e+02 - 4.8134273e-09 -5.3934684e+03 4.4063321e+02 - 5.0609051e+01 -5.3929640e+03 4.4075895e+02 - 1.0130461e+02 -5.3914479e+03 4.4113649e+02 - 1.5217389e+02 -5.3889112e+03 4.4176686e+02 - 2.0330555e+02 -5.3853388e+03 4.4265177e+02 - 2.5479041e+02 -5.3807095e+03 4.4379358e+02 - 3.0672226e+02 -5.3749952e+03 4.4519536e+02 - 3.5919860e+02 -5.3681609e+03 4.4686080e+02 - 4.1232155e+02 -5.3601642e+03 4.4879428e+02 - 4.6619871e+02 -5.3509542e+03 4.5100078e+02 - 5.2094413e+02 -5.3404712e+03 4.5348589e+02 - 5.7667934e+02 -5.3286458e+03 4.5625575e+02 - 6.3353446e+02 -5.3153973e+03 4.5931699e+02 - 6.9164934e+02 -5.3006332e+03 4.6267667e+02 - 7.5117481e+02 -5.2842473e+03 4.6634212e+02 - 8.1227399e+02 -5.2661181e+03 4.7032084e+02 - 8.7512362e+02 -5.2461072e+03 4.7462025e+02 - 9.3991538e+02 -5.2240572e+03 4.7924746e+02 - 1.0068572e+03 -5.1997892e+03 4.8420892e+02 - 1.0761744e+03 -5.1731007e+03 4.8950994e+02 - 1.1481107e+03 -5.1437626e+03 4.9515417e+02 - 1.2229284e+03 -5.1115171e+03 5.0114287e+02 - 1.3009088e+03 -5.0760746e+03 5.0747400e+02 - 1.3823504e+03 -5.0371119e+03 5.1414115e+02 - 1.4675673e+03 -4.9942701e+03 5.2113218e+02 - 1.5568843e+03 -4.9471546e+03 5.2842769e+02 - 1.6506305e+03 -4.8953357e+03 5.3599916e+02 - 1.7491299e+03 -4.8383522e+03 5.4380690e+02 - 1.8526874e+03 -4.7757185e+03 5.5179786e+02 - 1.9615707e+03 -4.7069359e+03 5.5990341e+02 - 2.0759879e+03 -4.6315093e+03 5.6803732e+02 - 2.1960591e+03 -4.5489711e+03 5.7609428e+02 - 2.3217845e+03 -4.4589121e+03 5.8394937e+02 - 2.4530097e+03 -4.3610191e+03 5.9145893e+02 - 2.5893925e+03 -4.2551178e+03 5.9846348e+02 - 2.7303746e+03 -4.1412182e+03 6.0479297e+02 - 2.8751650e+03 -4.0195561e+03 6.1027467e+02 - 3.0227408e+03 -3.8906245e+03 6.1474329e+02 - 3.1718702e+03 -3.7551876e+03 6.1805268e+02 - 3.3211599e+03 -3.6142711e+03 6.2008769e+02 - 3.4691245e+03 -3.4691245e+03 6.2077451e+02 - 3.6142711e+03 -3.3211599e+03 6.2008769e+02 - 3.7551876e+03 -3.1718702e+03 6.1805268e+02 - 3.8906245e+03 -3.0227408e+03 6.1474329e+02 - 4.0195561e+03 -2.8751650e+03 6.1027467e+02 - 4.1412182e+03 -2.7303746e+03 6.0479297e+02 - 4.2551178e+03 -2.5893925e+03 5.9846348e+02 - 4.3610191e+03 -2.4530097e+03 5.9145893e+02 - 4.4589121e+03 -2.3217845e+03 5.8394937e+02 - 4.5489711e+03 -2.1960591e+03 5.7609428e+02 - 4.6315093e+03 -2.0759879e+03 5.6803732e+02 - 4.7069359e+03 -1.9615707e+03 5.5990341e+02 - 4.7757185e+03 -1.8526874e+03 5.5179786e+02 - 4.8383522e+03 -1.7491299e+03 5.4380690e+02 - 4.8953357e+03 -1.6506305e+03 5.3599916e+02 - 4.9471546e+03 -1.5568843e+03 5.2842769e+02 - 4.9942701e+03 -1.4675673e+03 5.2113218e+02 - 5.0371119e+03 -1.3823504e+03 5.1414115e+02 - 5.0760746e+03 -1.3009088e+03 5.0747400e+02 - 5.1115171e+03 -1.2229284e+03 5.0114287e+02 - 5.1437626e+03 -1.1481107e+03 4.9515417e+02 - 5.1731007e+03 -1.0761744e+03 4.8950994e+02 - 5.1997892e+03 -1.0068572e+03 4.8420892e+02 - 5.2240572e+03 -9.3991538e+02 4.7924746e+02 - 5.2461072e+03 -8.7512362e+02 4.7462025e+02 - 5.2661181e+03 -8.1227399e+02 4.7032084e+02 - 5.2842473e+03 -7.5117481e+02 4.6634212e+02 - 5.3006332e+03 -6.9164934e+02 4.6267667e+02 - 5.3153973e+03 -6.3353446e+02 4.5931699e+02 - 5.3286458e+03 -5.7667934e+02 4.5625575e+02 - 5.3404712e+03 -5.2094413e+02 4.5348589e+02 - 5.3509542e+03 -4.6619871e+02 4.5100078e+02 - 5.3601642e+03 -4.1232155e+02 4.4879428e+02 - 5.3681609e+03 -3.5919860e+02 4.4686080e+02 - 5.3749952e+03 -3.0672226e+02 4.4519536e+02 - 5.3807095e+03 -2.5479041e+02 4.4379358e+02 - 5.3853388e+03 -2.0330555e+02 4.4265177e+02 - 5.3889112e+03 -1.5217389e+02 4.4176686e+02 - 5.3914479e+03 -1.0130461e+02 4.4113649e+02 - 5.3929640e+03 -5.0609051e+01 4.4075895e+02 - 5.3934684e+03 1.4440282e-08 4.4063321e+02 - 5.4006343e+03 -4.8134273e-09 2.9472312e+02 - 5.4001347e+03 5.0538406e+01 2.9480797e+02 - 5.3986330e+03 1.0116316e+02 2.9506277e+02 - 5.3961203e+03 1.5196135e+02 2.9548823e+02 - 5.3925816e+03 2.0302147e+02 2.9608551e+02 - 5.3879959e+03 2.5443422e+02 2.9685625e+02 - 5.3823352e+03 3.0629328e+02 2.9780255e+02 - 5.3755649e+03 3.5869605e+02 2.9892698e+02 - 5.3676426e+03 4.1174460e+02 3.0023256e+02 - 5.3585179e+03 4.6554650e+02 3.0172272e+02 - 5.3481313e+03 5.2021583e+02 3.0340134e+02 - 5.3364137e+03 5.7587420e+02 3.0527269e+02 - 5.3232849e+03 6.3265191e+02 3.0734137e+02 - 5.3086525e+03 6.9068907e+02 3.0961229e+02 - 5.2924107e+03 7.5013692e+02 3.1209060e+02 - 5.2744384e+03 8.1115914e+02 3.1478156e+02 - 5.2545972e+03 8.7393321e+02 3.1769040e+02 - 5.2327299e+03 9.3865182e+02 3.2082221e+02 - 5.2086573e+03 1.0055242e+03 3.2418161e+02 - 5.1821766e+03 1.0747774e+03 3.2777255e+02 - 5.1530581e+03 1.1466572e+03 3.3159785e+02 - 5.1210426e+03 1.2214288e+03 3.3565876e+02 - 5.0858390e+03 1.2993765e+03 3.3995433e+02 - 5.0471215e+03 1.3808033e+03 3.4448069e+02 - 5.0045279e+03 1.4660279e+03 3.4923011e+02 - 4.9576588e+03 1.5553814e+03 3.5418993e+02 - 4.9060785e+03 1.6491999e+03 3.5934129e+02 - 4.8493184e+03 1.7478153e+03 3.6465772e+02 - 4.7868833e+03 1.8515417e+03 3.7010357e+02 - 4.7182630e+03 1.9606569e+03 3.7563247e+02 - 4.6429492e+03 2.0753790e+03 3.8118588e+02 - 4.5604594e+03 2.1958383e+03 3.8669198e+02 - 4.4703681e+03 2.3220435e+03 3.9206527e+02 - 4.3723459e+03 2.4538468e+03 3.9720708e+02 - 4.2662036e+03 2.5909082e+03 4.0200750e+02 - 4.1519393e+03 2.7326667e+03 4.0634902e+02 - 4.0297818e+03 2.8783217e+03 4.1011195e+02 - 3.9002240e+03 3.0268335e+03 4.1318148e+02 - 3.7640385e+03 3.1769463e+03 4.1545593e+02 - 3.6222677e+03 3.3272368e+03 4.1685504e+02 - 3.4761862e+03 3.4761862e+03 4.1732734e+02 - 3.3272368e+03 3.6222677e+03 4.1685504e+02 - 3.1769463e+03 3.7640385e+03 4.1545593e+02 - 3.0268335e+03 3.9002240e+03 4.1318148e+02 - 2.8783217e+03 4.0297818e+03 4.1011195e+02 - 2.7326667e+03 4.1519393e+03 4.0634902e+02 - 2.5909082e+03 4.2662036e+03 4.0200750e+02 - 2.4538468e+03 4.3723459e+03 3.9720708e+02 - 2.3220435e+03 4.4703681e+03 3.9206527e+02 - 2.1958383e+03 4.5604594e+03 3.8669198e+02 - 2.0753790e+03 4.6429492e+03 3.8118588e+02 - 1.9606569e+03 4.7182630e+03 3.7563247e+02 - 1.8515417e+03 4.7868833e+03 3.7010357e+02 - 1.7478153e+03 4.8493184e+03 3.6465772e+02 - 1.6491999e+03 4.9060785e+03 3.5934129e+02 - 1.5553814e+03 4.9576588e+03 3.5418993e+02 - 1.4660279e+03 5.0045279e+03 3.4923011e+02 - 1.3808033e+03 5.0471215e+03 3.4448069e+02 - 1.2993765e+03 5.0858390e+03 3.3995433e+02 - 1.2214288e+03 5.1210426e+03 3.3565876e+02 - 1.1466572e+03 5.1530581e+03 3.3159785e+02 - 1.0747774e+03 5.1821766e+03 3.2777255e+02 - 1.0055242e+03 5.2086573e+03 3.2418161e+02 - 9.3865182e+02 5.2327299e+03 3.2082221e+02 - 8.7393321e+02 5.2545972e+03 3.1769040e+02 - 8.1115914e+02 5.2744384e+03 3.1478156e+02 - 7.5013692e+02 5.2924107e+03 3.1209060e+02 - 6.9068907e+02 5.3086525e+03 3.0961229e+02 - 6.3265191e+02 5.3232849e+03 3.0734137e+02 - 5.7587420e+02 5.3364137e+03 3.0527269e+02 - 5.2021583e+02 5.3481313e+03 3.0340134e+02 - 4.6554650e+02 5.3585179e+03 3.0172272e+02 - 4.1174460e+02 5.3676426e+03 3.0023256e+02 - 3.5869605e+02 5.3755649e+03 2.9892698e+02 - 3.0629328e+02 5.3823352e+03 2.9780255e+02 - 2.5443422e+02 5.3879959e+03 2.9685625e+02 - 2.0302147e+02 5.3925816e+03 2.9608551e+02 - 1.5196135e+02 5.3961203e+03 2.9548823e+02 - 1.0116316e+02 5.3986330e+03 2.9506277e+02 - 5.0538406e+01 5.4001347e+03 2.9480797e+02 - -4.8134273e-09 5.4006343e+03 2.9472312e+02 - -5.0538406e+01 5.4001347e+03 2.9480797e+02 - -1.0116316e+02 5.3986330e+03 2.9506277e+02 - -1.5196135e+02 5.3961203e+03 2.9548823e+02 - -2.0302147e+02 5.3925816e+03 2.9608551e+02 - -2.5443422e+02 5.3879959e+03 2.9685625e+02 - -3.0629328e+02 5.3823352e+03 2.9780255e+02 - -3.5869605e+02 5.3755649e+03 2.9892698e+02 - -4.1174460e+02 5.3676426e+03 3.0023256e+02 - -4.6554650e+02 5.3585179e+03 3.0172272e+02 - -5.2021583e+02 5.3481313e+03 3.0340134e+02 - -5.7587420e+02 5.3364137e+03 3.0527269e+02 - -6.3265191e+02 5.3232849e+03 3.0734137e+02 - -6.9068907e+02 5.3086525e+03 3.0961229e+02 - -7.5013692e+02 5.2924107e+03 3.1209060e+02 - -8.1115914e+02 5.2744384e+03 3.1478156e+02 - -8.7393321e+02 5.2545972e+03 3.1769040e+02 - -9.3865182e+02 5.2327299e+03 3.2082221e+02 - -1.0055242e+03 5.2086573e+03 3.2418161e+02 - -1.0747774e+03 5.1821766e+03 3.2777255e+02 - -1.1466572e+03 5.1530581e+03 3.3159785e+02 - -1.2214288e+03 5.1210426e+03 3.3565876e+02 - -1.2993765e+03 5.0858390e+03 3.3995433e+02 - -1.3808033e+03 5.0471215e+03 3.4448069e+02 - -1.4660279e+03 5.0045279e+03 3.4923011e+02 - -1.5553814e+03 4.9576588e+03 3.5418993e+02 - -1.6491999e+03 4.9060785e+03 3.5934129e+02 - -1.7478153e+03 4.8493184e+03 3.6465772e+02 - -1.8515417e+03 4.7868833e+03 3.7010357e+02 - -1.9606569e+03 4.7182630e+03 3.7563247e+02 - -2.0753790e+03 4.6429492e+03 3.8118588e+02 - -2.1958383e+03 4.5604594e+03 3.8669198e+02 - -2.3220435e+03 4.4703681e+03 3.9206527e+02 - -2.4538468e+03 4.3723459e+03 3.9720708e+02 - -2.5909082e+03 4.2662036e+03 4.0200750e+02 - -2.7326667e+03 4.1519393e+03 4.0634902e+02 - -2.8783217e+03 4.0297818e+03 4.1011195e+02 - -3.0268335e+03 3.9002240e+03 4.1318148e+02 - -3.1769463e+03 3.7640385e+03 4.1545593e+02 - -3.3272368e+03 3.6222677e+03 4.1685504e+02 - -3.4761862e+03 3.4761862e+03 4.1732734e+02 - -3.6222677e+03 3.3272368e+03 4.1685504e+02 - -3.7640385e+03 3.1769463e+03 4.1545593e+02 - -3.9002240e+03 3.0268335e+03 4.1318148e+02 - -4.0297818e+03 2.8783217e+03 4.1011195e+02 - -4.1519393e+03 2.7326667e+03 4.0634902e+02 - -4.2662036e+03 2.5909082e+03 4.0200750e+02 - -4.3723459e+03 2.4538468e+03 3.9720708e+02 - -4.4703681e+03 2.3220435e+03 3.9206527e+02 - -4.5604594e+03 2.1958383e+03 3.8669198e+02 - -4.6429492e+03 2.0753790e+03 3.8118588e+02 - -4.7182630e+03 1.9606569e+03 3.7563247e+02 - -4.7868833e+03 1.8515417e+03 3.7010357e+02 - -4.8493184e+03 1.7478153e+03 3.6465772e+02 - -4.9060785e+03 1.6491999e+03 3.5934129e+02 - -4.9576588e+03 1.5553814e+03 3.5418993e+02 - -5.0045279e+03 1.4660279e+03 3.4923011e+02 - -5.0471215e+03 1.3808033e+03 3.4448069e+02 - -5.0858390e+03 1.2993765e+03 3.3995433e+02 - -5.1210426e+03 1.2214288e+03 3.3565876e+02 - -5.1530581e+03 1.1466572e+03 3.3159785e+02 - -5.1821766e+03 1.0747774e+03 3.2777255e+02 - -5.2086573e+03 1.0055242e+03 3.2418161e+02 - -5.2327299e+03 9.3865182e+02 3.2082221e+02 - -5.2545972e+03 8.7393321e+02 3.1769040e+02 - -5.2744384e+03 8.1115914e+02 3.1478156e+02 - -5.2924107e+03 7.5013692e+02 3.1209060e+02 - -5.3086525e+03 6.9068907e+02 3.0961229e+02 - -5.3232849e+03 6.3265191e+02 3.0734137e+02 - -5.3364137e+03 5.7587420e+02 3.0527269e+02 - -5.3481313e+03 5.2021583e+02 3.0340134e+02 - -5.3585179e+03 4.6554650e+02 3.0172272e+02 - -5.3676426e+03 4.1174460e+02 3.0023256e+02 - -5.3755649e+03 3.5869605e+02 2.9892698e+02 - -5.3823352e+03 3.0629328e+02 2.9780255e+02 - -5.3879959e+03 2.5443422e+02 2.9685625e+02 - -5.3925816e+03 2.0302147e+02 2.9608551e+02 - -5.3961203e+03 1.5196135e+02 2.9548823e+02 - -5.3986330e+03 1.0116316e+02 2.9506277e+02 - -5.4001347e+03 5.0538406e+01 2.9480797e+02 - -5.4006343e+03 4.8134273e-09 2.9472312e+02 - -5.4001347e+03 -5.0538406e+01 2.9480797e+02 - -5.3986330e+03 -1.0116316e+02 2.9506277e+02 - -5.3961203e+03 -1.5196135e+02 2.9548823e+02 - -5.3925816e+03 -2.0302147e+02 2.9608551e+02 - -5.3879959e+03 -2.5443422e+02 2.9685625e+02 - -5.3823352e+03 -3.0629328e+02 2.9780255e+02 - -5.3755649e+03 -3.5869605e+02 2.9892698e+02 - -5.3676426e+03 -4.1174460e+02 3.0023256e+02 - -5.3585179e+03 -4.6554650e+02 3.0172272e+02 - -5.3481313e+03 -5.2021583e+02 3.0340134e+02 - -5.3364137e+03 -5.7587420e+02 3.0527269e+02 - -5.3232849e+03 -6.3265191e+02 3.0734137e+02 - -5.3086525e+03 -6.9068907e+02 3.0961229e+02 - -5.2924107e+03 -7.5013692e+02 3.1209060e+02 - -5.2744384e+03 -8.1115914e+02 3.1478156e+02 - -5.2545972e+03 -8.7393321e+02 3.1769040e+02 - -5.2327299e+03 -9.3865182e+02 3.2082221e+02 - -5.2086573e+03 -1.0055242e+03 3.2418161e+02 - -5.1821766e+03 -1.0747774e+03 3.2777255e+02 - -5.1530581e+03 -1.1466572e+03 3.3159785e+02 - -5.1210426e+03 -1.2214288e+03 3.3565876e+02 - -5.0858390e+03 -1.2993765e+03 3.3995433e+02 - -5.0471215e+03 -1.3808033e+03 3.4448069e+02 - -5.0045279e+03 -1.4660279e+03 3.4923011e+02 - -4.9576588e+03 -1.5553814e+03 3.5418993e+02 - -4.9060785e+03 -1.6491999e+03 3.5934129e+02 - -4.8493184e+03 -1.7478153e+03 3.6465772e+02 - -4.7868833e+03 -1.8515417e+03 3.7010357e+02 - -4.7182630e+03 -1.9606569e+03 3.7563247e+02 - -4.6429492e+03 -2.0753790e+03 3.8118588e+02 - -4.5604594e+03 -2.1958383e+03 3.8669198e+02 - -4.4703681e+03 -2.3220435e+03 3.9206527e+02 - -4.3723459e+03 -2.4538468e+03 3.9720708e+02 - -4.2662036e+03 -2.5909082e+03 4.0200750e+02 - -4.1519393e+03 -2.7326667e+03 4.0634902e+02 - -4.0297818e+03 -2.8783217e+03 4.1011195e+02 - -3.9002240e+03 -3.0268335e+03 4.1318148e+02 - -3.7640385e+03 -3.1769463e+03 4.1545593e+02 - -3.6222677e+03 -3.3272368e+03 4.1685504e+02 - -3.4761862e+03 -3.4761862e+03 4.1732734e+02 - -3.3272368e+03 -3.6222677e+03 4.1685504e+02 - -3.1769463e+03 -3.7640385e+03 4.1545593e+02 - -3.0268335e+03 -3.9002240e+03 4.1318148e+02 - -2.8783217e+03 -4.0297818e+03 4.1011195e+02 - -2.7326667e+03 -4.1519393e+03 4.0634902e+02 - -2.5909082e+03 -4.2662036e+03 4.0200750e+02 - -2.4538468e+03 -4.3723459e+03 3.9720708e+02 - -2.3220435e+03 -4.4703681e+03 3.9206527e+02 - -2.1958383e+03 -4.5604594e+03 3.8669198e+02 - -2.0753790e+03 -4.6429492e+03 3.8118588e+02 - -1.9606569e+03 -4.7182630e+03 3.7563247e+02 - -1.8515417e+03 -4.7868833e+03 3.7010357e+02 - -1.7478153e+03 -4.8493184e+03 3.6465772e+02 - -1.6491999e+03 -4.9060785e+03 3.5934129e+02 - -1.5553814e+03 -4.9576588e+03 3.5418993e+02 - -1.4660279e+03 -5.0045279e+03 3.4923011e+02 - -1.3808033e+03 -5.0471215e+03 3.4448069e+02 - -1.2993765e+03 -5.0858390e+03 3.3995433e+02 - -1.2214288e+03 -5.1210426e+03 3.3565876e+02 - -1.1466572e+03 -5.1530581e+03 3.3159785e+02 - -1.0747774e+03 -5.1821766e+03 3.2777255e+02 - -1.0055242e+03 -5.2086573e+03 3.2418161e+02 - -9.3865182e+02 -5.2327299e+03 3.2082221e+02 - -8.7393321e+02 -5.2545972e+03 3.1769040e+02 - -8.1115914e+02 -5.2744384e+03 3.1478156e+02 - -7.5013692e+02 -5.2924107e+03 3.1209060e+02 - -6.9068907e+02 -5.3086525e+03 3.0961229e+02 - -6.3265191e+02 -5.3232849e+03 3.0734137e+02 - -5.7587420e+02 -5.3364137e+03 3.0527269e+02 - -5.2021583e+02 -5.3481313e+03 3.0340134e+02 - -4.6554650e+02 -5.3585179e+03 3.0172272e+02 - -4.1174460e+02 -5.3676426e+03 3.0023256e+02 - -3.5869605e+02 -5.3755649e+03 2.9892698e+02 - -3.0629328e+02 -5.3823352e+03 2.9780255e+02 - -2.5443422e+02 -5.3879959e+03 2.9685625e+02 - -2.0302147e+02 -5.3925816e+03 2.9608551e+02 - -1.5196135e+02 -5.3961203e+03 2.9548823e+02 - -1.0116316e+02 -5.3986330e+03 2.9506277e+02 - -5.0538406e+01 -5.4001347e+03 2.9480797e+02 - -9.6268545e-09 -5.4006343e+03 2.9472312e+02 - 5.0538406e+01 -5.4001347e+03 2.9480797e+02 - 1.0116316e+02 -5.3986330e+03 2.9506277e+02 - 1.5196135e+02 -5.3961203e+03 2.9548823e+02 - 2.0302147e+02 -5.3925816e+03 2.9608551e+02 - 2.5443422e+02 -5.3879959e+03 2.9685625e+02 - 3.0629328e+02 -5.3823352e+03 2.9780255e+02 - 3.5869605e+02 -5.3755649e+03 2.9892698e+02 - 4.1174460e+02 -5.3676426e+03 3.0023256e+02 - 4.6554650e+02 -5.3585179e+03 3.0172272e+02 - 5.2021583e+02 -5.3481313e+03 3.0340134e+02 - 5.7587420e+02 -5.3364137e+03 3.0527269e+02 - 6.3265191e+02 -5.3232849e+03 3.0734137e+02 - 6.9068907e+02 -5.3086525e+03 3.0961229e+02 - 7.5013692e+02 -5.2924107e+03 3.1209060e+02 - 8.1115914e+02 -5.2744384e+03 3.1478156e+02 - 8.7393321e+02 -5.2545972e+03 3.1769040e+02 - 9.3865182e+02 -5.2327299e+03 3.2082221e+02 - 1.0055242e+03 -5.2086573e+03 3.2418161e+02 - 1.0747774e+03 -5.1821766e+03 3.2777255e+02 - 1.1466572e+03 -5.1530581e+03 3.3159785e+02 - 1.2214288e+03 -5.1210426e+03 3.3565876e+02 - 1.2993765e+03 -5.0858390e+03 3.3995433e+02 - 1.3808033e+03 -5.0471215e+03 3.4448069e+02 - 1.4660279e+03 -5.0045279e+03 3.4923011e+02 - 1.5553814e+03 -4.9576588e+03 3.5418993e+02 - 1.6491999e+03 -4.9060785e+03 3.5934129e+02 - 1.7478153e+03 -4.8493184e+03 3.6465772e+02 - 1.8515417e+03 -4.7868833e+03 3.7010357e+02 - 1.9606569e+03 -4.7182630e+03 3.7563247e+02 - 2.0753790e+03 -4.6429492e+03 3.8118588e+02 - 2.1958383e+03 -4.5604594e+03 3.8669198e+02 - 2.3220435e+03 -4.4703681e+03 3.9206527e+02 - 2.4538468e+03 -4.3723459e+03 3.9720708e+02 - 2.5909082e+03 -4.2662036e+03 4.0200750e+02 - 2.7326667e+03 -4.1519393e+03 4.0634902e+02 - 2.8783217e+03 -4.0297818e+03 4.1011195e+02 - 3.0268335e+03 -3.9002240e+03 4.1318148e+02 - 3.1769463e+03 -3.7640385e+03 4.1545593e+02 - 3.3272368e+03 -3.6222677e+03 4.1685504e+02 - 3.4761862e+03 -3.4761862e+03 4.1732734e+02 - 3.6222677e+03 -3.3272368e+03 4.1685504e+02 - 3.7640385e+03 -3.1769463e+03 4.1545593e+02 - 3.9002240e+03 -3.0268335e+03 4.1318148e+02 - 4.0297818e+03 -2.8783217e+03 4.1011195e+02 - 4.1519393e+03 -2.7326667e+03 4.0634902e+02 - 4.2662036e+03 -2.5909082e+03 4.0200750e+02 - 4.3723459e+03 -2.4538468e+03 3.9720708e+02 - 4.4703681e+03 -2.3220435e+03 3.9206527e+02 - 4.5604594e+03 -2.1958383e+03 3.8669198e+02 - 4.6429492e+03 -2.0753790e+03 3.8118588e+02 - 4.7182630e+03 -1.9606569e+03 3.7563247e+02 - 4.7868833e+03 -1.8515417e+03 3.7010357e+02 - 4.8493184e+03 -1.7478153e+03 3.6465772e+02 - 4.9060785e+03 -1.6491999e+03 3.5934129e+02 - 4.9576588e+03 -1.5553814e+03 3.5418993e+02 - 5.0045279e+03 -1.4660279e+03 3.4923011e+02 - 5.0471215e+03 -1.3808033e+03 3.4448069e+02 - 5.0858390e+03 -1.2993765e+03 3.3995433e+02 - 5.1210426e+03 -1.2214288e+03 3.3565876e+02 - 5.1530581e+03 -1.1466572e+03 3.3159785e+02 - 5.1821766e+03 -1.0747774e+03 3.2777255e+02 - 5.2086573e+03 -1.0055242e+03 3.2418161e+02 - 5.2327299e+03 -9.3865182e+02 3.2082221e+02 - 5.2545972e+03 -8.7393321e+02 3.1769040e+02 - 5.2744384e+03 -8.1115914e+02 3.1478156e+02 - 5.2924107e+03 -7.5013692e+02 3.1209060e+02 - 5.3086525e+03 -6.9068907e+02 3.0961229e+02 - 5.3232849e+03 -6.3265191e+02 3.0734137e+02 - 5.3364137e+03 -5.7587420e+02 3.0527269e+02 - 5.3481313e+03 -5.2021583e+02 3.0340134e+02 - 5.3585179e+03 -4.6554650e+02 3.0172272e+02 - 5.3676426e+03 -4.1174460e+02 3.0023256e+02 - 5.3755649e+03 -3.5869605e+02 2.9892698e+02 - 5.3823352e+03 -3.0629328e+02 2.9780255e+02 - 5.3879959e+03 -2.5443422e+02 2.9685625e+02 - 5.3925816e+03 -2.0302147e+02 2.9608551e+02 - 5.3961203e+03 -1.5196135e+02 2.9548823e+02 - 5.3986330e+03 -1.0116316e+02 2.9506277e+02 - 5.4001347e+03 -5.0538406e+01 2.9480797e+02 - 5.4006343e+03 4.8134273e-09 2.9472312e+02 - 5.4049658e+03 -4.8134273e-09 1.4765479e+02 - 5.4044691e+03 5.0495588e+01 1.4769754e+02 - 5.4029762e+03 1.0107744e+02 1.4782589e+02 - 5.4004781e+03 1.5183252e+02 1.4804020e+02 - 5.3969600e+03 2.0284927e+02 1.4834108e+02 - 5.3924009e+03 2.5421829e+02 1.4872936e+02 - 5.3867730e+03 3.0603319e+02 1.4920611e+02 - 5.3800417e+03 3.5839133e+02 1.4977264e+02 - 5.3721649e+03 4.1139470e+02 1.5043049e+02 - 5.3630923e+03 4.6515089e+02 1.5118143e+02 - 5.3527647e+03 5.1977397e+02 1.5202742e+02 - 5.3411131e+03 5.7538562e+02 1.5297066e+02 - 5.3280574e+03 6.3211621e+02 1.5401351e+02 - 5.3135057e+03 6.9010603e+02 1.5515850e+02 - 5.2973523e+03 7.4950655e+02 1.5640826e+02 - 5.2794761e+03 8.1048177e+02 1.5776550e+02 - 5.2597391e+03 8.7320963e+02 1.5923296e+02 - 5.2379838e+03 9.3788344e+02 1.6081325e+02 - 5.2140313e+03 1.0047132e+03 1.6250882e+02 - 5.1876784e+03 1.0739270e+03 1.6432174e+02 - 5.1586951e+03 1.1457719e+03 1.6625356e+02 - 5.1268215e+03 1.2205146e+03 1.6830502e+02 - 5.0917655e+03 1.2984417e+03 1.7047579e+02 - 5.0531997e+03 1.3798585e+03 1.7276406e+02 - 5.0107599e+03 1.4650870e+03 1.7516608e+02 - 4.9640440e+03 1.5544616e+03 1.7767560e+02 - 4.9126126e+03 1.6483229e+03 1.8028326e+02 - 4.8559924e+03 1.7470078e+03 1.8297582e+02 - 4.7936825e+03 1.8508360e+03 1.8573538e+02 - 4.7251656e+03 1.9600914e+03 1.8853856e+02 - 4.6499253e+03 2.0749986e+03 1.9135577e+02 - 4.5674697e+03 2.1956939e+03 1.9415062e+02 - 4.4773633e+03 2.3221917e+03 1.9687967e+02 - 4.3792667e+03 2.4543481e+03 1.9949268e+02 - 4.2729812e+03 2.5918249e+03 2.0193358e+02 - 4.1584972e+03 2.7340591e+03 2.0414232e+02 - 4.0360392e+03 2.8802446e+03 2.0605761e+02 - 3.9060999e+03 3.0293310e+03 2.0762062e+02 - 3.7694567e+03 3.1800478e+03 2.0877914e+02 - 3.6271624e+03 3.3309531e+03 2.0949197e+02 - 3.4805073e+03 3.4805073e+03 2.0973262e+02 - 3.3309531e+03 3.6271624e+03 2.0949197e+02 - 3.1800478e+03 3.7694567e+03 2.0877914e+02 - 3.0293310e+03 3.9060999e+03 2.0762062e+02 - 2.8802446e+03 4.0360392e+03 2.0605761e+02 - 2.7340591e+03 4.1584972e+03 2.0414232e+02 - 2.5918249e+03 4.2729812e+03 2.0193358e+02 - 2.4543481e+03 4.3792667e+03 1.9949268e+02 - 2.3221917e+03 4.4773633e+03 1.9687967e+02 - 2.1956939e+03 4.5674697e+03 1.9415062e+02 - 2.0749986e+03 4.6499253e+03 1.9135577e+02 - 1.9600914e+03 4.7251656e+03 1.8853856e+02 - 1.8508360e+03 4.7936825e+03 1.8573538e+02 - 1.7470078e+03 4.8559924e+03 1.8297582e+02 - 1.6483229e+03 4.9126126e+03 1.8028326e+02 - 1.5544616e+03 4.9640440e+03 1.7767560e+02 - 1.4650870e+03 5.0107599e+03 1.7516608e+02 - 1.3798585e+03 5.0531997e+03 1.7276406e+02 - 1.2984417e+03 5.0917655e+03 1.7047579e+02 - 1.2205146e+03 5.1268215e+03 1.6830502e+02 - 1.1457719e+03 5.1586951e+03 1.6625356e+02 - 1.0739270e+03 5.1876784e+03 1.6432174e+02 - 1.0047132e+03 5.2140313e+03 1.6250882e+02 - 9.3788344e+02 5.2379838e+03 1.6081325e+02 - 8.7320963e+02 5.2597391e+03 1.5923296e+02 - 8.1048177e+02 5.2794761e+03 1.5776550e+02 - 7.4950655e+02 5.2973523e+03 1.5640826e+02 - 6.9010603e+02 5.3135057e+03 1.5515850e+02 - 6.3211621e+02 5.3280574e+03 1.5401351e+02 - 5.7538562e+02 5.3411131e+03 1.5297066e+02 - 5.1977397e+02 5.3527647e+03 1.5202742e+02 - 4.6515089e+02 5.3630923e+03 1.5118143e+02 - 4.1139470e+02 5.3721649e+03 1.5043049e+02 - 3.5839133e+02 5.3800417e+03 1.4977264e+02 - 3.0603319e+02 5.3867730e+03 1.4920611e+02 - 2.5421829e+02 5.3924009e+03 1.4872936e+02 - 2.0284927e+02 5.3969600e+03 1.4834108e+02 - 1.5183252e+02 5.4004781e+03 1.4804020e+02 - 1.0107744e+02 5.4029762e+03 1.4782589e+02 - 5.0495588e+01 5.4044691e+03 1.4769754e+02 - 0.0000000e+00 5.4049658e+03 1.4765479e+02 - -5.0495588e+01 5.4044691e+03 1.4769754e+02 - -1.0107744e+02 5.4029762e+03 1.4782589e+02 - -1.5183252e+02 5.4004781e+03 1.4804020e+02 - -2.0284927e+02 5.3969600e+03 1.4834108e+02 - -2.5421829e+02 5.3924009e+03 1.4872936e+02 - -3.0603319e+02 5.3867730e+03 1.4920611e+02 - -3.5839133e+02 5.3800417e+03 1.4977264e+02 - -4.1139470e+02 5.3721649e+03 1.5043049e+02 - -4.6515089e+02 5.3630923e+03 1.5118143e+02 - -5.1977397e+02 5.3527647e+03 1.5202742e+02 - -5.7538562e+02 5.3411131e+03 1.5297066e+02 - -6.3211621e+02 5.3280574e+03 1.5401351e+02 - -6.9010603e+02 5.3135057e+03 1.5515850e+02 - -7.4950655e+02 5.2973523e+03 1.5640826e+02 - -8.1048177e+02 5.2794761e+03 1.5776550e+02 - -8.7320963e+02 5.2597391e+03 1.5923296e+02 - -9.3788344e+02 5.2379838e+03 1.6081325e+02 - -1.0047132e+03 5.2140313e+03 1.6250882e+02 - -1.0739270e+03 5.1876784e+03 1.6432174e+02 - -1.1457719e+03 5.1586951e+03 1.6625356e+02 - -1.2205146e+03 5.1268215e+03 1.6830502e+02 - -1.2984417e+03 5.0917655e+03 1.7047579e+02 - -1.3798585e+03 5.0531997e+03 1.7276406e+02 - -1.4650870e+03 5.0107599e+03 1.7516608e+02 - -1.5544616e+03 4.9640440e+03 1.7767560e+02 - -1.6483229e+03 4.9126126e+03 1.8028326e+02 - -1.7470078e+03 4.8559924e+03 1.8297582e+02 - -1.8508360e+03 4.7936825e+03 1.8573538e+02 - -1.9600914e+03 4.7251656e+03 1.8853856e+02 - -2.0749986e+03 4.6499253e+03 1.9135577e+02 - -2.1956939e+03 4.5674697e+03 1.9415062e+02 - -2.3221917e+03 4.4773633e+03 1.9687967e+02 - -2.4543481e+03 4.3792667e+03 1.9949268e+02 - -2.5918249e+03 4.2729812e+03 2.0193358e+02 - -2.7340591e+03 4.1584972e+03 2.0414232e+02 - -2.8802446e+03 4.0360392e+03 2.0605761e+02 - -3.0293310e+03 3.9060999e+03 2.0762062e+02 - -3.1800478e+03 3.7694567e+03 2.0877914e+02 - -3.3309531e+03 3.6271624e+03 2.0949197e+02 - -3.4805073e+03 3.4805073e+03 2.0973262e+02 - -3.6271624e+03 3.3309531e+03 2.0949197e+02 - -3.7694567e+03 3.1800478e+03 2.0877914e+02 - -3.9060999e+03 3.0293310e+03 2.0762062e+02 - -4.0360392e+03 2.8802446e+03 2.0605761e+02 - -4.1584972e+03 2.7340591e+03 2.0414232e+02 - -4.2729812e+03 2.5918249e+03 2.0193358e+02 - -4.3792667e+03 2.4543481e+03 1.9949268e+02 - -4.4773633e+03 2.3221917e+03 1.9687967e+02 - -4.5674697e+03 2.1956939e+03 1.9415062e+02 - -4.6499253e+03 2.0749986e+03 1.9135577e+02 - -4.7251656e+03 1.9600914e+03 1.8853856e+02 - -4.7936825e+03 1.8508360e+03 1.8573538e+02 - -4.8559924e+03 1.7470078e+03 1.8297582e+02 - -4.9126126e+03 1.6483229e+03 1.8028326e+02 - -4.9640440e+03 1.5544616e+03 1.7767560e+02 - -5.0107599e+03 1.4650870e+03 1.7516608e+02 - -5.0531997e+03 1.3798585e+03 1.7276406e+02 - -5.0917655e+03 1.2984417e+03 1.7047579e+02 - -5.1268215e+03 1.2205146e+03 1.6830502e+02 - -5.1586951e+03 1.1457719e+03 1.6625356e+02 - -5.1876784e+03 1.0739270e+03 1.6432174e+02 - -5.2140313e+03 1.0047132e+03 1.6250882e+02 - -5.2379838e+03 9.3788344e+02 1.6081325e+02 - -5.2597391e+03 8.7320963e+02 1.5923296e+02 - -5.2794761e+03 8.1048177e+02 1.5776550e+02 - -5.2973523e+03 7.4950655e+02 1.5640826e+02 - -5.3135057e+03 6.9010603e+02 1.5515850e+02 - -5.3280574e+03 6.3211621e+02 1.5401351e+02 - -5.3411131e+03 5.7538562e+02 1.5297066e+02 - -5.3527647e+03 5.1977397e+02 1.5202742e+02 - -5.3630923e+03 4.6515089e+02 1.5118143e+02 - -5.3721649e+03 4.1139470e+02 1.5043049e+02 - -5.3800417e+03 3.5839133e+02 1.4977264e+02 - -5.3867730e+03 3.0603319e+02 1.4920611e+02 - -5.3924009e+03 2.5421829e+02 1.4872936e+02 - -5.3969600e+03 2.0284927e+02 1.4834108e+02 - -5.4004781e+03 1.5183252e+02 1.4804020e+02 - -5.4029762e+03 1.0107744e+02 1.4782589e+02 - -5.4044691e+03 5.0495588e+01 1.4769754e+02 - -5.4049658e+03 -9.6268545e-09 1.4765479e+02 - -5.4044691e+03 -5.0495588e+01 1.4769754e+02 - -5.4029762e+03 -1.0107744e+02 1.4782589e+02 - -5.4004781e+03 -1.5183252e+02 1.4804020e+02 - -5.3969600e+03 -2.0284927e+02 1.4834108e+02 - -5.3924009e+03 -2.5421829e+02 1.4872936e+02 - -5.3867730e+03 -3.0603319e+02 1.4920611e+02 - -5.3800417e+03 -3.5839133e+02 1.4977264e+02 - -5.3721649e+03 -4.1139470e+02 1.5043049e+02 - -5.3630923e+03 -4.6515089e+02 1.5118143e+02 - -5.3527647e+03 -5.1977397e+02 1.5202742e+02 - -5.3411131e+03 -5.7538562e+02 1.5297066e+02 - -5.3280574e+03 -6.3211621e+02 1.5401351e+02 - -5.3135057e+03 -6.9010603e+02 1.5515850e+02 - -5.2973523e+03 -7.4950655e+02 1.5640826e+02 - -5.2794761e+03 -8.1048177e+02 1.5776550e+02 - -5.2597391e+03 -8.7320963e+02 1.5923296e+02 - -5.2379838e+03 -9.3788344e+02 1.6081325e+02 - -5.2140313e+03 -1.0047132e+03 1.6250882e+02 - -5.1876784e+03 -1.0739270e+03 1.6432174e+02 - -5.1586951e+03 -1.1457719e+03 1.6625356e+02 - -5.1268215e+03 -1.2205146e+03 1.6830502e+02 - -5.0917655e+03 -1.2984417e+03 1.7047579e+02 - -5.0531997e+03 -1.3798585e+03 1.7276406e+02 - -5.0107599e+03 -1.4650870e+03 1.7516608e+02 - -4.9640440e+03 -1.5544616e+03 1.7767560e+02 - -4.9126126e+03 -1.6483229e+03 1.8028326e+02 - -4.8559924e+03 -1.7470078e+03 1.8297582e+02 - -4.7936825e+03 -1.8508360e+03 1.8573538e+02 - -4.7251656e+03 -1.9600914e+03 1.8853856e+02 - -4.6499253e+03 -2.0749986e+03 1.9135577e+02 - -4.5674697e+03 -2.1956939e+03 1.9415062e+02 - -4.4773633e+03 -2.3221917e+03 1.9687967e+02 - -4.3792667e+03 -2.4543481e+03 1.9949268e+02 - -4.2729812e+03 -2.5918249e+03 2.0193358e+02 - -4.1584972e+03 -2.7340591e+03 2.0414232e+02 - -4.0360392e+03 -2.8802446e+03 2.0605761e+02 - -3.9060999e+03 -3.0293310e+03 2.0762062e+02 - -3.7694567e+03 -3.1800478e+03 2.0877914e+02 - -3.6271624e+03 -3.3309531e+03 2.0949197e+02 - -3.4805073e+03 -3.4805073e+03 2.0973262e+02 - -3.3309531e+03 -3.6271624e+03 2.0949197e+02 - -3.1800478e+03 -3.7694567e+03 2.0877914e+02 - -3.0293310e+03 -3.9060999e+03 2.0762062e+02 - -2.8802446e+03 -4.0360392e+03 2.0605761e+02 - -2.7340591e+03 -4.1584972e+03 2.0414232e+02 - -2.5918249e+03 -4.2729812e+03 2.0193358e+02 - -2.4543481e+03 -4.3792667e+03 1.9949268e+02 - -2.3221917e+03 -4.4773633e+03 1.9687967e+02 - -2.1956939e+03 -4.5674697e+03 1.9415062e+02 - -2.0749986e+03 -4.6499253e+03 1.9135577e+02 - -1.9600914e+03 -4.7251656e+03 1.8853856e+02 - -1.8508360e+03 -4.7936825e+03 1.8573538e+02 - -1.7470078e+03 -4.8559924e+03 1.8297582e+02 - -1.6483229e+03 -4.9126126e+03 1.8028326e+02 - -1.5544616e+03 -4.9640440e+03 1.7767560e+02 - -1.4650870e+03 -5.0107599e+03 1.7516608e+02 - -1.3798585e+03 -5.0531997e+03 1.7276406e+02 - -1.2984417e+03 -5.0917655e+03 1.7047579e+02 - -1.2205146e+03 -5.1268215e+03 1.6830502e+02 - -1.1457719e+03 -5.1586951e+03 1.6625356e+02 - -1.0739270e+03 -5.1876784e+03 1.6432174e+02 - -1.0047132e+03 -5.2140313e+03 1.6250882e+02 - -9.3788344e+02 -5.2379838e+03 1.6081325e+02 - -8.7320963e+02 -5.2597391e+03 1.5923296e+02 - -8.1048177e+02 -5.2794761e+03 1.5776550e+02 - -7.4950655e+02 -5.2973523e+03 1.5640826e+02 - -6.9010603e+02 -5.3135057e+03 1.5515850e+02 - -6.3211621e+02 -5.3280574e+03 1.5401351e+02 - -5.7538562e+02 -5.3411131e+03 1.5297066e+02 - -5.1977397e+02 -5.3527647e+03 1.5202742e+02 - -4.6515089e+02 -5.3630923e+03 1.5118143e+02 - -4.1139470e+02 -5.3721649e+03 1.5043049e+02 - -3.5839133e+02 -5.3800417e+03 1.4977264e+02 - -3.0603319e+02 -5.3867730e+03 1.4920611e+02 - -2.5421829e+02 -5.3924009e+03 1.4872936e+02 - -2.0284927e+02 -5.3969600e+03 1.4834108e+02 - -1.5183252e+02 -5.4004781e+03 1.4804020e+02 - -1.0107744e+02 -5.4029762e+03 1.4782589e+02 - -5.0495588e+01 -5.4044691e+03 1.4769754e+02 - 0.0000000e+00 -5.4049658e+03 1.4765479e+02 - 5.0495588e+01 -5.4044691e+03 1.4769754e+02 - 1.0107744e+02 -5.4029762e+03 1.4782589e+02 - 1.5183252e+02 -5.4004781e+03 1.4804020e+02 - 2.0284927e+02 -5.3969600e+03 1.4834108e+02 - 2.5421829e+02 -5.3924009e+03 1.4872936e+02 - 3.0603319e+02 -5.3867730e+03 1.4920611e+02 - 3.5839133e+02 -5.3800417e+03 1.4977264e+02 - 4.1139470e+02 -5.3721649e+03 1.5043049e+02 - 4.6515089e+02 -5.3630923e+03 1.5118143e+02 - 5.1977397e+02 -5.3527647e+03 1.5202742e+02 - 5.7538562e+02 -5.3411131e+03 1.5297066e+02 - 6.3211621e+02 -5.3280574e+03 1.5401351e+02 - 6.9010603e+02 -5.3135057e+03 1.5515850e+02 - 7.4950655e+02 -5.2973523e+03 1.5640826e+02 - 8.1048177e+02 -5.2794761e+03 1.5776550e+02 - 8.7320963e+02 -5.2597391e+03 1.5923296e+02 - 9.3788344e+02 -5.2379838e+03 1.6081325e+02 - 1.0047132e+03 -5.2140313e+03 1.6250882e+02 - 1.0739270e+03 -5.1876784e+03 1.6432174e+02 - 1.1457719e+03 -5.1586951e+03 1.6625356e+02 - 1.2205146e+03 -5.1268215e+03 1.6830502e+02 - 1.2984417e+03 -5.0917655e+03 1.7047579e+02 - 1.3798585e+03 -5.0531997e+03 1.7276406e+02 - 1.4650870e+03 -5.0107599e+03 1.7516608e+02 - 1.5544616e+03 -4.9640440e+03 1.7767560e+02 - 1.6483229e+03 -4.9126126e+03 1.8028326e+02 - 1.7470078e+03 -4.8559924e+03 1.8297582e+02 - 1.8508360e+03 -4.7936825e+03 1.8573538e+02 - 1.9600914e+03 -4.7251656e+03 1.8853856e+02 - 2.0749986e+03 -4.6499253e+03 1.9135577e+02 - 2.1956939e+03 -4.5674697e+03 1.9415062e+02 - 2.3221917e+03 -4.4773633e+03 1.9687967e+02 - 2.4543481e+03 -4.3792667e+03 1.9949268e+02 - 2.5918249e+03 -4.2729812e+03 2.0193358e+02 - 2.7340591e+03 -4.1584972e+03 2.0414232e+02 - 2.8802446e+03 -4.0360392e+03 2.0605761e+02 - 3.0293310e+03 -3.9060999e+03 2.0762062e+02 - 3.1800478e+03 -3.7694567e+03 2.0877914e+02 - 3.3309531e+03 -3.6271624e+03 2.0949197e+02 - 3.4805073e+03 -3.4805073e+03 2.0973262e+02 - 3.6271624e+03 -3.3309531e+03 2.0949197e+02 - 3.7694567e+03 -3.1800478e+03 2.0877914e+02 - 3.9060999e+03 -3.0293310e+03 2.0762062e+02 - 4.0360392e+03 -2.8802446e+03 2.0605761e+02 - 4.1584972e+03 -2.7340591e+03 2.0414232e+02 - 4.2729812e+03 -2.5918249e+03 2.0193358e+02 - 4.3792667e+03 -2.4543481e+03 1.9949268e+02 - 4.4773633e+03 -2.3221917e+03 1.9687967e+02 - 4.5674697e+03 -2.1956939e+03 1.9415062e+02 - 4.6499253e+03 -2.0749986e+03 1.9135577e+02 - 4.7251656e+03 -1.9600914e+03 1.8853856e+02 - 4.7936825e+03 -1.8508360e+03 1.8573538e+02 - 4.8559924e+03 -1.7470078e+03 1.8297582e+02 - 4.9126126e+03 -1.6483229e+03 1.8028326e+02 - 4.9640440e+03 -1.5544616e+03 1.7767560e+02 - 5.0107599e+03 -1.4650870e+03 1.7516608e+02 - 5.0531997e+03 -1.3798585e+03 1.7276406e+02 - 5.0917655e+03 -1.2984417e+03 1.7047579e+02 - 5.1268215e+03 -1.2205146e+03 1.6830502e+02 - 5.1586951e+03 -1.1457719e+03 1.6625356e+02 - 5.1876784e+03 -1.0739270e+03 1.6432174e+02 - 5.2140313e+03 -1.0047132e+03 1.6250882e+02 - 5.2379838e+03 -9.3788344e+02 1.6081325e+02 - 5.2597391e+03 -8.7320963e+02 1.5923296e+02 - 5.2794761e+03 -8.1048177e+02 1.5776550e+02 - 5.2973523e+03 -7.4950655e+02 1.5640826e+02 - 5.3135057e+03 -6.9010603e+02 1.5515850e+02 - 5.3280574e+03 -6.3211621e+02 1.5401351e+02 - 5.3411131e+03 -5.7538562e+02 1.5297066e+02 - 5.3527647e+03 -5.1977397e+02 1.5202742e+02 - 5.3630923e+03 -4.6515089e+02 1.5118143e+02 - 5.3721649e+03 -4.1139470e+02 1.5043049e+02 - 5.3800417e+03 -3.5839133e+02 1.4977264e+02 - 5.3867730e+03 -3.0603319e+02 1.4920611e+02 - 5.3924009e+03 -2.5421829e+02 1.4872936e+02 - 5.3969600e+03 -2.0284927e+02 1.4834108e+02 - 5.4004781e+03 -1.5183252e+02 1.4804020e+02 - 5.4029762e+03 -1.0107744e+02 1.4782589e+02 - 5.4044691e+03 -5.0495588e+01 1.4769754e+02 - 5.4049658e+03 0.0000000e+00 1.4765479e+02 - 5.4064150e+03 -4.8134273e-09 0.0000000e+00 - 5.4059193e+03 5.0481244e+01 0.0000000e+00 - 5.4044293e+03 1.0104871e+02 0.0000000e+00 - 5.4019361e+03 1.5178936e+02 9.6268545e-09 - 5.3984250e+03 2.0279157e+02 -9.6268545e-09 - 5.3938748e+03 2.5414594e+02 -9.6268545e-09 - 5.3882579e+03 3.0594604e+02 4.8134273e-09 - 5.3815398e+03 3.5828921e+02 -4.8134273e-09 - 5.3736783e+03 4.1127744e+02 -4.8134273e-09 - 5.3646233e+03 4.6501830e+02 9.6268545e-09 - 5.3543155e+03 5.1962586e+02 0.0000000e+00 - 5.3426860e+03 5.7522183e+02 0.0000000e+00 - 5.3296551e+03 6.3193661e+02 4.8134273e-09 - 5.3151305e+03 6.8991052e+02 0.0000000e+00 - 5.2990068e+03 7.4929513e+02 0.0000000e+00 - 5.2811630e+03 8.1025455e+02 4.8134273e-09 - 5.2614611e+03 8.7296686e+02 -9.6268545e-09 - 5.2397436e+03 9.3762558e+02 9.6268545e-09 - 5.2158316e+03 1.0044410e+03 0.0000000e+00 - 5.1895219e+03 1.0736415e+03 1.4440282e-08 - 5.1605842e+03 1.1454745e+03 0.0000000e+00 - 5.1287586e+03 1.2202075e+03 4.8134273e-09 - 5.0937525e+03 1.2981275e+03 0.0000000e+00 - 5.0552381e+03 1.3795408e+03 -4.8134273e-09 - 5.0128504e+03 1.4647703e+03 4.8134273e-09 - 4.9661864e+03 1.5541519e+03 0.0000000e+00 - 4.9148056e+03 1.6480274e+03 0.0000000e+00 - 4.8582331e+03 1.7467355e+03 9.6268545e-09 - 4.7959659e+03 1.8505977e+03 0.0000000e+00 - 4.7274846e+03 1.9599000e+03 0.0000000e+00 - 4.6522698e+03 2.0748692e+03 -9.6268545e-09 - 4.5698265e+03 2.1956438e+03 0.0000000e+00 - 4.4797159e+03 2.3222399e+03 0.0000000e+00 - 4.3815950e+03 2.4545151e+03 0.0000000e+00 - 4.2752620e+03 2.5921317e+03 4.8134273e-09 - 4.1607047e+03 2.7345262e+03 0.0000000e+00 - 4.0381459e+03 2.8808904e+03 -9.6268545e-09 - 3.9080784e+03 3.0301707e+03 4.8134273e-09 - 3.7712812e+03 3.1810912e+03 4.8134273e-09 - 3.6288106e+03 3.3322039e+03 -4.8134273e-09 - 3.4819621e+03 3.4819621e+03 0.0000000e+00 - 3.3322039e+03 3.6288106e+03 -4.8134273e-09 - 3.1810912e+03 3.7712812e+03 0.0000000e+00 - 3.0301707e+03 3.9080784e+03 -4.8134273e-09 - 2.8808904e+03 4.0381459e+03 -9.6268545e-09 - 2.7345262e+03 4.1607047e+03 0.0000000e+00 - 2.5921317e+03 4.2752620e+03 -9.6268545e-09 - 2.4545151e+03 4.3815950e+03 0.0000000e+00 - 2.3222399e+03 4.4797159e+03 1.4440282e-08 - 2.1956438e+03 4.5698265e+03 0.0000000e+00 - 2.0748692e+03 4.6522698e+03 -1.9253709e-08 - 1.9599000e+03 4.7274846e+03 0.0000000e+00 - 1.8505977e+03 4.7959659e+03 -4.8134273e-09 - 1.7467355e+03 4.8582331e+03 4.8134273e-09 - 1.6480274e+03 4.9148056e+03 0.0000000e+00 - 1.5541519e+03 4.9661864e+03 9.6268545e-09 - 1.4647703e+03 5.0128504e+03 0.0000000e+00 - 1.3795408e+03 5.0552381e+03 0.0000000e+00 - 1.2981275e+03 5.0937525e+03 0.0000000e+00 - 1.2202075e+03 5.1287586e+03 -1.4440282e-08 - 1.1454745e+03 5.1605842e+03 0.0000000e+00 - 1.0736415e+03 5.1895219e+03 1.4440282e-08 - 1.0044410e+03 5.2158316e+03 0.0000000e+00 - 9.3762558e+02 5.2397436e+03 -4.8134273e-09 - 8.7296686e+02 5.2614611e+03 0.0000000e+00 - 8.1025455e+02 5.2811630e+03 0.0000000e+00 - 7.4929513e+02 5.2990068e+03 0.0000000e+00 - 6.8991052e+02 5.3151305e+03 1.9253709e-08 - 6.3193661e+02 5.3296551e+03 4.8134273e-09 - 5.7522183e+02 5.3426860e+03 0.0000000e+00 - 5.1962586e+02 5.3543155e+03 0.0000000e+00 - 4.6501830e+02 5.3646233e+03 4.8134273e-09 - 4.1127744e+02 5.3736783e+03 0.0000000e+00 - 3.5828921e+02 5.3815398e+03 0.0000000e+00 - 3.0594604e+02 5.3882579e+03 0.0000000e+00 - 2.5414594e+02 5.3938748e+03 0.0000000e+00 - 2.0279157e+02 5.3984250e+03 -4.8134273e-09 - 1.5178936e+02 5.4019361e+03 4.8134273e-09 - 1.0104871e+02 5.4044293e+03 4.8134273e-09 - 5.0481244e+01 5.4059193e+03 -4.8134273e-09 - 4.8134273e-09 5.4064150e+03 0.0000000e+00 - -5.0481244e+01 5.4059193e+03 0.0000000e+00 - -1.0104871e+02 5.4044293e+03 0.0000000e+00 - -1.5178936e+02 5.4019361e+03 0.0000000e+00 - -2.0279157e+02 5.3984250e+03 -1.4440282e-08 - -2.5414594e+02 5.3938748e+03 0.0000000e+00 - -3.0594604e+02 5.3882579e+03 -9.6268545e-09 - -3.5828921e+02 5.3815398e+03 4.8134273e-09 - -4.1127744e+02 5.3736783e+03 4.8134273e-09 - -4.6501830e+02 5.3646233e+03 9.6268545e-09 - -5.1962586e+02 5.3543155e+03 0.0000000e+00 - -5.7522183e+02 5.3426860e+03 0.0000000e+00 - -6.3193661e+02 5.3296551e+03 1.4440282e-08 - -6.8991052e+02 5.3151305e+03 0.0000000e+00 - -7.4929513e+02 5.2990068e+03 0.0000000e+00 - -8.1025455e+02 5.2811630e+03 0.0000000e+00 - -8.7296686e+02 5.2614611e+03 -4.8134273e-09 - -9.3762558e+02 5.2397436e+03 -9.6268545e-09 - -1.0044410e+03 5.2158316e+03 0.0000000e+00 - -1.0736415e+03 5.1895219e+03 0.0000000e+00 - -1.1454745e+03 5.1605842e+03 9.6268545e-09 - -1.2202075e+03 5.1287586e+03 -4.8134273e-09 - -1.2981275e+03 5.0937525e+03 9.6268545e-09 - -1.3795408e+03 5.0552381e+03 0.0000000e+00 - -1.4647703e+03 5.0128504e+03 -4.8134273e-09 - -1.5541519e+03 4.9661864e+03 4.8134273e-09 - -1.6480274e+03 4.9148056e+03 0.0000000e+00 - -1.7467355e+03 4.8582331e+03 9.6268545e-09 - -1.8505977e+03 4.7959659e+03 0.0000000e+00 - -1.9599000e+03 4.7274846e+03 0.0000000e+00 - -2.0748692e+03 4.6522698e+03 0.0000000e+00 - -2.1956438e+03 4.5698265e+03 0.0000000e+00 - -2.3222399e+03 4.4797159e+03 0.0000000e+00 - -2.4545151e+03 4.3815950e+03 0.0000000e+00 - -2.5921317e+03 4.2752620e+03 4.8134273e-09 - -2.7345262e+03 4.1607047e+03 0.0000000e+00 - -2.8808904e+03 4.0381459e+03 0.0000000e+00 - -3.0301707e+03 3.9080784e+03 0.0000000e+00 - -3.1810912e+03 3.7712812e+03 0.0000000e+00 - -3.3322039e+03 3.6288106e+03 0.0000000e+00 - -3.4819621e+03 3.4819621e+03 0.0000000e+00 - -3.6288106e+03 3.3322039e+03 0.0000000e+00 - -3.7712812e+03 3.1810912e+03 4.8134273e-09 - -3.9080784e+03 3.0301707e+03 0.0000000e+00 - -4.0381459e+03 2.8808904e+03 -4.8134273e-09 - -4.1607047e+03 2.7345262e+03 0.0000000e+00 - -4.2752620e+03 2.5921317e+03 0.0000000e+00 - -4.3815950e+03 2.4545151e+03 0.0000000e+00 - -4.4797159e+03 2.3222399e+03 0.0000000e+00 - -4.5698265e+03 2.1956438e+03 0.0000000e+00 - -4.6522698e+03 2.0748692e+03 0.0000000e+00 - -4.7274846e+03 1.9599000e+03 0.0000000e+00 - -4.7959659e+03 1.8505977e+03 0.0000000e+00 - -4.8582331e+03 1.7467355e+03 4.8134273e-09 - -4.9148056e+03 1.6480274e+03 0.0000000e+00 - -4.9661864e+03 1.5541519e+03 0.0000000e+00 - -5.0128504e+03 1.4647703e+03 0.0000000e+00 - -5.0552381e+03 1.3795408e+03 0.0000000e+00 - -5.0937525e+03 1.2981275e+03 0.0000000e+00 - -5.1287586e+03 1.2202075e+03 -4.8134273e-09 - -5.1605842e+03 1.1454745e+03 4.8134273e-09 - -5.1895219e+03 1.0736415e+03 9.6268545e-09 - -5.2158316e+03 1.0044410e+03 -4.8134273e-09 - -5.2397436e+03 9.3762558e+02 -1.4440282e-08 - -5.2614611e+03 8.7296686e+02 -4.8134273e-09 - -5.2811630e+03 8.1025455e+02 1.4440282e-08 - -5.2990068e+03 7.4929513e+02 -9.6268545e-09 - -5.3151305e+03 6.8991052e+02 0.0000000e+00 - -5.3296551e+03 6.3193661e+02 0.0000000e+00 - -5.3426860e+03 5.7522183e+02 4.8134273e-09 - -5.3543155e+03 5.1962586e+02 4.8134273e-09 - -5.3646233e+03 4.6501830e+02 0.0000000e+00 - -5.3736783e+03 4.1127744e+02 0.0000000e+00 - -5.3815398e+03 3.5828921e+02 0.0000000e+00 - -5.3882579e+03 3.0594604e+02 4.8134273e-09 - -5.3938748e+03 2.5414594e+02 4.8134273e-09 - -5.3984250e+03 2.0279157e+02 9.6268545e-09 - -5.4019361e+03 1.5178936e+02 4.8134273e-09 - -5.4044293e+03 1.0104871e+02 0.0000000e+00 - -5.4059193e+03 5.0481244e+01 -4.8134273e-09 - -5.4064150e+03 4.8134273e-09 9.6268545e-09 - -5.4059193e+03 -5.0481244e+01 0.0000000e+00 - -5.4044293e+03 -1.0104871e+02 0.0000000e+00 - -5.4019361e+03 -1.5178936e+02 9.6268545e-09 - -5.3984250e+03 -2.0279157e+02 -4.8134273e-09 - -5.3938748e+03 -2.5414594e+02 -9.6268545e-09 - -5.3882579e+03 -3.0594604e+02 4.8134273e-09 - -5.3815398e+03 -3.5828921e+02 0.0000000e+00 - -5.3736783e+03 -4.1127744e+02 0.0000000e+00 - -5.3646233e+03 -4.6501830e+02 4.8134273e-09 - -5.3543155e+03 -5.1962586e+02 0.0000000e+00 - -5.3426860e+03 -5.7522183e+02 4.8134273e-09 - -5.3296551e+03 -6.3193661e+02 -4.8134273e-09 - -5.3151305e+03 -6.8991052e+02 0.0000000e+00 - -5.2990068e+03 -7.4929513e+02 4.8134273e-09 - -5.2811630e+03 -8.1025455e+02 0.0000000e+00 - -5.2614611e+03 -8.7296686e+02 -4.8134273e-09 - -5.2397436e+03 -9.3762558e+02 9.6268545e-09 - -5.2158316e+03 -1.0044410e+03 0.0000000e+00 - -5.1895219e+03 -1.0736415e+03 0.0000000e+00 - -5.1605842e+03 -1.1454745e+03 0.0000000e+00 - -5.1287586e+03 -1.2202075e+03 4.8134273e-09 - -5.0937525e+03 -1.2981275e+03 -1.4440282e-08 - -5.0552381e+03 -1.3795408e+03 9.6268545e-09 - -5.0128504e+03 -1.4647703e+03 -4.8134273e-09 - -4.9661864e+03 -1.5541519e+03 0.0000000e+00 - -4.9148056e+03 -1.6480274e+03 0.0000000e+00 - -4.8582331e+03 -1.7467355e+03 9.6268545e-09 - -4.7959659e+03 -1.8505977e+03 0.0000000e+00 - -4.7274846e+03 -1.9599000e+03 0.0000000e+00 - -4.6522698e+03 -2.0748692e+03 0.0000000e+00 - -4.5698265e+03 -2.1956438e+03 0.0000000e+00 - -4.4797159e+03 -2.3222399e+03 0.0000000e+00 - -4.3815950e+03 -2.4545151e+03 0.0000000e+00 - -4.2752620e+03 -2.5921317e+03 4.8134273e-09 - -4.1607047e+03 -2.7345262e+03 -9.6268545e-09 - -4.0381459e+03 -2.8808904e+03 -4.8134273e-09 - -3.9080784e+03 -3.0301707e+03 4.8134273e-09 - -3.7712812e+03 -3.1810912e+03 0.0000000e+00 - -3.6288106e+03 -3.3322039e+03 4.8134273e-09 - -3.4819621e+03 -3.4819621e+03 0.0000000e+00 - -3.3322039e+03 -3.6288106e+03 -4.8134273e-09 - -3.1810912e+03 -3.7712812e+03 0.0000000e+00 - -3.0301707e+03 -3.9080784e+03 -9.6268545e-09 - -2.8808904e+03 -4.0381459e+03 0.0000000e+00 - -2.7345262e+03 -4.1607047e+03 0.0000000e+00 - -2.5921317e+03 -4.2752620e+03 1.4440282e-08 - -2.4545151e+03 -4.3815950e+03 0.0000000e+00 - -2.3222399e+03 -4.4797159e+03 0.0000000e+00 - -2.1956438e+03 -4.5698265e+03 0.0000000e+00 - -2.0748692e+03 -4.6522698e+03 -9.6268545e-09 - -1.9599000e+03 -4.7274846e+03 -4.8134273e-09 - -1.8505977e+03 -4.7959659e+03 0.0000000e+00 - -1.7467355e+03 -4.8582331e+03 0.0000000e+00 - -1.6480274e+03 -4.9148056e+03 4.8134273e-09 - -1.5541519e+03 -4.9661864e+03 9.6268545e-09 - -1.4647703e+03 -5.0128504e+03 0.0000000e+00 - -1.3795408e+03 -5.0552381e+03 9.6268545e-09 - -1.2981275e+03 -5.0937525e+03 0.0000000e+00 - -1.2202075e+03 -5.1287586e+03 4.8134273e-09 - -1.1454745e+03 -5.1605842e+03 0.0000000e+00 - -1.0736415e+03 -5.1895219e+03 0.0000000e+00 - -1.0044410e+03 -5.2158316e+03 0.0000000e+00 - -9.3762558e+02 -5.2397436e+03 0.0000000e+00 - -8.7296686e+02 -5.2614611e+03 -4.8134273e-09 - -8.1025455e+02 -5.2811630e+03 0.0000000e+00 - -7.4929513e+02 -5.2990068e+03 0.0000000e+00 - -6.8991052e+02 -5.3151305e+03 1.4440282e-08 - -6.3193661e+02 -5.3296551e+03 -4.8134273e-09 - -5.7522183e+02 -5.3426860e+03 -1.4440282e-08 - -5.1962586e+02 -5.3543155e+03 4.8134273e-09 - -4.6501830e+02 -5.3646233e+03 4.8134273e-09 - -4.1127744e+02 -5.3736783e+03 0.0000000e+00 - -3.5828921e+02 -5.3815398e+03 0.0000000e+00 - -3.0594604e+02 -5.3882579e+03 0.0000000e+00 - -2.5414594e+02 -5.3938748e+03 -9.6268545e-09 - -2.0279157e+02 -5.3984250e+03 -4.8134273e-09 - -1.5178936e+02 -5.4019361e+03 -4.8134273e-09 - -1.0104871e+02 -5.4044293e+03 0.0000000e+00 - -5.0481244e+01 -5.4059193e+03 4.8134273e-09 - 0.0000000e+00 -5.4064150e+03 9.6268545e-09 - 5.0481244e+01 -5.4059193e+03 0.0000000e+00 - 1.0104871e+02 -5.4044293e+03 1.4440282e-08 - 1.5178936e+02 -5.4019361e+03 4.8134273e-09 - 2.0279157e+02 -5.3984250e+03 9.6268545e-09 - 2.5414594e+02 -5.3938748e+03 -9.6268545e-09 - 3.0594604e+02 -5.3882579e+03 0.0000000e+00 - 3.5828921e+02 -5.3815398e+03 4.8134273e-09 - 4.1127744e+02 -5.3736783e+03 0.0000000e+00 - 4.6501830e+02 -5.3646233e+03 0.0000000e+00 - 5.1962586e+02 -5.3543155e+03 -9.6268545e-09 - 5.7522183e+02 -5.3426860e+03 4.8134273e-09 - 6.3193661e+02 -5.3296551e+03 -4.8134273e-09 - 6.8991052e+02 -5.3151305e+03 0.0000000e+00 - 7.4929513e+02 -5.2990068e+03 -1.9253709e-08 - 8.1025455e+02 -5.2811630e+03 0.0000000e+00 - 8.7296686e+02 -5.2614611e+03 0.0000000e+00 - 9.3762558e+02 -5.2397436e+03 -9.6268545e-09 - 1.0044410e+03 -5.2158316e+03 0.0000000e+00 - 1.0736415e+03 -5.1895219e+03 4.8134273e-09 - 1.1454745e+03 -5.1605842e+03 9.6268545e-09 - 1.2202075e+03 -5.1287586e+03 -4.8134273e-09 - 1.2981275e+03 -5.0937525e+03 0.0000000e+00 - 1.3795408e+03 -5.0552381e+03 0.0000000e+00 - 1.4647703e+03 -5.0128504e+03 -9.6268545e-09 - 1.5541519e+03 -4.9661864e+03 4.8134273e-09 - 1.6480274e+03 -4.9148056e+03 0.0000000e+00 - 1.7467355e+03 -4.8582331e+03 4.8134273e-09 - 1.8505977e+03 -4.7959659e+03 4.8134273e-09 - 1.9599000e+03 -4.7274846e+03 4.8134273e-09 - 2.0748692e+03 -4.6522698e+03 0.0000000e+00 - 2.1956438e+03 -4.5698265e+03 0.0000000e+00 - 2.3222399e+03 -4.4797159e+03 0.0000000e+00 - 2.4545151e+03 -4.3815950e+03 0.0000000e+00 - 2.5921317e+03 -4.2752620e+03 0.0000000e+00 - 2.7345262e+03 -4.1607047e+03 0.0000000e+00 - 2.8808904e+03 -4.0381459e+03 0.0000000e+00 - 3.0301707e+03 -3.9080784e+03 0.0000000e+00 - 3.1810912e+03 -3.7712812e+03 0.0000000e+00 - 3.3322039e+03 -3.6288106e+03 -4.8134273e-09 - 3.4819621e+03 -3.4819621e+03 0.0000000e+00 - 3.6288106e+03 -3.3322039e+03 0.0000000e+00 - 3.7712812e+03 -3.1810912e+03 4.8134273e-09 - 3.9080784e+03 -3.0301707e+03 4.8134273e-09 - 4.0381459e+03 -2.8808904e+03 0.0000000e+00 - 4.1607047e+03 -2.7345262e+03 0.0000000e+00 - 4.2752620e+03 -2.5921317e+03 0.0000000e+00 - 4.3815950e+03 -2.4545151e+03 0.0000000e+00 - 4.4797159e+03 -2.3222399e+03 0.0000000e+00 - 4.5698265e+03 -2.1956438e+03 0.0000000e+00 - 4.6522698e+03 -2.0748692e+03 0.0000000e+00 - 4.7274846e+03 -1.9599000e+03 0.0000000e+00 - 4.7959659e+03 -1.8505977e+03 0.0000000e+00 - 4.8582331e+03 -1.7467355e+03 0.0000000e+00 - 4.9148056e+03 -1.6480274e+03 0.0000000e+00 - 4.9661864e+03 -1.5541519e+03 0.0000000e+00 - 5.0128504e+03 -1.4647703e+03 0.0000000e+00 - 5.0552381e+03 -1.3795408e+03 0.0000000e+00 - 5.0937525e+03 -1.2981275e+03 0.0000000e+00 - 5.1287586e+03 -1.2202075e+03 0.0000000e+00 - 5.1605842e+03 -1.1454745e+03 4.8134273e-09 - 5.1895219e+03 -1.0736415e+03 0.0000000e+00 - 5.2158316e+03 -1.0044410e+03 -4.8134273e-09 - 5.2397436e+03 -9.3762558e+02 -4.8134273e-09 - 5.2614611e+03 -8.7296686e+02 -4.8134273e-09 - 5.2811630e+03 -8.1025455e+02 9.6268545e-09 - 5.2990068e+03 -7.4929513e+02 -9.6268545e-09 - 5.3151305e+03 -6.8991052e+02 0.0000000e+00 - 5.3296551e+03 -6.3193661e+02 9.6268545e-09 - 5.3426860e+03 -5.7522183e+02 0.0000000e+00 - 5.3543155e+03 -5.1962586e+02 0.0000000e+00 - 5.3646233e+03 -4.6501830e+02 -4.8134273e-09 - 5.3736783e+03 -4.1127744e+02 0.0000000e+00 - 5.3815398e+03 -3.5828921e+02 9.6268545e-09 - 5.3882579e+03 -3.0594604e+02 4.8134273e-09 - 5.3938748e+03 -2.5414594e+02 0.0000000e+00 - 5.3984250e+03 -2.0279157e+02 -4.8134273e-09 - 5.4019361e+03 -1.5178936e+02 -9.6268545e-09 - 5.4044293e+03 -1.0104871e+02 0.0000000e+00 - 5.4059193e+03 -5.0481244e+01 0.0000000e+00 - 5.4064150e+03 -4.8134273e-09 0.0000000e+00 - 5.4049658e+03 0.0000000e+00 -1.4765479e+02 - 5.4044691e+03 5.0495588e+01 -1.4769754e+02 - 5.4029762e+03 1.0107744e+02 -1.4782589e+02 - 5.4004781e+03 1.5183252e+02 -1.4804020e+02 - 5.3969600e+03 2.0284927e+02 -1.4834108e+02 - 5.3924009e+03 2.5421829e+02 -1.4872936e+02 - 5.3867730e+03 3.0603319e+02 -1.4920611e+02 - 5.3800417e+03 3.5839133e+02 -1.4977264e+02 - 5.3721649e+03 4.1139470e+02 -1.5043049e+02 - 5.3630923e+03 4.6515089e+02 -1.5118143e+02 - 5.3527647e+03 5.1977397e+02 -1.5202742e+02 - 5.3411131e+03 5.7538562e+02 -1.5297066e+02 - 5.3280574e+03 6.3211621e+02 -1.5401351e+02 - 5.3135057e+03 6.9010603e+02 -1.5515850e+02 - 5.2973523e+03 7.4950655e+02 -1.5640826e+02 - 5.2794761e+03 8.1048177e+02 -1.5776550e+02 - 5.2597391e+03 8.7320963e+02 -1.5923296e+02 - 5.2379838e+03 9.3788344e+02 -1.6081325e+02 - 5.2140313e+03 1.0047132e+03 -1.6250882e+02 - 5.1876784e+03 1.0739270e+03 -1.6432174e+02 - 5.1586951e+03 1.1457719e+03 -1.6625356e+02 - 5.1268215e+03 1.2205146e+03 -1.6830502e+02 - 5.0917655e+03 1.2984417e+03 -1.7047579e+02 - 5.0531997e+03 1.3798585e+03 -1.7276406e+02 - 5.0107599e+03 1.4650870e+03 -1.7516608e+02 - 4.9640440e+03 1.5544616e+03 -1.7767560e+02 - 4.9126126e+03 1.6483229e+03 -1.8028326e+02 - 4.8559924e+03 1.7470078e+03 -1.8297582e+02 - 4.7936825e+03 1.8508360e+03 -1.8573538e+02 - 4.7251656e+03 1.9600914e+03 -1.8853856e+02 - 4.6499253e+03 2.0749986e+03 -1.9135577e+02 - 4.5674697e+03 2.1956939e+03 -1.9415062e+02 - 4.4773633e+03 2.3221917e+03 -1.9687967e+02 - 4.3792667e+03 2.4543481e+03 -1.9949268e+02 - 4.2729812e+03 2.5918249e+03 -2.0193358e+02 - 4.1584972e+03 2.7340591e+03 -2.0414232e+02 - 4.0360392e+03 2.8802446e+03 -2.0605761e+02 - 3.9060999e+03 3.0293310e+03 -2.0762062e+02 - 3.7694567e+03 3.1800478e+03 -2.0877914e+02 - 3.6271624e+03 3.3309531e+03 -2.0949197e+02 - 3.4805073e+03 3.4805073e+03 -2.0973262e+02 - 3.3309531e+03 3.6271624e+03 -2.0949197e+02 - 3.1800478e+03 3.7694567e+03 -2.0877914e+02 - 3.0293310e+03 3.9060999e+03 -2.0762062e+02 - 2.8802446e+03 4.0360392e+03 -2.0605761e+02 - 2.7340591e+03 4.1584972e+03 -2.0414232e+02 - 2.5918249e+03 4.2729812e+03 -2.0193358e+02 - 2.4543481e+03 4.3792667e+03 -1.9949268e+02 - 2.3221917e+03 4.4773633e+03 -1.9687967e+02 - 2.1956939e+03 4.5674697e+03 -1.9415062e+02 - 2.0749986e+03 4.6499253e+03 -1.9135577e+02 - 1.9600914e+03 4.7251656e+03 -1.8853856e+02 - 1.8508360e+03 4.7936825e+03 -1.8573538e+02 - 1.7470078e+03 4.8559924e+03 -1.8297582e+02 - 1.6483229e+03 4.9126126e+03 -1.8028326e+02 - 1.5544616e+03 4.9640440e+03 -1.7767560e+02 - 1.4650870e+03 5.0107599e+03 -1.7516608e+02 - 1.3798585e+03 5.0531997e+03 -1.7276406e+02 - 1.2984417e+03 5.0917655e+03 -1.7047579e+02 - 1.2205146e+03 5.1268215e+03 -1.6830502e+02 - 1.1457719e+03 5.1586951e+03 -1.6625356e+02 - 1.0739270e+03 5.1876784e+03 -1.6432174e+02 - 1.0047132e+03 5.2140313e+03 -1.6250882e+02 - 9.3788344e+02 5.2379838e+03 -1.6081325e+02 - 8.7320963e+02 5.2597391e+03 -1.5923296e+02 - 8.1048177e+02 5.2794761e+03 -1.5776550e+02 - 7.4950655e+02 5.2973523e+03 -1.5640826e+02 - 6.9010603e+02 5.3135057e+03 -1.5515850e+02 - 6.3211621e+02 5.3280574e+03 -1.5401351e+02 - 5.7538562e+02 5.3411131e+03 -1.5297066e+02 - 5.1977397e+02 5.3527647e+03 -1.5202742e+02 - 4.6515089e+02 5.3630923e+03 -1.5118143e+02 - 4.1139470e+02 5.3721649e+03 -1.5043049e+02 - 3.5839133e+02 5.3800417e+03 -1.4977264e+02 - 3.0603319e+02 5.3867730e+03 -1.4920611e+02 - 2.5421829e+02 5.3924009e+03 -1.4872936e+02 - 2.0284927e+02 5.3969600e+03 -1.4834108e+02 - 1.5183252e+02 5.4004781e+03 -1.4804020e+02 - 1.0107744e+02 5.4029762e+03 -1.4782589e+02 - 5.0495588e+01 5.4044691e+03 -1.4769754e+02 - -9.6268545e-09 5.4049658e+03 -1.4765479e+02 - -5.0495588e+01 5.4044691e+03 -1.4769754e+02 - -1.0107744e+02 5.4029762e+03 -1.4782589e+02 - -1.5183252e+02 5.4004781e+03 -1.4804020e+02 - -2.0284927e+02 5.3969600e+03 -1.4834108e+02 - -2.5421829e+02 5.3924009e+03 -1.4872936e+02 - -3.0603319e+02 5.3867730e+03 -1.4920611e+02 - -3.5839133e+02 5.3800417e+03 -1.4977264e+02 - -4.1139470e+02 5.3721649e+03 -1.5043049e+02 - -4.6515089e+02 5.3630923e+03 -1.5118143e+02 - -5.1977397e+02 5.3527647e+03 -1.5202742e+02 - -5.7538562e+02 5.3411131e+03 -1.5297066e+02 - -6.3211621e+02 5.3280574e+03 -1.5401351e+02 - -6.9010603e+02 5.3135057e+03 -1.5515850e+02 - -7.4950655e+02 5.2973523e+03 -1.5640826e+02 - -8.1048177e+02 5.2794761e+03 -1.5776550e+02 - -8.7320963e+02 5.2597391e+03 -1.5923296e+02 - -9.3788344e+02 5.2379838e+03 -1.6081325e+02 - -1.0047132e+03 5.2140313e+03 -1.6250882e+02 - -1.0739270e+03 5.1876784e+03 -1.6432174e+02 - -1.1457719e+03 5.1586951e+03 -1.6625356e+02 - -1.2205146e+03 5.1268215e+03 -1.6830502e+02 - -1.2984417e+03 5.0917655e+03 -1.7047579e+02 - -1.3798585e+03 5.0531997e+03 -1.7276406e+02 - -1.4650870e+03 5.0107599e+03 -1.7516608e+02 - -1.5544616e+03 4.9640440e+03 -1.7767560e+02 - -1.6483229e+03 4.9126126e+03 -1.8028326e+02 - -1.7470078e+03 4.8559924e+03 -1.8297582e+02 - -1.8508360e+03 4.7936825e+03 -1.8573538e+02 - -1.9600914e+03 4.7251656e+03 -1.8853856e+02 - -2.0749986e+03 4.6499253e+03 -1.9135577e+02 - -2.1956939e+03 4.5674697e+03 -1.9415062e+02 - -2.3221917e+03 4.4773633e+03 -1.9687967e+02 - -2.4543481e+03 4.3792667e+03 -1.9949268e+02 - -2.5918249e+03 4.2729812e+03 -2.0193358e+02 - -2.7340591e+03 4.1584972e+03 -2.0414232e+02 - -2.8802446e+03 4.0360392e+03 -2.0605761e+02 - -3.0293310e+03 3.9060999e+03 -2.0762062e+02 - -3.1800478e+03 3.7694567e+03 -2.0877914e+02 - -3.3309531e+03 3.6271624e+03 -2.0949197e+02 - -3.4805073e+03 3.4805073e+03 -2.0973262e+02 - -3.6271624e+03 3.3309531e+03 -2.0949197e+02 - -3.7694567e+03 3.1800478e+03 -2.0877914e+02 - -3.9060999e+03 3.0293310e+03 -2.0762062e+02 - -4.0360392e+03 2.8802446e+03 -2.0605761e+02 - -4.1584972e+03 2.7340591e+03 -2.0414232e+02 - -4.2729812e+03 2.5918249e+03 -2.0193358e+02 - -4.3792667e+03 2.4543481e+03 -1.9949268e+02 - -4.4773633e+03 2.3221917e+03 -1.9687967e+02 - -4.5674697e+03 2.1956939e+03 -1.9415062e+02 - -4.6499253e+03 2.0749986e+03 -1.9135577e+02 - -4.7251656e+03 1.9600914e+03 -1.8853856e+02 - -4.7936825e+03 1.8508360e+03 -1.8573538e+02 - -4.8559924e+03 1.7470078e+03 -1.8297582e+02 - -4.9126126e+03 1.6483229e+03 -1.8028326e+02 - -4.9640440e+03 1.5544616e+03 -1.7767560e+02 - -5.0107599e+03 1.4650870e+03 -1.7516608e+02 - -5.0531997e+03 1.3798585e+03 -1.7276406e+02 - -5.0917655e+03 1.2984417e+03 -1.7047579e+02 - -5.1268215e+03 1.2205146e+03 -1.6830502e+02 - -5.1586951e+03 1.1457719e+03 -1.6625356e+02 - -5.1876784e+03 1.0739270e+03 -1.6432174e+02 - -5.2140313e+03 1.0047132e+03 -1.6250882e+02 - -5.2379838e+03 9.3788344e+02 -1.6081325e+02 - -5.2597391e+03 8.7320963e+02 -1.5923296e+02 - -5.2794761e+03 8.1048177e+02 -1.5776550e+02 - -5.2973523e+03 7.4950655e+02 -1.5640826e+02 - -5.3135057e+03 6.9010603e+02 -1.5515850e+02 - -5.3280574e+03 6.3211621e+02 -1.5401351e+02 - -5.3411131e+03 5.7538562e+02 -1.5297066e+02 - -5.3527647e+03 5.1977397e+02 -1.5202742e+02 - -5.3630923e+03 4.6515089e+02 -1.5118143e+02 - -5.3721649e+03 4.1139470e+02 -1.5043049e+02 - -5.3800417e+03 3.5839133e+02 -1.4977264e+02 - -5.3867730e+03 3.0603319e+02 -1.4920611e+02 - -5.3924009e+03 2.5421829e+02 -1.4872936e+02 - -5.3969600e+03 2.0284927e+02 -1.4834108e+02 - -5.4004781e+03 1.5183252e+02 -1.4804020e+02 - -5.4029762e+03 1.0107744e+02 -1.4782589e+02 - -5.4044691e+03 5.0495588e+01 -1.4769754e+02 - -5.4049658e+03 0.0000000e+00 -1.4765479e+02 - -5.4044691e+03 -5.0495588e+01 -1.4769754e+02 - -5.4029762e+03 -1.0107744e+02 -1.4782589e+02 - -5.4004781e+03 -1.5183252e+02 -1.4804020e+02 - -5.3969600e+03 -2.0284927e+02 -1.4834108e+02 - -5.3924009e+03 -2.5421829e+02 -1.4872936e+02 - -5.3867730e+03 -3.0603319e+02 -1.4920611e+02 - -5.3800417e+03 -3.5839133e+02 -1.4977264e+02 - -5.3721649e+03 -4.1139470e+02 -1.5043049e+02 - -5.3630923e+03 -4.6515089e+02 -1.5118143e+02 - -5.3527647e+03 -5.1977397e+02 -1.5202742e+02 - -5.3411131e+03 -5.7538562e+02 -1.5297066e+02 - -5.3280574e+03 -6.3211621e+02 -1.5401351e+02 - -5.3135057e+03 -6.9010603e+02 -1.5515850e+02 - -5.2973523e+03 -7.4950655e+02 -1.5640826e+02 - -5.2794761e+03 -8.1048177e+02 -1.5776550e+02 - -5.2597391e+03 -8.7320963e+02 -1.5923296e+02 - -5.2379838e+03 -9.3788344e+02 -1.6081325e+02 - -5.2140313e+03 -1.0047132e+03 -1.6250882e+02 - -5.1876784e+03 -1.0739270e+03 -1.6432174e+02 - -5.1586951e+03 -1.1457719e+03 -1.6625356e+02 - -5.1268215e+03 -1.2205146e+03 -1.6830502e+02 - -5.0917655e+03 -1.2984417e+03 -1.7047579e+02 - -5.0531997e+03 -1.3798585e+03 -1.7276406e+02 - -5.0107599e+03 -1.4650870e+03 -1.7516608e+02 - -4.9640440e+03 -1.5544616e+03 -1.7767560e+02 - -4.9126126e+03 -1.6483229e+03 -1.8028326e+02 - -4.8559924e+03 -1.7470078e+03 -1.8297582e+02 - -4.7936825e+03 -1.8508360e+03 -1.8573538e+02 - -4.7251656e+03 -1.9600914e+03 -1.8853856e+02 - -4.6499253e+03 -2.0749986e+03 -1.9135577e+02 - -4.5674697e+03 -2.1956939e+03 -1.9415062e+02 - -4.4773633e+03 -2.3221917e+03 -1.9687967e+02 - -4.3792667e+03 -2.4543481e+03 -1.9949268e+02 - -4.2729812e+03 -2.5918249e+03 -2.0193358e+02 - -4.1584972e+03 -2.7340591e+03 -2.0414232e+02 - -4.0360392e+03 -2.8802446e+03 -2.0605761e+02 - -3.9060999e+03 -3.0293310e+03 -2.0762062e+02 - -3.7694567e+03 -3.1800478e+03 -2.0877914e+02 - -3.6271624e+03 -3.3309531e+03 -2.0949197e+02 - -3.4805073e+03 -3.4805073e+03 -2.0973262e+02 - -3.3309531e+03 -3.6271624e+03 -2.0949197e+02 - -3.1800478e+03 -3.7694567e+03 -2.0877914e+02 - -3.0293310e+03 -3.9060999e+03 -2.0762062e+02 - -2.8802446e+03 -4.0360392e+03 -2.0605761e+02 - -2.7340591e+03 -4.1584972e+03 -2.0414232e+02 - -2.5918249e+03 -4.2729812e+03 -2.0193358e+02 - -2.4543481e+03 -4.3792667e+03 -1.9949268e+02 - -2.3221917e+03 -4.4773633e+03 -1.9687967e+02 - -2.1956939e+03 -4.5674697e+03 -1.9415062e+02 - -2.0749986e+03 -4.6499253e+03 -1.9135577e+02 - -1.9600914e+03 -4.7251656e+03 -1.8853856e+02 - -1.8508360e+03 -4.7936825e+03 -1.8573538e+02 - -1.7470078e+03 -4.8559924e+03 -1.8297582e+02 - -1.6483229e+03 -4.9126126e+03 -1.8028326e+02 - -1.5544616e+03 -4.9640440e+03 -1.7767560e+02 - -1.4650870e+03 -5.0107599e+03 -1.7516608e+02 - -1.3798585e+03 -5.0531997e+03 -1.7276406e+02 - -1.2984417e+03 -5.0917655e+03 -1.7047579e+02 - -1.2205146e+03 -5.1268215e+03 -1.6830502e+02 - -1.1457719e+03 -5.1586951e+03 -1.6625356e+02 - -1.0739270e+03 -5.1876784e+03 -1.6432174e+02 - -1.0047132e+03 -5.2140313e+03 -1.6250882e+02 - -9.3788344e+02 -5.2379838e+03 -1.6081325e+02 - -8.7320963e+02 -5.2597391e+03 -1.5923296e+02 - -8.1048177e+02 -5.2794761e+03 -1.5776550e+02 - -7.4950655e+02 -5.2973523e+03 -1.5640826e+02 - -6.9010603e+02 -5.3135057e+03 -1.5515850e+02 - -6.3211621e+02 -5.3280574e+03 -1.5401351e+02 - -5.7538562e+02 -5.3411131e+03 -1.5297066e+02 - -5.1977397e+02 -5.3527647e+03 -1.5202742e+02 - -4.6515089e+02 -5.3630923e+03 -1.5118143e+02 - -4.1139470e+02 -5.3721649e+03 -1.5043049e+02 - -3.5839133e+02 -5.3800417e+03 -1.4977264e+02 - -3.0603319e+02 -5.3867730e+03 -1.4920611e+02 - -2.5421829e+02 -5.3924009e+03 -1.4872936e+02 - -2.0284927e+02 -5.3969600e+03 -1.4834108e+02 - -1.5183252e+02 -5.4004781e+03 -1.4804020e+02 - -1.0107744e+02 -5.4029762e+03 -1.4782589e+02 - -5.0495588e+01 -5.4044691e+03 -1.4769754e+02 - 9.6268545e-09 -5.4049658e+03 -1.4765479e+02 - 5.0495588e+01 -5.4044691e+03 -1.4769754e+02 - 1.0107744e+02 -5.4029762e+03 -1.4782589e+02 - 1.5183252e+02 -5.4004781e+03 -1.4804020e+02 - 2.0284927e+02 -5.3969600e+03 -1.4834108e+02 - 2.5421829e+02 -5.3924009e+03 -1.4872936e+02 - 3.0603319e+02 -5.3867730e+03 -1.4920611e+02 - 3.5839133e+02 -5.3800417e+03 -1.4977264e+02 - 4.1139470e+02 -5.3721649e+03 -1.5043049e+02 - 4.6515089e+02 -5.3630923e+03 -1.5118143e+02 - 5.1977397e+02 -5.3527647e+03 -1.5202742e+02 - 5.7538562e+02 -5.3411131e+03 -1.5297066e+02 - 6.3211621e+02 -5.3280574e+03 -1.5401351e+02 - 6.9010603e+02 -5.3135057e+03 -1.5515850e+02 - 7.4950655e+02 -5.2973523e+03 -1.5640826e+02 - 8.1048177e+02 -5.2794761e+03 -1.5776550e+02 - 8.7320963e+02 -5.2597391e+03 -1.5923296e+02 - 9.3788344e+02 -5.2379838e+03 -1.6081325e+02 - 1.0047132e+03 -5.2140313e+03 -1.6250882e+02 - 1.0739270e+03 -5.1876784e+03 -1.6432174e+02 - 1.1457719e+03 -5.1586951e+03 -1.6625356e+02 - 1.2205146e+03 -5.1268215e+03 -1.6830502e+02 - 1.2984417e+03 -5.0917655e+03 -1.7047579e+02 - 1.3798585e+03 -5.0531997e+03 -1.7276406e+02 - 1.4650870e+03 -5.0107599e+03 -1.7516608e+02 - 1.5544616e+03 -4.9640440e+03 -1.7767560e+02 - 1.6483229e+03 -4.9126126e+03 -1.8028326e+02 - 1.7470078e+03 -4.8559924e+03 -1.8297582e+02 - 1.8508360e+03 -4.7936825e+03 -1.8573538e+02 - 1.9600914e+03 -4.7251656e+03 -1.8853856e+02 - 2.0749986e+03 -4.6499253e+03 -1.9135577e+02 - 2.1956939e+03 -4.5674697e+03 -1.9415062e+02 - 2.3221917e+03 -4.4773633e+03 -1.9687967e+02 - 2.4543481e+03 -4.3792667e+03 -1.9949268e+02 - 2.5918249e+03 -4.2729812e+03 -2.0193358e+02 - 2.7340591e+03 -4.1584972e+03 -2.0414232e+02 - 2.8802446e+03 -4.0360392e+03 -2.0605761e+02 - 3.0293310e+03 -3.9060999e+03 -2.0762062e+02 - 3.1800478e+03 -3.7694567e+03 -2.0877914e+02 - 3.3309531e+03 -3.6271624e+03 -2.0949197e+02 - 3.4805073e+03 -3.4805073e+03 -2.0973262e+02 - 3.6271624e+03 -3.3309531e+03 -2.0949197e+02 - 3.7694567e+03 -3.1800478e+03 -2.0877914e+02 - 3.9060999e+03 -3.0293310e+03 -2.0762062e+02 - 4.0360392e+03 -2.8802446e+03 -2.0605761e+02 - 4.1584972e+03 -2.7340591e+03 -2.0414232e+02 - 4.2729812e+03 -2.5918249e+03 -2.0193358e+02 - 4.3792667e+03 -2.4543481e+03 -1.9949268e+02 - 4.4773633e+03 -2.3221917e+03 -1.9687967e+02 - 4.5674697e+03 -2.1956939e+03 -1.9415062e+02 - 4.6499253e+03 -2.0749986e+03 -1.9135577e+02 - 4.7251656e+03 -1.9600914e+03 -1.8853856e+02 - 4.7936825e+03 -1.8508360e+03 -1.8573538e+02 - 4.8559924e+03 -1.7470078e+03 -1.8297582e+02 - 4.9126126e+03 -1.6483229e+03 -1.8028326e+02 - 4.9640440e+03 -1.5544616e+03 -1.7767560e+02 - 5.0107599e+03 -1.4650870e+03 -1.7516608e+02 - 5.0531997e+03 -1.3798585e+03 -1.7276406e+02 - 5.0917655e+03 -1.2984417e+03 -1.7047579e+02 - 5.1268215e+03 -1.2205146e+03 -1.6830502e+02 - 5.1586951e+03 -1.1457719e+03 -1.6625356e+02 - 5.1876784e+03 -1.0739270e+03 -1.6432174e+02 - 5.2140313e+03 -1.0047132e+03 -1.6250882e+02 - 5.2379838e+03 -9.3788344e+02 -1.6081325e+02 - 5.2597391e+03 -8.7320963e+02 -1.5923296e+02 - 5.2794761e+03 -8.1048177e+02 -1.5776550e+02 - 5.2973523e+03 -7.4950655e+02 -1.5640826e+02 - 5.3135057e+03 -6.9010603e+02 -1.5515850e+02 - 5.3280574e+03 -6.3211621e+02 -1.5401351e+02 - 5.3411131e+03 -5.7538562e+02 -1.5297066e+02 - 5.3527647e+03 -5.1977397e+02 -1.5202742e+02 - 5.3630923e+03 -4.6515089e+02 -1.5118143e+02 - 5.3721649e+03 -4.1139470e+02 -1.5043049e+02 - 5.3800417e+03 -3.5839133e+02 -1.4977264e+02 - 5.3867730e+03 -3.0603319e+02 -1.4920611e+02 - 5.3924009e+03 -2.5421829e+02 -1.4872936e+02 - 5.3969600e+03 -2.0284927e+02 -1.4834108e+02 - 5.4004781e+03 -1.5183252e+02 -1.4804020e+02 - 5.4029762e+03 -1.0107744e+02 -1.4782589e+02 - 5.4044691e+03 -5.0495588e+01 -1.4769754e+02 - 5.4049658e+03 9.6268545e-09 -1.4765479e+02 - 5.4006343e+03 0.0000000e+00 -2.9472312e+02 - 5.4001347e+03 5.0538406e+01 -2.9480797e+02 - 5.3986330e+03 1.0116316e+02 -2.9506277e+02 - 5.3961203e+03 1.5196135e+02 -2.9548823e+02 - 5.3925816e+03 2.0302147e+02 -2.9608551e+02 - 5.3879959e+03 2.5443422e+02 -2.9685625e+02 - 5.3823352e+03 3.0629328e+02 -2.9780255e+02 - 5.3755649e+03 3.5869605e+02 -2.9892698e+02 - 5.3676426e+03 4.1174460e+02 -3.0023256e+02 - 5.3585179e+03 4.6554650e+02 -3.0172272e+02 - 5.3481313e+03 5.2021583e+02 -3.0340134e+02 - 5.3364137e+03 5.7587420e+02 -3.0527269e+02 - 5.3232849e+03 6.3265191e+02 -3.0734137e+02 - 5.3086525e+03 6.9068907e+02 -3.0961229e+02 - 5.2924107e+03 7.5013692e+02 -3.1209060e+02 - 5.2744384e+03 8.1115914e+02 -3.1478156e+02 - 5.2545972e+03 8.7393321e+02 -3.1769040e+02 - 5.2327299e+03 9.3865182e+02 -3.2082221e+02 - 5.2086573e+03 1.0055242e+03 -3.2418161e+02 - 5.1821766e+03 1.0747774e+03 -3.2777255e+02 - 5.1530581e+03 1.1466572e+03 -3.3159785e+02 - 5.1210426e+03 1.2214288e+03 -3.3565876e+02 - 5.0858390e+03 1.2993765e+03 -3.3995433e+02 - 5.0471215e+03 1.3808033e+03 -3.4448069e+02 - 5.0045279e+03 1.4660279e+03 -3.4923011e+02 - 4.9576588e+03 1.5553814e+03 -3.5418993e+02 - 4.9060785e+03 1.6491999e+03 -3.5934129e+02 - 4.8493184e+03 1.7478153e+03 -3.6465772e+02 - 4.7868833e+03 1.8515417e+03 -3.7010357e+02 - 4.7182630e+03 1.9606569e+03 -3.7563247e+02 - 4.6429492e+03 2.0753790e+03 -3.8118588e+02 - 4.5604594e+03 2.1958383e+03 -3.8669198e+02 - 4.4703681e+03 2.3220435e+03 -3.9206527e+02 - 4.3723459e+03 2.4538468e+03 -3.9720708e+02 - 4.2662036e+03 2.5909082e+03 -4.0200750e+02 - 4.1519393e+03 2.7326667e+03 -4.0634902e+02 - 4.0297818e+03 2.8783217e+03 -4.1011195e+02 - 3.9002240e+03 3.0268335e+03 -4.1318148e+02 - 3.7640385e+03 3.1769463e+03 -4.1545593e+02 - 3.6222677e+03 3.3272368e+03 -4.1685504e+02 - 3.4761862e+03 3.4761862e+03 -4.1732734e+02 - 3.3272368e+03 3.6222677e+03 -4.1685504e+02 - 3.1769463e+03 3.7640385e+03 -4.1545593e+02 - 3.0268335e+03 3.9002240e+03 -4.1318148e+02 - 2.8783217e+03 4.0297818e+03 -4.1011195e+02 - 2.7326667e+03 4.1519393e+03 -4.0634902e+02 - 2.5909082e+03 4.2662036e+03 -4.0200750e+02 - 2.4538468e+03 4.3723459e+03 -3.9720708e+02 - 2.3220435e+03 4.4703681e+03 -3.9206527e+02 - 2.1958383e+03 4.5604594e+03 -3.8669198e+02 - 2.0753790e+03 4.6429492e+03 -3.8118588e+02 - 1.9606569e+03 4.7182630e+03 -3.7563247e+02 - 1.8515417e+03 4.7868833e+03 -3.7010357e+02 - 1.7478153e+03 4.8493184e+03 -3.6465772e+02 - 1.6491999e+03 4.9060785e+03 -3.5934129e+02 - 1.5553814e+03 4.9576588e+03 -3.5418993e+02 - 1.4660279e+03 5.0045279e+03 -3.4923011e+02 - 1.3808033e+03 5.0471215e+03 -3.4448069e+02 - 1.2993765e+03 5.0858390e+03 -3.3995433e+02 - 1.2214288e+03 5.1210426e+03 -3.3565876e+02 - 1.1466572e+03 5.1530581e+03 -3.3159785e+02 - 1.0747774e+03 5.1821766e+03 -3.2777255e+02 - 1.0055242e+03 5.2086573e+03 -3.2418161e+02 - 9.3865182e+02 5.2327299e+03 -3.2082221e+02 - 8.7393321e+02 5.2545972e+03 -3.1769040e+02 - 8.1115914e+02 5.2744384e+03 -3.1478156e+02 - 7.5013692e+02 5.2924107e+03 -3.1209060e+02 - 6.9068907e+02 5.3086525e+03 -3.0961229e+02 - 6.3265191e+02 5.3232849e+03 -3.0734137e+02 - 5.7587420e+02 5.3364137e+03 -3.0527269e+02 - 5.2021583e+02 5.3481313e+03 -3.0340134e+02 - 4.6554650e+02 5.3585179e+03 -3.0172272e+02 - 4.1174460e+02 5.3676426e+03 -3.0023256e+02 - 3.5869605e+02 5.3755649e+03 -2.9892698e+02 - 3.0629328e+02 5.3823352e+03 -2.9780255e+02 - 2.5443422e+02 5.3879959e+03 -2.9685625e+02 - 2.0302147e+02 5.3925816e+03 -2.9608551e+02 - 1.5196135e+02 5.3961203e+03 -2.9548823e+02 - 1.0116316e+02 5.3986330e+03 -2.9506277e+02 - 5.0538406e+01 5.4001347e+03 -2.9480797e+02 - 0.0000000e+00 5.4006343e+03 -2.9472312e+02 - -5.0538406e+01 5.4001347e+03 -2.9480797e+02 - -1.0116316e+02 5.3986330e+03 -2.9506277e+02 - -1.5196135e+02 5.3961203e+03 -2.9548823e+02 - -2.0302147e+02 5.3925816e+03 -2.9608551e+02 - -2.5443422e+02 5.3879959e+03 -2.9685625e+02 - -3.0629328e+02 5.3823352e+03 -2.9780255e+02 - -3.5869605e+02 5.3755649e+03 -2.9892698e+02 - -4.1174460e+02 5.3676426e+03 -3.0023256e+02 - -4.6554650e+02 5.3585179e+03 -3.0172272e+02 - -5.2021583e+02 5.3481313e+03 -3.0340134e+02 - -5.7587420e+02 5.3364137e+03 -3.0527269e+02 - -6.3265191e+02 5.3232849e+03 -3.0734137e+02 - -6.9068907e+02 5.3086525e+03 -3.0961229e+02 - -7.5013692e+02 5.2924107e+03 -3.1209060e+02 - -8.1115914e+02 5.2744384e+03 -3.1478156e+02 - -8.7393321e+02 5.2545972e+03 -3.1769040e+02 - -9.3865182e+02 5.2327299e+03 -3.2082221e+02 - -1.0055242e+03 5.2086573e+03 -3.2418161e+02 - -1.0747774e+03 5.1821766e+03 -3.2777255e+02 - -1.1466572e+03 5.1530581e+03 -3.3159785e+02 - -1.2214288e+03 5.1210426e+03 -3.3565876e+02 - -1.2993765e+03 5.0858390e+03 -3.3995433e+02 - -1.3808033e+03 5.0471215e+03 -3.4448069e+02 - -1.4660279e+03 5.0045279e+03 -3.4923011e+02 - -1.5553814e+03 4.9576588e+03 -3.5418993e+02 - -1.6491999e+03 4.9060785e+03 -3.5934129e+02 - -1.7478153e+03 4.8493184e+03 -3.6465772e+02 - -1.8515417e+03 4.7868833e+03 -3.7010357e+02 - -1.9606569e+03 4.7182630e+03 -3.7563247e+02 - -2.0753790e+03 4.6429492e+03 -3.8118588e+02 - -2.1958383e+03 4.5604594e+03 -3.8669198e+02 - -2.3220435e+03 4.4703681e+03 -3.9206527e+02 - -2.4538468e+03 4.3723459e+03 -3.9720708e+02 - -2.5909082e+03 4.2662036e+03 -4.0200750e+02 - -2.7326667e+03 4.1519393e+03 -4.0634902e+02 - -2.8783217e+03 4.0297818e+03 -4.1011195e+02 - -3.0268335e+03 3.9002240e+03 -4.1318148e+02 - -3.1769463e+03 3.7640385e+03 -4.1545593e+02 - -3.3272368e+03 3.6222677e+03 -4.1685504e+02 - -3.4761862e+03 3.4761862e+03 -4.1732734e+02 - -3.6222677e+03 3.3272368e+03 -4.1685504e+02 - -3.7640385e+03 3.1769463e+03 -4.1545593e+02 - -3.9002240e+03 3.0268335e+03 -4.1318148e+02 - -4.0297818e+03 2.8783217e+03 -4.1011195e+02 - -4.1519393e+03 2.7326667e+03 -4.0634902e+02 - -4.2662036e+03 2.5909082e+03 -4.0200750e+02 - -4.3723459e+03 2.4538468e+03 -3.9720708e+02 - -4.4703681e+03 2.3220435e+03 -3.9206527e+02 - -4.5604594e+03 2.1958383e+03 -3.8669198e+02 - -4.6429492e+03 2.0753790e+03 -3.8118588e+02 - -4.7182630e+03 1.9606569e+03 -3.7563247e+02 - -4.7868833e+03 1.8515417e+03 -3.7010357e+02 - -4.8493184e+03 1.7478153e+03 -3.6465772e+02 - -4.9060785e+03 1.6491999e+03 -3.5934129e+02 - -4.9576588e+03 1.5553814e+03 -3.5418993e+02 - -5.0045279e+03 1.4660279e+03 -3.4923011e+02 - -5.0471215e+03 1.3808033e+03 -3.4448069e+02 - -5.0858390e+03 1.2993765e+03 -3.3995433e+02 - -5.1210426e+03 1.2214288e+03 -3.3565876e+02 - -5.1530581e+03 1.1466572e+03 -3.3159785e+02 - -5.1821766e+03 1.0747774e+03 -3.2777255e+02 - -5.2086573e+03 1.0055242e+03 -3.2418161e+02 - -5.2327299e+03 9.3865182e+02 -3.2082221e+02 - -5.2545972e+03 8.7393321e+02 -3.1769040e+02 - -5.2744384e+03 8.1115914e+02 -3.1478156e+02 - -5.2924107e+03 7.5013692e+02 -3.1209060e+02 - -5.3086525e+03 6.9068907e+02 -3.0961229e+02 - -5.3232849e+03 6.3265191e+02 -3.0734137e+02 - -5.3364137e+03 5.7587420e+02 -3.0527269e+02 - -5.3481313e+03 5.2021583e+02 -3.0340134e+02 - -5.3585179e+03 4.6554650e+02 -3.0172272e+02 - -5.3676426e+03 4.1174460e+02 -3.0023256e+02 - -5.3755649e+03 3.5869605e+02 -2.9892698e+02 - -5.3823352e+03 3.0629328e+02 -2.9780255e+02 - -5.3879959e+03 2.5443422e+02 -2.9685625e+02 - -5.3925816e+03 2.0302147e+02 -2.9608551e+02 - -5.3961203e+03 1.5196135e+02 -2.9548823e+02 - -5.3986330e+03 1.0116316e+02 -2.9506277e+02 - -5.4001347e+03 5.0538406e+01 -2.9480797e+02 - -5.4006343e+03 9.6268545e-09 -2.9472312e+02 - -5.4001347e+03 -5.0538406e+01 -2.9480797e+02 - -5.3986330e+03 -1.0116316e+02 -2.9506277e+02 - -5.3961203e+03 -1.5196135e+02 -2.9548823e+02 - -5.3925816e+03 -2.0302147e+02 -2.9608551e+02 - -5.3879959e+03 -2.5443422e+02 -2.9685625e+02 - -5.3823352e+03 -3.0629328e+02 -2.9780255e+02 - -5.3755649e+03 -3.5869605e+02 -2.9892698e+02 - -5.3676426e+03 -4.1174460e+02 -3.0023256e+02 - -5.3585179e+03 -4.6554650e+02 -3.0172272e+02 - -5.3481313e+03 -5.2021583e+02 -3.0340134e+02 - -5.3364137e+03 -5.7587420e+02 -3.0527269e+02 - -5.3232849e+03 -6.3265191e+02 -3.0734137e+02 - -5.3086525e+03 -6.9068907e+02 -3.0961229e+02 - -5.2924107e+03 -7.5013692e+02 -3.1209060e+02 - -5.2744384e+03 -8.1115914e+02 -3.1478156e+02 - -5.2545972e+03 -8.7393321e+02 -3.1769040e+02 - -5.2327299e+03 -9.3865182e+02 -3.2082221e+02 - -5.2086573e+03 -1.0055242e+03 -3.2418161e+02 - -5.1821766e+03 -1.0747774e+03 -3.2777255e+02 - -5.1530581e+03 -1.1466572e+03 -3.3159785e+02 - -5.1210426e+03 -1.2214288e+03 -3.3565876e+02 - -5.0858390e+03 -1.2993765e+03 -3.3995433e+02 - -5.0471215e+03 -1.3808033e+03 -3.4448069e+02 - -5.0045279e+03 -1.4660279e+03 -3.4923011e+02 - -4.9576588e+03 -1.5553814e+03 -3.5418993e+02 - -4.9060785e+03 -1.6491999e+03 -3.5934129e+02 - -4.8493184e+03 -1.7478153e+03 -3.6465772e+02 - -4.7868833e+03 -1.8515417e+03 -3.7010357e+02 - -4.7182630e+03 -1.9606569e+03 -3.7563247e+02 - -4.6429492e+03 -2.0753790e+03 -3.8118588e+02 - -4.5604594e+03 -2.1958383e+03 -3.8669198e+02 - -4.4703681e+03 -2.3220435e+03 -3.9206527e+02 - -4.3723459e+03 -2.4538468e+03 -3.9720708e+02 - -4.2662036e+03 -2.5909082e+03 -4.0200750e+02 - -4.1519393e+03 -2.7326667e+03 -4.0634902e+02 - -4.0297818e+03 -2.8783217e+03 -4.1011195e+02 - -3.9002240e+03 -3.0268335e+03 -4.1318148e+02 - -3.7640385e+03 -3.1769463e+03 -4.1545593e+02 - -3.6222677e+03 -3.3272368e+03 -4.1685504e+02 - -3.4761862e+03 -3.4761862e+03 -4.1732734e+02 - -3.3272368e+03 -3.6222677e+03 -4.1685504e+02 - -3.1769463e+03 -3.7640385e+03 -4.1545593e+02 - -3.0268335e+03 -3.9002240e+03 -4.1318148e+02 - -2.8783217e+03 -4.0297818e+03 -4.1011195e+02 - -2.7326667e+03 -4.1519393e+03 -4.0634902e+02 - -2.5909082e+03 -4.2662036e+03 -4.0200750e+02 - -2.4538468e+03 -4.3723459e+03 -3.9720708e+02 - -2.3220435e+03 -4.4703681e+03 -3.9206527e+02 - -2.1958383e+03 -4.5604594e+03 -3.8669198e+02 - -2.0753790e+03 -4.6429492e+03 -3.8118588e+02 - -1.9606569e+03 -4.7182630e+03 -3.7563247e+02 - -1.8515417e+03 -4.7868833e+03 -3.7010357e+02 - -1.7478153e+03 -4.8493184e+03 -3.6465772e+02 - -1.6491999e+03 -4.9060785e+03 -3.5934129e+02 - -1.5553814e+03 -4.9576588e+03 -3.5418993e+02 - -1.4660279e+03 -5.0045279e+03 -3.4923011e+02 - -1.3808033e+03 -5.0471215e+03 -3.4448069e+02 - -1.2993765e+03 -5.0858390e+03 -3.3995433e+02 - -1.2214288e+03 -5.1210426e+03 -3.3565876e+02 - -1.1466572e+03 -5.1530581e+03 -3.3159785e+02 - -1.0747774e+03 -5.1821766e+03 -3.2777255e+02 - -1.0055242e+03 -5.2086573e+03 -3.2418161e+02 - -9.3865182e+02 -5.2327299e+03 -3.2082221e+02 - -8.7393321e+02 -5.2545972e+03 -3.1769040e+02 - -8.1115914e+02 -5.2744384e+03 -3.1478156e+02 - -7.5013692e+02 -5.2924107e+03 -3.1209060e+02 - -6.9068907e+02 -5.3086525e+03 -3.0961229e+02 - -6.3265191e+02 -5.3232849e+03 -3.0734137e+02 - -5.7587420e+02 -5.3364137e+03 -3.0527269e+02 - -5.2021583e+02 -5.3481313e+03 -3.0340134e+02 - -4.6554650e+02 -5.3585179e+03 -3.0172272e+02 - -4.1174460e+02 -5.3676426e+03 -3.0023256e+02 - -3.5869605e+02 -5.3755649e+03 -2.9892698e+02 - -3.0629328e+02 -5.3823352e+03 -2.9780255e+02 - -2.5443422e+02 -5.3879959e+03 -2.9685625e+02 - -2.0302147e+02 -5.3925816e+03 -2.9608551e+02 - -1.5196135e+02 -5.3961203e+03 -2.9548823e+02 - -1.0116316e+02 -5.3986330e+03 -2.9506277e+02 - -5.0538406e+01 -5.4001347e+03 -2.9480797e+02 - -9.6268545e-09 -5.4006343e+03 -2.9472312e+02 - 5.0538406e+01 -5.4001347e+03 -2.9480797e+02 - 1.0116316e+02 -5.3986330e+03 -2.9506277e+02 - 1.5196135e+02 -5.3961203e+03 -2.9548823e+02 - 2.0302147e+02 -5.3925816e+03 -2.9608551e+02 - 2.5443422e+02 -5.3879959e+03 -2.9685625e+02 - 3.0629328e+02 -5.3823352e+03 -2.9780255e+02 - 3.5869605e+02 -5.3755649e+03 -2.9892698e+02 - 4.1174460e+02 -5.3676426e+03 -3.0023256e+02 - 4.6554650e+02 -5.3585179e+03 -3.0172272e+02 - 5.2021583e+02 -5.3481313e+03 -3.0340134e+02 - 5.7587420e+02 -5.3364137e+03 -3.0527269e+02 - 6.3265191e+02 -5.3232849e+03 -3.0734137e+02 - 6.9068907e+02 -5.3086525e+03 -3.0961229e+02 - 7.5013692e+02 -5.2924107e+03 -3.1209060e+02 - 8.1115914e+02 -5.2744384e+03 -3.1478156e+02 - 8.7393321e+02 -5.2545972e+03 -3.1769040e+02 - 9.3865182e+02 -5.2327299e+03 -3.2082221e+02 - 1.0055242e+03 -5.2086573e+03 -3.2418161e+02 - 1.0747774e+03 -5.1821766e+03 -3.2777255e+02 - 1.1466572e+03 -5.1530581e+03 -3.3159785e+02 - 1.2214288e+03 -5.1210426e+03 -3.3565876e+02 - 1.2993765e+03 -5.0858390e+03 -3.3995433e+02 - 1.3808033e+03 -5.0471215e+03 -3.4448069e+02 - 1.4660279e+03 -5.0045279e+03 -3.4923011e+02 - 1.5553814e+03 -4.9576588e+03 -3.5418993e+02 - 1.6491999e+03 -4.9060785e+03 -3.5934129e+02 - 1.7478153e+03 -4.8493184e+03 -3.6465772e+02 - 1.8515417e+03 -4.7868833e+03 -3.7010357e+02 - 1.9606569e+03 -4.7182630e+03 -3.7563247e+02 - 2.0753790e+03 -4.6429492e+03 -3.8118588e+02 - 2.1958383e+03 -4.5604594e+03 -3.8669198e+02 - 2.3220435e+03 -4.4703681e+03 -3.9206527e+02 - 2.4538468e+03 -4.3723459e+03 -3.9720708e+02 - 2.5909082e+03 -4.2662036e+03 -4.0200750e+02 - 2.7326667e+03 -4.1519393e+03 -4.0634902e+02 - 2.8783217e+03 -4.0297818e+03 -4.1011195e+02 - 3.0268335e+03 -3.9002240e+03 -4.1318148e+02 - 3.1769463e+03 -3.7640385e+03 -4.1545593e+02 - 3.3272368e+03 -3.6222677e+03 -4.1685504e+02 - 3.4761862e+03 -3.4761862e+03 -4.1732734e+02 - 3.6222677e+03 -3.3272368e+03 -4.1685504e+02 - 3.7640385e+03 -3.1769463e+03 -4.1545593e+02 - 3.9002240e+03 -3.0268335e+03 -4.1318148e+02 - 4.0297818e+03 -2.8783217e+03 -4.1011195e+02 - 4.1519393e+03 -2.7326667e+03 -4.0634902e+02 - 4.2662036e+03 -2.5909082e+03 -4.0200750e+02 - 4.3723459e+03 -2.4538468e+03 -3.9720708e+02 - 4.4703681e+03 -2.3220435e+03 -3.9206527e+02 - 4.5604594e+03 -2.1958383e+03 -3.8669198e+02 - 4.6429492e+03 -2.0753790e+03 -3.8118588e+02 - 4.7182630e+03 -1.9606569e+03 -3.7563247e+02 - 4.7868833e+03 -1.8515417e+03 -3.7010357e+02 - 4.8493184e+03 -1.7478153e+03 -3.6465772e+02 - 4.9060785e+03 -1.6491999e+03 -3.5934129e+02 - 4.9576588e+03 -1.5553814e+03 -3.5418993e+02 - 5.0045279e+03 -1.4660279e+03 -3.4923011e+02 - 5.0471215e+03 -1.3808033e+03 -3.4448069e+02 - 5.0858390e+03 -1.2993765e+03 -3.3995433e+02 - 5.1210426e+03 -1.2214288e+03 -3.3565876e+02 - 5.1530581e+03 -1.1466572e+03 -3.3159785e+02 - 5.1821766e+03 -1.0747774e+03 -3.2777255e+02 - 5.2086573e+03 -1.0055242e+03 -3.2418161e+02 - 5.2327299e+03 -9.3865182e+02 -3.2082221e+02 - 5.2545972e+03 -8.7393321e+02 -3.1769040e+02 - 5.2744384e+03 -8.1115914e+02 -3.1478156e+02 - 5.2924107e+03 -7.5013692e+02 -3.1209060e+02 - 5.3086525e+03 -6.9068907e+02 -3.0961229e+02 - 5.3232849e+03 -6.3265191e+02 -3.0734137e+02 - 5.3364137e+03 -5.7587420e+02 -3.0527269e+02 - 5.3481313e+03 -5.2021583e+02 -3.0340134e+02 - 5.3585179e+03 -4.6554650e+02 -3.0172272e+02 - 5.3676426e+03 -4.1174460e+02 -3.0023256e+02 - 5.3755649e+03 -3.5869605e+02 -2.9892698e+02 - 5.3823352e+03 -3.0629328e+02 -2.9780255e+02 - 5.3879959e+03 -2.5443422e+02 -2.9685625e+02 - 5.3925816e+03 -2.0302147e+02 -2.9608551e+02 - 5.3961203e+03 -1.5196135e+02 -2.9548823e+02 - 5.3986330e+03 -1.0116316e+02 -2.9506277e+02 - 5.4001347e+03 -5.0538406e+01 -2.9480797e+02 - 5.4006343e+03 -4.8134273e-09 -2.9472312e+02 - 5.3934684e+03 1.4440282e-08 -4.4063321e+02 - 5.3929640e+03 5.0609051e+01 -4.4075895e+02 - 5.3914479e+03 1.0130461e+02 -4.4113649e+02 - 5.3889112e+03 1.5217389e+02 -4.4176686e+02 - 5.3853388e+03 2.0330555e+02 -4.4265177e+02 - 5.3807095e+03 2.5479041e+02 -4.4379358e+02 - 5.3749952e+03 3.0672226e+02 -4.4519536e+02 - 5.3681609e+03 3.5919860e+02 -4.4686080e+02 - 5.3601642e+03 4.1232155e+02 -4.4879428e+02 - 5.3509542e+03 4.6619871e+02 -4.5100078e+02 - 5.3404712e+03 5.2094413e+02 -4.5348589e+02 - 5.3286458e+03 5.7667934e+02 -4.5625575e+02 - 5.3153973e+03 6.3353446e+02 -4.5931699e+02 - 5.3006332e+03 6.9164934e+02 -4.6267667e+02 - 5.2842473e+03 7.5117481e+02 -4.6634212e+02 - 5.2661181e+03 8.1227399e+02 -4.7032084e+02 - 5.2461072e+03 8.7512362e+02 -4.7462025e+02 - 5.2240572e+03 9.3991538e+02 -4.7924746e+02 - 5.1997892e+03 1.0068572e+03 -4.8420892e+02 - 5.1731007e+03 1.0761744e+03 -4.8950994e+02 - 5.1437626e+03 1.1481107e+03 -4.9515417e+02 - 5.1115171e+03 1.2229284e+03 -5.0114287e+02 - 5.0760746e+03 1.3009088e+03 -5.0747400e+02 - 5.0371119e+03 1.3823504e+03 -5.1414115e+02 - 4.9942701e+03 1.4675673e+03 -5.2113218e+02 - 4.9471546e+03 1.5568843e+03 -5.2842769e+02 - 4.8953357e+03 1.6506305e+03 -5.3599916e+02 - 4.8383522e+03 1.7491299e+03 -5.4380690e+02 - 4.7757185e+03 1.8526874e+03 -5.5179786e+02 - 4.7069359e+03 1.9615707e+03 -5.5990341e+02 - 4.6315093e+03 2.0759879e+03 -5.6803732e+02 - 4.5489711e+03 2.1960591e+03 -5.7609428e+02 - 4.4589121e+03 2.3217845e+03 -5.8394937e+02 - 4.3610191e+03 2.4530097e+03 -5.9145893e+02 - 4.2551178e+03 2.5893925e+03 -5.9846348e+02 - 4.1412182e+03 2.7303746e+03 -6.0479297e+02 - 4.0195561e+03 2.8751650e+03 -6.1027467e+02 - 3.8906245e+03 3.0227408e+03 -6.1474329e+02 - 3.7551876e+03 3.1718702e+03 -6.1805268e+02 - 3.6142711e+03 3.3211599e+03 -6.2008769e+02 - 3.4691245e+03 3.4691245e+03 -6.2077451e+02 - 3.3211599e+03 3.6142711e+03 -6.2008769e+02 - 3.1718702e+03 3.7551876e+03 -6.1805268e+02 - 3.0227408e+03 3.8906245e+03 -6.1474329e+02 - 2.8751650e+03 4.0195561e+03 -6.1027467e+02 - 2.7303746e+03 4.1412182e+03 -6.0479297e+02 - 2.5893925e+03 4.2551178e+03 -5.9846348e+02 - 2.4530097e+03 4.3610191e+03 -5.9145893e+02 - 2.3217845e+03 4.4589121e+03 -5.8394937e+02 - 2.1960591e+03 4.5489711e+03 -5.7609428e+02 - 2.0759879e+03 4.6315093e+03 -5.6803732e+02 - 1.9615707e+03 4.7069359e+03 -5.5990341e+02 - 1.8526874e+03 4.7757185e+03 -5.5179786e+02 - 1.7491299e+03 4.8383522e+03 -5.4380690e+02 - 1.6506305e+03 4.8953357e+03 -5.3599916e+02 - 1.5568843e+03 4.9471546e+03 -5.2842769e+02 - 1.4675673e+03 4.9942701e+03 -5.2113218e+02 - 1.3823504e+03 5.0371119e+03 -5.1414115e+02 - 1.3009088e+03 5.0760746e+03 -5.0747400e+02 - 1.2229284e+03 5.1115171e+03 -5.0114287e+02 - 1.1481107e+03 5.1437626e+03 -4.9515417e+02 - 1.0761744e+03 5.1731007e+03 -4.8950994e+02 - 1.0068572e+03 5.1997892e+03 -4.8420892e+02 - 9.3991538e+02 5.2240572e+03 -4.7924746e+02 - 8.7512362e+02 5.2461072e+03 -4.7462025e+02 - 8.1227399e+02 5.2661181e+03 -4.7032084e+02 - 7.5117481e+02 5.2842473e+03 -4.6634212e+02 - 6.9164934e+02 5.3006332e+03 -4.6267667e+02 - 6.3353446e+02 5.3153973e+03 -4.5931699e+02 - 5.7667934e+02 5.3286458e+03 -4.5625575e+02 - 5.2094413e+02 5.3404712e+03 -4.5348589e+02 - 4.6619871e+02 5.3509542e+03 -4.5100078e+02 - 4.1232155e+02 5.3601642e+03 -4.4879428e+02 - 3.5919860e+02 5.3681609e+03 -4.4686080e+02 - 3.0672226e+02 5.3749952e+03 -4.4519536e+02 - 2.5479041e+02 5.3807095e+03 -4.4379358e+02 - 2.0330555e+02 5.3853388e+03 -4.4265177e+02 - 1.5217389e+02 5.3889112e+03 -4.4176686e+02 - 1.0130461e+02 5.3914479e+03 -4.4113649e+02 - 5.0609051e+01 5.3929640e+03 -4.4075895e+02 - -4.8134273e-09 5.3934684e+03 -4.4063321e+02 - -5.0609051e+01 5.3929640e+03 -4.4075895e+02 - -1.0130461e+02 5.3914479e+03 -4.4113649e+02 - -1.5217389e+02 5.3889112e+03 -4.4176686e+02 - -2.0330555e+02 5.3853388e+03 -4.4265177e+02 - -2.5479041e+02 5.3807095e+03 -4.4379358e+02 - -3.0672226e+02 5.3749952e+03 -4.4519536e+02 - -3.5919860e+02 5.3681609e+03 -4.4686080e+02 - -4.1232155e+02 5.3601642e+03 -4.4879428e+02 - -4.6619871e+02 5.3509542e+03 -4.5100078e+02 - -5.2094413e+02 5.3404712e+03 -4.5348589e+02 - -5.7667934e+02 5.3286458e+03 -4.5625575e+02 - -6.3353446e+02 5.3153973e+03 -4.5931699e+02 - -6.9164934e+02 5.3006332e+03 -4.6267667e+02 - -7.5117481e+02 5.2842473e+03 -4.6634212e+02 - -8.1227399e+02 5.2661181e+03 -4.7032084e+02 - -8.7512362e+02 5.2461072e+03 -4.7462025e+02 - -9.3991538e+02 5.2240572e+03 -4.7924746e+02 - -1.0068572e+03 5.1997892e+03 -4.8420892e+02 - -1.0761744e+03 5.1731007e+03 -4.8950994e+02 - -1.1481107e+03 5.1437626e+03 -4.9515417e+02 - -1.2229284e+03 5.1115171e+03 -5.0114287e+02 - -1.3009088e+03 5.0760746e+03 -5.0747400e+02 - -1.3823504e+03 5.0371119e+03 -5.1414115e+02 - -1.4675673e+03 4.9942701e+03 -5.2113218e+02 - -1.5568843e+03 4.9471546e+03 -5.2842769e+02 - -1.6506305e+03 4.8953357e+03 -5.3599916e+02 - -1.7491299e+03 4.8383522e+03 -5.4380690e+02 - -1.8526874e+03 4.7757185e+03 -5.5179786e+02 - -1.9615707e+03 4.7069359e+03 -5.5990341e+02 - -2.0759879e+03 4.6315093e+03 -5.6803732e+02 - -2.1960591e+03 4.5489711e+03 -5.7609428e+02 - -2.3217845e+03 4.4589121e+03 -5.8394937e+02 - -2.4530097e+03 4.3610191e+03 -5.9145893e+02 - -2.5893925e+03 4.2551178e+03 -5.9846348e+02 - -2.7303746e+03 4.1412182e+03 -6.0479297e+02 - -2.8751650e+03 4.0195561e+03 -6.1027467e+02 - -3.0227408e+03 3.8906245e+03 -6.1474329e+02 - -3.1718702e+03 3.7551876e+03 -6.1805268e+02 - -3.3211599e+03 3.6142711e+03 -6.2008769e+02 - -3.4691245e+03 3.4691245e+03 -6.2077451e+02 - -3.6142711e+03 3.3211599e+03 -6.2008769e+02 - -3.7551876e+03 3.1718702e+03 -6.1805268e+02 - -3.8906245e+03 3.0227408e+03 -6.1474329e+02 - -4.0195561e+03 2.8751650e+03 -6.1027467e+02 - -4.1412182e+03 2.7303746e+03 -6.0479297e+02 - -4.2551178e+03 2.5893925e+03 -5.9846348e+02 - -4.3610191e+03 2.4530097e+03 -5.9145893e+02 - -4.4589121e+03 2.3217845e+03 -5.8394937e+02 - -4.5489711e+03 2.1960591e+03 -5.7609428e+02 - -4.6315093e+03 2.0759879e+03 -5.6803732e+02 - -4.7069359e+03 1.9615707e+03 -5.5990341e+02 - -4.7757185e+03 1.8526874e+03 -5.5179786e+02 - -4.8383522e+03 1.7491299e+03 -5.4380690e+02 - -4.8953357e+03 1.6506305e+03 -5.3599916e+02 - -4.9471546e+03 1.5568843e+03 -5.2842769e+02 - -4.9942701e+03 1.4675673e+03 -5.2113218e+02 - -5.0371119e+03 1.3823504e+03 -5.1414115e+02 - -5.0760746e+03 1.3009088e+03 -5.0747400e+02 - -5.1115171e+03 1.2229284e+03 -5.0114287e+02 - -5.1437626e+03 1.1481107e+03 -4.9515417e+02 - -5.1731007e+03 1.0761744e+03 -4.8950994e+02 - -5.1997892e+03 1.0068572e+03 -4.8420892e+02 - -5.2240572e+03 9.3991538e+02 -4.7924746e+02 - -5.2461072e+03 8.7512362e+02 -4.7462025e+02 - -5.2661181e+03 8.1227399e+02 -4.7032084e+02 - -5.2842473e+03 7.5117481e+02 -4.6634212e+02 - -5.3006332e+03 6.9164934e+02 -4.6267667e+02 - -5.3153973e+03 6.3353446e+02 -4.5931699e+02 - -5.3286458e+03 5.7667934e+02 -4.5625575e+02 - -5.3404712e+03 5.2094413e+02 -4.5348589e+02 - -5.3509542e+03 4.6619871e+02 -4.5100078e+02 - -5.3601642e+03 4.1232155e+02 -4.4879428e+02 - -5.3681609e+03 3.5919860e+02 -4.4686080e+02 - -5.3749952e+03 3.0672226e+02 -4.4519536e+02 - -5.3807095e+03 2.5479041e+02 -4.4379358e+02 - -5.3853388e+03 2.0330555e+02 -4.4265177e+02 - -5.3889112e+03 1.5217389e+02 -4.4176686e+02 - -5.3914479e+03 1.0130461e+02 -4.4113649e+02 - -5.3929640e+03 5.0609051e+01 -4.4075895e+02 - -5.3934684e+03 -1.9253709e-08 -4.4063321e+02 - -5.3929640e+03 -5.0609051e+01 -4.4075895e+02 - -5.3914479e+03 -1.0130461e+02 -4.4113649e+02 - -5.3889112e+03 -1.5217389e+02 -4.4176686e+02 - -5.3853388e+03 -2.0330555e+02 -4.4265177e+02 - -5.3807095e+03 -2.5479041e+02 -4.4379358e+02 - -5.3749952e+03 -3.0672226e+02 -4.4519536e+02 - -5.3681609e+03 -3.5919860e+02 -4.4686080e+02 - -5.3601642e+03 -4.1232155e+02 -4.4879428e+02 - -5.3509542e+03 -4.6619871e+02 -4.5100078e+02 - -5.3404712e+03 -5.2094413e+02 -4.5348589e+02 - -5.3286458e+03 -5.7667934e+02 -4.5625575e+02 - -5.3153973e+03 -6.3353446e+02 -4.5931699e+02 - -5.3006332e+03 -6.9164934e+02 -4.6267667e+02 - -5.2842473e+03 -7.5117481e+02 -4.6634212e+02 - -5.2661181e+03 -8.1227399e+02 -4.7032084e+02 - -5.2461072e+03 -8.7512362e+02 -4.7462025e+02 - -5.2240572e+03 -9.3991538e+02 -4.7924746e+02 - -5.1997892e+03 -1.0068572e+03 -4.8420892e+02 - -5.1731007e+03 -1.0761744e+03 -4.8950994e+02 - -5.1437626e+03 -1.1481107e+03 -4.9515417e+02 - -5.1115171e+03 -1.2229284e+03 -5.0114287e+02 - -5.0760746e+03 -1.3009088e+03 -5.0747400e+02 - -5.0371119e+03 -1.3823504e+03 -5.1414115e+02 - -4.9942701e+03 -1.4675673e+03 -5.2113218e+02 - -4.9471546e+03 -1.5568843e+03 -5.2842769e+02 - -4.8953357e+03 -1.6506305e+03 -5.3599916e+02 - -4.8383522e+03 -1.7491299e+03 -5.4380690e+02 - -4.7757185e+03 -1.8526874e+03 -5.5179786e+02 - -4.7069359e+03 -1.9615707e+03 -5.5990341e+02 - -4.6315093e+03 -2.0759879e+03 -5.6803732e+02 - -4.5489711e+03 -2.1960591e+03 -5.7609428e+02 - -4.4589121e+03 -2.3217845e+03 -5.8394937e+02 - -4.3610191e+03 -2.4530097e+03 -5.9145893e+02 - -4.2551178e+03 -2.5893925e+03 -5.9846348e+02 - -4.1412182e+03 -2.7303746e+03 -6.0479297e+02 - -4.0195561e+03 -2.8751650e+03 -6.1027467e+02 - -3.8906245e+03 -3.0227408e+03 -6.1474329e+02 - -3.7551876e+03 -3.1718702e+03 -6.1805268e+02 - -3.6142711e+03 -3.3211599e+03 -6.2008769e+02 - -3.4691245e+03 -3.4691245e+03 -6.2077451e+02 - -3.3211599e+03 -3.6142711e+03 -6.2008769e+02 - -3.1718702e+03 -3.7551876e+03 -6.1805268e+02 - -3.0227408e+03 -3.8906245e+03 -6.1474329e+02 - -2.8751650e+03 -4.0195561e+03 -6.1027467e+02 - -2.7303746e+03 -4.1412182e+03 -6.0479297e+02 - -2.5893925e+03 -4.2551178e+03 -5.9846348e+02 - -2.4530097e+03 -4.3610191e+03 -5.9145893e+02 - -2.3217845e+03 -4.4589121e+03 -5.8394937e+02 - -2.1960591e+03 -4.5489711e+03 -5.7609428e+02 - -2.0759879e+03 -4.6315093e+03 -5.6803732e+02 - -1.9615707e+03 -4.7069359e+03 -5.5990341e+02 - -1.8526874e+03 -4.7757185e+03 -5.5179786e+02 - -1.7491299e+03 -4.8383522e+03 -5.4380690e+02 - -1.6506305e+03 -4.8953357e+03 -5.3599916e+02 - -1.5568843e+03 -4.9471546e+03 -5.2842769e+02 - -1.4675673e+03 -4.9942701e+03 -5.2113218e+02 - -1.3823504e+03 -5.0371119e+03 -5.1414115e+02 - -1.3009088e+03 -5.0760746e+03 -5.0747400e+02 - -1.2229284e+03 -5.1115171e+03 -5.0114287e+02 - -1.1481107e+03 -5.1437626e+03 -4.9515417e+02 - -1.0761744e+03 -5.1731007e+03 -4.8950994e+02 - -1.0068572e+03 -5.1997892e+03 -4.8420892e+02 - -9.3991538e+02 -5.2240572e+03 -4.7924746e+02 - -8.7512362e+02 -5.2461072e+03 -4.7462025e+02 - -8.1227399e+02 -5.2661181e+03 -4.7032084e+02 - -7.5117481e+02 -5.2842473e+03 -4.6634212e+02 - -6.9164934e+02 -5.3006332e+03 -4.6267667e+02 - -6.3353446e+02 -5.3153973e+03 -4.5931699e+02 - -5.7667934e+02 -5.3286458e+03 -4.5625575e+02 - -5.2094413e+02 -5.3404712e+03 -4.5348589e+02 - -4.6619871e+02 -5.3509542e+03 -4.5100078e+02 - -4.1232155e+02 -5.3601642e+03 -4.4879428e+02 - -3.5919860e+02 -5.3681609e+03 -4.4686080e+02 - -3.0672226e+02 -5.3749952e+03 -4.4519536e+02 - -2.5479041e+02 -5.3807095e+03 -4.4379358e+02 - -2.0330555e+02 -5.3853388e+03 -4.4265177e+02 - -1.5217389e+02 -5.3889112e+03 -4.4176686e+02 - -1.0130461e+02 -5.3914479e+03 -4.4113649e+02 - -5.0609052e+01 -5.3929640e+03 -4.4075895e+02 - 4.8134273e-09 -5.3934684e+03 -4.4063321e+02 - 5.0609051e+01 -5.3929640e+03 -4.4075895e+02 - 1.0130461e+02 -5.3914479e+03 -4.4113649e+02 - 1.5217389e+02 -5.3889112e+03 -4.4176686e+02 - 2.0330555e+02 -5.3853388e+03 -4.4265177e+02 - 2.5479041e+02 -5.3807095e+03 -4.4379358e+02 - 3.0672226e+02 -5.3749952e+03 -4.4519536e+02 - 3.5919860e+02 -5.3681609e+03 -4.4686080e+02 - 4.1232155e+02 -5.3601642e+03 -4.4879428e+02 - 4.6619871e+02 -5.3509542e+03 -4.5100078e+02 - 5.2094413e+02 -5.3404712e+03 -4.5348589e+02 - 5.7667934e+02 -5.3286458e+03 -4.5625575e+02 - 6.3353446e+02 -5.3153973e+03 -4.5931699e+02 - 6.9164934e+02 -5.3006332e+03 -4.6267667e+02 - 7.5117481e+02 -5.2842473e+03 -4.6634212e+02 - 8.1227399e+02 -5.2661181e+03 -4.7032084e+02 - 8.7512362e+02 -5.2461072e+03 -4.7462025e+02 - 9.3991538e+02 -5.2240572e+03 -4.7924746e+02 - 1.0068572e+03 -5.1997892e+03 -4.8420892e+02 - 1.0761744e+03 -5.1731007e+03 -4.8950994e+02 - 1.1481107e+03 -5.1437626e+03 -4.9515417e+02 - 1.2229284e+03 -5.1115171e+03 -5.0114287e+02 - 1.3009088e+03 -5.0760746e+03 -5.0747400e+02 - 1.3823504e+03 -5.0371119e+03 -5.1414115e+02 - 1.4675673e+03 -4.9942701e+03 -5.2113218e+02 - 1.5568843e+03 -4.9471546e+03 -5.2842769e+02 - 1.6506305e+03 -4.8953357e+03 -5.3599916e+02 - 1.7491299e+03 -4.8383522e+03 -5.4380690e+02 - 1.8526874e+03 -4.7757185e+03 -5.5179786e+02 - 1.9615707e+03 -4.7069359e+03 -5.5990341e+02 - 2.0759879e+03 -4.6315093e+03 -5.6803732e+02 - 2.1960591e+03 -4.5489711e+03 -5.7609428e+02 - 2.3217845e+03 -4.4589121e+03 -5.8394937e+02 - 2.4530097e+03 -4.3610191e+03 -5.9145893e+02 - 2.5893925e+03 -4.2551178e+03 -5.9846348e+02 - 2.7303746e+03 -4.1412182e+03 -6.0479297e+02 - 2.8751650e+03 -4.0195561e+03 -6.1027467e+02 - 3.0227408e+03 -3.8906245e+03 -6.1474329e+02 - 3.1718702e+03 -3.7551876e+03 -6.1805268e+02 - 3.3211599e+03 -3.6142711e+03 -6.2008769e+02 - 3.4691245e+03 -3.4691245e+03 -6.2077451e+02 - 3.6142711e+03 -3.3211599e+03 -6.2008769e+02 - 3.7551876e+03 -3.1718702e+03 -6.1805268e+02 - 3.8906245e+03 -3.0227408e+03 -6.1474329e+02 - 4.0195561e+03 -2.8751650e+03 -6.1027467e+02 - 4.1412182e+03 -2.7303746e+03 -6.0479297e+02 - 4.2551178e+03 -2.5893925e+03 -5.9846348e+02 - 4.3610191e+03 -2.4530097e+03 -5.9145893e+02 - 4.4589121e+03 -2.3217845e+03 -5.8394937e+02 - 4.5489711e+03 -2.1960591e+03 -5.7609428e+02 - 4.6315093e+03 -2.0759879e+03 -5.6803732e+02 - 4.7069359e+03 -1.9615707e+03 -5.5990341e+02 - 4.7757185e+03 -1.8526874e+03 -5.5179786e+02 - 4.8383522e+03 -1.7491299e+03 -5.4380690e+02 - 4.8953357e+03 -1.6506305e+03 -5.3599916e+02 - 4.9471546e+03 -1.5568843e+03 -5.2842769e+02 - 4.9942701e+03 -1.4675673e+03 -5.2113218e+02 - 5.0371119e+03 -1.3823504e+03 -5.1414115e+02 - 5.0760746e+03 -1.3009088e+03 -5.0747400e+02 - 5.1115171e+03 -1.2229284e+03 -5.0114287e+02 - 5.1437626e+03 -1.1481107e+03 -4.9515417e+02 - 5.1731007e+03 -1.0761744e+03 -4.8950994e+02 - 5.1997892e+03 -1.0068572e+03 -4.8420892e+02 - 5.2240572e+03 -9.3991538e+02 -4.7924746e+02 - 5.2461072e+03 -8.7512362e+02 -4.7462025e+02 - 5.2661181e+03 -8.1227399e+02 -4.7032084e+02 - 5.2842473e+03 -7.5117481e+02 -4.6634212e+02 - 5.3006332e+03 -6.9164934e+02 -4.6267667e+02 - 5.3153973e+03 -6.3353446e+02 -4.5931699e+02 - 5.3286458e+03 -5.7667934e+02 -4.5625575e+02 - 5.3404712e+03 -5.2094413e+02 -4.5348589e+02 - 5.3509542e+03 -4.6619871e+02 -4.5100078e+02 - 5.3601642e+03 -4.1232155e+02 -4.4879428e+02 - 5.3681609e+03 -3.5919860e+02 -4.4686080e+02 - 5.3749952e+03 -3.0672226e+02 -4.4519536e+02 - 5.3807095e+03 -2.5479041e+02 -4.4379358e+02 - 5.3853388e+03 -2.0330555e+02 -4.4265177e+02 - 5.3889112e+03 -1.5217389e+02 -4.4176686e+02 - 5.3914479e+03 -1.0130461e+02 -4.4113649e+02 - 5.3929640e+03 -5.0609051e+01 -4.4075895e+02 - 5.3934684e+03 4.8134273e-09 -4.4063321e+02 - 5.3835453e+03 0.0000000e+00 -5.8484192e+02 - 5.3830344e+03 5.0706483e+01 -5.8500674e+02 - 5.3814987e+03 1.0149967e+02 -5.8550164e+02 - 5.3789293e+03 1.5246698e+02 -5.8632792e+02 - 5.3753110e+03 2.0369725e+02 -5.8748775e+02 - 5.3706222e+03 2.5528148e+02 -5.8898416e+02 - 5.3648348e+03 3.0731358e+02 -5.9082101e+02 - 5.3579134e+03 3.5989120e+02 -5.9300304e+02 - 5.3498152e+03 4.1311651e+02 -5.9553576e+02 - 5.3404891e+03 4.6709712e+02 -5.9842550e+02 - 5.3298750e+03 5.2194706e+02 -6.0167932e+02 - 5.3179028e+03 5.7778771e+02 -6.0530496e+02 - 5.3044917e+03 6.3474892e+02 -6.0931076e+02 - 5.2895487e+03 6.9297017e+02 -6.1370554e+02 - 5.2729670e+03 7.5260171e+02 -6.1849846e+02 - 5.2546252e+03 8.1380589e+02 -6.2369878e+02 - 5.2343844e+03 8.7675836e+02 -6.2931563e+02 - 5.2120873e+03 9.4164940e+02 -6.3535762e+02 - 5.1875553e+03 1.0086851e+03 -6.4183241e+02 - 5.1605863e+03 1.0780885e+03 -6.4874610e+02 - 5.1309525e+03 1.1501003e+03 -6.5610251e+02 - 5.0983977e+03 1.2249791e+03 -6.6390224e+02 - 5.0626347e+03 1.3030015e+03 -6.7214150e+02 - 5.0233440e+03 1.3844606e+03 -6.8081073e+02 - 4.9801714e+03 1.4696635e+03 -6.8989285e+02 - 4.9327287e+03 1.5589269e+03 -6.9936131e+02 - 4.8805943e+03 1.6525705e+03 -7.0917771e+02 - 4.8233178e+03 1.7509071e+03 -7.1928929e+02 - 4.7604261e+03 1.8542295e+03 -7.2962616e+02 - 4.6914360e+03 1.9627922e+03 -7.4009854e+02 - 4.6158703e+03 2.0767897e+03 -7.5059438e+02 - 4.5332816e+03 2.1963287e+03 -7.6097760e+02 - 4.4432818e+03 2.3213979e+03 -7.7108758e+02 - 4.3455792e+03 2.4518350e+03 -7.8074051e+02 - 4.2400191e+03 2.5872947e+03 -7.8973321e+02 - 4.1266269e+03 2.7272229e+03 -7.9784986e+02 - 4.0056471e+03 2.8708415e+03 -8.0487203e+02 - 3.8775721e+03 3.0171504e+03 -8.1059132e+02 - 3.7431549e+03 3.1649497e+03 -8.1482396e+02 - 3.6033981e+03 3.3128860e+03 -8.1742543e+02 - 3.4595182e+03 3.4595182e+03 -8.1830320e+02 - 3.3128860e+03 3.6033981e+03 -8.1742543e+02 - 3.1649497e+03 3.7431549e+03 -8.1482396e+02 - 3.0171504e+03 3.8775721e+03 -8.1059132e+02 - 2.8708415e+03 4.0056471e+03 -8.0487203e+02 - 2.7272229e+03 4.1266269e+03 -7.9784986e+02 - 2.5872947e+03 4.2400191e+03 -7.8973321e+02 - 2.4518350e+03 4.3455792e+03 -7.8074051e+02 - 2.3213979e+03 4.4432818e+03 -7.7108758e+02 - 2.1963287e+03 4.5332816e+03 -7.6097760e+02 - 2.0767897e+03 4.6158703e+03 -7.5059438e+02 - 1.9627922e+03 4.6914360e+03 -7.4009854e+02 - 1.8542295e+03 4.7604261e+03 -7.2962616e+02 - 1.7509071e+03 4.8233178e+03 -7.1928929e+02 - 1.6525705e+03 4.8805943e+03 -7.0917771e+02 - 1.5589269e+03 4.9327287e+03 -6.9936131e+02 - 1.4696635e+03 4.9801714e+03 -6.8989285e+02 - 1.3844606e+03 5.0233440e+03 -6.8081073e+02 - 1.3030015e+03 5.0626347e+03 -6.7214150e+02 - 1.2249791e+03 5.0983977e+03 -6.6390224e+02 - 1.1501003e+03 5.1309525e+03 -6.5610251e+02 - 1.0780885e+03 5.1605863e+03 -6.4874610e+02 - 1.0086851e+03 5.1875553e+03 -6.4183241e+02 - 9.4164940e+02 5.2120873e+03 -6.3535762e+02 - 8.7675836e+02 5.2343844e+03 -6.2931563e+02 - 8.1380589e+02 5.2546252e+03 -6.2369878e+02 - 7.5260171e+02 5.2729670e+03 -6.1849846e+02 - 6.9297017e+02 5.2895487e+03 -6.1370554e+02 - 6.3474892e+02 5.3044917e+03 -6.0931076e+02 - 5.7778771e+02 5.3179028e+03 -6.0530496e+02 - 5.2194706e+02 5.3298750e+03 -6.0167932e+02 - 4.6709712e+02 5.3404891e+03 -5.9842550e+02 - 4.1311651e+02 5.3498152e+03 -5.9553576e+02 - 3.5989120e+02 5.3579134e+03 -5.9300304e+02 - 3.0731358e+02 5.3648348e+03 -5.9082101e+02 - 2.5528148e+02 5.3706222e+03 -5.8898416e+02 - 2.0369725e+02 5.3753110e+03 -5.8748775e+02 - 1.5246698e+02 5.3789293e+03 -5.8632792e+02 - 1.0149967e+02 5.3814987e+03 -5.8550164e+02 - 5.0706483e+01 5.3830344e+03 -5.8500674e+02 - 9.6268545e-09 5.3835453e+03 -5.8484192e+02 - -5.0706483e+01 5.3830344e+03 -5.8500674e+02 - -1.0149967e+02 5.3814987e+03 -5.8550164e+02 - -1.5246698e+02 5.3789293e+03 -5.8632792e+02 - -2.0369725e+02 5.3753110e+03 -5.8748775e+02 - -2.5528148e+02 5.3706222e+03 -5.8898416e+02 - -3.0731358e+02 5.3648348e+03 -5.9082101e+02 - -3.5989120e+02 5.3579134e+03 -5.9300304e+02 - -4.1311651e+02 5.3498152e+03 -5.9553576e+02 - -4.6709712e+02 5.3404891e+03 -5.9842550e+02 - -5.2194706e+02 5.3298750e+03 -6.0167932e+02 - -5.7778771e+02 5.3179028e+03 -6.0530496e+02 - -6.3474892e+02 5.3044917e+03 -6.0931076e+02 - -6.9297017e+02 5.2895487e+03 -6.1370554e+02 - -7.5260171e+02 5.2729670e+03 -6.1849846e+02 - -8.1380589e+02 5.2546252e+03 -6.2369878e+02 - -8.7675836e+02 5.2343844e+03 -6.2931563e+02 - -9.4164940e+02 5.2120873e+03 -6.3535762e+02 - -1.0086851e+03 5.1875553e+03 -6.4183241e+02 - -1.0780885e+03 5.1605863e+03 -6.4874610e+02 - -1.1501003e+03 5.1309525e+03 -6.5610251e+02 - -1.2249791e+03 5.0983977e+03 -6.6390224e+02 - -1.3030015e+03 5.0626347e+03 -6.7214150e+02 - -1.3844606e+03 5.0233440e+03 -6.8081073e+02 - -1.4696635e+03 4.9801714e+03 -6.8989285e+02 - -1.5589269e+03 4.9327287e+03 -6.9936131e+02 - -1.6525705e+03 4.8805943e+03 -7.0917771e+02 - -1.7509071e+03 4.8233178e+03 -7.1928929e+02 - -1.8542295e+03 4.7604261e+03 -7.2962616e+02 - -1.9627922e+03 4.6914360e+03 -7.4009854e+02 - -2.0767897e+03 4.6158703e+03 -7.5059438e+02 - -2.1963287e+03 4.5332816e+03 -7.6097760e+02 - -2.3213979e+03 4.4432818e+03 -7.7108758e+02 - -2.4518350e+03 4.3455792e+03 -7.8074051e+02 - -2.5872947e+03 4.2400191e+03 -7.8973321e+02 - -2.7272229e+03 4.1266269e+03 -7.9784986e+02 - -2.8708415e+03 4.0056471e+03 -8.0487203e+02 - -3.0171504e+03 3.8775721e+03 -8.1059132e+02 - -3.1649497e+03 3.7431549e+03 -8.1482396e+02 - -3.3128860e+03 3.6033981e+03 -8.1742543e+02 - -3.4595182e+03 3.4595182e+03 -8.1830320e+02 - -3.6033981e+03 3.3128860e+03 -8.1742543e+02 - -3.7431549e+03 3.1649497e+03 -8.1482396e+02 - -3.8775721e+03 3.0171504e+03 -8.1059132e+02 - -4.0056471e+03 2.8708415e+03 -8.0487203e+02 - -4.1266269e+03 2.7272229e+03 -7.9784986e+02 - -4.2400191e+03 2.5872947e+03 -7.8973321e+02 - -4.3455792e+03 2.4518350e+03 -7.8074051e+02 - -4.4432818e+03 2.3213979e+03 -7.7108758e+02 - -4.5332816e+03 2.1963287e+03 -7.6097760e+02 - -4.6158703e+03 2.0767897e+03 -7.5059438e+02 - -4.6914360e+03 1.9627922e+03 -7.4009854e+02 - -4.7604261e+03 1.8542295e+03 -7.2962616e+02 - -4.8233178e+03 1.7509071e+03 -7.1928929e+02 - -4.8805943e+03 1.6525705e+03 -7.0917771e+02 - -4.9327287e+03 1.5589269e+03 -6.9936131e+02 - -4.9801714e+03 1.4696635e+03 -6.8989285e+02 - -5.0233440e+03 1.3844606e+03 -6.8081073e+02 - -5.0626347e+03 1.3030015e+03 -6.7214150e+02 - -5.0983977e+03 1.2249791e+03 -6.6390224e+02 - -5.1309525e+03 1.1501003e+03 -6.5610251e+02 - -5.1605863e+03 1.0780885e+03 -6.4874610e+02 - -5.1875553e+03 1.0086851e+03 -6.4183241e+02 - -5.2120873e+03 9.4164940e+02 -6.3535762e+02 - -5.2343844e+03 8.7675836e+02 -6.2931563e+02 - -5.2546252e+03 8.1380589e+02 -6.2369878e+02 - -5.2729670e+03 7.5260171e+02 -6.1849846e+02 - -5.2895487e+03 6.9297017e+02 -6.1370554e+02 - -5.3044917e+03 6.3474892e+02 -6.0931076e+02 - -5.3179028e+03 5.7778771e+02 -6.0530496e+02 - -5.3298750e+03 5.2194706e+02 -6.0167932e+02 - -5.3404891e+03 4.6709712e+02 -5.9842550e+02 - -5.3498152e+03 4.1311651e+02 -5.9553576e+02 - -5.3579134e+03 3.5989120e+02 -5.9300304e+02 - -5.3648348e+03 3.0731358e+02 -5.9082101e+02 - -5.3706222e+03 2.5528148e+02 -5.8898416e+02 - -5.3753110e+03 2.0369725e+02 -5.8748775e+02 - -5.3789293e+03 1.5246698e+02 -5.8632792e+02 - -5.3814987e+03 1.0149967e+02 -5.8550164e+02 - -5.3830344e+03 5.0706483e+01 -5.8500674e+02 - -5.3835453e+03 0.0000000e+00 -5.8484192e+02 - -5.3830344e+03 -5.0706483e+01 -5.8500674e+02 - -5.3814987e+03 -1.0149967e+02 -5.8550164e+02 - -5.3789293e+03 -1.5246698e+02 -5.8632792e+02 - -5.3753110e+03 -2.0369725e+02 -5.8748775e+02 - -5.3706222e+03 -2.5528148e+02 -5.8898416e+02 - -5.3648348e+03 -3.0731358e+02 -5.9082101e+02 - -5.3579134e+03 -3.5989120e+02 -5.9300304e+02 - -5.3498152e+03 -4.1311651e+02 -5.9553576e+02 - -5.3404891e+03 -4.6709712e+02 -5.9842550e+02 - -5.3298750e+03 -5.2194706e+02 -6.0167932e+02 - -5.3179028e+03 -5.7778771e+02 -6.0530496e+02 - -5.3044917e+03 -6.3474892e+02 -6.0931076e+02 - -5.2895487e+03 -6.9297017e+02 -6.1370554e+02 - -5.2729670e+03 -7.5260171e+02 -6.1849846e+02 - -5.2546252e+03 -8.1380589e+02 -6.2369878e+02 - -5.2343844e+03 -8.7675836e+02 -6.2931563e+02 - -5.2120873e+03 -9.4164940e+02 -6.3535762e+02 - -5.1875553e+03 -1.0086851e+03 -6.4183241e+02 - -5.1605863e+03 -1.0780885e+03 -6.4874610e+02 - -5.1309525e+03 -1.1501003e+03 -6.5610251e+02 - -5.0983977e+03 -1.2249791e+03 -6.6390224e+02 - -5.0626347e+03 -1.3030015e+03 -6.7214150e+02 - -5.0233440e+03 -1.3844606e+03 -6.8081073e+02 - -4.9801714e+03 -1.4696635e+03 -6.8989285e+02 - -4.9327287e+03 -1.5589269e+03 -6.9936131e+02 - -4.8805943e+03 -1.6525705e+03 -7.0917771e+02 - -4.8233178e+03 -1.7509071e+03 -7.1928929e+02 - -4.7604261e+03 -1.8542295e+03 -7.2962616e+02 - -4.6914360e+03 -1.9627922e+03 -7.4009854e+02 - -4.6158703e+03 -2.0767897e+03 -7.5059438e+02 - -4.5332816e+03 -2.1963287e+03 -7.6097760e+02 - -4.4432818e+03 -2.3213979e+03 -7.7108758e+02 - -4.3455792e+03 -2.4518350e+03 -7.8074051e+02 - -4.2400191e+03 -2.5872947e+03 -7.8973321e+02 - -4.1266269e+03 -2.7272229e+03 -7.9784986e+02 - -4.0056471e+03 -2.8708415e+03 -8.0487203e+02 - -3.8775721e+03 -3.0171504e+03 -8.1059132e+02 - -3.7431549e+03 -3.1649497e+03 -8.1482396e+02 - -3.6033981e+03 -3.3128860e+03 -8.1742543e+02 - -3.4595182e+03 -3.4595182e+03 -8.1830320e+02 - -3.3128860e+03 -3.6033981e+03 -8.1742543e+02 - -3.1649497e+03 -3.7431549e+03 -8.1482396e+02 - -3.0171504e+03 -3.8775721e+03 -8.1059132e+02 - -2.8708415e+03 -4.0056471e+03 -8.0487203e+02 - -2.7272229e+03 -4.1266269e+03 -7.9784986e+02 - -2.5872947e+03 -4.2400191e+03 -7.8973321e+02 - -2.4518350e+03 -4.3455792e+03 -7.8074051e+02 - -2.3213979e+03 -4.4432818e+03 -7.7108758e+02 - -2.1963287e+03 -4.5332816e+03 -7.6097760e+02 - -2.0767897e+03 -4.6158703e+03 -7.5059438e+02 - -1.9627922e+03 -4.6914360e+03 -7.4009854e+02 - -1.8542295e+03 -4.7604261e+03 -7.2962616e+02 - -1.7509071e+03 -4.8233178e+03 -7.1928929e+02 - -1.6525705e+03 -4.8805943e+03 -7.0917771e+02 - -1.5589269e+03 -4.9327287e+03 -6.9936131e+02 - -1.4696635e+03 -4.9801714e+03 -6.8989285e+02 - -1.3844606e+03 -5.0233440e+03 -6.8081073e+02 - -1.3030015e+03 -5.0626347e+03 -6.7214150e+02 - -1.2249791e+03 -5.0983977e+03 -6.6390224e+02 - -1.1501003e+03 -5.1309525e+03 -6.5610251e+02 - -1.0780885e+03 -5.1605863e+03 -6.4874610e+02 - -1.0086851e+03 -5.1875553e+03 -6.4183241e+02 - -9.4164940e+02 -5.2120873e+03 -6.3535762e+02 - -8.7675836e+02 -5.2343844e+03 -6.2931563e+02 - -8.1380589e+02 -5.2546252e+03 -6.2369878e+02 - -7.5260171e+02 -5.2729670e+03 -6.1849846e+02 - -6.9297017e+02 -5.2895487e+03 -6.1370554e+02 - -6.3474892e+02 -5.3044917e+03 -6.0931076e+02 - -5.7778771e+02 -5.3179028e+03 -6.0530496e+02 - -5.2194706e+02 -5.3298750e+03 -6.0167932e+02 - -4.6709712e+02 -5.3404891e+03 -5.9842550e+02 - -4.1311651e+02 -5.3498152e+03 -5.9553576e+02 - -3.5989120e+02 -5.3579134e+03 -5.9300304e+02 - -3.0731358e+02 -5.3648348e+03 -5.9082101e+02 - -2.5528148e+02 -5.3706222e+03 -5.8898416e+02 - -2.0369725e+02 -5.3753110e+03 -5.8748775e+02 - -1.5246698e+02 -5.3789293e+03 -5.8632792e+02 - -1.0149967e+02 -5.3814987e+03 -5.8550164e+02 - -5.0706483e+01 -5.3830344e+03 -5.8500674e+02 - -9.6268545e-09 -5.3835453e+03 -5.8484192e+02 - 5.0706483e+01 -5.3830344e+03 -5.8500674e+02 - 1.0149967e+02 -5.3814987e+03 -5.8550164e+02 - 1.5246698e+02 -5.3789293e+03 -5.8632792e+02 - 2.0369725e+02 -5.3753110e+03 -5.8748775e+02 - 2.5528148e+02 -5.3706222e+03 -5.8898416e+02 - 3.0731358e+02 -5.3648348e+03 -5.9082101e+02 - 3.5989120e+02 -5.3579134e+03 -5.9300304e+02 - 4.1311651e+02 -5.3498152e+03 -5.9553576e+02 - 4.6709712e+02 -5.3404891e+03 -5.9842550e+02 - 5.2194706e+02 -5.3298750e+03 -6.0167932e+02 - 5.7778771e+02 -5.3179028e+03 -6.0530496e+02 - 6.3474892e+02 -5.3044917e+03 -6.0931076e+02 - 6.9297017e+02 -5.2895487e+03 -6.1370554e+02 - 7.5260171e+02 -5.2729670e+03 -6.1849846e+02 - 8.1380589e+02 -5.2546252e+03 -6.2369878e+02 - 8.7675836e+02 -5.2343844e+03 -6.2931563e+02 - 9.4164940e+02 -5.2120873e+03 -6.3535762e+02 - 1.0086851e+03 -5.1875553e+03 -6.4183241e+02 - 1.0780885e+03 -5.1605863e+03 -6.4874610e+02 - 1.1501003e+03 -5.1309525e+03 -6.5610251e+02 - 1.2249791e+03 -5.0983977e+03 -6.6390224e+02 - 1.3030015e+03 -5.0626347e+03 -6.7214150e+02 - 1.3844606e+03 -5.0233440e+03 -6.8081073e+02 - 1.4696635e+03 -4.9801714e+03 -6.8989285e+02 - 1.5589269e+03 -4.9327287e+03 -6.9936131e+02 - 1.6525705e+03 -4.8805943e+03 -7.0917771e+02 - 1.7509071e+03 -4.8233178e+03 -7.1928929e+02 - 1.8542295e+03 -4.7604261e+03 -7.2962616e+02 - 1.9627922e+03 -4.6914360e+03 -7.4009854e+02 - 2.0767897e+03 -4.6158703e+03 -7.5059438e+02 - 2.1963287e+03 -4.5332816e+03 -7.6097760e+02 - 2.3213979e+03 -4.4432818e+03 -7.7108758e+02 - 2.4518350e+03 -4.3455792e+03 -7.8074051e+02 - 2.5872947e+03 -4.2400191e+03 -7.8973321e+02 - 2.7272229e+03 -4.1266269e+03 -7.9784986e+02 - 2.8708415e+03 -4.0056471e+03 -8.0487203e+02 - 3.0171504e+03 -3.8775721e+03 -8.1059132e+02 - 3.1649497e+03 -3.7431549e+03 -8.1482396e+02 - 3.3128860e+03 -3.6033981e+03 -8.1742543e+02 - 3.4595182e+03 -3.4595182e+03 -8.1830320e+02 - 3.6033981e+03 -3.3128860e+03 -8.1742543e+02 - 3.7431549e+03 -3.1649497e+03 -8.1482396e+02 - 3.8775721e+03 -3.0171504e+03 -8.1059132e+02 - 4.0056471e+03 -2.8708415e+03 -8.0487203e+02 - 4.1266269e+03 -2.7272229e+03 -7.9784986e+02 - 4.2400191e+03 -2.5872947e+03 -7.8973321e+02 - 4.3455792e+03 -2.4518350e+03 -7.8074051e+02 - 4.4432818e+03 -2.3213979e+03 -7.7108758e+02 - 4.5332816e+03 -2.1963287e+03 -7.6097760e+02 - 4.6158703e+03 -2.0767897e+03 -7.5059438e+02 - 4.6914360e+03 -1.9627922e+03 -7.4009854e+02 - 4.7604261e+03 -1.8542295e+03 -7.2962616e+02 - 4.8233178e+03 -1.7509071e+03 -7.1928929e+02 - 4.8805943e+03 -1.6525705e+03 -7.0917771e+02 - 4.9327287e+03 -1.5589269e+03 -6.9936131e+02 - 4.9801714e+03 -1.4696635e+03 -6.8989285e+02 - 5.0233440e+03 -1.3844606e+03 -6.8081073e+02 - 5.0626347e+03 -1.3030015e+03 -6.7214150e+02 - 5.0983977e+03 -1.2249791e+03 -6.6390224e+02 - 5.1309525e+03 -1.1501003e+03 -6.5610251e+02 - 5.1605863e+03 -1.0780885e+03 -6.4874610e+02 - 5.1875553e+03 -1.0086851e+03 -6.4183241e+02 - 5.2120873e+03 -9.4164940e+02 -6.3535762e+02 - 5.2343844e+03 -8.7675836e+02 -6.2931563e+02 - 5.2546252e+03 -8.1380589e+02 -6.2369878e+02 - 5.2729670e+03 -7.5260171e+02 -6.1849846e+02 - 5.2895487e+03 -6.9297017e+02 -6.1370554e+02 - 5.3044917e+03 -6.3474892e+02 -6.0931076e+02 - 5.3179028e+03 -5.7778771e+02 -6.0530496e+02 - 5.3298750e+03 -5.2194706e+02 -6.0167932e+02 - 5.3404891e+03 -4.6709712e+02 -5.9842550e+02 - 5.3498152e+03 -4.1311651e+02 -5.9553576e+02 - 5.3579134e+03 -3.5989120e+02 -5.9300304e+02 - 5.3648348e+03 -3.0731358e+02 -5.9082101e+02 - 5.3706222e+03 -2.5528148e+02 -5.8898416e+02 - 5.3753110e+03 -2.0369725e+02 -5.8748775e+02 - 5.3789293e+03 -1.5246698e+02 -5.8632792e+02 - 5.3814987e+03 -1.0149967e+02 -5.8550164e+02 - 5.3830344e+03 -5.0706483e+01 -5.8500674e+02 - 5.3835453e+03 0.0000000e+00 -5.8484192e+02 - 5.3709690e+03 -4.8134273e-09 -7.2684683e+02 - 5.3704500e+03 5.0829296e+01 -7.2704847e+02 - 5.3688900e+03 1.0174554e+02 -7.2765389e+02 - 5.3662800e+03 1.5283637e+02 -7.2866464e+02 - 5.3626045e+03 2.0419086e+02 -7.3008327e+02 - 5.3578419e+03 2.5590019e+02 -7.3191334e+02 - 5.3519637e+03 3.0805846e+02 -7.3415942e+02 - 5.3449342e+03 3.6076342e+02 -7.3682703e+02 - 5.3367103e+03 4.1411733e+02 -7.3992266e+02 - 5.3272402e+03 4.6822781e+02 -7.4345371e+02 - 5.3164635e+03 5.2320878e+02 -7.4742841e+02 - 5.3043098e+03 5.7918144e+02 -7.5185577e+02 - 5.2906976e+03 6.3627529e+02 -7.5674544e+02 - 5.2755334e+03 6.9462928e+02 -7.6210759e+02 - 5.2587102e+03 7.5439293e+02 -7.6795269e+02 - 5.2401061e+03 8.1572753e+02 -7.7429125e+02 - 5.2195823e+03 8.7880738e+02 -7.8113351e+02 - 5.1969815e+03 9.4382096e+02 -7.8848896e+02 - 5.1721254e+03 1.0109720e+03 -7.9636576e+02 - 5.1448130e+03 1.0804806e+03 -8.0477010e+02 - 5.1148179e+03 1.1525836e+03 -8.1370520e+02 - 5.0818861e+03 1.2275351e+03 -8.2317025e+02 - 5.0457339e+03 1.3056059e+03 -8.3315896e+02 - 5.0060460e+03 1.3870819e+03 -8.4365793e+02 - 4.9624747e+03 1.4722619e+03 -8.5464458e+02 - 4.9146396e+03 1.5614525e+03 -8.6608478e+02 - 4.8621298e+03 1.6549616e+03 -8.7793019e+02 - 4.8045074e+03 1.7530887e+03 -8.9011522e+02 - 4.7413157e+03 1.8561115e+03 -9.0255393e+02 - 4.6720900e+03 1.9642687e+03 -9.1513693e+02 - 4.5963751e+03 2.0777382e+03 -9.2772869e+02 - 4.5137477e+03 2.1966110e+03 -9.4016576e+02 - 4.4238455e+03 2.3208623e+03 -9.5225643e+02 - 4.3264020e+03 2.4503203e+03 -9.6378252e+02 - 4.2212856e+03 2.5846366e+03 -9.7450412e+02 - 4.1085395e+03 2.7232629e+03 -9.8416768e+02 - 3.9884177e+03 2.8654371e+03 -9.9251758e+02 - 3.8614113e+03 3.0101866e+03 -9.9931091e+02 - 3.7282587e+03 3.1563504e+03 -1.0043341e+03 - 3.5899347e+03 3.3026226e+03 -1.0074197e+03 - 3.4476154e+03 3.4476154e+03 -1.0084605e+03 - 3.3026226e+03 3.5899347e+03 -1.0074197e+03 - 3.1563504e+03 3.7282587e+03 -1.0043341e+03 - 3.0101866e+03 3.8614113e+03 -9.9931091e+02 - 2.8654371e+03 3.9884177e+03 -9.9251758e+02 - 2.7232629e+03 4.1085395e+03 -9.8416768e+02 - 2.5846366e+03 4.2212856e+03 -9.7450412e+02 - 2.4503203e+03 4.3264020e+03 -9.6378252e+02 - 2.3208623e+03 4.4238455e+03 -9.5225643e+02 - 2.1966110e+03 4.5137477e+03 -9.4016576e+02 - 2.0777382e+03 4.5963751e+03 -9.2772869e+02 - 1.9642687e+03 4.6720900e+03 -9.1513693e+02 - 1.8561115e+03 4.7413157e+03 -9.0255393e+02 - 1.7530887e+03 4.8045074e+03 -8.9011522e+02 - 1.6549616e+03 4.8621298e+03 -8.7793019e+02 - 1.5614525e+03 4.9146396e+03 -8.6608478e+02 - 1.4722619e+03 4.9624747e+03 -8.5464458e+02 - 1.3870819e+03 5.0060460e+03 -8.4365793e+02 - 1.3056059e+03 5.0457339e+03 -8.3315896e+02 - 1.2275351e+03 5.0818861e+03 -8.2317025e+02 - 1.1525836e+03 5.1148179e+03 -8.1370520e+02 - 1.0804806e+03 5.1448130e+03 -8.0477010e+02 - 1.0109720e+03 5.1721254e+03 -7.9636576e+02 - 9.4382096e+02 5.1969815e+03 -7.8848896e+02 - 8.7880738e+02 5.2195823e+03 -7.8113351e+02 - 8.1572753e+02 5.2401061e+03 -7.7429125e+02 - 7.5439293e+02 5.2587102e+03 -7.6795269e+02 - 6.9462928e+02 5.2755334e+03 -7.6210759e+02 - 6.3627529e+02 5.2906976e+03 -7.5674544e+02 - 5.7918144e+02 5.3043098e+03 -7.5185577e+02 - 5.2320878e+02 5.3164635e+03 -7.4742841e+02 - 4.6822781e+02 5.3272402e+03 -7.4345371e+02 - 4.1411733e+02 5.3367103e+03 -7.3992266e+02 - 3.6076342e+02 5.3449342e+03 -7.3682703e+02 - 3.0805846e+02 5.3519637e+03 -7.3415942e+02 - 2.5590019e+02 5.3578419e+03 -7.3191334e+02 - 2.0419086e+02 5.3626045e+03 -7.3008327e+02 - 1.5283637e+02 5.3662800e+03 -7.2866464e+02 - 1.0174554e+02 5.3688900e+03 -7.2765389e+02 - 5.0829296e+01 5.3704500e+03 -7.2704847e+02 - 9.6268545e-09 5.3709690e+03 -7.2684683e+02 - -5.0829296e+01 5.3704500e+03 -7.2704847e+02 - -1.0174554e+02 5.3688900e+03 -7.2765389e+02 - -1.5283637e+02 5.3662800e+03 -7.2866464e+02 - -2.0419086e+02 5.3626045e+03 -7.3008327e+02 - -2.5590019e+02 5.3578419e+03 -7.3191334e+02 - -3.0805846e+02 5.3519637e+03 -7.3415942e+02 - -3.6076342e+02 5.3449342e+03 -7.3682703e+02 - -4.1411733e+02 5.3367103e+03 -7.3992266e+02 - -4.6822781e+02 5.3272402e+03 -7.4345371e+02 - -5.2320878e+02 5.3164635e+03 -7.4742841e+02 - -5.7918144e+02 5.3043098e+03 -7.5185577e+02 - -6.3627529e+02 5.2906976e+03 -7.5674544e+02 - -6.9462928e+02 5.2755334e+03 -7.6210759e+02 - -7.5439293e+02 5.2587102e+03 -7.6795269e+02 - -8.1572753e+02 5.2401061e+03 -7.7429125e+02 - -8.7880738e+02 5.2195823e+03 -7.8113351e+02 - -9.4382096e+02 5.1969815e+03 -7.8848896e+02 - -1.0109720e+03 5.1721254e+03 -7.9636576e+02 - -1.0804806e+03 5.1448130e+03 -8.0477010e+02 - -1.1525836e+03 5.1148179e+03 -8.1370520e+02 - -1.2275351e+03 5.0818861e+03 -8.2317025e+02 - -1.3056059e+03 5.0457339e+03 -8.3315896e+02 - -1.3870819e+03 5.0060460e+03 -8.4365793e+02 - -1.4722619e+03 4.9624747e+03 -8.5464458e+02 - -1.5614525e+03 4.9146396e+03 -8.6608478e+02 - -1.6549616e+03 4.8621298e+03 -8.7793019e+02 - -1.7530887e+03 4.8045074e+03 -8.9011522e+02 - -1.8561115e+03 4.7413157e+03 -9.0255393e+02 - -1.9642687e+03 4.6720900e+03 -9.1513693e+02 - -2.0777382e+03 4.5963751e+03 -9.2772869e+02 - -2.1966110e+03 4.5137477e+03 -9.4016576e+02 - -2.3208623e+03 4.4238455e+03 -9.5225643e+02 - -2.4503203e+03 4.3264020e+03 -9.6378252e+02 - -2.5846366e+03 4.2212856e+03 -9.7450412e+02 - -2.7232629e+03 4.1085395e+03 -9.8416768e+02 - -2.8654371e+03 3.9884177e+03 -9.9251758e+02 - -3.0101866e+03 3.8614113e+03 -9.9931091e+02 - -3.1563504e+03 3.7282587e+03 -1.0043341e+03 - -3.3026226e+03 3.5899347e+03 -1.0074197e+03 - -3.4476154e+03 3.4476154e+03 -1.0084605e+03 - -3.5899347e+03 3.3026226e+03 -1.0074197e+03 - -3.7282587e+03 3.1563504e+03 -1.0043341e+03 - -3.8614113e+03 3.0101866e+03 -9.9931091e+02 - -3.9884177e+03 2.8654371e+03 -9.9251758e+02 - -4.1085395e+03 2.7232629e+03 -9.8416768e+02 - -4.2212856e+03 2.5846366e+03 -9.7450412e+02 - -4.3264020e+03 2.4503203e+03 -9.6378252e+02 - -4.4238455e+03 2.3208623e+03 -9.5225643e+02 - -4.5137477e+03 2.1966110e+03 -9.4016576e+02 - -4.5963751e+03 2.0777382e+03 -9.2772869e+02 - -4.6720900e+03 1.9642687e+03 -9.1513693e+02 - -4.7413157e+03 1.8561115e+03 -9.0255393e+02 - -4.8045074e+03 1.7530887e+03 -8.9011522e+02 - -4.8621298e+03 1.6549616e+03 -8.7793019e+02 - -4.9146396e+03 1.5614525e+03 -8.6608478e+02 - -4.9624747e+03 1.4722619e+03 -8.5464458e+02 - -5.0060460e+03 1.3870819e+03 -8.4365793e+02 - -5.0457339e+03 1.3056059e+03 -8.3315896e+02 - -5.0818861e+03 1.2275351e+03 -8.2317025e+02 - -5.1148179e+03 1.1525836e+03 -8.1370520e+02 - -5.1448130e+03 1.0804806e+03 -8.0477010e+02 - -5.1721254e+03 1.0109720e+03 -7.9636576e+02 - -5.1969815e+03 9.4382096e+02 -7.8848896e+02 - -5.2195823e+03 8.7880738e+02 -7.8113351e+02 - -5.2401061e+03 8.1572753e+02 -7.7429125e+02 - -5.2587102e+03 7.5439293e+02 -7.6795269e+02 - -5.2755334e+03 6.9462928e+02 -7.6210759e+02 - -5.2906976e+03 6.3627529e+02 -7.5674544e+02 - -5.3043098e+03 5.7918144e+02 -7.5185577e+02 - -5.3164635e+03 5.2320878e+02 -7.4742841e+02 - -5.3272402e+03 4.6822781e+02 -7.4345371e+02 - -5.3367103e+03 4.1411733e+02 -7.3992266e+02 - -5.3449342e+03 3.6076342e+02 -7.3682703e+02 - -5.3519637e+03 3.0805846e+02 -7.3415942e+02 - -5.3578419e+03 2.5590019e+02 -7.3191334e+02 - -5.3626045e+03 2.0419086e+02 -7.3008327e+02 - -5.3662800e+03 1.5283637e+02 -7.2866464e+02 - -5.3688900e+03 1.0174554e+02 -7.2765389e+02 - -5.3704500e+03 5.0829296e+01 -7.2704847e+02 - -5.3709690e+03 -4.8134273e-09 -7.2684683e+02 - -5.3704500e+03 -5.0829296e+01 -7.2704847e+02 - -5.3688900e+03 -1.0174554e+02 -7.2765389e+02 - -5.3662800e+03 -1.5283637e+02 -7.2866464e+02 - -5.3626045e+03 -2.0419086e+02 -7.3008327e+02 - -5.3578419e+03 -2.5590019e+02 -7.3191334e+02 - -5.3519637e+03 -3.0805846e+02 -7.3415942e+02 - -5.3449342e+03 -3.6076342e+02 -7.3682703e+02 - -5.3367103e+03 -4.1411733e+02 -7.3992266e+02 - -5.3272402e+03 -4.6822781e+02 -7.4345371e+02 - -5.3164635e+03 -5.2320878e+02 -7.4742841e+02 - -5.3043098e+03 -5.7918144e+02 -7.5185577e+02 - -5.2906976e+03 -6.3627529e+02 -7.5674544e+02 - -5.2755334e+03 -6.9462928e+02 -7.6210759e+02 - -5.2587102e+03 -7.5439293e+02 -7.6795269e+02 - -5.2401061e+03 -8.1572753e+02 -7.7429125e+02 - -5.2195823e+03 -8.7880738e+02 -7.8113351e+02 - -5.1969815e+03 -9.4382096e+02 -7.8848896e+02 - -5.1721254e+03 -1.0109720e+03 -7.9636576e+02 - -5.1448130e+03 -1.0804806e+03 -8.0477010e+02 - -5.1148179e+03 -1.1525836e+03 -8.1370520e+02 - -5.0818861e+03 -1.2275351e+03 -8.2317025e+02 - -5.0457339e+03 -1.3056059e+03 -8.3315896e+02 - -5.0060460e+03 -1.3870819e+03 -8.4365793e+02 - -4.9624747e+03 -1.4722619e+03 -8.5464458e+02 - -4.9146396e+03 -1.5614525e+03 -8.6608478e+02 - -4.8621298e+03 -1.6549616e+03 -8.7793019e+02 - -4.8045074e+03 -1.7530887e+03 -8.9011522e+02 - -4.7413157e+03 -1.8561115e+03 -9.0255393e+02 - -4.6720900e+03 -1.9642687e+03 -9.1513693e+02 - -4.5963751e+03 -2.0777382e+03 -9.2772869e+02 - -4.5137477e+03 -2.1966110e+03 -9.4016576e+02 - -4.4238455e+03 -2.3208623e+03 -9.5225643e+02 - -4.3264020e+03 -2.4503203e+03 -9.6378252e+02 - -4.2212856e+03 -2.5846366e+03 -9.7450412e+02 - -4.1085395e+03 -2.7232629e+03 -9.8416768e+02 - -3.9884177e+03 -2.8654371e+03 -9.9251758e+02 - -3.8614113e+03 -3.0101866e+03 -9.9931091e+02 - -3.7282587e+03 -3.1563504e+03 -1.0043341e+03 - -3.5899347e+03 -3.3026226e+03 -1.0074197e+03 - -3.4476154e+03 -3.4476154e+03 -1.0084605e+03 - -3.3026226e+03 -3.5899347e+03 -1.0074197e+03 - -3.1563504e+03 -3.7282587e+03 -1.0043341e+03 - -3.0101866e+03 -3.8614113e+03 -9.9931091e+02 - -2.8654371e+03 -3.9884177e+03 -9.9251758e+02 - -2.7232629e+03 -4.1085395e+03 -9.8416768e+02 - -2.5846366e+03 -4.2212856e+03 -9.7450412e+02 - -2.4503203e+03 -4.3264020e+03 -9.6378252e+02 - -2.3208623e+03 -4.4238455e+03 -9.5225643e+02 - -2.1966110e+03 -4.5137477e+03 -9.4016576e+02 - -2.0777382e+03 -4.5963751e+03 -9.2772869e+02 - -1.9642687e+03 -4.6720900e+03 -9.1513693e+02 - -1.8561115e+03 -4.7413157e+03 -9.0255393e+02 - -1.7530887e+03 -4.8045074e+03 -8.9011522e+02 - -1.6549616e+03 -4.8621298e+03 -8.7793019e+02 - -1.5614525e+03 -4.9146396e+03 -8.6608478e+02 - -1.4722619e+03 -4.9624747e+03 -8.5464458e+02 - -1.3870819e+03 -5.0060460e+03 -8.4365793e+02 - -1.3056059e+03 -5.0457339e+03 -8.3315896e+02 - -1.2275351e+03 -5.0818861e+03 -8.2317025e+02 - -1.1525836e+03 -5.1148179e+03 -8.1370520e+02 - -1.0804806e+03 -5.1448130e+03 -8.0477010e+02 - -1.0109720e+03 -5.1721254e+03 -7.9636576e+02 - -9.4382096e+02 -5.1969815e+03 -7.8848896e+02 - -8.7880738e+02 -5.2195823e+03 -7.8113351e+02 - -8.1572753e+02 -5.2401061e+03 -7.7429125e+02 - -7.5439293e+02 -5.2587102e+03 -7.6795269e+02 - -6.9462928e+02 -5.2755334e+03 -7.6210759e+02 - -6.3627529e+02 -5.2906976e+03 -7.5674544e+02 - -5.7918144e+02 -5.3043098e+03 -7.5185577e+02 - -5.2320878e+02 -5.3164635e+03 -7.4742841e+02 - -4.6822781e+02 -5.3272402e+03 -7.4345371e+02 - -4.1411733e+02 -5.3367103e+03 -7.3992266e+02 - -3.6076342e+02 -5.3449342e+03 -7.3682703e+02 - -3.0805846e+02 -5.3519637e+03 -7.3415942e+02 - -2.5590019e+02 -5.3578419e+03 -7.3191334e+02 - -2.0419086e+02 -5.3626045e+03 -7.3008327e+02 - -1.5283637e+02 -5.3662800e+03 -7.2866464e+02 - -1.0174554e+02 -5.3688900e+03 -7.2765389e+02 - -5.0829296e+01 -5.3704500e+03 -7.2704847e+02 - -4.8134273e-09 -5.3709690e+03 -7.2684683e+02 - 5.0829296e+01 -5.3704500e+03 -7.2704847e+02 - 1.0174554e+02 -5.3688900e+03 -7.2765389e+02 - 1.5283637e+02 -5.3662800e+03 -7.2866464e+02 - 2.0419086e+02 -5.3626045e+03 -7.3008327e+02 - 2.5590019e+02 -5.3578419e+03 -7.3191334e+02 - 3.0805846e+02 -5.3519637e+03 -7.3415942e+02 - 3.6076342e+02 -5.3449342e+03 -7.3682703e+02 - 4.1411733e+02 -5.3367103e+03 -7.3992266e+02 - 4.6822781e+02 -5.3272402e+03 -7.4345371e+02 - 5.2320878e+02 -5.3164635e+03 -7.4742841e+02 - 5.7918144e+02 -5.3043098e+03 -7.5185577e+02 - 6.3627529e+02 -5.2906976e+03 -7.5674544e+02 - 6.9462928e+02 -5.2755334e+03 -7.6210759e+02 - 7.5439293e+02 -5.2587102e+03 -7.6795269e+02 - 8.1572753e+02 -5.2401061e+03 -7.7429125e+02 - 8.7880738e+02 -5.2195823e+03 -7.8113351e+02 - 9.4382096e+02 -5.1969815e+03 -7.8848896e+02 - 1.0109720e+03 -5.1721254e+03 -7.9636576e+02 - 1.0804806e+03 -5.1448130e+03 -8.0477010e+02 - 1.1525836e+03 -5.1148179e+03 -8.1370520e+02 - 1.2275351e+03 -5.0818861e+03 -8.2317025e+02 - 1.3056059e+03 -5.0457339e+03 -8.3315896e+02 - 1.3870819e+03 -5.0060460e+03 -8.4365793e+02 - 1.4722619e+03 -4.9624747e+03 -8.5464458e+02 - 1.5614525e+03 -4.9146396e+03 -8.6608478e+02 - 1.6549616e+03 -4.8621298e+03 -8.7793019e+02 - 1.7530887e+03 -4.8045074e+03 -8.9011522e+02 - 1.8561115e+03 -4.7413157e+03 -9.0255393e+02 - 1.9642687e+03 -4.6720900e+03 -9.1513693e+02 - 2.0777382e+03 -4.5963751e+03 -9.2772869e+02 - 2.1966110e+03 -4.5137477e+03 -9.4016576e+02 - 2.3208623e+03 -4.4238455e+03 -9.5225643e+02 - 2.4503203e+03 -4.3264020e+03 -9.6378252e+02 - 2.5846366e+03 -4.2212856e+03 -9.7450412e+02 - 2.7232629e+03 -4.1085395e+03 -9.8416768e+02 - 2.8654371e+03 -3.9884177e+03 -9.9251758e+02 - 3.0101866e+03 -3.8614113e+03 -9.9931091e+02 - 3.1563504e+03 -3.7282587e+03 -1.0043341e+03 - 3.3026226e+03 -3.5899347e+03 -1.0074197e+03 - 3.4476154e+03 -3.4476154e+03 -1.0084605e+03 - 3.5899347e+03 -3.3026226e+03 -1.0074197e+03 - 3.7282587e+03 -3.1563504e+03 -1.0043341e+03 - 3.8614113e+03 -3.0101866e+03 -9.9931091e+02 - 3.9884177e+03 -2.8654371e+03 -9.9251758e+02 - 4.1085395e+03 -2.7232629e+03 -9.8416768e+02 - 4.2212856e+03 -2.5846366e+03 -9.7450412e+02 - 4.3264020e+03 -2.4503203e+03 -9.6378252e+02 - 4.4238455e+03 -2.3208623e+03 -9.5225643e+02 - 4.5137477e+03 -2.1966110e+03 -9.4016576e+02 - 4.5963751e+03 -2.0777382e+03 -9.2772869e+02 - 4.6720900e+03 -1.9642687e+03 -9.1513693e+02 - 4.7413157e+03 -1.8561115e+03 -9.0255393e+02 - 4.8045074e+03 -1.7530887e+03 -8.9011522e+02 - 4.8621298e+03 -1.6549616e+03 -8.7793019e+02 - 4.9146396e+03 -1.5614525e+03 -8.6608478e+02 - 4.9624747e+03 -1.4722619e+03 -8.5464458e+02 - 5.0060460e+03 -1.3870819e+03 -8.4365793e+02 - 5.0457339e+03 -1.3056059e+03 -8.3315896e+02 - 5.0818861e+03 -1.2275351e+03 -8.2317025e+02 - 5.1148179e+03 -1.1525836e+03 -8.1370520e+02 - 5.1448130e+03 -1.0804806e+03 -8.0477010e+02 - 5.1721254e+03 -1.0109720e+03 -7.9636576e+02 - 5.1969815e+03 -9.4382096e+02 -7.8848896e+02 - 5.2195823e+03 -8.7880738e+02 -7.8113351e+02 - 5.2401061e+03 -8.1572753e+02 -7.7429125e+02 - 5.2587102e+03 -7.5439293e+02 -7.6795269e+02 - 5.2755334e+03 -6.9462928e+02 -7.6210759e+02 - 5.2906976e+03 -6.3627529e+02 -7.5674544e+02 - 5.3043098e+03 -5.7918144e+02 -7.5185577e+02 - 5.3164635e+03 -5.2320878e+02 -7.4742841e+02 - 5.3272402e+03 -4.6822781e+02 -7.4345371e+02 - 5.3367103e+03 -4.1411733e+02 -7.3992266e+02 - 5.3449342e+03 -3.6076342e+02 -7.3682703e+02 - 5.3519637e+03 -3.0805846e+02 -7.3415942e+02 - 5.3578419e+03 -2.5590019e+02 -7.3191334e+02 - 5.3626045e+03 -2.0419086e+02 -7.3008327e+02 - 5.3662800e+03 -1.5283637e+02 -7.2866464e+02 - 5.3688900e+03 -1.0174554e+02 -7.2765389e+02 - 5.3704500e+03 -5.0829296e+01 -7.2704847e+02 - 5.3709690e+03 4.8134273e-09 -7.2684683e+02 - 5.3558658e+03 4.8134273e-09 -8.6619626e+02 - 5.3553373e+03 5.0975781e+01 -8.6643204e+02 - 5.3537488e+03 1.0203877e+02 -8.6713997e+02 - 5.3510912e+03 1.5327688e+02 -8.6832175e+02 - 5.3473488e+03 2.0477940e+02 -8.6998024e+02 - 5.3424998e+03 2.5663775e+02 -8.7211941e+02 - 5.3365153e+03 3.0894618e+02 -8.7474433e+02 - 5.3293594e+03 3.6180258e+02 -8.7786118e+02 - 5.3209883e+03 4.1530926e+02 -8.8147713e+02 - 5.3113501e+03 4.6957383e+02 -8.8560037e+02 - 5.3003836e+03 5.2471006e+02 -8.9023998e+02 - 5.2880181e+03 5.8083886e+02 -8.9540584e+02 - 5.2741715e+03 6.3808932e+02 -9.0110850e+02 - 5.2587499e+03 6.9659969e+02 -9.0735898e+02 - 5.2416459e+03 7.5651856e+02 -9.1416855e+02 - 5.2227375e+03 8.1800596e+02 -9.2154839e+02 - 5.2018858e+03 8.8123449e+02 -9.2950917e+02 - 5.1789336e+03 9.4639042e+02 -9.3806057e+02 - 5.1537037e+03 1.0136747e+03 -9.4721058e+02 - 5.1259960e+03 1.0833038e+03 -9.5696464e+02 - 5.0955861e+03 1.1555100e+03 -9.6732462e+02 - 5.0622230e+03 1.2305420e+03 -9.7828750e+02 - 5.0256271e+03 1.3086637e+03 -9.8984376e+02 - 4.9854886e+03 1.3901527e+03 -1.0019755e+03 - 4.9414673e+03 1.4752978e+03 -1.0146540e+03 - 4.8931925e+03 1.5643940e+03 -1.0278375e+03 - 4.8402655e+03 1.6577355e+03 -1.0414675e+03 - 4.7822637e+03 1.7556064e+03 -1.0554662e+03 - 4.7187488e+03 1.8582674e+03 -1.0697326e+03 - 4.6492779e+03 1.9659389e+03 -1.0841396e+03 - 4.5734209e+03 2.0787801e+03 -1.0985310e+03 - 4.4907817e+03 2.1968647e+03 -1.1127198e+03 - 4.4010268e+03 2.3201529e+03 -1.1264884e+03 - 4.3039180e+03 2.4484628e+03 -1.1395905e+03 - 4.1993488e+03 2.5814434e+03 -1.1517572e+03 - 4.0873815e+03 2.7185532e+03 -1.1627056e+03 - 3.9682798e+03 2.8590492e+03 -1.1721521e+03 - 3.8425319e+03 3.0019903e+03 -1.1798281e+03 - 3.7108591e+03 3.1462592e+03 -1.1854984e+03 - 3.5742038e+03 3.2906040e+03 -1.1889791e+03 - 3.4336968e+03 3.4336968e+03 -1.1901528e+03 - 3.2906040e+03 3.5742038e+03 -1.1889791e+03 - 3.1462592e+03 3.7108591e+03 -1.1854984e+03 - 3.0019903e+03 3.8425319e+03 -1.1798281e+03 - 2.8590492e+03 3.9682798e+03 -1.1721521e+03 - 2.7185532e+03 4.0873815e+03 -1.1627056e+03 - 2.5814434e+03 4.1993488e+03 -1.1517572e+03 - 2.4484628e+03 4.3039180e+03 -1.1395905e+03 - 2.3201529e+03 4.4010268e+03 -1.1264884e+03 - 2.1968647e+03 4.4907817e+03 -1.1127198e+03 - 2.0787801e+03 4.5734209e+03 -1.0985310e+03 - 1.9659389e+03 4.6492779e+03 -1.0841396e+03 - 1.8582674e+03 4.7187488e+03 -1.0697326e+03 - 1.7556064e+03 4.7822637e+03 -1.0554662e+03 - 1.6577355e+03 4.8402655e+03 -1.0414675e+03 - 1.5643940e+03 4.8931925e+03 -1.0278375e+03 - 1.4752978e+03 4.9414673e+03 -1.0146540e+03 - 1.3901527e+03 4.9854886e+03 -1.0019755e+03 - 1.3086637e+03 5.0256271e+03 -9.8984376e+02 - 1.2305420e+03 5.0622230e+03 -9.7828750e+02 - 1.1555100e+03 5.0955861e+03 -9.6732462e+02 - 1.0833038e+03 5.1259960e+03 -9.5696464e+02 - 1.0136747e+03 5.1537037e+03 -9.4721058e+02 - 9.4639042e+02 5.1789336e+03 -9.3806057e+02 - 8.8123449e+02 5.2018858e+03 -9.2950917e+02 - 8.1800596e+02 5.2227375e+03 -9.2154839e+02 - 7.5651856e+02 5.2416459e+03 -9.1416855e+02 - 6.9659969e+02 5.2587499e+03 -9.0735898e+02 - 6.3808932e+02 5.2741715e+03 -9.0110850e+02 - 5.8083886e+02 5.2880181e+03 -8.9540584e+02 - 5.2471006e+02 5.3003836e+03 -8.9023998e+02 - 4.6957383e+02 5.3113501e+03 -8.8560037e+02 - 4.1530926e+02 5.3209883e+03 -8.8147713e+02 - 3.6180258e+02 5.3293594e+03 -8.7786118e+02 - 3.0894618e+02 5.3365153e+03 -8.7474433e+02 - 2.5663775e+02 5.3424998e+03 -8.7211941e+02 - 2.0477940e+02 5.3473488e+03 -8.6998024e+02 - 1.5327688e+02 5.3510912e+03 -8.6832175e+02 - 1.0203877e+02 5.3537488e+03 -8.6713997e+02 - 5.0975781e+01 5.3553373e+03 -8.6643204e+02 - 0.0000000e+00 5.3558658e+03 -8.6619626e+02 - -5.0975781e+01 5.3553373e+03 -8.6643204e+02 - -1.0203877e+02 5.3537488e+03 -8.6713997e+02 - -1.5327688e+02 5.3510912e+03 -8.6832175e+02 - -2.0477940e+02 5.3473488e+03 -8.6998024e+02 - -2.5663775e+02 5.3424998e+03 -8.7211941e+02 - -3.0894618e+02 5.3365153e+03 -8.7474433e+02 - -3.6180258e+02 5.3293594e+03 -8.7786118e+02 - -4.1530926e+02 5.3209883e+03 -8.8147713e+02 - -4.6957383e+02 5.3113501e+03 -8.8560037e+02 - -5.2471006e+02 5.3003836e+03 -8.9023998e+02 - -5.8083886e+02 5.2880181e+03 -8.9540584e+02 - -6.3808932e+02 5.2741715e+03 -9.0110850e+02 - -6.9659969e+02 5.2587499e+03 -9.0735898e+02 - -7.5651856e+02 5.2416459e+03 -9.1416855e+02 - -8.1800596e+02 5.2227375e+03 -9.2154839e+02 - -8.8123449e+02 5.2018858e+03 -9.2950917e+02 - -9.4639042e+02 5.1789336e+03 -9.3806057e+02 - -1.0136747e+03 5.1537037e+03 -9.4721058e+02 - -1.0833038e+03 5.1259960e+03 -9.5696464e+02 - -1.1555100e+03 5.0955861e+03 -9.6732462e+02 - -1.2305420e+03 5.0622230e+03 -9.7828750e+02 - -1.3086637e+03 5.0256271e+03 -9.8984376e+02 - -1.3901527e+03 4.9854886e+03 -1.0019755e+03 - -1.4752978e+03 4.9414673e+03 -1.0146540e+03 - -1.5643940e+03 4.8931925e+03 -1.0278375e+03 - -1.6577355e+03 4.8402655e+03 -1.0414675e+03 - -1.7556064e+03 4.7822637e+03 -1.0554662e+03 - -1.8582674e+03 4.7187488e+03 -1.0697326e+03 - -1.9659389e+03 4.6492779e+03 -1.0841396e+03 - -2.0787801e+03 4.5734209e+03 -1.0985310e+03 - -2.1968647e+03 4.4907817e+03 -1.1127198e+03 - -2.3201529e+03 4.4010268e+03 -1.1264884e+03 - -2.4484628e+03 4.3039180e+03 -1.1395905e+03 - -2.5814434e+03 4.1993488e+03 -1.1517572e+03 - -2.7185532e+03 4.0873815e+03 -1.1627056e+03 - -2.8590492e+03 3.9682798e+03 -1.1721521e+03 - -3.0019903e+03 3.8425319e+03 -1.1798281e+03 - -3.1462592e+03 3.7108591e+03 -1.1854984e+03 - -3.2906040e+03 3.5742038e+03 -1.1889791e+03 - -3.4336968e+03 3.4336968e+03 -1.1901528e+03 - -3.5742038e+03 3.2906040e+03 -1.1889791e+03 - -3.7108591e+03 3.1462592e+03 -1.1854984e+03 - -3.8425319e+03 3.0019903e+03 -1.1798281e+03 - -3.9682798e+03 2.8590492e+03 -1.1721521e+03 - -4.0873815e+03 2.7185532e+03 -1.1627056e+03 - -4.1993488e+03 2.5814434e+03 -1.1517572e+03 - -4.3039180e+03 2.4484628e+03 -1.1395905e+03 - -4.4010268e+03 2.3201529e+03 -1.1264884e+03 - -4.4907817e+03 2.1968647e+03 -1.1127198e+03 - -4.5734209e+03 2.0787801e+03 -1.0985310e+03 - -4.6492779e+03 1.9659389e+03 -1.0841396e+03 - -4.7187488e+03 1.8582674e+03 -1.0697326e+03 - -4.7822637e+03 1.7556064e+03 -1.0554662e+03 - -4.8402655e+03 1.6577355e+03 -1.0414675e+03 - -4.8931925e+03 1.5643940e+03 -1.0278375e+03 - -4.9414673e+03 1.4752978e+03 -1.0146540e+03 - -4.9854886e+03 1.3901527e+03 -1.0019755e+03 - -5.0256271e+03 1.3086637e+03 -9.8984376e+02 - -5.0622230e+03 1.2305420e+03 -9.7828750e+02 - -5.0955861e+03 1.1555100e+03 -9.6732462e+02 - -5.1259960e+03 1.0833038e+03 -9.5696464e+02 - -5.1537037e+03 1.0136747e+03 -9.4721058e+02 - -5.1789336e+03 9.4639042e+02 -9.3806057e+02 - -5.2018858e+03 8.8123449e+02 -9.2950917e+02 - -5.2227375e+03 8.1800596e+02 -9.2154839e+02 - -5.2416459e+03 7.5651856e+02 -9.1416855e+02 - -5.2587499e+03 6.9659969e+02 -9.0735898e+02 - -5.2741715e+03 6.3808932e+02 -9.0110850e+02 - -5.2880181e+03 5.8083886e+02 -8.9540584e+02 - -5.3003836e+03 5.2471006e+02 -8.9023998e+02 - -5.3113501e+03 4.6957383e+02 -8.8560037e+02 - -5.3209883e+03 4.1530926e+02 -8.8147713e+02 - -5.3293594e+03 3.6180258e+02 -8.7786118e+02 - -5.3365153e+03 3.0894618e+02 -8.7474433e+02 - -5.3424998e+03 2.5663775e+02 -8.7211941e+02 - -5.3473488e+03 2.0477940e+02 -8.6998024e+02 - -5.3510912e+03 1.5327688e+02 -8.6832175e+02 - -5.3537488e+03 1.0203877e+02 -8.6713997e+02 - -5.3553373e+03 5.0975781e+01 -8.6643204e+02 - -5.3558658e+03 -9.6268545e-09 -8.6619626e+02 - -5.3553373e+03 -5.0975781e+01 -8.6643204e+02 - -5.3537488e+03 -1.0203877e+02 -8.6713997e+02 - -5.3510912e+03 -1.5327688e+02 -8.6832175e+02 - -5.3473488e+03 -2.0477940e+02 -8.6998024e+02 - -5.3424998e+03 -2.5663775e+02 -8.7211941e+02 - -5.3365153e+03 -3.0894618e+02 -8.7474433e+02 - -5.3293594e+03 -3.6180258e+02 -8.7786118e+02 - -5.3209883e+03 -4.1530926e+02 -8.8147713e+02 - -5.3113501e+03 -4.6957383e+02 -8.8560037e+02 - -5.3003836e+03 -5.2471006e+02 -8.9023998e+02 - -5.2880181e+03 -5.8083886e+02 -8.9540584e+02 - -5.2741715e+03 -6.3808932e+02 -9.0110850e+02 - -5.2587499e+03 -6.9659969e+02 -9.0735898e+02 - -5.2416459e+03 -7.5651856e+02 -9.1416855e+02 - -5.2227375e+03 -8.1800596e+02 -9.2154839e+02 - -5.2018858e+03 -8.8123449e+02 -9.2950917e+02 - -5.1789336e+03 -9.4639042e+02 -9.3806057e+02 - -5.1537037e+03 -1.0136747e+03 -9.4721058e+02 - -5.1259960e+03 -1.0833038e+03 -9.5696464e+02 - -5.0955861e+03 -1.1555100e+03 -9.6732462e+02 - -5.0622230e+03 -1.2305420e+03 -9.7828750e+02 - -5.0256271e+03 -1.3086637e+03 -9.8984376e+02 - -4.9854886e+03 -1.3901527e+03 -1.0019755e+03 - -4.9414673e+03 -1.4752978e+03 -1.0146540e+03 - -4.8931925e+03 -1.5643940e+03 -1.0278375e+03 - -4.8402655e+03 -1.6577355e+03 -1.0414675e+03 - -4.7822637e+03 -1.7556064e+03 -1.0554662e+03 - -4.7187488e+03 -1.8582674e+03 -1.0697326e+03 - -4.6492779e+03 -1.9659389e+03 -1.0841396e+03 - -4.5734209e+03 -2.0787801e+03 -1.0985310e+03 - -4.4907817e+03 -2.1968647e+03 -1.1127198e+03 - -4.4010268e+03 -2.3201529e+03 -1.1264884e+03 - -4.3039180e+03 -2.4484628e+03 -1.1395905e+03 - -4.1993488e+03 -2.5814434e+03 -1.1517572e+03 - -4.0873815e+03 -2.7185532e+03 -1.1627056e+03 - -3.9682798e+03 -2.8590492e+03 -1.1721521e+03 - -3.8425319e+03 -3.0019903e+03 -1.1798281e+03 - -3.7108591e+03 -3.1462592e+03 -1.1854984e+03 - -3.5742038e+03 -3.2906040e+03 -1.1889791e+03 - -3.4336968e+03 -3.4336968e+03 -1.1901528e+03 - -3.2906040e+03 -3.5742038e+03 -1.1889791e+03 - -3.1462592e+03 -3.7108591e+03 -1.1854984e+03 - -3.0019903e+03 -3.8425319e+03 -1.1798281e+03 - -2.8590492e+03 -3.9682798e+03 -1.1721521e+03 - -2.7185532e+03 -4.0873815e+03 -1.1627056e+03 - -2.5814434e+03 -4.1993488e+03 -1.1517572e+03 - -2.4484628e+03 -4.3039180e+03 -1.1395905e+03 - -2.3201529e+03 -4.4010268e+03 -1.1264884e+03 - -2.1968647e+03 -4.4907817e+03 -1.1127198e+03 - -2.0787801e+03 -4.5734209e+03 -1.0985310e+03 - -1.9659389e+03 -4.6492779e+03 -1.0841396e+03 - -1.8582674e+03 -4.7187488e+03 -1.0697326e+03 - -1.7556064e+03 -4.7822637e+03 -1.0554662e+03 - -1.6577355e+03 -4.8402655e+03 -1.0414675e+03 - -1.5643940e+03 -4.8931925e+03 -1.0278375e+03 - -1.4752978e+03 -4.9414673e+03 -1.0146540e+03 - -1.3901527e+03 -4.9854886e+03 -1.0019755e+03 - -1.3086637e+03 -5.0256271e+03 -9.8984376e+02 - -1.2305420e+03 -5.0622230e+03 -9.7828750e+02 - -1.1555100e+03 -5.0955861e+03 -9.6732462e+02 - -1.0833038e+03 -5.1259960e+03 -9.5696464e+02 - -1.0136747e+03 -5.1537037e+03 -9.4721058e+02 - -9.4639042e+02 -5.1789336e+03 -9.3806057e+02 - -8.8123449e+02 -5.2018858e+03 -9.2950917e+02 - -8.1800596e+02 -5.2227375e+03 -9.2154839e+02 - -7.5651856e+02 -5.2416459e+03 -9.1416855e+02 - -6.9659969e+02 -5.2587499e+03 -9.0735898e+02 - -6.3808932e+02 -5.2741715e+03 -9.0110850e+02 - -5.8083886e+02 -5.2880181e+03 -8.9540584e+02 - -5.2471006e+02 -5.3003836e+03 -8.9023998e+02 - -4.6957383e+02 -5.3113501e+03 -8.8560037e+02 - -4.1530926e+02 -5.3209883e+03 -8.8147713e+02 - -3.6180258e+02 -5.3293594e+03 -8.7786118e+02 - -3.0894618e+02 -5.3365153e+03 -8.7474433e+02 - -2.5663775e+02 -5.3424998e+03 -8.7211941e+02 - -2.0477940e+02 -5.3473488e+03 -8.6998024e+02 - -1.5327688e+02 -5.3510912e+03 -8.6832175e+02 - -1.0203877e+02 -5.3537488e+03 -8.6713997e+02 - -5.0975781e+01 -5.3553373e+03 -8.6643204e+02 - 4.8134273e-09 -5.3558658e+03 -8.6619626e+02 - 5.0975781e+01 -5.3553373e+03 -8.6643204e+02 - 1.0203877e+02 -5.3537488e+03 -8.6713997e+02 - 1.5327688e+02 -5.3510912e+03 -8.6832175e+02 - 2.0477940e+02 -5.3473488e+03 -8.6998024e+02 - 2.5663775e+02 -5.3424998e+03 -8.7211941e+02 - 3.0894618e+02 -5.3365153e+03 -8.7474433e+02 - 3.6180258e+02 -5.3293594e+03 -8.7786118e+02 - 4.1530926e+02 -5.3209883e+03 -8.8147713e+02 - 4.6957383e+02 -5.3113501e+03 -8.8560037e+02 - 5.2471006e+02 -5.3003836e+03 -8.9023998e+02 - 5.8083886e+02 -5.2880181e+03 -8.9540584e+02 - 6.3808932e+02 -5.2741715e+03 -9.0110850e+02 - 6.9659969e+02 -5.2587499e+03 -9.0735898e+02 - 7.5651856e+02 -5.2416459e+03 -9.1416855e+02 - 8.1800596e+02 -5.2227375e+03 -9.2154839e+02 - 8.8123449e+02 -5.2018858e+03 -9.2950917e+02 - 9.4639042e+02 -5.1789336e+03 -9.3806057e+02 - 1.0136747e+03 -5.1537037e+03 -9.4721058e+02 - 1.0833038e+03 -5.1259960e+03 -9.5696464e+02 - 1.1555100e+03 -5.0955861e+03 -9.6732462e+02 - 1.2305420e+03 -5.0622230e+03 -9.7828750e+02 - 1.3086637e+03 -5.0256271e+03 -9.8984376e+02 - 1.3901527e+03 -4.9854886e+03 -1.0019755e+03 - 1.4752978e+03 -4.9414673e+03 -1.0146540e+03 - 1.5643940e+03 -4.8931925e+03 -1.0278375e+03 - 1.6577355e+03 -4.8402655e+03 -1.0414675e+03 - 1.7556064e+03 -4.7822637e+03 -1.0554662e+03 - 1.8582674e+03 -4.7187488e+03 -1.0697326e+03 - 1.9659389e+03 -4.6492779e+03 -1.0841396e+03 - 2.0787801e+03 -4.5734209e+03 -1.0985310e+03 - 2.1968647e+03 -4.4907817e+03 -1.1127198e+03 - 2.3201529e+03 -4.4010268e+03 -1.1264884e+03 - 2.4484628e+03 -4.3039180e+03 -1.1395905e+03 - 2.5814434e+03 -4.1993488e+03 -1.1517572e+03 - 2.7185532e+03 -4.0873815e+03 -1.1627056e+03 - 2.8590492e+03 -3.9682798e+03 -1.1721521e+03 - 3.0019903e+03 -3.8425319e+03 -1.1798281e+03 - 3.1462592e+03 -3.7108591e+03 -1.1854984e+03 - 3.2906040e+03 -3.5742038e+03 -1.1889791e+03 - 3.4336968e+03 -3.4336968e+03 -1.1901528e+03 - 3.5742038e+03 -3.2906040e+03 -1.1889791e+03 - 3.7108591e+03 -3.1462592e+03 -1.1854984e+03 - 3.8425319e+03 -3.0019903e+03 -1.1798281e+03 - 3.9682798e+03 -2.8590492e+03 -1.1721521e+03 - 4.0873815e+03 -2.7185532e+03 -1.1627056e+03 - 4.1993488e+03 -2.5814434e+03 -1.1517572e+03 - 4.3039180e+03 -2.4484628e+03 -1.1395905e+03 - 4.4010268e+03 -2.3201529e+03 -1.1264884e+03 - 4.4907817e+03 -2.1968647e+03 -1.1127198e+03 - 4.5734209e+03 -2.0787801e+03 -1.0985310e+03 - 4.6492779e+03 -1.9659389e+03 -1.0841396e+03 - 4.7187488e+03 -1.8582674e+03 -1.0697326e+03 - 4.7822637e+03 -1.7556064e+03 -1.0554662e+03 - 4.8402655e+03 -1.6577355e+03 -1.0414675e+03 - 4.8931925e+03 -1.5643940e+03 -1.0278375e+03 - 4.9414673e+03 -1.4752978e+03 -1.0146540e+03 - 4.9854886e+03 -1.3901527e+03 -1.0019755e+03 - 5.0256271e+03 -1.3086637e+03 -9.8984376e+02 - 5.0622230e+03 -1.2305420e+03 -9.7828750e+02 - 5.0955861e+03 -1.1555100e+03 -9.6732462e+02 - 5.1259960e+03 -1.0833038e+03 -9.5696464e+02 - 5.1537037e+03 -1.0136747e+03 -9.4721058e+02 - 5.1789336e+03 -9.4639042e+02 -9.3806057e+02 - 5.2018858e+03 -8.8123449e+02 -9.2950917e+02 - 5.2227375e+03 -8.1800596e+02 -9.2154839e+02 - 5.2416459e+03 -7.5651856e+02 -9.1416855e+02 - 5.2587499e+03 -6.9659969e+02 -9.0735898e+02 - 5.2741715e+03 -6.3808932e+02 -9.0110850e+02 - 5.2880181e+03 -5.8083886e+02 -8.9540584e+02 - 5.3003836e+03 -5.2471006e+02 -8.9023998e+02 - 5.3113501e+03 -4.6957383e+02 -8.8560037e+02 - 5.3209883e+03 -4.1530926e+02 -8.8147713e+02 - 5.3293594e+03 -3.6180258e+02 -8.7786118e+02 - 5.3365153e+03 -3.0894618e+02 -8.7474433e+02 - 5.3424998e+03 -2.5663775e+02 -8.7211941e+02 - 5.3473488e+03 -2.0477940e+02 -8.6998024e+02 - 5.3510912e+03 -1.5327688e+02 -8.6832175e+02 - 5.3537488e+03 -1.0203877e+02 -8.6713997e+02 - 5.3553373e+03 -5.0975781e+01 -8.6643204e+02 - 5.3558658e+03 4.8134273e-09 -8.6619626e+02 - 5.3383799e+03 4.8134273e-09 -1.0024965e+03 - 5.3378407e+03 5.1143979e+01 -1.0027635e+03 - 5.3362202e+03 1.0237545e+02 -1.0035650e+03 - 5.3335090e+03 1.5378257e+02 -1.0049028e+03 - 5.3296915e+03 2.0545491e+02 -1.0067801e+03 - 5.3247453e+03 2.5748407e+02 -1.0092010e+03 - 5.3186415e+03 3.0996450e+02 -1.0121710e+03 - 5.3113436e+03 3.6299418e+02 -1.0156967e+03 - 5.3028075e+03 4.1667546e+02 -1.0197857e+03 - 5.2929807e+03 4.7111586e+02 -1.0244466e+03 - 5.2818018e+03 5.2642897e+02 -1.0296890e+03 - 5.2691993e+03 5.8273533e+02 -1.0355234e+03 - 5.2550908e+03 6.4016346e+02 -1.0419607e+03 - 5.2393821e+03 6.9885078e+02 -1.0490122e+03 - 5.2219654e+03 7.5894477e+02 -1.0566896e+03 - 5.2027185e+03 8.2060390e+02 -1.0650039e+03 - 5.1815028e+03 8.8399879e+02 -1.0739658e+03 - 5.1581618e+03 9.4931311e+02 -1.0835844e+03 - 5.1325189e+03 1.0167445e+03 -1.0938667e+03 - 5.1043759e+03 1.0865053e+03 -1.1048167e+03 - 5.0735108e+03 1.1588227e+03 -1.1164342e+03 - 5.0396763e+03 1.2339389e+03 -1.1287132e+03 - 5.0025974e+03 1.3121101e+03 -1.1416403e+03 - 4.9619713e+03 1.3936045e+03 -1.1551924e+03 - 4.9174662e+03 1.4786997e+03 -1.1693346e+03 - 4.8687226e+03 1.5676776e+03 -1.1840168e+03 - 4.8153557e+03 1.6608173e+03 -1.1991710e+03 - 4.7569602e+03 1.7583860e+03 -1.2147078e+03 - 4.6931181e+03 1.8606254e+03 -1.2305125e+03 - 4.6234109e+03 1.9677364e+03 -1.2464424e+03 - 4.5474354e+03 2.0798581e+03 -1.2623236e+03 - 4.4648253e+03 2.1970457e+03 -1.2779500e+03 - 4.3752779e+03 2.3192436e+03 -1.2930832e+03 - 4.2785847e+03 2.4462600e+03 -1.3074555e+03 - 4.1746654e+03 2.5777418e+03 -1.3207765e+03 - 4.0636016e+03 2.7131561e+03 -1.3327426e+03 - 3.9456658e+03 2.8517808e+03 -1.3430508e+03 - 3.8213422e+03 2.9927093e+03 -1.3514158e+03 - 3.6913321e+03 3.1348721e+03 -1.3575886e+03 - 3.5565427e+03 3.2770753e+03 -1.3613750e+03 - 3.4180550e+03 3.4180550e+03 -1.3626512e+03 - 3.2770753e+03 3.5565427e+03 -1.3613750e+03 - 3.1348721e+03 3.6913321e+03 -1.3575886e+03 - 2.9927093e+03 3.8213422e+03 -1.3514158e+03 - 2.8517808e+03 3.9456658e+03 -1.3430508e+03 - 2.7131561e+03 4.0636016e+03 -1.3327426e+03 - 2.5777418e+03 4.1746654e+03 -1.3207765e+03 - 2.4462600e+03 4.2785847e+03 -1.3074555e+03 - 2.3192436e+03 4.3752779e+03 -1.2930832e+03 - 2.1970457e+03 4.4648253e+03 -1.2779500e+03 - 2.0798581e+03 4.5474354e+03 -1.2623236e+03 - 1.9677364e+03 4.6234109e+03 -1.2464424e+03 - 1.8606254e+03 4.6931181e+03 -1.2305125e+03 - 1.7583860e+03 4.7569602e+03 -1.2147078e+03 - 1.6608173e+03 4.8153557e+03 -1.1991710e+03 - 1.5676776e+03 4.8687226e+03 -1.1840168e+03 - 1.4786997e+03 4.9174662e+03 -1.1693346e+03 - 1.3936045e+03 4.9619713e+03 -1.1551924e+03 - 1.3121101e+03 5.0025974e+03 -1.1416403e+03 - 1.2339389e+03 5.0396763e+03 -1.1287132e+03 - 1.1588227e+03 5.0735108e+03 -1.1164342e+03 - 1.0865053e+03 5.1043759e+03 -1.1048167e+03 - 1.0167445e+03 5.1325189e+03 -1.0938667e+03 - 9.4931311e+02 5.1581618e+03 -1.0835844e+03 - 8.8399879e+02 5.1815028e+03 -1.0739658e+03 - 8.2060390e+02 5.2027185e+03 -1.0650039e+03 - 7.5894477e+02 5.2219654e+03 -1.0566896e+03 - 6.9885078e+02 5.2393821e+03 -1.0490122e+03 - 6.4016346e+02 5.2550908e+03 -1.0419607e+03 - 5.8273533e+02 5.2691993e+03 -1.0355234e+03 - 5.2642897e+02 5.2818018e+03 -1.0296890e+03 - 4.7111586e+02 5.2929807e+03 -1.0244466e+03 - 4.1667546e+02 5.3028075e+03 -1.0197857e+03 - 3.6299418e+02 5.3113436e+03 -1.0156967e+03 - 3.0996450e+02 5.3186415e+03 -1.0121710e+03 - 2.5748407e+02 5.3247453e+03 -1.0092010e+03 - 2.0545491e+02 5.3296915e+03 -1.0067801e+03 - 1.5378257e+02 5.3335090e+03 -1.0049028e+03 - 1.0237545e+02 5.3362202e+03 -1.0035650e+03 - 5.1143979e+01 5.3378407e+03 -1.0027635e+03 - -4.8134273e-09 5.3383799e+03 -1.0024965e+03 - -5.1143979e+01 5.3378407e+03 -1.0027635e+03 - -1.0237545e+02 5.3362202e+03 -1.0035650e+03 - -1.5378257e+02 5.3335090e+03 -1.0049028e+03 - -2.0545491e+02 5.3296915e+03 -1.0067801e+03 - -2.5748407e+02 5.3247453e+03 -1.0092010e+03 - -3.0996450e+02 5.3186415e+03 -1.0121710e+03 - -3.6299418e+02 5.3113436e+03 -1.0156967e+03 - -4.1667546e+02 5.3028075e+03 -1.0197857e+03 - -4.7111586e+02 5.2929807e+03 -1.0244466e+03 - -5.2642897e+02 5.2818018e+03 -1.0296890e+03 - -5.8273533e+02 5.2691993e+03 -1.0355234e+03 - -6.4016346e+02 5.2550908e+03 -1.0419607e+03 - -6.9885078e+02 5.2393821e+03 -1.0490122e+03 - -7.5894477e+02 5.2219654e+03 -1.0566896e+03 - -8.2060390e+02 5.2027185e+03 -1.0650039e+03 - -8.8399879e+02 5.1815028e+03 -1.0739658e+03 - -9.4931311e+02 5.1581618e+03 -1.0835844e+03 - -1.0167445e+03 5.1325189e+03 -1.0938667e+03 - -1.0865053e+03 5.1043759e+03 -1.1048167e+03 - -1.1588227e+03 5.0735108e+03 -1.1164342e+03 - -1.2339389e+03 5.0396763e+03 -1.1287132e+03 - -1.3121101e+03 5.0025974e+03 -1.1416403e+03 - -1.3936045e+03 4.9619713e+03 -1.1551924e+03 - -1.4786997e+03 4.9174662e+03 -1.1693346e+03 - -1.5676776e+03 4.8687226e+03 -1.1840168e+03 - -1.6608173e+03 4.8153557e+03 -1.1991710e+03 - -1.7583860e+03 4.7569602e+03 -1.2147078e+03 - -1.8606254e+03 4.6931181e+03 -1.2305125e+03 - -1.9677364e+03 4.6234109e+03 -1.2464424e+03 - -2.0798581e+03 4.5474354e+03 -1.2623236e+03 - -2.1970457e+03 4.4648253e+03 -1.2779500e+03 - -2.3192436e+03 4.3752779e+03 -1.2930832e+03 - -2.4462600e+03 4.2785847e+03 -1.3074555e+03 - -2.5777418e+03 4.1746654e+03 -1.3207765e+03 - -2.7131561e+03 4.0636016e+03 -1.3327426e+03 - -2.8517808e+03 3.9456658e+03 -1.3430508e+03 - -2.9927093e+03 3.8213422e+03 -1.3514158e+03 - -3.1348721e+03 3.6913321e+03 -1.3575886e+03 - -3.2770753e+03 3.5565427e+03 -1.3613750e+03 - -3.4180550e+03 3.4180550e+03 -1.3626512e+03 - -3.5565427e+03 3.2770753e+03 -1.3613750e+03 - -3.6913321e+03 3.1348721e+03 -1.3575886e+03 - -3.8213422e+03 2.9927093e+03 -1.3514158e+03 - -3.9456658e+03 2.8517808e+03 -1.3430508e+03 - -4.0636016e+03 2.7131561e+03 -1.3327426e+03 - -4.1746654e+03 2.5777418e+03 -1.3207765e+03 - -4.2785847e+03 2.4462600e+03 -1.3074555e+03 - -4.3752779e+03 2.3192436e+03 -1.2930832e+03 - -4.4648253e+03 2.1970457e+03 -1.2779500e+03 - -4.5474354e+03 2.0798581e+03 -1.2623236e+03 - -4.6234109e+03 1.9677364e+03 -1.2464424e+03 - -4.6931181e+03 1.8606254e+03 -1.2305125e+03 - -4.7569602e+03 1.7583860e+03 -1.2147078e+03 - -4.8153557e+03 1.6608173e+03 -1.1991710e+03 - -4.8687226e+03 1.5676776e+03 -1.1840168e+03 - -4.9174662e+03 1.4786997e+03 -1.1693346e+03 - -4.9619713e+03 1.3936045e+03 -1.1551924e+03 - -5.0025974e+03 1.3121101e+03 -1.1416403e+03 - -5.0396763e+03 1.2339389e+03 -1.1287132e+03 - -5.0735108e+03 1.1588227e+03 -1.1164342e+03 - -5.1043759e+03 1.0865053e+03 -1.1048167e+03 - -5.1325189e+03 1.0167445e+03 -1.0938667e+03 - -5.1581618e+03 9.4931311e+02 -1.0835844e+03 - -5.1815028e+03 8.8399879e+02 -1.0739658e+03 - -5.2027185e+03 8.2060390e+02 -1.0650039e+03 - -5.2219654e+03 7.5894477e+02 -1.0566896e+03 - -5.2393821e+03 6.9885078e+02 -1.0490122e+03 - -5.2550908e+03 6.4016346e+02 -1.0419607e+03 - -5.2691993e+03 5.8273533e+02 -1.0355234e+03 - -5.2818018e+03 5.2642897e+02 -1.0296890e+03 - -5.2929807e+03 4.7111586e+02 -1.0244466e+03 - -5.3028075e+03 4.1667546e+02 -1.0197857e+03 - -5.3113436e+03 3.6299418e+02 -1.0156967e+03 - -5.3186415e+03 3.0996450e+02 -1.0121710e+03 - -5.3247453e+03 2.5748407e+02 -1.0092010e+03 - -5.3296915e+03 2.0545491e+02 -1.0067801e+03 - -5.3335090e+03 1.5378257e+02 -1.0049028e+03 - -5.3362202e+03 1.0237545e+02 -1.0035650e+03 - -5.3378407e+03 5.1143979e+01 -1.0027635e+03 - -5.3383799e+03 0.0000000e+00 -1.0024965e+03 - -5.3378407e+03 -5.1143979e+01 -1.0027635e+03 - -5.3362202e+03 -1.0237545e+02 -1.0035650e+03 - -5.3335090e+03 -1.5378257e+02 -1.0049028e+03 - -5.3296915e+03 -2.0545491e+02 -1.0067801e+03 - -5.3247453e+03 -2.5748407e+02 -1.0092010e+03 - -5.3186415e+03 -3.0996450e+02 -1.0121710e+03 - -5.3113436e+03 -3.6299418e+02 -1.0156967e+03 - -5.3028075e+03 -4.1667546e+02 -1.0197857e+03 - -5.2929807e+03 -4.7111586e+02 -1.0244466e+03 - -5.2818018e+03 -5.2642897e+02 -1.0296890e+03 - -5.2691993e+03 -5.8273533e+02 -1.0355234e+03 - -5.2550908e+03 -6.4016346e+02 -1.0419607e+03 - -5.2393821e+03 -6.9885078e+02 -1.0490122e+03 - -5.2219654e+03 -7.5894477e+02 -1.0566896e+03 - -5.2027185e+03 -8.2060390e+02 -1.0650039e+03 - -5.1815028e+03 -8.8399879e+02 -1.0739658e+03 - -5.1581618e+03 -9.4931311e+02 -1.0835844e+03 - -5.1325189e+03 -1.0167445e+03 -1.0938667e+03 - -5.1043759e+03 -1.0865053e+03 -1.1048167e+03 - -5.0735108e+03 -1.1588227e+03 -1.1164342e+03 - -5.0396763e+03 -1.2339389e+03 -1.1287132e+03 - -5.0025974e+03 -1.3121101e+03 -1.1416403e+03 - -4.9619713e+03 -1.3936045e+03 -1.1551924e+03 - -4.9174662e+03 -1.4786997e+03 -1.1693346e+03 - -4.8687226e+03 -1.5676776e+03 -1.1840168e+03 - -4.8153557e+03 -1.6608173e+03 -1.1991710e+03 - -4.7569602e+03 -1.7583860e+03 -1.2147078e+03 - -4.6931181e+03 -1.8606254e+03 -1.2305125e+03 - -4.6234109e+03 -1.9677364e+03 -1.2464424e+03 - -4.5474354e+03 -2.0798581e+03 -1.2623236e+03 - -4.4648253e+03 -2.1970457e+03 -1.2779500e+03 - -4.3752779e+03 -2.3192436e+03 -1.2930832e+03 - -4.2785847e+03 -2.4462600e+03 -1.3074555e+03 - -4.1746654e+03 -2.5777418e+03 -1.3207765e+03 - -4.0636016e+03 -2.7131561e+03 -1.3327426e+03 - -3.9456658e+03 -2.8517808e+03 -1.3430508e+03 - -3.8213422e+03 -2.9927093e+03 -1.3514158e+03 - -3.6913321e+03 -3.1348721e+03 -1.3575886e+03 - -3.5565427e+03 -3.2770753e+03 -1.3613750e+03 - -3.4180550e+03 -3.4180550e+03 -1.3626512e+03 - -3.2770753e+03 -3.5565427e+03 -1.3613750e+03 - -3.1348721e+03 -3.6913321e+03 -1.3575886e+03 - -2.9927093e+03 -3.8213422e+03 -1.3514158e+03 - -2.8517808e+03 -3.9456658e+03 -1.3430508e+03 - -2.7131561e+03 -4.0636016e+03 -1.3327426e+03 - -2.5777418e+03 -4.1746654e+03 -1.3207765e+03 - -2.4462600e+03 -4.2785847e+03 -1.3074555e+03 - -2.3192436e+03 -4.3752779e+03 -1.2930832e+03 - -2.1970457e+03 -4.4648253e+03 -1.2779500e+03 - -2.0798581e+03 -4.5474354e+03 -1.2623236e+03 - -1.9677364e+03 -4.6234109e+03 -1.2464424e+03 - -1.8606254e+03 -4.6931181e+03 -1.2305125e+03 - -1.7583860e+03 -4.7569602e+03 -1.2147078e+03 - -1.6608173e+03 -4.8153557e+03 -1.1991710e+03 - -1.5676776e+03 -4.8687226e+03 -1.1840168e+03 - -1.4786997e+03 -4.9174662e+03 -1.1693346e+03 - -1.3936045e+03 -4.9619713e+03 -1.1551924e+03 - -1.3121101e+03 -5.0025974e+03 -1.1416403e+03 - -1.2339389e+03 -5.0396763e+03 -1.1287132e+03 - -1.1588227e+03 -5.0735108e+03 -1.1164342e+03 - -1.0865053e+03 -5.1043759e+03 -1.1048167e+03 - -1.0167445e+03 -5.1325189e+03 -1.0938667e+03 - -9.4931311e+02 -5.1581618e+03 -1.0835844e+03 - -8.8399879e+02 -5.1815028e+03 -1.0739658e+03 - -8.2060390e+02 -5.2027185e+03 -1.0650039e+03 - -7.5894477e+02 -5.2219654e+03 -1.0566896e+03 - -6.9885078e+02 -5.2393821e+03 -1.0490122e+03 - -6.4016346e+02 -5.2550908e+03 -1.0419607e+03 - -5.8273533e+02 -5.2691993e+03 -1.0355234e+03 - -5.2642897e+02 -5.2818018e+03 -1.0296890e+03 - -4.7111586e+02 -5.2929807e+03 -1.0244466e+03 - -4.1667546e+02 -5.3028075e+03 -1.0197857e+03 - -3.6299418e+02 -5.3113436e+03 -1.0156967e+03 - -3.0996450e+02 -5.3186415e+03 -1.0121710e+03 - -2.5748407e+02 -5.3247453e+03 -1.0092010e+03 - -2.0545491e+02 -5.3296915e+03 -1.0067801e+03 - -1.5378257e+02 -5.3335090e+03 -1.0049028e+03 - -1.0237545e+02 -5.3362202e+03 -1.0035650e+03 - -5.1143979e+01 -5.3378407e+03 -1.0027635e+03 - -9.6268545e-09 -5.3383799e+03 -1.0024965e+03 - 5.1143979e+01 -5.3378407e+03 -1.0027635e+03 - 1.0237545e+02 -5.3362202e+03 -1.0035650e+03 - 1.5378257e+02 -5.3335090e+03 -1.0049028e+03 - 2.0545491e+02 -5.3296915e+03 -1.0067801e+03 - 2.5748407e+02 -5.3247453e+03 -1.0092010e+03 - 3.0996450e+02 -5.3186415e+03 -1.0121710e+03 - 3.6299418e+02 -5.3113436e+03 -1.0156967e+03 - 4.1667546e+02 -5.3028075e+03 -1.0197857e+03 - 4.7111586e+02 -5.2929807e+03 -1.0244466e+03 - 5.2642897e+02 -5.2818018e+03 -1.0296890e+03 - 5.8273533e+02 -5.2691993e+03 -1.0355234e+03 - 6.4016346e+02 -5.2550908e+03 -1.0419607e+03 - 6.9885078e+02 -5.2393821e+03 -1.0490122e+03 - 7.5894477e+02 -5.2219654e+03 -1.0566896e+03 - 8.2060390e+02 -5.2027185e+03 -1.0650039e+03 - 8.8399879e+02 -5.1815028e+03 -1.0739658e+03 - 9.4931311e+02 -5.1581618e+03 -1.0835844e+03 - 1.0167445e+03 -5.1325189e+03 -1.0938667e+03 - 1.0865053e+03 -5.1043759e+03 -1.1048167e+03 - 1.1588227e+03 -5.0735108e+03 -1.1164342e+03 - 1.2339389e+03 -5.0396763e+03 -1.1287132e+03 - 1.3121101e+03 -5.0025974e+03 -1.1416403e+03 - 1.3936045e+03 -4.9619713e+03 -1.1551924e+03 - 1.4786997e+03 -4.9174662e+03 -1.1693346e+03 - 1.5676776e+03 -4.8687226e+03 -1.1840168e+03 - 1.6608173e+03 -4.8153557e+03 -1.1991710e+03 - 1.7583860e+03 -4.7569602e+03 -1.2147078e+03 - 1.8606254e+03 -4.6931181e+03 -1.2305125e+03 - 1.9677364e+03 -4.6234109e+03 -1.2464424e+03 - 2.0798581e+03 -4.5474354e+03 -1.2623236e+03 - 2.1970457e+03 -4.4648253e+03 -1.2779500e+03 - 2.3192436e+03 -4.3752779e+03 -1.2930832e+03 - 2.4462600e+03 -4.2785847e+03 -1.3074555e+03 - 2.5777418e+03 -4.1746654e+03 -1.3207765e+03 - 2.7131561e+03 -4.0636016e+03 -1.3327426e+03 - 2.8517808e+03 -3.9456658e+03 -1.3430508e+03 - 2.9927093e+03 -3.8213422e+03 -1.3514158e+03 - 3.1348721e+03 -3.6913321e+03 -1.3575886e+03 - 3.2770753e+03 -3.5565427e+03 -1.3613750e+03 - 3.4180550e+03 -3.4180550e+03 -1.3626512e+03 - 3.5565427e+03 -3.2770753e+03 -1.3613750e+03 - 3.6913321e+03 -3.1348721e+03 -1.3575886e+03 - 3.8213422e+03 -2.9927093e+03 -1.3514158e+03 - 3.9456658e+03 -2.8517808e+03 -1.3430508e+03 - 4.0636016e+03 -2.7131561e+03 -1.3327426e+03 - 4.1746654e+03 -2.5777418e+03 -1.3207765e+03 - 4.2785847e+03 -2.4462600e+03 -1.3074555e+03 - 4.3752779e+03 -2.3192436e+03 -1.2930832e+03 - 4.4648253e+03 -2.1970457e+03 -1.2779500e+03 - 4.5474354e+03 -2.0798581e+03 -1.2623236e+03 - 4.6234109e+03 -1.9677364e+03 -1.2464424e+03 - 4.6931181e+03 -1.8606254e+03 -1.2305125e+03 - 4.7569602e+03 -1.7583860e+03 -1.2147078e+03 - 4.8153557e+03 -1.6608173e+03 -1.1991710e+03 - 4.8687226e+03 -1.5676776e+03 -1.1840168e+03 - 4.9174662e+03 -1.4786997e+03 -1.1693346e+03 - 4.9619713e+03 -1.3936045e+03 -1.1551924e+03 - 5.0025974e+03 -1.3121101e+03 -1.1416403e+03 - 5.0396763e+03 -1.2339389e+03 -1.1287132e+03 - 5.0735108e+03 -1.1588227e+03 -1.1164342e+03 - 5.1043759e+03 -1.0865053e+03 -1.1048167e+03 - 5.1325189e+03 -1.0167445e+03 -1.0938667e+03 - 5.1581618e+03 -9.4931311e+02 -1.0835844e+03 - 5.1815028e+03 -8.8399879e+02 -1.0739658e+03 - 5.2027185e+03 -8.2060390e+02 -1.0650039e+03 - 5.2219654e+03 -7.5894477e+02 -1.0566896e+03 - 5.2393821e+03 -6.9885078e+02 -1.0490122e+03 - 5.2550908e+03 -6.4016346e+02 -1.0419607e+03 - 5.2691993e+03 -5.8273533e+02 -1.0355234e+03 - 5.2818018e+03 -5.2642897e+02 -1.0296890e+03 - 5.2929807e+03 -4.7111586e+02 -1.0244466e+03 - 5.3028075e+03 -4.1667546e+02 -1.0197857e+03 - 5.3113436e+03 -3.6299418e+02 -1.0156967e+03 - 5.3186415e+03 -3.0996450e+02 -1.0121710e+03 - 5.3247453e+03 -2.5748407e+02 -1.0092010e+03 - 5.3296915e+03 -2.0545491e+02 -1.0067801e+03 - 5.3335090e+03 -1.5378257e+02 -1.0049028e+03 - 5.3362202e+03 -1.0237545e+02 -1.0035650e+03 - 5.3378407e+03 -5.1143979e+01 -1.0027635e+03 - 5.3383799e+03 0.0000000e+00 -1.0024965e+03 - 5.3186683e+03 4.8134273e-09 -1.1354164e+03 - 5.3181175e+03 5.1331748e+01 -1.1357114e+03 - 5.3164621e+03 1.0275126e+02 -1.1365968e+03 - 5.3136926e+03 1.5434697e+02 -1.1380747e+03 - 5.3097930e+03 2.0620866e+02 -1.1401482e+03 - 5.3047411e+03 2.5842816e+02 -1.1428217e+03 - 5.2985073e+03 3.1110005e+02 -1.1461007e+03 - 5.2910549e+03 3.6432241e+02 -1.1499921e+03 - 5.2823394e+03 4.1819755e+02 -1.1545037e+03 - 5.2723080e+03 4.7283287e+02 -1.1596442e+03 - 5.2608985e+03 5.2834168e+02 -1.1654235e+03 - 5.2480392e+03 5.8484406e+02 -1.1718520e+03 - 5.2336474e+03 6.4246781e+02 -1.1789407e+03 - 5.2176284e+03 7.0134940e+02 -1.1867009e+03 - 5.1998744e+03 7.6163492e+02 -1.1951438e+03 - 5.1802633e+03 8.2348110e+02 -1.2042800e+03 - 5.1586569e+03 8.8705623e+02 -1.2141194e+03 - 5.1348992e+03 9.5254104e+02 -1.2246698e+03 - 5.1088153e+03 1.0201294e+03 -1.2359368e+03 - 5.0802091e+03 1.0900290e+03 -1.2479222e+03 - 5.0488615e+03 1.1624613e+03 -1.2606229e+03 - 5.0145294e+03 1.2376613e+03 -1.2740293e+03 - 4.9769438e+03 1.3158766e+03 -1.2881237e+03 - 4.9358091e+03 1.3973652e+03 -1.3028775e+03 - 4.8908035e+03 1.4823925e+03 -1.3182489e+03 - 4.8415798e+03 1.5712261e+03 -1.3341802e+03 - 4.7877686e+03 1.6641291e+03 -1.3505940e+03 - 4.7289832e+03 1.7613503e+03 -1.3673901e+03 - 4.6648280e+03 1.8631117e+03 -1.3844419e+03 - 4.5949098e+03 1.9695933e+03 -1.4015933e+03 - 4.5188543e+03 2.0809138e+03 -1.4186562e+03 - 4.4363262e+03 2.1971091e+03 -1.4354093e+03 - 4.3470544e+03 2.3181083e+03 -1.4515989e+03 - 4.2508607e+03 2.4437097e+03 -1.4669424e+03 - 4.1476909e+03 2.5735591e+03 -1.4811350e+03 - 4.0376452e+03 2.7071335e+03 -1.4938603e+03 - 3.9210040e+03 2.8437337e+03 -1.5048042e+03 - 3.7982452e+03 2.9824899e+03 -1.5136724e+03 - 3.6700484e+03 3.1223822e+03 -1.5202093e+03 - 3.5372828e+03 3.2622773e+03 -1.5242159e+03 - 3.4009779e+03 3.4009779e+03 -1.5255659e+03 - 3.2622773e+03 3.5372828e+03 -1.5242159e+03 - 3.1223822e+03 3.6700484e+03 -1.5202093e+03 - 2.9824899e+03 3.7982452e+03 -1.5136724e+03 - 2.8437337e+03 3.9210040e+03 -1.5048042e+03 - 2.7071335e+03 4.0376452e+03 -1.4938603e+03 - 2.5735591e+03 4.1476909e+03 -1.4811350e+03 - 2.4437097e+03 4.2508607e+03 -1.4669424e+03 - 2.3181083e+03 4.3470544e+03 -1.4515989e+03 - 2.1971091e+03 4.4363262e+03 -1.4354093e+03 - 2.0809138e+03 4.5188543e+03 -1.4186562e+03 - 1.9695933e+03 4.5949098e+03 -1.4015933e+03 - 1.8631117e+03 4.6648280e+03 -1.3844419e+03 - 1.7613503e+03 4.7289832e+03 -1.3673901e+03 - 1.6641291e+03 4.7877686e+03 -1.3505940e+03 - 1.5712261e+03 4.8415798e+03 -1.3341802e+03 - 1.4823925e+03 4.8908035e+03 -1.3182489e+03 - 1.3973652e+03 4.9358091e+03 -1.3028775e+03 - 1.3158766e+03 4.9769438e+03 -1.2881237e+03 - 1.2376613e+03 5.0145294e+03 -1.2740293e+03 - 1.1624613e+03 5.0488615e+03 -1.2606229e+03 - 1.0900290e+03 5.0802091e+03 -1.2479222e+03 - 1.0201294e+03 5.1088153e+03 -1.2359368e+03 - 9.5254104e+02 5.1348992e+03 -1.2246698e+03 - 8.8705623e+02 5.1586569e+03 -1.2141194e+03 - 8.2348110e+02 5.1802633e+03 -1.2042800e+03 - 7.6163492e+02 5.1998744e+03 -1.1951438e+03 - 7.0134940e+02 5.2176284e+03 -1.1867009e+03 - 6.4246781e+02 5.2336474e+03 -1.1789407e+03 - 5.8484406e+02 5.2480392e+03 -1.1718520e+03 - 5.2834168e+02 5.2608985e+03 -1.1654235e+03 - 4.7283287e+02 5.2723080e+03 -1.1596442e+03 - 4.1819755e+02 5.2823394e+03 -1.1545037e+03 - 3.6432241e+02 5.2910549e+03 -1.1499921e+03 - 3.1110005e+02 5.2985073e+03 -1.1461007e+03 - 2.5842816e+02 5.3047411e+03 -1.1428217e+03 - 2.0620866e+02 5.3097930e+03 -1.1401482e+03 - 1.5434697e+02 5.3136926e+03 -1.1380747e+03 - 1.0275126e+02 5.3164621e+03 -1.1365968e+03 - 5.1331748e+01 5.3181175e+03 -1.1357114e+03 - 4.8134273e-09 5.3186683e+03 -1.1354164e+03 - -5.1331748e+01 5.3181175e+03 -1.1357114e+03 - -1.0275126e+02 5.3164621e+03 -1.1365968e+03 - -1.5434697e+02 5.3136926e+03 -1.1380747e+03 - -2.0620866e+02 5.3097930e+03 -1.1401482e+03 - -2.5842816e+02 5.3047411e+03 -1.1428217e+03 - -3.1110005e+02 5.2985073e+03 -1.1461007e+03 - -3.6432241e+02 5.2910549e+03 -1.1499921e+03 - -4.1819755e+02 5.2823394e+03 -1.1545037e+03 - -4.7283287e+02 5.2723080e+03 -1.1596442e+03 - -5.2834168e+02 5.2608985e+03 -1.1654235e+03 - -5.8484406e+02 5.2480392e+03 -1.1718520e+03 - -6.4246781e+02 5.2336474e+03 -1.1789407e+03 - -7.0134940e+02 5.2176284e+03 -1.1867009e+03 - -7.6163492e+02 5.1998744e+03 -1.1951438e+03 - -8.2348110e+02 5.1802633e+03 -1.2042800e+03 - -8.8705623e+02 5.1586569e+03 -1.2141194e+03 - -9.5254104e+02 5.1348992e+03 -1.2246698e+03 - -1.0201294e+03 5.1088153e+03 -1.2359368e+03 - -1.0900290e+03 5.0802091e+03 -1.2479222e+03 - -1.1624613e+03 5.0488615e+03 -1.2606229e+03 - -1.2376613e+03 5.0145294e+03 -1.2740293e+03 - -1.3158766e+03 4.9769438e+03 -1.2881237e+03 - -1.3973652e+03 4.9358091e+03 -1.3028775e+03 - -1.4823925e+03 4.8908035e+03 -1.3182489e+03 - -1.5712261e+03 4.8415798e+03 -1.3341802e+03 - -1.6641291e+03 4.7877686e+03 -1.3505940e+03 - -1.7613503e+03 4.7289832e+03 -1.3673901e+03 - -1.8631117e+03 4.6648280e+03 -1.3844419e+03 - -1.9695933e+03 4.5949098e+03 -1.4015933e+03 - -2.0809138e+03 4.5188543e+03 -1.4186562e+03 - -2.1971091e+03 4.4363262e+03 -1.4354093e+03 - -2.3181083e+03 4.3470544e+03 -1.4515989e+03 - -2.4437097e+03 4.2508607e+03 -1.4669424e+03 - -2.5735591e+03 4.1476909e+03 -1.4811350e+03 - -2.7071335e+03 4.0376452e+03 -1.4938603e+03 - -2.8437337e+03 3.9210040e+03 -1.5048042e+03 - -2.9824899e+03 3.7982452e+03 -1.5136724e+03 - -3.1223822e+03 3.6700484e+03 -1.5202093e+03 - -3.2622773e+03 3.5372828e+03 -1.5242159e+03 - -3.4009779e+03 3.4009779e+03 -1.5255659e+03 - -3.5372828e+03 3.2622773e+03 -1.5242159e+03 - -3.6700484e+03 3.1223822e+03 -1.5202093e+03 - -3.7982452e+03 2.9824899e+03 -1.5136724e+03 - -3.9210040e+03 2.8437337e+03 -1.5048042e+03 - -4.0376452e+03 2.7071335e+03 -1.4938603e+03 - -4.1476909e+03 2.5735591e+03 -1.4811350e+03 - -4.2508607e+03 2.4437097e+03 -1.4669424e+03 - -4.3470544e+03 2.3181083e+03 -1.4515989e+03 - -4.4363262e+03 2.1971091e+03 -1.4354093e+03 - -4.5188543e+03 2.0809138e+03 -1.4186562e+03 - -4.5949098e+03 1.9695933e+03 -1.4015933e+03 - -4.6648280e+03 1.8631117e+03 -1.3844419e+03 - -4.7289832e+03 1.7613503e+03 -1.3673901e+03 - -4.7877686e+03 1.6641291e+03 -1.3505940e+03 - -4.8415798e+03 1.5712261e+03 -1.3341802e+03 - -4.8908035e+03 1.4823925e+03 -1.3182489e+03 - -4.9358091e+03 1.3973652e+03 -1.3028775e+03 - -4.9769438e+03 1.3158766e+03 -1.2881237e+03 - -5.0145294e+03 1.2376613e+03 -1.2740293e+03 - -5.0488615e+03 1.1624613e+03 -1.2606229e+03 - -5.0802091e+03 1.0900290e+03 -1.2479222e+03 - -5.1088153e+03 1.0201294e+03 -1.2359368e+03 - -5.1348992e+03 9.5254104e+02 -1.2246698e+03 - -5.1586569e+03 8.8705623e+02 -1.2141194e+03 - -5.1802633e+03 8.2348110e+02 -1.2042800e+03 - -5.1998744e+03 7.6163492e+02 -1.1951438e+03 - -5.2176284e+03 7.0134940e+02 -1.1867009e+03 - -5.2336474e+03 6.4246781e+02 -1.1789407e+03 - -5.2480392e+03 5.8484406e+02 -1.1718520e+03 - -5.2608985e+03 5.2834168e+02 -1.1654235e+03 - -5.2723080e+03 4.7283287e+02 -1.1596442e+03 - -5.2823394e+03 4.1819755e+02 -1.1545037e+03 - -5.2910549e+03 3.6432241e+02 -1.1499921e+03 - -5.2985073e+03 3.1110005e+02 -1.1461007e+03 - -5.3047411e+03 2.5842816e+02 -1.1428217e+03 - -5.3097930e+03 2.0620866e+02 -1.1401482e+03 - -5.3136926e+03 1.5434697e+02 -1.1380747e+03 - -5.3164621e+03 1.0275126e+02 -1.1365968e+03 - -5.3181175e+03 5.1331748e+01 -1.1357114e+03 - -5.3186683e+03 4.8134273e-09 -1.1354164e+03 - -5.3181175e+03 -5.1331748e+01 -1.1357114e+03 - -5.3164621e+03 -1.0275126e+02 -1.1365968e+03 - -5.3136926e+03 -1.5434697e+02 -1.1380747e+03 - -5.3097930e+03 -2.0620866e+02 -1.1401482e+03 - -5.3047411e+03 -2.5842816e+02 -1.1428217e+03 - -5.2985073e+03 -3.1110005e+02 -1.1461007e+03 - -5.2910549e+03 -3.6432241e+02 -1.1499921e+03 - -5.2823394e+03 -4.1819755e+02 -1.1545037e+03 - -5.2723080e+03 -4.7283287e+02 -1.1596442e+03 - -5.2608985e+03 -5.2834168e+02 -1.1654235e+03 - -5.2480392e+03 -5.8484406e+02 -1.1718520e+03 - -5.2336474e+03 -6.4246781e+02 -1.1789407e+03 - -5.2176284e+03 -7.0134940e+02 -1.1867009e+03 - -5.1998744e+03 -7.6163492e+02 -1.1951438e+03 - -5.1802633e+03 -8.2348110e+02 -1.2042800e+03 - -5.1586569e+03 -8.8705623e+02 -1.2141194e+03 - -5.1348992e+03 -9.5254104e+02 -1.2246698e+03 - -5.1088153e+03 -1.0201294e+03 -1.2359368e+03 - -5.0802091e+03 -1.0900290e+03 -1.2479222e+03 - -5.0488615e+03 -1.1624613e+03 -1.2606229e+03 - -5.0145294e+03 -1.2376613e+03 -1.2740293e+03 - -4.9769438e+03 -1.3158766e+03 -1.2881237e+03 - -4.9358091e+03 -1.3973652e+03 -1.3028775e+03 - -4.8908035e+03 -1.4823925e+03 -1.3182489e+03 - -4.8415798e+03 -1.5712261e+03 -1.3341802e+03 - -4.7877686e+03 -1.6641291e+03 -1.3505940e+03 - -4.7289832e+03 -1.7613503e+03 -1.3673901e+03 - -4.6648280e+03 -1.8631117e+03 -1.3844419e+03 - -4.5949098e+03 -1.9695933e+03 -1.4015933e+03 - -4.5188543e+03 -2.0809138e+03 -1.4186562e+03 - -4.4363262e+03 -2.1971091e+03 -1.4354093e+03 - -4.3470544e+03 -2.3181083e+03 -1.4515989e+03 - -4.2508607e+03 -2.4437097e+03 -1.4669424e+03 - -4.1476909e+03 -2.5735591e+03 -1.4811350e+03 - -4.0376452e+03 -2.7071335e+03 -1.4938603e+03 - -3.9210040e+03 -2.8437337e+03 -1.5048042e+03 - -3.7982452e+03 -2.9824899e+03 -1.5136724e+03 - -3.6700484e+03 -3.1223822e+03 -1.5202093e+03 - -3.5372828e+03 -3.2622773e+03 -1.5242159e+03 - -3.4009779e+03 -3.4009779e+03 -1.5255659e+03 - -3.2622773e+03 -3.5372828e+03 -1.5242159e+03 - -3.1223822e+03 -3.6700484e+03 -1.5202093e+03 - -2.9824899e+03 -3.7982452e+03 -1.5136724e+03 - -2.8437337e+03 -3.9210040e+03 -1.5048042e+03 - -2.7071335e+03 -4.0376452e+03 -1.4938603e+03 - -2.5735591e+03 -4.1476909e+03 -1.4811350e+03 - -2.4437097e+03 -4.2508607e+03 -1.4669424e+03 - -2.3181083e+03 -4.3470544e+03 -1.4515989e+03 - -2.1971091e+03 -4.4363262e+03 -1.4354093e+03 - -2.0809138e+03 -4.5188543e+03 -1.4186562e+03 - -1.9695933e+03 -4.5949098e+03 -1.4015933e+03 - -1.8631117e+03 -4.6648280e+03 -1.3844419e+03 - -1.7613503e+03 -4.7289832e+03 -1.3673901e+03 - -1.6641291e+03 -4.7877686e+03 -1.3505940e+03 - -1.5712261e+03 -4.8415798e+03 -1.3341802e+03 - -1.4823925e+03 -4.8908035e+03 -1.3182489e+03 - -1.3973652e+03 -4.9358091e+03 -1.3028775e+03 - -1.3158766e+03 -4.9769438e+03 -1.2881237e+03 - -1.2376613e+03 -5.0145294e+03 -1.2740293e+03 - -1.1624613e+03 -5.0488615e+03 -1.2606229e+03 - -1.0900290e+03 -5.0802091e+03 -1.2479222e+03 - -1.0201294e+03 -5.1088153e+03 -1.2359368e+03 - -9.5254104e+02 -5.1348992e+03 -1.2246698e+03 - -8.8705623e+02 -5.1586569e+03 -1.2141194e+03 - -8.2348110e+02 -5.1802633e+03 -1.2042800e+03 - -7.6163492e+02 -5.1998744e+03 -1.1951438e+03 - -7.0134940e+02 -5.2176284e+03 -1.1867009e+03 - -6.4246781e+02 -5.2336474e+03 -1.1789407e+03 - -5.8484406e+02 -5.2480392e+03 -1.1718520e+03 - -5.2834168e+02 -5.2608985e+03 -1.1654235e+03 - -4.7283287e+02 -5.2723080e+03 -1.1596442e+03 - -4.1819755e+02 -5.2823394e+03 -1.1545037e+03 - -3.6432241e+02 -5.2910549e+03 -1.1499921e+03 - -3.1110005e+02 -5.2985073e+03 -1.1461007e+03 - -2.5842816e+02 -5.3047411e+03 -1.1428217e+03 - -2.0620866e+02 -5.3097930e+03 -1.1401482e+03 - -1.5434697e+02 -5.3136926e+03 -1.1380747e+03 - -1.0275126e+02 -5.3164621e+03 -1.1365968e+03 - -5.1331748e+01 -5.3181175e+03 -1.1357114e+03 - 4.8134273e-09 -5.3186683e+03 -1.1354164e+03 - 5.1331748e+01 -5.3181175e+03 -1.1357114e+03 - 1.0275126e+02 -5.3164621e+03 -1.1365968e+03 - 1.5434697e+02 -5.3136926e+03 -1.1380747e+03 - 2.0620866e+02 -5.3097930e+03 -1.1401482e+03 - 2.5842816e+02 -5.3047411e+03 -1.1428217e+03 - 3.1110005e+02 -5.2985073e+03 -1.1461007e+03 - 3.6432241e+02 -5.2910549e+03 -1.1499921e+03 - 4.1819755e+02 -5.2823394e+03 -1.1545037e+03 - 4.7283287e+02 -5.2723080e+03 -1.1596442e+03 - 5.2834168e+02 -5.2608985e+03 -1.1654235e+03 - 5.8484406e+02 -5.2480392e+03 -1.1718520e+03 - 6.4246781e+02 -5.2336474e+03 -1.1789407e+03 - 7.0134940e+02 -5.2176284e+03 -1.1867009e+03 - 7.6163492e+02 -5.1998744e+03 -1.1951438e+03 - 8.2348110e+02 -5.1802633e+03 -1.2042800e+03 - 8.8705623e+02 -5.1586569e+03 -1.2141194e+03 - 9.5254104e+02 -5.1348992e+03 -1.2246698e+03 - 1.0201294e+03 -5.1088153e+03 -1.2359368e+03 - 1.0900290e+03 -5.0802091e+03 -1.2479222e+03 - 1.1624613e+03 -5.0488615e+03 -1.2606229e+03 - 1.2376613e+03 -5.0145294e+03 -1.2740293e+03 - 1.3158766e+03 -4.9769438e+03 -1.2881237e+03 - 1.3973652e+03 -4.9358091e+03 -1.3028775e+03 - 1.4823925e+03 -4.8908035e+03 -1.3182489e+03 - 1.5712261e+03 -4.8415798e+03 -1.3341802e+03 - 1.6641291e+03 -4.7877686e+03 -1.3505940e+03 - 1.7613503e+03 -4.7289832e+03 -1.3673901e+03 - 1.8631117e+03 -4.6648280e+03 -1.3844419e+03 - 1.9695933e+03 -4.5949098e+03 -1.4015933e+03 - 2.0809138e+03 -4.5188543e+03 -1.4186562e+03 - 2.1971091e+03 -4.4363262e+03 -1.4354093e+03 - 2.3181083e+03 -4.3470544e+03 -1.4515989e+03 - 2.4437097e+03 -4.2508607e+03 -1.4669424e+03 - 2.5735591e+03 -4.1476909e+03 -1.4811350e+03 - 2.7071335e+03 -4.0376452e+03 -1.4938603e+03 - 2.8437337e+03 -3.9210040e+03 -1.5048042e+03 - 2.9824899e+03 -3.7982452e+03 -1.5136724e+03 - 3.1223822e+03 -3.6700484e+03 -1.5202093e+03 - 3.2622773e+03 -3.5372828e+03 -1.5242159e+03 - 3.4009779e+03 -3.4009779e+03 -1.5255659e+03 - 3.5372828e+03 -3.2622773e+03 -1.5242159e+03 - 3.6700484e+03 -3.1223822e+03 -1.5202093e+03 - 3.7982452e+03 -2.9824899e+03 -1.5136724e+03 - 3.9210040e+03 -2.8437337e+03 -1.5048042e+03 - 4.0376452e+03 -2.7071335e+03 -1.4938603e+03 - 4.1476909e+03 -2.5735591e+03 -1.4811350e+03 - 4.2508607e+03 -2.4437097e+03 -1.4669424e+03 - 4.3470544e+03 -2.3181083e+03 -1.4515989e+03 - 4.4363262e+03 -2.1971091e+03 -1.4354093e+03 - 4.5188543e+03 -2.0809138e+03 -1.4186562e+03 - 4.5949098e+03 -1.9695933e+03 -1.4015933e+03 - 4.6648280e+03 -1.8631117e+03 -1.3844419e+03 - 4.7289832e+03 -1.7613503e+03 -1.3673901e+03 - 4.7877686e+03 -1.6641291e+03 -1.3505940e+03 - 4.8415798e+03 -1.5712261e+03 -1.3341802e+03 - 4.8908035e+03 -1.4823925e+03 -1.3182489e+03 - 4.9358091e+03 -1.3973652e+03 -1.3028775e+03 - 4.9769438e+03 -1.3158766e+03 -1.2881237e+03 - 5.0145294e+03 -1.2376613e+03 -1.2740293e+03 - 5.0488615e+03 -1.1624613e+03 -1.2606229e+03 - 5.0802091e+03 -1.0900290e+03 -1.2479222e+03 - 5.1088153e+03 -1.0201294e+03 -1.2359368e+03 - 5.1348992e+03 -9.5254104e+02 -1.2246698e+03 - 5.1586569e+03 -8.8705623e+02 -1.2141194e+03 - 5.1802633e+03 -8.2348110e+02 -1.2042800e+03 - 5.1998744e+03 -7.6163492e+02 -1.1951438e+03 - 5.2176284e+03 -7.0134940e+02 -1.1867009e+03 - 5.2336474e+03 -6.4246781e+02 -1.1789407e+03 - 5.2480392e+03 -5.8484406e+02 -1.1718520e+03 - 5.2608985e+03 -5.2834168e+02 -1.1654235e+03 - 5.2723080e+03 -4.7283287e+02 -1.1596442e+03 - 5.2823394e+03 -4.1819755e+02 -1.1545037e+03 - 5.2910549e+03 -3.6432241e+02 -1.1499921e+03 - 5.2985073e+03 -3.1110005e+02 -1.1461007e+03 - 5.3047411e+03 -2.5842816e+02 -1.1428217e+03 - 5.3097930e+03 -2.0620866e+02 -1.1401482e+03 - 5.3136926e+03 -1.5434697e+02 -1.1380747e+03 - 5.3164621e+03 -1.0275126e+02 -1.1365968e+03 - 5.3181175e+03 -5.1331748e+01 -1.1357114e+03 - 5.3186683e+03 -4.8134273e-09 -1.1354164e+03 - 5.2968961e+03 0.0000000e+00 -1.2646890e+03 - 5.2963330e+03 5.1536827e+01 -1.2650086e+03 - 5.2946404e+03 1.0316167e+02 -1.2659681e+03 - 5.2918087e+03 1.5496322e+02 -1.2675695e+03 - 5.2878221e+03 2.0703147e+02 -1.2698159e+03 - 5.2826577e+03 2.5945842e+02 -1.2727117e+03 - 5.2762859e+03 3.1233877e+02 -1.2762625e+03 - 5.2686696e+03 3.6577061e+02 -1.2804750e+03 - 5.2597639e+03 4.1985622e+02 -1.2853571e+03 - 5.2495155e+03 4.7470276e+02 -1.2909174e+03 - 5.2378622e+03 5.3042318e+02 -1.2971656e+03 - 5.2247316e+03 5.8713698e+02 -1.3041118e+03 - 5.2100408e+03 6.4497111e+02 -1.3117665e+03 - 5.1936951e+03 7.0406089e+02 -1.3201406e+03 - 5.1755867e+03 7.6455086e+02 -1.3292444e+03 - 5.1555936e+03 8.2659571e+02 -1.3390877e+03 - 5.1335784e+03 8.9036113e+02 -1.3496787e+03 - 5.1093864e+03 9.5602454e+02 -1.3610237e+03 - 5.0828443e+03 1.0237757e+03 -1.3731259e+03 - 5.0537584e+03 1.0938170e+03 -1.3859846e+03 - 5.0219135e+03 1.1663637e+03 -1.3995932e+03 - 4.9870713e+03 1.2416431e+03 -1.4139382e+03 - 4.9489692e+03 1.3198934e+03 -1.4289969e+03 - 4.9073202e+03 1.4013618e+03 -1.4447349e+03 - 4.8618131e+03 1.4863005e+03 -1.4611040e+03 - 4.8121143e+03 1.5749623e+03 -1.4780387e+03 - 4.7578708e+03 1.6675931e+03 -1.4954529e+03 - 4.6987157e+03 1.7644228e+03 -1.5132370e+03 - 4.6342766e+03 1.8656532e+03 -1.5312541e+03 - 4.5641872e+03 1.9714432e+03 -1.5493373e+03 - 4.4881023e+03 2.0818905e+03 -1.5672874e+03 - 4.4057182e+03 2.1970121e+03 -1.5848720e+03 - 4.3167953e+03 2.3167220e+03 -1.6018274e+03 - 4.2211854e+03 2.4408099e+03 -1.6178617e+03 - 4.1188596e+03 2.5689214e+03 -1.6326624e+03 - 4.0099351e+03 2.7005447e+03 -1.6459074e+03 - 3.8946985e+03 2.8350049e+03 -1.6572787e+03 - 3.7736199e+03 2.9714700e+03 -1.6664799e+03 - 3.6473554e+03 3.1089712e+03 -1.6732543e+03 - 3.5167351e+03 3.2464361e+03 -1.6774033e+03 - 3.3827351e+03 3.3827351e+03 -1.6788007e+03 - 3.2464361e+03 3.5167351e+03 -1.6774033e+03 - 3.1089712e+03 3.6473554e+03 -1.6732543e+03 - 2.9714700e+03 3.7736199e+03 -1.6664799e+03 - 2.8350049e+03 3.8946985e+03 -1.6572787e+03 - 2.7005447e+03 4.0099351e+03 -1.6459074e+03 - 2.5689214e+03 4.1188596e+03 -1.6326624e+03 - 2.4408099e+03 4.2211854e+03 -1.6178617e+03 - 2.3167220e+03 4.3167953e+03 -1.6018274e+03 - 2.1970121e+03 4.4057182e+03 -1.5848720e+03 - 2.0818905e+03 4.4881023e+03 -1.5672874e+03 - 1.9714432e+03 4.5641872e+03 -1.5493373e+03 - 1.8656532e+03 4.6342766e+03 -1.5312541e+03 - 1.7644228e+03 4.6987157e+03 -1.5132370e+03 - 1.6675931e+03 4.7578708e+03 -1.4954529e+03 - 1.5749623e+03 4.8121143e+03 -1.4780387e+03 - 1.4863005e+03 4.8618131e+03 -1.4611040e+03 - 1.4013618e+03 4.9073202e+03 -1.4447349e+03 - 1.3198934e+03 4.9489692e+03 -1.4289969e+03 - 1.2416431e+03 4.9870713e+03 -1.4139382e+03 - 1.1663637e+03 5.0219135e+03 -1.3995932e+03 - 1.0938170e+03 5.0537584e+03 -1.3859846e+03 - 1.0237757e+03 5.0828443e+03 -1.3731259e+03 - 9.5602454e+02 5.1093864e+03 -1.3610237e+03 - 8.9036113e+02 5.1335784e+03 -1.3496787e+03 - 8.2659571e+02 5.1555936e+03 -1.3390877e+03 - 7.6455086e+02 5.1755867e+03 -1.3292444e+03 - 7.0406089e+02 5.1936951e+03 -1.3201406e+03 - 6.4497111e+02 5.2100408e+03 -1.3117665e+03 - 5.8713698e+02 5.2247316e+03 -1.3041118e+03 - 5.3042318e+02 5.2378622e+03 -1.2971656e+03 - 4.7470276e+02 5.2495155e+03 -1.2909174e+03 - 4.1985622e+02 5.2597639e+03 -1.2853571e+03 - 3.6577061e+02 5.2686696e+03 -1.2804750e+03 - 3.1233877e+02 5.2762859e+03 -1.2762625e+03 - 2.5945842e+02 5.2826577e+03 -1.2727117e+03 - 2.0703147e+02 5.2878221e+03 -1.2698159e+03 - 1.5496322e+02 5.2918087e+03 -1.2675695e+03 - 1.0316167e+02 5.2946404e+03 -1.2659681e+03 - 5.1536827e+01 5.2963330e+03 -1.2650086e+03 - 0.0000000e+00 5.2968961e+03 -1.2646890e+03 - -5.1536827e+01 5.2963330e+03 -1.2650086e+03 - -1.0316167e+02 5.2946404e+03 -1.2659681e+03 - -1.5496322e+02 5.2918087e+03 -1.2675695e+03 - -2.0703147e+02 5.2878221e+03 -1.2698159e+03 - -2.5945842e+02 5.2826577e+03 -1.2727117e+03 - -3.1233877e+02 5.2762859e+03 -1.2762625e+03 - -3.6577061e+02 5.2686696e+03 -1.2804750e+03 - -4.1985622e+02 5.2597639e+03 -1.2853571e+03 - -4.7470276e+02 5.2495155e+03 -1.2909174e+03 - -5.3042318e+02 5.2378622e+03 -1.2971656e+03 - -5.8713698e+02 5.2247316e+03 -1.3041118e+03 - -6.4497111e+02 5.2100408e+03 -1.3117665e+03 - -7.0406089e+02 5.1936951e+03 -1.3201406e+03 - -7.6455086e+02 5.1755867e+03 -1.3292444e+03 - -8.2659571e+02 5.1555936e+03 -1.3390877e+03 - -8.9036113e+02 5.1335784e+03 -1.3496787e+03 - -9.5602454e+02 5.1093864e+03 -1.3610237e+03 - -1.0237757e+03 5.0828443e+03 -1.3731259e+03 - -1.0938170e+03 5.0537584e+03 -1.3859846e+03 - -1.1663637e+03 5.0219135e+03 -1.3995932e+03 - -1.2416431e+03 4.9870713e+03 -1.4139382e+03 - -1.3198934e+03 4.9489692e+03 -1.4289969e+03 - -1.4013618e+03 4.9073202e+03 -1.4447349e+03 - -1.4863005e+03 4.8618131e+03 -1.4611040e+03 - -1.5749623e+03 4.8121143e+03 -1.4780387e+03 - -1.6675931e+03 4.7578708e+03 -1.4954529e+03 - -1.7644228e+03 4.6987157e+03 -1.5132370e+03 - -1.8656532e+03 4.6342766e+03 -1.5312541e+03 - -1.9714432e+03 4.5641872e+03 -1.5493373e+03 - -2.0818905e+03 4.4881023e+03 -1.5672874e+03 - -2.1970121e+03 4.4057182e+03 -1.5848720e+03 - -2.3167220e+03 4.3167953e+03 -1.6018274e+03 - -2.4408099e+03 4.2211854e+03 -1.6178617e+03 - -2.5689214e+03 4.1188596e+03 -1.6326624e+03 - -2.7005447e+03 4.0099351e+03 -1.6459074e+03 - -2.8350049e+03 3.8946985e+03 -1.6572787e+03 - -2.9714700e+03 3.7736199e+03 -1.6664799e+03 - -3.1089712e+03 3.6473554e+03 -1.6732543e+03 - -3.2464361e+03 3.5167351e+03 -1.6774033e+03 - -3.3827351e+03 3.3827351e+03 -1.6788007e+03 - -3.5167351e+03 3.2464361e+03 -1.6774033e+03 - -3.6473554e+03 3.1089712e+03 -1.6732543e+03 - -3.7736199e+03 2.9714700e+03 -1.6664799e+03 - -3.8946985e+03 2.8350049e+03 -1.6572787e+03 - -4.0099351e+03 2.7005447e+03 -1.6459074e+03 - -4.1188596e+03 2.5689214e+03 -1.6326624e+03 - -4.2211854e+03 2.4408099e+03 -1.6178617e+03 - -4.3167953e+03 2.3167220e+03 -1.6018274e+03 - -4.4057182e+03 2.1970121e+03 -1.5848720e+03 - -4.4881023e+03 2.0818905e+03 -1.5672874e+03 - -4.5641872e+03 1.9714432e+03 -1.5493373e+03 - -4.6342766e+03 1.8656532e+03 -1.5312541e+03 - -4.6987157e+03 1.7644228e+03 -1.5132370e+03 - -4.7578708e+03 1.6675931e+03 -1.4954529e+03 - -4.8121143e+03 1.5749623e+03 -1.4780387e+03 - -4.8618131e+03 1.4863005e+03 -1.4611040e+03 - -4.9073202e+03 1.4013618e+03 -1.4447349e+03 - -4.9489692e+03 1.3198934e+03 -1.4289969e+03 - -4.9870713e+03 1.2416431e+03 -1.4139382e+03 - -5.0219135e+03 1.1663637e+03 -1.3995932e+03 - -5.0537584e+03 1.0938170e+03 -1.3859846e+03 - -5.0828443e+03 1.0237757e+03 -1.3731259e+03 - -5.1093864e+03 9.5602454e+02 -1.3610237e+03 - -5.1335784e+03 8.9036113e+02 -1.3496787e+03 - -5.1555936e+03 8.2659571e+02 -1.3390877e+03 - -5.1755867e+03 7.6455086e+02 -1.3292444e+03 - -5.1936951e+03 7.0406089e+02 -1.3201406e+03 - -5.2100408e+03 6.4497111e+02 -1.3117665e+03 - -5.2247316e+03 5.8713698e+02 -1.3041118e+03 - -5.2378622e+03 5.3042318e+02 -1.2971656e+03 - -5.2495155e+03 4.7470276e+02 -1.2909174e+03 - -5.2597639e+03 4.1985622e+02 -1.2853571e+03 - -5.2686696e+03 3.6577061e+02 -1.2804750e+03 - -5.2762859e+03 3.1233877e+02 -1.2762625e+03 - -5.2826577e+03 2.5945842e+02 -1.2727117e+03 - -5.2878221e+03 2.0703147e+02 -1.2698159e+03 - -5.2918087e+03 1.5496322e+02 -1.2675695e+03 - -5.2946404e+03 1.0316167e+02 -1.2659681e+03 - -5.2963330e+03 5.1536827e+01 -1.2650086e+03 - -5.2968961e+03 0.0000000e+00 -1.2646890e+03 - -5.2963330e+03 -5.1536827e+01 -1.2650086e+03 - -5.2946404e+03 -1.0316167e+02 -1.2659681e+03 - -5.2918087e+03 -1.5496322e+02 -1.2675695e+03 - -5.2878221e+03 -2.0703147e+02 -1.2698159e+03 - -5.2826577e+03 -2.5945842e+02 -1.2727117e+03 - -5.2762859e+03 -3.1233877e+02 -1.2762625e+03 - -5.2686696e+03 -3.6577061e+02 -1.2804750e+03 - -5.2597639e+03 -4.1985622e+02 -1.2853571e+03 - -5.2495155e+03 -4.7470276e+02 -1.2909174e+03 - -5.2378622e+03 -5.3042318e+02 -1.2971656e+03 - -5.2247316e+03 -5.8713698e+02 -1.3041118e+03 - -5.2100408e+03 -6.4497111e+02 -1.3117665e+03 - -5.1936951e+03 -7.0406089e+02 -1.3201406e+03 - -5.1755867e+03 -7.6455086e+02 -1.3292444e+03 - -5.1555936e+03 -8.2659571e+02 -1.3390877e+03 - -5.1335784e+03 -8.9036113e+02 -1.3496787e+03 - -5.1093864e+03 -9.5602454e+02 -1.3610237e+03 - -5.0828443e+03 -1.0237757e+03 -1.3731259e+03 - -5.0537584e+03 -1.0938170e+03 -1.3859846e+03 - -5.0219135e+03 -1.1663637e+03 -1.3995932e+03 - -4.9870713e+03 -1.2416431e+03 -1.4139382e+03 - -4.9489692e+03 -1.3198934e+03 -1.4289969e+03 - -4.9073202e+03 -1.4013618e+03 -1.4447349e+03 - -4.8618131e+03 -1.4863005e+03 -1.4611040e+03 - -4.8121143e+03 -1.5749623e+03 -1.4780387e+03 - -4.7578708e+03 -1.6675931e+03 -1.4954529e+03 - -4.6987157e+03 -1.7644228e+03 -1.5132370e+03 - -4.6342766e+03 -1.8656532e+03 -1.5312541e+03 - -4.5641872e+03 -1.9714432e+03 -1.5493373e+03 - -4.4881023e+03 -2.0818905e+03 -1.5672874e+03 - -4.4057182e+03 -2.1970121e+03 -1.5848720e+03 - -4.3167953e+03 -2.3167220e+03 -1.6018274e+03 - -4.2211854e+03 -2.4408099e+03 -1.6178617e+03 - -4.1188596e+03 -2.5689214e+03 -1.6326624e+03 - -4.0099351e+03 -2.7005447e+03 -1.6459074e+03 - -3.8946985e+03 -2.8350049e+03 -1.6572787e+03 - -3.7736199e+03 -2.9714700e+03 -1.6664799e+03 - -3.6473554e+03 -3.1089712e+03 -1.6732543e+03 - -3.5167351e+03 -3.2464361e+03 -1.6774033e+03 - -3.3827351e+03 -3.3827351e+03 -1.6788007e+03 - -3.2464361e+03 -3.5167351e+03 -1.6774033e+03 - -3.1089712e+03 -3.6473554e+03 -1.6732543e+03 - -2.9714700e+03 -3.7736199e+03 -1.6664799e+03 - -2.8350049e+03 -3.8946985e+03 -1.6572787e+03 - -2.7005447e+03 -4.0099351e+03 -1.6459074e+03 - -2.5689214e+03 -4.1188596e+03 -1.6326624e+03 - -2.4408099e+03 -4.2211854e+03 -1.6178617e+03 - -2.3167220e+03 -4.3167953e+03 -1.6018274e+03 - -2.1970121e+03 -4.4057182e+03 -1.5848720e+03 - -2.0818905e+03 -4.4881023e+03 -1.5672874e+03 - -1.9714432e+03 -4.5641872e+03 -1.5493373e+03 - -1.8656532e+03 -4.6342766e+03 -1.5312541e+03 - -1.7644228e+03 -4.6987157e+03 -1.5132370e+03 - -1.6675931e+03 -4.7578708e+03 -1.4954529e+03 - -1.5749623e+03 -4.8121143e+03 -1.4780387e+03 - -1.4863005e+03 -4.8618131e+03 -1.4611040e+03 - -1.4013618e+03 -4.9073202e+03 -1.4447349e+03 - -1.3198934e+03 -4.9489692e+03 -1.4289969e+03 - -1.2416431e+03 -4.9870713e+03 -1.4139382e+03 - -1.1663637e+03 -5.0219135e+03 -1.3995932e+03 - -1.0938170e+03 -5.0537584e+03 -1.3859846e+03 - -1.0237757e+03 -5.0828443e+03 -1.3731259e+03 - -9.5602454e+02 -5.1093864e+03 -1.3610237e+03 - -8.9036113e+02 -5.1335784e+03 -1.3496787e+03 - -8.2659571e+02 -5.1555936e+03 -1.3390877e+03 - -7.6455086e+02 -5.1755867e+03 -1.3292444e+03 - -7.0406089e+02 -5.1936951e+03 -1.3201406e+03 - -6.4497111e+02 -5.2100408e+03 -1.3117665e+03 - -5.8713698e+02 -5.2247316e+03 -1.3041118e+03 - -5.3042318e+02 -5.2378622e+03 -1.2971656e+03 - -4.7470276e+02 -5.2495155e+03 -1.2909174e+03 - -4.1985622e+02 -5.2597639e+03 -1.2853571e+03 - -3.6577061e+02 -5.2686696e+03 -1.2804750e+03 - -3.1233877e+02 -5.2762859e+03 -1.2762625e+03 - -2.5945842e+02 -5.2826577e+03 -1.2727117e+03 - -2.0703147e+02 -5.2878221e+03 -1.2698159e+03 - -1.5496322e+02 -5.2918087e+03 -1.2675695e+03 - -1.0316167e+02 -5.2946404e+03 -1.2659681e+03 - -5.1536827e+01 -5.2963330e+03 -1.2650086e+03 - -4.8134273e-09 -5.2968961e+03 -1.2646890e+03 - 5.1536827e+01 -5.2963330e+03 -1.2650086e+03 - 1.0316167e+02 -5.2946404e+03 -1.2659681e+03 - 1.5496322e+02 -5.2918087e+03 -1.2675695e+03 - 2.0703147e+02 -5.2878221e+03 -1.2698159e+03 - 2.5945842e+02 -5.2826577e+03 -1.2727117e+03 - 3.1233877e+02 -5.2762859e+03 -1.2762625e+03 - 3.6577061e+02 -5.2686696e+03 -1.2804750e+03 - 4.1985622e+02 -5.2597639e+03 -1.2853571e+03 - 4.7470276e+02 -5.2495155e+03 -1.2909174e+03 - 5.3042318e+02 -5.2378622e+03 -1.2971656e+03 - 5.8713698e+02 -5.2247316e+03 -1.3041118e+03 - 6.4497111e+02 -5.2100408e+03 -1.3117665e+03 - 7.0406089e+02 -5.1936951e+03 -1.3201406e+03 - 7.6455086e+02 -5.1755867e+03 -1.3292444e+03 - 8.2659571e+02 -5.1555936e+03 -1.3390877e+03 - 8.9036113e+02 -5.1335784e+03 -1.3496787e+03 - 9.5602454e+02 -5.1093864e+03 -1.3610237e+03 - 1.0237757e+03 -5.0828443e+03 -1.3731259e+03 - 1.0938170e+03 -5.0537584e+03 -1.3859846e+03 - 1.1663637e+03 -5.0219135e+03 -1.3995932e+03 - 1.2416431e+03 -4.9870713e+03 -1.4139382e+03 - 1.3198934e+03 -4.9489692e+03 -1.4289969e+03 - 1.4013618e+03 -4.9073202e+03 -1.4447349e+03 - 1.4863005e+03 -4.8618131e+03 -1.4611040e+03 - 1.5749623e+03 -4.8121143e+03 -1.4780387e+03 - 1.6675931e+03 -4.7578708e+03 -1.4954529e+03 - 1.7644228e+03 -4.6987157e+03 -1.5132370e+03 - 1.8656532e+03 -4.6342766e+03 -1.5312541e+03 - 1.9714432e+03 -4.5641872e+03 -1.5493373e+03 - 2.0818905e+03 -4.4881023e+03 -1.5672874e+03 - 2.1970121e+03 -4.4057182e+03 -1.5848720e+03 - 2.3167220e+03 -4.3167953e+03 -1.6018274e+03 - 2.4408099e+03 -4.2211854e+03 -1.6178617e+03 - 2.5689214e+03 -4.1188596e+03 -1.6326624e+03 - 2.7005447e+03 -4.0099351e+03 -1.6459074e+03 - 2.8350049e+03 -3.8946985e+03 -1.6572787e+03 - 2.9714700e+03 -3.7736199e+03 -1.6664799e+03 - 3.1089712e+03 -3.6473554e+03 -1.6732543e+03 - 3.2464361e+03 -3.5167351e+03 -1.6774033e+03 - 3.3827351e+03 -3.3827351e+03 -1.6788007e+03 - 3.5167351e+03 -3.2464361e+03 -1.6774033e+03 - 3.6473554e+03 -3.1089712e+03 -1.6732543e+03 - 3.7736199e+03 -2.9714700e+03 -1.6664799e+03 - 3.8946985e+03 -2.8350049e+03 -1.6572787e+03 - 4.0099351e+03 -2.7005447e+03 -1.6459074e+03 - 4.1188596e+03 -2.5689214e+03 -1.6326624e+03 - 4.2211854e+03 -2.4408099e+03 -1.6178617e+03 - 4.3167953e+03 -2.3167220e+03 -1.6018274e+03 - 4.4057182e+03 -2.1970121e+03 -1.5848720e+03 - 4.4881023e+03 -2.0818905e+03 -1.5672874e+03 - 4.5641872e+03 -1.9714432e+03 -1.5493373e+03 - 4.6342766e+03 -1.8656532e+03 -1.5312541e+03 - 4.6987157e+03 -1.7644228e+03 -1.5132370e+03 - 4.7578708e+03 -1.6675931e+03 -1.4954529e+03 - 4.8121143e+03 -1.5749623e+03 -1.4780387e+03 - 4.8618131e+03 -1.4863005e+03 -1.4611040e+03 - 4.9073202e+03 -1.4013618e+03 -1.4447349e+03 - 4.9489692e+03 -1.3198934e+03 -1.4289969e+03 - 4.9870713e+03 -1.2416431e+03 -1.4139382e+03 - 5.0219135e+03 -1.1663637e+03 -1.3995932e+03 - 5.0537584e+03 -1.0938170e+03 -1.3859846e+03 - 5.0828443e+03 -1.0237757e+03 -1.3731259e+03 - 5.1093864e+03 -9.5602454e+02 -1.3610237e+03 - 5.1335784e+03 -8.9036113e+02 -1.3496787e+03 - 5.1555936e+03 -8.2659571e+02 -1.3390877e+03 - 5.1755867e+03 -7.6455086e+02 -1.3292444e+03 - 5.1936951e+03 -7.0406089e+02 -1.3201406e+03 - 5.2100408e+03 -6.4497111e+02 -1.3117665e+03 - 5.2247316e+03 -5.8713698e+02 -1.3041118e+03 - 5.2378622e+03 -5.3042318e+02 -1.2971656e+03 - 5.2495155e+03 -4.7470276e+02 -1.2909174e+03 - 5.2597639e+03 -4.1985622e+02 -1.2853571e+03 - 5.2686696e+03 -3.6577061e+02 -1.2804750e+03 - 5.2762859e+03 -3.1233877e+02 -1.2762625e+03 - 5.2826577e+03 -2.5945842e+02 -1.2727117e+03 - 5.2878221e+03 -2.0703147e+02 -1.2698159e+03 - 5.2918087e+03 -1.5496322e+02 -1.2675695e+03 - 5.2946404e+03 -1.0316167e+02 -1.2659681e+03 - 5.2963330e+03 -5.1536827e+01 -1.2650086e+03 - 5.2968961e+03 4.8134273e-09 -1.2646890e+03 - 5.2732317e+03 -1.4440282e-08 -1.3901107e+03 - 5.2726556e+03 5.1756892e+01 -1.3904517e+03 - 5.2709242e+03 1.0360203e+02 -1.3914753e+03 - 5.2680279e+03 1.5562431e+02 -1.3931834e+03 - 5.2639504e+03 2.0791391e+02 -1.3955791e+03 - 5.2586689e+03 2.6056296e+02 -1.3986668e+03 - 5.2521535e+03 3.1366622e+02 -1.4024518e+03 - 5.2443666e+03 3.6732177e+02 -1.4069407e+03 - 5.2352633e+03 4.2163173e+02 -1.4121410e+03 - 5.2247898e+03 4.7670298e+02 -1.4180611e+03 - 5.2128837e+03 5.3264797e+02 -1.4247100e+03 - 5.1994723e+03 5.8958552e+02 -1.4320974e+03 - 5.1844727e+03 6.4764159e+02 -1.4402330e+03 - 5.1677901e+03 7.0695014e+02 -1.4491266e+03 - 5.1493170e+03 7.6765397e+02 -1.4587874e+03 - 5.1289320e+03 8.2990550e+02 -1.4692236e+03 - 5.1064986e+03 8.9386750e+02 -1.4804418e+03 - 5.0818635e+03 9.5971375e+02 -1.4924459e+03 - 5.0548556e+03 1.0276295e+03 -1.5052365e+03 - 5.0252845e+03 1.0978116e+03 -1.5188097e+03 - 4.9929390e+03 1.1704684e+03 -1.5331551e+03 - 4.9575862e+03 1.2458190e+03 -1.5482550e+03 - 4.9189710e+03 1.3240920e+03 -1.5640814e+03 - 4.8768154e+03 1.4055226e+03 -1.5805943e+03 - 4.8308198e+03 1.4903499e+03 -1.5977390e+03 - 4.7806650e+03 1.5788110e+03 -1.6154428e+03 - 4.7260152e+03 1.6711342e+03 -1.6336118e+03 - 4.6665241e+03 1.7675304e+03 -1.6521284e+03 - 4.6018432e+03 1.8681808e+03 -1.6708470e+03 - 4.5316330e+03 1.9732231e+03 -1.6895924e+03 - 4.4555783e+03 2.0827348e+03 -1.7081576e+03 - 4.3734060e+03 2.1967145e+03 -1.7263032e+03 - 4.2849078e+03 2.3150621e+03 -1.7437596e+03 - 4.1899641e+03 2.4375593e+03 -1.7602312e+03 - 4.0885693e+03 2.5638533e+03 -1.7754035e+03 - 3.9808564e+03 2.6934444e+03 -1.7889545e+03 - 3.8671162e+03 2.8256828e+03 -1.8005683e+03 - 3.7478092e+03 2.9597750e+03 -1.8099519e+03 - 3.6235668e+03 3.0948031e+03 -1.8168527e+03 - 3.4951792e+03 3.2297556e+03 -1.8210757e+03 - 3.3635695e+03 3.3635695e+03 -1.8224974e+03 - 3.2297556e+03 3.4951792e+03 -1.8210757e+03 - 3.0948031e+03 3.6235668e+03 -1.8168527e+03 - 2.9597750e+03 3.7478092e+03 -1.8099519e+03 - 2.8256828e+03 3.8671162e+03 -1.8005683e+03 - 2.6934444e+03 3.9808564e+03 -1.7889545e+03 - 2.5638533e+03 4.0885693e+03 -1.7754035e+03 - 2.4375593e+03 4.1899641e+03 -1.7602312e+03 - 2.3150621e+03 4.2849078e+03 -1.7437596e+03 - 2.1967145e+03 4.3734060e+03 -1.7263032e+03 - 2.0827348e+03 4.4555783e+03 -1.7081576e+03 - 1.9732231e+03 4.5316330e+03 -1.6895924e+03 - 1.8681808e+03 4.6018432e+03 -1.6708470e+03 - 1.7675304e+03 4.6665241e+03 -1.6521284e+03 - 1.6711342e+03 4.7260152e+03 -1.6336118e+03 - 1.5788110e+03 4.7806650e+03 -1.6154428e+03 - 1.4903499e+03 4.8308198e+03 -1.5977390e+03 - 1.4055226e+03 4.8768154e+03 -1.5805943e+03 - 1.3240920e+03 4.9189710e+03 -1.5640814e+03 - 1.2458190e+03 4.9575862e+03 -1.5482550e+03 - 1.1704684e+03 4.9929390e+03 -1.5331551e+03 - 1.0978116e+03 5.0252845e+03 -1.5188097e+03 - 1.0276295e+03 5.0548556e+03 -1.5052365e+03 - 9.5971375e+02 5.0818635e+03 -1.4924459e+03 - 8.9386750e+02 5.1064986e+03 -1.4804418e+03 - 8.2990550e+02 5.1289320e+03 -1.4692236e+03 - 7.6765397e+02 5.1493170e+03 -1.4587874e+03 - 7.0695014e+02 5.1677901e+03 -1.4491266e+03 - 6.4764159e+02 5.1844727e+03 -1.4402330e+03 - 5.8958552e+02 5.1994723e+03 -1.4320974e+03 - 5.3264797e+02 5.2128837e+03 -1.4247100e+03 - 4.7670298e+02 5.2247898e+03 -1.4180611e+03 - 4.2163173e+02 5.2352633e+03 -1.4121410e+03 - 3.6732177e+02 5.2443666e+03 -1.4069407e+03 - 3.1366622e+02 5.2521535e+03 -1.4024518e+03 - 2.6056296e+02 5.2586689e+03 -1.3986668e+03 - 2.0791391e+02 5.2639504e+03 -1.3955791e+03 - 1.5562431e+02 5.2680279e+03 -1.3931834e+03 - 1.0360203e+02 5.2709242e+03 -1.3914753e+03 - 5.1756892e+01 5.2726556e+03 -1.3904517e+03 - -4.8134273e-09 5.2732317e+03 -1.3901107e+03 - -5.1756892e+01 5.2726556e+03 -1.3904517e+03 - -1.0360203e+02 5.2709242e+03 -1.3914753e+03 - -1.5562431e+02 5.2680279e+03 -1.3931834e+03 - -2.0791391e+02 5.2639504e+03 -1.3955791e+03 - -2.6056296e+02 5.2586689e+03 -1.3986668e+03 - -3.1366622e+02 5.2521535e+03 -1.4024518e+03 - -3.6732177e+02 5.2443666e+03 -1.4069407e+03 - -4.2163173e+02 5.2352633e+03 -1.4121410e+03 - -4.7670298e+02 5.2247898e+03 -1.4180611e+03 - -5.3264797e+02 5.2128837e+03 -1.4247100e+03 - -5.8958552e+02 5.1994723e+03 -1.4320974e+03 - -6.4764159e+02 5.1844727e+03 -1.4402330e+03 - -7.0695014e+02 5.1677901e+03 -1.4491266e+03 - -7.6765397e+02 5.1493170e+03 -1.4587874e+03 - -8.2990550e+02 5.1289320e+03 -1.4692236e+03 - -8.9386750e+02 5.1064986e+03 -1.4804418e+03 - -9.5971375e+02 5.0818635e+03 -1.4924459e+03 - -1.0276295e+03 5.0548556e+03 -1.5052365e+03 - -1.0978116e+03 5.0252845e+03 -1.5188097e+03 - -1.1704684e+03 4.9929390e+03 -1.5331551e+03 - -1.2458190e+03 4.9575862e+03 -1.5482550e+03 - -1.3240920e+03 4.9189710e+03 -1.5640814e+03 - -1.4055226e+03 4.8768154e+03 -1.5805943e+03 - -1.4903499e+03 4.8308198e+03 -1.5977390e+03 - -1.5788110e+03 4.7806650e+03 -1.6154428e+03 - -1.6711342e+03 4.7260152e+03 -1.6336118e+03 - -1.7675304e+03 4.6665241e+03 -1.6521284e+03 - -1.8681808e+03 4.6018432e+03 -1.6708470e+03 - -1.9732231e+03 4.5316330e+03 -1.6895924e+03 - -2.0827348e+03 4.4555783e+03 -1.7081576e+03 - -2.1967145e+03 4.3734060e+03 -1.7263032e+03 - -2.3150621e+03 4.2849078e+03 -1.7437596e+03 - -2.4375593e+03 4.1899641e+03 -1.7602312e+03 - -2.5638533e+03 4.0885693e+03 -1.7754035e+03 - -2.6934444e+03 3.9808564e+03 -1.7889545e+03 - -2.8256828e+03 3.8671162e+03 -1.8005683e+03 - -2.9597750e+03 3.7478092e+03 -1.8099519e+03 - -3.0948031e+03 3.6235668e+03 -1.8168527e+03 - -3.2297556e+03 3.4951792e+03 -1.8210757e+03 - -3.3635695e+03 3.3635695e+03 -1.8224974e+03 - -3.4951792e+03 3.2297556e+03 -1.8210757e+03 - -3.6235668e+03 3.0948031e+03 -1.8168527e+03 - -3.7478092e+03 2.9597750e+03 -1.8099519e+03 - -3.8671162e+03 2.8256828e+03 -1.8005683e+03 - -3.9808564e+03 2.6934444e+03 -1.7889545e+03 - -4.0885693e+03 2.5638533e+03 -1.7754035e+03 - -4.1899641e+03 2.4375593e+03 -1.7602312e+03 - -4.2849078e+03 2.3150621e+03 -1.7437596e+03 - -4.3734060e+03 2.1967145e+03 -1.7263032e+03 - -4.4555783e+03 2.0827348e+03 -1.7081576e+03 - -4.5316330e+03 1.9732231e+03 -1.6895924e+03 - -4.6018432e+03 1.8681808e+03 -1.6708470e+03 - -4.6665241e+03 1.7675304e+03 -1.6521284e+03 - -4.7260152e+03 1.6711342e+03 -1.6336118e+03 - -4.7806650e+03 1.5788110e+03 -1.6154428e+03 - -4.8308198e+03 1.4903499e+03 -1.5977390e+03 - -4.8768154e+03 1.4055226e+03 -1.5805943e+03 - -4.9189710e+03 1.3240920e+03 -1.5640814e+03 - -4.9575862e+03 1.2458190e+03 -1.5482550e+03 - -4.9929390e+03 1.1704684e+03 -1.5331551e+03 - -5.0252845e+03 1.0978116e+03 -1.5188097e+03 - -5.0548556e+03 1.0276295e+03 -1.5052365e+03 - -5.0818635e+03 9.5971375e+02 -1.4924459e+03 - -5.1064986e+03 8.9386750e+02 -1.4804418e+03 - -5.1289320e+03 8.2990550e+02 -1.4692236e+03 - -5.1493170e+03 7.6765397e+02 -1.4587874e+03 - -5.1677901e+03 7.0695014e+02 -1.4491266e+03 - -5.1844727e+03 6.4764159e+02 -1.4402330e+03 - -5.1994723e+03 5.8958552e+02 -1.4320974e+03 - -5.2128837e+03 5.3264797e+02 -1.4247100e+03 - -5.2247898e+03 4.7670298e+02 -1.4180611e+03 - -5.2352633e+03 4.2163173e+02 -1.4121410e+03 - -5.2443666e+03 3.6732177e+02 -1.4069407e+03 - -5.2521535e+03 3.1366622e+02 -1.4024518e+03 - -5.2586689e+03 2.6056296e+02 -1.3986668e+03 - -5.2639504e+03 2.0791391e+02 -1.3955791e+03 - -5.2680279e+03 1.5562431e+02 -1.3931834e+03 - -5.2709242e+03 1.0360203e+02 -1.3914753e+03 - -5.2726556e+03 5.1756892e+01 -1.3904517e+03 - -5.2732317e+03 1.4440282e-08 -1.3901107e+03 - -5.2726556e+03 -5.1756892e+01 -1.3904517e+03 - -5.2709242e+03 -1.0360203e+02 -1.3914753e+03 - -5.2680279e+03 -1.5562431e+02 -1.3931834e+03 - -5.2639504e+03 -2.0791391e+02 -1.3955791e+03 - -5.2586689e+03 -2.6056296e+02 -1.3986668e+03 - -5.2521535e+03 -3.1366622e+02 -1.4024518e+03 - -5.2443666e+03 -3.6732177e+02 -1.4069407e+03 - -5.2352633e+03 -4.2163173e+02 -1.4121410e+03 - -5.2247898e+03 -4.7670298e+02 -1.4180611e+03 - -5.2128837e+03 -5.3264797e+02 -1.4247100e+03 - -5.1994723e+03 -5.8958552e+02 -1.4320974e+03 - -5.1844727e+03 -6.4764159e+02 -1.4402330e+03 - -5.1677901e+03 -7.0695014e+02 -1.4491266e+03 - -5.1493170e+03 -7.6765397e+02 -1.4587874e+03 - -5.1289320e+03 -8.2990550e+02 -1.4692236e+03 - -5.1064986e+03 -8.9386750e+02 -1.4804418e+03 - -5.0818635e+03 -9.5971375e+02 -1.4924459e+03 - -5.0548556e+03 -1.0276295e+03 -1.5052365e+03 - -5.0252845e+03 -1.0978116e+03 -1.5188097e+03 - -4.9929390e+03 -1.1704684e+03 -1.5331551e+03 - -4.9575862e+03 -1.2458190e+03 -1.5482550e+03 - -4.9189710e+03 -1.3240920e+03 -1.5640814e+03 - -4.8768154e+03 -1.4055226e+03 -1.5805943e+03 - -4.8308198e+03 -1.4903499e+03 -1.5977390e+03 - -4.7806650e+03 -1.5788110e+03 -1.6154428e+03 - -4.7260152e+03 -1.6711342e+03 -1.6336118e+03 - -4.6665241e+03 -1.7675304e+03 -1.6521284e+03 - -4.6018432e+03 -1.8681808e+03 -1.6708470e+03 - -4.5316330e+03 -1.9732231e+03 -1.6895924e+03 - -4.4555783e+03 -2.0827348e+03 -1.7081576e+03 - -4.3734060e+03 -2.1967145e+03 -1.7263032e+03 - -4.2849078e+03 -2.3150621e+03 -1.7437596e+03 - -4.1899641e+03 -2.4375593e+03 -1.7602312e+03 - -4.0885693e+03 -2.5638533e+03 -1.7754035e+03 - -3.9808564e+03 -2.6934444e+03 -1.7889545e+03 - -3.8671162e+03 -2.8256828e+03 -1.8005683e+03 - -3.7478092e+03 -2.9597750e+03 -1.8099519e+03 - -3.6235668e+03 -3.0948031e+03 -1.8168527e+03 - -3.4951792e+03 -3.2297556e+03 -1.8210757e+03 - -3.3635695e+03 -3.3635695e+03 -1.8224974e+03 - -3.2297556e+03 -3.4951792e+03 -1.8210757e+03 - -3.0948031e+03 -3.6235668e+03 -1.8168527e+03 - -2.9597750e+03 -3.7478092e+03 -1.8099519e+03 - -2.8256828e+03 -3.8671162e+03 -1.8005683e+03 - -2.6934444e+03 -3.9808564e+03 -1.7889545e+03 - -2.5638533e+03 -4.0885693e+03 -1.7754035e+03 - -2.4375593e+03 -4.1899641e+03 -1.7602312e+03 - -2.3150621e+03 -4.2849078e+03 -1.7437596e+03 - -2.1967145e+03 -4.3734060e+03 -1.7263032e+03 - -2.0827348e+03 -4.4555783e+03 -1.7081576e+03 - -1.9732231e+03 -4.5316330e+03 -1.6895924e+03 - -1.8681808e+03 -4.6018432e+03 -1.6708470e+03 - -1.7675304e+03 -4.6665241e+03 -1.6521284e+03 - -1.6711342e+03 -4.7260152e+03 -1.6336118e+03 - -1.5788110e+03 -4.7806650e+03 -1.6154428e+03 - -1.4903499e+03 -4.8308198e+03 -1.5977390e+03 - -1.4055226e+03 -4.8768154e+03 -1.5805943e+03 - -1.3240920e+03 -4.9189710e+03 -1.5640814e+03 - -1.2458190e+03 -4.9575862e+03 -1.5482550e+03 - -1.1704684e+03 -4.9929390e+03 -1.5331551e+03 - -1.0978116e+03 -5.0252845e+03 -1.5188097e+03 - -1.0276295e+03 -5.0548556e+03 -1.5052365e+03 - -9.5971375e+02 -5.0818635e+03 -1.4924459e+03 - -8.9386750e+02 -5.1064986e+03 -1.4804418e+03 - -8.2990550e+02 -5.1289320e+03 -1.4692236e+03 - -7.6765397e+02 -5.1493170e+03 -1.4587874e+03 - -7.0695014e+02 -5.1677901e+03 -1.4491266e+03 - -6.4764159e+02 -5.1844727e+03 -1.4402330e+03 - -5.8958552e+02 -5.1994723e+03 -1.4320974e+03 - -5.3264797e+02 -5.2128837e+03 -1.4247100e+03 - -4.7670298e+02 -5.2247898e+03 -1.4180611e+03 - -4.2163173e+02 -5.2352633e+03 -1.4121410e+03 - -3.6732177e+02 -5.2443666e+03 -1.4069407e+03 - -3.1366622e+02 -5.2521535e+03 -1.4024518e+03 - -2.6056296e+02 -5.2586689e+03 -1.3986668e+03 - -2.0791391e+02 -5.2639504e+03 -1.3955791e+03 - -1.5562431e+02 -5.2680279e+03 -1.3931834e+03 - -1.0360203e+02 -5.2709242e+03 -1.3914753e+03 - -5.1756892e+01 -5.2726556e+03 -1.3904517e+03 - 0.0000000e+00 -5.2732317e+03 -1.3901107e+03 - 5.1756892e+01 -5.2726556e+03 -1.3904517e+03 - 1.0360203e+02 -5.2709242e+03 -1.3914753e+03 - 1.5562431e+02 -5.2680279e+03 -1.3931834e+03 - 2.0791391e+02 -5.2639504e+03 -1.3955791e+03 - 2.6056296e+02 -5.2586689e+03 -1.3986668e+03 - 3.1366622e+02 -5.2521535e+03 -1.4024518e+03 - 3.6732177e+02 -5.2443666e+03 -1.4069407e+03 - 4.2163173e+02 -5.2352633e+03 -1.4121410e+03 - 4.7670298e+02 -5.2247898e+03 -1.4180611e+03 - 5.3264797e+02 -5.2128837e+03 -1.4247100e+03 - 5.8958552e+02 -5.1994723e+03 -1.4320974e+03 - 6.4764159e+02 -5.1844727e+03 -1.4402330e+03 - 7.0695014e+02 -5.1677901e+03 -1.4491266e+03 - 7.6765397e+02 -5.1493170e+03 -1.4587874e+03 - 8.2990550e+02 -5.1289320e+03 -1.4692236e+03 - 8.9386750e+02 -5.1064986e+03 -1.4804418e+03 - 9.5971375e+02 -5.0818635e+03 -1.4924459e+03 - 1.0276295e+03 -5.0548556e+03 -1.5052365e+03 - 1.0978116e+03 -5.0252845e+03 -1.5188097e+03 - 1.1704684e+03 -4.9929390e+03 -1.5331551e+03 - 1.2458190e+03 -4.9575862e+03 -1.5482550e+03 - 1.3240920e+03 -4.9189710e+03 -1.5640814e+03 - 1.4055226e+03 -4.8768154e+03 -1.5805943e+03 - 1.4903499e+03 -4.8308198e+03 -1.5977390e+03 - 1.5788110e+03 -4.7806650e+03 -1.6154428e+03 - 1.6711342e+03 -4.7260152e+03 -1.6336118e+03 - 1.7675304e+03 -4.6665241e+03 -1.6521284e+03 - 1.8681808e+03 -4.6018432e+03 -1.6708470e+03 - 1.9732231e+03 -4.5316330e+03 -1.6895924e+03 - 2.0827348e+03 -4.4555783e+03 -1.7081576e+03 - 2.1967145e+03 -4.3734060e+03 -1.7263032e+03 - 2.3150621e+03 -4.2849078e+03 -1.7437596e+03 - 2.4375593e+03 -4.1899641e+03 -1.7602312e+03 - 2.5638533e+03 -4.0885693e+03 -1.7754035e+03 - 2.6934444e+03 -3.9808564e+03 -1.7889545e+03 - 2.8256828e+03 -3.8671162e+03 -1.8005683e+03 - 2.9597750e+03 -3.7478092e+03 -1.8099519e+03 - 3.0948031e+03 -3.6235668e+03 -1.8168527e+03 - 3.2297556e+03 -3.4951792e+03 -1.8210757e+03 - 3.3635695e+03 -3.3635695e+03 -1.8224974e+03 - 3.4951792e+03 -3.2297556e+03 -1.8210757e+03 - 3.6235668e+03 -3.0948031e+03 -1.8168527e+03 - 3.7478092e+03 -2.9597750e+03 -1.8099519e+03 - 3.8671162e+03 -2.8256828e+03 -1.8005683e+03 - 3.9808564e+03 -2.6934444e+03 -1.7889545e+03 - 4.0885693e+03 -2.5638533e+03 -1.7754035e+03 - 4.1899641e+03 -2.4375593e+03 -1.7602312e+03 - 4.2849078e+03 -2.3150621e+03 -1.7437596e+03 - 4.3734060e+03 -2.1967145e+03 -1.7263032e+03 - 4.4555783e+03 -2.0827348e+03 -1.7081576e+03 - 4.5316330e+03 -1.9732231e+03 -1.6895924e+03 - 4.6018432e+03 -1.8681808e+03 -1.6708470e+03 - 4.6665241e+03 -1.7675304e+03 -1.6521284e+03 - 4.7260152e+03 -1.6711342e+03 -1.6336118e+03 - 4.7806650e+03 -1.5788110e+03 -1.6154428e+03 - 4.8308198e+03 -1.4903499e+03 -1.5977390e+03 - 4.8768154e+03 -1.4055226e+03 -1.5805943e+03 - 4.9189710e+03 -1.3240920e+03 -1.5640814e+03 - 4.9575862e+03 -1.2458190e+03 -1.5482550e+03 - 4.9929390e+03 -1.1704684e+03 -1.5331551e+03 - 5.0252845e+03 -1.0978116e+03 -1.5188097e+03 - 5.0548556e+03 -1.0276295e+03 -1.5052365e+03 - 5.0818635e+03 -9.5971375e+02 -1.4924459e+03 - 5.1064986e+03 -8.9386750e+02 -1.4804418e+03 - 5.1289320e+03 -8.2990550e+02 -1.4692236e+03 - 5.1493170e+03 -7.6765397e+02 -1.4587874e+03 - 5.1677901e+03 -7.0695014e+02 -1.4491266e+03 - 5.1844727e+03 -6.4764159e+02 -1.4402330e+03 - 5.1994723e+03 -5.8958552e+02 -1.4320974e+03 - 5.2128837e+03 -5.3264797e+02 -1.4247100e+03 - 5.2247898e+03 -4.7670298e+02 -1.4180611e+03 - 5.2352633e+03 -4.2163173e+02 -1.4121410e+03 - 5.2443666e+03 -3.6732177e+02 -1.4069407e+03 - 5.2521535e+03 -3.1366622e+02 -1.4024518e+03 - 5.2586689e+03 -2.6056296e+02 -1.3986668e+03 - 5.2639504e+03 -2.0791391e+02 -1.3955791e+03 - 5.2680279e+03 -1.5562431e+02 -1.3931834e+03 - 5.2709242e+03 -1.0360203e+02 -1.3914753e+03 - 5.2726556e+03 -5.1756892e+01 -1.3904517e+03 - 5.2732317e+03 -1.9253709e-08 -1.3901107e+03 - 5.2478424e+03 0.0000000e+00 -1.5115387e+03 - 5.2472531e+03 5.1989616e+01 -1.5118978e+03 - 5.2454820e+03 1.0406766e+02 -1.5129756e+03 - 5.2425193e+03 1.5632320e+02 -1.5147740e+03 - 5.2383488e+03 2.0884653e+02 -1.5172959e+03 - 5.2329474e+03 2.6172988e+02 -1.5205455e+03 - 5.2262848e+03 3.1506800e+02 -1.5245278e+03 - 5.2183237e+03 3.6895887e+02 -1.5292490e+03 - 5.2090184e+03 4.2350438e+02 -1.5347162e+03 - 5.1983153e+03 4.7881103e+02 -1.5409371e+03 - 5.1861516e+03 5.3499069e+02 -1.5479201e+03 - 5.1724547e+03 5.9216132e+02 -1.5556740e+03 - 5.1571415e+03 6.5044774e+02 -1.5642073e+03 - 5.1401176e+03 7.0998241e+02 -1.5735286e+03 - 5.1212760e+03 7.7090615e+02 -1.5836455e+03 - 5.1004960e+03 8.3336887e+02 -1.5945643e+03 - 5.0776424e+03 8.9753017e+02 -1.6062894e+03 - 5.0525638e+03 9.6355989e+02 -1.6188222e+03 - 5.0250918e+03 1.0316384e+03 -1.6321603e+03 - 4.9950393e+03 1.1019566e+03 -1.6462961e+03 - 4.9621999e+03 1.1747157e+03 -1.6612156e+03 - 4.9263469e+03 1.2501262e+03 -1.6768962e+03 - 4.8872328e+03 1.3284063e+03 -1.6933049e+03 - 4.8445898e+03 1.4097794e+03 -1.7103963e+03 - 4.7981304e+03 1.4944707e+03 -1.7281093e+03 - 4.7475502e+03 1.5827013e+03 -1.7463648e+03 - 4.6925314e+03 1.6746822e+03 -1.7650623e+03 - 4.6327485e+03 1.7706049e+03 -1.7840770e+03 - 4.5678773e+03 1.8706303e+03 -1.8032571e+03 - 4.4976050e+03 1.9748756e+03 -1.8224214e+03 - 4.4216455e+03 2.0833986e+03 -1.8413578e+03 - 4.3397560e+03 2.1961805e+03 -1.8598235e+03 - 4.2517578e+03 2.3131082e+03 -1.8775473e+03 - 4.1575580e+03 2.4339572e+03 -1.8942340e+03 - 4.0571730e+03 2.5583770e+03 -1.9095721e+03 - 3.9507489e+03 2.6858811e+03 -1.9232446e+03 - 3.8385789e+03 2.8158454e+03 -1.9349422e+03 - 3.7211125e+03 2.9475148e+03 -1.9443797e+03 - 3.5989556e+03 3.0800214e+03 -1.9513122e+03 - 3.4728586e+03 3.2124132e+03 -1.9555512e+03 - 3.3436923e+03 3.3436923e+03 -1.9569778e+03 - 3.2124132e+03 3.4728586e+03 -1.9555512e+03 - 3.0800214e+03 3.5989556e+03 -1.9513122e+03 - 2.9475148e+03 3.7211125e+03 -1.9443797e+03 - 2.8158454e+03 3.8385789e+03 -1.9349422e+03 - 2.6858811e+03 3.9507489e+03 -1.9232446e+03 - 2.5583770e+03 4.0571730e+03 -1.9095721e+03 - 2.4339572e+03 4.1575580e+03 -1.8942340e+03 - 2.3131082e+03 4.2517578e+03 -1.8775473e+03 - 2.1961805e+03 4.3397560e+03 -1.8598235e+03 - 2.0833986e+03 4.4216455e+03 -1.8413578e+03 - 1.9748756e+03 4.4976050e+03 -1.8224214e+03 - 1.8706303e+03 4.5678773e+03 -1.8032571e+03 - 1.7706049e+03 4.6327485e+03 -1.7840770e+03 - 1.6746822e+03 4.6925314e+03 -1.7650623e+03 - 1.5827013e+03 4.7475502e+03 -1.7463648e+03 - 1.4944707e+03 4.7981304e+03 -1.7281093e+03 - 1.4097794e+03 4.8445898e+03 -1.7103963e+03 - 1.3284063e+03 4.8872328e+03 -1.6933049e+03 - 1.2501262e+03 4.9263469e+03 -1.6768962e+03 - 1.1747157e+03 4.9621999e+03 -1.6612156e+03 - 1.1019566e+03 4.9950393e+03 -1.6462961e+03 - 1.0316384e+03 5.0250918e+03 -1.6321603e+03 - 9.6355989e+02 5.0525638e+03 -1.6188222e+03 - 8.9753017e+02 5.0776424e+03 -1.6062894e+03 - 8.3336887e+02 5.1004960e+03 -1.5945643e+03 - 7.7090615e+02 5.1212760e+03 -1.5836455e+03 - 7.0998241e+02 5.1401176e+03 -1.5735286e+03 - 6.5044774e+02 5.1571415e+03 -1.5642073e+03 - 5.9216132e+02 5.1724547e+03 -1.5556740e+03 - 5.3499069e+02 5.1861516e+03 -1.5479201e+03 - 4.7881103e+02 5.1983153e+03 -1.5409371e+03 - 4.2350438e+02 5.2090184e+03 -1.5347162e+03 - 3.6895887e+02 5.2183237e+03 -1.5292490e+03 - 3.1506800e+02 5.2262848e+03 -1.5245278e+03 - 2.6172988e+02 5.2329474e+03 -1.5205455e+03 - 2.0884653e+02 5.2383488e+03 -1.5172959e+03 - 1.5632320e+02 5.2425193e+03 -1.5147740e+03 - 1.0406766e+02 5.2454820e+03 -1.5129756e+03 - 5.1989616e+01 5.2472531e+03 -1.5118978e+03 - 9.6268545e-09 5.2478424e+03 -1.5115387e+03 - -5.1989616e+01 5.2472531e+03 -1.5118978e+03 - -1.0406766e+02 5.2454820e+03 -1.5129756e+03 - -1.5632320e+02 5.2425193e+03 -1.5147740e+03 - -2.0884653e+02 5.2383488e+03 -1.5172959e+03 - -2.6172988e+02 5.2329474e+03 -1.5205455e+03 - -3.1506800e+02 5.2262848e+03 -1.5245278e+03 - -3.6895887e+02 5.2183237e+03 -1.5292490e+03 - -4.2350438e+02 5.2090184e+03 -1.5347162e+03 - -4.7881103e+02 5.1983153e+03 -1.5409371e+03 - -5.3499069e+02 5.1861516e+03 -1.5479201e+03 - -5.9216132e+02 5.1724547e+03 -1.5556740e+03 - -6.5044774e+02 5.1571415e+03 -1.5642073e+03 - -7.0998241e+02 5.1401176e+03 -1.5735286e+03 - -7.7090615e+02 5.1212760e+03 -1.5836455e+03 - -8.3336887e+02 5.1004960e+03 -1.5945643e+03 - -8.9753017e+02 5.0776424e+03 -1.6062894e+03 - -9.6355989e+02 5.0525638e+03 -1.6188222e+03 - -1.0316384e+03 5.0250918e+03 -1.6321603e+03 - -1.1019566e+03 4.9950393e+03 -1.6462961e+03 - -1.1747157e+03 4.9621999e+03 -1.6612156e+03 - -1.2501262e+03 4.9263469e+03 -1.6768962e+03 - -1.3284063e+03 4.8872328e+03 -1.6933049e+03 - -1.4097794e+03 4.8445898e+03 -1.7103963e+03 - -1.4944707e+03 4.7981304e+03 -1.7281093e+03 - -1.5827013e+03 4.7475502e+03 -1.7463648e+03 - -1.6746822e+03 4.6925314e+03 -1.7650623e+03 - -1.7706049e+03 4.6327485e+03 -1.7840770e+03 - -1.8706303e+03 4.5678773e+03 -1.8032571e+03 - -1.9748756e+03 4.4976050e+03 -1.8224214e+03 - -2.0833986e+03 4.4216455e+03 -1.8413578e+03 - -2.1961805e+03 4.3397560e+03 -1.8598235e+03 - -2.3131082e+03 4.2517578e+03 -1.8775473e+03 - -2.4339572e+03 4.1575580e+03 -1.8942340e+03 - -2.5583770e+03 4.0571730e+03 -1.9095721e+03 - -2.6858811e+03 3.9507489e+03 -1.9232446e+03 - -2.8158454e+03 3.8385789e+03 -1.9349422e+03 - -2.9475148e+03 3.7211125e+03 -1.9443797e+03 - -3.0800214e+03 3.5989556e+03 -1.9513122e+03 - -3.2124132e+03 3.4728586e+03 -1.9555512e+03 - -3.3436923e+03 3.3436923e+03 -1.9569778e+03 - -3.4728586e+03 3.2124132e+03 -1.9555512e+03 - -3.5989556e+03 3.0800214e+03 -1.9513122e+03 - -3.7211125e+03 2.9475148e+03 -1.9443797e+03 - -3.8385789e+03 2.8158454e+03 -1.9349422e+03 - -3.9507489e+03 2.6858811e+03 -1.9232446e+03 - -4.0571730e+03 2.5583770e+03 -1.9095721e+03 - -4.1575580e+03 2.4339572e+03 -1.8942340e+03 - -4.2517578e+03 2.3131082e+03 -1.8775473e+03 - -4.3397560e+03 2.1961805e+03 -1.8598235e+03 - -4.4216455e+03 2.0833986e+03 -1.8413578e+03 - -4.4976050e+03 1.9748756e+03 -1.8224214e+03 - -4.5678773e+03 1.8706303e+03 -1.8032571e+03 - -4.6327485e+03 1.7706049e+03 -1.7840770e+03 - -4.6925314e+03 1.6746822e+03 -1.7650623e+03 - -4.7475502e+03 1.5827013e+03 -1.7463648e+03 - -4.7981304e+03 1.4944707e+03 -1.7281093e+03 - -4.8445898e+03 1.4097794e+03 -1.7103963e+03 - -4.8872328e+03 1.3284063e+03 -1.6933049e+03 - -4.9263469e+03 1.2501262e+03 -1.6768962e+03 - -4.9621999e+03 1.1747157e+03 -1.6612156e+03 - -4.9950393e+03 1.1019566e+03 -1.6462961e+03 - -5.0250918e+03 1.0316384e+03 -1.6321603e+03 - -5.0525638e+03 9.6355989e+02 -1.6188222e+03 - -5.0776424e+03 8.9753017e+02 -1.6062894e+03 - -5.1004960e+03 8.3336887e+02 -1.5945643e+03 - -5.1212760e+03 7.7090615e+02 -1.5836455e+03 - -5.1401176e+03 7.0998241e+02 -1.5735286e+03 - -5.1571415e+03 6.5044774e+02 -1.5642073e+03 - -5.1724547e+03 5.9216132e+02 -1.5556740e+03 - -5.1861516e+03 5.3499069e+02 -1.5479201e+03 - -5.1983153e+03 4.7881103e+02 -1.5409371e+03 - -5.2090184e+03 4.2350438e+02 -1.5347162e+03 - -5.2183237e+03 3.6895887e+02 -1.5292490e+03 - -5.2262848e+03 3.1506800e+02 -1.5245278e+03 - -5.2329474e+03 2.6172988e+02 -1.5205455e+03 - -5.2383488e+03 2.0884653e+02 -1.5172959e+03 - -5.2425193e+03 1.5632320e+02 -1.5147740e+03 - -5.2454820e+03 1.0406766e+02 -1.5129756e+03 - -5.2472531e+03 5.1989616e+01 -1.5118978e+03 - -5.2478424e+03 0.0000000e+00 -1.5115387e+03 - -5.2472531e+03 -5.1989616e+01 -1.5118978e+03 - -5.2454820e+03 -1.0406766e+02 -1.5129756e+03 - -5.2425193e+03 -1.5632320e+02 -1.5147740e+03 - -5.2383488e+03 -2.0884653e+02 -1.5172959e+03 - -5.2329474e+03 -2.6172988e+02 -1.5205455e+03 - -5.2262848e+03 -3.1506800e+02 -1.5245278e+03 - -5.2183237e+03 -3.6895887e+02 -1.5292490e+03 - -5.2090184e+03 -4.2350438e+02 -1.5347162e+03 - -5.1983153e+03 -4.7881103e+02 -1.5409371e+03 - -5.1861516e+03 -5.3499069e+02 -1.5479201e+03 - -5.1724547e+03 -5.9216132e+02 -1.5556740e+03 - -5.1571415e+03 -6.5044774e+02 -1.5642073e+03 - -5.1401176e+03 -7.0998241e+02 -1.5735286e+03 - -5.1212760e+03 -7.7090615e+02 -1.5836455e+03 - -5.1004960e+03 -8.3336887e+02 -1.5945643e+03 - -5.0776424e+03 -8.9753017e+02 -1.6062894e+03 - -5.0525638e+03 -9.6355989e+02 -1.6188222e+03 - -5.0250918e+03 -1.0316384e+03 -1.6321603e+03 - -4.9950393e+03 -1.1019566e+03 -1.6462961e+03 - -4.9621999e+03 -1.1747157e+03 -1.6612156e+03 - -4.9263469e+03 -1.2501262e+03 -1.6768962e+03 - -4.8872328e+03 -1.3284063e+03 -1.6933049e+03 - -4.8445898e+03 -1.4097794e+03 -1.7103963e+03 - -4.7981304e+03 -1.4944707e+03 -1.7281093e+03 - -4.7475502e+03 -1.5827013e+03 -1.7463648e+03 - -4.6925314e+03 -1.6746822e+03 -1.7650623e+03 - -4.6327485e+03 -1.7706049e+03 -1.7840770e+03 - -4.5678773e+03 -1.8706303e+03 -1.8032571e+03 - -4.4976050e+03 -1.9748756e+03 -1.8224214e+03 - -4.4216455e+03 -2.0833986e+03 -1.8413578e+03 - -4.3397560e+03 -2.1961805e+03 -1.8598235e+03 - -4.2517578e+03 -2.3131082e+03 -1.8775473e+03 - -4.1575580e+03 -2.4339572e+03 -1.8942340e+03 - -4.0571730e+03 -2.5583770e+03 -1.9095721e+03 - -3.9507489e+03 -2.6858811e+03 -1.9232446e+03 - -3.8385789e+03 -2.8158454e+03 -1.9349422e+03 - -3.7211125e+03 -2.9475148e+03 -1.9443797e+03 - -3.5989556e+03 -3.0800214e+03 -1.9513122e+03 - -3.4728586e+03 -3.2124132e+03 -1.9555512e+03 - -3.3436923e+03 -3.3436923e+03 -1.9569778e+03 - -3.2124132e+03 -3.4728586e+03 -1.9555512e+03 - -3.0800214e+03 -3.5989556e+03 -1.9513122e+03 - -2.9475148e+03 -3.7211125e+03 -1.9443797e+03 - -2.8158454e+03 -3.8385789e+03 -1.9349422e+03 - -2.6858811e+03 -3.9507489e+03 -1.9232446e+03 - -2.5583770e+03 -4.0571730e+03 -1.9095721e+03 - -2.4339572e+03 -4.1575580e+03 -1.8942340e+03 - -2.3131082e+03 -4.2517578e+03 -1.8775473e+03 - -2.1961805e+03 -4.3397560e+03 -1.8598235e+03 - -2.0833986e+03 -4.4216455e+03 -1.8413578e+03 - -1.9748756e+03 -4.4976050e+03 -1.8224214e+03 - -1.8706303e+03 -4.5678773e+03 -1.8032571e+03 - -1.7706049e+03 -4.6327485e+03 -1.7840770e+03 - -1.6746822e+03 -4.6925314e+03 -1.7650623e+03 - -1.5827013e+03 -4.7475502e+03 -1.7463648e+03 - -1.4944707e+03 -4.7981304e+03 -1.7281093e+03 - -1.4097794e+03 -4.8445898e+03 -1.7103963e+03 - -1.3284063e+03 -4.8872328e+03 -1.6933049e+03 - -1.2501262e+03 -4.9263469e+03 -1.6768962e+03 - -1.1747157e+03 -4.9621999e+03 -1.6612156e+03 - -1.1019566e+03 -4.9950393e+03 -1.6462961e+03 - -1.0316384e+03 -5.0250918e+03 -1.6321603e+03 - -9.6355989e+02 -5.0525638e+03 -1.6188222e+03 - -8.9753017e+02 -5.0776424e+03 -1.6062894e+03 - -8.3336887e+02 -5.1004960e+03 -1.5945643e+03 - -7.7090615e+02 -5.1212760e+03 -1.5836455e+03 - -7.0998241e+02 -5.1401176e+03 -1.5735286e+03 - -6.5044774e+02 -5.1571415e+03 -1.5642073e+03 - -5.9216132e+02 -5.1724547e+03 -1.5556740e+03 - -5.3499069e+02 -5.1861516e+03 -1.5479201e+03 - -4.7881103e+02 -5.1983153e+03 -1.5409371e+03 - -4.2350438e+02 -5.2090184e+03 -1.5347162e+03 - -3.6895887e+02 -5.2183237e+03 -1.5292490e+03 - -3.1506800e+02 -5.2262848e+03 -1.5245278e+03 - -2.6172988e+02 -5.2329474e+03 -1.5205455e+03 - -2.0884653e+02 -5.2383488e+03 -1.5172959e+03 - -1.5632320e+02 -5.2425193e+03 -1.5147740e+03 - -1.0406766e+02 -5.2454820e+03 -1.5129756e+03 - -5.1989616e+01 -5.2472531e+03 -1.5118978e+03 - 0.0000000e+00 -5.2478424e+03 -1.5115387e+03 - 5.1989616e+01 -5.2472531e+03 -1.5118978e+03 - 1.0406766e+02 -5.2454820e+03 -1.5129756e+03 - 1.5632320e+02 -5.2425193e+03 -1.5147740e+03 - 2.0884653e+02 -5.2383488e+03 -1.5172959e+03 - 2.6172988e+02 -5.2329474e+03 -1.5205455e+03 - 3.1506800e+02 -5.2262848e+03 -1.5245278e+03 - 3.6895887e+02 -5.2183237e+03 -1.5292490e+03 - 4.2350438e+02 -5.2090184e+03 -1.5347162e+03 - 4.7881103e+02 -5.1983153e+03 -1.5409371e+03 - 5.3499069e+02 -5.1861516e+03 -1.5479201e+03 - 5.9216132e+02 -5.1724547e+03 -1.5556740e+03 - 6.5044774e+02 -5.1571415e+03 -1.5642073e+03 - 7.0998241e+02 -5.1401176e+03 -1.5735286e+03 - 7.7090615e+02 -5.1212760e+03 -1.5836455e+03 - 8.3336887e+02 -5.1004960e+03 -1.5945643e+03 - 8.9753017e+02 -5.0776424e+03 -1.6062894e+03 - 9.6355989e+02 -5.0525638e+03 -1.6188222e+03 - 1.0316384e+03 -5.0250918e+03 -1.6321603e+03 - 1.1019566e+03 -4.9950393e+03 -1.6462961e+03 - 1.1747157e+03 -4.9621999e+03 -1.6612156e+03 - 1.2501262e+03 -4.9263469e+03 -1.6768962e+03 - 1.3284063e+03 -4.8872328e+03 -1.6933049e+03 - 1.4097794e+03 -4.8445898e+03 -1.7103963e+03 - 1.4944707e+03 -4.7981304e+03 -1.7281093e+03 - 1.5827013e+03 -4.7475502e+03 -1.7463648e+03 - 1.6746822e+03 -4.6925314e+03 -1.7650623e+03 - 1.7706049e+03 -4.6327485e+03 -1.7840770e+03 - 1.8706303e+03 -4.5678773e+03 -1.8032571e+03 - 1.9748756e+03 -4.4976050e+03 -1.8224214e+03 - 2.0833986e+03 -4.4216455e+03 -1.8413578e+03 - 2.1961805e+03 -4.3397560e+03 -1.8598235e+03 - 2.3131082e+03 -4.2517578e+03 -1.8775473e+03 - 2.4339572e+03 -4.1575580e+03 -1.8942340e+03 - 2.5583770e+03 -4.0571730e+03 -1.9095721e+03 - 2.6858811e+03 -3.9507489e+03 -1.9232446e+03 - 2.8158454e+03 -3.8385789e+03 -1.9349422e+03 - 2.9475148e+03 -3.7211125e+03 -1.9443797e+03 - 3.0800214e+03 -3.5989556e+03 -1.9513122e+03 - 3.2124132e+03 -3.4728586e+03 -1.9555512e+03 - 3.3436923e+03 -3.3436923e+03 -1.9569778e+03 - 3.4728586e+03 -3.2124132e+03 -1.9555512e+03 - 3.5989556e+03 -3.0800214e+03 -1.9513122e+03 - 3.7211125e+03 -2.9475148e+03 -1.9443797e+03 - 3.8385789e+03 -2.8158454e+03 -1.9349422e+03 - 3.9507489e+03 -2.6858811e+03 -1.9232446e+03 - 4.0571730e+03 -2.5583770e+03 -1.9095721e+03 - 4.1575580e+03 -2.4339572e+03 -1.8942340e+03 - 4.2517578e+03 -2.3131082e+03 -1.8775473e+03 - 4.3397560e+03 -2.1961805e+03 -1.8598235e+03 - 4.4216455e+03 -2.0833986e+03 -1.8413578e+03 - 4.4976050e+03 -1.9748756e+03 -1.8224214e+03 - 4.5678773e+03 -1.8706303e+03 -1.8032571e+03 - 4.6327485e+03 -1.7706049e+03 -1.7840770e+03 - 4.6925314e+03 -1.6746822e+03 -1.7650623e+03 - 4.7475502e+03 -1.5827013e+03 -1.7463648e+03 - 4.7981304e+03 -1.4944707e+03 -1.7281093e+03 - 4.8445898e+03 -1.4097794e+03 -1.7103963e+03 - 4.8872328e+03 -1.3284063e+03 -1.6933049e+03 - 4.9263469e+03 -1.2501262e+03 -1.6768962e+03 - 4.9621999e+03 -1.1747157e+03 -1.6612156e+03 - 4.9950393e+03 -1.1019566e+03 -1.6462961e+03 - 5.0250918e+03 -1.0316384e+03 -1.6321603e+03 - 5.0525638e+03 -9.6355989e+02 -1.6188222e+03 - 5.0776424e+03 -8.9753017e+02 -1.6062894e+03 - 5.1004960e+03 -8.3336887e+02 -1.5945643e+03 - 5.1212760e+03 -7.7090615e+02 -1.5836455e+03 - 5.1401176e+03 -7.0998241e+02 -1.5735286e+03 - 5.1571415e+03 -6.5044774e+02 -1.5642073e+03 - 5.1724547e+03 -5.9216132e+02 -1.5556740e+03 - 5.1861516e+03 -5.3499069e+02 -1.5479201e+03 - 5.1983153e+03 -4.7881103e+02 -1.5409371e+03 - 5.2090184e+03 -4.2350438e+02 -1.5347162e+03 - 5.2183237e+03 -3.6895887e+02 -1.5292490e+03 - 5.2262848e+03 -3.1506800e+02 -1.5245278e+03 - 5.2329474e+03 -2.6172988e+02 -1.5205455e+03 - 5.2383488e+03 -2.0884653e+02 -1.5172959e+03 - 5.2425193e+03 -1.5632320e+02 -1.5147740e+03 - 5.2454820e+03 -1.0406766e+02 -1.5129756e+03 - 5.2472531e+03 -5.1989616e+01 -1.5118978e+03 - 5.2478424e+03 -4.8134273e-09 -1.5115387e+03 - 5.2208915e+03 4.8134273e-09 -1.6288866e+03 - 5.2202888e+03 5.2232711e+01 -1.6292606e+03 - 5.2184775e+03 1.0455398e+02 -1.6303831e+03 - 5.2154478e+03 1.5705298e+02 -1.6322559e+03 - 5.2111832e+03 2.0982008e+02 -1.6348816e+03 - 5.2056607e+03 2.6294752e+02 -1.6382640e+03 - 5.1988498e+03 3.1652997e+02 -1.6424080e+03 - 5.1907129e+03 3.7066524e+02 -1.6473191e+03 - 5.1812044e+03 4.2545491e+02 -1.6530038e+03 - 5.1702704e+03 4.8100497e+02 -1.6594690e+03 - 5.1578481e+03 5.3742660e+02 -1.6667222e+03 - 5.1438650e+03 5.9483676e+02 -1.6747709e+03 - 5.1282383e+03 6.5335899e+02 -1.6836225e+03 - 5.1108738e+03 7.1312404e+02 -1.6932839e+03 - 5.0916654e+03 7.7427058e+02 -1.7037608e+03 - 5.0704936e+03 8.3694575e+02 -1.7150576e+03 - 5.0472245e+03 9.0130577e+02 -1.7271760e+03 - 5.0217092e+03 9.6751624e+02 -1.7401146e+03 - 4.9937821e+03 1.0357524e+03 -1.7538679e+03 - 4.9632602e+03 1.1061989e+03 -1.7684245e+03 - 4.9299422e+03 1.1790493e+03 -1.7837663e+03 - 4.8936082e+03 1.2545054e+03 -1.7998662e+03 - 4.8540189e+03 1.3327747e+03 -1.8166864e+03 - 4.8109170e+03 1.4140685e+03 -1.8341760e+03 - 4.7640276e+03 1.4985979e+03 -1.8522684e+03 - 4.7130618e+03 1.5865682e+03 -1.8708786e+03 - 4.6577196e+03 1.6781728e+03 -1.8899006e+03 - 4.5976970e+03 1.7735844e+03 -1.9092043e+03 - 4.5326933e+03 1.8729441e+03 -1.9286331e+03 - 4.4624223e+03 1.9763493e+03 -1.9480019e+03 - 4.3866260e+03 2.0838390e+03 -1.9670966e+03 - 4.3050903e+03 2.1953786e+03 -1.9856739e+03 - 4.2176645e+03 2.3108432e+03 -2.0034644e+03 - 4.1242808e+03 2.4300034e+03 -2.0201771e+03 - 4.0249745e+03 2.5525122e+03 -2.0355072e+03 - 3.9199033e+03 2.6778972e+03 -2.0491463e+03 - 3.8093605e+03 2.8055600e+03 -2.0607956e+03 - 3.6937837e+03 2.9347832e+03 -2.0701806e+03 - 3.5737528e+03 3.0647478e+03 -2.0770669e+03 - 3.4499788e+03 3.1945592e+03 -2.0812744e+03 - 3.3232818e+03 3.3232818e+03 -2.0826898e+03 - 3.1945592e+03 3.4499788e+03 -2.0812744e+03 - 3.0647478e+03 3.5737528e+03 -2.0770669e+03 - 2.9347832e+03 3.6937837e+03 -2.0701806e+03 - 2.8055600e+03 3.8093605e+03 -2.0607956e+03 - 2.6778972e+03 3.9199033e+03 -2.0491463e+03 - 2.5525122e+03 4.0249745e+03 -2.0355072e+03 - 2.4300034e+03 4.1242808e+03 -2.0201771e+03 - 2.3108432e+03 4.2176645e+03 -2.0034644e+03 - 2.1953786e+03 4.3050903e+03 -1.9856739e+03 - 2.0838390e+03 4.3866260e+03 -1.9670966e+03 - 1.9763493e+03 4.4624223e+03 -1.9480019e+03 - 1.8729441e+03 4.5326933e+03 -1.9286331e+03 - 1.7735844e+03 4.5976970e+03 -1.9092043e+03 - 1.6781728e+03 4.6577196e+03 -1.8899006e+03 - 1.5865682e+03 4.7130618e+03 -1.8708786e+03 - 1.4985979e+03 4.7640276e+03 -1.8522684e+03 - 1.4140685e+03 4.8109170e+03 -1.8341760e+03 - 1.3327747e+03 4.8540189e+03 -1.8166864e+03 - 1.2545054e+03 4.8936082e+03 -1.7998662e+03 - 1.1790493e+03 4.9299422e+03 -1.7837663e+03 - 1.1061989e+03 4.9632602e+03 -1.7684245e+03 - 1.0357524e+03 4.9937821e+03 -1.7538679e+03 - 9.6751624e+02 5.0217092e+03 -1.7401146e+03 - 9.0130577e+02 5.0472245e+03 -1.7271760e+03 - 8.3694575e+02 5.0704936e+03 -1.7150576e+03 - 7.7427058e+02 5.0916654e+03 -1.7037608e+03 - 7.1312404e+02 5.1108738e+03 -1.6932839e+03 - 6.5335899e+02 5.1282383e+03 -1.6836225e+03 - 5.9483676e+02 5.1438650e+03 -1.6747709e+03 - 5.3742660e+02 5.1578481e+03 -1.6667222e+03 - 4.8100497e+02 5.1702704e+03 -1.6594690e+03 - 4.2545491e+02 5.1812044e+03 -1.6530038e+03 - 3.7066524e+02 5.1907129e+03 -1.6473191e+03 - 3.1652997e+02 5.1988498e+03 -1.6424080e+03 - 2.6294752e+02 5.2056607e+03 -1.6382640e+03 - 2.0982008e+02 5.2111832e+03 -1.6348816e+03 - 1.5705298e+02 5.2154478e+03 -1.6322559e+03 - 1.0455398e+02 5.2184775e+03 -1.6303831e+03 - 5.2232711e+01 5.2202888e+03 -1.6292606e+03 - 0.0000000e+00 5.2208915e+03 -1.6288866e+03 - -5.2232711e+01 5.2202888e+03 -1.6292606e+03 - -1.0455398e+02 5.2184775e+03 -1.6303831e+03 - -1.5705298e+02 5.2154478e+03 -1.6322559e+03 - -2.0982008e+02 5.2111832e+03 -1.6348816e+03 - -2.6294752e+02 5.2056607e+03 -1.6382640e+03 - -3.1652997e+02 5.1988498e+03 -1.6424080e+03 - -3.7066524e+02 5.1907129e+03 -1.6473191e+03 - -4.2545491e+02 5.1812044e+03 -1.6530038e+03 - -4.8100497e+02 5.1702704e+03 -1.6594690e+03 - -5.3742660e+02 5.1578481e+03 -1.6667222e+03 - -5.9483676e+02 5.1438650e+03 -1.6747709e+03 - -6.5335899e+02 5.1282383e+03 -1.6836225e+03 - -7.1312404e+02 5.1108738e+03 -1.6932839e+03 - -7.7427058e+02 5.0916654e+03 -1.7037608e+03 - -8.3694575e+02 5.0704936e+03 -1.7150576e+03 - -9.0130577e+02 5.0472245e+03 -1.7271760e+03 - -9.6751624e+02 5.0217092e+03 -1.7401146e+03 - -1.0357524e+03 4.9937821e+03 -1.7538679e+03 - -1.1061989e+03 4.9632602e+03 -1.7684245e+03 - -1.1790493e+03 4.9299422e+03 -1.7837663e+03 - -1.2545054e+03 4.8936082e+03 -1.7998662e+03 - -1.3327747e+03 4.8540189e+03 -1.8166864e+03 - -1.4140685e+03 4.8109170e+03 -1.8341760e+03 - -1.4985979e+03 4.7640276e+03 -1.8522684e+03 - -1.5865682e+03 4.7130618e+03 -1.8708786e+03 - -1.6781728e+03 4.6577196e+03 -1.8899006e+03 - -1.7735844e+03 4.5976970e+03 -1.9092043e+03 - -1.8729441e+03 4.5326933e+03 -1.9286331e+03 - -1.9763493e+03 4.4624223e+03 -1.9480019e+03 - -2.0838390e+03 4.3866260e+03 -1.9670966e+03 - -2.1953786e+03 4.3050903e+03 -1.9856739e+03 - -2.3108432e+03 4.2176645e+03 -2.0034644e+03 - -2.4300034e+03 4.1242808e+03 -2.0201771e+03 - -2.5525122e+03 4.0249745e+03 -2.0355072e+03 - -2.6778972e+03 3.9199033e+03 -2.0491463e+03 - -2.8055600e+03 3.8093605e+03 -2.0607956e+03 - -2.9347832e+03 3.6937837e+03 -2.0701806e+03 - -3.0647478e+03 3.5737528e+03 -2.0770669e+03 - -3.1945592e+03 3.4499788e+03 -2.0812744e+03 - -3.3232818e+03 3.3232818e+03 -2.0826898e+03 - -3.4499788e+03 3.1945592e+03 -2.0812744e+03 - -3.5737528e+03 3.0647478e+03 -2.0770669e+03 - -3.6937837e+03 2.9347832e+03 -2.0701806e+03 - -3.8093605e+03 2.8055600e+03 -2.0607956e+03 - -3.9199033e+03 2.6778972e+03 -2.0491463e+03 - -4.0249745e+03 2.5525122e+03 -2.0355072e+03 - -4.1242808e+03 2.4300034e+03 -2.0201771e+03 - -4.2176645e+03 2.3108432e+03 -2.0034644e+03 - -4.3050903e+03 2.1953786e+03 -1.9856739e+03 - -4.3866260e+03 2.0838390e+03 -1.9670966e+03 - -4.4624223e+03 1.9763493e+03 -1.9480019e+03 - -4.5326933e+03 1.8729441e+03 -1.9286331e+03 - -4.5976970e+03 1.7735844e+03 -1.9092043e+03 - -4.6577196e+03 1.6781728e+03 -1.8899006e+03 - -4.7130618e+03 1.5865682e+03 -1.8708786e+03 - -4.7640276e+03 1.4985979e+03 -1.8522684e+03 - -4.8109170e+03 1.4140685e+03 -1.8341760e+03 - -4.8540189e+03 1.3327747e+03 -1.8166864e+03 - -4.8936082e+03 1.2545054e+03 -1.7998662e+03 - -4.9299422e+03 1.1790493e+03 -1.7837663e+03 - -4.9632602e+03 1.1061989e+03 -1.7684245e+03 - -4.9937821e+03 1.0357524e+03 -1.7538679e+03 - -5.0217092e+03 9.6751624e+02 -1.7401146e+03 - -5.0472245e+03 9.0130577e+02 -1.7271760e+03 - -5.0704936e+03 8.3694575e+02 -1.7150576e+03 - -5.0916654e+03 7.7427058e+02 -1.7037608e+03 - -5.1108738e+03 7.1312404e+02 -1.6932839e+03 - -5.1282383e+03 6.5335899e+02 -1.6836225e+03 - -5.1438650e+03 5.9483676e+02 -1.6747709e+03 - -5.1578481e+03 5.3742660e+02 -1.6667222e+03 - -5.1702704e+03 4.8100497e+02 -1.6594690e+03 - -5.1812044e+03 4.2545491e+02 -1.6530038e+03 - -5.1907129e+03 3.7066524e+02 -1.6473191e+03 - -5.1988498e+03 3.1652997e+02 -1.6424080e+03 - -5.2056607e+03 2.6294752e+02 -1.6382640e+03 - -5.2111832e+03 2.0982008e+02 -1.6348816e+03 - -5.2154478e+03 1.5705298e+02 -1.6322559e+03 - -5.2184775e+03 1.0455398e+02 -1.6303831e+03 - -5.2202888e+03 5.2232711e+01 -1.6292606e+03 - -5.2208915e+03 4.8134273e-09 -1.6288866e+03 - -5.2202888e+03 -5.2232711e+01 -1.6292606e+03 - -5.2184775e+03 -1.0455398e+02 -1.6303831e+03 - -5.2154478e+03 -1.5705298e+02 -1.6322559e+03 - -5.2111832e+03 -2.0982008e+02 -1.6348816e+03 - -5.2056607e+03 -2.6294752e+02 -1.6382640e+03 - -5.1988498e+03 -3.1652997e+02 -1.6424080e+03 - -5.1907129e+03 -3.7066524e+02 -1.6473191e+03 - -5.1812044e+03 -4.2545491e+02 -1.6530038e+03 - -5.1702704e+03 -4.8100497e+02 -1.6594690e+03 - -5.1578481e+03 -5.3742660e+02 -1.6667222e+03 - -5.1438650e+03 -5.9483676e+02 -1.6747709e+03 - -5.1282383e+03 -6.5335899e+02 -1.6836225e+03 - -5.1108738e+03 -7.1312404e+02 -1.6932839e+03 - -5.0916654e+03 -7.7427058e+02 -1.7037608e+03 - -5.0704936e+03 -8.3694575e+02 -1.7150576e+03 - -5.0472245e+03 -9.0130577e+02 -1.7271760e+03 - -5.0217092e+03 -9.6751624e+02 -1.7401146e+03 - -4.9937821e+03 -1.0357524e+03 -1.7538679e+03 - -4.9632602e+03 -1.1061989e+03 -1.7684245e+03 - -4.9299422e+03 -1.1790493e+03 -1.7837663e+03 - -4.8936082e+03 -1.2545054e+03 -1.7998662e+03 - -4.8540189e+03 -1.3327747e+03 -1.8166864e+03 - -4.8109170e+03 -1.4140685e+03 -1.8341760e+03 - -4.7640276e+03 -1.4985979e+03 -1.8522684e+03 - -4.7130618e+03 -1.5865682e+03 -1.8708786e+03 - -4.6577196e+03 -1.6781728e+03 -1.8899006e+03 - -4.5976970e+03 -1.7735844e+03 -1.9092043e+03 - -4.5326933e+03 -1.8729441e+03 -1.9286331e+03 - -4.4624223e+03 -1.9763493e+03 -1.9480019e+03 - -4.3866260e+03 -2.0838390e+03 -1.9670966e+03 - -4.3050903e+03 -2.1953786e+03 -1.9856739e+03 - -4.2176645e+03 -2.3108432e+03 -2.0034644e+03 - -4.1242808e+03 -2.4300034e+03 -2.0201771e+03 - -4.0249745e+03 -2.5525122e+03 -2.0355072e+03 - -3.9199033e+03 -2.6778972e+03 -2.0491463e+03 - -3.8093605e+03 -2.8055600e+03 -2.0607956e+03 - -3.6937837e+03 -2.9347832e+03 -2.0701806e+03 - -3.5737528e+03 -3.0647478e+03 -2.0770669e+03 - -3.4499788e+03 -3.1945592e+03 -2.0812744e+03 - -3.3232818e+03 -3.3232818e+03 -2.0826898e+03 - -3.1945592e+03 -3.4499788e+03 -2.0812744e+03 - -3.0647478e+03 -3.5737528e+03 -2.0770669e+03 - -2.9347832e+03 -3.6937837e+03 -2.0701806e+03 - -2.8055600e+03 -3.8093605e+03 -2.0607956e+03 - -2.6778972e+03 -3.9199033e+03 -2.0491463e+03 - -2.5525122e+03 -4.0249745e+03 -2.0355072e+03 - -2.4300034e+03 -4.1242808e+03 -2.0201771e+03 - -2.3108432e+03 -4.2176645e+03 -2.0034644e+03 - -2.1953786e+03 -4.3050903e+03 -1.9856739e+03 - -2.0838390e+03 -4.3866260e+03 -1.9670966e+03 - -1.9763493e+03 -4.4624223e+03 -1.9480019e+03 - -1.8729441e+03 -4.5326933e+03 -1.9286331e+03 - -1.7735844e+03 -4.5976970e+03 -1.9092043e+03 - -1.6781728e+03 -4.6577196e+03 -1.8899006e+03 - -1.5865682e+03 -4.7130618e+03 -1.8708786e+03 - -1.4985979e+03 -4.7640276e+03 -1.8522684e+03 - -1.4140685e+03 -4.8109170e+03 -1.8341760e+03 - -1.3327747e+03 -4.8540189e+03 -1.8166864e+03 - -1.2545054e+03 -4.8936082e+03 -1.7998662e+03 - -1.1790493e+03 -4.9299422e+03 -1.7837663e+03 - -1.1061989e+03 -4.9632602e+03 -1.7684245e+03 - -1.0357524e+03 -4.9937821e+03 -1.7538679e+03 - -9.6751624e+02 -5.0217092e+03 -1.7401146e+03 - -9.0130577e+02 -5.0472245e+03 -1.7271760e+03 - -8.3694575e+02 -5.0704936e+03 -1.7150576e+03 - -7.7427058e+02 -5.0916654e+03 -1.7037608e+03 - -7.1312404e+02 -5.1108738e+03 -1.6932839e+03 - -6.5335899e+02 -5.1282383e+03 -1.6836225e+03 - -5.9483676e+02 -5.1438650e+03 -1.6747709e+03 - -5.3742660e+02 -5.1578481e+03 -1.6667222e+03 - -4.8100497e+02 -5.1702704e+03 -1.6594690e+03 - -4.2545491e+02 -5.1812044e+03 -1.6530038e+03 - -3.7066524e+02 -5.1907129e+03 -1.6473191e+03 - -3.1652997e+02 -5.1988498e+03 -1.6424080e+03 - -2.6294752e+02 -5.2056607e+03 -1.6382640e+03 - -2.0982008e+02 -5.2111832e+03 -1.6348816e+03 - -1.5705298e+02 -5.2154478e+03 -1.6322559e+03 - -1.0455398e+02 -5.2184775e+03 -1.6303831e+03 - -5.2232711e+01 -5.2202888e+03 -1.6292606e+03 - 4.8134273e-09 -5.2208915e+03 -1.6288866e+03 - 5.2232711e+01 -5.2202888e+03 -1.6292606e+03 - 1.0455398e+02 -5.2184775e+03 -1.6303831e+03 - 1.5705298e+02 -5.2154478e+03 -1.6322559e+03 - 2.0982008e+02 -5.2111832e+03 -1.6348816e+03 - 2.6294752e+02 -5.2056607e+03 -1.6382640e+03 - 3.1652997e+02 -5.1988498e+03 -1.6424080e+03 - 3.7066524e+02 -5.1907129e+03 -1.6473191e+03 - 4.2545491e+02 -5.1812044e+03 -1.6530038e+03 - 4.8100497e+02 -5.1702704e+03 -1.6594690e+03 - 5.3742660e+02 -5.1578481e+03 -1.6667222e+03 - 5.9483676e+02 -5.1438650e+03 -1.6747709e+03 - 6.5335899e+02 -5.1282383e+03 -1.6836225e+03 - 7.1312404e+02 -5.1108738e+03 -1.6932839e+03 - 7.7427058e+02 -5.0916654e+03 -1.7037608e+03 - 8.3694575e+02 -5.0704936e+03 -1.7150576e+03 - 9.0130577e+02 -5.0472245e+03 -1.7271760e+03 - 9.6751624e+02 -5.0217092e+03 -1.7401146e+03 - 1.0357524e+03 -4.9937821e+03 -1.7538679e+03 - 1.1061989e+03 -4.9632602e+03 -1.7684245e+03 - 1.1790493e+03 -4.9299422e+03 -1.7837663e+03 - 1.2545054e+03 -4.8936082e+03 -1.7998662e+03 - 1.3327747e+03 -4.8540189e+03 -1.8166864e+03 - 1.4140685e+03 -4.8109170e+03 -1.8341760e+03 - 1.4985979e+03 -4.7640276e+03 -1.8522684e+03 - 1.5865682e+03 -4.7130618e+03 -1.8708786e+03 - 1.6781728e+03 -4.6577196e+03 -1.8899006e+03 - 1.7735844e+03 -4.5976970e+03 -1.9092043e+03 - 1.8729441e+03 -4.5326933e+03 -1.9286331e+03 - 1.9763493e+03 -4.4624223e+03 -1.9480019e+03 - 2.0838390e+03 -4.3866260e+03 -1.9670966e+03 - 2.1953786e+03 -4.3050903e+03 -1.9856739e+03 - 2.3108432e+03 -4.2176645e+03 -2.0034644e+03 - 2.4300034e+03 -4.1242808e+03 -2.0201771e+03 - 2.5525122e+03 -4.0249745e+03 -2.0355072e+03 - 2.6778972e+03 -3.9199033e+03 -2.0491463e+03 - 2.8055600e+03 -3.8093605e+03 -2.0607956e+03 - 2.9347832e+03 -3.6937837e+03 -2.0701806e+03 - 3.0647478e+03 -3.5737528e+03 -2.0770669e+03 - 3.1945592e+03 -3.4499788e+03 -2.0812744e+03 - 3.3232818e+03 -3.3232818e+03 -2.0826898e+03 - 3.4499788e+03 -3.1945592e+03 -2.0812744e+03 - 3.5737528e+03 -3.0647478e+03 -2.0770669e+03 - 3.6937837e+03 -2.9347832e+03 -2.0701806e+03 - 3.8093605e+03 -2.8055600e+03 -2.0607956e+03 - 3.9199033e+03 -2.6778972e+03 -2.0491463e+03 - 4.0249745e+03 -2.5525122e+03 -2.0355072e+03 - 4.1242808e+03 -2.4300034e+03 -2.0201771e+03 - 4.2176645e+03 -2.3108432e+03 -2.0034644e+03 - 4.3050903e+03 -2.1953786e+03 -1.9856739e+03 - 4.3866260e+03 -2.0838390e+03 -1.9670966e+03 - 4.4624223e+03 -1.9763493e+03 -1.9480019e+03 - 4.5326933e+03 -1.8729441e+03 -1.9286331e+03 - 4.5976970e+03 -1.7735844e+03 -1.9092043e+03 - 4.6577196e+03 -1.6781728e+03 -1.8899006e+03 - 4.7130618e+03 -1.5865682e+03 -1.8708786e+03 - 4.7640276e+03 -1.4985979e+03 -1.8522684e+03 - 4.8109170e+03 -1.4140685e+03 -1.8341760e+03 - 4.8540189e+03 -1.3327747e+03 -1.8166864e+03 - 4.8936082e+03 -1.2545054e+03 -1.7998662e+03 - 4.9299422e+03 -1.1790493e+03 -1.7837663e+03 - 4.9632602e+03 -1.1061989e+03 -1.7684245e+03 - 4.9937821e+03 -1.0357524e+03 -1.7538679e+03 - 5.0217092e+03 -9.6751624e+02 -1.7401146e+03 - 5.0472245e+03 -9.0130577e+02 -1.7271760e+03 - 5.0704936e+03 -8.3694575e+02 -1.7150576e+03 - 5.0916654e+03 -7.7427058e+02 -1.7037608e+03 - 5.1108738e+03 -7.1312404e+02 -1.6932839e+03 - 5.1282383e+03 -6.5335899e+02 -1.6836225e+03 - 5.1438650e+03 -5.9483676e+02 -1.6747709e+03 - 5.1578481e+03 -5.3742660e+02 -1.6667222e+03 - 5.1702704e+03 -4.8100497e+02 -1.6594690e+03 - 5.1812044e+03 -4.2545491e+02 -1.6530038e+03 - 5.1907129e+03 -3.7066524e+02 -1.6473191e+03 - 5.1988498e+03 -3.1652997e+02 -1.6424080e+03 - 5.2056607e+03 -2.6294752e+02 -1.6382640e+03 - 5.2111832e+03 -2.0982008e+02 -1.6348816e+03 - 5.2154478e+03 -1.5705298e+02 -1.6322559e+03 - 5.2184775e+03 -1.0455398e+02 -1.6303831e+03 - 5.2202888e+03 -5.2232711e+01 -1.6292606e+03 - 5.2208915e+03 -1.4440282e-08 -1.6288866e+03 - 5.1925346e+03 4.8134273e-09 -1.7421185e+03 - 5.1919185e+03 5.2483969e+01 -1.7425044e+03 - 5.1900670e+03 1.0505656e+02 -1.7436625e+03 - 5.1869704e+03 1.5780698e+02 -1.7455945e+03 - 5.1826120e+03 2.1082561e+02 -1.7483027e+03 - 5.1769687e+03 2.6420461e+02 -1.7517907e+03 - 5.1700100e+03 3.1803852e+02 -1.7560626e+03 - 5.1616981e+03 3.7242487e+02 -1.7611234e+03 - 5.1519875e+03 4.2746481e+02 -1.7669789e+03 - 5.1408243e+03 4.8326376e+02 -1.7736350e+03 - 5.1281456e+03 5.3993202e+02 -1.7810980e+03 - 5.1138794e+03 5.9758546e+02 -1.7893742e+03 - 5.0979431e+03 6.5634616e+02 -1.7984695e+03 - 5.0802434e+03 7.1634301e+02 -1.8083890e+03 - 5.0606748e+03 7.7771229e+02 -1.8191364e+03 - 5.0391194e+03 8.4059823e+02 -1.8307136e+03 - 5.0154453e+03 9.0515338e+02 -1.8431198e+03 - 4.9895060e+03 9.7153889e+02 -1.8563506e+03 - 4.9611393e+03 1.0399246e+03 -1.8703971e+03 - 4.9301667e+03 1.1104886e+03 -1.8852444e+03 - 4.8963924e+03 1.1834169e+03 -1.9008700e+03 - 4.8596037e+03 1.2589019e+03 -1.9172427e+03 - 4.8195700e+03 1.3371405e+03 -1.9343199e+03 - 4.7760447e+03 1.4183318e+03 -1.9520457e+03 - 4.7287663e+03 1.5026726e+03 -1.9703487e+03 - 4.6774609e+03 1.5903528e+03 -1.9891391e+03 - 4.6218472e+03 1.6815486e+03 -2.0083062e+03 - 4.5616417e+03 1.7764140e+03 -2.0277159e+03 - 4.4965671e+03 1.8750714e+03 -2.0472088e+03 - 4.4263629e+03 1.9775993e+03 -2.0665981e+03 - 4.3507978e+03 2.0840193e+03 -2.0856696e+03 - 4.2696852e+03 2.1942821e+03 -2.1041824e+03 - 4.1828999e+03 2.3082527e+03 -2.1218717e+03 - 4.0903969e+03 2.4256981e+03 -2.1384537e+03 - 3.9922287e+03 2.5462758e+03 -2.1536328e+03 - 3.8885616e+03 2.6695282e+03 -2.1671124e+03 - 3.7796881e+03 2.7948825e+03 -2.1786065e+03 - 3.6660322e+03 2.9216581e+03 -2.1878537e+03 - 3.5481480e+03 3.0490827e+03 -2.1946314e+03 - 3.4267084e+03 3.1763168e+03 -2.1987695e+03 - 3.3024843e+03 3.3024843e+03 -2.2001610e+03 - 3.1763168e+03 3.4267084e+03 -2.1987695e+03 - 3.0490827e+03 3.5481480e+03 -2.1946314e+03 - 2.9216581e+03 3.6660322e+03 -2.1878537e+03 - 2.7948825e+03 3.7796881e+03 -2.1786065e+03 - 2.6695282e+03 3.8885616e+03 -2.1671124e+03 - 2.5462758e+03 3.9922287e+03 -2.1536328e+03 - 2.4256981e+03 4.0903969e+03 -2.1384537e+03 - 2.3082527e+03 4.1828999e+03 -2.1218717e+03 - 2.1942821e+03 4.2696852e+03 -2.1041824e+03 - 2.0840193e+03 4.3507978e+03 -2.0856696e+03 - 1.9775993e+03 4.4263629e+03 -2.0665981e+03 - 1.8750714e+03 4.4965671e+03 -2.0472088e+03 - 1.7764140e+03 4.5616417e+03 -2.0277159e+03 - 1.6815486e+03 4.6218472e+03 -2.0083062e+03 - 1.5903528e+03 4.6774609e+03 -1.9891391e+03 - 1.5026726e+03 4.7287663e+03 -1.9703487e+03 - 1.4183318e+03 4.7760447e+03 -1.9520457e+03 - 1.3371405e+03 4.8195700e+03 -1.9343199e+03 - 1.2589019e+03 4.8596037e+03 -1.9172427e+03 - 1.1834169e+03 4.8963924e+03 -1.9008700e+03 - 1.1104886e+03 4.9301667e+03 -1.8852444e+03 - 1.0399246e+03 4.9611393e+03 -1.8703971e+03 - 9.7153889e+02 4.9895060e+03 -1.8563506e+03 - 9.0515338e+02 5.0154453e+03 -1.8431198e+03 - 8.4059823e+02 5.0391194e+03 -1.8307136e+03 - 7.7771229e+02 5.0606748e+03 -1.8191364e+03 - 7.1634301e+02 5.0802434e+03 -1.8083890e+03 - 6.5634616e+02 5.0979431e+03 -1.7984695e+03 - 5.9758546e+02 5.1138794e+03 -1.7893742e+03 - 5.3993202e+02 5.1281456e+03 -1.7810980e+03 - 4.8326376e+02 5.1408243e+03 -1.7736350e+03 - 4.2746481e+02 5.1519875e+03 -1.7669789e+03 - 3.7242487e+02 5.1616981e+03 -1.7611234e+03 - 3.1803852e+02 5.1700100e+03 -1.7560626e+03 - 2.6420461e+02 5.1769687e+03 -1.7517907e+03 - 2.1082561e+02 5.1826120e+03 -1.7483027e+03 - 1.5780698e+02 5.1869704e+03 -1.7455945e+03 - 1.0505656e+02 5.1900670e+03 -1.7436625e+03 - 5.2483969e+01 5.1919185e+03 -1.7425044e+03 - -4.8134273e-09 5.1925346e+03 -1.7421185e+03 - -5.2483969e+01 5.1919185e+03 -1.7425044e+03 - -1.0505656e+02 5.1900670e+03 -1.7436625e+03 - -1.5780698e+02 5.1869704e+03 -1.7455945e+03 - -2.1082561e+02 5.1826120e+03 -1.7483027e+03 - -2.6420461e+02 5.1769687e+03 -1.7517907e+03 - -3.1803852e+02 5.1700100e+03 -1.7560626e+03 - -3.7242487e+02 5.1616981e+03 -1.7611234e+03 - -4.2746481e+02 5.1519875e+03 -1.7669789e+03 - -4.8326376e+02 5.1408243e+03 -1.7736350e+03 - -5.3993202e+02 5.1281456e+03 -1.7810980e+03 - -5.9758546e+02 5.1138794e+03 -1.7893742e+03 - -6.5634616e+02 5.0979431e+03 -1.7984695e+03 - -7.1634301e+02 5.0802434e+03 -1.8083890e+03 - -7.7771229e+02 5.0606748e+03 -1.8191364e+03 - -8.4059823e+02 5.0391194e+03 -1.8307136e+03 - -9.0515338e+02 5.0154453e+03 -1.8431198e+03 - -9.7153889e+02 4.9895060e+03 -1.8563506e+03 - -1.0399246e+03 4.9611393e+03 -1.8703971e+03 - -1.1104886e+03 4.9301667e+03 -1.8852444e+03 - -1.1834169e+03 4.8963924e+03 -1.9008700e+03 - -1.2589019e+03 4.8596037e+03 -1.9172427e+03 - -1.3371405e+03 4.8195700e+03 -1.9343199e+03 - -1.4183318e+03 4.7760447e+03 -1.9520457e+03 - -1.5026726e+03 4.7287663e+03 -1.9703487e+03 - -1.5903528e+03 4.6774609e+03 -1.9891391e+03 - -1.6815486e+03 4.6218472e+03 -2.0083062e+03 - -1.7764140e+03 4.5616417e+03 -2.0277159e+03 - -1.8750714e+03 4.4965671e+03 -2.0472088e+03 - -1.9775993e+03 4.4263629e+03 -2.0665981e+03 - -2.0840193e+03 4.3507978e+03 -2.0856696e+03 - -2.1942821e+03 4.2696852e+03 -2.1041824e+03 - -2.3082527e+03 4.1828999e+03 -2.1218717e+03 - -2.4256981e+03 4.0903969e+03 -2.1384537e+03 - -2.5462758e+03 3.9922287e+03 -2.1536328e+03 - -2.6695282e+03 3.8885616e+03 -2.1671124e+03 - -2.7948825e+03 3.7796881e+03 -2.1786065e+03 - -2.9216581e+03 3.6660322e+03 -2.1878537e+03 - -3.0490827e+03 3.5481480e+03 -2.1946314e+03 - -3.1763168e+03 3.4267084e+03 -2.1987695e+03 - -3.3024843e+03 3.3024843e+03 -2.2001610e+03 - -3.4267084e+03 3.1763168e+03 -2.1987695e+03 - -3.5481480e+03 3.0490827e+03 -2.1946314e+03 - -3.6660322e+03 2.9216581e+03 -2.1878537e+03 - -3.7796881e+03 2.7948825e+03 -2.1786065e+03 - -3.8885616e+03 2.6695282e+03 -2.1671124e+03 - -3.9922287e+03 2.5462758e+03 -2.1536328e+03 - -4.0903969e+03 2.4256981e+03 -2.1384537e+03 - -4.1828999e+03 2.3082527e+03 -2.1218717e+03 - -4.2696852e+03 2.1942821e+03 -2.1041824e+03 - -4.3507978e+03 2.0840193e+03 -2.0856696e+03 - -4.4263629e+03 1.9775993e+03 -2.0665981e+03 - -4.4965671e+03 1.8750714e+03 -2.0472088e+03 - -4.5616417e+03 1.7764140e+03 -2.0277159e+03 - -4.6218472e+03 1.6815486e+03 -2.0083062e+03 - -4.6774609e+03 1.5903528e+03 -1.9891391e+03 - -4.7287663e+03 1.5026726e+03 -1.9703487e+03 - -4.7760447e+03 1.4183318e+03 -1.9520457e+03 - -4.8195700e+03 1.3371405e+03 -1.9343199e+03 - -4.8596037e+03 1.2589019e+03 -1.9172427e+03 - -4.8963924e+03 1.1834169e+03 -1.9008700e+03 - -4.9301667e+03 1.1104886e+03 -1.8852444e+03 - -4.9611393e+03 1.0399246e+03 -1.8703971e+03 - -4.9895060e+03 9.7153889e+02 -1.8563506e+03 - -5.0154453e+03 9.0515338e+02 -1.8431198e+03 - -5.0391194e+03 8.4059823e+02 -1.8307136e+03 - -5.0606748e+03 7.7771229e+02 -1.8191364e+03 - -5.0802434e+03 7.1634301e+02 -1.8083890e+03 - -5.0979431e+03 6.5634616e+02 -1.7984695e+03 - -5.1138794e+03 5.9758546e+02 -1.7893742e+03 - -5.1281456e+03 5.3993202e+02 -1.7810980e+03 - -5.1408243e+03 4.8326376e+02 -1.7736350e+03 - -5.1519875e+03 4.2746481e+02 -1.7669789e+03 - -5.1616981e+03 3.7242487e+02 -1.7611234e+03 - -5.1700100e+03 3.1803852e+02 -1.7560626e+03 - -5.1769687e+03 2.6420461e+02 -1.7517907e+03 - -5.1826120e+03 2.1082561e+02 -1.7483027e+03 - -5.1869704e+03 1.5780698e+02 -1.7455945e+03 - -5.1900670e+03 1.0505656e+02 -1.7436625e+03 - -5.1919185e+03 5.2483969e+01 -1.7425044e+03 - -5.1925346e+03 0.0000000e+00 -1.7421185e+03 - -5.1919185e+03 -5.2483969e+01 -1.7425044e+03 - -5.1900670e+03 -1.0505656e+02 -1.7436625e+03 - -5.1869704e+03 -1.5780698e+02 -1.7455945e+03 - -5.1826120e+03 -2.1082561e+02 -1.7483027e+03 - -5.1769687e+03 -2.6420461e+02 -1.7517907e+03 - -5.1700100e+03 -3.1803852e+02 -1.7560626e+03 - -5.1616981e+03 -3.7242487e+02 -1.7611234e+03 - -5.1519875e+03 -4.2746481e+02 -1.7669789e+03 - -5.1408243e+03 -4.8326376e+02 -1.7736350e+03 - -5.1281456e+03 -5.3993202e+02 -1.7810980e+03 - -5.1138794e+03 -5.9758546e+02 -1.7893742e+03 - -5.0979431e+03 -6.5634616e+02 -1.7984695e+03 - -5.0802434e+03 -7.1634301e+02 -1.8083890e+03 - -5.0606748e+03 -7.7771229e+02 -1.8191364e+03 - -5.0391194e+03 -8.4059823e+02 -1.8307136e+03 - -5.0154453e+03 -9.0515338e+02 -1.8431198e+03 - -4.9895060e+03 -9.7153889e+02 -1.8563506e+03 - -4.9611393e+03 -1.0399246e+03 -1.8703971e+03 - -4.9301667e+03 -1.1104886e+03 -1.8852444e+03 - -4.8963924e+03 -1.1834169e+03 -1.9008700e+03 - -4.8596037e+03 -1.2589019e+03 -1.9172427e+03 - -4.8195700e+03 -1.3371405e+03 -1.9343199e+03 - -4.7760447e+03 -1.4183318e+03 -1.9520457e+03 - -4.7287663e+03 -1.5026726e+03 -1.9703487e+03 - -4.6774609e+03 -1.5903528e+03 -1.9891391e+03 - -4.6218472e+03 -1.6815486e+03 -2.0083062e+03 - -4.5616417e+03 -1.7764140e+03 -2.0277159e+03 - -4.4965671e+03 -1.8750714e+03 -2.0472088e+03 - -4.4263629e+03 -1.9775993e+03 -2.0665981e+03 - -4.3507978e+03 -2.0840193e+03 -2.0856696e+03 - -4.2696852e+03 -2.1942821e+03 -2.1041824e+03 - -4.1828999e+03 -2.3082527e+03 -2.1218717e+03 - -4.0903969e+03 -2.4256981e+03 -2.1384537e+03 - -3.9922287e+03 -2.5462758e+03 -2.1536328e+03 - -3.8885616e+03 -2.6695282e+03 -2.1671124e+03 - -3.7796881e+03 -2.7948825e+03 -2.1786065e+03 - -3.6660322e+03 -2.9216581e+03 -2.1878537e+03 - -3.5481480e+03 -3.0490827e+03 -2.1946314e+03 - -3.4267084e+03 -3.1763168e+03 -2.1987695e+03 - -3.3024843e+03 -3.3024843e+03 -2.2001610e+03 - -3.1763168e+03 -3.4267084e+03 -2.1987695e+03 - -3.0490827e+03 -3.5481480e+03 -2.1946314e+03 - -2.9216581e+03 -3.6660322e+03 -2.1878537e+03 - -2.7948825e+03 -3.7796881e+03 -2.1786065e+03 - -2.6695282e+03 -3.8885616e+03 -2.1671124e+03 - -2.5462758e+03 -3.9922287e+03 -2.1536328e+03 - -2.4256981e+03 -4.0903969e+03 -2.1384537e+03 - -2.3082527e+03 -4.1828999e+03 -2.1218717e+03 - -2.1942821e+03 -4.2696852e+03 -2.1041824e+03 - -2.0840193e+03 -4.3507978e+03 -2.0856696e+03 - -1.9775993e+03 -4.4263629e+03 -2.0665981e+03 - -1.8750714e+03 -4.4965671e+03 -2.0472088e+03 - -1.7764140e+03 -4.5616417e+03 -2.0277159e+03 - -1.6815486e+03 -4.6218472e+03 -2.0083062e+03 - -1.5903528e+03 -4.6774609e+03 -1.9891391e+03 - -1.5026726e+03 -4.7287663e+03 -1.9703487e+03 - -1.4183318e+03 -4.7760447e+03 -1.9520457e+03 - -1.3371405e+03 -4.8195700e+03 -1.9343199e+03 - -1.2589019e+03 -4.8596037e+03 -1.9172427e+03 - -1.1834169e+03 -4.8963924e+03 -1.9008700e+03 - -1.1104886e+03 -4.9301667e+03 -1.8852444e+03 - -1.0399246e+03 -4.9611393e+03 -1.8703971e+03 - -9.7153889e+02 -4.9895060e+03 -1.8563506e+03 - -9.0515338e+02 -5.0154453e+03 -1.8431198e+03 - -8.4059823e+02 -5.0391194e+03 -1.8307136e+03 - -7.7771229e+02 -5.0606748e+03 -1.8191364e+03 - -7.1634301e+02 -5.0802434e+03 -1.8083890e+03 - -6.5634616e+02 -5.0979431e+03 -1.7984695e+03 - -5.9758546e+02 -5.1138794e+03 -1.7893742e+03 - -5.3993202e+02 -5.1281456e+03 -1.7810980e+03 - -4.8326376e+02 -5.1408243e+03 -1.7736350e+03 - -4.2746481e+02 -5.1519875e+03 -1.7669789e+03 - -3.7242487e+02 -5.1616981e+03 -1.7611234e+03 - -3.1803852e+02 -5.1700100e+03 -1.7560626e+03 - -2.6420461e+02 -5.1769687e+03 -1.7517907e+03 - -2.1082561e+02 -5.1826120e+03 -1.7483027e+03 - -1.5780698e+02 -5.1869704e+03 -1.7455945e+03 - -1.0505656e+02 -5.1900670e+03 -1.7436625e+03 - -5.2483969e+01 -5.1919185e+03 -1.7425044e+03 - -9.6268545e-09 -5.1925346e+03 -1.7421185e+03 - 5.2483969e+01 -5.1919185e+03 -1.7425044e+03 - 1.0505656e+02 -5.1900670e+03 -1.7436625e+03 - 1.5780698e+02 -5.1869704e+03 -1.7455945e+03 - 2.1082561e+02 -5.1826120e+03 -1.7483027e+03 - 2.6420461e+02 -5.1769687e+03 -1.7517907e+03 - 3.1803852e+02 -5.1700100e+03 -1.7560626e+03 - 3.7242487e+02 -5.1616981e+03 -1.7611234e+03 - 4.2746481e+02 -5.1519875e+03 -1.7669789e+03 - 4.8326376e+02 -5.1408243e+03 -1.7736350e+03 - 5.3993202e+02 -5.1281456e+03 -1.7810980e+03 - 5.9758546e+02 -5.1138794e+03 -1.7893742e+03 - 6.5634616e+02 -5.0979431e+03 -1.7984695e+03 - 7.1634301e+02 -5.0802434e+03 -1.8083890e+03 - 7.7771229e+02 -5.0606748e+03 -1.8191364e+03 - 8.4059823e+02 -5.0391194e+03 -1.8307136e+03 - 9.0515338e+02 -5.0154453e+03 -1.8431198e+03 - 9.7153889e+02 -4.9895060e+03 -1.8563506e+03 - 1.0399246e+03 -4.9611393e+03 -1.8703971e+03 - 1.1104886e+03 -4.9301667e+03 -1.8852444e+03 - 1.1834169e+03 -4.8963924e+03 -1.9008700e+03 - 1.2589019e+03 -4.8596037e+03 -1.9172427e+03 - 1.3371405e+03 -4.8195700e+03 -1.9343199e+03 - 1.4183318e+03 -4.7760447e+03 -1.9520457e+03 - 1.5026726e+03 -4.7287663e+03 -1.9703487e+03 - 1.5903528e+03 -4.6774609e+03 -1.9891391e+03 - 1.6815486e+03 -4.6218472e+03 -2.0083062e+03 - 1.7764140e+03 -4.5616417e+03 -2.0277159e+03 - 1.8750714e+03 -4.4965671e+03 -2.0472088e+03 - 1.9775993e+03 -4.4263629e+03 -2.0665981e+03 - 2.0840193e+03 -4.3507978e+03 -2.0856696e+03 - 2.1942821e+03 -4.2696852e+03 -2.1041824e+03 - 2.3082527e+03 -4.1828999e+03 -2.1218717e+03 - 2.4256981e+03 -4.0903969e+03 -2.1384537e+03 - 2.5462758e+03 -3.9922287e+03 -2.1536328e+03 - 2.6695282e+03 -3.8885616e+03 -2.1671124e+03 - 2.7948825e+03 -3.7796881e+03 -2.1786065e+03 - 2.9216581e+03 -3.6660322e+03 -2.1878537e+03 - 3.0490827e+03 -3.5481480e+03 -2.1946314e+03 - 3.1763168e+03 -3.4267084e+03 -2.1987695e+03 - 3.3024843e+03 -3.3024843e+03 -2.2001610e+03 - 3.4267084e+03 -3.1763168e+03 -2.1987695e+03 - 3.5481480e+03 -3.0490827e+03 -2.1946314e+03 - 3.6660322e+03 -2.9216581e+03 -2.1878537e+03 - 3.7796881e+03 -2.7948825e+03 -2.1786065e+03 - 3.8885616e+03 -2.6695282e+03 -2.1671124e+03 - 3.9922287e+03 -2.5462758e+03 -2.1536328e+03 - 4.0903969e+03 -2.4256981e+03 -2.1384537e+03 - 4.1828999e+03 -2.3082527e+03 -2.1218717e+03 - 4.2696852e+03 -2.1942821e+03 -2.1041824e+03 - 4.3507978e+03 -2.0840193e+03 -2.0856696e+03 - 4.4263629e+03 -1.9775993e+03 -2.0665981e+03 - 4.4965671e+03 -1.8750714e+03 -2.0472088e+03 - 4.5616417e+03 -1.7764140e+03 -2.0277159e+03 - 4.6218472e+03 -1.6815486e+03 -2.0083062e+03 - 4.6774609e+03 -1.5903528e+03 -1.9891391e+03 - 4.7287663e+03 -1.5026726e+03 -1.9703487e+03 - 4.7760447e+03 -1.4183318e+03 -1.9520457e+03 - 4.8195700e+03 -1.3371405e+03 -1.9343199e+03 - 4.8596037e+03 -1.2589019e+03 -1.9172427e+03 - 4.8963924e+03 -1.1834169e+03 -1.9008700e+03 - 4.9301667e+03 -1.1104886e+03 -1.8852444e+03 - 4.9611393e+03 -1.0399246e+03 -1.8703971e+03 - 4.9895060e+03 -9.7153889e+02 -1.8563506e+03 - 5.0154453e+03 -9.0515338e+02 -1.8431198e+03 - 5.0391194e+03 -8.4059823e+02 -1.8307136e+03 - 5.0606748e+03 -7.7771229e+02 -1.8191364e+03 - 5.0802434e+03 -7.1634301e+02 -1.8083890e+03 - 5.0979431e+03 -6.5634616e+02 -1.7984695e+03 - 5.1138794e+03 -5.9758546e+02 -1.7893742e+03 - 5.1281456e+03 -5.3993202e+02 -1.7810980e+03 - 5.1408243e+03 -4.8326376e+02 -1.7736350e+03 - 5.1519875e+03 -4.2746481e+02 -1.7669789e+03 - 5.1616981e+03 -3.7242487e+02 -1.7611234e+03 - 5.1700100e+03 -3.1803852e+02 -1.7560626e+03 - 5.1769687e+03 -2.6420461e+02 -1.7517907e+03 - 5.1826120e+03 -2.1082561e+02 -1.7483027e+03 - 5.1869704e+03 -1.5780698e+02 -1.7455945e+03 - 5.1900670e+03 -1.0505656e+02 -1.7436625e+03 - 5.1919185e+03 -5.2483969e+01 -1.7425044e+03 - 5.1925346e+03 0.0000000e+00 -1.7421185e+03 - 5.1629178e+03 9.6268545e-09 -1.8512430e+03 - 5.1622885e+03 5.2741285e+01 -1.8516380e+03 - 5.1603974e+03 1.0557118e+02 -1.8528233e+03 - 5.1572346e+03 1.5857885e+02 -1.8548003e+03 - 5.1527836e+03 2.1185462e+02 -1.8575712e+03 - 5.1470210e+03 2.6549049e+02 -1.8611390e+03 - 5.1399166e+03 3.1958075e+02 -1.8655073e+03 - 5.1314325e+03 3.7422257e+02 -1.8706804e+03 - 5.1215231e+03 4.2951659e+02 -1.8766632e+03 - 5.1101347e+03 4.8556748e+02 -1.8834605e+03 - 5.0972048e+03 5.4248461e+02 -1.8910774e+03 - 5.0826615e+03 6.0038258e+02 -1.8995189e+03 - 5.0664231e+03 6.5938186e+02 -1.9087890e+03 - 5.0483969e+03 7.1960929e+02 -1.9188909e+03 - 5.0284789e+03 7.8119864e+02 -1.9298264e+03 - 5.0065526e+03 8.4429097e+02 -1.9415948e+03 - 4.9824884e+03 9.0903501e+02 -1.9541925e+03 - 4.9561427e+03 9.7558724e+02 -1.9676122e+03 - 4.9273571e+03 1.0441119e+03 -1.9818416e+03 - 4.8959576e+03 1.1147803e+03 -1.9968620e+03 - 4.8617548e+03 1.1877707e+03 -2.0126474e+03 - 4.8245430e+03 1.2632660e+03 -2.0291620e+03 - 4.7841011e+03 1.3414526e+03 -2.0463590e+03 - 4.7401934e+03 1.4225171e+03 -2.0641784e+03 - 4.6925715e+03 1.5066426e+03 -2.0825443e+03 - 4.6409772e+03 1.5940034e+03 -2.1013629e+03 - 4.5851471e+03 1.6847591e+03 -2.1205201e+03 - 4.5248181e+03 1.7790461e+03 -2.1398794e+03 - 4.4597357e+03 1.8769686e+03 -2.1592797e+03 - 4.3896637e+03 1.9785876e+03 -2.1785346e+03 - 4.3143962e+03 2.0839085e+03 -2.1974320e+03 - 4.2337720e+03 2.1928688e+03 -2.2157352e+03 - 4.1476898e+03 2.3053251e+03 -2.2331863e+03 - 4.0561246e+03 2.4210419e+03 -2.2495108e+03 - 3.9591437e+03 2.5396823e+03 -2.2644248e+03 - 3.8569205e+03 2.6608039e+03 -2.2776451e+03 - 3.7497445e+03 2.7838589e+03 -2.2889001e+03 - 3.6380259e+03 2.9082024e+03 -2.2979427e+03 - 3.5222930e+03 3.0331069e+03 -2.3045637e+03 - 3.4031817e+03 3.1577849e+03 -2.3086032e+03 - 3.2814165e+03 3.2814165e+03 -2.3099610e+03 - 3.1577849e+03 3.4031817e+03 -2.3086032e+03 - 3.0331069e+03 3.5222930e+03 -2.3045637e+03 - 2.9082024e+03 3.6380259e+03 -2.2979427e+03 - 2.7838589e+03 3.7497445e+03 -2.2889001e+03 - 2.6608039e+03 3.8569205e+03 -2.2776451e+03 - 2.5396823e+03 3.9591437e+03 -2.2644248e+03 - 2.4210419e+03 4.0561246e+03 -2.2495108e+03 - 2.3053251e+03 4.1476898e+03 -2.2331863e+03 - 2.1928688e+03 4.2337720e+03 -2.2157352e+03 - 2.0839085e+03 4.3143962e+03 -2.1974320e+03 - 1.9785876e+03 4.3896637e+03 -2.1785346e+03 - 1.8769686e+03 4.4597357e+03 -2.1592797e+03 - 1.7790461e+03 4.5248181e+03 -2.1398794e+03 - 1.6847591e+03 4.5851471e+03 -2.1205201e+03 - 1.5940034e+03 4.6409772e+03 -2.1013629e+03 - 1.5066426e+03 4.6925715e+03 -2.0825443e+03 - 1.4225171e+03 4.7401934e+03 -2.0641784e+03 - 1.3414526e+03 4.7841011e+03 -2.0463590e+03 - 1.2632660e+03 4.8245430e+03 -2.0291620e+03 - 1.1877707e+03 4.8617548e+03 -2.0126474e+03 - 1.1147803e+03 4.8959576e+03 -1.9968620e+03 - 1.0441119e+03 4.9273571e+03 -1.9818416e+03 - 9.7558724e+02 4.9561427e+03 -1.9676122e+03 - 9.0903501e+02 4.9824884e+03 -1.9541925e+03 - 8.4429097e+02 5.0065526e+03 -1.9415948e+03 - 7.8119864e+02 5.0284789e+03 -1.9298264e+03 - 7.1960929e+02 5.0483969e+03 -1.9188909e+03 - 6.5938186e+02 5.0664231e+03 -1.9087890e+03 - 6.0038258e+02 5.0826615e+03 -1.8995189e+03 - 5.4248461e+02 5.0972048e+03 -1.8910774e+03 - 4.8556748e+02 5.1101347e+03 -1.8834605e+03 - 4.2951659e+02 5.1215231e+03 -1.8766632e+03 - 3.7422257e+02 5.1314325e+03 -1.8706804e+03 - 3.1958075e+02 5.1399166e+03 -1.8655073e+03 - 2.6549049e+02 5.1470210e+03 -1.8611390e+03 - 2.1185462e+02 5.1527836e+03 -1.8575712e+03 - 1.5857885e+02 5.1572346e+03 -1.8548003e+03 - 1.0557118e+02 5.1603974e+03 -1.8528233e+03 - 5.2741285e+01 5.1622885e+03 -1.8516380e+03 - 0.0000000e+00 5.1629178e+03 -1.8512430e+03 - -5.2741285e+01 5.1622885e+03 -1.8516380e+03 - -1.0557118e+02 5.1603974e+03 -1.8528233e+03 - -1.5857885e+02 5.1572346e+03 -1.8548003e+03 - -2.1185462e+02 5.1527836e+03 -1.8575712e+03 - -2.6549049e+02 5.1470210e+03 -1.8611390e+03 - -3.1958075e+02 5.1399166e+03 -1.8655073e+03 - -3.7422257e+02 5.1314325e+03 -1.8706804e+03 - -4.2951659e+02 5.1215231e+03 -1.8766632e+03 - -4.8556748e+02 5.1101347e+03 -1.8834605e+03 - -5.4248461e+02 5.0972048e+03 -1.8910774e+03 - -6.0038258e+02 5.0826615e+03 -1.8995189e+03 - -6.5938186e+02 5.0664231e+03 -1.9087890e+03 - -7.1960929e+02 5.0483969e+03 -1.9188909e+03 - -7.8119864e+02 5.0284789e+03 -1.9298264e+03 - -8.4429097e+02 5.0065526e+03 -1.9415948e+03 - -9.0903501e+02 4.9824884e+03 -1.9541925e+03 - -9.7558724e+02 4.9561427e+03 -1.9676122e+03 - -1.0441119e+03 4.9273571e+03 -1.9818416e+03 - -1.1147803e+03 4.8959576e+03 -1.9968620e+03 - -1.1877707e+03 4.8617548e+03 -2.0126474e+03 - -1.2632660e+03 4.8245430e+03 -2.0291620e+03 - -1.3414526e+03 4.7841011e+03 -2.0463590e+03 - -1.4225171e+03 4.7401934e+03 -2.0641784e+03 - -1.5066426e+03 4.6925715e+03 -2.0825443e+03 - -1.5940034e+03 4.6409772e+03 -2.1013629e+03 - -1.6847591e+03 4.5851471e+03 -2.1205201e+03 - -1.7790461e+03 4.5248181e+03 -2.1398794e+03 - -1.8769686e+03 4.4597357e+03 -2.1592797e+03 - -1.9785876e+03 4.3896637e+03 -2.1785346e+03 - -2.0839085e+03 4.3143962e+03 -2.1974320e+03 - -2.1928688e+03 4.2337720e+03 -2.2157352e+03 - -2.3053251e+03 4.1476898e+03 -2.2331863e+03 - -2.4210419e+03 4.0561246e+03 -2.2495108e+03 - -2.5396823e+03 3.9591437e+03 -2.2644248e+03 - -2.6608039e+03 3.8569205e+03 -2.2776451e+03 - -2.7838589e+03 3.7497445e+03 -2.2889001e+03 - -2.9082024e+03 3.6380259e+03 -2.2979427e+03 - -3.0331069e+03 3.5222930e+03 -2.3045637e+03 - -3.1577849e+03 3.4031817e+03 -2.3086032e+03 - -3.2814165e+03 3.2814165e+03 -2.3099610e+03 - -3.4031817e+03 3.1577849e+03 -2.3086032e+03 - -3.5222930e+03 3.0331069e+03 -2.3045637e+03 - -3.6380259e+03 2.9082024e+03 -2.2979427e+03 - -3.7497445e+03 2.7838589e+03 -2.2889001e+03 - -3.8569205e+03 2.6608039e+03 -2.2776451e+03 - -3.9591437e+03 2.5396823e+03 -2.2644248e+03 - -4.0561246e+03 2.4210419e+03 -2.2495108e+03 - -4.1476898e+03 2.3053251e+03 -2.2331863e+03 - -4.2337720e+03 2.1928688e+03 -2.2157352e+03 - -4.3143962e+03 2.0839085e+03 -2.1974320e+03 - -4.3896637e+03 1.9785876e+03 -2.1785346e+03 - -4.4597357e+03 1.8769686e+03 -2.1592797e+03 - -4.5248181e+03 1.7790461e+03 -2.1398794e+03 - -4.5851471e+03 1.6847591e+03 -2.1205201e+03 - -4.6409772e+03 1.5940034e+03 -2.1013629e+03 - -4.6925715e+03 1.5066426e+03 -2.0825443e+03 - -4.7401934e+03 1.4225171e+03 -2.0641784e+03 - -4.7841011e+03 1.3414526e+03 -2.0463590e+03 - -4.8245430e+03 1.2632660e+03 -2.0291620e+03 - -4.8617548e+03 1.1877707e+03 -2.0126474e+03 - -4.8959576e+03 1.1147803e+03 -1.9968620e+03 - -4.9273571e+03 1.0441119e+03 -1.9818416e+03 - -4.9561427e+03 9.7558724e+02 -1.9676122e+03 - -4.9824884e+03 9.0903501e+02 -1.9541925e+03 - -5.0065526e+03 8.4429097e+02 -1.9415948e+03 - -5.0284789e+03 7.8119864e+02 -1.9298264e+03 - -5.0483969e+03 7.1960929e+02 -1.9188909e+03 - -5.0664231e+03 6.5938186e+02 -1.9087890e+03 - -5.0826615e+03 6.0038258e+02 -1.8995189e+03 - -5.0972048e+03 5.4248461e+02 -1.8910774e+03 - -5.1101347e+03 4.8556748e+02 -1.8834605e+03 - -5.1215231e+03 4.2951659e+02 -1.8766632e+03 - -5.1314325e+03 3.7422257e+02 -1.8706804e+03 - -5.1399166e+03 3.1958075e+02 -1.8655073e+03 - -5.1470210e+03 2.6549049e+02 -1.8611390e+03 - -5.1527836e+03 2.1185462e+02 -1.8575712e+03 - -5.1572346e+03 1.5857885e+02 -1.8548003e+03 - -5.1603974e+03 1.0557118e+02 -1.8528233e+03 - -5.1622885e+03 5.2741285e+01 -1.8516380e+03 - -5.1629178e+03 -9.6268545e-09 -1.8512430e+03 - -5.1622885e+03 -5.2741285e+01 -1.8516380e+03 - -5.1603974e+03 -1.0557118e+02 -1.8528233e+03 - -5.1572346e+03 -1.5857885e+02 -1.8548003e+03 - -5.1527836e+03 -2.1185462e+02 -1.8575712e+03 - -5.1470210e+03 -2.6549049e+02 -1.8611390e+03 - -5.1399166e+03 -3.1958075e+02 -1.8655073e+03 - -5.1314325e+03 -3.7422257e+02 -1.8706804e+03 - -5.1215231e+03 -4.2951659e+02 -1.8766632e+03 - -5.1101347e+03 -4.8556748e+02 -1.8834605e+03 - -5.0972048e+03 -5.4248461e+02 -1.8910774e+03 - -5.0826615e+03 -6.0038258e+02 -1.8995189e+03 - -5.0664231e+03 -6.5938186e+02 -1.9087890e+03 - -5.0483969e+03 -7.1960929e+02 -1.9188909e+03 - -5.0284789e+03 -7.8119864e+02 -1.9298264e+03 - -5.0065526e+03 -8.4429097e+02 -1.9415948e+03 - -4.9824884e+03 -9.0903501e+02 -1.9541925e+03 - -4.9561427e+03 -9.7558724e+02 -1.9676122e+03 - -4.9273571e+03 -1.0441119e+03 -1.9818416e+03 - -4.8959576e+03 -1.1147803e+03 -1.9968620e+03 - -4.8617548e+03 -1.1877707e+03 -2.0126474e+03 - -4.8245430e+03 -1.2632660e+03 -2.0291620e+03 - -4.7841011e+03 -1.3414526e+03 -2.0463590e+03 - -4.7401934e+03 -1.4225171e+03 -2.0641784e+03 - -4.6925715e+03 -1.5066426e+03 -2.0825443e+03 - -4.6409772e+03 -1.5940034e+03 -2.1013629e+03 - -4.5851471e+03 -1.6847591e+03 -2.1205201e+03 - -4.5248181e+03 -1.7790461e+03 -2.1398794e+03 - -4.4597357e+03 -1.8769686e+03 -2.1592797e+03 - -4.3896637e+03 -1.9785876e+03 -2.1785346e+03 - -4.3143962e+03 -2.0839085e+03 -2.1974320e+03 - -4.2337720e+03 -2.1928688e+03 -2.2157352e+03 - -4.1476898e+03 -2.3053251e+03 -2.2331863e+03 - -4.0561246e+03 -2.4210419e+03 -2.2495108e+03 - -3.9591437e+03 -2.5396823e+03 -2.2644248e+03 - -3.8569205e+03 -2.6608039e+03 -2.2776451e+03 - -3.7497445e+03 -2.7838589e+03 -2.2889001e+03 - -3.6380259e+03 -2.9082024e+03 -2.2979427e+03 - -3.5222930e+03 -3.0331069e+03 -2.3045637e+03 - -3.4031817e+03 -3.1577849e+03 -2.3086032e+03 - -3.2814165e+03 -3.2814165e+03 -2.3099610e+03 - -3.1577849e+03 -3.4031817e+03 -2.3086032e+03 - -3.0331069e+03 -3.5222930e+03 -2.3045637e+03 - -2.9082024e+03 -3.6380259e+03 -2.2979427e+03 - -2.7838589e+03 -3.7497445e+03 -2.2889001e+03 - -2.6608039e+03 -3.8569205e+03 -2.2776451e+03 - -2.5396823e+03 -3.9591437e+03 -2.2644248e+03 - -2.4210419e+03 -4.0561246e+03 -2.2495108e+03 - -2.3053251e+03 -4.1476898e+03 -2.2331863e+03 - -2.1928688e+03 -4.2337720e+03 -2.2157352e+03 - -2.0839085e+03 -4.3143962e+03 -2.1974320e+03 - -1.9785876e+03 -4.3896637e+03 -2.1785346e+03 - -1.8769686e+03 -4.4597357e+03 -2.1592797e+03 - -1.7790461e+03 -4.5248181e+03 -2.1398794e+03 - -1.6847591e+03 -4.5851471e+03 -2.1205201e+03 - -1.5940034e+03 -4.6409772e+03 -2.1013629e+03 - -1.5066426e+03 -4.6925715e+03 -2.0825443e+03 - -1.4225171e+03 -4.7401934e+03 -2.0641784e+03 - -1.3414526e+03 -4.7841011e+03 -2.0463590e+03 - -1.2632660e+03 -4.8245430e+03 -2.0291620e+03 - -1.1877707e+03 -4.8617548e+03 -2.0126474e+03 - -1.1147803e+03 -4.8959576e+03 -1.9968620e+03 - -1.0441119e+03 -4.9273571e+03 -1.9818416e+03 - -9.7558724e+02 -4.9561427e+03 -1.9676122e+03 - -9.0903501e+02 -4.9824884e+03 -1.9541925e+03 - -8.4429097e+02 -5.0065526e+03 -1.9415948e+03 - -7.8119864e+02 -5.0284789e+03 -1.9298264e+03 - -7.1960929e+02 -5.0483969e+03 -1.9188909e+03 - -6.5938186e+02 -5.0664231e+03 -1.9087890e+03 - -6.0038258e+02 -5.0826615e+03 -1.8995189e+03 - -5.4248461e+02 -5.0972048e+03 -1.8910774e+03 - -4.8556748e+02 -5.1101347e+03 -1.8834605e+03 - -4.2951659e+02 -5.1215231e+03 -1.8766632e+03 - -3.7422257e+02 -5.1314325e+03 -1.8706804e+03 - -3.1958075e+02 -5.1399166e+03 -1.8655073e+03 - -2.6549049e+02 -5.1470210e+03 -1.8611390e+03 - -2.1185462e+02 -5.1527836e+03 -1.8575712e+03 - -1.5857885e+02 -5.1572346e+03 -1.8548003e+03 - -1.0557118e+02 -5.1603974e+03 -1.8528233e+03 - -5.2741285e+01 -5.1622885e+03 -1.8516380e+03 - -9.6268545e-09 -5.1629178e+03 -1.8512430e+03 - 5.2741285e+01 -5.1622885e+03 -1.8516380e+03 - 1.0557118e+02 -5.1603974e+03 -1.8528233e+03 - 1.5857885e+02 -5.1572346e+03 -1.8548003e+03 - 2.1185462e+02 -5.1527836e+03 -1.8575712e+03 - 2.6549049e+02 -5.1470210e+03 -1.8611390e+03 - 3.1958075e+02 -5.1399166e+03 -1.8655073e+03 - 3.7422257e+02 -5.1314325e+03 -1.8706804e+03 - 4.2951659e+02 -5.1215231e+03 -1.8766632e+03 - 4.8556748e+02 -5.1101347e+03 -1.8834605e+03 - 5.4248461e+02 -5.0972048e+03 -1.8910774e+03 - 6.0038258e+02 -5.0826615e+03 -1.8995189e+03 - 6.5938186e+02 -5.0664231e+03 -1.9087890e+03 - 7.1960929e+02 -5.0483969e+03 -1.9188909e+03 - 7.8119864e+02 -5.0284789e+03 -1.9298264e+03 - 8.4429097e+02 -5.0065526e+03 -1.9415948e+03 - 9.0903501e+02 -4.9824884e+03 -1.9541925e+03 - 9.7558724e+02 -4.9561427e+03 -1.9676122e+03 - 1.0441119e+03 -4.9273571e+03 -1.9818416e+03 - 1.1147803e+03 -4.8959576e+03 -1.9968620e+03 - 1.1877707e+03 -4.8617548e+03 -2.0126474e+03 - 1.2632660e+03 -4.8245430e+03 -2.0291620e+03 - 1.3414526e+03 -4.7841011e+03 -2.0463590e+03 - 1.4225171e+03 -4.7401934e+03 -2.0641784e+03 - 1.5066426e+03 -4.6925715e+03 -2.0825443e+03 - 1.5940034e+03 -4.6409772e+03 -2.1013629e+03 - 1.6847591e+03 -4.5851471e+03 -2.1205201e+03 - 1.7790461e+03 -4.5248181e+03 -2.1398794e+03 - 1.8769686e+03 -4.4597357e+03 -2.1592797e+03 - 1.9785876e+03 -4.3896637e+03 -2.1785346e+03 - 2.0839085e+03 -4.3143962e+03 -2.1974320e+03 - 2.1928688e+03 -4.2337720e+03 -2.2157352e+03 - 2.3053251e+03 -4.1476898e+03 -2.2331863e+03 - 2.4210419e+03 -4.0561246e+03 -2.2495108e+03 - 2.5396823e+03 -3.9591437e+03 -2.2644248e+03 - 2.6608039e+03 -3.8569205e+03 -2.2776451e+03 - 2.7838589e+03 -3.7497445e+03 -2.2889001e+03 - 2.9082024e+03 -3.6380259e+03 -2.2979427e+03 - 3.0331069e+03 -3.5222930e+03 -2.3045637e+03 - 3.1577849e+03 -3.4031817e+03 -2.3086032e+03 - 3.2814165e+03 -3.2814165e+03 -2.3099610e+03 - 3.4031817e+03 -3.1577849e+03 -2.3086032e+03 - 3.5222930e+03 -3.0331069e+03 -2.3045637e+03 - 3.6380259e+03 -2.9082024e+03 -2.2979427e+03 - 3.7497445e+03 -2.7838589e+03 -2.2889001e+03 - 3.8569205e+03 -2.6608039e+03 -2.2776451e+03 - 3.9591437e+03 -2.5396823e+03 -2.2644248e+03 - 4.0561246e+03 -2.4210419e+03 -2.2495108e+03 - 4.1476898e+03 -2.3053251e+03 -2.2331863e+03 - 4.2337720e+03 -2.1928688e+03 -2.2157352e+03 - 4.3143962e+03 -2.0839085e+03 -2.1974320e+03 - 4.3896637e+03 -1.9785876e+03 -2.1785346e+03 - 4.4597357e+03 -1.8769686e+03 -2.1592797e+03 - 4.5248181e+03 -1.7790461e+03 -2.1398794e+03 - 4.5851471e+03 -1.6847591e+03 -2.1205201e+03 - 4.6409772e+03 -1.5940034e+03 -2.1013629e+03 - 4.6925715e+03 -1.5066426e+03 -2.0825443e+03 - 4.7401934e+03 -1.4225171e+03 -2.0641784e+03 - 4.7841011e+03 -1.3414526e+03 -2.0463590e+03 - 4.8245430e+03 -1.2632660e+03 -2.0291620e+03 - 4.8617548e+03 -1.1877707e+03 -2.0126474e+03 - 4.8959576e+03 -1.1147803e+03 -1.9968620e+03 - 4.9273571e+03 -1.0441119e+03 -1.9818416e+03 - 4.9561427e+03 -9.7558724e+02 -1.9676122e+03 - 4.9824884e+03 -9.0903501e+02 -1.9541925e+03 - 5.0065526e+03 -8.4429097e+02 -1.9415948e+03 - 5.0284789e+03 -7.8119864e+02 -1.9298264e+03 - 5.0483969e+03 -7.1960929e+02 -1.9188909e+03 - 5.0664231e+03 -6.5938186e+02 -1.9087890e+03 - 5.0826615e+03 -6.0038258e+02 -1.8995189e+03 - 5.0972048e+03 -5.4248461e+02 -1.8910774e+03 - 5.1101347e+03 -4.8556748e+02 -1.8834605e+03 - 5.1215231e+03 -4.2951659e+02 -1.8766632e+03 - 5.1314325e+03 -3.7422257e+02 -1.8706804e+03 - 5.1399166e+03 -3.1958075e+02 -1.8655073e+03 - 5.1470210e+03 -2.6549049e+02 -1.8611390e+03 - 5.1527836e+03 -2.1185462e+02 -1.8575712e+03 - 5.1572346e+03 -1.5857885e+02 -1.8548003e+03 - 5.1603974e+03 -1.0557118e+02 -1.8528233e+03 - 5.1622885e+03 -5.2741285e+01 -1.8516380e+03 - 5.1629178e+03 -9.6268545e-09 -1.8512430e+03 - 5.1321762e+03 -9.6268545e-09 -1.9563068e+03 - 5.1315340e+03 5.3002684e+01 -1.9567083e+03 - 5.1296040e+03 1.0609388e+02 -1.9579129e+03 - 5.1263764e+03 1.5936265e+02 -1.9599220e+03 - 5.1218348e+03 2.1289914e+02 -1.9627372e+03 - 5.1159557e+03 2.6679512e+02 -1.9663611e+03 - 5.1087090e+03 3.2114455e+02 -1.9707969e+03 - 5.1000568e+03 3.7604414e+02 -1.9760479e+03 - 5.0899537e+03 4.3159386e+02 -1.9821179e+03 - 5.0783463e+03 4.8789758e+02 -1.9890109e+03 - 5.0651725e+03 5.4506357e+02 -1.9967307e+03 - 5.0503609e+03 6.0320503e+02 -2.0052804e+03 - 5.0338306e+03 6.6244068e+02 -2.0146626e+03 - 5.0154899e+03 7.2289516e+02 -2.0248784e+03 - 4.9952363e+03 7.8469952e+02 -2.0359274e+03 - 4.9729552e+03 8.4799153e+02 -2.0478063e+03 - 4.9485196e+03 9.1291588e+02 -2.0605091e+03 - 4.9217888e+03 9.7962423e+02 -2.0740251e+03 - 4.8926087e+03 1.0482750e+03 -2.0883389e+03 - 4.8608104e+03 1.1190328e+03 -2.1034284e+03 - 4.8262107e+03 1.1920676e+03 -2.1192637e+03 - 4.7886115e+03 1.2675533e+03 -2.1358054e+03 - 4.7478012e+03 1.3456654e+03 -2.1530028e+03 - 4.7035553e+03 1.4265784e+03 -2.1707919e+03 - 4.6556386e+03 1.5104616e+03 -2.1890934e+03 - 4.6038083e+03 1.5974747e+03 -2.2078106e+03 - 4.5478186e+03 1.6877608e+03 -2.2268268e+03 - 4.4874262e+03 1.7814398e+03 -2.2460043e+03 - 4.4223985e+03 1.8785986e+03 -2.2651820e+03 - 4.3525223e+03 1.9792820e+03 -2.2841752e+03 - 4.2776156e+03 2.0834808e+03 -2.3027755e+03 - 4.1975406e+03 2.1911207e+03 -2.3207524e+03 - 4.1122175e+03 2.3020512e+03 -2.3378564e+03 - 4.0216393e+03 2.4160356e+03 -2.3538238e+03 - 3.9258857e+03 2.5327436e+03 -2.3683840e+03 - 3.8251353e+03 2.6517480e+03 -2.3812682e+03 - 3.7196734e+03 2.7725257e+03 -2.3922204e+03 - 3.6098958e+03 2.8944658e+03 -2.4010085e+03 - 3.4963057e+03 3.0168836e+03 -2.4074366e+03 - 3.3795033e+03 3.1390403e+03 -2.4113558e+03 - 3.2601691e+03 3.2601691e+03 -2.4126727e+03 - 3.1390403e+03 3.3795033e+03 -2.4113558e+03 - 3.0168836e+03 3.4963057e+03 -2.4074366e+03 - 2.8944658e+03 3.6098958e+03 -2.4010085e+03 - 2.7725257e+03 3.7196734e+03 -2.3922204e+03 - 2.6517480e+03 3.8251353e+03 -2.3812682e+03 - 2.5327436e+03 3.9258857e+03 -2.3683840e+03 - 2.4160356e+03 4.0216393e+03 -2.3538238e+03 - 2.3020512e+03 4.1122175e+03 -2.3378564e+03 - 2.1911207e+03 4.1975406e+03 -2.3207524e+03 - 2.0834808e+03 4.2776156e+03 -2.3027755e+03 - 1.9792820e+03 4.3525223e+03 -2.2841752e+03 - 1.8785986e+03 4.4223985e+03 -2.2651820e+03 - 1.7814398e+03 4.4874262e+03 -2.2460043e+03 - 1.6877608e+03 4.5478186e+03 -2.2268268e+03 - 1.5974747e+03 4.6038083e+03 -2.2078106e+03 - 1.5104616e+03 4.6556386e+03 -2.1890934e+03 - 1.4265784e+03 4.7035553e+03 -2.1707919e+03 - 1.3456654e+03 4.7478012e+03 -2.1530028e+03 - 1.2675533e+03 4.7886115e+03 -2.1358054e+03 - 1.1920676e+03 4.8262107e+03 -2.1192637e+03 - 1.1190328e+03 4.8608104e+03 -2.1034284e+03 - 1.0482750e+03 4.8926087e+03 -2.0883389e+03 - 9.7962423e+02 4.9217888e+03 -2.0740251e+03 - 9.1291588e+02 4.9485196e+03 -2.0605091e+03 - 8.4799153e+02 4.9729552e+03 -2.0478063e+03 - 7.8469952e+02 4.9952363e+03 -2.0359274e+03 - 7.2289516e+02 5.0154899e+03 -2.0248784e+03 - 6.6244068e+02 5.0338306e+03 -2.0146626e+03 - 6.0320503e+02 5.0503609e+03 -2.0052804e+03 - 5.4506357e+02 5.0651725e+03 -1.9967307e+03 - 4.8789758e+02 5.0783463e+03 -1.9890109e+03 - 4.3159386e+02 5.0899537e+03 -1.9821179e+03 - 3.7604414e+02 5.1000568e+03 -1.9760479e+03 - 3.2114455e+02 5.1087090e+03 -1.9707969e+03 - 2.6679512e+02 5.1159557e+03 -1.9663611e+03 - 2.1289914e+02 5.1218348e+03 -1.9627372e+03 - 1.5936265e+02 5.1263764e+03 -1.9599220e+03 - 1.0609388e+02 5.1296040e+03 -1.9579129e+03 - 5.3002684e+01 5.1315340e+03 -1.9567083e+03 - -4.8134273e-09 5.1321762e+03 -1.9563068e+03 - -5.3002684e+01 5.1315340e+03 -1.9567083e+03 - -1.0609388e+02 5.1296040e+03 -1.9579129e+03 - -1.5936265e+02 5.1263764e+03 -1.9599220e+03 - -2.1289914e+02 5.1218348e+03 -1.9627372e+03 - -2.6679512e+02 5.1159557e+03 -1.9663611e+03 - -3.2114455e+02 5.1087090e+03 -1.9707969e+03 - -3.7604414e+02 5.1000568e+03 -1.9760479e+03 - -4.3159386e+02 5.0899537e+03 -1.9821179e+03 - -4.8789758e+02 5.0783463e+03 -1.9890109e+03 - -5.4506357e+02 5.0651725e+03 -1.9967307e+03 - -6.0320503e+02 5.0503609e+03 -2.0052804e+03 - -6.6244068e+02 5.0338306e+03 -2.0146626e+03 - -7.2289516e+02 5.0154899e+03 -2.0248784e+03 - -7.8469952e+02 4.9952363e+03 -2.0359274e+03 - -8.4799153e+02 4.9729552e+03 -2.0478063e+03 - -9.1291588e+02 4.9485196e+03 -2.0605091e+03 - -9.7962423e+02 4.9217888e+03 -2.0740251e+03 - -1.0482750e+03 4.8926087e+03 -2.0883389e+03 - -1.1190328e+03 4.8608104e+03 -2.1034284e+03 - -1.1920676e+03 4.8262107e+03 -2.1192637e+03 - -1.2675533e+03 4.7886115e+03 -2.1358054e+03 - -1.3456654e+03 4.7478012e+03 -2.1530028e+03 - -1.4265784e+03 4.7035553e+03 -2.1707919e+03 - -1.5104616e+03 4.6556386e+03 -2.1890934e+03 - -1.5974747e+03 4.6038083e+03 -2.2078106e+03 - -1.6877608e+03 4.5478186e+03 -2.2268268e+03 - -1.7814398e+03 4.4874262e+03 -2.2460043e+03 - -1.8785986e+03 4.4223985e+03 -2.2651820e+03 - -1.9792820e+03 4.3525223e+03 -2.2841752e+03 - -2.0834808e+03 4.2776156e+03 -2.3027755e+03 - -2.1911207e+03 4.1975406e+03 -2.3207524e+03 - -2.3020512e+03 4.1122175e+03 -2.3378564e+03 - -2.4160356e+03 4.0216393e+03 -2.3538238e+03 - -2.5327436e+03 3.9258857e+03 -2.3683840e+03 - -2.6517480e+03 3.8251353e+03 -2.3812682e+03 - -2.7725257e+03 3.7196734e+03 -2.3922204e+03 - -2.8944658e+03 3.6098958e+03 -2.4010085e+03 - -3.0168836e+03 3.4963057e+03 -2.4074366e+03 - -3.1390403e+03 3.3795033e+03 -2.4113558e+03 - -3.2601691e+03 3.2601691e+03 -2.4126727e+03 - -3.3795033e+03 3.1390403e+03 -2.4113558e+03 - -3.4963057e+03 3.0168836e+03 -2.4074366e+03 - -3.6098958e+03 2.8944658e+03 -2.4010085e+03 - -3.7196734e+03 2.7725257e+03 -2.3922204e+03 - -3.8251353e+03 2.6517480e+03 -2.3812682e+03 - -3.9258857e+03 2.5327436e+03 -2.3683840e+03 - -4.0216393e+03 2.4160356e+03 -2.3538238e+03 - -4.1122175e+03 2.3020512e+03 -2.3378564e+03 - -4.1975406e+03 2.1911207e+03 -2.3207524e+03 - -4.2776156e+03 2.0834808e+03 -2.3027755e+03 - -4.3525223e+03 1.9792820e+03 -2.2841752e+03 - -4.4223985e+03 1.8785986e+03 -2.2651820e+03 - -4.4874262e+03 1.7814398e+03 -2.2460043e+03 - -4.5478186e+03 1.6877608e+03 -2.2268268e+03 - -4.6038083e+03 1.5974747e+03 -2.2078106e+03 - -4.6556386e+03 1.5104616e+03 -2.1890934e+03 - -4.7035553e+03 1.4265784e+03 -2.1707919e+03 - -4.7478012e+03 1.3456654e+03 -2.1530028e+03 - -4.7886115e+03 1.2675533e+03 -2.1358054e+03 - -4.8262107e+03 1.1920676e+03 -2.1192637e+03 - -4.8608104e+03 1.1190328e+03 -2.1034284e+03 - -4.8926087e+03 1.0482750e+03 -2.0883389e+03 - -4.9217888e+03 9.7962423e+02 -2.0740251e+03 - -4.9485196e+03 9.1291588e+02 -2.0605091e+03 - -4.9729552e+03 8.4799153e+02 -2.0478063e+03 - -4.9952363e+03 7.8469952e+02 -2.0359274e+03 - -5.0154899e+03 7.2289516e+02 -2.0248784e+03 - -5.0338306e+03 6.6244068e+02 -2.0146626e+03 - -5.0503609e+03 6.0320503e+02 -2.0052804e+03 - -5.0651725e+03 5.4506357e+02 -1.9967307e+03 - -5.0783463e+03 4.8789758e+02 -1.9890109e+03 - -5.0899537e+03 4.3159386e+02 -1.9821179e+03 - -5.1000568e+03 3.7604414e+02 -1.9760479e+03 - -5.1087090e+03 3.2114455e+02 -1.9707969e+03 - -5.1159557e+03 2.6679512e+02 -1.9663611e+03 - -5.1218348e+03 2.1289914e+02 -1.9627372e+03 - -5.1263764e+03 1.5936265e+02 -1.9599220e+03 - -5.1296040e+03 1.0609388e+02 -1.9579129e+03 - -5.1315340e+03 5.3002684e+01 -1.9567083e+03 - -5.1321762e+03 0.0000000e+00 -1.9563068e+03 - -5.1315340e+03 -5.3002684e+01 -1.9567083e+03 - -5.1296040e+03 -1.0609388e+02 -1.9579129e+03 - -5.1263764e+03 -1.5936265e+02 -1.9599220e+03 - -5.1218348e+03 -2.1289914e+02 -1.9627372e+03 - -5.1159557e+03 -2.6679512e+02 -1.9663611e+03 - -5.1087090e+03 -3.2114455e+02 -1.9707969e+03 - -5.1000568e+03 -3.7604414e+02 -1.9760479e+03 - -5.0899537e+03 -4.3159386e+02 -1.9821179e+03 - -5.0783463e+03 -4.8789758e+02 -1.9890109e+03 - -5.0651725e+03 -5.4506357e+02 -1.9967307e+03 - -5.0503609e+03 -6.0320503e+02 -2.0052804e+03 - -5.0338306e+03 -6.6244068e+02 -2.0146626e+03 - -5.0154899e+03 -7.2289516e+02 -2.0248784e+03 - -4.9952363e+03 -7.8469952e+02 -2.0359274e+03 - -4.9729552e+03 -8.4799153e+02 -2.0478063e+03 - -4.9485196e+03 -9.1291588e+02 -2.0605091e+03 - -4.9217888e+03 -9.7962423e+02 -2.0740251e+03 - -4.8926087e+03 -1.0482750e+03 -2.0883389e+03 - -4.8608104e+03 -1.1190328e+03 -2.1034284e+03 - -4.8262107e+03 -1.1920676e+03 -2.1192637e+03 - -4.7886115e+03 -1.2675533e+03 -2.1358054e+03 - -4.7478012e+03 -1.3456654e+03 -2.1530028e+03 - -4.7035553e+03 -1.4265784e+03 -2.1707919e+03 - -4.6556386e+03 -1.5104616e+03 -2.1890934e+03 - -4.6038083e+03 -1.5974747e+03 -2.2078106e+03 - -4.5478186e+03 -1.6877608e+03 -2.2268268e+03 - -4.4874262e+03 -1.7814398e+03 -2.2460043e+03 - -4.4223985e+03 -1.8785986e+03 -2.2651820e+03 - -4.3525223e+03 -1.9792820e+03 -2.2841752e+03 - -4.2776156e+03 -2.0834808e+03 -2.3027755e+03 - -4.1975406e+03 -2.1911207e+03 -2.3207524e+03 - -4.1122175e+03 -2.3020512e+03 -2.3378564e+03 - -4.0216393e+03 -2.4160356e+03 -2.3538238e+03 - -3.9258857e+03 -2.5327436e+03 -2.3683840e+03 - -3.8251353e+03 -2.6517480e+03 -2.3812682e+03 - -3.7196734e+03 -2.7725257e+03 -2.3922204e+03 - -3.6098958e+03 -2.8944658e+03 -2.4010085e+03 - -3.4963057e+03 -3.0168836e+03 -2.4074366e+03 - -3.3795033e+03 -3.1390403e+03 -2.4113558e+03 - -3.2601691e+03 -3.2601691e+03 -2.4126727e+03 - -3.1390403e+03 -3.3795033e+03 -2.4113558e+03 - -3.0168836e+03 -3.4963057e+03 -2.4074366e+03 - -2.8944658e+03 -3.6098958e+03 -2.4010085e+03 - -2.7725257e+03 -3.7196734e+03 -2.3922204e+03 - -2.6517480e+03 -3.8251353e+03 -2.3812682e+03 - -2.5327436e+03 -3.9258857e+03 -2.3683840e+03 - -2.4160356e+03 -4.0216393e+03 -2.3538238e+03 - -2.3020512e+03 -4.1122175e+03 -2.3378564e+03 - -2.1911207e+03 -4.1975406e+03 -2.3207524e+03 - -2.0834808e+03 -4.2776156e+03 -2.3027755e+03 - -1.9792820e+03 -4.3525223e+03 -2.2841752e+03 - -1.8785986e+03 -4.4223985e+03 -2.2651820e+03 - -1.7814398e+03 -4.4874262e+03 -2.2460043e+03 - -1.6877608e+03 -4.5478186e+03 -2.2268268e+03 - -1.5974747e+03 -4.6038083e+03 -2.2078106e+03 - -1.5104616e+03 -4.6556386e+03 -2.1890934e+03 - -1.4265784e+03 -4.7035553e+03 -2.1707919e+03 - -1.3456654e+03 -4.7478012e+03 -2.1530028e+03 - -1.2675533e+03 -4.7886115e+03 -2.1358054e+03 - -1.1920676e+03 -4.8262107e+03 -2.1192637e+03 - -1.1190328e+03 -4.8608104e+03 -2.1034284e+03 - -1.0482750e+03 -4.8926087e+03 -2.0883389e+03 - -9.7962423e+02 -4.9217888e+03 -2.0740251e+03 - -9.1291588e+02 -4.9485196e+03 -2.0605091e+03 - -8.4799153e+02 -4.9729552e+03 -2.0478063e+03 - -7.8469952e+02 -4.9952363e+03 -2.0359274e+03 - -7.2289516e+02 -5.0154899e+03 -2.0248784e+03 - -6.6244068e+02 -5.0338306e+03 -2.0146626e+03 - -6.0320503e+02 -5.0503609e+03 -2.0052804e+03 - -5.4506357e+02 -5.0651725e+03 -1.9967307e+03 - -4.8789758e+02 -5.0783463e+03 -1.9890109e+03 - -4.3159386e+02 -5.0899537e+03 -1.9821179e+03 - -3.7604414e+02 -5.1000568e+03 -1.9760479e+03 - -3.2114455e+02 -5.1087090e+03 -1.9707969e+03 - -2.6679512e+02 -5.1159557e+03 -1.9663611e+03 - -2.1289914e+02 -5.1218348e+03 -1.9627372e+03 - -1.5936265e+02 -5.1263764e+03 -1.9599220e+03 - -1.0609388e+02 -5.1296040e+03 -1.9579129e+03 - -5.3002684e+01 -5.1315340e+03 -1.9567083e+03 - -4.8134273e-09 -5.1321762e+03 -1.9563068e+03 - 5.3002684e+01 -5.1315340e+03 -1.9567083e+03 - 1.0609388e+02 -5.1296040e+03 -1.9579129e+03 - 1.5936265e+02 -5.1263764e+03 -1.9599220e+03 - 2.1289914e+02 -5.1218348e+03 -1.9627372e+03 - 2.6679512e+02 -5.1159557e+03 -1.9663611e+03 - 3.2114455e+02 -5.1087090e+03 -1.9707969e+03 - 3.7604414e+02 -5.1000568e+03 -1.9760479e+03 - 4.3159386e+02 -5.0899537e+03 -1.9821179e+03 - 4.8789758e+02 -5.0783463e+03 -1.9890109e+03 - 5.4506357e+02 -5.0651725e+03 -1.9967307e+03 - 6.0320503e+02 -5.0503609e+03 -2.0052804e+03 - 6.6244068e+02 -5.0338306e+03 -2.0146626e+03 - 7.2289516e+02 -5.0154899e+03 -2.0248784e+03 - 7.8469952e+02 -4.9952363e+03 -2.0359274e+03 - 8.4799153e+02 -4.9729552e+03 -2.0478063e+03 - 9.1291588e+02 -4.9485196e+03 -2.0605091e+03 - 9.7962423e+02 -4.9217888e+03 -2.0740251e+03 - 1.0482750e+03 -4.8926087e+03 -2.0883389e+03 - 1.1190328e+03 -4.8608104e+03 -2.1034284e+03 - 1.1920676e+03 -4.8262107e+03 -2.1192637e+03 - 1.2675533e+03 -4.7886115e+03 -2.1358054e+03 - 1.3456654e+03 -4.7478012e+03 -2.1530028e+03 - 1.4265784e+03 -4.7035553e+03 -2.1707919e+03 - 1.5104616e+03 -4.6556386e+03 -2.1890934e+03 - 1.5974747e+03 -4.6038083e+03 -2.2078106e+03 - 1.6877608e+03 -4.5478186e+03 -2.2268268e+03 - 1.7814398e+03 -4.4874262e+03 -2.2460043e+03 - 1.8785986e+03 -4.4223985e+03 -2.2651820e+03 - 1.9792820e+03 -4.3525223e+03 -2.2841752e+03 - 2.0834808e+03 -4.2776156e+03 -2.3027755e+03 - 2.1911207e+03 -4.1975406e+03 -2.3207524e+03 - 2.3020512e+03 -4.1122175e+03 -2.3378564e+03 - 2.4160356e+03 -4.0216393e+03 -2.3538238e+03 - 2.5327436e+03 -3.9258857e+03 -2.3683840e+03 - 2.6517480e+03 -3.8251353e+03 -2.3812682e+03 - 2.7725257e+03 -3.7196734e+03 -2.3922204e+03 - 2.8944658e+03 -3.6098958e+03 -2.4010085e+03 - 3.0168836e+03 -3.4963057e+03 -2.4074366e+03 - 3.1390403e+03 -3.3795033e+03 -2.4113558e+03 - 3.2601691e+03 -3.2601691e+03 -2.4126727e+03 - 3.3795033e+03 -3.1390403e+03 -2.4113558e+03 - 3.4963057e+03 -3.0168836e+03 -2.4074366e+03 - 3.6098958e+03 -2.8944658e+03 -2.4010085e+03 - 3.7196734e+03 -2.7725257e+03 -2.3922204e+03 - 3.8251353e+03 -2.6517480e+03 -2.3812682e+03 - 3.9258857e+03 -2.5327436e+03 -2.3683840e+03 - 4.0216393e+03 -2.4160356e+03 -2.3538238e+03 - 4.1122175e+03 -2.3020512e+03 -2.3378564e+03 - 4.1975406e+03 -2.1911207e+03 -2.3207524e+03 - 4.2776156e+03 -2.0834808e+03 -2.3027755e+03 - 4.3525223e+03 -1.9792820e+03 -2.2841752e+03 - 4.4223985e+03 -1.8785986e+03 -2.2651820e+03 - 4.4874262e+03 -1.7814398e+03 -2.2460043e+03 - 4.5478186e+03 -1.6877608e+03 -2.2268268e+03 - 4.6038083e+03 -1.5974747e+03 -2.2078106e+03 - 4.6556386e+03 -1.5104616e+03 -2.1890934e+03 - 4.7035553e+03 -1.4265784e+03 -2.1707919e+03 - 4.7478012e+03 -1.3456654e+03 -2.1530028e+03 - 4.7886115e+03 -1.2675533e+03 -2.1358054e+03 - 4.8262107e+03 -1.1920676e+03 -2.1192637e+03 - 4.8608104e+03 -1.1190328e+03 -2.1034284e+03 - 4.8926087e+03 -1.0482750e+03 -2.0883389e+03 - 4.9217888e+03 -9.7962423e+02 -2.0740251e+03 - 4.9485196e+03 -9.1291588e+02 -2.0605091e+03 - 4.9729552e+03 -8.4799153e+02 -2.0478063e+03 - 4.9952363e+03 -7.8469952e+02 -2.0359274e+03 - 5.0154899e+03 -7.2289516e+02 -2.0248784e+03 - 5.0338306e+03 -6.6244068e+02 -2.0146626e+03 - 5.0503609e+03 -6.0320503e+02 -2.0052804e+03 - 5.0651725e+03 -5.4506357e+02 -1.9967307e+03 - 5.0783463e+03 -4.8789758e+02 -1.9890109e+03 - 5.0899537e+03 -4.3159386e+02 -1.9821179e+03 - 5.1000568e+03 -3.7604414e+02 -1.9760479e+03 - 5.1087090e+03 -3.2114455e+02 -1.9707969e+03 - 5.1159557e+03 -2.6679512e+02 -1.9663611e+03 - 5.1218348e+03 -2.1289914e+02 -1.9627372e+03 - 5.1263764e+03 -1.5936265e+02 -1.9599220e+03 - 5.1296040e+03 -1.0609388e+02 -1.9579129e+03 - 5.1315340e+03 -5.3002684e+01 -1.9567083e+03 - 5.1321762e+03 -4.8134273e-09 -1.9563068e+03 - 5.1004326e+03 -4.8134273e-09 -2.0573880e+03 - 5.0997778e+03 5.3266327e+01 -2.0577935e+03 - 5.0978100e+03 1.0662099e+02 -2.0590104e+03 - 5.0945196e+03 1.6015284e+02 -2.0610396e+03 - 5.0898900e+03 2.1395177e+02 -2.0638824e+03 - 5.0838980e+03 2.6810923e+02 -2.0675411e+03 - 5.0765134e+03 3.2271873e+02 -2.0720178e+03 - 5.0676986e+03 3.7787641e+02 -2.0773154e+03 - 5.0574085e+03 4.3368151e+02 -2.0834366e+03 - 5.0455899e+03 4.9023694e+02 -2.0903842e+03 - 5.0321813e+03 5.4764974e+02 -2.0981605e+03 - 5.0171121e+03 6.0603161e+02 -2.1067672e+03 - 5.0003022e+03 6.6549933e+02 -2.1162051e+03 - 4.9816613e+03 7.2617523e+02 -2.1264734e+03 - 4.9610885e+03 7.8818749e+02 -2.1375692e+03 - 4.9384714e+03 8.5167041e+02 -2.1494870e+03 - 4.9136856e+03 9.1676451e+02 -2.1622179e+03 - 4.8865941e+03 9.8361646e+02 -2.1757486e+03 - 4.8570469e+03 1.0523788e+03 -2.1900604e+03 - 4.8248805e+03 1.1232092e+03 -2.2051278e+03 - 4.7899181e+03 1.1962697e+03 -2.2209177e+03 - 4.7519698e+03 1.2717246e+03 -2.2373872e+03 - 4.7108333e+03 1.3497391e+03 -2.2544821e+03 - 4.6662953e+03 1.4304755e+03 -2.2721355e+03 - 4.6181338e+03 1.5140901e+03 -2.2902652e+03 - 4.5661212e+03 1.6007278e+03 -2.3087721e+03 - 4.5100287e+03 1.6905168e+03 -2.3275384e+03 - 4.4496324e+03 1.7835607e+03 -2.3464260e+03 - 4.3847199e+03 1.8799307e+03 -2.3652752e+03 - 4.3151001e+03 1.9796564e+03 -2.3839043e+03 - 4.2406132e+03 2.0827154e+03 -2.4021099e+03 - 4.1611426e+03 2.1890233e+03 -2.4196689e+03 - 4.0766280e+03 2.2984238e+03 -2.4363415e+03 - 3.9870783e+03 2.4106802e+03 -2.4518761e+03 - 3.8925834e+03 2.5254694e+03 -2.4660158e+03 - 3.7933253e+03 2.6423793e+03 -2.4785073e+03 - 3.6895842e+03 2.7609111e+03 -2.4891100e+03 - 3.5817412e+03 2.8804864e+03 -2.4976074e+03 - 3.4702748e+03 3.0004606e+03 -2.5038170e+03 - 3.3557516e+03 3.1201410e+03 -2.5076005e+03 - 3.2388103e+03 3.2388103e+03 -2.5088714e+03 - 3.1201410e+03 3.3557516e+03 -2.5076005e+03 - 3.0004606e+03 3.4702748e+03 -2.5038170e+03 - 2.8804864e+03 3.5817412e+03 -2.4976074e+03 - 2.7609111e+03 3.6895842e+03 -2.4891100e+03 - 2.6423793e+03 3.7933253e+03 -2.4785073e+03 - 2.5254694e+03 3.8925834e+03 -2.4660158e+03 - 2.4106802e+03 3.9870783e+03 -2.4518761e+03 - 2.2984238e+03 4.0766280e+03 -2.4363415e+03 - 2.1890233e+03 4.1611426e+03 -2.4196689e+03 - 2.0827154e+03 4.2406132e+03 -2.4021099e+03 - 1.9796564e+03 4.3151001e+03 -2.3839043e+03 - 1.8799307e+03 4.3847199e+03 -2.3652752e+03 - 1.7835607e+03 4.4496324e+03 -2.3464260e+03 - 1.6905168e+03 4.5100287e+03 -2.3275384e+03 - 1.6007278e+03 4.5661212e+03 -2.3087721e+03 - 1.5140901e+03 4.6181338e+03 -2.2902652e+03 - 1.4304755e+03 4.6662953e+03 -2.2721355e+03 - 1.3497391e+03 4.7108333e+03 -2.2544821e+03 - 1.2717246e+03 4.7519698e+03 -2.2373872e+03 - 1.1962697e+03 4.7899181e+03 -2.2209177e+03 - 1.1232092e+03 4.8248805e+03 -2.2051278e+03 - 1.0523788e+03 4.8570469e+03 -2.1900604e+03 - 9.8361646e+02 4.8865941e+03 -2.1757486e+03 - 9.1676451e+02 4.9136856e+03 -2.1622179e+03 - 8.5167041e+02 4.9384714e+03 -2.1494870e+03 - 7.8818749e+02 4.9610885e+03 -2.1375692e+03 - 7.2617523e+02 4.9816613e+03 -2.1264734e+03 - 6.6549933e+02 5.0003022e+03 -2.1162051e+03 - 6.0603161e+02 5.0171121e+03 -2.1067672e+03 - 5.4764974e+02 5.0321813e+03 -2.0981605e+03 - 4.9023694e+02 5.0455899e+03 -2.0903842e+03 - 4.3368151e+02 5.0574085e+03 -2.0834366e+03 - 3.7787641e+02 5.0676986e+03 -2.0773154e+03 - 3.2271873e+02 5.0765134e+03 -2.0720178e+03 - 2.6810923e+02 5.0838980e+03 -2.0675411e+03 - 2.1395177e+02 5.0898900e+03 -2.0638824e+03 - 1.6015284e+02 5.0945196e+03 -2.0610396e+03 - 1.0662099e+02 5.0978100e+03 -2.0590104e+03 - 5.3266327e+01 5.0997778e+03 -2.0577935e+03 - 4.8134273e-09 5.1004326e+03 -2.0573880e+03 - -5.3266327e+01 5.0997778e+03 -2.0577935e+03 - -1.0662099e+02 5.0978100e+03 -2.0590104e+03 - -1.6015284e+02 5.0945196e+03 -2.0610396e+03 - -2.1395177e+02 5.0898900e+03 -2.0638824e+03 - -2.6810923e+02 5.0838980e+03 -2.0675411e+03 - -3.2271873e+02 5.0765134e+03 -2.0720178e+03 - -3.7787641e+02 5.0676986e+03 -2.0773154e+03 - -4.3368151e+02 5.0574085e+03 -2.0834366e+03 - -4.9023694e+02 5.0455899e+03 -2.0903842e+03 - -5.4764974e+02 5.0321813e+03 -2.0981605e+03 - -6.0603161e+02 5.0171121e+03 -2.1067672e+03 - -6.6549933e+02 5.0003022e+03 -2.1162051e+03 - -7.2617523e+02 4.9816613e+03 -2.1264734e+03 - -7.8818749e+02 4.9610885e+03 -2.1375692e+03 - -8.5167041e+02 4.9384714e+03 -2.1494870e+03 - -9.1676451e+02 4.9136856e+03 -2.1622179e+03 - -9.8361646e+02 4.8865941e+03 -2.1757486e+03 - -1.0523788e+03 4.8570469e+03 -2.1900604e+03 - -1.1232092e+03 4.8248805e+03 -2.2051278e+03 - -1.1962697e+03 4.7899181e+03 -2.2209177e+03 - -1.2717246e+03 4.7519698e+03 -2.2373872e+03 - -1.3497391e+03 4.7108333e+03 -2.2544821e+03 - -1.4304755e+03 4.6662953e+03 -2.2721355e+03 - -1.5140901e+03 4.6181338e+03 -2.2902652e+03 - -1.6007278e+03 4.5661212e+03 -2.3087721e+03 - -1.6905168e+03 4.5100287e+03 -2.3275384e+03 - -1.7835607e+03 4.4496324e+03 -2.3464260e+03 - -1.8799307e+03 4.3847199e+03 -2.3652752e+03 - -1.9796564e+03 4.3151001e+03 -2.3839043e+03 - -2.0827154e+03 4.2406132e+03 -2.4021099e+03 - -2.1890233e+03 4.1611426e+03 -2.4196689e+03 - -2.2984238e+03 4.0766280e+03 -2.4363415e+03 - -2.4106802e+03 3.9870783e+03 -2.4518761e+03 - -2.5254694e+03 3.8925834e+03 -2.4660158e+03 - -2.6423793e+03 3.7933253e+03 -2.4785073e+03 - -2.7609111e+03 3.6895842e+03 -2.4891100e+03 - -2.8804864e+03 3.5817412e+03 -2.4976074e+03 - -3.0004606e+03 3.4702748e+03 -2.5038170e+03 - -3.1201410e+03 3.3557516e+03 -2.5076005e+03 - -3.2388103e+03 3.2388103e+03 -2.5088714e+03 - -3.3557516e+03 3.1201410e+03 -2.5076005e+03 - -3.4702748e+03 3.0004606e+03 -2.5038170e+03 - -3.5817412e+03 2.8804864e+03 -2.4976074e+03 - -3.6895842e+03 2.7609111e+03 -2.4891100e+03 - -3.7933253e+03 2.6423793e+03 -2.4785073e+03 - -3.8925834e+03 2.5254694e+03 -2.4660158e+03 - -3.9870783e+03 2.4106802e+03 -2.4518761e+03 - -4.0766280e+03 2.2984238e+03 -2.4363415e+03 - -4.1611426e+03 2.1890233e+03 -2.4196689e+03 - -4.2406132e+03 2.0827154e+03 -2.4021099e+03 - -4.3151001e+03 1.9796564e+03 -2.3839043e+03 - -4.3847199e+03 1.8799307e+03 -2.3652752e+03 - -4.4496324e+03 1.7835607e+03 -2.3464260e+03 - -4.5100287e+03 1.6905168e+03 -2.3275384e+03 - -4.5661212e+03 1.6007278e+03 -2.3087721e+03 - -4.6181338e+03 1.5140901e+03 -2.2902652e+03 - -4.6662953e+03 1.4304755e+03 -2.2721355e+03 - -4.7108333e+03 1.3497391e+03 -2.2544821e+03 - -4.7519698e+03 1.2717246e+03 -2.2373872e+03 - -4.7899181e+03 1.1962697e+03 -2.2209177e+03 - -4.8248805e+03 1.1232092e+03 -2.2051278e+03 - -4.8570469e+03 1.0523788e+03 -2.1900604e+03 - -4.8865941e+03 9.8361646e+02 -2.1757486e+03 - -4.9136856e+03 9.1676451e+02 -2.1622179e+03 - -4.9384714e+03 8.5167041e+02 -2.1494870e+03 - -4.9610885e+03 7.8818749e+02 -2.1375692e+03 - -4.9816613e+03 7.2617523e+02 -2.1264734e+03 - -5.0003022e+03 6.6549933e+02 -2.1162051e+03 - -5.0171121e+03 6.0603161e+02 -2.1067672e+03 - -5.0321813e+03 5.4764974e+02 -2.0981605e+03 - -5.0455899e+03 4.9023694e+02 -2.0903842e+03 - -5.0574085e+03 4.3368151e+02 -2.0834366e+03 - -5.0676986e+03 3.7787641e+02 -2.0773154e+03 - -5.0765134e+03 3.2271873e+02 -2.0720178e+03 - -5.0838980e+03 2.6810923e+02 -2.0675411e+03 - -5.0898900e+03 2.1395177e+02 -2.0638824e+03 - -5.0945196e+03 1.6015284e+02 -2.0610396e+03 - -5.0978100e+03 1.0662099e+02 -2.0590104e+03 - -5.0997778e+03 5.3266327e+01 -2.0577935e+03 - -5.1004326e+03 4.8134273e-09 -2.0573880e+03 - -5.0997778e+03 -5.3266327e+01 -2.0577935e+03 - -5.0978100e+03 -1.0662099e+02 -2.0590104e+03 - -5.0945196e+03 -1.6015284e+02 -2.0610396e+03 - -5.0898900e+03 -2.1395177e+02 -2.0638824e+03 - -5.0838980e+03 -2.6810923e+02 -2.0675411e+03 - -5.0765134e+03 -3.2271873e+02 -2.0720178e+03 - -5.0676986e+03 -3.7787641e+02 -2.0773154e+03 - -5.0574085e+03 -4.3368151e+02 -2.0834366e+03 - -5.0455899e+03 -4.9023694e+02 -2.0903842e+03 - -5.0321813e+03 -5.4764974e+02 -2.0981605e+03 - -5.0171121e+03 -6.0603161e+02 -2.1067672e+03 - -5.0003022e+03 -6.6549933e+02 -2.1162051e+03 - -4.9816613e+03 -7.2617523e+02 -2.1264734e+03 - -4.9610885e+03 -7.8818749e+02 -2.1375692e+03 - -4.9384714e+03 -8.5167041e+02 -2.1494870e+03 - -4.9136856e+03 -9.1676451e+02 -2.1622179e+03 - -4.8865941e+03 -9.8361646e+02 -2.1757486e+03 - -4.8570469e+03 -1.0523788e+03 -2.1900604e+03 - -4.8248805e+03 -1.1232092e+03 -2.2051278e+03 - -4.7899181e+03 -1.1962697e+03 -2.2209177e+03 - -4.7519698e+03 -1.2717246e+03 -2.2373872e+03 - -4.7108333e+03 -1.3497391e+03 -2.2544821e+03 - -4.6662953e+03 -1.4304755e+03 -2.2721355e+03 - -4.6181338e+03 -1.5140901e+03 -2.2902652e+03 - -4.5661212e+03 -1.6007278e+03 -2.3087721e+03 - -4.5100287e+03 -1.6905168e+03 -2.3275384e+03 - -4.4496324e+03 -1.7835607e+03 -2.3464260e+03 - -4.3847199e+03 -1.8799307e+03 -2.3652752e+03 - -4.3151001e+03 -1.9796564e+03 -2.3839043e+03 - -4.2406132e+03 -2.0827154e+03 -2.4021099e+03 - -4.1611426e+03 -2.1890233e+03 -2.4196689e+03 - -4.0766280e+03 -2.2984238e+03 -2.4363415e+03 - -3.9870783e+03 -2.4106802e+03 -2.4518761e+03 - -3.8925834e+03 -2.5254694e+03 -2.4660158e+03 - -3.7933253e+03 -2.6423793e+03 -2.4785073e+03 - -3.6895842e+03 -2.7609111e+03 -2.4891100e+03 - -3.5817412e+03 -2.8804864e+03 -2.4976074e+03 - -3.4702748e+03 -3.0004606e+03 -2.5038170e+03 - -3.3557516e+03 -3.1201410e+03 -2.5076005e+03 - -3.2388103e+03 -3.2388103e+03 -2.5088714e+03 - -3.1201410e+03 -3.3557516e+03 -2.5076005e+03 - -3.0004606e+03 -3.4702748e+03 -2.5038170e+03 - -2.8804864e+03 -3.5817412e+03 -2.4976074e+03 - -2.7609111e+03 -3.6895842e+03 -2.4891100e+03 - -2.6423793e+03 -3.7933253e+03 -2.4785073e+03 - -2.5254694e+03 -3.8925834e+03 -2.4660158e+03 - -2.4106802e+03 -3.9870783e+03 -2.4518761e+03 - -2.2984238e+03 -4.0766280e+03 -2.4363415e+03 - -2.1890233e+03 -4.1611426e+03 -2.4196689e+03 - -2.0827154e+03 -4.2406132e+03 -2.4021099e+03 - -1.9796564e+03 -4.3151001e+03 -2.3839043e+03 - -1.8799307e+03 -4.3847199e+03 -2.3652752e+03 - -1.7835607e+03 -4.4496324e+03 -2.3464260e+03 - -1.6905168e+03 -4.5100287e+03 -2.3275384e+03 - -1.6007278e+03 -4.5661212e+03 -2.3087721e+03 - -1.5140901e+03 -4.6181338e+03 -2.2902652e+03 - -1.4304755e+03 -4.6662953e+03 -2.2721355e+03 - -1.3497391e+03 -4.7108333e+03 -2.2544821e+03 - -1.2717246e+03 -4.7519698e+03 -2.2373872e+03 - -1.1962697e+03 -4.7899181e+03 -2.2209177e+03 - -1.1232092e+03 -4.8248805e+03 -2.2051278e+03 - -1.0523788e+03 -4.8570469e+03 -2.1900604e+03 - -9.8361646e+02 -4.8865941e+03 -2.1757486e+03 - -9.1676451e+02 -4.9136856e+03 -2.1622179e+03 - -8.5167041e+02 -4.9384714e+03 -2.1494870e+03 - -7.8818749e+02 -4.9610885e+03 -2.1375692e+03 - -7.2617523e+02 -4.9816613e+03 -2.1264734e+03 - -6.6549933e+02 -5.0003022e+03 -2.1162051e+03 - -6.0603161e+02 -5.0171121e+03 -2.1067672e+03 - -5.4764974e+02 -5.0321813e+03 -2.0981605e+03 - -4.9023694e+02 -5.0455899e+03 -2.0903842e+03 - -4.3368151e+02 -5.0574085e+03 -2.0834366e+03 - -3.7787641e+02 -5.0676986e+03 -2.0773154e+03 - -3.2271873e+02 -5.0765134e+03 -2.0720178e+03 - -2.6810923e+02 -5.0838980e+03 -2.0675411e+03 - -2.1395177e+02 -5.0898900e+03 -2.0638824e+03 - -1.6015284e+02 -5.0945196e+03 -2.0610396e+03 - -1.0662099e+02 -5.0978100e+03 -2.0590104e+03 - -5.3266327e+01 -5.0997778e+03 -2.0577935e+03 - 9.6268545e-09 -5.1004326e+03 -2.0573880e+03 - 5.3266327e+01 -5.0997778e+03 -2.0577935e+03 - 1.0662099e+02 -5.0978100e+03 -2.0590104e+03 - 1.6015284e+02 -5.0945196e+03 -2.0610396e+03 - 2.1395177e+02 -5.0898900e+03 -2.0638824e+03 - 2.6810923e+02 -5.0838980e+03 -2.0675411e+03 - 3.2271873e+02 -5.0765134e+03 -2.0720178e+03 - 3.7787641e+02 -5.0676986e+03 -2.0773154e+03 - 4.3368151e+02 -5.0574085e+03 -2.0834366e+03 - 4.9023694e+02 -5.0455899e+03 -2.0903842e+03 - 5.4764974e+02 -5.0321813e+03 -2.0981605e+03 - 6.0603161e+02 -5.0171121e+03 -2.1067672e+03 - 6.6549933e+02 -5.0003022e+03 -2.1162051e+03 - 7.2617523e+02 -4.9816613e+03 -2.1264734e+03 - 7.8818749e+02 -4.9610885e+03 -2.1375692e+03 - 8.5167041e+02 -4.9384714e+03 -2.1494870e+03 - 9.1676451e+02 -4.9136856e+03 -2.1622179e+03 - 9.8361646e+02 -4.8865941e+03 -2.1757486e+03 - 1.0523788e+03 -4.8570469e+03 -2.1900604e+03 - 1.1232092e+03 -4.8248805e+03 -2.2051278e+03 - 1.1962697e+03 -4.7899181e+03 -2.2209177e+03 - 1.2717246e+03 -4.7519698e+03 -2.2373872e+03 - 1.3497391e+03 -4.7108333e+03 -2.2544821e+03 - 1.4304755e+03 -4.6662953e+03 -2.2721355e+03 - 1.5140901e+03 -4.6181338e+03 -2.2902652e+03 - 1.6007278e+03 -4.5661212e+03 -2.3087721e+03 - 1.6905168e+03 -4.5100287e+03 -2.3275384e+03 - 1.7835607e+03 -4.4496324e+03 -2.3464260e+03 - 1.8799307e+03 -4.3847199e+03 -2.3652752e+03 - 1.9796564e+03 -4.3151001e+03 -2.3839043e+03 - 2.0827154e+03 -4.2406132e+03 -2.4021099e+03 - 2.1890233e+03 -4.1611426e+03 -2.4196689e+03 - 2.2984238e+03 -4.0766280e+03 -2.4363415e+03 - 2.4106802e+03 -3.9870783e+03 -2.4518761e+03 - 2.5254694e+03 -3.8925834e+03 -2.4660158e+03 - 2.6423793e+03 -3.7933253e+03 -2.4785073e+03 - 2.7609111e+03 -3.6895842e+03 -2.4891100e+03 - 2.8804864e+03 -3.5817412e+03 -2.4976074e+03 - 3.0004606e+03 -3.4702748e+03 -2.5038170e+03 - 3.1201410e+03 -3.3557516e+03 -2.5076005e+03 - 3.2388103e+03 -3.2388103e+03 -2.5088714e+03 - 3.3557516e+03 -3.1201410e+03 -2.5076005e+03 - 3.4702748e+03 -3.0004606e+03 -2.5038170e+03 - 3.5817412e+03 -2.8804864e+03 -2.4976074e+03 - 3.6895842e+03 -2.7609111e+03 -2.4891100e+03 - 3.7933253e+03 -2.6423793e+03 -2.4785073e+03 - 3.8925834e+03 -2.5254694e+03 -2.4660158e+03 - 3.9870783e+03 -2.4106802e+03 -2.4518761e+03 - 4.0766280e+03 -2.2984238e+03 -2.4363415e+03 - 4.1611426e+03 -2.1890233e+03 -2.4196689e+03 - 4.2406132e+03 -2.0827154e+03 -2.4021099e+03 - 4.3151001e+03 -1.9796564e+03 -2.3839043e+03 - 4.3847199e+03 -1.8799307e+03 -2.3652752e+03 - 4.4496324e+03 -1.7835607e+03 -2.3464260e+03 - 4.5100287e+03 -1.6905168e+03 -2.3275384e+03 - 4.5661212e+03 -1.6007278e+03 -2.3087721e+03 - 4.6181338e+03 -1.5140901e+03 -2.2902652e+03 - 4.6662953e+03 -1.4304755e+03 -2.2721355e+03 - 4.7108333e+03 -1.3497391e+03 -2.2544821e+03 - 4.7519698e+03 -1.2717246e+03 -2.2373872e+03 - 4.7899181e+03 -1.1962697e+03 -2.2209177e+03 - 4.8248805e+03 -1.1232092e+03 -2.2051278e+03 - 4.8570469e+03 -1.0523788e+03 -2.1900604e+03 - 4.8865941e+03 -9.8361646e+02 -2.1757486e+03 - 4.9136856e+03 -9.1676451e+02 -2.1622179e+03 - 4.9384714e+03 -8.5167041e+02 -2.1494870e+03 - 4.9610885e+03 -7.8818749e+02 -2.1375692e+03 - 4.9816613e+03 -7.2617523e+02 -2.1264734e+03 - 5.0003022e+03 -6.6549933e+02 -2.1162051e+03 - 5.0171121e+03 -6.0603161e+02 -2.1067672e+03 - 5.0321813e+03 -5.4764974e+02 -2.0981605e+03 - 5.0455899e+03 -4.9023694e+02 -2.0903842e+03 - 5.0574085e+03 -4.3368151e+02 -2.0834366e+03 - 5.0676986e+03 -3.7787641e+02 -2.0773154e+03 - 5.0765134e+03 -3.2271873e+02 -2.0720178e+03 - 5.0838980e+03 -2.6810923e+02 -2.0675411e+03 - 5.0898900e+03 -2.1395177e+02 -2.0638824e+03 - 5.0945196e+03 -1.6015284e+02 -2.0610396e+03 - 5.0978100e+03 -1.0662099e+02 -2.0590104e+03 - 5.0997778e+03 -5.3266327e+01 -2.0577935e+03 - 5.1004326e+03 0.0000000e+00 -2.0573880e+03 - 5.0677971e+03 4.8134273e-09 -2.1545901e+03 - 5.0671301e+03 5.3530525e+01 -2.1549976e+03 - 5.0651260e+03 1.0714911e+02 -2.1562202e+03 - 5.0617750e+03 1.6094432e+02 -2.1582587e+03 - 5.0570607e+03 2.1500570e+02 -2.1611142e+03 - 5.0509600e+03 2.6942426e+02 -2.1647882e+03 - 5.0434428e+03 3.2429298e+02 -2.1692823e+03 - 5.0344718e+03 3.7970733e+02 -2.1745985e+03 - 5.0240024e+03 4.3576570e+02 -2.1807384e+03 - 5.0119817e+03 4.9256991e+02 -2.1877037e+03 - 4.9983490e+03 5.5022567e+02 -2.1954953e+03 - 4.9830344e+03 6.0884301e+02 -2.2041134e+03 - 4.9659589e+03 6.6853669e+02 -2.2135570e+03 - 4.9470339e+03 7.2942656e+02 -2.2238232e+03 - 4.9261602e+03 7.9163779e+02 -2.2349071e+03 - 4.9032277e+03 8.5530109e+02 -2.2468008e+03 - 4.8781151e+03 9.2055268e+02 -2.2594927e+03 - 4.8506890e+03 9.8753415e+02 -2.2729667e+03 - 4.8208039e+03 1.0563920e+03 -2.2872014e+03 - 4.7883019e+03 1.1272771e+03 -2.3021682e+03 - 4.7530130e+03 1.2003432e+03 -2.3178309e+03 - 4.7147551e+03 1.2757456e+03 -2.3341436e+03 - 4.6733356e+03 1.3536389e+03 -2.3510494e+03 - 4.6285524e+03 1.4341739e+03 -2.3684785e+03 - 4.5801963e+03 1.5174939e+03 -2.3863468e+03 - 4.5280547e+03 1.6037301e+03 -2.4045539e+03 - 4.4719152e+03 1.6929960e+03 -2.4229815e+03 - 4.4115721e+03 1.7853803e+03 -2.4414922e+03 - 4.3468327e+03 1.8809395e+03 -2.4599287e+03 - 4.2775262e+03 1.9796894e+03 -2.4781132e+03 - 4.2035131e+03 2.0815958e+03 -2.4958487e+03 - 4.1246966e+03 2.1865654e+03 -2.5129202e+03 - 4.0410334e+03 2.2944376e+03 -2.5290985e+03 - 3.9525462e+03 2.4049766e+03 -2.5441445e+03 - 3.8593336e+03 2.5178671e+03 -2.5578158e+03 - 3.7615793e+03 2.6327123e+03 -2.5698744e+03 - 3.6595574e+03 2.7490365e+03 -2.5800955e+03 - 3.5536343e+03 2.8662924e+03 -2.5882775e+03 - 3.4442648e+03 2.9838731e+03 -2.5942513e+03 - 3.3319833e+03 3.1011292e+03 -2.5978889e+03 - 3.2173894e+03 3.2173894e+03 -2.5991104e+03 - 3.1011292e+03 3.3319833e+03 -2.5978889e+03 - 2.9838731e+03 3.4442648e+03 -2.5942513e+03 - 2.8662924e+03 3.5536343e+03 -2.5882775e+03 - 2.7490365e+03 3.6595574e+03 -2.5800955e+03 - 2.6327123e+03 3.7615793e+03 -2.5698744e+03 - 2.5178671e+03 3.8593336e+03 -2.5578158e+03 - 2.4049766e+03 3.9525462e+03 -2.5441445e+03 - 2.2944376e+03 4.0410334e+03 -2.5290985e+03 - 2.1865654e+03 4.1246966e+03 -2.5129202e+03 - 2.0815958e+03 4.2035131e+03 -2.4958487e+03 - 1.9796894e+03 4.2775262e+03 -2.4781132e+03 - 1.8809395e+03 4.3468327e+03 -2.4599287e+03 - 1.7853803e+03 4.4115721e+03 -2.4414922e+03 - 1.6929960e+03 4.4719152e+03 -2.4229815e+03 - 1.6037301e+03 4.5280547e+03 -2.4045539e+03 - 1.5174939e+03 4.5801963e+03 -2.3863468e+03 - 1.4341739e+03 4.6285524e+03 -2.3684785e+03 - 1.3536389e+03 4.6733356e+03 -2.3510494e+03 - 1.2757456e+03 4.7147551e+03 -2.3341436e+03 - 1.2003432e+03 4.7530130e+03 -2.3178309e+03 - 1.1272771e+03 4.7883019e+03 -2.3021682e+03 - 1.0563920e+03 4.8208039e+03 -2.2872014e+03 - 9.8753415e+02 4.8506890e+03 -2.2729667e+03 - 9.2055268e+02 4.8781151e+03 -2.2594927e+03 - 8.5530109e+02 4.9032277e+03 -2.2468008e+03 - 7.9163779e+02 4.9261602e+03 -2.2349071e+03 - 7.2942656e+02 4.9470339e+03 -2.2238232e+03 - 6.6853669e+02 4.9659589e+03 -2.2135570e+03 - 6.0884301e+02 4.9830344e+03 -2.2041134e+03 - 5.5022567e+02 4.9983490e+03 -2.1954953e+03 - 4.9256991e+02 5.0119817e+03 -2.1877037e+03 - 4.3576570e+02 5.0240024e+03 -2.1807384e+03 - 3.7970733e+02 5.0344718e+03 -2.1745985e+03 - 3.2429298e+02 5.0434428e+03 -2.1692823e+03 - 2.6942426e+02 5.0509600e+03 -2.1647882e+03 - 2.1500570e+02 5.0570607e+03 -2.1611142e+03 - 1.6094432e+02 5.0617750e+03 -2.1582587e+03 - 1.0714911e+02 5.0651260e+03 -2.1562202e+03 - 5.3530525e+01 5.0671301e+03 -2.1549976e+03 - 9.6268545e-09 5.0677971e+03 -2.1545901e+03 - -5.3530525e+01 5.0671301e+03 -2.1549976e+03 - -1.0714911e+02 5.0651260e+03 -2.1562202e+03 - -1.6094432e+02 5.0617750e+03 -2.1582587e+03 - -2.1500570e+02 5.0570607e+03 -2.1611142e+03 - -2.6942426e+02 5.0509600e+03 -2.1647882e+03 - -3.2429298e+02 5.0434428e+03 -2.1692823e+03 - -3.7970733e+02 5.0344718e+03 -2.1745985e+03 - -4.3576570e+02 5.0240024e+03 -2.1807384e+03 - -4.9256991e+02 5.0119817e+03 -2.1877037e+03 - -5.5022567e+02 4.9983490e+03 -2.1954953e+03 - -6.0884301e+02 4.9830344e+03 -2.2041134e+03 - -6.6853669e+02 4.9659589e+03 -2.2135570e+03 - -7.2942656e+02 4.9470339e+03 -2.2238232e+03 - -7.9163779e+02 4.9261602e+03 -2.2349071e+03 - -8.5530109e+02 4.9032277e+03 -2.2468008e+03 - -9.2055268e+02 4.8781151e+03 -2.2594927e+03 - -9.8753415e+02 4.8506890e+03 -2.2729667e+03 - -1.0563920e+03 4.8208039e+03 -2.2872014e+03 - -1.1272771e+03 4.7883019e+03 -2.3021682e+03 - -1.2003432e+03 4.7530130e+03 -2.3178309e+03 - -1.2757456e+03 4.7147551e+03 -2.3341436e+03 - -1.3536389e+03 4.6733356e+03 -2.3510494e+03 - -1.4341739e+03 4.6285524e+03 -2.3684785e+03 - -1.5174939e+03 4.5801963e+03 -2.3863468e+03 - -1.6037301e+03 4.5280547e+03 -2.4045539e+03 - -1.6929960e+03 4.4719152e+03 -2.4229815e+03 - -1.7853803e+03 4.4115721e+03 -2.4414922e+03 - -1.8809395e+03 4.3468327e+03 -2.4599287e+03 - -1.9796894e+03 4.2775262e+03 -2.4781132e+03 - -2.0815958e+03 4.2035131e+03 -2.4958487e+03 - -2.1865654e+03 4.1246966e+03 -2.5129202e+03 - -2.2944376e+03 4.0410334e+03 -2.5290985e+03 - -2.4049766e+03 3.9525462e+03 -2.5441445e+03 - -2.5178671e+03 3.8593336e+03 -2.5578158e+03 - -2.6327123e+03 3.7615793e+03 -2.5698744e+03 - -2.7490365e+03 3.6595574e+03 -2.5800955e+03 - -2.8662924e+03 3.5536343e+03 -2.5882775e+03 - -2.9838731e+03 3.4442648e+03 -2.5942513e+03 - -3.1011292e+03 3.3319833e+03 -2.5978889e+03 - -3.2173894e+03 3.2173894e+03 -2.5991104e+03 - -3.3319833e+03 3.1011292e+03 -2.5978889e+03 - -3.4442648e+03 2.9838731e+03 -2.5942513e+03 - -3.5536343e+03 2.8662924e+03 -2.5882775e+03 - -3.6595574e+03 2.7490365e+03 -2.5800955e+03 - -3.7615793e+03 2.6327123e+03 -2.5698744e+03 - -3.8593336e+03 2.5178671e+03 -2.5578158e+03 - -3.9525462e+03 2.4049766e+03 -2.5441445e+03 - -4.0410334e+03 2.2944376e+03 -2.5290985e+03 - -4.1246966e+03 2.1865654e+03 -2.5129202e+03 - -4.2035131e+03 2.0815958e+03 -2.4958487e+03 - -4.2775262e+03 1.9796894e+03 -2.4781132e+03 - -4.3468327e+03 1.8809395e+03 -2.4599287e+03 - -4.4115721e+03 1.7853803e+03 -2.4414922e+03 - -4.4719152e+03 1.6929960e+03 -2.4229815e+03 - -4.5280547e+03 1.6037301e+03 -2.4045539e+03 - -4.5801963e+03 1.5174939e+03 -2.3863468e+03 - -4.6285524e+03 1.4341739e+03 -2.3684785e+03 - -4.6733356e+03 1.3536389e+03 -2.3510494e+03 - -4.7147551e+03 1.2757456e+03 -2.3341436e+03 - -4.7530130e+03 1.2003432e+03 -2.3178309e+03 - -4.7883019e+03 1.1272771e+03 -2.3021682e+03 - -4.8208039e+03 1.0563920e+03 -2.2872014e+03 - -4.8506890e+03 9.8753415e+02 -2.2729667e+03 - -4.8781151e+03 9.2055268e+02 -2.2594927e+03 - -4.9032277e+03 8.5530109e+02 -2.2468008e+03 - -4.9261602e+03 7.9163779e+02 -2.2349071e+03 - -4.9470339e+03 7.2942656e+02 -2.2238232e+03 - -4.9659589e+03 6.6853669e+02 -2.2135570e+03 - -4.9830344e+03 6.0884301e+02 -2.2041134e+03 - -4.9983490e+03 5.5022567e+02 -2.1954953e+03 - -5.0119817e+03 4.9256991e+02 -2.1877037e+03 - -5.0240024e+03 4.3576570e+02 -2.1807384e+03 - -5.0344718e+03 3.7970733e+02 -2.1745985e+03 - -5.0434428e+03 3.2429298e+02 -2.1692823e+03 - -5.0509600e+03 2.6942426e+02 -2.1647882e+03 - -5.0570607e+03 2.1500570e+02 -2.1611142e+03 - -5.0617750e+03 1.6094432e+02 -2.1582587e+03 - -5.0651260e+03 1.0714911e+02 -2.1562202e+03 - -5.0671301e+03 5.3530525e+01 -2.1549976e+03 - -5.0677971e+03 0.0000000e+00 -2.1545901e+03 - -5.0671301e+03 -5.3530525e+01 -2.1549976e+03 - -5.0651260e+03 -1.0714911e+02 -2.1562202e+03 - -5.0617750e+03 -1.6094432e+02 -2.1582587e+03 - -5.0570607e+03 -2.1500570e+02 -2.1611142e+03 - -5.0509600e+03 -2.6942426e+02 -2.1647882e+03 - -5.0434428e+03 -3.2429298e+02 -2.1692823e+03 - -5.0344718e+03 -3.7970733e+02 -2.1745985e+03 - -5.0240024e+03 -4.3576570e+02 -2.1807384e+03 - -5.0119817e+03 -4.9256991e+02 -2.1877037e+03 - -4.9983490e+03 -5.5022567e+02 -2.1954953e+03 - -4.9830344e+03 -6.0884301e+02 -2.2041134e+03 - -4.9659589e+03 -6.6853669e+02 -2.2135570e+03 - -4.9470339e+03 -7.2942656e+02 -2.2238232e+03 - -4.9261602e+03 -7.9163779e+02 -2.2349071e+03 - -4.9032277e+03 -8.5530109e+02 -2.2468008e+03 - -4.8781151e+03 -9.2055268e+02 -2.2594927e+03 - -4.8506890e+03 -9.8753415e+02 -2.2729667e+03 - -4.8208039e+03 -1.0563920e+03 -2.2872014e+03 - -4.7883019e+03 -1.1272771e+03 -2.3021682e+03 - -4.7530130e+03 -1.2003432e+03 -2.3178309e+03 - -4.7147551e+03 -1.2757456e+03 -2.3341436e+03 - -4.6733356e+03 -1.3536389e+03 -2.3510494e+03 - -4.6285524e+03 -1.4341739e+03 -2.3684785e+03 - -4.5801963e+03 -1.5174939e+03 -2.3863468e+03 - -4.5280547e+03 -1.6037301e+03 -2.4045539e+03 - -4.4719152e+03 -1.6929960e+03 -2.4229815e+03 - -4.4115721e+03 -1.7853803e+03 -2.4414922e+03 - -4.3468327e+03 -1.8809395e+03 -2.4599287e+03 - -4.2775262e+03 -1.9796894e+03 -2.4781132e+03 - -4.2035131e+03 -2.0815958e+03 -2.4958487e+03 - -4.1246966e+03 -2.1865654e+03 -2.5129202e+03 - -4.0410334e+03 -2.2944376e+03 -2.5290985e+03 - -3.9525462e+03 -2.4049766e+03 -2.5441445e+03 - -3.8593336e+03 -2.5178671e+03 -2.5578158e+03 - -3.7615793e+03 -2.6327123e+03 -2.5698744e+03 - -3.6595574e+03 -2.7490365e+03 -2.5800955e+03 - -3.5536343e+03 -2.8662924e+03 -2.5882775e+03 - -3.4442648e+03 -2.9838731e+03 -2.5942513e+03 - -3.3319833e+03 -3.1011292e+03 -2.5978889e+03 - -3.2173894e+03 -3.2173894e+03 -2.5991104e+03 - -3.1011292e+03 -3.3319833e+03 -2.5978889e+03 - -2.9838731e+03 -3.4442648e+03 -2.5942513e+03 - -2.8662924e+03 -3.5536343e+03 -2.5882775e+03 - -2.7490365e+03 -3.6595574e+03 -2.5800955e+03 - -2.6327123e+03 -3.7615793e+03 -2.5698744e+03 - -2.5178671e+03 -3.8593336e+03 -2.5578158e+03 - -2.4049766e+03 -3.9525462e+03 -2.5441445e+03 - -2.2944376e+03 -4.0410334e+03 -2.5290985e+03 - -2.1865654e+03 -4.1246966e+03 -2.5129202e+03 - -2.0815958e+03 -4.2035131e+03 -2.4958487e+03 - -1.9796894e+03 -4.2775262e+03 -2.4781132e+03 - -1.8809395e+03 -4.3468327e+03 -2.4599287e+03 - -1.7853803e+03 -4.4115721e+03 -2.4414922e+03 - -1.6929960e+03 -4.4719152e+03 -2.4229815e+03 - -1.6037301e+03 -4.5280547e+03 -2.4045539e+03 - -1.5174939e+03 -4.5801963e+03 -2.3863468e+03 - -1.4341739e+03 -4.6285524e+03 -2.3684785e+03 - -1.3536389e+03 -4.6733356e+03 -2.3510494e+03 - -1.2757456e+03 -4.7147551e+03 -2.3341436e+03 - -1.2003432e+03 -4.7530130e+03 -2.3178309e+03 - -1.1272771e+03 -4.7883019e+03 -2.3021682e+03 - -1.0563920e+03 -4.8208039e+03 -2.2872014e+03 - -9.8753415e+02 -4.8506890e+03 -2.2729667e+03 - -9.2055268e+02 -4.8781151e+03 -2.2594927e+03 - -8.5530109e+02 -4.9032277e+03 -2.2468008e+03 - -7.9163779e+02 -4.9261602e+03 -2.2349071e+03 - -7.2942656e+02 -4.9470339e+03 -2.2238232e+03 - -6.6853669e+02 -4.9659589e+03 -2.2135570e+03 - -6.0884301e+02 -4.9830344e+03 -2.2041134e+03 - -5.5022567e+02 -4.9983490e+03 -2.1954953e+03 - -4.9256991e+02 -5.0119817e+03 -2.1877037e+03 - -4.3576570e+02 -5.0240024e+03 -2.1807384e+03 - -3.7970733e+02 -5.0344718e+03 -2.1745985e+03 - -3.2429298e+02 -5.0434428e+03 -2.1692823e+03 - -2.6942426e+02 -5.0509600e+03 -2.1647882e+03 - -2.1500570e+02 -5.0570607e+03 -2.1611142e+03 - -1.6094432e+02 -5.0617750e+03 -2.1582587e+03 - -1.0714911e+02 -5.0651260e+03 -2.1562202e+03 - -5.3530525e+01 -5.0671301e+03 -2.1549976e+03 - -4.8134273e-09 -5.0677971e+03 -2.1545901e+03 - 5.3530525e+01 -5.0671301e+03 -2.1549976e+03 - 1.0714911e+02 -5.0651260e+03 -2.1562202e+03 - 1.6094432e+02 -5.0617750e+03 -2.1582587e+03 - 2.1500570e+02 -5.0570607e+03 -2.1611142e+03 - 2.6942426e+02 -5.0509600e+03 -2.1647882e+03 - 3.2429298e+02 -5.0434428e+03 -2.1692823e+03 - 3.7970733e+02 -5.0344718e+03 -2.1745985e+03 - 4.3576570e+02 -5.0240024e+03 -2.1807384e+03 - 4.9256991e+02 -5.0119817e+03 -2.1877037e+03 - 5.5022567e+02 -4.9983490e+03 -2.1954953e+03 - 6.0884301e+02 -4.9830344e+03 -2.2041134e+03 - 6.6853669e+02 -4.9659589e+03 -2.2135570e+03 - 7.2942656e+02 -4.9470339e+03 -2.2238232e+03 - 7.9163779e+02 -4.9261602e+03 -2.2349071e+03 - 8.5530109e+02 -4.9032277e+03 -2.2468008e+03 - 9.2055268e+02 -4.8781151e+03 -2.2594927e+03 - 9.8753415e+02 -4.8506890e+03 -2.2729667e+03 - 1.0563920e+03 -4.8208039e+03 -2.2872014e+03 - 1.1272771e+03 -4.7883019e+03 -2.3021682e+03 - 1.2003432e+03 -4.7530130e+03 -2.3178309e+03 - 1.2757456e+03 -4.7147551e+03 -2.3341436e+03 - 1.3536389e+03 -4.6733356e+03 -2.3510494e+03 - 1.4341739e+03 -4.6285524e+03 -2.3684785e+03 - 1.5174939e+03 -4.5801963e+03 -2.3863468e+03 - 1.6037301e+03 -4.5280547e+03 -2.4045539e+03 - 1.6929960e+03 -4.4719152e+03 -2.4229815e+03 - 1.7853803e+03 -4.4115721e+03 -2.4414922e+03 - 1.8809395e+03 -4.3468327e+03 -2.4599287e+03 - 1.9796894e+03 -4.2775262e+03 -2.4781132e+03 - 2.0815958e+03 -4.2035131e+03 -2.4958487e+03 - 2.1865654e+03 -4.1246966e+03 -2.5129202e+03 - 2.2944376e+03 -4.0410334e+03 -2.5290985e+03 - 2.4049766e+03 -3.9525462e+03 -2.5441445e+03 - 2.5178671e+03 -3.8593336e+03 -2.5578158e+03 - 2.6327123e+03 -3.7615793e+03 -2.5698744e+03 - 2.7490365e+03 -3.6595574e+03 -2.5800955e+03 - 2.8662924e+03 -3.5536343e+03 -2.5882775e+03 - 2.9838731e+03 -3.4442648e+03 -2.5942513e+03 - 3.1011292e+03 -3.3319833e+03 -2.5978889e+03 - 3.2173894e+03 -3.2173894e+03 -2.5991104e+03 - 3.3319833e+03 -3.1011292e+03 -2.5978889e+03 - 3.4442648e+03 -2.9838731e+03 -2.5942513e+03 - 3.5536343e+03 -2.8662924e+03 -2.5882775e+03 - 3.6595574e+03 -2.7490365e+03 -2.5800955e+03 - 3.7615793e+03 -2.6327123e+03 -2.5698744e+03 - 3.8593336e+03 -2.5178671e+03 -2.5578158e+03 - 3.9525462e+03 -2.4049766e+03 -2.5441445e+03 - 4.0410334e+03 -2.2944376e+03 -2.5290985e+03 - 4.1246966e+03 -2.1865654e+03 -2.5129202e+03 - 4.2035131e+03 -2.0815958e+03 -2.4958487e+03 - 4.2775262e+03 -1.9796894e+03 -2.4781132e+03 - 4.3468327e+03 -1.8809395e+03 -2.4599287e+03 - 4.4115721e+03 -1.7853803e+03 -2.4414922e+03 - 4.4719152e+03 -1.6929960e+03 -2.4229815e+03 - 4.5280547e+03 -1.6037301e+03 -2.4045539e+03 - 4.5801963e+03 -1.5174939e+03 -2.3863468e+03 - 4.6285524e+03 -1.4341739e+03 -2.3684785e+03 - 4.6733356e+03 -1.3536389e+03 -2.3510494e+03 - 4.7147551e+03 -1.2757456e+03 -2.3341436e+03 - 4.7530130e+03 -1.2003432e+03 -2.3178309e+03 - 4.7883019e+03 -1.1272771e+03 -2.3021682e+03 - 4.8208039e+03 -1.0563920e+03 -2.2872014e+03 - 4.8506890e+03 -9.8753415e+02 -2.2729667e+03 - 4.8781151e+03 -9.2055268e+02 -2.2594927e+03 - 4.9032277e+03 -8.5530109e+02 -2.2468008e+03 - 4.9261602e+03 -7.9163779e+02 -2.2349071e+03 - 4.9470339e+03 -7.2942656e+02 -2.2238232e+03 - 4.9659589e+03 -6.6853669e+02 -2.2135570e+03 - 4.9830344e+03 -6.0884301e+02 -2.2041134e+03 - 4.9983490e+03 -5.5022567e+02 -2.1954953e+03 - 5.0119817e+03 -4.9256991e+02 -2.1877037e+03 - 5.0240024e+03 -4.3576570e+02 -2.1807384e+03 - 5.0344718e+03 -3.7970733e+02 -2.1745985e+03 - 5.0434428e+03 -3.2429298e+02 -2.1692823e+03 - 5.0509600e+03 -2.6942426e+02 -2.1647882e+03 - 5.0570607e+03 -2.1500570e+02 -2.1611142e+03 - 5.0617750e+03 -1.6094432e+02 -2.1582587e+03 - 5.0651260e+03 -1.0714911e+02 -2.1562202e+03 - 5.0671301e+03 -5.3530525e+01 -2.1549976e+03 - 5.0677971e+03 0.0000000e+00 -2.1545901e+03 - 5.0343671e+03 4.8134273e-09 -2.2480363e+03 - 5.0336885e+03 5.3793728e+01 -2.2484438e+03 - 5.0316496e+03 1.0767516e+02 -2.2496665e+03 - 5.0282405e+03 1.6173245e+02 -2.2517048e+03 - 5.0234451e+03 2.1605471e+02 -2.2545595e+03 - 5.0172405e+03 2.7073242e+02 -2.2582316e+03 - 5.0095967e+03 3.2585795e+02 -2.2627221e+03 - 5.0004768e+03 3.8152594e+02 -2.2680319e+03 - 4.9898366e+03 4.3783385e+02 -2.2741618e+03 - 4.9776239e+03 4.9488229e+02 -2.2811122e+03 - 4.9637786e+03 5.5277552e+02 -2.2888828e+03 - 4.9482320e+03 6.1162179e+02 -2.2974721e+03 - 4.9309063e+03 6.7153371e+02 -2.3068773e+03 - 4.9117144e+03 7.3262851e+02 -2.3170939e+03 - 4.8905593e+03 7.9502825e+02 -2.3281146e+03 - 4.8673335e+03 8.5885991e+02 -2.3399293e+03 - 4.8419186e+03 9.2425533e+02 -2.3525241e+03 - 4.8141853e+03 9.9135092e+02 -2.3658803e+03 - 4.7839927e+03 1.0602872e+03 -2.3799736e+03 - 4.7511887e+03 1.1312080e+03 -2.3947730e+03 - 4.7156099e+03 1.2042591e+03 -2.4102394e+03 - 4.6770826e+03 1.2795867e+03 -2.4263243e+03 - 4.6354236e+03 1.3573351e+03 -2.4429686e+03 - 4.5904417e+03 1.4376440e+03 -2.4601004e+03 - 4.5419406e+03 1.5206443e+03 -2.4776344e+03 - 4.4897218e+03 1.6064540e+03 -2.4954693e+03 - 4.4335891e+03 1.6951727e+03 -2.5134872e+03 - 4.3733538e+03 1.7868753e+03 -2.5315525e+03 - 4.3088417e+03 1.8816046e+03 -2.5495109e+03 - 4.2399009e+03 1.9793640e+03 -2.5671896e+03 - 4.1664108e+03 2.0801088e+03 -2.5843985e+03 - 4.0882921e+03 2.1837383e+03 -2.6009315e+03 - 4.0055170e+03 2.2900885e+03 -2.6165704e+03 - 3.9181198e+03 2.3989256e+03 -2.6310890e+03 - 3.8262062e+03 2.5099425e+03 -2.6442593e+03 - 3.7299601e+03 2.6227574e+03 -2.6558586e+03 - 3.6296492e+03 2.7369170e+03 -2.6656775e+03 - 3.5256251e+03 2.8519035e+03 -2.6735289e+03 - 3.4183196e+03 2.9671454e+03 -2.6792564e+03 - 3.3082369e+03 3.0820338e+03 -2.6827420e+03 - 3.1959400e+03 3.1959400e+03 -2.6839122e+03 - 3.0820338e+03 3.3082369e+03 -2.6827420e+03 - 2.9671454e+03 3.4183196e+03 -2.6792564e+03 - 2.8519035e+03 3.5256251e+03 -2.6735289e+03 - 2.7369170e+03 3.6296492e+03 -2.6656775e+03 - 2.6227574e+03 3.7299601e+03 -2.6558586e+03 - 2.5099425e+03 3.8262062e+03 -2.6442593e+03 - 2.3989256e+03 3.9181198e+03 -2.6310890e+03 - 2.2900885e+03 4.0055170e+03 -2.6165704e+03 - 2.1837383e+03 4.0882921e+03 -2.6009315e+03 - 2.0801088e+03 4.1664108e+03 -2.5843985e+03 - 1.9793640e+03 4.2399009e+03 -2.5671896e+03 - 1.8816046e+03 4.3088417e+03 -2.5495109e+03 - 1.7868753e+03 4.3733538e+03 -2.5315525e+03 - 1.6951727e+03 4.4335891e+03 -2.5134872e+03 - 1.6064540e+03 4.4897218e+03 -2.4954693e+03 - 1.5206443e+03 4.5419406e+03 -2.4776344e+03 - 1.4376440e+03 4.5904417e+03 -2.4601004e+03 - 1.3573351e+03 4.6354236e+03 -2.4429686e+03 - 1.2795867e+03 4.6770826e+03 -2.4263243e+03 - 1.2042591e+03 4.7156099e+03 -2.4102394e+03 - 1.1312080e+03 4.7511887e+03 -2.3947730e+03 - 1.0602872e+03 4.7839927e+03 -2.3799736e+03 - 9.9135092e+02 4.8141853e+03 -2.3658803e+03 - 9.2425533e+02 4.8419186e+03 -2.3525241e+03 - 8.5885991e+02 4.8673335e+03 -2.3399293e+03 - 7.9502825e+02 4.8905593e+03 -2.3281146e+03 - 7.3262851e+02 4.9117144e+03 -2.3170939e+03 - 6.7153371e+02 4.9309063e+03 -2.3068773e+03 - 6.1162179e+02 4.9482320e+03 -2.2974721e+03 - 5.5277552e+02 4.9637786e+03 -2.2888828e+03 - 4.9488229e+02 4.9776239e+03 -2.2811122e+03 - 4.3783385e+02 4.9898366e+03 -2.2741618e+03 - 3.8152594e+02 5.0004768e+03 -2.2680319e+03 - 3.2585795e+02 5.0095967e+03 -2.2627221e+03 - 2.7073242e+02 5.0172405e+03 -2.2582316e+03 - 2.1605471e+02 5.0234451e+03 -2.2545595e+03 - 1.6173245e+02 5.0282405e+03 -2.2517048e+03 - 1.0767516e+02 5.0316496e+03 -2.2496665e+03 - 5.3793728e+01 5.0336885e+03 -2.2484438e+03 - -4.8134273e-09 5.0343671e+03 -2.2480363e+03 - -5.3793728e+01 5.0336885e+03 -2.2484438e+03 - -1.0767516e+02 5.0316496e+03 -2.2496665e+03 - -1.6173245e+02 5.0282405e+03 -2.2517048e+03 - -2.1605471e+02 5.0234451e+03 -2.2545595e+03 - -2.7073242e+02 5.0172405e+03 -2.2582316e+03 - -3.2585795e+02 5.0095967e+03 -2.2627221e+03 - -3.8152594e+02 5.0004768e+03 -2.2680319e+03 - -4.3783385e+02 4.9898366e+03 -2.2741618e+03 - -4.9488229e+02 4.9776239e+03 -2.2811122e+03 - -5.5277552e+02 4.9637786e+03 -2.2888828e+03 - -6.1162179e+02 4.9482320e+03 -2.2974721e+03 - -6.7153371e+02 4.9309063e+03 -2.3068773e+03 - -7.3262851e+02 4.9117144e+03 -2.3170939e+03 - -7.9502825e+02 4.8905593e+03 -2.3281146e+03 - -8.5885991e+02 4.8673335e+03 -2.3399293e+03 - -9.2425533e+02 4.8419186e+03 -2.3525241e+03 - -9.9135092e+02 4.8141853e+03 -2.3658803e+03 - -1.0602872e+03 4.7839927e+03 -2.3799736e+03 - -1.1312080e+03 4.7511887e+03 -2.3947730e+03 - -1.2042591e+03 4.7156099e+03 -2.4102394e+03 - -1.2795867e+03 4.6770826e+03 -2.4263243e+03 - -1.3573351e+03 4.6354236e+03 -2.4429686e+03 - -1.4376440e+03 4.5904417e+03 -2.4601004e+03 - -1.5206443e+03 4.5419406e+03 -2.4776344e+03 - -1.6064540e+03 4.4897218e+03 -2.4954693e+03 - -1.6951727e+03 4.4335891e+03 -2.5134872e+03 - -1.7868753e+03 4.3733538e+03 -2.5315525e+03 - -1.8816046e+03 4.3088417e+03 -2.5495109e+03 - -1.9793640e+03 4.2399009e+03 -2.5671896e+03 - -2.0801088e+03 4.1664108e+03 -2.5843985e+03 - -2.1837383e+03 4.0882921e+03 -2.6009315e+03 - -2.2900885e+03 4.0055170e+03 -2.6165704e+03 - -2.3989256e+03 3.9181198e+03 -2.6310890e+03 - -2.5099425e+03 3.8262062e+03 -2.6442593e+03 - -2.6227574e+03 3.7299601e+03 -2.6558586e+03 - -2.7369170e+03 3.6296492e+03 -2.6656775e+03 - -2.8519035e+03 3.5256251e+03 -2.6735289e+03 - -2.9671454e+03 3.4183196e+03 -2.6792564e+03 - -3.0820338e+03 3.3082369e+03 -2.6827420e+03 - -3.1959400e+03 3.1959400e+03 -2.6839122e+03 - -3.3082369e+03 3.0820338e+03 -2.6827420e+03 - -3.4183196e+03 2.9671454e+03 -2.6792564e+03 - -3.5256251e+03 2.8519035e+03 -2.6735289e+03 - -3.6296492e+03 2.7369170e+03 -2.6656775e+03 - -3.7299601e+03 2.6227574e+03 -2.6558586e+03 - -3.8262062e+03 2.5099425e+03 -2.6442593e+03 - -3.9181198e+03 2.3989256e+03 -2.6310890e+03 - -4.0055170e+03 2.2900885e+03 -2.6165704e+03 - -4.0882921e+03 2.1837383e+03 -2.6009315e+03 - -4.1664108e+03 2.0801088e+03 -2.5843985e+03 - -4.2399009e+03 1.9793640e+03 -2.5671896e+03 - -4.3088417e+03 1.8816046e+03 -2.5495109e+03 - -4.3733538e+03 1.7868753e+03 -2.5315525e+03 - -4.4335891e+03 1.6951727e+03 -2.5134872e+03 - -4.4897218e+03 1.6064540e+03 -2.4954693e+03 - -4.5419406e+03 1.5206443e+03 -2.4776344e+03 - -4.5904417e+03 1.4376440e+03 -2.4601004e+03 - -4.6354236e+03 1.3573351e+03 -2.4429686e+03 - -4.6770826e+03 1.2795867e+03 -2.4263243e+03 - -4.7156099e+03 1.2042591e+03 -2.4102394e+03 - -4.7511887e+03 1.1312080e+03 -2.3947730e+03 - -4.7839927e+03 1.0602872e+03 -2.3799736e+03 - -4.8141853e+03 9.9135092e+02 -2.3658803e+03 - -4.8419186e+03 9.2425533e+02 -2.3525241e+03 - -4.8673335e+03 8.5885991e+02 -2.3399293e+03 - -4.8905593e+03 7.9502825e+02 -2.3281146e+03 - -4.9117144e+03 7.3262851e+02 -2.3170939e+03 - -4.9309063e+03 6.7153371e+02 -2.3068773e+03 - -4.9482320e+03 6.1162179e+02 -2.2974721e+03 - -4.9637786e+03 5.5277552e+02 -2.2888828e+03 - -4.9776239e+03 4.9488229e+02 -2.2811122e+03 - -4.9898366e+03 4.3783385e+02 -2.2741618e+03 - -5.0004768e+03 3.8152594e+02 -2.2680319e+03 - -5.0095967e+03 3.2585795e+02 -2.2627221e+03 - -5.0172405e+03 2.7073242e+02 -2.2582316e+03 - -5.0234451e+03 2.1605471e+02 -2.2545595e+03 - -5.0282405e+03 1.6173245e+02 -2.2517048e+03 - -5.0316496e+03 1.0767516e+02 -2.2496665e+03 - -5.0336885e+03 5.3793728e+01 -2.2484438e+03 - -5.0343671e+03 -9.6268545e-09 -2.2480363e+03 - -5.0336885e+03 -5.3793728e+01 -2.2484438e+03 - -5.0316496e+03 -1.0767516e+02 -2.2496665e+03 - -5.0282405e+03 -1.6173245e+02 -2.2517048e+03 - -5.0234451e+03 -2.1605471e+02 -2.2545595e+03 - -5.0172405e+03 -2.7073242e+02 -2.2582316e+03 - -5.0095967e+03 -3.2585795e+02 -2.2627221e+03 - -5.0004768e+03 -3.8152594e+02 -2.2680319e+03 - -4.9898366e+03 -4.3783385e+02 -2.2741618e+03 - -4.9776239e+03 -4.9488229e+02 -2.2811122e+03 - -4.9637786e+03 -5.5277552e+02 -2.2888828e+03 - -4.9482320e+03 -6.1162179e+02 -2.2974721e+03 - -4.9309063e+03 -6.7153371e+02 -2.3068773e+03 - -4.9117144e+03 -7.3262851e+02 -2.3170939e+03 - -4.8905593e+03 -7.9502825e+02 -2.3281146e+03 - -4.8673335e+03 -8.5885991e+02 -2.3399293e+03 - -4.8419186e+03 -9.2425533e+02 -2.3525241e+03 - -4.8141853e+03 -9.9135092e+02 -2.3658803e+03 - -4.7839927e+03 -1.0602872e+03 -2.3799736e+03 - -4.7511887e+03 -1.1312080e+03 -2.3947730e+03 - -4.7156099e+03 -1.2042591e+03 -2.4102394e+03 - -4.6770826e+03 -1.2795867e+03 -2.4263243e+03 - -4.6354236e+03 -1.3573351e+03 -2.4429686e+03 - -4.5904417e+03 -1.4376440e+03 -2.4601004e+03 - -4.5419406e+03 -1.5206443e+03 -2.4776344e+03 - -4.4897218e+03 -1.6064540e+03 -2.4954693e+03 - -4.4335891e+03 -1.6951727e+03 -2.5134872e+03 - -4.3733538e+03 -1.7868753e+03 -2.5315525e+03 - -4.3088417e+03 -1.8816046e+03 -2.5495109e+03 - -4.2399009e+03 -1.9793640e+03 -2.5671896e+03 - -4.1664108e+03 -2.0801088e+03 -2.5843985e+03 - -4.0882921e+03 -2.1837383e+03 -2.6009315e+03 - -4.0055170e+03 -2.2900885e+03 -2.6165704e+03 - -3.9181198e+03 -2.3989256e+03 -2.6310890e+03 - -3.8262062e+03 -2.5099425e+03 -2.6442593e+03 - -3.7299601e+03 -2.6227574e+03 -2.6558586e+03 - -3.6296492e+03 -2.7369170e+03 -2.6656775e+03 - -3.5256251e+03 -2.8519035e+03 -2.6735289e+03 - -3.4183196e+03 -2.9671454e+03 -2.6792564e+03 - -3.3082369e+03 -3.0820338e+03 -2.6827420e+03 - -3.1959400e+03 -3.1959400e+03 -2.6839122e+03 - -3.0820338e+03 -3.3082369e+03 -2.6827420e+03 - -2.9671454e+03 -3.4183196e+03 -2.6792564e+03 - -2.8519035e+03 -3.5256251e+03 -2.6735289e+03 - -2.7369170e+03 -3.6296492e+03 -2.6656775e+03 - -2.6227574e+03 -3.7299601e+03 -2.6558586e+03 - -2.5099425e+03 -3.8262062e+03 -2.6442593e+03 - -2.3989256e+03 -3.9181198e+03 -2.6310890e+03 - -2.2900885e+03 -4.0055170e+03 -2.6165704e+03 - -2.1837383e+03 -4.0882921e+03 -2.6009315e+03 - -2.0801088e+03 -4.1664108e+03 -2.5843985e+03 - -1.9793640e+03 -4.2399009e+03 -2.5671896e+03 - -1.8816046e+03 -4.3088417e+03 -2.5495109e+03 - -1.7868753e+03 -4.3733538e+03 -2.5315525e+03 - -1.6951727e+03 -4.4335891e+03 -2.5134872e+03 - -1.6064540e+03 -4.4897218e+03 -2.4954693e+03 - -1.5206443e+03 -4.5419406e+03 -2.4776344e+03 - -1.4376440e+03 -4.5904417e+03 -2.4601004e+03 - -1.3573351e+03 -4.6354236e+03 -2.4429686e+03 - -1.2795867e+03 -4.6770826e+03 -2.4263243e+03 - -1.2042591e+03 -4.7156099e+03 -2.4102394e+03 - -1.1312080e+03 -4.7511887e+03 -2.3947730e+03 - -1.0602872e+03 -4.7839927e+03 -2.3799736e+03 - -9.9135092e+02 -4.8141853e+03 -2.3658803e+03 - -9.2425533e+02 -4.8419186e+03 -2.3525241e+03 - -8.5885991e+02 -4.8673335e+03 -2.3399293e+03 - -7.9502825e+02 -4.8905593e+03 -2.3281146e+03 - -7.3262851e+02 -4.9117144e+03 -2.3170939e+03 - -6.7153371e+02 -4.9309063e+03 -2.3068773e+03 - -6.1162179e+02 -4.9482320e+03 -2.2974721e+03 - -5.5277552e+02 -4.9637786e+03 -2.2888828e+03 - -4.9488229e+02 -4.9776239e+03 -2.2811122e+03 - -4.3783385e+02 -4.9898366e+03 -2.2741618e+03 - -3.8152594e+02 -5.0004768e+03 -2.2680319e+03 - -3.2585795e+02 -5.0095967e+03 -2.2627221e+03 - -2.7073242e+02 -5.0172405e+03 -2.2582316e+03 - -2.1605471e+02 -5.0234451e+03 -2.2545595e+03 - -1.6173245e+02 -5.0282405e+03 -2.2517048e+03 - -1.0767516e+02 -5.0316496e+03 -2.2496665e+03 - -5.3793728e+01 -5.0336885e+03 -2.2484438e+03 - 4.8134273e-09 -5.0343671e+03 -2.2480363e+03 - 5.3793728e+01 -5.0336885e+03 -2.2484438e+03 - 1.0767516e+02 -5.0316496e+03 -2.2496665e+03 - 1.6173245e+02 -5.0282405e+03 -2.2517048e+03 - 2.1605471e+02 -5.0234451e+03 -2.2545595e+03 - 2.7073242e+02 -5.0172405e+03 -2.2582316e+03 - 3.2585795e+02 -5.0095967e+03 -2.2627221e+03 - 3.8152594e+02 -5.0004768e+03 -2.2680319e+03 - 4.3783385e+02 -4.9898366e+03 -2.2741618e+03 - 4.9488229e+02 -4.9776239e+03 -2.2811122e+03 - 5.5277552e+02 -4.9637786e+03 -2.2888828e+03 - 6.1162179e+02 -4.9482320e+03 -2.2974721e+03 - 6.7153371e+02 -4.9309063e+03 -2.3068773e+03 - 7.3262851e+02 -4.9117144e+03 -2.3170939e+03 - 7.9502825e+02 -4.8905593e+03 -2.3281146e+03 - 8.5885991e+02 -4.8673335e+03 -2.3399293e+03 - 9.2425533e+02 -4.8419186e+03 -2.3525241e+03 - 9.9135092e+02 -4.8141853e+03 -2.3658803e+03 - 1.0602872e+03 -4.7839927e+03 -2.3799736e+03 - 1.1312080e+03 -4.7511887e+03 -2.3947730e+03 - 1.2042591e+03 -4.7156099e+03 -2.4102394e+03 - 1.2795867e+03 -4.6770826e+03 -2.4263243e+03 - 1.3573351e+03 -4.6354236e+03 -2.4429686e+03 - 1.4376440e+03 -4.5904417e+03 -2.4601004e+03 - 1.5206443e+03 -4.5419406e+03 -2.4776344e+03 - 1.6064540e+03 -4.4897218e+03 -2.4954693e+03 - 1.6951727e+03 -4.4335891e+03 -2.5134872e+03 - 1.7868753e+03 -4.3733538e+03 -2.5315525e+03 - 1.8816046e+03 -4.3088417e+03 -2.5495109e+03 - 1.9793640e+03 -4.2399009e+03 -2.5671896e+03 - 2.0801088e+03 -4.1664108e+03 -2.5843985e+03 - 2.1837383e+03 -4.0882921e+03 -2.6009315e+03 - 2.2900885e+03 -4.0055170e+03 -2.6165704e+03 - 2.3989256e+03 -3.9181198e+03 -2.6310890e+03 - 2.5099425e+03 -3.8262062e+03 -2.6442593e+03 - 2.6227574e+03 -3.7299601e+03 -2.6558586e+03 - 2.7369170e+03 -3.6296492e+03 -2.6656775e+03 - 2.8519035e+03 -3.5256251e+03 -2.6735289e+03 - 2.9671454e+03 -3.4183196e+03 -2.6792564e+03 - 3.0820338e+03 -3.3082369e+03 -2.6827420e+03 - 3.1959400e+03 -3.1959400e+03 -2.6839122e+03 - 3.3082369e+03 -3.0820338e+03 -2.6827420e+03 - 3.4183196e+03 -2.9671454e+03 -2.6792564e+03 - 3.5256251e+03 -2.8519035e+03 -2.6735289e+03 - 3.6296492e+03 -2.7369170e+03 -2.6656775e+03 - 3.7299601e+03 -2.6227574e+03 -2.6558586e+03 - 3.8262062e+03 -2.5099425e+03 -2.6442593e+03 - 3.9181198e+03 -2.3989256e+03 -2.6310890e+03 - 4.0055170e+03 -2.2900885e+03 -2.6165704e+03 - 4.0882921e+03 -2.1837383e+03 -2.6009315e+03 - 4.1664108e+03 -2.0801088e+03 -2.5843985e+03 - 4.2399009e+03 -1.9793640e+03 -2.5671896e+03 - 4.3088417e+03 -1.8816046e+03 -2.5495109e+03 - 4.3733538e+03 -1.7868753e+03 -2.5315525e+03 - 4.4335891e+03 -1.6951727e+03 -2.5134872e+03 - 4.4897218e+03 -1.6064540e+03 -2.4954693e+03 - 4.5419406e+03 -1.5206443e+03 -2.4776344e+03 - 4.5904417e+03 -1.4376440e+03 -2.4601004e+03 - 4.6354236e+03 -1.3573351e+03 -2.4429686e+03 - 4.6770826e+03 -1.2795867e+03 -2.4263243e+03 - 4.7156099e+03 -1.2042591e+03 -2.4102394e+03 - 4.7511887e+03 -1.1312080e+03 -2.3947730e+03 - 4.7839927e+03 -1.0602872e+03 -2.3799736e+03 - 4.8141853e+03 -9.9135092e+02 -2.3658803e+03 - 4.8419186e+03 -9.2425533e+02 -2.3525241e+03 - 4.8673335e+03 -8.5885991e+02 -2.3399293e+03 - 4.8905593e+03 -7.9502825e+02 -2.3281146e+03 - 4.9117144e+03 -7.3262851e+02 -2.3170939e+03 - 4.9309063e+03 -6.7153371e+02 -2.3068773e+03 - 4.9482320e+03 -6.1162179e+02 -2.2974721e+03 - 4.9637786e+03 -5.5277552e+02 -2.2888828e+03 - 4.9776239e+03 -4.9488229e+02 -2.2811122e+03 - 4.9898366e+03 -4.3783385e+02 -2.2741618e+03 - 5.0004768e+03 -3.8152594e+02 -2.2680319e+03 - 5.0095967e+03 -3.2585795e+02 -2.2627221e+03 - 5.0172405e+03 -2.7073242e+02 -2.2582316e+03 - 5.0234451e+03 -2.1605471e+02 -2.2545595e+03 - 5.0282405e+03 -1.6173245e+02 -2.2517048e+03 - 5.0316496e+03 -1.0767516e+02 -2.2496665e+03 - 5.0336885e+03 -5.3793728e+01 -2.2484438e+03 - 5.0343671e+03 1.4440282e-08 -2.2480363e+03 - 5.0002276e+03 0.0000000e+00 -2.3378643e+03 - 4.9995379e+03 5.4054530e+01 -2.3382702e+03 - 4.9974658e+03 1.0819630e+02 -2.3394879e+03 - 4.9940015e+03 1.6251299e+02 -2.3415176e+03 - 4.9891290e+03 2.1709315e+02 -2.3443598e+03 - 4.9828255e+03 2.7202666e+02 -2.3480148e+03 - 4.9750615e+03 3.2740512e+02 -2.3524830e+03 - 4.9658006e+03 3.8332231e+02 -2.3577646e+03 - 4.9549988e+03 4.3987458e+02 -2.3638593e+03 - 4.9426048e+03 4.9716128e+02 -2.3707663e+03 - 4.9285593e+03 5.5528507e+02 -2.3784840e+03 - 4.9127948e+03 6.1435231e+02 -2.3870095e+03 - 4.8952349e+03 6.7447334e+02 -2.3963383e+03 - 4.8757943e+03 7.3576267e+02 -2.4064639e+03 - 4.8543782e+03 7.9833913e+02 -2.4173773e+03 - 4.8308817e+03 8.6232589e+02 -2.4290661e+03 - 4.8051899e+03 9.2785030e+02 -2.4415140e+03 - 4.7771773e+03 9.9504359e+02 -2.4547003e+03 - 4.7467081e+03 1.0640402e+03 -2.4685980e+03 - 4.7136359e+03 1.1349770e+03 -2.4831738e+03 - 4.6778042e+03 1.2079919e+03 -2.4983863e+03 - 4.6390475e+03 1.2832223e+03 -2.5141849e+03 - 4.5971917e+03 1.3608024e+03 -2.5305084e+03 - 4.5520568e+03 1.4408610e+03 -2.5472839e+03 - 4.5034587e+03 1.5235172e+03 -2.5644249e+03 - 4.4512127e+03 1.6088766e+03 -2.5818303e+03 - 4.3951377e+03 1.6970258e+03 -2.5993834e+03 - 4.3350615e+03 1.7880267e+03 -2.6169508e+03 - 4.2708271e+03 1.8819097e+03 -2.6343819e+03 - 4.2023001e+03 1.9786669e+03 -2.6515098e+03 - 4.1293770e+03 2.0782444e+03 -2.6681516e+03 - 4.0519944e+03 2.1805354e+03 -2.6841106e+03 - 3.9701382e+03 2.2853736e+03 -2.6991798e+03 - 3.8838526e+03 2.3925279e+03 -2.7131460e+03 - 3.7932486e+03 2.5016995e+03 -2.7257953e+03 - 3.6985097e+03 2.6125218e+03 -2.7369198e+03 - 3.5998963e+03 2.7245629e+03 -2.7463252e+03 - 3.4977454e+03 2.8373327e+03 -2.7538381e+03 - 3.3924670e+03 2.9502932e+03 -2.7593143e+03 - 3.2845367e+03 3.0628729e+03 -2.7626451e+03 - 3.1744830e+03 3.1744830e+03 -2.7637630e+03 - 3.0628729e+03 3.2845367e+03 -2.7626451e+03 - 2.9502932e+03 3.3924670e+03 -2.7593143e+03 - 2.8373327e+03 3.4977454e+03 -2.7538381e+03 - 2.7245629e+03 3.5998963e+03 -2.7463252e+03 - 2.6125218e+03 3.6985097e+03 -2.7369198e+03 - 2.5016995e+03 3.7932486e+03 -2.7257953e+03 - 2.3925279e+03 3.8838526e+03 -2.7131460e+03 - 2.2853736e+03 3.9701382e+03 -2.6991798e+03 - 2.1805354e+03 4.0519944e+03 -2.6841106e+03 - 2.0782444e+03 4.1293770e+03 -2.6681516e+03 - 1.9786669e+03 4.2023001e+03 -2.6515098e+03 - 1.8819097e+03 4.2708271e+03 -2.6343819e+03 - 1.7880267e+03 4.3350615e+03 -2.6169508e+03 - 1.6970258e+03 4.3951377e+03 -2.5993834e+03 - 1.6088766e+03 4.4512127e+03 -2.5818303e+03 - 1.5235172e+03 4.5034587e+03 -2.5644249e+03 - 1.4408610e+03 4.5520568e+03 -2.5472839e+03 - 1.3608024e+03 4.5971917e+03 -2.5305084e+03 - 1.2832223e+03 4.6390475e+03 -2.5141849e+03 - 1.2079919e+03 4.6778042e+03 -2.4983863e+03 - 1.1349770e+03 4.7136359e+03 -2.4831738e+03 - 1.0640402e+03 4.7467081e+03 -2.4685980e+03 - 9.9504359e+02 4.7771773e+03 -2.4547003e+03 - 9.2785030e+02 4.8051899e+03 -2.4415140e+03 - 8.6232589e+02 4.8308817e+03 -2.4290661e+03 - 7.9833913e+02 4.8543782e+03 -2.4173773e+03 - 7.3576267e+02 4.8757943e+03 -2.4064639e+03 - 6.7447334e+02 4.8952349e+03 -2.3963383e+03 - 6.1435231e+02 4.9127948e+03 -2.3870095e+03 - 5.5528507e+02 4.9285593e+03 -2.3784840e+03 - 4.9716128e+02 4.9426048e+03 -2.3707663e+03 - 4.3987458e+02 4.9549988e+03 -2.3638593e+03 - 3.8332231e+02 4.9658006e+03 -2.3577646e+03 - 3.2740512e+02 4.9750615e+03 -2.3524830e+03 - 2.7202666e+02 4.9828255e+03 -2.3480148e+03 - 2.1709315e+02 4.9891290e+03 -2.3443598e+03 - 1.6251299e+02 4.9940015e+03 -2.3415176e+03 - 1.0819630e+02 4.9974658e+03 -2.3394879e+03 - 5.4054530e+01 4.9995379e+03 -2.3382702e+03 - -4.8134273e-09 5.0002276e+03 -2.3378643e+03 - -5.4054530e+01 4.9995379e+03 -2.3382702e+03 - -1.0819630e+02 4.9974658e+03 -2.3394879e+03 - -1.6251299e+02 4.9940015e+03 -2.3415176e+03 - -2.1709315e+02 4.9891290e+03 -2.3443598e+03 - -2.7202666e+02 4.9828255e+03 -2.3480148e+03 - -3.2740512e+02 4.9750615e+03 -2.3524830e+03 - -3.8332231e+02 4.9658006e+03 -2.3577646e+03 - -4.3987458e+02 4.9549988e+03 -2.3638593e+03 - -4.9716128e+02 4.9426048e+03 -2.3707663e+03 - -5.5528507e+02 4.9285593e+03 -2.3784840e+03 - -6.1435231e+02 4.9127948e+03 -2.3870095e+03 - -6.7447334e+02 4.8952349e+03 -2.3963383e+03 - -7.3576267e+02 4.8757943e+03 -2.4064639e+03 - -7.9833913e+02 4.8543782e+03 -2.4173773e+03 - -8.6232589e+02 4.8308817e+03 -2.4290661e+03 - -9.2785030e+02 4.8051899e+03 -2.4415140e+03 - -9.9504359e+02 4.7771773e+03 -2.4547003e+03 - -1.0640402e+03 4.7467081e+03 -2.4685980e+03 - -1.1349770e+03 4.7136359e+03 -2.4831738e+03 - -1.2079919e+03 4.6778042e+03 -2.4983863e+03 - -1.2832223e+03 4.6390475e+03 -2.5141849e+03 - -1.3608024e+03 4.5971917e+03 -2.5305084e+03 - -1.4408610e+03 4.5520568e+03 -2.5472839e+03 - -1.5235172e+03 4.5034587e+03 -2.5644249e+03 - -1.6088766e+03 4.4512127e+03 -2.5818303e+03 - -1.6970258e+03 4.3951377e+03 -2.5993834e+03 - -1.7880267e+03 4.3350615e+03 -2.6169508e+03 - -1.8819097e+03 4.2708271e+03 -2.6343819e+03 - -1.9786669e+03 4.2023001e+03 -2.6515098e+03 - -2.0782444e+03 4.1293770e+03 -2.6681516e+03 - -2.1805354e+03 4.0519944e+03 -2.6841106e+03 - -2.2853736e+03 3.9701382e+03 -2.6991798e+03 - -2.3925279e+03 3.8838526e+03 -2.7131460e+03 - -2.5016995e+03 3.7932486e+03 -2.7257953e+03 - -2.6125218e+03 3.6985097e+03 -2.7369198e+03 - -2.7245629e+03 3.5998963e+03 -2.7463252e+03 - -2.8373327e+03 3.4977454e+03 -2.7538381e+03 - -2.9502932e+03 3.3924670e+03 -2.7593143e+03 - -3.0628729e+03 3.2845367e+03 -2.7626451e+03 - -3.1744830e+03 3.1744830e+03 -2.7637630e+03 - -3.2845367e+03 3.0628729e+03 -2.7626451e+03 - -3.3924670e+03 2.9502932e+03 -2.7593143e+03 - -3.4977454e+03 2.8373327e+03 -2.7538381e+03 - -3.5998963e+03 2.7245629e+03 -2.7463252e+03 - -3.6985097e+03 2.6125218e+03 -2.7369198e+03 - -3.7932486e+03 2.5016995e+03 -2.7257953e+03 - -3.8838526e+03 2.3925279e+03 -2.7131460e+03 - -3.9701382e+03 2.2853736e+03 -2.6991798e+03 - -4.0519944e+03 2.1805354e+03 -2.6841106e+03 - -4.1293770e+03 2.0782444e+03 -2.6681516e+03 - -4.2023001e+03 1.9786669e+03 -2.6515098e+03 - -4.2708271e+03 1.8819097e+03 -2.6343819e+03 - -4.3350615e+03 1.7880267e+03 -2.6169508e+03 - -4.3951377e+03 1.6970258e+03 -2.5993834e+03 - -4.4512127e+03 1.6088766e+03 -2.5818303e+03 - -4.5034587e+03 1.5235172e+03 -2.5644249e+03 - -4.5520568e+03 1.4408610e+03 -2.5472839e+03 - -4.5971917e+03 1.3608024e+03 -2.5305084e+03 - -4.6390475e+03 1.2832223e+03 -2.5141849e+03 - -4.6778042e+03 1.2079919e+03 -2.4983863e+03 - -4.7136359e+03 1.1349770e+03 -2.4831738e+03 - -4.7467081e+03 1.0640402e+03 -2.4685980e+03 - -4.7771773e+03 9.9504359e+02 -2.4547003e+03 - -4.8051899e+03 9.2785030e+02 -2.4415140e+03 - -4.8308817e+03 8.6232589e+02 -2.4290661e+03 - -4.8543782e+03 7.9833913e+02 -2.4173773e+03 - -4.8757943e+03 7.3576267e+02 -2.4064639e+03 - -4.8952349e+03 6.7447334e+02 -2.3963383e+03 - -4.9127948e+03 6.1435231e+02 -2.3870095e+03 - -4.9285593e+03 5.5528507e+02 -2.3784840e+03 - -4.9426048e+03 4.9716128e+02 -2.3707663e+03 - -4.9549988e+03 4.3987458e+02 -2.3638593e+03 - -4.9658006e+03 3.8332231e+02 -2.3577646e+03 - -4.9750615e+03 3.2740512e+02 -2.3524830e+03 - -4.9828255e+03 2.7202666e+02 -2.3480148e+03 - -4.9891290e+03 2.1709315e+02 -2.3443598e+03 - -4.9940015e+03 1.6251299e+02 -2.3415176e+03 - -4.9974658e+03 1.0819630e+02 -2.3394879e+03 - -4.9995379e+03 5.4054530e+01 -2.3382702e+03 - -5.0002276e+03 -1.4440282e-08 -2.3378643e+03 - -4.9995379e+03 -5.4054530e+01 -2.3382702e+03 - -4.9974658e+03 -1.0819630e+02 -2.3394879e+03 - -4.9940015e+03 -1.6251299e+02 -2.3415176e+03 - -4.9891290e+03 -2.1709315e+02 -2.3443598e+03 - -4.9828255e+03 -2.7202666e+02 -2.3480148e+03 - -4.9750615e+03 -3.2740512e+02 -2.3524830e+03 - -4.9658006e+03 -3.8332231e+02 -2.3577646e+03 - -4.9549988e+03 -4.3987458e+02 -2.3638593e+03 - -4.9426048e+03 -4.9716128e+02 -2.3707663e+03 - -4.9285593e+03 -5.5528507e+02 -2.3784840e+03 - -4.9127948e+03 -6.1435231e+02 -2.3870095e+03 - -4.8952349e+03 -6.7447334e+02 -2.3963383e+03 - -4.8757943e+03 -7.3576267e+02 -2.4064639e+03 - -4.8543782e+03 -7.9833913e+02 -2.4173773e+03 - -4.8308817e+03 -8.6232589e+02 -2.4290661e+03 - -4.8051899e+03 -9.2785030e+02 -2.4415140e+03 - -4.7771773e+03 -9.9504359e+02 -2.4547003e+03 - -4.7467081e+03 -1.0640402e+03 -2.4685980e+03 - -4.7136359e+03 -1.1349770e+03 -2.4831738e+03 - -4.6778042e+03 -1.2079919e+03 -2.4983863e+03 - -4.6390475e+03 -1.2832223e+03 -2.5141849e+03 - -4.5971917e+03 -1.3608024e+03 -2.5305084e+03 - -4.5520568e+03 -1.4408610e+03 -2.5472839e+03 - -4.5034587e+03 -1.5235172e+03 -2.5644249e+03 - -4.4512127e+03 -1.6088766e+03 -2.5818303e+03 - -4.3951377e+03 -1.6970258e+03 -2.5993834e+03 - -4.3350615e+03 -1.7880267e+03 -2.6169508e+03 - -4.2708271e+03 -1.8819097e+03 -2.6343819e+03 - -4.2023001e+03 -1.9786669e+03 -2.6515098e+03 - -4.1293770e+03 -2.0782444e+03 -2.6681516e+03 - -4.0519944e+03 -2.1805354e+03 -2.6841106e+03 - -3.9701382e+03 -2.2853736e+03 -2.6991798e+03 - -3.8838526e+03 -2.3925279e+03 -2.7131460e+03 - -3.7932486e+03 -2.5016995e+03 -2.7257953e+03 - -3.6985097e+03 -2.6125218e+03 -2.7369198e+03 - -3.5998963e+03 -2.7245629e+03 -2.7463252e+03 - -3.4977454e+03 -2.8373327e+03 -2.7538381e+03 - -3.3924670e+03 -2.9502932e+03 -2.7593143e+03 - -3.2845367e+03 -3.0628729e+03 -2.7626451e+03 - -3.1744830e+03 -3.1744830e+03 -2.7637630e+03 - -3.0628729e+03 -3.2845367e+03 -2.7626451e+03 - -2.9502932e+03 -3.3924670e+03 -2.7593143e+03 - -2.8373327e+03 -3.4977454e+03 -2.7538381e+03 - -2.7245629e+03 -3.5998963e+03 -2.7463252e+03 - -2.6125218e+03 -3.6985097e+03 -2.7369198e+03 - -2.5016995e+03 -3.7932486e+03 -2.7257953e+03 - -2.3925279e+03 -3.8838526e+03 -2.7131460e+03 - -2.2853736e+03 -3.9701382e+03 -2.6991798e+03 - -2.1805354e+03 -4.0519944e+03 -2.6841106e+03 - -2.0782444e+03 -4.1293770e+03 -2.6681516e+03 - -1.9786669e+03 -4.2023001e+03 -2.6515098e+03 - -1.8819097e+03 -4.2708271e+03 -2.6343819e+03 - -1.7880267e+03 -4.3350615e+03 -2.6169508e+03 - -1.6970258e+03 -4.3951377e+03 -2.5993834e+03 - -1.6088766e+03 -4.4512127e+03 -2.5818303e+03 - -1.5235172e+03 -4.5034587e+03 -2.5644249e+03 - -1.4408610e+03 -4.5520568e+03 -2.5472839e+03 - -1.3608024e+03 -4.5971917e+03 -2.5305084e+03 - -1.2832223e+03 -4.6390475e+03 -2.5141849e+03 - -1.2079919e+03 -4.6778042e+03 -2.4983863e+03 - -1.1349770e+03 -4.7136359e+03 -2.4831738e+03 - -1.0640402e+03 -4.7467081e+03 -2.4685980e+03 - -9.9504359e+02 -4.7771773e+03 -2.4547003e+03 - -9.2785030e+02 -4.8051899e+03 -2.4415140e+03 - -8.6232589e+02 -4.8308817e+03 -2.4290661e+03 - -7.9833913e+02 -4.8543782e+03 -2.4173773e+03 - -7.3576267e+02 -4.8757943e+03 -2.4064639e+03 - -6.7447334e+02 -4.8952349e+03 -2.3963383e+03 - -6.1435231e+02 -4.9127948e+03 -2.3870095e+03 - -5.5528507e+02 -4.9285593e+03 -2.3784840e+03 - -4.9716128e+02 -4.9426048e+03 -2.3707663e+03 - -4.3987458e+02 -4.9549988e+03 -2.3638593e+03 - -3.8332231e+02 -4.9658006e+03 -2.3577646e+03 - -3.2740512e+02 -4.9750615e+03 -2.3524830e+03 - -2.7202666e+02 -4.9828255e+03 -2.3480148e+03 - -2.1709315e+02 -4.9891290e+03 -2.3443598e+03 - -1.6251299e+02 -4.9940015e+03 -2.3415176e+03 - -1.0819630e+02 -4.9974658e+03 -2.3394879e+03 - -5.4054530e+01 -4.9995379e+03 -2.3382702e+03 - -4.8134273e-09 -5.0002276e+03 -2.3378643e+03 - 5.4054530e+01 -4.9995379e+03 -2.3382702e+03 - 1.0819630e+02 -4.9974658e+03 -2.3394879e+03 - 1.6251299e+02 -4.9940015e+03 -2.3415176e+03 - 2.1709315e+02 -4.9891290e+03 -2.3443598e+03 - 2.7202666e+02 -4.9828255e+03 -2.3480148e+03 - 3.2740512e+02 -4.9750615e+03 -2.3524830e+03 - 3.8332231e+02 -4.9658006e+03 -2.3577646e+03 - 4.3987458e+02 -4.9549988e+03 -2.3638593e+03 - 4.9716128e+02 -4.9426048e+03 -2.3707663e+03 - 5.5528507e+02 -4.9285593e+03 -2.3784840e+03 - 6.1435231e+02 -4.9127948e+03 -2.3870095e+03 - 6.7447334e+02 -4.8952349e+03 -2.3963383e+03 - 7.3576267e+02 -4.8757943e+03 -2.4064639e+03 - 7.9833913e+02 -4.8543782e+03 -2.4173773e+03 - 8.6232589e+02 -4.8308817e+03 -2.4290661e+03 - 9.2785030e+02 -4.8051899e+03 -2.4415140e+03 - 9.9504359e+02 -4.7771773e+03 -2.4547003e+03 - 1.0640402e+03 -4.7467081e+03 -2.4685980e+03 - 1.1349770e+03 -4.7136359e+03 -2.4831738e+03 - 1.2079919e+03 -4.6778042e+03 -2.4983863e+03 - 1.2832223e+03 -4.6390475e+03 -2.5141849e+03 - 1.3608024e+03 -4.5971917e+03 -2.5305084e+03 - 1.4408610e+03 -4.5520568e+03 -2.5472839e+03 - 1.5235172e+03 -4.5034587e+03 -2.5644249e+03 - 1.6088766e+03 -4.4512127e+03 -2.5818303e+03 - 1.6970258e+03 -4.3951377e+03 -2.5993834e+03 - 1.7880267e+03 -4.3350615e+03 -2.6169508e+03 - 1.8819097e+03 -4.2708271e+03 -2.6343819e+03 - 1.9786669e+03 -4.2023001e+03 -2.6515098e+03 - 2.0782444e+03 -4.1293770e+03 -2.6681516e+03 - 2.1805354e+03 -4.0519944e+03 -2.6841106e+03 - 2.2853736e+03 -3.9701382e+03 -2.6991798e+03 - 2.3925279e+03 -3.8838526e+03 -2.7131460e+03 - 2.5016995e+03 -3.7932486e+03 -2.7257953e+03 - 2.6125218e+03 -3.6985097e+03 -2.7369198e+03 - 2.7245629e+03 -3.5998963e+03 -2.7463252e+03 - 2.8373327e+03 -3.4977454e+03 -2.7538381e+03 - 2.9502932e+03 -3.3924670e+03 -2.7593143e+03 - 3.0628729e+03 -3.2845367e+03 -2.7626451e+03 - 3.1744830e+03 -3.1744830e+03 -2.7637630e+03 - 3.2845367e+03 -3.0628729e+03 -2.7626451e+03 - 3.3924670e+03 -2.9502932e+03 -2.7593143e+03 - 3.4977454e+03 -2.8373327e+03 -2.7538381e+03 - 3.5998963e+03 -2.7245629e+03 -2.7463252e+03 - 3.6985097e+03 -2.6125218e+03 -2.7369198e+03 - 3.7932486e+03 -2.5016995e+03 -2.7257953e+03 - 3.8838526e+03 -2.3925279e+03 -2.7131460e+03 - 3.9701382e+03 -2.2853736e+03 -2.6991798e+03 - 4.0519944e+03 -2.1805354e+03 -2.6841106e+03 - 4.1293770e+03 -2.0782444e+03 -2.6681516e+03 - 4.2023001e+03 -1.9786669e+03 -2.6515098e+03 - 4.2708271e+03 -1.8819097e+03 -2.6343819e+03 - 4.3350615e+03 -1.7880267e+03 -2.6169508e+03 - 4.3951377e+03 -1.6970258e+03 -2.5993834e+03 - 4.4512127e+03 -1.6088766e+03 -2.5818303e+03 - 4.5034587e+03 -1.5235172e+03 -2.5644249e+03 - 4.5520568e+03 -1.4408610e+03 -2.5472839e+03 - 4.5971917e+03 -1.3608024e+03 -2.5305084e+03 - 4.6390475e+03 -1.2832223e+03 -2.5141849e+03 - 4.6778042e+03 -1.2079919e+03 -2.4983863e+03 - 4.7136359e+03 -1.1349770e+03 -2.4831738e+03 - 4.7467081e+03 -1.0640402e+03 -2.4685980e+03 - 4.7771773e+03 -9.9504359e+02 -2.4547003e+03 - 4.8051899e+03 -9.2785030e+02 -2.4415140e+03 - 4.8308817e+03 -8.6232589e+02 -2.4290661e+03 - 4.8543782e+03 -7.9833913e+02 -2.4173773e+03 - 4.8757943e+03 -7.3576267e+02 -2.4064639e+03 - 4.8952349e+03 -6.7447334e+02 -2.3963383e+03 - 4.9127948e+03 -6.1435231e+02 -2.3870095e+03 - 4.9285593e+03 -5.5528507e+02 -2.3784840e+03 - 4.9426048e+03 -4.9716128e+02 -2.3707663e+03 - 4.9549988e+03 -4.3987458e+02 -2.3638593e+03 - 4.9658006e+03 -3.8332231e+02 -2.3577646e+03 - 4.9750615e+03 -3.2740512e+02 -2.3524830e+03 - 4.9828255e+03 -2.7202666e+02 -2.3480148e+03 - 4.9891290e+03 -2.1709315e+02 -2.3443598e+03 - 4.9940015e+03 -1.6251299e+02 -2.3415176e+03 - 4.9974658e+03 -1.0819630e+02 -2.3394879e+03 - 4.9995379e+03 -5.4054530e+01 -2.3382702e+03 - 5.0002276e+03 9.6268545e-09 -2.3378643e+03 - 4.9654513e+03 -4.8134273e-09 -2.4242224e+03 - 4.9647512e+03 5.4311660e+01 -2.4246251e+03 - 4.9626476e+03 1.0871000e+02 -2.4258334e+03 - 4.9591310e+03 1.6328213e+02 -2.4278471e+03 - 4.9541856e+03 2.1811594e+02 -2.4306664e+03 - 4.9477887e+03 2.7330059e+02 -2.4342910e+03 - 4.9399113e+03 3.2892685e+02 -2.4387209e+03 - 4.9305173e+03 3.8508749e+02 -2.4439552e+03 - 4.9195635e+03 4.4187770e+02 -2.4499927e+03 - 4.9069994e+03 4.9939539e+02 -2.4568317e+03 - 4.8927666e+03 5.5774157e+02 -2.4644691e+03 - 4.8767988e+03 6.1702059e+02 -2.4729006e+03 - 4.8590213e+03 6.7734038e+02 -2.4821201e+03 - 4.8393506e+03 7.3881267e+02 -2.4921195e+03 - 4.8176942e+03 8.0155294e+02 -2.5028878e+03 - 4.7939501e+03 8.6568050e+02 -2.5144107e+03 - 4.7680070e+03 9.3131815e+02 -2.5266700e+03 - 4.7397434e+03 9.9859187e+02 -2.5396425e+03 - 4.7090285e+03 1.0676301e+03 -2.5532995e+03 - 4.6757217e+03 1.1385628e+03 -2.5676053e+03 - 4.6396735e+03 1.2115201e+03 -2.5825166e+03 - 4.6007264e+03 1.2866307e+03 -2.5979812e+03 - 4.5587157e+03 1.3640192e+03 -2.6139364e+03 - 4.5134719e+03 1.4438039e+03 -2.6303085e+03 - 4.4648228e+03 1.5260927e+03 -2.6470106e+03 - 4.4125971e+03 1.6109793e+03 -2.6639425e+03 - 4.3566280e+03 1.6985381e+03 -2.6809889e+03 - 4.2967587e+03 1.7888192e+03 -2.6980194e+03 - 4.2328484e+03 1.8818417e+03 -2.7148880e+03 - 4.1647787e+03 1.9775875e+03 -2.7314336e+03 - 4.0924618e+03 2.0759948e+03 -2.7474810e+03 - 4.0158485e+03 2.1769517e+03 -2.7628433e+03 - 3.9349366e+03 2.2802904e+03 -2.7773246e+03 - 3.8497789e+03 2.3857834e+03 -2.7907244e+03 - 3.7604902e+03 2.4931407e+03 -2.8028427e+03 - 3.6672528e+03 2.6020100e+03 -2.8134858e+03 - 3.5703193e+03 2.7119802e+03 -2.8224736e+03 - 3.4700125e+03 2.8225874e+03 -2.8296459e+03 - 3.3667215e+03 2.9333249e+03 -2.8348699e+03 - 3.2608949e+03 3.0436561e+03 -2.8380457e+03 - 3.1530294e+03 3.1530294e+03 -2.8391113e+03 - 3.0436561e+03 3.2608949e+03 -2.8380457e+03 - 2.9333249e+03 3.3667215e+03 -2.8348699e+03 - 2.8225874e+03 3.4700125e+03 -2.8296459e+03 - 2.7119802e+03 3.5703193e+03 -2.8224736e+03 - 2.6020100e+03 3.6672528e+03 -2.8134858e+03 - 2.4931407e+03 3.7604902e+03 -2.8028427e+03 - 2.3857834e+03 3.8497789e+03 -2.7907244e+03 - 2.2802904e+03 3.9349366e+03 -2.7773246e+03 - 2.1769517e+03 4.0158485e+03 -2.7628433e+03 - 2.0759948e+03 4.0924618e+03 -2.7474810e+03 - 1.9775875e+03 4.1647787e+03 -2.7314336e+03 - 1.8818417e+03 4.2328484e+03 -2.7148880e+03 - 1.7888192e+03 4.2967587e+03 -2.6980194e+03 - 1.6985381e+03 4.3566280e+03 -2.6809889e+03 - 1.6109793e+03 4.4125971e+03 -2.6639425e+03 - 1.5260927e+03 4.4648228e+03 -2.6470106e+03 - 1.4438039e+03 4.5134719e+03 -2.6303085e+03 - 1.3640192e+03 4.5587157e+03 -2.6139364e+03 - 1.2866307e+03 4.6007264e+03 -2.5979812e+03 - 1.2115201e+03 4.6396735e+03 -2.5825166e+03 - 1.1385628e+03 4.6757217e+03 -2.5676053e+03 - 1.0676301e+03 4.7090285e+03 -2.5532995e+03 - 9.9859187e+02 4.7397434e+03 -2.5396425e+03 - 9.3131815e+02 4.7680070e+03 -2.5266700e+03 - 8.6568050e+02 4.7939501e+03 -2.5144107e+03 - 8.0155294e+02 4.8176942e+03 -2.5028878e+03 - 7.3881267e+02 4.8393506e+03 -2.4921195e+03 - 6.7734038e+02 4.8590213e+03 -2.4821201e+03 - 6.1702059e+02 4.8767988e+03 -2.4729006e+03 - 5.5774157e+02 4.8927666e+03 -2.4644691e+03 - 4.9939539e+02 4.9069994e+03 -2.4568317e+03 - 4.4187770e+02 4.9195635e+03 -2.4499927e+03 - 3.8508749e+02 4.9305173e+03 -2.4439552e+03 - 3.2892685e+02 4.9399113e+03 -2.4387209e+03 - 2.7330059e+02 4.9477887e+03 -2.4342910e+03 - 2.1811594e+02 4.9541856e+03 -2.4306664e+03 - 1.6328213e+02 4.9591310e+03 -2.4278471e+03 - 1.0871000e+02 4.9626476e+03 -2.4258334e+03 - 5.4311660e+01 4.9647512e+03 -2.4246251e+03 - 0.0000000e+00 4.9654513e+03 -2.4242224e+03 - -5.4311660e+01 4.9647512e+03 -2.4246251e+03 - -1.0871000e+02 4.9626476e+03 -2.4258334e+03 - -1.6328213e+02 4.9591310e+03 -2.4278471e+03 - -2.1811594e+02 4.9541856e+03 -2.4306664e+03 - -2.7330059e+02 4.9477887e+03 -2.4342910e+03 - -3.2892685e+02 4.9399113e+03 -2.4387209e+03 - -3.8508749e+02 4.9305173e+03 -2.4439552e+03 - -4.4187770e+02 4.9195635e+03 -2.4499927e+03 - -4.9939539e+02 4.9069994e+03 -2.4568317e+03 - -5.5774157e+02 4.8927666e+03 -2.4644691e+03 - -6.1702059e+02 4.8767988e+03 -2.4729006e+03 - -6.7734038e+02 4.8590213e+03 -2.4821201e+03 - -7.3881267e+02 4.8393506e+03 -2.4921195e+03 - -8.0155294e+02 4.8176942e+03 -2.5028878e+03 - -8.6568050e+02 4.7939501e+03 -2.5144107e+03 - -9.3131815e+02 4.7680070e+03 -2.5266700e+03 - -9.9859187e+02 4.7397434e+03 -2.5396425e+03 - -1.0676301e+03 4.7090285e+03 -2.5532995e+03 - -1.1385628e+03 4.6757217e+03 -2.5676053e+03 - -1.2115201e+03 4.6396735e+03 -2.5825166e+03 - -1.2866307e+03 4.6007264e+03 -2.5979812e+03 - -1.3640192e+03 4.5587157e+03 -2.6139364e+03 - -1.4438039e+03 4.5134719e+03 -2.6303085e+03 - -1.5260927e+03 4.4648228e+03 -2.6470106e+03 - -1.6109793e+03 4.4125971e+03 -2.6639425e+03 - -1.6985381e+03 4.3566280e+03 -2.6809889e+03 - -1.7888192e+03 4.2967587e+03 -2.6980194e+03 - -1.8818417e+03 4.2328484e+03 -2.7148880e+03 - -1.9775875e+03 4.1647787e+03 -2.7314336e+03 - -2.0759948e+03 4.0924618e+03 -2.7474810e+03 - -2.1769517e+03 4.0158485e+03 -2.7628433e+03 - -2.2802904e+03 3.9349366e+03 -2.7773246e+03 - -2.3857834e+03 3.8497789e+03 -2.7907244e+03 - -2.4931407e+03 3.7604902e+03 -2.8028427e+03 - -2.6020100e+03 3.6672528e+03 -2.8134858e+03 - -2.7119802e+03 3.5703193e+03 -2.8224736e+03 - -2.8225874e+03 3.4700125e+03 -2.8296459e+03 - -2.9333249e+03 3.3667215e+03 -2.8348699e+03 - -3.0436561e+03 3.2608949e+03 -2.8380457e+03 - -3.1530294e+03 3.1530294e+03 -2.8391113e+03 - -3.2608949e+03 3.0436561e+03 -2.8380457e+03 - -3.3667215e+03 2.9333249e+03 -2.8348699e+03 - -3.4700125e+03 2.8225874e+03 -2.8296459e+03 - -3.5703193e+03 2.7119802e+03 -2.8224736e+03 - -3.6672528e+03 2.6020100e+03 -2.8134858e+03 - -3.7604902e+03 2.4931407e+03 -2.8028427e+03 - -3.8497789e+03 2.3857834e+03 -2.7907244e+03 - -3.9349366e+03 2.2802904e+03 -2.7773246e+03 - -4.0158485e+03 2.1769517e+03 -2.7628433e+03 - -4.0924618e+03 2.0759948e+03 -2.7474810e+03 - -4.1647787e+03 1.9775875e+03 -2.7314336e+03 - -4.2328484e+03 1.8818417e+03 -2.7148880e+03 - -4.2967587e+03 1.7888192e+03 -2.6980194e+03 - -4.3566280e+03 1.6985381e+03 -2.6809889e+03 - -4.4125971e+03 1.6109793e+03 -2.6639425e+03 - -4.4648228e+03 1.5260927e+03 -2.6470106e+03 - -4.5134719e+03 1.4438039e+03 -2.6303085e+03 - -4.5587157e+03 1.3640192e+03 -2.6139364e+03 - -4.6007264e+03 1.2866307e+03 -2.5979812e+03 - -4.6396735e+03 1.2115201e+03 -2.5825166e+03 - -4.6757217e+03 1.1385628e+03 -2.5676053e+03 - -4.7090285e+03 1.0676301e+03 -2.5532995e+03 - -4.7397434e+03 9.9859187e+02 -2.5396425e+03 - -4.7680070e+03 9.3131815e+02 -2.5266700e+03 - -4.7939501e+03 8.6568050e+02 -2.5144107e+03 - -4.8176942e+03 8.0155294e+02 -2.5028878e+03 - -4.8393506e+03 7.3881267e+02 -2.4921195e+03 - -4.8590213e+03 6.7734038e+02 -2.4821201e+03 - -4.8767988e+03 6.1702059e+02 -2.4729006e+03 - -4.8927666e+03 5.5774157e+02 -2.4644691e+03 - -4.9069994e+03 4.9939539e+02 -2.4568317e+03 - -4.9195635e+03 4.4187770e+02 -2.4499927e+03 - -4.9305173e+03 3.8508749e+02 -2.4439552e+03 - -4.9399113e+03 3.2892685e+02 -2.4387209e+03 - -4.9477887e+03 2.7330059e+02 -2.4342910e+03 - -4.9541856e+03 2.1811594e+02 -2.4306664e+03 - -4.9591310e+03 1.6328213e+02 -2.4278471e+03 - -4.9626476e+03 1.0871000e+02 -2.4258334e+03 - -4.9647512e+03 5.4311660e+01 -2.4246251e+03 - -4.9654513e+03 4.8134273e-09 -2.4242224e+03 - -4.9647512e+03 -5.4311660e+01 -2.4246251e+03 - -4.9626476e+03 -1.0871000e+02 -2.4258334e+03 - -4.9591310e+03 -1.6328213e+02 -2.4278471e+03 - -4.9541856e+03 -2.1811594e+02 -2.4306664e+03 - -4.9477887e+03 -2.7330059e+02 -2.4342910e+03 - -4.9399113e+03 -3.2892685e+02 -2.4387209e+03 - -4.9305173e+03 -3.8508749e+02 -2.4439552e+03 - -4.9195635e+03 -4.4187770e+02 -2.4499927e+03 - -4.9069994e+03 -4.9939539e+02 -2.4568317e+03 - -4.8927666e+03 -5.5774157e+02 -2.4644691e+03 - -4.8767988e+03 -6.1702059e+02 -2.4729006e+03 - -4.8590213e+03 -6.7734038e+02 -2.4821201e+03 - -4.8393506e+03 -7.3881267e+02 -2.4921195e+03 - -4.8176942e+03 -8.0155294e+02 -2.5028878e+03 - -4.7939501e+03 -8.6568050e+02 -2.5144107e+03 - -4.7680070e+03 -9.3131815e+02 -2.5266700e+03 - -4.7397434e+03 -9.9859187e+02 -2.5396425e+03 - -4.7090285e+03 -1.0676301e+03 -2.5532995e+03 - -4.6757217e+03 -1.1385628e+03 -2.5676053e+03 - -4.6396735e+03 -1.2115201e+03 -2.5825166e+03 - -4.6007264e+03 -1.2866307e+03 -2.5979812e+03 - -4.5587157e+03 -1.3640192e+03 -2.6139364e+03 - -4.5134719e+03 -1.4438039e+03 -2.6303085e+03 - -4.4648228e+03 -1.5260927e+03 -2.6470106e+03 - -4.4125971e+03 -1.6109793e+03 -2.6639425e+03 - -4.3566280e+03 -1.6985381e+03 -2.6809889e+03 - -4.2967587e+03 -1.7888192e+03 -2.6980194e+03 - -4.2328484e+03 -1.8818417e+03 -2.7148880e+03 - -4.1647787e+03 -1.9775875e+03 -2.7314336e+03 - -4.0924618e+03 -2.0759948e+03 -2.7474810e+03 - -4.0158485e+03 -2.1769517e+03 -2.7628433e+03 - -3.9349366e+03 -2.2802904e+03 -2.7773246e+03 - -3.8497789e+03 -2.3857834e+03 -2.7907244e+03 - -3.7604902e+03 -2.4931407e+03 -2.8028427e+03 - -3.6672528e+03 -2.6020100e+03 -2.8134858e+03 - -3.5703193e+03 -2.7119802e+03 -2.8224736e+03 - -3.4700125e+03 -2.8225874e+03 -2.8296459e+03 - -3.3667215e+03 -2.9333249e+03 -2.8348699e+03 - -3.2608949e+03 -3.0436561e+03 -2.8380457e+03 - -3.1530294e+03 -3.1530294e+03 -2.8391113e+03 - -3.0436561e+03 -3.2608949e+03 -2.8380457e+03 - -2.9333249e+03 -3.3667215e+03 -2.8348699e+03 - -2.8225874e+03 -3.4700125e+03 -2.8296459e+03 - -2.7119802e+03 -3.5703193e+03 -2.8224736e+03 - -2.6020100e+03 -3.6672528e+03 -2.8134858e+03 - -2.4931407e+03 -3.7604902e+03 -2.8028427e+03 - -2.3857834e+03 -3.8497789e+03 -2.7907244e+03 - -2.2802904e+03 -3.9349366e+03 -2.7773246e+03 - -2.1769517e+03 -4.0158485e+03 -2.7628433e+03 - -2.0759948e+03 -4.0924618e+03 -2.7474810e+03 - -1.9775875e+03 -4.1647787e+03 -2.7314336e+03 - -1.8818417e+03 -4.2328484e+03 -2.7148880e+03 - -1.7888192e+03 -4.2967587e+03 -2.6980194e+03 - -1.6985381e+03 -4.3566280e+03 -2.6809889e+03 - -1.6109793e+03 -4.4125971e+03 -2.6639425e+03 - -1.5260927e+03 -4.4648228e+03 -2.6470106e+03 - -1.4438039e+03 -4.5134719e+03 -2.6303085e+03 - -1.3640192e+03 -4.5587157e+03 -2.6139364e+03 - -1.2866307e+03 -4.6007264e+03 -2.5979812e+03 - -1.2115201e+03 -4.6396735e+03 -2.5825166e+03 - -1.1385628e+03 -4.6757217e+03 -2.5676053e+03 - -1.0676301e+03 -4.7090285e+03 -2.5532995e+03 - -9.9859187e+02 -4.7397434e+03 -2.5396425e+03 - -9.3131815e+02 -4.7680070e+03 -2.5266700e+03 - -8.6568050e+02 -4.7939501e+03 -2.5144107e+03 - -8.0155294e+02 -4.8176942e+03 -2.5028878e+03 - -7.3881267e+02 -4.8393506e+03 -2.4921195e+03 - -6.7734038e+02 -4.8590213e+03 -2.4821201e+03 - -6.1702059e+02 -4.8767988e+03 -2.4729006e+03 - -5.5774157e+02 -4.8927666e+03 -2.4644691e+03 - -4.9939539e+02 -4.9069994e+03 -2.4568317e+03 - -4.4187770e+02 -4.9195635e+03 -2.4499927e+03 - -3.8508749e+02 -4.9305173e+03 -2.4439552e+03 - -3.2892685e+02 -4.9399113e+03 -2.4387209e+03 - -2.7330059e+02 -4.9477887e+03 -2.4342910e+03 - -2.1811594e+02 -4.9541856e+03 -2.4306664e+03 - -1.6328213e+02 -4.9591310e+03 -2.4278471e+03 - -1.0871000e+02 -4.9626476e+03 -2.4258334e+03 - -5.4311660e+01 -4.9647512e+03 -2.4246251e+03 - 0.0000000e+00 -4.9654513e+03 -2.4242224e+03 - 5.4311660e+01 -4.9647512e+03 -2.4246251e+03 - 1.0871000e+02 -4.9626476e+03 -2.4258334e+03 - 1.6328213e+02 -4.9591310e+03 -2.4278471e+03 - 2.1811594e+02 -4.9541856e+03 -2.4306664e+03 - 2.7330059e+02 -4.9477887e+03 -2.4342910e+03 - 3.2892685e+02 -4.9399113e+03 -2.4387209e+03 - 3.8508749e+02 -4.9305173e+03 -2.4439552e+03 - 4.4187770e+02 -4.9195635e+03 -2.4499927e+03 - 4.9939539e+02 -4.9069994e+03 -2.4568317e+03 - 5.5774157e+02 -4.8927666e+03 -2.4644691e+03 - 6.1702059e+02 -4.8767988e+03 -2.4729006e+03 - 6.7734038e+02 -4.8590213e+03 -2.4821201e+03 - 7.3881267e+02 -4.8393506e+03 -2.4921195e+03 - 8.0155294e+02 -4.8176942e+03 -2.5028878e+03 - 8.6568050e+02 -4.7939501e+03 -2.5144107e+03 - 9.3131815e+02 -4.7680070e+03 -2.5266700e+03 - 9.9859187e+02 -4.7397434e+03 -2.5396425e+03 - 1.0676301e+03 -4.7090285e+03 -2.5532995e+03 - 1.1385628e+03 -4.6757217e+03 -2.5676053e+03 - 1.2115201e+03 -4.6396735e+03 -2.5825166e+03 - 1.2866307e+03 -4.6007264e+03 -2.5979812e+03 - 1.3640192e+03 -4.5587157e+03 -2.6139364e+03 - 1.4438039e+03 -4.5134719e+03 -2.6303085e+03 - 1.5260927e+03 -4.4648228e+03 -2.6470106e+03 - 1.6109793e+03 -4.4125971e+03 -2.6639425e+03 - 1.6985381e+03 -4.3566280e+03 -2.6809889e+03 - 1.7888192e+03 -4.2967587e+03 -2.6980194e+03 - 1.8818417e+03 -4.2328484e+03 -2.7148880e+03 - 1.9775875e+03 -4.1647787e+03 -2.7314336e+03 - 2.0759948e+03 -4.0924618e+03 -2.7474810e+03 - 2.1769517e+03 -4.0158485e+03 -2.7628433e+03 - 2.2802904e+03 -3.9349366e+03 -2.7773246e+03 - 2.3857834e+03 -3.8497789e+03 -2.7907244e+03 - 2.4931407e+03 -3.7604902e+03 -2.8028427e+03 - 2.6020100e+03 -3.6672528e+03 -2.8134858e+03 - 2.7119802e+03 -3.5703193e+03 -2.8224736e+03 - 2.8225874e+03 -3.4700125e+03 -2.8296459e+03 - 2.9333249e+03 -3.3667215e+03 -2.8348699e+03 - 3.0436561e+03 -3.2608949e+03 -2.8380457e+03 - 3.1530294e+03 -3.1530294e+03 -2.8391113e+03 - 3.2608949e+03 -3.0436561e+03 -2.8380457e+03 - 3.3667215e+03 -2.9333249e+03 -2.8348699e+03 - 3.4700125e+03 -2.8225874e+03 -2.8296459e+03 - 3.5703193e+03 -2.7119802e+03 -2.8224736e+03 - 3.6672528e+03 -2.6020100e+03 -2.8134858e+03 - 3.7604902e+03 -2.4931407e+03 -2.8028427e+03 - 3.8497789e+03 -2.3857834e+03 -2.7907244e+03 - 3.9349366e+03 -2.2802904e+03 -2.7773246e+03 - 4.0158485e+03 -2.1769517e+03 -2.7628433e+03 - 4.0924618e+03 -2.0759948e+03 -2.7474810e+03 - 4.1647787e+03 -1.9775875e+03 -2.7314336e+03 - 4.2328484e+03 -1.8818417e+03 -2.7148880e+03 - 4.2967587e+03 -1.7888192e+03 -2.6980194e+03 - 4.3566280e+03 -1.6985381e+03 -2.6809889e+03 - 4.4125971e+03 -1.6109793e+03 -2.6639425e+03 - 4.4648228e+03 -1.5260927e+03 -2.6470106e+03 - 4.5134719e+03 -1.4438039e+03 -2.6303085e+03 - 4.5587157e+03 -1.3640192e+03 -2.6139364e+03 - 4.6007264e+03 -1.2866307e+03 -2.5979812e+03 - 4.6396735e+03 -1.2115201e+03 -2.5825166e+03 - 4.6757217e+03 -1.1385628e+03 -2.5676053e+03 - 4.7090285e+03 -1.0676301e+03 -2.5532995e+03 - 4.7397434e+03 -9.9859187e+02 -2.5396425e+03 - 4.7680070e+03 -9.3131815e+02 -2.5266700e+03 - 4.7939501e+03 -8.6568050e+02 -2.5144107e+03 - 4.8176942e+03 -8.0155294e+02 -2.5028878e+03 - 4.8393506e+03 -7.3881267e+02 -2.4921195e+03 - 4.8590213e+03 -6.7734038e+02 -2.4821201e+03 - 4.8767988e+03 -6.1702059e+02 -2.4729006e+03 - 4.8927666e+03 -5.5774157e+02 -2.4644691e+03 - 4.9069994e+03 -4.9939539e+02 -2.4568317e+03 - 4.9195635e+03 -4.4187770e+02 -2.4499927e+03 - 4.9305173e+03 -3.8508749e+02 -2.4439552e+03 - 4.9399113e+03 -3.2892685e+02 -2.4387209e+03 - 4.9477887e+03 -2.7330059e+02 -2.4342910e+03 - 4.9541856e+03 -2.1811594e+02 -2.4306664e+03 - 4.9591310e+03 -1.6328213e+02 -2.4278471e+03 - 4.9626476e+03 -1.0871000e+02 -2.4258334e+03 - 4.9647512e+03 -5.4311660e+01 -2.4246251e+03 - 4.9654513e+03 0.0000000e+00 -2.4242224e+03 - 4.9300998e+03 4.8134273e-09 -2.5072649e+03 - 4.9293898e+03 5.4563967e+01 -2.5076633e+03 - 4.9272566e+03 1.0921397e+02 -2.5088582e+03 - 4.9236907e+03 1.6403641e+02 -2.5108495e+03 - 4.9186766e+03 2.1911847e+02 -2.5136369e+03 - 4.9121920e+03 2.7454847e+02 -2.5172198e+03 - 4.9042081e+03 3.3041623e+02 -2.5215973e+03 - 4.8946894e+03 3.8681345e+02 -2.5267679e+03 - 4.8835935e+03 4.4383402e+02 -2.5327295e+03 - 4.8708706e+03 5.0157434e+02 -2.5394791e+03 - 4.8564635e+03 5.6013363e+02 -2.5470126e+03 - 4.8403073e+03 6.1961413e+02 -2.5553243e+03 - 4.8223289e+03 6.8012133e+02 -2.5644067e+03 - 4.8024468e+03 7.4176399e+02 -2.5742500e+03 - 4.7805711e+03 8.0465426e+02 -2.5848415e+03 - 4.7566026e+03 8.6890745e+02 -2.5961652e+03 - 4.7304336e+03 9.3464181e+02 -2.6082008e+03 - 4.7019470e+03 1.0019781e+03 -2.6209235e+03 - 4.6710168e+03 1.0710387e+03 -2.6343024e+03 - 4.6375085e+03 1.1419468e+03 -2.6483004e+03 - 4.6012795e+03 1.2148250e+03 -2.6628725e+03 - 4.5621800e+03 1.2897933e+03 -2.6779650e+03 - 4.5200547e+03 1.3669674e+03 -2.6935145e+03 - 4.4747443e+03 1.4464552e+03 -2.7094466e+03 - 4.4260881e+03 1.5283540e+03 -2.7256750e+03 - 4.3739274e+03 1.6127464e+03 -2.7421003e+03 - 4.3181092e+03 1.6996958e+03 -2.7586097e+03 - 4.2584912e+03 1.7892408e+03 -2.7750760e+03 - 4.1949473e+03 1.8813905e+03 -2.7913580e+03 - 4.1273741e+03 1.9761178e+03 -2.8073009e+03 - 4.0556980e+03 2.0733540e+03 -2.8227376e+03 - 3.9798824e+03 2.1729832e+03 -2.8374908e+03 - 3.8999356e+03 2.2748371e+03 -2.8513756e+03 - 3.8159174e+03 2.3786921e+03 -2.8642039e+03 - 3.7279457e+03 2.4842670e+03 -2.8757889e+03 - 3.6362004e+03 2.5912240e+03 -2.8859508e+03 - 3.5409262e+03 2.6991714e+03 -2.8945226e+03 - 3.4424320e+03 2.8076703e+03 -2.9013566e+03 - 3.3410872e+03 2.9162432e+03 -2.9063307e+03 - 3.2373148e+03 3.0243861e+03 -2.9093531e+03 - 3.1315817e+03 3.1315817e+03 -2.9103670e+03 - 3.0243861e+03 3.2373148e+03 -2.9093531e+03 - 2.9162432e+03 3.3410872e+03 -2.9063307e+03 - 2.8076703e+03 3.4424320e+03 -2.9013566e+03 - 2.6991714e+03 3.5409262e+03 -2.8945226e+03 - 2.5912240e+03 3.6362004e+03 -2.8859508e+03 - 2.4842670e+03 3.7279457e+03 -2.8757889e+03 - 2.3786921e+03 3.8159174e+03 -2.8642039e+03 - 2.2748371e+03 3.8999356e+03 -2.8513756e+03 - 2.1729832e+03 3.9798824e+03 -2.8374908e+03 - 2.0733540e+03 4.0556980e+03 -2.8227376e+03 - 1.9761178e+03 4.1273741e+03 -2.8073009e+03 - 1.8813905e+03 4.1949473e+03 -2.7913580e+03 - 1.7892408e+03 4.2584912e+03 -2.7750760e+03 - 1.6996958e+03 4.3181092e+03 -2.7586097e+03 - 1.6127464e+03 4.3739274e+03 -2.7421003e+03 - 1.5283540e+03 4.4260881e+03 -2.7256750e+03 - 1.4464552e+03 4.4747443e+03 -2.7094466e+03 - 1.3669674e+03 4.5200547e+03 -2.6935145e+03 - 1.2897933e+03 4.5621800e+03 -2.6779650e+03 - 1.2148250e+03 4.6012795e+03 -2.6628725e+03 - 1.1419468e+03 4.6375085e+03 -2.6483004e+03 - 1.0710387e+03 4.6710168e+03 -2.6343024e+03 - 1.0019781e+03 4.7019470e+03 -2.6209235e+03 - 9.3464181e+02 4.7304336e+03 -2.6082008e+03 - 8.6890745e+02 4.7566026e+03 -2.5961652e+03 - 8.0465426e+02 4.7805711e+03 -2.5848415e+03 - 7.4176399e+02 4.8024468e+03 -2.5742500e+03 - 6.8012133e+02 4.8223289e+03 -2.5644067e+03 - 6.1961413e+02 4.8403073e+03 -2.5553243e+03 - 5.6013363e+02 4.8564635e+03 -2.5470126e+03 - 5.0157434e+02 4.8708706e+03 -2.5394791e+03 - 4.4383402e+02 4.8835935e+03 -2.5327295e+03 - 3.8681345e+02 4.8946894e+03 -2.5267679e+03 - 3.3041623e+02 4.9042081e+03 -2.5215973e+03 - 2.7454847e+02 4.9121920e+03 -2.5172198e+03 - 2.1911847e+02 4.9186766e+03 -2.5136369e+03 - 1.6403641e+02 4.9236907e+03 -2.5108495e+03 - 1.0921397e+02 4.9272566e+03 -2.5088582e+03 - 5.4563967e+01 4.9293898e+03 -2.5076633e+03 - -4.8134273e-09 4.9300998e+03 -2.5072649e+03 - -5.4563967e+01 4.9293898e+03 -2.5076633e+03 - -1.0921397e+02 4.9272566e+03 -2.5088582e+03 - -1.6403641e+02 4.9236907e+03 -2.5108495e+03 - -2.1911847e+02 4.9186766e+03 -2.5136369e+03 - -2.7454847e+02 4.9121920e+03 -2.5172198e+03 - -3.3041623e+02 4.9042081e+03 -2.5215973e+03 - -3.8681345e+02 4.8946894e+03 -2.5267679e+03 - -4.4383402e+02 4.8835935e+03 -2.5327295e+03 - -5.0157434e+02 4.8708706e+03 -2.5394791e+03 - -5.6013363e+02 4.8564635e+03 -2.5470126e+03 - -6.1961413e+02 4.8403073e+03 -2.5553243e+03 - -6.8012133e+02 4.8223289e+03 -2.5644067e+03 - -7.4176399e+02 4.8024468e+03 -2.5742500e+03 - -8.0465426e+02 4.7805711e+03 -2.5848415e+03 - -8.6890745e+02 4.7566026e+03 -2.5961652e+03 - -9.3464181e+02 4.7304336e+03 -2.6082008e+03 - -1.0019781e+03 4.7019470e+03 -2.6209235e+03 - -1.0710387e+03 4.6710168e+03 -2.6343024e+03 - -1.1419468e+03 4.6375085e+03 -2.6483004e+03 - -1.2148250e+03 4.6012795e+03 -2.6628725e+03 - -1.2897933e+03 4.5621800e+03 -2.6779650e+03 - -1.3669674e+03 4.5200547e+03 -2.6935145e+03 - -1.4464552e+03 4.4747443e+03 -2.7094466e+03 - -1.5283540e+03 4.4260881e+03 -2.7256750e+03 - -1.6127464e+03 4.3739274e+03 -2.7421003e+03 - -1.6996958e+03 4.3181092e+03 -2.7586097e+03 - -1.7892408e+03 4.2584912e+03 -2.7750760e+03 - -1.8813905e+03 4.1949473e+03 -2.7913580e+03 - -1.9761178e+03 4.1273741e+03 -2.8073009e+03 - -2.0733540e+03 4.0556980e+03 -2.8227376e+03 - -2.1729832e+03 3.9798824e+03 -2.8374908e+03 - -2.2748371e+03 3.8999356e+03 -2.8513756e+03 - -2.3786921e+03 3.8159174e+03 -2.8642039e+03 - -2.4842670e+03 3.7279457e+03 -2.8757889e+03 - -2.5912240e+03 3.6362004e+03 -2.8859508e+03 - -2.6991714e+03 3.5409262e+03 -2.8945226e+03 - -2.8076703e+03 3.4424320e+03 -2.9013566e+03 - -2.9162432e+03 3.3410872e+03 -2.9063307e+03 - -3.0243861e+03 3.2373148e+03 -2.9093531e+03 - -3.1315817e+03 3.1315817e+03 -2.9103670e+03 - -3.2373148e+03 3.0243861e+03 -2.9093531e+03 - -3.3410872e+03 2.9162432e+03 -2.9063307e+03 - -3.4424320e+03 2.8076703e+03 -2.9013566e+03 - -3.5409262e+03 2.6991714e+03 -2.8945226e+03 - -3.6362004e+03 2.5912240e+03 -2.8859508e+03 - -3.7279457e+03 2.4842670e+03 -2.8757889e+03 - -3.8159174e+03 2.3786921e+03 -2.8642039e+03 - -3.8999356e+03 2.2748371e+03 -2.8513756e+03 - -3.9798824e+03 2.1729832e+03 -2.8374908e+03 - -4.0556980e+03 2.0733540e+03 -2.8227376e+03 - -4.1273741e+03 1.9761178e+03 -2.8073009e+03 - -4.1949473e+03 1.8813905e+03 -2.7913580e+03 - -4.2584912e+03 1.7892408e+03 -2.7750760e+03 - -4.3181092e+03 1.6996958e+03 -2.7586097e+03 - -4.3739274e+03 1.6127464e+03 -2.7421003e+03 - -4.4260881e+03 1.5283540e+03 -2.7256750e+03 - -4.4747443e+03 1.4464552e+03 -2.7094466e+03 - -4.5200547e+03 1.3669674e+03 -2.6935145e+03 - -4.5621800e+03 1.2897933e+03 -2.6779650e+03 - -4.6012795e+03 1.2148250e+03 -2.6628725e+03 - -4.6375085e+03 1.1419468e+03 -2.6483004e+03 - -4.6710168e+03 1.0710387e+03 -2.6343024e+03 - -4.7019470e+03 1.0019781e+03 -2.6209235e+03 - -4.7304336e+03 9.3464181e+02 -2.6082008e+03 - -4.7566026e+03 8.6890745e+02 -2.5961652e+03 - -4.7805711e+03 8.0465426e+02 -2.5848415e+03 - -4.8024468e+03 7.4176399e+02 -2.5742500e+03 - -4.8223289e+03 6.8012133e+02 -2.5644067e+03 - -4.8403073e+03 6.1961413e+02 -2.5553243e+03 - -4.8564635e+03 5.6013363e+02 -2.5470126e+03 - -4.8708706e+03 5.0157434e+02 -2.5394791e+03 - -4.8835935e+03 4.4383402e+02 -2.5327295e+03 - -4.8946894e+03 3.8681345e+02 -2.5267679e+03 - -4.9042081e+03 3.3041623e+02 -2.5215973e+03 - -4.9121920e+03 2.7454847e+02 -2.5172198e+03 - -4.9186766e+03 2.1911847e+02 -2.5136369e+03 - -4.9236907e+03 1.6403641e+02 -2.5108495e+03 - -4.9272566e+03 1.0921397e+02 -2.5088582e+03 - -4.9293898e+03 5.4563967e+01 -2.5076633e+03 - -4.9300998e+03 -4.8134273e-09 -2.5072649e+03 - -4.9293898e+03 -5.4563967e+01 -2.5076633e+03 - -4.9272566e+03 -1.0921397e+02 -2.5088582e+03 - -4.9236907e+03 -1.6403641e+02 -2.5108495e+03 - -4.9186766e+03 -2.1911847e+02 -2.5136369e+03 - -4.9121920e+03 -2.7454847e+02 -2.5172198e+03 - -4.9042081e+03 -3.3041623e+02 -2.5215973e+03 - -4.8946894e+03 -3.8681345e+02 -2.5267679e+03 - -4.8835935e+03 -4.4383402e+02 -2.5327295e+03 - -4.8708706e+03 -5.0157434e+02 -2.5394791e+03 - -4.8564635e+03 -5.6013363e+02 -2.5470126e+03 - -4.8403073e+03 -6.1961413e+02 -2.5553243e+03 - -4.8223289e+03 -6.8012133e+02 -2.5644067e+03 - -4.8024468e+03 -7.4176399e+02 -2.5742500e+03 - -4.7805711e+03 -8.0465426e+02 -2.5848415e+03 - -4.7566026e+03 -8.6890745e+02 -2.5961652e+03 - -4.7304336e+03 -9.3464181e+02 -2.6082008e+03 - -4.7019470e+03 -1.0019781e+03 -2.6209235e+03 - -4.6710168e+03 -1.0710387e+03 -2.6343024e+03 - -4.6375085e+03 -1.1419468e+03 -2.6483004e+03 - -4.6012795e+03 -1.2148250e+03 -2.6628725e+03 - -4.5621800e+03 -1.2897933e+03 -2.6779650e+03 - -4.5200547e+03 -1.3669674e+03 -2.6935145e+03 - -4.4747443e+03 -1.4464552e+03 -2.7094466e+03 - -4.4260881e+03 -1.5283540e+03 -2.7256750e+03 - -4.3739274e+03 -1.6127464e+03 -2.7421003e+03 - -4.3181092e+03 -1.6996958e+03 -2.7586097e+03 - -4.2584912e+03 -1.7892408e+03 -2.7750760e+03 - -4.1949473e+03 -1.8813905e+03 -2.7913580e+03 - -4.1273741e+03 -1.9761178e+03 -2.8073009e+03 - -4.0556980e+03 -2.0733540e+03 -2.8227376e+03 - -3.9798824e+03 -2.1729832e+03 -2.8374908e+03 - -3.8999356e+03 -2.2748371e+03 -2.8513756e+03 - -3.8159174e+03 -2.3786921e+03 -2.8642039e+03 - -3.7279457e+03 -2.4842670e+03 -2.8757889e+03 - -3.6362004e+03 -2.5912240e+03 -2.8859508e+03 - -3.5409262e+03 -2.6991714e+03 -2.8945226e+03 - -3.4424320e+03 -2.8076703e+03 -2.9013566e+03 - -3.3410872e+03 -2.9162432e+03 -2.9063307e+03 - -3.2373148e+03 -3.0243861e+03 -2.9093531e+03 - -3.1315817e+03 -3.1315817e+03 -2.9103670e+03 - -3.0243861e+03 -3.2373148e+03 -2.9093531e+03 - -2.9162432e+03 -3.3410872e+03 -2.9063307e+03 - -2.8076703e+03 -3.4424320e+03 -2.9013566e+03 - -2.6991714e+03 -3.5409262e+03 -2.8945226e+03 - -2.5912240e+03 -3.6362004e+03 -2.8859508e+03 - -2.4842670e+03 -3.7279457e+03 -2.8757889e+03 - -2.3786921e+03 -3.8159174e+03 -2.8642039e+03 - -2.2748371e+03 -3.8999356e+03 -2.8513756e+03 - -2.1729832e+03 -3.9798824e+03 -2.8374908e+03 - -2.0733540e+03 -4.0556980e+03 -2.8227376e+03 - -1.9761178e+03 -4.1273741e+03 -2.8073009e+03 - -1.8813905e+03 -4.1949473e+03 -2.7913580e+03 - -1.7892408e+03 -4.2584912e+03 -2.7750760e+03 - -1.6996958e+03 -4.3181092e+03 -2.7586097e+03 - -1.6127464e+03 -4.3739274e+03 -2.7421003e+03 - -1.5283540e+03 -4.4260881e+03 -2.7256750e+03 - -1.4464552e+03 -4.4747443e+03 -2.7094466e+03 - -1.3669674e+03 -4.5200547e+03 -2.6935145e+03 - -1.2897933e+03 -4.5621800e+03 -2.6779650e+03 - -1.2148250e+03 -4.6012795e+03 -2.6628725e+03 - -1.1419468e+03 -4.6375085e+03 -2.6483004e+03 - -1.0710387e+03 -4.6710168e+03 -2.6343024e+03 - -1.0019781e+03 -4.7019470e+03 -2.6209235e+03 - -9.3464181e+02 -4.7304336e+03 -2.6082008e+03 - -8.6890745e+02 -4.7566026e+03 -2.5961652e+03 - -8.0465426e+02 -4.7805711e+03 -2.5848415e+03 - -7.4176399e+02 -4.8024468e+03 -2.5742500e+03 - -6.8012133e+02 -4.8223289e+03 -2.5644067e+03 - -6.1961413e+02 -4.8403073e+03 -2.5553243e+03 - -5.6013363e+02 -4.8564635e+03 -2.5470126e+03 - -5.0157434e+02 -4.8708706e+03 -2.5394791e+03 - -4.4383402e+02 -4.8835935e+03 -2.5327295e+03 - -3.8681345e+02 -4.8946894e+03 -2.5267679e+03 - -3.3041623e+02 -4.9042081e+03 -2.5215973e+03 - -2.7454847e+02 -4.9121920e+03 -2.5172198e+03 - -2.1911847e+02 -4.9186766e+03 -2.5136369e+03 - -1.6403641e+02 -4.9236907e+03 -2.5108495e+03 - -1.0921397e+02 -4.9272566e+03 -2.5088582e+03 - -5.4563967e+01 -4.9293898e+03 -2.5076633e+03 - 9.6268545e-09 -4.9300998e+03 -2.5072649e+03 - 5.4563967e+01 -4.9293898e+03 -2.5076633e+03 - 1.0921397e+02 -4.9272566e+03 -2.5088582e+03 - 1.6403641e+02 -4.9236907e+03 -2.5108495e+03 - 2.1911847e+02 -4.9186766e+03 -2.5136369e+03 - 2.7454847e+02 -4.9121920e+03 -2.5172198e+03 - 3.3041623e+02 -4.9042081e+03 -2.5215973e+03 - 3.8681345e+02 -4.8946894e+03 -2.5267679e+03 - 4.4383402e+02 -4.8835935e+03 -2.5327295e+03 - 5.0157434e+02 -4.8708706e+03 -2.5394791e+03 - 5.6013363e+02 -4.8564635e+03 -2.5470126e+03 - 6.1961413e+02 -4.8403073e+03 -2.5553243e+03 - 6.8012133e+02 -4.8223289e+03 -2.5644067e+03 - 7.4176399e+02 -4.8024468e+03 -2.5742500e+03 - 8.0465426e+02 -4.7805711e+03 -2.5848415e+03 - 8.6890745e+02 -4.7566026e+03 -2.5961652e+03 - 9.3464181e+02 -4.7304336e+03 -2.6082008e+03 - 1.0019781e+03 -4.7019470e+03 -2.6209235e+03 - 1.0710387e+03 -4.6710168e+03 -2.6343024e+03 - 1.1419468e+03 -4.6375085e+03 -2.6483004e+03 - 1.2148250e+03 -4.6012795e+03 -2.6628725e+03 - 1.2897933e+03 -4.5621800e+03 -2.6779650e+03 - 1.3669674e+03 -4.5200547e+03 -2.6935145e+03 - 1.4464552e+03 -4.4747443e+03 -2.7094466e+03 - 1.5283540e+03 -4.4260881e+03 -2.7256750e+03 - 1.6127464e+03 -4.3739274e+03 -2.7421003e+03 - 1.6996958e+03 -4.3181092e+03 -2.7586097e+03 - 1.7892408e+03 -4.2584912e+03 -2.7750760e+03 - 1.8813905e+03 -4.1949473e+03 -2.7913580e+03 - 1.9761178e+03 -4.1273741e+03 -2.8073009e+03 - 2.0733540e+03 -4.0556980e+03 -2.8227376e+03 - 2.1729832e+03 -3.9798824e+03 -2.8374908e+03 - 2.2748371e+03 -3.8999356e+03 -2.8513756e+03 - 2.3786921e+03 -3.8159174e+03 -2.8642039e+03 - 2.4842670e+03 -3.7279457e+03 -2.8757889e+03 - 2.5912240e+03 -3.6362004e+03 -2.8859508e+03 - 2.6991714e+03 -3.5409262e+03 -2.8945226e+03 - 2.8076703e+03 -3.4424320e+03 -2.9013566e+03 - 2.9162432e+03 -3.3410872e+03 -2.9063307e+03 - 3.0243861e+03 -3.2373148e+03 -2.9093531e+03 - 3.1315817e+03 -3.1315817e+03 -2.9103670e+03 - 3.2373148e+03 -3.0243861e+03 -2.9093531e+03 - 3.3410872e+03 -2.9162432e+03 -2.9063307e+03 - 3.4424320e+03 -2.8076703e+03 -2.9013566e+03 - 3.5409262e+03 -2.6991714e+03 -2.8945226e+03 - 3.6362004e+03 -2.5912240e+03 -2.8859508e+03 - 3.7279457e+03 -2.4842670e+03 -2.8757889e+03 - 3.8159174e+03 -2.3786921e+03 -2.8642039e+03 - 3.8999356e+03 -2.2748371e+03 -2.8513756e+03 - 3.9798824e+03 -2.1729832e+03 -2.8374908e+03 - 4.0556980e+03 -2.0733540e+03 -2.8227376e+03 - 4.1273741e+03 -1.9761178e+03 -2.8073009e+03 - 4.1949473e+03 -1.8813905e+03 -2.7913580e+03 - 4.2584912e+03 -1.7892408e+03 -2.7750760e+03 - 4.3181092e+03 -1.6996958e+03 -2.7586097e+03 - 4.3739274e+03 -1.6127464e+03 -2.7421003e+03 - 4.4260881e+03 -1.5283540e+03 -2.7256750e+03 - 4.4747443e+03 -1.4464552e+03 -2.7094466e+03 - 4.5200547e+03 -1.3669674e+03 -2.6935145e+03 - 4.5621800e+03 -1.2897933e+03 -2.6779650e+03 - 4.6012795e+03 -1.2148250e+03 -2.6628725e+03 - 4.6375085e+03 -1.1419468e+03 -2.6483004e+03 - 4.6710168e+03 -1.0710387e+03 -2.6343024e+03 - 4.7019470e+03 -1.0019781e+03 -2.6209235e+03 - 4.7304336e+03 -9.3464181e+02 -2.6082008e+03 - 4.7566026e+03 -8.6890745e+02 -2.5961652e+03 - 4.7805711e+03 -8.0465426e+02 -2.5848415e+03 - 4.8024468e+03 -7.4176399e+02 -2.5742500e+03 - 4.8223289e+03 -6.8012133e+02 -2.5644067e+03 - 4.8403073e+03 -6.1961413e+02 -2.5553243e+03 - 4.8564635e+03 -5.6013363e+02 -2.5470126e+03 - 4.8708706e+03 -5.0157434e+02 -2.5394791e+03 - 4.8835935e+03 -4.4383402e+02 -2.5327295e+03 - 4.8946894e+03 -3.8681345e+02 -2.5267679e+03 - 4.9042081e+03 -3.3041623e+02 -2.5215973e+03 - 4.9121920e+03 -2.7454847e+02 -2.5172198e+03 - 4.9186766e+03 -2.1911847e+02 -2.5136369e+03 - 4.9236907e+03 -1.6403641e+02 -2.5108495e+03 - 4.9272566e+03 -1.0921397e+02 -2.5088582e+03 - 4.9293898e+03 -5.4563967e+01 -2.5076633e+03 - 4.9300998e+03 0.0000000e+00 -2.5072649e+03 - 4.8942238e+03 0.0000000e+00 -2.5871496e+03 - 4.8935045e+03 5.4810416e+01 -2.5875425e+03 - 4.8913435e+03 1.0970611e+02 -2.5887208e+03 - 4.8877315e+03 1.6477272e+02 -2.5906842e+03 - 4.8826531e+03 2.2009660e+02 -2.5934321e+03 - 4.8760863e+03 2.7576512e+02 -2.5969634e+03 - 4.8680029e+03 3.3186709e+02 -2.6012766e+03 - 4.8583680e+03 3.8849298e+02 -2.6063694e+03 - 4.8471399e+03 4.4573532e+02 -2.6122390e+03 - 4.8342698e+03 5.0368891e+02 -2.6188812e+03 - 4.8197016e+03 5.6245106e+02 -2.6262909e+03 - 4.8033719e+03 6.2212184e+02 -2.6344611e+03 - 4.7852094e+03 6.8280415e+02 -2.6433829e+03 - 4.7651346e+03 7.4460379e+02 -2.6530450e+03 - 4.7430603e+03 8.0762943e+02 -2.6634333e+03 - 4.7188904e+03 8.7199239e+02 -2.6745299e+03 - 4.6925207e+03 9.3780634e+02 -2.6863132e+03 - 4.6638385e+03 1.0051868e+03 -2.6987564e+03 - 4.6327229e+03 1.0742502e+03 -2.7118274e+03 - 4.5990452e+03 1.1451130e+03 -2.7254873e+03 - 4.5626698e+03 1.2178905e+03 -2.7396899e+03 - 4.5234546e+03 1.2926945e+03 -2.7543807e+03 - 4.4812533e+03 1.3696315e+03 -2.7694957e+03 - 4.4359164e+03 1.4488001e+03 -2.7849605e+03 - 4.3872945e+03 1.5302874e+03 -2.8006894e+03 - 4.3352409e+03 1.6141655e+03 -2.8165848e+03 - 4.2796154e+03 1.7004874e+03 -2.8325362e+03 - 4.2202894e+03 1.7892817e+03 -2.8484204e+03 - 4.1571505e+03 1.8805480e+03 -2.8641012e+03 - 4.0901090e+03 1.9742514e+03 -2.8794304e+03 - 4.0191041e+03 2.0703174e+03 -2.8942488e+03 - 3.9441105e+03 2.1686268e+03 -2.9083886e+03 - 3.8651454e+03 2.2690117e+03 -2.9216758e+03 - 3.7822747e+03 2.3712529e+03 -2.9339344e+03 - 3.6956180e+03 2.4750782e+03 -2.9449900e+03 - 3.6053525e+03 2.5801635e+03 -2.9546758e+03 - 3.5117149e+03 2.6861360e+03 -2.9628375e+03 - 3.4150006e+03 2.7925803e+03 -2.9693389e+03 - 3.3155599e+03 2.8990462e+03 -2.9740677e+03 - 3.2137921e+03 3.0050599e+03 -2.9769397e+03 - 3.1101363e+03 3.1101363e+03 -2.9779029e+03 - 3.0050599e+03 3.2137921e+03 -2.9769397e+03 - 2.8990462e+03 3.3155599e+03 -2.9740677e+03 - 2.7925803e+03 3.4150006e+03 -2.9693389e+03 - 2.6861360e+03 3.5117149e+03 -2.9628375e+03 - 2.5801635e+03 3.6053525e+03 -2.9546758e+03 - 2.4750782e+03 3.6956180e+03 -2.9449900e+03 - 2.3712529e+03 3.7822747e+03 -2.9339344e+03 - 2.2690117e+03 3.8651454e+03 -2.9216758e+03 - 2.1686268e+03 3.9441105e+03 -2.9083886e+03 - 2.0703174e+03 4.0191041e+03 -2.8942488e+03 - 1.9742514e+03 4.0901090e+03 -2.8794304e+03 - 1.8805480e+03 4.1571505e+03 -2.8641012e+03 - 1.7892817e+03 4.2202894e+03 -2.8484204e+03 - 1.7004874e+03 4.2796154e+03 -2.8325362e+03 - 1.6141655e+03 4.3352409e+03 -2.8165848e+03 - 1.5302874e+03 4.3872945e+03 -2.8006894e+03 - 1.4488001e+03 4.4359164e+03 -2.7849605e+03 - 1.3696315e+03 4.4812533e+03 -2.7694957e+03 - 1.2926945e+03 4.5234546e+03 -2.7543807e+03 - 1.2178905e+03 4.5626698e+03 -2.7396899e+03 - 1.1451130e+03 4.5990452e+03 -2.7254873e+03 - 1.0742502e+03 4.6327229e+03 -2.7118274e+03 - 1.0051868e+03 4.6638385e+03 -2.6987564e+03 - 9.3780634e+02 4.6925207e+03 -2.6863132e+03 - 8.7199239e+02 4.7188904e+03 -2.6745299e+03 - 8.0762943e+02 4.7430603e+03 -2.6634333e+03 - 7.4460379e+02 4.7651346e+03 -2.6530450e+03 - 6.8280415e+02 4.7852094e+03 -2.6433829e+03 - 6.2212184e+02 4.8033719e+03 -2.6344611e+03 - 5.6245106e+02 4.8197016e+03 -2.6262909e+03 - 5.0368891e+02 4.8342698e+03 -2.6188812e+03 - 4.4573532e+02 4.8471399e+03 -2.6122390e+03 - 3.8849298e+02 4.8583680e+03 -2.6063694e+03 - 3.3186709e+02 4.8680029e+03 -2.6012766e+03 - 2.7576512e+02 4.8760863e+03 -2.5969634e+03 - 2.2009660e+02 4.8826531e+03 -2.5934321e+03 - 1.6477272e+02 4.8877315e+03 -2.5906842e+03 - 1.0970611e+02 4.8913435e+03 -2.5887208e+03 - 5.4810416e+01 4.8935045e+03 -2.5875425e+03 - 4.8134273e-09 4.8942238e+03 -2.5871496e+03 - -5.4810416e+01 4.8935045e+03 -2.5875425e+03 - -1.0970611e+02 4.8913435e+03 -2.5887208e+03 - -1.6477272e+02 4.8877315e+03 -2.5906842e+03 - -2.2009660e+02 4.8826531e+03 -2.5934321e+03 - -2.7576512e+02 4.8760863e+03 -2.5969634e+03 - -3.3186709e+02 4.8680029e+03 -2.6012766e+03 - -3.8849298e+02 4.8583680e+03 -2.6063694e+03 - -4.4573532e+02 4.8471399e+03 -2.6122390e+03 - -5.0368891e+02 4.8342698e+03 -2.6188812e+03 - -5.6245106e+02 4.8197016e+03 -2.6262909e+03 - -6.2212184e+02 4.8033719e+03 -2.6344611e+03 - -6.8280415e+02 4.7852094e+03 -2.6433829e+03 - -7.4460379e+02 4.7651346e+03 -2.6530450e+03 - -8.0762943e+02 4.7430603e+03 -2.6634333e+03 - -8.7199239e+02 4.7188904e+03 -2.6745299e+03 - -9.3780634e+02 4.6925207e+03 -2.6863132e+03 - -1.0051868e+03 4.6638385e+03 -2.6987564e+03 - -1.0742502e+03 4.6327229e+03 -2.7118274e+03 - -1.1451130e+03 4.5990452e+03 -2.7254873e+03 - -1.2178905e+03 4.5626698e+03 -2.7396899e+03 - -1.2926945e+03 4.5234546e+03 -2.7543807e+03 - -1.3696315e+03 4.4812533e+03 -2.7694957e+03 - -1.4488001e+03 4.4359164e+03 -2.7849605e+03 - -1.5302874e+03 4.3872945e+03 -2.8006894e+03 - -1.6141655e+03 4.3352409e+03 -2.8165848e+03 - -1.7004874e+03 4.2796154e+03 -2.8325362e+03 - -1.7892817e+03 4.2202894e+03 -2.8484204e+03 - -1.8805480e+03 4.1571505e+03 -2.8641012e+03 - -1.9742514e+03 4.0901090e+03 -2.8794304e+03 - -2.0703174e+03 4.0191041e+03 -2.8942488e+03 - -2.1686268e+03 3.9441105e+03 -2.9083886e+03 - -2.2690117e+03 3.8651454e+03 -2.9216758e+03 - -2.3712529e+03 3.7822747e+03 -2.9339344e+03 - -2.4750782e+03 3.6956180e+03 -2.9449900e+03 - -2.5801635e+03 3.6053525e+03 -2.9546758e+03 - -2.6861360e+03 3.5117149e+03 -2.9628375e+03 - -2.7925803e+03 3.4150006e+03 -2.9693389e+03 - -2.8990462e+03 3.3155599e+03 -2.9740677e+03 - -3.0050599e+03 3.2137921e+03 -2.9769397e+03 - -3.1101363e+03 3.1101363e+03 -2.9779029e+03 - -3.2137921e+03 3.0050599e+03 -2.9769397e+03 - -3.3155599e+03 2.8990462e+03 -2.9740677e+03 - -3.4150006e+03 2.7925803e+03 -2.9693389e+03 - -3.5117149e+03 2.6861360e+03 -2.9628375e+03 - -3.6053525e+03 2.5801635e+03 -2.9546758e+03 - -3.6956180e+03 2.4750782e+03 -2.9449900e+03 - -3.7822747e+03 2.3712529e+03 -2.9339344e+03 - -3.8651454e+03 2.2690117e+03 -2.9216758e+03 - -3.9441105e+03 2.1686268e+03 -2.9083886e+03 - -4.0191041e+03 2.0703174e+03 -2.8942488e+03 - -4.0901090e+03 1.9742514e+03 -2.8794304e+03 - -4.1571505e+03 1.8805480e+03 -2.8641012e+03 - -4.2202894e+03 1.7892817e+03 -2.8484204e+03 - -4.2796154e+03 1.7004874e+03 -2.8325362e+03 - -4.3352409e+03 1.6141655e+03 -2.8165848e+03 - -4.3872945e+03 1.5302874e+03 -2.8006894e+03 - -4.4359164e+03 1.4488001e+03 -2.7849605e+03 - -4.4812533e+03 1.3696315e+03 -2.7694957e+03 - -4.5234546e+03 1.2926945e+03 -2.7543807e+03 - -4.5626698e+03 1.2178905e+03 -2.7396899e+03 - -4.5990452e+03 1.1451130e+03 -2.7254873e+03 - -4.6327229e+03 1.0742502e+03 -2.7118274e+03 - -4.6638385e+03 1.0051868e+03 -2.6987564e+03 - -4.6925207e+03 9.3780634e+02 -2.6863132e+03 - -4.7188904e+03 8.7199239e+02 -2.6745299e+03 - -4.7430603e+03 8.0762943e+02 -2.6634333e+03 - -4.7651346e+03 7.4460379e+02 -2.6530450e+03 - -4.7852094e+03 6.8280415e+02 -2.6433829e+03 - -4.8033719e+03 6.2212184e+02 -2.6344611e+03 - -4.8197016e+03 5.6245106e+02 -2.6262909e+03 - -4.8342698e+03 5.0368891e+02 -2.6188812e+03 - -4.8471399e+03 4.4573532e+02 -2.6122390e+03 - -4.8583680e+03 3.8849298e+02 -2.6063694e+03 - -4.8680029e+03 3.3186709e+02 -2.6012766e+03 - -4.8760863e+03 2.7576512e+02 -2.5969634e+03 - -4.8826531e+03 2.2009660e+02 -2.5934321e+03 - -4.8877315e+03 1.6477272e+02 -2.5906842e+03 - -4.8913435e+03 1.0970611e+02 -2.5887208e+03 - -4.8935045e+03 5.4810416e+01 -2.5875425e+03 - -4.8942238e+03 4.8134273e-09 -2.5871496e+03 - -4.8935045e+03 -5.4810416e+01 -2.5875425e+03 - -4.8913435e+03 -1.0970611e+02 -2.5887208e+03 - -4.8877315e+03 -1.6477272e+02 -2.5906842e+03 - -4.8826531e+03 -2.2009660e+02 -2.5934321e+03 - -4.8760863e+03 -2.7576512e+02 -2.5969634e+03 - -4.8680029e+03 -3.3186709e+02 -2.6012766e+03 - -4.8583680e+03 -3.8849298e+02 -2.6063694e+03 - -4.8471399e+03 -4.4573532e+02 -2.6122390e+03 - -4.8342698e+03 -5.0368891e+02 -2.6188812e+03 - -4.8197016e+03 -5.6245106e+02 -2.6262909e+03 - -4.8033719e+03 -6.2212184e+02 -2.6344611e+03 - -4.7852094e+03 -6.8280415e+02 -2.6433829e+03 - -4.7651346e+03 -7.4460379e+02 -2.6530450e+03 - -4.7430603e+03 -8.0762943e+02 -2.6634333e+03 - -4.7188904e+03 -8.7199239e+02 -2.6745299e+03 - -4.6925207e+03 -9.3780634e+02 -2.6863132e+03 - -4.6638385e+03 -1.0051868e+03 -2.6987564e+03 - -4.6327229e+03 -1.0742502e+03 -2.7118274e+03 - -4.5990452e+03 -1.1451130e+03 -2.7254873e+03 - -4.5626698e+03 -1.2178905e+03 -2.7396899e+03 - -4.5234546e+03 -1.2926945e+03 -2.7543807e+03 - -4.4812533e+03 -1.3696315e+03 -2.7694957e+03 - -4.4359164e+03 -1.4488001e+03 -2.7849605e+03 - -4.3872945e+03 -1.5302874e+03 -2.8006894e+03 - -4.3352409e+03 -1.6141655e+03 -2.8165848e+03 - -4.2796154e+03 -1.7004874e+03 -2.8325362e+03 - -4.2202894e+03 -1.7892817e+03 -2.8484204e+03 - -4.1571505e+03 -1.8805480e+03 -2.8641012e+03 - -4.0901090e+03 -1.9742514e+03 -2.8794304e+03 - -4.0191041e+03 -2.0703174e+03 -2.8942488e+03 - -3.9441105e+03 -2.1686268e+03 -2.9083886e+03 - -3.8651454e+03 -2.2690117e+03 -2.9216758e+03 - -3.7822747e+03 -2.3712529e+03 -2.9339344e+03 - -3.6956180e+03 -2.4750782e+03 -2.9449900e+03 - -3.6053525e+03 -2.5801635e+03 -2.9546758e+03 - -3.5117149e+03 -2.6861360e+03 -2.9628375e+03 - -3.4150006e+03 -2.7925803e+03 -2.9693389e+03 - -3.3155599e+03 -2.8990462e+03 -2.9740677e+03 - -3.2137921e+03 -3.0050599e+03 -2.9769397e+03 - -3.1101363e+03 -3.1101363e+03 -2.9779029e+03 - -3.0050599e+03 -3.2137921e+03 -2.9769397e+03 - -2.8990462e+03 -3.3155599e+03 -2.9740677e+03 - -2.7925803e+03 -3.4150006e+03 -2.9693389e+03 - -2.6861360e+03 -3.5117149e+03 -2.9628375e+03 - -2.5801635e+03 -3.6053525e+03 -2.9546758e+03 - -2.4750782e+03 -3.6956180e+03 -2.9449900e+03 - -2.3712529e+03 -3.7822747e+03 -2.9339344e+03 - -2.2690117e+03 -3.8651454e+03 -2.9216758e+03 - -2.1686268e+03 -3.9441105e+03 -2.9083886e+03 - -2.0703174e+03 -4.0191041e+03 -2.8942488e+03 - -1.9742514e+03 -4.0901090e+03 -2.8794304e+03 - -1.8805480e+03 -4.1571505e+03 -2.8641012e+03 - -1.7892817e+03 -4.2202894e+03 -2.8484204e+03 - -1.7004874e+03 -4.2796154e+03 -2.8325362e+03 - -1.6141655e+03 -4.3352409e+03 -2.8165848e+03 - -1.5302874e+03 -4.3872945e+03 -2.8006894e+03 - -1.4488001e+03 -4.4359164e+03 -2.7849605e+03 - -1.3696315e+03 -4.4812533e+03 -2.7694957e+03 - -1.2926945e+03 -4.5234546e+03 -2.7543807e+03 - -1.2178905e+03 -4.5626698e+03 -2.7396899e+03 - -1.1451130e+03 -4.5990452e+03 -2.7254873e+03 - -1.0742502e+03 -4.6327229e+03 -2.7118274e+03 - -1.0051868e+03 -4.6638385e+03 -2.6987564e+03 - -9.3780634e+02 -4.6925207e+03 -2.6863132e+03 - -8.7199239e+02 -4.7188904e+03 -2.6745299e+03 - -8.0762943e+02 -4.7430603e+03 -2.6634333e+03 - -7.4460379e+02 -4.7651346e+03 -2.6530450e+03 - -6.8280415e+02 -4.7852094e+03 -2.6433829e+03 - -6.2212184e+02 -4.8033719e+03 -2.6344611e+03 - -5.6245106e+02 -4.8197016e+03 -2.6262909e+03 - -5.0368891e+02 -4.8342698e+03 -2.6188812e+03 - -4.4573532e+02 -4.8471399e+03 -2.6122390e+03 - -3.8849298e+02 -4.8583680e+03 -2.6063694e+03 - -3.3186709e+02 -4.8680029e+03 -2.6012766e+03 - -2.7576512e+02 -4.8760863e+03 -2.5969634e+03 - -2.2009660e+02 -4.8826531e+03 -2.5934321e+03 - -1.6477272e+02 -4.8877315e+03 -2.5906842e+03 - -1.0970611e+02 -4.8913435e+03 -2.5887208e+03 - -5.4810416e+01 -4.8935045e+03 -2.5875425e+03 - 4.8134273e-09 -4.8942238e+03 -2.5871496e+03 - 5.4810416e+01 -4.8935045e+03 -2.5875425e+03 - 1.0970611e+02 -4.8913435e+03 -2.5887208e+03 - 1.6477272e+02 -4.8877315e+03 -2.5906842e+03 - 2.2009660e+02 -4.8826531e+03 -2.5934321e+03 - 2.7576512e+02 -4.8760863e+03 -2.5969634e+03 - 3.3186709e+02 -4.8680029e+03 -2.6012766e+03 - 3.8849298e+02 -4.8583680e+03 -2.6063694e+03 - 4.4573532e+02 -4.8471399e+03 -2.6122390e+03 - 5.0368891e+02 -4.8342698e+03 -2.6188812e+03 - 5.6245106e+02 -4.8197016e+03 -2.6262909e+03 - 6.2212184e+02 -4.8033719e+03 -2.6344611e+03 - 6.8280415e+02 -4.7852094e+03 -2.6433829e+03 - 7.4460379e+02 -4.7651346e+03 -2.6530450e+03 - 8.0762943e+02 -4.7430603e+03 -2.6634333e+03 - 8.7199239e+02 -4.7188904e+03 -2.6745299e+03 - 9.3780634e+02 -4.6925207e+03 -2.6863132e+03 - 1.0051868e+03 -4.6638385e+03 -2.6987564e+03 - 1.0742502e+03 -4.6327229e+03 -2.7118274e+03 - 1.1451130e+03 -4.5990452e+03 -2.7254873e+03 - 1.2178905e+03 -4.5626698e+03 -2.7396899e+03 - 1.2926945e+03 -4.5234546e+03 -2.7543807e+03 - 1.3696315e+03 -4.4812533e+03 -2.7694957e+03 - 1.4488001e+03 -4.4359164e+03 -2.7849605e+03 - 1.5302874e+03 -4.3872945e+03 -2.8006894e+03 - 1.6141655e+03 -4.3352409e+03 -2.8165848e+03 - 1.7004874e+03 -4.2796154e+03 -2.8325362e+03 - 1.7892817e+03 -4.2202894e+03 -2.8484204e+03 - 1.8805480e+03 -4.1571505e+03 -2.8641012e+03 - 1.9742514e+03 -4.0901090e+03 -2.8794304e+03 - 2.0703174e+03 -4.0191041e+03 -2.8942488e+03 - 2.1686268e+03 -3.9441105e+03 -2.9083886e+03 - 2.2690117e+03 -3.8651454e+03 -2.9216758e+03 - 2.3712529e+03 -3.7822747e+03 -2.9339344e+03 - 2.4750782e+03 -3.6956180e+03 -2.9449900e+03 - 2.5801635e+03 -3.6053525e+03 -2.9546758e+03 - 2.6861360e+03 -3.5117149e+03 -2.9628375e+03 - 2.7925803e+03 -3.4150006e+03 -2.9693389e+03 - 2.8990462e+03 -3.3155599e+03 -2.9740677e+03 - 3.0050599e+03 -3.2137921e+03 -2.9769397e+03 - 3.1101363e+03 -3.1101363e+03 -2.9779029e+03 - 3.2137921e+03 -3.0050599e+03 -2.9769397e+03 - 3.3155599e+03 -2.8990462e+03 -2.9740677e+03 - 3.4150006e+03 -2.7925803e+03 -2.9693389e+03 - 3.5117149e+03 -2.6861360e+03 -2.9628375e+03 - 3.6053525e+03 -2.5801635e+03 -2.9546758e+03 - 3.6956180e+03 -2.4750782e+03 -2.9449900e+03 - 3.7822747e+03 -2.3712529e+03 -2.9339344e+03 - 3.8651454e+03 -2.2690117e+03 -2.9216758e+03 - 3.9441105e+03 -2.1686268e+03 -2.9083886e+03 - 4.0191041e+03 -2.0703174e+03 -2.8942488e+03 - 4.0901090e+03 -1.9742514e+03 -2.8794304e+03 - 4.1571505e+03 -1.8805480e+03 -2.8641012e+03 - 4.2202894e+03 -1.7892817e+03 -2.8484204e+03 - 4.2796154e+03 -1.7004874e+03 -2.8325362e+03 - 4.3352409e+03 -1.6141655e+03 -2.8165848e+03 - 4.3872945e+03 -1.5302874e+03 -2.8006894e+03 - 4.4359164e+03 -1.4488001e+03 -2.7849605e+03 - 4.4812533e+03 -1.3696315e+03 -2.7694957e+03 - 4.5234546e+03 -1.2926945e+03 -2.7543807e+03 - 4.5626698e+03 -1.2178905e+03 -2.7396899e+03 - 4.5990452e+03 -1.1451130e+03 -2.7254873e+03 - 4.6327229e+03 -1.0742502e+03 -2.7118274e+03 - 4.6638385e+03 -1.0051868e+03 -2.6987564e+03 - 4.6925207e+03 -9.3780634e+02 -2.6863132e+03 - 4.7188904e+03 -8.7199239e+02 -2.6745299e+03 - 4.7430603e+03 -8.0762943e+02 -2.6634333e+03 - 4.7651346e+03 -7.4460379e+02 -2.6530450e+03 - 4.7852094e+03 -6.8280415e+02 -2.6433829e+03 - 4.8033719e+03 -6.2212184e+02 -2.6344611e+03 - 4.8197016e+03 -5.6245106e+02 -2.6262909e+03 - 4.8342698e+03 -5.0368891e+02 -2.6188812e+03 - 4.8471399e+03 -4.4573532e+02 -2.6122390e+03 - 4.8583680e+03 -3.8849298e+02 -2.6063694e+03 - 4.8680029e+03 -3.3186709e+02 -2.6012766e+03 - 4.8760863e+03 -2.7576512e+02 -2.5969634e+03 - 4.8826531e+03 -2.2009660e+02 -2.5934321e+03 - 4.8877315e+03 -1.6477272e+02 -2.5906842e+03 - 4.8913435e+03 -1.0970611e+02 -2.5887208e+03 - 4.8935045e+03 -5.4810416e+01 -2.5875425e+03 - 4.8942238e+03 -4.8134273e-09 -2.5871496e+03 - 4.8578642e+03 -4.8134273e-09 -2.6640350e+03 - 4.8571362e+03 5.5050067e+01 -2.6644213e+03 - 4.8549493e+03 1.1018457e+02 -2.6655802e+03 - 4.8512942e+03 1.6548827e+02 -2.6675111e+03 - 4.8461558e+03 2.2104658e+02 -2.6702130e+03 - 4.8395126e+03 2.7694588e+02 -2.6736843e+03 - 4.8313368e+03 3.3327382e+02 -2.6779230e+03 - 4.8215942e+03 3.9011959e+02 -2.6829262e+03 - 4.8102438e+03 4.4757423e+02 -2.6886902e+03 - 4.7972379e+03 5.0573084e+02 -2.6952099e+03 - 4.7825218e+03 5.6468477e+02 -2.7024790e+03 - 4.7660334e+03 6.2453379e+02 -2.7104895e+03 - 4.7477033e+03 6.8537816e+02 -2.7192312e+03 - 4.7274544e+03 7.4732065e+02 -2.7286914e+03 - 4.7052019e+03 8.1046638e+02 -2.7388547e+03 - 4.6808531e+03 8.7492267e+02 -2.7497018e+03 - 4.6543073e+03 9.4079860e+02 -2.7612094e+03 - 4.6254563e+03 1.0082044e+03 -2.7733496e+03 - 4.5941843e+03 1.0772508e+03 -2.7860886e+03 - 4.5603684e+03 1.1480477e+03 -2.7993867e+03 - 4.5238797e+03 1.2207030e+03 -2.8131967e+03 - 4.4845840e+03 1.2953207e+03 -2.8274633e+03 - 4.4423433e+03 1.3719987e+03 -2.8421224e+03 - 4.3970182e+03 1.4508264e+03 -2.8571001e+03 - 4.3484696e+03 1.5318814e+03 -2.8723117e+03 - 4.2965622e+03 1.6152262e+03 -2.8876616e+03 - 4.2411682e+03 1.7009039e+03 -2.9030421e+03 - 4.1821716e+03 1.7889339e+03 -2.9183341e+03 - 4.1194726e+03 1.8793076e+03 -2.9334067e+03 - 4.0529942e+03 1.9719832e+03 -2.9481182e+03 - 3.9826869e+03 2.0668811e+03 -2.9623177e+03 - 3.9085357e+03 2.1638798e+03 -2.9758464e+03 - 3.8305656e+03 2.2628125e+03 -2.9885410e+03 - 3.7488470e+03 2.3634645e+03 -3.0002367e+03 - 3.6635008e+03 2.4655728e+03 -3.0107713e+03 - 3.5747008e+03 2.5688266e+03 -3.0199902e+03 - 3.4826758e+03 2.6728713e+03 -3.0277506e+03 - 3.3877077e+03 2.7773132e+03 -3.0339274e+03 - 3.2901292e+03 2.8817282e+03 -3.0384172e+03 - 3.1903172e+03 2.9856705e+03 -3.0411429e+03 - 3.0886846e+03 3.0886846e+03 -3.0420568e+03 - 2.9856705e+03 3.1903172e+03 -3.0411429e+03 - 2.8817282e+03 3.2901292e+03 -3.0384172e+03 - 2.7773132e+03 3.3877077e+03 -3.0339274e+03 - 2.6728713e+03 3.4826758e+03 -3.0277506e+03 - 2.5688266e+03 3.5747008e+03 -3.0199902e+03 - 2.4655728e+03 3.6635008e+03 -3.0107713e+03 - 2.3634645e+03 3.7488470e+03 -3.0002367e+03 - 2.2628125e+03 3.8305656e+03 -2.9885410e+03 - 2.1638798e+03 3.9085357e+03 -2.9758464e+03 - 2.0668811e+03 3.9826869e+03 -2.9623177e+03 - 1.9719832e+03 4.0529942e+03 -2.9481182e+03 - 1.8793076e+03 4.1194726e+03 -2.9334067e+03 - 1.7889339e+03 4.1821716e+03 -2.9183341e+03 - 1.7009039e+03 4.2411682e+03 -2.9030421e+03 - 1.6152262e+03 4.2965622e+03 -2.8876616e+03 - 1.5318814e+03 4.3484696e+03 -2.8723117e+03 - 1.4508264e+03 4.3970182e+03 -2.8571001e+03 - 1.3719987e+03 4.4423433e+03 -2.8421224e+03 - 1.2953207e+03 4.4845840e+03 -2.8274633e+03 - 1.2207030e+03 4.5238797e+03 -2.8131967e+03 - 1.1480477e+03 4.5603684e+03 -2.7993867e+03 - 1.0772508e+03 4.5941843e+03 -2.7860886e+03 - 1.0082044e+03 4.6254563e+03 -2.7733496e+03 - 9.4079860e+02 4.6543073e+03 -2.7612094e+03 - 8.7492267e+02 4.6808531e+03 -2.7497018e+03 - 8.1046638e+02 4.7052019e+03 -2.7388547e+03 - 7.4732065e+02 4.7274544e+03 -2.7286914e+03 - 6.8537816e+02 4.7477033e+03 -2.7192312e+03 - 6.2453379e+02 4.7660334e+03 -2.7104895e+03 - 5.6468477e+02 4.7825218e+03 -2.7024790e+03 - 5.0573084e+02 4.7972379e+03 -2.6952099e+03 - 4.4757423e+02 4.8102438e+03 -2.6886902e+03 - 3.9011959e+02 4.8215942e+03 -2.6829262e+03 - 3.3327382e+02 4.8313368e+03 -2.6779230e+03 - 2.7694588e+02 4.8395126e+03 -2.6736843e+03 - 2.2104658e+02 4.8461558e+03 -2.6702130e+03 - 1.6548827e+02 4.8512942e+03 -2.6675111e+03 - 1.1018457e+02 4.8549493e+03 -2.6655802e+03 - 5.5050067e+01 4.8571362e+03 -2.6644213e+03 - 9.6268545e-09 4.8578642e+03 -2.6640350e+03 - -5.5050067e+01 4.8571362e+03 -2.6644213e+03 - -1.1018457e+02 4.8549493e+03 -2.6655802e+03 - -1.6548827e+02 4.8512942e+03 -2.6675111e+03 - -2.2104658e+02 4.8461558e+03 -2.6702130e+03 - -2.7694588e+02 4.8395126e+03 -2.6736843e+03 - -3.3327382e+02 4.8313368e+03 -2.6779230e+03 - -3.9011959e+02 4.8215942e+03 -2.6829262e+03 - -4.4757423e+02 4.8102438e+03 -2.6886902e+03 - -5.0573084e+02 4.7972379e+03 -2.6952099e+03 - -5.6468477e+02 4.7825218e+03 -2.7024790e+03 - -6.2453379e+02 4.7660334e+03 -2.7104895e+03 - -6.8537816e+02 4.7477033e+03 -2.7192312e+03 - -7.4732065e+02 4.7274544e+03 -2.7286914e+03 - -8.1046638e+02 4.7052019e+03 -2.7388547e+03 - -8.7492267e+02 4.6808531e+03 -2.7497018e+03 - -9.4079860e+02 4.6543073e+03 -2.7612094e+03 - -1.0082044e+03 4.6254563e+03 -2.7733496e+03 - -1.0772508e+03 4.5941843e+03 -2.7860886e+03 - -1.1480477e+03 4.5603684e+03 -2.7993867e+03 - -1.2207030e+03 4.5238797e+03 -2.8131967e+03 - -1.2953207e+03 4.4845840e+03 -2.8274633e+03 - -1.3719987e+03 4.4423433e+03 -2.8421224e+03 - -1.4508264e+03 4.3970182e+03 -2.8571001e+03 - -1.5318814e+03 4.3484696e+03 -2.8723117e+03 - -1.6152262e+03 4.2965622e+03 -2.8876616e+03 - -1.7009039e+03 4.2411682e+03 -2.9030421e+03 - -1.7889339e+03 4.1821716e+03 -2.9183341e+03 - -1.8793076e+03 4.1194726e+03 -2.9334067e+03 - -1.9719832e+03 4.0529942e+03 -2.9481182e+03 - -2.0668811e+03 3.9826869e+03 -2.9623177e+03 - -2.1638798e+03 3.9085357e+03 -2.9758464e+03 - -2.2628125e+03 3.8305656e+03 -2.9885410e+03 - -2.3634645e+03 3.7488470e+03 -3.0002367e+03 - -2.4655728e+03 3.6635008e+03 -3.0107713e+03 - -2.5688266e+03 3.5747008e+03 -3.0199902e+03 - -2.6728713e+03 3.4826758e+03 -3.0277506e+03 - -2.7773132e+03 3.3877077e+03 -3.0339274e+03 - -2.8817282e+03 3.2901292e+03 -3.0384172e+03 - -2.9856705e+03 3.1903172e+03 -3.0411429e+03 - -3.0886846e+03 3.0886846e+03 -3.0420568e+03 - -3.1903172e+03 2.9856705e+03 -3.0411429e+03 - -3.2901292e+03 2.8817282e+03 -3.0384172e+03 - -3.3877077e+03 2.7773132e+03 -3.0339274e+03 - -3.4826758e+03 2.6728713e+03 -3.0277506e+03 - -3.5747008e+03 2.5688266e+03 -3.0199902e+03 - -3.6635008e+03 2.4655728e+03 -3.0107713e+03 - -3.7488470e+03 2.3634645e+03 -3.0002367e+03 - -3.8305656e+03 2.2628125e+03 -2.9885410e+03 - -3.9085357e+03 2.1638798e+03 -2.9758464e+03 - -3.9826869e+03 2.0668811e+03 -2.9623177e+03 - -4.0529942e+03 1.9719832e+03 -2.9481182e+03 - -4.1194726e+03 1.8793076e+03 -2.9334067e+03 - -4.1821716e+03 1.7889339e+03 -2.9183341e+03 - -4.2411682e+03 1.7009039e+03 -2.9030421e+03 - -4.2965622e+03 1.6152262e+03 -2.8876616e+03 - -4.3484696e+03 1.5318814e+03 -2.8723117e+03 - -4.3970182e+03 1.4508264e+03 -2.8571001e+03 - -4.4423433e+03 1.3719987e+03 -2.8421224e+03 - -4.4845840e+03 1.2953207e+03 -2.8274633e+03 - -4.5238797e+03 1.2207030e+03 -2.8131967e+03 - -4.5603684e+03 1.1480477e+03 -2.7993867e+03 - -4.5941843e+03 1.0772508e+03 -2.7860886e+03 - -4.6254563e+03 1.0082044e+03 -2.7733496e+03 - -4.6543073e+03 9.4079860e+02 -2.7612094e+03 - -4.6808531e+03 8.7492267e+02 -2.7497018e+03 - -4.7052019e+03 8.1046638e+02 -2.7388547e+03 - -4.7274544e+03 7.4732065e+02 -2.7286914e+03 - -4.7477033e+03 6.8537816e+02 -2.7192312e+03 - -4.7660334e+03 6.2453379e+02 -2.7104895e+03 - -4.7825218e+03 5.6468477e+02 -2.7024790e+03 - -4.7972379e+03 5.0573084e+02 -2.6952099e+03 - -4.8102438e+03 4.4757423e+02 -2.6886902e+03 - -4.8215942e+03 3.9011959e+02 -2.6829262e+03 - -4.8313368e+03 3.3327382e+02 -2.6779230e+03 - -4.8395126e+03 2.7694588e+02 -2.6736843e+03 - -4.8461558e+03 2.2104658e+02 -2.6702130e+03 - -4.8512942e+03 1.6548827e+02 -2.6675111e+03 - -4.8549493e+03 1.1018457e+02 -2.6655802e+03 - -4.8571362e+03 5.5050067e+01 -2.6644213e+03 - -4.8578642e+03 4.8134273e-09 -2.6640350e+03 - -4.8571362e+03 -5.5050067e+01 -2.6644213e+03 - -4.8549493e+03 -1.1018457e+02 -2.6655802e+03 - -4.8512942e+03 -1.6548827e+02 -2.6675111e+03 - -4.8461558e+03 -2.2104658e+02 -2.6702130e+03 - -4.8395126e+03 -2.7694588e+02 -2.6736843e+03 - -4.8313368e+03 -3.3327382e+02 -2.6779230e+03 - -4.8215942e+03 -3.9011959e+02 -2.6829262e+03 - -4.8102438e+03 -4.4757423e+02 -2.6886902e+03 - -4.7972379e+03 -5.0573084e+02 -2.6952099e+03 - -4.7825218e+03 -5.6468477e+02 -2.7024790e+03 - -4.7660334e+03 -6.2453379e+02 -2.7104895e+03 - -4.7477033e+03 -6.8537816e+02 -2.7192312e+03 - -4.7274544e+03 -7.4732065e+02 -2.7286914e+03 - -4.7052019e+03 -8.1046638e+02 -2.7388547e+03 - -4.6808531e+03 -8.7492267e+02 -2.7497018e+03 - -4.6543073e+03 -9.4079860e+02 -2.7612094e+03 - -4.6254563e+03 -1.0082044e+03 -2.7733496e+03 - -4.5941843e+03 -1.0772508e+03 -2.7860886e+03 - -4.5603684e+03 -1.1480477e+03 -2.7993867e+03 - -4.5238797e+03 -1.2207030e+03 -2.8131967e+03 - -4.4845840e+03 -1.2953207e+03 -2.8274633e+03 - -4.4423433e+03 -1.3719987e+03 -2.8421224e+03 - -4.3970182e+03 -1.4508264e+03 -2.8571001e+03 - -4.3484696e+03 -1.5318814e+03 -2.8723117e+03 - -4.2965622e+03 -1.6152262e+03 -2.8876616e+03 - -4.2411682e+03 -1.7009039e+03 -2.9030421e+03 - -4.1821716e+03 -1.7889339e+03 -2.9183341e+03 - -4.1194726e+03 -1.8793076e+03 -2.9334067e+03 - -4.0529942e+03 -1.9719832e+03 -2.9481182e+03 - -3.9826869e+03 -2.0668811e+03 -2.9623177e+03 - -3.9085357e+03 -2.1638798e+03 -2.9758464e+03 - -3.8305656e+03 -2.2628125e+03 -2.9885410e+03 - -3.7488470e+03 -2.3634645e+03 -3.0002367e+03 - -3.6635008e+03 -2.4655728e+03 -3.0107713e+03 - -3.5747008e+03 -2.5688266e+03 -3.0199902e+03 - -3.4826758e+03 -2.6728713e+03 -3.0277506e+03 - -3.3877077e+03 -2.7773132e+03 -3.0339274e+03 - -3.2901292e+03 -2.8817282e+03 -3.0384172e+03 - -3.1903172e+03 -2.9856705e+03 -3.0411429e+03 - -3.0886846e+03 -3.0886846e+03 -3.0420568e+03 - -2.9856705e+03 -3.1903172e+03 -3.0411429e+03 - -2.8817282e+03 -3.2901292e+03 -3.0384172e+03 - -2.7773132e+03 -3.3877077e+03 -3.0339274e+03 - -2.6728713e+03 -3.4826758e+03 -3.0277506e+03 - -2.5688266e+03 -3.5747008e+03 -3.0199902e+03 - -2.4655728e+03 -3.6635008e+03 -3.0107713e+03 - -2.3634645e+03 -3.7488470e+03 -3.0002367e+03 - -2.2628125e+03 -3.8305656e+03 -2.9885410e+03 - -2.1638798e+03 -3.9085357e+03 -2.9758464e+03 - -2.0668811e+03 -3.9826869e+03 -2.9623177e+03 - -1.9719832e+03 -4.0529942e+03 -2.9481182e+03 - -1.8793076e+03 -4.1194726e+03 -2.9334067e+03 - -1.7889339e+03 -4.1821716e+03 -2.9183341e+03 - -1.7009039e+03 -4.2411682e+03 -2.9030421e+03 - -1.6152262e+03 -4.2965622e+03 -2.8876616e+03 - -1.5318814e+03 -4.3484696e+03 -2.8723117e+03 - -1.4508264e+03 -4.3970182e+03 -2.8571001e+03 - -1.3719987e+03 -4.4423433e+03 -2.8421224e+03 - -1.2953207e+03 -4.4845840e+03 -2.8274633e+03 - -1.2207030e+03 -4.5238797e+03 -2.8131967e+03 - -1.1480477e+03 -4.5603684e+03 -2.7993867e+03 - -1.0772508e+03 -4.5941843e+03 -2.7860886e+03 - -1.0082044e+03 -4.6254563e+03 -2.7733496e+03 - -9.4079860e+02 -4.6543073e+03 -2.7612094e+03 - -8.7492267e+02 -4.6808531e+03 -2.7497018e+03 - -8.1046638e+02 -4.7052019e+03 -2.7388547e+03 - -7.4732065e+02 -4.7274544e+03 -2.7286914e+03 - -6.8537816e+02 -4.7477033e+03 -2.7192312e+03 - -6.2453379e+02 -4.7660334e+03 -2.7104895e+03 - -5.6468477e+02 -4.7825218e+03 -2.7024790e+03 - -5.0573084e+02 -4.7972379e+03 -2.6952099e+03 - -4.4757423e+02 -4.8102438e+03 -2.6886902e+03 - -3.9011959e+02 -4.8215942e+03 -2.6829262e+03 - -3.3327382e+02 -4.8313368e+03 -2.6779230e+03 - -2.7694588e+02 -4.8395126e+03 -2.6736843e+03 - -2.2104658e+02 -4.8461558e+03 -2.6702130e+03 - -1.6548827e+02 -4.8512942e+03 -2.6675111e+03 - -1.1018457e+02 -4.8549493e+03 -2.6655802e+03 - -5.5050067e+01 -4.8571362e+03 -2.6644213e+03 - 0.0000000e+00 -4.8578642e+03 -2.6640350e+03 - 5.5050067e+01 -4.8571362e+03 -2.6644213e+03 - 1.1018457e+02 -4.8549493e+03 -2.6655802e+03 - 1.6548827e+02 -4.8512942e+03 -2.6675111e+03 - 2.2104658e+02 -4.8461558e+03 -2.6702130e+03 - 2.7694588e+02 -4.8395126e+03 -2.6736843e+03 - 3.3327382e+02 -4.8313368e+03 -2.6779230e+03 - 3.9011959e+02 -4.8215942e+03 -2.6829262e+03 - 4.4757423e+02 -4.8102438e+03 -2.6886902e+03 - 5.0573084e+02 -4.7972379e+03 -2.6952099e+03 - 5.6468477e+02 -4.7825218e+03 -2.7024790e+03 - 6.2453379e+02 -4.7660334e+03 -2.7104895e+03 - 6.8537816e+02 -4.7477033e+03 -2.7192312e+03 - 7.4732065e+02 -4.7274544e+03 -2.7286914e+03 - 8.1046638e+02 -4.7052019e+03 -2.7388547e+03 - 8.7492267e+02 -4.6808531e+03 -2.7497018e+03 - 9.4079860e+02 -4.6543073e+03 -2.7612094e+03 - 1.0082044e+03 -4.6254563e+03 -2.7733496e+03 - 1.0772508e+03 -4.5941843e+03 -2.7860886e+03 - 1.1480477e+03 -4.5603684e+03 -2.7993867e+03 - 1.2207030e+03 -4.5238797e+03 -2.8131967e+03 - 1.2953207e+03 -4.4845840e+03 -2.8274633e+03 - 1.3719987e+03 -4.4423433e+03 -2.8421224e+03 - 1.4508264e+03 -4.3970182e+03 -2.8571001e+03 - 1.5318814e+03 -4.3484696e+03 -2.8723117e+03 - 1.6152262e+03 -4.2965622e+03 -2.8876616e+03 - 1.7009039e+03 -4.2411682e+03 -2.9030421e+03 - 1.7889339e+03 -4.1821716e+03 -2.9183341e+03 - 1.8793076e+03 -4.1194726e+03 -2.9334067e+03 - 1.9719832e+03 -4.0529942e+03 -2.9481182e+03 - 2.0668811e+03 -3.9826869e+03 -2.9623177e+03 - 2.1638798e+03 -3.9085357e+03 -2.9758464e+03 - 2.2628125e+03 -3.8305656e+03 -2.9885410e+03 - 2.3634645e+03 -3.7488470e+03 -3.0002367e+03 - 2.4655728e+03 -3.6635008e+03 -3.0107713e+03 - 2.5688266e+03 -3.5747008e+03 -3.0199902e+03 - 2.6728713e+03 -3.4826758e+03 -3.0277506e+03 - 2.7773132e+03 -3.3877077e+03 -3.0339274e+03 - 2.8817282e+03 -3.2901292e+03 -3.0384172e+03 - 2.9856705e+03 -3.1903172e+03 -3.0411429e+03 - 3.0886846e+03 -3.0886846e+03 -3.0420568e+03 - 3.1903172e+03 -2.9856705e+03 -3.0411429e+03 - 3.2901292e+03 -2.8817282e+03 -3.0384172e+03 - 3.3877077e+03 -2.7773132e+03 -3.0339274e+03 - 3.4826758e+03 -2.6728713e+03 -3.0277506e+03 - 3.5747008e+03 -2.5688266e+03 -3.0199902e+03 - 3.6635008e+03 -2.4655728e+03 -3.0107713e+03 - 3.7488470e+03 -2.3634645e+03 -3.0002367e+03 - 3.8305656e+03 -2.2628125e+03 -2.9885410e+03 - 3.9085357e+03 -2.1638798e+03 -2.9758464e+03 - 3.9826869e+03 -2.0668811e+03 -2.9623177e+03 - 4.0529942e+03 -1.9719832e+03 -2.9481182e+03 - 4.1194726e+03 -1.8793076e+03 -2.9334067e+03 - 4.1821716e+03 -1.7889339e+03 -2.9183341e+03 - 4.2411682e+03 -1.7009039e+03 -2.9030421e+03 - 4.2965622e+03 -1.6152262e+03 -2.8876616e+03 - 4.3484696e+03 -1.5318814e+03 -2.8723117e+03 - 4.3970182e+03 -1.4508264e+03 -2.8571001e+03 - 4.4423433e+03 -1.3719987e+03 -2.8421224e+03 - 4.4845840e+03 -1.2953207e+03 -2.8274633e+03 - 4.5238797e+03 -1.2207030e+03 -2.8131967e+03 - 4.5603684e+03 -1.1480477e+03 -2.7993867e+03 - 4.5941843e+03 -1.0772508e+03 -2.7860886e+03 - 4.6254563e+03 -1.0082044e+03 -2.7733496e+03 - 4.6543073e+03 -9.4079860e+02 -2.7612094e+03 - 4.6808531e+03 -8.7492267e+02 -2.7497018e+03 - 4.7052019e+03 -8.1046638e+02 -2.7388547e+03 - 4.7274544e+03 -7.4732065e+02 -2.7286914e+03 - 4.7477033e+03 -6.8537816e+02 -2.7192312e+03 - 4.7660334e+03 -6.2453379e+02 -2.7104895e+03 - 4.7825218e+03 -5.6468477e+02 -2.7024790e+03 - 4.7972379e+03 -5.0573084e+02 -2.6952099e+03 - 4.8102438e+03 -4.4757423e+02 -2.6886902e+03 - 4.8215942e+03 -3.9011959e+02 -2.6829262e+03 - 4.8313368e+03 -3.3327382e+02 -2.6779230e+03 - 4.8395126e+03 -2.7694588e+02 -2.6736843e+03 - 4.8461558e+03 -2.2104658e+02 -2.6702130e+03 - 4.8512942e+03 -1.6548827e+02 -2.6675111e+03 - 4.8549493e+03 -1.1018457e+02 -2.6655802e+03 - 4.8571362e+03 -5.5050067e+01 -2.6644213e+03 - 4.8578642e+03 -4.8134273e-09 -2.6640350e+03 - 4.8210527e+03 -9.6268545e-09 -2.7380779e+03 - 4.8203167e+03 5.5282072e+01 -2.7384570e+03 - 4.8181056e+03 1.1064764e+02 -2.7395941e+03 - 4.8144106e+03 1.6618050e+02 -2.7414885e+03 - 4.8092167e+03 2.2196505e+02 -2.7441388e+03 - 4.8025027e+03 2.7808653e+02 -2.7475432e+03 - 4.7942415e+03 3.3463138e+02 -2.7516989e+03 - 4.7843995e+03 3.9168740e+02 -2.7566025e+03 - 4.7729367e+03 4.4934407e+02 -2.7622495e+03 - 4.7598064e+03 5.0769269e+02 -2.7686340e+03 - 4.7449552e+03 5.6682656e+02 -2.7757487e+03 - 4.7283227e+03 6.2684108e+02 -2.7835845e+03 - 4.7098415e+03 6.8783380e+02 -2.7921301e+03 - 4.6894366e+03 7.4990436e+02 -2.8013716e+03 - 4.6670260e+03 8.1315437e+02 -2.8112923e+03 - 4.6425202e+03 8.7768709e+02 -2.8218716e+03 - 4.6158223e+03 9.4360701e+02 -2.8330851e+03 - 4.5868285e+03 1.0110192e+03 -2.8449036e+03 - 4.5554280e+03 1.0800287e+03 -2.8572923e+03 - 4.5215039e+03 1.1507389e+03 -2.8702105e+03 - 4.4849337e+03 1.2232506e+03 -2.8836104e+03 - 4.4455909e+03 1.2976604e+03 -2.8974365e+03 - 4.4033459e+03 1.3740578e+03 -2.9116248e+03 - 4.3580684e+03 1.4525236e+03 -2.9261020e+03 - 4.3096295e+03 1.5331265e+03 -2.9407850e+03 - 4.2579050e+03 1.6159197e+03 -2.9555802e+03 - 4.2027783e+03 1.7009376e+03 -2.9703834e+03 - 4.1441452e+03 1.7881912e+03 -2.9850794e+03 - 4.0819179e+03 1.8776643e+03 -2.9995429e+03 - 4.0160304e+03 1.9693090e+03 -3.0136388e+03 - 3.9464440e+03 2.0630418e+03 -3.0272240e+03 - 3.8731524e+03 2.1587397e+03 -3.0401489e+03 - 3.7961872e+03 2.2562371e+03 -3.0522601e+03 - 3.7156229e+03 2.3553246e+03 -3.0634039e+03 - 3.6315805e+03 2.4557480e+03 -3.0734293e+03 - 3.5442303e+03 2.5572098e+03 -3.0821931e+03 - 3.4537927e+03 2.6593721e+03 -3.0895635e+03 - 3.3605374e+03 2.7618625e+03 -3.0954253e+03 - 3.2647798e+03 2.8642806e+03 -3.0996836e+03 - 3.1668757e+03 2.9662070e+03 -3.1022677e+03 - 3.0672140e+03 3.0672140e+03 -3.1031340e+03 - 2.9662070e+03 3.1668757e+03 -3.1022677e+03 - 2.8642806e+03 3.2647798e+03 -3.0996836e+03 - 2.7618625e+03 3.3605374e+03 -3.0954253e+03 - 2.6593721e+03 3.4537927e+03 -3.0895635e+03 - 2.5572098e+03 3.5442303e+03 -3.0821931e+03 - 2.4557480e+03 3.6315805e+03 -3.0734293e+03 - 2.3553246e+03 3.7156229e+03 -3.0634039e+03 - 2.2562371e+03 3.7961872e+03 -3.0522601e+03 - 2.1587397e+03 3.8731524e+03 -3.0401489e+03 - 2.0630418e+03 3.9464440e+03 -3.0272240e+03 - 1.9693090e+03 4.0160304e+03 -3.0136388e+03 - 1.8776643e+03 4.0819179e+03 -2.9995429e+03 - 1.7881912e+03 4.1441452e+03 -2.9850794e+03 - 1.7009376e+03 4.2027783e+03 -2.9703834e+03 - 1.6159197e+03 4.2579050e+03 -2.9555802e+03 - 1.5331265e+03 4.3096295e+03 -2.9407850e+03 - 1.4525236e+03 4.3580684e+03 -2.9261020e+03 - 1.3740578e+03 4.4033459e+03 -2.9116248e+03 - 1.2976604e+03 4.4455909e+03 -2.8974365e+03 - 1.2232506e+03 4.4849337e+03 -2.8836104e+03 - 1.1507389e+03 4.5215039e+03 -2.8702105e+03 - 1.0800287e+03 4.5554280e+03 -2.8572923e+03 - 1.0110192e+03 4.5868285e+03 -2.8449036e+03 - 9.4360701e+02 4.6158223e+03 -2.8330851e+03 - 8.7768709e+02 4.6425202e+03 -2.8218716e+03 - 8.1315437e+02 4.6670260e+03 -2.8112923e+03 - 7.4990436e+02 4.6894366e+03 -2.8013716e+03 - 6.8783380e+02 4.7098415e+03 -2.7921301e+03 - 6.2684108e+02 4.7283227e+03 -2.7835845e+03 - 5.6682656e+02 4.7449552e+03 -2.7757487e+03 - 5.0769269e+02 4.7598064e+03 -2.7686340e+03 - 4.4934407e+02 4.7729367e+03 -2.7622495e+03 - 3.9168740e+02 4.7843995e+03 -2.7566025e+03 - 3.3463138e+02 4.7942415e+03 -2.7516989e+03 - 2.7808653e+02 4.8025027e+03 -2.7475432e+03 - 2.2196505e+02 4.8092167e+03 -2.7441388e+03 - 1.6618050e+02 4.8144106e+03 -2.7414885e+03 - 1.1064764e+02 4.8181056e+03 -2.7395941e+03 - 5.5282072e+01 4.8203167e+03 -2.7384570e+03 - -4.8134273e-09 4.8210527e+03 -2.7380779e+03 - -5.5282072e+01 4.8203167e+03 -2.7384570e+03 - -1.1064764e+02 4.8181056e+03 -2.7395941e+03 - -1.6618050e+02 4.8144106e+03 -2.7414885e+03 - -2.2196505e+02 4.8092167e+03 -2.7441388e+03 - -2.7808653e+02 4.8025027e+03 -2.7475432e+03 - -3.3463138e+02 4.7942415e+03 -2.7516989e+03 - -3.9168740e+02 4.7843995e+03 -2.7566025e+03 - -4.4934407e+02 4.7729367e+03 -2.7622495e+03 - -5.0769269e+02 4.7598064e+03 -2.7686340e+03 - -5.6682656e+02 4.7449552e+03 -2.7757487e+03 - -6.2684108e+02 4.7283227e+03 -2.7835845e+03 - -6.8783380e+02 4.7098415e+03 -2.7921301e+03 - -7.4990436e+02 4.6894366e+03 -2.8013716e+03 - -8.1315437e+02 4.6670260e+03 -2.8112923e+03 - -8.7768709e+02 4.6425202e+03 -2.8218716e+03 - -9.4360701e+02 4.6158223e+03 -2.8330851e+03 - -1.0110192e+03 4.5868285e+03 -2.8449036e+03 - -1.0800287e+03 4.5554280e+03 -2.8572923e+03 - -1.1507389e+03 4.5215039e+03 -2.8702105e+03 - -1.2232506e+03 4.4849337e+03 -2.8836104e+03 - -1.2976604e+03 4.4455909e+03 -2.8974365e+03 - -1.3740578e+03 4.4033459e+03 -2.9116248e+03 - -1.4525236e+03 4.3580684e+03 -2.9261020e+03 - -1.5331265e+03 4.3096295e+03 -2.9407850e+03 - -1.6159197e+03 4.2579050e+03 -2.9555802e+03 - -1.7009376e+03 4.2027783e+03 -2.9703834e+03 - -1.7881912e+03 4.1441452e+03 -2.9850794e+03 - -1.8776643e+03 4.0819179e+03 -2.9995429e+03 - -1.9693090e+03 4.0160304e+03 -3.0136388e+03 - -2.0630418e+03 3.9464440e+03 -3.0272240e+03 - -2.1587397e+03 3.8731524e+03 -3.0401489e+03 - -2.2562371e+03 3.7961872e+03 -3.0522601e+03 - -2.3553246e+03 3.7156229e+03 -3.0634039e+03 - -2.4557480e+03 3.6315805e+03 -3.0734293e+03 - -2.5572098e+03 3.5442303e+03 -3.0821931e+03 - -2.6593721e+03 3.4537927e+03 -3.0895635e+03 - -2.7618625e+03 3.3605374e+03 -3.0954253e+03 - -2.8642806e+03 3.2647798e+03 -3.0996836e+03 - -2.9662070e+03 3.1668757e+03 -3.1022677e+03 - -3.0672140e+03 3.0672140e+03 -3.1031340e+03 - -3.1668757e+03 2.9662070e+03 -3.1022677e+03 - -3.2647798e+03 2.8642806e+03 -3.0996836e+03 - -3.3605374e+03 2.7618625e+03 -3.0954253e+03 - -3.4537927e+03 2.6593721e+03 -3.0895635e+03 - -3.5442303e+03 2.5572098e+03 -3.0821931e+03 - -3.6315805e+03 2.4557480e+03 -3.0734293e+03 - -3.7156229e+03 2.3553246e+03 -3.0634039e+03 - -3.7961872e+03 2.2562371e+03 -3.0522601e+03 - -3.8731524e+03 2.1587397e+03 -3.0401489e+03 - -3.9464440e+03 2.0630418e+03 -3.0272240e+03 - -4.0160304e+03 1.9693090e+03 -3.0136388e+03 - -4.0819179e+03 1.8776643e+03 -2.9995429e+03 - -4.1441452e+03 1.7881912e+03 -2.9850794e+03 - -4.2027783e+03 1.7009376e+03 -2.9703834e+03 - -4.2579050e+03 1.6159197e+03 -2.9555802e+03 - -4.3096295e+03 1.5331265e+03 -2.9407850e+03 - -4.3580684e+03 1.4525236e+03 -2.9261020e+03 - -4.4033459e+03 1.3740578e+03 -2.9116248e+03 - -4.4455909e+03 1.2976604e+03 -2.8974365e+03 - -4.4849337e+03 1.2232506e+03 -2.8836104e+03 - -4.5215039e+03 1.1507389e+03 -2.8702105e+03 - -4.5554280e+03 1.0800287e+03 -2.8572923e+03 - -4.5868285e+03 1.0110192e+03 -2.8449036e+03 - -4.6158223e+03 9.4360701e+02 -2.8330851e+03 - -4.6425202e+03 8.7768709e+02 -2.8218716e+03 - -4.6670260e+03 8.1315437e+02 -2.8112923e+03 - -4.6894366e+03 7.4990436e+02 -2.8013716e+03 - -4.7098415e+03 6.8783380e+02 -2.7921301e+03 - -4.7283227e+03 6.2684108e+02 -2.7835845e+03 - -4.7449552e+03 5.6682656e+02 -2.7757487e+03 - -4.7598064e+03 5.0769269e+02 -2.7686340e+03 - -4.7729367e+03 4.4934407e+02 -2.7622495e+03 - -4.7843995e+03 3.9168740e+02 -2.7566025e+03 - -4.7942415e+03 3.3463138e+02 -2.7516989e+03 - -4.8025027e+03 2.7808653e+02 -2.7475432e+03 - -4.8092167e+03 2.2196505e+02 -2.7441388e+03 - -4.8144106e+03 1.6618050e+02 -2.7414885e+03 - -4.8181056e+03 1.1064764e+02 -2.7395941e+03 - -4.8203167e+03 5.5282072e+01 -2.7384570e+03 - -4.8210527e+03 9.6268545e-09 -2.7380779e+03 - -4.8203167e+03 -5.5282072e+01 -2.7384570e+03 - -4.8181056e+03 -1.1064764e+02 -2.7395941e+03 - -4.8144106e+03 -1.6618050e+02 -2.7414885e+03 - -4.8092167e+03 -2.2196505e+02 -2.7441388e+03 - -4.8025027e+03 -2.7808653e+02 -2.7475432e+03 - -4.7942415e+03 -3.3463138e+02 -2.7516989e+03 - -4.7843995e+03 -3.9168740e+02 -2.7566025e+03 - -4.7729367e+03 -4.4934407e+02 -2.7622495e+03 - -4.7598064e+03 -5.0769269e+02 -2.7686340e+03 - -4.7449552e+03 -5.6682656e+02 -2.7757487e+03 - -4.7283227e+03 -6.2684108e+02 -2.7835845e+03 - -4.7098415e+03 -6.8783380e+02 -2.7921301e+03 - -4.6894366e+03 -7.4990436e+02 -2.8013716e+03 - -4.6670260e+03 -8.1315437e+02 -2.8112923e+03 - -4.6425202e+03 -8.7768709e+02 -2.8218716e+03 - -4.6158223e+03 -9.4360701e+02 -2.8330851e+03 - -4.5868285e+03 -1.0110192e+03 -2.8449036e+03 - -4.5554280e+03 -1.0800287e+03 -2.8572923e+03 - -4.5215039e+03 -1.1507389e+03 -2.8702105e+03 - -4.4849337e+03 -1.2232506e+03 -2.8836104e+03 - -4.4455909e+03 -1.2976604e+03 -2.8974365e+03 - -4.4033459e+03 -1.3740578e+03 -2.9116248e+03 - -4.3580684e+03 -1.4525236e+03 -2.9261020e+03 - -4.3096295e+03 -1.5331265e+03 -2.9407850e+03 - -4.2579050e+03 -1.6159197e+03 -2.9555802e+03 - -4.2027783e+03 -1.7009376e+03 -2.9703834e+03 - -4.1441452e+03 -1.7881912e+03 -2.9850794e+03 - -4.0819179e+03 -1.8776643e+03 -2.9995429e+03 - -4.0160304e+03 -1.9693090e+03 -3.0136388e+03 - -3.9464440e+03 -2.0630418e+03 -3.0272240e+03 - -3.8731524e+03 -2.1587397e+03 -3.0401489e+03 - -3.7961872e+03 -2.2562371e+03 -3.0522601e+03 - -3.7156229e+03 -2.3553246e+03 -3.0634039e+03 - -3.6315805e+03 -2.4557480e+03 -3.0734293e+03 - -3.5442303e+03 -2.5572098e+03 -3.0821931e+03 - -3.4537927e+03 -2.6593721e+03 -3.0895635e+03 - -3.3605374e+03 -2.7618625e+03 -3.0954253e+03 - -3.2647798e+03 -2.8642806e+03 -3.0996836e+03 - -3.1668757e+03 -2.9662070e+03 -3.1022677e+03 - -3.0672140e+03 -3.0672140e+03 -3.1031340e+03 - -2.9662070e+03 -3.1668757e+03 -3.1022677e+03 - -2.8642806e+03 -3.2647798e+03 -3.0996836e+03 - -2.7618625e+03 -3.3605374e+03 -3.0954253e+03 - -2.6593721e+03 -3.4537927e+03 -3.0895635e+03 - -2.5572098e+03 -3.5442303e+03 -3.0821931e+03 - -2.4557480e+03 -3.6315805e+03 -3.0734293e+03 - -2.3553246e+03 -3.7156229e+03 -3.0634039e+03 - -2.2562371e+03 -3.7961872e+03 -3.0522601e+03 - -2.1587397e+03 -3.8731524e+03 -3.0401489e+03 - -2.0630418e+03 -3.9464440e+03 -3.0272240e+03 - -1.9693090e+03 -4.0160304e+03 -3.0136388e+03 - -1.8776643e+03 -4.0819179e+03 -2.9995429e+03 - -1.7881912e+03 -4.1441452e+03 -2.9850794e+03 - -1.7009376e+03 -4.2027783e+03 -2.9703834e+03 - -1.6159197e+03 -4.2579050e+03 -2.9555802e+03 - -1.5331265e+03 -4.3096295e+03 -2.9407850e+03 - -1.4525236e+03 -4.3580684e+03 -2.9261020e+03 - -1.3740578e+03 -4.4033459e+03 -2.9116248e+03 - -1.2976604e+03 -4.4455909e+03 -2.8974365e+03 - -1.2232506e+03 -4.4849337e+03 -2.8836104e+03 - -1.1507389e+03 -4.5215039e+03 -2.8702105e+03 - -1.0800287e+03 -4.5554280e+03 -2.8572923e+03 - -1.0110192e+03 -4.5868285e+03 -2.8449036e+03 - -9.4360701e+02 -4.6158223e+03 -2.8330851e+03 - -8.7768709e+02 -4.6425202e+03 -2.8218716e+03 - -8.1315437e+02 -4.6670260e+03 -2.8112923e+03 - -7.4990436e+02 -4.6894366e+03 -2.8013716e+03 - -6.8783380e+02 -4.7098415e+03 -2.7921301e+03 - -6.2684108e+02 -4.7283227e+03 -2.7835845e+03 - -5.6682656e+02 -4.7449552e+03 -2.7757487e+03 - -5.0769269e+02 -4.7598064e+03 -2.7686340e+03 - -4.4934407e+02 -4.7729367e+03 -2.7622495e+03 - -3.9168740e+02 -4.7843995e+03 -2.7566025e+03 - -3.3463138e+02 -4.7942415e+03 -2.7516989e+03 - -2.7808653e+02 -4.8025027e+03 -2.7475432e+03 - -2.2196505e+02 -4.8092167e+03 -2.7441388e+03 - -1.6618050e+02 -4.8144106e+03 -2.7414885e+03 - -1.1064764e+02 -4.8181056e+03 -2.7395941e+03 - -5.5282072e+01 -4.8203167e+03 -2.7384570e+03 - 0.0000000e+00 -4.8210527e+03 -2.7380779e+03 - 5.5282072e+01 -4.8203167e+03 -2.7384570e+03 - 1.1064764e+02 -4.8181056e+03 -2.7395941e+03 - 1.6618050e+02 -4.8144106e+03 -2.7414885e+03 - 2.2196505e+02 -4.8092167e+03 -2.7441388e+03 - 2.7808653e+02 -4.8025027e+03 -2.7475432e+03 - 3.3463138e+02 -4.7942415e+03 -2.7516989e+03 - 3.9168740e+02 -4.7843995e+03 -2.7566025e+03 - 4.4934407e+02 -4.7729367e+03 -2.7622495e+03 - 5.0769269e+02 -4.7598064e+03 -2.7686340e+03 - 5.6682656e+02 -4.7449552e+03 -2.7757487e+03 - 6.2684108e+02 -4.7283227e+03 -2.7835845e+03 - 6.8783380e+02 -4.7098415e+03 -2.7921301e+03 - 7.4990436e+02 -4.6894366e+03 -2.8013716e+03 - 8.1315437e+02 -4.6670260e+03 -2.8112923e+03 - 8.7768709e+02 -4.6425202e+03 -2.8218716e+03 - 9.4360701e+02 -4.6158223e+03 -2.8330851e+03 - 1.0110192e+03 -4.5868285e+03 -2.8449036e+03 - 1.0800287e+03 -4.5554280e+03 -2.8572923e+03 - 1.1507389e+03 -4.5215039e+03 -2.8702105e+03 - 1.2232506e+03 -4.4849337e+03 -2.8836104e+03 - 1.2976604e+03 -4.4455909e+03 -2.8974365e+03 - 1.3740578e+03 -4.4033459e+03 -2.9116248e+03 - 1.4525236e+03 -4.3580684e+03 -2.9261020e+03 - 1.5331265e+03 -4.3096295e+03 -2.9407850e+03 - 1.6159197e+03 -4.2579050e+03 -2.9555802e+03 - 1.7009376e+03 -4.2027783e+03 -2.9703834e+03 - 1.7881912e+03 -4.1441452e+03 -2.9850794e+03 - 1.8776643e+03 -4.0819179e+03 -2.9995429e+03 - 1.9693090e+03 -4.0160304e+03 -3.0136388e+03 - 2.0630418e+03 -3.9464440e+03 -3.0272240e+03 - 2.1587397e+03 -3.8731524e+03 -3.0401489e+03 - 2.2562371e+03 -3.7961872e+03 -3.0522601e+03 - 2.3553246e+03 -3.7156229e+03 -3.0634039e+03 - 2.4557480e+03 -3.6315805e+03 -3.0734293e+03 - 2.5572098e+03 -3.5442303e+03 -3.0821931e+03 - 2.6593721e+03 -3.4537927e+03 -3.0895635e+03 - 2.7618625e+03 -3.3605374e+03 -3.0954253e+03 - 2.8642806e+03 -3.2647798e+03 -3.0996836e+03 - 2.9662070e+03 -3.1668757e+03 -3.1022677e+03 - 3.0672140e+03 -3.0672140e+03 -3.1031340e+03 - 3.1668757e+03 -2.9662070e+03 -3.1022677e+03 - 3.2647798e+03 -2.8642806e+03 -3.0996836e+03 - 3.3605374e+03 -2.7618625e+03 -3.0954253e+03 - 3.4537927e+03 -2.6593721e+03 -3.0895635e+03 - 3.5442303e+03 -2.5572098e+03 -3.0821931e+03 - 3.6315805e+03 -2.4557480e+03 -3.0734293e+03 - 3.7156229e+03 -2.3553246e+03 -3.0634039e+03 - 3.7961872e+03 -2.2562371e+03 -3.0522601e+03 - 3.8731524e+03 -2.1587397e+03 -3.0401489e+03 - 3.9464440e+03 -2.0630418e+03 -3.0272240e+03 - 4.0160304e+03 -1.9693090e+03 -3.0136388e+03 - 4.0819179e+03 -1.8776643e+03 -2.9995429e+03 - 4.1441452e+03 -1.7881912e+03 -2.9850794e+03 - 4.2027783e+03 -1.7009376e+03 -2.9703834e+03 - 4.2579050e+03 -1.6159197e+03 -2.9555802e+03 - 4.3096295e+03 -1.5331265e+03 -2.9407850e+03 - 4.3580684e+03 -1.4525236e+03 -2.9261020e+03 - 4.4033459e+03 -1.3740578e+03 -2.9116248e+03 - 4.4455909e+03 -1.2976604e+03 -2.8974365e+03 - 4.4849337e+03 -1.2232506e+03 -2.8836104e+03 - 4.5215039e+03 -1.1507389e+03 -2.8702105e+03 - 4.5554280e+03 -1.0800287e+03 -2.8572923e+03 - 4.5868285e+03 -1.0110192e+03 -2.8449036e+03 - 4.6158223e+03 -9.4360701e+02 -2.8330851e+03 - 4.6425202e+03 -8.7768709e+02 -2.8218716e+03 - 4.6670260e+03 -8.1315437e+02 -2.8112923e+03 - 4.6894366e+03 -7.4990436e+02 -2.8013716e+03 - 4.7098415e+03 -6.8783380e+02 -2.7921301e+03 - 4.7283227e+03 -6.2684108e+02 -2.7835845e+03 - 4.7449552e+03 -5.6682656e+02 -2.7757487e+03 - 4.7598064e+03 -5.0769269e+02 -2.7686340e+03 - 4.7729367e+03 -4.4934407e+02 -2.7622495e+03 - 4.7843995e+03 -3.9168740e+02 -2.7566025e+03 - 4.7942415e+03 -3.3463138e+02 -2.7516989e+03 - 4.8025027e+03 -2.7808653e+02 -2.7475432e+03 - 4.8092167e+03 -2.2196505e+02 -2.7441388e+03 - 4.8144106e+03 -1.6618050e+02 -2.7414885e+03 - 4.8181056e+03 -1.1064764e+02 -2.7395941e+03 - 4.8203167e+03 -5.5282072e+01 -2.7384570e+03 - 4.8210527e+03 -4.8134273e-09 -2.7380779e+03 - 4.7838128e+03 -4.8134273e-09 -2.8094324e+03 - 4.7830694e+03 5.5505655e+01 -2.8098036e+03 - 4.7808360e+03 1.1109378e+02 -2.8109170e+03 - 4.7771041e+03 1.6684710e+02 -2.8127715e+03 - 4.7718589e+03 2.2284889e+02 -2.8153657e+03 - 4.7650798e+03 2.7918322e+02 -2.8186972e+03 - 4.7567401e+03 3.3593517e+02 -2.8227630e+03 - 4.7468070e+03 3.9319110e+02 -2.8275588e+03 - 4.7352415e+03 4.5103881e+02 -2.8330794e+03 - 4.7219980e+03 5.0956773e+02 -2.8393183e+03 - 4.7070245e+03 5.6886902e+02 -2.8462673e+03 - 4.6902623e+03 6.2903566e+02 -2.8539162e+03 - 4.6716458e+03 6.9016243e+02 -2.8622527e+03 - 4.6511027e+03 7.5234580e+02 -2.8712620e+03 - 4.6285535e+03 8.1568380e+02 -2.8809260e+03 - 4.6039121e+03 8.8027564e+02 -2.8912233e+03 - 4.5770854e+03 9.4622126e+02 -2.9021284e+03 - 4.5479739e+03 1.0136207e+03 -2.9136109e+03 - 4.5164719e+03 1.0825731e+03 -2.9256354e+03 - 4.4824681e+03 1.1531759e+03 -2.9381605e+03 - 4.4458469e+03 1.2255230e+03 -2.9511379e+03 - 4.4064888e+03 1.2997035e+03 -2.9645123e+03 - 4.3642724e+03 1.3757992e+03 -2.9782200e+03 - 4.3190764e+03 1.4538828e+03 -2.9921887e+03 - 4.2707815e+03 1.5340143e+03 -3.0063371e+03 - 4.2192738e+03 1.6162388e+03 -3.0205740e+03 - 4.1644474e+03 1.7005822e+03 -3.0347984e+03 - 4.1062091e+03 1.7870480e+03 -3.0488998e+03 - 4.0444819e+03 1.8756134e+03 -3.0627581e+03 - 3.9792104e+03 1.9662253e+03 -3.0762449e+03 - 3.9103650e+03 2.0587967e+03 -3.0892248e+03 - 3.8379473e+03 2.1532038e+03 -3.1015568e+03 - 3.7619947e+03 2.2492831e+03 -3.1130974e+03 - 3.6825846e+03 2.3468303e+03 -3.1237029e+03 - 3.5998378e+03 2.4456002e+03 -3.1332333e+03 - 3.5139205e+03 2.5453079e+03 -3.1415558e+03 - 3.4250453e+03 2.6456319e+03 -3.1485489e+03 - 3.3334694e+03 2.7462193e+03 -3.1541065e+03 - 3.2394923e+03 2.8466923e+03 -3.1581416e+03 - 3.1434501e+03 2.9466562e+03 -3.1605893e+03 - 3.0457088e+03 3.0457088e+03 -3.1614097e+03 - 2.9466562e+03 3.1434501e+03 -3.1605893e+03 - 2.8466923e+03 3.2394923e+03 -3.1581416e+03 - 2.7462193e+03 3.3334694e+03 -3.1541065e+03 - 2.6456319e+03 3.4250453e+03 -3.1485489e+03 - 2.5453079e+03 3.5139205e+03 -3.1415558e+03 - 2.4456002e+03 3.5998378e+03 -3.1332333e+03 - 2.3468303e+03 3.6825846e+03 -3.1237029e+03 - 2.2492831e+03 3.7619947e+03 -3.1130974e+03 - 2.1532038e+03 3.8379473e+03 -3.1015568e+03 - 2.0587967e+03 3.9103650e+03 -3.0892248e+03 - 1.9662253e+03 3.9792104e+03 -3.0762449e+03 - 1.8756134e+03 4.0444819e+03 -3.0627581e+03 - 1.7870480e+03 4.1062091e+03 -3.0488998e+03 - 1.7005822e+03 4.1644474e+03 -3.0347984e+03 - 1.6162388e+03 4.2192738e+03 -3.0205740e+03 - 1.5340143e+03 4.2707815e+03 -3.0063371e+03 - 1.4538828e+03 4.3190764e+03 -2.9921887e+03 - 1.3757992e+03 4.3642724e+03 -2.9782200e+03 - 1.2997035e+03 4.4064888e+03 -2.9645123e+03 - 1.2255230e+03 4.4458469e+03 -2.9511379e+03 - 1.1531759e+03 4.4824681e+03 -2.9381605e+03 - 1.0825731e+03 4.5164719e+03 -2.9256354e+03 - 1.0136207e+03 4.5479739e+03 -2.9136109e+03 - 9.4622126e+02 4.5770854e+03 -2.9021284e+03 - 8.8027564e+02 4.6039121e+03 -2.8912233e+03 - 8.1568380e+02 4.6285535e+03 -2.8809260e+03 - 7.5234580e+02 4.6511027e+03 -2.8712620e+03 - 6.9016243e+02 4.6716458e+03 -2.8622527e+03 - 6.2903566e+02 4.6902623e+03 -2.8539162e+03 - 5.6886902e+02 4.7070245e+03 -2.8462673e+03 - 5.0956773e+02 4.7219980e+03 -2.8393183e+03 - 4.5103881e+02 4.7352415e+03 -2.8330794e+03 - 3.9319110e+02 4.7468070e+03 -2.8275588e+03 - 3.3593517e+02 4.7567401e+03 -2.8227630e+03 - 2.7918322e+02 4.7650798e+03 -2.8186972e+03 - 2.2284889e+02 4.7718589e+03 -2.8153657e+03 - 1.6684710e+02 4.7771041e+03 -2.8127715e+03 - 1.1109378e+02 4.7808360e+03 -2.8109170e+03 - 5.5505655e+01 4.7830694e+03 -2.8098036e+03 - 0.0000000e+00 4.7838128e+03 -2.8094324e+03 - -5.5505655e+01 4.7830694e+03 -2.8098036e+03 - -1.1109378e+02 4.7808360e+03 -2.8109170e+03 - -1.6684710e+02 4.7771041e+03 -2.8127715e+03 - -2.2284889e+02 4.7718589e+03 -2.8153657e+03 - -2.7918322e+02 4.7650798e+03 -2.8186972e+03 - -3.3593517e+02 4.7567401e+03 -2.8227630e+03 - -3.9319110e+02 4.7468070e+03 -2.8275588e+03 - -4.5103881e+02 4.7352415e+03 -2.8330794e+03 - -5.0956773e+02 4.7219980e+03 -2.8393183e+03 - -5.6886902e+02 4.7070245e+03 -2.8462673e+03 - -6.2903566e+02 4.6902623e+03 -2.8539162e+03 - -6.9016243e+02 4.6716458e+03 -2.8622527e+03 - -7.5234580e+02 4.6511027e+03 -2.8712620e+03 - -8.1568380e+02 4.6285535e+03 -2.8809260e+03 - -8.8027564e+02 4.6039121e+03 -2.8912233e+03 - -9.4622126e+02 4.5770854e+03 -2.9021284e+03 - -1.0136207e+03 4.5479739e+03 -2.9136109e+03 - -1.0825731e+03 4.5164719e+03 -2.9256354e+03 - -1.1531759e+03 4.4824681e+03 -2.9381605e+03 - -1.2255230e+03 4.4458469e+03 -2.9511379e+03 - -1.2997035e+03 4.4064888e+03 -2.9645123e+03 - -1.3757992e+03 4.3642724e+03 -2.9782200e+03 - -1.4538828e+03 4.3190764e+03 -2.9921887e+03 - -1.5340143e+03 4.2707815e+03 -3.0063371e+03 - -1.6162388e+03 4.2192738e+03 -3.0205740e+03 - -1.7005822e+03 4.1644474e+03 -3.0347984e+03 - -1.7870480e+03 4.1062091e+03 -3.0488998e+03 - -1.8756134e+03 4.0444819e+03 -3.0627581e+03 - -1.9662253e+03 3.9792104e+03 -3.0762449e+03 - -2.0587967e+03 3.9103650e+03 -3.0892248e+03 - -2.1532038e+03 3.8379473e+03 -3.1015568e+03 - -2.2492831e+03 3.7619947e+03 -3.1130974e+03 - -2.3468303e+03 3.6825846e+03 -3.1237029e+03 - -2.4456002e+03 3.5998378e+03 -3.1332333e+03 - -2.5453079e+03 3.5139205e+03 -3.1415558e+03 - -2.6456319e+03 3.4250453e+03 -3.1485489e+03 - -2.7462193e+03 3.3334694e+03 -3.1541065e+03 - -2.8466923e+03 3.2394923e+03 -3.1581416e+03 - -2.9466562e+03 3.1434501e+03 -3.1605893e+03 - -3.0457088e+03 3.0457088e+03 -3.1614097e+03 - -3.1434501e+03 2.9466562e+03 -3.1605893e+03 - -3.2394923e+03 2.8466923e+03 -3.1581416e+03 - -3.3334694e+03 2.7462193e+03 -3.1541065e+03 - -3.4250453e+03 2.6456319e+03 -3.1485489e+03 - -3.5139205e+03 2.5453079e+03 -3.1415558e+03 - -3.5998378e+03 2.4456002e+03 -3.1332333e+03 - -3.6825846e+03 2.3468303e+03 -3.1237029e+03 - -3.7619947e+03 2.2492831e+03 -3.1130974e+03 - -3.8379473e+03 2.1532038e+03 -3.1015568e+03 - -3.9103650e+03 2.0587967e+03 -3.0892248e+03 - -3.9792104e+03 1.9662253e+03 -3.0762449e+03 - -4.0444819e+03 1.8756134e+03 -3.0627581e+03 - -4.1062091e+03 1.7870480e+03 -3.0488998e+03 - -4.1644474e+03 1.7005822e+03 -3.0347984e+03 - -4.2192738e+03 1.6162388e+03 -3.0205740e+03 - -4.2707815e+03 1.5340143e+03 -3.0063371e+03 - -4.3190764e+03 1.4538828e+03 -2.9921887e+03 - -4.3642724e+03 1.3757992e+03 -2.9782200e+03 - -4.4064888e+03 1.2997035e+03 -2.9645123e+03 - -4.4458469e+03 1.2255230e+03 -2.9511379e+03 - -4.4824681e+03 1.1531759e+03 -2.9381605e+03 - -4.5164719e+03 1.0825731e+03 -2.9256354e+03 - -4.5479739e+03 1.0136207e+03 -2.9136109e+03 - -4.5770854e+03 9.4622126e+02 -2.9021284e+03 - -4.6039121e+03 8.8027564e+02 -2.8912233e+03 - -4.6285535e+03 8.1568380e+02 -2.8809260e+03 - -4.6511027e+03 7.5234580e+02 -2.8712620e+03 - -4.6716458e+03 6.9016243e+02 -2.8622527e+03 - -4.6902623e+03 6.2903566e+02 -2.8539162e+03 - -4.7070245e+03 5.6886902e+02 -2.8462673e+03 - -4.7219980e+03 5.0956773e+02 -2.8393183e+03 - -4.7352415e+03 4.5103881e+02 -2.8330794e+03 - -4.7468070e+03 3.9319110e+02 -2.8275588e+03 - -4.7567401e+03 3.3593517e+02 -2.8227630e+03 - -4.7650798e+03 2.7918322e+02 -2.8186972e+03 - -4.7718589e+03 2.2284889e+02 -2.8153657e+03 - -4.7771041e+03 1.6684710e+02 -2.8127715e+03 - -4.7808360e+03 1.1109378e+02 -2.8109170e+03 - -4.7830694e+03 5.5505655e+01 -2.8098036e+03 - -4.7838128e+03 4.8134273e-09 -2.8094324e+03 - -4.7830694e+03 -5.5505655e+01 -2.8098036e+03 - -4.7808360e+03 -1.1109378e+02 -2.8109170e+03 - -4.7771041e+03 -1.6684710e+02 -2.8127715e+03 - -4.7718589e+03 -2.2284889e+02 -2.8153657e+03 - -4.7650798e+03 -2.7918322e+02 -2.8186972e+03 - -4.7567401e+03 -3.3593517e+02 -2.8227630e+03 - -4.7468070e+03 -3.9319110e+02 -2.8275588e+03 - -4.7352415e+03 -4.5103881e+02 -2.8330794e+03 - -4.7219980e+03 -5.0956773e+02 -2.8393183e+03 - -4.7070245e+03 -5.6886902e+02 -2.8462673e+03 - -4.6902623e+03 -6.2903566e+02 -2.8539162e+03 - -4.6716458e+03 -6.9016243e+02 -2.8622527e+03 - -4.6511027e+03 -7.5234580e+02 -2.8712620e+03 - -4.6285535e+03 -8.1568380e+02 -2.8809260e+03 - -4.6039121e+03 -8.8027564e+02 -2.8912233e+03 - -4.5770854e+03 -9.4622126e+02 -2.9021284e+03 - -4.5479739e+03 -1.0136207e+03 -2.9136109e+03 - -4.5164719e+03 -1.0825731e+03 -2.9256354e+03 - -4.4824681e+03 -1.1531759e+03 -2.9381605e+03 - -4.4458469e+03 -1.2255230e+03 -2.9511379e+03 - -4.4064888e+03 -1.2997035e+03 -2.9645123e+03 - -4.3642724e+03 -1.3757992e+03 -2.9782200e+03 - -4.3190764e+03 -1.4538828e+03 -2.9921887e+03 - -4.2707815e+03 -1.5340143e+03 -3.0063371e+03 - -4.2192738e+03 -1.6162388e+03 -3.0205740e+03 - -4.1644474e+03 -1.7005822e+03 -3.0347984e+03 - -4.1062091e+03 -1.7870480e+03 -3.0488998e+03 - -4.0444819e+03 -1.8756134e+03 -3.0627581e+03 - -3.9792104e+03 -1.9662253e+03 -3.0762449e+03 - -3.9103650e+03 -2.0587967e+03 -3.0892248e+03 - -3.8379473e+03 -2.1532038e+03 -3.1015568e+03 - -3.7619947e+03 -2.2492831e+03 -3.1130974e+03 - -3.6825846e+03 -2.3468303e+03 -3.1237029e+03 - -3.5998378e+03 -2.4456002e+03 -3.1332333e+03 - -3.5139205e+03 -2.5453079e+03 -3.1415558e+03 - -3.4250453e+03 -2.6456319e+03 -3.1485489e+03 - -3.3334694e+03 -2.7462193e+03 -3.1541065e+03 - -3.2394923e+03 -2.8466923e+03 -3.1581416e+03 - -3.1434501e+03 -2.9466562e+03 -3.1605893e+03 - -3.0457088e+03 -3.0457088e+03 -3.1614097e+03 - -2.9466562e+03 -3.1434501e+03 -3.1605893e+03 - -2.8466923e+03 -3.2394923e+03 -3.1581416e+03 - -2.7462193e+03 -3.3334694e+03 -3.1541065e+03 - -2.6456319e+03 -3.4250453e+03 -3.1485489e+03 - -2.5453079e+03 -3.5139205e+03 -3.1415558e+03 - -2.4456002e+03 -3.5998378e+03 -3.1332333e+03 - -2.3468303e+03 -3.6825846e+03 -3.1237029e+03 - -2.2492831e+03 -3.7619947e+03 -3.1130974e+03 - -2.1532038e+03 -3.8379473e+03 -3.1015568e+03 - -2.0587967e+03 -3.9103650e+03 -3.0892248e+03 - -1.9662253e+03 -3.9792104e+03 -3.0762449e+03 - -1.8756134e+03 -4.0444819e+03 -3.0627581e+03 - -1.7870480e+03 -4.1062091e+03 -3.0488998e+03 - -1.7005822e+03 -4.1644474e+03 -3.0347984e+03 - -1.6162388e+03 -4.2192738e+03 -3.0205740e+03 - -1.5340143e+03 -4.2707815e+03 -3.0063371e+03 - -1.4538828e+03 -4.3190764e+03 -2.9921887e+03 - -1.3757992e+03 -4.3642724e+03 -2.9782200e+03 - -1.2997035e+03 -4.4064888e+03 -2.9645123e+03 - -1.2255230e+03 -4.4458469e+03 -2.9511379e+03 - -1.1531759e+03 -4.4824681e+03 -2.9381605e+03 - -1.0825731e+03 -4.5164719e+03 -2.9256354e+03 - -1.0136207e+03 -4.5479739e+03 -2.9136109e+03 - -9.4622126e+02 -4.5770854e+03 -2.9021284e+03 - -8.8027564e+02 -4.6039121e+03 -2.8912233e+03 - -8.1568380e+02 -4.6285535e+03 -2.8809260e+03 - -7.5234580e+02 -4.6511027e+03 -2.8712620e+03 - -6.9016243e+02 -4.6716458e+03 -2.8622527e+03 - -6.2903566e+02 -4.6902623e+03 -2.8539162e+03 - -5.6886902e+02 -4.7070245e+03 -2.8462673e+03 - -5.0956773e+02 -4.7219980e+03 -2.8393183e+03 - -4.5103881e+02 -4.7352415e+03 -2.8330794e+03 - -3.9319110e+02 -4.7468070e+03 -2.8275588e+03 - -3.3593517e+02 -4.7567401e+03 -2.8227630e+03 - -2.7918322e+02 -4.7650798e+03 -2.8186972e+03 - -2.2284889e+02 -4.7718589e+03 -2.8153657e+03 - -1.6684710e+02 -4.7771041e+03 -2.8127715e+03 - -1.1109378e+02 -4.7808360e+03 -2.8109170e+03 - -5.5505655e+01 -4.7830694e+03 -2.8098036e+03 - 0.0000000e+00 -4.7838128e+03 -2.8094324e+03 - 5.5505655e+01 -4.7830694e+03 -2.8098036e+03 - 1.1109378e+02 -4.7808360e+03 -2.8109170e+03 - 1.6684710e+02 -4.7771041e+03 -2.8127715e+03 - 2.2284889e+02 -4.7718589e+03 -2.8153657e+03 - 2.7918322e+02 -4.7650798e+03 -2.8186972e+03 - 3.3593517e+02 -4.7567401e+03 -2.8227630e+03 - 3.9319110e+02 -4.7468070e+03 -2.8275588e+03 - 4.5103881e+02 -4.7352415e+03 -2.8330794e+03 - 5.0956773e+02 -4.7219980e+03 -2.8393183e+03 - 5.6886902e+02 -4.7070245e+03 -2.8462673e+03 - 6.2903566e+02 -4.6902623e+03 -2.8539162e+03 - 6.9016243e+02 -4.6716458e+03 -2.8622527e+03 - 7.5234580e+02 -4.6511027e+03 -2.8712620e+03 - 8.1568380e+02 -4.6285535e+03 -2.8809260e+03 - 8.8027564e+02 -4.6039121e+03 -2.8912233e+03 - 9.4622126e+02 -4.5770854e+03 -2.9021284e+03 - 1.0136207e+03 -4.5479739e+03 -2.9136109e+03 - 1.0825731e+03 -4.5164719e+03 -2.9256354e+03 - 1.1531759e+03 -4.4824681e+03 -2.9381605e+03 - 1.2255230e+03 -4.4458469e+03 -2.9511379e+03 - 1.2997035e+03 -4.4064888e+03 -2.9645123e+03 - 1.3757992e+03 -4.3642724e+03 -2.9782200e+03 - 1.4538828e+03 -4.3190764e+03 -2.9921887e+03 - 1.5340143e+03 -4.2707815e+03 -3.0063371e+03 - 1.6162388e+03 -4.2192738e+03 -3.0205740e+03 - 1.7005822e+03 -4.1644474e+03 -3.0347984e+03 - 1.7870480e+03 -4.1062091e+03 -3.0488998e+03 - 1.8756134e+03 -4.0444819e+03 -3.0627581e+03 - 1.9662253e+03 -3.9792104e+03 -3.0762449e+03 - 2.0587967e+03 -3.9103650e+03 -3.0892248e+03 - 2.1532038e+03 -3.8379473e+03 -3.1015568e+03 - 2.2492831e+03 -3.7619947e+03 -3.1130974e+03 - 2.3468303e+03 -3.6825846e+03 -3.1237029e+03 - 2.4456002e+03 -3.5998378e+03 -3.1332333e+03 - 2.5453079e+03 -3.5139205e+03 -3.1415558e+03 - 2.6456319e+03 -3.4250453e+03 -3.1485489e+03 - 2.7462193e+03 -3.3334694e+03 -3.1541065e+03 - 2.8466923e+03 -3.2394923e+03 -3.1581416e+03 - 2.9466562e+03 -3.1434501e+03 -3.1605893e+03 - 3.0457088e+03 -3.0457088e+03 -3.1614097e+03 - 3.1434501e+03 -2.9466562e+03 -3.1605893e+03 - 3.2394923e+03 -2.8466923e+03 -3.1581416e+03 - 3.3334694e+03 -2.7462193e+03 -3.1541065e+03 - 3.4250453e+03 -2.6456319e+03 -3.1485489e+03 - 3.5139205e+03 -2.5453079e+03 -3.1415558e+03 - 3.5998378e+03 -2.4456002e+03 -3.1332333e+03 - 3.6825846e+03 -2.3468303e+03 -3.1237029e+03 - 3.7619947e+03 -2.2492831e+03 -3.1130974e+03 - 3.8379473e+03 -2.1532038e+03 -3.1015568e+03 - 3.9103650e+03 -2.0587967e+03 -3.0892248e+03 - 3.9792104e+03 -1.9662253e+03 -3.0762449e+03 - 4.0444819e+03 -1.8756134e+03 -3.0627581e+03 - 4.1062091e+03 -1.7870480e+03 -3.0488998e+03 - 4.1644474e+03 -1.7005822e+03 -3.0347984e+03 - 4.2192738e+03 -1.6162388e+03 -3.0205740e+03 - 4.2707815e+03 -1.5340143e+03 -3.0063371e+03 - 4.3190764e+03 -1.4538828e+03 -2.9921887e+03 - 4.3642724e+03 -1.3757992e+03 -2.9782200e+03 - 4.4064888e+03 -1.2997035e+03 -2.9645123e+03 - 4.4458469e+03 -1.2255230e+03 -2.9511379e+03 - 4.4824681e+03 -1.1531759e+03 -2.9381605e+03 - 4.5164719e+03 -1.0825731e+03 -2.9256354e+03 - 4.5479739e+03 -1.0136207e+03 -2.9136109e+03 - 4.5770854e+03 -9.4622126e+02 -2.9021284e+03 - 4.6039121e+03 -8.8027564e+02 -2.8912233e+03 - 4.6285535e+03 -8.1568380e+02 -2.8809260e+03 - 4.6511027e+03 -7.5234580e+02 -2.8712620e+03 - 4.6716458e+03 -6.9016243e+02 -2.8622527e+03 - 4.6902623e+03 -6.2903566e+02 -2.8539162e+03 - 4.7070245e+03 -5.6886902e+02 -2.8462673e+03 - 4.7219980e+03 -5.0956773e+02 -2.8393183e+03 - 4.7352415e+03 -4.5103881e+02 -2.8330794e+03 - 4.7468070e+03 -3.9319110e+02 -2.8275588e+03 - 4.7567401e+03 -3.3593517e+02 -2.8227630e+03 - 4.7650798e+03 -2.7918322e+02 -2.8186972e+03 - 4.7718589e+03 -2.2284889e+02 -2.8153657e+03 - 4.7771041e+03 -1.6684710e+02 -2.8127715e+03 - 4.7808360e+03 -1.1109378e+02 -2.8109170e+03 - 4.7830694e+03 -5.5505655e+01 -2.8098036e+03 - 4.7838128e+03 -4.8134273e-09 -2.8094324e+03 - 4.7461604e+03 0.0000000e+00 -2.8782484e+03 - 4.7454100e+03 5.5720100e+01 -2.8786112e+03 - 4.7431563e+03 1.1152155e+02 -2.8796991e+03 - 4.7393904e+03 1.6748592e+02 -2.8815111e+03 - 4.7340982e+03 2.2369529e+02 -2.8840454e+03 - 4.7272595e+03 2.8023242e+02 -2.8872993e+03 - 4.7188481e+03 3.3718099e+02 -2.8912692e+03 - 4.7088321e+03 3.9462580e+02 -2.8959504e+03 - 4.6971734e+03 4.5265291e+02 -2.9013371e+03 - 4.6838277e+03 5.1134979e+02 -2.9074220e+03 - 4.6687443e+03 5.7080541e+02 -2.9141960e+03 - 4.6518664e+03 6.3111023e+02 -2.9216483e+03 - 4.6331303e+03 6.9235621e+02 -2.9297655e+03 - 4.6124662e+03 7.5463664e+02 -2.9385318e+03 - 4.5897974e+03 8.1804594e+02 -2.9479284e+03 - 4.5650411e+03 8.8267927e+02 -2.9579327e+03 - 4.5381080e+03 9.4863206e+02 -2.9685184e+03 - 4.5089030e+03 1.0159993e+03 -2.9796545e+03 - 4.4773253e+03 1.0848746e+03 -2.9913049e+03 - 4.4432695e+03 1.1553494e+03 -3.0034276e+03 - 4.4066261e+03 1.2275109e+03 -3.0159745e+03 - 4.3672829e+03 1.3014411e+03 -3.0288902e+03 - 4.3251264e+03 1.3772146e+03 -3.0421119e+03 - 4.2800437e+03 1.4548961e+03 -3.0555686e+03 - 4.2319248e+03 1.5345378e+03 -3.0691807e+03 - 4.1806654e+03 1.6161770e+03 -3.0828598e+03 - 4.1261698e+03 1.6998320e+03 -3.0965084e+03 - 4.0683548e+03 1.7854995e+03 -3.1100204e+03 - 4.0071537e+03 1.8731508e+03 -3.1232813e+03 - 3.9425203e+03 1.9627283e+03 -3.1361690e+03 - 3.8744334e+03 2.0541425e+03 -3.1485556e+03 - 3.8029016e+03 2.1472691e+03 -3.1603086e+03 - 3.7279670e+03 2.2419471e+03 -3.1712935e+03 - 3.6497095e+03 2.3379777e+03 -3.1813766e+03 - 3.5682489e+03 2.4351244e+03 -3.1904276e+03 - 3.4837473e+03 2.5331145e+03 -3.1983239e+03 - 3.3964092e+03 2.6316421e+03 -3.2049534e+03 - 3.3064804e+03 2.7303730e+03 -3.2102184e+03 - 3.2142448e+03 2.8289503e+03 -3.2140389e+03 - 3.1200200e+03 2.9270024e+03 -3.2163556e+03 - 3.0241510e+03 3.0241510e+03 -3.2171320e+03 - 2.9270024e+03 3.1200200e+03 -3.2163556e+03 - 2.8289503e+03 3.2142448e+03 -3.2140389e+03 - 2.7303730e+03 3.3064804e+03 -3.2102184e+03 - 2.6316421e+03 3.3964092e+03 -3.2049534e+03 - 2.5331145e+03 3.4837473e+03 -3.1983239e+03 - 2.4351244e+03 3.5682489e+03 -3.1904276e+03 - 2.3379777e+03 3.6497095e+03 -3.1813766e+03 - 2.2419471e+03 3.7279670e+03 -3.1712935e+03 - 2.1472691e+03 3.8029016e+03 -3.1603086e+03 - 2.0541425e+03 3.8744334e+03 -3.1485556e+03 - 1.9627283e+03 3.9425203e+03 -3.1361690e+03 - 1.8731508e+03 4.0071537e+03 -3.1232813e+03 - 1.7854995e+03 4.0683548e+03 -3.1100204e+03 - 1.6998320e+03 4.1261698e+03 -3.0965084e+03 - 1.6161770e+03 4.1806654e+03 -3.0828598e+03 - 1.5345378e+03 4.2319248e+03 -3.0691807e+03 - 1.4548961e+03 4.2800437e+03 -3.0555686e+03 - 1.3772146e+03 4.3251264e+03 -3.0421119e+03 - 1.3014411e+03 4.3672829e+03 -3.0288902e+03 - 1.2275109e+03 4.4066261e+03 -3.0159745e+03 - 1.1553494e+03 4.4432695e+03 -3.0034276e+03 - 1.0848746e+03 4.4773253e+03 -2.9913049e+03 - 1.0159993e+03 4.5089030e+03 -2.9796545e+03 - 9.4863206e+02 4.5381080e+03 -2.9685184e+03 - 8.8267927e+02 4.5650411e+03 -2.9579327e+03 - 8.1804594e+02 4.5897974e+03 -2.9479284e+03 - 7.5463664e+02 4.6124662e+03 -2.9385318e+03 - 6.9235621e+02 4.6331303e+03 -2.9297655e+03 - 6.3111023e+02 4.6518664e+03 -2.9216483e+03 - 5.7080541e+02 4.6687443e+03 -2.9141960e+03 - 5.1134979e+02 4.6838277e+03 -2.9074220e+03 - 4.5265291e+02 4.6971734e+03 -2.9013371e+03 - 3.9462580e+02 4.7088321e+03 -2.8959504e+03 - 3.3718099e+02 4.7188481e+03 -2.8912692e+03 - 2.8023242e+02 4.7272595e+03 -2.8872993e+03 - 2.2369529e+02 4.7340982e+03 -2.8840454e+03 - 1.6748592e+02 4.7393904e+03 -2.8815111e+03 - 1.1152155e+02 4.7431563e+03 -2.8796991e+03 - 5.5720100e+01 4.7454100e+03 -2.8786112e+03 - 0.0000000e+00 4.7461604e+03 -2.8782484e+03 - -5.5720100e+01 4.7454100e+03 -2.8786112e+03 - -1.1152155e+02 4.7431563e+03 -2.8796991e+03 - -1.6748592e+02 4.7393904e+03 -2.8815111e+03 - -2.2369529e+02 4.7340982e+03 -2.8840454e+03 - -2.8023242e+02 4.7272595e+03 -2.8872993e+03 - -3.3718099e+02 4.7188481e+03 -2.8912692e+03 - -3.9462580e+02 4.7088321e+03 -2.8959504e+03 - -4.5265291e+02 4.6971734e+03 -2.9013371e+03 - -5.1134979e+02 4.6838277e+03 -2.9074220e+03 - -5.7080541e+02 4.6687443e+03 -2.9141960e+03 - -6.3111023e+02 4.6518664e+03 -2.9216483e+03 - -6.9235621e+02 4.6331303e+03 -2.9297655e+03 - -7.5463664e+02 4.6124662e+03 -2.9385318e+03 - -8.1804594e+02 4.5897974e+03 -2.9479284e+03 - -8.8267927e+02 4.5650411e+03 -2.9579327e+03 - -9.4863206e+02 4.5381080e+03 -2.9685184e+03 - -1.0159993e+03 4.5089030e+03 -2.9796545e+03 - -1.0848746e+03 4.4773253e+03 -2.9913049e+03 - -1.1553494e+03 4.4432695e+03 -3.0034276e+03 - -1.2275109e+03 4.4066261e+03 -3.0159745e+03 - -1.3014411e+03 4.3672829e+03 -3.0288902e+03 - -1.3772146e+03 4.3251264e+03 -3.0421119e+03 - -1.4548961e+03 4.2800437e+03 -3.0555686e+03 - -1.5345378e+03 4.2319248e+03 -3.0691807e+03 - -1.6161770e+03 4.1806654e+03 -3.0828598e+03 - -1.6998320e+03 4.1261698e+03 -3.0965084e+03 - -1.7854995e+03 4.0683548e+03 -3.1100204e+03 - -1.8731508e+03 4.0071537e+03 -3.1232813e+03 - -1.9627283e+03 3.9425203e+03 -3.1361690e+03 - -2.0541425e+03 3.8744334e+03 -3.1485556e+03 - -2.1472691e+03 3.8029016e+03 -3.1603086e+03 - -2.2419471e+03 3.7279670e+03 -3.1712935e+03 - -2.3379777e+03 3.6497095e+03 -3.1813766e+03 - -2.4351244e+03 3.5682489e+03 -3.1904276e+03 - -2.5331145e+03 3.4837473e+03 -3.1983239e+03 - -2.6316421e+03 3.3964092e+03 -3.2049534e+03 - -2.7303730e+03 3.3064804e+03 -3.2102184e+03 - -2.8289503e+03 3.2142448e+03 -3.2140389e+03 - -2.9270024e+03 3.1200200e+03 -3.2163556e+03 - -3.0241510e+03 3.0241510e+03 -3.2171320e+03 - -3.1200200e+03 2.9270024e+03 -3.2163556e+03 - -3.2142448e+03 2.8289503e+03 -3.2140389e+03 - -3.3064804e+03 2.7303730e+03 -3.2102184e+03 - -3.3964092e+03 2.6316421e+03 -3.2049534e+03 - -3.4837473e+03 2.5331145e+03 -3.1983239e+03 - -3.5682489e+03 2.4351244e+03 -3.1904276e+03 - -3.6497095e+03 2.3379777e+03 -3.1813766e+03 - -3.7279670e+03 2.2419471e+03 -3.1712935e+03 - -3.8029016e+03 2.1472691e+03 -3.1603086e+03 - -3.8744334e+03 2.0541425e+03 -3.1485556e+03 - -3.9425203e+03 1.9627283e+03 -3.1361690e+03 - -4.0071537e+03 1.8731508e+03 -3.1232813e+03 - -4.0683548e+03 1.7854995e+03 -3.1100204e+03 - -4.1261698e+03 1.6998320e+03 -3.0965084e+03 - -4.1806654e+03 1.6161770e+03 -3.0828598e+03 - -4.2319248e+03 1.5345378e+03 -3.0691807e+03 - -4.2800437e+03 1.4548961e+03 -3.0555686e+03 - -4.3251264e+03 1.3772146e+03 -3.0421119e+03 - -4.3672829e+03 1.3014411e+03 -3.0288902e+03 - -4.4066261e+03 1.2275109e+03 -3.0159745e+03 - -4.4432695e+03 1.1553494e+03 -3.0034276e+03 - -4.4773253e+03 1.0848746e+03 -2.9913049e+03 - -4.5089030e+03 1.0159993e+03 -2.9796545e+03 - -4.5381080e+03 9.4863206e+02 -2.9685184e+03 - -4.5650411e+03 8.8267927e+02 -2.9579327e+03 - -4.5897974e+03 8.1804594e+02 -2.9479284e+03 - -4.6124662e+03 7.5463664e+02 -2.9385318e+03 - -4.6331303e+03 6.9235621e+02 -2.9297655e+03 - -4.6518664e+03 6.3111023e+02 -2.9216483e+03 - -4.6687443e+03 5.7080541e+02 -2.9141960e+03 - -4.6838277e+03 5.1134979e+02 -2.9074220e+03 - -4.6971734e+03 4.5265291e+02 -2.9013371e+03 - -4.7088321e+03 3.9462580e+02 -2.8959504e+03 - -4.7188481e+03 3.3718099e+02 -2.8912692e+03 - -4.7272595e+03 2.8023242e+02 -2.8872993e+03 - -4.7340982e+03 2.2369529e+02 -2.8840454e+03 - -4.7393904e+03 1.6748592e+02 -2.8815111e+03 - -4.7431563e+03 1.1152155e+02 -2.8796991e+03 - -4.7454100e+03 5.5720100e+01 -2.8786112e+03 - -4.7461604e+03 -4.8134273e-09 -2.8782484e+03 - -4.7454100e+03 -5.5720100e+01 -2.8786112e+03 - -4.7431563e+03 -1.1152155e+02 -2.8796991e+03 - -4.7393904e+03 -1.6748592e+02 -2.8815111e+03 - -4.7340982e+03 -2.2369529e+02 -2.8840454e+03 - -4.7272595e+03 -2.8023242e+02 -2.8872993e+03 - -4.7188481e+03 -3.3718099e+02 -2.8912692e+03 - -4.7088321e+03 -3.9462580e+02 -2.8959504e+03 - -4.6971734e+03 -4.5265291e+02 -2.9013371e+03 - -4.6838277e+03 -5.1134979e+02 -2.9074220e+03 - -4.6687443e+03 -5.7080541e+02 -2.9141960e+03 - -4.6518664e+03 -6.3111023e+02 -2.9216483e+03 - -4.6331303e+03 -6.9235621e+02 -2.9297655e+03 - -4.6124662e+03 -7.5463664e+02 -2.9385318e+03 - -4.5897974e+03 -8.1804594e+02 -2.9479284e+03 - -4.5650411e+03 -8.8267927e+02 -2.9579327e+03 - -4.5381080e+03 -9.4863206e+02 -2.9685184e+03 - -4.5089030e+03 -1.0159993e+03 -2.9796545e+03 - -4.4773253e+03 -1.0848746e+03 -2.9913049e+03 - -4.4432695e+03 -1.1553494e+03 -3.0034276e+03 - -4.4066261e+03 -1.2275109e+03 -3.0159745e+03 - -4.3672829e+03 -1.3014411e+03 -3.0288902e+03 - -4.3251264e+03 -1.3772146e+03 -3.0421119e+03 - -4.2800437e+03 -1.4548961e+03 -3.0555686e+03 - -4.2319248e+03 -1.5345378e+03 -3.0691807e+03 - -4.1806654e+03 -1.6161770e+03 -3.0828598e+03 - -4.1261698e+03 -1.6998320e+03 -3.0965084e+03 - -4.0683548e+03 -1.7854995e+03 -3.1100204e+03 - -4.0071537e+03 -1.8731508e+03 -3.1232813e+03 - -3.9425203e+03 -1.9627283e+03 -3.1361690e+03 - -3.8744334e+03 -2.0541425e+03 -3.1485556e+03 - -3.8029016e+03 -2.1472691e+03 -3.1603086e+03 - -3.7279670e+03 -2.2419471e+03 -3.1712935e+03 - -3.6497095e+03 -2.3379777e+03 -3.1813766e+03 - -3.5682489e+03 -2.4351244e+03 -3.1904276e+03 - -3.4837473e+03 -2.5331145e+03 -3.1983239e+03 - -3.3964092e+03 -2.6316421e+03 -3.2049534e+03 - -3.3064804e+03 -2.7303730e+03 -3.2102184e+03 - -3.2142448e+03 -2.8289503e+03 -3.2140389e+03 - -3.1200200e+03 -2.9270024e+03 -3.2163556e+03 - -3.0241510e+03 -3.0241510e+03 -3.2171320e+03 - -2.9270024e+03 -3.1200200e+03 -3.2163556e+03 - -2.8289503e+03 -3.2142448e+03 -3.2140389e+03 - -2.7303730e+03 -3.3064804e+03 -3.2102184e+03 - -2.6316421e+03 -3.3964092e+03 -3.2049534e+03 - -2.5331145e+03 -3.4837473e+03 -3.1983239e+03 - -2.4351244e+03 -3.5682489e+03 -3.1904276e+03 - -2.3379777e+03 -3.6497095e+03 -3.1813766e+03 - -2.2419471e+03 -3.7279670e+03 -3.1712935e+03 - -2.1472691e+03 -3.8029016e+03 -3.1603086e+03 - -2.0541425e+03 -3.8744334e+03 -3.1485556e+03 - -1.9627283e+03 -3.9425203e+03 -3.1361690e+03 - -1.8731508e+03 -4.0071537e+03 -3.1232813e+03 - -1.7854995e+03 -4.0683548e+03 -3.1100204e+03 - -1.6998320e+03 -4.1261698e+03 -3.0965084e+03 - -1.6161770e+03 -4.1806654e+03 -3.0828598e+03 - -1.5345378e+03 -4.2319248e+03 -3.0691807e+03 - -1.4548961e+03 -4.2800437e+03 -3.0555686e+03 - -1.3772146e+03 -4.3251264e+03 -3.0421119e+03 - -1.3014411e+03 -4.3672829e+03 -3.0288902e+03 - -1.2275109e+03 -4.4066261e+03 -3.0159745e+03 - -1.1553494e+03 -4.4432695e+03 -3.0034276e+03 - -1.0848746e+03 -4.4773253e+03 -2.9913049e+03 - -1.0159993e+03 -4.5089030e+03 -2.9796545e+03 - -9.4863206e+02 -4.5381080e+03 -2.9685184e+03 - -8.8267927e+02 -4.5650411e+03 -2.9579327e+03 - -8.1804594e+02 -4.5897974e+03 -2.9479284e+03 - -7.5463664e+02 -4.6124662e+03 -2.9385318e+03 - -6.9235621e+02 -4.6331303e+03 -2.9297655e+03 - -6.3111023e+02 -4.6518664e+03 -2.9216483e+03 - -5.7080541e+02 -4.6687443e+03 -2.9141960e+03 - -5.1134979e+02 -4.6838277e+03 -2.9074220e+03 - -4.5265291e+02 -4.6971734e+03 -2.9013371e+03 - -3.9462580e+02 -4.7088321e+03 -2.8959504e+03 - -3.3718099e+02 -4.7188481e+03 -2.8912692e+03 - -2.8023242e+02 -4.7272595e+03 -2.8872993e+03 - -2.2369529e+02 -4.7340982e+03 -2.8840454e+03 - -1.6748592e+02 -4.7393904e+03 -2.8815111e+03 - -1.1152155e+02 -4.7431563e+03 -2.8796991e+03 - -5.5720100e+01 -4.7454100e+03 -2.8786112e+03 - 0.0000000e+00 -4.7461604e+03 -2.8782484e+03 - 5.5720100e+01 -4.7454100e+03 -2.8786112e+03 - 1.1152155e+02 -4.7431563e+03 -2.8796991e+03 - 1.6748592e+02 -4.7393904e+03 -2.8815111e+03 - 2.2369529e+02 -4.7340982e+03 -2.8840454e+03 - 2.8023242e+02 -4.7272595e+03 -2.8872993e+03 - 3.3718099e+02 -4.7188481e+03 -2.8912692e+03 - 3.9462580e+02 -4.7088321e+03 -2.8959504e+03 - 4.5265291e+02 -4.6971734e+03 -2.9013371e+03 - 5.1134979e+02 -4.6838277e+03 -2.9074220e+03 - 5.7080541e+02 -4.6687443e+03 -2.9141960e+03 - 6.3111023e+02 -4.6518664e+03 -2.9216483e+03 - 6.9235621e+02 -4.6331303e+03 -2.9297655e+03 - 7.5463664e+02 -4.6124662e+03 -2.9385318e+03 - 8.1804594e+02 -4.5897974e+03 -2.9479284e+03 - 8.8267927e+02 -4.5650411e+03 -2.9579327e+03 - 9.4863206e+02 -4.5381080e+03 -2.9685184e+03 - 1.0159993e+03 -4.5089030e+03 -2.9796545e+03 - 1.0848746e+03 -4.4773253e+03 -2.9913049e+03 - 1.1553494e+03 -4.4432695e+03 -3.0034276e+03 - 1.2275109e+03 -4.4066261e+03 -3.0159745e+03 - 1.3014411e+03 -4.3672829e+03 -3.0288902e+03 - 1.3772146e+03 -4.3251264e+03 -3.0421119e+03 - 1.4548961e+03 -4.2800437e+03 -3.0555686e+03 - 1.5345378e+03 -4.2319248e+03 -3.0691807e+03 - 1.6161770e+03 -4.1806654e+03 -3.0828598e+03 - 1.6998320e+03 -4.1261698e+03 -3.0965084e+03 - 1.7854995e+03 -4.0683548e+03 -3.1100204e+03 - 1.8731508e+03 -4.0071537e+03 -3.1232813e+03 - 1.9627283e+03 -3.9425203e+03 -3.1361690e+03 - 2.0541425e+03 -3.8744334e+03 -3.1485556e+03 - 2.1472691e+03 -3.8029016e+03 -3.1603086e+03 - 2.2419471e+03 -3.7279670e+03 -3.1712935e+03 - 2.3379777e+03 -3.6497095e+03 -3.1813766e+03 - 2.4351244e+03 -3.5682489e+03 -3.1904276e+03 - 2.5331145e+03 -3.4837473e+03 -3.1983239e+03 - 2.6316421e+03 -3.3964092e+03 -3.2049534e+03 - 2.7303730e+03 -3.3064804e+03 -3.2102184e+03 - 2.8289503e+03 -3.2142448e+03 -3.2140389e+03 - 2.9270024e+03 -3.1200200e+03 -3.2163556e+03 - 3.0241510e+03 -3.0241510e+03 -3.2171320e+03 - 3.1200200e+03 -2.9270024e+03 -3.2163556e+03 - 3.2142448e+03 -2.8289503e+03 -3.2140389e+03 - 3.3064804e+03 -2.7303730e+03 -3.2102184e+03 - 3.3964092e+03 -2.6316421e+03 -3.2049534e+03 - 3.4837473e+03 -2.5331145e+03 -3.1983239e+03 - 3.5682489e+03 -2.4351244e+03 -3.1904276e+03 - 3.6497095e+03 -2.3379777e+03 -3.1813766e+03 - 3.7279670e+03 -2.2419471e+03 -3.1712935e+03 - 3.8029016e+03 -2.1472691e+03 -3.1603086e+03 - 3.8744334e+03 -2.0541425e+03 -3.1485556e+03 - 3.9425203e+03 -1.9627283e+03 -3.1361690e+03 - 4.0071537e+03 -1.8731508e+03 -3.1232813e+03 - 4.0683548e+03 -1.7854995e+03 -3.1100204e+03 - 4.1261698e+03 -1.6998320e+03 -3.0965084e+03 - 4.1806654e+03 -1.6161770e+03 -3.0828598e+03 - 4.2319248e+03 -1.5345378e+03 -3.0691807e+03 - 4.2800437e+03 -1.4548961e+03 -3.0555686e+03 - 4.3251264e+03 -1.3772146e+03 -3.0421119e+03 - 4.3672829e+03 -1.3014411e+03 -3.0288902e+03 - 4.4066261e+03 -1.2275109e+03 -3.0159745e+03 - 4.4432695e+03 -1.1553494e+03 -3.0034276e+03 - 4.4773253e+03 -1.0848746e+03 -2.9913049e+03 - 4.5089030e+03 -1.0159993e+03 -2.9796545e+03 - 4.5381080e+03 -9.4863206e+02 -2.9685184e+03 - 4.5650411e+03 -8.8267927e+02 -2.9579327e+03 - 4.5897974e+03 -8.1804594e+02 -2.9479284e+03 - 4.6124662e+03 -7.5463664e+02 -2.9385318e+03 - 4.6331303e+03 -6.9235621e+02 -2.9297655e+03 - 4.6518664e+03 -6.3111023e+02 -2.9216483e+03 - 4.6687443e+03 -5.7080541e+02 -2.9141960e+03 - 4.6838277e+03 -5.1134979e+02 -2.9074220e+03 - 4.6971734e+03 -4.5265291e+02 -2.9013371e+03 - 4.7088321e+03 -3.9462580e+02 -2.8959504e+03 - 4.7188481e+03 -3.3718099e+02 -2.8912692e+03 - 4.7272595e+03 -2.8023242e+02 -2.8872993e+03 - 4.7340982e+03 -2.2369529e+02 -2.8840454e+03 - 4.7393904e+03 -1.6748592e+02 -2.8815111e+03 - 4.7431563e+03 -1.1152155e+02 -2.8796991e+03 - 4.7454100e+03 -5.5720100e+01 -2.8786112e+03 - 4.7461604e+03 4.8134273e-09 -2.8782484e+03 - 4.7081042e+03 0.0000000e+00 -2.9446705e+03 - 4.7073477e+03 5.5924745e+01 -2.9450244e+03 - 4.7050752e+03 1.1192962e+02 -2.9460855e+03 - 4.7012785e+03 1.6809498e+02 -2.9478528e+03 - 4.6959434e+03 2.2450159e+02 -2.9503241e+03 - 4.6890504e+03 2.8123084e+02 -2.9534964e+03 - 4.6805741e+03 3.3836491e+02 -2.9573658e+03 - 4.6704832e+03 3.9598695e+02 -2.9619271e+03 - 4.6587406e+03 4.5418122e+02 -2.9671737e+03 - 4.6453034e+03 5.1303316e+02 -2.9730979e+03 - 4.6301223e+03 5.7262945e+02 -2.9796897e+03 - 4.6131423e+03 6.3305801e+02 -2.9869376e+03 - 4.5943018e+03 6.9440791e+02 -2.9948275e+03 - 4.5735335e+03 7.5676924e+02 -3.0033428e+03 - 4.5507635e+03 8.2023279e+02 -3.0124636e+03 - 4.5259123e+03 8.8488971e+02 -3.0221669e+03 - 4.4988945e+03 9.5083092e+02 -3.0324255e+03 - 4.4696192e+03 1.0181465e+03 -3.0432079e+03 - 4.4379907e+03 1.0869247e+03 -3.0544774e+03 - 4.4039091e+03 1.1572508e+03 -3.0661920e+03 - 4.3672712e+03 1.2292059e+03 -3.0783036e+03 - 4.3279716e+03 1.3028653e+03 -3.0907573e+03 - 4.2859044e+03 1.3782963e+03 -3.1034913e+03 - 4.2409649e+03 1.4555564e+03 -3.1164359e+03 - 4.1930519e+03 1.5346905e+03 -3.1295137e+03 - 4.1420701e+03 1.6157284e+03 -3.1426390e+03 - 4.0879334e+03 1.6986819e+03 -3.1557180e+03 - 4.0305681e+03 1.7835413e+03 -3.1686491e+03 - 3.9699164e+03 1.8702727e+03 -3.1813230e+03 - 3.9059408e+03 1.9588147e+03 -3.1936242e+03 - 3.8386278e+03 2.0490759e+03 -3.2054319e+03 - 3.7679918e+03 2.1409322e+03 -3.2166216e+03 - 3.6940792e+03 2.2342253e+03 -3.2270676e+03 - 3.6169712e+03 2.3287620e+03 -3.2366453e+03 - 3.5367867e+03 2.4243145e+03 -3.2452339e+03 - 3.4536833e+03 2.5206219e+03 -3.2527199e+03 - 3.3678577e+03 2.6173931e+03 -3.2589998e+03 - 3.2795443e+03 2.7143114e+03 -3.2639840e+03 - 3.1890127e+03 2.8110399e+03 -3.2675989e+03 - 3.0965631e+03 2.9072282e+03 -3.2697902e+03 - 3.0025205e+03 3.0025205e+03 -3.2705244e+03 - 2.9072282e+03 3.0965631e+03 -3.2697902e+03 - 2.8110399e+03 3.1890127e+03 -3.2675989e+03 - 2.7143114e+03 3.2795443e+03 -3.2639840e+03 - 2.6173931e+03 3.3678577e+03 -3.2589998e+03 - 2.5206219e+03 3.4536833e+03 -3.2527199e+03 - 2.4243145e+03 3.5367867e+03 -3.2452339e+03 - 2.3287620e+03 3.6169712e+03 -3.2366453e+03 - 2.2342253e+03 3.6940792e+03 -3.2270676e+03 - 2.1409322e+03 3.7679918e+03 -3.2166216e+03 - 2.0490759e+03 3.8386278e+03 -3.2054319e+03 - 1.9588147e+03 3.9059408e+03 -3.1936242e+03 - 1.8702727e+03 3.9699164e+03 -3.1813230e+03 - 1.7835413e+03 4.0305681e+03 -3.1686491e+03 - 1.6986819e+03 4.0879334e+03 -3.1557180e+03 - 1.6157284e+03 4.1420701e+03 -3.1426390e+03 - 1.5346905e+03 4.1930519e+03 -3.1295137e+03 - 1.4555564e+03 4.2409649e+03 -3.1164359e+03 - 1.3782963e+03 4.2859044e+03 -3.1034913e+03 - 1.3028653e+03 4.3279716e+03 -3.0907573e+03 - 1.2292059e+03 4.3672712e+03 -3.0783036e+03 - 1.1572508e+03 4.4039091e+03 -3.0661920e+03 - 1.0869247e+03 4.4379907e+03 -3.0544774e+03 - 1.0181465e+03 4.4696192e+03 -3.0432079e+03 - 9.5083092e+02 4.4988945e+03 -3.0324255e+03 - 8.8488971e+02 4.5259123e+03 -3.0221669e+03 - 8.2023279e+02 4.5507635e+03 -3.0124636e+03 - 7.5676924e+02 4.5735335e+03 -3.0033428e+03 - 6.9440791e+02 4.5943018e+03 -2.9948275e+03 - 6.3305801e+02 4.6131423e+03 -2.9869376e+03 - 5.7262945e+02 4.6301223e+03 -2.9796897e+03 - 5.1303316e+02 4.6453034e+03 -2.9730979e+03 - 4.5418122e+02 4.6587406e+03 -2.9671737e+03 - 3.9598695e+02 4.6704832e+03 -2.9619271e+03 - 3.3836491e+02 4.6805741e+03 -2.9573658e+03 - 2.8123084e+02 4.6890504e+03 -2.9534964e+03 - 2.2450159e+02 4.6959434e+03 -2.9503241e+03 - 1.6809498e+02 4.7012785e+03 -2.9478528e+03 - 1.1192962e+02 4.7050752e+03 -2.9460855e+03 - 5.5924745e+01 4.7073477e+03 -2.9450244e+03 - 0.0000000e+00 4.7081042e+03 -2.9446705e+03 - -5.5924745e+01 4.7073477e+03 -2.9450244e+03 - -1.1192962e+02 4.7050752e+03 -2.9460855e+03 - -1.6809498e+02 4.7012785e+03 -2.9478528e+03 - -2.2450159e+02 4.6959434e+03 -2.9503241e+03 - -2.8123084e+02 4.6890504e+03 -2.9534964e+03 - -3.3836491e+02 4.6805741e+03 -2.9573658e+03 - -3.9598695e+02 4.6704832e+03 -2.9619271e+03 - -4.5418122e+02 4.6587406e+03 -2.9671737e+03 - -5.1303316e+02 4.6453034e+03 -2.9730979e+03 - -5.7262945e+02 4.6301223e+03 -2.9796897e+03 - -6.3305801e+02 4.6131423e+03 -2.9869376e+03 - -6.9440791e+02 4.5943018e+03 -2.9948275e+03 - -7.5676924e+02 4.5735335e+03 -3.0033428e+03 - -8.2023279e+02 4.5507635e+03 -3.0124636e+03 - -8.8488971e+02 4.5259123e+03 -3.0221669e+03 - -9.5083092e+02 4.4988945e+03 -3.0324255e+03 - -1.0181465e+03 4.4696192e+03 -3.0432079e+03 - -1.0869247e+03 4.4379907e+03 -3.0544774e+03 - -1.1572508e+03 4.4039091e+03 -3.0661920e+03 - -1.2292059e+03 4.3672712e+03 -3.0783036e+03 - -1.3028653e+03 4.3279716e+03 -3.0907573e+03 - -1.3782963e+03 4.2859044e+03 -3.1034913e+03 - -1.4555564e+03 4.2409649e+03 -3.1164359e+03 - -1.5346905e+03 4.1930519e+03 -3.1295137e+03 - -1.6157284e+03 4.1420701e+03 -3.1426390e+03 - -1.6986819e+03 4.0879334e+03 -3.1557180e+03 - -1.7835413e+03 4.0305681e+03 -3.1686491e+03 - -1.8702727e+03 3.9699164e+03 -3.1813230e+03 - -1.9588147e+03 3.9059408e+03 -3.1936242e+03 - -2.0490759e+03 3.8386278e+03 -3.2054319e+03 - -2.1409322e+03 3.7679918e+03 -3.2166216e+03 - -2.2342253e+03 3.6940792e+03 -3.2270676e+03 - -2.3287620e+03 3.6169712e+03 -3.2366453e+03 - -2.4243145e+03 3.5367867e+03 -3.2452339e+03 - -2.5206219e+03 3.4536833e+03 -3.2527199e+03 - -2.6173931e+03 3.3678577e+03 -3.2589998e+03 - -2.7143114e+03 3.2795443e+03 -3.2639840e+03 - -2.8110399e+03 3.1890127e+03 -3.2675989e+03 - -2.9072282e+03 3.0965631e+03 -3.2697902e+03 - -3.0025205e+03 3.0025205e+03 -3.2705244e+03 - -3.0965631e+03 2.9072282e+03 -3.2697902e+03 - -3.1890127e+03 2.8110399e+03 -3.2675989e+03 - -3.2795443e+03 2.7143114e+03 -3.2639840e+03 - -3.3678577e+03 2.6173931e+03 -3.2589998e+03 - -3.4536833e+03 2.5206219e+03 -3.2527199e+03 - -3.5367867e+03 2.4243145e+03 -3.2452339e+03 - -3.6169712e+03 2.3287620e+03 -3.2366453e+03 - -3.6940792e+03 2.2342253e+03 -3.2270676e+03 - -3.7679918e+03 2.1409322e+03 -3.2166216e+03 - -3.8386278e+03 2.0490759e+03 -3.2054319e+03 - -3.9059408e+03 1.9588147e+03 -3.1936242e+03 - -3.9699164e+03 1.8702727e+03 -3.1813230e+03 - -4.0305681e+03 1.7835413e+03 -3.1686491e+03 - -4.0879334e+03 1.6986819e+03 -3.1557180e+03 - -4.1420701e+03 1.6157284e+03 -3.1426390e+03 - -4.1930519e+03 1.5346905e+03 -3.1295137e+03 - -4.2409649e+03 1.4555564e+03 -3.1164359e+03 - -4.2859044e+03 1.3782963e+03 -3.1034913e+03 - -4.3279716e+03 1.3028653e+03 -3.0907573e+03 - -4.3672712e+03 1.2292059e+03 -3.0783036e+03 - -4.4039091e+03 1.1572508e+03 -3.0661920e+03 - -4.4379907e+03 1.0869247e+03 -3.0544774e+03 - -4.4696192e+03 1.0181465e+03 -3.0432079e+03 - -4.4988945e+03 9.5083092e+02 -3.0324255e+03 - -4.5259123e+03 8.8488971e+02 -3.0221669e+03 - -4.5507635e+03 8.2023279e+02 -3.0124636e+03 - -4.5735335e+03 7.5676924e+02 -3.0033428e+03 - -4.5943018e+03 6.9440791e+02 -2.9948275e+03 - -4.6131423e+03 6.3305801e+02 -2.9869376e+03 - -4.6301223e+03 5.7262945e+02 -2.9796897e+03 - -4.6453034e+03 5.1303316e+02 -2.9730979e+03 - -4.6587406e+03 4.5418122e+02 -2.9671737e+03 - -4.6704832e+03 3.9598695e+02 -2.9619271e+03 - -4.6805741e+03 3.3836491e+02 -2.9573658e+03 - -4.6890504e+03 2.8123084e+02 -2.9534964e+03 - -4.6959434e+03 2.2450159e+02 -2.9503241e+03 - -4.7012785e+03 1.6809498e+02 -2.9478528e+03 - -4.7050752e+03 1.1192962e+02 -2.9460855e+03 - -4.7073477e+03 5.5924745e+01 -2.9450244e+03 - -4.7081042e+03 -4.8134273e-09 -2.9446705e+03 - -4.7073477e+03 -5.5924745e+01 -2.9450244e+03 - -4.7050752e+03 -1.1192962e+02 -2.9460855e+03 - -4.7012785e+03 -1.6809498e+02 -2.9478528e+03 - -4.6959434e+03 -2.2450159e+02 -2.9503241e+03 - -4.6890504e+03 -2.8123084e+02 -2.9534964e+03 - -4.6805741e+03 -3.3836491e+02 -2.9573658e+03 - -4.6704832e+03 -3.9598695e+02 -2.9619271e+03 - -4.6587406e+03 -4.5418122e+02 -2.9671737e+03 - -4.6453034e+03 -5.1303316e+02 -2.9730979e+03 - -4.6301223e+03 -5.7262945e+02 -2.9796897e+03 - -4.6131423e+03 -6.3305801e+02 -2.9869376e+03 - -4.5943018e+03 -6.9440791e+02 -2.9948275e+03 - -4.5735335e+03 -7.5676924e+02 -3.0033428e+03 - -4.5507635e+03 -8.2023279e+02 -3.0124636e+03 - -4.5259123e+03 -8.8488971e+02 -3.0221669e+03 - -4.4988945e+03 -9.5083092e+02 -3.0324255e+03 - -4.4696192e+03 -1.0181465e+03 -3.0432079e+03 - -4.4379907e+03 -1.0869247e+03 -3.0544774e+03 - -4.4039091e+03 -1.1572508e+03 -3.0661920e+03 - -4.3672712e+03 -1.2292059e+03 -3.0783036e+03 - -4.3279716e+03 -1.3028653e+03 -3.0907573e+03 - -4.2859044e+03 -1.3782963e+03 -3.1034913e+03 - -4.2409649e+03 -1.4555564e+03 -3.1164359e+03 - -4.1930519e+03 -1.5346905e+03 -3.1295137e+03 - -4.1420701e+03 -1.6157284e+03 -3.1426390e+03 - -4.0879334e+03 -1.6986819e+03 -3.1557180e+03 - -4.0305681e+03 -1.7835413e+03 -3.1686491e+03 - -3.9699164e+03 -1.8702727e+03 -3.1813230e+03 - -3.9059408e+03 -1.9588147e+03 -3.1936242e+03 - -3.8386278e+03 -2.0490759e+03 -3.2054319e+03 - -3.7679918e+03 -2.1409322e+03 -3.2166216e+03 - -3.6940792e+03 -2.2342253e+03 -3.2270676e+03 - -3.6169712e+03 -2.3287620e+03 -3.2366453e+03 - -3.5367867e+03 -2.4243145e+03 -3.2452339e+03 - -3.4536833e+03 -2.5206219e+03 -3.2527199e+03 - -3.3678577e+03 -2.6173931e+03 -3.2589998e+03 - -3.2795443e+03 -2.7143114e+03 -3.2639840e+03 - -3.1890127e+03 -2.8110399e+03 -3.2675989e+03 - -3.0965631e+03 -2.9072282e+03 -3.2697902e+03 - -3.0025205e+03 -3.0025205e+03 -3.2705244e+03 - -2.9072282e+03 -3.0965631e+03 -3.2697902e+03 - -2.8110399e+03 -3.1890127e+03 -3.2675989e+03 - -2.7143114e+03 -3.2795443e+03 -3.2639840e+03 - -2.6173931e+03 -3.3678577e+03 -3.2589998e+03 - -2.5206219e+03 -3.4536833e+03 -3.2527199e+03 - -2.4243145e+03 -3.5367867e+03 -3.2452339e+03 - -2.3287620e+03 -3.6169712e+03 -3.2366453e+03 - -2.2342253e+03 -3.6940792e+03 -3.2270676e+03 - -2.1409322e+03 -3.7679918e+03 -3.2166216e+03 - -2.0490759e+03 -3.8386278e+03 -3.2054319e+03 - -1.9588147e+03 -3.9059408e+03 -3.1936242e+03 - -1.8702727e+03 -3.9699164e+03 -3.1813230e+03 - -1.7835413e+03 -4.0305681e+03 -3.1686491e+03 - -1.6986819e+03 -4.0879334e+03 -3.1557180e+03 - -1.6157284e+03 -4.1420701e+03 -3.1426390e+03 - -1.5346905e+03 -4.1930519e+03 -3.1295137e+03 - -1.4555564e+03 -4.2409649e+03 -3.1164359e+03 - -1.3782963e+03 -4.2859044e+03 -3.1034913e+03 - -1.3028653e+03 -4.3279716e+03 -3.0907573e+03 - -1.2292059e+03 -4.3672712e+03 -3.0783036e+03 - -1.1572508e+03 -4.4039091e+03 -3.0661920e+03 - -1.0869247e+03 -4.4379907e+03 -3.0544774e+03 - -1.0181465e+03 -4.4696192e+03 -3.0432079e+03 - -9.5083092e+02 -4.4988945e+03 -3.0324255e+03 - -8.8488971e+02 -4.5259123e+03 -3.0221669e+03 - -8.2023279e+02 -4.5507635e+03 -3.0124636e+03 - -7.5676924e+02 -4.5735335e+03 -3.0033428e+03 - -6.9440791e+02 -4.5943018e+03 -2.9948275e+03 - -6.3305801e+02 -4.6131423e+03 -2.9869376e+03 - -5.7262945e+02 -4.6301223e+03 -2.9796897e+03 - -5.1303316e+02 -4.6453034e+03 -2.9730979e+03 - -4.5418122e+02 -4.6587406e+03 -2.9671737e+03 - -3.9598695e+02 -4.6704832e+03 -2.9619271e+03 - -3.3836491e+02 -4.6805741e+03 -2.9573658e+03 - -2.8123084e+02 -4.6890504e+03 -2.9534964e+03 - -2.2450159e+02 -4.6959434e+03 -2.9503241e+03 - -1.6809498e+02 -4.7012785e+03 -2.9478528e+03 - -1.1192962e+02 -4.7050752e+03 -2.9460855e+03 - -5.5924745e+01 -4.7073477e+03 -2.9450244e+03 - 0.0000000e+00 -4.7081042e+03 -2.9446705e+03 - 5.5924745e+01 -4.7073477e+03 -2.9450244e+03 - 1.1192962e+02 -4.7050752e+03 -2.9460855e+03 - 1.6809498e+02 -4.7012785e+03 -2.9478528e+03 - 2.2450159e+02 -4.6959434e+03 -2.9503241e+03 - 2.8123084e+02 -4.6890504e+03 -2.9534964e+03 - 3.3836491e+02 -4.6805741e+03 -2.9573658e+03 - 3.9598695e+02 -4.6704832e+03 -2.9619271e+03 - 4.5418122e+02 -4.6587406e+03 -2.9671737e+03 - 5.1303316e+02 -4.6453034e+03 -2.9730979e+03 - 5.7262945e+02 -4.6301223e+03 -2.9796897e+03 - 6.3305801e+02 -4.6131423e+03 -2.9869376e+03 - 6.9440791e+02 -4.5943018e+03 -2.9948275e+03 - 7.5676924e+02 -4.5735335e+03 -3.0033428e+03 - 8.2023279e+02 -4.5507635e+03 -3.0124636e+03 - 8.8488971e+02 -4.5259123e+03 -3.0221669e+03 - 9.5083092e+02 -4.4988945e+03 -3.0324255e+03 - 1.0181465e+03 -4.4696192e+03 -3.0432079e+03 - 1.0869247e+03 -4.4379907e+03 -3.0544774e+03 - 1.1572508e+03 -4.4039091e+03 -3.0661920e+03 - 1.2292059e+03 -4.3672712e+03 -3.0783036e+03 - 1.3028653e+03 -4.3279716e+03 -3.0907573e+03 - 1.3782963e+03 -4.2859044e+03 -3.1034913e+03 - 1.4555564e+03 -4.2409649e+03 -3.1164359e+03 - 1.5346905e+03 -4.1930519e+03 -3.1295137e+03 - 1.6157284e+03 -4.1420701e+03 -3.1426390e+03 - 1.6986819e+03 -4.0879334e+03 -3.1557180e+03 - 1.7835413e+03 -4.0305681e+03 -3.1686491e+03 - 1.8702727e+03 -3.9699164e+03 -3.1813230e+03 - 1.9588147e+03 -3.9059408e+03 -3.1936242e+03 - 2.0490759e+03 -3.8386278e+03 -3.2054319e+03 - 2.1409322e+03 -3.7679918e+03 -3.2166216e+03 - 2.2342253e+03 -3.6940792e+03 -3.2270676e+03 - 2.3287620e+03 -3.6169712e+03 -3.2366453e+03 - 2.4243145e+03 -3.5367867e+03 -3.2452339e+03 - 2.5206219e+03 -3.4536833e+03 -3.2527199e+03 - 2.6173931e+03 -3.3678577e+03 -3.2589998e+03 - 2.7143114e+03 -3.2795443e+03 -3.2639840e+03 - 2.8110399e+03 -3.1890127e+03 -3.2675989e+03 - 2.9072282e+03 -3.0965631e+03 -3.2697902e+03 - 3.0025205e+03 -3.0025205e+03 -3.2705244e+03 - 3.0965631e+03 -2.9072282e+03 -3.2697902e+03 - 3.1890127e+03 -2.8110399e+03 -3.2675989e+03 - 3.2795443e+03 -2.7143114e+03 -3.2639840e+03 - 3.3678577e+03 -2.6173931e+03 -3.2589998e+03 - 3.4536833e+03 -2.5206219e+03 -3.2527199e+03 - 3.5367867e+03 -2.4243145e+03 -3.2452339e+03 - 3.6169712e+03 -2.3287620e+03 -3.2366453e+03 - 3.6940792e+03 -2.2342253e+03 -3.2270676e+03 - 3.7679918e+03 -2.1409322e+03 -3.2166216e+03 - 3.8386278e+03 -2.0490759e+03 -3.2054319e+03 - 3.9059408e+03 -1.9588147e+03 -3.1936242e+03 - 3.9699164e+03 -1.8702727e+03 -3.1813230e+03 - 4.0305681e+03 -1.7835413e+03 -3.1686491e+03 - 4.0879334e+03 -1.6986819e+03 -3.1557180e+03 - 4.1420701e+03 -1.6157284e+03 -3.1426390e+03 - 4.1930519e+03 -1.5346905e+03 -3.1295137e+03 - 4.2409649e+03 -1.4555564e+03 -3.1164359e+03 - 4.2859044e+03 -1.3782963e+03 -3.1034913e+03 - 4.3279716e+03 -1.3028653e+03 -3.0907573e+03 - 4.3672712e+03 -1.2292059e+03 -3.0783036e+03 - 4.4039091e+03 -1.1572508e+03 -3.0661920e+03 - 4.4379907e+03 -1.0869247e+03 -3.0544774e+03 - 4.4696192e+03 -1.0181465e+03 -3.0432079e+03 - 4.4988945e+03 -9.5083092e+02 -3.0324255e+03 - 4.5259123e+03 -8.8488971e+02 -3.0221669e+03 - 4.5507635e+03 -8.2023279e+02 -3.0124636e+03 - 4.5735335e+03 -7.5676924e+02 -3.0033428e+03 - 4.5943018e+03 -6.9440791e+02 -2.9948275e+03 - 4.6131423e+03 -6.3305801e+02 -2.9869376e+03 - 4.6301223e+03 -5.7262945e+02 -2.9796897e+03 - 4.6453034e+03 -5.1303316e+02 -2.9730979e+03 - 4.6587406e+03 -4.5418122e+02 -2.9671737e+03 - 4.6704832e+03 -3.9598695e+02 -2.9619271e+03 - 4.6805741e+03 -3.3836491e+02 -2.9573658e+03 - 4.6890504e+03 -2.8123084e+02 -2.9534964e+03 - 4.6959434e+03 -2.2450159e+02 -2.9503241e+03 - 4.7012785e+03 -1.6809498e+02 -2.9478528e+03 - 4.7050752e+03 -1.1192962e+02 -2.9460855e+03 - 4.7073477e+03 -5.5924745e+01 -2.9450244e+03 - 4.7081042e+03 0.0000000e+00 -2.9446705e+03 - 4.6696470e+03 -4.8134273e-09 -3.0088378e+03 - 4.6688848e+03 5.6118961e+01 -3.0091824e+03 - 4.6665954e+03 1.1231676e+02 -3.0102157e+03 - 4.6627706e+03 1.6867241e+02 -3.0119364e+03 - 4.6573969e+03 2.2526532e+02 -3.0143422e+03 - 4.6504550e+03 2.8217539e+02 -3.0174299e+03 - 4.6419201e+03 3.3948324e+02 -3.0211950e+03 - 4.6317621e+03 3.9727030e+02 -3.0256320e+03 - 4.6199449e+03 4.5561893e+02 -3.0307338e+03 - 4.6064266e+03 5.1461248e+02 -3.0364920e+03 - 4.5911597e+03 5.7433528e+02 -3.0428961e+03 - 4.5740909e+03 6.3487265e+02 -3.0499338e+03 - 4.5551608e+03 6.9631077e+02 -3.0575904e+03 - 4.5343045e+03 7.5873645e+02 -3.0658486e+03 - 4.5114511e+03 8.2223688e+02 -3.0746878e+03 - 4.4865244e+03 8.8689920e+02 -3.0840844e+03 - 4.4594427e+03 9.5280992e+02 -3.0940106e+03 - 4.4301196e+03 1.0200542e+03 -3.1044345e+03 - 4.3984641e+03 1.0887151e+03 -3.1153193e+03 - 4.3643818e+03 1.1588722e+03 -3.1266229e+03 - 4.3277757e+03 1.2306004e+03 -3.1382974e+03 - 4.2885469e+03 1.3039685e+03 -3.1502888e+03 - 4.2465969e+03 1.3790372e+03 -3.1625362e+03 - 4.2018288e+03 1.4558570e+03 -3.1749716e+03 - 4.1541496e+03 1.5344661e+03 -3.1875198e+03 - 4.1034728e+03 1.6148876e+03 -3.2000980e+03 - 4.0497210e+03 1.6971268e+03 -3.2126162e+03 - 3.9928293e+03 1.7811687e+03 -3.2249771e+03 - 3.9327484e+03 1.8669747e+03 -3.2370768e+03 - 3.8694484e+03 1.9544805e+03 -3.2488060e+03 - 3.8029226e+03 2.0435930e+03 -3.2600507e+03 - 3.7331908e+03 2.1341889e+03 -3.2706943e+03 - 3.6603025e+03 2.2261129e+03 -3.2806192e+03 - 3.5843403e+03 2.3191775e+03 -3.2897094e+03 - 3.5054213e+03 2.4131634e+03 -3.2978530e+03 - 3.4236987e+03 2.5078211e+03 -3.3049448e+03 - 3.3393614e+03 2.6028737e+03 -3.3108897e+03 - 3.2526333e+03 2.6980210e+03 -3.3156049e+03 - 3.1637700e+03 2.7929447e+03 -3.3190232e+03 - 3.0730553e+03 2.8873147e+03 -3.3210946e+03 - 2.9807958e+03 2.9807958e+03 -3.3217886e+03 - 2.8873147e+03 3.0730553e+03 -3.3210946e+03 - 2.7929447e+03 3.1637700e+03 -3.3190232e+03 - 2.6980210e+03 3.2526333e+03 -3.3156049e+03 - 2.6028737e+03 3.3393614e+03 -3.3108897e+03 - 2.5078211e+03 3.4236987e+03 -3.3049448e+03 - 2.4131634e+03 3.5054213e+03 -3.2978530e+03 - 2.3191775e+03 3.5843403e+03 -3.2897094e+03 - 2.2261129e+03 3.6603025e+03 -3.2806192e+03 - 2.1341889e+03 3.7331908e+03 -3.2706943e+03 - 2.0435930e+03 3.8029226e+03 -3.2600507e+03 - 1.9544805e+03 3.8694484e+03 -3.2488060e+03 - 1.8669747e+03 3.9327484e+03 -3.2370768e+03 - 1.7811687e+03 3.9928293e+03 -3.2249771e+03 - 1.6971268e+03 4.0497210e+03 -3.2126162e+03 - 1.6148876e+03 4.1034728e+03 -3.2000980e+03 - 1.5344661e+03 4.1541496e+03 -3.1875198e+03 - 1.4558570e+03 4.2018288e+03 -3.1749716e+03 - 1.3790372e+03 4.2465969e+03 -3.1625362e+03 - 1.3039685e+03 4.2885469e+03 -3.1502888e+03 - 1.2306004e+03 4.3277757e+03 -3.1382974e+03 - 1.1588722e+03 4.3643818e+03 -3.1266229e+03 - 1.0887151e+03 4.3984641e+03 -3.1153193e+03 - 1.0200542e+03 4.4301196e+03 -3.1044345e+03 - 9.5280992e+02 4.4594427e+03 -3.0940106e+03 - 8.8689920e+02 4.4865244e+03 -3.0840844e+03 - 8.2223688e+02 4.5114511e+03 -3.0746878e+03 - 7.5873645e+02 4.5343045e+03 -3.0658486e+03 - 6.9631077e+02 4.5551608e+03 -3.0575904e+03 - 6.3487265e+02 4.5740909e+03 -3.0499338e+03 - 5.7433528e+02 4.5911597e+03 -3.0428961e+03 - 5.1461248e+02 4.6064266e+03 -3.0364920e+03 - 4.5561893e+02 4.6199449e+03 -3.0307338e+03 - 3.9727030e+02 4.6317621e+03 -3.0256320e+03 - 3.3948324e+02 4.6419201e+03 -3.0211950e+03 - 2.8217539e+02 4.6504550e+03 -3.0174299e+03 - 2.2526532e+02 4.6573969e+03 -3.0143422e+03 - 1.6867241e+02 4.6627706e+03 -3.0119364e+03 - 1.1231676e+02 4.6665954e+03 -3.0102157e+03 - 5.6118961e+01 4.6688848e+03 -3.0091824e+03 - 0.0000000e+00 4.6696470e+03 -3.0088378e+03 - -5.6118961e+01 4.6688848e+03 -3.0091824e+03 - -1.1231676e+02 4.6665954e+03 -3.0102157e+03 - -1.6867241e+02 4.6627706e+03 -3.0119364e+03 - -2.2526532e+02 4.6573969e+03 -3.0143422e+03 - -2.8217539e+02 4.6504550e+03 -3.0174299e+03 - -3.3948324e+02 4.6419201e+03 -3.0211950e+03 - -3.9727030e+02 4.6317621e+03 -3.0256320e+03 - -4.5561893e+02 4.6199449e+03 -3.0307338e+03 - -5.1461248e+02 4.6064266e+03 -3.0364920e+03 - -5.7433528e+02 4.5911597e+03 -3.0428961e+03 - -6.3487265e+02 4.5740909e+03 -3.0499338e+03 - -6.9631077e+02 4.5551608e+03 -3.0575904e+03 - -7.5873645e+02 4.5343045e+03 -3.0658486e+03 - -8.2223688e+02 4.5114511e+03 -3.0746878e+03 - -8.8689920e+02 4.4865244e+03 -3.0840844e+03 - -9.5280992e+02 4.4594427e+03 -3.0940106e+03 - -1.0200542e+03 4.4301196e+03 -3.1044345e+03 - -1.0887151e+03 4.3984641e+03 -3.1153193e+03 - -1.1588722e+03 4.3643818e+03 -3.1266229e+03 - -1.2306004e+03 4.3277757e+03 -3.1382974e+03 - -1.3039685e+03 4.2885469e+03 -3.1502888e+03 - -1.3790372e+03 4.2465969e+03 -3.1625362e+03 - -1.4558570e+03 4.2018288e+03 -3.1749716e+03 - -1.5344661e+03 4.1541496e+03 -3.1875198e+03 - -1.6148876e+03 4.1034728e+03 -3.2000980e+03 - -1.6971268e+03 4.0497210e+03 -3.2126162e+03 - -1.7811687e+03 3.9928293e+03 -3.2249771e+03 - -1.8669747e+03 3.9327484e+03 -3.2370768e+03 - -1.9544805e+03 3.8694484e+03 -3.2488060e+03 - -2.0435930e+03 3.8029226e+03 -3.2600507e+03 - -2.1341889e+03 3.7331908e+03 -3.2706943e+03 - -2.2261129e+03 3.6603025e+03 -3.2806192e+03 - -2.3191775e+03 3.5843403e+03 -3.2897094e+03 - -2.4131634e+03 3.5054213e+03 -3.2978530e+03 - -2.5078211e+03 3.4236987e+03 -3.3049448e+03 - -2.6028737e+03 3.3393614e+03 -3.3108897e+03 - -2.6980210e+03 3.2526333e+03 -3.3156049e+03 - -2.7929447e+03 3.1637700e+03 -3.3190232e+03 - -2.8873147e+03 3.0730553e+03 -3.3210946e+03 - -2.9807958e+03 2.9807958e+03 -3.3217886e+03 - -3.0730553e+03 2.8873147e+03 -3.3210946e+03 - -3.1637700e+03 2.7929447e+03 -3.3190232e+03 - -3.2526333e+03 2.6980210e+03 -3.3156049e+03 - -3.3393614e+03 2.6028737e+03 -3.3108897e+03 - -3.4236987e+03 2.5078211e+03 -3.3049448e+03 - -3.5054213e+03 2.4131634e+03 -3.2978530e+03 - -3.5843403e+03 2.3191775e+03 -3.2897094e+03 - -3.6603025e+03 2.2261129e+03 -3.2806192e+03 - -3.7331908e+03 2.1341889e+03 -3.2706943e+03 - -3.8029226e+03 2.0435930e+03 -3.2600507e+03 - -3.8694484e+03 1.9544805e+03 -3.2488060e+03 - -3.9327484e+03 1.8669747e+03 -3.2370768e+03 - -3.9928293e+03 1.7811687e+03 -3.2249771e+03 - -4.0497210e+03 1.6971268e+03 -3.2126162e+03 - -4.1034728e+03 1.6148876e+03 -3.2000980e+03 - -4.1541496e+03 1.5344661e+03 -3.1875198e+03 - -4.2018288e+03 1.4558570e+03 -3.1749716e+03 - -4.2465969e+03 1.3790372e+03 -3.1625362e+03 - -4.2885469e+03 1.3039685e+03 -3.1502888e+03 - -4.3277757e+03 1.2306004e+03 -3.1382974e+03 - -4.3643818e+03 1.1588722e+03 -3.1266229e+03 - -4.3984641e+03 1.0887151e+03 -3.1153193e+03 - -4.4301196e+03 1.0200542e+03 -3.1044345e+03 - -4.4594427e+03 9.5280992e+02 -3.0940106e+03 - -4.4865244e+03 8.8689920e+02 -3.0840844e+03 - -4.5114511e+03 8.2223688e+02 -3.0746878e+03 - -4.5343045e+03 7.5873645e+02 -3.0658486e+03 - -4.5551608e+03 6.9631077e+02 -3.0575904e+03 - -4.5740909e+03 6.3487265e+02 -3.0499338e+03 - -4.5911597e+03 5.7433528e+02 -3.0428961e+03 - -4.6064266e+03 5.1461248e+02 -3.0364920e+03 - -4.6199449e+03 4.5561893e+02 -3.0307338e+03 - -4.6317621e+03 3.9727030e+02 -3.0256320e+03 - -4.6419201e+03 3.3948324e+02 -3.0211950e+03 - -4.6504550e+03 2.8217539e+02 -3.0174299e+03 - -4.6573969e+03 2.2526532e+02 -3.0143422e+03 - -4.6627706e+03 1.6867241e+02 -3.0119364e+03 - -4.6665954e+03 1.1231676e+02 -3.0102157e+03 - -4.6688848e+03 5.6118961e+01 -3.0091824e+03 - -4.6696470e+03 0.0000000e+00 -3.0088378e+03 - -4.6688848e+03 -5.6118961e+01 -3.0091824e+03 - -4.6665954e+03 -1.1231676e+02 -3.0102157e+03 - -4.6627706e+03 -1.6867241e+02 -3.0119364e+03 - -4.6573969e+03 -2.2526532e+02 -3.0143422e+03 - -4.6504550e+03 -2.8217539e+02 -3.0174299e+03 - -4.6419201e+03 -3.3948324e+02 -3.0211950e+03 - -4.6317621e+03 -3.9727030e+02 -3.0256320e+03 - -4.6199449e+03 -4.5561893e+02 -3.0307338e+03 - -4.6064266e+03 -5.1461248e+02 -3.0364920e+03 - -4.5911597e+03 -5.7433528e+02 -3.0428961e+03 - -4.5740909e+03 -6.3487265e+02 -3.0499338e+03 - -4.5551608e+03 -6.9631077e+02 -3.0575904e+03 - -4.5343045e+03 -7.5873645e+02 -3.0658486e+03 - -4.5114511e+03 -8.2223688e+02 -3.0746878e+03 - -4.4865244e+03 -8.8689920e+02 -3.0840844e+03 - -4.4594427e+03 -9.5280992e+02 -3.0940106e+03 - -4.4301196e+03 -1.0200542e+03 -3.1044345e+03 - -4.3984641e+03 -1.0887151e+03 -3.1153193e+03 - -4.3643818e+03 -1.1588722e+03 -3.1266229e+03 - -4.3277757e+03 -1.2306004e+03 -3.1382974e+03 - -4.2885469e+03 -1.3039685e+03 -3.1502888e+03 - -4.2465969e+03 -1.3790372e+03 -3.1625362e+03 - -4.2018288e+03 -1.4558570e+03 -3.1749716e+03 - -4.1541496e+03 -1.5344661e+03 -3.1875198e+03 - -4.1034728e+03 -1.6148876e+03 -3.2000980e+03 - -4.0497210e+03 -1.6971268e+03 -3.2126162e+03 - -3.9928293e+03 -1.7811687e+03 -3.2249771e+03 - -3.9327484e+03 -1.8669747e+03 -3.2370768e+03 - -3.8694484e+03 -1.9544805e+03 -3.2488060e+03 - -3.8029226e+03 -2.0435930e+03 -3.2600507e+03 - -3.7331908e+03 -2.1341889e+03 -3.2706943e+03 - -3.6603025e+03 -2.2261129e+03 -3.2806192e+03 - -3.5843403e+03 -2.3191775e+03 -3.2897094e+03 - -3.5054213e+03 -2.4131634e+03 -3.2978530e+03 - -3.4236987e+03 -2.5078211e+03 -3.3049448e+03 - -3.3393614e+03 -2.6028737e+03 -3.3108897e+03 - -3.2526333e+03 -2.6980210e+03 -3.3156049e+03 - -3.1637700e+03 -2.7929447e+03 -3.3190232e+03 - -3.0730553e+03 -2.8873147e+03 -3.3210946e+03 - -2.9807958e+03 -2.9807958e+03 -3.3217886e+03 - -2.8873147e+03 -3.0730553e+03 -3.3210946e+03 - -2.7929447e+03 -3.1637700e+03 -3.3190232e+03 - -2.6980210e+03 -3.2526333e+03 -3.3156049e+03 - -2.6028737e+03 -3.3393614e+03 -3.3108897e+03 - -2.5078211e+03 -3.4236987e+03 -3.3049448e+03 - -2.4131634e+03 -3.5054213e+03 -3.2978530e+03 - -2.3191775e+03 -3.5843403e+03 -3.2897094e+03 - -2.2261129e+03 -3.6603025e+03 -3.2806192e+03 - -2.1341889e+03 -3.7331908e+03 -3.2706943e+03 - -2.0435930e+03 -3.8029226e+03 -3.2600507e+03 - -1.9544805e+03 -3.8694484e+03 -3.2488060e+03 - -1.8669747e+03 -3.9327484e+03 -3.2370768e+03 - -1.7811687e+03 -3.9928293e+03 -3.2249771e+03 - -1.6971268e+03 -4.0497210e+03 -3.2126162e+03 - -1.6148876e+03 -4.1034728e+03 -3.2000980e+03 - -1.5344661e+03 -4.1541496e+03 -3.1875198e+03 - -1.4558570e+03 -4.2018288e+03 -3.1749716e+03 - -1.3790372e+03 -4.2465969e+03 -3.1625362e+03 - -1.3039685e+03 -4.2885469e+03 -3.1502888e+03 - -1.2306004e+03 -4.3277757e+03 -3.1382974e+03 - -1.1588722e+03 -4.3643818e+03 -3.1266229e+03 - -1.0887151e+03 -4.3984641e+03 -3.1153193e+03 - -1.0200542e+03 -4.4301196e+03 -3.1044345e+03 - -9.5280992e+02 -4.4594427e+03 -3.0940106e+03 - -8.8689920e+02 -4.4865244e+03 -3.0840844e+03 - -8.2223688e+02 -4.5114511e+03 -3.0746878e+03 - -7.5873645e+02 -4.5343045e+03 -3.0658486e+03 - -6.9631077e+02 -4.5551608e+03 -3.0575904e+03 - -6.3487265e+02 -4.5740909e+03 -3.0499338e+03 - -5.7433528e+02 -4.5911597e+03 -3.0428961e+03 - -5.1461248e+02 -4.6064266e+03 -3.0364920e+03 - -4.5561893e+02 -4.6199449e+03 -3.0307338e+03 - -3.9727030e+02 -4.6317621e+03 -3.0256320e+03 - -3.3948324e+02 -4.6419201e+03 -3.0211950e+03 - -2.8217539e+02 -4.6504550e+03 -3.0174299e+03 - -2.2526532e+02 -4.6573969e+03 -3.0143422e+03 - -1.6867241e+02 -4.6627706e+03 -3.0119364e+03 - -1.1231676e+02 -4.6665954e+03 -3.0102157e+03 - -5.6118961e+01 -4.6688848e+03 -3.0091824e+03 - -4.8134273e-09 -4.6696470e+03 -3.0088378e+03 - 5.6118961e+01 -4.6688848e+03 -3.0091824e+03 - 1.1231676e+02 -4.6665954e+03 -3.0102157e+03 - 1.6867241e+02 -4.6627706e+03 -3.0119364e+03 - 2.2526532e+02 -4.6573969e+03 -3.0143422e+03 - 2.8217539e+02 -4.6504550e+03 -3.0174299e+03 - 3.3948324e+02 -4.6419201e+03 -3.0211950e+03 - 3.9727030e+02 -4.6317621e+03 -3.0256320e+03 - 4.5561893e+02 -4.6199449e+03 -3.0307338e+03 - 5.1461248e+02 -4.6064266e+03 -3.0364920e+03 - 5.7433528e+02 -4.5911597e+03 -3.0428961e+03 - 6.3487265e+02 -4.5740909e+03 -3.0499338e+03 - 6.9631077e+02 -4.5551608e+03 -3.0575904e+03 - 7.5873645e+02 -4.5343045e+03 -3.0658486e+03 - 8.2223688e+02 -4.5114511e+03 -3.0746878e+03 - 8.8689920e+02 -4.4865244e+03 -3.0840844e+03 - 9.5280992e+02 -4.4594427e+03 -3.0940106e+03 - 1.0200542e+03 -4.4301196e+03 -3.1044345e+03 - 1.0887151e+03 -4.3984641e+03 -3.1153193e+03 - 1.1588722e+03 -4.3643818e+03 -3.1266229e+03 - 1.2306004e+03 -4.3277757e+03 -3.1382974e+03 - 1.3039685e+03 -4.2885469e+03 -3.1502888e+03 - 1.3790372e+03 -4.2465969e+03 -3.1625362e+03 - 1.4558570e+03 -4.2018288e+03 -3.1749716e+03 - 1.5344661e+03 -4.1541496e+03 -3.1875198e+03 - 1.6148876e+03 -4.1034728e+03 -3.2000980e+03 - 1.6971268e+03 -4.0497210e+03 -3.2126162e+03 - 1.7811687e+03 -3.9928293e+03 -3.2249771e+03 - 1.8669747e+03 -3.9327484e+03 -3.2370768e+03 - 1.9544805e+03 -3.8694484e+03 -3.2488060e+03 - 2.0435930e+03 -3.8029226e+03 -3.2600507e+03 - 2.1341889e+03 -3.7331908e+03 -3.2706943e+03 - 2.2261129e+03 -3.6603025e+03 -3.2806192e+03 - 2.3191775e+03 -3.5843403e+03 -3.2897094e+03 - 2.4131634e+03 -3.5054213e+03 -3.2978530e+03 - 2.5078211e+03 -3.4236987e+03 -3.3049448e+03 - 2.6028737e+03 -3.3393614e+03 -3.3108897e+03 - 2.6980210e+03 -3.2526333e+03 -3.3156049e+03 - 2.7929447e+03 -3.1637700e+03 -3.3190232e+03 - 2.8873147e+03 -3.0730553e+03 -3.3210946e+03 - 2.9807958e+03 -2.9807958e+03 -3.3217886e+03 - 3.0730553e+03 -2.8873147e+03 -3.3210946e+03 - 3.1637700e+03 -2.7929447e+03 -3.3190232e+03 - 3.2526333e+03 -2.6980210e+03 -3.3156049e+03 - 3.3393614e+03 -2.6028737e+03 -3.3108897e+03 - 3.4236987e+03 -2.5078211e+03 -3.3049448e+03 - 3.5054213e+03 -2.4131634e+03 -3.2978530e+03 - 3.5843403e+03 -2.3191775e+03 -3.2897094e+03 - 3.6603025e+03 -2.2261129e+03 -3.2806192e+03 - 3.7331908e+03 -2.1341889e+03 -3.2706943e+03 - 3.8029226e+03 -2.0435930e+03 -3.2600507e+03 - 3.8694484e+03 -1.9544805e+03 -3.2488060e+03 - 3.9327484e+03 -1.8669747e+03 -3.2370768e+03 - 3.9928293e+03 -1.7811687e+03 -3.2249771e+03 - 4.0497210e+03 -1.6971268e+03 -3.2126162e+03 - 4.1034728e+03 -1.6148876e+03 -3.2000980e+03 - 4.1541496e+03 -1.5344661e+03 -3.1875198e+03 - 4.2018288e+03 -1.4558570e+03 -3.1749716e+03 - 4.2465969e+03 -1.3790372e+03 -3.1625362e+03 - 4.2885469e+03 -1.3039685e+03 -3.1502888e+03 - 4.3277757e+03 -1.2306004e+03 -3.1382974e+03 - 4.3643818e+03 -1.1588722e+03 -3.1266229e+03 - 4.3984641e+03 -1.0887151e+03 -3.1153193e+03 - 4.4301196e+03 -1.0200542e+03 -3.1044345e+03 - 4.4594427e+03 -9.5280992e+02 -3.0940106e+03 - 4.4865244e+03 -8.8689920e+02 -3.0840844e+03 - 4.5114511e+03 -8.2223688e+02 -3.0746878e+03 - 4.5343045e+03 -7.5873645e+02 -3.0658486e+03 - 4.5551608e+03 -6.9631077e+02 -3.0575904e+03 - 4.5740909e+03 -6.3487265e+02 -3.0499338e+03 - 4.5911597e+03 -5.7433528e+02 -3.0428961e+03 - 4.6064266e+03 -5.1461248e+02 -3.0364920e+03 - 4.6199449e+03 -4.5561893e+02 -3.0307338e+03 - 4.6317621e+03 -3.9727030e+02 -3.0256320e+03 - 4.6419201e+03 -3.3948324e+02 -3.0211950e+03 - 4.6504550e+03 -2.8217539e+02 -3.0174299e+03 - 4.6573969e+03 -2.2526532e+02 -3.0143422e+03 - 4.6627706e+03 -1.6867241e+02 -3.0119364e+03 - 4.6665954e+03 -1.1231676e+02 -3.0102157e+03 - 4.6688848e+03 -5.6118961e+01 -3.0091824e+03 - 4.6696470e+03 -4.8134273e-09 -3.0088378e+03 - 4.6307856e+03 0.0000000e+00 -3.0708830e+03 - 4.6300183e+03 5.6302148e+01 -3.0712181e+03 - 4.6277136e+03 1.1268175e+02 -3.0722227e+03 - 4.6238637e+03 1.6921642e+02 -3.0738955e+03 - 4.6184552e+03 2.2598408e+02 -3.0762339e+03 - 4.6114696e+03 2.8306311e+02 -3.0792345e+03 - 4.6028827e+03 3.4053245e+02 -3.0828925e+03 - 4.5926652e+03 3.9847176e+02 -3.0872018e+03 - 4.5807822e+03 4.5696142e+02 -3.0921551e+03 - 4.5671931e+03 5.1608261e+02 -3.0977434e+03 - 4.5518520e+03 5.7591729e+02 -3.1039556e+03 - 4.5347073e+03 6.3654811e+02 -3.1107788e+03 - 4.5157020e+03 6.9805830e+02 -3.1181978e+03 - 4.4947735e+03 7.6053143e+02 -3.1261946e+03 - 4.4718540e+03 8.2405107e+02 -3.1347483e+03 - 4.4468705e+03 8.8870038e+02 -3.1438345e+03 - 4.4197451e+03 9.5456151e+02 -3.1534252e+03 - 4.3903956e+03 1.0217149e+03 -3.1634883e+03 - 4.3587359e+03 1.0902383e+03 -3.1739867e+03 - 4.3246770e+03 1.1602060e+03 -3.1848787e+03 - 4.2881276e+03 1.2316868e+03 -3.1961169e+03 - 4.2489956e+03 1.3047436e+03 -3.2076479e+03 - 4.2071891e+03 1.3794304e+03 -3.2194122e+03 - 4.1626190e+03 1.4557916e+03 -3.2313436e+03 - 4.1151999e+03 1.5338587e+03 -3.2433691e+03 - 4.0648536e+03 1.6136488e+03 -3.2554092e+03 - 4.0115109e+03 1.6951616e+03 -3.2673772e+03 - 3.9551149e+03 1.7783769e+03 -3.2791804e+03 - 3.8956242e+03 1.8632525e+03 -3.2907202e+03 - 3.8330158e+03 1.9497213e+03 -3.3018932e+03 - 3.7672891e+03 2.0376893e+03 -3.3125921e+03 - 3.6984682e+03 2.1270342e+03 -3.3227075e+03 - 3.6266059e+03 2.2176041e+03 -3.3321297e+03 - 3.5517849e+03 2.3092173e+03 -3.3407508e+03 - 3.4741207e+03 2.4016627e+03 -3.3484668e+03 - 3.3937617e+03 2.4947019e+03 -3.3551808e+03 - 3.3108896e+03 2.5880715e+03 -3.3608050e+03 - 3.2257178e+03 2.6814868e+03 -3.3652632e+03 - 3.1384888e+03 2.7746473e+03 -3.3684937e+03 - 3.0494712e+03 2.8672415e+03 -3.3704508e+03 - 2.9589539e+03 2.9589539e+03 -3.3711063e+03 - 2.8672415e+03 3.0494712e+03 -3.3704508e+03 - 2.7746473e+03 3.1384888e+03 -3.3684937e+03 - 2.6814868e+03 3.2257178e+03 -3.3652632e+03 - 2.5880715e+03 3.3108896e+03 -3.3608050e+03 - 2.4947019e+03 3.3937617e+03 -3.3551808e+03 - 2.4016627e+03 3.4741207e+03 -3.3484668e+03 - 2.3092173e+03 3.5517849e+03 -3.3407508e+03 - 2.2176041e+03 3.6266059e+03 -3.3321297e+03 - 2.1270342e+03 3.6984682e+03 -3.3227075e+03 - 2.0376893e+03 3.7672891e+03 -3.3125921e+03 - 1.9497213e+03 3.8330158e+03 -3.3018932e+03 - 1.8632525e+03 3.8956242e+03 -3.2907202e+03 - 1.7783769e+03 3.9551149e+03 -3.2791804e+03 - 1.6951616e+03 4.0115109e+03 -3.2673772e+03 - 1.6136488e+03 4.0648536e+03 -3.2554092e+03 - 1.5338587e+03 4.1151999e+03 -3.2433691e+03 - 1.4557916e+03 4.1626190e+03 -3.2313436e+03 - 1.3794304e+03 4.2071891e+03 -3.2194122e+03 - 1.3047436e+03 4.2489956e+03 -3.2076479e+03 - 1.2316868e+03 4.2881276e+03 -3.1961169e+03 - 1.1602060e+03 4.3246770e+03 -3.1848787e+03 - 1.0902383e+03 4.3587359e+03 -3.1739867e+03 - 1.0217149e+03 4.3903956e+03 -3.1634883e+03 - 9.5456151e+02 4.4197451e+03 -3.1534252e+03 - 8.8870038e+02 4.4468705e+03 -3.1438345e+03 - 8.2405107e+02 4.4718540e+03 -3.1347483e+03 - 7.6053143e+02 4.4947735e+03 -3.1261946e+03 - 6.9805830e+02 4.5157020e+03 -3.1181978e+03 - 6.3654811e+02 4.5347073e+03 -3.1107788e+03 - 5.7591729e+02 4.5518520e+03 -3.1039556e+03 - 5.1608261e+02 4.5671931e+03 -3.0977434e+03 - 4.5696142e+02 4.5807822e+03 -3.0921551e+03 - 3.9847176e+02 4.5926652e+03 -3.0872018e+03 - 3.4053245e+02 4.6028827e+03 -3.0828925e+03 - 2.8306311e+02 4.6114696e+03 -3.0792345e+03 - 2.2598408e+02 4.6184552e+03 -3.0762339e+03 - 1.6921642e+02 4.6238637e+03 -3.0738955e+03 - 1.1268175e+02 4.6277136e+03 -3.0722227e+03 - 5.6302148e+01 4.6300183e+03 -3.0712181e+03 - -9.6268545e-09 4.6307856e+03 -3.0708830e+03 - -5.6302148e+01 4.6300183e+03 -3.0712181e+03 - -1.1268175e+02 4.6277136e+03 -3.0722227e+03 - -1.6921642e+02 4.6238637e+03 -3.0738955e+03 - -2.2598408e+02 4.6184552e+03 -3.0762339e+03 - -2.8306311e+02 4.6114696e+03 -3.0792345e+03 - -3.4053245e+02 4.6028827e+03 -3.0828925e+03 - -3.9847176e+02 4.5926652e+03 -3.0872018e+03 - -4.5696142e+02 4.5807822e+03 -3.0921551e+03 - -5.1608261e+02 4.5671931e+03 -3.0977434e+03 - -5.7591729e+02 4.5518520e+03 -3.1039556e+03 - -6.3654811e+02 4.5347073e+03 -3.1107788e+03 - -6.9805830e+02 4.5157020e+03 -3.1181978e+03 - -7.6053143e+02 4.4947735e+03 -3.1261946e+03 - -8.2405107e+02 4.4718540e+03 -3.1347483e+03 - -8.8870038e+02 4.4468705e+03 -3.1438345e+03 - -9.5456151e+02 4.4197451e+03 -3.1534252e+03 - -1.0217149e+03 4.3903956e+03 -3.1634883e+03 - -1.0902383e+03 4.3587359e+03 -3.1739867e+03 - -1.1602060e+03 4.3246770e+03 -3.1848787e+03 - -1.2316868e+03 4.2881276e+03 -3.1961169e+03 - -1.3047436e+03 4.2489956e+03 -3.2076479e+03 - -1.3794304e+03 4.2071891e+03 -3.2194122e+03 - -1.4557916e+03 4.1626190e+03 -3.2313436e+03 - -1.5338587e+03 4.1151999e+03 -3.2433691e+03 - -1.6136488e+03 4.0648536e+03 -3.2554092e+03 - -1.6951616e+03 4.0115109e+03 -3.2673772e+03 - -1.7783769e+03 3.9551149e+03 -3.2791804e+03 - -1.8632525e+03 3.8956242e+03 -3.2907202e+03 - -1.9497213e+03 3.8330158e+03 -3.3018932e+03 - -2.0376893e+03 3.7672891e+03 -3.3125921e+03 - -2.1270342e+03 3.6984682e+03 -3.3227075e+03 - -2.2176041e+03 3.6266059e+03 -3.3321297e+03 - -2.3092173e+03 3.5517849e+03 -3.3407508e+03 - -2.4016627e+03 3.4741207e+03 -3.3484668e+03 - -2.4947019e+03 3.3937617e+03 -3.3551808e+03 - -2.5880715e+03 3.3108896e+03 -3.3608050e+03 - -2.6814868e+03 3.2257178e+03 -3.3652632e+03 - -2.7746473e+03 3.1384888e+03 -3.3684937e+03 - -2.8672415e+03 3.0494712e+03 -3.3704508e+03 - -2.9589539e+03 2.9589539e+03 -3.3711063e+03 - -3.0494712e+03 2.8672415e+03 -3.3704508e+03 - -3.1384888e+03 2.7746473e+03 -3.3684937e+03 - -3.2257178e+03 2.6814868e+03 -3.3652632e+03 - -3.3108896e+03 2.5880715e+03 -3.3608050e+03 - -3.3937617e+03 2.4947019e+03 -3.3551808e+03 - -3.4741207e+03 2.4016627e+03 -3.3484668e+03 - -3.5517849e+03 2.3092173e+03 -3.3407508e+03 - -3.6266059e+03 2.2176041e+03 -3.3321297e+03 - -3.6984682e+03 2.1270342e+03 -3.3227075e+03 - -3.7672891e+03 2.0376893e+03 -3.3125921e+03 - -3.8330158e+03 1.9497213e+03 -3.3018932e+03 - -3.8956242e+03 1.8632525e+03 -3.2907202e+03 - -3.9551149e+03 1.7783769e+03 -3.2791804e+03 - -4.0115109e+03 1.6951616e+03 -3.2673772e+03 - -4.0648536e+03 1.6136488e+03 -3.2554092e+03 - -4.1151999e+03 1.5338587e+03 -3.2433691e+03 - -4.1626190e+03 1.4557916e+03 -3.2313436e+03 - -4.2071891e+03 1.3794304e+03 -3.2194122e+03 - -4.2489956e+03 1.3047436e+03 -3.2076479e+03 - -4.2881276e+03 1.2316868e+03 -3.1961169e+03 - -4.3246770e+03 1.1602060e+03 -3.1848787e+03 - -4.3587359e+03 1.0902383e+03 -3.1739867e+03 - -4.3903956e+03 1.0217149e+03 -3.1634883e+03 - -4.4197451e+03 9.5456151e+02 -3.1534252e+03 - -4.4468705e+03 8.8870038e+02 -3.1438345e+03 - -4.4718540e+03 8.2405107e+02 -3.1347483e+03 - -4.4947735e+03 7.6053143e+02 -3.1261946e+03 - -4.5157020e+03 6.9805830e+02 -3.1181978e+03 - -4.5347073e+03 6.3654811e+02 -3.1107788e+03 - -4.5518520e+03 5.7591729e+02 -3.1039556e+03 - -4.5671931e+03 5.1608261e+02 -3.0977434e+03 - -4.5807822e+03 4.5696142e+02 -3.0921551e+03 - -4.5926652e+03 3.9847176e+02 -3.0872018e+03 - -4.6028827e+03 3.4053245e+02 -3.0828925e+03 - -4.6114696e+03 2.8306311e+02 -3.0792345e+03 - -4.6184552e+03 2.2598408e+02 -3.0762339e+03 - -4.6238637e+03 1.6921642e+02 -3.0738955e+03 - -4.6277136e+03 1.1268175e+02 -3.0722227e+03 - -4.6300183e+03 5.6302148e+01 -3.0712181e+03 - -4.6307856e+03 0.0000000e+00 -3.0708830e+03 - -4.6300183e+03 -5.6302148e+01 -3.0712181e+03 - -4.6277136e+03 -1.1268175e+02 -3.0722227e+03 - -4.6238637e+03 -1.6921642e+02 -3.0738955e+03 - -4.6184552e+03 -2.2598408e+02 -3.0762339e+03 - -4.6114696e+03 -2.8306311e+02 -3.0792345e+03 - -4.6028827e+03 -3.4053245e+02 -3.0828925e+03 - -4.5926652e+03 -3.9847176e+02 -3.0872018e+03 - -4.5807822e+03 -4.5696142e+02 -3.0921551e+03 - -4.5671931e+03 -5.1608261e+02 -3.0977434e+03 - -4.5518520e+03 -5.7591729e+02 -3.1039556e+03 - -4.5347073e+03 -6.3654811e+02 -3.1107788e+03 - -4.5157020e+03 -6.9805830e+02 -3.1181978e+03 - -4.4947735e+03 -7.6053143e+02 -3.1261946e+03 - -4.4718540e+03 -8.2405107e+02 -3.1347483e+03 - -4.4468705e+03 -8.8870038e+02 -3.1438345e+03 - -4.4197451e+03 -9.5456151e+02 -3.1534252e+03 - -4.3903956e+03 -1.0217149e+03 -3.1634883e+03 - -4.3587359e+03 -1.0902383e+03 -3.1739867e+03 - -4.3246770e+03 -1.1602060e+03 -3.1848787e+03 - -4.2881276e+03 -1.2316868e+03 -3.1961169e+03 - -4.2489956e+03 -1.3047436e+03 -3.2076479e+03 - -4.2071891e+03 -1.3794304e+03 -3.2194122e+03 - -4.1626190e+03 -1.4557916e+03 -3.2313436e+03 - -4.1151999e+03 -1.5338587e+03 -3.2433691e+03 - -4.0648536e+03 -1.6136488e+03 -3.2554092e+03 - -4.0115109e+03 -1.6951616e+03 -3.2673772e+03 - -3.9551149e+03 -1.7783769e+03 -3.2791804e+03 - -3.8956242e+03 -1.8632525e+03 -3.2907202e+03 - -3.8330158e+03 -1.9497213e+03 -3.3018932e+03 - -3.7672891e+03 -2.0376893e+03 -3.3125921e+03 - -3.6984682e+03 -2.1270342e+03 -3.3227075e+03 - -3.6266059e+03 -2.2176041e+03 -3.3321297e+03 - -3.5517849e+03 -2.3092173e+03 -3.3407508e+03 - -3.4741207e+03 -2.4016627e+03 -3.3484668e+03 - -3.3937617e+03 -2.4947019e+03 -3.3551808e+03 - -3.3108896e+03 -2.5880715e+03 -3.3608050e+03 - -3.2257178e+03 -2.6814868e+03 -3.3652632e+03 - -3.1384888e+03 -2.7746473e+03 -3.3684937e+03 - -3.0494712e+03 -2.8672415e+03 -3.3704508e+03 - -2.9589539e+03 -2.9589539e+03 -3.3711063e+03 - -2.8672415e+03 -3.0494712e+03 -3.3704508e+03 - -2.7746473e+03 -3.1384888e+03 -3.3684937e+03 - -2.6814868e+03 -3.2257178e+03 -3.3652632e+03 - -2.5880715e+03 -3.3108896e+03 -3.3608050e+03 - -2.4947019e+03 -3.3937617e+03 -3.3551808e+03 - -2.4016627e+03 -3.4741207e+03 -3.3484668e+03 - -2.3092173e+03 -3.5517849e+03 -3.3407508e+03 - -2.2176041e+03 -3.6266059e+03 -3.3321297e+03 - -2.1270342e+03 -3.6984682e+03 -3.3227075e+03 - -2.0376893e+03 -3.7672891e+03 -3.3125921e+03 - -1.9497213e+03 -3.8330158e+03 -3.3018932e+03 - -1.8632525e+03 -3.8956242e+03 -3.2907202e+03 - -1.7783769e+03 -3.9551149e+03 -3.2791804e+03 - -1.6951616e+03 -4.0115109e+03 -3.2673772e+03 - -1.6136488e+03 -4.0648536e+03 -3.2554092e+03 - -1.5338587e+03 -4.1151999e+03 -3.2433691e+03 - -1.4557916e+03 -4.1626190e+03 -3.2313436e+03 - -1.3794304e+03 -4.2071891e+03 -3.2194122e+03 - -1.3047436e+03 -4.2489956e+03 -3.2076479e+03 - -1.2316868e+03 -4.2881276e+03 -3.1961169e+03 - -1.1602060e+03 -4.3246770e+03 -3.1848787e+03 - -1.0902383e+03 -4.3587359e+03 -3.1739867e+03 - -1.0217149e+03 -4.3903956e+03 -3.1634883e+03 - -9.5456151e+02 -4.4197451e+03 -3.1534252e+03 - -8.8870038e+02 -4.4468705e+03 -3.1438345e+03 - -8.2405107e+02 -4.4718540e+03 -3.1347483e+03 - -7.6053143e+02 -4.4947735e+03 -3.1261946e+03 - -6.9805830e+02 -4.5157020e+03 -3.1181978e+03 - -6.3654811e+02 -4.5347073e+03 -3.1107788e+03 - -5.7591729e+02 -4.5518520e+03 -3.1039556e+03 - -5.1608261e+02 -4.5671931e+03 -3.0977434e+03 - -4.5696142e+02 -4.5807822e+03 -3.0921551e+03 - -3.9847176e+02 -4.5926652e+03 -3.0872018e+03 - -3.4053245e+02 -4.6028827e+03 -3.0828925e+03 - -2.8306311e+02 -4.6114696e+03 -3.0792345e+03 - -2.2598408e+02 -4.6184552e+03 -3.0762339e+03 - -1.6921642e+02 -4.6238637e+03 -3.0738955e+03 - -1.1268175e+02 -4.6277136e+03 -3.0722227e+03 - -5.6302148e+01 -4.6300183e+03 -3.0712181e+03 - 0.0000000e+00 -4.6307856e+03 -3.0708830e+03 - 5.6302148e+01 -4.6300183e+03 -3.0712181e+03 - 1.1268175e+02 -4.6277136e+03 -3.0722227e+03 - 1.6921642e+02 -4.6238637e+03 -3.0738955e+03 - 2.2598408e+02 -4.6184552e+03 -3.0762339e+03 - 2.8306311e+02 -4.6114696e+03 -3.0792345e+03 - 3.4053245e+02 -4.6028827e+03 -3.0828925e+03 - 3.9847176e+02 -4.5926652e+03 -3.0872018e+03 - 4.5696142e+02 -4.5807822e+03 -3.0921551e+03 - 5.1608261e+02 -4.5671931e+03 -3.0977434e+03 - 5.7591729e+02 -4.5518520e+03 -3.1039556e+03 - 6.3654811e+02 -4.5347073e+03 -3.1107788e+03 - 6.9805830e+02 -4.5157020e+03 -3.1181978e+03 - 7.6053143e+02 -4.4947735e+03 -3.1261946e+03 - 8.2405107e+02 -4.4718540e+03 -3.1347483e+03 - 8.8870038e+02 -4.4468705e+03 -3.1438345e+03 - 9.5456151e+02 -4.4197451e+03 -3.1534252e+03 - 1.0217149e+03 -4.3903956e+03 -3.1634883e+03 - 1.0902383e+03 -4.3587359e+03 -3.1739867e+03 - 1.1602060e+03 -4.3246770e+03 -3.1848787e+03 - 1.2316868e+03 -4.2881276e+03 -3.1961169e+03 - 1.3047436e+03 -4.2489956e+03 -3.2076479e+03 - 1.3794304e+03 -4.2071891e+03 -3.2194122e+03 - 1.4557916e+03 -4.1626190e+03 -3.2313436e+03 - 1.5338587e+03 -4.1151999e+03 -3.2433691e+03 - 1.6136488e+03 -4.0648536e+03 -3.2554092e+03 - 1.6951616e+03 -4.0115109e+03 -3.2673772e+03 - 1.7783769e+03 -3.9551149e+03 -3.2791804e+03 - 1.8632525e+03 -3.8956242e+03 -3.2907202e+03 - 1.9497213e+03 -3.8330158e+03 -3.3018932e+03 - 2.0376893e+03 -3.7672891e+03 -3.3125921e+03 - 2.1270342e+03 -3.6984682e+03 -3.3227075e+03 - 2.2176041e+03 -3.6266059e+03 -3.3321297e+03 - 2.3092173e+03 -3.5517849e+03 -3.3407508e+03 - 2.4016627e+03 -3.4741207e+03 -3.3484668e+03 - 2.4947019e+03 -3.3937617e+03 -3.3551808e+03 - 2.5880715e+03 -3.3108896e+03 -3.3608050e+03 - 2.6814868e+03 -3.2257178e+03 -3.3652632e+03 - 2.7746473e+03 -3.1384888e+03 -3.3684937e+03 - 2.8672415e+03 -3.0494712e+03 -3.3704508e+03 - 2.9589539e+03 -2.9589539e+03 -3.3711063e+03 - 3.0494712e+03 -2.8672415e+03 -3.3704508e+03 - 3.1384888e+03 -2.7746473e+03 -3.3684937e+03 - 3.2257178e+03 -2.6814868e+03 -3.3652632e+03 - 3.3108896e+03 -2.5880715e+03 -3.3608050e+03 - 3.3937617e+03 -2.4947019e+03 -3.3551808e+03 - 3.4741207e+03 -2.4016627e+03 -3.3484668e+03 - 3.5517849e+03 -2.3092173e+03 -3.3407508e+03 - 3.6266059e+03 -2.2176041e+03 -3.3321297e+03 - 3.6984682e+03 -2.1270342e+03 -3.3227075e+03 - 3.7672891e+03 -2.0376893e+03 -3.3125921e+03 - 3.8330158e+03 -1.9497213e+03 -3.3018932e+03 - 3.8956242e+03 -1.8632525e+03 -3.2907202e+03 - 3.9551149e+03 -1.7783769e+03 -3.2791804e+03 - 4.0115109e+03 -1.6951616e+03 -3.2673772e+03 - 4.0648536e+03 -1.6136488e+03 -3.2554092e+03 - 4.1151999e+03 -1.5338587e+03 -3.2433691e+03 - 4.1626190e+03 -1.4557916e+03 -3.2313436e+03 - 4.2071891e+03 -1.3794304e+03 -3.2194122e+03 - 4.2489956e+03 -1.3047436e+03 -3.2076479e+03 - 4.2881276e+03 -1.2316868e+03 -3.1961169e+03 - 4.3246770e+03 -1.1602060e+03 -3.1848787e+03 - 4.3587359e+03 -1.0902383e+03 -3.1739867e+03 - 4.3903956e+03 -1.0217149e+03 -3.1634883e+03 - 4.4197451e+03 -9.5456151e+02 -3.1534252e+03 - 4.4468705e+03 -8.8870038e+02 -3.1438345e+03 - 4.4718540e+03 -8.2405107e+02 -3.1347483e+03 - 4.4947735e+03 -7.6053143e+02 -3.1261946e+03 - 4.5157020e+03 -6.9805830e+02 -3.1181978e+03 - 4.5347073e+03 -6.3654811e+02 -3.1107788e+03 - 4.5518520e+03 -5.7591729e+02 -3.1039556e+03 - 4.5671931e+03 -5.1608261e+02 -3.0977434e+03 - 4.5807822e+03 -4.5696142e+02 -3.0921551e+03 - 4.5926652e+03 -3.9847176e+02 -3.0872018e+03 - 4.6028827e+03 -3.4053245e+02 -3.0828925e+03 - 4.6114696e+03 -2.8306311e+02 -3.0792345e+03 - 4.6184552e+03 -2.2598408e+02 -3.0762339e+03 - 4.6238637e+03 -1.6921642e+02 -3.0738955e+03 - 4.6277136e+03 -1.1268175e+02 -3.0722227e+03 - 4.6300183e+03 -5.6302148e+01 -3.0712181e+03 - 4.6307856e+03 -4.8134273e-09 -3.0708830e+03 - 4.5915115e+03 4.8134273e-09 -3.1309330e+03 - 4.5907396e+03 5.6473721e+01 -3.1312582e+03 - 4.5884214e+03 1.1302343e+02 -3.1322335e+03 - 4.5845491e+03 1.6972525e+02 -3.1338573e+03 - 4.5791098e+03 2.2665556e+02 -3.1361268e+03 - 4.5720855e+03 2.8389111e+02 -3.1390384e+03 - 4.5634529e+03 3.4150912e+02 -3.1425871e+03 - 4.5531834e+03 3.9958736e+02 -3.1467664e+03 - 4.5412432e+03 4.5820420e+02 -3.1515685e+03 - 4.5275933e+03 5.1743858e+02 -3.1569839e+03 - 4.5121892e+03 5.7737002e+02 -3.1630012e+03 - 4.4949814e+03 6.3807849e+02 -3.1696070e+03 - 4.4759148e+03 6.9964424e+02 -3.1767855e+03 - 4.4549295e+03 7.6214757e+02 -3.1845183e+03 - 4.4319606e+03 8.2566844e+02 -3.1927841e+03 - 4.4069383e+03 8.9028609e+02 -3.2015580e+03 - 4.3797886e+03 9.5607836e+02 -3.2108120e+03 - 4.3504335e+03 1.0231210e+03 -3.2205135e+03 - 4.3187917e+03 1.0914869e+03 -3.2306260e+03 - 4.2847792e+03 1.1612447e+03 -3.2411078e+03 - 4.2483105e+03 1.2324580e+03 -3.2519121e+03 - 4.2092998e+03 1.3051834e+03 -3.2629867e+03 - 4.1676619e+03 1.3794692e+03 -3.2742733e+03 - 4.1233148e+03 1.4553536e+03 -3.2857076e+03 - 4.0761806e+03 1.5328622e+03 -3.2972193e+03 - 4.0261887e+03 1.6120064e+03 -3.3087315e+03 - 3.9732775e+03 1.6927808e+03 -3.3201615e+03 - 3.9173977e+03 1.7751609e+03 -3.3314209e+03 - 3.8585149e+03 1.8591010e+03 -3.3424162e+03 - 3.7966127e+03 1.9445319e+03 -3.3530497e+03 - 3.7316954e+03 2.0313593e+03 -3.3632205e+03 - 3.6637916e+03 2.1194622e+03 -3.3728262e+03 - 3.5929557e+03 2.2086922e+03 -3.3817643e+03 - 3.5192712e+03 2.2988733e+03 -3.3899346e+03 - 3.4428511e+03 2.3898029e+03 -3.3972408e+03 - 3.3638392e+03 2.4812529e+03 -3.4035931e+03 - 3.2824101e+03 2.5729727e+03 -3.4089107e+03 - 3.1987670e+03 2.6646928e+03 -3.4131235e+03 - 3.1131404e+03 2.7561288e+03 -3.4161749e+03 - 3.0257840e+03 2.8469872e+03 -3.4180229e+03 - 2.9369707e+03 2.9369707e+03 -3.4186418e+03 - 2.8469872e+03 3.0257840e+03 -3.4180229e+03 - 2.7561288e+03 3.1131404e+03 -3.4161749e+03 - 2.6646928e+03 3.1987670e+03 -3.4131235e+03 - 2.5729727e+03 3.2824101e+03 -3.4089107e+03 - 2.4812529e+03 3.3638392e+03 -3.4035931e+03 - 2.3898029e+03 3.4428511e+03 -3.3972408e+03 - 2.2988733e+03 3.5192712e+03 -3.3899346e+03 - 2.2086922e+03 3.5929557e+03 -3.3817643e+03 - 2.1194622e+03 3.6637916e+03 -3.3728262e+03 - 2.0313593e+03 3.7316954e+03 -3.3632205e+03 - 1.9445319e+03 3.7966127e+03 -3.3530497e+03 - 1.8591010e+03 3.8585149e+03 -3.3424162e+03 - 1.7751609e+03 3.9173977e+03 -3.3314209e+03 - 1.6927808e+03 3.9732775e+03 -3.3201615e+03 - 1.6120064e+03 4.0261887e+03 -3.3087315e+03 - 1.5328622e+03 4.0761806e+03 -3.2972193e+03 - 1.4553536e+03 4.1233148e+03 -3.2857076e+03 - 1.3794692e+03 4.1676619e+03 -3.2742733e+03 - 1.3051834e+03 4.2092998e+03 -3.2629867e+03 - 1.2324580e+03 4.2483105e+03 -3.2519121e+03 - 1.1612447e+03 4.2847792e+03 -3.2411078e+03 - 1.0914869e+03 4.3187917e+03 -3.2306260e+03 - 1.0231210e+03 4.3504335e+03 -3.2205135e+03 - 9.5607836e+02 4.3797886e+03 -3.2108120e+03 - 8.9028609e+02 4.4069383e+03 -3.2015580e+03 - 8.2566844e+02 4.4319606e+03 -3.1927841e+03 - 7.6214757e+02 4.4549295e+03 -3.1845183e+03 - 6.9964424e+02 4.4759148e+03 -3.1767855e+03 - 6.3807849e+02 4.4949814e+03 -3.1696070e+03 - 5.7737002e+02 4.5121892e+03 -3.1630012e+03 - 5.1743858e+02 4.5275933e+03 -3.1569839e+03 - 4.5820420e+02 4.5412432e+03 -3.1515685e+03 - 3.9958736e+02 4.5531834e+03 -3.1467664e+03 - 3.4150912e+02 4.5634529e+03 -3.1425871e+03 - 2.8389111e+02 4.5720855e+03 -3.1390384e+03 - 2.2665556e+02 4.5791098e+03 -3.1361268e+03 - 1.6972525e+02 4.5845491e+03 -3.1338573e+03 - 1.1302343e+02 4.5884214e+03 -3.1322335e+03 - 5.6473721e+01 4.5907396e+03 -3.1312582e+03 - 0.0000000e+00 4.5915115e+03 -3.1309330e+03 - -5.6473721e+01 4.5907396e+03 -3.1312582e+03 - -1.1302343e+02 4.5884214e+03 -3.1322335e+03 - -1.6972525e+02 4.5845491e+03 -3.1338573e+03 - -2.2665556e+02 4.5791098e+03 -3.1361268e+03 - -2.8389111e+02 4.5720855e+03 -3.1390384e+03 - -3.4150912e+02 4.5634529e+03 -3.1425871e+03 - -3.9958736e+02 4.5531834e+03 -3.1467664e+03 - -4.5820420e+02 4.5412432e+03 -3.1515685e+03 - -5.1743858e+02 4.5275933e+03 -3.1569839e+03 - -5.7737002e+02 4.5121892e+03 -3.1630012e+03 - -6.3807849e+02 4.4949814e+03 -3.1696070e+03 - -6.9964424e+02 4.4759148e+03 -3.1767855e+03 - -7.6214757e+02 4.4549295e+03 -3.1845183e+03 - -8.2566844e+02 4.4319606e+03 -3.1927841e+03 - -8.9028609e+02 4.4069383e+03 -3.2015580e+03 - -9.5607836e+02 4.3797886e+03 -3.2108120e+03 - -1.0231210e+03 4.3504335e+03 -3.2205135e+03 - -1.0914869e+03 4.3187917e+03 -3.2306260e+03 - -1.1612447e+03 4.2847792e+03 -3.2411078e+03 - -1.2324580e+03 4.2483105e+03 -3.2519121e+03 - -1.3051834e+03 4.2092998e+03 -3.2629867e+03 - -1.3794692e+03 4.1676619e+03 -3.2742733e+03 - -1.4553536e+03 4.1233148e+03 -3.2857076e+03 - -1.5328622e+03 4.0761806e+03 -3.2972193e+03 - -1.6120064e+03 4.0261887e+03 -3.3087315e+03 - -1.6927808e+03 3.9732775e+03 -3.3201615e+03 - -1.7751609e+03 3.9173977e+03 -3.3314209e+03 - -1.8591010e+03 3.8585149e+03 -3.3424162e+03 - -1.9445319e+03 3.7966127e+03 -3.3530497e+03 - -2.0313593e+03 3.7316954e+03 -3.3632205e+03 - -2.1194622e+03 3.6637916e+03 -3.3728262e+03 - -2.2086922e+03 3.5929557e+03 -3.3817643e+03 - -2.2988733e+03 3.5192712e+03 -3.3899346e+03 - -2.3898029e+03 3.4428511e+03 -3.3972408e+03 - -2.4812529e+03 3.3638392e+03 -3.4035931e+03 - -2.5729727e+03 3.2824101e+03 -3.4089107e+03 - -2.6646928e+03 3.1987670e+03 -3.4131235e+03 - -2.7561288e+03 3.1131404e+03 -3.4161749e+03 - -2.8469872e+03 3.0257840e+03 -3.4180229e+03 - -2.9369707e+03 2.9369707e+03 -3.4186418e+03 - -3.0257840e+03 2.8469872e+03 -3.4180229e+03 - -3.1131404e+03 2.7561288e+03 -3.4161749e+03 - -3.1987670e+03 2.6646928e+03 -3.4131235e+03 - -3.2824101e+03 2.5729727e+03 -3.4089107e+03 - -3.3638392e+03 2.4812529e+03 -3.4035931e+03 - -3.4428511e+03 2.3898029e+03 -3.3972408e+03 - -3.5192712e+03 2.2988733e+03 -3.3899346e+03 - -3.5929557e+03 2.2086922e+03 -3.3817643e+03 - -3.6637916e+03 2.1194622e+03 -3.3728262e+03 - -3.7316954e+03 2.0313593e+03 -3.3632205e+03 - -3.7966127e+03 1.9445319e+03 -3.3530497e+03 - -3.8585149e+03 1.8591010e+03 -3.3424162e+03 - -3.9173977e+03 1.7751609e+03 -3.3314209e+03 - -3.9732775e+03 1.6927808e+03 -3.3201615e+03 - -4.0261887e+03 1.6120064e+03 -3.3087315e+03 - -4.0761806e+03 1.5328622e+03 -3.2972193e+03 - -4.1233148e+03 1.4553536e+03 -3.2857076e+03 - -4.1676619e+03 1.3794692e+03 -3.2742733e+03 - -4.2092998e+03 1.3051834e+03 -3.2629867e+03 - -4.2483105e+03 1.2324580e+03 -3.2519121e+03 - -4.2847792e+03 1.1612447e+03 -3.2411078e+03 - -4.3187917e+03 1.0914869e+03 -3.2306260e+03 - -4.3504335e+03 1.0231210e+03 -3.2205135e+03 - -4.3797886e+03 9.5607836e+02 -3.2108120e+03 - -4.4069383e+03 8.9028609e+02 -3.2015580e+03 - -4.4319606e+03 8.2566844e+02 -3.1927841e+03 - -4.4549295e+03 7.6214757e+02 -3.1845183e+03 - -4.4759148e+03 6.9964424e+02 -3.1767855e+03 - -4.4949814e+03 6.3807849e+02 -3.1696070e+03 - -4.5121892e+03 5.7737002e+02 -3.1630012e+03 - -4.5275933e+03 5.1743858e+02 -3.1569839e+03 - -4.5412432e+03 4.5820420e+02 -3.1515685e+03 - -4.5531834e+03 3.9958736e+02 -3.1467664e+03 - -4.5634529e+03 3.4150912e+02 -3.1425871e+03 - -4.5720855e+03 2.8389111e+02 -3.1390384e+03 - -4.5791098e+03 2.2665556e+02 -3.1361268e+03 - -4.5845491e+03 1.6972525e+02 -3.1338573e+03 - -4.5884214e+03 1.1302343e+02 -3.1322335e+03 - -4.5907396e+03 5.6473721e+01 -3.1312582e+03 - -4.5915115e+03 -4.8134273e-09 -3.1309330e+03 - -4.5907396e+03 -5.6473721e+01 -3.1312582e+03 - -4.5884214e+03 -1.1302343e+02 -3.1322335e+03 - -4.5845491e+03 -1.6972525e+02 -3.1338573e+03 - -4.5791098e+03 -2.2665556e+02 -3.1361268e+03 - -4.5720855e+03 -2.8389111e+02 -3.1390384e+03 - -4.5634529e+03 -3.4150912e+02 -3.1425871e+03 - -4.5531834e+03 -3.9958736e+02 -3.1467664e+03 - -4.5412432e+03 -4.5820420e+02 -3.1515685e+03 - -4.5275933e+03 -5.1743858e+02 -3.1569839e+03 - -4.5121892e+03 -5.7737002e+02 -3.1630012e+03 - -4.4949814e+03 -6.3807849e+02 -3.1696070e+03 - -4.4759148e+03 -6.9964424e+02 -3.1767855e+03 - -4.4549295e+03 -7.6214757e+02 -3.1845183e+03 - -4.4319606e+03 -8.2566844e+02 -3.1927841e+03 - -4.4069383e+03 -8.9028609e+02 -3.2015580e+03 - -4.3797886e+03 -9.5607836e+02 -3.2108120e+03 - -4.3504335e+03 -1.0231210e+03 -3.2205135e+03 - -4.3187917e+03 -1.0914869e+03 -3.2306260e+03 - -4.2847792e+03 -1.1612447e+03 -3.2411078e+03 - -4.2483105e+03 -1.2324580e+03 -3.2519121e+03 - -4.2092998e+03 -1.3051834e+03 -3.2629867e+03 - -4.1676619e+03 -1.3794692e+03 -3.2742733e+03 - -4.1233148e+03 -1.4553536e+03 -3.2857076e+03 - -4.0761806e+03 -1.5328622e+03 -3.2972193e+03 - -4.0261887e+03 -1.6120064e+03 -3.3087315e+03 - -3.9732775e+03 -1.6927808e+03 -3.3201615e+03 - -3.9173977e+03 -1.7751609e+03 -3.3314209e+03 - -3.8585149e+03 -1.8591010e+03 -3.3424162e+03 - -3.7966127e+03 -1.9445319e+03 -3.3530497e+03 - -3.7316954e+03 -2.0313593e+03 -3.3632205e+03 - -3.6637916e+03 -2.1194622e+03 -3.3728262e+03 - -3.5929557e+03 -2.2086922e+03 -3.3817643e+03 - -3.5192712e+03 -2.2988733e+03 -3.3899346e+03 - -3.4428511e+03 -2.3898029e+03 -3.3972408e+03 - -3.3638392e+03 -2.4812529e+03 -3.4035931e+03 - -3.2824101e+03 -2.5729727e+03 -3.4089107e+03 - -3.1987670e+03 -2.6646928e+03 -3.4131235e+03 - -3.1131404e+03 -2.7561288e+03 -3.4161749e+03 - -3.0257840e+03 -2.8469872e+03 -3.4180229e+03 - -2.9369707e+03 -2.9369707e+03 -3.4186418e+03 - -2.8469872e+03 -3.0257840e+03 -3.4180229e+03 - -2.7561288e+03 -3.1131404e+03 -3.4161749e+03 - -2.6646928e+03 -3.1987670e+03 -3.4131235e+03 - -2.5729727e+03 -3.2824101e+03 -3.4089107e+03 - -2.4812529e+03 -3.3638392e+03 -3.4035931e+03 - -2.3898029e+03 -3.4428511e+03 -3.3972408e+03 - -2.2988733e+03 -3.5192712e+03 -3.3899346e+03 - -2.2086922e+03 -3.5929557e+03 -3.3817643e+03 - -2.1194622e+03 -3.6637916e+03 -3.3728262e+03 - -2.0313593e+03 -3.7316954e+03 -3.3632205e+03 - -1.9445319e+03 -3.7966127e+03 -3.3530497e+03 - -1.8591010e+03 -3.8585149e+03 -3.3424162e+03 - -1.7751609e+03 -3.9173977e+03 -3.3314209e+03 - -1.6927808e+03 -3.9732775e+03 -3.3201615e+03 - -1.6120064e+03 -4.0261887e+03 -3.3087315e+03 - -1.5328622e+03 -4.0761806e+03 -3.2972193e+03 - -1.4553536e+03 -4.1233148e+03 -3.2857076e+03 - -1.3794692e+03 -4.1676619e+03 -3.2742733e+03 - -1.3051834e+03 -4.2092998e+03 -3.2629867e+03 - -1.2324580e+03 -4.2483105e+03 -3.2519121e+03 - -1.1612447e+03 -4.2847792e+03 -3.2411078e+03 - -1.0914869e+03 -4.3187917e+03 -3.2306260e+03 - -1.0231210e+03 -4.3504335e+03 -3.2205135e+03 - -9.5607836e+02 -4.3797886e+03 -3.2108120e+03 - -8.9028609e+02 -4.4069383e+03 -3.2015580e+03 - -8.2566844e+02 -4.4319606e+03 -3.1927841e+03 - -7.6214757e+02 -4.4549295e+03 -3.1845183e+03 - -6.9964424e+02 -4.4759148e+03 -3.1767855e+03 - -6.3807849e+02 -4.4949814e+03 -3.1696070e+03 - -5.7737002e+02 -4.5121892e+03 -3.1630012e+03 - -5.1743858e+02 -4.5275933e+03 -3.1569839e+03 - -4.5820420e+02 -4.5412432e+03 -3.1515685e+03 - -3.9958736e+02 -4.5531834e+03 -3.1467664e+03 - -3.4150912e+02 -4.5634529e+03 -3.1425871e+03 - -2.8389111e+02 -4.5720855e+03 -3.1390384e+03 - -2.2665556e+02 -4.5791098e+03 -3.1361268e+03 - -1.6972525e+02 -4.5845491e+03 -3.1338573e+03 - -1.1302343e+02 -4.5884214e+03 -3.1322335e+03 - -5.6473721e+01 -4.5907396e+03 -3.1312582e+03 - 0.0000000e+00 -4.5915115e+03 -3.1309330e+03 - 5.6473721e+01 -4.5907396e+03 -3.1312582e+03 - 1.1302343e+02 -4.5884214e+03 -3.1322335e+03 - 1.6972525e+02 -4.5845491e+03 -3.1338573e+03 - 2.2665556e+02 -4.5791098e+03 -3.1361268e+03 - 2.8389111e+02 -4.5720855e+03 -3.1390384e+03 - 3.4150912e+02 -4.5634529e+03 -3.1425871e+03 - 3.9958736e+02 -4.5531834e+03 -3.1467664e+03 - 4.5820420e+02 -4.5412432e+03 -3.1515685e+03 - 5.1743858e+02 -4.5275933e+03 -3.1569839e+03 - 5.7737002e+02 -4.5121892e+03 -3.1630012e+03 - 6.3807849e+02 -4.4949814e+03 -3.1696070e+03 - 6.9964424e+02 -4.4759148e+03 -3.1767855e+03 - 7.6214757e+02 -4.4549295e+03 -3.1845183e+03 - 8.2566844e+02 -4.4319606e+03 -3.1927841e+03 - 8.9028609e+02 -4.4069383e+03 -3.2015580e+03 - 9.5607836e+02 -4.3797886e+03 -3.2108120e+03 - 1.0231210e+03 -4.3504335e+03 -3.2205135e+03 - 1.0914869e+03 -4.3187917e+03 -3.2306260e+03 - 1.1612447e+03 -4.2847792e+03 -3.2411078e+03 - 1.2324580e+03 -4.2483105e+03 -3.2519121e+03 - 1.3051834e+03 -4.2092998e+03 -3.2629867e+03 - 1.3794692e+03 -4.1676619e+03 -3.2742733e+03 - 1.4553536e+03 -4.1233148e+03 -3.2857076e+03 - 1.5328622e+03 -4.0761806e+03 -3.2972193e+03 - 1.6120064e+03 -4.0261887e+03 -3.3087315e+03 - 1.6927808e+03 -3.9732775e+03 -3.3201615e+03 - 1.7751609e+03 -3.9173977e+03 -3.3314209e+03 - 1.8591010e+03 -3.8585149e+03 -3.3424162e+03 - 1.9445319e+03 -3.7966127e+03 -3.3530497e+03 - 2.0313593e+03 -3.7316954e+03 -3.3632205e+03 - 2.1194622e+03 -3.6637916e+03 -3.3728262e+03 - 2.2086922e+03 -3.5929557e+03 -3.3817643e+03 - 2.2988733e+03 -3.5192712e+03 -3.3899346e+03 - 2.3898029e+03 -3.4428511e+03 -3.3972408e+03 - 2.4812529e+03 -3.3638392e+03 -3.4035931e+03 - 2.5729727e+03 -3.2824101e+03 -3.4089107e+03 - 2.6646928e+03 -3.1987670e+03 -3.4131235e+03 - 2.7561288e+03 -3.1131404e+03 -3.4161749e+03 - 2.8469872e+03 -3.0257840e+03 -3.4180229e+03 - 2.9369707e+03 -2.9369707e+03 -3.4186418e+03 - 3.0257840e+03 -2.8469872e+03 -3.4180229e+03 - 3.1131404e+03 -2.7561288e+03 -3.4161749e+03 - 3.1987670e+03 -2.6646928e+03 -3.4131235e+03 - 3.2824101e+03 -2.5729727e+03 -3.4089107e+03 - 3.3638392e+03 -2.4812529e+03 -3.4035931e+03 - 3.4428511e+03 -2.3898029e+03 -3.3972408e+03 - 3.5192712e+03 -2.2988733e+03 -3.3899346e+03 - 3.5929557e+03 -2.2086922e+03 -3.3817643e+03 - 3.6637916e+03 -2.1194622e+03 -3.3728262e+03 - 3.7316954e+03 -2.0313593e+03 -3.3632205e+03 - 3.7966127e+03 -1.9445319e+03 -3.3530497e+03 - 3.8585149e+03 -1.8591010e+03 -3.3424162e+03 - 3.9173977e+03 -1.7751609e+03 -3.3314209e+03 - 3.9732775e+03 -1.6927808e+03 -3.3201615e+03 - 4.0261887e+03 -1.6120064e+03 -3.3087315e+03 - 4.0761806e+03 -1.5328622e+03 -3.2972193e+03 - 4.1233148e+03 -1.4553536e+03 -3.2857076e+03 - 4.1676619e+03 -1.3794692e+03 -3.2742733e+03 - 4.2092998e+03 -1.3051834e+03 -3.2629867e+03 - 4.2483105e+03 -1.2324580e+03 -3.2519121e+03 - 4.2847792e+03 -1.1612447e+03 -3.2411078e+03 - 4.3187917e+03 -1.0914869e+03 -3.2306260e+03 - 4.3504335e+03 -1.0231210e+03 -3.2205135e+03 - 4.3797886e+03 -9.5607836e+02 -3.2108120e+03 - 4.4069383e+03 -8.9028609e+02 -3.2015580e+03 - 4.4319606e+03 -8.2566844e+02 -3.1927841e+03 - 4.4549295e+03 -7.6214757e+02 -3.1845183e+03 - 4.4759148e+03 -6.9964424e+02 -3.1767855e+03 - 4.4949814e+03 -6.3807849e+02 -3.1696070e+03 - 4.5121892e+03 -5.7737002e+02 -3.1630012e+03 - 4.5275933e+03 -5.1743858e+02 -3.1569839e+03 - 4.5412432e+03 -4.5820420e+02 -3.1515685e+03 - 4.5531834e+03 -3.9958736e+02 -3.1467664e+03 - 4.5634529e+03 -3.4150912e+02 -3.1425871e+03 - 4.5720855e+03 -2.8389111e+02 -3.1390384e+03 - 4.5791098e+03 -2.2665556e+02 -3.1361268e+03 - 4.5845491e+03 -1.6972525e+02 -3.1338573e+03 - 4.5884214e+03 -1.1302343e+02 -3.1322335e+03 - 4.5907396e+03 -5.6473721e+01 -3.1312582e+03 - 4.5915115e+03 -4.8134273e-09 -3.1309330e+03 - 4.5518112e+03 0.0000000e+00 -3.1891078e+03 - 4.5510353e+03 5.6633100e+01 -3.1894231e+03 - 4.5487052e+03 1.1334064e+02 -3.1903686e+03 - 4.5448132e+03 1.7019718e+02 -3.1919425e+03 - 4.5393470e+03 2.2727746e+02 -3.1941421e+03 - 4.5322891e+03 2.8465654e+02 -3.1969634e+03 - 4.5236168e+03 3.4240983e+02 -3.2004012e+03 - 4.5133027e+03 4.0061317e+02 -3.2044486e+03 - 4.5013139e+03 4.5934281e+02 -3.2090976e+03 - 4.4876129e+03 5.1867544e+02 -3.2143383e+03 - 4.4721569e+03 5.7868808e+02 -3.2201588e+03 - 4.4548981e+03 6.3945796e+02 -3.2265453e+03 - 4.4357839e+03 7.0106235e+02 -3.2334817e+03 - 4.4147567e+03 7.6357826e+02 -3.2409491e+03 - 4.3917546e+03 8.2708210e+02 -3.2489259e+03 - 4.3667112e+03 8.9164918e+02 -3.2573871e+03 - 4.3395560e+03 9.5735313e+02 -3.2663045e+03 - 4.3102153e+03 1.0242652e+03 -3.2756456e+03 - 4.2786124e+03 1.0924533e+03 -3.2853739e+03 - 4.2446684e+03 1.1619810e+03 -3.2954484e+03 - 4.2083034e+03 1.2329065e+03 -3.3058230e+03 - 4.1694375e+03 1.3052808e+03 -3.3164466e+03 - 4.1279921e+03 1.3791465e+03 -3.3272624e+03 - 4.0838917e+03 1.4545362e+03 -3.3382081e+03 - 4.0370657e+03 1.5314700e+03 -3.3492158e+03 - 3.9874506e+03 1.6099541e+03 -3.3602118e+03 - 3.9349920e+03 1.6899784e+03 -3.3711171e+03 - 3.8796475e+03 1.7715147e+03 -3.3818474e+03 - 3.8213891e+03 1.8545143e+03 -3.3923143e+03 - 3.7602061e+03 1.9389064e+03 -3.4024255e+03 - 3.6961078e+03 2.0245967e+03 -3.4120863e+03 - 3.6291259e+03 2.1114658e+03 -3.4212009e+03 - 3.5593168e+03 2.1993691e+03 -3.4296736e+03 - 3.4867636e+03 2.2881365e+03 -3.4374114e+03 - 3.4115772e+03 2.3775731e+03 -3.4443250e+03 - 3.3338966e+03 2.4674612e+03 -3.4503314e+03 - 3.2538893e+03 2.5575625e+03 -3.4553562e+03 - 3.1717491e+03 2.6476214e+03 -3.4593350e+03 - 3.0876947e+03 2.7373693e+03 -3.4622157e+03 - 3.0019660e+03 2.8265292e+03 -3.4639599e+03 - 2.9148208e+03 2.9148208e+03 -3.4645439e+03 - 2.8265292e+03 3.0019660e+03 -3.4639599e+03 - 2.7373693e+03 3.0876947e+03 -3.4622157e+03 - 2.6476214e+03 3.1717491e+03 -3.4593350e+03 - 2.5575625e+03 3.2538893e+03 -3.4553562e+03 - 2.4674612e+03 3.3338966e+03 -3.4503314e+03 - 2.3775731e+03 3.4115772e+03 -3.4443250e+03 - 2.2881365e+03 3.4867636e+03 -3.4374114e+03 - 2.1993691e+03 3.5593168e+03 -3.4296736e+03 - 2.1114658e+03 3.6291259e+03 -3.4212009e+03 - 2.0245967e+03 3.6961078e+03 -3.4120863e+03 - 1.9389064e+03 3.7602061e+03 -3.4024255e+03 - 1.8545143e+03 3.8213891e+03 -3.3923143e+03 - 1.7715147e+03 3.8796475e+03 -3.3818474e+03 - 1.6899784e+03 3.9349920e+03 -3.3711171e+03 - 1.6099541e+03 3.9874506e+03 -3.3602118e+03 - 1.5314700e+03 4.0370657e+03 -3.3492158e+03 - 1.4545362e+03 4.0838917e+03 -3.3382081e+03 - 1.3791465e+03 4.1279921e+03 -3.3272624e+03 - 1.3052808e+03 4.1694375e+03 -3.3164466e+03 - 1.2329065e+03 4.2083034e+03 -3.3058230e+03 - 1.1619810e+03 4.2446684e+03 -3.2954484e+03 - 1.0924533e+03 4.2786124e+03 -3.2853739e+03 - 1.0242652e+03 4.3102153e+03 -3.2756456e+03 - 9.5735313e+02 4.3395560e+03 -3.2663045e+03 - 8.9164918e+02 4.3667112e+03 -3.2573871e+03 - 8.2708210e+02 4.3917546e+03 -3.2489259e+03 - 7.6357826e+02 4.4147567e+03 -3.2409491e+03 - 7.0106235e+02 4.4357839e+03 -3.2334817e+03 - 6.3945796e+02 4.4548981e+03 -3.2265453e+03 - 5.7868808e+02 4.4721569e+03 -3.2201588e+03 - 5.1867544e+02 4.4876129e+03 -3.2143383e+03 - 4.5934281e+02 4.5013139e+03 -3.2090976e+03 - 4.0061317e+02 4.5133027e+03 -3.2044486e+03 - 3.4240983e+02 4.5236168e+03 -3.2004012e+03 - 2.8465654e+02 4.5322891e+03 -3.1969634e+03 - 2.2727746e+02 4.5393470e+03 -3.1941421e+03 - 1.7019718e+02 4.5448132e+03 -3.1919425e+03 - 1.1334064e+02 4.5487052e+03 -3.1903686e+03 - 5.6633100e+01 4.5510353e+03 -3.1894231e+03 - 0.0000000e+00 4.5518112e+03 -3.1891078e+03 - -5.6633100e+01 4.5510353e+03 -3.1894231e+03 - -1.1334064e+02 4.5487052e+03 -3.1903686e+03 - -1.7019718e+02 4.5448132e+03 -3.1919425e+03 - -2.2727746e+02 4.5393470e+03 -3.1941421e+03 - -2.8465654e+02 4.5322891e+03 -3.1969634e+03 - -3.4240983e+02 4.5236168e+03 -3.2004012e+03 - -4.0061317e+02 4.5133027e+03 -3.2044486e+03 - -4.5934281e+02 4.5013139e+03 -3.2090976e+03 - -5.1867544e+02 4.4876129e+03 -3.2143383e+03 - -5.7868808e+02 4.4721569e+03 -3.2201588e+03 - -6.3945796e+02 4.4548981e+03 -3.2265453e+03 - -7.0106235e+02 4.4357839e+03 -3.2334817e+03 - -7.6357826e+02 4.4147567e+03 -3.2409491e+03 - -8.2708210e+02 4.3917546e+03 -3.2489259e+03 - -8.9164918e+02 4.3667112e+03 -3.2573871e+03 - -9.5735313e+02 4.3395560e+03 -3.2663045e+03 - -1.0242652e+03 4.3102153e+03 -3.2756456e+03 - -1.0924533e+03 4.2786124e+03 -3.2853739e+03 - -1.1619810e+03 4.2446684e+03 -3.2954484e+03 - -1.2329065e+03 4.2083034e+03 -3.3058230e+03 - -1.3052808e+03 4.1694375e+03 -3.3164466e+03 - -1.3791465e+03 4.1279921e+03 -3.3272624e+03 - -1.4545362e+03 4.0838917e+03 -3.3382081e+03 - -1.5314700e+03 4.0370657e+03 -3.3492158e+03 - -1.6099541e+03 3.9874506e+03 -3.3602118e+03 - -1.6899784e+03 3.9349920e+03 -3.3711171e+03 - -1.7715147e+03 3.8796475e+03 -3.3818474e+03 - -1.8545143e+03 3.8213891e+03 -3.3923143e+03 - -1.9389064e+03 3.7602061e+03 -3.4024255e+03 - -2.0245967e+03 3.6961078e+03 -3.4120863e+03 - -2.1114658e+03 3.6291259e+03 -3.4212009e+03 - -2.1993691e+03 3.5593168e+03 -3.4296736e+03 - -2.2881365e+03 3.4867636e+03 -3.4374114e+03 - -2.3775731e+03 3.4115772e+03 -3.4443250e+03 - -2.4674612e+03 3.3338966e+03 -3.4503314e+03 - -2.5575625e+03 3.2538893e+03 -3.4553562e+03 - -2.6476214e+03 3.1717491e+03 -3.4593350e+03 - -2.7373693e+03 3.0876947e+03 -3.4622157e+03 - -2.8265292e+03 3.0019660e+03 -3.4639599e+03 - -2.9148208e+03 2.9148208e+03 -3.4645439e+03 - -3.0019660e+03 2.8265292e+03 -3.4639599e+03 - -3.0876947e+03 2.7373693e+03 -3.4622157e+03 - -3.1717491e+03 2.6476214e+03 -3.4593350e+03 - -3.2538893e+03 2.5575625e+03 -3.4553562e+03 - -3.3338966e+03 2.4674612e+03 -3.4503314e+03 - -3.4115772e+03 2.3775731e+03 -3.4443250e+03 - -3.4867636e+03 2.2881365e+03 -3.4374114e+03 - -3.5593168e+03 2.1993691e+03 -3.4296736e+03 - -3.6291259e+03 2.1114658e+03 -3.4212009e+03 - -3.6961078e+03 2.0245967e+03 -3.4120863e+03 - -3.7602061e+03 1.9389064e+03 -3.4024255e+03 - -3.8213891e+03 1.8545143e+03 -3.3923143e+03 - -3.8796475e+03 1.7715147e+03 -3.3818474e+03 - -3.9349920e+03 1.6899784e+03 -3.3711171e+03 - -3.9874506e+03 1.6099541e+03 -3.3602118e+03 - -4.0370657e+03 1.5314700e+03 -3.3492158e+03 - -4.0838917e+03 1.4545362e+03 -3.3382081e+03 - -4.1279921e+03 1.3791465e+03 -3.3272624e+03 - -4.1694375e+03 1.3052808e+03 -3.3164466e+03 - -4.2083034e+03 1.2329065e+03 -3.3058230e+03 - -4.2446684e+03 1.1619810e+03 -3.2954484e+03 - -4.2786124e+03 1.0924533e+03 -3.2853739e+03 - -4.3102153e+03 1.0242652e+03 -3.2756456e+03 - -4.3395560e+03 9.5735313e+02 -3.2663045e+03 - -4.3667112e+03 8.9164918e+02 -3.2573871e+03 - -4.3917546e+03 8.2708210e+02 -3.2489259e+03 - -4.4147567e+03 7.6357826e+02 -3.2409491e+03 - -4.4357839e+03 7.0106235e+02 -3.2334817e+03 - -4.4548981e+03 6.3945796e+02 -3.2265453e+03 - -4.4721569e+03 5.7868808e+02 -3.2201588e+03 - -4.4876129e+03 5.1867544e+02 -3.2143383e+03 - -4.5013139e+03 4.5934281e+02 -3.2090976e+03 - -4.5133027e+03 4.0061317e+02 -3.2044486e+03 - -4.5236168e+03 3.4240983e+02 -3.2004012e+03 - -4.5322891e+03 2.8465654e+02 -3.1969634e+03 - -4.5393470e+03 2.2727746e+02 -3.1941421e+03 - -4.5448132e+03 1.7019718e+02 -3.1919425e+03 - -4.5487052e+03 1.1334064e+02 -3.1903686e+03 - -4.5510353e+03 5.6633100e+01 -3.1894231e+03 - -4.5518112e+03 0.0000000e+00 -3.1891078e+03 - -4.5510353e+03 -5.6633100e+01 -3.1894231e+03 - -4.5487052e+03 -1.1334064e+02 -3.1903686e+03 - -4.5448132e+03 -1.7019718e+02 -3.1919425e+03 - -4.5393470e+03 -2.2727746e+02 -3.1941421e+03 - -4.5322891e+03 -2.8465654e+02 -3.1969634e+03 - -4.5236168e+03 -3.4240983e+02 -3.2004012e+03 - -4.5133027e+03 -4.0061317e+02 -3.2044486e+03 - -4.5013139e+03 -4.5934281e+02 -3.2090976e+03 - -4.4876129e+03 -5.1867544e+02 -3.2143383e+03 - -4.4721569e+03 -5.7868808e+02 -3.2201588e+03 - -4.4548981e+03 -6.3945796e+02 -3.2265453e+03 - -4.4357839e+03 -7.0106235e+02 -3.2334817e+03 - -4.4147567e+03 -7.6357826e+02 -3.2409491e+03 - -4.3917546e+03 -8.2708210e+02 -3.2489259e+03 - -4.3667112e+03 -8.9164918e+02 -3.2573871e+03 - -4.3395560e+03 -9.5735313e+02 -3.2663045e+03 - -4.3102153e+03 -1.0242652e+03 -3.2756456e+03 - -4.2786124e+03 -1.0924533e+03 -3.2853739e+03 - -4.2446684e+03 -1.1619810e+03 -3.2954484e+03 - -4.2083034e+03 -1.2329065e+03 -3.3058230e+03 - -4.1694375e+03 -1.3052808e+03 -3.3164466e+03 - -4.1279921e+03 -1.3791465e+03 -3.3272624e+03 - -4.0838917e+03 -1.4545362e+03 -3.3382081e+03 - -4.0370657e+03 -1.5314700e+03 -3.3492158e+03 - -3.9874506e+03 -1.6099541e+03 -3.3602118e+03 - -3.9349920e+03 -1.6899784e+03 -3.3711171e+03 - -3.8796475e+03 -1.7715147e+03 -3.3818474e+03 - -3.8213891e+03 -1.8545143e+03 -3.3923143e+03 - -3.7602061e+03 -1.9389064e+03 -3.4024255e+03 - -3.6961078e+03 -2.0245967e+03 -3.4120863e+03 - -3.6291259e+03 -2.1114658e+03 -3.4212009e+03 - -3.5593168e+03 -2.1993691e+03 -3.4296736e+03 - -3.4867636e+03 -2.2881365e+03 -3.4374114e+03 - -3.4115772e+03 -2.3775731e+03 -3.4443250e+03 - -3.3338966e+03 -2.4674612e+03 -3.4503314e+03 - -3.2538893e+03 -2.5575625e+03 -3.4553562e+03 - -3.1717491e+03 -2.6476214e+03 -3.4593350e+03 - -3.0876947e+03 -2.7373693e+03 -3.4622157e+03 - -3.0019660e+03 -2.8265292e+03 -3.4639599e+03 - -2.9148208e+03 -2.9148208e+03 -3.4645439e+03 - -2.8265292e+03 -3.0019660e+03 -3.4639599e+03 - -2.7373693e+03 -3.0876947e+03 -3.4622157e+03 - -2.6476214e+03 -3.1717491e+03 -3.4593350e+03 - -2.5575625e+03 -3.2538893e+03 -3.4553562e+03 - -2.4674612e+03 -3.3338966e+03 -3.4503314e+03 - -2.3775731e+03 -3.4115772e+03 -3.4443250e+03 - -2.2881365e+03 -3.4867636e+03 -3.4374114e+03 - -2.1993691e+03 -3.5593168e+03 -3.4296736e+03 - -2.1114658e+03 -3.6291259e+03 -3.4212009e+03 - -2.0245967e+03 -3.6961078e+03 -3.4120863e+03 - -1.9389064e+03 -3.7602061e+03 -3.4024255e+03 - -1.8545143e+03 -3.8213891e+03 -3.3923143e+03 - -1.7715147e+03 -3.8796475e+03 -3.3818474e+03 - -1.6899784e+03 -3.9349920e+03 -3.3711171e+03 - -1.6099541e+03 -3.9874506e+03 -3.3602118e+03 - -1.5314700e+03 -4.0370657e+03 -3.3492158e+03 - -1.4545362e+03 -4.0838917e+03 -3.3382081e+03 - -1.3791465e+03 -4.1279921e+03 -3.3272624e+03 - -1.3052808e+03 -4.1694375e+03 -3.3164466e+03 - -1.2329065e+03 -4.2083034e+03 -3.3058230e+03 - -1.1619810e+03 -4.2446684e+03 -3.2954484e+03 - -1.0924533e+03 -4.2786124e+03 -3.2853739e+03 - -1.0242652e+03 -4.3102153e+03 -3.2756456e+03 - -9.5735313e+02 -4.3395560e+03 -3.2663045e+03 - -8.9164918e+02 -4.3667112e+03 -3.2573871e+03 - -8.2708210e+02 -4.3917546e+03 -3.2489259e+03 - -7.6357826e+02 -4.4147567e+03 -3.2409491e+03 - -7.0106235e+02 -4.4357839e+03 -3.2334817e+03 - -6.3945796e+02 -4.4548981e+03 -3.2265453e+03 - -5.7868808e+02 -4.4721569e+03 -3.2201588e+03 - -5.1867544e+02 -4.4876129e+03 -3.2143383e+03 - -4.5934281e+02 -4.5013139e+03 -3.2090976e+03 - -4.0061317e+02 -4.5133027e+03 -3.2044486e+03 - -3.4240983e+02 -4.5236168e+03 -3.2004012e+03 - -2.8465654e+02 -4.5322891e+03 -3.1969634e+03 - -2.2727746e+02 -4.5393470e+03 -3.1941421e+03 - -1.7019718e+02 -4.5448132e+03 -3.1919425e+03 - -1.1334064e+02 -4.5487052e+03 -3.1903686e+03 - -5.6633100e+01 -4.5510353e+03 -3.1894231e+03 - 0.0000000e+00 -4.5518112e+03 -3.1891078e+03 - 5.6633100e+01 -4.5510353e+03 -3.1894231e+03 - 1.1334064e+02 -4.5487052e+03 -3.1903686e+03 - 1.7019718e+02 -4.5448132e+03 -3.1919425e+03 - 2.2727746e+02 -4.5393470e+03 -3.1941421e+03 - 2.8465654e+02 -4.5322891e+03 -3.1969634e+03 - 3.4240983e+02 -4.5236168e+03 -3.2004012e+03 - 4.0061317e+02 -4.5133027e+03 -3.2044486e+03 - 4.5934281e+02 -4.5013139e+03 -3.2090976e+03 - 5.1867544e+02 -4.4876129e+03 -3.2143383e+03 - 5.7868808e+02 -4.4721569e+03 -3.2201588e+03 - 6.3945796e+02 -4.4548981e+03 -3.2265453e+03 - 7.0106235e+02 -4.4357839e+03 -3.2334817e+03 - 7.6357826e+02 -4.4147567e+03 -3.2409491e+03 - 8.2708210e+02 -4.3917546e+03 -3.2489259e+03 - 8.9164918e+02 -4.3667112e+03 -3.2573871e+03 - 9.5735313e+02 -4.3395560e+03 -3.2663045e+03 - 1.0242652e+03 -4.3102153e+03 -3.2756456e+03 - 1.0924533e+03 -4.2786124e+03 -3.2853739e+03 - 1.1619810e+03 -4.2446684e+03 -3.2954484e+03 - 1.2329065e+03 -4.2083034e+03 -3.3058230e+03 - 1.3052808e+03 -4.1694375e+03 -3.3164466e+03 - 1.3791465e+03 -4.1279921e+03 -3.3272624e+03 - 1.4545362e+03 -4.0838917e+03 -3.3382081e+03 - 1.5314700e+03 -4.0370657e+03 -3.3492158e+03 - 1.6099541e+03 -3.9874506e+03 -3.3602118e+03 - 1.6899784e+03 -3.9349920e+03 -3.3711171e+03 - 1.7715147e+03 -3.8796475e+03 -3.3818474e+03 - 1.8545143e+03 -3.8213891e+03 -3.3923143e+03 - 1.9389064e+03 -3.7602061e+03 -3.4024255e+03 - 2.0245967e+03 -3.6961078e+03 -3.4120863e+03 - 2.1114658e+03 -3.6291259e+03 -3.4212009e+03 - 2.1993691e+03 -3.5593168e+03 -3.4296736e+03 - 2.2881365e+03 -3.4867636e+03 -3.4374114e+03 - 2.3775731e+03 -3.4115772e+03 -3.4443250e+03 - 2.4674612e+03 -3.3338966e+03 -3.4503314e+03 - 2.5575625e+03 -3.2538893e+03 -3.4553562e+03 - 2.6476214e+03 -3.1717491e+03 -3.4593350e+03 - 2.7373693e+03 -3.0876947e+03 -3.4622157e+03 - 2.8265292e+03 -3.0019660e+03 -3.4639599e+03 - 2.9148208e+03 -2.9148208e+03 -3.4645439e+03 - 3.0019660e+03 -2.8265292e+03 -3.4639599e+03 - 3.0876947e+03 -2.7373693e+03 -3.4622157e+03 - 3.1717491e+03 -2.6476214e+03 -3.4593350e+03 - 3.2538893e+03 -2.5575625e+03 -3.4553562e+03 - 3.3338966e+03 -2.4674612e+03 -3.4503314e+03 - 3.4115772e+03 -2.3775731e+03 -3.4443250e+03 - 3.4867636e+03 -2.2881365e+03 -3.4374114e+03 - 3.5593168e+03 -2.1993691e+03 -3.4296736e+03 - 3.6291259e+03 -2.1114658e+03 -3.4212009e+03 - 3.6961078e+03 -2.0245967e+03 -3.4120863e+03 - 3.7602061e+03 -1.9389064e+03 -3.4024255e+03 - 3.8213891e+03 -1.8545143e+03 -3.3923143e+03 - 3.8796475e+03 -1.7715147e+03 -3.3818474e+03 - 3.9349920e+03 -1.6899784e+03 -3.3711171e+03 - 3.9874506e+03 -1.6099541e+03 -3.3602118e+03 - 4.0370657e+03 -1.5314700e+03 -3.3492158e+03 - 4.0838917e+03 -1.4545362e+03 -3.3382081e+03 - 4.1279921e+03 -1.3791465e+03 -3.3272624e+03 - 4.1694375e+03 -1.3052808e+03 -3.3164466e+03 - 4.2083034e+03 -1.2329065e+03 -3.3058230e+03 - 4.2446684e+03 -1.1619810e+03 -3.2954484e+03 - 4.2786124e+03 -1.0924533e+03 -3.2853739e+03 - 4.3102153e+03 -1.0242652e+03 -3.2756456e+03 - 4.3395560e+03 -9.5735313e+02 -3.2663045e+03 - 4.3667112e+03 -8.9164918e+02 -3.2573871e+03 - 4.3917546e+03 -8.2708210e+02 -3.2489259e+03 - 4.4147567e+03 -7.6357826e+02 -3.2409491e+03 - 4.4357839e+03 -7.0106235e+02 -3.2334817e+03 - 4.4548981e+03 -6.3945796e+02 -3.2265453e+03 - 4.4721569e+03 -5.7868808e+02 -3.2201588e+03 - 4.4876129e+03 -5.1867544e+02 -3.2143383e+03 - 4.5013139e+03 -4.5934281e+02 -3.2090976e+03 - 4.5133027e+03 -4.0061317e+02 -3.2044486e+03 - 4.5236168e+03 -3.4240983e+02 -3.2004012e+03 - 4.5322891e+03 -2.8465654e+02 -3.1969634e+03 - 4.5393470e+03 -2.2727746e+02 -3.1941421e+03 - 4.5448132e+03 -1.7019718e+02 -3.1919425e+03 - 4.5487052e+03 -1.1334064e+02 -3.1903686e+03 - 4.5510353e+03 -5.6633100e+01 -3.1894231e+03 - 4.5518112e+03 0.0000000e+00 -3.1891078e+03 - 4.5116667e+03 -4.8134273e-09 -3.2455215e+03 - 4.5108874e+03 5.6779702e+01 -3.2458268e+03 - 4.5085469e+03 1.1363222e+02 -3.2467421e+03 - 4.5046380e+03 1.7063046e+02 -3.2482657e+03 - 4.4991487e+03 2.2784747e+02 -3.2503946e+03 - 4.4920620e+03 2.8535652e+02 -3.2531246e+03 - 4.4833562e+03 3.4323116e+02 -3.2564504e+03 - 4.4730045e+03 4.0154520e+02 -3.2603649e+03 - 4.4609756e+03 4.6037277e+02 -3.2648596e+03 - 4.4472330e+03 5.1978821e+02 -3.2699243e+03 - 4.4317359e+03 5.7986600e+02 -3.2755469e+03 - 4.4144382e+03 6.4068062e+02 -3.2817133e+03 - 4.3952895e+03 7.0230632e+02 -3.2884068e+03 - 4.3742350e+03 7.6481685e+02 -3.2956086e+03 - 4.3512156e+03 8.2828506e+02 -3.3032966e+03 - 4.3261680e+03 8.9278241e+02 -3.3114459e+03 - 4.2990256e+03 9.5837838e+02 -3.3200280e+03 - 4.2697187e+03 1.0251398e+03 -3.3290108e+03 - 4.2381751e+03 1.0931298e+03 -3.3383582e+03 - 4.2043208e+03 1.1624071e+03 -3.3480296e+03 - 4.1680815e+03 1.2330246e+03 -3.3579799e+03 - 4.1293829e+03 1.3050281e+03 -3.3681591e+03 - 4.0881526e+03 1.3784549e+03 -3.3785122e+03 - 4.0443216e+03 1.4533322e+03 -3.3889788e+03 - 3.9978260e+03 1.5296750e+03 -3.3994935e+03 - 3.9486089e+03 1.6074849e+03 -3.4099859e+03 - 3.8966226e+03 1.6867477e+03 -3.4203803e+03 - 3.8418311e+03 1.7674316e+03 -3.4305968e+03 - 3.7842124e+03 1.8494855e+03 -3.4405517e+03 - 3.7237609e+03 1.9328377e+03 -3.4501581e+03 - 3.6604901e+03 2.0173939e+03 -3.4593271e+03 - 3.5944346e+03 2.1030369e+03 -3.4679691e+03 - 3.5256522e+03 2.1896257e+03 -3.4759949e+03 - 3.4542253e+03 2.2769961e+03 -3.4833181e+03 - 3.3802625e+03 2.3649611e+03 -3.4898559e+03 - 3.3038982e+03 2.4533127e+03 -3.4955320e+03 - 3.2252927e+03 2.5418244e+03 -3.5002774e+03 - 3.1446310e+03 2.6302540e+03 -3.5040331e+03 - 3.0621206e+03 2.7183476e+03 -3.5067512e+03 - 2.9779885e+03 2.8058436e+03 -3.5083965e+03 - 2.8924779e+03 2.8924779e+03 -3.5089473e+03 - 2.8058436e+03 2.9779885e+03 -3.5083965e+03 - 2.7183476e+03 3.0621206e+03 -3.5067512e+03 - 2.6302540e+03 3.1446310e+03 -3.5040331e+03 - 2.5418244e+03 3.2252927e+03 -3.5002774e+03 - 2.4533127e+03 3.3038982e+03 -3.4955320e+03 - 2.3649611e+03 3.3802625e+03 -3.4898559e+03 - 2.2769961e+03 3.4542253e+03 -3.4833181e+03 - 2.1896257e+03 3.5256522e+03 -3.4759949e+03 - 2.1030369e+03 3.5944346e+03 -3.4679691e+03 - 2.0173939e+03 3.6604901e+03 -3.4593271e+03 - 1.9328377e+03 3.7237609e+03 -3.4501581e+03 - 1.8494855e+03 3.7842124e+03 -3.4405517e+03 - 1.7674316e+03 3.8418311e+03 -3.4305968e+03 - 1.6867477e+03 3.8966226e+03 -3.4203803e+03 - 1.6074849e+03 3.9486089e+03 -3.4099859e+03 - 1.5296750e+03 3.9978260e+03 -3.3994935e+03 - 1.4533322e+03 4.0443216e+03 -3.3889788e+03 - 1.3784549e+03 4.0881526e+03 -3.3785122e+03 - 1.3050281e+03 4.1293829e+03 -3.3681591e+03 - 1.2330246e+03 4.1680815e+03 -3.3579799e+03 - 1.1624071e+03 4.2043208e+03 -3.3480296e+03 - 1.0931298e+03 4.2381751e+03 -3.3383582e+03 - 1.0251398e+03 4.2697187e+03 -3.3290108e+03 - 9.5837838e+02 4.2990256e+03 -3.3200280e+03 - 8.9278241e+02 4.3261680e+03 -3.3114459e+03 - 8.2828506e+02 4.3512156e+03 -3.3032966e+03 - 7.6481685e+02 4.3742350e+03 -3.2956086e+03 - 7.0230632e+02 4.3952895e+03 -3.2884068e+03 - 6.4068062e+02 4.4144382e+03 -3.2817133e+03 - 5.7986600e+02 4.4317359e+03 -3.2755469e+03 - 5.1978821e+02 4.4472330e+03 -3.2699243e+03 - 4.6037277e+02 4.4609756e+03 -3.2648596e+03 - 4.0154520e+02 4.4730045e+03 -3.2603649e+03 - 3.4323116e+02 4.4833562e+03 -3.2564504e+03 - 2.8535652e+02 4.4920620e+03 -3.2531246e+03 - 2.2784747e+02 4.4991487e+03 -3.2503946e+03 - 1.7063046e+02 4.5046380e+03 -3.2482657e+03 - 1.1363222e+02 4.5085469e+03 -3.2467421e+03 - 5.6779702e+01 4.5108874e+03 -3.2458268e+03 - 4.8134273e-09 4.5116667e+03 -3.2455215e+03 - -5.6779702e+01 4.5108874e+03 -3.2458268e+03 - -1.1363222e+02 4.5085469e+03 -3.2467421e+03 - -1.7063046e+02 4.5046380e+03 -3.2482657e+03 - -2.2784747e+02 4.4991487e+03 -3.2503946e+03 - -2.8535652e+02 4.4920620e+03 -3.2531246e+03 - -3.4323116e+02 4.4833562e+03 -3.2564504e+03 - -4.0154520e+02 4.4730045e+03 -3.2603649e+03 - -4.6037277e+02 4.4609756e+03 -3.2648596e+03 - -5.1978821e+02 4.4472330e+03 -3.2699243e+03 - -5.7986600e+02 4.4317359e+03 -3.2755469e+03 - -6.4068062e+02 4.4144382e+03 -3.2817133e+03 - -7.0230632e+02 4.3952895e+03 -3.2884068e+03 - -7.6481685e+02 4.3742350e+03 -3.2956086e+03 - -8.2828506e+02 4.3512156e+03 -3.3032966e+03 - -8.9278241e+02 4.3261680e+03 -3.3114459e+03 - -9.5837838e+02 4.2990256e+03 -3.3200280e+03 - -1.0251398e+03 4.2697187e+03 -3.3290108e+03 - -1.0931298e+03 4.2381751e+03 -3.3383582e+03 - -1.1624071e+03 4.2043208e+03 -3.3480296e+03 - -1.2330246e+03 4.1680815e+03 -3.3579799e+03 - -1.3050281e+03 4.1293829e+03 -3.3681591e+03 - -1.3784549e+03 4.0881526e+03 -3.3785122e+03 - -1.4533322e+03 4.0443216e+03 -3.3889788e+03 - -1.5296750e+03 3.9978260e+03 -3.3994935e+03 - -1.6074849e+03 3.9486089e+03 -3.4099859e+03 - -1.6867477e+03 3.8966226e+03 -3.4203803e+03 - -1.7674316e+03 3.8418311e+03 -3.4305968e+03 - -1.8494855e+03 3.7842124e+03 -3.4405517e+03 - -1.9328377e+03 3.7237609e+03 -3.4501581e+03 - -2.0173939e+03 3.6604901e+03 -3.4593271e+03 - -2.1030369e+03 3.5944346e+03 -3.4679691e+03 - -2.1896257e+03 3.5256522e+03 -3.4759949e+03 - -2.2769961e+03 3.4542253e+03 -3.4833181e+03 - -2.3649611e+03 3.3802625e+03 -3.4898559e+03 - -2.4533127e+03 3.3038982e+03 -3.4955320e+03 - -2.5418244e+03 3.2252927e+03 -3.5002774e+03 - -2.6302540e+03 3.1446310e+03 -3.5040331e+03 - -2.7183476e+03 3.0621206e+03 -3.5067512e+03 - -2.8058436e+03 2.9779885e+03 -3.5083965e+03 - -2.8924779e+03 2.8924779e+03 -3.5089473e+03 - -2.9779885e+03 2.8058436e+03 -3.5083965e+03 - -3.0621206e+03 2.7183476e+03 -3.5067512e+03 - -3.1446310e+03 2.6302540e+03 -3.5040331e+03 - -3.2252927e+03 2.5418244e+03 -3.5002774e+03 - -3.3038982e+03 2.4533127e+03 -3.4955320e+03 - -3.3802625e+03 2.3649611e+03 -3.4898559e+03 - -3.4542253e+03 2.2769961e+03 -3.4833181e+03 - -3.5256522e+03 2.1896257e+03 -3.4759949e+03 - -3.5944346e+03 2.1030369e+03 -3.4679691e+03 - -3.6604901e+03 2.0173939e+03 -3.4593271e+03 - -3.7237609e+03 1.9328377e+03 -3.4501581e+03 - -3.7842124e+03 1.8494855e+03 -3.4405517e+03 - -3.8418311e+03 1.7674316e+03 -3.4305968e+03 - -3.8966226e+03 1.6867477e+03 -3.4203803e+03 - -3.9486089e+03 1.6074849e+03 -3.4099859e+03 - -3.9978260e+03 1.5296750e+03 -3.3994935e+03 - -4.0443216e+03 1.4533322e+03 -3.3889788e+03 - -4.0881526e+03 1.3784549e+03 -3.3785122e+03 - -4.1293829e+03 1.3050281e+03 -3.3681591e+03 - -4.1680815e+03 1.2330246e+03 -3.3579799e+03 - -4.2043208e+03 1.1624071e+03 -3.3480296e+03 - -4.2381751e+03 1.0931298e+03 -3.3383582e+03 - -4.2697187e+03 1.0251398e+03 -3.3290108e+03 - -4.2990256e+03 9.5837838e+02 -3.3200280e+03 - -4.3261680e+03 8.9278241e+02 -3.3114459e+03 - -4.3512156e+03 8.2828506e+02 -3.3032966e+03 - -4.3742350e+03 7.6481685e+02 -3.2956086e+03 - -4.3952895e+03 7.0230632e+02 -3.2884068e+03 - -4.4144382e+03 6.4068062e+02 -3.2817133e+03 - -4.4317359e+03 5.7986600e+02 -3.2755469e+03 - -4.4472330e+03 5.1978821e+02 -3.2699243e+03 - -4.4609756e+03 4.6037277e+02 -3.2648596e+03 - -4.4730045e+03 4.0154520e+02 -3.2603649e+03 - -4.4833562e+03 3.4323116e+02 -3.2564504e+03 - -4.4920620e+03 2.8535652e+02 -3.2531246e+03 - -4.4991487e+03 2.2784747e+02 -3.2503946e+03 - -4.5046380e+03 1.7063046e+02 -3.2482657e+03 - -4.5085469e+03 1.1363222e+02 -3.2467421e+03 - -4.5108874e+03 5.6779702e+01 -3.2458268e+03 - -4.5116667e+03 0.0000000e+00 -3.2455215e+03 - -4.5108874e+03 -5.6779702e+01 -3.2458268e+03 - -4.5085469e+03 -1.1363222e+02 -3.2467421e+03 - -4.5046380e+03 -1.7063046e+02 -3.2482657e+03 - -4.4991487e+03 -2.2784747e+02 -3.2503946e+03 - -4.4920620e+03 -2.8535652e+02 -3.2531246e+03 - -4.4833562e+03 -3.4323116e+02 -3.2564504e+03 - -4.4730045e+03 -4.0154520e+02 -3.2603649e+03 - -4.4609756e+03 -4.6037277e+02 -3.2648596e+03 - -4.4472330e+03 -5.1978821e+02 -3.2699243e+03 - -4.4317359e+03 -5.7986600e+02 -3.2755469e+03 - -4.4144382e+03 -6.4068062e+02 -3.2817133e+03 - -4.3952895e+03 -7.0230632e+02 -3.2884068e+03 - -4.3742350e+03 -7.6481685e+02 -3.2956086e+03 - -4.3512156e+03 -8.2828506e+02 -3.3032966e+03 - -4.3261680e+03 -8.9278241e+02 -3.3114459e+03 - -4.2990256e+03 -9.5837838e+02 -3.3200280e+03 - -4.2697187e+03 -1.0251398e+03 -3.3290108e+03 - -4.2381751e+03 -1.0931298e+03 -3.3383582e+03 - -4.2043208e+03 -1.1624071e+03 -3.3480296e+03 - -4.1680815e+03 -1.2330246e+03 -3.3579799e+03 - -4.1293829e+03 -1.3050281e+03 -3.3681591e+03 - -4.0881526e+03 -1.3784549e+03 -3.3785122e+03 - -4.0443216e+03 -1.4533322e+03 -3.3889788e+03 - -3.9978260e+03 -1.5296750e+03 -3.3994935e+03 - -3.9486089e+03 -1.6074849e+03 -3.4099859e+03 - -3.8966226e+03 -1.6867477e+03 -3.4203803e+03 - -3.8418311e+03 -1.7674316e+03 -3.4305968e+03 - -3.7842124e+03 -1.8494855e+03 -3.4405517e+03 - -3.7237609e+03 -1.9328377e+03 -3.4501581e+03 - -3.6604901e+03 -2.0173939e+03 -3.4593271e+03 - -3.5944346e+03 -2.1030369e+03 -3.4679691e+03 - -3.5256522e+03 -2.1896257e+03 -3.4759949e+03 - -3.4542253e+03 -2.2769961e+03 -3.4833181e+03 - -3.3802625e+03 -2.3649611e+03 -3.4898559e+03 - -3.3038982e+03 -2.4533127e+03 -3.4955320e+03 - -3.2252927e+03 -2.5418244e+03 -3.5002774e+03 - -3.1446310e+03 -2.6302540e+03 -3.5040331e+03 - -3.0621206e+03 -2.7183476e+03 -3.5067512e+03 - -2.9779885e+03 -2.8058436e+03 -3.5083965e+03 - -2.8924779e+03 -2.8924779e+03 -3.5089473e+03 - -2.8058436e+03 -2.9779885e+03 -3.5083965e+03 - -2.7183476e+03 -3.0621206e+03 -3.5067512e+03 - -2.6302540e+03 -3.1446310e+03 -3.5040331e+03 - -2.5418244e+03 -3.2252927e+03 -3.5002774e+03 - -2.4533127e+03 -3.3038982e+03 -3.4955320e+03 - -2.3649611e+03 -3.3802625e+03 -3.4898559e+03 - -2.2769961e+03 -3.4542253e+03 -3.4833181e+03 - -2.1896257e+03 -3.5256522e+03 -3.4759949e+03 - -2.1030369e+03 -3.5944346e+03 -3.4679691e+03 - -2.0173939e+03 -3.6604901e+03 -3.4593271e+03 - -1.9328377e+03 -3.7237609e+03 -3.4501581e+03 - -1.8494855e+03 -3.7842124e+03 -3.4405517e+03 - -1.7674316e+03 -3.8418311e+03 -3.4305968e+03 - -1.6867477e+03 -3.8966226e+03 -3.4203803e+03 - -1.6074849e+03 -3.9486089e+03 -3.4099859e+03 - -1.5296750e+03 -3.9978260e+03 -3.3994935e+03 - -1.4533322e+03 -4.0443216e+03 -3.3889788e+03 - -1.3784549e+03 -4.0881526e+03 -3.3785122e+03 - -1.3050281e+03 -4.1293829e+03 -3.3681591e+03 - -1.2330246e+03 -4.1680815e+03 -3.3579799e+03 - -1.1624071e+03 -4.2043208e+03 -3.3480296e+03 - -1.0931298e+03 -4.2381751e+03 -3.3383582e+03 - -1.0251398e+03 -4.2697187e+03 -3.3290108e+03 - -9.5837838e+02 -4.2990256e+03 -3.3200280e+03 - -8.9278241e+02 -4.3261680e+03 -3.3114459e+03 - -8.2828506e+02 -4.3512156e+03 -3.3032966e+03 - -7.6481685e+02 -4.3742350e+03 -3.2956086e+03 - -7.0230632e+02 -4.3952895e+03 -3.2884068e+03 - -6.4068062e+02 -4.4144382e+03 -3.2817133e+03 - -5.7986600e+02 -4.4317359e+03 -3.2755469e+03 - -5.1978821e+02 -4.4472330e+03 -3.2699243e+03 - -4.6037277e+02 -4.4609756e+03 -3.2648596e+03 - -4.0154520e+02 -4.4730045e+03 -3.2603649e+03 - -3.4323116e+02 -4.4833562e+03 -3.2564504e+03 - -2.8535652e+02 -4.4920620e+03 -3.2531246e+03 - -2.2784747e+02 -4.4991487e+03 -3.2503946e+03 - -1.7063046e+02 -4.5046380e+03 -3.2482657e+03 - -1.1363222e+02 -4.5085469e+03 -3.2467421e+03 - -5.6779702e+01 -4.5108874e+03 -3.2458268e+03 - -4.8134273e-09 -4.5116667e+03 -3.2455215e+03 - 5.6779702e+01 -4.5108874e+03 -3.2458268e+03 - 1.1363222e+02 -4.5085469e+03 -3.2467421e+03 - 1.7063046e+02 -4.5046380e+03 -3.2482657e+03 - 2.2784747e+02 -4.4991487e+03 -3.2503946e+03 - 2.8535652e+02 -4.4920620e+03 -3.2531246e+03 - 3.4323116e+02 -4.4833562e+03 -3.2564504e+03 - 4.0154520e+02 -4.4730045e+03 -3.2603649e+03 - 4.6037277e+02 -4.4609756e+03 -3.2648596e+03 - 5.1978821e+02 -4.4472330e+03 -3.2699243e+03 - 5.7986600e+02 -4.4317359e+03 -3.2755469e+03 - 6.4068062e+02 -4.4144382e+03 -3.2817133e+03 - 7.0230632e+02 -4.3952895e+03 -3.2884068e+03 - 7.6481685e+02 -4.3742350e+03 -3.2956086e+03 - 8.2828506e+02 -4.3512156e+03 -3.3032966e+03 - 8.9278241e+02 -4.3261680e+03 -3.3114459e+03 - 9.5837838e+02 -4.2990256e+03 -3.3200280e+03 - 1.0251398e+03 -4.2697187e+03 -3.3290108e+03 - 1.0931298e+03 -4.2381751e+03 -3.3383582e+03 - 1.1624071e+03 -4.2043208e+03 -3.3480296e+03 - 1.2330246e+03 -4.1680815e+03 -3.3579799e+03 - 1.3050281e+03 -4.1293829e+03 -3.3681591e+03 - 1.3784549e+03 -4.0881526e+03 -3.3785122e+03 - 1.4533322e+03 -4.0443216e+03 -3.3889788e+03 - 1.5296750e+03 -3.9978260e+03 -3.3994935e+03 - 1.6074849e+03 -3.9486089e+03 -3.4099859e+03 - 1.6867477e+03 -3.8966226e+03 -3.4203803e+03 - 1.7674316e+03 -3.8418311e+03 -3.4305968e+03 - 1.8494855e+03 -3.7842124e+03 -3.4405517e+03 - 1.9328377e+03 -3.7237609e+03 -3.4501581e+03 - 2.0173939e+03 -3.6604901e+03 -3.4593271e+03 - 2.1030369e+03 -3.5944346e+03 -3.4679691e+03 - 2.1896257e+03 -3.5256522e+03 -3.4759949e+03 - 2.2769961e+03 -3.4542253e+03 -3.4833181e+03 - 2.3649611e+03 -3.3802625e+03 -3.4898559e+03 - 2.4533127e+03 -3.3038982e+03 -3.4955320e+03 - 2.5418244e+03 -3.2252927e+03 -3.5002774e+03 - 2.6302540e+03 -3.1446310e+03 -3.5040331e+03 - 2.7183476e+03 -3.0621206e+03 -3.5067512e+03 - 2.8058436e+03 -2.9779885e+03 -3.5083965e+03 - 2.8924779e+03 -2.8924779e+03 -3.5089473e+03 - 2.9779885e+03 -2.8058436e+03 -3.5083965e+03 - 3.0621206e+03 -2.7183476e+03 -3.5067512e+03 - 3.1446310e+03 -2.6302540e+03 -3.5040331e+03 - 3.2252927e+03 -2.5418244e+03 -3.5002774e+03 - 3.3038982e+03 -2.4533127e+03 -3.4955320e+03 - 3.3802625e+03 -2.3649611e+03 -3.4898559e+03 - 3.4542253e+03 -2.2769961e+03 -3.4833181e+03 - 3.5256522e+03 -2.1896257e+03 -3.4759949e+03 - 3.5944346e+03 -2.1030369e+03 -3.4679691e+03 - 3.6604901e+03 -2.0173939e+03 -3.4593271e+03 - 3.7237609e+03 -1.9328377e+03 -3.4501581e+03 - 3.7842124e+03 -1.8494855e+03 -3.4405517e+03 - 3.8418311e+03 -1.7674316e+03 -3.4305968e+03 - 3.8966226e+03 -1.6867477e+03 -3.4203803e+03 - 3.9486089e+03 -1.6074849e+03 -3.4099859e+03 - 3.9978260e+03 -1.5296750e+03 -3.3994935e+03 - 4.0443216e+03 -1.4533322e+03 -3.3889788e+03 - 4.0881526e+03 -1.3784549e+03 -3.3785122e+03 - 4.1293829e+03 -1.3050281e+03 -3.3681591e+03 - 4.1680815e+03 -1.2330246e+03 -3.3579799e+03 - 4.2043208e+03 -1.1624071e+03 -3.3480296e+03 - 4.2381751e+03 -1.0931298e+03 -3.3383582e+03 - 4.2697187e+03 -1.0251398e+03 -3.3290108e+03 - 4.2990256e+03 -9.5837838e+02 -3.3200280e+03 - 4.3261680e+03 -8.9278241e+02 -3.3114459e+03 - 4.3512156e+03 -8.2828506e+02 -3.3032966e+03 - 4.3742350e+03 -7.6481685e+02 -3.2956086e+03 - 4.3952895e+03 -7.0230632e+02 -3.2884068e+03 - 4.4144382e+03 -6.4068062e+02 -3.2817133e+03 - 4.4317359e+03 -5.7986600e+02 -3.2755469e+03 - 4.4472330e+03 -5.1978821e+02 -3.2699243e+03 - 4.4609756e+03 -4.6037277e+02 -3.2648596e+03 - 4.4730045e+03 -4.0154520e+02 -3.2603649e+03 - 4.4833562e+03 -3.4323116e+02 -3.2564504e+03 - 4.4920620e+03 -2.8535652e+02 -3.2531246e+03 - 4.4991487e+03 -2.2784747e+02 -3.2503946e+03 - 4.5046380e+03 -1.7063046e+02 -3.2482657e+03 - 4.5085469e+03 -1.1363222e+02 -3.2467421e+03 - 4.5108874e+03 -5.6779702e+01 -3.2458268e+03 - 4.5116667e+03 0.0000000e+00 -3.2455215e+03 - 4.4710557e+03 0.0000000e+00 -3.3002819e+03 - 4.4702734e+03 5.6912928e+01 -3.3005771e+03 - 4.4679242e+03 1.1389697e+02 -3.3014620e+03 - 4.4640010e+03 1.7102330e+02 -3.3029348e+03 - 4.4584923e+03 2.2836320e+02 -3.3049926e+03 - 4.4513817e+03 2.8598810e+02 -3.3076309e+03 - 4.4426482e+03 3.4396958e+02 -3.3108441e+03 - 4.4322661e+03 4.0237941e+02 -3.3146249e+03 - 4.4202052e+03 4.6128948e+02 -3.3189647e+03 - 4.4064305e+03 5.2077176e+02 -3.3238530e+03 - 4.3909027e+03 5.8089817e+02 -3.3292774e+03 - 4.3735779e+03 6.4174039e+02 -3.3352235e+03 - 4.3544079e+03 7.0336966e+02 -3.3416744e+03 - 4.3333403e+03 7.6585646e+02 -3.3486111e+03 - 4.3103188e+03 8.2927011e+02 -3.3560114e+03 - 4.2852837e+03 8.9367826e+02 -3.3638504e+03 - 4.2581718e+03 9.5914636e+02 -3.3720998e+03 - 4.2289174e+03 1.0257369e+03 -3.3807276e+03 - 4.1974528e+03 1.0935084e+03 -3.3896982e+03 - 4.1637089e+03 1.1625149e+03 -3.3989718e+03 - 4.1276164e+03 1.2328043e+03 -3.4085041e+03 - 4.0891068e+03 1.3044173e+03 -3.4182466e+03 - 4.0481134e+03 1.3773864e+03 -3.4281458e+03 - 4.0045735e+03 1.4517336e+03 -3.4381436e+03 - 3.9584292e+03 1.5274696e+03 -3.4481771e+03 - 3.9096302e+03 1.6045913e+03 -3.4581787e+03 - 3.8581349e+03 1.6830809e+03 -3.4680767e+03 - 3.8039133e+03 1.7629038e+03 -3.4777950e+03 - 3.7469485e+03 1.8440069e+03 -3.4872547e+03 - 3.6872400e+03 1.9263175e+03 -3.4963738e+03 - 3.6248046e+03 2.0097422e+03 -3.5050690e+03 - 3.5596794e+03 2.0941658e+03 -3.5132566e+03 - 3.4919233e+03 2.1794513e+03 -3.5208536e+03 - 3.4216180e+03 2.2654403e+03 -3.5277796e+03 - 3.3488692e+03 2.3519534e+03 -3.5339582e+03 - 3.2738069e+03 2.4387921e+03 -3.5393187e+03 - 3.1965847e+03 2.5257410e+03 -3.5437977e+03 - 3.1173789e+03 2.6125707e+03 -3.5473408e+03 - 3.0363862e+03 2.6990411e+03 -3.5499041e+03 - 2.9538216e+03 2.7849054e+03 -3.5514553e+03 - 2.8699145e+03 2.8699145e+03 -3.5519746e+03 - 2.7849054e+03 2.9538216e+03 -3.5514553e+03 - 2.6990411e+03 3.0363862e+03 -3.5499041e+03 - 2.6125707e+03 3.1173789e+03 -3.5473408e+03 - 2.5257410e+03 3.1965847e+03 -3.5437977e+03 - 2.4387921e+03 3.2738069e+03 -3.5393187e+03 - 2.3519534e+03 3.3488692e+03 -3.5339582e+03 - 2.2654403e+03 3.4216180e+03 -3.5277796e+03 - 2.1794513e+03 3.4919233e+03 -3.5208536e+03 - 2.0941658e+03 3.5596794e+03 -3.5132566e+03 - 2.0097422e+03 3.6248046e+03 -3.5050690e+03 - 1.9263175e+03 3.6872400e+03 -3.4963738e+03 - 1.8440069e+03 3.7469485e+03 -3.4872547e+03 - 1.7629038e+03 3.8039133e+03 -3.4777950e+03 - 1.6830809e+03 3.8581349e+03 -3.4680767e+03 - 1.6045913e+03 3.9096302e+03 -3.4581787e+03 - 1.5274696e+03 3.9584292e+03 -3.4481771e+03 - 1.4517336e+03 4.0045735e+03 -3.4381436e+03 - 1.3773864e+03 4.0481134e+03 -3.4281458e+03 - 1.3044173e+03 4.0891068e+03 -3.4182466e+03 - 1.2328043e+03 4.1276164e+03 -3.4085041e+03 - 1.1625149e+03 4.1637089e+03 -3.3989718e+03 - 1.0935084e+03 4.1974528e+03 -3.3896982e+03 - 1.0257369e+03 4.2289174e+03 -3.3807276e+03 - 9.5914636e+02 4.2581718e+03 -3.3720998e+03 - 8.9367826e+02 4.2852837e+03 -3.3638504e+03 - 8.2927011e+02 4.3103188e+03 -3.3560114e+03 - 7.6585646e+02 4.3333403e+03 -3.3486111e+03 - 7.0336966e+02 4.3544079e+03 -3.3416744e+03 - 6.4174039e+02 4.3735779e+03 -3.3352235e+03 - 5.8089817e+02 4.3909027e+03 -3.3292774e+03 - 5.2077176e+02 4.4064305e+03 -3.3238530e+03 - 4.6128948e+02 4.4202052e+03 -3.3189647e+03 - 4.0237941e+02 4.4322661e+03 -3.3146249e+03 - 3.4396958e+02 4.4426482e+03 -3.3108441e+03 - 2.8598810e+02 4.4513817e+03 -3.3076309e+03 - 2.2836320e+02 4.4584923e+03 -3.3049926e+03 - 1.7102330e+02 4.4640010e+03 -3.3029348e+03 - 1.1389697e+02 4.4679242e+03 -3.3014620e+03 - 5.6912928e+01 4.4702734e+03 -3.3005771e+03 - 0.0000000e+00 4.4710557e+03 -3.3002819e+03 - -5.6912928e+01 4.4702734e+03 -3.3005771e+03 - -1.1389697e+02 4.4679242e+03 -3.3014620e+03 - -1.7102330e+02 4.4640010e+03 -3.3029348e+03 - -2.2836320e+02 4.4584923e+03 -3.3049926e+03 - -2.8598810e+02 4.4513817e+03 -3.3076309e+03 - -3.4396958e+02 4.4426482e+03 -3.3108441e+03 - -4.0237941e+02 4.4322661e+03 -3.3146249e+03 - -4.6128948e+02 4.4202052e+03 -3.3189647e+03 - -5.2077176e+02 4.4064305e+03 -3.3238530e+03 - -5.8089817e+02 4.3909027e+03 -3.3292774e+03 - -6.4174039e+02 4.3735779e+03 -3.3352235e+03 - -7.0336966e+02 4.3544079e+03 -3.3416744e+03 - -7.6585646e+02 4.3333403e+03 -3.3486111e+03 - -8.2927011e+02 4.3103188e+03 -3.3560114e+03 - -8.9367826e+02 4.2852837e+03 -3.3638504e+03 - -9.5914636e+02 4.2581718e+03 -3.3720998e+03 - -1.0257369e+03 4.2289174e+03 -3.3807276e+03 - -1.0935084e+03 4.1974528e+03 -3.3896982e+03 - -1.1625149e+03 4.1637089e+03 -3.3989718e+03 - -1.2328043e+03 4.1276164e+03 -3.4085041e+03 - -1.3044173e+03 4.0891068e+03 -3.4182466e+03 - -1.3773864e+03 4.0481134e+03 -3.4281458e+03 - -1.4517336e+03 4.0045735e+03 -3.4381436e+03 - -1.5274696e+03 3.9584292e+03 -3.4481771e+03 - -1.6045913e+03 3.9096302e+03 -3.4581787e+03 - -1.6830809e+03 3.8581349e+03 -3.4680767e+03 - -1.7629038e+03 3.8039133e+03 -3.4777950e+03 - -1.8440069e+03 3.7469485e+03 -3.4872547e+03 - -1.9263175e+03 3.6872400e+03 -3.4963738e+03 - -2.0097422e+03 3.6248046e+03 -3.5050690e+03 - -2.0941658e+03 3.5596794e+03 -3.5132566e+03 - -2.1794513e+03 3.4919233e+03 -3.5208536e+03 - -2.2654403e+03 3.4216180e+03 -3.5277796e+03 - -2.3519534e+03 3.3488692e+03 -3.5339582e+03 - -2.4387921e+03 3.2738069e+03 -3.5393187e+03 - -2.5257410e+03 3.1965847e+03 -3.5437977e+03 - -2.6125707e+03 3.1173789e+03 -3.5473408e+03 - -2.6990411e+03 3.0363862e+03 -3.5499041e+03 - -2.7849054e+03 2.9538216e+03 -3.5514553e+03 - -2.8699145e+03 2.8699145e+03 -3.5519746e+03 - -2.9538216e+03 2.7849054e+03 -3.5514553e+03 - -3.0363862e+03 2.6990411e+03 -3.5499041e+03 - -3.1173789e+03 2.6125707e+03 -3.5473408e+03 - -3.1965847e+03 2.5257410e+03 -3.5437977e+03 - -3.2738069e+03 2.4387921e+03 -3.5393187e+03 - -3.3488692e+03 2.3519534e+03 -3.5339582e+03 - -3.4216180e+03 2.2654403e+03 -3.5277796e+03 - -3.4919233e+03 2.1794513e+03 -3.5208536e+03 - -3.5596794e+03 2.0941658e+03 -3.5132566e+03 - -3.6248046e+03 2.0097422e+03 -3.5050690e+03 - -3.6872400e+03 1.9263175e+03 -3.4963738e+03 - -3.7469485e+03 1.8440069e+03 -3.4872547e+03 - -3.8039133e+03 1.7629038e+03 -3.4777950e+03 - -3.8581349e+03 1.6830809e+03 -3.4680767e+03 - -3.9096302e+03 1.6045913e+03 -3.4581787e+03 - -3.9584292e+03 1.5274696e+03 -3.4481771e+03 - -4.0045735e+03 1.4517336e+03 -3.4381436e+03 - -4.0481134e+03 1.3773864e+03 -3.4281458e+03 - -4.0891068e+03 1.3044173e+03 -3.4182466e+03 - -4.1276164e+03 1.2328043e+03 -3.4085041e+03 - -4.1637089e+03 1.1625149e+03 -3.3989718e+03 - -4.1974528e+03 1.0935084e+03 -3.3896982e+03 - -4.2289174e+03 1.0257369e+03 -3.3807276e+03 - -4.2581718e+03 9.5914636e+02 -3.3720998e+03 - -4.2852837e+03 8.9367826e+02 -3.3638504e+03 - -4.3103188e+03 8.2927011e+02 -3.3560114e+03 - -4.3333403e+03 7.6585646e+02 -3.3486111e+03 - -4.3544079e+03 7.0336966e+02 -3.3416744e+03 - -4.3735779e+03 6.4174039e+02 -3.3352235e+03 - -4.3909027e+03 5.8089817e+02 -3.3292774e+03 - -4.4064305e+03 5.2077176e+02 -3.3238530e+03 - -4.4202052e+03 4.6128948e+02 -3.3189647e+03 - -4.4322661e+03 4.0237941e+02 -3.3146249e+03 - -4.4426482e+03 3.4396958e+02 -3.3108441e+03 - -4.4513817e+03 2.8598810e+02 -3.3076309e+03 - -4.4584923e+03 2.2836320e+02 -3.3049926e+03 - -4.4640010e+03 1.7102330e+02 -3.3029348e+03 - -4.4679242e+03 1.1389697e+02 -3.3014620e+03 - -4.4702734e+03 5.6912928e+01 -3.3005771e+03 - -4.4710557e+03 0.0000000e+00 -3.3002819e+03 - -4.4702734e+03 -5.6912928e+01 -3.3005771e+03 - -4.4679242e+03 -1.1389697e+02 -3.3014620e+03 - -4.4640010e+03 -1.7102330e+02 -3.3029348e+03 - -4.4584923e+03 -2.2836320e+02 -3.3049926e+03 - -4.4513817e+03 -2.8598810e+02 -3.3076309e+03 - -4.4426482e+03 -3.4396958e+02 -3.3108441e+03 - -4.4322661e+03 -4.0237941e+02 -3.3146249e+03 - -4.4202052e+03 -4.6128948e+02 -3.3189647e+03 - -4.4064305e+03 -5.2077176e+02 -3.3238530e+03 - -4.3909027e+03 -5.8089817e+02 -3.3292774e+03 - -4.3735779e+03 -6.4174039e+02 -3.3352235e+03 - -4.3544079e+03 -7.0336966e+02 -3.3416744e+03 - -4.3333403e+03 -7.6585646e+02 -3.3486111e+03 - -4.3103188e+03 -8.2927011e+02 -3.3560114e+03 - -4.2852837e+03 -8.9367826e+02 -3.3638504e+03 - -4.2581718e+03 -9.5914636e+02 -3.3720998e+03 - -4.2289174e+03 -1.0257369e+03 -3.3807276e+03 - -4.1974528e+03 -1.0935084e+03 -3.3896982e+03 - -4.1637089e+03 -1.1625149e+03 -3.3989718e+03 - -4.1276164e+03 -1.2328043e+03 -3.4085041e+03 - -4.0891068e+03 -1.3044173e+03 -3.4182466e+03 - -4.0481134e+03 -1.3773864e+03 -3.4281458e+03 - -4.0045735e+03 -1.4517336e+03 -3.4381436e+03 - -3.9584292e+03 -1.5274696e+03 -3.4481771e+03 - -3.9096302e+03 -1.6045913e+03 -3.4581787e+03 - -3.8581349e+03 -1.6830809e+03 -3.4680767e+03 - -3.8039133e+03 -1.7629038e+03 -3.4777950e+03 - -3.7469485e+03 -1.8440069e+03 -3.4872547e+03 - -3.6872400e+03 -1.9263175e+03 -3.4963738e+03 - -3.6248046e+03 -2.0097422e+03 -3.5050690e+03 - -3.5596794e+03 -2.0941658e+03 -3.5132566e+03 - -3.4919233e+03 -2.1794513e+03 -3.5208536e+03 - -3.4216180e+03 -2.2654403e+03 -3.5277796e+03 - -3.3488692e+03 -2.3519534e+03 -3.5339582e+03 - -3.2738069e+03 -2.4387921e+03 -3.5393187e+03 - -3.1965847e+03 -2.5257410e+03 -3.5437977e+03 - -3.1173789e+03 -2.6125707e+03 -3.5473408e+03 - -3.0363862e+03 -2.6990411e+03 -3.5499041e+03 - -2.9538216e+03 -2.7849054e+03 -3.5514553e+03 - -2.8699145e+03 -2.8699145e+03 -3.5519746e+03 - -2.7849054e+03 -2.9538216e+03 -3.5514553e+03 - -2.6990411e+03 -3.0363862e+03 -3.5499041e+03 - -2.6125707e+03 -3.1173789e+03 -3.5473408e+03 - -2.5257410e+03 -3.1965847e+03 -3.5437977e+03 - -2.4387921e+03 -3.2738069e+03 -3.5393187e+03 - -2.3519534e+03 -3.3488692e+03 -3.5339582e+03 - -2.2654403e+03 -3.4216180e+03 -3.5277796e+03 - -2.1794513e+03 -3.4919233e+03 -3.5208536e+03 - -2.0941658e+03 -3.5596794e+03 -3.5132566e+03 - -2.0097422e+03 -3.6248046e+03 -3.5050690e+03 - -1.9263175e+03 -3.6872400e+03 -3.4963738e+03 - -1.8440069e+03 -3.7469485e+03 -3.4872547e+03 - -1.7629038e+03 -3.8039133e+03 -3.4777950e+03 - -1.6830809e+03 -3.8581349e+03 -3.4680767e+03 - -1.6045913e+03 -3.9096302e+03 -3.4581787e+03 - -1.5274696e+03 -3.9584292e+03 -3.4481771e+03 - -1.4517336e+03 -4.0045735e+03 -3.4381436e+03 - -1.3773864e+03 -4.0481134e+03 -3.4281458e+03 - -1.3044173e+03 -4.0891068e+03 -3.4182466e+03 - -1.2328043e+03 -4.1276164e+03 -3.4085041e+03 - -1.1625149e+03 -4.1637089e+03 -3.3989718e+03 - -1.0935084e+03 -4.1974528e+03 -3.3896982e+03 - -1.0257369e+03 -4.2289174e+03 -3.3807276e+03 - -9.5914636e+02 -4.2581718e+03 -3.3720998e+03 - -8.9367826e+02 -4.2852837e+03 -3.3638504e+03 - -8.2927011e+02 -4.3103188e+03 -3.3560114e+03 - -7.6585646e+02 -4.3333403e+03 -3.3486111e+03 - -7.0336966e+02 -4.3544079e+03 -3.3416744e+03 - -6.4174039e+02 -4.3735779e+03 -3.3352235e+03 - -5.8089817e+02 -4.3909027e+03 -3.3292774e+03 - -5.2077176e+02 -4.4064305e+03 -3.3238530e+03 - -4.6128948e+02 -4.4202052e+03 -3.3189647e+03 - -4.0237941e+02 -4.4322661e+03 -3.3146249e+03 - -3.4396958e+02 -4.4426482e+03 -3.3108441e+03 - -2.8598810e+02 -4.4513817e+03 -3.3076309e+03 - -2.2836320e+02 -4.4584923e+03 -3.3049926e+03 - -1.7102330e+02 -4.4640010e+03 -3.3029348e+03 - -1.1389697e+02 -4.4679242e+03 -3.3014620e+03 - -5.6912928e+01 -4.4702734e+03 -3.3005771e+03 - -4.8134273e-09 -4.4710557e+03 -3.3002819e+03 - 5.6912928e+01 -4.4702734e+03 -3.3005771e+03 - 1.1389697e+02 -4.4679242e+03 -3.3014620e+03 - 1.7102330e+02 -4.4640010e+03 -3.3029348e+03 - 2.2836320e+02 -4.4584923e+03 -3.3049926e+03 - 2.8598810e+02 -4.4513817e+03 -3.3076309e+03 - 3.4396958e+02 -4.4426482e+03 -3.3108441e+03 - 4.0237941e+02 -4.4322661e+03 -3.3146249e+03 - 4.6128948e+02 -4.4202052e+03 -3.3189647e+03 - 5.2077176e+02 -4.4064305e+03 -3.3238530e+03 - 5.8089817e+02 -4.3909027e+03 -3.3292774e+03 - 6.4174039e+02 -4.3735779e+03 -3.3352235e+03 - 7.0336966e+02 -4.3544079e+03 -3.3416744e+03 - 7.6585646e+02 -4.3333403e+03 -3.3486111e+03 - 8.2927011e+02 -4.3103188e+03 -3.3560114e+03 - 8.9367826e+02 -4.2852837e+03 -3.3638504e+03 - 9.5914636e+02 -4.2581718e+03 -3.3720998e+03 - 1.0257369e+03 -4.2289174e+03 -3.3807276e+03 - 1.0935084e+03 -4.1974528e+03 -3.3896982e+03 - 1.1625149e+03 -4.1637089e+03 -3.3989718e+03 - 1.2328043e+03 -4.1276164e+03 -3.4085041e+03 - 1.3044173e+03 -4.0891068e+03 -3.4182466e+03 - 1.3773864e+03 -4.0481134e+03 -3.4281458e+03 - 1.4517336e+03 -4.0045735e+03 -3.4381436e+03 - 1.5274696e+03 -3.9584292e+03 -3.4481771e+03 - 1.6045913e+03 -3.9096302e+03 -3.4581787e+03 - 1.6830809e+03 -3.8581349e+03 -3.4680767e+03 - 1.7629038e+03 -3.8039133e+03 -3.4777950e+03 - 1.8440069e+03 -3.7469485e+03 -3.4872547e+03 - 1.9263175e+03 -3.6872400e+03 -3.4963738e+03 - 2.0097422e+03 -3.6248046e+03 -3.5050690e+03 - 2.0941658e+03 -3.5596794e+03 -3.5132566e+03 - 2.1794513e+03 -3.4919233e+03 -3.5208536e+03 - 2.2654403e+03 -3.4216180e+03 -3.5277796e+03 - 2.3519534e+03 -3.3488692e+03 -3.5339582e+03 - 2.4387921e+03 -3.2738069e+03 -3.5393187e+03 - 2.5257410e+03 -3.1965847e+03 -3.5437977e+03 - 2.6125707e+03 -3.1173789e+03 -3.5473408e+03 - 2.6990411e+03 -3.0363862e+03 -3.5499041e+03 - 2.7849054e+03 -2.9538216e+03 -3.5514553e+03 - 2.8699145e+03 -2.8699145e+03 -3.5519746e+03 - 2.9538216e+03 -2.7849054e+03 -3.5514553e+03 - 3.0363862e+03 -2.6990411e+03 -3.5499041e+03 - 3.1173789e+03 -2.6125707e+03 -3.5473408e+03 - 3.1965847e+03 -2.5257410e+03 -3.5437977e+03 - 3.2738069e+03 -2.4387921e+03 -3.5393187e+03 - 3.3488692e+03 -2.3519534e+03 -3.5339582e+03 - 3.4216180e+03 -2.2654403e+03 -3.5277796e+03 - 3.4919233e+03 -2.1794513e+03 -3.5208536e+03 - 3.5596794e+03 -2.0941658e+03 -3.5132566e+03 - 3.6248046e+03 -2.0097422e+03 -3.5050690e+03 - 3.6872400e+03 -1.9263175e+03 -3.4963738e+03 - 3.7469485e+03 -1.8440069e+03 -3.4872547e+03 - 3.8039133e+03 -1.7629038e+03 -3.4777950e+03 - 3.8581349e+03 -1.6830809e+03 -3.4680767e+03 - 3.9096302e+03 -1.6045913e+03 -3.4581787e+03 - 3.9584292e+03 -1.5274696e+03 -3.4481771e+03 - 4.0045735e+03 -1.4517336e+03 -3.4381436e+03 - 4.0481134e+03 -1.3773864e+03 -3.4281458e+03 - 4.0891068e+03 -1.3044173e+03 -3.4182466e+03 - 4.1276164e+03 -1.2328043e+03 -3.4085041e+03 - 4.1637089e+03 -1.1625149e+03 -3.3989718e+03 - 4.1974528e+03 -1.0935084e+03 -3.3896982e+03 - 4.2289174e+03 -1.0257369e+03 -3.3807276e+03 - 4.2581718e+03 -9.5914636e+02 -3.3720998e+03 - 4.2852837e+03 -8.9367826e+02 -3.3638504e+03 - 4.3103188e+03 -8.2927011e+02 -3.3560114e+03 - 4.3333403e+03 -7.6585646e+02 -3.3486111e+03 - 4.3544079e+03 -7.0336966e+02 -3.3416744e+03 - 4.3735779e+03 -6.4174039e+02 -3.3352235e+03 - 4.3909027e+03 -5.8089817e+02 -3.3292774e+03 - 4.4064305e+03 -5.2077176e+02 -3.3238530e+03 - 4.4202052e+03 -4.6128948e+02 -3.3189647e+03 - 4.4322661e+03 -4.0237941e+02 -3.3146249e+03 - 4.4426482e+03 -3.4396958e+02 -3.3108441e+03 - 4.4513817e+03 -2.8598810e+02 -3.3076309e+03 - 4.4584923e+03 -2.2836320e+02 -3.3049926e+03 - 4.4640010e+03 -1.7102330e+02 -3.3029348e+03 - 4.4679242e+03 -1.1389697e+02 -3.3014620e+03 - 4.4702734e+03 -5.6912928e+01 -3.3005771e+03 - 4.4710557e+03 -4.8134273e-09 -3.3002819e+03 - 4.4299515e+03 0.0000000e+00 -3.3534909e+03 - 4.4291667e+03 5.7032156e+01 -3.3537759e+03 - 4.4268104e+03 1.1413365e+02 -3.3546303e+03 - 4.4228756e+03 1.7137386e+02 -3.3560523e+03 - 4.4173512e+03 2.2882220e+02 -3.3580386e+03 - 4.4102214e+03 2.8654820e+02 -3.3605849e+03 - 4.4014660e+03 3.4462143e+02 -3.3636852e+03 - 4.3910605e+03 4.0311153e+02 -3.3673323e+03 - 4.3789757e+03 4.6208813e+02 -3.3715171e+03 - 4.3651781e+03 5.2162077e+02 -3.3762290e+03 - 4.3496302e+03 5.8177874e+02 -3.3814555e+03 - 4.3322898e+03 6.4263094e+02 -3.3871818e+03 - 4.3131111e+03 7.0424558e+02 -3.3933911e+03 - 4.2920443e+03 7.6668988e+02 -3.4000640e+03 - 4.2690360e+03 8.3002966e+02 -3.4071785e+03 - 4.2440295e+03 8.9432884e+02 -3.4147098e+03 - 4.2169654e+03 9.5964888e+02 -3.4226296e+03 - 4.1877818e+03 1.0260480e+03 -3.4309065e+03 - 4.1564154e+03 1.0935805e+03 -3.4395053e+03 - 4.1228017e+03 1.1622956e+03 -3.4483870e+03 - 4.0868766e+03 1.2322367e+03 -3.4575085e+03 - 4.0485767e+03 1.3034397e+03 -3.4668225e+03 - 4.0078412e+03 1.3759322e+03 -3.4762775e+03 - 3.9646130e+03 1.4497319e+03 -3.4858173e+03 - 3.9188403e+03 1.5248448e+03 -3.4953817e+03 - 3.8704786e+03 1.6012644e+03 -3.5049061e+03 - 3.8194921e+03 1.6789693e+03 -3.5143223e+03 - 3.7658561e+03 1.7579224e+03 -3.5235582e+03 - 3.7095590e+03 1.8380691e+03 -3.5325392e+03 - 3.6506040e+03 1.9193363e+03 -3.5411884e+03 - 3.5890115e+03 2.0016313e+03 -3.5494276e+03 - 3.5248205e+03 2.0848414e+03 -3.5571787e+03 - 3.4580904e+03 2.1688338e+03 -3.5643646e+03 - 3.3889021e+03 2.2534555e+03 -3.5709104e+03 - 3.3173585e+03 2.3385348e+03 -3.5767456e+03 - 3.2435850e+03 2.4238822e+03 -3.5818048e+03 - 3.1677287e+03 2.5092931e+03 -3.5860297e+03 - 3.0899575e+03 2.5945501e+03 -3.5893703e+03 - 3.0104583e+03 2.6794261e+03 -3.5917863e+03 - 2.9294342e+03 2.7636884e+03 -3.5932479e+03 - 2.8471020e+03 2.8471020e+03 -3.5937372e+03 - 2.7636884e+03 2.9294342e+03 -3.5932479e+03 - 2.6794261e+03 3.0104583e+03 -3.5917863e+03 - 2.5945501e+03 3.0899575e+03 -3.5893703e+03 - 2.5092931e+03 3.1677287e+03 -3.5860297e+03 - 2.4238822e+03 3.2435850e+03 -3.5818048e+03 - 2.3385348e+03 3.3173585e+03 -3.5767456e+03 - 2.2534555e+03 3.3889021e+03 -3.5709104e+03 - 2.1688338e+03 3.4580904e+03 -3.5643646e+03 - 2.0848414e+03 3.5248205e+03 -3.5571787e+03 - 2.0016313e+03 3.5890115e+03 -3.5494276e+03 - 1.9193363e+03 3.6506040e+03 -3.5411884e+03 - 1.8380691e+03 3.7095590e+03 -3.5325392e+03 - 1.7579224e+03 3.7658561e+03 -3.5235582e+03 - 1.6789693e+03 3.8194921e+03 -3.5143223e+03 - 1.6012644e+03 3.8704786e+03 -3.5049061e+03 - 1.5248448e+03 3.9188403e+03 -3.4953817e+03 - 1.4497319e+03 3.9646130e+03 -3.4858173e+03 - 1.3759322e+03 4.0078412e+03 -3.4762775e+03 - 1.3034397e+03 4.0485767e+03 -3.4668225e+03 - 1.2322367e+03 4.0868766e+03 -3.4575085e+03 - 1.1622956e+03 4.1228017e+03 -3.4483870e+03 - 1.0935805e+03 4.1564154e+03 -3.4395053e+03 - 1.0260480e+03 4.1877818e+03 -3.4309065e+03 - 9.5964888e+02 4.2169654e+03 -3.4226296e+03 - 8.9432884e+02 4.2440295e+03 -3.4147098e+03 - 8.3002966e+02 4.2690360e+03 -3.4071785e+03 - 7.6668988e+02 4.2920443e+03 -3.4000640e+03 - 7.0424558e+02 4.3131111e+03 -3.3933911e+03 - 6.4263094e+02 4.3322898e+03 -3.3871818e+03 - 5.8177874e+02 4.3496302e+03 -3.3814555e+03 - 5.2162077e+02 4.3651781e+03 -3.3762290e+03 - 4.6208813e+02 4.3789757e+03 -3.3715171e+03 - 4.0311153e+02 4.3910605e+03 -3.3673323e+03 - 3.4462143e+02 4.4014660e+03 -3.3636852e+03 - 2.8654820e+02 4.4102214e+03 -3.3605849e+03 - 2.2882220e+02 4.4173512e+03 -3.3580386e+03 - 1.7137386e+02 4.4228756e+03 -3.3560523e+03 - 1.1413365e+02 4.4268104e+03 -3.3546303e+03 - 5.7032156e+01 4.4291667e+03 -3.3537759e+03 - 0.0000000e+00 4.4299515e+03 -3.3534909e+03 - -5.7032156e+01 4.4291667e+03 -3.3537759e+03 - -1.1413365e+02 4.4268104e+03 -3.3546303e+03 - -1.7137386e+02 4.4228756e+03 -3.3560523e+03 - -2.2882220e+02 4.4173512e+03 -3.3580386e+03 - -2.8654820e+02 4.4102214e+03 -3.3605849e+03 - -3.4462143e+02 4.4014660e+03 -3.3636852e+03 - -4.0311153e+02 4.3910605e+03 -3.3673323e+03 - -4.6208813e+02 4.3789757e+03 -3.3715171e+03 - -5.2162077e+02 4.3651781e+03 -3.3762290e+03 - -5.8177874e+02 4.3496302e+03 -3.3814555e+03 - -6.4263094e+02 4.3322898e+03 -3.3871818e+03 - -7.0424558e+02 4.3131111e+03 -3.3933911e+03 - -7.6668988e+02 4.2920443e+03 -3.4000640e+03 - -8.3002966e+02 4.2690360e+03 -3.4071785e+03 - -8.9432884e+02 4.2440295e+03 -3.4147098e+03 - -9.5964888e+02 4.2169654e+03 -3.4226296e+03 - -1.0260480e+03 4.1877818e+03 -3.4309065e+03 - -1.0935805e+03 4.1564154e+03 -3.4395053e+03 - -1.1622956e+03 4.1228017e+03 -3.4483870e+03 - -1.2322367e+03 4.0868766e+03 -3.4575085e+03 - -1.3034397e+03 4.0485767e+03 -3.4668225e+03 - -1.3759322e+03 4.0078412e+03 -3.4762775e+03 - -1.4497319e+03 3.9646130e+03 -3.4858173e+03 - -1.5248448e+03 3.9188403e+03 -3.4953817e+03 - -1.6012644e+03 3.8704786e+03 -3.5049061e+03 - -1.6789693e+03 3.8194921e+03 -3.5143223e+03 - -1.7579224e+03 3.7658561e+03 -3.5235582e+03 - -1.8380691e+03 3.7095590e+03 -3.5325392e+03 - -1.9193363e+03 3.6506040e+03 -3.5411884e+03 - -2.0016313e+03 3.5890115e+03 -3.5494276e+03 - -2.0848414e+03 3.5248205e+03 -3.5571787e+03 - -2.1688338e+03 3.4580904e+03 -3.5643646e+03 - -2.2534555e+03 3.3889021e+03 -3.5709104e+03 - -2.3385348e+03 3.3173585e+03 -3.5767456e+03 - -2.4238822e+03 3.2435850e+03 -3.5818048e+03 - -2.5092931e+03 3.1677287e+03 -3.5860297e+03 - -2.5945501e+03 3.0899575e+03 -3.5893703e+03 - -2.6794261e+03 3.0104583e+03 -3.5917863e+03 - -2.7636884e+03 2.9294342e+03 -3.5932479e+03 - -2.8471020e+03 2.8471020e+03 -3.5937372e+03 - -2.9294342e+03 2.7636884e+03 -3.5932479e+03 - -3.0104583e+03 2.6794261e+03 -3.5917863e+03 - -3.0899575e+03 2.5945501e+03 -3.5893703e+03 - -3.1677287e+03 2.5092931e+03 -3.5860297e+03 - -3.2435850e+03 2.4238822e+03 -3.5818048e+03 - -3.3173585e+03 2.3385348e+03 -3.5767456e+03 - -3.3889021e+03 2.2534555e+03 -3.5709104e+03 - -3.4580904e+03 2.1688338e+03 -3.5643646e+03 - -3.5248205e+03 2.0848414e+03 -3.5571787e+03 - -3.5890115e+03 2.0016313e+03 -3.5494276e+03 - -3.6506040e+03 1.9193363e+03 -3.5411884e+03 - -3.7095590e+03 1.8380691e+03 -3.5325392e+03 - -3.7658561e+03 1.7579224e+03 -3.5235582e+03 - -3.8194921e+03 1.6789693e+03 -3.5143223e+03 - -3.8704786e+03 1.6012644e+03 -3.5049061e+03 - -3.9188403e+03 1.5248448e+03 -3.4953817e+03 - -3.9646130e+03 1.4497319e+03 -3.4858173e+03 - -4.0078412e+03 1.3759322e+03 -3.4762775e+03 - -4.0485767e+03 1.3034397e+03 -3.4668225e+03 - -4.0868766e+03 1.2322367e+03 -3.4575085e+03 - -4.1228017e+03 1.1622956e+03 -3.4483870e+03 - -4.1564154e+03 1.0935805e+03 -3.4395053e+03 - -4.1877818e+03 1.0260480e+03 -3.4309065e+03 - -4.2169654e+03 9.5964888e+02 -3.4226296e+03 - -4.2440295e+03 8.9432884e+02 -3.4147098e+03 - -4.2690360e+03 8.3002966e+02 -3.4071785e+03 - -4.2920443e+03 7.6668988e+02 -3.4000640e+03 - -4.3131111e+03 7.0424558e+02 -3.3933911e+03 - -4.3322898e+03 6.4263094e+02 -3.3871818e+03 - -4.3496302e+03 5.8177874e+02 -3.3814555e+03 - -4.3651781e+03 5.2162077e+02 -3.3762290e+03 - -4.3789757e+03 4.6208813e+02 -3.3715171e+03 - -4.3910605e+03 4.0311153e+02 -3.3673323e+03 - -4.4014660e+03 3.4462143e+02 -3.3636852e+03 - -4.4102214e+03 2.8654820e+02 -3.3605849e+03 - -4.4173512e+03 2.2882220e+02 -3.3580386e+03 - -4.4228756e+03 1.7137386e+02 -3.3560523e+03 - -4.4268104e+03 1.1413365e+02 -3.3546303e+03 - -4.4291667e+03 5.7032156e+01 -3.3537759e+03 - -4.4299515e+03 0.0000000e+00 -3.3534909e+03 - -4.4291667e+03 -5.7032156e+01 -3.3537759e+03 - -4.4268104e+03 -1.1413365e+02 -3.3546303e+03 - -4.4228756e+03 -1.7137386e+02 -3.3560523e+03 - -4.4173512e+03 -2.2882220e+02 -3.3580386e+03 - -4.4102214e+03 -2.8654820e+02 -3.3605849e+03 - -4.4014660e+03 -3.4462143e+02 -3.3636852e+03 - -4.3910605e+03 -4.0311153e+02 -3.3673323e+03 - -4.3789757e+03 -4.6208813e+02 -3.3715171e+03 - -4.3651781e+03 -5.2162077e+02 -3.3762290e+03 - -4.3496302e+03 -5.8177874e+02 -3.3814555e+03 - -4.3322898e+03 -6.4263094e+02 -3.3871818e+03 - -4.3131111e+03 -7.0424558e+02 -3.3933911e+03 - -4.2920443e+03 -7.6668988e+02 -3.4000640e+03 - -4.2690360e+03 -8.3002966e+02 -3.4071785e+03 - -4.2440295e+03 -8.9432884e+02 -3.4147098e+03 - -4.2169654e+03 -9.5964888e+02 -3.4226296e+03 - -4.1877818e+03 -1.0260480e+03 -3.4309065e+03 - -4.1564154e+03 -1.0935805e+03 -3.4395053e+03 - -4.1228017e+03 -1.1622956e+03 -3.4483870e+03 - -4.0868766e+03 -1.2322367e+03 -3.4575085e+03 - -4.0485767e+03 -1.3034397e+03 -3.4668225e+03 - -4.0078412e+03 -1.3759322e+03 -3.4762775e+03 - -3.9646130e+03 -1.4497319e+03 -3.4858173e+03 - -3.9188403e+03 -1.5248448e+03 -3.4953817e+03 - -3.8704786e+03 -1.6012644e+03 -3.5049061e+03 - -3.8194921e+03 -1.6789693e+03 -3.5143223e+03 - -3.7658561e+03 -1.7579224e+03 -3.5235582e+03 - -3.7095590e+03 -1.8380691e+03 -3.5325392e+03 - -3.6506040e+03 -1.9193363e+03 -3.5411884e+03 - -3.5890115e+03 -2.0016313e+03 -3.5494276e+03 - -3.5248205e+03 -2.0848414e+03 -3.5571787e+03 - -3.4580904e+03 -2.1688338e+03 -3.5643646e+03 - -3.3889021e+03 -2.2534555e+03 -3.5709104e+03 - -3.3173585e+03 -2.3385348e+03 -3.5767456e+03 - -3.2435850e+03 -2.4238822e+03 -3.5818048e+03 - -3.1677287e+03 -2.5092931e+03 -3.5860297e+03 - -3.0899575e+03 -2.5945501e+03 -3.5893703e+03 - -3.0104583e+03 -2.6794261e+03 -3.5917863e+03 - -2.9294342e+03 -2.7636884e+03 -3.5932479e+03 - -2.8471020e+03 -2.8471020e+03 -3.5937372e+03 - -2.7636884e+03 -2.9294342e+03 -3.5932479e+03 - -2.6794261e+03 -3.0104583e+03 -3.5917863e+03 - -2.5945501e+03 -3.0899575e+03 -3.5893703e+03 - -2.5092931e+03 -3.1677287e+03 -3.5860297e+03 - -2.4238822e+03 -3.2435850e+03 -3.5818048e+03 - -2.3385348e+03 -3.3173585e+03 -3.5767456e+03 - -2.2534555e+03 -3.3889021e+03 -3.5709104e+03 - -2.1688338e+03 -3.4580904e+03 -3.5643646e+03 - -2.0848414e+03 -3.5248205e+03 -3.5571787e+03 - -2.0016313e+03 -3.5890115e+03 -3.5494276e+03 - -1.9193363e+03 -3.6506040e+03 -3.5411884e+03 - -1.8380691e+03 -3.7095590e+03 -3.5325392e+03 - -1.7579224e+03 -3.7658561e+03 -3.5235582e+03 - -1.6789693e+03 -3.8194921e+03 -3.5143223e+03 - -1.6012644e+03 -3.8704786e+03 -3.5049061e+03 - -1.5248448e+03 -3.9188403e+03 -3.4953817e+03 - -1.4497319e+03 -3.9646130e+03 -3.4858173e+03 - -1.3759322e+03 -4.0078412e+03 -3.4762775e+03 - -1.3034397e+03 -4.0485767e+03 -3.4668225e+03 - -1.2322367e+03 -4.0868766e+03 -3.4575085e+03 - -1.1622956e+03 -4.1228017e+03 -3.4483870e+03 - -1.0935805e+03 -4.1564154e+03 -3.4395053e+03 - -1.0260480e+03 -4.1877818e+03 -3.4309065e+03 - -9.5964888e+02 -4.2169654e+03 -3.4226296e+03 - -8.9432884e+02 -4.2440295e+03 -3.4147098e+03 - -8.3002966e+02 -4.2690360e+03 -3.4071785e+03 - -7.6668988e+02 -4.2920443e+03 -3.4000640e+03 - -7.0424558e+02 -4.3131111e+03 -3.3933911e+03 - -6.4263094e+02 -4.3322898e+03 -3.3871818e+03 - -5.8177874e+02 -4.3496302e+03 -3.3814555e+03 - -5.2162077e+02 -4.3651781e+03 -3.3762290e+03 - -4.6208813e+02 -4.3789757e+03 -3.3715171e+03 - -4.0311153e+02 -4.3910605e+03 -3.3673323e+03 - -3.4462143e+02 -4.4014660e+03 -3.3636852e+03 - -2.8654820e+02 -4.4102214e+03 -3.3605849e+03 - -2.2882220e+02 -4.4173512e+03 -3.3580386e+03 - -1.7137386e+02 -4.4228756e+03 -3.3560523e+03 - -1.1413365e+02 -4.4268104e+03 -3.3546303e+03 - -5.7032156e+01 -4.4291667e+03 -3.3537759e+03 - 0.0000000e+00 -4.4299515e+03 -3.3534909e+03 - 5.7032156e+01 -4.4291667e+03 -3.3537759e+03 - 1.1413365e+02 -4.4268104e+03 -3.3546303e+03 - 1.7137386e+02 -4.4228756e+03 -3.3560523e+03 - 2.2882220e+02 -4.4173512e+03 -3.3580386e+03 - 2.8654820e+02 -4.4102214e+03 -3.3605849e+03 - 3.4462143e+02 -4.4014660e+03 -3.3636852e+03 - 4.0311153e+02 -4.3910605e+03 -3.3673323e+03 - 4.6208813e+02 -4.3789757e+03 -3.3715171e+03 - 5.2162077e+02 -4.3651781e+03 -3.3762290e+03 - 5.8177874e+02 -4.3496302e+03 -3.3814555e+03 - 6.4263094e+02 -4.3322898e+03 -3.3871818e+03 - 7.0424558e+02 -4.3131111e+03 -3.3933911e+03 - 7.6668988e+02 -4.2920443e+03 -3.4000640e+03 - 8.3002966e+02 -4.2690360e+03 -3.4071785e+03 - 8.9432884e+02 -4.2440295e+03 -3.4147098e+03 - 9.5964888e+02 -4.2169654e+03 -3.4226296e+03 - 1.0260480e+03 -4.1877818e+03 -3.4309065e+03 - 1.0935805e+03 -4.1564154e+03 -3.4395053e+03 - 1.1622956e+03 -4.1228017e+03 -3.4483870e+03 - 1.2322367e+03 -4.0868766e+03 -3.4575085e+03 - 1.3034397e+03 -4.0485767e+03 -3.4668225e+03 - 1.3759322e+03 -4.0078412e+03 -3.4762775e+03 - 1.4497319e+03 -3.9646130e+03 -3.4858173e+03 - 1.5248448e+03 -3.9188403e+03 -3.4953817e+03 - 1.6012644e+03 -3.8704786e+03 -3.5049061e+03 - 1.6789693e+03 -3.8194921e+03 -3.5143223e+03 - 1.7579224e+03 -3.7658561e+03 -3.5235582e+03 - 1.8380691e+03 -3.7095590e+03 -3.5325392e+03 - 1.9193363e+03 -3.6506040e+03 -3.5411884e+03 - 2.0016313e+03 -3.5890115e+03 -3.5494276e+03 - 2.0848414e+03 -3.5248205e+03 -3.5571787e+03 - 2.1688338e+03 -3.4580904e+03 -3.5643646e+03 - 2.2534555e+03 -3.3889021e+03 -3.5709104e+03 - 2.3385348e+03 -3.3173585e+03 -3.5767456e+03 - 2.4238822e+03 -3.2435850e+03 -3.5818048e+03 - 2.5092931e+03 -3.1677287e+03 -3.5860297e+03 - 2.5945501e+03 -3.0899575e+03 -3.5893703e+03 - 2.6794261e+03 -3.0104583e+03 -3.5917863e+03 - 2.7636884e+03 -2.9294342e+03 -3.5932479e+03 - 2.8471020e+03 -2.8471020e+03 -3.5937372e+03 - 2.9294342e+03 -2.7636884e+03 -3.5932479e+03 - 3.0104583e+03 -2.6794261e+03 -3.5917863e+03 - 3.0899575e+03 -2.5945501e+03 -3.5893703e+03 - 3.1677287e+03 -2.5092931e+03 -3.5860297e+03 - 3.2435850e+03 -2.4238822e+03 -3.5818048e+03 - 3.3173585e+03 -2.3385348e+03 -3.5767456e+03 - 3.3889021e+03 -2.2534555e+03 -3.5709104e+03 - 3.4580904e+03 -2.1688338e+03 -3.5643646e+03 - 3.5248205e+03 -2.0848414e+03 -3.5571787e+03 - 3.5890115e+03 -2.0016313e+03 -3.5494276e+03 - 3.6506040e+03 -1.9193363e+03 -3.5411884e+03 - 3.7095590e+03 -1.8380691e+03 -3.5325392e+03 - 3.7658561e+03 -1.7579224e+03 -3.5235582e+03 - 3.8194921e+03 -1.6789693e+03 -3.5143223e+03 - 3.8704786e+03 -1.6012644e+03 -3.5049061e+03 - 3.9188403e+03 -1.5248448e+03 -3.4953817e+03 - 3.9646130e+03 -1.4497319e+03 -3.4858173e+03 - 4.0078412e+03 -1.3759322e+03 -3.4762775e+03 - 4.0485767e+03 -1.3034397e+03 -3.4668225e+03 - 4.0868766e+03 -1.2322367e+03 -3.4575085e+03 - 4.1228017e+03 -1.1622956e+03 -3.4483870e+03 - 4.1564154e+03 -1.0935805e+03 -3.4395053e+03 - 4.1877818e+03 -1.0260480e+03 -3.4309065e+03 - 4.2169654e+03 -9.5964888e+02 -3.4226296e+03 - 4.2440295e+03 -8.9432884e+02 -3.4147098e+03 - 4.2690360e+03 -8.3002966e+02 -3.4071785e+03 - 4.2920443e+03 -7.6668988e+02 -3.4000640e+03 - 4.3131111e+03 -7.0424558e+02 -3.3933911e+03 - 4.3322898e+03 -6.4263094e+02 -3.3871818e+03 - 4.3496302e+03 -5.8177874e+02 -3.3814555e+03 - 4.3651781e+03 -5.2162077e+02 -3.3762290e+03 - 4.3789757e+03 -4.6208813e+02 -3.3715171e+03 - 4.3910605e+03 -4.0311153e+02 -3.3673323e+03 - 4.4014660e+03 -3.4462143e+02 -3.3636852e+03 - 4.4102214e+03 -2.8654820e+02 -3.3605849e+03 - 4.4173512e+03 -2.2882220e+02 -3.3580386e+03 - 4.4228756e+03 -1.7137386e+02 -3.3560523e+03 - 4.4268104e+03 -1.1413365e+02 -3.3546303e+03 - 4.4291667e+03 -5.7032156e+01 -3.3537759e+03 - 4.4299515e+03 9.6268545e-09 -3.3534909e+03 - 4.3883234e+03 0.0000000e+00 -3.4052446e+03 - 4.3875368e+03 5.7136731e+01 -3.4055195e+03 - 4.3851748e+03 1.1434095e+02 -3.4063433e+03 - 4.3812310e+03 1.7168016e+02 -3.4077143e+03 - 4.3756945e+03 2.2922186e+02 -3.4096292e+03 - 4.3685503e+03 2.8703360e+02 -3.4120835e+03 - 4.3597790e+03 3.4518286e+02 -3.4150711e+03 - 4.3493568e+03 4.0373711e+02 -3.4185845e+03 - 4.3372561e+03 4.6276366e+02 -3.4226147e+03 - 4.3234448e+03 5.2232957e+02 -3.4271508e+03 - 4.3078869e+03 5.8250152e+02 -3.4321800e+03 - 4.2905424e+03 6.4334556e+02 -3.4376876e+03 - 4.2713676e+03 7.0492688e+02 -3.4436567e+03 - 4.2503153e+03 7.6730946e+02 -3.4500679e+03 - 4.2273349e+03 8.3055565e+02 -3.4568992e+03 - 4.2023729e+03 8.9472571e+02 -3.4641259e+03 - 4.1753734e+03 9.5987720e+02 -3.4717200e+03 - 4.1462785e+03 1.0260643e+03 -3.4796507e+03 - 4.1150290e+03 1.0933369e+03 -3.4878833e+03 - 4.0815649e+03 1.1617400e+03 -3.4963798e+03 - 4.0458270e+03 1.2313124e+03 -3.5050982e+03 - 4.0077571e+03 1.3020855e+03 -3.5139927e+03 - 3.9672997e+03 1.3740826e+03 -3.5230135e+03 - 3.9244032e+03 1.4473171e+03 -3.5321066e+03 - 3.8790215e+03 1.5217911e+03 -3.5412143e+03 - 3.8311154e+03 1.5974944e+03 -3.5502752e+03 - 3.7806548e+03 1.6744030e+03 -3.5592242e+03 - 3.7276198e+03 1.7524773e+03 -3.5679933e+03 - 3.6720031e+03 1.8316617e+03 -3.5765122e+03 - 3.6138120e+03 1.9118829e+03 -3.5847085e+03 - 3.5530694e+03 1.9930495e+03 -3.5925092e+03 - 3.4898162e+03 2.0750512e+03 -3.5998413e+03 - 3.4241120e+03 2.1577593e+03 -3.6066330e+03 - 3.3560365e+03 2.2410266e+03 -3.6128151e+03 - 3.2856900e+03 2.3246885e+03 -3.6183221e+03 - 3.2131931e+03 2.4085645e+03 -3.6230938e+03 - 3.1386867e+03 2.4924601e+03 -3.6270765e+03 - 3.0623308e+03 2.5761692e+03 -3.6302242e+03 - 2.9843025e+03 2.6594775e+03 -3.6324999e+03 - 2.9047941e+03 2.7421650e+03 -3.6338764e+03 - 2.8240104e+03 2.8240104e+03 -3.6343371e+03 - 2.7421650e+03 2.9047941e+03 -3.6338764e+03 - 2.6594775e+03 2.9843025e+03 -3.6324999e+03 - 2.5761692e+03 3.0623308e+03 -3.6302242e+03 - 2.4924601e+03 3.1386867e+03 -3.6270765e+03 - 2.4085645e+03 3.2131931e+03 -3.6230938e+03 - 2.3246885e+03 3.2856900e+03 -3.6183221e+03 - 2.2410266e+03 3.3560365e+03 -3.6128151e+03 - 2.1577593e+03 3.4241120e+03 -3.6066330e+03 - 2.0750512e+03 3.4898162e+03 -3.5998413e+03 - 1.9930495e+03 3.5530694e+03 -3.5925092e+03 - 1.9118829e+03 3.6138120e+03 -3.5847085e+03 - 1.8316617e+03 3.6720031e+03 -3.5765122e+03 - 1.7524773e+03 3.7276198e+03 -3.5679933e+03 - 1.6744030e+03 3.7806548e+03 -3.5592242e+03 - 1.5974944e+03 3.8311154e+03 -3.5502752e+03 - 1.5217911e+03 3.8790215e+03 -3.5412143e+03 - 1.4473171e+03 3.9244032e+03 -3.5321066e+03 - 1.3740826e+03 3.9672997e+03 -3.5230135e+03 - 1.3020855e+03 4.0077571e+03 -3.5139927e+03 - 1.2313124e+03 4.0458270e+03 -3.5050982e+03 - 1.1617400e+03 4.0815649e+03 -3.4963798e+03 - 1.0933369e+03 4.1150290e+03 -3.4878833e+03 - 1.0260643e+03 4.1462785e+03 -3.4796507e+03 - 9.5987720e+02 4.1753734e+03 -3.4717200e+03 - 8.9472571e+02 4.2023729e+03 -3.4641259e+03 - 8.3055565e+02 4.2273349e+03 -3.4568992e+03 - 7.6730946e+02 4.2503153e+03 -3.4500679e+03 - 7.0492688e+02 4.2713676e+03 -3.4436567e+03 - 6.4334556e+02 4.2905424e+03 -3.4376876e+03 - 5.8250152e+02 4.3078869e+03 -3.4321800e+03 - 5.2232957e+02 4.3234448e+03 -3.4271508e+03 - 4.6276366e+02 4.3372561e+03 -3.4226147e+03 - 4.0373711e+02 4.3493568e+03 -3.4185845e+03 - 3.4518286e+02 4.3597790e+03 -3.4150711e+03 - 2.8703360e+02 4.3685503e+03 -3.4120835e+03 - 2.2922186e+02 4.3756945e+03 -3.4096292e+03 - 1.7168016e+02 4.3812310e+03 -3.4077143e+03 - 1.1434095e+02 4.3851748e+03 -3.4063433e+03 - 5.7136731e+01 4.3875368e+03 -3.4055195e+03 - 0.0000000e+00 4.3883234e+03 -3.4052446e+03 - -5.7136731e+01 4.3875368e+03 -3.4055195e+03 - -1.1434095e+02 4.3851748e+03 -3.4063433e+03 - -1.7168016e+02 4.3812310e+03 -3.4077143e+03 - -2.2922186e+02 4.3756945e+03 -3.4096292e+03 - -2.8703360e+02 4.3685503e+03 -3.4120835e+03 - -3.4518286e+02 4.3597790e+03 -3.4150711e+03 - -4.0373711e+02 4.3493568e+03 -3.4185845e+03 - -4.6276366e+02 4.3372561e+03 -3.4226147e+03 - -5.2232957e+02 4.3234448e+03 -3.4271508e+03 - -5.8250152e+02 4.3078869e+03 -3.4321800e+03 - -6.4334556e+02 4.2905424e+03 -3.4376876e+03 - -7.0492688e+02 4.2713676e+03 -3.4436567e+03 - -7.6730946e+02 4.2503153e+03 -3.4500679e+03 - -8.3055565e+02 4.2273349e+03 -3.4568992e+03 - -8.9472571e+02 4.2023729e+03 -3.4641259e+03 - -9.5987720e+02 4.1753734e+03 -3.4717200e+03 - -1.0260643e+03 4.1462785e+03 -3.4796507e+03 - -1.0933369e+03 4.1150290e+03 -3.4878833e+03 - -1.1617400e+03 4.0815649e+03 -3.4963798e+03 - -1.2313124e+03 4.0458270e+03 -3.5050982e+03 - -1.3020855e+03 4.0077571e+03 -3.5139927e+03 - -1.3740826e+03 3.9672997e+03 -3.5230135e+03 - -1.4473171e+03 3.9244032e+03 -3.5321066e+03 - -1.5217911e+03 3.8790215e+03 -3.5412143e+03 - -1.5974944e+03 3.8311154e+03 -3.5502752e+03 - -1.6744030e+03 3.7806548e+03 -3.5592242e+03 - -1.7524773e+03 3.7276198e+03 -3.5679933e+03 - -1.8316617e+03 3.6720031e+03 -3.5765122e+03 - -1.9118829e+03 3.6138120e+03 -3.5847085e+03 - -1.9930495e+03 3.5530694e+03 -3.5925092e+03 - -2.0750512e+03 3.4898162e+03 -3.5998413e+03 - -2.1577593e+03 3.4241120e+03 -3.6066330e+03 - -2.2410266e+03 3.3560365e+03 -3.6128151e+03 - -2.3246885e+03 3.2856900e+03 -3.6183221e+03 - -2.4085645e+03 3.2131931e+03 -3.6230938e+03 - -2.4924601e+03 3.1386867e+03 -3.6270765e+03 - -2.5761692e+03 3.0623308e+03 -3.6302242e+03 - -2.6594775e+03 2.9843025e+03 -3.6324999e+03 - -2.7421650e+03 2.9047941e+03 -3.6338764e+03 - -2.8240104e+03 2.8240104e+03 -3.6343371e+03 - -2.9047941e+03 2.7421650e+03 -3.6338764e+03 - -2.9843025e+03 2.6594775e+03 -3.6324999e+03 - -3.0623308e+03 2.5761692e+03 -3.6302242e+03 - -3.1386867e+03 2.4924601e+03 -3.6270765e+03 - -3.2131931e+03 2.4085645e+03 -3.6230938e+03 - -3.2856900e+03 2.3246885e+03 -3.6183221e+03 - -3.3560365e+03 2.2410266e+03 -3.6128151e+03 - -3.4241120e+03 2.1577593e+03 -3.6066330e+03 - -3.4898162e+03 2.0750512e+03 -3.5998413e+03 - -3.5530694e+03 1.9930495e+03 -3.5925092e+03 - -3.6138120e+03 1.9118829e+03 -3.5847085e+03 - -3.6720031e+03 1.8316617e+03 -3.5765122e+03 - -3.7276198e+03 1.7524773e+03 -3.5679933e+03 - -3.7806548e+03 1.6744030e+03 -3.5592242e+03 - -3.8311154e+03 1.5974944e+03 -3.5502752e+03 - -3.8790215e+03 1.5217911e+03 -3.5412143e+03 - -3.9244032e+03 1.4473171e+03 -3.5321066e+03 - -3.9672997e+03 1.3740826e+03 -3.5230135e+03 - -4.0077571e+03 1.3020855e+03 -3.5139927e+03 - -4.0458270e+03 1.2313124e+03 -3.5050982e+03 - -4.0815649e+03 1.1617400e+03 -3.4963798e+03 - -4.1150290e+03 1.0933369e+03 -3.4878833e+03 - -4.1462785e+03 1.0260643e+03 -3.4796507e+03 - -4.1753734e+03 9.5987720e+02 -3.4717200e+03 - -4.2023729e+03 8.9472571e+02 -3.4641259e+03 - -4.2273349e+03 8.3055565e+02 -3.4568992e+03 - -4.2503153e+03 7.6730946e+02 -3.4500679e+03 - -4.2713676e+03 7.0492688e+02 -3.4436567e+03 - -4.2905424e+03 6.4334556e+02 -3.4376876e+03 - -4.3078869e+03 5.8250152e+02 -3.4321800e+03 - -4.3234448e+03 5.2232957e+02 -3.4271508e+03 - -4.3372561e+03 4.6276366e+02 -3.4226147e+03 - -4.3493568e+03 4.0373711e+02 -3.4185845e+03 - -4.3597790e+03 3.4518286e+02 -3.4150711e+03 - -4.3685503e+03 2.8703360e+02 -3.4120835e+03 - -4.3756945e+03 2.2922186e+02 -3.4096292e+03 - -4.3812310e+03 1.7168016e+02 -3.4077143e+03 - -4.3851748e+03 1.1434095e+02 -3.4063433e+03 - -4.3875368e+03 5.7136731e+01 -3.4055195e+03 - -4.3883234e+03 4.8134273e-09 -3.4052446e+03 - -4.3875368e+03 -5.7136731e+01 -3.4055195e+03 - -4.3851748e+03 -1.1434095e+02 -3.4063433e+03 - -4.3812310e+03 -1.7168016e+02 -3.4077143e+03 - -4.3756945e+03 -2.2922186e+02 -3.4096292e+03 - -4.3685503e+03 -2.8703360e+02 -3.4120835e+03 - -4.3597790e+03 -3.4518286e+02 -3.4150711e+03 - -4.3493568e+03 -4.0373711e+02 -3.4185845e+03 - -4.3372561e+03 -4.6276366e+02 -3.4226147e+03 - -4.3234448e+03 -5.2232957e+02 -3.4271508e+03 - -4.3078869e+03 -5.8250152e+02 -3.4321800e+03 - -4.2905424e+03 -6.4334556e+02 -3.4376876e+03 - -4.2713676e+03 -7.0492688e+02 -3.4436567e+03 - -4.2503153e+03 -7.6730946e+02 -3.4500679e+03 - -4.2273349e+03 -8.3055565e+02 -3.4568992e+03 - -4.2023729e+03 -8.9472571e+02 -3.4641259e+03 - -4.1753734e+03 -9.5987720e+02 -3.4717200e+03 - -4.1462785e+03 -1.0260643e+03 -3.4796507e+03 - -4.1150290e+03 -1.0933369e+03 -3.4878833e+03 - -4.0815649e+03 -1.1617400e+03 -3.4963798e+03 - -4.0458270e+03 -1.2313124e+03 -3.5050982e+03 - -4.0077571e+03 -1.3020855e+03 -3.5139927e+03 - -3.9672997e+03 -1.3740826e+03 -3.5230135e+03 - -3.9244032e+03 -1.4473171e+03 -3.5321066e+03 - -3.8790215e+03 -1.5217911e+03 -3.5412143e+03 - -3.8311154e+03 -1.5974944e+03 -3.5502752e+03 - -3.7806548e+03 -1.6744030e+03 -3.5592242e+03 - -3.7276198e+03 -1.7524773e+03 -3.5679933e+03 - -3.6720031e+03 -1.8316617e+03 -3.5765122e+03 - -3.6138120e+03 -1.9118829e+03 -3.5847085e+03 - -3.5530694e+03 -1.9930495e+03 -3.5925092e+03 - -3.4898162e+03 -2.0750512e+03 -3.5998413e+03 - -3.4241120e+03 -2.1577593e+03 -3.6066330e+03 - -3.3560365e+03 -2.2410266e+03 -3.6128151e+03 - -3.2856900e+03 -2.3246885e+03 -3.6183221e+03 - -3.2131931e+03 -2.4085645e+03 -3.6230938e+03 - -3.1386867e+03 -2.4924601e+03 -3.6270765e+03 - -3.0623308e+03 -2.5761692e+03 -3.6302242e+03 - -2.9843025e+03 -2.6594775e+03 -3.6324999e+03 - -2.9047941e+03 -2.7421650e+03 -3.6338764e+03 - -2.8240104e+03 -2.8240104e+03 -3.6343371e+03 - -2.7421650e+03 -2.9047941e+03 -3.6338764e+03 - -2.6594775e+03 -2.9843025e+03 -3.6324999e+03 - -2.5761692e+03 -3.0623308e+03 -3.6302242e+03 - -2.4924601e+03 -3.1386867e+03 -3.6270765e+03 - -2.4085645e+03 -3.2131931e+03 -3.6230938e+03 - -2.3246885e+03 -3.2856900e+03 -3.6183221e+03 - -2.2410266e+03 -3.3560365e+03 -3.6128151e+03 - -2.1577593e+03 -3.4241120e+03 -3.6066330e+03 - -2.0750512e+03 -3.4898162e+03 -3.5998413e+03 - -1.9930495e+03 -3.5530694e+03 -3.5925092e+03 - -1.9118829e+03 -3.6138120e+03 -3.5847085e+03 - -1.8316617e+03 -3.6720031e+03 -3.5765122e+03 - -1.7524773e+03 -3.7276198e+03 -3.5679933e+03 - -1.6744030e+03 -3.7806548e+03 -3.5592242e+03 - -1.5974944e+03 -3.8311154e+03 -3.5502752e+03 - -1.5217911e+03 -3.8790215e+03 -3.5412143e+03 - -1.4473171e+03 -3.9244032e+03 -3.5321066e+03 - -1.3740826e+03 -3.9672997e+03 -3.5230135e+03 - -1.3020855e+03 -4.0077571e+03 -3.5139927e+03 - -1.2313124e+03 -4.0458270e+03 -3.5050982e+03 - -1.1617400e+03 -4.0815649e+03 -3.4963798e+03 - -1.0933369e+03 -4.1150290e+03 -3.4878833e+03 - -1.0260643e+03 -4.1462785e+03 -3.4796507e+03 - -9.5987720e+02 -4.1753734e+03 -3.4717200e+03 - -8.9472571e+02 -4.2023729e+03 -3.4641259e+03 - -8.3055565e+02 -4.2273349e+03 -3.4568992e+03 - -7.6730946e+02 -4.2503153e+03 -3.4500679e+03 - -7.0492688e+02 -4.2713676e+03 -3.4436567e+03 - -6.4334556e+02 -4.2905424e+03 -3.4376876e+03 - -5.8250152e+02 -4.3078869e+03 -3.4321800e+03 - -5.2232957e+02 -4.3234448e+03 -3.4271508e+03 - -4.6276366e+02 -4.3372561e+03 -3.4226147e+03 - -4.0373711e+02 -4.3493568e+03 -3.4185845e+03 - -3.4518286e+02 -4.3597790e+03 -3.4150711e+03 - -2.8703360e+02 -4.3685503e+03 -3.4120835e+03 - -2.2922186e+02 -4.3756945e+03 -3.4096292e+03 - -1.7168016e+02 -4.3812310e+03 -3.4077143e+03 - -1.1434095e+02 -4.3851748e+03 -3.4063433e+03 - -5.7136731e+01 -4.3875368e+03 -3.4055195e+03 - 0.0000000e+00 -4.3883234e+03 -3.4052446e+03 - 5.7136731e+01 -4.3875368e+03 -3.4055195e+03 - 1.1434095e+02 -4.3851748e+03 -3.4063433e+03 - 1.7168016e+02 -4.3812310e+03 -3.4077143e+03 - 2.2922186e+02 -4.3756945e+03 -3.4096292e+03 - 2.8703360e+02 -4.3685503e+03 -3.4120835e+03 - 3.4518286e+02 -4.3597790e+03 -3.4150711e+03 - 4.0373711e+02 -4.3493568e+03 -3.4185845e+03 - 4.6276366e+02 -4.3372561e+03 -3.4226147e+03 - 5.2232957e+02 -4.3234448e+03 -3.4271508e+03 - 5.8250152e+02 -4.3078869e+03 -3.4321800e+03 - 6.4334556e+02 -4.2905424e+03 -3.4376876e+03 - 7.0492688e+02 -4.2713676e+03 -3.4436567e+03 - 7.6730946e+02 -4.2503153e+03 -3.4500679e+03 - 8.3055565e+02 -4.2273349e+03 -3.4568992e+03 - 8.9472571e+02 -4.2023729e+03 -3.4641259e+03 - 9.5987720e+02 -4.1753734e+03 -3.4717200e+03 - 1.0260643e+03 -4.1462785e+03 -3.4796507e+03 - 1.0933369e+03 -4.1150290e+03 -3.4878833e+03 - 1.1617400e+03 -4.0815649e+03 -3.4963798e+03 - 1.2313124e+03 -4.0458270e+03 -3.5050982e+03 - 1.3020855e+03 -4.0077571e+03 -3.5139927e+03 - 1.3740826e+03 -3.9672997e+03 -3.5230135e+03 - 1.4473171e+03 -3.9244032e+03 -3.5321066e+03 - 1.5217911e+03 -3.8790215e+03 -3.5412143e+03 - 1.5974944e+03 -3.8311154e+03 -3.5502752e+03 - 1.6744030e+03 -3.7806548e+03 -3.5592242e+03 - 1.7524773e+03 -3.7276198e+03 -3.5679933e+03 - 1.8316617e+03 -3.6720031e+03 -3.5765122e+03 - 1.9118829e+03 -3.6138120e+03 -3.5847085e+03 - 1.9930495e+03 -3.5530694e+03 -3.5925092e+03 - 2.0750512e+03 -3.4898162e+03 -3.5998413e+03 - 2.1577593e+03 -3.4241120e+03 -3.6066330e+03 - 2.2410266e+03 -3.3560365e+03 -3.6128151e+03 - 2.3246885e+03 -3.2856900e+03 -3.6183221e+03 - 2.4085645e+03 -3.2131931e+03 -3.6230938e+03 - 2.4924601e+03 -3.1386867e+03 -3.6270765e+03 - 2.5761692e+03 -3.0623308e+03 -3.6302242e+03 - 2.6594775e+03 -2.9843025e+03 -3.6324999e+03 - 2.7421650e+03 -2.9047941e+03 -3.6338764e+03 - 2.8240104e+03 -2.8240104e+03 -3.6343371e+03 - 2.9047941e+03 -2.7421650e+03 -3.6338764e+03 - 2.9843025e+03 -2.6594775e+03 -3.6324999e+03 - 3.0623308e+03 -2.5761692e+03 -3.6302242e+03 - 3.1386867e+03 -2.4924601e+03 -3.6270765e+03 - 3.2131931e+03 -2.4085645e+03 -3.6230938e+03 - 3.2856900e+03 -2.3246885e+03 -3.6183221e+03 - 3.3560365e+03 -2.2410266e+03 -3.6128151e+03 - 3.4241120e+03 -2.1577593e+03 -3.6066330e+03 - 3.4898162e+03 -2.0750512e+03 -3.5998413e+03 - 3.5530694e+03 -1.9930495e+03 -3.5925092e+03 - 3.6138120e+03 -1.9118829e+03 -3.5847085e+03 - 3.6720031e+03 -1.8316617e+03 -3.5765122e+03 - 3.7276198e+03 -1.7524773e+03 -3.5679933e+03 - 3.7806548e+03 -1.6744030e+03 -3.5592242e+03 - 3.8311154e+03 -1.5974944e+03 -3.5502752e+03 - 3.8790215e+03 -1.5217911e+03 -3.5412143e+03 - 3.9244032e+03 -1.4473171e+03 -3.5321066e+03 - 3.9672997e+03 -1.3740826e+03 -3.5230135e+03 - 4.0077571e+03 -1.3020855e+03 -3.5139927e+03 - 4.0458270e+03 -1.2313124e+03 -3.5050982e+03 - 4.0815649e+03 -1.1617400e+03 -3.4963798e+03 - 4.1150290e+03 -1.0933369e+03 -3.4878833e+03 - 4.1462785e+03 -1.0260643e+03 -3.4796507e+03 - 4.1753734e+03 -9.5987720e+02 -3.4717200e+03 - 4.2023729e+03 -8.9472571e+02 -3.4641259e+03 - 4.2273349e+03 -8.3055565e+02 -3.4568992e+03 - 4.2503153e+03 -7.6730946e+02 -3.4500679e+03 - 4.2713676e+03 -7.0492688e+02 -3.4436567e+03 - 4.2905424e+03 -6.4334556e+02 -3.4376876e+03 - 4.3078869e+03 -5.8250152e+02 -3.4321800e+03 - 4.3234448e+03 -5.2232957e+02 -3.4271508e+03 - 4.3372561e+03 -4.6276366e+02 -3.4226147e+03 - 4.3493568e+03 -4.0373711e+02 -3.4185845e+03 - 4.3597790e+03 -3.4518286e+02 -3.4150711e+03 - 4.3685503e+03 -2.8703360e+02 -3.4120835e+03 - 4.3756945e+03 -2.2922186e+02 -3.4096292e+03 - 4.3812310e+03 -1.7168016e+02 -3.4077143e+03 - 4.3851748e+03 -1.1434095e+02 -3.4063433e+03 - 4.3875368e+03 -5.7136731e+01 -3.4055195e+03 - 4.3883234e+03 0.0000000e+00 -3.4052446e+03 - 4.3461369e+03 -4.8134273e-09 -3.4556338e+03 - 4.3453489e+03 5.7225953e+01 -3.4558984e+03 - 4.3429828e+03 1.1451747e+02 -3.4566918e+03 - 4.3390326e+03 1.7194011e+02 -3.4580120e+03 - 4.3334877e+03 2.2955941e+02 -3.4598556e+03 - 4.3263337e+03 2.8744082e+02 -3.4622180e+03 - 4.3175521e+03 3.4564974e+02 -3.4650932e+03 - 4.3071203e+03 4.0425136e+02 -3.4684735e+03 - 4.2950116e+03 4.6331065e+02 -3.4723497e+03 - 4.2811956e+03 5.2289216e+02 -3.4767108e+03 - 4.2656379e+03 5.8305989e+02 -3.4815441e+03 - 4.2483005e+03 6.4387706e+02 -3.4868346e+03 - 4.2291420e+03 7.0540583e+02 -3.4925655e+03 - 4.2081177e+03 7.6770696e+02 -3.4987174e+03 - 4.1851798e+03 8.3083940e+02 -3.5052685e+03 - 4.1602779e+03 8.9485977e+02 -3.5121942e+03 - 4.1333597e+03 9.5982183e+02 -3.5194672e+03 - 4.1043710e+03 1.0257758e+03 -3.5270569e+03 - 4.0732565e+03 1.0927675e+03 -3.5349295e+03 - 4.0399610e+03 1.1608376e+03 -3.5430479e+03 - 4.0044297e+03 1.2300207e+03 -3.5513714e+03 - 3.9666094e+03 1.3003442e+03 -3.5598555e+03 - 3.9264497e+03 1.3718269e+03 -3.5684524e+03 - 3.8839043e+03 1.4444784e+03 -3.5771103e+03 - 3.8389323e+03 1.5182973e+03 -3.5857740e+03 - 3.7914998e+03 1.5932701e+03 -3.5943849e+03 - 3.7415814e+03 1.6693703e+03 -3.6028815e+03 - 3.6891620e+03 1.7465567e+03 -3.6111994e+03 - 3.6342384e+03 1.8247725e+03 -3.6192724e+03 - 3.5768210e+03 1.9039447e+03 -3.6270326e+03 - 3.5169353e+03 1.9839833e+03 -3.6344117e+03 - 3.4546235e+03 2.0647808e+03 -3.6413417e+03 - 3.3899454e+03 2.1462124e+03 -3.6477557e+03 - 3.3229791e+03 2.2281367e+03 -3.6535898e+03 - 3.2538222e+03 2.3103961e+03 -3.6587832e+03 - 3.1825908e+03 2.3928186e+03 -3.6632806e+03 - 3.1094197e+03 2.4752195e+03 -3.6670324e+03 - 3.0344611e+03 2.5574036e+03 -3.6699964e+03 - 2.9578832e+03 2.6391683e+03 -3.6721386e+03 - 2.8798678e+03 2.7203061e+03 -3.6734341e+03 - 2.8006083e+03 2.8006083e+03 -3.6738676e+03 - 2.7203061e+03 2.8798678e+03 -3.6734341e+03 - 2.6391683e+03 2.9578832e+03 -3.6721386e+03 - 2.5574036e+03 3.0344611e+03 -3.6699964e+03 - 2.4752195e+03 3.1094197e+03 -3.6670324e+03 - 2.3928186e+03 3.1825908e+03 -3.6632806e+03 - 2.3103961e+03 3.2538222e+03 -3.6587832e+03 - 2.2281367e+03 3.3229791e+03 -3.6535898e+03 - 2.1462124e+03 3.3899454e+03 -3.6477557e+03 - 2.0647808e+03 3.4546235e+03 -3.6413417e+03 - 1.9839833e+03 3.5169353e+03 -3.6344117e+03 - 1.9039447e+03 3.5768210e+03 -3.6270326e+03 - 1.8247725e+03 3.6342384e+03 -3.6192724e+03 - 1.7465567e+03 3.6891620e+03 -3.6111994e+03 - 1.6693703e+03 3.7415814e+03 -3.6028815e+03 - 1.5932701e+03 3.7914998e+03 -3.5943849e+03 - 1.5182973e+03 3.8389323e+03 -3.5857740e+03 - 1.4444784e+03 3.8839043e+03 -3.5771103e+03 - 1.3718269e+03 3.9264497e+03 -3.5684524e+03 - 1.3003442e+03 3.9666094e+03 -3.5598555e+03 - 1.2300207e+03 4.0044297e+03 -3.5513714e+03 - 1.1608376e+03 4.0399610e+03 -3.5430479e+03 - 1.0927675e+03 4.0732565e+03 -3.5349295e+03 - 1.0257758e+03 4.1043710e+03 -3.5270569e+03 - 9.5982183e+02 4.1333597e+03 -3.5194672e+03 - 8.9485977e+02 4.1602779e+03 -3.5121942e+03 - 8.3083940e+02 4.1851798e+03 -3.5052685e+03 - 7.6770696e+02 4.2081177e+03 -3.4987174e+03 - 7.0540583e+02 4.2291420e+03 -3.4925655e+03 - 6.4387706e+02 4.2483005e+03 -3.4868346e+03 - 5.8305989e+02 4.2656379e+03 -3.4815441e+03 - 5.2289216e+02 4.2811956e+03 -3.4767108e+03 - 4.6331065e+02 4.2950116e+03 -3.4723497e+03 - 4.0425136e+02 4.3071203e+03 -3.4684735e+03 - 3.4564974e+02 4.3175521e+03 -3.4650932e+03 - 2.8744082e+02 4.3263337e+03 -3.4622180e+03 - 2.2955941e+02 4.3334877e+03 -3.4598556e+03 - 1.7194011e+02 4.3390326e+03 -3.4580120e+03 - 1.1451747e+02 4.3429828e+03 -3.4566918e+03 - 5.7225953e+01 4.3453489e+03 -3.4558984e+03 - 0.0000000e+00 4.3461369e+03 -3.4556338e+03 - -5.7225953e+01 4.3453489e+03 -3.4558984e+03 - -1.1451747e+02 4.3429828e+03 -3.4566918e+03 - -1.7194011e+02 4.3390326e+03 -3.4580120e+03 - -2.2955941e+02 4.3334877e+03 -3.4598556e+03 - -2.8744082e+02 4.3263337e+03 -3.4622180e+03 - -3.4564974e+02 4.3175521e+03 -3.4650932e+03 - -4.0425136e+02 4.3071203e+03 -3.4684735e+03 - -4.6331065e+02 4.2950116e+03 -3.4723497e+03 - -5.2289216e+02 4.2811956e+03 -3.4767108e+03 - -5.8305989e+02 4.2656379e+03 -3.4815441e+03 - -6.4387706e+02 4.2483005e+03 -3.4868346e+03 - -7.0540583e+02 4.2291420e+03 -3.4925655e+03 - -7.6770696e+02 4.2081177e+03 -3.4987174e+03 - -8.3083940e+02 4.1851798e+03 -3.5052685e+03 - -8.9485977e+02 4.1602779e+03 -3.5121942e+03 - -9.5982183e+02 4.1333597e+03 -3.5194672e+03 - -1.0257758e+03 4.1043710e+03 -3.5270569e+03 - -1.0927675e+03 4.0732565e+03 -3.5349295e+03 - -1.1608376e+03 4.0399610e+03 -3.5430479e+03 - -1.2300207e+03 4.0044297e+03 -3.5513714e+03 - -1.3003442e+03 3.9666094e+03 -3.5598555e+03 - -1.3718269e+03 3.9264497e+03 -3.5684524e+03 - -1.4444784e+03 3.8839043e+03 -3.5771103e+03 - -1.5182973e+03 3.8389323e+03 -3.5857740e+03 - -1.5932701e+03 3.7914998e+03 -3.5943849e+03 - -1.6693703e+03 3.7415814e+03 -3.6028815e+03 - -1.7465567e+03 3.6891620e+03 -3.6111994e+03 - -1.8247725e+03 3.6342384e+03 -3.6192724e+03 - -1.9039447e+03 3.5768210e+03 -3.6270326e+03 - -1.9839833e+03 3.5169353e+03 -3.6344117e+03 - -2.0647808e+03 3.4546235e+03 -3.6413417e+03 - -2.1462124e+03 3.3899454e+03 -3.6477557e+03 - -2.2281367e+03 3.3229791e+03 -3.6535898e+03 - -2.3103961e+03 3.2538222e+03 -3.6587832e+03 - -2.3928186e+03 3.1825908e+03 -3.6632806e+03 - -2.4752195e+03 3.1094197e+03 -3.6670324e+03 - -2.5574036e+03 3.0344611e+03 -3.6699964e+03 - -2.6391683e+03 2.9578832e+03 -3.6721386e+03 - -2.7203061e+03 2.8798678e+03 -3.6734341e+03 - -2.8006083e+03 2.8006083e+03 -3.6738676e+03 - -2.8798678e+03 2.7203061e+03 -3.6734341e+03 - -2.9578832e+03 2.6391683e+03 -3.6721386e+03 - -3.0344611e+03 2.5574036e+03 -3.6699964e+03 - -3.1094197e+03 2.4752195e+03 -3.6670324e+03 - -3.1825908e+03 2.3928186e+03 -3.6632806e+03 - -3.2538222e+03 2.3103961e+03 -3.6587832e+03 - -3.3229791e+03 2.2281367e+03 -3.6535898e+03 - -3.3899454e+03 2.1462124e+03 -3.6477557e+03 - -3.4546235e+03 2.0647808e+03 -3.6413417e+03 - -3.5169353e+03 1.9839833e+03 -3.6344117e+03 - -3.5768210e+03 1.9039447e+03 -3.6270326e+03 - -3.6342384e+03 1.8247725e+03 -3.6192724e+03 - -3.6891620e+03 1.7465567e+03 -3.6111994e+03 - -3.7415814e+03 1.6693703e+03 -3.6028815e+03 - -3.7914998e+03 1.5932701e+03 -3.5943849e+03 - -3.8389323e+03 1.5182973e+03 -3.5857740e+03 - -3.8839043e+03 1.4444784e+03 -3.5771103e+03 - -3.9264497e+03 1.3718269e+03 -3.5684524e+03 - -3.9666094e+03 1.3003442e+03 -3.5598555e+03 - -4.0044297e+03 1.2300207e+03 -3.5513714e+03 - -4.0399610e+03 1.1608376e+03 -3.5430479e+03 - -4.0732565e+03 1.0927675e+03 -3.5349295e+03 - -4.1043710e+03 1.0257758e+03 -3.5270569e+03 - -4.1333597e+03 9.5982183e+02 -3.5194672e+03 - -4.1602779e+03 8.9485977e+02 -3.5121942e+03 - -4.1851798e+03 8.3083940e+02 -3.5052685e+03 - -4.2081177e+03 7.6770696e+02 -3.4987174e+03 - -4.2291420e+03 7.0540583e+02 -3.4925655e+03 - -4.2483005e+03 6.4387706e+02 -3.4868346e+03 - -4.2656379e+03 5.8305989e+02 -3.4815441e+03 - -4.2811956e+03 5.2289216e+02 -3.4767108e+03 - -4.2950116e+03 4.6331065e+02 -3.4723497e+03 - -4.3071203e+03 4.0425136e+02 -3.4684735e+03 - -4.3175521e+03 3.4564974e+02 -3.4650932e+03 - -4.3263337e+03 2.8744082e+02 -3.4622180e+03 - -4.3334877e+03 2.2955941e+02 -3.4598556e+03 - -4.3390326e+03 1.7194011e+02 -3.4580120e+03 - -4.3429828e+03 1.1451747e+02 -3.4566918e+03 - -4.3453489e+03 5.7225953e+01 -3.4558984e+03 - -4.3461369e+03 4.8134273e-09 -3.4556338e+03 - -4.3453489e+03 -5.7225953e+01 -3.4558984e+03 - -4.3429828e+03 -1.1451747e+02 -3.4566918e+03 - -4.3390326e+03 -1.7194011e+02 -3.4580120e+03 - -4.3334877e+03 -2.2955941e+02 -3.4598556e+03 - -4.3263337e+03 -2.8744082e+02 -3.4622180e+03 - -4.3175521e+03 -3.4564974e+02 -3.4650932e+03 - -4.3071203e+03 -4.0425136e+02 -3.4684735e+03 - -4.2950116e+03 -4.6331065e+02 -3.4723497e+03 - -4.2811956e+03 -5.2289216e+02 -3.4767108e+03 - -4.2656379e+03 -5.8305989e+02 -3.4815441e+03 - -4.2483005e+03 -6.4387706e+02 -3.4868346e+03 - -4.2291420e+03 -7.0540583e+02 -3.4925655e+03 - -4.2081177e+03 -7.6770696e+02 -3.4987174e+03 - -4.1851798e+03 -8.3083940e+02 -3.5052685e+03 - -4.1602779e+03 -8.9485977e+02 -3.5121942e+03 - -4.1333597e+03 -9.5982183e+02 -3.5194672e+03 - -4.1043710e+03 -1.0257758e+03 -3.5270569e+03 - -4.0732565e+03 -1.0927675e+03 -3.5349295e+03 - -4.0399610e+03 -1.1608376e+03 -3.5430479e+03 - -4.0044297e+03 -1.2300207e+03 -3.5513714e+03 - -3.9666094e+03 -1.3003442e+03 -3.5598555e+03 - -3.9264497e+03 -1.3718269e+03 -3.5684524e+03 - -3.8839043e+03 -1.4444784e+03 -3.5771103e+03 - -3.8389323e+03 -1.5182973e+03 -3.5857740e+03 - -3.7914998e+03 -1.5932701e+03 -3.5943849e+03 - -3.7415814e+03 -1.6693703e+03 -3.6028815e+03 - -3.6891620e+03 -1.7465567e+03 -3.6111994e+03 - -3.6342384e+03 -1.8247725e+03 -3.6192724e+03 - -3.5768210e+03 -1.9039447e+03 -3.6270326e+03 - -3.5169353e+03 -1.9839833e+03 -3.6344117e+03 - -3.4546235e+03 -2.0647808e+03 -3.6413417e+03 - -3.3899454e+03 -2.1462124e+03 -3.6477557e+03 - -3.3229791e+03 -2.2281367e+03 -3.6535898e+03 - -3.2538222e+03 -2.3103961e+03 -3.6587832e+03 - -3.1825908e+03 -2.3928186e+03 -3.6632806e+03 - -3.1094197e+03 -2.4752195e+03 -3.6670324e+03 - -3.0344611e+03 -2.5574036e+03 -3.6699964e+03 - -2.9578832e+03 -2.6391683e+03 -3.6721386e+03 - -2.8798678e+03 -2.7203061e+03 -3.6734341e+03 - -2.8006083e+03 -2.8006083e+03 -3.6738676e+03 - -2.7203061e+03 -2.8798678e+03 -3.6734341e+03 - -2.6391683e+03 -2.9578832e+03 -3.6721386e+03 - -2.5574036e+03 -3.0344611e+03 -3.6699964e+03 - -2.4752195e+03 -3.1094197e+03 -3.6670324e+03 - -2.3928186e+03 -3.1825908e+03 -3.6632806e+03 - -2.3103961e+03 -3.2538222e+03 -3.6587832e+03 - -2.2281367e+03 -3.3229791e+03 -3.6535898e+03 - -2.1462124e+03 -3.3899454e+03 -3.6477557e+03 - -2.0647808e+03 -3.4546235e+03 -3.6413417e+03 - -1.9839833e+03 -3.5169353e+03 -3.6344117e+03 - -1.9039447e+03 -3.5768210e+03 -3.6270326e+03 - -1.8247725e+03 -3.6342384e+03 -3.6192724e+03 - -1.7465567e+03 -3.6891620e+03 -3.6111994e+03 - -1.6693703e+03 -3.7415814e+03 -3.6028815e+03 - -1.5932701e+03 -3.7914998e+03 -3.5943849e+03 - -1.5182973e+03 -3.8389323e+03 -3.5857740e+03 - -1.4444784e+03 -3.8839043e+03 -3.5771103e+03 - -1.3718269e+03 -3.9264497e+03 -3.5684524e+03 - -1.3003442e+03 -3.9666094e+03 -3.5598555e+03 - -1.2300207e+03 -4.0044297e+03 -3.5513714e+03 - -1.1608376e+03 -4.0399610e+03 -3.5430479e+03 - -1.0927675e+03 -4.0732565e+03 -3.5349295e+03 - -1.0257758e+03 -4.1043710e+03 -3.5270569e+03 - -9.5982183e+02 -4.1333597e+03 -3.5194672e+03 - -8.9485977e+02 -4.1602779e+03 -3.5121942e+03 - -8.3083940e+02 -4.1851798e+03 -3.5052685e+03 - -7.6770696e+02 -4.2081177e+03 -3.4987174e+03 - -7.0540583e+02 -4.2291420e+03 -3.4925655e+03 - -6.4387706e+02 -4.2483005e+03 -3.4868346e+03 - -5.8305989e+02 -4.2656379e+03 -3.4815441e+03 - -5.2289216e+02 -4.2811956e+03 -3.4767108e+03 - -4.6331065e+02 -4.2950116e+03 -3.4723497e+03 - -4.0425136e+02 -4.3071203e+03 -3.4684735e+03 - -3.4564974e+02 -4.3175521e+03 -3.4650932e+03 - -2.8744082e+02 -4.3263337e+03 -3.4622180e+03 - -2.2955941e+02 -4.3334877e+03 -3.4598556e+03 - -1.7194011e+02 -4.3390326e+03 -3.4580120e+03 - -1.1451747e+02 -4.3429828e+03 -3.4566918e+03 - -5.7225953e+01 -4.3453489e+03 -3.4558984e+03 - 0.0000000e+00 -4.3461369e+03 -3.4556338e+03 - 5.7225953e+01 -4.3453489e+03 -3.4558984e+03 - 1.1451747e+02 -4.3429828e+03 -3.4566918e+03 - 1.7194011e+02 -4.3390326e+03 -3.4580120e+03 - 2.2955941e+02 -4.3334877e+03 -3.4598556e+03 - 2.8744082e+02 -4.3263337e+03 -3.4622180e+03 - 3.4564974e+02 -4.3175521e+03 -3.4650932e+03 - 4.0425136e+02 -4.3071203e+03 -3.4684735e+03 - 4.6331065e+02 -4.2950116e+03 -3.4723497e+03 - 5.2289216e+02 -4.2811956e+03 -3.4767108e+03 - 5.8305989e+02 -4.2656379e+03 -3.4815441e+03 - 6.4387706e+02 -4.2483005e+03 -3.4868346e+03 - 7.0540583e+02 -4.2291420e+03 -3.4925655e+03 - 7.6770696e+02 -4.2081177e+03 -3.4987174e+03 - 8.3083940e+02 -4.1851798e+03 -3.5052685e+03 - 8.9485977e+02 -4.1602779e+03 -3.5121942e+03 - 9.5982183e+02 -4.1333597e+03 -3.5194672e+03 - 1.0257758e+03 -4.1043710e+03 -3.5270569e+03 - 1.0927675e+03 -4.0732565e+03 -3.5349295e+03 - 1.1608376e+03 -4.0399610e+03 -3.5430479e+03 - 1.2300207e+03 -4.0044297e+03 -3.5513714e+03 - 1.3003442e+03 -3.9666094e+03 -3.5598555e+03 - 1.3718269e+03 -3.9264497e+03 -3.5684524e+03 - 1.4444784e+03 -3.8839043e+03 -3.5771103e+03 - 1.5182973e+03 -3.8389323e+03 -3.5857740e+03 - 1.5932701e+03 -3.7914998e+03 -3.5943849e+03 - 1.6693703e+03 -3.7415814e+03 -3.6028815e+03 - 1.7465567e+03 -3.6891620e+03 -3.6111994e+03 - 1.8247725e+03 -3.6342384e+03 -3.6192724e+03 - 1.9039447e+03 -3.5768210e+03 -3.6270326e+03 - 1.9839833e+03 -3.5169353e+03 -3.6344117e+03 - 2.0647808e+03 -3.4546235e+03 -3.6413417e+03 - 2.1462124e+03 -3.3899454e+03 -3.6477557e+03 - 2.2281367e+03 -3.3229791e+03 -3.6535898e+03 - 2.3103961e+03 -3.2538222e+03 -3.6587832e+03 - 2.3928186e+03 -3.1825908e+03 -3.6632806e+03 - 2.4752195e+03 -3.1094197e+03 -3.6670324e+03 - 2.5574036e+03 -3.0344611e+03 -3.6699964e+03 - 2.6391683e+03 -2.9578832e+03 -3.6721386e+03 - 2.7203061e+03 -2.8798678e+03 -3.6734341e+03 - 2.8006083e+03 -2.8006083e+03 -3.6738676e+03 - 2.8798678e+03 -2.7203061e+03 -3.6734341e+03 - 2.9578832e+03 -2.6391683e+03 -3.6721386e+03 - 3.0344611e+03 -2.5574036e+03 -3.6699964e+03 - 3.1094197e+03 -2.4752195e+03 -3.6670324e+03 - 3.1825908e+03 -2.3928186e+03 -3.6632806e+03 - 3.2538222e+03 -2.3103961e+03 -3.6587832e+03 - 3.3229791e+03 -2.2281367e+03 -3.6535898e+03 - 3.3899454e+03 -2.1462124e+03 -3.6477557e+03 - 3.4546235e+03 -2.0647808e+03 -3.6413417e+03 - 3.5169353e+03 -1.9839833e+03 -3.6344117e+03 - 3.5768210e+03 -1.9039447e+03 -3.6270326e+03 - 3.6342384e+03 -1.8247725e+03 -3.6192724e+03 - 3.6891620e+03 -1.7465567e+03 -3.6111994e+03 - 3.7415814e+03 -1.6693703e+03 -3.6028815e+03 - 3.7914998e+03 -1.5932701e+03 -3.5943849e+03 - 3.8389323e+03 -1.5182973e+03 -3.5857740e+03 - 3.8839043e+03 -1.4444784e+03 -3.5771103e+03 - 3.9264497e+03 -1.3718269e+03 -3.5684524e+03 - 3.9666094e+03 -1.3003442e+03 -3.5598555e+03 - 4.0044297e+03 -1.2300207e+03 -3.5513714e+03 - 4.0399610e+03 -1.1608376e+03 -3.5430479e+03 - 4.0732565e+03 -1.0927675e+03 -3.5349295e+03 - 4.1043710e+03 -1.0257758e+03 -3.5270569e+03 - 4.1333597e+03 -9.5982183e+02 -3.5194672e+03 - 4.1602779e+03 -8.9485977e+02 -3.5121942e+03 - 4.1851798e+03 -8.3083940e+02 -3.5052685e+03 - 4.2081177e+03 -7.6770696e+02 -3.4987174e+03 - 4.2291420e+03 -7.0540583e+02 -3.4925655e+03 - 4.2483005e+03 -6.4387706e+02 -3.4868346e+03 - 4.2656379e+03 -5.8305989e+02 -3.4815441e+03 - 4.2811956e+03 -5.2289216e+02 -3.4767108e+03 - 4.2950116e+03 -4.6331065e+02 -3.4723497e+03 - 4.3071203e+03 -4.0425136e+02 -3.4684735e+03 - 4.3175521e+03 -3.4564974e+02 -3.4650932e+03 - 4.3263337e+03 -2.8744082e+02 -3.4622180e+03 - 4.3334877e+03 -2.2955941e+02 -3.4598556e+03 - 4.3390326e+03 -1.7194011e+02 -3.4580120e+03 - 4.3429828e+03 -1.1451747e+02 -3.4566918e+03 - 4.3453489e+03 -5.7225953e+01 -3.4558984e+03 - 4.3461369e+03 -4.8134273e-09 -3.4556338e+03 - 4.3033531e+03 -4.8134273e-09 -3.5047439e+03 - 4.3025642e+03 5.7299072e+01 -3.5049984e+03 - 4.3001957e+03 1.1466172e+02 -3.5057614e+03 - 4.2962416e+03 1.7215149e+02 -3.5070309e+03 - 4.2906919e+03 2.2983185e+02 -3.5088036e+03 - 4.2835329e+03 2.8776617e+02 -3.5110746e+03 - 4.2747467e+03 3.4601763e+02 -3.5138379e+03 - 4.2643120e+03 4.0464915e+02 -3.5170858e+03 - 4.2522033e+03 4.6372327e+02 -3.5208090e+03 - 4.2383915e+03 5.2330201e+02 -3.5249964e+03 - 4.2228442e+03 5.8344669e+02 -3.5296352e+03 - 4.2055251e+03 6.4421766e+02 -3.5347106e+03 - 4.1863953e+03 7.0567407e+02 -3.5402056e+03 - 4.1654123e+03 7.6787348e+02 -3.5461011e+03 - 4.1425313e+03 8.3087146e+02 -3.5523755e+03 - 4.1177050e+03 8.9472110e+02 -3.5590044e+03 - 4.0908844e+03 9.5947243e+02 -3.5659611e+03 - 4.0620190e+03 1.0251718e+03 -3.5732154e+03 - 4.0310576e+03 1.0918612e+03 -3.5807345e+03 - 3.9979492e+03 1.1595771e+03 -3.5884823e+03 - 3.9626435e+03 1.2283502e+03 -3.5964193e+03 - 3.9250920e+03 1.2982038e+03 -3.6045026e+03 - 3.8852492e+03 1.3691529e+03 -3.6126861e+03 - 3.8430738e+03 1.4412035e+03 -3.6209204e+03 - 3.7985297e+03 1.5143509e+03 -3.6291527e+03 - 3.7515880e+03 1.5885788e+03 -3.6373274e+03 - 3.7022278e+03 1.6638584e+03 -3.6453861e+03 - 3.6504383e+03 1.7401471e+03 -3.6532681e+03 - 3.5962199e+03 1.8173875e+03 -3.6609111e+03 - 3.5395859e+03 1.8955071e+03 -3.6682515e+03 - 3.4805641e+03 1.9744174e+03 -3.6752255e+03 - 3.4191976e+03 2.0540137e+03 -3.6817696e+03 - 3.3555459e+03 2.1341755e+03 -3.6878219e+03 - 3.2896859e+03 2.2147668e+03 -3.6933230e+03 - 3.2217120e+03 2.2956370e+03 -3.6982170e+03 - 3.1517361e+03 2.3766222e+03 -3.7024526e+03 - 3.0798870e+03 2.4575471e+03 -3.7059843e+03 - 3.0063096e+03 2.5382269e+03 -3.7087732e+03 - 2.9311633e+03 2.6184701e+03 -3.7107883e+03 - 2.8546202e+03 2.6980810e+03 -3.7120067e+03 - 2.7768627e+03 2.7768627e+03 -3.7124144e+03 - 2.6980810e+03 2.8546202e+03 -3.7120067e+03 - 2.6184701e+03 2.9311633e+03 -3.7107883e+03 - 2.5382269e+03 3.0063096e+03 -3.7087732e+03 - 2.4575471e+03 3.0798870e+03 -3.7059843e+03 - 2.3766222e+03 3.1517361e+03 -3.7024526e+03 - 2.2956370e+03 3.2217120e+03 -3.6982170e+03 - 2.2147668e+03 3.2896859e+03 -3.6933230e+03 - 2.1341755e+03 3.3555459e+03 -3.6878219e+03 - 2.0540137e+03 3.4191976e+03 -3.6817696e+03 - 1.9744174e+03 3.4805641e+03 -3.6752255e+03 - 1.8955071e+03 3.5395859e+03 -3.6682515e+03 - 1.8173875e+03 3.5962199e+03 -3.6609111e+03 - 1.7401471e+03 3.6504383e+03 -3.6532681e+03 - 1.6638584e+03 3.7022278e+03 -3.6453861e+03 - 1.5885788e+03 3.7515880e+03 -3.6373274e+03 - 1.5143509e+03 3.7985297e+03 -3.6291527e+03 - 1.4412035e+03 3.8430738e+03 -3.6209204e+03 - 1.3691529e+03 3.8852492e+03 -3.6126861e+03 - 1.2982038e+03 3.9250920e+03 -3.6045026e+03 - 1.2283502e+03 3.9626435e+03 -3.5964193e+03 - 1.1595771e+03 3.9979492e+03 -3.5884823e+03 - 1.0918612e+03 4.0310576e+03 -3.5807345e+03 - 1.0251718e+03 4.0620190e+03 -3.5732154e+03 - 9.5947243e+02 4.0908844e+03 -3.5659611e+03 - 8.9472110e+02 4.1177050e+03 -3.5590044e+03 - 8.3087146e+02 4.1425313e+03 -3.5523755e+03 - 7.6787348e+02 4.1654123e+03 -3.5461011e+03 - 7.0567407e+02 4.1863953e+03 -3.5402056e+03 - 6.4421766e+02 4.2055251e+03 -3.5347106e+03 - 5.8344669e+02 4.2228442e+03 -3.5296352e+03 - 5.2330201e+02 4.2383915e+03 -3.5249964e+03 - 4.6372327e+02 4.2522033e+03 -3.5208090e+03 - 4.0464915e+02 4.2643120e+03 -3.5170858e+03 - 3.4601763e+02 4.2747467e+03 -3.5138379e+03 - 2.8776617e+02 4.2835329e+03 -3.5110746e+03 - 2.2983185e+02 4.2906919e+03 -3.5088036e+03 - 1.7215149e+02 4.2962416e+03 -3.5070309e+03 - 1.1466172e+02 4.3001957e+03 -3.5057614e+03 - 5.7299072e+01 4.3025642e+03 -3.5049984e+03 - 0.0000000e+00 4.3033531e+03 -3.5047439e+03 - -5.7299072e+01 4.3025642e+03 -3.5049984e+03 - -1.1466172e+02 4.3001957e+03 -3.5057614e+03 - -1.7215149e+02 4.2962416e+03 -3.5070309e+03 - -2.2983185e+02 4.2906919e+03 -3.5088036e+03 - -2.8776617e+02 4.2835329e+03 -3.5110746e+03 - -3.4601763e+02 4.2747467e+03 -3.5138379e+03 - -4.0464915e+02 4.2643120e+03 -3.5170858e+03 - -4.6372327e+02 4.2522033e+03 -3.5208090e+03 - -5.2330201e+02 4.2383915e+03 -3.5249964e+03 - -5.8344669e+02 4.2228442e+03 -3.5296352e+03 - -6.4421766e+02 4.2055251e+03 -3.5347106e+03 - -7.0567407e+02 4.1863953e+03 -3.5402056e+03 - -7.6787348e+02 4.1654123e+03 -3.5461011e+03 - -8.3087146e+02 4.1425313e+03 -3.5523755e+03 - -8.9472110e+02 4.1177050e+03 -3.5590044e+03 - -9.5947243e+02 4.0908844e+03 -3.5659611e+03 - -1.0251718e+03 4.0620190e+03 -3.5732154e+03 - -1.0918612e+03 4.0310576e+03 -3.5807345e+03 - -1.1595771e+03 3.9979492e+03 -3.5884823e+03 - -1.2283502e+03 3.9626435e+03 -3.5964193e+03 - -1.2982038e+03 3.9250920e+03 -3.6045026e+03 - -1.3691529e+03 3.8852492e+03 -3.6126861e+03 - -1.4412035e+03 3.8430738e+03 -3.6209204e+03 - -1.5143509e+03 3.7985297e+03 -3.6291527e+03 - -1.5885788e+03 3.7515880e+03 -3.6373274e+03 - -1.6638584e+03 3.7022278e+03 -3.6453861e+03 - -1.7401471e+03 3.6504383e+03 -3.6532681e+03 - -1.8173875e+03 3.5962199e+03 -3.6609111e+03 - -1.8955071e+03 3.5395859e+03 -3.6682515e+03 - -1.9744174e+03 3.4805641e+03 -3.6752255e+03 - -2.0540137e+03 3.4191976e+03 -3.6817696e+03 - -2.1341755e+03 3.3555459e+03 -3.6878219e+03 - -2.2147668e+03 3.2896859e+03 -3.6933230e+03 - -2.2956370e+03 3.2217120e+03 -3.6982170e+03 - -2.3766222e+03 3.1517361e+03 -3.7024526e+03 - -2.4575471e+03 3.0798870e+03 -3.7059843e+03 - -2.5382269e+03 3.0063096e+03 -3.7087732e+03 - -2.6184701e+03 2.9311633e+03 -3.7107883e+03 - -2.6980810e+03 2.8546202e+03 -3.7120067e+03 - -2.7768627e+03 2.7768627e+03 -3.7124144e+03 - -2.8546202e+03 2.6980810e+03 -3.7120067e+03 - -2.9311633e+03 2.6184701e+03 -3.7107883e+03 - -3.0063096e+03 2.5382269e+03 -3.7087732e+03 - -3.0798870e+03 2.4575471e+03 -3.7059843e+03 - -3.1517361e+03 2.3766222e+03 -3.7024526e+03 - -3.2217120e+03 2.2956370e+03 -3.6982170e+03 - -3.2896859e+03 2.2147668e+03 -3.6933230e+03 - -3.3555459e+03 2.1341755e+03 -3.6878219e+03 - -3.4191976e+03 2.0540137e+03 -3.6817696e+03 - -3.4805641e+03 1.9744174e+03 -3.6752255e+03 - -3.5395859e+03 1.8955071e+03 -3.6682515e+03 - -3.5962199e+03 1.8173875e+03 -3.6609111e+03 - -3.6504383e+03 1.7401471e+03 -3.6532681e+03 - -3.7022278e+03 1.6638584e+03 -3.6453861e+03 - -3.7515880e+03 1.5885788e+03 -3.6373274e+03 - -3.7985297e+03 1.5143509e+03 -3.6291527e+03 - -3.8430738e+03 1.4412035e+03 -3.6209204e+03 - -3.8852492e+03 1.3691529e+03 -3.6126861e+03 - -3.9250920e+03 1.2982038e+03 -3.6045026e+03 - -3.9626435e+03 1.2283502e+03 -3.5964193e+03 - -3.9979492e+03 1.1595771e+03 -3.5884823e+03 - -4.0310576e+03 1.0918612e+03 -3.5807345e+03 - -4.0620190e+03 1.0251718e+03 -3.5732154e+03 - -4.0908844e+03 9.5947243e+02 -3.5659611e+03 - -4.1177050e+03 8.9472110e+02 -3.5590044e+03 - -4.1425313e+03 8.3087146e+02 -3.5523755e+03 - -4.1654123e+03 7.6787348e+02 -3.5461011e+03 - -4.1863953e+03 7.0567407e+02 -3.5402056e+03 - -4.2055251e+03 6.4421766e+02 -3.5347106e+03 - -4.2228442e+03 5.8344669e+02 -3.5296352e+03 - -4.2383915e+03 5.2330201e+02 -3.5249964e+03 - -4.2522033e+03 4.6372327e+02 -3.5208090e+03 - -4.2643120e+03 4.0464915e+02 -3.5170858e+03 - -4.2747467e+03 3.4601763e+02 -3.5138379e+03 - -4.2835329e+03 2.8776617e+02 -3.5110746e+03 - -4.2906919e+03 2.2983185e+02 -3.5088036e+03 - -4.2962416e+03 1.7215149e+02 -3.5070309e+03 - -4.3001957e+03 1.1466172e+02 -3.5057614e+03 - -4.3025642e+03 5.7299072e+01 -3.5049984e+03 - -4.3033531e+03 4.8134273e-09 -3.5047439e+03 - -4.3025642e+03 -5.7299072e+01 -3.5049984e+03 - -4.3001957e+03 -1.1466172e+02 -3.5057614e+03 - -4.2962416e+03 -1.7215149e+02 -3.5070309e+03 - -4.2906919e+03 -2.2983185e+02 -3.5088036e+03 - -4.2835329e+03 -2.8776617e+02 -3.5110746e+03 - -4.2747467e+03 -3.4601763e+02 -3.5138379e+03 - -4.2643120e+03 -4.0464915e+02 -3.5170858e+03 - -4.2522033e+03 -4.6372327e+02 -3.5208090e+03 - -4.2383915e+03 -5.2330201e+02 -3.5249964e+03 - -4.2228442e+03 -5.8344669e+02 -3.5296352e+03 - -4.2055251e+03 -6.4421766e+02 -3.5347106e+03 - -4.1863953e+03 -7.0567407e+02 -3.5402056e+03 - -4.1654123e+03 -7.6787348e+02 -3.5461011e+03 - -4.1425313e+03 -8.3087146e+02 -3.5523755e+03 - -4.1177050e+03 -8.9472110e+02 -3.5590044e+03 - -4.0908844e+03 -9.5947243e+02 -3.5659611e+03 - -4.0620190e+03 -1.0251718e+03 -3.5732154e+03 - -4.0310576e+03 -1.0918612e+03 -3.5807345e+03 - -3.9979492e+03 -1.1595771e+03 -3.5884823e+03 - -3.9626435e+03 -1.2283502e+03 -3.5964193e+03 - -3.9250920e+03 -1.2982038e+03 -3.6045026e+03 - -3.8852492e+03 -1.3691529e+03 -3.6126861e+03 - -3.8430738e+03 -1.4412035e+03 -3.6209204e+03 - -3.7985297e+03 -1.5143509e+03 -3.6291527e+03 - -3.7515880e+03 -1.5885788e+03 -3.6373274e+03 - -3.7022278e+03 -1.6638584e+03 -3.6453861e+03 - -3.6504383e+03 -1.7401471e+03 -3.6532681e+03 - -3.5962199e+03 -1.8173875e+03 -3.6609111e+03 - -3.5395859e+03 -1.8955071e+03 -3.6682515e+03 - -3.4805641e+03 -1.9744174e+03 -3.6752255e+03 - -3.4191976e+03 -2.0540137e+03 -3.6817696e+03 - -3.3555459e+03 -2.1341755e+03 -3.6878219e+03 - -3.2896859e+03 -2.2147668e+03 -3.6933230e+03 - -3.2217120e+03 -2.2956370e+03 -3.6982170e+03 - -3.1517361e+03 -2.3766222e+03 -3.7024526e+03 - -3.0798870e+03 -2.4575471e+03 -3.7059843e+03 - -3.0063096e+03 -2.5382269e+03 -3.7087732e+03 - -2.9311633e+03 -2.6184701e+03 -3.7107883e+03 - -2.8546202e+03 -2.6980810e+03 -3.7120067e+03 - -2.7768627e+03 -2.7768627e+03 -3.7124144e+03 - -2.6980810e+03 -2.8546202e+03 -3.7120067e+03 - -2.6184701e+03 -2.9311633e+03 -3.7107883e+03 - -2.5382269e+03 -3.0063096e+03 -3.7087732e+03 - -2.4575471e+03 -3.0798870e+03 -3.7059843e+03 - -2.3766222e+03 -3.1517361e+03 -3.7024526e+03 - -2.2956370e+03 -3.2217120e+03 -3.6982170e+03 - -2.2147668e+03 -3.2896859e+03 -3.6933230e+03 - -2.1341755e+03 -3.3555459e+03 -3.6878219e+03 - -2.0540137e+03 -3.4191976e+03 -3.6817696e+03 - -1.9744174e+03 -3.4805641e+03 -3.6752255e+03 - -1.8955071e+03 -3.5395859e+03 -3.6682515e+03 - -1.8173875e+03 -3.5962199e+03 -3.6609111e+03 - -1.7401471e+03 -3.6504383e+03 -3.6532681e+03 - -1.6638584e+03 -3.7022278e+03 -3.6453861e+03 - -1.5885788e+03 -3.7515880e+03 -3.6373274e+03 - -1.5143509e+03 -3.7985297e+03 -3.6291527e+03 - -1.4412035e+03 -3.8430738e+03 -3.6209204e+03 - -1.3691529e+03 -3.8852492e+03 -3.6126861e+03 - -1.2982038e+03 -3.9250920e+03 -3.6045026e+03 - -1.2283502e+03 -3.9626435e+03 -3.5964193e+03 - -1.1595771e+03 -3.9979492e+03 -3.5884823e+03 - -1.0918612e+03 -4.0310576e+03 -3.5807345e+03 - -1.0251718e+03 -4.0620190e+03 -3.5732154e+03 - -9.5947243e+02 -4.0908844e+03 -3.5659611e+03 - -8.9472110e+02 -4.1177050e+03 -3.5590044e+03 - -8.3087146e+02 -4.1425313e+03 -3.5523755e+03 - -7.6787348e+02 -4.1654123e+03 -3.5461011e+03 - -7.0567407e+02 -4.1863953e+03 -3.5402056e+03 - -6.4421766e+02 -4.2055251e+03 -3.5347106e+03 - -5.8344669e+02 -4.2228442e+03 -3.5296352e+03 - -5.2330201e+02 -4.2383915e+03 -3.5249964e+03 - -4.6372327e+02 -4.2522033e+03 -3.5208090e+03 - -4.0464915e+02 -4.2643120e+03 -3.5170858e+03 - -3.4601763e+02 -4.2747467e+03 -3.5138379e+03 - -2.8776617e+02 -4.2835329e+03 -3.5110746e+03 - -2.2983185e+02 -4.2906919e+03 -3.5088036e+03 - -1.7215149e+02 -4.2962416e+03 -3.5070309e+03 - -1.1466172e+02 -4.3001957e+03 -3.5057614e+03 - -5.7299072e+01 -4.3025642e+03 -3.5049984e+03 - 0.0000000e+00 -4.3033531e+03 -3.5047439e+03 - 5.7299072e+01 -4.3025642e+03 -3.5049984e+03 - 1.1466172e+02 -4.3001957e+03 -3.5057614e+03 - 1.7215149e+02 -4.2962416e+03 -3.5070309e+03 - 2.2983185e+02 -4.2906919e+03 -3.5088036e+03 - 2.8776617e+02 -4.2835329e+03 -3.5110746e+03 - 3.4601763e+02 -4.2747467e+03 -3.5138379e+03 - 4.0464915e+02 -4.2643120e+03 -3.5170858e+03 - 4.6372327e+02 -4.2522033e+03 -3.5208090e+03 - 5.2330201e+02 -4.2383915e+03 -3.5249964e+03 - 5.8344669e+02 -4.2228442e+03 -3.5296352e+03 - 6.4421766e+02 -4.2055251e+03 -3.5347106e+03 - 7.0567407e+02 -4.1863953e+03 -3.5402056e+03 - 7.6787348e+02 -4.1654123e+03 -3.5461011e+03 - 8.3087146e+02 -4.1425313e+03 -3.5523755e+03 - 8.9472110e+02 -4.1177050e+03 -3.5590044e+03 - 9.5947243e+02 -4.0908844e+03 -3.5659611e+03 - 1.0251718e+03 -4.0620190e+03 -3.5732154e+03 - 1.0918612e+03 -4.0310576e+03 -3.5807345e+03 - 1.1595771e+03 -3.9979492e+03 -3.5884823e+03 - 1.2283502e+03 -3.9626435e+03 -3.5964193e+03 - 1.2982038e+03 -3.9250920e+03 -3.6045026e+03 - 1.3691529e+03 -3.8852492e+03 -3.6126861e+03 - 1.4412035e+03 -3.8430738e+03 -3.6209204e+03 - 1.5143509e+03 -3.7985297e+03 -3.6291527e+03 - 1.5885788e+03 -3.7515880e+03 -3.6373274e+03 - 1.6638584e+03 -3.7022278e+03 -3.6453861e+03 - 1.7401471e+03 -3.6504383e+03 -3.6532681e+03 - 1.8173875e+03 -3.5962199e+03 -3.6609111e+03 - 1.8955071e+03 -3.5395859e+03 -3.6682515e+03 - 1.9744174e+03 -3.4805641e+03 -3.6752255e+03 - 2.0540137e+03 -3.4191976e+03 -3.6817696e+03 - 2.1341755e+03 -3.3555459e+03 -3.6878219e+03 - 2.2147668e+03 -3.2896859e+03 -3.6933230e+03 - 2.2956370e+03 -3.2217120e+03 -3.6982170e+03 - 2.3766222e+03 -3.1517361e+03 -3.7024526e+03 - 2.4575471e+03 -3.0798870e+03 -3.7059843e+03 - 2.5382269e+03 -3.0063096e+03 -3.7087732e+03 - 2.6184701e+03 -2.9311633e+03 -3.7107883e+03 - 2.6980810e+03 -2.8546202e+03 -3.7120067e+03 - 2.7768627e+03 -2.7768627e+03 -3.7124144e+03 - 2.8546202e+03 -2.6980810e+03 -3.7120067e+03 - 2.9311633e+03 -2.6184701e+03 -3.7107883e+03 - 3.0063096e+03 -2.5382269e+03 -3.7087732e+03 - 3.0798870e+03 -2.4575471e+03 -3.7059843e+03 - 3.1517361e+03 -2.3766222e+03 -3.7024526e+03 - 3.2217120e+03 -2.2956370e+03 -3.6982170e+03 - 3.2896859e+03 -2.2147668e+03 -3.6933230e+03 - 3.3555459e+03 -2.1341755e+03 -3.6878219e+03 - 3.4191976e+03 -2.0540137e+03 -3.6817696e+03 - 3.4805641e+03 -1.9744174e+03 -3.6752255e+03 - 3.5395859e+03 -1.8955071e+03 -3.6682515e+03 - 3.5962199e+03 -1.8173875e+03 -3.6609111e+03 - 3.6504383e+03 -1.7401471e+03 -3.6532681e+03 - 3.7022278e+03 -1.6638584e+03 -3.6453861e+03 - 3.7515880e+03 -1.5885788e+03 -3.6373274e+03 - 3.7985297e+03 -1.5143509e+03 -3.6291527e+03 - 3.8430738e+03 -1.4412035e+03 -3.6209204e+03 - 3.8852492e+03 -1.3691529e+03 -3.6126861e+03 - 3.9250920e+03 -1.2982038e+03 -3.6045026e+03 - 3.9626435e+03 -1.2283502e+03 -3.5964193e+03 - 3.9979492e+03 -1.1595771e+03 -3.5884823e+03 - 4.0310576e+03 -1.0918612e+03 -3.5807345e+03 - 4.0620190e+03 -1.0251718e+03 -3.5732154e+03 - 4.0908844e+03 -9.5947243e+02 -3.5659611e+03 - 4.1177050e+03 -8.9472110e+02 -3.5590044e+03 - 4.1425313e+03 -8.3087146e+02 -3.5523755e+03 - 4.1654123e+03 -7.6787348e+02 -3.5461011e+03 - 4.1863953e+03 -7.0567407e+02 -3.5402056e+03 - 4.2055251e+03 -6.4421766e+02 -3.5347106e+03 - 4.2228442e+03 -5.8344669e+02 -3.5296352e+03 - 4.2383915e+03 -5.2330201e+02 -3.5249964e+03 - 4.2522033e+03 -4.6372327e+02 -3.5208090e+03 - 4.2643120e+03 -4.0464915e+02 -3.5170858e+03 - 4.2747467e+03 -3.4601763e+02 -3.5138379e+03 - 4.2835329e+03 -2.8776617e+02 -3.5110746e+03 - 4.2906919e+03 -2.2983185e+02 -3.5088036e+03 - 4.2962416e+03 -1.7215149e+02 -3.5070309e+03 - 4.3001957e+03 -1.1466172e+02 -3.5057614e+03 - 4.3025642e+03 -5.7299072e+01 -3.5049984e+03 - 4.3033531e+03 0.0000000e+00 -3.5047439e+03 - 4.2599293e+03 -4.8134273e-09 -3.5526556e+03 - 4.2591401e+03 5.7355272e+01 -3.5529001e+03 - 4.2567706e+03 1.1477206e+02 -3.5536329e+03 - 4.2528152e+03 1.7231183e+02 -3.5548520e+03 - 4.2472644e+03 2.3003595e+02 -3.5565541e+03 - 4.2401050e+03 2.8800560e+02 -3.5587343e+03 - 4.2313201e+03 3.4628172e+02 -3.5613865e+03 - 4.2208893e+03 4.0492488e+02 -3.5645029e+03 - 4.2087884e+03 4.6399518e+02 -3.5680743e+03 - 4.1949899e+03 5.2355207e+02 -3.5720895e+03 - 4.1794629e+03 5.8365414e+02 -3.5765357e+03 - 4.1621734e+03 6.4435891e+02 -3.5813981e+03 - 4.1430844e+03 7.0572249e+02 -3.5866601e+03 - 4.1221560e+03 7.6779929e+02 -3.5923024e+03 - 4.0993462e+03 8.3064154e+02 -3.5983038e+03 - 4.0746108e+03 8.9429885e+02 -3.6046405e+03 - 4.0479040e+03 9.5881767e+02 -3.6112859e+03 - 4.0191790e+03 1.0242406e+03 -3.6182109e+03 - 3.9883885e+03 1.0906058e+03 -3.6253833e+03 - 3.9554854e+03 1.1579460e+03 -3.6327682e+03 - 3.9204239e+03 1.2262879e+03 -3.6403273e+03 - 3.8831601e+03 1.2956511e+03 -3.6480195e+03 - 3.8436530e+03 1.3660472e+03 -3.6558004e+03 - 3.8018660e+03 1.4374786e+03 -3.6636227e+03 - 3.7577679e+03 1.5099378e+03 -3.6714362e+03 - 3.7113339e+03 1.5834060e+03 -3.6791881e+03 - 3.6625476e+03 1.6578524e+03 -3.6868232e+03 - 3.6114019e+03 1.7332333e+03 -3.6942843e+03 - 3.5579006e+03 1.8094910e+03 -3.7015128e+03 - 3.5020598e+03 1.8865536e+03 -3.7084493e+03 - 3.4439088e+03 1.9643344e+03 -3.7150340e+03 - 3.3834915e+03 2.0427317e+03 -3.7212081e+03 - 3.3208672e+03 2.1216291e+03 -3.7269140e+03 - 3.2561111e+03 2.2008961e+03 -3.7320966e+03 - 3.1893147e+03 2.2803887e+03 -3.7367044e+03 - 3.1205854e+03 2.3599510e+03 -3.7406902e+03 - 3.0500464e+03 2.4394167e+03 -3.7440120e+03 - 2.9778356e+03 2.5186108e+03 -3.7466342e+03 - 2.9041040e+03 2.5973525e+03 -3.7485283e+03 - 2.8290144e+03 2.6754571e+03 -3.7496733e+03 - 2.7527390e+03 2.7527390e+03 -3.7500564e+03 - 2.6754571e+03 2.8290144e+03 -3.7496733e+03 - 2.5973525e+03 2.9041040e+03 -3.7485283e+03 - 2.5186108e+03 2.9778356e+03 -3.7466342e+03 - 2.4394167e+03 3.0500464e+03 -3.7440120e+03 - 2.3599510e+03 3.1205854e+03 -3.7406902e+03 - 2.2803887e+03 3.1893147e+03 -3.7367044e+03 - 2.2008961e+03 3.2561111e+03 -3.7320966e+03 - 2.1216291e+03 3.3208672e+03 -3.7269140e+03 - 2.0427317e+03 3.3834915e+03 -3.7212081e+03 - 1.9643344e+03 3.4439088e+03 -3.7150340e+03 - 1.8865536e+03 3.5020598e+03 -3.7084493e+03 - 1.8094910e+03 3.5579006e+03 -3.7015128e+03 - 1.7332333e+03 3.6114019e+03 -3.6942843e+03 - 1.6578524e+03 3.6625476e+03 -3.6868232e+03 - 1.5834060e+03 3.7113339e+03 -3.6791881e+03 - 1.5099378e+03 3.7577679e+03 -3.6714362e+03 - 1.4374786e+03 3.8018660e+03 -3.6636227e+03 - 1.3660472e+03 3.8436530e+03 -3.6558004e+03 - 1.2956511e+03 3.8831601e+03 -3.6480195e+03 - 1.2262879e+03 3.9204239e+03 -3.6403273e+03 - 1.1579460e+03 3.9554854e+03 -3.6327682e+03 - 1.0906058e+03 3.9883885e+03 -3.6253833e+03 - 1.0242406e+03 4.0191790e+03 -3.6182109e+03 - 9.5881767e+02 4.0479040e+03 -3.6112859e+03 - 8.9429885e+02 4.0746108e+03 -3.6046405e+03 - 8.3064154e+02 4.0993462e+03 -3.5983038e+03 - 7.6779929e+02 4.1221560e+03 -3.5923024e+03 - 7.0572249e+02 4.1430844e+03 -3.5866601e+03 - 6.4435891e+02 4.1621734e+03 -3.5813981e+03 - 5.8365414e+02 4.1794629e+03 -3.5765357e+03 - 5.2355207e+02 4.1949899e+03 -3.5720895e+03 - 4.6399518e+02 4.2087884e+03 -3.5680743e+03 - 4.0492488e+02 4.2208893e+03 -3.5645029e+03 - 3.4628172e+02 4.2313201e+03 -3.5613865e+03 - 2.8800560e+02 4.2401050e+03 -3.5587343e+03 - 2.3003595e+02 4.2472644e+03 -3.5565541e+03 - 1.7231183e+02 4.2528152e+03 -3.5548520e+03 - 1.1477206e+02 4.2567706e+03 -3.5536329e+03 - 5.7355272e+01 4.2591401e+03 -3.5529001e+03 - 0.0000000e+00 4.2599293e+03 -3.5526556e+03 - -5.7355272e+01 4.2591401e+03 -3.5529001e+03 - -1.1477206e+02 4.2567706e+03 -3.5536329e+03 - -1.7231183e+02 4.2528152e+03 -3.5548520e+03 - -2.3003595e+02 4.2472644e+03 -3.5565541e+03 - -2.8800560e+02 4.2401050e+03 -3.5587343e+03 - -3.4628172e+02 4.2313201e+03 -3.5613865e+03 - -4.0492488e+02 4.2208893e+03 -3.5645029e+03 - -4.6399518e+02 4.2087884e+03 -3.5680743e+03 - -5.2355207e+02 4.1949899e+03 -3.5720895e+03 - -5.8365414e+02 4.1794629e+03 -3.5765357e+03 - -6.4435891e+02 4.1621734e+03 -3.5813981e+03 - -7.0572249e+02 4.1430844e+03 -3.5866601e+03 - -7.6779929e+02 4.1221560e+03 -3.5923024e+03 - -8.3064154e+02 4.0993462e+03 -3.5983038e+03 - -8.9429885e+02 4.0746108e+03 -3.6046405e+03 - -9.5881767e+02 4.0479040e+03 -3.6112859e+03 - -1.0242406e+03 4.0191790e+03 -3.6182109e+03 - -1.0906058e+03 3.9883885e+03 -3.6253833e+03 - -1.1579460e+03 3.9554854e+03 -3.6327682e+03 - -1.2262879e+03 3.9204239e+03 -3.6403273e+03 - -1.2956511e+03 3.8831601e+03 -3.6480195e+03 - -1.3660472e+03 3.8436530e+03 -3.6558004e+03 - -1.4374786e+03 3.8018660e+03 -3.6636227e+03 - -1.5099378e+03 3.7577679e+03 -3.6714362e+03 - -1.5834060e+03 3.7113339e+03 -3.6791881e+03 - -1.6578524e+03 3.6625476e+03 -3.6868232e+03 - -1.7332333e+03 3.6114019e+03 -3.6942843e+03 - -1.8094910e+03 3.5579006e+03 -3.7015128e+03 - -1.8865536e+03 3.5020598e+03 -3.7084493e+03 - -1.9643344e+03 3.4439088e+03 -3.7150340e+03 - -2.0427317e+03 3.3834915e+03 -3.7212081e+03 - -2.1216291e+03 3.3208672e+03 -3.7269140e+03 - -2.2008961e+03 3.2561111e+03 -3.7320966e+03 - -2.2803887e+03 3.1893147e+03 -3.7367044e+03 - -2.3599510e+03 3.1205854e+03 -3.7406902e+03 - -2.4394167e+03 3.0500464e+03 -3.7440120e+03 - -2.5186108e+03 2.9778356e+03 -3.7466342e+03 - -2.5973525e+03 2.9041040e+03 -3.7485283e+03 - -2.6754571e+03 2.8290144e+03 -3.7496733e+03 - -2.7527390e+03 2.7527390e+03 -3.7500564e+03 - -2.8290144e+03 2.6754571e+03 -3.7496733e+03 - -2.9041040e+03 2.5973525e+03 -3.7485283e+03 - -2.9778356e+03 2.5186108e+03 -3.7466342e+03 - -3.0500464e+03 2.4394167e+03 -3.7440120e+03 - -3.1205854e+03 2.3599510e+03 -3.7406902e+03 - -3.1893147e+03 2.2803887e+03 -3.7367044e+03 - -3.2561111e+03 2.2008961e+03 -3.7320966e+03 - -3.3208672e+03 2.1216291e+03 -3.7269140e+03 - -3.3834915e+03 2.0427317e+03 -3.7212081e+03 - -3.4439088e+03 1.9643344e+03 -3.7150340e+03 - -3.5020598e+03 1.8865536e+03 -3.7084493e+03 - -3.5579006e+03 1.8094910e+03 -3.7015128e+03 - -3.6114019e+03 1.7332333e+03 -3.6942843e+03 - -3.6625476e+03 1.6578524e+03 -3.6868232e+03 - -3.7113339e+03 1.5834060e+03 -3.6791881e+03 - -3.7577679e+03 1.5099378e+03 -3.6714362e+03 - -3.8018660e+03 1.4374786e+03 -3.6636227e+03 - -3.8436530e+03 1.3660472e+03 -3.6558004e+03 - -3.8831601e+03 1.2956511e+03 -3.6480195e+03 - -3.9204239e+03 1.2262879e+03 -3.6403273e+03 - -3.9554854e+03 1.1579460e+03 -3.6327682e+03 - -3.9883885e+03 1.0906058e+03 -3.6253833e+03 - -4.0191790e+03 1.0242406e+03 -3.6182109e+03 - -4.0479040e+03 9.5881767e+02 -3.6112859e+03 - -4.0746108e+03 8.9429885e+02 -3.6046405e+03 - -4.0993462e+03 8.3064154e+02 -3.5983038e+03 - -4.1221560e+03 7.6779929e+02 -3.5923024e+03 - -4.1430844e+03 7.0572249e+02 -3.5866601e+03 - -4.1621734e+03 6.4435891e+02 -3.5813981e+03 - -4.1794629e+03 5.8365414e+02 -3.5765357e+03 - -4.1949899e+03 5.2355207e+02 -3.5720895e+03 - -4.2087884e+03 4.6399518e+02 -3.5680743e+03 - -4.2208893e+03 4.0492488e+02 -3.5645029e+03 - -4.2313201e+03 3.4628172e+02 -3.5613865e+03 - -4.2401050e+03 2.8800560e+02 -3.5587343e+03 - -4.2472644e+03 2.3003595e+02 -3.5565541e+03 - -4.2528152e+03 1.7231183e+02 -3.5548520e+03 - -4.2567706e+03 1.1477206e+02 -3.5536329e+03 - -4.2591401e+03 5.7355272e+01 -3.5529001e+03 - -4.2599293e+03 0.0000000e+00 -3.5526556e+03 - -4.2591401e+03 -5.7355272e+01 -3.5529001e+03 - -4.2567706e+03 -1.1477206e+02 -3.5536329e+03 - -4.2528152e+03 -1.7231183e+02 -3.5548520e+03 - -4.2472644e+03 -2.3003595e+02 -3.5565541e+03 - -4.2401050e+03 -2.8800560e+02 -3.5587343e+03 - -4.2313201e+03 -3.4628172e+02 -3.5613865e+03 - -4.2208893e+03 -4.0492488e+02 -3.5645029e+03 - -4.2087884e+03 -4.6399518e+02 -3.5680743e+03 - -4.1949899e+03 -5.2355207e+02 -3.5720895e+03 - -4.1794629e+03 -5.8365414e+02 -3.5765357e+03 - -4.1621734e+03 -6.4435891e+02 -3.5813981e+03 - -4.1430844e+03 -7.0572249e+02 -3.5866601e+03 - -4.1221560e+03 -7.6779929e+02 -3.5923024e+03 - -4.0993462e+03 -8.3064154e+02 -3.5983038e+03 - -4.0746108e+03 -8.9429885e+02 -3.6046405e+03 - -4.0479040e+03 -9.5881767e+02 -3.6112859e+03 - -4.0191790e+03 -1.0242406e+03 -3.6182109e+03 - -3.9883885e+03 -1.0906058e+03 -3.6253833e+03 - -3.9554854e+03 -1.1579460e+03 -3.6327682e+03 - -3.9204239e+03 -1.2262879e+03 -3.6403273e+03 - -3.8831601e+03 -1.2956511e+03 -3.6480195e+03 - -3.8436530e+03 -1.3660472e+03 -3.6558004e+03 - -3.8018660e+03 -1.4374786e+03 -3.6636227e+03 - -3.7577679e+03 -1.5099378e+03 -3.6714362e+03 - -3.7113339e+03 -1.5834060e+03 -3.6791881e+03 - -3.6625476e+03 -1.6578524e+03 -3.6868232e+03 - -3.6114019e+03 -1.7332333e+03 -3.6942843e+03 - -3.5579006e+03 -1.8094910e+03 -3.7015128e+03 - -3.5020598e+03 -1.8865536e+03 -3.7084493e+03 - -3.4439088e+03 -1.9643344e+03 -3.7150340e+03 - -3.3834915e+03 -2.0427317e+03 -3.7212081e+03 - -3.3208672e+03 -2.1216291e+03 -3.7269140e+03 - -3.2561111e+03 -2.2008961e+03 -3.7320966e+03 - -3.1893147e+03 -2.2803887e+03 -3.7367044e+03 - -3.1205854e+03 -2.3599510e+03 -3.7406902e+03 - -3.0500464e+03 -2.4394167e+03 -3.7440120e+03 - -2.9778356e+03 -2.5186108e+03 -3.7466342e+03 - -2.9041040e+03 -2.5973525e+03 -3.7485283e+03 - -2.8290144e+03 -2.6754571e+03 -3.7496733e+03 - -2.7527390e+03 -2.7527390e+03 -3.7500564e+03 - -2.6754571e+03 -2.8290144e+03 -3.7496733e+03 - -2.5973525e+03 -2.9041040e+03 -3.7485283e+03 - -2.5186108e+03 -2.9778356e+03 -3.7466342e+03 - -2.4394167e+03 -3.0500464e+03 -3.7440120e+03 - -2.3599510e+03 -3.1205854e+03 -3.7406902e+03 - -2.2803887e+03 -3.1893147e+03 -3.7367044e+03 - -2.2008961e+03 -3.2561111e+03 -3.7320966e+03 - -2.1216291e+03 -3.3208672e+03 -3.7269140e+03 - -2.0427317e+03 -3.3834915e+03 -3.7212081e+03 - -1.9643344e+03 -3.4439088e+03 -3.7150340e+03 - -1.8865536e+03 -3.5020598e+03 -3.7084493e+03 - -1.8094910e+03 -3.5579006e+03 -3.7015128e+03 - -1.7332333e+03 -3.6114019e+03 -3.6942843e+03 - -1.6578524e+03 -3.6625476e+03 -3.6868232e+03 - -1.5834060e+03 -3.7113339e+03 -3.6791881e+03 - -1.5099378e+03 -3.7577679e+03 -3.6714362e+03 - -1.4374786e+03 -3.8018660e+03 -3.6636227e+03 - -1.3660472e+03 -3.8436530e+03 -3.6558004e+03 - -1.2956511e+03 -3.8831601e+03 -3.6480195e+03 - -1.2262879e+03 -3.9204239e+03 -3.6403273e+03 - -1.1579460e+03 -3.9554854e+03 -3.6327682e+03 - -1.0906058e+03 -3.9883885e+03 -3.6253833e+03 - -1.0242406e+03 -4.0191790e+03 -3.6182109e+03 - -9.5881767e+02 -4.0479040e+03 -3.6112859e+03 - -8.9429885e+02 -4.0746108e+03 -3.6046405e+03 - -8.3064154e+02 -4.0993462e+03 -3.5983038e+03 - -7.6779929e+02 -4.1221560e+03 -3.5923024e+03 - -7.0572249e+02 -4.1430844e+03 -3.5866601e+03 - -6.4435891e+02 -4.1621734e+03 -3.5813981e+03 - -5.8365414e+02 -4.1794629e+03 -3.5765357e+03 - -5.2355207e+02 -4.1949899e+03 -3.5720895e+03 - -4.6399518e+02 -4.2087884e+03 -3.5680743e+03 - -4.0492488e+02 -4.2208893e+03 -3.5645029e+03 - -3.4628172e+02 -4.2313201e+03 -3.5613865e+03 - -2.8800560e+02 -4.2401050e+03 -3.5587343e+03 - -2.3003595e+02 -4.2472644e+03 -3.5565541e+03 - -1.7231183e+02 -4.2528152e+03 -3.5548520e+03 - -1.1477206e+02 -4.2567706e+03 -3.5536329e+03 - -5.7355272e+01 -4.2591401e+03 -3.5529001e+03 - 0.0000000e+00 -4.2599293e+03 -3.5526556e+03 - 5.7355272e+01 -4.2591401e+03 -3.5529001e+03 - 1.1477206e+02 -4.2567706e+03 -3.5536329e+03 - 1.7231183e+02 -4.2528152e+03 -3.5548520e+03 - 2.3003595e+02 -4.2472644e+03 -3.5565541e+03 - 2.8800560e+02 -4.2401050e+03 -3.5587343e+03 - 3.4628172e+02 -4.2313201e+03 -3.5613865e+03 - 4.0492488e+02 -4.2208893e+03 -3.5645029e+03 - 4.6399518e+02 -4.2087884e+03 -3.5680743e+03 - 5.2355207e+02 -4.1949899e+03 -3.5720895e+03 - 5.8365414e+02 -4.1794629e+03 -3.5765357e+03 - 6.4435891e+02 -4.1621734e+03 -3.5813981e+03 - 7.0572249e+02 -4.1430844e+03 -3.5866601e+03 - 7.6779929e+02 -4.1221560e+03 -3.5923024e+03 - 8.3064154e+02 -4.0993462e+03 -3.5983038e+03 - 8.9429885e+02 -4.0746108e+03 -3.6046405e+03 - 9.5881767e+02 -4.0479040e+03 -3.6112859e+03 - 1.0242406e+03 -4.0191790e+03 -3.6182109e+03 - 1.0906058e+03 -3.9883885e+03 -3.6253833e+03 - 1.1579460e+03 -3.9554854e+03 -3.6327682e+03 - 1.2262879e+03 -3.9204239e+03 -3.6403273e+03 - 1.2956511e+03 -3.8831601e+03 -3.6480195e+03 - 1.3660472e+03 -3.8436530e+03 -3.6558004e+03 - 1.4374786e+03 -3.8018660e+03 -3.6636227e+03 - 1.5099378e+03 -3.7577679e+03 -3.6714362e+03 - 1.5834060e+03 -3.7113339e+03 -3.6791881e+03 - 1.6578524e+03 -3.6625476e+03 -3.6868232e+03 - 1.7332333e+03 -3.6114019e+03 -3.6942843e+03 - 1.8094910e+03 -3.5579006e+03 -3.7015128e+03 - 1.8865536e+03 -3.5020598e+03 -3.7084493e+03 - 1.9643344e+03 -3.4439088e+03 -3.7150340e+03 - 2.0427317e+03 -3.3834915e+03 -3.7212081e+03 - 2.1216291e+03 -3.3208672e+03 -3.7269140e+03 - 2.2008961e+03 -3.2561111e+03 -3.7320966e+03 - 2.2803887e+03 -3.1893147e+03 -3.7367044e+03 - 2.3599510e+03 -3.1205854e+03 -3.7406902e+03 - 2.4394167e+03 -3.0500464e+03 -3.7440120e+03 - 2.5186108e+03 -2.9778356e+03 -3.7466342e+03 - 2.5973525e+03 -2.9041040e+03 -3.7485283e+03 - 2.6754571e+03 -2.8290144e+03 -3.7496733e+03 - 2.7527390e+03 -2.7527390e+03 -3.7500564e+03 - 2.8290144e+03 -2.6754571e+03 -3.7496733e+03 - 2.9041040e+03 -2.5973525e+03 -3.7485283e+03 - 2.9778356e+03 -2.5186108e+03 -3.7466342e+03 - 3.0500464e+03 -2.4394167e+03 -3.7440120e+03 - 3.1205854e+03 -2.3599510e+03 -3.7406902e+03 - 3.1893147e+03 -2.2803887e+03 -3.7367044e+03 - 3.2561111e+03 -2.2008961e+03 -3.7320966e+03 - 3.3208672e+03 -2.1216291e+03 -3.7269140e+03 - 3.3834915e+03 -2.0427317e+03 -3.7212081e+03 - 3.4439088e+03 -1.9643344e+03 -3.7150340e+03 - 3.5020598e+03 -1.8865536e+03 -3.7084493e+03 - 3.5579006e+03 -1.8094910e+03 -3.7015128e+03 - 3.6114019e+03 -1.7332333e+03 -3.6942843e+03 - 3.6625476e+03 -1.6578524e+03 -3.6868232e+03 - 3.7113339e+03 -1.5834060e+03 -3.6791881e+03 - 3.7577679e+03 -1.5099378e+03 -3.6714362e+03 - 3.8018660e+03 -1.4374786e+03 -3.6636227e+03 - 3.8436530e+03 -1.3660472e+03 -3.6558004e+03 - 3.8831601e+03 -1.2956511e+03 -3.6480195e+03 - 3.9204239e+03 -1.2262879e+03 -3.6403273e+03 - 3.9554854e+03 -1.1579460e+03 -3.6327682e+03 - 3.9883885e+03 -1.0906058e+03 -3.6253833e+03 - 4.0191790e+03 -1.0242406e+03 -3.6182109e+03 - 4.0479040e+03 -9.5881767e+02 -3.6112859e+03 - 4.0746108e+03 -8.9429885e+02 -3.6046405e+03 - 4.0993462e+03 -8.3064154e+02 -3.5983038e+03 - 4.1221560e+03 -7.6779929e+02 -3.5923024e+03 - 4.1430844e+03 -7.0572249e+02 -3.5866601e+03 - 4.1621734e+03 -6.4435891e+02 -3.5813981e+03 - 4.1794629e+03 -5.8365414e+02 -3.5765357e+03 - 4.1949899e+03 -5.2355207e+02 -3.5720895e+03 - 4.2087884e+03 -4.6399518e+02 -3.5680743e+03 - 4.2208893e+03 -4.0492488e+02 -3.5645029e+03 - 4.2313201e+03 -3.4628172e+02 -3.5613865e+03 - 4.2401050e+03 -2.8800560e+02 -3.5587343e+03 - 4.2472644e+03 -2.3003595e+02 -3.5565541e+03 - 4.2528152e+03 -1.7231183e+02 -3.5548520e+03 - 4.2567706e+03 -1.1477206e+02 -3.5536329e+03 - 4.2591401e+03 -5.7355272e+01 -3.5529001e+03 - 4.2599293e+03 -4.8134273e-09 -3.5526556e+03 - 4.2158184e+03 -4.8134273e-09 -3.5994453e+03 - 4.2150294e+03 5.7393666e+01 -3.5996798e+03 - 4.2126605e+03 1.1484673e+02 -3.6003825e+03 - 4.2087064e+03 1.7241850e+02 -3.6015516e+03 - 4.2031581e+03 2.3016818e+02 -3.6031836e+03 - 4.1960030e+03 2.8815472e+02 -3.6052737e+03 - 4.1872252e+03 3.4643675e+02 -3.6078157e+03 - 4.1768051e+03 4.0507247e+02 -3.6108018e+03 - 4.1647200e+03 4.6411947e+02 -3.6142227e+03 - 4.1509438e+03 5.2363460e+02 -3.6180674e+03 - 4.1354474e+03 5.8367374e+02 -3.6223231e+03 - 4.1181985e+03 6.4429153e+02 -3.6269751e+03 - 4.0991625e+03 7.0554110e+02 -3.6320068e+03 - 4.0783021e+03 7.6747370e+02 -3.6373995e+03 - 4.0555778e+03 8.3013829e+02 -3.6431320e+03 - 4.0309485e+03 8.9358109e+02 -3.6491811e+03 - 4.0043716e+03 9.5784501e+02 -3.6555208e+03 - 3.9758038e+03 1.0229691e+03 -3.6621226e+03 - 3.9452017e+03 1.0889877e+03 -3.6689554e+03 - 3.9125221e+03 1.1559301e+03 -3.6759853e+03 - 3.8777233e+03 1.2238193e+03 -3.6831754e+03 - 3.8407657e+03 1.2926714e+03 -3.6904861e+03 - 3.8016129e+03 1.3624945e+03 -3.6978750e+03 - 3.7602326e+03 1.4332882e+03 -3.7052969e+03 - 3.7165979e+03 1.5050421e+03 -3.7127042e+03 - 3.6706883e+03 1.5777354e+03 -3.7200466e+03 - 3.6224913e+03 1.6513355e+03 -3.7272722e+03 - 3.5720033e+03 1.7257980e+03 -3.7343270e+03 - 3.5192311e+03 1.8010650e+03 -3.7411562e+03 - 3.4641931e+03 1.8770655e+03 -3.7477040e+03 - 3.4069200e+03 1.9537148e+03 -3.7539149e+03 - 3.3474564e+03 2.0309141e+03 -3.7597341e+03 - 3.2858610e+03 2.1085512e+03 -3.7651081e+03 - 3.2222072e+03 2.1865011e+03 -3.7699862e+03 - 3.1565835e+03 2.2646263e+03 -3.7743206e+03 - 3.0890932e+03 2.3427784e+03 -3.7780679e+03 - 3.0198539e+03 2.4207997e+03 -3.7811896e+03 - 2.9489966e+03 2.4985248e+03 -3.7836530e+03 - 2.8766645e+03 2.5757828e+03 -3.7854318e+03 - 2.8030116e+03 2.6523996e+03 -3.7865069e+03 - 2.7282003e+03 2.7282003e+03 -3.7868666e+03 - 2.6523996e+03 2.8030116e+03 -3.7865069e+03 - 2.5757828e+03 2.8766645e+03 -3.7854318e+03 - 2.4985248e+03 2.9489966e+03 -3.7836530e+03 - 2.4207997e+03 3.0198539e+03 -3.7811896e+03 - 2.3427784e+03 3.0890932e+03 -3.7780679e+03 - 2.2646263e+03 3.1565835e+03 -3.7743206e+03 - 2.1865011e+03 3.2222072e+03 -3.7699862e+03 - 2.1085512e+03 3.2858610e+03 -3.7651081e+03 - 2.0309141e+03 3.3474564e+03 -3.7597341e+03 - 1.9537148e+03 3.4069200e+03 -3.7539149e+03 - 1.8770655e+03 3.4641931e+03 -3.7477040e+03 - 1.8010650e+03 3.5192311e+03 -3.7411562e+03 - 1.7257980e+03 3.5720033e+03 -3.7343270e+03 - 1.6513355e+03 3.6224913e+03 -3.7272722e+03 - 1.5777354e+03 3.6706883e+03 -3.7200466e+03 - 1.5050421e+03 3.7165979e+03 -3.7127042e+03 - 1.4332882e+03 3.7602326e+03 -3.7052969e+03 - 1.3624945e+03 3.8016129e+03 -3.6978750e+03 - 1.2926714e+03 3.8407657e+03 -3.6904861e+03 - 1.2238193e+03 3.8777233e+03 -3.6831754e+03 - 1.1559301e+03 3.9125221e+03 -3.6759853e+03 - 1.0889877e+03 3.9452017e+03 -3.6689554e+03 - 1.0229691e+03 3.9758038e+03 -3.6621226e+03 - 9.5784501e+02 4.0043716e+03 -3.6555208e+03 - 8.9358109e+02 4.0309485e+03 -3.6491811e+03 - 8.3013829e+02 4.0555778e+03 -3.6431320e+03 - 7.6747370e+02 4.0783021e+03 -3.6373995e+03 - 7.0554110e+02 4.0991625e+03 -3.6320068e+03 - 6.4429153e+02 4.1181985e+03 -3.6269751e+03 - 5.8367374e+02 4.1354474e+03 -3.6223231e+03 - 5.2363460e+02 4.1509438e+03 -3.6180674e+03 - 4.6411947e+02 4.1647200e+03 -3.6142227e+03 - 4.0507247e+02 4.1768051e+03 -3.6108018e+03 - 3.4643675e+02 4.1872252e+03 -3.6078157e+03 - 2.8815472e+02 4.1960030e+03 -3.6052737e+03 - 2.3016818e+02 4.2031581e+03 -3.6031836e+03 - 1.7241850e+02 4.2087064e+03 -3.6015516e+03 - 1.1484673e+02 4.2126605e+03 -3.6003825e+03 - 5.7393666e+01 4.2150294e+03 -3.5996798e+03 - -4.8134273e-09 4.2158184e+03 -3.5994453e+03 - -5.7393666e+01 4.2150294e+03 -3.5996798e+03 - -1.1484673e+02 4.2126605e+03 -3.6003825e+03 - -1.7241850e+02 4.2087064e+03 -3.6015516e+03 - -2.3016818e+02 4.2031581e+03 -3.6031836e+03 - -2.8815472e+02 4.1960030e+03 -3.6052737e+03 - -3.4643675e+02 4.1872252e+03 -3.6078157e+03 - -4.0507247e+02 4.1768051e+03 -3.6108018e+03 - -4.6411947e+02 4.1647200e+03 -3.6142227e+03 - -5.2363460e+02 4.1509438e+03 -3.6180674e+03 - -5.8367374e+02 4.1354474e+03 -3.6223231e+03 - -6.4429153e+02 4.1181985e+03 -3.6269751e+03 - -7.0554110e+02 4.0991625e+03 -3.6320068e+03 - -7.6747370e+02 4.0783021e+03 -3.6373995e+03 - -8.3013829e+02 4.0555778e+03 -3.6431320e+03 - -8.9358109e+02 4.0309485e+03 -3.6491811e+03 - -9.5784501e+02 4.0043716e+03 -3.6555208e+03 - -1.0229691e+03 3.9758038e+03 -3.6621226e+03 - -1.0889877e+03 3.9452017e+03 -3.6689554e+03 - -1.1559301e+03 3.9125221e+03 -3.6759853e+03 - -1.2238193e+03 3.8777233e+03 -3.6831754e+03 - -1.2926714e+03 3.8407657e+03 -3.6904861e+03 - -1.3624945e+03 3.8016129e+03 -3.6978750e+03 - -1.4332882e+03 3.7602326e+03 -3.7052969e+03 - -1.5050421e+03 3.7165979e+03 -3.7127042e+03 - -1.5777354e+03 3.6706883e+03 -3.7200466e+03 - -1.6513355e+03 3.6224913e+03 -3.7272722e+03 - -1.7257980e+03 3.5720033e+03 -3.7343270e+03 - -1.8010650e+03 3.5192311e+03 -3.7411562e+03 - -1.8770655e+03 3.4641931e+03 -3.7477040e+03 - -1.9537148e+03 3.4069200e+03 -3.7539149e+03 - -2.0309141e+03 3.3474564e+03 -3.7597341e+03 - -2.1085512e+03 3.2858610e+03 -3.7651081e+03 - -2.1865011e+03 3.2222072e+03 -3.7699862e+03 - -2.2646263e+03 3.1565835e+03 -3.7743206e+03 - -2.3427784e+03 3.0890932e+03 -3.7780679e+03 - -2.4207997e+03 3.0198539e+03 -3.7811896e+03 - -2.4985248e+03 2.9489966e+03 -3.7836530e+03 - -2.5757828e+03 2.8766645e+03 -3.7854318e+03 - -2.6523996e+03 2.8030116e+03 -3.7865069e+03 - -2.7282003e+03 2.7282003e+03 -3.7868666e+03 - -2.8030116e+03 2.6523996e+03 -3.7865069e+03 - -2.8766645e+03 2.5757828e+03 -3.7854318e+03 - -2.9489966e+03 2.4985248e+03 -3.7836530e+03 - -3.0198539e+03 2.4207997e+03 -3.7811896e+03 - -3.0890932e+03 2.3427784e+03 -3.7780679e+03 - -3.1565835e+03 2.2646263e+03 -3.7743206e+03 - -3.2222072e+03 2.1865011e+03 -3.7699862e+03 - -3.2858610e+03 2.1085512e+03 -3.7651081e+03 - -3.3474564e+03 2.0309141e+03 -3.7597341e+03 - -3.4069200e+03 1.9537148e+03 -3.7539149e+03 - -3.4641931e+03 1.8770655e+03 -3.7477040e+03 - -3.5192311e+03 1.8010650e+03 -3.7411562e+03 - -3.5720033e+03 1.7257980e+03 -3.7343270e+03 - -3.6224913e+03 1.6513355e+03 -3.7272722e+03 - -3.6706883e+03 1.5777354e+03 -3.7200466e+03 - -3.7165979e+03 1.5050421e+03 -3.7127042e+03 - -3.7602326e+03 1.4332882e+03 -3.7052969e+03 - -3.8016129e+03 1.3624945e+03 -3.6978750e+03 - -3.8407657e+03 1.2926714e+03 -3.6904861e+03 - -3.8777233e+03 1.2238193e+03 -3.6831754e+03 - -3.9125221e+03 1.1559301e+03 -3.6759853e+03 - -3.9452017e+03 1.0889877e+03 -3.6689554e+03 - -3.9758038e+03 1.0229691e+03 -3.6621226e+03 - -4.0043716e+03 9.5784501e+02 -3.6555208e+03 - -4.0309485e+03 8.9358109e+02 -3.6491811e+03 - -4.0555778e+03 8.3013829e+02 -3.6431320e+03 - -4.0783021e+03 7.6747370e+02 -3.6373995e+03 - -4.0991625e+03 7.0554110e+02 -3.6320068e+03 - -4.1181985e+03 6.4429153e+02 -3.6269751e+03 - -4.1354474e+03 5.8367374e+02 -3.6223231e+03 - -4.1509438e+03 5.2363460e+02 -3.6180674e+03 - -4.1647200e+03 4.6411947e+02 -3.6142227e+03 - -4.1768051e+03 4.0507247e+02 -3.6108018e+03 - -4.1872252e+03 3.4643675e+02 -3.6078157e+03 - -4.1960030e+03 2.8815472e+02 -3.6052737e+03 - -4.2031581e+03 2.3016818e+02 -3.6031836e+03 - -4.2087064e+03 1.7241850e+02 -3.6015516e+03 - -4.2126605e+03 1.1484673e+02 -3.6003825e+03 - -4.2150294e+03 5.7393666e+01 -3.5996798e+03 - -4.2158184e+03 4.8134273e-09 -3.5994453e+03 - -4.2150294e+03 -5.7393666e+01 -3.5996798e+03 - -4.2126605e+03 -1.1484673e+02 -3.6003825e+03 - -4.2087064e+03 -1.7241850e+02 -3.6015516e+03 - -4.2031581e+03 -2.3016818e+02 -3.6031836e+03 - -4.1960030e+03 -2.8815472e+02 -3.6052737e+03 - -4.1872252e+03 -3.4643675e+02 -3.6078157e+03 - -4.1768051e+03 -4.0507247e+02 -3.6108018e+03 - -4.1647200e+03 -4.6411947e+02 -3.6142227e+03 - -4.1509438e+03 -5.2363460e+02 -3.6180674e+03 - -4.1354474e+03 -5.8367374e+02 -3.6223231e+03 - -4.1181985e+03 -6.4429153e+02 -3.6269751e+03 - -4.0991625e+03 -7.0554110e+02 -3.6320068e+03 - -4.0783021e+03 -7.6747370e+02 -3.6373995e+03 - -4.0555778e+03 -8.3013829e+02 -3.6431320e+03 - -4.0309485e+03 -8.9358109e+02 -3.6491811e+03 - -4.0043716e+03 -9.5784501e+02 -3.6555208e+03 - -3.9758038e+03 -1.0229691e+03 -3.6621226e+03 - -3.9452017e+03 -1.0889877e+03 -3.6689554e+03 - -3.9125221e+03 -1.1559301e+03 -3.6759853e+03 - -3.8777233e+03 -1.2238193e+03 -3.6831754e+03 - -3.8407657e+03 -1.2926714e+03 -3.6904861e+03 - -3.8016129e+03 -1.3624945e+03 -3.6978750e+03 - -3.7602326e+03 -1.4332882e+03 -3.7052969e+03 - -3.7165979e+03 -1.5050421e+03 -3.7127042e+03 - -3.6706883e+03 -1.5777354e+03 -3.7200466e+03 - -3.6224913e+03 -1.6513355e+03 -3.7272722e+03 - -3.5720033e+03 -1.7257980e+03 -3.7343270e+03 - -3.5192311e+03 -1.8010650e+03 -3.7411562e+03 - -3.4641931e+03 -1.8770655e+03 -3.7477040e+03 - -3.4069200e+03 -1.9537148e+03 -3.7539149e+03 - -3.3474564e+03 -2.0309141e+03 -3.7597341e+03 - -3.2858610e+03 -2.1085512e+03 -3.7651081e+03 - -3.2222072e+03 -2.1865011e+03 -3.7699862e+03 - -3.1565835e+03 -2.2646263e+03 -3.7743206e+03 - -3.0890932e+03 -2.3427784e+03 -3.7780679e+03 - -3.0198539e+03 -2.4207997e+03 -3.7811896e+03 - -2.9489966e+03 -2.4985248e+03 -3.7836530e+03 - -2.8766645e+03 -2.5757828e+03 -3.7854318e+03 - -2.8030116e+03 -2.6523996e+03 -3.7865069e+03 - -2.7282003e+03 -2.7282003e+03 -3.7868666e+03 - -2.6523996e+03 -2.8030116e+03 -3.7865069e+03 - -2.5757828e+03 -2.8766645e+03 -3.7854318e+03 - -2.4985248e+03 -2.9489966e+03 -3.7836530e+03 - -2.4207997e+03 -3.0198539e+03 -3.7811896e+03 - -2.3427784e+03 -3.0890932e+03 -3.7780679e+03 - -2.2646263e+03 -3.1565835e+03 -3.7743206e+03 - -2.1865011e+03 -3.2222072e+03 -3.7699862e+03 - -2.1085512e+03 -3.2858610e+03 -3.7651081e+03 - -2.0309141e+03 -3.3474564e+03 -3.7597341e+03 - -1.9537148e+03 -3.4069200e+03 -3.7539149e+03 - -1.8770655e+03 -3.4641931e+03 -3.7477040e+03 - -1.8010650e+03 -3.5192311e+03 -3.7411562e+03 - -1.7257980e+03 -3.5720033e+03 -3.7343270e+03 - -1.6513355e+03 -3.6224913e+03 -3.7272722e+03 - -1.5777354e+03 -3.6706883e+03 -3.7200466e+03 - -1.5050421e+03 -3.7165979e+03 -3.7127042e+03 - -1.4332882e+03 -3.7602326e+03 -3.7052969e+03 - -1.3624945e+03 -3.8016129e+03 -3.6978750e+03 - -1.2926714e+03 -3.8407657e+03 -3.6904861e+03 - -1.2238193e+03 -3.8777233e+03 -3.6831754e+03 - -1.1559301e+03 -3.9125221e+03 -3.6759853e+03 - -1.0889877e+03 -3.9452017e+03 -3.6689554e+03 - -1.0229691e+03 -3.9758038e+03 -3.6621226e+03 - -9.5784501e+02 -4.0043716e+03 -3.6555208e+03 - -8.9358109e+02 -4.0309485e+03 -3.6491811e+03 - -8.3013829e+02 -4.0555778e+03 -3.6431320e+03 - -7.6747370e+02 -4.0783021e+03 -3.6373995e+03 - -7.0554110e+02 -4.0991625e+03 -3.6320068e+03 - -6.4429153e+02 -4.1181985e+03 -3.6269751e+03 - -5.8367374e+02 -4.1354474e+03 -3.6223231e+03 - -5.2363460e+02 -4.1509438e+03 -3.6180674e+03 - -4.6411947e+02 -4.1647200e+03 -3.6142227e+03 - -4.0507247e+02 -4.1768051e+03 -3.6108018e+03 - -3.4643675e+02 -4.1872252e+03 -3.6078157e+03 - -2.8815472e+02 -4.1960030e+03 -3.6052737e+03 - -2.3016818e+02 -4.2031581e+03 -3.6031836e+03 - -1.7241850e+02 -4.2087064e+03 -3.6015516e+03 - -1.1484673e+02 -4.2126605e+03 -3.6003825e+03 - -5.7393666e+01 -4.2150294e+03 -3.5996798e+03 - 4.8134273e-09 -4.2158184e+03 -3.5994453e+03 - 5.7393666e+01 -4.2150294e+03 -3.5996798e+03 - 1.1484673e+02 -4.2126605e+03 -3.6003825e+03 - 1.7241850e+02 -4.2087064e+03 -3.6015516e+03 - 2.3016818e+02 -4.2031581e+03 -3.6031836e+03 - 2.8815472e+02 -4.1960030e+03 -3.6052737e+03 - 3.4643675e+02 -4.1872252e+03 -3.6078157e+03 - 4.0507247e+02 -4.1768051e+03 -3.6108018e+03 - 4.6411947e+02 -4.1647200e+03 -3.6142227e+03 - 5.2363460e+02 -4.1509438e+03 -3.6180674e+03 - 5.8367374e+02 -4.1354474e+03 -3.6223231e+03 - 6.4429153e+02 -4.1181985e+03 -3.6269751e+03 - 7.0554110e+02 -4.0991625e+03 -3.6320068e+03 - 7.6747370e+02 -4.0783021e+03 -3.6373995e+03 - 8.3013829e+02 -4.0555778e+03 -3.6431320e+03 - 8.9358109e+02 -4.0309485e+03 -3.6491811e+03 - 9.5784501e+02 -4.0043716e+03 -3.6555208e+03 - 1.0229691e+03 -3.9758038e+03 -3.6621226e+03 - 1.0889877e+03 -3.9452017e+03 -3.6689554e+03 - 1.1559301e+03 -3.9125221e+03 -3.6759853e+03 - 1.2238193e+03 -3.8777233e+03 -3.6831754e+03 - 1.2926714e+03 -3.8407657e+03 -3.6904861e+03 - 1.3624945e+03 -3.8016129e+03 -3.6978750e+03 - 1.4332882e+03 -3.7602326e+03 -3.7052969e+03 - 1.5050421e+03 -3.7165979e+03 -3.7127042e+03 - 1.5777354e+03 -3.6706883e+03 -3.7200466e+03 - 1.6513355e+03 -3.6224913e+03 -3.7272722e+03 - 1.7257980e+03 -3.5720033e+03 -3.7343270e+03 - 1.8010650e+03 -3.5192311e+03 -3.7411562e+03 - 1.8770655e+03 -3.4641931e+03 -3.7477040e+03 - 1.9537148e+03 -3.4069200e+03 -3.7539149e+03 - 2.0309141e+03 -3.3474564e+03 -3.7597341e+03 - 2.1085512e+03 -3.2858610e+03 -3.7651081e+03 - 2.1865011e+03 -3.2222072e+03 -3.7699862e+03 - 2.2646263e+03 -3.1565835e+03 -3.7743206e+03 - 2.3427784e+03 -3.0890932e+03 -3.7780679e+03 - 2.4207997e+03 -3.0198539e+03 -3.7811896e+03 - 2.4985248e+03 -2.9489966e+03 -3.7836530e+03 - 2.5757828e+03 -2.8766645e+03 -3.7854318e+03 - 2.6523996e+03 -2.8030116e+03 -3.7865069e+03 - 2.7282003e+03 -2.7282003e+03 -3.7868666e+03 - 2.8030116e+03 -2.6523996e+03 -3.7865069e+03 - 2.8766645e+03 -2.5757828e+03 -3.7854318e+03 - 2.9489966e+03 -2.4985248e+03 -3.7836530e+03 - 3.0198539e+03 -2.4207997e+03 -3.7811896e+03 - 3.0890932e+03 -2.3427784e+03 -3.7780679e+03 - 3.1565835e+03 -2.2646263e+03 -3.7743206e+03 - 3.2222072e+03 -2.1865011e+03 -3.7699862e+03 - 3.2858610e+03 -2.1085512e+03 -3.7651081e+03 - 3.3474564e+03 -2.0309141e+03 -3.7597341e+03 - 3.4069200e+03 -1.9537148e+03 -3.7539149e+03 - 3.4641931e+03 -1.8770655e+03 -3.7477040e+03 - 3.5192311e+03 -1.8010650e+03 -3.7411562e+03 - 3.5720033e+03 -1.7257980e+03 -3.7343270e+03 - 3.6224913e+03 -1.6513355e+03 -3.7272722e+03 - 3.6706883e+03 -1.5777354e+03 -3.7200466e+03 - 3.7165979e+03 -1.5050421e+03 -3.7127042e+03 - 3.7602326e+03 -1.4332882e+03 -3.7052969e+03 - 3.8016129e+03 -1.3624945e+03 -3.6978750e+03 - 3.8407657e+03 -1.2926714e+03 -3.6904861e+03 - 3.8777233e+03 -1.2238193e+03 -3.6831754e+03 - 3.9125221e+03 -1.1559301e+03 -3.6759853e+03 - 3.9452017e+03 -1.0889877e+03 -3.6689554e+03 - 3.9758038e+03 -1.0229691e+03 -3.6621226e+03 - 4.0043716e+03 -9.5784501e+02 -3.6555208e+03 - 4.0309485e+03 -8.9358109e+02 -3.6491811e+03 - 4.0555778e+03 -8.3013829e+02 -3.6431320e+03 - 4.0783021e+03 -7.6747370e+02 -3.6373995e+03 - 4.0991625e+03 -7.0554110e+02 -3.6320068e+03 - 4.1181985e+03 -6.4429153e+02 -3.6269751e+03 - 4.1354474e+03 -5.8367374e+02 -3.6223231e+03 - 4.1509438e+03 -5.2363460e+02 -3.6180674e+03 - 4.1647200e+03 -4.6411947e+02 -3.6142227e+03 - 4.1768051e+03 -4.0507247e+02 -3.6108018e+03 - 4.1872252e+03 -3.4643675e+02 -3.6078157e+03 - 4.1960030e+03 -2.8815472e+02 -3.6052737e+03 - 4.2031581e+03 -2.3016818e+02 -3.6031836e+03 - 4.2087064e+03 -1.7241850e+02 -3.6015516e+03 - 4.2126605e+03 -1.1484673e+02 -3.6003825e+03 - 4.2150294e+03 -5.7393666e+01 -3.5996798e+03 - 4.2158184e+03 -4.8134273e-09 -3.5994453e+03 - 4.1709689e+03 0.0000000e+00 -3.6451846e+03 - 4.1701805e+03 5.7413279e+01 -3.6454092e+03 - 4.1678139e+03 1.1488377e+02 -3.6460822e+03 - 4.1638637e+03 1.7246858e+02 -3.6472016e+03 - 4.1583216e+03 2.3022467e+02 -3.6487641e+03 - 4.1511757e+03 2.8820870e+02 -3.6507649e+03 - 4.1424107e+03 3.4647696e+02 -3.6531977e+03 - 4.1320083e+03 4.0508521e+02 -3.6560547e+03 - 4.1199470e+03 4.6408852e+02 -3.6593268e+03 - 4.1062021e+03 5.2354112e+02 -3.6630029e+03 - 4.0907463e+03 5.8349613e+02 -3.6670704e+03 - 4.0735494e+03 6.4400534e+02 -3.6715147e+03 - 4.0545788e+03 7.0511890e+02 -3.6763194e+03 - 4.0337996e+03 7.6688495e+02 -3.6814661e+03 - 4.0111751e+03 8.2934922e+02 -3.6869341e+03 - 3.9866671e+03 8.9255461e+02 -3.6927005e+03 - 3.9602362e+03 9.5654060e+02 -3.6987400e+03 - 3.9318425e+03 1.0213428e+03 -3.7050251e+03 - 3.9014462e+03 1.0869920e+03 -3.7115255e+03 - 3.8690080e+03 1.1535140e+03 -3.7182083e+03 - 3.8344903e+03 1.2209284e+03 -3.7250382e+03 - 3.7978575e+03 1.2892480e+03 -3.7319773e+03 - 3.7590773e+03 1.3584779e+03 -3.7389848e+03 - 3.7181217e+03 1.4286148e+03 -3.7460179e+03 - 3.6749678e+03 1.4996459e+03 -3.7530312e+03 - 3.6295992e+03 1.5715485e+03 -3.7599773e+03 - 3.5820068e+03 1.6442888e+03 -3.7668070e+03 - 3.5321903e+03 1.7178215e+03 -3.7734699e+03 - 3.4801591e+03 1.7920892e+03 -3.7799144e+03 - 3.4259337e+03 1.8670217e+03 -3.7860884e+03 - 3.3695461e+03 1.9425364e+03 -3.7919403e+03 - 3.3110410e+03 2.0185377e+03 -3.7974191e+03 - 3.2504764e+03 2.0949176e+03 -3.8024753e+03 - 3.1879241e+03 2.1715562e+03 -3.8070620e+03 - 3.1234695e+03 2.2483224e+03 -3.8111352e+03 - 3.0572117e+03 2.3250753e+03 -3.8146550e+03 - 2.9892630e+03 2.4016652e+03 -3.8175858e+03 - 2.9197478e+03 2.4779360e+03 -3.8198978e+03 - 2.8488019e+03 2.5537261e+03 -3.8215668e+03 - 2.7765707e+03 2.6288716e+03 -3.8225753e+03 - 2.7032075e+03 2.7032075e+03 -3.8229127e+03 - 2.6288716e+03 2.7765707e+03 -3.8225753e+03 - 2.5537261e+03 2.8488019e+03 -3.8215668e+03 - 2.4779360e+03 2.9197478e+03 -3.8198978e+03 - 2.4016652e+03 2.9892630e+03 -3.8175858e+03 - 2.3250753e+03 3.0572117e+03 -3.8146550e+03 - 2.2483224e+03 3.1234695e+03 -3.8111352e+03 - 2.1715562e+03 3.1879241e+03 -3.8070620e+03 - 2.0949176e+03 3.2504764e+03 -3.8024753e+03 - 2.0185377e+03 3.3110410e+03 -3.7974191e+03 - 1.9425364e+03 3.3695461e+03 -3.7919403e+03 - 1.8670217e+03 3.4259337e+03 -3.7860884e+03 - 1.7920892e+03 3.4801591e+03 -3.7799144e+03 - 1.7178215e+03 3.5321903e+03 -3.7734699e+03 - 1.6442888e+03 3.5820068e+03 -3.7668070e+03 - 1.5715485e+03 3.6295992e+03 -3.7599773e+03 - 1.4996459e+03 3.6749678e+03 -3.7530312e+03 - 1.4286148e+03 3.7181217e+03 -3.7460179e+03 - 1.3584779e+03 3.7590773e+03 -3.7389848e+03 - 1.2892480e+03 3.7978575e+03 -3.7319773e+03 - 1.2209284e+03 3.8344903e+03 -3.7250382e+03 - 1.1535140e+03 3.8690080e+03 -3.7182083e+03 - 1.0869920e+03 3.9014462e+03 -3.7115255e+03 - 1.0213428e+03 3.9318425e+03 -3.7050251e+03 - 9.5654060e+02 3.9602362e+03 -3.6987400e+03 - 8.9255461e+02 3.9866671e+03 -3.6927005e+03 - 8.2934922e+02 4.0111751e+03 -3.6869341e+03 - 7.6688495e+02 4.0337996e+03 -3.6814661e+03 - 7.0511890e+02 4.0545788e+03 -3.6763194e+03 - 6.4400534e+02 4.0735494e+03 -3.6715147e+03 - 5.8349613e+02 4.0907463e+03 -3.6670704e+03 - 5.2354112e+02 4.1062021e+03 -3.6630029e+03 - 4.6408852e+02 4.1199470e+03 -3.6593268e+03 - 4.0508521e+02 4.1320083e+03 -3.6560547e+03 - 3.4647696e+02 4.1424107e+03 -3.6531977e+03 - 2.8820870e+02 4.1511757e+03 -3.6507649e+03 - 2.3022467e+02 4.1583216e+03 -3.6487641e+03 - 1.7246858e+02 4.1638637e+03 -3.6472016e+03 - 1.1488377e+02 4.1678139e+03 -3.6460822e+03 - 5.7413279e+01 4.1701805e+03 -3.6454092e+03 - 0.0000000e+00 4.1709689e+03 -3.6451846e+03 - -5.7413279e+01 4.1701805e+03 -3.6454092e+03 - -1.1488377e+02 4.1678139e+03 -3.6460822e+03 - -1.7246858e+02 4.1638637e+03 -3.6472016e+03 - -2.3022467e+02 4.1583216e+03 -3.6487641e+03 - -2.8820870e+02 4.1511757e+03 -3.6507649e+03 - -3.4647696e+02 4.1424107e+03 -3.6531977e+03 - -4.0508521e+02 4.1320083e+03 -3.6560547e+03 - -4.6408852e+02 4.1199470e+03 -3.6593268e+03 - -5.2354112e+02 4.1062021e+03 -3.6630029e+03 - -5.8349613e+02 4.0907463e+03 -3.6670704e+03 - -6.4400534e+02 4.0735494e+03 -3.6715147e+03 - -7.0511890e+02 4.0545788e+03 -3.6763194e+03 - -7.6688495e+02 4.0337996e+03 -3.6814661e+03 - -8.2934922e+02 4.0111751e+03 -3.6869341e+03 - -8.9255461e+02 3.9866671e+03 -3.6927005e+03 - -9.5654060e+02 3.9602362e+03 -3.6987400e+03 - -1.0213428e+03 3.9318425e+03 -3.7050251e+03 - -1.0869920e+03 3.9014462e+03 -3.7115255e+03 - -1.1535140e+03 3.8690080e+03 -3.7182083e+03 - -1.2209284e+03 3.8344903e+03 -3.7250382e+03 - -1.2892480e+03 3.7978575e+03 -3.7319773e+03 - -1.3584779e+03 3.7590773e+03 -3.7389848e+03 - -1.4286148e+03 3.7181217e+03 -3.7460179e+03 - -1.4996459e+03 3.6749678e+03 -3.7530312e+03 - -1.5715485e+03 3.6295992e+03 -3.7599773e+03 - -1.6442888e+03 3.5820068e+03 -3.7668070e+03 - -1.7178215e+03 3.5321903e+03 -3.7734699e+03 - -1.7920892e+03 3.4801591e+03 -3.7799144e+03 - -1.8670217e+03 3.4259337e+03 -3.7860884e+03 - -1.9425364e+03 3.3695461e+03 -3.7919403e+03 - -2.0185377e+03 3.3110410e+03 -3.7974191e+03 - -2.0949176e+03 3.2504764e+03 -3.8024753e+03 - -2.1715562e+03 3.1879241e+03 -3.8070620e+03 - -2.2483224e+03 3.1234695e+03 -3.8111352e+03 - -2.3250753e+03 3.0572117e+03 -3.8146550e+03 - -2.4016652e+03 2.9892630e+03 -3.8175858e+03 - -2.4779360e+03 2.9197478e+03 -3.8198978e+03 - -2.5537261e+03 2.8488019e+03 -3.8215668e+03 - -2.6288716e+03 2.7765707e+03 -3.8225753e+03 - -2.7032075e+03 2.7032075e+03 -3.8229127e+03 - -2.7765707e+03 2.6288716e+03 -3.8225753e+03 - -2.8488019e+03 2.5537261e+03 -3.8215668e+03 - -2.9197478e+03 2.4779360e+03 -3.8198978e+03 - -2.9892630e+03 2.4016652e+03 -3.8175858e+03 - -3.0572117e+03 2.3250753e+03 -3.8146550e+03 - -3.1234695e+03 2.2483224e+03 -3.8111352e+03 - -3.1879241e+03 2.1715562e+03 -3.8070620e+03 - -3.2504764e+03 2.0949176e+03 -3.8024753e+03 - -3.3110410e+03 2.0185377e+03 -3.7974191e+03 - -3.3695461e+03 1.9425364e+03 -3.7919403e+03 - -3.4259337e+03 1.8670217e+03 -3.7860884e+03 - -3.4801591e+03 1.7920892e+03 -3.7799144e+03 - -3.5321903e+03 1.7178215e+03 -3.7734699e+03 - -3.5820068e+03 1.6442888e+03 -3.7668070e+03 - -3.6295992e+03 1.5715485e+03 -3.7599773e+03 - -3.6749678e+03 1.4996459e+03 -3.7530312e+03 - -3.7181217e+03 1.4286148e+03 -3.7460179e+03 - -3.7590773e+03 1.3584779e+03 -3.7389848e+03 - -3.7978575e+03 1.2892480e+03 -3.7319773e+03 - -3.8344903e+03 1.2209284e+03 -3.7250382e+03 - -3.8690080e+03 1.1535140e+03 -3.7182083e+03 - -3.9014462e+03 1.0869920e+03 -3.7115255e+03 - -3.9318425e+03 1.0213428e+03 -3.7050251e+03 - -3.9602362e+03 9.5654060e+02 -3.6987400e+03 - -3.9866671e+03 8.9255461e+02 -3.6927005e+03 - -4.0111751e+03 8.2934922e+02 -3.6869341e+03 - -4.0337996e+03 7.6688495e+02 -3.6814661e+03 - -4.0545788e+03 7.0511890e+02 -3.6763194e+03 - -4.0735494e+03 6.4400534e+02 -3.6715147e+03 - -4.0907463e+03 5.8349613e+02 -3.6670704e+03 - -4.1062021e+03 5.2354112e+02 -3.6630029e+03 - -4.1199470e+03 4.6408852e+02 -3.6593268e+03 - -4.1320083e+03 4.0508521e+02 -3.6560547e+03 - -4.1424107e+03 3.4647696e+02 -3.6531977e+03 - -4.1511757e+03 2.8820870e+02 -3.6507649e+03 - -4.1583216e+03 2.3022467e+02 -3.6487641e+03 - -4.1638637e+03 1.7246858e+02 -3.6472016e+03 - -4.1678139e+03 1.1488377e+02 -3.6460822e+03 - -4.1701805e+03 5.7413279e+01 -3.6454092e+03 - -4.1709689e+03 0.0000000e+00 -3.6451846e+03 - -4.1701805e+03 -5.7413279e+01 -3.6454092e+03 - -4.1678139e+03 -1.1488377e+02 -3.6460822e+03 - -4.1638637e+03 -1.7246858e+02 -3.6472016e+03 - -4.1583216e+03 -2.3022467e+02 -3.6487641e+03 - -4.1511757e+03 -2.8820870e+02 -3.6507649e+03 - -4.1424107e+03 -3.4647696e+02 -3.6531977e+03 - -4.1320083e+03 -4.0508521e+02 -3.6560547e+03 - -4.1199470e+03 -4.6408852e+02 -3.6593268e+03 - -4.1062021e+03 -5.2354112e+02 -3.6630029e+03 - -4.0907463e+03 -5.8349613e+02 -3.6670704e+03 - -4.0735494e+03 -6.4400534e+02 -3.6715147e+03 - -4.0545788e+03 -7.0511890e+02 -3.6763194e+03 - -4.0337996e+03 -7.6688495e+02 -3.6814661e+03 - -4.0111751e+03 -8.2934922e+02 -3.6869341e+03 - -3.9866671e+03 -8.9255461e+02 -3.6927005e+03 - -3.9602362e+03 -9.5654060e+02 -3.6987400e+03 - -3.9318425e+03 -1.0213428e+03 -3.7050251e+03 - -3.9014462e+03 -1.0869920e+03 -3.7115255e+03 - -3.8690080e+03 -1.1535140e+03 -3.7182083e+03 - -3.8344903e+03 -1.2209284e+03 -3.7250382e+03 - -3.7978575e+03 -1.2892480e+03 -3.7319773e+03 - -3.7590773e+03 -1.3584779e+03 -3.7389848e+03 - -3.7181217e+03 -1.4286148e+03 -3.7460179e+03 - -3.6749678e+03 -1.4996459e+03 -3.7530312e+03 - -3.6295992e+03 -1.5715485e+03 -3.7599773e+03 - -3.5820068e+03 -1.6442888e+03 -3.7668070e+03 - -3.5321903e+03 -1.7178215e+03 -3.7734699e+03 - -3.4801591e+03 -1.7920892e+03 -3.7799144e+03 - -3.4259337e+03 -1.8670217e+03 -3.7860884e+03 - -3.3695461e+03 -1.9425364e+03 -3.7919403e+03 - -3.3110410e+03 -2.0185377e+03 -3.7974191e+03 - -3.2504764e+03 -2.0949176e+03 -3.8024753e+03 - -3.1879241e+03 -2.1715562e+03 -3.8070620e+03 - -3.1234695e+03 -2.2483224e+03 -3.8111352e+03 - -3.0572117e+03 -2.3250753e+03 -3.8146550e+03 - -2.9892630e+03 -2.4016652e+03 -3.8175858e+03 - -2.9197478e+03 -2.4779360e+03 -3.8198978e+03 - -2.8488019e+03 -2.5537261e+03 -3.8215668e+03 - -2.7765707e+03 -2.6288716e+03 -3.8225753e+03 - -2.7032075e+03 -2.7032075e+03 -3.8229127e+03 - -2.6288716e+03 -2.7765707e+03 -3.8225753e+03 - -2.5537261e+03 -2.8488019e+03 -3.8215668e+03 - -2.4779360e+03 -2.9197478e+03 -3.8198978e+03 - -2.4016652e+03 -2.9892630e+03 -3.8175858e+03 - -2.3250753e+03 -3.0572117e+03 -3.8146550e+03 - -2.2483224e+03 -3.1234695e+03 -3.8111352e+03 - -2.1715562e+03 -3.1879241e+03 -3.8070620e+03 - -2.0949176e+03 -3.2504764e+03 -3.8024753e+03 - -2.0185377e+03 -3.3110410e+03 -3.7974191e+03 - -1.9425364e+03 -3.3695461e+03 -3.7919403e+03 - -1.8670217e+03 -3.4259337e+03 -3.7860884e+03 - -1.7920892e+03 -3.4801591e+03 -3.7799144e+03 - -1.7178215e+03 -3.5321903e+03 -3.7734699e+03 - -1.6442888e+03 -3.5820068e+03 -3.7668070e+03 - -1.5715485e+03 -3.6295992e+03 -3.7599773e+03 - -1.4996459e+03 -3.6749678e+03 -3.7530312e+03 - -1.4286148e+03 -3.7181217e+03 -3.7460179e+03 - -1.3584779e+03 -3.7590773e+03 -3.7389848e+03 - -1.2892480e+03 -3.7978575e+03 -3.7319773e+03 - -1.2209284e+03 -3.8344903e+03 -3.7250382e+03 - -1.1535140e+03 -3.8690080e+03 -3.7182083e+03 - -1.0869920e+03 -3.9014462e+03 -3.7115255e+03 - -1.0213428e+03 -3.9318425e+03 -3.7050251e+03 - -9.5654060e+02 -3.9602362e+03 -3.6987400e+03 - -8.9255461e+02 -3.9866671e+03 -3.6927005e+03 - -8.2934922e+02 -4.0111751e+03 -3.6869341e+03 - -7.6688495e+02 -4.0337996e+03 -3.6814661e+03 - -7.0511890e+02 -4.0545788e+03 -3.6763194e+03 - -6.4400534e+02 -4.0735494e+03 -3.6715147e+03 - -5.8349613e+02 -4.0907463e+03 -3.6670704e+03 - -5.2354112e+02 -4.1062021e+03 -3.6630029e+03 - -4.6408852e+02 -4.1199470e+03 -3.6593268e+03 - -4.0508521e+02 -4.1320083e+03 -3.6560547e+03 - -3.4647696e+02 -4.1424107e+03 -3.6531977e+03 - -2.8820870e+02 -4.1511757e+03 -3.6507649e+03 - -2.3022467e+02 -4.1583216e+03 -3.6487641e+03 - -1.7246858e+02 -4.1638637e+03 -3.6472016e+03 - -1.1488377e+02 -4.1678139e+03 -3.6460822e+03 - -5.7413279e+01 -4.1701805e+03 -3.6454092e+03 - 4.8134273e-09 -4.1709689e+03 -3.6451846e+03 - 5.7413279e+01 -4.1701805e+03 -3.6454092e+03 - 1.1488377e+02 -4.1678139e+03 -3.6460822e+03 - 1.7246858e+02 -4.1638637e+03 -3.6472016e+03 - 2.3022467e+02 -4.1583216e+03 -3.6487641e+03 - 2.8820870e+02 -4.1511757e+03 -3.6507649e+03 - 3.4647696e+02 -4.1424107e+03 -3.6531977e+03 - 4.0508521e+02 -4.1320083e+03 -3.6560547e+03 - 4.6408852e+02 -4.1199470e+03 -3.6593268e+03 - 5.2354112e+02 -4.1062021e+03 -3.6630029e+03 - 5.8349613e+02 -4.0907463e+03 -3.6670704e+03 - 6.4400534e+02 -4.0735494e+03 -3.6715147e+03 - 7.0511890e+02 -4.0545788e+03 -3.6763194e+03 - 7.6688495e+02 -4.0337996e+03 -3.6814661e+03 - 8.2934922e+02 -4.0111751e+03 -3.6869341e+03 - 8.9255461e+02 -3.9866671e+03 -3.6927005e+03 - 9.5654060e+02 -3.9602362e+03 -3.6987400e+03 - 1.0213428e+03 -3.9318425e+03 -3.7050251e+03 - 1.0869920e+03 -3.9014462e+03 -3.7115255e+03 - 1.1535140e+03 -3.8690080e+03 -3.7182083e+03 - 1.2209284e+03 -3.8344903e+03 -3.7250382e+03 - 1.2892480e+03 -3.7978575e+03 -3.7319773e+03 - 1.3584779e+03 -3.7590773e+03 -3.7389848e+03 - 1.4286148e+03 -3.7181217e+03 -3.7460179e+03 - 1.4996459e+03 -3.6749678e+03 -3.7530312e+03 - 1.5715485e+03 -3.6295992e+03 -3.7599773e+03 - 1.6442888e+03 -3.5820068e+03 -3.7668070e+03 - 1.7178215e+03 -3.5321903e+03 -3.7734699e+03 - 1.7920892e+03 -3.4801591e+03 -3.7799144e+03 - 1.8670217e+03 -3.4259337e+03 -3.7860884e+03 - 1.9425364e+03 -3.3695461e+03 -3.7919403e+03 - 2.0185377e+03 -3.3110410e+03 -3.7974191e+03 - 2.0949176e+03 -3.2504764e+03 -3.8024753e+03 - 2.1715562e+03 -3.1879241e+03 -3.8070620e+03 - 2.2483224e+03 -3.1234695e+03 -3.8111352e+03 - 2.3250753e+03 -3.0572117e+03 -3.8146550e+03 - 2.4016652e+03 -2.9892630e+03 -3.8175858e+03 - 2.4779360e+03 -2.9197478e+03 -3.8198978e+03 - 2.5537261e+03 -2.8488019e+03 -3.8215668e+03 - 2.6288716e+03 -2.7765707e+03 -3.8225753e+03 - 2.7032075e+03 -2.7032075e+03 -3.8229127e+03 - 2.7765707e+03 -2.6288716e+03 -3.8225753e+03 - 2.8488019e+03 -2.5537261e+03 -3.8215668e+03 - 2.9197478e+03 -2.4779360e+03 -3.8198978e+03 - 2.9892630e+03 -2.4016652e+03 -3.8175858e+03 - 3.0572117e+03 -2.3250753e+03 -3.8146550e+03 - 3.1234695e+03 -2.2483224e+03 -3.8111352e+03 - 3.1879241e+03 -2.1715562e+03 -3.8070620e+03 - 3.2504764e+03 -2.0949176e+03 -3.8024753e+03 - 3.3110410e+03 -2.0185377e+03 -3.7974191e+03 - 3.3695461e+03 -1.9425364e+03 -3.7919403e+03 - 3.4259337e+03 -1.8670217e+03 -3.7860884e+03 - 3.4801591e+03 -1.7920892e+03 -3.7799144e+03 - 3.5321903e+03 -1.7178215e+03 -3.7734699e+03 - 3.5820068e+03 -1.6442888e+03 -3.7668070e+03 - 3.6295992e+03 -1.5715485e+03 -3.7599773e+03 - 3.6749678e+03 -1.4996459e+03 -3.7530312e+03 - 3.7181217e+03 -1.4286148e+03 -3.7460179e+03 - 3.7590773e+03 -1.3584779e+03 -3.7389848e+03 - 3.7978575e+03 -1.2892480e+03 -3.7319773e+03 - 3.8344903e+03 -1.2209284e+03 -3.7250382e+03 - 3.8690080e+03 -1.1535140e+03 -3.7182083e+03 - 3.9014462e+03 -1.0869920e+03 -3.7115255e+03 - 3.9318425e+03 -1.0213428e+03 -3.7050251e+03 - 3.9602362e+03 -9.5654060e+02 -3.6987400e+03 - 3.9866671e+03 -8.9255461e+02 -3.6927005e+03 - 4.0111751e+03 -8.2934922e+02 -3.6869341e+03 - 4.0337996e+03 -7.6688495e+02 -3.6814661e+03 - 4.0545788e+03 -7.0511890e+02 -3.6763194e+03 - 4.0735494e+03 -6.4400534e+02 -3.6715147e+03 - 4.0907463e+03 -5.8349613e+02 -3.6670704e+03 - 4.1062021e+03 -5.2354112e+02 -3.6630029e+03 - 4.1199470e+03 -4.6408852e+02 -3.6593268e+03 - 4.1320083e+03 -4.0508521e+02 -3.6560547e+03 - 4.1424107e+03 -3.4647696e+02 -3.6531977e+03 - 4.1511757e+03 -2.8820870e+02 -3.6507649e+03 - 4.1583216e+03 -2.3022467e+02 -3.6487641e+03 - 4.1638637e+03 -1.7246858e+02 -3.6472016e+03 - 4.1678139e+03 -1.1488377e+02 -3.6460822e+03 - 4.1701805e+03 -5.7413279e+01 -3.6454092e+03 - 4.1709689e+03 0.0000000e+00 -3.6451846e+03 - 4.1253245e+03 0.0000000e+00 -3.6899416e+03 - 4.1245374e+03 5.7413041e+01 -3.6901564e+03 - 4.1221745e+03 1.1488104e+02 -3.6907999e+03 - 4.1182310e+03 1.7245886e+02 -3.6918702e+03 - 4.1126989e+03 2.3020114e+02 -3.6933638e+03 - 4.1055668e+03 2.8816223e+02 -3.6952762e+03 - 4.0968207e+03 3.4639600e+02 -3.6976009e+03 - 4.0864430e+03 4.0495574e+02 -3.7003303e+03 - 4.0744135e+03 4.6389397e+02 -3.7034552e+03 - 4.0607092e+03 5.2326226e+02 -3.7069648e+03 - 4.0453043e+03 5.8311100e+02 -3.7108465e+03 - 4.0281706e+03 6.4348911e+02 -3.7150860e+03 - 4.0092777e+03 7.0444376e+02 -3.7196670e+03 - 3.9885931e+03 7.6602004e+02 -3.7245716e+03 - 3.9660828e+03 8.2826051e+02 -3.7297795e+03 - 3.9417114e+03 8.9120480e+02 -3.7352683e+03 - 3.9154426e+03 9.5488910e+02 -3.7410135e+03 - 3.8872399e+03 1.0193456e+03 -3.7469883e+03 - 3.8570669e+03 1.0846019e+03 -3.7531635e+03 - 3.8248882e+03 1.1506803e+03 -3.7595074e+03 - 3.7906697e+03 1.2175973e+03 -3.7659861e+03 - 3.7543801e+03 1.2853625e+03 -3.7725632e+03 - 3.7159909e+03 1.3539783e+03 -3.7792000e+03 - 3.6754780e+03 1.4234388e+03 -3.7858555e+03 - 3.6328224e+03 1.4937291e+03 -3.7924870e+03 - 3.5880111e+03 1.5648247e+03 -3.7990495e+03 - 3.5410387e+03 1.6366909e+03 -3.8054969e+03 - 3.4919075e+03 1.7092820e+03 -3.8117817e+03 - 3.4406295e+03 1.7825407e+03 -3.8178556e+03 - 3.3872268e+03 1.8563985e+03 -3.8236702e+03 - 3.3317324e+03 1.9307746e+03 -3.8291774e+03 - 3.2741911e+03 2.0055767e+03 -3.8343297e+03 - 3.2146602e+03 2.0807009e+03 -3.8390816e+03 - 3.1532095e+03 2.1560326e+03 -3.8433896e+03 - 3.0899214e+03 2.2314468e+03 -3.8472132e+03 - 3.0248909e+03 2.3068097e+03 -3.8505157e+03 - 2.9582250e+03 2.3819795e+03 -3.8532645e+03 - 2.8900422e+03 2.4568087e+03 -3.8554321e+03 - 2.8204708e+03 2.5311448e+03 -3.8569965e+03 - 2.7496482e+03 2.6048333e+03 -3.8579417e+03 - 2.6777190e+03 2.6777190e+03 -3.8582578e+03 - 2.6048333e+03 2.7496482e+03 -3.8579417e+03 - 2.5311448e+03 2.8204708e+03 -3.8569965e+03 - 2.4568087e+03 2.8900422e+03 -3.8554321e+03 - 2.3819795e+03 2.9582250e+03 -3.8532645e+03 - 2.3068097e+03 3.0248909e+03 -3.8505157e+03 - 2.2314468e+03 3.0899214e+03 -3.8472132e+03 - 2.1560326e+03 3.1532095e+03 -3.8433896e+03 - 2.0807009e+03 3.2146602e+03 -3.8390816e+03 - 2.0055767e+03 3.2741911e+03 -3.8343297e+03 - 1.9307746e+03 3.3317324e+03 -3.8291774e+03 - 1.8563985e+03 3.3872268e+03 -3.8236702e+03 - 1.7825407e+03 3.4406295e+03 -3.8178556e+03 - 1.7092820e+03 3.4919075e+03 -3.8117817e+03 - 1.6366909e+03 3.5410387e+03 -3.8054969e+03 - 1.5648247e+03 3.5880111e+03 -3.7990495e+03 - 1.4937291e+03 3.6328224e+03 -3.7924870e+03 - 1.4234388e+03 3.6754780e+03 -3.7858555e+03 - 1.3539783e+03 3.7159909e+03 -3.7792000e+03 - 1.2853625e+03 3.7543801e+03 -3.7725632e+03 - 1.2175973e+03 3.7906697e+03 -3.7659861e+03 - 1.1506803e+03 3.8248882e+03 -3.7595074e+03 - 1.0846019e+03 3.8570669e+03 -3.7531635e+03 - 1.0193456e+03 3.8872399e+03 -3.7469883e+03 - 9.5488910e+02 3.9154426e+03 -3.7410135e+03 - 8.9120480e+02 3.9417114e+03 -3.7352683e+03 - 8.2826051e+02 3.9660828e+03 -3.7297795e+03 - 7.6602004e+02 3.9885931e+03 -3.7245716e+03 - 7.0444376e+02 4.0092777e+03 -3.7196670e+03 - 6.4348911e+02 4.0281706e+03 -3.7150860e+03 - 5.8311100e+02 4.0453043e+03 -3.7108465e+03 - 5.2326226e+02 4.0607092e+03 -3.7069648e+03 - 4.6389397e+02 4.0744135e+03 -3.7034552e+03 - 4.0495574e+02 4.0864430e+03 -3.7003303e+03 - 3.4639600e+02 4.0968207e+03 -3.6976009e+03 - 2.8816223e+02 4.1055668e+03 -3.6952762e+03 - 2.3020114e+02 4.1126989e+03 -3.6933638e+03 - 1.7245886e+02 4.1182310e+03 -3.6918702e+03 - 1.1488104e+02 4.1221745e+03 -3.6907999e+03 - 5.7413041e+01 4.1245374e+03 -3.6901564e+03 - 0.0000000e+00 4.1253245e+03 -3.6899416e+03 - -5.7413041e+01 4.1245374e+03 -3.6901564e+03 - -1.1488104e+02 4.1221745e+03 -3.6907999e+03 - -1.7245886e+02 4.1182310e+03 -3.6918702e+03 - -2.3020114e+02 4.1126989e+03 -3.6933638e+03 - -2.8816223e+02 4.1055668e+03 -3.6952762e+03 - -3.4639600e+02 4.0968207e+03 -3.6976009e+03 - -4.0495574e+02 4.0864430e+03 -3.7003303e+03 - -4.6389397e+02 4.0744135e+03 -3.7034552e+03 - -5.2326226e+02 4.0607092e+03 -3.7069648e+03 - -5.8311100e+02 4.0453043e+03 -3.7108465e+03 - -6.4348911e+02 4.0281706e+03 -3.7150860e+03 - -7.0444376e+02 4.0092777e+03 -3.7196670e+03 - -7.6602004e+02 3.9885931e+03 -3.7245716e+03 - -8.2826051e+02 3.9660828e+03 -3.7297795e+03 - -8.9120480e+02 3.9417114e+03 -3.7352683e+03 - -9.5488910e+02 3.9154426e+03 -3.7410135e+03 - -1.0193456e+03 3.8872399e+03 -3.7469883e+03 - -1.0846019e+03 3.8570669e+03 -3.7531635e+03 - -1.1506803e+03 3.8248882e+03 -3.7595074e+03 - -1.2175973e+03 3.7906697e+03 -3.7659861e+03 - -1.2853625e+03 3.7543801e+03 -3.7725632e+03 - -1.3539783e+03 3.7159909e+03 -3.7792000e+03 - -1.4234388e+03 3.6754780e+03 -3.7858555e+03 - -1.4937291e+03 3.6328224e+03 -3.7924870e+03 - -1.5648247e+03 3.5880111e+03 -3.7990495e+03 - -1.6366909e+03 3.5410387e+03 -3.8054969e+03 - -1.7092820e+03 3.4919075e+03 -3.8117817e+03 - -1.7825407e+03 3.4406295e+03 -3.8178556e+03 - -1.8563985e+03 3.3872268e+03 -3.8236702e+03 - -1.9307746e+03 3.3317324e+03 -3.8291774e+03 - -2.0055767e+03 3.2741911e+03 -3.8343297e+03 - -2.0807009e+03 3.2146602e+03 -3.8390816e+03 - -2.1560326e+03 3.1532095e+03 -3.8433896e+03 - -2.2314468e+03 3.0899214e+03 -3.8472132e+03 - -2.3068097e+03 3.0248909e+03 -3.8505157e+03 - -2.3819795e+03 2.9582250e+03 -3.8532645e+03 - -2.4568087e+03 2.8900422e+03 -3.8554321e+03 - -2.5311448e+03 2.8204708e+03 -3.8569965e+03 - -2.6048333e+03 2.7496482e+03 -3.8579417e+03 - -2.6777190e+03 2.6777190e+03 -3.8582578e+03 - -2.7496482e+03 2.6048333e+03 -3.8579417e+03 - -2.8204708e+03 2.5311448e+03 -3.8569965e+03 - -2.8900422e+03 2.4568087e+03 -3.8554321e+03 - -2.9582250e+03 2.3819795e+03 -3.8532645e+03 - -3.0248909e+03 2.3068097e+03 -3.8505157e+03 - -3.0899214e+03 2.2314468e+03 -3.8472132e+03 - -3.1532095e+03 2.1560326e+03 -3.8433896e+03 - -3.2146602e+03 2.0807009e+03 -3.8390816e+03 - -3.2741911e+03 2.0055767e+03 -3.8343297e+03 - -3.3317324e+03 1.9307746e+03 -3.8291774e+03 - -3.3872268e+03 1.8563985e+03 -3.8236702e+03 - -3.4406295e+03 1.7825407e+03 -3.8178556e+03 - -3.4919075e+03 1.7092820e+03 -3.8117817e+03 - -3.5410387e+03 1.6366909e+03 -3.8054969e+03 - -3.5880111e+03 1.5648247e+03 -3.7990495e+03 - -3.6328224e+03 1.4937291e+03 -3.7924870e+03 - -3.6754780e+03 1.4234388e+03 -3.7858555e+03 - -3.7159909e+03 1.3539783e+03 -3.7792000e+03 - -3.7543801e+03 1.2853625e+03 -3.7725632e+03 - -3.7906697e+03 1.2175973e+03 -3.7659861e+03 - -3.8248882e+03 1.1506803e+03 -3.7595074e+03 - -3.8570669e+03 1.0846019e+03 -3.7531635e+03 - -3.8872399e+03 1.0193456e+03 -3.7469883e+03 - -3.9154426e+03 9.5488910e+02 -3.7410135e+03 - -3.9417114e+03 8.9120480e+02 -3.7352683e+03 - -3.9660828e+03 8.2826051e+02 -3.7297795e+03 - -3.9885931e+03 7.6602004e+02 -3.7245716e+03 - -4.0092777e+03 7.0444376e+02 -3.7196670e+03 - -4.0281706e+03 6.4348911e+02 -3.7150860e+03 - -4.0453043e+03 5.8311100e+02 -3.7108465e+03 - -4.0607092e+03 5.2326226e+02 -3.7069648e+03 - -4.0744135e+03 4.6389397e+02 -3.7034552e+03 - -4.0864430e+03 4.0495574e+02 -3.7003303e+03 - -4.0968207e+03 3.4639600e+02 -3.6976009e+03 - -4.1055668e+03 2.8816223e+02 -3.6952762e+03 - -4.1126989e+03 2.3020114e+02 -3.6933638e+03 - -4.1182310e+03 1.7245886e+02 -3.6918702e+03 - -4.1221745e+03 1.1488104e+02 -3.6907999e+03 - -4.1245374e+03 5.7413041e+01 -3.6901564e+03 - -4.1253245e+03 0.0000000e+00 -3.6899416e+03 - -4.1245374e+03 -5.7413041e+01 -3.6901564e+03 - -4.1221745e+03 -1.1488104e+02 -3.6907999e+03 - -4.1182310e+03 -1.7245886e+02 -3.6918702e+03 - -4.1126989e+03 -2.3020114e+02 -3.6933638e+03 - -4.1055668e+03 -2.8816223e+02 -3.6952762e+03 - -4.0968207e+03 -3.4639600e+02 -3.6976009e+03 - -4.0864430e+03 -4.0495574e+02 -3.7003303e+03 - -4.0744135e+03 -4.6389397e+02 -3.7034552e+03 - -4.0607092e+03 -5.2326226e+02 -3.7069648e+03 - -4.0453043e+03 -5.8311100e+02 -3.7108465e+03 - -4.0281706e+03 -6.4348911e+02 -3.7150860e+03 - -4.0092777e+03 -7.0444376e+02 -3.7196670e+03 - -3.9885931e+03 -7.6602004e+02 -3.7245716e+03 - -3.9660828e+03 -8.2826051e+02 -3.7297795e+03 - -3.9417114e+03 -8.9120480e+02 -3.7352683e+03 - -3.9154426e+03 -9.5488910e+02 -3.7410135e+03 - -3.8872399e+03 -1.0193456e+03 -3.7469883e+03 - -3.8570669e+03 -1.0846019e+03 -3.7531635e+03 - -3.8248882e+03 -1.1506803e+03 -3.7595074e+03 - -3.7906697e+03 -1.2175973e+03 -3.7659861e+03 - -3.7543801e+03 -1.2853625e+03 -3.7725632e+03 - -3.7159909e+03 -1.3539783e+03 -3.7792000e+03 - -3.6754780e+03 -1.4234388e+03 -3.7858555e+03 - -3.6328224e+03 -1.4937291e+03 -3.7924870e+03 - -3.5880111e+03 -1.5648247e+03 -3.7990495e+03 - -3.5410387e+03 -1.6366909e+03 -3.8054969e+03 - -3.4919075e+03 -1.7092820e+03 -3.8117817e+03 - -3.4406295e+03 -1.7825407e+03 -3.8178556e+03 - -3.3872268e+03 -1.8563985e+03 -3.8236702e+03 - -3.3317324e+03 -1.9307746e+03 -3.8291774e+03 - -3.2741911e+03 -2.0055767e+03 -3.8343297e+03 - -3.2146602e+03 -2.0807009e+03 -3.8390816e+03 - -3.1532095e+03 -2.1560326e+03 -3.8433896e+03 - -3.0899214e+03 -2.2314468e+03 -3.8472132e+03 - -3.0248909e+03 -2.3068097e+03 -3.8505157e+03 - -2.9582250e+03 -2.3819795e+03 -3.8532645e+03 - -2.8900422e+03 -2.4568087e+03 -3.8554321e+03 - -2.8204708e+03 -2.5311448e+03 -3.8569965e+03 - -2.7496482e+03 -2.6048333e+03 -3.8579417e+03 - -2.6777190e+03 -2.6777190e+03 -3.8582578e+03 - -2.6048333e+03 -2.7496482e+03 -3.8579417e+03 - -2.5311448e+03 -2.8204708e+03 -3.8569965e+03 - -2.4568087e+03 -2.8900422e+03 -3.8554321e+03 - -2.3819795e+03 -2.9582250e+03 -3.8532645e+03 - -2.3068097e+03 -3.0248909e+03 -3.8505157e+03 - -2.2314468e+03 -3.0899214e+03 -3.8472132e+03 - -2.1560326e+03 -3.1532095e+03 -3.8433896e+03 - -2.0807009e+03 -3.2146602e+03 -3.8390816e+03 - -2.0055767e+03 -3.2741911e+03 -3.8343297e+03 - -1.9307746e+03 -3.3317324e+03 -3.8291774e+03 - -1.8563985e+03 -3.3872268e+03 -3.8236702e+03 - -1.7825407e+03 -3.4406295e+03 -3.8178556e+03 - -1.7092820e+03 -3.4919075e+03 -3.8117817e+03 - -1.6366909e+03 -3.5410387e+03 -3.8054969e+03 - -1.5648247e+03 -3.5880111e+03 -3.7990495e+03 - -1.4937291e+03 -3.6328224e+03 -3.7924870e+03 - -1.4234388e+03 -3.6754780e+03 -3.7858555e+03 - -1.3539783e+03 -3.7159909e+03 -3.7792000e+03 - -1.2853625e+03 -3.7543801e+03 -3.7725632e+03 - -1.2175973e+03 -3.7906697e+03 -3.7659861e+03 - -1.1506803e+03 -3.8248882e+03 -3.7595074e+03 - -1.0846019e+03 -3.8570669e+03 -3.7531635e+03 - -1.0193456e+03 -3.8872399e+03 -3.7469883e+03 - -9.5488910e+02 -3.9154426e+03 -3.7410135e+03 - -8.9120480e+02 -3.9417114e+03 -3.7352683e+03 - -8.2826051e+02 -3.9660828e+03 -3.7297795e+03 - -7.6602004e+02 -3.9885931e+03 -3.7245716e+03 - -7.0444376e+02 -4.0092777e+03 -3.7196670e+03 - -6.4348911e+02 -4.0281706e+03 -3.7150860e+03 - -5.8311100e+02 -4.0453043e+03 -3.7108465e+03 - -5.2326226e+02 -4.0607092e+03 -3.7069648e+03 - -4.6389397e+02 -4.0744135e+03 -3.7034552e+03 - -4.0495574e+02 -4.0864430e+03 -3.7003303e+03 - -3.4639600e+02 -4.0968207e+03 -3.6976009e+03 - -2.8816223e+02 -4.1055668e+03 -3.6952762e+03 - -2.3020114e+02 -4.1126989e+03 -3.6933638e+03 - -1.7245886e+02 -4.1182310e+03 -3.6918702e+03 - -1.1488104e+02 -4.1221745e+03 -3.6907999e+03 - -5.7413041e+01 -4.1245374e+03 -3.6901564e+03 - 0.0000000e+00 -4.1253245e+03 -3.6899416e+03 - 5.7413041e+01 -4.1245374e+03 -3.6901564e+03 - 1.1488104e+02 -4.1221745e+03 -3.6907999e+03 - 1.7245886e+02 -4.1182310e+03 -3.6918702e+03 - 2.3020114e+02 -4.1126989e+03 -3.6933638e+03 - 2.8816223e+02 -4.1055668e+03 -3.6952762e+03 - 3.4639600e+02 -4.0968207e+03 -3.6976009e+03 - 4.0495574e+02 -4.0864430e+03 -3.7003303e+03 - 4.6389397e+02 -4.0744135e+03 -3.7034552e+03 - 5.2326226e+02 -4.0607092e+03 -3.7069648e+03 - 5.8311100e+02 -4.0453043e+03 -3.7108465e+03 - 6.4348911e+02 -4.0281706e+03 -3.7150860e+03 - 7.0444376e+02 -4.0092777e+03 -3.7196670e+03 - 7.6602004e+02 -3.9885931e+03 -3.7245716e+03 - 8.2826051e+02 -3.9660828e+03 -3.7297795e+03 - 8.9120480e+02 -3.9417114e+03 -3.7352683e+03 - 9.5488910e+02 -3.9154426e+03 -3.7410135e+03 - 1.0193456e+03 -3.8872399e+03 -3.7469883e+03 - 1.0846019e+03 -3.8570669e+03 -3.7531635e+03 - 1.1506803e+03 -3.8248882e+03 -3.7595074e+03 - 1.2175973e+03 -3.7906697e+03 -3.7659861e+03 - 1.2853625e+03 -3.7543801e+03 -3.7725632e+03 - 1.3539783e+03 -3.7159909e+03 -3.7792000e+03 - 1.4234388e+03 -3.6754780e+03 -3.7858555e+03 - 1.4937291e+03 -3.6328224e+03 -3.7924870e+03 - 1.5648247e+03 -3.5880111e+03 -3.7990495e+03 - 1.6366909e+03 -3.5410387e+03 -3.8054969e+03 - 1.7092820e+03 -3.4919075e+03 -3.8117817e+03 - 1.7825407e+03 -3.4406295e+03 -3.8178556e+03 - 1.8563985e+03 -3.3872268e+03 -3.8236702e+03 - 1.9307746e+03 -3.3317324e+03 -3.8291774e+03 - 2.0055767e+03 -3.2741911e+03 -3.8343297e+03 - 2.0807009e+03 -3.2146602e+03 -3.8390816e+03 - 2.1560326e+03 -3.1532095e+03 -3.8433896e+03 - 2.2314468e+03 -3.0899214e+03 -3.8472132e+03 - 2.3068097e+03 -3.0248909e+03 -3.8505157e+03 - 2.3819795e+03 -2.9582250e+03 -3.8532645e+03 - 2.4568087e+03 -2.8900422e+03 -3.8554321e+03 - 2.5311448e+03 -2.8204708e+03 -3.8569965e+03 - 2.6048333e+03 -2.7496482e+03 -3.8579417e+03 - 2.6777190e+03 -2.6777190e+03 -3.8582578e+03 - 2.7496482e+03 -2.6048333e+03 -3.8579417e+03 - 2.8204708e+03 -2.5311448e+03 -3.8569965e+03 - 2.8900422e+03 -2.4568087e+03 -3.8554321e+03 - 2.9582250e+03 -2.3819795e+03 -3.8532645e+03 - 3.0248909e+03 -2.3068097e+03 -3.8505157e+03 - 3.0899214e+03 -2.2314468e+03 -3.8472132e+03 - 3.1532095e+03 -2.1560326e+03 -3.8433896e+03 - 3.2146602e+03 -2.0807009e+03 -3.8390816e+03 - 3.2741911e+03 -2.0055767e+03 -3.8343297e+03 - 3.3317324e+03 -1.9307746e+03 -3.8291774e+03 - 3.3872268e+03 -1.8563985e+03 -3.8236702e+03 - 3.4406295e+03 -1.7825407e+03 -3.8178556e+03 - 3.4919075e+03 -1.7092820e+03 -3.8117817e+03 - 3.5410387e+03 -1.6366909e+03 -3.8054969e+03 - 3.5880111e+03 -1.5648247e+03 -3.7990495e+03 - 3.6328224e+03 -1.4937291e+03 -3.7924870e+03 - 3.6754780e+03 -1.4234388e+03 -3.7858555e+03 - 3.7159909e+03 -1.3539783e+03 -3.7792000e+03 - 3.7543801e+03 -1.2853625e+03 -3.7725632e+03 - 3.7906697e+03 -1.2175973e+03 -3.7659861e+03 - 3.8248882e+03 -1.1506803e+03 -3.7595074e+03 - 3.8570669e+03 -1.0846019e+03 -3.7531635e+03 - 3.8872399e+03 -1.0193456e+03 -3.7469883e+03 - 3.9154426e+03 -9.5488910e+02 -3.7410135e+03 - 3.9417114e+03 -8.9120480e+02 -3.7352683e+03 - 3.9660828e+03 -8.2826051e+02 -3.7297795e+03 - 3.9885931e+03 -7.6602004e+02 -3.7245716e+03 - 4.0092777e+03 -7.0444376e+02 -3.7196670e+03 - 4.0281706e+03 -6.4348911e+02 -3.7150860e+03 - 4.0453043e+03 -5.8311100e+02 -3.7108465e+03 - 4.0607092e+03 -5.2326226e+02 -3.7069648e+03 - 4.0744135e+03 -4.6389397e+02 -3.7034552e+03 - 4.0864430e+03 -4.0495574e+02 -3.7003303e+03 - 4.0968207e+03 -3.4639600e+02 -3.6976009e+03 - 4.1055668e+03 -2.8816223e+02 -3.6952762e+03 - 4.1126989e+03 -2.3020114e+02 -3.6933638e+03 - 4.1182310e+03 -1.7245886e+02 -3.6918702e+03 - 4.1221745e+03 -1.1488104e+02 -3.6907999e+03 - 4.1245374e+03 -5.7413041e+01 -3.6901564e+03 - 4.1253245e+03 0.0000000e+00 -3.6899416e+03 - 4.0788240e+03 0.0000000e+00 -3.7337805e+03 - 4.0780387e+03 5.7391768e+01 -3.7339855e+03 - 4.0756813e+03 1.1483619e+02 -3.7345999e+03 - 4.0717471e+03 1.7238580e+02 -3.7356215e+03 - 4.0662287e+03 2.3009290e+02 -3.7370471e+03 - 4.0591156e+03 2.8800944e+02 -3.7388719e+03 - 4.0503942e+03 3.4618685e+02 -3.7410898e+03 - 4.0400483e+03 4.0467591e+02 -3.7436931e+03 - 4.0280589e+03 4.6352657e+02 -3.7466727e+03 - 4.0144045e+03 5.2278770e+02 -3.7500180e+03 - 3.9990609e+03 5.8250695e+02 -3.7537164e+03 - 3.9820020e+03 6.4273039e+02 -3.7577541e+03 - 3.9631993e+03 7.0350224e+02 -3.7621150e+03 - 3.9426229e+03 7.6486456e+02 -3.7667815e+03 - 3.9202412e+03 8.2685681e+02 -3.7717339e+03 - 3.8960217e+03 8.8951545e+02 -3.7769503e+03 - 3.8699313e+03 9.5287344e+02 -3.7824071e+03 - 3.8419365e+03 1.0169598e+03 -3.7880782e+03 - 3.8120045e+03 1.0817988e+03 -3.7939355e+03 - 3.7801032e+03 1.1474097e+03 -3.7999486e+03 - 3.7462024e+03 1.2138059e+03 -3.8060850e+03 - 3.7102744e+03 1.2809942e+03 -3.8123098e+03 - 3.6722945e+03 1.3489744e+03 -3.8185862e+03 - 3.6322423e+03 1.4177382e+03 -3.8248755e+03 - 3.5901024e+03 1.4872689e+03 -3.8311371e+03 - 3.5458651e+03 1.5575406e+03 -3.8373286e+03 - 3.4995280e+03 1.6285178e+03 -3.8434067e+03 - 3.4510962e+03 1.7001544e+03 -3.8493269e+03 - 3.4005838e+03 1.7723940e+03 -3.8550440e+03 - 3.3480141e+03 1.8451692e+03 -3.8605130e+03 - 3.2934212e+03 1.9184016e+03 -3.8656891e+03 - 3.2368498e+03 1.9920022e+03 -3.8705285e+03 - 3.1783560e+03 2.0658711e+03 -3.8749889e+03 - 3.1180078e+03 2.1398988e+03 -3.8790303e+03 - 3.0558846e+03 2.2139664e+03 -3.8826153e+03 - 2.9920774e+03 2.2879467e+03 -3.8857103e+03 - 2.9266883e+03 2.3617059e+03 -3.8882854e+03 - 2.8598296e+03 2.4351042e+03 -3.8903154e+03 - 2.7916227e+03 2.5079982e+03 -3.8917801e+03 - 2.7221975e+03 2.5802423e+03 -3.8926649e+03 - 2.6516903e+03 2.6516903e+03 -3.8929608e+03 - 2.5802423e+03 2.7221975e+03 -3.8926649e+03 - 2.5079982e+03 2.7916227e+03 -3.8917801e+03 - 2.4351042e+03 2.8598296e+03 -3.8903154e+03 - 2.3617059e+03 2.9266883e+03 -3.8882854e+03 - 2.2879467e+03 2.9920774e+03 -3.8857103e+03 - 2.2139664e+03 3.0558846e+03 -3.8826153e+03 - 2.1398988e+03 3.1180078e+03 -3.8790303e+03 - 2.0658711e+03 3.1783560e+03 -3.8749889e+03 - 1.9920022e+03 3.2368498e+03 -3.8705285e+03 - 1.9184016e+03 3.2934212e+03 -3.8656891e+03 - 1.8451692e+03 3.3480141e+03 -3.8605130e+03 - 1.7723940e+03 3.4005838e+03 -3.8550440e+03 - 1.7001544e+03 3.4510962e+03 -3.8493269e+03 - 1.6285178e+03 3.4995280e+03 -3.8434067e+03 - 1.5575406e+03 3.5458651e+03 -3.8373286e+03 - 1.4872689e+03 3.5901024e+03 -3.8311371e+03 - 1.4177382e+03 3.6322423e+03 -3.8248755e+03 - 1.3489744e+03 3.6722945e+03 -3.8185862e+03 - 1.2809942e+03 3.7102744e+03 -3.8123098e+03 - 1.2138059e+03 3.7462024e+03 -3.8060850e+03 - 1.1474097e+03 3.7801032e+03 -3.7999486e+03 - 1.0817988e+03 3.8120045e+03 -3.7939355e+03 - 1.0169598e+03 3.8419365e+03 -3.7880782e+03 - 9.5287344e+02 3.8699313e+03 -3.7824071e+03 - 8.8951545e+02 3.8960217e+03 -3.7769503e+03 - 8.2685681e+02 3.9202412e+03 -3.7717339e+03 - 7.6486456e+02 3.9426229e+03 -3.7667815e+03 - 7.0350224e+02 3.9631993e+03 -3.7621150e+03 - 6.4273039e+02 3.9820020e+03 -3.7577541e+03 - 5.8250695e+02 3.9990609e+03 -3.7537164e+03 - 5.2278770e+02 4.0144045e+03 -3.7500180e+03 - 4.6352657e+02 4.0280589e+03 -3.7466727e+03 - 4.0467591e+02 4.0400483e+03 -3.7436931e+03 - 3.4618685e+02 4.0503942e+03 -3.7410898e+03 - 2.8800944e+02 4.0591156e+03 -3.7388719e+03 - 2.3009290e+02 4.0662287e+03 -3.7370471e+03 - 1.7238580e+02 4.0717471e+03 -3.7356215e+03 - 1.1483619e+02 4.0756813e+03 -3.7345999e+03 - 5.7391768e+01 4.0780387e+03 -3.7339855e+03 - 0.0000000e+00 4.0788240e+03 -3.7337805e+03 - -5.7391768e+01 4.0780387e+03 -3.7339855e+03 - -1.1483619e+02 4.0756813e+03 -3.7345999e+03 - -1.7238580e+02 4.0717471e+03 -3.7356215e+03 - -2.3009290e+02 4.0662287e+03 -3.7370471e+03 - -2.8800944e+02 4.0591156e+03 -3.7388719e+03 - -3.4618685e+02 4.0503942e+03 -3.7410898e+03 - -4.0467591e+02 4.0400483e+03 -3.7436931e+03 - -4.6352657e+02 4.0280589e+03 -3.7466727e+03 - -5.2278770e+02 4.0144045e+03 -3.7500180e+03 - -5.8250695e+02 3.9990609e+03 -3.7537164e+03 - -6.4273039e+02 3.9820020e+03 -3.7577541e+03 - -7.0350224e+02 3.9631993e+03 -3.7621150e+03 - -7.6486456e+02 3.9426229e+03 -3.7667815e+03 - -8.2685681e+02 3.9202412e+03 -3.7717339e+03 - -8.8951545e+02 3.8960217e+03 -3.7769503e+03 - -9.5287344e+02 3.8699313e+03 -3.7824071e+03 - -1.0169598e+03 3.8419365e+03 -3.7880782e+03 - -1.0817988e+03 3.8120045e+03 -3.7939355e+03 - -1.1474097e+03 3.7801032e+03 -3.7999486e+03 - -1.2138059e+03 3.7462024e+03 -3.8060850e+03 - -1.2809942e+03 3.7102744e+03 -3.8123098e+03 - -1.3489744e+03 3.6722945e+03 -3.8185862e+03 - -1.4177382e+03 3.6322423e+03 -3.8248755e+03 - -1.4872689e+03 3.5901024e+03 -3.8311371e+03 - -1.5575406e+03 3.5458651e+03 -3.8373286e+03 - -1.6285178e+03 3.4995280e+03 -3.8434067e+03 - -1.7001544e+03 3.4510962e+03 -3.8493269e+03 - -1.7723940e+03 3.4005838e+03 -3.8550440e+03 - -1.8451692e+03 3.3480141e+03 -3.8605130e+03 - -1.9184016e+03 3.2934212e+03 -3.8656891e+03 - -1.9920022e+03 3.2368498e+03 -3.8705285e+03 - -2.0658711e+03 3.1783560e+03 -3.8749889e+03 - -2.1398988e+03 3.1180078e+03 -3.8790303e+03 - -2.2139664e+03 3.0558846e+03 -3.8826153e+03 - -2.2879467e+03 2.9920774e+03 -3.8857103e+03 - -2.3617059e+03 2.9266883e+03 -3.8882854e+03 - -2.4351042e+03 2.8598296e+03 -3.8903154e+03 - -2.5079982e+03 2.7916227e+03 -3.8917801e+03 - -2.5802423e+03 2.7221975e+03 -3.8926649e+03 - -2.6516903e+03 2.6516903e+03 -3.8929608e+03 - -2.7221975e+03 2.5802423e+03 -3.8926649e+03 - -2.7916227e+03 2.5079982e+03 -3.8917801e+03 - -2.8598296e+03 2.4351042e+03 -3.8903154e+03 - -2.9266883e+03 2.3617059e+03 -3.8882854e+03 - -2.9920774e+03 2.2879467e+03 -3.8857103e+03 - -3.0558846e+03 2.2139664e+03 -3.8826153e+03 - -3.1180078e+03 2.1398988e+03 -3.8790303e+03 - -3.1783560e+03 2.0658711e+03 -3.8749889e+03 - -3.2368498e+03 1.9920022e+03 -3.8705285e+03 - -3.2934212e+03 1.9184016e+03 -3.8656891e+03 - -3.3480141e+03 1.8451692e+03 -3.8605130e+03 - -3.4005838e+03 1.7723940e+03 -3.8550440e+03 - -3.4510962e+03 1.7001544e+03 -3.8493269e+03 - -3.4995280e+03 1.6285178e+03 -3.8434067e+03 - -3.5458651e+03 1.5575406e+03 -3.8373286e+03 - -3.5901024e+03 1.4872689e+03 -3.8311371e+03 - -3.6322423e+03 1.4177382e+03 -3.8248755e+03 - -3.6722945e+03 1.3489744e+03 -3.8185862e+03 - -3.7102744e+03 1.2809942e+03 -3.8123098e+03 - -3.7462024e+03 1.2138059e+03 -3.8060850e+03 - -3.7801032e+03 1.1474097e+03 -3.7999486e+03 - -3.8120045e+03 1.0817988e+03 -3.7939355e+03 - -3.8419365e+03 1.0169598e+03 -3.7880782e+03 - -3.8699313e+03 9.5287344e+02 -3.7824071e+03 - -3.8960217e+03 8.8951545e+02 -3.7769503e+03 - -3.9202412e+03 8.2685681e+02 -3.7717339e+03 - -3.9426229e+03 7.6486456e+02 -3.7667815e+03 - -3.9631993e+03 7.0350224e+02 -3.7621150e+03 - -3.9820020e+03 6.4273039e+02 -3.7577541e+03 - -3.9990609e+03 5.8250695e+02 -3.7537164e+03 - -4.0144045e+03 5.2278770e+02 -3.7500180e+03 - -4.0280589e+03 4.6352657e+02 -3.7466727e+03 - -4.0400483e+03 4.0467591e+02 -3.7436931e+03 - -4.0503942e+03 3.4618685e+02 -3.7410898e+03 - -4.0591156e+03 2.8800944e+02 -3.7388719e+03 - -4.0662287e+03 2.3009290e+02 -3.7370471e+03 - -4.0717471e+03 1.7238580e+02 -3.7356215e+03 - -4.0756813e+03 1.1483619e+02 -3.7345999e+03 - -4.0780387e+03 5.7391768e+01 -3.7339855e+03 - -4.0788240e+03 0.0000000e+00 -3.7337805e+03 - -4.0780387e+03 -5.7391768e+01 -3.7339855e+03 - -4.0756813e+03 -1.1483619e+02 -3.7345999e+03 - -4.0717471e+03 -1.7238580e+02 -3.7356215e+03 - -4.0662287e+03 -2.3009290e+02 -3.7370471e+03 - -4.0591156e+03 -2.8800944e+02 -3.7388719e+03 - -4.0503942e+03 -3.4618685e+02 -3.7410898e+03 - -4.0400483e+03 -4.0467591e+02 -3.7436931e+03 - -4.0280589e+03 -4.6352657e+02 -3.7466727e+03 - -4.0144045e+03 -5.2278770e+02 -3.7500180e+03 - -3.9990609e+03 -5.8250695e+02 -3.7537164e+03 - -3.9820020e+03 -6.4273039e+02 -3.7577541e+03 - -3.9631993e+03 -7.0350224e+02 -3.7621150e+03 - -3.9426229e+03 -7.6486456e+02 -3.7667815e+03 - -3.9202412e+03 -8.2685681e+02 -3.7717339e+03 - -3.8960217e+03 -8.8951545e+02 -3.7769503e+03 - -3.8699313e+03 -9.5287344e+02 -3.7824071e+03 - -3.8419365e+03 -1.0169598e+03 -3.7880782e+03 - -3.8120045e+03 -1.0817988e+03 -3.7939355e+03 - -3.7801032e+03 -1.1474097e+03 -3.7999486e+03 - -3.7462024e+03 -1.2138059e+03 -3.8060850e+03 - -3.7102744e+03 -1.2809942e+03 -3.8123098e+03 - -3.6722945e+03 -1.3489744e+03 -3.8185862e+03 - -3.6322423e+03 -1.4177382e+03 -3.8248755e+03 - -3.5901024e+03 -1.4872689e+03 -3.8311371e+03 - -3.5458651e+03 -1.5575406e+03 -3.8373286e+03 - -3.4995280e+03 -1.6285178e+03 -3.8434067e+03 - -3.4510962e+03 -1.7001544e+03 -3.8493269e+03 - -3.4005838e+03 -1.7723940e+03 -3.8550440e+03 - -3.3480141e+03 -1.8451692e+03 -3.8605130e+03 - -3.2934212e+03 -1.9184016e+03 -3.8656891e+03 - -3.2368498e+03 -1.9920022e+03 -3.8705285e+03 - -3.1783560e+03 -2.0658711e+03 -3.8749889e+03 - -3.1180078e+03 -2.1398988e+03 -3.8790303e+03 - -3.0558846e+03 -2.2139664e+03 -3.8826153e+03 - -2.9920774e+03 -2.2879467e+03 -3.8857103e+03 - -2.9266883e+03 -2.3617059e+03 -3.8882854e+03 - -2.8598296e+03 -2.4351042e+03 -3.8903154e+03 - -2.7916227e+03 -2.5079982e+03 -3.8917801e+03 - -2.7221975e+03 -2.5802423e+03 -3.8926649e+03 - -2.6516903e+03 -2.6516903e+03 -3.8929608e+03 - -2.5802423e+03 -2.7221975e+03 -3.8926649e+03 - -2.5079982e+03 -2.7916227e+03 -3.8917801e+03 - -2.4351042e+03 -2.8598296e+03 -3.8903154e+03 - -2.3617059e+03 -2.9266883e+03 -3.8882854e+03 - -2.2879467e+03 -2.9920774e+03 -3.8857103e+03 - -2.2139664e+03 -3.0558846e+03 -3.8826153e+03 - -2.1398988e+03 -3.1180078e+03 -3.8790303e+03 - -2.0658711e+03 -3.1783560e+03 -3.8749889e+03 - -1.9920022e+03 -3.2368498e+03 -3.8705285e+03 - -1.9184016e+03 -3.2934212e+03 -3.8656891e+03 - -1.8451692e+03 -3.3480141e+03 -3.8605130e+03 - -1.7723940e+03 -3.4005838e+03 -3.8550440e+03 - -1.7001544e+03 -3.4510962e+03 -3.8493269e+03 - -1.6285178e+03 -3.4995280e+03 -3.8434067e+03 - -1.5575406e+03 -3.5458651e+03 -3.8373286e+03 - -1.4872689e+03 -3.5901024e+03 -3.8311371e+03 - -1.4177382e+03 -3.6322423e+03 -3.8248755e+03 - -1.3489744e+03 -3.6722945e+03 -3.8185862e+03 - -1.2809942e+03 -3.7102744e+03 -3.8123098e+03 - -1.2138059e+03 -3.7462024e+03 -3.8060850e+03 - -1.1474097e+03 -3.7801032e+03 -3.7999486e+03 - -1.0817988e+03 -3.8120045e+03 -3.7939355e+03 - -1.0169598e+03 -3.8419365e+03 -3.7880782e+03 - -9.5287344e+02 -3.8699313e+03 -3.7824071e+03 - -8.8951545e+02 -3.8960217e+03 -3.7769503e+03 - -8.2685681e+02 -3.9202412e+03 -3.7717339e+03 - -7.6486456e+02 -3.9426229e+03 -3.7667815e+03 - -7.0350224e+02 -3.9631993e+03 -3.7621150e+03 - -6.4273039e+02 -3.9820020e+03 -3.7577541e+03 - -5.8250695e+02 -3.9990609e+03 -3.7537164e+03 - -5.2278770e+02 -4.0144045e+03 -3.7500180e+03 - -4.6352657e+02 -4.0280589e+03 -3.7466727e+03 - -4.0467591e+02 -4.0400483e+03 -3.7436931e+03 - -3.4618685e+02 -4.0503942e+03 -3.7410898e+03 - -2.8800944e+02 -4.0591156e+03 -3.7388719e+03 - -2.3009290e+02 -4.0662287e+03 -3.7370471e+03 - -1.7238580e+02 -4.0717471e+03 -3.7356215e+03 - -1.1483619e+02 -4.0756813e+03 -3.7345999e+03 - -5.7391768e+01 -4.0780387e+03 -3.7339855e+03 - -4.8134273e-09 -4.0788240e+03 -3.7337805e+03 - 5.7391768e+01 -4.0780387e+03 -3.7339855e+03 - 1.1483619e+02 -4.0756813e+03 -3.7345999e+03 - 1.7238580e+02 -4.0717471e+03 -3.7356215e+03 - 2.3009290e+02 -4.0662287e+03 -3.7370471e+03 - 2.8800944e+02 -4.0591156e+03 -3.7388719e+03 - 3.4618685e+02 -4.0503942e+03 -3.7410898e+03 - 4.0467591e+02 -4.0400483e+03 -3.7436931e+03 - 4.6352657e+02 -4.0280589e+03 -3.7466727e+03 - 5.2278770e+02 -4.0144045e+03 -3.7500180e+03 - 5.8250695e+02 -3.9990609e+03 -3.7537164e+03 - 6.4273039e+02 -3.9820020e+03 -3.7577541e+03 - 7.0350224e+02 -3.9631993e+03 -3.7621150e+03 - 7.6486456e+02 -3.9426229e+03 -3.7667815e+03 - 8.2685681e+02 -3.9202412e+03 -3.7717339e+03 - 8.8951545e+02 -3.8960217e+03 -3.7769503e+03 - 9.5287344e+02 -3.8699313e+03 -3.7824071e+03 - 1.0169598e+03 -3.8419365e+03 -3.7880782e+03 - 1.0817988e+03 -3.8120045e+03 -3.7939355e+03 - 1.1474097e+03 -3.7801032e+03 -3.7999486e+03 - 1.2138059e+03 -3.7462024e+03 -3.8060850e+03 - 1.2809942e+03 -3.7102744e+03 -3.8123098e+03 - 1.3489744e+03 -3.6722945e+03 -3.8185862e+03 - 1.4177382e+03 -3.6322423e+03 -3.8248755e+03 - 1.4872689e+03 -3.5901024e+03 -3.8311371e+03 - 1.5575406e+03 -3.5458651e+03 -3.8373286e+03 - 1.6285178e+03 -3.4995280e+03 -3.8434067e+03 - 1.7001544e+03 -3.4510962e+03 -3.8493269e+03 - 1.7723940e+03 -3.4005838e+03 -3.8550440e+03 - 1.8451692e+03 -3.3480141e+03 -3.8605130e+03 - 1.9184016e+03 -3.2934212e+03 -3.8656891e+03 - 1.9920022e+03 -3.2368498e+03 -3.8705285e+03 - 2.0658711e+03 -3.1783560e+03 -3.8749889e+03 - 2.1398988e+03 -3.1180078e+03 -3.8790303e+03 - 2.2139664e+03 -3.0558846e+03 -3.8826153e+03 - 2.2879467e+03 -2.9920774e+03 -3.8857103e+03 - 2.3617059e+03 -2.9266883e+03 -3.8882854e+03 - 2.4351042e+03 -2.8598296e+03 -3.8903154e+03 - 2.5079982e+03 -2.7916227e+03 -3.8917801e+03 - 2.5802423e+03 -2.7221975e+03 -3.8926649e+03 - 2.6516903e+03 -2.6516903e+03 -3.8929608e+03 - 2.7221975e+03 -2.5802423e+03 -3.8926649e+03 - 2.7916227e+03 -2.5079982e+03 -3.8917801e+03 - 2.8598296e+03 -2.4351042e+03 -3.8903154e+03 - 2.9266883e+03 -2.3617059e+03 -3.8882854e+03 - 2.9920774e+03 -2.2879467e+03 -3.8857103e+03 - 3.0558846e+03 -2.2139664e+03 -3.8826153e+03 - 3.1180078e+03 -2.1398988e+03 -3.8790303e+03 - 3.1783560e+03 -2.0658711e+03 -3.8749889e+03 - 3.2368498e+03 -1.9920022e+03 -3.8705285e+03 - 3.2934212e+03 -1.9184016e+03 -3.8656891e+03 - 3.3480141e+03 -1.8451692e+03 -3.8605130e+03 - 3.4005838e+03 -1.7723940e+03 -3.8550440e+03 - 3.4510962e+03 -1.7001544e+03 -3.8493269e+03 - 3.4995280e+03 -1.6285178e+03 -3.8434067e+03 - 3.5458651e+03 -1.5575406e+03 -3.8373286e+03 - 3.5901024e+03 -1.4872689e+03 -3.8311371e+03 - 3.6322423e+03 -1.4177382e+03 -3.8248755e+03 - 3.6722945e+03 -1.3489744e+03 -3.8185862e+03 - 3.7102744e+03 -1.2809942e+03 -3.8123098e+03 - 3.7462024e+03 -1.2138059e+03 -3.8060850e+03 - 3.7801032e+03 -1.1474097e+03 -3.7999486e+03 - 3.8120045e+03 -1.0817988e+03 -3.7939355e+03 - 3.8419365e+03 -1.0169598e+03 -3.7880782e+03 - 3.8699313e+03 -9.5287344e+02 -3.7824071e+03 - 3.8960217e+03 -8.8951545e+02 -3.7769503e+03 - 3.9202412e+03 -8.2685681e+02 -3.7717339e+03 - 3.9426229e+03 -7.6486456e+02 -3.7667815e+03 - 3.9631993e+03 -7.0350224e+02 -3.7621150e+03 - 3.9820020e+03 -6.4273039e+02 -3.7577541e+03 - 3.9990609e+03 -5.8250695e+02 -3.7537164e+03 - 4.0144045e+03 -5.2278770e+02 -3.7500180e+03 - 4.0280589e+03 -4.6352657e+02 -3.7466727e+03 - 4.0400483e+03 -4.0467591e+02 -3.7436931e+03 - 4.0503942e+03 -3.4618685e+02 -3.7410898e+03 - 4.0591156e+03 -2.8800944e+02 -3.7388719e+03 - 4.0662287e+03 -2.3009290e+02 -3.7370471e+03 - 4.0717471e+03 -1.7238580e+02 -3.7356215e+03 - 4.0756813e+03 -1.1483619e+02 -3.7345999e+03 - 4.0780387e+03 -5.7391768e+01 -3.7339855e+03 - 4.0788240e+03 0.0000000e+00 -3.7337805e+03 - 4.0314007e+03 0.0000000e+00 -3.7767622e+03 - 4.0306177e+03 5.7348150e+01 -3.7769575e+03 - 4.0282674e+03 1.1474659e+02 -3.7775430e+03 - 4.0243454e+03 1.7224548e+02 -3.7785165e+03 - 4.0188447e+03 2.2989473e+02 -3.7798748e+03 - 4.0117555e+03 2.8774384e+02 -3.7816132e+03 - 4.0030650e+03 3.4584176e+02 -3.7837255e+03 - 3.9927582e+03 4.0423673e+02 -3.7862044e+03 - 3.9808173e+03 4.6297606e+02 -3.7890406e+03 - 3.9672222e+03 5.2210598e+02 -3.7922238e+03 - 3.9519506e+03 5.8167135e+02 -3.7957418e+03 - 3.9349780e+03 6.4171540e+02 -3.7995807e+03 - 3.9162783e+03 7.0227944e+02 -3.8037251e+03 - 3.8958238e+03 7.6340254e+02 -3.8081577e+03 - 3.8735855e+03 8.2512112e+02 -3.8128592e+03 - 3.8495336e+03 8.8746853e+02 -3.8178086e+03 - 3.8236380e+03 9.5047464e+02 -3.8229829e+03 - 3.7958683e+03 1.0141653e+03 -3.8283570e+03 - 3.7661948e+03 1.0785619e+03 -3.8339038e+03 - 3.7345892e+03 1.1436805e+03 -3.8395942e+03 - 3.7010246e+03 1.2095318e+03 -3.8453970e+03 - 3.6654768e+03 1.2761199e+03 -3.8512792e+03 - 3.6279247e+03 1.3434422e+03 -3.8572056e+03 - 3.5883513e+03 1.4114883e+03 -3.8631397e+03 - 3.5467446e+03 1.4802400e+03 -3.8690430e+03 - 3.5030981e+03 1.5496701e+03 -3.8748758e+03 - 3.4574120e+03 1.6197424e+03 -3.8805973e+03 - 3.4096939e+03 1.6904110e+03 -3.8861659e+03 - 3.3599596e+03 1.7616202e+03 -3.8915396e+03 - 3.3082339e+03 1.8333040e+03 -3.8966763e+03 - 3.2545513e+03 1.9053866e+03 -3.9015346e+03 - 3.1989563e+03 1.9777820e+03 -3.9060738e+03 - 3.1415040e+03 2.0503946e+03 -3.9102550e+03 - 3.0822602e+03 2.1231198e+03 -3.9140413e+03 - 3.0213016e+03 2.1958444e+03 -3.9173984e+03 - 2.9587151e+03 2.2684481e+03 -3.9202953e+03 - 2.8945980e+03 2.3408040e+03 -3.9227046e+03 - 2.8290566e+03 2.4127805e+03 -3.9246033e+03 - 2.7622062e+03 2.4842424e+03 -3.9259730e+03 - 2.6941689e+03 2.5550525e+03 -3.9268003e+03 - 2.6250734e+03 2.6250734e+03 -3.9270769e+03 - 2.5550525e+03 2.6941689e+03 -3.9268003e+03 - 2.4842424e+03 2.7622062e+03 -3.9259730e+03 - 2.4127805e+03 2.8290566e+03 -3.9246033e+03 - 2.3408040e+03 2.8945980e+03 -3.9227046e+03 - 2.2684481e+03 2.9587151e+03 -3.9202953e+03 - 2.1958444e+03 3.0213016e+03 -3.9173984e+03 - 2.1231198e+03 3.0822602e+03 -3.9140413e+03 - 2.0503946e+03 3.1415040e+03 -3.9102550e+03 - 1.9777820e+03 3.1989563e+03 -3.9060738e+03 - 1.9053866e+03 3.2545513e+03 -3.9015346e+03 - 1.8333040e+03 3.3082339e+03 -3.8966763e+03 - 1.7616202e+03 3.3599596e+03 -3.8915396e+03 - 1.6904110e+03 3.4096939e+03 -3.8861659e+03 - 1.6197424e+03 3.4574120e+03 -3.8805973e+03 - 1.5496701e+03 3.5030981e+03 -3.8748758e+03 - 1.4802400e+03 3.5467446e+03 -3.8690430e+03 - 1.4114883e+03 3.5883513e+03 -3.8631397e+03 - 1.3434422e+03 3.6279247e+03 -3.8572056e+03 - 1.2761199e+03 3.6654768e+03 -3.8512792e+03 - 1.2095318e+03 3.7010246e+03 -3.8453970e+03 - 1.1436805e+03 3.7345892e+03 -3.8395942e+03 - 1.0785619e+03 3.7661948e+03 -3.8339038e+03 - 1.0141653e+03 3.7958683e+03 -3.8283570e+03 - 9.5047464e+02 3.8236380e+03 -3.8229829e+03 - 8.8746853e+02 3.8495336e+03 -3.8178086e+03 - 8.2512112e+02 3.8735855e+03 -3.8128592e+03 - 7.6340254e+02 3.8958238e+03 -3.8081577e+03 - 7.0227944e+02 3.9162783e+03 -3.8037251e+03 - 6.4171540e+02 3.9349780e+03 -3.7995807e+03 - 5.8167135e+02 3.9519506e+03 -3.7957418e+03 - 5.2210598e+02 3.9672222e+03 -3.7922238e+03 - 4.6297606e+02 3.9808173e+03 -3.7890406e+03 - 4.0423673e+02 3.9927582e+03 -3.7862044e+03 - 3.4584176e+02 4.0030650e+03 -3.7837255e+03 - 2.8774384e+02 4.0117555e+03 -3.7816132e+03 - 2.2989473e+02 4.0188447e+03 -3.7798748e+03 - 1.7224548e+02 4.0243454e+03 -3.7785165e+03 - 1.1474659e+02 4.0282674e+03 -3.7775430e+03 - 5.7348150e+01 4.0306177e+03 -3.7769575e+03 - -4.8134273e-09 4.0314007e+03 -3.7767622e+03 - -5.7348150e+01 4.0306177e+03 -3.7769575e+03 - -1.1474659e+02 4.0282674e+03 -3.7775430e+03 - -1.7224548e+02 4.0243454e+03 -3.7785165e+03 - -2.2989473e+02 4.0188447e+03 -3.7798748e+03 - -2.8774384e+02 4.0117555e+03 -3.7816132e+03 - -3.4584176e+02 4.0030650e+03 -3.7837255e+03 - -4.0423673e+02 3.9927582e+03 -3.7862044e+03 - -4.6297606e+02 3.9808173e+03 -3.7890406e+03 - -5.2210598e+02 3.9672222e+03 -3.7922238e+03 - -5.8167135e+02 3.9519506e+03 -3.7957418e+03 - -6.4171540e+02 3.9349780e+03 -3.7995807e+03 - -7.0227944e+02 3.9162783e+03 -3.8037251e+03 - -7.6340254e+02 3.8958238e+03 -3.8081577e+03 - -8.2512112e+02 3.8735855e+03 -3.8128592e+03 - -8.8746853e+02 3.8495336e+03 -3.8178086e+03 - -9.5047464e+02 3.8236380e+03 -3.8229829e+03 - -1.0141653e+03 3.7958683e+03 -3.8283570e+03 - -1.0785619e+03 3.7661948e+03 -3.8339038e+03 - -1.1436805e+03 3.7345892e+03 -3.8395942e+03 - -1.2095318e+03 3.7010246e+03 -3.8453970e+03 - -1.2761199e+03 3.6654768e+03 -3.8512792e+03 - -1.3434422e+03 3.6279247e+03 -3.8572056e+03 - -1.4114883e+03 3.5883513e+03 -3.8631397e+03 - -1.4802400e+03 3.5467446e+03 -3.8690430e+03 - -1.5496701e+03 3.5030981e+03 -3.8748758e+03 - -1.6197424e+03 3.4574120e+03 -3.8805973e+03 - -1.6904110e+03 3.4096939e+03 -3.8861659e+03 - -1.7616202e+03 3.3599596e+03 -3.8915396e+03 - -1.8333040e+03 3.3082339e+03 -3.8966763e+03 - -1.9053866e+03 3.2545513e+03 -3.9015346e+03 - -1.9777820e+03 3.1989563e+03 -3.9060738e+03 - -2.0503946e+03 3.1415040e+03 -3.9102550e+03 - -2.1231198e+03 3.0822602e+03 -3.9140413e+03 - -2.1958444e+03 3.0213016e+03 -3.9173984e+03 - -2.2684481e+03 2.9587151e+03 -3.9202953e+03 - -2.3408040e+03 2.8945980e+03 -3.9227046e+03 - -2.4127805e+03 2.8290566e+03 -3.9246033e+03 - -2.4842424e+03 2.7622062e+03 -3.9259730e+03 - -2.5550525e+03 2.6941689e+03 -3.9268003e+03 - -2.6250734e+03 2.6250734e+03 -3.9270769e+03 - -2.6941689e+03 2.5550525e+03 -3.9268003e+03 - -2.7622062e+03 2.4842424e+03 -3.9259730e+03 - -2.8290566e+03 2.4127805e+03 -3.9246033e+03 - -2.8945980e+03 2.3408040e+03 -3.9227046e+03 - -2.9587151e+03 2.2684481e+03 -3.9202953e+03 - -3.0213016e+03 2.1958444e+03 -3.9173984e+03 - -3.0822602e+03 2.1231198e+03 -3.9140413e+03 - -3.1415040e+03 2.0503946e+03 -3.9102550e+03 - -3.1989563e+03 1.9777820e+03 -3.9060738e+03 - -3.2545513e+03 1.9053866e+03 -3.9015346e+03 - -3.3082339e+03 1.8333040e+03 -3.8966763e+03 - -3.3599596e+03 1.7616202e+03 -3.8915396e+03 - -3.4096939e+03 1.6904110e+03 -3.8861659e+03 - -3.4574120e+03 1.6197424e+03 -3.8805973e+03 - -3.5030981e+03 1.5496701e+03 -3.8748758e+03 - -3.5467446e+03 1.4802400e+03 -3.8690430e+03 - -3.5883513e+03 1.4114883e+03 -3.8631397e+03 - -3.6279247e+03 1.3434422e+03 -3.8572056e+03 - -3.6654768e+03 1.2761199e+03 -3.8512792e+03 - -3.7010246e+03 1.2095318e+03 -3.8453970e+03 - -3.7345892e+03 1.1436805e+03 -3.8395942e+03 - -3.7661948e+03 1.0785619e+03 -3.8339038e+03 - -3.7958683e+03 1.0141653e+03 -3.8283570e+03 - -3.8236380e+03 9.5047464e+02 -3.8229829e+03 - -3.8495336e+03 8.8746853e+02 -3.8178086e+03 - -3.8735855e+03 8.2512112e+02 -3.8128592e+03 - -3.8958238e+03 7.6340254e+02 -3.8081577e+03 - -3.9162783e+03 7.0227944e+02 -3.8037251e+03 - -3.9349780e+03 6.4171540e+02 -3.7995807e+03 - -3.9519506e+03 5.8167135e+02 -3.7957418e+03 - -3.9672222e+03 5.2210598e+02 -3.7922238e+03 - -3.9808173e+03 4.6297606e+02 -3.7890406e+03 - -3.9927582e+03 4.0423673e+02 -3.7862044e+03 - -4.0030650e+03 3.4584176e+02 -3.7837255e+03 - -4.0117555e+03 2.8774384e+02 -3.7816132e+03 - -4.0188447e+03 2.2989473e+02 -3.7798748e+03 - -4.0243454e+03 1.7224548e+02 -3.7785165e+03 - -4.0282674e+03 1.1474659e+02 -3.7775430e+03 - -4.0306177e+03 5.7348150e+01 -3.7769575e+03 - -4.0314007e+03 4.8134273e-09 -3.7767622e+03 - -4.0306177e+03 -5.7348150e+01 -3.7769575e+03 - -4.0282674e+03 -1.1474659e+02 -3.7775430e+03 - -4.0243454e+03 -1.7224548e+02 -3.7785165e+03 - -4.0188447e+03 -2.2989473e+02 -3.7798748e+03 - -4.0117555e+03 -2.8774384e+02 -3.7816132e+03 - -4.0030650e+03 -3.4584176e+02 -3.7837255e+03 - -3.9927582e+03 -4.0423673e+02 -3.7862044e+03 - -3.9808173e+03 -4.6297606e+02 -3.7890406e+03 - -3.9672222e+03 -5.2210598e+02 -3.7922238e+03 - -3.9519506e+03 -5.8167135e+02 -3.7957418e+03 - -3.9349780e+03 -6.4171540e+02 -3.7995807e+03 - -3.9162783e+03 -7.0227944e+02 -3.8037251e+03 - -3.8958238e+03 -7.6340254e+02 -3.8081577e+03 - -3.8735855e+03 -8.2512112e+02 -3.8128592e+03 - -3.8495336e+03 -8.8746853e+02 -3.8178086e+03 - -3.8236380e+03 -9.5047464e+02 -3.8229829e+03 - -3.7958683e+03 -1.0141653e+03 -3.8283570e+03 - -3.7661948e+03 -1.0785619e+03 -3.8339038e+03 - -3.7345892e+03 -1.1436805e+03 -3.8395942e+03 - -3.7010246e+03 -1.2095318e+03 -3.8453970e+03 - -3.6654768e+03 -1.2761199e+03 -3.8512792e+03 - -3.6279247e+03 -1.3434422e+03 -3.8572056e+03 - -3.5883513e+03 -1.4114883e+03 -3.8631397e+03 - -3.5467446e+03 -1.4802400e+03 -3.8690430e+03 - -3.5030981e+03 -1.5496701e+03 -3.8748758e+03 - -3.4574120e+03 -1.6197424e+03 -3.8805973e+03 - -3.4096939e+03 -1.6904110e+03 -3.8861659e+03 - -3.3599596e+03 -1.7616202e+03 -3.8915396e+03 - -3.3082339e+03 -1.8333040e+03 -3.8966763e+03 - -3.2545513e+03 -1.9053866e+03 -3.9015346e+03 - -3.1989563e+03 -1.9777820e+03 -3.9060738e+03 - -3.1415040e+03 -2.0503946e+03 -3.9102550e+03 - -3.0822602e+03 -2.1231198e+03 -3.9140413e+03 - -3.0213016e+03 -2.1958444e+03 -3.9173984e+03 - -2.9587151e+03 -2.2684481e+03 -3.9202953e+03 - -2.8945980e+03 -2.3408040e+03 -3.9227046e+03 - -2.8290566e+03 -2.4127805e+03 -3.9246033e+03 - -2.7622062e+03 -2.4842424e+03 -3.9259730e+03 - -2.6941689e+03 -2.5550525e+03 -3.9268003e+03 - -2.6250734e+03 -2.6250734e+03 -3.9270769e+03 - -2.5550525e+03 -2.6941689e+03 -3.9268003e+03 - -2.4842424e+03 -2.7622062e+03 -3.9259730e+03 - -2.4127805e+03 -2.8290566e+03 -3.9246033e+03 - -2.3408040e+03 -2.8945980e+03 -3.9227046e+03 - -2.2684481e+03 -2.9587151e+03 -3.9202953e+03 - -2.1958444e+03 -3.0213016e+03 -3.9173984e+03 - -2.1231198e+03 -3.0822602e+03 -3.9140413e+03 - -2.0503946e+03 -3.1415040e+03 -3.9102550e+03 - -1.9777820e+03 -3.1989563e+03 -3.9060738e+03 - -1.9053866e+03 -3.2545513e+03 -3.9015346e+03 - -1.8333040e+03 -3.3082339e+03 -3.8966763e+03 - -1.7616202e+03 -3.3599596e+03 -3.8915396e+03 - -1.6904110e+03 -3.4096939e+03 -3.8861659e+03 - -1.6197424e+03 -3.4574120e+03 -3.8805973e+03 - -1.5496701e+03 -3.5030981e+03 -3.8748758e+03 - -1.4802400e+03 -3.5467446e+03 -3.8690430e+03 - -1.4114883e+03 -3.5883513e+03 -3.8631397e+03 - -1.3434422e+03 -3.6279247e+03 -3.8572056e+03 - -1.2761199e+03 -3.6654768e+03 -3.8512792e+03 - -1.2095318e+03 -3.7010246e+03 -3.8453970e+03 - -1.1436805e+03 -3.7345892e+03 -3.8395942e+03 - -1.0785619e+03 -3.7661948e+03 -3.8339038e+03 - -1.0141653e+03 -3.7958683e+03 -3.8283570e+03 - -9.5047464e+02 -3.8236380e+03 -3.8229829e+03 - -8.8746853e+02 -3.8495336e+03 -3.8178086e+03 - -8.2512112e+02 -3.8735855e+03 -3.8128592e+03 - -7.6340254e+02 -3.8958238e+03 -3.8081577e+03 - -7.0227944e+02 -3.9162783e+03 -3.8037251e+03 - -6.4171540e+02 -3.9349780e+03 -3.7995807e+03 - -5.8167135e+02 -3.9519506e+03 -3.7957418e+03 - -5.2210598e+02 -3.9672222e+03 -3.7922238e+03 - -4.6297606e+02 -3.9808173e+03 -3.7890406e+03 - -4.0423673e+02 -3.9927582e+03 -3.7862044e+03 - -3.4584176e+02 -4.0030650e+03 -3.7837255e+03 - -2.8774384e+02 -4.0117555e+03 -3.7816132e+03 - -2.2989473e+02 -4.0188447e+03 -3.7798748e+03 - -1.7224548e+02 -4.0243454e+03 -3.7785165e+03 - -1.1474659e+02 -4.0282674e+03 -3.7775430e+03 - -5.7348150e+01 -4.0306177e+03 -3.7769575e+03 - 4.8134273e-09 -4.0314007e+03 -3.7767622e+03 - 5.7348150e+01 -4.0306177e+03 -3.7769575e+03 - 1.1474659e+02 -4.0282674e+03 -3.7775430e+03 - 1.7224548e+02 -4.0243454e+03 -3.7785165e+03 - 2.2989473e+02 -4.0188447e+03 -3.7798748e+03 - 2.8774384e+02 -4.0117555e+03 -3.7816132e+03 - 3.4584176e+02 -4.0030650e+03 -3.7837255e+03 - 4.0423673e+02 -3.9927582e+03 -3.7862044e+03 - 4.6297606e+02 -3.9808173e+03 -3.7890406e+03 - 5.2210598e+02 -3.9672222e+03 -3.7922238e+03 - 5.8167135e+02 -3.9519506e+03 -3.7957418e+03 - 6.4171540e+02 -3.9349780e+03 -3.7995807e+03 - 7.0227944e+02 -3.9162783e+03 -3.8037251e+03 - 7.6340254e+02 -3.8958238e+03 -3.8081577e+03 - 8.2512112e+02 -3.8735855e+03 -3.8128592e+03 - 8.8746853e+02 -3.8495336e+03 -3.8178086e+03 - 9.5047464e+02 -3.8236380e+03 -3.8229829e+03 - 1.0141653e+03 -3.7958683e+03 -3.8283570e+03 - 1.0785619e+03 -3.7661948e+03 -3.8339038e+03 - 1.1436805e+03 -3.7345892e+03 -3.8395942e+03 - 1.2095318e+03 -3.7010246e+03 -3.8453970e+03 - 1.2761199e+03 -3.6654768e+03 -3.8512792e+03 - 1.3434422e+03 -3.6279247e+03 -3.8572056e+03 - 1.4114883e+03 -3.5883513e+03 -3.8631397e+03 - 1.4802400e+03 -3.5467446e+03 -3.8690430e+03 - 1.5496701e+03 -3.5030981e+03 -3.8748758e+03 - 1.6197424e+03 -3.4574120e+03 -3.8805973e+03 - 1.6904110e+03 -3.4096939e+03 -3.8861659e+03 - 1.7616202e+03 -3.3599596e+03 -3.8915396e+03 - 1.8333040e+03 -3.3082339e+03 -3.8966763e+03 - 1.9053866e+03 -3.2545513e+03 -3.9015346e+03 - 1.9777820e+03 -3.1989563e+03 -3.9060738e+03 - 2.0503946e+03 -3.1415040e+03 -3.9102550e+03 - 2.1231198e+03 -3.0822602e+03 -3.9140413e+03 - 2.1958444e+03 -3.0213016e+03 -3.9173984e+03 - 2.2684481e+03 -2.9587151e+03 -3.9202953e+03 - 2.3408040e+03 -2.8945980e+03 -3.9227046e+03 - 2.4127805e+03 -2.8290566e+03 -3.9246033e+03 - 2.4842424e+03 -2.7622062e+03 -3.9259730e+03 - 2.5550525e+03 -2.6941689e+03 -3.9268003e+03 - 2.6250734e+03 -2.6250734e+03 -3.9270769e+03 - 2.6941689e+03 -2.5550525e+03 -3.9268003e+03 - 2.7622062e+03 -2.4842424e+03 -3.9259730e+03 - 2.8290566e+03 -2.4127805e+03 -3.9246033e+03 - 2.8945980e+03 -2.3408040e+03 -3.9227046e+03 - 2.9587151e+03 -2.2684481e+03 -3.9202953e+03 - 3.0213016e+03 -2.1958444e+03 -3.9173984e+03 - 3.0822602e+03 -2.1231198e+03 -3.9140413e+03 - 3.1415040e+03 -2.0503946e+03 -3.9102550e+03 - 3.1989563e+03 -1.9777820e+03 -3.9060738e+03 - 3.2545513e+03 -1.9053866e+03 -3.9015346e+03 - 3.3082339e+03 -1.8333040e+03 -3.8966763e+03 - 3.3599596e+03 -1.7616202e+03 -3.8915396e+03 - 3.4096939e+03 -1.6904110e+03 -3.8861659e+03 - 3.4574120e+03 -1.6197424e+03 -3.8805973e+03 - 3.5030981e+03 -1.5496701e+03 -3.8748758e+03 - 3.5467446e+03 -1.4802400e+03 -3.8690430e+03 - 3.5883513e+03 -1.4114883e+03 -3.8631397e+03 - 3.6279247e+03 -1.3434422e+03 -3.8572056e+03 - 3.6654768e+03 -1.2761199e+03 -3.8512792e+03 - 3.7010246e+03 -1.2095318e+03 -3.8453970e+03 - 3.7345892e+03 -1.1436805e+03 -3.8395942e+03 - 3.7661948e+03 -1.0785619e+03 -3.8339038e+03 - 3.7958683e+03 -1.0141653e+03 -3.8283570e+03 - 3.8236380e+03 -9.5047464e+02 -3.8229829e+03 - 3.8495336e+03 -8.8746853e+02 -3.8178086e+03 - 3.8735855e+03 -8.2512112e+02 -3.8128592e+03 - 3.8958238e+03 -7.6340254e+02 -3.8081577e+03 - 3.9162783e+03 -7.0227944e+02 -3.8037251e+03 - 3.9349780e+03 -6.4171540e+02 -3.7995807e+03 - 3.9519506e+03 -5.8167135e+02 -3.7957418e+03 - 3.9672222e+03 -5.2210598e+02 -3.7922238e+03 - 3.9808173e+03 -4.6297606e+02 -3.7890406e+03 - 3.9927582e+03 -4.0423673e+02 -3.7862044e+03 - 4.0030650e+03 -3.4584176e+02 -3.7837255e+03 - 4.0117555e+03 -2.8774384e+02 -3.7816132e+03 - 4.0188447e+03 -2.2989473e+02 -3.7798748e+03 - 4.0243454e+03 -1.7224548e+02 -3.7785165e+03 - 4.0282674e+03 -1.1474659e+02 -3.7775430e+03 - 4.0306177e+03 -5.7348150e+01 -3.7769575e+03 - 4.0314007e+03 -4.8134273e-09 -3.7767622e+03 - 3.9829820e+03 0.0000000e+00 -3.8189442e+03 - 3.9822019e+03 5.7280737e+01 -3.8191300e+03 - 3.9798604e+03 1.1460935e+02 -3.8196869e+03 - 3.9759535e+03 1.7203357e+02 -3.8206129e+03 - 3.9704745e+03 2.2960086e+02 -3.8219048e+03 - 3.9634142e+03 2.8735823e+02 -3.8235578e+03 - 3.9547611e+03 3.4535212e+02 -3.8255660e+03 - 3.9445008e+03 4.0362818e+02 -3.8279220e+03 - 3.9326170e+03 4.6223110e+02 -3.8306169e+03 - 3.9190910e+03 5.2120440e+02 -3.8336404e+03 - 3.9039021e+03 5.8059017e+02 -3.8369807e+03 - 3.8870278e+03 6.4042884e+02 -3.8406241e+03 - 3.8684441e+03 7.0075882e+02 -3.8445557e+03 - 3.8481255e+03 7.6161623e+02 -3.8487586e+03 - 3.8260455e+03 8.2303450e+02 -3.8532141e+03 - 3.8021771e+03 8.8504401e+02 -3.8579019e+03 - 3.7764929e+03 9.4767159e+02 -3.8627997e+03 - 3.7489656e+03 1.0109401e+03 -3.8678835e+03 - 3.7195688e+03 1.0748680e+03 -3.8731272e+03 - 3.6882772e+03 1.1394687e+03 -3.8785029e+03 - 3.6550674e+03 1.2047500e+03 -3.8839810e+03 - 3.6199186e+03 1.2707137e+03 -3.8895300e+03 - 3.5828130e+03 1.3373550e+03 -3.8951167e+03 - 3.5437368e+03 1.4046616e+03 -3.9007063e+03 - 3.5026812e+03 1.4726139e+03 -3.9062628e+03 - 3.4596424e+03 1.5411837e+03 -3.9117488e+03 - 3.4146233e+03 1.6103345e+03 -3.9171261e+03 - 3.3676335e+03 1.6800205e+03 -3.9223559e+03 - 3.3186905e+03 1.7501870e+03 -3.9273989e+03 - 3.2678202e+03 1.8207697e+03 -3.9322163e+03 - 3.2150574e+03 1.8916950e+03 -3.9367694e+03 - 3.1604461e+03 1.9628804e+03 -3.9410209e+03 - 3.1040405e+03 2.0342342e+03 -3.9449347e+03 - 3.0459042e+03 2.1056567e+03 -3.9484769e+03 - 2.9861109e+03 2.1770405e+03 -3.9516161e+03 - 2.9247438e+03 2.2482716e+03 -3.9543238e+03 - 2.8618953e+03 2.3192301e+03 -3.9565749e+03 - 2.7976664e+03 2.3897919e+03 -3.9583484e+03 - 2.7321658e+03 2.4598296e+03 -3.9596275e+03 - 2.6655089e+03 2.5292143e+03 -3.9603999e+03 - 2.5978167e+03 2.5978167e+03 -3.9606582e+03 - 2.5292143e+03 2.6655089e+03 -3.9603999e+03 - 2.4598296e+03 2.7321658e+03 -3.9596275e+03 - 2.3897919e+03 2.7976664e+03 -3.9583484e+03 - 2.3192301e+03 2.8618953e+03 -3.9565749e+03 - 2.2482716e+03 2.9247438e+03 -3.9543238e+03 - 2.1770405e+03 2.9861109e+03 -3.9516161e+03 - 2.1056567e+03 3.0459042e+03 -3.9484769e+03 - 2.0342342e+03 3.1040405e+03 -3.9449347e+03 - 1.9628804e+03 3.1604461e+03 -3.9410209e+03 - 1.8916950e+03 3.2150574e+03 -3.9367694e+03 - 1.8207697e+03 3.2678202e+03 -3.9322163e+03 - 1.7501870e+03 3.3186905e+03 -3.9273989e+03 - 1.6800205e+03 3.3676335e+03 -3.9223559e+03 - 1.6103345e+03 3.4146233e+03 -3.9171261e+03 - 1.5411837e+03 3.4596424e+03 -3.9117488e+03 - 1.4726139e+03 3.5026812e+03 -3.9062628e+03 - 1.4046616e+03 3.5437368e+03 -3.9007063e+03 - 1.3373550e+03 3.5828130e+03 -3.8951167e+03 - 1.2707137e+03 3.6199186e+03 -3.8895300e+03 - 1.2047500e+03 3.6550674e+03 -3.8839810e+03 - 1.1394687e+03 3.6882772e+03 -3.8785029e+03 - 1.0748680e+03 3.7195688e+03 -3.8731272e+03 - 1.0109401e+03 3.7489656e+03 -3.8678835e+03 - 9.4767159e+02 3.7764929e+03 -3.8627997e+03 - 8.8504401e+02 3.8021771e+03 -3.8579019e+03 - 8.2303450e+02 3.8260455e+03 -3.8532141e+03 - 7.6161623e+02 3.8481255e+03 -3.8487586e+03 - 7.0075882e+02 3.8684441e+03 -3.8445557e+03 - 6.4042884e+02 3.8870278e+03 -3.8406241e+03 - 5.8059017e+02 3.9039021e+03 -3.8369807e+03 - 5.2120440e+02 3.9190910e+03 -3.8336404e+03 - 4.6223110e+02 3.9326170e+03 -3.8306169e+03 - 4.0362818e+02 3.9445008e+03 -3.8279220e+03 - 3.4535212e+02 3.9547611e+03 -3.8255660e+03 - 2.8735823e+02 3.9634142e+03 -3.8235578e+03 - 2.2960086e+02 3.9704745e+03 -3.8219048e+03 - 1.7203357e+02 3.9759535e+03 -3.8206129e+03 - 1.1460935e+02 3.9798604e+03 -3.8196869e+03 - 5.7280737e+01 3.9822019e+03 -3.8191300e+03 - -4.8134273e-09 3.9829820e+03 -3.8189442e+03 - -5.7280737e+01 3.9822019e+03 -3.8191300e+03 - -1.1460935e+02 3.9798604e+03 -3.8196869e+03 - -1.7203357e+02 3.9759535e+03 -3.8206129e+03 - -2.2960086e+02 3.9704745e+03 -3.8219048e+03 - -2.8735823e+02 3.9634142e+03 -3.8235578e+03 - -3.4535212e+02 3.9547611e+03 -3.8255660e+03 - -4.0362818e+02 3.9445008e+03 -3.8279220e+03 - -4.6223110e+02 3.9326170e+03 -3.8306169e+03 - -5.2120440e+02 3.9190910e+03 -3.8336404e+03 - -5.8059017e+02 3.9039021e+03 -3.8369807e+03 - -6.4042884e+02 3.8870278e+03 -3.8406241e+03 - -7.0075882e+02 3.8684441e+03 -3.8445557e+03 - -7.6161623e+02 3.8481255e+03 -3.8487586e+03 - -8.2303450e+02 3.8260455e+03 -3.8532141e+03 - -8.8504401e+02 3.8021771e+03 -3.8579019e+03 - -9.4767159e+02 3.7764929e+03 -3.8627997e+03 - -1.0109401e+03 3.7489656e+03 -3.8678835e+03 - -1.0748680e+03 3.7195688e+03 -3.8731272e+03 - -1.1394687e+03 3.6882772e+03 -3.8785029e+03 - -1.2047500e+03 3.6550674e+03 -3.8839810e+03 - -1.2707137e+03 3.6199186e+03 -3.8895300e+03 - -1.3373550e+03 3.5828130e+03 -3.8951167e+03 - -1.4046616e+03 3.5437368e+03 -3.9007063e+03 - -1.4726139e+03 3.5026812e+03 -3.9062628e+03 - -1.5411837e+03 3.4596424e+03 -3.9117488e+03 - -1.6103345e+03 3.4146233e+03 -3.9171261e+03 - -1.6800205e+03 3.3676335e+03 -3.9223559e+03 - -1.7501870e+03 3.3186905e+03 -3.9273989e+03 - -1.8207697e+03 3.2678202e+03 -3.9322163e+03 - -1.8916950e+03 3.2150574e+03 -3.9367694e+03 - -1.9628804e+03 3.1604461e+03 -3.9410209e+03 - -2.0342342e+03 3.1040405e+03 -3.9449347e+03 - -2.1056567e+03 3.0459042e+03 -3.9484769e+03 - -2.1770405e+03 2.9861109e+03 -3.9516161e+03 - -2.2482716e+03 2.9247438e+03 -3.9543238e+03 - -2.3192301e+03 2.8618953e+03 -3.9565749e+03 - -2.3897919e+03 2.7976664e+03 -3.9583484e+03 - -2.4598296e+03 2.7321658e+03 -3.9596275e+03 - -2.5292143e+03 2.6655089e+03 -3.9603999e+03 - -2.5978167e+03 2.5978167e+03 -3.9606582e+03 - -2.6655089e+03 2.5292143e+03 -3.9603999e+03 - -2.7321658e+03 2.4598296e+03 -3.9596275e+03 - -2.7976664e+03 2.3897919e+03 -3.9583484e+03 - -2.8618953e+03 2.3192301e+03 -3.9565749e+03 - -2.9247438e+03 2.2482716e+03 -3.9543238e+03 - -2.9861109e+03 2.1770405e+03 -3.9516161e+03 - -3.0459042e+03 2.1056567e+03 -3.9484769e+03 - -3.1040405e+03 2.0342342e+03 -3.9449347e+03 - -3.1604461e+03 1.9628804e+03 -3.9410209e+03 - -3.2150574e+03 1.8916950e+03 -3.9367694e+03 - -3.2678202e+03 1.8207697e+03 -3.9322163e+03 - -3.3186905e+03 1.7501870e+03 -3.9273989e+03 - -3.3676335e+03 1.6800205e+03 -3.9223559e+03 - -3.4146233e+03 1.6103345e+03 -3.9171261e+03 - -3.4596424e+03 1.5411837e+03 -3.9117488e+03 - -3.5026812e+03 1.4726139e+03 -3.9062628e+03 - -3.5437368e+03 1.4046616e+03 -3.9007063e+03 - -3.5828130e+03 1.3373550e+03 -3.8951167e+03 - -3.6199186e+03 1.2707137e+03 -3.8895300e+03 - -3.6550674e+03 1.2047500e+03 -3.8839810e+03 - -3.6882772e+03 1.1394687e+03 -3.8785029e+03 - -3.7195688e+03 1.0748680e+03 -3.8731272e+03 - -3.7489656e+03 1.0109401e+03 -3.8678835e+03 - -3.7764929e+03 9.4767159e+02 -3.8627997e+03 - -3.8021771e+03 8.8504401e+02 -3.8579019e+03 - -3.8260455e+03 8.2303450e+02 -3.8532141e+03 - -3.8481255e+03 7.6161623e+02 -3.8487586e+03 - -3.8684441e+03 7.0075882e+02 -3.8445557e+03 - -3.8870278e+03 6.4042884e+02 -3.8406241e+03 - -3.9039021e+03 5.8059017e+02 -3.8369807e+03 - -3.9190910e+03 5.2120440e+02 -3.8336404e+03 - -3.9326170e+03 4.6223110e+02 -3.8306169e+03 - -3.9445008e+03 4.0362818e+02 -3.8279220e+03 - -3.9547611e+03 3.4535212e+02 -3.8255660e+03 - -3.9634142e+03 2.8735823e+02 -3.8235578e+03 - -3.9704745e+03 2.2960086e+02 -3.8219048e+03 - -3.9759535e+03 1.7203357e+02 -3.8206129e+03 - -3.9798604e+03 1.1460935e+02 -3.8196869e+03 - -3.9822019e+03 5.7280737e+01 -3.8191300e+03 - -3.9829820e+03 4.8134273e-09 -3.8189442e+03 - -3.9822019e+03 -5.7280737e+01 -3.8191300e+03 - -3.9798604e+03 -1.1460935e+02 -3.8196869e+03 - -3.9759535e+03 -1.7203357e+02 -3.8206129e+03 - -3.9704745e+03 -2.2960086e+02 -3.8219048e+03 - -3.9634142e+03 -2.8735823e+02 -3.8235578e+03 - -3.9547611e+03 -3.4535212e+02 -3.8255660e+03 - -3.9445008e+03 -4.0362818e+02 -3.8279220e+03 - -3.9326170e+03 -4.6223110e+02 -3.8306169e+03 - -3.9190910e+03 -5.2120440e+02 -3.8336404e+03 - -3.9039021e+03 -5.8059017e+02 -3.8369807e+03 - -3.8870278e+03 -6.4042884e+02 -3.8406241e+03 - -3.8684441e+03 -7.0075882e+02 -3.8445557e+03 - -3.8481255e+03 -7.6161623e+02 -3.8487586e+03 - -3.8260455e+03 -8.2303450e+02 -3.8532141e+03 - -3.8021771e+03 -8.8504401e+02 -3.8579019e+03 - -3.7764929e+03 -9.4767159e+02 -3.8627997e+03 - -3.7489656e+03 -1.0109401e+03 -3.8678835e+03 - -3.7195688e+03 -1.0748680e+03 -3.8731272e+03 - -3.6882772e+03 -1.1394687e+03 -3.8785029e+03 - -3.6550674e+03 -1.2047500e+03 -3.8839810e+03 - -3.6199186e+03 -1.2707137e+03 -3.8895300e+03 - -3.5828130e+03 -1.3373550e+03 -3.8951167e+03 - -3.5437368e+03 -1.4046616e+03 -3.9007063e+03 - -3.5026812e+03 -1.4726139e+03 -3.9062628e+03 - -3.4596424e+03 -1.5411837e+03 -3.9117488e+03 - -3.4146233e+03 -1.6103345e+03 -3.9171261e+03 - -3.3676335e+03 -1.6800205e+03 -3.9223559e+03 - -3.3186905e+03 -1.7501870e+03 -3.9273989e+03 - -3.2678202e+03 -1.8207697e+03 -3.9322163e+03 - -3.2150574e+03 -1.8916950e+03 -3.9367694e+03 - -3.1604461e+03 -1.9628804e+03 -3.9410209e+03 - -3.1040405e+03 -2.0342342e+03 -3.9449347e+03 - -3.0459042e+03 -2.1056567e+03 -3.9484769e+03 - -2.9861109e+03 -2.1770405e+03 -3.9516161e+03 - -2.9247438e+03 -2.2482716e+03 -3.9543238e+03 - -2.8618953e+03 -2.3192301e+03 -3.9565749e+03 - -2.7976664e+03 -2.3897919e+03 -3.9583484e+03 - -2.7321658e+03 -2.4598296e+03 -3.9596275e+03 - -2.6655089e+03 -2.5292143e+03 -3.9603999e+03 - -2.5978167e+03 -2.5978167e+03 -3.9606582e+03 - -2.5292143e+03 -2.6655089e+03 -3.9603999e+03 - -2.4598296e+03 -2.7321658e+03 -3.9596275e+03 - -2.3897919e+03 -2.7976664e+03 -3.9583484e+03 - -2.3192301e+03 -2.8618953e+03 -3.9565749e+03 - -2.2482716e+03 -2.9247438e+03 -3.9543238e+03 - -2.1770405e+03 -2.9861109e+03 -3.9516161e+03 - -2.1056567e+03 -3.0459042e+03 -3.9484769e+03 - -2.0342342e+03 -3.1040405e+03 -3.9449347e+03 - -1.9628804e+03 -3.1604461e+03 -3.9410209e+03 - -1.8916950e+03 -3.2150574e+03 -3.9367694e+03 - -1.8207697e+03 -3.2678202e+03 -3.9322163e+03 - -1.7501870e+03 -3.3186905e+03 -3.9273989e+03 - -1.6800205e+03 -3.3676335e+03 -3.9223559e+03 - -1.6103345e+03 -3.4146233e+03 -3.9171261e+03 - -1.5411837e+03 -3.4596424e+03 -3.9117488e+03 - -1.4726139e+03 -3.5026812e+03 -3.9062628e+03 - -1.4046616e+03 -3.5437368e+03 -3.9007063e+03 - -1.3373550e+03 -3.5828130e+03 -3.8951167e+03 - -1.2707137e+03 -3.6199186e+03 -3.8895300e+03 - -1.2047500e+03 -3.6550674e+03 -3.8839810e+03 - -1.1394687e+03 -3.6882772e+03 -3.8785029e+03 - -1.0748680e+03 -3.7195688e+03 -3.8731272e+03 - -1.0109401e+03 -3.7489656e+03 -3.8678835e+03 - -9.4767159e+02 -3.7764929e+03 -3.8627997e+03 - -8.8504401e+02 -3.8021771e+03 -3.8579019e+03 - -8.2303450e+02 -3.8260455e+03 -3.8532141e+03 - -7.6161623e+02 -3.8481255e+03 -3.8487586e+03 - -7.0075882e+02 -3.8684441e+03 -3.8445557e+03 - -6.4042884e+02 -3.8870278e+03 -3.8406241e+03 - -5.8059017e+02 -3.9039021e+03 -3.8369807e+03 - -5.2120440e+02 -3.9190910e+03 -3.8336404e+03 - -4.6223110e+02 -3.9326170e+03 -3.8306169e+03 - -4.0362818e+02 -3.9445008e+03 -3.8279220e+03 - -3.4535212e+02 -3.9547611e+03 -3.8255660e+03 - -2.8735823e+02 -3.9634142e+03 -3.8235578e+03 - -2.2960086e+02 -3.9704745e+03 -3.8219048e+03 - -1.7203357e+02 -3.9759535e+03 -3.8206129e+03 - -1.1460935e+02 -3.9798604e+03 -3.8196869e+03 - -5.7280737e+01 -3.9822019e+03 -3.8191300e+03 - 0.0000000e+00 -3.9829820e+03 -3.8189442e+03 - 5.7280737e+01 -3.9822019e+03 -3.8191300e+03 - 1.1460935e+02 -3.9798604e+03 -3.8196869e+03 - 1.7203357e+02 -3.9759535e+03 -3.8206129e+03 - 2.2960086e+02 -3.9704745e+03 -3.8219048e+03 - 2.8735823e+02 -3.9634142e+03 -3.8235578e+03 - 3.4535212e+02 -3.9547611e+03 -3.8255660e+03 - 4.0362818e+02 -3.9445008e+03 -3.8279220e+03 - 4.6223110e+02 -3.9326170e+03 -3.8306169e+03 - 5.2120440e+02 -3.9190910e+03 -3.8336404e+03 - 5.8059017e+02 -3.9039021e+03 -3.8369807e+03 - 6.4042884e+02 -3.8870278e+03 -3.8406241e+03 - 7.0075882e+02 -3.8684441e+03 -3.8445557e+03 - 7.6161623e+02 -3.8481255e+03 -3.8487586e+03 - 8.2303450e+02 -3.8260455e+03 -3.8532141e+03 - 8.8504401e+02 -3.8021771e+03 -3.8579019e+03 - 9.4767159e+02 -3.7764929e+03 -3.8627997e+03 - 1.0109401e+03 -3.7489656e+03 -3.8678835e+03 - 1.0748680e+03 -3.7195688e+03 -3.8731272e+03 - 1.1394687e+03 -3.6882772e+03 -3.8785029e+03 - 1.2047500e+03 -3.6550674e+03 -3.8839810e+03 - 1.2707137e+03 -3.6199186e+03 -3.8895300e+03 - 1.3373550e+03 -3.5828130e+03 -3.8951167e+03 - 1.4046616e+03 -3.5437368e+03 -3.9007063e+03 - 1.4726139e+03 -3.5026812e+03 -3.9062628e+03 - 1.5411837e+03 -3.4596424e+03 -3.9117488e+03 - 1.6103345e+03 -3.4146233e+03 -3.9171261e+03 - 1.6800205e+03 -3.3676335e+03 -3.9223559e+03 - 1.7501870e+03 -3.3186905e+03 -3.9273989e+03 - 1.8207697e+03 -3.2678202e+03 -3.9322163e+03 - 1.8916950e+03 -3.2150574e+03 -3.9367694e+03 - 1.9628804e+03 -3.1604461e+03 -3.9410209e+03 - 2.0342342e+03 -3.1040405e+03 -3.9449347e+03 - 2.1056567e+03 -3.0459042e+03 -3.9484769e+03 - 2.1770405e+03 -2.9861109e+03 -3.9516161e+03 - 2.2482716e+03 -2.9247438e+03 -3.9543238e+03 - 2.3192301e+03 -2.8618953e+03 -3.9565749e+03 - 2.3897919e+03 -2.7976664e+03 -3.9583484e+03 - 2.4598296e+03 -2.7321658e+03 -3.9596275e+03 - 2.5292143e+03 -2.6655089e+03 -3.9603999e+03 - 2.5978167e+03 -2.5978167e+03 -3.9606582e+03 - 2.6655089e+03 -2.5292143e+03 -3.9603999e+03 - 2.7321658e+03 -2.4598296e+03 -3.9596275e+03 - 2.7976664e+03 -2.3897919e+03 -3.9583484e+03 - 2.8618953e+03 -2.3192301e+03 -3.9565749e+03 - 2.9247438e+03 -2.2482716e+03 -3.9543238e+03 - 2.9861109e+03 -2.1770405e+03 -3.9516161e+03 - 3.0459042e+03 -2.1056567e+03 -3.9484769e+03 - 3.1040405e+03 -2.0342342e+03 -3.9449347e+03 - 3.1604461e+03 -1.9628804e+03 -3.9410209e+03 - 3.2150574e+03 -1.8916950e+03 -3.9367694e+03 - 3.2678202e+03 -1.8207697e+03 -3.9322163e+03 - 3.3186905e+03 -1.7501870e+03 -3.9273989e+03 - 3.3676335e+03 -1.6800205e+03 -3.9223559e+03 - 3.4146233e+03 -1.6103345e+03 -3.9171261e+03 - 3.4596424e+03 -1.5411837e+03 -3.9117488e+03 - 3.5026812e+03 -1.4726139e+03 -3.9062628e+03 - 3.5437368e+03 -1.4046616e+03 -3.9007063e+03 - 3.5828130e+03 -1.3373550e+03 -3.8951167e+03 - 3.6199186e+03 -1.2707137e+03 -3.8895300e+03 - 3.6550674e+03 -1.2047500e+03 -3.8839810e+03 - 3.6882772e+03 -1.1394687e+03 -3.8785029e+03 - 3.7195688e+03 -1.0748680e+03 -3.8731272e+03 - 3.7489656e+03 -1.0109401e+03 -3.8678835e+03 - 3.7764929e+03 -9.4767159e+02 -3.8627997e+03 - 3.8021771e+03 -8.8504401e+02 -3.8579019e+03 - 3.8260455e+03 -8.2303450e+02 -3.8532141e+03 - 3.8481255e+03 -7.6161623e+02 -3.8487586e+03 - 3.8684441e+03 -7.0075882e+02 -3.8445557e+03 - 3.8870278e+03 -6.4042884e+02 -3.8406241e+03 - 3.9039021e+03 -5.8059017e+02 -3.8369807e+03 - 3.9190910e+03 -5.2120440e+02 -3.8336404e+03 - 3.9326170e+03 -4.6223110e+02 -3.8306169e+03 - 3.9445008e+03 -4.0362818e+02 -3.8279220e+03 - 3.9547611e+03 -3.4535212e+02 -3.8255660e+03 - 3.9634142e+03 -2.8735823e+02 -3.8235578e+03 - 3.9704745e+03 -2.2960086e+02 -3.8219048e+03 - 3.9759535e+03 -1.7203357e+02 -3.8206129e+03 - 3.9798604e+03 -1.1460935e+02 -3.8196869e+03 - 3.9822019e+03 -5.7280737e+01 -3.8191300e+03 - 3.9829820e+03 -9.6268545e-09 -3.8189442e+03 - 3.9334887e+03 4.8134273e-09 -3.8603812e+03 - 3.9327122e+03 5.7187916e+01 -3.8605576e+03 - 3.9303813e+03 1.1442124e+02 -3.8610864e+03 - 3.9264923e+03 1.7174524e+02 -3.8619655e+03 - 3.9210392e+03 2.2920487e+02 -3.8631917e+03 - 3.9140133e+03 2.8684462e+02 -3.8647605e+03 - 3.9054039e+03 3.4470837e+02 -3.8666660e+03 - 3.8951978e+03 4.0283916e+02 -3.8689009e+03 - 3.8833799e+03 4.6127904e+02 -3.8714566e+03 - 3.8699329e+03 5.2006882e+02 -3.8743230e+03 - 3.8548379e+03 5.7924784e+02 -3.8774884e+03 - 3.8380742e+03 6.3885370e+02 -3.8809397e+03 - 3.8196198e+03 6.9892196e+02 -3.8846623e+03 - 3.7994514e+03 7.5948586e+02 -3.8886398e+03 - 3.7775450e+03 8.2057591e+02 -3.8928541e+03 - 3.7538763e+03 8.8221956e+02 -3.8972858e+03 - 3.7284205e+03 9.4444075e+02 -3.9019132e+03 - 3.7011534e+03 1.0072595e+03 -3.9067133e+03 - 3.6720515e+03 1.0706915e+03 -3.9116612e+03 - 3.6410926e+03 1.1347474e+03 -3.9167304e+03 - 3.6082567e+03 1.1994326e+03 -3.9218925e+03 - 3.5735259e+03 1.2647467e+03 -3.9271177e+03 - 3.5368858e+03 1.3306828e+03 -3.9323746e+03 - 3.4983256e+03 1.3972271e+03 -3.9376305e+03 - 3.4578391e+03 1.4643587e+03 -3.9428514e+03 - 3.4154255e+03 1.5320487e+03 -3.9480023e+03 - 3.3710897e+03 1.6002603e+03 -3.9530475e+03 - 3.3248433e+03 1.6689481e+03 -3.9579507e+03 - 3.2767053e+03 1.7380585e+03 -3.9626756e+03 - 3.2267024e+03 1.8075289e+03 -3.9671859e+03 - 3.1748695e+03 1.8772883e+03 -3.9714462e+03 - 3.1212503e+03 1.9472573e+03 -3.9754217e+03 - 3.0658975e+03 2.0173485e+03 -3.9790795e+03 - 3.0088727e+03 2.0874667e+03 -3.9823882e+03 - 2.9502467e+03 2.1575102e+03 -3.9853190e+03 - 2.8900990e+03 2.2273709e+03 -3.9878459e+03 - 2.8285174e+03 2.2969359e+03 -3.9899461e+03 - 2.7655975e+03 2.3660881e+03 -3.9916001e+03 - 2.7014420e+03 2.4347078e+03 -3.9927928e+03 - 2.6361597e+03 2.5026737e+03 -3.9935130e+03 - 2.5698644e+03 2.5698644e+03 -3.9937538e+03 - 2.5026737e+03 2.6361597e+03 -3.9935130e+03 - 2.4347078e+03 2.7014420e+03 -3.9927928e+03 - 2.3660881e+03 2.7655975e+03 -3.9916001e+03 - 2.2969359e+03 2.8285174e+03 -3.9899461e+03 - 2.2273709e+03 2.8900990e+03 -3.9878459e+03 - 2.1575102e+03 2.9502467e+03 -3.9853190e+03 - 2.0874667e+03 3.0088727e+03 -3.9823882e+03 - 2.0173485e+03 3.0658975e+03 -3.9790795e+03 - 1.9472573e+03 3.1212503e+03 -3.9754217e+03 - 1.8772883e+03 3.1748695e+03 -3.9714462e+03 - 1.8075289e+03 3.2267024e+03 -3.9671859e+03 - 1.7380585e+03 3.2767053e+03 -3.9626756e+03 - 1.6689481e+03 3.3248433e+03 -3.9579507e+03 - 1.6002603e+03 3.3710897e+03 -3.9530475e+03 - 1.5320487e+03 3.4154255e+03 -3.9480023e+03 - 1.4643587e+03 3.4578391e+03 -3.9428514e+03 - 1.3972271e+03 3.4983256e+03 -3.9376305e+03 - 1.3306828e+03 3.5368858e+03 -3.9323746e+03 - 1.2647467e+03 3.5735259e+03 -3.9271177e+03 - 1.1994326e+03 3.6082567e+03 -3.9218925e+03 - 1.1347474e+03 3.6410926e+03 -3.9167304e+03 - 1.0706915e+03 3.6720515e+03 -3.9116612e+03 - 1.0072595e+03 3.7011534e+03 -3.9067133e+03 - 9.4444075e+02 3.7284205e+03 -3.9019132e+03 - 8.8221956e+02 3.7538763e+03 -3.8972858e+03 - 8.2057591e+02 3.7775450e+03 -3.8928541e+03 - 7.5948586e+02 3.7994514e+03 -3.8886398e+03 - 6.9892196e+02 3.8196198e+03 -3.8846623e+03 - 6.3885370e+02 3.8380742e+03 -3.8809397e+03 - 5.7924784e+02 3.8548379e+03 -3.8774884e+03 - 5.2006882e+02 3.8699329e+03 -3.8743230e+03 - 4.6127904e+02 3.8833799e+03 -3.8714566e+03 - 4.0283916e+02 3.8951978e+03 -3.8689009e+03 - 3.4470837e+02 3.9054039e+03 -3.8666660e+03 - 2.8684462e+02 3.9140133e+03 -3.8647605e+03 - 2.2920487e+02 3.9210392e+03 -3.8631917e+03 - 1.7174524e+02 3.9264923e+03 -3.8619655e+03 - 1.1442124e+02 3.9303813e+03 -3.8610864e+03 - 5.7187916e+01 3.9327122e+03 -3.8605576e+03 - 4.8134273e-09 3.9334887e+03 -3.8603812e+03 - -5.7187916e+01 3.9327122e+03 -3.8605576e+03 - -1.1442124e+02 3.9303813e+03 -3.8610864e+03 - -1.7174524e+02 3.9264923e+03 -3.8619655e+03 - -2.2920487e+02 3.9210392e+03 -3.8631917e+03 - -2.8684462e+02 3.9140133e+03 -3.8647605e+03 - -3.4470837e+02 3.9054039e+03 -3.8666660e+03 - -4.0283916e+02 3.8951978e+03 -3.8689009e+03 - -4.6127904e+02 3.8833799e+03 -3.8714566e+03 - -5.2006882e+02 3.8699329e+03 -3.8743230e+03 - -5.7924784e+02 3.8548379e+03 -3.8774884e+03 - -6.3885370e+02 3.8380742e+03 -3.8809397e+03 - -6.9892196e+02 3.8196198e+03 -3.8846623e+03 - -7.5948586e+02 3.7994514e+03 -3.8886398e+03 - -8.2057591e+02 3.7775450e+03 -3.8928541e+03 - -8.8221956e+02 3.7538763e+03 -3.8972858e+03 - -9.4444075e+02 3.7284205e+03 -3.9019132e+03 - -1.0072595e+03 3.7011534e+03 -3.9067133e+03 - -1.0706915e+03 3.6720515e+03 -3.9116612e+03 - -1.1347474e+03 3.6410926e+03 -3.9167304e+03 - -1.1994326e+03 3.6082567e+03 -3.9218925e+03 - -1.2647467e+03 3.5735259e+03 -3.9271177e+03 - -1.3306828e+03 3.5368858e+03 -3.9323746e+03 - -1.3972271e+03 3.4983256e+03 -3.9376305e+03 - -1.4643587e+03 3.4578391e+03 -3.9428514e+03 - -1.5320487e+03 3.4154255e+03 -3.9480023e+03 - -1.6002603e+03 3.3710897e+03 -3.9530475e+03 - -1.6689481e+03 3.3248433e+03 -3.9579507e+03 - -1.7380585e+03 3.2767053e+03 -3.9626756e+03 - -1.8075289e+03 3.2267024e+03 -3.9671859e+03 - -1.8772883e+03 3.1748695e+03 -3.9714462e+03 - -1.9472573e+03 3.1212503e+03 -3.9754217e+03 - -2.0173485e+03 3.0658975e+03 -3.9790795e+03 - -2.0874667e+03 3.0088727e+03 -3.9823882e+03 - -2.1575102e+03 2.9502467e+03 -3.9853190e+03 - -2.2273709e+03 2.8900990e+03 -3.9878459e+03 - -2.2969359e+03 2.8285174e+03 -3.9899461e+03 - -2.3660881e+03 2.7655975e+03 -3.9916001e+03 - -2.4347078e+03 2.7014420e+03 -3.9927928e+03 - -2.5026737e+03 2.6361597e+03 -3.9935130e+03 - -2.5698644e+03 2.5698644e+03 -3.9937538e+03 - -2.6361597e+03 2.5026737e+03 -3.9935130e+03 - -2.7014420e+03 2.4347078e+03 -3.9927928e+03 - -2.7655975e+03 2.3660881e+03 -3.9916001e+03 - -2.8285174e+03 2.2969359e+03 -3.9899461e+03 - -2.8900990e+03 2.2273709e+03 -3.9878459e+03 - -2.9502467e+03 2.1575102e+03 -3.9853190e+03 - -3.0088727e+03 2.0874667e+03 -3.9823882e+03 - -3.0658975e+03 2.0173485e+03 -3.9790795e+03 - -3.1212503e+03 1.9472573e+03 -3.9754217e+03 - -3.1748695e+03 1.8772883e+03 -3.9714462e+03 - -3.2267024e+03 1.8075289e+03 -3.9671859e+03 - -3.2767053e+03 1.7380585e+03 -3.9626756e+03 - -3.3248433e+03 1.6689481e+03 -3.9579507e+03 - -3.3710897e+03 1.6002603e+03 -3.9530475e+03 - -3.4154255e+03 1.5320487e+03 -3.9480023e+03 - -3.4578391e+03 1.4643587e+03 -3.9428514e+03 - -3.4983256e+03 1.3972271e+03 -3.9376305e+03 - -3.5368858e+03 1.3306828e+03 -3.9323746e+03 - -3.5735259e+03 1.2647467e+03 -3.9271177e+03 - -3.6082567e+03 1.1994326e+03 -3.9218925e+03 - -3.6410926e+03 1.1347474e+03 -3.9167304e+03 - -3.6720515e+03 1.0706915e+03 -3.9116612e+03 - -3.7011534e+03 1.0072595e+03 -3.9067133e+03 - -3.7284205e+03 9.4444075e+02 -3.9019132e+03 - -3.7538763e+03 8.8221956e+02 -3.8972858e+03 - -3.7775450e+03 8.2057591e+02 -3.8928541e+03 - -3.7994514e+03 7.5948586e+02 -3.8886398e+03 - -3.8196198e+03 6.9892196e+02 -3.8846623e+03 - -3.8380742e+03 6.3885370e+02 -3.8809397e+03 - -3.8548379e+03 5.7924784e+02 -3.8774884e+03 - -3.8699329e+03 5.2006882e+02 -3.8743230e+03 - -3.8833799e+03 4.6127904e+02 -3.8714566e+03 - -3.8951978e+03 4.0283916e+02 -3.8689009e+03 - -3.9054039e+03 3.4470837e+02 -3.8666660e+03 - -3.9140133e+03 2.8684462e+02 -3.8647605e+03 - -3.9210392e+03 2.2920487e+02 -3.8631917e+03 - -3.9264923e+03 1.7174524e+02 -3.8619655e+03 - -3.9303813e+03 1.1442124e+02 -3.8610864e+03 - -3.9327122e+03 5.7187916e+01 -3.8605576e+03 - -3.9334887e+03 4.8134273e-09 -3.8603812e+03 - -3.9327122e+03 -5.7187916e+01 -3.8605576e+03 - -3.9303813e+03 -1.1442124e+02 -3.8610864e+03 - -3.9264923e+03 -1.7174524e+02 -3.8619655e+03 - -3.9210392e+03 -2.2920487e+02 -3.8631917e+03 - -3.9140133e+03 -2.8684462e+02 -3.8647605e+03 - -3.9054039e+03 -3.4470837e+02 -3.8666660e+03 - -3.8951978e+03 -4.0283916e+02 -3.8689009e+03 - -3.8833799e+03 -4.6127904e+02 -3.8714566e+03 - -3.8699329e+03 -5.2006882e+02 -3.8743230e+03 - -3.8548379e+03 -5.7924784e+02 -3.8774884e+03 - -3.8380742e+03 -6.3885370e+02 -3.8809397e+03 - -3.8196198e+03 -6.9892196e+02 -3.8846623e+03 - -3.7994514e+03 -7.5948586e+02 -3.8886398e+03 - -3.7775450e+03 -8.2057591e+02 -3.8928541e+03 - -3.7538763e+03 -8.8221956e+02 -3.8972858e+03 - -3.7284205e+03 -9.4444075e+02 -3.9019132e+03 - -3.7011534e+03 -1.0072595e+03 -3.9067133e+03 - -3.6720515e+03 -1.0706915e+03 -3.9116612e+03 - -3.6410926e+03 -1.1347474e+03 -3.9167304e+03 - -3.6082567e+03 -1.1994326e+03 -3.9218925e+03 - -3.5735259e+03 -1.2647467e+03 -3.9271177e+03 - -3.5368858e+03 -1.3306828e+03 -3.9323746e+03 - -3.4983256e+03 -1.3972271e+03 -3.9376305e+03 - -3.4578391e+03 -1.4643587e+03 -3.9428514e+03 - -3.4154255e+03 -1.5320487e+03 -3.9480023e+03 - -3.3710897e+03 -1.6002603e+03 -3.9530475e+03 - -3.3248433e+03 -1.6689481e+03 -3.9579507e+03 - -3.2767053e+03 -1.7380585e+03 -3.9626756e+03 - -3.2267024e+03 -1.8075289e+03 -3.9671859e+03 - -3.1748695e+03 -1.8772883e+03 -3.9714462e+03 - -3.1212503e+03 -1.9472573e+03 -3.9754217e+03 - -3.0658975e+03 -2.0173485e+03 -3.9790795e+03 - -3.0088727e+03 -2.0874667e+03 -3.9823882e+03 - -2.9502467e+03 -2.1575102e+03 -3.9853190e+03 - -2.8900990e+03 -2.2273709e+03 -3.9878459e+03 - -2.8285174e+03 -2.2969359e+03 -3.9899461e+03 - -2.7655975e+03 -2.3660881e+03 -3.9916001e+03 - -2.7014420e+03 -2.4347078e+03 -3.9927928e+03 - -2.6361597e+03 -2.5026737e+03 -3.9935130e+03 - -2.5698644e+03 -2.5698644e+03 -3.9937538e+03 - -2.5026737e+03 -2.6361597e+03 -3.9935130e+03 - -2.4347078e+03 -2.7014420e+03 -3.9927928e+03 - -2.3660881e+03 -2.7655975e+03 -3.9916001e+03 - -2.2969359e+03 -2.8285174e+03 -3.9899461e+03 - -2.2273709e+03 -2.8900990e+03 -3.9878459e+03 - -2.1575102e+03 -2.9502467e+03 -3.9853190e+03 - -2.0874667e+03 -3.0088727e+03 -3.9823882e+03 - -2.0173485e+03 -3.0658975e+03 -3.9790795e+03 - -1.9472573e+03 -3.1212503e+03 -3.9754217e+03 - -1.8772883e+03 -3.1748695e+03 -3.9714462e+03 - -1.8075289e+03 -3.2267024e+03 -3.9671859e+03 - -1.7380585e+03 -3.2767053e+03 -3.9626756e+03 - -1.6689481e+03 -3.3248433e+03 -3.9579507e+03 - -1.6002603e+03 -3.3710897e+03 -3.9530475e+03 - -1.5320487e+03 -3.4154255e+03 -3.9480023e+03 - -1.4643587e+03 -3.4578391e+03 -3.9428514e+03 - -1.3972271e+03 -3.4983256e+03 -3.9376305e+03 - -1.3306828e+03 -3.5368858e+03 -3.9323746e+03 - -1.2647467e+03 -3.5735259e+03 -3.9271177e+03 - -1.1994326e+03 -3.6082567e+03 -3.9218925e+03 - -1.1347474e+03 -3.6410926e+03 -3.9167304e+03 - -1.0706915e+03 -3.6720515e+03 -3.9116612e+03 - -1.0072595e+03 -3.7011534e+03 -3.9067133e+03 - -9.4444075e+02 -3.7284205e+03 -3.9019132e+03 - -8.8221956e+02 -3.7538763e+03 -3.8972858e+03 - -8.2057591e+02 -3.7775450e+03 -3.8928541e+03 - -7.5948586e+02 -3.7994514e+03 -3.8886398e+03 - -6.9892196e+02 -3.8196198e+03 -3.8846623e+03 - -6.3885370e+02 -3.8380742e+03 -3.8809397e+03 - -5.7924784e+02 -3.8548379e+03 -3.8774884e+03 - -5.2006882e+02 -3.8699329e+03 -3.8743230e+03 - -4.6127904e+02 -3.8833799e+03 -3.8714566e+03 - -4.0283916e+02 -3.8951978e+03 -3.8689009e+03 - -3.4470837e+02 -3.9054039e+03 -3.8666660e+03 - -2.8684462e+02 -3.9140133e+03 -3.8647605e+03 - -2.2920487e+02 -3.9210392e+03 -3.8631917e+03 - -1.7174524e+02 -3.9264923e+03 -3.8619655e+03 - -1.1442124e+02 -3.9303813e+03 -3.8610864e+03 - -5.7187916e+01 -3.9327122e+03 -3.8605576e+03 - 0.0000000e+00 -3.9334887e+03 -3.8603812e+03 - 5.7187916e+01 -3.9327122e+03 -3.8605576e+03 - 1.1442124e+02 -3.9303813e+03 -3.8610864e+03 - 1.7174524e+02 -3.9264923e+03 -3.8619655e+03 - 2.2920487e+02 -3.9210392e+03 -3.8631917e+03 - 2.8684462e+02 -3.9140133e+03 -3.8647605e+03 - 3.4470837e+02 -3.9054039e+03 -3.8666660e+03 - 4.0283916e+02 -3.8951978e+03 -3.8689009e+03 - 4.6127904e+02 -3.8833799e+03 -3.8714566e+03 - 5.2006882e+02 -3.8699329e+03 -3.8743230e+03 - 5.7924784e+02 -3.8548379e+03 -3.8774884e+03 - 6.3885370e+02 -3.8380742e+03 -3.8809397e+03 - 6.9892196e+02 -3.8196198e+03 -3.8846623e+03 - 7.5948586e+02 -3.7994514e+03 -3.8886398e+03 - 8.2057591e+02 -3.7775450e+03 -3.8928541e+03 - 8.8221956e+02 -3.7538763e+03 -3.8972858e+03 - 9.4444075e+02 -3.7284205e+03 -3.9019132e+03 - 1.0072595e+03 -3.7011534e+03 -3.9067133e+03 - 1.0706915e+03 -3.6720515e+03 -3.9116612e+03 - 1.1347474e+03 -3.6410926e+03 -3.9167304e+03 - 1.1994326e+03 -3.6082567e+03 -3.9218925e+03 - 1.2647467e+03 -3.5735259e+03 -3.9271177e+03 - 1.3306828e+03 -3.5368858e+03 -3.9323746e+03 - 1.3972271e+03 -3.4983256e+03 -3.9376305e+03 - 1.4643587e+03 -3.4578391e+03 -3.9428514e+03 - 1.5320487e+03 -3.4154255e+03 -3.9480023e+03 - 1.6002603e+03 -3.3710897e+03 -3.9530475e+03 - 1.6689481e+03 -3.3248433e+03 -3.9579507e+03 - 1.7380585e+03 -3.2767053e+03 -3.9626756e+03 - 1.8075289e+03 -3.2267024e+03 -3.9671859e+03 - 1.8772883e+03 -3.1748695e+03 -3.9714462e+03 - 1.9472573e+03 -3.1212503e+03 -3.9754217e+03 - 2.0173485e+03 -3.0658975e+03 -3.9790795e+03 - 2.0874667e+03 -3.0088727e+03 -3.9823882e+03 - 2.1575102e+03 -2.9502467e+03 -3.9853190e+03 - 2.2273709e+03 -2.8900990e+03 -3.9878459e+03 - 2.2969359e+03 -2.8285174e+03 -3.9899461e+03 - 2.3660881e+03 -2.7655975e+03 -3.9916001e+03 - 2.4347078e+03 -2.7014420e+03 -3.9927928e+03 - 2.5026737e+03 -2.6361597e+03 -3.9935130e+03 - 2.5698644e+03 -2.5698644e+03 -3.9937538e+03 - 2.6361597e+03 -2.5026737e+03 -3.9935130e+03 - 2.7014420e+03 -2.4347078e+03 -3.9927928e+03 - 2.7655975e+03 -2.3660881e+03 -3.9916001e+03 - 2.8285174e+03 -2.2969359e+03 -3.9899461e+03 - 2.8900990e+03 -2.2273709e+03 -3.9878459e+03 - 2.9502467e+03 -2.1575102e+03 -3.9853190e+03 - 3.0088727e+03 -2.0874667e+03 -3.9823882e+03 - 3.0658975e+03 -2.0173485e+03 -3.9790795e+03 - 3.1212503e+03 -1.9472573e+03 -3.9754217e+03 - 3.1748695e+03 -1.8772883e+03 -3.9714462e+03 - 3.2267024e+03 -1.8075289e+03 -3.9671859e+03 - 3.2767053e+03 -1.7380585e+03 -3.9626756e+03 - 3.3248433e+03 -1.6689481e+03 -3.9579507e+03 - 3.3710897e+03 -1.6002603e+03 -3.9530475e+03 - 3.4154255e+03 -1.5320487e+03 -3.9480023e+03 - 3.4578391e+03 -1.4643587e+03 -3.9428514e+03 - 3.4983256e+03 -1.3972271e+03 -3.9376305e+03 - 3.5368858e+03 -1.3306828e+03 -3.9323746e+03 - 3.5735259e+03 -1.2647467e+03 -3.9271177e+03 - 3.6082567e+03 -1.1994326e+03 -3.9218925e+03 - 3.6410926e+03 -1.1347474e+03 -3.9167304e+03 - 3.6720515e+03 -1.0706915e+03 -3.9116612e+03 - 3.7011534e+03 -1.0072595e+03 -3.9067133e+03 - 3.7284205e+03 -9.4444075e+02 -3.9019132e+03 - 3.7538763e+03 -8.8221956e+02 -3.8972858e+03 - 3.7775450e+03 -8.2057591e+02 -3.8928541e+03 - 3.7994514e+03 -7.5948586e+02 -3.8886398e+03 - 3.8196198e+03 -6.9892196e+02 -3.8846623e+03 - 3.8380742e+03 -6.3885370e+02 -3.8809397e+03 - 3.8548379e+03 -5.7924784e+02 -3.8774884e+03 - 3.8699329e+03 -5.2006882e+02 -3.8743230e+03 - 3.8833799e+03 -4.6127904e+02 -3.8714566e+03 - 3.8951978e+03 -4.0283916e+02 -3.8689009e+03 - 3.9054039e+03 -3.4470837e+02 -3.8666660e+03 - 3.9140133e+03 -2.8684462e+02 -3.8647605e+03 - 3.9210392e+03 -2.2920487e+02 -3.8631917e+03 - 3.9264923e+03 -1.7174524e+02 -3.8619655e+03 - 3.9303813e+03 -1.1442124e+02 -3.8610864e+03 - 3.9327122e+03 -5.7187916e+01 -3.8605576e+03 - 3.9334887e+03 -9.6268545e-09 -3.8603812e+03 - 3.8828348e+03 0.0000000e+00 -3.9011251e+03 - 3.8820623e+03 5.7067895e+01 -3.9012923e+03 - 3.8797439e+03 1.1417869e+02 -3.9017932e+03 - 3.8758759e+03 1.7137512e+02 -3.9026261e+03 - 3.8704529e+03 2.2869961e+02 -3.9037876e+03 - 3.8634669e+03 2.8619410e+02 -3.9052734e+03 - 3.8549080e+03 3.4389986e+02 -3.9070777e+03 - 3.8447640e+03 4.0185732e+02 -3.9091934e+03 - 3.8330211e+03 4.6010585e+02 -3.9116120e+03 - 3.8196635e+03 5.1868355e+02 -3.9143238e+03 - 3.8046739e+03 5.7762701e+02 -3.9173173e+03 - 3.7880333e+03 6.3697104e+02 -3.9205799e+03 - 3.7697217e+03 6.9674840e+02 -3.9240974e+03 - 3.7497183e+03 7.5698946e+02 -3.9278538e+03 - 3.7280013e+03 8.1772190e+02 -3.9318320e+03 - 3.7045488e+03 8.7897032e+02 -3.9360129e+03 - 3.6793388e+03 9.4075589e+02 -3.9403761e+03 - 3.6523499e+03 1.0030959e+03 -3.9448993e+03 - 3.6235616e+03 1.0660033e+03 -3.9495589e+03 - 3.5929547e+03 1.1294865e+03 -3.9543294e+03 - 3.5605120e+03 1.1935484e+03 -3.9591842e+03 - 3.5262188e+03 1.2581865e+03 -3.9640950e+03 - 3.4900636e+03 1.3233922e+03 -3.9690320e+03 - 3.4520384e+03 1.3891503e+03 -3.9739646e+03 - 3.4121397e+03 1.4554387e+03 -3.9788609e+03 - 3.3703690e+03 1.5222282e+03 -3.9836880e+03 - 3.3267334e+03 1.5894817e+03 -3.9884128e+03 - 3.2812462e+03 1.6571546e+03 -3.9930014e+03 - 3.2339275e+03 1.7251943e+03 -3.9974201e+03 - 3.1848046e+03 1.7935401e+03 -4.0016355e+03 - 3.1339126e+03 1.8621236e+03 -4.0056146e+03 - 3.0812946e+03 1.9308686e+03 -4.0093256e+03 - 3.0270018e+03 1.9996916e+03 -4.0127381e+03 - 2.9710938e+03 2.0685023e+03 -4.0158234e+03 - 2.9136384e+03 2.1372041e+03 -4.0185552e+03 - 2.8547115e+03 2.2056951e+03 -4.0209094e+03 - 2.7943965e+03 2.2738686e+03 -4.0228654e+03 - 2.7327839e+03 2.3416146e+03 -4.0244056e+03 - 2.6699705e+03 2.4088204e+03 -4.0255158e+03 - 2.6060589e+03 2.4753722e+03 -4.0261861e+03 - 2.5411559e+03 2.5411559e+03 -4.0264102e+03 - 2.4753722e+03 2.6060589e+03 -4.0261861e+03 - 2.4088204e+03 2.6699705e+03 -4.0255158e+03 - 2.3416146e+03 2.7327839e+03 -4.0244056e+03 - 2.2738686e+03 2.7943965e+03 -4.0228654e+03 - 2.2056951e+03 2.8547115e+03 -4.0209094e+03 - 2.1372041e+03 2.9136384e+03 -4.0185552e+03 - 2.0685023e+03 2.9710938e+03 -4.0158234e+03 - 1.9996916e+03 3.0270018e+03 -4.0127381e+03 - 1.9308686e+03 3.0812946e+03 -4.0093256e+03 - 1.8621236e+03 3.1339126e+03 -4.0056146e+03 - 1.7935401e+03 3.1848046e+03 -4.0016355e+03 - 1.7251943e+03 3.2339275e+03 -3.9974201e+03 - 1.6571546e+03 3.2812462e+03 -3.9930014e+03 - 1.5894817e+03 3.3267334e+03 -3.9884128e+03 - 1.5222282e+03 3.3703690e+03 -3.9836880e+03 - 1.4554387e+03 3.4121397e+03 -3.9788609e+03 - 1.3891503e+03 3.4520384e+03 -3.9739646e+03 - 1.3233922e+03 3.4900636e+03 -3.9690320e+03 - 1.2581865e+03 3.5262188e+03 -3.9640950e+03 - 1.1935484e+03 3.5605120e+03 -3.9591842e+03 - 1.1294865e+03 3.5929547e+03 -3.9543294e+03 - 1.0660033e+03 3.6235616e+03 -3.9495589e+03 - 1.0030959e+03 3.6523499e+03 -3.9448993e+03 - 9.4075589e+02 3.6793388e+03 -3.9403761e+03 - 8.7897032e+02 3.7045488e+03 -3.9360129e+03 - 8.1772190e+02 3.7280013e+03 -3.9318320e+03 - 7.5698946e+02 3.7497183e+03 -3.9278538e+03 - 6.9674840e+02 3.7697217e+03 -3.9240974e+03 - 6.3697104e+02 3.7880333e+03 -3.9205799e+03 - 5.7762701e+02 3.8046739e+03 -3.9173173e+03 - 5.1868355e+02 3.8196635e+03 -3.9143238e+03 - 4.6010585e+02 3.8330211e+03 -3.9116120e+03 - 4.0185732e+02 3.8447640e+03 -3.9091934e+03 - 3.4389986e+02 3.8549080e+03 -3.9070777e+03 - 2.8619410e+02 3.8634669e+03 -3.9052734e+03 - 2.2869961e+02 3.8704529e+03 -3.9037876e+03 - 1.7137512e+02 3.8758759e+03 -3.9026261e+03 - 1.1417869e+02 3.8797439e+03 -3.9017932e+03 - 5.7067895e+01 3.8820623e+03 -3.9012923e+03 - 0.0000000e+00 3.8828348e+03 -3.9011251e+03 - -5.7067895e+01 3.8820623e+03 -3.9012923e+03 - -1.1417869e+02 3.8797439e+03 -3.9017932e+03 - -1.7137512e+02 3.8758759e+03 -3.9026261e+03 - -2.2869961e+02 3.8704529e+03 -3.9037876e+03 - -2.8619410e+02 3.8634669e+03 -3.9052734e+03 - -3.4389986e+02 3.8549080e+03 -3.9070777e+03 - -4.0185732e+02 3.8447640e+03 -3.9091934e+03 - -4.6010585e+02 3.8330211e+03 -3.9116120e+03 - -5.1868355e+02 3.8196635e+03 -3.9143238e+03 - -5.7762701e+02 3.8046739e+03 -3.9173173e+03 - -6.3697104e+02 3.7880333e+03 -3.9205799e+03 - -6.9674840e+02 3.7697217e+03 -3.9240974e+03 - -7.5698946e+02 3.7497183e+03 -3.9278538e+03 - -8.1772190e+02 3.7280013e+03 -3.9318320e+03 - -8.7897032e+02 3.7045488e+03 -3.9360129e+03 - -9.4075589e+02 3.6793388e+03 -3.9403761e+03 - -1.0030959e+03 3.6523499e+03 -3.9448993e+03 - -1.0660033e+03 3.6235616e+03 -3.9495589e+03 - -1.1294865e+03 3.5929547e+03 -3.9543294e+03 - -1.1935484e+03 3.5605120e+03 -3.9591842e+03 - -1.2581865e+03 3.5262188e+03 -3.9640950e+03 - -1.3233922e+03 3.4900636e+03 -3.9690320e+03 - -1.3891503e+03 3.4520384e+03 -3.9739646e+03 - -1.4554387e+03 3.4121397e+03 -3.9788609e+03 - -1.5222282e+03 3.3703690e+03 -3.9836880e+03 - -1.5894817e+03 3.3267334e+03 -3.9884128e+03 - -1.6571546e+03 3.2812462e+03 -3.9930014e+03 - -1.7251943e+03 3.2339275e+03 -3.9974201e+03 - -1.7935401e+03 3.1848046e+03 -4.0016355e+03 - -1.8621236e+03 3.1339126e+03 -4.0056146e+03 - -1.9308686e+03 3.0812946e+03 -4.0093256e+03 - -1.9996916e+03 3.0270018e+03 -4.0127381e+03 - -2.0685023e+03 2.9710938e+03 -4.0158234e+03 - -2.1372041e+03 2.9136384e+03 -4.0185552e+03 - -2.2056951e+03 2.8547115e+03 -4.0209094e+03 - -2.2738686e+03 2.7943965e+03 -4.0228654e+03 - -2.3416146e+03 2.7327839e+03 -4.0244056e+03 - -2.4088204e+03 2.6699705e+03 -4.0255158e+03 - -2.4753722e+03 2.6060589e+03 -4.0261861e+03 - -2.5411559e+03 2.5411559e+03 -4.0264102e+03 - -2.6060589e+03 2.4753722e+03 -4.0261861e+03 - -2.6699705e+03 2.4088204e+03 -4.0255158e+03 - -2.7327839e+03 2.3416146e+03 -4.0244056e+03 - -2.7943965e+03 2.2738686e+03 -4.0228654e+03 - -2.8547115e+03 2.2056951e+03 -4.0209094e+03 - -2.9136384e+03 2.1372041e+03 -4.0185552e+03 - -2.9710938e+03 2.0685023e+03 -4.0158234e+03 - -3.0270018e+03 1.9996916e+03 -4.0127381e+03 - -3.0812946e+03 1.9308686e+03 -4.0093256e+03 - -3.1339126e+03 1.8621236e+03 -4.0056146e+03 - -3.1848046e+03 1.7935401e+03 -4.0016355e+03 - -3.2339275e+03 1.7251943e+03 -3.9974201e+03 - -3.2812462e+03 1.6571546e+03 -3.9930014e+03 - -3.3267334e+03 1.5894817e+03 -3.9884128e+03 - -3.3703690e+03 1.5222282e+03 -3.9836880e+03 - -3.4121397e+03 1.4554387e+03 -3.9788609e+03 - -3.4520384e+03 1.3891503e+03 -3.9739646e+03 - -3.4900636e+03 1.3233922e+03 -3.9690320e+03 - -3.5262188e+03 1.2581865e+03 -3.9640950e+03 - -3.5605120e+03 1.1935484e+03 -3.9591842e+03 - -3.5929547e+03 1.1294865e+03 -3.9543294e+03 - -3.6235616e+03 1.0660033e+03 -3.9495589e+03 - -3.6523499e+03 1.0030959e+03 -3.9448993e+03 - -3.6793388e+03 9.4075589e+02 -3.9403761e+03 - -3.7045488e+03 8.7897032e+02 -3.9360129e+03 - -3.7280013e+03 8.1772190e+02 -3.9318320e+03 - -3.7497183e+03 7.5698946e+02 -3.9278538e+03 - -3.7697217e+03 6.9674840e+02 -3.9240974e+03 - -3.7880333e+03 6.3697104e+02 -3.9205799e+03 - -3.8046739e+03 5.7762701e+02 -3.9173173e+03 - -3.8196635e+03 5.1868355e+02 -3.9143238e+03 - -3.8330211e+03 4.6010585e+02 -3.9116120e+03 - -3.8447640e+03 4.0185732e+02 -3.9091934e+03 - -3.8549080e+03 3.4389986e+02 -3.9070777e+03 - -3.8634669e+03 2.8619410e+02 -3.9052734e+03 - -3.8704529e+03 2.2869961e+02 -3.9037876e+03 - -3.8758759e+03 1.7137512e+02 -3.9026261e+03 - -3.8797439e+03 1.1417869e+02 -3.9017932e+03 - -3.8820623e+03 5.7067895e+01 -3.9012923e+03 - -3.8828348e+03 0.0000000e+00 -3.9011251e+03 - -3.8820623e+03 -5.7067895e+01 -3.9012923e+03 - -3.8797439e+03 -1.1417869e+02 -3.9017932e+03 - -3.8758759e+03 -1.7137512e+02 -3.9026261e+03 - -3.8704529e+03 -2.2869961e+02 -3.9037876e+03 - -3.8634669e+03 -2.8619410e+02 -3.9052734e+03 - -3.8549080e+03 -3.4389986e+02 -3.9070777e+03 - -3.8447640e+03 -4.0185732e+02 -3.9091934e+03 - -3.8330211e+03 -4.6010585e+02 -3.9116120e+03 - -3.8196635e+03 -5.1868355e+02 -3.9143238e+03 - -3.8046739e+03 -5.7762701e+02 -3.9173173e+03 - -3.7880333e+03 -6.3697104e+02 -3.9205799e+03 - -3.7697217e+03 -6.9674840e+02 -3.9240974e+03 - -3.7497183e+03 -7.5698946e+02 -3.9278538e+03 - -3.7280013e+03 -8.1772190e+02 -3.9318320e+03 - -3.7045488e+03 -8.7897032e+02 -3.9360129e+03 - -3.6793388e+03 -9.4075589e+02 -3.9403761e+03 - -3.6523499e+03 -1.0030959e+03 -3.9448993e+03 - -3.6235616e+03 -1.0660033e+03 -3.9495589e+03 - -3.5929547e+03 -1.1294865e+03 -3.9543294e+03 - -3.5605120e+03 -1.1935484e+03 -3.9591842e+03 - -3.5262188e+03 -1.2581865e+03 -3.9640950e+03 - -3.4900636e+03 -1.3233922e+03 -3.9690320e+03 - -3.4520384e+03 -1.3891503e+03 -3.9739646e+03 - -3.4121397e+03 -1.4554387e+03 -3.9788609e+03 - -3.3703690e+03 -1.5222282e+03 -3.9836880e+03 - -3.3267334e+03 -1.5894817e+03 -3.9884128e+03 - -3.2812462e+03 -1.6571546e+03 -3.9930014e+03 - -3.2339275e+03 -1.7251943e+03 -3.9974201e+03 - -3.1848046e+03 -1.7935401e+03 -4.0016355e+03 - -3.1339126e+03 -1.8621236e+03 -4.0056146e+03 - -3.0812946e+03 -1.9308686e+03 -4.0093256e+03 - -3.0270018e+03 -1.9996916e+03 -4.0127381e+03 - -2.9710938e+03 -2.0685023e+03 -4.0158234e+03 - -2.9136384e+03 -2.1372041e+03 -4.0185552e+03 - -2.8547115e+03 -2.2056951e+03 -4.0209094e+03 - -2.7943965e+03 -2.2738686e+03 -4.0228654e+03 - -2.7327839e+03 -2.3416146e+03 -4.0244056e+03 - -2.6699705e+03 -2.4088204e+03 -4.0255158e+03 - -2.6060589e+03 -2.4753722e+03 -4.0261861e+03 - -2.5411559e+03 -2.5411559e+03 -4.0264102e+03 - -2.4753722e+03 -2.6060589e+03 -4.0261861e+03 - -2.4088204e+03 -2.6699705e+03 -4.0255158e+03 - -2.3416146e+03 -2.7327839e+03 -4.0244056e+03 - -2.2738686e+03 -2.7943965e+03 -4.0228654e+03 - -2.2056951e+03 -2.8547115e+03 -4.0209094e+03 - -2.1372041e+03 -2.9136384e+03 -4.0185552e+03 - -2.0685023e+03 -2.9710938e+03 -4.0158234e+03 - -1.9996916e+03 -3.0270018e+03 -4.0127381e+03 - -1.9308686e+03 -3.0812946e+03 -4.0093256e+03 - -1.8621236e+03 -3.1339126e+03 -4.0056146e+03 - -1.7935401e+03 -3.1848046e+03 -4.0016355e+03 - -1.7251943e+03 -3.2339275e+03 -3.9974201e+03 - -1.6571546e+03 -3.2812462e+03 -3.9930014e+03 - -1.5894817e+03 -3.3267334e+03 -3.9884128e+03 - -1.5222282e+03 -3.3703690e+03 -3.9836880e+03 - -1.4554387e+03 -3.4121397e+03 -3.9788609e+03 - -1.3891503e+03 -3.4520384e+03 -3.9739646e+03 - -1.3233922e+03 -3.4900636e+03 -3.9690320e+03 - -1.2581865e+03 -3.5262188e+03 -3.9640950e+03 - -1.1935484e+03 -3.5605120e+03 -3.9591842e+03 - -1.1294865e+03 -3.5929547e+03 -3.9543294e+03 - -1.0660033e+03 -3.6235616e+03 -3.9495589e+03 - -1.0030959e+03 -3.6523499e+03 -3.9448993e+03 - -9.4075589e+02 -3.6793388e+03 -3.9403761e+03 - -8.7897032e+02 -3.7045488e+03 -3.9360129e+03 - -8.1772190e+02 -3.7280013e+03 -3.9318320e+03 - -7.5698946e+02 -3.7497183e+03 -3.9278538e+03 - -6.9674840e+02 -3.7697217e+03 -3.9240974e+03 - -6.3697104e+02 -3.7880333e+03 -3.9205799e+03 - -5.7762701e+02 -3.8046739e+03 -3.9173173e+03 - -5.1868355e+02 -3.8196635e+03 -3.9143238e+03 - -4.6010585e+02 -3.8330211e+03 -3.9116120e+03 - -4.0185732e+02 -3.8447640e+03 -3.9091934e+03 - -3.4389986e+02 -3.8549080e+03 -3.9070777e+03 - -2.8619410e+02 -3.8634669e+03 -3.9052734e+03 - -2.2869961e+02 -3.8704529e+03 -3.9037876e+03 - -1.7137512e+02 -3.8758759e+03 -3.9026261e+03 - -1.1417869e+02 -3.8797439e+03 -3.9017932e+03 - -5.7067895e+01 -3.8820623e+03 -3.9012923e+03 - 0.0000000e+00 -3.8828348e+03 -3.9011251e+03 - 5.7067895e+01 -3.8820623e+03 -3.9012923e+03 - 1.1417869e+02 -3.8797439e+03 -3.9017932e+03 - 1.7137512e+02 -3.8758759e+03 -3.9026261e+03 - 2.2869961e+02 -3.8704529e+03 -3.9037876e+03 - 2.8619410e+02 -3.8634669e+03 -3.9052734e+03 - 3.4389986e+02 -3.8549080e+03 -3.9070777e+03 - 4.0185732e+02 -3.8447640e+03 -3.9091934e+03 - 4.6010585e+02 -3.8330211e+03 -3.9116120e+03 - 5.1868355e+02 -3.8196635e+03 -3.9143238e+03 - 5.7762701e+02 -3.8046739e+03 -3.9173173e+03 - 6.3697104e+02 -3.7880333e+03 -3.9205799e+03 - 6.9674840e+02 -3.7697217e+03 -3.9240974e+03 - 7.5698946e+02 -3.7497183e+03 -3.9278538e+03 - 8.1772190e+02 -3.7280013e+03 -3.9318320e+03 - 8.7897032e+02 -3.7045488e+03 -3.9360129e+03 - 9.4075589e+02 -3.6793388e+03 -3.9403761e+03 - 1.0030959e+03 -3.6523499e+03 -3.9448993e+03 - 1.0660033e+03 -3.6235616e+03 -3.9495589e+03 - 1.1294865e+03 -3.5929547e+03 -3.9543294e+03 - 1.1935484e+03 -3.5605120e+03 -3.9591842e+03 - 1.2581865e+03 -3.5262188e+03 -3.9640950e+03 - 1.3233922e+03 -3.4900636e+03 -3.9690320e+03 - 1.3891503e+03 -3.4520384e+03 -3.9739646e+03 - 1.4554387e+03 -3.4121397e+03 -3.9788609e+03 - 1.5222282e+03 -3.3703690e+03 -3.9836880e+03 - 1.5894817e+03 -3.3267334e+03 -3.9884128e+03 - 1.6571546e+03 -3.2812462e+03 -3.9930014e+03 - 1.7251943e+03 -3.2339275e+03 -3.9974201e+03 - 1.7935401e+03 -3.1848046e+03 -4.0016355e+03 - 1.8621236e+03 -3.1339126e+03 -4.0056146e+03 - 1.9308686e+03 -3.0812946e+03 -4.0093256e+03 - 1.9996916e+03 -3.0270018e+03 -4.0127381e+03 - 2.0685023e+03 -2.9710938e+03 -4.0158234e+03 - 2.1372041e+03 -2.9136384e+03 -4.0185552e+03 - 2.2056951e+03 -2.8547115e+03 -4.0209094e+03 - 2.2738686e+03 -2.7943965e+03 -4.0228654e+03 - 2.3416146e+03 -2.7327839e+03 -4.0244056e+03 - 2.4088204e+03 -2.6699705e+03 -4.0255158e+03 - 2.4753722e+03 -2.6060589e+03 -4.0261861e+03 - 2.5411559e+03 -2.5411559e+03 -4.0264102e+03 - 2.6060589e+03 -2.4753722e+03 -4.0261861e+03 - 2.6699705e+03 -2.4088204e+03 -4.0255158e+03 - 2.7327839e+03 -2.3416146e+03 -4.0244056e+03 - 2.7943965e+03 -2.2738686e+03 -4.0228654e+03 - 2.8547115e+03 -2.2056951e+03 -4.0209094e+03 - 2.9136384e+03 -2.1372041e+03 -4.0185552e+03 - 2.9710938e+03 -2.0685023e+03 -4.0158234e+03 - 3.0270018e+03 -1.9996916e+03 -4.0127381e+03 - 3.0812946e+03 -1.9308686e+03 -4.0093256e+03 - 3.1339126e+03 -1.8621236e+03 -4.0056146e+03 - 3.1848046e+03 -1.7935401e+03 -4.0016355e+03 - 3.2339275e+03 -1.7251943e+03 -3.9974201e+03 - 3.2812462e+03 -1.6571546e+03 -3.9930014e+03 - 3.3267334e+03 -1.5894817e+03 -3.9884128e+03 - 3.3703690e+03 -1.5222282e+03 -3.9836880e+03 - 3.4121397e+03 -1.4554387e+03 -3.9788609e+03 - 3.4520384e+03 -1.3891503e+03 -3.9739646e+03 - 3.4900636e+03 -1.3233922e+03 -3.9690320e+03 - 3.5262188e+03 -1.2581865e+03 -3.9640950e+03 - 3.5605120e+03 -1.1935484e+03 -3.9591842e+03 - 3.5929547e+03 -1.1294865e+03 -3.9543294e+03 - 3.6235616e+03 -1.0660033e+03 -3.9495589e+03 - 3.6523499e+03 -1.0030959e+03 -3.9448993e+03 - 3.6793388e+03 -9.4075589e+02 -3.9403761e+03 - 3.7045488e+03 -8.7897032e+02 -3.9360129e+03 - 3.7280013e+03 -8.1772190e+02 -3.9318320e+03 - 3.7497183e+03 -7.5698946e+02 -3.9278538e+03 - 3.7697217e+03 -6.9674840e+02 -3.9240974e+03 - 3.7880333e+03 -6.3697104e+02 -3.9205799e+03 - 3.8046739e+03 -5.7762701e+02 -3.9173173e+03 - 3.8196635e+03 -5.1868355e+02 -3.9143238e+03 - 3.8330211e+03 -4.6010585e+02 -3.9116120e+03 - 3.8447640e+03 -4.0185732e+02 -3.9091934e+03 - 3.8549080e+03 -3.4389986e+02 -3.9070777e+03 - 3.8634669e+03 -2.8619410e+02 -3.9052734e+03 - 3.8704529e+03 -2.2869961e+02 -3.9037876e+03 - 3.8758759e+03 -1.7137512e+02 -3.9026261e+03 - 3.8797439e+03 -1.1417869e+02 -3.9017932e+03 - 3.8820623e+03 -5.7067895e+01 -3.9012923e+03 - 3.8828348e+03 4.8134273e-09 -3.9011251e+03 - 3.8309260e+03 0.0000000e+00 -3.9412253e+03 - 3.8301583e+03 5.6918676e+01 -3.9413833e+03 - 3.8278542e+03 1.1387770e+02 -3.9418569e+03 - 3.8240105e+03 1.7091724e+02 -3.9426441e+03 - 3.8186221e+03 2.2807715e+02 -3.9437420e+03 - 3.8116816e+03 2.8539678e+02 -3.9451460e+03 - 3.8031801e+03 3.4291477e+02 -3.9468506e+03 - 3.7931065e+03 4.0066891e+02 -3.9488490e+03 - 3.7814481e+03 4.5869589e+02 -3.9511328e+03 - 3.7681905e+03 5.1703110e+02 -3.9536925e+03 - 3.7533180e+03 5.7570838e+02 -3.9565172e+03 - 3.7368135e+03 6.3475979e+02 -3.9595946e+03 - 3.7186590e+03 6.9421530e+02 -3.9629109e+03 - 3.6988357e+03 7.5410251e+02 -3.9664508e+03 - 3.6773241e+03 8.1444632e+02 -3.9701978e+03 - 3.6541049e+03 8.7526858e+02 -3.9741336e+03 - 3.6291587e+03 9.3658778e+02 -3.9782386e+03 - 3.6024666e+03 9.9841857e+02 -3.9824917e+03 - 3.5740111e+03 1.0607715e+03 -3.9868702e+03 - 3.5437757e+03 1.1236525e+03 -3.9913502e+03 - 3.5117461e+03 1.1870624e+03 -3.9959063e+03 - 3.4779105e+03 1.2509969e+03 -4.0005117e+03 - 3.4422600e+03 1.3154457e+03 -4.0051387e+03 - 3.4047895e+03 1.3803924e+03 -4.0097582e+03 - 3.3654977e+03 1.4458141e+03 -4.0143406e+03 - 3.3243883e+03 1.5116811e+03 -4.0188551e+03 - 3.2814704e+03 1.5779565e+03 -4.0232709e+03 - 3.2367587e+03 1.6445964e+03 -4.0275565e+03 - 3.1902743e+03 1.7115494e+03 -4.0316808e+03 - 3.1420450e+03 1.7787569e+03 -4.0356128e+03 - 3.0921058e+03 1.8461530e+03 -4.0393221e+03 - 3.0404990e+03 1.9136647e+03 -4.0427796e+03 - 2.9872745e+03 1.9812126e+03 -4.0459572e+03 - 2.9324898e+03 2.0487108e+03 -4.0488288e+03 - 2.8762097e+03 2.1160680e+03 -4.0513701e+03 - 2.8185066e+03 2.1831879e+03 -4.0535595e+03 - 2.7594595e+03 2.2499701e+03 -4.0553779e+03 - 2.6991540e+03 2.3163111e+03 -4.0568093e+03 - 2.6376816e+03 2.3821053e+03 -4.0578410e+03 - 2.5751385e+03 2.4472456e+03 -4.0584638e+03 - 2.5116253e+03 2.5116253e+03 -4.0586720e+03 - 2.4472456e+03 2.5751385e+03 -4.0584638e+03 - 2.3821053e+03 2.6376816e+03 -4.0578410e+03 - 2.3163111e+03 2.6991540e+03 -4.0568093e+03 - 2.2499701e+03 2.7594595e+03 -4.0553779e+03 - 2.1831879e+03 2.8185066e+03 -4.0535595e+03 - 2.1160680e+03 2.8762097e+03 -4.0513701e+03 - 2.0487108e+03 2.9324898e+03 -4.0488288e+03 - 1.9812126e+03 2.9872745e+03 -4.0459572e+03 - 1.9136647e+03 3.0404990e+03 -4.0427796e+03 - 1.8461530e+03 3.0921058e+03 -4.0393221e+03 - 1.7787569e+03 3.1420450e+03 -4.0356128e+03 - 1.7115494e+03 3.1902743e+03 -4.0316808e+03 - 1.6445964e+03 3.2367587e+03 -4.0275565e+03 - 1.5779565e+03 3.2814704e+03 -4.0232709e+03 - 1.5116811e+03 3.3243883e+03 -4.0188551e+03 - 1.4458141e+03 3.3654977e+03 -4.0143406e+03 - 1.3803924e+03 3.4047895e+03 -4.0097582e+03 - 1.3154457e+03 3.4422600e+03 -4.0051387e+03 - 1.2509969e+03 3.4779105e+03 -4.0005117e+03 - 1.1870624e+03 3.5117461e+03 -3.9959063e+03 - 1.1236525e+03 3.5437757e+03 -3.9913502e+03 - 1.0607715e+03 3.5740111e+03 -3.9868702e+03 - 9.9841857e+02 3.6024666e+03 -3.9824917e+03 - 9.3658778e+02 3.6291587e+03 -3.9782386e+03 - 8.7526858e+02 3.6541049e+03 -3.9741336e+03 - 8.1444632e+02 3.6773241e+03 -3.9701978e+03 - 7.5410251e+02 3.6988357e+03 -3.9664508e+03 - 6.9421530e+02 3.7186590e+03 -3.9629109e+03 - 6.3475979e+02 3.7368135e+03 -3.9595946e+03 - 5.7570838e+02 3.7533180e+03 -3.9565172e+03 - 5.1703110e+02 3.7681905e+03 -3.9536925e+03 - 4.5869589e+02 3.7814481e+03 -3.9511328e+03 - 4.0066891e+02 3.7931065e+03 -3.9488490e+03 - 3.4291477e+02 3.8031801e+03 -3.9468506e+03 - 2.8539678e+02 3.8116816e+03 -3.9451460e+03 - 2.2807715e+02 3.8186221e+03 -3.9437420e+03 - 1.7091724e+02 3.8240105e+03 -3.9426441e+03 - 1.1387770e+02 3.8278542e+03 -3.9418569e+03 - 5.6918676e+01 3.8301583e+03 -3.9413833e+03 - 0.0000000e+00 3.8309260e+03 -3.9412253e+03 - -5.6918676e+01 3.8301583e+03 -3.9413833e+03 - -1.1387770e+02 3.8278542e+03 -3.9418569e+03 - -1.7091724e+02 3.8240105e+03 -3.9426441e+03 - -2.2807715e+02 3.8186221e+03 -3.9437420e+03 - -2.8539678e+02 3.8116816e+03 -3.9451460e+03 - -3.4291477e+02 3.8031801e+03 -3.9468506e+03 - -4.0066891e+02 3.7931065e+03 -3.9488490e+03 - -4.5869589e+02 3.7814481e+03 -3.9511328e+03 - -5.1703110e+02 3.7681905e+03 -3.9536925e+03 - -5.7570838e+02 3.7533180e+03 -3.9565172e+03 - -6.3475979e+02 3.7368135e+03 -3.9595946e+03 - -6.9421530e+02 3.7186590e+03 -3.9629109e+03 - -7.5410251e+02 3.6988357e+03 -3.9664508e+03 - -8.1444632e+02 3.6773241e+03 -3.9701978e+03 - -8.7526858e+02 3.6541049e+03 -3.9741336e+03 - -9.3658778e+02 3.6291587e+03 -3.9782386e+03 - -9.9841857e+02 3.6024666e+03 -3.9824917e+03 - -1.0607715e+03 3.5740111e+03 -3.9868702e+03 - -1.1236525e+03 3.5437757e+03 -3.9913502e+03 - -1.1870624e+03 3.5117461e+03 -3.9959063e+03 - -1.2509969e+03 3.4779105e+03 -4.0005117e+03 - -1.3154457e+03 3.4422600e+03 -4.0051387e+03 - -1.3803924e+03 3.4047895e+03 -4.0097582e+03 - -1.4458141e+03 3.3654977e+03 -4.0143406e+03 - -1.5116811e+03 3.3243883e+03 -4.0188551e+03 - -1.5779565e+03 3.2814704e+03 -4.0232709e+03 - -1.6445964e+03 3.2367587e+03 -4.0275565e+03 - -1.7115494e+03 3.1902743e+03 -4.0316808e+03 - -1.7787569e+03 3.1420450e+03 -4.0356128e+03 - -1.8461530e+03 3.0921058e+03 -4.0393221e+03 - -1.9136647e+03 3.0404990e+03 -4.0427796e+03 - -1.9812126e+03 2.9872745e+03 -4.0459572e+03 - -2.0487108e+03 2.9324898e+03 -4.0488288e+03 - -2.1160680e+03 2.8762097e+03 -4.0513701e+03 - -2.1831879e+03 2.8185066e+03 -4.0535595e+03 - -2.2499701e+03 2.7594595e+03 -4.0553779e+03 - -2.3163111e+03 2.6991540e+03 -4.0568093e+03 - -2.3821053e+03 2.6376816e+03 -4.0578410e+03 - -2.4472456e+03 2.5751385e+03 -4.0584638e+03 - -2.5116253e+03 2.5116253e+03 -4.0586720e+03 - -2.5751385e+03 2.4472456e+03 -4.0584638e+03 - -2.6376816e+03 2.3821053e+03 -4.0578410e+03 - -2.6991540e+03 2.3163111e+03 -4.0568093e+03 - -2.7594595e+03 2.2499701e+03 -4.0553779e+03 - -2.8185066e+03 2.1831879e+03 -4.0535595e+03 - -2.8762097e+03 2.1160680e+03 -4.0513701e+03 - -2.9324898e+03 2.0487108e+03 -4.0488288e+03 - -2.9872745e+03 1.9812126e+03 -4.0459572e+03 - -3.0404990e+03 1.9136647e+03 -4.0427796e+03 - -3.0921058e+03 1.8461530e+03 -4.0393221e+03 - -3.1420450e+03 1.7787569e+03 -4.0356128e+03 - -3.1902743e+03 1.7115494e+03 -4.0316808e+03 - -3.2367587e+03 1.6445964e+03 -4.0275565e+03 - -3.2814704e+03 1.5779565e+03 -4.0232709e+03 - -3.3243883e+03 1.5116811e+03 -4.0188551e+03 - -3.3654977e+03 1.4458141e+03 -4.0143406e+03 - -3.4047895e+03 1.3803924e+03 -4.0097582e+03 - -3.4422600e+03 1.3154457e+03 -4.0051387e+03 - -3.4779105e+03 1.2509969e+03 -4.0005117e+03 - -3.5117461e+03 1.1870624e+03 -3.9959063e+03 - -3.5437757e+03 1.1236525e+03 -3.9913502e+03 - -3.5740111e+03 1.0607715e+03 -3.9868702e+03 - -3.6024666e+03 9.9841857e+02 -3.9824917e+03 - -3.6291587e+03 9.3658778e+02 -3.9782386e+03 - -3.6541049e+03 8.7526858e+02 -3.9741336e+03 - -3.6773241e+03 8.1444632e+02 -3.9701978e+03 - -3.6988357e+03 7.5410251e+02 -3.9664508e+03 - -3.7186590e+03 6.9421530e+02 -3.9629109e+03 - -3.7368135e+03 6.3475979e+02 -3.9595946e+03 - -3.7533180e+03 5.7570838e+02 -3.9565172e+03 - -3.7681905e+03 5.1703110e+02 -3.9536925e+03 - -3.7814481e+03 4.5869589e+02 -3.9511328e+03 - -3.7931065e+03 4.0066891e+02 -3.9488490e+03 - -3.8031801e+03 3.4291477e+02 -3.9468506e+03 - -3.8116816e+03 2.8539678e+02 -3.9451460e+03 - -3.8186221e+03 2.2807715e+02 -3.9437420e+03 - -3.8240105e+03 1.7091724e+02 -3.9426441e+03 - -3.8278542e+03 1.1387770e+02 -3.9418569e+03 - -3.8301583e+03 5.6918676e+01 -3.9413833e+03 - -3.8309260e+03 -4.8134273e-09 -3.9412253e+03 - -3.8301583e+03 -5.6918676e+01 -3.9413833e+03 - -3.8278542e+03 -1.1387770e+02 -3.9418569e+03 - -3.8240105e+03 -1.7091724e+02 -3.9426441e+03 - -3.8186221e+03 -2.2807715e+02 -3.9437420e+03 - -3.8116816e+03 -2.8539678e+02 -3.9451460e+03 - -3.8031801e+03 -3.4291477e+02 -3.9468506e+03 - -3.7931065e+03 -4.0066891e+02 -3.9488490e+03 - -3.7814481e+03 -4.5869589e+02 -3.9511328e+03 - -3.7681905e+03 -5.1703110e+02 -3.9536925e+03 - -3.7533180e+03 -5.7570838e+02 -3.9565172e+03 - -3.7368135e+03 -6.3475979e+02 -3.9595946e+03 - -3.7186590e+03 -6.9421530e+02 -3.9629109e+03 - -3.6988357e+03 -7.5410251e+02 -3.9664508e+03 - -3.6773241e+03 -8.1444632e+02 -3.9701978e+03 - -3.6541049e+03 -8.7526858e+02 -3.9741336e+03 - -3.6291587e+03 -9.3658778e+02 -3.9782386e+03 - -3.6024666e+03 -9.9841857e+02 -3.9824917e+03 - -3.5740111e+03 -1.0607715e+03 -3.9868702e+03 - -3.5437757e+03 -1.1236525e+03 -3.9913502e+03 - -3.5117461e+03 -1.1870624e+03 -3.9959063e+03 - -3.4779105e+03 -1.2509969e+03 -4.0005117e+03 - -3.4422600e+03 -1.3154457e+03 -4.0051387e+03 - -3.4047895e+03 -1.3803924e+03 -4.0097582e+03 - -3.3654977e+03 -1.4458141e+03 -4.0143406e+03 - -3.3243883e+03 -1.5116811e+03 -4.0188551e+03 - -3.2814704e+03 -1.5779565e+03 -4.0232709e+03 - -3.2367587e+03 -1.6445964e+03 -4.0275565e+03 - -3.1902743e+03 -1.7115494e+03 -4.0316808e+03 - -3.1420450e+03 -1.7787569e+03 -4.0356128e+03 - -3.0921058e+03 -1.8461530e+03 -4.0393221e+03 - -3.0404990e+03 -1.9136647e+03 -4.0427796e+03 - -2.9872745e+03 -1.9812126e+03 -4.0459572e+03 - -2.9324898e+03 -2.0487108e+03 -4.0488288e+03 - -2.8762097e+03 -2.1160680e+03 -4.0513701e+03 - -2.8185066e+03 -2.1831879e+03 -4.0535595e+03 - -2.7594595e+03 -2.2499701e+03 -4.0553779e+03 - -2.6991540e+03 -2.3163111e+03 -4.0568093e+03 - -2.6376816e+03 -2.3821053e+03 -4.0578410e+03 - -2.5751385e+03 -2.4472456e+03 -4.0584638e+03 - -2.5116253e+03 -2.5116253e+03 -4.0586720e+03 - -2.4472456e+03 -2.5751385e+03 -4.0584638e+03 - -2.3821053e+03 -2.6376816e+03 -4.0578410e+03 - -2.3163111e+03 -2.6991540e+03 -4.0568093e+03 - -2.2499701e+03 -2.7594595e+03 -4.0553779e+03 - -2.1831879e+03 -2.8185066e+03 -4.0535595e+03 - -2.1160680e+03 -2.8762097e+03 -4.0513701e+03 - -2.0487108e+03 -2.9324898e+03 -4.0488288e+03 - -1.9812126e+03 -2.9872745e+03 -4.0459572e+03 - -1.9136647e+03 -3.0404990e+03 -4.0427796e+03 - -1.8461530e+03 -3.0921058e+03 -4.0393221e+03 - -1.7787569e+03 -3.1420450e+03 -4.0356128e+03 - -1.7115494e+03 -3.1902743e+03 -4.0316808e+03 - -1.6445964e+03 -3.2367587e+03 -4.0275565e+03 - -1.5779565e+03 -3.2814704e+03 -4.0232709e+03 - -1.5116811e+03 -3.3243883e+03 -4.0188551e+03 - -1.4458141e+03 -3.3654977e+03 -4.0143406e+03 - -1.3803924e+03 -3.4047895e+03 -4.0097582e+03 - -1.3154457e+03 -3.4422600e+03 -4.0051387e+03 - -1.2509969e+03 -3.4779105e+03 -4.0005117e+03 - -1.1870624e+03 -3.5117461e+03 -3.9959063e+03 - -1.1236525e+03 -3.5437757e+03 -3.9913502e+03 - -1.0607715e+03 -3.5740111e+03 -3.9868702e+03 - -9.9841857e+02 -3.6024666e+03 -3.9824917e+03 - -9.3658778e+02 -3.6291587e+03 -3.9782386e+03 - -8.7526858e+02 -3.6541049e+03 -3.9741336e+03 - -8.1444632e+02 -3.6773241e+03 -3.9701978e+03 - -7.5410251e+02 -3.6988357e+03 -3.9664508e+03 - -6.9421530e+02 -3.7186590e+03 -3.9629109e+03 - -6.3475979e+02 -3.7368135e+03 -3.9595946e+03 - -5.7570838e+02 -3.7533180e+03 -3.9565172e+03 - -5.1703110e+02 -3.7681905e+03 -3.9536925e+03 - -4.5869589e+02 -3.7814481e+03 -3.9511328e+03 - -4.0066891e+02 -3.7931065e+03 -3.9488490e+03 - -3.4291477e+02 -3.8031801e+03 -3.9468506e+03 - -2.8539678e+02 -3.8116816e+03 -3.9451460e+03 - -2.2807715e+02 -3.8186221e+03 -3.9437420e+03 - -1.7091724e+02 -3.8240105e+03 -3.9426441e+03 - -1.1387770e+02 -3.8278542e+03 -3.9418569e+03 - -5.6918676e+01 -3.8301583e+03 -3.9413833e+03 - -4.8134273e-09 -3.8309260e+03 -3.9412253e+03 - 5.6918676e+01 -3.8301583e+03 -3.9413833e+03 - 1.1387770e+02 -3.8278542e+03 -3.9418569e+03 - 1.7091724e+02 -3.8240105e+03 -3.9426441e+03 - 2.2807715e+02 -3.8186221e+03 -3.9437420e+03 - 2.8539678e+02 -3.8116816e+03 -3.9451460e+03 - 3.4291477e+02 -3.8031801e+03 -3.9468506e+03 - 4.0066891e+02 -3.7931065e+03 -3.9488490e+03 - 4.5869589e+02 -3.7814481e+03 -3.9511328e+03 - 5.1703110e+02 -3.7681905e+03 -3.9536925e+03 - 5.7570838e+02 -3.7533180e+03 -3.9565172e+03 - 6.3475979e+02 -3.7368135e+03 -3.9595946e+03 - 6.9421530e+02 -3.7186590e+03 -3.9629109e+03 - 7.5410251e+02 -3.6988357e+03 -3.9664508e+03 - 8.1444632e+02 -3.6773241e+03 -3.9701978e+03 - 8.7526858e+02 -3.6541049e+03 -3.9741336e+03 - 9.3658778e+02 -3.6291587e+03 -3.9782386e+03 - 9.9841857e+02 -3.6024666e+03 -3.9824917e+03 - 1.0607715e+03 -3.5740111e+03 -3.9868702e+03 - 1.1236525e+03 -3.5437757e+03 -3.9913502e+03 - 1.1870624e+03 -3.5117461e+03 -3.9959063e+03 - 1.2509969e+03 -3.4779105e+03 -4.0005117e+03 - 1.3154457e+03 -3.4422600e+03 -4.0051387e+03 - 1.3803924e+03 -3.4047895e+03 -4.0097582e+03 - 1.4458141e+03 -3.3654977e+03 -4.0143406e+03 - 1.5116811e+03 -3.3243883e+03 -4.0188551e+03 - 1.5779565e+03 -3.2814704e+03 -4.0232709e+03 - 1.6445964e+03 -3.2367587e+03 -4.0275565e+03 - 1.7115494e+03 -3.1902743e+03 -4.0316808e+03 - 1.7787569e+03 -3.1420450e+03 -4.0356128e+03 - 1.8461530e+03 -3.0921058e+03 -4.0393221e+03 - 1.9136647e+03 -3.0404990e+03 -4.0427796e+03 - 1.9812126e+03 -2.9872745e+03 -4.0459572e+03 - 2.0487108e+03 -2.9324898e+03 -4.0488288e+03 - 2.1160680e+03 -2.8762097e+03 -4.0513701e+03 - 2.1831879e+03 -2.8185066e+03 -4.0535595e+03 - 2.2499701e+03 -2.7594595e+03 -4.0553779e+03 - 2.3163111e+03 -2.6991540e+03 -4.0568093e+03 - 2.3821053e+03 -2.6376816e+03 -4.0578410e+03 - 2.4472456e+03 -2.5751385e+03 -4.0584638e+03 - 2.5116253e+03 -2.5116253e+03 -4.0586720e+03 - 2.5751385e+03 -2.4472456e+03 -4.0584638e+03 - 2.6376816e+03 -2.3821053e+03 -4.0578410e+03 - 2.6991540e+03 -2.3163111e+03 -4.0568093e+03 - 2.7594595e+03 -2.2499701e+03 -4.0553779e+03 - 2.8185066e+03 -2.1831879e+03 -4.0535595e+03 - 2.8762097e+03 -2.1160680e+03 -4.0513701e+03 - 2.9324898e+03 -2.0487108e+03 -4.0488288e+03 - 2.9872745e+03 -1.9812126e+03 -4.0459572e+03 - 3.0404990e+03 -1.9136647e+03 -4.0427796e+03 - 3.0921058e+03 -1.8461530e+03 -4.0393221e+03 - 3.1420450e+03 -1.7787569e+03 -4.0356128e+03 - 3.1902743e+03 -1.7115494e+03 -4.0316808e+03 - 3.2367587e+03 -1.6445964e+03 -4.0275565e+03 - 3.2814704e+03 -1.5779565e+03 -4.0232709e+03 - 3.3243883e+03 -1.5116811e+03 -4.0188551e+03 - 3.3654977e+03 -1.4458141e+03 -4.0143406e+03 - 3.4047895e+03 -1.3803924e+03 -4.0097582e+03 - 3.4422600e+03 -1.3154457e+03 -4.0051387e+03 - 3.4779105e+03 -1.2509969e+03 -4.0005117e+03 - 3.5117461e+03 -1.1870624e+03 -3.9959063e+03 - 3.5437757e+03 -1.1236525e+03 -3.9913502e+03 - 3.5740111e+03 -1.0607715e+03 -3.9868702e+03 - 3.6024666e+03 -9.9841857e+02 -3.9824917e+03 - 3.6291587e+03 -9.3658778e+02 -3.9782386e+03 - 3.6541049e+03 -8.7526858e+02 -3.9741336e+03 - 3.6773241e+03 -8.1444632e+02 -3.9701978e+03 - 3.6988357e+03 -7.5410251e+02 -3.9664508e+03 - 3.7186590e+03 -6.9421530e+02 -3.9629109e+03 - 3.7368135e+03 -6.3475979e+02 -3.9595946e+03 - 3.7533180e+03 -5.7570838e+02 -3.9565172e+03 - 3.7681905e+03 -5.1703110e+02 -3.9536925e+03 - 3.7814481e+03 -4.5869589e+02 -3.9511328e+03 - 3.7931065e+03 -4.0066891e+02 -3.9488490e+03 - 3.8031801e+03 -3.4291477e+02 -3.9468506e+03 - 3.8116816e+03 -2.8539678e+02 -3.9451460e+03 - 3.8186221e+03 -2.2807715e+02 -3.9437420e+03 - 3.8240105e+03 -1.7091724e+02 -3.9426441e+03 - 3.8278542e+03 -1.1387770e+02 -3.9418569e+03 - 3.8301583e+03 -5.6918676e+01 -3.9413833e+03 - 3.8309260e+03 4.8134273e-09 -3.9412253e+03 - 3.7776598e+03 0.0000000e+00 -3.9807286e+03 - 3.7768975e+03 5.6738035e+01 -3.9808777e+03 - 3.7746097e+03 1.1351382e+02 -3.9813243e+03 - 3.7707935e+03 1.7036494e+02 -3.9820666e+03 - 3.7654443e+03 2.2732863e+02 -3.9831017e+03 - 3.7585554e+03 2.8444161e+02 -3.9844252e+03 - 3.7501185e+03 3.4173990e+02 -3.9860318e+03 - 3.7401238e+03 3.9925860e+02 -3.9879148e+03 - 3.7285596e+03 4.5703173e+02 -3.9900661e+03 - 3.7154131e+03 5.1509196e+02 -3.9924766e+03 - 3.7006700e+03 5.7347043e+02 -3.9951356e+03 - 3.6843151e+03 6.3219645e+02 -3.9980313e+03 - 3.6663322e+03 6.9129725e+02 -4.0011504e+03 - 3.6467047e+03 7.5079771e+02 -4.0044784e+03 - 3.6254153e+03 8.1072003e+02 -4.0079992e+03 - 3.6024470e+03 8.7108342e+02 -4.0116955e+03 - 3.5777829e+03 9.3190376e+02 -4.0155485e+03 - 3.5514069e+03 9.9319325e+02 -4.0195382e+03 - 3.5233038e+03 1.0549601e+03 -4.0236431e+03 - 3.4934601e+03 1.1172079e+03 -4.0278404e+03 - 3.4618642e+03 1.1799358e+03 -4.0321063e+03 - 3.4285067e+03 1.2431376e+03 -4.0364155e+03 - 3.3933815e+03 1.3068016e+03 -4.0407420e+03 - 3.3564858e+03 1.3709103e+03 -4.0450586e+03 - 3.3178207e+03 1.4354402e+03 -4.0493376e+03 - 3.2773918e+03 1.5003613e+03 -4.0535504e+03 - 3.2352097e+03 1.5656372e+03 -4.0576683e+03 - 3.1912906e+03 1.6312246e+03 -4.0616623e+03 - 3.1456563e+03 1.6970736e+03 -4.0655034e+03 - 3.0983350e+03 1.7631275e+03 -4.0691631e+03 - 3.0493615e+03 1.8293231e+03 -4.0726137e+03 - 2.9987772e+03 1.8955907e+03 -4.0758282e+03 - 2.9466305e+03 1.9618547e+03 -4.0787810e+03 - 2.8929767e+03 2.0280337e+03 -4.0814481e+03 - 2.8378780e+03 2.0940414e+03 -4.0838075e+03 - 2.7814030e+03 2.1597871e+03 -4.0858394e+03 - 2.7236268e+03 2.2251763e+03 -4.0875265e+03 - 2.6646303e+03 2.2901117e+03 -4.0888542e+03 - 2.6044993e+03 2.3544943e+03 -4.0898110e+03 - 2.5433246e+03 2.4182240e+03 -4.0903884e+03 - 2.4812004e+03 2.4812004e+03 -4.0905815e+03 - 2.4182240e+03 2.5433246e+03 -4.0903884e+03 - 2.3544943e+03 2.6044993e+03 -4.0898110e+03 - 2.2901117e+03 2.6646303e+03 -4.0888542e+03 - 2.2251763e+03 2.7236268e+03 -4.0875265e+03 - 2.1597871e+03 2.7814030e+03 -4.0858394e+03 - 2.0940414e+03 2.8378780e+03 -4.0838075e+03 - 2.0280337e+03 2.8929767e+03 -4.0814481e+03 - 1.9618547e+03 2.9466305e+03 -4.0787810e+03 - 1.8955907e+03 2.9987772e+03 -4.0758282e+03 - 1.8293231e+03 3.0493615e+03 -4.0726137e+03 - 1.7631275e+03 3.0983350e+03 -4.0691631e+03 - 1.6970736e+03 3.1456563e+03 -4.0655034e+03 - 1.6312246e+03 3.1912906e+03 -4.0616623e+03 - 1.5656372e+03 3.2352097e+03 -4.0576683e+03 - 1.5003613e+03 3.2773918e+03 -4.0535504e+03 - 1.4354402e+03 3.3178207e+03 -4.0493376e+03 - 1.3709103e+03 3.3564858e+03 -4.0450586e+03 - 1.3068016e+03 3.3933815e+03 -4.0407420e+03 - 1.2431376e+03 3.4285067e+03 -4.0364155e+03 - 1.1799358e+03 3.4618642e+03 -4.0321063e+03 - 1.1172079e+03 3.4934601e+03 -4.0278404e+03 - 1.0549601e+03 3.5233038e+03 -4.0236431e+03 - 9.9319325e+02 3.5514069e+03 -4.0195382e+03 - 9.3190376e+02 3.5777829e+03 -4.0155485e+03 - 8.7108342e+02 3.6024470e+03 -4.0116955e+03 - 8.1072003e+02 3.6254153e+03 -4.0079992e+03 - 7.5079771e+02 3.6467047e+03 -4.0044784e+03 - 6.9129725e+02 3.6663322e+03 -4.0011504e+03 - 6.3219645e+02 3.6843151e+03 -3.9980313e+03 - 5.7347043e+02 3.7006700e+03 -3.9951356e+03 - 5.1509196e+02 3.7154131e+03 -3.9924766e+03 - 4.5703173e+02 3.7285596e+03 -3.9900661e+03 - 3.9925860e+02 3.7401238e+03 -3.9879148e+03 - 3.4173990e+02 3.7501185e+03 -3.9860318e+03 - 2.8444161e+02 3.7585554e+03 -3.9844252e+03 - 2.2732863e+02 3.7654443e+03 -3.9831017e+03 - 1.7036494e+02 3.7707935e+03 -3.9820666e+03 - 1.1351382e+02 3.7746097e+03 -3.9813243e+03 - 5.6738035e+01 3.7768975e+03 -3.9808777e+03 - 0.0000000e+00 3.7776598e+03 -3.9807286e+03 - -5.6738035e+01 3.7768975e+03 -3.9808777e+03 - -1.1351382e+02 3.7746097e+03 -3.9813243e+03 - -1.7036494e+02 3.7707935e+03 -3.9820666e+03 - -2.2732863e+02 3.7654443e+03 -3.9831017e+03 - -2.8444161e+02 3.7585554e+03 -3.9844252e+03 - -3.4173990e+02 3.7501185e+03 -3.9860318e+03 - -3.9925860e+02 3.7401238e+03 -3.9879148e+03 - -4.5703173e+02 3.7285596e+03 -3.9900661e+03 - -5.1509196e+02 3.7154131e+03 -3.9924766e+03 - -5.7347043e+02 3.7006700e+03 -3.9951356e+03 - -6.3219645e+02 3.6843151e+03 -3.9980313e+03 - -6.9129725e+02 3.6663322e+03 -4.0011504e+03 - -7.5079771e+02 3.6467047e+03 -4.0044784e+03 - -8.1072003e+02 3.6254153e+03 -4.0079992e+03 - -8.7108342e+02 3.6024470e+03 -4.0116955e+03 - -9.3190376e+02 3.5777829e+03 -4.0155485e+03 - -9.9319325e+02 3.5514069e+03 -4.0195382e+03 - -1.0549601e+03 3.5233038e+03 -4.0236431e+03 - -1.1172079e+03 3.4934601e+03 -4.0278404e+03 - -1.1799358e+03 3.4618642e+03 -4.0321063e+03 - -1.2431376e+03 3.4285067e+03 -4.0364155e+03 - -1.3068016e+03 3.3933815e+03 -4.0407420e+03 - -1.3709103e+03 3.3564858e+03 -4.0450586e+03 - -1.4354402e+03 3.3178207e+03 -4.0493376e+03 - -1.5003613e+03 3.2773918e+03 -4.0535504e+03 - -1.5656372e+03 3.2352097e+03 -4.0576683e+03 - -1.6312246e+03 3.1912906e+03 -4.0616623e+03 - -1.6970736e+03 3.1456563e+03 -4.0655034e+03 - -1.7631275e+03 3.0983350e+03 -4.0691631e+03 - -1.8293231e+03 3.0493615e+03 -4.0726137e+03 - -1.8955907e+03 2.9987772e+03 -4.0758282e+03 - -1.9618547e+03 2.9466305e+03 -4.0787810e+03 - -2.0280337e+03 2.8929767e+03 -4.0814481e+03 - -2.0940414e+03 2.8378780e+03 -4.0838075e+03 - -2.1597871e+03 2.7814030e+03 -4.0858394e+03 - -2.2251763e+03 2.7236268e+03 -4.0875265e+03 - -2.2901117e+03 2.6646303e+03 -4.0888542e+03 - -2.3544943e+03 2.6044993e+03 -4.0898110e+03 - -2.4182240e+03 2.5433246e+03 -4.0903884e+03 - -2.4812004e+03 2.4812004e+03 -4.0905815e+03 - -2.5433246e+03 2.4182240e+03 -4.0903884e+03 - -2.6044993e+03 2.3544943e+03 -4.0898110e+03 - -2.6646303e+03 2.2901117e+03 -4.0888542e+03 - -2.7236268e+03 2.2251763e+03 -4.0875265e+03 - -2.7814030e+03 2.1597871e+03 -4.0858394e+03 - -2.8378780e+03 2.0940414e+03 -4.0838075e+03 - -2.8929767e+03 2.0280337e+03 -4.0814481e+03 - -2.9466305e+03 1.9618547e+03 -4.0787810e+03 - -2.9987772e+03 1.8955907e+03 -4.0758282e+03 - -3.0493615e+03 1.8293231e+03 -4.0726137e+03 - -3.0983350e+03 1.7631275e+03 -4.0691631e+03 - -3.1456563e+03 1.6970736e+03 -4.0655034e+03 - -3.1912906e+03 1.6312246e+03 -4.0616623e+03 - -3.2352097e+03 1.5656372e+03 -4.0576683e+03 - -3.2773918e+03 1.5003613e+03 -4.0535504e+03 - -3.3178207e+03 1.4354402e+03 -4.0493376e+03 - -3.3564858e+03 1.3709103e+03 -4.0450586e+03 - -3.3933815e+03 1.3068016e+03 -4.0407420e+03 - -3.4285067e+03 1.2431376e+03 -4.0364155e+03 - -3.4618642e+03 1.1799358e+03 -4.0321063e+03 - -3.4934601e+03 1.1172079e+03 -4.0278404e+03 - -3.5233038e+03 1.0549601e+03 -4.0236431e+03 - -3.5514069e+03 9.9319325e+02 -4.0195382e+03 - -3.5777829e+03 9.3190376e+02 -4.0155485e+03 - -3.6024470e+03 8.7108342e+02 -4.0116955e+03 - -3.6254153e+03 8.1072003e+02 -4.0079992e+03 - -3.6467047e+03 7.5079771e+02 -4.0044784e+03 - -3.6663322e+03 6.9129725e+02 -4.0011504e+03 - -3.6843151e+03 6.3219645e+02 -3.9980313e+03 - -3.7006700e+03 5.7347043e+02 -3.9951356e+03 - -3.7154131e+03 5.1509196e+02 -3.9924766e+03 - -3.7285596e+03 4.5703173e+02 -3.9900661e+03 - -3.7401238e+03 3.9925860e+02 -3.9879148e+03 - -3.7501185e+03 3.4173990e+02 -3.9860318e+03 - -3.7585554e+03 2.8444161e+02 -3.9844252e+03 - -3.7654443e+03 2.2732863e+02 -3.9831017e+03 - -3.7707935e+03 1.7036494e+02 -3.9820666e+03 - -3.7746097e+03 1.1351382e+02 -3.9813243e+03 - -3.7768975e+03 5.6738035e+01 -3.9808777e+03 - -3.7776598e+03 0.0000000e+00 -3.9807286e+03 - -3.7768975e+03 -5.6738035e+01 -3.9808777e+03 - -3.7746097e+03 -1.1351382e+02 -3.9813243e+03 - -3.7707935e+03 -1.7036494e+02 -3.9820666e+03 - -3.7654443e+03 -2.2732863e+02 -3.9831017e+03 - -3.7585554e+03 -2.8444161e+02 -3.9844252e+03 - -3.7501185e+03 -3.4173990e+02 -3.9860318e+03 - -3.7401238e+03 -3.9925860e+02 -3.9879148e+03 - -3.7285596e+03 -4.5703173e+02 -3.9900661e+03 - -3.7154131e+03 -5.1509196e+02 -3.9924766e+03 - -3.7006700e+03 -5.7347043e+02 -3.9951356e+03 - -3.6843151e+03 -6.3219645e+02 -3.9980313e+03 - -3.6663322e+03 -6.9129725e+02 -4.0011504e+03 - -3.6467047e+03 -7.5079771e+02 -4.0044784e+03 - -3.6254153e+03 -8.1072003e+02 -4.0079992e+03 - -3.6024470e+03 -8.7108342e+02 -4.0116955e+03 - -3.5777829e+03 -9.3190376e+02 -4.0155485e+03 - -3.5514069e+03 -9.9319325e+02 -4.0195382e+03 - -3.5233038e+03 -1.0549601e+03 -4.0236431e+03 - -3.4934601e+03 -1.1172079e+03 -4.0278404e+03 - -3.4618642e+03 -1.1799358e+03 -4.0321063e+03 - -3.4285067e+03 -1.2431376e+03 -4.0364155e+03 - -3.3933815e+03 -1.3068016e+03 -4.0407420e+03 - -3.3564858e+03 -1.3709103e+03 -4.0450586e+03 - -3.3178207e+03 -1.4354402e+03 -4.0493376e+03 - -3.2773918e+03 -1.5003613e+03 -4.0535504e+03 - -3.2352097e+03 -1.5656372e+03 -4.0576683e+03 - -3.1912906e+03 -1.6312246e+03 -4.0616623e+03 - -3.1456563e+03 -1.6970736e+03 -4.0655034e+03 - -3.0983350e+03 -1.7631275e+03 -4.0691631e+03 - -3.0493615e+03 -1.8293231e+03 -4.0726137e+03 - -2.9987772e+03 -1.8955907e+03 -4.0758282e+03 - -2.9466305e+03 -1.9618547e+03 -4.0787810e+03 - -2.8929767e+03 -2.0280337e+03 -4.0814481e+03 - -2.8378780e+03 -2.0940414e+03 -4.0838075e+03 - -2.7814030e+03 -2.1597871e+03 -4.0858394e+03 - -2.7236268e+03 -2.2251763e+03 -4.0875265e+03 - -2.6646303e+03 -2.2901117e+03 -4.0888542e+03 - -2.6044993e+03 -2.3544943e+03 -4.0898110e+03 - -2.5433246e+03 -2.4182240e+03 -4.0903884e+03 - -2.4812004e+03 -2.4812004e+03 -4.0905815e+03 - -2.4182240e+03 -2.5433246e+03 -4.0903884e+03 - -2.3544943e+03 -2.6044993e+03 -4.0898110e+03 - -2.2901117e+03 -2.6646303e+03 -4.0888542e+03 - -2.2251763e+03 -2.7236268e+03 -4.0875265e+03 - -2.1597871e+03 -2.7814030e+03 -4.0858394e+03 - -2.0940414e+03 -2.8378780e+03 -4.0838075e+03 - -2.0280337e+03 -2.8929767e+03 -4.0814481e+03 - -1.9618547e+03 -2.9466305e+03 -4.0787810e+03 - -1.8955907e+03 -2.9987772e+03 -4.0758282e+03 - -1.8293231e+03 -3.0493615e+03 -4.0726137e+03 - -1.7631275e+03 -3.0983350e+03 -4.0691631e+03 - -1.6970736e+03 -3.1456563e+03 -4.0655034e+03 - -1.6312246e+03 -3.1912906e+03 -4.0616623e+03 - -1.5656372e+03 -3.2352097e+03 -4.0576683e+03 - -1.5003613e+03 -3.2773918e+03 -4.0535504e+03 - -1.4354402e+03 -3.3178207e+03 -4.0493376e+03 - -1.3709103e+03 -3.3564858e+03 -4.0450586e+03 - -1.3068016e+03 -3.3933815e+03 -4.0407420e+03 - -1.2431376e+03 -3.4285067e+03 -4.0364155e+03 - -1.1799358e+03 -3.4618642e+03 -4.0321063e+03 - -1.1172079e+03 -3.4934601e+03 -4.0278404e+03 - -1.0549601e+03 -3.5233038e+03 -4.0236431e+03 - -9.9319325e+02 -3.5514069e+03 -4.0195382e+03 - -9.3190376e+02 -3.5777829e+03 -4.0155485e+03 - -8.7108342e+02 -3.6024470e+03 -4.0116955e+03 - -8.1072003e+02 -3.6254153e+03 -4.0079992e+03 - -7.5079771e+02 -3.6467047e+03 -4.0044784e+03 - -6.9129725e+02 -3.6663322e+03 -4.0011504e+03 - -6.3219645e+02 -3.6843151e+03 -3.9980313e+03 - -5.7347043e+02 -3.7006700e+03 -3.9951356e+03 - -5.1509196e+02 -3.7154131e+03 -3.9924766e+03 - -4.5703173e+02 -3.7285596e+03 -3.9900661e+03 - -3.9925860e+02 -3.7401238e+03 -3.9879148e+03 - -3.4173990e+02 -3.7501185e+03 -3.9860318e+03 - -2.8444161e+02 -3.7585554e+03 -3.9844252e+03 - -2.2732863e+02 -3.7654443e+03 -3.9831017e+03 - -1.7036494e+02 -3.7707935e+03 -3.9820666e+03 - -1.1351382e+02 -3.7746097e+03 -3.9813243e+03 - -5.6738035e+01 -3.7768975e+03 -3.9808777e+03 - 0.0000000e+00 -3.7776598e+03 -3.9807286e+03 - 5.6738035e+01 -3.7768975e+03 -3.9808777e+03 - 1.1351382e+02 -3.7746097e+03 -3.9813243e+03 - 1.7036494e+02 -3.7707935e+03 -3.9820666e+03 - 2.2732863e+02 -3.7654443e+03 -3.9831017e+03 - 2.8444161e+02 -3.7585554e+03 -3.9844252e+03 - 3.4173990e+02 -3.7501185e+03 -3.9860318e+03 - 3.9925860e+02 -3.7401238e+03 -3.9879148e+03 - 4.5703173e+02 -3.7285596e+03 -3.9900661e+03 - 5.1509196e+02 -3.7154131e+03 -3.9924766e+03 - 5.7347043e+02 -3.7006700e+03 -3.9951356e+03 - 6.3219645e+02 -3.6843151e+03 -3.9980313e+03 - 6.9129725e+02 -3.6663322e+03 -4.0011504e+03 - 7.5079771e+02 -3.6467047e+03 -4.0044784e+03 - 8.1072003e+02 -3.6254153e+03 -4.0079992e+03 - 8.7108342e+02 -3.6024470e+03 -4.0116955e+03 - 9.3190376e+02 -3.5777829e+03 -4.0155485e+03 - 9.9319325e+02 -3.5514069e+03 -4.0195382e+03 - 1.0549601e+03 -3.5233038e+03 -4.0236431e+03 - 1.1172079e+03 -3.4934601e+03 -4.0278404e+03 - 1.1799358e+03 -3.4618642e+03 -4.0321063e+03 - 1.2431376e+03 -3.4285067e+03 -4.0364155e+03 - 1.3068016e+03 -3.3933815e+03 -4.0407420e+03 - 1.3709103e+03 -3.3564858e+03 -4.0450586e+03 - 1.4354402e+03 -3.3178207e+03 -4.0493376e+03 - 1.5003613e+03 -3.2773918e+03 -4.0535504e+03 - 1.5656372e+03 -3.2352097e+03 -4.0576683e+03 - 1.6312246e+03 -3.1912906e+03 -4.0616623e+03 - 1.6970736e+03 -3.1456563e+03 -4.0655034e+03 - 1.7631275e+03 -3.0983350e+03 -4.0691631e+03 - 1.8293231e+03 -3.0493615e+03 -4.0726137e+03 - 1.8955907e+03 -2.9987772e+03 -4.0758282e+03 - 1.9618547e+03 -2.9466305e+03 -4.0787810e+03 - 2.0280337e+03 -2.8929767e+03 -4.0814481e+03 - 2.0940414e+03 -2.8378780e+03 -4.0838075e+03 - 2.1597871e+03 -2.7814030e+03 -4.0858394e+03 - 2.2251763e+03 -2.7236268e+03 -4.0875265e+03 - 2.2901117e+03 -2.6646303e+03 -4.0888542e+03 - 2.3544943e+03 -2.6044993e+03 -4.0898110e+03 - 2.4182240e+03 -2.5433246e+03 -4.0903884e+03 - 2.4812004e+03 -2.4812004e+03 -4.0905815e+03 - 2.5433246e+03 -2.4182240e+03 -4.0903884e+03 - 2.6044993e+03 -2.3544943e+03 -4.0898110e+03 - 2.6646303e+03 -2.2901117e+03 -4.0888542e+03 - 2.7236268e+03 -2.2251763e+03 -4.0875265e+03 - 2.7814030e+03 -2.1597871e+03 -4.0858394e+03 - 2.8378780e+03 -2.0940414e+03 -4.0838075e+03 - 2.8929767e+03 -2.0280337e+03 -4.0814481e+03 - 2.9466305e+03 -1.9618547e+03 -4.0787810e+03 - 2.9987772e+03 -1.8955907e+03 -4.0758282e+03 - 3.0493615e+03 -1.8293231e+03 -4.0726137e+03 - 3.0983350e+03 -1.7631275e+03 -4.0691631e+03 - 3.1456563e+03 -1.6970736e+03 -4.0655034e+03 - 3.1912906e+03 -1.6312246e+03 -4.0616623e+03 - 3.2352097e+03 -1.5656372e+03 -4.0576683e+03 - 3.2773918e+03 -1.5003613e+03 -4.0535504e+03 - 3.3178207e+03 -1.4354402e+03 -4.0493376e+03 - 3.3564858e+03 -1.3709103e+03 -4.0450586e+03 - 3.3933815e+03 -1.3068016e+03 -4.0407420e+03 - 3.4285067e+03 -1.2431376e+03 -4.0364155e+03 - 3.4618642e+03 -1.1799358e+03 -4.0321063e+03 - 3.4934601e+03 -1.1172079e+03 -4.0278404e+03 - 3.5233038e+03 -1.0549601e+03 -4.0236431e+03 - 3.5514069e+03 -9.9319325e+02 -4.0195382e+03 - 3.5777829e+03 -9.3190376e+02 -4.0155485e+03 - 3.6024470e+03 -8.7108342e+02 -4.0116955e+03 - 3.6254153e+03 -8.1072003e+02 -4.0079992e+03 - 3.6467047e+03 -7.5079771e+02 -4.0044784e+03 - 3.6663322e+03 -6.9129725e+02 -4.0011504e+03 - 3.6843151e+03 -6.3219645e+02 -3.9980313e+03 - 3.7006700e+03 -5.7347043e+02 -3.9951356e+03 - 3.7154131e+03 -5.1509196e+02 -3.9924766e+03 - 3.7285596e+03 -4.5703173e+02 -3.9900661e+03 - 3.7401238e+03 -3.9925860e+02 -3.9879148e+03 - 3.7501185e+03 -3.4173990e+02 -3.9860318e+03 - 3.7585554e+03 -2.8444161e+02 -3.9844252e+03 - 3.7654443e+03 -2.2732863e+02 -3.9831017e+03 - 3.7707935e+03 -1.7036494e+02 -3.9820666e+03 - 3.7746097e+03 -1.1351382e+02 -3.9813243e+03 - 3.7768975e+03 -5.6738035e+01 -3.9808777e+03 - 3.7776598e+03 0.0000000e+00 -3.9807286e+03 - 3.7229236e+03 0.0000000e+00 -4.0196797e+03 - 3.7221674e+03 5.6523491e+01 -4.0198199e+03 - 3.7198980e+03 1.1308211e+02 -4.0202399e+03 - 3.7161128e+03 1.6971080e+02 -4.0209381e+03 - 3.7108076e+03 2.2644418e+02 -4.0219114e+03 - 3.7039764e+03 2.8331630e+02 -4.0231558e+03 - 3.6956118e+03 3.4036052e+02 -4.0246661e+03 - 3.6857048e+03 3.9760929e+02 -4.0264357e+03 - 3.6742452e+03 4.5509392e+02 -4.0284569e+03 - 3.6612212e+03 5.1284440e+02 -4.0307209e+03 - 3.6466204e+03 5.7088915e+02 -4.0332174e+03 - 3.6304290e+03 6.2925479e+02 -4.0359351e+03 - 3.6126329e+03 6.8796587e+02 -4.0388612e+03 - 3.5932174e+03 7.4704458e+02 -4.0419818e+03 - 3.5721674e+03 8.0651052e+02 -4.0452815e+03 - 3.5494683e+03 8.6638033e+02 -4.0487440e+03 - 3.5251054e+03 9.2666743e+02 -4.0523513e+03 - 3.4990652e+03 9.8738165e+02 -4.0560843e+03 - 3.4713350e+03 1.0485289e+03 -4.0599229e+03 - 3.4419039e+03 1.1101110e+03 -4.0638455e+03 - 3.4107627e+03 1.1721251e+03 -4.0678296e+03 - 3.3779047e+03 1.2345633e+03 -4.0718517e+03 - 3.3433260e+03 1.2974130e+03 -4.0758872e+03 - 3.3070261e+03 1.3606556e+03 -4.0799109e+03 - 3.2690081e+03 1.4242671e+03 -4.0838968e+03 - 3.2292795e+03 1.4882175e+03 -4.0878186e+03 - 3.1878523e+03 1.5524707e+03 -4.0916495e+03 - 3.1447437e+03 1.6169846e+03 -4.0953627e+03 - 3.0999764e+03 1.6817106e+03 -4.0989317e+03 - 3.0535785e+03 1.7465941e+03 -4.1023301e+03 - 3.0055846e+03 1.8115746e+03 -4.1055324e+03 - 2.9560351e+03 1.8765855e+03 -4.1085141e+03 - 2.9049769e+03 1.9415551e+03 -4.1112517e+03 - 2.8524633e+03 2.0064064e+03 -4.1137233e+03 - 2.7985534e+03 2.0710578e+03 -4.1159089e+03 - 2.7433127e+03 2.1354241e+03 -4.1177904e+03 - 2.6868121e+03 2.1994164e+03 -4.1193522e+03 - 2.6291279e+03 2.2629436e+03 -4.1205809e+03 - 2.5703409e+03 2.3259129e+03 -4.1214662e+03 - 2.5105363e+03 2.3882304e+03 -4.1220005e+03 - 2.4498025e+03 2.4498025e+03 -4.1221791e+03 - 2.3882304e+03 2.5105363e+03 -4.1220005e+03 - 2.3259129e+03 2.5703409e+03 -4.1214662e+03 - 2.2629436e+03 2.6291279e+03 -4.1205809e+03 - 2.1994164e+03 2.6868121e+03 -4.1193522e+03 - 2.1354241e+03 2.7433127e+03 -4.1177904e+03 - 2.0710578e+03 2.7985534e+03 -4.1159089e+03 - 2.0064064e+03 2.8524633e+03 -4.1137233e+03 - 1.9415551e+03 2.9049769e+03 -4.1112517e+03 - 1.8765855e+03 2.9560351e+03 -4.1085141e+03 - 1.8115746e+03 3.0055846e+03 -4.1055324e+03 - 1.7465941e+03 3.0535785e+03 -4.1023301e+03 - 1.6817106e+03 3.0999764e+03 -4.0989317e+03 - 1.6169846e+03 3.1447437e+03 -4.0953627e+03 - 1.5524707e+03 3.1878523e+03 -4.0916495e+03 - 1.4882175e+03 3.2292795e+03 -4.0878186e+03 - 1.4242671e+03 3.2690081e+03 -4.0838968e+03 - 1.3606556e+03 3.3070261e+03 -4.0799109e+03 - 1.2974130e+03 3.3433260e+03 -4.0758872e+03 - 1.2345633e+03 3.3779047e+03 -4.0718517e+03 - 1.1721251e+03 3.4107627e+03 -4.0678296e+03 - 1.1101110e+03 3.4419039e+03 -4.0638455e+03 - 1.0485289e+03 3.4713350e+03 -4.0599229e+03 - 9.8738165e+02 3.4990652e+03 -4.0560843e+03 - 9.2666743e+02 3.5251054e+03 -4.0523513e+03 - 8.6638033e+02 3.5494683e+03 -4.0487440e+03 - 8.0651052e+02 3.5721674e+03 -4.0452815e+03 - 7.4704458e+02 3.5932174e+03 -4.0419818e+03 - 6.8796587e+02 3.6126329e+03 -4.0388612e+03 - 6.2925479e+02 3.6304290e+03 -4.0359351e+03 - 5.7088915e+02 3.6466204e+03 -4.0332174e+03 - 5.1284440e+02 3.6612212e+03 -4.0307209e+03 - 4.5509392e+02 3.6742452e+03 -4.0284569e+03 - 3.9760929e+02 3.6857048e+03 -4.0264357e+03 - 3.4036052e+02 3.6956118e+03 -4.0246661e+03 - 2.8331630e+02 3.7039764e+03 -4.0231558e+03 - 2.2644418e+02 3.7108076e+03 -4.0219114e+03 - 1.6971080e+02 3.7161128e+03 -4.0209381e+03 - 1.1308211e+02 3.7198980e+03 -4.0202399e+03 - 5.6523491e+01 3.7221674e+03 -4.0198199e+03 - 0.0000000e+00 3.7229236e+03 -4.0196797e+03 - -5.6523491e+01 3.7221674e+03 -4.0198199e+03 - -1.1308211e+02 3.7198980e+03 -4.0202399e+03 - -1.6971080e+02 3.7161128e+03 -4.0209381e+03 - -2.2644418e+02 3.7108076e+03 -4.0219114e+03 - -2.8331630e+02 3.7039764e+03 -4.0231558e+03 - -3.4036052e+02 3.6956118e+03 -4.0246661e+03 - -3.9760929e+02 3.6857048e+03 -4.0264357e+03 - -4.5509392e+02 3.6742452e+03 -4.0284569e+03 - -5.1284440e+02 3.6612212e+03 -4.0307209e+03 - -5.7088915e+02 3.6466204e+03 -4.0332174e+03 - -6.2925479e+02 3.6304290e+03 -4.0359351e+03 - -6.8796587e+02 3.6126329e+03 -4.0388612e+03 - -7.4704458e+02 3.5932174e+03 -4.0419818e+03 - -8.0651052e+02 3.5721674e+03 -4.0452815e+03 - -8.6638033e+02 3.5494683e+03 -4.0487440e+03 - -9.2666743e+02 3.5251054e+03 -4.0523513e+03 - -9.8738165e+02 3.4990652e+03 -4.0560843e+03 - -1.0485289e+03 3.4713350e+03 -4.0599229e+03 - -1.1101110e+03 3.4419039e+03 -4.0638455e+03 - -1.1721251e+03 3.4107627e+03 -4.0678296e+03 - -1.2345633e+03 3.3779047e+03 -4.0718517e+03 - -1.2974130e+03 3.3433260e+03 -4.0758872e+03 - -1.3606556e+03 3.3070261e+03 -4.0799109e+03 - -1.4242671e+03 3.2690081e+03 -4.0838968e+03 - -1.4882175e+03 3.2292795e+03 -4.0878186e+03 - -1.5524707e+03 3.1878523e+03 -4.0916495e+03 - -1.6169846e+03 3.1447437e+03 -4.0953627e+03 - -1.6817106e+03 3.0999764e+03 -4.0989317e+03 - -1.7465941e+03 3.0535785e+03 -4.1023301e+03 - -1.8115746e+03 3.0055846e+03 -4.1055324e+03 - -1.8765855e+03 2.9560351e+03 -4.1085141e+03 - -1.9415551e+03 2.9049769e+03 -4.1112517e+03 - -2.0064064e+03 2.8524633e+03 -4.1137233e+03 - -2.0710578e+03 2.7985534e+03 -4.1159089e+03 - -2.1354241e+03 2.7433127e+03 -4.1177904e+03 - -2.1994164e+03 2.6868121e+03 -4.1193522e+03 - -2.2629436e+03 2.6291279e+03 -4.1205809e+03 - -2.3259129e+03 2.5703409e+03 -4.1214662e+03 - -2.3882304e+03 2.5105363e+03 -4.1220005e+03 - -2.4498025e+03 2.4498025e+03 -4.1221791e+03 - -2.5105363e+03 2.3882304e+03 -4.1220005e+03 - -2.5703409e+03 2.3259129e+03 -4.1214662e+03 - -2.6291279e+03 2.2629436e+03 -4.1205809e+03 - -2.6868121e+03 2.1994164e+03 -4.1193522e+03 - -2.7433127e+03 2.1354241e+03 -4.1177904e+03 - -2.7985534e+03 2.0710578e+03 -4.1159089e+03 - -2.8524633e+03 2.0064064e+03 -4.1137233e+03 - -2.9049769e+03 1.9415551e+03 -4.1112517e+03 - -2.9560351e+03 1.8765855e+03 -4.1085141e+03 - -3.0055846e+03 1.8115746e+03 -4.1055324e+03 - -3.0535785e+03 1.7465941e+03 -4.1023301e+03 - -3.0999764e+03 1.6817106e+03 -4.0989317e+03 - -3.1447437e+03 1.6169846e+03 -4.0953627e+03 - -3.1878523e+03 1.5524707e+03 -4.0916495e+03 - -3.2292795e+03 1.4882175e+03 -4.0878186e+03 - -3.2690081e+03 1.4242671e+03 -4.0838968e+03 - -3.3070261e+03 1.3606556e+03 -4.0799109e+03 - -3.3433260e+03 1.2974130e+03 -4.0758872e+03 - -3.3779047e+03 1.2345633e+03 -4.0718517e+03 - -3.4107627e+03 1.1721251e+03 -4.0678296e+03 - -3.4419039e+03 1.1101110e+03 -4.0638455e+03 - -3.4713350e+03 1.0485289e+03 -4.0599229e+03 - -3.4990652e+03 9.8738165e+02 -4.0560843e+03 - -3.5251054e+03 9.2666743e+02 -4.0523513e+03 - -3.5494683e+03 8.6638033e+02 -4.0487440e+03 - -3.5721674e+03 8.0651052e+02 -4.0452815e+03 - -3.5932174e+03 7.4704458e+02 -4.0419818e+03 - -3.6126329e+03 6.8796587e+02 -4.0388612e+03 - -3.6304290e+03 6.2925479e+02 -4.0359351e+03 - -3.6466204e+03 5.7088915e+02 -4.0332174e+03 - -3.6612212e+03 5.1284440e+02 -4.0307209e+03 - -3.6742452e+03 4.5509392e+02 -4.0284569e+03 - -3.6857048e+03 3.9760929e+02 -4.0264357e+03 - -3.6956118e+03 3.4036052e+02 -4.0246661e+03 - -3.7039764e+03 2.8331630e+02 -4.0231558e+03 - -3.7108076e+03 2.2644418e+02 -4.0219114e+03 - -3.7161128e+03 1.6971080e+02 -4.0209381e+03 - -3.7198980e+03 1.1308211e+02 -4.0202399e+03 - -3.7221674e+03 5.6523491e+01 -4.0198199e+03 - -3.7229236e+03 4.8134273e-09 -4.0196797e+03 - -3.7221674e+03 -5.6523491e+01 -4.0198199e+03 - -3.7198980e+03 -1.1308211e+02 -4.0202399e+03 - -3.7161128e+03 -1.6971080e+02 -4.0209381e+03 - -3.7108076e+03 -2.2644418e+02 -4.0219114e+03 - -3.7039764e+03 -2.8331630e+02 -4.0231558e+03 - -3.6956118e+03 -3.4036052e+02 -4.0246661e+03 - -3.6857048e+03 -3.9760929e+02 -4.0264357e+03 - -3.6742452e+03 -4.5509392e+02 -4.0284569e+03 - -3.6612212e+03 -5.1284440e+02 -4.0307209e+03 - -3.6466204e+03 -5.7088915e+02 -4.0332174e+03 - -3.6304290e+03 -6.2925479e+02 -4.0359351e+03 - -3.6126329e+03 -6.8796587e+02 -4.0388612e+03 - -3.5932174e+03 -7.4704458e+02 -4.0419818e+03 - -3.5721674e+03 -8.0651052e+02 -4.0452815e+03 - -3.5494683e+03 -8.6638033e+02 -4.0487440e+03 - -3.5251054e+03 -9.2666743e+02 -4.0523513e+03 - -3.4990652e+03 -9.8738165e+02 -4.0560843e+03 - -3.4713350e+03 -1.0485289e+03 -4.0599229e+03 - -3.4419039e+03 -1.1101110e+03 -4.0638455e+03 - -3.4107627e+03 -1.1721251e+03 -4.0678296e+03 - -3.3779047e+03 -1.2345633e+03 -4.0718517e+03 - -3.3433260e+03 -1.2974130e+03 -4.0758872e+03 - -3.3070261e+03 -1.3606556e+03 -4.0799109e+03 - -3.2690081e+03 -1.4242671e+03 -4.0838968e+03 - -3.2292795e+03 -1.4882175e+03 -4.0878186e+03 - -3.1878523e+03 -1.5524707e+03 -4.0916495e+03 - -3.1447437e+03 -1.6169846e+03 -4.0953627e+03 - -3.0999764e+03 -1.6817106e+03 -4.0989317e+03 - -3.0535785e+03 -1.7465941e+03 -4.1023301e+03 - -3.0055846e+03 -1.8115746e+03 -4.1055324e+03 - -2.9560351e+03 -1.8765855e+03 -4.1085141e+03 - -2.9049769e+03 -1.9415551e+03 -4.1112517e+03 - -2.8524633e+03 -2.0064064e+03 -4.1137233e+03 - -2.7985534e+03 -2.0710578e+03 -4.1159089e+03 - -2.7433127e+03 -2.1354241e+03 -4.1177904e+03 - -2.6868121e+03 -2.1994164e+03 -4.1193522e+03 - -2.6291279e+03 -2.2629436e+03 -4.1205809e+03 - -2.5703409e+03 -2.3259129e+03 -4.1214662e+03 - -2.5105363e+03 -2.3882304e+03 -4.1220005e+03 - -2.4498025e+03 -2.4498025e+03 -4.1221791e+03 - -2.3882304e+03 -2.5105363e+03 -4.1220005e+03 - -2.3259129e+03 -2.5703409e+03 -4.1214662e+03 - -2.2629436e+03 -2.6291279e+03 -4.1205809e+03 - -2.1994164e+03 -2.6868121e+03 -4.1193522e+03 - -2.1354241e+03 -2.7433127e+03 -4.1177904e+03 - -2.0710578e+03 -2.7985534e+03 -4.1159089e+03 - -2.0064064e+03 -2.8524633e+03 -4.1137233e+03 - -1.9415551e+03 -2.9049769e+03 -4.1112517e+03 - -1.8765855e+03 -2.9560351e+03 -4.1085141e+03 - -1.8115746e+03 -3.0055846e+03 -4.1055324e+03 - -1.7465941e+03 -3.0535785e+03 -4.1023301e+03 - -1.6817106e+03 -3.0999764e+03 -4.0989317e+03 - -1.6169846e+03 -3.1447437e+03 -4.0953627e+03 - -1.5524707e+03 -3.1878523e+03 -4.0916495e+03 - -1.4882175e+03 -3.2292795e+03 -4.0878186e+03 - -1.4242671e+03 -3.2690081e+03 -4.0838968e+03 - -1.3606556e+03 -3.3070261e+03 -4.0799109e+03 - -1.2974130e+03 -3.3433260e+03 -4.0758872e+03 - -1.2345633e+03 -3.3779047e+03 -4.0718517e+03 - -1.1721251e+03 -3.4107627e+03 -4.0678296e+03 - -1.1101110e+03 -3.4419039e+03 -4.0638455e+03 - -1.0485289e+03 -3.4713350e+03 -4.0599229e+03 - -9.8738165e+02 -3.4990652e+03 -4.0560843e+03 - -9.2666743e+02 -3.5251054e+03 -4.0523513e+03 - -8.6638033e+02 -3.5494683e+03 -4.0487440e+03 - -8.0651052e+02 -3.5721674e+03 -4.0452815e+03 - -7.4704458e+02 -3.5932174e+03 -4.0419818e+03 - -6.8796587e+02 -3.6126329e+03 -4.0388612e+03 - -6.2925479e+02 -3.6304290e+03 -4.0359351e+03 - -5.7088915e+02 -3.6466204e+03 -4.0332174e+03 - -5.1284440e+02 -3.6612212e+03 -4.0307209e+03 - -4.5509392e+02 -3.6742452e+03 -4.0284569e+03 - -3.9760929e+02 -3.6857048e+03 -4.0264357e+03 - -3.4036052e+02 -3.6956118e+03 -4.0246661e+03 - -2.8331630e+02 -3.7039764e+03 -4.0231558e+03 - -2.2644418e+02 -3.7108076e+03 -4.0219114e+03 - -1.6971080e+02 -3.7161128e+03 -4.0209381e+03 - -1.1308211e+02 -3.7198980e+03 -4.0202399e+03 - -5.6523491e+01 -3.7221674e+03 -4.0198199e+03 - -4.8134273e-09 -3.7229236e+03 -4.0196797e+03 - 5.6523491e+01 -3.7221674e+03 -4.0198199e+03 - 1.1308211e+02 -3.7198980e+03 -4.0202399e+03 - 1.6971080e+02 -3.7161128e+03 -4.0209381e+03 - 2.2644418e+02 -3.7108076e+03 -4.0219114e+03 - 2.8331630e+02 -3.7039764e+03 -4.0231558e+03 - 3.4036052e+02 -3.6956118e+03 -4.0246661e+03 - 3.9760929e+02 -3.6857048e+03 -4.0264357e+03 - 4.5509392e+02 -3.6742452e+03 -4.0284569e+03 - 5.1284440e+02 -3.6612212e+03 -4.0307209e+03 - 5.7088915e+02 -3.6466204e+03 -4.0332174e+03 - 6.2925479e+02 -3.6304290e+03 -4.0359351e+03 - 6.8796587e+02 -3.6126329e+03 -4.0388612e+03 - 7.4704458e+02 -3.5932174e+03 -4.0419818e+03 - 8.0651052e+02 -3.5721674e+03 -4.0452815e+03 - 8.6638033e+02 -3.5494683e+03 -4.0487440e+03 - 9.2666743e+02 -3.5251054e+03 -4.0523513e+03 - 9.8738165e+02 -3.4990652e+03 -4.0560843e+03 - 1.0485289e+03 -3.4713350e+03 -4.0599229e+03 - 1.1101110e+03 -3.4419039e+03 -4.0638455e+03 - 1.1721251e+03 -3.4107627e+03 -4.0678296e+03 - 1.2345633e+03 -3.3779047e+03 -4.0718517e+03 - 1.2974130e+03 -3.3433260e+03 -4.0758872e+03 - 1.3606556e+03 -3.3070261e+03 -4.0799109e+03 - 1.4242671e+03 -3.2690081e+03 -4.0838968e+03 - 1.4882175e+03 -3.2292795e+03 -4.0878186e+03 - 1.5524707e+03 -3.1878523e+03 -4.0916495e+03 - 1.6169846e+03 -3.1447437e+03 -4.0953627e+03 - 1.6817106e+03 -3.0999764e+03 -4.0989317e+03 - 1.7465941e+03 -3.0535785e+03 -4.1023301e+03 - 1.8115746e+03 -3.0055846e+03 -4.1055324e+03 - 1.8765855e+03 -2.9560351e+03 -4.1085141e+03 - 1.9415551e+03 -2.9049769e+03 -4.1112517e+03 - 2.0064064e+03 -2.8524633e+03 -4.1137233e+03 - 2.0710578e+03 -2.7985534e+03 -4.1159089e+03 - 2.1354241e+03 -2.7433127e+03 -4.1177904e+03 - 2.1994164e+03 -2.6868121e+03 -4.1193522e+03 - 2.2629436e+03 -2.6291279e+03 -4.1205809e+03 - 2.3259129e+03 -2.5703409e+03 -4.1214662e+03 - 2.3882304e+03 -2.5105363e+03 -4.1220005e+03 - 2.4498025e+03 -2.4498025e+03 -4.1221791e+03 - 2.5105363e+03 -2.3882304e+03 -4.1220005e+03 - 2.5703409e+03 -2.3259129e+03 -4.1214662e+03 - 2.6291279e+03 -2.2629436e+03 -4.1205809e+03 - 2.6868121e+03 -2.1994164e+03 -4.1193522e+03 - 2.7433127e+03 -2.1354241e+03 -4.1177904e+03 - 2.7985534e+03 -2.0710578e+03 -4.1159089e+03 - 2.8524633e+03 -2.0064064e+03 -4.1137233e+03 - 2.9049769e+03 -1.9415551e+03 -4.1112517e+03 - 2.9560351e+03 -1.8765855e+03 -4.1085141e+03 - 3.0055846e+03 -1.8115746e+03 -4.1055324e+03 - 3.0535785e+03 -1.7465941e+03 -4.1023301e+03 - 3.0999764e+03 -1.6817106e+03 -4.0989317e+03 - 3.1447437e+03 -1.6169846e+03 -4.0953627e+03 - 3.1878523e+03 -1.5524707e+03 -4.0916495e+03 - 3.2292795e+03 -1.4882175e+03 -4.0878186e+03 - 3.2690081e+03 -1.4242671e+03 -4.0838968e+03 - 3.3070261e+03 -1.3606556e+03 -4.0799109e+03 - 3.3433260e+03 -1.2974130e+03 -4.0758872e+03 - 3.3779047e+03 -1.2345633e+03 -4.0718517e+03 - 3.4107627e+03 -1.1721251e+03 -4.0678296e+03 - 3.4419039e+03 -1.1101110e+03 -4.0638455e+03 - 3.4713350e+03 -1.0485289e+03 -4.0599229e+03 - 3.4990652e+03 -9.8738165e+02 -4.0560843e+03 - 3.5251054e+03 -9.2666743e+02 -4.0523513e+03 - 3.5494683e+03 -8.6638033e+02 -4.0487440e+03 - 3.5721674e+03 -8.0651052e+02 -4.0452815e+03 - 3.5932174e+03 -7.4704458e+02 -4.0419818e+03 - 3.6126329e+03 -6.8796587e+02 -4.0388612e+03 - 3.6304290e+03 -6.2925479e+02 -4.0359351e+03 - 3.6466204e+03 -5.7088915e+02 -4.0332174e+03 - 3.6612212e+03 -5.1284440e+02 -4.0307209e+03 - 3.6742452e+03 -4.5509392e+02 -4.0284569e+03 - 3.6857048e+03 -3.9760929e+02 -4.0264357e+03 - 3.6956118e+03 -3.4036052e+02 -4.0246661e+03 - 3.7039764e+03 -2.8331630e+02 -4.0231558e+03 - 3.7108076e+03 -2.2644418e+02 -4.0219114e+03 - 3.7161128e+03 -1.6971080e+02 -4.0209381e+03 - 3.7198980e+03 -1.1308211e+02 -4.0202399e+03 - 3.7221674e+03 -5.6523491e+01 -4.0198199e+03 - 3.7229236e+03 4.8134273e-09 -4.0196797e+03 - 3.6665943e+03 0.0000000e+00 -4.0581207e+03 - 3.6658450e+03 5.6272274e+01 -4.0582522e+03 - 3.6635962e+03 1.1257702e+02 -4.0586462e+03 - 3.6598456e+03 1.6894654e+02 -4.0593009e+03 - 3.6545895e+03 2.2541276e+02 -4.0602136e+03 - 3.6478225e+03 2.8200710e+02 -4.0613803e+03 - 3.6395380e+03 3.3876023e+02 -4.0627959e+03 - 3.6297281e+03 3.9570191e+02 -4.0644542e+03 - 3.6183836e+03 4.5286078e+02 -4.0663478e+03 - 3.6054943e+03 5.1026415e+02 -4.0684682e+03 - 3.5910490e+03 5.6793777e+02 -4.0708055e+03 - 3.5750357e+03 6.2590557e+02 -4.0733489e+03 - 3.5574422e+03 6.8418948e+02 -4.0760862e+03 - 3.5382556e+03 7.4280911e+02 -4.0790041e+03 - 3.5174631e+03 8.0178148e+02 -4.0820880e+03 - 3.4950520e+03 8.6112080e+02 -4.0853223e+03 - 3.4710102e+03 9.2083811e+02 -4.0886902e+03 - 3.4453263e+03 9.8094101e+02 -4.0921734e+03 - 3.4179902e+03 1.0414334e+03 -4.0957530e+03 - 3.3889933e+03 1.1023150e+03 -4.0994088e+03 - 3.3583287e+03 1.1635815e+03 -4.1031197e+03 - 3.3259922e+03 1.2252237e+03 -4.1068635e+03 - 3.2919820e+03 1.2872276e+03 -4.1106174e+03 - 3.2562996e+03 1.3495742e+03 -4.1143580e+03 - 3.2189502e+03 1.4122390e+03 -4.1180610e+03 - 3.1799426e+03 1.4751921e+03 -4.1217022e+03 - 3.1392902e+03 1.5383981e+03 -4.1252567e+03 - 3.0970112e+03 1.6018156e+03 -4.1287000e+03 - 3.0531285e+03 1.6653978e+03 -4.1320074e+03 - 3.0076706e+03 1.7290923e+03 -4.1351551e+03 - 2.9606714e+03 1.7928411e+03 -4.1381195e+03 - 2.9121704e+03 1.8565809e+03 -4.1408782e+03 - 2.8622130e+03 1.9202437e+03 -4.1434099e+03 - 2.8108500e+03 1.9837567e+03 -4.1456946e+03 - 2.7581381e+03 2.0470431e+03 -4.1477141e+03 - 2.7041393e+03 2.1100227e+03 -4.1494521e+03 - 2.6489207e+03 2.1726124e+03 -4.1508943e+03 - 2.5925542e+03 2.2347266e+03 -4.1520287e+03 - 2.5351156e+03 2.2962785e+03 -4.1528458e+03 - 2.4766849e+03 2.3571804e+03 -4.1533389e+03 - 2.4173448e+03 2.4173448e+03 -4.1535038e+03 - 2.3571804e+03 2.4766849e+03 -4.1533389e+03 - 2.2962785e+03 2.5351156e+03 -4.1528458e+03 - 2.2347266e+03 2.5925542e+03 -4.1520287e+03 - 2.1726124e+03 2.6489207e+03 -4.1508943e+03 - 2.1100227e+03 2.7041393e+03 -4.1494521e+03 - 2.0470431e+03 2.7581381e+03 -4.1477141e+03 - 1.9837567e+03 2.8108500e+03 -4.1456946e+03 - 1.9202437e+03 2.8622130e+03 -4.1434099e+03 - 1.8565809e+03 2.9121704e+03 -4.1408782e+03 - 1.7928411e+03 2.9606714e+03 -4.1381195e+03 - 1.7290923e+03 3.0076706e+03 -4.1351551e+03 - 1.6653978e+03 3.0531285e+03 -4.1320074e+03 - 1.6018156e+03 3.0970112e+03 -4.1287000e+03 - 1.5383981e+03 3.1392902e+03 -4.1252567e+03 - 1.4751921e+03 3.1799426e+03 -4.1217022e+03 - 1.4122390e+03 3.2189502e+03 -4.1180610e+03 - 1.3495742e+03 3.2562996e+03 -4.1143580e+03 - 1.2872276e+03 3.2919820e+03 -4.1106174e+03 - 1.2252237e+03 3.3259922e+03 -4.1068635e+03 - 1.1635815e+03 3.3583287e+03 -4.1031197e+03 - 1.1023150e+03 3.3889933e+03 -4.0994088e+03 - 1.0414334e+03 3.4179902e+03 -4.0957530e+03 - 9.8094101e+02 3.4453263e+03 -4.0921734e+03 - 9.2083811e+02 3.4710102e+03 -4.0886902e+03 - 8.6112080e+02 3.4950520e+03 -4.0853223e+03 - 8.0178148e+02 3.5174631e+03 -4.0820880e+03 - 7.4280911e+02 3.5382556e+03 -4.0790041e+03 - 6.8418948e+02 3.5574422e+03 -4.0760862e+03 - 6.2590557e+02 3.5750357e+03 -4.0733489e+03 - 5.6793777e+02 3.5910490e+03 -4.0708055e+03 - 5.1026415e+02 3.6054943e+03 -4.0684682e+03 - 4.5286078e+02 3.6183836e+03 -4.0663478e+03 - 3.9570191e+02 3.6297281e+03 -4.0644542e+03 - 3.3876023e+02 3.6395380e+03 -4.0627959e+03 - 2.8200710e+02 3.6478225e+03 -4.0613803e+03 - 2.2541276e+02 3.6545895e+03 -4.0602136e+03 - 1.6894654e+02 3.6598456e+03 -4.0593009e+03 - 1.1257702e+02 3.6635962e+03 -4.0586462e+03 - 5.6272274e+01 3.6658450e+03 -4.0582522e+03 - 0.0000000e+00 3.6665943e+03 -4.0581207e+03 - -5.6272274e+01 3.6658450e+03 -4.0582522e+03 - -1.1257702e+02 3.6635962e+03 -4.0586462e+03 - -1.6894654e+02 3.6598456e+03 -4.0593009e+03 - -2.2541276e+02 3.6545895e+03 -4.0602136e+03 - -2.8200710e+02 3.6478225e+03 -4.0613803e+03 - -3.3876023e+02 3.6395380e+03 -4.0627959e+03 - -3.9570191e+02 3.6297281e+03 -4.0644542e+03 - -4.5286078e+02 3.6183836e+03 -4.0663478e+03 - -5.1026415e+02 3.6054943e+03 -4.0684682e+03 - -5.6793777e+02 3.5910490e+03 -4.0708055e+03 - -6.2590557e+02 3.5750357e+03 -4.0733489e+03 - -6.8418948e+02 3.5574422e+03 -4.0760862e+03 - -7.4280911e+02 3.5382556e+03 -4.0790041e+03 - -8.0178148e+02 3.5174631e+03 -4.0820880e+03 - -8.6112080e+02 3.4950520e+03 -4.0853223e+03 - -9.2083811e+02 3.4710102e+03 -4.0886902e+03 - -9.8094101e+02 3.4453263e+03 -4.0921734e+03 - -1.0414334e+03 3.4179902e+03 -4.0957530e+03 - -1.1023150e+03 3.3889933e+03 -4.0994088e+03 - -1.1635815e+03 3.3583287e+03 -4.1031197e+03 - -1.2252237e+03 3.3259922e+03 -4.1068635e+03 - -1.2872276e+03 3.2919820e+03 -4.1106174e+03 - -1.3495742e+03 3.2562996e+03 -4.1143580e+03 - -1.4122390e+03 3.2189502e+03 -4.1180610e+03 - -1.4751921e+03 3.1799426e+03 -4.1217022e+03 - -1.5383981e+03 3.1392902e+03 -4.1252567e+03 - -1.6018156e+03 3.0970112e+03 -4.1287000e+03 - -1.6653978e+03 3.0531285e+03 -4.1320074e+03 - -1.7290923e+03 3.0076706e+03 -4.1351551e+03 - -1.7928411e+03 2.9606714e+03 -4.1381195e+03 - -1.8565809e+03 2.9121704e+03 -4.1408782e+03 - -1.9202437e+03 2.8622130e+03 -4.1434099e+03 - -1.9837567e+03 2.8108500e+03 -4.1456946e+03 - -2.0470431e+03 2.7581381e+03 -4.1477141e+03 - -2.1100227e+03 2.7041393e+03 -4.1494521e+03 - -2.1726124e+03 2.6489207e+03 -4.1508943e+03 - -2.2347266e+03 2.5925542e+03 -4.1520287e+03 - -2.2962785e+03 2.5351156e+03 -4.1528458e+03 - -2.3571804e+03 2.4766849e+03 -4.1533389e+03 - -2.4173448e+03 2.4173448e+03 -4.1535038e+03 - -2.4766849e+03 2.3571804e+03 -4.1533389e+03 - -2.5351156e+03 2.2962785e+03 -4.1528458e+03 - -2.5925542e+03 2.2347266e+03 -4.1520287e+03 - -2.6489207e+03 2.1726124e+03 -4.1508943e+03 - -2.7041393e+03 2.1100227e+03 -4.1494521e+03 - -2.7581381e+03 2.0470431e+03 -4.1477141e+03 - -2.8108500e+03 1.9837567e+03 -4.1456946e+03 - -2.8622130e+03 1.9202437e+03 -4.1434099e+03 - -2.9121704e+03 1.8565809e+03 -4.1408782e+03 - -2.9606714e+03 1.7928411e+03 -4.1381195e+03 - -3.0076706e+03 1.7290923e+03 -4.1351551e+03 - -3.0531285e+03 1.6653978e+03 -4.1320074e+03 - -3.0970112e+03 1.6018156e+03 -4.1287000e+03 - -3.1392902e+03 1.5383981e+03 -4.1252567e+03 - -3.1799426e+03 1.4751921e+03 -4.1217022e+03 - -3.2189502e+03 1.4122390e+03 -4.1180610e+03 - -3.2562996e+03 1.3495742e+03 -4.1143580e+03 - -3.2919820e+03 1.2872276e+03 -4.1106174e+03 - -3.3259922e+03 1.2252237e+03 -4.1068635e+03 - -3.3583287e+03 1.1635815e+03 -4.1031197e+03 - -3.3889933e+03 1.1023150e+03 -4.0994088e+03 - -3.4179902e+03 1.0414334e+03 -4.0957530e+03 - -3.4453263e+03 9.8094101e+02 -4.0921734e+03 - -3.4710102e+03 9.2083811e+02 -4.0886902e+03 - -3.4950520e+03 8.6112080e+02 -4.0853223e+03 - -3.5174631e+03 8.0178148e+02 -4.0820880e+03 - -3.5382556e+03 7.4280911e+02 -4.0790041e+03 - -3.5574422e+03 6.8418948e+02 -4.0760862e+03 - -3.5750357e+03 6.2590557e+02 -4.0733489e+03 - -3.5910490e+03 5.6793777e+02 -4.0708055e+03 - -3.6054943e+03 5.1026415e+02 -4.0684682e+03 - -3.6183836e+03 4.5286078e+02 -4.0663478e+03 - -3.6297281e+03 3.9570191e+02 -4.0644542e+03 - -3.6395380e+03 3.3876023e+02 -4.0627959e+03 - -3.6478225e+03 2.8200710e+02 -4.0613803e+03 - -3.6545895e+03 2.2541276e+02 -4.0602136e+03 - -3.6598456e+03 1.6894654e+02 -4.0593009e+03 - -3.6635962e+03 1.1257702e+02 -4.0586462e+03 - -3.6658450e+03 5.6272274e+01 -4.0582522e+03 - -3.6665943e+03 0.0000000e+00 -4.0581207e+03 - -3.6658450e+03 -5.6272274e+01 -4.0582522e+03 - -3.6635962e+03 -1.1257702e+02 -4.0586462e+03 - -3.6598456e+03 -1.6894654e+02 -4.0593009e+03 - -3.6545895e+03 -2.2541276e+02 -4.0602136e+03 - -3.6478225e+03 -2.8200710e+02 -4.0613803e+03 - -3.6395380e+03 -3.3876023e+02 -4.0627959e+03 - -3.6297281e+03 -3.9570191e+02 -4.0644542e+03 - -3.6183836e+03 -4.5286078e+02 -4.0663478e+03 - -3.6054943e+03 -5.1026415e+02 -4.0684682e+03 - -3.5910490e+03 -5.6793777e+02 -4.0708055e+03 - -3.5750357e+03 -6.2590557e+02 -4.0733489e+03 - -3.5574422e+03 -6.8418948e+02 -4.0760862e+03 - -3.5382556e+03 -7.4280911e+02 -4.0790041e+03 - -3.5174631e+03 -8.0178148e+02 -4.0820880e+03 - -3.4950520e+03 -8.6112080e+02 -4.0853223e+03 - -3.4710102e+03 -9.2083811e+02 -4.0886902e+03 - -3.4453263e+03 -9.8094101e+02 -4.0921734e+03 - -3.4179902e+03 -1.0414334e+03 -4.0957530e+03 - -3.3889933e+03 -1.1023150e+03 -4.0994088e+03 - -3.3583287e+03 -1.1635815e+03 -4.1031197e+03 - -3.3259922e+03 -1.2252237e+03 -4.1068635e+03 - -3.2919820e+03 -1.2872276e+03 -4.1106174e+03 - -3.2562996e+03 -1.3495742e+03 -4.1143580e+03 - -3.2189502e+03 -1.4122390e+03 -4.1180610e+03 - -3.1799426e+03 -1.4751921e+03 -4.1217022e+03 - -3.1392902e+03 -1.5383981e+03 -4.1252567e+03 - -3.0970112e+03 -1.6018156e+03 -4.1287000e+03 - -3.0531285e+03 -1.6653978e+03 -4.1320074e+03 - -3.0076706e+03 -1.7290923e+03 -4.1351551e+03 - -2.9606714e+03 -1.7928411e+03 -4.1381195e+03 - -2.9121704e+03 -1.8565809e+03 -4.1408782e+03 - -2.8622130e+03 -1.9202437e+03 -4.1434099e+03 - -2.8108500e+03 -1.9837567e+03 -4.1456946e+03 - -2.7581381e+03 -2.0470431e+03 -4.1477141e+03 - -2.7041393e+03 -2.1100227e+03 -4.1494521e+03 - -2.6489207e+03 -2.1726124e+03 -4.1508943e+03 - -2.5925542e+03 -2.2347266e+03 -4.1520287e+03 - -2.5351156e+03 -2.2962785e+03 -4.1528458e+03 - -2.4766849e+03 -2.3571804e+03 -4.1533389e+03 - -2.4173448e+03 -2.4173448e+03 -4.1535038e+03 - -2.3571804e+03 -2.4766849e+03 -4.1533389e+03 - -2.2962785e+03 -2.5351156e+03 -4.1528458e+03 - -2.2347266e+03 -2.5925542e+03 -4.1520287e+03 - -2.1726124e+03 -2.6489207e+03 -4.1508943e+03 - -2.1100227e+03 -2.7041393e+03 -4.1494521e+03 - -2.0470431e+03 -2.7581381e+03 -4.1477141e+03 - -1.9837567e+03 -2.8108500e+03 -4.1456946e+03 - -1.9202437e+03 -2.8622130e+03 -4.1434099e+03 - -1.8565809e+03 -2.9121704e+03 -4.1408782e+03 - -1.7928411e+03 -2.9606714e+03 -4.1381195e+03 - -1.7290923e+03 -3.0076706e+03 -4.1351551e+03 - -1.6653978e+03 -3.0531285e+03 -4.1320074e+03 - -1.6018156e+03 -3.0970112e+03 -4.1287000e+03 - -1.5383981e+03 -3.1392902e+03 -4.1252567e+03 - -1.4751921e+03 -3.1799426e+03 -4.1217022e+03 - -1.4122390e+03 -3.2189502e+03 -4.1180610e+03 - -1.3495742e+03 -3.2562996e+03 -4.1143580e+03 - -1.2872276e+03 -3.2919820e+03 -4.1106174e+03 - -1.2252237e+03 -3.3259922e+03 -4.1068635e+03 - -1.1635815e+03 -3.3583287e+03 -4.1031197e+03 - -1.1023150e+03 -3.3889933e+03 -4.0994088e+03 - -1.0414334e+03 -3.4179902e+03 -4.0957530e+03 - -9.8094101e+02 -3.4453263e+03 -4.0921734e+03 - -9.2083811e+02 -3.4710102e+03 -4.0886902e+03 - -8.6112080e+02 -3.4950520e+03 -4.0853223e+03 - -8.0178148e+02 -3.5174631e+03 -4.0820880e+03 - -7.4280911e+02 -3.5382556e+03 -4.0790041e+03 - -6.8418948e+02 -3.5574422e+03 -4.0760862e+03 - -6.2590557e+02 -3.5750357e+03 -4.0733489e+03 - -5.6793777e+02 -3.5910490e+03 -4.0708055e+03 - -5.1026415e+02 -3.6054943e+03 -4.0684682e+03 - -4.5286078e+02 -3.6183836e+03 -4.0663478e+03 - -3.9570191e+02 -3.6297281e+03 -4.0644542e+03 - -3.3876023e+02 -3.6395380e+03 -4.0627959e+03 - -2.8200710e+02 -3.6478225e+03 -4.0613803e+03 - -2.2541276e+02 -3.6545895e+03 -4.0602136e+03 - -1.6894654e+02 -3.6598456e+03 -4.0593009e+03 - -1.1257702e+02 -3.6635962e+03 -4.0586462e+03 - -5.6272274e+01 -3.6658450e+03 -4.0582522e+03 - 0.0000000e+00 -3.6665943e+03 -4.0581207e+03 - 5.6272274e+01 -3.6658450e+03 -4.0582522e+03 - 1.1257702e+02 -3.6635962e+03 -4.0586462e+03 - 1.6894654e+02 -3.6598456e+03 -4.0593009e+03 - 2.2541276e+02 -3.6545895e+03 -4.0602136e+03 - 2.8200710e+02 -3.6478225e+03 -4.0613803e+03 - 3.3876023e+02 -3.6395380e+03 -4.0627959e+03 - 3.9570191e+02 -3.6297281e+03 -4.0644542e+03 - 4.5286078e+02 -3.6183836e+03 -4.0663478e+03 - 5.1026415e+02 -3.6054943e+03 -4.0684682e+03 - 5.6793777e+02 -3.5910490e+03 -4.0708055e+03 - 6.2590557e+02 -3.5750357e+03 -4.0733489e+03 - 6.8418948e+02 -3.5574422e+03 -4.0760862e+03 - 7.4280911e+02 -3.5382556e+03 -4.0790041e+03 - 8.0178148e+02 -3.5174631e+03 -4.0820880e+03 - 8.6112080e+02 -3.4950520e+03 -4.0853223e+03 - 9.2083811e+02 -3.4710102e+03 -4.0886902e+03 - 9.8094101e+02 -3.4453263e+03 -4.0921734e+03 - 1.0414334e+03 -3.4179902e+03 -4.0957530e+03 - 1.1023150e+03 -3.3889933e+03 -4.0994088e+03 - 1.1635815e+03 -3.3583287e+03 -4.1031197e+03 - 1.2252237e+03 -3.3259922e+03 -4.1068635e+03 - 1.2872276e+03 -3.2919820e+03 -4.1106174e+03 - 1.3495742e+03 -3.2562996e+03 -4.1143580e+03 - 1.4122390e+03 -3.2189502e+03 -4.1180610e+03 - 1.4751921e+03 -3.1799426e+03 -4.1217022e+03 - 1.5383981e+03 -3.1392902e+03 -4.1252567e+03 - 1.6018156e+03 -3.0970112e+03 -4.1287000e+03 - 1.6653978e+03 -3.0531285e+03 -4.1320074e+03 - 1.7290923e+03 -3.0076706e+03 -4.1351551e+03 - 1.7928411e+03 -2.9606714e+03 -4.1381195e+03 - 1.8565809e+03 -2.9121704e+03 -4.1408782e+03 - 1.9202437e+03 -2.8622130e+03 -4.1434099e+03 - 1.9837567e+03 -2.8108500e+03 -4.1456946e+03 - 2.0470431e+03 -2.7581381e+03 -4.1477141e+03 - 2.1100227e+03 -2.7041393e+03 -4.1494521e+03 - 2.1726124e+03 -2.6489207e+03 -4.1508943e+03 - 2.2347266e+03 -2.5925542e+03 -4.1520287e+03 - 2.2962785e+03 -2.5351156e+03 -4.1528458e+03 - 2.3571804e+03 -2.4766849e+03 -4.1533389e+03 - 2.4173448e+03 -2.4173448e+03 -4.1535038e+03 - 2.4766849e+03 -2.3571804e+03 -4.1533389e+03 - 2.5351156e+03 -2.2962785e+03 -4.1528458e+03 - 2.5925542e+03 -2.2347266e+03 -4.1520287e+03 - 2.6489207e+03 -2.1726124e+03 -4.1508943e+03 - 2.7041393e+03 -2.1100227e+03 -4.1494521e+03 - 2.7581381e+03 -2.0470431e+03 -4.1477141e+03 - 2.8108500e+03 -1.9837567e+03 -4.1456946e+03 - 2.8622130e+03 -1.9202437e+03 -4.1434099e+03 - 2.9121704e+03 -1.8565809e+03 -4.1408782e+03 - 2.9606714e+03 -1.7928411e+03 -4.1381195e+03 - 3.0076706e+03 -1.7290923e+03 -4.1351551e+03 - 3.0531285e+03 -1.6653978e+03 -4.1320074e+03 - 3.0970112e+03 -1.6018156e+03 -4.1287000e+03 - 3.1392902e+03 -1.5383981e+03 -4.1252567e+03 - 3.1799426e+03 -1.4751921e+03 -4.1217022e+03 - 3.2189502e+03 -1.4122390e+03 -4.1180610e+03 - 3.2562996e+03 -1.3495742e+03 -4.1143580e+03 - 3.2919820e+03 -1.2872276e+03 -4.1106174e+03 - 3.3259922e+03 -1.2252237e+03 -4.1068635e+03 - 3.3583287e+03 -1.1635815e+03 -4.1031197e+03 - 3.3889933e+03 -1.1023150e+03 -4.0994088e+03 - 3.4179902e+03 -1.0414334e+03 -4.0957530e+03 - 3.4453263e+03 -9.8094101e+02 -4.0921734e+03 - 3.4710102e+03 -9.2083811e+02 -4.0886902e+03 - 3.4950520e+03 -8.6112080e+02 -4.0853223e+03 - 3.5174631e+03 -8.0178148e+02 -4.0820880e+03 - 3.5382556e+03 -7.4280911e+02 -4.0790041e+03 - 3.5574422e+03 -6.8418948e+02 -4.0760862e+03 - 3.5750357e+03 -6.2590557e+02 -4.0733489e+03 - 3.5910490e+03 -5.6793777e+02 -4.0708055e+03 - 3.6054943e+03 -5.1026415e+02 -4.0684682e+03 - 3.6183836e+03 -4.5286078e+02 -4.0663478e+03 - 3.6297281e+03 -3.9570191e+02 -4.0644542e+03 - 3.6395380e+03 -3.3876023e+02 -4.0627959e+03 - 3.6478225e+03 -2.8200710e+02 -4.0613803e+03 - 3.6545895e+03 -2.2541276e+02 -4.0602136e+03 - 3.6598456e+03 -1.6894654e+02 -4.0593009e+03 - 3.6635962e+03 -1.1257702e+02 -4.0586462e+03 - 3.6658450e+03 -5.6272274e+01 -4.0582522e+03 - 3.6665943e+03 -4.8134273e-09 -4.0581207e+03 - 3.6085369e+03 0.0000000e+00 -4.0960919e+03 - 3.6077952e+03 5.5981292e+01 -4.0962148e+03 - 3.6055692e+03 1.1199238e+02 -4.0965832e+03 - 3.6018571e+03 1.6806289e+02 -4.0971952e+03 - 3.5966554e+03 2.2422208e+02 -4.0980484e+03 - 3.5899594e+03 2.8049867e+02 -4.0991388e+03 - 3.5817634e+03 3.3692067e+02 -4.1004616e+03 - 3.5720603e+03 3.9351516e+02 -4.1020108e+03 - 3.5608422e+03 4.5030810e+02 -4.1037793e+03 - 3.5481000e+03 5.0732414e+02 -4.1057590e+03 - 3.5338242e+03 5.6458637e+02 -4.1079405e+03 - 3.5180043e+03 6.2211613e+02 -4.1103135e+03 - 3.5006299e+03 6.7993274e+02 -4.1128663e+03 - 3.4816899e+03 7.3805330e+02 -4.1155863e+03 - 3.4611735e+03 7.9649238e+02 -4.1184597e+03 - 3.4390702e+03 8.5526180e+02 -4.1214717e+03 - 3.4153701e+03 9.1437036e+02 -4.1246064e+03 - 3.3900639e+03 9.7382356e+02 -4.1278467e+03 - 3.3631439e+03 1.0336233e+03 -4.1311748e+03 - 3.3346036e+03 1.0937677e+03 -4.1345717e+03 - 3.3044385e+03 1.1542508e+03 -4.1380176e+03 - 3.2726464e+03 1.2150623e+03 -4.1414921e+03 - 3.2392276e+03 1.2761872e+03 -4.1449738e+03 - 3.2041856e+03 1.3376058e+03 -4.1484409e+03 - 3.1675269e+03 1.3992936e+03 -4.1518711e+03 - 3.1292621e+03 1.4612209e+03 -4.1552419e+03 - 3.0894055e+03 1.5233529e+03 -4.1585305e+03 - 3.0479760e+03 1.5856494e+03 -4.1617142e+03 - 3.0049970e+03 1.6480653e+03 -4.1647707e+03 - 2.9604968e+03 1.7105502e+03 -4.1676778e+03 - 2.9145088e+03 1.7730488e+03 -4.1704143e+03 - 2.8670713e+03 1.8355010e+03 -4.1729596e+03 - 2.8182281e+03 1.8978425e+03 -4.1752943e+03 - 2.7680281e+03 1.9600046e+03 -4.1774004e+03 - 2.7165250e+03 2.0219151e+03 -4.1792614e+03 - 2.6637776e+03 2.0834987e+03 -4.1808624e+03 - 2.6098493e+03 2.1446776e+03 -4.1821905e+03 - 2.5548076e+03 2.2053718e+03 -4.1832350e+03 - 2.4987240e+03 2.2655001e+03 -4.1839872e+03 - 2.4416730e+03 2.3249808e+03 -4.1844411e+03 - 2.3837321e+03 2.3837321e+03 -4.1845928e+03 - 2.3249808e+03 2.4416730e+03 -4.1844411e+03 - 2.2655001e+03 2.4987240e+03 -4.1839872e+03 - 2.2053718e+03 2.5548076e+03 -4.1832350e+03 - 2.1446776e+03 2.6098493e+03 -4.1821905e+03 - 2.0834987e+03 2.6637776e+03 -4.1808624e+03 - 2.0219151e+03 2.7165250e+03 -4.1792614e+03 - 1.9600046e+03 2.7680281e+03 -4.1774004e+03 - 1.8978425e+03 2.8182281e+03 -4.1752943e+03 - 1.8355010e+03 2.8670713e+03 -4.1729596e+03 - 1.7730488e+03 2.9145088e+03 -4.1704143e+03 - 1.7105502e+03 2.9604968e+03 -4.1676778e+03 - 1.6480653e+03 3.0049970e+03 -4.1647707e+03 - 1.5856494e+03 3.0479760e+03 -4.1617142e+03 - 1.5233529e+03 3.0894055e+03 -4.1585305e+03 - 1.4612209e+03 3.1292621e+03 -4.1552419e+03 - 1.3992936e+03 3.1675269e+03 -4.1518711e+03 - 1.3376058e+03 3.2041856e+03 -4.1484409e+03 - 1.2761872e+03 3.2392276e+03 -4.1449738e+03 - 1.2150623e+03 3.2726464e+03 -4.1414921e+03 - 1.1542508e+03 3.3044385e+03 -4.1380176e+03 - 1.0937677e+03 3.3346036e+03 -4.1345717e+03 - 1.0336233e+03 3.3631439e+03 -4.1311748e+03 - 9.7382356e+02 3.3900639e+03 -4.1278467e+03 - 9.1437036e+02 3.4153701e+03 -4.1246064e+03 - 8.5526180e+02 3.4390702e+03 -4.1214717e+03 - 7.9649238e+02 3.4611735e+03 -4.1184597e+03 - 7.3805330e+02 3.4816899e+03 -4.1155863e+03 - 6.7993274e+02 3.5006299e+03 -4.1128663e+03 - 6.2211613e+02 3.5180043e+03 -4.1103135e+03 - 5.6458637e+02 3.5338242e+03 -4.1079405e+03 - 5.0732414e+02 3.5481000e+03 -4.1057590e+03 - 4.5030810e+02 3.5608422e+03 -4.1037793e+03 - 3.9351516e+02 3.5720603e+03 -4.1020108e+03 - 3.3692067e+02 3.5817634e+03 -4.1004616e+03 - 2.8049867e+02 3.5899594e+03 -4.0991388e+03 - 2.2422208e+02 3.5966554e+03 -4.0980484e+03 - 1.6806289e+02 3.6018571e+03 -4.0971952e+03 - 1.1199238e+02 3.6055692e+03 -4.0965832e+03 - 5.5981292e+01 3.6077952e+03 -4.0962148e+03 - 0.0000000e+00 3.6085369e+03 -4.0960919e+03 - -5.5981292e+01 3.6077952e+03 -4.0962148e+03 - -1.1199238e+02 3.6055692e+03 -4.0965832e+03 - -1.6806289e+02 3.6018571e+03 -4.0971952e+03 - -2.2422208e+02 3.5966554e+03 -4.0980484e+03 - -2.8049867e+02 3.5899594e+03 -4.0991388e+03 - -3.3692067e+02 3.5817634e+03 -4.1004616e+03 - -3.9351516e+02 3.5720603e+03 -4.1020108e+03 - -4.5030810e+02 3.5608422e+03 -4.1037793e+03 - -5.0732414e+02 3.5481000e+03 -4.1057590e+03 - -5.6458637e+02 3.5338242e+03 -4.1079405e+03 - -6.2211613e+02 3.5180043e+03 -4.1103135e+03 - -6.7993274e+02 3.5006299e+03 -4.1128663e+03 - -7.3805330e+02 3.4816899e+03 -4.1155863e+03 - -7.9649238e+02 3.4611735e+03 -4.1184597e+03 - -8.5526180e+02 3.4390702e+03 -4.1214717e+03 - -9.1437036e+02 3.4153701e+03 -4.1246064e+03 - -9.7382356e+02 3.3900639e+03 -4.1278467e+03 - -1.0336233e+03 3.3631439e+03 -4.1311748e+03 - -1.0937677e+03 3.3346036e+03 -4.1345717e+03 - -1.1542508e+03 3.3044385e+03 -4.1380176e+03 - -1.2150623e+03 3.2726464e+03 -4.1414921e+03 - -1.2761872e+03 3.2392276e+03 -4.1449738e+03 - -1.3376058e+03 3.2041856e+03 -4.1484409e+03 - -1.3992936e+03 3.1675269e+03 -4.1518711e+03 - -1.4612209e+03 3.1292621e+03 -4.1552419e+03 - -1.5233529e+03 3.0894055e+03 -4.1585305e+03 - -1.5856494e+03 3.0479760e+03 -4.1617142e+03 - -1.6480653e+03 3.0049970e+03 -4.1647707e+03 - -1.7105502e+03 2.9604968e+03 -4.1676778e+03 - -1.7730488e+03 2.9145088e+03 -4.1704143e+03 - -1.8355010e+03 2.8670713e+03 -4.1729596e+03 - -1.8978425e+03 2.8182281e+03 -4.1752943e+03 - -1.9600046e+03 2.7680281e+03 -4.1774004e+03 - -2.0219151e+03 2.7165250e+03 -4.1792614e+03 - -2.0834987e+03 2.6637776e+03 -4.1808624e+03 - -2.1446776e+03 2.6098493e+03 -4.1821905e+03 - -2.2053718e+03 2.5548076e+03 -4.1832350e+03 - -2.2655001e+03 2.4987240e+03 -4.1839872e+03 - -2.3249808e+03 2.4416730e+03 -4.1844411e+03 - -2.3837321e+03 2.3837321e+03 -4.1845928e+03 - -2.4416730e+03 2.3249808e+03 -4.1844411e+03 - -2.4987240e+03 2.2655001e+03 -4.1839872e+03 - -2.5548076e+03 2.2053718e+03 -4.1832350e+03 - -2.6098493e+03 2.1446776e+03 -4.1821905e+03 - -2.6637776e+03 2.0834987e+03 -4.1808624e+03 - -2.7165250e+03 2.0219151e+03 -4.1792614e+03 - -2.7680281e+03 1.9600046e+03 -4.1774004e+03 - -2.8182281e+03 1.8978425e+03 -4.1752943e+03 - -2.8670713e+03 1.8355010e+03 -4.1729596e+03 - -2.9145088e+03 1.7730488e+03 -4.1704143e+03 - -2.9604968e+03 1.7105502e+03 -4.1676778e+03 - -3.0049970e+03 1.6480653e+03 -4.1647707e+03 - -3.0479760e+03 1.5856494e+03 -4.1617142e+03 - -3.0894055e+03 1.5233529e+03 -4.1585305e+03 - -3.1292621e+03 1.4612209e+03 -4.1552419e+03 - -3.1675269e+03 1.3992936e+03 -4.1518711e+03 - -3.2041856e+03 1.3376058e+03 -4.1484409e+03 - -3.2392276e+03 1.2761872e+03 -4.1449738e+03 - -3.2726464e+03 1.2150623e+03 -4.1414921e+03 - -3.3044385e+03 1.1542508e+03 -4.1380176e+03 - -3.3346036e+03 1.0937677e+03 -4.1345717e+03 - -3.3631439e+03 1.0336233e+03 -4.1311748e+03 - -3.3900639e+03 9.7382356e+02 -4.1278467e+03 - -3.4153701e+03 9.1437036e+02 -4.1246064e+03 - -3.4390702e+03 8.5526180e+02 -4.1214717e+03 - -3.4611735e+03 7.9649238e+02 -4.1184597e+03 - -3.4816899e+03 7.3805330e+02 -4.1155863e+03 - -3.5006299e+03 6.7993274e+02 -4.1128663e+03 - -3.5180043e+03 6.2211613e+02 -4.1103135e+03 - -3.5338242e+03 5.6458637e+02 -4.1079405e+03 - -3.5481000e+03 5.0732414e+02 -4.1057590e+03 - -3.5608422e+03 4.5030810e+02 -4.1037793e+03 - -3.5720603e+03 3.9351516e+02 -4.1020108e+03 - -3.5817634e+03 3.3692067e+02 -4.1004616e+03 - -3.5899594e+03 2.8049867e+02 -4.0991388e+03 - -3.5966554e+03 2.2422208e+02 -4.0980484e+03 - -3.6018571e+03 1.6806289e+02 -4.0971952e+03 - -3.6055692e+03 1.1199238e+02 -4.0965832e+03 - -3.6077952e+03 5.5981292e+01 -4.0962148e+03 - -3.6085369e+03 0.0000000e+00 -4.0960919e+03 - -3.6077952e+03 -5.5981292e+01 -4.0962148e+03 - -3.6055692e+03 -1.1199238e+02 -4.0965832e+03 - -3.6018571e+03 -1.6806289e+02 -4.0971952e+03 - -3.5966554e+03 -2.2422208e+02 -4.0980484e+03 - -3.5899594e+03 -2.8049867e+02 -4.0991388e+03 - -3.5817634e+03 -3.3692067e+02 -4.1004616e+03 - -3.5720603e+03 -3.9351516e+02 -4.1020108e+03 - -3.5608422e+03 -4.5030810e+02 -4.1037793e+03 - -3.5481000e+03 -5.0732414e+02 -4.1057590e+03 - -3.5338242e+03 -5.6458637e+02 -4.1079405e+03 - -3.5180043e+03 -6.2211613e+02 -4.1103135e+03 - -3.5006299e+03 -6.7993274e+02 -4.1128663e+03 - -3.4816899e+03 -7.3805330e+02 -4.1155863e+03 - -3.4611735e+03 -7.9649238e+02 -4.1184597e+03 - -3.4390702e+03 -8.5526180e+02 -4.1214717e+03 - -3.4153701e+03 -9.1437036e+02 -4.1246064e+03 - -3.3900639e+03 -9.7382356e+02 -4.1278467e+03 - -3.3631439e+03 -1.0336233e+03 -4.1311748e+03 - -3.3346036e+03 -1.0937677e+03 -4.1345717e+03 - -3.3044385e+03 -1.1542508e+03 -4.1380176e+03 - -3.2726464e+03 -1.2150623e+03 -4.1414921e+03 - -3.2392276e+03 -1.2761872e+03 -4.1449738e+03 - -3.2041856e+03 -1.3376058e+03 -4.1484409e+03 - -3.1675269e+03 -1.3992936e+03 -4.1518711e+03 - -3.1292621e+03 -1.4612209e+03 -4.1552419e+03 - -3.0894055e+03 -1.5233529e+03 -4.1585305e+03 - -3.0479760e+03 -1.5856494e+03 -4.1617142e+03 - -3.0049970e+03 -1.6480653e+03 -4.1647707e+03 - -2.9604968e+03 -1.7105502e+03 -4.1676778e+03 - -2.9145088e+03 -1.7730488e+03 -4.1704143e+03 - -2.8670713e+03 -1.8355010e+03 -4.1729596e+03 - -2.8182281e+03 -1.8978425e+03 -4.1752943e+03 - -2.7680281e+03 -1.9600046e+03 -4.1774004e+03 - -2.7165250e+03 -2.0219151e+03 -4.1792614e+03 - -2.6637776e+03 -2.0834987e+03 -4.1808624e+03 - -2.6098493e+03 -2.1446776e+03 -4.1821905e+03 - -2.5548076e+03 -2.2053718e+03 -4.1832350e+03 - -2.4987240e+03 -2.2655001e+03 -4.1839872e+03 - -2.4416730e+03 -2.3249808e+03 -4.1844411e+03 - -2.3837321e+03 -2.3837321e+03 -4.1845928e+03 - -2.3249808e+03 -2.4416730e+03 -4.1844411e+03 - -2.2655001e+03 -2.4987240e+03 -4.1839872e+03 - -2.2053718e+03 -2.5548076e+03 -4.1832350e+03 - -2.1446776e+03 -2.6098493e+03 -4.1821905e+03 - -2.0834987e+03 -2.6637776e+03 -4.1808624e+03 - -2.0219151e+03 -2.7165250e+03 -4.1792614e+03 - -1.9600046e+03 -2.7680281e+03 -4.1774004e+03 - -1.8978425e+03 -2.8182281e+03 -4.1752943e+03 - -1.8355010e+03 -2.8670713e+03 -4.1729596e+03 - -1.7730488e+03 -2.9145088e+03 -4.1704143e+03 - -1.7105502e+03 -2.9604968e+03 -4.1676778e+03 - -1.6480653e+03 -3.0049970e+03 -4.1647707e+03 - -1.5856494e+03 -3.0479760e+03 -4.1617142e+03 - -1.5233529e+03 -3.0894055e+03 -4.1585305e+03 - -1.4612209e+03 -3.1292621e+03 -4.1552419e+03 - -1.3992936e+03 -3.1675269e+03 -4.1518711e+03 - -1.3376058e+03 -3.2041856e+03 -4.1484409e+03 - -1.2761872e+03 -3.2392276e+03 -4.1449738e+03 - -1.2150623e+03 -3.2726464e+03 -4.1414921e+03 - -1.1542508e+03 -3.3044385e+03 -4.1380176e+03 - -1.0937677e+03 -3.3346036e+03 -4.1345717e+03 - -1.0336233e+03 -3.3631439e+03 -4.1311748e+03 - -9.7382356e+02 -3.3900639e+03 -4.1278467e+03 - -9.1437036e+02 -3.4153701e+03 -4.1246064e+03 - -8.5526180e+02 -3.4390702e+03 -4.1214717e+03 - -7.9649238e+02 -3.4611735e+03 -4.1184597e+03 - -7.3805330e+02 -3.4816899e+03 -4.1155863e+03 - -6.7993274e+02 -3.5006299e+03 -4.1128663e+03 - -6.2211613e+02 -3.5180043e+03 -4.1103135e+03 - -5.6458637e+02 -3.5338242e+03 -4.1079405e+03 - -5.0732414e+02 -3.5481000e+03 -4.1057590e+03 - -4.5030810e+02 -3.5608422e+03 -4.1037793e+03 - -3.9351516e+02 -3.5720603e+03 -4.1020108e+03 - -3.3692067e+02 -3.5817634e+03 -4.1004616e+03 - -2.8049867e+02 -3.5899594e+03 -4.0991388e+03 - -2.2422208e+02 -3.5966554e+03 -4.0980484e+03 - -1.6806289e+02 -3.6018571e+03 -4.0971952e+03 - -1.1199238e+02 -3.6055692e+03 -4.0965832e+03 - -5.5981292e+01 -3.6077952e+03 -4.0962148e+03 - 0.0000000e+00 -3.6085369e+03 -4.0960919e+03 - 5.5981292e+01 -3.6077952e+03 -4.0962148e+03 - 1.1199238e+02 -3.6055692e+03 -4.0965832e+03 - 1.6806289e+02 -3.6018571e+03 -4.0971952e+03 - 2.2422208e+02 -3.5966554e+03 -4.0980484e+03 - 2.8049867e+02 -3.5899594e+03 -4.0991388e+03 - 3.3692067e+02 -3.5817634e+03 -4.1004616e+03 - 3.9351516e+02 -3.5720603e+03 -4.1020108e+03 - 4.5030810e+02 -3.5608422e+03 -4.1037793e+03 - 5.0732414e+02 -3.5481000e+03 -4.1057590e+03 - 5.6458637e+02 -3.5338242e+03 -4.1079405e+03 - 6.2211613e+02 -3.5180043e+03 -4.1103135e+03 - 6.7993274e+02 -3.5006299e+03 -4.1128663e+03 - 7.3805330e+02 -3.4816899e+03 -4.1155863e+03 - 7.9649238e+02 -3.4611735e+03 -4.1184597e+03 - 8.5526180e+02 -3.4390702e+03 -4.1214717e+03 - 9.1437036e+02 -3.4153701e+03 -4.1246064e+03 - 9.7382356e+02 -3.3900639e+03 -4.1278467e+03 - 1.0336233e+03 -3.3631439e+03 -4.1311748e+03 - 1.0937677e+03 -3.3346036e+03 -4.1345717e+03 - 1.1542508e+03 -3.3044385e+03 -4.1380176e+03 - 1.2150623e+03 -3.2726464e+03 -4.1414921e+03 - 1.2761872e+03 -3.2392276e+03 -4.1449738e+03 - 1.3376058e+03 -3.2041856e+03 -4.1484409e+03 - 1.3992936e+03 -3.1675269e+03 -4.1518711e+03 - 1.4612209e+03 -3.1292621e+03 -4.1552419e+03 - 1.5233529e+03 -3.0894055e+03 -4.1585305e+03 - 1.5856494e+03 -3.0479760e+03 -4.1617142e+03 - 1.6480653e+03 -3.0049970e+03 -4.1647707e+03 - 1.7105502e+03 -2.9604968e+03 -4.1676778e+03 - 1.7730488e+03 -2.9145088e+03 -4.1704143e+03 - 1.8355010e+03 -2.8670713e+03 -4.1729596e+03 - 1.8978425e+03 -2.8182281e+03 -4.1752943e+03 - 1.9600046e+03 -2.7680281e+03 -4.1774004e+03 - 2.0219151e+03 -2.7165250e+03 -4.1792614e+03 - 2.0834987e+03 -2.6637776e+03 -4.1808624e+03 - 2.1446776e+03 -2.6098493e+03 -4.1821905e+03 - 2.2053718e+03 -2.5548076e+03 -4.1832350e+03 - 2.2655001e+03 -2.4987240e+03 -4.1839872e+03 - 2.3249808e+03 -2.4416730e+03 -4.1844411e+03 - 2.3837321e+03 -2.3837321e+03 -4.1845928e+03 - 2.4416730e+03 -2.3249808e+03 -4.1844411e+03 - 2.4987240e+03 -2.2655001e+03 -4.1839872e+03 - 2.5548076e+03 -2.2053718e+03 -4.1832350e+03 - 2.6098493e+03 -2.1446776e+03 -4.1821905e+03 - 2.6637776e+03 -2.0834987e+03 -4.1808624e+03 - 2.7165250e+03 -2.0219151e+03 -4.1792614e+03 - 2.7680281e+03 -1.9600046e+03 -4.1774004e+03 - 2.8182281e+03 -1.8978425e+03 -4.1752943e+03 - 2.8670713e+03 -1.8355010e+03 -4.1729596e+03 - 2.9145088e+03 -1.7730488e+03 -4.1704143e+03 - 2.9604968e+03 -1.7105502e+03 -4.1676778e+03 - 3.0049970e+03 -1.6480653e+03 -4.1647707e+03 - 3.0479760e+03 -1.5856494e+03 -4.1617142e+03 - 3.0894055e+03 -1.5233529e+03 -4.1585305e+03 - 3.1292621e+03 -1.4612209e+03 -4.1552419e+03 - 3.1675269e+03 -1.3992936e+03 -4.1518711e+03 - 3.2041856e+03 -1.3376058e+03 -4.1484409e+03 - 3.2392276e+03 -1.2761872e+03 -4.1449738e+03 - 3.2726464e+03 -1.2150623e+03 -4.1414921e+03 - 3.3044385e+03 -1.1542508e+03 -4.1380176e+03 - 3.3346036e+03 -1.0937677e+03 -4.1345717e+03 - 3.3631439e+03 -1.0336233e+03 -4.1311748e+03 - 3.3900639e+03 -9.7382356e+02 -4.1278467e+03 - 3.4153701e+03 -9.1437036e+02 -4.1246064e+03 - 3.4390702e+03 -8.5526180e+02 -4.1214717e+03 - 3.4611735e+03 -7.9649238e+02 -4.1184597e+03 - 3.4816899e+03 -7.3805330e+02 -4.1155863e+03 - 3.5006299e+03 -6.7993274e+02 -4.1128663e+03 - 3.5180043e+03 -6.2211613e+02 -4.1103135e+03 - 3.5338242e+03 -5.6458637e+02 -4.1079405e+03 - 3.5481000e+03 -5.0732414e+02 -4.1057590e+03 - 3.5608422e+03 -4.5030810e+02 -4.1037793e+03 - 3.5720603e+03 -3.9351516e+02 -4.1020108e+03 - 3.5817634e+03 -3.3692067e+02 -4.1004616e+03 - 3.5899594e+03 -2.8049867e+02 -4.0991388e+03 - 3.5966554e+03 -2.2422208e+02 -4.0980484e+03 - 3.6018571e+03 -1.6806289e+02 -4.0971952e+03 - 3.6055692e+03 -1.1199238e+02 -4.0965832e+03 - 3.6077952e+03 -5.5981292e+01 -4.0962148e+03 - 3.6085369e+03 0.0000000e+00 -4.0960919e+03 - 3.5486030e+03 0.0000000e+00 -4.1336309e+03 - 3.5478697e+03 5.5647091e+01 -4.1337455e+03 - 3.5456690e+03 1.1132129e+02 -4.1340887e+03 - 3.5419993e+03 1.6704953e+02 -4.1346590e+03 - 3.5368576e+03 2.2285838e+02 -4.1354537e+03 - 3.5302398e+03 2.7877389e+02 -4.1364694e+03 - 3.5221410e+03 3.3482137e+02 -4.1377012e+03 - 3.5125550e+03 3.9102524e+02 -4.1391436e+03 - 3.5014749e+03 4.4740882e+02 -4.1407897e+03 - 3.4888931e+03 5.0399409e+02 -4.1426318e+03 - 3.4748014e+03 5.6080156e+02 -4.1446610e+03 - 3.4591909e+03 6.1784998e+02 -4.1468674e+03 - 3.4420528e+03 6.7515616e+02 -4.1492401e+03 - 3.4233778e+03 7.3273474e+02 -4.1517671e+03 - 3.4031572e+03 7.9059793e+02 -4.1544354e+03 - 3.3813824e+03 8.4875528e+02 -4.1572310e+03 - 3.3580454e+03 9.0721345e+02 -4.1601390e+03 - 3.3331393e+03 9.6597594e+02 -4.1631433e+03 - 3.3066583e+03 1.0250429e+03 -4.1662273e+03 - 3.2785981e+03 1.0844108e+03 -4.1693732e+03 - 3.2489562e+03 1.1440723e+03 -4.1725627e+03 - 3.2177325e+03 1.2040160e+03 -4.1757767e+03 - 3.1849292e+03 1.2642262e+03 -4.1789954e+03 - 3.1505512e+03 1.3246828e+03 -4.1821987e+03 - 3.1146067e+03 1.3853612e+03 -4.1853659e+03 - 3.0771075e+03 1.4462321e+03 -4.1884765e+03 - 3.0380688e+03 1.5072613e+03 -4.1915094e+03 - 2.9975101e+03 1.5684100e+03 -4.1944439e+03 - 2.9554550e+03 1.6296348e+03 -4.1972595e+03 - 2.9119316e+03 1.6908873e+03 -4.1999361e+03 - 2.8669726e+03 1.7521151e+03 -4.2024543e+03 - 2.8206152e+03 1.8132611e+03 -4.2047955e+03 - 2.7729015e+03 1.8742646e+03 -4.2069420e+03 - 2.7238782e+03 1.9350610e+03 -4.2088776e+03 - 2.6735964e+03 1.9955825e+03 -4.2105873e+03 - 2.6221118e+03 2.0557585e+03 -4.2120576e+03 - 2.5694840e+03 2.1155162e+03 -4.2132770e+03 - 2.5157766e+03 2.1747811e+03 -4.2142358e+03 - 2.4610563e+03 2.2334774e+03 -4.2149262e+03 - 2.4053931e+03 2.2915288e+03 -4.2153427e+03 - 2.3488592e+03 2.3488592e+03 -4.2154819e+03 - 2.2915288e+03 2.4053931e+03 -4.2153427e+03 - 2.2334774e+03 2.4610563e+03 -4.2149262e+03 - 2.1747811e+03 2.5157766e+03 -4.2142358e+03 - 2.1155162e+03 2.5694840e+03 -4.2132770e+03 - 2.0557585e+03 2.6221118e+03 -4.2120576e+03 - 1.9955825e+03 2.6735964e+03 -4.2105873e+03 - 1.9350610e+03 2.7238782e+03 -4.2088776e+03 - 1.8742646e+03 2.7729015e+03 -4.2069420e+03 - 1.8132611e+03 2.8206152e+03 -4.2047955e+03 - 1.7521151e+03 2.8669726e+03 -4.2024543e+03 - 1.6908873e+03 2.9119316e+03 -4.1999361e+03 - 1.6296348e+03 2.9554550e+03 -4.1972595e+03 - 1.5684100e+03 2.9975101e+03 -4.1944439e+03 - 1.5072613e+03 3.0380688e+03 -4.1915094e+03 - 1.4462321e+03 3.0771075e+03 -4.1884765e+03 - 1.3853612e+03 3.1146067e+03 -4.1853659e+03 - 1.3246828e+03 3.1505512e+03 -4.1821987e+03 - 1.2642262e+03 3.1849292e+03 -4.1789954e+03 - 1.2040160e+03 3.2177325e+03 -4.1757767e+03 - 1.1440723e+03 3.2489562e+03 -4.1725627e+03 - 1.0844108e+03 3.2785981e+03 -4.1693732e+03 - 1.0250429e+03 3.3066583e+03 -4.1662273e+03 - 9.6597594e+02 3.3331393e+03 -4.1631433e+03 - 9.0721345e+02 3.3580454e+03 -4.1601390e+03 - 8.4875528e+02 3.3813824e+03 -4.1572310e+03 - 7.9059793e+02 3.4031572e+03 -4.1544354e+03 - 7.3273474e+02 3.4233778e+03 -4.1517671e+03 - 6.7515616e+02 3.4420528e+03 -4.1492401e+03 - 6.1784998e+02 3.4591909e+03 -4.1468674e+03 - 5.6080156e+02 3.4748014e+03 -4.1446610e+03 - 5.0399409e+02 3.4888931e+03 -4.1426318e+03 - 4.4740882e+02 3.5014749e+03 -4.1407897e+03 - 3.9102524e+02 3.5125550e+03 -4.1391436e+03 - 3.3482137e+02 3.5221410e+03 -4.1377012e+03 - 2.7877389e+02 3.5302398e+03 -4.1364694e+03 - 2.2285838e+02 3.5368576e+03 -4.1354537e+03 - 1.6704953e+02 3.5419993e+03 -4.1346590e+03 - 1.1132129e+02 3.5456690e+03 -4.1340887e+03 - 5.5647091e+01 3.5478697e+03 -4.1337455e+03 - 0.0000000e+00 3.5486030e+03 -4.1336309e+03 - -5.5647091e+01 3.5478697e+03 -4.1337455e+03 - -1.1132129e+02 3.5456690e+03 -4.1340887e+03 - -1.6704953e+02 3.5419993e+03 -4.1346590e+03 - -2.2285838e+02 3.5368576e+03 -4.1354537e+03 - -2.7877389e+02 3.5302398e+03 -4.1364694e+03 - -3.3482137e+02 3.5221410e+03 -4.1377012e+03 - -3.9102524e+02 3.5125550e+03 -4.1391436e+03 - -4.4740882e+02 3.5014749e+03 -4.1407897e+03 - -5.0399409e+02 3.4888931e+03 -4.1426318e+03 - -5.6080156e+02 3.4748014e+03 -4.1446610e+03 - -6.1784998e+02 3.4591909e+03 -4.1468674e+03 - -6.7515616e+02 3.4420528e+03 -4.1492401e+03 - -7.3273474e+02 3.4233778e+03 -4.1517671e+03 - -7.9059793e+02 3.4031572e+03 -4.1544354e+03 - -8.4875528e+02 3.3813824e+03 -4.1572310e+03 - -9.0721345e+02 3.3580454e+03 -4.1601390e+03 - -9.6597594e+02 3.3331393e+03 -4.1631433e+03 - -1.0250429e+03 3.3066583e+03 -4.1662273e+03 - -1.0844108e+03 3.2785981e+03 -4.1693732e+03 - -1.1440723e+03 3.2489562e+03 -4.1725627e+03 - -1.2040160e+03 3.2177325e+03 -4.1757767e+03 - -1.2642262e+03 3.1849292e+03 -4.1789954e+03 - -1.3246828e+03 3.1505512e+03 -4.1821987e+03 - -1.3853612e+03 3.1146067e+03 -4.1853659e+03 - -1.4462321e+03 3.0771075e+03 -4.1884765e+03 - -1.5072613e+03 3.0380688e+03 -4.1915094e+03 - -1.5684100e+03 2.9975101e+03 -4.1944439e+03 - -1.6296348e+03 2.9554550e+03 -4.1972595e+03 - -1.6908873e+03 2.9119316e+03 -4.1999361e+03 - -1.7521151e+03 2.8669726e+03 -4.2024543e+03 - -1.8132611e+03 2.8206152e+03 -4.2047955e+03 - -1.8742646e+03 2.7729015e+03 -4.2069420e+03 - -1.9350610e+03 2.7238782e+03 -4.2088776e+03 - -1.9955825e+03 2.6735964e+03 -4.2105873e+03 - -2.0557585e+03 2.6221118e+03 -4.2120576e+03 - -2.1155162e+03 2.5694840e+03 -4.2132770e+03 - -2.1747811e+03 2.5157766e+03 -4.2142358e+03 - -2.2334774e+03 2.4610563e+03 -4.2149262e+03 - -2.2915288e+03 2.4053931e+03 -4.2153427e+03 - -2.3488592e+03 2.3488592e+03 -4.2154819e+03 - -2.4053931e+03 2.2915288e+03 -4.2153427e+03 - -2.4610563e+03 2.2334774e+03 -4.2149262e+03 - -2.5157766e+03 2.1747811e+03 -4.2142358e+03 - -2.5694840e+03 2.1155162e+03 -4.2132770e+03 - -2.6221118e+03 2.0557585e+03 -4.2120576e+03 - -2.6735964e+03 1.9955825e+03 -4.2105873e+03 - -2.7238782e+03 1.9350610e+03 -4.2088776e+03 - -2.7729015e+03 1.8742646e+03 -4.2069420e+03 - -2.8206152e+03 1.8132611e+03 -4.2047955e+03 - -2.8669726e+03 1.7521151e+03 -4.2024543e+03 - -2.9119316e+03 1.6908873e+03 -4.1999361e+03 - -2.9554550e+03 1.6296348e+03 -4.1972595e+03 - -2.9975101e+03 1.5684100e+03 -4.1944439e+03 - -3.0380688e+03 1.5072613e+03 -4.1915094e+03 - -3.0771075e+03 1.4462321e+03 -4.1884765e+03 - -3.1146067e+03 1.3853612e+03 -4.1853659e+03 - -3.1505512e+03 1.3246828e+03 -4.1821987e+03 - -3.1849292e+03 1.2642262e+03 -4.1789954e+03 - -3.2177325e+03 1.2040160e+03 -4.1757767e+03 - -3.2489562e+03 1.1440723e+03 -4.1725627e+03 - -3.2785981e+03 1.0844108e+03 -4.1693732e+03 - -3.3066583e+03 1.0250429e+03 -4.1662273e+03 - -3.3331393e+03 9.6597594e+02 -4.1631433e+03 - -3.3580454e+03 9.0721345e+02 -4.1601390e+03 - -3.3813824e+03 8.4875528e+02 -4.1572310e+03 - -3.4031572e+03 7.9059793e+02 -4.1544354e+03 - -3.4233778e+03 7.3273474e+02 -4.1517671e+03 - -3.4420528e+03 6.7515616e+02 -4.1492401e+03 - -3.4591909e+03 6.1784998e+02 -4.1468674e+03 - -3.4748014e+03 5.6080156e+02 -4.1446610e+03 - -3.4888931e+03 5.0399409e+02 -4.1426318e+03 - -3.5014749e+03 4.4740882e+02 -4.1407897e+03 - -3.5125550e+03 3.9102524e+02 -4.1391436e+03 - -3.5221410e+03 3.3482137e+02 -4.1377012e+03 - -3.5302398e+03 2.7877389e+02 -4.1364694e+03 - -3.5368576e+03 2.2285838e+02 -4.1354537e+03 - -3.5419993e+03 1.6704953e+02 -4.1346590e+03 - -3.5456690e+03 1.1132129e+02 -4.1340887e+03 - -3.5478697e+03 5.5647091e+01 -4.1337455e+03 - -3.5486030e+03 0.0000000e+00 -4.1336309e+03 - -3.5478697e+03 -5.5647091e+01 -4.1337455e+03 - -3.5456690e+03 -1.1132129e+02 -4.1340887e+03 - -3.5419993e+03 -1.6704953e+02 -4.1346590e+03 - -3.5368576e+03 -2.2285838e+02 -4.1354537e+03 - -3.5302398e+03 -2.7877389e+02 -4.1364694e+03 - -3.5221410e+03 -3.3482137e+02 -4.1377012e+03 - -3.5125550e+03 -3.9102524e+02 -4.1391436e+03 - -3.5014749e+03 -4.4740882e+02 -4.1407897e+03 - -3.4888931e+03 -5.0399409e+02 -4.1426318e+03 - -3.4748014e+03 -5.6080156e+02 -4.1446610e+03 - -3.4591909e+03 -6.1784998e+02 -4.1468674e+03 - -3.4420528e+03 -6.7515616e+02 -4.1492401e+03 - -3.4233778e+03 -7.3273474e+02 -4.1517671e+03 - -3.4031572e+03 -7.9059793e+02 -4.1544354e+03 - -3.3813824e+03 -8.4875528e+02 -4.1572310e+03 - -3.3580454e+03 -9.0721345e+02 -4.1601390e+03 - -3.3331393e+03 -9.6597594e+02 -4.1631433e+03 - -3.3066583e+03 -1.0250429e+03 -4.1662273e+03 - -3.2785981e+03 -1.0844108e+03 -4.1693732e+03 - -3.2489562e+03 -1.1440723e+03 -4.1725627e+03 - -3.2177325e+03 -1.2040160e+03 -4.1757767e+03 - -3.1849292e+03 -1.2642262e+03 -4.1789954e+03 - -3.1505512e+03 -1.3246828e+03 -4.1821987e+03 - -3.1146067e+03 -1.3853612e+03 -4.1853659e+03 - -3.0771075e+03 -1.4462321e+03 -4.1884765e+03 - -3.0380688e+03 -1.5072613e+03 -4.1915094e+03 - -2.9975101e+03 -1.5684100e+03 -4.1944439e+03 - -2.9554550e+03 -1.6296348e+03 -4.1972595e+03 - -2.9119316e+03 -1.6908873e+03 -4.1999361e+03 - -2.8669726e+03 -1.7521151e+03 -4.2024543e+03 - -2.8206152e+03 -1.8132611e+03 -4.2047955e+03 - -2.7729015e+03 -1.8742646e+03 -4.2069420e+03 - -2.7238782e+03 -1.9350610e+03 -4.2088776e+03 - -2.6735964e+03 -1.9955825e+03 -4.2105873e+03 - -2.6221118e+03 -2.0557585e+03 -4.2120576e+03 - -2.5694840e+03 -2.1155162e+03 -4.2132770e+03 - -2.5157766e+03 -2.1747811e+03 -4.2142358e+03 - -2.4610563e+03 -2.2334774e+03 -4.2149262e+03 - -2.4053931e+03 -2.2915288e+03 -4.2153427e+03 - -2.3488592e+03 -2.3488592e+03 -4.2154819e+03 - -2.2915288e+03 -2.4053931e+03 -4.2153427e+03 - -2.2334774e+03 -2.4610563e+03 -4.2149262e+03 - -2.1747811e+03 -2.5157766e+03 -4.2142358e+03 - -2.1155162e+03 -2.5694840e+03 -4.2132770e+03 - -2.0557585e+03 -2.6221118e+03 -4.2120576e+03 - -1.9955825e+03 -2.6735964e+03 -4.2105873e+03 - -1.9350610e+03 -2.7238782e+03 -4.2088776e+03 - -1.8742646e+03 -2.7729015e+03 -4.2069420e+03 - -1.8132611e+03 -2.8206152e+03 -4.2047955e+03 - -1.7521151e+03 -2.8669726e+03 -4.2024543e+03 - -1.6908873e+03 -2.9119316e+03 -4.1999361e+03 - -1.6296348e+03 -2.9554550e+03 -4.1972595e+03 - -1.5684100e+03 -2.9975101e+03 -4.1944439e+03 - -1.5072613e+03 -3.0380688e+03 -4.1915094e+03 - -1.4462321e+03 -3.0771075e+03 -4.1884765e+03 - -1.3853612e+03 -3.1146067e+03 -4.1853659e+03 - -1.3246828e+03 -3.1505512e+03 -4.1821987e+03 - -1.2642262e+03 -3.1849292e+03 -4.1789954e+03 - -1.2040160e+03 -3.2177325e+03 -4.1757767e+03 - -1.1440723e+03 -3.2489562e+03 -4.1725627e+03 - -1.0844108e+03 -3.2785981e+03 -4.1693732e+03 - -1.0250429e+03 -3.3066583e+03 -4.1662273e+03 - -9.6597594e+02 -3.3331393e+03 -4.1631433e+03 - -9.0721345e+02 -3.3580454e+03 -4.1601390e+03 - -8.4875528e+02 -3.3813824e+03 -4.1572310e+03 - -7.9059793e+02 -3.4031572e+03 -4.1544354e+03 - -7.3273474e+02 -3.4233778e+03 -4.1517671e+03 - -6.7515616e+02 -3.4420528e+03 -4.1492401e+03 - -6.1784998e+02 -3.4591909e+03 -4.1468674e+03 - -5.6080156e+02 -3.4748014e+03 -4.1446610e+03 - -5.0399409e+02 -3.4888931e+03 -4.1426318e+03 - -4.4740882e+02 -3.5014749e+03 -4.1407897e+03 - -3.9102524e+02 -3.5125550e+03 -4.1391436e+03 - -3.3482137e+02 -3.5221410e+03 -4.1377012e+03 - -2.7877389e+02 -3.5302398e+03 -4.1364694e+03 - -2.2285838e+02 -3.5368576e+03 -4.1354537e+03 - -1.6704953e+02 -3.5419993e+03 -4.1346590e+03 - -1.1132129e+02 -3.5456690e+03 -4.1340887e+03 - -5.5647091e+01 -3.5478697e+03 -4.1337455e+03 - 0.0000000e+00 -3.5486030e+03 -4.1336309e+03 - 5.5647091e+01 -3.5478697e+03 -4.1337455e+03 - 1.1132129e+02 -3.5456690e+03 -4.1340887e+03 - 1.6704953e+02 -3.5419993e+03 -4.1346590e+03 - 2.2285838e+02 -3.5368576e+03 -4.1354537e+03 - 2.7877389e+02 -3.5302398e+03 -4.1364694e+03 - 3.3482137e+02 -3.5221410e+03 -4.1377012e+03 - 3.9102524e+02 -3.5125550e+03 -4.1391436e+03 - 4.4740882e+02 -3.5014749e+03 -4.1407897e+03 - 5.0399409e+02 -3.4888931e+03 -4.1426318e+03 - 5.6080156e+02 -3.4748014e+03 -4.1446610e+03 - 6.1784998e+02 -3.4591909e+03 -4.1468674e+03 - 6.7515616e+02 -3.4420528e+03 -4.1492401e+03 - 7.3273474e+02 -3.4233778e+03 -4.1517671e+03 - 7.9059793e+02 -3.4031572e+03 -4.1544354e+03 - 8.4875528e+02 -3.3813824e+03 -4.1572310e+03 - 9.0721345e+02 -3.3580454e+03 -4.1601390e+03 - 9.6597594e+02 -3.3331393e+03 -4.1631433e+03 - 1.0250429e+03 -3.3066583e+03 -4.1662273e+03 - 1.0844108e+03 -3.2785981e+03 -4.1693732e+03 - 1.1440723e+03 -3.2489562e+03 -4.1725627e+03 - 1.2040160e+03 -3.2177325e+03 -4.1757767e+03 - 1.2642262e+03 -3.1849292e+03 -4.1789954e+03 - 1.3246828e+03 -3.1505512e+03 -4.1821987e+03 - 1.3853612e+03 -3.1146067e+03 -4.1853659e+03 - 1.4462321e+03 -3.0771075e+03 -4.1884765e+03 - 1.5072613e+03 -3.0380688e+03 -4.1915094e+03 - 1.5684100e+03 -2.9975101e+03 -4.1944439e+03 - 1.6296348e+03 -2.9554550e+03 -4.1972595e+03 - 1.6908873e+03 -2.9119316e+03 -4.1999361e+03 - 1.7521151e+03 -2.8669726e+03 -4.2024543e+03 - 1.8132611e+03 -2.8206152e+03 -4.2047955e+03 - 1.8742646e+03 -2.7729015e+03 -4.2069420e+03 - 1.9350610e+03 -2.7238782e+03 -4.2088776e+03 - 1.9955825e+03 -2.6735964e+03 -4.2105873e+03 - 2.0557585e+03 -2.6221118e+03 -4.2120576e+03 - 2.1155162e+03 -2.5694840e+03 -4.2132770e+03 - 2.1747811e+03 -2.5157766e+03 -4.2142358e+03 - 2.2334774e+03 -2.4610563e+03 -4.2149262e+03 - 2.2915288e+03 -2.4053931e+03 -4.2153427e+03 - 2.3488592e+03 -2.3488592e+03 -4.2154819e+03 - 2.4053931e+03 -2.2915288e+03 -4.2153427e+03 - 2.4610563e+03 -2.2334774e+03 -4.2149262e+03 - 2.5157766e+03 -2.1747811e+03 -4.2142358e+03 - 2.5694840e+03 -2.1155162e+03 -4.2132770e+03 - 2.6221118e+03 -2.0557585e+03 -4.2120576e+03 - 2.6735964e+03 -1.9955825e+03 -4.2105873e+03 - 2.7238782e+03 -1.9350610e+03 -4.2088776e+03 - 2.7729015e+03 -1.8742646e+03 -4.2069420e+03 - 2.8206152e+03 -1.8132611e+03 -4.2047955e+03 - 2.8669726e+03 -1.7521151e+03 -4.2024543e+03 - 2.9119316e+03 -1.6908873e+03 -4.1999361e+03 - 2.9554550e+03 -1.6296348e+03 -4.1972595e+03 - 2.9975101e+03 -1.5684100e+03 -4.1944439e+03 - 3.0380688e+03 -1.5072613e+03 -4.1915094e+03 - 3.0771075e+03 -1.4462321e+03 -4.1884765e+03 - 3.1146067e+03 -1.3853612e+03 -4.1853659e+03 - 3.1505512e+03 -1.3246828e+03 -4.1821987e+03 - 3.1849292e+03 -1.2642262e+03 -4.1789954e+03 - 3.2177325e+03 -1.2040160e+03 -4.1757767e+03 - 3.2489562e+03 -1.1440723e+03 -4.1725627e+03 - 3.2785981e+03 -1.0844108e+03 -4.1693732e+03 - 3.3066583e+03 -1.0250429e+03 -4.1662273e+03 - 3.3331393e+03 -9.6597594e+02 -4.1631433e+03 - 3.3580454e+03 -9.0721345e+02 -4.1601390e+03 - 3.3813824e+03 -8.4875528e+02 -4.1572310e+03 - 3.4031572e+03 -7.9059793e+02 -4.1544354e+03 - 3.4233778e+03 -7.3273474e+02 -4.1517671e+03 - 3.4420528e+03 -6.7515616e+02 -4.1492401e+03 - 3.4591909e+03 -6.1784998e+02 -4.1468674e+03 - 3.4748014e+03 -5.6080156e+02 -4.1446610e+03 - 3.4888931e+03 -5.0399409e+02 -4.1426318e+03 - 3.5014749e+03 -4.4740882e+02 -4.1407897e+03 - 3.5125550e+03 -3.9102524e+02 -4.1391436e+03 - 3.5221410e+03 -3.3482137e+02 -4.1377012e+03 - 3.5302398e+03 -2.7877389e+02 -4.1364694e+03 - 3.5368576e+03 -2.2285838e+02 -4.1354537e+03 - 3.5419993e+03 -1.6704953e+02 -4.1346590e+03 - 3.5456690e+03 -1.1132129e+02 -4.1340887e+03 - 3.5478697e+03 -5.5647091e+01 -4.1337455e+03 - 3.5486030e+03 0.0000000e+00 -4.1336309e+03 - 3.4866294e+03 0.0000000e+00 -4.1707734e+03 - 3.4859053e+03 5.5265810e+01 -4.1708797e+03 - 3.4837325e+03 1.1055603e+02 -4.1711983e+03 - 3.4801094e+03 1.6589490e+02 -4.1717276e+03 - 3.4750336e+03 2.2130631e+02 -4.1724653e+03 - 3.4685016e+03 2.7681361e+02 -4.1734077e+03 - 3.4605091e+03 3.3243945e+02 -4.1745506e+03 - 3.4510510e+03 3.8820560e+02 -4.1758885e+03 - 3.4401214e+03 4.4413272e+02 -4.1774149e+03 - 3.4277139e+03 5.0024022e+02 -4.1791226e+03 - 3.4138216e+03 5.5654602e+02 -4.1810031e+03 - 3.3984373e+03 6.1306637e+02 -4.1830471e+03 - 3.3815536e+03 6.6981563e+02 -4.1852442e+03 - 3.3631631e+03 7.2680604e+02 -4.1875832e+03 - 3.3432588e+03 7.8404755e+02 -4.1900519e+03 - 3.3218339e+03 8.4154754e+02 -4.1926371e+03 - 3.2988827e+03 8.9931065e+02 -4.1953249e+03 - 3.2743999e+03 9.5733851e+02 -4.1981002e+03 - 3.2483819e+03 1.0156296e+03 -4.2009476e+03 - 3.2208263e+03 1.0741789e+03 -4.2038506e+03 - 3.1917327e+03 1.1329779e+03 -4.2067921e+03 - 3.1611024e+03 1.1920143e+03 -4.2097544e+03 - 3.1289396e+03 1.2512717e+03 -4.2127193e+03 - 3.0952506e+03 1.3107298e+03 -4.2156683e+03 - 3.0600449e+03 1.3703639e+03 -4.2185825e+03 - 3.0233354e+03 1.4301452e+03 -4.2214427e+03 - 2.9851380e+03 1.4900405e+03 -4.2242301e+03 - 2.9454727e+03 1.5500123e+03 -4.2269254e+03 - 2.9043632e+03 1.6100188e+03 -4.2295102e+03 - 2.8618372e+03 1.6700141e+03 -4.2319661e+03 - 2.8179265e+03 1.7299480e+03 -4.2342755e+03 - 2.7726674e+03 1.7897669e+03 -4.2364216e+03 - 2.7261001e+03 1.8494134e+03 -4.2383884e+03 - 2.6782692e+03 1.9088268e+03 -4.2401612e+03 - 2.6292232e+03 1.9679436e+03 -4.2417266e+03 - 2.5790147e+03 2.0266979e+03 -4.2430724e+03 - 2.5276997e+03 2.0850217e+03 -4.2441883e+03 - 2.4753380e+03 2.1428455e+03 -4.2450654e+03 - 2.4219919e+03 2.2000988e+03 -4.2456970e+03 - 2.3677268e+03 2.2567106e+03 -4.2460779e+03 - 2.3126100e+03 2.3126100e+03 -4.2462052e+03 - 2.2567106e+03 2.3677268e+03 -4.2460779e+03 - 2.2000988e+03 2.4219919e+03 -4.2456970e+03 - 2.1428455e+03 2.4753380e+03 -4.2450654e+03 - 2.0850217e+03 2.5276997e+03 -4.2441883e+03 - 2.0266979e+03 2.5790147e+03 -4.2430724e+03 - 1.9679436e+03 2.6292232e+03 -4.2417266e+03 - 1.9088268e+03 2.6782692e+03 -4.2401612e+03 - 1.8494134e+03 2.7261001e+03 -4.2383884e+03 - 1.7897669e+03 2.7726674e+03 -4.2364216e+03 - 1.7299480e+03 2.8179265e+03 -4.2342755e+03 - 1.6700141e+03 2.8618372e+03 -4.2319661e+03 - 1.6100188e+03 2.9043632e+03 -4.2295102e+03 - 1.5500123e+03 2.9454727e+03 -4.2269254e+03 - 1.4900405e+03 2.9851380e+03 -4.2242301e+03 - 1.4301452e+03 3.0233354e+03 -4.2214427e+03 - 1.3703639e+03 3.0600449e+03 -4.2185825e+03 - 1.3107298e+03 3.0952506e+03 -4.2156683e+03 - 1.2512717e+03 3.1289396e+03 -4.2127193e+03 - 1.1920143e+03 3.1611024e+03 -4.2097544e+03 - 1.1329779e+03 3.1917327e+03 -4.2067921e+03 - 1.0741789e+03 3.2208263e+03 -4.2038506e+03 - 1.0156296e+03 3.2483819e+03 -4.2009476e+03 - 9.5733851e+02 3.2743999e+03 -4.1981002e+03 - 8.9931065e+02 3.2988827e+03 -4.1953249e+03 - 8.4154754e+02 3.3218339e+03 -4.1926371e+03 - 7.8404755e+02 3.3432588e+03 -4.1900519e+03 - 7.2680604e+02 3.3631631e+03 -4.1875832e+03 - 6.6981563e+02 3.3815536e+03 -4.1852442e+03 - 6.1306637e+02 3.3984373e+03 -4.1830471e+03 - 5.5654602e+02 3.4138216e+03 -4.1810031e+03 - 5.0024022e+02 3.4277139e+03 -4.1791226e+03 - 4.4413272e+02 3.4401214e+03 -4.1774149e+03 - 3.8820560e+02 3.4510510e+03 -4.1758885e+03 - 3.3243945e+02 3.4605091e+03 -4.1745506e+03 - 2.7681361e+02 3.4685016e+03 -4.1734077e+03 - 2.2130631e+02 3.4750336e+03 -4.1724653e+03 - 1.6589490e+02 3.4801094e+03 -4.1717276e+03 - 1.1055603e+02 3.4837325e+03 -4.1711983e+03 - 5.5265810e+01 3.4859053e+03 -4.1708797e+03 - 0.0000000e+00 3.4866294e+03 -4.1707734e+03 - -5.5265810e+01 3.4859053e+03 -4.1708797e+03 - -1.1055603e+02 3.4837325e+03 -4.1711983e+03 - -1.6589490e+02 3.4801094e+03 -4.1717276e+03 - -2.2130631e+02 3.4750336e+03 -4.1724653e+03 - -2.7681361e+02 3.4685016e+03 -4.1734077e+03 - -3.3243945e+02 3.4605091e+03 -4.1745506e+03 - -3.8820560e+02 3.4510510e+03 -4.1758885e+03 - -4.4413272e+02 3.4401214e+03 -4.1774149e+03 - -5.0024022e+02 3.4277139e+03 -4.1791226e+03 - -5.5654602e+02 3.4138216e+03 -4.1810031e+03 - -6.1306637e+02 3.3984373e+03 -4.1830471e+03 - -6.6981563e+02 3.3815536e+03 -4.1852442e+03 - -7.2680604e+02 3.3631631e+03 -4.1875832e+03 - -7.8404755e+02 3.3432588e+03 -4.1900519e+03 - -8.4154754e+02 3.3218339e+03 -4.1926371e+03 - -8.9931065e+02 3.2988827e+03 -4.1953249e+03 - -9.5733851e+02 3.2743999e+03 -4.1981002e+03 - -1.0156296e+03 3.2483819e+03 -4.2009476e+03 - -1.0741789e+03 3.2208263e+03 -4.2038506e+03 - -1.1329779e+03 3.1917327e+03 -4.2067921e+03 - -1.1920143e+03 3.1611024e+03 -4.2097544e+03 - -1.2512717e+03 3.1289396e+03 -4.2127193e+03 - -1.3107298e+03 3.0952506e+03 -4.2156683e+03 - -1.3703639e+03 3.0600449e+03 -4.2185825e+03 - -1.4301452e+03 3.0233354e+03 -4.2214427e+03 - -1.4900405e+03 2.9851380e+03 -4.2242301e+03 - -1.5500123e+03 2.9454727e+03 -4.2269254e+03 - -1.6100188e+03 2.9043632e+03 -4.2295102e+03 - -1.6700141e+03 2.8618372e+03 -4.2319661e+03 - -1.7299480e+03 2.8179265e+03 -4.2342755e+03 - -1.7897669e+03 2.7726674e+03 -4.2364216e+03 - -1.8494134e+03 2.7261001e+03 -4.2383884e+03 - -1.9088268e+03 2.6782692e+03 -4.2401612e+03 - -1.9679436e+03 2.6292232e+03 -4.2417266e+03 - -2.0266979e+03 2.5790147e+03 -4.2430724e+03 - -2.0850217e+03 2.5276997e+03 -4.2441883e+03 - -2.1428455e+03 2.4753380e+03 -4.2450654e+03 - -2.2000988e+03 2.4219919e+03 -4.2456970e+03 - -2.2567106e+03 2.3677268e+03 -4.2460779e+03 - -2.3126100e+03 2.3126100e+03 -4.2462052e+03 - -2.3677268e+03 2.2567106e+03 -4.2460779e+03 - -2.4219919e+03 2.2000988e+03 -4.2456970e+03 - -2.4753380e+03 2.1428455e+03 -4.2450654e+03 - -2.5276997e+03 2.0850217e+03 -4.2441883e+03 - -2.5790147e+03 2.0266979e+03 -4.2430724e+03 - -2.6292232e+03 1.9679436e+03 -4.2417266e+03 - -2.6782692e+03 1.9088268e+03 -4.2401612e+03 - -2.7261001e+03 1.8494134e+03 -4.2383884e+03 - -2.7726674e+03 1.7897669e+03 -4.2364216e+03 - -2.8179265e+03 1.7299480e+03 -4.2342755e+03 - -2.8618372e+03 1.6700141e+03 -4.2319661e+03 - -2.9043632e+03 1.6100188e+03 -4.2295102e+03 - -2.9454727e+03 1.5500123e+03 -4.2269254e+03 - -2.9851380e+03 1.4900405e+03 -4.2242301e+03 - -3.0233354e+03 1.4301452e+03 -4.2214427e+03 - -3.0600449e+03 1.3703639e+03 -4.2185825e+03 - -3.0952506e+03 1.3107298e+03 -4.2156683e+03 - -3.1289396e+03 1.2512717e+03 -4.2127193e+03 - -3.1611024e+03 1.1920143e+03 -4.2097544e+03 - -3.1917327e+03 1.1329779e+03 -4.2067921e+03 - -3.2208263e+03 1.0741789e+03 -4.2038506e+03 - -3.2483819e+03 1.0156296e+03 -4.2009476e+03 - -3.2743999e+03 9.5733851e+02 -4.1981002e+03 - -3.2988827e+03 8.9931065e+02 -4.1953249e+03 - -3.3218339e+03 8.4154754e+02 -4.1926371e+03 - -3.3432588e+03 7.8404755e+02 -4.1900519e+03 - -3.3631631e+03 7.2680604e+02 -4.1875832e+03 - -3.3815536e+03 6.6981563e+02 -4.1852442e+03 - -3.3984373e+03 6.1306637e+02 -4.1830471e+03 - -3.4138216e+03 5.5654602e+02 -4.1810031e+03 - -3.4277139e+03 5.0024022e+02 -4.1791226e+03 - -3.4401214e+03 4.4413272e+02 -4.1774149e+03 - -3.4510510e+03 3.8820560e+02 -4.1758885e+03 - -3.4605091e+03 3.3243945e+02 -4.1745506e+03 - -3.4685016e+03 2.7681361e+02 -4.1734077e+03 - -3.4750336e+03 2.2130631e+02 -4.1724653e+03 - -3.4801094e+03 1.6589490e+02 -4.1717276e+03 - -3.4837325e+03 1.1055603e+02 -4.1711983e+03 - -3.4859053e+03 5.5265810e+01 -4.1708797e+03 - -3.4866294e+03 4.8134273e-09 -4.1707734e+03 - -3.4859053e+03 -5.5265810e+01 -4.1708797e+03 - -3.4837325e+03 -1.1055603e+02 -4.1711983e+03 - -3.4801094e+03 -1.6589490e+02 -4.1717276e+03 - -3.4750336e+03 -2.2130631e+02 -4.1724653e+03 - -3.4685016e+03 -2.7681361e+02 -4.1734077e+03 - -3.4605091e+03 -3.3243945e+02 -4.1745506e+03 - -3.4510510e+03 -3.8820560e+02 -4.1758885e+03 - -3.4401214e+03 -4.4413272e+02 -4.1774149e+03 - -3.4277139e+03 -5.0024022e+02 -4.1791226e+03 - -3.4138216e+03 -5.5654602e+02 -4.1810031e+03 - -3.3984373e+03 -6.1306637e+02 -4.1830471e+03 - -3.3815536e+03 -6.6981563e+02 -4.1852442e+03 - -3.3631631e+03 -7.2680604e+02 -4.1875832e+03 - -3.3432588e+03 -7.8404755e+02 -4.1900519e+03 - -3.3218339e+03 -8.4154754e+02 -4.1926371e+03 - -3.2988827e+03 -8.9931065e+02 -4.1953249e+03 - -3.2743999e+03 -9.5733851e+02 -4.1981002e+03 - -3.2483819e+03 -1.0156296e+03 -4.2009476e+03 - -3.2208263e+03 -1.0741789e+03 -4.2038506e+03 - -3.1917327e+03 -1.1329779e+03 -4.2067921e+03 - -3.1611024e+03 -1.1920143e+03 -4.2097544e+03 - -3.1289396e+03 -1.2512717e+03 -4.2127193e+03 - -3.0952506e+03 -1.3107298e+03 -4.2156683e+03 - -3.0600449e+03 -1.3703639e+03 -4.2185825e+03 - -3.0233354e+03 -1.4301452e+03 -4.2214427e+03 - -2.9851380e+03 -1.4900405e+03 -4.2242301e+03 - -2.9454727e+03 -1.5500123e+03 -4.2269254e+03 - -2.9043632e+03 -1.6100188e+03 -4.2295102e+03 - -2.8618372e+03 -1.6700141e+03 -4.2319661e+03 - -2.8179265e+03 -1.7299480e+03 -4.2342755e+03 - -2.7726674e+03 -1.7897669e+03 -4.2364216e+03 - -2.7261001e+03 -1.8494134e+03 -4.2383884e+03 - -2.6782692e+03 -1.9088268e+03 -4.2401612e+03 - -2.6292232e+03 -1.9679436e+03 -4.2417266e+03 - -2.5790147e+03 -2.0266979e+03 -4.2430724e+03 - -2.5276997e+03 -2.0850217e+03 -4.2441883e+03 - -2.4753380e+03 -2.1428455e+03 -4.2450654e+03 - -2.4219919e+03 -2.2000988e+03 -4.2456970e+03 - -2.3677268e+03 -2.2567106e+03 -4.2460779e+03 - -2.3126100e+03 -2.3126100e+03 -4.2462052e+03 - -2.2567106e+03 -2.3677268e+03 -4.2460779e+03 - -2.2000988e+03 -2.4219919e+03 -4.2456970e+03 - -2.1428455e+03 -2.4753380e+03 -4.2450654e+03 - -2.0850217e+03 -2.5276997e+03 -4.2441883e+03 - -2.0266979e+03 -2.5790147e+03 -4.2430724e+03 - -1.9679436e+03 -2.6292232e+03 -4.2417266e+03 - -1.9088268e+03 -2.6782692e+03 -4.2401612e+03 - -1.8494134e+03 -2.7261001e+03 -4.2383884e+03 - -1.7897669e+03 -2.7726674e+03 -4.2364216e+03 - -1.7299480e+03 -2.8179265e+03 -4.2342755e+03 - -1.6700141e+03 -2.8618372e+03 -4.2319661e+03 - -1.6100188e+03 -2.9043632e+03 -4.2295102e+03 - -1.5500123e+03 -2.9454727e+03 -4.2269254e+03 - -1.4900405e+03 -2.9851380e+03 -4.2242301e+03 - -1.4301452e+03 -3.0233354e+03 -4.2214427e+03 - -1.3703639e+03 -3.0600449e+03 -4.2185825e+03 - -1.3107298e+03 -3.0952506e+03 -4.2156683e+03 - -1.2512717e+03 -3.1289396e+03 -4.2127193e+03 - -1.1920143e+03 -3.1611024e+03 -4.2097544e+03 - -1.1329779e+03 -3.1917327e+03 -4.2067921e+03 - -1.0741789e+03 -3.2208263e+03 -4.2038506e+03 - -1.0156296e+03 -3.2483819e+03 -4.2009476e+03 - -9.5733851e+02 -3.2743999e+03 -4.1981002e+03 - -8.9931065e+02 -3.2988827e+03 -4.1953249e+03 - -8.4154754e+02 -3.3218339e+03 -4.1926371e+03 - -7.8404755e+02 -3.3432588e+03 -4.1900519e+03 - -7.2680604e+02 -3.3631631e+03 -4.1875832e+03 - -6.6981563e+02 -3.3815536e+03 -4.1852442e+03 - -6.1306637e+02 -3.3984373e+03 -4.1830471e+03 - -5.5654602e+02 -3.4138216e+03 -4.1810031e+03 - -5.0024022e+02 -3.4277139e+03 -4.1791226e+03 - -4.4413272e+02 -3.4401214e+03 -4.1774149e+03 - -3.8820560e+02 -3.4510510e+03 -4.1758885e+03 - -3.3243945e+02 -3.4605091e+03 -4.1745506e+03 - -2.7681361e+02 -3.4685016e+03 -4.1734077e+03 - -2.2130631e+02 -3.4750336e+03 -4.1724653e+03 - -1.6589490e+02 -3.4801094e+03 -4.1717276e+03 - -1.1055603e+02 -3.4837325e+03 -4.1711983e+03 - -5.5265810e+01 -3.4859053e+03 -4.1708797e+03 - 0.0000000e+00 -3.4866294e+03 -4.1707734e+03 - 5.5265810e+01 -3.4859053e+03 -4.1708797e+03 - 1.1055603e+02 -3.4837325e+03 -4.1711983e+03 - 1.6589490e+02 -3.4801094e+03 -4.1717276e+03 - 2.2130631e+02 -3.4750336e+03 -4.1724653e+03 - 2.7681361e+02 -3.4685016e+03 -4.1734077e+03 - 3.3243945e+02 -3.4605091e+03 -4.1745506e+03 - 3.8820560e+02 -3.4510510e+03 -4.1758885e+03 - 4.4413272e+02 -3.4401214e+03 -4.1774149e+03 - 5.0024022e+02 -3.4277139e+03 -4.1791226e+03 - 5.5654602e+02 -3.4138216e+03 -4.1810031e+03 - 6.1306637e+02 -3.3984373e+03 -4.1830471e+03 - 6.6981563e+02 -3.3815536e+03 -4.1852442e+03 - 7.2680604e+02 -3.3631631e+03 -4.1875832e+03 - 7.8404755e+02 -3.3432588e+03 -4.1900519e+03 - 8.4154754e+02 -3.3218339e+03 -4.1926371e+03 - 8.9931065e+02 -3.2988827e+03 -4.1953249e+03 - 9.5733851e+02 -3.2743999e+03 -4.1981002e+03 - 1.0156296e+03 -3.2483819e+03 -4.2009476e+03 - 1.0741789e+03 -3.2208263e+03 -4.2038506e+03 - 1.1329779e+03 -3.1917327e+03 -4.2067921e+03 - 1.1920143e+03 -3.1611024e+03 -4.2097544e+03 - 1.2512717e+03 -3.1289396e+03 -4.2127193e+03 - 1.3107298e+03 -3.0952506e+03 -4.2156683e+03 - 1.3703639e+03 -3.0600449e+03 -4.2185825e+03 - 1.4301452e+03 -3.0233354e+03 -4.2214427e+03 - 1.4900405e+03 -2.9851380e+03 -4.2242301e+03 - 1.5500123e+03 -2.9454727e+03 -4.2269254e+03 - 1.6100188e+03 -2.9043632e+03 -4.2295102e+03 - 1.6700141e+03 -2.8618372e+03 -4.2319661e+03 - 1.7299480e+03 -2.8179265e+03 -4.2342755e+03 - 1.7897669e+03 -2.7726674e+03 -4.2364216e+03 - 1.8494134e+03 -2.7261001e+03 -4.2383884e+03 - 1.9088268e+03 -2.6782692e+03 -4.2401612e+03 - 1.9679436e+03 -2.6292232e+03 -4.2417266e+03 - 2.0266979e+03 -2.5790147e+03 -4.2430724e+03 - 2.0850217e+03 -2.5276997e+03 -4.2441883e+03 - 2.1428455e+03 -2.4753380e+03 -4.2450654e+03 - 2.2000988e+03 -2.4219919e+03 -4.2456970e+03 - 2.2567106e+03 -2.3677268e+03 -4.2460779e+03 - 2.3126100e+03 -2.3126100e+03 -4.2462052e+03 - 2.3677268e+03 -2.2567106e+03 -4.2460779e+03 - 2.4219919e+03 -2.2000988e+03 -4.2456970e+03 - 2.4753380e+03 -2.1428455e+03 -4.2450654e+03 - 2.5276997e+03 -2.0850217e+03 -4.2441883e+03 - 2.5790147e+03 -2.0266979e+03 -4.2430724e+03 - 2.6292232e+03 -1.9679436e+03 -4.2417266e+03 - 2.6782692e+03 -1.9088268e+03 -4.2401612e+03 - 2.7261001e+03 -1.8494134e+03 -4.2383884e+03 - 2.7726674e+03 -1.7897669e+03 -4.2364216e+03 - 2.8179265e+03 -1.7299480e+03 -4.2342755e+03 - 2.8618372e+03 -1.6700141e+03 -4.2319661e+03 - 2.9043632e+03 -1.6100188e+03 -4.2295102e+03 - 2.9454727e+03 -1.5500123e+03 -4.2269254e+03 - 2.9851380e+03 -1.4900405e+03 -4.2242301e+03 - 3.0233354e+03 -1.4301452e+03 -4.2214427e+03 - 3.0600449e+03 -1.3703639e+03 -4.2185825e+03 - 3.0952506e+03 -1.3107298e+03 -4.2156683e+03 - 3.1289396e+03 -1.2512717e+03 -4.2127193e+03 - 3.1611024e+03 -1.1920143e+03 -4.2097544e+03 - 3.1917327e+03 -1.1329779e+03 -4.2067921e+03 - 3.2208263e+03 -1.0741789e+03 -4.2038506e+03 - 3.2483819e+03 -1.0156296e+03 -4.2009476e+03 - 3.2743999e+03 -9.5733851e+02 -4.1981002e+03 - 3.2988827e+03 -8.9931065e+02 -4.1953249e+03 - 3.3218339e+03 -8.4154754e+02 -4.1926371e+03 - 3.3432588e+03 -7.8404755e+02 -4.1900519e+03 - 3.3631631e+03 -7.2680604e+02 -4.1875832e+03 - 3.3815536e+03 -6.6981563e+02 -4.1852442e+03 - 3.3984373e+03 -6.1306637e+02 -4.1830471e+03 - 3.4138216e+03 -5.5654602e+02 -4.1810031e+03 - 3.4277139e+03 -5.0024022e+02 -4.1791226e+03 - 3.4401214e+03 -4.4413272e+02 -4.1774149e+03 - 3.4510510e+03 -3.8820560e+02 -4.1758885e+03 - 3.4605091e+03 -3.3243945e+02 -4.1745506e+03 - 3.4685016e+03 -2.7681361e+02 -4.1734077e+03 - 3.4750336e+03 -2.2130631e+02 -4.1724653e+03 - 3.4801094e+03 -1.6589490e+02 -4.1717276e+03 - 3.4837325e+03 -1.1055603e+02 -4.1711983e+03 - 3.4859053e+03 -5.5265810e+01 -4.1708797e+03 - 3.4866294e+03 -4.8134273e-09 -4.1707734e+03 - 3.4224366e+03 0.0000000e+00 -4.2075521e+03 - 3.4217226e+03 5.4833139e+01 -4.2076504e+03 - 3.4195803e+03 1.0968800e+02 -4.2079449e+03 - 3.4160084e+03 1.6458612e+02 -4.2084342e+03 - 3.4110047e+03 2.1954871e+02 -4.2091160e+03 - 3.4045664e+03 2.7459646e+02 -4.2099869e+03 - 3.3966900e+03 3.2974935e+02 -4.2110429e+03 - 3.3873711e+03 3.8502653e+02 -4.2122788e+03 - 3.3766051e+03 4.4044606e+02 -4.2136884e+03 - 3.3643865e+03 4.9602477e+02 -4.2152650e+03 - 3.3507098e+03 5.5177809e+02 -4.2170006e+03 - 3.3355693e+03 6.0771979e+02 -4.2188863e+03 - 3.3189590e+03 6.6386186e+02 -4.2209126e+03 - 3.3008733e+03 7.2021426e+02 -4.2230688e+03 - 3.2813068e+03 7.7678472e+02 -4.2253435e+03 - 3.2602547e+03 8.3357860e+02 -4.2277245e+03 - 3.2377127e+03 8.9059860e+02 -4.2301986e+03 - 3.2136778e+03 9.4784463e+02 -4.2327522e+03 - 3.1881480e+03 1.0053136e+03 -4.2353706e+03 - 3.1611228e+03 1.0629992e+03 -4.2380386e+03 - 3.1326034e+03 1.1208919e+03 -4.2407406e+03 - 3.1025930e+03 1.1789784e+03 -4.2434601e+03 - 3.0710970e+03 1.2372420e+03 -4.2461805e+03 - 3.0381232e+03 1.2956622e+03 -4.2488848e+03 - 3.0036824e+03 1.3542144e+03 -4.2515556e+03 - 2.9677880e+03 1.4128705e+03 -4.2541755e+03 - 2.9304568e+03 1.4715983e+03 -4.2567271e+03 - 2.8917090e+03 1.5303614e+03 -4.2591933e+03 - 2.8515682e+03 1.5891200e+03 -4.2615571e+03 - 2.8100617e+03 1.6478303e+03 -4.2638019e+03 - 2.7672206e+03 1.7064449e+03 -4.2659118e+03 - 2.7230796e+03 1.7649131e+03 -4.2678715e+03 - 2.6776775e+03 1.8231809e+03 -4.2696669e+03 - 2.6310565e+03 1.8811915e+03 -4.2712846e+03 - 2.5832628e+03 1.9388855e+03 -4.2727125e+03 - 2.5343458e+03 1.9962014e+03 -4.2739397e+03 - 2.4843583e+03 2.0530758e+03 -4.2749571e+03 - 2.4333559e+03 2.1094442e+03 -4.2757566e+03 - 2.3813972e+03 2.1652409e+03 -4.2763322e+03 - 2.3285430e+03 2.2204001e+03 -4.2766793e+03 - 2.2748558e+03 2.2748558e+03 -4.2767953e+03 - 2.2204001e+03 2.3285430e+03 -4.2766793e+03 - 2.1652409e+03 2.3813972e+03 -4.2763322e+03 - 2.1094442e+03 2.4333559e+03 -4.2757566e+03 - 2.0530758e+03 2.4843583e+03 -4.2749571e+03 - 1.9962014e+03 2.5343458e+03 -4.2739397e+03 - 1.9388855e+03 2.5832628e+03 -4.2727125e+03 - 1.8811915e+03 2.6310565e+03 -4.2712846e+03 - 1.8231809e+03 2.6776775e+03 -4.2696669e+03 - 1.7649131e+03 2.7230796e+03 -4.2678715e+03 - 1.7064449e+03 2.7672206e+03 -4.2659118e+03 - 1.6478303e+03 2.8100617e+03 -4.2638019e+03 - 1.5891200e+03 2.8515682e+03 -4.2615571e+03 - 1.5303614e+03 2.8917090e+03 -4.2591933e+03 - 1.4715983e+03 2.9304568e+03 -4.2567271e+03 - 1.4128705e+03 2.9677880e+03 -4.2541755e+03 - 1.3542144e+03 3.0036824e+03 -4.2515556e+03 - 1.2956622e+03 3.0381232e+03 -4.2488848e+03 - 1.2372420e+03 3.0710970e+03 -4.2461805e+03 - 1.1789784e+03 3.1025930e+03 -4.2434601e+03 - 1.1208919e+03 3.1326034e+03 -4.2407406e+03 - 1.0629992e+03 3.1611228e+03 -4.2380386e+03 - 1.0053136e+03 3.1881480e+03 -4.2353706e+03 - 9.4784463e+02 3.2136778e+03 -4.2327522e+03 - 8.9059860e+02 3.2377127e+03 -4.2301986e+03 - 8.3357860e+02 3.2602547e+03 -4.2277245e+03 - 7.7678472e+02 3.2813068e+03 -4.2253435e+03 - 7.2021426e+02 3.3008733e+03 -4.2230688e+03 - 6.6386186e+02 3.3189590e+03 -4.2209126e+03 - 6.0771979e+02 3.3355693e+03 -4.2188863e+03 - 5.5177809e+02 3.3507098e+03 -4.2170006e+03 - 4.9602477e+02 3.3643865e+03 -4.2152650e+03 - 4.4044606e+02 3.3766051e+03 -4.2136884e+03 - 3.8502653e+02 3.3873711e+03 -4.2122788e+03 - 3.2974935e+02 3.3966900e+03 -4.2110429e+03 - 2.7459646e+02 3.4045664e+03 -4.2099869e+03 - 2.1954871e+02 3.4110047e+03 -4.2091160e+03 - 1.6458612e+02 3.4160084e+03 -4.2084342e+03 - 1.0968800e+02 3.4195803e+03 -4.2079449e+03 - 5.4833139e+01 3.4217226e+03 -4.2076504e+03 - 0.0000000e+00 3.4224366e+03 -4.2075521e+03 - -5.4833139e+01 3.4217226e+03 -4.2076504e+03 - -1.0968800e+02 3.4195803e+03 -4.2079449e+03 - -1.6458612e+02 3.4160084e+03 -4.2084342e+03 - -2.1954871e+02 3.4110047e+03 -4.2091160e+03 - -2.7459646e+02 3.4045664e+03 -4.2099869e+03 - -3.2974935e+02 3.3966900e+03 -4.2110429e+03 - -3.8502653e+02 3.3873711e+03 -4.2122788e+03 - -4.4044606e+02 3.3766051e+03 -4.2136884e+03 - -4.9602477e+02 3.3643865e+03 -4.2152650e+03 - -5.5177809e+02 3.3507098e+03 -4.2170006e+03 - -6.0771979e+02 3.3355693e+03 -4.2188863e+03 - -6.6386186e+02 3.3189590e+03 -4.2209126e+03 - -7.2021426e+02 3.3008733e+03 -4.2230688e+03 - -7.7678472e+02 3.2813068e+03 -4.2253435e+03 - -8.3357860e+02 3.2602547e+03 -4.2277245e+03 - -8.9059860e+02 3.2377127e+03 -4.2301986e+03 - -9.4784463e+02 3.2136778e+03 -4.2327522e+03 - -1.0053136e+03 3.1881480e+03 -4.2353706e+03 - -1.0629992e+03 3.1611228e+03 -4.2380386e+03 - -1.1208919e+03 3.1326034e+03 -4.2407406e+03 - -1.1789784e+03 3.1025930e+03 -4.2434601e+03 - -1.2372420e+03 3.0710970e+03 -4.2461805e+03 - -1.2956622e+03 3.0381232e+03 -4.2488848e+03 - -1.3542144e+03 3.0036824e+03 -4.2515556e+03 - -1.4128705e+03 2.9677880e+03 -4.2541755e+03 - -1.4715983e+03 2.9304568e+03 -4.2567271e+03 - -1.5303614e+03 2.8917090e+03 -4.2591933e+03 - -1.5891200e+03 2.8515682e+03 -4.2615571e+03 - -1.6478303e+03 2.8100617e+03 -4.2638019e+03 - -1.7064449e+03 2.7672206e+03 -4.2659118e+03 - -1.7649131e+03 2.7230796e+03 -4.2678715e+03 - -1.8231809e+03 2.6776775e+03 -4.2696669e+03 - -1.8811915e+03 2.6310565e+03 -4.2712846e+03 - -1.9388855e+03 2.5832628e+03 -4.2727125e+03 - -1.9962014e+03 2.5343458e+03 -4.2739397e+03 - -2.0530758e+03 2.4843583e+03 -4.2749571e+03 - -2.1094442e+03 2.4333559e+03 -4.2757566e+03 - -2.1652409e+03 2.3813972e+03 -4.2763322e+03 - -2.2204001e+03 2.3285430e+03 -4.2766793e+03 - -2.2748558e+03 2.2748558e+03 -4.2767953e+03 - -2.3285430e+03 2.2204001e+03 -4.2766793e+03 - -2.3813972e+03 2.1652409e+03 -4.2763322e+03 - -2.4333559e+03 2.1094442e+03 -4.2757566e+03 - -2.4843583e+03 2.0530758e+03 -4.2749571e+03 - -2.5343458e+03 1.9962014e+03 -4.2739397e+03 - -2.5832628e+03 1.9388855e+03 -4.2727125e+03 - -2.6310565e+03 1.8811915e+03 -4.2712846e+03 - -2.6776775e+03 1.8231809e+03 -4.2696669e+03 - -2.7230796e+03 1.7649131e+03 -4.2678715e+03 - -2.7672206e+03 1.7064449e+03 -4.2659118e+03 - -2.8100617e+03 1.6478303e+03 -4.2638019e+03 - -2.8515682e+03 1.5891200e+03 -4.2615571e+03 - -2.8917090e+03 1.5303614e+03 -4.2591933e+03 - -2.9304568e+03 1.4715983e+03 -4.2567271e+03 - -2.9677880e+03 1.4128705e+03 -4.2541755e+03 - -3.0036824e+03 1.3542144e+03 -4.2515556e+03 - -3.0381232e+03 1.2956622e+03 -4.2488848e+03 - -3.0710970e+03 1.2372420e+03 -4.2461805e+03 - -3.1025930e+03 1.1789784e+03 -4.2434601e+03 - -3.1326034e+03 1.1208919e+03 -4.2407406e+03 - -3.1611228e+03 1.0629992e+03 -4.2380386e+03 - -3.1881480e+03 1.0053136e+03 -4.2353706e+03 - -3.2136778e+03 9.4784463e+02 -4.2327522e+03 - -3.2377127e+03 8.9059860e+02 -4.2301986e+03 - -3.2602547e+03 8.3357860e+02 -4.2277245e+03 - -3.2813068e+03 7.7678472e+02 -4.2253435e+03 - -3.3008733e+03 7.2021426e+02 -4.2230688e+03 - -3.3189590e+03 6.6386186e+02 -4.2209126e+03 - -3.3355693e+03 6.0771979e+02 -4.2188863e+03 - -3.3507098e+03 5.5177809e+02 -4.2170006e+03 - -3.3643865e+03 4.9602477e+02 -4.2152650e+03 - -3.3766051e+03 4.4044606e+02 -4.2136884e+03 - -3.3873711e+03 3.8502653e+02 -4.2122788e+03 - -3.3966900e+03 3.2974935e+02 -4.2110429e+03 - -3.4045664e+03 2.7459646e+02 -4.2099869e+03 - -3.4110047e+03 2.1954871e+02 -4.2091160e+03 - -3.4160084e+03 1.6458612e+02 -4.2084342e+03 - -3.4195803e+03 1.0968800e+02 -4.2079449e+03 - -3.4217226e+03 5.4833139e+01 -4.2076504e+03 - -3.4224366e+03 0.0000000e+00 -4.2075521e+03 - -3.4217226e+03 -5.4833139e+01 -4.2076504e+03 - -3.4195803e+03 -1.0968800e+02 -4.2079449e+03 - -3.4160084e+03 -1.6458612e+02 -4.2084342e+03 - -3.4110047e+03 -2.1954871e+02 -4.2091160e+03 - -3.4045664e+03 -2.7459646e+02 -4.2099869e+03 - -3.3966900e+03 -3.2974935e+02 -4.2110429e+03 - -3.3873711e+03 -3.8502653e+02 -4.2122788e+03 - -3.3766051e+03 -4.4044606e+02 -4.2136884e+03 - -3.3643865e+03 -4.9602477e+02 -4.2152650e+03 - -3.3507098e+03 -5.5177809e+02 -4.2170006e+03 - -3.3355693e+03 -6.0771979e+02 -4.2188863e+03 - -3.3189590e+03 -6.6386186e+02 -4.2209126e+03 - -3.3008733e+03 -7.2021426e+02 -4.2230688e+03 - -3.2813068e+03 -7.7678472e+02 -4.2253435e+03 - -3.2602547e+03 -8.3357860e+02 -4.2277245e+03 - -3.2377127e+03 -8.9059860e+02 -4.2301986e+03 - -3.2136778e+03 -9.4784463e+02 -4.2327522e+03 - -3.1881480e+03 -1.0053136e+03 -4.2353706e+03 - -3.1611228e+03 -1.0629992e+03 -4.2380386e+03 - -3.1326034e+03 -1.1208919e+03 -4.2407406e+03 - -3.1025930e+03 -1.1789784e+03 -4.2434601e+03 - -3.0710970e+03 -1.2372420e+03 -4.2461805e+03 - -3.0381232e+03 -1.2956622e+03 -4.2488848e+03 - -3.0036824e+03 -1.3542144e+03 -4.2515556e+03 - -2.9677880e+03 -1.4128705e+03 -4.2541755e+03 - -2.9304568e+03 -1.4715983e+03 -4.2567271e+03 - -2.8917090e+03 -1.5303614e+03 -4.2591933e+03 - -2.8515682e+03 -1.5891200e+03 -4.2615571e+03 - -2.8100617e+03 -1.6478303e+03 -4.2638019e+03 - -2.7672206e+03 -1.7064449e+03 -4.2659118e+03 - -2.7230796e+03 -1.7649131e+03 -4.2678715e+03 - -2.6776775e+03 -1.8231809e+03 -4.2696669e+03 - -2.6310565e+03 -1.8811915e+03 -4.2712846e+03 - -2.5832628e+03 -1.9388855e+03 -4.2727125e+03 - -2.5343458e+03 -1.9962014e+03 -4.2739397e+03 - -2.4843583e+03 -2.0530758e+03 -4.2749571e+03 - -2.4333559e+03 -2.1094442e+03 -4.2757566e+03 - -2.3813972e+03 -2.1652409e+03 -4.2763322e+03 - -2.3285430e+03 -2.2204001e+03 -4.2766793e+03 - -2.2748558e+03 -2.2748558e+03 -4.2767953e+03 - -2.2204001e+03 -2.3285430e+03 -4.2766793e+03 - -2.1652409e+03 -2.3813972e+03 -4.2763322e+03 - -2.1094442e+03 -2.4333559e+03 -4.2757566e+03 - -2.0530758e+03 -2.4843583e+03 -4.2749571e+03 - -1.9962014e+03 -2.5343458e+03 -4.2739397e+03 - -1.9388855e+03 -2.5832628e+03 -4.2727125e+03 - -1.8811915e+03 -2.6310565e+03 -4.2712846e+03 - -1.8231809e+03 -2.6776775e+03 -4.2696669e+03 - -1.7649131e+03 -2.7230796e+03 -4.2678715e+03 - -1.7064449e+03 -2.7672206e+03 -4.2659118e+03 - -1.6478303e+03 -2.8100617e+03 -4.2638019e+03 - -1.5891200e+03 -2.8515682e+03 -4.2615571e+03 - -1.5303614e+03 -2.8917090e+03 -4.2591933e+03 - -1.4715983e+03 -2.9304568e+03 -4.2567271e+03 - -1.4128705e+03 -2.9677880e+03 -4.2541755e+03 - -1.3542144e+03 -3.0036824e+03 -4.2515556e+03 - -1.2956622e+03 -3.0381232e+03 -4.2488848e+03 - -1.2372420e+03 -3.0710970e+03 -4.2461805e+03 - -1.1789784e+03 -3.1025930e+03 -4.2434601e+03 - -1.1208919e+03 -3.1326034e+03 -4.2407406e+03 - -1.0629992e+03 -3.1611228e+03 -4.2380386e+03 - -1.0053136e+03 -3.1881480e+03 -4.2353706e+03 - -9.4784463e+02 -3.2136778e+03 -4.2327522e+03 - -8.9059860e+02 -3.2377127e+03 -4.2301986e+03 - -8.3357860e+02 -3.2602547e+03 -4.2277245e+03 - -7.7678472e+02 -3.2813068e+03 -4.2253435e+03 - -7.2021426e+02 -3.3008733e+03 -4.2230688e+03 - -6.6386186e+02 -3.3189590e+03 -4.2209126e+03 - -6.0771979e+02 -3.3355693e+03 -4.2188863e+03 - -5.5177809e+02 -3.3507098e+03 -4.2170006e+03 - -4.9602477e+02 -3.3643865e+03 -4.2152650e+03 - -4.4044606e+02 -3.3766051e+03 -4.2136884e+03 - -3.8502653e+02 -3.3873711e+03 -4.2122788e+03 - -3.2974935e+02 -3.3966900e+03 -4.2110429e+03 - -2.7459646e+02 -3.4045664e+03 -4.2099869e+03 - -2.1954871e+02 -3.4110047e+03 -4.2091160e+03 - -1.6458612e+02 -3.4160084e+03 -4.2084342e+03 - -1.0968800e+02 -3.4195803e+03 -4.2079449e+03 - -5.4833139e+01 -3.4217226e+03 -4.2076504e+03 - 0.0000000e+00 -3.4224366e+03 -4.2075521e+03 - 5.4833139e+01 -3.4217226e+03 -4.2076504e+03 - 1.0968800e+02 -3.4195803e+03 -4.2079449e+03 - 1.6458612e+02 -3.4160084e+03 -4.2084342e+03 - 2.1954871e+02 -3.4110047e+03 -4.2091160e+03 - 2.7459646e+02 -3.4045664e+03 -4.2099869e+03 - 3.2974935e+02 -3.3966900e+03 -4.2110429e+03 - 3.8502653e+02 -3.3873711e+03 -4.2122788e+03 - 4.4044606e+02 -3.3766051e+03 -4.2136884e+03 - 4.9602477e+02 -3.3643865e+03 -4.2152650e+03 - 5.5177809e+02 -3.3507098e+03 -4.2170006e+03 - 6.0771979e+02 -3.3355693e+03 -4.2188863e+03 - 6.6386186e+02 -3.3189590e+03 -4.2209126e+03 - 7.2021426e+02 -3.3008733e+03 -4.2230688e+03 - 7.7678472e+02 -3.2813068e+03 -4.2253435e+03 - 8.3357860e+02 -3.2602547e+03 -4.2277245e+03 - 8.9059860e+02 -3.2377127e+03 -4.2301986e+03 - 9.4784463e+02 -3.2136778e+03 -4.2327522e+03 - 1.0053136e+03 -3.1881480e+03 -4.2353706e+03 - 1.0629992e+03 -3.1611228e+03 -4.2380386e+03 - 1.1208919e+03 -3.1326034e+03 -4.2407406e+03 - 1.1789784e+03 -3.1025930e+03 -4.2434601e+03 - 1.2372420e+03 -3.0710970e+03 -4.2461805e+03 - 1.2956622e+03 -3.0381232e+03 -4.2488848e+03 - 1.3542144e+03 -3.0036824e+03 -4.2515556e+03 - 1.4128705e+03 -2.9677880e+03 -4.2541755e+03 - 1.4715983e+03 -2.9304568e+03 -4.2567271e+03 - 1.5303614e+03 -2.8917090e+03 -4.2591933e+03 - 1.5891200e+03 -2.8515682e+03 -4.2615571e+03 - 1.6478303e+03 -2.8100617e+03 -4.2638019e+03 - 1.7064449e+03 -2.7672206e+03 -4.2659118e+03 - 1.7649131e+03 -2.7230796e+03 -4.2678715e+03 - 1.8231809e+03 -2.6776775e+03 -4.2696669e+03 - 1.8811915e+03 -2.6310565e+03 -4.2712846e+03 - 1.9388855e+03 -2.5832628e+03 -4.2727125e+03 - 1.9962014e+03 -2.5343458e+03 -4.2739397e+03 - 2.0530758e+03 -2.4843583e+03 -4.2749571e+03 - 2.1094442e+03 -2.4333559e+03 -4.2757566e+03 - 2.1652409e+03 -2.3813972e+03 -4.2763322e+03 - 2.2204001e+03 -2.3285430e+03 -4.2766793e+03 - 2.2748558e+03 -2.2748558e+03 -4.2767953e+03 - 2.3285430e+03 -2.2204001e+03 -4.2766793e+03 - 2.3813972e+03 -2.1652409e+03 -4.2763322e+03 - 2.4333559e+03 -2.1094442e+03 -4.2757566e+03 - 2.4843583e+03 -2.0530758e+03 -4.2749571e+03 - 2.5343458e+03 -1.9962014e+03 -4.2739397e+03 - 2.5832628e+03 -1.9388855e+03 -4.2727125e+03 - 2.6310565e+03 -1.8811915e+03 -4.2712846e+03 - 2.6776775e+03 -1.8231809e+03 -4.2696669e+03 - 2.7230796e+03 -1.7649131e+03 -4.2678715e+03 - 2.7672206e+03 -1.7064449e+03 -4.2659118e+03 - 2.8100617e+03 -1.6478303e+03 -4.2638019e+03 - 2.8515682e+03 -1.5891200e+03 -4.2615571e+03 - 2.8917090e+03 -1.5303614e+03 -4.2591933e+03 - 2.9304568e+03 -1.4715983e+03 -4.2567271e+03 - 2.9677880e+03 -1.4128705e+03 -4.2541755e+03 - 3.0036824e+03 -1.3542144e+03 -4.2515556e+03 - 3.0381232e+03 -1.2956622e+03 -4.2488848e+03 - 3.0710970e+03 -1.2372420e+03 -4.2461805e+03 - 3.1025930e+03 -1.1789784e+03 -4.2434601e+03 - 3.1326034e+03 -1.1208919e+03 -4.2407406e+03 - 3.1611228e+03 -1.0629992e+03 -4.2380386e+03 - 3.1881480e+03 -1.0053136e+03 -4.2353706e+03 - 3.2136778e+03 -9.4784463e+02 -4.2327522e+03 - 3.2377127e+03 -8.9059860e+02 -4.2301986e+03 - 3.2602547e+03 -8.3357860e+02 -4.2277245e+03 - 3.2813068e+03 -7.7678472e+02 -4.2253435e+03 - 3.3008733e+03 -7.2021426e+02 -4.2230688e+03 - 3.3189590e+03 -6.6386186e+02 -4.2209126e+03 - 3.3355693e+03 -6.0771979e+02 -4.2188863e+03 - 3.3507098e+03 -5.5177809e+02 -4.2170006e+03 - 3.3643865e+03 -4.9602477e+02 -4.2152650e+03 - 3.3766051e+03 -4.4044606e+02 -4.2136884e+03 - 3.3873711e+03 -3.8502653e+02 -4.2122788e+03 - 3.3966900e+03 -3.2974935e+02 -4.2110429e+03 - 3.4045664e+03 -2.7459646e+02 -4.2099869e+03 - 3.4110047e+03 -2.1954871e+02 -4.2091160e+03 - 3.4160084e+03 -1.6458612e+02 -4.2084342e+03 - 3.4195803e+03 -1.0968800e+02 -4.2079449e+03 - 3.4217226e+03 -5.4833139e+01 -4.2076504e+03 - 3.4224366e+03 0.0000000e+00 -4.2075521e+03 - 3.3558267e+03 0.0000000e+00 -4.2439972e+03 - 3.3551239e+03 5.4344263e+01 -4.2440877e+03 - 3.3530149e+03 1.0870756e+02 -4.2443587e+03 - 3.3494988e+03 1.6310877e+02 -4.2448089e+03 - 3.3445739e+03 2.1756642e+02 -4.2454362e+03 - 3.3382378e+03 2.7209855e+02 -4.2462374e+03 - 3.3304876e+03 3.2672253e+02 -4.2472086e+03 - 3.3213201e+03 3.8145489e+02 -4.2483450e+03 - 3.3107313e+03 4.3631114e+02 -4.2496410e+03 - 3.2987170e+03 4.9130560e+02 -4.2510899e+03 - 3.2852731e+03 5.4645122e+02 -4.2526844e+03 - 3.2703949e+03 6.0175941e+02 -4.2544163e+03 - 3.2540781e+03 6.5723983e+02 -4.2562766e+03 - 3.2363187e+03 7.1290025e+02 -4.2582553e+03 - 3.2171127e+03 7.6874633e+02 -4.2603419e+03 - 3.1964570e+03 8.2478145e+02 -4.2625249e+03 - 3.1743493e+03 8.8100653e+02 -4.2647923e+03 - 3.1507880e+03 9.3741985e+02 -4.2671313e+03 - 3.1257728e+03 9.9401692e+02 -4.2695284e+03 - 3.0993050e+03 1.0507903e+03 -4.2719697e+03 - 3.0713873e+03 1.1077293e+03 -4.2744407e+03 - 3.0420244e+03 1.1648202e+03 -4.2769264e+03 - 3.0112230e+03 1.2220459e+03 -4.2794116e+03 - 2.9789922e+03 1.2793857e+03 -4.2818806e+03 - 2.9453435e+03 1.3368155e+03 -4.2843177e+03 - 2.9102913e+03 1.3943077e+03 -4.2867071e+03 - 2.8738528e+03 1.4518311e+03 -4.2890330e+03 - 2.8360482e+03 1.5093510e+03 -4.2912798e+03 - 2.7969010e+03 1.5668292e+03 -4.2934323e+03 - 2.7564379e+03 1.6242241e+03 -4.2954754e+03 - 2.7146891e+03 1.6814910e+03 -4.2973949e+03 - 2.6716882e+03 1.7385821e+03 -4.2991770e+03 - 2.6274720e+03 1.7954468e+03 -4.3008090e+03 - 2.5820807e+03 1.8520319e+03 -4.3022790e+03 - 2.5355580e+03 1.9082822e+03 -4.3035760e+03 - 2.4879502e+03 1.9641401e+03 -4.3046906e+03 - 2.4393069e+03 2.0195470e+03 -4.3056142e+03 - 2.3896802e+03 2.0744428e+03 -4.3063400e+03 - 2.3391245e+03 2.1287666e+03 -4.3068624e+03 - 2.2876964e+03 2.1824575e+03 -4.3071774e+03 - 2.2354542e+03 2.2354542e+03 -4.3072827e+03 - 2.1824575e+03 2.2876964e+03 -4.3071774e+03 - 2.1287666e+03 2.3391245e+03 -4.3068624e+03 - 2.0744428e+03 2.3896802e+03 -4.3063400e+03 - 2.0195470e+03 2.4393069e+03 -4.3056142e+03 - 1.9641401e+03 2.4879502e+03 -4.3046906e+03 - 1.9082822e+03 2.5355580e+03 -4.3035760e+03 - 1.8520319e+03 2.5820807e+03 -4.3022790e+03 - 1.7954468e+03 2.6274720e+03 -4.3008090e+03 - 1.7385821e+03 2.6716882e+03 -4.2991770e+03 - 1.6814910e+03 2.7146891e+03 -4.2973949e+03 - 1.6242241e+03 2.7564379e+03 -4.2954754e+03 - 1.5668292e+03 2.7969010e+03 -4.2934323e+03 - 1.5093510e+03 2.8360482e+03 -4.2912798e+03 - 1.4518311e+03 2.8738528e+03 -4.2890330e+03 - 1.3943077e+03 2.9102913e+03 -4.2867071e+03 - 1.3368155e+03 2.9453435e+03 -4.2843177e+03 - 1.2793857e+03 2.9789922e+03 -4.2818806e+03 - 1.2220459e+03 3.0112230e+03 -4.2794116e+03 - 1.1648202e+03 3.0420244e+03 -4.2769264e+03 - 1.1077293e+03 3.0713873e+03 -4.2744407e+03 - 1.0507903e+03 3.0993050e+03 -4.2719697e+03 - 9.9401692e+02 3.1257728e+03 -4.2695284e+03 - 9.3741985e+02 3.1507880e+03 -4.2671313e+03 - 8.8100653e+02 3.1743493e+03 -4.2647923e+03 - 8.2478145e+02 3.1964570e+03 -4.2625249e+03 - 7.6874633e+02 3.2171127e+03 -4.2603419e+03 - 7.1290025e+02 3.2363187e+03 -4.2582553e+03 - 6.5723983e+02 3.2540781e+03 -4.2562766e+03 - 6.0175941e+02 3.2703949e+03 -4.2544163e+03 - 5.4645122e+02 3.2852731e+03 -4.2526844e+03 - 4.9130560e+02 3.2987170e+03 -4.2510899e+03 - 4.3631114e+02 3.3107313e+03 -4.2496410e+03 - 3.8145489e+02 3.3213201e+03 -4.2483450e+03 - 3.2672253e+02 3.3304876e+03 -4.2472086e+03 - 2.7209855e+02 3.3382378e+03 -4.2462374e+03 - 2.1756642e+02 3.3445739e+03 -4.2454362e+03 - 1.6310877e+02 3.3494988e+03 -4.2448089e+03 - 1.0870756e+02 3.3530149e+03 -4.2443587e+03 - 5.4344263e+01 3.3551239e+03 -4.2440877e+03 - 0.0000000e+00 3.3558267e+03 -4.2439972e+03 - -5.4344263e+01 3.3551239e+03 -4.2440877e+03 - -1.0870756e+02 3.3530149e+03 -4.2443587e+03 - -1.6310877e+02 3.3494988e+03 -4.2448089e+03 - -2.1756642e+02 3.3445739e+03 -4.2454362e+03 - -2.7209855e+02 3.3382378e+03 -4.2462374e+03 - -3.2672253e+02 3.3304876e+03 -4.2472086e+03 - -3.8145489e+02 3.3213201e+03 -4.2483450e+03 - -4.3631114e+02 3.3107313e+03 -4.2496410e+03 - -4.9130560e+02 3.2987170e+03 -4.2510899e+03 - -5.4645122e+02 3.2852731e+03 -4.2526844e+03 - -6.0175941e+02 3.2703949e+03 -4.2544163e+03 - -6.5723983e+02 3.2540781e+03 -4.2562766e+03 - -7.1290025e+02 3.2363187e+03 -4.2582553e+03 - -7.6874633e+02 3.2171127e+03 -4.2603419e+03 - -8.2478145e+02 3.1964570e+03 -4.2625249e+03 - -8.8100653e+02 3.1743493e+03 -4.2647923e+03 - -9.3741985e+02 3.1507880e+03 -4.2671313e+03 - -9.9401692e+02 3.1257728e+03 -4.2695284e+03 - -1.0507903e+03 3.0993050e+03 -4.2719697e+03 - -1.1077293e+03 3.0713873e+03 -4.2744407e+03 - -1.1648202e+03 3.0420244e+03 -4.2769264e+03 - -1.2220459e+03 3.0112230e+03 -4.2794116e+03 - -1.2793857e+03 2.9789922e+03 -4.2818806e+03 - -1.3368155e+03 2.9453435e+03 -4.2843177e+03 - -1.3943077e+03 2.9102913e+03 -4.2867071e+03 - -1.4518311e+03 2.8738528e+03 -4.2890330e+03 - -1.5093510e+03 2.8360482e+03 -4.2912798e+03 - -1.5668292e+03 2.7969010e+03 -4.2934323e+03 - -1.6242241e+03 2.7564379e+03 -4.2954754e+03 - -1.6814910e+03 2.7146891e+03 -4.2973949e+03 - -1.7385821e+03 2.6716882e+03 -4.2991770e+03 - -1.7954468e+03 2.6274720e+03 -4.3008090e+03 - -1.8520319e+03 2.5820807e+03 -4.3022790e+03 - -1.9082822e+03 2.5355580e+03 -4.3035760e+03 - -1.9641401e+03 2.4879502e+03 -4.3046906e+03 - -2.0195470e+03 2.4393069e+03 -4.3056142e+03 - -2.0744428e+03 2.3896802e+03 -4.3063400e+03 - -2.1287666e+03 2.3391245e+03 -4.3068624e+03 - -2.1824575e+03 2.2876964e+03 -4.3071774e+03 - -2.2354542e+03 2.2354542e+03 -4.3072827e+03 - -2.2876964e+03 2.1824575e+03 -4.3071774e+03 - -2.3391245e+03 2.1287666e+03 -4.3068624e+03 - -2.3896802e+03 2.0744428e+03 -4.3063400e+03 - -2.4393069e+03 2.0195470e+03 -4.3056142e+03 - -2.4879502e+03 1.9641401e+03 -4.3046906e+03 - -2.5355580e+03 1.9082822e+03 -4.3035760e+03 - -2.5820807e+03 1.8520319e+03 -4.3022790e+03 - -2.6274720e+03 1.7954468e+03 -4.3008090e+03 - -2.6716882e+03 1.7385821e+03 -4.2991770e+03 - -2.7146891e+03 1.6814910e+03 -4.2973949e+03 - -2.7564379e+03 1.6242241e+03 -4.2954754e+03 - -2.7969010e+03 1.5668292e+03 -4.2934323e+03 - -2.8360482e+03 1.5093510e+03 -4.2912798e+03 - -2.8738528e+03 1.4518311e+03 -4.2890330e+03 - -2.9102913e+03 1.3943077e+03 -4.2867071e+03 - -2.9453435e+03 1.3368155e+03 -4.2843177e+03 - -2.9789922e+03 1.2793857e+03 -4.2818806e+03 - -3.0112230e+03 1.2220459e+03 -4.2794116e+03 - -3.0420244e+03 1.1648202e+03 -4.2769264e+03 - -3.0713873e+03 1.1077293e+03 -4.2744407e+03 - -3.0993050e+03 1.0507903e+03 -4.2719697e+03 - -3.1257728e+03 9.9401692e+02 -4.2695284e+03 - -3.1507880e+03 9.3741985e+02 -4.2671313e+03 - -3.1743493e+03 8.8100653e+02 -4.2647923e+03 - -3.1964570e+03 8.2478145e+02 -4.2625249e+03 - -3.2171127e+03 7.6874633e+02 -4.2603419e+03 - -3.2363187e+03 7.1290025e+02 -4.2582553e+03 - -3.2540781e+03 6.5723983e+02 -4.2562766e+03 - -3.2703949e+03 6.0175941e+02 -4.2544163e+03 - -3.2852731e+03 5.4645122e+02 -4.2526844e+03 - -3.2987170e+03 4.9130560e+02 -4.2510899e+03 - -3.3107313e+03 4.3631114e+02 -4.2496410e+03 - -3.3213201e+03 3.8145489e+02 -4.2483450e+03 - -3.3304876e+03 3.2672253e+02 -4.2472086e+03 - -3.3382378e+03 2.7209855e+02 -4.2462374e+03 - -3.3445739e+03 2.1756642e+02 -4.2454362e+03 - -3.3494988e+03 1.6310877e+02 -4.2448089e+03 - -3.3530149e+03 1.0870756e+02 -4.2443587e+03 - -3.3551239e+03 5.4344263e+01 -4.2440877e+03 - -3.3558267e+03 -4.8134273e-09 -4.2439972e+03 - -3.3551239e+03 -5.4344263e+01 -4.2440877e+03 - -3.3530149e+03 -1.0870756e+02 -4.2443587e+03 - -3.3494988e+03 -1.6310877e+02 -4.2448089e+03 - -3.3445739e+03 -2.1756642e+02 -4.2454362e+03 - -3.3382378e+03 -2.7209855e+02 -4.2462374e+03 - -3.3304876e+03 -3.2672253e+02 -4.2472086e+03 - -3.3213201e+03 -3.8145489e+02 -4.2483450e+03 - -3.3107313e+03 -4.3631114e+02 -4.2496410e+03 - -3.2987170e+03 -4.9130560e+02 -4.2510899e+03 - -3.2852731e+03 -5.4645122e+02 -4.2526844e+03 - -3.2703949e+03 -6.0175941e+02 -4.2544163e+03 - -3.2540781e+03 -6.5723983e+02 -4.2562766e+03 - -3.2363187e+03 -7.1290025e+02 -4.2582553e+03 - -3.2171127e+03 -7.6874633e+02 -4.2603419e+03 - -3.1964570e+03 -8.2478145e+02 -4.2625249e+03 - -3.1743493e+03 -8.8100653e+02 -4.2647923e+03 - -3.1507880e+03 -9.3741985e+02 -4.2671313e+03 - -3.1257728e+03 -9.9401692e+02 -4.2695284e+03 - -3.0993050e+03 -1.0507903e+03 -4.2719697e+03 - -3.0713873e+03 -1.1077293e+03 -4.2744407e+03 - -3.0420244e+03 -1.1648202e+03 -4.2769264e+03 - -3.0112230e+03 -1.2220459e+03 -4.2794116e+03 - -2.9789922e+03 -1.2793857e+03 -4.2818806e+03 - -2.9453435e+03 -1.3368155e+03 -4.2843177e+03 - -2.9102913e+03 -1.3943077e+03 -4.2867071e+03 - -2.8738528e+03 -1.4518311e+03 -4.2890330e+03 - -2.8360482e+03 -1.5093510e+03 -4.2912798e+03 - -2.7969010e+03 -1.5668292e+03 -4.2934323e+03 - -2.7564379e+03 -1.6242241e+03 -4.2954754e+03 - -2.7146891e+03 -1.6814910e+03 -4.2973949e+03 - -2.6716882e+03 -1.7385821e+03 -4.2991770e+03 - -2.6274720e+03 -1.7954468e+03 -4.3008090e+03 - -2.5820807e+03 -1.8520319e+03 -4.3022790e+03 - -2.5355580e+03 -1.9082822e+03 -4.3035760e+03 - -2.4879502e+03 -1.9641401e+03 -4.3046906e+03 - -2.4393069e+03 -2.0195470e+03 -4.3056142e+03 - -2.3896802e+03 -2.0744428e+03 -4.3063400e+03 - -2.3391245e+03 -2.1287666e+03 -4.3068624e+03 - -2.2876964e+03 -2.1824575e+03 -4.3071774e+03 - -2.2354542e+03 -2.2354542e+03 -4.3072827e+03 - -2.1824575e+03 -2.2876964e+03 -4.3071774e+03 - -2.1287666e+03 -2.3391245e+03 -4.3068624e+03 - -2.0744428e+03 -2.3896802e+03 -4.3063400e+03 - -2.0195470e+03 -2.4393069e+03 -4.3056142e+03 - -1.9641401e+03 -2.4879502e+03 -4.3046906e+03 - -1.9082822e+03 -2.5355580e+03 -4.3035760e+03 - -1.8520319e+03 -2.5820807e+03 -4.3022790e+03 - -1.7954468e+03 -2.6274720e+03 -4.3008090e+03 - -1.7385821e+03 -2.6716882e+03 -4.2991770e+03 - -1.6814910e+03 -2.7146891e+03 -4.2973949e+03 - -1.6242241e+03 -2.7564379e+03 -4.2954754e+03 - -1.5668292e+03 -2.7969010e+03 -4.2934323e+03 - -1.5093510e+03 -2.8360482e+03 -4.2912798e+03 - -1.4518311e+03 -2.8738528e+03 -4.2890330e+03 - -1.3943077e+03 -2.9102913e+03 -4.2867071e+03 - -1.3368155e+03 -2.9453435e+03 -4.2843177e+03 - -1.2793857e+03 -2.9789922e+03 -4.2818806e+03 - -1.2220459e+03 -3.0112230e+03 -4.2794116e+03 - -1.1648202e+03 -3.0420244e+03 -4.2769264e+03 - -1.1077293e+03 -3.0713873e+03 -4.2744407e+03 - -1.0507903e+03 -3.0993050e+03 -4.2719697e+03 - -9.9401692e+02 -3.1257728e+03 -4.2695284e+03 - -9.3741985e+02 -3.1507880e+03 -4.2671313e+03 - -8.8100653e+02 -3.1743493e+03 -4.2647923e+03 - -8.2478145e+02 -3.1964570e+03 -4.2625249e+03 - -7.6874633e+02 -3.2171127e+03 -4.2603419e+03 - -7.1290025e+02 -3.2363187e+03 -4.2582553e+03 - -6.5723983e+02 -3.2540781e+03 -4.2562766e+03 - -6.0175941e+02 -3.2703949e+03 -4.2544163e+03 - -5.4645122e+02 -3.2852731e+03 -4.2526844e+03 - -4.9130560e+02 -3.2987170e+03 -4.2510899e+03 - -4.3631114e+02 -3.3107313e+03 -4.2496410e+03 - -3.8145489e+02 -3.3213201e+03 -4.2483450e+03 - -3.2672253e+02 -3.3304876e+03 -4.2472086e+03 - -2.7209855e+02 -3.3382378e+03 -4.2462374e+03 - -2.1756642e+02 -3.3445739e+03 -4.2454362e+03 - -1.6310877e+02 -3.3494988e+03 -4.2448089e+03 - -1.0870756e+02 -3.3530149e+03 -4.2443587e+03 - -5.4344263e+01 -3.3551239e+03 -4.2440877e+03 - -4.8134273e-09 -3.3558267e+03 -4.2439972e+03 - 5.4344263e+01 -3.3551239e+03 -4.2440877e+03 - 1.0870756e+02 -3.3530149e+03 -4.2443587e+03 - 1.6310877e+02 -3.3494988e+03 -4.2448089e+03 - 2.1756642e+02 -3.3445739e+03 -4.2454362e+03 - 2.7209855e+02 -3.3382378e+03 -4.2462374e+03 - 3.2672253e+02 -3.3304876e+03 -4.2472086e+03 - 3.8145489e+02 -3.3213201e+03 -4.2483450e+03 - 4.3631114e+02 -3.3107313e+03 -4.2496410e+03 - 4.9130560e+02 -3.2987170e+03 -4.2510899e+03 - 5.4645122e+02 -3.2852731e+03 -4.2526844e+03 - 6.0175941e+02 -3.2703949e+03 -4.2544163e+03 - 6.5723983e+02 -3.2540781e+03 -4.2562766e+03 - 7.1290025e+02 -3.2363187e+03 -4.2582553e+03 - 7.6874633e+02 -3.2171127e+03 -4.2603419e+03 - 8.2478145e+02 -3.1964570e+03 -4.2625249e+03 - 8.8100653e+02 -3.1743493e+03 -4.2647923e+03 - 9.3741985e+02 -3.1507880e+03 -4.2671313e+03 - 9.9401692e+02 -3.1257728e+03 -4.2695284e+03 - 1.0507903e+03 -3.0993050e+03 -4.2719697e+03 - 1.1077293e+03 -3.0713873e+03 -4.2744407e+03 - 1.1648202e+03 -3.0420244e+03 -4.2769264e+03 - 1.2220459e+03 -3.0112230e+03 -4.2794116e+03 - 1.2793857e+03 -2.9789922e+03 -4.2818806e+03 - 1.3368155e+03 -2.9453435e+03 -4.2843177e+03 - 1.3943077e+03 -2.9102913e+03 -4.2867071e+03 - 1.4518311e+03 -2.8738528e+03 -4.2890330e+03 - 1.5093510e+03 -2.8360482e+03 -4.2912798e+03 - 1.5668292e+03 -2.7969010e+03 -4.2934323e+03 - 1.6242241e+03 -2.7564379e+03 -4.2954754e+03 - 1.6814910e+03 -2.7146891e+03 -4.2973949e+03 - 1.7385821e+03 -2.6716882e+03 -4.2991770e+03 - 1.7954468e+03 -2.6274720e+03 -4.3008090e+03 - 1.8520319e+03 -2.5820807e+03 -4.3022790e+03 - 1.9082822e+03 -2.5355580e+03 -4.3035760e+03 - 1.9641401e+03 -2.4879502e+03 -4.3046906e+03 - 2.0195470e+03 -2.4393069e+03 -4.3056142e+03 - 2.0744428e+03 -2.3896802e+03 -4.3063400e+03 - 2.1287666e+03 -2.3391245e+03 -4.3068624e+03 - 2.1824575e+03 -2.2876964e+03 -4.3071774e+03 - 2.2354542e+03 -2.2354542e+03 -4.3072827e+03 - 2.2876964e+03 -2.1824575e+03 -4.3071774e+03 - 2.3391245e+03 -2.1287666e+03 -4.3068624e+03 - 2.3896802e+03 -2.0744428e+03 -4.3063400e+03 - 2.4393069e+03 -2.0195470e+03 -4.3056142e+03 - 2.4879502e+03 -1.9641401e+03 -4.3046906e+03 - 2.5355580e+03 -1.9082822e+03 -4.3035760e+03 - 2.5820807e+03 -1.8520319e+03 -4.3022790e+03 - 2.6274720e+03 -1.7954468e+03 -4.3008090e+03 - 2.6716882e+03 -1.7385821e+03 -4.2991770e+03 - 2.7146891e+03 -1.6814910e+03 -4.2973949e+03 - 2.7564379e+03 -1.6242241e+03 -4.2954754e+03 - 2.7969010e+03 -1.5668292e+03 -4.2934323e+03 - 2.8360482e+03 -1.5093510e+03 -4.2912798e+03 - 2.8738528e+03 -1.4518311e+03 -4.2890330e+03 - 2.9102913e+03 -1.3943077e+03 -4.2867071e+03 - 2.9453435e+03 -1.3368155e+03 -4.2843177e+03 - 2.9789922e+03 -1.2793857e+03 -4.2818806e+03 - 3.0112230e+03 -1.2220459e+03 -4.2794116e+03 - 3.0420244e+03 -1.1648202e+03 -4.2769264e+03 - 3.0713873e+03 -1.1077293e+03 -4.2744407e+03 - 3.0993050e+03 -1.0507903e+03 -4.2719697e+03 - 3.1257728e+03 -9.9401692e+02 -4.2695284e+03 - 3.1507880e+03 -9.3741985e+02 -4.2671313e+03 - 3.1743493e+03 -8.8100653e+02 -4.2647923e+03 - 3.1964570e+03 -8.2478145e+02 -4.2625249e+03 - 3.2171127e+03 -7.6874633e+02 -4.2603419e+03 - 3.2363187e+03 -7.1290025e+02 -4.2582553e+03 - 3.2540781e+03 -6.5723983e+02 -4.2562766e+03 - 3.2703949e+03 -6.0175941e+02 -4.2544163e+03 - 3.2852731e+03 -5.4645122e+02 -4.2526844e+03 - 3.2987170e+03 -4.9130560e+02 -4.2510899e+03 - 3.3107313e+03 -4.3631114e+02 -4.2496410e+03 - 3.3213201e+03 -3.8145489e+02 -4.2483450e+03 - 3.3304876e+03 -3.2672253e+02 -4.2472086e+03 - 3.3382378e+03 -2.7209855e+02 -4.2462374e+03 - 3.3445739e+03 -2.1756642e+02 -4.2454362e+03 - 3.3494988e+03 -1.6310877e+02 -4.2448089e+03 - 3.3530149e+03 -1.0870756e+02 -4.2443587e+03 - 3.3551239e+03 -5.4344263e+01 -4.2440877e+03 - 3.3558267e+03 4.8134273e-09 -4.2439972e+03 - 3.2865820e+03 0.0000000e+00 -4.2801355e+03 - 3.2858912e+03 5.3793806e+01 -4.2802184e+03 - 3.2838186e+03 1.0760399e+02 -4.2804665e+03 - 3.2803633e+03 1.6144677e+02 -4.2808787e+03 - 3.2755241e+03 2.1533805e+02 -4.2814529e+03 - 3.2692991e+03 2.6929325e+02 -4.2821862e+03 - 3.2616861e+03 3.2332714e+02 -4.2830750e+03 - 3.2526826e+03 3.7745369e+02 -4.2841147e+03 - 3.2422856e+03 4.3168590e+02 -4.2853001e+03 - 3.2304920e+03 4.8603564e+02 -4.2866250e+03 - 3.2172987e+03 5.4051347e+02 -4.2880826e+03 - 3.2027025e+03 5.9512848e+02 -4.2896652e+03 - 3.1867005e+03 6.4988812e+02 -4.2913645e+03 - 3.1692898e+03 7.0479804e+02 -4.2931713e+03 - 3.1504682e+03 7.5986192e+02 -4.2950758e+03 - 3.1302342e+03 8.1508129e+02 -4.2970674e+03 - 3.1085867e+03 8.7045541e+02 -4.2991350e+03 - 3.0855261e+03 9.2598106e+02 -4.3012668e+03 - 3.0610534e+03 9.8165245e+02 -4.3034506e+03 - 3.0351715e+03 1.0374611e+03 -4.3056735e+03 - 3.0078844e+03 1.0933955e+03 -4.3079222e+03 - 2.9791982e+03 1.1494414e+03 -4.3101831e+03 - 2.9491208e+03 1.2055814e+03 -4.3124422e+03 - 2.9176621e+03 1.2617949e+03 -4.3146856e+03 - 2.8848347e+03 1.3180583e+03 -4.3168987e+03 - 2.8506534e+03 1.3743447e+03 -4.3190674e+03 - 2.8151356e+03 1.4306239e+03 -4.3211774e+03 - 2.7783016e+03 1.4868626e+03 -4.3232147e+03 - 2.7401747e+03 1.5430247e+03 -4.3251654e+03 - 2.7007810e+03 1.5990706e+03 -4.3270162e+03 - 2.6601495e+03 1.6549583e+03 -4.3287542e+03 - 2.6183125e+03 1.7106429e+03 -4.3303672e+03 - 2.5753051e+03 1.7660770e+03 -4.3318438e+03 - 2.5311656e+03 1.8212110e+03 -4.3331733e+03 - 2.4859347e+03 1.8759934e+03 -4.3343460e+03 - 2.4396563e+03 1.9303709e+03 -4.3353535e+03 - 2.3923767e+03 1.9842890e+03 -4.3361882e+03 - 2.3441444e+03 2.0376920e+03 -4.3368440e+03 - 2.2950101e+03 2.0905237e+03 -4.3373159e+03 - 2.2450263e+03 2.1427275e+03 -4.3376005e+03 - 2.1942471e+03 2.1942471e+03 -4.3376956e+03 - 2.1427275e+03 2.2450263e+03 -4.3376005e+03 - 2.0905237e+03 2.2950101e+03 -4.3373159e+03 - 2.0376920e+03 2.3441444e+03 -4.3368440e+03 - 1.9842890e+03 2.3923767e+03 -4.3361882e+03 - 1.9303709e+03 2.4396563e+03 -4.3353535e+03 - 1.8759934e+03 2.4859347e+03 -4.3343460e+03 - 1.8212110e+03 2.5311656e+03 -4.3331733e+03 - 1.7660770e+03 2.5753051e+03 -4.3318438e+03 - 1.7106429e+03 2.6183125e+03 -4.3303672e+03 - 1.6549583e+03 2.6601495e+03 -4.3287542e+03 - 1.5990706e+03 2.7007810e+03 -4.3270162e+03 - 1.5430247e+03 2.7401747e+03 -4.3251654e+03 - 1.4868626e+03 2.7783016e+03 -4.3232147e+03 - 1.4306239e+03 2.8151356e+03 -4.3211774e+03 - 1.3743447e+03 2.8506534e+03 -4.3190674e+03 - 1.3180583e+03 2.8848347e+03 -4.3168987e+03 - 1.2617949e+03 2.9176621e+03 -4.3146856e+03 - 1.2055814e+03 2.9491208e+03 -4.3124422e+03 - 1.1494414e+03 2.9791982e+03 -4.3101831e+03 - 1.0933955e+03 3.0078844e+03 -4.3079222e+03 - 1.0374611e+03 3.0351715e+03 -4.3056735e+03 - 9.8165245e+02 3.0610534e+03 -4.3034506e+03 - 9.2598106e+02 3.0855261e+03 -4.3012668e+03 - 8.7045541e+02 3.1085867e+03 -4.2991350e+03 - 8.1508129e+02 3.1302342e+03 -4.2970674e+03 - 7.5986192e+02 3.1504682e+03 -4.2950758e+03 - 7.0479804e+02 3.1692898e+03 -4.2931713e+03 - 6.4988812e+02 3.1867005e+03 -4.2913645e+03 - 5.9512848e+02 3.2027025e+03 -4.2896652e+03 - 5.4051347e+02 3.2172987e+03 -4.2880826e+03 - 4.8603564e+02 3.2304920e+03 -4.2866250e+03 - 4.3168590e+02 3.2422856e+03 -4.2853001e+03 - 3.7745369e+02 3.2526826e+03 -4.2841147e+03 - 3.2332714e+02 3.2616861e+03 -4.2830750e+03 - 2.6929325e+02 3.2692991e+03 -4.2821862e+03 - 2.1533805e+02 3.2755241e+03 -4.2814529e+03 - 1.6144677e+02 3.2803633e+03 -4.2808787e+03 - 1.0760399e+02 3.2838186e+03 -4.2804665e+03 - 5.3793806e+01 3.2858912e+03 -4.2802184e+03 - 0.0000000e+00 3.2865820e+03 -4.2801355e+03 - -5.3793806e+01 3.2858912e+03 -4.2802184e+03 - -1.0760399e+02 3.2838186e+03 -4.2804665e+03 - -1.6144677e+02 3.2803633e+03 -4.2808787e+03 - -2.1533805e+02 3.2755241e+03 -4.2814529e+03 - -2.6929325e+02 3.2692991e+03 -4.2821862e+03 - -3.2332714e+02 3.2616861e+03 -4.2830750e+03 - -3.7745369e+02 3.2526826e+03 -4.2841147e+03 - -4.3168590e+02 3.2422856e+03 -4.2853001e+03 - -4.8603564e+02 3.2304920e+03 -4.2866250e+03 - -5.4051347e+02 3.2172987e+03 -4.2880826e+03 - -5.9512848e+02 3.2027025e+03 -4.2896652e+03 - -6.4988812e+02 3.1867005e+03 -4.2913645e+03 - -7.0479804e+02 3.1692898e+03 -4.2931713e+03 - -7.5986192e+02 3.1504682e+03 -4.2950758e+03 - -8.1508129e+02 3.1302342e+03 -4.2970674e+03 - -8.7045541e+02 3.1085867e+03 -4.2991350e+03 - -9.2598106e+02 3.0855261e+03 -4.3012668e+03 - -9.8165245e+02 3.0610534e+03 -4.3034506e+03 - -1.0374611e+03 3.0351715e+03 -4.3056735e+03 - -1.0933955e+03 3.0078844e+03 -4.3079222e+03 - -1.1494414e+03 2.9791982e+03 -4.3101831e+03 - -1.2055814e+03 2.9491208e+03 -4.3124422e+03 - -1.2617949e+03 2.9176621e+03 -4.3146856e+03 - -1.3180583e+03 2.8848347e+03 -4.3168987e+03 - -1.3743447e+03 2.8506534e+03 -4.3190674e+03 - -1.4306239e+03 2.8151356e+03 -4.3211774e+03 - -1.4868626e+03 2.7783016e+03 -4.3232147e+03 - -1.5430247e+03 2.7401747e+03 -4.3251654e+03 - -1.5990706e+03 2.7007810e+03 -4.3270162e+03 - -1.6549583e+03 2.6601495e+03 -4.3287542e+03 - -1.7106429e+03 2.6183125e+03 -4.3303672e+03 - -1.7660770e+03 2.5753051e+03 -4.3318438e+03 - -1.8212110e+03 2.5311656e+03 -4.3331733e+03 - -1.8759934e+03 2.4859347e+03 -4.3343460e+03 - -1.9303709e+03 2.4396563e+03 -4.3353535e+03 - -1.9842890e+03 2.3923767e+03 -4.3361882e+03 - -2.0376920e+03 2.3441444e+03 -4.3368440e+03 - -2.0905237e+03 2.2950101e+03 -4.3373159e+03 - -2.1427275e+03 2.2450263e+03 -4.3376005e+03 - -2.1942471e+03 2.1942471e+03 -4.3376956e+03 - -2.2450263e+03 2.1427275e+03 -4.3376005e+03 - -2.2950101e+03 2.0905237e+03 -4.3373159e+03 - -2.3441444e+03 2.0376920e+03 -4.3368440e+03 - -2.3923767e+03 1.9842890e+03 -4.3361882e+03 - -2.4396563e+03 1.9303709e+03 -4.3353535e+03 - -2.4859347e+03 1.8759934e+03 -4.3343460e+03 - -2.5311656e+03 1.8212110e+03 -4.3331733e+03 - -2.5753051e+03 1.7660770e+03 -4.3318438e+03 - -2.6183125e+03 1.7106429e+03 -4.3303672e+03 - -2.6601495e+03 1.6549583e+03 -4.3287542e+03 - -2.7007810e+03 1.5990706e+03 -4.3270162e+03 - -2.7401747e+03 1.5430247e+03 -4.3251654e+03 - -2.7783016e+03 1.4868626e+03 -4.3232147e+03 - -2.8151356e+03 1.4306239e+03 -4.3211774e+03 - -2.8506534e+03 1.3743447e+03 -4.3190674e+03 - -2.8848347e+03 1.3180583e+03 -4.3168987e+03 - -2.9176621e+03 1.2617949e+03 -4.3146856e+03 - -2.9491208e+03 1.2055814e+03 -4.3124422e+03 - -2.9791982e+03 1.1494414e+03 -4.3101831e+03 - -3.0078844e+03 1.0933955e+03 -4.3079222e+03 - -3.0351715e+03 1.0374611e+03 -4.3056735e+03 - -3.0610534e+03 9.8165245e+02 -4.3034506e+03 - -3.0855261e+03 9.2598106e+02 -4.3012668e+03 - -3.1085867e+03 8.7045541e+02 -4.2991350e+03 - -3.1302342e+03 8.1508129e+02 -4.2970674e+03 - -3.1504682e+03 7.5986192e+02 -4.2950758e+03 - -3.1692898e+03 7.0479804e+02 -4.2931713e+03 - -3.1867005e+03 6.4988812e+02 -4.2913645e+03 - -3.2027025e+03 5.9512848e+02 -4.2896652e+03 - -3.2172987e+03 5.4051347e+02 -4.2880826e+03 - -3.2304920e+03 4.8603564e+02 -4.2866250e+03 - -3.2422856e+03 4.3168590e+02 -4.2853001e+03 - -3.2526826e+03 3.7745369e+02 -4.2841147e+03 - -3.2616861e+03 3.2332714e+02 -4.2830750e+03 - -3.2692991e+03 2.6929325e+02 -4.2821862e+03 - -3.2755241e+03 2.1533805e+02 -4.2814529e+03 - -3.2803633e+03 1.6144677e+02 -4.2808787e+03 - -3.2838186e+03 1.0760399e+02 -4.2804665e+03 - -3.2858912e+03 5.3793806e+01 -4.2802184e+03 - -3.2865820e+03 0.0000000e+00 -4.2801355e+03 - -3.2858912e+03 -5.3793806e+01 -4.2802184e+03 - -3.2838186e+03 -1.0760399e+02 -4.2804665e+03 - -3.2803633e+03 -1.6144677e+02 -4.2808787e+03 - -3.2755241e+03 -2.1533805e+02 -4.2814529e+03 - -3.2692991e+03 -2.6929325e+02 -4.2821862e+03 - -3.2616861e+03 -3.2332714e+02 -4.2830750e+03 - -3.2526826e+03 -3.7745369e+02 -4.2841147e+03 - -3.2422856e+03 -4.3168590e+02 -4.2853001e+03 - -3.2304920e+03 -4.8603564e+02 -4.2866250e+03 - -3.2172987e+03 -5.4051347e+02 -4.2880826e+03 - -3.2027025e+03 -5.9512848e+02 -4.2896652e+03 - -3.1867005e+03 -6.4988812e+02 -4.2913645e+03 - -3.1692898e+03 -7.0479804e+02 -4.2931713e+03 - -3.1504682e+03 -7.5986192e+02 -4.2950758e+03 - -3.1302342e+03 -8.1508129e+02 -4.2970674e+03 - -3.1085867e+03 -8.7045541e+02 -4.2991350e+03 - -3.0855261e+03 -9.2598106e+02 -4.3012668e+03 - -3.0610534e+03 -9.8165245e+02 -4.3034506e+03 - -3.0351715e+03 -1.0374611e+03 -4.3056735e+03 - -3.0078844e+03 -1.0933955e+03 -4.3079222e+03 - -2.9791982e+03 -1.1494414e+03 -4.3101831e+03 - -2.9491208e+03 -1.2055814e+03 -4.3124422e+03 - -2.9176621e+03 -1.2617949e+03 -4.3146856e+03 - -2.8848347e+03 -1.3180583e+03 -4.3168987e+03 - -2.8506534e+03 -1.3743447e+03 -4.3190674e+03 - -2.8151356e+03 -1.4306239e+03 -4.3211774e+03 - -2.7783016e+03 -1.4868626e+03 -4.3232147e+03 - -2.7401747e+03 -1.5430247e+03 -4.3251654e+03 - -2.7007810e+03 -1.5990706e+03 -4.3270162e+03 - -2.6601495e+03 -1.6549583e+03 -4.3287542e+03 - -2.6183125e+03 -1.7106429e+03 -4.3303672e+03 - -2.5753051e+03 -1.7660770e+03 -4.3318438e+03 - -2.5311656e+03 -1.8212110e+03 -4.3331733e+03 - -2.4859347e+03 -1.8759934e+03 -4.3343460e+03 - -2.4396563e+03 -1.9303709e+03 -4.3353535e+03 - -2.3923767e+03 -1.9842890e+03 -4.3361882e+03 - -2.3441444e+03 -2.0376920e+03 -4.3368440e+03 - -2.2950101e+03 -2.0905237e+03 -4.3373159e+03 - -2.2450263e+03 -2.1427275e+03 -4.3376005e+03 - -2.1942471e+03 -2.1942471e+03 -4.3376956e+03 - -2.1427275e+03 -2.2450263e+03 -4.3376005e+03 - -2.0905237e+03 -2.2950101e+03 -4.3373159e+03 - -2.0376920e+03 -2.3441444e+03 -4.3368440e+03 - -1.9842890e+03 -2.3923767e+03 -4.3361882e+03 - -1.9303709e+03 -2.4396563e+03 -4.3353535e+03 - -1.8759934e+03 -2.4859347e+03 -4.3343460e+03 - -1.8212110e+03 -2.5311656e+03 -4.3331733e+03 - -1.7660770e+03 -2.5753051e+03 -4.3318438e+03 - -1.7106429e+03 -2.6183125e+03 -4.3303672e+03 - -1.6549583e+03 -2.6601495e+03 -4.3287542e+03 - -1.5990706e+03 -2.7007810e+03 -4.3270162e+03 - -1.5430247e+03 -2.7401747e+03 -4.3251654e+03 - -1.4868626e+03 -2.7783016e+03 -4.3232147e+03 - -1.4306239e+03 -2.8151356e+03 -4.3211774e+03 - -1.3743447e+03 -2.8506534e+03 -4.3190674e+03 - -1.3180583e+03 -2.8848347e+03 -4.3168987e+03 - -1.2617949e+03 -2.9176621e+03 -4.3146856e+03 - -1.2055814e+03 -2.9491208e+03 -4.3124422e+03 - -1.1494414e+03 -2.9791982e+03 -4.3101831e+03 - -1.0933955e+03 -3.0078844e+03 -4.3079222e+03 - -1.0374611e+03 -3.0351715e+03 -4.3056735e+03 - -9.8165245e+02 -3.0610534e+03 -4.3034506e+03 - -9.2598106e+02 -3.0855261e+03 -4.3012668e+03 - -8.7045541e+02 -3.1085867e+03 -4.2991350e+03 - -8.1508129e+02 -3.1302342e+03 -4.2970674e+03 - -7.5986192e+02 -3.1504682e+03 -4.2950758e+03 - -7.0479804e+02 -3.1692898e+03 -4.2931713e+03 - -6.4988812e+02 -3.1867005e+03 -4.2913645e+03 - -5.9512848e+02 -3.2027025e+03 -4.2896652e+03 - -5.4051347e+02 -3.2172987e+03 -4.2880826e+03 - -4.8603564e+02 -3.2304920e+03 -4.2866250e+03 - -4.3168590e+02 -3.2422856e+03 -4.2853001e+03 - -3.7745369e+02 -3.2526826e+03 -4.2841147e+03 - -3.2332714e+02 -3.2616861e+03 -4.2830750e+03 - -2.6929325e+02 -3.2692991e+03 -4.2821862e+03 - -2.1533805e+02 -3.2755241e+03 -4.2814529e+03 - -1.6144677e+02 -3.2803633e+03 -4.2808787e+03 - -1.0760399e+02 -3.2838186e+03 -4.2804665e+03 - -5.3793806e+01 -3.2858912e+03 -4.2802184e+03 - 0.0000000e+00 -3.2865820e+03 -4.2801355e+03 - 5.3793806e+01 -3.2858912e+03 -4.2802184e+03 - 1.0760399e+02 -3.2838186e+03 -4.2804665e+03 - 1.6144677e+02 -3.2803633e+03 -4.2808787e+03 - 2.1533805e+02 -3.2755241e+03 -4.2814529e+03 - 2.6929325e+02 -3.2692991e+03 -4.2821862e+03 - 3.2332714e+02 -3.2616861e+03 -4.2830750e+03 - 3.7745369e+02 -3.2526826e+03 -4.2841147e+03 - 4.3168590e+02 -3.2422856e+03 -4.2853001e+03 - 4.8603564e+02 -3.2304920e+03 -4.2866250e+03 - 5.4051347e+02 -3.2172987e+03 -4.2880826e+03 - 5.9512848e+02 -3.2027025e+03 -4.2896652e+03 - 6.4988812e+02 -3.1867005e+03 -4.2913645e+03 - 7.0479804e+02 -3.1692898e+03 -4.2931713e+03 - 7.5986192e+02 -3.1504682e+03 -4.2950758e+03 - 8.1508129e+02 -3.1302342e+03 -4.2970674e+03 - 8.7045541e+02 -3.1085867e+03 -4.2991350e+03 - 9.2598106e+02 -3.0855261e+03 -4.3012668e+03 - 9.8165245e+02 -3.0610534e+03 -4.3034506e+03 - 1.0374611e+03 -3.0351715e+03 -4.3056735e+03 - 1.0933955e+03 -3.0078844e+03 -4.3079222e+03 - 1.1494414e+03 -2.9791982e+03 -4.3101831e+03 - 1.2055814e+03 -2.9491208e+03 -4.3124422e+03 - 1.2617949e+03 -2.9176621e+03 -4.3146856e+03 - 1.3180583e+03 -2.8848347e+03 -4.3168987e+03 - 1.3743447e+03 -2.8506534e+03 -4.3190674e+03 - 1.4306239e+03 -2.8151356e+03 -4.3211774e+03 - 1.4868626e+03 -2.7783016e+03 -4.3232147e+03 - 1.5430247e+03 -2.7401747e+03 -4.3251654e+03 - 1.5990706e+03 -2.7007810e+03 -4.3270162e+03 - 1.6549583e+03 -2.6601495e+03 -4.3287542e+03 - 1.7106429e+03 -2.6183125e+03 -4.3303672e+03 - 1.7660770e+03 -2.5753051e+03 -4.3318438e+03 - 1.8212110e+03 -2.5311656e+03 -4.3331733e+03 - 1.8759934e+03 -2.4859347e+03 -4.3343460e+03 - 1.9303709e+03 -2.4396563e+03 -4.3353535e+03 - 1.9842890e+03 -2.3923767e+03 -4.3361882e+03 - 2.0376920e+03 -2.3441444e+03 -4.3368440e+03 - 2.0905237e+03 -2.2950101e+03 -4.3373159e+03 - 2.1427275e+03 -2.2450263e+03 -4.3376005e+03 - 2.1942471e+03 -2.1942471e+03 -4.3376956e+03 - 2.2450263e+03 -2.1427275e+03 -4.3376005e+03 - 2.2950101e+03 -2.0905237e+03 -4.3373159e+03 - 2.3441444e+03 -2.0376920e+03 -4.3368440e+03 - 2.3923767e+03 -1.9842890e+03 -4.3361882e+03 - 2.4396563e+03 -1.9303709e+03 -4.3353535e+03 - 2.4859347e+03 -1.8759934e+03 -4.3343460e+03 - 2.5311656e+03 -1.8212110e+03 -4.3331733e+03 - 2.5753051e+03 -1.7660770e+03 -4.3318438e+03 - 2.6183125e+03 -1.7106429e+03 -4.3303672e+03 - 2.6601495e+03 -1.6549583e+03 -4.3287542e+03 - 2.7007810e+03 -1.5990706e+03 -4.3270162e+03 - 2.7401747e+03 -1.5430247e+03 -4.3251654e+03 - 2.7783016e+03 -1.4868626e+03 -4.3232147e+03 - 2.8151356e+03 -1.4306239e+03 -4.3211774e+03 - 2.8506534e+03 -1.3743447e+03 -4.3190674e+03 - 2.8848347e+03 -1.3180583e+03 -4.3168987e+03 - 2.9176621e+03 -1.2617949e+03 -4.3146856e+03 - 2.9491208e+03 -1.2055814e+03 -4.3124422e+03 - 2.9791982e+03 -1.1494414e+03 -4.3101831e+03 - 3.0078844e+03 -1.0933955e+03 -4.3079222e+03 - 3.0351715e+03 -1.0374611e+03 -4.3056735e+03 - 3.0610534e+03 -9.8165245e+02 -4.3034506e+03 - 3.0855261e+03 -9.2598106e+02 -4.3012668e+03 - 3.1085867e+03 -8.7045541e+02 -4.2991350e+03 - 3.1302342e+03 -8.1508129e+02 -4.2970674e+03 - 3.1504682e+03 -7.5986192e+02 -4.2950758e+03 - 3.1692898e+03 -7.0479804e+02 -4.2931713e+03 - 3.1867005e+03 -6.4988812e+02 -4.2913645e+03 - 3.2027025e+03 -5.9512848e+02 -4.2896652e+03 - 3.2172987e+03 -5.4051347e+02 -4.2880826e+03 - 3.2304920e+03 -4.8603564e+02 -4.2866250e+03 - 3.2422856e+03 -4.3168590e+02 -4.2853001e+03 - 3.2526826e+03 -3.7745369e+02 -4.2841147e+03 - 3.2616861e+03 -3.2332714e+02 -4.2830750e+03 - 3.2692991e+03 -2.6929325e+02 -4.2821862e+03 - 3.2755241e+03 -2.1533805e+02 -4.2814529e+03 - 3.2803633e+03 -1.6144677e+02 -4.2808787e+03 - 3.2838186e+03 -1.0760399e+02 -4.2804665e+03 - 3.2858912e+03 -5.3793806e+01 -4.2802184e+03 - 3.2865820e+03 0.0000000e+00 -4.2801355e+03 - 3.2144622e+03 0.0000000e+00 -4.3159903e+03 - 3.2137846e+03 5.3175777e+01 -4.3160657e+03 - 3.2117515e+03 1.0636531e+02 -4.3162916e+03 - 3.2083624e+03 1.5958221e+02 -4.3166668e+03 - 3.2036163e+03 2.1283977e+02 -4.3171895e+03 - 3.1975119e+03 2.6615085e+02 -4.3178569e+03 - 3.1900476e+03 3.1952766e+02 -4.3186656e+03 - 3.1812215e+03 3.7298168e+02 -4.3196115e+03 - 3.1710317e+03 4.2652345e+02 -4.3206896e+03 - 3.1594760e+03 4.8016246e+02 -4.3218944e+03 - 3.1465524e+03 5.3390694e+02 -4.3232194e+03 - 3.1322590e+03 5.8776376e+02 -4.3246575e+03 - 3.1165939e+03 6.4173825e+02 -4.3262011e+03 - 3.0995558e+03 6.9583404e+02 -4.3278417e+03 - 3.0811439e+03 7.5005292e+02 -4.3295703e+03 - 3.0613578e+03 8.0439472e+02 -4.3313772e+03 - 3.0401983e+03 8.5885712e+02 -4.3332523e+03 - 3.0176668e+03 9.1343554e+02 -4.3351846e+03 - 2.9937660e+03 9.6812303e+02 -4.3371631e+03 - 2.9685000e+03 1.0229101e+03 -4.3391759e+03 - 2.9418740e+03 1.0777847e+03 -4.3412112e+03 - 2.9138954e+03 1.1327321e+03 -4.3432564e+03 - 2.8845728e+03 1.1877348e+03 -4.3452991e+03 - 2.8539174e+03 1.2427723e+03 -4.3473263e+03 - 2.8219420e+03 1.2978215e+03 -4.3493253e+03 - 2.7886620e+03 1.3528562e+03 -4.3512832e+03 - 2.7540950e+03 1.4078476e+03 -4.3531871e+03 - 2.7182612e+03 1.4627639e+03 -4.3550245e+03 - 2.6811833e+03 1.5175707e+03 -4.3567830e+03 - 2.6428868e+03 1.5722306e+03 -4.3584507e+03 - 2.6033997e+03 1.6267042e+03 -4.3600161e+03 - 2.5627528e+03 1.6809494e+03 -4.3614684e+03 - 2.5209795e+03 1.7349220e+03 -4.3627974e+03 - 2.4781160e+03 1.7885758e+03 -4.3639936e+03 - 2.4342006e+03 1.8418630e+03 -4.3650484e+03 - 2.3892744e+03 1.8947342e+03 -4.3659544e+03 - 2.3433805e+03 1.9471389e+03 -4.3667048e+03 - 2.2965643e+03 1.9990258e+03 -4.3672943e+03 - 2.2488726e+03 2.0503429e+03 -4.3677184e+03 - 2.2003542e+03 2.1010380e+03 -4.3679742e+03 - 2.1510590e+03 2.1510590e+03 -4.3680596e+03 - 2.1010380e+03 2.2003542e+03 -4.3679742e+03 - 2.0503429e+03 2.2488726e+03 -4.3677184e+03 - 1.9990258e+03 2.2965643e+03 -4.3672943e+03 - 1.9471389e+03 2.3433805e+03 -4.3667048e+03 - 1.8947342e+03 2.3892744e+03 -4.3659544e+03 - 1.8418630e+03 2.4342006e+03 -4.3650484e+03 - 1.7885758e+03 2.4781160e+03 -4.3639936e+03 - 1.7349220e+03 2.5209795e+03 -4.3627974e+03 - 1.6809494e+03 2.5627528e+03 -4.3614684e+03 - 1.6267042e+03 2.6033997e+03 -4.3600161e+03 - 1.5722306e+03 2.6428868e+03 -4.3584507e+03 - 1.5175707e+03 2.6811833e+03 -4.3567830e+03 - 1.4627639e+03 2.7182612e+03 -4.3550245e+03 - 1.4078476e+03 2.7540950e+03 -4.3531871e+03 - 1.3528562e+03 2.7886620e+03 -4.3512832e+03 - 1.2978215e+03 2.8219420e+03 -4.3493253e+03 - 1.2427723e+03 2.8539174e+03 -4.3473263e+03 - 1.1877348e+03 2.8845728e+03 -4.3452991e+03 - 1.1327321e+03 2.9138954e+03 -4.3432564e+03 - 1.0777847e+03 2.9418740e+03 -4.3412112e+03 - 1.0229101e+03 2.9685000e+03 -4.3391759e+03 - 9.6812303e+02 2.9937660e+03 -4.3371631e+03 - 9.1343554e+02 3.0176668e+03 -4.3351846e+03 - 8.5885712e+02 3.0401983e+03 -4.3332523e+03 - 8.0439472e+02 3.0613578e+03 -4.3313772e+03 - 7.5005292e+02 3.0811439e+03 -4.3295703e+03 - 6.9583404e+02 3.0995558e+03 -4.3278417e+03 - 6.4173825e+02 3.1165939e+03 -4.3262011e+03 - 5.8776376e+02 3.1322590e+03 -4.3246575e+03 - 5.3390694e+02 3.1465524e+03 -4.3232194e+03 - 4.8016246e+02 3.1594760e+03 -4.3218944e+03 - 4.2652345e+02 3.1710317e+03 -4.3206896e+03 - 3.7298168e+02 3.1812215e+03 -4.3196115e+03 - 3.1952766e+02 3.1900476e+03 -4.3186656e+03 - 2.6615085e+02 3.1975119e+03 -4.3178569e+03 - 2.1283977e+02 3.2036163e+03 -4.3171895e+03 - 1.5958221e+02 3.2083624e+03 -4.3166668e+03 - 1.0636531e+02 3.2117515e+03 -4.3162916e+03 - 5.3175777e+01 3.2137846e+03 -4.3160657e+03 - 0.0000000e+00 3.2144622e+03 -4.3159903e+03 - -5.3175777e+01 3.2137846e+03 -4.3160657e+03 - -1.0636531e+02 3.2117515e+03 -4.3162916e+03 - -1.5958221e+02 3.2083624e+03 -4.3166668e+03 - -2.1283977e+02 3.2036163e+03 -4.3171895e+03 - -2.6615085e+02 3.1975119e+03 -4.3178569e+03 - -3.1952766e+02 3.1900476e+03 -4.3186656e+03 - -3.7298168e+02 3.1812215e+03 -4.3196115e+03 - -4.2652345e+02 3.1710317e+03 -4.3206896e+03 - -4.8016246e+02 3.1594760e+03 -4.3218944e+03 - -5.3390694e+02 3.1465524e+03 -4.3232194e+03 - -5.8776376e+02 3.1322590e+03 -4.3246575e+03 - -6.4173825e+02 3.1165939e+03 -4.3262011e+03 - -6.9583404e+02 3.0995558e+03 -4.3278417e+03 - -7.5005292e+02 3.0811439e+03 -4.3295703e+03 - -8.0439472e+02 3.0613578e+03 -4.3313772e+03 - -8.5885712e+02 3.0401983e+03 -4.3332523e+03 - -9.1343554e+02 3.0176668e+03 -4.3351846e+03 - -9.6812303e+02 2.9937660e+03 -4.3371631e+03 - -1.0229101e+03 2.9685000e+03 -4.3391759e+03 - -1.0777847e+03 2.9418740e+03 -4.3412112e+03 - -1.1327321e+03 2.9138954e+03 -4.3432564e+03 - -1.1877348e+03 2.8845728e+03 -4.3452991e+03 - -1.2427723e+03 2.8539174e+03 -4.3473263e+03 - -1.2978215e+03 2.8219420e+03 -4.3493253e+03 - -1.3528562e+03 2.7886620e+03 -4.3512832e+03 - -1.4078476e+03 2.7540950e+03 -4.3531871e+03 - -1.4627639e+03 2.7182612e+03 -4.3550245e+03 - -1.5175707e+03 2.6811833e+03 -4.3567830e+03 - -1.5722306e+03 2.6428868e+03 -4.3584507e+03 - -1.6267042e+03 2.6033997e+03 -4.3600161e+03 - -1.6809494e+03 2.5627528e+03 -4.3614684e+03 - -1.7349220e+03 2.5209795e+03 -4.3627974e+03 - -1.7885758e+03 2.4781160e+03 -4.3639936e+03 - -1.8418630e+03 2.4342006e+03 -4.3650484e+03 - -1.8947342e+03 2.3892744e+03 -4.3659544e+03 - -1.9471389e+03 2.3433805e+03 -4.3667048e+03 - -1.9990258e+03 2.2965643e+03 -4.3672943e+03 - -2.0503429e+03 2.2488726e+03 -4.3677184e+03 - -2.1010380e+03 2.2003542e+03 -4.3679742e+03 - -2.1510590e+03 2.1510590e+03 -4.3680596e+03 - -2.2003542e+03 2.1010380e+03 -4.3679742e+03 - -2.2488726e+03 2.0503429e+03 -4.3677184e+03 - -2.2965643e+03 1.9990258e+03 -4.3672943e+03 - -2.3433805e+03 1.9471389e+03 -4.3667048e+03 - -2.3892744e+03 1.8947342e+03 -4.3659544e+03 - -2.4342006e+03 1.8418630e+03 -4.3650484e+03 - -2.4781160e+03 1.7885758e+03 -4.3639936e+03 - -2.5209795e+03 1.7349220e+03 -4.3627974e+03 - -2.5627528e+03 1.6809494e+03 -4.3614684e+03 - -2.6033997e+03 1.6267042e+03 -4.3600161e+03 - -2.6428868e+03 1.5722306e+03 -4.3584507e+03 - -2.6811833e+03 1.5175707e+03 -4.3567830e+03 - -2.7182612e+03 1.4627639e+03 -4.3550245e+03 - -2.7540950e+03 1.4078476e+03 -4.3531871e+03 - -2.7886620e+03 1.3528562e+03 -4.3512832e+03 - -2.8219420e+03 1.2978215e+03 -4.3493253e+03 - -2.8539174e+03 1.2427723e+03 -4.3473263e+03 - -2.8845728e+03 1.1877348e+03 -4.3452991e+03 - -2.9138954e+03 1.1327321e+03 -4.3432564e+03 - -2.9418740e+03 1.0777847e+03 -4.3412112e+03 - -2.9685000e+03 1.0229101e+03 -4.3391759e+03 - -2.9937660e+03 9.6812303e+02 -4.3371631e+03 - -3.0176668e+03 9.1343554e+02 -4.3351846e+03 - -3.0401983e+03 8.5885712e+02 -4.3332523e+03 - -3.0613578e+03 8.0439472e+02 -4.3313772e+03 - -3.0811439e+03 7.5005292e+02 -4.3295703e+03 - -3.0995558e+03 6.9583404e+02 -4.3278417e+03 - -3.1165939e+03 6.4173825e+02 -4.3262011e+03 - -3.1322590e+03 5.8776376e+02 -4.3246575e+03 - -3.1465524e+03 5.3390694e+02 -4.3232194e+03 - -3.1594760e+03 4.8016246e+02 -4.3218944e+03 - -3.1710317e+03 4.2652345e+02 -4.3206896e+03 - -3.1812215e+03 3.7298168e+02 -4.3196115e+03 - -3.1900476e+03 3.1952766e+02 -4.3186656e+03 - -3.1975119e+03 2.6615085e+02 -4.3178569e+03 - -3.2036163e+03 2.1283977e+02 -4.3171895e+03 - -3.2083624e+03 1.5958221e+02 -4.3166668e+03 - -3.2117515e+03 1.0636531e+02 -4.3162916e+03 - -3.2137846e+03 5.3175777e+01 -4.3160657e+03 - -3.2144622e+03 0.0000000e+00 -4.3159903e+03 - -3.2137846e+03 -5.3175777e+01 -4.3160657e+03 - -3.2117515e+03 -1.0636531e+02 -4.3162916e+03 - -3.2083624e+03 -1.5958221e+02 -4.3166668e+03 - -3.2036163e+03 -2.1283977e+02 -4.3171895e+03 - -3.1975119e+03 -2.6615085e+02 -4.3178569e+03 - -3.1900476e+03 -3.1952766e+02 -4.3186656e+03 - -3.1812215e+03 -3.7298168e+02 -4.3196115e+03 - -3.1710317e+03 -4.2652345e+02 -4.3206896e+03 - -3.1594760e+03 -4.8016246e+02 -4.3218944e+03 - -3.1465524e+03 -5.3390694e+02 -4.3232194e+03 - -3.1322590e+03 -5.8776376e+02 -4.3246575e+03 - -3.1165939e+03 -6.4173825e+02 -4.3262011e+03 - -3.0995558e+03 -6.9583404e+02 -4.3278417e+03 - -3.0811439e+03 -7.5005292e+02 -4.3295703e+03 - -3.0613578e+03 -8.0439472e+02 -4.3313772e+03 - -3.0401983e+03 -8.5885712e+02 -4.3332523e+03 - -3.0176668e+03 -9.1343554e+02 -4.3351846e+03 - -2.9937660e+03 -9.6812303e+02 -4.3371631e+03 - -2.9685000e+03 -1.0229101e+03 -4.3391759e+03 - -2.9418740e+03 -1.0777847e+03 -4.3412112e+03 - -2.9138954e+03 -1.1327321e+03 -4.3432564e+03 - -2.8845728e+03 -1.1877348e+03 -4.3452991e+03 - -2.8539174e+03 -1.2427723e+03 -4.3473263e+03 - -2.8219420e+03 -1.2978215e+03 -4.3493253e+03 - -2.7886620e+03 -1.3528562e+03 -4.3512832e+03 - -2.7540950e+03 -1.4078476e+03 -4.3531871e+03 - -2.7182612e+03 -1.4627639e+03 -4.3550245e+03 - -2.6811833e+03 -1.5175707e+03 -4.3567830e+03 - -2.6428868e+03 -1.5722306e+03 -4.3584507e+03 - -2.6033997e+03 -1.6267042e+03 -4.3600161e+03 - -2.5627528e+03 -1.6809494e+03 -4.3614684e+03 - -2.5209795e+03 -1.7349220e+03 -4.3627974e+03 - -2.4781160e+03 -1.7885758e+03 -4.3639936e+03 - -2.4342006e+03 -1.8418630e+03 -4.3650484e+03 - -2.3892744e+03 -1.8947342e+03 -4.3659544e+03 - -2.3433805e+03 -1.9471389e+03 -4.3667048e+03 - -2.2965643e+03 -1.9990258e+03 -4.3672943e+03 - -2.2488726e+03 -2.0503429e+03 -4.3677184e+03 - -2.2003542e+03 -2.1010380e+03 -4.3679742e+03 - -2.1510590e+03 -2.1510590e+03 -4.3680596e+03 - -2.1010380e+03 -2.2003542e+03 -4.3679742e+03 - -2.0503429e+03 -2.2488726e+03 -4.3677184e+03 - -1.9990258e+03 -2.2965643e+03 -4.3672943e+03 - -1.9471389e+03 -2.3433805e+03 -4.3667048e+03 - -1.8947342e+03 -2.3892744e+03 -4.3659544e+03 - -1.8418630e+03 -2.4342006e+03 -4.3650484e+03 - -1.7885758e+03 -2.4781160e+03 -4.3639936e+03 - -1.7349220e+03 -2.5209795e+03 -4.3627974e+03 - -1.6809494e+03 -2.5627528e+03 -4.3614684e+03 - -1.6267042e+03 -2.6033997e+03 -4.3600161e+03 - -1.5722306e+03 -2.6428868e+03 -4.3584507e+03 - -1.5175707e+03 -2.6811833e+03 -4.3567830e+03 - -1.4627639e+03 -2.7182612e+03 -4.3550245e+03 - -1.4078476e+03 -2.7540950e+03 -4.3531871e+03 - -1.3528562e+03 -2.7886620e+03 -4.3512832e+03 - -1.2978215e+03 -2.8219420e+03 -4.3493253e+03 - -1.2427723e+03 -2.8539174e+03 -4.3473263e+03 - -1.1877348e+03 -2.8845728e+03 -4.3452991e+03 - -1.1327321e+03 -2.9138954e+03 -4.3432564e+03 - -1.0777847e+03 -2.9418740e+03 -4.3412112e+03 - -1.0229101e+03 -2.9685000e+03 -4.3391759e+03 - -9.6812303e+02 -2.9937660e+03 -4.3371631e+03 - -9.1343554e+02 -3.0176668e+03 -4.3351846e+03 - -8.5885712e+02 -3.0401983e+03 -4.3332523e+03 - -8.0439472e+02 -3.0613578e+03 -4.3313772e+03 - -7.5005292e+02 -3.0811439e+03 -4.3295703e+03 - -6.9583404e+02 -3.0995558e+03 -4.3278417e+03 - -6.4173825e+02 -3.1165939e+03 -4.3262011e+03 - -5.8776376e+02 -3.1322590e+03 -4.3246575e+03 - -5.3390694e+02 -3.1465524e+03 -4.3232194e+03 - -4.8016246e+02 -3.1594760e+03 -4.3218944e+03 - -4.2652345e+02 -3.1710317e+03 -4.3206896e+03 - -3.7298168e+02 -3.1812215e+03 -4.3196115e+03 - -3.1952766e+02 -3.1900476e+03 -4.3186656e+03 - -2.6615085e+02 -3.1975119e+03 -4.3178569e+03 - -2.1283977e+02 -3.2036163e+03 -4.3171895e+03 - -1.5958221e+02 -3.2083624e+03 -4.3166668e+03 - -1.0636531e+02 -3.2117515e+03 -4.3162916e+03 - -5.3175777e+01 -3.2137846e+03 -4.3160657e+03 - 0.0000000e+00 -3.2144622e+03 -4.3159903e+03 - 5.3175777e+01 -3.2137846e+03 -4.3160657e+03 - 1.0636531e+02 -3.2117515e+03 -4.3162916e+03 - 1.5958221e+02 -3.2083624e+03 -4.3166668e+03 - 2.1283977e+02 -3.2036163e+03 -4.3171895e+03 - 2.6615085e+02 -3.1975119e+03 -4.3178569e+03 - 3.1952766e+02 -3.1900476e+03 -4.3186656e+03 - 3.7298168e+02 -3.1812215e+03 -4.3196115e+03 - 4.2652345e+02 -3.1710317e+03 -4.3206896e+03 - 4.8016246e+02 -3.1594760e+03 -4.3218944e+03 - 5.3390694e+02 -3.1465524e+03 -4.3232194e+03 - 5.8776376e+02 -3.1322590e+03 -4.3246575e+03 - 6.4173825e+02 -3.1165939e+03 -4.3262011e+03 - 6.9583404e+02 -3.0995558e+03 -4.3278417e+03 - 7.5005292e+02 -3.0811439e+03 -4.3295703e+03 - 8.0439472e+02 -3.0613578e+03 -4.3313772e+03 - 8.5885712e+02 -3.0401983e+03 -4.3332523e+03 - 9.1343554e+02 -3.0176668e+03 -4.3351846e+03 - 9.6812303e+02 -2.9937660e+03 -4.3371631e+03 - 1.0229101e+03 -2.9685000e+03 -4.3391759e+03 - 1.0777847e+03 -2.9418740e+03 -4.3412112e+03 - 1.1327321e+03 -2.9138954e+03 -4.3432564e+03 - 1.1877348e+03 -2.8845728e+03 -4.3452991e+03 - 1.2427723e+03 -2.8539174e+03 -4.3473263e+03 - 1.2978215e+03 -2.8219420e+03 -4.3493253e+03 - 1.3528562e+03 -2.7886620e+03 -4.3512832e+03 - 1.4078476e+03 -2.7540950e+03 -4.3531871e+03 - 1.4627639e+03 -2.7182612e+03 -4.3550245e+03 - 1.5175707e+03 -2.6811833e+03 -4.3567830e+03 - 1.5722306e+03 -2.6428868e+03 -4.3584507e+03 - 1.6267042e+03 -2.6033997e+03 -4.3600161e+03 - 1.6809494e+03 -2.5627528e+03 -4.3614684e+03 - 1.7349220e+03 -2.5209795e+03 -4.3627974e+03 - 1.7885758e+03 -2.4781160e+03 -4.3639936e+03 - 1.8418630e+03 -2.4342006e+03 -4.3650484e+03 - 1.8947342e+03 -2.3892744e+03 -4.3659544e+03 - 1.9471389e+03 -2.3433805e+03 -4.3667048e+03 - 1.9990258e+03 -2.2965643e+03 -4.3672943e+03 - 2.0503429e+03 -2.2488726e+03 -4.3677184e+03 - 2.1010380e+03 -2.2003542e+03 -4.3679742e+03 - 2.1510590e+03 -2.1510590e+03 -4.3680596e+03 - 2.2003542e+03 -2.1010380e+03 -4.3679742e+03 - 2.2488726e+03 -2.0503429e+03 -4.3677184e+03 - 2.2965643e+03 -1.9990258e+03 -4.3672943e+03 - 2.3433805e+03 -1.9471389e+03 -4.3667048e+03 - 2.3892744e+03 -1.8947342e+03 -4.3659544e+03 - 2.4342006e+03 -1.8418630e+03 -4.3650484e+03 - 2.4781160e+03 -1.7885758e+03 -4.3639936e+03 - 2.5209795e+03 -1.7349220e+03 -4.3627974e+03 - 2.5627528e+03 -1.6809494e+03 -4.3614684e+03 - 2.6033997e+03 -1.6267042e+03 -4.3600161e+03 - 2.6428868e+03 -1.5722306e+03 -4.3584507e+03 - 2.6811833e+03 -1.5175707e+03 -4.3567830e+03 - 2.7182612e+03 -1.4627639e+03 -4.3550245e+03 - 2.7540950e+03 -1.4078476e+03 -4.3531871e+03 - 2.7886620e+03 -1.3528562e+03 -4.3512832e+03 - 2.8219420e+03 -1.2978215e+03 -4.3493253e+03 - 2.8539174e+03 -1.2427723e+03 -4.3473263e+03 - 2.8845728e+03 -1.1877348e+03 -4.3452991e+03 - 2.9138954e+03 -1.1327321e+03 -4.3432564e+03 - 2.9418740e+03 -1.0777847e+03 -4.3412112e+03 - 2.9685000e+03 -1.0229101e+03 -4.3391759e+03 - 2.9937660e+03 -9.6812303e+02 -4.3371631e+03 - 3.0176668e+03 -9.1343554e+02 -4.3351846e+03 - 3.0401983e+03 -8.5885712e+02 -4.3332523e+03 - 3.0613578e+03 -8.0439472e+02 -4.3313772e+03 - 3.0811439e+03 -7.5005292e+02 -4.3295703e+03 - 3.0995558e+03 -6.9583404e+02 -4.3278417e+03 - 3.1165939e+03 -6.4173825e+02 -4.3262011e+03 - 3.1322590e+03 -5.8776376e+02 -4.3246575e+03 - 3.1465524e+03 -5.3390694e+02 -4.3232194e+03 - 3.1594760e+03 -4.8016246e+02 -4.3218944e+03 - 3.1710317e+03 -4.2652345e+02 -4.3206896e+03 - 3.1812215e+03 -3.7298168e+02 -4.3196115e+03 - 3.1900476e+03 -3.1952766e+02 -4.3186656e+03 - 3.1975119e+03 -2.6615085e+02 -4.3178569e+03 - 3.2036163e+03 -2.1283977e+02 -4.3171895e+03 - 3.2083624e+03 -1.5958221e+02 -4.3166668e+03 - 3.2117515e+03 -1.0636531e+02 -4.3162916e+03 - 3.2137846e+03 -5.3175777e+01 -4.3160657e+03 - 3.2144622e+03 0.0000000e+00 -4.3159903e+03 - 3.1392033e+03 0.0000000e+00 -4.3515799e+03 - 3.1385400e+03 5.2483509e+01 -4.3516481e+03 - 3.1365499e+03 1.0497820e+02 -4.3518525e+03 - 3.1332325e+03 1.5749513e+02 -4.3521919e+03 - 3.1285873e+03 2.1004504e+02 -4.3526647e+03 - 3.1226135e+03 2.6263827e+02 -4.3532683e+03 - 3.1153099e+03 3.1528455e+02 -4.3539996e+03 - 3.1066756e+03 3.6799293e+02 -4.3548547e+03 - 3.0967092e+03 4.2077158e+02 -4.3558292e+03 - 3.0854097e+03 4.7362764e+02 -4.3569178e+03 - 3.0727759e+03 5.2656715e+02 -4.3581147e+03 - 3.0588071e+03 5.7959483e+02 -4.3594134e+03 - 3.0435025e+03 6.3271396e+02 -4.3608068e+03 - 3.0268622e+03 6.8592629e+02 -4.3622873e+03 - 3.0088865e+03 7.3923185e+02 -4.3638465e+03 - 2.9895764e+03 7.9262883e+02 -4.3654757e+03 - 2.9689338e+03 8.4611349e+02 -4.3671656e+03 - 2.9469616e+03 8.9968001e+02 -4.3689063e+03 - 2.9236637e+03 9.5332039e+02 -4.3706877e+03 - 2.8990451e+03 1.0070244e+03 -4.3724993e+03 - 2.8731126e+03 1.0607793e+03 -4.3743301e+03 - 2.8458740e+03 1.1145701e+03 -4.3761690e+03 - 2.8173393e+03 1.1683792e+03 -4.3780047e+03 - 2.7875198e+03 1.2221866e+03 -4.3798256e+03 - 2.7564292e+03 1.2759696e+03 -4.3816203e+03 - 2.7240830e+03 1.3297029e+03 -4.3833772e+03 - 2.6904988e+03 1.3833590e+03 -4.3850848e+03 - 2.6556966e+03 1.4369074e+03 -4.3867321e+03 - 2.6196987e+03 1.4903157e+03 -4.3883079e+03 - 2.5825296e+03 1.5435488e+03 -4.3898018e+03 - 2.5442163e+03 1.5965696e+03 -4.3912035e+03 - 2.5047882e+03 1.6493387e+03 -4.3925034e+03 - 2.4642768e+03 1.7018152e+03 -4.3936924e+03 - 2.4227163e+03 1.7539561e+03 -4.3947624e+03 - 2.3801427e+03 1.8057171e+03 -4.3957056e+03 - 2.3365942e+03 1.8570526e+03 -4.3965155e+03 - 2.2921112e+03 1.9079160e+03 -4.3971863e+03 - 2.2467355e+03 1.9582599e+03 -4.3977131e+03 - 2.2005109e+03 2.0080364e+03 -4.3980921e+03 - 2.1534821e+03 2.0571975e+03 -4.3983206e+03 - 2.1056953e+03 2.1056953e+03 -4.3983969e+03 - 2.0571975e+03 2.1534821e+03 -4.3983206e+03 - 2.0080364e+03 2.2005109e+03 -4.3980921e+03 - 1.9582599e+03 2.2467355e+03 -4.3977131e+03 - 1.9079160e+03 2.2921112e+03 -4.3971863e+03 - 1.8570526e+03 2.3365942e+03 -4.3965155e+03 - 1.8057171e+03 2.3801427e+03 -4.3957056e+03 - 1.7539561e+03 2.4227163e+03 -4.3947624e+03 - 1.7018152e+03 2.4642768e+03 -4.3936924e+03 - 1.6493387e+03 2.5047882e+03 -4.3925034e+03 - 1.5965696e+03 2.5442163e+03 -4.3912035e+03 - 1.5435488e+03 2.5825296e+03 -4.3898018e+03 - 1.4903157e+03 2.6196987e+03 -4.3883079e+03 - 1.4369074e+03 2.6556966e+03 -4.3867321e+03 - 1.3833590e+03 2.6904988e+03 -4.3850848e+03 - 1.3297029e+03 2.7240830e+03 -4.3833772e+03 - 1.2759696e+03 2.7564292e+03 -4.3816203e+03 - 1.2221866e+03 2.7875198e+03 -4.3798256e+03 - 1.1683792e+03 2.8173393e+03 -4.3780047e+03 - 1.1145701e+03 2.8458740e+03 -4.3761690e+03 - 1.0607793e+03 2.8731126e+03 -4.3743301e+03 - 1.0070244e+03 2.8990451e+03 -4.3724993e+03 - 9.5332039e+02 2.9236637e+03 -4.3706877e+03 - 8.9968001e+02 2.9469616e+03 -4.3689063e+03 - 8.4611349e+02 2.9689338e+03 -4.3671656e+03 - 7.9262883e+02 2.9895764e+03 -4.3654757e+03 - 7.3923185e+02 3.0088865e+03 -4.3638465e+03 - 6.8592629e+02 3.0268622e+03 -4.3622873e+03 - 6.3271396e+02 3.0435025e+03 -4.3608068e+03 - 5.7959483e+02 3.0588071e+03 -4.3594134e+03 - 5.2656715e+02 3.0727759e+03 -4.3581147e+03 - 4.7362764e+02 3.0854097e+03 -4.3569178e+03 - 4.2077158e+02 3.0967092e+03 -4.3558292e+03 - 3.6799293e+02 3.1066756e+03 -4.3548547e+03 - 3.1528455e+02 3.1153099e+03 -4.3539996e+03 - 2.6263827e+02 3.1226135e+03 -4.3532683e+03 - 2.1004504e+02 3.1285873e+03 -4.3526647e+03 - 1.5749513e+02 3.1332325e+03 -4.3521919e+03 - 1.0497820e+02 3.1365499e+03 -4.3518525e+03 - 5.2483509e+01 3.1385400e+03 -4.3516481e+03 - 0.0000000e+00 3.1392033e+03 -4.3515799e+03 - -5.2483509e+01 3.1385400e+03 -4.3516481e+03 - -1.0497820e+02 3.1365499e+03 -4.3518525e+03 - -1.5749513e+02 3.1332325e+03 -4.3521919e+03 - -2.1004504e+02 3.1285873e+03 -4.3526647e+03 - -2.6263827e+02 3.1226135e+03 -4.3532683e+03 - -3.1528455e+02 3.1153099e+03 -4.3539996e+03 - -3.6799293e+02 3.1066756e+03 -4.3548547e+03 - -4.2077158e+02 3.0967092e+03 -4.3558292e+03 - -4.7362764e+02 3.0854097e+03 -4.3569178e+03 - -5.2656715e+02 3.0727759e+03 -4.3581147e+03 - -5.7959483e+02 3.0588071e+03 -4.3594134e+03 - -6.3271396e+02 3.0435025e+03 -4.3608068e+03 - -6.8592629e+02 3.0268622e+03 -4.3622873e+03 - -7.3923185e+02 3.0088865e+03 -4.3638465e+03 - -7.9262883e+02 2.9895764e+03 -4.3654757e+03 - -8.4611349e+02 2.9689338e+03 -4.3671656e+03 - -8.9968001e+02 2.9469616e+03 -4.3689063e+03 - -9.5332039e+02 2.9236637e+03 -4.3706877e+03 - -1.0070244e+03 2.8990451e+03 -4.3724993e+03 - -1.0607793e+03 2.8731126e+03 -4.3743301e+03 - -1.1145701e+03 2.8458740e+03 -4.3761690e+03 - -1.1683792e+03 2.8173393e+03 -4.3780047e+03 - -1.2221866e+03 2.7875198e+03 -4.3798256e+03 - -1.2759696e+03 2.7564292e+03 -4.3816203e+03 - -1.3297029e+03 2.7240830e+03 -4.3833772e+03 - -1.3833590e+03 2.6904988e+03 -4.3850848e+03 - -1.4369074e+03 2.6556966e+03 -4.3867321e+03 - -1.4903157e+03 2.6196987e+03 -4.3883079e+03 - -1.5435488e+03 2.5825296e+03 -4.3898018e+03 - -1.5965696e+03 2.5442163e+03 -4.3912035e+03 - -1.6493387e+03 2.5047882e+03 -4.3925034e+03 - -1.7018152e+03 2.4642768e+03 -4.3936924e+03 - -1.7539561e+03 2.4227163e+03 -4.3947624e+03 - -1.8057171e+03 2.3801427e+03 -4.3957056e+03 - -1.8570526e+03 2.3365942e+03 -4.3965155e+03 - -1.9079160e+03 2.2921112e+03 -4.3971863e+03 - -1.9582599e+03 2.2467355e+03 -4.3977131e+03 - -2.0080364e+03 2.2005109e+03 -4.3980921e+03 - -2.0571975e+03 2.1534821e+03 -4.3983206e+03 - -2.1056953e+03 2.1056953e+03 -4.3983969e+03 - -2.1534821e+03 2.0571975e+03 -4.3983206e+03 - -2.2005109e+03 2.0080364e+03 -4.3980921e+03 - -2.2467355e+03 1.9582599e+03 -4.3977131e+03 - -2.2921112e+03 1.9079160e+03 -4.3971863e+03 - -2.3365942e+03 1.8570526e+03 -4.3965155e+03 - -2.3801427e+03 1.8057171e+03 -4.3957056e+03 - -2.4227163e+03 1.7539561e+03 -4.3947624e+03 - -2.4642768e+03 1.7018152e+03 -4.3936924e+03 - -2.5047882e+03 1.6493387e+03 -4.3925034e+03 - -2.5442163e+03 1.5965696e+03 -4.3912035e+03 - -2.5825296e+03 1.5435488e+03 -4.3898018e+03 - -2.6196987e+03 1.4903157e+03 -4.3883079e+03 - -2.6556966e+03 1.4369074e+03 -4.3867321e+03 - -2.6904988e+03 1.3833590e+03 -4.3850848e+03 - -2.7240830e+03 1.3297029e+03 -4.3833772e+03 - -2.7564292e+03 1.2759696e+03 -4.3816203e+03 - -2.7875198e+03 1.2221866e+03 -4.3798256e+03 - -2.8173393e+03 1.1683792e+03 -4.3780047e+03 - -2.8458740e+03 1.1145701e+03 -4.3761690e+03 - -2.8731126e+03 1.0607793e+03 -4.3743301e+03 - -2.8990451e+03 1.0070244e+03 -4.3724993e+03 - -2.9236637e+03 9.5332039e+02 -4.3706877e+03 - -2.9469616e+03 8.9968001e+02 -4.3689063e+03 - -2.9689338e+03 8.4611349e+02 -4.3671656e+03 - -2.9895764e+03 7.9262883e+02 -4.3654757e+03 - -3.0088865e+03 7.3923185e+02 -4.3638465e+03 - -3.0268622e+03 6.8592629e+02 -4.3622873e+03 - -3.0435025e+03 6.3271396e+02 -4.3608068e+03 - -3.0588071e+03 5.7959483e+02 -4.3594134e+03 - -3.0727759e+03 5.2656715e+02 -4.3581147e+03 - -3.0854097e+03 4.7362764e+02 -4.3569178e+03 - -3.0967092e+03 4.2077158e+02 -4.3558292e+03 - -3.1066756e+03 3.6799293e+02 -4.3548547e+03 - -3.1153099e+03 3.1528455e+02 -4.3539996e+03 - -3.1226135e+03 2.6263827e+02 -4.3532683e+03 - -3.1285873e+03 2.1004504e+02 -4.3526647e+03 - -3.1332325e+03 1.5749513e+02 -4.3521919e+03 - -3.1365499e+03 1.0497820e+02 -4.3518525e+03 - -3.1385400e+03 5.2483509e+01 -4.3516481e+03 - -3.1392033e+03 0.0000000e+00 -4.3515799e+03 - -3.1385400e+03 -5.2483509e+01 -4.3516481e+03 - -3.1365499e+03 -1.0497820e+02 -4.3518525e+03 - -3.1332325e+03 -1.5749513e+02 -4.3521919e+03 - -3.1285873e+03 -2.1004504e+02 -4.3526647e+03 - -3.1226135e+03 -2.6263827e+02 -4.3532683e+03 - -3.1153099e+03 -3.1528455e+02 -4.3539996e+03 - -3.1066756e+03 -3.6799293e+02 -4.3548547e+03 - -3.0967092e+03 -4.2077158e+02 -4.3558292e+03 - -3.0854097e+03 -4.7362764e+02 -4.3569178e+03 - -3.0727759e+03 -5.2656715e+02 -4.3581147e+03 - -3.0588071e+03 -5.7959483e+02 -4.3594134e+03 - -3.0435025e+03 -6.3271396e+02 -4.3608068e+03 - -3.0268622e+03 -6.8592629e+02 -4.3622873e+03 - -3.0088865e+03 -7.3923185e+02 -4.3638465e+03 - -2.9895764e+03 -7.9262883e+02 -4.3654757e+03 - -2.9689338e+03 -8.4611349e+02 -4.3671656e+03 - -2.9469616e+03 -8.9968001e+02 -4.3689063e+03 - -2.9236637e+03 -9.5332039e+02 -4.3706877e+03 - -2.8990451e+03 -1.0070244e+03 -4.3724993e+03 - -2.8731126e+03 -1.0607793e+03 -4.3743301e+03 - -2.8458740e+03 -1.1145701e+03 -4.3761690e+03 - -2.8173393e+03 -1.1683792e+03 -4.3780047e+03 - -2.7875198e+03 -1.2221866e+03 -4.3798256e+03 - -2.7564292e+03 -1.2759696e+03 -4.3816203e+03 - -2.7240830e+03 -1.3297029e+03 -4.3833772e+03 - -2.6904988e+03 -1.3833590e+03 -4.3850848e+03 - -2.6556966e+03 -1.4369074e+03 -4.3867321e+03 - -2.6196987e+03 -1.4903157e+03 -4.3883079e+03 - -2.5825296e+03 -1.5435488e+03 -4.3898018e+03 - -2.5442163e+03 -1.5965696e+03 -4.3912035e+03 - -2.5047882e+03 -1.6493387e+03 -4.3925034e+03 - -2.4642768e+03 -1.7018152e+03 -4.3936924e+03 - -2.4227163e+03 -1.7539561e+03 -4.3947624e+03 - -2.3801427e+03 -1.8057171e+03 -4.3957056e+03 - -2.3365942e+03 -1.8570526e+03 -4.3965155e+03 - -2.2921112e+03 -1.9079160e+03 -4.3971863e+03 - -2.2467355e+03 -1.9582599e+03 -4.3977131e+03 - -2.2005109e+03 -2.0080364e+03 -4.3980921e+03 - -2.1534821e+03 -2.0571975e+03 -4.3983206e+03 - -2.1056953e+03 -2.1056953e+03 -4.3983969e+03 - -2.0571975e+03 -2.1534821e+03 -4.3983206e+03 - -2.0080364e+03 -2.2005109e+03 -4.3980921e+03 - -1.9582599e+03 -2.2467355e+03 -4.3977131e+03 - -1.9079160e+03 -2.2921112e+03 -4.3971863e+03 - -1.8570526e+03 -2.3365942e+03 -4.3965155e+03 - -1.8057171e+03 -2.3801427e+03 -4.3957056e+03 - -1.7539561e+03 -2.4227163e+03 -4.3947624e+03 - -1.7018152e+03 -2.4642768e+03 -4.3936924e+03 - -1.6493387e+03 -2.5047882e+03 -4.3925034e+03 - -1.5965696e+03 -2.5442163e+03 -4.3912035e+03 - -1.5435488e+03 -2.5825296e+03 -4.3898018e+03 - -1.4903157e+03 -2.6196987e+03 -4.3883079e+03 - -1.4369074e+03 -2.6556966e+03 -4.3867321e+03 - -1.3833590e+03 -2.6904988e+03 -4.3850848e+03 - -1.3297029e+03 -2.7240830e+03 -4.3833772e+03 - -1.2759696e+03 -2.7564292e+03 -4.3816203e+03 - -1.2221866e+03 -2.7875198e+03 -4.3798256e+03 - -1.1683792e+03 -2.8173393e+03 -4.3780047e+03 - -1.1145701e+03 -2.8458740e+03 -4.3761690e+03 - -1.0607793e+03 -2.8731126e+03 -4.3743301e+03 - -1.0070244e+03 -2.8990451e+03 -4.3724993e+03 - -9.5332039e+02 -2.9236637e+03 -4.3706877e+03 - -8.9968001e+02 -2.9469616e+03 -4.3689063e+03 - -8.4611349e+02 -2.9689338e+03 -4.3671656e+03 - -7.9262883e+02 -2.9895764e+03 -4.3654757e+03 - -7.3923185e+02 -3.0088865e+03 -4.3638465e+03 - -6.8592629e+02 -3.0268622e+03 -4.3622873e+03 - -6.3271396e+02 -3.0435025e+03 -4.3608068e+03 - -5.7959483e+02 -3.0588071e+03 -4.3594134e+03 - -5.2656715e+02 -3.0727759e+03 -4.3581147e+03 - -4.7362764e+02 -3.0854097e+03 -4.3569178e+03 - -4.2077158e+02 -3.0967092e+03 -4.3558292e+03 - -3.6799293e+02 -3.1066756e+03 -4.3548547e+03 - -3.1528455e+02 -3.1153099e+03 -4.3539996e+03 - -2.6263827e+02 -3.1226135e+03 -4.3532683e+03 - -2.1004504e+02 -3.1285873e+03 -4.3526647e+03 - -1.5749513e+02 -3.1332325e+03 -4.3521919e+03 - -1.0497820e+02 -3.1365499e+03 -4.3518525e+03 - -5.2483509e+01 -3.1385400e+03 -4.3516481e+03 - -4.8134273e-09 -3.1392033e+03 -4.3515799e+03 - 5.2483509e+01 -3.1385400e+03 -4.3516481e+03 - 1.0497820e+02 -3.1365499e+03 -4.3518525e+03 - 1.5749513e+02 -3.1332325e+03 -4.3521919e+03 - 2.1004504e+02 -3.1285873e+03 -4.3526647e+03 - 2.6263827e+02 -3.1226135e+03 -4.3532683e+03 - 3.1528455e+02 -3.1153099e+03 -4.3539996e+03 - 3.6799293e+02 -3.1066756e+03 -4.3548547e+03 - 4.2077158e+02 -3.0967092e+03 -4.3558292e+03 - 4.7362764e+02 -3.0854097e+03 -4.3569178e+03 - 5.2656715e+02 -3.0727759e+03 -4.3581147e+03 - 5.7959483e+02 -3.0588071e+03 -4.3594134e+03 - 6.3271396e+02 -3.0435025e+03 -4.3608068e+03 - 6.8592629e+02 -3.0268622e+03 -4.3622873e+03 - 7.3923185e+02 -3.0088865e+03 -4.3638465e+03 - 7.9262883e+02 -2.9895764e+03 -4.3654757e+03 - 8.4611349e+02 -2.9689338e+03 -4.3671656e+03 - 8.9968001e+02 -2.9469616e+03 -4.3689063e+03 - 9.5332039e+02 -2.9236637e+03 -4.3706877e+03 - 1.0070244e+03 -2.8990451e+03 -4.3724993e+03 - 1.0607793e+03 -2.8731126e+03 -4.3743301e+03 - 1.1145701e+03 -2.8458740e+03 -4.3761690e+03 - 1.1683792e+03 -2.8173393e+03 -4.3780047e+03 - 1.2221866e+03 -2.7875198e+03 -4.3798256e+03 - 1.2759696e+03 -2.7564292e+03 -4.3816203e+03 - 1.3297029e+03 -2.7240830e+03 -4.3833772e+03 - 1.3833590e+03 -2.6904988e+03 -4.3850848e+03 - 1.4369074e+03 -2.6556966e+03 -4.3867321e+03 - 1.4903157e+03 -2.6196987e+03 -4.3883079e+03 - 1.5435488e+03 -2.5825296e+03 -4.3898018e+03 - 1.5965696e+03 -2.5442163e+03 -4.3912035e+03 - 1.6493387e+03 -2.5047882e+03 -4.3925034e+03 - 1.7018152e+03 -2.4642768e+03 -4.3936924e+03 - 1.7539561e+03 -2.4227163e+03 -4.3947624e+03 - 1.8057171e+03 -2.3801427e+03 -4.3957056e+03 - 1.8570526e+03 -2.3365942e+03 -4.3965155e+03 - 1.9079160e+03 -2.2921112e+03 -4.3971863e+03 - 1.9582599e+03 -2.2467355e+03 -4.3977131e+03 - 2.0080364e+03 -2.2005109e+03 -4.3980921e+03 - 2.0571975e+03 -2.1534821e+03 -4.3983206e+03 - 2.1056953e+03 -2.1056953e+03 -4.3983969e+03 - 2.1534821e+03 -2.0571975e+03 -4.3983206e+03 - 2.2005109e+03 -2.0080364e+03 -4.3980921e+03 - 2.2467355e+03 -1.9582599e+03 -4.3977131e+03 - 2.2921112e+03 -1.9079160e+03 -4.3971863e+03 - 2.3365942e+03 -1.8570526e+03 -4.3965155e+03 - 2.3801427e+03 -1.8057171e+03 -4.3957056e+03 - 2.4227163e+03 -1.7539561e+03 -4.3947624e+03 - 2.4642768e+03 -1.7018152e+03 -4.3936924e+03 - 2.5047882e+03 -1.6493387e+03 -4.3925034e+03 - 2.5442163e+03 -1.5965696e+03 -4.3912035e+03 - 2.5825296e+03 -1.5435488e+03 -4.3898018e+03 - 2.6196987e+03 -1.4903157e+03 -4.3883079e+03 - 2.6556966e+03 -1.4369074e+03 -4.3867321e+03 - 2.6904988e+03 -1.3833590e+03 -4.3850848e+03 - 2.7240830e+03 -1.3297029e+03 -4.3833772e+03 - 2.7564292e+03 -1.2759696e+03 -4.3816203e+03 - 2.7875198e+03 -1.2221866e+03 -4.3798256e+03 - 2.8173393e+03 -1.1683792e+03 -4.3780047e+03 - 2.8458740e+03 -1.1145701e+03 -4.3761690e+03 - 2.8731126e+03 -1.0607793e+03 -4.3743301e+03 - 2.8990451e+03 -1.0070244e+03 -4.3724993e+03 - 2.9236637e+03 -9.5332039e+02 -4.3706877e+03 - 2.9469616e+03 -8.9968001e+02 -4.3689063e+03 - 2.9689338e+03 -8.4611349e+02 -4.3671656e+03 - 2.9895764e+03 -7.9262883e+02 -4.3654757e+03 - 3.0088865e+03 -7.3923185e+02 -4.3638465e+03 - 3.0268622e+03 -6.8592629e+02 -4.3622873e+03 - 3.0435025e+03 -6.3271396e+02 -4.3608068e+03 - 3.0588071e+03 -5.7959483e+02 -4.3594134e+03 - 3.0727759e+03 -5.2656715e+02 -4.3581147e+03 - 3.0854097e+03 -4.7362764e+02 -4.3569178e+03 - 3.0967092e+03 -4.2077158e+02 -4.3558292e+03 - 3.1066756e+03 -3.6799293e+02 -4.3548547e+03 - 3.1153099e+03 -3.1528455e+02 -4.3539996e+03 - 3.1226135e+03 -2.6263827e+02 -4.3532683e+03 - 3.1285873e+03 -2.1004504e+02 -4.3526647e+03 - 3.1332325e+03 -1.5749513e+02 -4.3521919e+03 - 3.1365499e+03 -1.0497820e+02 -4.3518525e+03 - 3.1385400e+03 -5.2483509e+01 -4.3516481e+03 - 3.1392033e+03 0.0000000e+00 -4.3515799e+03 - 3.0605150e+03 0.0000000e+00 -4.3869175e+03 - 3.0598671e+03 5.1709593e+01 -4.3869788e+03 - 3.0579235e+03 1.0342787e+02 -4.3871624e+03 - 3.0546838e+03 1.5516337e+02 -4.3874673e+03 - 3.0501479e+03 2.0692439e+02 -4.3878919e+03 - 3.0443152e+03 2.5871879e+02 -4.3884339e+03 - 3.0371853e+03 3.1055393e+02 -4.3890905e+03 - 3.0287577e+03 3.6243647e+02 -4.3898582e+03 - 3.0190320e+03 4.1437230e+02 -4.3907328e+03 - 3.0080079e+03 4.6636635e+02 -4.3917095e+03 - 2.9956852e+03 5.1842250e+02 -4.3927831e+03 - 2.9820640e+03 5.7054344e+02 -4.3939477e+03 - 2.9671449e+03 6.2273056e+02 -4.3951968e+03 - 2.9509289e+03 6.7498378e+02 -4.3965234e+03 - 2.9334174e+03 7.2730148e+02 -4.3979201e+03 - 2.9146127e+03 7.7968039e+02 -4.3993788e+03 - 2.8945178e+03 8.3211543e+02 -4.4008913e+03 - 2.8731366e+03 8.8459967e+02 -4.4024486e+03 - 2.8504742e+03 9.3712419e+02 -4.4040415e+03 - 2.8265367e+03 9.8967802e+02 -4.4056607e+03 - 2.8013315e+03 1.0422481e+03 -4.4072964e+03 - 2.7748676e+03 1.0948191e+03 -4.4089384e+03 - 2.7471553e+03 1.1473737e+03 -4.4105768e+03 - 2.7182067e+03 1.1998920e+03 -4.4122013e+03 - 2.6880357e+03 1.2523520e+03 -4.4138016e+03 - 2.6566578e+03 1.3047296e+03 -4.4153675e+03 - 2.6240907e+03 1.3569981e+03 -4.4168889e+03 - 2.5903540e+03 1.4091290e+03 -4.4183558e+03 - 2.5554693e+03 1.4610914e+03 -4.4197585e+03 - 2.5194603e+03 1.5128524e+03 -4.4210877e+03 - 2.4823527e+03 1.5643775e+03 -4.4223344e+03 - 2.4441746e+03 1.6156299e+03 -4.4234901e+03 - 2.4049557e+03 1.6665716e+03 -4.4245470e+03 - 2.3647280e+03 1.7171628e+03 -4.4254977e+03 - 2.3235253e+03 1.7673627e+03 -4.4263357e+03 - 2.2813833e+03 1.8171291e+03 -4.4270550e+03 - 2.2383393e+03 1.8664191e+03 -4.4276505e+03 - 2.1944322e+03 1.9151893e+03 -4.4281182e+03 - 2.1497021e+03 1.9633956e+03 -4.4284547e+03 - 2.1041907e+03 2.0109939e+03 -4.4286575e+03 - 2.0579402e+03 2.0579402e+03 -4.4287253e+03 - 2.0109939e+03 2.1041907e+03 -4.4286575e+03 - 1.9633956e+03 2.1497021e+03 -4.4284547e+03 - 1.9151893e+03 2.1944322e+03 -4.4281182e+03 - 1.8664191e+03 2.2383393e+03 -4.4276505e+03 - 1.8171291e+03 2.2813833e+03 -4.4270550e+03 - 1.7673627e+03 2.3235253e+03 -4.4263357e+03 - 1.7171628e+03 2.3647280e+03 -4.4254977e+03 - 1.6665716e+03 2.4049557e+03 -4.4245470e+03 - 1.6156299e+03 2.4441746e+03 -4.4234901e+03 - 1.5643775e+03 2.4823527e+03 -4.4223344e+03 - 1.5128524e+03 2.5194603e+03 -4.4210877e+03 - 1.4610914e+03 2.5554693e+03 -4.4197585e+03 - 1.4091290e+03 2.5903540e+03 -4.4183558e+03 - 1.3569981e+03 2.6240907e+03 -4.4168889e+03 - 1.3047296e+03 2.6566578e+03 -4.4153675e+03 - 1.2523520e+03 2.6880357e+03 -4.4138016e+03 - 1.1998920e+03 2.7182067e+03 -4.4122013e+03 - 1.1473737e+03 2.7471553e+03 -4.4105768e+03 - 1.0948191e+03 2.7748676e+03 -4.4089384e+03 - 1.0422481e+03 2.8013315e+03 -4.4072964e+03 - 9.8967802e+02 2.8265367e+03 -4.4056607e+03 - 9.3712419e+02 2.8504742e+03 -4.4040415e+03 - 8.8459967e+02 2.8731366e+03 -4.4024486e+03 - 8.3211543e+02 2.8945178e+03 -4.4008913e+03 - 7.7968039e+02 2.9146127e+03 -4.3993788e+03 - 7.2730148e+02 2.9334174e+03 -4.3979201e+03 - 6.7498378e+02 2.9509289e+03 -4.3965234e+03 - 6.2273056e+02 2.9671449e+03 -4.3951968e+03 - 5.7054344e+02 2.9820640e+03 -4.3939477e+03 - 5.1842250e+02 2.9956852e+03 -4.3927831e+03 - 4.6636635e+02 3.0080079e+03 -4.3917095e+03 - 4.1437230e+02 3.0190320e+03 -4.3907328e+03 - 3.6243647e+02 3.0287577e+03 -4.3898582e+03 - 3.1055393e+02 3.0371853e+03 -4.3890905e+03 - 2.5871879e+02 3.0443152e+03 -4.3884339e+03 - 2.0692439e+02 3.0501479e+03 -4.3878919e+03 - 1.5516337e+02 3.0546838e+03 -4.3874673e+03 - 1.0342787e+02 3.0579235e+03 -4.3871624e+03 - 5.1709593e+01 3.0598671e+03 -4.3869788e+03 - 0.0000000e+00 3.0605150e+03 -4.3869175e+03 - -5.1709593e+01 3.0598671e+03 -4.3869788e+03 - -1.0342787e+02 3.0579235e+03 -4.3871624e+03 - -1.5516337e+02 3.0546838e+03 -4.3874673e+03 - -2.0692439e+02 3.0501479e+03 -4.3878919e+03 - -2.5871879e+02 3.0443152e+03 -4.3884339e+03 - -3.1055393e+02 3.0371853e+03 -4.3890905e+03 - -3.6243647e+02 3.0287577e+03 -4.3898582e+03 - -4.1437230e+02 3.0190320e+03 -4.3907328e+03 - -4.6636635e+02 3.0080079e+03 -4.3917095e+03 - -5.1842250e+02 2.9956852e+03 -4.3927831e+03 - -5.7054344e+02 2.9820640e+03 -4.3939477e+03 - -6.2273056e+02 2.9671449e+03 -4.3951968e+03 - -6.7498378e+02 2.9509289e+03 -4.3965234e+03 - -7.2730148e+02 2.9334174e+03 -4.3979201e+03 - -7.7968039e+02 2.9146127e+03 -4.3993788e+03 - -8.3211543e+02 2.8945178e+03 -4.4008913e+03 - -8.8459967e+02 2.8731366e+03 -4.4024486e+03 - -9.3712419e+02 2.8504742e+03 -4.4040415e+03 - -9.8967802e+02 2.8265367e+03 -4.4056607e+03 - -1.0422481e+03 2.8013315e+03 -4.4072964e+03 - -1.0948191e+03 2.7748676e+03 -4.4089384e+03 - -1.1473737e+03 2.7471553e+03 -4.4105768e+03 - -1.1998920e+03 2.7182067e+03 -4.4122013e+03 - -1.2523520e+03 2.6880357e+03 -4.4138016e+03 - -1.3047296e+03 2.6566578e+03 -4.4153675e+03 - -1.3569981e+03 2.6240907e+03 -4.4168889e+03 - -1.4091290e+03 2.5903540e+03 -4.4183558e+03 - -1.4610914e+03 2.5554693e+03 -4.4197585e+03 - -1.5128524e+03 2.5194603e+03 -4.4210877e+03 - -1.5643775e+03 2.4823527e+03 -4.4223344e+03 - -1.6156299e+03 2.4441746e+03 -4.4234901e+03 - -1.6665716e+03 2.4049557e+03 -4.4245470e+03 - -1.7171628e+03 2.3647280e+03 -4.4254977e+03 - -1.7673627e+03 2.3235253e+03 -4.4263357e+03 - -1.8171291e+03 2.2813833e+03 -4.4270550e+03 - -1.8664191e+03 2.2383393e+03 -4.4276505e+03 - -1.9151893e+03 2.1944322e+03 -4.4281182e+03 - -1.9633956e+03 2.1497021e+03 -4.4284547e+03 - -2.0109939e+03 2.1041907e+03 -4.4286575e+03 - -2.0579402e+03 2.0579402e+03 -4.4287253e+03 - -2.1041907e+03 2.0109939e+03 -4.4286575e+03 - -2.1497021e+03 1.9633956e+03 -4.4284547e+03 - -2.1944322e+03 1.9151893e+03 -4.4281182e+03 - -2.2383393e+03 1.8664191e+03 -4.4276505e+03 - -2.2813833e+03 1.8171291e+03 -4.4270550e+03 - -2.3235253e+03 1.7673627e+03 -4.4263357e+03 - -2.3647280e+03 1.7171628e+03 -4.4254977e+03 - -2.4049557e+03 1.6665716e+03 -4.4245470e+03 - -2.4441746e+03 1.6156299e+03 -4.4234901e+03 - -2.4823527e+03 1.5643775e+03 -4.4223344e+03 - -2.5194603e+03 1.5128524e+03 -4.4210877e+03 - -2.5554693e+03 1.4610914e+03 -4.4197585e+03 - -2.5903540e+03 1.4091290e+03 -4.4183558e+03 - -2.6240907e+03 1.3569981e+03 -4.4168889e+03 - -2.6566578e+03 1.3047296e+03 -4.4153675e+03 - -2.6880357e+03 1.2523520e+03 -4.4138016e+03 - -2.7182067e+03 1.1998920e+03 -4.4122013e+03 - -2.7471553e+03 1.1473737e+03 -4.4105768e+03 - -2.7748676e+03 1.0948191e+03 -4.4089384e+03 - -2.8013315e+03 1.0422481e+03 -4.4072964e+03 - -2.8265367e+03 9.8967802e+02 -4.4056607e+03 - -2.8504742e+03 9.3712419e+02 -4.4040415e+03 - -2.8731366e+03 8.8459967e+02 -4.4024486e+03 - -2.8945178e+03 8.3211543e+02 -4.4008913e+03 - -2.9146127e+03 7.7968039e+02 -4.3993788e+03 - -2.9334174e+03 7.2730148e+02 -4.3979201e+03 - -2.9509289e+03 6.7498378e+02 -4.3965234e+03 - -2.9671449e+03 6.2273056e+02 -4.3951968e+03 - -2.9820640e+03 5.7054344e+02 -4.3939477e+03 - -2.9956852e+03 5.1842250e+02 -4.3927831e+03 - -3.0080079e+03 4.6636635e+02 -4.3917095e+03 - -3.0190320e+03 4.1437230e+02 -4.3907328e+03 - -3.0287577e+03 3.6243647e+02 -4.3898582e+03 - -3.0371853e+03 3.1055393e+02 -4.3890905e+03 - -3.0443152e+03 2.5871879e+02 -4.3884339e+03 - -3.0501479e+03 2.0692439e+02 -4.3878919e+03 - -3.0546838e+03 1.5516337e+02 -4.3874673e+03 - -3.0579235e+03 1.0342787e+02 -4.3871624e+03 - -3.0598671e+03 5.1709593e+01 -4.3869788e+03 - -3.0605150e+03 0.0000000e+00 -4.3869175e+03 - -3.0598671e+03 -5.1709593e+01 -4.3869788e+03 - -3.0579235e+03 -1.0342787e+02 -4.3871624e+03 - -3.0546838e+03 -1.5516337e+02 -4.3874673e+03 - -3.0501479e+03 -2.0692439e+02 -4.3878919e+03 - -3.0443152e+03 -2.5871879e+02 -4.3884339e+03 - -3.0371853e+03 -3.1055393e+02 -4.3890905e+03 - -3.0287577e+03 -3.6243647e+02 -4.3898582e+03 - -3.0190320e+03 -4.1437230e+02 -4.3907328e+03 - -3.0080079e+03 -4.6636635e+02 -4.3917095e+03 - -2.9956852e+03 -5.1842250e+02 -4.3927831e+03 - -2.9820640e+03 -5.7054344e+02 -4.3939477e+03 - -2.9671449e+03 -6.2273056e+02 -4.3951968e+03 - -2.9509289e+03 -6.7498378e+02 -4.3965234e+03 - -2.9334174e+03 -7.2730148e+02 -4.3979201e+03 - -2.9146127e+03 -7.7968039e+02 -4.3993788e+03 - -2.8945178e+03 -8.3211543e+02 -4.4008913e+03 - -2.8731366e+03 -8.8459967e+02 -4.4024486e+03 - -2.8504742e+03 -9.3712419e+02 -4.4040415e+03 - -2.8265367e+03 -9.8967802e+02 -4.4056607e+03 - -2.8013315e+03 -1.0422481e+03 -4.4072964e+03 - -2.7748676e+03 -1.0948191e+03 -4.4089384e+03 - -2.7471553e+03 -1.1473737e+03 -4.4105768e+03 - -2.7182067e+03 -1.1998920e+03 -4.4122013e+03 - -2.6880357e+03 -1.2523520e+03 -4.4138016e+03 - -2.6566578e+03 -1.3047296e+03 -4.4153675e+03 - -2.6240907e+03 -1.3569981e+03 -4.4168889e+03 - -2.5903540e+03 -1.4091290e+03 -4.4183558e+03 - -2.5554693e+03 -1.4610914e+03 -4.4197585e+03 - -2.5194603e+03 -1.5128524e+03 -4.4210877e+03 - -2.4823527e+03 -1.5643775e+03 -4.4223344e+03 - -2.4441746e+03 -1.6156299e+03 -4.4234901e+03 - -2.4049557e+03 -1.6665716e+03 -4.4245470e+03 - -2.3647280e+03 -1.7171628e+03 -4.4254977e+03 - -2.3235253e+03 -1.7673627e+03 -4.4263357e+03 - -2.2813833e+03 -1.8171291e+03 -4.4270550e+03 - -2.2383393e+03 -1.8664191e+03 -4.4276505e+03 - -2.1944322e+03 -1.9151893e+03 -4.4281182e+03 - -2.1497021e+03 -1.9633956e+03 -4.4284547e+03 - -2.1041907e+03 -2.0109939e+03 -4.4286575e+03 - -2.0579402e+03 -2.0579402e+03 -4.4287253e+03 - -2.0109939e+03 -2.1041907e+03 -4.4286575e+03 - -1.9633956e+03 -2.1497021e+03 -4.4284547e+03 - -1.9151893e+03 -2.1944322e+03 -4.4281182e+03 - -1.8664191e+03 -2.2383393e+03 -4.4276505e+03 - -1.8171291e+03 -2.2813833e+03 -4.4270550e+03 - -1.7673627e+03 -2.3235253e+03 -4.4263357e+03 - -1.7171628e+03 -2.3647280e+03 -4.4254977e+03 - -1.6665716e+03 -2.4049557e+03 -4.4245470e+03 - -1.6156299e+03 -2.4441746e+03 -4.4234901e+03 - -1.5643775e+03 -2.4823527e+03 -4.4223344e+03 - -1.5128524e+03 -2.5194603e+03 -4.4210877e+03 - -1.4610914e+03 -2.5554693e+03 -4.4197585e+03 - -1.4091290e+03 -2.5903540e+03 -4.4183558e+03 - -1.3569981e+03 -2.6240907e+03 -4.4168889e+03 - -1.3047296e+03 -2.6566578e+03 -4.4153675e+03 - -1.2523520e+03 -2.6880357e+03 -4.4138016e+03 - -1.1998920e+03 -2.7182067e+03 -4.4122013e+03 - -1.1473737e+03 -2.7471553e+03 -4.4105768e+03 - -1.0948191e+03 -2.7748676e+03 -4.4089384e+03 - -1.0422481e+03 -2.8013315e+03 -4.4072964e+03 - -9.8967802e+02 -2.8265367e+03 -4.4056607e+03 - -9.3712419e+02 -2.8504742e+03 -4.4040415e+03 - -8.8459967e+02 -2.8731366e+03 -4.4024486e+03 - -8.3211543e+02 -2.8945178e+03 -4.4008913e+03 - -7.7968039e+02 -2.9146127e+03 -4.3993788e+03 - -7.2730148e+02 -2.9334174e+03 -4.3979201e+03 - -6.7498378e+02 -2.9509289e+03 -4.3965234e+03 - -6.2273056e+02 -2.9671449e+03 -4.3951968e+03 - -5.7054344e+02 -2.9820640e+03 -4.3939477e+03 - -5.1842250e+02 -2.9956852e+03 -4.3927831e+03 - -4.6636635e+02 -3.0080079e+03 -4.3917095e+03 - -4.1437230e+02 -3.0190320e+03 -4.3907328e+03 - -3.6243647e+02 -3.0287577e+03 -4.3898582e+03 - -3.1055393e+02 -3.0371853e+03 -4.3890905e+03 - -2.5871879e+02 -3.0443152e+03 -4.3884339e+03 - -2.0692439e+02 -3.0501479e+03 -4.3878919e+03 - -1.5516337e+02 -3.0546838e+03 -4.3874673e+03 - -1.0342787e+02 -3.0579235e+03 -4.3871624e+03 - -5.1709593e+01 -3.0598671e+03 -4.3869788e+03 - 0.0000000e+00 -3.0605150e+03 -4.3869175e+03 - 5.1709593e+01 -3.0598671e+03 -4.3869788e+03 - 1.0342787e+02 -3.0579235e+03 -4.3871624e+03 - 1.5516337e+02 -3.0546838e+03 -4.3874673e+03 - 2.0692439e+02 -3.0501479e+03 -4.3878919e+03 - 2.5871879e+02 -3.0443152e+03 -4.3884339e+03 - 3.1055393e+02 -3.0371853e+03 -4.3890905e+03 - 3.6243647e+02 -3.0287577e+03 -4.3898582e+03 - 4.1437230e+02 -3.0190320e+03 -4.3907328e+03 - 4.6636635e+02 -3.0080079e+03 -4.3917095e+03 - 5.1842250e+02 -2.9956852e+03 -4.3927831e+03 - 5.7054344e+02 -2.9820640e+03 -4.3939477e+03 - 6.2273056e+02 -2.9671449e+03 -4.3951968e+03 - 6.7498378e+02 -2.9509289e+03 -4.3965234e+03 - 7.2730148e+02 -2.9334174e+03 -4.3979201e+03 - 7.7968039e+02 -2.9146127e+03 -4.3993788e+03 - 8.3211543e+02 -2.8945178e+03 -4.4008913e+03 - 8.8459967e+02 -2.8731366e+03 -4.4024486e+03 - 9.3712419e+02 -2.8504742e+03 -4.4040415e+03 - 9.8967802e+02 -2.8265367e+03 -4.4056607e+03 - 1.0422481e+03 -2.8013315e+03 -4.4072964e+03 - 1.0948191e+03 -2.7748676e+03 -4.4089384e+03 - 1.1473737e+03 -2.7471553e+03 -4.4105768e+03 - 1.1998920e+03 -2.7182067e+03 -4.4122013e+03 - 1.2523520e+03 -2.6880357e+03 -4.4138016e+03 - 1.3047296e+03 -2.6566578e+03 -4.4153675e+03 - 1.3569981e+03 -2.6240907e+03 -4.4168889e+03 - 1.4091290e+03 -2.5903540e+03 -4.4183558e+03 - 1.4610914e+03 -2.5554693e+03 -4.4197585e+03 - 1.5128524e+03 -2.5194603e+03 -4.4210877e+03 - 1.5643775e+03 -2.4823527e+03 -4.4223344e+03 - 1.6156299e+03 -2.4441746e+03 -4.4234901e+03 - 1.6665716e+03 -2.4049557e+03 -4.4245470e+03 - 1.7171628e+03 -2.3647280e+03 -4.4254977e+03 - 1.7673627e+03 -2.3235253e+03 -4.4263357e+03 - 1.8171291e+03 -2.2813833e+03 -4.4270550e+03 - 1.8664191e+03 -2.2383393e+03 -4.4276505e+03 - 1.9151893e+03 -2.1944322e+03 -4.4281182e+03 - 1.9633956e+03 -2.1497021e+03 -4.4284547e+03 - 2.0109939e+03 -2.1041907e+03 -4.4286575e+03 - 2.0579402e+03 -2.0579402e+03 -4.4287253e+03 - 2.1041907e+03 -2.0109939e+03 -4.4286575e+03 - 2.1497021e+03 -1.9633956e+03 -4.4284547e+03 - 2.1944322e+03 -1.9151893e+03 -4.4281182e+03 - 2.2383393e+03 -1.8664191e+03 -4.4276505e+03 - 2.2813833e+03 -1.8171291e+03 -4.4270550e+03 - 2.3235253e+03 -1.7673627e+03 -4.4263357e+03 - 2.3647280e+03 -1.7171628e+03 -4.4254977e+03 - 2.4049557e+03 -1.6665716e+03 -4.4245470e+03 - 2.4441746e+03 -1.6156299e+03 -4.4234901e+03 - 2.4823527e+03 -1.5643775e+03 -4.4223344e+03 - 2.5194603e+03 -1.5128524e+03 -4.4210877e+03 - 2.5554693e+03 -1.4610914e+03 -4.4197585e+03 - 2.5903540e+03 -1.4091290e+03 -4.4183558e+03 - 2.6240907e+03 -1.3569981e+03 -4.4168889e+03 - 2.6566578e+03 -1.3047296e+03 -4.4153675e+03 - 2.6880357e+03 -1.2523520e+03 -4.4138016e+03 - 2.7182067e+03 -1.1998920e+03 -4.4122013e+03 - 2.7471553e+03 -1.1473737e+03 -4.4105768e+03 - 2.7748676e+03 -1.0948191e+03 -4.4089384e+03 - 2.8013315e+03 -1.0422481e+03 -4.4072964e+03 - 2.8265367e+03 -9.8967802e+02 -4.4056607e+03 - 2.8504742e+03 -9.3712419e+02 -4.4040415e+03 - 2.8731366e+03 -8.8459967e+02 -4.4024486e+03 - 2.8945178e+03 -8.3211543e+02 -4.4008913e+03 - 2.9146127e+03 -7.7968039e+02 -4.3993788e+03 - 2.9334174e+03 -7.2730148e+02 -4.3979201e+03 - 2.9509289e+03 -6.7498378e+02 -4.3965234e+03 - 2.9671449e+03 -6.2273056e+02 -4.3951968e+03 - 2.9820640e+03 -5.7054344e+02 -4.3939477e+03 - 2.9956852e+03 -5.1842250e+02 -4.3927831e+03 - 3.0080079e+03 -4.6636635e+02 -4.3917095e+03 - 3.0190320e+03 -4.1437230e+02 -4.3907328e+03 - 3.0287577e+03 -3.6243647e+02 -4.3898582e+03 - 3.0371853e+03 -3.1055393e+02 -4.3890905e+03 - 3.0443152e+03 -2.5871879e+02 -4.3884339e+03 - 3.0501479e+03 -2.0692439e+02 -4.3878919e+03 - 3.0546838e+03 -1.5516337e+02 -4.3874673e+03 - 3.0579235e+03 -1.0342787e+02 -4.3871624e+03 - 3.0598671e+03 -5.1709593e+01 -4.3869788e+03 - 3.0605150e+03 0.0000000e+00 -4.3869175e+03 - 2.9780787e+03 0.0000000e+00 -4.4220096e+03 - 2.9774476e+03 5.0845830e+01 -4.4220642e+03 - 2.9755542e+03 1.0169792e+02 -4.4222278e+03 - 2.9723986e+03 1.5256241e+02 -4.4224995e+03 - 2.9679806e+03 2.0344518e+02 -4.4228778e+03 - 2.9623003e+03 2.5435176e+02 -4.4233607e+03 - 2.9553576e+03 3.0528717e+02 -4.4239456e+03 - 2.9471527e+03 3.5625583e+02 -4.4246292e+03 - 2.9376858e+03 4.0726141e+02 -4.4254079e+03 - 2.9269574e+03 4.5830674e+02 -4.4262774e+03 - 2.9149682e+03 5.0939367e+02 -4.4272328e+03 - 2.9017192e+03 5.6052296e+02 -4.4282688e+03 - 2.8872118e+03 6.1169419e+02 -4.4293797e+03 - 2.8714480e+03 6.6290562e+02 -4.4305592e+03 - 2.8544304e+03 7.1415410e+02 -4.4318004e+03 - 2.8361621e+03 7.6543499e+02 -4.4330963e+03 - 2.8166472e+03 8.1674201e+02 -4.4344394e+03 - 2.7958906e+03 8.6806725e+02 -4.4358217e+03 - 2.7738982e+03 9.1940098e+02 -4.4372351e+03 - 2.7506771e+03 9.7073168e+02 -4.4386711e+03 - 2.7262353e+03 1.0220459e+03 -4.4401211e+03 - 2.7005824e+03 1.0733284e+03 -4.4415761e+03 - 2.6737294e+03 1.1245617e+03 -4.4430272e+03 - 2.6456887e+03 1.1757266e+03 -4.4444653e+03 - 2.6164742e+03 1.2268017e+03 -4.4458814e+03 - 2.5861015e+03 1.2777639e+03 -4.4472665e+03 - 2.5545882e+03 1.3285878e+03 -4.4486115e+03 - 2.5219532e+03 1.3792464e+03 -4.4499079e+03 - 2.4882175e+03 1.4297106e+03 -4.4511471e+03 - 2.4534038e+03 1.4799498e+03 -4.4523208e+03 - 2.4175367e+03 1.5299316e+03 -4.4534214e+03 - 2.3806426e+03 1.5796220e+03 -4.4544413e+03 - 2.3427497e+03 1.6289857e+03 -4.4553736e+03 - 2.3038877e+03 1.6779861e+03 -4.4562121e+03 - 2.2640884e+03 1.7265854e+03 -4.4569509e+03 - 2.2233847e+03 1.7747451e+03 -4.4575850e+03 - 2.1818113e+03 1.8224257e+03 -4.4581099e+03 - 2.1394041e+03 1.8695873e+03 -4.4585220e+03 - 2.0962000e+03 1.9161896e+03 -4.4588185e+03 - 2.0522373e+03 1.9621923e+03 -4.4589972e+03 - 2.0075548e+03 2.0075548e+03 -4.4590569e+03 - 1.9621923e+03 2.0522373e+03 -4.4589972e+03 - 1.9161896e+03 2.0962000e+03 -4.4588185e+03 - 1.8695873e+03 2.1394041e+03 -4.4585220e+03 - 1.8224257e+03 2.1818113e+03 -4.4581099e+03 - 1.7747451e+03 2.2233847e+03 -4.4575850e+03 - 1.7265854e+03 2.2640884e+03 -4.4569509e+03 - 1.6779861e+03 2.3038877e+03 -4.4562121e+03 - 1.6289857e+03 2.3427497e+03 -4.4553736e+03 - 1.5796220e+03 2.3806426e+03 -4.4544413e+03 - 1.5299316e+03 2.4175367e+03 -4.4534214e+03 - 1.4799498e+03 2.4534038e+03 -4.4523208e+03 - 1.4297106e+03 2.4882175e+03 -4.4511471e+03 - 1.3792464e+03 2.5219532e+03 -4.4499079e+03 - 1.3285878e+03 2.5545882e+03 -4.4486115e+03 - 1.2777639e+03 2.5861015e+03 -4.4472665e+03 - 1.2268017e+03 2.6164742e+03 -4.4458814e+03 - 1.1757266e+03 2.6456887e+03 -4.4444653e+03 - 1.1245617e+03 2.6737294e+03 -4.4430272e+03 - 1.0733284e+03 2.7005824e+03 -4.4415761e+03 - 1.0220459e+03 2.7262353e+03 -4.4401211e+03 - 9.7073168e+02 2.7506771e+03 -4.4386711e+03 - 9.1940098e+02 2.7738982e+03 -4.4372351e+03 - 8.6806725e+02 2.7958906e+03 -4.4358217e+03 - 8.1674201e+02 2.8166472e+03 -4.4344394e+03 - 7.6543499e+02 2.8361621e+03 -4.4330963e+03 - 7.1415410e+02 2.8544304e+03 -4.4318004e+03 - 6.6290562e+02 2.8714480e+03 -4.4305592e+03 - 6.1169419e+02 2.8872118e+03 -4.4293797e+03 - 5.6052296e+02 2.9017192e+03 -4.4282688e+03 - 5.0939367e+02 2.9149682e+03 -4.4272328e+03 - 4.5830674e+02 2.9269574e+03 -4.4262774e+03 - 4.0726141e+02 2.9376858e+03 -4.4254079e+03 - 3.5625583e+02 2.9471527e+03 -4.4246292e+03 - 3.0528717e+02 2.9553576e+03 -4.4239456e+03 - 2.5435176e+02 2.9623003e+03 -4.4233607e+03 - 2.0344518e+02 2.9679806e+03 -4.4228778e+03 - 1.5256241e+02 2.9723986e+03 -4.4224995e+03 - 1.0169792e+02 2.9755542e+03 -4.4222278e+03 - 5.0845830e+01 2.9774476e+03 -4.4220642e+03 - 0.0000000e+00 2.9780787e+03 -4.4220096e+03 - -5.0845830e+01 2.9774476e+03 -4.4220642e+03 - -1.0169792e+02 2.9755542e+03 -4.4222278e+03 - -1.5256241e+02 2.9723986e+03 -4.4224995e+03 - -2.0344518e+02 2.9679806e+03 -4.4228778e+03 - -2.5435176e+02 2.9623003e+03 -4.4233607e+03 - -3.0528717e+02 2.9553576e+03 -4.4239456e+03 - -3.5625583e+02 2.9471527e+03 -4.4246292e+03 - -4.0726141e+02 2.9376858e+03 -4.4254079e+03 - -4.5830674e+02 2.9269574e+03 -4.4262774e+03 - -5.0939367e+02 2.9149682e+03 -4.4272328e+03 - -5.6052296e+02 2.9017192e+03 -4.4282688e+03 - -6.1169419e+02 2.8872118e+03 -4.4293797e+03 - -6.6290562e+02 2.8714480e+03 -4.4305592e+03 - -7.1415410e+02 2.8544304e+03 -4.4318004e+03 - -7.6543499e+02 2.8361621e+03 -4.4330963e+03 - -8.1674201e+02 2.8166472e+03 -4.4344394e+03 - -8.6806725e+02 2.7958906e+03 -4.4358217e+03 - -9.1940098e+02 2.7738982e+03 -4.4372351e+03 - -9.7073168e+02 2.7506771e+03 -4.4386711e+03 - -1.0220459e+03 2.7262353e+03 -4.4401211e+03 - -1.0733284e+03 2.7005824e+03 -4.4415761e+03 - -1.1245617e+03 2.6737294e+03 -4.4430272e+03 - -1.1757266e+03 2.6456887e+03 -4.4444653e+03 - -1.2268017e+03 2.6164742e+03 -4.4458814e+03 - -1.2777639e+03 2.5861015e+03 -4.4472665e+03 - -1.3285878e+03 2.5545882e+03 -4.4486115e+03 - -1.3792464e+03 2.5219532e+03 -4.4499079e+03 - -1.4297106e+03 2.4882175e+03 -4.4511471e+03 - -1.4799498e+03 2.4534038e+03 -4.4523208e+03 - -1.5299316e+03 2.4175367e+03 -4.4534214e+03 - -1.5796220e+03 2.3806426e+03 -4.4544413e+03 - -1.6289857e+03 2.3427497e+03 -4.4553736e+03 - -1.6779861e+03 2.3038877e+03 -4.4562121e+03 - -1.7265854e+03 2.2640884e+03 -4.4569509e+03 - -1.7747451e+03 2.2233847e+03 -4.4575850e+03 - -1.8224257e+03 2.1818113e+03 -4.4581099e+03 - -1.8695873e+03 2.1394041e+03 -4.4585220e+03 - -1.9161896e+03 2.0962000e+03 -4.4588185e+03 - -1.9621923e+03 2.0522373e+03 -4.4589972e+03 - -2.0075548e+03 2.0075548e+03 -4.4590569e+03 - -2.0522373e+03 1.9621923e+03 -4.4589972e+03 - -2.0962000e+03 1.9161896e+03 -4.4588185e+03 - -2.1394041e+03 1.8695873e+03 -4.4585220e+03 - -2.1818113e+03 1.8224257e+03 -4.4581099e+03 - -2.2233847e+03 1.7747451e+03 -4.4575850e+03 - -2.2640884e+03 1.7265854e+03 -4.4569509e+03 - -2.3038877e+03 1.6779861e+03 -4.4562121e+03 - -2.3427497e+03 1.6289857e+03 -4.4553736e+03 - -2.3806426e+03 1.5796220e+03 -4.4544413e+03 - -2.4175367e+03 1.5299316e+03 -4.4534214e+03 - -2.4534038e+03 1.4799498e+03 -4.4523208e+03 - -2.4882175e+03 1.4297106e+03 -4.4511471e+03 - -2.5219532e+03 1.3792464e+03 -4.4499079e+03 - -2.5545882e+03 1.3285878e+03 -4.4486115e+03 - -2.5861015e+03 1.2777639e+03 -4.4472665e+03 - -2.6164742e+03 1.2268017e+03 -4.4458814e+03 - -2.6456887e+03 1.1757266e+03 -4.4444653e+03 - -2.6737294e+03 1.1245617e+03 -4.4430272e+03 - -2.7005824e+03 1.0733284e+03 -4.4415761e+03 - -2.7262353e+03 1.0220459e+03 -4.4401211e+03 - -2.7506771e+03 9.7073168e+02 -4.4386711e+03 - -2.7738982e+03 9.1940098e+02 -4.4372351e+03 - -2.7958906e+03 8.6806725e+02 -4.4358217e+03 - -2.8166472e+03 8.1674201e+02 -4.4344394e+03 - -2.8361621e+03 7.6543499e+02 -4.4330963e+03 - -2.8544304e+03 7.1415410e+02 -4.4318004e+03 - -2.8714480e+03 6.6290562e+02 -4.4305592e+03 - -2.8872118e+03 6.1169419e+02 -4.4293797e+03 - -2.9017192e+03 5.6052296e+02 -4.4282688e+03 - -2.9149682e+03 5.0939367e+02 -4.4272328e+03 - -2.9269574e+03 4.5830674e+02 -4.4262774e+03 - -2.9376858e+03 4.0726141e+02 -4.4254079e+03 - -2.9471527e+03 3.5625583e+02 -4.4246292e+03 - -2.9553576e+03 3.0528717e+02 -4.4239456e+03 - -2.9623003e+03 2.5435176e+02 -4.4233607e+03 - -2.9679806e+03 2.0344518e+02 -4.4228778e+03 - -2.9723986e+03 1.5256241e+02 -4.4224995e+03 - -2.9755542e+03 1.0169792e+02 -4.4222278e+03 - -2.9774476e+03 5.0845830e+01 -4.4220642e+03 - -2.9780787e+03 0.0000000e+00 -4.4220096e+03 - -2.9774476e+03 -5.0845830e+01 -4.4220642e+03 - -2.9755542e+03 -1.0169792e+02 -4.4222278e+03 - -2.9723986e+03 -1.5256241e+02 -4.4224995e+03 - -2.9679806e+03 -2.0344518e+02 -4.4228778e+03 - -2.9623003e+03 -2.5435176e+02 -4.4233607e+03 - -2.9553576e+03 -3.0528717e+02 -4.4239456e+03 - -2.9471527e+03 -3.5625583e+02 -4.4246292e+03 - -2.9376858e+03 -4.0726141e+02 -4.4254079e+03 - -2.9269574e+03 -4.5830674e+02 -4.4262774e+03 - -2.9149682e+03 -5.0939367e+02 -4.4272328e+03 - -2.9017192e+03 -5.6052296e+02 -4.4282688e+03 - -2.8872118e+03 -6.1169419e+02 -4.4293797e+03 - -2.8714480e+03 -6.6290562e+02 -4.4305592e+03 - -2.8544304e+03 -7.1415410e+02 -4.4318004e+03 - -2.8361621e+03 -7.6543499e+02 -4.4330963e+03 - -2.8166472e+03 -8.1674201e+02 -4.4344394e+03 - -2.7958906e+03 -8.6806725e+02 -4.4358217e+03 - -2.7738982e+03 -9.1940098e+02 -4.4372351e+03 - -2.7506771e+03 -9.7073168e+02 -4.4386711e+03 - -2.7262353e+03 -1.0220459e+03 -4.4401211e+03 - -2.7005824e+03 -1.0733284e+03 -4.4415761e+03 - -2.6737294e+03 -1.1245617e+03 -4.4430272e+03 - -2.6456887e+03 -1.1757266e+03 -4.4444653e+03 - -2.6164742e+03 -1.2268017e+03 -4.4458814e+03 - -2.5861015e+03 -1.2777639e+03 -4.4472665e+03 - -2.5545882e+03 -1.3285878e+03 -4.4486115e+03 - -2.5219532e+03 -1.3792464e+03 -4.4499079e+03 - -2.4882175e+03 -1.4297106e+03 -4.4511471e+03 - -2.4534038e+03 -1.4799498e+03 -4.4523208e+03 - -2.4175367e+03 -1.5299316e+03 -4.4534214e+03 - -2.3806426e+03 -1.5796220e+03 -4.4544413e+03 - -2.3427497e+03 -1.6289857e+03 -4.4553736e+03 - -2.3038877e+03 -1.6779861e+03 -4.4562121e+03 - -2.2640884e+03 -1.7265854e+03 -4.4569509e+03 - -2.2233847e+03 -1.7747451e+03 -4.4575850e+03 - -2.1818113e+03 -1.8224257e+03 -4.4581099e+03 - -2.1394041e+03 -1.8695873e+03 -4.4585220e+03 - -2.0962000e+03 -1.9161896e+03 -4.4588185e+03 - -2.0522373e+03 -1.9621923e+03 -4.4589972e+03 - -2.0075548e+03 -2.0075548e+03 -4.4590569e+03 - -1.9621923e+03 -2.0522373e+03 -4.4589972e+03 - -1.9161896e+03 -2.0962000e+03 -4.4588185e+03 - -1.8695873e+03 -2.1394041e+03 -4.4585220e+03 - -1.8224257e+03 -2.1818113e+03 -4.4581099e+03 - -1.7747451e+03 -2.2233847e+03 -4.4575850e+03 - -1.7265854e+03 -2.2640884e+03 -4.4569509e+03 - -1.6779861e+03 -2.3038877e+03 -4.4562121e+03 - -1.6289857e+03 -2.3427497e+03 -4.4553736e+03 - -1.5796220e+03 -2.3806426e+03 -4.4544413e+03 - -1.5299316e+03 -2.4175367e+03 -4.4534214e+03 - -1.4799498e+03 -2.4534038e+03 -4.4523208e+03 - -1.4297106e+03 -2.4882175e+03 -4.4511471e+03 - -1.3792464e+03 -2.5219532e+03 -4.4499079e+03 - -1.3285878e+03 -2.5545882e+03 -4.4486115e+03 - -1.2777639e+03 -2.5861015e+03 -4.4472665e+03 - -1.2268017e+03 -2.6164742e+03 -4.4458814e+03 - -1.1757266e+03 -2.6456887e+03 -4.4444653e+03 - -1.1245617e+03 -2.6737294e+03 -4.4430272e+03 - -1.0733284e+03 -2.7005824e+03 -4.4415761e+03 - -1.0220459e+03 -2.7262353e+03 -4.4401211e+03 - -9.7073168e+02 -2.7506771e+03 -4.4386711e+03 - -9.1940098e+02 -2.7738982e+03 -4.4372351e+03 - -8.6806725e+02 -2.7958906e+03 -4.4358217e+03 - -8.1674201e+02 -2.8166472e+03 -4.4344394e+03 - -7.6543499e+02 -2.8361621e+03 -4.4330963e+03 - -7.1415410e+02 -2.8544304e+03 -4.4318004e+03 - -6.6290562e+02 -2.8714480e+03 -4.4305592e+03 - -6.1169419e+02 -2.8872118e+03 -4.4293797e+03 - -5.6052296e+02 -2.9017192e+03 -4.4282688e+03 - -5.0939367e+02 -2.9149682e+03 -4.4272328e+03 - -4.5830674e+02 -2.9269574e+03 -4.4262774e+03 - -4.0726141e+02 -2.9376858e+03 -4.4254079e+03 - -3.5625583e+02 -2.9471527e+03 -4.4246292e+03 - -3.0528717e+02 -2.9553576e+03 -4.4239456e+03 - -2.5435176e+02 -2.9623003e+03 -4.4233607e+03 - -2.0344518e+02 -2.9679806e+03 -4.4228778e+03 - -1.5256241e+02 -2.9723986e+03 -4.4224995e+03 - -1.0169792e+02 -2.9755542e+03 -4.4222278e+03 - -5.0845830e+01 -2.9774476e+03 -4.4220642e+03 - 0.0000000e+00 -2.9780787e+03 -4.4220096e+03 - 5.0845830e+01 -2.9774476e+03 -4.4220642e+03 - 1.0169792e+02 -2.9755542e+03 -4.4222278e+03 - 1.5256241e+02 -2.9723986e+03 -4.4224995e+03 - 2.0344518e+02 -2.9679806e+03 -4.4228778e+03 - 2.5435176e+02 -2.9623003e+03 -4.4233607e+03 - 3.0528717e+02 -2.9553576e+03 -4.4239456e+03 - 3.5625583e+02 -2.9471527e+03 -4.4246292e+03 - 4.0726141e+02 -2.9376858e+03 -4.4254079e+03 - 4.5830674e+02 -2.9269574e+03 -4.4262774e+03 - 5.0939367e+02 -2.9149682e+03 -4.4272328e+03 - 5.6052296e+02 -2.9017192e+03 -4.4282688e+03 - 6.1169419e+02 -2.8872118e+03 -4.4293797e+03 - 6.6290562e+02 -2.8714480e+03 -4.4305592e+03 - 7.1415410e+02 -2.8544304e+03 -4.4318004e+03 - 7.6543499e+02 -2.8361621e+03 -4.4330963e+03 - 8.1674201e+02 -2.8166472e+03 -4.4344394e+03 - 8.6806725e+02 -2.7958906e+03 -4.4358217e+03 - 9.1940098e+02 -2.7738982e+03 -4.4372351e+03 - 9.7073168e+02 -2.7506771e+03 -4.4386711e+03 - 1.0220459e+03 -2.7262353e+03 -4.4401211e+03 - 1.0733284e+03 -2.7005824e+03 -4.4415761e+03 - 1.1245617e+03 -2.6737294e+03 -4.4430272e+03 - 1.1757266e+03 -2.6456887e+03 -4.4444653e+03 - 1.2268017e+03 -2.6164742e+03 -4.4458814e+03 - 1.2777639e+03 -2.5861015e+03 -4.4472665e+03 - 1.3285878e+03 -2.5545882e+03 -4.4486115e+03 - 1.3792464e+03 -2.5219532e+03 -4.4499079e+03 - 1.4297106e+03 -2.4882175e+03 -4.4511471e+03 - 1.4799498e+03 -2.4534038e+03 -4.4523208e+03 - 1.5299316e+03 -2.4175367e+03 -4.4534214e+03 - 1.5796220e+03 -2.3806426e+03 -4.4544413e+03 - 1.6289857e+03 -2.3427497e+03 -4.4553736e+03 - 1.6779861e+03 -2.3038877e+03 -4.4562121e+03 - 1.7265854e+03 -2.2640884e+03 -4.4569509e+03 - 1.7747451e+03 -2.2233847e+03 -4.4575850e+03 - 1.8224257e+03 -2.1818113e+03 -4.4581099e+03 - 1.8695873e+03 -2.1394041e+03 -4.4585220e+03 - 1.9161896e+03 -2.0962000e+03 -4.4588185e+03 - 1.9621923e+03 -2.0522373e+03 -4.4589972e+03 - 2.0075548e+03 -2.0075548e+03 -4.4590569e+03 - 2.0522373e+03 -1.9621923e+03 -4.4589972e+03 - 2.0962000e+03 -1.9161896e+03 -4.4588185e+03 - 2.1394041e+03 -1.8695873e+03 -4.4585220e+03 - 2.1818113e+03 -1.8224257e+03 -4.4581099e+03 - 2.2233847e+03 -1.7747451e+03 -4.4575850e+03 - 2.2640884e+03 -1.7265854e+03 -4.4569509e+03 - 2.3038877e+03 -1.6779861e+03 -4.4562121e+03 - 2.3427497e+03 -1.6289857e+03 -4.4553736e+03 - 2.3806426e+03 -1.5796220e+03 -4.4544413e+03 - 2.4175367e+03 -1.5299316e+03 -4.4534214e+03 - 2.4534038e+03 -1.4799498e+03 -4.4523208e+03 - 2.4882175e+03 -1.4297106e+03 -4.4511471e+03 - 2.5219532e+03 -1.3792464e+03 -4.4499079e+03 - 2.5545882e+03 -1.3285878e+03 -4.4486115e+03 - 2.5861015e+03 -1.2777639e+03 -4.4472665e+03 - 2.6164742e+03 -1.2268017e+03 -4.4458814e+03 - 2.6456887e+03 -1.1757266e+03 -4.4444653e+03 - 2.6737294e+03 -1.1245617e+03 -4.4430272e+03 - 2.7005824e+03 -1.0733284e+03 -4.4415761e+03 - 2.7262353e+03 -1.0220459e+03 -4.4401211e+03 - 2.7506771e+03 -9.7073168e+02 -4.4386711e+03 - 2.7738982e+03 -9.1940098e+02 -4.4372351e+03 - 2.7958906e+03 -8.6806725e+02 -4.4358217e+03 - 2.8166472e+03 -8.1674201e+02 -4.4344394e+03 - 2.8361621e+03 -7.6543499e+02 -4.4330963e+03 - 2.8544304e+03 -7.1415410e+02 -4.4318004e+03 - 2.8714480e+03 -6.6290562e+02 -4.4305592e+03 - 2.8872118e+03 -6.1169419e+02 -4.4293797e+03 - 2.9017192e+03 -5.6052296e+02 -4.4282688e+03 - 2.9149682e+03 -5.0939367e+02 -4.4272328e+03 - 2.9269574e+03 -4.5830674e+02 -4.4262774e+03 - 2.9376858e+03 -4.0726141e+02 -4.4254079e+03 - 2.9471527e+03 -3.5625583e+02 -4.4246292e+03 - 2.9553576e+03 -3.0528717e+02 -4.4239456e+03 - 2.9623003e+03 -2.5435176e+02 -4.4233607e+03 - 2.9679806e+03 -2.0344518e+02 -4.4228778e+03 - 2.9723986e+03 -1.5256241e+02 -4.4224995e+03 - 2.9755542e+03 -1.0169792e+02 -4.4222278e+03 - 2.9774476e+03 -5.0845830e+01 -4.4220642e+03 - 2.9780787e+03 0.0000000e+00 -4.4220096e+03 - 2.8915467e+03 0.0000000e+00 -4.4568542e+03 - 2.8909336e+03 4.9883181e+01 -4.4569025e+03 - 2.8890945e+03 9.9770301e+01 -4.4570469e+03 - 2.8860295e+03 1.4966519e+02 -4.4572869e+03 - 2.8817387e+03 1.9957144e+02 -4.4576209e+03 - 2.8762226e+03 2.4949234e+02 -4.4580472e+03 - 2.8694814e+03 2.9943068e+02 -4.4585635e+03 - 2.8615160e+03 3.4938874e+02 -4.4591669e+03 - 2.8523271e+03 3.9936810e+02 -4.4598540e+03 - 2.8419159e+03 4.4936960e+02 -4.4606211e+03 - 2.8302838e+03 4.9939317e+02 -4.4614637e+03 - 2.8174326e+03 5.4943778e+02 -4.4623772e+03 - 2.8033646e+03 5.9950132e+02 -4.4633564e+03 - 2.7880825e+03 6.4958052e+02 -4.4643956e+03 - 2.7715899e+03 6.9967081e+02 -4.4654889e+03 - 2.7538908e+03 7.4976632e+02 -4.4666300e+03 - 2.7349901e+03 7.9985971e+02 -4.4678121e+03 - 2.7148934e+03 8.4994219e+02 -4.4690283e+03 - 2.6936074e+03 9.0000338e+02 -4.4702713e+03 - 2.6711398e+03 9.5003128e+02 -4.4715337e+03 - 2.6474995e+03 1.0000122e+03 -4.4728078e+03 - 2.6226963e+03 1.0499309e+03 -4.4740858e+03 - 2.5967415e+03 1.0997702e+03 -4.4753598e+03 - 2.5696478e+03 1.1495114e+03 -4.4766219e+03 - 2.5414292e+03 1.1991338e+03 -4.4778642e+03 - 2.5121011e+03 1.2486153e+03 -4.4790787e+03 - 2.4816806e+03 1.2979319e+03 -4.4802576e+03 - 2.4501862e+03 1.3470581e+03 -4.4813935e+03 - 2.4176380e+03 1.3959666e+03 -4.4824788e+03 - 2.3840577e+03 1.4446289e+03 -4.4835064e+03 - 2.3494687e+03 1.4930147e+03 -4.4844696e+03 - 2.3138958e+03 1.5410927e+03 -4.4853620e+03 - 2.2773654e+03 1.5888304e+03 -4.4861775e+03 - 2.2399055e+03 1.6361938e+03 -4.4869107e+03 - 2.2015452e+03 1.6831486e+03 -4.4875566e+03 - 2.1623154e+03 1.7296591e+03 -4.4881108e+03 - 2.1222479e+03 1.7756895e+03 -4.4885696e+03 - 2.0813756e+03 1.8212032e+03 -4.4889297e+03 - 2.0397328e+03 1.8661633e+03 -4.4891887e+03 - 1.9973542e+03 1.9105331e+03 -4.4893448e+03 - 1.9542756e+03 1.9542756e+03 -4.4893970e+03 - 1.9105331e+03 1.9973542e+03 -4.4893448e+03 - 1.8661633e+03 2.0397328e+03 -4.4891887e+03 - 1.8212032e+03 2.0813756e+03 -4.4889297e+03 - 1.7756895e+03 2.1222479e+03 -4.4885696e+03 - 1.7296591e+03 2.1623154e+03 -4.4881108e+03 - 1.6831486e+03 2.2015452e+03 -4.4875566e+03 - 1.6361938e+03 2.2399055e+03 -4.4869107e+03 - 1.5888304e+03 2.2773654e+03 -4.4861775e+03 - 1.5410927e+03 2.3138958e+03 -4.4853620e+03 - 1.4930147e+03 2.3494687e+03 -4.4844696e+03 - 1.4446289e+03 2.3840577e+03 -4.4835064e+03 - 1.3959666e+03 2.4176380e+03 -4.4824788e+03 - 1.3470581e+03 2.4501862e+03 -4.4813935e+03 - 1.2979319e+03 2.4816806e+03 -4.4802576e+03 - 1.2486153e+03 2.5121011e+03 -4.4790787e+03 - 1.1991338e+03 2.5414292e+03 -4.4778642e+03 - 1.1495114e+03 2.5696478e+03 -4.4766219e+03 - 1.0997702e+03 2.5967415e+03 -4.4753598e+03 - 1.0499309e+03 2.6226963e+03 -4.4740858e+03 - 1.0000122e+03 2.6474995e+03 -4.4728078e+03 - 9.5003128e+02 2.6711398e+03 -4.4715337e+03 - 9.0000338e+02 2.6936074e+03 -4.4702713e+03 - 8.4994219e+02 2.7148934e+03 -4.4690283e+03 - 7.9985971e+02 2.7349901e+03 -4.4678121e+03 - 7.4976632e+02 2.7538908e+03 -4.4666300e+03 - 6.9967081e+02 2.7715899e+03 -4.4654889e+03 - 6.4958052e+02 2.7880825e+03 -4.4643956e+03 - 5.9950132e+02 2.8033646e+03 -4.4633564e+03 - 5.4943778e+02 2.8174326e+03 -4.4623772e+03 - 4.9939317e+02 2.8302838e+03 -4.4614637e+03 - 4.4936960e+02 2.8419159e+03 -4.4606211e+03 - 3.9936810e+02 2.8523271e+03 -4.4598540e+03 - 3.4938874e+02 2.8615160e+03 -4.4591669e+03 - 2.9943068e+02 2.8694814e+03 -4.4585635e+03 - 2.4949234e+02 2.8762226e+03 -4.4580472e+03 - 1.9957144e+02 2.8817387e+03 -4.4576209e+03 - 1.4966519e+02 2.8860295e+03 -4.4572869e+03 - 9.9770301e+01 2.8890945e+03 -4.4570469e+03 - 4.9883181e+01 2.8909336e+03 -4.4569025e+03 - 0.0000000e+00 2.8915467e+03 -4.4568542e+03 - -4.9883181e+01 2.8909336e+03 -4.4569025e+03 - -9.9770301e+01 2.8890945e+03 -4.4570469e+03 - -1.4966519e+02 2.8860295e+03 -4.4572869e+03 - -1.9957144e+02 2.8817387e+03 -4.4576209e+03 - -2.4949234e+02 2.8762226e+03 -4.4580472e+03 - -2.9943068e+02 2.8694814e+03 -4.4585635e+03 - -3.4938874e+02 2.8615160e+03 -4.4591669e+03 - -3.9936810e+02 2.8523271e+03 -4.4598540e+03 - -4.4936960e+02 2.8419159e+03 -4.4606211e+03 - -4.9939317e+02 2.8302838e+03 -4.4614637e+03 - -5.4943778e+02 2.8174326e+03 -4.4623772e+03 - -5.9950132e+02 2.8033646e+03 -4.4633564e+03 - -6.4958052e+02 2.7880825e+03 -4.4643956e+03 - -6.9967081e+02 2.7715899e+03 -4.4654889e+03 - -7.4976632e+02 2.7538908e+03 -4.4666300e+03 - -7.9985971e+02 2.7349901e+03 -4.4678121e+03 - -8.4994219e+02 2.7148934e+03 -4.4690283e+03 - -9.0000338e+02 2.6936074e+03 -4.4702713e+03 - -9.5003128e+02 2.6711398e+03 -4.4715337e+03 - -1.0000122e+03 2.6474995e+03 -4.4728078e+03 - -1.0499309e+03 2.6226963e+03 -4.4740858e+03 - -1.0997702e+03 2.5967415e+03 -4.4753598e+03 - -1.1495114e+03 2.5696478e+03 -4.4766219e+03 - -1.1991338e+03 2.5414292e+03 -4.4778642e+03 - -1.2486153e+03 2.5121011e+03 -4.4790787e+03 - -1.2979319e+03 2.4816806e+03 -4.4802576e+03 - -1.3470581e+03 2.4501862e+03 -4.4813935e+03 - -1.3959666e+03 2.4176380e+03 -4.4824788e+03 - -1.4446289e+03 2.3840577e+03 -4.4835064e+03 - -1.4930147e+03 2.3494687e+03 -4.4844696e+03 - -1.5410927e+03 2.3138958e+03 -4.4853620e+03 - -1.5888304e+03 2.2773654e+03 -4.4861775e+03 - -1.6361938e+03 2.2399055e+03 -4.4869107e+03 - -1.6831486e+03 2.2015452e+03 -4.4875566e+03 - -1.7296591e+03 2.1623154e+03 -4.4881108e+03 - -1.7756895e+03 2.1222479e+03 -4.4885696e+03 - -1.8212032e+03 2.0813756e+03 -4.4889297e+03 - -1.8661633e+03 2.0397328e+03 -4.4891887e+03 - -1.9105331e+03 1.9973542e+03 -4.4893448e+03 - -1.9542756e+03 1.9542756e+03 -4.4893970e+03 - -1.9973542e+03 1.9105331e+03 -4.4893448e+03 - -2.0397328e+03 1.8661633e+03 -4.4891887e+03 - -2.0813756e+03 1.8212032e+03 -4.4889297e+03 - -2.1222479e+03 1.7756895e+03 -4.4885696e+03 - -2.1623154e+03 1.7296591e+03 -4.4881108e+03 - -2.2015452e+03 1.6831486e+03 -4.4875566e+03 - -2.2399055e+03 1.6361938e+03 -4.4869107e+03 - -2.2773654e+03 1.5888304e+03 -4.4861775e+03 - -2.3138958e+03 1.5410927e+03 -4.4853620e+03 - -2.3494687e+03 1.4930147e+03 -4.4844696e+03 - -2.3840577e+03 1.4446289e+03 -4.4835064e+03 - -2.4176380e+03 1.3959666e+03 -4.4824788e+03 - -2.4501862e+03 1.3470581e+03 -4.4813935e+03 - -2.4816806e+03 1.2979319e+03 -4.4802576e+03 - -2.5121011e+03 1.2486153e+03 -4.4790787e+03 - -2.5414292e+03 1.1991338e+03 -4.4778642e+03 - -2.5696478e+03 1.1495114e+03 -4.4766219e+03 - -2.5967415e+03 1.0997702e+03 -4.4753598e+03 - -2.6226963e+03 1.0499309e+03 -4.4740858e+03 - -2.6474995e+03 1.0000122e+03 -4.4728078e+03 - -2.6711398e+03 9.5003128e+02 -4.4715337e+03 - -2.6936074e+03 9.0000338e+02 -4.4702713e+03 - -2.7148934e+03 8.4994219e+02 -4.4690283e+03 - -2.7349901e+03 7.9985971e+02 -4.4678121e+03 - -2.7538908e+03 7.4976632e+02 -4.4666300e+03 - -2.7715899e+03 6.9967081e+02 -4.4654889e+03 - -2.7880825e+03 6.4958052e+02 -4.4643956e+03 - -2.8033646e+03 5.9950132e+02 -4.4633564e+03 - -2.8174326e+03 5.4943778e+02 -4.4623772e+03 - -2.8302838e+03 4.9939317e+02 -4.4614637e+03 - -2.8419159e+03 4.4936960e+02 -4.4606211e+03 - -2.8523271e+03 3.9936810e+02 -4.4598540e+03 - -2.8615160e+03 3.4938874e+02 -4.4591669e+03 - -2.8694814e+03 2.9943068e+02 -4.4585635e+03 - -2.8762226e+03 2.4949234e+02 -4.4580472e+03 - -2.8817387e+03 1.9957144e+02 -4.4576209e+03 - -2.8860295e+03 1.4966519e+02 -4.4572869e+03 - -2.8890945e+03 9.9770301e+01 -4.4570469e+03 - -2.8909336e+03 4.9883181e+01 -4.4569025e+03 - -2.8915467e+03 0.0000000e+00 -4.4568542e+03 - -2.8909336e+03 -4.9883181e+01 -4.4569025e+03 - -2.8890945e+03 -9.9770301e+01 -4.4570469e+03 - -2.8860295e+03 -1.4966519e+02 -4.4572869e+03 - -2.8817387e+03 -1.9957144e+02 -4.4576209e+03 - -2.8762226e+03 -2.4949234e+02 -4.4580472e+03 - -2.8694814e+03 -2.9943068e+02 -4.4585635e+03 - -2.8615160e+03 -3.4938874e+02 -4.4591669e+03 - -2.8523271e+03 -3.9936810e+02 -4.4598540e+03 - -2.8419159e+03 -4.4936960e+02 -4.4606211e+03 - -2.8302838e+03 -4.9939317e+02 -4.4614637e+03 - -2.8174326e+03 -5.4943778e+02 -4.4623772e+03 - -2.8033646e+03 -5.9950132e+02 -4.4633564e+03 - -2.7880825e+03 -6.4958052e+02 -4.4643956e+03 - -2.7715899e+03 -6.9967081e+02 -4.4654889e+03 - -2.7538908e+03 -7.4976632e+02 -4.4666300e+03 - -2.7349901e+03 -7.9985971e+02 -4.4678121e+03 - -2.7148934e+03 -8.4994219e+02 -4.4690283e+03 - -2.6936074e+03 -9.0000338e+02 -4.4702713e+03 - -2.6711398e+03 -9.5003128e+02 -4.4715337e+03 - -2.6474995e+03 -1.0000122e+03 -4.4728078e+03 - -2.6226963e+03 -1.0499309e+03 -4.4740858e+03 - -2.5967415e+03 -1.0997702e+03 -4.4753598e+03 - -2.5696478e+03 -1.1495114e+03 -4.4766219e+03 - -2.5414292e+03 -1.1991338e+03 -4.4778642e+03 - -2.5121011e+03 -1.2486153e+03 -4.4790787e+03 - -2.4816806e+03 -1.2979319e+03 -4.4802576e+03 - -2.4501862e+03 -1.3470581e+03 -4.4813935e+03 - -2.4176380e+03 -1.3959666e+03 -4.4824788e+03 - -2.3840577e+03 -1.4446289e+03 -4.4835064e+03 - -2.3494687e+03 -1.4930147e+03 -4.4844696e+03 - -2.3138958e+03 -1.5410927e+03 -4.4853620e+03 - -2.2773654e+03 -1.5888304e+03 -4.4861775e+03 - -2.2399055e+03 -1.6361938e+03 -4.4869107e+03 - -2.2015452e+03 -1.6831486e+03 -4.4875566e+03 - -2.1623154e+03 -1.7296591e+03 -4.4881108e+03 - -2.1222479e+03 -1.7756895e+03 -4.4885696e+03 - -2.0813756e+03 -1.8212032e+03 -4.4889297e+03 - -2.0397328e+03 -1.8661633e+03 -4.4891887e+03 - -1.9973542e+03 -1.9105331e+03 -4.4893448e+03 - -1.9542756e+03 -1.9542756e+03 -4.4893970e+03 - -1.9105331e+03 -1.9973542e+03 -4.4893448e+03 - -1.8661633e+03 -2.0397328e+03 -4.4891887e+03 - -1.8212032e+03 -2.0813756e+03 -4.4889297e+03 - -1.7756895e+03 -2.1222479e+03 -4.4885696e+03 - -1.7296591e+03 -2.1623154e+03 -4.4881108e+03 - -1.6831486e+03 -2.2015452e+03 -4.4875566e+03 - -1.6361938e+03 -2.2399055e+03 -4.4869107e+03 - -1.5888304e+03 -2.2773654e+03 -4.4861775e+03 - -1.5410927e+03 -2.3138958e+03 -4.4853620e+03 - -1.4930147e+03 -2.3494687e+03 -4.4844696e+03 - -1.4446289e+03 -2.3840577e+03 -4.4835064e+03 - -1.3959666e+03 -2.4176380e+03 -4.4824788e+03 - -1.3470581e+03 -2.4501862e+03 -4.4813935e+03 - -1.2979319e+03 -2.4816806e+03 -4.4802576e+03 - -1.2486153e+03 -2.5121011e+03 -4.4790787e+03 - -1.1991338e+03 -2.5414292e+03 -4.4778642e+03 - -1.1495114e+03 -2.5696478e+03 -4.4766219e+03 - -1.0997702e+03 -2.5967415e+03 -4.4753598e+03 - -1.0499309e+03 -2.6226963e+03 -4.4740858e+03 - -1.0000122e+03 -2.6474995e+03 -4.4728078e+03 - -9.5003128e+02 -2.6711398e+03 -4.4715337e+03 - -9.0000338e+02 -2.6936074e+03 -4.4702713e+03 - -8.4994219e+02 -2.7148934e+03 -4.4690283e+03 - -7.9985971e+02 -2.7349901e+03 -4.4678121e+03 - -7.4976632e+02 -2.7538908e+03 -4.4666300e+03 - -6.9967081e+02 -2.7715899e+03 -4.4654889e+03 - -6.4958052e+02 -2.7880825e+03 -4.4643956e+03 - -5.9950132e+02 -2.8033646e+03 -4.4633564e+03 - -5.4943778e+02 -2.8174326e+03 -4.4623772e+03 - -4.9939317e+02 -2.8302838e+03 -4.4614637e+03 - -4.4936960e+02 -2.8419159e+03 -4.4606211e+03 - -3.9936810e+02 -2.8523271e+03 -4.4598540e+03 - -3.4938874e+02 -2.8615160e+03 -4.4591669e+03 - -2.9943068e+02 -2.8694814e+03 -4.4585635e+03 - -2.4949234e+02 -2.8762226e+03 -4.4580472e+03 - -1.9957144e+02 -2.8817387e+03 -4.4576209e+03 - -1.4966519e+02 -2.8860295e+03 -4.4572869e+03 - -9.9770301e+01 -2.8890945e+03 -4.4570469e+03 - -4.9883181e+01 -2.8909336e+03 -4.4569025e+03 - 0.0000000e+00 -2.8915467e+03 -4.4568542e+03 - 4.9883181e+01 -2.8909336e+03 -4.4569025e+03 - 9.9770301e+01 -2.8890945e+03 -4.4570469e+03 - 1.4966519e+02 -2.8860295e+03 -4.4572869e+03 - 1.9957144e+02 -2.8817387e+03 -4.4576209e+03 - 2.4949234e+02 -2.8762226e+03 -4.4580472e+03 - 2.9943068e+02 -2.8694814e+03 -4.4585635e+03 - 3.4938874e+02 -2.8615160e+03 -4.4591669e+03 - 3.9936810e+02 -2.8523271e+03 -4.4598540e+03 - 4.4936960e+02 -2.8419159e+03 -4.4606211e+03 - 4.9939317e+02 -2.8302838e+03 -4.4614637e+03 - 5.4943778e+02 -2.8174326e+03 -4.4623772e+03 - 5.9950132e+02 -2.8033646e+03 -4.4633564e+03 - 6.4958052e+02 -2.7880825e+03 -4.4643956e+03 - 6.9967081e+02 -2.7715899e+03 -4.4654889e+03 - 7.4976632e+02 -2.7538908e+03 -4.4666300e+03 - 7.9985971e+02 -2.7349901e+03 -4.4678121e+03 - 8.4994219e+02 -2.7148934e+03 -4.4690283e+03 - 9.0000338e+02 -2.6936074e+03 -4.4702713e+03 - 9.5003128e+02 -2.6711398e+03 -4.4715337e+03 - 1.0000122e+03 -2.6474995e+03 -4.4728078e+03 - 1.0499309e+03 -2.6226963e+03 -4.4740858e+03 - 1.0997702e+03 -2.5967415e+03 -4.4753598e+03 - 1.1495114e+03 -2.5696478e+03 -4.4766219e+03 - 1.1991338e+03 -2.5414292e+03 -4.4778642e+03 - 1.2486153e+03 -2.5121011e+03 -4.4790787e+03 - 1.2979319e+03 -2.4816806e+03 -4.4802576e+03 - 1.3470581e+03 -2.4501862e+03 -4.4813935e+03 - 1.3959666e+03 -2.4176380e+03 -4.4824788e+03 - 1.4446289e+03 -2.3840577e+03 -4.4835064e+03 - 1.4930147e+03 -2.3494687e+03 -4.4844696e+03 - 1.5410927e+03 -2.3138958e+03 -4.4853620e+03 - 1.5888304e+03 -2.2773654e+03 -4.4861775e+03 - 1.6361938e+03 -2.2399055e+03 -4.4869107e+03 - 1.6831486e+03 -2.2015452e+03 -4.4875566e+03 - 1.7296591e+03 -2.1623154e+03 -4.4881108e+03 - 1.7756895e+03 -2.1222479e+03 -4.4885696e+03 - 1.8212032e+03 -2.0813756e+03 -4.4889297e+03 - 1.8661633e+03 -2.0397328e+03 -4.4891887e+03 - 1.9105331e+03 -1.9973542e+03 -4.4893448e+03 - 1.9542756e+03 -1.9542756e+03 -4.4893970e+03 - 1.9973542e+03 -1.9105331e+03 -4.4893448e+03 - 2.0397328e+03 -1.8661633e+03 -4.4891887e+03 - 2.0813756e+03 -1.8212032e+03 -4.4889297e+03 - 2.1222479e+03 -1.7756895e+03 -4.4885696e+03 - 2.1623154e+03 -1.7296591e+03 -4.4881108e+03 - 2.2015452e+03 -1.6831486e+03 -4.4875566e+03 - 2.2399055e+03 -1.6361938e+03 -4.4869107e+03 - 2.2773654e+03 -1.5888304e+03 -4.4861775e+03 - 2.3138958e+03 -1.5410927e+03 -4.4853620e+03 - 2.3494687e+03 -1.4930147e+03 -4.4844696e+03 - 2.3840577e+03 -1.4446289e+03 -4.4835064e+03 - 2.4176380e+03 -1.3959666e+03 -4.4824788e+03 - 2.4501862e+03 -1.3470581e+03 -4.4813935e+03 - 2.4816806e+03 -1.2979319e+03 -4.4802576e+03 - 2.5121011e+03 -1.2486153e+03 -4.4790787e+03 - 2.5414292e+03 -1.1991338e+03 -4.4778642e+03 - 2.5696478e+03 -1.1495114e+03 -4.4766219e+03 - 2.5967415e+03 -1.0997702e+03 -4.4753598e+03 - 2.6226963e+03 -1.0499309e+03 -4.4740858e+03 - 2.6474995e+03 -1.0000122e+03 -4.4728078e+03 - 2.6711398e+03 -9.5003128e+02 -4.4715337e+03 - 2.6936074e+03 -9.0000338e+02 -4.4702713e+03 - 2.7148934e+03 -8.4994219e+02 -4.4690283e+03 - 2.7349901e+03 -7.9985971e+02 -4.4678121e+03 - 2.7538908e+03 -7.4976632e+02 -4.4666300e+03 - 2.7715899e+03 -6.9967081e+02 -4.4654889e+03 - 2.7880825e+03 -6.4958052e+02 -4.4643956e+03 - 2.8033646e+03 -5.9950132e+02 -4.4633564e+03 - 2.8174326e+03 -5.4943778e+02 -4.4623772e+03 - 2.8302838e+03 -4.9939317e+02 -4.4614637e+03 - 2.8419159e+03 -4.4936960e+02 -4.4606211e+03 - 2.8523271e+03 -3.9936810e+02 -4.4598540e+03 - 2.8615160e+03 -3.4938874e+02 -4.4591669e+03 - 2.8694814e+03 -2.9943068e+02 -4.4585635e+03 - 2.8762226e+03 -2.4949234e+02 -4.4580472e+03 - 2.8817387e+03 -1.9957144e+02 -4.4576209e+03 - 2.8860295e+03 -1.4966519e+02 -4.4572869e+03 - 2.8890945e+03 -9.9770301e+01 -4.4570469e+03 - 2.8909336e+03 -4.9883181e+01 -4.4569025e+03 - 2.8915467e+03 0.0000000e+00 -4.4568542e+03 - 2.8005405e+03 0.0000000e+00 -4.4914394e+03 - 2.7999469e+03 4.8811730e+01 -4.4914816e+03 - 2.7981663e+03 9.7625201e+01 -4.4916079e+03 - 2.7951989e+03 1.4644205e+02 -4.4918176e+03 - 2.7910450e+03 1.9526372e+02 -4.4921096e+03 - 2.7857055e+03 2.4409134e+02 -4.4924821e+03 - 2.7791810e+03 2.9292565e+02 -4.4929332e+03 - 2.7714727e+03 3.4176688e+02 -4.4934603e+03 - 2.7625819e+03 3.9061468e+02 -4.4940605e+03 - 2.7525104e+03 4.3946799e+02 -4.4947303e+03 - 2.7412602e+03 4.8832499e+02 -4.4954659e+03 - 2.7288338e+03 5.3718298e+02 -4.4962632e+03 - 2.7152343e+03 5.8603831e+02 -4.4971175e+03 - 2.7004650e+03 6.3488626e+02 -4.4980239e+03 - 2.6845302e+03 6.8372105e+02 -4.4989773e+03 - 2.6674346e+03 7.3253567e+02 -4.4999718e+03 - 2.6491839e+03 7.8132186e+02 -4.5010018e+03 - 2.6297843e+03 8.3007008e+02 -4.5020611e+03 - 2.6092431e+03 8.7876940e+02 -4.5031434e+03 - 2.5875684e+03 9.2740746e+02 -4.5042421e+03 - 2.5647696e+03 9.7597050e+02 -4.5053505e+03 - 2.5408568e+03 1.0244433e+03 -4.5064619e+03 - 2.5158416e+03 1.0728090e+03 -4.5075693e+03 - 2.4897365e+03 1.1210495e+03 -4.5086660e+03 - 2.4625555e+03 1.1691449e+03 -4.5097450e+03 - 2.4343138e+03 1.2170742e+03 -4.5107994e+03 - 2.4050278e+03 1.2648147e+03 -4.5118227e+03 - 2.3747156e+03 1.3123423e+03 -4.5128081e+03 - 2.3433963e+03 1.3596316e+03 -4.5137494e+03 - 2.3110905e+03 1.4066560e+03 -4.5146403e+03 - 2.2778203e+03 1.4533876e+03 -4.5154751e+03 - 2.2436089e+03 1.4997973e+03 -4.5162483e+03 - 2.2084811e+03 1.5458553e+03 -4.5169547e+03 - 2.1724628e+03 1.5915305e+03 -4.5175897e+03 - 2.1355812e+03 1.6367913e+03 -4.5181489e+03 - 2.0978644e+03 1.6816053e+03 -4.5186287e+03 - 2.0593419e+03 1.7259397e+03 -4.5190257e+03 - 2.0200439e+03 1.7697611e+03 -4.5193374e+03 - 1.9800017e+03 1.8130361e+03 -4.5195615e+03 - 1.9392470e+03 1.8557311e+03 -4.5196966e+03 - 1.8978125e+03 1.8978125e+03 -4.5197417e+03 - 1.8557311e+03 1.9392470e+03 -4.5196966e+03 - 1.8130361e+03 1.9800017e+03 -4.5195615e+03 - 1.7697611e+03 2.0200439e+03 -4.5193374e+03 - 1.7259397e+03 2.0593419e+03 -4.5190257e+03 - 1.6816053e+03 2.0978644e+03 -4.5186287e+03 - 1.6367913e+03 2.1355812e+03 -4.5181489e+03 - 1.5915305e+03 2.1724628e+03 -4.5175897e+03 - 1.5458553e+03 2.2084811e+03 -4.5169547e+03 - 1.4997973e+03 2.2436089e+03 -4.5162483e+03 - 1.4533876e+03 2.2778203e+03 -4.5154751e+03 - 1.4066560e+03 2.3110905e+03 -4.5146403e+03 - 1.3596316e+03 2.3433963e+03 -4.5137494e+03 - 1.3123423e+03 2.3747156e+03 -4.5128081e+03 - 1.2648147e+03 2.4050278e+03 -4.5118227e+03 - 1.2170742e+03 2.4343138e+03 -4.5107994e+03 - 1.1691449e+03 2.4625555e+03 -4.5097450e+03 - 1.1210495e+03 2.4897365e+03 -4.5086660e+03 - 1.0728090e+03 2.5158416e+03 -4.5075693e+03 - 1.0244433e+03 2.5408568e+03 -4.5064619e+03 - 9.7597050e+02 2.5647696e+03 -4.5053505e+03 - 9.2740746e+02 2.5875684e+03 -4.5042421e+03 - 8.7876940e+02 2.6092431e+03 -4.5031434e+03 - 8.3007008e+02 2.6297843e+03 -4.5020611e+03 - 7.8132186e+02 2.6491839e+03 -4.5010018e+03 - 7.3253567e+02 2.6674346e+03 -4.4999718e+03 - 6.8372105e+02 2.6845302e+03 -4.4989773e+03 - 6.3488626e+02 2.7004650e+03 -4.4980239e+03 - 5.8603831e+02 2.7152343e+03 -4.4971175e+03 - 5.3718298e+02 2.7288338e+03 -4.4962632e+03 - 4.8832499e+02 2.7412602e+03 -4.4954659e+03 - 4.3946799e+02 2.7525104e+03 -4.4947303e+03 - 3.9061468e+02 2.7625819e+03 -4.4940605e+03 - 3.4176688e+02 2.7714727e+03 -4.4934603e+03 - 2.9292565e+02 2.7791810e+03 -4.4929332e+03 - 2.4409134e+02 2.7857055e+03 -4.4924821e+03 - 1.9526372e+02 2.7910450e+03 -4.4921096e+03 - 1.4644205e+02 2.7951989e+03 -4.4918176e+03 - 9.7625201e+01 2.7981663e+03 -4.4916079e+03 - 4.8811730e+01 2.7999469e+03 -4.4914816e+03 - 0.0000000e+00 2.8005405e+03 -4.4914394e+03 - -4.8811730e+01 2.7999469e+03 -4.4914816e+03 - -9.7625201e+01 2.7981663e+03 -4.4916079e+03 - -1.4644205e+02 2.7951989e+03 -4.4918176e+03 - -1.9526372e+02 2.7910450e+03 -4.4921096e+03 - -2.4409134e+02 2.7857055e+03 -4.4924821e+03 - -2.9292565e+02 2.7791810e+03 -4.4929332e+03 - -3.4176688e+02 2.7714727e+03 -4.4934603e+03 - -3.9061468e+02 2.7625819e+03 -4.4940605e+03 - -4.3946799e+02 2.7525104e+03 -4.4947303e+03 - -4.8832499e+02 2.7412602e+03 -4.4954659e+03 - -5.3718298e+02 2.7288338e+03 -4.4962632e+03 - -5.8603831e+02 2.7152343e+03 -4.4971175e+03 - -6.3488626e+02 2.7004650e+03 -4.4980239e+03 - -6.8372105e+02 2.6845302e+03 -4.4989773e+03 - -7.3253567e+02 2.6674346e+03 -4.4999718e+03 - -7.8132186e+02 2.6491839e+03 -4.5010018e+03 - -8.3007008e+02 2.6297843e+03 -4.5020611e+03 - -8.7876940e+02 2.6092431e+03 -4.5031434e+03 - -9.2740746e+02 2.5875684e+03 -4.5042421e+03 - -9.7597050e+02 2.5647696e+03 -4.5053505e+03 - -1.0244433e+03 2.5408568e+03 -4.5064619e+03 - -1.0728090e+03 2.5158416e+03 -4.5075693e+03 - -1.1210495e+03 2.4897365e+03 -4.5086660e+03 - -1.1691449e+03 2.4625555e+03 -4.5097450e+03 - -1.2170742e+03 2.4343138e+03 -4.5107994e+03 - -1.2648147e+03 2.4050278e+03 -4.5118227e+03 - -1.3123423e+03 2.3747156e+03 -4.5128081e+03 - -1.3596316e+03 2.3433963e+03 -4.5137494e+03 - -1.4066560e+03 2.3110905e+03 -4.5146403e+03 - -1.4533876e+03 2.2778203e+03 -4.5154751e+03 - -1.4997973e+03 2.2436089e+03 -4.5162483e+03 - -1.5458553e+03 2.2084811e+03 -4.5169547e+03 - -1.5915305e+03 2.1724628e+03 -4.5175897e+03 - -1.6367913e+03 2.1355812e+03 -4.5181489e+03 - -1.6816053e+03 2.0978644e+03 -4.5186287e+03 - -1.7259397e+03 2.0593419e+03 -4.5190257e+03 - -1.7697611e+03 2.0200439e+03 -4.5193374e+03 - -1.8130361e+03 1.9800017e+03 -4.5195615e+03 - -1.8557311e+03 1.9392470e+03 -4.5196966e+03 - -1.8978125e+03 1.8978125e+03 -4.5197417e+03 - -1.9392470e+03 1.8557311e+03 -4.5196966e+03 - -1.9800017e+03 1.8130361e+03 -4.5195615e+03 - -2.0200439e+03 1.7697611e+03 -4.5193374e+03 - -2.0593419e+03 1.7259397e+03 -4.5190257e+03 - -2.0978644e+03 1.6816053e+03 -4.5186287e+03 - -2.1355812e+03 1.6367913e+03 -4.5181489e+03 - -2.1724628e+03 1.5915305e+03 -4.5175897e+03 - -2.2084811e+03 1.5458553e+03 -4.5169547e+03 - -2.2436089e+03 1.4997973e+03 -4.5162483e+03 - -2.2778203e+03 1.4533876e+03 -4.5154751e+03 - -2.3110905e+03 1.4066560e+03 -4.5146403e+03 - -2.3433963e+03 1.3596316e+03 -4.5137494e+03 - -2.3747156e+03 1.3123423e+03 -4.5128081e+03 - -2.4050278e+03 1.2648147e+03 -4.5118227e+03 - -2.4343138e+03 1.2170742e+03 -4.5107994e+03 - -2.4625555e+03 1.1691449e+03 -4.5097450e+03 - -2.4897365e+03 1.1210495e+03 -4.5086660e+03 - -2.5158416e+03 1.0728090e+03 -4.5075693e+03 - -2.5408568e+03 1.0244433e+03 -4.5064619e+03 - -2.5647696e+03 9.7597050e+02 -4.5053505e+03 - -2.5875684e+03 9.2740746e+02 -4.5042421e+03 - -2.6092431e+03 8.7876940e+02 -4.5031434e+03 - -2.6297843e+03 8.3007008e+02 -4.5020611e+03 - -2.6491839e+03 7.8132186e+02 -4.5010018e+03 - -2.6674346e+03 7.3253567e+02 -4.4999718e+03 - -2.6845302e+03 6.8372105e+02 -4.4989773e+03 - -2.7004650e+03 6.3488626e+02 -4.4980239e+03 - -2.7152343e+03 5.8603831e+02 -4.4971175e+03 - -2.7288338e+03 5.3718298e+02 -4.4962632e+03 - -2.7412602e+03 4.8832499e+02 -4.4954659e+03 - -2.7525104e+03 4.3946799e+02 -4.4947303e+03 - -2.7625819e+03 3.9061468e+02 -4.4940605e+03 - -2.7714727e+03 3.4176688e+02 -4.4934603e+03 - -2.7791810e+03 2.9292565e+02 -4.4929332e+03 - -2.7857055e+03 2.4409134e+02 -4.4924821e+03 - -2.7910450e+03 1.9526372e+02 -4.4921096e+03 - -2.7951989e+03 1.4644205e+02 -4.4918176e+03 - -2.7981663e+03 9.7625201e+01 -4.4916079e+03 - -2.7999469e+03 4.8811730e+01 -4.4914816e+03 - -2.8005405e+03 0.0000000e+00 -4.4914394e+03 - -2.7999469e+03 -4.8811730e+01 -4.4914816e+03 - -2.7981663e+03 -9.7625201e+01 -4.4916079e+03 - -2.7951989e+03 -1.4644205e+02 -4.4918176e+03 - -2.7910450e+03 -1.9526372e+02 -4.4921096e+03 - -2.7857055e+03 -2.4409134e+02 -4.4924821e+03 - -2.7791810e+03 -2.9292565e+02 -4.4929332e+03 - -2.7714727e+03 -3.4176688e+02 -4.4934603e+03 - -2.7625819e+03 -3.9061468e+02 -4.4940605e+03 - -2.7525104e+03 -4.3946799e+02 -4.4947303e+03 - -2.7412602e+03 -4.8832499e+02 -4.4954659e+03 - -2.7288338e+03 -5.3718298e+02 -4.4962632e+03 - -2.7152343e+03 -5.8603831e+02 -4.4971175e+03 - -2.7004650e+03 -6.3488626e+02 -4.4980239e+03 - -2.6845302e+03 -6.8372105e+02 -4.4989773e+03 - -2.6674346e+03 -7.3253567e+02 -4.4999718e+03 - -2.6491839e+03 -7.8132186e+02 -4.5010018e+03 - -2.6297843e+03 -8.3007008e+02 -4.5020611e+03 - -2.6092431e+03 -8.7876940e+02 -4.5031434e+03 - -2.5875684e+03 -9.2740746e+02 -4.5042421e+03 - -2.5647696e+03 -9.7597050e+02 -4.5053505e+03 - -2.5408568e+03 -1.0244433e+03 -4.5064619e+03 - -2.5158416e+03 -1.0728090e+03 -4.5075693e+03 - -2.4897365e+03 -1.1210495e+03 -4.5086660e+03 - -2.4625555e+03 -1.1691449e+03 -4.5097450e+03 - -2.4343138e+03 -1.2170742e+03 -4.5107994e+03 - -2.4050278e+03 -1.2648147e+03 -4.5118227e+03 - -2.3747156e+03 -1.3123423e+03 -4.5128081e+03 - -2.3433963e+03 -1.3596316e+03 -4.5137494e+03 - -2.3110905e+03 -1.4066560e+03 -4.5146403e+03 - -2.2778203e+03 -1.4533876e+03 -4.5154751e+03 - -2.2436089e+03 -1.4997973e+03 -4.5162483e+03 - -2.2084811e+03 -1.5458553e+03 -4.5169547e+03 - -2.1724628e+03 -1.5915305e+03 -4.5175897e+03 - -2.1355812e+03 -1.6367913e+03 -4.5181489e+03 - -2.0978644e+03 -1.6816053e+03 -4.5186287e+03 - -2.0593419e+03 -1.7259397e+03 -4.5190257e+03 - -2.0200439e+03 -1.7697611e+03 -4.5193374e+03 - -1.9800017e+03 -1.8130361e+03 -4.5195615e+03 - -1.9392470e+03 -1.8557311e+03 -4.5196966e+03 - -1.8978125e+03 -1.8978125e+03 -4.5197417e+03 - -1.8557311e+03 -1.9392470e+03 -4.5196966e+03 - -1.8130361e+03 -1.9800017e+03 -4.5195615e+03 - -1.7697611e+03 -2.0200439e+03 -4.5193374e+03 - -1.7259397e+03 -2.0593419e+03 -4.5190257e+03 - -1.6816053e+03 -2.0978644e+03 -4.5186287e+03 - -1.6367913e+03 -2.1355812e+03 -4.5181489e+03 - -1.5915305e+03 -2.1724628e+03 -4.5175897e+03 - -1.5458553e+03 -2.2084811e+03 -4.5169547e+03 - -1.4997973e+03 -2.2436089e+03 -4.5162483e+03 - -1.4533876e+03 -2.2778203e+03 -4.5154751e+03 - -1.4066560e+03 -2.3110905e+03 -4.5146403e+03 - -1.3596316e+03 -2.3433963e+03 -4.5137494e+03 - -1.3123423e+03 -2.3747156e+03 -4.5128081e+03 - -1.2648147e+03 -2.4050278e+03 -4.5118227e+03 - -1.2170742e+03 -2.4343138e+03 -4.5107994e+03 - -1.1691449e+03 -2.4625555e+03 -4.5097450e+03 - -1.1210495e+03 -2.4897365e+03 -4.5086660e+03 - -1.0728090e+03 -2.5158416e+03 -4.5075693e+03 - -1.0244433e+03 -2.5408568e+03 -4.5064619e+03 - -9.7597050e+02 -2.5647696e+03 -4.5053505e+03 - -9.2740746e+02 -2.5875684e+03 -4.5042421e+03 - -8.7876940e+02 -2.6092431e+03 -4.5031434e+03 - -8.3007008e+02 -2.6297843e+03 -4.5020611e+03 - -7.8132186e+02 -2.6491839e+03 -4.5010018e+03 - -7.3253567e+02 -2.6674346e+03 -4.4999718e+03 - -6.8372105e+02 -2.6845302e+03 -4.4989773e+03 - -6.3488626e+02 -2.7004650e+03 -4.4980239e+03 - -5.8603831e+02 -2.7152343e+03 -4.4971175e+03 - -5.3718298e+02 -2.7288338e+03 -4.4962632e+03 - -4.8832499e+02 -2.7412602e+03 -4.4954659e+03 - -4.3946799e+02 -2.7525104e+03 -4.4947303e+03 - -3.9061468e+02 -2.7625819e+03 -4.4940605e+03 - -3.4176688e+02 -2.7714727e+03 -4.4934603e+03 - -2.9292565e+02 -2.7791810e+03 -4.4929332e+03 - -2.4409134e+02 -2.7857055e+03 -4.4924821e+03 - -1.9526372e+02 -2.7910450e+03 -4.4921096e+03 - -1.4644205e+02 -2.7951989e+03 -4.4918176e+03 - -9.7625201e+01 -2.7981663e+03 -4.4916079e+03 - -4.8811730e+01 -2.7999469e+03 -4.4914816e+03 - 0.0000000e+00 -2.8005405e+03 -4.4914394e+03 - 4.8811730e+01 -2.7999469e+03 -4.4914816e+03 - 9.7625201e+01 -2.7981663e+03 -4.4916079e+03 - 1.4644205e+02 -2.7951989e+03 -4.4918176e+03 - 1.9526372e+02 -2.7910450e+03 -4.4921096e+03 - 2.4409134e+02 -2.7857055e+03 -4.4924821e+03 - 2.9292565e+02 -2.7791810e+03 -4.4929332e+03 - 3.4176688e+02 -2.7714727e+03 -4.4934603e+03 - 3.9061468e+02 -2.7625819e+03 -4.4940605e+03 - 4.3946799e+02 -2.7525104e+03 -4.4947303e+03 - 4.8832499e+02 -2.7412602e+03 -4.4954659e+03 - 5.3718298e+02 -2.7288338e+03 -4.4962632e+03 - 5.8603831e+02 -2.7152343e+03 -4.4971175e+03 - 6.3488626e+02 -2.7004650e+03 -4.4980239e+03 - 6.8372105e+02 -2.6845302e+03 -4.4989773e+03 - 7.3253567e+02 -2.6674346e+03 -4.4999718e+03 - 7.8132186e+02 -2.6491839e+03 -4.5010018e+03 - 8.3007008e+02 -2.6297843e+03 -4.5020611e+03 - 8.7876940e+02 -2.6092431e+03 -4.5031434e+03 - 9.2740746e+02 -2.5875684e+03 -4.5042421e+03 - 9.7597050e+02 -2.5647696e+03 -4.5053505e+03 - 1.0244433e+03 -2.5408568e+03 -4.5064619e+03 - 1.0728090e+03 -2.5158416e+03 -4.5075693e+03 - 1.1210495e+03 -2.4897365e+03 -4.5086660e+03 - 1.1691449e+03 -2.4625555e+03 -4.5097450e+03 - 1.2170742e+03 -2.4343138e+03 -4.5107994e+03 - 1.2648147e+03 -2.4050278e+03 -4.5118227e+03 - 1.3123423e+03 -2.3747156e+03 -4.5128081e+03 - 1.3596316e+03 -2.3433963e+03 -4.5137494e+03 - 1.4066560e+03 -2.3110905e+03 -4.5146403e+03 - 1.4533876e+03 -2.2778203e+03 -4.5154751e+03 - 1.4997973e+03 -2.2436089e+03 -4.5162483e+03 - 1.5458553e+03 -2.2084811e+03 -4.5169547e+03 - 1.5915305e+03 -2.1724628e+03 -4.5175897e+03 - 1.6367913e+03 -2.1355812e+03 -4.5181489e+03 - 1.6816053e+03 -2.0978644e+03 -4.5186287e+03 - 1.7259397e+03 -2.0593419e+03 -4.5190257e+03 - 1.7697611e+03 -2.0200439e+03 -4.5193374e+03 - 1.8130361e+03 -1.9800017e+03 -4.5195615e+03 - 1.8557311e+03 -1.9392470e+03 -4.5196966e+03 - 1.8978125e+03 -1.8978125e+03 -4.5197417e+03 - 1.9392470e+03 -1.8557311e+03 -4.5196966e+03 - 1.9800017e+03 -1.8130361e+03 -4.5195615e+03 - 2.0200439e+03 -1.7697611e+03 -4.5193374e+03 - 2.0593419e+03 -1.7259397e+03 -4.5190257e+03 - 2.0978644e+03 -1.6816053e+03 -4.5186287e+03 - 2.1355812e+03 -1.6367913e+03 -4.5181489e+03 - 2.1724628e+03 -1.5915305e+03 -4.5175897e+03 - 2.2084811e+03 -1.5458553e+03 -4.5169547e+03 - 2.2436089e+03 -1.4997973e+03 -4.5162483e+03 - 2.2778203e+03 -1.4533876e+03 -4.5154751e+03 - 2.3110905e+03 -1.4066560e+03 -4.5146403e+03 - 2.3433963e+03 -1.3596316e+03 -4.5137494e+03 - 2.3747156e+03 -1.3123423e+03 -4.5128081e+03 - 2.4050278e+03 -1.2648147e+03 -4.5118227e+03 - 2.4343138e+03 -1.2170742e+03 -4.5107994e+03 - 2.4625555e+03 -1.1691449e+03 -4.5097450e+03 - 2.4897365e+03 -1.1210495e+03 -4.5086660e+03 - 2.5158416e+03 -1.0728090e+03 -4.5075693e+03 - 2.5408568e+03 -1.0244433e+03 -4.5064619e+03 - 2.5647696e+03 -9.7597050e+02 -4.5053505e+03 - 2.5875684e+03 -9.2740746e+02 -4.5042421e+03 - 2.6092431e+03 -8.7876940e+02 -4.5031434e+03 - 2.6297843e+03 -8.3007008e+02 -4.5020611e+03 - 2.6491839e+03 -7.8132186e+02 -4.5010018e+03 - 2.6674346e+03 -7.3253567e+02 -4.4999718e+03 - 2.6845302e+03 -6.8372105e+02 -4.4989773e+03 - 2.7004650e+03 -6.3488626e+02 -4.4980239e+03 - 2.7152343e+03 -5.8603831e+02 -4.4971175e+03 - 2.7288338e+03 -5.3718298e+02 -4.4962632e+03 - 2.7412602e+03 -4.8832499e+02 -4.4954659e+03 - 2.7525104e+03 -4.3946799e+02 -4.4947303e+03 - 2.7625819e+03 -3.9061468e+02 -4.4940605e+03 - 2.7714727e+03 -3.4176688e+02 -4.4934603e+03 - 2.7791810e+03 -2.9292565e+02 -4.4929332e+03 - 2.7857055e+03 -2.4409134e+02 -4.4924821e+03 - 2.7910450e+03 -1.9526372e+02 -4.4921096e+03 - 2.7951989e+03 -1.4644205e+02 -4.4918176e+03 - 2.7981663e+03 -9.7625201e+01 -4.4916079e+03 - 2.7999469e+03 -4.8811730e+01 -4.4914816e+03 - 2.8005405e+03 0.0000000e+00 -4.4914394e+03 - 2.7046516e+03 0.0000000e+00 -4.5257409e+03 - 2.7040789e+03 4.7620684e+01 -4.5257773e+03 - 2.7023612e+03 9.5241051e+01 -4.5258864e+03 - 2.6994986e+03 1.4286070e+02 -4.5260676e+03 - 2.6954919e+03 1.9047903e+02 -4.5263198e+03 - 2.6903420e+03 2.3809521e+02 -4.5266416e+03 - 2.6840499e+03 2.8570804e+02 -4.5270311e+03 - 2.6766171e+03 3.3331585e+02 -4.5274862e+03 - 2.6680456e+03 3.8091650e+02 -4.5280043e+03 - 2.6583374e+03 4.2850721e+02 -4.5285824e+03 - 2.6474952e+03 4.7608452e+02 -4.5292172e+03 - 2.6355219e+03 5.2364421e+02 -4.5299049e+03 - 2.6224213e+03 5.7118123e+02 -4.5306417e+03 - 2.6081973e+03 6.1868961e+02 -4.5314232e+03 - 2.5928546e+03 6.6616243e+02 -4.5322449e+03 - 2.5763987e+03 7.1359171e+02 -4.5331018e+03 - 2.5588356e+03 7.6096841e+02 -4.5339890e+03 - 2.5401721e+03 8.0828236e+02 -4.5349011e+03 - 2.5204159e+03 8.5552217e+02 -4.5358326e+03 - 2.4995755e+03 9.0267529e+02 -4.5367778e+03 - 2.4776604e+03 9.4972790e+02 -4.5377312e+03 - 2.4546810e+03 9.9666492e+02 -4.5386867e+03 - 2.4306488e+03 1.0434700e+03 -4.5396384e+03 - 2.4055764e+03 1.0901256e+03 -4.5405806e+03 - 2.3794773e+03 1.1366127e+03 -4.5415072e+03 - 2.3523664e+03 1.1829112e+03 -4.5424124e+03 - 2.3242596e+03 1.2289999e+03 -4.5432905e+03 - 2.2951740e+03 1.2748562e+03 -4.5441358e+03 - 2.2651279e+03 1.3204563e+03 -4.5449430e+03 - 2.2341408e+03 1.3657757e+03 -4.5457068e+03 - 2.2022333e+03 1.4107884e+03 -4.5464223e+03 - 2.1694274e+03 1.4554680e+03 -4.5470848e+03 - 2.1357458e+03 1.4997867e+03 -4.5476899e+03 - 2.1012125e+03 1.5437165e+03 -4.5482337e+03 - 2.0658527e+03 1.5872283e+03 -4.5487125e+03 - 2.0296923e+03 1.6302927e+03 -4.5491232e+03 - 1.9927582e+03 1.6728797e+03 -4.5494631e+03 - 1.9550781e+03 1.7149593e+03 -4.5497298e+03 - 1.9166803e+03 1.7565009e+03 -4.5499216e+03 - 1.8775940e+03 1.7974742e+03 -4.5500372e+03 - 1.8378486e+03 1.8378486e+03 -4.5500758e+03 - 1.7974742e+03 1.8775940e+03 -4.5500372e+03 - 1.7565009e+03 1.9166803e+03 -4.5499216e+03 - 1.7149593e+03 1.9550781e+03 -4.5497298e+03 - 1.6728797e+03 1.9927582e+03 -4.5494631e+03 - 1.6302927e+03 2.0296923e+03 -4.5491232e+03 - 1.5872283e+03 2.0658527e+03 -4.5487125e+03 - 1.5437165e+03 2.1012125e+03 -4.5482337e+03 - 1.4997867e+03 2.1357458e+03 -4.5476899e+03 - 1.4554680e+03 2.1694274e+03 -4.5470848e+03 - 1.4107884e+03 2.2022333e+03 -4.5464223e+03 - 1.3657757e+03 2.2341408e+03 -4.5457068e+03 - 1.3204563e+03 2.2651279e+03 -4.5449430e+03 - 1.2748562e+03 2.2951740e+03 -4.5441358e+03 - 1.2289999e+03 2.3242596e+03 -4.5432905e+03 - 1.1829112e+03 2.3523664e+03 -4.5424124e+03 - 1.1366127e+03 2.3794773e+03 -4.5415072e+03 - 1.0901256e+03 2.4055764e+03 -4.5405806e+03 - 1.0434700e+03 2.4306488e+03 -4.5396384e+03 - 9.9666492e+02 2.4546810e+03 -4.5386867e+03 - 9.4972790e+02 2.4776604e+03 -4.5377312e+03 - 9.0267529e+02 2.4995755e+03 -4.5367778e+03 - 8.5552217e+02 2.5204159e+03 -4.5358326e+03 - 8.0828236e+02 2.5401721e+03 -4.5349011e+03 - 7.6096841e+02 2.5588356e+03 -4.5339890e+03 - 7.1359171e+02 2.5763987e+03 -4.5331018e+03 - 6.6616243e+02 2.5928546e+03 -4.5322449e+03 - 6.1868961e+02 2.6081973e+03 -4.5314232e+03 - 5.7118123e+02 2.6224213e+03 -4.5306417e+03 - 5.2364421e+02 2.6355219e+03 -4.5299049e+03 - 4.7608452e+02 2.6474952e+03 -4.5292172e+03 - 4.2850721e+02 2.6583374e+03 -4.5285824e+03 - 3.8091650e+02 2.6680456e+03 -4.5280043e+03 - 3.3331585e+02 2.6766171e+03 -4.5274862e+03 - 2.8570804e+02 2.6840499e+03 -4.5270311e+03 - 2.3809521e+02 2.6903420e+03 -4.5266416e+03 - 1.9047903e+02 2.6954919e+03 -4.5263198e+03 - 1.4286070e+02 2.6994986e+03 -4.5260676e+03 - 9.5241051e+01 2.7023612e+03 -4.5258864e+03 - 4.7620684e+01 2.7040789e+03 -4.5257773e+03 - 0.0000000e+00 2.7046516e+03 -4.5257409e+03 - -4.7620684e+01 2.7040789e+03 -4.5257773e+03 - -9.5241051e+01 2.7023612e+03 -4.5258864e+03 - -1.4286070e+02 2.6994986e+03 -4.5260676e+03 - -1.9047903e+02 2.6954919e+03 -4.5263198e+03 - -2.3809521e+02 2.6903420e+03 -4.5266416e+03 - -2.8570804e+02 2.6840499e+03 -4.5270311e+03 - -3.3331585e+02 2.6766171e+03 -4.5274862e+03 - -3.8091650e+02 2.6680456e+03 -4.5280043e+03 - -4.2850721e+02 2.6583374e+03 -4.5285824e+03 - -4.7608452e+02 2.6474952e+03 -4.5292172e+03 - -5.2364421e+02 2.6355219e+03 -4.5299049e+03 - -5.7118123e+02 2.6224213e+03 -4.5306417e+03 - -6.1868961e+02 2.6081973e+03 -4.5314232e+03 - -6.6616243e+02 2.5928546e+03 -4.5322449e+03 - -7.1359171e+02 2.5763987e+03 -4.5331018e+03 - -7.6096841e+02 2.5588356e+03 -4.5339890e+03 - -8.0828236e+02 2.5401721e+03 -4.5349011e+03 - -8.5552217e+02 2.5204159e+03 -4.5358326e+03 - -9.0267529e+02 2.4995755e+03 -4.5367778e+03 - -9.4972790e+02 2.4776604e+03 -4.5377312e+03 - -9.9666492e+02 2.4546810e+03 -4.5386867e+03 - -1.0434700e+03 2.4306488e+03 -4.5396384e+03 - -1.0901256e+03 2.4055764e+03 -4.5405806e+03 - -1.1366127e+03 2.3794773e+03 -4.5415072e+03 - -1.1829112e+03 2.3523664e+03 -4.5424124e+03 - -1.2289999e+03 2.3242596e+03 -4.5432905e+03 - -1.2748562e+03 2.2951740e+03 -4.5441358e+03 - -1.3204563e+03 2.2651279e+03 -4.5449430e+03 - -1.3657757e+03 2.2341408e+03 -4.5457068e+03 - -1.4107884e+03 2.2022333e+03 -4.5464223e+03 - -1.4554680e+03 2.1694274e+03 -4.5470848e+03 - -1.4997867e+03 2.1357458e+03 -4.5476899e+03 - -1.5437165e+03 2.1012125e+03 -4.5482337e+03 - -1.5872283e+03 2.0658527e+03 -4.5487125e+03 - -1.6302927e+03 2.0296923e+03 -4.5491232e+03 - -1.6728797e+03 1.9927582e+03 -4.5494631e+03 - -1.7149593e+03 1.9550781e+03 -4.5497298e+03 - -1.7565009e+03 1.9166803e+03 -4.5499216e+03 - -1.7974742e+03 1.8775940e+03 -4.5500372e+03 - -1.8378486e+03 1.8378486e+03 -4.5500758e+03 - -1.8775940e+03 1.7974742e+03 -4.5500372e+03 - -1.9166803e+03 1.7565009e+03 -4.5499216e+03 - -1.9550781e+03 1.7149593e+03 -4.5497298e+03 - -1.9927582e+03 1.6728797e+03 -4.5494631e+03 - -2.0296923e+03 1.6302927e+03 -4.5491232e+03 - -2.0658527e+03 1.5872283e+03 -4.5487125e+03 - -2.1012125e+03 1.5437165e+03 -4.5482337e+03 - -2.1357458e+03 1.4997867e+03 -4.5476899e+03 - -2.1694274e+03 1.4554680e+03 -4.5470848e+03 - -2.2022333e+03 1.4107884e+03 -4.5464223e+03 - -2.2341408e+03 1.3657757e+03 -4.5457068e+03 - -2.2651279e+03 1.3204563e+03 -4.5449430e+03 - -2.2951740e+03 1.2748562e+03 -4.5441358e+03 - -2.3242596e+03 1.2289999e+03 -4.5432905e+03 - -2.3523664e+03 1.1829112e+03 -4.5424124e+03 - -2.3794773e+03 1.1366127e+03 -4.5415072e+03 - -2.4055764e+03 1.0901256e+03 -4.5405806e+03 - -2.4306488e+03 1.0434700e+03 -4.5396384e+03 - -2.4546810e+03 9.9666492e+02 -4.5386867e+03 - -2.4776604e+03 9.4972790e+02 -4.5377312e+03 - -2.4995755e+03 9.0267529e+02 -4.5367778e+03 - -2.5204159e+03 8.5552217e+02 -4.5358326e+03 - -2.5401721e+03 8.0828236e+02 -4.5349011e+03 - -2.5588356e+03 7.6096841e+02 -4.5339890e+03 - -2.5763987e+03 7.1359171e+02 -4.5331018e+03 - -2.5928546e+03 6.6616243e+02 -4.5322449e+03 - -2.6081973e+03 6.1868961e+02 -4.5314232e+03 - -2.6224213e+03 5.7118123e+02 -4.5306417e+03 - -2.6355219e+03 5.2364421e+02 -4.5299049e+03 - -2.6474952e+03 4.7608452e+02 -4.5292172e+03 - -2.6583374e+03 4.2850721e+02 -4.5285824e+03 - -2.6680456e+03 3.8091650e+02 -4.5280043e+03 - -2.6766171e+03 3.3331585e+02 -4.5274862e+03 - -2.6840499e+03 2.8570804e+02 -4.5270311e+03 - -2.6903420e+03 2.3809521e+02 -4.5266416e+03 - -2.6954919e+03 1.9047903e+02 -4.5263198e+03 - -2.6994986e+03 1.4286070e+02 -4.5260676e+03 - -2.7023612e+03 9.5241051e+01 -4.5258864e+03 - -2.7040789e+03 4.7620684e+01 -4.5257773e+03 - -2.7046516e+03 0.0000000e+00 -4.5257409e+03 - -2.7040789e+03 -4.7620684e+01 -4.5257773e+03 - -2.7023612e+03 -9.5241051e+01 -4.5258864e+03 - -2.6994986e+03 -1.4286070e+02 -4.5260676e+03 - -2.6954919e+03 -1.9047903e+02 -4.5263198e+03 - -2.6903420e+03 -2.3809521e+02 -4.5266416e+03 - -2.6840499e+03 -2.8570804e+02 -4.5270311e+03 - -2.6766171e+03 -3.3331585e+02 -4.5274862e+03 - -2.6680456e+03 -3.8091650e+02 -4.5280043e+03 - -2.6583374e+03 -4.2850721e+02 -4.5285824e+03 - -2.6474952e+03 -4.7608452e+02 -4.5292172e+03 - -2.6355219e+03 -5.2364421e+02 -4.5299049e+03 - -2.6224213e+03 -5.7118123e+02 -4.5306417e+03 - -2.6081973e+03 -6.1868961e+02 -4.5314232e+03 - -2.5928546e+03 -6.6616243e+02 -4.5322449e+03 - -2.5763987e+03 -7.1359171e+02 -4.5331018e+03 - -2.5588356e+03 -7.6096841e+02 -4.5339890e+03 - -2.5401721e+03 -8.0828236e+02 -4.5349011e+03 - -2.5204159e+03 -8.5552217e+02 -4.5358326e+03 - -2.4995755e+03 -9.0267529e+02 -4.5367778e+03 - -2.4776604e+03 -9.4972790e+02 -4.5377312e+03 - -2.4546810e+03 -9.9666492e+02 -4.5386867e+03 - -2.4306488e+03 -1.0434700e+03 -4.5396384e+03 - -2.4055764e+03 -1.0901256e+03 -4.5405806e+03 - -2.3794773e+03 -1.1366127e+03 -4.5415072e+03 - -2.3523664e+03 -1.1829112e+03 -4.5424124e+03 - -2.3242596e+03 -1.2289999e+03 -4.5432905e+03 - -2.2951740e+03 -1.2748562e+03 -4.5441358e+03 - -2.2651279e+03 -1.3204563e+03 -4.5449430e+03 - -2.2341408e+03 -1.3657757e+03 -4.5457068e+03 - -2.2022333e+03 -1.4107884e+03 -4.5464223e+03 - -2.1694274e+03 -1.4554680e+03 -4.5470848e+03 - -2.1357458e+03 -1.4997867e+03 -4.5476899e+03 - -2.1012125e+03 -1.5437165e+03 -4.5482337e+03 - -2.0658527e+03 -1.5872283e+03 -4.5487125e+03 - -2.0296923e+03 -1.6302927e+03 -4.5491232e+03 - -1.9927582e+03 -1.6728797e+03 -4.5494631e+03 - -1.9550781e+03 -1.7149593e+03 -4.5497298e+03 - -1.9166803e+03 -1.7565009e+03 -4.5499216e+03 - -1.8775940e+03 -1.7974742e+03 -4.5500372e+03 - -1.8378486e+03 -1.8378486e+03 -4.5500758e+03 - -1.7974742e+03 -1.8775940e+03 -4.5500372e+03 - -1.7565009e+03 -1.9166803e+03 -4.5499216e+03 - -1.7149593e+03 -1.9550781e+03 -4.5497298e+03 - -1.6728797e+03 -1.9927582e+03 -4.5494631e+03 - -1.6302927e+03 -2.0296923e+03 -4.5491232e+03 - -1.5872283e+03 -2.0658527e+03 -4.5487125e+03 - -1.5437165e+03 -2.1012125e+03 -4.5482337e+03 - -1.4997867e+03 -2.1357458e+03 -4.5476899e+03 - -1.4554680e+03 -2.1694274e+03 -4.5470848e+03 - -1.4107884e+03 -2.2022333e+03 -4.5464223e+03 - -1.3657757e+03 -2.2341408e+03 -4.5457068e+03 - -1.3204563e+03 -2.2651279e+03 -4.5449430e+03 - -1.2748562e+03 -2.2951740e+03 -4.5441358e+03 - -1.2289999e+03 -2.3242596e+03 -4.5432905e+03 - -1.1829112e+03 -2.3523664e+03 -4.5424124e+03 - -1.1366127e+03 -2.3794773e+03 -4.5415072e+03 - -1.0901256e+03 -2.4055764e+03 -4.5405806e+03 - -1.0434700e+03 -2.4306488e+03 -4.5396384e+03 - -9.9666492e+02 -2.4546810e+03 -4.5386867e+03 - -9.4972790e+02 -2.4776604e+03 -4.5377312e+03 - -9.0267529e+02 -2.4995755e+03 -4.5367778e+03 - -8.5552217e+02 -2.5204159e+03 -4.5358326e+03 - -8.0828236e+02 -2.5401721e+03 -4.5349011e+03 - -7.6096841e+02 -2.5588356e+03 -4.5339890e+03 - -7.1359171e+02 -2.5763987e+03 -4.5331018e+03 - -6.6616243e+02 -2.5928546e+03 -4.5322449e+03 - -6.1868961e+02 -2.6081973e+03 -4.5314232e+03 - -5.7118123e+02 -2.6224213e+03 -4.5306417e+03 - -5.2364421e+02 -2.6355219e+03 -4.5299049e+03 - -4.7608452e+02 -2.6474952e+03 -4.5292172e+03 - -4.2850721e+02 -2.6583374e+03 -4.5285824e+03 - -3.8091650e+02 -2.6680456e+03 -4.5280043e+03 - -3.3331585e+02 -2.6766171e+03 -4.5274862e+03 - -2.8570804e+02 -2.6840499e+03 -4.5270311e+03 - -2.3809521e+02 -2.6903420e+03 -4.5266416e+03 - -1.9047903e+02 -2.6954919e+03 -4.5263198e+03 - -1.4286070e+02 -2.6994986e+03 -4.5260676e+03 - -9.5241051e+01 -2.7023612e+03 -4.5258864e+03 - -4.7620684e+01 -2.7040789e+03 -4.5257773e+03 - 0.0000000e+00 -2.7046516e+03 -4.5257409e+03 - 4.7620684e+01 -2.7040789e+03 -4.5257773e+03 - 9.5241051e+01 -2.7023612e+03 -4.5258864e+03 - 1.4286070e+02 -2.6994986e+03 -4.5260676e+03 - 1.9047903e+02 -2.6954919e+03 -4.5263198e+03 - 2.3809521e+02 -2.6903420e+03 -4.5266416e+03 - 2.8570804e+02 -2.6840499e+03 -4.5270311e+03 - 3.3331585e+02 -2.6766171e+03 -4.5274862e+03 - 3.8091650e+02 -2.6680456e+03 -4.5280043e+03 - 4.2850721e+02 -2.6583374e+03 -4.5285824e+03 - 4.7608452e+02 -2.6474952e+03 -4.5292172e+03 - 5.2364421e+02 -2.6355219e+03 -4.5299049e+03 - 5.7118123e+02 -2.6224213e+03 -4.5306417e+03 - 6.1868961e+02 -2.6081973e+03 -4.5314232e+03 - 6.6616243e+02 -2.5928546e+03 -4.5322449e+03 - 7.1359171e+02 -2.5763987e+03 -4.5331018e+03 - 7.6096841e+02 -2.5588356e+03 -4.5339890e+03 - 8.0828236e+02 -2.5401721e+03 -4.5349011e+03 - 8.5552217e+02 -2.5204159e+03 -4.5358326e+03 - 9.0267529e+02 -2.4995755e+03 -4.5367778e+03 - 9.4972790e+02 -2.4776604e+03 -4.5377312e+03 - 9.9666492e+02 -2.4546810e+03 -4.5386867e+03 - 1.0434700e+03 -2.4306488e+03 -4.5396384e+03 - 1.0901256e+03 -2.4055764e+03 -4.5405806e+03 - 1.1366127e+03 -2.3794773e+03 -4.5415072e+03 - 1.1829112e+03 -2.3523664e+03 -4.5424124e+03 - 1.2289999e+03 -2.3242596e+03 -4.5432905e+03 - 1.2748562e+03 -2.2951740e+03 -4.5441358e+03 - 1.3204563e+03 -2.2651279e+03 -4.5449430e+03 - 1.3657757e+03 -2.2341408e+03 -4.5457068e+03 - 1.4107884e+03 -2.2022333e+03 -4.5464223e+03 - 1.4554680e+03 -2.1694274e+03 -4.5470848e+03 - 1.4997867e+03 -2.1357458e+03 -4.5476899e+03 - 1.5437165e+03 -2.1012125e+03 -4.5482337e+03 - 1.5872283e+03 -2.0658527e+03 -4.5487125e+03 - 1.6302927e+03 -2.0296923e+03 -4.5491232e+03 - 1.6728797e+03 -1.9927582e+03 -4.5494631e+03 - 1.7149593e+03 -1.9550781e+03 -4.5497298e+03 - 1.7565009e+03 -1.9166803e+03 -4.5499216e+03 - 1.7974742e+03 -1.8775940e+03 -4.5500372e+03 - 1.8378486e+03 -1.8378486e+03 -4.5500758e+03 - 1.8775940e+03 -1.7974742e+03 -4.5500372e+03 - 1.9166803e+03 -1.7565009e+03 -4.5499216e+03 - 1.9550781e+03 -1.7149593e+03 -4.5497298e+03 - 1.9927582e+03 -1.6728797e+03 -4.5494631e+03 - 2.0296923e+03 -1.6302927e+03 -4.5491232e+03 - 2.0658527e+03 -1.5872283e+03 -4.5487125e+03 - 2.1012125e+03 -1.5437165e+03 -4.5482337e+03 - 2.1357458e+03 -1.4997867e+03 -4.5476899e+03 - 2.1694274e+03 -1.4554680e+03 -4.5470848e+03 - 2.2022333e+03 -1.4107884e+03 -4.5464223e+03 - 2.2341408e+03 -1.3657757e+03 -4.5457068e+03 - 2.2651279e+03 -1.3204563e+03 -4.5449430e+03 - 2.2951740e+03 -1.2748562e+03 -4.5441358e+03 - 2.3242596e+03 -1.2289999e+03 -4.5432905e+03 - 2.3523664e+03 -1.1829112e+03 -4.5424124e+03 - 2.3794773e+03 -1.1366127e+03 -4.5415072e+03 - 2.4055764e+03 -1.0901256e+03 -4.5405806e+03 - 2.4306488e+03 -1.0434700e+03 -4.5396384e+03 - 2.4546810e+03 -9.9666492e+02 -4.5386867e+03 - 2.4776604e+03 -9.4972790e+02 -4.5377312e+03 - 2.4995755e+03 -9.0267529e+02 -4.5367778e+03 - 2.5204159e+03 -8.5552217e+02 -4.5358326e+03 - 2.5401721e+03 -8.0828236e+02 -4.5349011e+03 - 2.5588356e+03 -7.6096841e+02 -4.5339890e+03 - 2.5763987e+03 -7.1359171e+02 -4.5331018e+03 - 2.5928546e+03 -6.6616243e+02 -4.5322449e+03 - 2.6081973e+03 -6.1868961e+02 -4.5314232e+03 - 2.6224213e+03 -5.7118123e+02 -4.5306417e+03 - 2.6355219e+03 -5.2364421e+02 -4.5299049e+03 - 2.6474952e+03 -4.7608452e+02 -4.5292172e+03 - 2.6583374e+03 -4.2850721e+02 -4.5285824e+03 - 2.6680456e+03 -3.8091650e+02 -4.5280043e+03 - 2.6766171e+03 -3.3331585e+02 -4.5274862e+03 - 2.6840499e+03 -2.8570804e+02 -4.5270311e+03 - 2.6903420e+03 -2.3809521e+02 -4.5266416e+03 - 2.6954919e+03 -1.9047903e+02 -4.5263198e+03 - 2.6994986e+03 -1.4286070e+02 -4.5260676e+03 - 2.7023612e+03 -9.5241051e+01 -4.5258864e+03 - 2.7040789e+03 -4.7620684e+01 -4.5257773e+03 - 2.7046516e+03 0.0000000e+00 -4.5257409e+03 - 2.6034422e+03 0.0000000e+00 -4.5597190e+03 - 2.6028920e+03 4.6298395e+01 -4.5597501e+03 - 2.6012417e+03 9.2594581e+01 -4.5598431e+03 - 2.5984917e+03 1.3888627e+02 -4.5599975e+03 - 2.5946427e+03 1.8517103e+02 -4.5602124e+03 - 2.5896959e+03 2.3144617e+02 -4.5604866e+03 - 2.5836527e+03 2.7770873e+02 -4.5608185e+03 - 2.5765149e+03 3.2395535e+02 -4.5612062e+03 - 2.5682845e+03 3.7018222e+02 -4.5616475e+03 - 2.5589643e+03 4.1638499e+02 -4.5621398e+03 - 2.5485571e+03 4.6255876e+02 -4.5626802e+03 - 2.5370666e+03 5.0869794e+02 -4.5632656e+03 - 2.5244966e+03 5.5479623e+02 -4.5638926e+03 - 2.5108517e+03 6.0084656e+02 -4.5645575e+03 - 2.4961371e+03 6.4684101e+02 -4.5652563e+03 - 2.4803585e+03 6.9277082e+02 -4.5659849e+03 - 2.4635223e+03 7.3862625e+02 -4.5667390e+03 - 2.4456358e+03 7.8439664e+02 -4.5675139e+03 - 2.4267067e+03 8.3007030e+02 -4.5683052e+03 - 2.4067439e+03 8.7563454e+02 -4.5691078e+03 - 2.3857568e+03 9.2107561e+02 -4.5699170e+03 - 2.3637560e+03 9.6637868e+02 -4.5707277e+03 - 2.3407527e+03 1.0115279e+03 -4.5715350e+03 - 2.3167593e+03 1.0565063e+03 -4.5723339e+03 - 2.2917889e+03 1.1012959e+03 -4.5731193e+03 - 2.2658559e+03 1.1458776e+03 -4.5738863e+03 - 2.2389755e+03 1.1902314e+03 -4.5746301e+03 - 2.2111640e+03 1.2343363e+03 -4.5753459e+03 - 2.1824386e+03 1.2781702e+03 -4.5760293e+03 - 2.1528177e+03 1.3217103e+03 -4.5766757e+03 - 2.1223204e+03 1.3649330e+03 -4.5772810e+03 - 2.0909672e+03 1.4078137e+03 -4.5778414e+03 - 2.0587791e+03 1.4503273e+03 -4.5783531e+03 - 2.0257783e+03 1.4924480e+03 -4.5788128e+03 - 1.9919877e+03 1.5341496e+03 -4.5792176e+03 - 1.9574313e+03 1.5754053e+03 -4.5795647e+03 - 1.9221333e+03 1.6161879e+03 -4.5798519e+03 - 1.8861192e+03 1.6564702e+03 -4.5800772e+03 - 1.8494146e+03 1.6962247e+03 -4.5802393e+03 - 1.8120460e+03 1.7354238e+03 -4.5803369e+03 - 1.7740400e+03 1.7740400e+03 -4.5803695e+03 - 1.7354238e+03 1.8120460e+03 -4.5803369e+03 - 1.6962247e+03 1.8494146e+03 -4.5802393e+03 - 1.6564702e+03 1.8861192e+03 -4.5800772e+03 - 1.6161879e+03 1.9221333e+03 -4.5798519e+03 - 1.5754053e+03 1.9574313e+03 -4.5795647e+03 - 1.5341496e+03 1.9919877e+03 -4.5792176e+03 - 1.4924480e+03 2.0257783e+03 -4.5788128e+03 - 1.4503273e+03 2.0587791e+03 -4.5783531e+03 - 1.4078137e+03 2.0909672e+03 -4.5778414e+03 - 1.3649330e+03 2.1223204e+03 -4.5772810e+03 - 1.3217103e+03 2.1528177e+03 -4.5766757e+03 - 1.2781702e+03 2.1824386e+03 -4.5760293e+03 - 1.2343363e+03 2.2111640e+03 -4.5753459e+03 - 1.1902314e+03 2.2389755e+03 -4.5746301e+03 - 1.1458776e+03 2.2658559e+03 -4.5738863e+03 - 1.1012959e+03 2.2917889e+03 -4.5731193e+03 - 1.0565063e+03 2.3167593e+03 -4.5723339e+03 - 1.0115279e+03 2.3407527e+03 -4.5715350e+03 - 9.6637868e+02 2.3637560e+03 -4.5707277e+03 - 9.2107561e+02 2.3857568e+03 -4.5699170e+03 - 8.7563454e+02 2.4067439e+03 -4.5691078e+03 - 8.3007030e+02 2.4267067e+03 -4.5683052e+03 - 7.8439664e+02 2.4456358e+03 -4.5675139e+03 - 7.3862625e+02 2.4635223e+03 -4.5667390e+03 - 6.9277082e+02 2.4803585e+03 -4.5659849e+03 - 6.4684101e+02 2.4961371e+03 -4.5652563e+03 - 6.0084656e+02 2.5108517e+03 -4.5645575e+03 - 5.5479623e+02 2.5244966e+03 -4.5638926e+03 - 5.0869794e+02 2.5370666e+03 -4.5632656e+03 - 4.6255876e+02 2.5485571e+03 -4.5626802e+03 - 4.1638499e+02 2.5589643e+03 -4.5621398e+03 - 3.7018222e+02 2.5682845e+03 -4.5616475e+03 - 3.2395535e+02 2.5765149e+03 -4.5612062e+03 - 2.7770873e+02 2.5836527e+03 -4.5608185e+03 - 2.3144617e+02 2.5896959e+03 -4.5604866e+03 - 1.8517103e+02 2.5946427e+03 -4.5602124e+03 - 1.3888627e+02 2.5984917e+03 -4.5599975e+03 - 9.2594581e+01 2.6012417e+03 -4.5598431e+03 - 4.6298395e+01 2.6028920e+03 -4.5597501e+03 - 4.8134273e-09 2.6034422e+03 -4.5597190e+03 - -4.6298395e+01 2.6028920e+03 -4.5597501e+03 - -9.2594581e+01 2.6012417e+03 -4.5598431e+03 - -1.3888627e+02 2.5984917e+03 -4.5599975e+03 - -1.8517103e+02 2.5946427e+03 -4.5602124e+03 - -2.3144617e+02 2.5896959e+03 -4.5604866e+03 - -2.7770873e+02 2.5836527e+03 -4.5608185e+03 - -3.2395535e+02 2.5765149e+03 -4.5612062e+03 - -3.7018222e+02 2.5682845e+03 -4.5616475e+03 - -4.1638499e+02 2.5589643e+03 -4.5621398e+03 - -4.6255876e+02 2.5485571e+03 -4.5626802e+03 - -5.0869794e+02 2.5370666e+03 -4.5632656e+03 - -5.5479623e+02 2.5244966e+03 -4.5638926e+03 - -6.0084656e+02 2.5108517e+03 -4.5645575e+03 - -6.4684101e+02 2.4961371e+03 -4.5652563e+03 - -6.9277082e+02 2.4803585e+03 -4.5659849e+03 - -7.3862625e+02 2.4635223e+03 -4.5667390e+03 - -7.8439664e+02 2.4456358e+03 -4.5675139e+03 - -8.3007030e+02 2.4267067e+03 -4.5683052e+03 - -8.7563454e+02 2.4067439e+03 -4.5691078e+03 - -9.2107561e+02 2.3857568e+03 -4.5699170e+03 - -9.6637868e+02 2.3637560e+03 -4.5707277e+03 - -1.0115279e+03 2.3407527e+03 -4.5715350e+03 - -1.0565063e+03 2.3167593e+03 -4.5723339e+03 - -1.1012959e+03 2.2917889e+03 -4.5731193e+03 - -1.1458776e+03 2.2658559e+03 -4.5738863e+03 - -1.1902314e+03 2.2389755e+03 -4.5746301e+03 - -1.2343363e+03 2.2111640e+03 -4.5753459e+03 - -1.2781702e+03 2.1824386e+03 -4.5760293e+03 - -1.3217103e+03 2.1528177e+03 -4.5766757e+03 - -1.3649330e+03 2.1223204e+03 -4.5772810e+03 - -1.4078137e+03 2.0909672e+03 -4.5778414e+03 - -1.4503273e+03 2.0587791e+03 -4.5783531e+03 - -1.4924480e+03 2.0257783e+03 -4.5788128e+03 - -1.5341496e+03 1.9919877e+03 -4.5792176e+03 - -1.5754053e+03 1.9574313e+03 -4.5795647e+03 - -1.6161879e+03 1.9221333e+03 -4.5798519e+03 - -1.6564702e+03 1.8861192e+03 -4.5800772e+03 - -1.6962247e+03 1.8494146e+03 -4.5802393e+03 - -1.7354238e+03 1.8120460e+03 -4.5803369e+03 - -1.7740400e+03 1.7740400e+03 -4.5803695e+03 - -1.8120460e+03 1.7354238e+03 -4.5803369e+03 - -1.8494146e+03 1.6962247e+03 -4.5802393e+03 - -1.8861192e+03 1.6564702e+03 -4.5800772e+03 - -1.9221333e+03 1.6161879e+03 -4.5798519e+03 - -1.9574313e+03 1.5754053e+03 -4.5795647e+03 - -1.9919877e+03 1.5341496e+03 -4.5792176e+03 - -2.0257783e+03 1.4924480e+03 -4.5788128e+03 - -2.0587791e+03 1.4503273e+03 -4.5783531e+03 - -2.0909672e+03 1.4078137e+03 -4.5778414e+03 - -2.1223204e+03 1.3649330e+03 -4.5772810e+03 - -2.1528177e+03 1.3217103e+03 -4.5766757e+03 - -2.1824386e+03 1.2781702e+03 -4.5760293e+03 - -2.2111640e+03 1.2343363e+03 -4.5753459e+03 - -2.2389755e+03 1.1902314e+03 -4.5746301e+03 - -2.2658559e+03 1.1458776e+03 -4.5738863e+03 - -2.2917889e+03 1.1012959e+03 -4.5731193e+03 - -2.3167593e+03 1.0565063e+03 -4.5723339e+03 - -2.3407527e+03 1.0115279e+03 -4.5715350e+03 - -2.3637560e+03 9.6637868e+02 -4.5707277e+03 - -2.3857568e+03 9.2107561e+02 -4.5699170e+03 - -2.4067439e+03 8.7563454e+02 -4.5691078e+03 - -2.4267067e+03 8.3007030e+02 -4.5683052e+03 - -2.4456358e+03 7.8439664e+02 -4.5675139e+03 - -2.4635223e+03 7.3862625e+02 -4.5667390e+03 - -2.4803585e+03 6.9277082e+02 -4.5659849e+03 - -2.4961371e+03 6.4684101e+02 -4.5652563e+03 - -2.5108517e+03 6.0084656e+02 -4.5645575e+03 - -2.5244966e+03 5.5479623e+02 -4.5638926e+03 - -2.5370666e+03 5.0869794e+02 -4.5632656e+03 - -2.5485571e+03 4.6255876e+02 -4.5626802e+03 - -2.5589643e+03 4.1638499e+02 -4.5621398e+03 - -2.5682845e+03 3.7018222e+02 -4.5616475e+03 - -2.5765149e+03 3.2395535e+02 -4.5612062e+03 - -2.5836527e+03 2.7770873e+02 -4.5608185e+03 - -2.5896959e+03 2.3144617e+02 -4.5604866e+03 - -2.5946427e+03 1.8517103e+02 -4.5602124e+03 - -2.5984917e+03 1.3888627e+02 -4.5599975e+03 - -2.6012417e+03 9.2594581e+01 -4.5598431e+03 - -2.6028920e+03 4.6298395e+01 -4.5597501e+03 - -2.6034422e+03 4.8134273e-09 -4.5597190e+03 - -2.6028920e+03 -4.6298395e+01 -4.5597501e+03 - -2.6012417e+03 -9.2594581e+01 -4.5598431e+03 - -2.5984917e+03 -1.3888627e+02 -4.5599975e+03 - -2.5946427e+03 -1.8517103e+02 -4.5602124e+03 - -2.5896959e+03 -2.3144617e+02 -4.5604866e+03 - -2.5836527e+03 -2.7770873e+02 -4.5608185e+03 - -2.5765149e+03 -3.2395535e+02 -4.5612062e+03 - -2.5682845e+03 -3.7018222e+02 -4.5616475e+03 - -2.5589643e+03 -4.1638499e+02 -4.5621398e+03 - -2.5485571e+03 -4.6255876e+02 -4.5626802e+03 - -2.5370666e+03 -5.0869794e+02 -4.5632656e+03 - -2.5244966e+03 -5.5479623e+02 -4.5638926e+03 - -2.5108517e+03 -6.0084656e+02 -4.5645575e+03 - -2.4961371e+03 -6.4684101e+02 -4.5652563e+03 - -2.4803585e+03 -6.9277082e+02 -4.5659849e+03 - -2.4635223e+03 -7.3862625e+02 -4.5667390e+03 - -2.4456358e+03 -7.8439664e+02 -4.5675139e+03 - -2.4267067e+03 -8.3007030e+02 -4.5683052e+03 - -2.4067439e+03 -8.7563454e+02 -4.5691078e+03 - -2.3857568e+03 -9.2107561e+02 -4.5699170e+03 - -2.3637560e+03 -9.6637868e+02 -4.5707277e+03 - -2.3407527e+03 -1.0115279e+03 -4.5715350e+03 - -2.3167593e+03 -1.0565063e+03 -4.5723339e+03 - -2.2917889e+03 -1.1012959e+03 -4.5731193e+03 - -2.2658559e+03 -1.1458776e+03 -4.5738863e+03 - -2.2389755e+03 -1.1902314e+03 -4.5746301e+03 - -2.2111640e+03 -1.2343363e+03 -4.5753459e+03 - -2.1824386e+03 -1.2781702e+03 -4.5760293e+03 - -2.1528177e+03 -1.3217103e+03 -4.5766757e+03 - -2.1223204e+03 -1.3649330e+03 -4.5772810e+03 - -2.0909672e+03 -1.4078137e+03 -4.5778414e+03 - -2.0587791e+03 -1.4503273e+03 -4.5783531e+03 - -2.0257783e+03 -1.4924480e+03 -4.5788128e+03 - -1.9919877e+03 -1.5341496e+03 -4.5792176e+03 - -1.9574313e+03 -1.5754053e+03 -4.5795647e+03 - -1.9221333e+03 -1.6161879e+03 -4.5798519e+03 - -1.8861192e+03 -1.6564702e+03 -4.5800772e+03 - -1.8494146e+03 -1.6962247e+03 -4.5802393e+03 - -1.8120460e+03 -1.7354238e+03 -4.5803369e+03 - -1.7740400e+03 -1.7740400e+03 -4.5803695e+03 - -1.7354238e+03 -1.8120460e+03 -4.5803369e+03 - -1.6962247e+03 -1.8494146e+03 -4.5802393e+03 - -1.6564702e+03 -1.8861192e+03 -4.5800772e+03 - -1.6161879e+03 -1.9221333e+03 -4.5798519e+03 - -1.5754053e+03 -1.9574313e+03 -4.5795647e+03 - -1.5341496e+03 -1.9919877e+03 -4.5792176e+03 - -1.4924480e+03 -2.0257783e+03 -4.5788128e+03 - -1.4503273e+03 -2.0587791e+03 -4.5783531e+03 - -1.4078137e+03 -2.0909672e+03 -4.5778414e+03 - -1.3649330e+03 -2.1223204e+03 -4.5772810e+03 - -1.3217103e+03 -2.1528177e+03 -4.5766757e+03 - -1.2781702e+03 -2.1824386e+03 -4.5760293e+03 - -1.2343363e+03 -2.2111640e+03 -4.5753459e+03 - -1.1902314e+03 -2.2389755e+03 -4.5746301e+03 - -1.1458776e+03 -2.2658559e+03 -4.5738863e+03 - -1.1012959e+03 -2.2917889e+03 -4.5731193e+03 - -1.0565063e+03 -2.3167593e+03 -4.5723339e+03 - -1.0115279e+03 -2.3407527e+03 -4.5715350e+03 - -9.6637868e+02 -2.3637560e+03 -4.5707277e+03 - -9.2107561e+02 -2.3857568e+03 -4.5699170e+03 - -8.7563454e+02 -2.4067439e+03 -4.5691078e+03 - -8.3007030e+02 -2.4267067e+03 -4.5683052e+03 - -7.8439664e+02 -2.4456358e+03 -4.5675139e+03 - -7.3862625e+02 -2.4635223e+03 -4.5667390e+03 - -6.9277082e+02 -2.4803585e+03 -4.5659849e+03 - -6.4684101e+02 -2.4961371e+03 -4.5652563e+03 - -6.0084656e+02 -2.5108517e+03 -4.5645575e+03 - -5.5479623e+02 -2.5244966e+03 -4.5638926e+03 - -5.0869794e+02 -2.5370666e+03 -4.5632656e+03 - -4.6255876e+02 -2.5485571e+03 -4.5626802e+03 - -4.1638499e+02 -2.5589643e+03 -4.5621398e+03 - -3.7018222e+02 -2.5682845e+03 -4.5616475e+03 - -3.2395535e+02 -2.5765149e+03 -4.5612062e+03 - -2.7770873e+02 -2.5836527e+03 -4.5608185e+03 - -2.3144617e+02 -2.5896959e+03 -4.5604866e+03 - -1.8517103e+02 -2.5946427e+03 -4.5602124e+03 - -1.3888627e+02 -2.5984917e+03 -4.5599975e+03 - -9.2594581e+01 -2.6012417e+03 -4.5598431e+03 - -4.6298395e+01 -2.6028920e+03 -4.5597501e+03 - -9.6268545e-09 -2.6034422e+03 -4.5597190e+03 - 4.6298395e+01 -2.6028920e+03 -4.5597501e+03 - 9.2594581e+01 -2.6012417e+03 -4.5598431e+03 - 1.3888627e+02 -2.5984917e+03 -4.5599975e+03 - 1.8517103e+02 -2.5946427e+03 -4.5602124e+03 - 2.3144617e+02 -2.5896959e+03 -4.5604866e+03 - 2.7770873e+02 -2.5836527e+03 -4.5608185e+03 - 3.2395535e+02 -2.5765149e+03 -4.5612062e+03 - 3.7018222e+02 -2.5682845e+03 -4.5616475e+03 - 4.1638499e+02 -2.5589643e+03 -4.5621398e+03 - 4.6255876e+02 -2.5485571e+03 -4.5626802e+03 - 5.0869794e+02 -2.5370666e+03 -4.5632656e+03 - 5.5479623e+02 -2.5244966e+03 -4.5638926e+03 - 6.0084656e+02 -2.5108517e+03 -4.5645575e+03 - 6.4684101e+02 -2.4961371e+03 -4.5652563e+03 - 6.9277082e+02 -2.4803585e+03 -4.5659849e+03 - 7.3862625e+02 -2.4635223e+03 -4.5667390e+03 - 7.8439664e+02 -2.4456358e+03 -4.5675139e+03 - 8.3007030e+02 -2.4267067e+03 -4.5683052e+03 - 8.7563454e+02 -2.4067439e+03 -4.5691078e+03 - 9.2107561e+02 -2.3857568e+03 -4.5699170e+03 - 9.6637868e+02 -2.3637560e+03 -4.5707277e+03 - 1.0115279e+03 -2.3407527e+03 -4.5715350e+03 - 1.0565063e+03 -2.3167593e+03 -4.5723339e+03 - 1.1012959e+03 -2.2917889e+03 -4.5731193e+03 - 1.1458776e+03 -2.2658559e+03 -4.5738863e+03 - 1.1902314e+03 -2.2389755e+03 -4.5746301e+03 - 1.2343363e+03 -2.2111640e+03 -4.5753459e+03 - 1.2781702e+03 -2.1824386e+03 -4.5760293e+03 - 1.3217103e+03 -2.1528177e+03 -4.5766757e+03 - 1.3649330e+03 -2.1223204e+03 -4.5772810e+03 - 1.4078137e+03 -2.0909672e+03 -4.5778414e+03 - 1.4503273e+03 -2.0587791e+03 -4.5783531e+03 - 1.4924480e+03 -2.0257783e+03 -4.5788128e+03 - 1.5341496e+03 -1.9919877e+03 -4.5792176e+03 - 1.5754053e+03 -1.9574313e+03 -4.5795647e+03 - 1.6161879e+03 -1.9221333e+03 -4.5798519e+03 - 1.6564702e+03 -1.8861192e+03 -4.5800772e+03 - 1.6962247e+03 -1.8494146e+03 -4.5802393e+03 - 1.7354238e+03 -1.8120460e+03 -4.5803369e+03 - 1.7740400e+03 -1.7740400e+03 -4.5803695e+03 - 1.8120460e+03 -1.7354238e+03 -4.5803369e+03 - 1.8494146e+03 -1.6962247e+03 -4.5802393e+03 - 1.8861192e+03 -1.6564702e+03 -4.5800772e+03 - 1.9221333e+03 -1.6161879e+03 -4.5798519e+03 - 1.9574313e+03 -1.5754053e+03 -4.5795647e+03 - 1.9919877e+03 -1.5341496e+03 -4.5792176e+03 - 2.0257783e+03 -1.4924480e+03 -4.5788128e+03 - 2.0587791e+03 -1.4503273e+03 -4.5783531e+03 - 2.0909672e+03 -1.4078137e+03 -4.5778414e+03 - 2.1223204e+03 -1.3649330e+03 -4.5772810e+03 - 2.1528177e+03 -1.3217103e+03 -4.5766757e+03 - 2.1824386e+03 -1.2781702e+03 -4.5760293e+03 - 2.2111640e+03 -1.2343363e+03 -4.5753459e+03 - 2.2389755e+03 -1.1902314e+03 -4.5746301e+03 - 2.2658559e+03 -1.1458776e+03 -4.5738863e+03 - 2.2917889e+03 -1.1012959e+03 -4.5731193e+03 - 2.3167593e+03 -1.0565063e+03 -4.5723339e+03 - 2.3407527e+03 -1.0115279e+03 -4.5715350e+03 - 2.3637560e+03 -9.6637868e+02 -4.5707277e+03 - 2.3857568e+03 -9.2107561e+02 -4.5699170e+03 - 2.4067439e+03 -8.7563454e+02 -4.5691078e+03 - 2.4267067e+03 -8.3007030e+02 -4.5683052e+03 - 2.4456358e+03 -7.8439664e+02 -4.5675139e+03 - 2.4635223e+03 -7.3862625e+02 -4.5667390e+03 - 2.4803585e+03 -6.9277082e+02 -4.5659849e+03 - 2.4961371e+03 -6.4684101e+02 -4.5652563e+03 - 2.5108517e+03 -6.0084656e+02 -4.5645575e+03 - 2.5244966e+03 -5.5479623e+02 -4.5638926e+03 - 2.5370666e+03 -5.0869794e+02 -4.5632656e+03 - 2.5485571e+03 -4.6255876e+02 -4.5626802e+03 - 2.5589643e+03 -4.1638499e+02 -4.5621398e+03 - 2.5682845e+03 -3.7018222e+02 -4.5616475e+03 - 2.5765149e+03 -3.2395535e+02 -4.5612062e+03 - 2.5836527e+03 -2.7770873e+02 -4.5608185e+03 - 2.5896959e+03 -2.3144617e+02 -4.5604866e+03 - 2.5946427e+03 -1.8517103e+02 -4.5602124e+03 - 2.5984917e+03 -1.3888627e+02 -4.5599975e+03 - 2.6012417e+03 -9.2594581e+01 -4.5598431e+03 - 2.6028920e+03 -4.6298395e+01 -4.5597501e+03 - 2.6034422e+03 -4.8134273e-09 -4.5597190e+03 - 2.4964493e+03 0.0000000e+00 -4.5933158e+03 - 2.4959232e+03 4.4832450e+01 -4.5933419e+03 - 2.4943451e+03 8.9660986e+01 -4.5934199e+03 - 2.4917155e+03 1.3448163e+02 -4.5935495e+03 - 2.4880353e+03 1.7929026e+02 -4.5937298e+03 - 2.4833057e+03 2.2408258e+02 -4.5939599e+03 - 2.4775284e+03 2.6885403e+02 -4.5942383e+03 - 2.4707053e+03 3.1359970e+02 -4.5945636e+03 - 2.4628390e+03 3.5831434e+02 -4.5949336e+03 - 2.4539322e+03 4.0299221e+02 -4.5953464e+03 - 2.4439882e+03 4.4762712e+02 -4.5957995e+03 - 2.4330109e+03 4.9221229e+02 -4.5962901e+03 - 2.4210046e+03 5.3674035e+02 -4.5968155e+03 - 2.4079740e+03 5.8120328e+02 -4.5973725e+03 - 2.3939247e+03 6.2559234e+02 -4.5979578e+03 - 2.3788625e+03 6.6989808e+02 -4.5985678e+03 - 2.3627942e+03 7.1411027e+02 -4.5991990e+03 - 2.3457271e+03 7.5821785e+02 -4.5998474e+03 - 2.3276691e+03 8.0220897e+02 -4.6005093e+03 - 2.3086290e+03 8.4607088e+02 -4.6011805e+03 - 2.2886163e+03 8.8979000e+02 -4.6018569e+03 - 2.2676413e+03 9.3335186e+02 -4.6025345e+03 - 2.2457150e+03 9.7674109e+02 -4.6032089e+03 - 2.2228493e+03 1.0199415e+03 -4.6038761e+03 - 2.1990570e+03 1.0629359e+03 -4.6045319e+03 - 2.1743517e+03 1.1057064e+03 -4.6051720e+03 - 2.1487478e+03 1.1482343e+03 -4.6057927e+03 - 2.1222608e+03 1.1904999e+03 -4.6063898e+03 - 2.0949067e+03 1.2324828e+03 -4.6069596e+03 - 2.0667026e+03 1.2741621e+03 -4.6074985e+03 - 2.0376665e+03 1.3155160e+03 -4.6080031e+03 - 2.0078170e+03 1.3565221e+03 -4.6084700e+03 - 1.9771736e+03 1.3971576e+03 -4.6088963e+03 - 1.9457566e+03 1.4373989e+03 -4.6092793e+03 - 1.9135871e+03 1.4772223e+03 -4.6096163e+03 - 1.8806865e+03 1.5166036e+03 -4.6099054e+03 - 1.8470773e+03 1.5555184e+03 -4.6101445e+03 - 1.8127822e+03 1.5939419e+03 -4.6103321e+03 - 1.7778246e+03 1.6318494e+03 -4.6104670e+03 - 1.7422282e+03 1.6692161e+03 -4.6105482e+03 - 1.7060173e+03 1.7060173e+03 -4.6105754e+03 - 1.6692161e+03 1.7422282e+03 -4.6105482e+03 - 1.6318494e+03 1.7778246e+03 -4.6104670e+03 - 1.5939419e+03 1.8127822e+03 -4.6103321e+03 - 1.5555184e+03 1.8470773e+03 -4.6101445e+03 - 1.5166036e+03 1.8806865e+03 -4.6099054e+03 - 1.4772223e+03 1.9135871e+03 -4.6096163e+03 - 1.4373989e+03 1.9457566e+03 -4.6092793e+03 - 1.3971576e+03 1.9771736e+03 -4.6088963e+03 - 1.3565221e+03 2.0078170e+03 -4.6084700e+03 - 1.3155160e+03 2.0376665e+03 -4.6080031e+03 - 1.2741621e+03 2.0667026e+03 -4.6074985e+03 - 1.2324828e+03 2.0949067e+03 -4.6069596e+03 - 1.1904999e+03 2.1222608e+03 -4.6063898e+03 - 1.1482343e+03 2.1487478e+03 -4.6057927e+03 - 1.1057064e+03 2.1743517e+03 -4.6051720e+03 - 1.0629359e+03 2.1990570e+03 -4.6045319e+03 - 1.0199415e+03 2.2228493e+03 -4.6038761e+03 - 9.7674109e+02 2.2457150e+03 -4.6032089e+03 - 9.3335186e+02 2.2676413e+03 -4.6025345e+03 - 8.8979000e+02 2.2886163e+03 -4.6018569e+03 - 8.4607088e+02 2.3086290e+03 -4.6011805e+03 - 8.0220897e+02 2.3276691e+03 -4.6005093e+03 - 7.5821785e+02 2.3457271e+03 -4.5998474e+03 - 7.1411027e+02 2.3627942e+03 -4.5991990e+03 - 6.6989808e+02 2.3788625e+03 -4.5985678e+03 - 6.2559234e+02 2.3939247e+03 -4.5979578e+03 - 5.8120328e+02 2.4079740e+03 -4.5973725e+03 - 5.3674035e+02 2.4210046e+03 -4.5968155e+03 - 4.9221229e+02 2.4330109e+03 -4.5962901e+03 - 4.4762712e+02 2.4439882e+03 -4.5957995e+03 - 4.0299221e+02 2.4539322e+03 -4.5953464e+03 - 3.5831434e+02 2.4628390e+03 -4.5949336e+03 - 3.1359970e+02 2.4707053e+03 -4.5945636e+03 - 2.6885403e+02 2.4775284e+03 -4.5942383e+03 - 2.2408258e+02 2.4833057e+03 -4.5939599e+03 - 1.7929026e+02 2.4880353e+03 -4.5937298e+03 - 1.3448163e+02 2.4917155e+03 -4.5935495e+03 - 8.9660986e+01 2.4943451e+03 -4.5934199e+03 - 4.4832450e+01 2.4959232e+03 -4.5933419e+03 - 0.0000000e+00 2.4964493e+03 -4.5933158e+03 - -4.4832450e+01 2.4959232e+03 -4.5933419e+03 - -8.9660986e+01 2.4943451e+03 -4.5934199e+03 - -1.3448163e+02 2.4917155e+03 -4.5935495e+03 - -1.7929026e+02 2.4880353e+03 -4.5937298e+03 - -2.2408258e+02 2.4833057e+03 -4.5939599e+03 - -2.6885403e+02 2.4775284e+03 -4.5942383e+03 - -3.1359970e+02 2.4707053e+03 -4.5945636e+03 - -3.5831434e+02 2.4628390e+03 -4.5949336e+03 - -4.0299221e+02 2.4539322e+03 -4.5953464e+03 - -4.4762712e+02 2.4439882e+03 -4.5957995e+03 - -4.9221229e+02 2.4330109e+03 -4.5962901e+03 - -5.3674035e+02 2.4210046e+03 -4.5968155e+03 - -5.8120328e+02 2.4079740e+03 -4.5973725e+03 - -6.2559234e+02 2.3939247e+03 -4.5979578e+03 - -6.6989808e+02 2.3788625e+03 -4.5985678e+03 - -7.1411027e+02 2.3627942e+03 -4.5991990e+03 - -7.5821785e+02 2.3457271e+03 -4.5998474e+03 - -8.0220897e+02 2.3276691e+03 -4.6005093e+03 - -8.4607088e+02 2.3086290e+03 -4.6011805e+03 - -8.8979000e+02 2.2886163e+03 -4.6018569e+03 - -9.3335186e+02 2.2676413e+03 -4.6025345e+03 - -9.7674109e+02 2.2457150e+03 -4.6032089e+03 - -1.0199415e+03 2.2228493e+03 -4.6038761e+03 - -1.0629359e+03 2.1990570e+03 -4.6045319e+03 - -1.1057064e+03 2.1743517e+03 -4.6051720e+03 - -1.1482343e+03 2.1487478e+03 -4.6057927e+03 - -1.1904999e+03 2.1222608e+03 -4.6063898e+03 - -1.2324828e+03 2.0949067e+03 -4.6069596e+03 - -1.2741621e+03 2.0667026e+03 -4.6074985e+03 - -1.3155160e+03 2.0376665e+03 -4.6080031e+03 - -1.3565221e+03 2.0078170e+03 -4.6084700e+03 - -1.3971576e+03 1.9771736e+03 -4.6088963e+03 - -1.4373989e+03 1.9457566e+03 -4.6092793e+03 - -1.4772223e+03 1.9135871e+03 -4.6096163e+03 - -1.5166036e+03 1.8806865e+03 -4.6099054e+03 - -1.5555184e+03 1.8470773e+03 -4.6101445e+03 - -1.5939419e+03 1.8127822e+03 -4.6103321e+03 - -1.6318494e+03 1.7778246e+03 -4.6104670e+03 - -1.6692161e+03 1.7422282e+03 -4.6105482e+03 - -1.7060173e+03 1.7060173e+03 -4.6105754e+03 - -1.7422282e+03 1.6692161e+03 -4.6105482e+03 - -1.7778246e+03 1.6318494e+03 -4.6104670e+03 - -1.8127822e+03 1.5939419e+03 -4.6103321e+03 - -1.8470773e+03 1.5555184e+03 -4.6101445e+03 - -1.8806865e+03 1.5166036e+03 -4.6099054e+03 - -1.9135871e+03 1.4772223e+03 -4.6096163e+03 - -1.9457566e+03 1.4373989e+03 -4.6092793e+03 - -1.9771736e+03 1.3971576e+03 -4.6088963e+03 - -2.0078170e+03 1.3565221e+03 -4.6084700e+03 - -2.0376665e+03 1.3155160e+03 -4.6080031e+03 - -2.0667026e+03 1.2741621e+03 -4.6074985e+03 - -2.0949067e+03 1.2324828e+03 -4.6069596e+03 - -2.1222608e+03 1.1904999e+03 -4.6063898e+03 - -2.1487478e+03 1.1482343e+03 -4.6057927e+03 - -2.1743517e+03 1.1057064e+03 -4.6051720e+03 - -2.1990570e+03 1.0629359e+03 -4.6045319e+03 - -2.2228493e+03 1.0199415e+03 -4.6038761e+03 - -2.2457150e+03 9.7674109e+02 -4.6032089e+03 - -2.2676413e+03 9.3335186e+02 -4.6025345e+03 - -2.2886163e+03 8.8979000e+02 -4.6018569e+03 - -2.3086290e+03 8.4607088e+02 -4.6011805e+03 - -2.3276691e+03 8.0220897e+02 -4.6005093e+03 - -2.3457271e+03 7.5821785e+02 -4.5998474e+03 - -2.3627942e+03 7.1411027e+02 -4.5991990e+03 - -2.3788625e+03 6.6989808e+02 -4.5985678e+03 - -2.3939247e+03 6.2559234e+02 -4.5979578e+03 - -2.4079740e+03 5.8120328e+02 -4.5973725e+03 - -2.4210046e+03 5.3674035e+02 -4.5968155e+03 - -2.4330109e+03 4.9221229e+02 -4.5962901e+03 - -2.4439882e+03 4.4762712e+02 -4.5957995e+03 - -2.4539322e+03 4.0299221e+02 -4.5953464e+03 - -2.4628390e+03 3.5831434e+02 -4.5949336e+03 - -2.4707053e+03 3.1359970e+02 -4.5945636e+03 - -2.4775284e+03 2.6885403e+02 -4.5942383e+03 - -2.4833057e+03 2.2408258e+02 -4.5939599e+03 - -2.4880353e+03 1.7929026e+02 -4.5937298e+03 - -2.4917155e+03 1.3448163e+02 -4.5935495e+03 - -2.4943451e+03 8.9660986e+01 -4.5934199e+03 - -2.4959232e+03 4.4832450e+01 -4.5933419e+03 - -2.4964493e+03 0.0000000e+00 -4.5933158e+03 - -2.4959232e+03 -4.4832450e+01 -4.5933419e+03 - -2.4943451e+03 -8.9660986e+01 -4.5934199e+03 - -2.4917155e+03 -1.3448163e+02 -4.5935495e+03 - -2.4880353e+03 -1.7929026e+02 -4.5937298e+03 - -2.4833057e+03 -2.2408258e+02 -4.5939599e+03 - -2.4775284e+03 -2.6885403e+02 -4.5942383e+03 - -2.4707053e+03 -3.1359970e+02 -4.5945636e+03 - -2.4628390e+03 -3.5831434e+02 -4.5949336e+03 - -2.4539322e+03 -4.0299221e+02 -4.5953464e+03 - -2.4439882e+03 -4.4762712e+02 -4.5957995e+03 - -2.4330109e+03 -4.9221229e+02 -4.5962901e+03 - -2.4210046e+03 -5.3674035e+02 -4.5968155e+03 - -2.4079740e+03 -5.8120328e+02 -4.5973725e+03 - -2.3939247e+03 -6.2559234e+02 -4.5979578e+03 - -2.3788625e+03 -6.6989808e+02 -4.5985678e+03 - -2.3627942e+03 -7.1411027e+02 -4.5991990e+03 - -2.3457271e+03 -7.5821785e+02 -4.5998474e+03 - -2.3276691e+03 -8.0220897e+02 -4.6005093e+03 - -2.3086290e+03 -8.4607088e+02 -4.6011805e+03 - -2.2886163e+03 -8.8979000e+02 -4.6018569e+03 - -2.2676413e+03 -9.3335186e+02 -4.6025345e+03 - -2.2457150e+03 -9.7674109e+02 -4.6032089e+03 - -2.2228493e+03 -1.0199415e+03 -4.6038761e+03 - -2.1990570e+03 -1.0629359e+03 -4.6045319e+03 - -2.1743517e+03 -1.1057064e+03 -4.6051720e+03 - -2.1487478e+03 -1.1482343e+03 -4.6057927e+03 - -2.1222608e+03 -1.1904999e+03 -4.6063898e+03 - -2.0949067e+03 -1.2324828e+03 -4.6069596e+03 - -2.0667026e+03 -1.2741621e+03 -4.6074985e+03 - -2.0376665e+03 -1.3155160e+03 -4.6080031e+03 - -2.0078170e+03 -1.3565221e+03 -4.6084700e+03 - -1.9771736e+03 -1.3971576e+03 -4.6088963e+03 - -1.9457566e+03 -1.4373989e+03 -4.6092793e+03 - -1.9135871e+03 -1.4772223e+03 -4.6096163e+03 - -1.8806865e+03 -1.5166036e+03 -4.6099054e+03 - -1.8470773e+03 -1.5555184e+03 -4.6101445e+03 - -1.8127822e+03 -1.5939419e+03 -4.6103321e+03 - -1.7778246e+03 -1.6318494e+03 -4.6104670e+03 - -1.7422282e+03 -1.6692161e+03 -4.6105482e+03 - -1.7060173e+03 -1.7060173e+03 -4.6105754e+03 - -1.6692161e+03 -1.7422282e+03 -4.6105482e+03 - -1.6318494e+03 -1.7778246e+03 -4.6104670e+03 - -1.5939419e+03 -1.8127822e+03 -4.6103321e+03 - -1.5555184e+03 -1.8470773e+03 -4.6101445e+03 - -1.5166036e+03 -1.8806865e+03 -4.6099054e+03 - -1.4772223e+03 -1.9135871e+03 -4.6096163e+03 - -1.4373989e+03 -1.9457566e+03 -4.6092793e+03 - -1.3971576e+03 -1.9771736e+03 -4.6088963e+03 - -1.3565221e+03 -2.0078170e+03 -4.6084700e+03 - -1.3155160e+03 -2.0376665e+03 -4.6080031e+03 - -1.2741621e+03 -2.0667026e+03 -4.6074985e+03 - -1.2324828e+03 -2.0949067e+03 -4.6069596e+03 - -1.1904999e+03 -2.1222608e+03 -4.6063898e+03 - -1.1482343e+03 -2.1487478e+03 -4.6057927e+03 - -1.1057064e+03 -2.1743517e+03 -4.6051720e+03 - -1.0629359e+03 -2.1990570e+03 -4.6045319e+03 - -1.0199415e+03 -2.2228493e+03 -4.6038761e+03 - -9.7674109e+02 -2.2457150e+03 -4.6032089e+03 - -9.3335186e+02 -2.2676413e+03 -4.6025345e+03 - -8.8979000e+02 -2.2886163e+03 -4.6018569e+03 - -8.4607088e+02 -2.3086290e+03 -4.6011805e+03 - -8.0220897e+02 -2.3276691e+03 -4.6005093e+03 - -7.5821785e+02 -2.3457271e+03 -4.5998474e+03 - -7.1411027e+02 -2.3627942e+03 -4.5991990e+03 - -6.6989808e+02 -2.3788625e+03 -4.5985678e+03 - -6.2559234e+02 -2.3939247e+03 -4.5979578e+03 - -5.8120328e+02 -2.4079740e+03 -4.5973725e+03 - -5.3674035e+02 -2.4210046e+03 -4.5968155e+03 - -4.9221229e+02 -2.4330109e+03 -4.5962901e+03 - -4.4762712e+02 -2.4439882e+03 -4.5957995e+03 - -4.0299221e+02 -2.4539322e+03 -4.5953464e+03 - -3.5831434e+02 -2.4628390e+03 -4.5949336e+03 - -3.1359970e+02 -2.4707053e+03 -4.5945636e+03 - -2.6885403e+02 -2.4775284e+03 -4.5942383e+03 - -2.2408258e+02 -2.4833057e+03 -4.5939599e+03 - -1.7929026e+02 -2.4880353e+03 -4.5937298e+03 - -1.3448163e+02 -2.4917155e+03 -4.5935495e+03 - -8.9660986e+01 -2.4943451e+03 -4.5934199e+03 - -4.4832450e+01 -2.4959232e+03 -4.5933419e+03 - 0.0000000e+00 -2.4964493e+03 -4.5933158e+03 - 4.4832450e+01 -2.4959232e+03 -4.5933419e+03 - 8.9660986e+01 -2.4943451e+03 -4.5934199e+03 - 1.3448163e+02 -2.4917155e+03 -4.5935495e+03 - 1.7929026e+02 -2.4880353e+03 -4.5937298e+03 - 2.2408258e+02 -2.4833057e+03 -4.5939599e+03 - 2.6885403e+02 -2.4775284e+03 -4.5942383e+03 - 3.1359970e+02 -2.4707053e+03 -4.5945636e+03 - 3.5831434e+02 -2.4628390e+03 -4.5949336e+03 - 4.0299221e+02 -2.4539322e+03 -4.5953464e+03 - 4.4762712e+02 -2.4439882e+03 -4.5957995e+03 - 4.9221229e+02 -2.4330109e+03 -4.5962901e+03 - 5.3674035e+02 -2.4210046e+03 -4.5968155e+03 - 5.8120328e+02 -2.4079740e+03 -4.5973725e+03 - 6.2559234e+02 -2.3939247e+03 -4.5979578e+03 - 6.6989808e+02 -2.3788625e+03 -4.5985678e+03 - 7.1411027e+02 -2.3627942e+03 -4.5991990e+03 - 7.5821785e+02 -2.3457271e+03 -4.5998474e+03 - 8.0220897e+02 -2.3276691e+03 -4.6005093e+03 - 8.4607088e+02 -2.3086290e+03 -4.6011805e+03 - 8.8979000e+02 -2.2886163e+03 -4.6018569e+03 - 9.3335186e+02 -2.2676413e+03 -4.6025345e+03 - 9.7674109e+02 -2.2457150e+03 -4.6032089e+03 - 1.0199415e+03 -2.2228493e+03 -4.6038761e+03 - 1.0629359e+03 -2.1990570e+03 -4.6045319e+03 - 1.1057064e+03 -2.1743517e+03 -4.6051720e+03 - 1.1482343e+03 -2.1487478e+03 -4.6057927e+03 - 1.1904999e+03 -2.1222608e+03 -4.6063898e+03 - 1.2324828e+03 -2.0949067e+03 -4.6069596e+03 - 1.2741621e+03 -2.0667026e+03 -4.6074985e+03 - 1.3155160e+03 -2.0376665e+03 -4.6080031e+03 - 1.3565221e+03 -2.0078170e+03 -4.6084700e+03 - 1.3971576e+03 -1.9771736e+03 -4.6088963e+03 - 1.4373989e+03 -1.9457566e+03 -4.6092793e+03 - 1.4772223e+03 -1.9135871e+03 -4.6096163e+03 - 1.5166036e+03 -1.8806865e+03 -4.6099054e+03 - 1.5555184e+03 -1.8470773e+03 -4.6101445e+03 - 1.5939419e+03 -1.8127822e+03 -4.6103321e+03 - 1.6318494e+03 -1.7778246e+03 -4.6104670e+03 - 1.6692161e+03 -1.7422282e+03 -4.6105482e+03 - 1.7060173e+03 -1.7060173e+03 -4.6105754e+03 - 1.7422282e+03 -1.6692161e+03 -4.6105482e+03 - 1.7778246e+03 -1.6318494e+03 -4.6104670e+03 - 1.8127822e+03 -1.5939419e+03 -4.6103321e+03 - 1.8470773e+03 -1.5555184e+03 -4.6101445e+03 - 1.8806865e+03 -1.5166036e+03 -4.6099054e+03 - 1.9135871e+03 -1.4772223e+03 -4.6096163e+03 - 1.9457566e+03 -1.4373989e+03 -4.6092793e+03 - 1.9771736e+03 -1.3971576e+03 -4.6088963e+03 - 2.0078170e+03 -1.3565221e+03 -4.6084700e+03 - 2.0376665e+03 -1.3155160e+03 -4.6080031e+03 - 2.0667026e+03 -1.2741621e+03 -4.6074985e+03 - 2.0949067e+03 -1.2324828e+03 -4.6069596e+03 - 2.1222608e+03 -1.1904999e+03 -4.6063898e+03 - 2.1487478e+03 -1.1482343e+03 -4.6057927e+03 - 2.1743517e+03 -1.1057064e+03 -4.6051720e+03 - 2.1990570e+03 -1.0629359e+03 -4.6045319e+03 - 2.2228493e+03 -1.0199415e+03 -4.6038761e+03 - 2.2457150e+03 -9.7674109e+02 -4.6032089e+03 - 2.2676413e+03 -9.3335186e+02 -4.6025345e+03 - 2.2886163e+03 -8.8979000e+02 -4.6018569e+03 - 2.3086290e+03 -8.4607088e+02 -4.6011805e+03 - 2.3276691e+03 -8.0220897e+02 -4.6005093e+03 - 2.3457271e+03 -7.5821785e+02 -4.5998474e+03 - 2.3627942e+03 -7.1411027e+02 -4.5991990e+03 - 2.3788625e+03 -6.6989808e+02 -4.5985678e+03 - 2.3939247e+03 -6.2559234e+02 -4.5979578e+03 - 2.4079740e+03 -5.8120328e+02 -4.5973725e+03 - 2.4210046e+03 -5.3674035e+02 -4.5968155e+03 - 2.4330109e+03 -4.9221229e+02 -4.5962901e+03 - 2.4439882e+03 -4.4762712e+02 -4.5957995e+03 - 2.4539322e+03 -4.0299221e+02 -4.5953464e+03 - 2.4628390e+03 -3.5831434e+02 -4.5949336e+03 - 2.4707053e+03 -3.1359970e+02 -4.5945636e+03 - 2.4775284e+03 -2.6885403e+02 -4.5942383e+03 - 2.4833057e+03 -2.2408258e+02 -4.5939599e+03 - 2.4880353e+03 -1.7929026e+02 -4.5937298e+03 - 2.4917155e+03 -1.3448163e+02 -4.5935495e+03 - 2.4943451e+03 -8.9660986e+01 -4.5934199e+03 - 2.4959232e+03 -4.4832450e+01 -4.5933419e+03 - 2.4964493e+03 0.0000000e+00 -4.5933158e+03 - 2.3831905e+03 0.0000000e+00 -4.6264514e+03 - 2.3826901e+03 4.3209822e+01 -4.6264729e+03 - 2.3811890e+03 8.6414234e+01 -4.6265372e+03 - 2.3786880e+03 1.2960777e+02 -4.6266440e+03 - 2.3751878e+03 1.7278486e+02 -4.6267926e+03 - 2.3706899e+03 2.1593977e+02 -4.6269822e+03 - 2.3651960e+03 2.5906654e+02 -4.6272116e+03 - 2.3587082e+03 3.0215896e+02 -4.6274795e+03 - 2.3512293e+03 3.4521049e+02 -4.6277843e+03 - 2.3427622e+03 3.8821424e+02 -4.6281243e+03 - 2.3333103e+03 4.3116288e+02 -4.6284973e+03 - 2.3228778e+03 4.7404865e+02 -4.6289013e+03 - 2.3114690e+03 5.1686328e+02 -4.6293337e+03 - 2.2990890e+03 5.5959797e+02 -4.6297920e+03 - 2.2857433e+03 6.0224334e+02 -4.6302734e+03 - 2.2714380e+03 6.4478940e+02 -4.6307752e+03 - 2.2561798e+03 6.8722554e+02 -4.6312941e+03 - 2.2399760e+03 7.2954049e+02 -4.6318271e+03 - 2.2228346e+03 7.7172230e+02 -4.6323710e+03 - 2.2047641e+03 8.1375832e+02 -4.6329224e+03 - 2.1857739e+03 8.5563520e+02 -4.6334780e+03 - 2.1658738e+03 8.9733889e+02 -4.6340343e+03 - 2.1450747e+03 9.3885460e+02 -4.6345879e+03 - 2.1233877e+03 9.8016688e+02 -4.6351353e+03 - 2.1008252e+03 1.0212595e+03 -4.6356732e+03 - 2.0773999e+03 1.0621157e+03 -4.6361983e+03 - 2.0531254e+03 1.1027179e+03 -4.6367071e+03 - 2.0280161e+03 1.1430479e+03 -4.6371965e+03 - 2.0020869e+03 1.1830869e+03 -4.6376635e+03 - 1.9753538e+03 1.2228157e+03 -4.6381050e+03 - 1.9478332e+03 1.2622143e+03 -4.6385182e+03 - 1.9195422e+03 1.3012624e+03 -4.6389006e+03 - 1.8904987e+03 1.3399392e+03 -4.6392496e+03 - 1.8607211e+03 1.3782235e+03 -4.6395631e+03 - 1.8302285e+03 1.4160937e+03 -4.6398390e+03 - 1.7990405e+03 1.4535282e+03 -4.6400755e+03 - 1.7671772e+03 1.4905048e+03 -4.6402711e+03 - 1.7346593e+03 1.5270014e+03 -4.6404246e+03 - 1.7015076e+03 1.5629958e+03 -4.6405350e+03 - 1.6677437e+03 1.5984658e+03 -4.6406015e+03 - 1.6333891e+03 1.6333891e+03 -4.6406237e+03 - 1.5984658e+03 1.6677437e+03 -4.6406015e+03 - 1.5629958e+03 1.7015076e+03 -4.6405350e+03 - 1.5270014e+03 1.7346593e+03 -4.6404246e+03 - 1.4905048e+03 1.7671772e+03 -4.6402711e+03 - 1.4535282e+03 1.7990405e+03 -4.6400755e+03 - 1.4160937e+03 1.8302285e+03 -4.6398390e+03 - 1.3782235e+03 1.8607211e+03 -4.6395631e+03 - 1.3399392e+03 1.8904987e+03 -4.6392496e+03 - 1.3012624e+03 1.9195422e+03 -4.6389006e+03 - 1.2622143e+03 1.9478332e+03 -4.6385182e+03 - 1.2228157e+03 1.9753538e+03 -4.6381050e+03 - 1.1830869e+03 2.0020869e+03 -4.6376635e+03 - 1.1430479e+03 2.0280161e+03 -4.6371965e+03 - 1.1027179e+03 2.0531254e+03 -4.6367071e+03 - 1.0621157e+03 2.0773999e+03 -4.6361983e+03 - 1.0212595e+03 2.1008252e+03 -4.6356732e+03 - 9.8016688e+02 2.1233877e+03 -4.6351353e+03 - 9.3885460e+02 2.1450747e+03 -4.6345879e+03 - 8.9733889e+02 2.1658738e+03 -4.6340343e+03 - 8.5563520e+02 2.1857739e+03 -4.6334780e+03 - 8.1375832e+02 2.2047641e+03 -4.6329224e+03 - 7.7172230e+02 2.2228346e+03 -4.6323710e+03 - 7.2954049e+02 2.2399760e+03 -4.6318271e+03 - 6.8722554e+02 2.2561798e+03 -4.6312941e+03 - 6.4478940e+02 2.2714380e+03 -4.6307752e+03 - 6.0224334e+02 2.2857433e+03 -4.6302734e+03 - 5.5959797e+02 2.2990890e+03 -4.6297920e+03 - 5.1686328e+02 2.3114690e+03 -4.6293337e+03 - 4.7404865e+02 2.3228778e+03 -4.6289013e+03 - 4.3116288e+02 2.3333103e+03 -4.6284973e+03 - 3.8821424e+02 2.3427622e+03 -4.6281243e+03 - 3.4521049e+02 2.3512293e+03 -4.6277843e+03 - 3.0215896e+02 2.3587082e+03 -4.6274795e+03 - 2.5906654e+02 2.3651960e+03 -4.6272116e+03 - 2.1593977e+02 2.3706899e+03 -4.6269822e+03 - 1.7278486e+02 2.3751878e+03 -4.6267926e+03 - 1.2960777e+02 2.3786880e+03 -4.6266440e+03 - 8.6414234e+01 2.3811890e+03 -4.6265372e+03 - 4.3209822e+01 2.3826901e+03 -4.6264729e+03 - 0.0000000e+00 2.3831905e+03 -4.6264514e+03 - -4.3209822e+01 2.3826901e+03 -4.6264729e+03 - -8.6414234e+01 2.3811890e+03 -4.6265372e+03 - -1.2960777e+02 2.3786880e+03 -4.6266440e+03 - -1.7278486e+02 2.3751878e+03 -4.6267926e+03 - -2.1593977e+02 2.3706899e+03 -4.6269822e+03 - -2.5906654e+02 2.3651960e+03 -4.6272116e+03 - -3.0215896e+02 2.3587082e+03 -4.6274795e+03 - -3.4521049e+02 2.3512293e+03 -4.6277843e+03 - -3.8821424e+02 2.3427622e+03 -4.6281243e+03 - -4.3116288e+02 2.3333103e+03 -4.6284973e+03 - -4.7404865e+02 2.3228778e+03 -4.6289013e+03 - -5.1686328e+02 2.3114690e+03 -4.6293337e+03 - -5.5959797e+02 2.2990890e+03 -4.6297920e+03 - -6.0224334e+02 2.2857433e+03 -4.6302734e+03 - -6.4478940e+02 2.2714380e+03 -4.6307752e+03 - -6.8722554e+02 2.2561798e+03 -4.6312941e+03 - -7.2954049e+02 2.2399760e+03 -4.6318271e+03 - -7.7172230e+02 2.2228346e+03 -4.6323710e+03 - -8.1375832e+02 2.2047641e+03 -4.6329224e+03 - -8.5563520e+02 2.1857739e+03 -4.6334780e+03 - -8.9733889e+02 2.1658738e+03 -4.6340343e+03 - -9.3885460e+02 2.1450747e+03 -4.6345879e+03 - -9.8016688e+02 2.1233877e+03 -4.6351353e+03 - -1.0212595e+03 2.1008252e+03 -4.6356732e+03 - -1.0621157e+03 2.0773999e+03 -4.6361983e+03 - -1.1027179e+03 2.0531254e+03 -4.6367071e+03 - -1.1430479e+03 2.0280161e+03 -4.6371965e+03 - -1.1830869e+03 2.0020869e+03 -4.6376635e+03 - -1.2228157e+03 1.9753538e+03 -4.6381050e+03 - -1.2622143e+03 1.9478332e+03 -4.6385182e+03 - -1.3012624e+03 1.9195422e+03 -4.6389006e+03 - -1.3399392e+03 1.8904987e+03 -4.6392496e+03 - -1.3782235e+03 1.8607211e+03 -4.6395631e+03 - -1.4160937e+03 1.8302285e+03 -4.6398390e+03 - -1.4535282e+03 1.7990405e+03 -4.6400755e+03 - -1.4905048e+03 1.7671772e+03 -4.6402711e+03 - -1.5270014e+03 1.7346593e+03 -4.6404246e+03 - -1.5629958e+03 1.7015076e+03 -4.6405350e+03 - -1.5984658e+03 1.6677437e+03 -4.6406015e+03 - -1.6333891e+03 1.6333891e+03 -4.6406237e+03 - -1.6677437e+03 1.5984658e+03 -4.6406015e+03 - -1.7015076e+03 1.5629958e+03 -4.6405350e+03 - -1.7346593e+03 1.5270014e+03 -4.6404246e+03 - -1.7671772e+03 1.4905048e+03 -4.6402711e+03 - -1.7990405e+03 1.4535282e+03 -4.6400755e+03 - -1.8302285e+03 1.4160937e+03 -4.6398390e+03 - -1.8607211e+03 1.3782235e+03 -4.6395631e+03 - -1.8904987e+03 1.3399392e+03 -4.6392496e+03 - -1.9195422e+03 1.3012624e+03 -4.6389006e+03 - -1.9478332e+03 1.2622143e+03 -4.6385182e+03 - -1.9753538e+03 1.2228157e+03 -4.6381050e+03 - -2.0020869e+03 1.1830869e+03 -4.6376635e+03 - -2.0280161e+03 1.1430479e+03 -4.6371965e+03 - -2.0531254e+03 1.1027179e+03 -4.6367071e+03 - -2.0773999e+03 1.0621157e+03 -4.6361983e+03 - -2.1008252e+03 1.0212595e+03 -4.6356732e+03 - -2.1233877e+03 9.8016688e+02 -4.6351353e+03 - -2.1450747e+03 9.3885460e+02 -4.6345879e+03 - -2.1658738e+03 8.9733889e+02 -4.6340343e+03 - -2.1857739e+03 8.5563520e+02 -4.6334780e+03 - -2.2047641e+03 8.1375832e+02 -4.6329224e+03 - -2.2228346e+03 7.7172230e+02 -4.6323710e+03 - -2.2399760e+03 7.2954049e+02 -4.6318271e+03 - -2.2561798e+03 6.8722554e+02 -4.6312941e+03 - -2.2714380e+03 6.4478940e+02 -4.6307752e+03 - -2.2857433e+03 6.0224334e+02 -4.6302734e+03 - -2.2990890e+03 5.5959797e+02 -4.6297920e+03 - -2.3114690e+03 5.1686328e+02 -4.6293337e+03 - -2.3228778e+03 4.7404865e+02 -4.6289013e+03 - -2.3333103e+03 4.3116288e+02 -4.6284973e+03 - -2.3427622e+03 3.8821424e+02 -4.6281243e+03 - -2.3512293e+03 3.4521049e+02 -4.6277843e+03 - -2.3587082e+03 3.0215896e+02 -4.6274795e+03 - -2.3651960e+03 2.5906654e+02 -4.6272116e+03 - -2.3706899e+03 2.1593977e+02 -4.6269822e+03 - -2.3751878e+03 1.7278486e+02 -4.6267926e+03 - -2.3786880e+03 1.2960777e+02 -4.6266440e+03 - -2.3811890e+03 8.6414234e+01 -4.6265372e+03 - -2.3826901e+03 4.3209822e+01 -4.6264729e+03 - -2.3831905e+03 0.0000000e+00 -4.6264514e+03 - -2.3826901e+03 -4.3209822e+01 -4.6264729e+03 - -2.3811890e+03 -8.6414234e+01 -4.6265372e+03 - -2.3786880e+03 -1.2960777e+02 -4.6266440e+03 - -2.3751878e+03 -1.7278486e+02 -4.6267926e+03 - -2.3706899e+03 -2.1593977e+02 -4.6269822e+03 - -2.3651960e+03 -2.5906654e+02 -4.6272116e+03 - -2.3587082e+03 -3.0215896e+02 -4.6274795e+03 - -2.3512293e+03 -3.4521049e+02 -4.6277843e+03 - -2.3427622e+03 -3.8821424e+02 -4.6281243e+03 - -2.3333103e+03 -4.3116288e+02 -4.6284973e+03 - -2.3228778e+03 -4.7404865e+02 -4.6289013e+03 - -2.3114690e+03 -5.1686328e+02 -4.6293337e+03 - -2.2990890e+03 -5.5959797e+02 -4.6297920e+03 - -2.2857433e+03 -6.0224334e+02 -4.6302734e+03 - -2.2714380e+03 -6.4478940e+02 -4.6307752e+03 - -2.2561798e+03 -6.8722554e+02 -4.6312941e+03 - -2.2399760e+03 -7.2954049e+02 -4.6318271e+03 - -2.2228346e+03 -7.7172230e+02 -4.6323710e+03 - -2.2047641e+03 -8.1375832e+02 -4.6329224e+03 - -2.1857739e+03 -8.5563520e+02 -4.6334780e+03 - -2.1658738e+03 -8.9733889e+02 -4.6340343e+03 - -2.1450747e+03 -9.3885460e+02 -4.6345879e+03 - -2.1233877e+03 -9.8016688e+02 -4.6351353e+03 - -2.1008252e+03 -1.0212595e+03 -4.6356732e+03 - -2.0773999e+03 -1.0621157e+03 -4.6361983e+03 - -2.0531254e+03 -1.1027179e+03 -4.6367071e+03 - -2.0280161e+03 -1.1430479e+03 -4.6371965e+03 - -2.0020869e+03 -1.1830869e+03 -4.6376635e+03 - -1.9753538e+03 -1.2228157e+03 -4.6381050e+03 - -1.9478332e+03 -1.2622143e+03 -4.6385182e+03 - -1.9195422e+03 -1.3012624e+03 -4.6389006e+03 - -1.8904987e+03 -1.3399392e+03 -4.6392496e+03 - -1.8607211e+03 -1.3782235e+03 -4.6395631e+03 - -1.8302285e+03 -1.4160937e+03 -4.6398390e+03 - -1.7990405e+03 -1.4535282e+03 -4.6400755e+03 - -1.7671772e+03 -1.4905048e+03 -4.6402711e+03 - -1.7346593e+03 -1.5270014e+03 -4.6404246e+03 - -1.7015076e+03 -1.5629958e+03 -4.6405350e+03 - -1.6677437e+03 -1.5984658e+03 -4.6406015e+03 - -1.6333891e+03 -1.6333891e+03 -4.6406237e+03 - -1.5984658e+03 -1.6677437e+03 -4.6406015e+03 - -1.5629958e+03 -1.7015076e+03 -4.6405350e+03 - -1.5270014e+03 -1.7346593e+03 -4.6404246e+03 - -1.4905048e+03 -1.7671772e+03 -4.6402711e+03 - -1.4535282e+03 -1.7990405e+03 -4.6400755e+03 - -1.4160937e+03 -1.8302285e+03 -4.6398390e+03 - -1.3782235e+03 -1.8607211e+03 -4.6395631e+03 - -1.3399392e+03 -1.8904987e+03 -4.6392496e+03 - -1.3012624e+03 -1.9195422e+03 -4.6389006e+03 - -1.2622143e+03 -1.9478332e+03 -4.6385182e+03 - -1.2228157e+03 -1.9753538e+03 -4.6381050e+03 - -1.1830869e+03 -2.0020869e+03 -4.6376635e+03 - -1.1430479e+03 -2.0280161e+03 -4.6371965e+03 - -1.1027179e+03 -2.0531254e+03 -4.6367071e+03 - -1.0621157e+03 -2.0773999e+03 -4.6361983e+03 - -1.0212595e+03 -2.1008252e+03 -4.6356732e+03 - -9.8016688e+02 -2.1233877e+03 -4.6351353e+03 - -9.3885460e+02 -2.1450747e+03 -4.6345879e+03 - -8.9733889e+02 -2.1658738e+03 -4.6340343e+03 - -8.5563520e+02 -2.1857739e+03 -4.6334780e+03 - -8.1375832e+02 -2.2047641e+03 -4.6329224e+03 - -7.7172230e+02 -2.2228346e+03 -4.6323710e+03 - -7.2954049e+02 -2.2399760e+03 -4.6318271e+03 - -6.8722554e+02 -2.2561798e+03 -4.6312941e+03 - -6.4478940e+02 -2.2714380e+03 -4.6307752e+03 - -6.0224334e+02 -2.2857433e+03 -4.6302734e+03 - -5.5959797e+02 -2.2990890e+03 -4.6297920e+03 - -5.1686328e+02 -2.3114690e+03 -4.6293337e+03 - -4.7404865e+02 -2.3228778e+03 -4.6289013e+03 - -4.3116288e+02 -2.3333103e+03 -4.6284973e+03 - -3.8821424e+02 -2.3427622e+03 -4.6281243e+03 - -3.4521049e+02 -2.3512293e+03 -4.6277843e+03 - -3.0215896e+02 -2.3587082e+03 -4.6274795e+03 - -2.5906654e+02 -2.3651960e+03 -4.6272116e+03 - -2.1593977e+02 -2.3706899e+03 -4.6269822e+03 - -1.7278486e+02 -2.3751878e+03 -4.6267926e+03 - -1.2960777e+02 -2.3786880e+03 -4.6266440e+03 - -8.6414234e+01 -2.3811890e+03 -4.6265372e+03 - -4.3209822e+01 -2.3826901e+03 -4.6264729e+03 - 0.0000000e+00 -2.3831905e+03 -4.6264514e+03 - 4.3209822e+01 -2.3826901e+03 -4.6264729e+03 - 8.6414234e+01 -2.3811890e+03 -4.6265372e+03 - 1.2960777e+02 -2.3786880e+03 -4.6266440e+03 - 1.7278486e+02 -2.3751878e+03 -4.6267926e+03 - 2.1593977e+02 -2.3706899e+03 -4.6269822e+03 - 2.5906654e+02 -2.3651960e+03 -4.6272116e+03 - 3.0215896e+02 -2.3587082e+03 -4.6274795e+03 - 3.4521049e+02 -2.3512293e+03 -4.6277843e+03 - 3.8821424e+02 -2.3427622e+03 -4.6281243e+03 - 4.3116288e+02 -2.3333103e+03 -4.6284973e+03 - 4.7404865e+02 -2.3228778e+03 -4.6289013e+03 - 5.1686328e+02 -2.3114690e+03 -4.6293337e+03 - 5.5959797e+02 -2.2990890e+03 -4.6297920e+03 - 6.0224334e+02 -2.2857433e+03 -4.6302734e+03 - 6.4478940e+02 -2.2714380e+03 -4.6307752e+03 - 6.8722554e+02 -2.2561798e+03 -4.6312941e+03 - 7.2954049e+02 -2.2399760e+03 -4.6318271e+03 - 7.7172230e+02 -2.2228346e+03 -4.6323710e+03 - 8.1375832e+02 -2.2047641e+03 -4.6329224e+03 - 8.5563520e+02 -2.1857739e+03 -4.6334780e+03 - 8.9733889e+02 -2.1658738e+03 -4.6340343e+03 - 9.3885460e+02 -2.1450747e+03 -4.6345879e+03 - 9.8016688e+02 -2.1233877e+03 -4.6351353e+03 - 1.0212595e+03 -2.1008252e+03 -4.6356732e+03 - 1.0621157e+03 -2.0773999e+03 -4.6361983e+03 - 1.1027179e+03 -2.0531254e+03 -4.6367071e+03 - 1.1430479e+03 -2.0280161e+03 -4.6371965e+03 - 1.1830869e+03 -2.0020869e+03 -4.6376635e+03 - 1.2228157e+03 -1.9753538e+03 -4.6381050e+03 - 1.2622143e+03 -1.9478332e+03 -4.6385182e+03 - 1.3012624e+03 -1.9195422e+03 -4.6389006e+03 - 1.3399392e+03 -1.8904987e+03 -4.6392496e+03 - 1.3782235e+03 -1.8607211e+03 -4.6395631e+03 - 1.4160937e+03 -1.8302285e+03 -4.6398390e+03 - 1.4535282e+03 -1.7990405e+03 -4.6400755e+03 - 1.4905048e+03 -1.7671772e+03 -4.6402711e+03 - 1.5270014e+03 -1.7346593e+03 -4.6404246e+03 - 1.5629958e+03 -1.7015076e+03 -4.6405350e+03 - 1.5984658e+03 -1.6677437e+03 -4.6406015e+03 - 1.6333891e+03 -1.6333891e+03 -4.6406237e+03 - 1.6677437e+03 -1.5984658e+03 -4.6406015e+03 - 1.7015076e+03 -1.5629958e+03 -4.6405350e+03 - 1.7346593e+03 -1.5270014e+03 -4.6404246e+03 - 1.7671772e+03 -1.4905048e+03 -4.6402711e+03 - 1.7990405e+03 -1.4535282e+03 -4.6400755e+03 - 1.8302285e+03 -1.4160937e+03 -4.6398390e+03 - 1.8607211e+03 -1.3782235e+03 -4.6395631e+03 - 1.8904987e+03 -1.3399392e+03 -4.6392496e+03 - 1.9195422e+03 -1.3012624e+03 -4.6389006e+03 - 1.9478332e+03 -1.2622143e+03 -4.6385182e+03 - 1.9753538e+03 -1.2228157e+03 -4.6381050e+03 - 2.0020869e+03 -1.1830869e+03 -4.6376635e+03 - 2.0280161e+03 -1.1430479e+03 -4.6371965e+03 - 2.0531254e+03 -1.1027179e+03 -4.6367071e+03 - 2.0773999e+03 -1.0621157e+03 -4.6361983e+03 - 2.1008252e+03 -1.0212595e+03 -4.6356732e+03 - 2.1233877e+03 -9.8016688e+02 -4.6351353e+03 - 2.1450747e+03 -9.3885460e+02 -4.6345879e+03 - 2.1658738e+03 -8.9733889e+02 -4.6340343e+03 - 2.1857739e+03 -8.5563520e+02 -4.6334780e+03 - 2.2047641e+03 -8.1375832e+02 -4.6329224e+03 - 2.2228346e+03 -7.7172230e+02 -4.6323710e+03 - 2.2399760e+03 -7.2954049e+02 -4.6318271e+03 - 2.2561798e+03 -6.8722554e+02 -4.6312941e+03 - 2.2714380e+03 -6.4478940e+02 -4.6307752e+03 - 2.2857433e+03 -6.0224334e+02 -4.6302734e+03 - 2.2990890e+03 -5.5959797e+02 -4.6297920e+03 - 2.3114690e+03 -5.1686328e+02 -4.6293337e+03 - 2.3228778e+03 -4.7404865e+02 -4.6289013e+03 - 2.3333103e+03 -4.3116288e+02 -4.6284973e+03 - 2.3427622e+03 -3.8821424e+02 -4.6281243e+03 - 2.3512293e+03 -3.4521049e+02 -4.6277843e+03 - 2.3587082e+03 -3.0215896e+02 -4.6274795e+03 - 2.3651960e+03 -2.5906654e+02 -4.6272116e+03 - 2.3706899e+03 -2.1593977e+02 -4.6269822e+03 - 2.3751878e+03 -1.7278486e+02 -4.6267926e+03 - 2.3786880e+03 -1.2960777e+02 -4.6266440e+03 - 2.3811890e+03 -8.6414234e+01 -4.6265372e+03 - 2.3826901e+03 -4.3209822e+01 -4.6264729e+03 - 2.3831905e+03 0.0000000e+00 -4.6264514e+03 - 2.2631739e+03 0.0000000e+00 -4.6590199e+03 - 2.2627008e+03 4.1417126e+01 -4.6590373e+03 - 2.2612818e+03 8.2827578e+01 -4.6590892e+03 - 2.2589175e+03 1.2422464e+02 -4.6591753e+03 - 2.2556088e+03 1.6560150e+02 -4.6592952e+03 - 2.2513573e+03 2.0695123e+02 -4.6594482e+03 - 2.2461646e+03 2.4826671e+02 -4.6596332e+03 - 2.2400331e+03 2.8954061e+02 -4.6598493e+03 - 2.2329654e+03 3.3076537e+02 -4.6600952e+03 - 2.2249646e+03 3.7193310e+02 -4.6603693e+03 - 2.2160344e+03 4.1303559e+02 -4.6606700e+03 - 2.2061787e+03 4.5406428e+02 -4.6609957e+03 - 2.1954021e+03 4.9501018e+02 -4.6613441e+03 - 2.1837096e+03 5.3586390e+02 -4.6617134e+03 - 2.1711068e+03 5.7661558e+02 -4.6621013e+03 - 2.1575997e+03 6.1725487e+02 -4.6625054e+03 - 2.1431949e+03 6.5777092e+02 -4.6629232e+03 - 2.1278995e+03 6.9815238e+02 -4.6633523e+03 - 2.1117214e+03 7.3838732e+02 -4.6637900e+03 - 2.0946687e+03 7.7846329e+02 -4.6642337e+03 - 2.0767506e+03 8.1836729e+02 -4.6646806e+03 - 2.0579763e+03 8.5808573e+02 -4.6651279e+03 - 2.0383562e+03 8.9760448e+02 -4.6655730e+03 - 2.0179010e+03 9.3690885e+02 -4.6660130e+03 - 1.9966220e+03 9.7598360e+02 -4.6664453e+03 - 1.9745313e+03 1.0148130e+03 -4.6668670e+03 - 1.9516415e+03 1.0533807e+03 -4.6672757e+03 - 1.9279660e+03 1.0916699e+03 -4.6676687e+03 - 1.9035184e+03 1.1296635e+03 -4.6680436e+03 - 1.8783135e+03 1.1673436e+03 -4.6683979e+03 - 1.8523661e+03 1.2046922e+03 -4.6687295e+03 - 1.8256920e+03 1.2416908e+03 -4.6690363e+03 - 1.7983073e+03 1.2783206e+03 -4.6693163e+03 - 1.7702288e+03 1.3145625e+03 -4.6695677e+03 - 1.7414736e+03 1.3503971e+03 -4.6697889e+03 - 1.7120595e+03 1.3858049e+03 -4.6699786e+03 - 1.6820043e+03 1.4207661e+03 -4.6701354e+03 - 1.6513268e+03 1.4552610e+03 -4.6702585e+03 - 1.6200455e+03 1.4892696e+03 -4.6703469e+03 - 1.5881798e+03 1.5227722e+03 -4.6704002e+03 - 1.5557488e+03 1.5557488e+03 -4.6704180e+03 - 1.5227722e+03 1.5881798e+03 -4.6704002e+03 - 1.4892696e+03 1.6200455e+03 -4.6703469e+03 - 1.4552610e+03 1.6513268e+03 -4.6702585e+03 - 1.4207661e+03 1.6820043e+03 -4.6701354e+03 - 1.3858049e+03 1.7120595e+03 -4.6699786e+03 - 1.3503971e+03 1.7414736e+03 -4.6697889e+03 - 1.3145625e+03 1.7702288e+03 -4.6695677e+03 - 1.2783206e+03 1.7983073e+03 -4.6693163e+03 - 1.2416908e+03 1.8256920e+03 -4.6690363e+03 - 1.2046922e+03 1.8523661e+03 -4.6687295e+03 - 1.1673436e+03 1.8783135e+03 -4.6683979e+03 - 1.1296635e+03 1.9035184e+03 -4.6680436e+03 - 1.0916699e+03 1.9279660e+03 -4.6676687e+03 - 1.0533807e+03 1.9516415e+03 -4.6672757e+03 - 1.0148130e+03 1.9745313e+03 -4.6668670e+03 - 9.7598360e+02 1.9966220e+03 -4.6664453e+03 - 9.3690885e+02 2.0179010e+03 -4.6660130e+03 - 8.9760448e+02 2.0383562e+03 -4.6655730e+03 - 8.5808573e+02 2.0579763e+03 -4.6651279e+03 - 8.1836729e+02 2.0767506e+03 -4.6646806e+03 - 7.7846329e+02 2.0946687e+03 -4.6642337e+03 - 7.3838732e+02 2.1117214e+03 -4.6637900e+03 - 6.9815238e+02 2.1278995e+03 -4.6633523e+03 - 6.5777092e+02 2.1431949e+03 -4.6629232e+03 - 6.1725487e+02 2.1575997e+03 -4.6625054e+03 - 5.7661558e+02 2.1711068e+03 -4.6621013e+03 - 5.3586390e+02 2.1837096e+03 -4.6617134e+03 - 4.9501018e+02 2.1954021e+03 -4.6613441e+03 - 4.5406428e+02 2.2061787e+03 -4.6609957e+03 - 4.1303559e+02 2.2160344e+03 -4.6606700e+03 - 3.7193310e+02 2.2249646e+03 -4.6603693e+03 - 3.3076537e+02 2.2329654e+03 -4.6600952e+03 - 2.8954061e+02 2.2400331e+03 -4.6598493e+03 - 2.4826671e+02 2.2461646e+03 -4.6596332e+03 - 2.0695123e+02 2.2513573e+03 -4.6594482e+03 - 1.6560150e+02 2.2556088e+03 -4.6592952e+03 - 1.2422464e+02 2.2589175e+03 -4.6591753e+03 - 8.2827578e+01 2.2612818e+03 -4.6590892e+03 - 4.1417126e+01 2.2627008e+03 -4.6590373e+03 - 4.8134273e-09 2.2631739e+03 -4.6590199e+03 - -4.1417126e+01 2.2627008e+03 -4.6590373e+03 - -8.2827578e+01 2.2612818e+03 -4.6590892e+03 - -1.2422464e+02 2.2589175e+03 -4.6591753e+03 - -1.6560150e+02 2.2556088e+03 -4.6592952e+03 - -2.0695123e+02 2.2513573e+03 -4.6594482e+03 - -2.4826671e+02 2.2461646e+03 -4.6596332e+03 - -2.8954061e+02 2.2400331e+03 -4.6598493e+03 - -3.3076537e+02 2.2329654e+03 -4.6600952e+03 - -3.7193310e+02 2.2249646e+03 -4.6603693e+03 - -4.1303559e+02 2.2160344e+03 -4.6606700e+03 - -4.5406428e+02 2.2061787e+03 -4.6609957e+03 - -4.9501018e+02 2.1954021e+03 -4.6613441e+03 - -5.3586390e+02 2.1837096e+03 -4.6617134e+03 - -5.7661558e+02 2.1711068e+03 -4.6621013e+03 - -6.1725487e+02 2.1575997e+03 -4.6625054e+03 - -6.5777092e+02 2.1431949e+03 -4.6629232e+03 - -6.9815238e+02 2.1278995e+03 -4.6633523e+03 - -7.3838732e+02 2.1117214e+03 -4.6637900e+03 - -7.7846329e+02 2.0946687e+03 -4.6642337e+03 - -8.1836729e+02 2.0767506e+03 -4.6646806e+03 - -8.5808573e+02 2.0579763e+03 -4.6651279e+03 - -8.9760448e+02 2.0383562e+03 -4.6655730e+03 - -9.3690885e+02 2.0179010e+03 -4.6660130e+03 - -9.7598360e+02 1.9966220e+03 -4.6664453e+03 - -1.0148130e+03 1.9745313e+03 -4.6668670e+03 - -1.0533807e+03 1.9516415e+03 -4.6672757e+03 - -1.0916699e+03 1.9279660e+03 -4.6676687e+03 - -1.1296635e+03 1.9035184e+03 -4.6680436e+03 - -1.1673436e+03 1.8783135e+03 -4.6683979e+03 - -1.2046922e+03 1.8523661e+03 -4.6687295e+03 - -1.2416908e+03 1.8256920e+03 -4.6690363e+03 - -1.2783206e+03 1.7983073e+03 -4.6693163e+03 - -1.3145625e+03 1.7702288e+03 -4.6695677e+03 - -1.3503971e+03 1.7414736e+03 -4.6697889e+03 - -1.3858049e+03 1.7120595e+03 -4.6699786e+03 - -1.4207661e+03 1.6820043e+03 -4.6701354e+03 - -1.4552610e+03 1.6513268e+03 -4.6702585e+03 - -1.4892696e+03 1.6200455e+03 -4.6703469e+03 - -1.5227722e+03 1.5881798e+03 -4.6704002e+03 - -1.5557488e+03 1.5557488e+03 -4.6704180e+03 - -1.5881798e+03 1.5227722e+03 -4.6704002e+03 - -1.6200455e+03 1.4892696e+03 -4.6703469e+03 - -1.6513268e+03 1.4552610e+03 -4.6702585e+03 - -1.6820043e+03 1.4207661e+03 -4.6701354e+03 - -1.7120595e+03 1.3858049e+03 -4.6699786e+03 - -1.7414736e+03 1.3503971e+03 -4.6697889e+03 - -1.7702288e+03 1.3145625e+03 -4.6695677e+03 - -1.7983073e+03 1.2783206e+03 -4.6693163e+03 - -1.8256920e+03 1.2416908e+03 -4.6690363e+03 - -1.8523661e+03 1.2046922e+03 -4.6687295e+03 - -1.8783135e+03 1.1673436e+03 -4.6683979e+03 - -1.9035184e+03 1.1296635e+03 -4.6680436e+03 - -1.9279660e+03 1.0916699e+03 -4.6676687e+03 - -1.9516415e+03 1.0533807e+03 -4.6672757e+03 - -1.9745313e+03 1.0148130e+03 -4.6668670e+03 - -1.9966220e+03 9.7598360e+02 -4.6664453e+03 - -2.0179010e+03 9.3690885e+02 -4.6660130e+03 - -2.0383562e+03 8.9760448e+02 -4.6655730e+03 - -2.0579763e+03 8.5808573e+02 -4.6651279e+03 - -2.0767506e+03 8.1836729e+02 -4.6646806e+03 - -2.0946687e+03 7.7846329e+02 -4.6642337e+03 - -2.1117214e+03 7.3838732e+02 -4.6637900e+03 - -2.1278995e+03 6.9815238e+02 -4.6633523e+03 - -2.1431949e+03 6.5777092e+02 -4.6629232e+03 - -2.1575997e+03 6.1725487e+02 -4.6625054e+03 - -2.1711068e+03 5.7661558e+02 -4.6621013e+03 - -2.1837096e+03 5.3586390e+02 -4.6617134e+03 - -2.1954021e+03 4.9501018e+02 -4.6613441e+03 - -2.2061787e+03 4.5406428e+02 -4.6609957e+03 - -2.2160344e+03 4.1303559e+02 -4.6606700e+03 - -2.2249646e+03 3.7193310e+02 -4.6603693e+03 - -2.2329654e+03 3.3076537e+02 -4.6600952e+03 - -2.2400331e+03 2.8954061e+02 -4.6598493e+03 - -2.2461646e+03 2.4826671e+02 -4.6596332e+03 - -2.2513573e+03 2.0695123e+02 -4.6594482e+03 - -2.2556088e+03 1.6560150e+02 -4.6592952e+03 - -2.2589175e+03 1.2422464e+02 -4.6591753e+03 - -2.2612818e+03 8.2827578e+01 -4.6590892e+03 - -2.2627008e+03 4.1417126e+01 -4.6590373e+03 - -2.2631739e+03 0.0000000e+00 -4.6590199e+03 - -2.2627008e+03 -4.1417126e+01 -4.6590373e+03 - -2.2612818e+03 -8.2827578e+01 -4.6590892e+03 - -2.2589175e+03 -1.2422464e+02 -4.6591753e+03 - -2.2556088e+03 -1.6560150e+02 -4.6592952e+03 - -2.2513573e+03 -2.0695123e+02 -4.6594482e+03 - -2.2461646e+03 -2.4826671e+02 -4.6596332e+03 - -2.2400331e+03 -2.8954061e+02 -4.6598493e+03 - -2.2329654e+03 -3.3076537e+02 -4.6600952e+03 - -2.2249646e+03 -3.7193310e+02 -4.6603693e+03 - -2.2160344e+03 -4.1303559e+02 -4.6606700e+03 - -2.2061787e+03 -4.5406428e+02 -4.6609957e+03 - -2.1954021e+03 -4.9501018e+02 -4.6613441e+03 - -2.1837096e+03 -5.3586390e+02 -4.6617134e+03 - -2.1711068e+03 -5.7661558e+02 -4.6621013e+03 - -2.1575997e+03 -6.1725487e+02 -4.6625054e+03 - -2.1431949e+03 -6.5777092e+02 -4.6629232e+03 - -2.1278995e+03 -6.9815238e+02 -4.6633523e+03 - -2.1117214e+03 -7.3838732e+02 -4.6637900e+03 - -2.0946687e+03 -7.7846329e+02 -4.6642337e+03 - -2.0767506e+03 -8.1836729e+02 -4.6646806e+03 - -2.0579763e+03 -8.5808573e+02 -4.6651279e+03 - -2.0383562e+03 -8.9760448e+02 -4.6655730e+03 - -2.0179010e+03 -9.3690885e+02 -4.6660130e+03 - -1.9966220e+03 -9.7598360e+02 -4.6664453e+03 - -1.9745313e+03 -1.0148130e+03 -4.6668670e+03 - -1.9516415e+03 -1.0533807e+03 -4.6672757e+03 - -1.9279660e+03 -1.0916699e+03 -4.6676687e+03 - -1.9035184e+03 -1.1296635e+03 -4.6680436e+03 - -1.8783135e+03 -1.1673436e+03 -4.6683979e+03 - -1.8523661e+03 -1.2046922e+03 -4.6687295e+03 - -1.8256920e+03 -1.2416908e+03 -4.6690363e+03 - -1.7983073e+03 -1.2783206e+03 -4.6693163e+03 - -1.7702288e+03 -1.3145625e+03 -4.6695677e+03 - -1.7414736e+03 -1.3503971e+03 -4.6697889e+03 - -1.7120595e+03 -1.3858049e+03 -4.6699786e+03 - -1.6820043e+03 -1.4207661e+03 -4.6701354e+03 - -1.6513268e+03 -1.4552610e+03 -4.6702585e+03 - -1.6200455e+03 -1.4892696e+03 -4.6703469e+03 - -1.5881798e+03 -1.5227722e+03 -4.6704002e+03 - -1.5557488e+03 -1.5557488e+03 -4.6704180e+03 - -1.5227722e+03 -1.5881798e+03 -4.6704002e+03 - -1.4892696e+03 -1.6200455e+03 -4.6703469e+03 - -1.4552610e+03 -1.6513268e+03 -4.6702585e+03 - -1.4207661e+03 -1.6820043e+03 -4.6701354e+03 - -1.3858049e+03 -1.7120595e+03 -4.6699786e+03 - -1.3503971e+03 -1.7414736e+03 -4.6697889e+03 - -1.3145625e+03 -1.7702288e+03 -4.6695677e+03 - -1.2783206e+03 -1.7983073e+03 -4.6693163e+03 - -1.2416908e+03 -1.8256920e+03 -4.6690363e+03 - -1.2046922e+03 -1.8523661e+03 -4.6687295e+03 - -1.1673436e+03 -1.8783135e+03 -4.6683979e+03 - -1.1296635e+03 -1.9035184e+03 -4.6680436e+03 - -1.0916699e+03 -1.9279660e+03 -4.6676687e+03 - -1.0533807e+03 -1.9516415e+03 -4.6672757e+03 - -1.0148130e+03 -1.9745313e+03 -4.6668670e+03 - -9.7598360e+02 -1.9966220e+03 -4.6664453e+03 - -9.3690885e+02 -2.0179010e+03 -4.6660130e+03 - -8.9760448e+02 -2.0383562e+03 -4.6655730e+03 - -8.5808573e+02 -2.0579763e+03 -4.6651279e+03 - -8.1836729e+02 -2.0767506e+03 -4.6646806e+03 - -7.7846329e+02 -2.0946687e+03 -4.6642337e+03 - -7.3838732e+02 -2.1117214e+03 -4.6637900e+03 - -6.9815238e+02 -2.1278995e+03 -4.6633523e+03 - -6.5777092e+02 -2.1431949e+03 -4.6629232e+03 - -6.1725487e+02 -2.1575997e+03 -4.6625054e+03 - -5.7661558e+02 -2.1711068e+03 -4.6621013e+03 - -5.3586390e+02 -2.1837096e+03 -4.6617134e+03 - -4.9501018e+02 -2.1954021e+03 -4.6613441e+03 - -4.5406428e+02 -2.2061787e+03 -4.6609957e+03 - -4.1303559e+02 -2.2160344e+03 -4.6606700e+03 - -3.7193310e+02 -2.2249646e+03 -4.6603693e+03 - -3.3076537e+02 -2.2329654e+03 -4.6600952e+03 - -2.8954061e+02 -2.2400331e+03 -4.6598493e+03 - -2.4826671e+02 -2.2461646e+03 -4.6596332e+03 - -2.0695123e+02 -2.2513573e+03 -4.6594482e+03 - -1.6560150e+02 -2.2556088e+03 -4.6592952e+03 - -1.2422464e+02 -2.2589175e+03 -4.6591753e+03 - -8.2827578e+01 -2.2612818e+03 -4.6590892e+03 - -4.1417126e+01 -2.2627008e+03 -4.6590373e+03 - -4.8134273e-09 -2.2631739e+03 -4.6590199e+03 - 4.1417126e+01 -2.2627008e+03 -4.6590373e+03 - 8.2827578e+01 -2.2612818e+03 -4.6590892e+03 - 1.2422464e+02 -2.2589175e+03 -4.6591753e+03 - 1.6560150e+02 -2.2556088e+03 -4.6592952e+03 - 2.0695123e+02 -2.2513573e+03 -4.6594482e+03 - 2.4826671e+02 -2.2461646e+03 -4.6596332e+03 - 2.8954061e+02 -2.2400331e+03 -4.6598493e+03 - 3.3076537e+02 -2.2329654e+03 -4.6600952e+03 - 3.7193310e+02 -2.2249646e+03 -4.6603693e+03 - 4.1303559e+02 -2.2160344e+03 -4.6606700e+03 - 4.5406428e+02 -2.2061787e+03 -4.6609957e+03 - 4.9501018e+02 -2.1954021e+03 -4.6613441e+03 - 5.3586390e+02 -2.1837096e+03 -4.6617134e+03 - 5.7661558e+02 -2.1711068e+03 -4.6621013e+03 - 6.1725487e+02 -2.1575997e+03 -4.6625054e+03 - 6.5777092e+02 -2.1431949e+03 -4.6629232e+03 - 6.9815238e+02 -2.1278995e+03 -4.6633523e+03 - 7.3838732e+02 -2.1117214e+03 -4.6637900e+03 - 7.7846329e+02 -2.0946687e+03 -4.6642337e+03 - 8.1836729e+02 -2.0767506e+03 -4.6646806e+03 - 8.5808573e+02 -2.0579763e+03 -4.6651279e+03 - 8.9760448e+02 -2.0383562e+03 -4.6655730e+03 - 9.3690885e+02 -2.0179010e+03 -4.6660130e+03 - 9.7598360e+02 -1.9966220e+03 -4.6664453e+03 - 1.0148130e+03 -1.9745313e+03 -4.6668670e+03 - 1.0533807e+03 -1.9516415e+03 -4.6672757e+03 - 1.0916699e+03 -1.9279660e+03 -4.6676687e+03 - 1.1296635e+03 -1.9035184e+03 -4.6680436e+03 - 1.1673436e+03 -1.8783135e+03 -4.6683979e+03 - 1.2046922e+03 -1.8523661e+03 -4.6687295e+03 - 1.2416908e+03 -1.8256920e+03 -4.6690363e+03 - 1.2783206e+03 -1.7983073e+03 -4.6693163e+03 - 1.3145625e+03 -1.7702288e+03 -4.6695677e+03 - 1.3503971e+03 -1.7414736e+03 -4.6697889e+03 - 1.3858049e+03 -1.7120595e+03 -4.6699786e+03 - 1.4207661e+03 -1.6820043e+03 -4.6701354e+03 - 1.4552610e+03 -1.6513268e+03 -4.6702585e+03 - 1.4892696e+03 -1.6200455e+03 -4.6703469e+03 - 1.5227722e+03 -1.5881798e+03 -4.6704002e+03 - 1.5557488e+03 -1.5557488e+03 -4.6704180e+03 - 1.5881798e+03 -1.5227722e+03 -4.6704002e+03 - 1.6200455e+03 -1.4892696e+03 -4.6703469e+03 - 1.6513268e+03 -1.4552610e+03 -4.6702585e+03 - 1.6820043e+03 -1.4207661e+03 -4.6701354e+03 - 1.7120595e+03 -1.3858049e+03 -4.6699786e+03 - 1.7414736e+03 -1.3503971e+03 -4.6697889e+03 - 1.7702288e+03 -1.3145625e+03 -4.6695677e+03 - 1.7983073e+03 -1.2783206e+03 -4.6693163e+03 - 1.8256920e+03 -1.2416908e+03 -4.6690363e+03 - 1.8523661e+03 -1.2046922e+03 -4.6687295e+03 - 1.8783135e+03 -1.1673436e+03 -4.6683979e+03 - 1.9035184e+03 -1.1296635e+03 -4.6680436e+03 - 1.9279660e+03 -1.0916699e+03 -4.6676687e+03 - 1.9516415e+03 -1.0533807e+03 -4.6672757e+03 - 1.9745313e+03 -1.0148130e+03 -4.6668670e+03 - 1.9966220e+03 -9.7598360e+02 -4.6664453e+03 - 2.0179010e+03 -9.3690885e+02 -4.6660130e+03 - 2.0383562e+03 -8.9760448e+02 -4.6655730e+03 - 2.0579763e+03 -8.5808573e+02 -4.6651279e+03 - 2.0767506e+03 -8.1836729e+02 -4.6646806e+03 - 2.0946687e+03 -7.7846329e+02 -4.6642337e+03 - 2.1117214e+03 -7.3838732e+02 -4.6637900e+03 - 2.1278995e+03 -6.9815238e+02 -4.6633523e+03 - 2.1431949e+03 -6.5777092e+02 -4.6629232e+03 - 2.1575997e+03 -6.1725487e+02 -4.6625054e+03 - 2.1711068e+03 -5.7661558e+02 -4.6621013e+03 - 2.1837096e+03 -5.3586390e+02 -4.6617134e+03 - 2.1954021e+03 -4.9501018e+02 -4.6613441e+03 - 2.2061787e+03 -4.5406428e+02 -4.6609957e+03 - 2.2160344e+03 -4.1303559e+02 -4.6606700e+03 - 2.2249646e+03 -3.7193310e+02 -4.6603693e+03 - 2.2329654e+03 -3.3076537e+02 -4.6600952e+03 - 2.2400331e+03 -2.8954061e+02 -4.6598493e+03 - 2.2461646e+03 -2.4826671e+02 -4.6596332e+03 - 2.2513573e+03 -2.0695123e+02 -4.6594482e+03 - 2.2556088e+03 -1.6560150e+02 -4.6592952e+03 - 2.2589175e+03 -1.2422464e+02 -4.6591753e+03 - 2.2612818e+03 -8.2827578e+01 -4.6590892e+03 - 2.2627008e+03 -4.1417126e+01 -4.6590373e+03 - 2.2631739e+03 0.0000000e+00 -4.6590199e+03 - 2.1359124e+03 0.0000000e+00 -4.6908853e+03 - 2.1354683e+03 3.9440997e+01 -4.6908990e+03 - 2.1341363e+03 7.8874306e+01 -4.6909398e+03 - 2.1319170e+03 1.1829221e+02 -4.6910076e+03 - 2.1288114e+03 1.5768691e+02 -4.6911020e+03 - 2.1248209e+03 1.9705052e+02 -4.6912224e+03 - 2.1199474e+03 2.3637502e+02 -4.6913680e+03 - 2.1141930e+03 2.7565220e+02 -4.6915380e+03 - 2.1075606e+03 3.1487367e+02 -4.6917314e+03 - 2.1000531e+03 3.5403080e+02 -4.6919470e+03 - 2.0916741e+03 3.9311473e+02 -4.6921836e+03 - 2.0824277e+03 4.3211627e+02 -4.6924396e+03 - 2.0723182e+03 4.7102595e+02 -4.6927136e+03 - 2.0613506e+03 5.0983397e+02 -4.6930039e+03 - 2.0495303e+03 5.4853015e+02 -4.6933087e+03 - 2.0368632e+03 5.8710397e+02 -4.6936262e+03 - 2.0233557e+03 6.2554449e+02 -4.6939545e+03 - 2.0090145e+03 6.6384039e+02 -4.6942915e+03 - 1.9938472e+03 7.0197993e+02 -4.6946352e+03 - 1.9778616e+03 7.3995095e+02 -4.6949835e+03 - 1.9610662e+03 7.7774084e+02 -4.6953342e+03 - 1.9434699e+03 8.1533661e+02 -4.6956853e+03 - 1.9250822e+03 8.5272480e+02 -4.6960344e+03 - 1.9059131e+03 8.8989154e+02 -4.6963796e+03 - 1.8859733e+03 9.2682257e+02 -4.6967185e+03 - 1.8652738e+03 9.6350320e+02 -4.6970492e+03 - 1.8438263e+03 9.9991834e+02 -4.6973695e+03 - 1.8216429e+03 1.0360526e+03 -4.6976774e+03 - 1.7987362e+03 1.0718901e+03 -4.6979711e+03 - 1.7751195e+03 1.1074147e+03 -4.6982487e+03 - 1.7508064e+03 1.1426101e+03 -4.6985084e+03 - 1.7258110e+03 1.1774595e+03 -4.6987487e+03 - 1.7001479e+03 1.2119459e+03 -4.6989679e+03 - 1.6738321e+03 1.2460523e+03 -4.6991647e+03 - 1.6468790e+03 1.2797612e+03 -4.6993379e+03 - 1.6193044e+03 1.3130551e+03 -4.6994863e+03 - 1.5911245e+03 1.3459166e+03 -4.6996091e+03 - 1.5623556e+03 1.3783279e+03 -4.6997053e+03 - 1.5330146e+03 1.4102713e+03 -4.6997746e+03 - 1.5031183e+03 1.4417293e+03 -4.6998163e+03 - 1.4726841e+03 1.4726841e+03 -4.6998302e+03 - 1.4417293e+03 1.5031183e+03 -4.6998163e+03 - 1.4102713e+03 1.5330146e+03 -4.6997746e+03 - 1.3783279e+03 1.5623556e+03 -4.6997053e+03 - 1.3459166e+03 1.5911245e+03 -4.6996091e+03 - 1.3130551e+03 1.6193044e+03 -4.6994863e+03 - 1.2797612e+03 1.6468790e+03 -4.6993379e+03 - 1.2460523e+03 1.6738321e+03 -4.6991647e+03 - 1.2119459e+03 1.7001479e+03 -4.6989679e+03 - 1.1774595e+03 1.7258110e+03 -4.6987487e+03 - 1.1426101e+03 1.7508064e+03 -4.6985084e+03 - 1.1074147e+03 1.7751195e+03 -4.6982487e+03 - 1.0718901e+03 1.7987362e+03 -4.6979711e+03 - 1.0360526e+03 1.8216429e+03 -4.6976774e+03 - 9.9991834e+02 1.8438263e+03 -4.6973695e+03 - 9.6350320e+02 1.8652738e+03 -4.6970492e+03 - 9.2682257e+02 1.8859733e+03 -4.6967185e+03 - 8.8989154e+02 1.9059131e+03 -4.6963796e+03 - 8.5272480e+02 1.9250822e+03 -4.6960344e+03 - 8.1533661e+02 1.9434699e+03 -4.6956853e+03 - 7.7774084e+02 1.9610662e+03 -4.6953342e+03 - 7.3995095e+02 1.9778616e+03 -4.6949835e+03 - 7.0197993e+02 1.9938472e+03 -4.6946352e+03 - 6.6384039e+02 2.0090145e+03 -4.6942915e+03 - 6.2554449e+02 2.0233557e+03 -4.6939545e+03 - 5.8710397e+02 2.0368632e+03 -4.6936262e+03 - 5.4853015e+02 2.0495303e+03 -4.6933087e+03 - 5.0983397e+02 2.0613506e+03 -4.6930039e+03 - 4.7102595e+02 2.0723182e+03 -4.6927136e+03 - 4.3211627e+02 2.0824277e+03 -4.6924396e+03 - 3.9311473e+02 2.0916741e+03 -4.6921836e+03 - 3.5403080e+02 2.1000531e+03 -4.6919470e+03 - 3.1487367e+02 2.1075606e+03 -4.6917314e+03 - 2.7565220e+02 2.1141930e+03 -4.6915380e+03 - 2.3637502e+02 2.1199474e+03 -4.6913680e+03 - 1.9705052e+02 2.1248209e+03 -4.6912224e+03 - 1.5768691e+02 2.1288114e+03 -4.6911020e+03 - 1.1829221e+02 2.1319170e+03 -4.6910076e+03 - 7.8874306e+01 2.1341363e+03 -4.6909398e+03 - 3.9440997e+01 2.1354683e+03 -4.6908990e+03 - 0.0000000e+00 2.1359124e+03 -4.6908853e+03 - -3.9440997e+01 2.1354683e+03 -4.6908990e+03 - -7.8874306e+01 2.1341363e+03 -4.6909398e+03 - -1.1829221e+02 2.1319170e+03 -4.6910076e+03 - -1.5768691e+02 2.1288114e+03 -4.6911020e+03 - -1.9705052e+02 2.1248209e+03 -4.6912224e+03 - -2.3637502e+02 2.1199474e+03 -4.6913680e+03 - -2.7565220e+02 2.1141930e+03 -4.6915380e+03 - -3.1487367e+02 2.1075606e+03 -4.6917314e+03 - -3.5403080e+02 2.1000531e+03 -4.6919470e+03 - -3.9311473e+02 2.0916741e+03 -4.6921836e+03 - -4.3211627e+02 2.0824277e+03 -4.6924396e+03 - -4.7102595e+02 2.0723182e+03 -4.6927136e+03 - -5.0983397e+02 2.0613506e+03 -4.6930039e+03 - -5.4853015e+02 2.0495303e+03 -4.6933087e+03 - -5.8710397e+02 2.0368632e+03 -4.6936262e+03 - -6.2554449e+02 2.0233557e+03 -4.6939545e+03 - -6.6384039e+02 2.0090145e+03 -4.6942915e+03 - -7.0197993e+02 1.9938472e+03 -4.6946352e+03 - -7.3995095e+02 1.9778616e+03 -4.6949835e+03 - -7.7774084e+02 1.9610662e+03 -4.6953342e+03 - -8.1533661e+02 1.9434699e+03 -4.6956853e+03 - -8.5272480e+02 1.9250822e+03 -4.6960344e+03 - -8.8989154e+02 1.9059131e+03 -4.6963796e+03 - -9.2682257e+02 1.8859733e+03 -4.6967185e+03 - -9.6350320e+02 1.8652738e+03 -4.6970492e+03 - -9.9991834e+02 1.8438263e+03 -4.6973695e+03 - -1.0360526e+03 1.8216429e+03 -4.6976774e+03 - -1.0718901e+03 1.7987362e+03 -4.6979711e+03 - -1.1074147e+03 1.7751195e+03 -4.6982487e+03 - -1.1426101e+03 1.7508064e+03 -4.6985084e+03 - -1.1774595e+03 1.7258110e+03 -4.6987487e+03 - -1.2119459e+03 1.7001479e+03 -4.6989679e+03 - -1.2460523e+03 1.6738321e+03 -4.6991647e+03 - -1.2797612e+03 1.6468790e+03 -4.6993379e+03 - -1.3130551e+03 1.6193044e+03 -4.6994863e+03 - -1.3459166e+03 1.5911245e+03 -4.6996091e+03 - -1.3783279e+03 1.5623556e+03 -4.6997053e+03 - -1.4102713e+03 1.5330146e+03 -4.6997746e+03 - -1.4417293e+03 1.5031183e+03 -4.6998163e+03 - -1.4726841e+03 1.4726841e+03 -4.6998302e+03 - -1.5031183e+03 1.4417293e+03 -4.6998163e+03 - -1.5330146e+03 1.4102713e+03 -4.6997746e+03 - -1.5623556e+03 1.3783279e+03 -4.6997053e+03 - -1.5911245e+03 1.3459166e+03 -4.6996091e+03 - -1.6193044e+03 1.3130551e+03 -4.6994863e+03 - -1.6468790e+03 1.2797612e+03 -4.6993379e+03 - -1.6738321e+03 1.2460523e+03 -4.6991647e+03 - -1.7001479e+03 1.2119459e+03 -4.6989679e+03 - -1.7258110e+03 1.1774595e+03 -4.6987487e+03 - -1.7508064e+03 1.1426101e+03 -4.6985084e+03 - -1.7751195e+03 1.1074147e+03 -4.6982487e+03 - -1.7987362e+03 1.0718901e+03 -4.6979711e+03 - -1.8216429e+03 1.0360526e+03 -4.6976774e+03 - -1.8438263e+03 9.9991834e+02 -4.6973695e+03 - -1.8652738e+03 9.6350320e+02 -4.6970492e+03 - -1.8859733e+03 9.2682257e+02 -4.6967185e+03 - -1.9059131e+03 8.8989154e+02 -4.6963796e+03 - -1.9250822e+03 8.5272480e+02 -4.6960344e+03 - -1.9434699e+03 8.1533661e+02 -4.6956853e+03 - -1.9610662e+03 7.7774084e+02 -4.6953342e+03 - -1.9778616e+03 7.3995095e+02 -4.6949835e+03 - -1.9938472e+03 7.0197993e+02 -4.6946352e+03 - -2.0090145e+03 6.6384039e+02 -4.6942915e+03 - -2.0233557e+03 6.2554449e+02 -4.6939545e+03 - -2.0368632e+03 5.8710397e+02 -4.6936262e+03 - -2.0495303e+03 5.4853015e+02 -4.6933087e+03 - -2.0613506e+03 5.0983397e+02 -4.6930039e+03 - -2.0723182e+03 4.7102595e+02 -4.6927136e+03 - -2.0824277e+03 4.3211627e+02 -4.6924396e+03 - -2.0916741e+03 3.9311473e+02 -4.6921836e+03 - -2.1000531e+03 3.5403080e+02 -4.6919470e+03 - -2.1075606e+03 3.1487367e+02 -4.6917314e+03 - -2.1141930e+03 2.7565220e+02 -4.6915380e+03 - -2.1199474e+03 2.3637502e+02 -4.6913680e+03 - -2.1248209e+03 1.9705052e+02 -4.6912224e+03 - -2.1288114e+03 1.5768691e+02 -4.6911020e+03 - -2.1319170e+03 1.1829221e+02 -4.6910076e+03 - -2.1341363e+03 7.8874306e+01 -4.6909398e+03 - -2.1354683e+03 3.9440997e+01 -4.6908990e+03 - -2.1359124e+03 0.0000000e+00 -4.6908853e+03 - -2.1354683e+03 -3.9440997e+01 -4.6908990e+03 - -2.1341363e+03 -7.8874306e+01 -4.6909398e+03 - -2.1319170e+03 -1.1829221e+02 -4.6910076e+03 - -2.1288114e+03 -1.5768691e+02 -4.6911020e+03 - -2.1248209e+03 -1.9705052e+02 -4.6912224e+03 - -2.1199474e+03 -2.3637502e+02 -4.6913680e+03 - -2.1141930e+03 -2.7565220e+02 -4.6915380e+03 - -2.1075606e+03 -3.1487367e+02 -4.6917314e+03 - -2.1000531e+03 -3.5403080e+02 -4.6919470e+03 - -2.0916741e+03 -3.9311473e+02 -4.6921836e+03 - -2.0824277e+03 -4.3211627e+02 -4.6924396e+03 - -2.0723182e+03 -4.7102595e+02 -4.6927136e+03 - -2.0613506e+03 -5.0983397e+02 -4.6930039e+03 - -2.0495303e+03 -5.4853015e+02 -4.6933087e+03 - -2.0368632e+03 -5.8710397e+02 -4.6936262e+03 - -2.0233557e+03 -6.2554449e+02 -4.6939545e+03 - -2.0090145e+03 -6.6384039e+02 -4.6942915e+03 - -1.9938472e+03 -7.0197993e+02 -4.6946352e+03 - -1.9778616e+03 -7.3995095e+02 -4.6949835e+03 - -1.9610662e+03 -7.7774084e+02 -4.6953342e+03 - -1.9434699e+03 -8.1533661e+02 -4.6956853e+03 - -1.9250822e+03 -8.5272480e+02 -4.6960344e+03 - -1.9059131e+03 -8.8989154e+02 -4.6963796e+03 - -1.8859733e+03 -9.2682257e+02 -4.6967185e+03 - -1.8652738e+03 -9.6350320e+02 -4.6970492e+03 - -1.8438263e+03 -9.9991834e+02 -4.6973695e+03 - -1.8216429e+03 -1.0360526e+03 -4.6976774e+03 - -1.7987362e+03 -1.0718901e+03 -4.6979711e+03 - -1.7751195e+03 -1.1074147e+03 -4.6982487e+03 - -1.7508064e+03 -1.1426101e+03 -4.6985084e+03 - -1.7258110e+03 -1.1774595e+03 -4.6987487e+03 - -1.7001479e+03 -1.2119459e+03 -4.6989679e+03 - -1.6738321e+03 -1.2460523e+03 -4.6991647e+03 - -1.6468790e+03 -1.2797612e+03 -4.6993379e+03 - -1.6193044e+03 -1.3130551e+03 -4.6994863e+03 - -1.5911245e+03 -1.3459166e+03 -4.6996091e+03 - -1.5623556e+03 -1.3783279e+03 -4.6997053e+03 - -1.5330146e+03 -1.4102713e+03 -4.6997746e+03 - -1.5031183e+03 -1.4417293e+03 -4.6998163e+03 - -1.4726841e+03 -1.4726841e+03 -4.6998302e+03 - -1.4417293e+03 -1.5031183e+03 -4.6998163e+03 - -1.4102713e+03 -1.5330146e+03 -4.6997746e+03 - -1.3783279e+03 -1.5623556e+03 -4.6997053e+03 - -1.3459166e+03 -1.5911245e+03 -4.6996091e+03 - -1.3130551e+03 -1.6193044e+03 -4.6994863e+03 - -1.2797612e+03 -1.6468790e+03 -4.6993379e+03 - -1.2460523e+03 -1.6738321e+03 -4.6991647e+03 - -1.2119459e+03 -1.7001479e+03 -4.6989679e+03 - -1.1774595e+03 -1.7258110e+03 -4.6987487e+03 - -1.1426101e+03 -1.7508064e+03 -4.6985084e+03 - -1.1074147e+03 -1.7751195e+03 -4.6982487e+03 - -1.0718901e+03 -1.7987362e+03 -4.6979711e+03 - -1.0360526e+03 -1.8216429e+03 -4.6976774e+03 - -9.9991834e+02 -1.8438263e+03 -4.6973695e+03 - -9.6350320e+02 -1.8652738e+03 -4.6970492e+03 - -9.2682257e+02 -1.8859733e+03 -4.6967185e+03 - -8.8989154e+02 -1.9059131e+03 -4.6963796e+03 - -8.5272480e+02 -1.9250822e+03 -4.6960344e+03 - -8.1533661e+02 -1.9434699e+03 -4.6956853e+03 - -7.7774084e+02 -1.9610662e+03 -4.6953342e+03 - -7.3995095e+02 -1.9778616e+03 -4.6949835e+03 - -7.0197993e+02 -1.9938472e+03 -4.6946352e+03 - -6.6384039e+02 -2.0090145e+03 -4.6942915e+03 - -6.2554449e+02 -2.0233557e+03 -4.6939545e+03 - -5.8710397e+02 -2.0368632e+03 -4.6936262e+03 - -5.4853015e+02 -2.0495303e+03 -4.6933087e+03 - -5.0983397e+02 -2.0613506e+03 -4.6930039e+03 - -4.7102595e+02 -2.0723182e+03 -4.6927136e+03 - -4.3211627e+02 -2.0824277e+03 -4.6924396e+03 - -3.9311473e+02 -2.0916741e+03 -4.6921836e+03 - -3.5403080e+02 -2.1000531e+03 -4.6919470e+03 - -3.1487367e+02 -2.1075606e+03 -4.6917314e+03 - -2.7565220e+02 -2.1141930e+03 -4.6915380e+03 - -2.3637502e+02 -2.1199474e+03 -4.6913680e+03 - -1.9705052e+02 -2.1248209e+03 -4.6912224e+03 - -1.5768691e+02 -2.1288114e+03 -4.6911020e+03 - -1.1829221e+02 -2.1319170e+03 -4.6910076e+03 - -7.8874306e+01 -2.1341363e+03 -4.6909398e+03 - -3.9440997e+01 -2.1354683e+03 -4.6908990e+03 - 0.0000000e+00 -2.1359124e+03 -4.6908853e+03 - 3.9440997e+01 -2.1354683e+03 -4.6908990e+03 - 7.8874306e+01 -2.1341363e+03 -4.6909398e+03 - 1.1829221e+02 -2.1319170e+03 -4.6910076e+03 - 1.5768691e+02 -2.1288114e+03 -4.6911020e+03 - 1.9705052e+02 -2.1248209e+03 -4.6912224e+03 - 2.3637502e+02 -2.1199474e+03 -4.6913680e+03 - 2.7565220e+02 -2.1141930e+03 -4.6915380e+03 - 3.1487367e+02 -2.1075606e+03 -4.6917314e+03 - 3.5403080e+02 -2.1000531e+03 -4.6919470e+03 - 3.9311473e+02 -2.0916741e+03 -4.6921836e+03 - 4.3211627e+02 -2.0824277e+03 -4.6924396e+03 - 4.7102595e+02 -2.0723182e+03 -4.6927136e+03 - 5.0983397e+02 -2.0613506e+03 -4.6930039e+03 - 5.4853015e+02 -2.0495303e+03 -4.6933087e+03 - 5.8710397e+02 -2.0368632e+03 -4.6936262e+03 - 6.2554449e+02 -2.0233557e+03 -4.6939545e+03 - 6.6384039e+02 -2.0090145e+03 -4.6942915e+03 - 7.0197993e+02 -1.9938472e+03 -4.6946352e+03 - 7.3995095e+02 -1.9778616e+03 -4.6949835e+03 - 7.7774084e+02 -1.9610662e+03 -4.6953342e+03 - 8.1533661e+02 -1.9434699e+03 -4.6956853e+03 - 8.5272480e+02 -1.9250822e+03 -4.6960344e+03 - 8.8989154e+02 -1.9059131e+03 -4.6963796e+03 - 9.2682257e+02 -1.8859733e+03 -4.6967185e+03 - 9.6350320e+02 -1.8652738e+03 -4.6970492e+03 - 9.9991834e+02 -1.8438263e+03 -4.6973695e+03 - 1.0360526e+03 -1.8216429e+03 -4.6976774e+03 - 1.0718901e+03 -1.7987362e+03 -4.6979711e+03 - 1.1074147e+03 -1.7751195e+03 -4.6982487e+03 - 1.1426101e+03 -1.7508064e+03 -4.6985084e+03 - 1.1774595e+03 -1.7258110e+03 -4.6987487e+03 - 1.2119459e+03 -1.7001479e+03 -4.6989679e+03 - 1.2460523e+03 -1.6738321e+03 -4.6991647e+03 - 1.2797612e+03 -1.6468790e+03 -4.6993379e+03 - 1.3130551e+03 -1.6193044e+03 -4.6994863e+03 - 1.3459166e+03 -1.5911245e+03 -4.6996091e+03 - 1.3783279e+03 -1.5623556e+03 -4.6997053e+03 - 1.4102713e+03 -1.5330146e+03 -4.6997746e+03 - 1.4417293e+03 -1.5031183e+03 -4.6998163e+03 - 1.4726841e+03 -1.4726841e+03 -4.6998302e+03 - 1.5031183e+03 -1.4417293e+03 -4.6998163e+03 - 1.5330146e+03 -1.4102713e+03 -4.6997746e+03 - 1.5623556e+03 -1.3783279e+03 -4.6997053e+03 - 1.5911245e+03 -1.3459166e+03 -4.6996091e+03 - 1.6193044e+03 -1.3130551e+03 -4.6994863e+03 - 1.6468790e+03 -1.2797612e+03 -4.6993379e+03 - 1.6738321e+03 -1.2460523e+03 -4.6991647e+03 - 1.7001479e+03 -1.2119459e+03 -4.6989679e+03 - 1.7258110e+03 -1.1774595e+03 -4.6987487e+03 - 1.7508064e+03 -1.1426101e+03 -4.6985084e+03 - 1.7751195e+03 -1.1074147e+03 -4.6982487e+03 - 1.7987362e+03 -1.0718901e+03 -4.6979711e+03 - 1.8216429e+03 -1.0360526e+03 -4.6976774e+03 - 1.8438263e+03 -9.9991834e+02 -4.6973695e+03 - 1.8652738e+03 -9.6350320e+02 -4.6970492e+03 - 1.8859733e+03 -9.2682257e+02 -4.6967185e+03 - 1.9059131e+03 -8.8989154e+02 -4.6963796e+03 - 1.9250822e+03 -8.5272480e+02 -4.6960344e+03 - 1.9434699e+03 -8.1533661e+02 -4.6956853e+03 - 1.9610662e+03 -7.7774084e+02 -4.6953342e+03 - 1.9778616e+03 -7.3995095e+02 -4.6949835e+03 - 1.9938472e+03 -7.0197993e+02 -4.6946352e+03 - 2.0090145e+03 -6.6384039e+02 -4.6942915e+03 - 2.0233557e+03 -6.2554449e+02 -4.6939545e+03 - 2.0368632e+03 -5.8710397e+02 -4.6936262e+03 - 2.0495303e+03 -5.4853015e+02 -4.6933087e+03 - 2.0613506e+03 -5.0983397e+02 -4.6930039e+03 - 2.0723182e+03 -4.7102595e+02 -4.6927136e+03 - 2.0824277e+03 -4.3211627e+02 -4.6924396e+03 - 2.0916741e+03 -3.9311473e+02 -4.6921836e+03 - 2.1000531e+03 -3.5403080e+02 -4.6919470e+03 - 2.1075606e+03 -3.1487367e+02 -4.6917314e+03 - 2.1141930e+03 -2.7565220e+02 -4.6915380e+03 - 2.1199474e+03 -2.3637502e+02 -4.6913680e+03 - 2.1248209e+03 -1.9705052e+02 -4.6912224e+03 - 2.1288114e+03 -1.5768691e+02 -4.6911020e+03 - 2.1319170e+03 -1.1829221e+02 -4.6910076e+03 - 2.1341363e+03 -7.8874306e+01 -4.6909398e+03 - 2.1354683e+03 -3.9440997e+01 -4.6908990e+03 - 2.1359124e+03 0.0000000e+00 -4.6908853e+03 - 2.0009436e+03 0.0000000e+00 -4.7218777e+03 - 2.0005301e+03 3.7268613e+01 -4.7218881e+03 - 1.9992901e+03 7.4528794e+01 -4.7219193e+03 - 1.9972240e+03 1.1177209e+02 -4.7219711e+03 - 1.9943329e+03 1.4898998e+02 -4.7220432e+03 - 1.9906180e+03 1.8617389e+02 -4.7221352e+03 - 1.9860813e+03 2.2331513e+02 -4.7222464e+03 - 1.9807249e+03 2.6040488e+02 -4.7223763e+03 - 1.9745515e+03 2.9743419e+02 -4.7225240e+03 - 1.9675639e+03 3.3439392e+02 -4.7226887e+03 - 1.9597657e+03 3.7127474e+02 -4.7228693e+03 - 1.9511606e+03 4.0806712e+02 -4.7230648e+03 - 1.9417530e+03 4.4476127e+02 -4.7232739e+03 - 1.9315476e+03 4.8134720e+02 -4.7234955e+03 - 1.9205494e+03 5.1781460e+02 -4.7237281e+03 - 1.9087642e+03 5.5415293e+02 -4.7239703e+03 - 1.8961978e+03 5.9035134e+02 -4.7242207e+03 - 1.8828568e+03 6.2639868e+02 -4.7244778e+03 - 1.8687481e+03 6.6228350e+02 -4.7247399e+03 - 1.8538791e+03 6.9799405e+02 -4.7250054e+03 - 1.8382576e+03 7.3351824e+02 -4.7252728e+03 - 1.8218920e+03 7.6884369e+02 -4.7255403e+03 - 1.8047909e+03 8.0395771e+02 -4.7258063e+03 - 1.7869636e+03 8.3884729e+02 -4.7260692e+03 - 1.7684198e+03 8.7349912e+02 -4.7263274e+03 - 1.7491696e+03 9.0789960e+02 -4.7265792e+03 - 1.7292236e+03 9.4203485e+02 -4.7268230e+03 - 1.7085927e+03 9.7589072e+02 -4.7270575e+03 - 1.6872884e+03 1.0094528e+03 -4.7272810e+03 - 1.6653225e+03 1.0427065e+03 -4.7274922e+03 - 1.6427074e+03 1.0756370e+03 -4.7276898e+03 - 1.6194556e+03 1.1082291e+03 -4.7278726e+03 - 1.5955801e+03 1.1404678e+03 -4.7280393e+03 - 1.5710943e+03 1.1723376e+03 -4.7281890e+03 - 1.5460119e+03 1.2038231e+03 -4.7283207e+03 - 1.5203469e+03 1.2349088e+03 -4.7284336e+03 - 1.4941137e+03 1.2655790e+03 -4.7285269e+03 - 1.4673267e+03 1.2958181e+03 -4.7286001e+03 - 1.4400007e+03 1.3256104e+03 -4.7286527e+03 - 1.4121509e+03 1.3549403e+03 -4.7286844e+03 - 1.3837923e+03 1.3837923e+03 -4.7286950e+03 - 1.3549403e+03 1.4121509e+03 -4.7286844e+03 - 1.3256104e+03 1.4400007e+03 -4.7286527e+03 - 1.2958181e+03 1.4673267e+03 -4.7286001e+03 - 1.2655790e+03 1.4941137e+03 -4.7285269e+03 - 1.2349088e+03 1.5203469e+03 -4.7284336e+03 - 1.2038231e+03 1.5460119e+03 -4.7283207e+03 - 1.1723376e+03 1.5710943e+03 -4.7281890e+03 - 1.1404678e+03 1.5955801e+03 -4.7280393e+03 - 1.1082291e+03 1.6194556e+03 -4.7278726e+03 - 1.0756370e+03 1.6427074e+03 -4.7276898e+03 - 1.0427065e+03 1.6653225e+03 -4.7274922e+03 - 1.0094528e+03 1.6872884e+03 -4.7272810e+03 - 9.7589072e+02 1.7085927e+03 -4.7270575e+03 - 9.4203485e+02 1.7292236e+03 -4.7268230e+03 - 9.0789960e+02 1.7491696e+03 -4.7265792e+03 - 8.7349912e+02 1.7684198e+03 -4.7263274e+03 - 8.3884729e+02 1.7869636e+03 -4.7260692e+03 - 8.0395771e+02 1.8047909e+03 -4.7258063e+03 - 7.6884369e+02 1.8218920e+03 -4.7255403e+03 - 7.3351824e+02 1.8382576e+03 -4.7252728e+03 - 6.9799405e+02 1.8538791e+03 -4.7250054e+03 - 6.6228350e+02 1.8687481e+03 -4.7247399e+03 - 6.2639868e+02 1.8828568e+03 -4.7244778e+03 - 5.9035134e+02 1.8961978e+03 -4.7242207e+03 - 5.5415293e+02 1.9087642e+03 -4.7239703e+03 - 5.1781460e+02 1.9205494e+03 -4.7237281e+03 - 4.8134720e+02 1.9315476e+03 -4.7234955e+03 - 4.4476127e+02 1.9417530e+03 -4.7232739e+03 - 4.0806712e+02 1.9511606e+03 -4.7230648e+03 - 3.7127474e+02 1.9597657e+03 -4.7228693e+03 - 3.3439392e+02 1.9675639e+03 -4.7226887e+03 - 2.9743419e+02 1.9745515e+03 -4.7225240e+03 - 2.6040488e+02 1.9807249e+03 -4.7223763e+03 - 2.2331513e+02 1.9860813e+03 -4.7222464e+03 - 1.8617389e+02 1.9906180e+03 -4.7221352e+03 - 1.4898998e+02 1.9943329e+03 -4.7220432e+03 - 1.1177209e+02 1.9972240e+03 -4.7219711e+03 - 7.4528794e+01 1.9992901e+03 -4.7219193e+03 - 3.7268613e+01 2.0005301e+03 -4.7218881e+03 - 0.0000000e+00 2.0009436e+03 -4.7218777e+03 - -3.7268613e+01 2.0005301e+03 -4.7218881e+03 - -7.4528794e+01 1.9992901e+03 -4.7219193e+03 - -1.1177209e+02 1.9972240e+03 -4.7219711e+03 - -1.4898998e+02 1.9943329e+03 -4.7220432e+03 - -1.8617389e+02 1.9906180e+03 -4.7221352e+03 - -2.2331513e+02 1.9860813e+03 -4.7222464e+03 - -2.6040488e+02 1.9807249e+03 -4.7223763e+03 - -2.9743419e+02 1.9745515e+03 -4.7225240e+03 - -3.3439392e+02 1.9675639e+03 -4.7226887e+03 - -3.7127474e+02 1.9597657e+03 -4.7228693e+03 - -4.0806712e+02 1.9511606e+03 -4.7230648e+03 - -4.4476127e+02 1.9417530e+03 -4.7232739e+03 - -4.8134720e+02 1.9315476e+03 -4.7234955e+03 - -5.1781460e+02 1.9205494e+03 -4.7237281e+03 - -5.5415293e+02 1.9087642e+03 -4.7239703e+03 - -5.9035134e+02 1.8961978e+03 -4.7242207e+03 - -6.2639868e+02 1.8828568e+03 -4.7244778e+03 - -6.6228350e+02 1.8687481e+03 -4.7247399e+03 - -6.9799405e+02 1.8538791e+03 -4.7250054e+03 - -7.3351824e+02 1.8382576e+03 -4.7252728e+03 - -7.6884369e+02 1.8218920e+03 -4.7255403e+03 - -8.0395771e+02 1.8047909e+03 -4.7258063e+03 - -8.3884729e+02 1.7869636e+03 -4.7260692e+03 - -8.7349912e+02 1.7684198e+03 -4.7263274e+03 - -9.0789960e+02 1.7491696e+03 -4.7265792e+03 - -9.4203485e+02 1.7292236e+03 -4.7268230e+03 - -9.7589072e+02 1.7085927e+03 -4.7270575e+03 - -1.0094528e+03 1.6872884e+03 -4.7272810e+03 - -1.0427065e+03 1.6653225e+03 -4.7274922e+03 - -1.0756370e+03 1.6427074e+03 -4.7276898e+03 - -1.1082291e+03 1.6194556e+03 -4.7278726e+03 - -1.1404678e+03 1.5955801e+03 -4.7280393e+03 - -1.1723376e+03 1.5710943e+03 -4.7281890e+03 - -1.2038231e+03 1.5460119e+03 -4.7283207e+03 - -1.2349088e+03 1.5203469e+03 -4.7284336e+03 - -1.2655790e+03 1.4941137e+03 -4.7285269e+03 - -1.2958181e+03 1.4673267e+03 -4.7286001e+03 - -1.3256104e+03 1.4400007e+03 -4.7286527e+03 - -1.3549403e+03 1.4121509e+03 -4.7286844e+03 - -1.3837923e+03 1.3837923e+03 -4.7286950e+03 - -1.4121509e+03 1.3549403e+03 -4.7286844e+03 - -1.4400007e+03 1.3256104e+03 -4.7286527e+03 - -1.4673267e+03 1.2958181e+03 -4.7286001e+03 - -1.4941137e+03 1.2655790e+03 -4.7285269e+03 - -1.5203469e+03 1.2349088e+03 -4.7284336e+03 - -1.5460119e+03 1.2038231e+03 -4.7283207e+03 - -1.5710943e+03 1.1723376e+03 -4.7281890e+03 - -1.5955801e+03 1.1404678e+03 -4.7280393e+03 - -1.6194556e+03 1.1082291e+03 -4.7278726e+03 - -1.6427074e+03 1.0756370e+03 -4.7276898e+03 - -1.6653225e+03 1.0427065e+03 -4.7274922e+03 - -1.6872884e+03 1.0094528e+03 -4.7272810e+03 - -1.7085927e+03 9.7589072e+02 -4.7270575e+03 - -1.7292236e+03 9.4203485e+02 -4.7268230e+03 - -1.7491696e+03 9.0789960e+02 -4.7265792e+03 - -1.7684198e+03 8.7349912e+02 -4.7263274e+03 - -1.7869636e+03 8.3884729e+02 -4.7260692e+03 - -1.8047909e+03 8.0395771e+02 -4.7258063e+03 - -1.8218920e+03 7.6884369e+02 -4.7255403e+03 - -1.8382576e+03 7.3351824e+02 -4.7252728e+03 - -1.8538791e+03 6.9799405e+02 -4.7250054e+03 - -1.8687481e+03 6.6228350e+02 -4.7247399e+03 - -1.8828568e+03 6.2639868e+02 -4.7244778e+03 - -1.8961978e+03 5.9035134e+02 -4.7242207e+03 - -1.9087642e+03 5.5415293e+02 -4.7239703e+03 - -1.9205494e+03 5.1781460e+02 -4.7237281e+03 - -1.9315476e+03 4.8134720e+02 -4.7234955e+03 - -1.9417530e+03 4.4476127e+02 -4.7232739e+03 - -1.9511606e+03 4.0806712e+02 -4.7230648e+03 - -1.9597657e+03 3.7127474e+02 -4.7228693e+03 - -1.9675639e+03 3.3439392e+02 -4.7226887e+03 - -1.9745515e+03 2.9743419e+02 -4.7225240e+03 - -1.9807249e+03 2.6040488e+02 -4.7223763e+03 - -1.9860813e+03 2.2331513e+02 -4.7222464e+03 - -1.9906180e+03 1.8617389e+02 -4.7221352e+03 - -1.9943329e+03 1.4898998e+02 -4.7220432e+03 - -1.9972240e+03 1.1177209e+02 -4.7219711e+03 - -1.9992901e+03 7.4528794e+01 -4.7219193e+03 - -2.0005301e+03 3.7268613e+01 -4.7218881e+03 - -2.0009436e+03 4.8134273e-09 -4.7218777e+03 - -2.0005301e+03 -3.7268613e+01 -4.7218881e+03 - -1.9992901e+03 -7.4528794e+01 -4.7219193e+03 - -1.9972240e+03 -1.1177209e+02 -4.7219711e+03 - -1.9943329e+03 -1.4898998e+02 -4.7220432e+03 - -1.9906180e+03 -1.8617389e+02 -4.7221352e+03 - -1.9860813e+03 -2.2331513e+02 -4.7222464e+03 - -1.9807249e+03 -2.6040488e+02 -4.7223763e+03 - -1.9745515e+03 -2.9743419e+02 -4.7225240e+03 - -1.9675639e+03 -3.3439392e+02 -4.7226887e+03 - -1.9597657e+03 -3.7127474e+02 -4.7228693e+03 - -1.9511606e+03 -4.0806712e+02 -4.7230648e+03 - -1.9417530e+03 -4.4476127e+02 -4.7232739e+03 - -1.9315476e+03 -4.8134720e+02 -4.7234955e+03 - -1.9205494e+03 -5.1781460e+02 -4.7237281e+03 - -1.9087642e+03 -5.5415293e+02 -4.7239703e+03 - -1.8961978e+03 -5.9035134e+02 -4.7242207e+03 - -1.8828568e+03 -6.2639868e+02 -4.7244778e+03 - -1.8687481e+03 -6.6228350e+02 -4.7247399e+03 - -1.8538791e+03 -6.9799405e+02 -4.7250054e+03 - -1.8382576e+03 -7.3351824e+02 -4.7252728e+03 - -1.8218920e+03 -7.6884369e+02 -4.7255403e+03 - -1.8047909e+03 -8.0395771e+02 -4.7258063e+03 - -1.7869636e+03 -8.3884729e+02 -4.7260692e+03 - -1.7684198e+03 -8.7349912e+02 -4.7263274e+03 - -1.7491696e+03 -9.0789960e+02 -4.7265792e+03 - -1.7292236e+03 -9.4203485e+02 -4.7268230e+03 - -1.7085927e+03 -9.7589072e+02 -4.7270575e+03 - -1.6872884e+03 -1.0094528e+03 -4.7272810e+03 - -1.6653225e+03 -1.0427065e+03 -4.7274922e+03 - -1.6427074e+03 -1.0756370e+03 -4.7276898e+03 - -1.6194556e+03 -1.1082291e+03 -4.7278726e+03 - -1.5955801e+03 -1.1404678e+03 -4.7280393e+03 - -1.5710943e+03 -1.1723376e+03 -4.7281890e+03 - -1.5460119e+03 -1.2038231e+03 -4.7283207e+03 - -1.5203469e+03 -1.2349088e+03 -4.7284336e+03 - -1.4941137e+03 -1.2655790e+03 -4.7285269e+03 - -1.4673267e+03 -1.2958181e+03 -4.7286001e+03 - -1.4400007e+03 -1.3256104e+03 -4.7286527e+03 - -1.4121509e+03 -1.3549403e+03 -4.7286844e+03 - -1.3837923e+03 -1.3837923e+03 -4.7286950e+03 - -1.3549403e+03 -1.4121509e+03 -4.7286844e+03 - -1.3256104e+03 -1.4400007e+03 -4.7286527e+03 - -1.2958181e+03 -1.4673267e+03 -4.7286001e+03 - -1.2655790e+03 -1.4941137e+03 -4.7285269e+03 - -1.2349088e+03 -1.5203469e+03 -4.7284336e+03 - -1.2038231e+03 -1.5460119e+03 -4.7283207e+03 - -1.1723376e+03 -1.5710943e+03 -4.7281890e+03 - -1.1404678e+03 -1.5955801e+03 -4.7280393e+03 - -1.1082291e+03 -1.6194556e+03 -4.7278726e+03 - -1.0756370e+03 -1.6427074e+03 -4.7276898e+03 - -1.0427065e+03 -1.6653225e+03 -4.7274922e+03 - -1.0094528e+03 -1.6872884e+03 -4.7272810e+03 - -9.7589072e+02 -1.7085927e+03 -4.7270575e+03 - -9.4203485e+02 -1.7292236e+03 -4.7268230e+03 - -9.0789960e+02 -1.7491696e+03 -4.7265792e+03 - -8.7349912e+02 -1.7684198e+03 -4.7263274e+03 - -8.3884729e+02 -1.7869636e+03 -4.7260692e+03 - -8.0395771e+02 -1.8047909e+03 -4.7258063e+03 - -7.6884369e+02 -1.8218920e+03 -4.7255403e+03 - -7.3351824e+02 -1.8382576e+03 -4.7252728e+03 - -6.9799405e+02 -1.8538791e+03 -4.7250054e+03 - -6.6228350e+02 -1.8687481e+03 -4.7247399e+03 - -6.2639868e+02 -1.8828568e+03 -4.7244778e+03 - -5.9035134e+02 -1.8961978e+03 -4.7242207e+03 - -5.5415293e+02 -1.9087642e+03 -4.7239703e+03 - -5.1781460e+02 -1.9205494e+03 -4.7237281e+03 - -4.8134720e+02 -1.9315476e+03 -4.7234955e+03 - -4.4476127e+02 -1.9417530e+03 -4.7232739e+03 - -4.0806712e+02 -1.9511606e+03 -4.7230648e+03 - -3.7127474e+02 -1.9597657e+03 -4.7228693e+03 - -3.3439392e+02 -1.9675639e+03 -4.7226887e+03 - -2.9743419e+02 -1.9745515e+03 -4.7225240e+03 - -2.6040488e+02 -1.9807249e+03 -4.7223763e+03 - -2.2331513e+02 -1.9860813e+03 -4.7222464e+03 - -1.8617389e+02 -1.9906180e+03 -4.7221352e+03 - -1.4898998e+02 -1.9943329e+03 -4.7220432e+03 - -1.1177209e+02 -1.9972240e+03 -4.7219711e+03 - -7.4528794e+01 -1.9992901e+03 -4.7219193e+03 - -3.7268613e+01 -2.0005301e+03 -4.7218881e+03 - 0.0000000e+00 -2.0009436e+03 -4.7218777e+03 - 3.7268613e+01 -2.0005301e+03 -4.7218881e+03 - 7.4528794e+01 -1.9992901e+03 -4.7219193e+03 - 1.1177209e+02 -1.9972240e+03 -4.7219711e+03 - 1.4898998e+02 -1.9943329e+03 -4.7220432e+03 - 1.8617389e+02 -1.9906180e+03 -4.7221352e+03 - 2.2331513e+02 -1.9860813e+03 -4.7222464e+03 - 2.6040488e+02 -1.9807249e+03 -4.7223763e+03 - 2.9743419e+02 -1.9745515e+03 -4.7225240e+03 - 3.3439392e+02 -1.9675639e+03 -4.7226887e+03 - 3.7127474e+02 -1.9597657e+03 -4.7228693e+03 - 4.0806712e+02 -1.9511606e+03 -4.7230648e+03 - 4.4476127e+02 -1.9417530e+03 -4.7232739e+03 - 4.8134720e+02 -1.9315476e+03 -4.7234955e+03 - 5.1781460e+02 -1.9205494e+03 -4.7237281e+03 - 5.5415293e+02 -1.9087642e+03 -4.7239703e+03 - 5.9035134e+02 -1.8961978e+03 -4.7242207e+03 - 6.2639868e+02 -1.8828568e+03 -4.7244778e+03 - 6.6228350e+02 -1.8687481e+03 -4.7247399e+03 - 6.9799405e+02 -1.8538791e+03 -4.7250054e+03 - 7.3351824e+02 -1.8382576e+03 -4.7252728e+03 - 7.6884369e+02 -1.8218920e+03 -4.7255403e+03 - 8.0395771e+02 -1.8047909e+03 -4.7258063e+03 - 8.3884729e+02 -1.7869636e+03 -4.7260692e+03 - 8.7349912e+02 -1.7684198e+03 -4.7263274e+03 - 9.0789960e+02 -1.7491696e+03 -4.7265792e+03 - 9.4203485e+02 -1.7292236e+03 -4.7268230e+03 - 9.7589072e+02 -1.7085927e+03 -4.7270575e+03 - 1.0094528e+03 -1.6872884e+03 -4.7272810e+03 - 1.0427065e+03 -1.6653225e+03 -4.7274922e+03 - 1.0756370e+03 -1.6427074e+03 -4.7276898e+03 - 1.1082291e+03 -1.6194556e+03 -4.7278726e+03 - 1.1404678e+03 -1.5955801e+03 -4.7280393e+03 - 1.1723376e+03 -1.5710943e+03 -4.7281890e+03 - 1.2038231e+03 -1.5460119e+03 -4.7283207e+03 - 1.2349088e+03 -1.5203469e+03 -4.7284336e+03 - 1.2655790e+03 -1.4941137e+03 -4.7285269e+03 - 1.2958181e+03 -1.4673267e+03 -4.7286001e+03 - 1.3256104e+03 -1.4400007e+03 -4.7286527e+03 - 1.3549403e+03 -1.4121509e+03 -4.7286844e+03 - 1.3837923e+03 -1.3837923e+03 -4.7286950e+03 - 1.4121509e+03 -1.3549403e+03 -4.7286844e+03 - 1.4400007e+03 -1.3256104e+03 -4.7286527e+03 - 1.4673267e+03 -1.2958181e+03 -4.7286001e+03 - 1.4941137e+03 -1.2655790e+03 -4.7285269e+03 - 1.5203469e+03 -1.2349088e+03 -4.7284336e+03 - 1.5460119e+03 -1.2038231e+03 -4.7283207e+03 - 1.5710943e+03 -1.1723376e+03 -4.7281890e+03 - 1.5955801e+03 -1.1404678e+03 -4.7280393e+03 - 1.6194556e+03 -1.1082291e+03 -4.7278726e+03 - 1.6427074e+03 -1.0756370e+03 -4.7276898e+03 - 1.6653225e+03 -1.0427065e+03 -4.7274922e+03 - 1.6872884e+03 -1.0094528e+03 -4.7272810e+03 - 1.7085927e+03 -9.7589072e+02 -4.7270575e+03 - 1.7292236e+03 -9.4203485e+02 -4.7268230e+03 - 1.7491696e+03 -9.0789960e+02 -4.7265792e+03 - 1.7684198e+03 -8.7349912e+02 -4.7263274e+03 - 1.7869636e+03 -8.3884729e+02 -4.7260692e+03 - 1.8047909e+03 -8.0395771e+02 -4.7258063e+03 - 1.8218920e+03 -7.6884369e+02 -4.7255403e+03 - 1.8382576e+03 -7.3351824e+02 -4.7252728e+03 - 1.8538791e+03 -6.9799405e+02 -4.7250054e+03 - 1.8687481e+03 -6.6228350e+02 -4.7247399e+03 - 1.8828568e+03 -6.2639868e+02 -4.7244778e+03 - 1.8961978e+03 -5.9035134e+02 -4.7242207e+03 - 1.9087642e+03 -5.5415293e+02 -4.7239703e+03 - 1.9205494e+03 -5.1781460e+02 -4.7237281e+03 - 1.9315476e+03 -4.8134720e+02 -4.7234955e+03 - 1.9417530e+03 -4.4476127e+02 -4.7232739e+03 - 1.9511606e+03 -4.0806712e+02 -4.7230648e+03 - 1.9597657e+03 -3.7127474e+02 -4.7228693e+03 - 1.9675639e+03 -3.3439392e+02 -4.7226887e+03 - 1.9745515e+03 -2.9743419e+02 -4.7225240e+03 - 1.9807249e+03 -2.6040488e+02 -4.7223763e+03 - 1.9860813e+03 -2.2331513e+02 -4.7222464e+03 - 1.9906180e+03 -1.8617389e+02 -4.7221352e+03 - 1.9943329e+03 -1.4898998e+02 -4.7220432e+03 - 1.9972240e+03 -1.1177209e+02 -4.7219711e+03 - 1.9992901e+03 -7.4528794e+01 -4.7219193e+03 - 2.0005301e+03 -3.7268613e+01 -4.7218881e+03 - 2.0009436e+03 4.8134273e-09 -4.7218777e+03 - 1.8578557e+03 0.0000000e+00 -4.7517897e+03 - 1.8574745e+03 3.4888398e+01 -4.7517974e+03 - 1.8563311e+03 6.9767900e+01 -4.7518204e+03 - 1.8544262e+03 1.0462959e+02 -4.7518586e+03 - 1.8517606e+03 1.3946453e+02 -4.7519118e+03 - 1.8483356e+03 1.7426370e+02 -4.7519796e+03 - 1.8441530e+03 2.0901803e+02 -4.7520616e+03 - 1.8392148e+03 2.4371834e+02 -4.7521573e+03 - 1.8335235e+03 2.7835538e+02 -4.7522662e+03 - 1.8270819e+03 3.1291974e+02 -4.7523875e+03 - 1.8198931e+03 3.4740188e+02 -4.7525206e+03 - 1.8119609e+03 3.8179214e+02 -4.7526647e+03 - 1.8032893e+03 4.1608065e+02 -4.7528188e+03 - 1.7938825e+03 4.5025739e+02 -4.7529820e+03 - 1.7837454e+03 4.8431217e+02 -4.7531533e+03 - 1.7728831e+03 5.1823456e+02 -4.7533317e+03 - 1.7613013e+03 5.5201398e+02 -4.7535161e+03 - 1.7490059e+03 5.8563959e+02 -4.7537053e+03 - 1.7360032e+03 6.1910037e+02 -4.7538982e+03 - 1.7223000e+03 6.5238508e+02 -4.7540936e+03 - 1.7079035e+03 6.8548224e+02 -4.7542903e+03 - 1.6928212e+03 7.1838019e+02 -4.7544872e+03 - 1.6770611e+03 7.5106702e+02 -4.7546829e+03 - 1.6606315e+03 7.8353062e+02 -4.7548762e+03 - 1.6435411e+03 8.1575869e+02 -4.7550660e+03 - 1.6257990e+03 8.4773870e+02 -4.7552512e+03 - 1.6074147e+03 8.7945796e+02 -4.7554304e+03 - 1.5883980e+03 9.1090358e+02 -4.7556027e+03 - 1.5687591e+03 9.4206252e+02 -4.7557670e+03 - 1.5485086e+03 9.7292157e+02 -4.7559222e+03 - 1.5276572e+03 1.0034674e+03 -4.7560674e+03 - 1.5062163e+03 1.0336865e+03 -4.7562016e+03 - 1.4841972e+03 1.0635654e+03 -4.7563241e+03 - 1.4616118e+03 1.0930903e+03 -4.7564340e+03 - 1.4384721e+03 1.1222477e+03 -4.7565308e+03 - 1.4147905e+03 1.1510236e+03 -4.7566136e+03 - 1.3905795e+03 1.1794043e+03 -4.7566822e+03 - 1.3658519e+03 1.2073761e+03 -4.7567359e+03 - 1.3406207e+03 1.2349252e+03 -4.7567746e+03 - 1.3148991e+03 1.2620378e+03 -4.7567978e+03 - 1.2887003e+03 1.2887003e+03 -4.7568056e+03 - 1.2620378e+03 1.3148991e+03 -4.7567978e+03 - 1.2349252e+03 1.3406207e+03 -4.7567746e+03 - 1.2073761e+03 1.3658519e+03 -4.7567359e+03 - 1.1794043e+03 1.3905795e+03 -4.7566822e+03 - 1.1510236e+03 1.4147905e+03 -4.7566136e+03 - 1.1222477e+03 1.4384721e+03 -4.7565308e+03 - 1.0930903e+03 1.4616118e+03 -4.7564340e+03 - 1.0635654e+03 1.4841972e+03 -4.7563241e+03 - 1.0336865e+03 1.5062163e+03 -4.7562016e+03 - 1.0034674e+03 1.5276572e+03 -4.7560674e+03 - 9.7292157e+02 1.5485086e+03 -4.7559222e+03 - 9.4206252e+02 1.5687591e+03 -4.7557670e+03 - 9.1090358e+02 1.5883980e+03 -4.7556027e+03 - 8.7945796e+02 1.6074147e+03 -4.7554304e+03 - 8.4773870e+02 1.6257990e+03 -4.7552512e+03 - 8.1575869e+02 1.6435411e+03 -4.7550660e+03 - 7.8353062e+02 1.6606315e+03 -4.7548762e+03 - 7.5106702e+02 1.6770611e+03 -4.7546829e+03 - 7.1838019e+02 1.6928212e+03 -4.7544872e+03 - 6.8548224e+02 1.7079035e+03 -4.7542903e+03 - 6.5238508e+02 1.7223000e+03 -4.7540936e+03 - 6.1910037e+02 1.7360032e+03 -4.7538982e+03 - 5.8563959e+02 1.7490059e+03 -4.7537053e+03 - 5.5201398e+02 1.7613013e+03 -4.7535161e+03 - 5.1823456e+02 1.7728831e+03 -4.7533317e+03 - 4.8431217e+02 1.7837454e+03 -4.7531533e+03 - 4.5025739e+02 1.7938825e+03 -4.7529820e+03 - 4.1608065e+02 1.8032893e+03 -4.7528188e+03 - 3.8179214e+02 1.8119609e+03 -4.7526647e+03 - 3.4740188e+02 1.8198931e+03 -4.7525206e+03 - 3.1291974e+02 1.8270819e+03 -4.7523875e+03 - 2.7835538e+02 1.8335235e+03 -4.7522662e+03 - 2.4371834e+02 1.8392148e+03 -4.7521573e+03 - 2.0901803e+02 1.8441530e+03 -4.7520616e+03 - 1.7426370e+02 1.8483356e+03 -4.7519796e+03 - 1.3946453e+02 1.8517606e+03 -4.7519118e+03 - 1.0462959e+02 1.8544262e+03 -4.7518586e+03 - 6.9767900e+01 1.8563311e+03 -4.7518204e+03 - 3.4888398e+01 1.8574745e+03 -4.7517974e+03 - 0.0000000e+00 1.8578557e+03 -4.7517897e+03 - -3.4888398e+01 1.8574745e+03 -4.7517974e+03 - -6.9767900e+01 1.8563311e+03 -4.7518204e+03 - -1.0462959e+02 1.8544262e+03 -4.7518586e+03 - -1.3946453e+02 1.8517606e+03 -4.7519118e+03 - -1.7426370e+02 1.8483356e+03 -4.7519796e+03 - -2.0901803e+02 1.8441530e+03 -4.7520616e+03 - -2.4371834e+02 1.8392148e+03 -4.7521573e+03 - -2.7835538e+02 1.8335235e+03 -4.7522662e+03 - -3.1291974e+02 1.8270819e+03 -4.7523875e+03 - -3.4740188e+02 1.8198931e+03 -4.7525206e+03 - -3.8179214e+02 1.8119609e+03 -4.7526647e+03 - -4.1608065e+02 1.8032893e+03 -4.7528188e+03 - -4.5025739e+02 1.7938825e+03 -4.7529820e+03 - -4.8431217e+02 1.7837454e+03 -4.7531533e+03 - -5.1823456e+02 1.7728831e+03 -4.7533317e+03 - -5.5201398e+02 1.7613013e+03 -4.7535161e+03 - -5.8563959e+02 1.7490059e+03 -4.7537053e+03 - -6.1910037e+02 1.7360032e+03 -4.7538982e+03 - -6.5238508e+02 1.7223000e+03 -4.7540936e+03 - -6.8548224e+02 1.7079035e+03 -4.7542903e+03 - -7.1838019e+02 1.6928212e+03 -4.7544872e+03 - -7.5106702e+02 1.6770611e+03 -4.7546829e+03 - -7.8353062e+02 1.6606315e+03 -4.7548762e+03 - -8.1575869e+02 1.6435411e+03 -4.7550660e+03 - -8.4773870e+02 1.6257990e+03 -4.7552512e+03 - -8.7945796e+02 1.6074147e+03 -4.7554304e+03 - -9.1090358e+02 1.5883980e+03 -4.7556027e+03 - -9.4206252e+02 1.5687591e+03 -4.7557670e+03 - -9.7292157e+02 1.5485086e+03 -4.7559222e+03 - -1.0034674e+03 1.5276572e+03 -4.7560674e+03 - -1.0336865e+03 1.5062163e+03 -4.7562016e+03 - -1.0635654e+03 1.4841972e+03 -4.7563241e+03 - -1.0930903e+03 1.4616118e+03 -4.7564340e+03 - -1.1222477e+03 1.4384721e+03 -4.7565308e+03 - -1.1510236e+03 1.4147905e+03 -4.7566136e+03 - -1.1794043e+03 1.3905795e+03 -4.7566822e+03 - -1.2073761e+03 1.3658519e+03 -4.7567359e+03 - -1.2349252e+03 1.3406207e+03 -4.7567746e+03 - -1.2620378e+03 1.3148991e+03 -4.7567978e+03 - -1.2887003e+03 1.2887003e+03 -4.7568056e+03 - -1.3148991e+03 1.2620378e+03 -4.7567978e+03 - -1.3406207e+03 1.2349252e+03 -4.7567746e+03 - -1.3658519e+03 1.2073761e+03 -4.7567359e+03 - -1.3905795e+03 1.1794043e+03 -4.7566822e+03 - -1.4147905e+03 1.1510236e+03 -4.7566136e+03 - -1.4384721e+03 1.1222477e+03 -4.7565308e+03 - -1.4616118e+03 1.0930903e+03 -4.7564340e+03 - -1.4841972e+03 1.0635654e+03 -4.7563241e+03 - -1.5062163e+03 1.0336865e+03 -4.7562016e+03 - -1.5276572e+03 1.0034674e+03 -4.7560674e+03 - -1.5485086e+03 9.7292157e+02 -4.7559222e+03 - -1.5687591e+03 9.4206252e+02 -4.7557670e+03 - -1.5883980e+03 9.1090358e+02 -4.7556027e+03 - -1.6074147e+03 8.7945796e+02 -4.7554304e+03 - -1.6257990e+03 8.4773870e+02 -4.7552512e+03 - -1.6435411e+03 8.1575869e+02 -4.7550660e+03 - -1.6606315e+03 7.8353062e+02 -4.7548762e+03 - -1.6770611e+03 7.5106702e+02 -4.7546829e+03 - -1.6928212e+03 7.1838019e+02 -4.7544872e+03 - -1.7079035e+03 6.8548224e+02 -4.7542903e+03 - -1.7223000e+03 6.5238508e+02 -4.7540936e+03 - -1.7360032e+03 6.1910037e+02 -4.7538982e+03 - -1.7490059e+03 5.8563959e+02 -4.7537053e+03 - -1.7613013e+03 5.5201398e+02 -4.7535161e+03 - -1.7728831e+03 5.1823456e+02 -4.7533317e+03 - -1.7837454e+03 4.8431217e+02 -4.7531533e+03 - -1.7938825e+03 4.5025739e+02 -4.7529820e+03 - -1.8032893e+03 4.1608065e+02 -4.7528188e+03 - -1.8119609e+03 3.8179214e+02 -4.7526647e+03 - -1.8198931e+03 3.4740188e+02 -4.7525206e+03 - -1.8270819e+03 3.1291974e+02 -4.7523875e+03 - -1.8335235e+03 2.7835538e+02 -4.7522662e+03 - -1.8392148e+03 2.4371834e+02 -4.7521573e+03 - -1.8441530e+03 2.0901803e+02 -4.7520616e+03 - -1.8483356e+03 1.7426370e+02 -4.7519796e+03 - -1.8517606e+03 1.3946453e+02 -4.7519118e+03 - -1.8544262e+03 1.0462959e+02 -4.7518586e+03 - -1.8563311e+03 6.9767900e+01 -4.7518204e+03 - -1.8574745e+03 3.4888398e+01 -4.7517974e+03 - -1.8578557e+03 0.0000000e+00 -4.7517897e+03 - -1.8574745e+03 -3.4888398e+01 -4.7517974e+03 - -1.8563311e+03 -6.9767900e+01 -4.7518204e+03 - -1.8544262e+03 -1.0462959e+02 -4.7518586e+03 - -1.8517606e+03 -1.3946453e+02 -4.7519118e+03 - -1.8483356e+03 -1.7426370e+02 -4.7519796e+03 - -1.8441530e+03 -2.0901803e+02 -4.7520616e+03 - -1.8392148e+03 -2.4371834e+02 -4.7521573e+03 - -1.8335235e+03 -2.7835538e+02 -4.7522662e+03 - -1.8270819e+03 -3.1291974e+02 -4.7523875e+03 - -1.8198931e+03 -3.4740188e+02 -4.7525206e+03 - -1.8119609e+03 -3.8179214e+02 -4.7526647e+03 - -1.8032893e+03 -4.1608065e+02 -4.7528188e+03 - -1.7938825e+03 -4.5025739e+02 -4.7529820e+03 - -1.7837454e+03 -4.8431217e+02 -4.7531533e+03 - -1.7728831e+03 -5.1823456e+02 -4.7533317e+03 - -1.7613013e+03 -5.5201398e+02 -4.7535161e+03 - -1.7490059e+03 -5.8563959e+02 -4.7537053e+03 - -1.7360032e+03 -6.1910037e+02 -4.7538982e+03 - -1.7223000e+03 -6.5238508e+02 -4.7540936e+03 - -1.7079035e+03 -6.8548224e+02 -4.7542903e+03 - -1.6928212e+03 -7.1838019e+02 -4.7544872e+03 - -1.6770611e+03 -7.5106702e+02 -4.7546829e+03 - -1.6606315e+03 -7.8353062e+02 -4.7548762e+03 - -1.6435411e+03 -8.1575869e+02 -4.7550660e+03 - -1.6257990e+03 -8.4773870e+02 -4.7552512e+03 - -1.6074147e+03 -8.7945796e+02 -4.7554304e+03 - -1.5883980e+03 -9.1090358e+02 -4.7556027e+03 - -1.5687591e+03 -9.4206252e+02 -4.7557670e+03 - -1.5485086e+03 -9.7292157e+02 -4.7559222e+03 - -1.5276572e+03 -1.0034674e+03 -4.7560674e+03 - -1.5062163e+03 -1.0336865e+03 -4.7562016e+03 - -1.4841972e+03 -1.0635654e+03 -4.7563241e+03 - -1.4616118e+03 -1.0930903e+03 -4.7564340e+03 - -1.4384721e+03 -1.1222477e+03 -4.7565308e+03 - -1.4147905e+03 -1.1510236e+03 -4.7566136e+03 - -1.3905795e+03 -1.1794043e+03 -4.7566822e+03 - -1.3658519e+03 -1.2073761e+03 -4.7567359e+03 - -1.3406207e+03 -1.2349252e+03 -4.7567746e+03 - -1.3148991e+03 -1.2620378e+03 -4.7567978e+03 - -1.2887003e+03 -1.2887003e+03 -4.7568056e+03 - -1.2620378e+03 -1.3148991e+03 -4.7567978e+03 - -1.2349252e+03 -1.3406207e+03 -4.7567746e+03 - -1.2073761e+03 -1.3658519e+03 -4.7567359e+03 - -1.1794043e+03 -1.3905795e+03 -4.7566822e+03 - -1.1510236e+03 -1.4147905e+03 -4.7566136e+03 - -1.1222477e+03 -1.4384721e+03 -4.7565308e+03 - -1.0930903e+03 -1.4616118e+03 -4.7564340e+03 - -1.0635654e+03 -1.4841972e+03 -4.7563241e+03 - -1.0336865e+03 -1.5062163e+03 -4.7562016e+03 - -1.0034674e+03 -1.5276572e+03 -4.7560674e+03 - -9.7292157e+02 -1.5485086e+03 -4.7559222e+03 - -9.4206252e+02 -1.5687591e+03 -4.7557670e+03 - -9.1090358e+02 -1.5883980e+03 -4.7556027e+03 - -8.7945796e+02 -1.6074147e+03 -4.7554304e+03 - -8.4773870e+02 -1.6257990e+03 -4.7552512e+03 - -8.1575869e+02 -1.6435411e+03 -4.7550660e+03 - -7.8353062e+02 -1.6606315e+03 -4.7548762e+03 - -7.5106702e+02 -1.6770611e+03 -4.7546829e+03 - -7.1838019e+02 -1.6928212e+03 -4.7544872e+03 - -6.8548224e+02 -1.7079035e+03 -4.7542903e+03 - -6.5238508e+02 -1.7223000e+03 -4.7540936e+03 - -6.1910037e+02 -1.7360032e+03 -4.7538982e+03 - -5.8563959e+02 -1.7490059e+03 -4.7537053e+03 - -5.5201398e+02 -1.7613013e+03 -4.7535161e+03 - -5.1823456e+02 -1.7728831e+03 -4.7533317e+03 - -4.8431217e+02 -1.7837454e+03 -4.7531533e+03 - -4.5025739e+02 -1.7938825e+03 -4.7529820e+03 - -4.1608065e+02 -1.8032893e+03 -4.7528188e+03 - -3.8179214e+02 -1.8119609e+03 -4.7526647e+03 - -3.4740188e+02 -1.8198931e+03 -4.7525206e+03 - -3.1291974e+02 -1.8270819e+03 -4.7523875e+03 - -2.7835538e+02 -1.8335235e+03 -4.7522662e+03 - -2.4371834e+02 -1.8392148e+03 -4.7521573e+03 - -2.0901803e+02 -1.8441530e+03 -4.7520616e+03 - -1.7426370e+02 -1.8483356e+03 -4.7519796e+03 - -1.3946453e+02 -1.8517606e+03 -4.7519118e+03 - -1.0462959e+02 -1.8544262e+03 -4.7518586e+03 - -6.9767900e+01 -1.8563311e+03 -4.7518204e+03 - -3.4888398e+01 -1.8574745e+03 -4.7517974e+03 - -4.8134273e-09 -1.8578557e+03 -4.7517897e+03 - 3.4888398e+01 -1.8574745e+03 -4.7517974e+03 - 6.9767900e+01 -1.8563311e+03 -4.7518204e+03 - 1.0462959e+02 -1.8544262e+03 -4.7518586e+03 - 1.3946453e+02 -1.8517606e+03 -4.7519118e+03 - 1.7426370e+02 -1.8483356e+03 -4.7519796e+03 - 2.0901803e+02 -1.8441530e+03 -4.7520616e+03 - 2.4371834e+02 -1.8392148e+03 -4.7521573e+03 - 2.7835538e+02 -1.8335235e+03 -4.7522662e+03 - 3.1291974e+02 -1.8270819e+03 -4.7523875e+03 - 3.4740188e+02 -1.8198931e+03 -4.7525206e+03 - 3.8179214e+02 -1.8119609e+03 -4.7526647e+03 - 4.1608065e+02 -1.8032893e+03 -4.7528188e+03 - 4.5025739e+02 -1.7938825e+03 -4.7529820e+03 - 4.8431217e+02 -1.7837454e+03 -4.7531533e+03 - 5.1823456e+02 -1.7728831e+03 -4.7533317e+03 - 5.5201398e+02 -1.7613013e+03 -4.7535161e+03 - 5.8563959e+02 -1.7490059e+03 -4.7537053e+03 - 6.1910037e+02 -1.7360032e+03 -4.7538982e+03 - 6.5238508e+02 -1.7223000e+03 -4.7540936e+03 - 6.8548224e+02 -1.7079035e+03 -4.7542903e+03 - 7.1838019e+02 -1.6928212e+03 -4.7544872e+03 - 7.5106702e+02 -1.6770611e+03 -4.7546829e+03 - 7.8353062e+02 -1.6606315e+03 -4.7548762e+03 - 8.1575869e+02 -1.6435411e+03 -4.7550660e+03 - 8.4773870e+02 -1.6257990e+03 -4.7552512e+03 - 8.7945796e+02 -1.6074147e+03 -4.7554304e+03 - 9.1090358e+02 -1.5883980e+03 -4.7556027e+03 - 9.4206252e+02 -1.5687591e+03 -4.7557670e+03 - 9.7292157e+02 -1.5485086e+03 -4.7559222e+03 - 1.0034674e+03 -1.5276572e+03 -4.7560674e+03 - 1.0336865e+03 -1.5062163e+03 -4.7562016e+03 - 1.0635654e+03 -1.4841972e+03 -4.7563241e+03 - 1.0930903e+03 -1.4616118e+03 -4.7564340e+03 - 1.1222477e+03 -1.4384721e+03 -4.7565308e+03 - 1.1510236e+03 -1.4147905e+03 -4.7566136e+03 - 1.1794043e+03 -1.3905795e+03 -4.7566822e+03 - 1.2073761e+03 -1.3658519e+03 -4.7567359e+03 - 1.2349252e+03 -1.3406207e+03 -4.7567746e+03 - 1.2620378e+03 -1.3148991e+03 -4.7567978e+03 - 1.2887003e+03 -1.2887003e+03 -4.7568056e+03 - 1.3148991e+03 -1.2620378e+03 -4.7567978e+03 - 1.3406207e+03 -1.2349252e+03 -4.7567746e+03 - 1.3658519e+03 -1.2073761e+03 -4.7567359e+03 - 1.3905795e+03 -1.1794043e+03 -4.7566822e+03 - 1.4147905e+03 -1.1510236e+03 -4.7566136e+03 - 1.4384721e+03 -1.1222477e+03 -4.7565308e+03 - 1.4616118e+03 -1.0930903e+03 -4.7564340e+03 - 1.4841972e+03 -1.0635654e+03 -4.7563241e+03 - 1.5062163e+03 -1.0336865e+03 -4.7562016e+03 - 1.5276572e+03 -1.0034674e+03 -4.7560674e+03 - 1.5485086e+03 -9.7292157e+02 -4.7559222e+03 - 1.5687591e+03 -9.4206252e+02 -4.7557670e+03 - 1.5883980e+03 -9.1090358e+02 -4.7556027e+03 - 1.6074147e+03 -8.7945796e+02 -4.7554304e+03 - 1.6257990e+03 -8.4773870e+02 -4.7552512e+03 - 1.6435411e+03 -8.1575869e+02 -4.7550660e+03 - 1.6606315e+03 -7.8353062e+02 -4.7548762e+03 - 1.6770611e+03 -7.5106702e+02 -4.7546829e+03 - 1.6928212e+03 -7.1838019e+02 -4.7544872e+03 - 1.7079035e+03 -6.8548224e+02 -4.7542903e+03 - 1.7223000e+03 -6.5238508e+02 -4.7540936e+03 - 1.7360032e+03 -6.1910037e+02 -4.7538982e+03 - 1.7490059e+03 -5.8563959e+02 -4.7537053e+03 - 1.7613013e+03 -5.5201398e+02 -4.7535161e+03 - 1.7728831e+03 -5.1823456e+02 -4.7533317e+03 - 1.7837454e+03 -4.8431217e+02 -4.7531533e+03 - 1.7938825e+03 -4.5025739e+02 -4.7529820e+03 - 1.8032893e+03 -4.1608065e+02 -4.7528188e+03 - 1.8119609e+03 -3.8179214e+02 -4.7526647e+03 - 1.8198931e+03 -3.4740188e+02 -4.7525206e+03 - 1.8270819e+03 -3.1291974e+02 -4.7523875e+03 - 1.8335235e+03 -2.7835538e+02 -4.7522662e+03 - 1.8392148e+03 -2.4371834e+02 -4.7521573e+03 - 1.8441530e+03 -2.0901803e+02 -4.7520616e+03 - 1.8483356e+03 -1.7426370e+02 -4.7519796e+03 - 1.8517606e+03 -1.3946453e+02 -4.7519118e+03 - 1.8544262e+03 -1.0462959e+02 -4.7518586e+03 - 1.8563311e+03 -6.9767900e+01 -4.7518204e+03 - 1.8574745e+03 -3.4888398e+01 -4.7517974e+03 - 1.8578557e+03 -4.8134273e-09 -4.7517897e+03 - 1.7063204e+03 0.0000000e+00 -4.7803748e+03 - 1.7059730e+03 3.2290898e+01 -4.7803802e+03 - 1.7049309e+03 6.4572726e+01 -4.7803965e+03 - 1.7031946e+03 9.6836402e+01 -4.7804234e+03 - 1.7007651e+03 1.2907282e+02 -4.7804610e+03 - 1.6976435e+03 1.6127283e+02 -4.7805088e+03 - 1.6938314e+03 1.9342724e+02 -4.7805667e+03 - 1.6893307e+03 2.2552681e+02 -4.7806343e+03 - 1.6841436e+03 2.5756221e+02 -4.7807111e+03 - 1.6782728e+03 2.8952403e+02 -4.7807968e+03 - 1.6717211e+03 3.2140279e+02 -4.7808907e+03 - 1.6644919e+03 3.5318888e+02 -4.7809923e+03 - 1.6565888e+03 3.8487261e+02 -4.7811010e+03 - 1.6480158e+03 4.1644415e+02 -4.7812162e+03 - 1.6387772e+03 4.4789357e+02 -4.7813370e+03 - 1.6288778e+03 4.7921080e+02 -4.7814628e+03 - 1.6183225e+03 5.1038563e+02 -4.7815929e+03 - 1.6071167e+03 5.4140773e+02 -4.7817263e+03 - 1.5952662e+03 5.7226661e+02 -4.7818623e+03 - 1.5827770e+03 6.0295167e+02 -4.7820001e+03 - 1.5696555e+03 6.3345215e+02 -4.7821387e+03 - 1.5559085e+03 6.6375715e+02 -4.7822774e+03 - 1.5415430e+03 6.9385563e+02 -4.7824153e+03 - 1.5265664e+03 7.2373643e+02 -4.7825515e+03 - 1.5109865e+03 7.5338826e+02 -4.7826853e+03 - 1.4948113e+03 7.8279970e+02 -4.7828157e+03 - 1.4780492e+03 8.1195920e+02 -4.7829419e+03 - 1.4607088e+03 8.4085513e+02 -4.7830633e+03 - 1.4427990e+03 8.6947575e+02 -4.7831789e+03 - 1.4243292e+03 8.9780922e+02 -4.7832882e+03 - 1.4053088e+03 9.2584364e+02 -4.7833904e+03 - 1.3857476e+03 9.5356704e+02 -4.7834849e+03 - 1.3656556e+03 9.8096738e+02 -4.7835711e+03 - 1.3450432e+03 1.0080326e+03 -4.7836484e+03 - 1.3239208e+03 1.0347506e+03 -4.7837165e+03 - 1.3022992e+03 1.0611093e+03 -4.7837748e+03 - 1.2801893e+03 1.0870967e+03 -4.7838230e+03 - 1.2576022e+03 1.1127005e+03 -4.7838609e+03 - 1.2345492e+03 1.1379089e+03 -4.7838880e+03 - 1.2110417e+03 1.1627098e+03 -4.7839044e+03 - 1.1870913e+03 1.1870913e+03 -4.7839099e+03 - 1.1627098e+03 1.2110417e+03 -4.7839044e+03 - 1.1379089e+03 1.2345492e+03 -4.7838880e+03 - 1.1127005e+03 1.2576022e+03 -4.7838609e+03 - 1.0870967e+03 1.2801893e+03 -4.7838230e+03 - 1.0611093e+03 1.3022992e+03 -4.7837748e+03 - 1.0347506e+03 1.3239208e+03 -4.7837165e+03 - 1.0080326e+03 1.3450432e+03 -4.7836484e+03 - 9.8096738e+02 1.3656556e+03 -4.7835711e+03 - 9.5356704e+02 1.3857476e+03 -4.7834849e+03 - 9.2584364e+02 1.4053088e+03 -4.7833904e+03 - 8.9780922e+02 1.4243292e+03 -4.7832882e+03 - 8.6947575e+02 1.4427990e+03 -4.7831789e+03 - 8.4085513e+02 1.4607088e+03 -4.7830633e+03 - 8.1195920e+02 1.4780492e+03 -4.7829419e+03 - 7.8279970e+02 1.4948113e+03 -4.7828157e+03 - 7.5338826e+02 1.5109865e+03 -4.7826853e+03 - 7.2373643e+02 1.5265664e+03 -4.7825515e+03 - 6.9385563e+02 1.5415430e+03 -4.7824153e+03 - 6.6375715e+02 1.5559085e+03 -4.7822774e+03 - 6.3345215e+02 1.5696555e+03 -4.7821387e+03 - 6.0295167e+02 1.5827770e+03 -4.7820001e+03 - 5.7226661e+02 1.5952662e+03 -4.7818623e+03 - 5.4140773e+02 1.6071167e+03 -4.7817263e+03 - 5.1038563e+02 1.6183225e+03 -4.7815929e+03 - 4.7921080e+02 1.6288778e+03 -4.7814628e+03 - 4.4789357e+02 1.6387772e+03 -4.7813370e+03 - 4.1644415e+02 1.6480158e+03 -4.7812162e+03 - 3.8487261e+02 1.6565888e+03 -4.7811010e+03 - 3.5318888e+02 1.6644919e+03 -4.7809923e+03 - 3.2140279e+02 1.6717211e+03 -4.7808907e+03 - 2.8952403e+02 1.6782728e+03 -4.7807968e+03 - 2.5756221e+02 1.6841436e+03 -4.7807111e+03 - 2.2552681e+02 1.6893307e+03 -4.7806343e+03 - 1.9342724e+02 1.6938314e+03 -4.7805667e+03 - 1.6127283e+02 1.6976435e+03 -4.7805088e+03 - 1.2907282e+02 1.7007651e+03 -4.7804610e+03 - 9.6836402e+01 1.7031946e+03 -4.7804234e+03 - 6.4572726e+01 1.7049309e+03 -4.7803965e+03 - 3.2290898e+01 1.7059730e+03 -4.7803802e+03 - 0.0000000e+00 1.7063204e+03 -4.7803748e+03 - -3.2290898e+01 1.7059730e+03 -4.7803802e+03 - -6.4572726e+01 1.7049309e+03 -4.7803965e+03 - -9.6836402e+01 1.7031946e+03 -4.7804234e+03 - -1.2907282e+02 1.7007651e+03 -4.7804610e+03 - -1.6127283e+02 1.6976435e+03 -4.7805088e+03 - -1.9342724e+02 1.6938314e+03 -4.7805667e+03 - -2.2552681e+02 1.6893307e+03 -4.7806343e+03 - -2.5756221e+02 1.6841436e+03 -4.7807111e+03 - -2.8952403e+02 1.6782728e+03 -4.7807968e+03 - -3.2140279e+02 1.6717211e+03 -4.7808907e+03 - -3.5318888e+02 1.6644919e+03 -4.7809923e+03 - -3.8487261e+02 1.6565888e+03 -4.7811010e+03 - -4.1644415e+02 1.6480158e+03 -4.7812162e+03 - -4.4789357e+02 1.6387772e+03 -4.7813370e+03 - -4.7921080e+02 1.6288778e+03 -4.7814628e+03 - -5.1038563e+02 1.6183225e+03 -4.7815929e+03 - -5.4140773e+02 1.6071167e+03 -4.7817263e+03 - -5.7226661e+02 1.5952662e+03 -4.7818623e+03 - -6.0295167e+02 1.5827770e+03 -4.7820001e+03 - -6.3345215e+02 1.5696555e+03 -4.7821387e+03 - -6.6375715e+02 1.5559085e+03 -4.7822774e+03 - -6.9385563e+02 1.5415430e+03 -4.7824153e+03 - -7.2373643e+02 1.5265664e+03 -4.7825515e+03 - -7.5338826e+02 1.5109865e+03 -4.7826853e+03 - -7.8279970e+02 1.4948113e+03 -4.7828157e+03 - -8.1195920e+02 1.4780492e+03 -4.7829419e+03 - -8.4085513e+02 1.4607088e+03 -4.7830633e+03 - -8.6947575e+02 1.4427990e+03 -4.7831789e+03 - -8.9780922e+02 1.4243292e+03 -4.7832882e+03 - -9.2584364e+02 1.4053088e+03 -4.7833904e+03 - -9.5356704e+02 1.3857476e+03 -4.7834849e+03 - -9.8096738e+02 1.3656556e+03 -4.7835711e+03 - -1.0080326e+03 1.3450432e+03 -4.7836484e+03 - -1.0347506e+03 1.3239208e+03 -4.7837165e+03 - -1.0611093e+03 1.3022992e+03 -4.7837748e+03 - -1.0870967e+03 1.2801893e+03 -4.7838230e+03 - -1.1127005e+03 1.2576022e+03 -4.7838609e+03 - -1.1379089e+03 1.2345492e+03 -4.7838880e+03 - -1.1627098e+03 1.2110417e+03 -4.7839044e+03 - -1.1870913e+03 1.1870913e+03 -4.7839099e+03 - -1.2110417e+03 1.1627098e+03 -4.7839044e+03 - -1.2345492e+03 1.1379089e+03 -4.7838880e+03 - -1.2576022e+03 1.1127005e+03 -4.7838609e+03 - -1.2801893e+03 1.0870967e+03 -4.7838230e+03 - -1.3022992e+03 1.0611093e+03 -4.7837748e+03 - -1.3239208e+03 1.0347506e+03 -4.7837165e+03 - -1.3450432e+03 1.0080326e+03 -4.7836484e+03 - -1.3656556e+03 9.8096738e+02 -4.7835711e+03 - -1.3857476e+03 9.5356704e+02 -4.7834849e+03 - -1.4053088e+03 9.2584364e+02 -4.7833904e+03 - -1.4243292e+03 8.9780922e+02 -4.7832882e+03 - -1.4427990e+03 8.6947575e+02 -4.7831789e+03 - -1.4607088e+03 8.4085513e+02 -4.7830633e+03 - -1.4780492e+03 8.1195920e+02 -4.7829419e+03 - -1.4948113e+03 7.8279970e+02 -4.7828157e+03 - -1.5109865e+03 7.5338826e+02 -4.7826853e+03 - -1.5265664e+03 7.2373643e+02 -4.7825515e+03 - -1.5415430e+03 6.9385563e+02 -4.7824153e+03 - -1.5559085e+03 6.6375715e+02 -4.7822774e+03 - -1.5696555e+03 6.3345215e+02 -4.7821387e+03 - -1.5827770e+03 6.0295167e+02 -4.7820001e+03 - -1.5952662e+03 5.7226661e+02 -4.7818623e+03 - -1.6071167e+03 5.4140773e+02 -4.7817263e+03 - -1.6183225e+03 5.1038563e+02 -4.7815929e+03 - -1.6288778e+03 4.7921080e+02 -4.7814628e+03 - -1.6387772e+03 4.4789357e+02 -4.7813370e+03 - -1.6480158e+03 4.1644415e+02 -4.7812162e+03 - -1.6565888e+03 3.8487261e+02 -4.7811010e+03 - -1.6644919e+03 3.5318888e+02 -4.7809923e+03 - -1.6717211e+03 3.2140279e+02 -4.7808907e+03 - -1.6782728e+03 2.8952403e+02 -4.7807968e+03 - -1.6841436e+03 2.5756221e+02 -4.7807111e+03 - -1.6893307e+03 2.2552681e+02 -4.7806343e+03 - -1.6938314e+03 1.9342724e+02 -4.7805667e+03 - -1.6976435e+03 1.6127283e+02 -4.7805088e+03 - -1.7007651e+03 1.2907282e+02 -4.7804610e+03 - -1.7031946e+03 9.6836402e+01 -4.7804234e+03 - -1.7049309e+03 6.4572726e+01 -4.7803965e+03 - -1.7059730e+03 3.2290898e+01 -4.7803802e+03 - -1.7063204e+03 0.0000000e+00 -4.7803748e+03 - -1.7059730e+03 -3.2290898e+01 -4.7803802e+03 - -1.7049309e+03 -6.4572726e+01 -4.7803965e+03 - -1.7031946e+03 -9.6836402e+01 -4.7804234e+03 - -1.7007651e+03 -1.2907282e+02 -4.7804610e+03 - -1.6976435e+03 -1.6127283e+02 -4.7805088e+03 - -1.6938314e+03 -1.9342724e+02 -4.7805667e+03 - -1.6893307e+03 -2.2552681e+02 -4.7806343e+03 - -1.6841436e+03 -2.5756221e+02 -4.7807111e+03 - -1.6782728e+03 -2.8952403e+02 -4.7807968e+03 - -1.6717211e+03 -3.2140279e+02 -4.7808907e+03 - -1.6644919e+03 -3.5318888e+02 -4.7809923e+03 - -1.6565888e+03 -3.8487261e+02 -4.7811010e+03 - -1.6480158e+03 -4.1644415e+02 -4.7812162e+03 - -1.6387772e+03 -4.4789357e+02 -4.7813370e+03 - -1.6288778e+03 -4.7921080e+02 -4.7814628e+03 - -1.6183225e+03 -5.1038563e+02 -4.7815929e+03 - -1.6071167e+03 -5.4140773e+02 -4.7817263e+03 - -1.5952662e+03 -5.7226661e+02 -4.7818623e+03 - -1.5827770e+03 -6.0295167e+02 -4.7820001e+03 - -1.5696555e+03 -6.3345215e+02 -4.7821387e+03 - -1.5559085e+03 -6.6375715e+02 -4.7822774e+03 - -1.5415430e+03 -6.9385563e+02 -4.7824153e+03 - -1.5265664e+03 -7.2373643e+02 -4.7825515e+03 - -1.5109865e+03 -7.5338826e+02 -4.7826853e+03 - -1.4948113e+03 -7.8279970e+02 -4.7828157e+03 - -1.4780492e+03 -8.1195920e+02 -4.7829419e+03 - -1.4607088e+03 -8.4085513e+02 -4.7830633e+03 - -1.4427990e+03 -8.6947575e+02 -4.7831789e+03 - -1.4243292e+03 -8.9780922e+02 -4.7832882e+03 - -1.4053088e+03 -9.2584364e+02 -4.7833904e+03 - -1.3857476e+03 -9.5356704e+02 -4.7834849e+03 - -1.3656556e+03 -9.8096738e+02 -4.7835711e+03 - -1.3450432e+03 -1.0080326e+03 -4.7836484e+03 - -1.3239208e+03 -1.0347506e+03 -4.7837165e+03 - -1.3022992e+03 -1.0611093e+03 -4.7837748e+03 - -1.2801893e+03 -1.0870967e+03 -4.7838230e+03 - -1.2576022e+03 -1.1127005e+03 -4.7838609e+03 - -1.2345492e+03 -1.1379089e+03 -4.7838880e+03 - -1.2110417e+03 -1.1627098e+03 -4.7839044e+03 - -1.1870913e+03 -1.1870913e+03 -4.7839099e+03 - -1.1627098e+03 -1.2110417e+03 -4.7839044e+03 - -1.1379089e+03 -1.2345492e+03 -4.7838880e+03 - -1.1127005e+03 -1.2576022e+03 -4.7838609e+03 - -1.0870967e+03 -1.2801893e+03 -4.7838230e+03 - -1.0611093e+03 -1.3022992e+03 -4.7837748e+03 - -1.0347506e+03 -1.3239208e+03 -4.7837165e+03 - -1.0080326e+03 -1.3450432e+03 -4.7836484e+03 - -9.8096738e+02 -1.3656556e+03 -4.7835711e+03 - -9.5356704e+02 -1.3857476e+03 -4.7834849e+03 - -9.2584364e+02 -1.4053088e+03 -4.7833904e+03 - -8.9780922e+02 -1.4243292e+03 -4.7832882e+03 - -8.6947575e+02 -1.4427990e+03 -4.7831789e+03 - -8.4085513e+02 -1.4607088e+03 -4.7830633e+03 - -8.1195920e+02 -1.4780492e+03 -4.7829419e+03 - -7.8279970e+02 -1.4948113e+03 -4.7828157e+03 - -7.5338826e+02 -1.5109865e+03 -4.7826853e+03 - -7.2373643e+02 -1.5265664e+03 -4.7825515e+03 - -6.9385563e+02 -1.5415430e+03 -4.7824153e+03 - -6.6375715e+02 -1.5559085e+03 -4.7822774e+03 - -6.3345215e+02 -1.5696555e+03 -4.7821387e+03 - -6.0295167e+02 -1.5827770e+03 -4.7820001e+03 - -5.7226661e+02 -1.5952662e+03 -4.7818623e+03 - -5.4140773e+02 -1.6071167e+03 -4.7817263e+03 - -5.1038563e+02 -1.6183225e+03 -4.7815929e+03 - -4.7921080e+02 -1.6288778e+03 -4.7814628e+03 - -4.4789357e+02 -1.6387772e+03 -4.7813370e+03 - -4.1644415e+02 -1.6480158e+03 -4.7812162e+03 - -3.8487261e+02 -1.6565888e+03 -4.7811010e+03 - -3.5318888e+02 -1.6644919e+03 -4.7809923e+03 - -3.2140279e+02 -1.6717211e+03 -4.7808907e+03 - -2.8952403e+02 -1.6782728e+03 -4.7807968e+03 - -2.5756221e+02 -1.6841436e+03 -4.7807111e+03 - -2.2552681e+02 -1.6893307e+03 -4.7806343e+03 - -1.9342724e+02 -1.6938314e+03 -4.7805667e+03 - -1.6127283e+02 -1.6976435e+03 -4.7805088e+03 - -1.2907282e+02 -1.7007651e+03 -4.7804610e+03 - -9.6836402e+01 -1.7031946e+03 -4.7804234e+03 - -6.4572726e+01 -1.7049309e+03 -4.7803965e+03 - -3.2290898e+01 -1.7059730e+03 -4.7803802e+03 - 0.0000000e+00 -1.7063204e+03 -4.7803748e+03 - 3.2290898e+01 -1.7059730e+03 -4.7803802e+03 - 6.4572726e+01 -1.7049309e+03 -4.7803965e+03 - 9.6836402e+01 -1.7031946e+03 -4.7804234e+03 - 1.2907282e+02 -1.7007651e+03 -4.7804610e+03 - 1.6127283e+02 -1.6976435e+03 -4.7805088e+03 - 1.9342724e+02 -1.6938314e+03 -4.7805667e+03 - 2.2552681e+02 -1.6893307e+03 -4.7806343e+03 - 2.5756221e+02 -1.6841436e+03 -4.7807111e+03 - 2.8952403e+02 -1.6782728e+03 -4.7807968e+03 - 3.2140279e+02 -1.6717211e+03 -4.7808907e+03 - 3.5318888e+02 -1.6644919e+03 -4.7809923e+03 - 3.8487261e+02 -1.6565888e+03 -4.7811010e+03 - 4.1644415e+02 -1.6480158e+03 -4.7812162e+03 - 4.4789357e+02 -1.6387772e+03 -4.7813370e+03 - 4.7921080e+02 -1.6288778e+03 -4.7814628e+03 - 5.1038563e+02 -1.6183225e+03 -4.7815929e+03 - 5.4140773e+02 -1.6071167e+03 -4.7817263e+03 - 5.7226661e+02 -1.5952662e+03 -4.7818623e+03 - 6.0295167e+02 -1.5827770e+03 -4.7820001e+03 - 6.3345215e+02 -1.5696555e+03 -4.7821387e+03 - 6.6375715e+02 -1.5559085e+03 -4.7822774e+03 - 6.9385563e+02 -1.5415430e+03 -4.7824153e+03 - 7.2373643e+02 -1.5265664e+03 -4.7825515e+03 - 7.5338826e+02 -1.5109865e+03 -4.7826853e+03 - 7.8279970e+02 -1.4948113e+03 -4.7828157e+03 - 8.1195920e+02 -1.4780492e+03 -4.7829419e+03 - 8.4085513e+02 -1.4607088e+03 -4.7830633e+03 - 8.6947575e+02 -1.4427990e+03 -4.7831789e+03 - 8.9780922e+02 -1.4243292e+03 -4.7832882e+03 - 9.2584364e+02 -1.4053088e+03 -4.7833904e+03 - 9.5356704e+02 -1.3857476e+03 -4.7834849e+03 - 9.8096738e+02 -1.3656556e+03 -4.7835711e+03 - 1.0080326e+03 -1.3450432e+03 -4.7836484e+03 - 1.0347506e+03 -1.3239208e+03 -4.7837165e+03 - 1.0611093e+03 -1.3022992e+03 -4.7837748e+03 - 1.0870967e+03 -1.2801893e+03 -4.7838230e+03 - 1.1127005e+03 -1.2576022e+03 -4.7838609e+03 - 1.1379089e+03 -1.2345492e+03 -4.7838880e+03 - 1.1627098e+03 -1.2110417e+03 -4.7839044e+03 - 1.1870913e+03 -1.1870913e+03 -4.7839099e+03 - 1.2110417e+03 -1.1627098e+03 -4.7839044e+03 - 1.2345492e+03 -1.1379089e+03 -4.7838880e+03 - 1.2576022e+03 -1.1127005e+03 -4.7838609e+03 - 1.2801893e+03 -1.0870967e+03 -4.7838230e+03 - 1.3022992e+03 -1.0611093e+03 -4.7837748e+03 - 1.3239208e+03 -1.0347506e+03 -4.7837165e+03 - 1.3450432e+03 -1.0080326e+03 -4.7836484e+03 - 1.3656556e+03 -9.8096738e+02 -4.7835711e+03 - 1.3857476e+03 -9.5356704e+02 -4.7834849e+03 - 1.4053088e+03 -9.2584364e+02 -4.7833904e+03 - 1.4243292e+03 -8.9780922e+02 -4.7832882e+03 - 1.4427990e+03 -8.6947575e+02 -4.7831789e+03 - 1.4607088e+03 -8.4085513e+02 -4.7830633e+03 - 1.4780492e+03 -8.1195920e+02 -4.7829419e+03 - 1.4948113e+03 -7.8279970e+02 -4.7828157e+03 - 1.5109865e+03 -7.5338826e+02 -4.7826853e+03 - 1.5265664e+03 -7.2373643e+02 -4.7825515e+03 - 1.5415430e+03 -6.9385563e+02 -4.7824153e+03 - 1.5559085e+03 -6.6375715e+02 -4.7822774e+03 - 1.5696555e+03 -6.3345215e+02 -4.7821387e+03 - 1.5827770e+03 -6.0295167e+02 -4.7820001e+03 - 1.5952662e+03 -5.7226661e+02 -4.7818623e+03 - 1.6071167e+03 -5.4140773e+02 -4.7817263e+03 - 1.6183225e+03 -5.1038563e+02 -4.7815929e+03 - 1.6288778e+03 -4.7921080e+02 -4.7814628e+03 - 1.6387772e+03 -4.4789357e+02 -4.7813370e+03 - 1.6480158e+03 -4.1644415e+02 -4.7812162e+03 - 1.6565888e+03 -3.8487261e+02 -4.7811010e+03 - 1.6644919e+03 -3.5318888e+02 -4.7809923e+03 - 1.6717211e+03 -3.2140279e+02 -4.7808907e+03 - 1.6782728e+03 -2.8952403e+02 -4.7807968e+03 - 1.6841436e+03 -2.5756221e+02 -4.7807111e+03 - 1.6893307e+03 -2.2552681e+02 -4.7806343e+03 - 1.6938314e+03 -1.9342724e+02 -4.7805667e+03 - 1.6976435e+03 -1.6127283e+02 -4.7805088e+03 - 1.7007651e+03 -1.2907282e+02 -4.7804610e+03 - 1.7031946e+03 -9.6836402e+01 -4.7804234e+03 - 1.7049309e+03 -6.4572726e+01 -4.7803965e+03 - 1.7059730e+03 -3.2290898e+01 -4.7803802e+03 - 1.7063204e+03 0.0000000e+00 -4.7803748e+03 - 1.5461317e+03 0.0000000e+00 -4.8073471e+03 - 1.5458194e+03 2.9469837e+01 -4.8073507e+03 - 1.5448828e+03 5.8930717e+01 -4.8073616e+03 - 1.5433223e+03 8.8373678e+01 -4.8073796e+03 - 1.5411387e+03 1.1778974e+02 -4.8074047e+03 - 1.5383330e+03 1.4716990e+02 -4.8074368e+03 - 1.5349067e+03 1.7650513e+02 -4.8074755e+03 - 1.5308614e+03 2.0578637e+02 -4.8075207e+03 - 1.5261991e+03 2.3500451e+02 -4.8075721e+03 - 1.5209223e+03 2.6415038e+02 -4.8076294e+03 - 1.5150334e+03 2.9321478e+02 -4.8076922e+03 - 1.5085354e+03 3.2218844e+02 -4.8077602e+03 - 1.5014315e+03 3.5106201e+02 -4.8078329e+03 - 1.4937253e+03 3.7982611e+02 -4.8079099e+03 - 1.4854207e+03 4.0847124e+02 -4.8079907e+03 - 1.4765216e+03 4.3698786e+02 -4.8080748e+03 - 1.4670326e+03 4.6536633e+02 -4.8081617e+03 - 1.4569585e+03 4.9359695e+02 -4.8082509e+03 - 1.4463042e+03 5.2166994e+02 -4.8083418e+03 - 1.4350750e+03 5.4957541e+02 -4.8084338e+03 - 1.4232766e+03 5.7730342e+02 -4.8085265e+03 - 1.4109149e+03 6.0484394e+02 -4.8086192e+03 - 1.3979960e+03 6.3218688e+02 -4.8087113e+03 - 1.3845264e+03 6.5932205e+02 -4.8088023e+03 - 1.3705127e+03 6.8623922e+02 -4.8088916e+03 - 1.3559621e+03 7.1292807e+02 -4.8089787e+03 - 1.3408817e+03 7.3937823e+02 -4.8090630e+03 - 1.3252790e+03 7.6557930e+02 -4.8091440e+03 - 1.3091618e+03 7.9152079e+02 -4.8092212e+03 - 1.2925380e+03 8.1719222e+02 -4.8092942e+03 - 1.2754159e+03 8.4258303e+02 -4.8093624e+03 - 1.2578038e+03 8.6768269e+02 -4.8094254e+03 - 1.2397105e+03 8.9248062e+02 -4.8094830e+03 - 1.2211448e+03 9.1696625e+02 -4.8095346e+03 - 1.2021157e+03 9.4112901e+02 -4.8095800e+03 - 1.1826324e+03 9.6495838e+02 -4.8096190e+03 - 1.1627044e+03 9.8844383e+02 -4.8096511e+03 - 1.1423412e+03 1.0115749e+03 -4.8096764e+03 - 1.1215525e+03 1.0343412e+03 -4.8096945e+03 - 1.1003481e+03 1.0567323e+03 -4.8097054e+03 - 1.0787380e+03 1.0787380e+03 -4.8097091e+03 - 1.0567323e+03 1.1003481e+03 -4.8097054e+03 - 1.0343412e+03 1.1215525e+03 -4.8096945e+03 - 1.0115749e+03 1.1423412e+03 -4.8096764e+03 - 9.8844383e+02 1.1627044e+03 -4.8096511e+03 - 9.6495838e+02 1.1826324e+03 -4.8096190e+03 - 9.4112901e+02 1.2021157e+03 -4.8095800e+03 - 9.1696625e+02 1.2211448e+03 -4.8095346e+03 - 8.9248062e+02 1.2397105e+03 -4.8094830e+03 - 8.6768269e+02 1.2578038e+03 -4.8094254e+03 - 8.4258303e+02 1.2754159e+03 -4.8093624e+03 - 8.1719222e+02 1.2925380e+03 -4.8092942e+03 - 7.9152079e+02 1.3091618e+03 -4.8092212e+03 - 7.6557930e+02 1.3252790e+03 -4.8091440e+03 - 7.3937823e+02 1.3408817e+03 -4.8090630e+03 - 7.1292807e+02 1.3559621e+03 -4.8089787e+03 - 6.8623922e+02 1.3705127e+03 -4.8088916e+03 - 6.5932205e+02 1.3845264e+03 -4.8088023e+03 - 6.3218688e+02 1.3979960e+03 -4.8087113e+03 - 6.0484394e+02 1.4109149e+03 -4.8086192e+03 - 5.7730342e+02 1.4232766e+03 -4.8085265e+03 - 5.4957541e+02 1.4350750e+03 -4.8084338e+03 - 5.2166994e+02 1.4463042e+03 -4.8083418e+03 - 4.9359695e+02 1.4569585e+03 -4.8082509e+03 - 4.6536633e+02 1.4670326e+03 -4.8081617e+03 - 4.3698786e+02 1.4765216e+03 -4.8080748e+03 - 4.0847124e+02 1.4854207e+03 -4.8079907e+03 - 3.7982611e+02 1.4937253e+03 -4.8079099e+03 - 3.5106201e+02 1.5014315e+03 -4.8078329e+03 - 3.2218844e+02 1.5085354e+03 -4.8077602e+03 - 2.9321478e+02 1.5150334e+03 -4.8076922e+03 - 2.6415038e+02 1.5209223e+03 -4.8076294e+03 - 2.3500451e+02 1.5261991e+03 -4.8075721e+03 - 2.0578637e+02 1.5308614e+03 -4.8075207e+03 - 1.7650513e+02 1.5349067e+03 -4.8074755e+03 - 1.4716990e+02 1.5383330e+03 -4.8074368e+03 - 1.1778974e+02 1.5411387e+03 -4.8074047e+03 - 8.8373678e+01 1.5433223e+03 -4.8073796e+03 - 5.8930717e+01 1.5448828e+03 -4.8073616e+03 - 2.9469837e+01 1.5458194e+03 -4.8073507e+03 - 0.0000000e+00 1.5461317e+03 -4.8073471e+03 - -2.9469837e+01 1.5458194e+03 -4.8073507e+03 - -5.8930717e+01 1.5448828e+03 -4.8073616e+03 - -8.8373678e+01 1.5433223e+03 -4.8073796e+03 - -1.1778974e+02 1.5411387e+03 -4.8074047e+03 - -1.4716990e+02 1.5383330e+03 -4.8074368e+03 - -1.7650513e+02 1.5349067e+03 -4.8074755e+03 - -2.0578637e+02 1.5308614e+03 -4.8075207e+03 - -2.3500451e+02 1.5261991e+03 -4.8075721e+03 - -2.6415038e+02 1.5209223e+03 -4.8076294e+03 - -2.9321478e+02 1.5150334e+03 -4.8076922e+03 - -3.2218844e+02 1.5085354e+03 -4.8077602e+03 - -3.5106201e+02 1.5014315e+03 -4.8078329e+03 - -3.7982611e+02 1.4937253e+03 -4.8079099e+03 - -4.0847124e+02 1.4854207e+03 -4.8079907e+03 - -4.3698786e+02 1.4765216e+03 -4.8080748e+03 - -4.6536633e+02 1.4670326e+03 -4.8081617e+03 - -4.9359695e+02 1.4569585e+03 -4.8082509e+03 - -5.2166994e+02 1.4463042e+03 -4.8083418e+03 - -5.4957541e+02 1.4350750e+03 -4.8084338e+03 - -5.7730342e+02 1.4232766e+03 -4.8085265e+03 - -6.0484394e+02 1.4109149e+03 -4.8086192e+03 - -6.3218688e+02 1.3979960e+03 -4.8087113e+03 - -6.5932205e+02 1.3845264e+03 -4.8088023e+03 - -6.8623922e+02 1.3705127e+03 -4.8088916e+03 - -7.1292807e+02 1.3559621e+03 -4.8089787e+03 - -7.3937823e+02 1.3408817e+03 -4.8090630e+03 - -7.6557930e+02 1.3252790e+03 -4.8091440e+03 - -7.9152079e+02 1.3091618e+03 -4.8092212e+03 - -8.1719222e+02 1.2925380e+03 -4.8092942e+03 - -8.4258303e+02 1.2754159e+03 -4.8093624e+03 - -8.6768269e+02 1.2578038e+03 -4.8094254e+03 - -8.9248062e+02 1.2397105e+03 -4.8094830e+03 - -9.1696625e+02 1.2211448e+03 -4.8095346e+03 - -9.4112901e+02 1.2021157e+03 -4.8095800e+03 - -9.6495838e+02 1.1826324e+03 -4.8096190e+03 - -9.8844383e+02 1.1627044e+03 -4.8096511e+03 - -1.0115749e+03 1.1423412e+03 -4.8096764e+03 - -1.0343412e+03 1.1215525e+03 -4.8096945e+03 - -1.0567323e+03 1.1003481e+03 -4.8097054e+03 - -1.0787380e+03 1.0787380e+03 -4.8097091e+03 - -1.1003481e+03 1.0567323e+03 -4.8097054e+03 - -1.1215525e+03 1.0343412e+03 -4.8096945e+03 - -1.1423412e+03 1.0115749e+03 -4.8096764e+03 - -1.1627044e+03 9.8844383e+02 -4.8096511e+03 - -1.1826324e+03 9.6495838e+02 -4.8096190e+03 - -1.2021157e+03 9.4112901e+02 -4.8095800e+03 - -1.2211448e+03 9.1696625e+02 -4.8095346e+03 - -1.2397105e+03 8.9248062e+02 -4.8094830e+03 - -1.2578038e+03 8.6768269e+02 -4.8094254e+03 - -1.2754159e+03 8.4258303e+02 -4.8093624e+03 - -1.2925380e+03 8.1719222e+02 -4.8092942e+03 - -1.3091618e+03 7.9152079e+02 -4.8092212e+03 - -1.3252790e+03 7.6557930e+02 -4.8091440e+03 - -1.3408817e+03 7.3937823e+02 -4.8090630e+03 - -1.3559621e+03 7.1292807e+02 -4.8089787e+03 - -1.3705127e+03 6.8623922e+02 -4.8088916e+03 - -1.3845264e+03 6.5932205e+02 -4.8088023e+03 - -1.3979960e+03 6.3218688e+02 -4.8087113e+03 - -1.4109149e+03 6.0484394e+02 -4.8086192e+03 - -1.4232766e+03 5.7730342e+02 -4.8085265e+03 - -1.4350750e+03 5.4957541e+02 -4.8084338e+03 - -1.4463042e+03 5.2166994e+02 -4.8083418e+03 - -1.4569585e+03 4.9359695e+02 -4.8082509e+03 - -1.4670326e+03 4.6536633e+02 -4.8081617e+03 - -1.4765216e+03 4.3698786e+02 -4.8080748e+03 - -1.4854207e+03 4.0847124e+02 -4.8079907e+03 - -1.4937253e+03 3.7982611e+02 -4.8079099e+03 - -1.5014315e+03 3.5106201e+02 -4.8078329e+03 - -1.5085354e+03 3.2218844e+02 -4.8077602e+03 - -1.5150334e+03 2.9321478e+02 -4.8076922e+03 - -1.5209223e+03 2.6415038e+02 -4.8076294e+03 - -1.5261991e+03 2.3500451e+02 -4.8075721e+03 - -1.5308614e+03 2.0578637e+02 -4.8075207e+03 - -1.5349067e+03 1.7650513e+02 -4.8074755e+03 - -1.5383330e+03 1.4716990e+02 -4.8074368e+03 - -1.5411387e+03 1.1778974e+02 -4.8074047e+03 - -1.5433223e+03 8.8373678e+01 -4.8073796e+03 - -1.5448828e+03 5.8930717e+01 -4.8073616e+03 - -1.5458194e+03 2.9469837e+01 -4.8073507e+03 - -1.5461317e+03 0.0000000e+00 -4.8073471e+03 - -1.5458194e+03 -2.9469837e+01 -4.8073507e+03 - -1.5448828e+03 -5.8930717e+01 -4.8073616e+03 - -1.5433223e+03 -8.8373678e+01 -4.8073796e+03 - -1.5411387e+03 -1.1778974e+02 -4.8074047e+03 - -1.5383330e+03 -1.4716990e+02 -4.8074368e+03 - -1.5349067e+03 -1.7650513e+02 -4.8074755e+03 - -1.5308614e+03 -2.0578637e+02 -4.8075207e+03 - -1.5261991e+03 -2.3500451e+02 -4.8075721e+03 - -1.5209223e+03 -2.6415038e+02 -4.8076294e+03 - -1.5150334e+03 -2.9321478e+02 -4.8076922e+03 - -1.5085354e+03 -3.2218844e+02 -4.8077602e+03 - -1.5014315e+03 -3.5106201e+02 -4.8078329e+03 - -1.4937253e+03 -3.7982611e+02 -4.8079099e+03 - -1.4854207e+03 -4.0847124e+02 -4.8079907e+03 - -1.4765216e+03 -4.3698786e+02 -4.8080748e+03 - -1.4670326e+03 -4.6536633e+02 -4.8081617e+03 - -1.4569585e+03 -4.9359695e+02 -4.8082509e+03 - -1.4463042e+03 -5.2166994e+02 -4.8083418e+03 - -1.4350750e+03 -5.4957541e+02 -4.8084338e+03 - -1.4232766e+03 -5.7730342e+02 -4.8085265e+03 - -1.4109149e+03 -6.0484394e+02 -4.8086192e+03 - -1.3979960e+03 -6.3218688e+02 -4.8087113e+03 - -1.3845264e+03 -6.5932205e+02 -4.8088023e+03 - -1.3705127e+03 -6.8623922e+02 -4.8088916e+03 - -1.3559621e+03 -7.1292807e+02 -4.8089787e+03 - -1.3408817e+03 -7.3937823e+02 -4.8090630e+03 - -1.3252790e+03 -7.6557930e+02 -4.8091440e+03 - -1.3091618e+03 -7.9152079e+02 -4.8092212e+03 - -1.2925380e+03 -8.1719222e+02 -4.8092942e+03 - -1.2754159e+03 -8.4258303e+02 -4.8093624e+03 - -1.2578038e+03 -8.6768269e+02 -4.8094254e+03 - -1.2397105e+03 -8.9248062e+02 -4.8094830e+03 - -1.2211448e+03 -9.1696625e+02 -4.8095346e+03 - -1.2021157e+03 -9.4112901e+02 -4.8095800e+03 - -1.1826324e+03 -9.6495838e+02 -4.8096190e+03 - -1.1627044e+03 -9.8844383e+02 -4.8096511e+03 - -1.1423412e+03 -1.0115749e+03 -4.8096764e+03 - -1.1215525e+03 -1.0343412e+03 -4.8096945e+03 - -1.1003481e+03 -1.0567323e+03 -4.8097054e+03 - -1.0787380e+03 -1.0787380e+03 -4.8097091e+03 - -1.0567323e+03 -1.1003481e+03 -4.8097054e+03 - -1.0343412e+03 -1.1215525e+03 -4.8096945e+03 - -1.0115749e+03 -1.1423412e+03 -4.8096764e+03 - -9.8844383e+02 -1.1627044e+03 -4.8096511e+03 - -9.6495838e+02 -1.1826324e+03 -4.8096190e+03 - -9.4112901e+02 -1.2021157e+03 -4.8095800e+03 - -9.1696625e+02 -1.2211448e+03 -4.8095346e+03 - -8.9248062e+02 -1.2397105e+03 -4.8094830e+03 - -8.6768269e+02 -1.2578038e+03 -4.8094254e+03 - -8.4258303e+02 -1.2754159e+03 -4.8093624e+03 - -8.1719222e+02 -1.2925380e+03 -4.8092942e+03 - -7.9152079e+02 -1.3091618e+03 -4.8092212e+03 - -7.6557930e+02 -1.3252790e+03 -4.8091440e+03 - -7.3937823e+02 -1.3408817e+03 -4.8090630e+03 - -7.1292807e+02 -1.3559621e+03 -4.8089787e+03 - -6.8623922e+02 -1.3705127e+03 -4.8088916e+03 - -6.5932205e+02 -1.3845264e+03 -4.8088023e+03 - -6.3218688e+02 -1.3979960e+03 -4.8087113e+03 - -6.0484394e+02 -1.4109149e+03 -4.8086192e+03 - -5.7730342e+02 -1.4232766e+03 -4.8085265e+03 - -5.4957541e+02 -1.4350750e+03 -4.8084338e+03 - -5.2166994e+02 -1.4463042e+03 -4.8083418e+03 - -4.9359695e+02 -1.4569585e+03 -4.8082509e+03 - -4.6536633e+02 -1.4670326e+03 -4.8081617e+03 - -4.3698786e+02 -1.4765216e+03 -4.8080748e+03 - -4.0847124e+02 -1.4854207e+03 -4.8079907e+03 - -3.7982611e+02 -1.4937253e+03 -4.8079099e+03 - -3.5106201e+02 -1.5014315e+03 -4.8078329e+03 - -3.2218844e+02 -1.5085354e+03 -4.8077602e+03 - -2.9321478e+02 -1.5150334e+03 -4.8076922e+03 - -2.6415038e+02 -1.5209223e+03 -4.8076294e+03 - -2.3500451e+02 -1.5261991e+03 -4.8075721e+03 - -2.0578637e+02 -1.5308614e+03 -4.8075207e+03 - -1.7650513e+02 -1.5349067e+03 -4.8074755e+03 - -1.4716990e+02 -1.5383330e+03 -4.8074368e+03 - -1.1778974e+02 -1.5411387e+03 -4.8074047e+03 - -8.8373678e+01 -1.5433223e+03 -4.8073796e+03 - -5.8930717e+01 -1.5448828e+03 -4.8073616e+03 - -2.9469837e+01 -1.5458194e+03 -4.8073507e+03 - 0.0000000e+00 -1.5461317e+03 -4.8073471e+03 - 2.9469837e+01 -1.5458194e+03 -4.8073507e+03 - 5.8930717e+01 -1.5448828e+03 -4.8073616e+03 - 8.8373678e+01 -1.5433223e+03 -4.8073796e+03 - 1.1778974e+02 -1.5411387e+03 -4.8074047e+03 - 1.4716990e+02 -1.5383330e+03 -4.8074368e+03 - 1.7650513e+02 -1.5349067e+03 -4.8074755e+03 - 2.0578637e+02 -1.5308614e+03 -4.8075207e+03 - 2.3500451e+02 -1.5261991e+03 -4.8075721e+03 - 2.6415038e+02 -1.5209223e+03 -4.8076294e+03 - 2.9321478e+02 -1.5150334e+03 -4.8076922e+03 - 3.2218844e+02 -1.5085354e+03 -4.8077602e+03 - 3.5106201e+02 -1.5014315e+03 -4.8078329e+03 - 3.7982611e+02 -1.4937253e+03 -4.8079099e+03 - 4.0847124e+02 -1.4854207e+03 -4.8079907e+03 - 4.3698786e+02 -1.4765216e+03 -4.8080748e+03 - 4.6536633e+02 -1.4670326e+03 -4.8081617e+03 - 4.9359695e+02 -1.4569585e+03 -4.8082509e+03 - 5.2166994e+02 -1.4463042e+03 -4.8083418e+03 - 5.4957541e+02 -1.4350750e+03 -4.8084338e+03 - 5.7730342e+02 -1.4232766e+03 -4.8085265e+03 - 6.0484394e+02 -1.4109149e+03 -4.8086192e+03 - 6.3218688e+02 -1.3979960e+03 -4.8087113e+03 - 6.5932205e+02 -1.3845264e+03 -4.8088023e+03 - 6.8623922e+02 -1.3705127e+03 -4.8088916e+03 - 7.1292807e+02 -1.3559621e+03 -4.8089787e+03 - 7.3937823e+02 -1.3408817e+03 -4.8090630e+03 - 7.6557930e+02 -1.3252790e+03 -4.8091440e+03 - 7.9152079e+02 -1.3091618e+03 -4.8092212e+03 - 8.1719222e+02 -1.2925380e+03 -4.8092942e+03 - 8.4258303e+02 -1.2754159e+03 -4.8093624e+03 - 8.6768269e+02 -1.2578038e+03 -4.8094254e+03 - 8.9248062e+02 -1.2397105e+03 -4.8094830e+03 - 9.1696625e+02 -1.2211448e+03 -4.8095346e+03 - 9.4112901e+02 -1.2021157e+03 -4.8095800e+03 - 9.6495838e+02 -1.1826324e+03 -4.8096190e+03 - 9.8844383e+02 -1.1627044e+03 -4.8096511e+03 - 1.0115749e+03 -1.1423412e+03 -4.8096764e+03 - 1.0343412e+03 -1.1215525e+03 -4.8096945e+03 - 1.0567323e+03 -1.1003481e+03 -4.8097054e+03 - 1.0787380e+03 -1.0787380e+03 -4.8097091e+03 - 1.1003481e+03 -1.0567323e+03 -4.8097054e+03 - 1.1215525e+03 -1.0343412e+03 -4.8096945e+03 - 1.1423412e+03 -1.0115749e+03 -4.8096764e+03 - 1.1627044e+03 -9.8844383e+02 -4.8096511e+03 - 1.1826324e+03 -9.6495838e+02 -4.8096190e+03 - 1.2021157e+03 -9.4112901e+02 -4.8095800e+03 - 1.2211448e+03 -9.1696625e+02 -4.8095346e+03 - 1.2397105e+03 -8.9248062e+02 -4.8094830e+03 - 1.2578038e+03 -8.6768269e+02 -4.8094254e+03 - 1.2754159e+03 -8.4258303e+02 -4.8093624e+03 - 1.2925380e+03 -8.1719222e+02 -4.8092942e+03 - 1.3091618e+03 -7.9152079e+02 -4.8092212e+03 - 1.3252790e+03 -7.6557930e+02 -4.8091440e+03 - 1.3408817e+03 -7.3937823e+02 -4.8090630e+03 - 1.3559621e+03 -7.1292807e+02 -4.8089787e+03 - 1.3705127e+03 -6.8623922e+02 -4.8088916e+03 - 1.3845264e+03 -6.5932205e+02 -4.8088023e+03 - 1.3979960e+03 -6.3218688e+02 -4.8087113e+03 - 1.4109149e+03 -6.0484394e+02 -4.8086192e+03 - 1.4232766e+03 -5.7730342e+02 -4.8085265e+03 - 1.4350750e+03 -5.4957541e+02 -4.8084338e+03 - 1.4463042e+03 -5.2166994e+02 -4.8083418e+03 - 1.4569585e+03 -4.9359695e+02 -4.8082509e+03 - 1.4670326e+03 -4.6536633e+02 -4.8081617e+03 - 1.4765216e+03 -4.3698786e+02 -4.8080748e+03 - 1.4854207e+03 -4.0847124e+02 -4.8079907e+03 - 1.4937253e+03 -3.7982611e+02 -4.8079099e+03 - 1.5014315e+03 -3.5106201e+02 -4.8078329e+03 - 1.5085354e+03 -3.2218844e+02 -4.8077602e+03 - 1.5150334e+03 -2.9321478e+02 -4.8076922e+03 - 1.5209223e+03 -2.6415038e+02 -4.8076294e+03 - 1.5261991e+03 -2.3500451e+02 -4.8075721e+03 - 1.5308614e+03 -2.0578637e+02 -4.8075207e+03 - 1.5349067e+03 -1.7650513e+02 -4.8074755e+03 - 1.5383330e+03 -1.4716990e+02 -4.8074368e+03 - 1.5411387e+03 -1.1778974e+02 -4.8074047e+03 - 1.5433223e+03 -8.8373678e+01 -4.8073796e+03 - 1.5448828e+03 -5.8930717e+01 -4.8073616e+03 - 1.5458194e+03 -2.9469837e+01 -4.8073507e+03 - 1.5461317e+03 0.0000000e+00 -4.8073471e+03 - 1.3772493e+03 0.0000000e+00 -4.8323848e+03 - 1.3769735e+03 2.6423288e+01 -4.8323871e+03 - 1.3761461e+03 5.2838016e+01 -4.8323938e+03 - 1.3747677e+03 7.9235620e+01 -4.8324051e+03 - 1.3728387e+03 1.0560753e+02 -4.8324208e+03 - 1.3703603e+03 1.3194516e+02 -4.8324408e+03 - 1.3673335e+03 1.5823992e+02 -4.8324650e+03 - 1.3637599e+03 1.8448319e+02 -4.8324933e+03 - 1.3596411e+03 2.1066632e+02 -4.8325254e+03 - 1.3549792e+03 2.3678067e+02 -4.8325612e+03 - 1.3497765e+03 2.6281755e+02 -4.8326005e+03 - 1.3440355e+03 2.8876822e+02 -4.8326430e+03 - 1.3377589e+03 3.1462395e+02 -4.8326884e+03 - 1.3309497e+03 3.4037594e+02 -4.8327365e+03 - 1.3236114e+03 3.6601539e+02 -4.8327870e+03 - 1.3157475e+03 3.9153343e+02 -4.8328395e+03 - 1.3073617e+03 4.1692117e+02 -4.8328938e+03 - 1.2984581e+03 4.4216969e+02 -4.8329495e+03 - 1.2890410e+03 4.6727001e+02 -4.8330063e+03 - 1.2791150e+03 4.9221315e+02 -4.8330638e+03 - 1.2686849e+03 5.1699005e+02 -4.8331217e+03 - 1.2577556e+03 5.4159167e+02 -4.8331795e+03 - 1.2463326e+03 5.6600889e+02 -4.8332371e+03 - 1.2344212e+03 5.9023259e+02 -4.8332939e+03 - 1.2220272e+03 6.1425362e+02 -4.8333496e+03 - 1.2091565e+03 6.3806281e+02 -4.8334040e+03 - 1.1958152e+03 6.6165097e+02 -4.8334566e+03 - 1.1820099e+03 6.8500891e+02 -4.8335072e+03 - 1.1677469e+03 7.0812741e+02 -4.8335554e+03 - 1.1530331e+03 7.3099726e+02 -4.8336009e+03 - 1.1378754e+03 7.5360927e+02 -4.8336435e+03 - 1.1222810e+03 7.7595424e+02 -4.8336828e+03 - 1.1062572e+03 7.9802300e+02 -4.8337187e+03 - 1.0898115e+03 8.1980639e+02 -4.8337509e+03 - 1.0729516e+03 8.4129530e+02 -4.8337793e+03 - 1.0556852e+03 8.6248064e+02 -4.8338036e+03 - 1.0380203e+03 8.8335339e+02 -4.8338236e+03 - 1.0199651e+03 9.0390457e+02 -4.8338394e+03 - 1.0015277e+03 9.2412527e+02 -4.8338507e+03 - 9.8271646e+02 9.4400664e+02 -4.8338575e+03 - 9.6353993e+02 9.6353993e+02 -4.8338598e+03 - 9.4400664e+02 9.8271646e+02 -4.8338575e+03 - 9.2412527e+02 1.0015277e+03 -4.8338507e+03 - 9.0390457e+02 1.0199651e+03 -4.8338394e+03 - 8.8335339e+02 1.0380203e+03 -4.8338236e+03 - 8.6248064e+02 1.0556852e+03 -4.8338036e+03 - 8.4129530e+02 1.0729516e+03 -4.8337793e+03 - 8.1980639e+02 1.0898115e+03 -4.8337509e+03 - 7.9802300e+02 1.1062572e+03 -4.8337187e+03 - 7.7595424e+02 1.1222810e+03 -4.8336828e+03 - 7.5360927e+02 1.1378754e+03 -4.8336435e+03 - 7.3099726e+02 1.1530331e+03 -4.8336009e+03 - 7.0812741e+02 1.1677469e+03 -4.8335554e+03 - 6.8500891e+02 1.1820099e+03 -4.8335072e+03 - 6.6165097e+02 1.1958152e+03 -4.8334566e+03 - 6.3806281e+02 1.2091565e+03 -4.8334040e+03 - 6.1425362e+02 1.2220272e+03 -4.8333496e+03 - 5.9023259e+02 1.2344212e+03 -4.8332939e+03 - 5.6600889e+02 1.2463326e+03 -4.8332371e+03 - 5.4159167e+02 1.2577556e+03 -4.8331795e+03 - 5.1699005e+02 1.2686849e+03 -4.8331217e+03 - 4.9221315e+02 1.2791150e+03 -4.8330638e+03 - 4.6727001e+02 1.2890410e+03 -4.8330063e+03 - 4.4216969e+02 1.2984581e+03 -4.8329495e+03 - 4.1692117e+02 1.3073617e+03 -4.8328938e+03 - 3.9153343e+02 1.3157475e+03 -4.8328395e+03 - 3.6601539e+02 1.3236114e+03 -4.8327870e+03 - 3.4037594e+02 1.3309497e+03 -4.8327365e+03 - 3.1462395e+02 1.3377589e+03 -4.8326884e+03 - 2.8876822e+02 1.3440355e+03 -4.8326430e+03 - 2.6281755e+02 1.3497765e+03 -4.8326005e+03 - 2.3678067e+02 1.3549792e+03 -4.8325612e+03 - 2.1066632e+02 1.3596411e+03 -4.8325254e+03 - 1.8448319e+02 1.3637599e+03 -4.8324933e+03 - 1.5823992e+02 1.3673335e+03 -4.8324650e+03 - 1.3194516e+02 1.3703603e+03 -4.8324408e+03 - 1.0560753e+02 1.3728387e+03 -4.8324208e+03 - 7.9235620e+01 1.3747677e+03 -4.8324051e+03 - 5.2838016e+01 1.3761461e+03 -4.8323938e+03 - 2.6423288e+01 1.3769735e+03 -4.8323871e+03 - 0.0000000e+00 1.3772493e+03 -4.8323848e+03 - -2.6423288e+01 1.3769735e+03 -4.8323871e+03 - -5.2838016e+01 1.3761461e+03 -4.8323938e+03 - -7.9235620e+01 1.3747677e+03 -4.8324051e+03 - -1.0560753e+02 1.3728387e+03 -4.8324208e+03 - -1.3194516e+02 1.3703603e+03 -4.8324408e+03 - -1.5823992e+02 1.3673335e+03 -4.8324650e+03 - -1.8448319e+02 1.3637599e+03 -4.8324933e+03 - -2.1066632e+02 1.3596411e+03 -4.8325254e+03 - -2.3678067e+02 1.3549792e+03 -4.8325612e+03 - -2.6281755e+02 1.3497765e+03 -4.8326005e+03 - -2.8876822e+02 1.3440355e+03 -4.8326430e+03 - -3.1462395e+02 1.3377589e+03 -4.8326884e+03 - -3.4037594e+02 1.3309497e+03 -4.8327365e+03 - -3.6601539e+02 1.3236114e+03 -4.8327870e+03 - -3.9153343e+02 1.3157475e+03 -4.8328395e+03 - -4.1692117e+02 1.3073617e+03 -4.8328938e+03 - -4.4216969e+02 1.2984581e+03 -4.8329495e+03 - -4.6727001e+02 1.2890410e+03 -4.8330063e+03 - -4.9221315e+02 1.2791150e+03 -4.8330638e+03 - -5.1699005e+02 1.2686849e+03 -4.8331217e+03 - -5.4159167e+02 1.2577556e+03 -4.8331795e+03 - -5.6600889e+02 1.2463326e+03 -4.8332371e+03 - -5.9023259e+02 1.2344212e+03 -4.8332939e+03 - -6.1425362e+02 1.2220272e+03 -4.8333496e+03 - -6.3806281e+02 1.2091565e+03 -4.8334040e+03 - -6.6165097e+02 1.1958152e+03 -4.8334566e+03 - -6.8500891e+02 1.1820099e+03 -4.8335072e+03 - -7.0812741e+02 1.1677469e+03 -4.8335554e+03 - -7.3099726e+02 1.1530331e+03 -4.8336009e+03 - -7.5360927e+02 1.1378754e+03 -4.8336435e+03 - -7.7595424e+02 1.1222810e+03 -4.8336828e+03 - -7.9802300e+02 1.1062572e+03 -4.8337187e+03 - -8.1980639e+02 1.0898115e+03 -4.8337509e+03 - -8.4129530e+02 1.0729516e+03 -4.8337793e+03 - -8.6248064e+02 1.0556852e+03 -4.8338036e+03 - -8.8335339e+02 1.0380203e+03 -4.8338236e+03 - -9.0390457e+02 1.0199651e+03 -4.8338394e+03 - -9.2412527e+02 1.0015277e+03 -4.8338507e+03 - -9.4400664e+02 9.8271646e+02 -4.8338575e+03 - -9.6353993e+02 9.6353993e+02 -4.8338598e+03 - -9.8271646e+02 9.4400664e+02 -4.8338575e+03 - -1.0015277e+03 9.2412527e+02 -4.8338507e+03 - -1.0199651e+03 9.0390457e+02 -4.8338394e+03 - -1.0380203e+03 8.8335339e+02 -4.8338236e+03 - -1.0556852e+03 8.6248064e+02 -4.8338036e+03 - -1.0729516e+03 8.4129530e+02 -4.8337793e+03 - -1.0898115e+03 8.1980639e+02 -4.8337509e+03 - -1.1062572e+03 7.9802300e+02 -4.8337187e+03 - -1.1222810e+03 7.7595424e+02 -4.8336828e+03 - -1.1378754e+03 7.5360927e+02 -4.8336435e+03 - -1.1530331e+03 7.3099726e+02 -4.8336009e+03 - -1.1677469e+03 7.0812741e+02 -4.8335554e+03 - -1.1820099e+03 6.8500891e+02 -4.8335072e+03 - -1.1958152e+03 6.6165097e+02 -4.8334566e+03 - -1.2091565e+03 6.3806281e+02 -4.8334040e+03 - -1.2220272e+03 6.1425362e+02 -4.8333496e+03 - -1.2344212e+03 5.9023259e+02 -4.8332939e+03 - -1.2463326e+03 5.6600889e+02 -4.8332371e+03 - -1.2577556e+03 5.4159167e+02 -4.8331795e+03 - -1.2686849e+03 5.1699005e+02 -4.8331217e+03 - -1.2791150e+03 4.9221315e+02 -4.8330638e+03 - -1.2890410e+03 4.6727001e+02 -4.8330063e+03 - -1.2984581e+03 4.4216969e+02 -4.8329495e+03 - -1.3073617e+03 4.1692117e+02 -4.8328938e+03 - -1.3157475e+03 3.9153343e+02 -4.8328395e+03 - -1.3236114e+03 3.6601539e+02 -4.8327870e+03 - -1.3309497e+03 3.4037594e+02 -4.8327365e+03 - -1.3377589e+03 3.1462395e+02 -4.8326884e+03 - -1.3440355e+03 2.8876822e+02 -4.8326430e+03 - -1.3497765e+03 2.6281755e+02 -4.8326005e+03 - -1.3549792e+03 2.3678067e+02 -4.8325612e+03 - -1.3596411e+03 2.1066632e+02 -4.8325254e+03 - -1.3637599e+03 1.8448319e+02 -4.8324933e+03 - -1.3673335e+03 1.5823992e+02 -4.8324650e+03 - -1.3703603e+03 1.3194516e+02 -4.8324408e+03 - -1.3728387e+03 1.0560753e+02 -4.8324208e+03 - -1.3747677e+03 7.9235620e+01 -4.8324051e+03 - -1.3761461e+03 5.2838016e+01 -4.8323938e+03 - -1.3769735e+03 2.6423288e+01 -4.8323871e+03 - -1.3772493e+03 0.0000000e+00 -4.8323848e+03 - -1.3769735e+03 -2.6423288e+01 -4.8323871e+03 - -1.3761461e+03 -5.2838016e+01 -4.8323938e+03 - -1.3747677e+03 -7.9235620e+01 -4.8324051e+03 - -1.3728387e+03 -1.0560753e+02 -4.8324208e+03 - -1.3703603e+03 -1.3194516e+02 -4.8324408e+03 - -1.3673335e+03 -1.5823992e+02 -4.8324650e+03 - -1.3637599e+03 -1.8448319e+02 -4.8324933e+03 - -1.3596411e+03 -2.1066632e+02 -4.8325254e+03 - -1.3549792e+03 -2.3678067e+02 -4.8325612e+03 - -1.3497765e+03 -2.6281755e+02 -4.8326005e+03 - -1.3440355e+03 -2.8876822e+02 -4.8326430e+03 - -1.3377589e+03 -3.1462395e+02 -4.8326884e+03 - -1.3309497e+03 -3.4037594e+02 -4.8327365e+03 - -1.3236114e+03 -3.6601539e+02 -4.8327870e+03 - -1.3157475e+03 -3.9153343e+02 -4.8328395e+03 - -1.3073617e+03 -4.1692117e+02 -4.8328938e+03 - -1.2984581e+03 -4.4216969e+02 -4.8329495e+03 - -1.2890410e+03 -4.6727001e+02 -4.8330063e+03 - -1.2791150e+03 -4.9221315e+02 -4.8330638e+03 - -1.2686849e+03 -5.1699005e+02 -4.8331217e+03 - -1.2577556e+03 -5.4159167e+02 -4.8331795e+03 - -1.2463326e+03 -5.6600889e+02 -4.8332371e+03 - -1.2344212e+03 -5.9023259e+02 -4.8332939e+03 - -1.2220272e+03 -6.1425362e+02 -4.8333496e+03 - -1.2091565e+03 -6.3806281e+02 -4.8334040e+03 - -1.1958152e+03 -6.6165097e+02 -4.8334566e+03 - -1.1820099e+03 -6.8500891e+02 -4.8335072e+03 - -1.1677469e+03 -7.0812741e+02 -4.8335554e+03 - -1.1530331e+03 -7.3099726e+02 -4.8336009e+03 - -1.1378754e+03 -7.5360927e+02 -4.8336435e+03 - -1.1222810e+03 -7.7595424e+02 -4.8336828e+03 - -1.1062572e+03 -7.9802300e+02 -4.8337187e+03 - -1.0898115e+03 -8.1980639e+02 -4.8337509e+03 - -1.0729516e+03 -8.4129530e+02 -4.8337793e+03 - -1.0556852e+03 -8.6248064e+02 -4.8338036e+03 - -1.0380203e+03 -8.8335339e+02 -4.8338236e+03 - -1.0199651e+03 -9.0390457e+02 -4.8338394e+03 - -1.0015277e+03 -9.2412527e+02 -4.8338507e+03 - -9.8271646e+02 -9.4400664e+02 -4.8338575e+03 - -9.6353993e+02 -9.6353993e+02 -4.8338598e+03 - -9.4400664e+02 -9.8271646e+02 -4.8338575e+03 - -9.2412527e+02 -1.0015277e+03 -4.8338507e+03 - -9.0390457e+02 -1.0199651e+03 -4.8338394e+03 - -8.8335339e+02 -1.0380203e+03 -4.8338236e+03 - -8.6248064e+02 -1.0556852e+03 -4.8338036e+03 - -8.4129530e+02 -1.0729516e+03 -4.8337793e+03 - -8.1980639e+02 -1.0898115e+03 -4.8337509e+03 - -7.9802300e+02 -1.1062572e+03 -4.8337187e+03 - -7.7595424e+02 -1.1222810e+03 -4.8336828e+03 - -7.5360927e+02 -1.1378754e+03 -4.8336435e+03 - -7.3099726e+02 -1.1530331e+03 -4.8336009e+03 - -7.0812741e+02 -1.1677469e+03 -4.8335554e+03 - -6.8500891e+02 -1.1820099e+03 -4.8335072e+03 - -6.6165097e+02 -1.1958152e+03 -4.8334566e+03 - -6.3806281e+02 -1.2091565e+03 -4.8334040e+03 - -6.1425362e+02 -1.2220272e+03 -4.8333496e+03 - -5.9023259e+02 -1.2344212e+03 -4.8332939e+03 - -5.6600889e+02 -1.2463326e+03 -4.8332371e+03 - -5.4159167e+02 -1.2577556e+03 -4.8331795e+03 - -5.1699005e+02 -1.2686849e+03 -4.8331217e+03 - -4.9221315e+02 -1.2791150e+03 -4.8330638e+03 - -4.6727001e+02 -1.2890410e+03 -4.8330063e+03 - -4.4216969e+02 -1.2984581e+03 -4.8329495e+03 - -4.1692117e+02 -1.3073617e+03 -4.8328938e+03 - -3.9153343e+02 -1.3157475e+03 -4.8328395e+03 - -3.6601539e+02 -1.3236114e+03 -4.8327870e+03 - -3.4037594e+02 -1.3309497e+03 -4.8327365e+03 - -3.1462395e+02 -1.3377589e+03 -4.8326884e+03 - -2.8876822e+02 -1.3440355e+03 -4.8326430e+03 - -2.6281755e+02 -1.3497765e+03 -4.8326005e+03 - -2.3678067e+02 -1.3549792e+03 -4.8325612e+03 - -2.1066632e+02 -1.3596411e+03 -4.8325254e+03 - -1.8448319e+02 -1.3637599e+03 -4.8324933e+03 - -1.5823992e+02 -1.3673335e+03 -4.8324650e+03 - -1.3194516e+02 -1.3703603e+03 -4.8324408e+03 - -1.0560753e+02 -1.3728387e+03 -4.8324208e+03 - -7.9235620e+01 -1.3747677e+03 -4.8324051e+03 - -5.2838016e+01 -1.3761461e+03 -4.8323938e+03 - -2.6423288e+01 -1.3769735e+03 -4.8323871e+03 - 0.0000000e+00 -1.3772493e+03 -4.8323848e+03 - 2.6423288e+01 -1.3769735e+03 -4.8323871e+03 - 5.2838016e+01 -1.3761461e+03 -4.8323938e+03 - 7.9235620e+01 -1.3747677e+03 -4.8324051e+03 - 1.0560753e+02 -1.3728387e+03 -4.8324208e+03 - 1.3194516e+02 -1.3703603e+03 -4.8324408e+03 - 1.5823992e+02 -1.3673335e+03 -4.8324650e+03 - 1.8448319e+02 -1.3637599e+03 -4.8324933e+03 - 2.1066632e+02 -1.3596411e+03 -4.8325254e+03 - 2.3678067e+02 -1.3549792e+03 -4.8325612e+03 - 2.6281755e+02 -1.3497765e+03 -4.8326005e+03 - 2.8876822e+02 -1.3440355e+03 -4.8326430e+03 - 3.1462395e+02 -1.3377589e+03 -4.8326884e+03 - 3.4037594e+02 -1.3309497e+03 -4.8327365e+03 - 3.6601539e+02 -1.3236114e+03 -4.8327870e+03 - 3.9153343e+02 -1.3157475e+03 -4.8328395e+03 - 4.1692117e+02 -1.3073617e+03 -4.8328938e+03 - 4.4216969e+02 -1.2984581e+03 -4.8329495e+03 - 4.6727001e+02 -1.2890410e+03 -4.8330063e+03 - 4.9221315e+02 -1.2791150e+03 -4.8330638e+03 - 5.1699005e+02 -1.2686849e+03 -4.8331217e+03 - 5.4159167e+02 -1.2577556e+03 -4.8331795e+03 - 5.6600889e+02 -1.2463326e+03 -4.8332371e+03 - 5.9023259e+02 -1.2344212e+03 -4.8332939e+03 - 6.1425362e+02 -1.2220272e+03 -4.8333496e+03 - 6.3806281e+02 -1.2091565e+03 -4.8334040e+03 - 6.6165097e+02 -1.1958152e+03 -4.8334566e+03 - 6.8500891e+02 -1.1820099e+03 -4.8335072e+03 - 7.0812741e+02 -1.1677469e+03 -4.8335554e+03 - 7.3099726e+02 -1.1530331e+03 -4.8336009e+03 - 7.5360927e+02 -1.1378754e+03 -4.8336435e+03 - 7.7595424e+02 -1.1222810e+03 -4.8336828e+03 - 7.9802300e+02 -1.1062572e+03 -4.8337187e+03 - 8.1980639e+02 -1.0898115e+03 -4.8337509e+03 - 8.4129530e+02 -1.0729516e+03 -4.8337793e+03 - 8.6248064e+02 -1.0556852e+03 -4.8338036e+03 - 8.8335339e+02 -1.0380203e+03 -4.8338236e+03 - 9.0390457e+02 -1.0199651e+03 -4.8338394e+03 - 9.2412527e+02 -1.0015277e+03 -4.8338507e+03 - 9.4400664e+02 -9.8271646e+02 -4.8338575e+03 - 9.6353993e+02 -9.6353993e+02 -4.8338598e+03 - 9.8271646e+02 -9.4400664e+02 -4.8338575e+03 - 1.0015277e+03 -9.2412527e+02 -4.8338507e+03 - 1.0199651e+03 -9.0390457e+02 -4.8338394e+03 - 1.0380203e+03 -8.8335339e+02 -4.8338236e+03 - 1.0556852e+03 -8.6248064e+02 -4.8338036e+03 - 1.0729516e+03 -8.4129530e+02 -4.8337793e+03 - 1.0898115e+03 -8.1980639e+02 -4.8337509e+03 - 1.1062572e+03 -7.9802300e+02 -4.8337187e+03 - 1.1222810e+03 -7.7595424e+02 -4.8336828e+03 - 1.1378754e+03 -7.5360927e+02 -4.8336435e+03 - 1.1530331e+03 -7.3099726e+02 -4.8336009e+03 - 1.1677469e+03 -7.0812741e+02 -4.8335554e+03 - 1.1820099e+03 -6.8500891e+02 -4.8335072e+03 - 1.1958152e+03 -6.6165097e+02 -4.8334566e+03 - 1.2091565e+03 -6.3806281e+02 -4.8334040e+03 - 1.2220272e+03 -6.1425362e+02 -4.8333496e+03 - 1.2344212e+03 -5.9023259e+02 -4.8332939e+03 - 1.2463326e+03 -5.6600889e+02 -4.8332371e+03 - 1.2577556e+03 -5.4159167e+02 -4.8331795e+03 - 1.2686849e+03 -5.1699005e+02 -4.8331217e+03 - 1.2791150e+03 -4.9221315e+02 -4.8330638e+03 - 1.2890410e+03 -4.6727001e+02 -4.8330063e+03 - 1.2984581e+03 -4.4216969e+02 -4.8329495e+03 - 1.3073617e+03 -4.1692117e+02 -4.8328938e+03 - 1.3157475e+03 -3.9153343e+02 -4.8328395e+03 - 1.3236114e+03 -3.6601539e+02 -4.8327870e+03 - 1.3309497e+03 -3.4037594e+02 -4.8327365e+03 - 1.3377589e+03 -3.1462395e+02 -4.8326884e+03 - 1.3440355e+03 -2.8876822e+02 -4.8326430e+03 - 1.3497765e+03 -2.6281755e+02 -4.8326005e+03 - 1.3549792e+03 -2.3678067e+02 -4.8325612e+03 - 1.3596411e+03 -2.1066632e+02 -4.8325254e+03 - 1.3637599e+03 -1.8448319e+02 -4.8324933e+03 - 1.3673335e+03 -1.5823992e+02 -4.8324650e+03 - 1.3703603e+03 -1.3194516e+02 -4.8324408e+03 - 1.3728387e+03 -1.0560753e+02 -4.8324208e+03 - 1.3747677e+03 -7.9235620e+01 -4.8324051e+03 - 1.3761461e+03 -5.2838016e+01 -4.8323938e+03 - 1.3769735e+03 -2.6423288e+01 -4.8323871e+03 - 1.3772493e+03 0.0000000e+00 -4.8323848e+03 - 1.1998436e+03 0.0000000e+00 -4.8551372e+03 - 1.1996053e+03 2.3154901e+01 -4.8551385e+03 - 1.1988905e+03 4.6301906e+01 -4.8551423e+03 - 1.1976995e+03 6.9433119e+01 -4.8551488e+03 - 1.1960329e+03 9.2540639e+01 -4.8551578e+03 - 1.1938915e+03 1.1561656e+02 -4.8551692e+03 - 1.1912763e+03 1.3865298e+02 -4.8551831e+03 - 1.1881886e+03 1.6164199e+02 -4.8551993e+03 - 1.1846296e+03 1.8457565e+02 -4.8552176e+03 - 1.1806013e+03 2.0744605e+02 -4.8552381e+03 - 1.1761053e+03 2.3024524e+02 -4.8552606e+03 - 1.1711439e+03 2.5296528e+02 -4.8552849e+03 - 1.1657193e+03 2.7559821e+02 -4.8553109e+03 - 1.1598342e+03 2.9813607e+02 -4.8553384e+03 - 1.1534912e+03 3.2057089e+02 -4.8553673e+03 - 1.1466933e+03 3.4289468e+02 -4.8553973e+03 - 1.1394437e+03 3.6509945e+02 -4.8554284e+03 - 1.1317458e+03 3.8717721e+02 -4.8554602e+03 - 1.1236031e+03 4.0911994e+02 -4.8554927e+03 - 1.1150195e+03 4.3091963e+02 -4.8555256e+03 - 1.1059990e+03 4.5256828e+02 -4.8555587e+03 - 1.0965456e+03 4.7405786e+02 -4.8555918e+03 - 1.0866638e+03 4.9538037e+02 -4.8556247e+03 - 1.0763582e+03 5.1652779e+02 -4.8556571e+03 - 1.0656335e+03 5.3749210e+02 -4.8556890e+03 - 1.0544946e+03 5.5826533e+02 -4.8557201e+03 - 1.0429466e+03 5.7883947e+02 -4.8557502e+03 - 1.0309949e+03 5.9920656e+02 -4.8557791e+03 - 1.0186448e+03 6.1935864e+02 -4.8558066e+03 - 1.0059020e+03 6.3928780e+02 -4.8558327e+03 - 9.9277220e+02 6.5898612e+02 -4.8558570e+03 - 9.7926141e+02 6.7844575e+02 -4.8558795e+03 - 9.6537565e+02 6.9765885e+02 -4.8559000e+03 - 9.5112117e+02 7.1661763e+02 -4.8559184e+03 - 9.3650430e+02 7.3531435e+02 -4.8559346e+03 - 9.2153154e+02 7.5374132e+02 -4.8559485e+03 - 9.0620951e+02 7.7189091e+02 -4.8559600e+03 - 8.9054495e+02 7.8975555e+02 -4.8559690e+03 - 8.7454470e+02 8.0732774e+02 -4.8559754e+03 - 8.5821574e+02 8.2460005e+02 -4.8559793e+03 - 8.4156513e+02 8.4156513e+02 -4.8559806e+03 - 8.2460005e+02 8.5821574e+02 -4.8559793e+03 - 8.0732774e+02 8.7454470e+02 -4.8559754e+03 - 7.8975555e+02 8.9054495e+02 -4.8559690e+03 - 7.7189091e+02 9.0620951e+02 -4.8559600e+03 - 7.5374132e+02 9.2153154e+02 -4.8559485e+03 - 7.3531435e+02 9.3650430e+02 -4.8559346e+03 - 7.1661763e+02 9.5112117e+02 -4.8559184e+03 - 6.9765885e+02 9.6537565e+02 -4.8559000e+03 - 6.7844575e+02 9.7926141e+02 -4.8558795e+03 - 6.5898612e+02 9.9277220e+02 -4.8558570e+03 - 6.3928780e+02 1.0059020e+03 -4.8558327e+03 - 6.1935864e+02 1.0186448e+03 -4.8558066e+03 - 5.9920656e+02 1.0309949e+03 -4.8557791e+03 - 5.7883947e+02 1.0429466e+03 -4.8557502e+03 - 5.5826533e+02 1.0544946e+03 -4.8557201e+03 - 5.3749210e+02 1.0656335e+03 -4.8556890e+03 - 5.1652779e+02 1.0763582e+03 -4.8556571e+03 - 4.9538037e+02 1.0866638e+03 -4.8556247e+03 - 4.7405786e+02 1.0965456e+03 -4.8555918e+03 - 4.5256828e+02 1.1059990e+03 -4.8555587e+03 - 4.3091963e+02 1.1150195e+03 -4.8555256e+03 - 4.0911994e+02 1.1236031e+03 -4.8554927e+03 - 3.8717721e+02 1.1317458e+03 -4.8554602e+03 - 3.6509945e+02 1.1394437e+03 -4.8554284e+03 - 3.4289468e+02 1.1466933e+03 -4.8553973e+03 - 3.2057089e+02 1.1534912e+03 -4.8553673e+03 - 2.9813607e+02 1.1598342e+03 -4.8553384e+03 - 2.7559821e+02 1.1657193e+03 -4.8553109e+03 - 2.5296528e+02 1.1711439e+03 -4.8552849e+03 - 2.3024524e+02 1.1761053e+03 -4.8552606e+03 - 2.0744605e+02 1.1806013e+03 -4.8552381e+03 - 1.8457565e+02 1.1846296e+03 -4.8552176e+03 - 1.6164199e+02 1.1881886e+03 -4.8551993e+03 - 1.3865298e+02 1.1912763e+03 -4.8551831e+03 - 1.1561656e+02 1.1938915e+03 -4.8551692e+03 - 9.2540639e+01 1.1960329e+03 -4.8551578e+03 - 6.9433119e+01 1.1976995e+03 -4.8551488e+03 - 4.6301906e+01 1.1988905e+03 -4.8551423e+03 - 2.3154901e+01 1.1996053e+03 -4.8551385e+03 - 0.0000000e+00 1.1998436e+03 -4.8551372e+03 - -2.3154901e+01 1.1996053e+03 -4.8551385e+03 - -4.6301906e+01 1.1988905e+03 -4.8551423e+03 - -6.9433119e+01 1.1976995e+03 -4.8551488e+03 - -9.2540639e+01 1.1960329e+03 -4.8551578e+03 - -1.1561656e+02 1.1938915e+03 -4.8551692e+03 - -1.3865298e+02 1.1912763e+03 -4.8551831e+03 - -1.6164199e+02 1.1881886e+03 -4.8551993e+03 - -1.8457565e+02 1.1846296e+03 -4.8552176e+03 - -2.0744605e+02 1.1806013e+03 -4.8552381e+03 - -2.3024524e+02 1.1761053e+03 -4.8552606e+03 - -2.5296528e+02 1.1711439e+03 -4.8552849e+03 - -2.7559821e+02 1.1657193e+03 -4.8553109e+03 - -2.9813607e+02 1.1598342e+03 -4.8553384e+03 - -3.2057089e+02 1.1534912e+03 -4.8553673e+03 - -3.4289468e+02 1.1466933e+03 -4.8553973e+03 - -3.6509945e+02 1.1394437e+03 -4.8554284e+03 - -3.8717721e+02 1.1317458e+03 -4.8554602e+03 - -4.0911994e+02 1.1236031e+03 -4.8554927e+03 - -4.3091963e+02 1.1150195e+03 -4.8555256e+03 - -4.5256828e+02 1.1059990e+03 -4.8555587e+03 - -4.7405786e+02 1.0965456e+03 -4.8555918e+03 - -4.9538037e+02 1.0866638e+03 -4.8556247e+03 - -5.1652779e+02 1.0763582e+03 -4.8556571e+03 - -5.3749210e+02 1.0656335e+03 -4.8556890e+03 - -5.5826533e+02 1.0544946e+03 -4.8557201e+03 - -5.7883947e+02 1.0429466e+03 -4.8557502e+03 - -5.9920656e+02 1.0309949e+03 -4.8557791e+03 - -6.1935864e+02 1.0186448e+03 -4.8558066e+03 - -6.3928780e+02 1.0059020e+03 -4.8558327e+03 - -6.5898612e+02 9.9277220e+02 -4.8558570e+03 - -6.7844575e+02 9.7926141e+02 -4.8558795e+03 - -6.9765885e+02 9.6537565e+02 -4.8559000e+03 - -7.1661763e+02 9.5112117e+02 -4.8559184e+03 - -7.3531435e+02 9.3650430e+02 -4.8559346e+03 - -7.5374132e+02 9.2153154e+02 -4.8559485e+03 - -7.7189091e+02 9.0620951e+02 -4.8559600e+03 - -7.8975555e+02 8.9054495e+02 -4.8559690e+03 - -8.0732774e+02 8.7454470e+02 -4.8559754e+03 - -8.2460005e+02 8.5821574e+02 -4.8559793e+03 - -8.4156513e+02 8.4156513e+02 -4.8559806e+03 - -8.5821574e+02 8.2460005e+02 -4.8559793e+03 - -8.7454470e+02 8.0732774e+02 -4.8559754e+03 - -8.9054495e+02 7.8975555e+02 -4.8559690e+03 - -9.0620951e+02 7.7189091e+02 -4.8559600e+03 - -9.2153154e+02 7.5374132e+02 -4.8559485e+03 - -9.3650430e+02 7.3531435e+02 -4.8559346e+03 - -9.5112117e+02 7.1661763e+02 -4.8559184e+03 - -9.6537565e+02 6.9765885e+02 -4.8559000e+03 - -9.7926141e+02 6.7844575e+02 -4.8558795e+03 - -9.9277220e+02 6.5898612e+02 -4.8558570e+03 - -1.0059020e+03 6.3928780e+02 -4.8558327e+03 - -1.0186448e+03 6.1935864e+02 -4.8558066e+03 - -1.0309949e+03 5.9920656e+02 -4.8557791e+03 - -1.0429466e+03 5.7883947e+02 -4.8557502e+03 - -1.0544946e+03 5.5826533e+02 -4.8557201e+03 - -1.0656335e+03 5.3749210e+02 -4.8556890e+03 - -1.0763582e+03 5.1652779e+02 -4.8556571e+03 - -1.0866638e+03 4.9538037e+02 -4.8556247e+03 - -1.0965456e+03 4.7405786e+02 -4.8555918e+03 - -1.1059990e+03 4.5256828e+02 -4.8555587e+03 - -1.1150195e+03 4.3091963e+02 -4.8555256e+03 - -1.1236031e+03 4.0911994e+02 -4.8554927e+03 - -1.1317458e+03 3.8717721e+02 -4.8554602e+03 - -1.1394437e+03 3.6509945e+02 -4.8554284e+03 - -1.1466933e+03 3.4289468e+02 -4.8553973e+03 - -1.1534912e+03 3.2057089e+02 -4.8553673e+03 - -1.1598342e+03 2.9813607e+02 -4.8553384e+03 - -1.1657193e+03 2.7559821e+02 -4.8553109e+03 - -1.1711439e+03 2.5296528e+02 -4.8552849e+03 - -1.1761053e+03 2.3024524e+02 -4.8552606e+03 - -1.1806013e+03 2.0744605e+02 -4.8552381e+03 - -1.1846296e+03 1.8457565e+02 -4.8552176e+03 - -1.1881886e+03 1.6164199e+02 -4.8551993e+03 - -1.1912763e+03 1.3865298e+02 -4.8551831e+03 - -1.1938915e+03 1.1561656e+02 -4.8551692e+03 - -1.1960329e+03 9.2540639e+01 -4.8551578e+03 - -1.1976995e+03 6.9433119e+01 -4.8551488e+03 - -1.1988905e+03 4.6301906e+01 -4.8551423e+03 - -1.1996053e+03 2.3154901e+01 -4.8551385e+03 - -1.1998436e+03 0.0000000e+00 -4.8551372e+03 - -1.1996053e+03 -2.3154901e+01 -4.8551385e+03 - -1.1988905e+03 -4.6301906e+01 -4.8551423e+03 - -1.1976995e+03 -6.9433119e+01 -4.8551488e+03 - -1.1960329e+03 -9.2540639e+01 -4.8551578e+03 - -1.1938915e+03 -1.1561656e+02 -4.8551692e+03 - -1.1912763e+03 -1.3865298e+02 -4.8551831e+03 - -1.1881886e+03 -1.6164199e+02 -4.8551993e+03 - -1.1846296e+03 -1.8457565e+02 -4.8552176e+03 - -1.1806013e+03 -2.0744605e+02 -4.8552381e+03 - -1.1761053e+03 -2.3024524e+02 -4.8552606e+03 - -1.1711439e+03 -2.5296528e+02 -4.8552849e+03 - -1.1657193e+03 -2.7559821e+02 -4.8553109e+03 - -1.1598342e+03 -2.9813607e+02 -4.8553384e+03 - -1.1534912e+03 -3.2057089e+02 -4.8553673e+03 - -1.1466933e+03 -3.4289468e+02 -4.8553973e+03 - -1.1394437e+03 -3.6509945e+02 -4.8554284e+03 - -1.1317458e+03 -3.8717721e+02 -4.8554602e+03 - -1.1236031e+03 -4.0911994e+02 -4.8554927e+03 - -1.1150195e+03 -4.3091963e+02 -4.8555256e+03 - -1.1059990e+03 -4.5256828e+02 -4.8555587e+03 - -1.0965456e+03 -4.7405786e+02 -4.8555918e+03 - -1.0866638e+03 -4.9538037e+02 -4.8556247e+03 - -1.0763582e+03 -5.1652779e+02 -4.8556571e+03 - -1.0656335e+03 -5.3749210e+02 -4.8556890e+03 - -1.0544946e+03 -5.5826533e+02 -4.8557201e+03 - -1.0429466e+03 -5.7883947e+02 -4.8557502e+03 - -1.0309949e+03 -5.9920656e+02 -4.8557791e+03 - -1.0186448e+03 -6.1935864e+02 -4.8558066e+03 - -1.0059020e+03 -6.3928780e+02 -4.8558327e+03 - -9.9277220e+02 -6.5898612e+02 -4.8558570e+03 - -9.7926141e+02 -6.7844575e+02 -4.8558795e+03 - -9.6537565e+02 -6.9765885e+02 -4.8559000e+03 - -9.5112117e+02 -7.1661763e+02 -4.8559184e+03 - -9.3650430e+02 -7.3531435e+02 -4.8559346e+03 - -9.2153154e+02 -7.5374132e+02 -4.8559485e+03 - -9.0620951e+02 -7.7189091e+02 -4.8559600e+03 - -8.9054495e+02 -7.8975555e+02 -4.8559690e+03 - -8.7454470e+02 -8.0732774e+02 -4.8559754e+03 - -8.5821574e+02 -8.2460005e+02 -4.8559793e+03 - -8.4156513e+02 -8.4156513e+02 -4.8559806e+03 - -8.2460005e+02 -8.5821574e+02 -4.8559793e+03 - -8.0732774e+02 -8.7454470e+02 -4.8559754e+03 - -7.8975555e+02 -8.9054495e+02 -4.8559690e+03 - -7.7189091e+02 -9.0620951e+02 -4.8559600e+03 - -7.5374132e+02 -9.2153154e+02 -4.8559485e+03 - -7.3531435e+02 -9.3650430e+02 -4.8559346e+03 - -7.1661763e+02 -9.5112117e+02 -4.8559184e+03 - -6.9765885e+02 -9.6537565e+02 -4.8559000e+03 - -6.7844575e+02 -9.7926141e+02 -4.8558795e+03 - -6.5898612e+02 -9.9277220e+02 -4.8558570e+03 - -6.3928780e+02 -1.0059020e+03 -4.8558327e+03 - -6.1935864e+02 -1.0186448e+03 -4.8558066e+03 - -5.9920656e+02 -1.0309949e+03 -4.8557791e+03 - -5.7883947e+02 -1.0429466e+03 -4.8557502e+03 - -5.5826533e+02 -1.0544946e+03 -4.8557201e+03 - -5.3749210e+02 -1.0656335e+03 -4.8556890e+03 - -5.1652779e+02 -1.0763582e+03 -4.8556571e+03 - -4.9538037e+02 -1.0866638e+03 -4.8556247e+03 - -4.7405786e+02 -1.0965456e+03 -4.8555918e+03 - -4.5256828e+02 -1.1059990e+03 -4.8555587e+03 - -4.3091963e+02 -1.1150195e+03 -4.8555256e+03 - -4.0911994e+02 -1.1236031e+03 -4.8554927e+03 - -3.8717721e+02 -1.1317458e+03 -4.8554602e+03 - -3.6509945e+02 -1.1394437e+03 -4.8554284e+03 - -3.4289468e+02 -1.1466933e+03 -4.8553973e+03 - -3.2057089e+02 -1.1534912e+03 -4.8553673e+03 - -2.9813607e+02 -1.1598342e+03 -4.8553384e+03 - -2.7559821e+02 -1.1657193e+03 -4.8553109e+03 - -2.5296528e+02 -1.1711439e+03 -4.8552849e+03 - -2.3024524e+02 -1.1761053e+03 -4.8552606e+03 - -2.0744605e+02 -1.1806013e+03 -4.8552381e+03 - -1.8457565e+02 -1.1846296e+03 -4.8552176e+03 - -1.6164199e+02 -1.1881886e+03 -4.8551993e+03 - -1.3865298e+02 -1.1912763e+03 -4.8551831e+03 - -1.1561656e+02 -1.1938915e+03 -4.8551692e+03 - -9.2540639e+01 -1.1960329e+03 -4.8551578e+03 - -6.9433119e+01 -1.1976995e+03 -4.8551488e+03 - -4.6301906e+01 -1.1988905e+03 -4.8551423e+03 - -2.3154901e+01 -1.1996053e+03 -4.8551385e+03 - 0.0000000e+00 -1.1998436e+03 -4.8551372e+03 - 2.3154901e+01 -1.1996053e+03 -4.8551385e+03 - 4.6301906e+01 -1.1988905e+03 -4.8551423e+03 - 6.9433119e+01 -1.1976995e+03 -4.8551488e+03 - 9.2540639e+01 -1.1960329e+03 -4.8551578e+03 - 1.1561656e+02 -1.1938915e+03 -4.8551692e+03 - 1.3865298e+02 -1.1912763e+03 -4.8551831e+03 - 1.6164199e+02 -1.1881886e+03 -4.8551993e+03 - 1.8457565e+02 -1.1846296e+03 -4.8552176e+03 - 2.0744605e+02 -1.1806013e+03 -4.8552381e+03 - 2.3024524e+02 -1.1761053e+03 -4.8552606e+03 - 2.5296528e+02 -1.1711439e+03 -4.8552849e+03 - 2.7559821e+02 -1.1657193e+03 -4.8553109e+03 - 2.9813607e+02 -1.1598342e+03 -4.8553384e+03 - 3.2057089e+02 -1.1534912e+03 -4.8553673e+03 - 3.4289468e+02 -1.1466933e+03 -4.8553973e+03 - 3.6509945e+02 -1.1394437e+03 -4.8554284e+03 - 3.8717721e+02 -1.1317458e+03 -4.8554602e+03 - 4.0911994e+02 -1.1236031e+03 -4.8554927e+03 - 4.3091963e+02 -1.1150195e+03 -4.8555256e+03 - 4.5256828e+02 -1.1059990e+03 -4.8555587e+03 - 4.7405786e+02 -1.0965456e+03 -4.8555918e+03 - 4.9538037e+02 -1.0866638e+03 -4.8556247e+03 - 5.1652779e+02 -1.0763582e+03 -4.8556571e+03 - 5.3749210e+02 -1.0656335e+03 -4.8556890e+03 - 5.5826533e+02 -1.0544946e+03 -4.8557201e+03 - 5.7883947e+02 -1.0429466e+03 -4.8557502e+03 - 5.9920656e+02 -1.0309949e+03 -4.8557791e+03 - 6.1935864e+02 -1.0186448e+03 -4.8558066e+03 - 6.3928780e+02 -1.0059020e+03 -4.8558327e+03 - 6.5898612e+02 -9.9277220e+02 -4.8558570e+03 - 6.7844575e+02 -9.7926141e+02 -4.8558795e+03 - 6.9765885e+02 -9.6537565e+02 -4.8559000e+03 - 7.1661763e+02 -9.5112117e+02 -4.8559184e+03 - 7.3531435e+02 -9.3650430e+02 -4.8559346e+03 - 7.5374132e+02 -9.2153154e+02 -4.8559485e+03 - 7.7189091e+02 -9.0620951e+02 -4.8559600e+03 - 7.8975555e+02 -8.9054495e+02 -4.8559690e+03 - 8.0732774e+02 -8.7454470e+02 -4.8559754e+03 - 8.2460005e+02 -8.5821574e+02 -4.8559793e+03 - 8.4156513e+02 -8.4156513e+02 -4.8559806e+03 - 8.5821574e+02 -8.2460005e+02 -4.8559793e+03 - 8.7454470e+02 -8.0732774e+02 -4.8559754e+03 - 8.9054495e+02 -7.8975555e+02 -4.8559690e+03 - 9.0620951e+02 -7.7189091e+02 -4.8559600e+03 - 9.2153154e+02 -7.5374132e+02 -4.8559485e+03 - 9.3650430e+02 -7.3531435e+02 -4.8559346e+03 - 9.5112117e+02 -7.1661763e+02 -4.8559184e+03 - 9.6537565e+02 -6.9765885e+02 -4.8559000e+03 - 9.7926141e+02 -6.7844575e+02 -4.8558795e+03 - 9.9277220e+02 -6.5898612e+02 -4.8558570e+03 - 1.0059020e+03 -6.3928780e+02 -4.8558327e+03 - 1.0186448e+03 -6.1935864e+02 -4.8558066e+03 - 1.0309949e+03 -5.9920656e+02 -4.8557791e+03 - 1.0429466e+03 -5.7883947e+02 -4.8557502e+03 - 1.0544946e+03 -5.5826533e+02 -4.8557201e+03 - 1.0656335e+03 -5.3749210e+02 -4.8556890e+03 - 1.0763582e+03 -5.1652779e+02 -4.8556571e+03 - 1.0866638e+03 -4.9538037e+02 -4.8556247e+03 - 1.0965456e+03 -4.7405786e+02 -4.8555918e+03 - 1.1059990e+03 -4.5256828e+02 -4.8555587e+03 - 1.1150195e+03 -4.3091963e+02 -4.8555256e+03 - 1.1236031e+03 -4.0911994e+02 -4.8554927e+03 - 1.1317458e+03 -3.8717721e+02 -4.8554602e+03 - 1.1394437e+03 -3.6509945e+02 -4.8554284e+03 - 1.1466933e+03 -3.4289468e+02 -4.8553973e+03 - 1.1534912e+03 -3.2057089e+02 -4.8553673e+03 - 1.1598342e+03 -2.9813607e+02 -4.8553384e+03 - 1.1657193e+03 -2.7559821e+02 -4.8553109e+03 - 1.1711439e+03 -2.5296528e+02 -4.8552849e+03 - 1.1761053e+03 -2.3024524e+02 -4.8552606e+03 - 1.1806013e+03 -2.0744605e+02 -4.8552381e+03 - 1.1846296e+03 -1.8457565e+02 -4.8552176e+03 - 1.1881886e+03 -1.6164199e+02 -4.8551993e+03 - 1.1912763e+03 -1.3865298e+02 -4.8551831e+03 - 1.1938915e+03 -1.1561656e+02 -4.8551692e+03 - 1.1960329e+03 -9.2540639e+01 -4.8551578e+03 - 1.1976995e+03 -6.9433119e+01 -4.8551488e+03 - 1.1988905e+03 -4.6301906e+01 -4.8551423e+03 - 1.1996053e+03 -2.3154901e+01 -4.8551385e+03 - 1.1998436e+03 0.0000000e+00 -4.8551372e+03 - 1.0143366e+03 0.0000000e+00 -4.8752365e+03 - 1.0141367e+03 1.9675031e+01 -4.8752371e+03 - 1.0135372e+03 3.9343076e+01 -4.8752391e+03 - 1.0125383e+03 5.8997147e+01 -4.8752424e+03 - 1.0111406e+03 7.8630261e+01 -4.8752469e+03 - 1.0093445e+03 9.8235432e+01 -4.8752527e+03 - 1.0071510e+03 1.1780568e+02 -4.8752598e+03 - 1.0045610e+03 1.3733401e+02 -4.8752680e+03 - 1.0015757e+03 1.5681346e+02 -4.8752773e+03 - 9.9819640e+02 1.7623704e+02 -4.8752877e+03 - 9.9442468e+02 1.9559779e+02 -4.8752991e+03 - 9.9026222e+02 2.1488873e+02 -4.8753115e+03 - 9.8571088e+02 2.3410289e+02 -4.8753247e+03 - 9.8077272e+02 2.5323332e+02 -4.8753386e+03 - 9.7544995e+02 2.7227307e+02 -4.8753533e+03 - 9.6974496e+02 2.9121518e+02 -4.8753685e+03 - 9.6366029e+02 3.1005273e+02 -4.8753843e+03 - 9.5719868e+02 3.2877879e+02 -4.8754005e+03 - 9.5036301e+02 3.4738643e+02 -4.8754170e+03 - 9.4315633e+02 3.6586877e+02 -4.8754337e+03 - 9.3558183e+02 3.8421891e+02 -4.8754504e+03 - 9.2764289e+02 4.0242999e+02 -4.8754672e+03 - 9.1934303e+02 4.2049516e+02 -4.8754839e+03 - 9.1068592e+02 4.3840758e+02 -4.8755004e+03 - 9.0167537e+02 4.5616045e+02 -4.8755166e+03 - 8.9231537e+02 4.7374700e+02 -4.8755324e+03 - 8.8261001e+02 4.9116047e+02 -4.8755476e+03 - 8.7256355e+02 5.0839414e+02 -4.8755623e+03 - 8.6218039e+02 5.2544133e+02 -4.8755763e+03 - 8.5146504e+02 5.4229539e+02 -4.8755895e+03 - 8.4042215e+02 5.5894970e+02 -4.8756018e+03 - 8.2905652e+02 5.7539772e+02 -4.8756132e+03 - 8.1737305e+02 5.9163292e+02 -4.8756236e+03 - 8.0537675e+02 6.0764883e+02 -4.8756330e+03 - 7.9307278e+02 6.2343904e+02 -4.8756412e+03 - 7.8046637e+02 6.3899720e+02 -4.8756482e+03 - 7.6756291e+02 6.5431701e+02 -4.8756541e+03 - 7.5436785e+02 6.6939224e+02 -4.8756586e+03 - 7.4088676e+02 6.8421673e+02 -4.8756619e+03 - 7.2712530e+02 6.9878440e+02 -4.8756639e+03 - 7.1308923e+02 7.1308923e+02 -4.8756645e+03 - 6.9878440e+02 7.2712530e+02 -4.8756639e+03 - 6.8421673e+02 7.4088676e+02 -4.8756619e+03 - 6.6939224e+02 7.5436785e+02 -4.8756586e+03 - 6.5431701e+02 7.6756291e+02 -4.8756541e+03 - 6.3899720e+02 7.8046637e+02 -4.8756482e+03 - 6.2343904e+02 7.9307278e+02 -4.8756412e+03 - 6.0764883e+02 8.0537675e+02 -4.8756330e+03 - 5.9163292e+02 8.1737305e+02 -4.8756236e+03 - 5.7539772e+02 8.2905652e+02 -4.8756132e+03 - 5.5894970e+02 8.4042215e+02 -4.8756018e+03 - 5.4229539e+02 8.5146504e+02 -4.8755895e+03 - 5.2544133e+02 8.6218039e+02 -4.8755763e+03 - 5.0839414e+02 8.7256355e+02 -4.8755623e+03 - 4.9116047e+02 8.8261001e+02 -4.8755476e+03 - 4.7374700e+02 8.9231537e+02 -4.8755324e+03 - 4.5616045e+02 9.0167537e+02 -4.8755166e+03 - 4.3840758e+02 9.1068592e+02 -4.8755004e+03 - 4.2049516e+02 9.1934303e+02 -4.8754839e+03 - 4.0242999e+02 9.2764289e+02 -4.8754672e+03 - 3.8421891e+02 9.3558183e+02 -4.8754504e+03 - 3.6586877e+02 9.4315633e+02 -4.8754337e+03 - 3.4738643e+02 9.5036301e+02 -4.8754170e+03 - 3.2877879e+02 9.5719868e+02 -4.8754005e+03 - 3.1005273e+02 9.6366029e+02 -4.8753843e+03 - 2.9121518e+02 9.6974496e+02 -4.8753685e+03 - 2.7227307e+02 9.7544995e+02 -4.8753533e+03 - 2.5323332e+02 9.8077272e+02 -4.8753386e+03 - 2.3410289e+02 9.8571088e+02 -4.8753247e+03 - 2.1488873e+02 9.9026222e+02 -4.8753115e+03 - 1.9559779e+02 9.9442468e+02 -4.8752991e+03 - 1.7623704e+02 9.9819640e+02 -4.8752877e+03 - 1.5681346e+02 1.0015757e+03 -4.8752773e+03 - 1.3733401e+02 1.0045610e+03 -4.8752680e+03 - 1.1780568e+02 1.0071510e+03 -4.8752598e+03 - 9.8235432e+01 1.0093445e+03 -4.8752527e+03 - 7.8630261e+01 1.0111406e+03 -4.8752469e+03 - 5.8997147e+01 1.0125383e+03 -4.8752424e+03 - 3.9343076e+01 1.0135372e+03 -4.8752391e+03 - 1.9675031e+01 1.0141367e+03 -4.8752371e+03 - 0.0000000e+00 1.0143366e+03 -4.8752365e+03 - -1.9675031e+01 1.0141367e+03 -4.8752371e+03 - -3.9343076e+01 1.0135372e+03 -4.8752391e+03 - -5.8997147e+01 1.0125383e+03 -4.8752424e+03 - -7.8630261e+01 1.0111406e+03 -4.8752469e+03 - -9.8235432e+01 1.0093445e+03 -4.8752527e+03 - -1.1780568e+02 1.0071510e+03 -4.8752598e+03 - -1.3733401e+02 1.0045610e+03 -4.8752680e+03 - -1.5681346e+02 1.0015757e+03 -4.8752773e+03 - -1.7623704e+02 9.9819640e+02 -4.8752877e+03 - -1.9559779e+02 9.9442468e+02 -4.8752991e+03 - -2.1488873e+02 9.9026222e+02 -4.8753115e+03 - -2.3410289e+02 9.8571088e+02 -4.8753247e+03 - -2.5323332e+02 9.8077272e+02 -4.8753386e+03 - -2.7227307e+02 9.7544995e+02 -4.8753533e+03 - -2.9121518e+02 9.6974496e+02 -4.8753685e+03 - -3.1005273e+02 9.6366029e+02 -4.8753843e+03 - -3.2877879e+02 9.5719868e+02 -4.8754005e+03 - -3.4738643e+02 9.5036301e+02 -4.8754170e+03 - -3.6586877e+02 9.4315633e+02 -4.8754337e+03 - -3.8421891e+02 9.3558183e+02 -4.8754504e+03 - -4.0242999e+02 9.2764289e+02 -4.8754672e+03 - -4.2049516e+02 9.1934303e+02 -4.8754839e+03 - -4.3840758e+02 9.1068592e+02 -4.8755004e+03 - -4.5616045e+02 9.0167537e+02 -4.8755166e+03 - -4.7374700e+02 8.9231537e+02 -4.8755324e+03 - -4.9116047e+02 8.8261001e+02 -4.8755476e+03 - -5.0839414e+02 8.7256355e+02 -4.8755623e+03 - -5.2544133e+02 8.6218039e+02 -4.8755763e+03 - -5.4229539e+02 8.5146504e+02 -4.8755895e+03 - -5.5894970e+02 8.4042215e+02 -4.8756018e+03 - -5.7539772e+02 8.2905652e+02 -4.8756132e+03 - -5.9163292e+02 8.1737305e+02 -4.8756236e+03 - -6.0764883e+02 8.0537675e+02 -4.8756330e+03 - -6.2343904e+02 7.9307278e+02 -4.8756412e+03 - -6.3899720e+02 7.8046637e+02 -4.8756482e+03 - -6.5431701e+02 7.6756291e+02 -4.8756541e+03 - -6.6939224e+02 7.5436785e+02 -4.8756586e+03 - -6.8421673e+02 7.4088676e+02 -4.8756619e+03 - -6.9878440e+02 7.2712530e+02 -4.8756639e+03 - -7.1308923e+02 7.1308923e+02 -4.8756645e+03 - -7.2712530e+02 6.9878440e+02 -4.8756639e+03 - -7.4088676e+02 6.8421673e+02 -4.8756619e+03 - -7.5436785e+02 6.6939224e+02 -4.8756586e+03 - -7.6756291e+02 6.5431701e+02 -4.8756541e+03 - -7.8046637e+02 6.3899720e+02 -4.8756482e+03 - -7.9307278e+02 6.2343904e+02 -4.8756412e+03 - -8.0537675e+02 6.0764883e+02 -4.8756330e+03 - -8.1737305e+02 5.9163292e+02 -4.8756236e+03 - -8.2905652e+02 5.7539772e+02 -4.8756132e+03 - -8.4042215e+02 5.5894970e+02 -4.8756018e+03 - -8.5146504e+02 5.4229539e+02 -4.8755895e+03 - -8.6218039e+02 5.2544133e+02 -4.8755763e+03 - -8.7256355e+02 5.0839414e+02 -4.8755623e+03 - -8.8261001e+02 4.9116047e+02 -4.8755476e+03 - -8.9231537e+02 4.7374700e+02 -4.8755324e+03 - -9.0167537e+02 4.5616045e+02 -4.8755166e+03 - -9.1068592e+02 4.3840758e+02 -4.8755004e+03 - -9.1934303e+02 4.2049516e+02 -4.8754839e+03 - -9.2764289e+02 4.0242999e+02 -4.8754672e+03 - -9.3558183e+02 3.8421891e+02 -4.8754504e+03 - -9.4315633e+02 3.6586877e+02 -4.8754337e+03 - -9.5036301e+02 3.4738643e+02 -4.8754170e+03 - -9.5719868e+02 3.2877879e+02 -4.8754005e+03 - -9.6366029e+02 3.1005273e+02 -4.8753843e+03 - -9.6974496e+02 2.9121518e+02 -4.8753685e+03 - -9.7544995e+02 2.7227307e+02 -4.8753533e+03 - -9.8077272e+02 2.5323332e+02 -4.8753386e+03 - -9.8571088e+02 2.3410289e+02 -4.8753247e+03 - -9.9026222e+02 2.1488873e+02 -4.8753115e+03 - -9.9442468e+02 1.9559779e+02 -4.8752991e+03 - -9.9819640e+02 1.7623704e+02 -4.8752877e+03 - -1.0015757e+03 1.5681346e+02 -4.8752773e+03 - -1.0045610e+03 1.3733401e+02 -4.8752680e+03 - -1.0071510e+03 1.1780568e+02 -4.8752598e+03 - -1.0093445e+03 9.8235432e+01 -4.8752527e+03 - -1.0111406e+03 7.8630261e+01 -4.8752469e+03 - -1.0125383e+03 5.8997147e+01 -4.8752424e+03 - -1.0135372e+03 3.9343076e+01 -4.8752391e+03 - -1.0141367e+03 1.9675031e+01 -4.8752371e+03 - -1.0143366e+03 0.0000000e+00 -4.8752365e+03 - -1.0141367e+03 -1.9675031e+01 -4.8752371e+03 - -1.0135372e+03 -3.9343076e+01 -4.8752391e+03 - -1.0125383e+03 -5.8997147e+01 -4.8752424e+03 - -1.0111406e+03 -7.8630261e+01 -4.8752469e+03 - -1.0093445e+03 -9.8235432e+01 -4.8752527e+03 - -1.0071510e+03 -1.1780568e+02 -4.8752598e+03 - -1.0045610e+03 -1.3733401e+02 -4.8752680e+03 - -1.0015757e+03 -1.5681346e+02 -4.8752773e+03 - -9.9819640e+02 -1.7623704e+02 -4.8752877e+03 - -9.9442468e+02 -1.9559779e+02 -4.8752991e+03 - -9.9026222e+02 -2.1488873e+02 -4.8753115e+03 - -9.8571088e+02 -2.3410289e+02 -4.8753247e+03 - -9.8077272e+02 -2.5323332e+02 -4.8753386e+03 - -9.7544995e+02 -2.7227307e+02 -4.8753533e+03 - -9.6974496e+02 -2.9121518e+02 -4.8753685e+03 - -9.6366029e+02 -3.1005273e+02 -4.8753843e+03 - -9.5719868e+02 -3.2877879e+02 -4.8754005e+03 - -9.5036301e+02 -3.4738643e+02 -4.8754170e+03 - -9.4315633e+02 -3.6586877e+02 -4.8754337e+03 - -9.3558183e+02 -3.8421891e+02 -4.8754504e+03 - -9.2764289e+02 -4.0242999e+02 -4.8754672e+03 - -9.1934303e+02 -4.2049516e+02 -4.8754839e+03 - -9.1068592e+02 -4.3840758e+02 -4.8755004e+03 - -9.0167537e+02 -4.5616045e+02 -4.8755166e+03 - -8.9231537e+02 -4.7374700e+02 -4.8755324e+03 - -8.8261001e+02 -4.9116047e+02 -4.8755476e+03 - -8.7256355e+02 -5.0839414e+02 -4.8755623e+03 - -8.6218039e+02 -5.2544133e+02 -4.8755763e+03 - -8.5146504e+02 -5.4229539e+02 -4.8755895e+03 - -8.4042215e+02 -5.5894970e+02 -4.8756018e+03 - -8.2905652e+02 -5.7539772e+02 -4.8756132e+03 - -8.1737305e+02 -5.9163292e+02 -4.8756236e+03 - -8.0537675e+02 -6.0764883e+02 -4.8756330e+03 - -7.9307278e+02 -6.2343904e+02 -4.8756412e+03 - -7.8046637e+02 -6.3899720e+02 -4.8756482e+03 - -7.6756291e+02 -6.5431701e+02 -4.8756541e+03 - -7.5436785e+02 -6.6939224e+02 -4.8756586e+03 - -7.4088676e+02 -6.8421673e+02 -4.8756619e+03 - -7.2712530e+02 -6.9878440e+02 -4.8756639e+03 - -7.1308923e+02 -7.1308923e+02 -4.8756645e+03 - -6.9878440e+02 -7.2712530e+02 -4.8756639e+03 - -6.8421673e+02 -7.4088676e+02 -4.8756619e+03 - -6.6939224e+02 -7.5436785e+02 -4.8756586e+03 - -6.5431701e+02 -7.6756291e+02 -4.8756541e+03 - -6.3899720e+02 -7.8046637e+02 -4.8756482e+03 - -6.2343904e+02 -7.9307278e+02 -4.8756412e+03 - -6.0764883e+02 -8.0537675e+02 -4.8756330e+03 - -5.9163292e+02 -8.1737305e+02 -4.8756236e+03 - -5.7539772e+02 -8.2905652e+02 -4.8756132e+03 - -5.5894970e+02 -8.4042215e+02 -4.8756018e+03 - -5.4229539e+02 -8.5146504e+02 -4.8755895e+03 - -5.2544133e+02 -8.6218039e+02 -4.8755763e+03 - -5.0839414e+02 -8.7256355e+02 -4.8755623e+03 - -4.9116047e+02 -8.8261001e+02 -4.8755476e+03 - -4.7374700e+02 -8.9231537e+02 -4.8755324e+03 - -4.5616045e+02 -9.0167537e+02 -4.8755166e+03 - -4.3840758e+02 -9.1068592e+02 -4.8755004e+03 - -4.2049516e+02 -9.1934303e+02 -4.8754839e+03 - -4.0242999e+02 -9.2764289e+02 -4.8754672e+03 - -3.8421891e+02 -9.3558183e+02 -4.8754504e+03 - -3.6586877e+02 -9.4315633e+02 -4.8754337e+03 - -3.4738643e+02 -9.5036301e+02 -4.8754170e+03 - -3.2877879e+02 -9.5719868e+02 -4.8754005e+03 - -3.1005273e+02 -9.6366029e+02 -4.8753843e+03 - -2.9121518e+02 -9.6974496e+02 -4.8753685e+03 - -2.7227307e+02 -9.7544995e+02 -4.8753533e+03 - -2.5323332e+02 -9.8077272e+02 -4.8753386e+03 - -2.3410289e+02 -9.8571088e+02 -4.8753247e+03 - -2.1488873e+02 -9.9026222e+02 -4.8753115e+03 - -1.9559779e+02 -9.9442468e+02 -4.8752991e+03 - -1.7623704e+02 -9.9819640e+02 -4.8752877e+03 - -1.5681346e+02 -1.0015757e+03 -4.8752773e+03 - -1.3733401e+02 -1.0045610e+03 -4.8752680e+03 - -1.1780568e+02 -1.0071510e+03 -4.8752598e+03 - -9.8235432e+01 -1.0093445e+03 -4.8752527e+03 - -7.8630261e+01 -1.0111406e+03 -4.8752469e+03 - -5.8997147e+01 -1.0125383e+03 -4.8752424e+03 - -3.9343076e+01 -1.0135372e+03 -4.8752391e+03 - -1.9675031e+01 -1.0141367e+03 -4.8752371e+03 - 0.0000000e+00 -1.0143366e+03 -4.8752365e+03 - 1.9675031e+01 -1.0141367e+03 -4.8752371e+03 - 3.9343076e+01 -1.0135372e+03 -4.8752391e+03 - 5.8997147e+01 -1.0125383e+03 -4.8752424e+03 - 7.8630261e+01 -1.0111406e+03 -4.8752469e+03 - 9.8235432e+01 -1.0093445e+03 -4.8752527e+03 - 1.1780568e+02 -1.0071510e+03 -4.8752598e+03 - 1.3733401e+02 -1.0045610e+03 -4.8752680e+03 - 1.5681346e+02 -1.0015757e+03 -4.8752773e+03 - 1.7623704e+02 -9.9819640e+02 -4.8752877e+03 - 1.9559779e+02 -9.9442468e+02 -4.8752991e+03 - 2.1488873e+02 -9.9026222e+02 -4.8753115e+03 - 2.3410289e+02 -9.8571088e+02 -4.8753247e+03 - 2.5323332e+02 -9.8077272e+02 -4.8753386e+03 - 2.7227307e+02 -9.7544995e+02 -4.8753533e+03 - 2.9121518e+02 -9.6974496e+02 -4.8753685e+03 - 3.1005273e+02 -9.6366029e+02 -4.8753843e+03 - 3.2877879e+02 -9.5719868e+02 -4.8754005e+03 - 3.4738643e+02 -9.5036301e+02 -4.8754170e+03 - 3.6586877e+02 -9.4315633e+02 -4.8754337e+03 - 3.8421891e+02 -9.3558183e+02 -4.8754504e+03 - 4.0242999e+02 -9.2764289e+02 -4.8754672e+03 - 4.2049516e+02 -9.1934303e+02 -4.8754839e+03 - 4.3840758e+02 -9.1068592e+02 -4.8755004e+03 - 4.5616045e+02 -9.0167537e+02 -4.8755166e+03 - 4.7374700e+02 -8.9231537e+02 -4.8755324e+03 - 4.9116047e+02 -8.8261001e+02 -4.8755476e+03 - 5.0839414e+02 -8.7256355e+02 -4.8755623e+03 - 5.2544133e+02 -8.6218039e+02 -4.8755763e+03 - 5.4229539e+02 -8.5146504e+02 -4.8755895e+03 - 5.5894970e+02 -8.4042215e+02 -4.8756018e+03 - 5.7539772e+02 -8.2905652e+02 -4.8756132e+03 - 5.9163292e+02 -8.1737305e+02 -4.8756236e+03 - 6.0764883e+02 -8.0537675e+02 -4.8756330e+03 - 6.2343904e+02 -7.9307278e+02 -4.8756412e+03 - 6.3899720e+02 -7.8046637e+02 -4.8756482e+03 - 6.5431701e+02 -7.6756291e+02 -4.8756541e+03 - 6.6939224e+02 -7.5436785e+02 -4.8756586e+03 - 6.8421673e+02 -7.4088676e+02 -4.8756619e+03 - 6.9878440e+02 -7.2712530e+02 -4.8756639e+03 - 7.1308923e+02 -7.1308923e+02 -4.8756645e+03 - 7.2712530e+02 -6.9878440e+02 -4.8756639e+03 - 7.4088676e+02 -6.8421673e+02 -4.8756619e+03 - 7.5436785e+02 -6.6939224e+02 -4.8756586e+03 - 7.6756291e+02 -6.5431701e+02 -4.8756541e+03 - 7.8046637e+02 -6.3899720e+02 -4.8756482e+03 - 7.9307278e+02 -6.2343904e+02 -4.8756412e+03 - 8.0537675e+02 -6.0764883e+02 -4.8756330e+03 - 8.1737305e+02 -5.9163292e+02 -4.8756236e+03 - 8.2905652e+02 -5.7539772e+02 -4.8756132e+03 - 8.4042215e+02 -5.5894970e+02 -4.8756018e+03 - 8.5146504e+02 -5.4229539e+02 -4.8755895e+03 - 8.6218039e+02 -5.2544133e+02 -4.8755763e+03 - 8.7256355e+02 -5.0839414e+02 -4.8755623e+03 - 8.8261001e+02 -4.9116047e+02 -4.8755476e+03 - 8.9231537e+02 -4.7374700e+02 -4.8755324e+03 - 9.0167537e+02 -4.5616045e+02 -4.8755166e+03 - 9.1068592e+02 -4.3840758e+02 -4.8755004e+03 - 9.1934303e+02 -4.2049516e+02 -4.8754839e+03 - 9.2764289e+02 -4.0242999e+02 -4.8754672e+03 - 9.3558183e+02 -3.8421891e+02 -4.8754504e+03 - 9.4315633e+02 -3.6586877e+02 -4.8754337e+03 - 9.5036301e+02 -3.4738643e+02 -4.8754170e+03 - 9.5719868e+02 -3.2877879e+02 -4.8754005e+03 - 9.6366029e+02 -3.1005273e+02 -4.8753843e+03 - 9.6974496e+02 -2.9121518e+02 -4.8753685e+03 - 9.7544995e+02 -2.7227307e+02 -4.8753533e+03 - 9.8077272e+02 -2.5323332e+02 -4.8753386e+03 - 9.8571088e+02 -2.3410289e+02 -4.8753247e+03 - 9.9026222e+02 -2.1488873e+02 -4.8753115e+03 - 9.9442468e+02 -1.9559779e+02 -4.8752991e+03 - 9.9819640e+02 -1.7623704e+02 -4.8752877e+03 - 1.0015757e+03 -1.5681346e+02 -4.8752773e+03 - 1.0045610e+03 -1.3733401e+02 -4.8752680e+03 - 1.0071510e+03 -1.1780568e+02 -4.8752598e+03 - 1.0093445e+03 -9.8235432e+01 -4.8752527e+03 - 1.0111406e+03 -7.8630261e+01 -4.8752469e+03 - 1.0125383e+03 -5.8997147e+01 -4.8752424e+03 - 1.0135372e+03 -3.9343076e+01 -4.8752391e+03 - 1.0141367e+03 -1.9675031e+01 -4.8752371e+03 - 1.0143366e+03 0.0000000e+00 -4.8752365e+03 - 8.2143369e+02 0.0000000e+00 -4.8923144e+03 - 8.2127301e+02 1.6001605e+01 -4.8923147e+03 - 8.2079102e+02 3.1997347e+01 -4.8923156e+03 - 8.1998793e+02 4.7981367e+01 -4.8923170e+03 - 8.1886410e+02 6.3947805e+01 -4.8923189e+03 - 8.1742000e+02 7.9890805e+01 -4.8923214e+03 - 8.1565626e+02 9.5804516e+01 -4.8923244e+03 - 8.1357365e+02 1.1168309e+02 -4.8923279e+03 - 8.1117306e+02 1.2752070e+02 -4.8923319e+03 - 8.0845553e+02 1.4331150e+02 -4.8923364e+03 - 8.0542222e+02 1.5904967e+02 -4.8923412e+03 - 8.0207446e+02 1.7472940e+02 -4.8923465e+03 - 7.9841367e+02 1.9034490e+02 -4.8923522e+03 - 7.9444143e+02 2.0589036e+02 -4.8923581e+03 - 7.9015945e+02 2.2136003e+02 -4.8923644e+03 - 7.8556957e+02 2.3674814e+02 -4.8923709e+03 - 7.8067374e+02 2.5204895e+02 -4.8923777e+03 - 7.7547408e+02 2.6725675e+02 -4.8923846e+03 - 7.6997281e+02 2.8236582e+02 -4.8923917e+03 - 7.6417226e+02 2.9737050e+02 -4.8923988e+03 - 7.5807492e+02 3.1226511e+02 -4.8924060e+03 - 7.5168338e+02 3.2704405e+02 -4.8924132e+03 - 7.4500036e+02 3.4170169e+02 -4.8924203e+03 - 7.3802868e+02 3.5623247e+02 -4.8924274e+03 - 7.3077131e+02 3.7063084e+02 -4.8924343e+03 - 7.2323131e+02 3.8489130e+02 -4.8924410e+03 - 7.1541186e+02 3.9900836e+02 -4.8924475e+03 - 7.0731625e+02 4.1297660e+02 -4.8924538e+03 - 6.9894788e+02 4.2679060e+02 -4.8924598e+03 - 6.9031026e+02 4.4044503e+02 -4.8924654e+03 - 6.8140698e+02 4.5393455e+02 -4.8924707e+03 - 6.7224178e+02 4.6725391e+02 -4.8924756e+03 - 6.6281846e+02 4.8039789e+02 -4.8924801e+03 - 6.5314092e+02 4.9336132e+02 -4.8924841e+03 - 6.4321317e+02 5.0613909e+02 -4.8924876e+03 - 6.3303931e+02 5.1872613e+02 -4.8924906e+03 - 6.2262352e+02 5.3111746e+02 -4.8924931e+03 - 6.1197007e+02 5.4330812e+02 -4.8924950e+03 - 6.0108332e+02 5.5529325e+02 -4.8924964e+03 - 5.8996770e+02 5.6706804e+02 -4.8924973e+03 - 5.7862775e+02 5.7862775e+02 -4.8924975e+03 - 5.6706804e+02 5.8996770e+02 -4.8924973e+03 - 5.5529325e+02 6.0108332e+02 -4.8924964e+03 - 5.4330812e+02 6.1197007e+02 -4.8924950e+03 - 5.3111746e+02 6.2262352e+02 -4.8924931e+03 - 5.1872613e+02 6.3303931e+02 -4.8924906e+03 - 5.0613909e+02 6.4321317e+02 -4.8924876e+03 - 4.9336132e+02 6.5314092e+02 -4.8924841e+03 - 4.8039789e+02 6.6281846e+02 -4.8924801e+03 - 4.6725391e+02 6.7224178e+02 -4.8924756e+03 - 4.5393455e+02 6.8140698e+02 -4.8924707e+03 - 4.4044503e+02 6.9031026e+02 -4.8924654e+03 - 4.2679060e+02 6.9894788e+02 -4.8924598e+03 - 4.1297660e+02 7.0731625e+02 -4.8924538e+03 - 3.9900836e+02 7.1541186e+02 -4.8924475e+03 - 3.8489130e+02 7.2323131e+02 -4.8924410e+03 - 3.7063084e+02 7.3077131e+02 -4.8924343e+03 - 3.5623247e+02 7.3802868e+02 -4.8924274e+03 - 3.4170169e+02 7.4500036e+02 -4.8924203e+03 - 3.2704405e+02 7.5168338e+02 -4.8924132e+03 - 3.1226511e+02 7.5807492e+02 -4.8924060e+03 - 2.9737050e+02 7.6417226e+02 -4.8923988e+03 - 2.8236582e+02 7.6997281e+02 -4.8923917e+03 - 2.6725675e+02 7.7547408e+02 -4.8923846e+03 - 2.5204895e+02 7.8067374e+02 -4.8923777e+03 - 2.3674814e+02 7.8556957e+02 -4.8923709e+03 - 2.2136003e+02 7.9015945e+02 -4.8923644e+03 - 2.0589036e+02 7.9444143e+02 -4.8923581e+03 - 1.9034490e+02 7.9841367e+02 -4.8923522e+03 - 1.7472940e+02 8.0207446e+02 -4.8923465e+03 - 1.5904967e+02 8.0542222e+02 -4.8923412e+03 - 1.4331150e+02 8.0845553e+02 -4.8923364e+03 - 1.2752070e+02 8.1117306e+02 -4.8923319e+03 - 1.1168309e+02 8.1357365e+02 -4.8923279e+03 - 9.5804516e+01 8.1565626e+02 -4.8923244e+03 - 7.9890805e+01 8.1742000e+02 -4.8923214e+03 - 6.3947805e+01 8.1886410e+02 -4.8923189e+03 - 4.7981367e+01 8.1998793e+02 -4.8923170e+03 - 3.1997347e+01 8.2079102e+02 -4.8923156e+03 - 1.6001605e+01 8.2127301e+02 -4.8923147e+03 - 0.0000000e+00 8.2143369e+02 -4.8923144e+03 - -1.6001605e+01 8.2127301e+02 -4.8923147e+03 - -3.1997347e+01 8.2079102e+02 -4.8923156e+03 - -4.7981367e+01 8.1998793e+02 -4.8923170e+03 - -6.3947805e+01 8.1886410e+02 -4.8923189e+03 - -7.9890805e+01 8.1742000e+02 -4.8923214e+03 - -9.5804516e+01 8.1565626e+02 -4.8923244e+03 - -1.1168309e+02 8.1357365e+02 -4.8923279e+03 - -1.2752070e+02 8.1117306e+02 -4.8923319e+03 - -1.4331150e+02 8.0845553e+02 -4.8923364e+03 - -1.5904967e+02 8.0542222e+02 -4.8923412e+03 - -1.7472940e+02 8.0207446e+02 -4.8923465e+03 - -1.9034490e+02 7.9841367e+02 -4.8923522e+03 - -2.0589036e+02 7.9444143e+02 -4.8923581e+03 - -2.2136003e+02 7.9015945e+02 -4.8923644e+03 - -2.3674814e+02 7.8556957e+02 -4.8923709e+03 - -2.5204895e+02 7.8067374e+02 -4.8923777e+03 - -2.6725675e+02 7.7547408e+02 -4.8923846e+03 - -2.8236582e+02 7.6997281e+02 -4.8923917e+03 - -2.9737050e+02 7.6417226e+02 -4.8923988e+03 - -3.1226511e+02 7.5807492e+02 -4.8924060e+03 - -3.2704405e+02 7.5168338e+02 -4.8924132e+03 - -3.4170169e+02 7.4500036e+02 -4.8924203e+03 - -3.5623247e+02 7.3802868e+02 -4.8924274e+03 - -3.7063084e+02 7.3077131e+02 -4.8924343e+03 - -3.8489130e+02 7.2323131e+02 -4.8924410e+03 - -3.9900836e+02 7.1541186e+02 -4.8924475e+03 - -4.1297660e+02 7.0731625e+02 -4.8924538e+03 - -4.2679060e+02 6.9894788e+02 -4.8924598e+03 - -4.4044503e+02 6.9031026e+02 -4.8924654e+03 - -4.5393455e+02 6.8140698e+02 -4.8924707e+03 - -4.6725391e+02 6.7224178e+02 -4.8924756e+03 - -4.8039789e+02 6.6281846e+02 -4.8924801e+03 - -4.9336132e+02 6.5314092e+02 -4.8924841e+03 - -5.0613909e+02 6.4321317e+02 -4.8924876e+03 - -5.1872613e+02 6.3303931e+02 -4.8924906e+03 - -5.3111746e+02 6.2262352e+02 -4.8924931e+03 - -5.4330812e+02 6.1197007e+02 -4.8924950e+03 - -5.5529325e+02 6.0108332e+02 -4.8924964e+03 - -5.6706804e+02 5.8996770e+02 -4.8924973e+03 - -5.7862775e+02 5.7862775e+02 -4.8924975e+03 - -5.8996770e+02 5.6706804e+02 -4.8924973e+03 - -6.0108332e+02 5.5529325e+02 -4.8924964e+03 - -6.1197007e+02 5.4330812e+02 -4.8924950e+03 - -6.2262352e+02 5.3111746e+02 -4.8924931e+03 - -6.3303931e+02 5.1872613e+02 -4.8924906e+03 - -6.4321317e+02 5.0613909e+02 -4.8924876e+03 - -6.5314092e+02 4.9336132e+02 -4.8924841e+03 - -6.6281846e+02 4.8039789e+02 -4.8924801e+03 - -6.7224178e+02 4.6725391e+02 -4.8924756e+03 - -6.8140698e+02 4.5393455e+02 -4.8924707e+03 - -6.9031026e+02 4.4044503e+02 -4.8924654e+03 - -6.9894788e+02 4.2679060e+02 -4.8924598e+03 - -7.0731625e+02 4.1297660e+02 -4.8924538e+03 - -7.1541186e+02 3.9900836e+02 -4.8924475e+03 - -7.2323131e+02 3.8489130e+02 -4.8924410e+03 - -7.3077131e+02 3.7063084e+02 -4.8924343e+03 - -7.3802868e+02 3.5623247e+02 -4.8924274e+03 - -7.4500036e+02 3.4170169e+02 -4.8924203e+03 - -7.5168338e+02 3.2704405e+02 -4.8924132e+03 - -7.5807492e+02 3.1226511e+02 -4.8924060e+03 - -7.6417226e+02 2.9737050e+02 -4.8923988e+03 - -7.6997281e+02 2.8236582e+02 -4.8923917e+03 - -7.7547408e+02 2.6725675e+02 -4.8923846e+03 - -7.8067374e+02 2.5204895e+02 -4.8923777e+03 - -7.8556957e+02 2.3674814e+02 -4.8923709e+03 - -7.9015945e+02 2.2136003e+02 -4.8923644e+03 - -7.9444143e+02 2.0589036e+02 -4.8923581e+03 - -7.9841367e+02 1.9034490e+02 -4.8923522e+03 - -8.0207446e+02 1.7472940e+02 -4.8923465e+03 - -8.0542222e+02 1.5904967e+02 -4.8923412e+03 - -8.0845553e+02 1.4331150e+02 -4.8923364e+03 - -8.1117306e+02 1.2752070e+02 -4.8923319e+03 - -8.1357365e+02 1.1168309e+02 -4.8923279e+03 - -8.1565626e+02 9.5804516e+01 -4.8923244e+03 - -8.1742000e+02 7.9890805e+01 -4.8923214e+03 - -8.1886410e+02 6.3947805e+01 -4.8923189e+03 - -8.1998793e+02 4.7981367e+01 -4.8923170e+03 - -8.2079102e+02 3.1997347e+01 -4.8923156e+03 - -8.2127301e+02 1.6001605e+01 -4.8923147e+03 - -8.2143369e+02 0.0000000e+00 -4.8923144e+03 - -8.2127301e+02 -1.6001605e+01 -4.8923147e+03 - -8.2079102e+02 -3.1997347e+01 -4.8923156e+03 - -8.1998793e+02 -4.7981367e+01 -4.8923170e+03 - -8.1886410e+02 -6.3947805e+01 -4.8923189e+03 - -8.1742000e+02 -7.9890805e+01 -4.8923214e+03 - -8.1565626e+02 -9.5804516e+01 -4.8923244e+03 - -8.1357365e+02 -1.1168309e+02 -4.8923279e+03 - -8.1117306e+02 -1.2752070e+02 -4.8923319e+03 - -8.0845553e+02 -1.4331150e+02 -4.8923364e+03 - -8.0542222e+02 -1.5904967e+02 -4.8923412e+03 - -8.0207446e+02 -1.7472940e+02 -4.8923465e+03 - -7.9841367e+02 -1.9034490e+02 -4.8923522e+03 - -7.9444143e+02 -2.0589036e+02 -4.8923581e+03 - -7.9015945e+02 -2.2136003e+02 -4.8923644e+03 - -7.8556957e+02 -2.3674814e+02 -4.8923709e+03 - -7.8067374e+02 -2.5204895e+02 -4.8923777e+03 - -7.7547408e+02 -2.6725675e+02 -4.8923846e+03 - -7.6997281e+02 -2.8236582e+02 -4.8923917e+03 - -7.6417226e+02 -2.9737050e+02 -4.8923988e+03 - -7.5807492e+02 -3.1226511e+02 -4.8924060e+03 - -7.5168338e+02 -3.2704405e+02 -4.8924132e+03 - -7.4500036e+02 -3.4170169e+02 -4.8924203e+03 - -7.3802868e+02 -3.5623247e+02 -4.8924274e+03 - -7.3077131e+02 -3.7063084e+02 -4.8924343e+03 - -7.2323131e+02 -3.8489130e+02 -4.8924410e+03 - -7.1541186e+02 -3.9900836e+02 -4.8924475e+03 - -7.0731625e+02 -4.1297660e+02 -4.8924538e+03 - -6.9894788e+02 -4.2679060e+02 -4.8924598e+03 - -6.9031026e+02 -4.4044503e+02 -4.8924654e+03 - -6.8140698e+02 -4.5393455e+02 -4.8924707e+03 - -6.7224178e+02 -4.6725391e+02 -4.8924756e+03 - -6.6281846e+02 -4.8039789e+02 -4.8924801e+03 - -6.5314092e+02 -4.9336132e+02 -4.8924841e+03 - -6.4321317e+02 -5.0613909e+02 -4.8924876e+03 - -6.3303931e+02 -5.1872613e+02 -4.8924906e+03 - -6.2262352e+02 -5.3111746e+02 -4.8924931e+03 - -6.1197007e+02 -5.4330812e+02 -4.8924950e+03 - -6.0108332e+02 -5.5529325e+02 -4.8924964e+03 - -5.8996770e+02 -5.6706804e+02 -4.8924973e+03 - -5.7862775e+02 -5.7862775e+02 -4.8924975e+03 - -5.6706804e+02 -5.8996770e+02 -4.8924973e+03 - -5.5529325e+02 -6.0108332e+02 -4.8924964e+03 - -5.4330812e+02 -6.1197007e+02 -4.8924950e+03 - -5.3111746e+02 -6.2262352e+02 -4.8924931e+03 - -5.1872613e+02 -6.3303931e+02 -4.8924906e+03 - -5.0613909e+02 -6.4321317e+02 -4.8924876e+03 - -4.9336132e+02 -6.5314092e+02 -4.8924841e+03 - -4.8039789e+02 -6.6281846e+02 -4.8924801e+03 - -4.6725391e+02 -6.7224178e+02 -4.8924756e+03 - -4.5393455e+02 -6.8140698e+02 -4.8924707e+03 - -4.4044503e+02 -6.9031026e+02 -4.8924654e+03 - -4.2679060e+02 -6.9894788e+02 -4.8924598e+03 - -4.1297660e+02 -7.0731625e+02 -4.8924538e+03 - -3.9900836e+02 -7.1541186e+02 -4.8924475e+03 - -3.8489130e+02 -7.2323131e+02 -4.8924410e+03 - -3.7063084e+02 -7.3077131e+02 -4.8924343e+03 - -3.5623247e+02 -7.3802868e+02 -4.8924274e+03 - -3.4170169e+02 -7.4500036e+02 -4.8924203e+03 - -3.2704405e+02 -7.5168338e+02 -4.8924132e+03 - -3.1226511e+02 -7.5807492e+02 -4.8924060e+03 - -2.9737050e+02 -7.6417226e+02 -4.8923988e+03 - -2.8236582e+02 -7.6997281e+02 -4.8923917e+03 - -2.6725675e+02 -7.7547408e+02 -4.8923846e+03 - -2.5204895e+02 -7.8067374e+02 -4.8923777e+03 - -2.3674814e+02 -7.8556957e+02 -4.8923709e+03 - -2.2136003e+02 -7.9015945e+02 -4.8923644e+03 - -2.0589036e+02 -7.9444143e+02 -4.8923581e+03 - -1.9034490e+02 -7.9841367e+02 -4.8923522e+03 - -1.7472940e+02 -8.0207446e+02 -4.8923465e+03 - -1.5904967e+02 -8.0542222e+02 -4.8923412e+03 - -1.4331150e+02 -8.0845553e+02 -4.8923364e+03 - -1.2752070e+02 -8.1117306e+02 -4.8923319e+03 - -1.1168309e+02 -8.1357365e+02 -4.8923279e+03 - -9.5804516e+01 -8.1565626e+02 -4.8923244e+03 - -7.9890805e+01 -8.1742000e+02 -4.8923214e+03 - -6.3947805e+01 -8.1886410e+02 -4.8923189e+03 - -4.7981367e+01 -8.1998793e+02 -4.8923170e+03 - -3.1997347e+01 -8.2079102e+02 -4.8923156e+03 - -1.6001605e+01 -8.2127301e+02 -4.8923147e+03 - 0.0000000e+00 -8.2143369e+02 -4.8923144e+03 - 1.6001605e+01 -8.2127301e+02 -4.8923147e+03 - 3.1997347e+01 -8.2079102e+02 -4.8923156e+03 - 4.7981367e+01 -8.1998793e+02 -4.8923170e+03 - 6.3947805e+01 -8.1886410e+02 -4.8923189e+03 - 7.9890805e+01 -8.1742000e+02 -4.8923214e+03 - 9.5804516e+01 -8.1565626e+02 -4.8923244e+03 - 1.1168309e+02 -8.1357365e+02 -4.8923279e+03 - 1.2752070e+02 -8.1117306e+02 -4.8923319e+03 - 1.4331150e+02 -8.0845553e+02 -4.8923364e+03 - 1.5904967e+02 -8.0542222e+02 -4.8923412e+03 - 1.7472940e+02 -8.0207446e+02 -4.8923465e+03 - 1.9034490e+02 -7.9841367e+02 -4.8923522e+03 - 2.0589036e+02 -7.9444143e+02 -4.8923581e+03 - 2.2136003e+02 -7.9015945e+02 -4.8923644e+03 - 2.3674814e+02 -7.8556957e+02 -4.8923709e+03 - 2.5204895e+02 -7.8067374e+02 -4.8923777e+03 - 2.6725675e+02 -7.7547408e+02 -4.8923846e+03 - 2.8236582e+02 -7.6997281e+02 -4.8923917e+03 - 2.9737050e+02 -7.6417226e+02 -4.8923988e+03 - 3.1226511e+02 -7.5807492e+02 -4.8924060e+03 - 3.2704405e+02 -7.5168338e+02 -4.8924132e+03 - 3.4170169e+02 -7.4500036e+02 -4.8924203e+03 - 3.5623247e+02 -7.3802868e+02 -4.8924274e+03 - 3.7063084e+02 -7.3077131e+02 -4.8924343e+03 - 3.8489130e+02 -7.2323131e+02 -4.8924410e+03 - 3.9900836e+02 -7.1541186e+02 -4.8924475e+03 - 4.1297660e+02 -7.0731625e+02 -4.8924538e+03 - 4.2679060e+02 -6.9894788e+02 -4.8924598e+03 - 4.4044503e+02 -6.9031026e+02 -4.8924654e+03 - 4.5393455e+02 -6.8140698e+02 -4.8924707e+03 - 4.6725391e+02 -6.7224178e+02 -4.8924756e+03 - 4.8039789e+02 -6.6281846e+02 -4.8924801e+03 - 4.9336132e+02 -6.5314092e+02 -4.8924841e+03 - 5.0613909e+02 -6.4321317e+02 -4.8924876e+03 - 5.1872613e+02 -6.3303931e+02 -4.8924906e+03 - 5.3111746e+02 -6.2262352e+02 -4.8924931e+03 - 5.4330812e+02 -6.1197007e+02 -4.8924950e+03 - 5.5529325e+02 -6.0108332e+02 -4.8924964e+03 - 5.6706804e+02 -5.8996770e+02 -4.8924973e+03 - 5.7862775e+02 -5.7862775e+02 -4.8924975e+03 - 5.8996770e+02 -5.6706804e+02 -4.8924973e+03 - 6.0108332e+02 -5.5529325e+02 -4.8924964e+03 - 6.1197007e+02 -5.4330812e+02 -4.8924950e+03 - 6.2262352e+02 -5.3111746e+02 -4.8924931e+03 - 6.3303931e+02 -5.1872613e+02 -4.8924906e+03 - 6.4321317e+02 -5.0613909e+02 -4.8924876e+03 - 6.5314092e+02 -4.9336132e+02 -4.8924841e+03 - 6.6281846e+02 -4.8039789e+02 -4.8924801e+03 - 6.7224178e+02 -4.6725391e+02 -4.8924756e+03 - 6.8140698e+02 -4.5393455e+02 -4.8924707e+03 - 6.9031026e+02 -4.4044503e+02 -4.8924654e+03 - 6.9894788e+02 -4.2679060e+02 -4.8924598e+03 - 7.0731625e+02 -4.1297660e+02 -4.8924538e+03 - 7.1541186e+02 -3.9900836e+02 -4.8924475e+03 - 7.2323131e+02 -3.8489130e+02 -4.8924410e+03 - 7.3077131e+02 -3.7063084e+02 -4.8924343e+03 - 7.3802868e+02 -3.5623247e+02 -4.8924274e+03 - 7.4500036e+02 -3.4170169e+02 -4.8924203e+03 - 7.5168338e+02 -3.2704405e+02 -4.8924132e+03 - 7.5807492e+02 -3.1226511e+02 -4.8924060e+03 - 7.6417226e+02 -2.9737050e+02 -4.8923988e+03 - 7.6997281e+02 -2.8236582e+02 -4.8923917e+03 - 7.7547408e+02 -2.6725675e+02 -4.8923846e+03 - 7.8067374e+02 -2.5204895e+02 -4.8923777e+03 - 7.8556957e+02 -2.3674814e+02 -4.8923709e+03 - 7.9015945e+02 -2.2136003e+02 -4.8923644e+03 - 7.9444143e+02 -2.0589036e+02 -4.8923581e+03 - 7.9841367e+02 -1.9034490e+02 -4.8923522e+03 - 8.0207446e+02 -1.7472940e+02 -4.8923465e+03 - 8.0542222e+02 -1.5904967e+02 -4.8923412e+03 - 8.0845553e+02 -1.4331150e+02 -4.8923364e+03 - 8.1117306e+02 -1.2752070e+02 -4.8923319e+03 - 8.1357365e+02 -1.1168309e+02 -4.8923279e+03 - 8.1565626e+02 -9.5804516e+01 -4.8923244e+03 - 8.1742000e+02 -7.9890805e+01 -4.8923214e+03 - 8.1886410e+02 -6.3947805e+01 -4.8923189e+03 - 8.1998793e+02 -4.7981367e+01 -4.8923170e+03 - 8.2079102e+02 -3.1997347e+01 -4.8923156e+03 - 8.2127301e+02 -1.6001605e+01 -4.8923147e+03 - 8.2143369e+02 0.0000000e+00 -4.8923144e+03 - 6.2213802e+02 0.0000000e+00 -4.9060230e+03 - 6.2201706e+02 1.2160528e+01 -4.9060231e+03 - 6.2165424e+02 2.4316497e+01 -4.9060234e+03 - 6.2104970e+02 3.6463349e+01 -4.9060238e+03 - 6.2020370e+02 4.8596531e+01 -4.9060245e+03 - 6.1911658e+02 6.0711491e+01 -4.9060253e+03 - 6.1778879e+02 7.2803683e+01 -4.9060263e+03 - 6.1622089e+02 8.4868567e+01 -4.9060274e+03 - 6.1441352e+02 9.6901613e+01 -4.9060287e+03 - 6.1236743e+02 1.0889830e+02 -4.9060302e+03 - 6.1008346e+02 1.2085411e+02 -4.9060318e+03 - 6.0756257e+02 1.3276454e+02 -4.9060335e+03 - 6.0480577e+02 1.4462511e+02 -4.9060354e+03 - 6.0181422e+02 1.5643135e+02 -4.9060373e+03 - 5.9858915e+02 1.6817879e+02 -4.9060394e+03 - 5.9513188e+02 1.7986300e+02 -4.9060415e+03 - 5.9144384e+02 1.9147956e+02 -4.9060437e+03 - 5.8752654e+02 2.0302405e+02 -4.9060460e+03 - 5.8338159e+02 2.1449211e+02 -4.9060483e+03 - 5.7901069e+02 2.2587938e+02 -4.9060506e+03 - 5.7441564e+02 2.3718151e+02 -4.9060530e+03 - 5.6959830e+02 2.4839421e+02 -4.9060554e+03 - 5.6456066e+02 2.5951319e+02 -4.9060577e+03 - 5.5930477e+02 2.7053420e+02 -4.9060600e+03 - 5.5383277e+02 2.8145303e+02 -4.9060623e+03 - 5.4814689e+02 2.9226547e+02 -4.9060645e+03 - 5.4224944e+02 3.0296738e+02 -4.9060666e+03 - 5.3614283e+02 3.1355463e+02 -4.9060687e+03 - 5.2982952e+02 3.2402314e+02 -4.9060706e+03 - 5.2331207e+02 3.3436887e+02 -4.9060725e+03 - 5.1659312e+02 3.4458780e+02 -4.9060742e+03 - 5.0967537e+02 3.5467597e+02 -4.9060758e+03 - 5.0256163e+02 3.6462947e+02 -4.9060773e+03 - 4.9525474e+02 3.7444441e+02 -4.9060786e+03 - 4.8775765e+02 3.8411695e+02 -4.9060797e+03 - 4.8007336e+02 3.9364333e+02 -4.9060807e+03 - 4.7220494e+02 4.0301981e+02 -4.9060815e+03 - 4.6415554e+02 4.1224270e+02 -4.9060822e+03 - 4.5592837e+02 4.2130838e+02 -4.9060826e+03 - 4.4752670e+02 4.3021328e+02 -4.9060829e+03 - 4.3895387e+02 4.3895387e+02 -4.9060830e+03 - 4.3021328e+02 4.4752670e+02 -4.9060829e+03 - 4.2130838e+02 4.5592837e+02 -4.9060826e+03 - 4.1224270e+02 4.6415554e+02 -4.9060822e+03 - 4.0301981e+02 4.7220494e+02 -4.9060815e+03 - 3.9364333e+02 4.8007336e+02 -4.9060807e+03 - 3.8411695e+02 4.8775765e+02 -4.9060797e+03 - 3.7444441e+02 4.9525474e+02 -4.9060786e+03 - 3.6462947e+02 5.0256163e+02 -4.9060773e+03 - 3.5467597e+02 5.0967537e+02 -4.9060758e+03 - 3.4458780e+02 5.1659312e+02 -4.9060742e+03 - 3.3436887e+02 5.2331207e+02 -4.9060725e+03 - 3.2402314e+02 5.2982952e+02 -4.9060706e+03 - 3.1355463e+02 5.3614283e+02 -4.9060687e+03 - 3.0296738e+02 5.4224944e+02 -4.9060666e+03 - 2.9226547e+02 5.4814689e+02 -4.9060645e+03 - 2.8145303e+02 5.5383277e+02 -4.9060623e+03 - 2.7053420e+02 5.5930477e+02 -4.9060600e+03 - 2.5951319e+02 5.6456066e+02 -4.9060577e+03 - 2.4839421e+02 5.6959830e+02 -4.9060554e+03 - 2.3718151e+02 5.7441564e+02 -4.9060530e+03 - 2.2587938e+02 5.7901069e+02 -4.9060506e+03 - 2.1449211e+02 5.8338159e+02 -4.9060483e+03 - 2.0302405e+02 5.8752654e+02 -4.9060460e+03 - 1.9147956e+02 5.9144384e+02 -4.9060437e+03 - 1.7986300e+02 5.9513188e+02 -4.9060415e+03 - 1.6817879e+02 5.9858915e+02 -4.9060394e+03 - 1.5643135e+02 6.0181422e+02 -4.9060373e+03 - 1.4462511e+02 6.0480577e+02 -4.9060354e+03 - 1.3276454e+02 6.0756257e+02 -4.9060335e+03 - 1.2085411e+02 6.1008346e+02 -4.9060318e+03 - 1.0889830e+02 6.1236743e+02 -4.9060302e+03 - 9.6901613e+01 6.1441352e+02 -4.9060287e+03 - 8.4868567e+01 6.1622089e+02 -4.9060274e+03 - 7.2803683e+01 6.1778879e+02 -4.9060263e+03 - 6.0711491e+01 6.1911658e+02 -4.9060253e+03 - 4.8596531e+01 6.2020370e+02 -4.9060245e+03 - 3.6463349e+01 6.2104970e+02 -4.9060238e+03 - 2.4316497e+01 6.2165424e+02 -4.9060234e+03 - 1.2160528e+01 6.2201706e+02 -4.9060231e+03 - 0.0000000e+00 6.2213802e+02 -4.9060230e+03 - -1.2160528e+01 6.2201706e+02 -4.9060231e+03 - -2.4316497e+01 6.2165424e+02 -4.9060234e+03 - -3.6463349e+01 6.2104970e+02 -4.9060238e+03 - -4.8596531e+01 6.2020370e+02 -4.9060245e+03 - -6.0711491e+01 6.1911658e+02 -4.9060253e+03 - -7.2803683e+01 6.1778879e+02 -4.9060263e+03 - -8.4868567e+01 6.1622089e+02 -4.9060274e+03 - -9.6901613e+01 6.1441352e+02 -4.9060287e+03 - -1.0889830e+02 6.1236743e+02 -4.9060302e+03 - -1.2085411e+02 6.1008346e+02 -4.9060318e+03 - -1.3276454e+02 6.0756257e+02 -4.9060335e+03 - -1.4462511e+02 6.0480577e+02 -4.9060354e+03 - -1.5643135e+02 6.0181422e+02 -4.9060373e+03 - -1.6817879e+02 5.9858915e+02 -4.9060394e+03 - -1.7986300e+02 5.9513188e+02 -4.9060415e+03 - -1.9147956e+02 5.9144384e+02 -4.9060437e+03 - -2.0302405e+02 5.8752654e+02 -4.9060460e+03 - -2.1449211e+02 5.8338159e+02 -4.9060483e+03 - -2.2587938e+02 5.7901069e+02 -4.9060506e+03 - -2.3718151e+02 5.7441564e+02 -4.9060530e+03 - -2.4839421e+02 5.6959830e+02 -4.9060554e+03 - -2.5951319e+02 5.6456066e+02 -4.9060577e+03 - -2.7053420e+02 5.5930477e+02 -4.9060600e+03 - -2.8145303e+02 5.5383277e+02 -4.9060623e+03 - -2.9226547e+02 5.4814689e+02 -4.9060645e+03 - -3.0296738e+02 5.4224944e+02 -4.9060666e+03 - -3.1355463e+02 5.3614283e+02 -4.9060687e+03 - -3.2402314e+02 5.2982952e+02 -4.9060706e+03 - -3.3436887e+02 5.2331207e+02 -4.9060725e+03 - -3.4458780e+02 5.1659312e+02 -4.9060742e+03 - -3.5467597e+02 5.0967537e+02 -4.9060758e+03 - -3.6462947e+02 5.0256163e+02 -4.9060773e+03 - -3.7444441e+02 4.9525474e+02 -4.9060786e+03 - -3.8411695e+02 4.8775765e+02 -4.9060797e+03 - -3.9364333e+02 4.8007336e+02 -4.9060807e+03 - -4.0301981e+02 4.7220494e+02 -4.9060815e+03 - -4.1224270e+02 4.6415554e+02 -4.9060822e+03 - -4.2130838e+02 4.5592837e+02 -4.9060826e+03 - -4.3021328e+02 4.4752670e+02 -4.9060829e+03 - -4.3895387e+02 4.3895387e+02 -4.9060830e+03 - -4.4752670e+02 4.3021328e+02 -4.9060829e+03 - -4.5592837e+02 4.2130838e+02 -4.9060826e+03 - -4.6415554e+02 4.1224270e+02 -4.9060822e+03 - -4.7220494e+02 4.0301981e+02 -4.9060815e+03 - -4.8007336e+02 3.9364333e+02 -4.9060807e+03 - -4.8775765e+02 3.8411695e+02 -4.9060797e+03 - -4.9525474e+02 3.7444441e+02 -4.9060786e+03 - -5.0256163e+02 3.6462947e+02 -4.9060773e+03 - -5.0967537e+02 3.5467597e+02 -4.9060758e+03 - -5.1659312e+02 3.4458780e+02 -4.9060742e+03 - -5.2331207e+02 3.3436887e+02 -4.9060725e+03 - -5.2982952e+02 3.2402314e+02 -4.9060706e+03 - -5.3614283e+02 3.1355463e+02 -4.9060687e+03 - -5.4224944e+02 3.0296738e+02 -4.9060666e+03 - -5.4814689e+02 2.9226547e+02 -4.9060645e+03 - -5.5383277e+02 2.8145303e+02 -4.9060623e+03 - -5.5930477e+02 2.7053420e+02 -4.9060600e+03 - -5.6456066e+02 2.5951319e+02 -4.9060577e+03 - -5.6959830e+02 2.4839421e+02 -4.9060554e+03 - -5.7441564e+02 2.3718151e+02 -4.9060530e+03 - -5.7901069e+02 2.2587938e+02 -4.9060506e+03 - -5.8338159e+02 2.1449211e+02 -4.9060483e+03 - -5.8752654e+02 2.0302405e+02 -4.9060460e+03 - -5.9144384e+02 1.9147956e+02 -4.9060437e+03 - -5.9513188e+02 1.7986300e+02 -4.9060415e+03 - -5.9858915e+02 1.6817879e+02 -4.9060394e+03 - -6.0181422e+02 1.5643135e+02 -4.9060373e+03 - -6.0480577e+02 1.4462511e+02 -4.9060354e+03 - -6.0756257e+02 1.3276454e+02 -4.9060335e+03 - -6.1008346e+02 1.2085411e+02 -4.9060318e+03 - -6.1236743e+02 1.0889830e+02 -4.9060302e+03 - -6.1441352e+02 9.6901613e+01 -4.9060287e+03 - -6.1622089e+02 8.4868567e+01 -4.9060274e+03 - -6.1778879e+02 7.2803683e+01 -4.9060263e+03 - -6.1911658e+02 6.0711491e+01 -4.9060253e+03 - -6.2020370e+02 4.8596531e+01 -4.9060245e+03 - -6.2104970e+02 3.6463349e+01 -4.9060238e+03 - -6.2165424e+02 2.4316497e+01 -4.9060234e+03 - -6.2201706e+02 1.2160528e+01 -4.9060231e+03 - -6.2213802e+02 0.0000000e+00 -4.9060230e+03 - -6.2201706e+02 -1.2160528e+01 -4.9060231e+03 - -6.2165424e+02 -2.4316497e+01 -4.9060234e+03 - -6.2104970e+02 -3.6463349e+01 -4.9060238e+03 - -6.2020370e+02 -4.8596531e+01 -4.9060245e+03 - -6.1911658e+02 -6.0711491e+01 -4.9060253e+03 - -6.1778879e+02 -7.2803683e+01 -4.9060263e+03 - -6.1622089e+02 -8.4868567e+01 -4.9060274e+03 - -6.1441352e+02 -9.6901613e+01 -4.9060287e+03 - -6.1236743e+02 -1.0889830e+02 -4.9060302e+03 - -6.1008346e+02 -1.2085411e+02 -4.9060318e+03 - -6.0756257e+02 -1.3276454e+02 -4.9060335e+03 - -6.0480577e+02 -1.4462511e+02 -4.9060354e+03 - -6.0181422e+02 -1.5643135e+02 -4.9060373e+03 - -5.9858915e+02 -1.6817879e+02 -4.9060394e+03 - -5.9513188e+02 -1.7986300e+02 -4.9060415e+03 - -5.9144384e+02 -1.9147956e+02 -4.9060437e+03 - -5.8752654e+02 -2.0302405e+02 -4.9060460e+03 - -5.8338159e+02 -2.1449211e+02 -4.9060483e+03 - -5.7901069e+02 -2.2587938e+02 -4.9060506e+03 - -5.7441564e+02 -2.3718151e+02 -4.9060530e+03 - -5.6959830e+02 -2.4839421e+02 -4.9060554e+03 - -5.6456066e+02 -2.5951319e+02 -4.9060577e+03 - -5.5930477e+02 -2.7053420e+02 -4.9060600e+03 - -5.5383277e+02 -2.8145303e+02 -4.9060623e+03 - -5.4814689e+02 -2.9226547e+02 -4.9060645e+03 - -5.4224944e+02 -3.0296738e+02 -4.9060666e+03 - -5.3614283e+02 -3.1355463e+02 -4.9060687e+03 - -5.2982952e+02 -3.2402314e+02 -4.9060706e+03 - -5.2331207e+02 -3.3436887e+02 -4.9060725e+03 - -5.1659312e+02 -3.4458780e+02 -4.9060742e+03 - -5.0967537e+02 -3.5467597e+02 -4.9060758e+03 - -5.0256163e+02 -3.6462947e+02 -4.9060773e+03 - -4.9525474e+02 -3.7444441e+02 -4.9060786e+03 - -4.8775765e+02 -3.8411695e+02 -4.9060797e+03 - -4.8007336e+02 -3.9364333e+02 -4.9060807e+03 - -4.7220494e+02 -4.0301981e+02 -4.9060815e+03 - -4.6415554e+02 -4.1224270e+02 -4.9060822e+03 - -4.5592837e+02 -4.2130838e+02 -4.9060826e+03 - -4.4752670e+02 -4.3021328e+02 -4.9060829e+03 - -4.3895387e+02 -4.3895387e+02 -4.9060830e+03 - -4.3021328e+02 -4.4752670e+02 -4.9060829e+03 - -4.2130838e+02 -4.5592837e+02 -4.9060826e+03 - -4.1224270e+02 -4.6415554e+02 -4.9060822e+03 - -4.0301981e+02 -4.7220494e+02 -4.9060815e+03 - -3.9364333e+02 -4.8007336e+02 -4.9060807e+03 - -3.8411695e+02 -4.8775765e+02 -4.9060797e+03 - -3.7444441e+02 -4.9525474e+02 -4.9060786e+03 - -3.6462947e+02 -5.0256163e+02 -4.9060773e+03 - -3.5467597e+02 -5.0967537e+02 -4.9060758e+03 - -3.4458780e+02 -5.1659312e+02 -4.9060742e+03 - -3.3436887e+02 -5.2331207e+02 -4.9060725e+03 - -3.2402314e+02 -5.2982952e+02 -4.9060706e+03 - -3.1355463e+02 -5.3614283e+02 -4.9060687e+03 - -3.0296738e+02 -5.4224944e+02 -4.9060666e+03 - -2.9226547e+02 -5.4814689e+02 -4.9060645e+03 - -2.8145303e+02 -5.5383277e+02 -4.9060623e+03 - -2.7053420e+02 -5.5930477e+02 -4.9060600e+03 - -2.5951319e+02 -5.6456066e+02 -4.9060577e+03 - -2.4839421e+02 -5.6959830e+02 -4.9060554e+03 - -2.3718151e+02 -5.7441564e+02 -4.9060530e+03 - -2.2587938e+02 -5.7901069e+02 -4.9060506e+03 - -2.1449211e+02 -5.8338159e+02 -4.9060483e+03 - -2.0302405e+02 -5.8752654e+02 -4.9060460e+03 - -1.9147956e+02 -5.9144384e+02 -4.9060437e+03 - -1.7986300e+02 -5.9513188e+02 -4.9060415e+03 - -1.6817879e+02 -5.9858915e+02 -4.9060394e+03 - -1.5643135e+02 -6.0181422e+02 -4.9060373e+03 - -1.4462511e+02 -6.0480577e+02 -4.9060354e+03 - -1.3276454e+02 -6.0756257e+02 -4.9060335e+03 - -1.2085411e+02 -6.1008346e+02 -4.9060318e+03 - -1.0889830e+02 -6.1236743e+02 -4.9060302e+03 - -9.6901613e+01 -6.1441352e+02 -4.9060287e+03 - -8.4868567e+01 -6.1622089e+02 -4.9060274e+03 - -7.2803683e+01 -6.1778879e+02 -4.9060263e+03 - -6.0711491e+01 -6.1911658e+02 -4.9060253e+03 - -4.8596531e+01 -6.2020370e+02 -4.9060245e+03 - -3.6463349e+01 -6.2104970e+02 -4.9060238e+03 - -2.4316497e+01 -6.2165424e+02 -4.9060234e+03 - -1.2160528e+01 -6.2201706e+02 -4.9060231e+03 - 0.0000000e+00 -6.2213802e+02 -4.9060230e+03 - 1.2160528e+01 -6.2201706e+02 -4.9060231e+03 - 2.4316497e+01 -6.2165424e+02 -4.9060234e+03 - 3.6463349e+01 -6.2104970e+02 -4.9060238e+03 - 4.8596531e+01 -6.2020370e+02 -4.9060245e+03 - 6.0711491e+01 -6.1911658e+02 -4.9060253e+03 - 7.2803683e+01 -6.1778879e+02 -4.9060263e+03 - 8.4868567e+01 -6.1622089e+02 -4.9060274e+03 - 9.6901613e+01 -6.1441352e+02 -4.9060287e+03 - 1.0889830e+02 -6.1236743e+02 -4.9060302e+03 - 1.2085411e+02 -6.1008346e+02 -4.9060318e+03 - 1.3276454e+02 -6.0756257e+02 -4.9060335e+03 - 1.4462511e+02 -6.0480577e+02 -4.9060354e+03 - 1.5643135e+02 -6.0181422e+02 -4.9060373e+03 - 1.6817879e+02 -5.9858915e+02 -4.9060394e+03 - 1.7986300e+02 -5.9513188e+02 -4.9060415e+03 - 1.9147956e+02 -5.9144384e+02 -4.9060437e+03 - 2.0302405e+02 -5.8752654e+02 -4.9060460e+03 - 2.1449211e+02 -5.8338159e+02 -4.9060483e+03 - 2.2587938e+02 -5.7901069e+02 -4.9060506e+03 - 2.3718151e+02 -5.7441564e+02 -4.9060530e+03 - 2.4839421e+02 -5.6959830e+02 -4.9060554e+03 - 2.5951319e+02 -5.6456066e+02 -4.9060577e+03 - 2.7053420e+02 -5.5930477e+02 -4.9060600e+03 - 2.8145303e+02 -5.5383277e+02 -4.9060623e+03 - 2.9226547e+02 -5.4814689e+02 -4.9060645e+03 - 3.0296738e+02 -5.4224944e+02 -4.9060666e+03 - 3.1355463e+02 -5.3614283e+02 -4.9060687e+03 - 3.2402314e+02 -5.2982952e+02 -4.9060706e+03 - 3.3436887e+02 -5.2331207e+02 -4.9060725e+03 - 3.4458780e+02 -5.1659312e+02 -4.9060742e+03 - 3.5467597e+02 -5.0967537e+02 -4.9060758e+03 - 3.6462947e+02 -5.0256163e+02 -4.9060773e+03 - 3.7444441e+02 -4.9525474e+02 -4.9060786e+03 - 3.8411695e+02 -4.8775765e+02 -4.9060797e+03 - 3.9364333e+02 -4.8007336e+02 -4.9060807e+03 - 4.0301981e+02 -4.7220494e+02 -4.9060815e+03 - 4.1224270e+02 -4.6415554e+02 -4.9060822e+03 - 4.2130838e+02 -4.5592837e+02 -4.9060826e+03 - 4.3021328e+02 -4.4752670e+02 -4.9060829e+03 - 4.3895387e+02 -4.3895387e+02 -4.9060830e+03 - 4.4752670e+02 -4.3021328e+02 -4.9060829e+03 - 4.5592837e+02 -4.2130838e+02 -4.9060826e+03 - 4.6415554e+02 -4.1224270e+02 -4.9060822e+03 - 4.7220494e+02 -4.0301981e+02 -4.9060815e+03 - 4.8007336e+02 -3.9364333e+02 -4.9060807e+03 - 4.8775765e+02 -3.8411695e+02 -4.9060797e+03 - 4.9525474e+02 -3.7444441e+02 -4.9060786e+03 - 5.0256163e+02 -3.6462947e+02 -4.9060773e+03 - 5.0967537e+02 -3.5467597e+02 -4.9060758e+03 - 5.1659312e+02 -3.4458780e+02 -4.9060742e+03 - 5.2331207e+02 -3.3436887e+02 -4.9060725e+03 - 5.2982952e+02 -3.2402314e+02 -4.9060706e+03 - 5.3614283e+02 -3.1355463e+02 -4.9060687e+03 - 5.4224944e+02 -3.0296738e+02 -4.9060666e+03 - 5.4814689e+02 -2.9226547e+02 -4.9060645e+03 - 5.5383277e+02 -2.8145303e+02 -4.9060623e+03 - 5.5930477e+02 -2.7053420e+02 -4.9060600e+03 - 5.6456066e+02 -2.5951319e+02 -4.9060577e+03 - 5.6959830e+02 -2.4839421e+02 -4.9060554e+03 - 5.7441564e+02 -2.3718151e+02 -4.9060530e+03 - 5.7901069e+02 -2.2587938e+02 -4.9060506e+03 - 5.8338159e+02 -2.1449211e+02 -4.9060483e+03 - 5.8752654e+02 -2.0302405e+02 -4.9060460e+03 - 5.9144384e+02 -1.9147956e+02 -4.9060437e+03 - 5.9513188e+02 -1.7986300e+02 -4.9060415e+03 - 5.9858915e+02 -1.6817879e+02 -4.9060394e+03 - 6.0181422e+02 -1.5643135e+02 -4.9060373e+03 - 6.0480577e+02 -1.4462511e+02 -4.9060354e+03 - 6.0756257e+02 -1.3276454e+02 -4.9060335e+03 - 6.1008346e+02 -1.2085411e+02 -4.9060318e+03 - 6.1236743e+02 -1.0889830e+02 -4.9060302e+03 - 6.1441352e+02 -9.6901613e+01 -4.9060287e+03 - 6.1622089e+02 -8.4868567e+01 -4.9060274e+03 - 6.1778879e+02 -7.2803683e+01 -4.9060263e+03 - 6.1911658e+02 -6.0711491e+01 -4.9060253e+03 - 6.2020370e+02 -4.8596531e+01 -4.9060245e+03 - 6.2104970e+02 -3.6463349e+01 -4.9060238e+03 - 6.2165424e+02 -2.4316497e+01 -4.9060234e+03 - 6.2201706e+02 -1.2160528e+01 -4.9060231e+03 - 6.2213802e+02 0.0000000e+00 -4.9060230e+03 - 4.1774090e+02 0.0000000e+00 -4.9160575e+03 - 4.1766006e+02 8.1854518e+00 -4.9160576e+03 - 4.1741757e+02 1.6367786e+01 -4.9160576e+03 - 4.1701353e+02 2.4543887e+01 -4.9160577e+03 - 4.1644810e+02 3.2710640e+01 -4.9160578e+03 - 4.1572151e+02 4.0864935e+01 -4.9160580e+03 - 4.1483404e+02 4.9003663e+01 -4.9160582e+03 - 4.1378605e+02 5.7123726e+01 -4.9160584e+03 - 4.1257795e+02 6.5222026e+01 -4.9160587e+03 - 4.1121024e+02 7.3295477e+01 -4.9160590e+03 - 4.0968344e+02 8.1341000e+01 -4.9160593e+03 - 4.0799818e+02 8.9355525e+01 -4.9160597e+03 - 4.0615512e+02 9.7335994e+01 -4.9160601e+03 - 4.0415500e+02 1.0527936e+02 -4.9160604e+03 - 4.0199861e+02 1.1318259e+02 -4.9160609e+03 - 3.9968680e+02 1.2104266e+02 -4.9160613e+03 - 3.9722050e+02 1.2885657e+02 -4.9160617e+03 - 3.9460070e+02 1.3662132e+02 -4.9160622e+03 - 3.9182842e+02 1.4433395e+02 -4.9160627e+03 - 3.8890476e+02 1.5199150e+02 -4.9160631e+03 - 3.8583090e+02 1.5959104e+02 -4.9160636e+03 - 3.8260805e+02 1.6712965e+02 -4.9160641e+03 - 3.7923748e+02 1.7460443e+02 -4.9160646e+03 - 3.7572053e+02 1.8201253e+02 -4.9160650e+03 - 3.7205859e+02 1.8935109e+02 -4.9160655e+03 - 3.6825311e+02 1.9661728e+02 -4.9160660e+03 - 3.6430559e+02 2.0380831e+02 -4.9160664e+03 - 3.6021760e+02 2.1092142e+02 -4.9160668e+03 - 3.5599074e+02 2.1795386e+02 -4.9160672e+03 - 3.5162668e+02 2.2490290e+02 -4.9160676e+03 - 3.4712715e+02 2.3176589e+02 -4.9160679e+03 - 3.4249391e+02 2.3854014e+02 -4.9160682e+03 - 3.3772879e+02 2.4522306e+02 -4.9160685e+03 - 3.3283366e+02 2.5181205e+02 -4.9160688e+03 - 3.2781044e+02 2.5830455e+02 -4.9160690e+03 - 3.2266111e+02 2.6469806e+02 -4.9160692e+03 - 3.1738768e+02 2.7099008e+02 -4.9160694e+03 - 3.1199222e+02 2.7717817e+02 -4.9160695e+03 - 3.0647684e+02 2.8325992e+02 -4.9160696e+03 - 3.0084369e+02 2.8923297e+02 -4.9160697e+03 - 2.9509499e+02 2.9509499e+02 -4.9160697e+03 - 2.8923297e+02 3.0084369e+02 -4.9160697e+03 - 2.8325992e+02 3.0647684e+02 -4.9160696e+03 - 2.7717817e+02 3.1199222e+02 -4.9160695e+03 - 2.7099008e+02 3.1738768e+02 -4.9160694e+03 - 2.6469806e+02 3.2266111e+02 -4.9160692e+03 - 2.5830455e+02 3.2781044e+02 -4.9160690e+03 - 2.5181205e+02 3.3283366e+02 -4.9160688e+03 - 2.4522306e+02 3.3772879e+02 -4.9160685e+03 - 2.3854014e+02 3.4249391e+02 -4.9160682e+03 - 2.3176589e+02 3.4712715e+02 -4.9160679e+03 - 2.2490290e+02 3.5162668e+02 -4.9160676e+03 - 2.1795386e+02 3.5599074e+02 -4.9160672e+03 - 2.1092142e+02 3.6021760e+02 -4.9160668e+03 - 2.0380831e+02 3.6430559e+02 -4.9160664e+03 - 1.9661728e+02 3.6825311e+02 -4.9160660e+03 - 1.8935109e+02 3.7205859e+02 -4.9160655e+03 - 1.8201253e+02 3.7572053e+02 -4.9160650e+03 - 1.7460443e+02 3.7923748e+02 -4.9160646e+03 - 1.6712965e+02 3.8260805e+02 -4.9160641e+03 - 1.5959104e+02 3.8583090e+02 -4.9160636e+03 - 1.5199150e+02 3.8890476e+02 -4.9160631e+03 - 1.4433395e+02 3.9182842e+02 -4.9160627e+03 - 1.3662132e+02 3.9460070e+02 -4.9160622e+03 - 1.2885657e+02 3.9722050e+02 -4.9160617e+03 - 1.2104266e+02 3.9968680e+02 -4.9160613e+03 - 1.1318259e+02 4.0199861e+02 -4.9160609e+03 - 1.0527936e+02 4.0415500e+02 -4.9160604e+03 - 9.7335994e+01 4.0615512e+02 -4.9160601e+03 - 8.9355525e+01 4.0799818e+02 -4.9160597e+03 - 8.1341000e+01 4.0968344e+02 -4.9160593e+03 - 7.3295477e+01 4.1121024e+02 -4.9160590e+03 - 6.5222026e+01 4.1257795e+02 -4.9160587e+03 - 5.7123726e+01 4.1378605e+02 -4.9160584e+03 - 4.9003663e+01 4.1483404e+02 -4.9160582e+03 - 4.0864935e+01 4.1572151e+02 -4.9160580e+03 - 3.2710640e+01 4.1644810e+02 -4.9160578e+03 - 2.4543887e+01 4.1701353e+02 -4.9160577e+03 - 1.6367786e+01 4.1741757e+02 -4.9160576e+03 - 8.1854518e+00 4.1766006e+02 -4.9160576e+03 - 0.0000000e+00 4.1774090e+02 -4.9160575e+03 - -8.1854518e+00 4.1766006e+02 -4.9160576e+03 - -1.6367786e+01 4.1741757e+02 -4.9160576e+03 - -2.4543887e+01 4.1701353e+02 -4.9160577e+03 - -3.2710640e+01 4.1644810e+02 -4.9160578e+03 - -4.0864935e+01 4.1572151e+02 -4.9160580e+03 - -4.9003663e+01 4.1483404e+02 -4.9160582e+03 - -5.7123726e+01 4.1378605e+02 -4.9160584e+03 - -6.5222026e+01 4.1257795e+02 -4.9160587e+03 - -7.3295477e+01 4.1121024e+02 -4.9160590e+03 - -8.1341000e+01 4.0968344e+02 -4.9160593e+03 - -8.9355525e+01 4.0799818e+02 -4.9160597e+03 - -9.7335994e+01 4.0615512e+02 -4.9160601e+03 - -1.0527936e+02 4.0415500e+02 -4.9160604e+03 - -1.1318259e+02 4.0199861e+02 -4.9160609e+03 - -1.2104266e+02 3.9968680e+02 -4.9160613e+03 - -1.2885657e+02 3.9722050e+02 -4.9160617e+03 - -1.3662132e+02 3.9460070e+02 -4.9160622e+03 - -1.4433395e+02 3.9182842e+02 -4.9160627e+03 - -1.5199150e+02 3.8890476e+02 -4.9160631e+03 - -1.5959104e+02 3.8583090e+02 -4.9160636e+03 - -1.6712965e+02 3.8260805e+02 -4.9160641e+03 - -1.7460443e+02 3.7923748e+02 -4.9160646e+03 - -1.8201253e+02 3.7572053e+02 -4.9160650e+03 - -1.8935109e+02 3.7205859e+02 -4.9160655e+03 - -1.9661728e+02 3.6825311e+02 -4.9160660e+03 - -2.0380831e+02 3.6430559e+02 -4.9160664e+03 - -2.1092142e+02 3.6021760e+02 -4.9160668e+03 - -2.1795386e+02 3.5599074e+02 -4.9160672e+03 - -2.2490290e+02 3.5162668e+02 -4.9160676e+03 - -2.3176589e+02 3.4712715e+02 -4.9160679e+03 - -2.3854014e+02 3.4249391e+02 -4.9160682e+03 - -2.4522306e+02 3.3772879e+02 -4.9160685e+03 - -2.5181205e+02 3.3283366e+02 -4.9160688e+03 - -2.5830455e+02 3.2781044e+02 -4.9160690e+03 - -2.6469806e+02 3.2266111e+02 -4.9160692e+03 - -2.7099008e+02 3.1738768e+02 -4.9160694e+03 - -2.7717817e+02 3.1199222e+02 -4.9160695e+03 - -2.8325992e+02 3.0647684e+02 -4.9160696e+03 - -2.8923297e+02 3.0084369e+02 -4.9160697e+03 - -2.9509499e+02 2.9509499e+02 -4.9160697e+03 - -3.0084369e+02 2.8923297e+02 -4.9160697e+03 - -3.0647684e+02 2.8325992e+02 -4.9160696e+03 - -3.1199222e+02 2.7717817e+02 -4.9160695e+03 - -3.1738768e+02 2.7099008e+02 -4.9160694e+03 - -3.2266111e+02 2.6469806e+02 -4.9160692e+03 - -3.2781044e+02 2.5830455e+02 -4.9160690e+03 - -3.3283366e+02 2.5181205e+02 -4.9160688e+03 - -3.3772879e+02 2.4522306e+02 -4.9160685e+03 - -3.4249391e+02 2.3854014e+02 -4.9160682e+03 - -3.4712715e+02 2.3176589e+02 -4.9160679e+03 - -3.5162668e+02 2.2490290e+02 -4.9160676e+03 - -3.5599074e+02 2.1795386e+02 -4.9160672e+03 - -3.6021760e+02 2.1092142e+02 -4.9160668e+03 - -3.6430559e+02 2.0380831e+02 -4.9160664e+03 - -3.6825311e+02 1.9661728e+02 -4.9160660e+03 - -3.7205859e+02 1.8935109e+02 -4.9160655e+03 - -3.7572053e+02 1.8201253e+02 -4.9160650e+03 - -3.7923748e+02 1.7460443e+02 -4.9160646e+03 - -3.8260805e+02 1.6712965e+02 -4.9160641e+03 - -3.8583090e+02 1.5959104e+02 -4.9160636e+03 - -3.8890476e+02 1.5199150e+02 -4.9160631e+03 - -3.9182842e+02 1.4433395e+02 -4.9160627e+03 - -3.9460070e+02 1.3662132e+02 -4.9160622e+03 - -3.9722050e+02 1.2885657e+02 -4.9160617e+03 - -3.9968680e+02 1.2104266e+02 -4.9160613e+03 - -4.0199861e+02 1.1318259e+02 -4.9160609e+03 - -4.0415500e+02 1.0527936e+02 -4.9160604e+03 - -4.0615512e+02 9.7335994e+01 -4.9160601e+03 - -4.0799818e+02 8.9355525e+01 -4.9160597e+03 - -4.0968344e+02 8.1341000e+01 -4.9160593e+03 - -4.1121024e+02 7.3295477e+01 -4.9160590e+03 - -4.1257795e+02 6.5222026e+01 -4.9160587e+03 - -4.1378605e+02 5.7123726e+01 -4.9160584e+03 - -4.1483404e+02 4.9003663e+01 -4.9160582e+03 - -4.1572151e+02 4.0864935e+01 -4.9160580e+03 - -4.1644810e+02 3.2710640e+01 -4.9160578e+03 - -4.1701353e+02 2.4543887e+01 -4.9160577e+03 - -4.1741757e+02 1.6367786e+01 -4.9160576e+03 - -4.1766006e+02 8.1854518e+00 -4.9160576e+03 - -4.1774090e+02 0.0000000e+00 -4.9160575e+03 - -4.1766006e+02 -8.1854518e+00 -4.9160576e+03 - -4.1741757e+02 -1.6367786e+01 -4.9160576e+03 - -4.1701353e+02 -2.4543887e+01 -4.9160577e+03 - -4.1644810e+02 -3.2710640e+01 -4.9160578e+03 - -4.1572151e+02 -4.0864935e+01 -4.9160580e+03 - -4.1483404e+02 -4.9003663e+01 -4.9160582e+03 - -4.1378605e+02 -5.7123726e+01 -4.9160584e+03 - -4.1257795e+02 -6.5222026e+01 -4.9160587e+03 - -4.1121024e+02 -7.3295477e+01 -4.9160590e+03 - -4.0968344e+02 -8.1341000e+01 -4.9160593e+03 - -4.0799818e+02 -8.9355525e+01 -4.9160597e+03 - -4.0615512e+02 -9.7335994e+01 -4.9160601e+03 - -4.0415500e+02 -1.0527936e+02 -4.9160604e+03 - -4.0199861e+02 -1.1318259e+02 -4.9160609e+03 - -3.9968680e+02 -1.2104266e+02 -4.9160613e+03 - -3.9722050e+02 -1.2885657e+02 -4.9160617e+03 - -3.9460070e+02 -1.3662132e+02 -4.9160622e+03 - -3.9182842e+02 -1.4433395e+02 -4.9160627e+03 - -3.8890476e+02 -1.5199150e+02 -4.9160631e+03 - -3.8583090e+02 -1.5959104e+02 -4.9160636e+03 - -3.8260805e+02 -1.6712965e+02 -4.9160641e+03 - -3.7923748e+02 -1.7460443e+02 -4.9160646e+03 - -3.7572053e+02 -1.8201253e+02 -4.9160650e+03 - -3.7205859e+02 -1.8935109e+02 -4.9160655e+03 - -3.6825311e+02 -1.9661728e+02 -4.9160660e+03 - -3.6430559e+02 -2.0380831e+02 -4.9160664e+03 - -3.6021760e+02 -2.1092142e+02 -4.9160668e+03 - -3.5599074e+02 -2.1795386e+02 -4.9160672e+03 - -3.5162668e+02 -2.2490290e+02 -4.9160676e+03 - -3.4712715e+02 -2.3176589e+02 -4.9160679e+03 - -3.4249391e+02 -2.3854014e+02 -4.9160682e+03 - -3.3772879e+02 -2.4522306e+02 -4.9160685e+03 - -3.3283366e+02 -2.5181205e+02 -4.9160688e+03 - -3.2781044e+02 -2.5830455e+02 -4.9160690e+03 - -3.2266111e+02 -2.6469806e+02 -4.9160692e+03 - -3.1738768e+02 -2.7099008e+02 -4.9160694e+03 - -3.1199222e+02 -2.7717817e+02 -4.9160695e+03 - -3.0647684e+02 -2.8325992e+02 -4.9160696e+03 - -3.0084369e+02 -2.8923297e+02 -4.9160697e+03 - -2.9509499e+02 -2.9509499e+02 -4.9160697e+03 - -2.8923297e+02 -3.0084369e+02 -4.9160697e+03 - -2.8325992e+02 -3.0647684e+02 -4.9160696e+03 - -2.7717817e+02 -3.1199222e+02 -4.9160695e+03 - -2.7099008e+02 -3.1738768e+02 -4.9160694e+03 - -2.6469806e+02 -3.2266111e+02 -4.9160692e+03 - -2.5830455e+02 -3.2781044e+02 -4.9160690e+03 - -2.5181205e+02 -3.3283366e+02 -4.9160688e+03 - -2.4522306e+02 -3.3772879e+02 -4.9160685e+03 - -2.3854014e+02 -3.4249391e+02 -4.9160682e+03 - -2.3176589e+02 -3.4712715e+02 -4.9160679e+03 - -2.2490290e+02 -3.5162668e+02 -4.9160676e+03 - -2.1795386e+02 -3.5599074e+02 -4.9160672e+03 - -2.1092142e+02 -3.6021760e+02 -4.9160668e+03 - -2.0380831e+02 -3.6430559e+02 -4.9160664e+03 - -1.9661728e+02 -3.6825311e+02 -4.9160660e+03 - -1.8935109e+02 -3.7205859e+02 -4.9160655e+03 - -1.8201253e+02 -3.7572053e+02 -4.9160650e+03 - -1.7460443e+02 -3.7923748e+02 -4.9160646e+03 - -1.6712965e+02 -3.8260805e+02 -4.9160641e+03 - -1.5959104e+02 -3.8583090e+02 -4.9160636e+03 - -1.5199150e+02 -3.8890476e+02 -4.9160631e+03 - -1.4433395e+02 -3.9182842e+02 -4.9160627e+03 - -1.3662132e+02 -3.9460070e+02 -4.9160622e+03 - -1.2885657e+02 -3.9722050e+02 -4.9160617e+03 - -1.2104266e+02 -3.9968680e+02 -4.9160613e+03 - -1.1318259e+02 -4.0199861e+02 -4.9160609e+03 - -1.0527936e+02 -4.0415500e+02 -4.9160604e+03 - -9.7335994e+01 -4.0615512e+02 -4.9160601e+03 - -8.9355525e+01 -4.0799818e+02 -4.9160597e+03 - -8.1341000e+01 -4.0968344e+02 -4.9160593e+03 - -7.3295477e+01 -4.1121024e+02 -4.9160590e+03 - -6.5222026e+01 -4.1257795e+02 -4.9160587e+03 - -5.7123726e+01 -4.1378605e+02 -4.9160584e+03 - -4.9003663e+01 -4.1483404e+02 -4.9160582e+03 - -4.0864935e+01 -4.1572151e+02 -4.9160580e+03 - -3.2710640e+01 -4.1644810e+02 -4.9160578e+03 - -2.4543887e+01 -4.1701353e+02 -4.9160577e+03 - -1.6367786e+01 -4.1741757e+02 -4.9160576e+03 - -8.1854518e+00 -4.1766006e+02 -4.9160576e+03 - 0.0000000e+00 -4.1774090e+02 -4.9160575e+03 - 8.1854518e+00 -4.1766006e+02 -4.9160576e+03 - 1.6367786e+01 -4.1741757e+02 -4.9160576e+03 - 2.4543887e+01 -4.1701353e+02 -4.9160577e+03 - 3.2710640e+01 -4.1644810e+02 -4.9160578e+03 - 4.0864935e+01 -4.1572151e+02 -4.9160580e+03 - 4.9003663e+01 -4.1483404e+02 -4.9160582e+03 - 5.7123726e+01 -4.1378605e+02 -4.9160584e+03 - 6.5222026e+01 -4.1257795e+02 -4.9160587e+03 - 7.3295477e+01 -4.1121024e+02 -4.9160590e+03 - 8.1341000e+01 -4.0968344e+02 -4.9160593e+03 - 8.9355525e+01 -4.0799818e+02 -4.9160597e+03 - 9.7335994e+01 -4.0615512e+02 -4.9160601e+03 - 1.0527936e+02 -4.0415500e+02 -4.9160604e+03 - 1.1318259e+02 -4.0199861e+02 -4.9160609e+03 - 1.2104266e+02 -3.9968680e+02 -4.9160613e+03 - 1.2885657e+02 -3.9722050e+02 -4.9160617e+03 - 1.3662132e+02 -3.9460070e+02 -4.9160622e+03 - 1.4433395e+02 -3.9182842e+02 -4.9160627e+03 - 1.5199150e+02 -3.8890476e+02 -4.9160631e+03 - 1.5959104e+02 -3.8583090e+02 -4.9160636e+03 - 1.6712965e+02 -3.8260805e+02 -4.9160641e+03 - 1.7460443e+02 -3.7923748e+02 -4.9160646e+03 - 1.8201253e+02 -3.7572053e+02 -4.9160650e+03 - 1.8935109e+02 -3.7205859e+02 -4.9160655e+03 - 1.9661728e+02 -3.6825311e+02 -4.9160660e+03 - 2.0380831e+02 -3.6430559e+02 -4.9160664e+03 - 2.1092142e+02 -3.6021760e+02 -4.9160668e+03 - 2.1795386e+02 -3.5599074e+02 -4.9160672e+03 - 2.2490290e+02 -3.5162668e+02 -4.9160676e+03 - 2.3176589e+02 -3.4712715e+02 -4.9160679e+03 - 2.3854014e+02 -3.4249391e+02 -4.9160682e+03 - 2.4522306e+02 -3.3772879e+02 -4.9160685e+03 - 2.5181205e+02 -3.3283366e+02 -4.9160688e+03 - 2.5830455e+02 -3.2781044e+02 -4.9160690e+03 - 2.6469806e+02 -3.2266111e+02 -4.9160692e+03 - 2.7099008e+02 -3.1738768e+02 -4.9160694e+03 - 2.7717817e+02 -3.1199222e+02 -4.9160695e+03 - 2.8325992e+02 -3.0647684e+02 -4.9160696e+03 - 2.8923297e+02 -3.0084369e+02 -4.9160697e+03 - 2.9509499e+02 -2.9509499e+02 -4.9160697e+03 - 3.0084369e+02 -2.8923297e+02 -4.9160697e+03 - 3.0647684e+02 -2.8325992e+02 -4.9160696e+03 - 3.1199222e+02 -2.7717817e+02 -4.9160695e+03 - 3.1738768e+02 -2.7099008e+02 -4.9160694e+03 - 3.2266111e+02 -2.6469806e+02 -4.9160692e+03 - 3.2781044e+02 -2.5830455e+02 -4.9160690e+03 - 3.3283366e+02 -2.5181205e+02 -4.9160688e+03 - 3.3772879e+02 -2.4522306e+02 -4.9160685e+03 - 3.4249391e+02 -2.3854014e+02 -4.9160682e+03 - 3.4712715e+02 -2.3176589e+02 -4.9160679e+03 - 3.5162668e+02 -2.2490290e+02 -4.9160676e+03 - 3.5599074e+02 -2.1795386e+02 -4.9160672e+03 - 3.6021760e+02 -2.1092142e+02 -4.9160668e+03 - 3.6430559e+02 -2.0380831e+02 -4.9160664e+03 - 3.6825311e+02 -1.9661728e+02 -4.9160660e+03 - 3.7205859e+02 -1.8935109e+02 -4.9160655e+03 - 3.7572053e+02 -1.8201253e+02 -4.9160650e+03 - 3.7923748e+02 -1.7460443e+02 -4.9160646e+03 - 3.8260805e+02 -1.6712965e+02 -4.9160641e+03 - 3.8583090e+02 -1.5959104e+02 -4.9160636e+03 - 3.8890476e+02 -1.5199150e+02 -4.9160631e+03 - 3.9182842e+02 -1.4433395e+02 -4.9160627e+03 - 3.9460070e+02 -1.3662132e+02 -4.9160622e+03 - 3.9722050e+02 -1.2885657e+02 -4.9160617e+03 - 3.9968680e+02 -1.2104266e+02 -4.9160613e+03 - 4.0199861e+02 -1.1318259e+02 -4.9160609e+03 - 4.0415500e+02 -1.0527936e+02 -4.9160604e+03 - 4.0615512e+02 -9.7335994e+01 -4.9160601e+03 - 4.0799818e+02 -8.9355525e+01 -4.9160597e+03 - 4.0968344e+02 -8.1341000e+01 -4.9160593e+03 - 4.1121024e+02 -7.3295477e+01 -4.9160590e+03 - 4.1257795e+02 -6.5222026e+01 -4.9160587e+03 - 4.1378605e+02 -5.7123726e+01 -4.9160584e+03 - 4.1483404e+02 -4.9003663e+01 -4.9160582e+03 - 4.1572151e+02 -4.0864935e+01 -4.9160580e+03 - 4.1644810e+02 -3.2710640e+01 -4.9160578e+03 - 4.1701353e+02 -2.4543887e+01 -4.9160577e+03 - 4.1741757e+02 -1.6367786e+01 -4.9160576e+03 - 4.1766006e+02 -8.1854518e+00 -4.9160576e+03 - 4.1774090e+02 0.0000000e+00 -4.9160575e+03 - 2.0978506e+02 0.0000000e+00 -4.9221799e+03 - 2.0974458e+02 4.1167934e+00 -4.9221799e+03 - 2.0962316e+02 8.2320045e+00 -4.9221799e+03 - 2.0942085e+02 1.2344052e+01 -4.9221799e+03 - 2.0913772e+02 1.6451354e+01 -4.9221799e+03 - 2.0877388e+02 2.0552333e+01 -4.9221799e+03 - 2.0832949e+02 2.4645413e+01 -4.9221799e+03 - 2.0780470e+02 2.8729019e+01 -4.9221799e+03 - 2.0719972e+02 3.2801582e+01 -4.9221799e+03 - 2.0651480e+02 3.6861537e+01 -4.9221800e+03 - 2.0575019e+02 4.0907321e+01 -4.9221800e+03 - 2.0490619e+02 4.4937381e+01 -4.9221800e+03 - 2.0398313e+02 4.8950165e+01 -4.9221800e+03 - 2.0298137e+02 5.2944130e+01 -4.9221800e+03 - 2.0190130e+02 5.6917741e+01 -4.9221801e+03 - 2.0074334e+02 6.0869469e+01 -4.9221801e+03 - 1.9950793e+02 6.4797793e+01 -4.9221801e+03 - 1.9819557e+02 6.8701202e+01 -4.9221802e+03 - 1.9680675e+02 7.2578194e+01 -4.9221802e+03 - 1.9534202e+02 7.6427276e+01 -4.9221802e+03 - 1.9380195e+02 8.0246967e+01 -4.9221802e+03 - 1.9218713e+02 8.4035796e+01 -4.9221803e+03 - 1.9049819e+02 8.7792305e+01 -4.9221803e+03 - 1.8873579e+02 9.1515046e+01 -4.9221803e+03 - 1.8690061e+02 9.5202585e+01 -4.9221804e+03 - 1.8499337e+02 9.8853502e+01 -4.9221804e+03 - 1.8301480e+02 1.0246639e+02 -4.9221804e+03 - 1.8096567e+02 1.0603986e+02 -4.9221804e+03 - 1.7884677e+02 1.0957252e+02 -4.9221805e+03 - 1.7665893e+02 1.1306303e+02 -4.9221805e+03 - 1.7440300e+02 1.1651002e+02 -4.9221805e+03 - 1.7207985e+02 1.1991218e+02 -4.9221805e+03 - 1.6969038e+02 1.2326819e+02 -4.9221806e+03 - 1.6723551e+02 1.2657676e+02 -4.9221806e+03 - 1.6471620e+02 1.2983660e+02 -4.9221806e+03 - 1.6213343e+02 1.3304646e+02 -4.9221806e+03 - 1.5948818e+02 1.3620510e+02 -4.9221806e+03 - 1.5678149e+02 1.3931130e+02 -4.9221806e+03 - 1.5401441e+02 1.4236386e+02 -4.9221806e+03 - 1.5118800e+02 1.4536160e+02 -4.9221806e+03 - 1.4830336e+02 1.4830336e+02 -4.9221806e+03 - 1.4536160e+02 1.5118800e+02 -4.9221806e+03 - 1.4236386e+02 1.5401441e+02 -4.9221806e+03 - 1.3931130e+02 1.5678149e+02 -4.9221806e+03 - 1.3620510e+02 1.5948818e+02 -4.9221806e+03 - 1.3304646e+02 1.6213343e+02 -4.9221806e+03 - 1.2983660e+02 1.6471620e+02 -4.9221806e+03 - 1.2657676e+02 1.6723551e+02 -4.9221806e+03 - 1.2326819e+02 1.6969038e+02 -4.9221806e+03 - 1.1991218e+02 1.7207985e+02 -4.9221805e+03 - 1.1651002e+02 1.7440300e+02 -4.9221805e+03 - 1.1306303e+02 1.7665893e+02 -4.9221805e+03 - 1.0957252e+02 1.7884677e+02 -4.9221805e+03 - 1.0603986e+02 1.8096567e+02 -4.9221804e+03 - 1.0246639e+02 1.8301480e+02 -4.9221804e+03 - 9.8853502e+01 1.8499337e+02 -4.9221804e+03 - 9.5202585e+01 1.8690061e+02 -4.9221804e+03 - 9.1515046e+01 1.8873579e+02 -4.9221803e+03 - 8.7792305e+01 1.9049819e+02 -4.9221803e+03 - 8.4035796e+01 1.9218713e+02 -4.9221803e+03 - 8.0246967e+01 1.9380195e+02 -4.9221802e+03 - 7.6427276e+01 1.9534202e+02 -4.9221802e+03 - 7.2578194e+01 1.9680675e+02 -4.9221802e+03 - 6.8701202e+01 1.9819557e+02 -4.9221802e+03 - 6.4797793e+01 1.9950793e+02 -4.9221801e+03 - 6.0869469e+01 2.0074334e+02 -4.9221801e+03 - 5.6917741e+01 2.0190130e+02 -4.9221801e+03 - 5.2944130e+01 2.0298137e+02 -4.9221800e+03 - 4.8950165e+01 2.0398313e+02 -4.9221800e+03 - 4.4937381e+01 2.0490619e+02 -4.9221800e+03 - 4.0907321e+01 2.0575019e+02 -4.9221800e+03 - 3.6861537e+01 2.0651480e+02 -4.9221800e+03 - 3.2801582e+01 2.0719972e+02 -4.9221799e+03 - 2.8729019e+01 2.0780470e+02 -4.9221799e+03 - 2.4645413e+01 2.0832949e+02 -4.9221799e+03 - 2.0552333e+01 2.0877388e+02 -4.9221799e+03 - 1.6451354e+01 2.0913772e+02 -4.9221799e+03 - 1.2344052e+01 2.0942085e+02 -4.9221799e+03 - 8.2320045e+00 2.0962316e+02 -4.9221799e+03 - 4.1167934e+00 2.0974458e+02 -4.9221799e+03 - 0.0000000e+00 2.0978506e+02 -4.9221799e+03 - -4.1167934e+00 2.0974458e+02 -4.9221799e+03 - -8.2320045e+00 2.0962316e+02 -4.9221799e+03 - -1.2344052e+01 2.0942085e+02 -4.9221799e+03 - -1.6451354e+01 2.0913772e+02 -4.9221799e+03 - -2.0552333e+01 2.0877388e+02 -4.9221799e+03 - -2.4645413e+01 2.0832949e+02 -4.9221799e+03 - -2.8729019e+01 2.0780470e+02 -4.9221799e+03 - -3.2801582e+01 2.0719972e+02 -4.9221799e+03 - -3.6861537e+01 2.0651480e+02 -4.9221800e+03 - -4.0907321e+01 2.0575019e+02 -4.9221800e+03 - -4.4937381e+01 2.0490619e+02 -4.9221800e+03 - -4.8950165e+01 2.0398313e+02 -4.9221800e+03 - -5.2944130e+01 2.0298137e+02 -4.9221800e+03 - -5.6917741e+01 2.0190130e+02 -4.9221801e+03 - -6.0869469e+01 2.0074334e+02 -4.9221801e+03 - -6.4797793e+01 1.9950793e+02 -4.9221801e+03 - -6.8701202e+01 1.9819557e+02 -4.9221802e+03 - -7.2578194e+01 1.9680675e+02 -4.9221802e+03 - -7.6427276e+01 1.9534202e+02 -4.9221802e+03 - -8.0246967e+01 1.9380195e+02 -4.9221802e+03 - -8.4035796e+01 1.9218713e+02 -4.9221803e+03 - -8.7792305e+01 1.9049819e+02 -4.9221803e+03 - -9.1515046e+01 1.8873579e+02 -4.9221803e+03 - -9.5202585e+01 1.8690061e+02 -4.9221804e+03 - -9.8853502e+01 1.8499337e+02 -4.9221804e+03 - -1.0246639e+02 1.8301480e+02 -4.9221804e+03 - -1.0603986e+02 1.8096567e+02 -4.9221804e+03 - -1.0957252e+02 1.7884677e+02 -4.9221805e+03 - -1.1306303e+02 1.7665893e+02 -4.9221805e+03 - -1.1651002e+02 1.7440300e+02 -4.9221805e+03 - -1.1991218e+02 1.7207985e+02 -4.9221805e+03 - -1.2326819e+02 1.6969038e+02 -4.9221806e+03 - -1.2657676e+02 1.6723551e+02 -4.9221806e+03 - -1.2983660e+02 1.6471620e+02 -4.9221806e+03 - -1.3304646e+02 1.6213343e+02 -4.9221806e+03 - -1.3620510e+02 1.5948818e+02 -4.9221806e+03 - -1.3931130e+02 1.5678149e+02 -4.9221806e+03 - -1.4236386e+02 1.5401441e+02 -4.9221806e+03 - -1.4536160e+02 1.5118800e+02 -4.9221806e+03 - -1.4830336e+02 1.4830336e+02 -4.9221806e+03 - -1.5118800e+02 1.4536160e+02 -4.9221806e+03 - -1.5401441e+02 1.4236386e+02 -4.9221806e+03 - -1.5678149e+02 1.3931130e+02 -4.9221806e+03 - -1.5948818e+02 1.3620510e+02 -4.9221806e+03 - -1.6213343e+02 1.3304646e+02 -4.9221806e+03 - -1.6471620e+02 1.2983660e+02 -4.9221806e+03 - -1.6723551e+02 1.2657676e+02 -4.9221806e+03 - -1.6969038e+02 1.2326819e+02 -4.9221806e+03 - -1.7207985e+02 1.1991218e+02 -4.9221805e+03 - -1.7440300e+02 1.1651002e+02 -4.9221805e+03 - -1.7665893e+02 1.1306303e+02 -4.9221805e+03 - -1.7884677e+02 1.0957252e+02 -4.9221805e+03 - -1.8096567e+02 1.0603986e+02 -4.9221804e+03 - -1.8301480e+02 1.0246639e+02 -4.9221804e+03 - -1.8499337e+02 9.8853502e+01 -4.9221804e+03 - -1.8690061e+02 9.5202585e+01 -4.9221804e+03 - -1.8873579e+02 9.1515046e+01 -4.9221803e+03 - -1.9049819e+02 8.7792305e+01 -4.9221803e+03 - -1.9218713e+02 8.4035796e+01 -4.9221803e+03 - -1.9380195e+02 8.0246967e+01 -4.9221802e+03 - -1.9534202e+02 7.6427276e+01 -4.9221802e+03 - -1.9680675e+02 7.2578194e+01 -4.9221802e+03 - -1.9819557e+02 6.8701202e+01 -4.9221802e+03 - -1.9950793e+02 6.4797793e+01 -4.9221801e+03 - -2.0074334e+02 6.0869469e+01 -4.9221801e+03 - -2.0190130e+02 5.6917741e+01 -4.9221801e+03 - -2.0298137e+02 5.2944130e+01 -4.9221800e+03 - -2.0398313e+02 4.8950165e+01 -4.9221800e+03 - -2.0490619e+02 4.4937381e+01 -4.9221800e+03 - -2.0575019e+02 4.0907321e+01 -4.9221800e+03 - -2.0651480e+02 3.6861537e+01 -4.9221800e+03 - -2.0719972e+02 3.2801582e+01 -4.9221799e+03 - -2.0780470e+02 2.8729019e+01 -4.9221799e+03 - -2.0832949e+02 2.4645413e+01 -4.9221799e+03 - -2.0877388e+02 2.0552333e+01 -4.9221799e+03 - -2.0913772e+02 1.6451354e+01 -4.9221799e+03 - -2.0942085e+02 1.2344052e+01 -4.9221799e+03 - -2.0962316e+02 8.2320045e+00 -4.9221799e+03 - -2.0974458e+02 4.1167934e+00 -4.9221799e+03 - -2.0978506e+02 0.0000000e+00 -4.9221799e+03 - -2.0974458e+02 -4.1167934e+00 -4.9221799e+03 - -2.0962316e+02 -8.2320045e+00 -4.9221799e+03 - -2.0942085e+02 -1.2344052e+01 -4.9221799e+03 - -2.0913772e+02 -1.6451354e+01 -4.9221799e+03 - -2.0877388e+02 -2.0552333e+01 -4.9221799e+03 - -2.0832949e+02 -2.4645413e+01 -4.9221799e+03 - -2.0780470e+02 -2.8729019e+01 -4.9221799e+03 - -2.0719972e+02 -3.2801582e+01 -4.9221799e+03 - -2.0651480e+02 -3.6861537e+01 -4.9221800e+03 - -2.0575019e+02 -4.0907321e+01 -4.9221800e+03 - -2.0490619e+02 -4.4937381e+01 -4.9221800e+03 - -2.0398313e+02 -4.8950165e+01 -4.9221800e+03 - -2.0298137e+02 -5.2944130e+01 -4.9221800e+03 - -2.0190130e+02 -5.6917741e+01 -4.9221801e+03 - -2.0074334e+02 -6.0869469e+01 -4.9221801e+03 - -1.9950793e+02 -6.4797793e+01 -4.9221801e+03 - -1.9819557e+02 -6.8701202e+01 -4.9221802e+03 - -1.9680675e+02 -7.2578194e+01 -4.9221802e+03 - -1.9534202e+02 -7.6427276e+01 -4.9221802e+03 - -1.9380195e+02 -8.0246967e+01 -4.9221802e+03 - -1.9218713e+02 -8.4035796e+01 -4.9221803e+03 - -1.9049819e+02 -8.7792305e+01 -4.9221803e+03 - -1.8873579e+02 -9.1515046e+01 -4.9221803e+03 - -1.8690061e+02 -9.5202585e+01 -4.9221804e+03 - -1.8499337e+02 -9.8853502e+01 -4.9221804e+03 - -1.8301480e+02 -1.0246639e+02 -4.9221804e+03 - -1.8096567e+02 -1.0603986e+02 -4.9221804e+03 - -1.7884677e+02 -1.0957252e+02 -4.9221805e+03 - -1.7665893e+02 -1.1306303e+02 -4.9221805e+03 - -1.7440300e+02 -1.1651002e+02 -4.9221805e+03 - -1.7207985e+02 -1.1991218e+02 -4.9221805e+03 - -1.6969038e+02 -1.2326819e+02 -4.9221806e+03 - -1.6723551e+02 -1.2657676e+02 -4.9221806e+03 - -1.6471620e+02 -1.2983660e+02 -4.9221806e+03 - -1.6213343e+02 -1.3304646e+02 -4.9221806e+03 - -1.5948818e+02 -1.3620510e+02 -4.9221806e+03 - -1.5678149e+02 -1.3931130e+02 -4.9221806e+03 - -1.5401441e+02 -1.4236386e+02 -4.9221806e+03 - -1.5118800e+02 -1.4536160e+02 -4.9221806e+03 - -1.4830336e+02 -1.4830336e+02 -4.9221806e+03 - -1.4536160e+02 -1.5118800e+02 -4.9221806e+03 - -1.4236386e+02 -1.5401441e+02 -4.9221806e+03 - -1.3931130e+02 -1.5678149e+02 -4.9221806e+03 - -1.3620510e+02 -1.5948818e+02 -4.9221806e+03 - -1.3304646e+02 -1.6213343e+02 -4.9221806e+03 - -1.2983660e+02 -1.6471620e+02 -4.9221806e+03 - -1.2657676e+02 -1.6723551e+02 -4.9221806e+03 - -1.2326819e+02 -1.6969038e+02 -4.9221806e+03 - -1.1991218e+02 -1.7207985e+02 -4.9221805e+03 - -1.1651002e+02 -1.7440300e+02 -4.9221805e+03 - -1.1306303e+02 -1.7665893e+02 -4.9221805e+03 - -1.0957252e+02 -1.7884677e+02 -4.9221805e+03 - -1.0603986e+02 -1.8096567e+02 -4.9221804e+03 - -1.0246639e+02 -1.8301480e+02 -4.9221804e+03 - -9.8853502e+01 -1.8499337e+02 -4.9221804e+03 - -9.5202585e+01 -1.8690061e+02 -4.9221804e+03 - -9.1515046e+01 -1.8873579e+02 -4.9221803e+03 - -8.7792305e+01 -1.9049819e+02 -4.9221803e+03 - -8.4035796e+01 -1.9218713e+02 -4.9221803e+03 - -8.0246967e+01 -1.9380195e+02 -4.9221802e+03 - -7.6427276e+01 -1.9534202e+02 -4.9221802e+03 - -7.2578194e+01 -1.9680675e+02 -4.9221802e+03 - -6.8701202e+01 -1.9819557e+02 -4.9221802e+03 - -6.4797793e+01 -1.9950793e+02 -4.9221801e+03 - -6.0869469e+01 -2.0074334e+02 -4.9221801e+03 - -5.6917741e+01 -2.0190130e+02 -4.9221801e+03 - -5.2944130e+01 -2.0298137e+02 -4.9221800e+03 - -4.8950165e+01 -2.0398313e+02 -4.9221800e+03 - -4.4937381e+01 -2.0490619e+02 -4.9221800e+03 - -4.0907321e+01 -2.0575019e+02 -4.9221800e+03 - -3.6861537e+01 -2.0651480e+02 -4.9221800e+03 - -3.2801582e+01 -2.0719972e+02 -4.9221799e+03 - -2.8729019e+01 -2.0780470e+02 -4.9221799e+03 - -2.4645413e+01 -2.0832949e+02 -4.9221799e+03 - -2.0552333e+01 -2.0877388e+02 -4.9221799e+03 - -1.6451354e+01 -2.0913772e+02 -4.9221799e+03 - -1.2344052e+01 -2.0942085e+02 -4.9221799e+03 - -8.2320045e+00 -2.0962316e+02 -4.9221799e+03 - -4.1167934e+00 -2.0974458e+02 -4.9221799e+03 - 0.0000000e+00 -2.0978506e+02 -4.9221799e+03 - 4.1167934e+00 -2.0974458e+02 -4.9221799e+03 - 8.2320045e+00 -2.0962316e+02 -4.9221799e+03 - 1.2344052e+01 -2.0942085e+02 -4.9221799e+03 - 1.6451354e+01 -2.0913772e+02 -4.9221799e+03 - 2.0552333e+01 -2.0877388e+02 -4.9221799e+03 - 2.4645413e+01 -2.0832949e+02 -4.9221799e+03 - 2.8729019e+01 -2.0780470e+02 -4.9221799e+03 - 3.2801582e+01 -2.0719972e+02 -4.9221799e+03 - 3.6861537e+01 -2.0651480e+02 -4.9221800e+03 - 4.0907321e+01 -2.0575019e+02 -4.9221800e+03 - 4.4937381e+01 -2.0490619e+02 -4.9221800e+03 - 4.8950165e+01 -2.0398313e+02 -4.9221800e+03 - 5.2944130e+01 -2.0298137e+02 -4.9221800e+03 - 5.6917741e+01 -2.0190130e+02 -4.9221801e+03 - 6.0869469e+01 -2.0074334e+02 -4.9221801e+03 - 6.4797793e+01 -1.9950793e+02 -4.9221801e+03 - 6.8701202e+01 -1.9819557e+02 -4.9221802e+03 - 7.2578194e+01 -1.9680675e+02 -4.9221802e+03 - 7.6427276e+01 -1.9534202e+02 -4.9221802e+03 - 8.0246967e+01 -1.9380195e+02 -4.9221802e+03 - 8.4035796e+01 -1.9218713e+02 -4.9221803e+03 - 8.7792305e+01 -1.9049819e+02 -4.9221803e+03 - 9.1515046e+01 -1.8873579e+02 -4.9221803e+03 - 9.5202585e+01 -1.8690061e+02 -4.9221804e+03 - 9.8853502e+01 -1.8499337e+02 -4.9221804e+03 - 1.0246639e+02 -1.8301480e+02 -4.9221804e+03 - 1.0603986e+02 -1.8096567e+02 -4.9221804e+03 - 1.0957252e+02 -1.7884677e+02 -4.9221805e+03 - 1.1306303e+02 -1.7665893e+02 -4.9221805e+03 - 1.1651002e+02 -1.7440300e+02 -4.9221805e+03 - 1.1991218e+02 -1.7207985e+02 -4.9221805e+03 - 1.2326819e+02 -1.6969038e+02 -4.9221806e+03 - 1.2657676e+02 -1.6723551e+02 -4.9221806e+03 - 1.2983660e+02 -1.6471620e+02 -4.9221806e+03 - 1.3304646e+02 -1.6213343e+02 -4.9221806e+03 - 1.3620510e+02 -1.5948818e+02 -4.9221806e+03 - 1.3931130e+02 -1.5678149e+02 -4.9221806e+03 - 1.4236386e+02 -1.5401441e+02 -4.9221806e+03 - 1.4536160e+02 -1.5118800e+02 -4.9221806e+03 - 1.4830336e+02 -1.4830336e+02 -4.9221806e+03 - 1.5118800e+02 -1.4536160e+02 -4.9221806e+03 - 1.5401441e+02 -1.4236386e+02 -4.9221806e+03 - 1.5678149e+02 -1.3931130e+02 -4.9221806e+03 - 1.5948818e+02 -1.3620510e+02 -4.9221806e+03 - 1.6213343e+02 -1.3304646e+02 -4.9221806e+03 - 1.6471620e+02 -1.2983660e+02 -4.9221806e+03 - 1.6723551e+02 -1.2657676e+02 -4.9221806e+03 - 1.6969038e+02 -1.2326819e+02 -4.9221806e+03 - 1.7207985e+02 -1.1991218e+02 -4.9221805e+03 - 1.7440300e+02 -1.1651002e+02 -4.9221805e+03 - 1.7665893e+02 -1.1306303e+02 -4.9221805e+03 - 1.7884677e+02 -1.0957252e+02 -4.9221805e+03 - 1.8096567e+02 -1.0603986e+02 -4.9221804e+03 - 1.8301480e+02 -1.0246639e+02 -4.9221804e+03 - 1.8499337e+02 -9.8853502e+01 -4.9221804e+03 - 1.8690061e+02 -9.5202585e+01 -4.9221804e+03 - 1.8873579e+02 -9.1515046e+01 -4.9221803e+03 - 1.9049819e+02 -8.7792305e+01 -4.9221803e+03 - 1.9218713e+02 -8.4035796e+01 -4.9221803e+03 - 1.9380195e+02 -8.0246967e+01 -4.9221802e+03 - 1.9534202e+02 -7.6427276e+01 -4.9221802e+03 - 1.9680675e+02 -7.2578194e+01 -4.9221802e+03 - 1.9819557e+02 -6.8701202e+01 -4.9221802e+03 - 1.9950793e+02 -6.4797793e+01 -4.9221801e+03 - 2.0074334e+02 -6.0869469e+01 -4.9221801e+03 - 2.0190130e+02 -5.6917741e+01 -4.9221801e+03 - 2.0298137e+02 -5.2944130e+01 -4.9221800e+03 - 2.0398313e+02 -4.8950165e+01 -4.9221800e+03 - 2.0490619e+02 -4.4937381e+01 -4.9221800e+03 - 2.0575019e+02 -4.0907321e+01 -4.9221800e+03 - 2.0651480e+02 -3.6861537e+01 -4.9221800e+03 - 2.0719972e+02 -3.2801582e+01 -4.9221799e+03 - 2.0780470e+02 -2.8729019e+01 -4.9221799e+03 - 2.0832949e+02 -2.4645413e+01 -4.9221799e+03 - 2.0877388e+02 -2.0552333e+01 -4.9221799e+03 - 2.0913772e+02 -1.6451354e+01 -4.9221799e+03 - 2.0942085e+02 -1.2344052e+01 -4.9221799e+03 - 2.0962316e+02 -8.2320045e+00 -4.9221799e+03 - 2.0974458e+02 -4.1167934e+00 -4.9221799e+03 - 2.0978506e+02 0.0000000e+00 -4.9221799e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 - 0.0000000e+00 0.0000000e+00 -4.9242380e+03 diff --git a/examples/extended/exoticphysics/phonon/CrystalMaps/Ge/STVec.ssv b/examples/extended/exoticphysics/phonon/CrystalMaps/Ge/STVec.ssv deleted file mode 100644 index d21174369c..0000000000 --- a/examples/extended/exoticphysics/phonon/CrystalMaps/Ge/STVec.ssv +++ /dev/null @@ -1,51681 +0,0 @@ - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - 0.0000000e+00 0.0000000e+00 3.5488005e+03 - -5.9793428e+01 0.0000000e+00 3.5493860e+03 - -5.9781909e+01 -3.9146637e+00 3.5493865e+03 - -5.9747939e+01 -7.7979936e+00 3.5493881e+03 - -5.9693239e+01 -1.1619808e+01 3.5493907e+03 - -5.9620540e+01 -1.5352132e+01 3.5493943e+03 - -5.9533382e+01 -1.8970064e+01 3.5493988e+03 - -5.9435886e+01 -2.2452409e+01 3.5494043e+03 - -5.9332496e+01 -2.5782041e+01 3.5494106e+03 - -5.9227729e+01 -2.8946007e+01 3.5494177e+03 - -5.9125957e+01 -3.1935407e+01 3.5494255e+03 - -5.9031225e+01 -3.4745089e+01 3.5494339e+03 - -5.8947115e+01 -3.7373230e+01 3.5494428e+03 - -5.8876656e+01 -3.9820839e+01 3.5494522e+03 - -5.8822282e+01 -4.2091244e+01 3.5494620e+03 - -5.8785821e+01 -4.4189586e+01 3.5494721e+03 - -5.8768514e+01 -4.6122363e+01 3.5494824e+03 - -5.8771054e+01 -4.7897012e+01 3.5494929e+03 - -5.8793639e+01 -4.9521573e+01 3.5495035e+03 - -5.8836030e+01 -5.1004397e+01 3.5495141e+03 - -5.8897610e+01 -5.2353924e+01 3.5495246e+03 - -5.8977443e+01 -5.3578509e+01 3.5495350e+03 - -5.9074329e+01 -5.4686295e+01 3.5495453e+03 - -5.9186855e+01 -5.5685122e+01 3.5495554e+03 - -5.9313435e+01 -5.6582470e+01 3.5495651e+03 - -5.9452348e+01 -5.7385424e+01 3.5495746e+03 - -5.9601771e+01 -5.8100655e+01 3.5495837e+03 - -5.9759801e+01 -5.8734425e+01 3.5495924e+03 - -5.9924479e+01 -5.9292588e+01 3.5496006e+03 - -6.0093800e+01 -5.9780611e+01 3.5496084e+03 - -6.0265732e+01 -6.0203592e+01 3.5496157e+03 - -6.0438218e+01 -6.0566286e+01 3.5496224e+03 - -6.0609182e+01 -6.0873128e+01 3.5496286e+03 - -6.0776532e+01 -6.1128258e+01 3.5496342e+03 - -6.0938162e+01 -6.1335551e+01 3.5496391e+03 - -6.1091947e+01 -6.1498637e+01 3.5496435e+03 - -6.1235738e+01 -6.1620927e+01 3.5496472e+03 - -6.1367361e+01 -6.1705638e+01 3.5496502e+03 - -6.1484608e+01 -6.1755811e+01 3.5496526e+03 - -6.1585227e+01 -6.1774331e+01 3.5496543e+03 - -6.1666913e+01 -6.1763951e+01 3.5496553e+03 - -6.1727302e+01 -6.1727302e+01 3.5496557e+03 - -6.1763951e+01 -6.1666913e+01 3.5496553e+03 - -6.1774331e+01 -6.1585227e+01 3.5496543e+03 - -6.1755811e+01 -6.1484608e+01 3.5496526e+03 - -6.1705638e+01 -6.1367361e+01 3.5496502e+03 - -6.1620927e+01 -6.1235738e+01 3.5496472e+03 - -6.1498637e+01 -6.1091947e+01 3.5496435e+03 - -6.1335551e+01 -6.0938162e+01 3.5496391e+03 - -6.1128258e+01 -6.0776532e+01 3.5496342e+03 - -6.0873128e+01 -6.0609182e+01 3.5496286e+03 - -6.0566286e+01 -6.0438218e+01 3.5496224e+03 - -6.0203592e+01 -6.0265732e+01 3.5496157e+03 - -5.9780611e+01 -6.0093800e+01 3.5496084e+03 - -5.9292588e+01 -5.9924479e+01 3.5496006e+03 - -5.8734425e+01 -5.9759801e+01 3.5495924e+03 - -5.8100655e+01 -5.9601771e+01 3.5495837e+03 - -5.7385424e+01 -5.9452348e+01 3.5495746e+03 - -5.6582470e+01 -5.9313435e+01 3.5495651e+03 - -5.5685122e+01 -5.9186855e+01 3.5495554e+03 - -5.4686295e+01 -5.9074329e+01 3.5495453e+03 - -5.3578509e+01 -5.8977443e+01 3.5495350e+03 - -5.2353924e+01 -5.8897610e+01 3.5495246e+03 - -5.1004397e+01 -5.8836030e+01 3.5495141e+03 - -4.9521573e+01 -5.8793639e+01 3.5495035e+03 - -4.7897012e+01 -5.8771054e+01 3.5494929e+03 - -4.6122363e+01 -5.8768514e+01 3.5494824e+03 - -4.4189586e+01 -5.8785821e+01 3.5494721e+03 - -4.2091244e+01 -5.8822282e+01 3.5494620e+03 - -3.9820839e+01 -5.8876656e+01 3.5494522e+03 - -3.7373230e+01 -5.8947115e+01 3.5494428e+03 - -3.4745089e+01 -5.9031225e+01 3.5494339e+03 - -3.1935407e+01 -5.9125957e+01 3.5494255e+03 - -2.8946007e+01 -5.9227729e+01 3.5494177e+03 - -2.5782041e+01 -5.9332496e+01 3.5494106e+03 - -2.2452409e+01 -5.9435886e+01 3.5494043e+03 - -1.8970064e+01 -5.9533382e+01 3.5493988e+03 - -1.5352132e+01 -5.9620540e+01 3.5493943e+03 - -1.1619808e+01 -5.9693239e+01 3.5493907e+03 - -7.7979936e+00 -5.9747939e+01 3.5493881e+03 - -3.9146637e+00 -5.9781909e+01 3.5493865e+03 - 4.8134273e-09 -5.9793428e+01 3.5493860e+03 - 3.9146637e+00 -5.9781909e+01 3.5493865e+03 - 7.7979936e+00 -5.9747939e+01 3.5493881e+03 - 1.1619808e+01 -5.9693239e+01 3.5493907e+03 - 1.5352132e+01 -5.9620540e+01 3.5493943e+03 - 1.8970064e+01 -5.9533382e+01 3.5493988e+03 - 2.2452409e+01 -5.9435886e+01 3.5494043e+03 - 2.5782041e+01 -5.9332496e+01 3.5494106e+03 - 2.8946007e+01 -5.9227729e+01 3.5494177e+03 - 3.1935407e+01 -5.9125957e+01 3.5494255e+03 - 3.4745089e+01 -5.9031225e+01 3.5494339e+03 - 3.7373230e+01 -5.8947115e+01 3.5494428e+03 - 3.9820839e+01 -5.8876656e+01 3.5494522e+03 - 4.2091244e+01 -5.8822282e+01 3.5494620e+03 - 4.4189586e+01 -5.8785821e+01 3.5494721e+03 - 4.6122363e+01 -5.8768514e+01 3.5494824e+03 - 4.7897012e+01 -5.8771054e+01 3.5494929e+03 - 4.9521573e+01 -5.8793639e+01 3.5495035e+03 - 5.1004397e+01 -5.8836030e+01 3.5495141e+03 - 5.2353924e+01 -5.8897610e+01 3.5495246e+03 - 5.3578509e+01 -5.8977443e+01 3.5495350e+03 - 5.4686295e+01 -5.9074329e+01 3.5495453e+03 - 5.5685122e+01 -5.9186855e+01 3.5495554e+03 - 5.6582470e+01 -5.9313435e+01 3.5495651e+03 - 5.7385424e+01 -5.9452348e+01 3.5495746e+03 - 5.8100655e+01 -5.9601771e+01 3.5495837e+03 - 5.8734425e+01 -5.9759801e+01 3.5495924e+03 - 5.9292588e+01 -5.9924479e+01 3.5496006e+03 - 5.9780611e+01 -6.0093800e+01 3.5496084e+03 - 6.0203592e+01 -6.0265732e+01 3.5496157e+03 - 6.0566286e+01 -6.0438218e+01 3.5496224e+03 - 6.0873128e+01 -6.0609182e+01 3.5496286e+03 - 6.1128258e+01 -6.0776532e+01 3.5496342e+03 - 6.1335551e+01 -6.0938162e+01 3.5496391e+03 - 6.1498637e+01 -6.1091947e+01 3.5496435e+03 - 6.1620927e+01 -6.1235738e+01 3.5496472e+03 - 6.1705638e+01 -6.1367361e+01 3.5496502e+03 - 6.1755811e+01 -6.1484608e+01 3.5496526e+03 - 6.1774331e+01 -6.1585227e+01 3.5496543e+03 - 6.1763951e+01 -6.1666913e+01 3.5496553e+03 - 6.1727302e+01 -6.1727302e+01 3.5496557e+03 - 6.1666913e+01 -6.1763951e+01 3.5496553e+03 - 6.1585227e+01 -6.1774331e+01 3.5496543e+03 - 6.1484608e+01 -6.1755811e+01 3.5496526e+03 - 6.1367361e+01 -6.1705638e+01 3.5496502e+03 - 6.1235738e+01 -6.1620927e+01 3.5496472e+03 - 6.1091947e+01 -6.1498637e+01 3.5496435e+03 - 6.0938162e+01 -6.1335551e+01 3.5496391e+03 - 6.0776532e+01 -6.1128258e+01 3.5496342e+03 - 6.0609182e+01 -6.0873128e+01 3.5496286e+03 - 6.0438218e+01 -6.0566286e+01 3.5496224e+03 - 6.0265732e+01 -6.0203592e+01 3.5496157e+03 - 6.0093800e+01 -5.9780611e+01 3.5496084e+03 - 5.9924479e+01 -5.9292588e+01 3.5496006e+03 - 5.9759801e+01 -5.8734425e+01 3.5495924e+03 - 5.9601771e+01 -5.8100655e+01 3.5495837e+03 - 5.9452348e+01 -5.7385424e+01 3.5495746e+03 - 5.9313435e+01 -5.6582470e+01 3.5495651e+03 - 5.9186855e+01 -5.5685122e+01 3.5495554e+03 - 5.9074329e+01 -5.4686295e+01 3.5495453e+03 - 5.8977443e+01 -5.3578509e+01 3.5495350e+03 - 5.8897610e+01 -5.2353924e+01 3.5495246e+03 - 5.8836030e+01 -5.1004397e+01 3.5495141e+03 - 5.8793639e+01 -4.9521573e+01 3.5495035e+03 - 5.8771054e+01 -4.7897012e+01 3.5494929e+03 - 5.8768514e+01 -4.6122363e+01 3.5494824e+03 - 5.8785821e+01 -4.4189586e+01 3.5494721e+03 - 5.8822282e+01 -4.2091244e+01 3.5494620e+03 - 5.8876656e+01 -3.9820839e+01 3.5494522e+03 - 5.8947115e+01 -3.7373230e+01 3.5494428e+03 - 5.9031225e+01 -3.4745089e+01 3.5494339e+03 - 5.9125957e+01 -3.1935407e+01 3.5494255e+03 - 5.9227729e+01 -2.8946007e+01 3.5494177e+03 - 5.9332496e+01 -2.5782041e+01 3.5494106e+03 - 5.9435886e+01 -2.2452409e+01 3.5494043e+03 - 5.9533382e+01 -1.8970064e+01 3.5493988e+03 - 5.9620540e+01 -1.5352132e+01 3.5493943e+03 - 5.9693239e+01 -1.1619808e+01 3.5493907e+03 - 5.9747939e+01 -7.7979936e+00 3.5493881e+03 - 5.9781909e+01 -3.9146637e+00 3.5493865e+03 - 5.9793428e+01 0.0000000e+00 3.5493860e+03 - 5.9781909e+01 3.9146637e+00 3.5493865e+03 - 5.9747939e+01 7.7979936e+00 3.5493881e+03 - 5.9693239e+01 1.1619808e+01 3.5493907e+03 - 5.9620540e+01 1.5352132e+01 3.5493943e+03 - 5.9533382e+01 1.8970064e+01 3.5493988e+03 - 5.9435886e+01 2.2452409e+01 3.5494043e+03 - 5.9332496e+01 2.5782041e+01 3.5494106e+03 - 5.9227729e+01 2.8946007e+01 3.5494177e+03 - 5.9125957e+01 3.1935407e+01 3.5494255e+03 - 5.9031225e+01 3.4745089e+01 3.5494339e+03 - 5.8947115e+01 3.7373230e+01 3.5494428e+03 - 5.8876656e+01 3.9820839e+01 3.5494522e+03 - 5.8822282e+01 4.2091244e+01 3.5494620e+03 - 5.8785821e+01 4.4189586e+01 3.5494721e+03 - 5.8768514e+01 4.6122363e+01 3.5494824e+03 - 5.8771054e+01 4.7897012e+01 3.5494929e+03 - 5.8793639e+01 4.9521573e+01 3.5495035e+03 - 5.8836030e+01 5.1004397e+01 3.5495141e+03 - 5.8897610e+01 5.2353924e+01 3.5495246e+03 - 5.8977443e+01 5.3578509e+01 3.5495350e+03 - 5.9074329e+01 5.4686295e+01 3.5495453e+03 - 5.9186855e+01 5.5685122e+01 3.5495554e+03 - 5.9313435e+01 5.6582470e+01 3.5495651e+03 - 5.9452348e+01 5.7385424e+01 3.5495746e+03 - 5.9601771e+01 5.8100655e+01 3.5495837e+03 - 5.9759801e+01 5.8734425e+01 3.5495924e+03 - 5.9924479e+01 5.9292588e+01 3.5496006e+03 - 6.0093800e+01 5.9780611e+01 3.5496084e+03 - 6.0265732e+01 6.0203592e+01 3.5496157e+03 - 6.0438218e+01 6.0566286e+01 3.5496224e+03 - 6.0609182e+01 6.0873128e+01 3.5496286e+03 - 6.0776532e+01 6.1128258e+01 3.5496342e+03 - 6.0938162e+01 6.1335551e+01 3.5496391e+03 - 6.1091947e+01 6.1498637e+01 3.5496435e+03 - 6.1235738e+01 6.1620927e+01 3.5496472e+03 - 6.1367361e+01 6.1705638e+01 3.5496502e+03 - 6.1484608e+01 6.1755811e+01 3.5496526e+03 - 6.1585227e+01 6.1774331e+01 3.5496543e+03 - 6.1666913e+01 6.1763951e+01 3.5496553e+03 - 6.1727302e+01 6.1727302e+01 3.5496557e+03 - 6.1763951e+01 6.1666913e+01 3.5496553e+03 - 6.1774331e+01 6.1585227e+01 3.5496543e+03 - 6.1755811e+01 6.1484608e+01 3.5496526e+03 - 6.1705638e+01 6.1367361e+01 3.5496502e+03 - 6.1620927e+01 6.1235738e+01 3.5496472e+03 - 6.1498637e+01 6.1091947e+01 3.5496435e+03 - 6.1335551e+01 6.0938162e+01 3.5496391e+03 - 6.1128258e+01 6.0776532e+01 3.5496342e+03 - 6.0873128e+01 6.0609182e+01 3.5496286e+03 - 6.0566286e+01 6.0438218e+01 3.5496224e+03 - 6.0203592e+01 6.0265732e+01 3.5496157e+03 - 5.9780611e+01 6.0093800e+01 3.5496084e+03 - 5.9292588e+01 5.9924479e+01 3.5496006e+03 - 5.8734425e+01 5.9759801e+01 3.5495924e+03 - 5.8100655e+01 5.9601771e+01 3.5495837e+03 - 5.7385424e+01 5.9452348e+01 3.5495746e+03 - 5.6582470e+01 5.9313435e+01 3.5495651e+03 - 5.5685122e+01 5.9186855e+01 3.5495554e+03 - 5.4686295e+01 5.9074329e+01 3.5495453e+03 - 5.3578509e+01 5.8977443e+01 3.5495350e+03 - 5.2353924e+01 5.8897610e+01 3.5495246e+03 - 5.1004397e+01 5.8836030e+01 3.5495141e+03 - 4.9521573e+01 5.8793639e+01 3.5495035e+03 - 4.7897012e+01 5.8771054e+01 3.5494929e+03 - 4.6122363e+01 5.8768514e+01 3.5494824e+03 - 4.4189586e+01 5.8785821e+01 3.5494721e+03 - 4.2091244e+01 5.8822282e+01 3.5494620e+03 - 3.9820839e+01 5.8876656e+01 3.5494522e+03 - 3.7373230e+01 5.8947115e+01 3.5494428e+03 - 3.4745089e+01 5.9031225e+01 3.5494339e+03 - 3.1935407e+01 5.9125957e+01 3.5494255e+03 - 2.8946007e+01 5.9227729e+01 3.5494177e+03 - 2.5782041e+01 5.9332496e+01 3.5494106e+03 - 2.2452409e+01 5.9435886e+01 3.5494043e+03 - 1.8970064e+01 5.9533382e+01 3.5493988e+03 - 1.5352132e+01 5.9620540e+01 3.5493943e+03 - 1.1619808e+01 5.9693239e+01 3.5493907e+03 - 7.7979936e+00 5.9747939e+01 3.5493881e+03 - 3.9146637e+00 5.9781909e+01 3.5493865e+03 - -4.8134273e-09 5.9793428e+01 3.5493860e+03 - -3.9146637e+00 5.9781909e+01 3.5493865e+03 - -7.7979936e+00 5.9747939e+01 3.5493881e+03 - -1.1619808e+01 5.9693239e+01 3.5493907e+03 - -1.5352132e+01 5.9620540e+01 3.5493943e+03 - -1.8970064e+01 5.9533382e+01 3.5493988e+03 - -2.2452409e+01 5.9435886e+01 3.5494043e+03 - -2.5782041e+01 5.9332496e+01 3.5494106e+03 - -2.8946007e+01 5.9227729e+01 3.5494177e+03 - -3.1935407e+01 5.9125957e+01 3.5494255e+03 - -3.4745089e+01 5.9031225e+01 3.5494339e+03 - -3.7373230e+01 5.8947115e+01 3.5494428e+03 - -3.9820839e+01 5.8876656e+01 3.5494522e+03 - -4.2091244e+01 5.8822282e+01 3.5494620e+03 - -4.4189586e+01 5.8785821e+01 3.5494721e+03 - -4.6122363e+01 5.8768514e+01 3.5494824e+03 - -4.7897012e+01 5.8771054e+01 3.5494929e+03 - -4.9521573e+01 5.8793639e+01 3.5495035e+03 - -5.1004397e+01 5.8836030e+01 3.5495141e+03 - -5.2353924e+01 5.8897610e+01 3.5495246e+03 - -5.3578509e+01 5.8977443e+01 3.5495350e+03 - -5.4686295e+01 5.9074329e+01 3.5495453e+03 - -5.5685122e+01 5.9186855e+01 3.5495554e+03 - -5.6582470e+01 5.9313435e+01 3.5495651e+03 - -5.7385424e+01 5.9452348e+01 3.5495746e+03 - -5.8100655e+01 5.9601771e+01 3.5495837e+03 - -5.8734425e+01 5.9759801e+01 3.5495924e+03 - -5.9292588e+01 5.9924479e+01 3.5496006e+03 - -5.9780611e+01 6.0093800e+01 3.5496084e+03 - -6.0203592e+01 6.0265732e+01 3.5496157e+03 - -6.0566286e+01 6.0438218e+01 3.5496224e+03 - -6.0873128e+01 6.0609182e+01 3.5496286e+03 - -6.1128258e+01 6.0776532e+01 3.5496342e+03 - -6.1335551e+01 6.0938162e+01 3.5496391e+03 - -6.1498637e+01 6.1091947e+01 3.5496435e+03 - -6.1620927e+01 6.1235738e+01 3.5496472e+03 - -6.1705638e+01 6.1367361e+01 3.5496502e+03 - -6.1755811e+01 6.1484608e+01 3.5496526e+03 - -6.1774331e+01 6.1585227e+01 3.5496543e+03 - -6.1763951e+01 6.1666913e+01 3.5496553e+03 - -6.1727302e+01 6.1727302e+01 3.5496557e+03 - -6.1666913e+01 6.1763951e+01 3.5496553e+03 - -6.1585227e+01 6.1774331e+01 3.5496543e+03 - -6.1484608e+01 6.1755811e+01 3.5496526e+03 - -6.1367361e+01 6.1705638e+01 3.5496502e+03 - -6.1235738e+01 6.1620927e+01 3.5496472e+03 - -6.1091947e+01 6.1498637e+01 3.5496435e+03 - -6.0938162e+01 6.1335551e+01 3.5496391e+03 - -6.0776532e+01 6.1128258e+01 3.5496342e+03 - -6.0609182e+01 6.0873128e+01 3.5496286e+03 - -6.0438218e+01 6.0566286e+01 3.5496224e+03 - -6.0265732e+01 6.0203592e+01 3.5496157e+03 - -6.0093800e+01 5.9780611e+01 3.5496084e+03 - -5.9924479e+01 5.9292588e+01 3.5496006e+03 - -5.9759801e+01 5.8734425e+01 3.5495924e+03 - -5.9601771e+01 5.8100655e+01 3.5495837e+03 - -5.9452348e+01 5.7385424e+01 3.5495746e+03 - -5.9313435e+01 5.6582470e+01 3.5495651e+03 - -5.9186855e+01 5.5685122e+01 3.5495554e+03 - -5.9074329e+01 5.4686295e+01 3.5495453e+03 - -5.8977443e+01 5.3578509e+01 3.5495350e+03 - -5.8897610e+01 5.2353924e+01 3.5495246e+03 - -5.8836030e+01 5.1004397e+01 3.5495141e+03 - -5.8793639e+01 4.9521573e+01 3.5495035e+03 - -5.8771054e+01 4.7897012e+01 3.5494929e+03 - -5.8768514e+01 4.6122363e+01 3.5494824e+03 - -5.8785821e+01 4.4189586e+01 3.5494721e+03 - -5.8822282e+01 4.2091244e+01 3.5494620e+03 - -5.8876656e+01 3.9820839e+01 3.5494522e+03 - -5.8947115e+01 3.7373230e+01 3.5494428e+03 - -5.9031225e+01 3.4745089e+01 3.5494339e+03 - -5.9125957e+01 3.1935407e+01 3.5494255e+03 - -5.9227729e+01 2.8946007e+01 3.5494177e+03 - -5.9332496e+01 2.5782041e+01 3.5494106e+03 - -5.9435886e+01 2.2452409e+01 3.5494043e+03 - -5.9533382e+01 1.8970064e+01 3.5493988e+03 - -5.9620540e+01 1.5352132e+01 3.5493943e+03 - -5.9693239e+01 1.1619808e+01 3.5493907e+03 - -5.9747939e+01 7.7979936e+00 3.5493881e+03 - -5.9781909e+01 3.9146637e+00 3.5493865e+03 - -5.9793428e+01 0.0000000e+00 3.5493860e+03 - -1.1765312e+02 -2.4067136e-09 3.5510859e+03 - -1.1763020e+02 -7.7809261e+00 3.5510880e+03 - -1.1756263e+02 -1.5499107e+01 3.5510943e+03 - -1.1745384e+02 -2.3094115e+01 3.5511046e+03 - -1.1730930e+02 -3.0509952e+01 3.5511190e+03 - -1.1713610e+02 -3.7696800e+01 3.5511371e+03 - -1.1694249e+02 -4.4612281e+01 3.5511588e+03 - -1.1673736e+02 -5.1222186e+01 3.5511838e+03 - -1.1652975e+02 -5.7500677e+01 3.5512119e+03 - -1.1632842e+02 -6.3430040e+01 3.5512428e+03 - -1.1614144e+02 -6.9000077e+01 3.5512762e+03 - -1.1597601e+02 -7.4207249e+01 3.5513117e+03 - -1.1583817e+02 -7.9053685e+01 3.5513490e+03 - -1.1573281e+02 -8.3546143e+01 3.5513878e+03 - -1.1566360e+02 -8.7695007e+01 3.5514279e+03 - -1.1563303e+02 -9.1513355e+01 3.5514689e+03 - -1.1564250e+02 -9.5016143e+01 3.5515104e+03 - -1.1569244e+02 -9.8219514e+01 3.5515523e+03 - -1.1578239e+02 -1.0114022e+02 3.5515943e+03 - -1.1591115e+02 -1.0379520e+02 3.5516361e+03 - -1.1607687e+02 -1.0620119e+02 3.5516774e+03 - -1.1627719e+02 -1.0837451e+02 3.5517181e+03 - -1.1650931e+02 -1.1033085e+02 3.5517579e+03 - -1.1677010e+02 -1.1208521e+02 3.5517966e+03 - -1.1705615e+02 -1.1365177e+02 3.5518341e+03 - -1.1736386e+02 -1.1504388e+02 3.5518701e+03 - -1.1768945e+02 -1.1627406e+02 3.5519045e+03 - -1.1802903e+02 -1.1735405e+02 3.5519372e+03 - -1.1837865e+02 -1.1829478e+02 3.5519679e+03 - -1.1873425e+02 -1.1910646e+02 3.5519967e+03 - -1.1909177e+02 -1.1979858e+02 3.5520233e+03 - -1.1944707e+02 -1.2038004e+02 3.5520477e+03 - -1.1979601e+02 -1.2085911e+02 3.5520698e+03 - -1.2013439e+02 -1.2124355e+02 3.5520895e+03 - -1.2045800e+02 -1.2154061e+02 3.5521067e+03 - -1.2076255e+02 -1.2175712e+02 3.5521213e+03 - -1.2104371e+02 -1.2189952e+02 3.5521334e+03 - -1.2129709e+02 -1.2197388e+02 3.5521428e+03 - -1.2151820e+02 -1.2198597e+02 3.5521496e+03 - -1.2170244e+02 -1.2194129e+02 3.5521536e+03 - -1.2184509e+02 -1.2184509e+02 3.5521550e+03 - -1.2194129e+02 -1.2170244e+02 3.5521536e+03 - -1.2198597e+02 -1.2151820e+02 3.5521496e+03 - -1.2197388e+02 -1.2129709e+02 3.5521428e+03 - -1.2189952e+02 -1.2104371e+02 3.5521334e+03 - -1.2175712e+02 -1.2076255e+02 3.5521213e+03 - -1.2154061e+02 -1.2045800e+02 3.5521067e+03 - -1.2124355e+02 -1.2013439e+02 3.5520895e+03 - -1.2085911e+02 -1.1979601e+02 3.5520698e+03 - -1.2038004e+02 -1.1944707e+02 3.5520477e+03 - -1.1979858e+02 -1.1909177e+02 3.5520233e+03 - -1.1910646e+02 -1.1873425e+02 3.5519967e+03 - -1.1829478e+02 -1.1837865e+02 3.5519679e+03 - -1.1735405e+02 -1.1802903e+02 3.5519372e+03 - -1.1627406e+02 -1.1768945e+02 3.5519045e+03 - -1.1504388e+02 -1.1736386e+02 3.5518701e+03 - -1.1365177e+02 -1.1705615e+02 3.5518341e+03 - -1.1208521e+02 -1.1677010e+02 3.5517966e+03 - -1.1033085e+02 -1.1650931e+02 3.5517579e+03 - -1.0837451e+02 -1.1627719e+02 3.5517181e+03 - -1.0620119e+02 -1.1607687e+02 3.5516774e+03 - -1.0379520e+02 -1.1591115e+02 3.5516361e+03 - -1.0114022e+02 -1.1578239e+02 3.5515943e+03 - -9.8219514e+01 -1.1569244e+02 3.5515523e+03 - -9.5016143e+01 -1.1564250e+02 3.5515104e+03 - -9.1513355e+01 -1.1563303e+02 3.5514689e+03 - -8.7695007e+01 -1.1566360e+02 3.5514279e+03 - -8.3546143e+01 -1.1573281e+02 3.5513878e+03 - -7.9053685e+01 -1.1583817e+02 3.5513490e+03 - -7.4207249e+01 -1.1597601e+02 3.5513117e+03 - -6.9000077e+01 -1.1614144e+02 3.5512762e+03 - -6.3430040e+01 -1.1632842e+02 3.5512428e+03 - -5.7500677e+01 -1.1652975e+02 3.5512119e+03 - -5.1222186e+01 -1.1673736e+02 3.5511838e+03 - -4.4612281e+01 -1.1694249e+02 3.5511588e+03 - -3.7696800e+01 -1.1713610e+02 3.5511371e+03 - -3.0509952e+01 -1.1730930e+02 3.5511190e+03 - -2.3094115e+01 -1.1745384e+02 3.5511046e+03 - -1.5499107e+01 -1.1756263e+02 3.5510943e+03 - -7.7809261e+00 -1.1763020e+02 3.5510880e+03 - -2.4067136e-09 -1.1765312e+02 3.5510859e+03 - 7.7809261e+00 -1.1763020e+02 3.5510880e+03 - 1.5499107e+01 -1.1756263e+02 3.5510943e+03 - 2.3094115e+01 -1.1745384e+02 3.5511046e+03 - 3.0509952e+01 -1.1730930e+02 3.5511190e+03 - 3.7696800e+01 -1.1713610e+02 3.5511371e+03 - 4.4612281e+01 -1.1694249e+02 3.5511588e+03 - 5.1222186e+01 -1.1673736e+02 3.5511838e+03 - 5.7500677e+01 -1.1652975e+02 3.5512119e+03 - 6.3430040e+01 -1.1632842e+02 3.5512428e+03 - 6.9000077e+01 -1.1614144e+02 3.5512762e+03 - 7.4207249e+01 -1.1597601e+02 3.5513117e+03 - 7.9053685e+01 -1.1583817e+02 3.5513490e+03 - 8.3546143e+01 -1.1573281e+02 3.5513878e+03 - 8.7695007e+01 -1.1566360e+02 3.5514279e+03 - 9.1513355e+01 -1.1563303e+02 3.5514689e+03 - 9.5016143e+01 -1.1564250e+02 3.5515104e+03 - 9.8219514e+01 -1.1569244e+02 3.5515523e+03 - 1.0114022e+02 -1.1578239e+02 3.5515943e+03 - 1.0379520e+02 -1.1591115e+02 3.5516361e+03 - 1.0620119e+02 -1.1607687e+02 3.5516774e+03 - 1.0837451e+02 -1.1627719e+02 3.5517181e+03 - 1.1033085e+02 -1.1650931e+02 3.5517579e+03 - 1.1208521e+02 -1.1677010e+02 3.5517966e+03 - 1.1365177e+02 -1.1705615e+02 3.5518341e+03 - 1.1504388e+02 -1.1736386e+02 3.5518701e+03 - 1.1627406e+02 -1.1768945e+02 3.5519045e+03 - 1.1735405e+02 -1.1802903e+02 3.5519372e+03 - 1.1829478e+02 -1.1837865e+02 3.5519679e+03 - 1.1910646e+02 -1.1873425e+02 3.5519967e+03 - 1.1979858e+02 -1.1909177e+02 3.5520233e+03 - 1.2038004e+02 -1.1944707e+02 3.5520477e+03 - 1.2085911e+02 -1.1979601e+02 3.5520698e+03 - 1.2124355e+02 -1.2013439e+02 3.5520895e+03 - 1.2154061e+02 -1.2045800e+02 3.5521067e+03 - 1.2175712e+02 -1.2076255e+02 3.5521213e+03 - 1.2189952e+02 -1.2104371e+02 3.5521334e+03 - 1.2197388e+02 -1.2129709e+02 3.5521428e+03 - 1.2198597e+02 -1.2151820e+02 3.5521496e+03 - 1.2194129e+02 -1.2170244e+02 3.5521536e+03 - 1.2184509e+02 -1.2184509e+02 3.5521550e+03 - 1.2170244e+02 -1.2194129e+02 3.5521536e+03 - 1.2151820e+02 -1.2198597e+02 3.5521496e+03 - 1.2129709e+02 -1.2197388e+02 3.5521428e+03 - 1.2104371e+02 -1.2189952e+02 3.5521334e+03 - 1.2076255e+02 -1.2175712e+02 3.5521213e+03 - 1.2045800e+02 -1.2154061e+02 3.5521067e+03 - 1.2013439e+02 -1.2124355e+02 3.5520895e+03 - 1.1979601e+02 -1.2085911e+02 3.5520698e+03 - 1.1944707e+02 -1.2038004e+02 3.5520477e+03 - 1.1909177e+02 -1.1979858e+02 3.5520233e+03 - 1.1873425e+02 -1.1910646e+02 3.5519967e+03 - 1.1837865e+02 -1.1829478e+02 3.5519679e+03 - 1.1802903e+02 -1.1735405e+02 3.5519372e+03 - 1.1768945e+02 -1.1627406e+02 3.5519045e+03 - 1.1736386e+02 -1.1504388e+02 3.5518701e+03 - 1.1705615e+02 -1.1365177e+02 3.5518341e+03 - 1.1677010e+02 -1.1208521e+02 3.5517966e+03 - 1.1650931e+02 -1.1033085e+02 3.5517579e+03 - 1.1627719e+02 -1.0837451e+02 3.5517181e+03 - 1.1607687e+02 -1.0620119e+02 3.5516774e+03 - 1.1591115e+02 -1.0379520e+02 3.5516361e+03 - 1.1578239e+02 -1.0114022e+02 3.5515943e+03 - 1.1569244e+02 -9.8219514e+01 3.5515523e+03 - 1.1564250e+02 -9.5016143e+01 3.5515104e+03 - 1.1563303e+02 -9.1513355e+01 3.5514689e+03 - 1.1566360e+02 -8.7695007e+01 3.5514279e+03 - 1.1573281e+02 -8.3546143e+01 3.5513878e+03 - 1.1583817e+02 -7.9053685e+01 3.5513490e+03 - 1.1597601e+02 -7.4207249e+01 3.5513117e+03 - 1.1614144e+02 -6.9000077e+01 3.5512762e+03 - 1.1632842e+02 -6.3430040e+01 3.5512428e+03 - 1.1652975e+02 -5.7500677e+01 3.5512119e+03 - 1.1673736e+02 -5.1222186e+01 3.5511838e+03 - 1.1694249e+02 -4.4612281e+01 3.5511588e+03 - 1.1713610e+02 -3.7696800e+01 3.5511371e+03 - 1.1730930e+02 -3.0509952e+01 3.5511190e+03 - 1.1745384e+02 -2.3094115e+01 3.5511046e+03 - 1.1756263e+02 -1.5499107e+01 3.5510943e+03 - 1.1763020e+02 -7.7809261e+00 3.5510880e+03 - 1.1765312e+02 2.4067136e-09 3.5510859e+03 - 1.1763020e+02 7.7809261e+00 3.5510880e+03 - 1.1756263e+02 1.5499107e+01 3.5510943e+03 - 1.1745384e+02 2.3094115e+01 3.5511046e+03 - 1.1730930e+02 3.0509952e+01 3.5511190e+03 - 1.1713610e+02 3.7696800e+01 3.5511371e+03 - 1.1694249e+02 4.4612281e+01 3.5511588e+03 - 1.1673736e+02 5.1222186e+01 3.5511838e+03 - 1.1652975e+02 5.7500677e+01 3.5512119e+03 - 1.1632842e+02 6.3430040e+01 3.5512428e+03 - 1.1614144e+02 6.9000077e+01 3.5512762e+03 - 1.1597601e+02 7.4207249e+01 3.5513117e+03 - 1.1583817e+02 7.9053685e+01 3.5513490e+03 - 1.1573281e+02 8.3546143e+01 3.5513878e+03 - 1.1566360e+02 8.7695007e+01 3.5514279e+03 - 1.1563303e+02 9.1513355e+01 3.5514689e+03 - 1.1564250e+02 9.5016143e+01 3.5515104e+03 - 1.1569244e+02 9.8219514e+01 3.5515523e+03 - 1.1578239e+02 1.0114022e+02 3.5515943e+03 - 1.1591115e+02 1.0379520e+02 3.5516361e+03 - 1.1607687e+02 1.0620119e+02 3.5516774e+03 - 1.1627719e+02 1.0837451e+02 3.5517181e+03 - 1.1650931e+02 1.1033085e+02 3.5517579e+03 - 1.1677010e+02 1.1208521e+02 3.5517966e+03 - 1.1705615e+02 1.1365177e+02 3.5518341e+03 - 1.1736386e+02 1.1504388e+02 3.5518701e+03 - 1.1768945e+02 1.1627406e+02 3.5519045e+03 - 1.1802903e+02 1.1735405e+02 3.5519372e+03 - 1.1837865e+02 1.1829478e+02 3.5519679e+03 - 1.1873425e+02 1.1910646e+02 3.5519967e+03 - 1.1909177e+02 1.1979858e+02 3.5520233e+03 - 1.1944707e+02 1.2038004e+02 3.5520477e+03 - 1.1979601e+02 1.2085911e+02 3.5520698e+03 - 1.2013439e+02 1.2124355e+02 3.5520895e+03 - 1.2045800e+02 1.2154061e+02 3.5521067e+03 - 1.2076255e+02 1.2175712e+02 3.5521213e+03 - 1.2104371e+02 1.2189952e+02 3.5521334e+03 - 1.2129709e+02 1.2197388e+02 3.5521428e+03 - 1.2151820e+02 1.2198597e+02 3.5521496e+03 - 1.2170244e+02 1.2194129e+02 3.5521536e+03 - 1.2184509e+02 1.2184509e+02 3.5521550e+03 - 1.2194129e+02 1.2170244e+02 3.5521536e+03 - 1.2198597e+02 1.2151820e+02 3.5521496e+03 - 1.2197388e+02 1.2129709e+02 3.5521428e+03 - 1.2189952e+02 1.2104371e+02 3.5521334e+03 - 1.2175712e+02 1.2076255e+02 3.5521213e+03 - 1.2154061e+02 1.2045800e+02 3.5521067e+03 - 1.2124355e+02 1.2013439e+02 3.5520895e+03 - 1.2085911e+02 1.1979601e+02 3.5520698e+03 - 1.2038004e+02 1.1944707e+02 3.5520477e+03 - 1.1979858e+02 1.1909177e+02 3.5520233e+03 - 1.1910646e+02 1.1873425e+02 3.5519967e+03 - 1.1829478e+02 1.1837865e+02 3.5519679e+03 - 1.1735405e+02 1.1802903e+02 3.5519372e+03 - 1.1627406e+02 1.1768945e+02 3.5519045e+03 - 1.1504388e+02 1.1736386e+02 3.5518701e+03 - 1.1365177e+02 1.1705615e+02 3.5518341e+03 - 1.1208521e+02 1.1677010e+02 3.5517966e+03 - 1.1033085e+02 1.1650931e+02 3.5517579e+03 - 1.0837451e+02 1.1627719e+02 3.5517181e+03 - 1.0620119e+02 1.1607687e+02 3.5516774e+03 - 1.0379520e+02 1.1591115e+02 3.5516361e+03 - 1.0114022e+02 1.1578239e+02 3.5515943e+03 - 9.8219514e+01 1.1569244e+02 3.5515523e+03 - 9.5016143e+01 1.1564250e+02 3.5515104e+03 - 9.1513355e+01 1.1563303e+02 3.5514689e+03 - 8.7695007e+01 1.1566360e+02 3.5514279e+03 - 8.3546143e+01 1.1573281e+02 3.5513878e+03 - 7.9053685e+01 1.1583817e+02 3.5513490e+03 - 7.4207249e+01 1.1597601e+02 3.5513117e+03 - 6.9000077e+01 1.1614144e+02 3.5512762e+03 - 6.3430040e+01 1.1632842e+02 3.5512428e+03 - 5.7500677e+01 1.1652975e+02 3.5512119e+03 - 5.1222186e+01 1.1673736e+02 3.5511838e+03 - 4.4612281e+01 1.1694249e+02 3.5511588e+03 - 3.7696800e+01 1.1713610e+02 3.5511371e+03 - 3.0509952e+01 1.1730930e+02 3.5511190e+03 - 2.3094115e+01 1.1745384e+02 3.5511046e+03 - 1.5499107e+01 1.1756263e+02 3.5510943e+03 - 7.7809261e+00 1.1763020e+02 3.5510880e+03 - 2.4067136e-09 1.1765312e+02 3.5510859e+03 - -7.7809261e+00 1.1763020e+02 3.5510880e+03 - -1.5499107e+01 1.1756263e+02 3.5510943e+03 - -2.3094115e+01 1.1745384e+02 3.5511046e+03 - -3.0509952e+01 1.1730930e+02 3.5511190e+03 - -3.7696800e+01 1.1713610e+02 3.5511371e+03 - -4.4612281e+01 1.1694249e+02 3.5511588e+03 - -5.1222186e+01 1.1673736e+02 3.5511838e+03 - -5.7500677e+01 1.1652975e+02 3.5512119e+03 - -6.3430040e+01 1.1632842e+02 3.5512428e+03 - -6.9000077e+01 1.1614144e+02 3.5512762e+03 - -7.4207249e+01 1.1597601e+02 3.5513117e+03 - -7.9053685e+01 1.1583817e+02 3.5513490e+03 - -8.3546143e+01 1.1573281e+02 3.5513878e+03 - -8.7695007e+01 1.1566360e+02 3.5514279e+03 - -9.1513355e+01 1.1563303e+02 3.5514689e+03 - -9.5016143e+01 1.1564250e+02 3.5515104e+03 - -9.8219514e+01 1.1569244e+02 3.5515523e+03 - -1.0114022e+02 1.1578239e+02 3.5515943e+03 - -1.0379520e+02 1.1591115e+02 3.5516361e+03 - -1.0620119e+02 1.1607687e+02 3.5516774e+03 - -1.0837451e+02 1.1627719e+02 3.5517181e+03 - -1.1033085e+02 1.1650931e+02 3.5517579e+03 - -1.1208521e+02 1.1677010e+02 3.5517966e+03 - -1.1365177e+02 1.1705615e+02 3.5518341e+03 - -1.1504388e+02 1.1736386e+02 3.5518701e+03 - -1.1627406e+02 1.1768945e+02 3.5519045e+03 - -1.1735405e+02 1.1802903e+02 3.5519372e+03 - -1.1829478e+02 1.1837865e+02 3.5519679e+03 - -1.1910646e+02 1.1873425e+02 3.5519967e+03 - -1.1979858e+02 1.1909177e+02 3.5520233e+03 - -1.2038004e+02 1.1944707e+02 3.5520477e+03 - -1.2085911e+02 1.1979601e+02 3.5520698e+03 - -1.2124355e+02 1.2013439e+02 3.5520895e+03 - -1.2154061e+02 1.2045800e+02 3.5521067e+03 - -1.2175712e+02 1.2076255e+02 3.5521213e+03 - -1.2189952e+02 1.2104371e+02 3.5521334e+03 - -1.2197388e+02 1.2129709e+02 3.5521428e+03 - -1.2198597e+02 1.2151820e+02 3.5521496e+03 - -1.2194129e+02 1.2170244e+02 3.5521536e+03 - -1.2184509e+02 1.2184509e+02 3.5521550e+03 - -1.2170244e+02 1.2194129e+02 3.5521536e+03 - -1.2151820e+02 1.2198597e+02 3.5521496e+03 - -1.2129709e+02 1.2197388e+02 3.5521428e+03 - -1.2104371e+02 1.2189952e+02 3.5521334e+03 - -1.2076255e+02 1.2175712e+02 3.5521213e+03 - -1.2045800e+02 1.2154061e+02 3.5521067e+03 - -1.2013439e+02 1.2124355e+02 3.5520895e+03 - -1.1979601e+02 1.2085911e+02 3.5520698e+03 - -1.1944707e+02 1.2038004e+02 3.5520477e+03 - -1.1909177e+02 1.1979858e+02 3.5520233e+03 - -1.1873425e+02 1.1910646e+02 3.5519967e+03 - -1.1837865e+02 1.1829478e+02 3.5519679e+03 - -1.1802903e+02 1.1735405e+02 3.5519372e+03 - -1.1768945e+02 1.1627406e+02 3.5519045e+03 - -1.1736386e+02 1.1504388e+02 3.5518701e+03 - -1.1705615e+02 1.1365177e+02 3.5518341e+03 - -1.1677010e+02 1.1208521e+02 3.5517966e+03 - -1.1650931e+02 1.1033085e+02 3.5517579e+03 - -1.1627719e+02 1.0837451e+02 3.5517181e+03 - -1.1607687e+02 1.0620119e+02 3.5516774e+03 - -1.1591115e+02 1.0379520e+02 3.5516361e+03 - -1.1578239e+02 1.0114022e+02 3.5515943e+03 - -1.1569244e+02 9.8219514e+01 3.5515523e+03 - -1.1564250e+02 9.5016143e+01 3.5515104e+03 - -1.1563303e+02 9.1513355e+01 3.5514689e+03 - -1.1566360e+02 8.7695007e+01 3.5514279e+03 - -1.1573281e+02 8.3546143e+01 3.5513878e+03 - -1.1583817e+02 7.9053685e+01 3.5513490e+03 - -1.1597601e+02 7.4207249e+01 3.5513117e+03 - -1.1614144e+02 6.9000077e+01 3.5512762e+03 - -1.1632842e+02 6.3430040e+01 3.5512428e+03 - -1.1652975e+02 5.7500677e+01 3.5512119e+03 - -1.1673736e+02 5.1222186e+01 3.5511838e+03 - -1.1694249e+02 4.4612281e+01 3.5511588e+03 - -1.1713610e+02 3.7696800e+01 3.5511371e+03 - -1.1730930e+02 3.0509952e+01 3.5511190e+03 - -1.1745384e+02 2.3094115e+01 3.5511046e+03 - -1.1756263e+02 1.5499107e+01 3.5510943e+03 - -1.1763020e+02 7.7809261e+00 3.5510880e+03 - -1.1765312e+02 -2.4067136e-09 3.5510859e+03 - -1.7174583e+02 0.0000000e+00 3.5537358e+03 - -1.7171176e+02 -1.1551968e+01 3.5537405e+03 - -1.7161134e+02 -2.3009669e+01 3.5537544e+03 - -1.7144973e+02 -3.4282335e+01 3.5537775e+03 - -1.7123514e+02 -4.5285890e+01 3.5538094e+03 - -1.7097823e+02 -5.5945584e+01 3.5538498e+03 - -1.7069137e+02 -6.6197895e+01 3.5538981e+03 - -1.7038793e+02 -7.5991618e+01 3.5539538e+03 - -1.7008147e+02 -8.5288159e+01 3.5540163e+03 - -1.6978512e+02 -9.4061158e+01 3.5540850e+03 - -1.6951105e+02 -1.0229555e+02 3.5541591e+03 - -1.6927001e+02 -1.0998628e+02 3.5542380e+03 - -1.6907112e+02 -1.1713680e+02 3.5543209e+03 - -1.6892171e+02 -1.2375747e+02 3.5544072e+03 - -1.6882731e+02 -1.2986411e+02 3.5544961e+03 - -1.6879170e+02 -1.3547653e+02 3.5545870e+03 - -1.6881703e+02 -1.4061733e+02 3.5546792e+03 - -1.6890398e+02 -1.4531089e+02 3.5547721e+03 - -1.6905191e+02 -1.4958247e+02 3.5548652e+03 - -1.6925909e+02 -1.5345756e+02 3.5549578e+03 - -1.6952284e+02 -1.5696137e+02 3.5550493e+03 - -1.6983966e+02 -1.6011843e+02 3.5551394e+03 - -1.7020547e+02 -1.6295236e+02 3.5552276e+03 - -1.7061563e+02 -1.6548568e+02 3.5553133e+03 - -1.7106514e+02 -1.6773968e+02 3.5553962e+03 - -1.7154864e+02 -1.6973444e+02 3.5554759e+03 - -1.7206059e+02 -1.7148878e+02 3.5555520e+03 - -1.7259524e+02 -1.7302028e+02 3.5556242e+03 - -1.7314671e+02 -1.7434537e+02 3.5556923e+03 - -1.7370903e+02 -1.7547938e+02 3.5557559e+03 - -1.7427616e+02 -1.7643657e+02 3.5558147e+03 - -1.7484198e+02 -1.7723026e+02 3.5558687e+03 - -1.7540033e+02 -1.7787290e+02 3.5559175e+03 - -1.7594499e+02 -1.7837611e+02 3.5559609e+03 - -1.7646967e+02 -1.7875078e+02 3.5559989e+03 - -1.7696803e+02 -1.7900715e+02 3.5560313e+03 - -1.7743361e+02 -1.7915486e+02 3.5560579e+03 - -1.7785986e+02 -1.7920304e+02 3.5560787e+03 - -1.7824007e+02 -1.7916032e+02 3.5560936e+03 - -1.7856740e+02 -1.7903495e+02 3.5561026e+03 - -1.7883479e+02 -1.7883479e+02 3.5561056e+03 - -1.7903495e+02 -1.7856740e+02 3.5561026e+03 - -1.7916032e+02 -1.7824007e+02 3.5560936e+03 - -1.7920304e+02 -1.7785986e+02 3.5560787e+03 - -1.7915486e+02 -1.7743361e+02 3.5560579e+03 - -1.7900715e+02 -1.7696803e+02 3.5560313e+03 - -1.7875078e+02 -1.7646967e+02 3.5559989e+03 - -1.7837611e+02 -1.7594499e+02 3.5559609e+03 - -1.7787290e+02 -1.7540033e+02 3.5559175e+03 - -1.7723026e+02 -1.7484198e+02 3.5558687e+03 - -1.7643657e+02 -1.7427616e+02 3.5558147e+03 - -1.7547938e+02 -1.7370903e+02 3.5557559e+03 - -1.7434537e+02 -1.7314671e+02 3.5556923e+03 - -1.7302028e+02 -1.7259524e+02 3.5556242e+03 - -1.7148878e+02 -1.7206059e+02 3.5555520e+03 - -1.6973444e+02 -1.7154864e+02 3.5554759e+03 - -1.6773968e+02 -1.7106514e+02 3.5553962e+03 - -1.6548568e+02 -1.7061563e+02 3.5553133e+03 - -1.6295236e+02 -1.7020547e+02 3.5552276e+03 - -1.6011843e+02 -1.6983966e+02 3.5551394e+03 - -1.5696137e+02 -1.6952284e+02 3.5550493e+03 - -1.5345756e+02 -1.6925909e+02 3.5549578e+03 - -1.4958247e+02 -1.6905191e+02 3.5548652e+03 - -1.4531089e+02 -1.6890398e+02 3.5547721e+03 - -1.4061733e+02 -1.6881703e+02 3.5546792e+03 - -1.3547653e+02 -1.6879170e+02 3.5545870e+03 - -1.2986411e+02 -1.6882731e+02 3.5544961e+03 - -1.2375747e+02 -1.6892171e+02 3.5544072e+03 - -1.1713680e+02 -1.6907112e+02 3.5543209e+03 - -1.0998628e+02 -1.6927001e+02 3.5542380e+03 - -1.0229555e+02 -1.6951105e+02 3.5541591e+03 - -9.4061158e+01 -1.6978512e+02 3.5540850e+03 - -8.5288159e+01 -1.7008147e+02 3.5540163e+03 - -7.5991618e+01 -1.7038793e+02 3.5539538e+03 - -6.6197895e+01 -1.7069137e+02 3.5538981e+03 - -5.5945584e+01 -1.7097823e+02 3.5538498e+03 - -4.5285890e+01 -1.7123514e+02 3.5538094e+03 - -3.4282335e+01 -1.7144973e+02 3.5537775e+03 - -2.3009669e+01 -1.7161134e+02 3.5537544e+03 - -1.1551968e+01 -1.7171176e+02 3.5537405e+03 - 0.0000000e+00 -1.7174583e+02 3.5537358e+03 - 1.1551968e+01 -1.7171176e+02 3.5537405e+03 - 2.3009669e+01 -1.7161134e+02 3.5537544e+03 - 3.4282335e+01 -1.7144973e+02 3.5537775e+03 - 4.5285890e+01 -1.7123514e+02 3.5538094e+03 - 5.5945584e+01 -1.7097823e+02 3.5538498e+03 - 6.6197895e+01 -1.7069137e+02 3.5538981e+03 - 7.5991618e+01 -1.7038793e+02 3.5539538e+03 - 8.5288159e+01 -1.7008147e+02 3.5540163e+03 - 9.4061158e+01 -1.6978512e+02 3.5540850e+03 - 1.0229555e+02 -1.6951105e+02 3.5541591e+03 - 1.0998628e+02 -1.6927001e+02 3.5542380e+03 - 1.1713680e+02 -1.6907112e+02 3.5543209e+03 - 1.2375747e+02 -1.6892171e+02 3.5544072e+03 - 1.2986411e+02 -1.6882731e+02 3.5544961e+03 - 1.3547653e+02 -1.6879170e+02 3.5545870e+03 - 1.4061733e+02 -1.6881703e+02 3.5546792e+03 - 1.4531089e+02 -1.6890398e+02 3.5547721e+03 - 1.4958247e+02 -1.6905191e+02 3.5548652e+03 - 1.5345756e+02 -1.6925909e+02 3.5549578e+03 - 1.5696137e+02 -1.6952284e+02 3.5550493e+03 - 1.6011843e+02 -1.6983966e+02 3.5551394e+03 - 1.6295236e+02 -1.7020547e+02 3.5552276e+03 - 1.6548568e+02 -1.7061563e+02 3.5553133e+03 - 1.6773968e+02 -1.7106514e+02 3.5553962e+03 - 1.6973444e+02 -1.7154864e+02 3.5554759e+03 - 1.7148878e+02 -1.7206059e+02 3.5555520e+03 - 1.7302028e+02 -1.7259524e+02 3.5556242e+03 - 1.7434537e+02 -1.7314671e+02 3.5556923e+03 - 1.7547938e+02 -1.7370903e+02 3.5557559e+03 - 1.7643657e+02 -1.7427616e+02 3.5558147e+03 - 1.7723026e+02 -1.7484198e+02 3.5558687e+03 - 1.7787290e+02 -1.7540033e+02 3.5559175e+03 - 1.7837611e+02 -1.7594499e+02 3.5559609e+03 - 1.7875078e+02 -1.7646967e+02 3.5559989e+03 - 1.7900715e+02 -1.7696803e+02 3.5560313e+03 - 1.7915486e+02 -1.7743361e+02 3.5560579e+03 - 1.7920304e+02 -1.7785986e+02 3.5560787e+03 - 1.7916032e+02 -1.7824007e+02 3.5560936e+03 - 1.7903495e+02 -1.7856740e+02 3.5561026e+03 - 1.7883479e+02 -1.7883479e+02 3.5561056e+03 - 1.7856740e+02 -1.7903495e+02 3.5561026e+03 - 1.7824007e+02 -1.7916032e+02 3.5560936e+03 - 1.7785986e+02 -1.7920304e+02 3.5560787e+03 - 1.7743361e+02 -1.7915486e+02 3.5560579e+03 - 1.7696803e+02 -1.7900715e+02 3.5560313e+03 - 1.7646967e+02 -1.7875078e+02 3.5559989e+03 - 1.7594499e+02 -1.7837611e+02 3.5559609e+03 - 1.7540033e+02 -1.7787290e+02 3.5559175e+03 - 1.7484198e+02 -1.7723026e+02 3.5558687e+03 - 1.7427616e+02 -1.7643657e+02 3.5558147e+03 - 1.7370903e+02 -1.7547938e+02 3.5557559e+03 - 1.7314671e+02 -1.7434537e+02 3.5556923e+03 - 1.7259524e+02 -1.7302028e+02 3.5556242e+03 - 1.7206059e+02 -1.7148878e+02 3.5555520e+03 - 1.7154864e+02 -1.6973444e+02 3.5554759e+03 - 1.7106514e+02 -1.6773968e+02 3.5553962e+03 - 1.7061563e+02 -1.6548568e+02 3.5553133e+03 - 1.7020547e+02 -1.6295236e+02 3.5552276e+03 - 1.6983966e+02 -1.6011843e+02 3.5551394e+03 - 1.6952284e+02 -1.5696137e+02 3.5550493e+03 - 1.6925909e+02 -1.5345756e+02 3.5549578e+03 - 1.6905191e+02 -1.4958247e+02 3.5548652e+03 - 1.6890398e+02 -1.4531089e+02 3.5547721e+03 - 1.6881703e+02 -1.4061733e+02 3.5546792e+03 - 1.6879170e+02 -1.3547653e+02 3.5545870e+03 - 1.6882731e+02 -1.2986411e+02 3.5544961e+03 - 1.6892171e+02 -1.2375747e+02 3.5544072e+03 - 1.6907112e+02 -1.1713680e+02 3.5543209e+03 - 1.6927001e+02 -1.0998628e+02 3.5542380e+03 - 1.6951105e+02 -1.0229555e+02 3.5541591e+03 - 1.6978512e+02 -9.4061158e+01 3.5540850e+03 - 1.7008147e+02 -8.5288159e+01 3.5540163e+03 - 1.7038793e+02 -7.5991618e+01 3.5539538e+03 - 1.7069137e+02 -6.6197895e+01 3.5538981e+03 - 1.7097823e+02 -5.5945584e+01 3.5538498e+03 - 1.7123514e+02 -4.5285890e+01 3.5538094e+03 - 1.7144973e+02 -3.4282335e+01 3.5537775e+03 - 1.7161134e+02 -2.3009669e+01 3.5537544e+03 - 1.7171176e+02 -1.1551968e+01 3.5537405e+03 - 1.7174583e+02 0.0000000e+00 3.5537358e+03 - 1.7171176e+02 1.1551968e+01 3.5537405e+03 - 1.7161134e+02 2.3009669e+01 3.5537544e+03 - 1.7144973e+02 3.4282335e+01 3.5537775e+03 - 1.7123514e+02 4.5285890e+01 3.5538094e+03 - 1.7097823e+02 5.5945584e+01 3.5538498e+03 - 1.7069137e+02 6.6197895e+01 3.5538981e+03 - 1.7038793e+02 7.5991618e+01 3.5539538e+03 - 1.7008147e+02 8.5288159e+01 3.5540163e+03 - 1.6978512e+02 9.4061158e+01 3.5540850e+03 - 1.6951105e+02 1.0229555e+02 3.5541591e+03 - 1.6927001e+02 1.0998628e+02 3.5542380e+03 - 1.6907112e+02 1.1713680e+02 3.5543209e+03 - 1.6892171e+02 1.2375747e+02 3.5544072e+03 - 1.6882731e+02 1.2986411e+02 3.5544961e+03 - 1.6879170e+02 1.3547653e+02 3.5545870e+03 - 1.6881703e+02 1.4061733e+02 3.5546792e+03 - 1.6890398e+02 1.4531089e+02 3.5547721e+03 - 1.6905191e+02 1.4958247e+02 3.5548652e+03 - 1.6925909e+02 1.5345756e+02 3.5549578e+03 - 1.6952284e+02 1.5696137e+02 3.5550493e+03 - 1.6983966e+02 1.6011843e+02 3.5551394e+03 - 1.7020547e+02 1.6295236e+02 3.5552276e+03 - 1.7061563e+02 1.6548568e+02 3.5553133e+03 - 1.7106514e+02 1.6773968e+02 3.5553962e+03 - 1.7154864e+02 1.6973444e+02 3.5554759e+03 - 1.7206059e+02 1.7148878e+02 3.5555520e+03 - 1.7259524e+02 1.7302028e+02 3.5556242e+03 - 1.7314671e+02 1.7434537e+02 3.5556923e+03 - 1.7370903e+02 1.7547938e+02 3.5557559e+03 - 1.7427616e+02 1.7643657e+02 3.5558147e+03 - 1.7484198e+02 1.7723026e+02 3.5558687e+03 - 1.7540033e+02 1.7787290e+02 3.5559175e+03 - 1.7594499e+02 1.7837611e+02 3.5559609e+03 - 1.7646967e+02 1.7875078e+02 3.5559989e+03 - 1.7696803e+02 1.7900715e+02 3.5560313e+03 - 1.7743361e+02 1.7915486e+02 3.5560579e+03 - 1.7785986e+02 1.7920304e+02 3.5560787e+03 - 1.7824007e+02 1.7916032e+02 3.5560936e+03 - 1.7856740e+02 1.7903495e+02 3.5561026e+03 - 1.7883479e+02 1.7883479e+02 3.5561056e+03 - 1.7903495e+02 1.7856740e+02 3.5561026e+03 - 1.7916032e+02 1.7824007e+02 3.5560936e+03 - 1.7920304e+02 1.7785986e+02 3.5560787e+03 - 1.7915486e+02 1.7743361e+02 3.5560579e+03 - 1.7900715e+02 1.7696803e+02 3.5560313e+03 - 1.7875078e+02 1.7646967e+02 3.5559989e+03 - 1.7837611e+02 1.7594499e+02 3.5559609e+03 - 1.7787290e+02 1.7540033e+02 3.5559175e+03 - 1.7723026e+02 1.7484198e+02 3.5558687e+03 - 1.7643657e+02 1.7427616e+02 3.5558147e+03 - 1.7547938e+02 1.7370903e+02 3.5557559e+03 - 1.7434537e+02 1.7314671e+02 3.5556923e+03 - 1.7302028e+02 1.7259524e+02 3.5556242e+03 - 1.7148878e+02 1.7206059e+02 3.5555520e+03 - 1.6973444e+02 1.7154864e+02 3.5554759e+03 - 1.6773968e+02 1.7106514e+02 3.5553962e+03 - 1.6548568e+02 1.7061563e+02 3.5553133e+03 - 1.6295236e+02 1.7020547e+02 3.5552276e+03 - 1.6011843e+02 1.6983966e+02 3.5551394e+03 - 1.5696137e+02 1.6952284e+02 3.5550493e+03 - 1.5345756e+02 1.6925909e+02 3.5549578e+03 - 1.4958247e+02 1.6905191e+02 3.5548652e+03 - 1.4531089e+02 1.6890398e+02 3.5547721e+03 - 1.4061733e+02 1.6881703e+02 3.5546792e+03 - 1.3547653e+02 1.6879170e+02 3.5545870e+03 - 1.2986411e+02 1.6882731e+02 3.5544961e+03 - 1.2375747e+02 1.6892171e+02 3.5544072e+03 - 1.1713680e+02 1.6907112e+02 3.5543209e+03 - 1.0998628e+02 1.6927001e+02 3.5542380e+03 - 1.0229555e+02 1.6951105e+02 3.5541591e+03 - 9.4061158e+01 1.6978512e+02 3.5540850e+03 - 8.5288159e+01 1.7008147e+02 3.5540163e+03 - 7.5991618e+01 1.7038793e+02 3.5539538e+03 - 6.6197895e+01 1.7069137e+02 3.5538981e+03 - 5.5945584e+01 1.7097823e+02 3.5538498e+03 - 4.5285890e+01 1.7123514e+02 3.5538094e+03 - 3.4282335e+01 1.7144973e+02 3.5537775e+03 - 2.3009669e+01 1.7161134e+02 3.5537544e+03 - 1.1551968e+01 1.7171176e+02 3.5537405e+03 - 0.0000000e+00 1.7174583e+02 3.5537358e+03 - -1.1551968e+01 1.7171176e+02 3.5537405e+03 - -2.3009669e+01 1.7161134e+02 3.5537544e+03 - -3.4282335e+01 1.7144973e+02 3.5537775e+03 - -4.5285890e+01 1.7123514e+02 3.5538094e+03 - -5.5945584e+01 1.7097823e+02 3.5538498e+03 - -6.6197895e+01 1.7069137e+02 3.5538981e+03 - -7.5991618e+01 1.7038793e+02 3.5539538e+03 - -8.5288159e+01 1.7008147e+02 3.5540163e+03 - -9.4061158e+01 1.6978512e+02 3.5540850e+03 - -1.0229555e+02 1.6951105e+02 3.5541591e+03 - -1.0998628e+02 1.6927001e+02 3.5542380e+03 - -1.1713680e+02 1.6907112e+02 3.5543209e+03 - -1.2375747e+02 1.6892171e+02 3.5544072e+03 - -1.2986411e+02 1.6882731e+02 3.5544961e+03 - -1.3547653e+02 1.6879170e+02 3.5545870e+03 - -1.4061733e+02 1.6881703e+02 3.5546792e+03 - -1.4531089e+02 1.6890398e+02 3.5547721e+03 - -1.4958247e+02 1.6905191e+02 3.5548652e+03 - -1.5345756e+02 1.6925909e+02 3.5549578e+03 - -1.5696137e+02 1.6952284e+02 3.5550493e+03 - -1.6011843e+02 1.6983966e+02 3.5551394e+03 - -1.6295236e+02 1.7020547e+02 3.5552276e+03 - -1.6548568e+02 1.7061563e+02 3.5553133e+03 - -1.6773968e+02 1.7106514e+02 3.5553962e+03 - -1.6973444e+02 1.7154864e+02 3.5554759e+03 - -1.7148878e+02 1.7206059e+02 3.5555520e+03 - -1.7302028e+02 1.7259524e+02 3.5556242e+03 - -1.7434537e+02 1.7314671e+02 3.5556923e+03 - -1.7547938e+02 1.7370903e+02 3.5557559e+03 - -1.7643657e+02 1.7427616e+02 3.5558147e+03 - -1.7723026e+02 1.7484198e+02 3.5558687e+03 - -1.7787290e+02 1.7540033e+02 3.5559175e+03 - -1.7837611e+02 1.7594499e+02 3.5559609e+03 - -1.7875078e+02 1.7646967e+02 3.5559989e+03 - -1.7900715e+02 1.7696803e+02 3.5560313e+03 - -1.7915486e+02 1.7743361e+02 3.5560579e+03 - -1.7920304e+02 1.7785986e+02 3.5560787e+03 - -1.7916032e+02 1.7824007e+02 3.5560936e+03 - -1.7903495e+02 1.7856740e+02 3.5561026e+03 - -1.7883479e+02 1.7883479e+02 3.5561056e+03 - -1.7856740e+02 1.7903495e+02 3.5561026e+03 - -1.7824007e+02 1.7916032e+02 3.5560936e+03 - -1.7785986e+02 1.7920304e+02 3.5560787e+03 - -1.7743361e+02 1.7915486e+02 3.5560579e+03 - -1.7696803e+02 1.7900715e+02 3.5560313e+03 - -1.7646967e+02 1.7875078e+02 3.5559989e+03 - -1.7594499e+02 1.7837611e+02 3.5559609e+03 - -1.7540033e+02 1.7787290e+02 3.5559175e+03 - -1.7484198e+02 1.7723026e+02 3.5558687e+03 - -1.7427616e+02 1.7643657e+02 3.5558147e+03 - -1.7370903e+02 1.7547938e+02 3.5557559e+03 - -1.7314671e+02 1.7434537e+02 3.5556923e+03 - -1.7259524e+02 1.7302028e+02 3.5556242e+03 - -1.7206059e+02 1.7148878e+02 3.5555520e+03 - -1.7154864e+02 1.6973444e+02 3.5554759e+03 - -1.7106514e+02 1.6773968e+02 3.5553962e+03 - -1.7061563e+02 1.6548568e+02 3.5553133e+03 - -1.7020547e+02 1.6295236e+02 3.5552276e+03 - -1.6983966e+02 1.6011843e+02 3.5551394e+03 - -1.6952284e+02 1.5696137e+02 3.5550493e+03 - -1.6925909e+02 1.5345756e+02 3.5549578e+03 - -1.6905191e+02 1.4958247e+02 3.5548652e+03 - -1.6890398e+02 1.4531089e+02 3.5547721e+03 - -1.6881703e+02 1.4061733e+02 3.5546792e+03 - -1.6879170e+02 1.3547653e+02 3.5545870e+03 - -1.6882731e+02 1.2986411e+02 3.5544961e+03 - -1.6892171e+02 1.2375747e+02 3.5544072e+03 - -1.6907112e+02 1.1713680e+02 3.5543209e+03 - -1.6927001e+02 1.0998628e+02 3.5542380e+03 - -1.6951105e+02 1.0229555e+02 3.5541591e+03 - -1.6978512e+02 9.4061158e+01 3.5540850e+03 - -1.7008147e+02 8.5288159e+01 3.5540163e+03 - -1.7038793e+02 7.5991618e+01 3.5539538e+03 - -1.7069137e+02 6.6197895e+01 3.5538981e+03 - -1.7097823e+02 5.5945584e+01 3.5538498e+03 - -1.7123514e+02 4.5285890e+01 3.5538094e+03 - -1.7144973e+02 3.4282335e+01 3.5537775e+03 - -1.7161134e+02 2.3009669e+01 3.5537544e+03 - -1.7171176e+02 1.1551968e+01 3.5537405e+03 - -1.7174583e+02 0.0000000e+00 3.5537358e+03 - -2.2042663e+02 4.8134273e-09 3.5570765e+03 - -2.2038182e+02 -1.5186726e+01 3.5570847e+03 - -2.2024975e+02 -3.0247486e+01 3.5571092e+03 - -2.2003733e+02 -4.5061022e+01 3.5571497e+03 - -2.1975553e+02 -5.9515085e+01 3.5572056e+03 - -2.1941858e+02 -7.3509970e+01 3.5572763e+03 - -2.1904300e+02 -8.6961063e+01 3.5573610e+03 - -2.1864662e+02 -9.9800288e+01 3.5574585e+03 - -2.1824755e+02 -1.1197649e+02 3.5575680e+03 - -2.1786333e+02 -1.2345491e+02 3.5576882e+03 - -2.1751016e+02 -1.3421591e+02 3.5578178e+03 - -2.1720241e+02 -1.4425319e+02 3.5579557e+03 - -2.1695225e+02 -1.5357181e+02 3.5581006e+03 - -2.1676949e+02 -1.6218606e+02 3.5582513e+03 - -2.1666153e+02 -1.7011742e+02 3.5584066e+03 - -2.1663347e+02 -1.7739267e+02 3.5585652e+03 - -2.1668823e+02 -1.8404229e+02 3.5587260e+03 - -2.1682681e+02 -1.9009903e+02 3.5588880e+03 - -2.1704847e+02 -1.9559681e+02 3.5590502e+03 - -2.1735099e+02 -2.0056981e+02 3.5592114e+03 - -2.1773093e+02 -2.0505178e+02 3.5593709e+03 - -2.1818377e+02 -2.0907557e+02 3.5595277e+03 - -2.1870419e+02 -2.1267276e+02 3.5596810e+03 - -2.1928617e+02 -2.1587343e+02 3.5598300e+03 - -2.1992318e+02 -2.1870606e+02 3.5599741e+03 - -2.2060825e+02 -2.2119744e+02 3.5601126e+03 - -2.2133411e+02 -2.2337270e+02 3.5602448e+03 - -2.2209327e+02 -2.2525532e+02 3.5603703e+03 - -2.2287803e+02 -2.2686723e+02 3.5604885e+03 - -2.2368057e+02 -2.2822885e+02 3.5605989e+03 - -2.2449296e+02 -2.2935925e+02 3.5607010e+03 - -2.2530719e+02 -2.3027618e+02 3.5607946e+03 - -2.2611515e+02 -2.3099624e+02 3.5608793e+03 - -2.2690867e+02 -2.3153492e+02 3.5609547e+03 - -2.2767946e+02 -2.3190676e+02 3.5610205e+03 - -2.2841916e+02 -2.3212540e+02 3.5610767e+03 - -2.2911925e+02 -2.3220368e+02 3.5611229e+03 - -2.2977107e+02 -2.3215376e+02 3.5611590e+03 - -2.3036575e+02 -2.3198713e+02 3.5611848e+03 - -2.3089421e+02 -2.3171476e+02 3.5612004e+03 - -2.3134711e+02 -2.3134711e+02 3.5612056e+03 - -2.3171476e+02 -2.3089421e+02 3.5612004e+03 - -2.3198713e+02 -2.3036575e+02 3.5611848e+03 - -2.3215376e+02 -2.2977107e+02 3.5611590e+03 - -2.3220368e+02 -2.2911925e+02 3.5611229e+03 - -2.3212540e+02 -2.2841916e+02 3.5610767e+03 - -2.3190676e+02 -2.2767946e+02 3.5610205e+03 - -2.3153492e+02 -2.2690867e+02 3.5609547e+03 - -2.3099624e+02 -2.2611515e+02 3.5608793e+03 - -2.3027618e+02 -2.2530719e+02 3.5607946e+03 - -2.2935925e+02 -2.2449296e+02 3.5607010e+03 - -2.2822885e+02 -2.2368057e+02 3.5605989e+03 - -2.2686723e+02 -2.2287803e+02 3.5604885e+03 - -2.2525532e+02 -2.2209327e+02 3.5603703e+03 - -2.2337270e+02 -2.2133411e+02 3.5602448e+03 - -2.2119744e+02 -2.2060825e+02 3.5601126e+03 - -2.1870606e+02 -2.1992318e+02 3.5599741e+03 - -2.1587343e+02 -2.1928617e+02 3.5598300e+03 - -2.1267276e+02 -2.1870419e+02 3.5596810e+03 - -2.0907557e+02 -2.1818377e+02 3.5595277e+03 - -2.0505178e+02 -2.1773093e+02 3.5593709e+03 - -2.0056981e+02 -2.1735099e+02 3.5592114e+03 - -1.9559681e+02 -2.1704847e+02 3.5590502e+03 - -1.9009903e+02 -2.1682681e+02 3.5588880e+03 - -1.8404229e+02 -2.1668823e+02 3.5587260e+03 - -1.7739267e+02 -2.1663347e+02 3.5585652e+03 - -1.7011742e+02 -2.1666153e+02 3.5584066e+03 - -1.6218606e+02 -2.1676949e+02 3.5582513e+03 - -1.5357181e+02 -2.1695225e+02 3.5581006e+03 - -1.4425319e+02 -2.1720241e+02 3.5579557e+03 - -1.3421591e+02 -2.1751016e+02 3.5578178e+03 - -1.2345491e+02 -2.1786333e+02 3.5576882e+03 - -1.1197649e+02 -2.1824755e+02 3.5575680e+03 - -9.9800288e+01 -2.1864662e+02 3.5574585e+03 - -8.6961063e+01 -2.1904300e+02 3.5573610e+03 - -7.3509970e+01 -2.1941858e+02 3.5572763e+03 - -5.9515085e+01 -2.1975553e+02 3.5572056e+03 - -4.5061022e+01 -2.2003733e+02 3.5571497e+03 - -3.0247486e+01 -2.2024975e+02 3.5571092e+03 - -1.5186726e+01 -2.2038182e+02 3.5570847e+03 - 0.0000000e+00 -2.2042663e+02 3.5570765e+03 - 1.5186726e+01 -2.2038182e+02 3.5570847e+03 - 3.0247486e+01 -2.2024975e+02 3.5571092e+03 - 4.5061022e+01 -2.2003733e+02 3.5571497e+03 - 5.9515085e+01 -2.1975553e+02 3.5572056e+03 - 7.3509970e+01 -2.1941858e+02 3.5572763e+03 - 8.6961063e+01 -2.1904300e+02 3.5573610e+03 - 9.9800288e+01 -2.1864662e+02 3.5574585e+03 - 1.1197649e+02 -2.1824755e+02 3.5575680e+03 - 1.2345491e+02 -2.1786333e+02 3.5576882e+03 - 1.3421591e+02 -2.1751016e+02 3.5578178e+03 - 1.4425319e+02 -2.1720241e+02 3.5579557e+03 - 1.5357181e+02 -2.1695225e+02 3.5581006e+03 - 1.6218606e+02 -2.1676949e+02 3.5582513e+03 - 1.7011742e+02 -2.1666153e+02 3.5584066e+03 - 1.7739267e+02 -2.1663347e+02 3.5585652e+03 - 1.8404229e+02 -2.1668823e+02 3.5587260e+03 - 1.9009903e+02 -2.1682681e+02 3.5588880e+03 - 1.9559681e+02 -2.1704847e+02 3.5590502e+03 - 2.0056981e+02 -2.1735099e+02 3.5592114e+03 - 2.0505178e+02 -2.1773093e+02 3.5593709e+03 - 2.0907557e+02 -2.1818377e+02 3.5595277e+03 - 2.1267276e+02 -2.1870419e+02 3.5596810e+03 - 2.1587343e+02 -2.1928617e+02 3.5598300e+03 - 2.1870606e+02 -2.1992318e+02 3.5599741e+03 - 2.2119744e+02 -2.2060825e+02 3.5601126e+03 - 2.2337270e+02 -2.2133411e+02 3.5602448e+03 - 2.2525532e+02 -2.2209327e+02 3.5603703e+03 - 2.2686723e+02 -2.2287803e+02 3.5604885e+03 - 2.2822885e+02 -2.2368057e+02 3.5605989e+03 - 2.2935925e+02 -2.2449296e+02 3.5607010e+03 - 2.3027618e+02 -2.2530719e+02 3.5607946e+03 - 2.3099624e+02 -2.2611515e+02 3.5608793e+03 - 2.3153492e+02 -2.2690867e+02 3.5609547e+03 - 2.3190676e+02 -2.2767946e+02 3.5610205e+03 - 2.3212540e+02 -2.2841916e+02 3.5610767e+03 - 2.3220368e+02 -2.2911925e+02 3.5611229e+03 - 2.3215376e+02 -2.2977107e+02 3.5611590e+03 - 2.3198713e+02 -2.3036575e+02 3.5611848e+03 - 2.3171476e+02 -2.3089421e+02 3.5612004e+03 - 2.3134711e+02 -2.3134711e+02 3.5612056e+03 - 2.3089421e+02 -2.3171476e+02 3.5612004e+03 - 2.3036575e+02 -2.3198713e+02 3.5611848e+03 - 2.2977107e+02 -2.3215376e+02 3.5611590e+03 - 2.2911925e+02 -2.3220368e+02 3.5611229e+03 - 2.2841916e+02 -2.3212540e+02 3.5610767e+03 - 2.2767946e+02 -2.3190676e+02 3.5610205e+03 - 2.2690867e+02 -2.3153492e+02 3.5609547e+03 - 2.2611515e+02 -2.3099624e+02 3.5608793e+03 - 2.2530719e+02 -2.3027618e+02 3.5607946e+03 - 2.2449296e+02 -2.2935925e+02 3.5607010e+03 - 2.2368057e+02 -2.2822885e+02 3.5605989e+03 - 2.2287803e+02 -2.2686723e+02 3.5604885e+03 - 2.2209327e+02 -2.2525532e+02 3.5603703e+03 - 2.2133411e+02 -2.2337270e+02 3.5602448e+03 - 2.2060825e+02 -2.2119744e+02 3.5601126e+03 - 2.1992318e+02 -2.1870606e+02 3.5599741e+03 - 2.1928617e+02 -2.1587343e+02 3.5598300e+03 - 2.1870419e+02 -2.1267276e+02 3.5596810e+03 - 2.1818377e+02 -2.0907557e+02 3.5595277e+03 - 2.1773093e+02 -2.0505178e+02 3.5593709e+03 - 2.1735099e+02 -2.0056981e+02 3.5592114e+03 - 2.1704847e+02 -1.9559681e+02 3.5590502e+03 - 2.1682681e+02 -1.9009903e+02 3.5588880e+03 - 2.1668823e+02 -1.8404229e+02 3.5587260e+03 - 2.1663347e+02 -1.7739267e+02 3.5585652e+03 - 2.1666153e+02 -1.7011742e+02 3.5584066e+03 - 2.1676949e+02 -1.6218606e+02 3.5582513e+03 - 2.1695225e+02 -1.5357181e+02 3.5581006e+03 - 2.1720241e+02 -1.4425319e+02 3.5579557e+03 - 2.1751016e+02 -1.3421591e+02 3.5578178e+03 - 2.1786333e+02 -1.2345491e+02 3.5576882e+03 - 2.1824755e+02 -1.1197649e+02 3.5575680e+03 - 2.1864662e+02 -9.9800288e+01 3.5574585e+03 - 2.1904300e+02 -8.6961063e+01 3.5573610e+03 - 2.1941858e+02 -7.3509970e+01 3.5572763e+03 - 2.1975553e+02 -5.9515085e+01 3.5572056e+03 - 2.2003733e+02 -4.5061022e+01 3.5571497e+03 - 2.2024975e+02 -3.0247486e+01 3.5571092e+03 - 2.2038182e+02 -1.5186726e+01 3.5570847e+03 - 2.2042663e+02 0.0000000e+00 3.5570765e+03 - 2.2038182e+02 1.5186726e+01 3.5570847e+03 - 2.2024975e+02 3.0247486e+01 3.5571092e+03 - 2.2003733e+02 4.5061022e+01 3.5571497e+03 - 2.1975553e+02 5.9515085e+01 3.5572056e+03 - 2.1941858e+02 7.3509970e+01 3.5572763e+03 - 2.1904300e+02 8.6961063e+01 3.5573610e+03 - 2.1864662e+02 9.9800288e+01 3.5574585e+03 - 2.1824755e+02 1.1197649e+02 3.5575680e+03 - 2.1786333e+02 1.2345491e+02 3.5576882e+03 - 2.1751016e+02 1.3421591e+02 3.5578178e+03 - 2.1720241e+02 1.4425319e+02 3.5579557e+03 - 2.1695225e+02 1.5357181e+02 3.5581006e+03 - 2.1676949e+02 1.6218606e+02 3.5582513e+03 - 2.1666153e+02 1.7011742e+02 3.5584066e+03 - 2.1663347e+02 1.7739267e+02 3.5585652e+03 - 2.1668823e+02 1.8404229e+02 3.5587260e+03 - 2.1682681e+02 1.9009903e+02 3.5588880e+03 - 2.1704847e+02 1.9559681e+02 3.5590502e+03 - 2.1735099e+02 2.0056981e+02 3.5592114e+03 - 2.1773093e+02 2.0505178e+02 3.5593709e+03 - 2.1818377e+02 2.0907557e+02 3.5595277e+03 - 2.1870419e+02 2.1267276e+02 3.5596810e+03 - 2.1928617e+02 2.1587343e+02 3.5598300e+03 - 2.1992318e+02 2.1870606e+02 3.5599741e+03 - 2.2060825e+02 2.2119744e+02 3.5601126e+03 - 2.2133411e+02 2.2337270e+02 3.5602448e+03 - 2.2209327e+02 2.2525532e+02 3.5603703e+03 - 2.2287803e+02 2.2686723e+02 3.5604885e+03 - 2.2368057e+02 2.2822885e+02 3.5605989e+03 - 2.2449296e+02 2.2935925e+02 3.5607010e+03 - 2.2530719e+02 2.3027618e+02 3.5607946e+03 - 2.2611515e+02 2.3099624e+02 3.5608793e+03 - 2.2690867e+02 2.3153492e+02 3.5609547e+03 - 2.2767946e+02 2.3190676e+02 3.5610205e+03 - 2.2841916e+02 2.3212540e+02 3.5610767e+03 - 2.2911925e+02 2.3220368e+02 3.5611229e+03 - 2.2977107e+02 2.3215376e+02 3.5611590e+03 - 2.3036575e+02 2.3198713e+02 3.5611848e+03 - 2.3089421e+02 2.3171476e+02 3.5612004e+03 - 2.3134711e+02 2.3134711e+02 3.5612056e+03 - 2.3171476e+02 2.3089421e+02 3.5612004e+03 - 2.3198713e+02 2.3036575e+02 3.5611848e+03 - 2.3215376e+02 2.2977107e+02 3.5611590e+03 - 2.3220368e+02 2.2911925e+02 3.5611229e+03 - 2.3212540e+02 2.2841916e+02 3.5610767e+03 - 2.3190676e+02 2.2767946e+02 3.5610205e+03 - 2.3153492e+02 2.2690867e+02 3.5609547e+03 - 2.3099624e+02 2.2611515e+02 3.5608793e+03 - 2.3027618e+02 2.2530719e+02 3.5607946e+03 - 2.2935925e+02 2.2449296e+02 3.5607010e+03 - 2.2822885e+02 2.2368057e+02 3.5605989e+03 - 2.2686723e+02 2.2287803e+02 3.5604885e+03 - 2.2525532e+02 2.2209327e+02 3.5603703e+03 - 2.2337270e+02 2.2133411e+02 3.5602448e+03 - 2.2119744e+02 2.2060825e+02 3.5601126e+03 - 2.1870606e+02 2.1992318e+02 3.5599741e+03 - 2.1587343e+02 2.1928617e+02 3.5598300e+03 - 2.1267276e+02 2.1870419e+02 3.5596810e+03 - 2.0907557e+02 2.1818377e+02 3.5595277e+03 - 2.0505178e+02 2.1773093e+02 3.5593709e+03 - 2.0056981e+02 2.1735099e+02 3.5592114e+03 - 1.9559681e+02 2.1704847e+02 3.5590502e+03 - 1.9009903e+02 2.1682681e+02 3.5588880e+03 - 1.8404229e+02 2.1668823e+02 3.5587260e+03 - 1.7739267e+02 2.1663347e+02 3.5585652e+03 - 1.7011742e+02 2.1666153e+02 3.5584066e+03 - 1.6218606e+02 2.1676949e+02 3.5582513e+03 - 1.5357181e+02 2.1695225e+02 3.5581006e+03 - 1.4425319e+02 2.1720241e+02 3.5579557e+03 - 1.3421591e+02 2.1751016e+02 3.5578178e+03 - 1.2345491e+02 2.1786333e+02 3.5576882e+03 - 1.1197649e+02 2.1824755e+02 3.5575680e+03 - 9.9800288e+01 2.1864662e+02 3.5574585e+03 - 8.6961063e+01 2.1904300e+02 3.5573610e+03 - 7.3509970e+01 2.1941858e+02 3.5572763e+03 - 5.9515085e+01 2.1975553e+02 3.5572056e+03 - 4.5061022e+01 2.2003733e+02 3.5571497e+03 - 3.0247486e+01 2.2024975e+02 3.5571092e+03 - 1.5186726e+01 2.2038182e+02 3.5570847e+03 - 0.0000000e+00 2.2042663e+02 3.5570765e+03 - -1.5186726e+01 2.2038182e+02 3.5570847e+03 - -3.0247486e+01 2.2024975e+02 3.5571092e+03 - -4.5061022e+01 2.2003733e+02 3.5571497e+03 - -5.9515085e+01 2.1975553e+02 3.5572056e+03 - -7.3509970e+01 2.1941858e+02 3.5572763e+03 - -8.6961063e+01 2.1904300e+02 3.5573610e+03 - -9.9800288e+01 2.1864662e+02 3.5574585e+03 - -1.1197649e+02 2.1824755e+02 3.5575680e+03 - -1.2345491e+02 2.1786333e+02 3.5576882e+03 - -1.3421591e+02 2.1751016e+02 3.5578178e+03 - -1.4425319e+02 2.1720241e+02 3.5579557e+03 - -1.5357181e+02 2.1695225e+02 3.5581006e+03 - -1.6218606e+02 2.1676949e+02 3.5582513e+03 - -1.7011742e+02 2.1666153e+02 3.5584066e+03 - -1.7739267e+02 2.1663347e+02 3.5585652e+03 - -1.8404229e+02 2.1668823e+02 3.5587260e+03 - -1.9009903e+02 2.1682681e+02 3.5588880e+03 - -1.9559681e+02 2.1704847e+02 3.5590502e+03 - -2.0056981e+02 2.1735099e+02 3.5592114e+03 - -2.0505178e+02 2.1773093e+02 3.5593709e+03 - -2.0907557e+02 2.1818377e+02 3.5595277e+03 - -2.1267276e+02 2.1870419e+02 3.5596810e+03 - -2.1587343e+02 2.1928617e+02 3.5598300e+03 - -2.1870606e+02 2.1992318e+02 3.5599741e+03 - -2.2119744e+02 2.2060825e+02 3.5601126e+03 - -2.2337270e+02 2.2133411e+02 3.5602448e+03 - -2.2525532e+02 2.2209327e+02 3.5603703e+03 - -2.2686723e+02 2.2287803e+02 3.5604885e+03 - -2.2822885e+02 2.2368057e+02 3.5605989e+03 - -2.2935925e+02 2.2449296e+02 3.5607010e+03 - -2.3027618e+02 2.2530719e+02 3.5607946e+03 - -2.3099624e+02 2.2611515e+02 3.5608793e+03 - -2.3153492e+02 2.2690867e+02 3.5609547e+03 - -2.3190676e+02 2.2767946e+02 3.5610205e+03 - -2.3212540e+02 2.2841916e+02 3.5610767e+03 - -2.3220368e+02 2.2911925e+02 3.5611229e+03 - -2.3215376e+02 2.2977107e+02 3.5611590e+03 - -2.3198713e+02 2.3036575e+02 3.5611848e+03 - -2.3171476e+02 2.3089421e+02 3.5612004e+03 - -2.3134711e+02 2.3134711e+02 3.5612056e+03 - -2.3089421e+02 2.3171476e+02 3.5612004e+03 - -2.3036575e+02 2.3198713e+02 3.5611848e+03 - -2.2977107e+02 2.3215376e+02 3.5611590e+03 - -2.2911925e+02 2.3220368e+02 3.5611229e+03 - -2.2841916e+02 2.3212540e+02 3.5610767e+03 - -2.2767946e+02 2.3190676e+02 3.5610205e+03 - -2.2690867e+02 2.3153492e+02 3.5609547e+03 - -2.2611515e+02 2.3099624e+02 3.5608793e+03 - -2.2530719e+02 2.3027618e+02 3.5607946e+03 - -2.2449296e+02 2.2935925e+02 3.5607010e+03 - -2.2368057e+02 2.2822885e+02 3.5605989e+03 - -2.2287803e+02 2.2686723e+02 3.5604885e+03 - -2.2209327e+02 2.2525532e+02 3.5603703e+03 - -2.2133411e+02 2.2337270e+02 3.5602448e+03 - -2.2060825e+02 2.2119744e+02 3.5601126e+03 - -2.1992318e+02 2.1870606e+02 3.5599741e+03 - -2.1928617e+02 2.1587343e+02 3.5598300e+03 - -2.1870419e+02 2.1267276e+02 3.5596810e+03 - -2.1818377e+02 2.0907557e+02 3.5595277e+03 - -2.1773093e+02 2.0505178e+02 3.5593709e+03 - -2.1735099e+02 2.0056981e+02 3.5592114e+03 - -2.1704847e+02 1.9559681e+02 3.5590502e+03 - -2.1682681e+02 1.9009903e+02 3.5588880e+03 - -2.1668823e+02 1.8404229e+02 3.5587260e+03 - -2.1663347e+02 1.7739267e+02 3.5585652e+03 - -2.1666153e+02 1.7011742e+02 3.5584066e+03 - -2.1676949e+02 1.6218606e+02 3.5582513e+03 - -2.1695225e+02 1.5357181e+02 3.5581006e+03 - -2.1720241e+02 1.4425319e+02 3.5579557e+03 - -2.1751016e+02 1.3421591e+02 3.5578178e+03 - -2.1786333e+02 1.2345491e+02 3.5576882e+03 - -2.1824755e+02 1.1197649e+02 3.5575680e+03 - -2.1864662e+02 9.9800288e+01 3.5574585e+03 - -2.1904300e+02 8.6961063e+01 3.5573610e+03 - -2.1941858e+02 7.3509970e+01 3.5572763e+03 - -2.1975553e+02 5.9515085e+01 3.5572056e+03 - -2.2003733e+02 4.5061022e+01 3.5571497e+03 - -2.2024975e+02 3.0247486e+01 3.5571092e+03 - -2.2038182e+02 1.5186726e+01 3.5570847e+03 - -2.2042663e+02 0.0000000e+00 3.5570765e+03 - -2.6230434e+02 -7.2201409e-09 3.5607743e+03 - -2.6224935e+02 -1.8650872e+01 3.5607869e+03 - -2.6208733e+02 -3.7143830e+01 3.5608245e+03 - -2.6182695e+02 -5.5326922e+01 3.5608867e+03 - -2.6148194e+02 -7.3059585e+01 3.5609727e+03 - -2.6107011e+02 -9.0217120e+01 3.5610813e+03 - -2.6061216e+02 -1.0669388e+02 3.5612112e+03 - -2.6013039e+02 -1.2240510e+02 3.5613610e+03 - -2.5964746e+02 -1.3728731e+02 3.5615289e+03 - -2.5918528e+02 -1.5129768e+02 3.5617131e+03 - -2.5876412e+02 -1.6441234e+02 3.5619117e+03 - -2.5840195e+02 -1.7662418e+02 3.5621229e+03 - -2.5811399e+02 -1.8794026e+02 3.5623446e+03 - -2.5791252e+02 -1.9837913e+02 3.5625750e+03 - -2.5780685e+02 -2.0796830e+02 3.5628123e+03 - -2.5780341e+02 -2.1674182e+02 3.5630545e+03 - -2.5790596e+02 -2.2473830e+02 3.5633001e+03 - -2.5811584e+02 -2.3199910e+02 3.5635472e+03 - -2.5843227e+02 -2.3856699e+02 3.5637944e+03 - -2.5885265e+02 -2.4448496e+02 3.5640401e+03 - -2.5937284e+02 -2.4979545e+02 3.5642829e+03 - -2.5998740e+02 -2.5453968e+02 3.5645215e+03 - -2.6068987e+02 -2.5875729e+02 3.5647548e+03 - -2.6147297e+02 -2.6248597e+02 3.5649814e+03 - -2.6232873e+02 -2.6576139e+02 3.5652004e+03 - -2.6324870e+02 -2.6861712e+02 3.5654108e+03 - -2.6422400e+02 -2.7108459e+02 3.5656117e+03 - -2.6524549e+02 -2.7319319e+02 3.5658022e+03 - -2.6630377e+02 -2.7497034e+02 3.5659815e+03 - -2.6738927e+02 -2.7644159e+02 3.5661490e+03 - -2.6849230e+02 -2.7763078e+02 3.5663040e+03 - -2.6960302e+02 -2.7856010e+02 3.5664459e+03 - -2.7071149e+02 -2.7925029e+02 3.5665743e+03 - -2.7180765e+02 -2.7972071e+02 3.5666886e+03 - -2.7288133e+02 -2.7998952e+02 3.5667884e+03 - -2.7392219e+02 -2.8007375e+02 3.5668735e+03 - -2.7491973e+02 -2.7998944e+02 3.5669434e+03 - -2.7586323e+02 -2.7975174e+02 3.5669981e+03 - -2.7674173e+02 -2.7937500e+02 3.5670373e+03 - -2.7754397e+02 -2.7887286e+02 3.5670609e+03 - -2.7825836e+02 -2.7825836e+02 3.5670687e+03 - -2.7887286e+02 -2.7754397e+02 3.5670609e+03 - -2.7937500e+02 -2.7674173e+02 3.5670373e+03 - -2.7975174e+02 -2.7586323e+02 3.5669981e+03 - -2.7998944e+02 -2.7491973e+02 3.5669434e+03 - -2.8007375e+02 -2.7392219e+02 3.5668735e+03 - -2.7998952e+02 -2.7288133e+02 3.5667884e+03 - -2.7972071e+02 -2.7180765e+02 3.5666886e+03 - -2.7925029e+02 -2.7071149e+02 3.5665743e+03 - -2.7856010e+02 -2.6960302e+02 3.5664459e+03 - -2.7763078e+02 -2.6849230e+02 3.5663040e+03 - -2.7644159e+02 -2.6738927e+02 3.5661490e+03 - -2.7497034e+02 -2.6630377e+02 3.5659815e+03 - -2.7319319e+02 -2.6524549e+02 3.5658022e+03 - -2.7108459e+02 -2.6422400e+02 3.5656117e+03 - -2.6861712e+02 -2.6324870e+02 3.5654108e+03 - -2.6576139e+02 -2.6232873e+02 3.5652004e+03 - -2.6248597e+02 -2.6147297e+02 3.5649814e+03 - -2.5875729e+02 -2.6068987e+02 3.5647548e+03 - -2.5453968e+02 -2.5998740e+02 3.5645215e+03 - -2.4979545e+02 -2.5937284e+02 3.5642829e+03 - -2.4448496e+02 -2.5885265e+02 3.5640401e+03 - -2.3856699e+02 -2.5843227e+02 3.5637944e+03 - -2.3199910e+02 -2.5811584e+02 3.5635472e+03 - -2.2473830e+02 -2.5790596e+02 3.5633001e+03 - -2.1674182e+02 -2.5780341e+02 3.5630545e+03 - -2.0796830e+02 -2.5780685e+02 3.5628123e+03 - -1.9837913e+02 -2.5791252e+02 3.5625750e+03 - -1.8794026e+02 -2.5811399e+02 3.5623446e+03 - -1.7662418e+02 -2.5840195e+02 3.5621229e+03 - -1.6441234e+02 -2.5876412e+02 3.5619117e+03 - -1.5129768e+02 -2.5918528e+02 3.5617131e+03 - -1.3728731e+02 -2.5964746e+02 3.5615289e+03 - -1.2240510e+02 -2.6013039e+02 3.5613610e+03 - -1.0669388e+02 -2.6061216e+02 3.5612112e+03 - -9.0217120e+01 -2.6107011e+02 3.5610813e+03 - -7.3059585e+01 -2.6148194e+02 3.5609727e+03 - -5.5326922e+01 -2.6182695e+02 3.5608867e+03 - -3.7143830e+01 -2.6208733e+02 3.5608245e+03 - -1.8650872e+01 -2.6224935e+02 3.5607869e+03 - 0.0000000e+00 -2.6230434e+02 3.5607743e+03 - 1.8650872e+01 -2.6224935e+02 3.5607869e+03 - 3.7143830e+01 -2.6208733e+02 3.5608245e+03 - 5.5326922e+01 -2.6182695e+02 3.5608867e+03 - 7.3059585e+01 -2.6148194e+02 3.5609727e+03 - 9.0217120e+01 -2.6107011e+02 3.5610813e+03 - 1.0669388e+02 -2.6061216e+02 3.5612112e+03 - 1.2240510e+02 -2.6013039e+02 3.5613610e+03 - 1.3728731e+02 -2.5964746e+02 3.5615289e+03 - 1.5129768e+02 -2.5918528e+02 3.5617131e+03 - 1.6441234e+02 -2.5876412e+02 3.5619117e+03 - 1.7662418e+02 -2.5840195e+02 3.5621229e+03 - 1.8794026e+02 -2.5811399e+02 3.5623446e+03 - 1.9837913e+02 -2.5791252e+02 3.5625750e+03 - 2.0796830e+02 -2.5780685e+02 3.5628123e+03 - 2.1674182e+02 -2.5780341e+02 3.5630545e+03 - 2.2473830e+02 -2.5790596e+02 3.5633001e+03 - 2.3199910e+02 -2.5811584e+02 3.5635472e+03 - 2.3856699e+02 -2.5843227e+02 3.5637944e+03 - 2.4448496e+02 -2.5885265e+02 3.5640401e+03 - 2.4979545e+02 -2.5937284e+02 3.5642829e+03 - 2.5453968e+02 -2.5998740e+02 3.5645215e+03 - 2.5875729e+02 -2.6068987e+02 3.5647548e+03 - 2.6248597e+02 -2.6147297e+02 3.5649814e+03 - 2.6576139e+02 -2.6232873e+02 3.5652004e+03 - 2.6861712e+02 -2.6324870e+02 3.5654108e+03 - 2.7108459e+02 -2.6422400e+02 3.5656117e+03 - 2.7319319e+02 -2.6524549e+02 3.5658022e+03 - 2.7497034e+02 -2.6630377e+02 3.5659815e+03 - 2.7644159e+02 -2.6738927e+02 3.5661490e+03 - 2.7763078e+02 -2.6849230e+02 3.5663040e+03 - 2.7856010e+02 -2.6960302e+02 3.5664459e+03 - 2.7925029e+02 -2.7071149e+02 3.5665743e+03 - 2.7972071e+02 -2.7180765e+02 3.5666886e+03 - 2.7998952e+02 -2.7288133e+02 3.5667884e+03 - 2.8007375e+02 -2.7392219e+02 3.5668735e+03 - 2.7998944e+02 -2.7491973e+02 3.5669434e+03 - 2.7975174e+02 -2.7586323e+02 3.5669981e+03 - 2.7937500e+02 -2.7674173e+02 3.5670373e+03 - 2.7887286e+02 -2.7754397e+02 3.5670609e+03 - 2.7825836e+02 -2.7825836e+02 3.5670687e+03 - 2.7754397e+02 -2.7887286e+02 3.5670609e+03 - 2.7674173e+02 -2.7937500e+02 3.5670373e+03 - 2.7586323e+02 -2.7975174e+02 3.5669981e+03 - 2.7491973e+02 -2.7998944e+02 3.5669434e+03 - 2.7392219e+02 -2.8007375e+02 3.5668735e+03 - 2.7288133e+02 -2.7998952e+02 3.5667884e+03 - 2.7180765e+02 -2.7972071e+02 3.5666886e+03 - 2.7071149e+02 -2.7925029e+02 3.5665743e+03 - 2.6960302e+02 -2.7856010e+02 3.5664459e+03 - 2.6849230e+02 -2.7763078e+02 3.5663040e+03 - 2.6738927e+02 -2.7644159e+02 3.5661490e+03 - 2.6630377e+02 -2.7497034e+02 3.5659815e+03 - 2.6524549e+02 -2.7319319e+02 3.5658022e+03 - 2.6422400e+02 -2.7108459e+02 3.5656117e+03 - 2.6324870e+02 -2.6861712e+02 3.5654108e+03 - 2.6232873e+02 -2.6576139e+02 3.5652004e+03 - 2.6147297e+02 -2.6248597e+02 3.5649814e+03 - 2.6068987e+02 -2.5875729e+02 3.5647548e+03 - 2.5998740e+02 -2.5453968e+02 3.5645215e+03 - 2.5937284e+02 -2.4979545e+02 3.5642829e+03 - 2.5885265e+02 -2.4448496e+02 3.5640401e+03 - 2.5843227e+02 -2.3856699e+02 3.5637944e+03 - 2.5811584e+02 -2.3199910e+02 3.5635472e+03 - 2.5790596e+02 -2.2473830e+02 3.5633001e+03 - 2.5780341e+02 -2.1674182e+02 3.5630545e+03 - 2.5780685e+02 -2.0796830e+02 3.5628123e+03 - 2.5791252e+02 -1.9837913e+02 3.5625750e+03 - 2.5811399e+02 -1.8794026e+02 3.5623446e+03 - 2.5840195e+02 -1.7662418e+02 3.5621229e+03 - 2.5876412e+02 -1.6441234e+02 3.5619117e+03 - 2.5918528e+02 -1.5129768e+02 3.5617131e+03 - 2.5964746e+02 -1.3728731e+02 3.5615289e+03 - 2.6013039e+02 -1.2240510e+02 3.5613610e+03 - 2.6061216e+02 -1.0669388e+02 3.5612112e+03 - 2.6107011e+02 -9.0217120e+01 3.5610813e+03 - 2.6148194e+02 -7.3059585e+01 3.5609727e+03 - 2.6182695e+02 -5.5326922e+01 3.5608867e+03 - 2.6208733e+02 -3.7143830e+01 3.5608245e+03 - 2.6224935e+02 -1.8650872e+01 3.5607869e+03 - 2.6230434e+02 0.0000000e+00 3.5607743e+03 - 2.6224935e+02 1.8650872e+01 3.5607869e+03 - 2.6208733e+02 3.7143830e+01 3.5608245e+03 - 2.6182695e+02 5.5326922e+01 3.5608867e+03 - 2.6148194e+02 7.3059585e+01 3.5609727e+03 - 2.6107011e+02 9.0217120e+01 3.5610813e+03 - 2.6061216e+02 1.0669388e+02 3.5612112e+03 - 2.6013039e+02 1.2240510e+02 3.5613610e+03 - 2.5964746e+02 1.3728731e+02 3.5615289e+03 - 2.5918528e+02 1.5129768e+02 3.5617131e+03 - 2.5876412e+02 1.6441234e+02 3.5619117e+03 - 2.5840195e+02 1.7662418e+02 3.5621229e+03 - 2.5811399e+02 1.8794026e+02 3.5623446e+03 - 2.5791252e+02 1.9837913e+02 3.5625750e+03 - 2.5780685e+02 2.0796830e+02 3.5628123e+03 - 2.5780341e+02 2.1674182e+02 3.5630545e+03 - 2.5790596e+02 2.2473830e+02 3.5633001e+03 - 2.5811584e+02 2.3199910e+02 3.5635472e+03 - 2.5843227e+02 2.3856699e+02 3.5637944e+03 - 2.5885265e+02 2.4448496e+02 3.5640401e+03 - 2.5937284e+02 2.4979545e+02 3.5642829e+03 - 2.5998740e+02 2.5453968e+02 3.5645215e+03 - 2.6068987e+02 2.5875729e+02 3.5647548e+03 - 2.6147297e+02 2.6248597e+02 3.5649814e+03 - 2.6232873e+02 2.6576139e+02 3.5652004e+03 - 2.6324870e+02 2.6861712e+02 3.5654108e+03 - 2.6422400e+02 2.7108459e+02 3.5656117e+03 - 2.6524549e+02 2.7319319e+02 3.5658022e+03 - 2.6630377e+02 2.7497034e+02 3.5659815e+03 - 2.6738927e+02 2.7644159e+02 3.5661490e+03 - 2.6849230e+02 2.7763078e+02 3.5663040e+03 - 2.6960302e+02 2.7856010e+02 3.5664459e+03 - 2.7071149e+02 2.7925029e+02 3.5665743e+03 - 2.7180765e+02 2.7972071e+02 3.5666886e+03 - 2.7288133e+02 2.7998952e+02 3.5667884e+03 - 2.7392219e+02 2.8007375e+02 3.5668735e+03 - 2.7491973e+02 2.7998944e+02 3.5669434e+03 - 2.7586323e+02 2.7975174e+02 3.5669981e+03 - 2.7674173e+02 2.7937500e+02 3.5670373e+03 - 2.7754397e+02 2.7887286e+02 3.5670609e+03 - 2.7825836e+02 2.7825836e+02 3.5670687e+03 - 2.7887286e+02 2.7754397e+02 3.5670609e+03 - 2.7937500e+02 2.7674173e+02 3.5670373e+03 - 2.7975174e+02 2.7586323e+02 3.5669981e+03 - 2.7998944e+02 2.7491973e+02 3.5669434e+03 - 2.8007375e+02 2.7392219e+02 3.5668735e+03 - 2.7998952e+02 2.7288133e+02 3.5667884e+03 - 2.7972071e+02 2.7180765e+02 3.5666886e+03 - 2.7925029e+02 2.7071149e+02 3.5665743e+03 - 2.7856010e+02 2.6960302e+02 3.5664459e+03 - 2.7763078e+02 2.6849230e+02 3.5663040e+03 - 2.7644159e+02 2.6738927e+02 3.5661490e+03 - 2.7497034e+02 2.6630377e+02 3.5659815e+03 - 2.7319319e+02 2.6524549e+02 3.5658022e+03 - 2.7108459e+02 2.6422400e+02 3.5656117e+03 - 2.6861712e+02 2.6324870e+02 3.5654108e+03 - 2.6576139e+02 2.6232873e+02 3.5652004e+03 - 2.6248597e+02 2.6147297e+02 3.5649814e+03 - 2.5875729e+02 2.6068987e+02 3.5647548e+03 - 2.5453968e+02 2.5998740e+02 3.5645215e+03 - 2.4979545e+02 2.5937284e+02 3.5642829e+03 - 2.4448496e+02 2.5885265e+02 3.5640401e+03 - 2.3856699e+02 2.5843227e+02 3.5637944e+03 - 2.3199910e+02 2.5811584e+02 3.5635472e+03 - 2.2473830e+02 2.5790596e+02 3.5633001e+03 - 2.1674182e+02 2.5780341e+02 3.5630545e+03 - 2.0796830e+02 2.5780685e+02 3.5628123e+03 - 1.9837913e+02 2.5791252e+02 3.5625750e+03 - 1.8794026e+02 2.5811399e+02 3.5623446e+03 - 1.7662418e+02 2.5840195e+02 3.5621229e+03 - 1.6441234e+02 2.5876412e+02 3.5619117e+03 - 1.5129768e+02 2.5918528e+02 3.5617131e+03 - 1.3728731e+02 2.5964746e+02 3.5615289e+03 - 1.2240510e+02 2.6013039e+02 3.5613610e+03 - 1.0669388e+02 2.6061216e+02 3.5612112e+03 - 9.0217120e+01 2.6107011e+02 3.5610813e+03 - 7.3059585e+01 2.6148194e+02 3.5609727e+03 - 5.5326922e+01 2.6182695e+02 3.5608867e+03 - 3.7143830e+01 2.6208733e+02 3.5608245e+03 - 1.8650872e+01 2.6224935e+02 3.5607869e+03 - 0.0000000e+00 2.6230434e+02 3.5607743e+03 - -1.8650872e+01 2.6224935e+02 3.5607869e+03 - -3.7143830e+01 2.6208733e+02 3.5608245e+03 - -5.5326922e+01 2.6182695e+02 3.5608867e+03 - -7.3059585e+01 2.6148194e+02 3.5609727e+03 - -9.0217120e+01 2.6107011e+02 3.5610813e+03 - -1.0669388e+02 2.6061216e+02 3.5612112e+03 - -1.2240510e+02 2.6013039e+02 3.5613610e+03 - -1.3728731e+02 2.5964746e+02 3.5615289e+03 - -1.5129768e+02 2.5918528e+02 3.5617131e+03 - -1.6441234e+02 2.5876412e+02 3.5619117e+03 - -1.7662418e+02 2.5840195e+02 3.5621229e+03 - -1.8794026e+02 2.5811399e+02 3.5623446e+03 - -1.9837913e+02 2.5791252e+02 3.5625750e+03 - -2.0796830e+02 2.5780685e+02 3.5628123e+03 - -2.1674182e+02 2.5780341e+02 3.5630545e+03 - -2.2473830e+02 2.5790596e+02 3.5633001e+03 - -2.3199910e+02 2.5811584e+02 3.5635472e+03 - -2.3856699e+02 2.5843227e+02 3.5637944e+03 - -2.4448496e+02 2.5885265e+02 3.5640401e+03 - -2.4979545e+02 2.5937284e+02 3.5642829e+03 - -2.5453968e+02 2.5998740e+02 3.5645215e+03 - -2.5875729e+02 2.6068987e+02 3.5647548e+03 - -2.6248597e+02 2.6147297e+02 3.5649814e+03 - -2.6576139e+02 2.6232873e+02 3.5652004e+03 - -2.6861712e+02 2.6324870e+02 3.5654108e+03 - -2.7108459e+02 2.6422400e+02 3.5656117e+03 - -2.7319319e+02 2.6524549e+02 3.5658022e+03 - -2.7497034e+02 2.6630377e+02 3.5659815e+03 - -2.7644159e+02 2.6738927e+02 3.5661490e+03 - -2.7763078e+02 2.6849230e+02 3.5663040e+03 - -2.7856010e+02 2.6960302e+02 3.5664459e+03 - -2.7925029e+02 2.7071149e+02 3.5665743e+03 - -2.7972071e+02 2.7180765e+02 3.5666886e+03 - -2.7998952e+02 2.7288133e+02 3.5667884e+03 - -2.8007375e+02 2.7392219e+02 3.5668735e+03 - -2.7998944e+02 2.7491973e+02 3.5669434e+03 - -2.7975174e+02 2.7586323e+02 3.5669981e+03 - -2.7937500e+02 2.7674173e+02 3.5670373e+03 - -2.7887286e+02 2.7754397e+02 3.5670609e+03 - -2.7825836e+02 2.7825836e+02 3.5670687e+03 - -2.7754397e+02 2.7887286e+02 3.5670609e+03 - -2.7674173e+02 2.7937500e+02 3.5670373e+03 - -2.7586323e+02 2.7975174e+02 3.5669981e+03 - -2.7491973e+02 2.7998944e+02 3.5669434e+03 - -2.7392219e+02 2.8007375e+02 3.5668735e+03 - -2.7288133e+02 2.7998952e+02 3.5667884e+03 - -2.7180765e+02 2.7972071e+02 3.5666886e+03 - -2.7071149e+02 2.7925029e+02 3.5665743e+03 - -2.6960302e+02 2.7856010e+02 3.5664459e+03 - -2.6849230e+02 2.7763078e+02 3.5663040e+03 - -2.6738927e+02 2.7644159e+02 3.5661490e+03 - -2.6630377e+02 2.7497034e+02 3.5659815e+03 - -2.6524549e+02 2.7319319e+02 3.5658022e+03 - -2.6422400e+02 2.7108459e+02 3.5656117e+03 - -2.6324870e+02 2.6861712e+02 3.5654108e+03 - -2.6232873e+02 2.6576139e+02 3.5652004e+03 - -2.6147297e+02 2.6248597e+02 3.5649814e+03 - -2.6068987e+02 2.5875729e+02 3.5647548e+03 - -2.5998740e+02 2.5453968e+02 3.5645215e+03 - -2.5937284e+02 2.4979545e+02 3.5642829e+03 - -2.5885265e+02 2.4448496e+02 3.5640401e+03 - -2.5843227e+02 2.3856699e+02 3.5637944e+03 - -2.5811584e+02 2.3199910e+02 3.5635472e+03 - -2.5790596e+02 2.2473830e+02 3.5633001e+03 - -2.5780341e+02 2.1674182e+02 3.5630545e+03 - -2.5780685e+02 2.0796830e+02 3.5628123e+03 - -2.5791252e+02 1.9837913e+02 3.5625750e+03 - -2.5811399e+02 1.8794026e+02 3.5623446e+03 - -2.5840195e+02 1.7662418e+02 3.5621229e+03 - -2.5876412e+02 1.6441234e+02 3.5619117e+03 - -2.5918528e+02 1.5129768e+02 3.5617131e+03 - -2.5964746e+02 1.3728731e+02 3.5615289e+03 - -2.6013039e+02 1.2240510e+02 3.5613610e+03 - -2.6061216e+02 1.0669388e+02 3.5612112e+03 - -2.6107011e+02 9.0217120e+01 3.5610813e+03 - -2.6148194e+02 7.3059585e+01 3.5609727e+03 - -2.6182695e+02 5.5326922e+01 3.5608867e+03 - -2.6208733e+02 3.7143830e+01 3.5608245e+03 - -2.6224935e+02 1.8650872e+01 3.5607869e+03 - -2.6230434e+02 0.0000000e+00 3.5607743e+03 - -2.9627928e+02 2.4067136e-09 3.5644439e+03 - -2.9621485e+02 -2.1917867e+01 3.5644617e+03 - -2.9602512e+02 -4.3645546e+01 3.5645150e+03 - -2.9572052e+02 -6.5000111e+01 3.5646029e+03 - -2.9531756e+02 -8.5812505e+01 3.5647243e+03 - -2.9483764e+02 -1.0593297e+02 3.5648778e+03 - -2.9430563e+02 -1.2523491e+02 3.5650612e+03 - -2.9374831e+02 -1.4361704e+02 3.5652725e+03 - -2.9319286e+02 -1.6100393e+02 3.5655093e+03 - -2.9266559e+02 -1.7734506e+02 3.5657688e+03 - -2.9219079e+02 -1.9261280e+02 3.5660485e+03 - -2.9179000e+02 -2.0679970e+02 3.5663456e+03 - -2.9148149e+02 -2.1991528e+02 3.5666573e+03 - -2.9128001e+02 -2.3198286e+02 3.5669810e+03 - -2.9119677e+02 -2.4303635e+02 3.5673141e+03 - -2.9123954e+02 -2.5311748e+02 3.5676539e+03 - -2.9141293e+02 -2.6227327e+02 3.5679980e+03 - -2.9171871e+02 -2.7055400e+02 3.5683441e+03 - -2.9215609e+02 -2.7801145e+02 3.5686901e+03 - -2.9272217e+02 -2.8469764e+02 3.5690337e+03 - -2.9341220e+02 -2.9066380e+02 3.5693732e+03 - -2.9421993e+02 -2.9595966e+02 3.5697065e+03 - -2.9513787e+02 -3.0063293e+02 3.5700322e+03 - -2.9615757e+02 -3.0472900e+02 3.5703484e+03 - -2.9726977e+02 -3.0829076e+02 3.5706539e+03 - -2.9846463e+02 -3.1135854e+02 3.5709472e+03 - -2.9973182e+02 -3.1397011e+02 3.5712270e+03 - -3.0106064e+02 -3.1616075e+02 3.5714923e+03 - -3.0244014e+02 -3.1796338e+02 3.5717420e+03 - -3.0385911e+02 -3.1940865e+02 3.5719751e+03 - -3.0530619e+02 -3.2052515e+02 3.5721907e+03 - -3.0676985e+02 -3.2133951e+02 3.5723880e+03 - -3.0823840e+02 -3.2187656e+02 3.5725665e+03 - -3.0970002e+02 -3.2215955e+02 3.5727253e+03 - -3.1114271e+02 -3.2221020e+02 3.5728641e+03 - -3.1255428e+02 -3.2204891e+02 3.5729823e+03 - -3.1392230e+02 -3.2169490e+02 3.5730795e+03 - -3.1523408e+02 -3.2116627e+02 3.5731554e+03 - -3.1647664e+02 -3.2048020e+02 3.5732099e+03 - -3.1763659e+02 -3.1965297e+02 3.5732426e+03 - -3.1870014e+02 -3.1870014e+02 3.5732535e+03 - -3.1965297e+02 -3.1763659e+02 3.5732426e+03 - -3.2048020e+02 -3.1647664e+02 3.5732099e+03 - -3.2116627e+02 -3.1523408e+02 3.5731554e+03 - -3.2169490e+02 -3.1392230e+02 3.5730795e+03 - -3.2204891e+02 -3.1255428e+02 3.5729823e+03 - -3.2221020e+02 -3.1114271e+02 3.5728641e+03 - -3.2215955e+02 -3.0970002e+02 3.5727253e+03 - -3.2187656e+02 -3.0823840e+02 3.5725665e+03 - -3.2133951e+02 -3.0676985e+02 3.5723880e+03 - -3.2052515e+02 -3.0530619e+02 3.5721907e+03 - -3.1940865e+02 -3.0385911e+02 3.5719751e+03 - -3.1796338e+02 -3.0244014e+02 3.5717420e+03 - -3.1616075e+02 -3.0106064e+02 3.5714923e+03 - -3.1397011e+02 -2.9973182e+02 3.5712270e+03 - -3.1135854e+02 -2.9846463e+02 3.5709472e+03 - -3.0829076e+02 -2.9726977e+02 3.5706539e+03 - -3.0472900e+02 -2.9615757e+02 3.5703484e+03 - -3.0063293e+02 -2.9513787e+02 3.5700322e+03 - -2.9595966e+02 -2.9421993e+02 3.5697065e+03 - -2.9066380e+02 -2.9341220e+02 3.5693732e+03 - -2.8469764e+02 -2.9272217e+02 3.5690337e+03 - -2.7801145e+02 -2.9215609e+02 3.5686901e+03 - -2.7055400e+02 -2.9171871e+02 3.5683441e+03 - -2.6227327e+02 -2.9141293e+02 3.5679980e+03 - -2.5311748e+02 -2.9123954e+02 3.5676539e+03 - -2.4303635e+02 -2.9119677e+02 3.5673141e+03 - -2.3198286e+02 -2.9128001e+02 3.5669810e+03 - -2.1991528e+02 -2.9148149e+02 3.5666573e+03 - -2.0679970e+02 -2.9179000e+02 3.5663456e+03 - -1.9261280e+02 -2.9219079e+02 3.5660485e+03 - -1.7734506e+02 -2.9266559e+02 3.5657688e+03 - -1.6100393e+02 -2.9319286e+02 3.5655093e+03 - -1.4361704e+02 -2.9374831e+02 3.5652725e+03 - -1.2523491e+02 -2.9430563e+02 3.5650612e+03 - -1.0593297e+02 -2.9483764e+02 3.5648778e+03 - -8.5812505e+01 -2.9531756e+02 3.5647243e+03 - -6.5000111e+01 -2.9572052e+02 3.5646029e+03 - -4.3645546e+01 -2.9602512e+02 3.5645150e+03 - -2.1917867e+01 -2.9621485e+02 3.5644617e+03 - -2.4067136e-09 -2.9627928e+02 3.5644439e+03 - 2.1917867e+01 -2.9621485e+02 3.5644617e+03 - 4.3645546e+01 -2.9602512e+02 3.5645150e+03 - 6.5000111e+01 -2.9572052e+02 3.5646029e+03 - 8.5812505e+01 -2.9531756e+02 3.5647243e+03 - 1.0593297e+02 -2.9483764e+02 3.5648778e+03 - 1.2523491e+02 -2.9430563e+02 3.5650612e+03 - 1.4361704e+02 -2.9374831e+02 3.5652725e+03 - 1.6100393e+02 -2.9319286e+02 3.5655093e+03 - 1.7734506e+02 -2.9266559e+02 3.5657688e+03 - 1.9261280e+02 -2.9219079e+02 3.5660485e+03 - 2.0679970e+02 -2.9179000e+02 3.5663456e+03 - 2.1991528e+02 -2.9148149e+02 3.5666573e+03 - 2.3198286e+02 -2.9128001e+02 3.5669810e+03 - 2.4303635e+02 -2.9119677e+02 3.5673141e+03 - 2.5311748e+02 -2.9123954e+02 3.5676539e+03 - 2.6227327e+02 -2.9141293e+02 3.5679980e+03 - 2.7055400e+02 -2.9171871e+02 3.5683441e+03 - 2.7801145e+02 -2.9215609e+02 3.5686901e+03 - 2.8469764e+02 -2.9272217e+02 3.5690337e+03 - 2.9066380e+02 -2.9341220e+02 3.5693732e+03 - 2.9595966e+02 -2.9421993e+02 3.5697065e+03 - 3.0063293e+02 -2.9513787e+02 3.5700322e+03 - 3.0472900e+02 -2.9615757e+02 3.5703484e+03 - 3.0829076e+02 -2.9726977e+02 3.5706539e+03 - 3.1135854e+02 -2.9846463e+02 3.5709472e+03 - 3.1397011e+02 -2.9973182e+02 3.5712270e+03 - 3.1616075e+02 -3.0106064e+02 3.5714923e+03 - 3.1796338e+02 -3.0244014e+02 3.5717420e+03 - 3.1940865e+02 -3.0385911e+02 3.5719751e+03 - 3.2052515e+02 -3.0530619e+02 3.5721907e+03 - 3.2133951e+02 -3.0676985e+02 3.5723880e+03 - 3.2187656e+02 -3.0823840e+02 3.5725665e+03 - 3.2215955e+02 -3.0970002e+02 3.5727253e+03 - 3.2221020e+02 -3.1114271e+02 3.5728641e+03 - 3.2204891e+02 -3.1255428e+02 3.5729823e+03 - 3.2169490e+02 -3.1392230e+02 3.5730795e+03 - 3.2116627e+02 -3.1523408e+02 3.5731554e+03 - 3.2048020e+02 -3.1647664e+02 3.5732099e+03 - 3.1965297e+02 -3.1763659e+02 3.5732426e+03 - 3.1870014e+02 -3.1870014e+02 3.5732535e+03 - 3.1763659e+02 -3.1965297e+02 3.5732426e+03 - 3.1647664e+02 -3.2048020e+02 3.5732099e+03 - 3.1523408e+02 -3.2116627e+02 3.5731554e+03 - 3.1392230e+02 -3.2169490e+02 3.5730795e+03 - 3.1255428e+02 -3.2204891e+02 3.5729823e+03 - 3.1114271e+02 -3.2221020e+02 3.5728641e+03 - 3.0970002e+02 -3.2215955e+02 3.5727253e+03 - 3.0823840e+02 -3.2187656e+02 3.5725665e+03 - 3.0676985e+02 -3.2133951e+02 3.5723880e+03 - 3.0530619e+02 -3.2052515e+02 3.5721907e+03 - 3.0385911e+02 -3.1940865e+02 3.5719751e+03 - 3.0244014e+02 -3.1796338e+02 3.5717420e+03 - 3.0106064e+02 -3.1616075e+02 3.5714923e+03 - 2.9973182e+02 -3.1397011e+02 3.5712270e+03 - 2.9846463e+02 -3.1135854e+02 3.5709472e+03 - 2.9726977e+02 -3.0829076e+02 3.5706539e+03 - 2.9615757e+02 -3.0472900e+02 3.5703484e+03 - 2.9513787e+02 -3.0063293e+02 3.5700322e+03 - 2.9421993e+02 -2.9595966e+02 3.5697065e+03 - 2.9341220e+02 -2.9066380e+02 3.5693732e+03 - 2.9272217e+02 -2.8469764e+02 3.5690337e+03 - 2.9215609e+02 -2.7801145e+02 3.5686901e+03 - 2.9171871e+02 -2.7055400e+02 3.5683441e+03 - 2.9141293e+02 -2.6227327e+02 3.5679980e+03 - 2.9123954e+02 -2.5311748e+02 3.5676539e+03 - 2.9119677e+02 -2.4303635e+02 3.5673141e+03 - 2.9128001e+02 -2.3198286e+02 3.5669810e+03 - 2.9148149e+02 -2.1991528e+02 3.5666573e+03 - 2.9179000e+02 -2.0679970e+02 3.5663456e+03 - 2.9219079e+02 -1.9261280e+02 3.5660485e+03 - 2.9266559e+02 -1.7734506e+02 3.5657688e+03 - 2.9319286e+02 -1.6100393e+02 3.5655093e+03 - 2.9374831e+02 -1.4361704e+02 3.5652725e+03 - 2.9430563e+02 -1.2523491e+02 3.5650612e+03 - 2.9483764e+02 -1.0593297e+02 3.5648778e+03 - 2.9531756e+02 -8.5812505e+01 3.5647243e+03 - 2.9572052e+02 -6.5000111e+01 3.5646029e+03 - 2.9602512e+02 -4.3645546e+01 3.5645150e+03 - 2.9621485e+02 -2.1917867e+01 3.5644617e+03 - 2.9627928e+02 -2.4067136e-09 3.5644439e+03 - 2.9621485e+02 2.1917867e+01 3.5644617e+03 - 2.9602512e+02 4.3645546e+01 3.5645150e+03 - 2.9572052e+02 6.5000111e+01 3.5646029e+03 - 2.9531756e+02 8.5812505e+01 3.5647243e+03 - 2.9483764e+02 1.0593297e+02 3.5648778e+03 - 2.9430563e+02 1.2523491e+02 3.5650612e+03 - 2.9374831e+02 1.4361704e+02 3.5652725e+03 - 2.9319286e+02 1.6100393e+02 3.5655093e+03 - 2.9266559e+02 1.7734506e+02 3.5657688e+03 - 2.9219079e+02 1.9261280e+02 3.5660485e+03 - 2.9179000e+02 2.0679970e+02 3.5663456e+03 - 2.9148149e+02 2.1991528e+02 3.5666573e+03 - 2.9128001e+02 2.3198286e+02 3.5669810e+03 - 2.9119677e+02 2.4303635e+02 3.5673141e+03 - 2.9123954e+02 2.5311748e+02 3.5676539e+03 - 2.9141293e+02 2.6227327e+02 3.5679980e+03 - 2.9171871e+02 2.7055400e+02 3.5683441e+03 - 2.9215609e+02 2.7801145e+02 3.5686901e+03 - 2.9272217e+02 2.8469764e+02 3.5690337e+03 - 2.9341220e+02 2.9066380e+02 3.5693732e+03 - 2.9421993e+02 2.9595966e+02 3.5697065e+03 - 2.9513787e+02 3.0063293e+02 3.5700322e+03 - 2.9615757e+02 3.0472900e+02 3.5703484e+03 - 2.9726977e+02 3.0829076e+02 3.5706539e+03 - 2.9846463e+02 3.1135854e+02 3.5709472e+03 - 2.9973182e+02 3.1397011e+02 3.5712270e+03 - 3.0106064e+02 3.1616075e+02 3.5714923e+03 - 3.0244014e+02 3.1796338e+02 3.5717420e+03 - 3.0385911e+02 3.1940865e+02 3.5719751e+03 - 3.0530619e+02 3.2052515e+02 3.5721907e+03 - 3.0676985e+02 3.2133951e+02 3.5723880e+03 - 3.0823840e+02 3.2187656e+02 3.5725665e+03 - 3.0970002e+02 3.2215955e+02 3.5727253e+03 - 3.1114271e+02 3.2221020e+02 3.5728641e+03 - 3.1255428e+02 3.2204891e+02 3.5729823e+03 - 3.1392230e+02 3.2169490e+02 3.5730795e+03 - 3.1523408e+02 3.2116627e+02 3.5731554e+03 - 3.1647664e+02 3.2048020e+02 3.5732099e+03 - 3.1763659e+02 3.1965297e+02 3.5732426e+03 - 3.1870014e+02 3.1870014e+02 3.5732535e+03 - 3.1965297e+02 3.1763659e+02 3.5732426e+03 - 3.2048020e+02 3.1647664e+02 3.5732099e+03 - 3.2116627e+02 3.1523408e+02 3.5731554e+03 - 3.2169490e+02 3.1392230e+02 3.5730795e+03 - 3.2204891e+02 3.1255428e+02 3.5729823e+03 - 3.2221020e+02 3.1114271e+02 3.5728641e+03 - 3.2215955e+02 3.0970002e+02 3.5727253e+03 - 3.2187656e+02 3.0823840e+02 3.5725665e+03 - 3.2133951e+02 3.0676985e+02 3.5723880e+03 - 3.2052515e+02 3.0530619e+02 3.5721907e+03 - 3.1940865e+02 3.0385911e+02 3.5719751e+03 - 3.1796338e+02 3.0244014e+02 3.5717420e+03 - 3.1616075e+02 3.0106064e+02 3.5714923e+03 - 3.1397011e+02 2.9973182e+02 3.5712270e+03 - 3.1135854e+02 2.9846463e+02 3.5709472e+03 - 3.0829076e+02 2.9726977e+02 3.5706539e+03 - 3.0472900e+02 2.9615757e+02 3.5703484e+03 - 3.0063293e+02 2.9513787e+02 3.5700322e+03 - 2.9595966e+02 2.9421993e+02 3.5697065e+03 - 2.9066380e+02 2.9341220e+02 3.5693732e+03 - 2.8469764e+02 2.9272217e+02 3.5690337e+03 - 2.7801145e+02 2.9215609e+02 3.5686901e+03 - 2.7055400e+02 2.9171871e+02 3.5683441e+03 - 2.6227327e+02 2.9141293e+02 3.5679980e+03 - 2.5311748e+02 2.9123954e+02 3.5676539e+03 - 2.4303635e+02 2.9119677e+02 3.5673141e+03 - 2.3198286e+02 2.9128001e+02 3.5669810e+03 - 2.1991528e+02 2.9148149e+02 3.5666573e+03 - 2.0679970e+02 2.9179000e+02 3.5663456e+03 - 1.9261280e+02 2.9219079e+02 3.5660485e+03 - 1.7734506e+02 2.9266559e+02 3.5657688e+03 - 1.6100393e+02 2.9319286e+02 3.5655093e+03 - 1.4361704e+02 2.9374831e+02 3.5652725e+03 - 1.2523491e+02 2.9430563e+02 3.5650612e+03 - 1.0593297e+02 2.9483764e+02 3.5648778e+03 - 8.5812505e+01 2.9531756e+02 3.5647243e+03 - 6.5000111e+01 2.9572052e+02 3.5646029e+03 - 4.3645546e+01 2.9602512e+02 3.5645150e+03 - 2.1917867e+01 2.9621485e+02 3.5644617e+03 - 7.2201409e-09 2.9627928e+02 3.5644439e+03 - -2.1917867e+01 2.9621485e+02 3.5644617e+03 - -4.3645546e+01 2.9602512e+02 3.5645150e+03 - -6.5000111e+01 2.9572052e+02 3.5646029e+03 - -8.5812505e+01 2.9531756e+02 3.5647243e+03 - -1.0593297e+02 2.9483764e+02 3.5648778e+03 - -1.2523491e+02 2.9430563e+02 3.5650612e+03 - -1.4361704e+02 2.9374831e+02 3.5652725e+03 - -1.6100393e+02 2.9319286e+02 3.5655093e+03 - -1.7734506e+02 2.9266559e+02 3.5657688e+03 - -1.9261280e+02 2.9219079e+02 3.5660485e+03 - -2.0679970e+02 2.9179000e+02 3.5663456e+03 - -2.1991528e+02 2.9148149e+02 3.5666573e+03 - -2.3198286e+02 2.9128001e+02 3.5669810e+03 - -2.4303635e+02 2.9119677e+02 3.5673141e+03 - -2.5311748e+02 2.9123954e+02 3.5676539e+03 - -2.6227327e+02 2.9141293e+02 3.5679980e+03 - -2.7055400e+02 2.9171871e+02 3.5683441e+03 - -2.7801145e+02 2.9215609e+02 3.5686901e+03 - -2.8469764e+02 2.9272217e+02 3.5690337e+03 - -2.9066380e+02 2.9341220e+02 3.5693732e+03 - -2.9595966e+02 2.9421993e+02 3.5697065e+03 - -3.0063293e+02 2.9513787e+02 3.5700322e+03 - -3.0472900e+02 2.9615757e+02 3.5703484e+03 - -3.0829076e+02 2.9726977e+02 3.5706539e+03 - -3.1135854e+02 2.9846463e+02 3.5709472e+03 - -3.1397011e+02 2.9973182e+02 3.5712270e+03 - -3.1616075e+02 3.0106064e+02 3.5714923e+03 - -3.1796338e+02 3.0244014e+02 3.5717420e+03 - -3.1940865e+02 3.0385911e+02 3.5719751e+03 - -3.2052515e+02 3.0530619e+02 3.5721907e+03 - -3.2133951e+02 3.0676985e+02 3.5723880e+03 - -3.2187656e+02 3.0823840e+02 3.5725665e+03 - -3.2215955e+02 3.0970002e+02 3.5727253e+03 - -3.2221020e+02 3.1114271e+02 3.5728641e+03 - -3.2204891e+02 3.1255428e+02 3.5729823e+03 - -3.2169490e+02 3.1392230e+02 3.5730795e+03 - -3.2116627e+02 3.1523408e+02 3.5731554e+03 - -3.2048020e+02 3.1647664e+02 3.5732099e+03 - -3.1965297e+02 3.1763659e+02 3.5732426e+03 - -3.1870014e+02 3.1870014e+02 3.5732535e+03 - -3.1763659e+02 3.1965297e+02 3.5732426e+03 - -3.1647664e+02 3.2048020e+02 3.5732099e+03 - -3.1523408e+02 3.2116627e+02 3.5731554e+03 - -3.1392230e+02 3.2169490e+02 3.5730795e+03 - -3.1255428e+02 3.2204891e+02 3.5729823e+03 - -3.1114271e+02 3.2221020e+02 3.5728641e+03 - -3.0970002e+02 3.2215955e+02 3.5727253e+03 - -3.0823840e+02 3.2187656e+02 3.5725665e+03 - -3.0676985e+02 3.2133951e+02 3.5723880e+03 - -3.0530619e+02 3.2052515e+02 3.5721907e+03 - -3.0385911e+02 3.1940865e+02 3.5719751e+03 - -3.0244014e+02 3.1796338e+02 3.5717420e+03 - -3.0106064e+02 3.1616075e+02 3.5714923e+03 - -2.9973182e+02 3.1397011e+02 3.5712270e+03 - -2.9846463e+02 3.1135854e+02 3.5709472e+03 - -2.9726977e+02 3.0829076e+02 3.5706539e+03 - -2.9615757e+02 3.0472900e+02 3.5703484e+03 - -2.9513787e+02 3.0063293e+02 3.5700322e+03 - -2.9421993e+02 2.9595966e+02 3.5697065e+03 - -2.9341220e+02 2.9066380e+02 3.5693732e+03 - -2.9272217e+02 2.8469764e+02 3.5690337e+03 - -2.9215609e+02 2.7801145e+02 3.5686901e+03 - -2.9171871e+02 2.7055400e+02 3.5683441e+03 - -2.9141293e+02 2.6227327e+02 3.5679980e+03 - -2.9123954e+02 2.5311748e+02 3.5676539e+03 - -2.9119677e+02 2.4303635e+02 3.5673141e+03 - -2.9128001e+02 2.3198286e+02 3.5669810e+03 - -2.9148149e+02 2.1991528e+02 3.5666573e+03 - -2.9179000e+02 2.0679970e+02 3.5663456e+03 - -2.9219079e+02 1.9261280e+02 3.5660485e+03 - -2.9266559e+02 1.7734506e+02 3.5657688e+03 - -2.9319286e+02 1.6100393e+02 3.5655093e+03 - -2.9374831e+02 1.4361704e+02 3.5652725e+03 - -2.9430563e+02 1.2523491e+02 3.5650612e+03 - -2.9483764e+02 1.0593297e+02 3.5648778e+03 - -2.9531756e+02 8.5812505e+01 3.5647243e+03 - -2.9572052e+02 6.5000111e+01 3.5646029e+03 - -2.9602512e+02 4.3645546e+01 3.5645150e+03 - -2.9621485e+02 2.1917867e+01 3.5644617e+03 - -2.9627928e+02 -2.4067136e-09 3.5644439e+03 - -3.2155341e+02 2.4067136e-09 3.5676723e+03 - -3.2148047e+02 -2.4969217e+01 3.5676961e+03 - -3.2126583e+02 -4.9715555e+01 3.5677672e+03 - -3.2092167e+02 -7.4024756e+01 3.5678845e+03 - -3.2046729e+02 -9.7699029e+01 3.5680465e+03 - -3.1992770e+02 -1.2056346e+02 3.5682510e+03 - -3.1933193e+02 -1.4247058e+02 3.5684955e+03 - -3.1871121e+02 -1.6330285e+02 3.5687768e+03 - -3.1809726e+02 -1.8297319e+02 3.5690917e+03 - -3.1752069e+02 -2.0142391e+02 3.5694368e+03 - -3.1700982e+02 -2.1862416e+02 3.5698082e+03 - -3.1658970e+02 -2.3456671e+02 3.5702025e+03 - -3.1628162e+02 -2.4926414e+02 3.5706158e+03 - -3.1610274e+02 -2.6274502e+02 3.5710446e+03 - -3.1606616e+02 -2.7505021e+02 3.5714853e+03 - -3.1618101e+02 -2.8622950e+02 3.5719346e+03 - -3.1645276e+02 -2.9633875e+02 3.5723893e+03 - -3.1688360e+02 -3.0543738e+02 3.5728462e+03 - -3.1747284e+02 -3.1358651e+02 3.5733024e+03 - -3.1821731e+02 -3.2084732e+02 3.5737553e+03 - -3.1911175e+02 -3.2728000e+02 3.5742023e+03 - -3.2014916e+02 -3.3294285e+02 3.5746410e+03 - -3.2132118e+02 -3.3789177e+02 3.5750691e+03 - -3.2261827e+02 -3.4217985e+02 3.5754848e+03 - -3.2403001e+02 -3.4585724e+02 3.5758859e+03 - -3.2554531e+02 -3.4897102e+02 3.5762709e+03 - -3.2715248e+02 -3.5156530e+02 3.5766380e+03 - -3.2883943e+02 -3.5368122e+02 3.5769859e+03 - -3.3059375e+02 -3.5535718e+02 3.5773131e+03 - -3.3240275e+02 -3.5662891e+02 3.5776185e+03 - -3.3425350e+02 -3.5752970e+02 3.5779008e+03 - -3.3613290e+02 -3.5809057e+02 3.5781592e+03 - -3.3802764e+02 -3.5834045e+02 3.5783927e+03 - -3.3992421e+02 -3.5830638e+02 3.5786005e+03 - -3.4180891e+02 -3.5801365e+02 3.5787820e+03 - -3.4366777e+02 -3.5748598e+02 3.5789366e+03 - -3.4548654e+02 -3.5674570e+02 3.5790637e+03 - -3.4725065e+02 -3.5581385e+02 3.5791630e+03 - -3.4894514e+02 -3.5471034e+02 3.5792341e+03 - -3.5055460e+02 -3.5345408e+02 3.5792769e+03 - -3.5206309e+02 -3.5206309e+02 3.5792912e+03 - -3.5345408e+02 -3.5055460e+02 3.5792769e+03 - -3.5471034e+02 -3.4894514e+02 3.5792341e+03 - -3.5581385e+02 -3.4725065e+02 3.5791630e+03 - -3.5674570e+02 -3.4548654e+02 3.5790637e+03 - -3.5748598e+02 -3.4366777e+02 3.5789366e+03 - -3.5801365e+02 -3.4180891e+02 3.5787820e+03 - -3.5830638e+02 -3.3992421e+02 3.5786005e+03 - -3.5834045e+02 -3.3802764e+02 3.5783927e+03 - -3.5809057e+02 -3.3613290e+02 3.5781592e+03 - -3.5752970e+02 -3.3425350e+02 3.5779008e+03 - -3.5662891e+02 -3.3240275e+02 3.5776185e+03 - -3.5535718e+02 -3.3059375e+02 3.5773131e+03 - -3.5368122e+02 -3.2883943e+02 3.5769859e+03 - -3.5156530e+02 -3.2715248e+02 3.5766380e+03 - -3.4897102e+02 -3.2554531e+02 3.5762709e+03 - -3.4585724e+02 -3.2403001e+02 3.5758859e+03 - -3.4217985e+02 -3.2261827e+02 3.5754848e+03 - -3.3789177e+02 -3.2132118e+02 3.5750691e+03 - -3.3294285e+02 -3.2014916e+02 3.5746410e+03 - -3.2728000e+02 -3.1911175e+02 3.5742023e+03 - -3.2084732e+02 -3.1821731e+02 3.5737553e+03 - -3.1358651e+02 -3.1747284e+02 3.5733024e+03 - -3.0543738e+02 -3.1688360e+02 3.5728462e+03 - -2.9633875e+02 -3.1645276e+02 3.5723893e+03 - -2.8622950e+02 -3.1618101e+02 3.5719346e+03 - -2.7505021e+02 -3.1606616e+02 3.5714853e+03 - -2.6274502e+02 -3.1610274e+02 3.5710446e+03 - -2.4926414e+02 -3.1628162e+02 3.5706158e+03 - -2.3456671e+02 -3.1658970e+02 3.5702025e+03 - -2.1862416e+02 -3.1700982e+02 3.5698082e+03 - -2.0142391e+02 -3.1752069e+02 3.5694368e+03 - -1.8297319e+02 -3.1809726e+02 3.5690917e+03 - -1.6330285e+02 -3.1871121e+02 3.5687768e+03 - -1.4247058e+02 -3.1933193e+02 3.5684955e+03 - -1.2056346e+02 -3.1992770e+02 3.5682510e+03 - -9.7699029e+01 -3.2046729e+02 3.5680465e+03 - -7.4024756e+01 -3.2092167e+02 3.5678845e+03 - -4.9715555e+01 -3.2126583e+02 3.5677672e+03 - -2.4969217e+01 -3.2148047e+02 3.5676961e+03 - 2.4067136e-09 -3.2155341e+02 3.5676723e+03 - 2.4969217e+01 -3.2148047e+02 3.5676961e+03 - 4.9715555e+01 -3.2126583e+02 3.5677672e+03 - 7.4024756e+01 -3.2092167e+02 3.5678845e+03 - 9.7699029e+01 -3.2046729e+02 3.5680465e+03 - 1.2056346e+02 -3.1992770e+02 3.5682510e+03 - 1.4247058e+02 -3.1933193e+02 3.5684955e+03 - 1.6330285e+02 -3.1871121e+02 3.5687768e+03 - 1.8297319e+02 -3.1809726e+02 3.5690917e+03 - 2.0142391e+02 -3.1752069e+02 3.5694368e+03 - 2.1862416e+02 -3.1700982e+02 3.5698082e+03 - 2.3456671e+02 -3.1658970e+02 3.5702025e+03 - 2.4926414e+02 -3.1628162e+02 3.5706158e+03 - 2.6274502e+02 -3.1610274e+02 3.5710446e+03 - 2.7505021e+02 -3.1606616e+02 3.5714853e+03 - 2.8622950e+02 -3.1618101e+02 3.5719346e+03 - 2.9633875e+02 -3.1645276e+02 3.5723893e+03 - 3.0543738e+02 -3.1688360e+02 3.5728462e+03 - 3.1358651e+02 -3.1747284e+02 3.5733024e+03 - 3.2084732e+02 -3.1821731e+02 3.5737553e+03 - 3.2728000e+02 -3.1911175e+02 3.5742023e+03 - 3.3294285e+02 -3.2014916e+02 3.5746410e+03 - 3.3789177e+02 -3.2132118e+02 3.5750691e+03 - 3.4217985e+02 -3.2261827e+02 3.5754848e+03 - 3.4585724e+02 -3.2403001e+02 3.5758859e+03 - 3.4897102e+02 -3.2554531e+02 3.5762709e+03 - 3.5156530e+02 -3.2715248e+02 3.5766380e+03 - 3.5368122e+02 -3.2883943e+02 3.5769859e+03 - 3.5535718e+02 -3.3059375e+02 3.5773131e+03 - 3.5662891e+02 -3.3240275e+02 3.5776185e+03 - 3.5752970e+02 -3.3425350e+02 3.5779008e+03 - 3.5809057e+02 -3.3613290e+02 3.5781592e+03 - 3.5834045e+02 -3.3802764e+02 3.5783927e+03 - 3.5830638e+02 -3.3992421e+02 3.5786005e+03 - 3.5801365e+02 -3.4180891e+02 3.5787820e+03 - 3.5748598e+02 -3.4366777e+02 3.5789366e+03 - 3.5674570e+02 -3.4548654e+02 3.5790637e+03 - 3.5581385e+02 -3.4725065e+02 3.5791630e+03 - 3.5471034e+02 -3.4894514e+02 3.5792341e+03 - 3.5345408e+02 -3.5055460e+02 3.5792769e+03 - 3.5206309e+02 -3.5206309e+02 3.5792912e+03 - 3.5055460e+02 -3.5345408e+02 3.5792769e+03 - 3.4894514e+02 -3.5471034e+02 3.5792341e+03 - 3.4725065e+02 -3.5581385e+02 3.5791630e+03 - 3.4548654e+02 -3.5674570e+02 3.5790637e+03 - 3.4366777e+02 -3.5748598e+02 3.5789366e+03 - 3.4180891e+02 -3.5801365e+02 3.5787820e+03 - 3.3992421e+02 -3.5830638e+02 3.5786005e+03 - 3.3802764e+02 -3.5834045e+02 3.5783927e+03 - 3.3613290e+02 -3.5809057e+02 3.5781592e+03 - 3.3425350e+02 -3.5752970e+02 3.5779008e+03 - 3.3240275e+02 -3.5662891e+02 3.5776185e+03 - 3.3059375e+02 -3.5535718e+02 3.5773131e+03 - 3.2883943e+02 -3.5368122e+02 3.5769859e+03 - 3.2715248e+02 -3.5156530e+02 3.5766380e+03 - 3.2554531e+02 -3.4897102e+02 3.5762709e+03 - 3.2403001e+02 -3.4585724e+02 3.5758859e+03 - 3.2261827e+02 -3.4217985e+02 3.5754848e+03 - 3.2132118e+02 -3.3789177e+02 3.5750691e+03 - 3.2014916e+02 -3.3294285e+02 3.5746410e+03 - 3.1911175e+02 -3.2728000e+02 3.5742023e+03 - 3.1821731e+02 -3.2084732e+02 3.5737553e+03 - 3.1747284e+02 -3.1358651e+02 3.5733024e+03 - 3.1688360e+02 -3.0543738e+02 3.5728462e+03 - 3.1645276e+02 -2.9633875e+02 3.5723893e+03 - 3.1618101e+02 -2.8622950e+02 3.5719346e+03 - 3.1606616e+02 -2.7505021e+02 3.5714853e+03 - 3.1610274e+02 -2.6274502e+02 3.5710446e+03 - 3.1628162e+02 -2.4926414e+02 3.5706158e+03 - 3.1658970e+02 -2.3456671e+02 3.5702025e+03 - 3.1700982e+02 -2.1862416e+02 3.5698082e+03 - 3.1752069e+02 -2.0142391e+02 3.5694368e+03 - 3.1809726e+02 -1.8297319e+02 3.5690917e+03 - 3.1871121e+02 -1.6330285e+02 3.5687768e+03 - 3.1933193e+02 -1.4247058e+02 3.5684955e+03 - 3.1992770e+02 -1.2056346e+02 3.5682510e+03 - 3.2046729e+02 -9.7699029e+01 3.5680465e+03 - 3.2092167e+02 -7.4024756e+01 3.5678845e+03 - 3.2126583e+02 -4.9715555e+01 3.5677672e+03 - 3.2148047e+02 -2.4969217e+01 3.5676961e+03 - 3.2155341e+02 -7.2201409e-09 3.5676723e+03 - 3.2148047e+02 2.4969217e+01 3.5676961e+03 - 3.2126583e+02 4.9715555e+01 3.5677672e+03 - 3.2092167e+02 7.4024756e+01 3.5678845e+03 - 3.2046729e+02 9.7699029e+01 3.5680465e+03 - 3.1992770e+02 1.2056346e+02 3.5682510e+03 - 3.1933193e+02 1.4247058e+02 3.5684955e+03 - 3.1871121e+02 1.6330285e+02 3.5687768e+03 - 3.1809726e+02 1.8297319e+02 3.5690917e+03 - 3.1752069e+02 2.0142391e+02 3.5694368e+03 - 3.1700982e+02 2.1862416e+02 3.5698082e+03 - 3.1658970e+02 2.3456671e+02 3.5702025e+03 - 3.1628162e+02 2.4926414e+02 3.5706158e+03 - 3.1610274e+02 2.6274502e+02 3.5710446e+03 - 3.1606616e+02 2.7505021e+02 3.5714853e+03 - 3.1618101e+02 2.8622950e+02 3.5719346e+03 - 3.1645276e+02 2.9633875e+02 3.5723893e+03 - 3.1688360e+02 3.0543738e+02 3.5728462e+03 - 3.1747284e+02 3.1358651e+02 3.5733024e+03 - 3.1821731e+02 3.2084732e+02 3.5737553e+03 - 3.1911175e+02 3.2728000e+02 3.5742023e+03 - 3.2014916e+02 3.3294285e+02 3.5746410e+03 - 3.2132118e+02 3.3789177e+02 3.5750691e+03 - 3.2261827e+02 3.4217985e+02 3.5754848e+03 - 3.2403001e+02 3.4585724e+02 3.5758859e+03 - 3.2554531e+02 3.4897102e+02 3.5762709e+03 - 3.2715248e+02 3.5156530e+02 3.5766380e+03 - 3.2883943e+02 3.5368122e+02 3.5769859e+03 - 3.3059375e+02 3.5535718e+02 3.5773131e+03 - 3.3240275e+02 3.5662891e+02 3.5776185e+03 - 3.3425350e+02 3.5752970e+02 3.5779008e+03 - 3.3613290e+02 3.5809057e+02 3.5781592e+03 - 3.3802764e+02 3.5834045e+02 3.5783927e+03 - 3.3992421e+02 3.5830638e+02 3.5786005e+03 - 3.4180891e+02 3.5801365e+02 3.5787820e+03 - 3.4366777e+02 3.5748598e+02 3.5789366e+03 - 3.4548654e+02 3.5674570e+02 3.5790637e+03 - 3.4725065e+02 3.5581385e+02 3.5791630e+03 - 3.4894514e+02 3.5471034e+02 3.5792341e+03 - 3.5055460e+02 3.5345408e+02 3.5792769e+03 - 3.5206309e+02 3.5206309e+02 3.5792912e+03 - 3.5345408e+02 3.5055460e+02 3.5792769e+03 - 3.5471034e+02 3.4894514e+02 3.5792341e+03 - 3.5581385e+02 3.4725065e+02 3.5791630e+03 - 3.5674570e+02 3.4548654e+02 3.5790637e+03 - 3.5748598e+02 3.4366777e+02 3.5789366e+03 - 3.5801365e+02 3.4180891e+02 3.5787820e+03 - 3.5830638e+02 3.3992421e+02 3.5786005e+03 - 3.5834045e+02 3.3802764e+02 3.5783927e+03 - 3.5809057e+02 3.3613290e+02 3.5781592e+03 - 3.5752970e+02 3.3425350e+02 3.5779008e+03 - 3.5662891e+02 3.3240275e+02 3.5776185e+03 - 3.5535718e+02 3.3059375e+02 3.5773131e+03 - 3.5368122e+02 3.2883943e+02 3.5769859e+03 - 3.5156530e+02 3.2715248e+02 3.5766380e+03 - 3.4897102e+02 3.2554531e+02 3.5762709e+03 - 3.4585724e+02 3.2403001e+02 3.5758859e+03 - 3.4217985e+02 3.2261827e+02 3.5754848e+03 - 3.3789177e+02 3.2132118e+02 3.5750691e+03 - 3.3294285e+02 3.2014916e+02 3.5746410e+03 - 3.2728000e+02 3.1911175e+02 3.5742023e+03 - 3.2084732e+02 3.1821731e+02 3.5737553e+03 - 3.1358651e+02 3.1747284e+02 3.5733024e+03 - 3.0543738e+02 3.1688360e+02 3.5728462e+03 - 2.9633875e+02 3.1645276e+02 3.5723893e+03 - 2.8622950e+02 3.1618101e+02 3.5719346e+03 - 2.7505021e+02 3.1606616e+02 3.5714853e+03 - 2.6274502e+02 3.1610274e+02 3.5710446e+03 - 2.4926414e+02 3.1628162e+02 3.5706158e+03 - 2.3456671e+02 3.1658970e+02 3.5702025e+03 - 2.1862416e+02 3.1700982e+02 3.5698082e+03 - 2.0142391e+02 3.1752069e+02 3.5694368e+03 - 1.8297319e+02 3.1809726e+02 3.5690917e+03 - 1.6330285e+02 3.1871121e+02 3.5687768e+03 - 1.4247058e+02 3.1933193e+02 3.5684955e+03 - 1.2056346e+02 3.1992770e+02 3.5682510e+03 - 9.7699029e+01 3.2046729e+02 3.5680465e+03 - 7.4024756e+01 3.2092167e+02 3.5678845e+03 - 4.9715555e+01 3.2126583e+02 3.5677672e+03 - 2.4969217e+01 3.2148047e+02 3.5676961e+03 - -7.2201409e-09 3.2155341e+02 3.5676723e+03 - -2.4969217e+01 3.2148047e+02 3.5676961e+03 - -4.9715555e+01 3.2126583e+02 3.5677672e+03 - -7.4024756e+01 3.2092167e+02 3.5678845e+03 - -9.7699029e+01 3.2046729e+02 3.5680465e+03 - -1.2056346e+02 3.1992770e+02 3.5682510e+03 - -1.4247058e+02 3.1933193e+02 3.5684955e+03 - -1.6330285e+02 3.1871121e+02 3.5687768e+03 - -1.8297319e+02 3.1809726e+02 3.5690917e+03 - -2.0142391e+02 3.1752069e+02 3.5694368e+03 - -2.1862416e+02 3.1700982e+02 3.5698082e+03 - -2.3456671e+02 3.1658970e+02 3.5702025e+03 - -2.4926414e+02 3.1628162e+02 3.5706158e+03 - -2.6274502e+02 3.1610274e+02 3.5710446e+03 - -2.7505021e+02 3.1606616e+02 3.5714853e+03 - -2.8622950e+02 3.1618101e+02 3.5719346e+03 - -2.9633875e+02 3.1645276e+02 3.5723893e+03 - -3.0543738e+02 3.1688360e+02 3.5728462e+03 - -3.1358651e+02 3.1747284e+02 3.5733024e+03 - -3.2084732e+02 3.1821731e+02 3.5737553e+03 - -3.2728000e+02 3.1911175e+02 3.5742023e+03 - -3.3294285e+02 3.2014916e+02 3.5746410e+03 - -3.3789177e+02 3.2132118e+02 3.5750691e+03 - -3.4217985e+02 3.2261827e+02 3.5754848e+03 - -3.4585724e+02 3.2403001e+02 3.5758859e+03 - -3.4897102e+02 3.2554531e+02 3.5762709e+03 - -3.5156530e+02 3.2715248e+02 3.5766380e+03 - -3.5368122e+02 3.2883943e+02 3.5769859e+03 - -3.5535718e+02 3.3059375e+02 3.5773131e+03 - -3.5662891e+02 3.3240275e+02 3.5776185e+03 - -3.5752970e+02 3.3425350e+02 3.5779008e+03 - -3.5809057e+02 3.3613290e+02 3.5781592e+03 - -3.5834045e+02 3.3802764e+02 3.5783927e+03 - -3.5830638e+02 3.3992421e+02 3.5786005e+03 - -3.5801365e+02 3.4180891e+02 3.5787820e+03 - -3.5748598e+02 3.4366777e+02 3.5789366e+03 - -3.5674570e+02 3.4548654e+02 3.5790637e+03 - -3.5581385e+02 3.4725065e+02 3.5791630e+03 - -3.5471034e+02 3.4894514e+02 3.5792341e+03 - -3.5345408e+02 3.5055460e+02 3.5792769e+03 - -3.5206309e+02 3.5206309e+02 3.5792912e+03 - -3.5055460e+02 3.5345408e+02 3.5792769e+03 - -3.4894514e+02 3.5471034e+02 3.5792341e+03 - -3.4725065e+02 3.5581385e+02 3.5791630e+03 - -3.4548654e+02 3.5674570e+02 3.5790637e+03 - -3.4366777e+02 3.5748598e+02 3.5789366e+03 - -3.4180891e+02 3.5801365e+02 3.5787820e+03 - -3.3992421e+02 3.5830638e+02 3.5786005e+03 - -3.3802764e+02 3.5834045e+02 3.5783927e+03 - -3.3613290e+02 3.5809057e+02 3.5781592e+03 - -3.3425350e+02 3.5752970e+02 3.5779008e+03 - -3.3240275e+02 3.5662891e+02 3.5776185e+03 - -3.3059375e+02 3.5535718e+02 3.5773131e+03 - -3.2883943e+02 3.5368122e+02 3.5769859e+03 - -3.2715248e+02 3.5156530e+02 3.5766380e+03 - -3.2554531e+02 3.4897102e+02 3.5762709e+03 - -3.2403001e+02 3.4585724e+02 3.5758859e+03 - -3.2261827e+02 3.4217985e+02 3.5754848e+03 - -3.2132118e+02 3.3789177e+02 3.5750691e+03 - -3.2014916e+02 3.3294285e+02 3.5746410e+03 - -3.1911175e+02 3.2728000e+02 3.5742023e+03 - -3.1821731e+02 3.2084732e+02 3.5737553e+03 - -3.1747284e+02 3.1358651e+02 3.5733024e+03 - -3.1688360e+02 3.0543738e+02 3.5728462e+03 - -3.1645276e+02 2.9633875e+02 3.5723893e+03 - -3.1618101e+02 2.8622950e+02 3.5719346e+03 - -3.1606616e+02 2.7505021e+02 3.5714853e+03 - -3.1610274e+02 2.6274502e+02 3.5710446e+03 - -3.1628162e+02 2.4926414e+02 3.5706158e+03 - -3.1658970e+02 2.3456671e+02 3.5702025e+03 - -3.1700982e+02 2.1862416e+02 3.5698082e+03 - -3.1752069e+02 2.0142391e+02 3.5694368e+03 - -3.1809726e+02 1.8297319e+02 3.5690917e+03 - -3.1871121e+02 1.6330285e+02 3.5687768e+03 - -3.1933193e+02 1.4247058e+02 3.5684955e+03 - -3.1992770e+02 1.2056346e+02 3.5682510e+03 - -3.2046729e+02 9.7699029e+01 3.5680465e+03 - -3.2092167e+02 7.4024756e+01 3.5678845e+03 - -3.2126583e+02 4.9715555e+01 3.5677672e+03 - -3.2148047e+02 2.4969217e+01 3.5676961e+03 - -3.2155341e+02 2.4067136e-09 3.5676723e+03 - -3.3761689e+02 0.0000000e+00 3.5700395e+03 - -3.3753656e+02 -2.7794088e+01 3.5700700e+03 - -3.3730033e+02 -5.5332080e+01 3.5701609e+03 - -3.3692216e+02 -8.2367940e+01 3.5703111e+03 - -3.3642413e+02 -1.0867483e+02 3.5705183e+03 - -3.3583486e+02 -1.3405256e+02 3.5707797e+03 - -3.3518752e+02 -1.5833285e+02 3.5710920e+03 - -3.3451778e+02 -1.8138214e+02 3.5714511e+03 - -3.3386182e+02 -2.0310220e+02 3.5718527e+03 - -3.3325454e+02 -2.2342865e+02 3.5722923e+03 - -3.3272817e+02 -2.4232807e+02 3.5727651e+03 - -3.3231125e+02 -2.5979412e+02 3.5732664e+03 - -3.3202798e+02 -2.7584308e+02 3.5737914e+03 - -3.3189791e+02 -2.9050940e+02 3.5743355e+03 - -3.3193596e+02 -3.0384144e+02 3.5748942e+03 - -3.3215259e+02 -3.1589756e+02 3.5754631e+03 - -3.3255414e+02 -3.2674281e+02 3.5760382e+03 - -3.3314324e+02 -3.3644617e+02 3.5766156e+03 - -3.3391930e+02 -3.4507829e+02 3.5771916e+03 - -3.3487895e+02 -3.5270975e+02 3.5777629e+03 - -3.3601651e+02 -3.5940983e+02 3.5783263e+03 - -3.3732432e+02 -3.6524552e+02 3.5788787e+03 - -3.3879320e+02 -3.7028092e+02 3.5794175e+03 - -3.4041269e+02 -3.7457690e+02 3.5799401e+03 - -3.4217131e+02 -3.7819083e+02 3.5804441e+03 - -3.4405682e+02 -3.8117657e+02 3.5809275e+03 - -3.4605632e+02 -3.8358450e+02 3.5813883e+03 - -3.4815647e+02 -3.8546162e+02 3.5818246e+03 - -3.5034350e+02 -3.8685172e+02 3.5822348e+03 - -3.5260336e+02 -3.8779557e+02 3.5826173e+03 - -3.5492171e+02 -3.8833114e+02 3.5829710e+03 - -3.5728396e+02 -3.8849376e+02 3.5832944e+03 - -3.5967531e+02 -3.8831641e+02 3.5835867e+03 - -3.6208070e+02 -3.8782985e+02 3.5838467e+03 - -3.6448479e+02 -3.8706289e+02 3.5840737e+03 - -3.6687196e+02 -3.8604251e+02 3.5842670e+03 - -3.6922624e+02 -3.8479409e+02 3.5844259e+03 - -3.7153124e+02 -3.8334153e+02 3.5845500e+03 - -3.7377014e+02 -3.8170746e+02 3.5846389e+03 - -3.7592556e+02 -3.7991332e+02 3.5846924e+03 - -3.7797952e+02 -3.7797952e+02 3.5847102e+03 - -3.7991332e+02 -3.7592556e+02 3.5846924e+03 - -3.8170746e+02 -3.7377014e+02 3.5846389e+03 - -3.8334153e+02 -3.7153124e+02 3.5845500e+03 - -3.8479409e+02 -3.6922624e+02 3.5844259e+03 - -3.8604251e+02 -3.6687196e+02 3.5842670e+03 - -3.8706289e+02 -3.6448479e+02 3.5840737e+03 - -3.8782985e+02 -3.6208070e+02 3.5838467e+03 - -3.8831641e+02 -3.5967531e+02 3.5835867e+03 - -3.8849376e+02 -3.5728396e+02 3.5832944e+03 - -3.8833114e+02 -3.5492171e+02 3.5829710e+03 - -3.8779557e+02 -3.5260336e+02 3.5826173e+03 - -3.8685172e+02 -3.5034350e+02 3.5822348e+03 - -3.8546162e+02 -3.4815647e+02 3.5818246e+03 - -3.8358450e+02 -3.4605632e+02 3.5813883e+03 - -3.8117657e+02 -3.4405682e+02 3.5809275e+03 - -3.7819083e+02 -3.4217131e+02 3.5804441e+03 - -3.7457690e+02 -3.4041269e+02 3.5799401e+03 - -3.7028092e+02 -3.3879320e+02 3.5794175e+03 - -3.6524552e+02 -3.3732432e+02 3.5788787e+03 - -3.5940983e+02 -3.3601651e+02 3.5783263e+03 - -3.5270975e+02 -3.3487895e+02 3.5777629e+03 - -3.4507829e+02 -3.3391930e+02 3.5771916e+03 - -3.3644617e+02 -3.3314324e+02 3.5766156e+03 - -3.2674281e+02 -3.3255414e+02 3.5760382e+03 - -3.1589756e+02 -3.3215259e+02 3.5754631e+03 - -3.0384144e+02 -3.3193596e+02 3.5748942e+03 - -2.9050940e+02 -3.3189791e+02 3.5743355e+03 - -2.7584308e+02 -3.3202798e+02 3.5737914e+03 - -2.5979412e+02 -3.3231125e+02 3.5732664e+03 - -2.4232807e+02 -3.3272817e+02 3.5727651e+03 - -2.2342865e+02 -3.3325454e+02 3.5722923e+03 - -2.0310220e+02 -3.3386182e+02 3.5718527e+03 - -1.8138214e+02 -3.3451778e+02 3.5714511e+03 - -1.5833285e+02 -3.3518752e+02 3.5710920e+03 - -1.3405256e+02 -3.3583486e+02 3.5707797e+03 - -1.0867483e+02 -3.3642413e+02 3.5705183e+03 - -8.2367940e+01 -3.3692216e+02 3.5703111e+03 - -5.5332080e+01 -3.3730033e+02 3.5701609e+03 - -2.7794088e+01 -3.3753656e+02 3.5700700e+03 - -4.8134273e-09 -3.3761689e+02 3.5700395e+03 - 2.7794088e+01 -3.3753656e+02 3.5700700e+03 - 5.5332080e+01 -3.3730033e+02 3.5701609e+03 - 8.2367940e+01 -3.3692216e+02 3.5703111e+03 - 1.0867483e+02 -3.3642413e+02 3.5705183e+03 - 1.3405256e+02 -3.3583486e+02 3.5707797e+03 - 1.5833285e+02 -3.3518752e+02 3.5710920e+03 - 1.8138214e+02 -3.3451778e+02 3.5714511e+03 - 2.0310220e+02 -3.3386182e+02 3.5718527e+03 - 2.2342865e+02 -3.3325454e+02 3.5722923e+03 - 2.4232807e+02 -3.3272817e+02 3.5727651e+03 - 2.5979412e+02 -3.3231125e+02 3.5732664e+03 - 2.7584308e+02 -3.3202798e+02 3.5737914e+03 - 2.9050940e+02 -3.3189791e+02 3.5743355e+03 - 3.0384144e+02 -3.3193596e+02 3.5748942e+03 - 3.1589756e+02 -3.3215259e+02 3.5754631e+03 - 3.2674281e+02 -3.3255414e+02 3.5760382e+03 - 3.3644617e+02 -3.3314324e+02 3.5766156e+03 - 3.4507829e+02 -3.3391930e+02 3.5771916e+03 - 3.5270975e+02 -3.3487895e+02 3.5777629e+03 - 3.5940983e+02 -3.3601651e+02 3.5783263e+03 - 3.6524552e+02 -3.3732432e+02 3.5788787e+03 - 3.7028092e+02 -3.3879320e+02 3.5794175e+03 - 3.7457690e+02 -3.4041269e+02 3.5799401e+03 - 3.7819083e+02 -3.4217131e+02 3.5804441e+03 - 3.8117657e+02 -3.4405682e+02 3.5809275e+03 - 3.8358450e+02 -3.4605632e+02 3.5813883e+03 - 3.8546162e+02 -3.4815647e+02 3.5818246e+03 - 3.8685172e+02 -3.5034350e+02 3.5822348e+03 - 3.8779557e+02 -3.5260336e+02 3.5826173e+03 - 3.8833114e+02 -3.5492171e+02 3.5829710e+03 - 3.8849376e+02 -3.5728396e+02 3.5832944e+03 - 3.8831641e+02 -3.5967531e+02 3.5835867e+03 - 3.8782985e+02 -3.6208070e+02 3.5838467e+03 - 3.8706289e+02 -3.6448479e+02 3.5840737e+03 - 3.8604251e+02 -3.6687196e+02 3.5842670e+03 - 3.8479409e+02 -3.6922624e+02 3.5844259e+03 - 3.8334153e+02 -3.7153124e+02 3.5845500e+03 - 3.8170746e+02 -3.7377014e+02 3.5846389e+03 - 3.7991332e+02 -3.7592556e+02 3.5846924e+03 - 3.7797952e+02 -3.7797952e+02 3.5847102e+03 - 3.7592556e+02 -3.7991332e+02 3.5846924e+03 - 3.7377014e+02 -3.8170746e+02 3.5846389e+03 - 3.7153124e+02 -3.8334153e+02 3.5845500e+03 - 3.6922624e+02 -3.8479409e+02 3.5844259e+03 - 3.6687196e+02 -3.8604251e+02 3.5842670e+03 - 3.6448479e+02 -3.8706289e+02 3.5840737e+03 - 3.6208070e+02 -3.8782985e+02 3.5838467e+03 - 3.5967531e+02 -3.8831641e+02 3.5835867e+03 - 3.5728396e+02 -3.8849376e+02 3.5832944e+03 - 3.5492171e+02 -3.8833114e+02 3.5829710e+03 - 3.5260336e+02 -3.8779557e+02 3.5826173e+03 - 3.5034350e+02 -3.8685172e+02 3.5822348e+03 - 3.4815647e+02 -3.8546162e+02 3.5818246e+03 - 3.4605632e+02 -3.8358450e+02 3.5813883e+03 - 3.4405682e+02 -3.8117657e+02 3.5809275e+03 - 3.4217131e+02 -3.7819083e+02 3.5804441e+03 - 3.4041269e+02 -3.7457690e+02 3.5799401e+03 - 3.3879320e+02 -3.7028092e+02 3.5794175e+03 - 3.3732432e+02 -3.6524552e+02 3.5788787e+03 - 3.3601651e+02 -3.5940983e+02 3.5783263e+03 - 3.3487895e+02 -3.5270975e+02 3.5777629e+03 - 3.3391930e+02 -3.4507829e+02 3.5771916e+03 - 3.3314324e+02 -3.3644617e+02 3.5766156e+03 - 3.3255414e+02 -3.2674281e+02 3.5760382e+03 - 3.3215259e+02 -3.1589756e+02 3.5754631e+03 - 3.3193596e+02 -3.0384144e+02 3.5748942e+03 - 3.3189791e+02 -2.9050940e+02 3.5743355e+03 - 3.3202798e+02 -2.7584308e+02 3.5737914e+03 - 3.3231125e+02 -2.5979412e+02 3.5732664e+03 - 3.3272817e+02 -2.4232807e+02 3.5727651e+03 - 3.3325454e+02 -2.2342865e+02 3.5722923e+03 - 3.3386182e+02 -2.0310220e+02 3.5718527e+03 - 3.3451778e+02 -1.8138214e+02 3.5714511e+03 - 3.3518752e+02 -1.5833285e+02 3.5710920e+03 - 3.3583486e+02 -1.3405256e+02 3.5707797e+03 - 3.3642413e+02 -1.0867483e+02 3.5705183e+03 - 3.3692216e+02 -8.2367940e+01 3.5703111e+03 - 3.3730033e+02 -5.5332080e+01 3.5701609e+03 - 3.3753656e+02 -2.7794088e+01 3.5700700e+03 - 3.3761689e+02 0.0000000e+00 3.5700395e+03 - 3.3753656e+02 2.7794088e+01 3.5700700e+03 - 3.3730033e+02 5.5332080e+01 3.5701609e+03 - 3.3692216e+02 8.2367940e+01 3.5703111e+03 - 3.3642413e+02 1.0867483e+02 3.5705183e+03 - 3.3583486e+02 1.3405256e+02 3.5707797e+03 - 3.3518752e+02 1.5833285e+02 3.5710920e+03 - 3.3451778e+02 1.8138214e+02 3.5714511e+03 - 3.3386182e+02 2.0310220e+02 3.5718527e+03 - 3.3325454e+02 2.2342865e+02 3.5722923e+03 - 3.3272817e+02 2.4232807e+02 3.5727651e+03 - 3.3231125e+02 2.5979412e+02 3.5732664e+03 - 3.3202798e+02 2.7584308e+02 3.5737914e+03 - 3.3189791e+02 2.9050940e+02 3.5743355e+03 - 3.3193596e+02 3.0384144e+02 3.5748942e+03 - 3.3215259e+02 3.1589756e+02 3.5754631e+03 - 3.3255414e+02 3.2674281e+02 3.5760382e+03 - 3.3314324e+02 3.3644617e+02 3.5766156e+03 - 3.3391930e+02 3.4507829e+02 3.5771916e+03 - 3.3487895e+02 3.5270975e+02 3.5777629e+03 - 3.3601651e+02 3.5940983e+02 3.5783263e+03 - 3.3732432e+02 3.6524552e+02 3.5788787e+03 - 3.3879320e+02 3.7028092e+02 3.5794175e+03 - 3.4041269e+02 3.7457690e+02 3.5799401e+03 - 3.4217131e+02 3.7819083e+02 3.5804441e+03 - 3.4405682e+02 3.8117657e+02 3.5809275e+03 - 3.4605632e+02 3.8358450e+02 3.5813883e+03 - 3.4815647e+02 3.8546162e+02 3.5818246e+03 - 3.5034350e+02 3.8685172e+02 3.5822348e+03 - 3.5260336e+02 3.8779557e+02 3.5826173e+03 - 3.5492171e+02 3.8833114e+02 3.5829710e+03 - 3.5728396e+02 3.8849376e+02 3.5832944e+03 - 3.5967531e+02 3.8831641e+02 3.5835867e+03 - 3.6208070e+02 3.8782985e+02 3.5838467e+03 - 3.6448479e+02 3.8706289e+02 3.5840737e+03 - 3.6687196e+02 3.8604251e+02 3.5842670e+03 - 3.6922624e+02 3.8479409e+02 3.5844259e+03 - 3.7153124e+02 3.8334153e+02 3.5845500e+03 - 3.7377014e+02 3.8170746e+02 3.5846389e+03 - 3.7592556e+02 3.7991332e+02 3.5846924e+03 - 3.7797952e+02 3.7797952e+02 3.5847102e+03 - 3.7991332e+02 3.7592556e+02 3.5846924e+03 - 3.8170746e+02 3.7377014e+02 3.5846389e+03 - 3.8334153e+02 3.7153124e+02 3.5845500e+03 - 3.8479409e+02 3.6922624e+02 3.5844259e+03 - 3.8604251e+02 3.6687196e+02 3.5842670e+03 - 3.8706289e+02 3.6448479e+02 3.5840737e+03 - 3.8782985e+02 3.6208070e+02 3.5838467e+03 - 3.8831641e+02 3.5967531e+02 3.5835867e+03 - 3.8849376e+02 3.5728396e+02 3.5832944e+03 - 3.8833114e+02 3.5492171e+02 3.5829710e+03 - 3.8779557e+02 3.5260336e+02 3.5826173e+03 - 3.8685172e+02 3.5034350e+02 3.5822348e+03 - 3.8546162e+02 3.4815647e+02 3.5818246e+03 - 3.8358450e+02 3.4605632e+02 3.5813883e+03 - 3.8117657e+02 3.4405682e+02 3.5809275e+03 - 3.7819083e+02 3.4217131e+02 3.5804441e+03 - 3.7457690e+02 3.4041269e+02 3.5799401e+03 - 3.7028092e+02 3.3879320e+02 3.5794175e+03 - 3.6524552e+02 3.3732432e+02 3.5788787e+03 - 3.5940983e+02 3.3601651e+02 3.5783263e+03 - 3.5270975e+02 3.3487895e+02 3.5777629e+03 - 3.4507829e+02 3.3391930e+02 3.5771916e+03 - 3.3644617e+02 3.3314324e+02 3.5766156e+03 - 3.2674281e+02 3.3255414e+02 3.5760382e+03 - 3.1589756e+02 3.3215259e+02 3.5754631e+03 - 3.0384144e+02 3.3193596e+02 3.5748942e+03 - 2.9050940e+02 3.3189791e+02 3.5743355e+03 - 2.7584308e+02 3.3202798e+02 3.5737914e+03 - 2.5979412e+02 3.3231125e+02 3.5732664e+03 - 2.4232807e+02 3.3272817e+02 3.5727651e+03 - 2.2342865e+02 3.3325454e+02 3.5722923e+03 - 2.0310220e+02 3.3386182e+02 3.5718527e+03 - 1.8138214e+02 3.3451778e+02 3.5714511e+03 - 1.5833285e+02 3.3518752e+02 3.5710920e+03 - 1.3405256e+02 3.3583486e+02 3.5707797e+03 - 1.0867483e+02 3.3642413e+02 3.5705183e+03 - 8.2367940e+01 3.3692216e+02 3.5703111e+03 - 5.5332080e+01 3.3730033e+02 3.5701609e+03 - 2.7794088e+01 3.3753656e+02 3.5700700e+03 - 0.0000000e+00 3.3761689e+02 3.5700395e+03 - -2.7794088e+01 3.3753656e+02 3.5700700e+03 - -5.5332080e+01 3.3730033e+02 3.5701609e+03 - -8.2367940e+01 3.3692216e+02 3.5703111e+03 - -1.0867483e+02 3.3642413e+02 3.5705183e+03 - -1.3405256e+02 3.3583486e+02 3.5707797e+03 - -1.5833285e+02 3.3518752e+02 3.5710920e+03 - -1.8138214e+02 3.3451778e+02 3.5714511e+03 - -2.0310220e+02 3.3386182e+02 3.5718527e+03 - -2.2342865e+02 3.3325454e+02 3.5722923e+03 - -2.4232807e+02 3.3272817e+02 3.5727651e+03 - -2.5979412e+02 3.3231125e+02 3.5732664e+03 - -2.7584308e+02 3.3202798e+02 3.5737914e+03 - -2.9050940e+02 3.3189791e+02 3.5743355e+03 - -3.0384144e+02 3.3193596e+02 3.5748942e+03 - -3.1589756e+02 3.3215259e+02 3.5754631e+03 - -3.2674281e+02 3.3255414e+02 3.5760382e+03 - -3.3644617e+02 3.3314324e+02 3.5766156e+03 - -3.4507829e+02 3.3391930e+02 3.5771916e+03 - -3.5270975e+02 3.3487895e+02 3.5777629e+03 - -3.5940983e+02 3.3601651e+02 3.5783263e+03 - -3.6524552e+02 3.3732432e+02 3.5788787e+03 - -3.7028092e+02 3.3879320e+02 3.5794175e+03 - -3.7457690e+02 3.4041269e+02 3.5799401e+03 - -3.7819083e+02 3.4217131e+02 3.5804441e+03 - -3.8117657e+02 3.4405682e+02 3.5809275e+03 - -3.8358450e+02 3.4605632e+02 3.5813883e+03 - -3.8546162e+02 3.4815647e+02 3.5818246e+03 - -3.8685172e+02 3.5034350e+02 3.5822348e+03 - -3.8779557e+02 3.5260336e+02 3.5826173e+03 - -3.8833114e+02 3.5492171e+02 3.5829710e+03 - -3.8849376e+02 3.5728396e+02 3.5832944e+03 - -3.8831641e+02 3.5967531e+02 3.5835867e+03 - -3.8782985e+02 3.6208070e+02 3.5838467e+03 - -3.8706289e+02 3.6448479e+02 3.5840737e+03 - -3.8604251e+02 3.6687196e+02 3.5842670e+03 - -3.8479409e+02 3.6922624e+02 3.5844259e+03 - -3.8334153e+02 3.7153124e+02 3.5845500e+03 - -3.8170746e+02 3.7377014e+02 3.5846389e+03 - -3.7991332e+02 3.7592556e+02 3.5846924e+03 - -3.7797952e+02 3.7797952e+02 3.5847102e+03 - -3.7592556e+02 3.7991332e+02 3.5846924e+03 - -3.7377014e+02 3.8170746e+02 3.5846389e+03 - -3.7153124e+02 3.8334153e+02 3.5845500e+03 - -3.6922624e+02 3.8479409e+02 3.5844259e+03 - -3.6687196e+02 3.8604251e+02 3.5842670e+03 - -3.6448479e+02 3.8706289e+02 3.5840737e+03 - -3.6208070e+02 3.8782985e+02 3.5838467e+03 - -3.5967531e+02 3.8831641e+02 3.5835867e+03 - -3.5728396e+02 3.8849376e+02 3.5832944e+03 - -3.5492171e+02 3.8833114e+02 3.5829710e+03 - -3.5260336e+02 3.8779557e+02 3.5826173e+03 - -3.5034350e+02 3.8685172e+02 3.5822348e+03 - -3.4815647e+02 3.8546162e+02 3.5818246e+03 - -3.4605632e+02 3.8358450e+02 3.5813883e+03 - -3.4405682e+02 3.8117657e+02 3.5809275e+03 - -3.4217131e+02 3.7819083e+02 3.5804441e+03 - -3.4041269e+02 3.7457690e+02 3.5799401e+03 - -3.3879320e+02 3.7028092e+02 3.5794175e+03 - -3.3732432e+02 3.6524552e+02 3.5788787e+03 - -3.3601651e+02 3.5940983e+02 3.5783263e+03 - -3.3487895e+02 3.5270975e+02 3.5777629e+03 - -3.3391930e+02 3.4507829e+02 3.5771916e+03 - -3.3314324e+02 3.3644617e+02 3.5766156e+03 - -3.3255414e+02 3.2674281e+02 3.5760382e+03 - -3.3215259e+02 3.1589756e+02 3.5754631e+03 - -3.3193596e+02 3.0384144e+02 3.5748942e+03 - -3.3189791e+02 2.9050940e+02 3.5743355e+03 - -3.3202798e+02 2.7584308e+02 3.5737914e+03 - -3.3231125e+02 2.5979412e+02 3.5732664e+03 - -3.3272817e+02 2.4232807e+02 3.5727651e+03 - -3.3325454e+02 2.2342865e+02 3.5722923e+03 - -3.3386182e+02 2.0310220e+02 3.5718527e+03 - -3.3451778e+02 1.8138214e+02 3.5714511e+03 - -3.3518752e+02 1.5833285e+02 3.5710920e+03 - -3.3583486e+02 1.3405256e+02 3.5707797e+03 - -3.3642413e+02 1.0867483e+02 3.5705183e+03 - -3.3692216e+02 8.2367940e+01 3.5703111e+03 - -3.3730033e+02 5.5332080e+01 3.5701609e+03 - -3.3753656e+02 2.7794088e+01 3.5700700e+03 - -3.3761689e+02 -9.6268545e-09 3.5700395e+03 - -3.4421762e+02 0.0000000e+00 3.5711355e+03 - -3.4413116e+02 -3.0388457e+01 3.5711733e+03 - -3.4387714e+02 -6.0486954e+01 3.5712861e+03 - -3.4347130e+02 -9.0017119e+01 3.5714723e+03 - -3.4293851e+02 -1.1872268e+02 3.5717291e+03 - -3.4231095e+02 -1.4637798e+02 3.5720529e+03 - -3.4162593e+02 -1.7279400e+02 3.5724394e+03 - -3.4092351e+02 -1.9782145e+02 3.5728834e+03 - -3.4024425e+02 -2.2135140e+02 3.5733795e+03 - -3.3962727e+02 -2.4331343e+02 3.5739219e+03 - -3.3910863e+02 -2.6367227e+02 3.5745047e+03 - -3.3872022e+02 -2.8242318e+02 3.5751218e+03 - -3.3848908e+02 -2.9958690e+02 3.5757673e+03 - -3.3843706e+02 -3.1520446e+02 3.5764355e+03 - -3.3858083e+02 -3.2933232e+02 3.5771208e+03 - -3.3893213e+02 -3.4203796e+02 3.5778178e+03 - -3.3949812e+02 -3.5339609e+02 3.5785217e+03 - -3.4028188e+02 -3.6348557e+02 3.5792276e+03 - -3.4128294e+02 -3.7238689e+02 3.5799310e+03 - -3.4249779e+02 -3.8018025e+02 3.5806280e+03 - -3.4392032e+02 -3.8694413e+02 3.5813146e+03 - -3.4554236e+02 -3.9275431e+02 3.5819873e+03 - -3.4735397e+02 -3.9768318e+02 3.5826428e+03 - -3.4934385e+02 -4.0179934e+02 3.5832780e+03 - -3.5149961e+02 -4.0516741e+02 3.5838903e+03 - -3.5380795e+02 -4.0784797e+02 3.5844770e+03 - -3.5625492e+02 -4.0989764e+02 3.5850359e+03 - -3.5882600e+02 -4.1136919e+02 3.5855647e+03 - -3.6150625e+02 -4.1231178e+02 3.5860617e+03 - -3.6428034e+02 -4.1277112e+02 3.5865249e+03 - -3.6713264e+02 -4.1278977e+02 3.5869529e+03 - -3.7004723e+02 -4.1240732e+02 3.5873442e+03 - -3.7300791e+02 -4.1166071e+02 3.5876975e+03 - -3.7599816e+02 -4.1058436e+02 3.5880119e+03 - -3.7900116e+02 -4.0921050e+02 3.5882862e+03 - -3.8199971e+02 -4.0756931e+02 3.5885197e+03 - -3.8497621e+02 -4.0568915e+02 3.5887116e+03 - -3.8791259e+02 -4.0359671e+02 3.5888615e+03 - -3.9079023e+02 -4.0131723e+02 3.5889689e+03 - -3.9358989e+02 -3.9887461e+02 3.5890334e+03 - -3.9629160e+02 -3.9629160e+02 3.5890550e+03 - -3.9887461e+02 -3.9358989e+02 3.5890334e+03 - -4.0131723e+02 -3.9079023e+02 3.5889689e+03 - -4.0359671e+02 -3.8791259e+02 3.5888615e+03 - -4.0568915e+02 -3.8497621e+02 3.5887116e+03 - -4.0756931e+02 -3.8199971e+02 3.5885197e+03 - -4.0921050e+02 -3.7900116e+02 3.5882862e+03 - -4.1058436e+02 -3.7599816e+02 3.5880119e+03 - -4.1166071e+02 -3.7300791e+02 3.5876975e+03 - -4.1240732e+02 -3.7004723e+02 3.5873442e+03 - -4.1278977e+02 -3.6713264e+02 3.5869529e+03 - -4.1277112e+02 -3.6428034e+02 3.5865249e+03 - -4.1231178e+02 -3.6150625e+02 3.5860617e+03 - -4.1136919e+02 -3.5882600e+02 3.5855647e+03 - -4.0989764e+02 -3.5625492e+02 3.5850359e+03 - -4.0784797e+02 -3.5380795e+02 3.5844770e+03 - -4.0516741e+02 -3.5149961e+02 3.5838903e+03 - -4.0179934e+02 -3.4934385e+02 3.5832780e+03 - -3.9768318e+02 -3.4735397e+02 3.5826428e+03 - -3.9275431e+02 -3.4554236e+02 3.5819873e+03 - -3.8694413e+02 -3.4392032e+02 3.5813146e+03 - -3.8018025e+02 -3.4249779e+02 3.5806280e+03 - -3.7238689e+02 -3.4128294e+02 3.5799310e+03 - -3.6348557e+02 -3.4028188e+02 3.5792276e+03 - -3.5339609e+02 -3.3949812e+02 3.5785217e+03 - -3.4203796e+02 -3.3893213e+02 3.5778178e+03 - -3.2933232e+02 -3.3858083e+02 3.5771208e+03 - -3.1520446e+02 -3.3843706e+02 3.5764355e+03 - -2.9958690e+02 -3.3848908e+02 3.5757673e+03 - -2.8242318e+02 -3.3872022e+02 3.5751218e+03 - -2.6367227e+02 -3.3910863e+02 3.5745047e+03 - -2.4331343e+02 -3.3962727e+02 3.5739219e+03 - -2.2135140e+02 -3.4024425e+02 3.5733795e+03 - -1.9782145e+02 -3.4092351e+02 3.5728834e+03 - -1.7279400e+02 -3.4162593e+02 3.5724394e+03 - -1.4637798e+02 -3.4231095e+02 3.5720529e+03 - -1.1872268e+02 -3.4293851e+02 3.5717291e+03 - -9.0017119e+01 -3.4347130e+02 3.5714723e+03 - -6.0486954e+01 -3.4387714e+02 3.5712861e+03 - -3.0388457e+01 -3.4413116e+02 3.5711733e+03 - 0.0000000e+00 -3.4421762e+02 3.5711355e+03 - 3.0388457e+01 -3.4413116e+02 3.5711733e+03 - 6.0486954e+01 -3.4387714e+02 3.5712861e+03 - 9.0017119e+01 -3.4347130e+02 3.5714723e+03 - 1.1872268e+02 -3.4293851e+02 3.5717291e+03 - 1.4637798e+02 -3.4231095e+02 3.5720529e+03 - 1.7279400e+02 -3.4162593e+02 3.5724394e+03 - 1.9782145e+02 -3.4092351e+02 3.5728834e+03 - 2.2135140e+02 -3.4024425e+02 3.5733795e+03 - 2.4331343e+02 -3.3962727e+02 3.5739219e+03 - 2.6367227e+02 -3.3910863e+02 3.5745047e+03 - 2.8242318e+02 -3.3872022e+02 3.5751218e+03 - 2.9958690e+02 -3.3848908e+02 3.5757673e+03 - 3.1520446e+02 -3.3843706e+02 3.5764355e+03 - 3.2933232e+02 -3.3858083e+02 3.5771208e+03 - 3.4203796e+02 -3.3893213e+02 3.5778178e+03 - 3.5339609e+02 -3.3949812e+02 3.5785217e+03 - 3.6348557e+02 -3.4028188e+02 3.5792276e+03 - 3.7238689e+02 -3.4128294e+02 3.5799310e+03 - 3.8018025e+02 -3.4249779e+02 3.5806280e+03 - 3.8694413e+02 -3.4392032e+02 3.5813146e+03 - 3.9275431e+02 -3.4554236e+02 3.5819873e+03 - 3.9768318e+02 -3.4735397e+02 3.5826428e+03 - 4.0179934e+02 -3.4934385e+02 3.5832780e+03 - 4.0516741e+02 -3.5149961e+02 3.5838903e+03 - 4.0784797e+02 -3.5380795e+02 3.5844770e+03 - 4.0989764e+02 -3.5625492e+02 3.5850359e+03 - 4.1136919e+02 -3.5882600e+02 3.5855647e+03 - 4.1231178e+02 -3.6150625e+02 3.5860617e+03 - 4.1277112e+02 -3.6428034e+02 3.5865249e+03 - 4.1278977e+02 -3.6713264e+02 3.5869529e+03 - 4.1240732e+02 -3.7004723e+02 3.5873442e+03 - 4.1166071e+02 -3.7300791e+02 3.5876975e+03 - 4.1058436e+02 -3.7599816e+02 3.5880119e+03 - 4.0921050e+02 -3.7900116e+02 3.5882862e+03 - 4.0756931e+02 -3.8199971e+02 3.5885197e+03 - 4.0568915e+02 -3.8497621e+02 3.5887116e+03 - 4.0359671e+02 -3.8791259e+02 3.5888615e+03 - 4.0131723e+02 -3.9079023e+02 3.5889689e+03 - 3.9887461e+02 -3.9358989e+02 3.5890334e+03 - 3.9629160e+02 -3.9629160e+02 3.5890550e+03 - 3.9358989e+02 -3.9887461e+02 3.5890334e+03 - 3.9079023e+02 -4.0131723e+02 3.5889689e+03 - 3.8791259e+02 -4.0359671e+02 3.5888615e+03 - 3.8497621e+02 -4.0568915e+02 3.5887116e+03 - 3.8199971e+02 -4.0756931e+02 3.5885197e+03 - 3.7900116e+02 -4.0921050e+02 3.5882862e+03 - 3.7599816e+02 -4.1058436e+02 3.5880119e+03 - 3.7300791e+02 -4.1166071e+02 3.5876975e+03 - 3.7004723e+02 -4.1240732e+02 3.5873442e+03 - 3.6713264e+02 -4.1278977e+02 3.5869529e+03 - 3.6428034e+02 -4.1277112e+02 3.5865249e+03 - 3.6150625e+02 -4.1231178e+02 3.5860617e+03 - 3.5882600e+02 -4.1136919e+02 3.5855647e+03 - 3.5625492e+02 -4.0989764e+02 3.5850359e+03 - 3.5380795e+02 -4.0784797e+02 3.5844770e+03 - 3.5149961e+02 -4.0516741e+02 3.5838903e+03 - 3.4934385e+02 -4.0179934e+02 3.5832780e+03 - 3.4735397e+02 -3.9768318e+02 3.5826428e+03 - 3.4554236e+02 -3.9275431e+02 3.5819873e+03 - 3.4392032e+02 -3.8694413e+02 3.5813146e+03 - 3.4249779e+02 -3.8018025e+02 3.5806280e+03 - 3.4128294e+02 -3.7238689e+02 3.5799310e+03 - 3.4028188e+02 -3.6348557e+02 3.5792276e+03 - 3.3949812e+02 -3.5339609e+02 3.5785217e+03 - 3.3893213e+02 -3.4203796e+02 3.5778178e+03 - 3.3858083e+02 -3.2933232e+02 3.5771208e+03 - 3.3843706e+02 -3.1520446e+02 3.5764355e+03 - 3.3848908e+02 -2.9958690e+02 3.5757673e+03 - 3.3872022e+02 -2.8242318e+02 3.5751218e+03 - 3.3910863e+02 -2.6367227e+02 3.5745047e+03 - 3.3962727e+02 -2.4331343e+02 3.5739219e+03 - 3.4024425e+02 -2.2135140e+02 3.5733795e+03 - 3.4092351e+02 -1.9782145e+02 3.5728834e+03 - 3.4162593e+02 -1.7279400e+02 3.5724394e+03 - 3.4231095e+02 -1.4637798e+02 3.5720529e+03 - 3.4293851e+02 -1.1872268e+02 3.5717291e+03 - 3.4347130e+02 -9.0017119e+01 3.5714723e+03 - 3.4387714e+02 -6.0486954e+01 3.5712861e+03 - 3.4413116e+02 -3.0388457e+01 3.5711733e+03 - 3.4421762e+02 1.2033568e-08 3.5711355e+03 - 3.4413116e+02 3.0388457e+01 3.5711733e+03 - 3.4387714e+02 6.0486954e+01 3.5712861e+03 - 3.4347130e+02 9.0017119e+01 3.5714723e+03 - 3.4293851e+02 1.1872268e+02 3.5717291e+03 - 3.4231095e+02 1.4637798e+02 3.5720529e+03 - 3.4162593e+02 1.7279400e+02 3.5724394e+03 - 3.4092351e+02 1.9782145e+02 3.5728834e+03 - 3.4024425e+02 2.2135140e+02 3.5733795e+03 - 3.3962727e+02 2.4331343e+02 3.5739219e+03 - 3.3910863e+02 2.6367227e+02 3.5745047e+03 - 3.3872022e+02 2.8242318e+02 3.5751218e+03 - 3.3848908e+02 2.9958690e+02 3.5757673e+03 - 3.3843706e+02 3.1520446e+02 3.5764355e+03 - 3.3858083e+02 3.2933232e+02 3.5771208e+03 - 3.3893213e+02 3.4203796e+02 3.5778178e+03 - 3.3949812e+02 3.5339609e+02 3.5785217e+03 - 3.4028188e+02 3.6348557e+02 3.5792276e+03 - 3.4128294e+02 3.7238689e+02 3.5799310e+03 - 3.4249779e+02 3.8018025e+02 3.5806280e+03 - 3.4392032e+02 3.8694413e+02 3.5813146e+03 - 3.4554236e+02 3.9275431e+02 3.5819873e+03 - 3.4735397e+02 3.9768318e+02 3.5826428e+03 - 3.4934385e+02 4.0179934e+02 3.5832780e+03 - 3.5149961e+02 4.0516741e+02 3.5838903e+03 - 3.5380795e+02 4.0784797e+02 3.5844770e+03 - 3.5625492e+02 4.0989764e+02 3.5850359e+03 - 3.5882600e+02 4.1136919e+02 3.5855647e+03 - 3.6150625e+02 4.1231178e+02 3.5860617e+03 - 3.6428034e+02 4.1277112e+02 3.5865249e+03 - 3.6713264e+02 4.1278977e+02 3.5869529e+03 - 3.7004723e+02 4.1240732e+02 3.5873442e+03 - 3.7300791e+02 4.1166071e+02 3.5876975e+03 - 3.7599816e+02 4.1058436e+02 3.5880119e+03 - 3.7900116e+02 4.0921050e+02 3.5882862e+03 - 3.8199971e+02 4.0756931e+02 3.5885197e+03 - 3.8497621e+02 4.0568915e+02 3.5887116e+03 - 3.8791259e+02 4.0359671e+02 3.5888615e+03 - 3.9079023e+02 4.0131723e+02 3.5889689e+03 - 3.9358989e+02 3.9887461e+02 3.5890334e+03 - 3.9629160e+02 3.9629160e+02 3.5890550e+03 - 3.9887461e+02 3.9358989e+02 3.5890334e+03 - 4.0131723e+02 3.9079023e+02 3.5889689e+03 - 4.0359671e+02 3.8791259e+02 3.5888615e+03 - 4.0568915e+02 3.8497621e+02 3.5887116e+03 - 4.0756931e+02 3.8199971e+02 3.5885197e+03 - 4.0921050e+02 3.7900116e+02 3.5882862e+03 - 4.1058436e+02 3.7599816e+02 3.5880119e+03 - 4.1166071e+02 3.7300791e+02 3.5876975e+03 - 4.1240732e+02 3.7004723e+02 3.5873442e+03 - 4.1278977e+02 3.6713264e+02 3.5869529e+03 - 4.1277112e+02 3.6428034e+02 3.5865249e+03 - 4.1231178e+02 3.6150625e+02 3.5860617e+03 - 4.1136919e+02 3.5882600e+02 3.5855647e+03 - 4.0989764e+02 3.5625492e+02 3.5850359e+03 - 4.0784797e+02 3.5380795e+02 3.5844770e+03 - 4.0516741e+02 3.5149961e+02 3.5838903e+03 - 4.0179934e+02 3.4934385e+02 3.5832780e+03 - 3.9768318e+02 3.4735397e+02 3.5826428e+03 - 3.9275431e+02 3.4554236e+02 3.5819873e+03 - 3.8694413e+02 3.4392032e+02 3.5813146e+03 - 3.8018025e+02 3.4249779e+02 3.5806280e+03 - 3.7238689e+02 3.4128294e+02 3.5799310e+03 - 3.6348557e+02 3.4028188e+02 3.5792276e+03 - 3.5339609e+02 3.3949812e+02 3.5785217e+03 - 3.4203796e+02 3.3893213e+02 3.5778178e+03 - 3.2933232e+02 3.3858083e+02 3.5771208e+03 - 3.1520446e+02 3.3843706e+02 3.5764355e+03 - 2.9958690e+02 3.3848908e+02 3.5757673e+03 - 2.8242318e+02 3.3872022e+02 3.5751218e+03 - 2.6367227e+02 3.3910863e+02 3.5745047e+03 - 2.4331343e+02 3.3962727e+02 3.5739219e+03 - 2.2135140e+02 3.4024425e+02 3.5733795e+03 - 1.9782145e+02 3.4092351e+02 3.5728834e+03 - 1.7279400e+02 3.4162593e+02 3.5724394e+03 - 1.4637798e+02 3.4231095e+02 3.5720529e+03 - 1.1872268e+02 3.4293851e+02 3.5717291e+03 - 9.0017119e+01 3.4347130e+02 3.5714723e+03 - 6.0486954e+01 3.4387714e+02 3.5712861e+03 - 3.0388457e+01 3.4413116e+02 3.5711733e+03 - 0.0000000e+00 3.4421762e+02 3.5711355e+03 - -3.0388457e+01 3.4413116e+02 3.5711733e+03 - -6.0486954e+01 3.4387714e+02 3.5712861e+03 - -9.0017119e+01 3.4347130e+02 3.5714723e+03 - -1.1872268e+02 3.4293851e+02 3.5717291e+03 - -1.4637798e+02 3.4231095e+02 3.5720529e+03 - -1.7279400e+02 3.4162593e+02 3.5724394e+03 - -1.9782145e+02 3.4092351e+02 3.5728834e+03 - -2.2135140e+02 3.4024425e+02 3.5733795e+03 - -2.4331343e+02 3.3962727e+02 3.5739219e+03 - -2.6367227e+02 3.3910863e+02 3.5745047e+03 - -2.8242318e+02 3.3872022e+02 3.5751218e+03 - -2.9958690e+02 3.3848908e+02 3.5757673e+03 - -3.1520446e+02 3.3843706e+02 3.5764355e+03 - -3.2933232e+02 3.3858083e+02 3.5771208e+03 - -3.4203796e+02 3.3893213e+02 3.5778178e+03 - -3.5339609e+02 3.3949812e+02 3.5785217e+03 - -3.6348557e+02 3.4028188e+02 3.5792276e+03 - -3.7238689e+02 3.4128294e+02 3.5799310e+03 - -3.8018025e+02 3.4249779e+02 3.5806280e+03 - -3.8694413e+02 3.4392032e+02 3.5813146e+03 - -3.9275431e+02 3.4554236e+02 3.5819873e+03 - -3.9768318e+02 3.4735397e+02 3.5826428e+03 - -4.0179934e+02 3.4934385e+02 3.5832780e+03 - -4.0516741e+02 3.5149961e+02 3.5838903e+03 - -4.0784797e+02 3.5380795e+02 3.5844770e+03 - -4.0989764e+02 3.5625492e+02 3.5850359e+03 - -4.1136919e+02 3.5882600e+02 3.5855647e+03 - -4.1231178e+02 3.6150625e+02 3.5860617e+03 - -4.1277112e+02 3.6428034e+02 3.5865249e+03 - -4.1278977e+02 3.6713264e+02 3.5869529e+03 - -4.1240732e+02 3.7004723e+02 3.5873442e+03 - -4.1166071e+02 3.7300791e+02 3.5876975e+03 - -4.1058436e+02 3.7599816e+02 3.5880119e+03 - -4.0921050e+02 3.7900116e+02 3.5882862e+03 - -4.0756931e+02 3.8199971e+02 3.5885197e+03 - -4.0568915e+02 3.8497621e+02 3.5887116e+03 - -4.0359671e+02 3.8791259e+02 3.5888615e+03 - -4.0131723e+02 3.9079023e+02 3.5889689e+03 - -3.9887461e+02 3.9358989e+02 3.5890334e+03 - -3.9629160e+02 3.9629160e+02 3.5890550e+03 - -3.9358989e+02 3.9887461e+02 3.5890334e+03 - -3.9079023e+02 4.0131723e+02 3.5889689e+03 - -3.8791259e+02 4.0359671e+02 3.5888615e+03 - -3.8497621e+02 4.0568915e+02 3.5887116e+03 - -3.8199971e+02 4.0756931e+02 3.5885197e+03 - -3.7900116e+02 4.0921050e+02 3.5882862e+03 - -3.7599816e+02 4.1058436e+02 3.5880119e+03 - -3.7300791e+02 4.1166071e+02 3.5876975e+03 - -3.7004723e+02 4.1240732e+02 3.5873442e+03 - -3.6713264e+02 4.1278977e+02 3.5869529e+03 - -3.6428034e+02 4.1277112e+02 3.5865249e+03 - -3.6150625e+02 4.1231178e+02 3.5860617e+03 - -3.5882600e+02 4.1136919e+02 3.5855647e+03 - -3.5625492e+02 4.0989764e+02 3.5850359e+03 - -3.5380795e+02 4.0784797e+02 3.5844770e+03 - -3.5149961e+02 4.0516741e+02 3.5838903e+03 - -3.4934385e+02 4.0179934e+02 3.5832780e+03 - -3.4735397e+02 3.9768318e+02 3.5826428e+03 - -3.4554236e+02 3.9275431e+02 3.5819873e+03 - -3.4392032e+02 3.8694413e+02 3.5813146e+03 - -3.4249779e+02 3.8018025e+02 3.5806280e+03 - -3.4128294e+02 3.7238689e+02 3.5799310e+03 - -3.4028188e+02 3.6348557e+02 3.5792276e+03 - -3.3949812e+02 3.5339609e+02 3.5785217e+03 - -3.3893213e+02 3.4203796e+02 3.5778178e+03 - -3.3858083e+02 3.2933232e+02 3.5771208e+03 - -3.3843706e+02 3.1520446e+02 3.5764355e+03 - -3.3848908e+02 2.9958690e+02 3.5757673e+03 - -3.3872022e+02 2.8242318e+02 3.5751218e+03 - -3.3910863e+02 2.6367227e+02 3.5745047e+03 - -3.3962727e+02 2.4331343e+02 3.5739219e+03 - -3.4024425e+02 2.2135140e+02 3.5733795e+03 - -3.4092351e+02 1.9782145e+02 3.5728834e+03 - -3.4162593e+02 1.7279400e+02 3.5724394e+03 - -3.4231095e+02 1.4637798e+02 3.5720529e+03 - -3.4293851e+02 1.1872268e+02 3.5717291e+03 - -3.4347130e+02 9.0017119e+01 3.5714723e+03 - -3.4387714e+02 6.0486954e+01 3.5712861e+03 - -3.4413116e+02 3.0388457e+01 3.5711733e+03 - -3.4421762e+02 0.0000000e+00 3.5711355e+03 - -3.4132086e+02 -9.6268545e-09 3.5705728e+03 - -3.4122967e+02 -3.2754005e+01 3.5706186e+03 - -3.4096207e+02 -6.5183399e+01 3.5707552e+03 - -3.4053557e+02 -9.6976790e+01 3.5709805e+03 - -3.3997780e+02 -1.2784798e+02 3.5712911e+03 - -3.3932452e+02 -1.5754562e+02 3.5716825e+03 - -3.3861712e+02 -1.8585998e+02 3.5721492e+03 - -3.3789996e+02 -2.1262637e+02 3.5726848e+03 - -3.3721794e+02 -2.3772565e+02 3.5732826e+03 - -3.3661424e+02 -2.6108210e+02 3.5739354e+03 - -3.3612864e+02 -2.8265935e+02 3.5746359e+03 - -3.3579628e+02 -3.0245514e+02 3.5753767e+03 - -3.3564689e+02 -3.2049545e+02 3.5761505e+03 - -3.3570450e+02 -3.3682868e+02 3.5769505e+03 - -3.3598745e+02 -3.5152007e+02 3.5777699e+03 - -3.3650866e+02 -3.6464680e+02 3.5786022e+03 - -3.3727607e+02 -3.7629375e+02 3.5794416e+03 - -3.3829319e+02 -3.8655003e+02 3.5802824e+03 - -3.3955967e+02 -3.9550627e+02 3.5811193e+03 - -3.4107184e+02 -4.0325247e+02 3.5819476e+03 - -3.4282329e+02 -4.0987650e+02 3.5827626e+03 - -3.4480531e+02 -4.1546300e+02 3.5835603e+03 - -3.4700735e+02 -4.2009265e+02 3.5843369e+03 - -3.4941735e+02 -4.2384183e+02 3.5850888e+03 - -3.5202209e+02 -4.2678233e+02 3.5858129e+03 - -3.5480737e+02 -4.2898142e+02 3.5865062e+03 - -3.5775824e+02 -4.3050188e+02 3.5871661e+03 - -3.6085918e+02 -4.3140219e+02 3.5877901e+03 - -3.6409416e+02 -4.3173675e+02 3.5883760e+03 - -3.6744673e+02 -4.3155616e+02 3.5889219e+03 - -3.7090008e+02 -4.3090746e+02 3.5894260e+03 - -3.7443707e+02 -4.2983441e+02 3.5898867e+03 - -3.7804021e+02 -4.2837779e+02 3.5903025e+03 - -3.8169166e+02 -4.2657563e+02 3.5906723e+03 - -3.8537321e+02 -4.2446346e+02 3.5909949e+03 - -3.8906620e+02 -4.2207456e+02 3.5912693e+03 - -3.9275150e+02 -4.1944019e+02 3.5914950e+03 - -3.9640945e+02 -4.1658975e+02 3.5916711e+03 - -4.0001973e+02 -4.1355101e+02 3.5917972e+03 - -4.0356132e+02 -4.1035024e+02 3.5918731e+03 - -4.0701241e+02 -4.0701241e+02 3.5918984e+03 - -4.1035024e+02 -4.0356132e+02 3.5918731e+03 - -4.1355101e+02 -4.0001973e+02 3.5917972e+03 - -4.1658975e+02 -3.9640945e+02 3.5916711e+03 - -4.1944019e+02 -3.9275150e+02 3.5914950e+03 - -4.2207456e+02 -3.8906620e+02 3.5912693e+03 - -4.2446346e+02 -3.8537321e+02 3.5909949e+03 - -4.2657563e+02 -3.8169166e+02 3.5906723e+03 - -4.2837779e+02 -3.7804021e+02 3.5903025e+03 - -4.2983441e+02 -3.7443707e+02 3.5898867e+03 - -4.3090746e+02 -3.7090008e+02 3.5894260e+03 - -4.3155616e+02 -3.6744673e+02 3.5889219e+03 - -4.3173675e+02 -3.6409416e+02 3.5883760e+03 - -4.3140219e+02 -3.6085918e+02 3.5877901e+03 - -4.3050188e+02 -3.5775824e+02 3.5871661e+03 - -4.2898142e+02 -3.5480737e+02 3.5865062e+03 - -4.2678233e+02 -3.5202209e+02 3.5858129e+03 - -4.2384183e+02 -3.4941735e+02 3.5850888e+03 - -4.2009265e+02 -3.4700735e+02 3.5843369e+03 - -4.1546300e+02 -3.4480531e+02 3.5835603e+03 - -4.0987650e+02 -3.4282329e+02 3.5827626e+03 - -4.0325247e+02 -3.4107184e+02 3.5819476e+03 - -3.9550627e+02 -3.3955967e+02 3.5811193e+03 - -3.8655003e+02 -3.3829319e+02 3.5802824e+03 - -3.7629375e+02 -3.3727607e+02 3.5794416e+03 - -3.6464680e+02 -3.3650866e+02 3.5786022e+03 - -3.5152007e+02 -3.3598745e+02 3.5777699e+03 - -3.3682868e+02 -3.3570450e+02 3.5769505e+03 - -3.2049545e+02 -3.3564689e+02 3.5761505e+03 - -3.0245514e+02 -3.3579628e+02 3.5753767e+03 - -2.8265935e+02 -3.3612864e+02 3.5746359e+03 - -2.6108210e+02 -3.3661424e+02 3.5739354e+03 - -2.3772565e+02 -3.3721794e+02 3.5732826e+03 - -2.1262637e+02 -3.3789996e+02 3.5726848e+03 - -1.8585998e+02 -3.3861712e+02 3.5721492e+03 - -1.5754562e+02 -3.3932452e+02 3.5716825e+03 - -1.2784798e+02 -3.3997780e+02 3.5712911e+03 - -9.6976790e+01 -3.4053557e+02 3.5709805e+03 - -6.5183399e+01 -3.4096207e+02 3.5707552e+03 - -3.2754005e+01 -3.4122967e+02 3.5706186e+03 - -2.4067136e-09 -3.4132086e+02 3.5705728e+03 - 3.2754005e+01 -3.4122967e+02 3.5706186e+03 - 6.5183399e+01 -3.4096207e+02 3.5707552e+03 - 9.6976790e+01 -3.4053557e+02 3.5709805e+03 - 1.2784798e+02 -3.3997780e+02 3.5712911e+03 - 1.5754562e+02 -3.3932452e+02 3.5716825e+03 - 1.8585998e+02 -3.3861712e+02 3.5721492e+03 - 2.1262637e+02 -3.3789996e+02 3.5726848e+03 - 2.3772565e+02 -3.3721794e+02 3.5732826e+03 - 2.6108210e+02 -3.3661424e+02 3.5739354e+03 - 2.8265935e+02 -3.3612864e+02 3.5746359e+03 - 3.0245514e+02 -3.3579628e+02 3.5753767e+03 - 3.2049545e+02 -3.3564689e+02 3.5761505e+03 - 3.3682868e+02 -3.3570450e+02 3.5769505e+03 - 3.5152007e+02 -3.3598745e+02 3.5777699e+03 - 3.6464680e+02 -3.3650866e+02 3.5786022e+03 - 3.7629375e+02 -3.3727607e+02 3.5794416e+03 - 3.8655003e+02 -3.3829319e+02 3.5802824e+03 - 3.9550627e+02 -3.3955967e+02 3.5811193e+03 - 4.0325247e+02 -3.4107184e+02 3.5819476e+03 - 4.0987650e+02 -3.4282329e+02 3.5827626e+03 - 4.1546300e+02 -3.4480531e+02 3.5835603e+03 - 4.2009265e+02 -3.4700735e+02 3.5843369e+03 - 4.2384183e+02 -3.4941735e+02 3.5850888e+03 - 4.2678233e+02 -3.5202209e+02 3.5858129e+03 - 4.2898142e+02 -3.5480737e+02 3.5865062e+03 - 4.3050188e+02 -3.5775824e+02 3.5871661e+03 - 4.3140219e+02 -3.6085918e+02 3.5877901e+03 - 4.3173675e+02 -3.6409416e+02 3.5883760e+03 - 4.3155616e+02 -3.6744673e+02 3.5889219e+03 - 4.3090746e+02 -3.7090008e+02 3.5894260e+03 - 4.2983441e+02 -3.7443707e+02 3.5898867e+03 - 4.2837779e+02 -3.7804021e+02 3.5903025e+03 - 4.2657563e+02 -3.8169166e+02 3.5906723e+03 - 4.2446346e+02 -3.8537321e+02 3.5909949e+03 - 4.2207456e+02 -3.8906620e+02 3.5912693e+03 - 4.1944019e+02 -3.9275150e+02 3.5914950e+03 - 4.1658975e+02 -3.9640945e+02 3.5916711e+03 - 4.1355101e+02 -4.0001973e+02 3.5917972e+03 - 4.1035024e+02 -4.0356132e+02 3.5918731e+03 - 4.0701241e+02 -4.0701241e+02 3.5918984e+03 - 4.0356132e+02 -4.1035024e+02 3.5918731e+03 - 4.0001973e+02 -4.1355101e+02 3.5917972e+03 - 3.9640945e+02 -4.1658975e+02 3.5916711e+03 - 3.9275150e+02 -4.1944019e+02 3.5914950e+03 - 3.8906620e+02 -4.2207456e+02 3.5912693e+03 - 3.8537321e+02 -4.2446346e+02 3.5909949e+03 - 3.8169166e+02 -4.2657563e+02 3.5906723e+03 - 3.7804021e+02 -4.2837779e+02 3.5903025e+03 - 3.7443707e+02 -4.2983441e+02 3.5898867e+03 - 3.7090008e+02 -4.3090746e+02 3.5894260e+03 - 3.6744673e+02 -4.3155616e+02 3.5889219e+03 - 3.6409416e+02 -4.3173675e+02 3.5883760e+03 - 3.6085918e+02 -4.3140219e+02 3.5877901e+03 - 3.5775824e+02 -4.3050188e+02 3.5871661e+03 - 3.5480737e+02 -4.2898142e+02 3.5865062e+03 - 3.5202209e+02 -4.2678233e+02 3.5858129e+03 - 3.4941735e+02 -4.2384183e+02 3.5850888e+03 - 3.4700735e+02 -4.2009265e+02 3.5843369e+03 - 3.4480531e+02 -4.1546300e+02 3.5835603e+03 - 3.4282329e+02 -4.0987650e+02 3.5827626e+03 - 3.4107184e+02 -4.0325247e+02 3.5819476e+03 - 3.3955967e+02 -3.9550627e+02 3.5811193e+03 - 3.3829319e+02 -3.8655003e+02 3.5802824e+03 - 3.3727607e+02 -3.7629375e+02 3.5794416e+03 - 3.3650866e+02 -3.6464680e+02 3.5786022e+03 - 3.3598745e+02 -3.5152007e+02 3.5777699e+03 - 3.3570450e+02 -3.3682868e+02 3.5769505e+03 - 3.3564689e+02 -3.2049545e+02 3.5761505e+03 - 3.3579628e+02 -3.0245514e+02 3.5753767e+03 - 3.3612864e+02 -2.8265935e+02 3.5746359e+03 - 3.3661424e+02 -2.6108210e+02 3.5739354e+03 - 3.3721794e+02 -2.3772565e+02 3.5732826e+03 - 3.3789996e+02 -2.1262637e+02 3.5726848e+03 - 3.3861712e+02 -1.8585998e+02 3.5721492e+03 - 3.3932452e+02 -1.5754562e+02 3.5716825e+03 - 3.3997780e+02 -1.2784798e+02 3.5712911e+03 - 3.4053557e+02 -9.6976790e+01 3.5709805e+03 - 3.4096207e+02 -6.5183399e+01 3.5707552e+03 - 3.4122967e+02 -3.2754005e+01 3.5706186e+03 - 3.4132086e+02 9.6268545e-09 3.5705728e+03 - 3.4122967e+02 3.2754005e+01 3.5706186e+03 - 3.4096207e+02 6.5183399e+01 3.5707552e+03 - 3.4053557e+02 9.6976790e+01 3.5709805e+03 - 3.3997780e+02 1.2784798e+02 3.5712911e+03 - 3.3932452e+02 1.5754562e+02 3.5716825e+03 - 3.3861712e+02 1.8585998e+02 3.5721492e+03 - 3.3789996e+02 2.1262637e+02 3.5726848e+03 - 3.3721794e+02 2.3772565e+02 3.5732826e+03 - 3.3661424e+02 2.6108210e+02 3.5739354e+03 - 3.3612864e+02 2.8265935e+02 3.5746359e+03 - 3.3579628e+02 3.0245514e+02 3.5753767e+03 - 3.3564689e+02 3.2049545e+02 3.5761505e+03 - 3.3570450e+02 3.3682868e+02 3.5769505e+03 - 3.3598745e+02 3.5152007e+02 3.5777699e+03 - 3.3650866e+02 3.6464680e+02 3.5786022e+03 - 3.3727607e+02 3.7629375e+02 3.5794416e+03 - 3.3829319e+02 3.8655003e+02 3.5802824e+03 - 3.3955967e+02 3.9550627e+02 3.5811193e+03 - 3.4107184e+02 4.0325247e+02 3.5819476e+03 - 3.4282329e+02 4.0987650e+02 3.5827626e+03 - 3.4480531e+02 4.1546300e+02 3.5835603e+03 - 3.4700735e+02 4.2009265e+02 3.5843369e+03 - 3.4941735e+02 4.2384183e+02 3.5850888e+03 - 3.5202209e+02 4.2678233e+02 3.5858129e+03 - 3.5480737e+02 4.2898142e+02 3.5865062e+03 - 3.5775824e+02 4.3050188e+02 3.5871661e+03 - 3.6085918e+02 4.3140219e+02 3.5877901e+03 - 3.6409416e+02 4.3173675e+02 3.5883760e+03 - 3.6744673e+02 4.3155616e+02 3.5889219e+03 - 3.7090008e+02 4.3090746e+02 3.5894260e+03 - 3.7443707e+02 4.2983441e+02 3.5898867e+03 - 3.7804021e+02 4.2837779e+02 3.5903025e+03 - 3.8169166e+02 4.2657563e+02 3.5906723e+03 - 3.8537321e+02 4.2446346e+02 3.5909949e+03 - 3.8906620e+02 4.2207456e+02 3.5912693e+03 - 3.9275150e+02 4.1944019e+02 3.5914950e+03 - 3.9640945e+02 4.1658975e+02 3.5916711e+03 - 4.0001973e+02 4.1355101e+02 3.5917972e+03 - 4.0356132e+02 4.1035024e+02 3.5918731e+03 - 4.0701241e+02 4.0701241e+02 3.5918984e+03 - 4.1035024e+02 4.0356132e+02 3.5918731e+03 - 4.1355101e+02 4.0001973e+02 3.5917972e+03 - 4.1658975e+02 3.9640945e+02 3.5916711e+03 - 4.1944019e+02 3.9275150e+02 3.5914950e+03 - 4.2207456e+02 3.8906620e+02 3.5912693e+03 - 4.2446346e+02 3.8537321e+02 3.5909949e+03 - 4.2657563e+02 3.8169166e+02 3.5906723e+03 - 4.2837779e+02 3.7804021e+02 3.5903025e+03 - 4.2983441e+02 3.7443707e+02 3.5898867e+03 - 4.3090746e+02 3.7090008e+02 3.5894260e+03 - 4.3155616e+02 3.6744673e+02 3.5889219e+03 - 4.3173675e+02 3.6409416e+02 3.5883760e+03 - 4.3140219e+02 3.6085918e+02 3.5877901e+03 - 4.3050188e+02 3.5775824e+02 3.5871661e+03 - 4.2898142e+02 3.5480737e+02 3.5865062e+03 - 4.2678233e+02 3.5202209e+02 3.5858129e+03 - 4.2384183e+02 3.4941735e+02 3.5850888e+03 - 4.2009265e+02 3.4700735e+02 3.5843369e+03 - 4.1546300e+02 3.4480531e+02 3.5835603e+03 - 4.0987650e+02 3.4282329e+02 3.5827626e+03 - 4.0325247e+02 3.4107184e+02 3.5819476e+03 - 3.9550627e+02 3.3955967e+02 3.5811193e+03 - 3.8655003e+02 3.3829319e+02 3.5802824e+03 - 3.7629375e+02 3.3727607e+02 3.5794416e+03 - 3.6464680e+02 3.3650866e+02 3.5786022e+03 - 3.5152007e+02 3.3598745e+02 3.5777699e+03 - 3.3682868e+02 3.3570450e+02 3.5769505e+03 - 3.2049545e+02 3.3564689e+02 3.5761505e+03 - 3.0245514e+02 3.3579628e+02 3.5753767e+03 - 2.8265935e+02 3.3612864e+02 3.5746359e+03 - 2.6108210e+02 3.3661424e+02 3.5739354e+03 - 2.3772565e+02 3.3721794e+02 3.5732826e+03 - 2.1262637e+02 3.3789996e+02 3.5726848e+03 - 1.8585998e+02 3.3861712e+02 3.5721492e+03 - 1.5754562e+02 3.3932452e+02 3.5716825e+03 - 1.2784798e+02 3.3997780e+02 3.5712911e+03 - 9.6976790e+01 3.4053557e+02 3.5709805e+03 - 6.5183399e+01 3.4096207e+02 3.5707552e+03 - 3.2754005e+01 3.4122967e+02 3.5706186e+03 - -4.8134273e-09 3.4132086e+02 3.5705728e+03 - -3.2754005e+01 3.4122967e+02 3.5706186e+03 - -6.5183399e+01 3.4096207e+02 3.5707552e+03 - -9.6976790e+01 3.4053557e+02 3.5709805e+03 - -1.2784798e+02 3.3997780e+02 3.5712911e+03 - -1.5754562e+02 3.3932452e+02 3.5716825e+03 - -1.8585998e+02 3.3861712e+02 3.5721492e+03 - -2.1262637e+02 3.3789996e+02 3.5726848e+03 - -2.3772565e+02 3.3721794e+02 3.5732826e+03 - -2.6108210e+02 3.3661424e+02 3.5739354e+03 - -2.8265935e+02 3.3612864e+02 3.5746359e+03 - -3.0245514e+02 3.3579628e+02 3.5753767e+03 - -3.2049545e+02 3.3564689e+02 3.5761505e+03 - -3.3682868e+02 3.3570450e+02 3.5769505e+03 - -3.5152007e+02 3.3598745e+02 3.5777699e+03 - -3.6464680e+02 3.3650866e+02 3.5786022e+03 - -3.7629375e+02 3.3727607e+02 3.5794416e+03 - -3.8655003e+02 3.3829319e+02 3.5802824e+03 - -3.9550627e+02 3.3955967e+02 3.5811193e+03 - -4.0325247e+02 3.4107184e+02 3.5819476e+03 - -4.0987650e+02 3.4282329e+02 3.5827626e+03 - -4.1546300e+02 3.4480531e+02 3.5835603e+03 - -4.2009265e+02 3.4700735e+02 3.5843369e+03 - -4.2384183e+02 3.4941735e+02 3.5850888e+03 - -4.2678233e+02 3.5202209e+02 3.5858129e+03 - -4.2898142e+02 3.5480737e+02 3.5865062e+03 - -4.3050188e+02 3.5775824e+02 3.5871661e+03 - -4.3140219e+02 3.6085918e+02 3.5877901e+03 - -4.3173675e+02 3.6409416e+02 3.5883760e+03 - -4.3155616e+02 3.6744673e+02 3.5889219e+03 - -4.3090746e+02 3.7090008e+02 3.5894260e+03 - -4.2983441e+02 3.7443707e+02 3.5898867e+03 - -4.2837779e+02 3.7804021e+02 3.5903025e+03 - -4.2657563e+02 3.8169166e+02 3.5906723e+03 - -4.2446346e+02 3.8537321e+02 3.5909949e+03 - -4.2207456e+02 3.8906620e+02 3.5912693e+03 - -4.1944019e+02 3.9275150e+02 3.5914950e+03 - -4.1658975e+02 3.9640945e+02 3.5916711e+03 - -4.1355101e+02 4.0001973e+02 3.5917972e+03 - -4.1035024e+02 4.0356132e+02 3.5918731e+03 - -4.0701241e+02 4.0701241e+02 3.5918984e+03 - -4.0356132e+02 4.1035024e+02 3.5918731e+03 - -4.0001973e+02 4.1355101e+02 3.5917972e+03 - -3.9640945e+02 4.1658975e+02 3.5916711e+03 - -3.9275150e+02 4.1944019e+02 3.5914950e+03 - -3.8906620e+02 4.2207456e+02 3.5912693e+03 - -3.8537321e+02 4.2446346e+02 3.5909949e+03 - -3.8169166e+02 4.2657563e+02 3.5906723e+03 - -3.7804021e+02 4.2837779e+02 3.5903025e+03 - -3.7443707e+02 4.2983441e+02 3.5898867e+03 - -3.7090008e+02 4.3090746e+02 3.5894260e+03 - -3.6744673e+02 4.3155616e+02 3.5889219e+03 - -3.6409416e+02 4.3173675e+02 3.5883760e+03 - -3.6085918e+02 4.3140219e+02 3.5877901e+03 - -3.5775824e+02 4.3050188e+02 3.5871661e+03 - -3.5480737e+02 4.2898142e+02 3.5865062e+03 - -3.5202209e+02 4.2678233e+02 3.5858129e+03 - -3.4941735e+02 4.2384183e+02 3.5850888e+03 - -3.4700735e+02 4.2009265e+02 3.5843369e+03 - -3.4480531e+02 4.1546300e+02 3.5835603e+03 - -3.4282329e+02 4.0987650e+02 3.5827626e+03 - -3.4107184e+02 4.0325247e+02 3.5819476e+03 - -3.3955967e+02 3.9550627e+02 3.5811193e+03 - -3.3829319e+02 3.8655003e+02 3.5802824e+03 - -3.3727607e+02 3.7629375e+02 3.5794416e+03 - -3.3650866e+02 3.6464680e+02 3.5786022e+03 - -3.3598745e+02 3.5152007e+02 3.5777699e+03 - -3.3570450e+02 3.3682868e+02 3.5769505e+03 - -3.3564689e+02 3.2049545e+02 3.5761505e+03 - -3.3579628e+02 3.0245514e+02 3.5753767e+03 - -3.3612864e+02 2.8265935e+02 3.5746359e+03 - -3.3661424e+02 2.6108210e+02 3.5739354e+03 - -3.3721794e+02 2.3772565e+02 3.5732826e+03 - -3.3789996e+02 2.1262637e+02 3.5726848e+03 - -3.3861712e+02 1.8585998e+02 3.5721492e+03 - -3.3932452e+02 1.5754562e+02 3.5716825e+03 - -3.3997780e+02 1.2784798e+02 3.5712911e+03 - -3.4053557e+02 9.6976790e+01 3.5709805e+03 - -3.4096207e+02 6.5183399e+01 3.5707552e+03 - -3.4122967e+02 3.2754005e+01 3.5706186e+03 - -3.4132086e+02 -1.2033568e-08 3.5705728e+03 - -3.2906544e+02 -7.2201409e-09 3.5679938e+03 - -3.2897102e+02 -3.4896928e+01 3.5680482e+03 - -3.2869436e+02 -6.9433641e+01 3.5682105e+03 - -3.2825470e+02 -1.0326490e+02 3.5684781e+03 - -3.2768246e+02 -1.3607398e+02 3.5688467e+03 - -3.2701692e+02 -1.6758356e+02 3.5693108e+03 - -3.2630347e+02 -1.9756319e+02 3.5698635e+03 - -3.2559074e+02 -2.2583311e+02 3.5704973e+03 - -3.2492779e+02 -2.5226458e+02 3.5712036e+03 - -3.2436179e+02 -2.7677731e+02 3.5719739e+03 - -3.2393607e+02 -2.9933473e+02 3.5727993e+03 - -3.2368884e+02 -3.1993798e+02 3.5736708e+03 - -3.2365239e+02 -3.3861920e+02 3.5745800e+03 - -3.2385277e+02 -3.5543499e+02 3.5755185e+03 - -3.2430987e+02 -3.7046012e+02 3.5764783e+03 - -3.2503769e+02 -3.8378210e+02 3.5774519e+03 - -3.2604490e+02 -3.9549648e+02 3.5784323e+03 - -3.2733536e+02 -4.0570307e+02 3.5794131e+03 - -3.2890883e+02 -4.1450291e+02 3.5803881e+03 - -3.3076152e+02 -4.2199605e+02 3.5813517e+03 - -3.3288672e+02 -4.2827985e+02 3.5822989e+03 - -3.3527528e+02 -4.3344788e+02 3.5832248e+03 - -3.3791607e+02 -4.3758917e+02 3.5841253e+03 - -3.4079638e+02 -4.4078781e+02 3.5849963e+03 - -3.4390224e+02 -4.4312277e+02 3.5858343e+03 - -3.4721866e+02 -4.4466788e+02 3.5866359e+03 - -3.5072985e+02 -4.4549202e+02 3.5873983e+03 - -3.5441934e+02 -4.4565926e+02 3.5881186e+03 - -3.5827017e+02 -4.4522917e+02 3.5887946e+03 - -3.6226487e+02 -4.4425707e+02 3.5894240e+03 - -3.6638559e+02 -4.4279441e+02 3.5900048e+03 - -3.7061407e+02 -4.4088900e+02 3.5905352e+03 - -3.7493166e+02 -4.3858536e+02 3.5910139e+03 - -3.7931931e+02 -4.3592498e+02 3.5914393e+03 - -3.8375751e+02 -4.3294663e+02 3.5918103e+03 - -3.8822627e+02 -4.2968658e+02 3.5921259e+03 - -3.9270505e+02 -4.2617887e+02 3.5923852e+03 - -3.9717266e+02 -4.2245552e+02 3.5925876e+03 - -4.0160723e+02 -4.1854671e+02 3.5927325e+03 - -4.0598605e+02 -4.1448101e+02 3.5928197e+03 - -4.1028553e+02 -4.1028553e+02 3.5928487e+03 - -4.1448101e+02 -4.0598605e+02 3.5928197e+03 - -4.1854671e+02 -4.0160723e+02 3.5927325e+03 - -4.2245552e+02 -3.9717266e+02 3.5925876e+03 - -4.2617887e+02 -3.9270505e+02 3.5923852e+03 - -4.2968658e+02 -3.8822627e+02 3.5921259e+03 - -4.3294663e+02 -3.8375751e+02 3.5918103e+03 - -4.3592498e+02 -3.7931931e+02 3.5914393e+03 - -4.3858536e+02 -3.7493166e+02 3.5910139e+03 - -4.4088900e+02 -3.7061407e+02 3.5905352e+03 - -4.4279441e+02 -3.6638559e+02 3.5900048e+03 - -4.4425707e+02 -3.6226487e+02 3.5894240e+03 - -4.4522917e+02 -3.5827017e+02 3.5887946e+03 - -4.4565926e+02 -3.5441934e+02 3.5881186e+03 - -4.4549202e+02 -3.5072985e+02 3.5873983e+03 - -4.4466788e+02 -3.4721866e+02 3.5866359e+03 - -4.4312277e+02 -3.4390224e+02 3.5858343e+03 - -4.4078781e+02 -3.4079638e+02 3.5849963e+03 - -4.3758917e+02 -3.3791607e+02 3.5841253e+03 - -4.3344788e+02 -3.3527528e+02 3.5832248e+03 - -4.2827985e+02 -3.3288672e+02 3.5822989e+03 - -4.2199605e+02 -3.3076152e+02 3.5813517e+03 - -4.1450291e+02 -3.2890883e+02 3.5803881e+03 - -4.0570307e+02 -3.2733536e+02 3.5794131e+03 - -3.9549648e+02 -3.2604490e+02 3.5784323e+03 - -3.8378210e+02 -3.2503769e+02 3.5774519e+03 - -3.7046012e+02 -3.2430987e+02 3.5764783e+03 - -3.5543499e+02 -3.2385277e+02 3.5755185e+03 - -3.3861920e+02 -3.2365239e+02 3.5745800e+03 - -3.1993798e+02 -3.2368884e+02 3.5736708e+03 - -2.9933473e+02 -3.2393607e+02 3.5727993e+03 - -2.7677731e+02 -3.2436179e+02 3.5719739e+03 - -2.5226458e+02 -3.2492779e+02 3.5712036e+03 - -2.2583311e+02 -3.2559074e+02 3.5704973e+03 - -1.9756319e+02 -3.2630347e+02 3.5698635e+03 - -1.6758356e+02 -3.2701692e+02 3.5693108e+03 - -1.3607398e+02 -3.2768246e+02 3.5688467e+03 - -1.0326490e+02 -3.2825470e+02 3.5684781e+03 - -6.9433641e+01 -3.2869436e+02 3.5682105e+03 - -3.4896928e+01 -3.2897102e+02 3.5680482e+03 - 0.0000000e+00 -3.2906544e+02 3.5679938e+03 - 3.4896928e+01 -3.2897102e+02 3.5680482e+03 - 6.9433641e+01 -3.2869436e+02 3.5682105e+03 - 1.0326490e+02 -3.2825470e+02 3.5684781e+03 - 1.3607398e+02 -3.2768246e+02 3.5688467e+03 - 1.6758356e+02 -3.2701692e+02 3.5693108e+03 - 1.9756319e+02 -3.2630347e+02 3.5698635e+03 - 2.2583311e+02 -3.2559074e+02 3.5704973e+03 - 2.5226458e+02 -3.2492779e+02 3.5712036e+03 - 2.7677731e+02 -3.2436179e+02 3.5719739e+03 - 2.9933473e+02 -3.2393607e+02 3.5727993e+03 - 3.1993798e+02 -3.2368884e+02 3.5736708e+03 - 3.3861920e+02 -3.2365239e+02 3.5745800e+03 - 3.5543499e+02 -3.2385277e+02 3.5755185e+03 - 3.7046012e+02 -3.2430987e+02 3.5764783e+03 - 3.8378210e+02 -3.2503769e+02 3.5774519e+03 - 3.9549648e+02 -3.2604490e+02 3.5784323e+03 - 4.0570307e+02 -3.2733536e+02 3.5794131e+03 - 4.1450291e+02 -3.2890883e+02 3.5803881e+03 - 4.2199605e+02 -3.3076152e+02 3.5813517e+03 - 4.2827985e+02 -3.3288672e+02 3.5822989e+03 - 4.3344788e+02 -3.3527528e+02 3.5832248e+03 - 4.3758917e+02 -3.3791607e+02 3.5841253e+03 - 4.4078781e+02 -3.4079638e+02 3.5849963e+03 - 4.4312277e+02 -3.4390224e+02 3.5858343e+03 - 4.4466788e+02 -3.4721866e+02 3.5866359e+03 - 4.4549202e+02 -3.5072985e+02 3.5873983e+03 - 4.4565926e+02 -3.5441934e+02 3.5881186e+03 - 4.4522917e+02 -3.5827017e+02 3.5887946e+03 - 4.4425707e+02 -3.6226487e+02 3.5894240e+03 - 4.4279441e+02 -3.6638559e+02 3.5900048e+03 - 4.4088900e+02 -3.7061407e+02 3.5905352e+03 - 4.3858536e+02 -3.7493166e+02 3.5910139e+03 - 4.3592498e+02 -3.7931931e+02 3.5914393e+03 - 4.3294663e+02 -3.8375751e+02 3.5918103e+03 - 4.2968658e+02 -3.8822627e+02 3.5921259e+03 - 4.2617887e+02 -3.9270505e+02 3.5923852e+03 - 4.2245552e+02 -3.9717266e+02 3.5925876e+03 - 4.1854671e+02 -4.0160723e+02 3.5927325e+03 - 4.1448101e+02 -4.0598605e+02 3.5928197e+03 - 4.1028553e+02 -4.1028553e+02 3.5928487e+03 - 4.0598605e+02 -4.1448101e+02 3.5928197e+03 - 4.0160723e+02 -4.1854671e+02 3.5927325e+03 - 3.9717266e+02 -4.2245552e+02 3.5925876e+03 - 3.9270505e+02 -4.2617887e+02 3.5923852e+03 - 3.8822627e+02 -4.2968658e+02 3.5921259e+03 - 3.8375751e+02 -4.3294663e+02 3.5918103e+03 - 3.7931931e+02 -4.3592498e+02 3.5914393e+03 - 3.7493166e+02 -4.3858536e+02 3.5910139e+03 - 3.7061407e+02 -4.4088900e+02 3.5905352e+03 - 3.6638559e+02 -4.4279441e+02 3.5900048e+03 - 3.6226487e+02 -4.4425707e+02 3.5894240e+03 - 3.5827017e+02 -4.4522917e+02 3.5887946e+03 - 3.5441934e+02 -4.4565926e+02 3.5881186e+03 - 3.5072985e+02 -4.4549202e+02 3.5873983e+03 - 3.4721866e+02 -4.4466788e+02 3.5866359e+03 - 3.4390224e+02 -4.4312277e+02 3.5858343e+03 - 3.4079638e+02 -4.4078781e+02 3.5849963e+03 - 3.3791607e+02 -4.3758917e+02 3.5841253e+03 - 3.3527528e+02 -4.3344788e+02 3.5832248e+03 - 3.3288672e+02 -4.2827985e+02 3.5822989e+03 - 3.3076152e+02 -4.2199605e+02 3.5813517e+03 - 3.2890883e+02 -4.1450291e+02 3.5803881e+03 - 3.2733536e+02 -4.0570307e+02 3.5794131e+03 - 3.2604490e+02 -3.9549648e+02 3.5784323e+03 - 3.2503769e+02 -3.8378210e+02 3.5774519e+03 - 3.2430987e+02 -3.7046012e+02 3.5764783e+03 - 3.2385277e+02 -3.5543499e+02 3.5755185e+03 - 3.2365239e+02 -3.3861920e+02 3.5745800e+03 - 3.2368884e+02 -3.1993798e+02 3.5736708e+03 - 3.2393607e+02 -2.9933473e+02 3.5727993e+03 - 3.2436179e+02 -2.7677731e+02 3.5719739e+03 - 3.2492779e+02 -2.5226458e+02 3.5712036e+03 - 3.2559074e+02 -2.2583311e+02 3.5704973e+03 - 3.2630347e+02 -1.9756319e+02 3.5698635e+03 - 3.2701692e+02 -1.6758356e+02 3.5693108e+03 - 3.2768246e+02 -1.3607398e+02 3.5688467e+03 - 3.2825470e+02 -1.0326490e+02 3.5684781e+03 - 3.2869436e+02 -6.9433641e+01 3.5682105e+03 - 3.2897102e+02 -3.4896928e+01 3.5680482e+03 - 3.2906544e+02 2.4067136e-09 3.5679938e+03 - 3.2897102e+02 3.4896928e+01 3.5680482e+03 - 3.2869436e+02 6.9433641e+01 3.5682105e+03 - 3.2825470e+02 1.0326490e+02 3.5684781e+03 - 3.2768246e+02 1.3607398e+02 3.5688467e+03 - 3.2701692e+02 1.6758356e+02 3.5693108e+03 - 3.2630347e+02 1.9756319e+02 3.5698635e+03 - 3.2559074e+02 2.2583311e+02 3.5704973e+03 - 3.2492779e+02 2.5226458e+02 3.5712036e+03 - 3.2436179e+02 2.7677731e+02 3.5719739e+03 - 3.2393607e+02 2.9933473e+02 3.5727993e+03 - 3.2368884e+02 3.1993798e+02 3.5736708e+03 - 3.2365239e+02 3.3861920e+02 3.5745800e+03 - 3.2385277e+02 3.5543499e+02 3.5755185e+03 - 3.2430987e+02 3.7046012e+02 3.5764783e+03 - 3.2503769e+02 3.8378210e+02 3.5774519e+03 - 3.2604490e+02 3.9549648e+02 3.5784323e+03 - 3.2733536e+02 4.0570307e+02 3.5794131e+03 - 3.2890883e+02 4.1450291e+02 3.5803881e+03 - 3.3076152e+02 4.2199605e+02 3.5813517e+03 - 3.3288672e+02 4.2827985e+02 3.5822989e+03 - 3.3527528e+02 4.3344788e+02 3.5832248e+03 - 3.3791607e+02 4.3758917e+02 3.5841253e+03 - 3.4079638e+02 4.4078781e+02 3.5849963e+03 - 3.4390224e+02 4.4312277e+02 3.5858343e+03 - 3.4721866e+02 4.4466788e+02 3.5866359e+03 - 3.5072985e+02 4.4549202e+02 3.5873983e+03 - 3.5441934e+02 4.4565926e+02 3.5881186e+03 - 3.5827017e+02 4.4522917e+02 3.5887946e+03 - 3.6226487e+02 4.4425707e+02 3.5894240e+03 - 3.6638559e+02 4.4279441e+02 3.5900048e+03 - 3.7061407e+02 4.4088900e+02 3.5905352e+03 - 3.7493166e+02 4.3858536e+02 3.5910139e+03 - 3.7931931e+02 4.3592498e+02 3.5914393e+03 - 3.8375751e+02 4.3294663e+02 3.5918103e+03 - 3.8822627e+02 4.2968658e+02 3.5921259e+03 - 3.9270505e+02 4.2617887e+02 3.5923852e+03 - 3.9717266e+02 4.2245552e+02 3.5925876e+03 - 4.0160723e+02 4.1854671e+02 3.5927325e+03 - 4.0598605e+02 4.1448101e+02 3.5928197e+03 - 4.1028553e+02 4.1028553e+02 3.5928487e+03 - 4.1448101e+02 4.0598605e+02 3.5928197e+03 - 4.1854671e+02 4.0160723e+02 3.5927325e+03 - 4.2245552e+02 3.9717266e+02 3.5925876e+03 - 4.2617887e+02 3.9270505e+02 3.5923852e+03 - 4.2968658e+02 3.8822627e+02 3.5921259e+03 - 4.3294663e+02 3.8375751e+02 3.5918103e+03 - 4.3592498e+02 3.7931931e+02 3.5914393e+03 - 4.3858536e+02 3.7493166e+02 3.5910139e+03 - 4.4088900e+02 3.7061407e+02 3.5905352e+03 - 4.4279441e+02 3.6638559e+02 3.5900048e+03 - 4.4425707e+02 3.6226487e+02 3.5894240e+03 - 4.4522917e+02 3.5827017e+02 3.5887946e+03 - 4.4565926e+02 3.5441934e+02 3.5881186e+03 - 4.4549202e+02 3.5072985e+02 3.5873983e+03 - 4.4466788e+02 3.4721866e+02 3.5866359e+03 - 4.4312277e+02 3.4390224e+02 3.5858343e+03 - 4.4078781e+02 3.4079638e+02 3.5849963e+03 - 4.3758917e+02 3.3791607e+02 3.5841253e+03 - 4.3344788e+02 3.3527528e+02 3.5832248e+03 - 4.2827985e+02 3.3288672e+02 3.5822989e+03 - 4.2199605e+02 3.3076152e+02 3.5813517e+03 - 4.1450291e+02 3.2890883e+02 3.5803881e+03 - 4.0570307e+02 3.2733536e+02 3.5794131e+03 - 3.9549648e+02 3.2604490e+02 3.5784323e+03 - 3.8378210e+02 3.2503769e+02 3.5774519e+03 - 3.7046012e+02 3.2430987e+02 3.5764783e+03 - 3.5543499e+02 3.2385277e+02 3.5755185e+03 - 3.3861920e+02 3.2365239e+02 3.5745800e+03 - 3.1993798e+02 3.2368884e+02 3.5736708e+03 - 2.9933473e+02 3.2393607e+02 3.5727993e+03 - 2.7677731e+02 3.2436179e+02 3.5719739e+03 - 2.5226458e+02 3.2492779e+02 3.5712036e+03 - 2.2583311e+02 3.2559074e+02 3.5704973e+03 - 1.9756319e+02 3.2630347e+02 3.5698635e+03 - 1.6758356e+02 3.2701692e+02 3.5693108e+03 - 1.3607398e+02 3.2768246e+02 3.5688467e+03 - 1.0326490e+02 3.2825470e+02 3.5684781e+03 - 6.9433641e+01 3.2869436e+02 3.5682105e+03 - 3.4896928e+01 3.2897102e+02 3.5680482e+03 - 0.0000000e+00 3.2906544e+02 3.5679938e+03 - -3.4896928e+01 3.2897102e+02 3.5680482e+03 - -6.9433641e+01 3.2869436e+02 3.5682105e+03 - -1.0326490e+02 3.2825470e+02 3.5684781e+03 - -1.3607398e+02 3.2768246e+02 3.5688467e+03 - -1.6758356e+02 3.2701692e+02 3.5693108e+03 - -1.9756319e+02 3.2630347e+02 3.5698635e+03 - -2.2583311e+02 3.2559074e+02 3.5704973e+03 - -2.5226458e+02 3.2492779e+02 3.5712036e+03 - -2.7677731e+02 3.2436179e+02 3.5719739e+03 - -2.9933473e+02 3.2393607e+02 3.5727993e+03 - -3.1993798e+02 3.2368884e+02 3.5736708e+03 - -3.3861920e+02 3.2365239e+02 3.5745800e+03 - -3.5543499e+02 3.2385277e+02 3.5755185e+03 - -3.7046012e+02 3.2430987e+02 3.5764783e+03 - -3.8378210e+02 3.2503769e+02 3.5774519e+03 - -3.9549648e+02 3.2604490e+02 3.5784323e+03 - -4.0570307e+02 3.2733536e+02 3.5794131e+03 - -4.1450291e+02 3.2890883e+02 3.5803881e+03 - -4.2199605e+02 3.3076152e+02 3.5813517e+03 - -4.2827985e+02 3.3288672e+02 3.5822989e+03 - -4.3344788e+02 3.3527528e+02 3.5832248e+03 - -4.3758917e+02 3.3791607e+02 3.5841253e+03 - -4.4078781e+02 3.4079638e+02 3.5849963e+03 - -4.4312277e+02 3.4390224e+02 3.5858343e+03 - -4.4466788e+02 3.4721866e+02 3.5866359e+03 - -4.4549202e+02 3.5072985e+02 3.5873983e+03 - -4.4565926e+02 3.5441934e+02 3.5881186e+03 - -4.4522917e+02 3.5827017e+02 3.5887946e+03 - -4.4425707e+02 3.6226487e+02 3.5894240e+03 - -4.4279441e+02 3.6638559e+02 3.5900048e+03 - -4.4088900e+02 3.7061407e+02 3.5905352e+03 - -4.3858536e+02 3.7493166e+02 3.5910139e+03 - -4.3592498e+02 3.7931931e+02 3.5914393e+03 - -4.3294663e+02 3.8375751e+02 3.5918103e+03 - -4.2968658e+02 3.8822627e+02 3.5921259e+03 - -4.2617887e+02 3.9270505e+02 3.5923852e+03 - -4.2245552e+02 3.9717266e+02 3.5925876e+03 - -4.1854671e+02 4.0160723e+02 3.5927325e+03 - -4.1448101e+02 4.0598605e+02 3.5928197e+03 - -4.1028553e+02 4.1028553e+02 3.5928487e+03 - -4.0598605e+02 4.1448101e+02 3.5928197e+03 - -4.0160723e+02 4.1854671e+02 3.5927325e+03 - -3.9717266e+02 4.2245552e+02 3.5925876e+03 - -3.9270505e+02 4.2617887e+02 3.5923852e+03 - -3.8822627e+02 4.2968658e+02 3.5921259e+03 - -3.8375751e+02 4.3294663e+02 3.5918103e+03 - -3.7931931e+02 4.3592498e+02 3.5914393e+03 - -3.7493166e+02 4.3858536e+02 3.5910139e+03 - -3.7061407e+02 4.4088900e+02 3.5905352e+03 - -3.6638559e+02 4.4279441e+02 3.5900048e+03 - -3.6226487e+02 4.4425707e+02 3.5894240e+03 - -3.5827017e+02 4.4522917e+02 3.5887946e+03 - -3.5441934e+02 4.4565926e+02 3.5881186e+03 - -3.5072985e+02 4.4549202e+02 3.5873983e+03 - -3.4721866e+02 4.4466788e+02 3.5866359e+03 - -3.4390224e+02 4.4312277e+02 3.5858343e+03 - -3.4079638e+02 4.4078781e+02 3.5849963e+03 - -3.3791607e+02 4.3758917e+02 3.5841253e+03 - -3.3527528e+02 4.3344788e+02 3.5832248e+03 - -3.3288672e+02 4.2827985e+02 3.5822989e+03 - -3.3076152e+02 4.2199605e+02 3.5813517e+03 - -3.2890883e+02 4.1450291e+02 3.5803881e+03 - -3.2733536e+02 4.0570307e+02 3.5794131e+03 - -3.2604490e+02 3.9549648e+02 3.5784323e+03 - -3.2503769e+02 3.8378210e+02 3.5774519e+03 - -3.2430987e+02 3.7046012e+02 3.5764783e+03 - -3.2385277e+02 3.5543499e+02 3.5755185e+03 - -3.2365239e+02 3.3861920e+02 3.5745800e+03 - -3.2368884e+02 3.1993798e+02 3.5736708e+03 - -3.2393607e+02 2.9933473e+02 3.5727993e+03 - -3.2436179e+02 2.7677731e+02 3.5719739e+03 - -3.2492779e+02 2.5226458e+02 3.5712036e+03 - -3.2559074e+02 2.2583311e+02 3.5704973e+03 - -3.2630347e+02 1.9756319e+02 3.5698635e+03 - -3.2701692e+02 1.6758356e+02 3.5693108e+03 - -3.2768246e+02 1.3607398e+02 3.5688467e+03 - -3.2825470e+02 1.0326490e+02 3.5684781e+03 - -3.2869436e+02 6.9433641e+01 3.5682105e+03 - -3.2897102e+02 3.4896928e+01 3.5680482e+03 - -3.2906544e+02 -4.8134273e-09 3.5679938e+03 - -3.0772139e+02 2.4067136e-09 3.5630752e+03 - -3.0762533e+02 -3.6826779e+01 3.5631388e+03 - -3.0734431e+02 -7.3256605e+01 3.5633287e+03 - -3.0689936e+02 -1.0890940e+02 3.5636416e+03 - -3.0632361e+02 -1.4343720e+02 3.5640724e+03 - -3.0565983e+02 -1.7653630e+02 3.5646143e+03 - -3.0495737e+02 -2.0795556e+02 3.5652589e+03 - -3.0426898e+02 -2.3750047e+02 3.5659971e+03 - -3.0364780e+02 -2.6503334e+02 3.5668186e+03 - -3.0314478e+02 -2.9047015e+02 3.5677132e+03 - -3.0280663e+02 -3.1377513e+02 3.5686702e+03 - -3.0267447e+02 -3.3495381e+02 3.5696791e+03 - -3.0278295e+02 -3.5404550e+02 3.5707299e+03 - -3.0315999e+02 -3.7111589e+02 3.5718127e+03 - -3.0382687e+02 -3.8625012e+02 3.5729183e+03 - -3.0479856e+02 -3.9954669e+02 3.5740381e+03 - -3.0608435e+02 -4.1111238e+02 3.5751640e+03 - -3.0768843e+02 -4.2105810e+02 3.5762885e+03 - -3.0961062e+02 -4.2949567e+02 3.5774048e+03 - -3.1184702e+02 -4.3653534e+02 3.5785067e+03 - -3.1439063e+02 -4.4228414e+02 3.5795882e+03 - -3.1723192e+02 -4.4684462e+02 3.5806443e+03 - -3.2035925e+02 -4.5031415e+02 3.5816700e+03 - -3.2375934e+02 -4.5278450e+02 3.5826611e+03 - -3.2741758e+02 -4.5434174e+02 3.5836136e+03 - -3.3131828e+02 -4.5506620e+02 3.5845239e+03 - -3.3544490e+02 -4.5503272e+02 3.5853889e+03 - -3.3978019e+02 -4.5431086e+02 3.5862055e+03 - -3.4430632e+02 -4.5296521e+02 3.5869712e+03 - -3.4900496e+02 -4.5105573e+02 3.5876836e+03 - -3.5385730e+02 -4.4863812e+02 3.5883406e+03 - -3.5884410e+02 -4.4576410e+02 3.5889404e+03 - -3.6394567e+02 -4.4248181e+02 3.5894812e+03 - -3.6914184e+02 -4.3883612e+02 3.5899617e+03 - -3.7441196e+02 -4.3486888e+02 3.5903805e+03 - -3.7973478e+02 -4.3061925e+02 3.5907367e+03 - -3.8508844e+02 -4.2612395e+02 3.5910293e+03 - -3.9045038e+02 -4.2141748e+02 3.5912576e+03 - -3.9579723e+02 -4.1653237e+02 3.5914211e+03 - -4.0110472e+02 -4.1149936e+02 3.5915194e+03 - -4.0634757e+02 -4.0634757e+02 3.5915521e+03 - -4.1149936e+02 -4.0110472e+02 3.5915194e+03 - -4.1653237e+02 -3.9579723e+02 3.5914211e+03 - -4.2141748e+02 -3.9045038e+02 3.5912576e+03 - -4.2612395e+02 -3.8508844e+02 3.5910293e+03 - -4.3061925e+02 -3.7973478e+02 3.5907367e+03 - -4.3486888e+02 -3.7441196e+02 3.5903805e+03 - -4.3883612e+02 -3.6914184e+02 3.5899617e+03 - -4.4248181e+02 -3.6394567e+02 3.5894812e+03 - -4.4576410e+02 -3.5884410e+02 3.5889404e+03 - -4.4863812e+02 -3.5385730e+02 3.5883406e+03 - -4.5105573e+02 -3.4900496e+02 3.5876836e+03 - -4.5296521e+02 -3.4430632e+02 3.5869712e+03 - -4.5431086e+02 -3.3978019e+02 3.5862055e+03 - -4.5503272e+02 -3.3544490e+02 3.5853889e+03 - -4.5506620e+02 -3.3131828e+02 3.5845239e+03 - -4.5434174e+02 -3.2741758e+02 3.5836136e+03 - -4.5278450e+02 -3.2375934e+02 3.5826611e+03 - -4.5031415e+02 -3.2035925e+02 3.5816700e+03 - -4.4684462e+02 -3.1723192e+02 3.5806443e+03 - -4.4228414e+02 -3.1439063e+02 3.5795882e+03 - -4.3653534e+02 -3.1184702e+02 3.5785067e+03 - -4.2949567e+02 -3.0961062e+02 3.5774048e+03 - -4.2105810e+02 -3.0768843e+02 3.5762885e+03 - -4.1111238e+02 -3.0608435e+02 3.5751640e+03 - -3.9954669e+02 -3.0479856e+02 3.5740381e+03 - -3.8625012e+02 -3.0382687e+02 3.5729183e+03 - -3.7111589e+02 -3.0315999e+02 3.5718127e+03 - -3.5404550e+02 -3.0278295e+02 3.5707299e+03 - -3.3495381e+02 -3.0267447e+02 3.5696791e+03 - -3.1377513e+02 -3.0280663e+02 3.5686702e+03 - -2.9047015e+02 -3.0314478e+02 3.5677132e+03 - -2.6503334e+02 -3.0364780e+02 3.5668186e+03 - -2.3750047e+02 -3.0426898e+02 3.5659971e+03 - -2.0795556e+02 -3.0495737e+02 3.5652589e+03 - -1.7653630e+02 -3.0565983e+02 3.5646143e+03 - -1.4343720e+02 -3.0632361e+02 3.5640724e+03 - -1.0890940e+02 -3.0689936e+02 3.5636416e+03 - -7.3256605e+01 -3.0734431e+02 3.5633287e+03 - -3.6826779e+01 -3.0762533e+02 3.5631388e+03 - -2.4067136e-09 -3.0772139e+02 3.5630752e+03 - 3.6826779e+01 -3.0762533e+02 3.5631388e+03 - 7.3256605e+01 -3.0734431e+02 3.5633287e+03 - 1.0890940e+02 -3.0689936e+02 3.5636416e+03 - 1.4343720e+02 -3.0632361e+02 3.5640724e+03 - 1.7653630e+02 -3.0565983e+02 3.5646143e+03 - 2.0795556e+02 -3.0495737e+02 3.5652589e+03 - 2.3750047e+02 -3.0426898e+02 3.5659971e+03 - 2.6503334e+02 -3.0364780e+02 3.5668186e+03 - 2.9047015e+02 -3.0314478e+02 3.5677132e+03 - 3.1377513e+02 -3.0280663e+02 3.5686702e+03 - 3.3495381e+02 -3.0267447e+02 3.5696791e+03 - 3.5404550e+02 -3.0278295e+02 3.5707299e+03 - 3.7111589e+02 -3.0315999e+02 3.5718127e+03 - 3.8625012e+02 -3.0382687e+02 3.5729183e+03 - 3.9954669e+02 -3.0479856e+02 3.5740381e+03 - 4.1111238e+02 -3.0608435e+02 3.5751640e+03 - 4.2105810e+02 -3.0768843e+02 3.5762885e+03 - 4.2949567e+02 -3.0961062e+02 3.5774048e+03 - 4.3653534e+02 -3.1184702e+02 3.5785067e+03 - 4.4228414e+02 -3.1439063e+02 3.5795882e+03 - 4.4684462e+02 -3.1723192e+02 3.5806443e+03 - 4.5031415e+02 -3.2035925e+02 3.5816700e+03 - 4.5278450e+02 -3.2375934e+02 3.5826611e+03 - 4.5434174e+02 -3.2741758e+02 3.5836136e+03 - 4.5506620e+02 -3.3131828e+02 3.5845239e+03 - 4.5503272e+02 -3.3544490e+02 3.5853889e+03 - 4.5431086e+02 -3.3978019e+02 3.5862055e+03 - 4.5296521e+02 -3.4430632e+02 3.5869712e+03 - 4.5105573e+02 -3.4900496e+02 3.5876836e+03 - 4.4863812e+02 -3.5385730e+02 3.5883406e+03 - 4.4576410e+02 -3.5884410e+02 3.5889404e+03 - 4.4248181e+02 -3.6394567e+02 3.5894812e+03 - 4.3883612e+02 -3.6914184e+02 3.5899617e+03 - 4.3486888e+02 -3.7441196e+02 3.5903805e+03 - 4.3061925e+02 -3.7973478e+02 3.5907367e+03 - 4.2612395e+02 -3.8508844e+02 3.5910293e+03 - 4.2141748e+02 -3.9045038e+02 3.5912576e+03 - 4.1653237e+02 -3.9579723e+02 3.5914211e+03 - 4.1149936e+02 -4.0110472e+02 3.5915194e+03 - 4.0634757e+02 -4.0634757e+02 3.5915521e+03 - 4.0110472e+02 -4.1149936e+02 3.5915194e+03 - 3.9579723e+02 -4.1653237e+02 3.5914211e+03 - 3.9045038e+02 -4.2141748e+02 3.5912576e+03 - 3.8508844e+02 -4.2612395e+02 3.5910293e+03 - 3.7973478e+02 -4.3061925e+02 3.5907367e+03 - 3.7441196e+02 -4.3486888e+02 3.5903805e+03 - 3.6914184e+02 -4.3883612e+02 3.5899617e+03 - 3.6394567e+02 -4.4248181e+02 3.5894812e+03 - 3.5884410e+02 -4.4576410e+02 3.5889404e+03 - 3.5385730e+02 -4.4863812e+02 3.5883406e+03 - 3.4900496e+02 -4.5105573e+02 3.5876836e+03 - 3.4430632e+02 -4.5296521e+02 3.5869712e+03 - 3.3978019e+02 -4.5431086e+02 3.5862055e+03 - 3.3544490e+02 -4.5503272e+02 3.5853889e+03 - 3.3131828e+02 -4.5506620e+02 3.5845239e+03 - 3.2741758e+02 -4.5434174e+02 3.5836136e+03 - 3.2375934e+02 -4.5278450e+02 3.5826611e+03 - 3.2035925e+02 -4.5031415e+02 3.5816700e+03 - 3.1723192e+02 -4.4684462e+02 3.5806443e+03 - 3.1439063e+02 -4.4228414e+02 3.5795882e+03 - 3.1184702e+02 -4.3653534e+02 3.5785067e+03 - 3.0961062e+02 -4.2949567e+02 3.5774048e+03 - 3.0768843e+02 -4.2105810e+02 3.5762885e+03 - 3.0608435e+02 -4.1111238e+02 3.5751640e+03 - 3.0479856e+02 -3.9954669e+02 3.5740381e+03 - 3.0382687e+02 -3.8625012e+02 3.5729183e+03 - 3.0315999e+02 -3.7111589e+02 3.5718127e+03 - 3.0278295e+02 -3.5404550e+02 3.5707299e+03 - 3.0267447e+02 -3.3495381e+02 3.5696791e+03 - 3.0280663e+02 -3.1377513e+02 3.5686702e+03 - 3.0314478e+02 -2.9047015e+02 3.5677132e+03 - 3.0364780e+02 -2.6503334e+02 3.5668186e+03 - 3.0426898e+02 -2.3750047e+02 3.5659971e+03 - 3.0495737e+02 -2.0795556e+02 3.5652589e+03 - 3.0565983e+02 -1.7653630e+02 3.5646143e+03 - 3.0632361e+02 -1.4343720e+02 3.5640724e+03 - 3.0689936e+02 -1.0890940e+02 3.5636416e+03 - 3.0734431e+02 -7.3256605e+01 3.5633287e+03 - 3.0762533e+02 -3.6826779e+01 3.5631388e+03 - 3.0772139e+02 -2.4067136e-09 3.5630752e+03 - 3.0762533e+02 3.6826779e+01 3.5631388e+03 - 3.0734431e+02 7.3256605e+01 3.5633287e+03 - 3.0689936e+02 1.0890940e+02 3.5636416e+03 - 3.0632361e+02 1.4343720e+02 3.5640724e+03 - 3.0565983e+02 1.7653630e+02 3.5646143e+03 - 3.0495737e+02 2.0795556e+02 3.5652589e+03 - 3.0426898e+02 2.3750047e+02 3.5659971e+03 - 3.0364780e+02 2.6503334e+02 3.5668186e+03 - 3.0314478e+02 2.9047015e+02 3.5677132e+03 - 3.0280663e+02 3.1377513e+02 3.5686702e+03 - 3.0267447e+02 3.3495381e+02 3.5696791e+03 - 3.0278295e+02 3.5404550e+02 3.5707299e+03 - 3.0315999e+02 3.7111589e+02 3.5718127e+03 - 3.0382687e+02 3.8625012e+02 3.5729183e+03 - 3.0479856e+02 3.9954669e+02 3.5740381e+03 - 3.0608435e+02 4.1111238e+02 3.5751640e+03 - 3.0768843e+02 4.2105810e+02 3.5762885e+03 - 3.0961062e+02 4.2949567e+02 3.5774048e+03 - 3.1184702e+02 4.3653534e+02 3.5785067e+03 - 3.1439063e+02 4.4228414e+02 3.5795882e+03 - 3.1723192e+02 4.4684462e+02 3.5806443e+03 - 3.2035925e+02 4.5031415e+02 3.5816700e+03 - 3.2375934e+02 4.5278450e+02 3.5826611e+03 - 3.2741758e+02 4.5434174e+02 3.5836136e+03 - 3.3131828e+02 4.5506620e+02 3.5845239e+03 - 3.3544490e+02 4.5503272e+02 3.5853889e+03 - 3.3978019e+02 4.5431086e+02 3.5862055e+03 - 3.4430632e+02 4.5296521e+02 3.5869712e+03 - 3.4900496e+02 4.5105573e+02 3.5876836e+03 - 3.5385730e+02 4.4863812e+02 3.5883406e+03 - 3.5884410e+02 4.4576410e+02 3.5889404e+03 - 3.6394567e+02 4.4248181e+02 3.5894812e+03 - 3.6914184e+02 4.3883612e+02 3.5899617e+03 - 3.7441196e+02 4.3486888e+02 3.5903805e+03 - 3.7973478e+02 4.3061925e+02 3.5907367e+03 - 3.8508844e+02 4.2612395e+02 3.5910293e+03 - 3.9045038e+02 4.2141748e+02 3.5912576e+03 - 3.9579723e+02 4.1653237e+02 3.5914211e+03 - 4.0110472e+02 4.1149936e+02 3.5915194e+03 - 4.0634757e+02 4.0634757e+02 3.5915521e+03 - 4.1149936e+02 4.0110472e+02 3.5915194e+03 - 4.1653237e+02 3.9579723e+02 3.5914211e+03 - 4.2141748e+02 3.9045038e+02 3.5912576e+03 - 4.2612395e+02 3.8508844e+02 3.5910293e+03 - 4.3061925e+02 3.7973478e+02 3.5907367e+03 - 4.3486888e+02 3.7441196e+02 3.5903805e+03 - 4.3883612e+02 3.6914184e+02 3.5899617e+03 - 4.4248181e+02 3.6394567e+02 3.5894812e+03 - 4.4576410e+02 3.5884410e+02 3.5889404e+03 - 4.4863812e+02 3.5385730e+02 3.5883406e+03 - 4.5105573e+02 3.4900496e+02 3.5876836e+03 - 4.5296521e+02 3.4430632e+02 3.5869712e+03 - 4.5431086e+02 3.3978019e+02 3.5862055e+03 - 4.5503272e+02 3.3544490e+02 3.5853889e+03 - 4.5506620e+02 3.3131828e+02 3.5845239e+03 - 4.5434174e+02 3.2741758e+02 3.5836136e+03 - 4.5278450e+02 3.2375934e+02 3.5826611e+03 - 4.5031415e+02 3.2035925e+02 3.5816700e+03 - 4.4684462e+02 3.1723192e+02 3.5806443e+03 - 4.4228414e+02 3.1439063e+02 3.5795882e+03 - 4.3653534e+02 3.1184702e+02 3.5785067e+03 - 4.2949567e+02 3.0961062e+02 3.5774048e+03 - 4.2105810e+02 3.0768843e+02 3.5762885e+03 - 4.1111238e+02 3.0608435e+02 3.5751640e+03 - 3.9954669e+02 3.0479856e+02 3.5740381e+03 - 3.8625012e+02 3.0382687e+02 3.5729183e+03 - 3.7111589e+02 3.0315999e+02 3.5718127e+03 - 3.5404550e+02 3.0278295e+02 3.5707299e+03 - 3.3495381e+02 3.0267447e+02 3.5696791e+03 - 3.1377513e+02 3.0280663e+02 3.5686702e+03 - 2.9047015e+02 3.0314478e+02 3.5677132e+03 - 2.6503334e+02 3.0364780e+02 3.5668186e+03 - 2.3750047e+02 3.0426898e+02 3.5659971e+03 - 2.0795556e+02 3.0495737e+02 3.5652589e+03 - 1.7653630e+02 3.0565983e+02 3.5646143e+03 - 1.4343720e+02 3.0632361e+02 3.5640724e+03 - 1.0890940e+02 3.0689936e+02 3.5636416e+03 - 7.3256605e+01 3.0734431e+02 3.5633287e+03 - 3.6826779e+01 3.0762533e+02 3.5631388e+03 - -2.4067136e-09 3.0772139e+02 3.5630752e+03 - -3.6826779e+01 3.0762533e+02 3.5631388e+03 - -7.3256605e+01 3.0734431e+02 3.5633287e+03 - -1.0890940e+02 3.0689936e+02 3.5636416e+03 - -1.4343720e+02 3.0632361e+02 3.5640724e+03 - -1.7653630e+02 3.0565983e+02 3.5646143e+03 - -2.0795556e+02 3.0495737e+02 3.5652589e+03 - -2.3750047e+02 3.0426898e+02 3.5659971e+03 - -2.6503334e+02 3.0364780e+02 3.5668186e+03 - -2.9047015e+02 3.0314478e+02 3.5677132e+03 - -3.1377513e+02 3.0280663e+02 3.5686702e+03 - -3.3495381e+02 3.0267447e+02 3.5696791e+03 - -3.5404550e+02 3.0278295e+02 3.5707299e+03 - -3.7111589e+02 3.0315999e+02 3.5718127e+03 - -3.8625012e+02 3.0382687e+02 3.5729183e+03 - -3.9954669e+02 3.0479856e+02 3.5740381e+03 - -4.1111238e+02 3.0608435e+02 3.5751640e+03 - -4.2105810e+02 3.0768843e+02 3.5762885e+03 - -4.2949567e+02 3.0961062e+02 3.5774048e+03 - -4.3653534e+02 3.1184702e+02 3.5785067e+03 - -4.4228414e+02 3.1439063e+02 3.5795882e+03 - -4.4684462e+02 3.1723192e+02 3.5806443e+03 - -4.5031415e+02 3.2035925e+02 3.5816700e+03 - -4.5278450e+02 3.2375934e+02 3.5826611e+03 - -4.5434174e+02 3.2741758e+02 3.5836136e+03 - -4.5506620e+02 3.3131828e+02 3.5845239e+03 - -4.5503272e+02 3.3544490e+02 3.5853889e+03 - -4.5431086e+02 3.3978019e+02 3.5862055e+03 - -4.5296521e+02 3.4430632e+02 3.5869712e+03 - -4.5105573e+02 3.4900496e+02 3.5876836e+03 - -4.4863812e+02 3.5385730e+02 3.5883406e+03 - -4.4576410e+02 3.5884410e+02 3.5889404e+03 - -4.4248181e+02 3.6394567e+02 3.5894812e+03 - -4.3883612e+02 3.6914184e+02 3.5899617e+03 - -4.3486888e+02 3.7441196e+02 3.5903805e+03 - -4.3061925e+02 3.7973478e+02 3.5907367e+03 - -4.2612395e+02 3.8508844e+02 3.5910293e+03 - -4.2141748e+02 3.9045038e+02 3.5912576e+03 - -4.1653237e+02 3.9579723e+02 3.5914211e+03 - -4.1149936e+02 4.0110472e+02 3.5915194e+03 - -4.0634757e+02 4.0634757e+02 3.5915521e+03 - -4.0110472e+02 4.1149936e+02 3.5915194e+03 - -3.9579723e+02 4.1653237e+02 3.5914211e+03 - -3.9045038e+02 4.2141748e+02 3.5912576e+03 - -3.8508844e+02 4.2612395e+02 3.5910293e+03 - -3.7973478e+02 4.3061925e+02 3.5907367e+03 - -3.7441196e+02 4.3486888e+02 3.5903805e+03 - -3.6914184e+02 4.3883612e+02 3.5899617e+03 - -3.6394567e+02 4.4248181e+02 3.5894812e+03 - -3.5884410e+02 4.4576410e+02 3.5889404e+03 - -3.5385730e+02 4.4863812e+02 3.5883406e+03 - -3.4900496e+02 4.5105573e+02 3.5876836e+03 - -3.4430632e+02 4.5296521e+02 3.5869712e+03 - -3.3978019e+02 4.5431086e+02 3.5862055e+03 - -3.3544490e+02 4.5503272e+02 3.5853889e+03 - -3.3131828e+02 4.5506620e+02 3.5845239e+03 - -3.2741758e+02 4.5434174e+02 3.5836136e+03 - -3.2375934e+02 4.5278450e+02 3.5826611e+03 - -3.2035925e+02 4.5031415e+02 3.5816700e+03 - -3.1723192e+02 4.4684462e+02 3.5806443e+03 - -3.1439063e+02 4.4228414e+02 3.5795882e+03 - -3.1184702e+02 4.3653534e+02 3.5785067e+03 - -3.0961062e+02 4.2949567e+02 3.5774048e+03 - -3.0768843e+02 4.2105810e+02 3.5762885e+03 - -3.0608435e+02 4.1111238e+02 3.5751640e+03 - -3.0479856e+02 3.9954669e+02 3.5740381e+03 - -3.0382687e+02 3.8625012e+02 3.5729183e+03 - -3.0315999e+02 3.7111589e+02 3.5718127e+03 - -3.0278295e+02 3.5404550e+02 3.5707299e+03 - -3.0267447e+02 3.3495381e+02 3.5696791e+03 - -3.0280663e+02 3.1377513e+02 3.5686702e+03 - -3.0314478e+02 2.9047015e+02 3.5677132e+03 - -3.0364780e+02 2.6503334e+02 3.5668186e+03 - -3.0426898e+02 2.3750047e+02 3.5659971e+03 - -3.0495737e+02 2.0795556e+02 3.5652589e+03 - -3.0565983e+02 1.7653630e+02 3.5646143e+03 - -3.0632361e+02 1.4343720e+02 3.5640724e+03 - -3.0689936e+02 1.0890940e+02 3.5636416e+03 - -3.0734431e+02 7.3256605e+01 3.5633287e+03 - -3.0762533e+02 3.6826779e+01 3.5631388e+03 - -3.0772139e+02 -2.4067136e-09 3.5630752e+03 - -2.7765219e+02 0.0000000e+00 3.5555282e+03 - -2.7755608e+02 -3.8555461e+01 3.5556017e+03 - -2.7727554e+02 -7.6675887e+01 3.5558212e+03 - -2.7683333e+02 -1.1394519e+02 3.5561827e+03 - -2.7626527e+02 -1.4998329e+02 3.5566800e+03 - -2.7561758e+02 -1.8445964e+02 3.5573048e+03 - -2.7494346e+02 -2.1710238e+02 3.5580471e+03 - -2.7429968e+02 -2.4770263e+02 3.5588959e+03 - -2.7374329e+02 -2.7611442e+02 3.5598392e+03 - -2.7332884e+02 -3.0225097e+02 3.5608646e+03 - -2.7310623e+02 -3.2607835e+02 3.5619596e+03 - -2.7311926e+02 -3.4760763e+02 3.5631120e+03 - -2.7340475e+02 -3.6688636e+02 3.5643099e+03 - -2.7399231e+02 -3.8399032e+02 3.5655422e+03 - -2.7490442e+02 -3.9901585e+02 3.5667982e+03 - -2.7615693e+02 -4.1207322e+02 3.5680680e+03 - -2.7775961e+02 -4.2328100e+02 3.5693426e+03 - -2.7971693e+02 -4.3276165e+02 3.5706136e+03 - -2.8202874e+02 -4.4063806e+02 3.5718733e+03 - -2.8469102e+02 -4.4703094e+02 3.5731148e+03 - -2.8769653e+02 -4.5205707e+02 3.5743317e+03 - -2.9103536e+02 -4.5582804e+02 3.5755182e+03 - -2.9469546e+02 -4.5844956e+02 3.5766693e+03 - -2.9866306e+02 -4.6002105e+02 3.5777801e+03 - -3.0292299e+02 -4.6063554e+02 3.5788464e+03 - -3.0745897e+02 -4.6037979e+02 3.5798644e+03 - -3.1225382e+02 -4.5933447e+02 3.5808308e+03 - -3.1728961e+02 -4.5757449e+02 3.5817423e+03 - -3.2254779e+02 -4.5516932e+02 3.5825962e+03 - -3.2800925e+02 -4.5218342e+02 3.5833901e+03 - -3.3365438e+02 -4.4867658e+02 3.5841218e+03 - -3.3946304e+02 -4.4470433e+02 3.5847893e+03 - -3.4541463e+02 -4.4031829e+02 3.5853908e+03 - -3.5148799e+02 -4.3556654e+02 3.5859250e+03 - -3.5766140e+02 -4.3049391e+02 3.5863904e+03 - -3.6391248e+02 -4.2514234e+02 3.5867861e+03 - -3.7021819e+02 -4.1955108e+02 3.5871110e+03 - -3.7655466e+02 -4.1375704e+02 3.5873645e+03 - -3.8289714e+02 -4.0779495e+02 3.5875459e+03 - -3.8921991e+02 -4.0169762e+02 3.5876550e+03 - -3.9549610e+02 -3.9549610e+02 3.5876913e+03 - -4.0169762e+02 -3.8921991e+02 3.5876550e+03 - -4.0779495e+02 -3.8289714e+02 3.5875459e+03 - -4.1375704e+02 -3.7655466e+02 3.5873645e+03 - -4.1955108e+02 -3.7021819e+02 3.5871110e+03 - -4.2514234e+02 -3.6391248e+02 3.5867861e+03 - -4.3049391e+02 -3.5766140e+02 3.5863904e+03 - -4.3556654e+02 -3.5148799e+02 3.5859250e+03 - -4.4031829e+02 -3.4541463e+02 3.5853908e+03 - -4.4470433e+02 -3.3946304e+02 3.5847893e+03 - -4.4867658e+02 -3.3365438e+02 3.5841218e+03 - -4.5218342e+02 -3.2800925e+02 3.5833901e+03 - -4.5516932e+02 -3.2254779e+02 3.5825962e+03 - -4.5757449e+02 -3.1728961e+02 3.5817423e+03 - -4.5933447e+02 -3.1225382e+02 3.5808308e+03 - -4.6037979e+02 -3.0745897e+02 3.5798644e+03 - -4.6063554e+02 -3.0292299e+02 3.5788464e+03 - -4.6002105e+02 -2.9866306e+02 3.5777801e+03 - -4.5844956e+02 -2.9469546e+02 3.5766693e+03 - -4.5582804e+02 -2.9103536e+02 3.5755182e+03 - -4.5205707e+02 -2.8769653e+02 3.5743317e+03 - -4.4703094e+02 -2.8469102e+02 3.5731148e+03 - -4.4063806e+02 -2.8202874e+02 3.5718733e+03 - -4.3276165e+02 -2.7971693e+02 3.5706136e+03 - -4.2328100e+02 -2.7775961e+02 3.5693426e+03 - -4.1207322e+02 -2.7615693e+02 3.5680680e+03 - -3.9901585e+02 -2.7490442e+02 3.5667982e+03 - -3.8399032e+02 -2.7399231e+02 3.5655422e+03 - -3.6688636e+02 -2.7340475e+02 3.5643099e+03 - -3.4760763e+02 -2.7311926e+02 3.5631120e+03 - -3.2607835e+02 -2.7310623e+02 3.5619596e+03 - -3.0225097e+02 -2.7332884e+02 3.5608646e+03 - -2.7611442e+02 -2.7374329e+02 3.5598392e+03 - -2.4770263e+02 -2.7429968e+02 3.5588959e+03 - -2.1710238e+02 -2.7494346e+02 3.5580471e+03 - -1.8445964e+02 -2.7561758e+02 3.5573048e+03 - -1.4998329e+02 -2.7626527e+02 3.5566800e+03 - -1.1394519e+02 -2.7683333e+02 3.5561827e+03 - -7.6675887e+01 -2.7727554e+02 3.5558212e+03 - -3.8555461e+01 -2.7755608e+02 3.5556017e+03 - -4.8134273e-09 -2.7765219e+02 3.5555282e+03 - 3.8555461e+01 -2.7755608e+02 3.5556017e+03 - 7.6675887e+01 -2.7727554e+02 3.5558212e+03 - 1.1394519e+02 -2.7683333e+02 3.5561827e+03 - 1.4998329e+02 -2.7626527e+02 3.5566800e+03 - 1.8445964e+02 -2.7561758e+02 3.5573048e+03 - 2.1710238e+02 -2.7494346e+02 3.5580471e+03 - 2.4770263e+02 -2.7429968e+02 3.5588959e+03 - 2.7611442e+02 -2.7374329e+02 3.5598392e+03 - 3.0225097e+02 -2.7332884e+02 3.5608646e+03 - 3.2607835e+02 -2.7310623e+02 3.5619596e+03 - 3.4760763e+02 -2.7311926e+02 3.5631120e+03 - 3.6688636e+02 -2.7340475e+02 3.5643099e+03 - 3.8399032e+02 -2.7399231e+02 3.5655422e+03 - 3.9901585e+02 -2.7490442e+02 3.5667982e+03 - 4.1207322e+02 -2.7615693e+02 3.5680680e+03 - 4.2328100e+02 -2.7775961e+02 3.5693426e+03 - 4.3276165e+02 -2.7971693e+02 3.5706136e+03 - 4.4063806e+02 -2.8202874e+02 3.5718733e+03 - 4.4703094e+02 -2.8469102e+02 3.5731148e+03 - 4.5205707e+02 -2.8769653e+02 3.5743317e+03 - 4.5582804e+02 -2.9103536e+02 3.5755182e+03 - 4.5844956e+02 -2.9469546e+02 3.5766693e+03 - 4.6002105e+02 -2.9866306e+02 3.5777801e+03 - 4.6063554e+02 -3.0292299e+02 3.5788464e+03 - 4.6037979e+02 -3.0745897e+02 3.5798644e+03 - 4.5933447e+02 -3.1225382e+02 3.5808308e+03 - 4.5757449e+02 -3.1728961e+02 3.5817423e+03 - 4.5516932e+02 -3.2254779e+02 3.5825962e+03 - 4.5218342e+02 -3.2800925e+02 3.5833901e+03 - 4.4867658e+02 -3.3365438e+02 3.5841218e+03 - 4.4470433e+02 -3.3946304e+02 3.5847893e+03 - 4.4031829e+02 -3.4541463e+02 3.5853908e+03 - 4.3556654e+02 -3.5148799e+02 3.5859250e+03 - 4.3049391e+02 -3.5766140e+02 3.5863904e+03 - 4.2514234e+02 -3.6391248e+02 3.5867861e+03 - 4.1955108e+02 -3.7021819e+02 3.5871110e+03 - 4.1375704e+02 -3.7655466e+02 3.5873645e+03 - 4.0779495e+02 -3.8289714e+02 3.5875459e+03 - 4.0169762e+02 -3.8921991e+02 3.5876550e+03 - 3.9549610e+02 -3.9549610e+02 3.5876913e+03 - 3.8921991e+02 -4.0169762e+02 3.5876550e+03 - 3.8289714e+02 -4.0779495e+02 3.5875459e+03 - 3.7655466e+02 -4.1375704e+02 3.5873645e+03 - 3.7021819e+02 -4.1955108e+02 3.5871110e+03 - 3.6391248e+02 -4.2514234e+02 3.5867861e+03 - 3.5766140e+02 -4.3049391e+02 3.5863904e+03 - 3.5148799e+02 -4.3556654e+02 3.5859250e+03 - 3.4541463e+02 -4.4031829e+02 3.5853908e+03 - 3.3946304e+02 -4.4470433e+02 3.5847893e+03 - 3.3365438e+02 -4.4867658e+02 3.5841218e+03 - 3.2800925e+02 -4.5218342e+02 3.5833901e+03 - 3.2254779e+02 -4.5516932e+02 3.5825962e+03 - 3.1728961e+02 -4.5757449e+02 3.5817423e+03 - 3.1225382e+02 -4.5933447e+02 3.5808308e+03 - 3.0745897e+02 -4.6037979e+02 3.5798644e+03 - 3.0292299e+02 -4.6063554e+02 3.5788464e+03 - 2.9866306e+02 -4.6002105e+02 3.5777801e+03 - 2.9469546e+02 -4.5844956e+02 3.5766693e+03 - 2.9103536e+02 -4.5582804e+02 3.5755182e+03 - 2.8769653e+02 -4.5205707e+02 3.5743317e+03 - 2.8469102e+02 -4.4703094e+02 3.5731148e+03 - 2.8202874e+02 -4.4063806e+02 3.5718733e+03 - 2.7971693e+02 -4.3276165e+02 3.5706136e+03 - 2.7775961e+02 -4.2328100e+02 3.5693426e+03 - 2.7615693e+02 -4.1207322e+02 3.5680680e+03 - 2.7490442e+02 -3.9901585e+02 3.5667982e+03 - 2.7399231e+02 -3.8399032e+02 3.5655422e+03 - 2.7340475e+02 -3.6688636e+02 3.5643099e+03 - 2.7311926e+02 -3.4760763e+02 3.5631120e+03 - 2.7310623e+02 -3.2607835e+02 3.5619596e+03 - 2.7332884e+02 -3.0225097e+02 3.5608646e+03 - 2.7374329e+02 -2.7611442e+02 3.5598392e+03 - 2.7429968e+02 -2.4770263e+02 3.5588959e+03 - 2.7494346e+02 -2.1710238e+02 3.5580471e+03 - 2.7561758e+02 -1.8445964e+02 3.5573048e+03 - 2.7626527e+02 -1.4998329e+02 3.5566800e+03 - 2.7683333e+02 -1.1394519e+02 3.5561827e+03 - 2.7727554e+02 -7.6675887e+01 3.5558212e+03 - 2.7755608e+02 -3.8555461e+01 3.5556017e+03 - 2.7765219e+02 0.0000000e+00 3.5555282e+03 - 2.7755608e+02 3.8555461e+01 3.5556017e+03 - 2.7727554e+02 7.6675887e+01 3.5558212e+03 - 2.7683333e+02 1.1394519e+02 3.5561827e+03 - 2.7626527e+02 1.4998329e+02 3.5566800e+03 - 2.7561758e+02 1.8445964e+02 3.5573048e+03 - 2.7494346e+02 2.1710238e+02 3.5580471e+03 - 2.7429968e+02 2.4770263e+02 3.5588959e+03 - 2.7374329e+02 2.7611442e+02 3.5598392e+03 - 2.7332884e+02 3.0225097e+02 3.5608646e+03 - 2.7310623e+02 3.2607835e+02 3.5619596e+03 - 2.7311926e+02 3.4760763e+02 3.5631120e+03 - 2.7340475e+02 3.6688636e+02 3.5643099e+03 - 2.7399231e+02 3.8399032e+02 3.5655422e+03 - 2.7490442e+02 3.9901585e+02 3.5667982e+03 - 2.7615693e+02 4.1207322e+02 3.5680680e+03 - 2.7775961e+02 4.2328100e+02 3.5693426e+03 - 2.7971693e+02 4.3276165e+02 3.5706136e+03 - 2.8202874e+02 4.4063806e+02 3.5718733e+03 - 2.8469102e+02 4.4703094e+02 3.5731148e+03 - 2.8769653e+02 4.5205707e+02 3.5743317e+03 - 2.9103536e+02 4.5582804e+02 3.5755182e+03 - 2.9469546e+02 4.5844956e+02 3.5766693e+03 - 2.9866306e+02 4.6002105e+02 3.5777801e+03 - 3.0292299e+02 4.6063554e+02 3.5788464e+03 - 3.0745897e+02 4.6037979e+02 3.5798644e+03 - 3.1225382e+02 4.5933447e+02 3.5808308e+03 - 3.1728961e+02 4.5757449e+02 3.5817423e+03 - 3.2254779e+02 4.5516932e+02 3.5825962e+03 - 3.2800925e+02 4.5218342e+02 3.5833901e+03 - 3.3365438e+02 4.4867658e+02 3.5841218e+03 - 3.3946304e+02 4.4470433e+02 3.5847893e+03 - 3.4541463e+02 4.4031829e+02 3.5853908e+03 - 3.5148799e+02 4.3556654e+02 3.5859250e+03 - 3.5766140e+02 4.3049391e+02 3.5863904e+03 - 3.6391248e+02 4.2514234e+02 3.5867861e+03 - 3.7021819e+02 4.1955108e+02 3.5871110e+03 - 3.7655466e+02 4.1375704e+02 3.5873645e+03 - 3.8289714e+02 4.0779495e+02 3.5875459e+03 - 3.8921991e+02 4.0169762e+02 3.5876550e+03 - 3.9549610e+02 3.9549610e+02 3.5876913e+03 - 4.0169762e+02 3.8921991e+02 3.5876550e+03 - 4.0779495e+02 3.8289714e+02 3.5875459e+03 - 4.1375704e+02 3.7655466e+02 3.5873645e+03 - 4.1955108e+02 3.7021819e+02 3.5871110e+03 - 4.2514234e+02 3.6391248e+02 3.5867861e+03 - 4.3049391e+02 3.5766140e+02 3.5863904e+03 - 4.3556654e+02 3.5148799e+02 3.5859250e+03 - 4.4031829e+02 3.4541463e+02 3.5853908e+03 - 4.4470433e+02 3.3946304e+02 3.5847893e+03 - 4.4867658e+02 3.3365438e+02 3.5841218e+03 - 4.5218342e+02 3.2800925e+02 3.5833901e+03 - 4.5516932e+02 3.2254779e+02 3.5825962e+03 - 4.5757449e+02 3.1728961e+02 3.5817423e+03 - 4.5933447e+02 3.1225382e+02 3.5808308e+03 - 4.6037979e+02 3.0745897e+02 3.5798644e+03 - 4.6063554e+02 3.0292299e+02 3.5788464e+03 - 4.6002105e+02 2.9866306e+02 3.5777801e+03 - 4.5844956e+02 2.9469546e+02 3.5766693e+03 - 4.5582804e+02 2.9103536e+02 3.5755182e+03 - 4.5205707e+02 2.8769653e+02 3.5743317e+03 - 4.4703094e+02 2.8469102e+02 3.5731148e+03 - 4.4063806e+02 2.8202874e+02 3.5718733e+03 - 4.3276165e+02 2.7971693e+02 3.5706136e+03 - 4.2328100e+02 2.7775961e+02 3.5693426e+03 - 4.1207322e+02 2.7615693e+02 3.5680680e+03 - 3.9901585e+02 2.7490442e+02 3.5667982e+03 - 3.8399032e+02 2.7399231e+02 3.5655422e+03 - 3.6688636e+02 2.7340475e+02 3.5643099e+03 - 3.4760763e+02 2.7311926e+02 3.5631120e+03 - 3.2607835e+02 2.7310623e+02 3.5619596e+03 - 3.0225097e+02 2.7332884e+02 3.5608646e+03 - 2.7611442e+02 2.7374329e+02 3.5598392e+03 - 2.4770263e+02 2.7429968e+02 3.5588959e+03 - 2.1710238e+02 2.7494346e+02 3.5580471e+03 - 1.8445964e+02 2.7561758e+02 3.5573048e+03 - 1.4998329e+02 2.7626527e+02 3.5566800e+03 - 1.1394519e+02 2.7683333e+02 3.5561827e+03 - 7.6675887e+01 2.7727554e+02 3.5558212e+03 - 3.8555461e+01 2.7755608e+02 3.5556017e+03 - 1.2033568e-08 2.7765219e+02 3.5555282e+03 - -3.8555461e+01 2.7755608e+02 3.5556017e+03 - -7.6675887e+01 2.7727554e+02 3.5558212e+03 - -1.1394519e+02 2.7683333e+02 3.5561827e+03 - -1.4998329e+02 2.7626527e+02 3.5566800e+03 - -1.8445964e+02 2.7561758e+02 3.5573048e+03 - -2.1710238e+02 2.7494346e+02 3.5580471e+03 - -2.4770263e+02 2.7429968e+02 3.5588959e+03 - -2.7611442e+02 2.7374329e+02 3.5598392e+03 - -3.0225097e+02 2.7332884e+02 3.5608646e+03 - -3.2607835e+02 2.7310623e+02 3.5619596e+03 - -3.4760763e+02 2.7311926e+02 3.5631120e+03 - -3.6688636e+02 2.7340475e+02 3.5643099e+03 - -3.8399032e+02 2.7399231e+02 3.5655422e+03 - -3.9901585e+02 2.7490442e+02 3.5667982e+03 - -4.1207322e+02 2.7615693e+02 3.5680680e+03 - -4.2328100e+02 2.7775961e+02 3.5693426e+03 - -4.3276165e+02 2.7971693e+02 3.5706136e+03 - -4.4063806e+02 2.8202874e+02 3.5718733e+03 - -4.4703094e+02 2.8469102e+02 3.5731148e+03 - -4.5205707e+02 2.8769653e+02 3.5743317e+03 - -4.5582804e+02 2.9103536e+02 3.5755182e+03 - -4.5844956e+02 2.9469546e+02 3.5766693e+03 - -4.6002105e+02 2.9866306e+02 3.5777801e+03 - -4.6063554e+02 3.0292299e+02 3.5788464e+03 - -4.6037979e+02 3.0745897e+02 3.5798644e+03 - -4.5933447e+02 3.1225382e+02 3.5808308e+03 - -4.5757449e+02 3.1728961e+02 3.5817423e+03 - -4.5516932e+02 3.2254779e+02 3.5825962e+03 - -4.5218342e+02 3.2800925e+02 3.5833901e+03 - -4.4867658e+02 3.3365438e+02 3.5841218e+03 - -4.4470433e+02 3.3946304e+02 3.5847893e+03 - -4.4031829e+02 3.4541463e+02 3.5853908e+03 - -4.3556654e+02 3.5148799e+02 3.5859250e+03 - -4.3049391e+02 3.5766140e+02 3.5863904e+03 - -4.2514234e+02 3.6391248e+02 3.5867861e+03 - -4.1955108e+02 3.7021819e+02 3.5871110e+03 - -4.1375704e+02 3.7655466e+02 3.5873645e+03 - -4.0779495e+02 3.8289714e+02 3.5875459e+03 - -4.0169762e+02 3.8921991e+02 3.5876550e+03 - -3.9549610e+02 3.9549610e+02 3.5876913e+03 - -3.8921991e+02 4.0169762e+02 3.5876550e+03 - -3.8289714e+02 4.0779495e+02 3.5875459e+03 - -3.7655466e+02 4.1375704e+02 3.5873645e+03 - -3.7021819e+02 4.1955108e+02 3.5871110e+03 - -3.6391248e+02 4.2514234e+02 3.5867861e+03 - -3.5766140e+02 4.3049391e+02 3.5863904e+03 - -3.5148799e+02 4.3556654e+02 3.5859250e+03 - -3.4541463e+02 4.4031829e+02 3.5853908e+03 - -3.3946304e+02 4.4470433e+02 3.5847893e+03 - -3.3365438e+02 4.4867658e+02 3.5841218e+03 - -3.2800925e+02 4.5218342e+02 3.5833901e+03 - -3.2254779e+02 4.5516932e+02 3.5825962e+03 - -3.1728961e+02 4.5757449e+02 3.5817423e+03 - -3.1225382e+02 4.5933447e+02 3.5808308e+03 - -3.0745897e+02 4.6037979e+02 3.5798644e+03 - -3.0292299e+02 4.6063554e+02 3.5788464e+03 - -2.9866306e+02 4.6002105e+02 3.5777801e+03 - -2.9469546e+02 4.5844956e+02 3.5766693e+03 - -2.9103536e+02 4.5582804e+02 3.5755182e+03 - -2.8769653e+02 4.5205707e+02 3.5743317e+03 - -2.8469102e+02 4.4703094e+02 3.5731148e+03 - -2.8202874e+02 4.4063806e+02 3.5718733e+03 - -2.7971693e+02 4.3276165e+02 3.5706136e+03 - -2.7775961e+02 4.2328100e+02 3.5693426e+03 - -2.7615693e+02 4.1207322e+02 3.5680680e+03 - -2.7490442e+02 3.9901585e+02 3.5667982e+03 - -2.7399231e+02 3.8399032e+02 3.5655422e+03 - -2.7340475e+02 3.6688636e+02 3.5643099e+03 - -2.7311926e+02 3.4760763e+02 3.5631120e+03 - -2.7310623e+02 3.2607835e+02 3.5619596e+03 - -2.7332884e+02 3.0225097e+02 3.5608646e+03 - -2.7374329e+02 2.7611442e+02 3.5598392e+03 - -2.7429968e+02 2.4770263e+02 3.5588959e+03 - -2.7494346e+02 2.1710238e+02 3.5580471e+03 - -2.7561758e+02 1.8445964e+02 3.5573048e+03 - -2.7626527e+02 1.4998329e+02 3.5566800e+03 - -2.7683333e+02 1.1394519e+02 3.5561827e+03 - -2.7727554e+02 7.6675887e+01 3.5558212e+03 - -2.7755608e+02 3.8555461e+01 3.5556017e+03 - -2.7765219e+02 1.2033568e-08 3.5555282e+03 - -2.3928315e+02 0.0000000e+00 3.5450980e+03 - -2.3918862e+02 -4.0096384e+01 3.5451822e+03 - -2.3891341e+02 -7.9718070e+01 3.5454334e+03 - -2.3848199e+02 -1.1841158e+02 3.5458468e+03 - -2.3793287e+02 -1.5576370e+02 3.5464149e+03 - -2.3731562e+02 -1.9141649e+02 3.5471280e+03 - -2.3668720e+02 -2.2507729e+02 3.5479740e+03 - -2.3610826e+02 -2.5652324e+02 3.5489398e+03 - -2.3563958e+02 -2.8560089e+02 3.5500112e+03 - -2.3533911e+02 -3.1222172e+02 3.5511737e+03 - -2.3525972e+02 -3.3635485e+02 3.5524128e+03 - -2.3544764e+02 -3.5801808e+02 3.5537142e+03 - -2.3594166e+02 -3.7726840e+02 3.5550644e+03 - -2.3677284e+02 -3.9419276e+02 3.5564505e+03 - -2.3796473e+02 -4.0889964e+02 3.5578605e+03 - -2.3953388e+02 -4.2151181e+02 3.5592833e+03 - -2.4149048e+02 -4.3216026e+02 3.5607088e+03 - -2.4383917e+02 -4.4097948e+02 3.5621277e+03 - -2.4657982e+02 -4.4810373e+02 3.5635315e+03 - -2.4970828e+02 -4.5366439e+02 3.5649128e+03 - -2.5321707e+02 -4.5778812e+02 3.5662645e+03 - -2.5709600e+02 -4.6059559e+02 3.5675806e+03 - -2.6133264e+02 -4.6220081e+02 3.5688555e+03 - -2.6591282e+02 -4.6271076e+02 3.5700842e+03 - -2.7082091e+02 -4.6222538e+02 3.5712622e+03 - -2.7604015e+02 -4.6083769e+02 3.5723856e+03 - -2.8155282e+02 -4.5863408e+02 3.5734508e+03 - -2.8734045e+02 -4.5569463e+02 3.5744545e+03 - -2.9338386e+02 -4.5209357e+02 3.5753940e+03 - -2.9966330e+02 -4.4789969e+02 3.5762667e+03 - -3.0615844e+02 -4.4317673e+02 3.5770703e+03 - -3.1284842e+02 -4.3798387e+02 3.5778030e+03 - -3.1971179e+02 -4.3237607e+02 3.5784628e+03 - -3.2672653e+02 -4.2640449e+02 3.5790485e+03 - -3.3386997e+02 -4.2011681e+02 3.5795585e+03 - -3.4111873e+02 -4.1355759e+02 3.5799919e+03 - -3.4844865e+02 -4.0676854e+02 3.5803477e+03 - -3.5583468e+02 -3.9978882e+02 3.5806252e+03 - -3.6325082e+02 -3.9265526e+02 3.5808238e+03 - -3.7066997e+02 -3.8540262e+02 3.5809431e+03 - -3.7806379e+02 -3.7806379e+02 3.5809829e+03 - -3.8540262e+02 -3.7066997e+02 3.5809431e+03 - -3.9265526e+02 -3.6325082e+02 3.5808238e+03 - -3.9978882e+02 -3.5583468e+02 3.5806252e+03 - -4.0676854e+02 -3.4844865e+02 3.5803477e+03 - -4.1355759e+02 -3.4111873e+02 3.5799919e+03 - -4.2011681e+02 -3.3386997e+02 3.5795585e+03 - -4.2640449e+02 -3.2672653e+02 3.5790485e+03 - -4.3237607e+02 -3.1971179e+02 3.5784628e+03 - -4.3798387e+02 -3.1284842e+02 3.5778030e+03 - -4.4317673e+02 -3.0615844e+02 3.5770703e+03 - -4.4789969e+02 -2.9966330e+02 3.5762667e+03 - -4.5209357e+02 -2.9338386e+02 3.5753940e+03 - -4.5569463e+02 -2.8734045e+02 3.5744545e+03 - -4.5863408e+02 -2.8155282e+02 3.5734508e+03 - -4.6083769e+02 -2.7604015e+02 3.5723856e+03 - -4.6222538e+02 -2.7082091e+02 3.5712622e+03 - -4.6271076e+02 -2.6591282e+02 3.5700842e+03 - -4.6220081e+02 -2.6133264e+02 3.5688555e+03 - -4.6059559e+02 -2.5709600e+02 3.5675806e+03 - -4.5778812e+02 -2.5321707e+02 3.5662645e+03 - -4.5366439e+02 -2.4970828e+02 3.5649128e+03 - -4.4810373e+02 -2.4657982e+02 3.5635315e+03 - -4.4097948e+02 -2.4383917e+02 3.5621277e+03 - -4.3216026e+02 -2.4149048e+02 3.5607088e+03 - -4.2151181e+02 -2.3953388e+02 3.5592833e+03 - -4.0889964e+02 -2.3796473e+02 3.5578605e+03 - -3.9419276e+02 -2.3677284e+02 3.5564505e+03 - -3.7726840e+02 -2.3594166e+02 3.5550644e+03 - -3.5801808e+02 -2.3544764e+02 3.5537142e+03 - -3.3635485e+02 -2.3525972e+02 3.5524128e+03 - -3.1222172e+02 -2.3533911e+02 3.5511737e+03 - -2.8560089e+02 -2.3563958e+02 3.5500112e+03 - -2.5652324e+02 -2.3610826e+02 3.5489398e+03 - -2.2507729e+02 -2.3668720e+02 3.5479740e+03 - -1.9141649e+02 -2.3731562e+02 3.5471280e+03 - -1.5576370e+02 -2.3793287e+02 3.5464149e+03 - -1.1841158e+02 -2.3848199e+02 3.5458468e+03 - -7.9718070e+01 -2.3891341e+02 3.5454334e+03 - -4.0096384e+01 -2.3918862e+02 3.5451822e+03 - -2.4067136e-09 -2.3928315e+02 3.5450980e+03 - 4.0096384e+01 -2.3918862e+02 3.5451822e+03 - 7.9718070e+01 -2.3891341e+02 3.5454334e+03 - 1.1841158e+02 -2.3848199e+02 3.5458468e+03 - 1.5576370e+02 -2.3793287e+02 3.5464149e+03 - 1.9141649e+02 -2.3731562e+02 3.5471280e+03 - 2.2507729e+02 -2.3668720e+02 3.5479740e+03 - 2.5652324e+02 -2.3610826e+02 3.5489398e+03 - 2.8560089e+02 -2.3563958e+02 3.5500112e+03 - 3.1222172e+02 -2.3533911e+02 3.5511737e+03 - 3.3635485e+02 -2.3525972e+02 3.5524128e+03 - 3.5801808e+02 -2.3544764e+02 3.5537142e+03 - 3.7726840e+02 -2.3594166e+02 3.5550644e+03 - 3.9419276e+02 -2.3677284e+02 3.5564505e+03 - 4.0889964e+02 -2.3796473e+02 3.5578605e+03 - 4.2151181e+02 -2.3953388e+02 3.5592833e+03 - 4.3216026e+02 -2.4149048e+02 3.5607088e+03 - 4.4097948e+02 -2.4383917e+02 3.5621277e+03 - 4.4810373e+02 -2.4657982e+02 3.5635315e+03 - 4.5366439e+02 -2.4970828e+02 3.5649128e+03 - 4.5778812e+02 -2.5321707e+02 3.5662645e+03 - 4.6059559e+02 -2.5709600e+02 3.5675806e+03 - 4.6220081e+02 -2.6133264e+02 3.5688555e+03 - 4.6271076e+02 -2.6591282e+02 3.5700842e+03 - 4.6222538e+02 -2.7082091e+02 3.5712622e+03 - 4.6083769e+02 -2.7604015e+02 3.5723856e+03 - 4.5863408e+02 -2.8155282e+02 3.5734508e+03 - 4.5569463e+02 -2.8734045e+02 3.5744545e+03 - 4.5209357e+02 -2.9338386e+02 3.5753940e+03 - 4.4789969e+02 -2.9966330e+02 3.5762667e+03 - 4.4317673e+02 -3.0615844e+02 3.5770703e+03 - 4.3798387e+02 -3.1284842e+02 3.5778030e+03 - 4.3237607e+02 -3.1971179e+02 3.5784628e+03 - 4.2640449e+02 -3.2672653e+02 3.5790485e+03 - 4.2011681e+02 -3.3386997e+02 3.5795585e+03 - 4.1355759e+02 -3.4111873e+02 3.5799919e+03 - 4.0676854e+02 -3.4844865e+02 3.5803477e+03 - 3.9978882e+02 -3.5583468e+02 3.5806252e+03 - 3.9265526e+02 -3.6325082e+02 3.5808238e+03 - 3.8540262e+02 -3.7066997e+02 3.5809431e+03 - 3.7806379e+02 -3.7806379e+02 3.5809829e+03 - 3.7066997e+02 -3.8540262e+02 3.5809431e+03 - 3.6325082e+02 -3.9265526e+02 3.5808238e+03 - 3.5583468e+02 -3.9978882e+02 3.5806252e+03 - 3.4844865e+02 -4.0676854e+02 3.5803477e+03 - 3.4111873e+02 -4.1355759e+02 3.5799919e+03 - 3.3386997e+02 -4.2011681e+02 3.5795585e+03 - 3.2672653e+02 -4.2640449e+02 3.5790485e+03 - 3.1971179e+02 -4.3237607e+02 3.5784628e+03 - 3.1284842e+02 -4.3798387e+02 3.5778030e+03 - 3.0615844e+02 -4.4317673e+02 3.5770703e+03 - 2.9966330e+02 -4.4789969e+02 3.5762667e+03 - 2.9338386e+02 -4.5209357e+02 3.5753940e+03 - 2.8734045e+02 -4.5569463e+02 3.5744545e+03 - 2.8155282e+02 -4.5863408e+02 3.5734508e+03 - 2.7604015e+02 -4.6083769e+02 3.5723856e+03 - 2.7082091e+02 -4.6222538e+02 3.5712622e+03 - 2.6591282e+02 -4.6271076e+02 3.5700842e+03 - 2.6133264e+02 -4.6220081e+02 3.5688555e+03 - 2.5709600e+02 -4.6059559e+02 3.5675806e+03 - 2.5321707e+02 -4.5778812e+02 3.5662645e+03 - 2.4970828e+02 -4.5366439e+02 3.5649128e+03 - 2.4657982e+02 -4.4810373e+02 3.5635315e+03 - 2.4383917e+02 -4.4097948e+02 3.5621277e+03 - 2.4149048e+02 -4.3216026e+02 3.5607088e+03 - 2.3953388e+02 -4.2151181e+02 3.5592833e+03 - 2.3796473e+02 -4.0889964e+02 3.5578605e+03 - 2.3677284e+02 -3.9419276e+02 3.5564505e+03 - 2.3594166e+02 -3.7726840e+02 3.5550644e+03 - 2.3544764e+02 -3.5801808e+02 3.5537142e+03 - 2.3525972e+02 -3.3635485e+02 3.5524128e+03 - 2.3533911e+02 -3.1222172e+02 3.5511737e+03 - 2.3563958e+02 -2.8560089e+02 3.5500112e+03 - 2.3610826e+02 -2.5652324e+02 3.5489398e+03 - 2.3668720e+02 -2.2507729e+02 3.5479740e+03 - 2.3731562e+02 -1.9141649e+02 3.5471280e+03 - 2.3793287e+02 -1.5576370e+02 3.5464149e+03 - 2.3848199e+02 -1.1841158e+02 3.5458468e+03 - 2.3891341e+02 -7.9718070e+01 3.5454334e+03 - 2.3918862e+02 -4.0096384e+01 3.5451822e+03 - 2.3928315e+02 2.4067136e-09 3.5450980e+03 - 2.3918862e+02 4.0096384e+01 3.5451822e+03 - 2.3891341e+02 7.9718070e+01 3.5454334e+03 - 2.3848199e+02 1.1841158e+02 3.5458468e+03 - 2.3793287e+02 1.5576370e+02 3.5464149e+03 - 2.3731562e+02 1.9141649e+02 3.5471280e+03 - 2.3668720e+02 2.2507729e+02 3.5479740e+03 - 2.3610826e+02 2.5652324e+02 3.5489398e+03 - 2.3563958e+02 2.8560089e+02 3.5500112e+03 - 2.3533911e+02 3.1222172e+02 3.5511737e+03 - 2.3525972e+02 3.3635485e+02 3.5524128e+03 - 2.3544764e+02 3.5801808e+02 3.5537142e+03 - 2.3594166e+02 3.7726840e+02 3.5550644e+03 - 2.3677284e+02 3.9419276e+02 3.5564505e+03 - 2.3796473e+02 4.0889964e+02 3.5578605e+03 - 2.3953388e+02 4.2151181e+02 3.5592833e+03 - 2.4149048e+02 4.3216026e+02 3.5607088e+03 - 2.4383917e+02 4.4097948e+02 3.5621277e+03 - 2.4657982e+02 4.4810373e+02 3.5635315e+03 - 2.4970828e+02 4.5366439e+02 3.5649128e+03 - 2.5321707e+02 4.5778812e+02 3.5662645e+03 - 2.5709600e+02 4.6059559e+02 3.5675806e+03 - 2.6133264e+02 4.6220081e+02 3.5688555e+03 - 2.6591282e+02 4.6271076e+02 3.5700842e+03 - 2.7082091e+02 4.6222538e+02 3.5712622e+03 - 2.7604015e+02 4.6083769e+02 3.5723856e+03 - 2.8155282e+02 4.5863408e+02 3.5734508e+03 - 2.8734045e+02 4.5569463e+02 3.5744545e+03 - 2.9338386e+02 4.5209357e+02 3.5753940e+03 - 2.9966330e+02 4.4789969e+02 3.5762667e+03 - 3.0615844e+02 4.4317673e+02 3.5770703e+03 - 3.1284842e+02 4.3798387e+02 3.5778030e+03 - 3.1971179e+02 4.3237607e+02 3.5784628e+03 - 3.2672653e+02 4.2640449e+02 3.5790485e+03 - 3.3386997e+02 4.2011681e+02 3.5795585e+03 - 3.4111873e+02 4.1355759e+02 3.5799919e+03 - 3.4844865e+02 4.0676854e+02 3.5803477e+03 - 3.5583468e+02 3.9978882e+02 3.5806252e+03 - 3.6325082e+02 3.9265526e+02 3.5808238e+03 - 3.7066997e+02 3.8540262e+02 3.5809431e+03 - 3.7806379e+02 3.7806379e+02 3.5809829e+03 - 3.8540262e+02 3.7066997e+02 3.5809431e+03 - 3.9265526e+02 3.6325082e+02 3.5808238e+03 - 3.9978882e+02 3.5583468e+02 3.5806252e+03 - 4.0676854e+02 3.4844865e+02 3.5803477e+03 - 4.1355759e+02 3.4111873e+02 3.5799919e+03 - 4.2011681e+02 3.3386997e+02 3.5795585e+03 - 4.2640449e+02 3.2672653e+02 3.5790485e+03 - 4.3237607e+02 3.1971179e+02 3.5784628e+03 - 4.3798387e+02 3.1284842e+02 3.5778030e+03 - 4.4317673e+02 3.0615844e+02 3.5770703e+03 - 4.4789969e+02 2.9966330e+02 3.5762667e+03 - 4.5209357e+02 2.9338386e+02 3.5753940e+03 - 4.5569463e+02 2.8734045e+02 3.5744545e+03 - 4.5863408e+02 2.8155282e+02 3.5734508e+03 - 4.6083769e+02 2.7604015e+02 3.5723856e+03 - 4.6222538e+02 2.7082091e+02 3.5712622e+03 - 4.6271076e+02 2.6591282e+02 3.5700842e+03 - 4.6220081e+02 2.6133264e+02 3.5688555e+03 - 4.6059559e+02 2.5709600e+02 3.5675806e+03 - 4.5778812e+02 2.5321707e+02 3.5662645e+03 - 4.5366439e+02 2.4970828e+02 3.5649128e+03 - 4.4810373e+02 2.4657982e+02 3.5635315e+03 - 4.4097948e+02 2.4383917e+02 3.5621277e+03 - 4.3216026e+02 2.4149048e+02 3.5607088e+03 - 4.2151181e+02 2.3953388e+02 3.5592833e+03 - 4.0889964e+02 2.3796473e+02 3.5578605e+03 - 3.9419276e+02 2.3677284e+02 3.5564505e+03 - 3.7726840e+02 2.3594166e+02 3.5550644e+03 - 3.5801808e+02 2.3544764e+02 3.5537142e+03 - 3.3635485e+02 2.3525972e+02 3.5524128e+03 - 3.1222172e+02 2.3533911e+02 3.5511737e+03 - 2.8560089e+02 2.3563958e+02 3.5500112e+03 - 2.5652324e+02 2.3610826e+02 3.5489398e+03 - 2.2507729e+02 2.3668720e+02 3.5479740e+03 - 1.9141649e+02 2.3731562e+02 3.5471280e+03 - 1.5576370e+02 2.3793287e+02 3.5464149e+03 - 1.1841158e+02 2.3848199e+02 3.5458468e+03 - 7.9718070e+01 2.3891341e+02 3.5454334e+03 - 4.0096384e+01 2.3918862e+02 3.5451822e+03 - 1.2033568e-08 2.3928315e+02 3.5450980e+03 - -4.0096384e+01 2.3918862e+02 3.5451822e+03 - -7.9718070e+01 2.3891341e+02 3.5454334e+03 - -1.1841158e+02 2.3848199e+02 3.5458468e+03 - -1.5576370e+02 2.3793287e+02 3.5464149e+03 - -1.9141649e+02 2.3731562e+02 3.5471280e+03 - -2.2507729e+02 2.3668720e+02 3.5479740e+03 - -2.5652324e+02 2.3610826e+02 3.5489398e+03 - -2.8560089e+02 2.3563958e+02 3.5500112e+03 - -3.1222172e+02 2.3533911e+02 3.5511737e+03 - -3.3635485e+02 2.3525972e+02 3.5524128e+03 - -3.5801808e+02 2.3544764e+02 3.5537142e+03 - -3.7726840e+02 2.3594166e+02 3.5550644e+03 - -3.9419276e+02 2.3677284e+02 3.5564505e+03 - -4.0889964e+02 2.3796473e+02 3.5578605e+03 - -4.2151181e+02 2.3953388e+02 3.5592833e+03 - -4.3216026e+02 2.4149048e+02 3.5607088e+03 - -4.4097948e+02 2.4383917e+02 3.5621277e+03 - -4.4810373e+02 2.4657982e+02 3.5635315e+03 - -4.5366439e+02 2.4970828e+02 3.5649128e+03 - -4.5778812e+02 2.5321707e+02 3.5662645e+03 - -4.6059559e+02 2.5709600e+02 3.5675806e+03 - -4.6220081e+02 2.6133264e+02 3.5688555e+03 - -4.6271076e+02 2.6591282e+02 3.5700842e+03 - -4.6222538e+02 2.7082091e+02 3.5712622e+03 - -4.6083769e+02 2.7604015e+02 3.5723856e+03 - -4.5863408e+02 2.8155282e+02 3.5734508e+03 - -4.5569463e+02 2.8734045e+02 3.5744545e+03 - -4.5209357e+02 2.9338386e+02 3.5753940e+03 - -4.4789969e+02 2.9966330e+02 3.5762667e+03 - -4.4317673e+02 3.0615844e+02 3.5770703e+03 - -4.3798387e+02 3.1284842e+02 3.5778030e+03 - -4.3237607e+02 3.1971179e+02 3.5784628e+03 - -4.2640449e+02 3.2672653e+02 3.5790485e+03 - -4.2011681e+02 3.3386997e+02 3.5795585e+03 - -4.1355759e+02 3.4111873e+02 3.5799919e+03 - -4.0676854e+02 3.4844865e+02 3.5803477e+03 - -3.9978882e+02 3.5583468e+02 3.5806252e+03 - -3.9265526e+02 3.6325082e+02 3.5808238e+03 - -3.8540262e+02 3.7066997e+02 3.5809431e+03 - -3.7806379e+02 3.7806379e+02 3.5809829e+03 - -3.7066997e+02 3.8540262e+02 3.5809431e+03 - -3.6325082e+02 3.9265526e+02 3.5808238e+03 - -3.5583468e+02 3.9978882e+02 3.5806252e+03 - -3.4844865e+02 4.0676854e+02 3.5803477e+03 - -3.4111873e+02 4.1355759e+02 3.5799919e+03 - -3.3386997e+02 4.2011681e+02 3.5795585e+03 - -3.2672653e+02 4.2640449e+02 3.5790485e+03 - -3.1971179e+02 4.3237607e+02 3.5784628e+03 - -3.1284842e+02 4.3798387e+02 3.5778030e+03 - -3.0615844e+02 4.4317673e+02 3.5770703e+03 - -2.9966330e+02 4.4789969e+02 3.5762667e+03 - -2.9338386e+02 4.5209357e+02 3.5753940e+03 - -2.8734045e+02 4.5569463e+02 3.5744545e+03 - -2.8155282e+02 4.5863408e+02 3.5734508e+03 - -2.7604015e+02 4.6083769e+02 3.5723856e+03 - -2.7082091e+02 4.6222538e+02 3.5712622e+03 - -2.6591282e+02 4.6271076e+02 3.5700842e+03 - -2.6133264e+02 4.6220081e+02 3.5688555e+03 - -2.5709600e+02 4.6059559e+02 3.5675806e+03 - -2.5321707e+02 4.5778812e+02 3.5662645e+03 - -2.4970828e+02 4.5366439e+02 3.5649128e+03 - -2.4657982e+02 4.4810373e+02 3.5635315e+03 - -2.4383917e+02 4.4097948e+02 3.5621277e+03 - -2.4149048e+02 4.3216026e+02 3.5607088e+03 - -2.3953388e+02 4.2151181e+02 3.5592833e+03 - -2.3796473e+02 4.0889964e+02 3.5578605e+03 - -2.3677284e+02 3.9419276e+02 3.5564505e+03 - -2.3594166e+02 3.7726840e+02 3.5550644e+03 - -2.3544764e+02 3.5801808e+02 3.5537142e+03 - -2.3525972e+02 3.3635485e+02 3.5524128e+03 - -2.3533911e+02 3.1222172e+02 3.5511737e+03 - -2.3563958e+02 2.8560089e+02 3.5500112e+03 - -2.3610826e+02 2.5652324e+02 3.5489398e+03 - -2.3668720e+02 2.2507729e+02 3.5479740e+03 - -2.3731562e+02 1.9141649e+02 3.5471280e+03 - -2.3793287e+02 1.5576370e+02 3.5464149e+03 - -2.3848199e+02 1.1841158e+02 3.5458468e+03 - -2.3891341e+02 7.9718070e+01 3.5454334e+03 - -2.3918862e+02 4.0096384e+01 3.5451822e+03 - -2.3928315e+02 2.4067136e-09 3.5450980e+03 - -1.9307653e+02 -2.4067136e-09 3.5315613e+03 - -1.9298518e+02 -4.1463812e+01 3.5316569e+03 - -1.9272010e+02 -8.2411421e+01 3.5319419e+03 - -1.9230746e+02 -1.2235034e+02 3.5324108e+03 - -1.9178839e+02 -1.6083303e+02 3.5330545e+03 - -1.9121573e+02 -1.9747351e+02 3.5338612e+03 - -1.9065012e+02 -2.3195821e+02 3.5348170e+03 - -1.9015590e+02 -2.6405076e+02 3.5359061e+03 - -1.8979738e+02 -2.9359106e+02 3.5371121e+03 - -1.8963569e+02 -3.2049001e+02 3.5384179e+03 - -1.8972640e+02 -3.4472109e+02 3.5398067e+03 - -1.9011796e+02 -3.6631018e+02 3.5412623e+03 - -1.9085086e+02 -3.8532499e+02 3.5427691e+03 - -1.9195743e+02 -4.0186479e+02 3.5443126e+03 - -1.9346209e+02 -4.1605121e+02 3.5458793e+03 - -1.9538193e+02 -4.2802034e+02 3.5474569e+03 - -1.9772746e+02 -4.3791624e+02 3.5490343e+03 - -2.0050344e+02 -4.4588586e+02 3.5506012e+03 - -2.0370972e+02 -4.5207519e+02 3.5521486e+03 - -2.0734201e+02 -4.5662648e+02 3.5536682e+03 - -2.1139266e+02 -4.5967635e+02 3.5551529e+03 - -2.1585120e+02 -4.6135460e+02 3.5565960e+03 - -2.2070494e+02 -4.6178347e+02 3.5579918e+03 - -2.2593937e+02 -4.6107746e+02 3.5593350e+03 - -2.3153853e+02 -4.5934327e+02 3.5606211e+03 - -2.3748526e+02 -4.5668005e+02 3.5618460e+03 - -2.4376145e+02 -4.5317973e+02 3.5630060e+03 - -2.5034816e+02 -4.4892745e+02 3.5640980e+03 - -2.5722575e+02 -4.4400200e+02 3.5651190e+03 - -2.6437392e+02 -4.3847634e+02 3.5660665e+03 - -2.7177177e+02 -4.3241801e+02 3.5669383e+03 - -2.7939779e+02 -4.2588968e+02 3.5677324e+03 - -2.8722985e+02 -4.1894950e+02 3.5684473e+03 - -2.9524517e+02 -4.1165157e+02 3.5690812e+03 - -3.0342022e+02 -4.0404629e+02 3.5696331e+03 - -3.1173073e+02 -3.9618070e+02 3.5701018e+03 - -3.2015155e+02 -3.8809884e+02 3.5704865e+03 - -3.2865657e+02 -3.7984200e+02 3.5707864e+03 - -3.3721861e+02 -3.7144901e+02 3.5710010e+03 - -3.4580931e+02 -3.6295647e+02 3.5711299e+03 - -3.5439898e+02 -3.5439898e+02 3.5711729e+03 - -3.6295647e+02 -3.4580931e+02 3.5711299e+03 - -3.7144901e+02 -3.3721861e+02 3.5710010e+03 - -3.7984200e+02 -3.2865657e+02 3.5707864e+03 - -3.8809884e+02 -3.2015155e+02 3.5704865e+03 - -3.9618070e+02 -3.1173073e+02 3.5701018e+03 - -4.0404629e+02 -3.0342022e+02 3.5696331e+03 - -4.1165157e+02 -2.9524517e+02 3.5690812e+03 - -4.1894950e+02 -2.8722985e+02 3.5684473e+03 - -4.2588968e+02 -2.7939779e+02 3.5677324e+03 - -4.3241801e+02 -2.7177177e+02 3.5669383e+03 - -4.3847634e+02 -2.6437392e+02 3.5660665e+03 - -4.4400200e+02 -2.5722575e+02 3.5651190e+03 - -4.4892745e+02 -2.5034816e+02 3.5640980e+03 - -4.5317973e+02 -2.4376145e+02 3.5630060e+03 - -4.5668005e+02 -2.3748526e+02 3.5618460e+03 - -4.5934327e+02 -2.3153853e+02 3.5606211e+03 - -4.6107746e+02 -2.2593937e+02 3.5593350e+03 - -4.6178347e+02 -2.2070494e+02 3.5579918e+03 - -4.6135460e+02 -2.1585120e+02 3.5565960e+03 - -4.5967635e+02 -2.1139266e+02 3.5551529e+03 - -4.5662648e+02 -2.0734201e+02 3.5536682e+03 - -4.5207519e+02 -2.0370972e+02 3.5521486e+03 - -4.4588586e+02 -2.0050344e+02 3.5506012e+03 - -4.3791624e+02 -1.9772746e+02 3.5490343e+03 - -4.2802034e+02 -1.9538193e+02 3.5474569e+03 - -4.1605121e+02 -1.9346209e+02 3.5458793e+03 - -4.0186479e+02 -1.9195743e+02 3.5443126e+03 - -3.8532499e+02 -1.9085086e+02 3.5427691e+03 - -3.6631018e+02 -1.9011796e+02 3.5412623e+03 - -3.4472109e+02 -1.8972640e+02 3.5398067e+03 - -3.2049001e+02 -1.8963569e+02 3.5384179e+03 - -2.9359106e+02 -1.8979738e+02 3.5371121e+03 - -2.6405076e+02 -1.9015590e+02 3.5359061e+03 - -2.3195821e+02 -1.9065012e+02 3.5348170e+03 - -1.9747351e+02 -1.9121573e+02 3.5338612e+03 - -1.6083303e+02 -1.9178839e+02 3.5330545e+03 - -1.2235034e+02 -1.9230746e+02 3.5324108e+03 - -8.2411421e+01 -1.9272010e+02 3.5319419e+03 - -4.1463812e+01 -1.9298518e+02 3.5316569e+03 - -4.8134273e-09 -1.9307653e+02 3.5315613e+03 - 4.1463812e+01 -1.9298518e+02 3.5316569e+03 - 8.2411421e+01 -1.9272010e+02 3.5319419e+03 - 1.2235034e+02 -1.9230746e+02 3.5324108e+03 - 1.6083303e+02 -1.9178839e+02 3.5330545e+03 - 1.9747351e+02 -1.9121573e+02 3.5338612e+03 - 2.3195821e+02 -1.9065012e+02 3.5348170e+03 - 2.6405076e+02 -1.9015590e+02 3.5359061e+03 - 2.9359106e+02 -1.8979738e+02 3.5371121e+03 - 3.2049001e+02 -1.8963569e+02 3.5384179e+03 - 3.4472109e+02 -1.8972640e+02 3.5398067e+03 - 3.6631018e+02 -1.9011796e+02 3.5412623e+03 - 3.8532499e+02 -1.9085086e+02 3.5427691e+03 - 4.0186479e+02 -1.9195743e+02 3.5443126e+03 - 4.1605121e+02 -1.9346209e+02 3.5458793e+03 - 4.2802034e+02 -1.9538193e+02 3.5474569e+03 - 4.3791624e+02 -1.9772746e+02 3.5490343e+03 - 4.4588586e+02 -2.0050344e+02 3.5506012e+03 - 4.5207519e+02 -2.0370972e+02 3.5521486e+03 - 4.5662648e+02 -2.0734201e+02 3.5536682e+03 - 4.5967635e+02 -2.1139266e+02 3.5551529e+03 - 4.6135460e+02 -2.1585120e+02 3.5565960e+03 - 4.6178347e+02 -2.2070494e+02 3.5579918e+03 - 4.6107746e+02 -2.2593937e+02 3.5593350e+03 - 4.5934327e+02 -2.3153853e+02 3.5606211e+03 - 4.5668005e+02 -2.3748526e+02 3.5618460e+03 - 4.5317973e+02 -2.4376145e+02 3.5630060e+03 - 4.4892745e+02 -2.5034816e+02 3.5640980e+03 - 4.4400200e+02 -2.5722575e+02 3.5651190e+03 - 4.3847634e+02 -2.6437392e+02 3.5660665e+03 - 4.3241801e+02 -2.7177177e+02 3.5669383e+03 - 4.2588968e+02 -2.7939779e+02 3.5677324e+03 - 4.1894950e+02 -2.8722985e+02 3.5684473e+03 - 4.1165157e+02 -2.9524517e+02 3.5690812e+03 - 4.0404629e+02 -3.0342022e+02 3.5696331e+03 - 3.9618070e+02 -3.1173073e+02 3.5701018e+03 - 3.8809884e+02 -3.2015155e+02 3.5704865e+03 - 3.7984200e+02 -3.2865657e+02 3.5707864e+03 - 3.7144901e+02 -3.3721861e+02 3.5710010e+03 - 3.6295647e+02 -3.4580931e+02 3.5711299e+03 - 3.5439898e+02 -3.5439898e+02 3.5711729e+03 - 3.4580931e+02 -3.6295647e+02 3.5711299e+03 - 3.3721861e+02 -3.7144901e+02 3.5710010e+03 - 3.2865657e+02 -3.7984200e+02 3.5707864e+03 - 3.2015155e+02 -3.8809884e+02 3.5704865e+03 - 3.1173073e+02 -3.9618070e+02 3.5701018e+03 - 3.0342022e+02 -4.0404629e+02 3.5696331e+03 - 2.9524517e+02 -4.1165157e+02 3.5690812e+03 - 2.8722985e+02 -4.1894950e+02 3.5684473e+03 - 2.7939779e+02 -4.2588968e+02 3.5677324e+03 - 2.7177177e+02 -4.3241801e+02 3.5669383e+03 - 2.6437392e+02 -4.3847634e+02 3.5660665e+03 - 2.5722575e+02 -4.4400200e+02 3.5651190e+03 - 2.5034816e+02 -4.4892745e+02 3.5640980e+03 - 2.4376145e+02 -4.5317973e+02 3.5630060e+03 - 2.3748526e+02 -4.5668005e+02 3.5618460e+03 - 2.3153853e+02 -4.5934327e+02 3.5606211e+03 - 2.2593937e+02 -4.6107746e+02 3.5593350e+03 - 2.2070494e+02 -4.6178347e+02 3.5579918e+03 - 2.1585120e+02 -4.6135460e+02 3.5565960e+03 - 2.1139266e+02 -4.5967635e+02 3.5551529e+03 - 2.0734201e+02 -4.5662648e+02 3.5536682e+03 - 2.0370972e+02 -4.5207519e+02 3.5521486e+03 - 2.0050344e+02 -4.4588586e+02 3.5506012e+03 - 1.9772746e+02 -4.3791624e+02 3.5490343e+03 - 1.9538193e+02 -4.2802034e+02 3.5474569e+03 - 1.9346209e+02 -4.1605121e+02 3.5458793e+03 - 1.9195743e+02 -4.0186479e+02 3.5443126e+03 - 1.9085086e+02 -3.8532499e+02 3.5427691e+03 - 1.9011796e+02 -3.6631018e+02 3.5412623e+03 - 1.8972640e+02 -3.4472109e+02 3.5398067e+03 - 1.8963569e+02 -3.2049001e+02 3.5384179e+03 - 1.8979738e+02 -2.9359106e+02 3.5371121e+03 - 1.9015590e+02 -2.6405076e+02 3.5359061e+03 - 1.9065012e+02 -2.3195821e+02 3.5348170e+03 - 1.9121573e+02 -1.9747351e+02 3.5338612e+03 - 1.9178839e+02 -1.6083303e+02 3.5330545e+03 - 1.9230746e+02 -1.2235034e+02 3.5324108e+03 - 1.9272010e+02 -8.2411421e+01 3.5319419e+03 - 1.9298518e+02 -4.1463812e+01 3.5316569e+03 - 1.9307653e+02 9.6268545e-09 3.5315613e+03 - 1.9298518e+02 4.1463812e+01 3.5316569e+03 - 1.9272010e+02 8.2411421e+01 3.5319419e+03 - 1.9230746e+02 1.2235034e+02 3.5324108e+03 - 1.9178839e+02 1.6083303e+02 3.5330545e+03 - 1.9121573e+02 1.9747351e+02 3.5338612e+03 - 1.9065012e+02 2.3195821e+02 3.5348170e+03 - 1.9015590e+02 2.6405076e+02 3.5359061e+03 - 1.8979738e+02 2.9359106e+02 3.5371121e+03 - 1.8963569e+02 3.2049001e+02 3.5384179e+03 - 1.8972640e+02 3.4472109e+02 3.5398067e+03 - 1.9011796e+02 3.6631018e+02 3.5412623e+03 - 1.9085086e+02 3.8532499e+02 3.5427691e+03 - 1.9195743e+02 4.0186479e+02 3.5443126e+03 - 1.9346209e+02 4.1605121e+02 3.5458793e+03 - 1.9538193e+02 4.2802034e+02 3.5474569e+03 - 1.9772746e+02 4.3791624e+02 3.5490343e+03 - 2.0050344e+02 4.4588586e+02 3.5506012e+03 - 2.0370972e+02 4.5207519e+02 3.5521486e+03 - 2.0734201e+02 4.5662648e+02 3.5536682e+03 - 2.1139266e+02 4.5967635e+02 3.5551529e+03 - 2.1585120e+02 4.6135460e+02 3.5565960e+03 - 2.2070494e+02 4.6178347e+02 3.5579918e+03 - 2.2593937e+02 4.6107746e+02 3.5593350e+03 - 2.3153853e+02 4.5934327e+02 3.5606211e+03 - 2.3748526e+02 4.5668005e+02 3.5618460e+03 - 2.4376145e+02 4.5317973e+02 3.5630060e+03 - 2.5034816e+02 4.4892745e+02 3.5640980e+03 - 2.5722575e+02 4.4400200e+02 3.5651190e+03 - 2.6437392e+02 4.3847634e+02 3.5660665e+03 - 2.7177177e+02 4.3241801e+02 3.5669383e+03 - 2.7939779e+02 4.2588968e+02 3.5677324e+03 - 2.8722985e+02 4.1894950e+02 3.5684473e+03 - 2.9524517e+02 4.1165157e+02 3.5690812e+03 - 3.0342022e+02 4.0404629e+02 3.5696331e+03 - 3.1173073e+02 3.9618070e+02 3.5701018e+03 - 3.2015155e+02 3.8809884e+02 3.5704865e+03 - 3.2865657e+02 3.7984200e+02 3.5707864e+03 - 3.3721861e+02 3.7144901e+02 3.5710010e+03 - 3.4580931e+02 3.6295647e+02 3.5711299e+03 - 3.5439898e+02 3.5439898e+02 3.5711729e+03 - 3.6295647e+02 3.4580931e+02 3.5711299e+03 - 3.7144901e+02 3.3721861e+02 3.5710010e+03 - 3.7984200e+02 3.2865657e+02 3.5707864e+03 - 3.8809884e+02 3.2015155e+02 3.5704865e+03 - 3.9618070e+02 3.1173073e+02 3.5701018e+03 - 4.0404629e+02 3.0342022e+02 3.5696331e+03 - 4.1165157e+02 2.9524517e+02 3.5690812e+03 - 4.1894950e+02 2.8722985e+02 3.5684473e+03 - 4.2588968e+02 2.7939779e+02 3.5677324e+03 - 4.3241801e+02 2.7177177e+02 3.5669383e+03 - 4.3847634e+02 2.6437392e+02 3.5660665e+03 - 4.4400200e+02 2.5722575e+02 3.5651190e+03 - 4.4892745e+02 2.5034816e+02 3.5640980e+03 - 4.5317973e+02 2.4376145e+02 3.5630060e+03 - 4.5668005e+02 2.3748526e+02 3.5618460e+03 - 4.5934327e+02 2.3153853e+02 3.5606211e+03 - 4.6107746e+02 2.2593937e+02 3.5593350e+03 - 4.6178347e+02 2.2070494e+02 3.5579918e+03 - 4.6135460e+02 2.1585120e+02 3.5565960e+03 - 4.5967635e+02 2.1139266e+02 3.5551529e+03 - 4.5662648e+02 2.0734201e+02 3.5536682e+03 - 4.5207519e+02 2.0370972e+02 3.5521486e+03 - 4.4588586e+02 2.0050344e+02 3.5506012e+03 - 4.3791624e+02 1.9772746e+02 3.5490343e+03 - 4.2802034e+02 1.9538193e+02 3.5474569e+03 - 4.1605121e+02 1.9346209e+02 3.5458793e+03 - 4.0186479e+02 1.9195743e+02 3.5443126e+03 - 3.8532499e+02 1.9085086e+02 3.5427691e+03 - 3.6631018e+02 1.9011796e+02 3.5412623e+03 - 3.4472109e+02 1.8972640e+02 3.5398067e+03 - 3.2049001e+02 1.8963569e+02 3.5384179e+03 - 2.9359106e+02 1.8979738e+02 3.5371121e+03 - 2.6405076e+02 1.9015590e+02 3.5359061e+03 - 2.3195821e+02 1.9065012e+02 3.5348170e+03 - 1.9747351e+02 1.9121573e+02 3.5338612e+03 - 1.6083303e+02 1.9178839e+02 3.5330545e+03 - 1.2235034e+02 1.9230746e+02 3.5324108e+03 - 8.2411421e+01 1.9272010e+02 3.5319419e+03 - 4.1463812e+01 1.9298518e+02 3.5316569e+03 - 4.8134273e-09 1.9307653e+02 3.5315613e+03 - -4.1463812e+01 1.9298518e+02 3.5316569e+03 - -8.2411421e+01 1.9272010e+02 3.5319419e+03 - -1.2235034e+02 1.9230746e+02 3.5324108e+03 - -1.6083303e+02 1.9178839e+02 3.5330545e+03 - -1.9747351e+02 1.9121573e+02 3.5338612e+03 - -2.3195821e+02 1.9065012e+02 3.5348170e+03 - -2.6405076e+02 1.9015590e+02 3.5359061e+03 - -2.9359106e+02 1.8979738e+02 3.5371121e+03 - -3.2049001e+02 1.8963569e+02 3.5384179e+03 - -3.4472109e+02 1.8972640e+02 3.5398067e+03 - -3.6631018e+02 1.9011796e+02 3.5412623e+03 - -3.8532499e+02 1.9085086e+02 3.5427691e+03 - -4.0186479e+02 1.9195743e+02 3.5443126e+03 - -4.1605121e+02 1.9346209e+02 3.5458793e+03 - -4.2802034e+02 1.9538193e+02 3.5474569e+03 - -4.3791624e+02 1.9772746e+02 3.5490343e+03 - -4.4588586e+02 2.0050344e+02 3.5506012e+03 - -4.5207519e+02 2.0370972e+02 3.5521486e+03 - -4.5662648e+02 2.0734201e+02 3.5536682e+03 - -4.5967635e+02 2.1139266e+02 3.5551529e+03 - -4.6135460e+02 2.1585120e+02 3.5565960e+03 - -4.6178347e+02 2.2070494e+02 3.5579918e+03 - -4.6107746e+02 2.2593937e+02 3.5593350e+03 - -4.5934327e+02 2.3153853e+02 3.5606211e+03 - -4.5668005e+02 2.3748526e+02 3.5618460e+03 - -4.5317973e+02 2.4376145e+02 3.5630060e+03 - -4.4892745e+02 2.5034816e+02 3.5640980e+03 - -4.4400200e+02 2.5722575e+02 3.5651190e+03 - -4.3847634e+02 2.6437392e+02 3.5660665e+03 - -4.3241801e+02 2.7177177e+02 3.5669383e+03 - -4.2588968e+02 2.7939779e+02 3.5677324e+03 - -4.1894950e+02 2.8722985e+02 3.5684473e+03 - -4.1165157e+02 2.9524517e+02 3.5690812e+03 - -4.0404629e+02 3.0342022e+02 3.5696331e+03 - -3.9618070e+02 3.1173073e+02 3.5701018e+03 - -3.8809884e+02 3.2015155e+02 3.5704865e+03 - -3.7984200e+02 3.2865657e+02 3.5707864e+03 - -3.7144901e+02 3.3721861e+02 3.5710010e+03 - -3.6295647e+02 3.4580931e+02 3.5711299e+03 - -3.5439898e+02 3.5439898e+02 3.5711729e+03 - -3.4580931e+02 3.6295647e+02 3.5711299e+03 - -3.3721861e+02 3.7144901e+02 3.5710010e+03 - -3.2865657e+02 3.7984200e+02 3.5707864e+03 - -3.2015155e+02 3.8809884e+02 3.5704865e+03 - -3.1173073e+02 3.9618070e+02 3.5701018e+03 - -3.0342022e+02 4.0404629e+02 3.5696331e+03 - -2.9524517e+02 4.1165157e+02 3.5690812e+03 - -2.8722985e+02 4.1894950e+02 3.5684473e+03 - -2.7939779e+02 4.2588968e+02 3.5677324e+03 - -2.7177177e+02 4.3241801e+02 3.5669383e+03 - -2.6437392e+02 4.3847634e+02 3.5660665e+03 - -2.5722575e+02 4.4400200e+02 3.5651190e+03 - -2.5034816e+02 4.4892745e+02 3.5640980e+03 - -2.4376145e+02 4.5317973e+02 3.5630060e+03 - -2.3748526e+02 4.5668005e+02 3.5618460e+03 - -2.3153853e+02 4.5934327e+02 3.5606211e+03 - -2.2593937e+02 4.6107746e+02 3.5593350e+03 - -2.2070494e+02 4.6178347e+02 3.5579918e+03 - -2.1585120e+02 4.6135460e+02 3.5565960e+03 - -2.1139266e+02 4.5967635e+02 3.5551529e+03 - -2.0734201e+02 4.5662648e+02 3.5536682e+03 - -2.0370972e+02 4.5207519e+02 3.5521486e+03 - -2.0050344e+02 4.4588586e+02 3.5506012e+03 - -1.9772746e+02 4.3791624e+02 3.5490343e+03 - -1.9538193e+02 4.2802034e+02 3.5474569e+03 - -1.9346209e+02 4.1605121e+02 3.5458793e+03 - -1.9195743e+02 4.0186479e+02 3.5443126e+03 - -1.9085086e+02 3.8532499e+02 3.5427691e+03 - -1.9011796e+02 3.6631018e+02 3.5412623e+03 - -1.8972640e+02 3.4472109e+02 3.5398067e+03 - -1.8963569e+02 3.2049001e+02 3.5384179e+03 - -1.8979738e+02 2.9359106e+02 3.5371121e+03 - -1.9015590e+02 2.6405076e+02 3.5359061e+03 - -1.9065012e+02 2.3195821e+02 3.5348170e+03 - -1.9121573e+02 1.9747351e+02 3.5338612e+03 - -1.9178839e+02 1.6083303e+02 3.5330545e+03 - -1.9230746e+02 1.2235034e+02 3.5324108e+03 - -1.9272010e+02 8.2411421e+01 3.5319419e+03 - -1.9298518e+02 4.1463812e+01 3.5316569e+03 - -1.9307653e+02 2.4067136e-09 3.5315613e+03 - -1.3951289e+02 -2.4067136e-09 3.5147236e+03 - -1.3942628e+02 -4.2672395e+01 3.5148314e+03 - -1.3917603e+02 -8.4784938e+01 3.5151526e+03 - -1.3878996e+02 -1.2580427e+02 3.5156806e+03 - -1.3831178e+02 -1.6524713e+02 3.5164046e+03 - -1.3779754e+02 -2.0269873e+02 3.5173108e+03 - -1.3731135e+02 -2.3782451e+02 3.5183826e+03 - -1.3692110e+02 -2.7037503e+02 3.5196016e+03 - -1.3669441e+02 -3.0018454e+02 3.5209484e+03 - -1.3669534e+02 -3.2716465e+02 3.5224034e+03 - -1.3698190e+02 -3.5129462e+02 3.5239474e+03 - -1.3760447e+02 -3.7260992e+02 3.5255616e+03 - -1.3860499e+02 -3.9119035e+02 3.5272287e+03 - -1.4001684e+02 -4.0714878e+02 3.5289321e+03 - -1.4186514e+02 -4.2062104e+02 3.5306572e+03 - -1.4416738e+02 -4.3175740e+02 3.5323902e+03 - -1.4693427e+02 -4.4071564e+02 3.5341190e+03 - -1.5017064e+02 -4.4765567e+02 3.5358326e+03 - -1.5387629e+02 -4.5273553e+02 3.5375213e+03 - -1.5804683e+02 -4.5610855e+02 3.5391764e+03 - -1.6267443e+02 -4.5792140e+02 3.5407904e+03 - -1.6774847e+02 -4.5831297e+02 3.5423563e+03 - -1.7325604e+02 -4.5741374e+02 3.5438683e+03 - -1.7918241e+02 -4.5534558e+02 3.5453211e+03 - -1.8551137e+02 -4.5222183e+02 3.5467099e+03 - -1.9222552e+02 -4.4814762e+02 3.5480308e+03 - -1.9930644e+02 -4.4322026e+02 3.5492801e+03 - -2.0673488e+02 -4.3752976e+02 3.5504547e+03 - -2.1449084e+02 -4.3115931e+02 3.5515517e+03 - -2.2255361e+02 -4.2418585e+02 3.5525687e+03 - -2.3090184e+02 -4.1668058e+02 3.5535036e+03 - -2.3951349e+02 -4.0870948e+02 3.5543545e+03 - -2.4836586e+02 -4.0033375e+02 3.5551197e+03 - -2.5743552e+02 -3.9161028e+02 3.5557980e+03 - -2.6669823e+02 -3.8259202e+02 3.5563882e+03 - -2.7612892e+02 -3.7332842e+02 3.5568891e+03 - -2.8570156e+02 -3.6386567e+02 3.5573001e+03 - -2.9538905e+02 -3.5424711e+02 3.5576203e+03 - -3.0516319e+02 -3.4451342e+02 3.5578495e+03 - -3.1499443e+02 -3.3470294e+02 3.5579871e+03 - -3.2485185e+02 -3.2485185e+02 3.5580330e+03 - -3.3470294e+02 -3.1499443e+02 3.5579871e+03 - -3.4451342e+02 -3.0516319e+02 3.5578495e+03 - -3.5424711e+02 -2.9538905e+02 3.5576203e+03 - -3.6386567e+02 -2.8570156e+02 3.5573001e+03 - -3.7332842e+02 -2.7612892e+02 3.5568891e+03 - -3.8259202e+02 -2.6669823e+02 3.5563882e+03 - -3.9161028e+02 -2.5743552e+02 3.5557980e+03 - -4.0033375e+02 -2.4836586e+02 3.5551197e+03 - -4.0870948e+02 -2.3951349e+02 3.5543545e+03 - -4.1668058e+02 -2.3090184e+02 3.5535036e+03 - -4.2418585e+02 -2.2255361e+02 3.5525687e+03 - -4.3115931e+02 -2.1449084e+02 3.5515517e+03 - -4.3752976e+02 -2.0673488e+02 3.5504547e+03 - -4.4322026e+02 -1.9930644e+02 3.5492801e+03 - -4.4814762e+02 -1.9222552e+02 3.5480308e+03 - -4.5222183e+02 -1.8551137e+02 3.5467099e+03 - -4.5534558e+02 -1.7918241e+02 3.5453211e+03 - -4.5741374e+02 -1.7325604e+02 3.5438683e+03 - -4.5831297e+02 -1.6774847e+02 3.5423563e+03 - -4.5792140e+02 -1.6267443e+02 3.5407904e+03 - -4.5610855e+02 -1.5804683e+02 3.5391764e+03 - -4.5273553e+02 -1.5387629e+02 3.5375213e+03 - -4.4765567e+02 -1.5017064e+02 3.5358326e+03 - -4.4071564e+02 -1.4693427e+02 3.5341190e+03 - -4.3175740e+02 -1.4416738e+02 3.5323902e+03 - -4.2062104e+02 -1.4186514e+02 3.5306572e+03 - -4.0714878e+02 -1.4001684e+02 3.5289321e+03 - -3.9119035e+02 -1.3860499e+02 3.5272287e+03 - -3.7260992e+02 -1.3760447e+02 3.5255616e+03 - -3.5129462e+02 -1.3698190e+02 3.5239474e+03 - -3.2716465e+02 -1.3669534e+02 3.5224034e+03 - -3.0018454e+02 -1.3669441e+02 3.5209484e+03 - -2.7037503e+02 -1.3692110e+02 3.5196016e+03 - -2.3782451e+02 -1.3731135e+02 3.5183826e+03 - -2.0269873e+02 -1.3779754e+02 3.5173108e+03 - -1.6524713e+02 -1.3831178e+02 3.5164046e+03 - -1.2580427e+02 -1.3878996e+02 3.5156806e+03 - -8.4784938e+01 -1.3917603e+02 3.5151526e+03 - -4.2672394e+01 -1.3942628e+02 3.5148314e+03 - 7.2201409e-09 -1.3951289e+02 3.5147236e+03 - 4.2672395e+01 -1.3942628e+02 3.5148314e+03 - 8.4784938e+01 -1.3917603e+02 3.5151526e+03 - 1.2580427e+02 -1.3878996e+02 3.5156806e+03 - 1.6524713e+02 -1.3831178e+02 3.5164046e+03 - 2.0269873e+02 -1.3779754e+02 3.5173108e+03 - 2.3782451e+02 -1.3731135e+02 3.5183826e+03 - 2.7037503e+02 -1.3692110e+02 3.5196016e+03 - 3.0018454e+02 -1.3669441e+02 3.5209484e+03 - 3.2716465e+02 -1.3669534e+02 3.5224034e+03 - 3.5129462e+02 -1.3698190e+02 3.5239474e+03 - 3.7260992e+02 -1.3760447e+02 3.5255616e+03 - 3.9119035e+02 -1.3860499e+02 3.5272287e+03 - 4.0714878e+02 -1.4001684e+02 3.5289321e+03 - 4.2062104e+02 -1.4186514e+02 3.5306572e+03 - 4.3175740e+02 -1.4416738e+02 3.5323902e+03 - 4.4071564e+02 -1.4693427e+02 3.5341190e+03 - 4.4765567e+02 -1.5017064e+02 3.5358326e+03 - 4.5273553e+02 -1.5387629e+02 3.5375213e+03 - 4.5610855e+02 -1.5804683e+02 3.5391764e+03 - 4.5792140e+02 -1.6267443e+02 3.5407904e+03 - 4.5831297e+02 -1.6774847e+02 3.5423563e+03 - 4.5741374e+02 -1.7325604e+02 3.5438683e+03 - 4.5534558e+02 -1.7918241e+02 3.5453211e+03 - 4.5222183e+02 -1.8551137e+02 3.5467099e+03 - 4.4814762e+02 -1.9222552e+02 3.5480308e+03 - 4.4322026e+02 -1.9930644e+02 3.5492801e+03 - 4.3752976e+02 -2.0673488e+02 3.5504547e+03 - 4.3115931e+02 -2.1449084e+02 3.5515517e+03 - 4.2418585e+02 -2.2255361e+02 3.5525687e+03 - 4.1668058e+02 -2.3090184e+02 3.5535036e+03 - 4.0870948e+02 -2.3951349e+02 3.5543545e+03 - 4.0033375e+02 -2.4836586e+02 3.5551197e+03 - 3.9161028e+02 -2.5743552e+02 3.5557980e+03 - 3.8259202e+02 -2.6669823e+02 3.5563882e+03 - 3.7332842e+02 -2.7612892e+02 3.5568891e+03 - 3.6386567e+02 -2.8570156e+02 3.5573001e+03 - 3.5424711e+02 -2.9538905e+02 3.5576203e+03 - 3.4451342e+02 -3.0516319e+02 3.5578495e+03 - 3.3470294e+02 -3.1499443e+02 3.5579871e+03 - 3.2485185e+02 -3.2485185e+02 3.5580330e+03 - 3.1499443e+02 -3.3470294e+02 3.5579871e+03 - 3.0516319e+02 -3.4451342e+02 3.5578495e+03 - 2.9538905e+02 -3.5424711e+02 3.5576203e+03 - 2.8570156e+02 -3.6386567e+02 3.5573001e+03 - 2.7612892e+02 -3.7332842e+02 3.5568891e+03 - 2.6669823e+02 -3.8259202e+02 3.5563882e+03 - 2.5743552e+02 -3.9161028e+02 3.5557980e+03 - 2.4836586e+02 -4.0033375e+02 3.5551197e+03 - 2.3951349e+02 -4.0870948e+02 3.5543545e+03 - 2.3090184e+02 -4.1668058e+02 3.5535036e+03 - 2.2255361e+02 -4.2418585e+02 3.5525687e+03 - 2.1449084e+02 -4.3115931e+02 3.5515517e+03 - 2.0673488e+02 -4.3752976e+02 3.5504547e+03 - 1.9930644e+02 -4.4322026e+02 3.5492801e+03 - 1.9222552e+02 -4.4814762e+02 3.5480308e+03 - 1.8551137e+02 -4.5222183e+02 3.5467099e+03 - 1.7918241e+02 -4.5534558e+02 3.5453211e+03 - 1.7325604e+02 -4.5741374e+02 3.5438683e+03 - 1.6774847e+02 -4.5831297e+02 3.5423563e+03 - 1.6267443e+02 -4.5792140e+02 3.5407904e+03 - 1.5804683e+02 -4.5610855e+02 3.5391764e+03 - 1.5387629e+02 -4.5273553e+02 3.5375213e+03 - 1.5017064e+02 -4.4765567e+02 3.5358326e+03 - 1.4693427e+02 -4.4071564e+02 3.5341190e+03 - 1.4416738e+02 -4.3175740e+02 3.5323902e+03 - 1.4186514e+02 -4.2062104e+02 3.5306572e+03 - 1.4001684e+02 -4.0714878e+02 3.5289321e+03 - 1.3860499e+02 -3.9119035e+02 3.5272287e+03 - 1.3760447e+02 -3.7260992e+02 3.5255616e+03 - 1.3698190e+02 -3.5129462e+02 3.5239474e+03 - 1.3669534e+02 -3.2716465e+02 3.5224034e+03 - 1.3669441e+02 -3.0018454e+02 3.5209484e+03 - 1.3692110e+02 -2.7037503e+02 3.5196016e+03 - 1.3731135e+02 -2.3782451e+02 3.5183826e+03 - 1.3779754e+02 -2.0269873e+02 3.5173108e+03 - 1.3831178e+02 -1.6524713e+02 3.5164046e+03 - 1.3878996e+02 -1.2580427e+02 3.5156806e+03 - 1.3917603e+02 -8.4784938e+01 3.5151526e+03 - 1.3942628e+02 -4.2672394e+01 3.5148314e+03 - 1.3951289e+02 -4.8134273e-09 3.5147236e+03 - 1.3942628e+02 4.2672395e+01 3.5148314e+03 - 1.3917603e+02 8.4784938e+01 3.5151526e+03 - 1.3878996e+02 1.2580427e+02 3.5156806e+03 - 1.3831178e+02 1.6524713e+02 3.5164046e+03 - 1.3779754e+02 2.0269873e+02 3.5173108e+03 - 1.3731135e+02 2.3782451e+02 3.5183826e+03 - 1.3692110e+02 2.7037503e+02 3.5196016e+03 - 1.3669441e+02 3.0018454e+02 3.5209484e+03 - 1.3669534e+02 3.2716465e+02 3.5224034e+03 - 1.3698190e+02 3.5129462e+02 3.5239474e+03 - 1.3760447e+02 3.7260992e+02 3.5255616e+03 - 1.3860499e+02 3.9119035e+02 3.5272287e+03 - 1.4001684e+02 4.0714878e+02 3.5289321e+03 - 1.4186514e+02 4.2062104e+02 3.5306572e+03 - 1.4416738e+02 4.3175740e+02 3.5323902e+03 - 1.4693427e+02 4.4071564e+02 3.5341190e+03 - 1.5017064e+02 4.4765567e+02 3.5358326e+03 - 1.5387629e+02 4.5273553e+02 3.5375213e+03 - 1.5804683e+02 4.5610855e+02 3.5391764e+03 - 1.6267443e+02 4.5792140e+02 3.5407904e+03 - 1.6774847e+02 4.5831297e+02 3.5423563e+03 - 1.7325604e+02 4.5741374e+02 3.5438683e+03 - 1.7918241e+02 4.5534558e+02 3.5453211e+03 - 1.8551137e+02 4.5222183e+02 3.5467099e+03 - 1.9222552e+02 4.4814762e+02 3.5480308e+03 - 1.9930644e+02 4.4322026e+02 3.5492801e+03 - 2.0673488e+02 4.3752976e+02 3.5504547e+03 - 2.1449084e+02 4.3115931e+02 3.5515517e+03 - 2.2255361e+02 4.2418585e+02 3.5525687e+03 - 2.3090184e+02 4.1668058e+02 3.5535036e+03 - 2.3951349e+02 4.0870948e+02 3.5543545e+03 - 2.4836586e+02 4.0033375e+02 3.5551197e+03 - 2.5743552e+02 3.9161028e+02 3.5557980e+03 - 2.6669823e+02 3.8259202e+02 3.5563882e+03 - 2.7612892e+02 3.7332842e+02 3.5568891e+03 - 2.8570156e+02 3.6386567e+02 3.5573001e+03 - 2.9538905e+02 3.5424711e+02 3.5576203e+03 - 3.0516319e+02 3.4451342e+02 3.5578495e+03 - 3.1499443e+02 3.3470294e+02 3.5579871e+03 - 3.2485185e+02 3.2485185e+02 3.5580330e+03 - 3.3470294e+02 3.1499443e+02 3.5579871e+03 - 3.4451342e+02 3.0516319e+02 3.5578495e+03 - 3.5424711e+02 2.9538905e+02 3.5576203e+03 - 3.6386567e+02 2.8570156e+02 3.5573001e+03 - 3.7332842e+02 2.7612892e+02 3.5568891e+03 - 3.8259202e+02 2.6669823e+02 3.5563882e+03 - 3.9161028e+02 2.5743552e+02 3.5557980e+03 - 4.0033375e+02 2.4836586e+02 3.5551197e+03 - 4.0870948e+02 2.3951349e+02 3.5543545e+03 - 4.1668058e+02 2.3090184e+02 3.5535036e+03 - 4.2418585e+02 2.2255361e+02 3.5525687e+03 - 4.3115931e+02 2.1449084e+02 3.5515517e+03 - 4.3752976e+02 2.0673488e+02 3.5504547e+03 - 4.4322026e+02 1.9930644e+02 3.5492801e+03 - 4.4814762e+02 1.9222552e+02 3.5480308e+03 - 4.5222183e+02 1.8551137e+02 3.5467099e+03 - 4.5534558e+02 1.7918241e+02 3.5453211e+03 - 4.5741374e+02 1.7325604e+02 3.5438683e+03 - 4.5831297e+02 1.6774847e+02 3.5423563e+03 - 4.5792140e+02 1.6267443e+02 3.5407904e+03 - 4.5610855e+02 1.5804683e+02 3.5391764e+03 - 4.5273553e+02 1.5387629e+02 3.5375213e+03 - 4.4765567e+02 1.5017064e+02 3.5358326e+03 - 4.4071564e+02 1.4693427e+02 3.5341190e+03 - 4.3175740e+02 1.4416738e+02 3.5323902e+03 - 4.2062104e+02 1.4186514e+02 3.5306572e+03 - 4.0714878e+02 1.4001684e+02 3.5289321e+03 - 3.9119035e+02 1.3860499e+02 3.5272287e+03 - 3.7260992e+02 1.3760447e+02 3.5255616e+03 - 3.5129462e+02 1.3698190e+02 3.5239474e+03 - 3.2716465e+02 1.3669534e+02 3.5224034e+03 - 3.0018454e+02 1.3669441e+02 3.5209484e+03 - 2.7037503e+02 1.3692110e+02 3.5196016e+03 - 2.3782451e+02 1.3731135e+02 3.5183826e+03 - 2.0269873e+02 1.3779754e+02 3.5173108e+03 - 1.6524713e+02 1.3831178e+02 3.5164046e+03 - 1.2580427e+02 1.3878996e+02 3.5156806e+03 - 8.4784938e+01 1.3917603e+02 3.5151526e+03 - 4.2672395e+01 1.3942628e+02 3.5148314e+03 - 2.4067136e-09 1.3951289e+02 3.5147236e+03 - -4.2672394e+01 1.3942628e+02 3.5148314e+03 - -8.4784938e+01 1.3917603e+02 3.5151526e+03 - -1.2580427e+02 1.3878996e+02 3.5156806e+03 - -1.6524713e+02 1.3831178e+02 3.5164046e+03 - -2.0269873e+02 1.3779754e+02 3.5173108e+03 - -2.3782451e+02 1.3731135e+02 3.5183826e+03 - -2.7037503e+02 1.3692110e+02 3.5196016e+03 - -3.0018454e+02 1.3669441e+02 3.5209484e+03 - -3.2716465e+02 1.3669534e+02 3.5224034e+03 - -3.5129462e+02 1.3698190e+02 3.5239474e+03 - -3.7260992e+02 1.3760447e+02 3.5255616e+03 - -3.9119035e+02 1.3860499e+02 3.5272287e+03 - -4.0714878e+02 1.4001684e+02 3.5289321e+03 - -4.2062104e+02 1.4186514e+02 3.5306572e+03 - -4.3175740e+02 1.4416738e+02 3.5323902e+03 - -4.4071564e+02 1.4693427e+02 3.5341190e+03 - -4.4765567e+02 1.5017064e+02 3.5358326e+03 - -4.5273553e+02 1.5387629e+02 3.5375213e+03 - -4.5610855e+02 1.5804683e+02 3.5391764e+03 - -4.5792140e+02 1.6267443e+02 3.5407904e+03 - -4.5831297e+02 1.6774847e+02 3.5423563e+03 - -4.5741374e+02 1.7325604e+02 3.5438683e+03 - -4.5534558e+02 1.7918241e+02 3.5453211e+03 - -4.5222183e+02 1.8551137e+02 3.5467099e+03 - -4.4814762e+02 1.9222552e+02 3.5480308e+03 - -4.4322026e+02 1.9930644e+02 3.5492801e+03 - -4.3752976e+02 2.0673488e+02 3.5504547e+03 - -4.3115931e+02 2.1449084e+02 3.5515517e+03 - -4.2418585e+02 2.2255361e+02 3.5525687e+03 - -4.1668058e+02 2.3090184e+02 3.5535036e+03 - -4.0870948e+02 2.3951349e+02 3.5543545e+03 - -4.0033375e+02 2.4836586e+02 3.5551197e+03 - -3.9161028e+02 2.5743552e+02 3.5557980e+03 - -3.8259202e+02 2.6669823e+02 3.5563882e+03 - -3.7332842e+02 2.7612892e+02 3.5568891e+03 - -3.6386567e+02 2.8570156e+02 3.5573001e+03 - -3.5424711e+02 2.9538905e+02 3.5576203e+03 - -3.4451342e+02 3.0516319e+02 3.5578495e+03 - -3.3470294e+02 3.1499443e+02 3.5579871e+03 - -3.2485185e+02 3.2485185e+02 3.5580330e+03 - -3.1499443e+02 3.3470294e+02 3.5579871e+03 - -3.0516319e+02 3.4451342e+02 3.5578495e+03 - -2.9538905e+02 3.5424711e+02 3.5576203e+03 - -2.8570156e+02 3.6386567e+02 3.5573001e+03 - -2.7612892e+02 3.7332842e+02 3.5568891e+03 - -2.6669823e+02 3.8259202e+02 3.5563882e+03 - -2.5743552e+02 3.9161028e+02 3.5557980e+03 - -2.4836586e+02 4.0033375e+02 3.5551197e+03 - -2.3951349e+02 4.0870948e+02 3.5543545e+03 - -2.3090184e+02 4.1668058e+02 3.5535036e+03 - -2.2255361e+02 4.2418585e+02 3.5525687e+03 - -2.1449084e+02 4.3115931e+02 3.5515517e+03 - -2.0673488e+02 4.3752976e+02 3.5504547e+03 - -1.9930644e+02 4.4322026e+02 3.5492801e+03 - -1.9222552e+02 4.4814762e+02 3.5480308e+03 - -1.8551137e+02 4.5222183e+02 3.5467099e+03 - -1.7918241e+02 4.5534558e+02 3.5453211e+03 - -1.7325604e+02 4.5741374e+02 3.5438683e+03 - -1.6774847e+02 4.5831297e+02 3.5423563e+03 - -1.6267443e+02 4.5792140e+02 3.5407904e+03 - -1.5804683e+02 4.5610855e+02 3.5391764e+03 - -1.5387629e+02 4.5273553e+02 3.5375213e+03 - -1.5017064e+02 4.4765567e+02 3.5358326e+03 - -1.4693427e+02 4.4071564e+02 3.5341190e+03 - -1.4416738e+02 4.3175740e+02 3.5323902e+03 - -1.4186514e+02 4.2062104e+02 3.5306572e+03 - -1.4001684e+02 4.0714878e+02 3.5289321e+03 - -1.3860499e+02 3.9119035e+02 3.5272287e+03 - -1.3760447e+02 3.7260992e+02 3.5255616e+03 - -1.3698190e+02 3.5129462e+02 3.5239474e+03 - -1.3669534e+02 3.2716465e+02 3.5224034e+03 - -1.3669441e+02 3.0018454e+02 3.5209484e+03 - -1.3692110e+02 2.7037503e+02 3.5196016e+03 - -1.3731135e+02 2.3782451e+02 3.5183826e+03 - -1.3779754e+02 2.0269873e+02 3.5173108e+03 - -1.3831178e+02 1.6524713e+02 3.5164046e+03 - -1.3878996e+02 1.2580427e+02 3.5156806e+03 - -1.3917603e+02 8.4784938e+01 3.5151526e+03 - -1.3942628e+02 4.2672395e+01 3.5148314e+03 - -1.3951289e+02 -9.6268545e-09 3.5147236e+03 - -7.9077866e+01 4.8134273e-09 3.4944162e+03 - -7.8997537e+01 -4.3736848e+01 3.4945370e+03 - -7.8766676e+01 -8.6867721e+01 3.4948969e+03 - -7.8414747e+01 -1.2881622e+02 3.4954880e+03 - -7.7987964e+01 -1.6906177e+02 3.4962975e+03 - -7.7545450e+01 -2.0715989e+02 3.4973091e+03 - -7.7154688e+01 -2.4275491e+02 3.4985033e+03 - -7.6886879e+01 -2.7558491e+02 3.4998586e+03 - -7.6812709e+01 -3.0547955e+02 3.5013525e+03 - -7.6998874e+01 -3.3235258e+02 3.5029625e+03 - -7.7505541e+01 -3.5619067e+02 3.5046664e+03 - -7.8384747e+01 -3.7704050e+02 3.5064431e+03 - -7.9679644e+01 -3.9499552e+02 3.5082731e+03 - -8.1424413e+01 -4.1018350e+02 3.5101381e+03 - -8.3644673e+01 -4.2275563e+02 3.5120218e+03 - -8.6358204e+01 -4.3287726e+02 3.5139093e+03 - -8.9575832e+01 -4.4072057e+02 3.5157876e+03 - -9.3302386e+01 -4.4645894e+02 3.5176449e+03 - -9.7537618e+01 -4.5026278e+02 3.5194709e+03 - -1.0227706e+02 -4.5229664e+02 3.5212567e+03 - -1.0751279e+02 -4.5271735e+02 3.5229944e+03 - -1.1323407e+02 -4.5167290e+02 3.5246771e+03 - -1.1942788e+02 -4.4930188e+02 3.5262987e+03 - -1.2607940e+02 -4.4573345e+02 3.5278540e+03 - -1.3317229e+02 -4.4108742e+02 3.5293384e+03 - -1.4068902e+02 -4.3547475e+02 3.5307480e+03 - -1.4861101e+02 -4.2899793e+02 3.5320792e+03 - -1.5691881e+02 -4.2175166e+02 3.5333291e+03 - -1.6559220e+02 -4.1382335e+02 3.5344950e+03 - -1.7461018e+02 -4.0529376e+02 3.5355747e+03 - -1.8395108e+02 -3.9623756e+02 3.5365661e+03 - -1.9359248e+02 -3.8672387e+02 3.5374676e+03 - -2.0351121e+02 -3.7681678e+02 3.5382778e+03 - -2.1368331e+02 -3.6657583e+02 3.5389953e+03 - -2.2408394e+02 -3.5605641e+02 3.5396191e+03 - -2.3468733e+02 -3.4531019e+02 3.5401483e+03 - -2.4546669e+02 -3.3438542e+02 3.5405823e+03 - -2.5639408e+02 -3.2332735e+02 3.5409204e+03 - -2.6744031e+02 -3.1217841e+02 3.5411622e+03 - -2.7857480e+02 -3.0097856e+02 3.5413074e+03 - -2.8976548e+02 -2.8976548e+02 3.5413559e+03 - -3.0097856e+02 -2.7857480e+02 3.5413074e+03 - -3.1217841e+02 -2.6744031e+02 3.5411622e+03 - -3.2332735e+02 -2.5639408e+02 3.5409204e+03 - -3.3438542e+02 -2.4546669e+02 3.5405823e+03 - -3.4531019e+02 -2.3468733e+02 3.5401483e+03 - -3.5605641e+02 -2.2408394e+02 3.5396191e+03 - -3.6657583e+02 -2.1368331e+02 3.5389953e+03 - -3.7681678e+02 -2.0351121e+02 3.5382778e+03 - -3.8672387e+02 -1.9359248e+02 3.5374676e+03 - -3.9623756e+02 -1.8395108e+02 3.5365661e+03 - -4.0529376e+02 -1.7461018e+02 3.5355747e+03 - -4.1382335e+02 -1.6559220e+02 3.5344950e+03 - -4.2175166e+02 -1.5691881e+02 3.5333291e+03 - -4.2899793e+02 -1.4861101e+02 3.5320792e+03 - -4.3547475e+02 -1.4068902e+02 3.5307480e+03 - -4.4108742e+02 -1.3317229e+02 3.5293384e+03 - -4.4573345e+02 -1.2607940e+02 3.5278540e+03 - -4.4930188e+02 -1.1942788e+02 3.5262987e+03 - -4.5167290e+02 -1.1323407e+02 3.5246771e+03 - -4.5271735e+02 -1.0751279e+02 3.5229944e+03 - -4.5229664e+02 -1.0227706e+02 3.5212567e+03 - -4.5026278e+02 -9.7537618e+01 3.5194709e+03 - -4.4645894e+02 -9.3302386e+01 3.5176449e+03 - -4.4072057e+02 -8.9575832e+01 3.5157876e+03 - -4.3287726e+02 -8.6358204e+01 3.5139093e+03 - -4.2275563e+02 -8.3644673e+01 3.5120218e+03 - -4.1018350e+02 -8.1424413e+01 3.5101381e+03 - -3.9499552e+02 -7.9679644e+01 3.5082731e+03 - -3.7704050e+02 -7.8384747e+01 3.5064431e+03 - -3.5619067e+02 -7.7505541e+01 3.5046664e+03 - -3.3235258e+02 -7.6998874e+01 3.5029625e+03 - -3.0547955e+02 -7.6812709e+01 3.5013525e+03 - -2.7558491e+02 -7.6886879e+01 3.4998586e+03 - -2.4275491e+02 -7.7154688e+01 3.4985033e+03 - -2.0715989e+02 -7.7545450e+01 3.4973091e+03 - -1.6906177e+02 -7.7987964e+01 3.4962975e+03 - -1.2881622e+02 -7.8414747e+01 3.4954880e+03 - -8.6867721e+01 -7.8766676e+01 3.4948969e+03 - -4.3736848e+01 -7.8997537e+01 3.4945370e+03 - -2.4067136e-09 -7.9077866e+01 3.4944162e+03 - 4.3736848e+01 -7.8997537e+01 3.4945370e+03 - 8.6867721e+01 -7.8766676e+01 3.4948969e+03 - 1.2881622e+02 -7.8414746e+01 3.4954880e+03 - 1.6906177e+02 -7.7987964e+01 3.4962975e+03 - 2.0715989e+02 -7.7545450e+01 3.4973091e+03 - 2.4275491e+02 -7.7154688e+01 3.4985033e+03 - 2.7558491e+02 -7.6886879e+01 3.4998586e+03 - 3.0547955e+02 -7.6812709e+01 3.5013525e+03 - 3.3235258e+02 -7.6998874e+01 3.5029625e+03 - 3.5619067e+02 -7.7505541e+01 3.5046664e+03 - 3.7704050e+02 -7.8384747e+01 3.5064431e+03 - 3.9499552e+02 -7.9679644e+01 3.5082731e+03 - 4.1018350e+02 -8.1424413e+01 3.5101381e+03 - 4.2275563e+02 -8.3644673e+01 3.5120218e+03 - 4.3287726e+02 -8.6358204e+01 3.5139093e+03 - 4.4072057e+02 -8.9575832e+01 3.5157876e+03 - 4.4645894e+02 -9.3302386e+01 3.5176449e+03 - 4.5026278e+02 -9.7537618e+01 3.5194709e+03 - 4.5229664e+02 -1.0227706e+02 3.5212567e+03 - 4.5271735e+02 -1.0751279e+02 3.5229944e+03 - 4.5167290e+02 -1.1323407e+02 3.5246771e+03 - 4.4930188e+02 -1.1942788e+02 3.5262987e+03 - 4.4573345e+02 -1.2607940e+02 3.5278540e+03 - 4.4108742e+02 -1.3317229e+02 3.5293384e+03 - 4.3547475e+02 -1.4068902e+02 3.5307480e+03 - 4.2899793e+02 -1.4861101e+02 3.5320792e+03 - 4.2175166e+02 -1.5691881e+02 3.5333291e+03 - 4.1382335e+02 -1.6559220e+02 3.5344950e+03 - 4.0529376e+02 -1.7461018e+02 3.5355747e+03 - 3.9623756e+02 -1.8395108e+02 3.5365661e+03 - 3.8672387e+02 -1.9359248e+02 3.5374676e+03 - 3.7681678e+02 -2.0351121e+02 3.5382778e+03 - 3.6657583e+02 -2.1368331e+02 3.5389953e+03 - 3.5605641e+02 -2.2408394e+02 3.5396191e+03 - 3.4531019e+02 -2.3468733e+02 3.5401483e+03 - 3.3438542e+02 -2.4546669e+02 3.5405823e+03 - 3.2332735e+02 -2.5639408e+02 3.5409204e+03 - 3.1217841e+02 -2.6744031e+02 3.5411622e+03 - 3.0097856e+02 -2.7857480e+02 3.5413074e+03 - 2.8976548e+02 -2.8976548e+02 3.5413559e+03 - 2.7857480e+02 -3.0097856e+02 3.5413074e+03 - 2.6744031e+02 -3.1217841e+02 3.5411622e+03 - 2.5639408e+02 -3.2332735e+02 3.5409204e+03 - 2.4546669e+02 -3.3438542e+02 3.5405823e+03 - 2.3468733e+02 -3.4531019e+02 3.5401483e+03 - 2.2408394e+02 -3.5605641e+02 3.5396191e+03 - 2.1368331e+02 -3.6657583e+02 3.5389953e+03 - 2.0351121e+02 -3.7681678e+02 3.5382778e+03 - 1.9359248e+02 -3.8672387e+02 3.5374676e+03 - 1.8395108e+02 -3.9623756e+02 3.5365661e+03 - 1.7461018e+02 -4.0529376e+02 3.5355747e+03 - 1.6559220e+02 -4.1382335e+02 3.5344950e+03 - 1.5691881e+02 -4.2175166e+02 3.5333291e+03 - 1.4861101e+02 -4.2899793e+02 3.5320792e+03 - 1.4068902e+02 -4.3547475e+02 3.5307480e+03 - 1.3317229e+02 -4.4108742e+02 3.5293384e+03 - 1.2607940e+02 -4.4573345e+02 3.5278540e+03 - 1.1942788e+02 -4.4930188e+02 3.5262987e+03 - 1.1323407e+02 -4.5167290e+02 3.5246771e+03 - 1.0751279e+02 -4.5271735e+02 3.5229944e+03 - 1.0227706e+02 -4.5229664e+02 3.5212567e+03 - 9.7537618e+01 -4.5026278e+02 3.5194709e+03 - 9.3302386e+01 -4.4645894e+02 3.5176449e+03 - 8.9575832e+01 -4.4072057e+02 3.5157876e+03 - 8.6358204e+01 -4.3287726e+02 3.5139093e+03 - 8.3644673e+01 -4.2275563e+02 3.5120218e+03 - 8.1424413e+01 -4.1018350e+02 3.5101381e+03 - 7.9679644e+01 -3.9499552e+02 3.5082731e+03 - 7.8384747e+01 -3.7704050e+02 3.5064431e+03 - 7.7505541e+01 -3.5619067e+02 3.5046664e+03 - 7.6998874e+01 -3.3235258e+02 3.5029625e+03 - 7.6812709e+01 -3.0547955e+02 3.5013525e+03 - 7.6886879e+01 -2.7558491e+02 3.4998586e+03 - 7.7154688e+01 -2.4275491e+02 3.4985033e+03 - 7.7545450e+01 -2.0715989e+02 3.4973091e+03 - 7.7987964e+01 -1.6906177e+02 3.4962975e+03 - 7.8414747e+01 -1.2881622e+02 3.4954880e+03 - 7.8766676e+01 -8.6867721e+01 3.4948969e+03 - 7.8997537e+01 -4.3736848e+01 3.4945370e+03 - 7.9077866e+01 -2.4067136e-09 3.4944162e+03 - 7.8997537e+01 4.3736848e+01 3.4945370e+03 - 7.8766676e+01 8.6867721e+01 3.4948969e+03 - 7.8414747e+01 1.2881622e+02 3.4954880e+03 - 7.7987964e+01 1.6906177e+02 3.4962975e+03 - 7.7545450e+01 2.0715989e+02 3.4973091e+03 - 7.7154688e+01 2.4275491e+02 3.4985033e+03 - 7.6886879e+01 2.7558491e+02 3.4998586e+03 - 7.6812709e+01 3.0547955e+02 3.5013525e+03 - 7.6998874e+01 3.3235258e+02 3.5029625e+03 - 7.7505541e+01 3.5619067e+02 3.5046664e+03 - 7.8384747e+01 3.7704050e+02 3.5064431e+03 - 7.9679644e+01 3.9499552e+02 3.5082731e+03 - 8.1424413e+01 4.1018350e+02 3.5101381e+03 - 8.3644673e+01 4.2275563e+02 3.5120218e+03 - 8.6358204e+01 4.3287726e+02 3.5139093e+03 - 8.9575832e+01 4.4072057e+02 3.5157876e+03 - 9.3302386e+01 4.4645894e+02 3.5176449e+03 - 9.7537618e+01 4.5026278e+02 3.5194709e+03 - 1.0227706e+02 4.5229664e+02 3.5212567e+03 - 1.0751279e+02 4.5271735e+02 3.5229944e+03 - 1.1323407e+02 4.5167290e+02 3.5246771e+03 - 1.1942788e+02 4.4930188e+02 3.5262987e+03 - 1.2607940e+02 4.4573345e+02 3.5278540e+03 - 1.3317229e+02 4.4108742e+02 3.5293384e+03 - 1.4068902e+02 4.3547475e+02 3.5307480e+03 - 1.4861101e+02 4.2899793e+02 3.5320792e+03 - 1.5691881e+02 4.2175166e+02 3.5333291e+03 - 1.6559220e+02 4.1382335e+02 3.5344950e+03 - 1.7461018e+02 4.0529376e+02 3.5355747e+03 - 1.8395108e+02 3.9623756e+02 3.5365661e+03 - 1.9359248e+02 3.8672387e+02 3.5374676e+03 - 2.0351121e+02 3.7681678e+02 3.5382778e+03 - 2.1368331e+02 3.6657583e+02 3.5389953e+03 - 2.2408394e+02 3.5605641e+02 3.5396191e+03 - 2.3468733e+02 3.4531019e+02 3.5401483e+03 - 2.4546669e+02 3.3438542e+02 3.5405823e+03 - 2.5639408e+02 3.2332735e+02 3.5409204e+03 - 2.6744031e+02 3.1217841e+02 3.5411622e+03 - 2.7857480e+02 3.0097856e+02 3.5413074e+03 - 2.8976548e+02 2.8976548e+02 3.5413559e+03 - 3.0097856e+02 2.7857480e+02 3.5413074e+03 - 3.1217841e+02 2.6744031e+02 3.5411622e+03 - 3.2332735e+02 2.5639408e+02 3.5409204e+03 - 3.3438542e+02 2.4546669e+02 3.5405823e+03 - 3.4531019e+02 2.3468733e+02 3.5401483e+03 - 3.5605641e+02 2.2408394e+02 3.5396191e+03 - 3.6657583e+02 2.1368331e+02 3.5389953e+03 - 3.7681678e+02 2.0351121e+02 3.5382778e+03 - 3.8672387e+02 1.9359248e+02 3.5374676e+03 - 3.9623756e+02 1.8395108e+02 3.5365661e+03 - 4.0529376e+02 1.7461018e+02 3.5355747e+03 - 4.1382335e+02 1.6559220e+02 3.5344950e+03 - 4.2175166e+02 1.5691881e+02 3.5333291e+03 - 4.2899793e+02 1.4861101e+02 3.5320792e+03 - 4.3547475e+02 1.4068902e+02 3.5307480e+03 - 4.4108742e+02 1.3317229e+02 3.5293384e+03 - 4.4573345e+02 1.2607940e+02 3.5278540e+03 - 4.4930188e+02 1.1942788e+02 3.5262987e+03 - 4.5167290e+02 1.1323407e+02 3.5246771e+03 - 4.5271735e+02 1.0751279e+02 3.5229944e+03 - 4.5229664e+02 1.0227706e+02 3.5212567e+03 - 4.5026278e+02 9.7537618e+01 3.5194709e+03 - 4.4645894e+02 9.3302386e+01 3.5176449e+03 - 4.4072057e+02 8.9575832e+01 3.5157876e+03 - 4.3287726e+02 8.6358204e+01 3.5139093e+03 - 4.2275563e+02 8.3644673e+01 3.5120218e+03 - 4.1018350e+02 8.1424413e+01 3.5101381e+03 - 3.9499552e+02 7.9679644e+01 3.5082731e+03 - 3.7704050e+02 7.8384747e+01 3.5064431e+03 - 3.5619067e+02 7.7505541e+01 3.5046664e+03 - 3.3235258e+02 7.6998874e+01 3.5029625e+03 - 3.0547955e+02 7.6812709e+01 3.5013525e+03 - 2.7558491e+02 7.6886879e+01 3.4998586e+03 - 2.4275491e+02 7.7154688e+01 3.4985033e+03 - 2.0715989e+02 7.7545450e+01 3.4973091e+03 - 1.6906177e+02 7.7987964e+01 3.4962975e+03 - 1.2881622e+02 7.8414746e+01 3.4954880e+03 - 8.6867721e+01 7.8766676e+01 3.4948969e+03 - 4.3736848e+01 7.8997537e+01 3.4945370e+03 - -7.2201409e-09 7.9077866e+01 3.4944162e+03 - -4.3736848e+01 7.8997537e+01 3.4945370e+03 - -8.6867721e+01 7.8766676e+01 3.4948969e+03 - -1.2881622e+02 7.8414747e+01 3.4954880e+03 - -1.6906177e+02 7.7987964e+01 3.4962975e+03 - -2.0715989e+02 7.7545450e+01 3.4973091e+03 - -2.4275491e+02 7.7154688e+01 3.4985033e+03 - -2.7558491e+02 7.6886879e+01 3.4998586e+03 - -3.0547955e+02 7.6812709e+01 3.5013525e+03 - -3.3235258e+02 7.6998874e+01 3.5029625e+03 - -3.5619067e+02 7.7505541e+01 3.5046664e+03 - -3.7704050e+02 7.8384747e+01 3.5064431e+03 - -3.9499552e+02 7.9679644e+01 3.5082731e+03 - -4.1018350e+02 8.1424413e+01 3.5101381e+03 - -4.2275563e+02 8.3644673e+01 3.5120218e+03 - -4.3287726e+02 8.6358204e+01 3.5139093e+03 - -4.4072057e+02 8.9575832e+01 3.5157876e+03 - -4.4645894e+02 9.3302386e+01 3.5176449e+03 - -4.5026278e+02 9.7537618e+01 3.5194709e+03 - -4.5229664e+02 1.0227706e+02 3.5212567e+03 - -4.5271735e+02 1.0751279e+02 3.5229944e+03 - -4.5167290e+02 1.1323407e+02 3.5246771e+03 - -4.4930188e+02 1.1942788e+02 3.5262987e+03 - -4.4573345e+02 1.2607940e+02 3.5278540e+03 - -4.4108742e+02 1.3317229e+02 3.5293384e+03 - -4.3547475e+02 1.4068902e+02 3.5307480e+03 - -4.2899793e+02 1.4861101e+02 3.5320792e+03 - -4.2175166e+02 1.5691881e+02 3.5333291e+03 - -4.1382335e+02 1.6559220e+02 3.5344950e+03 - -4.0529376e+02 1.7461018e+02 3.5355747e+03 - -3.9623756e+02 1.8395108e+02 3.5365661e+03 - -3.8672387e+02 1.9359248e+02 3.5374676e+03 - -3.7681678e+02 2.0351121e+02 3.5382778e+03 - -3.6657583e+02 2.1368331e+02 3.5389953e+03 - -3.5605641e+02 2.2408394e+02 3.5396191e+03 - -3.4531019e+02 2.3468733e+02 3.5401483e+03 - -3.3438542e+02 2.4546669e+02 3.5405823e+03 - -3.2332735e+02 2.5639408e+02 3.5409204e+03 - -3.1217841e+02 2.6744031e+02 3.5411622e+03 - -3.0097856e+02 2.7857480e+02 3.5413074e+03 - -2.8976548e+02 2.8976548e+02 3.5413559e+03 - -2.7857480e+02 3.0097856e+02 3.5413074e+03 - -2.6744031e+02 3.1217841e+02 3.5411622e+03 - -2.5639408e+02 3.2332735e+02 3.5409204e+03 - -2.4546669e+02 3.3438542e+02 3.5405823e+03 - -2.3468733e+02 3.4531019e+02 3.5401483e+03 - -2.2408394e+02 3.5605641e+02 3.5396191e+03 - -2.1368331e+02 3.6657583e+02 3.5389953e+03 - -2.0351121e+02 3.7681678e+02 3.5382778e+03 - -1.9359248e+02 3.8672387e+02 3.5374676e+03 - -1.8395108e+02 3.9623756e+02 3.5365661e+03 - -1.7461018e+02 4.0529376e+02 3.5355747e+03 - -1.6559220e+02 4.1382335e+02 3.5344950e+03 - -1.5691881e+02 4.2175166e+02 3.5333291e+03 - -1.4861101e+02 4.2899793e+02 3.5320792e+03 - -1.4068902e+02 4.3547475e+02 3.5307480e+03 - -1.3317229e+02 4.4108742e+02 3.5293384e+03 - -1.2607940e+02 4.4573345e+02 3.5278540e+03 - -1.1942788e+02 4.4930188e+02 3.5262987e+03 - -1.1323407e+02 4.5167290e+02 3.5246771e+03 - -1.0751279e+02 4.5271735e+02 3.5229944e+03 - -1.0227706e+02 4.5229664e+02 3.5212567e+03 - -9.7537618e+01 4.5026278e+02 3.5194709e+03 - -9.3302386e+01 4.4645894e+02 3.5176449e+03 - -8.9575832e+01 4.4072057e+02 3.5157876e+03 - -8.6358204e+01 4.3287726e+02 3.5139093e+03 - -8.3644673e+01 4.2275563e+02 3.5120218e+03 - -8.1424413e+01 4.1018350e+02 3.5101381e+03 - -7.9679644e+01 3.9499552e+02 3.5082731e+03 - -7.8384747e+01 3.7704050e+02 3.5064431e+03 - -7.7505541e+01 3.5619067e+02 3.5046664e+03 - -7.6998874e+01 3.3235258e+02 3.5029625e+03 - -7.6812709e+01 3.0547955e+02 3.5013525e+03 - -7.6886879e+01 2.7558491e+02 3.4998586e+03 - -7.7154688e+01 2.4275491e+02 3.4985033e+03 - -7.7545450e+01 2.0715989e+02 3.4973091e+03 - -7.7987964e+01 1.6906177e+02 3.4962975e+03 - -7.8414747e+01 1.2881622e+02 3.4954880e+03 - -7.8766676e+01 8.6867721e+01 3.4948969e+03 - -7.8997537e+01 4.3736848e+01 3.4945370e+03 - -7.9077866e+01 7.2201409e-09 3.4944162e+03 - -1.2253601e+01 9.6268545e-09 3.4704938e+03 - -1.2181022e+01 -4.4671781e+01 3.4706286e+03 - -1.1973965e+01 -8.8688601e+01 3.4710299e+03 - -1.1663485e+01 -1.3142853e+02 3.4716882e+03 - -1.1298216e+01 -1.7233186e+02 3.4725887e+03 - -1.0940235e+01 -2.1092342e+02 3.4737120e+03 - -1.0660194e+01 -2.4682633e+02 3.4750351e+03 - -1.0532380e+01 -2.7976678e+02 3.4765332e+03 - -1.0630263e+01 -3.0957112e+02 3.4781804e+03 - -1.1022881e+01 -3.3615688e+02 3.4799505e+03 - -1.1772247e+01 -3.5951994e+02 3.4818187e+03 - -1.2931758e+01 -3.7971997e+02 3.4837610e+03 - -1.4545498e+01 -3.9686571e+02 3.4857555e+03 - -1.6648236e+01 -4.1110134e+02 3.4877823e+03 - -1.9265918e+01 -4.2259456e+02 3.4898235e+03 - -2.2416473e+01 -4.3152678e+02 3.4918630e+03 - -2.6110769e+01 -4.3808529e+02 3.4938869e+03 - -3.0353615e+01 -4.4245741e+02 3.4958828e+03 - -3.5144726e+01 -4.4482624e+02 3.4978402e+03 - -4.0479596e+01 -4.4536775e+02 3.4997498e+03 - -4.6350277e+01 -4.4424895e+02 3.5016036e+03 - -5.2746024e+01 -4.4162689e+02 3.5033946e+03 - -5.9653835e+01 -4.3764821e+02 3.5051170e+03 - -6.7058887e+01 -4.3244918e+02 3.5067658e+03 - -7.4944869e+01 -4.2615594e+02 3.5083364e+03 - -8.3294237e+01 -4.1888507e+02 3.5098253e+03 - -9.2088407e+01 -4.1074407e+02 3.5112291e+03 - -1.0130788e+02 -4.0183213e+02 3.5125451e+03 - -1.1093233e+02 -3.9224067e+02 3.5137710e+03 - -1.2094063e+02 -3.8205410e+02 3.5149047e+03 - -1.3131091e+02 -3.7135037e+02 3.5159446e+03 - -1.4202047e+02 -3.6020160e+02 3.5168891e+03 - -1.5304582e+02 -3.4867460e+02 3.5177371e+03 - -1.6436258e+02 -3.3683139e+02 3.5184875e+03 - -1.7594543e+02 -3.2472967e+02 3.5191394e+03 - -1.8776804e+02 -3.1242318e+02 3.5196922e+03 - -1.9980293e+02 -2.9996215e+02 3.5201452e+03 - -2.1202141e+02 -2.8739357e+02 3.5204980e+03 - -2.2439346e+02 -2.7476154e+02 3.5207502e+03 - -2.3688755e+02 -2.6210750e+02 3.5209017e+03 - -2.4947054e+02 -2.4947054e+02 3.5209522e+03 - -2.6210750e+02 -2.3688755e+02 3.5209017e+03 - -2.7476154e+02 -2.2439346e+02 3.5207502e+03 - -2.8739357e+02 -2.1202141e+02 3.5204980e+03 - -2.9996215e+02 -1.9980293e+02 3.5201452e+03 - -3.1242318e+02 -1.8776804e+02 3.5196922e+03 - -3.2472967e+02 -1.7594543e+02 3.5191394e+03 - -3.3683139e+02 -1.6436258e+02 3.5184875e+03 - -3.4867460e+02 -1.5304582e+02 3.5177371e+03 - -3.6020160e+02 -1.4202047e+02 3.5168891e+03 - -3.7135037e+02 -1.3131091e+02 3.5159446e+03 - -3.8205410e+02 -1.2094063e+02 3.5149047e+03 - -3.9224067e+02 -1.1093233e+02 3.5137710e+03 - -4.0183213e+02 -1.0130788e+02 3.5125451e+03 - -4.1074407e+02 -9.2088407e+01 3.5112291e+03 - -4.1888507e+02 -8.3294237e+01 3.5098253e+03 - -4.2615594e+02 -7.4944869e+01 3.5083364e+03 - -4.3244918e+02 -6.7058887e+01 3.5067658e+03 - -4.3764821e+02 -5.9653835e+01 3.5051170e+03 - -4.4162689e+02 -5.2746024e+01 3.5033946e+03 - -4.4424895e+02 -4.6350277e+01 3.5016036e+03 - -4.4536775e+02 -4.0479596e+01 3.4997498e+03 - -4.4482624e+02 -3.5144726e+01 3.4978402e+03 - -4.4245741e+02 -3.0353615e+01 3.4958828e+03 - -4.3808529e+02 -2.6110769e+01 3.4938869e+03 - -4.3152678e+02 -2.2416473e+01 3.4918630e+03 - -4.2259456e+02 -1.9265918e+01 3.4898235e+03 - -4.1110134e+02 -1.6648236e+01 3.4877823e+03 - -3.9686571e+02 -1.4545498e+01 3.4857555e+03 - -3.7971997e+02 -1.2931758e+01 3.4837610e+03 - -3.5951994e+02 -1.1772247e+01 3.4818187e+03 - -3.3615688e+02 -1.1022881e+01 3.4799505e+03 - -3.0957112e+02 -1.0630263e+01 3.4781804e+03 - -2.7976678e+02 -1.0532380e+01 3.4765332e+03 - -2.4682633e+02 -1.0660194e+01 3.4750351e+03 - -2.1092342e+02 -1.0940235e+01 3.4737120e+03 - -1.7233186e+02 -1.1298216e+01 3.4725887e+03 - -1.3142853e+02 -1.1663485e+01 3.4716882e+03 - -8.8688601e+01 -1.1973965e+01 3.4710299e+03 - -4.4671781e+01 -1.2181022e+01 3.4706286e+03 - 2.4067136e-09 -1.2253601e+01 3.4704938e+03 - 4.4671781e+01 -1.2181022e+01 3.4706286e+03 - 8.8688601e+01 -1.1973966e+01 3.4710299e+03 - 1.3142853e+02 -1.1663485e+01 3.4716882e+03 - 1.7233186e+02 -1.1298216e+01 3.4725887e+03 - 2.1092342e+02 -1.0940235e+01 3.4737120e+03 - 2.4682633e+02 -1.0660194e+01 3.4750351e+03 - 2.7976678e+02 -1.0532380e+01 3.4765332e+03 - 3.0957112e+02 -1.0630263e+01 3.4781804e+03 - 3.3615688e+02 -1.1022881e+01 3.4799505e+03 - 3.5951994e+02 -1.1772247e+01 3.4818187e+03 - 3.7971997e+02 -1.2931758e+01 3.4837610e+03 - 3.9686571e+02 -1.4545498e+01 3.4857555e+03 - 4.1110134e+02 -1.6648236e+01 3.4877823e+03 - 4.2259456e+02 -1.9265918e+01 3.4898235e+03 - 4.3152678e+02 -2.2416473e+01 3.4918630e+03 - 4.3808529e+02 -2.6110769e+01 3.4938869e+03 - 4.4245741e+02 -3.0353615e+01 3.4958828e+03 - 4.4482624e+02 -3.5144726e+01 3.4978402e+03 - 4.4536775e+02 -4.0479596e+01 3.4997498e+03 - 4.4424895e+02 -4.6350277e+01 3.5016036e+03 - 4.4162689e+02 -5.2746024e+01 3.5033946e+03 - 4.3764821e+02 -5.9653835e+01 3.5051170e+03 - 4.3244918e+02 -6.7058887e+01 3.5067658e+03 - 4.2615594e+02 -7.4944869e+01 3.5083364e+03 - 4.1888507e+02 -8.3294237e+01 3.5098253e+03 - 4.1074407e+02 -9.2088407e+01 3.5112291e+03 - 4.0183213e+02 -1.0130788e+02 3.5125451e+03 - 3.9224067e+02 -1.1093233e+02 3.5137710e+03 - 3.8205410e+02 -1.2094063e+02 3.5149047e+03 - 3.7135037e+02 -1.3131091e+02 3.5159446e+03 - 3.6020160e+02 -1.4202047e+02 3.5168891e+03 - 3.4867460e+02 -1.5304582e+02 3.5177371e+03 - 3.3683139e+02 -1.6436258e+02 3.5184875e+03 - 3.2472967e+02 -1.7594543e+02 3.5191394e+03 - 3.1242318e+02 -1.8776804e+02 3.5196922e+03 - 2.9996215e+02 -1.9980293e+02 3.5201452e+03 - 2.8739357e+02 -2.1202141e+02 3.5204980e+03 - 2.7476154e+02 -2.2439346e+02 3.5207502e+03 - 2.6210750e+02 -2.3688755e+02 3.5209017e+03 - 2.4947054e+02 -2.4947054e+02 3.5209522e+03 - 2.3688755e+02 -2.6210750e+02 3.5209017e+03 - 2.2439346e+02 -2.7476154e+02 3.5207502e+03 - 2.1202141e+02 -2.8739357e+02 3.5204980e+03 - 1.9980293e+02 -2.9996215e+02 3.5201452e+03 - 1.8776804e+02 -3.1242318e+02 3.5196922e+03 - 1.7594543e+02 -3.2472967e+02 3.5191394e+03 - 1.6436258e+02 -3.3683139e+02 3.5184875e+03 - 1.5304581e+02 -3.4867460e+02 3.5177371e+03 - 1.4202047e+02 -3.6020160e+02 3.5168891e+03 - 1.3131091e+02 -3.7135037e+02 3.5159446e+03 - 1.2094063e+02 -3.8205410e+02 3.5149047e+03 - 1.1093233e+02 -3.9224067e+02 3.5137710e+03 - 1.0130788e+02 -4.0183213e+02 3.5125451e+03 - 9.2088407e+01 -4.1074407e+02 3.5112291e+03 - 8.3294237e+01 -4.1888507e+02 3.5098253e+03 - 7.4944869e+01 -4.2615594e+02 3.5083364e+03 - 6.7058887e+01 -4.3244918e+02 3.5067658e+03 - 5.9653835e+01 -4.3764821e+02 3.5051170e+03 - 5.2746024e+01 -4.4162689e+02 3.5033946e+03 - 4.6350277e+01 -4.4424895e+02 3.5016036e+03 - 4.0479596e+01 -4.4536775e+02 3.4997498e+03 - 3.5144726e+01 -4.4482624e+02 3.4978402e+03 - 3.0353615e+01 -4.4245741e+02 3.4958828e+03 - 2.6110769e+01 -4.3808529e+02 3.4938869e+03 - 2.2416473e+01 -4.3152678e+02 3.4918630e+03 - 1.9265918e+01 -4.2259456e+02 3.4898235e+03 - 1.6648236e+01 -4.1110134e+02 3.4877823e+03 - 1.4545498e+01 -3.9686571e+02 3.4857555e+03 - 1.2931758e+01 -3.7971997e+02 3.4837610e+03 - 1.1772247e+01 -3.5951994e+02 3.4818187e+03 - 1.1022881e+01 -3.3615688e+02 3.4799505e+03 - 1.0630263e+01 -3.0957112e+02 3.4781804e+03 - 1.0532380e+01 -2.7976678e+02 3.4765332e+03 - 1.0660194e+01 -2.4682633e+02 3.4750351e+03 - 1.0940235e+01 -2.1092342e+02 3.4737120e+03 - 1.1298216e+01 -1.7233186e+02 3.4725887e+03 - 1.1663485e+01 -1.3142853e+02 3.4716882e+03 - 1.1973966e+01 -8.8688601e+01 3.4710299e+03 - 1.2181022e+01 -4.4671781e+01 3.4706286e+03 - 1.2253601e+01 -7.2201409e-09 3.4704938e+03 - 1.2181022e+01 4.4671781e+01 3.4706286e+03 - 1.1973966e+01 8.8688601e+01 3.4710299e+03 - 1.1663485e+01 1.3142853e+02 3.4716882e+03 - 1.1298216e+01 1.7233186e+02 3.4725887e+03 - 1.0940235e+01 2.1092342e+02 3.4737120e+03 - 1.0660194e+01 2.4682633e+02 3.4750351e+03 - 1.0532380e+01 2.7976678e+02 3.4765332e+03 - 1.0630263e+01 3.0957112e+02 3.4781804e+03 - 1.1022881e+01 3.3615688e+02 3.4799505e+03 - 1.1772247e+01 3.5951994e+02 3.4818187e+03 - 1.2931758e+01 3.7971997e+02 3.4837610e+03 - 1.4545498e+01 3.9686571e+02 3.4857555e+03 - 1.6648236e+01 4.1110134e+02 3.4877823e+03 - 1.9265918e+01 4.2259456e+02 3.4898235e+03 - 2.2416473e+01 4.3152678e+02 3.4918630e+03 - 2.6110769e+01 4.3808529e+02 3.4938869e+03 - 3.0353615e+01 4.4245741e+02 3.4958828e+03 - 3.5144726e+01 4.4482624e+02 3.4978402e+03 - 4.0479596e+01 4.4536775e+02 3.4997498e+03 - 4.6350277e+01 4.4424895e+02 3.5016036e+03 - 5.2746024e+01 4.4162689e+02 3.5033946e+03 - 5.9653835e+01 4.3764821e+02 3.5051170e+03 - 6.7058887e+01 4.3244918e+02 3.5067658e+03 - 7.4944869e+01 4.2615594e+02 3.5083364e+03 - 8.3294237e+01 4.1888507e+02 3.5098253e+03 - 9.2088407e+01 4.1074407e+02 3.5112291e+03 - 1.0130788e+02 4.0183213e+02 3.5125451e+03 - 1.1093233e+02 3.9224067e+02 3.5137710e+03 - 1.2094063e+02 3.8205410e+02 3.5149047e+03 - 1.3131091e+02 3.7135037e+02 3.5159446e+03 - 1.4202047e+02 3.6020160e+02 3.5168891e+03 - 1.5304582e+02 3.4867460e+02 3.5177371e+03 - 1.6436258e+02 3.3683139e+02 3.5184875e+03 - 1.7594543e+02 3.2472967e+02 3.5191394e+03 - 1.8776804e+02 3.1242318e+02 3.5196922e+03 - 1.9980293e+02 2.9996215e+02 3.5201452e+03 - 2.1202141e+02 2.8739357e+02 3.5204980e+03 - 2.2439346e+02 2.7476154e+02 3.5207502e+03 - 2.3688755e+02 2.6210750e+02 3.5209017e+03 - 2.4947054e+02 2.4947054e+02 3.5209522e+03 - 2.6210750e+02 2.3688755e+02 3.5209017e+03 - 2.7476154e+02 2.2439346e+02 3.5207502e+03 - 2.8739357e+02 2.1202141e+02 3.5204980e+03 - 2.9996215e+02 1.9980293e+02 3.5201452e+03 - 3.1242318e+02 1.8776804e+02 3.5196922e+03 - 3.2472967e+02 1.7594543e+02 3.5191394e+03 - 3.3683139e+02 1.6436258e+02 3.5184875e+03 - 3.4867460e+02 1.5304582e+02 3.5177371e+03 - 3.6020160e+02 1.4202047e+02 3.5168891e+03 - 3.7135037e+02 1.3131091e+02 3.5159446e+03 - 3.8205410e+02 1.2094063e+02 3.5149047e+03 - 3.9224067e+02 1.1093233e+02 3.5137710e+03 - 4.0183213e+02 1.0130788e+02 3.5125451e+03 - 4.1074407e+02 9.2088407e+01 3.5112291e+03 - 4.1888507e+02 8.3294237e+01 3.5098253e+03 - 4.2615594e+02 7.4944869e+01 3.5083364e+03 - 4.3244918e+02 6.7058887e+01 3.5067658e+03 - 4.3764821e+02 5.9653835e+01 3.5051170e+03 - 4.4162689e+02 5.2746024e+01 3.5033946e+03 - 4.4424895e+02 4.6350277e+01 3.5016036e+03 - 4.4536775e+02 4.0479596e+01 3.4997498e+03 - 4.4482624e+02 3.5144726e+01 3.4978402e+03 - 4.4245741e+02 3.0353615e+01 3.4958828e+03 - 4.3808529e+02 2.6110769e+01 3.4938869e+03 - 4.3152678e+02 2.2416473e+01 3.4918630e+03 - 4.2259456e+02 1.9265918e+01 3.4898235e+03 - 4.1110134e+02 1.6648236e+01 3.4877823e+03 - 3.9686571e+02 1.4545498e+01 3.4857555e+03 - 3.7971997e+02 1.2931758e+01 3.4837610e+03 - 3.5951994e+02 1.1772247e+01 3.4818187e+03 - 3.3615688e+02 1.1022881e+01 3.4799505e+03 - 3.0957112e+02 1.0630263e+01 3.4781804e+03 - 2.7976678e+02 1.0532380e+01 3.4765332e+03 - 2.4682633e+02 1.0660194e+01 3.4750351e+03 - 2.1092342e+02 1.0940235e+01 3.4737120e+03 - 1.7233186e+02 1.1298216e+01 3.4725887e+03 - 1.3142853e+02 1.1663485e+01 3.4716882e+03 - 8.8688601e+01 1.1973966e+01 3.4710299e+03 - 4.4671781e+01 1.2181022e+01 3.4706286e+03 - 0.0000000e+00 1.2253601e+01 3.4704938e+03 - -4.4671781e+01 1.2181022e+01 3.4706286e+03 - -8.8688601e+01 1.1973965e+01 3.4710299e+03 - -1.3142853e+02 1.1663485e+01 3.4716882e+03 - -1.7233186e+02 1.1298216e+01 3.4725887e+03 - -2.1092342e+02 1.0940235e+01 3.4737120e+03 - -2.4682633e+02 1.0660194e+01 3.4750351e+03 - -2.7976678e+02 1.0532380e+01 3.4765332e+03 - -3.0957112e+02 1.0630263e+01 3.4781804e+03 - -3.3615688e+02 1.1022881e+01 3.4799505e+03 - -3.5951994e+02 1.1772247e+01 3.4818187e+03 - -3.7971997e+02 1.2931758e+01 3.4837610e+03 - -3.9686571e+02 1.4545498e+01 3.4857555e+03 - -4.1110134e+02 1.6648236e+01 3.4877823e+03 - -4.2259456e+02 1.9265918e+01 3.4898235e+03 - -4.3152678e+02 2.2416473e+01 3.4918630e+03 - -4.3808529e+02 2.6110769e+01 3.4938869e+03 - -4.4245741e+02 3.0353615e+01 3.4958828e+03 - -4.4482624e+02 3.5144726e+01 3.4978402e+03 - -4.4536775e+02 4.0479596e+01 3.4997498e+03 - -4.4424895e+02 4.6350277e+01 3.5016036e+03 - -4.4162689e+02 5.2746024e+01 3.5033946e+03 - -4.3764821e+02 5.9653835e+01 3.5051170e+03 - -4.3244918e+02 6.7058887e+01 3.5067658e+03 - -4.2615594e+02 7.4944869e+01 3.5083364e+03 - -4.1888507e+02 8.3294237e+01 3.5098253e+03 - -4.1074407e+02 9.2088407e+01 3.5112291e+03 - -4.0183213e+02 1.0130788e+02 3.5125451e+03 - -3.9224067e+02 1.1093233e+02 3.5137710e+03 - -3.8205410e+02 1.2094063e+02 3.5149047e+03 - -3.7135037e+02 1.3131091e+02 3.5159446e+03 - -3.6020160e+02 1.4202047e+02 3.5168891e+03 - -3.4867460e+02 1.5304582e+02 3.5177371e+03 - -3.3683139e+02 1.6436258e+02 3.5184875e+03 - -3.2472967e+02 1.7594543e+02 3.5191394e+03 - -3.1242318e+02 1.8776804e+02 3.5196922e+03 - -2.9996215e+02 1.9980293e+02 3.5201452e+03 - -2.8739357e+02 2.1202141e+02 3.5204980e+03 - -2.7476154e+02 2.2439346e+02 3.5207502e+03 - -2.6210750e+02 2.3688755e+02 3.5209017e+03 - -2.4947054e+02 2.4947054e+02 3.5209522e+03 - -2.3688755e+02 2.6210750e+02 3.5209017e+03 - -2.2439346e+02 2.7476154e+02 3.5207502e+03 - -2.1202141e+02 2.8739357e+02 3.5204980e+03 - -1.9980293e+02 2.9996215e+02 3.5201452e+03 - -1.8776804e+02 3.1242318e+02 3.5196922e+03 - -1.7594543e+02 3.2472967e+02 3.5191394e+03 - -1.6436258e+02 3.3683139e+02 3.5184875e+03 - -1.5304581e+02 3.4867460e+02 3.5177371e+03 - -1.4202047e+02 3.6020160e+02 3.5168891e+03 - -1.3131091e+02 3.7135037e+02 3.5159446e+03 - -1.2094063e+02 3.8205410e+02 3.5149047e+03 - -1.1093233e+02 3.9224067e+02 3.5137710e+03 - -1.0130788e+02 4.0183213e+02 3.5125451e+03 - -9.2088407e+01 4.1074407e+02 3.5112291e+03 - -8.3294237e+01 4.1888507e+02 3.5098253e+03 - -7.4944869e+01 4.2615594e+02 3.5083364e+03 - -6.7058887e+01 4.3244918e+02 3.5067658e+03 - -5.9653835e+01 4.3764821e+02 3.5051170e+03 - -5.2746024e+01 4.4162689e+02 3.5033946e+03 - -4.6350277e+01 4.4424895e+02 3.5016036e+03 - -4.0479596e+01 4.4536775e+02 3.4997498e+03 - -3.5144726e+01 4.4482624e+02 3.4978402e+03 - -3.0353615e+01 4.4245741e+02 3.4958828e+03 - -2.6110769e+01 4.3808529e+02 3.4938869e+03 - -2.2416473e+01 4.3152678e+02 3.4918630e+03 - -1.9265918e+01 4.2259456e+02 3.4898235e+03 - -1.6648236e+01 4.1110134e+02 3.4877823e+03 - -1.4545498e+01 3.9686571e+02 3.4857555e+03 - -1.2931758e+01 3.7971997e+02 3.4837610e+03 - -1.1772247e+01 3.5951994e+02 3.4818187e+03 - -1.1022881e+01 3.3615688e+02 3.4799505e+03 - -1.0630263e+01 3.0957112e+02 3.4781804e+03 - -1.0532380e+01 2.7976678e+02 3.4765332e+03 - -1.0660194e+01 2.4682633e+02 3.4750351e+03 - -1.0940235e+01 2.1092342e+02 3.4737120e+03 - -1.1298216e+01 1.7233186e+02 3.4725887e+03 - -1.1663485e+01 1.3142853e+02 3.4716882e+03 - -1.1973966e+01 8.8688601e+01 3.4710299e+03 - -1.2181022e+01 4.4671781e+01 3.4706286e+03 - -1.2253601e+01 0.0000000e+00 3.4704938e+03 - 6.0486402e+01 -4.8134273e-09 3.4428327e+03 - 6.0549801e+01 -4.5491621e+01 3.4429824e+03 - 6.0728781e+01 -9.0275998e+01 3.4434279e+03 - 6.0990755e+01 -1.3368280e+02 3.4441580e+03 - 6.1284769e+01 -1.7511111e+02 3.4451552e+03 - 6.1545953e+01 -2.1405398e+02 3.4463966e+03 - 6.1700706e+01 -2.5011314e+02 3.4478556e+03 - 6.1671922e+01 -2.8300374e+02 3.4495031e+03 - 6.1383659e+01 -3.1255022e+02 3.4513094e+03 - 6.0764869e+01 -3.3867572e+02 3.4532446e+03 - 5.9752028e+01 -3.6138735e+02 3.4552805e+03 - 5.8290690e+01 -3.8075976e+02 3.4573903e+03 - 5.6336109e+01 -3.9691882e+02 3.4595498e+03 - 5.3853154e+01 -4.1002664e+02 3.4617371e+03 - 5.0815716e+01 -4.2026876e+02 3.4639328e+03 - 4.7205827e+01 -4.2784360e+02 3.4661198e+03 - 4.3012635e+01 -4.3295430e+02 3.4682834e+03 - 3.8231358e+01 -4.3580261e+02 3.4704108e+03 - 3.2862285e+01 -4.3658462e+02 3.4724911e+03 - 2.6909890e+01 -4.3548785e+02 3.4745151e+03 - 2.0382052e+01 -4.3268954e+02 3.4764747e+03 - 1.3289404e+01 -4.2835573e+02 3.4783633e+03 - 5.6448091e+00 -4.2264099e+02 3.4801753e+03 - -2.5370654e+00 -4.1568854e+02 3.4819059e+03 - -1.1240069e+01 -4.0763067e+02 3.4835511e+03 - -2.0446813e+01 -3.9858935e+02 3.4851074e+03 - -3.0138842e+01 -3.8867691e+02 3.4865722e+03 - -4.0296756e+01 -3.7799680e+02 3.4879430e+03 - -5.0900279e+01 -3.6664428e+02 3.4892179e+03 - -6.1928295e+01 -3.5470719e+02 3.4903952e+03 - -7.3358849e+01 -3.4226659e+02 3.4914736e+03 - -8.5169132e+01 -3.2939741e+02 3.4924519e+03 - -9.7335437e+01 -3.1616903e+02 3.4933293e+03 - -1.0983310e+02 -3.0264581e+02 3.4941050e+03 - -1.2263643e+02 -2.8888759e+02 3.4947783e+03 - -1.3571862e+02 -2.7495009e+02 3.4953487e+03 - -1.4905166e+02 -2.6088534e+02 3.4958159e+03 - -1.6260620e+02 -2.4674200e+02 3.4961796e+03 - -1.7635148e+02 -2.3256568e+02 3.4964396e+03 - -1.9025512e+02 -2.1839924e+02 3.4965956e+03 - -2.0428303e+02 -2.0428303e+02 3.4966476e+03 - -2.1839924e+02 -1.9025512e+02 3.4965956e+03 - -2.3256568e+02 -1.7635148e+02 3.4964396e+03 - -2.4674200e+02 -1.6260620e+02 3.4961796e+03 - -2.6088534e+02 -1.4905166e+02 3.4958159e+03 - -2.7495009e+02 -1.3571862e+02 3.4953487e+03 - -2.8888759e+02 -1.2263643e+02 3.4947783e+03 - -3.0264581e+02 -1.0983310e+02 3.4941050e+03 - -3.1616903e+02 -9.7335437e+01 3.4933293e+03 - -3.2939741e+02 -8.5169132e+01 3.4924519e+03 - -3.4226659e+02 -7.3358849e+01 3.4914736e+03 - -3.5470719e+02 -6.1928295e+01 3.4903952e+03 - -3.6664428e+02 -5.0900279e+01 3.4892179e+03 - -3.7799680e+02 -4.0296756e+01 3.4879430e+03 - -3.8867691e+02 -3.0138842e+01 3.4865722e+03 - -3.9858935e+02 -2.0446813e+01 3.4851074e+03 - -4.0763067e+02 -1.1240069e+01 3.4835511e+03 - -4.1568854e+02 -2.5370654e+00 3.4819059e+03 - -4.2264099e+02 5.6448091e+00 3.4801753e+03 - -4.2835573e+02 1.3289404e+01 3.4783633e+03 - -4.3268954e+02 2.0382052e+01 3.4764747e+03 - -4.3548785e+02 2.6909890e+01 3.4745151e+03 - -4.3658462e+02 3.2862285e+01 3.4724911e+03 - -4.3580261e+02 3.8231358e+01 3.4704108e+03 - -4.3295430e+02 4.3012635e+01 3.4682834e+03 - -4.2784360e+02 4.7205827e+01 3.4661198e+03 - -4.2026876e+02 5.0815716e+01 3.4639328e+03 - -4.1002664e+02 5.3853154e+01 3.4617371e+03 - -3.9691882e+02 5.6336109e+01 3.4595498e+03 - -3.8075976e+02 5.8290690e+01 3.4573903e+03 - -3.6138735e+02 5.9752028e+01 3.4552805e+03 - -3.3867572e+02 6.0764869e+01 3.4532446e+03 - -3.1255022e+02 6.1383659e+01 3.4513094e+03 - -2.8300374e+02 6.1671922e+01 3.4495031e+03 - -2.5011314e+02 6.1700706e+01 3.4478556e+03 - -2.1405398e+02 6.1545953e+01 3.4463966e+03 - -1.7511111e+02 6.1284769e+01 3.4451552e+03 - -1.3368280e+02 6.0990755e+01 3.4441580e+03 - -9.0275998e+01 6.0728781e+01 3.4434279e+03 - -4.5491621e+01 6.0549801e+01 3.4429824e+03 - -4.8134273e-09 6.0486402e+01 3.4428327e+03 - 4.5491621e+01 6.0549801e+01 3.4429824e+03 - 9.0275998e+01 6.0728782e+01 3.4434279e+03 - 1.3368280e+02 6.0990755e+01 3.4441580e+03 - 1.7511111e+02 6.1284769e+01 3.4451552e+03 - 2.1405398e+02 6.1545953e+01 3.4463966e+03 - 2.5011314e+02 6.1700706e+01 3.4478556e+03 - 2.8300374e+02 6.1671922e+01 3.4495031e+03 - 3.1255022e+02 6.1383659e+01 3.4513094e+03 - 3.3867572e+02 6.0764869e+01 3.4532446e+03 - 3.6138735e+02 5.9752028e+01 3.4552805e+03 - 3.8075976e+02 5.8290690e+01 3.4573903e+03 - 3.9691882e+02 5.6336109e+01 3.4595498e+03 - 4.1002664e+02 5.3853153e+01 3.4617371e+03 - 4.2026876e+02 5.0815716e+01 3.4639328e+03 - 4.2784360e+02 4.7205827e+01 3.4661198e+03 - 4.3295430e+02 4.3012635e+01 3.4682834e+03 - 4.3580261e+02 3.8231358e+01 3.4704108e+03 - 4.3658462e+02 3.2862285e+01 3.4724911e+03 - 4.3548785e+02 2.6909890e+01 3.4745151e+03 - 4.3268954e+02 2.0382052e+01 3.4764747e+03 - 4.2835573e+02 1.3289404e+01 3.4783633e+03 - 4.2264099e+02 5.6448091e+00 3.4801753e+03 - 4.1568854e+02 -2.5370654e+00 3.4819059e+03 - 4.0763067e+02 -1.1240069e+01 3.4835511e+03 - 3.9858935e+02 -2.0446813e+01 3.4851074e+03 - 3.8867691e+02 -3.0138842e+01 3.4865722e+03 - 3.7799680e+02 -4.0296756e+01 3.4879430e+03 - 3.6664428e+02 -5.0900279e+01 3.4892179e+03 - 3.5470719e+02 -6.1928295e+01 3.4903952e+03 - 3.4226659e+02 -7.3358849e+01 3.4914736e+03 - 3.2939741e+02 -8.5169132e+01 3.4924519e+03 - 3.1616903e+02 -9.7335437e+01 3.4933293e+03 - 3.0264581e+02 -1.0983310e+02 3.4941050e+03 - 2.8888759e+02 -1.2263643e+02 3.4947783e+03 - 2.7495009e+02 -1.3571862e+02 3.4953487e+03 - 2.6088534e+02 -1.4905166e+02 3.4958159e+03 - 2.4674200e+02 -1.6260620e+02 3.4961796e+03 - 2.3256568e+02 -1.7635148e+02 3.4964396e+03 - 2.1839924e+02 -1.9025512e+02 3.4965956e+03 - 2.0428303e+02 -2.0428303e+02 3.4966476e+03 - 1.9025512e+02 -2.1839924e+02 3.4965956e+03 - 1.7635148e+02 -2.3256568e+02 3.4964396e+03 - 1.6260620e+02 -2.4674200e+02 3.4961796e+03 - 1.4905166e+02 -2.6088534e+02 3.4958159e+03 - 1.3571862e+02 -2.7495009e+02 3.4953487e+03 - 1.2263643e+02 -2.8888759e+02 3.4947783e+03 - 1.0983310e+02 -3.0264581e+02 3.4941050e+03 - 9.7335437e+01 -3.1616903e+02 3.4933293e+03 - 8.5169132e+01 -3.2939741e+02 3.4924519e+03 - 7.3358849e+01 -3.4226659e+02 3.4914736e+03 - 6.1928295e+01 -3.5470719e+02 3.4903952e+03 - 5.0900279e+01 -3.6664428e+02 3.4892179e+03 - 4.0296756e+01 -3.7799680e+02 3.4879430e+03 - 3.0138842e+01 -3.8867691e+02 3.4865722e+03 - 2.0446813e+01 -3.9858935e+02 3.4851074e+03 - 1.1240069e+01 -4.0763067e+02 3.4835511e+03 - 2.5370654e+00 -4.1568854e+02 3.4819059e+03 - -5.6448091e+00 -4.2264099e+02 3.4801753e+03 - -1.3289404e+01 -4.2835573e+02 3.4783633e+03 - -2.0382052e+01 -4.3268954e+02 3.4764747e+03 - -2.6909890e+01 -4.3548785e+02 3.4745151e+03 - -3.2862285e+01 -4.3658462e+02 3.4724911e+03 - -3.8231358e+01 -4.3580261e+02 3.4704108e+03 - -4.3012635e+01 -4.3295430e+02 3.4682834e+03 - -4.7205827e+01 -4.2784360e+02 3.4661198e+03 - -5.0815716e+01 -4.2026876e+02 3.4639328e+03 - -5.3853154e+01 -4.1002664e+02 3.4617371e+03 - -5.6336109e+01 -3.9691882e+02 3.4595498e+03 - -5.8290690e+01 -3.8075976e+02 3.4573903e+03 - -5.9752028e+01 -3.6138735e+02 3.4552805e+03 - -6.0764869e+01 -3.3867572e+02 3.4532446e+03 - -6.1383659e+01 -3.1255022e+02 3.4513094e+03 - -6.1671922e+01 -2.8300374e+02 3.4495031e+03 - -6.1700706e+01 -2.5011314e+02 3.4478556e+03 - -6.1545953e+01 -2.1405398e+02 3.4463966e+03 - -6.1284769e+01 -1.7511111e+02 3.4451552e+03 - -6.0990755e+01 -1.3368280e+02 3.4441580e+03 - -6.0728781e+01 -9.0275998e+01 3.4434279e+03 - -6.0549801e+01 -4.5491621e+01 3.4429824e+03 - -6.0486402e+01 4.8134273e-09 3.4428327e+03 - -6.0549801e+01 4.5491621e+01 3.4429824e+03 - -6.0728781e+01 9.0275998e+01 3.4434279e+03 - -6.0990755e+01 1.3368280e+02 3.4441580e+03 - -6.1284769e+01 1.7511111e+02 3.4451552e+03 - -6.1545953e+01 2.1405398e+02 3.4463966e+03 - -6.1700706e+01 2.5011314e+02 3.4478556e+03 - -6.1671922e+01 2.8300374e+02 3.4495031e+03 - -6.1383659e+01 3.1255022e+02 3.4513094e+03 - -6.0764869e+01 3.3867572e+02 3.4532446e+03 - -5.9752028e+01 3.6138735e+02 3.4552805e+03 - -5.8290690e+01 3.8075976e+02 3.4573903e+03 - -5.6336109e+01 3.9691882e+02 3.4595498e+03 - -5.3853154e+01 4.1002664e+02 3.4617371e+03 - -5.0815716e+01 4.2026876e+02 3.4639328e+03 - -4.7205827e+01 4.2784360e+02 3.4661198e+03 - -4.3012635e+01 4.3295430e+02 3.4682834e+03 - -3.8231358e+01 4.3580261e+02 3.4704108e+03 - -3.2862285e+01 4.3658462e+02 3.4724911e+03 - -2.6909890e+01 4.3548785e+02 3.4745151e+03 - -2.0382052e+01 4.3268954e+02 3.4764747e+03 - -1.3289404e+01 4.2835573e+02 3.4783633e+03 - -5.6448091e+00 4.2264099e+02 3.4801753e+03 - 2.5370654e+00 4.1568854e+02 3.4819059e+03 - 1.1240069e+01 4.0763067e+02 3.4835511e+03 - 2.0446813e+01 3.9858935e+02 3.4851074e+03 - 3.0138842e+01 3.8867691e+02 3.4865722e+03 - 4.0296756e+01 3.7799680e+02 3.4879430e+03 - 5.0900279e+01 3.6664428e+02 3.4892179e+03 - 6.1928295e+01 3.5470719e+02 3.4903952e+03 - 7.3358849e+01 3.4226659e+02 3.4914736e+03 - 8.5169132e+01 3.2939741e+02 3.4924519e+03 - 9.7335437e+01 3.1616903e+02 3.4933293e+03 - 1.0983310e+02 3.0264581e+02 3.4941050e+03 - 1.2263643e+02 2.8888759e+02 3.4947783e+03 - 1.3571862e+02 2.7495009e+02 3.4953487e+03 - 1.4905166e+02 2.6088534e+02 3.4958159e+03 - 1.6260620e+02 2.4674200e+02 3.4961796e+03 - 1.7635148e+02 2.3256568e+02 3.4964396e+03 - 1.9025512e+02 2.1839924e+02 3.4965956e+03 - 2.0428303e+02 2.0428303e+02 3.4966476e+03 - 2.1839924e+02 1.9025512e+02 3.4965956e+03 - 2.3256568e+02 1.7635148e+02 3.4964396e+03 - 2.4674200e+02 1.6260620e+02 3.4961796e+03 - 2.6088534e+02 1.4905166e+02 3.4958159e+03 - 2.7495009e+02 1.3571862e+02 3.4953487e+03 - 2.8888759e+02 1.2263643e+02 3.4947783e+03 - 3.0264581e+02 1.0983310e+02 3.4941050e+03 - 3.1616903e+02 9.7335437e+01 3.4933293e+03 - 3.2939741e+02 8.5169132e+01 3.4924519e+03 - 3.4226659e+02 7.3358849e+01 3.4914736e+03 - 3.5470719e+02 6.1928295e+01 3.4903952e+03 - 3.6664428e+02 5.0900279e+01 3.4892179e+03 - 3.7799680e+02 4.0296756e+01 3.4879430e+03 - 3.8867691e+02 3.0138842e+01 3.4865722e+03 - 3.9858935e+02 2.0446813e+01 3.4851074e+03 - 4.0763067e+02 1.1240069e+01 3.4835511e+03 - 4.1568854e+02 2.5370654e+00 3.4819059e+03 - 4.2264099e+02 -5.6448091e+00 3.4801753e+03 - 4.2835573e+02 -1.3289404e+01 3.4783633e+03 - 4.3268954e+02 -2.0382052e+01 3.4764747e+03 - 4.3548785e+02 -2.6909890e+01 3.4745151e+03 - 4.3658462e+02 -3.2862285e+01 3.4724911e+03 - 4.3580261e+02 -3.8231358e+01 3.4704108e+03 - 4.3295430e+02 -4.3012635e+01 3.4682834e+03 - 4.2784360e+02 -4.7205827e+01 3.4661198e+03 - 4.2026876e+02 -5.0815716e+01 3.4639328e+03 - 4.1002664e+02 -5.3853154e+01 3.4617371e+03 - 3.9691882e+02 -5.6336109e+01 3.4595498e+03 - 3.8075976e+02 -5.8290690e+01 3.4573903e+03 - 3.6138735e+02 -5.9752028e+01 3.4552805e+03 - 3.3867572e+02 -6.0764869e+01 3.4532446e+03 - 3.1255022e+02 -6.1383659e+01 3.4513094e+03 - 2.8300374e+02 -6.1671922e+01 3.4495031e+03 - 2.5011314e+02 -6.1700706e+01 3.4478556e+03 - 2.1405398e+02 -6.1545953e+01 3.4463966e+03 - 1.7511111e+02 -6.1284769e+01 3.4451552e+03 - 1.3368280e+02 -6.0990755e+01 3.4441580e+03 - 9.0275998e+01 -6.0728782e+01 3.4434279e+03 - 4.5491621e+01 -6.0549801e+01 3.4429824e+03 - 0.0000000e+00 -6.0486402e+01 3.4428327e+03 - -4.5491621e+01 -6.0549801e+01 3.4429824e+03 - -9.0275998e+01 -6.0728782e+01 3.4434279e+03 - -1.3368280e+02 -6.0990755e+01 3.4441580e+03 - -1.7511111e+02 -6.1284769e+01 3.4451552e+03 - -2.1405398e+02 -6.1545953e+01 3.4463966e+03 - -2.5011314e+02 -6.1700706e+01 3.4478556e+03 - -2.8300374e+02 -6.1671922e+01 3.4495031e+03 - -3.1255022e+02 -6.1383659e+01 3.4513094e+03 - -3.3867572e+02 -6.0764869e+01 3.4532446e+03 - -3.6138735e+02 -5.9752028e+01 3.4552805e+03 - -3.8075976e+02 -5.8290690e+01 3.4573903e+03 - -3.9691882e+02 -5.6336109e+01 3.4595498e+03 - -4.1002664e+02 -5.3853153e+01 3.4617371e+03 - -4.2026876e+02 -5.0815716e+01 3.4639328e+03 - -4.2784360e+02 -4.7205827e+01 3.4661198e+03 - -4.3295430e+02 -4.3012635e+01 3.4682834e+03 - -4.3580261e+02 -3.8231358e+01 3.4704108e+03 - -4.3658462e+02 -3.2862285e+01 3.4724911e+03 - -4.3548785e+02 -2.6909890e+01 3.4745151e+03 - -4.3268954e+02 -2.0382052e+01 3.4764747e+03 - -4.2835573e+02 -1.3289404e+01 3.4783633e+03 - -4.2264099e+02 -5.6448091e+00 3.4801753e+03 - -4.1568854e+02 2.5370654e+00 3.4819059e+03 - -4.0763067e+02 1.1240069e+01 3.4835511e+03 - -3.9858935e+02 2.0446813e+01 3.4851074e+03 - -3.8867691e+02 3.0138842e+01 3.4865722e+03 - -3.7799680e+02 4.0296756e+01 3.4879430e+03 - -3.6664428e+02 5.0900279e+01 3.4892179e+03 - -3.5470719e+02 6.1928295e+01 3.4903952e+03 - -3.4226659e+02 7.3358849e+01 3.4914736e+03 - -3.2939741e+02 8.5169132e+01 3.4924519e+03 - -3.1616903e+02 9.7335437e+01 3.4933293e+03 - -3.0264581e+02 1.0983310e+02 3.4941050e+03 - -2.8888759e+02 1.2263643e+02 3.4947783e+03 - -2.7495009e+02 1.3571862e+02 3.4953487e+03 - -2.6088534e+02 1.4905166e+02 3.4958159e+03 - -2.4674200e+02 1.6260620e+02 3.4961796e+03 - -2.3256568e+02 1.7635148e+02 3.4964396e+03 - -2.1839924e+02 1.9025512e+02 3.4965956e+03 - -2.0428303e+02 2.0428303e+02 3.4966476e+03 - -1.9025512e+02 2.1839924e+02 3.4965956e+03 - -1.7635148e+02 2.3256568e+02 3.4964396e+03 - -1.6260620e+02 2.4674200e+02 3.4961796e+03 - -1.4905166e+02 2.6088534e+02 3.4958159e+03 - -1.3571862e+02 2.7495009e+02 3.4953487e+03 - -1.2263643e+02 2.8888759e+02 3.4947783e+03 - -1.0983310e+02 3.0264581e+02 3.4941050e+03 - -9.7335437e+01 3.1616903e+02 3.4933293e+03 - -8.5169132e+01 3.2939741e+02 3.4924519e+03 - -7.3358849e+01 3.4226659e+02 3.4914736e+03 - -6.1928295e+01 3.5470719e+02 3.4903952e+03 - -5.0900279e+01 3.6664428e+02 3.4892179e+03 - -4.0296756e+01 3.7799680e+02 3.4879430e+03 - -3.0138842e+01 3.8867691e+02 3.4865722e+03 - -2.0446813e+01 3.9858935e+02 3.4851074e+03 - -1.1240069e+01 4.0763067e+02 3.4835511e+03 - -2.5370654e+00 4.1568854e+02 3.4819059e+03 - 5.6448091e+00 4.2264099e+02 3.4801753e+03 - 1.3289404e+01 4.2835573e+02 3.4783633e+03 - 2.0382052e+01 4.3268954e+02 3.4764747e+03 - 2.6909890e+01 4.3548785e+02 3.4745151e+03 - 3.2862285e+01 4.3658462e+02 3.4724911e+03 - 3.8231358e+01 4.3580261e+02 3.4704108e+03 - 4.3012635e+01 4.3295430e+02 3.4682834e+03 - 4.7205827e+01 4.2784360e+02 3.4661198e+03 - 5.0815716e+01 4.2026876e+02 3.4639328e+03 - 5.3853153e+01 4.1002664e+02 3.4617371e+03 - 5.6336109e+01 3.9691882e+02 3.4595498e+03 - 5.8290690e+01 3.8075976e+02 3.4573903e+03 - 5.9752028e+01 3.6138735e+02 3.4552805e+03 - 6.0764869e+01 3.3867572e+02 3.4532446e+03 - 6.1383659e+01 3.1255022e+02 3.4513094e+03 - 6.1671922e+01 2.8300374e+02 3.4495031e+03 - 6.1700706e+01 2.5011314e+02 3.4478556e+03 - 6.1545953e+01 2.1405398e+02 3.4463966e+03 - 6.1284769e+01 1.7511111e+02 3.4451552e+03 - 6.0990755e+01 1.3368280e+02 3.4441580e+03 - 6.0728782e+01 9.0275998e+01 3.4434279e+03 - 6.0549801e+01 4.5491621e+01 3.4429824e+03 - 6.0486402e+01 -4.8134273e-09 3.4428327e+03 - 1.3867972e+02 0.0000000e+00 3.4113286e+03 - 1.3873255e+02 -4.6210633e+01 3.4114944e+03 - 1.3887929e+02 -9.1657939e+01 3.4119872e+03 - 1.3908590e+02 -1.3561991e+02 3.4127940e+03 - 1.3929925e+02 -1.7745203e+02 3.4138940e+03 - 1.3945186e+02 -2.1661432e+02 3.4152605e+03 - 1.3946744e+02 -2.5268712e+02 3.4168623e+03 - 1.3926638e+02 -2.8537539e+02 3.4186659e+03 - 1.3877062e+02 -3.1450336e+02 3.4206368e+03 - 1.3790747e+02 -3.4000187e+02 3.4227415e+03 - 1.3661225e+02 -3.6189154e+02 3.4249477e+03 - 1.3482979e+02 -3.8026418e+02 3.4272258e+03 - 1.3251497e+02 -3.9526478e+02 3.4295491e+03 - 1.2963249e+02 -4.0707508e+02 3.4318938e+03 - 1.2615625e+02 -4.1589980e+02 3.4342390e+03 - 1.2206833e+02 -4.2195540e+02 3.4365668e+03 - 1.1735791e+02 -4.2546160e+02 3.4388617e+03 - 1.1202024e+02 -4.2663508e+02 3.4411107e+03 - 1.0605554e+02 -4.2568518e+02 3.4433029e+03 - 9.9468161e+01 -4.2281111e+02 3.4454292e+03 - 9.2265789e+01 -4.1820032e+02 3.4474817e+03 - 8.4458810e+01 -4.1202775e+02 3.4494543e+03 - 7.6059795e+01 -4.0445575e+02 3.4513418e+03 - 6.7083098e+01 -3.9563431e+02 3.4531399e+03 - 5.7544543e+01 -3.8570163e+02 3.4548451e+03 - 4.7461205e+01 -3.7478490e+02 3.4564547e+03 - 3.6851245e+01 -3.6300102e+02 3.4579663e+03 - 2.5733808e+01 -3.5045748e+02 3.4593781e+03 - 1.4128965e+01 -3.3725318e+02 3.4606887e+03 - 2.0576837e+00 -3.2347919e+02 3.4618970e+03 - -1.0458161e+01 -3.0921947e+02 3.4630020e+03 - -2.3395762e+01 -2.9455161e+02 3.4640031e+03 - -3.6731335e+01 -2.7954738e+02 3.4648998e+03 - -5.0440053e+01 -2.6427333e+02 3.4656915e+03 - -6.4495970e+01 -2.4879130e+02 3.4663782e+03 - -7.8871935e+01 -2.3315885e+02 3.4669594e+03 - -9.3539490e+01 -2.1742968e+02 3.4674351e+03 - -1.0846876e+02 -2.0165400e+02 3.4678052e+03 - -1.2362831e+02 -1.8587884e+02 3.4680696e+03 - -1.3898505e+02 -1.7014835e+02 3.4682283e+03 - -1.5450404e+02 -1.5450404e+02 3.4682812e+03 - -1.7014835e+02 -1.3898505e+02 3.4682283e+03 - -1.8587884e+02 -1.2362831e+02 3.4680696e+03 - -2.0165400e+02 -1.0846876e+02 3.4678052e+03 - -2.1742968e+02 -9.3539490e+01 3.4674351e+03 - -2.3315885e+02 -7.8871935e+01 3.4669594e+03 - -2.4879130e+02 -6.4495970e+01 3.4663782e+03 - -2.6427333e+02 -5.0440053e+01 3.4656915e+03 - -2.7954738e+02 -3.6731335e+01 3.4648998e+03 - -2.9455161e+02 -2.3395762e+01 3.4640031e+03 - -3.0921947e+02 -1.0458161e+01 3.4630020e+03 - -3.2347919e+02 2.0576837e+00 3.4618970e+03 - -3.3725318e+02 1.4128965e+01 3.4606887e+03 - -3.5045748e+02 2.5733808e+01 3.4593781e+03 - -3.6300102e+02 3.6851245e+01 3.4579663e+03 - -3.7478490e+02 4.7461205e+01 3.4564547e+03 - -3.8570163e+02 5.7544543e+01 3.4548451e+03 - -3.9563431e+02 6.7083098e+01 3.4531399e+03 - -4.0445575e+02 7.6059795e+01 3.4513418e+03 - -4.1202775e+02 8.4458810e+01 3.4494543e+03 - -4.1820032e+02 9.2265789e+01 3.4474817e+03 - -4.2281111e+02 9.9468161e+01 3.4454292e+03 - -4.2568518e+02 1.0605554e+02 3.4433029e+03 - -4.2663508e+02 1.1202024e+02 3.4411107e+03 - -4.2546160e+02 1.1735791e+02 3.4388617e+03 - -4.2195540e+02 1.2206833e+02 3.4365668e+03 - -4.1589980e+02 1.2615625e+02 3.4342390e+03 - -4.0707508e+02 1.2963249e+02 3.4318938e+03 - -3.9526478e+02 1.3251497e+02 3.4295491e+03 - -3.8026418e+02 1.3482979e+02 3.4272258e+03 - -3.6189154e+02 1.3661225e+02 3.4249477e+03 - -3.4000187e+02 1.3790747e+02 3.4227415e+03 - -3.1450336e+02 1.3877062e+02 3.4206368e+03 - -2.8537539e+02 1.3926638e+02 3.4186659e+03 - -2.5268712e+02 1.3946744e+02 3.4168623e+03 - -2.1661432e+02 1.3945186e+02 3.4152605e+03 - -1.7745203e+02 1.3929925e+02 3.4138940e+03 - -1.3561991e+02 1.3908590e+02 3.4127940e+03 - -9.1657939e+01 1.3887929e+02 3.4119872e+03 - -4.6210633e+01 1.3873255e+02 3.4114944e+03 - 7.2201409e-09 1.3867972e+02 3.4113286e+03 - 4.6210633e+01 1.3873255e+02 3.4114944e+03 - 9.1657939e+01 1.3887929e+02 3.4119872e+03 - 1.3561991e+02 1.3908590e+02 3.4127940e+03 - 1.7745203e+02 1.3929925e+02 3.4138940e+03 - 2.1661432e+02 1.3945186e+02 3.4152605e+03 - 2.5268712e+02 1.3946744e+02 3.4168623e+03 - 2.8537539e+02 1.3926638e+02 3.4186659e+03 - 3.1450336e+02 1.3877062e+02 3.4206368e+03 - 3.4000187e+02 1.3790747e+02 3.4227415e+03 - 3.6189154e+02 1.3661225e+02 3.4249477e+03 - 3.8026418e+02 1.3482979e+02 3.4272258e+03 - 3.9526478e+02 1.3251497e+02 3.4295491e+03 - 4.0707508e+02 1.2963249e+02 3.4318938e+03 - 4.1589980e+02 1.2615625e+02 3.4342390e+03 - 4.2195540e+02 1.2206833e+02 3.4365668e+03 - 4.2546160e+02 1.1735791e+02 3.4388617e+03 - 4.2663508e+02 1.1202024e+02 3.4411107e+03 - 4.2568518e+02 1.0605554e+02 3.4433029e+03 - 4.2281111e+02 9.9468161e+01 3.4454292e+03 - 4.1820032e+02 9.2265789e+01 3.4474817e+03 - 4.1202775e+02 8.4458810e+01 3.4494543e+03 - 4.0445575e+02 7.6059795e+01 3.4513418e+03 - 3.9563431e+02 6.7083098e+01 3.4531399e+03 - 3.8570163e+02 5.7544543e+01 3.4548451e+03 - 3.7478490e+02 4.7461205e+01 3.4564547e+03 - 3.6300102e+02 3.6851245e+01 3.4579663e+03 - 3.5045748e+02 2.5733808e+01 3.4593781e+03 - 3.3725318e+02 1.4128965e+01 3.4606887e+03 - 3.2347919e+02 2.0576837e+00 3.4618970e+03 - 3.0921947e+02 -1.0458161e+01 3.4630020e+03 - 2.9455161e+02 -2.3395762e+01 3.4640031e+03 - 2.7954738e+02 -3.6731335e+01 3.4648998e+03 - 2.6427333e+02 -5.0440053e+01 3.4656915e+03 - 2.4879130e+02 -6.4495970e+01 3.4663782e+03 - 2.3315885e+02 -7.8871935e+01 3.4669594e+03 - 2.1742968e+02 -9.3539490e+01 3.4674351e+03 - 2.0165400e+02 -1.0846876e+02 3.4678052e+03 - 1.8587884e+02 -1.2362831e+02 3.4680696e+03 - 1.7014835e+02 -1.3898505e+02 3.4682283e+03 - 1.5450404e+02 -1.5450404e+02 3.4682812e+03 - 1.3898505e+02 -1.7014835e+02 3.4682283e+03 - 1.2362831e+02 -1.8587884e+02 3.4680696e+03 - 1.0846876e+02 -2.0165400e+02 3.4678052e+03 - 9.3539490e+01 -2.1742968e+02 3.4674351e+03 - 7.8871935e+01 -2.3315885e+02 3.4669594e+03 - 6.4495970e+01 -2.4879130e+02 3.4663782e+03 - 5.0440053e+01 -2.6427333e+02 3.4656915e+03 - 3.6731335e+01 -2.7954738e+02 3.4648998e+03 - 2.3395762e+01 -2.9455161e+02 3.4640031e+03 - 1.0458161e+01 -3.0921947e+02 3.4630020e+03 - -2.0576837e+00 -3.2347919e+02 3.4618970e+03 - -1.4128965e+01 -3.3725318e+02 3.4606887e+03 - -2.5733808e+01 -3.5045748e+02 3.4593781e+03 - -3.6851245e+01 -3.6300102e+02 3.4579663e+03 - -4.7461205e+01 -3.7478490e+02 3.4564547e+03 - -5.7544543e+01 -3.8570163e+02 3.4548451e+03 - -6.7083098e+01 -3.9563431e+02 3.4531399e+03 - -7.6059795e+01 -4.0445575e+02 3.4513418e+03 - -8.4458810e+01 -4.1202775e+02 3.4494543e+03 - -9.2265789e+01 -4.1820032e+02 3.4474817e+03 - -9.9468161e+01 -4.2281111e+02 3.4454292e+03 - -1.0605554e+02 -4.2568518e+02 3.4433029e+03 - -1.1202024e+02 -4.2663508e+02 3.4411107e+03 - -1.1735791e+02 -4.2546160e+02 3.4388617e+03 - -1.2206833e+02 -4.2195540e+02 3.4365668e+03 - -1.2615625e+02 -4.1589980e+02 3.4342390e+03 - -1.2963249e+02 -4.0707508e+02 3.4318938e+03 - -1.3251497e+02 -3.9526478e+02 3.4295491e+03 - -1.3482979e+02 -3.8026418e+02 3.4272258e+03 - -1.3661225e+02 -3.6189154e+02 3.4249477e+03 - -1.3790747e+02 -3.4000187e+02 3.4227415e+03 - -1.3877062e+02 -3.1450336e+02 3.4206368e+03 - -1.3926638e+02 -2.8537539e+02 3.4186659e+03 - -1.3946744e+02 -2.5268712e+02 3.4168623e+03 - -1.3945186e+02 -2.1661432e+02 3.4152605e+03 - -1.3929925e+02 -1.7745203e+02 3.4138940e+03 - -1.3908590e+02 -1.3561991e+02 3.4127940e+03 - -1.3887929e+02 -9.1657939e+01 3.4119872e+03 - -1.3873255e+02 -4.6210633e+01 3.4114944e+03 - -1.3867972e+02 2.4067136e-09 3.4113286e+03 - -1.3873255e+02 4.6210633e+01 3.4114944e+03 - -1.3887929e+02 9.1657939e+01 3.4119872e+03 - -1.3908590e+02 1.3561991e+02 3.4127940e+03 - -1.3929925e+02 1.7745203e+02 3.4138940e+03 - -1.3945186e+02 2.1661432e+02 3.4152605e+03 - -1.3946744e+02 2.5268712e+02 3.4168623e+03 - -1.3926638e+02 2.8537539e+02 3.4186659e+03 - -1.3877062e+02 3.1450336e+02 3.4206368e+03 - -1.3790747e+02 3.4000187e+02 3.4227415e+03 - -1.3661225e+02 3.6189154e+02 3.4249477e+03 - -1.3482979e+02 3.8026418e+02 3.4272258e+03 - -1.3251497e+02 3.9526478e+02 3.4295491e+03 - -1.2963249e+02 4.0707508e+02 3.4318938e+03 - -1.2615625e+02 4.1589980e+02 3.4342390e+03 - -1.2206833e+02 4.2195540e+02 3.4365668e+03 - -1.1735791e+02 4.2546160e+02 3.4388617e+03 - -1.1202024e+02 4.2663508e+02 3.4411107e+03 - -1.0605554e+02 4.2568518e+02 3.4433029e+03 - -9.9468161e+01 4.2281111e+02 3.4454292e+03 - -9.2265789e+01 4.1820032e+02 3.4474817e+03 - -8.4458810e+01 4.1202775e+02 3.4494543e+03 - -7.6059795e+01 4.0445575e+02 3.4513418e+03 - -6.7083098e+01 3.9563431e+02 3.4531399e+03 - -5.7544543e+01 3.8570163e+02 3.4548451e+03 - -4.7461205e+01 3.7478490e+02 3.4564547e+03 - -3.6851245e+01 3.6300102e+02 3.4579663e+03 - -2.5733808e+01 3.5045748e+02 3.4593781e+03 - -1.4128965e+01 3.3725318e+02 3.4606887e+03 - -2.0576837e+00 3.2347919e+02 3.4618970e+03 - 1.0458161e+01 3.0921947e+02 3.4630020e+03 - 2.3395762e+01 2.9455161e+02 3.4640031e+03 - 3.6731335e+01 2.7954738e+02 3.4648998e+03 - 5.0440053e+01 2.6427333e+02 3.4656915e+03 - 6.4495970e+01 2.4879130e+02 3.4663782e+03 - 7.8871935e+01 2.3315885e+02 3.4669594e+03 - 9.3539490e+01 2.1742968e+02 3.4674351e+03 - 1.0846876e+02 2.0165400e+02 3.4678052e+03 - 1.2362831e+02 1.8587884e+02 3.4680696e+03 - 1.3898505e+02 1.7014835e+02 3.4682283e+03 - 1.5450404e+02 1.5450404e+02 3.4682812e+03 - 1.7014835e+02 1.3898505e+02 3.4682283e+03 - 1.8587884e+02 1.2362831e+02 3.4680696e+03 - 2.0165400e+02 1.0846876e+02 3.4678052e+03 - 2.1742968e+02 9.3539490e+01 3.4674351e+03 - 2.3315885e+02 7.8871935e+01 3.4669594e+03 - 2.4879130e+02 6.4495970e+01 3.4663782e+03 - 2.6427333e+02 5.0440053e+01 3.4656915e+03 - 2.7954738e+02 3.6731335e+01 3.4648998e+03 - 2.9455161e+02 2.3395762e+01 3.4640031e+03 - 3.0921947e+02 1.0458161e+01 3.4630020e+03 - 3.2347919e+02 -2.0576837e+00 3.4618970e+03 - 3.3725318e+02 -1.4128965e+01 3.4606887e+03 - 3.5045748e+02 -2.5733808e+01 3.4593781e+03 - 3.6300102e+02 -3.6851245e+01 3.4579663e+03 - 3.7478490e+02 -4.7461205e+01 3.4564547e+03 - 3.8570163e+02 -5.7544543e+01 3.4548451e+03 - 3.9563431e+02 -6.7083098e+01 3.4531399e+03 - 4.0445575e+02 -7.6059795e+01 3.4513418e+03 - 4.1202775e+02 -8.4458810e+01 3.4494543e+03 - 4.1820032e+02 -9.2265789e+01 3.4474817e+03 - 4.2281111e+02 -9.9468161e+01 3.4454292e+03 - 4.2568518e+02 -1.0605554e+02 3.4433029e+03 - 4.2663508e+02 -1.1202024e+02 3.4411107e+03 - 4.2546160e+02 -1.1735791e+02 3.4388617e+03 - 4.2195540e+02 -1.2206833e+02 3.4365668e+03 - 4.1589980e+02 -1.2615625e+02 3.4342390e+03 - 4.0707508e+02 -1.2963249e+02 3.4318938e+03 - 3.9526478e+02 -1.3251497e+02 3.4295491e+03 - 3.8026418e+02 -1.3482979e+02 3.4272258e+03 - 3.6189154e+02 -1.3661225e+02 3.4249477e+03 - 3.4000187e+02 -1.3790747e+02 3.4227415e+03 - 3.1450336e+02 -1.3877062e+02 3.4206368e+03 - 2.8537539e+02 -1.3926638e+02 3.4186659e+03 - 2.5268712e+02 -1.3946744e+02 3.4168623e+03 - 2.1661432e+02 -1.3945186e+02 3.4152605e+03 - 1.7745203e+02 -1.3929925e+02 3.4138940e+03 - 1.3561991e+02 -1.3908590e+02 3.4127940e+03 - 9.1657939e+01 -1.3887929e+02 3.4119872e+03 - 4.6210633e+01 -1.3873255e+02 3.4114944e+03 - -4.8134273e-09 -1.3867972e+02 3.4113286e+03 - -4.6210633e+01 -1.3873255e+02 3.4114944e+03 - -9.1657939e+01 -1.3887929e+02 3.4119872e+03 - -1.3561991e+02 -1.3908590e+02 3.4127940e+03 - -1.7745203e+02 -1.3929925e+02 3.4138940e+03 - -2.1661432e+02 -1.3945186e+02 3.4152605e+03 - -2.5268712e+02 -1.3946744e+02 3.4168623e+03 - -2.8537539e+02 -1.3926638e+02 3.4186659e+03 - -3.1450336e+02 -1.3877062e+02 3.4206368e+03 - -3.4000187e+02 -1.3790747e+02 3.4227415e+03 - -3.6189154e+02 -1.3661225e+02 3.4249477e+03 - -3.8026418e+02 -1.3482979e+02 3.4272258e+03 - -3.9526478e+02 -1.3251497e+02 3.4295491e+03 - -4.0707508e+02 -1.2963249e+02 3.4318938e+03 - -4.1589980e+02 -1.2615625e+02 3.4342390e+03 - -4.2195540e+02 -1.2206833e+02 3.4365668e+03 - -4.2546160e+02 -1.1735791e+02 3.4388617e+03 - -4.2663508e+02 -1.1202024e+02 3.4411107e+03 - -4.2568518e+02 -1.0605554e+02 3.4433029e+03 - -4.2281111e+02 -9.9468161e+01 3.4454292e+03 - -4.1820032e+02 -9.2265789e+01 3.4474817e+03 - -4.1202775e+02 -8.4458810e+01 3.4494543e+03 - -4.0445575e+02 -7.6059795e+01 3.4513418e+03 - -3.9563431e+02 -6.7083098e+01 3.4531399e+03 - -3.8570163e+02 -5.7544543e+01 3.4548451e+03 - -3.7478490e+02 -4.7461205e+01 3.4564547e+03 - -3.6300102e+02 -3.6851245e+01 3.4579663e+03 - -3.5045748e+02 -2.5733808e+01 3.4593781e+03 - -3.3725318e+02 -1.4128965e+01 3.4606887e+03 - -3.2347919e+02 -2.0576837e+00 3.4618970e+03 - -3.0921947e+02 1.0458161e+01 3.4630020e+03 - -2.9455161e+02 2.3395762e+01 3.4640031e+03 - -2.7954738e+02 3.6731335e+01 3.4648998e+03 - -2.6427333e+02 5.0440053e+01 3.4656915e+03 - -2.4879130e+02 6.4495970e+01 3.4663782e+03 - -2.3315885e+02 7.8871935e+01 3.4669594e+03 - -2.1742968e+02 9.3539490e+01 3.4674351e+03 - -2.0165400e+02 1.0846876e+02 3.4678052e+03 - -1.8587884e+02 1.2362831e+02 3.4680696e+03 - -1.7014835e+02 1.3898505e+02 3.4682283e+03 - -1.5450404e+02 1.5450404e+02 3.4682812e+03 - -1.3898505e+02 1.7014835e+02 3.4682283e+03 - -1.2362831e+02 1.8587884e+02 3.4680696e+03 - -1.0846876e+02 2.0165400e+02 3.4678052e+03 - -9.3539490e+01 2.1742968e+02 3.4674351e+03 - -7.8871935e+01 2.3315885e+02 3.4669594e+03 - -6.4495970e+01 2.4879130e+02 3.4663782e+03 - -5.0440053e+01 2.6427333e+02 3.4656915e+03 - -3.6731335e+01 2.7954738e+02 3.4648998e+03 - -2.3395762e+01 2.9455161e+02 3.4640031e+03 - -1.0458161e+01 3.0921947e+02 3.4630020e+03 - 2.0576837e+00 3.2347919e+02 3.4618970e+03 - 1.4128965e+01 3.3725318e+02 3.4606887e+03 - 2.5733808e+01 3.5045748e+02 3.4593781e+03 - 3.6851245e+01 3.6300102e+02 3.4579663e+03 - 4.7461205e+01 3.7478490e+02 3.4564547e+03 - 5.7544543e+01 3.8570163e+02 3.4548451e+03 - 6.7083098e+01 3.9563431e+02 3.4531399e+03 - 7.6059795e+01 4.0445575e+02 3.4513418e+03 - 8.4458810e+01 4.1202775e+02 3.4494543e+03 - 9.2265789e+01 4.1820032e+02 3.4474817e+03 - 9.9468161e+01 4.2281111e+02 3.4454292e+03 - 1.0605554e+02 4.2568518e+02 3.4433029e+03 - 1.1202024e+02 4.2663508e+02 3.4411107e+03 - 1.1735791e+02 4.2546160e+02 3.4388617e+03 - 1.2206833e+02 4.2195540e+02 3.4365668e+03 - 1.2615625e+02 4.1589980e+02 3.4342390e+03 - 1.2963249e+02 4.0707508e+02 3.4318938e+03 - 1.3251497e+02 3.9526478e+02 3.4295491e+03 - 1.3482979e+02 3.8026418e+02 3.4272258e+03 - 1.3661225e+02 3.6189154e+02 3.4249477e+03 - 1.3790747e+02 3.4000187e+02 3.4227415e+03 - 1.3877062e+02 3.1450336e+02 3.4206368e+03 - 1.3926638e+02 2.8537539e+02 3.4186659e+03 - 1.3946744e+02 2.5268712e+02 3.4168623e+03 - 1.3945186e+02 2.1661432e+02 3.4152605e+03 - 1.3929925e+02 1.7745203e+02 3.4138940e+03 - 1.3908590e+02 1.3561991e+02 3.4127940e+03 - 1.3887929e+02 9.1657939e+01 3.4119872e+03 - 1.3873255e+02 4.6210633e+01 3.4114944e+03 - 1.3867972e+02 -9.6268545e-09 3.4113286e+03 - 2.2187560e+02 0.0000000e+00 3.3758963e+03 - 2.2191647e+02 -4.6843010e+01 3.3760793e+03 - 2.2202687e+02 -9.2862226e+01 3.3766229e+03 - 2.2217139e+02 -1.3728018e+02 3.3775116e+03 - 2.2229488e+02 -1.7940608e+02 3.3787212e+03 - 2.2232751e+02 -2.1866557e+02 3.3802200e+03 - 2.2219061e+02 -2.5461753e+02 3.3819720e+03 - 2.2180244e+02 -2.8695792e+02 3.3839382e+03 - 2.2108321e+02 -3.1551267e+02 3.3860793e+03 - 2.1995901e+02 -3.4022276e+02 3.3883570e+03 - 2.1836437e+02 -3.6112482e+02 3.3907352e+03 - 2.1624376e+02 -3.7833032e+02 3.3931810e+03 - 2.1355192e+02 -3.9200550e+02 3.3956653e+03 - 2.1025365e+02 -4.0235358e+02 3.3981622e+03 - 2.0632294e+02 -4.0959985e+02 3.4006496e+03 - 2.0174201e+02 -4.1397990e+02 3.4031087e+03 - 1.9650008e+02 -4.1573076e+02 3.4055238e+03 - 1.9059236e+02 -4.1508449e+02 3.4078817e+03 - 1.8401892e+02 -4.1226395e+02 3.4101717e+03 - 1.7678387e+02 -4.0748010e+02 3.4123850e+03 - 1.6889456e+02 -4.0093057e+02 3.4145144e+03 - 1.6036095e+02 -3.9279911e+02 3.4165542e+03 - 1.5119517e+02 -3.8325562e+02 3.4185000e+03 - 1.4141106e+02 -3.7245665e+02 3.4203482e+03 - 1.3102395e+02 -3.6054611e+02 3.4220961e+03 - 1.2005042e+02 -3.4765610e+02 3.4237415e+03 - 1.0850817e+02 -3.3390789e+02 3.4252831e+03 - 9.6415922e+01 -3.1941279e+02 3.4267195e+03 - 8.3793375e+01 -3.0427308e+02 3.4280501e+03 - 7.0661199e+01 -2.8858285e+02 3.4292744e+03 - 5.7041044e+01 -2.7242880e+02 3.4303920e+03 - 4.2955573e+01 -2.5589097e+02 3.4314028e+03 - 2.8428515e+01 -2.3904336e+02 3.4323067e+03 - 1.3484736e+01 -2.2195455e+02 3.4331039e+03 - -1.8496855e+00 -2.0468823e+02 3.4337943e+03 - -1.7547367e+01 -1.8730367e+02 3.4343783e+03 - -3.3579516e+01 -1.6985613e+02 3.4348558e+03 - -4.9915821e+01 -1.5239724e+02 3.4352270e+03 - -6.6524323e+01 -1.3497532e+02 3.4354921e+03 - -8.3371279e+01 -1.1763571e+02 3.4356511e+03 - -1.0042101e+02 -1.0042101e+02 3.4357041e+03 - -1.1763571e+02 -8.3371279e+01 3.4356511e+03 - -1.3497532e+02 -6.6524323e+01 3.4354921e+03 - -1.5239724e+02 -4.9915821e+01 3.4352270e+03 - -1.6985613e+02 -3.3579516e+01 3.4348558e+03 - -1.8730367e+02 -1.7547367e+01 3.4343783e+03 - -2.0468823e+02 -1.8496855e+00 3.4337943e+03 - -2.2195455e+02 1.3484736e+01 3.4331039e+03 - -2.3904336e+02 2.8428515e+01 3.4323067e+03 - -2.5589097e+02 4.2955573e+01 3.4314028e+03 - -2.7242880e+02 5.7041044e+01 3.4303920e+03 - -2.8858285e+02 7.0661199e+01 3.4292744e+03 - -3.0427308e+02 8.3793375e+01 3.4280501e+03 - -3.1941279e+02 9.6415922e+01 3.4267195e+03 - -3.3390789e+02 1.0850817e+02 3.4252831e+03 - -3.4765610e+02 1.2005042e+02 3.4237415e+03 - -3.6054611e+02 1.3102395e+02 3.4220961e+03 - -3.7245665e+02 1.4141106e+02 3.4203482e+03 - -3.8325562e+02 1.5119517e+02 3.4185000e+03 - -3.9279911e+02 1.6036095e+02 3.4165542e+03 - -4.0093057e+02 1.6889456e+02 3.4145144e+03 - -4.0748010e+02 1.7678387e+02 3.4123850e+03 - -4.1226395e+02 1.8401892e+02 3.4101717e+03 - -4.1508449e+02 1.9059236e+02 3.4078817e+03 - -4.1573076e+02 1.9650008e+02 3.4055238e+03 - -4.1397990e+02 2.0174201e+02 3.4031087e+03 - -4.0959985e+02 2.0632294e+02 3.4006496e+03 - -4.0235358e+02 2.1025365e+02 3.3981622e+03 - -3.9200550e+02 2.1355192e+02 3.3956653e+03 - -3.7833032e+02 2.1624376e+02 3.3931810e+03 - -3.6112482e+02 2.1836437e+02 3.3907352e+03 - -3.4022276e+02 2.1995901e+02 3.3883570e+03 - -3.1551267e+02 2.2108321e+02 3.3860793e+03 - -2.8695792e+02 2.2180244e+02 3.3839382e+03 - -2.5461753e+02 2.2219061e+02 3.3819720e+03 - -2.1866557e+02 2.2232751e+02 3.3802200e+03 - -1.7940608e+02 2.2229488e+02 3.3787212e+03 - -1.3728018e+02 2.2217139e+02 3.3775116e+03 - -9.2862226e+01 2.2202687e+02 3.3766229e+03 - -4.6843010e+01 2.2191647e+02 3.3760793e+03 - 4.8134273e-09 2.2187560e+02 3.3758963e+03 - 4.6843010e+01 2.2191647e+02 3.3760793e+03 - 9.2862226e+01 2.2202687e+02 3.3766229e+03 - 1.3728018e+02 2.2217139e+02 3.3775116e+03 - 1.7940608e+02 2.2229488e+02 3.3787212e+03 - 2.1866557e+02 2.2232751e+02 3.3802200e+03 - 2.5461753e+02 2.2219061e+02 3.3819720e+03 - 2.8695792e+02 2.2180244e+02 3.3839382e+03 - 3.1551267e+02 2.2108321e+02 3.3860793e+03 - 3.4022276e+02 2.1995901e+02 3.3883570e+03 - 3.6112482e+02 2.1836437e+02 3.3907352e+03 - 3.7833032e+02 2.1624376e+02 3.3931810e+03 - 3.9200550e+02 2.1355192e+02 3.3956653e+03 - 4.0235358e+02 2.1025365e+02 3.3981622e+03 - 4.0959985e+02 2.0632294e+02 3.4006496e+03 - 4.1397990e+02 2.0174201e+02 3.4031087e+03 - 4.1573076e+02 1.9650008e+02 3.4055238e+03 - 4.1508449e+02 1.9059236e+02 3.4078817e+03 - 4.1226395e+02 1.8401892e+02 3.4101717e+03 - 4.0748010e+02 1.7678387e+02 3.4123850e+03 - 4.0093057e+02 1.6889456e+02 3.4145144e+03 - 3.9279911e+02 1.6036095e+02 3.4165542e+03 - 3.8325562e+02 1.5119517e+02 3.4185000e+03 - 3.7245665e+02 1.4141106e+02 3.4203482e+03 - 3.6054611e+02 1.3102395e+02 3.4220961e+03 - 3.4765610e+02 1.2005042e+02 3.4237415e+03 - 3.3390789e+02 1.0850817e+02 3.4252831e+03 - 3.1941279e+02 9.6415922e+01 3.4267195e+03 - 3.0427308e+02 8.3793375e+01 3.4280501e+03 - 2.8858285e+02 7.0661199e+01 3.4292744e+03 - 2.7242880e+02 5.7041044e+01 3.4303920e+03 - 2.5589097e+02 4.2955573e+01 3.4314028e+03 - 2.3904336e+02 2.8428515e+01 3.4323067e+03 - 2.2195455e+02 1.3484736e+01 3.4331039e+03 - 2.0468823e+02 -1.8496855e+00 3.4337943e+03 - 1.8730367e+02 -1.7547367e+01 3.4343783e+03 - 1.6985613e+02 -3.3579516e+01 3.4348558e+03 - 1.5239724e+02 -4.9915821e+01 3.4352270e+03 - 1.3497532e+02 -6.6524323e+01 3.4354921e+03 - 1.1763571e+02 -8.3371279e+01 3.4356511e+03 - 1.0042101e+02 -1.0042101e+02 3.4357041e+03 - 8.3371279e+01 -1.1763571e+02 3.4356511e+03 - 6.6524323e+01 -1.3497532e+02 3.4354921e+03 - 4.9915821e+01 -1.5239724e+02 3.4352270e+03 - 3.3579516e+01 -1.6985613e+02 3.4348558e+03 - 1.7547367e+01 -1.8730367e+02 3.4343783e+03 - 1.8496855e+00 -2.0468823e+02 3.4337943e+03 - -1.3484736e+01 -2.2195455e+02 3.4331039e+03 - -2.8428515e+01 -2.3904336e+02 3.4323067e+03 - -4.2955573e+01 -2.5589097e+02 3.4314028e+03 - -5.7041044e+01 -2.7242880e+02 3.4303920e+03 - -7.0661199e+01 -2.8858285e+02 3.4292744e+03 - -8.3793375e+01 -3.0427308e+02 3.4280501e+03 - -9.6415922e+01 -3.1941279e+02 3.4267195e+03 - -1.0850817e+02 -3.3390789e+02 3.4252831e+03 - -1.2005042e+02 -3.4765610e+02 3.4237415e+03 - -1.3102395e+02 -3.6054611e+02 3.4220961e+03 - -1.4141106e+02 -3.7245665e+02 3.4203482e+03 - -1.5119517e+02 -3.8325562e+02 3.4185000e+03 - -1.6036095e+02 -3.9279911e+02 3.4165542e+03 - -1.6889456e+02 -4.0093057e+02 3.4145144e+03 - -1.7678387e+02 -4.0748010e+02 3.4123850e+03 - -1.8401892e+02 -4.1226395e+02 3.4101717e+03 - -1.9059236e+02 -4.1508449e+02 3.4078817e+03 - -1.9650008e+02 -4.1573076e+02 3.4055238e+03 - -2.0174201e+02 -4.1397990e+02 3.4031087e+03 - -2.0632294e+02 -4.0959985e+02 3.4006496e+03 - -2.1025365e+02 -4.0235358e+02 3.3981622e+03 - -2.1355192e+02 -3.9200550e+02 3.3956653e+03 - -2.1624376e+02 -3.7833032e+02 3.3931810e+03 - -2.1836437e+02 -3.6112482e+02 3.3907352e+03 - -2.1995901e+02 -3.4022276e+02 3.3883570e+03 - -2.2108321e+02 -3.1551267e+02 3.3860793e+03 - -2.2180244e+02 -2.8695792e+02 3.3839382e+03 - -2.2219061e+02 -2.5461753e+02 3.3819720e+03 - -2.2232751e+02 -2.1866557e+02 3.3802200e+03 - -2.2229488e+02 -1.7940608e+02 3.3787212e+03 - -2.2217139e+02 -1.3728018e+02 3.3775116e+03 - -2.2202687e+02 -9.2862226e+01 3.3766229e+03 - -2.2191647e+02 -4.6843010e+01 3.3760793e+03 - -2.2187560e+02 7.2201409e-09 3.3758963e+03 - -2.2191647e+02 4.6843010e+01 3.3760793e+03 - -2.2202687e+02 9.2862226e+01 3.3766229e+03 - -2.2217139e+02 1.3728018e+02 3.3775116e+03 - -2.2229488e+02 1.7940608e+02 3.3787212e+03 - -2.2232751e+02 2.1866557e+02 3.3802200e+03 - -2.2219061e+02 2.5461753e+02 3.3819720e+03 - -2.2180244e+02 2.8695792e+02 3.3839382e+03 - -2.2108321e+02 3.1551267e+02 3.3860793e+03 - -2.1995901e+02 3.4022276e+02 3.3883570e+03 - -2.1836437e+02 3.6112482e+02 3.3907352e+03 - -2.1624376e+02 3.7833032e+02 3.3931810e+03 - -2.1355192e+02 3.9200550e+02 3.3956653e+03 - -2.1025365e+02 4.0235358e+02 3.3981622e+03 - -2.0632294e+02 4.0959985e+02 3.4006496e+03 - -2.0174201e+02 4.1397990e+02 3.4031087e+03 - -1.9650008e+02 4.1573076e+02 3.4055238e+03 - -1.9059236e+02 4.1508449e+02 3.4078817e+03 - -1.8401892e+02 4.1226395e+02 3.4101717e+03 - -1.7678387e+02 4.0748010e+02 3.4123850e+03 - -1.6889456e+02 4.0093057e+02 3.4145144e+03 - -1.6036095e+02 3.9279911e+02 3.4165542e+03 - -1.5119517e+02 3.8325562e+02 3.4185000e+03 - -1.4141106e+02 3.7245665e+02 3.4203482e+03 - -1.3102395e+02 3.6054611e+02 3.4220961e+03 - -1.2005042e+02 3.4765610e+02 3.4237415e+03 - -1.0850817e+02 3.3390789e+02 3.4252831e+03 - -9.6415922e+01 3.1941279e+02 3.4267195e+03 - -8.3793375e+01 3.0427308e+02 3.4280501e+03 - -7.0661199e+01 2.8858285e+02 3.4292744e+03 - -5.7041044e+01 2.7242880e+02 3.4303920e+03 - -4.2955573e+01 2.5589097e+02 3.4314028e+03 - -2.8428515e+01 2.3904336e+02 3.4323067e+03 - -1.3484736e+01 2.2195455e+02 3.4331039e+03 - 1.8496855e+00 2.0468823e+02 3.4337943e+03 - 1.7547367e+01 1.8730367e+02 3.4343783e+03 - 3.3579516e+01 1.6985613e+02 3.4348558e+03 - 4.9915821e+01 1.5239724e+02 3.4352270e+03 - 6.6524323e+01 1.3497532e+02 3.4354921e+03 - 8.3371279e+01 1.1763571e+02 3.4356511e+03 - 1.0042101e+02 1.0042101e+02 3.4357041e+03 - 1.1763571e+02 8.3371279e+01 3.4356511e+03 - 1.3497532e+02 6.6524323e+01 3.4354921e+03 - 1.5239724e+02 4.9915821e+01 3.4352270e+03 - 1.6985613e+02 3.3579516e+01 3.4348558e+03 - 1.8730367e+02 1.7547367e+01 3.4343783e+03 - 2.0468823e+02 1.8496855e+00 3.4337943e+03 - 2.2195455e+02 -1.3484736e+01 3.4331039e+03 - 2.3904336e+02 -2.8428515e+01 3.4323067e+03 - 2.5589097e+02 -4.2955573e+01 3.4314028e+03 - 2.7242880e+02 -5.7041044e+01 3.4303920e+03 - 2.8858285e+02 -7.0661199e+01 3.4292744e+03 - 3.0427308e+02 -8.3793375e+01 3.4280501e+03 - 3.1941279e+02 -9.6415922e+01 3.4267195e+03 - 3.3390789e+02 -1.0850817e+02 3.4252831e+03 - 3.4765610e+02 -1.2005042e+02 3.4237415e+03 - 3.6054611e+02 -1.3102395e+02 3.4220961e+03 - 3.7245665e+02 -1.4141106e+02 3.4203482e+03 - 3.8325562e+02 -1.5119517e+02 3.4185000e+03 - 3.9279911e+02 -1.6036095e+02 3.4165542e+03 - 4.0093057e+02 -1.6889456e+02 3.4145144e+03 - 4.0748010e+02 -1.7678387e+02 3.4123850e+03 - 4.1226395e+02 -1.8401892e+02 3.4101717e+03 - 4.1508449e+02 -1.9059236e+02 3.4078817e+03 - 4.1573076e+02 -1.9650008e+02 3.4055238e+03 - 4.1397990e+02 -2.0174201e+02 3.4031087e+03 - 4.0959985e+02 -2.0632294e+02 3.4006496e+03 - 4.0235358e+02 -2.1025365e+02 3.3981622e+03 - 3.9200550e+02 -2.1355192e+02 3.3956653e+03 - 3.7833032e+02 -2.1624376e+02 3.3931810e+03 - 3.6112482e+02 -2.1836437e+02 3.3907352e+03 - 3.4022276e+02 -2.1995901e+02 3.3883570e+03 - 3.1551267e+02 -2.2108321e+02 3.3860793e+03 - 2.8695792e+02 -2.2180244e+02 3.3839382e+03 - 2.5461753e+02 -2.2219061e+02 3.3819720e+03 - 2.1866557e+02 -2.2232751e+02 3.3802200e+03 - 1.7940608e+02 -2.2229488e+02 3.3787212e+03 - 1.3728018e+02 -2.2217139e+02 3.3775116e+03 - 9.2862226e+01 -2.2202687e+02 3.3766229e+03 - 4.6843010e+01 -2.2191647e+02 3.3760793e+03 - -2.4067136e-09 -2.2187560e+02 3.3758963e+03 - -4.6843010e+01 -2.2191647e+02 3.3760793e+03 - -9.2862226e+01 -2.2202687e+02 3.3766229e+03 - -1.3728018e+02 -2.2217139e+02 3.3775116e+03 - -1.7940608e+02 -2.2229488e+02 3.3787212e+03 - -2.1866557e+02 -2.2232751e+02 3.3802200e+03 - -2.5461753e+02 -2.2219061e+02 3.3819720e+03 - -2.8695792e+02 -2.2180244e+02 3.3839382e+03 - -3.1551267e+02 -2.2108321e+02 3.3860793e+03 - -3.4022276e+02 -2.1995901e+02 3.3883570e+03 - -3.6112482e+02 -2.1836437e+02 3.3907352e+03 - -3.7833032e+02 -2.1624376e+02 3.3931810e+03 - -3.9200550e+02 -2.1355192e+02 3.3956653e+03 - -4.0235358e+02 -2.1025365e+02 3.3981622e+03 - -4.0959985e+02 -2.0632294e+02 3.4006496e+03 - -4.1397990e+02 -2.0174201e+02 3.4031087e+03 - -4.1573076e+02 -1.9650008e+02 3.4055238e+03 - -4.1508449e+02 -1.9059236e+02 3.4078817e+03 - -4.1226395e+02 -1.8401892e+02 3.4101717e+03 - -4.0748010e+02 -1.7678387e+02 3.4123850e+03 - -4.0093057e+02 -1.6889456e+02 3.4145144e+03 - -3.9279911e+02 -1.6036095e+02 3.4165542e+03 - -3.8325562e+02 -1.5119517e+02 3.4185000e+03 - -3.7245665e+02 -1.4141106e+02 3.4203482e+03 - -3.6054611e+02 -1.3102395e+02 3.4220961e+03 - -3.4765610e+02 -1.2005042e+02 3.4237415e+03 - -3.3390789e+02 -1.0850817e+02 3.4252831e+03 - -3.1941279e+02 -9.6415922e+01 3.4267195e+03 - -3.0427308e+02 -8.3793375e+01 3.4280501e+03 - -2.8858285e+02 -7.0661199e+01 3.4292744e+03 - -2.7242880e+02 -5.7041044e+01 3.4303920e+03 - -2.5589097e+02 -4.2955573e+01 3.4314028e+03 - -2.3904336e+02 -2.8428515e+01 3.4323067e+03 - -2.2195455e+02 -1.3484736e+01 3.4331039e+03 - -2.0468823e+02 1.8496855e+00 3.4337943e+03 - -1.8730367e+02 1.7547367e+01 3.4343783e+03 - -1.6985613e+02 3.3579516e+01 3.4348558e+03 - -1.5239724e+02 4.9915821e+01 3.4352270e+03 - -1.3497532e+02 6.6524323e+01 3.4354921e+03 - -1.1763571e+02 8.3371279e+01 3.4356511e+03 - -1.0042101e+02 1.0042101e+02 3.4357041e+03 - -8.3371279e+01 1.1763571e+02 3.4356511e+03 - -6.6524323e+01 1.3497532e+02 3.4354921e+03 - -4.9915821e+01 1.5239724e+02 3.4352270e+03 - -3.3579516e+01 1.6985613e+02 3.4348558e+03 - -1.7547367e+01 1.8730367e+02 3.4343783e+03 - -1.8496855e+00 2.0468823e+02 3.4337943e+03 - 1.3484736e+01 2.2195455e+02 3.4331039e+03 - 2.8428515e+01 2.3904336e+02 3.4323067e+03 - 4.2955573e+01 2.5589097e+02 3.4314028e+03 - 5.7041044e+01 2.7242880e+02 3.4303920e+03 - 7.0661199e+01 2.8858285e+02 3.4292744e+03 - 8.3793375e+01 3.0427308e+02 3.4280501e+03 - 9.6415922e+01 3.1941279e+02 3.4267195e+03 - 1.0850817e+02 3.3390789e+02 3.4252831e+03 - 1.2005042e+02 3.4765610e+02 3.4237415e+03 - 1.3102395e+02 3.6054611e+02 3.4220961e+03 - 1.4141106e+02 3.7245665e+02 3.4203482e+03 - 1.5119517e+02 3.8325562e+02 3.4185000e+03 - 1.6036095e+02 3.9279911e+02 3.4165542e+03 - 1.6889456e+02 4.0093057e+02 3.4145144e+03 - 1.7678387e+02 4.0748010e+02 3.4123850e+03 - 1.8401892e+02 4.1226395e+02 3.4101717e+03 - 1.9059236e+02 4.1508449e+02 3.4078817e+03 - 1.9650008e+02 4.1573076e+02 3.4055238e+03 - 2.0174201e+02 4.1397990e+02 3.4031087e+03 - 2.0632294e+02 4.0959985e+02 3.4006496e+03 - 2.1025365e+02 4.0235358e+02 3.3981622e+03 - 2.1355192e+02 3.9200550e+02 3.3956653e+03 - 2.1624376e+02 3.7833032e+02 3.3931810e+03 - 2.1836437e+02 3.6112482e+02 3.3907352e+03 - 2.1995901e+02 3.4022276e+02 3.3883570e+03 - 2.2108321e+02 3.1551267e+02 3.3860793e+03 - 2.2180244e+02 2.8695792e+02 3.3839382e+03 - 2.2219061e+02 2.5461753e+02 3.3819720e+03 - 2.2232751e+02 2.1866557e+02 3.3802200e+03 - 2.2229488e+02 1.7940608e+02 3.3787212e+03 - 2.2217139e+02 1.3728018e+02 3.3775116e+03 - 2.2202687e+02 9.2862226e+01 3.3766229e+03 - 2.2191647e+02 4.6843010e+01 3.3760793e+03 - 2.2187560e+02 -7.2201409e-09 3.3758963e+03 - 3.0963423e+02 -4.8134273e-09 3.3364689e+03 - 3.0966176e+02 -4.7403025e+01 3.3366704e+03 - 3.0973170e+02 -9.3916719e+01 3.3372687e+03 - 3.0980741e+02 -1.3870381e+02 3.3382453e+03 - 3.0983193e+02 -1.8102418e+02 3.3395716e+03 - 3.0973339e+02 -2.2026763e+02 3.3412108e+03 - 3.0943111e+02 -2.5597166e+02 3.3431205e+03 - 3.0884166e+02 -2.8782458e+02 3.3452561e+03 - 3.0788401e+02 -3.1565634e+02 3.3475723e+03 - 3.0648344e+02 -3.3942082e+02 3.3500259e+03 - 3.0457415e+02 -3.5917358e+02 3.3525765e+03 - 3.0210056e+02 -3.7504843e+02 3.3551879e+03 - 2.9901759e+02 -3.8723527e+02 3.3578282e+03 - 2.9529028e+02 -3.9596070e+02 3.3604698e+03 - 2.9089288e+02 -4.0147212e+02 3.3630894e+03 - 2.8580773e+02 -4.0402533e+02 3.3656677e+03 - 2.8002410e+02 -4.0387538e+02 3.3681887e+03 - 2.7353705e+02 -4.0127018e+02 3.3706394e+03 - 2.6634641e+02 -3.9644631e+02 3.3730097e+03 - 2.5845586e+02 -3.8962652e+02 3.3752913e+03 - 2.4987224e+02 -3.8101854e+02 3.3774779e+03 - 2.4060493e+02 -3.7081473e+02 3.3795647e+03 - 2.3066538e+02 -3.5919234e+02 3.3815482e+03 - 2.2006675e+02 -3.4631425e+02 3.3834257e+03 - 2.0882368e+02 -3.3232975e+02 3.3851956e+03 - 1.9695205e+02 -3.1737566e+02 3.3868565e+03 - 1.8446893e+02 -3.0157730e+02 3.3884080e+03 - 1.7139242e+02 -2.8504955e+02 3.3898498e+03 - 1.5774171e+02 -2.6789787e+02 3.3911819e+03 - 1.4353699e+02 -2.5021914e+02 3.3924046e+03 - 1.2879955e+02 -2.3210257e+02 3.3935183e+03 - 1.1355175e+02 -2.1363048e+02 3.3945236e+03 - 9.7817145e+01 -1.9487891e+02 3.3954209e+03 - 8.1620500e+01 -1.7591832e+02 3.3962110e+03 - 6.4987910e+01 -1.5681412e+02 3.3968943e+03 - 4.7946873e+01 -1.3762713e+02 3.3974715e+03 - 3.0526402e+01 -1.1841404e+02 3.3979430e+03 - 1.2757137e+01 -9.9227784e+01 3.3983093e+03 - -5.3285306e+00 -8.0117880e+01 3.3985706e+03 - -2.3696318e+01 -6.1130733e+01 3.3987274e+03 - -4.2309899e+01 -4.2309899e+01 3.3987796e+03 - -6.1130733e+01 -2.3696318e+01 3.3987274e+03 - -8.0117880e+01 -5.3285306e+00 3.3985706e+03 - -9.9227784e+01 1.2757137e+01 3.3983093e+03 - -1.1841404e+02 3.0526402e+01 3.3979430e+03 - -1.3762713e+02 4.7946873e+01 3.3974715e+03 - -1.5681412e+02 6.4987910e+01 3.3968943e+03 - -1.7591832e+02 8.1620500e+01 3.3962110e+03 - -1.9487891e+02 9.7817145e+01 3.3954209e+03 - -2.1363048e+02 1.1355175e+02 3.3945236e+03 - -2.3210257e+02 1.2879955e+02 3.3935183e+03 - -2.5021914e+02 1.4353699e+02 3.3924046e+03 - -2.6789787e+02 1.5774171e+02 3.3911819e+03 - -2.8504955e+02 1.7139242e+02 3.3898498e+03 - -3.0157730e+02 1.8446893e+02 3.3884080e+03 - -3.1737566e+02 1.9695205e+02 3.3868565e+03 - -3.3232975e+02 2.0882368e+02 3.3851956e+03 - -3.4631425e+02 2.2006675e+02 3.3834257e+03 - -3.5919234e+02 2.3066538e+02 3.3815482e+03 - -3.7081473e+02 2.4060493e+02 3.3795647e+03 - -3.8101854e+02 2.4987224e+02 3.3774779e+03 - -3.8962652e+02 2.5845586e+02 3.3752913e+03 - -3.9644631e+02 2.6634641e+02 3.3730097e+03 - -4.0127018e+02 2.7353705e+02 3.3706394e+03 - -4.0387538e+02 2.8002410e+02 3.3681887e+03 - -4.0402533e+02 2.8580773e+02 3.3656677e+03 - -4.0147212e+02 2.9089288e+02 3.3630894e+03 - -3.9596070e+02 2.9529028e+02 3.3604698e+03 - -3.8723527e+02 2.9901759e+02 3.3578282e+03 - -3.7504843e+02 3.0210056e+02 3.3551879e+03 - -3.5917358e+02 3.0457415e+02 3.3525765e+03 - -3.3942082e+02 3.0648344e+02 3.3500259e+03 - -3.1565634e+02 3.0788401e+02 3.3475723e+03 - -2.8782458e+02 3.0884166e+02 3.3452561e+03 - -2.5597166e+02 3.0943111e+02 3.3431205e+03 - -2.2026763e+02 3.0973339e+02 3.3412108e+03 - -1.8102418e+02 3.0983193e+02 3.3395716e+03 - -1.3870381e+02 3.0980741e+02 3.3382453e+03 - -9.3916719e+01 3.0973170e+02 3.3372687e+03 - -4.7403025e+01 3.0966176e+02 3.3366704e+03 - 4.8134273e-09 3.0963423e+02 3.3364689e+03 - 4.7403025e+01 3.0966176e+02 3.3366704e+03 - 9.3916719e+01 3.0973170e+02 3.3372687e+03 - 1.3870381e+02 3.0980741e+02 3.3382453e+03 - 1.8102418e+02 3.0983193e+02 3.3395716e+03 - 2.2026763e+02 3.0973339e+02 3.3412108e+03 - 2.5597166e+02 3.0943111e+02 3.3431205e+03 - 2.8782458e+02 3.0884166e+02 3.3452561e+03 - 3.1565634e+02 3.0788401e+02 3.3475723e+03 - 3.3942082e+02 3.0648344e+02 3.3500259e+03 - 3.5917358e+02 3.0457415e+02 3.3525765e+03 - 3.7504843e+02 3.0210056e+02 3.3551879e+03 - 3.8723527e+02 2.9901759e+02 3.3578282e+03 - 3.9596070e+02 2.9529028e+02 3.3604698e+03 - 4.0147212e+02 2.9089288e+02 3.3630894e+03 - 4.0402533e+02 2.8580773e+02 3.3656677e+03 - 4.0387538e+02 2.8002410e+02 3.3681887e+03 - 4.0127018e+02 2.7353705e+02 3.3706394e+03 - 3.9644631e+02 2.6634641e+02 3.3730097e+03 - 3.8962652e+02 2.5845586e+02 3.3752913e+03 - 3.8101854e+02 2.4987224e+02 3.3774779e+03 - 3.7081473e+02 2.4060493e+02 3.3795647e+03 - 3.5919234e+02 2.3066538e+02 3.3815482e+03 - 3.4631425e+02 2.2006675e+02 3.3834257e+03 - 3.3232975e+02 2.0882368e+02 3.3851956e+03 - 3.1737566e+02 1.9695205e+02 3.3868565e+03 - 3.0157730e+02 1.8446893e+02 3.3884080e+03 - 2.8504955e+02 1.7139242e+02 3.3898498e+03 - 2.6789787e+02 1.5774171e+02 3.3911819e+03 - 2.5021914e+02 1.4353699e+02 3.3924046e+03 - 2.3210257e+02 1.2879955e+02 3.3935183e+03 - 2.1363048e+02 1.1355175e+02 3.3945236e+03 - 1.9487891e+02 9.7817145e+01 3.3954209e+03 - 1.7591832e+02 8.1620500e+01 3.3962110e+03 - 1.5681412e+02 6.4987910e+01 3.3968943e+03 - 1.3762713e+02 4.7946873e+01 3.3974715e+03 - 1.1841404e+02 3.0526402e+01 3.3979430e+03 - 9.9227784e+01 1.2757137e+01 3.3983093e+03 - 8.0117880e+01 -5.3285306e+00 3.3985706e+03 - 6.1130733e+01 -2.3696318e+01 3.3987274e+03 - 4.2309899e+01 -4.2309899e+01 3.3987796e+03 - 2.3696318e+01 -6.1130733e+01 3.3987274e+03 - 5.3285306e+00 -8.0117880e+01 3.3985706e+03 - -1.2757137e+01 -9.9227784e+01 3.3983093e+03 - -3.0526402e+01 -1.1841404e+02 3.3979430e+03 - -4.7946873e+01 -1.3762713e+02 3.3974715e+03 - -6.4987910e+01 -1.5681412e+02 3.3968943e+03 - -8.1620500e+01 -1.7591832e+02 3.3962110e+03 - -9.7817145e+01 -1.9487891e+02 3.3954209e+03 - -1.1355175e+02 -2.1363048e+02 3.3945236e+03 - -1.2879955e+02 -2.3210257e+02 3.3935183e+03 - -1.4353699e+02 -2.5021914e+02 3.3924046e+03 - -1.5774171e+02 -2.6789787e+02 3.3911819e+03 - -1.7139242e+02 -2.8504955e+02 3.3898498e+03 - -1.8446893e+02 -3.0157730e+02 3.3884080e+03 - -1.9695205e+02 -3.1737566e+02 3.3868565e+03 - -2.0882368e+02 -3.3232975e+02 3.3851956e+03 - -2.2006675e+02 -3.4631425e+02 3.3834257e+03 - -2.3066538e+02 -3.5919234e+02 3.3815482e+03 - -2.4060493e+02 -3.7081473e+02 3.3795647e+03 - -2.4987224e+02 -3.8101854e+02 3.3774779e+03 - -2.5845586e+02 -3.8962652e+02 3.3752913e+03 - -2.6634641e+02 -3.9644631e+02 3.3730097e+03 - -2.7353705e+02 -4.0127018e+02 3.3706394e+03 - -2.8002410e+02 -4.0387538e+02 3.3681887e+03 - -2.8580773e+02 -4.0402533e+02 3.3656677e+03 - -2.9089288e+02 -4.0147212e+02 3.3630894e+03 - -2.9529028e+02 -3.9596070e+02 3.3604698e+03 - -2.9901759e+02 -3.8723527e+02 3.3578282e+03 - -3.0210056e+02 -3.7504843e+02 3.3551879e+03 - -3.0457415e+02 -3.5917358e+02 3.3525765e+03 - -3.0648344e+02 -3.3942082e+02 3.3500259e+03 - -3.0788401e+02 -3.1565634e+02 3.3475723e+03 - -3.0884166e+02 -2.8782458e+02 3.3452561e+03 - -3.0943111e+02 -2.5597166e+02 3.3431205e+03 - -3.0973339e+02 -2.2026763e+02 3.3412108e+03 - -3.0983193e+02 -1.8102418e+02 3.3395716e+03 - -3.0980741e+02 -1.3870381e+02 3.3382453e+03 - -3.0973170e+02 -9.3916719e+01 3.3372687e+03 - -3.0966176e+02 -4.7403025e+01 3.3366704e+03 - -3.0963423e+02 4.8134273e-09 3.3364689e+03 - -3.0966176e+02 4.7403025e+01 3.3366704e+03 - -3.0973170e+02 9.3916719e+01 3.3372687e+03 - -3.0980741e+02 1.3870381e+02 3.3382453e+03 - -3.0983193e+02 1.8102418e+02 3.3395716e+03 - -3.0973339e+02 2.2026763e+02 3.3412108e+03 - -3.0943111e+02 2.5597166e+02 3.3431205e+03 - -3.0884166e+02 2.8782458e+02 3.3452561e+03 - -3.0788401e+02 3.1565634e+02 3.3475723e+03 - -3.0648344e+02 3.3942082e+02 3.3500259e+03 - -3.0457415e+02 3.5917358e+02 3.3525765e+03 - -3.0210056e+02 3.7504843e+02 3.3551879e+03 - -2.9901759e+02 3.8723527e+02 3.3578282e+03 - -2.9529028e+02 3.9596070e+02 3.3604698e+03 - -2.9089288e+02 4.0147212e+02 3.3630894e+03 - -2.8580773e+02 4.0402533e+02 3.3656677e+03 - -2.8002410e+02 4.0387538e+02 3.3681887e+03 - -2.7353705e+02 4.0127018e+02 3.3706394e+03 - -2.6634641e+02 3.9644631e+02 3.3730097e+03 - -2.5845586e+02 3.8962652e+02 3.3752913e+03 - -2.4987224e+02 3.8101854e+02 3.3774779e+03 - -2.4060493e+02 3.7081473e+02 3.3795647e+03 - -2.3066538e+02 3.5919234e+02 3.3815482e+03 - -2.2006675e+02 3.4631425e+02 3.3834257e+03 - -2.0882368e+02 3.3232975e+02 3.3851956e+03 - -1.9695205e+02 3.1737566e+02 3.3868565e+03 - -1.8446893e+02 3.0157730e+02 3.3884080e+03 - -1.7139242e+02 2.8504955e+02 3.3898498e+03 - -1.5774171e+02 2.6789787e+02 3.3911819e+03 - -1.4353699e+02 2.5021914e+02 3.3924046e+03 - -1.2879955e+02 2.3210257e+02 3.3935183e+03 - -1.1355175e+02 2.1363048e+02 3.3945236e+03 - -9.7817145e+01 1.9487891e+02 3.3954209e+03 - -8.1620500e+01 1.7591832e+02 3.3962110e+03 - -6.4987910e+01 1.5681412e+02 3.3968943e+03 - -4.7946873e+01 1.3762713e+02 3.3974715e+03 - -3.0526402e+01 1.1841404e+02 3.3979430e+03 - -1.2757137e+01 9.9227784e+01 3.3983093e+03 - 5.3285306e+00 8.0117880e+01 3.3985706e+03 - 2.3696318e+01 6.1130733e+01 3.3987274e+03 - 4.2309899e+01 4.2309899e+01 3.3987796e+03 - 6.1130733e+01 2.3696318e+01 3.3987274e+03 - 8.0117880e+01 5.3285306e+00 3.3985706e+03 - 9.9227784e+01 -1.2757137e+01 3.3983093e+03 - 1.1841404e+02 -3.0526402e+01 3.3979430e+03 - 1.3762713e+02 -4.7946873e+01 3.3974715e+03 - 1.5681412e+02 -6.4987910e+01 3.3968943e+03 - 1.7591832e+02 -8.1620500e+01 3.3962110e+03 - 1.9487891e+02 -9.7817145e+01 3.3954209e+03 - 2.1363048e+02 -1.1355175e+02 3.3945236e+03 - 2.3210257e+02 -1.2879955e+02 3.3935183e+03 - 2.5021914e+02 -1.4353699e+02 3.3924046e+03 - 2.6789787e+02 -1.5774171e+02 3.3911819e+03 - 2.8504955e+02 -1.7139242e+02 3.3898498e+03 - 3.0157730e+02 -1.8446893e+02 3.3884080e+03 - 3.1737566e+02 -1.9695205e+02 3.3868565e+03 - 3.3232975e+02 -2.0882368e+02 3.3851956e+03 - 3.4631425e+02 -2.2006675e+02 3.3834257e+03 - 3.5919234e+02 -2.3066538e+02 3.3815482e+03 - 3.7081473e+02 -2.4060493e+02 3.3795647e+03 - 3.8101854e+02 -2.4987224e+02 3.3774779e+03 - 3.8962652e+02 -2.5845586e+02 3.3752913e+03 - 3.9644631e+02 -2.6634641e+02 3.3730097e+03 - 4.0127018e+02 -2.7353705e+02 3.3706394e+03 - 4.0387538e+02 -2.8002410e+02 3.3681887e+03 - 4.0402533e+02 -2.8580773e+02 3.3656677e+03 - 4.0147212e+02 -2.9089288e+02 3.3630894e+03 - 3.9596070e+02 -2.9529028e+02 3.3604698e+03 - 3.8723527e+02 -2.9901759e+02 3.3578282e+03 - 3.7504843e+02 -3.0210056e+02 3.3551879e+03 - 3.5917358e+02 -3.0457415e+02 3.3525765e+03 - 3.3942082e+02 -3.0648344e+02 3.3500259e+03 - 3.1565634e+02 -3.0788401e+02 3.3475723e+03 - 2.8782458e+02 -3.0884166e+02 3.3452561e+03 - 2.5597166e+02 -3.0943111e+02 3.3431205e+03 - 2.2026763e+02 -3.0973339e+02 3.3412108e+03 - 1.8102418e+02 -3.0983193e+02 3.3395716e+03 - 1.3870381e+02 -3.0980741e+02 3.3382453e+03 - 9.3916719e+01 -3.0973170e+02 3.3372687e+03 - 4.7403025e+01 -3.0966176e+02 3.3366704e+03 - -4.8134273e-09 -3.0963423e+02 3.3364689e+03 - -4.7403025e+01 -3.0966176e+02 3.3366704e+03 - -9.3916719e+01 -3.0973170e+02 3.3372687e+03 - -1.3870381e+02 -3.0980741e+02 3.3382453e+03 - -1.8102418e+02 -3.0983193e+02 3.3395716e+03 - -2.2026763e+02 -3.0973339e+02 3.3412108e+03 - -2.5597166e+02 -3.0943111e+02 3.3431205e+03 - -2.8782458e+02 -3.0884166e+02 3.3452561e+03 - -3.1565634e+02 -3.0788401e+02 3.3475723e+03 - -3.3942082e+02 -3.0648344e+02 3.3500259e+03 - -3.5917358e+02 -3.0457415e+02 3.3525765e+03 - -3.7504843e+02 -3.0210056e+02 3.3551879e+03 - -3.8723527e+02 -2.9901759e+02 3.3578282e+03 - -3.9596070e+02 -2.9529028e+02 3.3604698e+03 - -4.0147212e+02 -2.9089288e+02 3.3630894e+03 - -4.0402533e+02 -2.8580773e+02 3.3656677e+03 - -4.0387538e+02 -2.8002410e+02 3.3681887e+03 - -4.0127018e+02 -2.7353705e+02 3.3706394e+03 - -3.9644631e+02 -2.6634641e+02 3.3730097e+03 - -3.8962652e+02 -2.5845586e+02 3.3752913e+03 - -3.8101854e+02 -2.4987224e+02 3.3774779e+03 - -3.7081473e+02 -2.4060493e+02 3.3795647e+03 - -3.5919234e+02 -2.3066538e+02 3.3815482e+03 - -3.4631425e+02 -2.2006675e+02 3.3834257e+03 - -3.3232975e+02 -2.0882368e+02 3.3851956e+03 - -3.1737566e+02 -1.9695205e+02 3.3868565e+03 - -3.0157730e+02 -1.8446893e+02 3.3884080e+03 - -2.8504955e+02 -1.7139242e+02 3.3898498e+03 - -2.6789787e+02 -1.5774171e+02 3.3911819e+03 - -2.5021914e+02 -1.4353699e+02 3.3924046e+03 - -2.3210257e+02 -1.2879955e+02 3.3935183e+03 - -2.1363048e+02 -1.1355175e+02 3.3945236e+03 - -1.9487891e+02 -9.7817145e+01 3.3954209e+03 - -1.7591832e+02 -8.1620500e+01 3.3962110e+03 - -1.5681412e+02 -6.4987910e+01 3.3968943e+03 - -1.3762713e+02 -4.7946873e+01 3.3974715e+03 - -1.1841404e+02 -3.0526402e+01 3.3979430e+03 - -9.9227784e+01 -1.2757137e+01 3.3983093e+03 - -8.0117880e+01 5.3285306e+00 3.3985706e+03 - -6.1130733e+01 2.3696318e+01 3.3987274e+03 - -4.2309899e+01 4.2309899e+01 3.3987796e+03 - -2.3696318e+01 6.1130733e+01 3.3987274e+03 - -5.3285306e+00 8.0117880e+01 3.3985706e+03 - 1.2757137e+01 9.9227784e+01 3.3983093e+03 - 3.0526402e+01 1.1841404e+02 3.3979430e+03 - 4.7946873e+01 1.3762713e+02 3.3974715e+03 - 6.4987910e+01 1.5681412e+02 3.3968943e+03 - 8.1620500e+01 1.7591832e+02 3.3962110e+03 - 9.7817145e+01 1.9487891e+02 3.3954209e+03 - 1.1355175e+02 2.1363048e+02 3.3945236e+03 - 1.2879955e+02 2.3210257e+02 3.3935183e+03 - 1.4353699e+02 2.5021914e+02 3.3924046e+03 - 1.5774171e+02 2.6789787e+02 3.3911819e+03 - 1.7139242e+02 2.8504955e+02 3.3898498e+03 - 1.8446893e+02 3.0157730e+02 3.3884080e+03 - 1.9695205e+02 3.1737566e+02 3.3868565e+03 - 2.0882368e+02 3.3232975e+02 3.3851956e+03 - 2.2006675e+02 3.4631425e+02 3.3834257e+03 - 2.3066538e+02 3.5919234e+02 3.3815482e+03 - 2.4060493e+02 3.7081473e+02 3.3795647e+03 - 2.4987224e+02 3.8101854e+02 3.3774779e+03 - 2.5845586e+02 3.8962652e+02 3.3752913e+03 - 2.6634641e+02 3.9644631e+02 3.3730097e+03 - 2.7353705e+02 4.0127018e+02 3.3706394e+03 - 2.8002410e+02 4.0387538e+02 3.3681887e+03 - 2.8580773e+02 4.0402533e+02 3.3656677e+03 - 2.9089288e+02 4.0147212e+02 3.3630894e+03 - 2.9529028e+02 3.9596070e+02 3.3604698e+03 - 2.9901759e+02 3.8723527e+02 3.3578282e+03 - 3.0210056e+02 3.7504843e+02 3.3551879e+03 - 3.0457415e+02 3.5917358e+02 3.3525765e+03 - 3.0648344e+02 3.3942082e+02 3.3500259e+03 - 3.0788401e+02 3.1565634e+02 3.3475723e+03 - 3.0884166e+02 2.8782458e+02 3.3452561e+03 - 3.0943111e+02 2.5597166e+02 3.3431205e+03 - 3.0973339e+02 2.2026763e+02 3.3412108e+03 - 3.0983193e+02 1.8102418e+02 3.3395716e+03 - 3.0980741e+02 1.3870381e+02 3.3382453e+03 - 3.0973170e+02 9.3916719e+01 3.3372687e+03 - 3.0966176e+02 4.7403025e+01 3.3366704e+03 - 3.0963423e+02 -4.8134273e-09 3.3364689e+03 - 4.0152538e+02 4.8134273e-09 3.2929981e+03 - 4.0153813e+02 -4.7905231e+01 3.2932196e+03 - 4.0156336e+02 -9.4849714e+01 3.2938768e+03 - 4.0156337e+02 -1.3993138e+02 3.2949479e+03 - 4.0147968e+02 -1.8235731e+02 3.2963990e+03 - 4.0123874e+02 -2.2147986e+02 3.2981870e+03 - 4.0075838e+02 -2.5681538e+02 3.3002628e+03 - 3.9995396e+02 -2.8804627e+02 3.3025744e+03 - 3.9874373e+02 -3.1500918e+02 3.3050705e+03 - 3.9705270e+02 -3.3767411e+02 3.3077021e+03 - 3.9481519e+02 -3.5611882e+02 3.3104243e+03 - 3.9197592e+02 -3.7050252e+02 3.3131973e+03 - 3.8849028e+02 -3.8104132e+02 3.3159864e+03 - 3.8432372e+02 -3.8798732e+02 3.3187625e+03 - 3.7945081e+02 -3.9161159e+02 3.3215014e+03 - 3.7385403e+02 -3.9219122e+02 3.3241833e+03 - 3.6752262e+02 -3.9000005e+02 3.3267924e+03 - 3.6045138e+02 -3.8530220e+02 3.3293164e+03 - 3.5263972e+02 -3.7834813e+02 3.3317457e+03 - 3.4409073e+02 -3.6937238e+02 3.3340732e+03 - 3.3481053e+02 -3.5859263e+02 3.3362936e+03 - 3.2480767e+02 -3.4620963e+02 3.3384034e+03 - 3.1409274e+02 -3.3240773e+02 3.3404002e+03 - 3.0267800e+02 -3.1735580e+02 3.3422826e+03 - 2.9057716e+02 -3.0120828e+02 3.3440501e+03 - 2.7780524e+02 -2.8410634e+02 3.3457027e+03 - 2.6437845e+02 -2.6617912e+02 3.3472409e+03 - 2.5031412e+02 -2.4754479e+02 3.3486656e+03 - 2.3563072e+02 -2.2831169e+02 3.3499777e+03 - 2.2034782e+02 -2.0857930e+02 3.3511786e+03 - 2.0448618e+02 -1.8843914e+02 3.3522694e+03 - 1.8806774e+02 -1.6797556e+02 3.3532515e+03 - 1.7111571e+02 -1.4726651e+02 3.3541262e+03 - 1.5365464e+02 -1.2638416e+02 3.3548948e+03 - 1.3571052e+02 -1.0539544e+02 3.3555584e+03 - 1.1731085e+02 -8.4362624e+01 3.3561180e+03 - 9.8484745e+01 -6.3343690e+01 3.3565745e+03 - 7.9263068e+01 -4.2392757e+01 3.3569288e+03 - 5.9678539e+01 -2.1560419e+01 3.3571814e+03 - 3.9765877e+01 -8.9404417e-01 3.3573328e+03 - 1.9561953e+01 1.9561953e+01 3.3573833e+03 - -8.9404417e-01 3.9765877e+01 3.3573328e+03 - -2.1560419e+01 5.9678539e+01 3.3571814e+03 - -4.2392757e+01 7.9263068e+01 3.3569288e+03 - -6.3343690e+01 9.8484745e+01 3.3565745e+03 - -8.4362624e+01 1.1731085e+02 3.3561180e+03 - -1.0539544e+02 1.3571052e+02 3.3555584e+03 - -1.2638416e+02 1.5365464e+02 3.3548948e+03 - -1.4726651e+02 1.7111571e+02 3.3541262e+03 - -1.6797556e+02 1.8806774e+02 3.3532515e+03 - -1.8843914e+02 2.0448618e+02 3.3522694e+03 - -2.0857930e+02 2.2034782e+02 3.3511786e+03 - -2.2831169e+02 2.3563072e+02 3.3499777e+03 - -2.4754479e+02 2.5031412e+02 3.3486656e+03 - -2.6617912e+02 2.6437845e+02 3.3472409e+03 - -2.8410634e+02 2.7780524e+02 3.3457027e+03 - -3.0120828e+02 2.9057716e+02 3.3440501e+03 - -3.1735580e+02 3.0267800e+02 3.3422826e+03 - -3.3240773e+02 3.1409274e+02 3.3404002e+03 - -3.4620963e+02 3.2480767e+02 3.3384034e+03 - -3.5859263e+02 3.3481053e+02 3.3362936e+03 - -3.6937238e+02 3.4409073e+02 3.3340732e+03 - -3.7834813e+02 3.5263972e+02 3.3317457e+03 - -3.8530220e+02 3.6045138e+02 3.3293164e+03 - -3.9000005e+02 3.6752262e+02 3.3267924e+03 - -3.9219122e+02 3.7385403e+02 3.3241833e+03 - -3.9161159e+02 3.7945081e+02 3.3215014e+03 - -3.8798732e+02 3.8432372e+02 3.3187625e+03 - -3.8104132e+02 3.8849028e+02 3.3159864e+03 - -3.7050252e+02 3.9197592e+02 3.3131973e+03 - -3.5611882e+02 3.9481519e+02 3.3104243e+03 - -3.3767411e+02 3.9705270e+02 3.3077021e+03 - -3.1500918e+02 3.9874373e+02 3.3050705e+03 - -2.8804627e+02 3.9995396e+02 3.3025744e+03 - -2.5681538e+02 4.0075838e+02 3.3002628e+03 - -2.2147986e+02 4.0123874e+02 3.2981870e+03 - -1.8235731e+02 4.0147968e+02 3.2963990e+03 - -1.3993138e+02 4.0156337e+02 3.2949479e+03 - -9.4849714e+01 4.0156336e+02 3.2938768e+03 - -4.7905231e+01 4.0153813e+02 3.2932196e+03 - -7.2201409e-09 4.0152538e+02 3.2929981e+03 - 4.7905231e+01 4.0153813e+02 3.2932196e+03 - 9.4849714e+01 4.0156336e+02 3.2938768e+03 - 1.3993138e+02 4.0156337e+02 3.2949479e+03 - 1.8235731e+02 4.0147968e+02 3.2963990e+03 - 2.2147986e+02 4.0123874e+02 3.2981870e+03 - 2.5681538e+02 4.0075838e+02 3.3002628e+03 - 2.8804627e+02 3.9995396e+02 3.3025744e+03 - 3.1500918e+02 3.9874373e+02 3.3050705e+03 - 3.3767411e+02 3.9705270e+02 3.3077021e+03 - 3.5611882e+02 3.9481519e+02 3.3104243e+03 - 3.7050252e+02 3.9197592e+02 3.3131973e+03 - 3.8104132e+02 3.8849028e+02 3.3159864e+03 - 3.8798732e+02 3.8432372e+02 3.3187625e+03 - 3.9161159e+02 3.7945081e+02 3.3215014e+03 - 3.9219122e+02 3.7385403e+02 3.3241833e+03 - 3.9000005e+02 3.6752262e+02 3.3267924e+03 - 3.8530220e+02 3.6045138e+02 3.3293164e+03 - 3.7834813e+02 3.5263972e+02 3.3317457e+03 - 3.6937238e+02 3.4409073e+02 3.3340732e+03 - 3.5859263e+02 3.3481053e+02 3.3362936e+03 - 3.4620963e+02 3.2480767e+02 3.3384034e+03 - 3.3240773e+02 3.1409274e+02 3.3404002e+03 - 3.1735580e+02 3.0267800e+02 3.3422826e+03 - 3.0120828e+02 2.9057716e+02 3.3440501e+03 - 2.8410634e+02 2.7780524e+02 3.3457027e+03 - 2.6617912e+02 2.6437845e+02 3.3472409e+03 - 2.4754479e+02 2.5031412e+02 3.3486656e+03 - 2.2831169e+02 2.3563072e+02 3.3499777e+03 - 2.0857930e+02 2.2034782e+02 3.3511786e+03 - 1.8843914e+02 2.0448618e+02 3.3522694e+03 - 1.6797556e+02 1.8806774e+02 3.3532515e+03 - 1.4726651e+02 1.7111571e+02 3.3541262e+03 - 1.2638416e+02 1.5365464e+02 3.3548948e+03 - 1.0539544e+02 1.3571052e+02 3.3555584e+03 - 8.4362624e+01 1.1731085e+02 3.3561180e+03 - 6.3343690e+01 9.8484745e+01 3.3565745e+03 - 4.2392757e+01 7.9263068e+01 3.3569288e+03 - 2.1560419e+01 5.9678539e+01 3.3571814e+03 - 8.9404417e-01 3.9765877e+01 3.3573328e+03 - -1.9561953e+01 1.9561953e+01 3.3573833e+03 - -3.9765877e+01 -8.9404417e-01 3.3573328e+03 - -5.9678539e+01 -2.1560419e+01 3.3571814e+03 - -7.9263068e+01 -4.2392757e+01 3.3569288e+03 - -9.8484745e+01 -6.3343690e+01 3.3565745e+03 - -1.1731085e+02 -8.4362624e+01 3.3561180e+03 - -1.3571052e+02 -1.0539544e+02 3.3555584e+03 - -1.5365464e+02 -1.2638416e+02 3.3548948e+03 - -1.7111571e+02 -1.4726651e+02 3.3541262e+03 - -1.8806774e+02 -1.6797556e+02 3.3532515e+03 - -2.0448618e+02 -1.8843914e+02 3.3522694e+03 - -2.2034782e+02 -2.0857930e+02 3.3511786e+03 - -2.3563072e+02 -2.2831169e+02 3.3499777e+03 - -2.5031412e+02 -2.4754479e+02 3.3486656e+03 - -2.6437845e+02 -2.6617912e+02 3.3472409e+03 - -2.7780524e+02 -2.8410634e+02 3.3457027e+03 - -2.9057716e+02 -3.0120828e+02 3.3440501e+03 - -3.0267800e+02 -3.1735580e+02 3.3422826e+03 - -3.1409274e+02 -3.3240773e+02 3.3404002e+03 - -3.2480767e+02 -3.4620963e+02 3.3384034e+03 - -3.3481053e+02 -3.5859263e+02 3.3362936e+03 - -3.4409073e+02 -3.6937238e+02 3.3340732e+03 - -3.5263972e+02 -3.7834813e+02 3.3317457e+03 - -3.6045138e+02 -3.8530220e+02 3.3293164e+03 - -3.6752262e+02 -3.9000005e+02 3.3267924e+03 - -3.7385403e+02 -3.9219122e+02 3.3241833e+03 - -3.7945081e+02 -3.9161159e+02 3.3215014e+03 - -3.8432372e+02 -3.8798732e+02 3.3187625e+03 - -3.8849028e+02 -3.8104132e+02 3.3159864e+03 - -3.9197592e+02 -3.7050252e+02 3.3131973e+03 - -3.9481519e+02 -3.5611882e+02 3.3104243e+03 - -3.9705270e+02 -3.3767411e+02 3.3077021e+03 - -3.9874373e+02 -3.1500918e+02 3.3050705e+03 - -3.9995396e+02 -2.8804627e+02 3.3025744e+03 - -4.0075838e+02 -2.5681538e+02 3.3002628e+03 - -4.0123874e+02 -2.2147986e+02 3.2981870e+03 - -4.0147968e+02 -1.8235731e+02 3.2963990e+03 - -4.0156337e+02 -1.3993138e+02 3.2949479e+03 - -4.0156336e+02 -9.4849714e+01 3.2938768e+03 - -4.0153813e+02 -4.7905231e+01 3.2932196e+03 - -4.0152538e+02 0.0000000e+00 3.2929981e+03 - -4.0153813e+02 4.7905231e+01 3.2932196e+03 - -4.0156336e+02 9.4849714e+01 3.2938768e+03 - -4.0156337e+02 1.3993138e+02 3.2949479e+03 - -4.0147968e+02 1.8235731e+02 3.2963990e+03 - -4.0123874e+02 2.2147986e+02 3.2981870e+03 - -4.0075838e+02 2.5681538e+02 3.3002628e+03 - -3.9995396e+02 2.8804627e+02 3.3025744e+03 - -3.9874373e+02 3.1500918e+02 3.3050705e+03 - -3.9705270e+02 3.3767411e+02 3.3077021e+03 - -3.9481519e+02 3.5611882e+02 3.3104243e+03 - -3.9197592e+02 3.7050252e+02 3.3131973e+03 - -3.8849028e+02 3.8104132e+02 3.3159864e+03 - -3.8432372e+02 3.8798732e+02 3.3187625e+03 - -3.7945081e+02 3.9161159e+02 3.3215014e+03 - -3.7385403e+02 3.9219122e+02 3.3241833e+03 - -3.6752262e+02 3.9000005e+02 3.3267924e+03 - -3.6045138e+02 3.8530220e+02 3.3293164e+03 - -3.5263972e+02 3.7834813e+02 3.3317457e+03 - -3.4409073e+02 3.6937238e+02 3.3340732e+03 - -3.3481053e+02 3.5859263e+02 3.3362936e+03 - -3.2480767e+02 3.4620963e+02 3.3384034e+03 - -3.1409274e+02 3.3240773e+02 3.3404002e+03 - -3.0267800e+02 3.1735580e+02 3.3422826e+03 - -2.9057716e+02 3.0120828e+02 3.3440501e+03 - -2.7780524e+02 2.8410634e+02 3.3457027e+03 - -2.6437845e+02 2.6617912e+02 3.3472409e+03 - -2.5031412e+02 2.4754479e+02 3.3486656e+03 - -2.3563072e+02 2.2831169e+02 3.3499777e+03 - -2.2034782e+02 2.0857930e+02 3.3511786e+03 - -2.0448618e+02 1.8843914e+02 3.3522694e+03 - -1.8806774e+02 1.6797556e+02 3.3532515e+03 - -1.7111571e+02 1.4726651e+02 3.3541262e+03 - -1.5365464e+02 1.2638416e+02 3.3548948e+03 - -1.3571052e+02 1.0539544e+02 3.3555584e+03 - -1.1731085e+02 8.4362624e+01 3.3561180e+03 - -9.8484745e+01 6.3343690e+01 3.3565745e+03 - -7.9263068e+01 4.2392757e+01 3.3569288e+03 - -5.9678539e+01 2.1560419e+01 3.3571814e+03 - -3.9765877e+01 8.9404417e-01 3.3573328e+03 - -1.9561953e+01 -1.9561953e+01 3.3573833e+03 - 8.9404417e-01 -3.9765877e+01 3.3573328e+03 - 2.1560419e+01 -5.9678539e+01 3.3571814e+03 - 4.2392757e+01 -7.9263068e+01 3.3569288e+03 - 6.3343690e+01 -9.8484745e+01 3.3565745e+03 - 8.4362624e+01 -1.1731085e+02 3.3561180e+03 - 1.0539544e+02 -1.3571052e+02 3.3555584e+03 - 1.2638416e+02 -1.5365464e+02 3.3548948e+03 - 1.4726651e+02 -1.7111571e+02 3.3541262e+03 - 1.6797556e+02 -1.8806774e+02 3.3532515e+03 - 1.8843914e+02 -2.0448618e+02 3.3522694e+03 - 2.0857930e+02 -2.2034782e+02 3.3511786e+03 - 2.2831169e+02 -2.3563072e+02 3.3499777e+03 - 2.4754479e+02 -2.5031412e+02 3.3486656e+03 - 2.6617912e+02 -2.6437845e+02 3.3472409e+03 - 2.8410634e+02 -2.7780524e+02 3.3457027e+03 - 3.0120828e+02 -2.9057716e+02 3.3440501e+03 - 3.1735580e+02 -3.0267800e+02 3.3422826e+03 - 3.3240773e+02 -3.1409274e+02 3.3404002e+03 - 3.4620963e+02 -3.2480767e+02 3.3384034e+03 - 3.5859263e+02 -3.3481053e+02 3.3362936e+03 - 3.6937238e+02 -3.4409073e+02 3.3340732e+03 - 3.7834813e+02 -3.5263972e+02 3.3317457e+03 - 3.8530220e+02 -3.6045138e+02 3.3293164e+03 - 3.9000005e+02 -3.6752262e+02 3.3267924e+03 - 3.9219122e+02 -3.7385403e+02 3.3241833e+03 - 3.9161159e+02 -3.7945081e+02 3.3215014e+03 - 3.8798732e+02 -3.8432372e+02 3.3187625e+03 - 3.8104132e+02 -3.8849028e+02 3.3159864e+03 - 3.7050252e+02 -3.9197592e+02 3.3131973e+03 - 3.5611882e+02 -3.9481519e+02 3.3104243e+03 - 3.3767411e+02 -3.9705270e+02 3.3077021e+03 - 3.1500918e+02 -3.9874373e+02 3.3050705e+03 - 2.8804627e+02 -3.9995396e+02 3.3025744e+03 - 2.5681538e+02 -4.0075838e+02 3.3002628e+03 - 2.2147986e+02 -4.0123874e+02 3.2981870e+03 - 1.8235731e+02 -4.0147968e+02 3.2963990e+03 - 1.3993138e+02 -4.0156337e+02 3.2949479e+03 - 9.4849714e+01 -4.0156336e+02 3.2938768e+03 - 4.7905231e+01 -4.0153813e+02 3.2932196e+03 - 2.4067136e-09 -4.0152538e+02 3.2929981e+03 - -4.7905231e+01 -4.0153813e+02 3.2932196e+03 - -9.4849714e+01 -4.0156336e+02 3.2938768e+03 - -1.3993138e+02 -4.0156337e+02 3.2949479e+03 - -1.8235731e+02 -4.0147968e+02 3.2963990e+03 - -2.2147986e+02 -4.0123874e+02 3.2981870e+03 - -2.5681538e+02 -4.0075838e+02 3.3002628e+03 - -2.8804627e+02 -3.9995396e+02 3.3025744e+03 - -3.1500918e+02 -3.9874373e+02 3.3050705e+03 - -3.3767411e+02 -3.9705270e+02 3.3077021e+03 - -3.5611882e+02 -3.9481519e+02 3.3104243e+03 - -3.7050252e+02 -3.9197592e+02 3.3131973e+03 - -3.8104132e+02 -3.8849028e+02 3.3159864e+03 - -3.8798732e+02 -3.8432372e+02 3.3187625e+03 - -3.9161159e+02 -3.7945081e+02 3.3215014e+03 - -3.9219122e+02 -3.7385403e+02 3.3241833e+03 - -3.9000005e+02 -3.6752262e+02 3.3267924e+03 - -3.8530220e+02 -3.6045138e+02 3.3293164e+03 - -3.7834813e+02 -3.5263972e+02 3.3317457e+03 - -3.6937238e+02 -3.4409073e+02 3.3340732e+03 - -3.5859263e+02 -3.3481053e+02 3.3362936e+03 - -3.4620963e+02 -3.2480767e+02 3.3384034e+03 - -3.3240773e+02 -3.1409274e+02 3.3404002e+03 - -3.1735580e+02 -3.0267800e+02 3.3422826e+03 - -3.0120828e+02 -2.9057716e+02 3.3440501e+03 - -2.8410634e+02 -2.7780524e+02 3.3457027e+03 - -2.6617912e+02 -2.6437845e+02 3.3472409e+03 - -2.4754479e+02 -2.5031412e+02 3.3486656e+03 - -2.2831169e+02 -2.3563072e+02 3.3499777e+03 - -2.0857930e+02 -2.2034782e+02 3.3511786e+03 - -1.8843914e+02 -2.0448618e+02 3.3522694e+03 - -1.6797556e+02 -1.8806774e+02 3.3532515e+03 - -1.4726651e+02 -1.7111571e+02 3.3541262e+03 - -1.2638416e+02 -1.5365464e+02 3.3548948e+03 - -1.0539544e+02 -1.3571052e+02 3.3555584e+03 - -8.4362624e+01 -1.1731085e+02 3.3561180e+03 - -6.3343690e+01 -9.8484745e+01 3.3565745e+03 - -4.2392757e+01 -7.9263068e+01 3.3569288e+03 - -2.1560419e+01 -5.9678539e+01 3.3571814e+03 - -8.9404418e-01 -3.9765877e+01 3.3573328e+03 - 1.9561953e+01 -1.9561953e+01 3.3573833e+03 - 3.9765877e+01 8.9404418e-01 3.3573328e+03 - 5.9678539e+01 2.1560419e+01 3.3571814e+03 - 7.9263068e+01 4.2392757e+01 3.3569288e+03 - 9.8484745e+01 6.3343690e+01 3.3565745e+03 - 1.1731085e+02 8.4362624e+01 3.3561180e+03 - 1.3571052e+02 1.0539544e+02 3.3555584e+03 - 1.5365464e+02 1.2638416e+02 3.3548948e+03 - 1.7111571e+02 1.4726651e+02 3.3541262e+03 - 1.8806774e+02 1.6797556e+02 3.3532515e+03 - 2.0448618e+02 1.8843914e+02 3.3522694e+03 - 2.2034782e+02 2.0857930e+02 3.3511786e+03 - 2.3563072e+02 2.2831169e+02 3.3499777e+03 - 2.5031412e+02 2.4754479e+02 3.3486656e+03 - 2.6437845e+02 2.6617912e+02 3.3472409e+03 - 2.7780524e+02 2.8410634e+02 3.3457027e+03 - 2.9057716e+02 3.0120828e+02 3.3440501e+03 - 3.0267800e+02 3.1735580e+02 3.3422826e+03 - 3.1409274e+02 3.3240773e+02 3.3404002e+03 - 3.2480767e+02 3.4620963e+02 3.3384034e+03 - 3.3481053e+02 3.5859263e+02 3.3362936e+03 - 3.4409073e+02 3.6937238e+02 3.3340732e+03 - 3.5263972e+02 3.7834813e+02 3.3317457e+03 - 3.6045138e+02 3.8530220e+02 3.3293164e+03 - 3.6752262e+02 3.9000005e+02 3.3267924e+03 - 3.7385403e+02 3.9219122e+02 3.3241833e+03 - 3.7945081e+02 3.9161159e+02 3.3215014e+03 - 3.8432372e+02 3.8798732e+02 3.3187625e+03 - 3.8849028e+02 3.8104132e+02 3.3159864e+03 - 3.9197592e+02 3.7050252e+02 3.3131973e+03 - 3.9481519e+02 3.5611882e+02 3.3104243e+03 - 3.9705270e+02 3.3767411e+02 3.3077021e+03 - 3.9874373e+02 3.1500918e+02 3.3050705e+03 - 3.9995396e+02 2.8804627e+02 3.3025744e+03 - 4.0075838e+02 2.5681538e+02 3.3002628e+03 - 4.0123874e+02 2.2147986e+02 3.2981870e+03 - 4.0147968e+02 1.8235731e+02 3.2963990e+03 - 4.0156337e+02 1.3993138e+02 3.2949479e+03 - 4.0156336e+02 9.4849714e+01 3.2938768e+03 - 4.0153813e+02 4.7905231e+01 3.2932196e+03 - 4.0152538e+02 2.4067136e-09 3.2929981e+03 - 4.9712652e+02 -2.4067136e-09 3.2454542e+03 - 4.9712297e+02 -4.8364715e+01 3.2456975e+03 - 4.9709898e+02 -9.5690422e+01 3.2464185e+03 - 4.9701602e+02 -1.4100446e+02 3.2475916e+03 - 4.9681447e+02 -1.8345721e+02 3.2491767e+03 - 4.9641961e+02 -2.2236185e+02 3.2511231e+03 - 4.9574831e+02 -2.5721403e+02 3.2533735e+03 - 4.9471538e+02 -2.8769233e+02 3.2558684e+03 - 4.9323898e+02 -3.1364337e+02 3.2585488e+03 - 4.9124443e+02 -3.3505699e+02 3.2613597e+03 - 4.8866660e+02 -3.5203690e+02 3.2642511e+03 - 4.8545096e+02 -3.6477105e+02 3.2671796e+03 - 4.8155358e+02 -3.7350464e+02 3.2701080e+03 - 4.7694049e+02 -3.7851745e+02 3.2730055e+03 - 4.7158662e+02 -3.8010587e+02 3.2758474e+03 - 4.6547456e+02 -3.7856943e+02 3.2786138e+03 - 4.5859338e+02 -3.7420137e+02 3.2812895e+03 - 4.5093749e+02 -3.6728242e+02 3.2838630e+03 - 4.4250565e+02 -3.5807701e+02 3.2863260e+03 - 4.3330014e+02 -3.4683136e+02 3.2886727e+03 - 4.2332612e+02 -3.3377291e+02 3.2908994e+03 - 4.1259111e+02 -3.1911052e+02 3.2930039e+03 - 4.0110455e+02 -3.0303533e+02 3.2949856e+03 - 3.8887757e+02 -2.8572186e+02 3.2968445e+03 - 3.7592277e+02 -2.6732933e+02 3.2985816e+03 - 3.6225405e+02 -2.4800298e+02 3.3001983e+03 - 3.4788658e+02 -2.2787541e+02 3.3016965e+03 - 3.3283672e+02 -2.0706782e+02 3.3030782e+03 - 3.1712204e+02 -1.8569116e+02 3.3043458e+03 - 3.0076135e+02 -1.6384726e+02 3.3055016e+03 - 2.8377469e+02 -1.4162968e+02 3.3065478e+03 - 2.6618343e+02 -1.1912466e+02 3.3074868e+03 - 2.4801032e+02 -9.6411822e+01 3.3083206e+03 - 2.2927957e+02 -7.3564872e+01 3.3090513e+03 - 2.1001691e+02 -5.0652160e+01 3.3096807e+03 - 1.9024975e+02 -2.7737213e+01 3.3102104e+03 - 1.7000719e+02 -4.8791854e+00 3.3106419e+03 - 1.4932020e+02 1.7866745e+01 3.3109762e+03 - 1.2822173e+02 4.0449031e+01 3.3112143e+03 - 1.0674684e+02 6.2819451e+01 3.3113570e+03 - 8.4932837e+01 8.4932837e+01 3.3114045e+03 - 6.2819451e+01 1.0674684e+02 3.3113570e+03 - 4.0449031e+01 1.2822173e+02 3.3112143e+03 - 1.7866745e+01 1.4932020e+02 3.3109762e+03 - -4.8791854e+00 1.7000719e+02 3.3106419e+03 - -2.7737213e+01 1.9024975e+02 3.3102104e+03 - -5.0652160e+01 2.1001691e+02 3.3096807e+03 - -7.3564872e+01 2.2927957e+02 3.3090513e+03 - -9.6411822e+01 2.4801032e+02 3.3083206e+03 - -1.1912466e+02 2.6618343e+02 3.3074868e+03 - -1.4162968e+02 2.8377469e+02 3.3065478e+03 - -1.6384726e+02 3.0076135e+02 3.3055016e+03 - -1.8569116e+02 3.1712204e+02 3.3043458e+03 - -2.0706782e+02 3.3283672e+02 3.3030782e+03 - -2.2787541e+02 3.4788658e+02 3.3016965e+03 - -2.4800298e+02 3.6225405e+02 3.3001983e+03 - -2.6732933e+02 3.7592277e+02 3.2985816e+03 - -2.8572186e+02 3.8887757e+02 3.2968445e+03 - -3.0303533e+02 4.0110455e+02 3.2949856e+03 - -3.1911052e+02 4.1259111e+02 3.2930039e+03 - -3.3377291e+02 4.2332612e+02 3.2908994e+03 - -3.4683136e+02 4.3330014e+02 3.2886727e+03 - -3.5807701e+02 4.4250565e+02 3.2863260e+03 - -3.6728242e+02 4.5093749e+02 3.2838630e+03 - -3.7420137e+02 4.5859338e+02 3.2812895e+03 - -3.7856943e+02 4.6547456e+02 3.2786138e+03 - -3.8010587e+02 4.7158662e+02 3.2758474e+03 - -3.7851745e+02 4.7694049e+02 3.2730055e+03 - -3.7350464e+02 4.8155358e+02 3.2701080e+03 - -3.6477105e+02 4.8545096e+02 3.2671796e+03 - -3.5203690e+02 4.8866660e+02 3.2642511e+03 - -3.3505699e+02 4.9124443e+02 3.2613597e+03 - -3.1364337e+02 4.9323898e+02 3.2585488e+03 - -2.8769233e+02 4.9471538e+02 3.2558684e+03 - -2.5721403e+02 4.9574831e+02 3.2533735e+03 - -2.2236185e+02 4.9641961e+02 3.2511231e+03 - -1.8345721e+02 4.9681447e+02 3.2491767e+03 - -1.4100446e+02 4.9701602e+02 3.2475916e+03 - -9.5690422e+01 4.9709898e+02 3.2464185e+03 - -4.8364715e+01 4.9712297e+02 3.2456975e+03 - -2.4067136e-09 4.9712652e+02 3.2454542e+03 - 4.8364715e+01 4.9712297e+02 3.2456975e+03 - 9.5690422e+01 4.9709898e+02 3.2464185e+03 - 1.4100446e+02 4.9701602e+02 3.2475916e+03 - 1.8345721e+02 4.9681447e+02 3.2491767e+03 - 2.2236185e+02 4.9641961e+02 3.2511231e+03 - 2.5721403e+02 4.9574831e+02 3.2533735e+03 - 2.8769233e+02 4.9471538e+02 3.2558684e+03 - 3.1364337e+02 4.9323898e+02 3.2585488e+03 - 3.3505699e+02 4.9124443e+02 3.2613597e+03 - 3.5203690e+02 4.8866660e+02 3.2642511e+03 - 3.6477105e+02 4.8545096e+02 3.2671796e+03 - 3.7350464e+02 4.8155358e+02 3.2701080e+03 - 3.7851745e+02 4.7694049e+02 3.2730055e+03 - 3.8010587e+02 4.7158662e+02 3.2758474e+03 - 3.7856943e+02 4.6547456e+02 3.2786138e+03 - 3.7420137e+02 4.5859338e+02 3.2812895e+03 - 3.6728242e+02 4.5093749e+02 3.2838630e+03 - 3.5807701e+02 4.4250565e+02 3.2863260e+03 - 3.4683136e+02 4.3330014e+02 3.2886727e+03 - 3.3377291e+02 4.2332612e+02 3.2908994e+03 - 3.1911052e+02 4.1259111e+02 3.2930039e+03 - 3.0303533e+02 4.0110455e+02 3.2949856e+03 - 2.8572186e+02 3.8887757e+02 3.2968445e+03 - 2.6732933e+02 3.7592277e+02 3.2985816e+03 - 2.4800298e+02 3.6225405e+02 3.3001983e+03 - 2.2787541e+02 3.4788658e+02 3.3016965e+03 - 2.0706782e+02 3.3283672e+02 3.3030782e+03 - 1.8569116e+02 3.1712204e+02 3.3043458e+03 - 1.6384726e+02 3.0076135e+02 3.3055016e+03 - 1.4162968e+02 2.8377469e+02 3.3065478e+03 - 1.1912466e+02 2.6618343e+02 3.3074868e+03 - 9.6411822e+01 2.4801032e+02 3.3083206e+03 - 7.3564872e+01 2.2927957e+02 3.3090513e+03 - 5.0652160e+01 2.1001691e+02 3.3096807e+03 - 2.7737213e+01 1.9024975e+02 3.3102104e+03 - 4.8791854e+00 1.7000719e+02 3.3106419e+03 - -1.7866745e+01 1.4932020e+02 3.3109762e+03 - -4.0449031e+01 1.2822173e+02 3.3112143e+03 - -6.2819451e+01 1.0674684e+02 3.3113570e+03 - -8.4932837e+01 8.4932837e+01 3.3114045e+03 - -1.0674684e+02 6.2819451e+01 3.3113570e+03 - -1.2822173e+02 4.0449031e+01 3.3112143e+03 - -1.4932020e+02 1.7866745e+01 3.3109762e+03 - -1.7000719e+02 -4.8791854e+00 3.3106419e+03 - -1.9024975e+02 -2.7737213e+01 3.3102104e+03 - -2.1001691e+02 -5.0652160e+01 3.3096807e+03 - -2.2927957e+02 -7.3564872e+01 3.3090513e+03 - -2.4801032e+02 -9.6411822e+01 3.3083206e+03 - -2.6618343e+02 -1.1912466e+02 3.3074868e+03 - -2.8377469e+02 -1.4162968e+02 3.3065478e+03 - -3.0076135e+02 -1.6384726e+02 3.3055016e+03 - -3.1712204e+02 -1.8569116e+02 3.3043458e+03 - -3.3283672e+02 -2.0706782e+02 3.3030782e+03 - -3.4788658e+02 -2.2787541e+02 3.3016965e+03 - -3.6225405e+02 -2.4800298e+02 3.3001983e+03 - -3.7592277e+02 -2.6732933e+02 3.2985816e+03 - -3.8887757e+02 -2.8572186e+02 3.2968445e+03 - -4.0110455e+02 -3.0303533e+02 3.2949856e+03 - -4.1259111e+02 -3.1911052e+02 3.2930039e+03 - -4.2332612e+02 -3.3377291e+02 3.2908994e+03 - -4.3330014e+02 -3.4683136e+02 3.2886727e+03 - -4.4250565e+02 -3.5807701e+02 3.2863260e+03 - -4.5093749e+02 -3.6728242e+02 3.2838630e+03 - -4.5859338e+02 -3.7420137e+02 3.2812895e+03 - -4.6547456e+02 -3.7856943e+02 3.2786138e+03 - -4.7158662e+02 -3.8010587e+02 3.2758474e+03 - -4.7694049e+02 -3.7851745e+02 3.2730055e+03 - -4.8155358e+02 -3.7350464e+02 3.2701080e+03 - -4.8545096e+02 -3.6477105e+02 3.2671796e+03 - -4.8866660e+02 -3.5203690e+02 3.2642511e+03 - -4.9124443e+02 -3.3505699e+02 3.2613597e+03 - -4.9323898e+02 -3.1364337e+02 3.2585488e+03 - -4.9471538e+02 -2.8769233e+02 3.2558684e+03 - -4.9574831e+02 -2.5721403e+02 3.2533735e+03 - -4.9641961e+02 -2.2236185e+02 3.2511231e+03 - -4.9681447e+02 -1.8345721e+02 3.2491767e+03 - -4.9701602e+02 -1.4100446e+02 3.2475916e+03 - -4.9709898e+02 -9.5690422e+01 3.2464185e+03 - -4.9712297e+02 -4.8364715e+01 3.2456975e+03 - -4.9712652e+02 2.4067136e-09 3.2454542e+03 - -4.9712297e+02 4.8364715e+01 3.2456975e+03 - -4.9709898e+02 9.5690422e+01 3.2464185e+03 - -4.9701602e+02 1.4100446e+02 3.2475916e+03 - -4.9681447e+02 1.8345721e+02 3.2491767e+03 - -4.9641961e+02 2.2236185e+02 3.2511231e+03 - -4.9574831e+02 2.5721403e+02 3.2533735e+03 - -4.9471538e+02 2.8769233e+02 3.2558684e+03 - -4.9323898e+02 3.1364337e+02 3.2585488e+03 - -4.9124443e+02 3.3505699e+02 3.2613597e+03 - -4.8866660e+02 3.5203690e+02 3.2642511e+03 - -4.8545096e+02 3.6477105e+02 3.2671796e+03 - -4.8155358e+02 3.7350464e+02 3.2701080e+03 - -4.7694049e+02 3.7851745e+02 3.2730055e+03 - -4.7158662e+02 3.8010587e+02 3.2758474e+03 - -4.6547456e+02 3.7856943e+02 3.2786138e+03 - -4.5859338e+02 3.7420137e+02 3.2812895e+03 - -4.5093749e+02 3.6728242e+02 3.2838630e+03 - -4.4250565e+02 3.5807701e+02 3.2863260e+03 - -4.3330014e+02 3.4683136e+02 3.2886727e+03 - -4.2332612e+02 3.3377291e+02 3.2908994e+03 - -4.1259111e+02 3.1911052e+02 3.2930039e+03 - -4.0110455e+02 3.0303533e+02 3.2949856e+03 - -3.8887757e+02 2.8572186e+02 3.2968445e+03 - -3.7592277e+02 2.6732933e+02 3.2985816e+03 - -3.6225405e+02 2.4800298e+02 3.3001983e+03 - -3.4788658e+02 2.2787541e+02 3.3016965e+03 - -3.3283672e+02 2.0706782e+02 3.3030782e+03 - -3.1712204e+02 1.8569116e+02 3.3043458e+03 - -3.0076135e+02 1.6384726e+02 3.3055016e+03 - -2.8377469e+02 1.4162968e+02 3.3065478e+03 - -2.6618343e+02 1.1912466e+02 3.3074868e+03 - -2.4801032e+02 9.6411822e+01 3.3083206e+03 - -2.2927957e+02 7.3564872e+01 3.3090513e+03 - -2.1001691e+02 5.0652160e+01 3.3096807e+03 - -1.9024975e+02 2.7737213e+01 3.3102104e+03 - -1.7000719e+02 4.8791854e+00 3.3106419e+03 - -1.4932020e+02 -1.7866745e+01 3.3109762e+03 - -1.2822173e+02 -4.0449031e+01 3.3112143e+03 - -1.0674684e+02 -6.2819451e+01 3.3113570e+03 - -8.4932837e+01 -8.4932837e+01 3.3114045e+03 - -6.2819451e+01 -1.0674684e+02 3.3113570e+03 - -4.0449031e+01 -1.2822173e+02 3.3112143e+03 - -1.7866745e+01 -1.4932020e+02 3.3109762e+03 - 4.8791854e+00 -1.7000719e+02 3.3106419e+03 - 2.7737213e+01 -1.9024975e+02 3.3102104e+03 - 5.0652160e+01 -2.1001691e+02 3.3096807e+03 - 7.3564872e+01 -2.2927957e+02 3.3090513e+03 - 9.6411822e+01 -2.4801032e+02 3.3083206e+03 - 1.1912466e+02 -2.6618343e+02 3.3074868e+03 - 1.4162968e+02 -2.8377469e+02 3.3065478e+03 - 1.6384726e+02 -3.0076135e+02 3.3055016e+03 - 1.8569116e+02 -3.1712204e+02 3.3043458e+03 - 2.0706782e+02 -3.3283672e+02 3.3030782e+03 - 2.2787541e+02 -3.4788658e+02 3.3016965e+03 - 2.4800298e+02 -3.6225405e+02 3.3001983e+03 - 2.6732933e+02 -3.7592277e+02 3.2985816e+03 - 2.8572186e+02 -3.8887757e+02 3.2968445e+03 - 3.0303533e+02 -4.0110455e+02 3.2949856e+03 - 3.1911052e+02 -4.1259111e+02 3.2930039e+03 - 3.3377291e+02 -4.2332612e+02 3.2908994e+03 - 3.4683136e+02 -4.3330014e+02 3.2886727e+03 - 3.5807701e+02 -4.4250565e+02 3.2863260e+03 - 3.6728242e+02 -4.5093749e+02 3.2838630e+03 - 3.7420137e+02 -4.5859338e+02 3.2812895e+03 - 3.7856943e+02 -4.6547456e+02 3.2786138e+03 - 3.8010587e+02 -4.7158662e+02 3.2758474e+03 - 3.7851745e+02 -4.7694049e+02 3.2730055e+03 - 3.7350464e+02 -4.8155358e+02 3.2701080e+03 - 3.6477105e+02 -4.8545096e+02 3.2671796e+03 - 3.5203690e+02 -4.8866660e+02 3.2642511e+03 - 3.3505699e+02 -4.9124443e+02 3.2613597e+03 - 3.1364337e+02 -4.9323898e+02 3.2585488e+03 - 2.8769233e+02 -4.9471538e+02 3.2558684e+03 - 2.5721403e+02 -4.9574831e+02 3.2533735e+03 - 2.2236185e+02 -4.9641961e+02 3.2511231e+03 - 1.8345721e+02 -4.9681447e+02 3.2491767e+03 - 1.4100446e+02 -4.9701602e+02 3.2475916e+03 - 9.5690422e+01 -4.9709898e+02 3.2464185e+03 - 4.8364715e+01 -4.9712297e+02 3.2456975e+03 - 2.4067136e-09 -4.9712652e+02 3.2454542e+03 - -4.8364715e+01 -4.9712297e+02 3.2456975e+03 - -9.5690422e+01 -4.9709898e+02 3.2464185e+03 - -1.4100446e+02 -4.9701602e+02 3.2475916e+03 - -1.8345721e+02 -4.9681447e+02 3.2491767e+03 - -2.2236185e+02 -4.9641961e+02 3.2511231e+03 - -2.5721403e+02 -4.9574831e+02 3.2533735e+03 - -2.8769233e+02 -4.9471538e+02 3.2558684e+03 - -3.1364337e+02 -4.9323898e+02 3.2585488e+03 - -3.3505699e+02 -4.9124443e+02 3.2613597e+03 - -3.5203690e+02 -4.8866660e+02 3.2642511e+03 - -3.6477105e+02 -4.8545096e+02 3.2671796e+03 - -3.7350464e+02 -4.8155358e+02 3.2701080e+03 - -3.7851745e+02 -4.7694049e+02 3.2730055e+03 - -3.8010587e+02 -4.7158662e+02 3.2758474e+03 - -3.7856943e+02 -4.6547456e+02 3.2786138e+03 - -3.7420137e+02 -4.5859338e+02 3.2812895e+03 - -3.6728242e+02 -4.5093749e+02 3.2838630e+03 - -3.5807701e+02 -4.4250565e+02 3.2863260e+03 - -3.4683136e+02 -4.3330014e+02 3.2886727e+03 - -3.3377291e+02 -4.2332612e+02 3.2908994e+03 - -3.1911052e+02 -4.1259111e+02 3.2930039e+03 - -3.0303533e+02 -4.0110455e+02 3.2949856e+03 - -2.8572186e+02 -3.8887757e+02 3.2968445e+03 - -2.6732933e+02 -3.7592277e+02 3.2985816e+03 - -2.4800298e+02 -3.6225405e+02 3.3001983e+03 - -2.2787541e+02 -3.4788658e+02 3.3016965e+03 - -2.0706782e+02 -3.3283672e+02 3.3030782e+03 - -1.8569116e+02 -3.1712204e+02 3.3043458e+03 - -1.6384726e+02 -3.0076135e+02 3.3055016e+03 - -1.4162968e+02 -2.8377469e+02 3.3065478e+03 - -1.1912466e+02 -2.6618343e+02 3.3074868e+03 - -9.6411822e+01 -2.4801032e+02 3.3083206e+03 - -7.3564872e+01 -2.2927957e+02 3.3090513e+03 - -5.0652160e+01 -2.1001691e+02 3.3096807e+03 - -2.7737213e+01 -1.9024975e+02 3.3102104e+03 - -4.8791854e+00 -1.7000719e+02 3.3106419e+03 - 1.7866745e+01 -1.4932020e+02 3.3109762e+03 - 4.0449031e+01 -1.2822173e+02 3.3112143e+03 - 6.2819451e+01 -1.0674684e+02 3.3113570e+03 - 8.4932837e+01 -8.4932837e+01 3.3114045e+03 - 1.0674684e+02 -6.2819451e+01 3.3113570e+03 - 1.2822173e+02 -4.0449031e+01 3.3112143e+03 - 1.4932020e+02 -1.7866745e+01 3.3109762e+03 - 1.7000719e+02 4.8791854e+00 3.3106419e+03 - 1.9024975e+02 2.7737213e+01 3.3102104e+03 - 2.1001691e+02 5.0652160e+01 3.3096807e+03 - 2.2927957e+02 7.3564872e+01 3.3090513e+03 - 2.4801032e+02 9.6411822e+01 3.3083206e+03 - 2.6618343e+02 1.1912466e+02 3.3074868e+03 - 2.8377469e+02 1.4162968e+02 3.3065478e+03 - 3.0076135e+02 1.6384726e+02 3.3055016e+03 - 3.1712204e+02 1.8569116e+02 3.3043458e+03 - 3.3283672e+02 2.0706782e+02 3.3030782e+03 - 3.4788658e+02 2.2787541e+02 3.3016965e+03 - 3.6225405e+02 2.4800298e+02 3.3001983e+03 - 3.7592277e+02 2.6732933e+02 3.2985816e+03 - 3.8887757e+02 2.8572186e+02 3.2968445e+03 - 4.0110455e+02 3.0303533e+02 3.2949856e+03 - 4.1259111e+02 3.1911052e+02 3.2930039e+03 - 4.2332612e+02 3.3377291e+02 3.2908994e+03 - 4.3330014e+02 3.4683136e+02 3.2886727e+03 - 4.4250565e+02 3.5807701e+02 3.2863260e+03 - 4.5093749e+02 3.6728242e+02 3.2838630e+03 - 4.5859338e+02 3.7420137e+02 3.2812895e+03 - 4.6547456e+02 3.7856943e+02 3.2786138e+03 - 4.7158662e+02 3.8010587e+02 3.2758474e+03 - 4.7694049e+02 3.7851745e+02 3.2730055e+03 - 4.8155358e+02 3.7350464e+02 3.2701080e+03 - 4.8545096e+02 3.6477105e+02 3.2671796e+03 - 4.8866660e+02 3.5203690e+02 3.2642511e+03 - 4.9124443e+02 3.3505699e+02 3.2613597e+03 - 4.9323898e+02 3.1364337e+02 3.2585488e+03 - 4.9471538e+02 2.8769233e+02 3.2558684e+03 - 4.9574831e+02 2.5721403e+02 3.2533735e+03 - 4.9641961e+02 2.2236185e+02 3.2511231e+03 - 4.9681447e+02 1.8345721e+02 3.2491767e+03 - 4.9701602e+02 1.4100446e+02 3.2475916e+03 - 4.9709898e+02 9.5690422e+01 3.2464185e+03 - 4.9712297e+02 4.8364715e+01 3.2456975e+03 - 4.9712652e+02 -2.4067136e-09 3.2454542e+03 - 5.9602100e+02 0.0000000e+00 3.1938273e+03 - 5.9599946e+02 -4.8797408e+01 3.1940944e+03 - 5.9592130e+02 -9.6469539e+01 3.1948850e+03 - 5.9574746e+02 -1.4196644e+02 3.1961687e+03 - 5.9541765e+02 -1.8437730e+02 3.1978982e+03 - 5.9485663e+02 -2.2297434e+02 3.2000137e+03 - 5.9398103e+02 -2.5723323e+02 3.2024487e+03 - 5.9270587e+02 -2.8683139e+02 3.2051342e+03 - 5.9094994e+02 -3.1162927e+02 3.2080032e+03 - 5.8863950e+02 -3.3164093e+02 3.2109937e+03 - 5.8571054e+02 -3.4700027e+02 3.2140505e+03 - 5.8210963e+02 -3.5792773e+02 3.2171263e+03 - 5.7779379e+02 -3.6470073e+02 3.2201815e+03 - 5.7272973e+02 -3.6762909e+02 3.2231842e+03 - 5.6689274e+02 -3.6703618e+02 3.2261091e+03 - 5.6026543e+02 -3.6324508e+02 3.2289369e+03 - 5.5283655e+02 -3.5656909e+02 3.2316534e+03 - 5.4459988e+02 -3.4730579e+02 3.2342484e+03 - 5.3555329e+02 -3.3573358e+02 3.2367154e+03 - 5.2569801e+02 -3.2211024e+02 3.2390502e+03 - 5.1503796e+02 -3.0667265e+02 3.2412511e+03 - 5.0357933e+02 -2.8963746e+02 3.2433179e+03 - 4.9133019e+02 -2.7120219e+02 3.2452517e+03 - 4.7830030e+02 -2.5154665e+02 3.2470545e+03 - 4.6450086e+02 -2.3083445e+02 3.2487290e+03 - 4.4994448e+02 -2.0921452e+02 3.2502784e+03 - 4.3464504e+02 -1.8682260e+02 3.2517060e+03 - 4.1861776e+02 -1.6378257e+02 3.2530156e+03 - 4.0187914e+02 -1.4020775e+02 3.2542108e+03 - 3.8444700e+02 -1.1620198e+02 3.2552952e+03 - 3.6634057e+02 -9.1860700e+01 3.2562722e+03 - 3.4758048e+02 -6.7271772e+01 3.2571454e+03 - 3.2818888e+02 -4.2516315e+01 3.2579177e+03 - 3.0818949e+02 -1.7669380e+01 3.2585921e+03 - 2.8760770e+02 7.1994436e+00 3.2591711e+03 - 2.6647067e+02 3.2025501e+01 3.2596571e+03 - 2.4480740e+02 5.6748611e+01 3.2600520e+03 - 2.2264887e+02 8.1312668e+01 3.2603574e+03 - 2.0002813e+02 1.0566529e+02 3.2605747e+03 - 1.7698047e+02 1.2975752e+02 3.2607046e+03 - 1.5354354e+02 1.5354354e+02 3.2607479e+03 - 1.2975752e+02 1.7698047e+02 3.2607046e+03 - 1.0566529e+02 2.0002813e+02 3.2605747e+03 - 8.1312668e+01 2.2264887e+02 3.2603574e+03 - 5.6748611e+01 2.4480740e+02 3.2600520e+03 - 3.2025501e+01 2.6647067e+02 3.2596571e+03 - 7.1994436e+00 2.8760770e+02 3.2591711e+03 - -1.7669380e+01 3.0818949e+02 3.2585921e+03 - -4.2516315e+01 3.2818888e+02 3.2579177e+03 - -6.7271772e+01 3.4758048e+02 3.2571454e+03 - -9.1860700e+01 3.6634057e+02 3.2562722e+03 - -1.1620198e+02 3.8444700e+02 3.2552952e+03 - -1.4020775e+02 4.0187914e+02 3.2542108e+03 - -1.6378257e+02 4.1861776e+02 3.2530156e+03 - -1.8682260e+02 4.3464504e+02 3.2517060e+03 - -2.0921452e+02 4.4994447e+02 3.2502784e+03 - -2.3083445e+02 4.6450086e+02 3.2487290e+03 - -2.5154665e+02 4.7830030e+02 3.2470545e+03 - -2.7120219e+02 4.9133019e+02 3.2452517e+03 - -2.8963746e+02 5.0357933e+02 3.2433179e+03 - -3.0667265e+02 5.1503796e+02 3.2412511e+03 - -3.2211024e+02 5.2569801e+02 3.2390502e+03 - -3.3573358e+02 5.3555329e+02 3.2367154e+03 - -3.4730579e+02 5.4459988e+02 3.2342484e+03 - -3.5656909e+02 5.5283655e+02 3.2316534e+03 - -3.6324508e+02 5.6026543e+02 3.2289369e+03 - -3.6703618e+02 5.6689274e+02 3.2261091e+03 - -3.6762909e+02 5.7272973e+02 3.2231842e+03 - -3.6470073e+02 5.7779379e+02 3.2201815e+03 - -3.5792773e+02 5.8210963e+02 3.2171263e+03 - -3.4700027e+02 5.8571054e+02 3.2140505e+03 - -3.3164093e+02 5.8863950e+02 3.2109937e+03 - -3.1162927e+02 5.9094994e+02 3.2080032e+03 - -2.8683139e+02 5.9270587e+02 3.2051342e+03 - -2.5723323e+02 5.9398103e+02 3.2024487e+03 - -2.2297434e+02 5.9485663e+02 3.2000137e+03 - -1.8437730e+02 5.9541765e+02 3.1978982e+03 - -1.4196644e+02 5.9574746e+02 3.1961687e+03 - -9.6469539e+01 5.9592130e+02 3.1948850e+03 - -4.8797408e+01 5.9599946e+02 3.1940944e+03 - 0.0000000e+00 5.9602100e+02 3.1938273e+03 - 4.8797408e+01 5.9599946e+02 3.1940944e+03 - 9.6469539e+01 5.9592130e+02 3.1948850e+03 - 1.4196644e+02 5.9574746e+02 3.1961687e+03 - 1.8437730e+02 5.9541765e+02 3.1978982e+03 - 2.2297434e+02 5.9485663e+02 3.2000137e+03 - 2.5723323e+02 5.9398103e+02 3.2024487e+03 - 2.8683139e+02 5.9270587e+02 3.2051342e+03 - 3.1162927e+02 5.9094994e+02 3.2080032e+03 - 3.3164093e+02 5.8863950e+02 3.2109937e+03 - 3.4700027e+02 5.8571054e+02 3.2140505e+03 - 3.5792773e+02 5.8210963e+02 3.2171263e+03 - 3.6470073e+02 5.7779379e+02 3.2201815e+03 - 3.6762909e+02 5.7272973e+02 3.2231842e+03 - 3.6703618e+02 5.6689274e+02 3.2261091e+03 - 3.6324508e+02 5.6026543e+02 3.2289369e+03 - 3.5656909e+02 5.5283655e+02 3.2316534e+03 - 3.4730579e+02 5.4459988e+02 3.2342484e+03 - 3.3573358e+02 5.3555329e+02 3.2367154e+03 - 3.2211024e+02 5.2569801e+02 3.2390502e+03 - 3.0667265e+02 5.1503796e+02 3.2412511e+03 - 2.8963746e+02 5.0357933e+02 3.2433179e+03 - 2.7120219e+02 4.9133019e+02 3.2452517e+03 - 2.5154665e+02 4.7830030e+02 3.2470545e+03 - 2.3083445e+02 4.6450086e+02 3.2487290e+03 - 2.0921452e+02 4.4994448e+02 3.2502784e+03 - 1.8682260e+02 4.3464504e+02 3.2517060e+03 - 1.6378257e+02 4.1861776e+02 3.2530156e+03 - 1.4020775e+02 4.0187914e+02 3.2542108e+03 - 1.1620198e+02 3.8444700e+02 3.2552952e+03 - 9.1860700e+01 3.6634057e+02 3.2562722e+03 - 6.7271772e+01 3.4758048e+02 3.2571454e+03 - 4.2516315e+01 3.2818888e+02 3.2579177e+03 - 1.7669380e+01 3.0818949e+02 3.2585921e+03 - -7.1994436e+00 2.8760770e+02 3.2591711e+03 - -3.2025501e+01 2.6647067e+02 3.2596571e+03 - -5.6748611e+01 2.4480740e+02 3.2600520e+03 - -8.1312668e+01 2.2264887e+02 3.2603574e+03 - -1.0566529e+02 2.0002813e+02 3.2605747e+03 - -1.2975752e+02 1.7698047e+02 3.2607046e+03 - -1.5354354e+02 1.5354354e+02 3.2607479e+03 - -1.7698047e+02 1.2975752e+02 3.2607046e+03 - -2.0002813e+02 1.0566529e+02 3.2605747e+03 - -2.2264887e+02 8.1312668e+01 3.2603574e+03 - -2.4480740e+02 5.6748611e+01 3.2600520e+03 - -2.6647067e+02 3.2025501e+01 3.2596571e+03 - -2.8760770e+02 7.1994436e+00 3.2591711e+03 - -3.0818949e+02 -1.7669380e+01 3.2585921e+03 - -3.2818888e+02 -4.2516315e+01 3.2579177e+03 - -3.4758048e+02 -6.7271772e+01 3.2571454e+03 - -3.6634057e+02 -9.1860700e+01 3.2562722e+03 - -3.8444700e+02 -1.1620198e+02 3.2552952e+03 - -4.0187914e+02 -1.4020775e+02 3.2542108e+03 - -4.1861776e+02 -1.6378257e+02 3.2530156e+03 - -4.3464504e+02 -1.8682260e+02 3.2517060e+03 - -4.4994447e+02 -2.0921452e+02 3.2502784e+03 - -4.6450086e+02 -2.3083445e+02 3.2487290e+03 - -4.7830030e+02 -2.5154665e+02 3.2470545e+03 - -4.9133019e+02 -2.7120219e+02 3.2452517e+03 - -5.0357933e+02 -2.8963746e+02 3.2433179e+03 - -5.1503796e+02 -3.0667265e+02 3.2412511e+03 - -5.2569801e+02 -3.2211024e+02 3.2390502e+03 - -5.3555329e+02 -3.3573358e+02 3.2367154e+03 - -5.4459988e+02 -3.4730579e+02 3.2342484e+03 - -5.5283655e+02 -3.5656909e+02 3.2316534e+03 - -5.6026543e+02 -3.6324508e+02 3.2289369e+03 - -5.6689274e+02 -3.6703618e+02 3.2261091e+03 - -5.7272973e+02 -3.6762909e+02 3.2231842e+03 - -5.7779379e+02 -3.6470073e+02 3.2201815e+03 - -5.8210963e+02 -3.5792773e+02 3.2171263e+03 - -5.8571054e+02 -3.4700027e+02 3.2140505e+03 - -5.8863950e+02 -3.3164093e+02 3.2109937e+03 - -5.9094994e+02 -3.1162927e+02 3.2080032e+03 - -5.9270587e+02 -2.8683139e+02 3.2051342e+03 - -5.9398103e+02 -2.5723323e+02 3.2024487e+03 - -5.9485663e+02 -2.2297434e+02 3.2000137e+03 - -5.9541765e+02 -1.8437730e+02 3.1978982e+03 - -5.9574746e+02 -1.4196644e+02 3.1961687e+03 - -5.9592130e+02 -9.6469539e+01 3.1948850e+03 - -5.9599946e+02 -4.8797408e+01 3.1940944e+03 - -5.9602100e+02 4.8134273e-09 3.1938273e+03 - -5.9599946e+02 4.8797408e+01 3.1940944e+03 - -5.9592130e+02 9.6469539e+01 3.1948850e+03 - -5.9574746e+02 1.4196644e+02 3.1961687e+03 - -5.9541765e+02 1.8437730e+02 3.1978982e+03 - -5.9485663e+02 2.2297434e+02 3.2000137e+03 - -5.9398103e+02 2.5723323e+02 3.2024487e+03 - -5.9270587e+02 2.8683139e+02 3.2051342e+03 - -5.9094994e+02 3.1162927e+02 3.2080032e+03 - -5.8863950e+02 3.3164093e+02 3.2109937e+03 - -5.8571054e+02 3.4700027e+02 3.2140505e+03 - -5.8210963e+02 3.5792773e+02 3.2171263e+03 - -5.7779379e+02 3.6470073e+02 3.2201815e+03 - -5.7272973e+02 3.6762909e+02 3.2231842e+03 - -5.6689274e+02 3.6703618e+02 3.2261091e+03 - -5.6026543e+02 3.6324508e+02 3.2289369e+03 - -5.5283655e+02 3.5656909e+02 3.2316534e+03 - -5.4459988e+02 3.4730579e+02 3.2342484e+03 - -5.3555329e+02 3.3573358e+02 3.2367154e+03 - -5.2569801e+02 3.2211024e+02 3.2390502e+03 - -5.1503796e+02 3.0667265e+02 3.2412511e+03 - -5.0357933e+02 2.8963746e+02 3.2433179e+03 - -4.9133019e+02 2.7120219e+02 3.2452517e+03 - -4.7830030e+02 2.5154665e+02 3.2470545e+03 - -4.6450086e+02 2.3083445e+02 3.2487290e+03 - -4.4994448e+02 2.0921452e+02 3.2502784e+03 - -4.3464504e+02 1.8682260e+02 3.2517060e+03 - -4.1861776e+02 1.6378257e+02 3.2530156e+03 - -4.0187914e+02 1.4020775e+02 3.2542108e+03 - -3.8444700e+02 1.1620198e+02 3.2552952e+03 - -3.6634057e+02 9.1860700e+01 3.2562722e+03 - -3.4758048e+02 6.7271772e+01 3.2571454e+03 - -3.2818888e+02 4.2516315e+01 3.2579177e+03 - -3.0818949e+02 1.7669380e+01 3.2585921e+03 - -2.8760770e+02 -7.1994436e+00 3.2591711e+03 - -2.6647067e+02 -3.2025501e+01 3.2596571e+03 - -2.4480740e+02 -5.6748611e+01 3.2600520e+03 - -2.2264887e+02 -8.1312668e+01 3.2603574e+03 - -2.0002813e+02 -1.0566529e+02 3.2605747e+03 - -1.7698047e+02 -1.2975752e+02 3.2607046e+03 - -1.5354354e+02 -1.5354354e+02 3.2607479e+03 - -1.2975752e+02 -1.7698047e+02 3.2607046e+03 - -1.0566529e+02 -2.0002813e+02 3.2605747e+03 - -8.1312668e+01 -2.2264887e+02 3.2603574e+03 - -5.6748611e+01 -2.4480740e+02 3.2600520e+03 - -3.2025501e+01 -2.6647067e+02 3.2596571e+03 - -7.1994436e+00 -2.8760770e+02 3.2591711e+03 - 1.7669380e+01 -3.0818949e+02 3.2585921e+03 - 4.2516315e+01 -3.2818888e+02 3.2579177e+03 - 6.7271772e+01 -3.4758048e+02 3.2571454e+03 - 9.1860700e+01 -3.6634057e+02 3.2562722e+03 - 1.1620198e+02 -3.8444700e+02 3.2552952e+03 - 1.4020775e+02 -4.0187914e+02 3.2542108e+03 - 1.6378257e+02 -4.1861776e+02 3.2530156e+03 - 1.8682260e+02 -4.3464504e+02 3.2517060e+03 - 2.0921452e+02 -4.4994448e+02 3.2502784e+03 - 2.3083445e+02 -4.6450086e+02 3.2487290e+03 - 2.5154665e+02 -4.7830030e+02 3.2470545e+03 - 2.7120219e+02 -4.9133019e+02 3.2452517e+03 - 2.8963746e+02 -5.0357933e+02 3.2433179e+03 - 3.0667265e+02 -5.1503796e+02 3.2412511e+03 - 3.2211024e+02 -5.2569801e+02 3.2390502e+03 - 3.3573358e+02 -5.3555329e+02 3.2367154e+03 - 3.4730579e+02 -5.4459988e+02 3.2342484e+03 - 3.5656909e+02 -5.5283655e+02 3.2316534e+03 - 3.6324508e+02 -5.6026543e+02 3.2289369e+03 - 3.6703618e+02 -5.6689274e+02 3.2261091e+03 - 3.6762909e+02 -5.7272973e+02 3.2231842e+03 - 3.6470073e+02 -5.7779379e+02 3.2201815e+03 - 3.5792773e+02 -5.8210963e+02 3.2171263e+03 - 3.4700027e+02 -5.8571054e+02 3.2140505e+03 - 3.3164093e+02 -5.8863950e+02 3.2109937e+03 - 3.1162927e+02 -5.9094994e+02 3.2080032e+03 - 2.8683139e+02 -5.9270587e+02 3.2051342e+03 - 2.5723323e+02 -5.9398103e+02 3.2024487e+03 - 2.2297434e+02 -5.9485663e+02 3.2000137e+03 - 1.8437730e+02 -5.9541765e+02 3.1978982e+03 - 1.4196644e+02 -5.9574746e+02 3.1961687e+03 - 9.6469539e+01 -5.9592130e+02 3.1948850e+03 - 4.8797408e+01 -5.9599946e+02 3.1940944e+03 - -7.2201409e-09 -5.9602100e+02 3.1938273e+03 - -4.8797408e+01 -5.9599946e+02 3.1940944e+03 - -9.6469539e+01 -5.9592130e+02 3.1948850e+03 - -1.4196644e+02 -5.9574746e+02 3.1961687e+03 - -1.8437730e+02 -5.9541765e+02 3.1978982e+03 - -2.2297434e+02 -5.9485663e+02 3.2000137e+03 - -2.5723323e+02 -5.9398103e+02 3.2024487e+03 - -2.8683139e+02 -5.9270587e+02 3.2051342e+03 - -3.1162927e+02 -5.9094994e+02 3.2080032e+03 - -3.3164093e+02 -5.8863950e+02 3.2109937e+03 - -3.4700027e+02 -5.8571054e+02 3.2140505e+03 - -3.5792773e+02 -5.8210963e+02 3.2171263e+03 - -3.6470073e+02 -5.7779379e+02 3.2201815e+03 - -3.6762909e+02 -5.7272973e+02 3.2231842e+03 - -3.6703618e+02 -5.6689274e+02 3.2261091e+03 - -3.6324508e+02 -5.6026543e+02 3.2289369e+03 - -3.5656909e+02 -5.5283655e+02 3.2316534e+03 - -3.4730579e+02 -5.4459988e+02 3.2342484e+03 - -3.3573358e+02 -5.3555329e+02 3.2367154e+03 - -3.2211024e+02 -5.2569801e+02 3.2390502e+03 - -3.0667265e+02 -5.1503796e+02 3.2412511e+03 - -2.8963746e+02 -5.0357933e+02 3.2433179e+03 - -2.7120219e+02 -4.9133019e+02 3.2452517e+03 - -2.5154665e+02 -4.7830030e+02 3.2470545e+03 - -2.3083445e+02 -4.6450086e+02 3.2487290e+03 - -2.0921452e+02 -4.4994448e+02 3.2502784e+03 - -1.8682260e+02 -4.3464504e+02 3.2517060e+03 - -1.6378257e+02 -4.1861776e+02 3.2530156e+03 - -1.4020775e+02 -4.0187914e+02 3.2542108e+03 - -1.1620198e+02 -3.8444700e+02 3.2552952e+03 - -9.1860700e+01 -3.6634057e+02 3.2562722e+03 - -6.7271772e+01 -3.4758048e+02 3.2571454e+03 - -4.2516315e+01 -3.2818888e+02 3.2579177e+03 - -1.7669380e+01 -3.0818949e+02 3.2585921e+03 - 7.1994436e+00 -2.8760770e+02 3.2591711e+03 - 3.2025501e+01 -2.6647067e+02 3.2596571e+03 - 5.6748611e+01 -2.4480740e+02 3.2600520e+03 - 8.1312668e+01 -2.2264887e+02 3.2603574e+03 - 1.0566529e+02 -2.0002813e+02 3.2605747e+03 - 1.2975752e+02 -1.7698047e+02 3.2607046e+03 - 1.5354354e+02 -1.5354354e+02 3.2607479e+03 - 1.7698047e+02 -1.2975752e+02 3.2607046e+03 - 2.0002813e+02 -1.0566529e+02 3.2605747e+03 - 2.2264887e+02 -8.1312668e+01 3.2603574e+03 - 2.4480740e+02 -5.6748611e+01 3.2600520e+03 - 2.6647067e+02 -3.2025501e+01 3.2596571e+03 - 2.8760770e+02 -7.1994436e+00 3.2591711e+03 - 3.0818949e+02 1.7669380e+01 3.2585921e+03 - 3.2818888e+02 4.2516315e+01 3.2579177e+03 - 3.4758048e+02 6.7271772e+01 3.2571454e+03 - 3.6634057e+02 9.1860700e+01 3.2562722e+03 - 3.8444700e+02 1.1620198e+02 3.2552952e+03 - 4.0187914e+02 1.4020775e+02 3.2542108e+03 - 4.1861776e+02 1.6378257e+02 3.2530156e+03 - 4.3464504e+02 1.8682260e+02 3.2517060e+03 - 4.4994447e+02 2.0921452e+02 3.2502784e+03 - 4.6450086e+02 2.3083445e+02 3.2487290e+03 - 4.7830030e+02 2.5154665e+02 3.2470545e+03 - 4.9133019e+02 2.7120219e+02 3.2452517e+03 - 5.0357933e+02 2.8963746e+02 3.2433179e+03 - 5.1503796e+02 3.0667265e+02 3.2412511e+03 - 5.2569801e+02 3.2211024e+02 3.2390502e+03 - 5.3555329e+02 3.3573358e+02 3.2367154e+03 - 5.4459988e+02 3.4730579e+02 3.2342484e+03 - 5.5283655e+02 3.5656909e+02 3.2316534e+03 - 5.6026543e+02 3.6324508e+02 3.2289369e+03 - 5.6689274e+02 3.6703618e+02 3.2261091e+03 - 5.7272973e+02 3.6762909e+02 3.2231842e+03 - 5.7779379e+02 3.6470073e+02 3.2201815e+03 - 5.8210963e+02 3.5792773e+02 3.2171263e+03 - 5.8571054e+02 3.4700027e+02 3.2140505e+03 - 5.8863950e+02 3.3164093e+02 3.2109937e+03 - 5.9094994e+02 3.1162927e+02 3.2080032e+03 - 5.9270587e+02 2.8683139e+02 3.2051342e+03 - 5.9398103e+02 2.5723323e+02 3.2024487e+03 - 5.9485663e+02 2.2297434e+02 3.2000137e+03 - 5.9541765e+02 1.8437730e+02 3.1978982e+03 - 5.9574746e+02 1.4196644e+02 3.1961687e+03 - 5.9592130e+02 9.6469539e+01 3.1948850e+03 - 5.9599946e+02 4.8797408e+01 3.1940944e+03 - 5.9602100e+02 2.4067136e-09 3.1938273e+03 - 6.9779630e+02 0.0000000e+00 3.1381278e+03 - 6.9775484e+02 -4.9220455e+01 3.1384210e+03 - 6.9761688e+02 -9.7219939e+01 3.1392882e+03 - 6.9734323e+02 -1.4286337e+02 3.1406928e+03 - 6.9687360e+02 -1.8517369e+02 3.1425788e+03 - 6.9613300e+02 -2.2338028e+02 3.1448760e+03 - 6.9503873e+02 -2.5693993e+02 3.1475064e+03 - 6.9350698e+02 -2.8553228e+02 3.1503906e+03 - 6.9145799e+02 -3.0903626e+02 3.1534524e+03 - 6.8881971e+02 -3.2749525e+02 3.1566220e+03 - 6.8552980e+02 -3.4107818e+02 3.1598387e+03 - 6.8153634e+02 -3.5004226e+02 3.1630513e+03 - 6.7679750e+02 -3.5470040e+02 3.1662179e+03 - 6.7128075e+02 -3.5539503e+02 3.1693058e+03 - 6.6496167e+02 -3.5247821e+02 3.1722898e+03 - 6.5782275e+02 -3.4629762e+02 3.1751517e+03 - 6.4985217e+02 -3.3718718e+02 3.1778787e+03 - 6.4104284e+02 -3.2546149e+02 3.1804626e+03 - 6.3139147e+02 -3.1141285e+02 3.1828990e+03 - 6.2089788e+02 -2.9531031e+02 3.1851861e+03 - 6.0956450e+02 -2.7739985e+02 3.1873245e+03 - 5.9739587e+02 -2.5790547e+02 3.1893163e+03 - 5.8439843e+02 -2.3703062e+02 3.1911649e+03 - 5.7058026e+02 -2.1495995e+02 3.1928746e+03 - 5.5595097e+02 -1.9186103e+02 3.1944501e+03 - 5.4052158e+02 -1.6788608e+02 3.1958965e+03 - 5.2430455e+02 -1.4317359e+02 3.1972193e+03 - 5.0731371e+02 -1.1784980e+02 3.1984238e+03 - 4.8956430e+02 -9.2030048e+01 3.1995152e+03 - 4.7107303e+02 -6.5819960e+01 3.2004987e+03 - 4.5185811e+02 -3.9316533e+01 3.2013792e+03 - 4.3193931e+02 -1.2609052e+01 3.2021612e+03 - 4.1133804e+02 1.4220087e+01 3.2028490e+03 - 3.9007741e+02 4.1094671e+01 3.2034465e+03 - 3.6818234e+02 6.7944049e+01 3.2039571e+03 - 3.4567963e+02 9.4702597e+01 3.2043839e+03 - 3.2259805e+02 1.2130926e+02 3.2047295e+03 - 2.9896849e+02 1.4770712e+02 3.2049960e+03 - 2.7482400e+02 1.7384312e+02 3.2051852e+03 - 2.5020001e+02 1.9966765e+02 3.2052983e+03 - 2.2513439e+02 2.2513439e+02 3.2053359e+03 - 1.9966765e+02 2.5020001e+02 3.2052983e+03 - 1.7384312e+02 2.7482400e+02 3.2051852e+03 - 1.4770712e+02 2.9896849e+02 3.2049960e+03 - 1.2130926e+02 3.2259805e+02 3.2047295e+03 - 9.4702597e+01 3.4567963e+02 3.2043839e+03 - 6.7944049e+01 3.6818234e+02 3.2039571e+03 - 4.1094671e+01 3.9007741e+02 3.2034465e+03 - 1.4220087e+01 4.1133804e+02 3.2028490e+03 - -1.2609052e+01 4.3193931e+02 3.2021612e+03 - -3.9316533e+01 4.5185811e+02 3.2013792e+03 - -6.5819960e+01 4.7107303e+02 3.2004987e+03 - -9.2030048e+01 4.8956430e+02 3.1995152e+03 - -1.1784980e+02 5.0731371e+02 3.1984238e+03 - -1.4317359e+02 5.2430455e+02 3.1972193e+03 - -1.6788608e+02 5.4052158e+02 3.1958965e+03 - -1.9186103e+02 5.5595097e+02 3.1944501e+03 - -2.1495995e+02 5.7058026e+02 3.1928746e+03 - -2.3703062e+02 5.8439843e+02 3.1911649e+03 - -2.5790547e+02 5.9739587e+02 3.1893163e+03 - -2.7739985e+02 6.0956450e+02 3.1873245e+03 - -2.9531031e+02 6.2089788e+02 3.1851861e+03 - -3.1141285e+02 6.3139147e+02 3.1828990e+03 - -3.2546149e+02 6.4104284e+02 3.1804626e+03 - -3.3718718e+02 6.4985217e+02 3.1778787e+03 - -3.4629762e+02 6.5782275e+02 3.1751517e+03 - -3.5247821e+02 6.6496167e+02 3.1722898e+03 - -3.5539503e+02 6.7128075e+02 3.1693058e+03 - -3.5470040e+02 6.7679750e+02 3.1662179e+03 - -3.5004226e+02 6.8153634e+02 3.1630513e+03 - -3.4107818e+02 6.8552980e+02 3.1598387e+03 - -3.2749525e+02 6.8881971e+02 3.1566220e+03 - -3.0903626e+02 6.9145799e+02 3.1534524e+03 - -2.8553228e+02 6.9350698e+02 3.1503906e+03 - -2.5693993e+02 6.9503873e+02 3.1475064e+03 - -2.2338028e+02 6.9613300e+02 3.1448760e+03 - -1.8517369e+02 6.9687360e+02 3.1425788e+03 - -1.4286337e+02 6.9734323e+02 3.1406928e+03 - -9.7219939e+01 6.9761688e+02 3.1392882e+03 - -4.9220455e+01 6.9775484e+02 3.1384210e+03 - 0.0000000e+00 6.9779630e+02 3.1381278e+03 - 4.9220455e+01 6.9775484e+02 3.1384210e+03 - 9.7219939e+01 6.9761688e+02 3.1392882e+03 - 1.4286337e+02 6.9734323e+02 3.1406928e+03 - 1.8517369e+02 6.9687360e+02 3.1425788e+03 - 2.2338028e+02 6.9613300e+02 3.1448760e+03 - 2.5693993e+02 6.9503873e+02 3.1475064e+03 - 2.8553228e+02 6.9350698e+02 3.1503906e+03 - 3.0903626e+02 6.9145799e+02 3.1534524e+03 - 3.2749525e+02 6.8881971e+02 3.1566220e+03 - 3.4107818e+02 6.8552980e+02 3.1598387e+03 - 3.5004226e+02 6.8153634e+02 3.1630513e+03 - 3.5470040e+02 6.7679750e+02 3.1662179e+03 - 3.5539503e+02 6.7128075e+02 3.1693058e+03 - 3.5247821e+02 6.6496167e+02 3.1722898e+03 - 3.4629762e+02 6.5782275e+02 3.1751517e+03 - 3.3718718e+02 6.4985217e+02 3.1778787e+03 - 3.2546149e+02 6.4104284e+02 3.1804626e+03 - 3.1141285e+02 6.3139147e+02 3.1828990e+03 - 2.9531031e+02 6.2089788e+02 3.1851861e+03 - 2.7739985e+02 6.0956450e+02 3.1873245e+03 - 2.5790547e+02 5.9739587e+02 3.1893163e+03 - 2.3703062e+02 5.8439843e+02 3.1911649e+03 - 2.1495995e+02 5.7058026e+02 3.1928746e+03 - 1.9186103e+02 5.5595097e+02 3.1944501e+03 - 1.6788608e+02 5.4052158e+02 3.1958965e+03 - 1.4317359e+02 5.2430455e+02 3.1972193e+03 - 1.1784980e+02 5.0731371e+02 3.1984238e+03 - 9.2030048e+01 4.8956430e+02 3.1995152e+03 - 6.5819960e+01 4.7107303e+02 3.2004987e+03 - 3.9316533e+01 4.5185811e+02 3.2013792e+03 - 1.2609052e+01 4.3193931e+02 3.2021612e+03 - -1.4220087e+01 4.1133804e+02 3.2028490e+03 - -4.1094671e+01 3.9007741e+02 3.2034465e+03 - -6.7944049e+01 3.6818234e+02 3.2039571e+03 - -9.4702597e+01 3.4567963e+02 3.2043839e+03 - -1.2130926e+02 3.2259805e+02 3.2047295e+03 - -1.4770712e+02 2.9896849e+02 3.2049960e+03 - -1.7384312e+02 2.7482400e+02 3.2051852e+03 - -1.9966765e+02 2.5020001e+02 3.2052983e+03 - -2.2513439e+02 2.2513439e+02 3.2053359e+03 - -2.5020001e+02 1.9966765e+02 3.2052983e+03 - -2.7482400e+02 1.7384312e+02 3.2051852e+03 - -2.9896849e+02 1.4770712e+02 3.2049960e+03 - -3.2259805e+02 1.2130926e+02 3.2047295e+03 - -3.4567963e+02 9.4702597e+01 3.2043839e+03 - -3.6818234e+02 6.7944049e+01 3.2039571e+03 - -3.9007741e+02 4.1094671e+01 3.2034465e+03 - -4.1133804e+02 1.4220087e+01 3.2028490e+03 - -4.3193931e+02 -1.2609052e+01 3.2021612e+03 - -4.5185811e+02 -3.9316533e+01 3.2013792e+03 - -4.7107303e+02 -6.5819960e+01 3.2004987e+03 - -4.8956430e+02 -9.2030048e+01 3.1995152e+03 - -5.0731371e+02 -1.1784980e+02 3.1984238e+03 - -5.2430455e+02 -1.4317359e+02 3.1972193e+03 - -5.4052158e+02 -1.6788608e+02 3.1958965e+03 - -5.5595097e+02 -1.9186103e+02 3.1944501e+03 - -5.7058026e+02 -2.1495995e+02 3.1928746e+03 - -5.8439843e+02 -2.3703062e+02 3.1911649e+03 - -5.9739587e+02 -2.5790547e+02 3.1893163e+03 - -6.0956450e+02 -2.7739985e+02 3.1873245e+03 - -6.2089788e+02 -2.9531031e+02 3.1851861e+03 - -6.3139147e+02 -3.1141285e+02 3.1828990e+03 - -6.4104284e+02 -3.2546149e+02 3.1804626e+03 - -6.4985217e+02 -3.3718718e+02 3.1778787e+03 - -6.5782275e+02 -3.4629762e+02 3.1751517e+03 - -6.6496167e+02 -3.5247821e+02 3.1722898e+03 - -6.7128075e+02 -3.5539503e+02 3.1693058e+03 - -6.7679750e+02 -3.5470040e+02 3.1662179e+03 - -6.8153634e+02 -3.5004226e+02 3.1630513e+03 - -6.8552980e+02 -3.4107818e+02 3.1598387e+03 - -6.8881971e+02 -3.2749525e+02 3.1566220e+03 - -6.9145799e+02 -3.0903626e+02 3.1534524e+03 - -6.9350698e+02 -2.8553228e+02 3.1503906e+03 - -6.9503873e+02 -2.5693993e+02 3.1475064e+03 - -6.9613300e+02 -2.2338028e+02 3.1448760e+03 - -6.9687360e+02 -1.8517369e+02 3.1425788e+03 - -6.9734323e+02 -1.4286337e+02 3.1406928e+03 - -6.9761688e+02 -9.7219939e+01 3.1392882e+03 - -6.9775484e+02 -4.9220455e+01 3.1384210e+03 - -6.9779630e+02 4.8134273e-09 3.1381278e+03 - -6.9775484e+02 4.9220455e+01 3.1384210e+03 - -6.9761688e+02 9.7219939e+01 3.1392882e+03 - -6.9734323e+02 1.4286337e+02 3.1406928e+03 - -6.9687360e+02 1.8517369e+02 3.1425788e+03 - -6.9613300e+02 2.2338028e+02 3.1448760e+03 - -6.9503873e+02 2.5693993e+02 3.1475064e+03 - -6.9350698e+02 2.8553228e+02 3.1503906e+03 - -6.9145799e+02 3.0903626e+02 3.1534524e+03 - -6.8881971e+02 3.2749525e+02 3.1566220e+03 - -6.8552980e+02 3.4107818e+02 3.1598387e+03 - -6.8153634e+02 3.5004226e+02 3.1630513e+03 - -6.7679750e+02 3.5470040e+02 3.1662179e+03 - -6.7128075e+02 3.5539503e+02 3.1693058e+03 - -6.6496167e+02 3.5247821e+02 3.1722898e+03 - -6.5782275e+02 3.4629762e+02 3.1751517e+03 - -6.4985217e+02 3.3718718e+02 3.1778787e+03 - -6.4104284e+02 3.2546149e+02 3.1804626e+03 - -6.3139147e+02 3.1141285e+02 3.1828990e+03 - -6.2089788e+02 2.9531031e+02 3.1851861e+03 - -6.0956450e+02 2.7739985e+02 3.1873245e+03 - -5.9739587e+02 2.5790547e+02 3.1893163e+03 - -5.8439843e+02 2.3703062e+02 3.1911649e+03 - -5.7058026e+02 2.1495995e+02 3.1928746e+03 - -5.5595097e+02 1.9186103e+02 3.1944501e+03 - -5.4052158e+02 1.6788608e+02 3.1958965e+03 - -5.2430455e+02 1.4317359e+02 3.1972193e+03 - -5.0731371e+02 1.1784980e+02 3.1984238e+03 - -4.8956430e+02 9.2030048e+01 3.1995152e+03 - -4.7107303e+02 6.5819960e+01 3.2004987e+03 - -4.5185811e+02 3.9316533e+01 3.2013792e+03 - -4.3193931e+02 1.2609052e+01 3.2021612e+03 - -4.1133804e+02 -1.4220087e+01 3.2028490e+03 - -3.9007741e+02 -4.1094671e+01 3.2034465e+03 - -3.6818234e+02 -6.7944049e+01 3.2039571e+03 - -3.4567963e+02 -9.4702597e+01 3.2043839e+03 - -3.2259805e+02 -1.2130926e+02 3.2047295e+03 - -2.9896849e+02 -1.4770712e+02 3.2049960e+03 - -2.7482400e+02 -1.7384312e+02 3.2051852e+03 - -2.5020001e+02 -1.9966765e+02 3.2052983e+03 - -2.2513439e+02 -2.2513439e+02 3.2053359e+03 - -1.9966765e+02 -2.5020001e+02 3.2052983e+03 - -1.7384312e+02 -2.7482400e+02 3.2051852e+03 - -1.4770712e+02 -2.9896849e+02 3.2049960e+03 - -1.2130926e+02 -3.2259805e+02 3.2047295e+03 - -9.4702597e+01 -3.4567963e+02 3.2043839e+03 - -6.7944049e+01 -3.6818234e+02 3.2039571e+03 - -4.1094671e+01 -3.9007741e+02 3.2034465e+03 - -1.4220087e+01 -4.1133804e+02 3.2028490e+03 - 1.2609052e+01 -4.3193931e+02 3.2021612e+03 - 3.9316533e+01 -4.5185811e+02 3.2013792e+03 - 6.5819960e+01 -4.7107303e+02 3.2004987e+03 - 9.2030048e+01 -4.8956430e+02 3.1995152e+03 - 1.1784980e+02 -5.0731371e+02 3.1984238e+03 - 1.4317359e+02 -5.2430455e+02 3.1972193e+03 - 1.6788608e+02 -5.4052158e+02 3.1958965e+03 - 1.9186103e+02 -5.5595097e+02 3.1944501e+03 - 2.1495995e+02 -5.7058026e+02 3.1928746e+03 - 2.3703062e+02 -5.8439843e+02 3.1911649e+03 - 2.5790547e+02 -5.9739587e+02 3.1893163e+03 - 2.7739985e+02 -6.0956450e+02 3.1873245e+03 - 2.9531031e+02 -6.2089788e+02 3.1851861e+03 - 3.1141285e+02 -6.3139147e+02 3.1828990e+03 - 3.2546149e+02 -6.4104284e+02 3.1804626e+03 - 3.3718718e+02 -6.4985217e+02 3.1778787e+03 - 3.4629762e+02 -6.5782275e+02 3.1751517e+03 - 3.5247821e+02 -6.6496167e+02 3.1722898e+03 - 3.5539503e+02 -6.7128075e+02 3.1693058e+03 - 3.5470040e+02 -6.7679750e+02 3.1662179e+03 - 3.5004226e+02 -6.8153634e+02 3.1630513e+03 - 3.4107818e+02 -6.8552980e+02 3.1598387e+03 - 3.2749525e+02 -6.8881971e+02 3.1566220e+03 - 3.0903626e+02 -6.9145799e+02 3.1534524e+03 - 2.8553228e+02 -6.9350698e+02 3.1503906e+03 - 2.5693993e+02 -6.9503873e+02 3.1475064e+03 - 2.2338028e+02 -6.9613300e+02 3.1448760e+03 - 1.8517369e+02 -6.9687360e+02 3.1425788e+03 - 1.4286337e+02 -6.9734323e+02 3.1406928e+03 - 9.7219939e+01 -6.9761688e+02 3.1392882e+03 - 4.9220455e+01 -6.9775484e+02 3.1384210e+03 - 0.0000000e+00 -6.9779630e+02 3.1381278e+03 - -4.9220455e+01 -6.9775484e+02 3.1384210e+03 - -9.7219939e+01 -6.9761688e+02 3.1392882e+03 - -1.4286337e+02 -6.9734323e+02 3.1406928e+03 - -1.8517369e+02 -6.9687360e+02 3.1425788e+03 - -2.2338028e+02 -6.9613300e+02 3.1448760e+03 - -2.5693993e+02 -6.9503873e+02 3.1475064e+03 - -2.8553228e+02 -6.9350698e+02 3.1503906e+03 - -3.0903626e+02 -6.9145799e+02 3.1534524e+03 - -3.2749525e+02 -6.8881971e+02 3.1566220e+03 - -3.4107818e+02 -6.8552980e+02 3.1598387e+03 - -3.5004226e+02 -6.8153634e+02 3.1630513e+03 - -3.5470040e+02 -6.7679750e+02 3.1662179e+03 - -3.5539503e+02 -6.7128075e+02 3.1693058e+03 - -3.5247821e+02 -6.6496167e+02 3.1722898e+03 - -3.4629762e+02 -6.5782275e+02 3.1751517e+03 - -3.3718718e+02 -6.4985217e+02 3.1778787e+03 - -3.2546149e+02 -6.4104284e+02 3.1804626e+03 - -3.1141285e+02 -6.3139147e+02 3.1828990e+03 - -2.9531031e+02 -6.2089788e+02 3.1851861e+03 - -2.7739985e+02 -6.0956450e+02 3.1873245e+03 - -2.5790547e+02 -5.9739587e+02 3.1893163e+03 - -2.3703062e+02 -5.8439843e+02 3.1911649e+03 - -2.1495995e+02 -5.7058026e+02 3.1928746e+03 - -1.9186103e+02 -5.5595097e+02 3.1944501e+03 - -1.6788608e+02 -5.4052158e+02 3.1958965e+03 - -1.4317359e+02 -5.2430455e+02 3.1972193e+03 - -1.1784980e+02 -5.0731371e+02 3.1984238e+03 - -9.2030048e+01 -4.8956430e+02 3.1995152e+03 - -6.5819960e+01 -4.7107303e+02 3.2004987e+03 - -3.9316533e+01 -4.5185811e+02 3.2013792e+03 - -1.2609052e+01 -4.3193931e+02 3.2021612e+03 - 1.4220087e+01 -4.1133804e+02 3.2028490e+03 - 4.1094671e+01 -3.9007741e+02 3.2034465e+03 - 6.7944049e+01 -3.6818234e+02 3.2039571e+03 - 9.4702597e+01 -3.4567963e+02 3.2043839e+03 - 1.2130926e+02 -3.2259805e+02 3.2047295e+03 - 1.4770712e+02 -2.9896849e+02 3.2049960e+03 - 1.7384312e+02 -2.7482400e+02 3.2051852e+03 - 1.9966765e+02 -2.5020001e+02 3.2052983e+03 - 2.2513439e+02 -2.2513439e+02 3.2053359e+03 - 2.5020001e+02 -1.9966765e+02 3.2052983e+03 - 2.7482400e+02 -1.7384312e+02 3.2051852e+03 - 2.9896849e+02 -1.4770712e+02 3.2049960e+03 - 3.2259805e+02 -1.2130926e+02 3.2047295e+03 - 3.4567963e+02 -9.4702597e+01 3.2043839e+03 - 3.6818234e+02 -6.7944049e+01 3.2039571e+03 - 3.9007741e+02 -4.1094671e+01 3.2034465e+03 - 4.1133804e+02 -1.4220087e+01 3.2028490e+03 - 4.3193931e+02 1.2609052e+01 3.2021612e+03 - 4.5185811e+02 3.9316533e+01 3.2013792e+03 - 4.7107303e+02 6.5819960e+01 3.2004987e+03 - 4.8956430e+02 9.2030048e+01 3.1995152e+03 - 5.0731371e+02 1.1784980e+02 3.1984238e+03 - 5.2430455e+02 1.4317359e+02 3.1972193e+03 - 5.4052158e+02 1.6788608e+02 3.1958965e+03 - 5.5595097e+02 1.9186103e+02 3.1944501e+03 - 5.7058026e+02 2.1495995e+02 3.1928746e+03 - 5.8439843e+02 2.3703062e+02 3.1911649e+03 - 5.9739587e+02 2.5790547e+02 3.1893163e+03 - 6.0956450e+02 2.7739985e+02 3.1873245e+03 - 6.2089788e+02 2.9531031e+02 3.1851861e+03 - 6.3139147e+02 3.1141285e+02 3.1828990e+03 - 6.4104284e+02 3.2546149e+02 3.1804626e+03 - 6.4985217e+02 3.3718718e+02 3.1778787e+03 - 6.5782275e+02 3.4629762e+02 3.1751517e+03 - 6.6496167e+02 3.5247821e+02 3.1722898e+03 - 6.7128075e+02 3.5539503e+02 3.1693058e+03 - 6.7679750e+02 3.5470040e+02 3.1662179e+03 - 6.8153634e+02 3.5004226e+02 3.1630513e+03 - 6.8552980e+02 3.4107818e+02 3.1598387e+03 - 6.8881971e+02 3.2749525e+02 3.1566220e+03 - 6.9145799e+02 3.0903626e+02 3.1534524e+03 - 6.9350698e+02 2.8553228e+02 3.1503906e+03 - 6.9503873e+02 2.5693993e+02 3.1475064e+03 - 6.9613300e+02 2.2338028e+02 3.1448760e+03 - 6.9687360e+02 1.8517369e+02 3.1425788e+03 - 6.9734323e+02 1.4286337e+02 3.1406928e+03 - 6.9761688e+02 9.7219939e+01 3.1392882e+03 - 6.9775484e+02 4.9220455e+01 3.1384210e+03 - 6.9779630e+02 -2.4067136e-09 3.1381278e+03 - 8.0204255e+02 0.0000000e+00 3.0783877e+03 - 8.0197892e+02 -4.9652664e+01 3.0787100e+03 - 8.0177457e+02 -9.7977493e+01 3.0796619e+03 - 8.0139074e+02 -1.4374509e+02 3.0811998e+03 - 8.0076798e+02 -1.8590636e+02 3.0832569e+03 - 7.9983260e+02 -2.2364598e+02 3.0857503e+03 - 7.9850376e+02 -2.5640349e+02 3.0885889e+03 - 7.9669987e+02 -2.8386500e+02 3.0916810e+03 - 7.9434367e+02 -3.0593357e+02 3.0949397e+03 - 7.9136562e+02 -3.2268786e+02 3.0982872e+03 - 7.8770566e+02 -3.3433744e+02 3.1016565e+03 - 7.8331373e+02 -3.4118094e+02 3.1049927e+03 - 7.7814935e+02 -3.4357047e+02 3.1082521e+03 - 7.7218076e+02 -3.4188364e+02 3.1114014e+03 - 7.6538370e+02 -3.3650296e+02 3.1144164e+03 - 7.5774029e+02 -3.2780170e+02 3.1172803e+03 - 7.4923791e+02 -3.1613485e+02 3.1199827e+03 - 7.3986822e+02 -3.0183409e+02 3.1225178e+03 - 7.2962642e+02 -2.8520541e+02 3.1248840e+03 - 7.1851064e+02 -2.6652875e+02 3.1270825e+03 - 7.0652141e+02 -2.4605870e+02 3.1291166e+03 - 6.9366135e+02 -2.2402610e+02 3.1309913e+03 - 6.7993496e+02 -2.0063981e+02 3.1327126e+03 - 6.6534836e+02 -1.7608880e+02 3.1342875e+03 - 6.4990930e+02 -1.5054413e+02 3.1357231e+03 - 6.3362703e+02 -1.2416085e+02 3.1370270e+03 - 6.1651229e+02 -9.7079793e+01 3.1382066e+03 - 5.9857738e+02 -6.9429166e+01 3.1392692e+03 - 5.7983609e+02 -4.1325992e+01 3.1402221e+03 - 5.6030385e+02 -1.2877374e+01 3.1410720e+03 - 5.3999771e+02 1.5818397e+01 3.1418254e+03 - 5.1893642e+02 4.4670873e+01 3.1424882e+03 - 4.9714052e+02 7.3596603e+01 3.1430661e+03 - 4.7463240e+02 1.0251842e+02 3.1435639e+03 - 4.5143636e+02 1.3136478e+02 3.1439861e+03 - 4.2757875e+02 1.6006928e+02 3.1443367e+03 - 4.0308802e+02 1.8857012e+02 3.1446190e+03 - 3.7799481e+02 2.1680976e+02 3.1448357e+03 - 3.5233211e+02 2.4473454e+02 3.1449890e+03 - 3.2613535e+02 2.7229437e+02 3.1450803e+03 - 2.9944252e+02 2.9944252e+02 3.1451107e+03 - 2.7229437e+02 3.2613535e+02 3.1450803e+03 - 2.4473454e+02 3.5233211e+02 3.1449890e+03 - 2.1680976e+02 3.7799481e+02 3.1448357e+03 - 1.8857012e+02 4.0308802e+02 3.1446190e+03 - 1.6006928e+02 4.2757875e+02 3.1443367e+03 - 1.3136478e+02 4.5143636e+02 3.1439861e+03 - 1.0251842e+02 4.7463240e+02 3.1435639e+03 - 7.3596603e+01 4.9714052e+02 3.1430661e+03 - 4.4670873e+01 5.1893642e+02 3.1424882e+03 - 1.5818397e+01 5.3999771e+02 3.1418254e+03 - -1.2877374e+01 5.6030385e+02 3.1410720e+03 - -4.1325992e+01 5.7983609e+02 3.1402221e+03 - -6.9429166e+01 5.9857738e+02 3.1392692e+03 - -9.7079793e+01 6.1651229e+02 3.1382066e+03 - -1.2416085e+02 6.3362703e+02 3.1370270e+03 - -1.5054413e+02 6.4990930e+02 3.1357231e+03 - -1.7608880e+02 6.6534836e+02 3.1342875e+03 - -2.0063981e+02 6.7993496e+02 3.1327126e+03 - -2.2402610e+02 6.9366135e+02 3.1309913e+03 - -2.4605870e+02 7.0652141e+02 3.1291166e+03 - -2.6652875e+02 7.1851064e+02 3.1270825e+03 - -2.8520541e+02 7.2962642e+02 3.1248840e+03 - -3.0183409e+02 7.3986822e+02 3.1225178e+03 - -3.1613485e+02 7.4923791e+02 3.1199827e+03 - -3.2780170e+02 7.5774029e+02 3.1172803e+03 - -3.3650296e+02 7.6538370e+02 3.1144164e+03 - -3.4188364e+02 7.7218076e+02 3.1114014e+03 - -3.4357047e+02 7.7814935e+02 3.1082521e+03 - -3.4118094e+02 7.8331373e+02 3.1049927e+03 - -3.3433744e+02 7.8770566e+02 3.1016565e+03 - -3.2268786e+02 7.9136562e+02 3.0982872e+03 - -3.0593357e+02 7.9434367e+02 3.0949397e+03 - -2.8386500e+02 7.9669987e+02 3.0916810e+03 - -2.5640349e+02 7.9850376e+02 3.0885889e+03 - -2.2364598e+02 7.9983260e+02 3.0857503e+03 - -1.8590636e+02 8.0076798e+02 3.0832569e+03 - -1.4374509e+02 8.0139074e+02 3.0811998e+03 - -9.7977493e+01 8.0177457e+02 3.0796619e+03 - -4.9652664e+01 8.0197892e+02 3.0787100e+03 - 0.0000000e+00 8.0204255e+02 3.0783877e+03 - 4.9652664e+01 8.0197892e+02 3.0787100e+03 - 9.7977493e+01 8.0177457e+02 3.0796619e+03 - 1.4374509e+02 8.0139074e+02 3.0811998e+03 - 1.8590636e+02 8.0076798e+02 3.0832569e+03 - 2.2364598e+02 7.9983260e+02 3.0857503e+03 - 2.5640349e+02 7.9850376e+02 3.0885889e+03 - 2.8386500e+02 7.9669987e+02 3.0916810e+03 - 3.0593357e+02 7.9434367e+02 3.0949397e+03 - 3.2268786e+02 7.9136562e+02 3.0982872e+03 - 3.3433744e+02 7.8770566e+02 3.1016565e+03 - 3.4118094e+02 7.8331373e+02 3.1049927e+03 - 3.4357047e+02 7.7814935e+02 3.1082521e+03 - 3.4188364e+02 7.7218076e+02 3.1114014e+03 - 3.3650296e+02 7.6538370e+02 3.1144164e+03 - 3.2780170e+02 7.5774029e+02 3.1172803e+03 - 3.1613485e+02 7.4923791e+02 3.1199827e+03 - 3.0183409e+02 7.3986822e+02 3.1225178e+03 - 2.8520541e+02 7.2962643e+02 3.1248840e+03 - 2.6652875e+02 7.1851064e+02 3.1270825e+03 - 2.4605870e+02 7.0652141e+02 3.1291166e+03 - 2.2402610e+02 6.9366135e+02 3.1309913e+03 - 2.0063981e+02 6.7993496e+02 3.1327126e+03 - 1.7608880e+02 6.6534836e+02 3.1342875e+03 - 1.5054413e+02 6.4990930e+02 3.1357231e+03 - 1.2416085e+02 6.3362703e+02 3.1370270e+03 - 9.7079793e+01 6.1651229e+02 3.1382066e+03 - 6.9429166e+01 5.9857738e+02 3.1392692e+03 - 4.1325992e+01 5.7983609e+02 3.1402221e+03 - 1.2877374e+01 5.6030385e+02 3.1410720e+03 - -1.5818397e+01 5.3999771e+02 3.1418254e+03 - -4.4670873e+01 5.1893642e+02 3.1424882e+03 - -7.3596603e+01 4.9714052e+02 3.1430661e+03 - -1.0251842e+02 4.7463240e+02 3.1435639e+03 - -1.3136478e+02 4.5143636e+02 3.1439861e+03 - -1.6006928e+02 4.2757875e+02 3.1443367e+03 - -1.8857012e+02 4.0308802e+02 3.1446190e+03 - -2.1680976e+02 3.7799481e+02 3.1448357e+03 - -2.4473454e+02 3.5233211e+02 3.1449890e+03 - -2.7229437e+02 3.2613535e+02 3.1450803e+03 - -2.9944252e+02 2.9944252e+02 3.1451107e+03 - -3.2613535e+02 2.7229437e+02 3.1450803e+03 - -3.5233211e+02 2.4473454e+02 3.1449890e+03 - -3.7799481e+02 2.1680976e+02 3.1448357e+03 - -4.0308802e+02 1.8857012e+02 3.1446190e+03 - -4.2757875e+02 1.6006928e+02 3.1443367e+03 - -4.5143636e+02 1.3136478e+02 3.1439861e+03 - -4.7463240e+02 1.0251842e+02 3.1435639e+03 - -4.9714052e+02 7.3596603e+01 3.1430661e+03 - -5.1893642e+02 4.4670873e+01 3.1424882e+03 - -5.3999771e+02 1.5818397e+01 3.1418254e+03 - -5.6030385e+02 -1.2877374e+01 3.1410720e+03 - -5.7983609e+02 -4.1325992e+01 3.1402221e+03 - -5.9857738e+02 -6.9429166e+01 3.1392692e+03 - -6.1651229e+02 -9.7079793e+01 3.1382066e+03 - -6.3362703e+02 -1.2416085e+02 3.1370270e+03 - -6.4990930e+02 -1.5054413e+02 3.1357231e+03 - -6.6534836e+02 -1.7608880e+02 3.1342875e+03 - -6.7993496e+02 -2.0063981e+02 3.1327126e+03 - -6.9366135e+02 -2.2402610e+02 3.1309913e+03 - -7.0652141e+02 -2.4605870e+02 3.1291166e+03 - -7.1851064e+02 -2.6652875e+02 3.1270825e+03 - -7.2962642e+02 -2.8520541e+02 3.1248840e+03 - -7.3986822e+02 -3.0183409e+02 3.1225178e+03 - -7.4923791e+02 -3.1613485e+02 3.1199827e+03 - -7.5774029e+02 -3.2780170e+02 3.1172803e+03 - -7.6538370e+02 -3.3650296e+02 3.1144164e+03 - -7.7218076e+02 -3.4188364e+02 3.1114014e+03 - -7.7814935e+02 -3.4357047e+02 3.1082521e+03 - -7.8331373e+02 -3.4118094e+02 3.1049927e+03 - -7.8770566e+02 -3.3433744e+02 3.1016565e+03 - -7.9136562e+02 -3.2268786e+02 3.0982872e+03 - -7.9434367e+02 -3.0593357e+02 3.0949397e+03 - -7.9669987e+02 -2.8386500e+02 3.0916810e+03 - -7.9850376e+02 -2.5640349e+02 3.0885889e+03 - -7.9983260e+02 -2.2364598e+02 3.0857503e+03 - -8.0076798e+02 -1.8590636e+02 3.0832569e+03 - -8.0139074e+02 -1.4374509e+02 3.0811998e+03 - -8.0177457e+02 -9.7977493e+01 3.0796619e+03 - -8.0197892e+02 -4.9652664e+01 3.0787100e+03 - -8.0204255e+02 2.4067136e-09 3.0783877e+03 - -8.0197892e+02 4.9652664e+01 3.0787100e+03 - -8.0177457e+02 9.7977493e+01 3.0796619e+03 - -8.0139074e+02 1.4374509e+02 3.0811998e+03 - -8.0076798e+02 1.8590636e+02 3.0832569e+03 - -7.9983260e+02 2.2364598e+02 3.0857503e+03 - -7.9850376e+02 2.5640349e+02 3.0885889e+03 - -7.9669987e+02 2.8386500e+02 3.0916810e+03 - -7.9434367e+02 3.0593357e+02 3.0949397e+03 - -7.9136562e+02 3.2268786e+02 3.0982872e+03 - -7.8770566e+02 3.3433744e+02 3.1016565e+03 - -7.8331373e+02 3.4118094e+02 3.1049927e+03 - -7.7814935e+02 3.4357047e+02 3.1082521e+03 - -7.7218076e+02 3.4188364e+02 3.1114014e+03 - -7.6538370e+02 3.3650296e+02 3.1144164e+03 - -7.5774029e+02 3.2780170e+02 3.1172803e+03 - -7.4923791e+02 3.1613485e+02 3.1199827e+03 - -7.3986822e+02 3.0183409e+02 3.1225178e+03 - -7.2962642e+02 2.8520541e+02 3.1248840e+03 - -7.1851064e+02 2.6652875e+02 3.1270825e+03 - -7.0652141e+02 2.4605870e+02 3.1291166e+03 - -6.9366135e+02 2.2402610e+02 3.1309913e+03 - -6.7993496e+02 2.0063981e+02 3.1327126e+03 - -6.6534836e+02 1.7608880e+02 3.1342875e+03 - -6.4990930e+02 1.5054413e+02 3.1357231e+03 - -6.3362703e+02 1.2416085e+02 3.1370270e+03 - -6.1651229e+02 9.7079793e+01 3.1382066e+03 - -5.9857738e+02 6.9429166e+01 3.1392692e+03 - -5.7983609e+02 4.1325992e+01 3.1402221e+03 - -5.6030385e+02 1.2877374e+01 3.1410720e+03 - -5.3999771e+02 -1.5818397e+01 3.1418254e+03 - -5.1893642e+02 -4.4670873e+01 3.1424882e+03 - -4.9714052e+02 -7.3596603e+01 3.1430661e+03 - -4.7463240e+02 -1.0251842e+02 3.1435639e+03 - -4.5143636e+02 -1.3136478e+02 3.1439861e+03 - -4.2757875e+02 -1.6006928e+02 3.1443367e+03 - -4.0308802e+02 -1.8857012e+02 3.1446190e+03 - -3.7799481e+02 -2.1680976e+02 3.1448357e+03 - -3.5233211e+02 -2.4473454e+02 3.1449890e+03 - -3.2613535e+02 -2.7229437e+02 3.1450803e+03 - -2.9944252e+02 -2.9944252e+02 3.1451107e+03 - -2.7229437e+02 -3.2613535e+02 3.1450803e+03 - -2.4473454e+02 -3.5233211e+02 3.1449890e+03 - -2.1680976e+02 -3.7799481e+02 3.1448357e+03 - -1.8857012e+02 -4.0308802e+02 3.1446190e+03 - -1.6006928e+02 -4.2757875e+02 3.1443367e+03 - -1.3136478e+02 -4.5143636e+02 3.1439861e+03 - -1.0251842e+02 -4.7463240e+02 3.1435639e+03 - -7.3596603e+01 -4.9714052e+02 3.1430661e+03 - -4.4670873e+01 -5.1893642e+02 3.1424882e+03 - -1.5818397e+01 -5.3999771e+02 3.1418254e+03 - 1.2877374e+01 -5.6030385e+02 3.1410720e+03 - 4.1325992e+01 -5.7983609e+02 3.1402221e+03 - 6.9429166e+01 -5.9857738e+02 3.1392692e+03 - 9.7079793e+01 -6.1651229e+02 3.1382066e+03 - 1.2416085e+02 -6.3362703e+02 3.1370270e+03 - 1.5054413e+02 -6.4990930e+02 3.1357231e+03 - 1.7608880e+02 -6.6534836e+02 3.1342875e+03 - 2.0063981e+02 -6.7993496e+02 3.1327126e+03 - 2.2402610e+02 -6.9366135e+02 3.1309913e+03 - 2.4605870e+02 -7.0652141e+02 3.1291166e+03 - 2.6652875e+02 -7.1851064e+02 3.1270825e+03 - 2.8520541e+02 -7.2962642e+02 3.1248840e+03 - 3.0183409e+02 -7.3986822e+02 3.1225178e+03 - 3.1613485e+02 -7.4923791e+02 3.1199827e+03 - 3.2780170e+02 -7.5774029e+02 3.1172803e+03 - 3.3650296e+02 -7.6538370e+02 3.1144164e+03 - 3.4188364e+02 -7.7218076e+02 3.1114014e+03 - 3.4357047e+02 -7.7814935e+02 3.1082521e+03 - 3.4118094e+02 -7.8331373e+02 3.1049927e+03 - 3.3433744e+02 -7.8770566e+02 3.1016565e+03 - 3.2268786e+02 -7.9136562e+02 3.0982872e+03 - 3.0593357e+02 -7.9434367e+02 3.0949397e+03 - 2.8386500e+02 -7.9669987e+02 3.0916810e+03 - 2.5640349e+02 -7.9850376e+02 3.0885889e+03 - 2.2364598e+02 -7.9983260e+02 3.0857503e+03 - 1.8590636e+02 -8.0076798e+02 3.0832569e+03 - 1.4374509e+02 -8.0139074e+02 3.0811998e+03 - 9.7977493e+01 -8.0177457e+02 3.0796619e+03 - 4.9652664e+01 -8.0197892e+02 3.0787100e+03 - 0.0000000e+00 -8.0204255e+02 3.0783877e+03 - -4.9652664e+01 -8.0197892e+02 3.0787100e+03 - -9.7977493e+01 -8.0177457e+02 3.0796619e+03 - -1.4374509e+02 -8.0139074e+02 3.0811998e+03 - -1.8590636e+02 -8.0076798e+02 3.0832569e+03 - -2.2364598e+02 -7.9983260e+02 3.0857503e+03 - -2.5640349e+02 -7.9850376e+02 3.0885889e+03 - -2.8386500e+02 -7.9669987e+02 3.0916810e+03 - -3.0593357e+02 -7.9434367e+02 3.0949397e+03 - -3.2268786e+02 -7.9136562e+02 3.0982872e+03 - -3.3433744e+02 -7.8770566e+02 3.1016565e+03 - -3.4118094e+02 -7.8331373e+02 3.1049927e+03 - -3.4357047e+02 -7.7814935e+02 3.1082521e+03 - -3.4188364e+02 -7.7218076e+02 3.1114014e+03 - -3.3650296e+02 -7.6538370e+02 3.1144164e+03 - -3.2780170e+02 -7.5774029e+02 3.1172803e+03 - -3.1613485e+02 -7.4923791e+02 3.1199827e+03 - -3.0183409e+02 -7.3986822e+02 3.1225178e+03 - -2.8520541e+02 -7.2962643e+02 3.1248840e+03 - -2.6652875e+02 -7.1851064e+02 3.1270825e+03 - -2.4605870e+02 -7.0652141e+02 3.1291166e+03 - -2.2402610e+02 -6.9366135e+02 3.1309913e+03 - -2.0063981e+02 -6.7993496e+02 3.1327126e+03 - -1.7608880e+02 -6.6534836e+02 3.1342875e+03 - -1.5054413e+02 -6.4990930e+02 3.1357231e+03 - -1.2416085e+02 -6.3362703e+02 3.1370270e+03 - -9.7079793e+01 -6.1651229e+02 3.1382066e+03 - -6.9429166e+01 -5.9857738e+02 3.1392692e+03 - -4.1325992e+01 -5.7983609e+02 3.1402221e+03 - -1.2877374e+01 -5.6030385e+02 3.1410720e+03 - 1.5818397e+01 -5.3999771e+02 3.1418254e+03 - 4.4670873e+01 -5.1893642e+02 3.1424882e+03 - 7.3596603e+01 -4.9714052e+02 3.1430661e+03 - 1.0251842e+02 -4.7463240e+02 3.1435639e+03 - 1.3136478e+02 -4.5143636e+02 3.1439861e+03 - 1.6006928e+02 -4.2757875e+02 3.1443367e+03 - 1.8857012e+02 -4.0308802e+02 3.1446190e+03 - 2.1680976e+02 -3.7799481e+02 3.1448357e+03 - 2.4473454e+02 -3.5233211e+02 3.1449890e+03 - 2.7229437e+02 -3.2613535e+02 3.1450803e+03 - 2.9944252e+02 -2.9944252e+02 3.1451107e+03 - 3.2613535e+02 -2.7229437e+02 3.1450803e+03 - 3.5233211e+02 -2.4473454e+02 3.1449890e+03 - 3.7799481e+02 -2.1680976e+02 3.1448357e+03 - 4.0308802e+02 -1.8857012e+02 3.1446190e+03 - 4.2757875e+02 -1.6006928e+02 3.1443367e+03 - 4.5143636e+02 -1.3136478e+02 3.1439861e+03 - 4.7463240e+02 -1.0251842e+02 3.1435639e+03 - 4.9714052e+02 -7.3596603e+01 3.1430661e+03 - 5.1893642e+02 -4.4670873e+01 3.1424882e+03 - 5.3999771e+02 -1.5818397e+01 3.1418254e+03 - 5.6030385e+02 1.2877374e+01 3.1410720e+03 - 5.7983609e+02 4.1325992e+01 3.1402221e+03 - 5.9857738e+02 6.9429166e+01 3.1392692e+03 - 6.1651229e+02 9.7079793e+01 3.1382066e+03 - 6.3362703e+02 1.2416085e+02 3.1370270e+03 - 6.4990930e+02 1.5054413e+02 3.1357231e+03 - 6.6534836e+02 1.7608880e+02 3.1342875e+03 - 6.7993496e+02 2.0063981e+02 3.1327126e+03 - 6.9366135e+02 2.2402610e+02 3.1309913e+03 - 7.0652141e+02 2.4605870e+02 3.1291166e+03 - 7.1851064e+02 2.6652875e+02 3.1270825e+03 - 7.2962642e+02 2.8520541e+02 3.1248840e+03 - 7.3986822e+02 3.0183409e+02 3.1225178e+03 - 7.4923791e+02 3.1613485e+02 3.1199827e+03 - 7.5774029e+02 3.2780170e+02 3.1172803e+03 - 7.6538370e+02 3.3650296e+02 3.1144164e+03 - 7.7218076e+02 3.4188364e+02 3.1114014e+03 - 7.7814935e+02 3.4357047e+02 3.1082521e+03 - 7.8331373e+02 3.4118094e+02 3.1049927e+03 - 7.8770566e+02 3.3433744e+02 3.1016565e+03 - 7.9136562e+02 3.2268786e+02 3.0982872e+03 - 7.9434367e+02 3.0593357e+02 3.0949397e+03 - 7.9669987e+02 2.8386500e+02 3.0916810e+03 - 7.9850376e+02 2.5640349e+02 3.0885889e+03 - 7.9983260e+02 2.2364598e+02 3.0857503e+03 - 8.0076798e+02 1.8590636e+02 3.0832569e+03 - 8.0139074e+02 1.4374509e+02 3.0811998e+03 - 8.0177457e+02 9.7977493e+01 3.0796619e+03 - 8.0197892e+02 4.9652664e+01 3.0787100e+03 - 8.0204255e+02 -2.4067136e-09 3.0783877e+03 - 9.0835154e+02 -2.4067136e-09 3.0146616e+03 - 9.0826302e+02 -5.0115060e+01 3.0150166e+03 - 9.0798435e+02 -9.8782079e+01 3.0160634e+03 - 9.0747795e+02 -1.4466651e+02 3.0177496e+03 - 9.0668634e+02 -1.8664058e+02 3.0199953e+03 - 9.0553851e+02 -2.2384246e+02 3.0227025e+03 - 9.0395690e+02 -2.5569687e+02 3.0257644e+03 - 9.0186354e+02 -2.8190172e+02 3.0290749e+03 - 8.9918485e+02 -3.0239107e+02 3.0325352e+03 - 8.9585470e+02 -3.1728595e+02 3.0360582e+03 - 8.9181596e+02 -3.2684291e+02 3.0395711e+03 - 8.8702078e+02 -3.3140726e+02 3.0430150e+03 - 8.8143017e+02 -3.3137424e+02 3.0463449e+03 - 8.7501303e+02 -3.2715940e+02 3.0495278e+03 - 8.6774507e+02 -3.1917737e+02 3.0525408e+03 - 8.5960773e+02 -3.0782790e+02 3.0553698e+03 - 8.5058718e+02 -2.9348739e+02 3.0580072e+03 - 8.4067349e+02 -2.7650448e+02 3.0604506e+03 - 8.2985995e+02 -2.5719849e+02 3.0627017e+03 - 8.1814256e+02 -2.3585972e+02 3.0647653e+03 - 8.0551964e+02 -2.1275080e+02 3.0666481e+03 - 7.9199154e+02 -1.8810877e+02 3.0683584e+03 - 7.7756046e+02 -1.6214730e+02 3.0699055e+03 - 7.6223033e+02 -1.3505910e+02 3.0712993e+03 - 7.4600676e+02 -1.0701814e+02 3.0725497e+03 - 7.2889696e+02 -7.8181834e+01 3.0736669e+03 - 7.1090981e+02 -4.8692886e+01 3.0746609e+03 - 6.9205582e+02 -1.8681073e+01 3.0755413e+03 - 6.7234720e+02 1.1735267e+01 3.0763173e+03 - 6.5179791e+02 4.2447896e+01 3.0769976e+03 - 6.3042369e+02 7.3357521e+01 3.0775905e+03 - 6.0824217e+02 1.0437280e+02 3.0781034e+03 - 5.8527286e+02 1.3540946e+02 3.0785434e+03 - 5.6153731e+02 1.6638960e+02 3.0789167e+03 - 5.3705912e+02 1.9724100e+02 3.0792288e+03 - 5.1186405e+02 2.2789663e+02 3.0794846e+03 - 4.8598010e+02 2.5829413e+02 3.0796882e+03 - 4.5943761e+02 2.8837547e+02 3.0798431e+03 - 4.3226936e+02 3.1808655e+02 3.0799518e+03 - 4.0451068e+02 3.4737693e+02 3.0800163e+03 - 3.7619959e+02 3.7619959e+02 3.0800377e+03 - 3.4737693e+02 4.0451068e+02 3.0800163e+03 - 3.1808655e+02 4.3226936e+02 3.0799518e+03 - 2.8837547e+02 4.5943761e+02 3.0798431e+03 - 2.5829413e+02 4.8598010e+02 3.0796882e+03 - 2.2789663e+02 5.1186405e+02 3.0794846e+03 - 1.9724100e+02 5.3705912e+02 3.0792288e+03 - 1.6638960e+02 5.6153731e+02 3.0789167e+03 - 1.3540946e+02 5.8527286e+02 3.0785434e+03 - 1.0437280e+02 6.0824217e+02 3.0781034e+03 - 7.3357521e+01 6.3042369e+02 3.0775905e+03 - 4.2447896e+01 6.5179791e+02 3.0769976e+03 - 1.1735267e+01 6.7234720e+02 3.0763173e+03 - -1.8681073e+01 6.9205582e+02 3.0755413e+03 - -4.8692886e+01 7.1090981e+02 3.0746609e+03 - -7.8181834e+01 7.2889696e+02 3.0736669e+03 - -1.0701814e+02 7.4600676e+02 3.0725497e+03 - -1.3505910e+02 7.6223033e+02 3.0712993e+03 - -1.6214730e+02 7.7756046e+02 3.0699055e+03 - -1.8810877e+02 7.9199154e+02 3.0683584e+03 - -2.1275080e+02 8.0551964e+02 3.0666481e+03 - -2.3585972e+02 8.1814256e+02 3.0647653e+03 - -2.5719849e+02 8.2985995e+02 3.0627017e+03 - -2.7650448e+02 8.4067349e+02 3.0604506e+03 - -2.9348739e+02 8.5058718e+02 3.0580072e+03 - -3.0782790e+02 8.5960773e+02 3.0553698e+03 - -3.1917737e+02 8.6774507e+02 3.0525408e+03 - -3.2715940e+02 8.7501303e+02 3.0495278e+03 - -3.3137424e+02 8.8143017e+02 3.0463449e+03 - -3.3140726e+02 8.8702078e+02 3.0430150e+03 - -3.2684291e+02 8.9181596e+02 3.0395711e+03 - -3.1728595e+02 8.9585470e+02 3.0360582e+03 - -3.0239107e+02 8.9918485e+02 3.0325352e+03 - -2.8190172e+02 9.0186354e+02 3.0290749e+03 - -2.5569687e+02 9.0395690e+02 3.0257644e+03 - -2.2384246e+02 9.0553851e+02 3.0227025e+03 - -1.8664058e+02 9.0668634e+02 3.0199953e+03 - -1.4466651e+02 9.0747795e+02 3.0177496e+03 - -9.8782079e+01 9.0798435e+02 3.0160634e+03 - -5.0115060e+01 9.0826302e+02 3.0150166e+03 - 4.8134273e-09 9.0835154e+02 3.0146616e+03 - 5.0115060e+01 9.0826302e+02 3.0150166e+03 - 9.8782079e+01 9.0798435e+02 3.0160634e+03 - 1.4466651e+02 9.0747795e+02 3.0177496e+03 - 1.8664058e+02 9.0668634e+02 3.0199953e+03 - 2.2384246e+02 9.0553851e+02 3.0227025e+03 - 2.5569687e+02 9.0395690e+02 3.0257644e+03 - 2.8190172e+02 9.0186354e+02 3.0290749e+03 - 3.0239107e+02 8.9918485e+02 3.0325352e+03 - 3.1728595e+02 8.9585470e+02 3.0360582e+03 - 3.2684291e+02 8.9181596e+02 3.0395711e+03 - 3.3140726e+02 8.8702078e+02 3.0430150e+03 - 3.3137424e+02 8.8143017e+02 3.0463449e+03 - 3.2715940e+02 8.7501303e+02 3.0495278e+03 - 3.1917737e+02 8.6774507e+02 3.0525408e+03 - 3.0782790e+02 8.5960773e+02 3.0553698e+03 - 2.9348739e+02 8.5058718e+02 3.0580072e+03 - 2.7650448e+02 8.4067349e+02 3.0604506e+03 - 2.5719849e+02 8.2985995e+02 3.0627017e+03 - 2.3585972e+02 8.1814256e+02 3.0647653e+03 - 2.1275080e+02 8.0551964e+02 3.0666481e+03 - 1.8810877e+02 7.9199154e+02 3.0683584e+03 - 1.6214730e+02 7.7756046e+02 3.0699055e+03 - 1.3505910e+02 7.6223033e+02 3.0712993e+03 - 1.0701814e+02 7.4600676e+02 3.0725497e+03 - 7.8181834e+01 7.2889696e+02 3.0736669e+03 - 4.8692886e+01 7.1090981e+02 3.0746609e+03 - 1.8681073e+01 6.9205582e+02 3.0755413e+03 - -1.1735267e+01 6.7234720e+02 3.0763173e+03 - -4.2447896e+01 6.5179791e+02 3.0769976e+03 - -7.3357521e+01 6.3042369e+02 3.0775905e+03 - -1.0437280e+02 6.0824217e+02 3.0781034e+03 - -1.3540946e+02 5.8527286e+02 3.0785434e+03 - -1.6638960e+02 5.6153731e+02 3.0789167e+03 - -1.9724100e+02 5.3705912e+02 3.0792288e+03 - -2.2789663e+02 5.1186405e+02 3.0794846e+03 - -2.5829413e+02 4.8598010e+02 3.0796882e+03 - -2.8837547e+02 4.5943761e+02 3.0798431e+03 - -3.1808655e+02 4.3226936e+02 3.0799518e+03 - -3.4737693e+02 4.0451068e+02 3.0800163e+03 - -3.7619959e+02 3.7619959e+02 3.0800377e+03 - -4.0451068e+02 3.4737693e+02 3.0800163e+03 - -4.3226936e+02 3.1808655e+02 3.0799518e+03 - -4.5943761e+02 2.8837547e+02 3.0798431e+03 - -4.8598010e+02 2.5829413e+02 3.0796882e+03 - -5.1186405e+02 2.2789663e+02 3.0794846e+03 - -5.3705912e+02 1.9724100e+02 3.0792288e+03 - -5.6153731e+02 1.6638960e+02 3.0789167e+03 - -5.8527286e+02 1.3540946e+02 3.0785434e+03 - -6.0824217e+02 1.0437280e+02 3.0781034e+03 - -6.3042369e+02 7.3357521e+01 3.0775905e+03 - -6.5179791e+02 4.2447896e+01 3.0769976e+03 - -6.7234720e+02 1.1735267e+01 3.0763173e+03 - -6.9205582e+02 -1.8681073e+01 3.0755413e+03 - -7.1090981e+02 -4.8692886e+01 3.0746609e+03 - -7.2889696e+02 -7.8181834e+01 3.0736669e+03 - -7.4600676e+02 -1.0701814e+02 3.0725497e+03 - -7.6223033e+02 -1.3505910e+02 3.0712993e+03 - -7.7756046e+02 -1.6214730e+02 3.0699055e+03 - -7.9199154e+02 -1.8810877e+02 3.0683584e+03 - -8.0551964e+02 -2.1275080e+02 3.0666481e+03 - -8.1814256e+02 -2.3585972e+02 3.0647653e+03 - -8.2985995e+02 -2.5719849e+02 3.0627017e+03 - -8.4067349e+02 -2.7650448e+02 3.0604506e+03 - -8.5058718e+02 -2.9348739e+02 3.0580072e+03 - -8.5960773e+02 -3.0782790e+02 3.0553698e+03 - -8.6774507e+02 -3.1917737e+02 3.0525408e+03 - -8.7501303e+02 -3.2715940e+02 3.0495278e+03 - -8.8143017e+02 -3.3137424e+02 3.0463449e+03 - -8.8702078e+02 -3.3140726e+02 3.0430150e+03 - -8.9181596e+02 -3.2684291e+02 3.0395711e+03 - -8.9585470e+02 -3.1728595e+02 3.0360582e+03 - -8.9918485e+02 -3.0239107e+02 3.0325352e+03 - -9.0186354e+02 -2.8190172e+02 3.0290749e+03 - -9.0395690e+02 -2.5569687e+02 3.0257644e+03 - -9.0553851e+02 -2.2384246e+02 3.0227025e+03 - -9.0668634e+02 -1.8664058e+02 3.0199953e+03 - -9.0747795e+02 -1.4466651e+02 3.0177496e+03 - -9.0798435e+02 -9.8782079e+01 3.0160634e+03 - -9.0826302e+02 -5.0115060e+01 3.0150166e+03 - -9.0835154e+02 0.0000000e+00 3.0146616e+03 - -9.0826302e+02 5.0115060e+01 3.0150166e+03 - -9.0798435e+02 9.8782079e+01 3.0160634e+03 - -9.0747795e+02 1.4466651e+02 3.0177496e+03 - -9.0668634e+02 1.8664058e+02 3.0199953e+03 - -9.0553851e+02 2.2384246e+02 3.0227025e+03 - -9.0395690e+02 2.5569687e+02 3.0257644e+03 - -9.0186354e+02 2.8190172e+02 3.0290749e+03 - -8.9918485e+02 3.0239107e+02 3.0325352e+03 - -8.9585470e+02 3.1728595e+02 3.0360582e+03 - -8.9181596e+02 3.2684291e+02 3.0395711e+03 - -8.8702078e+02 3.3140726e+02 3.0430150e+03 - -8.8143017e+02 3.3137424e+02 3.0463449e+03 - -8.7501303e+02 3.2715940e+02 3.0495278e+03 - -8.6774507e+02 3.1917737e+02 3.0525408e+03 - -8.5960773e+02 3.0782790e+02 3.0553698e+03 - -8.5058718e+02 2.9348739e+02 3.0580072e+03 - -8.4067349e+02 2.7650448e+02 3.0604506e+03 - -8.2985995e+02 2.5719849e+02 3.0627017e+03 - -8.1814256e+02 2.3585972e+02 3.0647653e+03 - -8.0551964e+02 2.1275080e+02 3.0666481e+03 - -7.9199154e+02 1.8810877e+02 3.0683584e+03 - -7.7756046e+02 1.6214730e+02 3.0699055e+03 - -7.6223033e+02 1.3505910e+02 3.0712993e+03 - -7.4600676e+02 1.0701814e+02 3.0725497e+03 - -7.2889696e+02 7.8181834e+01 3.0736669e+03 - -7.1090981e+02 4.8692886e+01 3.0746609e+03 - -6.9205582e+02 1.8681073e+01 3.0755413e+03 - -6.7234720e+02 -1.1735267e+01 3.0763173e+03 - -6.5179791e+02 -4.2447896e+01 3.0769976e+03 - -6.3042369e+02 -7.3357521e+01 3.0775905e+03 - -6.0824217e+02 -1.0437280e+02 3.0781034e+03 - -5.8527286e+02 -1.3540946e+02 3.0785434e+03 - -5.6153731e+02 -1.6638960e+02 3.0789167e+03 - -5.3705912e+02 -1.9724100e+02 3.0792288e+03 - -5.1186405e+02 -2.2789663e+02 3.0794846e+03 - -4.8598010e+02 -2.5829413e+02 3.0796882e+03 - -4.5943761e+02 -2.8837547e+02 3.0798431e+03 - -4.3226936e+02 -3.1808655e+02 3.0799518e+03 - -4.0451068e+02 -3.4737693e+02 3.0800163e+03 - -3.7619959e+02 -3.7619959e+02 3.0800377e+03 - -3.4737693e+02 -4.0451068e+02 3.0800163e+03 - -3.1808655e+02 -4.3226936e+02 3.0799518e+03 - -2.8837547e+02 -4.5943761e+02 3.0798431e+03 - -2.5829413e+02 -4.8598010e+02 3.0796882e+03 - -2.2789663e+02 -5.1186405e+02 3.0794846e+03 - -1.9724100e+02 -5.3705912e+02 3.0792288e+03 - -1.6638960e+02 -5.6153731e+02 3.0789167e+03 - -1.3540946e+02 -5.8527286e+02 3.0785434e+03 - -1.0437280e+02 -6.0824217e+02 3.0781034e+03 - -7.3357521e+01 -6.3042369e+02 3.0775905e+03 - -4.2447896e+01 -6.5179791e+02 3.0769976e+03 - -1.1735267e+01 -6.7234720e+02 3.0763173e+03 - 1.8681073e+01 -6.9205582e+02 3.0755413e+03 - 4.8692886e+01 -7.1090981e+02 3.0746609e+03 - 7.8181834e+01 -7.2889696e+02 3.0736669e+03 - 1.0701814e+02 -7.4600676e+02 3.0725497e+03 - 1.3505910e+02 -7.6223033e+02 3.0712993e+03 - 1.6214730e+02 -7.7756046e+02 3.0699055e+03 - 1.8810877e+02 -7.9199154e+02 3.0683584e+03 - 2.1275080e+02 -8.0551964e+02 3.0666481e+03 - 2.3585972e+02 -8.1814256e+02 3.0647653e+03 - 2.5719849e+02 -8.2985995e+02 3.0627017e+03 - 2.7650448e+02 -8.4067349e+02 3.0604506e+03 - 2.9348739e+02 -8.5058718e+02 3.0580072e+03 - 3.0782790e+02 -8.5960773e+02 3.0553698e+03 - 3.1917737e+02 -8.6774507e+02 3.0525408e+03 - 3.2715940e+02 -8.7501303e+02 3.0495278e+03 - 3.3137424e+02 -8.8143017e+02 3.0463449e+03 - 3.3140726e+02 -8.8702078e+02 3.0430150e+03 - 3.2684291e+02 -8.9181596e+02 3.0395711e+03 - 3.1728595e+02 -8.9585470e+02 3.0360582e+03 - 3.0239107e+02 -8.9918485e+02 3.0325352e+03 - 2.8190172e+02 -9.0186354e+02 3.0290749e+03 - 2.5569687e+02 -9.0395690e+02 3.0257644e+03 - 2.2384246e+02 -9.0553851e+02 3.0227025e+03 - 1.8664058e+02 -9.0668634e+02 3.0199953e+03 - 1.4466651e+02 -9.0747795e+02 3.0177496e+03 - 9.8782079e+01 -9.0798435e+02 3.0160634e+03 - 5.0115060e+01 -9.0826302e+02 3.0150166e+03 - -4.8134273e-09 -9.0835154e+02 3.0146616e+03 - -5.0115060e+01 -9.0826302e+02 3.0150166e+03 - -9.8782079e+01 -9.0798435e+02 3.0160634e+03 - -1.4466651e+02 -9.0747795e+02 3.0177496e+03 - -1.8664058e+02 -9.0668634e+02 3.0199953e+03 - -2.2384246e+02 -9.0553851e+02 3.0227025e+03 - -2.5569687e+02 -9.0395690e+02 3.0257644e+03 - -2.8190172e+02 -9.0186354e+02 3.0290749e+03 - -3.0239107e+02 -8.9918485e+02 3.0325352e+03 - -3.1728595e+02 -8.9585470e+02 3.0360582e+03 - -3.2684291e+02 -8.9181596e+02 3.0395711e+03 - -3.3140726e+02 -8.8702078e+02 3.0430150e+03 - -3.3137424e+02 -8.8143017e+02 3.0463449e+03 - -3.2715940e+02 -8.7501303e+02 3.0495278e+03 - -3.1917737e+02 -8.6774507e+02 3.0525408e+03 - -3.0782790e+02 -8.5960773e+02 3.0553698e+03 - -2.9348739e+02 -8.5058718e+02 3.0580072e+03 - -2.7650448e+02 -8.4067349e+02 3.0604506e+03 - -2.5719849e+02 -8.2985995e+02 3.0627017e+03 - -2.3585972e+02 -8.1814256e+02 3.0647653e+03 - -2.1275080e+02 -8.0551964e+02 3.0666481e+03 - -1.8810877e+02 -7.9199154e+02 3.0683584e+03 - -1.6214730e+02 -7.7756046e+02 3.0699055e+03 - -1.3505910e+02 -7.6223033e+02 3.0712993e+03 - -1.0701814e+02 -7.4600676e+02 3.0725497e+03 - -7.8181834e+01 -7.2889696e+02 3.0736669e+03 - -4.8692886e+01 -7.1090981e+02 3.0746609e+03 - -1.8681073e+01 -6.9205582e+02 3.0755413e+03 - 1.1735267e+01 -6.7234720e+02 3.0763173e+03 - 4.2447896e+01 -6.5179791e+02 3.0769976e+03 - 7.3357521e+01 -6.3042369e+02 3.0775905e+03 - 1.0437280e+02 -6.0824217e+02 3.0781034e+03 - 1.3540946e+02 -5.8527286e+02 3.0785434e+03 - 1.6638960e+02 -5.6153731e+02 3.0789167e+03 - 1.9724100e+02 -5.3705912e+02 3.0792288e+03 - 2.2789663e+02 -5.1186405e+02 3.0794846e+03 - 2.5829413e+02 -4.8598010e+02 3.0796882e+03 - 2.8837547e+02 -4.5943761e+02 3.0798431e+03 - 3.1808655e+02 -4.3226936e+02 3.0799518e+03 - 3.4737693e+02 -4.0451068e+02 3.0800163e+03 - 3.7619959e+02 -3.7619959e+02 3.0800377e+03 - 4.0451068e+02 -3.4737693e+02 3.0800163e+03 - 4.3226936e+02 -3.1808655e+02 3.0799518e+03 - 4.5943761e+02 -2.8837547e+02 3.0798431e+03 - 4.8598010e+02 -2.5829413e+02 3.0796882e+03 - 5.1186405e+02 -2.2789663e+02 3.0794846e+03 - 5.3705912e+02 -1.9724100e+02 3.0792288e+03 - 5.6153731e+02 -1.6638960e+02 3.0789167e+03 - 5.8527286e+02 -1.3540946e+02 3.0785434e+03 - 6.0824217e+02 -1.0437280e+02 3.0781034e+03 - 6.3042369e+02 -7.3357521e+01 3.0775905e+03 - 6.5179791e+02 -4.2447896e+01 3.0769976e+03 - 6.7234720e+02 -1.1735267e+01 3.0763173e+03 - 6.9205582e+02 1.8681073e+01 3.0755413e+03 - 7.1090981e+02 4.8692886e+01 3.0746609e+03 - 7.2889696e+02 7.8181834e+01 3.0736669e+03 - 7.4600676e+02 1.0701814e+02 3.0725497e+03 - 7.6223033e+02 1.3505910e+02 3.0712993e+03 - 7.7756046e+02 1.6214730e+02 3.0699055e+03 - 7.9199154e+02 1.8810877e+02 3.0683584e+03 - 8.0551964e+02 2.1275080e+02 3.0666481e+03 - 8.1814256e+02 2.3585972e+02 3.0647653e+03 - 8.2985995e+02 2.5719849e+02 3.0627017e+03 - 8.4067349e+02 2.7650448e+02 3.0604506e+03 - 8.5058718e+02 2.9348739e+02 3.0580072e+03 - 8.5960773e+02 3.0782790e+02 3.0553698e+03 - 8.6774507e+02 3.1917737e+02 3.0525408e+03 - 8.7501303e+02 3.2715940e+02 3.0495278e+03 - 8.8143017e+02 3.3137424e+02 3.0463449e+03 - 8.8702078e+02 3.3140726e+02 3.0430150e+03 - 8.9181596e+02 3.2684291e+02 3.0395711e+03 - 8.9585470e+02 3.1728595e+02 3.0360582e+03 - 8.9918485e+02 3.0239107e+02 3.0325352e+03 - 9.0186354e+02 2.8190172e+02 3.0290749e+03 - 9.0395690e+02 2.5569687e+02 3.0257644e+03 - 9.0553851e+02 2.2384246e+02 3.0227025e+03 - 9.0668634e+02 1.8664058e+02 3.0199953e+03 - 9.0747795e+02 1.4466651e+02 3.0177496e+03 - 9.0798435e+02 9.8782079e+01 3.0160634e+03 - 9.0826302e+02 5.0115060e+01 3.0150166e+03 - 9.0835154e+02 -4.8134273e-09 3.0146616e+03 - 1.0163162e+03 -4.8134273e-09 2.9470276e+03 - 1.0161994e+03 -5.0631575e+01 2.9474198e+03 - 1.0158366e+03 -9.9678825e+01 2.9485740e+03 - 1.0151925e+03 -1.4568914e+02 2.9504271e+03 - 1.0142131e+03 -1.8744853e+02 2.9528832e+03 - 1.0128317e+03 -2.2404700e+02 2.9558255e+03 - 1.0109760e+03 -2.5489788e+02 2.9591288e+03 - 1.0085734e+03 -2.7971775e+02 2.9626701e+03 - 1.0055552e+03 -2.9848004e+02 2.9663372e+03 - 1.0018598e+03 -3.1135647e+02 2.9700331e+03 - 9.9743358e+02 -3.1865793e+02 2.9736784e+03 - 9.9223131e+02 -3.2078221e+02 2.9772111e+03 - 9.8621545e+02 -3.1817192e+02 2.9805854e+03 - 9.7935540e+02 -3.1128331e+02 2.9837693e+03 - 9.7162650e+02 -3.0056479e+02 2.9867427e+03 - 9.6300911e+02 -2.8644333e+02 2.9894944e+03 - 9.5348774e+02 -2.6931684e+02 2.9920208e+03 - 9.4305039e+02 -2.4955063e+02 2.9943238e+03 - 9.3168797e+02 -2.2747681e+02 2.9964093e+03 - 9.1939395e+02 -2.0339538e+02 2.9982862e+03 - 9.0616402e+02 -1.7757627e+02 2.9999653e+03 - 8.9199589e+02 -1.5026196e+02 3.0014588e+03 - 8.7688916e+02 -1.2167023e+02 3.0027797e+03 - 8.6084527e+02 -9.1996857e+01 3.0039411e+03 - 8.4386740e+02 -6.1418151e+01 3.0049565e+03 - 8.2596055e+02 -3.0093284e+01 3.0058388e+03 - 8.0713146e+02 1.8336326e+00 3.0066008e+03 - 7.8738873e+02 3.4231716e+01 3.0072547e+03 - 7.6674278e+02 6.6981710e+01 3.0078120e+03 - 7.4520598e+02 9.9974596e+01 3.0082835e+03 - 7.2279262e+02 1.3311040e+02 3.0086795e+03 - 6.9951904e+02 1.6629718e+02 3.0090092e+03 - 6.7540366e+02 1.9945010e+02 3.0092811e+03 - 6.5046705e+02 2.3249075e+02 3.0095028e+03 - 6.2473198e+02 2.6534646e+02 3.0096812e+03 - 5.9822355e+02 2.9794974e+02 3.0098220e+03 - 5.7096919e+02 3.3023789e+02 3.0099305e+03 - 5.4299883e+02 3.6215251e+02 3.0100105e+03 - 5.1434494e+02 3.9363923e+02 3.0100654e+03 - 4.8504263e+02 4.2464740e+02 3.0100975e+03 - 4.5512984e+02 4.5512984e+02 3.0101080e+03 - 4.2464740e+02 4.8504263e+02 3.0100975e+03 - 3.9363923e+02 5.1434494e+02 3.0100654e+03 - 3.6215251e+02 5.4299883e+02 3.0100105e+03 - 3.3023789e+02 5.7096919e+02 3.0099305e+03 - 2.9794974e+02 5.9822355e+02 3.0098220e+03 - 2.6534646e+02 6.2473198e+02 3.0096812e+03 - 2.3249075e+02 6.5046705e+02 3.0095028e+03 - 1.9945010e+02 6.7540366e+02 3.0092811e+03 - 1.6629718e+02 6.9951904e+02 3.0090092e+03 - 1.3311040e+02 7.2279262e+02 3.0086795e+03 - 9.9974596e+01 7.4520598e+02 3.0082835e+03 - 6.6981710e+01 7.6674278e+02 3.0078120e+03 - 3.4231716e+01 7.8738873e+02 3.0072547e+03 - 1.8336326e+00 8.0713146e+02 3.0066008e+03 - -3.0093284e+01 8.2596055e+02 3.0058388e+03 - -6.1418151e+01 8.4386740e+02 3.0049565e+03 - -9.1996857e+01 8.6084527e+02 3.0039411e+03 - -1.2167023e+02 8.7688916e+02 3.0027797e+03 - -1.5026196e+02 8.9199589e+02 3.0014588e+03 - -1.7757627e+02 9.0616402e+02 2.9999653e+03 - -2.0339538e+02 9.1939395e+02 2.9982862e+03 - -2.2747681e+02 9.3168797e+02 2.9964093e+03 - -2.4955063e+02 9.4305039e+02 2.9943238e+03 - -2.6931684e+02 9.5348774e+02 2.9920208e+03 - -2.8644333e+02 9.6300911e+02 2.9894944e+03 - -3.0056479e+02 9.7162650e+02 2.9867427e+03 - -3.1128331e+02 9.7935540e+02 2.9837693e+03 - -3.1817192e+02 9.8621545e+02 2.9805854e+03 - -3.2078221e+02 9.9223131e+02 2.9772111e+03 - -3.1865793e+02 9.9743358e+02 2.9736784e+03 - -3.1135647e+02 1.0018598e+03 2.9700331e+03 - -2.9848004e+02 1.0055552e+03 2.9663372e+03 - -2.7971775e+02 1.0085734e+03 2.9626701e+03 - -2.5489788e+02 1.0109760e+03 2.9591288e+03 - -2.2404700e+02 1.0128317e+03 2.9558255e+03 - -1.8744853e+02 1.0142131e+03 2.9528832e+03 - -1.4568914e+02 1.0151925e+03 2.9504271e+03 - -9.9678825e+01 1.0158366e+03 2.9485740e+03 - -5.0631575e+01 1.0161994e+03 2.9474198e+03 - 0.0000000e+00 1.0163162e+03 2.9470276e+03 - 5.0631575e+01 1.0161994e+03 2.9474198e+03 - 9.9678825e+01 1.0158366e+03 2.9485740e+03 - 1.4568914e+02 1.0151925e+03 2.9504271e+03 - 1.8744853e+02 1.0142131e+03 2.9528832e+03 - 2.2404700e+02 1.0128317e+03 2.9558255e+03 - 2.5489788e+02 1.0109760e+03 2.9591288e+03 - 2.7971775e+02 1.0085734e+03 2.9626701e+03 - 2.9848004e+02 1.0055552e+03 2.9663372e+03 - 3.1135647e+02 1.0018598e+03 2.9700331e+03 - 3.1865793e+02 9.9743358e+02 2.9736784e+03 - 3.2078221e+02 9.9223131e+02 2.9772111e+03 - 3.1817192e+02 9.8621545e+02 2.9805854e+03 - 3.1128331e+02 9.7935540e+02 2.9837693e+03 - 3.0056479e+02 9.7162650e+02 2.9867427e+03 - 2.8644333e+02 9.6300911e+02 2.9894944e+03 - 2.6931684e+02 9.5348774e+02 2.9920208e+03 - 2.4955063e+02 9.4305039e+02 2.9943238e+03 - 2.2747681e+02 9.3168797e+02 2.9964093e+03 - 2.0339538e+02 9.1939395e+02 2.9982862e+03 - 1.7757627e+02 9.0616402e+02 2.9999653e+03 - 1.5026196e+02 8.9199589e+02 3.0014588e+03 - 1.2167023e+02 8.7688916e+02 3.0027797e+03 - 9.1996857e+01 8.6084527e+02 3.0039411e+03 - 6.1418151e+01 8.4386740e+02 3.0049565e+03 - 3.0093284e+01 8.2596055e+02 3.0058388e+03 - -1.8336326e+00 8.0713146e+02 3.0066008e+03 - -3.4231716e+01 7.8738873e+02 3.0072547e+03 - -6.6981710e+01 7.6674278e+02 3.0078120e+03 - -9.9974596e+01 7.4520598e+02 3.0082835e+03 - -1.3311040e+02 7.2279262e+02 3.0086795e+03 - -1.6629718e+02 6.9951904e+02 3.0090092e+03 - -1.9945010e+02 6.7540366e+02 3.0092811e+03 - -2.3249075e+02 6.5046705e+02 3.0095028e+03 - -2.6534646e+02 6.2473198e+02 3.0096812e+03 - -2.9794974e+02 5.9822355e+02 3.0098220e+03 - -3.3023789e+02 5.7096919e+02 3.0099305e+03 - -3.6215251e+02 5.4299883e+02 3.0100105e+03 - -3.9363923e+02 5.1434494e+02 3.0100654e+03 - -4.2464740e+02 4.8504263e+02 3.0100975e+03 - -4.5512984e+02 4.5512984e+02 3.0101080e+03 - -4.8504263e+02 4.2464740e+02 3.0100975e+03 - -5.1434494e+02 3.9363923e+02 3.0100654e+03 - -5.4299883e+02 3.6215251e+02 3.0100105e+03 - -5.7096919e+02 3.3023789e+02 3.0099305e+03 - -5.9822355e+02 2.9794974e+02 3.0098220e+03 - -6.2473198e+02 2.6534646e+02 3.0096812e+03 - -6.5046705e+02 2.3249075e+02 3.0095028e+03 - -6.7540366e+02 1.9945010e+02 3.0092811e+03 - -6.9951904e+02 1.6629718e+02 3.0090092e+03 - -7.2279262e+02 1.3311040e+02 3.0086795e+03 - -7.4520598e+02 9.9974596e+01 3.0082835e+03 - -7.6674278e+02 6.6981710e+01 3.0078120e+03 - -7.8738873e+02 3.4231716e+01 3.0072547e+03 - -8.0713146e+02 1.8336326e+00 3.0066008e+03 - -8.2596055e+02 -3.0093284e+01 3.0058388e+03 - -8.4386740e+02 -6.1418151e+01 3.0049565e+03 - -8.6084527e+02 -9.1996857e+01 3.0039411e+03 - -8.7688916e+02 -1.2167023e+02 3.0027797e+03 - -8.9199589e+02 -1.5026196e+02 3.0014588e+03 - -9.0616402e+02 -1.7757627e+02 2.9999653e+03 - -9.1939395e+02 -2.0339538e+02 2.9982862e+03 - -9.3168797e+02 -2.2747681e+02 2.9964093e+03 - -9.4305039e+02 -2.4955063e+02 2.9943238e+03 - -9.5348774e+02 -2.6931684e+02 2.9920208e+03 - -9.6300911e+02 -2.8644333e+02 2.9894944e+03 - -9.7162650e+02 -3.0056479e+02 2.9867427e+03 - -9.7935540e+02 -3.1128331e+02 2.9837693e+03 - -9.8621545e+02 -3.1817192e+02 2.9805854e+03 - -9.9223131e+02 -3.2078221e+02 2.9772111e+03 - -9.9743358e+02 -3.1865793e+02 2.9736784e+03 - -1.0018598e+03 -3.1135647e+02 2.9700331e+03 - -1.0055552e+03 -2.9848004e+02 2.9663372e+03 - -1.0085734e+03 -2.7971775e+02 2.9626701e+03 - -1.0109760e+03 -2.5489788e+02 2.9591288e+03 - -1.0128317e+03 -2.2404700e+02 2.9558255e+03 - -1.0142131e+03 -1.8744853e+02 2.9528832e+03 - -1.0151925e+03 -1.4568914e+02 2.9504271e+03 - -1.0158366e+03 -9.9678825e+01 2.9485740e+03 - -1.0161994e+03 -5.0631575e+01 2.9474198e+03 - -1.0163162e+03 0.0000000e+00 2.9470276e+03 - -1.0161994e+03 5.0631575e+01 2.9474198e+03 - -1.0158366e+03 9.9678825e+01 2.9485740e+03 - -1.0151925e+03 1.4568914e+02 2.9504271e+03 - -1.0142131e+03 1.8744853e+02 2.9528832e+03 - -1.0128317e+03 2.2404700e+02 2.9558255e+03 - -1.0109760e+03 2.5489788e+02 2.9591288e+03 - -1.0085734e+03 2.7971775e+02 2.9626701e+03 - -1.0055552e+03 2.9848004e+02 2.9663372e+03 - -1.0018598e+03 3.1135647e+02 2.9700331e+03 - -9.9743358e+02 3.1865793e+02 2.9736784e+03 - -9.9223131e+02 3.2078221e+02 2.9772111e+03 - -9.8621545e+02 3.1817192e+02 2.9805854e+03 - -9.7935540e+02 3.1128331e+02 2.9837693e+03 - -9.7162650e+02 3.0056479e+02 2.9867427e+03 - -9.6300911e+02 2.8644333e+02 2.9894944e+03 - -9.5348774e+02 2.6931684e+02 2.9920208e+03 - -9.4305039e+02 2.4955063e+02 2.9943238e+03 - -9.3168797e+02 2.2747681e+02 2.9964093e+03 - -9.1939395e+02 2.0339538e+02 2.9982862e+03 - -9.0616402e+02 1.7757627e+02 2.9999653e+03 - -8.9199589e+02 1.5026196e+02 3.0014588e+03 - -8.7688916e+02 1.2167023e+02 3.0027797e+03 - -8.6084527e+02 9.1996857e+01 3.0039411e+03 - -8.4386740e+02 6.1418151e+01 3.0049565e+03 - -8.2596055e+02 3.0093284e+01 3.0058388e+03 - -8.0713146e+02 -1.8336326e+00 3.0066008e+03 - -7.8738873e+02 -3.4231716e+01 3.0072547e+03 - -7.6674278e+02 -6.6981710e+01 3.0078120e+03 - -7.4520598e+02 -9.9974596e+01 3.0082835e+03 - -7.2279262e+02 -1.3311040e+02 3.0086795e+03 - -6.9951904e+02 -1.6629718e+02 3.0090092e+03 - -6.7540366e+02 -1.9945010e+02 3.0092811e+03 - -6.5046705e+02 -2.3249075e+02 3.0095028e+03 - -6.2473198e+02 -2.6534646e+02 3.0096812e+03 - -5.9822355e+02 -2.9794974e+02 3.0098220e+03 - -5.7096919e+02 -3.3023789e+02 3.0099305e+03 - -5.4299883e+02 -3.6215251e+02 3.0100105e+03 - -5.1434494e+02 -3.9363923e+02 3.0100654e+03 - -4.8504263e+02 -4.2464740e+02 3.0100975e+03 - -4.5512984e+02 -4.5512984e+02 3.0101080e+03 - -4.2464740e+02 -4.8504263e+02 3.0100975e+03 - -3.9363923e+02 -5.1434494e+02 3.0100654e+03 - -3.6215251e+02 -5.4299883e+02 3.0100105e+03 - -3.3023789e+02 -5.7096919e+02 3.0099305e+03 - -2.9794974e+02 -5.9822355e+02 3.0098220e+03 - -2.6534646e+02 -6.2473198e+02 3.0096812e+03 - -2.3249075e+02 -6.5046705e+02 3.0095028e+03 - -1.9945010e+02 -6.7540366e+02 3.0092811e+03 - -1.6629718e+02 -6.9951904e+02 3.0090092e+03 - -1.3311040e+02 -7.2279262e+02 3.0086795e+03 - -9.9974596e+01 -7.4520598e+02 3.0082835e+03 - -6.6981710e+01 -7.6674278e+02 3.0078120e+03 - -3.4231716e+01 -7.8738873e+02 3.0072547e+03 - -1.8336326e+00 -8.0713146e+02 3.0066008e+03 - 3.0093284e+01 -8.2596055e+02 3.0058388e+03 - 6.1418151e+01 -8.4386740e+02 3.0049565e+03 - 9.1996857e+01 -8.6084527e+02 3.0039411e+03 - 1.2167023e+02 -8.7688916e+02 3.0027797e+03 - 1.5026196e+02 -8.9199589e+02 3.0014588e+03 - 1.7757627e+02 -9.0616402e+02 2.9999653e+03 - 2.0339538e+02 -9.1939395e+02 2.9982862e+03 - 2.2747681e+02 -9.3168797e+02 2.9964093e+03 - 2.4955063e+02 -9.4305039e+02 2.9943238e+03 - 2.6931684e+02 -9.5348774e+02 2.9920208e+03 - 2.8644333e+02 -9.6300911e+02 2.9894944e+03 - 3.0056479e+02 -9.7162650e+02 2.9867427e+03 - 3.1128331e+02 -9.7935540e+02 2.9837693e+03 - 3.1817192e+02 -9.8621545e+02 2.9805854e+03 - 3.2078221e+02 -9.9223131e+02 2.9772111e+03 - 3.1865793e+02 -9.9743358e+02 2.9736784e+03 - 3.1135647e+02 -1.0018598e+03 2.9700331e+03 - 2.9848004e+02 -1.0055552e+03 2.9663372e+03 - 2.7971775e+02 -1.0085734e+03 2.9626701e+03 - 2.5489788e+02 -1.0109760e+03 2.9591288e+03 - 2.2404700e+02 -1.0128317e+03 2.9558255e+03 - 1.8744853e+02 -1.0142131e+03 2.9528832e+03 - 1.4568914e+02 -1.0151925e+03 2.9504271e+03 - 9.9678825e+01 -1.0158366e+03 2.9485740e+03 - 5.0631575e+01 -1.0161994e+03 2.9474198e+03 - 0.0000000e+00 -1.0163162e+03 2.9470276e+03 - -5.0631575e+01 -1.0161994e+03 2.9474198e+03 - -9.9678825e+01 -1.0158366e+03 2.9485740e+03 - -1.4568914e+02 -1.0151925e+03 2.9504271e+03 - -1.8744853e+02 -1.0142131e+03 2.9528832e+03 - -2.2404700e+02 -1.0128317e+03 2.9558255e+03 - -2.5489788e+02 -1.0109760e+03 2.9591288e+03 - -2.7971775e+02 -1.0085734e+03 2.9626701e+03 - -2.9848004e+02 -1.0055552e+03 2.9663372e+03 - -3.1135647e+02 -1.0018598e+03 2.9700331e+03 - -3.1865793e+02 -9.9743358e+02 2.9736784e+03 - -3.2078221e+02 -9.9223131e+02 2.9772111e+03 - -3.1817192e+02 -9.8621545e+02 2.9805854e+03 - -3.1128331e+02 -9.7935540e+02 2.9837693e+03 - -3.0056479e+02 -9.7162650e+02 2.9867427e+03 - -2.8644333e+02 -9.6300911e+02 2.9894944e+03 - -2.6931684e+02 -9.5348774e+02 2.9920208e+03 - -2.4955063e+02 -9.4305039e+02 2.9943238e+03 - -2.2747681e+02 -9.3168797e+02 2.9964093e+03 - -2.0339538e+02 -9.1939395e+02 2.9982862e+03 - -1.7757627e+02 -9.0616402e+02 2.9999653e+03 - -1.5026196e+02 -8.9199589e+02 3.0014588e+03 - -1.2167023e+02 -8.7688916e+02 3.0027797e+03 - -9.1996857e+01 -8.6084527e+02 3.0039411e+03 - -6.1418151e+01 -8.4386740e+02 3.0049565e+03 - -3.0093284e+01 -8.2596055e+02 3.0058388e+03 - 1.8336326e+00 -8.0713146e+02 3.0066008e+03 - 3.4231716e+01 -7.8738873e+02 3.0072547e+03 - 6.6981710e+01 -7.6674278e+02 3.0078120e+03 - 9.9974596e+01 -7.4520598e+02 3.0082835e+03 - 1.3311040e+02 -7.2279262e+02 3.0086795e+03 - 1.6629718e+02 -6.9951904e+02 3.0090092e+03 - 1.9945010e+02 -6.7540366e+02 3.0092811e+03 - 2.3249075e+02 -6.5046705e+02 3.0095028e+03 - 2.6534646e+02 -6.2473198e+02 3.0096812e+03 - 2.9794974e+02 -5.9822355e+02 3.0098220e+03 - 3.3023789e+02 -5.7096919e+02 3.0099305e+03 - 3.6215251e+02 -5.4299883e+02 3.0100105e+03 - 3.9363923e+02 -5.1434494e+02 3.0100654e+03 - 4.2464740e+02 -4.8504263e+02 3.0100975e+03 - 4.5512984e+02 -4.5512984e+02 3.0101080e+03 - 4.8504263e+02 -4.2464740e+02 3.0100975e+03 - 5.1434494e+02 -3.9363923e+02 3.0100654e+03 - 5.4299883e+02 -3.6215251e+02 3.0100105e+03 - 5.7096919e+02 -3.3023789e+02 3.0099305e+03 - 5.9822355e+02 -2.9794974e+02 3.0098220e+03 - 6.2473198e+02 -2.6534646e+02 3.0096812e+03 - 6.5046705e+02 -2.3249075e+02 3.0095028e+03 - 6.7540366e+02 -1.9945010e+02 3.0092811e+03 - 6.9951904e+02 -1.6629718e+02 3.0090092e+03 - 7.2279262e+02 -1.3311040e+02 3.0086795e+03 - 7.4520598e+02 -9.9974596e+01 3.0082835e+03 - 7.6674278e+02 -6.6981710e+01 3.0078120e+03 - 7.8738873e+02 -3.4231716e+01 3.0072547e+03 - 8.0713146e+02 -1.8336326e+00 3.0066008e+03 - 8.2596055e+02 3.0093284e+01 3.0058388e+03 - 8.4386740e+02 6.1418151e+01 3.0049565e+03 - 8.6084527e+02 9.1996857e+01 3.0039411e+03 - 8.7688916e+02 1.2167023e+02 3.0027797e+03 - 8.9199589e+02 1.5026196e+02 3.0014588e+03 - 9.0616402e+02 1.7757627e+02 2.9999653e+03 - 9.1939395e+02 2.0339538e+02 2.9982862e+03 - 9.3168797e+02 2.2747681e+02 2.9964093e+03 - 9.4305039e+02 2.4955063e+02 2.9943238e+03 - 9.5348774e+02 2.6931684e+02 2.9920208e+03 - 9.6300911e+02 2.8644333e+02 2.9894944e+03 - 9.7162650e+02 3.0056479e+02 2.9867427e+03 - 9.7935540e+02 3.1128331e+02 2.9837693e+03 - 9.8621545e+02 3.1817192e+02 2.9805854e+03 - 9.9223131e+02 3.2078221e+02 2.9772111e+03 - 9.9743358e+02 3.1865793e+02 2.9736784e+03 - 1.0018598e+03 3.1135647e+02 2.9700331e+03 - 1.0055552e+03 2.9848004e+02 2.9663372e+03 - 1.0085734e+03 2.7971775e+02 2.9626701e+03 - 1.0109760e+03 2.5489788e+02 2.9591288e+03 - 1.0128317e+03 2.2404700e+02 2.9558255e+03 - 1.0142131e+03 1.8744853e+02 2.9528832e+03 - 1.0151925e+03 1.4568914e+02 2.9504271e+03 - 1.0158366e+03 9.9678825e+01 2.9485740e+03 - 1.0161994e+03 5.0631575e+01 2.9474198e+03 - 1.0163162e+03 4.8134273e-09 2.9470276e+03 - 1.1255302e+03 0.0000000e+00 2.8755882e+03 - 1.1253809e+03 -5.1229932e+01 2.8760231e+03 - 1.1249219e+03 -1.0071968e+02 2.8773006e+03 - 1.1241214e+03 -1.4688311e+02 2.8793439e+03 - 1.1229307e+03 -1.8841132e+02 2.8820373e+03 - 1.1212903e+03 -2.2434488e+02 2.8852412e+03 - 1.1191351e+03 -2.5409063e+02 2.8888081e+03 - 1.1163999e+03 -2.7739258e+02 2.8925954e+03 - 1.1130228e+03 -2.9427378e+02 2.8964755e+03 - 1.1089477e+03 -3.0496655e+02 2.9003408e+03 - 1.1041252e+03 -3.0984453e+02 2.9041054e+03 - 1.0985127e+03 -3.0936442e+02 2.9077048e+03 - 1.0920742e+03 -3.0402066e+02 2.9110930e+03 - 1.0847792e+03 -2.9431304e+02 2.9142406e+03 - 1.0766022e+03 -2.8072520e+02 2.9171308e+03 - 1.0675220e+03 -2.6371189e+02 2.9197571e+03 - 1.0575208e+03 -2.4369236e+02 2.9221208e+03 - 1.0465840e+03 -2.2104811e+02 2.9242289e+03 - 1.0346997e+03 -1.9612325e+02 2.9260923e+03 - 1.0218582e+03 -1.6922661e+02 2.9277250e+03 - 1.0080524e+03 -1.4063451e+02 2.9291424e+03 - 9.9327670e+02 -1.1059405e+02 2.9303613e+03 - 9.7752794e+02 -7.9326285e+01 2.9313987e+03 - 9.6080471e+02 -4.7029300e+01 2.9322719e+03 - 9.4310756e+02 -1.3881052e+01 2.9329977e+03 - 9.2443900e+02 1.9958117e+01 2.9335926e+03 - 9.0480347e+02 5.4343254e+01 2.9340722e+03 - 8.8420747e+02 8.9142849e+01 2.9344517e+03 - 8.6265950e+02 1.2423716e+02 2.9347451e+03 - 8.4017016e+02 1.5951679e+02 2.9349656e+03 - 8.1675221e+02 1.9488141e+02 2.9351255e+03 - 7.9242059e+02 2.3023879e+02 2.9352360e+03 - 7.6719248e+02 2.6550382e+02 2.9353073e+03 - 7.4108738e+02 3.0059783e+02 2.9353486e+03 - 7.1412715e+02 3.3544791e+02 2.9353679e+03 - 6.8633610e+02 3.6998637e+02 2.9353723e+03 - 6.5774103e+02 4.0415029e+02 2.9353678e+03 - 6.2837131e+02 4.3788113e+02 2.9353592e+03 - 5.9825902e+02 4.7112439e+02 2.9353504e+03 - 5.6743896e+02 5.0382936e+02 2.9353440e+03 - 5.3594883e+02 5.3594883e+02 2.9353416e+03 - 5.0382936e+02 5.6743896e+02 2.9353440e+03 - 4.7112439e+02 5.9825902e+02 2.9353504e+03 - 4.3788113e+02 6.2837131e+02 2.9353592e+03 - 4.0415029e+02 6.5774103e+02 2.9353678e+03 - 3.6998637e+02 6.8633610e+02 2.9353723e+03 - 3.3544791e+02 7.1412715e+02 2.9353679e+03 - 3.0059783e+02 7.4108738e+02 2.9353486e+03 - 2.6550382e+02 7.6719248e+02 2.9353073e+03 - 2.3023879e+02 7.9242059e+02 2.9352360e+03 - 1.9488141e+02 8.1675221e+02 2.9351255e+03 - 1.5951679e+02 8.4017016e+02 2.9349656e+03 - 1.2423716e+02 8.6265950e+02 2.9347451e+03 - 8.9142849e+01 8.8420747e+02 2.9344517e+03 - 5.4343254e+01 9.0480347e+02 2.9340722e+03 - 1.9958117e+01 9.2443900e+02 2.9335926e+03 - -1.3881052e+01 9.4310756e+02 2.9329977e+03 - -4.7029300e+01 9.6080471e+02 2.9322719e+03 - -7.9326285e+01 9.7752794e+02 2.9313987e+03 - -1.1059405e+02 9.9327670e+02 2.9303613e+03 - -1.4063451e+02 1.0080524e+03 2.9291424e+03 - -1.6922661e+02 1.0218582e+03 2.9277250e+03 - -1.9612325e+02 1.0346997e+03 2.9260923e+03 - -2.2104811e+02 1.0465840e+03 2.9242289e+03 - -2.4369236e+02 1.0575208e+03 2.9221208e+03 - -2.6371189e+02 1.0675220e+03 2.9197571e+03 - -2.8072520e+02 1.0766022e+03 2.9171308e+03 - -2.9431304e+02 1.0847792e+03 2.9142406e+03 - -3.0402066e+02 1.0920742e+03 2.9110930e+03 - -3.0936442e+02 1.0985127e+03 2.9077048e+03 - -3.0984453e+02 1.1041252e+03 2.9041054e+03 - -3.0496655e+02 1.1089477e+03 2.9003408e+03 - -2.9427378e+02 1.1130228e+03 2.8964755e+03 - -2.7739258e+02 1.1163999e+03 2.8925954e+03 - -2.5409063e+02 1.1191351e+03 2.8888081e+03 - -2.2434488e+02 1.1212903e+03 2.8852412e+03 - -1.8841132e+02 1.1229307e+03 2.8820373e+03 - -1.4688311e+02 1.1241214e+03 2.8793439e+03 - -1.0071968e+02 1.1249219e+03 2.8773006e+03 - -5.1229932e+01 1.1253809e+03 2.8760231e+03 - -2.4067136e-09 1.1255302e+03 2.8755882e+03 - 5.1229932e+01 1.1253809e+03 2.8760231e+03 - 1.0071968e+02 1.1249219e+03 2.8773006e+03 - 1.4688311e+02 1.1241214e+03 2.8793439e+03 - 1.8841132e+02 1.1229307e+03 2.8820373e+03 - 2.2434488e+02 1.1212903e+03 2.8852412e+03 - 2.5409063e+02 1.1191351e+03 2.8888081e+03 - 2.7739258e+02 1.1163999e+03 2.8925954e+03 - 2.9427378e+02 1.1130228e+03 2.8964755e+03 - 3.0496655e+02 1.1089477e+03 2.9003408e+03 - 3.0984453e+02 1.1041252e+03 2.9041054e+03 - 3.0936442e+02 1.0985127e+03 2.9077048e+03 - 3.0402066e+02 1.0920742e+03 2.9110930e+03 - 2.9431304e+02 1.0847792e+03 2.9142406e+03 - 2.8072520e+02 1.0766022e+03 2.9171308e+03 - 2.6371189e+02 1.0675220e+03 2.9197571e+03 - 2.4369236e+02 1.0575208e+03 2.9221208e+03 - 2.2104811e+02 1.0465840e+03 2.9242289e+03 - 1.9612325e+02 1.0346997e+03 2.9260923e+03 - 1.6922661e+02 1.0218582e+03 2.9277250e+03 - 1.4063451e+02 1.0080524e+03 2.9291424e+03 - 1.1059405e+02 9.9327670e+02 2.9303613e+03 - 7.9326285e+01 9.7752794e+02 2.9313987e+03 - 4.7029300e+01 9.6080471e+02 2.9322719e+03 - 1.3881052e+01 9.4310756e+02 2.9329977e+03 - -1.9958117e+01 9.2443900e+02 2.9335926e+03 - -5.4343254e+01 9.0480347e+02 2.9340722e+03 - -8.9142849e+01 8.8420747e+02 2.9344517e+03 - -1.2423716e+02 8.6265950e+02 2.9347451e+03 - -1.5951679e+02 8.4017016e+02 2.9349656e+03 - -1.9488141e+02 8.1675221e+02 2.9351255e+03 - -2.3023879e+02 7.9242059e+02 2.9352360e+03 - -2.6550382e+02 7.6719248e+02 2.9353073e+03 - -3.0059783e+02 7.4108738e+02 2.9353486e+03 - -3.3544791e+02 7.1412715e+02 2.9353679e+03 - -3.6998637e+02 6.8633610e+02 2.9353723e+03 - -4.0415029e+02 6.5774103e+02 2.9353678e+03 - -4.3788113e+02 6.2837131e+02 2.9353592e+03 - -4.7112439e+02 5.9825902e+02 2.9353504e+03 - -5.0382936e+02 5.6743896e+02 2.9353440e+03 - -5.3594883e+02 5.3594883e+02 2.9353416e+03 - -5.6743896e+02 5.0382936e+02 2.9353440e+03 - -5.9825902e+02 4.7112439e+02 2.9353504e+03 - -6.2837131e+02 4.3788113e+02 2.9353592e+03 - -6.5774103e+02 4.0415029e+02 2.9353678e+03 - -6.8633610e+02 3.6998637e+02 2.9353723e+03 - -7.1412715e+02 3.3544791e+02 2.9353679e+03 - -7.4108738e+02 3.0059783e+02 2.9353486e+03 - -7.6719248e+02 2.6550382e+02 2.9353073e+03 - -7.9242059e+02 2.3023879e+02 2.9352360e+03 - -8.1675221e+02 1.9488141e+02 2.9351255e+03 - -8.4017016e+02 1.5951679e+02 2.9349656e+03 - -8.6265950e+02 1.2423716e+02 2.9347451e+03 - -8.8420747e+02 8.9142849e+01 2.9344517e+03 - -9.0480347e+02 5.4343254e+01 2.9340722e+03 - -9.2443900e+02 1.9958117e+01 2.9335926e+03 - -9.4310756e+02 -1.3881052e+01 2.9329977e+03 - -9.6080471e+02 -4.7029300e+01 2.9322719e+03 - -9.7752794e+02 -7.9326285e+01 2.9313987e+03 - -9.9327670e+02 -1.1059405e+02 2.9303613e+03 - -1.0080524e+03 -1.4063451e+02 2.9291424e+03 - -1.0218582e+03 -1.6922661e+02 2.9277250e+03 - -1.0346997e+03 -1.9612325e+02 2.9260923e+03 - -1.0465840e+03 -2.2104811e+02 2.9242289e+03 - -1.0575208e+03 -2.4369236e+02 2.9221208e+03 - -1.0675220e+03 -2.6371189e+02 2.9197571e+03 - -1.0766022e+03 -2.8072520e+02 2.9171308e+03 - -1.0847792e+03 -2.9431304e+02 2.9142406e+03 - -1.0920742e+03 -3.0402066e+02 2.9110930e+03 - -1.0985127e+03 -3.0936442e+02 2.9077048e+03 - -1.1041252e+03 -3.0984453e+02 2.9041054e+03 - -1.1089477e+03 -3.0496655e+02 2.9003408e+03 - -1.1130228e+03 -2.9427378e+02 2.8964755e+03 - -1.1163999e+03 -2.7739258e+02 2.8925954e+03 - -1.1191351e+03 -2.5409063e+02 2.8888081e+03 - -1.1212903e+03 -2.2434488e+02 2.8852412e+03 - -1.1229307e+03 -1.8841132e+02 2.8820373e+03 - -1.1241214e+03 -1.4688311e+02 2.8793439e+03 - -1.1249219e+03 -1.0071968e+02 2.8773006e+03 - -1.1253809e+03 -5.1229932e+01 2.8760231e+03 - -1.1255302e+03 -4.8134273e-09 2.8755882e+03 - -1.1253809e+03 5.1229932e+01 2.8760231e+03 - -1.1249219e+03 1.0071968e+02 2.8773006e+03 - -1.1241214e+03 1.4688311e+02 2.8793439e+03 - -1.1229307e+03 1.8841132e+02 2.8820373e+03 - -1.1212903e+03 2.2434488e+02 2.8852412e+03 - -1.1191351e+03 2.5409063e+02 2.8888081e+03 - -1.1163999e+03 2.7739258e+02 2.8925954e+03 - -1.1130228e+03 2.9427378e+02 2.8964755e+03 - -1.1089477e+03 3.0496655e+02 2.9003408e+03 - -1.1041252e+03 3.0984453e+02 2.9041054e+03 - -1.0985127e+03 3.0936442e+02 2.9077048e+03 - -1.0920742e+03 3.0402066e+02 2.9110930e+03 - -1.0847792e+03 2.9431304e+02 2.9142406e+03 - -1.0766022e+03 2.8072520e+02 2.9171308e+03 - -1.0675220e+03 2.6371189e+02 2.9197571e+03 - -1.0575208e+03 2.4369236e+02 2.9221208e+03 - -1.0465840e+03 2.2104811e+02 2.9242289e+03 - -1.0346997e+03 1.9612325e+02 2.9260923e+03 - -1.0218582e+03 1.6922661e+02 2.9277250e+03 - -1.0080524e+03 1.4063451e+02 2.9291424e+03 - -9.9327670e+02 1.1059405e+02 2.9303613e+03 - -9.7752794e+02 7.9326285e+01 2.9313987e+03 - -9.6080471e+02 4.7029300e+01 2.9322719e+03 - -9.4310756e+02 1.3881052e+01 2.9329977e+03 - -9.2443900e+02 -1.9958117e+01 2.9335926e+03 - -9.0480347e+02 -5.4343254e+01 2.9340722e+03 - -8.8420747e+02 -8.9142849e+01 2.9344517e+03 - -8.6265950e+02 -1.2423716e+02 2.9347451e+03 - -8.4017016e+02 -1.5951679e+02 2.9349656e+03 - -8.1675221e+02 -1.9488141e+02 2.9351255e+03 - -7.9242059e+02 -2.3023879e+02 2.9352360e+03 - -7.6719248e+02 -2.6550382e+02 2.9353073e+03 - -7.4108738e+02 -3.0059783e+02 2.9353486e+03 - -7.1412715e+02 -3.3544791e+02 2.9353679e+03 - -6.8633610e+02 -3.6998637e+02 2.9353723e+03 - -6.5774103e+02 -4.0415029e+02 2.9353678e+03 - -6.2837131e+02 -4.3788113e+02 2.9353592e+03 - -5.9825902e+02 -4.7112439e+02 2.9353504e+03 - -5.6743896e+02 -5.0382936e+02 2.9353440e+03 - -5.3594883e+02 -5.3594883e+02 2.9353416e+03 - -5.0382936e+02 -5.6743896e+02 2.9353440e+03 - -4.7112439e+02 -5.9825902e+02 2.9353504e+03 - -4.3788113e+02 -6.2837131e+02 2.9353592e+03 - -4.0415029e+02 -6.5774103e+02 2.9353678e+03 - -3.6998637e+02 -6.8633610e+02 2.9353723e+03 - -3.3544791e+02 -7.1412715e+02 2.9353679e+03 - -3.0059783e+02 -7.4108738e+02 2.9353486e+03 - -2.6550382e+02 -7.6719248e+02 2.9353073e+03 - -2.3023879e+02 -7.9242059e+02 2.9352360e+03 - -1.9488141e+02 -8.1675221e+02 2.9351255e+03 - -1.5951679e+02 -8.4017016e+02 2.9349656e+03 - -1.2423716e+02 -8.6265950e+02 2.9347451e+03 - -8.9142849e+01 -8.8420747e+02 2.9344517e+03 - -5.4343254e+01 -9.0480347e+02 2.9340722e+03 - -1.9958117e+01 -9.2443900e+02 2.9335926e+03 - 1.3881052e+01 -9.4310756e+02 2.9329977e+03 - 4.7029300e+01 -9.6080471e+02 2.9322719e+03 - 7.9326285e+01 -9.7752794e+02 2.9313987e+03 - 1.1059405e+02 -9.9327670e+02 2.9303613e+03 - 1.4063451e+02 -1.0080524e+03 2.9291424e+03 - 1.6922661e+02 -1.0218582e+03 2.9277250e+03 - 1.9612325e+02 -1.0346997e+03 2.9260923e+03 - 2.2104811e+02 -1.0465840e+03 2.9242289e+03 - 2.4369236e+02 -1.0575208e+03 2.9221208e+03 - 2.6371189e+02 -1.0675220e+03 2.9197571e+03 - 2.8072520e+02 -1.0766022e+03 2.9171308e+03 - 2.9431304e+02 -1.0847792e+03 2.9142406e+03 - 3.0402066e+02 -1.0920742e+03 2.9110930e+03 - 3.0936442e+02 -1.0985127e+03 2.9077048e+03 - 3.0984453e+02 -1.1041252e+03 2.9041054e+03 - 3.0496655e+02 -1.1089477e+03 2.9003408e+03 - 2.9427378e+02 -1.1130228e+03 2.8964755e+03 - 2.7739258e+02 -1.1163999e+03 2.8925954e+03 - 2.5409063e+02 -1.1191351e+03 2.8888081e+03 - 2.2434488e+02 -1.1212903e+03 2.8852412e+03 - 1.8841132e+02 -1.1229307e+03 2.8820373e+03 - 1.4688311e+02 -1.1241214e+03 2.8793439e+03 - 1.0071968e+02 -1.1249219e+03 2.8773006e+03 - 5.1229932e+01 -1.1253809e+03 2.8760231e+03 - -2.4067136e-09 -1.1255302e+03 2.8755882e+03 - -5.1229932e+01 -1.1253809e+03 2.8760231e+03 - -1.0071968e+02 -1.1249219e+03 2.8773006e+03 - -1.4688311e+02 -1.1241214e+03 2.8793439e+03 - -1.8841132e+02 -1.1229307e+03 2.8820373e+03 - -2.2434488e+02 -1.1212903e+03 2.8852412e+03 - -2.5409063e+02 -1.1191351e+03 2.8888081e+03 - -2.7739258e+02 -1.1163999e+03 2.8925954e+03 - -2.9427378e+02 -1.1130228e+03 2.8964755e+03 - -3.0496655e+02 -1.1089477e+03 2.9003408e+03 - -3.0984453e+02 -1.1041252e+03 2.9041054e+03 - -3.0936442e+02 -1.0985127e+03 2.9077048e+03 - -3.0402066e+02 -1.0920742e+03 2.9110930e+03 - -2.9431304e+02 -1.0847792e+03 2.9142406e+03 - -2.8072520e+02 -1.0766022e+03 2.9171308e+03 - -2.6371189e+02 -1.0675220e+03 2.9197571e+03 - -2.4369236e+02 -1.0575208e+03 2.9221208e+03 - -2.2104811e+02 -1.0465840e+03 2.9242289e+03 - -1.9612325e+02 -1.0346997e+03 2.9260923e+03 - -1.6922661e+02 -1.0218582e+03 2.9277250e+03 - -1.4063451e+02 -1.0080524e+03 2.9291424e+03 - -1.1059405e+02 -9.9327670e+02 2.9303613e+03 - -7.9326285e+01 -9.7752794e+02 2.9313987e+03 - -4.7029300e+01 -9.6080471e+02 2.9322719e+03 - -1.3881052e+01 -9.4310756e+02 2.9329977e+03 - 1.9958117e+01 -9.2443900e+02 2.9335926e+03 - 5.4343254e+01 -9.0480347e+02 2.9340722e+03 - 8.9142849e+01 -8.8420747e+02 2.9344517e+03 - 1.2423716e+02 -8.6265950e+02 2.9347451e+03 - 1.5951679e+02 -8.4017016e+02 2.9349656e+03 - 1.9488141e+02 -8.1675221e+02 2.9351255e+03 - 2.3023879e+02 -7.9242059e+02 2.9352360e+03 - 2.6550382e+02 -7.6719248e+02 2.9353073e+03 - 3.0059783e+02 -7.4108738e+02 2.9353486e+03 - 3.3544791e+02 -7.1412715e+02 2.9353679e+03 - 3.6998637e+02 -6.8633610e+02 2.9353723e+03 - 4.0415029e+02 -6.5774103e+02 2.9353678e+03 - 4.3788113e+02 -6.2837131e+02 2.9353592e+03 - 4.7112439e+02 -5.9825902e+02 2.9353504e+03 - 5.0382936e+02 -5.6743896e+02 2.9353440e+03 - 5.3594883e+02 -5.3594883e+02 2.9353416e+03 - 5.6743896e+02 -5.0382936e+02 2.9353440e+03 - 5.9825902e+02 -4.7112439e+02 2.9353504e+03 - 6.2837131e+02 -4.3788113e+02 2.9353592e+03 - 6.5774103e+02 -4.0415029e+02 2.9353678e+03 - 6.8633610e+02 -3.6998637e+02 2.9353723e+03 - 7.1412715e+02 -3.3544791e+02 2.9353679e+03 - 7.4108738e+02 -3.0059783e+02 2.9353486e+03 - 7.6719248e+02 -2.6550382e+02 2.9353073e+03 - 7.9242059e+02 -2.3023879e+02 2.9352360e+03 - 8.1675221e+02 -1.9488141e+02 2.9351255e+03 - 8.4017016e+02 -1.5951679e+02 2.9349656e+03 - 8.6265950e+02 -1.2423716e+02 2.9347451e+03 - 8.8420747e+02 -8.9142849e+01 2.9344517e+03 - 9.0480347e+02 -5.4343254e+01 2.9340722e+03 - 9.2443900e+02 -1.9958117e+01 2.9335926e+03 - 9.4310756e+02 1.3881052e+01 2.9329977e+03 - 9.6080471e+02 4.7029300e+01 2.9322719e+03 - 9.7752794e+02 7.9326285e+01 2.9313987e+03 - 9.9327670e+02 1.1059405e+02 2.9303613e+03 - 1.0080524e+03 1.4063451e+02 2.9291424e+03 - 1.0218582e+03 1.6922661e+02 2.9277250e+03 - 1.0346997e+03 1.9612325e+02 2.9260923e+03 - 1.0465840e+03 2.2104811e+02 2.9242289e+03 - 1.0575208e+03 2.4369236e+02 2.9221208e+03 - 1.0675220e+03 2.6371189e+02 2.9197571e+03 - 1.0766022e+03 2.8072520e+02 2.9171308e+03 - 1.0847792e+03 2.9431304e+02 2.9142406e+03 - 1.0920742e+03 3.0402066e+02 2.9110930e+03 - 1.0985127e+03 3.0936442e+02 2.9077048e+03 - 1.1041252e+03 3.0984453e+02 2.9041054e+03 - 1.1089477e+03 3.0496655e+02 2.9003408e+03 - 1.1130228e+03 2.9427378e+02 2.8964755e+03 - 1.1163999e+03 2.7739258e+02 2.8925954e+03 - 1.1191351e+03 2.5409063e+02 2.8888081e+03 - 1.1212903e+03 2.2434488e+02 2.8852412e+03 - 1.1229307e+03 1.8841132e+02 2.8820373e+03 - 1.1241214e+03 1.4688311e+02 2.8793439e+03 - 1.1249219e+03 1.0071968e+02 2.8773006e+03 - 1.1253809e+03 5.1229932e+01 2.8760231e+03 - 1.1255302e+03 -4.8134273e-09 2.8755882e+03 - 1.2355891e+03 2.4067136e-09 2.8004709e+03 - 1.2354020e+03 -5.1942794e+01 2.8009556e+03 - 1.2348312e+03 -1.0196546e+02 2.8023767e+03 - 1.2338505e+03 -1.4832958e+02 2.8046398e+03 - 1.2324196e+03 -1.8962141e+02 2.8076044e+03 - 1.2304886e+03 -2.2483150e+02 2.8111030e+03 - 1.2280032e+03 -2.5336706e+02 2.8149608e+03 - 1.2249079e+03 -2.7501083e+02 2.8190127e+03 - 1.2211494e+03 -2.8984813e+02 2.8231134e+03 - 1.2166784e+03 -2.9818364e+02 2.8271441e+03 - 1.2114503e+03 -3.0046334e+02 2.8310126e+03 - 1.2054252e+03 -2.9720992e+02 2.8346526e+03 - 1.1985682e+03 -2.8897439e+02 2.8380198e+03 - 1.1908486e+03 -2.7630275e+02 2.8410880e+03 - 1.1822393e+03 -2.5971515e+02 2.8438457e+03 - 1.1727167e+03 -2.3969431e+02 2.8462923e+03 - 1.1622604e+03 -2.1668044e+02 2.8484351e+03 - 1.1508523e+03 -1.9107033e+02 2.8502873e+03 - 1.1384771e+03 -1.6321914e+02 2.8518661e+03 - 1.1251217e+03 -1.3344341e+02 2.8531910e+03 - 1.1107752e+03 -1.0202481e+02 2.8542831e+03 - 1.0954288e+03 -6.9214007e+01 2.8551642e+03 - 1.0790761e+03 -3.5234405e+01 2.8558560e+03 - 1.0617124e+03 -2.8556920e-01 2.8563801e+03 - 1.0433355e+03 3.5453662e+01 2.8567574e+03 - 1.0239453e+03 7.1822452e+01 2.8570080e+03 - 1.0035436e+03 1.0867560e+02 2.8571511e+03 - 9.8213473e+02 1.4588150e+02 2.8572047e+03 - 9.5972512e+02 1.8332040e+02 2.8571858e+03 - 9.3632350e+02 2.2088292e+02 2.8571101e+03 - 9.1194096e+02 2.5846879e+02 2.8569921e+03 - 8.8659094e+02 2.9598579e+02 2.8568452e+03 - 8.6028932e+02 3.3334885e+02 2.8566813e+03 - 8.3305442e+02 3.7047931e+02 2.8565114e+03 - 8.0490711e+02 4.0730426e+02 2.8563448e+03 - 7.7587080e+02 4.4375602e+02 2.8561899e+03 - 7.4597156e+02 4.7977168e+02 2.8560536e+03 - 7.1523814e+02 5.1529274e+02 2.8559417e+03 - 6.8370209e+02 5.5026474e+02 2.8558586e+03 - 6.5139780e+02 5.8463706e+02 2.8558075e+03 - 6.1836264e+02 6.1836264e+02 2.8557902e+03 - 5.8463706e+02 6.5139780e+02 2.8558075e+03 - 5.5026474e+02 6.8370209e+02 2.8558586e+03 - 5.1529274e+02 7.1523814e+02 2.8559417e+03 - 4.7977168e+02 7.4597156e+02 2.8560536e+03 - 4.4375602e+02 7.7587080e+02 2.8561899e+03 - 4.0730426e+02 8.0490711e+02 2.8563448e+03 - 3.7047931e+02 8.3305442e+02 2.8565114e+03 - 3.3334885e+02 8.6028932e+02 2.8566813e+03 - 2.9598579e+02 8.8659094e+02 2.8568452e+03 - 2.5846879e+02 9.1194096e+02 2.8569921e+03 - 2.2088292e+02 9.3632350e+02 2.8571101e+03 - 1.8332040e+02 9.5972512e+02 2.8571858e+03 - 1.4588150e+02 9.8213473e+02 2.8572047e+03 - 1.0867560e+02 1.0035436e+03 2.8571511e+03 - 7.1822452e+01 1.0239453e+03 2.8570080e+03 - 3.5453662e+01 1.0433355e+03 2.8567574e+03 - -2.8556920e-01 1.0617124e+03 2.8563801e+03 - -3.5234405e+01 1.0790761e+03 2.8558560e+03 - -6.9214007e+01 1.0954288e+03 2.8551642e+03 - -1.0202481e+02 1.1107752e+03 2.8542831e+03 - -1.3344341e+02 1.1251217e+03 2.8531910e+03 - -1.6321914e+02 1.1384771e+03 2.8518661e+03 - -1.9107033e+02 1.1508523e+03 2.8502873e+03 - -2.1668044e+02 1.1622604e+03 2.8484351e+03 - -2.3969431e+02 1.1727167e+03 2.8462923e+03 - -2.5971515e+02 1.1822393e+03 2.8438457e+03 - -2.7630275e+02 1.1908486e+03 2.8410880e+03 - -2.8897439e+02 1.1985682e+03 2.8380198e+03 - -2.9720992e+02 1.2054252e+03 2.8346526e+03 - -3.0046334e+02 1.2114503e+03 2.8310126e+03 - -2.9818364e+02 1.2166784e+03 2.8271441e+03 - -2.8984813e+02 1.2211494e+03 2.8231134e+03 - -2.7501083e+02 1.2249079e+03 2.8190127e+03 - -2.5336706e+02 1.2280032e+03 2.8149608e+03 - -2.2483150e+02 1.2304886e+03 2.8111030e+03 - -1.8962141e+02 1.2324196e+03 2.8076044e+03 - -1.4832958e+02 1.2338505e+03 2.8046398e+03 - -1.0196546e+02 1.2348312e+03 2.8023767e+03 - -5.1942794e+01 1.2354020e+03 2.8009556e+03 - 0.0000000e+00 1.2355891e+03 2.8004709e+03 - 5.1942794e+01 1.2354020e+03 2.8009556e+03 - 1.0196546e+02 1.2348312e+03 2.8023767e+03 - 1.4832958e+02 1.2338505e+03 2.8046398e+03 - 1.8962141e+02 1.2324196e+03 2.8076044e+03 - 2.2483150e+02 1.2304886e+03 2.8111030e+03 - 2.5336706e+02 1.2280032e+03 2.8149608e+03 - 2.7501083e+02 1.2249079e+03 2.8190127e+03 - 2.8984813e+02 1.2211494e+03 2.8231134e+03 - 2.9818364e+02 1.2166784e+03 2.8271441e+03 - 3.0046334e+02 1.2114503e+03 2.8310126e+03 - 2.9720992e+02 1.2054252e+03 2.8346526e+03 - 2.8897439e+02 1.1985682e+03 2.8380198e+03 - 2.7630275e+02 1.1908486e+03 2.8410880e+03 - 2.5971515e+02 1.1822393e+03 2.8438457e+03 - 2.3969431e+02 1.1727167e+03 2.8462923e+03 - 2.1668044e+02 1.1622604e+03 2.8484351e+03 - 1.9107033e+02 1.1508523e+03 2.8502873e+03 - 1.6321914e+02 1.1384771e+03 2.8518661e+03 - 1.3344341e+02 1.1251217e+03 2.8531910e+03 - 1.0202481e+02 1.1107752e+03 2.8542831e+03 - 6.9214007e+01 1.0954288e+03 2.8551642e+03 - 3.5234405e+01 1.0790761e+03 2.8558560e+03 - 2.8556921e-01 1.0617124e+03 2.8563801e+03 - -3.5453662e+01 1.0433355e+03 2.8567574e+03 - -7.1822452e+01 1.0239453e+03 2.8570080e+03 - -1.0867560e+02 1.0035436e+03 2.8571511e+03 - -1.4588150e+02 9.8213473e+02 2.8572047e+03 - -1.8332040e+02 9.5972512e+02 2.8571858e+03 - -2.2088292e+02 9.3632350e+02 2.8571101e+03 - -2.5846879e+02 9.1194096e+02 2.8569921e+03 - -2.9598579e+02 8.8659094e+02 2.8568452e+03 - -3.3334885e+02 8.6028932e+02 2.8566813e+03 - -3.7047931e+02 8.3305442e+02 2.8565114e+03 - -4.0730426e+02 8.0490711e+02 2.8563448e+03 - -4.4375602e+02 7.7587080e+02 2.8561899e+03 - -4.7977168e+02 7.4597156e+02 2.8560536e+03 - -5.1529274e+02 7.1523814e+02 2.8559417e+03 - -5.5026474e+02 6.8370209e+02 2.8558586e+03 - -5.8463706e+02 6.5139780e+02 2.8558075e+03 - -6.1836264e+02 6.1836264e+02 2.8557902e+03 - -6.5139780e+02 5.8463706e+02 2.8558075e+03 - -6.8370209e+02 5.5026474e+02 2.8558586e+03 - -7.1523814e+02 5.1529274e+02 2.8559417e+03 - -7.4597156e+02 4.7977168e+02 2.8560536e+03 - -7.7587080e+02 4.4375602e+02 2.8561899e+03 - -8.0490711e+02 4.0730426e+02 2.8563448e+03 - -8.3305442e+02 3.7047931e+02 2.8565114e+03 - -8.6028932e+02 3.3334885e+02 2.8566813e+03 - -8.8659094e+02 2.9598579e+02 2.8568452e+03 - -9.1194096e+02 2.5846879e+02 2.8569921e+03 - -9.3632350e+02 2.2088292e+02 2.8571101e+03 - -9.5972512e+02 1.8332040e+02 2.8571858e+03 - -9.8213473e+02 1.4588150e+02 2.8572047e+03 - -1.0035436e+03 1.0867560e+02 2.8571511e+03 - -1.0239453e+03 7.1822452e+01 2.8570080e+03 - -1.0433355e+03 3.5453662e+01 2.8567574e+03 - -1.0617124e+03 -2.8556921e-01 2.8563801e+03 - -1.0790761e+03 -3.5234405e+01 2.8558560e+03 - -1.0954288e+03 -6.9214007e+01 2.8551642e+03 - -1.1107752e+03 -1.0202481e+02 2.8542831e+03 - -1.1251217e+03 -1.3344341e+02 2.8531910e+03 - -1.1384771e+03 -1.6321914e+02 2.8518661e+03 - -1.1508523e+03 -1.9107033e+02 2.8502873e+03 - -1.1622604e+03 -2.1668044e+02 2.8484351e+03 - -1.1727167e+03 -2.3969431e+02 2.8462923e+03 - -1.1822393e+03 -2.5971515e+02 2.8438457e+03 - -1.1908486e+03 -2.7630275e+02 2.8410880e+03 - -1.1985682e+03 -2.8897439e+02 2.8380198e+03 - -1.2054252e+03 -2.9720992e+02 2.8346526e+03 - -1.2114503e+03 -3.0046334e+02 2.8310126e+03 - -1.2166784e+03 -2.9818364e+02 2.8271441e+03 - -1.2211494e+03 -2.8984813e+02 2.8231134e+03 - -1.2249079e+03 -2.7501083e+02 2.8190127e+03 - -1.2280032e+03 -2.5336706e+02 2.8149608e+03 - -1.2304886e+03 -2.2483150e+02 2.8111030e+03 - -1.2324196e+03 -1.8962141e+02 2.8076044e+03 - -1.2338505e+03 -1.4832958e+02 2.8046398e+03 - -1.2348312e+03 -1.0196546e+02 2.8023767e+03 - -1.2354020e+03 -5.1942794e+01 2.8009556e+03 - -1.2355891e+03 7.2201409e-09 2.8004709e+03 - -1.2354020e+03 5.1942794e+01 2.8009556e+03 - -1.2348312e+03 1.0196546e+02 2.8023767e+03 - -1.2338505e+03 1.4832958e+02 2.8046398e+03 - -1.2324196e+03 1.8962141e+02 2.8076044e+03 - -1.2304886e+03 2.2483150e+02 2.8111030e+03 - -1.2280032e+03 2.5336706e+02 2.8149608e+03 - -1.2249079e+03 2.7501083e+02 2.8190127e+03 - -1.2211494e+03 2.8984813e+02 2.8231134e+03 - -1.2166784e+03 2.9818364e+02 2.8271441e+03 - -1.2114503e+03 3.0046334e+02 2.8310126e+03 - -1.2054252e+03 2.9720992e+02 2.8346526e+03 - -1.1985682e+03 2.8897439e+02 2.8380198e+03 - -1.1908486e+03 2.7630275e+02 2.8410880e+03 - -1.1822393e+03 2.5971515e+02 2.8438457e+03 - -1.1727167e+03 2.3969431e+02 2.8462923e+03 - -1.1622604e+03 2.1668044e+02 2.8484351e+03 - -1.1508523e+03 1.9107033e+02 2.8502873e+03 - -1.1384771e+03 1.6321914e+02 2.8518661e+03 - -1.1251217e+03 1.3344341e+02 2.8531910e+03 - -1.1107752e+03 1.0202481e+02 2.8542831e+03 - -1.0954288e+03 6.9214007e+01 2.8551642e+03 - -1.0790761e+03 3.5234405e+01 2.8558560e+03 - -1.0617124e+03 2.8556921e-01 2.8563801e+03 - -1.0433355e+03 -3.5453662e+01 2.8567574e+03 - -1.0239453e+03 -7.1822452e+01 2.8570080e+03 - -1.0035436e+03 -1.0867560e+02 2.8571511e+03 - -9.8213473e+02 -1.4588150e+02 2.8572047e+03 - -9.5972512e+02 -1.8332040e+02 2.8571858e+03 - -9.3632350e+02 -2.2088292e+02 2.8571101e+03 - -9.1194096e+02 -2.5846879e+02 2.8569921e+03 - -8.8659094e+02 -2.9598579e+02 2.8568452e+03 - -8.6028932e+02 -3.3334885e+02 2.8566813e+03 - -8.3305442e+02 -3.7047931e+02 2.8565114e+03 - -8.0490711e+02 -4.0730426e+02 2.8563448e+03 - -7.7587080e+02 -4.4375602e+02 2.8561899e+03 - -7.4597156e+02 -4.7977168e+02 2.8560536e+03 - -7.1523814e+02 -5.1529274e+02 2.8559417e+03 - -6.8370209e+02 -5.5026474e+02 2.8558586e+03 - -6.5139780e+02 -5.8463706e+02 2.8558075e+03 - -6.1836264e+02 -6.1836264e+02 2.8557902e+03 - -5.8463706e+02 -6.5139780e+02 2.8558075e+03 - -5.5026474e+02 -6.8370209e+02 2.8558586e+03 - -5.1529274e+02 -7.1523814e+02 2.8559417e+03 - -4.7977168e+02 -7.4597156e+02 2.8560536e+03 - -4.4375602e+02 -7.7587080e+02 2.8561899e+03 - -4.0730426e+02 -8.0490711e+02 2.8563448e+03 - -3.7047931e+02 -8.3305442e+02 2.8565114e+03 - -3.3334885e+02 -8.6028932e+02 2.8566813e+03 - -2.9598579e+02 -8.8659094e+02 2.8568452e+03 - -2.5846879e+02 -9.1194096e+02 2.8569921e+03 - -2.2088292e+02 -9.3632350e+02 2.8571101e+03 - -1.8332040e+02 -9.5972512e+02 2.8571858e+03 - -1.4588150e+02 -9.8213473e+02 2.8572047e+03 - -1.0867560e+02 -1.0035436e+03 2.8571511e+03 - -7.1822452e+01 -1.0239453e+03 2.8570080e+03 - -3.5453662e+01 -1.0433355e+03 2.8567574e+03 - 2.8556921e-01 -1.0617124e+03 2.8563801e+03 - 3.5234405e+01 -1.0790761e+03 2.8558560e+03 - 6.9214007e+01 -1.0954288e+03 2.8551642e+03 - 1.0202481e+02 -1.1107752e+03 2.8542831e+03 - 1.3344341e+02 -1.1251217e+03 2.8531910e+03 - 1.6321914e+02 -1.1384771e+03 2.8518661e+03 - 1.9107033e+02 -1.1508523e+03 2.8502873e+03 - 2.1668044e+02 -1.1622604e+03 2.8484351e+03 - 2.3969431e+02 -1.1727167e+03 2.8462923e+03 - 2.5971515e+02 -1.1822393e+03 2.8438457e+03 - 2.7630275e+02 -1.1908486e+03 2.8410880e+03 - 2.8897439e+02 -1.1985682e+03 2.8380198e+03 - 2.9720992e+02 -1.2054252e+03 2.8346526e+03 - 3.0046334e+02 -1.2114503e+03 2.8310126e+03 - 2.9818364e+02 -1.2166784e+03 2.8271441e+03 - 2.8984813e+02 -1.2211494e+03 2.8231134e+03 - 2.7501083e+02 -1.2249079e+03 2.8190127e+03 - 2.5336706e+02 -1.2280032e+03 2.8149608e+03 - 2.2483150e+02 -1.2304886e+03 2.8111030e+03 - 1.8962141e+02 -1.2324196e+03 2.8076044e+03 - 1.4832958e+02 -1.2338505e+03 2.8046398e+03 - 1.0196546e+02 -1.2348312e+03 2.8023767e+03 - 5.1942794e+01 -1.2354020e+03 2.8009556e+03 - -7.2201409e-09 -1.2355891e+03 2.8004709e+03 - -5.1942794e+01 -1.2354020e+03 2.8009556e+03 - -1.0196546e+02 -1.2348312e+03 2.8023767e+03 - -1.4832958e+02 -1.2338505e+03 2.8046398e+03 - -1.8962141e+02 -1.2324196e+03 2.8076044e+03 - -2.2483150e+02 -1.2304886e+03 2.8111030e+03 - -2.5336706e+02 -1.2280032e+03 2.8149608e+03 - -2.7501083e+02 -1.2249079e+03 2.8190127e+03 - -2.8984813e+02 -1.2211494e+03 2.8231134e+03 - -2.9818364e+02 -1.2166784e+03 2.8271441e+03 - -3.0046334e+02 -1.2114503e+03 2.8310126e+03 - -2.9720992e+02 -1.2054252e+03 2.8346526e+03 - -2.8897439e+02 -1.1985682e+03 2.8380198e+03 - -2.7630275e+02 -1.1908486e+03 2.8410880e+03 - -2.5971515e+02 -1.1822393e+03 2.8438457e+03 - -2.3969431e+02 -1.1727167e+03 2.8462923e+03 - -2.1668044e+02 -1.1622604e+03 2.8484351e+03 - -1.9107033e+02 -1.1508523e+03 2.8502873e+03 - -1.6321914e+02 -1.1384771e+03 2.8518661e+03 - -1.3344341e+02 -1.1251217e+03 2.8531910e+03 - -1.0202481e+02 -1.1107752e+03 2.8542831e+03 - -6.9214007e+01 -1.0954288e+03 2.8551642e+03 - -3.5234405e+01 -1.0790761e+03 2.8558560e+03 - -2.8556921e-01 -1.0617124e+03 2.8563801e+03 - 3.5453662e+01 -1.0433355e+03 2.8567574e+03 - 7.1822452e+01 -1.0239453e+03 2.8570080e+03 - 1.0867560e+02 -1.0035436e+03 2.8571511e+03 - 1.4588150e+02 -9.8213473e+02 2.8572047e+03 - 1.8332040e+02 -9.5972512e+02 2.8571858e+03 - 2.2088292e+02 -9.3632350e+02 2.8571101e+03 - 2.5846879e+02 -9.1194096e+02 2.8569921e+03 - 2.9598579e+02 -8.8659094e+02 2.8568452e+03 - 3.3334885e+02 -8.6028932e+02 2.8566813e+03 - 3.7047931e+02 -8.3305442e+02 2.8565114e+03 - 4.0730426e+02 -8.0490711e+02 2.8563448e+03 - 4.4375602e+02 -7.7587080e+02 2.8561899e+03 - 4.7977168e+02 -7.4597156e+02 2.8560536e+03 - 5.1529274e+02 -7.1523814e+02 2.8559417e+03 - 5.5026474e+02 -6.8370209e+02 2.8558586e+03 - 5.8463706e+02 -6.5139780e+02 2.8558075e+03 - 6.1836264e+02 -6.1836264e+02 2.8557902e+03 - 6.5139780e+02 -5.8463706e+02 2.8558075e+03 - 6.8370209e+02 -5.5026474e+02 2.8558586e+03 - 7.1523814e+02 -5.1529274e+02 2.8559417e+03 - 7.4597156e+02 -4.7977168e+02 2.8560536e+03 - 7.7587080e+02 -4.4375602e+02 2.8561899e+03 - 8.0490711e+02 -4.0730426e+02 2.8563448e+03 - 8.3305442e+02 -3.7047931e+02 2.8565114e+03 - 8.6028932e+02 -3.3334885e+02 2.8566813e+03 - 8.8659094e+02 -2.9598579e+02 2.8568452e+03 - 9.1194096e+02 -2.5846879e+02 2.8569921e+03 - 9.3632350e+02 -2.2088292e+02 2.8571101e+03 - 9.5972512e+02 -1.8332040e+02 2.8571858e+03 - 9.8213473e+02 -1.4588150e+02 2.8572047e+03 - 1.0035436e+03 -1.0867560e+02 2.8571511e+03 - 1.0239453e+03 -7.1822452e+01 2.8570080e+03 - 1.0433355e+03 -3.5453662e+01 2.8567574e+03 - 1.0617124e+03 2.8556921e-01 2.8563801e+03 - 1.0790761e+03 3.5234405e+01 2.8558560e+03 - 1.0954288e+03 6.9214007e+01 2.8551642e+03 - 1.1107752e+03 1.0202481e+02 2.8542831e+03 - 1.1251217e+03 1.3344341e+02 2.8531910e+03 - 1.1384771e+03 1.6321914e+02 2.8518661e+03 - 1.1508523e+03 1.9107033e+02 2.8502873e+03 - 1.1622604e+03 2.1668044e+02 2.8484351e+03 - 1.1727167e+03 2.3969431e+02 2.8462923e+03 - 1.1822393e+03 2.5971515e+02 2.8438457e+03 - 1.1908486e+03 2.7630275e+02 2.8410880e+03 - 1.1985682e+03 2.8897439e+02 2.8380198e+03 - 1.2054252e+03 2.9720992e+02 2.8346526e+03 - 1.2114503e+03 3.0046334e+02 2.8310126e+03 - 1.2166784e+03 2.9818364e+02 2.8271441e+03 - 1.2211494e+03 2.8984813e+02 2.8231134e+03 - 1.2249079e+03 2.7501083e+02 2.8190127e+03 - 1.2280032e+03 2.5336706e+02 2.8149608e+03 - 1.2304886e+03 2.2483150e+02 2.8111030e+03 - 1.2324196e+03 1.8962141e+02 2.8076044e+03 - 1.2338505e+03 1.4832958e+02 2.8046398e+03 - 1.2348312e+03 1.0196546e+02 2.8023767e+03 - 1.2354020e+03 5.1942794e+01 2.8009556e+03 - 1.2355891e+03 0.0000000e+00 2.8004709e+03 - 1.3460906e+03 9.6268545e-09 2.7218283e+03 - 1.3458586e+03 -5.2809301e+01 2.7223722e+03 - 1.3451562e+03 -1.0348849e+02 2.7239628e+03 - 1.3439652e+03 -1.5012397e+02 2.7264838e+03 - 1.3422573e+03 -1.9118576e+02 2.7297628e+03 - 1.3399969e+03 -2.2561490e+02 2.7335976e+03 - 1.3371437e+03 -2.5282870e+02 2.7377807e+03 - 1.3336553e+03 -2.7266325e+02 2.7421199e+03 - 1.3294893e+03 -2.8528178e+02 2.7464507e+03 - 1.3246041e+03 -2.9107533e+02 2.7506420e+03 - 1.3189604e+03 -2.9057315e+02 2.7545964e+03 - 1.3125210e+03 -2.8437166e+02 2.7582469e+03 - 1.3052515e+03 -2.7308321e+02 2.7615523e+03 - 1.2971201e+03 -2.5730257e+02 2.7644921e+03 - 1.2880974e+03 -2.3758729e+02 2.7670614e+03 - 1.2781567e+03 -2.1444788e+02 2.7692670e+03 - 1.2672737e+03 -1.8834462e+02 2.7711239e+03 - 1.2554265e+03 -1.5968850e+02 2.7726528e+03 - 1.2425956e+03 -1.2884434e+02 2.7738778e+03 - 1.2287637e+03 -9.6135085e+01 2.7748254e+03 - 1.2139160e+03 -6.1846478e+01 2.7755226e+03 - 1.1980400e+03 -2.6231595e+01 2.7759971e+03 - 1.1811255e+03 1.0484889e+01 2.7762759e+03 - 1.1631646e+03 4.8102876e+01 2.7763854e+03 - 1.1441520e+03 8.6443478e+01 2.7763510e+03 - 1.1240845e+03 1.2534610e+02 2.7761967e+03 - 1.1029615e+03 1.6466595e+02 2.7759453e+03 - 1.0807849e+03 2.0427190e+02 2.7756183e+03 - 1.0575588e+03 2.4404468e+02 2.7752356e+03 - 1.0332902e+03 2.8387539e+02 2.7748158e+03 - 1.0079883e+03 3.2366420e+02 2.7743757e+03 - 9.8166506e+02 3.6331928e+02 2.7739310e+03 - 9.5433485e+02 4.0275591e+02 2.7734956e+03 - 9.2601482e+02 4.4189574e+02 2.7730820e+03 - 8.9672473e+02 4.8066612e+02 2.7727014e+03 - 8.6648705e+02 5.1899961e+02 2.7723631e+03 - 8.3532701e+02 5.5683355e+02 2.7720754e+03 - 8.0327265e+02 5.9410965e+02 2.7718448e+03 - 7.7035490e+02 6.3077370e+02 2.7716764e+03 - 7.3660763e+02 6.6677532e+02 2.7715739e+03 - 7.0206774e+02 7.0206774e+02 2.7715394e+03 - 6.6677532e+02 7.3660763e+02 2.7715739e+03 - 6.3077370e+02 7.7035490e+02 2.7716764e+03 - 5.9410965e+02 8.0327265e+02 2.7718448e+03 - 5.5683355e+02 8.3532701e+02 2.7720754e+03 - 5.1899961e+02 8.6648705e+02 2.7723631e+03 - 4.8066612e+02 8.9672473e+02 2.7727014e+03 - 4.4189574e+02 9.2601482e+02 2.7730820e+03 - 4.0275591e+02 9.5433485e+02 2.7734956e+03 - 3.6331928e+02 9.8166506e+02 2.7739310e+03 - 3.2366420e+02 1.0079883e+03 2.7743757e+03 - 2.8387539e+02 1.0332902e+03 2.7748158e+03 - 2.4404468e+02 1.0575588e+03 2.7752356e+03 - 2.0427190e+02 1.0807849e+03 2.7756183e+03 - 1.6466595e+02 1.1029615e+03 2.7759453e+03 - 1.2534610e+02 1.1240845e+03 2.7761967e+03 - 8.6443478e+01 1.1441520e+03 2.7763510e+03 - 4.8102876e+01 1.1631646e+03 2.7763854e+03 - 1.0484889e+01 1.1811255e+03 2.7762759e+03 - -2.6231595e+01 1.1980400e+03 2.7759971e+03 - -6.1846478e+01 1.2139160e+03 2.7755226e+03 - -9.6135085e+01 1.2287637e+03 2.7748254e+03 - -1.2884434e+02 1.2425956e+03 2.7738778e+03 - -1.5968850e+02 1.2554265e+03 2.7726528e+03 - -1.8834462e+02 1.2672737e+03 2.7711239e+03 - -2.1444788e+02 1.2781567e+03 2.7692670e+03 - -2.3758729e+02 1.2880974e+03 2.7670614e+03 - -2.5730257e+02 1.2971201e+03 2.7644921e+03 - -2.7308321e+02 1.3052515e+03 2.7615523e+03 - -2.8437166e+02 1.3125210e+03 2.7582469e+03 - -2.9057315e+02 1.3189604e+03 2.7545964e+03 - -2.9107533e+02 1.3246041e+03 2.7506420e+03 - -2.8528178e+02 1.3294893e+03 2.7464507e+03 - -2.7266325e+02 1.3336553e+03 2.7421199e+03 - -2.5282870e+02 1.3371437e+03 2.7377807e+03 - -2.2561490e+02 1.3399969e+03 2.7335976e+03 - -1.9118576e+02 1.3422573e+03 2.7297628e+03 - -1.5012397e+02 1.3439652e+03 2.7264838e+03 - -1.0348849e+02 1.3451562e+03 2.7239628e+03 - -5.2809301e+01 1.3458586e+03 2.7223722e+03 - -2.4067136e-09 1.3460906e+03 2.7218283e+03 - 5.2809301e+01 1.3458586e+03 2.7223722e+03 - 1.0348849e+02 1.3451562e+03 2.7239628e+03 - 1.5012397e+02 1.3439652e+03 2.7264838e+03 - 1.9118576e+02 1.3422573e+03 2.7297628e+03 - 2.2561490e+02 1.3399969e+03 2.7335976e+03 - 2.5282870e+02 1.3371437e+03 2.7377807e+03 - 2.7266325e+02 1.3336553e+03 2.7421199e+03 - 2.8528178e+02 1.3294893e+03 2.7464507e+03 - 2.9107533e+02 1.3246041e+03 2.7506420e+03 - 2.9057315e+02 1.3189604e+03 2.7545964e+03 - 2.8437166e+02 1.3125210e+03 2.7582469e+03 - 2.7308321e+02 1.3052515e+03 2.7615523e+03 - 2.5730257e+02 1.2971201e+03 2.7644921e+03 - 2.3758729e+02 1.2880974e+03 2.7670614e+03 - 2.1444788e+02 1.2781567e+03 2.7692670e+03 - 1.8834462e+02 1.2672737e+03 2.7711239e+03 - 1.5968850e+02 1.2554265e+03 2.7726528e+03 - 1.2884434e+02 1.2425956e+03 2.7738778e+03 - 9.6135085e+01 1.2287637e+03 2.7748254e+03 - 6.1846478e+01 1.2139160e+03 2.7755226e+03 - 2.6231595e+01 1.1980400e+03 2.7759971e+03 - -1.0484889e+01 1.1811255e+03 2.7762759e+03 - -4.8102876e+01 1.1631646e+03 2.7763854e+03 - -8.6443478e+01 1.1441520e+03 2.7763510e+03 - -1.2534610e+02 1.1240845e+03 2.7761967e+03 - -1.6466595e+02 1.1029615e+03 2.7759453e+03 - -2.0427190e+02 1.0807849e+03 2.7756183e+03 - -2.4404468e+02 1.0575588e+03 2.7752356e+03 - -2.8387539e+02 1.0332902e+03 2.7748158e+03 - -3.2366420e+02 1.0079883e+03 2.7743757e+03 - -3.6331928e+02 9.8166506e+02 2.7739310e+03 - -4.0275591e+02 9.5433485e+02 2.7734956e+03 - -4.4189574e+02 9.2601482e+02 2.7730820e+03 - -4.8066612e+02 8.9672473e+02 2.7727014e+03 - -5.1899961e+02 8.6648705e+02 2.7723631e+03 - -5.5683355e+02 8.3532701e+02 2.7720754e+03 - -5.9410965e+02 8.0327265e+02 2.7718448e+03 - -6.3077370e+02 7.7035490e+02 2.7716764e+03 - -6.6677532e+02 7.3660763e+02 2.7715739e+03 - -7.0206774e+02 7.0206774e+02 2.7715394e+03 - -7.3660763e+02 6.6677532e+02 2.7715739e+03 - -7.7035490e+02 6.3077370e+02 2.7716764e+03 - -8.0327265e+02 5.9410965e+02 2.7718448e+03 - -8.3532701e+02 5.5683355e+02 2.7720754e+03 - -8.6648705e+02 5.1899961e+02 2.7723631e+03 - -8.9672473e+02 4.8066612e+02 2.7727014e+03 - -9.2601482e+02 4.4189574e+02 2.7730820e+03 - -9.5433485e+02 4.0275591e+02 2.7734956e+03 - -9.8166506e+02 3.6331928e+02 2.7739310e+03 - -1.0079883e+03 3.2366420e+02 2.7743757e+03 - -1.0332902e+03 2.8387539e+02 2.7748158e+03 - -1.0575588e+03 2.4404468e+02 2.7752356e+03 - -1.0807849e+03 2.0427190e+02 2.7756183e+03 - -1.1029615e+03 1.6466595e+02 2.7759453e+03 - -1.1240845e+03 1.2534610e+02 2.7761967e+03 - -1.1441520e+03 8.6443478e+01 2.7763510e+03 - -1.1631646e+03 4.8102876e+01 2.7763854e+03 - -1.1811255e+03 1.0484889e+01 2.7762759e+03 - -1.1980400e+03 -2.6231595e+01 2.7759971e+03 - -1.2139160e+03 -6.1846478e+01 2.7755226e+03 - -1.2287637e+03 -9.6135085e+01 2.7748254e+03 - -1.2425956e+03 -1.2884434e+02 2.7738778e+03 - -1.2554265e+03 -1.5968850e+02 2.7726528e+03 - -1.2672737e+03 -1.8834462e+02 2.7711239e+03 - -1.2781567e+03 -2.1444788e+02 2.7692670e+03 - -1.2880974e+03 -2.3758729e+02 2.7670614e+03 - -1.2971201e+03 -2.5730257e+02 2.7644921e+03 - -1.3052515e+03 -2.7308321e+02 2.7615523e+03 - -1.3125210e+03 -2.8437166e+02 2.7582469e+03 - -1.3189604e+03 -2.9057315e+02 2.7545964e+03 - -1.3246041e+03 -2.9107533e+02 2.7506420e+03 - -1.3294893e+03 -2.8528178e+02 2.7464507e+03 - -1.3336553e+03 -2.7266325e+02 2.7421199e+03 - -1.3371437e+03 -2.5282870e+02 2.7377807e+03 - -1.3399969e+03 -2.2561490e+02 2.7335976e+03 - -1.3422573e+03 -1.9118576e+02 2.7297628e+03 - -1.3439652e+03 -1.5012397e+02 2.7264838e+03 - -1.3451562e+03 -1.0348849e+02 2.7239628e+03 - -1.3458586e+03 -5.2809301e+01 2.7223722e+03 - -1.3460906e+03 0.0000000e+00 2.7218283e+03 - -1.3458586e+03 5.2809301e+01 2.7223722e+03 - -1.3451562e+03 1.0348849e+02 2.7239628e+03 - -1.3439652e+03 1.5012397e+02 2.7264838e+03 - -1.3422573e+03 1.9118576e+02 2.7297628e+03 - -1.3399969e+03 2.2561490e+02 2.7335976e+03 - -1.3371437e+03 2.5282870e+02 2.7377807e+03 - -1.3336553e+03 2.7266325e+02 2.7421199e+03 - -1.3294893e+03 2.8528178e+02 2.7464507e+03 - -1.3246041e+03 2.9107533e+02 2.7506420e+03 - -1.3189604e+03 2.9057315e+02 2.7545964e+03 - -1.3125210e+03 2.8437166e+02 2.7582469e+03 - -1.3052515e+03 2.7308321e+02 2.7615523e+03 - -1.2971201e+03 2.5730257e+02 2.7644921e+03 - -1.2880974e+03 2.3758729e+02 2.7670614e+03 - -1.2781567e+03 2.1444788e+02 2.7692670e+03 - -1.2672737e+03 1.8834462e+02 2.7711239e+03 - -1.2554265e+03 1.5968850e+02 2.7726528e+03 - -1.2425956e+03 1.2884434e+02 2.7738778e+03 - -1.2287637e+03 9.6135085e+01 2.7748254e+03 - -1.2139160e+03 6.1846478e+01 2.7755226e+03 - -1.1980400e+03 2.6231595e+01 2.7759971e+03 - -1.1811255e+03 -1.0484889e+01 2.7762759e+03 - -1.1631646e+03 -4.8102876e+01 2.7763854e+03 - -1.1441520e+03 -8.6443478e+01 2.7763510e+03 - -1.1240845e+03 -1.2534610e+02 2.7761967e+03 - -1.1029615e+03 -1.6466595e+02 2.7759453e+03 - -1.0807849e+03 -2.0427190e+02 2.7756183e+03 - -1.0575588e+03 -2.4404468e+02 2.7752356e+03 - -1.0332902e+03 -2.8387539e+02 2.7748158e+03 - -1.0079883e+03 -3.2366420e+02 2.7743757e+03 - -9.8166506e+02 -3.6331928e+02 2.7739310e+03 - -9.5433485e+02 -4.0275591e+02 2.7734956e+03 - -9.2601482e+02 -4.4189574e+02 2.7730820e+03 - -8.9672473e+02 -4.8066612e+02 2.7727014e+03 - -8.6648705e+02 -5.1899961e+02 2.7723631e+03 - -8.3532701e+02 -5.5683355e+02 2.7720754e+03 - -8.0327265e+02 -5.9410965e+02 2.7718448e+03 - -7.7035490e+02 -6.3077370e+02 2.7716764e+03 - -7.3660763e+02 -6.6677532e+02 2.7715739e+03 - -7.0206774e+02 -7.0206774e+02 2.7715394e+03 - -6.6677532e+02 -7.3660763e+02 2.7715739e+03 - -6.3077370e+02 -7.7035490e+02 2.7716764e+03 - -5.9410965e+02 -8.0327265e+02 2.7718448e+03 - -5.5683355e+02 -8.3532701e+02 2.7720754e+03 - -5.1899961e+02 -8.6648705e+02 2.7723631e+03 - -4.8066612e+02 -8.9672473e+02 2.7727014e+03 - -4.4189574e+02 -9.2601482e+02 2.7730820e+03 - -4.0275591e+02 -9.5433485e+02 2.7734956e+03 - -3.6331928e+02 -9.8166506e+02 2.7739310e+03 - -3.2366420e+02 -1.0079883e+03 2.7743757e+03 - -2.8387539e+02 -1.0332902e+03 2.7748158e+03 - -2.4404468e+02 -1.0575588e+03 2.7752356e+03 - -2.0427190e+02 -1.0807849e+03 2.7756183e+03 - -1.6466595e+02 -1.1029615e+03 2.7759453e+03 - -1.2534610e+02 -1.1240845e+03 2.7761967e+03 - -8.6443478e+01 -1.1441520e+03 2.7763510e+03 - -4.8102876e+01 -1.1631646e+03 2.7763854e+03 - -1.0484889e+01 -1.1811255e+03 2.7762759e+03 - 2.6231595e+01 -1.1980400e+03 2.7759971e+03 - 6.1846478e+01 -1.2139160e+03 2.7755226e+03 - 9.6135085e+01 -1.2287637e+03 2.7748254e+03 - 1.2884434e+02 -1.2425956e+03 2.7738778e+03 - 1.5968850e+02 -1.2554265e+03 2.7726528e+03 - 1.8834462e+02 -1.2672737e+03 2.7711239e+03 - 2.1444788e+02 -1.2781567e+03 2.7692670e+03 - 2.3758729e+02 -1.2880974e+03 2.7670614e+03 - 2.5730257e+02 -1.2971201e+03 2.7644921e+03 - 2.7308321e+02 -1.3052515e+03 2.7615523e+03 - 2.8437166e+02 -1.3125210e+03 2.7582469e+03 - 2.9057315e+02 -1.3189604e+03 2.7545964e+03 - 2.9107533e+02 -1.3246041e+03 2.7506420e+03 - 2.8528178e+02 -1.3294893e+03 2.7464507e+03 - 2.7266325e+02 -1.3336553e+03 2.7421199e+03 - 2.5282870e+02 -1.3371437e+03 2.7377807e+03 - 2.2561490e+02 -1.3399969e+03 2.7335976e+03 - 1.9118576e+02 -1.3422573e+03 2.7297628e+03 - 1.5012397e+02 -1.3439652e+03 2.7264838e+03 - 1.0348849e+02 -1.3451562e+03 2.7239628e+03 - 5.2809301e+01 -1.3458586e+03 2.7223722e+03 - 0.0000000e+00 -1.3460906e+03 2.7218283e+03 - -5.2809301e+01 -1.3458586e+03 2.7223722e+03 - -1.0348849e+02 -1.3451562e+03 2.7239628e+03 - -1.5012397e+02 -1.3439652e+03 2.7264838e+03 - -1.9118576e+02 -1.3422573e+03 2.7297628e+03 - -2.2561490e+02 -1.3399969e+03 2.7335976e+03 - -2.5282870e+02 -1.3371437e+03 2.7377807e+03 - -2.7266325e+02 -1.3336553e+03 2.7421199e+03 - -2.8528178e+02 -1.3294893e+03 2.7464507e+03 - -2.9107533e+02 -1.3246041e+03 2.7506420e+03 - -2.9057315e+02 -1.3189604e+03 2.7545964e+03 - -2.8437166e+02 -1.3125210e+03 2.7582469e+03 - -2.7308321e+02 -1.3052515e+03 2.7615523e+03 - -2.5730257e+02 -1.2971201e+03 2.7644921e+03 - -2.3758729e+02 -1.2880974e+03 2.7670614e+03 - -2.1444788e+02 -1.2781567e+03 2.7692670e+03 - -1.8834462e+02 -1.2672737e+03 2.7711239e+03 - -1.5968850e+02 -1.2554265e+03 2.7726528e+03 - -1.2884434e+02 -1.2425956e+03 2.7738778e+03 - -9.6135085e+01 -1.2287637e+03 2.7748254e+03 - -6.1846478e+01 -1.2139160e+03 2.7755226e+03 - -2.6231595e+01 -1.1980400e+03 2.7759971e+03 - 1.0484889e+01 -1.1811255e+03 2.7762759e+03 - 4.8102876e+01 -1.1631646e+03 2.7763854e+03 - 8.6443478e+01 -1.1441520e+03 2.7763510e+03 - 1.2534610e+02 -1.1240845e+03 2.7761967e+03 - 1.6466595e+02 -1.1029615e+03 2.7759453e+03 - 2.0427190e+02 -1.0807849e+03 2.7756183e+03 - 2.4404468e+02 -1.0575588e+03 2.7752356e+03 - 2.8387539e+02 -1.0332902e+03 2.7748158e+03 - 3.2366420e+02 -1.0079883e+03 2.7743757e+03 - 3.6331928e+02 -9.8166506e+02 2.7739310e+03 - 4.0275591e+02 -9.5433485e+02 2.7734956e+03 - 4.4189574e+02 -9.2601482e+02 2.7730820e+03 - 4.8066612e+02 -8.9672473e+02 2.7727014e+03 - 5.1899961e+02 -8.6648705e+02 2.7723631e+03 - 5.5683355e+02 -8.3532701e+02 2.7720754e+03 - 5.9410965e+02 -8.0327265e+02 2.7718448e+03 - 6.3077370e+02 -7.7035490e+02 2.7716764e+03 - 6.6677532e+02 -7.3660763e+02 2.7715739e+03 - 7.0206774e+02 -7.0206774e+02 2.7715394e+03 - 7.3660763e+02 -6.6677532e+02 2.7715739e+03 - 7.7035490e+02 -6.3077370e+02 2.7716764e+03 - 8.0327265e+02 -5.9410965e+02 2.7718448e+03 - 8.3532701e+02 -5.5683355e+02 2.7720754e+03 - 8.6648705e+02 -5.1899961e+02 2.7723631e+03 - 8.9672473e+02 -4.8066612e+02 2.7727014e+03 - 9.2601482e+02 -4.4189574e+02 2.7730820e+03 - 9.5433485e+02 -4.0275591e+02 2.7734956e+03 - 9.8166506e+02 -3.6331928e+02 2.7739310e+03 - 1.0079883e+03 -3.2366420e+02 2.7743757e+03 - 1.0332902e+03 -2.8387539e+02 2.7748158e+03 - 1.0575588e+03 -2.4404468e+02 2.7752356e+03 - 1.0807849e+03 -2.0427190e+02 2.7756183e+03 - 1.1029615e+03 -1.6466595e+02 2.7759453e+03 - 1.1240845e+03 -1.2534610e+02 2.7761967e+03 - 1.1441520e+03 -8.6443478e+01 2.7763510e+03 - 1.1631646e+03 -4.8102876e+01 2.7763854e+03 - 1.1811255e+03 -1.0484889e+01 2.7762759e+03 - 1.1980400e+03 2.6231595e+01 2.7759971e+03 - 1.2139160e+03 6.1846478e+01 2.7755226e+03 - 1.2287637e+03 9.6135085e+01 2.7748254e+03 - 1.2425956e+03 1.2884434e+02 2.7738778e+03 - 1.2554265e+03 1.5968850e+02 2.7726528e+03 - 1.2672737e+03 1.8834462e+02 2.7711239e+03 - 1.2781567e+03 2.1444788e+02 2.7692670e+03 - 1.2880974e+03 2.3758729e+02 2.7670614e+03 - 1.2971201e+03 2.5730257e+02 2.7644921e+03 - 1.3052515e+03 2.7308321e+02 2.7615523e+03 - 1.3125210e+03 2.8437166e+02 2.7582469e+03 - 1.3189604e+03 2.9057315e+02 2.7545964e+03 - 1.3246041e+03 2.9107533e+02 2.7506420e+03 - 1.3294893e+03 2.8528178e+02 2.7464507e+03 - 1.3336553e+03 2.7266325e+02 2.7421199e+03 - 1.3371437e+03 2.5282870e+02 2.7377807e+03 - 1.3399969e+03 2.2561490e+02 2.7335976e+03 - 1.3422573e+03 1.9118576e+02 2.7297628e+03 - 1.3439652e+03 1.5012397e+02 2.7264838e+03 - 1.3451562e+03 1.0348849e+02 2.7239628e+03 - 1.3458586e+03 5.2809301e+01 2.7223722e+03 - 1.3460906e+03 0.0000000e+00 2.7218283e+03 - 1.4566362e+03 4.8134273e-09 2.6398384e+03 - 1.4563502e+03 -5.3877160e+01 2.6404537e+03 - 1.4554904e+03 -1.0537623e+02 2.6422479e+03 - 1.4540503e+03 -1.5238015e+02 2.6450758e+03 - 1.4520189e+03 -1.9322967e+02 2.6487247e+03 - 1.4493802e+03 -2.2681879e+02 2.6529485e+03 - 1.4461132e+03 -2.5258858e+02 2.6574998e+03 - 1.4421923e+03 -2.7044755e+02 2.6621546e+03 - 1.4375880e+03 -2.8065629e+02 2.6667268e+03 - 1.4322680e+03 -2.8370877e+02 2.6710732e+03 - 1.4261983e+03 -2.8023001e+02 2.6750920e+03 - 1.4193440e+03 -2.7089840e+02 2.6787178e+03 - 1.4116702e+03 -2.5639239e+02 2.6819146e+03 - 1.4031429e+03 -2.3735770e+02 2.6846698e+03 - 1.3937293e+03 -2.1438961e+02 2.6869872e+03 - 1.3833985e+03 -1.8802571e+02 2.6888831e+03 - 1.3721214e+03 -1.5874506e+02 2.6903817e+03 - 1.3598714e+03 -1.2697119e+02 2.6915125e+03 - 1.3466240e+03 -9.3076934e+01 2.6923079e+03 - 1.3323574e+03 -5.7390042e+01 2.6928019e+03 - 1.3170522e+03 -2.0198811e+01 2.6930289e+03 - 1.3006917e+03 1.8242619e+01 2.6930226e+03 - 1.2832618e+03 5.7709488e+01 2.6928160e+03 - 1.2647511e+03 9.8002221e+01 2.6924407e+03 - 1.2451508e+03 1.3894280e+02 2.6919270e+03 - 1.2244548e+03 1.8037168e+02 2.6913031e+03 - 1.2026597e+03 2.2214518e+02 2.6905960e+03 - 1.1797648e+03 2.6413325e+02 2.6898306e+03 - 1.1557723e+03 3.0621767e+02 2.6890301e+03 - 1.1306868e+03 3.4829049e+02 2.6882157e+03 - 1.1045158e+03 3.9025274e+02 2.6874073e+03 - 1.0772696e+03 4.3201337e+02 2.6866225e+03 - 1.0489613e+03 4.7348835e+02 2.6858775e+03 - 1.0196066e+03 5.1459994e+02 2.6851866e+03 - 9.8922410e+02 5.5527605e+02 2.6845625e+03 - 9.5783533e+02 5.9544975e+02 2.6840160e+03 - 9.2546458e+02 6.3505882e+02 2.6835563e+03 - 8.9213909e+02 6.7404541e+02 2.6831910e+03 - 8.5788908e+02 7.1235576e+02 2.6829259e+03 - 8.2274777e+02 7.4993991e+02 2.6827651e+03 - 7.8675154e+02 7.8675154e+02 2.6827113e+03 - 7.4993991e+02 8.2274777e+02 2.6827651e+03 - 7.1235576e+02 8.5788908e+02 2.6829259e+03 - 6.7404541e+02 8.9213909e+02 2.6831910e+03 - 6.3505882e+02 9.2546458e+02 2.6835563e+03 - 5.9544975e+02 9.5783533e+02 2.6840160e+03 - 5.5527605e+02 9.8922410e+02 2.6845625e+03 - 5.1459994e+02 1.0196066e+03 2.6851866e+03 - 4.7348835e+02 1.0489613e+03 2.6858775e+03 - 4.3201337e+02 1.0772696e+03 2.6866225e+03 - 3.9025274e+02 1.1045158e+03 2.6874073e+03 - 3.4829049e+02 1.1306868e+03 2.6882157e+03 - 3.0621767e+02 1.1557723e+03 2.6890301e+03 - 2.6413325e+02 1.1797648e+03 2.6898306e+03 - 2.2214518e+02 1.2026597e+03 2.6905960e+03 - 1.8037168e+02 1.2244548e+03 2.6913031e+03 - 1.3894280e+02 1.2451508e+03 2.6919270e+03 - 9.8002221e+01 1.2647511e+03 2.6924407e+03 - 5.7709488e+01 1.2832618e+03 2.6928160e+03 - 1.8242619e+01 1.3006917e+03 2.6930226e+03 - -2.0198811e+01 1.3170522e+03 2.6930289e+03 - -5.7390042e+01 1.3323574e+03 2.6928019e+03 - -9.3076934e+01 1.3466240e+03 2.6923079e+03 - -1.2697119e+02 1.3598714e+03 2.6915125e+03 - -1.5874506e+02 1.3721214e+03 2.6903817e+03 - -1.8802571e+02 1.3833985e+03 2.6888831e+03 - -2.1438961e+02 1.3937293e+03 2.6869872e+03 - -2.3735770e+02 1.4031429e+03 2.6846698e+03 - -2.5639239e+02 1.4116702e+03 2.6819146e+03 - -2.7089840e+02 1.4193440e+03 2.6787178e+03 - -2.8023001e+02 1.4261983e+03 2.6750920e+03 - -2.8370877e+02 1.4322680e+03 2.6710732e+03 - -2.8065629e+02 1.4375880e+03 2.6667268e+03 - -2.7044755e+02 1.4421923e+03 2.6621546e+03 - -2.5258858e+02 1.4461132e+03 2.6574998e+03 - -2.2681879e+02 1.4493802e+03 2.6529485e+03 - -1.9322967e+02 1.4520189e+03 2.6487247e+03 - -1.5238015e+02 1.4540503e+03 2.6450758e+03 - -1.0537623e+02 1.4554904e+03 2.6422479e+03 - -5.3877160e+01 1.4563502e+03 2.6404537e+03 - -4.8134273e-09 1.4566362e+03 2.6398384e+03 - 5.3877160e+01 1.4563502e+03 2.6404537e+03 - 1.0537623e+02 1.4554904e+03 2.6422479e+03 - 1.5238015e+02 1.4540503e+03 2.6450758e+03 - 1.9322967e+02 1.4520189e+03 2.6487247e+03 - 2.2681879e+02 1.4493802e+03 2.6529485e+03 - 2.5258858e+02 1.4461132e+03 2.6574998e+03 - 2.7044755e+02 1.4421923e+03 2.6621546e+03 - 2.8065629e+02 1.4375880e+03 2.6667268e+03 - 2.8370877e+02 1.4322680e+03 2.6710732e+03 - 2.8023001e+02 1.4261983e+03 2.6750920e+03 - 2.7089840e+02 1.4193440e+03 2.6787178e+03 - 2.5639239e+02 1.4116702e+03 2.6819146e+03 - 2.3735770e+02 1.4031429e+03 2.6846698e+03 - 2.1438961e+02 1.3937293e+03 2.6869872e+03 - 1.8802571e+02 1.3833985e+03 2.6888831e+03 - 1.5874506e+02 1.3721214e+03 2.6903817e+03 - 1.2697119e+02 1.3598714e+03 2.6915125e+03 - 9.3076934e+01 1.3466240e+03 2.6923079e+03 - 5.7390042e+01 1.3323574e+03 2.6928019e+03 - 2.0198811e+01 1.3170522e+03 2.6930289e+03 - -1.8242619e+01 1.3006917e+03 2.6930226e+03 - -5.7709488e+01 1.2832618e+03 2.6928160e+03 - -9.8002221e+01 1.2647511e+03 2.6924407e+03 - -1.3894280e+02 1.2451508e+03 2.6919270e+03 - -1.8037168e+02 1.2244548e+03 2.6913031e+03 - -2.2214518e+02 1.2026597e+03 2.6905960e+03 - -2.6413325e+02 1.1797648e+03 2.6898306e+03 - -3.0621767e+02 1.1557723e+03 2.6890301e+03 - -3.4829049e+02 1.1306868e+03 2.6882157e+03 - -3.9025274e+02 1.1045158e+03 2.6874073e+03 - -4.3201337e+02 1.0772696e+03 2.6866225e+03 - -4.7348835e+02 1.0489613e+03 2.6858775e+03 - -5.1459994e+02 1.0196066e+03 2.6851866e+03 - -5.5527605e+02 9.8922410e+02 2.6845625e+03 - -5.9544975e+02 9.5783533e+02 2.6840160e+03 - -6.3505882e+02 9.2546458e+02 2.6835563e+03 - -6.7404541e+02 8.9213909e+02 2.6831910e+03 - -7.1235576e+02 8.5788908e+02 2.6829259e+03 - -7.4993991e+02 8.2274777e+02 2.6827651e+03 - -7.8675154e+02 7.8675154e+02 2.6827113e+03 - -8.2274777e+02 7.4993991e+02 2.6827651e+03 - -8.5788908e+02 7.1235576e+02 2.6829259e+03 - -8.9213909e+02 6.7404541e+02 2.6831910e+03 - -9.2546458e+02 6.3505882e+02 2.6835563e+03 - -9.5783533e+02 5.9544975e+02 2.6840160e+03 - -9.8922410e+02 5.5527605e+02 2.6845625e+03 - -1.0196066e+03 5.1459994e+02 2.6851866e+03 - -1.0489613e+03 4.7348835e+02 2.6858775e+03 - -1.0772696e+03 4.3201337e+02 2.6866225e+03 - -1.1045158e+03 3.9025274e+02 2.6874073e+03 - -1.1306868e+03 3.4829049e+02 2.6882157e+03 - -1.1557723e+03 3.0621767e+02 2.6890301e+03 - -1.1797648e+03 2.6413325e+02 2.6898306e+03 - -1.2026597e+03 2.2214518e+02 2.6905960e+03 - -1.2244548e+03 1.8037168e+02 2.6913031e+03 - -1.2451508e+03 1.3894280e+02 2.6919270e+03 - -1.2647511e+03 9.8002221e+01 2.6924407e+03 - -1.2832618e+03 5.7709488e+01 2.6928160e+03 - -1.3006917e+03 1.8242619e+01 2.6930226e+03 - -1.3170522e+03 -2.0198811e+01 2.6930289e+03 - -1.3323574e+03 -5.7390042e+01 2.6928019e+03 - -1.3466240e+03 -9.3076934e+01 2.6923079e+03 - -1.3598714e+03 -1.2697119e+02 2.6915125e+03 - -1.3721214e+03 -1.5874506e+02 2.6903817e+03 - -1.3833985e+03 -1.8802571e+02 2.6888831e+03 - -1.3937293e+03 -2.1438961e+02 2.6869872e+03 - -1.4031429e+03 -2.3735770e+02 2.6846698e+03 - -1.4116702e+03 -2.5639239e+02 2.6819146e+03 - -1.4193440e+03 -2.7089840e+02 2.6787178e+03 - -1.4261983e+03 -2.8023001e+02 2.6750920e+03 - -1.4322680e+03 -2.8370877e+02 2.6710732e+03 - -1.4375880e+03 -2.8065629e+02 2.6667268e+03 - -1.4421923e+03 -2.7044755e+02 2.6621546e+03 - -1.4461132e+03 -2.5258858e+02 2.6574998e+03 - -1.4493802e+03 -2.2681879e+02 2.6529485e+03 - -1.4520189e+03 -1.9322967e+02 2.6487247e+03 - -1.4540503e+03 -1.5238015e+02 2.6450758e+03 - -1.4554904e+03 -1.0537623e+02 2.6422479e+03 - -1.4563502e+03 -5.3877160e+01 2.6404537e+03 - -1.4566362e+03 -2.4067136e-09 2.6398384e+03 - -1.4563502e+03 5.3877160e+01 2.6404537e+03 - -1.4554904e+03 1.0537623e+02 2.6422479e+03 - -1.4540503e+03 1.5238015e+02 2.6450758e+03 - -1.4520189e+03 1.9322967e+02 2.6487247e+03 - -1.4493802e+03 2.2681879e+02 2.6529485e+03 - -1.4461132e+03 2.5258858e+02 2.6574998e+03 - -1.4421923e+03 2.7044755e+02 2.6621546e+03 - -1.4375880e+03 2.8065629e+02 2.6667268e+03 - -1.4322680e+03 2.8370877e+02 2.6710732e+03 - -1.4261983e+03 2.8023001e+02 2.6750920e+03 - -1.4193440e+03 2.7089840e+02 2.6787178e+03 - -1.4116702e+03 2.5639239e+02 2.6819146e+03 - -1.4031429e+03 2.3735770e+02 2.6846698e+03 - -1.3937293e+03 2.1438961e+02 2.6869872e+03 - -1.3833985e+03 1.8802571e+02 2.6888831e+03 - -1.3721214e+03 1.5874506e+02 2.6903817e+03 - -1.3598714e+03 1.2697119e+02 2.6915125e+03 - -1.3466240e+03 9.3076934e+01 2.6923079e+03 - -1.3323574e+03 5.7390042e+01 2.6928019e+03 - -1.3170522e+03 2.0198811e+01 2.6930289e+03 - -1.3006917e+03 -1.8242619e+01 2.6930226e+03 - -1.2832618e+03 -5.7709488e+01 2.6928160e+03 - -1.2647511e+03 -9.8002221e+01 2.6924407e+03 - -1.2451508e+03 -1.3894280e+02 2.6919270e+03 - -1.2244548e+03 -1.8037168e+02 2.6913031e+03 - -1.2026597e+03 -2.2214518e+02 2.6905960e+03 - -1.1797648e+03 -2.6413325e+02 2.6898306e+03 - -1.1557723e+03 -3.0621767e+02 2.6890301e+03 - -1.1306868e+03 -3.4829049e+02 2.6882157e+03 - -1.1045158e+03 -3.9025274e+02 2.6874073e+03 - -1.0772696e+03 -4.3201337e+02 2.6866225e+03 - -1.0489613e+03 -4.7348835e+02 2.6858775e+03 - -1.0196066e+03 -5.1459994e+02 2.6851866e+03 - -9.8922410e+02 -5.5527605e+02 2.6845625e+03 - -9.5783533e+02 -5.9544975e+02 2.6840160e+03 - -9.2546458e+02 -6.3505882e+02 2.6835563e+03 - -8.9213909e+02 -6.7404541e+02 2.6831910e+03 - -8.5788908e+02 -7.1235576e+02 2.6829259e+03 - -8.2274777e+02 -7.4993991e+02 2.6827651e+03 - -7.8675154e+02 -7.8675154e+02 2.6827113e+03 - -7.4993991e+02 -8.2274777e+02 2.6827651e+03 - -7.1235576e+02 -8.5788908e+02 2.6829259e+03 - -6.7404541e+02 -8.9213909e+02 2.6831910e+03 - -6.3505882e+02 -9.2546458e+02 2.6835563e+03 - -5.9544975e+02 -9.5783533e+02 2.6840160e+03 - -5.5527605e+02 -9.8922410e+02 2.6845625e+03 - -5.1459994e+02 -1.0196066e+03 2.6851866e+03 - -4.7348835e+02 -1.0489613e+03 2.6858775e+03 - -4.3201337e+02 -1.0772696e+03 2.6866225e+03 - -3.9025274e+02 -1.1045158e+03 2.6874073e+03 - -3.4829049e+02 -1.1306868e+03 2.6882157e+03 - -3.0621767e+02 -1.1557723e+03 2.6890301e+03 - -2.6413325e+02 -1.1797648e+03 2.6898306e+03 - -2.2214518e+02 -1.2026597e+03 2.6905960e+03 - -1.8037168e+02 -1.2244548e+03 2.6913031e+03 - -1.3894280e+02 -1.2451508e+03 2.6919270e+03 - -9.8002221e+01 -1.2647511e+03 2.6924407e+03 - -5.7709488e+01 -1.2832618e+03 2.6928160e+03 - -1.8242619e+01 -1.3006917e+03 2.6930226e+03 - 2.0198811e+01 -1.3170522e+03 2.6930289e+03 - 5.7390042e+01 -1.3323574e+03 2.6928019e+03 - 9.3076934e+01 -1.3466240e+03 2.6923079e+03 - 1.2697119e+02 -1.3598714e+03 2.6915125e+03 - 1.5874506e+02 -1.3721214e+03 2.6903817e+03 - 1.8802571e+02 -1.3833985e+03 2.6888831e+03 - 2.1438961e+02 -1.3937293e+03 2.6869872e+03 - 2.3735770e+02 -1.4031429e+03 2.6846698e+03 - 2.5639239e+02 -1.4116702e+03 2.6819146e+03 - 2.7089840e+02 -1.4193440e+03 2.6787178e+03 - 2.8023001e+02 -1.4261983e+03 2.6750920e+03 - 2.8370877e+02 -1.4322680e+03 2.6710732e+03 - 2.8065629e+02 -1.4375880e+03 2.6667268e+03 - 2.7044755e+02 -1.4421923e+03 2.6621546e+03 - 2.5258858e+02 -1.4461132e+03 2.6574998e+03 - 2.2681879e+02 -1.4493802e+03 2.6529485e+03 - 1.9322967e+02 -1.4520189e+03 2.6487247e+03 - 1.5238015e+02 -1.4540503e+03 2.6450758e+03 - 1.0537623e+02 -1.4554904e+03 2.6422479e+03 - 5.3877160e+01 -1.4563502e+03 2.6404537e+03 - -4.8134273e-09 -1.4566362e+03 2.6398384e+03 - -5.3877160e+01 -1.4563502e+03 2.6404537e+03 - -1.0537623e+02 -1.4554904e+03 2.6422479e+03 - -1.5238015e+02 -1.4540503e+03 2.6450758e+03 - -1.9322967e+02 -1.4520189e+03 2.6487247e+03 - -2.2681879e+02 -1.4493802e+03 2.6529485e+03 - -2.5258858e+02 -1.4461132e+03 2.6574998e+03 - -2.7044755e+02 -1.4421923e+03 2.6621546e+03 - -2.8065629e+02 -1.4375880e+03 2.6667268e+03 - -2.8370877e+02 -1.4322680e+03 2.6710732e+03 - -2.8023001e+02 -1.4261983e+03 2.6750920e+03 - -2.7089840e+02 -1.4193440e+03 2.6787178e+03 - -2.5639239e+02 -1.4116702e+03 2.6819146e+03 - -2.3735770e+02 -1.4031429e+03 2.6846698e+03 - -2.1438961e+02 -1.3937293e+03 2.6869872e+03 - -1.8802571e+02 -1.3833985e+03 2.6888831e+03 - -1.5874506e+02 -1.3721214e+03 2.6903817e+03 - -1.2697119e+02 -1.3598714e+03 2.6915125e+03 - -9.3076934e+01 -1.3466240e+03 2.6923079e+03 - -5.7390042e+01 -1.3323574e+03 2.6928019e+03 - -2.0198811e+01 -1.3170522e+03 2.6930289e+03 - 1.8242619e+01 -1.3006917e+03 2.6930226e+03 - 5.7709488e+01 -1.2832618e+03 2.6928160e+03 - 9.8002221e+01 -1.2647511e+03 2.6924407e+03 - 1.3894280e+02 -1.2451508e+03 2.6919270e+03 - 1.8037168e+02 -1.2244548e+03 2.6913031e+03 - 2.2214518e+02 -1.2026597e+03 2.6905960e+03 - 2.6413325e+02 -1.1797648e+03 2.6898306e+03 - 3.0621767e+02 -1.1557723e+03 2.6890301e+03 - 3.4829049e+02 -1.1306868e+03 2.6882157e+03 - 3.9025274e+02 -1.1045158e+03 2.6874073e+03 - 4.3201337e+02 -1.0772696e+03 2.6866225e+03 - 4.7348835e+02 -1.0489613e+03 2.6858775e+03 - 5.1459994e+02 -1.0196066e+03 2.6851866e+03 - 5.5527605e+02 -9.8922410e+02 2.6845625e+03 - 5.9544975e+02 -9.5783533e+02 2.6840160e+03 - 6.3505882e+02 -9.2546458e+02 2.6835563e+03 - 6.7404541e+02 -8.9213909e+02 2.6831910e+03 - 7.1235576e+02 -8.5788908e+02 2.6829259e+03 - 7.4993991e+02 -8.2274777e+02 2.6827651e+03 - 7.8675154e+02 -7.8675154e+02 2.6827113e+03 - 8.2274777e+02 -7.4993991e+02 2.6827651e+03 - 8.5788908e+02 -7.1235576e+02 2.6829259e+03 - 8.9213909e+02 -6.7404541e+02 2.6831910e+03 - 9.2546458e+02 -6.3505882e+02 2.6835563e+03 - 9.5783533e+02 -5.9544975e+02 2.6840160e+03 - 9.8922410e+02 -5.5527605e+02 2.6845625e+03 - 1.0196066e+03 -5.1459994e+02 2.6851866e+03 - 1.0489613e+03 -4.7348835e+02 2.6858775e+03 - 1.0772696e+03 -4.3201337e+02 2.6866225e+03 - 1.1045158e+03 -3.9025274e+02 2.6874073e+03 - 1.1306868e+03 -3.4829049e+02 2.6882157e+03 - 1.1557723e+03 -3.0621767e+02 2.6890301e+03 - 1.1797648e+03 -2.6413325e+02 2.6898306e+03 - 1.2026597e+03 -2.2214518e+02 2.6905960e+03 - 1.2244548e+03 -1.8037168e+02 2.6913031e+03 - 1.2451508e+03 -1.3894280e+02 2.6919270e+03 - 1.2647511e+03 -9.8002221e+01 2.6924407e+03 - 1.2832618e+03 -5.7709488e+01 2.6928160e+03 - 1.3006917e+03 -1.8242619e+01 2.6930226e+03 - 1.3170522e+03 2.0198811e+01 2.6930289e+03 - 1.3323574e+03 5.7390042e+01 2.6928019e+03 - 1.3466240e+03 9.3076934e+01 2.6923079e+03 - 1.3598714e+03 1.2697119e+02 2.6915125e+03 - 1.3721214e+03 1.5874506e+02 2.6903817e+03 - 1.3833985e+03 1.8802571e+02 2.6888831e+03 - 1.3937293e+03 2.1438961e+02 2.6869872e+03 - 1.4031429e+03 2.3735770e+02 2.6846698e+03 - 1.4116702e+03 2.5639239e+02 2.6819146e+03 - 1.4193440e+03 2.7089840e+02 2.6787178e+03 - 1.4261983e+03 2.8023001e+02 2.6750920e+03 - 1.4322680e+03 2.8370877e+02 2.6710732e+03 - 1.4375880e+03 2.8065629e+02 2.6667268e+03 - 1.4421923e+03 2.7044755e+02 2.6621546e+03 - 1.4461132e+03 2.5258858e+02 2.6574998e+03 - 1.4493802e+03 2.2681879e+02 2.6529485e+03 - 1.4520189e+03 1.9322967e+02 2.6487247e+03 - 1.4540503e+03 1.5238015e+02 2.6450758e+03 - 1.4554904e+03 1.0537623e+02 2.6422479e+03 - 1.4563502e+03 5.3877160e+01 2.6404537e+03 - 1.4566362e+03 2.4067136e-09 2.6398384e+03 - 1.5668330e+03 -2.4067136e-09 2.5547041e+03 - 1.5664812e+03 -5.5205557e+01 2.5554069e+03 - 1.5654301e+03 -1.0773626e+02 2.5574495e+03 - 1.5636905e+03 -1.5523608e+02 2.5606487e+03 - 1.5612760e+03 -1.9590193e+02 2.5647393e+03 - 1.5581977e+03 -2.2858630e+02 2.5694193e+03 - 1.5544602e+03 -2.5277334e+02 2.5743925e+03 - 1.5500592e+03 -2.6846904e+02 2.5793978e+03 - 1.5449811e+03 -2.7605558e+02 2.5842251e+03 - 1.5392035e+03 -2.7614955e+02 2.5887195e+03 - 1.5326974e+03 -2.6948572e+02 2.5927770e+03 - 1.5254290e+03 -2.5683311e+02 2.5963363e+03 - 1.5173619e+03 -2.3894077e+02 2.5993700e+03 - 1.5084583e+03 -2.1650686e+02 2.6018759e+03 - 1.4986806e+03 -1.9016409e+02 2.6038695e+03 - 1.4879921e+03 -1.6047567e+02 2.6053785e+03 - 1.4763582e+03 -1.2793751e+02 2.6064382e+03 - 1.4637462e+03 -9.2983562e+01 2.6070883e+03 - 1.4501262e+03 -5.5992597e+01 2.6073709e+03 - 1.4354709e+03 -1.7295229e+01 2.6073287e+03 - 1.4197561e+03 2.2819419e+01 2.6070036e+03 - 1.4029605e+03 6.4097679e+01 2.6064367e+03 - 1.3850658e+03 1.0631605e+02 2.6056672e+03 - 1.3660566e+03 1.4927663e+02 2.6047325e+03 - 1.3459207e+03 1.9280328e+02 2.6036679e+03 - 1.3246490e+03 2.3673837e+02 2.6025065e+03 - 1.3022351e+03 2.8094008e+02 2.6012792e+03 - 1.2786759e+03 3.2528011e+02 2.6000148e+03 - 1.2539710e+03 3.6964186e+02 2.5987398e+03 - 1.2281233e+03 4.1391884e+02 2.5974786e+03 - 1.2011383e+03 4.5801341e+02 2.5962536e+03 - 1.1730247e+03 5.0183568e+02 2.5950851e+03 - 1.1437939e+03 5.4530270e+02 2.5939912e+03 - 1.1134606e+03 5.8833765e+02 2.5929881e+03 - 1.0820420e+03 6.3086930e+02 2.5920902e+03 - 1.0495587e+03 6.7283148e+02 2.5913098e+03 - 1.0160338e+03 7.1416270e+02 2.5906571e+03 - 9.8149394e+02 7.5480576e+02 2.5901407e+03 - 9.4596839e+02 7.9470753e+02 2.5897672e+03 - 9.0948967e+02 8.3381867e+02 2.5895412e+03 - 8.7209346e+02 8.7209346e+02 2.5894656e+03 - 8.3381867e+02 9.0948967e+02 2.5895412e+03 - 7.9470753e+02 9.4596839e+02 2.5897672e+03 - 7.5480576e+02 9.8149394e+02 2.5901407e+03 - 7.1416270e+02 1.0160338e+03 2.5906571e+03 - 6.7283148e+02 1.0495587e+03 2.5913098e+03 - 6.3086930e+02 1.0820420e+03 2.5920902e+03 - 5.8833765e+02 1.1134606e+03 2.5929881e+03 - 5.4530270e+02 1.1437939e+03 2.5939912e+03 - 5.0183568e+02 1.1730247e+03 2.5950851e+03 - 4.5801341e+02 1.2011383e+03 2.5962536e+03 - 4.1391884e+02 1.2281233e+03 2.5974786e+03 - 3.6964186e+02 1.2539710e+03 2.5987398e+03 - 3.2528011e+02 1.2786759e+03 2.6000148e+03 - 2.8094008e+02 1.3022351e+03 2.6012792e+03 - 2.3673837e+02 1.3246490e+03 2.6025065e+03 - 1.9280328e+02 1.3459207e+03 2.6036679e+03 - 1.4927663e+02 1.3660566e+03 2.6047325e+03 - 1.0631605e+02 1.3850658e+03 2.6056672e+03 - 6.4097679e+01 1.4029605e+03 2.6064367e+03 - 2.2819419e+01 1.4197561e+03 2.6070036e+03 - -1.7295229e+01 1.4354709e+03 2.6073287e+03 - -5.5992597e+01 1.4501262e+03 2.6073709e+03 - -9.2983562e+01 1.4637462e+03 2.6070883e+03 - -1.2793751e+02 1.4763582e+03 2.6064382e+03 - -1.6047567e+02 1.4879921e+03 2.6053785e+03 - -1.9016409e+02 1.4986806e+03 2.6038695e+03 - -2.1650686e+02 1.5084583e+03 2.6018759e+03 - -2.3894077e+02 1.5173619e+03 2.5993700e+03 - -2.5683311e+02 1.5254290e+03 2.5963363e+03 - -2.6948572e+02 1.5326974e+03 2.5927770e+03 - -2.7614955e+02 1.5392035e+03 2.5887195e+03 - -2.7605558e+02 1.5449811e+03 2.5842251e+03 - -2.6846904e+02 1.5500592e+03 2.5793978e+03 - -2.5277334e+02 1.5544602e+03 2.5743925e+03 - -2.2858630e+02 1.5581977e+03 2.5694193e+03 - -1.9590193e+02 1.5612760e+03 2.5647393e+03 - -1.5523608e+02 1.5636905e+03 2.5606487e+03 - -1.0773626e+02 1.5654301e+03 2.5574495e+03 - -5.5205557e+01 1.5664812e+03 2.5554069e+03 - -4.8134273e-09 1.5668330e+03 2.5547041e+03 - 5.5205557e+01 1.5664812e+03 2.5554069e+03 - 1.0773626e+02 1.5654301e+03 2.5574495e+03 - 1.5523608e+02 1.5636905e+03 2.5606487e+03 - 1.9590193e+02 1.5612760e+03 2.5647393e+03 - 2.2858630e+02 1.5581977e+03 2.5694193e+03 - 2.5277334e+02 1.5544602e+03 2.5743925e+03 - 2.6846904e+02 1.5500592e+03 2.5793978e+03 - 2.7605558e+02 1.5449811e+03 2.5842251e+03 - 2.7614955e+02 1.5392035e+03 2.5887195e+03 - 2.6948572e+02 1.5326974e+03 2.5927770e+03 - 2.5683311e+02 1.5254290e+03 2.5963363e+03 - 2.3894077e+02 1.5173619e+03 2.5993700e+03 - 2.1650686e+02 1.5084583e+03 2.6018759e+03 - 1.9016409e+02 1.4986806e+03 2.6038695e+03 - 1.6047567e+02 1.4879921e+03 2.6053785e+03 - 1.2793751e+02 1.4763582e+03 2.6064382e+03 - 9.2983562e+01 1.4637462e+03 2.6070883e+03 - 5.5992597e+01 1.4501262e+03 2.6073709e+03 - 1.7295229e+01 1.4354709e+03 2.6073287e+03 - -2.2819419e+01 1.4197561e+03 2.6070036e+03 - -6.4097679e+01 1.4029605e+03 2.6064367e+03 - -1.0631605e+02 1.3850658e+03 2.6056672e+03 - -1.4927663e+02 1.3660566e+03 2.6047325e+03 - -1.9280328e+02 1.3459207e+03 2.6036679e+03 - -2.3673837e+02 1.3246490e+03 2.6025065e+03 - -2.8094008e+02 1.3022351e+03 2.6012792e+03 - -3.2528011e+02 1.2786759e+03 2.6000148e+03 - -3.6964186e+02 1.2539710e+03 2.5987398e+03 - -4.1391884e+02 1.2281233e+03 2.5974786e+03 - -4.5801341e+02 1.2011383e+03 2.5962536e+03 - -5.0183568e+02 1.1730247e+03 2.5950851e+03 - -5.4530270e+02 1.1437939e+03 2.5939912e+03 - -5.8833765e+02 1.1134606e+03 2.5929881e+03 - -6.3086930e+02 1.0820420e+03 2.5920902e+03 - -6.7283148e+02 1.0495587e+03 2.5913098e+03 - -7.1416270e+02 1.0160338e+03 2.5906571e+03 - -7.5480576e+02 9.8149394e+02 2.5901407e+03 - -7.9470753e+02 9.4596839e+02 2.5897672e+03 - -8.3381867e+02 9.0948967e+02 2.5895412e+03 - -8.7209346e+02 8.7209346e+02 2.5894656e+03 - -9.0948967e+02 8.3381867e+02 2.5895412e+03 - -9.4596839e+02 7.9470753e+02 2.5897672e+03 - -9.8149394e+02 7.5480576e+02 2.5901407e+03 - -1.0160338e+03 7.1416270e+02 2.5906571e+03 - -1.0495587e+03 6.7283148e+02 2.5913098e+03 - -1.0820420e+03 6.3086930e+02 2.5920902e+03 - -1.1134606e+03 5.8833765e+02 2.5929881e+03 - -1.1437939e+03 5.4530270e+02 2.5939912e+03 - -1.1730247e+03 5.0183568e+02 2.5950851e+03 - -1.2011383e+03 4.5801341e+02 2.5962536e+03 - -1.2281233e+03 4.1391884e+02 2.5974786e+03 - -1.2539710e+03 3.6964186e+02 2.5987398e+03 - -1.2786759e+03 3.2528011e+02 2.6000148e+03 - -1.3022351e+03 2.8094008e+02 2.6012792e+03 - -1.3246490e+03 2.3673837e+02 2.6025065e+03 - -1.3459207e+03 1.9280328e+02 2.6036679e+03 - -1.3660566e+03 1.4927663e+02 2.6047325e+03 - -1.3850658e+03 1.0631605e+02 2.6056672e+03 - -1.4029605e+03 6.4097679e+01 2.6064367e+03 - -1.4197561e+03 2.2819419e+01 2.6070036e+03 - -1.4354709e+03 -1.7295229e+01 2.6073287e+03 - -1.4501262e+03 -5.5992597e+01 2.6073709e+03 - -1.4637462e+03 -9.2983562e+01 2.6070883e+03 - -1.4763582e+03 -1.2793751e+02 2.6064382e+03 - -1.4879921e+03 -1.6047567e+02 2.6053785e+03 - -1.4986806e+03 -1.9016409e+02 2.6038695e+03 - -1.5084583e+03 -2.1650686e+02 2.6018759e+03 - -1.5173619e+03 -2.3894077e+02 2.5993700e+03 - -1.5254290e+03 -2.5683311e+02 2.5963363e+03 - -1.5326974e+03 -2.6948572e+02 2.5927770e+03 - -1.5392035e+03 -2.7614955e+02 2.5887195e+03 - -1.5449811e+03 -2.7605558e+02 2.5842251e+03 - -1.5500592e+03 -2.6846904e+02 2.5793978e+03 - -1.5544602e+03 -2.5277334e+02 2.5743925e+03 - -1.5581977e+03 -2.2858630e+02 2.5694193e+03 - -1.5612760e+03 -1.9590193e+02 2.5647393e+03 - -1.5636905e+03 -1.5523608e+02 2.5606487e+03 - -1.5654301e+03 -1.0773626e+02 2.5574495e+03 - -1.5664812e+03 -5.5205557e+01 2.5554069e+03 - -1.5668330e+03 0.0000000e+00 2.5547041e+03 - -1.5664812e+03 5.5205557e+01 2.5554069e+03 - -1.5654301e+03 1.0773626e+02 2.5574495e+03 - -1.5636905e+03 1.5523608e+02 2.5606487e+03 - -1.5612760e+03 1.9590193e+02 2.5647393e+03 - -1.5581977e+03 2.2858630e+02 2.5694193e+03 - -1.5544602e+03 2.5277334e+02 2.5743925e+03 - -1.5500592e+03 2.6846904e+02 2.5793978e+03 - -1.5449811e+03 2.7605558e+02 2.5842251e+03 - -1.5392035e+03 2.7614955e+02 2.5887195e+03 - -1.5326974e+03 2.6948572e+02 2.5927770e+03 - -1.5254290e+03 2.5683311e+02 2.5963363e+03 - -1.5173619e+03 2.3894077e+02 2.5993700e+03 - -1.5084583e+03 2.1650686e+02 2.6018759e+03 - -1.4986806e+03 1.9016409e+02 2.6038695e+03 - -1.4879921e+03 1.6047567e+02 2.6053785e+03 - -1.4763582e+03 1.2793751e+02 2.6064382e+03 - -1.4637462e+03 9.2983562e+01 2.6070883e+03 - -1.4501262e+03 5.5992597e+01 2.6073709e+03 - -1.4354709e+03 1.7295229e+01 2.6073287e+03 - -1.4197561e+03 -2.2819419e+01 2.6070036e+03 - -1.4029605e+03 -6.4097679e+01 2.6064367e+03 - -1.3850658e+03 -1.0631605e+02 2.6056672e+03 - -1.3660566e+03 -1.4927663e+02 2.6047325e+03 - -1.3459207e+03 -1.9280328e+02 2.6036679e+03 - -1.3246490e+03 -2.3673837e+02 2.6025065e+03 - -1.3022351e+03 -2.8094008e+02 2.6012792e+03 - -1.2786759e+03 -3.2528011e+02 2.6000148e+03 - -1.2539710e+03 -3.6964186e+02 2.5987398e+03 - -1.2281233e+03 -4.1391884e+02 2.5974786e+03 - -1.2011383e+03 -4.5801341e+02 2.5962536e+03 - -1.1730247e+03 -5.0183568e+02 2.5950851e+03 - -1.1437939e+03 -5.4530270e+02 2.5939912e+03 - -1.1134606e+03 -5.8833765e+02 2.5929881e+03 - -1.0820420e+03 -6.3086930e+02 2.5920902e+03 - -1.0495587e+03 -6.7283148e+02 2.5913098e+03 - -1.0160338e+03 -7.1416270e+02 2.5906571e+03 - -9.8149394e+02 -7.5480576e+02 2.5901407e+03 - -9.4596839e+02 -7.9470753e+02 2.5897672e+03 - -9.0948967e+02 -8.3381867e+02 2.5895412e+03 - -8.7209346e+02 -8.7209346e+02 2.5894656e+03 - -8.3381867e+02 -9.0948967e+02 2.5895412e+03 - -7.9470753e+02 -9.4596839e+02 2.5897672e+03 - -7.5480576e+02 -9.8149394e+02 2.5901407e+03 - -7.1416270e+02 -1.0160338e+03 2.5906571e+03 - -6.7283148e+02 -1.0495587e+03 2.5913098e+03 - -6.3086930e+02 -1.0820420e+03 2.5920902e+03 - -5.8833765e+02 -1.1134606e+03 2.5929881e+03 - -5.4530270e+02 -1.1437939e+03 2.5939912e+03 - -5.0183568e+02 -1.1730247e+03 2.5950851e+03 - -4.5801341e+02 -1.2011383e+03 2.5962536e+03 - -4.1391884e+02 -1.2281233e+03 2.5974786e+03 - -3.6964186e+02 -1.2539710e+03 2.5987398e+03 - -3.2528011e+02 -1.2786759e+03 2.6000148e+03 - -2.8094008e+02 -1.3022351e+03 2.6012792e+03 - -2.3673837e+02 -1.3246490e+03 2.6025065e+03 - -1.9280328e+02 -1.3459207e+03 2.6036679e+03 - -1.4927663e+02 -1.3660566e+03 2.6047325e+03 - -1.0631605e+02 -1.3850658e+03 2.6056672e+03 - -6.4097679e+01 -1.4029605e+03 2.6064367e+03 - -2.2819419e+01 -1.4197561e+03 2.6070036e+03 - 1.7295229e+01 -1.4354709e+03 2.6073287e+03 - 5.5992597e+01 -1.4501262e+03 2.6073709e+03 - 9.2983562e+01 -1.4637462e+03 2.6070883e+03 - 1.2793751e+02 -1.4763582e+03 2.6064382e+03 - 1.6047567e+02 -1.4879921e+03 2.6053785e+03 - 1.9016409e+02 -1.4986806e+03 2.6038695e+03 - 2.1650686e+02 -1.5084583e+03 2.6018759e+03 - 2.3894077e+02 -1.5173619e+03 2.5993700e+03 - 2.5683311e+02 -1.5254290e+03 2.5963363e+03 - 2.6948572e+02 -1.5326974e+03 2.5927770e+03 - 2.7614955e+02 -1.5392035e+03 2.5887195e+03 - 2.7605558e+02 -1.5449811e+03 2.5842251e+03 - 2.6846904e+02 -1.5500592e+03 2.5793978e+03 - 2.5277334e+02 -1.5544602e+03 2.5743925e+03 - 2.2858630e+02 -1.5581977e+03 2.5694193e+03 - 1.9590193e+02 -1.5612760e+03 2.5647393e+03 - 1.5523608e+02 -1.5636905e+03 2.5606487e+03 - 1.0773626e+02 -1.5654301e+03 2.5574495e+03 - 5.5205557e+01 -1.5664812e+03 2.5554069e+03 - -2.4067136e-09 -1.5668330e+03 2.5547041e+03 - -5.5205557e+01 -1.5664812e+03 2.5554069e+03 - -1.0773626e+02 -1.5654301e+03 2.5574495e+03 - -1.5523608e+02 -1.5636905e+03 2.5606487e+03 - -1.9590193e+02 -1.5612760e+03 2.5647393e+03 - -2.2858630e+02 -1.5581977e+03 2.5694193e+03 - -2.5277334e+02 -1.5544602e+03 2.5743925e+03 - -2.6846904e+02 -1.5500592e+03 2.5793978e+03 - -2.7605558e+02 -1.5449811e+03 2.5842251e+03 - -2.7614955e+02 -1.5392035e+03 2.5887195e+03 - -2.6948572e+02 -1.5326974e+03 2.5927770e+03 - -2.5683311e+02 -1.5254290e+03 2.5963363e+03 - -2.3894077e+02 -1.5173619e+03 2.5993700e+03 - -2.1650686e+02 -1.5084583e+03 2.6018759e+03 - -1.9016409e+02 -1.4986806e+03 2.6038695e+03 - -1.6047567e+02 -1.4879921e+03 2.6053785e+03 - -1.2793751e+02 -1.4763582e+03 2.6064382e+03 - -9.2983562e+01 -1.4637462e+03 2.6070883e+03 - -5.5992597e+01 -1.4501262e+03 2.6073709e+03 - -1.7295229e+01 -1.4354709e+03 2.6073287e+03 - 2.2819419e+01 -1.4197561e+03 2.6070036e+03 - 6.4097679e+01 -1.4029605e+03 2.6064367e+03 - 1.0631605e+02 -1.3850658e+03 2.6056672e+03 - 1.4927663e+02 -1.3660566e+03 2.6047325e+03 - 1.9280328e+02 -1.3459207e+03 2.6036679e+03 - 2.3673837e+02 -1.3246490e+03 2.6025065e+03 - 2.8094008e+02 -1.3022351e+03 2.6012792e+03 - 3.2528011e+02 -1.2786759e+03 2.6000148e+03 - 3.6964186e+02 -1.2539710e+03 2.5987398e+03 - 4.1391884e+02 -1.2281233e+03 2.5974786e+03 - 4.5801341e+02 -1.2011383e+03 2.5962536e+03 - 5.0183568e+02 -1.1730247e+03 2.5950851e+03 - 5.4530270e+02 -1.1437939e+03 2.5939912e+03 - 5.8833765e+02 -1.1134606e+03 2.5929881e+03 - 6.3086930e+02 -1.0820420e+03 2.5920902e+03 - 6.7283148e+02 -1.0495587e+03 2.5913098e+03 - 7.1416270e+02 -1.0160338e+03 2.5906571e+03 - 7.5480576e+02 -9.8149394e+02 2.5901407e+03 - 7.9470753e+02 -9.4596839e+02 2.5897672e+03 - 8.3381867e+02 -9.0948967e+02 2.5895412e+03 - 8.7209346e+02 -8.7209346e+02 2.5894656e+03 - 9.0948967e+02 -8.3381867e+02 2.5895412e+03 - 9.4596839e+02 -7.9470753e+02 2.5897672e+03 - 9.8149394e+02 -7.5480576e+02 2.5901407e+03 - 1.0160338e+03 -7.1416270e+02 2.5906571e+03 - 1.0495587e+03 -6.7283148e+02 2.5913098e+03 - 1.0820420e+03 -6.3086930e+02 2.5920902e+03 - 1.1134606e+03 -5.8833765e+02 2.5929881e+03 - 1.1437939e+03 -5.4530270e+02 2.5939912e+03 - 1.1730247e+03 -5.0183568e+02 2.5950851e+03 - 1.2011383e+03 -4.5801341e+02 2.5962536e+03 - 1.2281233e+03 -4.1391884e+02 2.5974786e+03 - 1.2539710e+03 -3.6964186e+02 2.5987398e+03 - 1.2786759e+03 -3.2528011e+02 2.6000148e+03 - 1.3022351e+03 -2.8094008e+02 2.6012792e+03 - 1.3246490e+03 -2.3673837e+02 2.6025065e+03 - 1.3459207e+03 -1.9280328e+02 2.6036679e+03 - 1.3660566e+03 -1.4927663e+02 2.6047325e+03 - 1.3850658e+03 -1.0631605e+02 2.6056672e+03 - 1.4029605e+03 -6.4097679e+01 2.6064367e+03 - 1.4197561e+03 -2.2819419e+01 2.6070036e+03 - 1.4354709e+03 1.7295229e+01 2.6073287e+03 - 1.4501262e+03 5.5992597e+01 2.6073709e+03 - 1.4637462e+03 9.2983562e+01 2.6070883e+03 - 1.4763582e+03 1.2793751e+02 2.6064382e+03 - 1.4879921e+03 1.6047567e+02 2.6053785e+03 - 1.4986806e+03 1.9016409e+02 2.6038695e+03 - 1.5084583e+03 2.1650686e+02 2.6018759e+03 - 1.5173619e+03 2.3894077e+02 2.5993700e+03 - 1.5254290e+03 2.5683311e+02 2.5963363e+03 - 1.5326974e+03 2.6948572e+02 2.5927770e+03 - 1.5392035e+03 2.7614955e+02 2.5887195e+03 - 1.5449811e+03 2.7605558e+02 2.5842251e+03 - 1.5500592e+03 2.6846904e+02 2.5793978e+03 - 1.5544602e+03 2.5277334e+02 2.5743925e+03 - 1.5581977e+03 2.2858630e+02 2.5694193e+03 - 1.5612760e+03 1.9590193e+02 2.5647393e+03 - 1.5636905e+03 1.5523608e+02 2.5606487e+03 - 1.5654301e+03 1.0773626e+02 2.5574495e+03 - 1.5664812e+03 5.5205557e+01 2.5554069e+03 - 1.5668330e+03 0.0000000e+00 2.5547041e+03 - 1.6762959e+03 4.8134273e-09 2.4666521e+03 - 1.6758624e+03 -5.6869316e+01 2.4674640e+03 - 1.6745750e+03 -1.1070314e+02 2.4698150e+03 - 1.6724698e+03 -1.5886158e+02 2.4734707e+03 - 1.6695952e+03 -1.9938150e+02 2.4780964e+03 - 1.6659998e+03 -2.3108454e+02 2.4833190e+03 - 1.6617222e+03 -2.5352549e+02 2.4887815e+03 - 1.6567847e+03 -2.6684090e+02 2.4941795e+03 - 1.6511918e+03 -2.7156480e+02 2.4992774e+03 - 1.6449318e+03 -2.6845965e+02 2.5039101e+03 - 1.6379797e+03 -2.5838541e+02 2.5079745e+03 - 1.6303012e+03 -2.4221051e+02 2.5114175e+03 - 1.6218560e+03 -2.2075840e+02 2.5142241e+03 - 1.6126006e+03 -1.9478028e+02 2.5164061e+03 - 1.6024907e+03 -1.6494489e+02 2.5179938e+03 - 1.5914825e+03 -1.3183879e+02 2.5190288e+03 - 1.5795341e+03 -9.5971992e+01 2.5195596e+03 - 1.5666062e+03 -5.7786183e+01 2.5196380e+03 - 1.5526623e+03 -1.7663532e+01 2.5193168e+03 - 1.5376692e+03 2.4064769e+01 2.5186483e+03 - 1.5215973e+03 6.7110771e+01 2.5176832e+03 - 1.5044201e+03 1.1122301e+02 2.5164701e+03 - 1.4861151e+03 1.5618071e+02 2.5150552e+03 - 1.4666628e+03 2.0178893e+02 2.5134820e+03 - 1.4460475e+03 2.4787449e+02 2.5117911e+03 - 1.4242567e+03 2.9428261e+02 2.5100206e+03 - 1.4012814e+03 3.4087412e+02 2.5082058e+03 - 1.3771156e+03 3.8752318e+02 2.5063794e+03 - 1.3517570e+03 4.3411541e+02 2.5045713e+03 - 1.3252060e+03 4.8054634e+02 2.5028092e+03 - 1.2974666e+03 5.2672009e+02 2.5011181e+03 - 1.2685457e+03 5.7254842e+02 2.4995208e+03 - 1.2384533e+03 6.1794979e+02 2.4980377e+03 - 1.2072027e+03 6.6284867e+02 2.4966870e+03 - 1.1748100e+03 7.0717501e+02 2.4954845e+03 - 1.1412946e+03 7.5086368e+02 2.4944440e+03 - 1.1066787e+03 7.9385416e+02 2.4935769e+03 - 1.0709879e+03 8.3609014e+02 2.4928928e+03 - 1.0342507e+03 8.7751933e+02 2.4923990e+03 - 9.9649866e+02 9.1809319e+02 2.4921006e+03 - 9.5776679e+02 9.5776679e+02 2.4920008e+03 - 9.1809319e+02 9.9649866e+02 2.4921006e+03 - 8.7751933e+02 1.0342507e+03 2.4923990e+03 - 8.3609014e+02 1.0709879e+03 2.4928928e+03 - 7.9385416e+02 1.1066787e+03 2.4935769e+03 - 7.5086368e+02 1.1412946e+03 2.4944440e+03 - 7.0717501e+02 1.1748100e+03 2.4954845e+03 - 6.6284867e+02 1.2072027e+03 2.4966870e+03 - 6.1794979e+02 1.2384533e+03 2.4980377e+03 - 5.7254842e+02 1.2685457e+03 2.4995208e+03 - 5.2672009e+02 1.2974666e+03 2.5011181e+03 - 4.8054634e+02 1.3252060e+03 2.5028092e+03 - 4.3411541e+02 1.3517570e+03 2.5045713e+03 - 3.8752318e+02 1.3771156e+03 2.5063794e+03 - 3.4087412e+02 1.4012814e+03 2.5082058e+03 - 2.9428261e+02 1.4242567e+03 2.5100206e+03 - 2.4787449e+02 1.4460475e+03 2.5117911e+03 - 2.0178893e+02 1.4666628e+03 2.5134820e+03 - 1.5618071e+02 1.4861151e+03 2.5150552e+03 - 1.1122301e+02 1.5044201e+03 2.5164701e+03 - 6.7110771e+01 1.5215973e+03 2.5176832e+03 - 2.4064769e+01 1.5376692e+03 2.5186483e+03 - -1.7663532e+01 1.5526623e+03 2.5193168e+03 - -5.7786183e+01 1.5666062e+03 2.5196380e+03 - -9.5971992e+01 1.5795341e+03 2.5195596e+03 - -1.3183879e+02 1.5914825e+03 2.5190288e+03 - -1.6494489e+02 1.6024907e+03 2.5179938e+03 - -1.9478028e+02 1.6126006e+03 2.5164061e+03 - -2.2075840e+02 1.6218560e+03 2.5142241e+03 - -2.4221051e+02 1.6303012e+03 2.5114175e+03 - -2.5838541e+02 1.6379797e+03 2.5079745e+03 - -2.6845965e+02 1.6449318e+03 2.5039101e+03 - -2.7156480e+02 1.6511918e+03 2.4992774e+03 - -2.6684090e+02 1.6567847e+03 2.4941795e+03 - -2.5352549e+02 1.6617222e+03 2.4887815e+03 - -2.3108454e+02 1.6659998e+03 2.4833190e+03 - -1.9938150e+02 1.6695952e+03 2.4780964e+03 - -1.5886158e+02 1.6724698e+03 2.4734707e+03 - -1.1070314e+02 1.6745750e+03 2.4698150e+03 - -5.6869316e+01 1.6758624e+03 2.4674640e+03 - 0.0000000e+00 1.6762959e+03 2.4666521e+03 - 5.6869316e+01 1.6758624e+03 2.4674640e+03 - 1.1070314e+02 1.6745750e+03 2.4698150e+03 - 1.5886158e+02 1.6724698e+03 2.4734707e+03 - 1.9938150e+02 1.6695952e+03 2.4780964e+03 - 2.3108454e+02 1.6659998e+03 2.4833190e+03 - 2.5352549e+02 1.6617222e+03 2.4887815e+03 - 2.6684090e+02 1.6567847e+03 2.4941795e+03 - 2.7156480e+02 1.6511918e+03 2.4992774e+03 - 2.6845965e+02 1.6449318e+03 2.5039101e+03 - 2.5838541e+02 1.6379797e+03 2.5079745e+03 - 2.4221051e+02 1.6303012e+03 2.5114175e+03 - 2.2075840e+02 1.6218560e+03 2.5142241e+03 - 1.9478028e+02 1.6126006e+03 2.5164061e+03 - 1.6494489e+02 1.6024907e+03 2.5179938e+03 - 1.3183879e+02 1.5914825e+03 2.5190288e+03 - 9.5971992e+01 1.5795341e+03 2.5195596e+03 - 5.7786183e+01 1.5666062e+03 2.5196380e+03 - 1.7663532e+01 1.5526623e+03 2.5193168e+03 - -2.4064769e+01 1.5376692e+03 2.5186483e+03 - -6.7110771e+01 1.5215973e+03 2.5176832e+03 - -1.1122301e+02 1.5044201e+03 2.5164701e+03 - -1.5618071e+02 1.4861151e+03 2.5150552e+03 - -2.0178893e+02 1.4666628e+03 2.5134820e+03 - -2.4787449e+02 1.4460475e+03 2.5117911e+03 - -2.9428261e+02 1.4242567e+03 2.5100206e+03 - -3.4087412e+02 1.4012814e+03 2.5082058e+03 - -3.8752318e+02 1.3771156e+03 2.5063794e+03 - -4.3411541e+02 1.3517570e+03 2.5045713e+03 - -4.8054634e+02 1.3252060e+03 2.5028092e+03 - -5.2672009e+02 1.2974666e+03 2.5011181e+03 - -5.7254842e+02 1.2685457e+03 2.4995208e+03 - -6.1794979e+02 1.2384533e+03 2.4980377e+03 - -6.6284867e+02 1.2072027e+03 2.4966870e+03 - -7.0717501e+02 1.1748100e+03 2.4954845e+03 - -7.5086368e+02 1.1412946e+03 2.4944440e+03 - -7.9385416e+02 1.1066787e+03 2.4935769e+03 - -8.3609014e+02 1.0709879e+03 2.4928928e+03 - -8.7751933e+02 1.0342507e+03 2.4923990e+03 - -9.1809319e+02 9.9649866e+02 2.4921006e+03 - -9.5776679e+02 9.5776679e+02 2.4920008e+03 - -9.9649866e+02 9.1809319e+02 2.4921006e+03 - -1.0342507e+03 8.7751933e+02 2.4923990e+03 - -1.0709879e+03 8.3609014e+02 2.4928928e+03 - -1.1066787e+03 7.9385416e+02 2.4935769e+03 - -1.1412946e+03 7.5086368e+02 2.4944440e+03 - -1.1748100e+03 7.0717501e+02 2.4954845e+03 - -1.2072027e+03 6.6284867e+02 2.4966870e+03 - -1.2384533e+03 6.1794979e+02 2.4980377e+03 - -1.2685457e+03 5.7254842e+02 2.4995208e+03 - -1.2974666e+03 5.2672009e+02 2.5011181e+03 - -1.3252060e+03 4.8054634e+02 2.5028092e+03 - -1.3517570e+03 4.3411541e+02 2.5045713e+03 - -1.3771156e+03 3.8752318e+02 2.5063794e+03 - -1.4012814e+03 3.4087412e+02 2.5082058e+03 - -1.4242567e+03 2.9428261e+02 2.5100206e+03 - -1.4460475e+03 2.4787449e+02 2.5117911e+03 - -1.4666628e+03 2.0178893e+02 2.5134820e+03 - -1.4861151e+03 1.5618071e+02 2.5150552e+03 - -1.5044201e+03 1.1122301e+02 2.5164701e+03 - -1.5215973e+03 6.7110771e+01 2.5176832e+03 - -1.5376692e+03 2.4064769e+01 2.5186483e+03 - -1.5526623e+03 -1.7663532e+01 2.5193168e+03 - -1.5666062e+03 -5.7786183e+01 2.5196380e+03 - -1.5795341e+03 -9.5971992e+01 2.5195596e+03 - -1.5914825e+03 -1.3183879e+02 2.5190288e+03 - -1.6024907e+03 -1.6494489e+02 2.5179938e+03 - -1.6126006e+03 -1.9478028e+02 2.5164061e+03 - -1.6218560e+03 -2.2075840e+02 2.5142241e+03 - -1.6303012e+03 -2.4221051e+02 2.5114175e+03 - -1.6379797e+03 -2.5838541e+02 2.5079745e+03 - -1.6449318e+03 -2.6845965e+02 2.5039101e+03 - -1.6511918e+03 -2.7156480e+02 2.4992774e+03 - -1.6567847e+03 -2.6684090e+02 2.4941795e+03 - -1.6617222e+03 -2.5352549e+02 2.4887815e+03 - -1.6659998e+03 -2.3108454e+02 2.4833190e+03 - -1.6695952e+03 -1.9938150e+02 2.4780964e+03 - -1.6724698e+03 -1.5886158e+02 2.4734707e+03 - -1.6745750e+03 -1.1070314e+02 2.4698150e+03 - -1.6758624e+03 -5.6869316e+01 2.4674640e+03 - -1.6762959e+03 2.4067136e-09 2.4666521e+03 - -1.6758624e+03 5.6869316e+01 2.4674640e+03 - -1.6745750e+03 1.1070314e+02 2.4698150e+03 - -1.6724698e+03 1.5886158e+02 2.4734707e+03 - -1.6695952e+03 1.9938150e+02 2.4780964e+03 - -1.6659998e+03 2.3108454e+02 2.4833190e+03 - -1.6617222e+03 2.5352549e+02 2.4887815e+03 - -1.6567847e+03 2.6684090e+02 2.4941795e+03 - -1.6511918e+03 2.7156480e+02 2.4992774e+03 - -1.6449318e+03 2.6845965e+02 2.5039101e+03 - -1.6379797e+03 2.5838541e+02 2.5079745e+03 - -1.6303012e+03 2.4221051e+02 2.5114175e+03 - -1.6218560e+03 2.2075840e+02 2.5142241e+03 - -1.6126006e+03 1.9478028e+02 2.5164061e+03 - -1.6024907e+03 1.6494489e+02 2.5179938e+03 - -1.5914825e+03 1.3183879e+02 2.5190288e+03 - -1.5795341e+03 9.5971992e+01 2.5195596e+03 - -1.5666062e+03 5.7786183e+01 2.5196380e+03 - -1.5526623e+03 1.7663532e+01 2.5193168e+03 - -1.5376692e+03 -2.4064769e+01 2.5186483e+03 - -1.5215973e+03 -6.7110771e+01 2.5176832e+03 - -1.5044201e+03 -1.1122301e+02 2.5164701e+03 - -1.4861151e+03 -1.5618071e+02 2.5150552e+03 - -1.4666628e+03 -2.0178893e+02 2.5134820e+03 - -1.4460475e+03 -2.4787449e+02 2.5117911e+03 - -1.4242567e+03 -2.9428261e+02 2.5100206e+03 - -1.4012814e+03 -3.4087412e+02 2.5082058e+03 - -1.3771156e+03 -3.8752318e+02 2.5063794e+03 - -1.3517570e+03 -4.3411541e+02 2.5045713e+03 - -1.3252060e+03 -4.8054634e+02 2.5028092e+03 - -1.2974666e+03 -5.2672009e+02 2.5011181e+03 - -1.2685457e+03 -5.7254842e+02 2.4995208e+03 - -1.2384533e+03 -6.1794979e+02 2.4980377e+03 - -1.2072027e+03 -6.6284867e+02 2.4966870e+03 - -1.1748100e+03 -7.0717501e+02 2.4954845e+03 - -1.1412946e+03 -7.5086368e+02 2.4944440e+03 - -1.1066787e+03 -7.9385416e+02 2.4935769e+03 - -1.0709879e+03 -8.3609014e+02 2.4928928e+03 - -1.0342507e+03 -8.7751933e+02 2.4923990e+03 - -9.9649866e+02 -9.1809319e+02 2.4921006e+03 - -9.5776679e+02 -9.5776679e+02 2.4920008e+03 - -9.1809319e+02 -9.9649866e+02 2.4921006e+03 - -8.7751933e+02 -1.0342507e+03 2.4923990e+03 - -8.3609014e+02 -1.0709879e+03 2.4928928e+03 - -7.9385416e+02 -1.1066787e+03 2.4935769e+03 - -7.5086368e+02 -1.1412946e+03 2.4944440e+03 - -7.0717501e+02 -1.1748100e+03 2.4954845e+03 - -6.6284867e+02 -1.2072027e+03 2.4966870e+03 - -6.1794979e+02 -1.2384533e+03 2.4980377e+03 - -5.7254842e+02 -1.2685457e+03 2.4995208e+03 - -5.2672009e+02 -1.2974666e+03 2.5011181e+03 - -4.8054634e+02 -1.3252060e+03 2.5028092e+03 - -4.3411541e+02 -1.3517570e+03 2.5045713e+03 - -3.8752318e+02 -1.3771156e+03 2.5063794e+03 - -3.4087412e+02 -1.4012814e+03 2.5082058e+03 - -2.9428261e+02 -1.4242567e+03 2.5100206e+03 - -2.4787449e+02 -1.4460475e+03 2.5117911e+03 - -2.0178893e+02 -1.4666628e+03 2.5134820e+03 - -1.5618071e+02 -1.4861151e+03 2.5150552e+03 - -1.1122301e+02 -1.5044201e+03 2.5164701e+03 - -6.7110771e+01 -1.5215973e+03 2.5176832e+03 - -2.4064769e+01 -1.5376692e+03 2.5186483e+03 - 1.7663532e+01 -1.5526623e+03 2.5193168e+03 - 5.7786183e+01 -1.5666062e+03 2.5196380e+03 - 9.5971992e+01 -1.5795341e+03 2.5195596e+03 - 1.3183879e+02 -1.5914825e+03 2.5190288e+03 - 1.6494489e+02 -1.6024907e+03 2.5179938e+03 - 1.9478028e+02 -1.6126006e+03 2.5164061e+03 - 2.2075840e+02 -1.6218560e+03 2.5142241e+03 - 2.4221051e+02 -1.6303012e+03 2.5114175e+03 - 2.5838541e+02 -1.6379797e+03 2.5079745e+03 - 2.6845965e+02 -1.6449318e+03 2.5039101e+03 - 2.7156480e+02 -1.6511918e+03 2.4992774e+03 - 2.6684090e+02 -1.6567847e+03 2.4941795e+03 - 2.5352549e+02 -1.6617222e+03 2.4887815e+03 - 2.3108454e+02 -1.6659998e+03 2.4833190e+03 - 1.9938150e+02 -1.6695952e+03 2.4780964e+03 - 1.5886158e+02 -1.6724698e+03 2.4734707e+03 - 1.1070314e+02 -1.6745750e+03 2.4698150e+03 - 5.6869316e+01 -1.6758624e+03 2.4674640e+03 - 0.0000000e+00 -1.6762959e+03 2.4666521e+03 - -5.6869316e+01 -1.6758624e+03 2.4674640e+03 - -1.1070314e+02 -1.6745750e+03 2.4698150e+03 - -1.5886158e+02 -1.6724698e+03 2.4734707e+03 - -1.9938150e+02 -1.6695952e+03 2.4780964e+03 - -2.3108454e+02 -1.6659998e+03 2.4833190e+03 - -2.5352549e+02 -1.6617222e+03 2.4887815e+03 - -2.6684090e+02 -1.6567847e+03 2.4941795e+03 - -2.7156480e+02 -1.6511918e+03 2.4992774e+03 - -2.6845965e+02 -1.6449318e+03 2.5039101e+03 - -2.5838541e+02 -1.6379797e+03 2.5079745e+03 - -2.4221051e+02 -1.6303012e+03 2.5114175e+03 - -2.2075840e+02 -1.6218560e+03 2.5142241e+03 - -1.9478028e+02 -1.6126006e+03 2.5164061e+03 - -1.6494489e+02 -1.6024907e+03 2.5179938e+03 - -1.3183879e+02 -1.5914825e+03 2.5190288e+03 - -9.5971992e+01 -1.5795341e+03 2.5195596e+03 - -5.7786183e+01 -1.5666062e+03 2.5196380e+03 - -1.7663532e+01 -1.5526623e+03 2.5193168e+03 - 2.4064769e+01 -1.5376692e+03 2.5186483e+03 - 6.7110771e+01 -1.5215973e+03 2.5176832e+03 - 1.1122301e+02 -1.5044201e+03 2.5164701e+03 - 1.5618071e+02 -1.4861151e+03 2.5150552e+03 - 2.0178893e+02 -1.4666628e+03 2.5134820e+03 - 2.4787449e+02 -1.4460475e+03 2.5117911e+03 - 2.9428261e+02 -1.4242567e+03 2.5100206e+03 - 3.4087412e+02 -1.4012814e+03 2.5082058e+03 - 3.8752318e+02 -1.3771156e+03 2.5063794e+03 - 4.3411541e+02 -1.3517570e+03 2.5045713e+03 - 4.8054634e+02 -1.3252060e+03 2.5028092e+03 - 5.2672009e+02 -1.2974666e+03 2.5011181e+03 - 5.7254842e+02 -1.2685457e+03 2.4995208e+03 - 6.1794979e+02 -1.2384533e+03 2.4980377e+03 - 6.6284867e+02 -1.2072027e+03 2.4966870e+03 - 7.0717501e+02 -1.1748100e+03 2.4954845e+03 - 7.5086368e+02 -1.1412946e+03 2.4944440e+03 - 7.9385416e+02 -1.1066787e+03 2.4935769e+03 - 8.3609014e+02 -1.0709879e+03 2.4928928e+03 - 8.7751933e+02 -1.0342507e+03 2.4923990e+03 - 9.1809319e+02 -9.9649866e+02 2.4921006e+03 - 9.5776679e+02 -9.5776679e+02 2.4920008e+03 - 9.9649866e+02 -9.1809319e+02 2.4921006e+03 - 1.0342507e+03 -8.7751933e+02 2.4923990e+03 - 1.0709879e+03 -8.3609014e+02 2.4928928e+03 - 1.1066787e+03 -7.9385416e+02 2.4935769e+03 - 1.1412946e+03 -7.5086368e+02 2.4944440e+03 - 1.1748100e+03 -7.0717501e+02 2.4954845e+03 - 1.2072027e+03 -6.6284867e+02 2.4966870e+03 - 1.2384533e+03 -6.1794979e+02 2.4980377e+03 - 1.2685457e+03 -5.7254842e+02 2.4995208e+03 - 1.2974666e+03 -5.2672009e+02 2.5011181e+03 - 1.3252060e+03 -4.8054634e+02 2.5028092e+03 - 1.3517570e+03 -4.3411541e+02 2.5045713e+03 - 1.3771156e+03 -3.8752318e+02 2.5063794e+03 - 1.4012814e+03 -3.4087412e+02 2.5082058e+03 - 1.4242567e+03 -2.9428261e+02 2.5100206e+03 - 1.4460475e+03 -2.4787449e+02 2.5117911e+03 - 1.4666628e+03 -2.0178893e+02 2.5134820e+03 - 1.4861151e+03 -1.5618071e+02 2.5150552e+03 - 1.5044201e+03 -1.1122301e+02 2.5164701e+03 - 1.5215973e+03 -6.7110771e+01 2.5176832e+03 - 1.5376692e+03 -2.4064769e+01 2.5186483e+03 - 1.5526623e+03 1.7663532e+01 2.5193168e+03 - 1.5666062e+03 5.7786183e+01 2.5196380e+03 - 1.5795341e+03 9.5971992e+01 2.5195596e+03 - 1.5914825e+03 1.3183879e+02 2.5190288e+03 - 1.6024907e+03 1.6494489e+02 2.5179938e+03 - 1.6126006e+03 1.9478028e+02 2.5164061e+03 - 1.6218560e+03 2.2075840e+02 2.5142241e+03 - 1.6303012e+03 2.4221051e+02 2.5114175e+03 - 1.6379797e+03 2.5838541e+02 2.5079745e+03 - 1.6449318e+03 2.6845965e+02 2.5039101e+03 - 1.6511918e+03 2.7156480e+02 2.4992774e+03 - 1.6567847e+03 2.6684090e+02 2.4941795e+03 - 1.6617222e+03 2.5352549e+02 2.4887815e+03 - 1.6659998e+03 2.3108454e+02 2.4833190e+03 - 1.6695952e+03 1.9938150e+02 2.4780964e+03 - 1.6724698e+03 1.5886158e+02 2.4734707e+03 - 1.6745750e+03 1.1070314e+02 2.4698150e+03 - 1.6758624e+03 5.6869316e+01 2.4674640e+03 - 1.6762959e+03 -2.4067136e-09 2.4666521e+03 - 1.7846501e+03 0.0000000e+00 2.3759321e+03 - 1.7841130e+03 -5.8964974e+01 2.3768826e+03 - 1.7825288e+03 -1.1444850e+02 2.3796234e+03 - 1.7799701e+03 -1.6346902e+02 2.3838495e+03 - 1.7765354e+03 -2.0388634e+02 2.3891332e+03 - 1.7723250e+03 -2.3451020e+02 2.3950090e+03 - 1.7674217e+03 -2.5500560e+02 2.4010449e+03 - 1.7618808e+03 -2.6568366e+02 2.4068862e+03 - 1.7557274e+03 -2.6726802e+02 2.4122712e+03 - 1.7489596e+03 -2.6069419e+02 2.4170277e+03 - 1.7415545e+03 -2.4696397e+02 2.4210584e+03 - 1.7334743e+03 -2.2705352e+02 2.4243242e+03 - 1.7246721e+03 -2.0186332e+02 2.4268274e+03 - 1.7150961e+03 -1.7219670e+02 2.4285985e+03 - 1.7046928e+03 -1.3875580e+02 2.4296860e+03 - 1.6934096e+03 -1.0214700e+02 2.4301486e+03 - 1.6811958e+03 -6.2890861e+01 2.4300500e+03 - 1.6680040e+03 -2.1433364e+01 2.4294558e+03 - 1.6537906e+03 2.1842975e+01 2.4284310e+03 - 1.6385157e+03 6.6609043e+01 2.4270386e+03 - 1.6221438e+03 1.1258034e+02 2.4253385e+03 - 1.6046433e+03 1.5950953e+02 2.4233878e+03 - 1.5859869e+03 2.0718020e+02 2.4212399e+03 - 1.5661510e+03 2.5540172e+02 2.4189446e+03 - 1.5451163e+03 3.0400504e+02 2.4165484e+03 - 1.5228671e+03 3.5283921e+02 2.4140943e+03 - 1.4993914e+03 4.0176857e+02 2.4116221e+03 - 1.4746809e+03 4.5067047e+02 2.4091685e+03 - 1.4487308e+03 4.9943338e+02 2.4067670e+03 - 1.4215398e+03 5.4795540e+02 2.4044485e+03 - 1.3931098e+03 5.9614295e+02 2.4022407e+03 - 1.3634464e+03 6.4390983e+02 2.4001690e+03 - 1.3325580e+03 6.9117634e+02 2.3982559e+03 - 1.3004566e+03 7.3786860e+02 2.3965214e+03 - 1.2671572e+03 7.8391804e+02 2.3949831e+03 - 1.2326779e+03 8.2926089e+02 2.3936562e+03 - 1.1970402e+03 8.7383783e+02 2.3925533e+03 - 1.1602684e+03 9.1759372e+02 2.3916847e+03 - 1.1223902e+03 9.6047730e+02 2.3910587e+03 - 1.0834364e+03 1.0024410e+03 2.3906807e+03 - 1.0434409e+03 1.0434409e+03 2.3905544e+03 - 1.0024410e+03 1.0834364e+03 2.3906807e+03 - 9.6047730e+02 1.1223902e+03 2.3910587e+03 - 9.1759372e+02 1.1602684e+03 2.3916847e+03 - 8.7383783e+02 1.1970402e+03 2.3925533e+03 - 8.2926089e+02 1.2326779e+03 2.3936562e+03 - 7.8391804e+02 1.2671572e+03 2.3949831e+03 - 7.3786860e+02 1.3004566e+03 2.3965214e+03 - 6.9117634e+02 1.3325580e+03 2.3982559e+03 - 6.4390983e+02 1.3634464e+03 2.4001690e+03 - 5.9614295e+02 1.3931098e+03 2.4022407e+03 - 5.4795540e+02 1.4215398e+03 2.4044485e+03 - 4.9943338e+02 1.4487308e+03 2.4067670e+03 - 4.5067047e+02 1.4746809e+03 2.4091685e+03 - 4.0176857e+02 1.4993914e+03 2.4116221e+03 - 3.5283921e+02 1.5228671e+03 2.4140943e+03 - 3.0400504e+02 1.5451163e+03 2.4165484e+03 - 2.5540172e+02 1.5661510e+03 2.4189446e+03 - 2.0718020e+02 1.5859869e+03 2.4212399e+03 - 1.5950953e+02 1.6046433e+03 2.4233878e+03 - 1.1258034e+02 1.6221438e+03 2.4253385e+03 - 6.6609043e+01 1.6385157e+03 2.4270386e+03 - 2.1842975e+01 1.6537906e+03 2.4284310e+03 - -2.1433364e+01 1.6680040e+03 2.4294558e+03 - -6.2890861e+01 1.6811958e+03 2.4300500e+03 - -1.0214700e+02 1.6934096e+03 2.4301486e+03 - -1.3875580e+02 1.7046928e+03 2.4296860e+03 - -1.7219670e+02 1.7150961e+03 2.4285985e+03 - -2.0186332e+02 1.7246721e+03 2.4268274e+03 - -2.2705352e+02 1.7334743e+03 2.4243242e+03 - -2.4696397e+02 1.7415545e+03 2.4210584e+03 - -2.6069419e+02 1.7489596e+03 2.4170277e+03 - -2.6726802e+02 1.7557274e+03 2.4122712e+03 - -2.6568366e+02 1.7618808e+03 2.4068862e+03 - -2.5500560e+02 1.7674217e+03 2.4010449e+03 - -2.3451020e+02 1.7723250e+03 2.3950090e+03 - -2.0388634e+02 1.7765354e+03 2.3891332e+03 - -1.6346902e+02 1.7799701e+03 2.3838495e+03 - -1.1444850e+02 1.7825288e+03 2.3796234e+03 - -5.8964974e+01 1.7841130e+03 2.3768826e+03 - 4.8134273e-09 1.7846501e+03 2.3759321e+03 - 5.8964974e+01 1.7841130e+03 2.3768826e+03 - 1.1444850e+02 1.7825288e+03 2.3796234e+03 - 1.6346902e+02 1.7799701e+03 2.3838495e+03 - 2.0388634e+02 1.7765354e+03 2.3891332e+03 - 2.3451020e+02 1.7723250e+03 2.3950090e+03 - 2.5500560e+02 1.7674217e+03 2.4010449e+03 - 2.6568366e+02 1.7618808e+03 2.4068862e+03 - 2.6726802e+02 1.7557274e+03 2.4122712e+03 - 2.6069419e+02 1.7489596e+03 2.4170277e+03 - 2.4696397e+02 1.7415545e+03 2.4210584e+03 - 2.2705352e+02 1.7334743e+03 2.4243242e+03 - 2.0186332e+02 1.7246721e+03 2.4268274e+03 - 1.7219670e+02 1.7150961e+03 2.4285985e+03 - 1.3875580e+02 1.7046928e+03 2.4296860e+03 - 1.0214700e+02 1.6934096e+03 2.4301486e+03 - 6.2890861e+01 1.6811958e+03 2.4300500e+03 - 2.1433364e+01 1.6680040e+03 2.4294558e+03 - -2.1842975e+01 1.6537906e+03 2.4284310e+03 - -6.6609043e+01 1.6385157e+03 2.4270386e+03 - -1.1258034e+02 1.6221438e+03 2.4253385e+03 - -1.5950953e+02 1.6046433e+03 2.4233878e+03 - -2.0718020e+02 1.5859869e+03 2.4212399e+03 - -2.5540172e+02 1.5661510e+03 2.4189446e+03 - -3.0400504e+02 1.5451163e+03 2.4165484e+03 - -3.5283921e+02 1.5228671e+03 2.4140943e+03 - -4.0176857e+02 1.4993914e+03 2.4116221e+03 - -4.5067047e+02 1.4746809e+03 2.4091685e+03 - -4.9943338e+02 1.4487308e+03 2.4067670e+03 - -5.4795540e+02 1.4215398e+03 2.4044485e+03 - -5.9614295e+02 1.3931098e+03 2.4022407e+03 - -6.4390983e+02 1.3634464e+03 2.4001690e+03 - -6.9117634e+02 1.3325580e+03 2.3982559e+03 - -7.3786860e+02 1.3004566e+03 2.3965214e+03 - -7.8391804e+02 1.2671572e+03 2.3949831e+03 - -8.2926089e+02 1.2326779e+03 2.3936562e+03 - -8.7383783e+02 1.1970402e+03 2.3925533e+03 - -9.1759372e+02 1.1602684e+03 2.3916847e+03 - -9.6047730e+02 1.1223902e+03 2.3910587e+03 - -1.0024410e+03 1.0834364e+03 2.3906807e+03 - -1.0434409e+03 1.0434409e+03 2.3905544e+03 - -1.0834364e+03 1.0024410e+03 2.3906807e+03 - -1.1223902e+03 9.6047730e+02 2.3910587e+03 - -1.1602684e+03 9.1759372e+02 2.3916847e+03 - -1.1970402e+03 8.7383783e+02 2.3925533e+03 - -1.2326779e+03 8.2926089e+02 2.3936562e+03 - -1.2671572e+03 7.8391804e+02 2.3949831e+03 - -1.3004566e+03 7.3786860e+02 2.3965214e+03 - -1.3325580e+03 6.9117634e+02 2.3982559e+03 - -1.3634464e+03 6.4390983e+02 2.4001690e+03 - -1.3931098e+03 5.9614295e+02 2.4022407e+03 - -1.4215398e+03 5.4795540e+02 2.4044485e+03 - -1.4487308e+03 4.9943338e+02 2.4067670e+03 - -1.4746809e+03 4.5067047e+02 2.4091685e+03 - -1.4993914e+03 4.0176857e+02 2.4116221e+03 - -1.5228671e+03 3.5283921e+02 2.4140943e+03 - -1.5451163e+03 3.0400504e+02 2.4165484e+03 - -1.5661510e+03 2.5540172e+02 2.4189446e+03 - -1.5859869e+03 2.0718020e+02 2.4212399e+03 - -1.6046433e+03 1.5950953e+02 2.4233878e+03 - -1.6221438e+03 1.1258034e+02 2.4253385e+03 - -1.6385157e+03 6.6609043e+01 2.4270386e+03 - -1.6537906e+03 2.1842975e+01 2.4284310e+03 - -1.6680040e+03 -2.1433364e+01 2.4294558e+03 - -1.6811958e+03 -6.2890861e+01 2.4300500e+03 - -1.6934096e+03 -1.0214700e+02 2.4301486e+03 - -1.7046928e+03 -1.3875580e+02 2.4296860e+03 - -1.7150961e+03 -1.7219670e+02 2.4285985e+03 - -1.7246721e+03 -2.0186332e+02 2.4268274e+03 - -1.7334743e+03 -2.2705352e+02 2.4243242e+03 - -1.7415545e+03 -2.4696397e+02 2.4210584e+03 - -1.7489596e+03 -2.6069419e+02 2.4170277e+03 - -1.7557274e+03 -2.6726802e+02 2.4122712e+03 - -1.7618808e+03 -2.6568366e+02 2.4068862e+03 - -1.7674217e+03 -2.5500560e+02 2.4010449e+03 - -1.7723250e+03 -2.3451020e+02 2.3950090e+03 - -1.7765354e+03 -2.0388634e+02 2.3891332e+03 - -1.7799701e+03 -1.6346902e+02 2.3838495e+03 - -1.7825288e+03 -1.1444850e+02 2.3796234e+03 - -1.7841130e+03 -5.8964974e+01 2.3768826e+03 - -1.7846501e+03 -2.4067136e-09 2.3759321e+03 - -1.7841130e+03 5.8964974e+01 2.3768826e+03 - -1.7825288e+03 1.1444850e+02 2.3796234e+03 - -1.7799701e+03 1.6346902e+02 2.3838495e+03 - -1.7765354e+03 2.0388634e+02 2.3891332e+03 - -1.7723250e+03 2.3451020e+02 2.3950090e+03 - -1.7674217e+03 2.5500560e+02 2.4010449e+03 - -1.7618808e+03 2.6568366e+02 2.4068862e+03 - -1.7557274e+03 2.6726802e+02 2.4122712e+03 - -1.7489596e+03 2.6069419e+02 2.4170277e+03 - -1.7415545e+03 2.4696397e+02 2.4210584e+03 - -1.7334743e+03 2.2705352e+02 2.4243242e+03 - -1.7246721e+03 2.0186332e+02 2.4268274e+03 - -1.7150961e+03 1.7219670e+02 2.4285985e+03 - -1.7046928e+03 1.3875580e+02 2.4296860e+03 - -1.6934096e+03 1.0214700e+02 2.4301486e+03 - -1.6811958e+03 6.2890861e+01 2.4300500e+03 - -1.6680040e+03 2.1433364e+01 2.4294558e+03 - -1.6537906e+03 -2.1842975e+01 2.4284310e+03 - -1.6385157e+03 -6.6609043e+01 2.4270386e+03 - -1.6221438e+03 -1.1258034e+02 2.4253385e+03 - -1.6046433e+03 -1.5950953e+02 2.4233878e+03 - -1.5859869e+03 -2.0718020e+02 2.4212399e+03 - -1.5661510e+03 -2.5540172e+02 2.4189446e+03 - -1.5451163e+03 -3.0400504e+02 2.4165484e+03 - -1.5228671e+03 -3.5283921e+02 2.4140943e+03 - -1.4993914e+03 -4.0176857e+02 2.4116221e+03 - -1.4746809e+03 -4.5067047e+02 2.4091685e+03 - -1.4487308e+03 -4.9943338e+02 2.4067670e+03 - -1.4215398e+03 -5.4795540e+02 2.4044485e+03 - -1.3931098e+03 -5.9614295e+02 2.4022407e+03 - -1.3634464e+03 -6.4390983e+02 2.4001690e+03 - -1.3325580e+03 -6.9117634e+02 2.3982559e+03 - -1.3004566e+03 -7.3786860e+02 2.3965214e+03 - -1.2671572e+03 -7.8391804e+02 2.3949831e+03 - -1.2326779e+03 -8.2926089e+02 2.3936562e+03 - -1.1970402e+03 -8.7383783e+02 2.3925533e+03 - -1.1602684e+03 -9.1759372e+02 2.3916847e+03 - -1.1223902e+03 -9.6047730e+02 2.3910587e+03 - -1.0834364e+03 -1.0024410e+03 2.3906807e+03 - -1.0434409e+03 -1.0434409e+03 2.3905544e+03 - -1.0024410e+03 -1.0834364e+03 2.3906807e+03 - -9.6047730e+02 -1.1223902e+03 2.3910587e+03 - -9.1759372e+02 -1.1602684e+03 2.3916847e+03 - -8.7383783e+02 -1.1970402e+03 2.3925533e+03 - -8.2926089e+02 -1.2326779e+03 2.3936562e+03 - -7.8391804e+02 -1.2671572e+03 2.3949831e+03 - -7.3786860e+02 -1.3004566e+03 2.3965214e+03 - -6.9117634e+02 -1.3325580e+03 2.3982559e+03 - -6.4390983e+02 -1.3634464e+03 2.4001690e+03 - -5.9614295e+02 -1.3931098e+03 2.4022407e+03 - -5.4795540e+02 -1.4215398e+03 2.4044485e+03 - -4.9943338e+02 -1.4487308e+03 2.4067670e+03 - -4.5067047e+02 -1.4746809e+03 2.4091685e+03 - -4.0176857e+02 -1.4993914e+03 2.4116221e+03 - -3.5283921e+02 -1.5228671e+03 2.4140943e+03 - -3.0400504e+02 -1.5451163e+03 2.4165484e+03 - -2.5540172e+02 -1.5661510e+03 2.4189446e+03 - -2.0718020e+02 -1.5859869e+03 2.4212399e+03 - -1.5950953e+02 -1.6046433e+03 2.4233878e+03 - -1.1258034e+02 -1.6221438e+03 2.4253385e+03 - -6.6609043e+01 -1.6385157e+03 2.4270386e+03 - -2.1842975e+01 -1.6537906e+03 2.4284310e+03 - 2.1433364e+01 -1.6680040e+03 2.4294558e+03 - 6.2890861e+01 -1.6811958e+03 2.4300500e+03 - 1.0214700e+02 -1.6934096e+03 2.4301486e+03 - 1.3875580e+02 -1.7046928e+03 2.4296860e+03 - 1.7219670e+02 -1.7150961e+03 2.4285985e+03 - 2.0186332e+02 -1.7246721e+03 2.4268274e+03 - 2.2705352e+02 -1.7334743e+03 2.4243242e+03 - 2.4696397e+02 -1.7415545e+03 2.4210584e+03 - 2.6069419e+02 -1.7489596e+03 2.4170277e+03 - 2.6726802e+02 -1.7557274e+03 2.4122712e+03 - 2.6568366e+02 -1.7618808e+03 2.4068862e+03 - 2.5500560e+02 -1.7674217e+03 2.4010449e+03 - 2.3451020e+02 -1.7723250e+03 2.3950090e+03 - 2.0388634e+02 -1.7765354e+03 2.3891332e+03 - 1.6346902e+02 -1.7799701e+03 2.3838495e+03 - 1.1444850e+02 -1.7825288e+03 2.3796234e+03 - 5.8964974e+01 -1.7841130e+03 2.3768826e+03 - -7.2201409e-09 -1.7846501e+03 2.3759321e+03 - -5.8964974e+01 -1.7841130e+03 2.3768826e+03 - -1.1444850e+02 -1.7825288e+03 2.3796234e+03 - -1.6346902e+02 -1.7799701e+03 2.3838495e+03 - -2.0388634e+02 -1.7765354e+03 2.3891332e+03 - -2.3451020e+02 -1.7723250e+03 2.3950090e+03 - -2.5500560e+02 -1.7674217e+03 2.4010449e+03 - -2.6568366e+02 -1.7618808e+03 2.4068862e+03 - -2.6726802e+02 -1.7557274e+03 2.4122712e+03 - -2.6069419e+02 -1.7489596e+03 2.4170277e+03 - -2.4696397e+02 -1.7415545e+03 2.4210584e+03 - -2.2705352e+02 -1.7334743e+03 2.4243242e+03 - -2.0186332e+02 -1.7246721e+03 2.4268274e+03 - -1.7219670e+02 -1.7150961e+03 2.4285985e+03 - -1.3875580e+02 -1.7046928e+03 2.4296860e+03 - -1.0214700e+02 -1.6934096e+03 2.4301486e+03 - -6.2890861e+01 -1.6811958e+03 2.4300500e+03 - -2.1433364e+01 -1.6680040e+03 2.4294558e+03 - 2.1842975e+01 -1.6537906e+03 2.4284310e+03 - 6.6609043e+01 -1.6385157e+03 2.4270386e+03 - 1.1258034e+02 -1.6221438e+03 2.4253385e+03 - 1.5950953e+02 -1.6046433e+03 2.4233878e+03 - 2.0718020e+02 -1.5859869e+03 2.4212399e+03 - 2.5540172e+02 -1.5661510e+03 2.4189446e+03 - 3.0400504e+02 -1.5451163e+03 2.4165484e+03 - 3.5283921e+02 -1.5228671e+03 2.4140943e+03 - 4.0176857e+02 -1.4993914e+03 2.4116221e+03 - 4.5067047e+02 -1.4746809e+03 2.4091685e+03 - 4.9943338e+02 -1.4487308e+03 2.4067670e+03 - 5.4795540e+02 -1.4215398e+03 2.4044485e+03 - 5.9614295e+02 -1.3931098e+03 2.4022407e+03 - 6.4390983e+02 -1.3634464e+03 2.4001690e+03 - 6.9117634e+02 -1.3325580e+03 2.3982559e+03 - 7.3786860e+02 -1.3004566e+03 2.3965214e+03 - 7.8391804e+02 -1.2671572e+03 2.3949831e+03 - 8.2926089e+02 -1.2326779e+03 2.3936562e+03 - 8.7383783e+02 -1.1970402e+03 2.3925533e+03 - 9.1759372e+02 -1.1602684e+03 2.3916847e+03 - 9.6047730e+02 -1.1223902e+03 2.3910587e+03 - 1.0024410e+03 -1.0834364e+03 2.3906807e+03 - 1.0434409e+03 -1.0434409e+03 2.3905544e+03 - 1.0834364e+03 -1.0024410e+03 2.3906807e+03 - 1.1223902e+03 -9.6047730e+02 2.3910587e+03 - 1.1602684e+03 -9.1759372e+02 2.3916847e+03 - 1.1970402e+03 -8.7383783e+02 2.3925533e+03 - 1.2326779e+03 -8.2926089e+02 2.3936562e+03 - 1.2671572e+03 -7.8391804e+02 2.3949831e+03 - 1.3004566e+03 -7.3786860e+02 2.3965214e+03 - 1.3325580e+03 -6.9117634e+02 2.3982559e+03 - 1.3634464e+03 -6.4390983e+02 2.4001690e+03 - 1.3931098e+03 -5.9614295e+02 2.4022407e+03 - 1.4215398e+03 -5.4795540e+02 2.4044485e+03 - 1.4487308e+03 -4.9943338e+02 2.4067670e+03 - 1.4746809e+03 -4.5067047e+02 2.4091685e+03 - 1.4993914e+03 -4.0176857e+02 2.4116221e+03 - 1.5228671e+03 -3.5283921e+02 2.4140943e+03 - 1.5451163e+03 -3.0400504e+02 2.4165484e+03 - 1.5661510e+03 -2.5540172e+02 2.4189446e+03 - 1.5859869e+03 -2.0718020e+02 2.4212399e+03 - 1.6046433e+03 -1.5950953e+02 2.4233878e+03 - 1.6221438e+03 -1.1258034e+02 2.4253385e+03 - 1.6385157e+03 -6.6609043e+01 2.4270386e+03 - 1.6537906e+03 -2.1842975e+01 2.4284310e+03 - 1.6680040e+03 2.1433364e+01 2.4294558e+03 - 1.6811958e+03 6.2890861e+01 2.4300500e+03 - 1.6934096e+03 1.0214700e+02 2.4301486e+03 - 1.7046928e+03 1.3875580e+02 2.4296860e+03 - 1.7150961e+03 1.7219670e+02 2.4285985e+03 - 1.7246721e+03 2.0186332e+02 2.4268274e+03 - 1.7334743e+03 2.2705352e+02 2.4243242e+03 - 1.7415545e+03 2.4696397e+02 2.4210584e+03 - 1.7489596e+03 2.6069419e+02 2.4170277e+03 - 1.7557274e+03 2.6726802e+02 2.4122712e+03 - 1.7618808e+03 2.6568366e+02 2.4068862e+03 - 1.7674217e+03 2.5500560e+02 2.4010449e+03 - 1.7723250e+03 2.3451020e+02 2.3950090e+03 - 1.7765354e+03 2.0388634e+02 2.3891332e+03 - 1.7799701e+03 1.6346902e+02 2.3838495e+03 - 1.7825288e+03 1.1444850e+02 2.3796234e+03 - 1.7841130e+03 5.8964974e+01 2.3768826e+03 - 1.7846501e+03 -7.2201409e-09 2.3759321e+03 - 1.8915331e+03 4.8134273e-09 2.2828147e+03 - 1.8908626e+03 -6.1619914e+01 2.2839450e+03 - 1.8888985e+03 -1.1919569e+02 2.2871875e+03 - 1.8857683e+03 -1.6932867e+02 2.2921387e+03 - 1.8816423e+03 -2.0968530e+02 2.2982435e+03 - 1.8766922e+03 -2.3909626e+02 2.3049150e+03 - 1.8710588e+03 -2.5739408e+02 2.3116283e+03 - 1.8648369e+03 -2.6512331e+02 2.3179716e+03 - 1.8580733e+03 -2.6324416e+02 2.3236586e+03 - 1.8507740e+03 -2.5289639e+02 2.3285157e+03 - 1.8429143e+03 -2.3524083e+02 2.3324594e+03 - 1.8344487e+03 -2.1136837e+02 2.3354718e+03 - 1.8253196e+03 -1.8225711e+02 2.3375794e+03 - 1.8154633e+03 -1.4875962e+02 2.3388369e+03 - 1.8048145e+03 -1.1160691e+02 2.3393150e+03 - 1.7933094e+03 -7.1420368e+01 2.3390927e+03 - 1.7808870e+03 -2.8726364e+01 2.3382516e+03 - 1.7674908e+03 1.6028990e+01 2.3368730e+03 - 1.7530689e+03 6.2466465e+01 2.3350350e+03 - 1.7375743e+03 1.1026209e+02 2.3328123e+03 - 1.7209652e+03 1.5913736e+02 2.3302752e+03 - 1.7032046e+03 2.0885118e+02 2.3274891e+03 - 1.6842602e+03 2.5919327e+02 2.3245152e+03 - 1.6641046e+03 3.0997877e+02 2.3214099e+03 - 1.6427146e+03 3.6104399e+02 2.3182256e+03 - 1.6200714e+03 4.1224282e+02 2.3150104e+03 - 1.5961604e+03 4.6344403e+02 2.3118086e+03 - 1.5709707e+03 5.1452888e+02 2.3086609e+03 - 1.5444954e+03 5.6538937e+02 2.3056044e+03 - 1.5167314e+03 6.1592674e+02 2.3026730e+03 - 1.4876790e+03 6.6605022e+02 2.2998973e+03 - 1.4573420e+03 7.1567612e+02 2.2973049e+03 - 1.4257278e+03 7.6472696e+02 2.2949207e+03 - 1.3928469e+03 8.1313090e+02 2.2927664e+03 - 1.3587132e+03 8.6082116e+02 2.2908612e+03 - 1.3233438e+03 9.0773563e+02 2.2892216e+03 - 1.2867591e+03 9.5381650e+02 2.2878614e+03 - 1.2489826e+03 9.9900997e+02 2.2867918e+03 - 1.2100408e+03 1.0432661e+03 2.2860217e+03 - 1.1699637e+03 1.0865384e+03 2.2855571e+03 - 1.1287841e+03 1.1287841e+03 2.2854018e+03 - 1.0865384e+03 1.1699637e+03 2.2855571e+03 - 1.0432661e+03 1.2100408e+03 2.2860217e+03 - 9.9900997e+02 1.2489826e+03 2.2867918e+03 - 9.5381650e+02 1.2867591e+03 2.2878614e+03 - 9.0773563e+02 1.3233438e+03 2.2892216e+03 - 8.6082116e+02 1.3587132e+03 2.2908612e+03 - 8.1313090e+02 1.3928469e+03 2.2927664e+03 - 7.6472696e+02 1.4257278e+03 2.2949207e+03 - 7.1567612e+02 1.4573420e+03 2.2973049e+03 - 6.6605022e+02 1.4876790e+03 2.2998973e+03 - 6.1592674e+02 1.5167314e+03 2.3026730e+03 - 5.6538937e+02 1.5444954e+03 2.3056044e+03 - 5.1452888e+02 1.5709707e+03 2.3086609e+03 - 4.6344403e+02 1.5961604e+03 2.3118086e+03 - 4.1224282e+02 1.6200714e+03 2.3150104e+03 - 3.6104399e+02 1.6427146e+03 2.3182256e+03 - 3.0997877e+02 1.6641046e+03 2.3214099e+03 - 2.5919327e+02 1.6842602e+03 2.3245152e+03 - 2.0885118e+02 1.7032046e+03 2.3274891e+03 - 1.5913736e+02 1.7209652e+03 2.3302752e+03 - 1.1026209e+02 1.7375743e+03 2.3328123e+03 - 6.2466465e+01 1.7530689e+03 2.3350350e+03 - 1.6028990e+01 1.7674908e+03 2.3368730e+03 - -2.8726364e+01 1.7808870e+03 2.3382516e+03 - -7.1420368e+01 1.7933094e+03 2.3390927e+03 - -1.1160691e+02 1.8048145e+03 2.3393150e+03 - -1.4875962e+02 1.8154633e+03 2.3388369e+03 - -1.8225711e+02 1.8253196e+03 2.3375794e+03 - -2.1136837e+02 1.8344487e+03 2.3354718e+03 - -2.3524083e+02 1.8429143e+03 2.3324594e+03 - -2.5289639e+02 1.8507740e+03 2.3285157e+03 - -2.6324416e+02 1.8580733e+03 2.3236586e+03 - -2.6512331e+02 1.8648369e+03 2.3179716e+03 - -2.5739408e+02 1.8710588e+03 2.3116283e+03 - -2.3909626e+02 1.8766922e+03 2.3049150e+03 - -2.0968530e+02 1.8816423e+03 2.2982435e+03 - -1.6932867e+02 1.8857683e+03 2.2921387e+03 - -1.1919569e+02 1.8888985e+03 2.2871875e+03 - -6.1619914e+01 1.8908626e+03 2.2839450e+03 - 2.4067136e-09 1.8915331e+03 2.2828147e+03 - 6.1619914e+01 1.8908626e+03 2.2839450e+03 - 1.1919569e+02 1.8888985e+03 2.2871875e+03 - 1.6932867e+02 1.8857683e+03 2.2921387e+03 - 2.0968530e+02 1.8816423e+03 2.2982435e+03 - 2.3909626e+02 1.8766922e+03 2.3049150e+03 - 2.5739408e+02 1.8710588e+03 2.3116283e+03 - 2.6512331e+02 1.8648369e+03 2.3179716e+03 - 2.6324416e+02 1.8580733e+03 2.3236586e+03 - 2.5289639e+02 1.8507740e+03 2.3285157e+03 - 2.3524083e+02 1.8429143e+03 2.3324594e+03 - 2.1136837e+02 1.8344487e+03 2.3354718e+03 - 1.8225711e+02 1.8253196e+03 2.3375794e+03 - 1.4875962e+02 1.8154633e+03 2.3388369e+03 - 1.1160691e+02 1.8048145e+03 2.3393150e+03 - 7.1420368e+01 1.7933094e+03 2.3390927e+03 - 2.8726364e+01 1.7808870e+03 2.3382516e+03 - -1.6028990e+01 1.7674908e+03 2.3368730e+03 - -6.2466465e+01 1.7530689e+03 2.3350350e+03 - -1.1026209e+02 1.7375743e+03 2.3328123e+03 - -1.5913736e+02 1.7209652e+03 2.3302752e+03 - -2.0885118e+02 1.7032046e+03 2.3274891e+03 - -2.5919327e+02 1.6842602e+03 2.3245152e+03 - -3.0997877e+02 1.6641046e+03 2.3214099e+03 - -3.6104399e+02 1.6427146e+03 2.3182256e+03 - -4.1224282e+02 1.6200714e+03 2.3150104e+03 - -4.6344403e+02 1.5961604e+03 2.3118086e+03 - -5.1452888e+02 1.5709707e+03 2.3086609e+03 - -5.6538937e+02 1.5444954e+03 2.3056044e+03 - -6.1592674e+02 1.5167314e+03 2.3026730e+03 - -6.6605022e+02 1.4876790e+03 2.2998973e+03 - -7.1567612e+02 1.4573420e+03 2.2973049e+03 - -7.6472696e+02 1.4257278e+03 2.2949207e+03 - -8.1313090e+02 1.3928469e+03 2.2927664e+03 - -8.6082116e+02 1.3587132e+03 2.2908612e+03 - -9.0773563e+02 1.3233438e+03 2.2892216e+03 - -9.5381650e+02 1.2867591e+03 2.2878614e+03 - -9.9900997e+02 1.2489826e+03 2.2867918e+03 - -1.0432661e+03 1.2100408e+03 2.2860217e+03 - -1.0865384e+03 1.1699637e+03 2.2855571e+03 - -1.1287841e+03 1.1287841e+03 2.2854018e+03 - -1.1699637e+03 1.0865384e+03 2.2855571e+03 - -1.2100408e+03 1.0432661e+03 2.2860217e+03 - -1.2489826e+03 9.9900997e+02 2.2867918e+03 - -1.2867591e+03 9.5381650e+02 2.2878614e+03 - -1.3233438e+03 9.0773563e+02 2.2892216e+03 - -1.3587132e+03 8.6082116e+02 2.2908612e+03 - -1.3928469e+03 8.1313090e+02 2.2927664e+03 - -1.4257278e+03 7.6472696e+02 2.2949207e+03 - -1.4573420e+03 7.1567612e+02 2.2973049e+03 - -1.4876790e+03 6.6605022e+02 2.2998973e+03 - -1.5167314e+03 6.1592674e+02 2.3026730e+03 - -1.5444954e+03 5.6538937e+02 2.3056044e+03 - -1.5709707e+03 5.1452888e+02 2.3086609e+03 - -1.5961604e+03 4.6344403e+02 2.3118086e+03 - -1.6200714e+03 4.1224282e+02 2.3150104e+03 - -1.6427146e+03 3.6104399e+02 2.3182256e+03 - -1.6641046e+03 3.0997877e+02 2.3214099e+03 - -1.6842602e+03 2.5919327e+02 2.3245152e+03 - -1.7032046e+03 2.0885118e+02 2.3274891e+03 - -1.7209652e+03 1.5913736e+02 2.3302752e+03 - -1.7375743e+03 1.1026209e+02 2.3328123e+03 - -1.7530689e+03 6.2466465e+01 2.3350350e+03 - -1.7674908e+03 1.6028990e+01 2.3368730e+03 - -1.7808870e+03 -2.8726364e+01 2.3382516e+03 - -1.7933094e+03 -7.1420368e+01 2.3390927e+03 - -1.8048145e+03 -1.1160691e+02 2.3393150e+03 - -1.8154633e+03 -1.4875962e+02 2.3388369e+03 - -1.8253196e+03 -1.8225711e+02 2.3375794e+03 - -1.8344487e+03 -2.1136837e+02 2.3354718e+03 - -1.8429143e+03 -2.3524083e+02 2.3324594e+03 - -1.8507740e+03 -2.5289639e+02 2.3285157e+03 - -1.8580733e+03 -2.6324416e+02 2.3236586e+03 - -1.8648369e+03 -2.6512331e+02 2.3179716e+03 - -1.8710588e+03 -2.5739408e+02 2.3116283e+03 - -1.8766922e+03 -2.3909626e+02 2.3049150e+03 - -1.8816423e+03 -2.0968530e+02 2.2982435e+03 - -1.8857683e+03 -1.6932867e+02 2.2921387e+03 - -1.8888985e+03 -1.1919569e+02 2.2871875e+03 - -1.8908626e+03 -6.1619914e+01 2.2839450e+03 - -1.8915331e+03 -2.4067136e-09 2.2828147e+03 - -1.8908626e+03 6.1619914e+01 2.2839450e+03 - -1.8888985e+03 1.1919569e+02 2.2871875e+03 - -1.8857683e+03 1.6932867e+02 2.2921387e+03 - -1.8816423e+03 2.0968530e+02 2.2982435e+03 - -1.8766922e+03 2.3909626e+02 2.3049150e+03 - -1.8710588e+03 2.5739408e+02 2.3116283e+03 - -1.8648369e+03 2.6512331e+02 2.3179716e+03 - -1.8580733e+03 2.6324416e+02 2.3236586e+03 - -1.8507740e+03 2.5289639e+02 2.3285157e+03 - -1.8429143e+03 2.3524083e+02 2.3324594e+03 - -1.8344487e+03 2.1136837e+02 2.3354718e+03 - -1.8253196e+03 1.8225711e+02 2.3375794e+03 - -1.8154633e+03 1.4875962e+02 2.3388369e+03 - -1.8048145e+03 1.1160691e+02 2.3393150e+03 - -1.7933094e+03 7.1420368e+01 2.3390927e+03 - -1.7808870e+03 2.8726364e+01 2.3382516e+03 - -1.7674908e+03 -1.6028990e+01 2.3368730e+03 - -1.7530689e+03 -6.2466465e+01 2.3350350e+03 - -1.7375743e+03 -1.1026209e+02 2.3328123e+03 - -1.7209652e+03 -1.5913736e+02 2.3302752e+03 - -1.7032046e+03 -2.0885118e+02 2.3274891e+03 - -1.6842602e+03 -2.5919327e+02 2.3245152e+03 - -1.6641046e+03 -3.0997877e+02 2.3214099e+03 - -1.6427146e+03 -3.6104399e+02 2.3182256e+03 - -1.6200714e+03 -4.1224282e+02 2.3150104e+03 - -1.5961604e+03 -4.6344403e+02 2.3118086e+03 - -1.5709707e+03 -5.1452888e+02 2.3086609e+03 - -1.5444954e+03 -5.6538937e+02 2.3056044e+03 - -1.5167314e+03 -6.1592674e+02 2.3026730e+03 - -1.4876790e+03 -6.6605022e+02 2.2998973e+03 - -1.4573420e+03 -7.1567612e+02 2.2973049e+03 - -1.4257278e+03 -7.6472696e+02 2.2949207e+03 - -1.3928469e+03 -8.1313090e+02 2.2927664e+03 - -1.3587132e+03 -8.6082116e+02 2.2908612e+03 - -1.3233438e+03 -9.0773563e+02 2.2892216e+03 - -1.2867591e+03 -9.5381650e+02 2.2878614e+03 - -1.2489826e+03 -9.9900997e+02 2.2867918e+03 - -1.2100408e+03 -1.0432661e+03 2.2860217e+03 - -1.1699637e+03 -1.0865384e+03 2.2855571e+03 - -1.1287841e+03 -1.1287841e+03 2.2854018e+03 - -1.0865384e+03 -1.1699637e+03 2.2855571e+03 - -1.0432661e+03 -1.2100408e+03 2.2860217e+03 - -9.9900997e+02 -1.2489826e+03 2.2867918e+03 - -9.5381650e+02 -1.2867591e+03 2.2878614e+03 - -9.0773563e+02 -1.3233438e+03 2.2892216e+03 - -8.6082116e+02 -1.3587132e+03 2.2908612e+03 - -8.1313090e+02 -1.3928469e+03 2.2927664e+03 - -7.6472696e+02 -1.4257278e+03 2.2949207e+03 - -7.1567612e+02 -1.4573420e+03 2.2973049e+03 - -6.6605022e+02 -1.4876790e+03 2.2998973e+03 - -6.1592674e+02 -1.5167314e+03 2.3026730e+03 - -5.6538937e+02 -1.5444954e+03 2.3056044e+03 - -5.1452888e+02 -1.5709707e+03 2.3086609e+03 - -4.6344403e+02 -1.5961604e+03 2.3118086e+03 - -4.1224282e+02 -1.6200714e+03 2.3150104e+03 - -3.6104399e+02 -1.6427146e+03 2.3182256e+03 - -3.0997877e+02 -1.6641046e+03 2.3214099e+03 - -2.5919327e+02 -1.6842602e+03 2.3245152e+03 - -2.0885118e+02 -1.7032046e+03 2.3274891e+03 - -1.5913736e+02 -1.7209652e+03 2.3302752e+03 - -1.1026209e+02 -1.7375743e+03 2.3328123e+03 - -6.2466465e+01 -1.7530689e+03 2.3350350e+03 - -1.6028990e+01 -1.7674908e+03 2.3368730e+03 - 2.8726364e+01 -1.7808870e+03 2.3382516e+03 - 7.1420368e+01 -1.7933094e+03 2.3390927e+03 - 1.1160691e+02 -1.8048145e+03 2.3393150e+03 - 1.4875962e+02 -1.8154633e+03 2.3388369e+03 - 1.8225711e+02 -1.8253196e+03 2.3375794e+03 - 2.1136837e+02 -1.8344487e+03 2.3354718e+03 - 2.3524083e+02 -1.8429143e+03 2.3324594e+03 - 2.5289639e+02 -1.8507740e+03 2.3285157e+03 - 2.6324416e+02 -1.8580733e+03 2.3236586e+03 - 2.6512331e+02 -1.8648369e+03 2.3179716e+03 - 2.5739408e+02 -1.8710588e+03 2.3116283e+03 - 2.3909626e+02 -1.8766922e+03 2.3049150e+03 - 2.0968530e+02 -1.8816423e+03 2.2982435e+03 - 1.6932867e+02 -1.8857683e+03 2.2921387e+03 - 1.1919569e+02 -1.8888985e+03 2.2871875e+03 - 6.1619914e+01 -1.8908626e+03 2.2839450e+03 - 2.4067136e-09 -1.8915331e+03 2.2828147e+03 - -6.1619914e+01 -1.8908626e+03 2.2839450e+03 - -1.1919569e+02 -1.8888985e+03 2.2871875e+03 - -1.6932867e+02 -1.8857683e+03 2.2921387e+03 - -2.0968530e+02 -1.8816423e+03 2.2982435e+03 - -2.3909626e+02 -1.8766922e+03 2.3049150e+03 - -2.5739408e+02 -1.8710588e+03 2.3116283e+03 - -2.6512331e+02 -1.8648369e+03 2.3179716e+03 - -2.6324416e+02 -1.8580733e+03 2.3236586e+03 - -2.5289639e+02 -1.8507740e+03 2.3285157e+03 - -2.3524083e+02 -1.8429143e+03 2.3324594e+03 - -2.1136837e+02 -1.8344487e+03 2.3354718e+03 - -1.8225711e+02 -1.8253196e+03 2.3375794e+03 - -1.4875962e+02 -1.8154633e+03 2.3388369e+03 - -1.1160691e+02 -1.8048145e+03 2.3393150e+03 - -7.1420368e+01 -1.7933094e+03 2.3390927e+03 - -2.8726364e+01 -1.7808870e+03 2.3382516e+03 - 1.6028990e+01 -1.7674908e+03 2.3368730e+03 - 6.2466465e+01 -1.7530689e+03 2.3350350e+03 - 1.1026209e+02 -1.7375743e+03 2.3328123e+03 - 1.5913736e+02 -1.7209652e+03 2.3302752e+03 - 2.0885118e+02 -1.7032046e+03 2.3274891e+03 - 2.5919327e+02 -1.6842602e+03 2.3245152e+03 - 3.0997877e+02 -1.6641046e+03 2.3214099e+03 - 3.6104399e+02 -1.6427146e+03 2.3182256e+03 - 4.1224282e+02 -1.6200714e+03 2.3150104e+03 - 4.6344403e+02 -1.5961604e+03 2.3118086e+03 - 5.1452888e+02 -1.5709707e+03 2.3086609e+03 - 5.6538937e+02 -1.5444954e+03 2.3056044e+03 - 6.1592674e+02 -1.5167314e+03 2.3026730e+03 - 6.6605022e+02 -1.4876790e+03 2.2998973e+03 - 7.1567612e+02 -1.4573420e+03 2.2973049e+03 - 7.6472696e+02 -1.4257278e+03 2.2949207e+03 - 8.1313090e+02 -1.3928469e+03 2.2927664e+03 - 8.6082116e+02 -1.3587132e+03 2.2908612e+03 - 9.0773563e+02 -1.3233438e+03 2.2892216e+03 - 9.5381650e+02 -1.2867591e+03 2.2878614e+03 - 9.9900997e+02 -1.2489826e+03 2.2867918e+03 - 1.0432661e+03 -1.2100408e+03 2.2860217e+03 - 1.0865384e+03 -1.1699637e+03 2.2855571e+03 - 1.1287841e+03 -1.1287841e+03 2.2854018e+03 - 1.1699637e+03 -1.0865384e+03 2.2855571e+03 - 1.2100408e+03 -1.0432661e+03 2.2860217e+03 - 1.2489826e+03 -9.9900997e+02 2.2867918e+03 - 1.2867591e+03 -9.5381650e+02 2.2878614e+03 - 1.3233438e+03 -9.0773563e+02 2.2892216e+03 - 1.3587132e+03 -8.6082116e+02 2.2908612e+03 - 1.3928469e+03 -8.1313090e+02 2.2927664e+03 - 1.4257278e+03 -7.6472696e+02 2.2949207e+03 - 1.4573420e+03 -7.1567612e+02 2.2973049e+03 - 1.4876790e+03 -6.6605022e+02 2.2998973e+03 - 1.5167314e+03 -6.1592674e+02 2.3026730e+03 - 1.5444954e+03 -5.6538937e+02 2.3056044e+03 - 1.5709707e+03 -5.1452888e+02 2.3086609e+03 - 1.5961604e+03 -4.6344403e+02 2.3118086e+03 - 1.6200714e+03 -4.1224282e+02 2.3150104e+03 - 1.6427146e+03 -3.6104399e+02 2.3182256e+03 - 1.6641046e+03 -3.0997877e+02 2.3214099e+03 - 1.6842602e+03 -2.5919327e+02 2.3245152e+03 - 1.7032046e+03 -2.0885118e+02 2.3274891e+03 - 1.7209652e+03 -1.5913736e+02 2.3302752e+03 - 1.7375743e+03 -1.1026209e+02 2.3328123e+03 - 1.7530689e+03 -6.2466465e+01 2.3350350e+03 - 1.7674908e+03 -1.6028990e+01 2.3368730e+03 - 1.7808870e+03 2.8726364e+01 2.3382516e+03 - 1.7933094e+03 7.1420368e+01 2.3390927e+03 - 1.8048145e+03 1.1160691e+02 2.3393150e+03 - 1.8154633e+03 1.4875962e+02 2.3388369e+03 - 1.8253196e+03 1.8225711e+02 2.3375794e+03 - 1.8344487e+03 2.1136837e+02 2.3354718e+03 - 1.8429143e+03 2.3524083e+02 2.3324594e+03 - 1.8507740e+03 2.5289639e+02 2.3285157e+03 - 1.8580733e+03 2.6324416e+02 2.3236586e+03 - 1.8648369e+03 2.6512331e+02 2.3179716e+03 - 1.8710588e+03 2.5739408e+02 2.3116283e+03 - 1.8766922e+03 2.3909626e+02 2.3049150e+03 - 1.8816423e+03 2.0968530e+02 2.2982435e+03 - 1.8857683e+03 1.6932867e+02 2.2921387e+03 - 1.8888985e+03 1.1919569e+02 2.2871875e+03 - 1.8908626e+03 6.1619914e+01 2.2839450e+03 - 1.8915331e+03 9.6268545e-09 2.2828147e+03 - 1.9965978e+03 4.8134273e-09 2.1875899e+03 - 1.9957516e+03 -6.5006525e+01 2.1889582e+03 - 1.9932919e+03 -1.2524201e+02 2.1928600e+03 - 1.9894287e+03 -1.7679067e+02 2.1987493e+03 - 1.9844377e+03 -2.1711395e+02 2.2058933e+03 - 1.9785893e+03 -2.4511958e+02 2.2135438e+03 - 1.9720995e+03 -2.6089160e+02 2.2210614e+03 - 1.9651086e+03 -2.6528684e+02 2.2279718e+03 - 1.9576846e+03 -2.5955996e+02 2.2339691e+03 - 1.9498361e+03 -2.4508971e+02 2.2388891e+03 - 1.9415302e+03 -2.2321231e+02 2.2426731e+03 - 1.9327076e+03 -1.9513766e+02 2.2453348e+03 - 1.9232944e+03 -1.6191888e+02 2.2469332e+03 - 1.9132110e+03 -1.2445205e+02 2.2475536e+03 - 1.9023767e+03 -8.3490297e+01 2.2472942e+03 - 1.8907141e+03 -3.9663345e+01 2.2462578e+03 - 1.8781502e+03 6.5025042e+00 2.2445463e+03 - 1.8646180e+03 5.4566096e+01 2.2422580e+03 - 1.8500567e+03 1.0415570e+02 2.2394860e+03 - 1.8344117e+03 1.5495594e+02 2.2363172e+03 - 1.8176345e+03 2.0669715e+02 2.2328325e+03 - 1.7996825e+03 2.5914677e+02 2.2291065e+03 - 1.7805189e+03 3.1210249e+02 2.2252080e+03 - 1.7601120e+03 3.6538679e+02 2.2212003e+03 - 1.7384351e+03 4.1884258e+02 2.2171415e+03 - 1.7154666e+03 4.7232971e+02 2.2130849e+03 - 1.6911890e+03 5.2572221e+02 2.2090792e+03 - 1.6655895e+03 5.7890607e+02 2.2051689e+03 - 1.6386592e+03 6.3177748e+02 2.2013946e+03 - 1.6103931e+03 6.8424140e+02 2.1977932e+03 - 1.5807901e+03 7.3621038e+02 2.1943980e+03 - 1.5498527e+03 7.8760367e+02 2.1912388e+03 - 1.5175870e+03 8.3834648e+02 2.1883425e+03 - 1.4840024e+03 8.8836934e+02 2.1857326e+03 - 1.4491118e+03 9.3760761e+02 2.1834296e+03 - 1.4129312e+03 9.8600112e+02 2.1814514e+03 - 1.3754800e+03 1.0334938e+03 2.1798128e+03 - 1.3367807e+03 1.0800335e+03 2.1785259e+03 - 1.2968591e+03 1.1255717e+03 2.1776000e+03 - 1.2557437e+03 1.1700633e+03 2.1770418e+03 - 1.2134668e+03 1.2134668e+03 2.1768553e+03 - 1.1700633e+03 1.2557437e+03 2.1770418e+03 - 1.1255717e+03 1.2968591e+03 2.1776000e+03 - 1.0800335e+03 1.3367807e+03 2.1785259e+03 - 1.0334938e+03 1.3754800e+03 2.1798128e+03 - 9.8600112e+02 1.4129312e+03 2.1814514e+03 - 9.3760761e+02 1.4491118e+03 2.1834296e+03 - 8.8836934e+02 1.4840024e+03 2.1857326e+03 - 8.3834648e+02 1.5175870e+03 2.1883425e+03 - 7.8760367e+02 1.5498527e+03 2.1912388e+03 - 7.3621038e+02 1.5807901e+03 2.1943980e+03 - 6.8424140e+02 1.6103931e+03 2.1977932e+03 - 6.3177748e+02 1.6386592e+03 2.2013946e+03 - 5.7890607e+02 1.6655895e+03 2.2051689e+03 - 5.2572221e+02 1.6911890e+03 2.2090792e+03 - 4.7232971e+02 1.7154666e+03 2.2130849e+03 - 4.1884258e+02 1.7384351e+03 2.2171415e+03 - 3.6538679e+02 1.7601120e+03 2.2212003e+03 - 3.1210249e+02 1.7805189e+03 2.2252080e+03 - 2.5914677e+02 1.7996825e+03 2.2291065e+03 - 2.0669715e+02 1.8176345e+03 2.2328325e+03 - 1.5495594e+02 1.8344117e+03 2.2363172e+03 - 1.0415570e+02 1.8500567e+03 2.2394860e+03 - 5.4566096e+01 1.8646180e+03 2.2422580e+03 - 6.5025042e+00 1.8781502e+03 2.2445463e+03 - -3.9663345e+01 1.8907141e+03 2.2462578e+03 - -8.3490297e+01 1.9023767e+03 2.2472942e+03 - -1.2445205e+02 1.9132110e+03 2.2475536e+03 - -1.6191888e+02 1.9232944e+03 2.2469332e+03 - -1.9513766e+02 1.9327076e+03 2.2453348e+03 - -2.2321231e+02 1.9415302e+03 2.2426731e+03 - -2.4508971e+02 1.9498361e+03 2.2388891e+03 - -2.5955996e+02 1.9576846e+03 2.2339691e+03 - -2.6528684e+02 1.9651086e+03 2.2279718e+03 - -2.6089160e+02 1.9720995e+03 2.2210614e+03 - -2.4511958e+02 1.9785893e+03 2.2135438e+03 - -2.1711395e+02 1.9844377e+03 2.2058933e+03 - -1.7679067e+02 1.9894287e+03 2.1987493e+03 - -1.2524201e+02 1.9932919e+03 2.1928600e+03 - -6.5006525e+01 1.9957516e+03 2.1889582e+03 - 2.4067136e-09 1.9965978e+03 2.1875899e+03 - 6.5006525e+01 1.9957516e+03 2.1889582e+03 - 1.2524201e+02 1.9932919e+03 2.1928600e+03 - 1.7679067e+02 1.9894287e+03 2.1987493e+03 - 2.1711395e+02 1.9844377e+03 2.2058933e+03 - 2.4511958e+02 1.9785893e+03 2.2135438e+03 - 2.6089160e+02 1.9720995e+03 2.2210614e+03 - 2.6528684e+02 1.9651086e+03 2.2279718e+03 - 2.5955996e+02 1.9576846e+03 2.2339691e+03 - 2.4508971e+02 1.9498361e+03 2.2388891e+03 - 2.2321231e+02 1.9415302e+03 2.2426731e+03 - 1.9513766e+02 1.9327076e+03 2.2453348e+03 - 1.6191888e+02 1.9232944e+03 2.2469332e+03 - 1.2445205e+02 1.9132110e+03 2.2475536e+03 - 8.3490297e+01 1.9023767e+03 2.2472942e+03 - 3.9663345e+01 1.8907141e+03 2.2462578e+03 - -6.5025042e+00 1.8781502e+03 2.2445463e+03 - -5.4566096e+01 1.8646180e+03 2.2422580e+03 - -1.0415570e+02 1.8500567e+03 2.2394860e+03 - -1.5495594e+02 1.8344117e+03 2.2363172e+03 - -2.0669715e+02 1.8176345e+03 2.2328325e+03 - -2.5914677e+02 1.7996825e+03 2.2291065e+03 - -3.1210249e+02 1.7805189e+03 2.2252080e+03 - -3.6538679e+02 1.7601120e+03 2.2212003e+03 - -4.1884258e+02 1.7384351e+03 2.2171415e+03 - -4.7232971e+02 1.7154666e+03 2.2130849e+03 - -5.2572221e+02 1.6911890e+03 2.2090792e+03 - -5.7890607e+02 1.6655895e+03 2.2051689e+03 - -6.3177748e+02 1.6386592e+03 2.2013946e+03 - -6.8424140e+02 1.6103931e+03 2.1977932e+03 - -7.3621038e+02 1.5807901e+03 2.1943980e+03 - -7.8760367e+02 1.5498527e+03 2.1912388e+03 - -8.3834648e+02 1.5175870e+03 2.1883425e+03 - -8.8836934e+02 1.4840024e+03 2.1857326e+03 - -9.3760761e+02 1.4491118e+03 2.1834296e+03 - -9.8600112e+02 1.4129312e+03 2.1814514e+03 - -1.0334938e+03 1.3754800e+03 2.1798128e+03 - -1.0800335e+03 1.3367807e+03 2.1785259e+03 - -1.1255717e+03 1.2968591e+03 2.1776000e+03 - -1.1700633e+03 1.2557437e+03 2.1770418e+03 - -1.2134668e+03 1.2134668e+03 2.1768553e+03 - -1.2557437e+03 1.1700633e+03 2.1770418e+03 - -1.2968591e+03 1.1255717e+03 2.1776000e+03 - -1.3367807e+03 1.0800335e+03 2.1785259e+03 - -1.3754800e+03 1.0334938e+03 2.1798128e+03 - -1.4129312e+03 9.8600112e+02 2.1814514e+03 - -1.4491118e+03 9.3760761e+02 2.1834296e+03 - -1.4840024e+03 8.8836934e+02 2.1857326e+03 - -1.5175870e+03 8.3834648e+02 2.1883425e+03 - -1.5498527e+03 7.8760367e+02 2.1912388e+03 - -1.5807901e+03 7.3621038e+02 2.1943980e+03 - -1.6103931e+03 6.8424140e+02 2.1977932e+03 - -1.6386592e+03 6.3177748e+02 2.2013946e+03 - -1.6655895e+03 5.7890607e+02 2.2051689e+03 - -1.6911890e+03 5.2572221e+02 2.2090792e+03 - -1.7154666e+03 4.7232971e+02 2.2130849e+03 - -1.7384351e+03 4.1884258e+02 2.2171415e+03 - -1.7601120e+03 3.6538679e+02 2.2212003e+03 - -1.7805189e+03 3.1210249e+02 2.2252080e+03 - -1.7996825e+03 2.5914677e+02 2.2291065e+03 - -1.8176345e+03 2.0669715e+02 2.2328325e+03 - -1.8344117e+03 1.5495594e+02 2.2363172e+03 - -1.8500567e+03 1.0415570e+02 2.2394860e+03 - -1.8646180e+03 5.4566096e+01 2.2422580e+03 - -1.8781502e+03 6.5025042e+00 2.2445463e+03 - -1.8907141e+03 -3.9663345e+01 2.2462578e+03 - -1.9023767e+03 -8.3490297e+01 2.2472942e+03 - -1.9132110e+03 -1.2445205e+02 2.2475536e+03 - -1.9232944e+03 -1.6191888e+02 2.2469332e+03 - -1.9327076e+03 -1.9513766e+02 2.2453348e+03 - -1.9415302e+03 -2.2321231e+02 2.2426731e+03 - -1.9498361e+03 -2.4508971e+02 2.2388891e+03 - -1.9576846e+03 -2.5955996e+02 2.2339691e+03 - -1.9651086e+03 -2.6528684e+02 2.2279718e+03 - -1.9720995e+03 -2.6089160e+02 2.2210614e+03 - -1.9785893e+03 -2.4511958e+02 2.2135438e+03 - -1.9844377e+03 -2.1711395e+02 2.2058933e+03 - -1.9894287e+03 -1.7679067e+02 2.1987493e+03 - -1.9932919e+03 -1.2524201e+02 2.1928600e+03 - -1.9957516e+03 -6.5006525e+01 2.1889582e+03 - -1.9965978e+03 2.4067136e-09 2.1875899e+03 - -1.9957516e+03 6.5006525e+01 2.1889582e+03 - -1.9932919e+03 1.2524201e+02 2.1928600e+03 - -1.9894287e+03 1.7679067e+02 2.1987493e+03 - -1.9844377e+03 2.1711395e+02 2.2058933e+03 - -1.9785893e+03 2.4511958e+02 2.2135438e+03 - -1.9720995e+03 2.6089160e+02 2.2210614e+03 - -1.9651086e+03 2.6528684e+02 2.2279718e+03 - -1.9576846e+03 2.5955996e+02 2.2339691e+03 - -1.9498361e+03 2.4508971e+02 2.2388891e+03 - -1.9415302e+03 2.2321231e+02 2.2426731e+03 - -1.9327076e+03 1.9513766e+02 2.2453348e+03 - -1.9232944e+03 1.6191888e+02 2.2469332e+03 - -1.9132110e+03 1.2445205e+02 2.2475536e+03 - -1.9023767e+03 8.3490297e+01 2.2472942e+03 - -1.8907141e+03 3.9663345e+01 2.2462578e+03 - -1.8781502e+03 -6.5025042e+00 2.2445463e+03 - -1.8646180e+03 -5.4566096e+01 2.2422580e+03 - -1.8500567e+03 -1.0415570e+02 2.2394860e+03 - -1.8344117e+03 -1.5495594e+02 2.2363172e+03 - -1.8176345e+03 -2.0669715e+02 2.2328325e+03 - -1.7996825e+03 -2.5914677e+02 2.2291065e+03 - -1.7805189e+03 -3.1210249e+02 2.2252080e+03 - -1.7601120e+03 -3.6538679e+02 2.2212003e+03 - -1.7384351e+03 -4.1884258e+02 2.2171415e+03 - -1.7154666e+03 -4.7232971e+02 2.2130849e+03 - -1.6911890e+03 -5.2572221e+02 2.2090792e+03 - -1.6655895e+03 -5.7890607e+02 2.2051689e+03 - -1.6386592e+03 -6.3177748e+02 2.2013946e+03 - -1.6103931e+03 -6.8424140e+02 2.1977932e+03 - -1.5807901e+03 -7.3621038e+02 2.1943980e+03 - -1.5498527e+03 -7.8760367e+02 2.1912388e+03 - -1.5175870e+03 -8.3834648e+02 2.1883425e+03 - -1.4840024e+03 -8.8836934e+02 2.1857326e+03 - -1.4491118e+03 -9.3760761e+02 2.1834296e+03 - -1.4129312e+03 -9.8600112e+02 2.1814514e+03 - -1.3754800e+03 -1.0334938e+03 2.1798128e+03 - -1.3367807e+03 -1.0800335e+03 2.1785259e+03 - -1.2968591e+03 -1.1255717e+03 2.1776000e+03 - -1.2557437e+03 -1.1700633e+03 2.1770418e+03 - -1.2134668e+03 -1.2134668e+03 2.1768553e+03 - -1.1700633e+03 -1.2557437e+03 2.1770418e+03 - -1.1255717e+03 -1.2968591e+03 2.1776000e+03 - -1.0800335e+03 -1.3367807e+03 2.1785259e+03 - -1.0334938e+03 -1.3754800e+03 2.1798128e+03 - -9.8600112e+02 -1.4129312e+03 2.1814514e+03 - -9.3760761e+02 -1.4491118e+03 2.1834296e+03 - -8.8836934e+02 -1.4840024e+03 2.1857326e+03 - -8.3834648e+02 -1.5175870e+03 2.1883425e+03 - -7.8760367e+02 -1.5498527e+03 2.1912388e+03 - -7.3621038e+02 -1.5807901e+03 2.1943980e+03 - -6.8424140e+02 -1.6103931e+03 2.1977932e+03 - -6.3177748e+02 -1.6386592e+03 2.2013946e+03 - -5.7890607e+02 -1.6655895e+03 2.2051689e+03 - -5.2572221e+02 -1.6911890e+03 2.2090792e+03 - -4.7232971e+02 -1.7154666e+03 2.2130849e+03 - -4.1884258e+02 -1.7384351e+03 2.2171415e+03 - -3.6538679e+02 -1.7601120e+03 2.2212003e+03 - -3.1210249e+02 -1.7805189e+03 2.2252080e+03 - -2.5914677e+02 -1.7996825e+03 2.2291065e+03 - -2.0669715e+02 -1.8176345e+03 2.2328325e+03 - -1.5495594e+02 -1.8344117e+03 2.2363172e+03 - -1.0415570e+02 -1.8500567e+03 2.2394860e+03 - -5.4566096e+01 -1.8646180e+03 2.2422580e+03 - -6.5025042e+00 -1.8781502e+03 2.2445463e+03 - 3.9663345e+01 -1.8907141e+03 2.2462578e+03 - 8.3490297e+01 -1.9023767e+03 2.2472942e+03 - 1.2445205e+02 -1.9132110e+03 2.2475536e+03 - 1.6191888e+02 -1.9232944e+03 2.2469332e+03 - 1.9513766e+02 -1.9327076e+03 2.2453348e+03 - 2.2321231e+02 -1.9415302e+03 2.2426731e+03 - 2.4508971e+02 -1.9498361e+03 2.2388891e+03 - 2.5955996e+02 -1.9576846e+03 2.2339691e+03 - 2.6528684e+02 -1.9651086e+03 2.2279718e+03 - 2.6089160e+02 -1.9720995e+03 2.2210614e+03 - 2.4511958e+02 -1.9785893e+03 2.2135438e+03 - 2.1711395e+02 -1.9844377e+03 2.2058933e+03 - 1.7679067e+02 -1.9894287e+03 2.1987493e+03 - 1.2524201e+02 -1.9932919e+03 2.1928600e+03 - 6.5006525e+01 -1.9957516e+03 2.1889582e+03 - -2.4067136e-09 -1.9965978e+03 2.1875899e+03 - -6.5006525e+01 -1.9957516e+03 2.1889582e+03 - -1.2524201e+02 -1.9932919e+03 2.1928600e+03 - -1.7679067e+02 -1.9894287e+03 2.1987493e+03 - -2.1711395e+02 -1.9844377e+03 2.2058933e+03 - -2.4511958e+02 -1.9785893e+03 2.2135438e+03 - -2.6089160e+02 -1.9720995e+03 2.2210614e+03 - -2.6528684e+02 -1.9651086e+03 2.2279718e+03 - -2.5955996e+02 -1.9576846e+03 2.2339691e+03 - -2.4508971e+02 -1.9498361e+03 2.2388891e+03 - -2.2321231e+02 -1.9415302e+03 2.2426731e+03 - -1.9513766e+02 -1.9327076e+03 2.2453348e+03 - -1.6191888e+02 -1.9232944e+03 2.2469332e+03 - -1.2445205e+02 -1.9132110e+03 2.2475536e+03 - -8.3490297e+01 -1.9023767e+03 2.2472942e+03 - -3.9663345e+01 -1.8907141e+03 2.2462578e+03 - 6.5025042e+00 -1.8781502e+03 2.2445463e+03 - 5.4566096e+01 -1.8646180e+03 2.2422580e+03 - 1.0415570e+02 -1.8500567e+03 2.2394860e+03 - 1.5495594e+02 -1.8344117e+03 2.2363172e+03 - 2.0669715e+02 -1.8176345e+03 2.2328325e+03 - 2.5914677e+02 -1.7996825e+03 2.2291065e+03 - 3.1210249e+02 -1.7805189e+03 2.2252080e+03 - 3.6538679e+02 -1.7601120e+03 2.2212003e+03 - 4.1884258e+02 -1.7384351e+03 2.2171415e+03 - 4.7232971e+02 -1.7154666e+03 2.2130849e+03 - 5.2572221e+02 -1.6911890e+03 2.2090792e+03 - 5.7890607e+02 -1.6655895e+03 2.2051689e+03 - 6.3177748e+02 -1.6386592e+03 2.2013946e+03 - 6.8424140e+02 -1.6103931e+03 2.1977932e+03 - 7.3621038e+02 -1.5807901e+03 2.1943980e+03 - 7.8760367e+02 -1.5498527e+03 2.1912388e+03 - 8.3834648e+02 -1.5175870e+03 2.1883425e+03 - 8.8836934e+02 -1.4840024e+03 2.1857326e+03 - 9.3760761e+02 -1.4491118e+03 2.1834296e+03 - 9.8600112e+02 -1.4129312e+03 2.1814514e+03 - 1.0334938e+03 -1.3754800e+03 2.1798128e+03 - 1.0800335e+03 -1.3367807e+03 2.1785259e+03 - 1.1255717e+03 -1.2968591e+03 2.1776000e+03 - 1.1700633e+03 -1.2557437e+03 2.1770418e+03 - 1.2134668e+03 -1.2134668e+03 2.1768553e+03 - 1.2557437e+03 -1.1700633e+03 2.1770418e+03 - 1.2968591e+03 -1.1255717e+03 2.1776000e+03 - 1.3367807e+03 -1.0800335e+03 2.1785259e+03 - 1.3754800e+03 -1.0334938e+03 2.1798128e+03 - 1.4129312e+03 -9.8600112e+02 2.1814514e+03 - 1.4491118e+03 -9.3760761e+02 2.1834296e+03 - 1.4840024e+03 -8.8836934e+02 2.1857326e+03 - 1.5175870e+03 -8.3834648e+02 2.1883425e+03 - 1.5498527e+03 -7.8760367e+02 2.1912388e+03 - 1.5807901e+03 -7.3621038e+02 2.1943980e+03 - 1.6103931e+03 -6.8424140e+02 2.1977932e+03 - 1.6386592e+03 -6.3177748e+02 2.2013946e+03 - 1.6655895e+03 -5.7890607e+02 2.2051689e+03 - 1.6911890e+03 -5.2572221e+02 2.2090792e+03 - 1.7154666e+03 -4.7232971e+02 2.2130849e+03 - 1.7384351e+03 -4.1884258e+02 2.2171415e+03 - 1.7601120e+03 -3.6538679e+02 2.2212003e+03 - 1.7805189e+03 -3.1210249e+02 2.2252080e+03 - 1.7996825e+03 -2.5914677e+02 2.2291065e+03 - 1.8176345e+03 -2.0669715e+02 2.2328325e+03 - 1.8344117e+03 -1.5495594e+02 2.2363172e+03 - 1.8500567e+03 -1.0415570e+02 2.2394860e+03 - 1.8646180e+03 -5.4566096e+01 2.2422580e+03 - 1.8781502e+03 -6.5025042e+00 2.2445463e+03 - 1.8907141e+03 3.9663345e+01 2.2462578e+03 - 1.9023767e+03 8.3490297e+01 2.2472942e+03 - 1.9132110e+03 1.2445205e+02 2.2475536e+03 - 1.9232944e+03 1.6191888e+02 2.2469332e+03 - 1.9327076e+03 1.9513766e+02 2.2453348e+03 - 1.9415302e+03 2.2321231e+02 2.2426731e+03 - 1.9498361e+03 2.4508971e+02 2.2388891e+03 - 1.9576846e+03 2.5955996e+02 2.2339691e+03 - 1.9651086e+03 2.6528684e+02 2.2279718e+03 - 1.9720995e+03 2.6089160e+02 2.2210614e+03 - 1.9785893e+03 2.4511958e+02 2.2135438e+03 - 1.9844377e+03 2.1711395e+02 2.2058933e+03 - 1.9894287e+03 1.7679067e+02 2.1987493e+03 - 1.9932919e+03 1.2524201e+02 2.1928600e+03 - 1.9957516e+03 6.5006525e+01 2.1889582e+03 - 1.9965978e+03 2.4067136e-09 2.1875899e+03 - 2.0995150e+03 2.4067136e-09 2.0905644e+03 - 2.0984317e+03 -6.9364914e+01 2.0922560e+03 - 2.0953107e+03 -1.3299320e+02 2.0970438e+03 - 2.0904899e+03 -1.8631742e+02 2.1041699e+03 - 2.0844014e+03 -2.2659568e+02 2.1126475e+03 - 2.0774534e+03 -2.5290876e+02 2.1215122e+03 - 2.0699567e+03 -2.6571638e+02 2.1299849e+03 - 2.0621021e+03 -2.6629328e+02 2.1375281e+03 - 2.0539726e+03 -2.5625838e+02 2.1438288e+03 - 2.0455703e+03 -2.3726594e+02 2.1487488e+03 - 2.0368440e+03 -2.1084068e+02 2.1522710e+03 - 2.0277116e+03 -1.7831083e+02 2.1544543e+03 - 2.0180763e+03 -1.4079727e+02 2.1554009e+03 - 2.0078366e+03 -9.9229936e+01 2.1552343e+03 - 1.9968931e+03 -5.4374438e+01 2.1540854e+03 - 1.9851520e+03 -6.8601944e+00 2.1520844e+03 - 1.9725265e+03 4.2793899e+01 2.1493559e+03 - 1.9589382e+03 9.4157628e+01 2.1460172e+03 - 1.9443165e+03 1.4687158e+02 2.1421769e+03 - 1.9285989e+03 2.0063283e+02 2.1379349e+03 - 1.9117303e+03 2.5518356e+02 2.1333829e+03 - 1.8936626e+03 3.1030220e+02 2.1286047e+03 - 1.8743542e+03 3.6579639e+02 2.1236770e+03 - 1.8537696e+03 4.2149750e+02 2.1186695e+03 - 1.8318791e+03 4.7725636e+02 2.1136460e+03 - 1.8086581e+03 5.3293981e+02 2.1086648e+03 - 1.7840871e+03 5.8842809e+02 2.1037787e+03 - 1.7581510e+03 6.4361266e+02 2.0990361e+03 - 1.7308395e+03 6.9839457e+02 2.0944805e+03 - 1.7021460e+03 7.5268306e+02 2.0901517e+03 - 1.6720682e+03 8.0639452e+02 2.0860853e+03 - 1.6406074e+03 8.5945163e+02 2.0823133e+03 - 1.6077686e+03 9.1178263e+02 2.0788643e+03 - 1.5735604e+03 9.6332079e+02 2.0757634e+03 - 1.5379946e+03 1.0140040e+03 2.0730325e+03 - 1.5010865e+03 1.0637742e+03 2.0706904e+03 - 1.4628544e+03 1.1125774e+03 2.0687529e+03 - 1.4233200e+03 1.1603633e+03 2.0672327e+03 - 1.3825079e+03 1.2070849e+03 2.0661399e+03 - 1.3404459e+03 1.2526989e+03 2.0654813e+03 - 1.2971649e+03 1.2971649e+03 2.0652614e+03 - 1.2526989e+03 1.3404459e+03 2.0654813e+03 - 1.2070849e+03 1.3825079e+03 2.0661399e+03 - 1.1603633e+03 1.4233200e+03 2.0672327e+03 - 1.1125774e+03 1.4628544e+03 2.0687529e+03 - 1.0637742e+03 1.5010865e+03 2.0706904e+03 - 1.0140040e+03 1.5379946e+03 2.0730325e+03 - 9.6332079e+02 1.5735604e+03 2.0757634e+03 - 9.1178263e+02 1.6077686e+03 2.0788643e+03 - 8.5945163e+02 1.6406074e+03 2.0823133e+03 - 8.0639452e+02 1.6720682e+03 2.0860853e+03 - 7.5268306e+02 1.7021460e+03 2.0901517e+03 - 6.9839457e+02 1.7308395e+03 2.0944805e+03 - 6.4361266e+02 1.7581510e+03 2.0990361e+03 - 5.8842809e+02 1.7840871e+03 2.1037787e+03 - 5.3293981e+02 1.8086581e+03 2.1086648e+03 - 4.7725636e+02 1.8318791e+03 2.1136460e+03 - 4.2149750e+02 1.8537696e+03 2.1186695e+03 - 3.6579639e+02 1.8743542e+03 2.1236770e+03 - 3.1030220e+02 1.8936626e+03 2.1286047e+03 - 2.5518356e+02 1.9117303e+03 2.1333829e+03 - 2.0063283e+02 1.9285989e+03 2.1379349e+03 - 1.4687158e+02 1.9443165e+03 2.1421769e+03 - 9.4157628e+01 1.9589382e+03 2.1460172e+03 - 4.2793899e+01 1.9725265e+03 2.1493559e+03 - -6.8601944e+00 1.9851520e+03 2.1520844e+03 - -5.4374438e+01 1.9968931e+03 2.1540854e+03 - -9.9229936e+01 2.0078366e+03 2.1552343e+03 - -1.4079727e+02 2.0180763e+03 2.1554009e+03 - -1.7831083e+02 2.0277116e+03 2.1544543e+03 - -2.1084068e+02 2.0368440e+03 2.1522710e+03 - -2.3726594e+02 2.0455703e+03 2.1487488e+03 - -2.5625838e+02 2.0539726e+03 2.1438288e+03 - -2.6629328e+02 2.0621021e+03 2.1375281e+03 - -2.6571638e+02 2.0699567e+03 2.1299849e+03 - -2.5290876e+02 2.0774534e+03 2.1215122e+03 - -2.2659568e+02 2.0844014e+03 2.1126475e+03 - -1.8631742e+02 2.0904899e+03 2.1041699e+03 - -1.3299320e+02 2.0953107e+03 2.0970438e+03 - -6.9364914e+01 2.0984317e+03 2.0922560e+03 - 2.4067136e-09 2.0995150e+03 2.0905644e+03 - 6.9364914e+01 2.0984317e+03 2.0922560e+03 - 1.3299320e+02 2.0953107e+03 2.0970438e+03 - 1.8631742e+02 2.0904899e+03 2.1041699e+03 - 2.2659568e+02 2.0844014e+03 2.1126475e+03 - 2.5290876e+02 2.0774534e+03 2.1215122e+03 - 2.6571638e+02 2.0699567e+03 2.1299849e+03 - 2.6629328e+02 2.0621021e+03 2.1375281e+03 - 2.5625838e+02 2.0539726e+03 2.1438288e+03 - 2.3726594e+02 2.0455703e+03 2.1487488e+03 - 2.1084068e+02 2.0368440e+03 2.1522710e+03 - 1.7831083e+02 2.0277116e+03 2.1544543e+03 - 1.4079727e+02 2.0180763e+03 2.1554009e+03 - 9.9229936e+01 2.0078366e+03 2.1552343e+03 - 5.4374438e+01 1.9968931e+03 2.1540854e+03 - 6.8601943e+00 1.9851520e+03 2.1520844e+03 - -4.2793899e+01 1.9725265e+03 2.1493559e+03 - -9.4157628e+01 1.9589382e+03 2.1460172e+03 - -1.4687158e+02 1.9443165e+03 2.1421769e+03 - -2.0063283e+02 1.9285989e+03 2.1379349e+03 - -2.5518356e+02 1.9117303e+03 2.1333829e+03 - -3.1030220e+02 1.8936626e+03 2.1286047e+03 - -3.6579639e+02 1.8743542e+03 2.1236770e+03 - -4.2149750e+02 1.8537696e+03 2.1186695e+03 - -4.7725636e+02 1.8318791e+03 2.1136460e+03 - -5.3293981e+02 1.8086581e+03 2.1086648e+03 - -5.8842809e+02 1.7840871e+03 2.1037787e+03 - -6.4361266e+02 1.7581510e+03 2.0990361e+03 - -6.9839457e+02 1.7308395e+03 2.0944805e+03 - -7.5268306e+02 1.7021460e+03 2.0901517e+03 - -8.0639452e+02 1.6720682e+03 2.0860853e+03 - -8.5945163e+02 1.6406074e+03 2.0823133e+03 - -9.1178263e+02 1.6077686e+03 2.0788643e+03 - -9.6332079e+02 1.5735604e+03 2.0757634e+03 - -1.0140040e+03 1.5379946e+03 2.0730325e+03 - -1.0637742e+03 1.5010865e+03 2.0706904e+03 - -1.1125774e+03 1.4628544e+03 2.0687529e+03 - -1.1603633e+03 1.4233200e+03 2.0672327e+03 - -1.2070849e+03 1.3825079e+03 2.0661399e+03 - -1.2526989e+03 1.3404459e+03 2.0654813e+03 - -1.2971649e+03 1.2971649e+03 2.0652614e+03 - -1.3404459e+03 1.2526989e+03 2.0654813e+03 - -1.3825079e+03 1.2070849e+03 2.0661399e+03 - -1.4233200e+03 1.1603633e+03 2.0672327e+03 - -1.4628544e+03 1.1125774e+03 2.0687529e+03 - -1.5010865e+03 1.0637742e+03 2.0706904e+03 - -1.5379946e+03 1.0140040e+03 2.0730325e+03 - -1.5735604e+03 9.6332079e+02 2.0757634e+03 - -1.6077686e+03 9.1178263e+02 2.0788643e+03 - -1.6406074e+03 8.5945163e+02 2.0823133e+03 - -1.6720682e+03 8.0639452e+02 2.0860853e+03 - -1.7021460e+03 7.5268306e+02 2.0901517e+03 - -1.7308395e+03 6.9839457e+02 2.0944805e+03 - -1.7581510e+03 6.4361266e+02 2.0990361e+03 - -1.7840871e+03 5.8842809e+02 2.1037787e+03 - -1.8086581e+03 5.3293981e+02 2.1086648e+03 - -1.8318791e+03 4.7725636e+02 2.1136460e+03 - -1.8537696e+03 4.2149750e+02 2.1186695e+03 - -1.8743542e+03 3.6579639e+02 2.1236770e+03 - -1.8936626e+03 3.1030220e+02 2.1286047e+03 - -1.9117303e+03 2.5518356e+02 2.1333829e+03 - -1.9285989e+03 2.0063283e+02 2.1379349e+03 - -1.9443165e+03 1.4687158e+02 2.1421769e+03 - -1.9589382e+03 9.4157628e+01 2.1460172e+03 - -1.9725265e+03 4.2793899e+01 2.1493559e+03 - -1.9851520e+03 -6.8601944e+00 2.1520844e+03 - -1.9968931e+03 -5.4374438e+01 2.1540854e+03 - -2.0078366e+03 -9.9229936e+01 2.1552343e+03 - -2.0180763e+03 -1.4079727e+02 2.1554009e+03 - -2.0277116e+03 -1.7831083e+02 2.1544543e+03 - -2.0368440e+03 -2.1084068e+02 2.1522710e+03 - -2.0455703e+03 -2.3726594e+02 2.1487488e+03 - -2.0539726e+03 -2.5625838e+02 2.1438288e+03 - -2.0621021e+03 -2.6629328e+02 2.1375281e+03 - -2.0699567e+03 -2.6571638e+02 2.1299849e+03 - -2.0774534e+03 -2.5290876e+02 2.1215122e+03 - -2.0844014e+03 -2.2659568e+02 2.1126475e+03 - -2.0904899e+03 -1.8631742e+02 2.1041699e+03 - -2.0953107e+03 -1.3299320e+02 2.0970438e+03 - -2.0984317e+03 -6.9364914e+01 2.0922560e+03 - -2.0995150e+03 2.4067136e-09 2.0905644e+03 - -2.0984317e+03 6.9364914e+01 2.0922560e+03 - -2.0953107e+03 1.3299320e+02 2.0970438e+03 - -2.0904899e+03 1.8631742e+02 2.1041699e+03 - -2.0844014e+03 2.2659568e+02 2.1126475e+03 - -2.0774534e+03 2.5290876e+02 2.1215122e+03 - -2.0699567e+03 2.6571638e+02 2.1299849e+03 - -2.0621021e+03 2.6629328e+02 2.1375281e+03 - -2.0539726e+03 2.5625838e+02 2.1438288e+03 - -2.0455703e+03 2.3726594e+02 2.1487488e+03 - -2.0368440e+03 2.1084068e+02 2.1522710e+03 - -2.0277116e+03 1.7831083e+02 2.1544543e+03 - -2.0180763e+03 1.4079727e+02 2.1554009e+03 - -2.0078366e+03 9.9229936e+01 2.1552343e+03 - -1.9968931e+03 5.4374438e+01 2.1540854e+03 - -1.9851520e+03 6.8601944e+00 2.1520844e+03 - -1.9725265e+03 -4.2793899e+01 2.1493559e+03 - -1.9589382e+03 -9.4157628e+01 2.1460172e+03 - -1.9443165e+03 -1.4687158e+02 2.1421769e+03 - -1.9285989e+03 -2.0063283e+02 2.1379349e+03 - -1.9117303e+03 -2.5518356e+02 2.1333829e+03 - -1.8936626e+03 -3.1030220e+02 2.1286047e+03 - -1.8743542e+03 -3.6579639e+02 2.1236770e+03 - -1.8537696e+03 -4.2149750e+02 2.1186695e+03 - -1.8318791e+03 -4.7725636e+02 2.1136460e+03 - -1.8086581e+03 -5.3293981e+02 2.1086648e+03 - -1.7840871e+03 -5.8842809e+02 2.1037787e+03 - -1.7581510e+03 -6.4361266e+02 2.0990361e+03 - -1.7308395e+03 -6.9839457e+02 2.0944805e+03 - -1.7021460e+03 -7.5268306e+02 2.0901517e+03 - -1.6720682e+03 -8.0639452e+02 2.0860853e+03 - -1.6406074e+03 -8.5945163e+02 2.0823133e+03 - -1.6077686e+03 -9.1178263e+02 2.0788643e+03 - -1.5735604e+03 -9.6332079e+02 2.0757634e+03 - -1.5379946e+03 -1.0140040e+03 2.0730325e+03 - -1.5010865e+03 -1.0637742e+03 2.0706904e+03 - -1.4628544e+03 -1.1125774e+03 2.0687529e+03 - -1.4233200e+03 -1.1603633e+03 2.0672327e+03 - -1.3825079e+03 -1.2070849e+03 2.0661399e+03 - -1.3404459e+03 -1.2526989e+03 2.0654813e+03 - -1.2971649e+03 -1.2971649e+03 2.0652614e+03 - -1.2526989e+03 -1.3404459e+03 2.0654813e+03 - -1.2070849e+03 -1.3825079e+03 2.0661399e+03 - -1.1603633e+03 -1.4233200e+03 2.0672327e+03 - -1.1125774e+03 -1.4628544e+03 2.0687529e+03 - -1.0637742e+03 -1.5010865e+03 2.0706904e+03 - -1.0140040e+03 -1.5379946e+03 2.0730325e+03 - -9.6332079e+02 -1.5735604e+03 2.0757634e+03 - -9.1178263e+02 -1.6077686e+03 2.0788643e+03 - -8.5945163e+02 -1.6406074e+03 2.0823133e+03 - -8.0639452e+02 -1.6720682e+03 2.0860853e+03 - -7.5268306e+02 -1.7021460e+03 2.0901517e+03 - -6.9839457e+02 -1.7308395e+03 2.0944805e+03 - -6.4361266e+02 -1.7581510e+03 2.0990361e+03 - -5.8842809e+02 -1.7840871e+03 2.1037787e+03 - -5.3293981e+02 -1.8086581e+03 2.1086648e+03 - -4.7725636e+02 -1.8318791e+03 2.1136460e+03 - -4.2149750e+02 -1.8537696e+03 2.1186695e+03 - -3.6579639e+02 -1.8743542e+03 2.1236770e+03 - -3.1030220e+02 -1.8936626e+03 2.1286047e+03 - -2.5518356e+02 -1.9117303e+03 2.1333829e+03 - -2.0063283e+02 -1.9285989e+03 2.1379349e+03 - -1.4687158e+02 -1.9443165e+03 2.1421769e+03 - -9.4157628e+01 -1.9589382e+03 2.1460172e+03 - -4.2793899e+01 -1.9725265e+03 2.1493559e+03 - 6.8601944e+00 -1.9851520e+03 2.1520844e+03 - 5.4374438e+01 -1.9968931e+03 2.1540854e+03 - 9.9229936e+01 -2.0078366e+03 2.1552343e+03 - 1.4079727e+02 -2.0180763e+03 2.1554009e+03 - 1.7831083e+02 -2.0277116e+03 2.1544543e+03 - 2.1084068e+02 -2.0368440e+03 2.1522710e+03 - 2.3726594e+02 -2.0455703e+03 2.1487488e+03 - 2.5625838e+02 -2.0539726e+03 2.1438288e+03 - 2.6629328e+02 -2.0621021e+03 2.1375281e+03 - 2.6571638e+02 -2.0699567e+03 2.1299849e+03 - 2.5290876e+02 -2.0774534e+03 2.1215122e+03 - 2.2659568e+02 -2.0844014e+03 2.1126475e+03 - 1.8631742e+02 -2.0904899e+03 2.1041699e+03 - 1.3299320e+02 -2.0953107e+03 2.0970438e+03 - 6.9364914e+01 -2.0984317e+03 2.0922560e+03 - 0.0000000e+00 -2.0995150e+03 2.0905644e+03 - -6.9364914e+01 -2.0984317e+03 2.0922560e+03 - -1.3299320e+02 -2.0953107e+03 2.0970438e+03 - -1.8631742e+02 -2.0904899e+03 2.1041699e+03 - -2.2659568e+02 -2.0844014e+03 2.1126475e+03 - -2.5290876e+02 -2.0774534e+03 2.1215122e+03 - -2.6571638e+02 -2.0699567e+03 2.1299849e+03 - -2.6629328e+02 -2.0621021e+03 2.1375281e+03 - -2.5625838e+02 -2.0539726e+03 2.1438288e+03 - -2.3726594e+02 -2.0455703e+03 2.1487488e+03 - -2.1084068e+02 -2.0368440e+03 2.1522710e+03 - -1.7831083e+02 -2.0277116e+03 2.1544543e+03 - -1.4079727e+02 -2.0180763e+03 2.1554009e+03 - -9.9229936e+01 -2.0078366e+03 2.1552343e+03 - -5.4374438e+01 -1.9968931e+03 2.1540854e+03 - -6.8601944e+00 -1.9851520e+03 2.1520844e+03 - 4.2793899e+01 -1.9725265e+03 2.1493559e+03 - 9.4157628e+01 -1.9589382e+03 2.1460172e+03 - 1.4687158e+02 -1.9443165e+03 2.1421769e+03 - 2.0063283e+02 -1.9285989e+03 2.1379349e+03 - 2.5518356e+02 -1.9117303e+03 2.1333829e+03 - 3.1030220e+02 -1.8936626e+03 2.1286047e+03 - 3.6579639e+02 -1.8743542e+03 2.1236770e+03 - 4.2149750e+02 -1.8537696e+03 2.1186695e+03 - 4.7725636e+02 -1.8318791e+03 2.1136460e+03 - 5.3293981e+02 -1.8086581e+03 2.1086648e+03 - 5.8842809e+02 -1.7840871e+03 2.1037787e+03 - 6.4361266e+02 -1.7581510e+03 2.0990361e+03 - 6.9839457e+02 -1.7308395e+03 2.0944805e+03 - 7.5268306e+02 -1.7021460e+03 2.0901517e+03 - 8.0639452e+02 -1.6720682e+03 2.0860853e+03 - 8.5945163e+02 -1.6406074e+03 2.0823133e+03 - 9.1178263e+02 -1.6077686e+03 2.0788643e+03 - 9.6332079e+02 -1.5735604e+03 2.0757634e+03 - 1.0140040e+03 -1.5379946e+03 2.0730325e+03 - 1.0637742e+03 -1.5010865e+03 2.0706904e+03 - 1.1125774e+03 -1.4628544e+03 2.0687529e+03 - 1.1603633e+03 -1.4233200e+03 2.0672327e+03 - 1.2070849e+03 -1.3825079e+03 2.0661399e+03 - 1.2526989e+03 -1.3404459e+03 2.0654813e+03 - 1.2971649e+03 -1.2971649e+03 2.0652614e+03 - 1.3404459e+03 -1.2526989e+03 2.0654813e+03 - 1.3825079e+03 -1.2070849e+03 2.0661399e+03 - 1.4233200e+03 -1.1603633e+03 2.0672327e+03 - 1.4628544e+03 -1.1125774e+03 2.0687529e+03 - 1.5010865e+03 -1.0637742e+03 2.0706904e+03 - 1.5379946e+03 -1.0140040e+03 2.0730325e+03 - 1.5735604e+03 -9.6332079e+02 2.0757634e+03 - 1.6077686e+03 -9.1178263e+02 2.0788643e+03 - 1.6406074e+03 -8.5945163e+02 2.0823133e+03 - 1.6720682e+03 -8.0639452e+02 2.0860853e+03 - 1.7021460e+03 -7.5268306e+02 2.0901517e+03 - 1.7308395e+03 -6.9839457e+02 2.0944805e+03 - 1.7581510e+03 -6.4361266e+02 2.0990361e+03 - 1.7840871e+03 -5.8842809e+02 2.1037787e+03 - 1.8086581e+03 -5.3293981e+02 2.1086648e+03 - 1.8318791e+03 -4.7725636e+02 2.1136460e+03 - 1.8537696e+03 -4.2149750e+02 2.1186695e+03 - 1.8743542e+03 -3.6579639e+02 2.1236770e+03 - 1.8936626e+03 -3.1030220e+02 2.1286047e+03 - 1.9117303e+03 -2.5518356e+02 2.1333829e+03 - 1.9285989e+03 -2.0063283e+02 2.1379349e+03 - 1.9443165e+03 -1.4687158e+02 2.1421769e+03 - 1.9589382e+03 -9.4157628e+01 2.1460172e+03 - 1.9725265e+03 -4.2793899e+01 2.1493559e+03 - 1.9851520e+03 6.8601944e+00 2.1520844e+03 - 1.9968931e+03 5.4374438e+01 2.1540854e+03 - 2.0078366e+03 9.9229936e+01 2.1552343e+03 - 2.0180763e+03 1.4079727e+02 2.1554009e+03 - 2.0277116e+03 1.7831083e+02 2.1544543e+03 - 2.0368440e+03 2.1084068e+02 2.1522710e+03 - 2.0455703e+03 2.3726594e+02 2.1487488e+03 - 2.0539726e+03 2.5625838e+02 2.1438288e+03 - 2.0621021e+03 2.6629328e+02 2.1375281e+03 - 2.0699567e+03 2.6571638e+02 2.1299849e+03 - 2.0774534e+03 2.5290876e+02 2.1215122e+03 - 2.0844014e+03 2.2659568e+02 2.1126475e+03 - 2.0904899e+03 1.8631742e+02 2.1041699e+03 - 2.0953107e+03 1.3299320e+02 2.0970438e+03 - 2.0984317e+03 6.9364914e+01 2.0922560e+03 - 2.0995150e+03 4.8134273e-09 2.0905644e+03 - 2.1999757e+03 -2.4067136e-09 1.9920594e+03 - 2.1985632e+03 -7.5040873e+01 1.9942024e+03 - 2.1945367e+03 -1.4301888e+02 2.0002120e+03 - 2.1884391e+03 -1.9853170e+02 2.0090024e+03 - 2.1809391e+03 -2.3866885e+02 2.0192144e+03 - 2.1726372e+03 -2.6284966e+02 2.0295919e+03 - 2.1639606e+03 -2.7209468e+02 2.0391912e+03 - 2.1551484e+03 -2.6823658e+02 2.0474210e+03 - 2.1462852e+03 -2.5333938e+02 2.0539860e+03 - 2.1373498e+03 -2.2936706e+02 2.0588016e+03 - 2.1282575e+03 -1.9803834e+02 2.0619155e+03 - 2.1188915e+03 -1.6079101e+02 2.0634497e+03 - 2.1091227e+03 -1.1879966e+02 2.0635622e+03 - 2.0988224e+03 -7.3013418e+01 2.0624231e+03 - 2.0878678e+03 -2.4197217e+01 2.0602017e+03 - 2.0761463e+03 2.7030791e+01 2.0570589e+03 - 2.0635559e+03 8.0167909e+01 2.0531444e+03 - 2.0500056e+03 1.3480177e+02 2.0485952e+03 - 2.0354149e+03 1.9059065e+02 2.0435362e+03 - 2.0197133e+03 2.4724819e+02 2.0380806e+03 - 2.0028391e+03 3.0453170e+02 2.0323307e+03 - 1.9847390e+03 3.6223309e+02 2.0263793e+03 - 1.9653673e+03 4.2017191e+02 2.0203105e+03 - 1.9446849e+03 4.7819003e+02 2.0142003e+03 - 1.9226593e+03 5.3614745e+02 2.0081179e+03 - 1.8992637e+03 5.9391909e+02 2.0021258e+03 - 1.8744765e+03 6.5139224e+02 1.9962809e+03 - 1.8482813e+03 7.0846459e+02 1.9906347e+03 - 1.8206663e+03 7.6504267e+02 1.9852336e+03 - 1.7916238e+03 8.2104058e+02 1.9801197e+03 - 1.7611507e+03 8.7637902e+02 1.9753307e+03 - 1.7292473e+03 9.3098452e+02 1.9709005e+03 - 1.6959178e+03 9.8478875e+02 1.9668590e+03 - 1.6611701e+03 1.0377281e+03 1.9632326e+03 - 1.6250152e+03 1.0897431e+03 1.9600443e+03 - 1.5874675e+03 1.1407783e+03 1.9573138e+03 - 1.5485449e+03 1.1907820e+03 1.9550575e+03 - 1.5082678e+03 1.2397059e+03 1.9532889e+03 - 1.4666602e+03 1.2875047e+03 1.9520183e+03 - 1.4237489e+03 1.3341369e+03 1.9512530e+03 - 1.3795635e+03 1.3795635e+03 1.9509974e+03 - 1.3341369e+03 1.4237489e+03 1.9512530e+03 - 1.2875047e+03 1.4666602e+03 1.9520183e+03 - 1.2397059e+03 1.5082678e+03 1.9532889e+03 - 1.1907820e+03 1.5485449e+03 1.9550575e+03 - 1.1407783e+03 1.5874675e+03 1.9573138e+03 - 1.0897431e+03 1.6250152e+03 1.9600443e+03 - 1.0377281e+03 1.6611701e+03 1.9632326e+03 - 9.8478875e+02 1.6959178e+03 1.9668590e+03 - 9.3098452e+02 1.7292473e+03 1.9709005e+03 - 8.7637902e+02 1.7611507e+03 1.9753307e+03 - 8.2104058e+02 1.7916238e+03 1.9801197e+03 - 7.6504267e+02 1.8206663e+03 1.9852336e+03 - 7.0846459e+02 1.8482813e+03 1.9906347e+03 - 6.5139224e+02 1.8744765e+03 1.9962809e+03 - 5.9391909e+02 1.8992637e+03 2.0021258e+03 - 5.3614745e+02 1.9226593e+03 2.0081179e+03 - 4.7819003e+02 1.9446849e+03 2.0142003e+03 - 4.2017191e+02 1.9653673e+03 2.0203105e+03 - 3.6223309e+02 1.9847390e+03 2.0263793e+03 - 3.0453170e+02 2.0028391e+03 2.0323307e+03 - 2.4724819e+02 2.0197133e+03 2.0380806e+03 - 1.9059065e+02 2.0354149e+03 2.0435362e+03 - 1.3480177e+02 2.0500056e+03 2.0485952e+03 - 8.0167909e+01 2.0635559e+03 2.0531444e+03 - 2.7030791e+01 2.0761463e+03 2.0570589e+03 - -2.4197217e+01 2.0878678e+03 2.0602017e+03 - -7.3013418e+01 2.0988224e+03 2.0624231e+03 - -1.1879966e+02 2.1091227e+03 2.0635622e+03 - -1.6079101e+02 2.1188915e+03 2.0634497e+03 - -1.9803834e+02 2.1282575e+03 2.0619155e+03 - -2.2936706e+02 2.1373498e+03 2.0588016e+03 - -2.5333938e+02 2.1462852e+03 2.0539860e+03 - -2.6823658e+02 2.1551484e+03 2.0474210e+03 - -2.7209468e+02 2.1639606e+03 2.0391912e+03 - -2.6284966e+02 2.1726372e+03 2.0295919e+03 - -2.3866885e+02 2.1809391e+03 2.0192144e+03 - -1.9853170e+02 2.1884391e+03 2.0090024e+03 - -1.4301888e+02 2.1945367e+03 2.0002120e+03 - -7.5040873e+01 2.1985632e+03 1.9942024e+03 - -4.8134273e-09 2.1999757e+03 1.9920594e+03 - 7.5040873e+01 2.1985632e+03 1.9942024e+03 - 1.4301888e+02 2.1945367e+03 2.0002120e+03 - 1.9853170e+02 2.1884391e+03 2.0090024e+03 - 2.3866885e+02 2.1809391e+03 2.0192144e+03 - 2.6284966e+02 2.1726372e+03 2.0295919e+03 - 2.7209468e+02 2.1639606e+03 2.0391912e+03 - 2.6823658e+02 2.1551484e+03 2.0474210e+03 - 2.5333938e+02 2.1462852e+03 2.0539860e+03 - 2.2936706e+02 2.1373498e+03 2.0588016e+03 - 1.9803834e+02 2.1282575e+03 2.0619155e+03 - 1.6079101e+02 2.1188915e+03 2.0634497e+03 - 1.1879966e+02 2.1091227e+03 2.0635622e+03 - 7.3013418e+01 2.0988224e+03 2.0624231e+03 - 2.4197217e+01 2.0878678e+03 2.0602017e+03 - -2.7030791e+01 2.0761463e+03 2.0570589e+03 - -8.0167909e+01 2.0635559e+03 2.0531444e+03 - -1.3480177e+02 2.0500056e+03 2.0485952e+03 - -1.9059065e+02 2.0354149e+03 2.0435362e+03 - -2.4724819e+02 2.0197133e+03 2.0380806e+03 - -3.0453170e+02 2.0028391e+03 2.0323307e+03 - -3.6223309e+02 1.9847390e+03 2.0263793e+03 - -4.2017191e+02 1.9653673e+03 2.0203105e+03 - -4.7819003e+02 1.9446849e+03 2.0142003e+03 - -5.3614745e+02 1.9226593e+03 2.0081179e+03 - -5.9391909e+02 1.8992637e+03 2.0021258e+03 - -6.5139224e+02 1.8744765e+03 1.9962809e+03 - -7.0846459e+02 1.8482813e+03 1.9906347e+03 - -7.6504267e+02 1.8206663e+03 1.9852336e+03 - -8.2104058e+02 1.7916238e+03 1.9801197e+03 - -8.7637902e+02 1.7611507e+03 1.9753307e+03 - -9.3098452e+02 1.7292473e+03 1.9709005e+03 - -9.8478875e+02 1.6959178e+03 1.9668590e+03 - -1.0377281e+03 1.6611701e+03 1.9632326e+03 - -1.0897431e+03 1.6250152e+03 1.9600443e+03 - -1.1407783e+03 1.5874675e+03 1.9573138e+03 - -1.1907820e+03 1.5485449e+03 1.9550575e+03 - -1.2397059e+03 1.5082678e+03 1.9532889e+03 - -1.2875047e+03 1.4666602e+03 1.9520183e+03 - -1.3341369e+03 1.4237489e+03 1.9512530e+03 - -1.3795635e+03 1.3795635e+03 1.9509974e+03 - -1.4237489e+03 1.3341369e+03 1.9512530e+03 - -1.4666602e+03 1.2875047e+03 1.9520183e+03 - -1.5082678e+03 1.2397059e+03 1.9532889e+03 - -1.5485449e+03 1.1907820e+03 1.9550575e+03 - -1.5874675e+03 1.1407783e+03 1.9573138e+03 - -1.6250152e+03 1.0897431e+03 1.9600443e+03 - -1.6611701e+03 1.0377281e+03 1.9632326e+03 - -1.6959178e+03 9.8478875e+02 1.9668590e+03 - -1.7292473e+03 9.3098452e+02 1.9709005e+03 - -1.7611507e+03 8.7637902e+02 1.9753307e+03 - -1.7916238e+03 8.2104058e+02 1.9801197e+03 - -1.8206663e+03 7.6504267e+02 1.9852336e+03 - -1.8482813e+03 7.0846459e+02 1.9906347e+03 - -1.8744765e+03 6.5139224e+02 1.9962809e+03 - -1.8992637e+03 5.9391909e+02 2.0021258e+03 - -1.9226593e+03 5.3614745e+02 2.0081179e+03 - -1.9446849e+03 4.7819003e+02 2.0142003e+03 - -1.9653673e+03 4.2017191e+02 2.0203105e+03 - -1.9847390e+03 3.6223309e+02 2.0263793e+03 - -2.0028391e+03 3.0453170e+02 2.0323307e+03 - -2.0197133e+03 2.4724819e+02 2.0380806e+03 - -2.0354149e+03 1.9059065e+02 2.0435362e+03 - -2.0500056e+03 1.3480177e+02 2.0485952e+03 - -2.0635559e+03 8.0167909e+01 2.0531444e+03 - -2.0761463e+03 2.7030791e+01 2.0570589e+03 - -2.0878678e+03 -2.4197217e+01 2.0602017e+03 - -2.0988224e+03 -7.3013418e+01 2.0624231e+03 - -2.1091227e+03 -1.1879966e+02 2.0635622e+03 - -2.1188915e+03 -1.6079101e+02 2.0634497e+03 - -2.1282575e+03 -1.9803834e+02 2.0619155e+03 - -2.1373498e+03 -2.2936706e+02 2.0588016e+03 - -2.1462852e+03 -2.5333938e+02 2.0539860e+03 - -2.1551484e+03 -2.6823658e+02 2.0474210e+03 - -2.1639606e+03 -2.7209468e+02 2.0391912e+03 - -2.1726372e+03 -2.6284966e+02 2.0295919e+03 - -2.1809391e+03 -2.3866885e+02 2.0192144e+03 - -2.1884391e+03 -1.9853170e+02 2.0090024e+03 - -2.1945367e+03 -1.4301888e+02 2.0002120e+03 - -2.1985632e+03 -7.5040873e+01 1.9942024e+03 - -2.1999757e+03 4.8134273e-09 1.9920594e+03 - -2.1985632e+03 7.5040873e+01 1.9942024e+03 - -2.1945367e+03 1.4301888e+02 2.0002120e+03 - -2.1884391e+03 1.9853170e+02 2.0090024e+03 - -2.1809391e+03 2.3866885e+02 2.0192144e+03 - -2.1726372e+03 2.6284966e+02 2.0295919e+03 - -2.1639606e+03 2.7209468e+02 2.0391912e+03 - -2.1551484e+03 2.6823658e+02 2.0474210e+03 - -2.1462852e+03 2.5333938e+02 2.0539860e+03 - -2.1373498e+03 2.2936706e+02 2.0588016e+03 - -2.1282575e+03 1.9803834e+02 2.0619155e+03 - -2.1188915e+03 1.6079101e+02 2.0634497e+03 - -2.1091227e+03 1.1879966e+02 2.0635622e+03 - -2.0988224e+03 7.3013418e+01 2.0624231e+03 - -2.0878678e+03 2.4197217e+01 2.0602017e+03 - -2.0761463e+03 -2.7030791e+01 2.0570589e+03 - -2.0635559e+03 -8.0167909e+01 2.0531444e+03 - -2.0500056e+03 -1.3480177e+02 2.0485952e+03 - -2.0354149e+03 -1.9059065e+02 2.0435362e+03 - -2.0197133e+03 -2.4724819e+02 2.0380806e+03 - -2.0028391e+03 -3.0453170e+02 2.0323307e+03 - -1.9847390e+03 -3.6223309e+02 2.0263793e+03 - -1.9653673e+03 -4.2017191e+02 2.0203105e+03 - -1.9446849e+03 -4.7819003e+02 2.0142003e+03 - -1.9226593e+03 -5.3614745e+02 2.0081179e+03 - -1.8992637e+03 -5.9391909e+02 2.0021258e+03 - -1.8744765e+03 -6.5139224e+02 1.9962809e+03 - -1.8482813e+03 -7.0846459e+02 1.9906347e+03 - -1.8206663e+03 -7.6504267e+02 1.9852336e+03 - -1.7916238e+03 -8.2104058e+02 1.9801197e+03 - -1.7611507e+03 -8.7637902e+02 1.9753307e+03 - -1.7292473e+03 -9.3098452e+02 1.9709005e+03 - -1.6959178e+03 -9.8478875e+02 1.9668590e+03 - -1.6611701e+03 -1.0377281e+03 1.9632326e+03 - -1.6250152e+03 -1.0897431e+03 1.9600443e+03 - -1.5874675e+03 -1.1407783e+03 1.9573138e+03 - -1.5485449e+03 -1.1907820e+03 1.9550575e+03 - -1.5082678e+03 -1.2397059e+03 1.9532889e+03 - -1.4666602e+03 -1.2875047e+03 1.9520183e+03 - -1.4237489e+03 -1.3341369e+03 1.9512530e+03 - -1.3795635e+03 -1.3795635e+03 1.9509974e+03 - -1.3341369e+03 -1.4237489e+03 1.9512530e+03 - -1.2875047e+03 -1.4666602e+03 1.9520183e+03 - -1.2397059e+03 -1.5082678e+03 1.9532889e+03 - -1.1907820e+03 -1.5485449e+03 1.9550575e+03 - -1.1407783e+03 -1.5874675e+03 1.9573138e+03 - -1.0897431e+03 -1.6250152e+03 1.9600443e+03 - -1.0377281e+03 -1.6611701e+03 1.9632326e+03 - -9.8478875e+02 -1.6959178e+03 1.9668590e+03 - -9.3098452e+02 -1.7292473e+03 1.9709005e+03 - -8.7637902e+02 -1.7611507e+03 1.9753307e+03 - -8.2104058e+02 -1.7916238e+03 1.9801197e+03 - -7.6504267e+02 -1.8206663e+03 1.9852336e+03 - -7.0846459e+02 -1.8482813e+03 1.9906347e+03 - -6.5139224e+02 -1.8744765e+03 1.9962809e+03 - -5.9391909e+02 -1.8992637e+03 2.0021258e+03 - -5.3614745e+02 -1.9226593e+03 2.0081179e+03 - -4.7819003e+02 -1.9446849e+03 2.0142003e+03 - -4.2017191e+02 -1.9653673e+03 2.0203105e+03 - -3.6223309e+02 -1.9847390e+03 2.0263793e+03 - -3.0453170e+02 -2.0028391e+03 2.0323307e+03 - -2.4724819e+02 -2.0197133e+03 2.0380806e+03 - -1.9059065e+02 -2.0354149e+03 2.0435362e+03 - -1.3480177e+02 -2.0500056e+03 2.0485952e+03 - -8.0167909e+01 -2.0635559e+03 2.0531444e+03 - -2.7030791e+01 -2.0761463e+03 2.0570589e+03 - 2.4197217e+01 -2.0878678e+03 2.0602017e+03 - 7.3013418e+01 -2.0988224e+03 2.0624231e+03 - 1.1879966e+02 -2.1091227e+03 2.0635622e+03 - 1.6079101e+02 -2.1188915e+03 2.0634497e+03 - 1.9803834e+02 -2.1282575e+03 2.0619155e+03 - 2.2936706e+02 -2.1373498e+03 2.0588016e+03 - 2.5333938e+02 -2.1462852e+03 2.0539860e+03 - 2.6823658e+02 -2.1551484e+03 2.0474210e+03 - 2.7209468e+02 -2.1639606e+03 2.0391912e+03 - 2.6284966e+02 -2.1726372e+03 2.0295919e+03 - 2.3866885e+02 -2.1809391e+03 2.0192144e+03 - 1.9853170e+02 -2.1884391e+03 2.0090024e+03 - 1.4301888e+02 -2.1945367e+03 2.0002120e+03 - 7.5040873e+01 -2.1985632e+03 1.9942024e+03 - 4.8134273e-09 -2.1999757e+03 1.9920594e+03 - -7.5040873e+01 -2.1985632e+03 1.9942024e+03 - -1.4301888e+02 -2.1945367e+03 2.0002120e+03 - -1.9853170e+02 -2.1884391e+03 2.0090024e+03 - -2.3866885e+02 -2.1809391e+03 2.0192144e+03 - -2.6284966e+02 -2.1726372e+03 2.0295919e+03 - -2.7209468e+02 -2.1639606e+03 2.0391912e+03 - -2.6823658e+02 -2.1551484e+03 2.0474210e+03 - -2.5333938e+02 -2.1462852e+03 2.0539860e+03 - -2.2936706e+02 -2.1373498e+03 2.0588016e+03 - -1.9803834e+02 -2.1282575e+03 2.0619155e+03 - -1.6079101e+02 -2.1188915e+03 2.0634497e+03 - -1.1879966e+02 -2.1091227e+03 2.0635622e+03 - -7.3013418e+01 -2.0988224e+03 2.0624231e+03 - -2.4197217e+01 -2.0878678e+03 2.0602017e+03 - 2.7030791e+01 -2.0761463e+03 2.0570589e+03 - 8.0167909e+01 -2.0635559e+03 2.0531444e+03 - 1.3480177e+02 -2.0500056e+03 2.0485952e+03 - 1.9059065e+02 -2.0354149e+03 2.0435362e+03 - 2.4724819e+02 -2.0197133e+03 2.0380806e+03 - 3.0453170e+02 -2.0028391e+03 2.0323307e+03 - 3.6223309e+02 -1.9847390e+03 2.0263793e+03 - 4.2017191e+02 -1.9653673e+03 2.0203105e+03 - 4.7819003e+02 -1.9446849e+03 2.0142003e+03 - 5.3614745e+02 -1.9226593e+03 2.0081179e+03 - 5.9391909e+02 -1.8992637e+03 2.0021258e+03 - 6.5139224e+02 -1.8744765e+03 1.9962809e+03 - 7.0846459e+02 -1.8482813e+03 1.9906347e+03 - 7.6504267e+02 -1.8206663e+03 1.9852336e+03 - 8.2104058e+02 -1.7916238e+03 1.9801197e+03 - 8.7637902e+02 -1.7611507e+03 1.9753307e+03 - 9.3098452e+02 -1.7292473e+03 1.9709005e+03 - 9.8478875e+02 -1.6959178e+03 1.9668590e+03 - 1.0377281e+03 -1.6611701e+03 1.9632326e+03 - 1.0897431e+03 -1.6250152e+03 1.9600443e+03 - 1.1407783e+03 -1.5874675e+03 1.9573138e+03 - 1.1907820e+03 -1.5485449e+03 1.9550575e+03 - 1.2397059e+03 -1.5082678e+03 1.9532889e+03 - 1.2875047e+03 -1.4666602e+03 1.9520183e+03 - 1.3341369e+03 -1.4237489e+03 1.9512530e+03 - 1.3795635e+03 -1.3795635e+03 1.9509974e+03 - 1.4237489e+03 -1.3341369e+03 1.9512530e+03 - 1.4666602e+03 -1.2875047e+03 1.9520183e+03 - 1.5082678e+03 -1.2397059e+03 1.9532889e+03 - 1.5485449e+03 -1.1907820e+03 1.9550575e+03 - 1.5874675e+03 -1.1407783e+03 1.9573138e+03 - 1.6250152e+03 -1.0897431e+03 1.9600443e+03 - 1.6611701e+03 -1.0377281e+03 1.9632326e+03 - 1.6959178e+03 -9.8478875e+02 1.9668590e+03 - 1.7292473e+03 -9.3098452e+02 1.9709005e+03 - 1.7611507e+03 -8.7637902e+02 1.9753307e+03 - 1.7916238e+03 -8.2104058e+02 1.9801197e+03 - 1.8206663e+03 -7.6504267e+02 1.9852336e+03 - 1.8482813e+03 -7.0846459e+02 1.9906347e+03 - 1.8744765e+03 -6.5139224e+02 1.9962809e+03 - 1.8992637e+03 -5.9391909e+02 2.0021258e+03 - 1.9226593e+03 -5.3614745e+02 2.0081179e+03 - 1.9446849e+03 -4.7819003e+02 2.0142003e+03 - 1.9653673e+03 -4.2017191e+02 2.0203105e+03 - 1.9847390e+03 -3.6223309e+02 2.0263793e+03 - 2.0028391e+03 -3.0453170e+02 2.0323307e+03 - 2.0197133e+03 -2.4724819e+02 2.0380806e+03 - 2.0354149e+03 -1.9059065e+02 2.0435362e+03 - 2.0500056e+03 -1.3480177e+02 2.0485952e+03 - 2.0635559e+03 -8.0167909e+01 2.0531444e+03 - 2.0761463e+03 -2.7030791e+01 2.0570589e+03 - 2.0878678e+03 2.4197217e+01 2.0602017e+03 - 2.0988224e+03 7.3013418e+01 2.0624231e+03 - 2.1091227e+03 1.1879966e+02 2.0635622e+03 - 2.1188915e+03 1.6079101e+02 2.0634497e+03 - 2.1282575e+03 1.9803834e+02 2.0619155e+03 - 2.1373498e+03 2.2936706e+02 2.0588016e+03 - 2.1462852e+03 2.5333938e+02 2.0539860e+03 - 2.1551484e+03 2.6823658e+02 2.0474210e+03 - 2.1639606e+03 2.7209468e+02 2.0391912e+03 - 2.1726372e+03 2.6284966e+02 2.0295919e+03 - 2.1809391e+03 2.3866885e+02 2.0192144e+03 - 2.1884391e+03 1.9853170e+02 2.0090024e+03 - 2.1945367e+03 1.4301888e+02 2.0002120e+03 - 2.1985632e+03 7.5040873e+01 1.9942024e+03 - 2.1999757e+03 4.8134273e-09 1.9920594e+03 - 2.2976931e+03 -2.4067136e-09 1.8924072e+03 - 2.2958075e+03 -8.2552455e+01 1.8952031e+03 - 2.2905032e+03 -1.5614455e+02 1.9029493e+03 - 2.2826640e+03 -2.1428906e+02 1.9140299e+03 - 2.2733255e+03 -2.5401931e+02 1.9265248e+03 - 2.2633541e+03 -2.7538264e+02 1.9387856e+03 - 2.2533111e+03 -2.8023718e+02 1.9496883e+03 - 2.2434668e+03 -2.7115415e+02 1.9586200e+03 - 2.2338791e+03 -2.5072870e+02 1.9653497e+03 - 2.2244760e+03 -2.2125780e+02 1.9698882e+03 - 2.2151176e+03 -1.8464522e+02 1.9723801e+03 - 2.2056368e+03 -1.4241701e+02 1.9730328e+03 - 2.1958621e+03 -9.5778021e+01 1.9720741e+03 - 2.1856304e+03 -4.5675662e+01 1.9697299e+03 - 2.1747922e+03 7.1429747e+00 1.9662128e+03 - 2.1632135e+03 6.2084415e+01 1.9617172e+03 - 2.1507760e+03 1.1867239e+02 1.9564190e+03 - 2.1373759e+03 1.7652008e+02 1.9504758e+03 - 2.1229231e+03 2.3530921e+02 1.9440282e+03 - 2.1073391e+03 2.9477437e+02 1.9372024e+03 - 2.0905564e+03 3.5469123e+02 1.9301109e+03 - 2.0725170e+03 4.1486768e+02 1.9228548e+03 - 2.0531716e+03 4.7513715e+02 1.9155249e+03 - 2.0324784e+03 5.3535351e+02 1.9082028e+03 - 2.0104026e+03 5.9538715e+02 1.9009622e+03 - 1.9869156e+03 6.5512203e+02 1.8938697e+03 - 1.9619947e+03 7.1445334e+02 1.8869851e+03 - 1.9356223e+03 7.7328566e+02 1.8803626e+03 - 1.9077857e+03 8.3153160e+02 1.8740511e+03 - 1.8784767e+03 8.8911063e+02 1.8680944e+03 - 1.8476915e+03 9.4594822e+02 1.8625319e+03 - 1.8154299e+03 1.0019751e+03 1.8573985e+03 - 1.7816958e+03 1.0571268e+03 1.8527255e+03 - 1.7464963e+03 1.1113430e+03 1.8485401e+03 - 1.7098422e+03 1.1645673e+03 1.8448661e+03 - 1.6717473e+03 1.2167471e+03 1.8417237e+03 - 1.6322286e+03 1.2678330e+03 1.8391298e+03 - 1.5913062e+03 1.3177788e+03 1.8370982e+03 - 1.5490029e+03 1.3665416e+03 1.8356396e+03 - 1.5053447e+03 1.4140811e+03 1.8347614e+03 - 1.4603603e+03 1.4603603e+03 1.8344682e+03 - 1.4140811e+03 1.5053447e+03 1.8347614e+03 - 1.3665416e+03 1.5490029e+03 1.8356396e+03 - 1.3177788e+03 1.5913062e+03 1.8370982e+03 - 1.2678330e+03 1.6322286e+03 1.8391298e+03 - 1.2167471e+03 1.6717473e+03 1.8417237e+03 - 1.1645673e+03 1.7098422e+03 1.8448661e+03 - 1.1113430e+03 1.7464963e+03 1.8485401e+03 - 1.0571268e+03 1.7816958e+03 1.8527255e+03 - 1.0019751e+03 1.8154299e+03 1.8573985e+03 - 9.4594822e+02 1.8476915e+03 1.8625319e+03 - 8.8911063e+02 1.8784767e+03 1.8680944e+03 - 8.3153160e+02 1.9077857e+03 1.8740511e+03 - 7.7328566e+02 1.9356223e+03 1.8803626e+03 - 7.1445334e+02 1.9619947e+03 1.8869851e+03 - 6.5512203e+02 1.9869156e+03 1.8938697e+03 - 5.9538715e+02 2.0104026e+03 1.9009622e+03 - 5.3535351e+02 2.0324784e+03 1.9082028e+03 - 4.7513715e+02 2.0531716e+03 1.9155249e+03 - 4.1486768e+02 2.0725170e+03 1.9228548e+03 - 3.5469123e+02 2.0905564e+03 1.9301109e+03 - 2.9477437e+02 2.1073391e+03 1.9372024e+03 - 2.3530921e+02 2.1229231e+03 1.9440282e+03 - 1.7652008e+02 2.1373759e+03 1.9504758e+03 - 1.1867239e+02 2.1507760e+03 1.9564190e+03 - 6.2084415e+01 2.1632135e+03 1.9617172e+03 - 7.1429748e+00 2.1747922e+03 1.9662128e+03 - -4.5675662e+01 2.1856304e+03 1.9697299e+03 - -9.5778021e+01 2.1958621e+03 1.9720741e+03 - -1.4241701e+02 2.2056368e+03 1.9730328e+03 - -1.8464522e+02 2.2151176e+03 1.9723801e+03 - -2.2125780e+02 2.2244760e+03 1.9698882e+03 - -2.5072870e+02 2.2338791e+03 1.9653497e+03 - -2.7115415e+02 2.2434668e+03 1.9586200e+03 - -2.8023718e+02 2.2533111e+03 1.9496883e+03 - -2.7538264e+02 2.2633541e+03 1.9387856e+03 - -2.5401931e+02 2.2733255e+03 1.9265248e+03 - -2.1428906e+02 2.2826640e+03 1.9140299e+03 - -1.5614455e+02 2.2905032e+03 1.9029493e+03 - -8.2552455e+01 2.2958075e+03 1.8952031e+03 - -2.4067136e-09 2.2976931e+03 1.8924072e+03 - 8.2552455e+01 2.2958075e+03 1.8952031e+03 - 1.5614455e+02 2.2905032e+03 1.9029493e+03 - 2.1428906e+02 2.2826640e+03 1.9140299e+03 - 2.5401931e+02 2.2733255e+03 1.9265248e+03 - 2.7538264e+02 2.2633541e+03 1.9387856e+03 - 2.8023718e+02 2.2533111e+03 1.9496883e+03 - 2.7115415e+02 2.2434668e+03 1.9586200e+03 - 2.5072870e+02 2.2338791e+03 1.9653497e+03 - 2.2125780e+02 2.2244760e+03 1.9698882e+03 - 1.8464522e+02 2.2151176e+03 1.9723801e+03 - 1.4241701e+02 2.2056368e+03 1.9730328e+03 - 9.5778021e+01 2.1958621e+03 1.9720741e+03 - 4.5675662e+01 2.1856304e+03 1.9697299e+03 - -7.1429748e+00 2.1747922e+03 1.9662128e+03 - -6.2084415e+01 2.1632135e+03 1.9617172e+03 - -1.1867239e+02 2.1507760e+03 1.9564190e+03 - -1.7652008e+02 2.1373759e+03 1.9504758e+03 - -2.3530921e+02 2.1229231e+03 1.9440282e+03 - -2.9477437e+02 2.1073391e+03 1.9372024e+03 - -3.5469123e+02 2.0905564e+03 1.9301109e+03 - -4.1486768e+02 2.0725170e+03 1.9228548e+03 - -4.7513715e+02 2.0531716e+03 1.9155249e+03 - -5.3535351e+02 2.0324784e+03 1.9082028e+03 - -5.9538715e+02 2.0104026e+03 1.9009622e+03 - -6.5512203e+02 1.9869156e+03 1.8938697e+03 - -7.1445334e+02 1.9619947e+03 1.8869851e+03 - -7.7328566e+02 1.9356223e+03 1.8803626e+03 - -8.3153160e+02 1.9077857e+03 1.8740511e+03 - -8.8911063e+02 1.8784767e+03 1.8680944e+03 - -9.4594822e+02 1.8476915e+03 1.8625319e+03 - -1.0019751e+03 1.8154299e+03 1.8573985e+03 - -1.0571268e+03 1.7816958e+03 1.8527255e+03 - -1.1113430e+03 1.7464963e+03 1.8485401e+03 - -1.1645673e+03 1.7098422e+03 1.8448661e+03 - -1.2167471e+03 1.6717473e+03 1.8417237e+03 - -1.2678330e+03 1.6322286e+03 1.8391298e+03 - -1.3177788e+03 1.5913062e+03 1.8370982e+03 - -1.3665416e+03 1.5490029e+03 1.8356396e+03 - -1.4140811e+03 1.5053447e+03 1.8347614e+03 - -1.4603603e+03 1.4603603e+03 1.8344682e+03 - -1.5053447e+03 1.4140811e+03 1.8347614e+03 - -1.5490029e+03 1.3665416e+03 1.8356396e+03 - -1.5913062e+03 1.3177788e+03 1.8370982e+03 - -1.6322286e+03 1.2678330e+03 1.8391298e+03 - -1.6717473e+03 1.2167471e+03 1.8417237e+03 - -1.7098422e+03 1.1645673e+03 1.8448661e+03 - -1.7464963e+03 1.1113430e+03 1.8485401e+03 - -1.7816958e+03 1.0571268e+03 1.8527255e+03 - -1.8154299e+03 1.0019751e+03 1.8573985e+03 - -1.8476915e+03 9.4594822e+02 1.8625319e+03 - -1.8784767e+03 8.8911063e+02 1.8680944e+03 - -1.9077857e+03 8.3153160e+02 1.8740511e+03 - -1.9356223e+03 7.7328566e+02 1.8803626e+03 - -1.9619947e+03 7.1445334e+02 1.8869851e+03 - -1.9869156e+03 6.5512203e+02 1.8938697e+03 - -2.0104026e+03 5.9538715e+02 1.9009622e+03 - -2.0324784e+03 5.3535351e+02 1.9082028e+03 - -2.0531716e+03 4.7513715e+02 1.9155249e+03 - -2.0725170e+03 4.1486768e+02 1.9228548e+03 - -2.0905564e+03 3.5469123e+02 1.9301109e+03 - -2.1073391e+03 2.9477437e+02 1.9372024e+03 - -2.1229231e+03 2.3530921e+02 1.9440282e+03 - -2.1373759e+03 1.7652008e+02 1.9504758e+03 - -2.1507760e+03 1.1867239e+02 1.9564190e+03 - -2.1632135e+03 6.2084415e+01 1.9617172e+03 - -2.1747922e+03 7.1429748e+00 1.9662128e+03 - -2.1856304e+03 -4.5675662e+01 1.9697299e+03 - -2.1958621e+03 -9.5778021e+01 1.9720741e+03 - -2.2056368e+03 -1.4241701e+02 1.9730328e+03 - -2.2151176e+03 -1.8464522e+02 1.9723801e+03 - -2.2244760e+03 -2.2125780e+02 1.9698882e+03 - -2.2338791e+03 -2.5072870e+02 1.9653497e+03 - -2.2434668e+03 -2.7115415e+02 1.9586200e+03 - -2.2533111e+03 -2.8023718e+02 1.9496883e+03 - -2.2633541e+03 -2.7538264e+02 1.9387856e+03 - -2.2733255e+03 -2.5401931e+02 1.9265248e+03 - -2.2826640e+03 -2.1428906e+02 1.9140299e+03 - -2.2905032e+03 -1.5614455e+02 1.9029493e+03 - -2.2958075e+03 -8.2552455e+01 1.8952031e+03 - -2.2976931e+03 4.8134273e-09 1.8924072e+03 - -2.2958075e+03 8.2552455e+01 1.8952031e+03 - -2.2905032e+03 1.5614455e+02 1.9029493e+03 - -2.2826640e+03 2.1428906e+02 1.9140299e+03 - -2.2733255e+03 2.5401931e+02 1.9265248e+03 - -2.2633541e+03 2.7538264e+02 1.9387856e+03 - -2.2533111e+03 2.8023718e+02 1.9496883e+03 - -2.2434668e+03 2.7115415e+02 1.9586200e+03 - -2.2338791e+03 2.5072870e+02 1.9653497e+03 - -2.2244760e+03 2.2125780e+02 1.9698882e+03 - -2.2151176e+03 1.8464522e+02 1.9723801e+03 - -2.2056368e+03 1.4241701e+02 1.9730328e+03 - -2.1958621e+03 9.5778021e+01 1.9720741e+03 - -2.1856304e+03 4.5675662e+01 1.9697299e+03 - -2.1747922e+03 -7.1429748e+00 1.9662128e+03 - -2.1632135e+03 -6.2084415e+01 1.9617172e+03 - -2.1507760e+03 -1.1867239e+02 1.9564190e+03 - -2.1373759e+03 -1.7652008e+02 1.9504758e+03 - -2.1229231e+03 -2.3530921e+02 1.9440282e+03 - -2.1073391e+03 -2.9477437e+02 1.9372024e+03 - -2.0905564e+03 -3.5469123e+02 1.9301109e+03 - -2.0725170e+03 -4.1486768e+02 1.9228548e+03 - -2.0531716e+03 -4.7513715e+02 1.9155249e+03 - -2.0324784e+03 -5.3535351e+02 1.9082028e+03 - -2.0104026e+03 -5.9538715e+02 1.9009622e+03 - -1.9869156e+03 -6.5512203e+02 1.8938697e+03 - -1.9619947e+03 -7.1445334e+02 1.8869851e+03 - -1.9356223e+03 -7.7328566e+02 1.8803626e+03 - -1.9077857e+03 -8.3153160e+02 1.8740511e+03 - -1.8784767e+03 -8.8911063e+02 1.8680944e+03 - -1.8476915e+03 -9.4594822e+02 1.8625319e+03 - -1.8154299e+03 -1.0019751e+03 1.8573985e+03 - -1.7816958e+03 -1.0571268e+03 1.8527255e+03 - -1.7464963e+03 -1.1113430e+03 1.8485401e+03 - -1.7098422e+03 -1.1645673e+03 1.8448661e+03 - -1.6717473e+03 -1.2167471e+03 1.8417237e+03 - -1.6322286e+03 -1.2678330e+03 1.8391298e+03 - -1.5913062e+03 -1.3177788e+03 1.8370982e+03 - -1.5490029e+03 -1.3665416e+03 1.8356396e+03 - -1.5053447e+03 -1.4140811e+03 1.8347614e+03 - -1.4603603e+03 -1.4603603e+03 1.8344682e+03 - -1.4140811e+03 -1.5053447e+03 1.8347614e+03 - -1.3665416e+03 -1.5490029e+03 1.8356396e+03 - -1.3177788e+03 -1.5913062e+03 1.8370982e+03 - -1.2678330e+03 -1.6322286e+03 1.8391298e+03 - -1.2167471e+03 -1.6717473e+03 1.8417237e+03 - -1.1645673e+03 -1.7098422e+03 1.8448661e+03 - -1.1113430e+03 -1.7464963e+03 1.8485401e+03 - -1.0571268e+03 -1.7816958e+03 1.8527255e+03 - -1.0019751e+03 -1.8154299e+03 1.8573985e+03 - -9.4594822e+02 -1.8476915e+03 1.8625319e+03 - -8.8911063e+02 -1.8784767e+03 1.8680944e+03 - -8.3153160e+02 -1.9077857e+03 1.8740511e+03 - -7.7328566e+02 -1.9356223e+03 1.8803626e+03 - -7.1445334e+02 -1.9619947e+03 1.8869851e+03 - -6.5512203e+02 -1.9869156e+03 1.8938697e+03 - -5.9538715e+02 -2.0104026e+03 1.9009622e+03 - -5.3535351e+02 -2.0324784e+03 1.9082028e+03 - -4.7513715e+02 -2.0531716e+03 1.9155249e+03 - -4.1486768e+02 -2.0725170e+03 1.9228548e+03 - -3.5469123e+02 -2.0905564e+03 1.9301109e+03 - -2.9477437e+02 -2.1073391e+03 1.9372024e+03 - -2.3530921e+02 -2.1229231e+03 1.9440282e+03 - -1.7652008e+02 -2.1373759e+03 1.9504758e+03 - -1.1867239e+02 -2.1507760e+03 1.9564190e+03 - -6.2084415e+01 -2.1632135e+03 1.9617172e+03 - -7.1429748e+00 -2.1747922e+03 1.9662128e+03 - 4.5675662e+01 -2.1856304e+03 1.9697299e+03 - 9.5778021e+01 -2.1958621e+03 1.9720741e+03 - 1.4241701e+02 -2.2056368e+03 1.9730328e+03 - 1.8464522e+02 -2.2151176e+03 1.9723801e+03 - 2.2125780e+02 -2.2244760e+03 1.9698882e+03 - 2.5072870e+02 -2.2338791e+03 1.9653497e+03 - 2.7115415e+02 -2.2434668e+03 1.9586200e+03 - 2.8023718e+02 -2.2533111e+03 1.9496883e+03 - 2.7538264e+02 -2.2633541e+03 1.9387856e+03 - 2.5401931e+02 -2.2733255e+03 1.9265248e+03 - 2.1428906e+02 -2.2826640e+03 1.9140299e+03 - 1.5614455e+02 -2.2905032e+03 1.9029493e+03 - 8.2552455e+01 -2.2958075e+03 1.8952031e+03 - 2.4067136e-09 -2.2976931e+03 1.8924072e+03 - -8.2552455e+01 -2.2958075e+03 1.8952031e+03 - -1.5614455e+02 -2.2905032e+03 1.9029493e+03 - -2.1428906e+02 -2.2826640e+03 1.9140299e+03 - -2.5401931e+02 -2.2733255e+03 1.9265248e+03 - -2.7538264e+02 -2.2633541e+03 1.9387856e+03 - -2.8023718e+02 -2.2533111e+03 1.9496883e+03 - -2.7115415e+02 -2.2434668e+03 1.9586200e+03 - -2.5072870e+02 -2.2338791e+03 1.9653497e+03 - -2.2125780e+02 -2.2244760e+03 1.9698882e+03 - -1.8464522e+02 -2.2151176e+03 1.9723801e+03 - -1.4241701e+02 -2.2056368e+03 1.9730328e+03 - -9.5778021e+01 -2.1958621e+03 1.9720741e+03 - -4.5675662e+01 -2.1856304e+03 1.9697299e+03 - 7.1429748e+00 -2.1747922e+03 1.9662128e+03 - 6.2084415e+01 -2.1632135e+03 1.9617172e+03 - 1.1867239e+02 -2.1507760e+03 1.9564190e+03 - 1.7652008e+02 -2.1373759e+03 1.9504758e+03 - 2.3530921e+02 -2.1229231e+03 1.9440282e+03 - 2.9477437e+02 -2.1073391e+03 1.9372024e+03 - 3.5469123e+02 -2.0905564e+03 1.9301109e+03 - 4.1486768e+02 -2.0725170e+03 1.9228548e+03 - 4.7513715e+02 -2.0531716e+03 1.9155249e+03 - 5.3535351e+02 -2.0324784e+03 1.9082028e+03 - 5.9538715e+02 -2.0104026e+03 1.9009622e+03 - 6.5512203e+02 -1.9869156e+03 1.8938697e+03 - 7.1445334e+02 -1.9619947e+03 1.8869851e+03 - 7.7328566e+02 -1.9356223e+03 1.8803626e+03 - 8.3153160e+02 -1.9077857e+03 1.8740511e+03 - 8.8911063e+02 -1.8784767e+03 1.8680944e+03 - 9.4594822e+02 -1.8476915e+03 1.8625319e+03 - 1.0019751e+03 -1.8154299e+03 1.8573985e+03 - 1.0571268e+03 -1.7816958e+03 1.8527255e+03 - 1.1113430e+03 -1.7464963e+03 1.8485401e+03 - 1.1645673e+03 -1.7098422e+03 1.8448661e+03 - 1.2167471e+03 -1.6717473e+03 1.8417237e+03 - 1.2678330e+03 -1.6322286e+03 1.8391298e+03 - 1.3177788e+03 -1.5913062e+03 1.8370982e+03 - 1.3665416e+03 -1.5490029e+03 1.8356396e+03 - 1.4140811e+03 -1.5053447e+03 1.8347614e+03 - 1.4603603e+03 -1.4603603e+03 1.8344682e+03 - 1.5053447e+03 -1.4140811e+03 1.8347614e+03 - 1.5490029e+03 -1.3665416e+03 1.8356396e+03 - 1.5913062e+03 -1.3177788e+03 1.8370982e+03 - 1.6322286e+03 -1.2678330e+03 1.8391298e+03 - 1.6717473e+03 -1.2167471e+03 1.8417237e+03 - 1.7098422e+03 -1.1645673e+03 1.8448661e+03 - 1.7464963e+03 -1.1113430e+03 1.8485401e+03 - 1.7816958e+03 -1.0571268e+03 1.8527255e+03 - 1.8154299e+03 -1.0019751e+03 1.8573985e+03 - 1.8476915e+03 -9.4594822e+02 1.8625319e+03 - 1.8784767e+03 -8.8911063e+02 1.8680944e+03 - 1.9077857e+03 -8.3153160e+02 1.8740511e+03 - 1.9356223e+03 -7.7328566e+02 1.8803626e+03 - 1.9619947e+03 -7.1445334e+02 1.8869851e+03 - 1.9869156e+03 -6.5512203e+02 1.8938697e+03 - 2.0104026e+03 -5.9538715e+02 1.9009622e+03 - 2.0324784e+03 -5.3535351e+02 1.9082028e+03 - 2.0531716e+03 -4.7513715e+02 1.9155249e+03 - 2.0725170e+03 -4.1486768e+02 1.9228548e+03 - 2.0905564e+03 -3.5469123e+02 1.9301109e+03 - 2.1073391e+03 -2.9477437e+02 1.9372024e+03 - 2.1229231e+03 -2.3530921e+02 1.9440282e+03 - 2.1373759e+03 -1.7652008e+02 1.9504758e+03 - 2.1507760e+03 -1.1867239e+02 1.9564190e+03 - 2.1632135e+03 -6.2084415e+01 1.9617172e+03 - 2.1747922e+03 -7.1429748e+00 1.9662128e+03 - 2.1856304e+03 4.5675662e+01 1.9697299e+03 - 2.1958621e+03 9.5778021e+01 1.9720741e+03 - 2.2056368e+03 1.4241701e+02 1.9730328e+03 - 2.2151176e+03 1.8464522e+02 1.9723801e+03 - 2.2244760e+03 2.2125780e+02 1.9698882e+03 - 2.2338791e+03 2.5072870e+02 1.9653497e+03 - 2.2434668e+03 2.7115415e+02 1.9586200e+03 - 2.2533111e+03 2.8023718e+02 1.9496883e+03 - 2.2633541e+03 2.7538264e+02 1.9387856e+03 - 2.2733255e+03 2.5401931e+02 1.9265248e+03 - 2.2826640e+03 2.1428906e+02 1.9140299e+03 - 2.2905032e+03 1.5614455e+02 1.9029493e+03 - 2.2958075e+03 8.2552455e+01 1.8952031e+03 - 2.2976931e+03 -2.4067136e-09 1.8924072e+03 - 2.3924051e+03 0.0000000e+00 1.7919493e+03 - 2.3898091e+03 -9.2713679e+01 1.7957308e+03 - 2.3826338e+03 -1.7361062e+02 1.8060368e+03 - 2.3723585e+03 -2.3478577e+02 1.8203471e+03 - 2.3606009e+03 -2.7351145e+02 1.8358733e+03 - 2.3485862e+03 -2.9097681e+02 1.8504520e+03 - 2.3370043e+03 -2.9028680e+02 1.8627988e+03 - 2.3261093e+03 -2.7497015e+02 1.8723574e+03 - 2.3158797e+03 -2.4822721e+02 1.8790415e+03 - 2.3061504e+03 -2.1268444e+02 1.8830196e+03 - 2.2966968e+03 -1.7039678e+02 1.8845750e+03 - 2.2872829e+03 -1.2293879e+02 1.8840257e+03 - 2.2776838e+03 -7.1510259e+01 1.8816842e+03 - 2.2676961e+03 -1.7028596e+01 1.8778396e+03 - 2.2571402e+03 3.9798293e+01 1.8727512e+03 - 2.2458599e+03 9.8417308e+01 1.8666486e+03 - 2.2337204e+03 1.5838998e+02 1.8597335e+03 - 2.2206058e+03 2.1936325e+02 1.8521830e+03 - 2.2064168e+03 2.8104822e+02 1.8441530e+03 - 2.1910684e+03 3.4320473e+02 1.8357809e+03 - 2.1744881e+03 4.0562997e+02 1.8271883e+03 - 2.1566142e+03 4.6815018e+02 1.8184834e+03 - 2.1373949e+03 5.3061443e+02 1.8097623e+03 - 2.1167864e+03 5.9288995e+02 1.8011114e+03 - 2.0947526e+03 6.5485862e+02 1.7926078e+03 - 2.0712640e+03 7.1641430e+02 1.7843209e+03 - 2.0462973e+03 7.7746078e+02 1.7763130e+03 - 2.0198346e+03 8.3791014e+02 1.7686400e+03 - 1.9918629e+03 8.9768158e+02 1.7613522e+03 - 1.9623740e+03 9.5670037e+02 1.7544948e+03 - 1.9313638e+03 1.0148971e+03 1.7481080e+03 - 1.8988323e+03 1.0722072e+03 1.7422275e+03 - 1.8647831e+03 1.1285700e+03 1.7368850e+03 - 1.8292234e+03 1.1839291e+03 1.7321082e+03 - 1.7921636e+03 1.2382314e+03 1.7279212e+03 - 1.7536173e+03 1.2914269e+03 1.7243445e+03 - 1.7136012e+03 1.3434691e+03 1.7213951e+03 - 1.6721346e+03 1.3943140e+03 1.7190870e+03 - 1.6292400e+03 1.4439208e+03 1.7174307e+03 - 1.5849423e+03 1.4922510e+03 1.7164340e+03 - 1.5392692e+03 1.5392692e+03 1.7161012e+03 - 1.4922510e+03 1.5849423e+03 1.7164340e+03 - 1.4439208e+03 1.6292400e+03 1.7174307e+03 - 1.3943140e+03 1.6721346e+03 1.7190870e+03 - 1.3434691e+03 1.7136012e+03 1.7213951e+03 - 1.2914269e+03 1.7536173e+03 1.7243445e+03 - 1.2382314e+03 1.7921636e+03 1.7279212e+03 - 1.1839291e+03 1.8292234e+03 1.7321082e+03 - 1.1285700e+03 1.8647831e+03 1.7368850e+03 - 1.0722072e+03 1.8988323e+03 1.7422275e+03 - 1.0148971e+03 1.9313638e+03 1.7481080e+03 - 9.5670037e+02 1.9623740e+03 1.7544948e+03 - 8.9768158e+02 1.9918629e+03 1.7613522e+03 - 8.3791014e+02 2.0198346e+03 1.7686400e+03 - 7.7746078e+02 2.0462973e+03 1.7763130e+03 - 7.1641430e+02 2.0712640e+03 1.7843209e+03 - 6.5485862e+02 2.0947526e+03 1.7926078e+03 - 5.9288995e+02 2.1167864e+03 1.8011114e+03 - 5.3061443e+02 2.1373949e+03 1.8097623e+03 - 4.6815018e+02 2.1566142e+03 1.8184834e+03 - 4.0562997e+02 2.1744881e+03 1.8271883e+03 - 3.4320473e+02 2.1910684e+03 1.8357809e+03 - 2.8104822e+02 2.2064168e+03 1.8441530e+03 - 2.1936325e+02 2.2206058e+03 1.8521830e+03 - 1.5838998e+02 2.2337204e+03 1.8597335e+03 - 9.8417308e+01 2.2458599e+03 1.8666486e+03 - 3.9798293e+01 2.2571402e+03 1.8727512e+03 - -1.7028596e+01 2.2676961e+03 1.8778396e+03 - -7.1510259e+01 2.2776838e+03 1.8816842e+03 - -1.2293879e+02 2.2872829e+03 1.8840257e+03 - -1.7039678e+02 2.2966968e+03 1.8845750e+03 - -2.1268444e+02 2.3061504e+03 1.8830196e+03 - -2.4822721e+02 2.3158797e+03 1.8790415e+03 - -2.7497015e+02 2.3261093e+03 1.8723574e+03 - -2.9028680e+02 2.3370043e+03 1.8627988e+03 - -2.9097681e+02 2.3485862e+03 1.8504520e+03 - -2.7351145e+02 2.3606009e+03 1.8358733e+03 - -2.3478577e+02 2.3723585e+03 1.8203471e+03 - -1.7361062e+02 2.3826338e+03 1.8060368e+03 - -9.2713679e+01 2.3898091e+03 1.7957308e+03 - 4.8134273e-09 2.3924051e+03 1.7919493e+03 - 9.2713679e+01 2.3898091e+03 1.7957308e+03 - 1.7361062e+02 2.3826338e+03 1.8060368e+03 - 2.3478577e+02 2.3723585e+03 1.8203471e+03 - 2.7351145e+02 2.3606009e+03 1.8358733e+03 - 2.9097681e+02 2.3485862e+03 1.8504520e+03 - 2.9028680e+02 2.3370043e+03 1.8627988e+03 - 2.7497015e+02 2.3261093e+03 1.8723574e+03 - 2.4822721e+02 2.3158797e+03 1.8790415e+03 - 2.1268444e+02 2.3061504e+03 1.8830196e+03 - 1.7039678e+02 2.2966968e+03 1.8845750e+03 - 1.2293879e+02 2.2872829e+03 1.8840257e+03 - 7.1510259e+01 2.2776838e+03 1.8816842e+03 - 1.7028596e+01 2.2676961e+03 1.8778396e+03 - -3.9798293e+01 2.2571402e+03 1.8727512e+03 - -9.8417308e+01 2.2458599e+03 1.8666486e+03 - -1.5838998e+02 2.2337204e+03 1.8597335e+03 - -2.1936325e+02 2.2206058e+03 1.8521830e+03 - -2.8104822e+02 2.2064168e+03 1.8441530e+03 - -3.4320473e+02 2.1910684e+03 1.8357809e+03 - -4.0562997e+02 2.1744881e+03 1.8271883e+03 - -4.6815018e+02 2.1566142e+03 1.8184834e+03 - -5.3061443e+02 2.1373949e+03 1.8097623e+03 - -5.9288995e+02 2.1167864e+03 1.8011114e+03 - -6.5485862e+02 2.0947526e+03 1.7926078e+03 - -7.1641430e+02 2.0712640e+03 1.7843209e+03 - -7.7746078e+02 2.0462973e+03 1.7763130e+03 - -8.3791014e+02 2.0198346e+03 1.7686400e+03 - -8.9768158e+02 1.9918629e+03 1.7613522e+03 - -9.5670037e+02 1.9623740e+03 1.7544948e+03 - -1.0148971e+03 1.9313638e+03 1.7481080e+03 - -1.0722072e+03 1.8988323e+03 1.7422275e+03 - -1.1285700e+03 1.8647831e+03 1.7368850e+03 - -1.1839291e+03 1.8292234e+03 1.7321082e+03 - -1.2382314e+03 1.7921636e+03 1.7279212e+03 - -1.2914269e+03 1.7536173e+03 1.7243445e+03 - -1.3434691e+03 1.7136012e+03 1.7213951e+03 - -1.3943140e+03 1.6721346e+03 1.7190870e+03 - -1.4439208e+03 1.6292400e+03 1.7174307e+03 - -1.4922510e+03 1.5849423e+03 1.7164340e+03 - -1.5392692e+03 1.5392692e+03 1.7161012e+03 - -1.5849423e+03 1.4922510e+03 1.7164340e+03 - -1.6292400e+03 1.4439208e+03 1.7174307e+03 - -1.6721346e+03 1.3943140e+03 1.7190870e+03 - -1.7136012e+03 1.3434691e+03 1.7213951e+03 - -1.7536173e+03 1.2914269e+03 1.7243445e+03 - -1.7921636e+03 1.2382314e+03 1.7279212e+03 - -1.8292234e+03 1.1839291e+03 1.7321082e+03 - -1.8647831e+03 1.1285700e+03 1.7368850e+03 - -1.8988323e+03 1.0722072e+03 1.7422275e+03 - -1.9313638e+03 1.0148971e+03 1.7481080e+03 - -1.9623740e+03 9.5670037e+02 1.7544948e+03 - -1.9918629e+03 8.9768158e+02 1.7613522e+03 - -2.0198346e+03 8.3791014e+02 1.7686400e+03 - -2.0462973e+03 7.7746078e+02 1.7763130e+03 - -2.0712640e+03 7.1641430e+02 1.7843209e+03 - -2.0947526e+03 6.5485862e+02 1.7926078e+03 - -2.1167864e+03 5.9288995e+02 1.8011114e+03 - -2.1373949e+03 5.3061443e+02 1.8097623e+03 - -2.1566142e+03 4.6815018e+02 1.8184834e+03 - -2.1744881e+03 4.0562997e+02 1.8271883e+03 - -2.1910684e+03 3.4320473e+02 1.8357809e+03 - -2.2064168e+03 2.8104822e+02 1.8441530e+03 - -2.2206058e+03 2.1936325e+02 1.8521830e+03 - -2.2337204e+03 1.5838998e+02 1.8597335e+03 - -2.2458599e+03 9.8417308e+01 1.8666486e+03 - -2.2571402e+03 3.9798293e+01 1.8727512e+03 - -2.2676961e+03 -1.7028596e+01 1.8778396e+03 - -2.2776838e+03 -7.1510259e+01 1.8816842e+03 - -2.2872829e+03 -1.2293879e+02 1.8840257e+03 - -2.2966968e+03 -1.7039678e+02 1.8845750e+03 - -2.3061504e+03 -2.1268444e+02 1.8830196e+03 - -2.3158797e+03 -2.4822721e+02 1.8790415e+03 - -2.3261093e+03 -2.7497015e+02 1.8723574e+03 - -2.3370043e+03 -2.9028680e+02 1.8627988e+03 - -2.3485862e+03 -2.9097681e+02 1.8504520e+03 - -2.3606009e+03 -2.7351145e+02 1.8358733e+03 - -2.3723585e+03 -2.3478577e+02 1.8203471e+03 - -2.3826338e+03 -1.7361062e+02 1.8060368e+03 - -2.3898091e+03 -9.2713679e+01 1.7957308e+03 - -2.3924051e+03 0.0000000e+00 1.7919493e+03 - -2.3898091e+03 9.2713679e+01 1.7957308e+03 - -2.3826338e+03 1.7361062e+02 1.8060368e+03 - -2.3723585e+03 2.3478577e+02 1.8203471e+03 - -2.3606009e+03 2.7351145e+02 1.8358733e+03 - -2.3485862e+03 2.9097681e+02 1.8504520e+03 - -2.3370043e+03 2.9028680e+02 1.8627988e+03 - -2.3261093e+03 2.7497015e+02 1.8723574e+03 - -2.3158797e+03 2.4822721e+02 1.8790415e+03 - -2.3061504e+03 2.1268444e+02 1.8830196e+03 - -2.2966968e+03 1.7039678e+02 1.8845750e+03 - -2.2872829e+03 1.2293879e+02 1.8840257e+03 - -2.2776838e+03 7.1510259e+01 1.8816842e+03 - -2.2676961e+03 1.7028596e+01 1.8778396e+03 - -2.2571402e+03 -3.9798293e+01 1.8727512e+03 - -2.2458599e+03 -9.8417308e+01 1.8666486e+03 - -2.2337204e+03 -1.5838998e+02 1.8597335e+03 - -2.2206058e+03 -2.1936325e+02 1.8521830e+03 - -2.2064168e+03 -2.8104822e+02 1.8441530e+03 - -2.1910684e+03 -3.4320473e+02 1.8357809e+03 - -2.1744881e+03 -4.0562997e+02 1.8271883e+03 - -2.1566142e+03 -4.6815018e+02 1.8184834e+03 - -2.1373949e+03 -5.3061443e+02 1.8097623e+03 - -2.1167864e+03 -5.9288995e+02 1.8011114e+03 - -2.0947526e+03 -6.5485862e+02 1.7926078e+03 - -2.0712640e+03 -7.1641430e+02 1.7843209e+03 - -2.0462973e+03 -7.7746078e+02 1.7763130e+03 - -2.0198346e+03 -8.3791014e+02 1.7686400e+03 - -1.9918629e+03 -8.9768158e+02 1.7613522e+03 - -1.9623740e+03 -9.5670037e+02 1.7544948e+03 - -1.9313638e+03 -1.0148971e+03 1.7481080e+03 - -1.8988323e+03 -1.0722072e+03 1.7422275e+03 - -1.8647831e+03 -1.1285700e+03 1.7368850e+03 - -1.8292234e+03 -1.1839291e+03 1.7321082e+03 - -1.7921636e+03 -1.2382314e+03 1.7279212e+03 - -1.7536173e+03 -1.2914269e+03 1.7243445e+03 - -1.7136012e+03 -1.3434691e+03 1.7213951e+03 - -1.6721346e+03 -1.3943140e+03 1.7190870e+03 - -1.6292400e+03 -1.4439208e+03 1.7174307e+03 - -1.5849423e+03 -1.4922510e+03 1.7164340e+03 - -1.5392692e+03 -1.5392692e+03 1.7161012e+03 - -1.4922510e+03 -1.5849423e+03 1.7164340e+03 - -1.4439208e+03 -1.6292400e+03 1.7174307e+03 - -1.3943140e+03 -1.6721346e+03 1.7190870e+03 - -1.3434691e+03 -1.7136012e+03 1.7213951e+03 - -1.2914269e+03 -1.7536173e+03 1.7243445e+03 - -1.2382314e+03 -1.7921636e+03 1.7279212e+03 - -1.1839291e+03 -1.8292234e+03 1.7321082e+03 - -1.1285700e+03 -1.8647831e+03 1.7368850e+03 - -1.0722072e+03 -1.8988323e+03 1.7422275e+03 - -1.0148971e+03 -1.9313638e+03 1.7481080e+03 - -9.5670037e+02 -1.9623740e+03 1.7544948e+03 - -8.9768158e+02 -1.9918629e+03 1.7613522e+03 - -8.3791014e+02 -2.0198346e+03 1.7686400e+03 - -7.7746078e+02 -2.0462973e+03 1.7763130e+03 - -7.1641430e+02 -2.0712640e+03 1.7843209e+03 - -6.5485862e+02 -2.0947526e+03 1.7926078e+03 - -5.9288995e+02 -2.1167864e+03 1.8011114e+03 - -5.3061443e+02 -2.1373949e+03 1.8097623e+03 - -4.6815018e+02 -2.1566142e+03 1.8184834e+03 - -4.0562997e+02 -2.1744881e+03 1.8271883e+03 - -3.4320473e+02 -2.1910684e+03 1.8357809e+03 - -2.8104822e+02 -2.2064168e+03 1.8441530e+03 - -2.1936325e+02 -2.2206058e+03 1.8521830e+03 - -1.5838998e+02 -2.2337204e+03 1.8597335e+03 - -9.8417308e+01 -2.2458599e+03 1.8666486e+03 - -3.9798293e+01 -2.2571402e+03 1.8727512e+03 - 1.7028596e+01 -2.2676961e+03 1.8778396e+03 - 7.1510259e+01 -2.2776838e+03 1.8816842e+03 - 1.2293879e+02 -2.2872829e+03 1.8840257e+03 - 1.7039678e+02 -2.2966968e+03 1.8845750e+03 - 2.1268444e+02 -2.3061504e+03 1.8830196e+03 - 2.4822721e+02 -2.3158797e+03 1.8790415e+03 - 2.7497015e+02 -2.3261093e+03 1.8723574e+03 - 2.9028680e+02 -2.3370043e+03 1.8627988e+03 - 2.9097681e+02 -2.3485862e+03 1.8504520e+03 - 2.7351145e+02 -2.3606009e+03 1.8358733e+03 - 2.3478577e+02 -2.3723585e+03 1.8203471e+03 - 1.7361062e+02 -2.3826338e+03 1.8060368e+03 - 9.2713679e+01 -2.3898091e+03 1.7957308e+03 - -4.8134273e-09 -2.3924051e+03 1.7919493e+03 - -9.2713679e+01 -2.3898091e+03 1.7957308e+03 - -1.7361062e+02 -2.3826338e+03 1.8060368e+03 - -2.3478577e+02 -2.3723585e+03 1.8203471e+03 - -2.7351145e+02 -2.3606009e+03 1.8358733e+03 - -2.9097681e+02 -2.3485862e+03 1.8504520e+03 - -2.9028680e+02 -2.3370043e+03 1.8627988e+03 - -2.7497015e+02 -2.3261093e+03 1.8723574e+03 - -2.4822721e+02 -2.3158797e+03 1.8790415e+03 - -2.1268444e+02 -2.3061504e+03 1.8830196e+03 - -1.7039678e+02 -2.2966968e+03 1.8845750e+03 - -1.2293879e+02 -2.2872829e+03 1.8840257e+03 - -7.1510259e+01 -2.2776838e+03 1.8816842e+03 - -1.7028596e+01 -2.2676961e+03 1.8778396e+03 - 3.9798293e+01 -2.2571402e+03 1.8727512e+03 - 9.8417308e+01 -2.2458599e+03 1.8666486e+03 - 1.5838998e+02 -2.2337204e+03 1.8597335e+03 - 2.1936325e+02 -2.2206058e+03 1.8521830e+03 - 2.8104822e+02 -2.2064168e+03 1.8441530e+03 - 3.4320473e+02 -2.1910684e+03 1.8357809e+03 - 4.0562997e+02 -2.1744881e+03 1.8271883e+03 - 4.6815018e+02 -2.1566142e+03 1.8184834e+03 - 5.3061443e+02 -2.1373949e+03 1.8097623e+03 - 5.9288995e+02 -2.1167864e+03 1.8011114e+03 - 6.5485862e+02 -2.0947526e+03 1.7926078e+03 - 7.1641430e+02 -2.0712640e+03 1.7843209e+03 - 7.7746078e+02 -2.0462973e+03 1.7763130e+03 - 8.3791014e+02 -2.0198346e+03 1.7686400e+03 - 8.9768158e+02 -1.9918629e+03 1.7613522e+03 - 9.5670037e+02 -1.9623740e+03 1.7544948e+03 - 1.0148971e+03 -1.9313638e+03 1.7481080e+03 - 1.0722072e+03 -1.8988323e+03 1.7422275e+03 - 1.1285700e+03 -1.8647831e+03 1.7368850e+03 - 1.1839291e+03 -1.8292234e+03 1.7321082e+03 - 1.2382314e+03 -1.7921636e+03 1.7279212e+03 - 1.2914269e+03 -1.7536173e+03 1.7243445e+03 - 1.3434691e+03 -1.7136012e+03 1.7213951e+03 - 1.3943140e+03 -1.6721346e+03 1.7190870e+03 - 1.4439208e+03 -1.6292400e+03 1.7174307e+03 - 1.4922510e+03 -1.5849423e+03 1.7164340e+03 - 1.5392692e+03 -1.5392692e+03 1.7161012e+03 - 1.5849423e+03 -1.4922510e+03 1.7164340e+03 - 1.6292400e+03 -1.4439208e+03 1.7174307e+03 - 1.6721346e+03 -1.3943140e+03 1.7190870e+03 - 1.7136012e+03 -1.3434691e+03 1.7213951e+03 - 1.7536173e+03 -1.2914269e+03 1.7243445e+03 - 1.7921636e+03 -1.2382314e+03 1.7279212e+03 - 1.8292234e+03 -1.1839291e+03 1.7321082e+03 - 1.8647831e+03 -1.1285700e+03 1.7368850e+03 - 1.8988323e+03 -1.0722072e+03 1.7422275e+03 - 1.9313638e+03 -1.0148971e+03 1.7481080e+03 - 1.9623740e+03 -9.5670037e+02 1.7544948e+03 - 1.9918629e+03 -8.9768158e+02 1.7613522e+03 - 2.0198346e+03 -8.3791014e+02 1.7686400e+03 - 2.0462973e+03 -7.7746078e+02 1.7763130e+03 - 2.0712640e+03 -7.1641430e+02 1.7843209e+03 - 2.0947526e+03 -6.5485862e+02 1.7926078e+03 - 2.1167864e+03 -5.9288995e+02 1.8011114e+03 - 2.1373949e+03 -5.3061443e+02 1.8097623e+03 - 2.1566142e+03 -4.6815018e+02 1.8184834e+03 - 2.1744881e+03 -4.0562997e+02 1.8271883e+03 - 2.1910684e+03 -3.4320473e+02 1.8357809e+03 - 2.2064168e+03 -2.8104822e+02 1.8441530e+03 - 2.2206058e+03 -2.1936325e+02 1.8521830e+03 - 2.2337204e+03 -1.5838998e+02 1.8597335e+03 - 2.2458599e+03 -9.8417308e+01 1.8666486e+03 - 2.2571402e+03 -3.9798293e+01 1.8727512e+03 - 2.2676961e+03 1.7028596e+01 1.8778396e+03 - 2.2776838e+03 7.1510259e+01 1.8816842e+03 - 2.2872829e+03 1.2293879e+02 1.8840257e+03 - 2.2966968e+03 1.7039678e+02 1.8845750e+03 - 2.3061504e+03 2.1268444e+02 1.8830196e+03 - 2.3158797e+03 2.4822721e+02 1.8790415e+03 - 2.3261093e+03 2.7497015e+02 1.8723574e+03 - 2.3370043e+03 2.9028680e+02 1.8627988e+03 - 2.3485862e+03 2.9097681e+02 1.8504520e+03 - 2.3606009e+03 2.7351145e+02 1.8358733e+03 - 2.3723585e+03 2.3478577e+02 1.8203471e+03 - 2.3826338e+03 1.7361062e+02 1.8060368e+03 - 2.3898091e+03 9.2713679e+01 1.7957308e+03 - 2.3924051e+03 0.0000000e+00 1.7919493e+03 - 2.4838752e+03 -4.8134273e-09 1.6910326e+03 - 2.4801508e+03 -1.0688127e+02 1.6963877e+03 - 2.4701078e+03 -1.9735821e+02 1.7106403e+03 - 2.4563331e+03 -2.6171247e+02 1.7296238e+03 - 2.4413831e+03 -2.9819151e+02 1.7491772e+03 - 2.4269292e+03 -3.1004656e+02 1.7665157e+03 - 2.4137194e+03 -3.0221029e+02 1.7803126e+03 - 2.4018831e+03 -2.7939548e+02 1.7902329e+03 - 2.3912292e+03 -2.4543052e+02 1.7964667e+03 - 2.3814393e+03 -2.0321414e+02 1.7994258e+03 - 2.3721690e+03 -1.5487933e+02 1.7995804e+03 - 2.3630939e+03 -1.0198493e+02 1.7973845e+03 - 2.3539265e+03 -4.5676244e+01 1.7932467e+03 - 2.3444195e+03 1.3194983e+01 1.7875233e+03 - 2.3343624e+03 7.3985048e+01 1.7805207e+03 - 2.3235778e+03 1.3619849e+02 1.7725016e+03 - 2.3119159e+03 1.9944650e+02 1.7636913e+03 - 2.2992506e+03 2.6341794e+02 1.7542840e+03 - 2.2854755e+03 3.2785894e+02 1.7444478e+03 - 2.2705006e+03 3.9255850e+02 1.7343293e+03 - 2.2542504e+03 4.5733815e+02 1.7240567e+03 - 2.2366612e+03 5.2204447e+02 1.7137432e+03 - 2.2176797e+03 5.8654364e+02 1.7034889e+03 - 2.1972618e+03 6.5071736e+02 1.6933828e+03 - 2.1753711e+03 7.1445984e+02 1.6835042e+03 - 2.1519784e+03 7.7767555e+02 1.6739238e+03 - 2.1270606e+03 8.4027739e+02 1.6647052e+03 - 2.1006002e+03 9.0218544e+02 1.6559051e+03 - 2.0725851e+03 9.6332585e+02 1.6475741e+03 - 2.0430073e+03 1.0236300e+03 1.6397576e+03 - 2.0118634e+03 1.0830341e+03 1.6324960e+03 - 1.9791540e+03 1.1414781e+03 1.6258249e+03 - 1.9448830e+03 1.1989059e+03 1.6197759e+03 - 1.9090579e+03 1.2552648e+03 1.6143766e+03 - 1.8716894e+03 1.3105051e+03 1.6096506e+03 - 1.8327911e+03 1.3645801e+03 1.6056184e+03 - 1.7923795e+03 1.4174456e+03 1.6022967e+03 - 1.7504738e+03 1.4690604e+03 1.5996992e+03 - 1.7070959e+03 1.5193855e+03 1.5978364e+03 - 1.6622700e+03 1.5683844e+03 1.5967158e+03 - 1.6160231e+03 1.6160231e+03 1.5963418e+03 - 1.5683844e+03 1.6622700e+03 1.5967158e+03 - 1.5193855e+03 1.7070959e+03 1.5978364e+03 - 1.4690604e+03 1.7504738e+03 1.5996992e+03 - 1.4174456e+03 1.7923795e+03 1.6022967e+03 - 1.3645801e+03 1.8327911e+03 1.6056184e+03 - 1.3105051e+03 1.8716894e+03 1.6096506e+03 - 1.2552648e+03 1.9090579e+03 1.6143766e+03 - 1.1989059e+03 1.9448830e+03 1.6197759e+03 - 1.1414781e+03 1.9791540e+03 1.6258249e+03 - 1.0830341e+03 2.0118634e+03 1.6324960e+03 - 1.0236300e+03 2.0430073e+03 1.6397576e+03 - 9.6332585e+02 2.0725851e+03 1.6475741e+03 - 9.0218544e+02 2.1006002e+03 1.6559051e+03 - 8.4027739e+02 2.1270606e+03 1.6647052e+03 - 7.7767555e+02 2.1519784e+03 1.6739238e+03 - 7.1445984e+02 2.1753711e+03 1.6835042e+03 - 6.5071736e+02 2.1972618e+03 1.6933828e+03 - 5.8654364e+02 2.2176797e+03 1.7034889e+03 - 5.2204447e+02 2.2366612e+03 1.7137432e+03 - 4.5733815e+02 2.2542504e+03 1.7240567e+03 - 3.9255850e+02 2.2705006e+03 1.7343293e+03 - 3.2785894e+02 2.2854755e+03 1.7444478e+03 - 2.6341794e+02 2.2992506e+03 1.7542840e+03 - 1.9944650e+02 2.3119159e+03 1.7636913e+03 - 1.3619849e+02 2.3235778e+03 1.7725016e+03 - 7.3985048e+01 2.3343624e+03 1.7805207e+03 - 1.3194983e+01 2.3444195e+03 1.7875233e+03 - -4.5676244e+01 2.3539265e+03 1.7932467e+03 - -1.0198493e+02 2.3630939e+03 1.7973845e+03 - -1.5487933e+02 2.3721690e+03 1.7995804e+03 - -2.0321414e+02 2.3814393e+03 1.7994258e+03 - -2.4543052e+02 2.3912292e+03 1.7964667e+03 - -2.7939548e+02 2.4018831e+03 1.7902329e+03 - -3.0221029e+02 2.4137194e+03 1.7803126e+03 - -3.1004656e+02 2.4269292e+03 1.7665157e+03 - -2.9819151e+02 2.4413831e+03 1.7491772e+03 - -2.6171247e+02 2.4563331e+03 1.7296238e+03 - -1.9735821e+02 2.4701078e+03 1.7106403e+03 - -1.0688127e+02 2.4801508e+03 1.6963877e+03 - 2.4067136e-09 2.4838752e+03 1.6910326e+03 - 1.0688127e+02 2.4801508e+03 1.6963877e+03 - 1.9735821e+02 2.4701078e+03 1.7106403e+03 - 2.6171247e+02 2.4563331e+03 1.7296238e+03 - 2.9819151e+02 2.4413831e+03 1.7491772e+03 - 3.1004656e+02 2.4269292e+03 1.7665157e+03 - 3.0221029e+02 2.4137194e+03 1.7803126e+03 - 2.7939548e+02 2.4018831e+03 1.7902329e+03 - 2.4543052e+02 2.3912292e+03 1.7964667e+03 - 2.0321414e+02 2.3814393e+03 1.7994258e+03 - 1.5487933e+02 2.3721690e+03 1.7995804e+03 - 1.0198493e+02 2.3630939e+03 1.7973845e+03 - 4.5676244e+01 2.3539265e+03 1.7932467e+03 - -1.3194983e+01 2.3444195e+03 1.7875233e+03 - -7.3985048e+01 2.3343624e+03 1.7805207e+03 - -1.3619849e+02 2.3235778e+03 1.7725016e+03 - -1.9944650e+02 2.3119159e+03 1.7636913e+03 - -2.6341794e+02 2.2992506e+03 1.7542840e+03 - -3.2785894e+02 2.2854755e+03 1.7444478e+03 - -3.9255850e+02 2.2705006e+03 1.7343293e+03 - -4.5733815e+02 2.2542504e+03 1.7240567e+03 - -5.2204447e+02 2.2366612e+03 1.7137432e+03 - -5.8654364e+02 2.2176797e+03 1.7034889e+03 - -6.5071736e+02 2.1972618e+03 1.6933828e+03 - -7.1445984e+02 2.1753711e+03 1.6835042e+03 - -7.7767555e+02 2.1519784e+03 1.6739238e+03 - -8.4027739e+02 2.1270606e+03 1.6647052e+03 - -9.0218544e+02 2.1006002e+03 1.6559051e+03 - -9.6332585e+02 2.0725851e+03 1.6475741e+03 - -1.0236300e+03 2.0430073e+03 1.6397576e+03 - -1.0830341e+03 2.0118634e+03 1.6324960e+03 - -1.1414781e+03 1.9791540e+03 1.6258249e+03 - -1.1989059e+03 1.9448830e+03 1.6197759e+03 - -1.2552648e+03 1.9090579e+03 1.6143766e+03 - -1.3105051e+03 1.8716894e+03 1.6096506e+03 - -1.3645801e+03 1.8327911e+03 1.6056184e+03 - -1.4174456e+03 1.7923795e+03 1.6022967e+03 - -1.4690604e+03 1.7504738e+03 1.5996992e+03 - -1.5193855e+03 1.7070959e+03 1.5978364e+03 - -1.5683844e+03 1.6622700e+03 1.5967158e+03 - -1.6160231e+03 1.6160231e+03 1.5963418e+03 - -1.6622700e+03 1.5683844e+03 1.5967158e+03 - -1.7070959e+03 1.5193855e+03 1.5978364e+03 - -1.7504738e+03 1.4690604e+03 1.5996992e+03 - -1.7923795e+03 1.4174456e+03 1.6022967e+03 - -1.8327911e+03 1.3645801e+03 1.6056184e+03 - -1.8716894e+03 1.3105051e+03 1.6096506e+03 - -1.9090579e+03 1.2552648e+03 1.6143766e+03 - -1.9448830e+03 1.1989059e+03 1.6197759e+03 - -1.9791540e+03 1.1414781e+03 1.6258249e+03 - -2.0118634e+03 1.0830341e+03 1.6324960e+03 - -2.0430073e+03 1.0236300e+03 1.6397576e+03 - -2.0725851e+03 9.6332585e+02 1.6475741e+03 - -2.1006002e+03 9.0218544e+02 1.6559051e+03 - -2.1270606e+03 8.4027739e+02 1.6647052e+03 - -2.1519784e+03 7.7767555e+02 1.6739238e+03 - -2.1753711e+03 7.1445984e+02 1.6835042e+03 - -2.1972618e+03 6.5071736e+02 1.6933828e+03 - -2.2176797e+03 5.8654364e+02 1.7034889e+03 - -2.2366612e+03 5.2204447e+02 1.7137432e+03 - -2.2542504e+03 4.5733815e+02 1.7240567e+03 - -2.2705006e+03 3.9255850e+02 1.7343293e+03 - -2.2854755e+03 3.2785894e+02 1.7444478e+03 - -2.2992506e+03 2.6341794e+02 1.7542840e+03 - -2.3119159e+03 1.9944650e+02 1.7636913e+03 - -2.3235778e+03 1.3619849e+02 1.7725016e+03 - -2.3343624e+03 7.3985048e+01 1.7805207e+03 - -2.3444195e+03 1.3194983e+01 1.7875233e+03 - -2.3539265e+03 -4.5676244e+01 1.7932467e+03 - -2.3630939e+03 -1.0198493e+02 1.7973845e+03 - -2.3721690e+03 -1.5487933e+02 1.7995804e+03 - -2.3814393e+03 -2.0321414e+02 1.7994258e+03 - -2.3912292e+03 -2.4543052e+02 1.7964667e+03 - -2.4018831e+03 -2.7939548e+02 1.7902329e+03 - -2.4137194e+03 -3.0221029e+02 1.7803126e+03 - -2.4269292e+03 -3.1004656e+02 1.7665157e+03 - -2.4413831e+03 -2.9819151e+02 1.7491772e+03 - -2.4563331e+03 -2.6171247e+02 1.7296238e+03 - -2.4701078e+03 -1.9735821e+02 1.7106403e+03 - -2.4801508e+03 -1.0688127e+02 1.6963877e+03 - -2.4838752e+03 4.8134273e-09 1.6910326e+03 - -2.4801508e+03 1.0688127e+02 1.6963877e+03 - -2.4701078e+03 1.9735821e+02 1.7106403e+03 - -2.4563331e+03 2.6171247e+02 1.7296238e+03 - -2.4413831e+03 2.9819151e+02 1.7491772e+03 - -2.4269292e+03 3.1004656e+02 1.7665157e+03 - -2.4137194e+03 3.0221029e+02 1.7803126e+03 - -2.4018831e+03 2.7939548e+02 1.7902329e+03 - -2.3912292e+03 2.4543052e+02 1.7964667e+03 - -2.3814393e+03 2.0321414e+02 1.7994258e+03 - -2.3721690e+03 1.5487933e+02 1.7995804e+03 - -2.3630939e+03 1.0198493e+02 1.7973845e+03 - -2.3539265e+03 4.5676244e+01 1.7932467e+03 - -2.3444195e+03 -1.3194983e+01 1.7875233e+03 - -2.3343624e+03 -7.3985048e+01 1.7805207e+03 - -2.3235778e+03 -1.3619849e+02 1.7725016e+03 - -2.3119159e+03 -1.9944650e+02 1.7636913e+03 - -2.2992506e+03 -2.6341794e+02 1.7542840e+03 - -2.2854755e+03 -3.2785894e+02 1.7444478e+03 - -2.2705006e+03 -3.9255850e+02 1.7343293e+03 - -2.2542504e+03 -4.5733815e+02 1.7240567e+03 - -2.2366612e+03 -5.2204447e+02 1.7137432e+03 - -2.2176797e+03 -5.8654364e+02 1.7034889e+03 - -2.1972618e+03 -6.5071736e+02 1.6933828e+03 - -2.1753711e+03 -7.1445984e+02 1.6835042e+03 - -2.1519784e+03 -7.7767555e+02 1.6739238e+03 - -2.1270606e+03 -8.4027739e+02 1.6647052e+03 - -2.1006002e+03 -9.0218544e+02 1.6559051e+03 - -2.0725851e+03 -9.6332585e+02 1.6475741e+03 - -2.0430073e+03 -1.0236300e+03 1.6397576e+03 - -2.0118634e+03 -1.0830341e+03 1.6324960e+03 - -1.9791540e+03 -1.1414781e+03 1.6258249e+03 - -1.9448830e+03 -1.1989059e+03 1.6197759e+03 - -1.9090579e+03 -1.2552648e+03 1.6143766e+03 - -1.8716894e+03 -1.3105051e+03 1.6096506e+03 - -1.8327911e+03 -1.3645801e+03 1.6056184e+03 - -1.7923795e+03 -1.4174456e+03 1.6022967e+03 - -1.7504738e+03 -1.4690604e+03 1.5996992e+03 - -1.7070959e+03 -1.5193855e+03 1.5978364e+03 - -1.6622700e+03 -1.5683844e+03 1.5967158e+03 - -1.6160231e+03 -1.6160231e+03 1.5963418e+03 - -1.5683844e+03 -1.6622700e+03 1.5967158e+03 - -1.5193855e+03 -1.7070959e+03 1.5978364e+03 - -1.4690604e+03 -1.7504738e+03 1.5996992e+03 - -1.4174456e+03 -1.7923795e+03 1.6022967e+03 - -1.3645801e+03 -1.8327911e+03 1.6056184e+03 - -1.3105051e+03 -1.8716894e+03 1.6096506e+03 - -1.2552648e+03 -1.9090579e+03 1.6143766e+03 - -1.1989059e+03 -1.9448830e+03 1.6197759e+03 - -1.1414781e+03 -1.9791540e+03 1.6258249e+03 - -1.0830341e+03 -2.0118634e+03 1.6324960e+03 - -1.0236300e+03 -2.0430073e+03 1.6397576e+03 - -9.6332585e+02 -2.0725851e+03 1.6475741e+03 - -9.0218544e+02 -2.1006002e+03 1.6559051e+03 - -8.4027739e+02 -2.1270606e+03 1.6647052e+03 - -7.7767555e+02 -2.1519784e+03 1.6739238e+03 - -7.1445984e+02 -2.1753711e+03 1.6835042e+03 - -6.5071736e+02 -2.1972618e+03 1.6933828e+03 - -5.8654364e+02 -2.2176797e+03 1.7034889e+03 - -5.2204447e+02 -2.2366612e+03 1.7137432e+03 - -4.5733815e+02 -2.2542504e+03 1.7240567e+03 - -3.9255850e+02 -2.2705006e+03 1.7343293e+03 - -3.2785894e+02 -2.2854755e+03 1.7444478e+03 - -2.6341794e+02 -2.2992506e+03 1.7542840e+03 - -1.9944650e+02 -2.3119159e+03 1.7636913e+03 - -1.3619849e+02 -2.3235778e+03 1.7725016e+03 - -7.3985048e+01 -2.3343624e+03 1.7805207e+03 - -1.3194983e+01 -2.3444195e+03 1.7875233e+03 - 4.5676244e+01 -2.3539265e+03 1.7932467e+03 - 1.0198493e+02 -2.3630939e+03 1.7973845e+03 - 1.5487933e+02 -2.3721690e+03 1.7995804e+03 - 2.0321414e+02 -2.3814393e+03 1.7994258e+03 - 2.4543052e+02 -2.3912292e+03 1.7964667e+03 - 2.7939548e+02 -2.4018831e+03 1.7902329e+03 - 3.0221029e+02 -2.4137194e+03 1.7803126e+03 - 3.1004656e+02 -2.4269292e+03 1.7665157e+03 - 2.9819151e+02 -2.4413831e+03 1.7491772e+03 - 2.6171247e+02 -2.4563331e+03 1.7296238e+03 - 1.9735821e+02 -2.4701078e+03 1.7106403e+03 - 1.0688127e+02 -2.4801508e+03 1.6963877e+03 - -2.4067136e-09 -2.4838752e+03 1.6910326e+03 - -1.0688127e+02 -2.4801508e+03 1.6963877e+03 - -1.9735821e+02 -2.4701078e+03 1.7106403e+03 - -2.6171247e+02 -2.4563331e+03 1.7296238e+03 - -2.9819151e+02 -2.4413831e+03 1.7491772e+03 - -3.1004656e+02 -2.4269292e+03 1.7665157e+03 - -3.0221029e+02 -2.4137194e+03 1.7803126e+03 - -2.7939548e+02 -2.4018831e+03 1.7902329e+03 - -2.4543052e+02 -2.3912292e+03 1.7964667e+03 - -2.0321414e+02 -2.3814393e+03 1.7994258e+03 - -1.5487933e+02 -2.3721690e+03 1.7995804e+03 - -1.0198493e+02 -2.3630939e+03 1.7973845e+03 - -4.5676244e+01 -2.3539265e+03 1.7932467e+03 - 1.3194983e+01 -2.3444195e+03 1.7875233e+03 - 7.3985048e+01 -2.3343624e+03 1.7805207e+03 - 1.3619849e+02 -2.3235778e+03 1.7725016e+03 - 1.9944650e+02 -2.3119159e+03 1.7636913e+03 - 2.6341794e+02 -2.2992506e+03 1.7542840e+03 - 3.2785894e+02 -2.2854755e+03 1.7444478e+03 - 3.9255850e+02 -2.2705006e+03 1.7343293e+03 - 4.5733815e+02 -2.2542504e+03 1.7240567e+03 - 5.2204447e+02 -2.2366612e+03 1.7137432e+03 - 5.8654364e+02 -2.2176797e+03 1.7034889e+03 - 6.5071736e+02 -2.1972618e+03 1.6933828e+03 - 7.1445984e+02 -2.1753711e+03 1.6835042e+03 - 7.7767555e+02 -2.1519784e+03 1.6739238e+03 - 8.4027739e+02 -2.1270606e+03 1.6647052e+03 - 9.0218544e+02 -2.1006002e+03 1.6559051e+03 - 9.6332585e+02 -2.0725851e+03 1.6475741e+03 - 1.0236300e+03 -2.0430073e+03 1.6397576e+03 - 1.0830341e+03 -2.0118634e+03 1.6324960e+03 - 1.1414781e+03 -1.9791540e+03 1.6258249e+03 - 1.1989059e+03 -1.9448830e+03 1.6197759e+03 - 1.2552648e+03 -1.9090579e+03 1.6143766e+03 - 1.3105051e+03 -1.8716894e+03 1.6096506e+03 - 1.3645801e+03 -1.8327911e+03 1.6056184e+03 - 1.4174456e+03 -1.7923795e+03 1.6022967e+03 - 1.4690604e+03 -1.7504738e+03 1.5996992e+03 - 1.5193855e+03 -1.7070959e+03 1.5978364e+03 - 1.5683844e+03 -1.6622700e+03 1.5967158e+03 - 1.6160231e+03 -1.6160231e+03 1.5963418e+03 - 1.6622700e+03 -1.5683844e+03 1.5967158e+03 - 1.7070959e+03 -1.5193855e+03 1.5978364e+03 - 1.7504738e+03 -1.4690604e+03 1.5996992e+03 - 1.7923795e+03 -1.4174456e+03 1.6022967e+03 - 1.8327911e+03 -1.3645801e+03 1.6056184e+03 - 1.8716894e+03 -1.3105051e+03 1.6096506e+03 - 1.9090579e+03 -1.2552648e+03 1.6143766e+03 - 1.9448830e+03 -1.1989059e+03 1.6197759e+03 - 1.9791540e+03 -1.1414781e+03 1.6258249e+03 - 2.0118634e+03 -1.0830341e+03 1.6324960e+03 - 2.0430073e+03 -1.0236300e+03 1.6397576e+03 - 2.0725851e+03 -9.6332585e+02 1.6475741e+03 - 2.1006002e+03 -9.0218544e+02 1.6559051e+03 - 2.1270606e+03 -8.4027739e+02 1.6647052e+03 - 2.1519784e+03 -7.7767555e+02 1.6739238e+03 - 2.1753711e+03 -7.1445984e+02 1.6835042e+03 - 2.1972618e+03 -6.5071736e+02 1.6933828e+03 - 2.2176797e+03 -5.8654364e+02 1.7034889e+03 - 2.2366612e+03 -5.2204447e+02 1.7137432e+03 - 2.2542504e+03 -4.5733815e+02 1.7240567e+03 - 2.2705006e+03 -3.9255850e+02 1.7343293e+03 - 2.2854755e+03 -3.2785894e+02 1.7444478e+03 - 2.2992506e+03 -2.6341794e+02 1.7542840e+03 - 2.3119159e+03 -1.9944650e+02 1.7636913e+03 - 2.3235778e+03 -1.3619849e+02 1.7725016e+03 - 2.3343624e+03 -7.3985048e+01 1.7805207e+03 - 2.3444195e+03 -1.3194983e+01 1.7875233e+03 - 2.3539265e+03 4.5676244e+01 1.7932467e+03 - 2.3630939e+03 1.0198493e+02 1.7973845e+03 - 2.3721690e+03 1.5487933e+02 1.7995804e+03 - 2.3814393e+03 2.0321414e+02 1.7994258e+03 - 2.3912292e+03 2.4543052e+02 1.7964667e+03 - 2.4018831e+03 2.7939548e+02 1.7902329e+03 - 2.4137194e+03 3.0221029e+02 1.7803126e+03 - 2.4269292e+03 3.1004656e+02 1.7665157e+03 - 2.4413831e+03 2.9819151e+02 1.7491772e+03 - 2.4563331e+03 2.6171247e+02 1.7296238e+03 - 2.4701078e+03 1.9735821e+02 1.7106403e+03 - 2.4801508e+03 1.0688127e+02 1.6963877e+03 - 2.4838752e+03 0.0000000e+00 1.6910326e+03 - 2.5718942e+03 2.4067136e-09 1.5900070e+03 - 2.5662352e+03 -1.2749252e+02 1.5980713e+03 - 2.5515395e+03 -2.3055980e+02 1.6187598e+03 - 2.5326133e+03 -2.9743620e+02 1.6446628e+03 - 2.5135165e+03 -3.2918024e+02 1.6694601e+03 - 2.4963404e+03 -3.3273236e+02 1.6898130e+03 - 2.4816540e+03 -3.1558231e+02 1.7047113e+03 - 2.4692469e+03 -2.8375624e+02 1.7143542e+03 - 2.4586217e+03 -2.4160459e+02 1.7194025e+03 - 2.4492333e+03 -1.9214802e+02 1.7206113e+03 - 2.4405828e+03 -1.3746981e+02 1.7186833e+03 - 2.4322446e+03 -7.9020427e+01 1.7142241e+03 - 2.4238656e+03 -1.7827811e+01 1.7077403e+03 - 2.4151562e+03 4.5363265e+01 1.6996514e+03 - 2.4058792e+03 1.1000003e+02 1.6903050e+03 - 2.3958401e+03 1.7566188e+02 1.6799905e+03 - 2.3848785e+03 2.4202078e+02 1.6689508e+03 - 2.3728618e+03 3.0881467e+02 1.6573916e+03 - 2.3596799e+03 3.7582941e+02 1.6454888e+03 - 2.3452413e+03 4.4288623e+02 1.6333939e+03 - 2.3294696e+03 5.0983305e+02 1.6212385e+03 - 2.3123014e+03 5.7653818e+02 1.6091377e+03 - 2.2936844e+03 6.4288587e+02 1.5971929e+03 - 2.2735755e+03 7.0877301e+02 1.5854935e+03 - 2.2519397e+03 7.7410665e+02 1.5741188e+03 - 2.2287493e+03 8.3880223e+02 1.5631394e+03 - 2.2039829e+03 9.0278215e+02 1.5526181e+03 - 2.1776244e+03 9.6597470e+02 1.5426109e+03 - 2.1496631e+03 1.0283132e+03 1.5331678e+03 - 2.1200927e+03 1.0897355e+03 1.5243330e+03 - 2.0889111e+03 1.1501832e+03 1.5161460e+03 - 2.0561197e+03 1.2096014e+03 1.5086414e+03 - 2.0217238e+03 1.2679385e+03 1.5018497e+03 - 1.9857316e+03 1.3251455e+03 1.4957977e+03 - 1.9481545e+03 1.3811763e+03 1.4905080e+03 - 1.9090067e+03 1.4359873e+03 1.4860003e+03 - 1.8683047e+03 1.4895371e+03 1.4822906e+03 - 1.8260680e+03 1.5417868e+03 1.4793920e+03 - 1.7823182e+03 1.5926995e+03 1.4773145e+03 - 1.7370792e+03 1.6422405e+03 1.4760652e+03 - 1.6903772e+03 1.6903772e+03 1.4756483e+03 - 1.6422405e+03 1.7370792e+03 1.4760652e+03 - 1.5926995e+03 1.7823182e+03 1.4773145e+03 - 1.5417868e+03 1.8260680e+03 1.4793920e+03 - 1.4895371e+03 1.8683047e+03 1.4822906e+03 - 1.4359873e+03 1.9090067e+03 1.4860003e+03 - 1.3811763e+03 1.9481545e+03 1.4905080e+03 - 1.3251455e+03 1.9857316e+03 1.4957977e+03 - 1.2679385e+03 2.0217238e+03 1.5018497e+03 - 1.2096014e+03 2.0561197e+03 1.5086414e+03 - 1.1501832e+03 2.0889111e+03 1.5161460e+03 - 1.0897355e+03 2.1200927e+03 1.5243330e+03 - 1.0283132e+03 2.1496631e+03 1.5331678e+03 - 9.6597470e+02 2.1776244e+03 1.5426109e+03 - 9.0278215e+02 2.2039829e+03 1.5526181e+03 - 8.3880223e+02 2.2287493e+03 1.5631394e+03 - 7.7410665e+02 2.2519397e+03 1.5741188e+03 - 7.0877301e+02 2.2735755e+03 1.5854935e+03 - 6.4288587e+02 2.2936844e+03 1.5971929e+03 - 5.7653818e+02 2.3123014e+03 1.6091377e+03 - 5.0983305e+02 2.3294696e+03 1.6212385e+03 - 4.4288623e+02 2.3452413e+03 1.6333939e+03 - 3.7582941e+02 2.3596799e+03 1.6454888e+03 - 3.0881467e+02 2.3728618e+03 1.6573916e+03 - 2.4202078e+02 2.3848785e+03 1.6689508e+03 - 1.7566188e+02 2.3958401e+03 1.6799905e+03 - 1.1000003e+02 2.4058792e+03 1.6903050e+03 - 4.5363265e+01 2.4151562e+03 1.6996514e+03 - -1.7827811e+01 2.4238656e+03 1.7077403e+03 - -7.9020427e+01 2.4322446e+03 1.7142241e+03 - -1.3746981e+02 2.4405828e+03 1.7186833e+03 - -1.9214802e+02 2.4492333e+03 1.7206113e+03 - -2.4160459e+02 2.4586217e+03 1.7194025e+03 - -2.8375624e+02 2.4692469e+03 1.7143542e+03 - -3.1558231e+02 2.4816540e+03 1.7047113e+03 - -3.3273236e+02 2.4963404e+03 1.6898130e+03 - -3.2918024e+02 2.5135165e+03 1.6694601e+03 - -2.9743620e+02 2.5326133e+03 1.6446628e+03 - -2.3055980e+02 2.5515395e+03 1.6187598e+03 - -1.2749252e+02 2.5662352e+03 1.5980713e+03 - 4.8134273e-09 2.5718942e+03 1.5900070e+03 - 1.2749252e+02 2.5662352e+03 1.5980713e+03 - 2.3055980e+02 2.5515395e+03 1.6187598e+03 - 2.9743620e+02 2.5326133e+03 1.6446628e+03 - 3.2918024e+02 2.5135165e+03 1.6694601e+03 - 3.3273236e+02 2.4963404e+03 1.6898130e+03 - 3.1558231e+02 2.4816540e+03 1.7047113e+03 - 2.8375624e+02 2.4692469e+03 1.7143542e+03 - 2.4160459e+02 2.4586217e+03 1.7194025e+03 - 1.9214802e+02 2.4492333e+03 1.7206113e+03 - 1.3746981e+02 2.4405828e+03 1.7186833e+03 - 7.9020427e+01 2.4322446e+03 1.7142241e+03 - 1.7827811e+01 2.4238656e+03 1.7077403e+03 - -4.5363265e+01 2.4151562e+03 1.6996514e+03 - -1.1000003e+02 2.4058792e+03 1.6903050e+03 - -1.7566188e+02 2.3958401e+03 1.6799905e+03 - -2.4202078e+02 2.3848785e+03 1.6689508e+03 - -3.0881467e+02 2.3728618e+03 1.6573916e+03 - -3.7582941e+02 2.3596799e+03 1.6454888e+03 - -4.4288623e+02 2.3452413e+03 1.6333939e+03 - -5.0983305e+02 2.3294696e+03 1.6212385e+03 - -5.7653818e+02 2.3123014e+03 1.6091377e+03 - -6.4288587e+02 2.2936844e+03 1.5971929e+03 - -7.0877301e+02 2.2735755e+03 1.5854935e+03 - -7.7410665e+02 2.2519397e+03 1.5741188e+03 - -8.3880223e+02 2.2287493e+03 1.5631394e+03 - -9.0278215e+02 2.2039829e+03 1.5526181e+03 - -9.6597470e+02 2.1776244e+03 1.5426109e+03 - -1.0283132e+03 2.1496631e+03 1.5331678e+03 - -1.0897355e+03 2.1200927e+03 1.5243330e+03 - -1.1501832e+03 2.0889111e+03 1.5161460e+03 - -1.2096014e+03 2.0561197e+03 1.5086414e+03 - -1.2679385e+03 2.0217238e+03 1.5018497e+03 - -1.3251455e+03 1.9857316e+03 1.4957977e+03 - -1.3811763e+03 1.9481545e+03 1.4905080e+03 - -1.4359873e+03 1.9090067e+03 1.4860003e+03 - -1.4895371e+03 1.8683047e+03 1.4822906e+03 - -1.5417868e+03 1.8260680e+03 1.4793920e+03 - -1.5926995e+03 1.7823182e+03 1.4773145e+03 - -1.6422405e+03 1.7370792e+03 1.4760652e+03 - -1.6903772e+03 1.6903772e+03 1.4756483e+03 - -1.7370792e+03 1.6422405e+03 1.4760652e+03 - -1.7823182e+03 1.5926995e+03 1.4773145e+03 - -1.8260680e+03 1.5417868e+03 1.4793920e+03 - -1.8683047e+03 1.4895371e+03 1.4822906e+03 - -1.9090067e+03 1.4359873e+03 1.4860003e+03 - -1.9481545e+03 1.3811763e+03 1.4905080e+03 - -1.9857316e+03 1.3251455e+03 1.4957977e+03 - -2.0217238e+03 1.2679385e+03 1.5018497e+03 - -2.0561197e+03 1.2096014e+03 1.5086414e+03 - -2.0889111e+03 1.1501832e+03 1.5161460e+03 - -2.1200927e+03 1.0897355e+03 1.5243330e+03 - -2.1496631e+03 1.0283132e+03 1.5331678e+03 - -2.1776244e+03 9.6597470e+02 1.5426109e+03 - -2.2039829e+03 9.0278215e+02 1.5526181e+03 - -2.2287493e+03 8.3880223e+02 1.5631394e+03 - -2.2519397e+03 7.7410665e+02 1.5741188e+03 - -2.2735755e+03 7.0877301e+02 1.5854935e+03 - -2.2936844e+03 6.4288587e+02 1.5971929e+03 - -2.3123014e+03 5.7653818e+02 1.6091377e+03 - -2.3294696e+03 5.0983305e+02 1.6212385e+03 - -2.3452413e+03 4.4288623e+02 1.6333939e+03 - -2.3596799e+03 3.7582941e+02 1.6454888e+03 - -2.3728618e+03 3.0881467e+02 1.6573916e+03 - -2.3848785e+03 2.4202078e+02 1.6689508e+03 - -2.3958401e+03 1.7566188e+02 1.6799905e+03 - -2.4058792e+03 1.1000003e+02 1.6903050e+03 - -2.4151562e+03 4.5363265e+01 1.6996514e+03 - -2.4238656e+03 -1.7827811e+01 1.7077403e+03 - -2.4322446e+03 -7.9020427e+01 1.7142241e+03 - -2.4405828e+03 -1.3746981e+02 1.7186833e+03 - -2.4492333e+03 -1.9214802e+02 1.7206113e+03 - -2.4586217e+03 -2.4160459e+02 1.7194025e+03 - -2.4692469e+03 -2.8375624e+02 1.7143542e+03 - -2.4816540e+03 -3.1558231e+02 1.7047113e+03 - -2.4963404e+03 -3.3273236e+02 1.6898130e+03 - -2.5135165e+03 -3.2918024e+02 1.6694601e+03 - -2.5326133e+03 -2.9743620e+02 1.6446628e+03 - -2.5515395e+03 -2.3055980e+02 1.6187598e+03 - -2.5662352e+03 -1.2749252e+02 1.5980713e+03 - -2.5718942e+03 4.8134273e-09 1.5900070e+03 - -2.5662352e+03 1.2749252e+02 1.5980713e+03 - -2.5515395e+03 2.3055980e+02 1.6187598e+03 - -2.5326133e+03 2.9743620e+02 1.6446628e+03 - -2.5135165e+03 3.2918024e+02 1.6694601e+03 - -2.4963404e+03 3.3273236e+02 1.6898130e+03 - -2.4816540e+03 3.1558231e+02 1.7047113e+03 - -2.4692469e+03 2.8375624e+02 1.7143542e+03 - -2.4586217e+03 2.4160459e+02 1.7194025e+03 - -2.4492333e+03 1.9214802e+02 1.7206113e+03 - -2.4405828e+03 1.3746981e+02 1.7186833e+03 - -2.4322446e+03 7.9020427e+01 1.7142241e+03 - -2.4238656e+03 1.7827811e+01 1.7077403e+03 - -2.4151562e+03 -4.5363265e+01 1.6996514e+03 - -2.4058792e+03 -1.1000003e+02 1.6903050e+03 - -2.3958401e+03 -1.7566188e+02 1.6799905e+03 - -2.3848785e+03 -2.4202078e+02 1.6689508e+03 - -2.3728618e+03 -3.0881467e+02 1.6573916e+03 - -2.3596799e+03 -3.7582941e+02 1.6454888e+03 - -2.3452413e+03 -4.4288623e+02 1.6333939e+03 - -2.3294696e+03 -5.0983305e+02 1.6212385e+03 - -2.3123014e+03 -5.7653818e+02 1.6091377e+03 - -2.2936844e+03 -6.4288587e+02 1.5971929e+03 - -2.2735755e+03 -7.0877301e+02 1.5854935e+03 - -2.2519397e+03 -7.7410665e+02 1.5741188e+03 - -2.2287493e+03 -8.3880223e+02 1.5631394e+03 - -2.2039829e+03 -9.0278215e+02 1.5526181e+03 - -2.1776244e+03 -9.6597470e+02 1.5426109e+03 - -2.1496631e+03 -1.0283132e+03 1.5331678e+03 - -2.1200927e+03 -1.0897355e+03 1.5243330e+03 - -2.0889111e+03 -1.1501832e+03 1.5161460e+03 - -2.0561197e+03 -1.2096014e+03 1.5086414e+03 - -2.0217238e+03 -1.2679385e+03 1.5018497e+03 - -1.9857316e+03 -1.3251455e+03 1.4957977e+03 - -1.9481545e+03 -1.3811763e+03 1.4905080e+03 - -1.9090067e+03 -1.4359873e+03 1.4860003e+03 - -1.8683047e+03 -1.4895371e+03 1.4822906e+03 - -1.8260680e+03 -1.5417868e+03 1.4793920e+03 - -1.7823182e+03 -1.5926995e+03 1.4773145e+03 - -1.7370792e+03 -1.6422405e+03 1.4760652e+03 - -1.6903772e+03 -1.6903772e+03 1.4756483e+03 - -1.6422405e+03 -1.7370792e+03 1.4760652e+03 - -1.5926995e+03 -1.7823182e+03 1.4773145e+03 - -1.5417868e+03 -1.8260680e+03 1.4793920e+03 - -1.4895371e+03 -1.8683047e+03 1.4822906e+03 - -1.4359873e+03 -1.9090067e+03 1.4860003e+03 - -1.3811763e+03 -1.9481545e+03 1.4905080e+03 - -1.3251455e+03 -1.9857316e+03 1.4957977e+03 - -1.2679385e+03 -2.0217238e+03 1.5018497e+03 - -1.2096014e+03 -2.0561197e+03 1.5086414e+03 - -1.1501832e+03 -2.0889111e+03 1.5161460e+03 - -1.0897355e+03 -2.1200927e+03 1.5243330e+03 - -1.0283132e+03 -2.1496631e+03 1.5331678e+03 - -9.6597470e+02 -2.1776244e+03 1.5426109e+03 - -9.0278215e+02 -2.2039829e+03 1.5526181e+03 - -8.3880223e+02 -2.2287493e+03 1.5631394e+03 - -7.7410665e+02 -2.2519397e+03 1.5741188e+03 - -7.0877301e+02 -2.2735755e+03 1.5854935e+03 - -6.4288587e+02 -2.2936844e+03 1.5971929e+03 - -5.7653818e+02 -2.3123014e+03 1.6091377e+03 - -5.0983305e+02 -2.3294696e+03 1.6212385e+03 - -4.4288623e+02 -2.3452413e+03 1.6333939e+03 - -3.7582941e+02 -2.3596799e+03 1.6454888e+03 - -3.0881467e+02 -2.3728618e+03 1.6573916e+03 - -2.4202078e+02 -2.3848785e+03 1.6689508e+03 - -1.7566188e+02 -2.3958401e+03 1.6799905e+03 - -1.1000003e+02 -2.4058792e+03 1.6903050e+03 - -4.5363265e+01 -2.4151562e+03 1.6996514e+03 - 1.7827811e+01 -2.4238656e+03 1.7077403e+03 - 7.9020427e+01 -2.4322446e+03 1.7142241e+03 - 1.3746981e+02 -2.4405828e+03 1.7186833e+03 - 1.9214802e+02 -2.4492333e+03 1.7206113e+03 - 2.4160459e+02 -2.4586217e+03 1.7194025e+03 - 2.8375624e+02 -2.4692469e+03 1.7143542e+03 - 3.1558231e+02 -2.4816540e+03 1.7047113e+03 - 3.3273236e+02 -2.4963404e+03 1.6898130e+03 - 3.2918024e+02 -2.5135165e+03 1.6694601e+03 - 2.9743620e+02 -2.5326133e+03 1.6446628e+03 - 2.3055980e+02 -2.5515395e+03 1.6187598e+03 - 1.2749252e+02 -2.5662352e+03 1.5980713e+03 - -4.8134273e-09 -2.5718942e+03 1.5900070e+03 - -1.2749252e+02 -2.5662352e+03 1.5980713e+03 - -2.3055980e+02 -2.5515395e+03 1.6187598e+03 - -2.9743620e+02 -2.5326133e+03 1.6446628e+03 - -3.2918024e+02 -2.5135165e+03 1.6694601e+03 - -3.3273236e+02 -2.4963404e+03 1.6898130e+03 - -3.1558231e+02 -2.4816540e+03 1.7047113e+03 - -2.8375624e+02 -2.4692469e+03 1.7143542e+03 - -2.4160459e+02 -2.4586217e+03 1.7194025e+03 - -1.9214802e+02 -2.4492333e+03 1.7206113e+03 - -1.3746981e+02 -2.4405828e+03 1.7186833e+03 - -7.9020427e+01 -2.4322446e+03 1.7142241e+03 - -1.7827811e+01 -2.4238656e+03 1.7077403e+03 - 4.5363265e+01 -2.4151562e+03 1.6996514e+03 - 1.1000003e+02 -2.4058792e+03 1.6903050e+03 - 1.7566188e+02 -2.3958401e+03 1.6799905e+03 - 2.4202078e+02 -2.3848785e+03 1.6689508e+03 - 3.0881467e+02 -2.3728618e+03 1.6573916e+03 - 3.7582941e+02 -2.3596799e+03 1.6454888e+03 - 4.4288623e+02 -2.3452413e+03 1.6333939e+03 - 5.0983305e+02 -2.3294696e+03 1.6212385e+03 - 5.7653818e+02 -2.3123014e+03 1.6091377e+03 - 6.4288587e+02 -2.2936844e+03 1.5971929e+03 - 7.0877301e+02 -2.2735755e+03 1.5854935e+03 - 7.7410665e+02 -2.2519397e+03 1.5741188e+03 - 8.3880223e+02 -2.2287493e+03 1.5631394e+03 - 9.0278215e+02 -2.2039829e+03 1.5526181e+03 - 9.6597470e+02 -2.1776244e+03 1.5426109e+03 - 1.0283132e+03 -2.1496631e+03 1.5331678e+03 - 1.0897355e+03 -2.1200927e+03 1.5243330e+03 - 1.1501832e+03 -2.0889111e+03 1.5161460e+03 - 1.2096014e+03 -2.0561197e+03 1.5086414e+03 - 1.2679385e+03 -2.0217238e+03 1.5018497e+03 - 1.3251455e+03 -1.9857316e+03 1.4957977e+03 - 1.3811763e+03 -1.9481545e+03 1.4905080e+03 - 1.4359873e+03 -1.9090067e+03 1.4860003e+03 - 1.4895371e+03 -1.8683047e+03 1.4822906e+03 - 1.5417868e+03 -1.8260680e+03 1.4793920e+03 - 1.5926995e+03 -1.7823182e+03 1.4773145e+03 - 1.6422405e+03 -1.7370792e+03 1.4760652e+03 - 1.6903772e+03 -1.6903772e+03 1.4756483e+03 - 1.7370792e+03 -1.6422405e+03 1.4760652e+03 - 1.7823182e+03 -1.5926995e+03 1.4773145e+03 - 1.8260680e+03 -1.5417868e+03 1.4793920e+03 - 1.8683047e+03 -1.4895371e+03 1.4822906e+03 - 1.9090067e+03 -1.4359873e+03 1.4860003e+03 - 1.9481545e+03 -1.3811763e+03 1.4905080e+03 - 1.9857316e+03 -1.3251455e+03 1.4957977e+03 - 2.0217238e+03 -1.2679385e+03 1.5018497e+03 - 2.0561197e+03 -1.2096014e+03 1.5086414e+03 - 2.0889111e+03 -1.1501832e+03 1.5161460e+03 - 2.1200927e+03 -1.0897355e+03 1.5243330e+03 - 2.1496631e+03 -1.0283132e+03 1.5331678e+03 - 2.1776244e+03 -9.6597470e+02 1.5426109e+03 - 2.2039829e+03 -9.0278215e+02 1.5526181e+03 - 2.2287493e+03 -8.3880223e+02 1.5631394e+03 - 2.2519397e+03 -7.7410665e+02 1.5741188e+03 - 2.2735755e+03 -7.0877301e+02 1.5854935e+03 - 2.2936844e+03 -6.4288587e+02 1.5971929e+03 - 2.3123014e+03 -5.7653818e+02 1.6091377e+03 - 2.3294696e+03 -5.0983305e+02 1.6212385e+03 - 2.3452413e+03 -4.4288623e+02 1.6333939e+03 - 2.3596799e+03 -3.7582941e+02 1.6454888e+03 - 2.3728618e+03 -3.0881467e+02 1.6573916e+03 - 2.3848785e+03 -2.4202078e+02 1.6689508e+03 - 2.3958401e+03 -1.7566188e+02 1.6799905e+03 - 2.4058792e+03 -1.1000003e+02 1.6903050e+03 - 2.4151562e+03 -4.5363265e+01 1.6996514e+03 - 2.4238656e+03 1.7827811e+01 1.7077403e+03 - 2.4322446e+03 7.9020427e+01 1.7142241e+03 - 2.4405828e+03 1.3746981e+02 1.7186833e+03 - 2.4492333e+03 1.9214802e+02 1.7206113e+03 - 2.4586217e+03 2.4160459e+02 1.7194025e+03 - 2.4692469e+03 2.8375624e+02 1.7143542e+03 - 2.4816540e+03 3.1558231e+02 1.7047113e+03 - 2.4963404e+03 3.3273236e+02 1.6898130e+03 - 2.5135165e+03 3.2918024e+02 1.6694601e+03 - 2.5326133e+03 2.9743620e+02 1.6446628e+03 - 2.5515395e+03 2.3055980e+02 1.6187598e+03 - 2.5662352e+03 1.2749252e+02 1.5980713e+03 - 2.5718942e+03 0.0000000e+00 1.5900070e+03 - 2.6562809e+03 2.4067136e-09 1.4892226e+03 - 2.6469267e+03 -1.5937774e+02 1.5024787e+03 - 2.6241321e+03 -2.7860447e+02 1.5344155e+03 - 2.5975519e+03 -3.4504232e+02 1.5706354e+03 - 2.5734276e+03 -3.6720985e+02 1.6017419e+03 - 2.5537492e+03 -3.5837856e+02 1.6246277e+03 - 2.5383077e+03 -3.2917668e+02 1.6394670e+03 - 2.5261938e+03 -2.8671401e+02 1.6475016e+03 - 2.5164383e+03 -2.3550366e+02 1.6500906e+03 - 2.5082087e+03 -1.7840367e+02 1.6484117e+03 - 2.5008380e+03 -1.1725907e+02 1.6434137e+03 - 2.4938046e+03 -5.3295341e+01 1.6358430e+03 - 2.4867012e+03 1.2646793e+01 1.6262861e+03 - 2.4792085e+03 7.9970856e+01 1.6152073e+03 - 2.4710737e+03 1.4823931e+02 1.6029790e+03 - 2.4620947e+03 2.1712065e+02 1.5899037e+03 - 2.4521087e+03 2.8635590e+02 1.5762308e+03 - 2.4409831e+03 3.5573690e+02 1.5621688e+03 - 2.4286098e+03 4.2509193e+02 1.5478936e+03 - 2.4148998e+03 4.9427603e+02 1.5335559e+03 - 2.3997800e+03 5.6316432e+02 1.5192854e+03 - 2.3831905e+03 6.3164729e+02 1.5051950e+03 - 2.3650823e+03 6.9962748e+02 1.4913836e+03 - 2.3454159e+03 7.6701704e+02 1.4779380e+03 - 2.3241597e+03 8.3373593e+02 1.4649349e+03 - 2.3012892e+03 8.9971058e+02 1.4524421e+03 - 2.2767858e+03 9.6487287e+02 1.4405199e+03 - 2.2506367e+03 1.0291593e+03 1.4292216e+03 - 2.2228335e+03 1.0925105e+03 1.4185945e+03 - 2.1933726e+03 1.1548706e+03 1.4086807e+03 - 2.1622539e+03 1.2161868e+03 1.3995170e+03 - 2.1294810e+03 1.2764092e+03 1.3911360e+03 - 2.0950609e+03 1.3354905e+03 1.3835661e+03 - 2.0590034e+03 1.3933859e+03 1.3768321e+03 - 2.0213210e+03 1.4500526e+03 1.3709551e+03 - 1.9820289e+03 1.5054500e+03 1.3659531e+03 - 1.9411445e+03 1.5595394e+03 1.3618408e+03 - 1.8986877e+03 1.6122842e+03 1.3586302e+03 - 1.8546802e+03 1.6636494e+03 1.3563304e+03 - 1.8091460e+03 1.7136020e+03 1.3549480e+03 - 1.7621107e+03 1.7621107e+03 1.3544868e+03 - 1.7136020e+03 1.8091460e+03 1.3549480e+03 - 1.6636494e+03 1.8546802e+03 1.3563304e+03 - 1.6122842e+03 1.8986877e+03 1.3586302e+03 - 1.5595394e+03 1.9411445e+03 1.3618408e+03 - 1.5054500e+03 1.9820289e+03 1.3659531e+03 - 1.4500526e+03 2.0213210e+03 1.3709551e+03 - 1.3933859e+03 2.0590034e+03 1.3768321e+03 - 1.3354905e+03 2.0950609e+03 1.3835661e+03 - 1.2764092e+03 2.1294810e+03 1.3911360e+03 - 1.2161868e+03 2.1622539e+03 1.3995170e+03 - 1.1548706e+03 2.1933726e+03 1.4086807e+03 - 1.0925105e+03 2.2228335e+03 1.4185945e+03 - 1.0291593e+03 2.2506367e+03 1.4292216e+03 - 9.6487287e+02 2.2767858e+03 1.4405199e+03 - 8.9971058e+02 2.3012892e+03 1.4524421e+03 - 8.3373593e+02 2.3241597e+03 1.4649349e+03 - 7.6701704e+02 2.3454159e+03 1.4779380e+03 - 6.9962748e+02 2.3650823e+03 1.4913836e+03 - 6.3164729e+02 2.3831905e+03 1.5051950e+03 - 5.6316432e+02 2.3997800e+03 1.5192854e+03 - 4.9427603e+02 2.4148998e+03 1.5335559e+03 - 4.2509193e+02 2.4286098e+03 1.5478936e+03 - 3.5573690e+02 2.4409831e+03 1.5621688e+03 - 2.8635590e+02 2.4521087e+03 1.5762308e+03 - 2.1712065e+02 2.4620947e+03 1.5899037e+03 - 1.4823931e+02 2.4710737e+03 1.6029790e+03 - 7.9970856e+01 2.4792085e+03 1.6152073e+03 - 1.2646793e+01 2.4867012e+03 1.6262861e+03 - -5.3295341e+01 2.4938046e+03 1.6358430e+03 - -1.1725907e+02 2.5008380e+03 1.6434137e+03 - -1.7840367e+02 2.5082087e+03 1.6484117e+03 - -2.3550366e+02 2.5164383e+03 1.6500906e+03 - -2.8671401e+02 2.5261938e+03 1.6475016e+03 - -3.2917668e+02 2.5383077e+03 1.6394670e+03 - -3.5837856e+02 2.5537492e+03 1.6246277e+03 - -3.6720985e+02 2.5734276e+03 1.6017419e+03 - -3.4504232e+02 2.5975519e+03 1.5706354e+03 - -2.7860447e+02 2.6241321e+03 1.5344155e+03 - -1.5937774e+02 2.6469267e+03 1.5024787e+03 - 4.8134273e-09 2.6562809e+03 1.4892226e+03 - 1.5937774e+02 2.6469267e+03 1.5024787e+03 - 2.7860447e+02 2.6241321e+03 1.5344155e+03 - 3.4504232e+02 2.5975519e+03 1.5706354e+03 - 3.6720985e+02 2.5734276e+03 1.6017419e+03 - 3.5837856e+02 2.5537492e+03 1.6246277e+03 - 3.2917668e+02 2.5383077e+03 1.6394670e+03 - 2.8671401e+02 2.5261938e+03 1.6475016e+03 - 2.3550366e+02 2.5164383e+03 1.6500906e+03 - 1.7840367e+02 2.5082087e+03 1.6484117e+03 - 1.1725907e+02 2.5008380e+03 1.6434137e+03 - 5.3295341e+01 2.4938046e+03 1.6358430e+03 - -1.2646793e+01 2.4867012e+03 1.6262861e+03 - -7.9970856e+01 2.4792085e+03 1.6152073e+03 - -1.4823931e+02 2.4710737e+03 1.6029790e+03 - -2.1712065e+02 2.4620947e+03 1.5899037e+03 - -2.8635590e+02 2.4521087e+03 1.5762308e+03 - -3.5573690e+02 2.4409831e+03 1.5621688e+03 - -4.2509193e+02 2.4286098e+03 1.5478936e+03 - -4.9427603e+02 2.4148998e+03 1.5335559e+03 - -5.6316432e+02 2.3997800e+03 1.5192854e+03 - -6.3164729e+02 2.3831905e+03 1.5051950e+03 - -6.9962748e+02 2.3650823e+03 1.4913836e+03 - -7.6701704e+02 2.3454159e+03 1.4779380e+03 - -8.3373593e+02 2.3241597e+03 1.4649349e+03 - -8.9971058e+02 2.3012892e+03 1.4524421e+03 - -9.6487287e+02 2.2767858e+03 1.4405199e+03 - -1.0291593e+03 2.2506367e+03 1.4292216e+03 - -1.0925105e+03 2.2228336e+03 1.4185945e+03 - -1.1548706e+03 2.1933726e+03 1.4086807e+03 - -1.2161868e+03 2.1622539e+03 1.3995170e+03 - -1.2764092e+03 2.1294810e+03 1.3911360e+03 - -1.3354905e+03 2.0950609e+03 1.3835661e+03 - -1.3933859e+03 2.0590034e+03 1.3768321e+03 - -1.4500526e+03 2.0213210e+03 1.3709551e+03 - -1.5054500e+03 1.9820289e+03 1.3659531e+03 - -1.5595394e+03 1.9411445e+03 1.3618408e+03 - -1.6122842e+03 1.8986877e+03 1.3586302e+03 - -1.6636494e+03 1.8546802e+03 1.3563304e+03 - -1.7136020e+03 1.8091460e+03 1.3549480e+03 - -1.7621107e+03 1.7621107e+03 1.3544868e+03 - -1.8091460e+03 1.7136020e+03 1.3549480e+03 - -1.8546802e+03 1.6636494e+03 1.3563304e+03 - -1.8986877e+03 1.6122842e+03 1.3586302e+03 - -1.9411445e+03 1.5595394e+03 1.3618408e+03 - -1.9820289e+03 1.5054500e+03 1.3659531e+03 - -2.0213210e+03 1.4500526e+03 1.3709551e+03 - -2.0590034e+03 1.3933859e+03 1.3768321e+03 - -2.0950609e+03 1.3354905e+03 1.3835661e+03 - -2.1294810e+03 1.2764092e+03 1.3911360e+03 - -2.1622539e+03 1.2161868e+03 1.3995170e+03 - -2.1933726e+03 1.1548706e+03 1.4086807e+03 - -2.2228335e+03 1.0925105e+03 1.4185945e+03 - -2.2506367e+03 1.0291593e+03 1.4292216e+03 - -2.2767858e+03 9.6487287e+02 1.4405199e+03 - -2.3012892e+03 8.9971058e+02 1.4524421e+03 - -2.3241597e+03 8.3373593e+02 1.4649349e+03 - -2.3454159e+03 7.6701704e+02 1.4779380e+03 - -2.3650823e+03 6.9962748e+02 1.4913836e+03 - -2.3831905e+03 6.3164729e+02 1.5051950e+03 - -2.3997800e+03 5.6316432e+02 1.5192854e+03 - -2.4148998e+03 4.9427603e+02 1.5335559e+03 - -2.4286098e+03 4.2509193e+02 1.5478936e+03 - -2.4409831e+03 3.5573690e+02 1.5621688e+03 - -2.4521087e+03 2.8635590e+02 1.5762308e+03 - -2.4620947e+03 2.1712065e+02 1.5899037e+03 - -2.4710737e+03 1.4823931e+02 1.6029790e+03 - -2.4792085e+03 7.9970856e+01 1.6152073e+03 - -2.4867012e+03 1.2646793e+01 1.6262861e+03 - -2.4938046e+03 -5.3295341e+01 1.6358430e+03 - -2.5008380e+03 -1.1725907e+02 1.6434137e+03 - -2.5082087e+03 -1.7840367e+02 1.6484117e+03 - -2.5164383e+03 -2.3550366e+02 1.6500906e+03 - -2.5261938e+03 -2.8671401e+02 1.6475016e+03 - -2.5383077e+03 -3.2917668e+02 1.6394670e+03 - -2.5537492e+03 -3.5837856e+02 1.6246277e+03 - -2.5734276e+03 -3.6720985e+02 1.6017419e+03 - -2.5975519e+03 -3.4504232e+02 1.5706354e+03 - -2.6241321e+03 -2.7860447e+02 1.5344155e+03 - -2.6469267e+03 -1.5937774e+02 1.5024787e+03 - -2.6562809e+03 4.8134273e-09 1.4892226e+03 - -2.6469267e+03 1.5937774e+02 1.5024787e+03 - -2.6241321e+03 2.7860447e+02 1.5344155e+03 - -2.5975519e+03 3.4504232e+02 1.5706354e+03 - -2.5734276e+03 3.6720985e+02 1.6017419e+03 - -2.5537492e+03 3.5837856e+02 1.6246277e+03 - -2.5383077e+03 3.2917668e+02 1.6394670e+03 - -2.5261938e+03 2.8671401e+02 1.6475016e+03 - -2.5164383e+03 2.3550366e+02 1.6500906e+03 - -2.5082087e+03 1.7840367e+02 1.6484117e+03 - -2.5008380e+03 1.1725907e+02 1.6434137e+03 - -2.4938046e+03 5.3295341e+01 1.6358430e+03 - -2.4867012e+03 -1.2646793e+01 1.6262861e+03 - -2.4792085e+03 -7.9970856e+01 1.6152073e+03 - -2.4710737e+03 -1.4823931e+02 1.6029790e+03 - -2.4620947e+03 -2.1712065e+02 1.5899037e+03 - -2.4521087e+03 -2.8635590e+02 1.5762308e+03 - -2.4409831e+03 -3.5573690e+02 1.5621688e+03 - -2.4286098e+03 -4.2509193e+02 1.5478936e+03 - -2.4148998e+03 -4.9427603e+02 1.5335559e+03 - -2.3997800e+03 -5.6316432e+02 1.5192854e+03 - -2.3831905e+03 -6.3164729e+02 1.5051950e+03 - -2.3650823e+03 -6.9962748e+02 1.4913836e+03 - -2.3454159e+03 -7.6701704e+02 1.4779380e+03 - -2.3241597e+03 -8.3373593e+02 1.4649349e+03 - -2.3012892e+03 -8.9971058e+02 1.4524421e+03 - -2.2767858e+03 -9.6487287e+02 1.4405199e+03 - -2.2506367e+03 -1.0291593e+03 1.4292216e+03 - -2.2228335e+03 -1.0925105e+03 1.4185945e+03 - -2.1933726e+03 -1.1548706e+03 1.4086807e+03 - -2.1622539e+03 -1.2161868e+03 1.3995170e+03 - -2.1294810e+03 -1.2764092e+03 1.3911360e+03 - -2.0950609e+03 -1.3354905e+03 1.3835661e+03 - -2.0590034e+03 -1.3933859e+03 1.3768321e+03 - -2.0213210e+03 -1.4500526e+03 1.3709551e+03 - -1.9820289e+03 -1.5054500e+03 1.3659531e+03 - -1.9411445e+03 -1.5595394e+03 1.3618408e+03 - -1.8986877e+03 -1.6122842e+03 1.3586302e+03 - -1.8546802e+03 -1.6636494e+03 1.3563304e+03 - -1.8091460e+03 -1.7136020e+03 1.3549480e+03 - -1.7621107e+03 -1.7621107e+03 1.3544868e+03 - -1.7136020e+03 -1.8091460e+03 1.3549480e+03 - -1.6636494e+03 -1.8546802e+03 1.3563304e+03 - -1.6122842e+03 -1.8986877e+03 1.3586302e+03 - -1.5595394e+03 -1.9411445e+03 1.3618408e+03 - -1.5054500e+03 -1.9820289e+03 1.3659531e+03 - -1.4500526e+03 -2.0213210e+03 1.3709551e+03 - -1.3933859e+03 -2.0590034e+03 1.3768321e+03 - -1.3354905e+03 -2.0950609e+03 1.3835661e+03 - -1.2764092e+03 -2.1294810e+03 1.3911360e+03 - -1.2161868e+03 -2.1622539e+03 1.3995170e+03 - -1.1548706e+03 -2.1933726e+03 1.4086807e+03 - -1.0925105e+03 -2.2228335e+03 1.4185945e+03 - -1.0291593e+03 -2.2506367e+03 1.4292216e+03 - -9.6487287e+02 -2.2767858e+03 1.4405199e+03 - -8.9971058e+02 -2.3012892e+03 1.4524421e+03 - -8.3373593e+02 -2.3241597e+03 1.4649349e+03 - -7.6701704e+02 -2.3454159e+03 1.4779380e+03 - -6.9962748e+02 -2.3650823e+03 1.4913836e+03 - -6.3164729e+02 -2.3831905e+03 1.5051950e+03 - -5.6316432e+02 -2.3997800e+03 1.5192854e+03 - -4.9427603e+02 -2.4148998e+03 1.5335559e+03 - -4.2509193e+02 -2.4286098e+03 1.5478936e+03 - -3.5573690e+02 -2.4409831e+03 1.5621688e+03 - -2.8635590e+02 -2.4521087e+03 1.5762308e+03 - -2.1712065e+02 -2.4620947e+03 1.5899037e+03 - -1.4823931e+02 -2.4710737e+03 1.6029790e+03 - -7.9970856e+01 -2.4792085e+03 1.6152073e+03 - -1.2646793e+01 -2.4867012e+03 1.6262861e+03 - 5.3295341e+01 -2.4938046e+03 1.6358430e+03 - 1.1725907e+02 -2.5008380e+03 1.6434137e+03 - 1.7840367e+02 -2.5082087e+03 1.6484117e+03 - 2.3550366e+02 -2.5164383e+03 1.6500906e+03 - 2.8671401e+02 -2.5261938e+03 1.6475016e+03 - 3.2917668e+02 -2.5383077e+03 1.6394670e+03 - 3.5837856e+02 -2.5537492e+03 1.6246277e+03 - 3.6720985e+02 -2.5734276e+03 1.6017419e+03 - 3.4504232e+02 -2.5975519e+03 1.5706354e+03 - 2.7860447e+02 -2.6241321e+03 1.5344155e+03 - 1.5937774e+02 -2.6469267e+03 1.5024787e+03 - -4.8134273e-09 -2.6562809e+03 1.4892226e+03 - -1.5937774e+02 -2.6469267e+03 1.5024787e+03 - -2.7860447e+02 -2.6241321e+03 1.5344155e+03 - -3.4504232e+02 -2.5975519e+03 1.5706354e+03 - -3.6720985e+02 -2.5734276e+03 1.6017419e+03 - -3.5837856e+02 -2.5537492e+03 1.6246277e+03 - -3.2917668e+02 -2.5383077e+03 1.6394670e+03 - -2.8671401e+02 -2.5261938e+03 1.6475016e+03 - -2.3550366e+02 -2.5164383e+03 1.6500906e+03 - -1.7840367e+02 -2.5082087e+03 1.6484117e+03 - -1.1725907e+02 -2.5008380e+03 1.6434137e+03 - -5.3295341e+01 -2.4938046e+03 1.6358430e+03 - 1.2646793e+01 -2.4867012e+03 1.6262861e+03 - 7.9970856e+01 -2.4792085e+03 1.6152073e+03 - 1.4823931e+02 -2.4710737e+03 1.6029790e+03 - 2.1712065e+02 -2.4620947e+03 1.5899037e+03 - 2.8635590e+02 -2.4521087e+03 1.5762308e+03 - 3.5573690e+02 -2.4409831e+03 1.5621688e+03 - 4.2509193e+02 -2.4286098e+03 1.5478936e+03 - 4.9427603e+02 -2.4148998e+03 1.5335559e+03 - 5.6316432e+02 -2.3997800e+03 1.5192854e+03 - 6.3164729e+02 -2.3831905e+03 1.5051950e+03 - 6.9962748e+02 -2.3650823e+03 1.4913836e+03 - 7.6701704e+02 -2.3454159e+03 1.4779380e+03 - 8.3373593e+02 -2.3241597e+03 1.4649349e+03 - 8.9971058e+02 -2.3012892e+03 1.4524421e+03 - 9.6487287e+02 -2.2767858e+03 1.4405199e+03 - 1.0291593e+03 -2.2506367e+03 1.4292216e+03 - 1.0925105e+03 -2.2228336e+03 1.4185945e+03 - 1.1548706e+03 -2.1933726e+03 1.4086807e+03 - 1.2161868e+03 -2.1622539e+03 1.3995170e+03 - 1.2764092e+03 -2.1294810e+03 1.3911360e+03 - 1.3354905e+03 -2.0950609e+03 1.3835661e+03 - 1.3933859e+03 -2.0590034e+03 1.3768321e+03 - 1.4500526e+03 -2.0213210e+03 1.3709551e+03 - 1.5054500e+03 -1.9820289e+03 1.3659531e+03 - 1.5595394e+03 -1.9411445e+03 1.3618408e+03 - 1.6122842e+03 -1.8986877e+03 1.3586302e+03 - 1.6636494e+03 -1.8546802e+03 1.3563304e+03 - 1.7136020e+03 -1.8091460e+03 1.3549480e+03 - 1.7621107e+03 -1.7621107e+03 1.3544868e+03 - 1.8091460e+03 -1.7136020e+03 1.3549480e+03 - 1.8546802e+03 -1.6636494e+03 1.3563304e+03 - 1.8986877e+03 -1.6122842e+03 1.3586302e+03 - 1.9411445e+03 -1.5595394e+03 1.3618408e+03 - 1.9820289e+03 -1.5054500e+03 1.3659531e+03 - 2.0213210e+03 -1.4500526e+03 1.3709551e+03 - 2.0590034e+03 -1.3933859e+03 1.3768321e+03 - 2.0950609e+03 -1.3354905e+03 1.3835661e+03 - 2.1294810e+03 -1.2764092e+03 1.3911360e+03 - 2.1622539e+03 -1.2161868e+03 1.3995170e+03 - 2.1933726e+03 -1.1548706e+03 1.4086807e+03 - 2.2228335e+03 -1.0925105e+03 1.4185945e+03 - 2.2506367e+03 -1.0291593e+03 1.4292216e+03 - 2.2767858e+03 -9.6487287e+02 1.4405199e+03 - 2.3012892e+03 -8.9971058e+02 1.4524421e+03 - 2.3241597e+03 -8.3373593e+02 1.4649349e+03 - 2.3454159e+03 -7.6701704e+02 1.4779380e+03 - 2.3650823e+03 -6.9962748e+02 1.4913836e+03 - 2.3831905e+03 -6.3164729e+02 1.5051950e+03 - 2.3997800e+03 -5.6316432e+02 1.5192854e+03 - 2.4148998e+03 -4.9427603e+02 1.5335559e+03 - 2.4286098e+03 -4.2509193e+02 1.5478936e+03 - 2.4409831e+03 -3.5573690e+02 1.5621688e+03 - 2.4521087e+03 -2.8635590e+02 1.5762308e+03 - 2.4620947e+03 -2.1712065e+02 1.5899037e+03 - 2.4710737e+03 -1.4823931e+02 1.6029790e+03 - 2.4792085e+03 -7.9970856e+01 1.6152073e+03 - 2.4867012e+03 -1.2646793e+01 1.6262861e+03 - 2.4938046e+03 5.3295341e+01 1.6358430e+03 - 2.5008380e+03 1.1725907e+02 1.6434137e+03 - 2.5082087e+03 1.7840367e+02 1.6484117e+03 - 2.5164383e+03 2.3550366e+02 1.6500906e+03 - 2.5261938e+03 2.8671401e+02 1.6475016e+03 - 2.5383077e+03 3.2917668e+02 1.6394670e+03 - 2.5537492e+03 3.5837856e+02 1.6246277e+03 - 2.5734276e+03 3.6720985e+02 1.6017419e+03 - 2.5975519e+03 3.4504232e+02 1.5706354e+03 - 2.6241321e+03 2.7860447e+02 1.5344155e+03 - 2.6469267e+03 1.5937774e+02 1.5024787e+03 - 2.6562809e+03 0.0000000e+00 1.4892226e+03 - 2.7368824e+03 0.0000000e+00 1.3890273e+03 - 2.7192183e+03 -2.1345796e+02 1.4139861e+03 - 2.6811824e+03 -3.5064377e+02 1.4671502e+03 - 2.6438532e+03 -4.0739704e+02 1.5178376e+03 - 2.6150452e+03 -4.1114832e+02 1.5545391e+03 - 2.5945640e+03 -3.8440191e+02 1.5773785e+03 - 2.5802770e+03 -3.4025846e+02 1.5893347e+03 - 2.5701702e+03 -2.8585216e+02 1.5932512e+03 - 2.5627163e+03 -2.2513068e+02 1.5912926e+03 - 2.5568154e+03 -1.6037352e+02 1.5850217e+03 - 2.5516786e+03 -9.2964682e+01 1.5755629e+03 - 2.5467328e+03 -2.3788533e+01 1.5637379e+03 - 2.5415535e+03 4.6561038e+01 1.5501599e+03 - 2.5358202e+03 1.1766591e+02 1.5352974e+03 - 2.5292864e+03 1.8921841e+02 1.5195169e+03 - 2.5217596e+03 2.6098274e+02 1.5031108e+03 - 2.5130871e+03 3.3277152e+02 1.4863173e+03 - 2.5031466e+03 4.0443095e+02 1.4693337e+03 - 2.4918397e+03 4.7583128e+02 1.4523255e+03 - 2.4790864e+03 5.4686045e+02 1.4354339e+03 - 2.4648219e+03 6.1741982e+02 1.4187799e+03 - 2.4489939e+03 6.8742113e+02 1.4024684e+03 - 2.4315605e+03 7.5678437e+02 1.3865910e+03 - 2.4124884e+03 8.2543624e+02 1.3712279e+03 - 2.3917519e+03 8.9330900e+02 1.3564495e+03 - 2.3693317e+03 9.6033959e+02 1.3423180e+03 - 2.3452145e+03 1.0264690e+03 1.3288883e+03 - 2.3193915e+03 1.0916416e+03 1.3162087e+03 - 2.2918587e+03 1.1558049e+03 1.3043220e+03 - 2.2626161e+03 1.2189092e+03 1.2932656e+03 - 2.2316669e+03 1.2809071e+03 1.2830727e+03 - 2.1990178e+03 1.3417536e+03 1.2737720e+03 - 2.1646783e+03 1.4014056e+03 1.2653886e+03 - 2.1286606e+03 1.4598220e+03 1.2579441e+03 - 2.0909793e+03 1.5169633e+03 1.2514569e+03 - 2.0516509e+03 1.5727918e+03 1.2459427e+03 - 2.0106946e+03 1.6272713e+03 1.2414141e+03 - 1.9681308e+03 1.6803672e+03 1.2378815e+03 - 1.9239822e+03 1.7320463e+03 1.2353527e+03 - 1.8782729e+03 1.7822769e+03 1.2338333e+03 - 1.8310287e+03 1.8310287e+03 1.2333264e+03 - 1.7822769e+03 1.8782729e+03 1.2338333e+03 - 1.7320463e+03 1.9239822e+03 1.2353527e+03 - 1.6803672e+03 1.9681308e+03 1.2378815e+03 - 1.6272713e+03 2.0106946e+03 1.2414141e+03 - 1.5727918e+03 2.0516509e+03 1.2459427e+03 - 1.5169633e+03 2.0909793e+03 1.2514569e+03 - 1.4598220e+03 2.1286606e+03 1.2579441e+03 - 1.4014056e+03 2.1646783e+03 1.2653886e+03 - 1.3417536e+03 2.1990178e+03 1.2737720e+03 - 1.2809071e+03 2.2316669e+03 1.2830727e+03 - 1.2189092e+03 2.2626161e+03 1.2932656e+03 - 1.1558049e+03 2.2918587e+03 1.3043220e+03 - 1.0916416e+03 2.3193915e+03 1.3162087e+03 - 1.0264690e+03 2.3452145e+03 1.3288883e+03 - 9.6033959e+02 2.3693317e+03 1.3423180e+03 - 8.9330900e+02 2.3917519e+03 1.3564495e+03 - 8.2543624e+02 2.4124884e+03 1.3712279e+03 - 7.5678437e+02 2.4315605e+03 1.3865910e+03 - 6.8742113e+02 2.4489939e+03 1.4024684e+03 - 6.1741982e+02 2.4648219e+03 1.4187799e+03 - 5.4686045e+02 2.4790864e+03 1.4354339e+03 - 4.7583128e+02 2.4918397e+03 1.4523255e+03 - 4.0443095e+02 2.5031466e+03 1.4693337e+03 - 3.3277152e+02 2.5130871e+03 1.4863173e+03 - 2.6098274e+02 2.5217596e+03 1.5031108e+03 - 1.8921841e+02 2.5292864e+03 1.5195169e+03 - 1.1766591e+02 2.5358202e+03 1.5352974e+03 - 4.6561038e+01 2.5415535e+03 1.5501599e+03 - -2.3788533e+01 2.5467328e+03 1.5637379e+03 - -9.2964682e+01 2.5516786e+03 1.5755629e+03 - -1.6037352e+02 2.5568154e+03 1.5850217e+03 - -2.2513068e+02 2.5627163e+03 1.5912926e+03 - -2.8585216e+02 2.5701702e+03 1.5932512e+03 - -3.4025846e+02 2.5802770e+03 1.5893347e+03 - -3.8440191e+02 2.5945640e+03 1.5773785e+03 - -4.1114832e+02 2.6150452e+03 1.5545391e+03 - -4.0739704e+02 2.6438532e+03 1.5178376e+03 - -3.5064377e+02 2.6811824e+03 1.4671502e+03 - -2.1345796e+02 2.7192183e+03 1.4139861e+03 - -2.4067136e-09 2.7368824e+03 1.3890273e+03 - 2.1345796e+02 2.7192183e+03 1.4139861e+03 - 3.5064377e+02 2.6811824e+03 1.4671502e+03 - 4.0739704e+02 2.6438532e+03 1.5178376e+03 - 4.1114832e+02 2.6150452e+03 1.5545391e+03 - 3.8440191e+02 2.5945640e+03 1.5773785e+03 - 3.4025846e+02 2.5802770e+03 1.5893347e+03 - 2.8585216e+02 2.5701702e+03 1.5932512e+03 - 2.2513068e+02 2.5627163e+03 1.5912926e+03 - 1.6037352e+02 2.5568154e+03 1.5850217e+03 - 9.2964682e+01 2.5516786e+03 1.5755629e+03 - 2.3788533e+01 2.5467328e+03 1.5637379e+03 - -4.6561038e+01 2.5415535e+03 1.5501599e+03 - -1.1766591e+02 2.5358202e+03 1.5352974e+03 - -1.8921841e+02 2.5292864e+03 1.5195169e+03 - -2.6098274e+02 2.5217596e+03 1.5031108e+03 - -3.3277152e+02 2.5130871e+03 1.4863173e+03 - -4.0443095e+02 2.5031466e+03 1.4693337e+03 - -4.7583128e+02 2.4918397e+03 1.4523255e+03 - -5.4686045e+02 2.4790864e+03 1.4354339e+03 - -6.1741982e+02 2.4648219e+03 1.4187799e+03 - -6.8742113e+02 2.4489939e+03 1.4024684e+03 - -7.5678437e+02 2.4315605e+03 1.3865910e+03 - -8.2543624e+02 2.4124884e+03 1.3712279e+03 - -8.9330900e+02 2.3917519e+03 1.3564495e+03 - -9.6033959e+02 2.3693317e+03 1.3423180e+03 - -1.0264690e+03 2.3452145e+03 1.3288883e+03 - -1.0916416e+03 2.3193915e+03 1.3162087e+03 - -1.1558049e+03 2.2918587e+03 1.3043220e+03 - -1.2189092e+03 2.2626161e+03 1.2932656e+03 - -1.2809071e+03 2.2316669e+03 1.2830727e+03 - -1.3417536e+03 2.1990178e+03 1.2737720e+03 - -1.4014056e+03 2.1646783e+03 1.2653886e+03 - -1.4598220e+03 2.1286606e+03 1.2579441e+03 - -1.5169633e+03 2.0909793e+03 1.2514569e+03 - -1.5727918e+03 2.0516509e+03 1.2459427e+03 - -1.6272713e+03 2.0106946e+03 1.2414141e+03 - -1.6803672e+03 1.9681308e+03 1.2378815e+03 - -1.7320463e+03 1.9239822e+03 1.2353527e+03 - -1.7822769e+03 1.8782729e+03 1.2338333e+03 - -1.8310287e+03 1.8310287e+03 1.2333264e+03 - -1.8782729e+03 1.7822769e+03 1.2338333e+03 - -1.9239822e+03 1.7320463e+03 1.2353527e+03 - -1.9681308e+03 1.6803672e+03 1.2378815e+03 - -2.0106946e+03 1.6272713e+03 1.2414141e+03 - -2.0516509e+03 1.5727918e+03 1.2459427e+03 - -2.0909793e+03 1.5169633e+03 1.2514569e+03 - -2.1286606e+03 1.4598220e+03 1.2579441e+03 - -2.1646783e+03 1.4014056e+03 1.2653886e+03 - -2.1990178e+03 1.3417536e+03 1.2737720e+03 - -2.2316669e+03 1.2809071e+03 1.2830727e+03 - -2.2626161e+03 1.2189092e+03 1.2932656e+03 - -2.2918587e+03 1.1558049e+03 1.3043220e+03 - -2.3193915e+03 1.0916416e+03 1.3162087e+03 - -2.3452145e+03 1.0264690e+03 1.3288883e+03 - -2.3693317e+03 9.6033959e+02 1.3423180e+03 - -2.3917519e+03 8.9330900e+02 1.3564495e+03 - -2.4124884e+03 8.2543624e+02 1.3712279e+03 - -2.4315605e+03 7.5678437e+02 1.3865910e+03 - -2.4489939e+03 6.8742113e+02 1.4024684e+03 - -2.4648219e+03 6.1741982e+02 1.4187799e+03 - -2.4790864e+03 5.4686045e+02 1.4354339e+03 - -2.4918397e+03 4.7583128e+02 1.4523255e+03 - -2.5031466e+03 4.0443095e+02 1.4693337e+03 - -2.5130871e+03 3.3277152e+02 1.4863173e+03 - -2.5217596e+03 2.6098274e+02 1.5031108e+03 - -2.5292864e+03 1.8921841e+02 1.5195169e+03 - -2.5358202e+03 1.1766591e+02 1.5352974e+03 - -2.5415535e+03 4.6561038e+01 1.5501599e+03 - -2.5467328e+03 -2.3788533e+01 1.5637379e+03 - -2.5516786e+03 -9.2964682e+01 1.5755629e+03 - -2.5568154e+03 -1.6037352e+02 1.5850217e+03 - -2.5627163e+03 -2.2513068e+02 1.5912926e+03 - -2.5701702e+03 -2.8585216e+02 1.5932512e+03 - -2.5802770e+03 -3.4025846e+02 1.5893347e+03 - -2.5945640e+03 -3.8440191e+02 1.5773785e+03 - -2.6150452e+03 -4.1114832e+02 1.5545391e+03 - -2.6438532e+03 -4.0739704e+02 1.5178376e+03 - -2.6811824e+03 -3.5064377e+02 1.4671502e+03 - -2.7192183e+03 -2.1345796e+02 1.4139861e+03 - -2.7368824e+03 -7.2201409e-09 1.3890273e+03 - -2.7192183e+03 2.1345796e+02 1.4139861e+03 - -2.6811824e+03 3.5064377e+02 1.4671502e+03 - -2.6438532e+03 4.0739704e+02 1.5178376e+03 - -2.6150452e+03 4.1114832e+02 1.5545391e+03 - -2.5945640e+03 3.8440191e+02 1.5773785e+03 - -2.5802770e+03 3.4025846e+02 1.5893347e+03 - -2.5701702e+03 2.8585216e+02 1.5932512e+03 - -2.5627163e+03 2.2513068e+02 1.5912926e+03 - -2.5568154e+03 1.6037352e+02 1.5850217e+03 - -2.5516786e+03 9.2964682e+01 1.5755629e+03 - -2.5467328e+03 2.3788533e+01 1.5637379e+03 - -2.5415535e+03 -4.6561038e+01 1.5501599e+03 - -2.5358202e+03 -1.1766591e+02 1.5352974e+03 - -2.5292864e+03 -1.8921841e+02 1.5195169e+03 - -2.5217596e+03 -2.6098274e+02 1.5031108e+03 - -2.5130871e+03 -3.3277152e+02 1.4863173e+03 - -2.5031466e+03 -4.0443095e+02 1.4693337e+03 - -2.4918397e+03 -4.7583128e+02 1.4523255e+03 - -2.4790864e+03 -5.4686045e+02 1.4354339e+03 - -2.4648219e+03 -6.1741982e+02 1.4187799e+03 - -2.4489939e+03 -6.8742113e+02 1.4024684e+03 - -2.4315605e+03 -7.5678437e+02 1.3865910e+03 - -2.4124884e+03 -8.2543624e+02 1.3712279e+03 - -2.3917519e+03 -8.9330900e+02 1.3564495e+03 - -2.3693317e+03 -9.6033959e+02 1.3423180e+03 - -2.3452145e+03 -1.0264690e+03 1.3288883e+03 - -2.3193915e+03 -1.0916416e+03 1.3162087e+03 - -2.2918587e+03 -1.1558049e+03 1.3043220e+03 - -2.2626161e+03 -1.2189092e+03 1.2932656e+03 - -2.2316669e+03 -1.2809071e+03 1.2830727e+03 - -2.1990178e+03 -1.3417536e+03 1.2737720e+03 - -2.1646783e+03 -1.4014056e+03 1.2653886e+03 - -2.1286606e+03 -1.4598220e+03 1.2579441e+03 - -2.0909793e+03 -1.5169633e+03 1.2514569e+03 - -2.0516509e+03 -1.5727918e+03 1.2459427e+03 - -2.0106946e+03 -1.6272713e+03 1.2414141e+03 - -1.9681308e+03 -1.6803672e+03 1.2378815e+03 - -1.9239822e+03 -1.7320463e+03 1.2353527e+03 - -1.8782729e+03 -1.7822769e+03 1.2338333e+03 - -1.8310287e+03 -1.8310287e+03 1.2333264e+03 - -1.7822769e+03 -1.8782729e+03 1.2338333e+03 - -1.7320463e+03 -1.9239822e+03 1.2353527e+03 - -1.6803672e+03 -1.9681308e+03 1.2378815e+03 - -1.6272713e+03 -2.0106946e+03 1.2414141e+03 - -1.5727918e+03 -2.0516509e+03 1.2459427e+03 - -1.5169633e+03 -2.0909793e+03 1.2514569e+03 - -1.4598220e+03 -2.1286606e+03 1.2579441e+03 - -1.4014056e+03 -2.1646783e+03 1.2653886e+03 - -1.3417536e+03 -2.1990178e+03 1.2737720e+03 - -1.2809071e+03 -2.2316669e+03 1.2830727e+03 - -1.2189092e+03 -2.2626161e+03 1.2932656e+03 - -1.1558049e+03 -2.2918587e+03 1.3043220e+03 - -1.0916416e+03 -2.3193915e+03 1.3162087e+03 - -1.0264690e+03 -2.3452145e+03 1.3288883e+03 - -9.6033959e+02 -2.3693317e+03 1.3423180e+03 - -8.9330900e+02 -2.3917519e+03 1.3564495e+03 - -8.2543624e+02 -2.4124884e+03 1.3712279e+03 - -7.5678437e+02 -2.4315605e+03 1.3865910e+03 - -6.8742113e+02 -2.4489939e+03 1.4024684e+03 - -6.1741982e+02 -2.4648219e+03 1.4187799e+03 - -5.4686045e+02 -2.4790864e+03 1.4354339e+03 - -4.7583128e+02 -2.4918397e+03 1.4523255e+03 - -4.0443095e+02 -2.5031466e+03 1.4693337e+03 - -3.3277152e+02 -2.5130871e+03 1.4863173e+03 - -2.6098274e+02 -2.5217596e+03 1.5031108e+03 - -1.8921841e+02 -2.5292864e+03 1.5195169e+03 - -1.1766591e+02 -2.5358202e+03 1.5352974e+03 - -4.6561038e+01 -2.5415535e+03 1.5501599e+03 - 2.3788533e+01 -2.5467328e+03 1.5637379e+03 - 9.2964682e+01 -2.5516786e+03 1.5755629e+03 - 1.6037352e+02 -2.5568154e+03 1.5850217e+03 - 2.2513068e+02 -2.5627163e+03 1.5912926e+03 - 2.8585216e+02 -2.5701702e+03 1.5932512e+03 - 3.4025846e+02 -2.5802770e+03 1.5893347e+03 - 3.8440191e+02 -2.5945640e+03 1.5773785e+03 - 4.1114832e+02 -2.6150452e+03 1.5545391e+03 - 4.0739704e+02 -2.6438532e+03 1.5178376e+03 - 3.5064377e+02 -2.6811824e+03 1.4671502e+03 - 2.1345796e+02 -2.7192183e+03 1.4139861e+03 - 2.4067136e-09 -2.7368824e+03 1.3890273e+03 - -2.1345796e+02 -2.7192183e+03 1.4139861e+03 - -3.5064377e+02 -2.6811824e+03 1.4671502e+03 - -4.0739704e+02 -2.6438532e+03 1.5178376e+03 - -4.1114832e+02 -2.6150452e+03 1.5545391e+03 - -3.8440191e+02 -2.5945640e+03 1.5773785e+03 - -3.4025846e+02 -2.5802770e+03 1.5893347e+03 - -2.8585216e+02 -2.5701702e+03 1.5932512e+03 - -2.2513068e+02 -2.5627163e+03 1.5912926e+03 - -1.6037352e+02 -2.5568154e+03 1.5850217e+03 - -9.2964682e+01 -2.5516786e+03 1.5755629e+03 - -2.3788533e+01 -2.5467328e+03 1.5637379e+03 - 4.6561038e+01 -2.5415535e+03 1.5501599e+03 - 1.1766591e+02 -2.5358202e+03 1.5352974e+03 - 1.8921841e+02 -2.5292864e+03 1.5195169e+03 - 2.6098274e+02 -2.5217596e+03 1.5031108e+03 - 3.3277152e+02 -2.5130871e+03 1.4863173e+03 - 4.0443095e+02 -2.5031466e+03 1.4693337e+03 - 4.7583128e+02 -2.4918397e+03 1.4523255e+03 - 5.4686045e+02 -2.4790864e+03 1.4354339e+03 - 6.1741982e+02 -2.4648219e+03 1.4187799e+03 - 6.8742113e+02 -2.4489939e+03 1.4024684e+03 - 7.5678437e+02 -2.4315605e+03 1.3865910e+03 - 8.2543624e+02 -2.4124884e+03 1.3712279e+03 - 8.9330900e+02 -2.3917519e+03 1.3564495e+03 - 9.6033959e+02 -2.3693317e+03 1.3423180e+03 - 1.0264690e+03 -2.3452145e+03 1.3288883e+03 - 1.0916416e+03 -2.3193915e+03 1.3162087e+03 - 1.1558049e+03 -2.2918587e+03 1.3043220e+03 - 1.2189092e+03 -2.2626161e+03 1.2932656e+03 - 1.2809071e+03 -2.2316669e+03 1.2830727e+03 - 1.3417536e+03 -2.1990178e+03 1.2737720e+03 - 1.4014056e+03 -2.1646783e+03 1.2653886e+03 - 1.4598220e+03 -2.1286606e+03 1.2579441e+03 - 1.5169633e+03 -2.0909793e+03 1.2514569e+03 - 1.5727918e+03 -2.0516509e+03 1.2459427e+03 - 1.6272713e+03 -2.0106946e+03 1.2414141e+03 - 1.6803672e+03 -1.9681308e+03 1.2378815e+03 - 1.7320463e+03 -1.9239822e+03 1.2353527e+03 - 1.7822769e+03 -1.8782729e+03 1.2338333e+03 - 1.8310287e+03 -1.8310287e+03 1.2333264e+03 - 1.8782729e+03 -1.7822769e+03 1.2338333e+03 - 1.9239822e+03 -1.7320463e+03 1.2353527e+03 - 1.9681308e+03 -1.6803672e+03 1.2378815e+03 - 2.0106946e+03 -1.6272713e+03 1.2414141e+03 - 2.0516509e+03 -1.5727918e+03 1.2459427e+03 - 2.0909793e+03 -1.5169633e+03 1.2514569e+03 - 2.1286606e+03 -1.4598220e+03 1.2579441e+03 - 2.1646783e+03 -1.4014056e+03 1.2653886e+03 - 2.1990178e+03 -1.3417536e+03 1.2737720e+03 - 2.2316669e+03 -1.2809071e+03 1.2830727e+03 - 2.2626161e+03 -1.2189092e+03 1.2932656e+03 - 2.2918587e+03 -1.1558049e+03 1.3043220e+03 - 2.3193915e+03 -1.0916416e+03 1.3162087e+03 - 2.3452145e+03 -1.0264690e+03 1.3288883e+03 - 2.3693317e+03 -9.6033959e+02 1.3423180e+03 - 2.3917519e+03 -8.9330900e+02 1.3564495e+03 - 2.4124884e+03 -8.2543624e+02 1.3712279e+03 - 2.4315605e+03 -7.5678437e+02 1.3865910e+03 - 2.4489939e+03 -6.8742113e+02 1.4024684e+03 - 2.4648219e+03 -6.1741982e+02 1.4187799e+03 - 2.4790864e+03 -5.4686045e+02 1.4354339e+03 - 2.4918397e+03 -4.7583128e+02 1.4523255e+03 - 2.5031466e+03 -4.0443095e+02 1.4693337e+03 - 2.5130871e+03 -3.3277152e+02 1.4863173e+03 - 2.5217596e+03 -2.6098274e+02 1.5031108e+03 - 2.5292864e+03 -1.8921841e+02 1.5195169e+03 - 2.5358202e+03 -1.1766591e+02 1.5352974e+03 - 2.5415535e+03 -4.6561038e+01 1.5501599e+03 - 2.5467328e+03 2.3788533e+01 1.5637379e+03 - 2.5516786e+03 9.2964682e+01 1.5755629e+03 - 2.5568154e+03 1.6037352e+02 1.5850217e+03 - 2.5627163e+03 2.2513068e+02 1.5912926e+03 - 2.5701702e+03 2.8585216e+02 1.5932512e+03 - 2.5802770e+03 3.4025846e+02 1.5893347e+03 - 2.5945640e+03 3.8440191e+02 1.5773785e+03 - 2.6150452e+03 4.1114832e+02 1.5545391e+03 - 2.6438532e+03 4.0739704e+02 1.5178376e+03 - 2.6811824e+03 3.5064377e+02 1.4671502e+03 - 2.7192183e+03 2.1345796e+02 1.4139861e+03 - 2.7368824e+03 4.8134273e-09 1.3890273e+03 - 2.8135739e+03 2.4067136e-09 1.2897641e+03 - 2.7714693e+03 -3.1892657e+02 1.3491923e+03 - 2.7040960e+03 -4.5899481e+02 1.4432481e+03 - 2.6567350e+03 -4.8186336e+02 1.5070607e+03 - 2.6285942e+03 -4.5412820e+02 1.5415653e+03 - 2.6124519e+03 -4.0422394e+02 1.5569592e+03 - 2.6033115e+03 -3.4357566e+02 1.5603132e+03 - 2.5981763e+03 -2.7718761e+02 1.5558709e+03 - 2.5952319e+03 -2.0749252e+02 1.5462042e+03 - 2.5933343e+03 -1.3579413e+02 1.5329387e+03 - 2.5917294e+03 -6.2855489e+01 1.5171510e+03 - 2.5898989e+03 1.0839858e+01 1.4995875e+03 - 2.5874733e+03 8.4962684e+01 1.4807869e+03 - 2.5841807e+03 1.5927409e+02 1.4611528e+03 - 2.5798160e+03 2.3359087e+02 1.4409975e+03 - 2.5742207e+03 3.0776585e+02 1.4205689e+03 - 2.5672711e+03 3.8167625e+02 1.4000690e+03 - 2.5588688e+03 4.5521648e+02 1.3796650e+03 - 2.5489355e+03 5.2829354e+02 1.3594978e+03 - 2.5374086e+03 6.0082404e+02 1.3396876e+03 - 2.5242381e+03 6.7273212e+02 1.3203378e+03 - 2.5093846e+03 7.4394797e+02 1.3015380e+03 - 2.4928172e+03 8.1440684e+02 1.2833663e+03 - 2.4745129e+03 8.8404821e+02 1.2658912e+03 - 2.4544547e+03 9.5281521e+02 1.2491724e+03 - 2.4326313e+03 1.0206542e+03 1.2332627e+03 - 2.4090364e+03 1.0875141e+03 1.2182081e+03 - 2.3836678e+03 1.1533468e+03 1.2040491e+03 - 2.3565271e+03 1.2181058e+03 1.1908211e+03 - 2.3276195e+03 1.2817472e+03 1.1785551e+03 - 2.2969531e+03 1.3442285e+03 1.1672779e+03 - 2.2645385e+03 1.4055089e+03 1.1570129e+03 - 2.2303891e+03 1.4655495e+03 1.1477802e+03 - 2.1945202e+03 1.5243123e+03 1.1395968e+03 - 2.1569492e+03 1.5817609e+03 1.1324773e+03 - 2.1176953e+03 1.6378602e+03 1.1264339e+03 - 2.0767794e+03 1.6925760e+03 1.1214763e+03 - 2.0342239e+03 1.7458755e+03 1.1176125e+03 - 1.9900525e+03 1.7977269e+03 1.1148484e+03 - 1.9442902e+03 1.8480994e+03 1.1131883e+03 - 1.8969633e+03 1.8969633e+03 1.1126347e+03 - 1.8480994e+03 1.9442902e+03 1.1131883e+03 - 1.7977269e+03 1.9900525e+03 1.1148484e+03 - 1.7458755e+03 2.0342239e+03 1.1176125e+03 - 1.6925760e+03 2.0767794e+03 1.1214763e+03 - 1.6378602e+03 2.1176953e+03 1.1264339e+03 - 1.5817609e+03 2.1569492e+03 1.1324773e+03 - 1.5243123e+03 2.1945202e+03 1.1395968e+03 - 1.4655495e+03 2.2303891e+03 1.1477802e+03 - 1.4055089e+03 2.2645385e+03 1.1570129e+03 - 1.3442285e+03 2.2969531e+03 1.1672779e+03 - 1.2817472e+03 2.3276195e+03 1.1785551e+03 - 1.2181058e+03 2.3565271e+03 1.1908211e+03 - 1.1533468e+03 2.3836678e+03 1.2040491e+03 - 1.0875141e+03 2.4090364e+03 1.2182081e+03 - 1.0206542e+03 2.4326313e+03 1.2332627e+03 - 9.5281521e+02 2.4544547e+03 1.2491724e+03 - 8.8404821e+02 2.4745129e+03 1.2658912e+03 - 8.1440684e+02 2.4928172e+03 1.2833663e+03 - 7.4394797e+02 2.5093846e+03 1.3015380e+03 - 6.7273212e+02 2.5242381e+03 1.3203378e+03 - 6.0082404e+02 2.5374086e+03 1.3396876e+03 - 5.2829354e+02 2.5489355e+03 1.3594978e+03 - 4.5521648e+02 2.5588688e+03 1.3796650e+03 - 3.8167625e+02 2.5672711e+03 1.4000690e+03 - 3.0776585e+02 2.5742207e+03 1.4205689e+03 - 2.3359087e+02 2.5798160e+03 1.4409975e+03 - 1.5927409e+02 2.5841807e+03 1.4611528e+03 - 8.4962684e+01 2.5874733e+03 1.4807869e+03 - 1.0839858e+01 2.5898989e+03 1.4995875e+03 - -6.2855489e+01 2.5917294e+03 1.5171510e+03 - -1.3579413e+02 2.5933343e+03 1.5329387e+03 - -2.0749252e+02 2.5952319e+03 1.5462042e+03 - -2.7718761e+02 2.5981763e+03 1.5558709e+03 - -3.4357566e+02 2.6033115e+03 1.5603132e+03 - -4.0422394e+02 2.6124519e+03 1.5569592e+03 - -4.5412820e+02 2.6285942e+03 1.5415653e+03 - -4.8186336e+02 2.6567350e+03 1.5070607e+03 - -4.5899481e+02 2.7040960e+03 1.4432481e+03 - -3.1892657e+02 2.7714693e+03 1.3491923e+03 - -7.2201409e-09 2.8135739e+03 1.2897641e+03 - 3.1892657e+02 2.7714693e+03 1.3491923e+03 - 4.5899481e+02 2.7040960e+03 1.4432481e+03 - 4.8186336e+02 2.6567350e+03 1.5070607e+03 - 4.5412820e+02 2.6285942e+03 1.5415653e+03 - 4.0422394e+02 2.6124519e+03 1.5569592e+03 - 3.4357566e+02 2.6033115e+03 1.5603132e+03 - 2.7718761e+02 2.5981763e+03 1.5558709e+03 - 2.0749252e+02 2.5952319e+03 1.5462042e+03 - 1.3579413e+02 2.5933343e+03 1.5329387e+03 - 6.2855489e+01 2.5917294e+03 1.5171510e+03 - -1.0839858e+01 2.5898989e+03 1.4995875e+03 - -8.4962684e+01 2.5874733e+03 1.4807869e+03 - -1.5927409e+02 2.5841807e+03 1.4611528e+03 - -2.3359087e+02 2.5798160e+03 1.4409975e+03 - -3.0776585e+02 2.5742207e+03 1.4205689e+03 - -3.8167625e+02 2.5672711e+03 1.4000690e+03 - -4.5521648e+02 2.5588688e+03 1.3796650e+03 - -5.2829354e+02 2.5489355e+03 1.3594978e+03 - -6.0082404e+02 2.5374086e+03 1.3396876e+03 - -6.7273212e+02 2.5242381e+03 1.3203378e+03 - -7.4394797e+02 2.5093846e+03 1.3015380e+03 - -8.1440684e+02 2.4928172e+03 1.2833663e+03 - -8.8404821e+02 2.4745129e+03 1.2658912e+03 - -9.5281521e+02 2.4544547e+03 1.2491724e+03 - -1.0206542e+03 2.4326313e+03 1.2332627e+03 - -1.0875141e+03 2.4090364e+03 1.2182081e+03 - -1.1533468e+03 2.3836678e+03 1.2040491e+03 - -1.2181058e+03 2.3565271e+03 1.1908211e+03 - -1.2817472e+03 2.3276195e+03 1.1785551e+03 - -1.3442285e+03 2.2969531e+03 1.1672779e+03 - -1.4055089e+03 2.2645385e+03 1.1570129e+03 - -1.4655495e+03 2.2303891e+03 1.1477802e+03 - -1.5243123e+03 2.1945202e+03 1.1395968e+03 - -1.5817609e+03 2.1569492e+03 1.1324773e+03 - -1.6378602e+03 2.1176953e+03 1.1264339e+03 - -1.6925760e+03 2.0767794e+03 1.1214763e+03 - -1.7458755e+03 2.0342239e+03 1.1176125e+03 - -1.7977269e+03 1.9900525e+03 1.1148484e+03 - -1.8480994e+03 1.9442902e+03 1.1131883e+03 - -1.8969633e+03 1.8969633e+03 1.1126347e+03 - -1.9442902e+03 1.8480994e+03 1.1131883e+03 - -1.9900525e+03 1.7977269e+03 1.1148484e+03 - -2.0342239e+03 1.7458755e+03 1.1176125e+03 - -2.0767794e+03 1.6925760e+03 1.1214763e+03 - -2.1176953e+03 1.6378602e+03 1.1264339e+03 - -2.1569492e+03 1.5817609e+03 1.1324773e+03 - -2.1945202e+03 1.5243123e+03 1.1395968e+03 - -2.2303891e+03 1.4655495e+03 1.1477802e+03 - -2.2645385e+03 1.4055089e+03 1.1570129e+03 - -2.2969531e+03 1.3442285e+03 1.1672779e+03 - -2.3276195e+03 1.2817472e+03 1.1785551e+03 - -2.3565271e+03 1.2181058e+03 1.1908211e+03 - -2.3836678e+03 1.1533468e+03 1.2040491e+03 - -2.4090364e+03 1.0875141e+03 1.2182081e+03 - -2.4326313e+03 1.0206542e+03 1.2332627e+03 - -2.4544547e+03 9.5281521e+02 1.2491724e+03 - -2.4745129e+03 8.8404821e+02 1.2658912e+03 - -2.4928172e+03 8.1440684e+02 1.2833663e+03 - -2.5093846e+03 7.4394797e+02 1.3015380e+03 - -2.5242381e+03 6.7273212e+02 1.3203378e+03 - -2.5374086e+03 6.0082404e+02 1.3396876e+03 - -2.5489355e+03 5.2829354e+02 1.3594978e+03 - -2.5588688e+03 4.5521648e+02 1.3796650e+03 - -2.5672711e+03 3.8167625e+02 1.4000690e+03 - -2.5742207e+03 3.0776585e+02 1.4205689e+03 - -2.5798160e+03 2.3359087e+02 1.4409975e+03 - -2.5841807e+03 1.5927409e+02 1.4611528e+03 - -2.5874733e+03 8.4962684e+01 1.4807869e+03 - -2.5898989e+03 1.0839858e+01 1.4995875e+03 - -2.5917294e+03 -6.2855489e+01 1.5171510e+03 - -2.5933343e+03 -1.3579413e+02 1.5329387e+03 - -2.5952319e+03 -2.0749252e+02 1.5462042e+03 - -2.5981763e+03 -2.7718761e+02 1.5558709e+03 - -2.6033115e+03 -3.4357566e+02 1.5603132e+03 - -2.6124519e+03 -4.0422394e+02 1.5569592e+03 - -2.6285942e+03 -4.5412820e+02 1.5415653e+03 - -2.6567350e+03 -4.8186336e+02 1.5070607e+03 - -2.7040960e+03 -4.5899481e+02 1.4432481e+03 - -2.7714693e+03 -3.1892657e+02 1.3491923e+03 - -2.8135739e+03 4.8134273e-09 1.2897641e+03 - -2.7714693e+03 3.1892657e+02 1.3491923e+03 - -2.7040960e+03 4.5899481e+02 1.4432481e+03 - -2.6567350e+03 4.8186336e+02 1.5070607e+03 - -2.6285942e+03 4.5412820e+02 1.5415653e+03 - -2.6124519e+03 4.0422394e+02 1.5569592e+03 - -2.6033115e+03 3.4357566e+02 1.5603132e+03 - -2.5981763e+03 2.7718761e+02 1.5558709e+03 - -2.5952319e+03 2.0749252e+02 1.5462042e+03 - -2.5933343e+03 1.3579413e+02 1.5329387e+03 - -2.5917294e+03 6.2855489e+01 1.5171510e+03 - -2.5898989e+03 -1.0839858e+01 1.4995875e+03 - -2.5874733e+03 -8.4962684e+01 1.4807869e+03 - -2.5841807e+03 -1.5927409e+02 1.4611528e+03 - -2.5798160e+03 -2.3359087e+02 1.4409975e+03 - -2.5742207e+03 -3.0776585e+02 1.4205689e+03 - -2.5672711e+03 -3.8167625e+02 1.4000690e+03 - -2.5588688e+03 -4.5521648e+02 1.3796650e+03 - -2.5489355e+03 -5.2829354e+02 1.3594978e+03 - -2.5374086e+03 -6.0082404e+02 1.3396876e+03 - -2.5242381e+03 -6.7273212e+02 1.3203378e+03 - -2.5093846e+03 -7.4394797e+02 1.3015380e+03 - -2.4928172e+03 -8.1440684e+02 1.2833663e+03 - -2.4745129e+03 -8.8404821e+02 1.2658912e+03 - -2.4544547e+03 -9.5281521e+02 1.2491724e+03 - -2.4326313e+03 -1.0206542e+03 1.2332627e+03 - -2.4090364e+03 -1.0875141e+03 1.2182081e+03 - -2.3836678e+03 -1.1533468e+03 1.2040491e+03 - -2.3565271e+03 -1.2181058e+03 1.1908211e+03 - -2.3276195e+03 -1.2817472e+03 1.1785551e+03 - -2.2969531e+03 -1.3442285e+03 1.1672779e+03 - -2.2645385e+03 -1.4055089e+03 1.1570129e+03 - -2.2303891e+03 -1.4655495e+03 1.1477802e+03 - -2.1945202e+03 -1.5243123e+03 1.1395968e+03 - -2.1569492e+03 -1.5817609e+03 1.1324773e+03 - -2.1176953e+03 -1.6378602e+03 1.1264339e+03 - -2.0767794e+03 -1.6925760e+03 1.1214763e+03 - -2.0342239e+03 -1.7458755e+03 1.1176125e+03 - -1.9900525e+03 -1.7977269e+03 1.1148484e+03 - -1.9442902e+03 -1.8480994e+03 1.1131883e+03 - -1.8969633e+03 -1.8969633e+03 1.1126347e+03 - -1.8480994e+03 -1.9442902e+03 1.1131883e+03 - -1.7977269e+03 -1.9900525e+03 1.1148484e+03 - -1.7458755e+03 -2.0342239e+03 1.1176125e+03 - -1.6925760e+03 -2.0767794e+03 1.1214763e+03 - -1.6378602e+03 -2.1176953e+03 1.1264339e+03 - -1.5817609e+03 -2.1569492e+03 1.1324773e+03 - -1.5243123e+03 -2.1945202e+03 1.1395968e+03 - -1.4655495e+03 -2.2303891e+03 1.1477802e+03 - -1.4055089e+03 -2.2645385e+03 1.1570129e+03 - -1.3442285e+03 -2.2969531e+03 1.1672779e+03 - -1.2817472e+03 -2.3276195e+03 1.1785551e+03 - -1.2181058e+03 -2.3565271e+03 1.1908211e+03 - -1.1533468e+03 -2.3836678e+03 1.2040491e+03 - -1.0875141e+03 -2.4090364e+03 1.2182081e+03 - -1.0206542e+03 -2.4326313e+03 1.2332627e+03 - -9.5281521e+02 -2.4544547e+03 1.2491724e+03 - -8.8404821e+02 -2.4745129e+03 1.2658912e+03 - -8.1440684e+02 -2.4928172e+03 1.2833663e+03 - -7.4394797e+02 -2.5093846e+03 1.3015380e+03 - -6.7273212e+02 -2.5242381e+03 1.3203378e+03 - -6.0082404e+02 -2.5374086e+03 1.3396876e+03 - -5.2829354e+02 -2.5489355e+03 1.3594978e+03 - -4.5521648e+02 -2.5588688e+03 1.3796650e+03 - -3.8167625e+02 -2.5672711e+03 1.4000690e+03 - -3.0776585e+02 -2.5742207e+03 1.4205689e+03 - -2.3359087e+02 -2.5798160e+03 1.4409975e+03 - -1.5927409e+02 -2.5841807e+03 1.4611528e+03 - -8.4962684e+01 -2.5874733e+03 1.4807869e+03 - -1.0839858e+01 -2.5898989e+03 1.4995875e+03 - 6.2855489e+01 -2.5917294e+03 1.5171510e+03 - 1.3579413e+02 -2.5933343e+03 1.5329387e+03 - 2.0749252e+02 -2.5952319e+03 1.5462042e+03 - 2.7718761e+02 -2.5981763e+03 1.5558709e+03 - 3.4357566e+02 -2.6033115e+03 1.5603132e+03 - 4.0422394e+02 -2.6124519e+03 1.5569592e+03 - 4.5412820e+02 -2.6285942e+03 1.5415653e+03 - 4.8186336e+02 -2.6567350e+03 1.5070607e+03 - 4.5899481e+02 -2.7040960e+03 1.4432481e+03 - 3.1892657e+02 -2.7714693e+03 1.3491923e+03 - 0.0000000e+00 -2.8135739e+03 1.2897641e+03 - -3.1892657e+02 -2.7714693e+03 1.3491923e+03 - -4.5899481e+02 -2.7040960e+03 1.4432481e+03 - -4.8186336e+02 -2.6567350e+03 1.5070607e+03 - -4.5412820e+02 -2.6285942e+03 1.5415653e+03 - -4.0422394e+02 -2.6124519e+03 1.5569592e+03 - -3.4357566e+02 -2.6033115e+03 1.5603132e+03 - -2.7718761e+02 -2.5981763e+03 1.5558709e+03 - -2.0749252e+02 -2.5952319e+03 1.5462042e+03 - -1.3579413e+02 -2.5933343e+03 1.5329387e+03 - -6.2855489e+01 -2.5917294e+03 1.5171510e+03 - 1.0839858e+01 -2.5898989e+03 1.4995875e+03 - 8.4962684e+01 -2.5874733e+03 1.4807869e+03 - 1.5927409e+02 -2.5841807e+03 1.4611528e+03 - 2.3359087e+02 -2.5798160e+03 1.4409975e+03 - 3.0776585e+02 -2.5742207e+03 1.4205689e+03 - 3.8167625e+02 -2.5672711e+03 1.4000690e+03 - 4.5521648e+02 -2.5588688e+03 1.3796650e+03 - 5.2829354e+02 -2.5489355e+03 1.3594978e+03 - 6.0082404e+02 -2.5374086e+03 1.3396876e+03 - 6.7273212e+02 -2.5242381e+03 1.3203378e+03 - 7.4394797e+02 -2.5093846e+03 1.3015380e+03 - 8.1440684e+02 -2.4928172e+03 1.2833663e+03 - 8.8404821e+02 -2.4745129e+03 1.2658912e+03 - 9.5281521e+02 -2.4544547e+03 1.2491724e+03 - 1.0206542e+03 -2.4326313e+03 1.2332627e+03 - 1.0875141e+03 -2.4090364e+03 1.2182081e+03 - 1.1533468e+03 -2.3836678e+03 1.2040491e+03 - 1.2181058e+03 -2.3565271e+03 1.1908211e+03 - 1.2817472e+03 -2.3276195e+03 1.1785551e+03 - 1.3442285e+03 -2.2969531e+03 1.1672779e+03 - 1.4055089e+03 -2.2645385e+03 1.1570129e+03 - 1.4655495e+03 -2.2303891e+03 1.1477802e+03 - 1.5243123e+03 -2.1945202e+03 1.1395968e+03 - 1.5817609e+03 -2.1569492e+03 1.1324773e+03 - 1.6378602e+03 -2.1176953e+03 1.1264339e+03 - 1.6925760e+03 -2.0767794e+03 1.1214763e+03 - 1.7458755e+03 -2.0342239e+03 1.1176125e+03 - 1.7977269e+03 -1.9900525e+03 1.1148484e+03 - 1.8480994e+03 -1.9442902e+03 1.1131883e+03 - 1.8969633e+03 -1.8969633e+03 1.1126347e+03 - 1.9442902e+03 -1.8480994e+03 1.1131883e+03 - 1.9900525e+03 -1.7977269e+03 1.1148484e+03 - 2.0342239e+03 -1.7458755e+03 1.1176125e+03 - 2.0767794e+03 -1.6925760e+03 1.1214763e+03 - 2.1176953e+03 -1.6378602e+03 1.1264339e+03 - 2.1569492e+03 -1.5817609e+03 1.1324773e+03 - 2.1945202e+03 -1.5243123e+03 1.1395968e+03 - 2.2303891e+03 -1.4655495e+03 1.1477802e+03 - 2.2645385e+03 -1.4055089e+03 1.1570129e+03 - 2.2969531e+03 -1.3442285e+03 1.1672779e+03 - 2.3276195e+03 -1.2817472e+03 1.1785551e+03 - 2.3565271e+03 -1.2181058e+03 1.1908211e+03 - 2.3836678e+03 -1.1533468e+03 1.2040491e+03 - 2.4090364e+03 -1.0875141e+03 1.2182081e+03 - 2.4326313e+03 -1.0206542e+03 1.2332627e+03 - 2.4544547e+03 -9.5281521e+02 1.2491724e+03 - 2.4745129e+03 -8.8404821e+02 1.2658912e+03 - 2.4928172e+03 -8.1440684e+02 1.2833663e+03 - 2.5093846e+03 -7.4394797e+02 1.3015380e+03 - 2.5242381e+03 -6.7273212e+02 1.3203378e+03 - 2.5374086e+03 -6.0082404e+02 1.3396876e+03 - 2.5489355e+03 -5.2829354e+02 1.3594978e+03 - 2.5588688e+03 -4.5521648e+02 1.3796650e+03 - 2.5672711e+03 -3.8167625e+02 1.4000690e+03 - 2.5742207e+03 -3.0776585e+02 1.4205689e+03 - 2.5798160e+03 -2.3359087e+02 1.4409975e+03 - 2.5841807e+03 -1.5927409e+02 1.4611528e+03 - 2.5874733e+03 -8.4962684e+01 1.4807869e+03 - 2.5898989e+03 -1.0839858e+01 1.4995875e+03 - 2.5917294e+03 6.2855489e+01 1.5171510e+03 - 2.5933343e+03 1.3579413e+02 1.5329387e+03 - 2.5952319e+03 2.0749252e+02 1.5462042e+03 - 2.5981763e+03 2.7718761e+02 1.5558709e+03 - 2.6033115e+03 3.4357566e+02 1.5603132e+03 - 2.6124519e+03 4.0422394e+02 1.5569592e+03 - 2.6285942e+03 4.5412820e+02 1.5415653e+03 - 2.6567350e+03 4.8186336e+02 1.5070607e+03 - 2.7040960e+03 4.5899481e+02 1.4432481e+03 - 2.7714693e+03 3.1892657e+02 1.3491923e+03 - 2.8135739e+03 4.8134273e-09 1.2897641e+03 - 2.8862588e+03 -2.4067136e-09 1.1917696e+03 - 2.7318986e+03 -5.5302592e+02 1.4096371e+03 - 2.6422039e+03 -5.8987999e+02 1.5341427e+03 - 2.6117093e+03 -5.4226815e+02 1.5727811e+03 - 2.6019643e+03 -4.7659280e+02 1.5799361e+03 - 2.6007171e+03 -4.0490228e+02 1.5729318e+03 - 2.6032371e+03 -3.3058577e+02 1.5584553e+03 - 2.6073331e+03 -2.5492483e+02 1.5396072e+03 - 2.6118426e+03 -1.7852329e+02 1.5180368e+03 - 2.6160828e+03 -1.0172120e+02 1.4947206e+03 - 2.6196189e+03 -2.4740199e+01 1.4702881e+03 - 2.6221562e+03 5.2257711e+01 1.4451750e+03 - 2.6234847e+03 1.2914374e+02 1.4197002e+03 - 2.6234488e+03 2.0580936e+02 1.3941088e+03 - 2.6219300e+03 2.8215943e+02 1.3685959e+03 - 2.6188362e+03 3.5810843e+02 1.3433218e+03 - 2.6140948e+03 4.3357811e+02 1.3184206e+03 - 2.6076481e+03 5.0849610e+02 1.2940066e+03 - 2.5994508e+03 5.8279489e+02 1.2701786e+03 - 2.5894672e+03 6.5641118e+02 1.2470221e+03 - 2.5776699e+03 7.2928534e+02 1.2246118e+03 - 2.5640385e+03 8.0136102e+02 1.2030132e+03 - 2.5485586e+03 8.7258478e+02 1.1822836e+03 - 2.5312213e+03 9.4290584e+02 1.1624733e+03 - 2.5120221e+03 1.0122758e+03 1.1436261e+03 - 2.4909606e+03 1.0806483e+03 1.1257804e+03 - 2.4680403e+03 1.1479792e+03 1.1089695e+03 - 2.4432676e+03 1.2142259e+03 1.0932223e+03 - 2.4166521e+03 1.2793474e+03 1.0785638e+03 - 2.3882058e+03 1.3433042e+03 1.0650153e+03 - 2.3579430e+03 1.4060582e+03 1.0525953e+03 - 2.3258800e+03 1.4675724e+03 1.0413193e+03 - 2.2920351e+03 1.5278109e+03 1.0312003e+03 - 2.2564281e+03 1.5867386e+03 1.0222494e+03 - 2.2190801e+03 1.6443216e+03 1.0144756e+03 - 2.1800139e+03 1.7005268e+03 1.0078863e+03 - 2.1392532e+03 1.7553216e+03 1.0024876e+03 - 2.0968227e+03 1.8086744e+03 9.9828404e+02 - 2.0527481e+03 1.8605541e+03 9.9527909e+02 - 2.0070562e+03 1.9109307e+03 9.9347518e+02 - 1.9597743e+03 1.9597743e+03 9.9287372e+02 - 1.9109307e+03 2.0070562e+03 9.9347518e+02 - 1.8605541e+03 2.0527481e+03 9.9527909e+02 - 1.8086744e+03 2.0968227e+03 9.9828404e+02 - 1.7553216e+03 2.1392532e+03 1.0024876e+03 - 1.7005268e+03 2.1800139e+03 1.0078863e+03 - 1.6443216e+03 2.2190801e+03 1.0144756e+03 - 1.5867386e+03 2.2564281e+03 1.0222494e+03 - 1.5278109e+03 2.2920351e+03 1.0312003e+03 - 1.4675724e+03 2.3258800e+03 1.0413193e+03 - 1.4060582e+03 2.3579430e+03 1.0525953e+03 - 1.3433042e+03 2.3882058e+03 1.0650153e+03 - 1.2793474e+03 2.4166521e+03 1.0785638e+03 - 1.2142259e+03 2.4432676e+03 1.0932223e+03 - 1.1479792e+03 2.4680403e+03 1.1089695e+03 - 1.0806483e+03 2.4909606e+03 1.1257804e+03 - 1.0122758e+03 2.5120221e+03 1.1436261e+03 - 9.4290584e+02 2.5312213e+03 1.1624733e+03 - 8.7258478e+02 2.5485586e+03 1.1822836e+03 - 8.0136102e+02 2.5640385e+03 1.2030132e+03 - 7.2928534e+02 2.5776699e+03 1.2246118e+03 - 6.5641118e+02 2.5894672e+03 1.2470221e+03 - 5.8279489e+02 2.5994508e+03 1.2701786e+03 - 5.0849610e+02 2.6076481e+03 1.2940066e+03 - 4.3357811e+02 2.6140948e+03 1.3184206e+03 - 3.5810843e+02 2.6188362e+03 1.3433218e+03 - 2.8215943e+02 2.6219300e+03 1.3685959e+03 - 2.0580936e+02 2.6234488e+03 1.3941088e+03 - 1.2914374e+02 2.6234847e+03 1.4197002e+03 - 5.2257711e+01 2.6221562e+03 1.4451750e+03 - -2.4740199e+01 2.6196189e+03 1.4702881e+03 - -1.0172120e+02 2.6160828e+03 1.4947206e+03 - -1.7852329e+02 2.6118426e+03 1.5180368e+03 - -2.5492483e+02 2.6073331e+03 1.5396072e+03 - -3.3058577e+02 2.6032371e+03 1.5584553e+03 - -4.0490228e+02 2.6007171e+03 1.5729318e+03 - -4.7659280e+02 2.6019643e+03 1.5799361e+03 - -5.4226815e+02 2.6117093e+03 1.5727811e+03 - -5.8987999e+02 2.6422039e+03 1.5341427e+03 - -5.5302592e+02 2.7318986e+03 1.4096371e+03 - 7.2201409e-09 2.8862588e+03 1.1917696e+03 - 5.5302592e+02 2.7318986e+03 1.4096371e+03 - 5.8987999e+02 2.6422039e+03 1.5341427e+03 - 5.4226815e+02 2.6117093e+03 1.5727811e+03 - 4.7659280e+02 2.6019643e+03 1.5799361e+03 - 4.0490228e+02 2.6007171e+03 1.5729318e+03 - 3.3058577e+02 2.6032371e+03 1.5584553e+03 - 2.5492483e+02 2.6073331e+03 1.5396072e+03 - 1.7852329e+02 2.6118426e+03 1.5180368e+03 - 1.0172120e+02 2.6160828e+03 1.4947206e+03 - 2.4740199e+01 2.6196189e+03 1.4702881e+03 - -5.2257711e+01 2.6221562e+03 1.4451750e+03 - -1.2914374e+02 2.6234847e+03 1.4197002e+03 - -2.0580936e+02 2.6234488e+03 1.3941088e+03 - -2.8215943e+02 2.6219300e+03 1.3685959e+03 - -3.5810843e+02 2.6188362e+03 1.3433218e+03 - -4.3357811e+02 2.6140948e+03 1.3184206e+03 - -5.0849610e+02 2.6076481e+03 1.2940066e+03 - -5.8279489e+02 2.5994508e+03 1.2701786e+03 - -6.5641118e+02 2.5894672e+03 1.2470221e+03 - -7.2928534e+02 2.5776699e+03 1.2246118e+03 - -8.0136102e+02 2.5640385e+03 1.2030132e+03 - -8.7258478e+02 2.5485586e+03 1.1822836e+03 - -9.4290584e+02 2.5312213e+03 1.1624733e+03 - -1.0122758e+03 2.5120221e+03 1.1436261e+03 - -1.0806483e+03 2.4909606e+03 1.1257804e+03 - -1.1479792e+03 2.4680403e+03 1.1089695e+03 - -1.2142259e+03 2.4432676e+03 1.0932223e+03 - -1.2793474e+03 2.4166521e+03 1.0785638e+03 - -1.3433042e+03 2.3882058e+03 1.0650153e+03 - -1.4060582e+03 2.3579430e+03 1.0525953e+03 - -1.4675724e+03 2.3258800e+03 1.0413193e+03 - -1.5278109e+03 2.2920351e+03 1.0312003e+03 - -1.5867386e+03 2.2564281e+03 1.0222494e+03 - -1.6443216e+03 2.2190801e+03 1.0144756e+03 - -1.7005268e+03 2.1800139e+03 1.0078863e+03 - -1.7553216e+03 2.1392532e+03 1.0024876e+03 - -1.8086744e+03 2.0968227e+03 9.9828404e+02 - -1.8605541e+03 2.0527481e+03 9.9527909e+02 - -1.9109307e+03 2.0070562e+03 9.9347518e+02 - -1.9597743e+03 1.9597743e+03 9.9287372e+02 - -2.0070562e+03 1.9109307e+03 9.9347518e+02 - -2.0527481e+03 1.8605541e+03 9.9527909e+02 - -2.0968227e+03 1.8086744e+03 9.9828404e+02 - -2.1392532e+03 1.7553216e+03 1.0024876e+03 - -2.1800139e+03 1.7005268e+03 1.0078863e+03 - -2.2190801e+03 1.6443216e+03 1.0144756e+03 - -2.2564281e+03 1.5867386e+03 1.0222494e+03 - -2.2920351e+03 1.5278109e+03 1.0312003e+03 - -2.3258800e+03 1.4675724e+03 1.0413193e+03 - -2.3579430e+03 1.4060582e+03 1.0525953e+03 - -2.3882058e+03 1.3433042e+03 1.0650153e+03 - -2.4166521e+03 1.2793474e+03 1.0785638e+03 - -2.4432676e+03 1.2142259e+03 1.0932223e+03 - -2.4680403e+03 1.1479792e+03 1.1089695e+03 - -2.4909606e+03 1.0806483e+03 1.1257804e+03 - -2.5120221e+03 1.0122758e+03 1.1436261e+03 - -2.5312213e+03 9.4290584e+02 1.1624733e+03 - -2.5485586e+03 8.7258478e+02 1.1822836e+03 - -2.5640385e+03 8.0136102e+02 1.2030132e+03 - -2.5776699e+03 7.2928534e+02 1.2246118e+03 - -2.5894672e+03 6.5641118e+02 1.2470221e+03 - -2.5994508e+03 5.8279489e+02 1.2701786e+03 - -2.6076481e+03 5.0849610e+02 1.2940066e+03 - -2.6140948e+03 4.3357811e+02 1.3184206e+03 - -2.6188362e+03 3.5810843e+02 1.3433218e+03 - -2.6219300e+03 2.8215943e+02 1.3685959e+03 - -2.6234488e+03 2.0580936e+02 1.3941088e+03 - -2.6234847e+03 1.2914374e+02 1.4197002e+03 - -2.6221562e+03 5.2257711e+01 1.4451750e+03 - -2.6196189e+03 -2.4740199e+01 1.4702881e+03 - -2.6160828e+03 -1.0172120e+02 1.4947206e+03 - -2.6118426e+03 -1.7852329e+02 1.5180368e+03 - -2.6073331e+03 -2.5492483e+02 1.5396072e+03 - -2.6032371e+03 -3.3058577e+02 1.5584553e+03 - -2.6007171e+03 -4.0490228e+02 1.5729318e+03 - -2.6019643e+03 -4.7659280e+02 1.5799361e+03 - -2.6117093e+03 -5.4226815e+02 1.5727811e+03 - -2.6422039e+03 -5.8987999e+02 1.5341427e+03 - -2.7318986e+03 -5.5302592e+02 1.4096371e+03 - -2.8862588e+03 0.0000000e+00 1.1917696e+03 - -2.7318986e+03 5.5302592e+02 1.4096371e+03 - -2.6422039e+03 5.8987999e+02 1.5341427e+03 - -2.6117093e+03 5.4226815e+02 1.5727811e+03 - -2.6019643e+03 4.7659280e+02 1.5799361e+03 - -2.6007171e+03 4.0490228e+02 1.5729318e+03 - -2.6032371e+03 3.3058577e+02 1.5584553e+03 - -2.6073331e+03 2.5492483e+02 1.5396072e+03 - -2.6118426e+03 1.7852329e+02 1.5180368e+03 - -2.6160828e+03 1.0172120e+02 1.4947206e+03 - -2.6196189e+03 2.4740199e+01 1.4702881e+03 - -2.6221562e+03 -5.2257711e+01 1.4451750e+03 - -2.6234847e+03 -1.2914374e+02 1.4197002e+03 - -2.6234488e+03 -2.0580936e+02 1.3941088e+03 - -2.6219300e+03 -2.8215943e+02 1.3685959e+03 - -2.6188362e+03 -3.5810843e+02 1.3433218e+03 - -2.6140948e+03 -4.3357811e+02 1.3184206e+03 - -2.6076481e+03 -5.0849610e+02 1.2940066e+03 - -2.5994508e+03 -5.8279489e+02 1.2701786e+03 - -2.5894672e+03 -6.5641118e+02 1.2470221e+03 - -2.5776699e+03 -7.2928534e+02 1.2246118e+03 - -2.5640385e+03 -8.0136102e+02 1.2030132e+03 - -2.5485586e+03 -8.7258478e+02 1.1822836e+03 - -2.5312213e+03 -9.4290584e+02 1.1624733e+03 - -2.5120221e+03 -1.0122758e+03 1.1436261e+03 - -2.4909606e+03 -1.0806483e+03 1.1257804e+03 - -2.4680403e+03 -1.1479792e+03 1.1089695e+03 - -2.4432676e+03 -1.2142259e+03 1.0932223e+03 - -2.4166521e+03 -1.2793474e+03 1.0785638e+03 - -2.3882058e+03 -1.3433042e+03 1.0650153e+03 - -2.3579430e+03 -1.4060582e+03 1.0525953e+03 - -2.3258800e+03 -1.4675724e+03 1.0413193e+03 - -2.2920351e+03 -1.5278109e+03 1.0312003e+03 - -2.2564281e+03 -1.5867386e+03 1.0222494e+03 - -2.2190801e+03 -1.6443216e+03 1.0144756e+03 - -2.1800139e+03 -1.7005268e+03 1.0078863e+03 - -2.1392532e+03 -1.7553216e+03 1.0024876e+03 - -2.0968227e+03 -1.8086744e+03 9.9828404e+02 - -2.0527481e+03 -1.8605541e+03 9.9527909e+02 - -2.0070562e+03 -1.9109307e+03 9.9347518e+02 - -1.9597743e+03 -1.9597743e+03 9.9287372e+02 - -1.9109307e+03 -2.0070562e+03 9.9347518e+02 - -1.8605541e+03 -2.0527481e+03 9.9527909e+02 - -1.8086744e+03 -2.0968227e+03 9.9828404e+02 - -1.7553216e+03 -2.1392532e+03 1.0024876e+03 - -1.7005268e+03 -2.1800139e+03 1.0078863e+03 - -1.6443216e+03 -2.2190801e+03 1.0144756e+03 - -1.5867386e+03 -2.2564281e+03 1.0222494e+03 - -1.5278109e+03 -2.2920351e+03 1.0312003e+03 - -1.4675724e+03 -2.3258800e+03 1.0413193e+03 - -1.4060582e+03 -2.3579430e+03 1.0525953e+03 - -1.3433042e+03 -2.3882058e+03 1.0650153e+03 - -1.2793474e+03 -2.4166521e+03 1.0785638e+03 - -1.2142259e+03 -2.4432676e+03 1.0932223e+03 - -1.1479792e+03 -2.4680403e+03 1.1089695e+03 - -1.0806483e+03 -2.4909606e+03 1.1257804e+03 - -1.0122758e+03 -2.5120221e+03 1.1436261e+03 - -9.4290584e+02 -2.5312213e+03 1.1624733e+03 - -8.7258478e+02 -2.5485586e+03 1.1822836e+03 - -8.0136102e+02 -2.5640385e+03 1.2030132e+03 - -7.2928534e+02 -2.5776699e+03 1.2246118e+03 - -6.5641118e+02 -2.5894672e+03 1.2470221e+03 - -5.8279489e+02 -2.5994508e+03 1.2701786e+03 - -5.0849610e+02 -2.6076481e+03 1.2940066e+03 - -4.3357811e+02 -2.6140948e+03 1.3184206e+03 - -3.5810843e+02 -2.6188362e+03 1.3433218e+03 - -2.8215943e+02 -2.6219300e+03 1.3685959e+03 - -2.0580936e+02 -2.6234488e+03 1.3941088e+03 - -1.2914374e+02 -2.6234847e+03 1.4197002e+03 - -5.2257711e+01 -2.6221562e+03 1.4451750e+03 - 2.4740199e+01 -2.6196189e+03 1.4702881e+03 - 1.0172120e+02 -2.6160828e+03 1.4947206e+03 - 1.7852329e+02 -2.6118426e+03 1.5180368e+03 - 2.5492483e+02 -2.6073331e+03 1.5396072e+03 - 3.3058577e+02 -2.6032371e+03 1.5584553e+03 - 4.0490228e+02 -2.6007171e+03 1.5729318e+03 - 4.7659280e+02 -2.6019643e+03 1.5799361e+03 - 5.4226815e+02 -2.6117093e+03 1.5727811e+03 - 5.8987999e+02 -2.6422039e+03 1.5341427e+03 - 5.5302592e+02 -2.7318986e+03 1.4096371e+03 - -2.4067136e-09 -2.8862588e+03 1.1917696e+03 - -5.5302592e+02 -2.7318986e+03 1.4096371e+03 - -5.8987999e+02 -2.6422039e+03 1.5341427e+03 - -5.4226815e+02 -2.6117093e+03 1.5727811e+03 - -4.7659280e+02 -2.6019643e+03 1.5799361e+03 - -4.0490228e+02 -2.6007171e+03 1.5729318e+03 - -3.3058577e+02 -2.6032371e+03 1.5584553e+03 - -2.5492483e+02 -2.6073331e+03 1.5396072e+03 - -1.7852329e+02 -2.6118426e+03 1.5180368e+03 - -1.0172120e+02 -2.6160828e+03 1.4947206e+03 - -2.4740199e+01 -2.6196189e+03 1.4702881e+03 - 5.2257711e+01 -2.6221562e+03 1.4451750e+03 - 1.2914374e+02 -2.6234847e+03 1.4197002e+03 - 2.0580936e+02 -2.6234488e+03 1.3941088e+03 - 2.8215943e+02 -2.6219300e+03 1.3685959e+03 - 3.5810843e+02 -2.6188362e+03 1.3433218e+03 - 4.3357811e+02 -2.6140948e+03 1.3184206e+03 - 5.0849610e+02 -2.6076481e+03 1.2940066e+03 - 5.8279489e+02 -2.5994508e+03 1.2701786e+03 - 6.5641118e+02 -2.5894672e+03 1.2470221e+03 - 7.2928534e+02 -2.5776699e+03 1.2246118e+03 - 8.0136102e+02 -2.5640385e+03 1.2030132e+03 - 8.7258478e+02 -2.5485586e+03 1.1822836e+03 - 9.4290584e+02 -2.5312213e+03 1.1624733e+03 - 1.0122758e+03 -2.5120221e+03 1.1436261e+03 - 1.0806483e+03 -2.4909606e+03 1.1257804e+03 - 1.1479792e+03 -2.4680403e+03 1.1089695e+03 - 1.2142259e+03 -2.4432676e+03 1.0932223e+03 - 1.2793474e+03 -2.4166521e+03 1.0785638e+03 - 1.3433042e+03 -2.3882058e+03 1.0650153e+03 - 1.4060582e+03 -2.3579430e+03 1.0525953e+03 - 1.4675724e+03 -2.3258800e+03 1.0413193e+03 - 1.5278109e+03 -2.2920351e+03 1.0312003e+03 - 1.5867386e+03 -2.2564281e+03 1.0222494e+03 - 1.6443216e+03 -2.2190801e+03 1.0144756e+03 - 1.7005268e+03 -2.1800139e+03 1.0078863e+03 - 1.7553216e+03 -2.1392532e+03 1.0024876e+03 - 1.8086744e+03 -2.0968227e+03 9.9828404e+02 - 1.8605541e+03 -2.0527481e+03 9.9527909e+02 - 1.9109307e+03 -2.0070562e+03 9.9347518e+02 - 1.9597743e+03 -1.9597743e+03 9.9287372e+02 - 2.0070562e+03 -1.9109307e+03 9.9347518e+02 - 2.0527481e+03 -1.8605541e+03 9.9527909e+02 - 2.0968227e+03 -1.8086744e+03 9.9828404e+02 - 2.1392532e+03 -1.7553216e+03 1.0024876e+03 - 2.1800139e+03 -1.7005268e+03 1.0078863e+03 - 2.2190801e+03 -1.6443216e+03 1.0144756e+03 - 2.2564281e+03 -1.5867386e+03 1.0222494e+03 - 2.2920351e+03 -1.5278109e+03 1.0312003e+03 - 2.3258800e+03 -1.4675724e+03 1.0413193e+03 - 2.3579430e+03 -1.4060582e+03 1.0525953e+03 - 2.3882058e+03 -1.3433042e+03 1.0650153e+03 - 2.4166521e+03 -1.2793474e+03 1.0785638e+03 - 2.4432676e+03 -1.2142259e+03 1.0932223e+03 - 2.4680403e+03 -1.1479792e+03 1.1089695e+03 - 2.4909606e+03 -1.0806483e+03 1.1257804e+03 - 2.5120221e+03 -1.0122758e+03 1.1436261e+03 - 2.5312213e+03 -9.4290584e+02 1.1624733e+03 - 2.5485586e+03 -8.7258478e+02 1.1822836e+03 - 2.5640385e+03 -8.0136102e+02 1.2030132e+03 - 2.5776699e+03 -7.2928534e+02 1.2246118e+03 - 2.5894672e+03 -6.5641118e+02 1.2470221e+03 - 2.5994508e+03 -5.8279489e+02 1.2701786e+03 - 2.6076481e+03 -5.0849610e+02 1.2940066e+03 - 2.6140948e+03 -4.3357811e+02 1.3184206e+03 - 2.6188362e+03 -3.5810843e+02 1.3433218e+03 - 2.6219300e+03 -2.8215943e+02 1.3685959e+03 - 2.6234488e+03 -2.0580936e+02 1.3941088e+03 - 2.6234847e+03 -1.2914374e+02 1.4197002e+03 - 2.6221562e+03 -5.2257711e+01 1.4451750e+03 - 2.6196189e+03 2.4740199e+01 1.4702881e+03 - 2.6160828e+03 1.0172120e+02 1.4947206e+03 - 2.6118426e+03 1.7852329e+02 1.5180368e+03 - 2.6073331e+03 2.5492483e+02 1.5396072e+03 - 2.6032371e+03 3.3058577e+02 1.5584553e+03 - 2.6007171e+03 4.0490228e+02 1.5729318e+03 - 2.6019643e+03 4.7659280e+02 1.5799361e+03 - 2.6117093e+03 5.4226815e+02 1.5727811e+03 - 2.6422039e+03 5.8987999e+02 1.5341427e+03 - 2.7318986e+03 5.5302592e+02 1.4096371e+03 - 2.8862588e+03 4.8134273e-09 1.1917696e+03 - 2.0544815e+03 0.0000000e+00 2.3688121e+03 - 2.3447725e+03 -6.2064172e+02 1.9568300e+03 - 2.4488118e+03 -5.8881469e+02 1.8060745e+03 - 2.4985636e+03 -5.2047783e+02 1.7299372e+03 - 2.5318480e+03 -4.4563958e+02 1.6749115e+03 - 2.5574964e+03 -3.6864206e+02 1.6285026e+03 - 2.5785358e+03 -2.9067536e+02 1.5864319e+03 - 2.5962484e+03 -2.1221987e+02 1.5468958e+03 - 2.6112492e+03 -1.3353372e+02 1.5090392e+03 - 2.6238567e+03 -5.4788109e+01 1.4724319e+03 - 2.6342422e+03 2.3886131e+01 1.4368549e+03 - 2.6424996e+03 1.0238001e+02 1.4022032e+03 - 2.6486795e+03 1.8059805e+02 1.3684352e+03 - 2.6528081e+03 2.5845413e+02 1.3355464e+03 - 2.6548978e+03 3.3586929e+02 1.3035538e+03 - 2.6549536e+03 4.1277040e+02 1.2724862e+03 - 2.6529767e+03 4.8908929e+02 1.2423787e+03 - 2.6489671e+03 5.6476214e+02 1.2132690e+03 - 2.6429254e+03 6.3972902e+02 1.1851947e+03 - 2.6348529e+03 7.1393348e+02 1.1581924e+03 - 2.6247529e+03 7.8732222e+02 1.1322961e+03 - 2.6126310e+03 8.5984479e+02 1.1075370e+03 - 2.5984946e+03 9.3145330e+02 1.0839430e+03 - 2.5823535e+03 1.0021022e+03 1.0615391e+03 - 2.5642199e+03 1.0717479e+03 1.0403468e+03 - 2.5441078e+03 1.1403489e+03 1.0203845e+03 - 2.5220333e+03 1.2078650e+03 1.0016678e+03 - 2.4980143e+03 1.2742577e+03 9.8420976e+02 - 2.4720705e+03 1.3394899e+03 9.6802093e+02 - 2.4442228e+03 1.4035252e+03 9.5310979e+02 - 2.4144937e+03 1.4663285e+03 9.3948300e+02 - 2.3829068e+03 1.5278655e+03 9.2714565e+02 - 2.3494868e+03 1.5881027e+03 9.1610152e+02 - 2.3142592e+03 1.6470070e+03 9.0635335e+02 - 2.2772506e+03 1.7045461e+03 8.9790299e+02 - 2.2384878e+03 1.7606880e+03 8.9075167e+02 - 2.1979987e+03 1.8154012e+03 8.8490011e+02 - 2.1558114e+03 1.8686545e+03 8.8034872e+02 - 2.1119545e+03 1.9204172e+03 8.7709767e+02 - 2.0664571e+03 1.9706587e+03 8.7514704e+02 - 2.0193486e+03 2.0193486e+03 8.7449683e+02 - 1.9706587e+03 2.0664571e+03 8.7514704e+02 - 1.9204172e+03 2.1119545e+03 8.7709767e+02 - 1.8686545e+03 2.1558114e+03 8.8034872e+02 - 1.8154012e+03 2.1979987e+03 8.8490011e+02 - 1.7606880e+03 2.2384878e+03 8.9075167e+02 - 1.7045461e+03 2.2772506e+03 8.9790299e+02 - 1.6470070e+03 2.3142592e+03 9.0635335e+02 - 1.5881027e+03 2.3494868e+03 9.1610152e+02 - 1.5278655e+03 2.3829068e+03 9.2714565e+02 - 1.4663285e+03 2.4144937e+03 9.3948300e+02 - 1.4035252e+03 2.4442228e+03 9.5310979e+02 - 1.3394899e+03 2.4720705e+03 9.6802093e+02 - 1.2742577e+03 2.4980143e+03 9.8420976e+02 - 1.2078650e+03 2.5220333e+03 1.0016678e+03 - 1.1403489e+03 2.5441078e+03 1.0203845e+03 - 1.0717479e+03 2.5642199e+03 1.0403468e+03 - 1.0021022e+03 2.5823535e+03 1.0615391e+03 - 9.3145330e+02 2.5984946e+03 1.0839430e+03 - 8.5984479e+02 2.6126310e+03 1.1075370e+03 - 7.8732222e+02 2.6247529e+03 1.1322961e+03 - 7.1393348e+02 2.6348529e+03 1.1581924e+03 - 6.3972902e+02 2.6429254e+03 1.1851947e+03 - 5.6476214e+02 2.6489671e+03 1.2132690e+03 - 4.8908929e+02 2.6529767e+03 1.2423787e+03 - 4.1277040e+02 2.6549536e+03 1.2724862e+03 - 3.3586929e+02 2.6548978e+03 1.3035538e+03 - 2.5845413e+02 2.6528081e+03 1.3355464e+03 - 1.8059805e+02 2.6486795e+03 1.3684352e+03 - 1.0238001e+02 2.6424996e+03 1.4022032e+03 - 2.3886131e+01 2.6342422e+03 1.4368549e+03 - -5.4788109e+01 2.6238567e+03 1.4724319e+03 - -1.3353372e+02 2.6112492e+03 1.5090392e+03 - -2.1221987e+02 2.5962484e+03 1.5468958e+03 - -2.9067536e+02 2.5785358e+03 1.5864319e+03 - -3.6864206e+02 2.5574964e+03 1.6285026e+03 - -4.4563958e+02 2.5318480e+03 1.6749115e+03 - -5.2047783e+02 2.4985636e+03 1.7299372e+03 - -5.8881469e+02 2.4488118e+03 1.8060745e+03 - -6.2064172e+02 2.3447725e+03 1.9568300e+03 - -2.4067136e-09 2.0544815e+03 2.3688121e+03 - 6.2064172e+02 2.3447725e+03 1.9568300e+03 - 5.8881469e+02 2.4488118e+03 1.8060745e+03 - 5.2047783e+02 2.4985636e+03 1.7299372e+03 - 4.4563958e+02 2.5318480e+03 1.6749115e+03 - 3.6864206e+02 2.5574964e+03 1.6285026e+03 - 2.9067536e+02 2.5785358e+03 1.5864319e+03 - 2.1221987e+02 2.5962484e+03 1.5468958e+03 - 1.3353372e+02 2.6112492e+03 1.5090392e+03 - 5.4788109e+01 2.6238567e+03 1.4724319e+03 - -2.3886131e+01 2.6342422e+03 1.4368549e+03 - -1.0238001e+02 2.6424996e+03 1.4022032e+03 - -1.8059805e+02 2.6486795e+03 1.3684352e+03 - -2.5845413e+02 2.6528081e+03 1.3355464e+03 - -3.3586929e+02 2.6548978e+03 1.3035538e+03 - -4.1277040e+02 2.6549536e+03 1.2724862e+03 - -4.8908929e+02 2.6529767e+03 1.2423787e+03 - -5.6476214e+02 2.6489671e+03 1.2132690e+03 - -6.3972902e+02 2.6429254e+03 1.1851947e+03 - -7.1393348e+02 2.6348529e+03 1.1581924e+03 - -7.8732222e+02 2.6247529e+03 1.1322961e+03 - -8.5984479e+02 2.6126310e+03 1.1075370e+03 - -9.3145330e+02 2.5984946e+03 1.0839430e+03 - -1.0021022e+03 2.5823535e+03 1.0615391e+03 - -1.0717479e+03 2.5642199e+03 1.0403468e+03 - -1.1403489e+03 2.5441078e+03 1.0203845e+03 - -1.2078650e+03 2.5220333e+03 1.0016678e+03 - -1.2742577e+03 2.4980143e+03 9.8420976e+02 - -1.3394899e+03 2.4720705e+03 9.6802093e+02 - -1.4035252e+03 2.4442228e+03 9.5310979e+02 - -1.4663285e+03 2.4144937e+03 9.3948300e+02 - -1.5278655e+03 2.3829068e+03 9.2714565e+02 - -1.5881027e+03 2.3494868e+03 9.1610152e+02 - -1.6470070e+03 2.3142592e+03 9.0635335e+02 - -1.7045461e+03 2.2772506e+03 8.9790299e+02 - -1.7606880e+03 2.2384878e+03 8.9075167e+02 - -1.8154012e+03 2.1979987e+03 8.8490011e+02 - -1.8686545e+03 2.1558114e+03 8.8034872e+02 - -1.9204172e+03 2.1119545e+03 8.7709767e+02 - -1.9706587e+03 2.0664571e+03 8.7514704e+02 - -2.0193486e+03 2.0193486e+03 8.7449683e+02 - -2.0664571e+03 1.9706587e+03 8.7514704e+02 - -2.1119545e+03 1.9204172e+03 8.7709767e+02 - -2.1558114e+03 1.8686545e+03 8.8034872e+02 - -2.1979987e+03 1.8154012e+03 8.8490011e+02 - -2.2384878e+03 1.7606880e+03 8.9075167e+02 - -2.2772506e+03 1.7045461e+03 8.9790299e+02 - -2.3142592e+03 1.6470070e+03 9.0635335e+02 - -2.3494868e+03 1.5881027e+03 9.1610152e+02 - -2.3829068e+03 1.5278655e+03 9.2714565e+02 - -2.4144937e+03 1.4663285e+03 9.3948300e+02 - -2.4442228e+03 1.4035252e+03 9.5310979e+02 - -2.4720705e+03 1.3394899e+03 9.6802093e+02 - -2.4980143e+03 1.2742577e+03 9.8420976e+02 - -2.5220333e+03 1.2078650e+03 1.0016678e+03 - -2.5441078e+03 1.1403489e+03 1.0203845e+03 - -2.5642199e+03 1.0717479e+03 1.0403468e+03 - -2.5823535e+03 1.0021022e+03 1.0615391e+03 - -2.5984946e+03 9.3145330e+02 1.0839430e+03 - -2.6126310e+03 8.5984479e+02 1.1075370e+03 - -2.6247529e+03 7.8732222e+02 1.1322961e+03 - -2.6348529e+03 7.1393348e+02 1.1581924e+03 - -2.6429254e+03 6.3972902e+02 1.1851947e+03 - -2.6489671e+03 5.6476214e+02 1.2132690e+03 - -2.6529767e+03 4.8908929e+02 1.2423787e+03 - -2.6549536e+03 4.1277040e+02 1.2724862e+03 - -2.6548978e+03 3.3586929e+02 1.3035538e+03 - -2.6528081e+03 2.5845413e+02 1.3355464e+03 - -2.6486795e+03 1.8059805e+02 1.3684352e+03 - -2.6424996e+03 1.0238001e+02 1.4022032e+03 - -2.6342422e+03 2.3886131e+01 1.4368549e+03 - -2.6238567e+03 -5.4788109e+01 1.4724319e+03 - -2.6112492e+03 -1.3353372e+02 1.5090392e+03 - -2.5962484e+03 -2.1221987e+02 1.5468958e+03 - -2.5785358e+03 -2.9067536e+02 1.5864319e+03 - -2.5574964e+03 -3.6864206e+02 1.6285026e+03 - -2.5318480e+03 -4.4563958e+02 1.6749115e+03 - -2.4985636e+03 -5.2047783e+02 1.7299372e+03 - -2.4488118e+03 -5.8881469e+02 1.8060745e+03 - -2.3447725e+03 -6.2064172e+02 1.9568300e+03 - -2.0544815e+03 0.0000000e+00 2.3688121e+03 - -2.3447725e+03 6.2064172e+02 1.9568300e+03 - -2.4488118e+03 5.8881469e+02 1.8060745e+03 - -2.4985636e+03 5.2047783e+02 1.7299372e+03 - -2.5318480e+03 4.4563958e+02 1.6749115e+03 - -2.5574964e+03 3.6864206e+02 1.6285026e+03 - -2.5785358e+03 2.9067536e+02 1.5864319e+03 - -2.5962484e+03 2.1221987e+02 1.5468958e+03 - -2.6112492e+03 1.3353372e+02 1.5090392e+03 - -2.6238567e+03 5.4788109e+01 1.4724319e+03 - -2.6342422e+03 -2.3886131e+01 1.4368549e+03 - -2.6424996e+03 -1.0238001e+02 1.4022032e+03 - -2.6486795e+03 -1.8059805e+02 1.3684352e+03 - -2.6528081e+03 -2.5845413e+02 1.3355464e+03 - -2.6548978e+03 -3.3586929e+02 1.3035538e+03 - -2.6549536e+03 -4.1277040e+02 1.2724862e+03 - -2.6529767e+03 -4.8908929e+02 1.2423787e+03 - -2.6489671e+03 -5.6476214e+02 1.2132690e+03 - -2.6429254e+03 -6.3972902e+02 1.1851947e+03 - -2.6348529e+03 -7.1393348e+02 1.1581924e+03 - -2.6247529e+03 -7.8732222e+02 1.1322961e+03 - -2.6126310e+03 -8.5984479e+02 1.1075370e+03 - -2.5984946e+03 -9.3145330e+02 1.0839430e+03 - -2.5823535e+03 -1.0021022e+03 1.0615391e+03 - -2.5642199e+03 -1.0717479e+03 1.0403468e+03 - -2.5441078e+03 -1.1403489e+03 1.0203845e+03 - -2.5220333e+03 -1.2078650e+03 1.0016678e+03 - -2.4980143e+03 -1.2742577e+03 9.8420976e+02 - -2.4720705e+03 -1.3394899e+03 9.6802093e+02 - -2.4442228e+03 -1.4035252e+03 9.5310979e+02 - -2.4144937e+03 -1.4663285e+03 9.3948300e+02 - -2.3829068e+03 -1.5278655e+03 9.2714565e+02 - -2.3494868e+03 -1.5881027e+03 9.1610152e+02 - -2.3142592e+03 -1.6470070e+03 9.0635335e+02 - -2.2772506e+03 -1.7045461e+03 8.9790299e+02 - -2.2384878e+03 -1.7606880e+03 8.9075167e+02 - -2.1979987e+03 -1.8154012e+03 8.8490011e+02 - -2.1558114e+03 -1.8686545e+03 8.8034872e+02 - -2.1119545e+03 -1.9204172e+03 8.7709767e+02 - -2.0664571e+03 -1.9706587e+03 8.7514704e+02 - -2.0193486e+03 -2.0193486e+03 8.7449683e+02 - -1.9706587e+03 -2.0664571e+03 8.7514704e+02 - -1.9204172e+03 -2.1119545e+03 8.7709767e+02 - -1.8686545e+03 -2.1558114e+03 8.8034872e+02 - -1.8154012e+03 -2.1979987e+03 8.8490011e+02 - -1.7606880e+03 -2.2384878e+03 8.9075167e+02 - -1.7045461e+03 -2.2772506e+03 8.9790299e+02 - -1.6470070e+03 -2.3142592e+03 9.0635335e+02 - -1.5881027e+03 -2.3494868e+03 9.1610152e+02 - -1.5278655e+03 -2.3829068e+03 9.2714565e+02 - -1.4663285e+03 -2.4144937e+03 9.3948300e+02 - -1.4035252e+03 -2.4442228e+03 9.5310979e+02 - -1.3394899e+03 -2.4720705e+03 9.6802093e+02 - -1.2742577e+03 -2.4980143e+03 9.8420976e+02 - -1.2078650e+03 -2.5220333e+03 1.0016678e+03 - -1.1403489e+03 -2.5441078e+03 1.0203845e+03 - -1.0717479e+03 -2.5642199e+03 1.0403468e+03 - -1.0021022e+03 -2.5823535e+03 1.0615391e+03 - -9.3145330e+02 -2.5984946e+03 1.0839430e+03 - -8.5984479e+02 -2.6126310e+03 1.1075370e+03 - -7.8732222e+02 -2.6247529e+03 1.1322961e+03 - -7.1393348e+02 -2.6348529e+03 1.1581924e+03 - -6.3972902e+02 -2.6429254e+03 1.1851947e+03 - -5.6476214e+02 -2.6489671e+03 1.2132690e+03 - -4.8908929e+02 -2.6529767e+03 1.2423787e+03 - -4.1277040e+02 -2.6549536e+03 1.2724862e+03 - -3.3586929e+02 -2.6548978e+03 1.3035538e+03 - -2.5845413e+02 -2.6528081e+03 1.3355464e+03 - -1.8059805e+02 -2.6486795e+03 1.3684352e+03 - -1.0238001e+02 -2.6424996e+03 1.4022032e+03 - -2.3886131e+01 -2.6342422e+03 1.4368549e+03 - 5.4788109e+01 -2.6238567e+03 1.4724319e+03 - 1.3353372e+02 -2.6112492e+03 1.5090392e+03 - 2.1221987e+02 -2.5962484e+03 1.5468958e+03 - 2.9067536e+02 -2.5785358e+03 1.5864319e+03 - 3.6864206e+02 -2.5574964e+03 1.6285026e+03 - 4.4563958e+02 -2.5318480e+03 1.6749115e+03 - 5.2047783e+02 -2.4985636e+03 1.7299372e+03 - 5.8881469e+02 -2.4488118e+03 1.8060745e+03 - 6.2064172e+02 -2.3447725e+03 1.9568300e+03 - 2.4067136e-09 -2.0544815e+03 2.3688121e+03 - -6.2064172e+02 -2.3447725e+03 1.9568300e+03 - -5.8881469e+02 -2.4488118e+03 1.8060745e+03 - -5.2047783e+02 -2.4985636e+03 1.7299372e+03 - -4.4563958e+02 -2.5318480e+03 1.6749115e+03 - -3.6864206e+02 -2.5574964e+03 1.6285026e+03 - -2.9067536e+02 -2.5785358e+03 1.5864319e+03 - -2.1221987e+02 -2.5962484e+03 1.5468958e+03 - -1.3353372e+02 -2.6112492e+03 1.5090392e+03 - -5.4788109e+01 -2.6238567e+03 1.4724319e+03 - 2.3886131e+01 -2.6342422e+03 1.4368549e+03 - 1.0238001e+02 -2.6424996e+03 1.4022032e+03 - 1.8059805e+02 -2.6486795e+03 1.3684352e+03 - 2.5845413e+02 -2.6528081e+03 1.3355464e+03 - 3.3586929e+02 -2.6548978e+03 1.3035538e+03 - 4.1277040e+02 -2.6549536e+03 1.2724862e+03 - 4.8908929e+02 -2.6529767e+03 1.2423787e+03 - 5.6476214e+02 -2.6489671e+03 1.2132690e+03 - 6.3972902e+02 -2.6429254e+03 1.1851947e+03 - 7.1393348e+02 -2.6348529e+03 1.1581924e+03 - 7.8732222e+02 -2.6247529e+03 1.1322961e+03 - 8.5984479e+02 -2.6126310e+03 1.1075370e+03 - 9.3145330e+02 -2.5984946e+03 1.0839430e+03 - 1.0021022e+03 -2.5823535e+03 1.0615391e+03 - 1.0717479e+03 -2.5642199e+03 1.0403468e+03 - 1.1403489e+03 -2.5441078e+03 1.0203845e+03 - 1.2078650e+03 -2.5220333e+03 1.0016678e+03 - 1.2742577e+03 -2.4980143e+03 9.8420976e+02 - 1.3394899e+03 -2.4720705e+03 9.6802093e+02 - 1.4035252e+03 -2.4442228e+03 9.5310979e+02 - 1.4663285e+03 -2.4144937e+03 9.3948300e+02 - 1.5278655e+03 -2.3829068e+03 9.2714565e+02 - 1.5881027e+03 -2.3494868e+03 9.1610152e+02 - 1.6470070e+03 -2.3142592e+03 9.0635335e+02 - 1.7045461e+03 -2.2772506e+03 8.9790299e+02 - 1.7606880e+03 -2.2384878e+03 8.9075167e+02 - 1.8154012e+03 -2.1979987e+03 8.8490011e+02 - 1.8686545e+03 -2.1558114e+03 8.8034872e+02 - 1.9204172e+03 -2.1119545e+03 8.7709767e+02 - 1.9706587e+03 -2.0664571e+03 8.7514704e+02 - 2.0193486e+03 -2.0193486e+03 8.7449683e+02 - 2.0664571e+03 -1.9706587e+03 8.7514704e+02 - 2.1119545e+03 -1.9204172e+03 8.7709767e+02 - 2.1558114e+03 -1.8686545e+03 8.8034872e+02 - 2.1979987e+03 -1.8154012e+03 8.8490011e+02 - 2.2384878e+03 -1.7606880e+03 8.9075167e+02 - 2.2772506e+03 -1.7045461e+03 8.9790299e+02 - 2.3142592e+03 -1.6470070e+03 9.0635335e+02 - 2.3494868e+03 -1.5881027e+03 9.1610152e+02 - 2.3829068e+03 -1.5278655e+03 9.2714565e+02 - 2.4144937e+03 -1.4663285e+03 9.3948300e+02 - 2.4442228e+03 -1.4035252e+03 9.5310979e+02 - 2.4720705e+03 -1.3394899e+03 9.6802093e+02 - 2.4980143e+03 -1.2742577e+03 9.8420976e+02 - 2.5220333e+03 -1.2078650e+03 1.0016678e+03 - 2.5441078e+03 -1.1403489e+03 1.0203845e+03 - 2.5642199e+03 -1.0717479e+03 1.0403468e+03 - 2.5823535e+03 -1.0021022e+03 1.0615391e+03 - 2.5984946e+03 -9.3145330e+02 1.0839430e+03 - 2.6126310e+03 -8.5984479e+02 1.1075370e+03 - 2.6247529e+03 -7.8732222e+02 1.1322961e+03 - 2.6348529e+03 -7.1393348e+02 1.1581924e+03 - 2.6429254e+03 -6.3972902e+02 1.1851947e+03 - 2.6489671e+03 -5.6476214e+02 1.2132690e+03 - 2.6529767e+03 -4.8908929e+02 1.2423787e+03 - 2.6549536e+03 -4.1277040e+02 1.2724862e+03 - 2.6548978e+03 -3.3586929e+02 1.3035538e+03 - 2.6528081e+03 -2.5845413e+02 1.3355464e+03 - 2.6486795e+03 -1.8059805e+02 1.3684352e+03 - 2.6424996e+03 -1.0238001e+02 1.4022032e+03 - 2.6342422e+03 -2.3886131e+01 1.4368549e+03 - 2.6238567e+03 5.4788109e+01 1.4724319e+03 - 2.6112492e+03 1.3353372e+02 1.5090392e+03 - 2.5962484e+03 2.1221987e+02 1.5468958e+03 - 2.5785358e+03 2.9067536e+02 1.5864319e+03 - 2.5574964e+03 3.6864206e+02 1.6285026e+03 - 2.5318480e+03 4.4563958e+02 1.6749115e+03 - 2.4985636e+03 5.2047783e+02 1.7299372e+03 - 2.4488118e+03 5.8881469e+02 1.8060745e+03 - 2.3447725e+03 6.2064172e+02 1.9568300e+03 - 2.0544815e+03 -2.4067136e-09 2.3688121e+03 - 2.0925352e+03 0.0000000e+00 2.3130507e+03 - 2.1615844e+03 -2.7367005e+02 2.2133926e+03 - 2.2782034e+03 -3.8139340e+02 2.0433189e+03 - 2.3720512e+03 -3.8455235e+02 1.9031062e+03 - 2.4410145e+03 -3.4398774e+02 1.7959025e+03 - 2.4930991e+03 -2.8470481e+02 1.7103960e+03 - 2.5339748e+03 -2.1655980e+02 1.6385689e+03 - 2.5669978e+03 -1.4383163e+02 1.5756855e+03 - 2.5941474e+03 -6.8594211e+01 1.5189656e+03 - 2.6166266e+03 8.0402979e+00 1.4667344e+03 - 2.6351920e+03 8.5419334e+01 1.4179527e+03 - 2.6503357e+03 1.6312822e+02 1.3719596e+03 - 2.6623870e+03 2.4088427e+02 1.3283268e+03 - 2.6715728e+03 3.1848268e+02 1.2867725e+03 - 2.6780537e+03 3.9576722e+02 1.2471101e+03 - 2.6819467e+03 4.7261349e+02 1.2092152e+03 - 2.6833399e+03 5.4891893e+02 1.1730045e+03 - 2.6823018e+03 6.2459658e+02 1.1384226e+03 - 2.6788880e+03 6.9957101e+02 1.1054320e+03 - 2.6731450e+03 7.7377558e+02 1.0740074e+03 - 2.6651139e+03 8.4715052e+02 1.0441311e+03 - 2.6548318e+03 9.1964151e+02 1.0157903e+03 - 2.6423336e+03 9.9119869e+02 9.8897493e+02 - 2.6276526e+03 1.0617758e+03 9.6367645e+02 - 2.6108215e+03 1.1313295e+03 9.3988700e+02 - 2.5918724e+03 1.1998190e+03 9.1759885e+02 - 2.5708375e+03 1.2672054e+03 8.9680412e+02 - 2.5477491e+03 1.3334517e+03 8.7749467e+02 - 2.5226394e+03 1.3985220e+03 8.5966210e+02 - 2.4955410e+03 1.4623816e+03 8.4329777e+02 - 2.4664866e+03 1.5249968e+03 8.2839300e+02 - 2.4355091e+03 1.5863345e+03 8.1493912e+02 - 2.4026412e+03 1.6463621e+03 8.0292772e+02 - 2.3679161e+03 1.7050476e+03 7.9235075e+02 - 2.3313668e+03 1.7623589e+03 7.8320068e+02 - 2.2930261e+03 1.8182646e+03 7.7547070e+02 - 2.2529270e+03 1.8727328e+03 7.6915480e+02 - 2.2111023e+03 1.9257322e+03 7.6424788e+02 - 2.1675846e+03 1.9772310e+03 7.6074590e+02 - 2.1224064e+03 2.0271975e+03 7.5864590e+02 - 2.0756000e+03 2.0756000e+03 7.5794610e+02 - 2.0271975e+03 2.1224064e+03 7.5864590e+02 - 1.9772310e+03 2.1675846e+03 7.6074590e+02 - 1.9257322e+03 2.2111023e+03 7.6424788e+02 - 1.8727328e+03 2.2529270e+03 7.6915480e+02 - 1.8182646e+03 2.2930261e+03 7.7547070e+02 - 1.7623589e+03 2.3313668e+03 7.8320068e+02 - 1.7050476e+03 2.3679161e+03 7.9235075e+02 - 1.6463621e+03 2.4026412e+03 8.0292772e+02 - 1.5863345e+03 2.4355091e+03 8.1493912e+02 - 1.5249968e+03 2.4664866e+03 8.2839300e+02 - 1.4623816e+03 2.4955410e+03 8.4329777e+02 - 1.3985220e+03 2.5226394e+03 8.5966210e+02 - 1.3334517e+03 2.5477491e+03 8.7749467e+02 - 1.2672054e+03 2.5708375e+03 8.9680412e+02 - 1.1998190e+03 2.5918724e+03 9.1759885e+02 - 1.1313295e+03 2.6108215e+03 9.3988700e+02 - 1.0617758e+03 2.6276526e+03 9.6367645e+02 - 9.9119869e+02 2.6423336e+03 9.8897493e+02 - 9.1964151e+02 2.6548318e+03 1.0157903e+03 - 8.4715052e+02 2.6651139e+03 1.0441311e+03 - 7.7377558e+02 2.6731450e+03 1.0740074e+03 - 6.9957101e+02 2.6788880e+03 1.1054320e+03 - 6.2459658e+02 2.6823018e+03 1.1384226e+03 - 5.4891893e+02 2.6833399e+03 1.1730045e+03 - 4.7261349e+02 2.6819467e+03 1.2092152e+03 - 3.9576722e+02 2.6780537e+03 1.2471101e+03 - 3.1848268e+02 2.6715728e+03 1.2867725e+03 - 2.4088427e+02 2.6623870e+03 1.3283268e+03 - 1.6312822e+02 2.6503357e+03 1.3719596e+03 - 8.5419334e+01 2.6351920e+03 1.4179527e+03 - 8.0402979e+00 2.6166266e+03 1.4667344e+03 - -6.8594211e+01 2.5941474e+03 1.5189656e+03 - -1.4383163e+02 2.5669978e+03 1.5756855e+03 - -2.1655980e+02 2.5339748e+03 1.6385689e+03 - -2.8470481e+02 2.4930991e+03 1.7103960e+03 - -3.4398774e+02 2.4410145e+03 1.7959025e+03 - -3.8455235e+02 2.3720512e+03 1.9031062e+03 - -3.8139340e+02 2.2782034e+03 2.0433189e+03 - -2.7367005e+02 2.1615844e+03 2.2133926e+03 - 2.4067136e-09 2.0925352e+03 2.3130507e+03 - 2.7367005e+02 2.1615844e+03 2.2133926e+03 - 3.8139340e+02 2.2782034e+03 2.0433189e+03 - 3.8455235e+02 2.3720512e+03 1.9031062e+03 - 3.4398774e+02 2.4410145e+03 1.7959025e+03 - 2.8470481e+02 2.4930991e+03 1.7103960e+03 - 2.1655980e+02 2.5339748e+03 1.6385689e+03 - 1.4383163e+02 2.5669978e+03 1.5756855e+03 - 6.8594211e+01 2.5941474e+03 1.5189656e+03 - -8.0402979e+00 2.6166266e+03 1.4667344e+03 - -8.5419334e+01 2.6351920e+03 1.4179527e+03 - -1.6312822e+02 2.6503357e+03 1.3719596e+03 - -2.4088427e+02 2.6623870e+03 1.3283268e+03 - -3.1848268e+02 2.6715728e+03 1.2867725e+03 - -3.9576722e+02 2.6780537e+03 1.2471101e+03 - -4.7261349e+02 2.6819467e+03 1.2092152e+03 - -5.4891893e+02 2.6833399e+03 1.1730045e+03 - -6.2459658e+02 2.6823018e+03 1.1384226e+03 - -6.9957101e+02 2.6788880e+03 1.1054320e+03 - -7.7377558e+02 2.6731450e+03 1.0740074e+03 - -8.4715052e+02 2.6651139e+03 1.0441311e+03 - -9.1964151e+02 2.6548318e+03 1.0157903e+03 - -9.9119869e+02 2.6423336e+03 9.8897493e+02 - -1.0617758e+03 2.6276526e+03 9.6367645e+02 - -1.1313295e+03 2.6108215e+03 9.3988700e+02 - -1.1998190e+03 2.5918724e+03 9.1759885e+02 - -1.2672054e+03 2.5708375e+03 8.9680412e+02 - -1.3334517e+03 2.5477491e+03 8.7749467e+02 - -1.3985220e+03 2.5226394e+03 8.5966210e+02 - -1.4623816e+03 2.4955410e+03 8.4329777e+02 - -1.5249968e+03 2.4664866e+03 8.2839300e+02 - -1.5863345e+03 2.4355091e+03 8.1493912e+02 - -1.6463621e+03 2.4026412e+03 8.0292772e+02 - -1.7050476e+03 2.3679161e+03 7.9235075e+02 - -1.7623589e+03 2.3313668e+03 7.8320068e+02 - -1.8182646e+03 2.2930261e+03 7.7547070e+02 - -1.8727328e+03 2.2529270e+03 7.6915480e+02 - -1.9257322e+03 2.2111023e+03 7.6424788e+02 - -1.9772310e+03 2.1675846e+03 7.6074590e+02 - -2.0271975e+03 2.1224064e+03 7.5864590e+02 - -2.0756000e+03 2.0756000e+03 7.5794610e+02 - -2.1224064e+03 2.0271975e+03 7.5864590e+02 - -2.1675846e+03 1.9772310e+03 7.6074590e+02 - -2.2111023e+03 1.9257322e+03 7.6424788e+02 - -2.2529270e+03 1.8727328e+03 7.6915480e+02 - -2.2930261e+03 1.8182646e+03 7.7547070e+02 - -2.3313668e+03 1.7623589e+03 7.8320068e+02 - -2.3679161e+03 1.7050476e+03 7.9235075e+02 - -2.4026412e+03 1.6463621e+03 8.0292772e+02 - -2.4355091e+03 1.5863345e+03 8.1493912e+02 - -2.4664866e+03 1.5249968e+03 8.2839300e+02 - -2.4955410e+03 1.4623816e+03 8.4329777e+02 - -2.5226394e+03 1.3985220e+03 8.5966210e+02 - -2.5477491e+03 1.3334517e+03 8.7749467e+02 - -2.5708375e+03 1.2672054e+03 8.9680412e+02 - -2.5918724e+03 1.1998190e+03 9.1759885e+02 - -2.6108215e+03 1.1313295e+03 9.3988700e+02 - -2.6276526e+03 1.0617758e+03 9.6367645e+02 - -2.6423336e+03 9.9119869e+02 9.8897493e+02 - -2.6548318e+03 9.1964151e+02 1.0157903e+03 - -2.6651139e+03 8.4715052e+02 1.0441311e+03 - -2.6731450e+03 7.7377558e+02 1.0740074e+03 - -2.6788880e+03 6.9957101e+02 1.1054320e+03 - -2.6823018e+03 6.2459658e+02 1.1384226e+03 - -2.6833399e+03 5.4891893e+02 1.1730045e+03 - -2.6819467e+03 4.7261349e+02 1.2092152e+03 - -2.6780537e+03 3.9576722e+02 1.2471101e+03 - -2.6715728e+03 3.1848268e+02 1.2867725e+03 - -2.6623870e+03 2.4088427e+02 1.3283268e+03 - -2.6503357e+03 1.6312822e+02 1.3719596e+03 - -2.6351920e+03 8.5419334e+01 1.4179527e+03 - -2.6166266e+03 8.0402979e+00 1.4667344e+03 - -2.5941474e+03 -6.8594211e+01 1.5189656e+03 - -2.5669978e+03 -1.4383163e+02 1.5756855e+03 - -2.5339748e+03 -2.1655980e+02 1.6385689e+03 - -2.4930991e+03 -2.8470481e+02 1.7103960e+03 - -2.4410145e+03 -3.4398774e+02 1.7959025e+03 - -2.3720512e+03 -3.8455235e+02 1.9031062e+03 - -2.2782034e+03 -3.8139340e+02 2.0433189e+03 - -2.1615844e+03 -2.7367005e+02 2.2133926e+03 - -2.0925352e+03 0.0000000e+00 2.3130507e+03 - -2.1615844e+03 2.7367005e+02 2.2133926e+03 - -2.2782034e+03 3.8139340e+02 2.0433189e+03 - -2.3720512e+03 3.8455235e+02 1.9031062e+03 - -2.4410145e+03 3.4398774e+02 1.7959025e+03 - -2.4930991e+03 2.8470481e+02 1.7103960e+03 - -2.5339748e+03 2.1655980e+02 1.6385689e+03 - -2.5669978e+03 1.4383163e+02 1.5756855e+03 - -2.5941474e+03 6.8594211e+01 1.5189656e+03 - -2.6166266e+03 -8.0402979e+00 1.4667344e+03 - -2.6351920e+03 -8.5419334e+01 1.4179527e+03 - -2.6503357e+03 -1.6312822e+02 1.3719596e+03 - -2.6623870e+03 -2.4088427e+02 1.3283268e+03 - -2.6715728e+03 -3.1848268e+02 1.2867725e+03 - -2.6780537e+03 -3.9576722e+02 1.2471101e+03 - -2.6819467e+03 -4.7261349e+02 1.2092152e+03 - -2.6833399e+03 -5.4891893e+02 1.1730045e+03 - -2.6823018e+03 -6.2459658e+02 1.1384226e+03 - -2.6788880e+03 -6.9957101e+02 1.1054320e+03 - -2.6731450e+03 -7.7377558e+02 1.0740074e+03 - -2.6651139e+03 -8.4715052e+02 1.0441311e+03 - -2.6548318e+03 -9.1964151e+02 1.0157903e+03 - -2.6423336e+03 -9.9119869e+02 9.8897493e+02 - -2.6276526e+03 -1.0617758e+03 9.6367645e+02 - -2.6108215e+03 -1.1313295e+03 9.3988700e+02 - -2.5918724e+03 -1.1998190e+03 9.1759885e+02 - -2.5708375e+03 -1.2672054e+03 8.9680412e+02 - -2.5477491e+03 -1.3334517e+03 8.7749467e+02 - -2.5226394e+03 -1.3985220e+03 8.5966210e+02 - -2.4955410e+03 -1.4623816e+03 8.4329777e+02 - -2.4664866e+03 -1.5249968e+03 8.2839300e+02 - -2.4355091e+03 -1.5863345e+03 8.1493912e+02 - -2.4026412e+03 -1.6463621e+03 8.0292772e+02 - -2.3679161e+03 -1.7050476e+03 7.9235075e+02 - -2.3313668e+03 -1.7623589e+03 7.8320068e+02 - -2.2930261e+03 -1.8182646e+03 7.7547070e+02 - -2.2529270e+03 -1.8727328e+03 7.6915480e+02 - -2.2111023e+03 -1.9257322e+03 7.6424788e+02 - -2.1675846e+03 -1.9772310e+03 7.6074590e+02 - -2.1224064e+03 -2.0271975e+03 7.5864590e+02 - -2.0756000e+03 -2.0756000e+03 7.5794610e+02 - -2.0271975e+03 -2.1224064e+03 7.5864590e+02 - -1.9772310e+03 -2.1675846e+03 7.6074590e+02 - -1.9257322e+03 -2.2111023e+03 7.6424788e+02 - -1.8727328e+03 -2.2529270e+03 7.6915480e+02 - -1.8182646e+03 -2.2930261e+03 7.7547070e+02 - -1.7623589e+03 -2.3313668e+03 7.8320068e+02 - -1.7050476e+03 -2.3679161e+03 7.9235075e+02 - -1.6463621e+03 -2.4026412e+03 8.0292772e+02 - -1.5863345e+03 -2.4355091e+03 8.1493912e+02 - -1.5249968e+03 -2.4664866e+03 8.2839300e+02 - -1.4623816e+03 -2.4955410e+03 8.4329777e+02 - -1.3985220e+03 -2.5226394e+03 8.5966210e+02 - -1.3334517e+03 -2.5477491e+03 8.7749467e+02 - -1.2672054e+03 -2.5708375e+03 8.9680412e+02 - -1.1998190e+03 -2.5918724e+03 9.1759885e+02 - -1.1313295e+03 -2.6108215e+03 9.3988700e+02 - -1.0617758e+03 -2.6276526e+03 9.6367645e+02 - -9.9119869e+02 -2.6423336e+03 9.8897493e+02 - -9.1964151e+02 -2.6548318e+03 1.0157903e+03 - -8.4715052e+02 -2.6651139e+03 1.0441311e+03 - -7.7377558e+02 -2.6731450e+03 1.0740074e+03 - -6.9957101e+02 -2.6788880e+03 1.1054320e+03 - -6.2459658e+02 -2.6823018e+03 1.1384226e+03 - -5.4891893e+02 -2.6833399e+03 1.1730045e+03 - -4.7261349e+02 -2.6819467e+03 1.2092152e+03 - -3.9576722e+02 -2.6780537e+03 1.2471101e+03 - -3.1848268e+02 -2.6715728e+03 1.2867725e+03 - -2.4088427e+02 -2.6623870e+03 1.3283268e+03 - -1.6312822e+02 -2.6503357e+03 1.3719596e+03 - -8.5419334e+01 -2.6351920e+03 1.4179527e+03 - -8.0402979e+00 -2.6166266e+03 1.4667344e+03 - 6.8594211e+01 -2.5941474e+03 1.5189656e+03 - 1.4383163e+02 -2.5669978e+03 1.5756855e+03 - 2.1655980e+02 -2.5339748e+03 1.6385689e+03 - 2.8470481e+02 -2.4930991e+03 1.7103960e+03 - 3.4398774e+02 -2.4410145e+03 1.7959025e+03 - 3.8455235e+02 -2.3720512e+03 1.9031062e+03 - 3.8139340e+02 -2.2782034e+03 2.0433189e+03 - 2.7367005e+02 -2.1615844e+03 2.2133926e+03 - -2.4067136e-09 -2.0925352e+03 2.3130507e+03 - -2.7367005e+02 -2.1615844e+03 2.2133926e+03 - -3.8139340e+02 -2.2782034e+03 2.0433189e+03 - -3.8455235e+02 -2.3720512e+03 1.9031062e+03 - -3.4398774e+02 -2.4410145e+03 1.7959025e+03 - -2.8470481e+02 -2.4930991e+03 1.7103960e+03 - -2.1655980e+02 -2.5339748e+03 1.6385689e+03 - -1.4383163e+02 -2.5669978e+03 1.5756855e+03 - -6.8594211e+01 -2.5941474e+03 1.5189656e+03 - 8.0402979e+00 -2.6166266e+03 1.4667344e+03 - 8.5419334e+01 -2.6351920e+03 1.4179527e+03 - 1.6312822e+02 -2.6503357e+03 1.3719596e+03 - 2.4088427e+02 -2.6623870e+03 1.3283268e+03 - 3.1848268e+02 -2.6715728e+03 1.2867725e+03 - 3.9576722e+02 -2.6780537e+03 1.2471101e+03 - 4.7261349e+02 -2.6819467e+03 1.2092152e+03 - 5.4891893e+02 -2.6833399e+03 1.1730045e+03 - 6.2459658e+02 -2.6823018e+03 1.1384226e+03 - 6.9957101e+02 -2.6788880e+03 1.1054320e+03 - 7.7377558e+02 -2.6731450e+03 1.0740074e+03 - 8.4715052e+02 -2.6651139e+03 1.0441311e+03 - 9.1964151e+02 -2.6548318e+03 1.0157903e+03 - 9.9119869e+02 -2.6423336e+03 9.8897493e+02 - 1.0617758e+03 -2.6276526e+03 9.6367645e+02 - 1.1313295e+03 -2.6108215e+03 9.3988700e+02 - 1.1998190e+03 -2.5918724e+03 9.1759885e+02 - 1.2672054e+03 -2.5708375e+03 8.9680412e+02 - 1.3334517e+03 -2.5477491e+03 8.7749467e+02 - 1.3985220e+03 -2.5226394e+03 8.5966210e+02 - 1.4623816e+03 -2.4955410e+03 8.4329777e+02 - 1.5249968e+03 -2.4664866e+03 8.2839300e+02 - 1.5863345e+03 -2.4355091e+03 8.1493912e+02 - 1.6463621e+03 -2.4026412e+03 8.0292772e+02 - 1.7050476e+03 -2.3679161e+03 7.9235075e+02 - 1.7623589e+03 -2.3313668e+03 7.8320068e+02 - 1.8182646e+03 -2.2930261e+03 7.7547070e+02 - 1.8727328e+03 -2.2529270e+03 7.6915480e+02 - 1.9257322e+03 -2.2111023e+03 7.6424788e+02 - 1.9772310e+03 -2.1675846e+03 7.6074590e+02 - 2.0271975e+03 -2.1224064e+03 7.5864590e+02 - 2.0756000e+03 -2.0756000e+03 7.5794610e+02 - 2.1224064e+03 -2.0271975e+03 7.5864590e+02 - 2.1675846e+03 -1.9772310e+03 7.6074590e+02 - 2.2111023e+03 -1.9257322e+03 7.6424788e+02 - 2.2529270e+03 -1.8727328e+03 7.6915480e+02 - 2.2930261e+03 -1.8182646e+03 7.7547070e+02 - 2.3313668e+03 -1.7623589e+03 7.8320068e+02 - 2.3679161e+03 -1.7050476e+03 7.9235075e+02 - 2.4026412e+03 -1.6463621e+03 8.0292772e+02 - 2.4355091e+03 -1.5863345e+03 8.1493912e+02 - 2.4664866e+03 -1.5249968e+03 8.2839300e+02 - 2.4955410e+03 -1.4623816e+03 8.4329777e+02 - 2.5226394e+03 -1.3985220e+03 8.5966210e+02 - 2.5477491e+03 -1.3334517e+03 8.7749467e+02 - 2.5708375e+03 -1.2672054e+03 8.9680412e+02 - 2.5918724e+03 -1.1998190e+03 9.1759885e+02 - 2.6108215e+03 -1.1313295e+03 9.3988700e+02 - 2.6276526e+03 -1.0617758e+03 9.6367645e+02 - 2.6423336e+03 -9.9119869e+02 9.8897493e+02 - 2.6548318e+03 -9.1964151e+02 1.0157903e+03 - 2.6651139e+03 -8.4715052e+02 1.0441311e+03 - 2.6731450e+03 -7.7377558e+02 1.0740074e+03 - 2.6788880e+03 -6.9957101e+02 1.1054320e+03 - 2.6823018e+03 -6.2459658e+02 1.1384226e+03 - 2.6833399e+03 -5.4891893e+02 1.1730045e+03 - 2.6819467e+03 -4.7261349e+02 1.2092152e+03 - 2.6780537e+03 -3.9576722e+02 1.2471101e+03 - 2.6715728e+03 -3.1848268e+02 1.2867725e+03 - 2.6623870e+03 -2.4088427e+02 1.3283268e+03 - 2.6503357e+03 -1.6312822e+02 1.3719596e+03 - 2.6351920e+03 -8.5419334e+01 1.4179527e+03 - 2.6166266e+03 -8.0402979e+00 1.4667344e+03 - 2.5941474e+03 6.8594211e+01 1.5189656e+03 - 2.5669978e+03 1.4383163e+02 1.5756855e+03 - 2.5339748e+03 2.1655980e+02 1.6385689e+03 - 2.4930991e+03 2.8470481e+02 1.7103960e+03 - 2.4410145e+03 3.4398774e+02 1.7959025e+03 - 2.3720512e+03 3.8455235e+02 1.9031062e+03 - 2.2782034e+03 3.8139340e+02 2.0433189e+03 - 2.1615844e+03 2.7367005e+02 2.2133926e+03 - 2.0925352e+03 -2.4067136e-09 2.3130507e+03 - 2.1300382e+03 -4.8134273e-09 2.2557099e+03 - 2.1560740e+03 -1.1417927e+02 2.2167300e+03 - 2.2194704e+03 -1.8833111e+02 2.1210237e+03 - 2.2945905e+03 -2.1349794e+02 2.0056323e+03 - 2.3658818e+03 -2.0088984e+02 1.8930971e+03 - 2.4282356e+03 -1.6376432e+02 1.7909042e+03 - 2.4813211e+03 -1.1153008e+02 1.6996342e+03 - 2.5262235e+03 -5.0011775e+01 1.6178089e+03 - 2.5641880e+03 1.7280396e+01 1.5437075e+03 - 2.5962692e+03 8.8200063e+01 1.4758752e+03 - 2.6232844e+03 1.6139416e+02 1.4131950e+03 - 2.6458487e+03 2.3597848e+02 1.3548375e+03 - 2.6644225e+03 3.1135352e+02 1.3001940e+03 - 2.6793529e+03 3.8709799e+02 1.2488170e+03 - 2.6909047e+03 4.6290567e+02 1.2003759e+03 - 2.6992837e+03 5.3854694e+02 1.1546235e+03 - 2.7046528e+03 6.1384457e+02 1.1113725e+03 - 2.7071441e+03 6.8865814e+02 1.0704784e+03 - 2.7068671e+03 7.6287373e+02 1.0318279e+03 - 2.7039152e+03 8.3639683e+02 9.9532932e+02 - 2.6983694e+03 9.0914749e+02 9.6090726e+02 - 2.6903019e+03 9.8105681e+02 9.2849777e+02 - 2.6797785e+03 1.0520644e+03 8.9804537e+02 - 2.6668597e+03 1.1221163e+03 8.6950082e+02 - 2.6516024e+03 1.1911640e+03 8.4281964e+02 - 2.6340605e+03 1.2591628e+03 8.1796104e+02 - 2.6142856e+03 1.3260712e+03 7.9488725e+02 - 2.5923272e+03 1.3918503e+03 7.7356307e+02 - 2.5682335e+03 1.4564629e+03 7.5395566e+02 - 2.5420510e+03 1.5198734e+03 7.3603434e+02 - 2.5138253e+03 1.5820473e+03 7.1977062e+02 - 2.4836007e+03 1.6429509e+03 7.0513813e+02 - 2.4514204e+03 1.7025509e+03 6.9211273e+02 - 2.4173269e+03 1.7608144e+03 6.8067256e+02 - 2.3813615e+03 1.8177088e+03 6.7079807e+02 - 2.3435646e+03 1.8732011e+03 6.6247217e+02 - 2.3039760e+03 1.9272584e+03 6.5568024e+02 - 2.2626344e+03 1.9798476e+03 6.5041024e+02 - 2.2195778e+03 2.0309350e+03 6.4665273e+02 - 2.1748435e+03 2.0804866e+03 6.4440093e+02 - 2.1284678e+03 2.1284678e+03 6.4365079e+02 - 2.0804866e+03 2.1748435e+03 6.4440093e+02 - 2.0309350e+03 2.2195778e+03 6.4665273e+02 - 1.9798476e+03 2.2626344e+03 6.5041024e+02 - 1.9272584e+03 2.3039760e+03 6.5568024e+02 - 1.8732011e+03 2.3435646e+03 6.6247217e+02 - 1.8177088e+03 2.3813615e+03 6.7079807e+02 - 1.7608144e+03 2.4173269e+03 6.8067256e+02 - 1.7025509e+03 2.4514204e+03 6.9211273e+02 - 1.6429509e+03 2.4836007e+03 7.0513813e+02 - 1.5820473e+03 2.5138253e+03 7.1977062e+02 - 1.5198734e+03 2.5420510e+03 7.3603434e+02 - 1.4564629e+03 2.5682335e+03 7.5395566e+02 - 1.3918503e+03 2.5923272e+03 7.7356307e+02 - 1.3260712e+03 2.6142856e+03 7.9488725e+02 - 1.2591628e+03 2.6340605e+03 8.1796104e+02 - 1.1911640e+03 2.6516024e+03 8.4281964e+02 - 1.1221163e+03 2.6668597e+03 8.6950082e+02 - 1.0520644e+03 2.6797785e+03 8.9804537e+02 - 9.8105681e+02 2.6903019e+03 9.2849777e+02 - 9.0914749e+02 2.6983694e+03 9.6090726e+02 - 8.3639683e+02 2.7039152e+03 9.9532932e+02 - 7.6287373e+02 2.7068671e+03 1.0318279e+03 - 6.8865814e+02 2.7071441e+03 1.0704784e+03 - 6.1384457e+02 2.7046528e+03 1.1113725e+03 - 5.3854694e+02 2.6992837e+03 1.1546235e+03 - 4.6290567e+02 2.6909047e+03 1.2003759e+03 - 3.8709799e+02 2.6793529e+03 1.2488170e+03 - 3.1135352e+02 2.6644225e+03 1.3001940e+03 - 2.3597848e+02 2.6458487e+03 1.3548375e+03 - 1.6139416e+02 2.6232844e+03 1.4131950e+03 - 8.8200063e+01 2.5962692e+03 1.4758752e+03 - 1.7280396e+01 2.5641880e+03 1.5437075e+03 - -5.0011775e+01 2.5262235e+03 1.6178089e+03 - -1.1153008e+02 2.4813211e+03 1.6996342e+03 - -1.6376432e+02 2.4282356e+03 1.7909042e+03 - -2.0088984e+02 2.3658818e+03 1.8930971e+03 - -2.1349794e+02 2.2945905e+03 2.0056323e+03 - -1.8833111e+02 2.2194704e+03 2.1210237e+03 - -1.1417927e+02 2.1560740e+03 2.2167300e+03 - -4.8134273e-09 2.1300382e+03 2.2557099e+03 - 1.1417927e+02 2.1560740e+03 2.2167300e+03 - 1.8833111e+02 2.2194704e+03 2.1210237e+03 - 2.1349794e+02 2.2945905e+03 2.0056323e+03 - 2.0088984e+02 2.3658818e+03 1.8930971e+03 - 1.6376432e+02 2.4282356e+03 1.7909042e+03 - 1.1153008e+02 2.4813211e+03 1.6996342e+03 - 5.0011775e+01 2.5262235e+03 1.6178089e+03 - -1.7280396e+01 2.5641880e+03 1.5437075e+03 - -8.8200063e+01 2.5962692e+03 1.4758752e+03 - -1.6139416e+02 2.6232844e+03 1.4131950e+03 - -2.3597848e+02 2.6458487e+03 1.3548375e+03 - -3.1135352e+02 2.6644225e+03 1.3001940e+03 - -3.8709799e+02 2.6793529e+03 1.2488170e+03 - -4.6290567e+02 2.6909047e+03 1.2003759e+03 - -5.3854694e+02 2.6992837e+03 1.1546235e+03 - -6.1384457e+02 2.7046528e+03 1.1113725e+03 - -6.8865814e+02 2.7071441e+03 1.0704784e+03 - -7.6287373e+02 2.7068671e+03 1.0318279e+03 - -8.3639683e+02 2.7039152e+03 9.9532932e+02 - -9.0914749e+02 2.6983694e+03 9.6090726e+02 - -9.8105681e+02 2.6903019e+03 9.2849777e+02 - -1.0520644e+03 2.6797785e+03 8.9804537e+02 - -1.1221163e+03 2.6668597e+03 8.6950082e+02 - -1.1911640e+03 2.6516024e+03 8.4281964e+02 - -1.2591628e+03 2.6340605e+03 8.1796104e+02 - -1.3260712e+03 2.6142856e+03 7.9488725e+02 - -1.3918503e+03 2.5923272e+03 7.7356307e+02 - -1.4564629e+03 2.5682335e+03 7.5395566e+02 - -1.5198734e+03 2.5420510e+03 7.3603434e+02 - -1.5820473e+03 2.5138253e+03 7.1977062e+02 - -1.6429509e+03 2.4836007e+03 7.0513813e+02 - -1.7025509e+03 2.4514204e+03 6.9211273e+02 - -1.7608144e+03 2.4173269e+03 6.8067256e+02 - -1.8177088e+03 2.3813615e+03 6.7079807e+02 - -1.8732011e+03 2.3435646e+03 6.6247217e+02 - -1.9272584e+03 2.3039760e+03 6.5568024e+02 - -1.9798476e+03 2.2626344e+03 6.5041024e+02 - -2.0309350e+03 2.2195778e+03 6.4665273e+02 - -2.0804866e+03 2.1748435e+03 6.4440093e+02 - -2.1284678e+03 2.1284678e+03 6.4365079e+02 - -2.1748435e+03 2.0804866e+03 6.4440093e+02 - -2.2195778e+03 2.0309350e+03 6.4665273e+02 - -2.2626344e+03 1.9798476e+03 6.5041024e+02 - -2.3039760e+03 1.9272584e+03 6.5568024e+02 - -2.3435646e+03 1.8732011e+03 6.6247217e+02 - -2.3813615e+03 1.8177088e+03 6.7079807e+02 - -2.4173269e+03 1.7608144e+03 6.8067256e+02 - -2.4514204e+03 1.7025509e+03 6.9211273e+02 - -2.4836007e+03 1.6429509e+03 7.0513813e+02 - -2.5138253e+03 1.5820473e+03 7.1977062e+02 - -2.5420510e+03 1.5198734e+03 7.3603434e+02 - -2.5682335e+03 1.4564629e+03 7.5395566e+02 - -2.5923272e+03 1.3918503e+03 7.7356307e+02 - -2.6142856e+03 1.3260712e+03 7.9488725e+02 - -2.6340605e+03 1.2591628e+03 8.1796104e+02 - -2.6516024e+03 1.1911640e+03 8.4281964e+02 - -2.6668597e+03 1.1221163e+03 8.6950082e+02 - -2.6797785e+03 1.0520644e+03 8.9804537e+02 - -2.6903019e+03 9.8105681e+02 9.2849777e+02 - -2.6983694e+03 9.0914749e+02 9.6090726e+02 - -2.7039152e+03 8.3639683e+02 9.9532932e+02 - -2.7068671e+03 7.6287373e+02 1.0318279e+03 - -2.7071441e+03 6.8865814e+02 1.0704784e+03 - -2.7046528e+03 6.1384457e+02 1.1113725e+03 - -2.6992837e+03 5.3854694e+02 1.1546235e+03 - -2.6909047e+03 4.6290567e+02 1.2003759e+03 - -2.6793529e+03 3.8709799e+02 1.2488170e+03 - -2.6644225e+03 3.1135352e+02 1.3001940e+03 - -2.6458487e+03 2.3597848e+02 1.3548375e+03 - -2.6232844e+03 1.6139416e+02 1.4131950e+03 - -2.5962692e+03 8.8200063e+01 1.4758752e+03 - -2.5641880e+03 1.7280396e+01 1.5437075e+03 - -2.5262235e+03 -5.0011775e+01 1.6178089e+03 - -2.4813211e+03 -1.1153008e+02 1.6996342e+03 - -2.4282356e+03 -1.6376432e+02 1.7909042e+03 - -2.3658818e+03 -2.0088984e+02 1.8930971e+03 - -2.2945905e+03 -2.1349794e+02 2.0056323e+03 - -2.2194704e+03 -1.8833111e+02 2.1210237e+03 - -2.1560740e+03 -1.1417927e+02 2.2167300e+03 - -2.1300382e+03 2.4067136e-09 2.2557099e+03 - -2.1560740e+03 1.1417927e+02 2.2167300e+03 - -2.2194704e+03 1.8833111e+02 2.1210237e+03 - -2.2945905e+03 2.1349794e+02 2.0056323e+03 - -2.3658818e+03 2.0088984e+02 1.8930971e+03 - -2.4282356e+03 1.6376432e+02 1.7909042e+03 - -2.4813211e+03 1.1153008e+02 1.6996342e+03 - -2.5262235e+03 5.0011775e+01 1.6178089e+03 - -2.5641880e+03 -1.7280396e+01 1.5437075e+03 - -2.5962692e+03 -8.8200063e+01 1.4758752e+03 - -2.6232844e+03 -1.6139416e+02 1.4131950e+03 - -2.6458487e+03 -2.3597848e+02 1.3548375e+03 - -2.6644225e+03 -3.1135352e+02 1.3001940e+03 - -2.6793529e+03 -3.8709799e+02 1.2488170e+03 - -2.6909047e+03 -4.6290567e+02 1.2003759e+03 - -2.6992837e+03 -5.3854694e+02 1.1546235e+03 - -2.7046528e+03 -6.1384457e+02 1.1113725e+03 - -2.7071441e+03 -6.8865814e+02 1.0704784e+03 - -2.7068671e+03 -7.6287373e+02 1.0318279e+03 - -2.7039152e+03 -8.3639683e+02 9.9532932e+02 - -2.6983694e+03 -9.0914749e+02 9.6090726e+02 - -2.6903019e+03 -9.8105681e+02 9.2849777e+02 - -2.6797785e+03 -1.0520644e+03 8.9804537e+02 - -2.6668597e+03 -1.1221163e+03 8.6950082e+02 - -2.6516024e+03 -1.1911640e+03 8.4281964e+02 - -2.6340605e+03 -1.2591628e+03 8.1796104e+02 - -2.6142856e+03 -1.3260712e+03 7.9488725e+02 - -2.5923272e+03 -1.3918503e+03 7.7356307e+02 - -2.5682335e+03 -1.4564629e+03 7.5395566e+02 - -2.5420510e+03 -1.5198734e+03 7.3603434e+02 - -2.5138253e+03 -1.5820473e+03 7.1977062e+02 - -2.4836007e+03 -1.6429509e+03 7.0513813e+02 - -2.4514204e+03 -1.7025509e+03 6.9211273e+02 - -2.4173269e+03 -1.7608144e+03 6.8067256e+02 - -2.3813615e+03 -1.8177088e+03 6.7079807e+02 - -2.3435646e+03 -1.8732011e+03 6.6247217e+02 - -2.3039760e+03 -1.9272584e+03 6.5568024e+02 - -2.2626344e+03 -1.9798476e+03 6.5041024e+02 - -2.2195778e+03 -2.0309350e+03 6.4665273e+02 - -2.1748435e+03 -2.0804866e+03 6.4440093e+02 - -2.1284678e+03 -2.1284678e+03 6.4365079e+02 - -2.0804866e+03 -2.1748435e+03 6.4440093e+02 - -2.0309350e+03 -2.2195778e+03 6.4665273e+02 - -1.9798476e+03 -2.2626344e+03 6.5041024e+02 - -1.9272584e+03 -2.3039760e+03 6.5568024e+02 - -1.8732011e+03 -2.3435646e+03 6.6247217e+02 - -1.8177088e+03 -2.3813615e+03 6.7079807e+02 - -1.7608144e+03 -2.4173269e+03 6.8067256e+02 - -1.7025509e+03 -2.4514204e+03 6.9211273e+02 - -1.6429509e+03 -2.4836007e+03 7.0513813e+02 - -1.5820473e+03 -2.5138253e+03 7.1977062e+02 - -1.5198734e+03 -2.5420510e+03 7.3603434e+02 - -1.4564629e+03 -2.5682335e+03 7.5395566e+02 - -1.3918503e+03 -2.5923272e+03 7.7356307e+02 - -1.3260712e+03 -2.6142856e+03 7.9488725e+02 - -1.2591628e+03 -2.6340605e+03 8.1796104e+02 - -1.1911640e+03 -2.6516024e+03 8.4281964e+02 - -1.1221163e+03 -2.6668597e+03 8.6950082e+02 - -1.0520644e+03 -2.6797785e+03 8.9804537e+02 - -9.8105681e+02 -2.6903019e+03 9.2849777e+02 - -9.0914749e+02 -2.6983694e+03 9.6090726e+02 - -8.3639683e+02 -2.7039152e+03 9.9532932e+02 - -7.6287373e+02 -2.7068671e+03 1.0318279e+03 - -6.8865814e+02 -2.7071441e+03 1.0704784e+03 - -6.1384457e+02 -2.7046528e+03 1.1113725e+03 - -5.3854694e+02 -2.6992837e+03 1.1546235e+03 - -4.6290567e+02 -2.6909047e+03 1.2003759e+03 - -3.8709799e+02 -2.6793529e+03 1.2488170e+03 - -3.1135352e+02 -2.6644225e+03 1.3001940e+03 - -2.3597848e+02 -2.6458487e+03 1.3548375e+03 - -1.6139416e+02 -2.6232844e+03 1.4131950e+03 - -8.8200063e+01 -2.5962692e+03 1.4758752e+03 - -1.7280396e+01 -2.5641880e+03 1.5437075e+03 - 5.0011775e+01 -2.5262235e+03 1.6178089e+03 - 1.1153008e+02 -2.4813211e+03 1.6996342e+03 - 1.6376432e+02 -2.4282356e+03 1.7909042e+03 - 2.0088984e+02 -2.3658818e+03 1.8930971e+03 - 2.1349794e+02 -2.2945905e+03 2.0056323e+03 - 1.8833111e+02 -2.2194704e+03 2.1210237e+03 - 1.1417927e+02 -2.1560740e+03 2.2167300e+03 - 2.4067136e-09 -2.1300382e+03 2.2557099e+03 - -1.1417927e+02 -2.1560740e+03 2.2167300e+03 - -1.8833111e+02 -2.2194704e+03 2.1210237e+03 - -2.1349794e+02 -2.2945905e+03 2.0056323e+03 - -2.0088984e+02 -2.3658818e+03 1.8930971e+03 - -1.6376432e+02 -2.4282356e+03 1.7909042e+03 - -1.1153008e+02 -2.4813211e+03 1.6996342e+03 - -5.0011775e+01 -2.5262235e+03 1.6178089e+03 - 1.7280396e+01 -2.5641880e+03 1.5437075e+03 - 8.8200063e+01 -2.5962692e+03 1.4758752e+03 - 1.6139416e+02 -2.6232844e+03 1.4131950e+03 - 2.3597848e+02 -2.6458487e+03 1.3548375e+03 - 3.1135352e+02 -2.6644225e+03 1.3001940e+03 - 3.8709799e+02 -2.6793529e+03 1.2488170e+03 - 4.6290567e+02 -2.6909047e+03 1.2003759e+03 - 5.3854694e+02 -2.6992837e+03 1.1546235e+03 - 6.1384457e+02 -2.7046528e+03 1.1113725e+03 - 6.8865814e+02 -2.7071441e+03 1.0704784e+03 - 7.6287373e+02 -2.7068671e+03 1.0318279e+03 - 8.3639683e+02 -2.7039152e+03 9.9532932e+02 - 9.0914749e+02 -2.6983694e+03 9.6090726e+02 - 9.8105681e+02 -2.6903019e+03 9.2849777e+02 - 1.0520644e+03 -2.6797785e+03 8.9804537e+02 - 1.1221163e+03 -2.6668597e+03 8.6950082e+02 - 1.1911640e+03 -2.6516024e+03 8.4281964e+02 - 1.2591628e+03 -2.6340605e+03 8.1796104e+02 - 1.3260712e+03 -2.6142856e+03 7.9488725e+02 - 1.3918503e+03 -2.5923272e+03 7.7356307e+02 - 1.4564629e+03 -2.5682335e+03 7.5395566e+02 - 1.5198734e+03 -2.5420510e+03 7.3603434e+02 - 1.5820473e+03 -2.5138253e+03 7.1977062e+02 - 1.6429509e+03 -2.4836007e+03 7.0513813e+02 - 1.7025509e+03 -2.4514204e+03 6.9211273e+02 - 1.7608144e+03 -2.4173269e+03 6.8067256e+02 - 1.8177088e+03 -2.3813615e+03 6.7079807e+02 - 1.8732011e+03 -2.3435646e+03 6.6247217e+02 - 1.9272584e+03 -2.3039760e+03 6.5568024e+02 - 1.9798476e+03 -2.2626344e+03 6.5041024e+02 - 2.0309350e+03 -2.2195778e+03 6.4665273e+02 - 2.0804866e+03 -2.1748435e+03 6.4440093e+02 - 2.1284678e+03 -2.1284678e+03 6.4365079e+02 - 2.1748435e+03 -2.0804866e+03 6.4440093e+02 - 2.2195778e+03 -2.0309350e+03 6.4665273e+02 - 2.2626344e+03 -1.9798476e+03 6.5041024e+02 - 2.3039760e+03 -1.9272584e+03 6.5568024e+02 - 2.3435646e+03 -1.8732011e+03 6.6247217e+02 - 2.3813615e+03 -1.8177088e+03 6.7079807e+02 - 2.4173269e+03 -1.7608144e+03 6.8067256e+02 - 2.4514204e+03 -1.7025509e+03 6.9211273e+02 - 2.4836007e+03 -1.6429509e+03 7.0513813e+02 - 2.5138253e+03 -1.5820473e+03 7.1977062e+02 - 2.5420510e+03 -1.5198734e+03 7.3603434e+02 - 2.5682335e+03 -1.4564629e+03 7.5395566e+02 - 2.5923272e+03 -1.3918503e+03 7.7356307e+02 - 2.6142856e+03 -1.3260712e+03 7.9488725e+02 - 2.6340605e+03 -1.2591628e+03 8.1796104e+02 - 2.6516024e+03 -1.1911640e+03 8.4281964e+02 - 2.6668597e+03 -1.1221163e+03 8.6950082e+02 - 2.6797785e+03 -1.0520644e+03 8.9804537e+02 - 2.6903019e+03 -9.8105681e+02 9.2849777e+02 - 2.6983694e+03 -9.0914749e+02 9.6090726e+02 - 2.7039152e+03 -8.3639683e+02 9.9532932e+02 - 2.7068671e+03 -7.6287373e+02 1.0318279e+03 - 2.7071441e+03 -6.8865814e+02 1.0704784e+03 - 2.7046528e+03 -6.1384457e+02 1.1113725e+03 - 2.6992837e+03 -5.3854694e+02 1.1546235e+03 - 2.6909047e+03 -4.6290567e+02 1.2003759e+03 - 2.6793529e+03 -3.8709799e+02 1.2488170e+03 - 2.6644225e+03 -3.1135352e+02 1.3001940e+03 - 2.6458487e+03 -2.3597848e+02 1.3548375e+03 - 2.6232844e+03 -1.6139416e+02 1.4131950e+03 - 2.5962692e+03 -8.8200063e+01 1.4758752e+03 - 2.5641880e+03 -1.7280396e+01 1.5437075e+03 - 2.5262235e+03 5.0011775e+01 1.6178089e+03 - 2.4813211e+03 1.1153008e+02 1.6996342e+03 - 2.4282356e+03 1.6376432e+02 1.7909042e+03 - 2.3658818e+03 2.0088984e+02 1.8930971e+03 - 2.2945905e+03 2.1349794e+02 2.0056323e+03 - 2.2194704e+03 1.8833111e+02 2.1210237e+03 - 2.1560740e+03 1.1417927e+02 2.2167300e+03 - 2.1300382e+03 -4.8134273e-09 2.2557099e+03 - 2.1669467e+03 0.0000000e+00 2.1967838e+03 - 2.1799602e+03 -3.7607769e+01 2.1761354e+03 - 2.2155955e+03 -6.3677864e+01 2.1192215e+03 - 2.2659009e+03 -7.1471853e+01 2.0378035e+03 - 2.3226239e+03 -5.9929682e+01 1.9441179e+03 - 2.3797688e+03 -3.1510237e+01 1.8470983e+03 - 2.4338923e+03 1.0187818e+01 1.7519271e+03 - 2.4833849e+03 6.1765519e+01 1.6610840e+03 - 2.5276968e+03 1.2047838e+02 1.5754814e+03 - 2.5668087e+03 1.8425631e+02 1.4952419e+03 - 2.6009318e+03 2.5158059e+02 1.4201407e+03 - 2.6303557e+03 3.2134466e+02 1.3498305e+03 - 2.6553774e+03 3.9273879e+02 1.2839464e+03 - 2.6762727e+03 4.6516433e+02 1.2221495e+03 - 2.6932863e+03 5.3817265e+02 1.1641408e+03 - 2.7066325e+03 6.1142242e+02 1.1096626e+03 - 2.7164973e+03 6.8464987e+02 1.0584940e+03 - 2.7230436e+03 7.5764783e+02 1.0104448e+03 - 2.7264148e+03 8.3025097e+02 9.6535045e+02 - 2.7267383e+03 9.0232526e+02 9.2306654e+02 - 2.7241290e+03 9.7376024e+02 8.8346517e+02 - 2.7186914e+03 1.0444634e+03 8.4643167e+02 - 2.7105215e+03 1.1143561e+03 8.1186217e+02 - 2.6997082e+03 1.1833702e+03 7.7966183e+02 - 2.6863347e+03 1.2514460e+03 7.4974352e+02 - 2.6704790e+03 1.3185300e+03 7.2202683e+02 - 2.6522152e+03 1.3845736e+03 6.9643743e+02 - 2.6316133e+03 1.4495323e+03 6.7290655e+02 - 2.6087400e+03 1.5133643e+03 6.5137068e+02 - 2.5836592e+03 1.5760300e+03 6.3177132e+02 - 2.5564317e+03 1.6374914e+03 6.1405487e+02 - 2.5271162e+03 1.6977118e+03 5.9817250e+02 - 2.4957687e+03 1.7566549e+03 5.8408011e+02 - 2.4624432e+03 1.8142853e+03 5.7173827e+02 - 2.4271916e+03 1.8705672e+03 5.6111225e+02 - 2.3900640e+03 1.9254650e+03 5.5217192e+02 - 2.3511085e+03 1.9789429e+03 5.4489182e+02 - 2.3103716e+03 2.0309643e+03 5.3925112e+02 - 2.2678984e+03 2.0814923e+03 5.3523362e+02 - 2.2237323e+03 2.1304889e+03 5.3282774e+02 - 2.1779155e+03 2.1779155e+03 5.3202655e+02 - 2.1304889e+03 2.2237323e+03 5.3282774e+02 - 2.0814923e+03 2.2678984e+03 5.3523362e+02 - 2.0309643e+03 2.3103716e+03 5.3925112e+02 - 1.9789429e+03 2.3511085e+03 5.4489182e+02 - 1.9254650e+03 2.3900640e+03 5.5217192e+02 - 1.8705672e+03 2.4271916e+03 5.6111225e+02 - 1.8142853e+03 2.4624432e+03 5.7173827e+02 - 1.7566549e+03 2.4957687e+03 5.8408011e+02 - 1.6977118e+03 2.5271162e+03 5.9817250e+02 - 1.6374914e+03 2.5564317e+03 6.1405487e+02 - 1.5760300e+03 2.5836592e+03 6.3177132e+02 - 1.5133643e+03 2.6087400e+03 6.5137068e+02 - 1.4495323e+03 2.6316133e+03 6.7290655e+02 - 1.3845736e+03 2.6522152e+03 6.9643743e+02 - 1.3185300e+03 2.6704790e+03 7.2202683e+02 - 1.2514460e+03 2.6863347e+03 7.4974352e+02 - 1.1833702e+03 2.6997082e+03 7.7966183e+02 - 1.1143561e+03 2.7105215e+03 8.1186217e+02 - 1.0444634e+03 2.7186914e+03 8.4643167e+02 - 9.7376024e+02 2.7241290e+03 8.8346517e+02 - 9.0232526e+02 2.7267383e+03 9.2306654e+02 - 8.3025097e+02 2.7264148e+03 9.6535045e+02 - 7.5764783e+02 2.7230436e+03 1.0104448e+03 - 6.8464987e+02 2.7164973e+03 1.0584940e+03 - 6.1142242e+02 2.7066325e+03 1.1096626e+03 - 5.3817265e+02 2.6932863e+03 1.1641408e+03 - 4.6516433e+02 2.6762727e+03 1.2221495e+03 - 3.9273879e+02 2.6553774e+03 1.2839464e+03 - 3.2134466e+02 2.6303557e+03 1.3498305e+03 - 2.5158059e+02 2.6009318e+03 1.4201407e+03 - 1.8425631e+02 2.5668087e+03 1.4952419e+03 - 1.2047838e+02 2.5276968e+03 1.5754814e+03 - 6.1765519e+01 2.4833849e+03 1.6610840e+03 - 1.0187818e+01 2.4338923e+03 1.7519271e+03 - -3.1510237e+01 2.3797688e+03 1.8470983e+03 - -5.9929682e+01 2.3226239e+03 1.9441179e+03 - -7.1471853e+01 2.2659009e+03 2.0378035e+03 - -6.3677864e+01 2.2155955e+03 2.1192215e+03 - -3.7607769e+01 2.1799602e+03 2.1761354e+03 - 0.0000000e+00 2.1669467e+03 2.1967838e+03 - 3.7607769e+01 2.1799602e+03 2.1761354e+03 - 6.3677864e+01 2.2155955e+03 2.1192215e+03 - 7.1471853e+01 2.2659009e+03 2.0378035e+03 - 5.9929682e+01 2.3226239e+03 1.9441179e+03 - 3.1510237e+01 2.3797688e+03 1.8470983e+03 - -1.0187818e+01 2.4338923e+03 1.7519271e+03 - -6.1765519e+01 2.4833849e+03 1.6610840e+03 - -1.2047838e+02 2.5276968e+03 1.5754814e+03 - -1.8425631e+02 2.5668087e+03 1.4952419e+03 - -2.5158059e+02 2.6009318e+03 1.4201407e+03 - -3.2134466e+02 2.6303557e+03 1.3498305e+03 - -3.9273879e+02 2.6553774e+03 1.2839464e+03 - -4.6516433e+02 2.6762727e+03 1.2221495e+03 - -5.3817265e+02 2.6932863e+03 1.1641408e+03 - -6.1142242e+02 2.7066325e+03 1.1096626e+03 - -6.8464987e+02 2.7164973e+03 1.0584940e+03 - -7.5764783e+02 2.7230436e+03 1.0104448e+03 - -8.3025098e+02 2.7264148e+03 9.6535045e+02 - -9.0232526e+02 2.7267383e+03 9.2306654e+02 - -9.7376024e+02 2.7241290e+03 8.8346517e+02 - -1.0444634e+03 2.7186914e+03 8.4643167e+02 - -1.1143561e+03 2.7105215e+03 8.1186217e+02 - -1.1833702e+03 2.6997082e+03 7.7966183e+02 - -1.2514460e+03 2.6863347e+03 7.4974352e+02 - -1.3185300e+03 2.6704790e+03 7.2202683e+02 - -1.3845736e+03 2.6522152e+03 6.9643743e+02 - -1.4495323e+03 2.6316133e+03 6.7290655e+02 - -1.5133643e+03 2.6087400e+03 6.5137068e+02 - -1.5760300e+03 2.5836592e+03 6.3177132e+02 - -1.6374914e+03 2.5564317e+03 6.1405487e+02 - -1.6977118e+03 2.5271162e+03 5.9817250e+02 - -1.7566549e+03 2.4957687e+03 5.8408011e+02 - -1.8142853e+03 2.4624432e+03 5.7173827e+02 - -1.8705672e+03 2.4271916e+03 5.6111225e+02 - -1.9254650e+03 2.3900640e+03 5.5217192e+02 - -1.9789429e+03 2.3511085e+03 5.4489182e+02 - -2.0309643e+03 2.3103716e+03 5.3925112e+02 - -2.0814923e+03 2.2678984e+03 5.3523362e+02 - -2.1304889e+03 2.2237323e+03 5.3282774e+02 - -2.1779155e+03 2.1779155e+03 5.3202655e+02 - -2.2237323e+03 2.1304889e+03 5.3282774e+02 - -2.2678984e+03 2.0814923e+03 5.3523362e+02 - -2.3103716e+03 2.0309643e+03 5.3925112e+02 - -2.3511085e+03 1.9789429e+03 5.4489182e+02 - -2.3900640e+03 1.9254650e+03 5.5217192e+02 - -2.4271916e+03 1.8705672e+03 5.6111225e+02 - -2.4624432e+03 1.8142853e+03 5.7173827e+02 - -2.4957687e+03 1.7566549e+03 5.8408011e+02 - -2.5271162e+03 1.6977118e+03 5.9817250e+02 - -2.5564317e+03 1.6374914e+03 6.1405487e+02 - -2.5836592e+03 1.5760300e+03 6.3177132e+02 - -2.6087400e+03 1.5133643e+03 6.5137068e+02 - -2.6316133e+03 1.4495323e+03 6.7290655e+02 - -2.6522152e+03 1.3845736e+03 6.9643743e+02 - -2.6704790e+03 1.3185300e+03 7.2202683e+02 - -2.6863347e+03 1.2514460e+03 7.4974352e+02 - -2.6997082e+03 1.1833702e+03 7.7966183e+02 - -2.7105215e+03 1.1143561e+03 8.1186217e+02 - -2.7186914e+03 1.0444634e+03 8.4643167e+02 - -2.7241290e+03 9.7376024e+02 8.8346517e+02 - -2.7267383e+03 9.0232526e+02 9.2306654e+02 - -2.7264148e+03 8.3025098e+02 9.6535045e+02 - -2.7230436e+03 7.5764783e+02 1.0104448e+03 - -2.7164973e+03 6.8464987e+02 1.0584940e+03 - -2.7066325e+03 6.1142242e+02 1.1096626e+03 - -2.6932863e+03 5.3817265e+02 1.1641408e+03 - -2.6762727e+03 4.6516433e+02 1.2221495e+03 - -2.6553774e+03 3.9273879e+02 1.2839464e+03 - -2.6303557e+03 3.2134466e+02 1.3498305e+03 - -2.6009318e+03 2.5158059e+02 1.4201407e+03 - -2.5668087e+03 1.8425631e+02 1.4952419e+03 - -2.5276968e+03 1.2047838e+02 1.5754814e+03 - -2.4833849e+03 6.1765519e+01 1.6610840e+03 - -2.4338923e+03 1.0187818e+01 1.7519271e+03 - -2.3797688e+03 -3.1510237e+01 1.8470983e+03 - -2.3226239e+03 -5.9929682e+01 1.9441179e+03 - -2.2659009e+03 -7.1471853e+01 2.0378035e+03 - -2.2155955e+03 -6.3677864e+01 2.1192215e+03 - -2.1799602e+03 -3.7607769e+01 2.1761354e+03 - -2.1669467e+03 0.0000000e+00 2.1967838e+03 - -2.1799602e+03 3.7607769e+01 2.1761354e+03 - -2.2155955e+03 6.3677864e+01 2.1192215e+03 - -2.2659009e+03 7.1471853e+01 2.0378035e+03 - -2.3226239e+03 5.9929682e+01 1.9441179e+03 - -2.3797688e+03 3.1510237e+01 1.8470983e+03 - -2.4338923e+03 -1.0187818e+01 1.7519271e+03 - -2.4833849e+03 -6.1765519e+01 1.6610840e+03 - -2.5276968e+03 -1.2047838e+02 1.5754814e+03 - -2.5668087e+03 -1.8425631e+02 1.4952419e+03 - -2.6009318e+03 -2.5158059e+02 1.4201407e+03 - -2.6303557e+03 -3.2134466e+02 1.3498305e+03 - -2.6553774e+03 -3.9273879e+02 1.2839464e+03 - -2.6762727e+03 -4.6516433e+02 1.2221495e+03 - -2.6932863e+03 -5.3817265e+02 1.1641408e+03 - -2.7066325e+03 -6.1142242e+02 1.1096626e+03 - -2.7164973e+03 -6.8464987e+02 1.0584940e+03 - -2.7230436e+03 -7.5764783e+02 1.0104448e+03 - -2.7264148e+03 -8.3025097e+02 9.6535045e+02 - -2.7267383e+03 -9.0232526e+02 9.2306654e+02 - -2.7241290e+03 -9.7376024e+02 8.8346517e+02 - -2.7186914e+03 -1.0444634e+03 8.4643167e+02 - -2.7105215e+03 -1.1143561e+03 8.1186217e+02 - -2.6997082e+03 -1.1833702e+03 7.7966183e+02 - -2.6863347e+03 -1.2514460e+03 7.4974352e+02 - -2.6704790e+03 -1.3185300e+03 7.2202683e+02 - -2.6522152e+03 -1.3845736e+03 6.9643743e+02 - -2.6316133e+03 -1.4495323e+03 6.7290655e+02 - -2.6087400e+03 -1.5133643e+03 6.5137068e+02 - -2.5836592e+03 -1.5760300e+03 6.3177132e+02 - -2.5564317e+03 -1.6374914e+03 6.1405487e+02 - -2.5271162e+03 -1.6977118e+03 5.9817250e+02 - -2.4957687e+03 -1.7566549e+03 5.8408011e+02 - -2.4624432e+03 -1.8142853e+03 5.7173827e+02 - -2.4271916e+03 -1.8705672e+03 5.6111225e+02 - -2.3900640e+03 -1.9254650e+03 5.5217192e+02 - -2.3511085e+03 -1.9789429e+03 5.4489182e+02 - -2.3103716e+03 -2.0309643e+03 5.3925112e+02 - -2.2678984e+03 -2.0814923e+03 5.3523362e+02 - -2.2237323e+03 -2.1304889e+03 5.3282774e+02 - -2.1779155e+03 -2.1779155e+03 5.3202655e+02 - -2.1304889e+03 -2.2237323e+03 5.3282774e+02 - -2.0814923e+03 -2.2678984e+03 5.3523362e+02 - -2.0309643e+03 -2.3103716e+03 5.3925112e+02 - -1.9789429e+03 -2.3511085e+03 5.4489182e+02 - -1.9254650e+03 -2.3900640e+03 5.5217192e+02 - -1.8705672e+03 -2.4271916e+03 5.6111225e+02 - -1.8142853e+03 -2.4624432e+03 5.7173827e+02 - -1.7566549e+03 -2.4957687e+03 5.8408011e+02 - -1.6977118e+03 -2.5271162e+03 5.9817250e+02 - -1.6374914e+03 -2.5564317e+03 6.1405487e+02 - -1.5760300e+03 -2.5836592e+03 6.3177132e+02 - -1.5133643e+03 -2.6087400e+03 6.5137068e+02 - -1.4495323e+03 -2.6316133e+03 6.7290655e+02 - -1.3845736e+03 -2.6522152e+03 6.9643743e+02 - -1.3185300e+03 -2.6704790e+03 7.2202683e+02 - -1.2514460e+03 -2.6863347e+03 7.4974352e+02 - -1.1833702e+03 -2.6997082e+03 7.7966183e+02 - -1.1143561e+03 -2.7105215e+03 8.1186217e+02 - -1.0444634e+03 -2.7186914e+03 8.4643167e+02 - -9.7376024e+02 -2.7241290e+03 8.8346517e+02 - -9.0232526e+02 -2.7267383e+03 9.2306654e+02 - -8.3025097e+02 -2.7264148e+03 9.6535045e+02 - -7.5764783e+02 -2.7230436e+03 1.0104448e+03 - -6.8464987e+02 -2.7164973e+03 1.0584940e+03 - -6.1142242e+02 -2.7066325e+03 1.1096626e+03 - -5.3817265e+02 -2.6932863e+03 1.1641408e+03 - -4.6516433e+02 -2.6762727e+03 1.2221495e+03 - -3.9273879e+02 -2.6553774e+03 1.2839464e+03 - -3.2134466e+02 -2.6303557e+03 1.3498305e+03 - -2.5158059e+02 -2.6009318e+03 1.4201407e+03 - -1.8425631e+02 -2.5668087e+03 1.4952419e+03 - -1.2047838e+02 -2.5276968e+03 1.5754814e+03 - -6.1765519e+01 -2.4833849e+03 1.6610840e+03 - -1.0187818e+01 -2.4338923e+03 1.7519271e+03 - 3.1510237e+01 -2.3797688e+03 1.8470983e+03 - 5.9929682e+01 -2.3226239e+03 1.9441179e+03 - 7.1471853e+01 -2.2659009e+03 2.0378035e+03 - 6.3677864e+01 -2.2155955e+03 2.1192215e+03 - 3.7607769e+01 -2.1799602e+03 2.1761354e+03 - 0.0000000e+00 -2.1669467e+03 2.1967838e+03 - -3.7607769e+01 -2.1799602e+03 2.1761354e+03 - -6.3677864e+01 -2.2155955e+03 2.1192215e+03 - -7.1471853e+01 -2.2659009e+03 2.0378035e+03 - -5.9929682e+01 -2.3226239e+03 1.9441179e+03 - -3.1510237e+01 -2.3797688e+03 1.8470983e+03 - 1.0187818e+01 -2.4338923e+03 1.7519271e+03 - 6.1765519e+01 -2.4833849e+03 1.6610840e+03 - 1.2047838e+02 -2.5276968e+03 1.5754814e+03 - 1.8425631e+02 -2.5668087e+03 1.4952419e+03 - 2.5158059e+02 -2.6009318e+03 1.4201407e+03 - 3.2134466e+02 -2.6303557e+03 1.3498305e+03 - 3.9273879e+02 -2.6553774e+03 1.2839464e+03 - 4.6516433e+02 -2.6762727e+03 1.2221495e+03 - 5.3817265e+02 -2.6932863e+03 1.1641408e+03 - 6.1142242e+02 -2.7066325e+03 1.1096626e+03 - 6.8464987e+02 -2.7164973e+03 1.0584940e+03 - 7.5764783e+02 -2.7230436e+03 1.0104448e+03 - 8.3025098e+02 -2.7264148e+03 9.6535045e+02 - 9.0232526e+02 -2.7267383e+03 9.2306654e+02 - 9.7376024e+02 -2.7241290e+03 8.8346517e+02 - 1.0444634e+03 -2.7186914e+03 8.4643167e+02 - 1.1143561e+03 -2.7105215e+03 8.1186217e+02 - 1.1833702e+03 -2.6997082e+03 7.7966183e+02 - 1.2514460e+03 -2.6863347e+03 7.4974352e+02 - 1.3185300e+03 -2.6704790e+03 7.2202683e+02 - 1.3845736e+03 -2.6522152e+03 6.9643743e+02 - 1.4495323e+03 -2.6316133e+03 6.7290655e+02 - 1.5133643e+03 -2.6087400e+03 6.5137068e+02 - 1.5760300e+03 -2.5836592e+03 6.3177132e+02 - 1.6374914e+03 -2.5564317e+03 6.1405487e+02 - 1.6977118e+03 -2.5271162e+03 5.9817250e+02 - 1.7566549e+03 -2.4957687e+03 5.8408011e+02 - 1.8142853e+03 -2.4624432e+03 5.7173827e+02 - 1.8705672e+03 -2.4271916e+03 5.6111225e+02 - 1.9254650e+03 -2.3900640e+03 5.5217192e+02 - 1.9789429e+03 -2.3511085e+03 5.4489182e+02 - 2.0309643e+03 -2.3103716e+03 5.3925112e+02 - 2.0814923e+03 -2.2678984e+03 5.3523362e+02 - 2.1304889e+03 -2.2237323e+03 5.3282774e+02 - 2.1779155e+03 -2.1779155e+03 5.3202655e+02 - 2.2237323e+03 -2.1304889e+03 5.3282774e+02 - 2.2678984e+03 -2.0814923e+03 5.3523362e+02 - 2.3103716e+03 -2.0309643e+03 5.3925112e+02 - 2.3511085e+03 -1.9789429e+03 5.4489182e+02 - 2.3900640e+03 -1.9254650e+03 5.5217192e+02 - 2.4271916e+03 -1.8705672e+03 5.6111225e+02 - 2.4624432e+03 -1.8142853e+03 5.7173827e+02 - 2.4957687e+03 -1.7566549e+03 5.8408011e+02 - 2.5271162e+03 -1.6977118e+03 5.9817250e+02 - 2.5564317e+03 -1.6374914e+03 6.1405487e+02 - 2.5836592e+03 -1.5760300e+03 6.3177132e+02 - 2.6087400e+03 -1.5133643e+03 6.5137068e+02 - 2.6316133e+03 -1.4495323e+03 6.7290655e+02 - 2.6522152e+03 -1.3845736e+03 6.9643743e+02 - 2.6704790e+03 -1.3185300e+03 7.2202683e+02 - 2.6863347e+03 -1.2514460e+03 7.4974352e+02 - 2.6997082e+03 -1.1833702e+03 7.7966183e+02 - 2.7105215e+03 -1.1143561e+03 8.1186217e+02 - 2.7186914e+03 -1.0444634e+03 8.4643167e+02 - 2.7241290e+03 -9.7376024e+02 8.8346517e+02 - 2.7267383e+03 -9.0232526e+02 9.2306654e+02 - 2.7264148e+03 -8.3025098e+02 9.6535045e+02 - 2.7230436e+03 -7.5764783e+02 1.0104448e+03 - 2.7164973e+03 -6.8464987e+02 1.0584940e+03 - 2.7066325e+03 -6.1142242e+02 1.1096626e+03 - 2.6932863e+03 -5.3817265e+02 1.1641408e+03 - 2.6762727e+03 -4.6516433e+02 1.2221495e+03 - 2.6553774e+03 -3.9273879e+02 1.2839464e+03 - 2.6303557e+03 -3.2134466e+02 1.3498305e+03 - 2.6009318e+03 -2.5158059e+02 1.4201407e+03 - 2.5668087e+03 -1.8425631e+02 1.4952419e+03 - 2.5276968e+03 -1.2047838e+02 1.5754814e+03 - 2.4833849e+03 -6.1765519e+01 1.6610840e+03 - 2.4338923e+03 -1.0187818e+01 1.7519271e+03 - 2.3797688e+03 3.1510237e+01 1.8470983e+03 - 2.3226239e+03 5.9929682e+01 1.9441179e+03 - 2.2659009e+03 7.1471853e+01 2.0378035e+03 - 2.2155955e+03 6.3677864e+01 2.1192215e+03 - 2.1799602e+03 3.7607769e+01 2.1761354e+03 - 2.1669467e+03 2.4067136e-09 2.1967838e+03 - 2.2032157e+03 0.0000000e+00 2.1362695e+03 - 2.2107364e+03 6.7334797e+00 2.1233212e+03 - 2.2323269e+03 1.7046981e+01 2.0859691e+03 - 2.2654027e+03 3.3732079e+01 2.0281893e+03 - 2.3065484e+03 5.8365552e+01 1.9552467e+03 - 2.3523282e+03 9.1338566e+01 1.8724584e+03 - 2.3998174e+03 1.3217590e+02 1.7843774e+03 - 2.4468019e+03 1.7991926e+02 1.6944813e+03 - 2.4917503e+03 2.3343416e+02 1.6052109e+03 - 2.5336810e+03 2.9160217e+02 1.5181660e+03 - 2.5720140e+03 3.5341716e+02 1.4343297e+03 - 2.6064433e+03 4.1801927e+02 1.3542606e+03 - 2.6368413e+03 4.8469484e+02 1.2782378e+03 - 2.6631923e+03 5.5286109e+02 1.2063618e+03 - 2.6855491e+03 6.2204582e+02 1.1386216e+03 - 2.7040041e+03 6.9186732e+02 1.0749387e+03 - 2.7186716e+03 7.6201658e+02 1.0151952e+03 - 2.7296767e+03 8.3224241e+02 9.5925095e+02 - 2.7371486e+03 9.0233938e+02 9.0695492e+02 - 2.7412166e+03 9.7213819e+02 8.5815227e+02 - 2.7420073e+03 1.0414980e+03 8.1268870e+02 - 2.7396434e+03 1.1103006e+03 7.7041327e+02 - 2.7342431e+03 1.1784453e+03 7.3118020e+02 - 2.7259195e+03 1.2458457e+03 6.9485007e+02 - 2.7147805e+03 1.3124265e+03 6.6129052e+02 - 2.7009292e+03 1.3781208e+03 6.3037673e+02 - 2.6844631e+03 1.4428690e+03 6.0199171e+02 - 2.6654754e+03 1.5066167e+03 5.7602648e+02 - 2.6440543e+03 1.5693136e+03 5.5238007e+02 - 2.6202835e+03 1.6309127e+03 5.3095956e+02 - 2.5942427e+03 1.6913694e+03 5.1168005e+02 - 2.5660075e+03 1.7506407e+03 4.9446451e+02 - 2.5356497e+03 1.8086848e+03 4.7924376e+02 - 2.5032376e+03 1.8654608e+03 4.6595631e+02 - 2.4688361e+03 1.9209279e+03 4.5454825e+02 - 2.4325073e+03 1.9750455e+03 4.4497313e+02 - 2.3943100e+03 2.0277725e+03 4.3719186e+02 - 2.3543007e+03 2.0790673e+03 4.3117260e+02 - 2.3125333e+03 2.1288875e+03 4.2689069e+02 - 2.2690595e+03 2.1771897e+03 4.2432855e+02 - 2.2239291e+03 2.2239291e+03 4.2347567e+02 - 2.1771897e+03 2.2690595e+03 4.2432855e+02 - 2.1288875e+03 2.3125333e+03 4.2689069e+02 - 2.0790673e+03 2.3543007e+03 4.3117260e+02 - 2.0277725e+03 2.3943100e+03 4.3719186e+02 - 1.9750455e+03 2.4325073e+03 4.4497313e+02 - 1.9209279e+03 2.4688361e+03 4.5454825e+02 - 1.8654608e+03 2.5032376e+03 4.6595631e+02 - 1.8086848e+03 2.5356497e+03 4.7924376e+02 - 1.7506407e+03 2.5660075e+03 4.9446451e+02 - 1.6913694e+03 2.5942427e+03 5.1168005e+02 - 1.6309127e+03 2.6202835e+03 5.3095956e+02 - 1.5693136e+03 2.6440543e+03 5.5238007e+02 - 1.5066167e+03 2.6654754e+03 5.7602648e+02 - 1.4428690e+03 2.6844631e+03 6.0199171e+02 - 1.3781208e+03 2.7009292e+03 6.3037673e+02 - 1.3124265e+03 2.7147805e+03 6.6129052e+02 - 1.2458457e+03 2.7259195e+03 6.9485007e+02 - 1.1784453e+03 2.7342431e+03 7.3118020e+02 - 1.1103006e+03 2.7396434e+03 7.7041327e+02 - 1.0414980e+03 2.7420073e+03 8.1268870e+02 - 9.7213819e+02 2.7412166e+03 8.5815227e+02 - 9.0233938e+02 2.7371486e+03 9.0695492e+02 - 8.3224241e+02 2.7296767e+03 9.5925095e+02 - 7.6201658e+02 2.7186716e+03 1.0151952e+03 - 6.9186732e+02 2.7040041e+03 1.0749387e+03 - 6.2204582e+02 2.6855491e+03 1.1386216e+03 - 5.5286109e+02 2.6631923e+03 1.2063618e+03 - 4.8469484e+02 2.6368413e+03 1.2782378e+03 - 4.1801927e+02 2.6064433e+03 1.3542606e+03 - 3.5341716e+02 2.5720140e+03 1.4343297e+03 - 2.9160217e+02 2.5336810e+03 1.5181660e+03 - 2.3343416e+02 2.4917503e+03 1.6052109e+03 - 1.7991926e+02 2.4468019e+03 1.6944813e+03 - 1.3217590e+02 2.3998174e+03 1.7843774e+03 - 9.1338566e+01 2.3523282e+03 1.8724584e+03 - 5.8365552e+01 2.3065484e+03 1.9552467e+03 - 3.3732079e+01 2.2654027e+03 2.0281893e+03 - 1.7046981e+01 2.2323269e+03 2.0859691e+03 - 6.7334797e+00 2.2107364e+03 2.1233212e+03 - -2.4067136e-09 2.2032157e+03 2.1362695e+03 - -6.7334797e+00 2.2107364e+03 2.1233212e+03 - -1.7046981e+01 2.2323269e+03 2.0859691e+03 - -3.3732079e+01 2.2654027e+03 2.0281893e+03 - -5.8365552e+01 2.3065484e+03 1.9552467e+03 - -9.1338566e+01 2.3523282e+03 1.8724584e+03 - -1.3217590e+02 2.3998174e+03 1.7843774e+03 - -1.7991926e+02 2.4468019e+03 1.6944813e+03 - -2.3343416e+02 2.4917503e+03 1.6052109e+03 - -2.9160217e+02 2.5336810e+03 1.5181660e+03 - -3.5341716e+02 2.5720140e+03 1.4343297e+03 - -4.1801927e+02 2.6064433e+03 1.3542606e+03 - -4.8469484e+02 2.6368413e+03 1.2782378e+03 - -5.5286109e+02 2.6631923e+03 1.2063618e+03 - -6.2204582e+02 2.6855491e+03 1.1386216e+03 - -6.9186732e+02 2.7040041e+03 1.0749387e+03 - -7.6201658e+02 2.7186716e+03 1.0151952e+03 - -8.3224241e+02 2.7296767e+03 9.5925095e+02 - -9.0233938e+02 2.7371486e+03 9.0695492e+02 - -9.7213819e+02 2.7412166e+03 8.5815227e+02 - -1.0414980e+03 2.7420073e+03 8.1268870e+02 - -1.1103006e+03 2.7396434e+03 7.7041327e+02 - -1.1784453e+03 2.7342431e+03 7.3118020e+02 - -1.2458457e+03 2.7259195e+03 6.9485007e+02 - -1.3124265e+03 2.7147805e+03 6.6129052e+02 - -1.3781208e+03 2.7009292e+03 6.3037673e+02 - -1.4428690e+03 2.6844631e+03 6.0199171e+02 - -1.5066167e+03 2.6654754e+03 5.7602648e+02 - -1.5693136e+03 2.6440543e+03 5.5238007e+02 - -1.6309127e+03 2.6202835e+03 5.3095956e+02 - -1.6913694e+03 2.5942427e+03 5.1168005e+02 - -1.7506407e+03 2.5660075e+03 4.9446451e+02 - -1.8086848e+03 2.5356497e+03 4.7924376e+02 - -1.8654608e+03 2.5032376e+03 4.6595631e+02 - -1.9209279e+03 2.4688361e+03 4.5454825e+02 - -1.9750455e+03 2.4325073e+03 4.4497313e+02 - -2.0277725e+03 2.3943100e+03 4.3719186e+02 - -2.0790673e+03 2.3543007e+03 4.3117260e+02 - -2.1288875e+03 2.3125333e+03 4.2689069e+02 - -2.1771897e+03 2.2690595e+03 4.2432855e+02 - -2.2239291e+03 2.2239291e+03 4.2347567e+02 - -2.2690595e+03 2.1771897e+03 4.2432855e+02 - -2.3125333e+03 2.1288875e+03 4.2689069e+02 - -2.3543007e+03 2.0790673e+03 4.3117260e+02 - -2.3943100e+03 2.0277725e+03 4.3719186e+02 - -2.4325073e+03 1.9750455e+03 4.4497313e+02 - -2.4688361e+03 1.9209279e+03 4.5454825e+02 - -2.5032376e+03 1.8654608e+03 4.6595631e+02 - -2.5356497e+03 1.8086848e+03 4.7924376e+02 - -2.5660075e+03 1.7506407e+03 4.9446451e+02 - -2.5942427e+03 1.6913694e+03 5.1168005e+02 - -2.6202835e+03 1.6309127e+03 5.3095956e+02 - -2.6440543e+03 1.5693136e+03 5.5238007e+02 - -2.6654754e+03 1.5066167e+03 5.7602648e+02 - -2.6844631e+03 1.4428690e+03 6.0199171e+02 - -2.7009292e+03 1.3781208e+03 6.3037673e+02 - -2.7147805e+03 1.3124265e+03 6.6129052e+02 - -2.7259195e+03 1.2458457e+03 6.9485007e+02 - -2.7342431e+03 1.1784453e+03 7.3118020e+02 - -2.7396434e+03 1.1103006e+03 7.7041327e+02 - -2.7420073e+03 1.0414980e+03 8.1268870e+02 - -2.7412166e+03 9.7213819e+02 8.5815227e+02 - -2.7371486e+03 9.0233938e+02 9.0695492e+02 - -2.7296767e+03 8.3224241e+02 9.5925095e+02 - -2.7186716e+03 7.6201658e+02 1.0151952e+03 - -2.7040041e+03 6.9186732e+02 1.0749387e+03 - -2.6855491e+03 6.2204582e+02 1.1386216e+03 - -2.6631923e+03 5.5286109e+02 1.2063618e+03 - -2.6368413e+03 4.8469484e+02 1.2782378e+03 - -2.6064433e+03 4.1801927e+02 1.3542606e+03 - -2.5720140e+03 3.5341716e+02 1.4343297e+03 - -2.5336810e+03 2.9160217e+02 1.5181660e+03 - -2.4917503e+03 2.3343416e+02 1.6052109e+03 - -2.4468019e+03 1.7991926e+02 1.6944813e+03 - -2.3998174e+03 1.3217590e+02 1.7843774e+03 - -2.3523282e+03 9.1338566e+01 1.8724584e+03 - -2.3065484e+03 5.8365552e+01 1.9552467e+03 - -2.2654027e+03 3.3732079e+01 2.0281893e+03 - -2.2323269e+03 1.7046981e+01 2.0859691e+03 - -2.2107364e+03 6.7334797e+00 2.1233212e+03 - -2.2032157e+03 2.4067136e-09 2.1362695e+03 - -2.2107364e+03 -6.7334797e+00 2.1233212e+03 - -2.2323269e+03 -1.7046981e+01 2.0859691e+03 - -2.2654027e+03 -3.3732079e+01 2.0281893e+03 - -2.3065484e+03 -5.8365552e+01 1.9552467e+03 - -2.3523282e+03 -9.1338566e+01 1.8724584e+03 - -2.3998174e+03 -1.3217590e+02 1.7843774e+03 - -2.4468019e+03 -1.7991926e+02 1.6944813e+03 - -2.4917503e+03 -2.3343416e+02 1.6052109e+03 - -2.5336810e+03 -2.9160217e+02 1.5181660e+03 - -2.5720140e+03 -3.5341716e+02 1.4343297e+03 - -2.6064433e+03 -4.1801927e+02 1.3542606e+03 - -2.6368413e+03 -4.8469484e+02 1.2782378e+03 - -2.6631923e+03 -5.5286109e+02 1.2063618e+03 - -2.6855491e+03 -6.2204582e+02 1.1386216e+03 - -2.7040041e+03 -6.9186732e+02 1.0749387e+03 - -2.7186716e+03 -7.6201658e+02 1.0151952e+03 - -2.7296767e+03 -8.3224241e+02 9.5925095e+02 - -2.7371486e+03 -9.0233938e+02 9.0695492e+02 - -2.7412166e+03 -9.7213819e+02 8.5815227e+02 - -2.7420073e+03 -1.0414980e+03 8.1268870e+02 - -2.7396434e+03 -1.1103006e+03 7.7041327e+02 - -2.7342431e+03 -1.1784453e+03 7.3118020e+02 - -2.7259195e+03 -1.2458457e+03 6.9485007e+02 - -2.7147805e+03 -1.3124265e+03 6.6129052e+02 - -2.7009292e+03 -1.3781208e+03 6.3037673e+02 - -2.6844631e+03 -1.4428690e+03 6.0199171e+02 - -2.6654754e+03 -1.5066167e+03 5.7602648e+02 - -2.6440543e+03 -1.5693136e+03 5.5238007e+02 - -2.6202835e+03 -1.6309127e+03 5.3095956e+02 - -2.5942427e+03 -1.6913694e+03 5.1168005e+02 - -2.5660075e+03 -1.7506407e+03 4.9446451e+02 - -2.5356497e+03 -1.8086848e+03 4.7924376e+02 - -2.5032376e+03 -1.8654608e+03 4.6595631e+02 - -2.4688361e+03 -1.9209279e+03 4.5454825e+02 - -2.4325073e+03 -1.9750455e+03 4.4497313e+02 - -2.3943100e+03 -2.0277725e+03 4.3719186e+02 - -2.3543007e+03 -2.0790673e+03 4.3117260e+02 - -2.3125333e+03 -2.1288875e+03 4.2689069e+02 - -2.2690595e+03 -2.1771897e+03 4.2432855e+02 - -2.2239291e+03 -2.2239291e+03 4.2347567e+02 - -2.1771897e+03 -2.2690595e+03 4.2432855e+02 - -2.1288875e+03 -2.3125333e+03 4.2689069e+02 - -2.0790673e+03 -2.3543007e+03 4.3117260e+02 - -2.0277725e+03 -2.3943100e+03 4.3719186e+02 - -1.9750455e+03 -2.4325073e+03 4.4497313e+02 - -1.9209279e+03 -2.4688361e+03 4.5454825e+02 - -1.8654608e+03 -2.5032376e+03 4.6595631e+02 - -1.8086848e+03 -2.5356497e+03 4.7924376e+02 - -1.7506407e+03 -2.5660075e+03 4.9446451e+02 - -1.6913694e+03 -2.5942427e+03 5.1168005e+02 - -1.6309127e+03 -2.6202835e+03 5.3095956e+02 - -1.5693136e+03 -2.6440543e+03 5.5238007e+02 - -1.5066167e+03 -2.6654754e+03 5.7602648e+02 - -1.4428690e+03 -2.6844631e+03 6.0199171e+02 - -1.3781208e+03 -2.7009292e+03 6.3037673e+02 - -1.3124265e+03 -2.7147805e+03 6.6129052e+02 - -1.2458457e+03 -2.7259195e+03 6.9485007e+02 - -1.1784453e+03 -2.7342431e+03 7.3118020e+02 - -1.1103006e+03 -2.7396434e+03 7.7041327e+02 - -1.0414980e+03 -2.7420073e+03 8.1268870e+02 - -9.7213819e+02 -2.7412166e+03 8.5815227e+02 - -9.0233938e+02 -2.7371486e+03 9.0695492e+02 - -8.3224241e+02 -2.7296767e+03 9.5925095e+02 - -7.6201658e+02 -2.7186716e+03 1.0151952e+03 - -6.9186732e+02 -2.7040041e+03 1.0749387e+03 - -6.2204582e+02 -2.6855491e+03 1.1386216e+03 - -5.5286109e+02 -2.6631923e+03 1.2063618e+03 - -4.8469484e+02 -2.6368413e+03 1.2782378e+03 - -4.1801927e+02 -2.6064433e+03 1.3542606e+03 - -3.5341716e+02 -2.5720140e+03 1.4343297e+03 - -2.9160217e+02 -2.5336810e+03 1.5181660e+03 - -2.3343416e+02 -2.4917503e+03 1.6052109e+03 - -1.7991926e+02 -2.4468019e+03 1.6944813e+03 - -1.3217590e+02 -2.3998174e+03 1.7843774e+03 - -9.1338566e+01 -2.3523282e+03 1.8724584e+03 - -5.8365552e+01 -2.3065484e+03 1.9552467e+03 - -3.3732079e+01 -2.2654027e+03 2.0281893e+03 - -1.7046981e+01 -2.2323269e+03 2.0859691e+03 - -6.7334797e+00 -2.2107364e+03 2.1233212e+03 - 0.0000000e+00 -2.2032157e+03 2.1362695e+03 - 6.7334797e+00 -2.2107364e+03 2.1233212e+03 - 1.7046981e+01 -2.2323269e+03 2.0859691e+03 - 3.3732079e+01 -2.2654027e+03 2.0281893e+03 - 5.8365552e+01 -2.3065484e+03 1.9552467e+03 - 9.1338566e+01 -2.3523282e+03 1.8724584e+03 - 1.3217590e+02 -2.3998174e+03 1.7843774e+03 - 1.7991926e+02 -2.4468019e+03 1.6944813e+03 - 2.3343416e+02 -2.4917503e+03 1.6052109e+03 - 2.9160217e+02 -2.5336810e+03 1.5181660e+03 - 3.5341716e+02 -2.5720140e+03 1.4343297e+03 - 4.1801927e+02 -2.6064433e+03 1.3542606e+03 - 4.8469484e+02 -2.6368413e+03 1.2782378e+03 - 5.5286109e+02 -2.6631923e+03 1.2063618e+03 - 6.2204582e+02 -2.6855491e+03 1.1386216e+03 - 6.9186732e+02 -2.7040041e+03 1.0749387e+03 - 7.6201658e+02 -2.7186716e+03 1.0151952e+03 - 8.3224241e+02 -2.7296767e+03 9.5925095e+02 - 9.0233938e+02 -2.7371486e+03 9.0695492e+02 - 9.7213819e+02 -2.7412166e+03 8.5815227e+02 - 1.0414980e+03 -2.7420073e+03 8.1268870e+02 - 1.1103006e+03 -2.7396434e+03 7.7041327e+02 - 1.1784453e+03 -2.7342431e+03 7.3118020e+02 - 1.2458457e+03 -2.7259195e+03 6.9485007e+02 - 1.3124265e+03 -2.7147805e+03 6.6129052e+02 - 1.3781208e+03 -2.7009292e+03 6.3037673e+02 - 1.4428690e+03 -2.6844631e+03 6.0199171e+02 - 1.5066167e+03 -2.6654754e+03 5.7602648e+02 - 1.5693136e+03 -2.6440543e+03 5.5238007e+02 - 1.6309127e+03 -2.6202835e+03 5.3095956e+02 - 1.6913694e+03 -2.5942427e+03 5.1168005e+02 - 1.7506407e+03 -2.5660075e+03 4.9446451e+02 - 1.8086848e+03 -2.5356497e+03 4.7924376e+02 - 1.8654608e+03 -2.5032376e+03 4.6595631e+02 - 1.9209279e+03 -2.4688361e+03 4.5454825e+02 - 1.9750455e+03 -2.4325073e+03 4.4497313e+02 - 2.0277725e+03 -2.3943100e+03 4.3719186e+02 - 2.0790673e+03 -2.3543007e+03 4.3117260e+02 - 2.1288875e+03 -2.3125333e+03 4.2689069e+02 - 2.1771897e+03 -2.2690595e+03 4.2432855e+02 - 2.2239291e+03 -2.2239291e+03 4.2347567e+02 - 2.2690595e+03 -2.1771897e+03 4.2432855e+02 - 2.3125333e+03 -2.1288875e+03 4.2689069e+02 - 2.3543007e+03 -2.0790673e+03 4.3117260e+02 - 2.3943100e+03 -2.0277725e+03 4.3719186e+02 - 2.4325073e+03 -1.9750455e+03 4.4497313e+02 - 2.4688361e+03 -1.9209279e+03 4.5454825e+02 - 2.5032376e+03 -1.8654608e+03 4.6595631e+02 - 2.5356497e+03 -1.8086848e+03 4.7924376e+02 - 2.5660075e+03 -1.7506407e+03 4.9446451e+02 - 2.5942427e+03 -1.6913694e+03 5.1168005e+02 - 2.6202835e+03 -1.6309127e+03 5.3095956e+02 - 2.6440543e+03 -1.5693136e+03 5.5238007e+02 - 2.6654754e+03 -1.5066167e+03 5.7602648e+02 - 2.6844631e+03 -1.4428690e+03 6.0199171e+02 - 2.7009292e+03 -1.3781208e+03 6.3037673e+02 - 2.7147805e+03 -1.3124265e+03 6.6129052e+02 - 2.7259195e+03 -1.2458457e+03 6.9485007e+02 - 2.7342431e+03 -1.1784453e+03 7.3118020e+02 - 2.7396434e+03 -1.1103006e+03 7.7041327e+02 - 2.7420073e+03 -1.0414980e+03 8.1268870e+02 - 2.7412166e+03 -9.7213819e+02 8.5815227e+02 - 2.7371486e+03 -9.0233938e+02 9.0695492e+02 - 2.7296767e+03 -8.3224241e+02 9.5925095e+02 - 2.7186716e+03 -7.6201658e+02 1.0151952e+03 - 2.7040041e+03 -6.9186732e+02 1.0749387e+03 - 2.6855491e+03 -6.2204582e+02 1.1386216e+03 - 2.6631923e+03 -5.5286109e+02 1.2063618e+03 - 2.6368413e+03 -4.8469484e+02 1.2782378e+03 - 2.6064433e+03 -4.1801927e+02 1.3542606e+03 - 2.5720140e+03 -3.5341716e+02 1.4343297e+03 - 2.5336810e+03 -2.9160217e+02 1.5181660e+03 - 2.4917503e+03 -2.3343416e+02 1.6052109e+03 - 2.4468019e+03 -1.7991926e+02 1.6944813e+03 - 2.3998174e+03 -1.3217590e+02 1.7843774e+03 - 2.3523282e+03 -9.1338566e+01 1.8724584e+03 - 2.3065484e+03 -5.8365552e+01 1.9552467e+03 - 2.2654027e+03 -3.3732079e+01 2.0281893e+03 - 2.2323269e+03 -1.7046981e+01 2.0859691e+03 - 2.2107364e+03 -6.7334797e+00 2.1233212e+03 - 2.2032157e+03 -2.4067136e-09 2.1362695e+03 - 2.2387984e+03 -2.4067136e-09 2.0741667e+03 - 2.2434941e+03 3.5855463e+01 2.0651526e+03 - 2.2572797e+03 7.2671144e+01 2.0386086e+03 - 2.2792961e+03 1.1130405e+02 1.9959532e+03 - 2.3082516e+03 1.5242777e+02 1.9393231e+03 - 2.3425907e+03 1.9648956e+02 1.8712961e+03 - 2.3806662e+03 2.4370658e+02 1.7946089e+03 - 2.4208852e+03 2.9409268e+02 1.7119180e+03 - 2.4618097e+03 3.4750254e+02 1.6256323e+03 - 2.5022125e+03 4.0368050e+02 1.5378195e+03 - 2.5410959e+03 4.6230536e+02 1.4501728e+03 - 2.5776841e+03 5.2302643e+02 1.3640222e+03 - 2.6114003e+03 5.8548989e+02 1.2803689e+03 - 2.6418376e+03 6.4935606e+02 1.1999335e+03 - 2.6687279e+03 7.1430963e+02 1.1232053e+03 - 2.6919134e+03 7.8006454e+02 1.0504887e+03 - 2.7113215e+03 8.4636538e+02 9.8194519e+02 - 2.7269442e+03 9.1298647e+02 9.1762729e+02 - 2.7388204e+03 9.7972972e+02 8.5750760e+02 - 2.7470228e+03 1.0464218e+03 8.0150134e+02 - 2.7516472e+03 1.1129114e+03 7.4948430e+02 - 2.7528043e+03 1.1790657e+03 7.0130670e+02 - 2.7506138e+03 1.2447682e+03 6.5680379e+02 - 2.7451998e+03 1.3099162e+03 6.1580377e+02 - 2.7366873e+03 1.3744182e+03 5.7813376e+02 - 2.7251999e+03 1.4381923e+03 5.4362404e+02 - 2.7108582e+03 1.5011644e+03 5.1211115e+02 - 2.6937787e+03 1.5632668e+03 4.8344003e+02 - 2.6740733e+03 1.6244371e+03 4.5746540e+02 - 2.6518484e+03 1.6846170e+03 4.3405270e+02 - 2.6272053e+03 1.7437514e+03 4.1307856e+02 - 2.6002400e+03 1.8017877e+03 3.9443104e+02 - 2.5710430e+03 1.8586752e+03 3.7800968e+02 - 2.5397004e+03 1.9143642e+03 3.6372537e+02 - 2.5062930e+03 1.9688061e+03 3.5150024e+02 - 2.4708977e+03 2.0219521e+03 3.4126739e+02 - 2.4335869e+03 2.0737537e+03 3.3297069e+02 - 2.3944293e+03 2.1241615e+03 3.2656455e+02 - 2.3534905e+03 2.1731254e+03 3.2201376e+02 - 2.3108325e+03 2.2205941e+03 3.1929327e+02 - 2.2665147e+03 2.2665147e+03 3.1838810e+02 - 2.2205941e+03 2.3108325e+03 3.1929327e+02 - 2.1731254e+03 2.3534905e+03 3.2201376e+02 - 2.1241615e+03 2.3944293e+03 3.2656455e+02 - 2.0737537e+03 2.4335869e+03 3.3297069e+02 - 2.0219521e+03 2.4708977e+03 3.4126739e+02 - 1.9688061e+03 2.5062930e+03 3.5150024e+02 - 1.9143642e+03 2.5397004e+03 3.6372537e+02 - 1.8586752e+03 2.5710430e+03 3.7800968e+02 - 1.8017877e+03 2.6002400e+03 3.9443104e+02 - 1.7437514e+03 2.6272053e+03 4.1307856e+02 - 1.6846170e+03 2.6518484e+03 4.3405270e+02 - 1.6244371e+03 2.6740733e+03 4.5746540e+02 - 1.5632668e+03 2.6937787e+03 4.8344003e+02 - 1.5011644e+03 2.7108582e+03 5.1211115e+02 - 1.4381923e+03 2.7251999e+03 5.4362404e+02 - 1.3744182e+03 2.7366873e+03 5.7813376e+02 - 1.3099162e+03 2.7451998e+03 6.1580377e+02 - 1.2447682e+03 2.7506138e+03 6.5680379e+02 - 1.1790657e+03 2.7528043e+03 7.0130670e+02 - 1.1129114e+03 2.7516472e+03 7.4948430e+02 - 1.0464218e+03 2.7470228e+03 8.0150134e+02 - 9.7972972e+02 2.7388204e+03 8.5750760e+02 - 9.1298647e+02 2.7269442e+03 9.1762729e+02 - 8.4636538e+02 2.7113215e+03 9.8194519e+02 - 7.8006454e+02 2.6919134e+03 1.0504887e+03 - 7.1430963e+02 2.6687279e+03 1.1232053e+03 - 6.4935606e+02 2.6418376e+03 1.1999335e+03 - 5.8548989e+02 2.6114003e+03 1.2803689e+03 - 5.2302643e+02 2.5776841e+03 1.3640222e+03 - 4.6230536e+02 2.5410959e+03 1.4501728e+03 - 4.0368050e+02 2.5022125e+03 1.5378195e+03 - 3.4750254e+02 2.4618097e+03 1.6256323e+03 - 2.9409268e+02 2.4208852e+03 1.7119180e+03 - 2.4370658e+02 2.3806662e+03 1.7946089e+03 - 1.9648956e+02 2.3425907e+03 1.8712961e+03 - 1.5242777e+02 2.3082516e+03 1.9393231e+03 - 1.1130405e+02 2.2792961e+03 1.9959532e+03 - 7.2671144e+01 2.2572797e+03 2.0386086e+03 - 3.5855463e+01 2.2434941e+03 2.0651526e+03 - 0.0000000e+00 2.2387984e+03 2.0741667e+03 - -3.5855463e+01 2.2434941e+03 2.0651526e+03 - -7.2671144e+01 2.2572797e+03 2.0386086e+03 - -1.1130405e+02 2.2792961e+03 1.9959532e+03 - -1.5242777e+02 2.3082516e+03 1.9393231e+03 - -1.9648956e+02 2.3425907e+03 1.8712961e+03 - -2.4370658e+02 2.3806662e+03 1.7946089e+03 - -2.9409268e+02 2.4208852e+03 1.7119180e+03 - -3.4750254e+02 2.4618097e+03 1.6256323e+03 - -4.0368050e+02 2.5022125e+03 1.5378195e+03 - -4.6230536e+02 2.5410959e+03 1.4501728e+03 - -5.2302643e+02 2.5776841e+03 1.3640222e+03 - -5.8548989e+02 2.6114003e+03 1.2803689e+03 - -6.4935606e+02 2.6418376e+03 1.1999335e+03 - -7.1430963e+02 2.6687279e+03 1.1232053e+03 - -7.8006454e+02 2.6919134e+03 1.0504887e+03 - -8.4636538e+02 2.7113215e+03 9.8194519e+02 - -9.1298647e+02 2.7269442e+03 9.1762729e+02 - -9.7972972e+02 2.7388204e+03 8.5750760e+02 - -1.0464218e+03 2.7470228e+03 8.0150134e+02 - -1.1129114e+03 2.7516472e+03 7.4948430e+02 - -1.1790657e+03 2.7528043e+03 7.0130670e+02 - -1.2447682e+03 2.7506138e+03 6.5680379e+02 - -1.3099162e+03 2.7451998e+03 6.1580377e+02 - -1.3744182e+03 2.7366873e+03 5.7813376e+02 - -1.4381923e+03 2.7251999e+03 5.4362404e+02 - -1.5011644e+03 2.7108582e+03 5.1211115e+02 - -1.5632668e+03 2.6937787e+03 4.8344003e+02 - -1.6244371e+03 2.6740733e+03 4.5746540e+02 - -1.6846170e+03 2.6518484e+03 4.3405270e+02 - -1.7437514e+03 2.6272053e+03 4.1307856e+02 - -1.8017877e+03 2.6002400e+03 3.9443104e+02 - -1.8586752e+03 2.5710430e+03 3.7800968e+02 - -1.9143642e+03 2.5397004e+03 3.6372537e+02 - -1.9688061e+03 2.5062930e+03 3.5150024e+02 - -2.0219521e+03 2.4708977e+03 3.4126739e+02 - -2.0737537e+03 2.4335869e+03 3.3297069e+02 - -2.1241615e+03 2.3944293e+03 3.2656455e+02 - -2.1731254e+03 2.3534905e+03 3.2201376e+02 - -2.2205941e+03 2.3108325e+03 3.1929327e+02 - -2.2665147e+03 2.2665147e+03 3.1838810e+02 - -2.3108325e+03 2.2205941e+03 3.1929327e+02 - -2.3534905e+03 2.1731254e+03 3.2201376e+02 - -2.3944293e+03 2.1241615e+03 3.2656455e+02 - -2.4335869e+03 2.0737537e+03 3.3297069e+02 - -2.4708977e+03 2.0219521e+03 3.4126739e+02 - -2.5062930e+03 1.9688061e+03 3.5150024e+02 - -2.5397004e+03 1.9143642e+03 3.6372537e+02 - -2.5710430e+03 1.8586752e+03 3.7800968e+02 - -2.6002400e+03 1.8017877e+03 3.9443104e+02 - -2.6272053e+03 1.7437514e+03 4.1307856e+02 - -2.6518484e+03 1.6846170e+03 4.3405270e+02 - -2.6740733e+03 1.6244371e+03 4.5746540e+02 - -2.6937787e+03 1.5632668e+03 4.8344003e+02 - -2.7108582e+03 1.5011644e+03 5.1211115e+02 - -2.7251999e+03 1.4381923e+03 5.4362404e+02 - -2.7366873e+03 1.3744182e+03 5.7813376e+02 - -2.7451998e+03 1.3099162e+03 6.1580377e+02 - -2.7506138e+03 1.2447682e+03 6.5680379e+02 - -2.7528043e+03 1.1790657e+03 7.0130670e+02 - -2.7516472e+03 1.1129114e+03 7.4948430e+02 - -2.7470228e+03 1.0464218e+03 8.0150134e+02 - -2.7388204e+03 9.7972972e+02 8.5750760e+02 - -2.7269442e+03 9.1298647e+02 9.1762729e+02 - -2.7113215e+03 8.4636538e+02 9.8194519e+02 - -2.6919134e+03 7.8006454e+02 1.0504887e+03 - -2.6687279e+03 7.1430963e+02 1.1232053e+03 - -2.6418376e+03 6.4935606e+02 1.1999335e+03 - -2.6114003e+03 5.8548989e+02 1.2803689e+03 - -2.5776841e+03 5.2302643e+02 1.3640222e+03 - -2.5410959e+03 4.6230536e+02 1.4501728e+03 - -2.5022125e+03 4.0368050e+02 1.5378195e+03 - -2.4618097e+03 3.4750254e+02 1.6256323e+03 - -2.4208852e+03 2.9409268e+02 1.7119180e+03 - -2.3806662e+03 2.4370658e+02 1.7946089e+03 - -2.3425907e+03 1.9648956e+02 1.8712961e+03 - -2.3082516e+03 1.5242777e+02 1.9393231e+03 - -2.2792961e+03 1.1130405e+02 1.9959532e+03 - -2.2572797e+03 7.2671144e+01 2.0386086e+03 - -2.2434941e+03 3.5855463e+01 2.0651526e+03 - -2.2387984e+03 0.0000000e+00 2.0741667e+03 - -2.2434941e+03 -3.5855463e+01 2.0651526e+03 - -2.2572797e+03 -7.2671144e+01 2.0386086e+03 - -2.2792961e+03 -1.1130405e+02 1.9959532e+03 - -2.3082516e+03 -1.5242777e+02 1.9393231e+03 - -2.3425907e+03 -1.9648956e+02 1.8712961e+03 - -2.3806662e+03 -2.4370658e+02 1.7946089e+03 - -2.4208852e+03 -2.9409268e+02 1.7119180e+03 - -2.4618097e+03 -3.4750254e+02 1.6256323e+03 - -2.5022125e+03 -4.0368050e+02 1.5378195e+03 - -2.5410959e+03 -4.6230536e+02 1.4501728e+03 - -2.5776841e+03 -5.2302643e+02 1.3640222e+03 - -2.6114003e+03 -5.8548989e+02 1.2803689e+03 - -2.6418376e+03 -6.4935606e+02 1.1999335e+03 - -2.6687279e+03 -7.1430963e+02 1.1232053e+03 - -2.6919134e+03 -7.8006454e+02 1.0504887e+03 - -2.7113215e+03 -8.4636538e+02 9.8194519e+02 - -2.7269442e+03 -9.1298647e+02 9.1762729e+02 - -2.7388204e+03 -9.7972972e+02 8.5750760e+02 - -2.7470228e+03 -1.0464218e+03 8.0150134e+02 - -2.7516472e+03 -1.1129114e+03 7.4948430e+02 - -2.7528043e+03 -1.1790657e+03 7.0130670e+02 - -2.7506138e+03 -1.2447682e+03 6.5680379e+02 - -2.7451998e+03 -1.3099162e+03 6.1580377e+02 - -2.7366873e+03 -1.3744182e+03 5.7813376e+02 - -2.7251999e+03 -1.4381923e+03 5.4362404e+02 - -2.7108582e+03 -1.5011644e+03 5.1211115e+02 - -2.6937787e+03 -1.5632668e+03 4.8344003e+02 - -2.6740733e+03 -1.6244371e+03 4.5746540e+02 - -2.6518484e+03 -1.6846170e+03 4.3405270e+02 - -2.6272053e+03 -1.7437514e+03 4.1307856e+02 - -2.6002400e+03 -1.8017877e+03 3.9443104e+02 - -2.5710430e+03 -1.8586752e+03 3.7800968e+02 - -2.5397004e+03 -1.9143642e+03 3.6372537e+02 - -2.5062930e+03 -1.9688061e+03 3.5150024e+02 - -2.4708977e+03 -2.0219521e+03 3.4126739e+02 - -2.4335869e+03 -2.0737537e+03 3.3297069e+02 - -2.3944293e+03 -2.1241615e+03 3.2656455e+02 - -2.3534905e+03 -2.1731254e+03 3.2201376e+02 - -2.3108325e+03 -2.2205941e+03 3.1929327e+02 - -2.2665147e+03 -2.2665147e+03 3.1838810e+02 - -2.2205941e+03 -2.3108325e+03 3.1929327e+02 - -2.1731254e+03 -2.3534905e+03 3.2201376e+02 - -2.1241615e+03 -2.3944293e+03 3.2656455e+02 - -2.0737537e+03 -2.4335869e+03 3.3297069e+02 - -2.0219521e+03 -2.4708977e+03 3.4126739e+02 - -1.9688061e+03 -2.5062930e+03 3.5150024e+02 - -1.9143642e+03 -2.5397004e+03 3.6372537e+02 - -1.8586752e+03 -2.5710430e+03 3.7800968e+02 - -1.8017877e+03 -2.6002400e+03 3.9443104e+02 - -1.7437514e+03 -2.6272053e+03 4.1307856e+02 - -1.6846170e+03 -2.6518484e+03 4.3405270e+02 - -1.6244371e+03 -2.6740733e+03 4.5746540e+02 - -1.5632668e+03 -2.6937787e+03 4.8344003e+02 - -1.5011644e+03 -2.7108582e+03 5.1211115e+02 - -1.4381923e+03 -2.7251999e+03 5.4362404e+02 - -1.3744182e+03 -2.7366873e+03 5.7813376e+02 - -1.3099162e+03 -2.7451998e+03 6.1580377e+02 - -1.2447682e+03 -2.7506138e+03 6.5680379e+02 - -1.1790657e+03 -2.7528043e+03 7.0130670e+02 - -1.1129114e+03 -2.7516472e+03 7.4948430e+02 - -1.0464218e+03 -2.7470228e+03 8.0150134e+02 - -9.7972972e+02 -2.7388204e+03 8.5750760e+02 - -9.1298647e+02 -2.7269442e+03 9.1762729e+02 - -8.4636538e+02 -2.7113215e+03 9.8194519e+02 - -7.8006454e+02 -2.6919134e+03 1.0504887e+03 - -7.1430963e+02 -2.6687279e+03 1.1232053e+03 - -6.4935606e+02 -2.6418376e+03 1.1999335e+03 - -5.8548989e+02 -2.6114003e+03 1.2803689e+03 - -5.2302643e+02 -2.5776841e+03 1.3640222e+03 - -4.6230536e+02 -2.5410959e+03 1.4501728e+03 - -4.0368050e+02 -2.5022125e+03 1.5378195e+03 - -3.4750254e+02 -2.4618097e+03 1.6256323e+03 - -2.9409268e+02 -2.4208852e+03 1.7119180e+03 - -2.4370658e+02 -2.3806662e+03 1.7946089e+03 - -1.9648956e+02 -2.3425907e+03 1.8712961e+03 - -1.5242777e+02 -2.3082516e+03 1.9393231e+03 - -1.1130405e+02 -2.2792961e+03 1.9959532e+03 - -7.2671144e+01 -2.2572797e+03 2.0386086e+03 - -3.5855463e+01 -2.2434941e+03 2.0651526e+03 - 2.4067136e-09 -2.2387984e+03 2.0741667e+03 - 3.5855463e+01 -2.2434941e+03 2.0651526e+03 - 7.2671144e+01 -2.2572797e+03 2.0386086e+03 - 1.1130405e+02 -2.2792961e+03 1.9959532e+03 - 1.5242777e+02 -2.3082516e+03 1.9393231e+03 - 1.9648956e+02 -2.3425907e+03 1.8712961e+03 - 2.4370658e+02 -2.3806662e+03 1.7946089e+03 - 2.9409268e+02 -2.4208852e+03 1.7119180e+03 - 3.4750254e+02 -2.4618097e+03 1.6256323e+03 - 4.0368050e+02 -2.5022125e+03 1.5378195e+03 - 4.6230536e+02 -2.5410959e+03 1.4501728e+03 - 5.2302643e+02 -2.5776841e+03 1.3640222e+03 - 5.8548989e+02 -2.6114003e+03 1.2803689e+03 - 6.4935606e+02 -2.6418376e+03 1.1999335e+03 - 7.1430963e+02 -2.6687279e+03 1.1232053e+03 - 7.8006454e+02 -2.6919134e+03 1.0504887e+03 - 8.4636538e+02 -2.7113215e+03 9.8194519e+02 - 9.1298647e+02 -2.7269442e+03 9.1762729e+02 - 9.7972972e+02 -2.7388204e+03 8.5750760e+02 - 1.0464218e+03 -2.7470228e+03 8.0150134e+02 - 1.1129114e+03 -2.7516472e+03 7.4948430e+02 - 1.1790657e+03 -2.7528043e+03 7.0130670e+02 - 1.2447682e+03 -2.7506138e+03 6.5680379e+02 - 1.3099162e+03 -2.7451998e+03 6.1580377e+02 - 1.3744182e+03 -2.7366873e+03 5.7813376e+02 - 1.4381923e+03 -2.7251999e+03 5.4362404e+02 - 1.5011644e+03 -2.7108582e+03 5.1211115e+02 - 1.5632668e+03 -2.6937787e+03 4.8344003e+02 - 1.6244371e+03 -2.6740733e+03 4.5746540e+02 - 1.6846170e+03 -2.6518484e+03 4.3405270e+02 - 1.7437514e+03 -2.6272053e+03 4.1307856e+02 - 1.8017877e+03 -2.6002400e+03 3.9443104e+02 - 1.8586752e+03 -2.5710430e+03 3.7800968e+02 - 1.9143642e+03 -2.5397004e+03 3.6372537e+02 - 1.9688061e+03 -2.5062930e+03 3.5150024e+02 - 2.0219521e+03 -2.4708977e+03 3.4126739e+02 - 2.0737537e+03 -2.4335869e+03 3.3297069e+02 - 2.1241615e+03 -2.3944293e+03 3.2656455e+02 - 2.1731254e+03 -2.3534905e+03 3.2201376e+02 - 2.2205941e+03 -2.3108325e+03 3.1929327e+02 - 2.2665147e+03 -2.2665147e+03 3.1838810e+02 - 2.3108325e+03 -2.2205941e+03 3.1929327e+02 - 2.3534905e+03 -2.1731254e+03 3.2201376e+02 - 2.3944293e+03 -2.1241615e+03 3.2656455e+02 - 2.4335869e+03 -2.0737537e+03 3.3297069e+02 - 2.4708977e+03 -2.0219521e+03 3.4126739e+02 - 2.5062930e+03 -1.9688061e+03 3.5150024e+02 - 2.5397004e+03 -1.9143642e+03 3.6372537e+02 - 2.5710430e+03 -1.8586752e+03 3.7800968e+02 - 2.6002400e+03 -1.8017877e+03 3.9443104e+02 - 2.6272053e+03 -1.7437514e+03 4.1307856e+02 - 2.6518484e+03 -1.6846170e+03 4.3405270e+02 - 2.6740733e+03 -1.6244371e+03 4.5746540e+02 - 2.6937787e+03 -1.5632668e+03 4.8344003e+02 - 2.7108582e+03 -1.5011644e+03 5.1211115e+02 - 2.7251999e+03 -1.4381923e+03 5.4362404e+02 - 2.7366873e+03 -1.3744182e+03 5.7813376e+02 - 2.7451998e+03 -1.3099162e+03 6.1580377e+02 - 2.7506138e+03 -1.2447682e+03 6.5680379e+02 - 2.7528043e+03 -1.1790657e+03 7.0130670e+02 - 2.7516472e+03 -1.1129114e+03 7.4948430e+02 - 2.7470228e+03 -1.0464218e+03 8.0150134e+02 - 2.7388204e+03 -9.7972972e+02 8.5750760e+02 - 2.7269442e+03 -9.1298647e+02 9.1762729e+02 - 2.7113215e+03 -8.4636538e+02 9.8194519e+02 - 2.6919134e+03 -7.8006454e+02 1.0504887e+03 - 2.6687279e+03 -7.1430963e+02 1.1232053e+03 - 2.6418376e+03 -6.4935606e+02 1.1999335e+03 - 2.6114003e+03 -5.8548989e+02 1.2803689e+03 - 2.5776841e+03 -5.2302643e+02 1.3640222e+03 - 2.5410959e+03 -4.6230536e+02 1.4501728e+03 - 2.5022125e+03 -4.0368050e+02 1.5378195e+03 - 2.4618097e+03 -3.4750254e+02 1.6256323e+03 - 2.4208852e+03 -2.9409268e+02 1.7119180e+03 - 2.3806662e+03 -2.4370658e+02 1.7946089e+03 - 2.3425907e+03 -1.9648956e+02 1.8712961e+03 - 2.3082516e+03 -1.5242777e+02 1.9393231e+03 - 2.2792961e+03 -1.1130405e+02 1.9959532e+03 - 2.2572797e+03 -7.2671144e+01 2.0386086e+03 - 2.2434941e+03 -3.5855463e+01 2.0651526e+03 - 2.2387984e+03 2.4067136e-09 2.0741667e+03 - 2.2736465e+03 0.0000000e+00 2.0104787e+03 - 2.2766890e+03 5.6674612e+01 2.0037463e+03 - 2.2857291e+03 1.1335690e+02 1.9837187e+03 - 2.3005072e+03 1.7006405e+02 1.9508998e+03 - 2.3205968e+03 2.2683026e+02 1.9061123e+03 - 2.3454166e+03 2.8371056e+02 1.8504700e+03 - 2.3742496e+03 3.4078004e+02 1.7853353e+03 - 2.4062692e+03 3.9812870e+02 1.7122629e+03 - 2.4405751e+03 4.5585277e+02 1.6329307e+03 - 2.4762321e+03 5.1404432e+02 1.5490626e+03 - 2.5123133e+03 5.7278088e+02 1.4623511e+03 - 2.5479382e+03 6.3211697e+02 1.3743871e+03 - 2.5823070e+03 6.9207851e+02 1.2866025e+03 - 2.6147236e+03 7.5266074e+02 1.2002311e+03 - 2.6446097e+03 8.1382913e+02 1.1162881e+03 - 2.6715088e+03 8.7552285e+02 1.0355675e+03 - 2.6950814e+03 9.3765969e+02 9.5865381e+02 - 2.7150952e+03 1.0001416e+03 8.8594286e+02 - 2.7314110e+03 1.0628603e+03 8.1766922e+02 - 2.7439669e+03 1.1257017e+03 7.5393511e+02 - 2.7527633e+03 1.1885504e+03 6.9473864e+02 - 2.7578484e+03 1.2512924e+03 6.3999969e+02 - 2.7593056e+03 1.3138172e+03 5.8958221e+02 - 2.7572427e+03 1.3760194e+03 5.4331284e+02 - 2.7517836e+03 1.4377993e+03 5.0099575e+02 - 2.7430616e+03 1.4990630e+03 4.6242436e+02 - 2.7312139e+03 1.5597225e+03 4.2738995e+02 - 2.7163780e+03 1.6196954e+03 3.9568818e+02 - 2.6986892e+03 1.6789040e+03 3.6712354e+02 - 2.6782785e+03 1.7372752e+03 3.4151243e+02 - 2.6552715e+03 1.7947396e+03 3.1868511e+02 - 2.6297877e+03 1.8512309e+03 2.9848686e+02 - 2.6019404e+03 1.9066852e+03 2.8077852e+02 - 2.5718365e+03 1.9610407e+03 2.6543666e+02 - 2.5395768e+03 2.0142367e+03 2.5235349e+02 - 2.5052561e+03 2.0662133e+03 2.4143656e+02 - 2.4689637e+03 2.1169110e+03 2.3260847e+02 - 2.4307839e+03 2.1662696e+03 2.2580650e+02 - 2.3907965e+03 2.2142284e+03 2.2098225e+02 - 2.3490769e+03 2.2607255e+03 2.1810137e+02 - 2.3056970e+03 2.3056970e+03 2.1714335e+02 - 2.2607255e+03 2.3490769e+03 2.1810137e+02 - 2.2142284e+03 2.3907965e+03 2.2098225e+02 - 2.1662696e+03 2.4307839e+03 2.2580650e+02 - 2.1169110e+03 2.4689637e+03 2.3260847e+02 - 2.0662133e+03 2.5052561e+03 2.4143656e+02 - 2.0142367e+03 2.5395768e+03 2.5235349e+02 - 1.9610407e+03 2.5718365e+03 2.6543666e+02 - 1.9066852e+03 2.6019404e+03 2.8077852e+02 - 1.8512309e+03 2.6297877e+03 2.9848686e+02 - 1.7947396e+03 2.6552715e+03 3.1868511e+02 - 1.7372752e+03 2.6782785e+03 3.4151243e+02 - 1.6789040e+03 2.6986892e+03 3.6712354e+02 - 1.6196954e+03 2.7163780e+03 3.9568818e+02 - 1.5597225e+03 2.7312139e+03 4.2738995e+02 - 1.4990630e+03 2.7430616e+03 4.6242436e+02 - 1.4377993e+03 2.7517836e+03 5.0099575e+02 - 1.3760194e+03 2.7572427e+03 5.4331284e+02 - 1.3138172e+03 2.7593056e+03 5.8958221e+02 - 1.2512924e+03 2.7578484e+03 6.3999969e+02 - 1.1885504e+03 2.7527633e+03 6.9473864e+02 - 1.1257017e+03 2.7439669e+03 7.5393511e+02 - 1.0628603e+03 2.7314110e+03 8.1766922e+02 - 1.0001416e+03 2.7150952e+03 8.8594286e+02 - 9.3765969e+02 2.6950814e+03 9.5865381e+02 - 8.7552285e+02 2.6715088e+03 1.0355675e+03 - 8.1382913e+02 2.6446097e+03 1.1162881e+03 - 7.5266074e+02 2.6147236e+03 1.2002311e+03 - 6.9207851e+02 2.5823070e+03 1.2866025e+03 - 6.3211697e+02 2.5479382e+03 1.3743871e+03 - 5.7278088e+02 2.5123133e+03 1.4623511e+03 - 5.1404432e+02 2.4762321e+03 1.5490626e+03 - 4.5585277e+02 2.4405751e+03 1.6329307e+03 - 3.9812870e+02 2.4062692e+03 1.7122629e+03 - 3.4078004e+02 2.3742496e+03 1.7853353e+03 - 2.8371056e+02 2.3454166e+03 1.8504700e+03 - 2.2683026e+02 2.3205968e+03 1.9061123e+03 - 1.7006405e+02 2.3005072e+03 1.9508998e+03 - 1.1335690e+02 2.2857291e+03 1.9837187e+03 - 5.6674612e+01 2.2766890e+03 2.0037463e+03 - -7.2201409e-09 2.2736465e+03 2.0104787e+03 - -5.6674612e+01 2.2766890e+03 2.0037463e+03 - -1.1335690e+02 2.2857291e+03 1.9837187e+03 - -1.7006405e+02 2.3005072e+03 1.9508998e+03 - -2.2683026e+02 2.3205968e+03 1.9061123e+03 - -2.8371056e+02 2.3454166e+03 1.8504700e+03 - -3.4078004e+02 2.3742496e+03 1.7853353e+03 - -3.9812870e+02 2.4062692e+03 1.7122629e+03 - -4.5585277e+02 2.4405751e+03 1.6329307e+03 - -5.1404432e+02 2.4762321e+03 1.5490626e+03 - -5.7278088e+02 2.5123133e+03 1.4623511e+03 - -6.3211697e+02 2.5479382e+03 1.3743871e+03 - -6.9207851e+02 2.5823070e+03 1.2866025e+03 - -7.5266074e+02 2.6147236e+03 1.2002311e+03 - -8.1382913e+02 2.6446097e+03 1.1162881e+03 - -8.7552285e+02 2.6715088e+03 1.0355675e+03 - -9.3765969e+02 2.6950814e+03 9.5865381e+02 - -1.0001416e+03 2.7150952e+03 8.8594286e+02 - -1.0628603e+03 2.7314110e+03 8.1766922e+02 - -1.1257017e+03 2.7439669e+03 7.5393511e+02 - -1.1885504e+03 2.7527633e+03 6.9473864e+02 - -1.2512924e+03 2.7578484e+03 6.3999969e+02 - -1.3138172e+03 2.7593056e+03 5.8958221e+02 - -1.3760194e+03 2.7572427e+03 5.4331284e+02 - -1.4377993e+03 2.7517836e+03 5.0099575e+02 - -1.4990630e+03 2.7430616e+03 4.6242436e+02 - -1.5597225e+03 2.7312139e+03 4.2738995e+02 - -1.6196954e+03 2.7163780e+03 3.9568818e+02 - -1.6789040e+03 2.6986892e+03 3.6712354e+02 - -1.7372752e+03 2.6782785e+03 3.4151243e+02 - -1.7947396e+03 2.6552715e+03 3.1868511e+02 - -1.8512309e+03 2.6297877e+03 2.9848686e+02 - -1.9066852e+03 2.6019404e+03 2.8077852e+02 - -1.9610407e+03 2.5718365e+03 2.6543666e+02 - -2.0142367e+03 2.5395768e+03 2.5235349e+02 - -2.0662133e+03 2.5052561e+03 2.4143656e+02 - -2.1169110e+03 2.4689637e+03 2.3260847e+02 - -2.1662696e+03 2.4307839e+03 2.2580650e+02 - -2.2142284e+03 2.3907965e+03 2.2098225e+02 - -2.2607255e+03 2.3490769e+03 2.1810137e+02 - -2.3056970e+03 2.3056970e+03 2.1714335e+02 - -2.3490769e+03 2.2607255e+03 2.1810137e+02 - -2.3907965e+03 2.2142284e+03 2.2098225e+02 - -2.4307839e+03 2.1662696e+03 2.2580650e+02 - -2.4689637e+03 2.1169110e+03 2.3260847e+02 - -2.5052561e+03 2.0662133e+03 2.4143656e+02 - -2.5395768e+03 2.0142367e+03 2.5235349e+02 - -2.5718365e+03 1.9610407e+03 2.6543666e+02 - -2.6019404e+03 1.9066852e+03 2.8077852e+02 - -2.6297877e+03 1.8512309e+03 2.9848686e+02 - -2.6552715e+03 1.7947396e+03 3.1868511e+02 - -2.6782785e+03 1.7372752e+03 3.4151243e+02 - -2.6986892e+03 1.6789040e+03 3.6712354e+02 - -2.7163780e+03 1.6196954e+03 3.9568818e+02 - -2.7312139e+03 1.5597225e+03 4.2738995e+02 - -2.7430616e+03 1.4990630e+03 4.6242436e+02 - -2.7517836e+03 1.4377993e+03 5.0099575e+02 - -2.7572427e+03 1.3760194e+03 5.4331284e+02 - -2.7593056e+03 1.3138172e+03 5.8958221e+02 - -2.7578484e+03 1.2512924e+03 6.3999969e+02 - -2.7527633e+03 1.1885504e+03 6.9473864e+02 - -2.7439669e+03 1.1257017e+03 7.5393511e+02 - -2.7314110e+03 1.0628603e+03 8.1766922e+02 - -2.7150952e+03 1.0001416e+03 8.8594286e+02 - -2.6950814e+03 9.3765969e+02 9.5865381e+02 - -2.6715088e+03 8.7552285e+02 1.0355675e+03 - -2.6446097e+03 8.1382913e+02 1.1162881e+03 - -2.6147236e+03 7.5266074e+02 1.2002311e+03 - -2.5823070e+03 6.9207851e+02 1.2866025e+03 - -2.5479382e+03 6.3211697e+02 1.3743871e+03 - -2.5123133e+03 5.7278088e+02 1.4623511e+03 - -2.4762321e+03 5.1404432e+02 1.5490626e+03 - -2.4405751e+03 4.5585277e+02 1.6329307e+03 - -2.4062692e+03 3.9812870e+02 1.7122629e+03 - -2.3742496e+03 3.4078004e+02 1.7853353e+03 - -2.3454166e+03 2.8371056e+02 1.8504700e+03 - -2.3205968e+03 2.2683026e+02 1.9061123e+03 - -2.3005072e+03 1.7006405e+02 1.9508998e+03 - -2.2857291e+03 1.1335690e+02 1.9837187e+03 - -2.2766890e+03 5.6674612e+01 2.0037463e+03 - -2.2736465e+03 -4.8134273e-09 2.0104787e+03 - -2.2766890e+03 -5.6674612e+01 2.0037463e+03 - -2.2857291e+03 -1.1335690e+02 1.9837187e+03 - -2.3005072e+03 -1.7006405e+02 1.9508998e+03 - -2.3205968e+03 -2.2683026e+02 1.9061123e+03 - -2.3454166e+03 -2.8371056e+02 1.8504700e+03 - -2.3742496e+03 -3.4078004e+02 1.7853353e+03 - -2.4062692e+03 -3.9812870e+02 1.7122629e+03 - -2.4405751e+03 -4.5585277e+02 1.6329307e+03 - -2.4762321e+03 -5.1404432e+02 1.5490626e+03 - -2.5123133e+03 -5.7278088e+02 1.4623511e+03 - -2.5479382e+03 -6.3211697e+02 1.3743871e+03 - -2.5823070e+03 -6.9207851e+02 1.2866025e+03 - -2.6147236e+03 -7.5266074e+02 1.2002311e+03 - -2.6446097e+03 -8.1382913e+02 1.1162881e+03 - -2.6715088e+03 -8.7552285e+02 1.0355675e+03 - -2.6950814e+03 -9.3765969e+02 9.5865381e+02 - -2.7150952e+03 -1.0001416e+03 8.8594286e+02 - -2.7314110e+03 -1.0628603e+03 8.1766922e+02 - -2.7439669e+03 -1.1257017e+03 7.5393511e+02 - -2.7527633e+03 -1.1885504e+03 6.9473864e+02 - -2.7578484e+03 -1.2512924e+03 6.3999969e+02 - -2.7593056e+03 -1.3138172e+03 5.8958221e+02 - -2.7572427e+03 -1.3760194e+03 5.4331284e+02 - -2.7517836e+03 -1.4377993e+03 5.0099575e+02 - -2.7430616e+03 -1.4990630e+03 4.6242436e+02 - -2.7312139e+03 -1.5597225e+03 4.2738995e+02 - -2.7163780e+03 -1.6196954e+03 3.9568818e+02 - -2.6986892e+03 -1.6789040e+03 3.6712354e+02 - -2.6782785e+03 -1.7372752e+03 3.4151243e+02 - -2.6552715e+03 -1.7947396e+03 3.1868511e+02 - -2.6297877e+03 -1.8512309e+03 2.9848686e+02 - -2.6019404e+03 -1.9066852e+03 2.8077852e+02 - -2.5718365e+03 -1.9610407e+03 2.6543666e+02 - -2.5395768e+03 -2.0142367e+03 2.5235349e+02 - -2.5052561e+03 -2.0662133e+03 2.4143656e+02 - -2.4689637e+03 -2.1169110e+03 2.3260847e+02 - -2.4307839e+03 -2.1662696e+03 2.2580650e+02 - -2.3907965e+03 -2.2142284e+03 2.2098225e+02 - -2.3490769e+03 -2.2607255e+03 2.1810137e+02 - -2.3056970e+03 -2.3056970e+03 2.1714335e+02 - -2.2607255e+03 -2.3490769e+03 2.1810137e+02 - -2.2142284e+03 -2.3907965e+03 2.2098225e+02 - -2.1662696e+03 -2.4307839e+03 2.2580650e+02 - -2.1169110e+03 -2.4689637e+03 2.3260847e+02 - -2.0662133e+03 -2.5052561e+03 2.4143656e+02 - -2.0142367e+03 -2.5395768e+03 2.5235349e+02 - -1.9610407e+03 -2.5718365e+03 2.6543666e+02 - -1.9066852e+03 -2.6019404e+03 2.8077852e+02 - -1.8512309e+03 -2.6297877e+03 2.9848686e+02 - -1.7947396e+03 -2.6552715e+03 3.1868511e+02 - -1.7372752e+03 -2.6782785e+03 3.4151243e+02 - -1.6789040e+03 -2.6986892e+03 3.6712354e+02 - -1.6196954e+03 -2.7163780e+03 3.9568818e+02 - -1.5597225e+03 -2.7312139e+03 4.2738995e+02 - -1.4990630e+03 -2.7430616e+03 4.6242436e+02 - -1.4377993e+03 -2.7517836e+03 5.0099575e+02 - -1.3760194e+03 -2.7572427e+03 5.4331284e+02 - -1.3138172e+03 -2.7593056e+03 5.8958221e+02 - -1.2512924e+03 -2.7578484e+03 6.3999969e+02 - -1.1885504e+03 -2.7527633e+03 6.9473864e+02 - -1.1257017e+03 -2.7439669e+03 7.5393511e+02 - -1.0628603e+03 -2.7314110e+03 8.1766922e+02 - -1.0001416e+03 -2.7150952e+03 8.8594286e+02 - -9.3765969e+02 -2.6950814e+03 9.5865381e+02 - -8.7552285e+02 -2.6715088e+03 1.0355675e+03 - -8.1382913e+02 -2.6446097e+03 1.1162881e+03 - -7.5266074e+02 -2.6147236e+03 1.2002311e+03 - -6.9207851e+02 -2.5823070e+03 1.2866025e+03 - -6.3211697e+02 -2.5479382e+03 1.3743871e+03 - -5.7278088e+02 -2.5123133e+03 1.4623511e+03 - -5.1404432e+02 -2.4762321e+03 1.5490626e+03 - -4.5585277e+02 -2.4405751e+03 1.6329307e+03 - -3.9812870e+02 -2.4062692e+03 1.7122629e+03 - -3.4078004e+02 -2.3742496e+03 1.7853353e+03 - -2.8371056e+02 -2.3454166e+03 1.8504700e+03 - -2.2683026e+02 -2.3205968e+03 1.9061123e+03 - -1.7006405e+02 -2.3005072e+03 1.9508998e+03 - -1.1335690e+02 -2.2857291e+03 1.9837187e+03 - -5.6674612e+01 -2.2766890e+03 2.0037463e+03 - 2.4067136e-09 -2.2736465e+03 2.0104787e+03 - 5.6674612e+01 -2.2766890e+03 2.0037463e+03 - 1.1335690e+02 -2.2857291e+03 1.9837187e+03 - 1.7006405e+02 -2.3005072e+03 1.9508998e+03 - 2.2683026e+02 -2.3205968e+03 1.9061123e+03 - 2.8371056e+02 -2.3454166e+03 1.8504700e+03 - 3.4078004e+02 -2.3742496e+03 1.7853353e+03 - 3.9812870e+02 -2.4062692e+03 1.7122629e+03 - 4.5585277e+02 -2.4405751e+03 1.6329307e+03 - 5.1404432e+02 -2.4762321e+03 1.5490626e+03 - 5.7278088e+02 -2.5123133e+03 1.4623511e+03 - 6.3211697e+02 -2.5479382e+03 1.3743871e+03 - 6.9207851e+02 -2.5823070e+03 1.2866025e+03 - 7.5266074e+02 -2.6147236e+03 1.2002311e+03 - 8.1382913e+02 -2.6446097e+03 1.1162881e+03 - 8.7552285e+02 -2.6715088e+03 1.0355675e+03 - 9.3765969e+02 -2.6950814e+03 9.5865381e+02 - 1.0001416e+03 -2.7150952e+03 8.8594286e+02 - 1.0628603e+03 -2.7314110e+03 8.1766922e+02 - 1.1257017e+03 -2.7439669e+03 7.5393511e+02 - 1.1885504e+03 -2.7527633e+03 6.9473864e+02 - 1.2512924e+03 -2.7578484e+03 6.3999969e+02 - 1.3138172e+03 -2.7593056e+03 5.8958221e+02 - 1.3760194e+03 -2.7572427e+03 5.4331284e+02 - 1.4377993e+03 -2.7517836e+03 5.0099575e+02 - 1.4990630e+03 -2.7430616e+03 4.6242436e+02 - 1.5597225e+03 -2.7312139e+03 4.2738995e+02 - 1.6196954e+03 -2.7163780e+03 3.9568818e+02 - 1.6789040e+03 -2.6986892e+03 3.6712354e+02 - 1.7372752e+03 -2.6782785e+03 3.4151243e+02 - 1.7947396e+03 -2.6552715e+03 3.1868511e+02 - 1.8512309e+03 -2.6297877e+03 2.9848686e+02 - 1.9066852e+03 -2.6019404e+03 2.8077852e+02 - 1.9610407e+03 -2.5718365e+03 2.6543666e+02 - 2.0142367e+03 -2.5395768e+03 2.5235349e+02 - 2.0662133e+03 -2.5052561e+03 2.4143656e+02 - 2.1169110e+03 -2.4689637e+03 2.3260847e+02 - 2.1662696e+03 -2.4307839e+03 2.2580650e+02 - 2.2142284e+03 -2.3907965e+03 2.2098225e+02 - 2.2607255e+03 -2.3490769e+03 2.1810137e+02 - 2.3056970e+03 -2.3056970e+03 2.1714335e+02 - 2.3490769e+03 -2.2607255e+03 2.1810137e+02 - 2.3907965e+03 -2.2142284e+03 2.2098225e+02 - 2.4307839e+03 -2.1662696e+03 2.2580650e+02 - 2.4689637e+03 -2.1169110e+03 2.3260847e+02 - 2.5052561e+03 -2.0662133e+03 2.4143656e+02 - 2.5395768e+03 -2.0142367e+03 2.5235349e+02 - 2.5718365e+03 -1.9610407e+03 2.6543666e+02 - 2.6019404e+03 -1.9066852e+03 2.8077852e+02 - 2.6297877e+03 -1.8512309e+03 2.9848686e+02 - 2.6552715e+03 -1.7947396e+03 3.1868511e+02 - 2.6782785e+03 -1.7372752e+03 3.4151243e+02 - 2.6986892e+03 -1.6789040e+03 3.6712354e+02 - 2.7163780e+03 -1.6196954e+03 3.9568818e+02 - 2.7312139e+03 -1.5597225e+03 4.2738995e+02 - 2.7430616e+03 -1.4990630e+03 4.6242436e+02 - 2.7517836e+03 -1.4377993e+03 5.0099575e+02 - 2.7572427e+03 -1.3760194e+03 5.4331284e+02 - 2.7593056e+03 -1.3138172e+03 5.8958221e+02 - 2.7578484e+03 -1.2512924e+03 6.3999969e+02 - 2.7527633e+03 -1.1885504e+03 6.9473864e+02 - 2.7439669e+03 -1.1257017e+03 7.5393511e+02 - 2.7314110e+03 -1.0628603e+03 8.1766922e+02 - 2.7150952e+03 -1.0001416e+03 8.8594286e+02 - 2.6950814e+03 -9.3765969e+02 9.5865381e+02 - 2.6715088e+03 -8.7552285e+02 1.0355675e+03 - 2.6446097e+03 -8.1382913e+02 1.1162881e+03 - 2.6147236e+03 -7.5266074e+02 1.2002311e+03 - 2.5823070e+03 -6.9207851e+02 1.2866025e+03 - 2.5479382e+03 -6.3211697e+02 1.3743871e+03 - 2.5123133e+03 -5.7278088e+02 1.4623511e+03 - 2.4762321e+03 -5.1404432e+02 1.5490626e+03 - 2.4405751e+03 -4.5585277e+02 1.6329307e+03 - 2.4062692e+03 -3.9812870e+02 1.7122629e+03 - 2.3742496e+03 -3.4078004e+02 1.7853353e+03 - 2.3454166e+03 -2.8371056e+02 1.8504700e+03 - 2.3205968e+03 -2.2683026e+02 1.9061123e+03 - 2.3005072e+03 -1.7006405e+02 1.9508998e+03 - 2.2857291e+03 -1.1335690e+02 1.9837187e+03 - 2.2766890e+03 -5.6674612e+01 2.0037463e+03 - 2.2736465e+03 0.0000000e+00 2.0104787e+03 - 2.3077107e+03 0.0000000e+00 1.9452124e+03 - 2.3096933e+03 7.2476923e+01 1.9399257e+03 - 2.3156284e+03 1.4460077e+02 1.9241164e+03 - 2.3254741e+03 2.1603728e+02 1.8979407e+03 - 2.3391502e+03 2.8648909e+02 1.8616735e+03 - 2.3565237e+03 3.5571212e+02 1.8157268e+03 - 2.3773917e+03 4.2352927e+02 1.7606707e+03 - 2.4014652e+03 4.8984001e+02 1.6972505e+03 - 2.4283562e+03 5.5462460e+02 1.6263960e+03 - 2.4575727e+03 6.1794192e+02 1.5492152e+03 - 2.4885240e+03 6.7992050e+02 1.4669714e+03 - 2.5205374e+03 7.4074349e+02 1.3810408e+03 - 2.5528858e+03 8.0062902e+02 1.2928550e+03 - 2.5848226e+03 8.5980863e+02 1.2038353e+03 - 2.6156194e+03 9.1850650e+02 1.1153254e+03 - 2.6446013e+03 9.7692195e+02 1.0285335e+03 - 2.6711758e+03 1.0352171e+03 9.4448898e+02 - 2.6948515e+03 1.0935100e+03 8.6401814e+02 - 2.7152469e+03 1.1518734e+03 7.8773803e+02 - 2.7320897e+03 1.2103374e+03 7.1606669e+02 - 2.7452085e+03 1.2688949e+03 6.4924452e+02 - 2.7545202e+03 1.3275087e+03 5.8736244e+02 - 2.7600142e+03 1.3861189e+03 5.3039230e+02 - 2.7617376e+03 1.4446491e+03 4.7821649e+02 - 2.7597803e+03 1.5030129e+03 4.3065450e+02 - 2.7542618e+03 1.5611177e+03 3.8748545e+02 - 2.7453216e+03 1.6188687e+03 3.4846629e+02 - 2.7331099e+03 1.6761713e+03 3.1334588e+02 - 2.7177816e+03 1.7329323e+03 2.8187537e+02 - 2.6994918e+03 1.7890615e+03 2.5381566e+02 - 2.6783922e+03 1.8444714e+03 2.2894240e+02 - 2.6546289e+03 1.8990778e+03 2.0704919e+02 - 2.6283414e+03 1.9527994e+03 1.8794940e+02 - 2.5996620e+03 2.0055572e+03 1.7147708e+02 - 2.5687152e+03 2.0572743e+03 1.5748719e+02 - 2.5356181e+03 2.1078753e+03 1.4585542e+02 - 2.5004809e+03 2.1572855e+03 1.3647779e+02 - 2.4634071e+03 2.2054304e+03 1.2927016e+02 - 2.4244943e+03 2.2522350e+03 1.2416771e+02 - 2.3838349e+03 2.2976231e+03 1.2112452e+02 - 2.3415165e+03 2.3415165e+03 1.2011316e+02 - 2.2976231e+03 2.3838349e+03 1.2112452e+02 - 2.2522350e+03 2.4244943e+03 1.2416771e+02 - 2.2054304e+03 2.4634071e+03 1.2927016e+02 - 2.1572855e+03 2.5004809e+03 1.3647779e+02 - 2.1078753e+03 2.5356181e+03 1.4585542e+02 - 2.0572743e+03 2.5687152e+03 1.5748719e+02 - 2.0055572e+03 2.5996620e+03 1.7147708e+02 - 1.9527994e+03 2.6283414e+03 1.8794940e+02 - 1.8990778e+03 2.6546289e+03 2.0704919e+02 - 1.8444714e+03 2.6783922e+03 2.2894240e+02 - 1.7890615e+03 2.6994918e+03 2.5381566e+02 - 1.7329323e+03 2.7177816e+03 2.8187537e+02 - 1.6761713e+03 2.7331099e+03 3.1334588e+02 - 1.6188687e+03 2.7453216e+03 3.4846629e+02 - 1.5611177e+03 2.7542618e+03 3.8748545e+02 - 1.5030129e+03 2.7597803e+03 4.3065450e+02 - 1.4446491e+03 2.7617376e+03 4.7821649e+02 - 1.3861189e+03 2.7600142e+03 5.3039230e+02 - 1.3275087e+03 2.7545202e+03 5.8736244e+02 - 1.2688949e+03 2.7452085e+03 6.4924452e+02 - 1.2103374e+03 2.7320897e+03 7.1606669e+02 - 1.1518734e+03 2.7152469e+03 7.8773803e+02 - 1.0935100e+03 2.6948515e+03 8.6401814e+02 - 1.0352171e+03 2.6711758e+03 9.4448898e+02 - 9.7692195e+02 2.6446013e+03 1.0285335e+03 - 9.1850650e+02 2.6156194e+03 1.1153254e+03 - 8.5980863e+02 2.5848226e+03 1.2038353e+03 - 8.0062902e+02 2.5528858e+03 1.2928550e+03 - 7.4074349e+02 2.5205374e+03 1.3810408e+03 - 6.7992050e+02 2.4885240e+03 1.4669714e+03 - 6.1794192e+02 2.4575727e+03 1.5492152e+03 - 5.5462460e+02 2.4283562e+03 1.6263960e+03 - 4.8984001e+02 2.4014652e+03 1.6972505e+03 - 4.2352927e+02 2.3773917e+03 1.7606707e+03 - 3.5571212e+02 2.3565237e+03 1.8157268e+03 - 2.8648909e+02 2.3391502e+03 1.8616735e+03 - 2.1603728e+02 2.3254741e+03 1.8979407e+03 - 1.4460077e+02 2.3156284e+03 1.9241164e+03 - 7.2476923e+01 2.3096933e+03 1.9399257e+03 - 0.0000000e+00 2.3077107e+03 1.9452124e+03 - -7.2476923e+01 2.3096933e+03 1.9399257e+03 - -1.4460077e+02 2.3156284e+03 1.9241164e+03 - -2.1603728e+02 2.3254741e+03 1.8979407e+03 - -2.8648909e+02 2.3391502e+03 1.8616735e+03 - -3.5571212e+02 2.3565237e+03 1.8157268e+03 - -4.2352927e+02 2.3773917e+03 1.7606707e+03 - -4.8984001e+02 2.4014652e+03 1.6972505e+03 - -5.5462460e+02 2.4283562e+03 1.6263960e+03 - -6.1794192e+02 2.4575727e+03 1.5492152e+03 - -6.7992050e+02 2.4885240e+03 1.4669714e+03 - -7.4074349e+02 2.5205374e+03 1.3810408e+03 - -8.0062902e+02 2.5528858e+03 1.2928550e+03 - -8.5980863e+02 2.5848226e+03 1.2038353e+03 - -9.1850650e+02 2.6156194e+03 1.1153254e+03 - -9.7692195e+02 2.6446013e+03 1.0285335e+03 - -1.0352171e+03 2.6711758e+03 9.4448898e+02 - -1.0935100e+03 2.6948515e+03 8.6401814e+02 - -1.1518734e+03 2.7152469e+03 7.8773803e+02 - -1.2103374e+03 2.7320897e+03 7.1606669e+02 - -1.2688949e+03 2.7452085e+03 6.4924452e+02 - -1.3275087e+03 2.7545202e+03 5.8736244e+02 - -1.3861189e+03 2.7600142e+03 5.3039230e+02 - -1.4446491e+03 2.7617376e+03 4.7821649e+02 - -1.5030129e+03 2.7597803e+03 4.3065450e+02 - -1.5611177e+03 2.7542618e+03 3.8748545e+02 - -1.6188687e+03 2.7453216e+03 3.4846629e+02 - -1.6761713e+03 2.7331099e+03 3.1334588e+02 - -1.7329323e+03 2.7177816e+03 2.8187537e+02 - -1.7890615e+03 2.6994918e+03 2.5381566e+02 - -1.8444714e+03 2.6783922e+03 2.2894240e+02 - -1.8990778e+03 2.6546289e+03 2.0704919e+02 - -1.9527994e+03 2.6283414e+03 1.8794940e+02 - -2.0055572e+03 2.5996620e+03 1.7147708e+02 - -2.0572743e+03 2.5687152e+03 1.5748719e+02 - -2.1078753e+03 2.5356181e+03 1.4585542e+02 - -2.1572855e+03 2.5004809e+03 1.3647779e+02 - -2.2054304e+03 2.4634071e+03 1.2927016e+02 - -2.2522350e+03 2.4244943e+03 1.2416771e+02 - -2.2976231e+03 2.3838349e+03 1.2112452e+02 - -2.3415165e+03 2.3415165e+03 1.2011316e+02 - -2.3838349e+03 2.2976231e+03 1.2112452e+02 - -2.4244943e+03 2.2522350e+03 1.2416771e+02 - -2.4634071e+03 2.2054304e+03 1.2927016e+02 - -2.5004809e+03 2.1572855e+03 1.3647779e+02 - -2.5356181e+03 2.1078753e+03 1.4585542e+02 - -2.5687152e+03 2.0572743e+03 1.5748719e+02 - -2.5996620e+03 2.0055572e+03 1.7147708e+02 - -2.6283414e+03 1.9527994e+03 1.8794940e+02 - -2.6546289e+03 1.8990778e+03 2.0704919e+02 - -2.6783922e+03 1.8444714e+03 2.2894240e+02 - -2.6994918e+03 1.7890615e+03 2.5381566e+02 - -2.7177816e+03 1.7329323e+03 2.8187537e+02 - -2.7331099e+03 1.6761713e+03 3.1334588e+02 - -2.7453216e+03 1.6188687e+03 3.4846629e+02 - -2.7542618e+03 1.5611177e+03 3.8748545e+02 - -2.7597803e+03 1.5030129e+03 4.3065450e+02 - -2.7617376e+03 1.4446491e+03 4.7821649e+02 - -2.7600142e+03 1.3861189e+03 5.3039230e+02 - -2.7545202e+03 1.3275087e+03 5.8736244e+02 - -2.7452085e+03 1.2688949e+03 6.4924452e+02 - -2.7320897e+03 1.2103374e+03 7.1606669e+02 - -2.7152469e+03 1.1518734e+03 7.8773803e+02 - -2.6948515e+03 1.0935100e+03 8.6401814e+02 - -2.6711758e+03 1.0352171e+03 9.4448898e+02 - -2.6446013e+03 9.7692195e+02 1.0285335e+03 - -2.6156194e+03 9.1850650e+02 1.1153254e+03 - -2.5848226e+03 8.5980863e+02 1.2038353e+03 - -2.5528858e+03 8.0062902e+02 1.2928550e+03 - -2.5205374e+03 7.4074349e+02 1.3810408e+03 - -2.4885240e+03 6.7992050e+02 1.4669714e+03 - -2.4575727e+03 6.1794192e+02 1.5492152e+03 - -2.4283562e+03 5.5462460e+02 1.6263960e+03 - -2.4014652e+03 4.8984001e+02 1.6972505e+03 - -2.3773917e+03 4.2352927e+02 1.7606707e+03 - -2.3565237e+03 3.5571212e+02 1.8157268e+03 - -2.3391502e+03 2.8648909e+02 1.8616735e+03 - -2.3254741e+03 2.1603728e+02 1.8979407e+03 - -2.3156284e+03 1.4460077e+02 1.9241164e+03 - -2.3096933e+03 7.2476923e+01 1.9399257e+03 - -2.3077107e+03 2.4067136e-09 1.9452124e+03 - -2.3096933e+03 -7.2476923e+01 1.9399257e+03 - -2.3156284e+03 -1.4460077e+02 1.9241164e+03 - -2.3254741e+03 -2.1603728e+02 1.8979407e+03 - -2.3391502e+03 -2.8648909e+02 1.8616735e+03 - -2.3565237e+03 -3.5571212e+02 1.8157268e+03 - -2.3773917e+03 -4.2352927e+02 1.7606707e+03 - -2.4014652e+03 -4.8984001e+02 1.6972505e+03 - -2.4283562e+03 -5.5462460e+02 1.6263960e+03 - -2.4575727e+03 -6.1794192e+02 1.5492152e+03 - -2.4885240e+03 -6.7992050e+02 1.4669714e+03 - -2.5205374e+03 -7.4074349e+02 1.3810408e+03 - -2.5528858e+03 -8.0062902e+02 1.2928550e+03 - -2.5848226e+03 -8.5980863e+02 1.2038353e+03 - -2.6156194e+03 -9.1850650e+02 1.1153254e+03 - -2.6446013e+03 -9.7692195e+02 1.0285335e+03 - -2.6711758e+03 -1.0352171e+03 9.4448898e+02 - -2.6948515e+03 -1.0935100e+03 8.6401814e+02 - -2.7152469e+03 -1.1518734e+03 7.8773803e+02 - -2.7320897e+03 -1.2103374e+03 7.1606669e+02 - -2.7452085e+03 -1.2688949e+03 6.4924452e+02 - -2.7545202e+03 -1.3275087e+03 5.8736244e+02 - -2.7600142e+03 -1.3861189e+03 5.3039230e+02 - -2.7617376e+03 -1.4446491e+03 4.7821649e+02 - -2.7597803e+03 -1.5030129e+03 4.3065450e+02 - -2.7542618e+03 -1.5611177e+03 3.8748545e+02 - -2.7453216e+03 -1.6188687e+03 3.4846629e+02 - -2.7331099e+03 -1.6761713e+03 3.1334588e+02 - -2.7177816e+03 -1.7329323e+03 2.8187537e+02 - -2.6994918e+03 -1.7890615e+03 2.5381566e+02 - -2.6783922e+03 -1.8444714e+03 2.2894240e+02 - -2.6546289e+03 -1.8990778e+03 2.0704919e+02 - -2.6283414e+03 -1.9527994e+03 1.8794940e+02 - -2.5996620e+03 -2.0055572e+03 1.7147708e+02 - -2.5687152e+03 -2.0572743e+03 1.5748719e+02 - -2.5356181e+03 -2.1078753e+03 1.4585542e+02 - -2.5004809e+03 -2.1572855e+03 1.3647779e+02 - -2.4634071e+03 -2.2054304e+03 1.2927016e+02 - -2.4244943e+03 -2.2522350e+03 1.2416771e+02 - -2.3838349e+03 -2.2976231e+03 1.2112452e+02 - -2.3415165e+03 -2.3415165e+03 1.2011316e+02 - -2.2976231e+03 -2.3838349e+03 1.2112452e+02 - -2.2522350e+03 -2.4244943e+03 1.2416771e+02 - -2.2054304e+03 -2.4634071e+03 1.2927016e+02 - -2.1572855e+03 -2.5004809e+03 1.3647779e+02 - -2.1078753e+03 -2.5356181e+03 1.4585542e+02 - -2.0572743e+03 -2.5687152e+03 1.5748719e+02 - -2.0055572e+03 -2.5996620e+03 1.7147708e+02 - -1.9527994e+03 -2.6283414e+03 1.8794940e+02 - -1.8990778e+03 -2.6546289e+03 2.0704919e+02 - -1.8444714e+03 -2.6783922e+03 2.2894240e+02 - -1.7890615e+03 -2.6994918e+03 2.5381566e+02 - -1.7329323e+03 -2.7177816e+03 2.8187537e+02 - -1.6761713e+03 -2.7331099e+03 3.1334588e+02 - -1.6188687e+03 -2.7453216e+03 3.4846629e+02 - -1.5611177e+03 -2.7542618e+03 3.8748545e+02 - -1.5030129e+03 -2.7597803e+03 4.3065450e+02 - -1.4446491e+03 -2.7617376e+03 4.7821649e+02 - -1.3861189e+03 -2.7600142e+03 5.3039230e+02 - -1.3275087e+03 -2.7545202e+03 5.8736244e+02 - -1.2688949e+03 -2.7452085e+03 6.4924452e+02 - -1.2103374e+03 -2.7320897e+03 7.1606669e+02 - -1.1518734e+03 -2.7152469e+03 7.8773803e+02 - -1.0935100e+03 -2.6948515e+03 8.6401814e+02 - -1.0352171e+03 -2.6711758e+03 9.4448898e+02 - -9.7692195e+02 -2.6446013e+03 1.0285335e+03 - -9.1850650e+02 -2.6156194e+03 1.1153254e+03 - -8.5980863e+02 -2.5848226e+03 1.2038353e+03 - -8.0062902e+02 -2.5528858e+03 1.2928550e+03 - -7.4074349e+02 -2.5205374e+03 1.3810408e+03 - -6.7992050e+02 -2.4885240e+03 1.4669714e+03 - -6.1794192e+02 -2.4575727e+03 1.5492152e+03 - -5.5462460e+02 -2.4283562e+03 1.6263960e+03 - -4.8984001e+02 -2.4014652e+03 1.6972505e+03 - -4.2352927e+02 -2.3773917e+03 1.7606707e+03 - -3.5571211e+02 -2.3565237e+03 1.8157268e+03 - -2.8648909e+02 -2.3391502e+03 1.8616735e+03 - -2.1603728e+02 -2.3254741e+03 1.8979407e+03 - -1.4460077e+02 -2.3156284e+03 1.9241164e+03 - -7.2476923e+01 -2.3096933e+03 1.9399257e+03 - 4.8134273e-09 -2.3077107e+03 1.9452124e+03 - 7.2476923e+01 -2.3096933e+03 1.9399257e+03 - 1.4460077e+02 -2.3156284e+03 1.9241164e+03 - 2.1603728e+02 -2.3254741e+03 1.8979407e+03 - 2.8648909e+02 -2.3391502e+03 1.8616735e+03 - 3.5571211e+02 -2.3565237e+03 1.8157268e+03 - 4.2352927e+02 -2.3773917e+03 1.7606707e+03 - 4.8984001e+02 -2.4014652e+03 1.6972505e+03 - 5.5462460e+02 -2.4283562e+03 1.6263960e+03 - 6.1794192e+02 -2.4575727e+03 1.5492152e+03 - 6.7992050e+02 -2.4885240e+03 1.4669714e+03 - 7.4074349e+02 -2.5205374e+03 1.3810408e+03 - 8.0062902e+02 -2.5528858e+03 1.2928550e+03 - 8.5980863e+02 -2.5848226e+03 1.2038353e+03 - 9.1850650e+02 -2.6156194e+03 1.1153254e+03 - 9.7692195e+02 -2.6446013e+03 1.0285335e+03 - 1.0352171e+03 -2.6711758e+03 9.4448898e+02 - 1.0935100e+03 -2.6948515e+03 8.6401814e+02 - 1.1518734e+03 -2.7152469e+03 7.8773803e+02 - 1.2103374e+03 -2.7320897e+03 7.1606669e+02 - 1.2688949e+03 -2.7452085e+03 6.4924452e+02 - 1.3275087e+03 -2.7545202e+03 5.8736244e+02 - 1.3861189e+03 -2.7600142e+03 5.3039230e+02 - 1.4446491e+03 -2.7617376e+03 4.7821649e+02 - 1.5030129e+03 -2.7597803e+03 4.3065450e+02 - 1.5611177e+03 -2.7542618e+03 3.8748545e+02 - 1.6188687e+03 -2.7453216e+03 3.4846629e+02 - 1.6761713e+03 -2.7331099e+03 3.1334588e+02 - 1.7329323e+03 -2.7177816e+03 2.8187537e+02 - 1.7890615e+03 -2.6994918e+03 2.5381566e+02 - 1.8444714e+03 -2.6783922e+03 2.2894240e+02 - 1.8990778e+03 -2.6546289e+03 2.0704919e+02 - 1.9527994e+03 -2.6283414e+03 1.8794940e+02 - 2.0055572e+03 -2.5996620e+03 1.7147708e+02 - 2.0572743e+03 -2.5687152e+03 1.5748719e+02 - 2.1078753e+03 -2.5356181e+03 1.4585542e+02 - 2.1572855e+03 -2.5004809e+03 1.3647779e+02 - 2.2054304e+03 -2.4634071e+03 1.2927016e+02 - 2.2522350e+03 -2.4244943e+03 1.2416771e+02 - 2.2976231e+03 -2.3838349e+03 1.2112452e+02 - 2.3415165e+03 -2.3415165e+03 1.2011316e+02 - 2.3838349e+03 -2.2976231e+03 1.2112452e+02 - 2.4244943e+03 -2.2522350e+03 1.2416771e+02 - 2.4634071e+03 -2.2054304e+03 1.2927016e+02 - 2.5004809e+03 -2.1572855e+03 1.3647779e+02 - 2.5356181e+03 -2.1078753e+03 1.4585542e+02 - 2.5687152e+03 -2.0572743e+03 1.5748719e+02 - 2.5996620e+03 -2.0055572e+03 1.7147708e+02 - 2.6283414e+03 -1.9527994e+03 1.8794940e+02 - 2.6546289e+03 -1.8990778e+03 2.0704919e+02 - 2.6783922e+03 -1.8444714e+03 2.2894240e+02 - 2.6994918e+03 -1.7890615e+03 2.5381566e+02 - 2.7177816e+03 -1.7329323e+03 2.8187537e+02 - 2.7331099e+03 -1.6761713e+03 3.1334588e+02 - 2.7453216e+03 -1.6188687e+03 3.4846629e+02 - 2.7542618e+03 -1.5611177e+03 3.8748545e+02 - 2.7597803e+03 -1.5030129e+03 4.3065450e+02 - 2.7617376e+03 -1.4446491e+03 4.7821649e+02 - 2.7600142e+03 -1.3861189e+03 5.3039230e+02 - 2.7545202e+03 -1.3275087e+03 5.8736244e+02 - 2.7452085e+03 -1.2688949e+03 6.4924452e+02 - 2.7320897e+03 -1.2103374e+03 7.1606669e+02 - 2.7152469e+03 -1.1518734e+03 7.8773803e+02 - 2.6948515e+03 -1.0935100e+03 8.6401814e+02 - 2.6711758e+03 -1.0352171e+03 9.4448898e+02 - 2.6446013e+03 -9.7692195e+02 1.0285335e+03 - 2.6156194e+03 -9.1850650e+02 1.1153254e+03 - 2.5848226e+03 -8.5980863e+02 1.2038353e+03 - 2.5528858e+03 -8.0062902e+02 1.2928550e+03 - 2.5205374e+03 -7.4074349e+02 1.3810408e+03 - 2.4885240e+03 -6.7992050e+02 1.4669714e+03 - 2.4575727e+03 -6.1794192e+02 1.5492152e+03 - 2.4283562e+03 -5.5462460e+02 1.6263960e+03 - 2.4014652e+03 -4.8984001e+02 1.6972505e+03 - 2.3773917e+03 -4.2352927e+02 1.7606707e+03 - 2.3565237e+03 -3.5571211e+02 1.8157268e+03 - 2.3391502e+03 -2.8648909e+02 1.8616735e+03 - 2.3254741e+03 -2.1603728e+02 1.8979407e+03 - 2.3156284e+03 -1.4460077e+02 1.9241164e+03 - 2.3096933e+03 -7.2476923e+01 1.9399257e+03 - 2.3077107e+03 0.0000000e+00 1.9452124e+03 - 2.3409402e+03 2.4067136e-09 1.8783781e+03 - 2.3421957e+03 8.5010490e+01 1.8740700e+03 - 2.3459755e+03 1.6953478e+02 1.8611516e+03 - 2.3523167e+03 2.5309923e+02 1.8396449e+03 - 2.3612729e+03 3.3525573e+02 1.8095987e+03 - 2.3729021e+03 4.1559531e+02 1.7711082e+03 - 2.3872499e+03 4.9376246e+02 1.7243392e+03 - 2.4043284e+03 5.6946961e+02 1.6695586e+03 - 2.4240931e+03 6.4251111e+02 1.6071658e+03 - 2.4464191e+03 7.1277502e+02 1.5377224e+03 - 2.4710799e+03 7.8025096e+02 1.4619734e+03 - 2.4977334e+03 8.4503194e+02 1.3808558e+03 - 2.5259177e+03 9.0730855e+02 1.2954869e+03 - 2.5550605e+03 9.6735471e+02 1.2071318e+03 - 2.5845022e+03 1.0255057e+03 1.1171499e+03 - 2.6135308e+03 1.0821307e+03 1.0269251e+03 - 2.6414239e+03 1.1376036e+03 9.3779118e+02 - 2.6674918e+03 1.1922757e+03 8.5096131e+02 - 2.6911159e+03 1.2464534e+03 7.6747179e+02 - 2.7117761e+03 1.3003840e+03 6.8814702e+02 - 2.7290670e+03 1.3542494e+03 6.1358687e+02 - 2.7427010e+03 1.4081662e+03 5.4417442e+02 - 2.7525023e+03 1.4621919e+03 4.8009898e+02 - 2.7583935e+03 1.5163341e+03 4.2138821e+02 - 2.7603784e+03 1.5705602e+03 3.6794369e+02 - 2.7585242e+03 1.6248083e+03 3.1957571e+02 - 2.7529446e+03 1.6789954e+03 2.7603412e+02 - 2.7437846e+03 1.7330255e+03 2.3703416e+02 - 2.7312090e+03 1.7867948e+03 2.0227676e+02 - 2.7153919e+03 1.8401964e+03 1.7146375e+02 - 2.6965106e+03 1.8931229e+03 1.4430860e+02 - 2.6747399e+03 1.9454682e+03 1.2054366e+02 - 2.6502492e+03 1.9971284e+03 9.9924660e+01 - 2.6232002e+03 2.0480025e+03 8.2233244e+01 - 2.5937463e+03 2.0979920e+03 6.7278064e+01 - 2.5620319e+03 2.1470007e+03 5.4895006e+01 - 2.5281926e+03 2.1949337e+03 4.4946861e+01 - 2.4923558e+03 2.2416973e+03 3.7322701e+01 - 2.4546415e+03 2.2871977e+03 3.1937183e+01 - 2.4151632e+03 2.3313402e+03 2.8729883e+01 - 2.3740285e+03 2.3740285e+03 2.7664774e+01 - 2.3313402e+03 2.4151632e+03 2.8729883e+01 - 2.2871977e+03 2.4546415e+03 3.1937183e+01 - 2.2416973e+03 2.4923558e+03 3.7322701e+01 - 2.1949337e+03 2.5281926e+03 4.4946861e+01 - 2.1470007e+03 2.5620319e+03 5.4895006e+01 - 2.0979920e+03 2.5937463e+03 6.7278064e+01 - 2.0480025e+03 2.6232002e+03 8.2233244e+01 - 1.9971284e+03 2.6502492e+03 9.9924660e+01 - 1.9454682e+03 2.6747399e+03 1.2054366e+02 - 1.8931229e+03 2.6965106e+03 1.4430860e+02 - 1.8401964e+03 2.7153919e+03 1.7146375e+02 - 1.7867948e+03 2.7312090e+03 2.0227676e+02 - 1.7330255e+03 2.7437846e+03 2.3703416e+02 - 1.6789954e+03 2.7529446e+03 2.7603412e+02 - 1.6248083e+03 2.7585242e+03 3.1957571e+02 - 1.5705602e+03 2.7603784e+03 3.6794369e+02 - 1.5163341e+03 2.7583935e+03 4.2138821e+02 - 1.4621919e+03 2.7525023e+03 4.8009898e+02 - 1.4081662e+03 2.7427010e+03 5.4417442e+02 - 1.3542494e+03 2.7290670e+03 6.1358687e+02 - 1.3003840e+03 2.7117761e+03 6.8814702e+02 - 1.2464534e+03 2.6911159e+03 7.6747179e+02 - 1.1922757e+03 2.6674918e+03 8.5096131e+02 - 1.1376036e+03 2.6414239e+03 9.3779118e+02 - 1.0821307e+03 2.6135308e+03 1.0269251e+03 - 1.0255057e+03 2.5845022e+03 1.1171499e+03 - 9.6735471e+02 2.5550605e+03 1.2071318e+03 - 9.0730855e+02 2.5259177e+03 1.2954869e+03 - 8.4503194e+02 2.4977334e+03 1.3808558e+03 - 7.8025096e+02 2.4710799e+03 1.4619734e+03 - 7.1277502e+02 2.4464191e+03 1.5377224e+03 - 6.4251111e+02 2.4240931e+03 1.6071658e+03 - 5.6946961e+02 2.4043284e+03 1.6695586e+03 - 4.9376246e+02 2.3872499e+03 1.7243392e+03 - 4.1559531e+02 2.3729021e+03 1.7711082e+03 - 3.3525573e+02 2.3612729e+03 1.8095987e+03 - 2.5309923e+02 2.3523167e+03 1.8396449e+03 - 1.6953478e+02 2.3459755e+03 1.8611516e+03 - 8.5010490e+01 2.3421957e+03 1.8740700e+03 - 2.4067136e-09 2.3409402e+03 1.8783781e+03 - -8.5010490e+01 2.3421957e+03 1.8740700e+03 - -1.6953478e+02 2.3459755e+03 1.8611516e+03 - -2.5309923e+02 2.3523167e+03 1.8396449e+03 - -3.3525573e+02 2.3612729e+03 1.8095987e+03 - -4.1559531e+02 2.3729021e+03 1.7711082e+03 - -4.9376246e+02 2.3872499e+03 1.7243392e+03 - -5.6946961e+02 2.4043284e+03 1.6695586e+03 - -6.4251111e+02 2.4240931e+03 1.6071658e+03 - -7.1277502e+02 2.4464191e+03 1.5377224e+03 - -7.8025096e+02 2.4710799e+03 1.4619734e+03 - -8.4503194e+02 2.4977334e+03 1.3808558e+03 - -9.0730855e+02 2.5259177e+03 1.2954869e+03 - -9.6735471e+02 2.5550605e+03 1.2071318e+03 - -1.0255057e+03 2.5845022e+03 1.1171499e+03 - -1.0821307e+03 2.6135308e+03 1.0269251e+03 - -1.1376036e+03 2.6414239e+03 9.3779118e+02 - -1.1922757e+03 2.6674918e+03 8.5096131e+02 - -1.2464534e+03 2.6911159e+03 7.6747179e+02 - -1.3003840e+03 2.7117761e+03 6.8814702e+02 - -1.3542494e+03 2.7290670e+03 6.1358687e+02 - -1.4081662e+03 2.7427010e+03 5.4417442e+02 - -1.4621919e+03 2.7525023e+03 4.8009898e+02 - -1.5163341e+03 2.7583935e+03 4.2138821e+02 - -1.5705602e+03 2.7603784e+03 3.6794369e+02 - -1.6248083e+03 2.7585242e+03 3.1957571e+02 - -1.6789954e+03 2.7529446e+03 2.7603412e+02 - -1.7330255e+03 2.7437846e+03 2.3703416e+02 - -1.7867948e+03 2.7312090e+03 2.0227676e+02 - -1.8401964e+03 2.7153919e+03 1.7146375e+02 - -1.8931229e+03 2.6965106e+03 1.4430860e+02 - -1.9454682e+03 2.6747399e+03 1.2054366e+02 - -1.9971284e+03 2.6502492e+03 9.9924660e+01 - -2.0480025e+03 2.6232002e+03 8.2233244e+01 - -2.0979920e+03 2.5937463e+03 6.7278064e+01 - -2.1470007e+03 2.5620319e+03 5.4895006e+01 - -2.1949337e+03 2.5281926e+03 4.4946861e+01 - -2.2416973e+03 2.4923558e+03 3.7322701e+01 - -2.2871977e+03 2.4546415e+03 3.1937183e+01 - -2.3313402e+03 2.4151632e+03 2.8729883e+01 - -2.3740285e+03 2.3740285e+03 2.7664774e+01 - -2.4151632e+03 2.3313402e+03 2.8729883e+01 - -2.4546415e+03 2.2871977e+03 3.1937183e+01 - -2.4923558e+03 2.2416973e+03 3.7322701e+01 - -2.5281926e+03 2.1949337e+03 4.4946861e+01 - -2.5620319e+03 2.1470007e+03 5.4895006e+01 - -2.5937463e+03 2.0979920e+03 6.7278064e+01 - -2.6232002e+03 2.0480025e+03 8.2233244e+01 - -2.6502492e+03 1.9971284e+03 9.9924660e+01 - -2.6747399e+03 1.9454682e+03 1.2054366e+02 - -2.6965106e+03 1.8931229e+03 1.4430860e+02 - -2.7153919e+03 1.8401964e+03 1.7146375e+02 - -2.7312090e+03 1.7867948e+03 2.0227676e+02 - -2.7437846e+03 1.7330255e+03 2.3703416e+02 - -2.7529446e+03 1.6789954e+03 2.7603412e+02 - -2.7585242e+03 1.6248083e+03 3.1957571e+02 - -2.7603784e+03 1.5705602e+03 3.6794369e+02 - -2.7583935e+03 1.5163341e+03 4.2138821e+02 - -2.7525023e+03 1.4621919e+03 4.8009898e+02 - -2.7427010e+03 1.4081662e+03 5.4417442e+02 - -2.7290670e+03 1.3542494e+03 6.1358687e+02 - -2.7117761e+03 1.3003840e+03 6.8814702e+02 - -2.6911159e+03 1.2464534e+03 7.6747179e+02 - -2.6674918e+03 1.1922757e+03 8.5096131e+02 - -2.6414239e+03 1.1376036e+03 9.3779118e+02 - -2.6135308e+03 1.0821307e+03 1.0269251e+03 - -2.5845022e+03 1.0255057e+03 1.1171499e+03 - -2.5550605e+03 9.6735471e+02 1.2071318e+03 - -2.5259177e+03 9.0730855e+02 1.2954869e+03 - -2.4977334e+03 8.4503194e+02 1.3808558e+03 - -2.4710799e+03 7.8025096e+02 1.4619734e+03 - -2.4464191e+03 7.1277502e+02 1.5377224e+03 - -2.4240931e+03 6.4251111e+02 1.6071658e+03 - -2.4043284e+03 5.6946961e+02 1.6695586e+03 - -2.3872499e+03 4.9376246e+02 1.7243392e+03 - -2.3729021e+03 4.1559531e+02 1.7711082e+03 - -2.3612729e+03 3.3525573e+02 1.8095987e+03 - -2.3523167e+03 2.5309923e+02 1.8396449e+03 - -2.3459755e+03 1.6953478e+02 1.8611516e+03 - -2.3421957e+03 8.5010490e+01 1.8740700e+03 - -2.3409402e+03 -2.4067136e-09 1.8783781e+03 - -2.3421957e+03 -8.5010490e+01 1.8740700e+03 - -2.3459755e+03 -1.6953478e+02 1.8611516e+03 - -2.3523167e+03 -2.5309923e+02 1.8396449e+03 - -2.3612729e+03 -3.3525573e+02 1.8095987e+03 - -2.3729021e+03 -4.1559531e+02 1.7711082e+03 - -2.3872499e+03 -4.9376246e+02 1.7243392e+03 - -2.4043284e+03 -5.6946961e+02 1.6695586e+03 - -2.4240931e+03 -6.4251111e+02 1.6071658e+03 - -2.4464191e+03 -7.1277502e+02 1.5377224e+03 - -2.4710799e+03 -7.8025096e+02 1.4619734e+03 - -2.4977334e+03 -8.4503194e+02 1.3808558e+03 - -2.5259177e+03 -9.0730855e+02 1.2954869e+03 - -2.5550605e+03 -9.6735471e+02 1.2071318e+03 - -2.5845022e+03 -1.0255057e+03 1.1171499e+03 - -2.6135308e+03 -1.0821307e+03 1.0269251e+03 - -2.6414239e+03 -1.1376036e+03 9.3779118e+02 - -2.6674918e+03 -1.1922757e+03 8.5096131e+02 - -2.6911159e+03 -1.2464534e+03 7.6747179e+02 - -2.7117761e+03 -1.3003840e+03 6.8814702e+02 - -2.7290670e+03 -1.3542494e+03 6.1358687e+02 - -2.7427010e+03 -1.4081662e+03 5.4417442e+02 - -2.7525023e+03 -1.4621919e+03 4.8009898e+02 - -2.7583935e+03 -1.5163341e+03 4.2138821e+02 - -2.7603784e+03 -1.5705602e+03 3.6794369e+02 - -2.7585242e+03 -1.6248083e+03 3.1957571e+02 - -2.7529446e+03 -1.6789954e+03 2.7603412e+02 - -2.7437846e+03 -1.7330255e+03 2.3703416e+02 - -2.7312090e+03 -1.7867948e+03 2.0227676e+02 - -2.7153919e+03 -1.8401964e+03 1.7146375e+02 - -2.6965106e+03 -1.8931229e+03 1.4430860e+02 - -2.6747399e+03 -1.9454682e+03 1.2054366e+02 - -2.6502492e+03 -1.9971284e+03 9.9924660e+01 - -2.6232002e+03 -2.0480025e+03 8.2233244e+01 - -2.5937463e+03 -2.0979920e+03 6.7278064e+01 - -2.5620319e+03 -2.1470007e+03 5.4895006e+01 - -2.5281926e+03 -2.1949337e+03 4.4946861e+01 - -2.4923558e+03 -2.2416973e+03 3.7322701e+01 - -2.4546415e+03 -2.2871977e+03 3.1937183e+01 - -2.4151632e+03 -2.3313402e+03 2.8729883e+01 - -2.3740285e+03 -2.3740285e+03 2.7664774e+01 - -2.3313402e+03 -2.4151632e+03 2.8729883e+01 - -2.2871977e+03 -2.4546415e+03 3.1937183e+01 - -2.2416973e+03 -2.4923558e+03 3.7322701e+01 - -2.1949337e+03 -2.5281926e+03 4.4946861e+01 - -2.1470007e+03 -2.5620319e+03 5.4895006e+01 - -2.0979920e+03 -2.5937463e+03 6.7278064e+01 - -2.0480025e+03 -2.6232002e+03 8.2233244e+01 - -1.9971284e+03 -2.6502492e+03 9.9924660e+01 - -1.9454682e+03 -2.6747399e+03 1.2054366e+02 - -1.8931229e+03 -2.6965106e+03 1.4430860e+02 - -1.8401964e+03 -2.7153919e+03 1.7146375e+02 - -1.7867948e+03 -2.7312090e+03 2.0227676e+02 - -1.7330255e+03 -2.7437846e+03 2.3703416e+02 - -1.6789954e+03 -2.7529446e+03 2.7603412e+02 - -1.6248083e+03 -2.7585242e+03 3.1957571e+02 - -1.5705602e+03 -2.7603784e+03 3.6794369e+02 - -1.5163341e+03 -2.7583935e+03 4.2138821e+02 - -1.4621919e+03 -2.7525023e+03 4.8009898e+02 - -1.4081662e+03 -2.7427010e+03 5.4417442e+02 - -1.3542494e+03 -2.7290670e+03 6.1358687e+02 - -1.3003840e+03 -2.7117761e+03 6.8814702e+02 - -1.2464534e+03 -2.6911159e+03 7.6747179e+02 - -1.1922757e+03 -2.6674918e+03 8.5096131e+02 - -1.1376036e+03 -2.6414239e+03 9.3779118e+02 - -1.0821307e+03 -2.6135308e+03 1.0269251e+03 - -1.0255057e+03 -2.5845022e+03 1.1171499e+03 - -9.6735471e+02 -2.5550605e+03 1.2071318e+03 - -9.0730855e+02 -2.5259177e+03 1.2954869e+03 - -8.4503194e+02 -2.4977334e+03 1.3808558e+03 - -7.8025096e+02 -2.4710799e+03 1.4619734e+03 - -7.1277502e+02 -2.4464191e+03 1.5377224e+03 - -6.4251111e+02 -2.4240931e+03 1.6071658e+03 - -5.6946961e+02 -2.4043284e+03 1.6695586e+03 - -4.9376246e+02 -2.3872499e+03 1.7243392e+03 - -4.1559531e+02 -2.3729021e+03 1.7711082e+03 - -3.3525573e+02 -2.3612729e+03 1.8095987e+03 - -2.5309923e+02 -2.3523167e+03 1.8396449e+03 - -1.6953478e+02 -2.3459755e+03 1.8611516e+03 - -8.5010490e+01 -2.3421957e+03 1.8740700e+03 - -4.8134273e-09 -2.3409402e+03 1.8783781e+03 - 8.5010490e+01 -2.3421957e+03 1.8740700e+03 - 1.6953478e+02 -2.3459755e+03 1.8611516e+03 - 2.5309923e+02 -2.3523167e+03 1.8396449e+03 - 3.3525573e+02 -2.3612729e+03 1.8095987e+03 - 4.1559531e+02 -2.3729021e+03 1.7711082e+03 - 4.9376246e+02 -2.3872499e+03 1.7243392e+03 - 5.6946961e+02 -2.4043284e+03 1.6695586e+03 - 6.4251111e+02 -2.4240931e+03 1.6071658e+03 - 7.1277502e+02 -2.4464191e+03 1.5377224e+03 - 7.8025096e+02 -2.4710799e+03 1.4619734e+03 - 8.4503194e+02 -2.4977334e+03 1.3808558e+03 - 9.0730855e+02 -2.5259177e+03 1.2954869e+03 - 9.6735471e+02 -2.5550605e+03 1.2071318e+03 - 1.0255057e+03 -2.5845022e+03 1.1171499e+03 - 1.0821307e+03 -2.6135308e+03 1.0269251e+03 - 1.1376036e+03 -2.6414239e+03 9.3779118e+02 - 1.1922757e+03 -2.6674918e+03 8.5096131e+02 - 1.2464534e+03 -2.6911159e+03 7.6747179e+02 - 1.3003840e+03 -2.7117761e+03 6.8814702e+02 - 1.3542494e+03 -2.7290670e+03 6.1358687e+02 - 1.4081662e+03 -2.7427010e+03 5.4417442e+02 - 1.4621919e+03 -2.7525023e+03 4.8009898e+02 - 1.5163341e+03 -2.7583935e+03 4.2138821e+02 - 1.5705602e+03 -2.7603784e+03 3.6794369e+02 - 1.6248083e+03 -2.7585242e+03 3.1957571e+02 - 1.6789954e+03 -2.7529446e+03 2.7603412e+02 - 1.7330255e+03 -2.7437846e+03 2.3703416e+02 - 1.7867948e+03 -2.7312090e+03 2.0227676e+02 - 1.8401964e+03 -2.7153919e+03 1.7146375e+02 - 1.8931229e+03 -2.6965106e+03 1.4430860e+02 - 1.9454682e+03 -2.6747399e+03 1.2054366e+02 - 1.9971284e+03 -2.6502492e+03 9.9924660e+01 - 2.0480025e+03 -2.6232002e+03 8.2233244e+01 - 2.0979920e+03 -2.5937463e+03 6.7278064e+01 - 2.1470007e+03 -2.5620319e+03 5.4895006e+01 - 2.1949337e+03 -2.5281926e+03 4.4946861e+01 - 2.2416973e+03 -2.4923558e+03 3.7322701e+01 - 2.2871977e+03 -2.4546415e+03 3.1937183e+01 - 2.3313402e+03 -2.4151632e+03 2.8729883e+01 - 2.3740285e+03 -2.3740285e+03 2.7664774e+01 - 2.4151632e+03 -2.3313402e+03 2.8729883e+01 - 2.4546415e+03 -2.2871977e+03 3.1937183e+01 - 2.4923558e+03 -2.2416973e+03 3.7322701e+01 - 2.5281926e+03 -2.1949337e+03 4.4946861e+01 - 2.5620319e+03 -2.1470007e+03 5.4895006e+01 - 2.5937463e+03 -2.0979920e+03 6.7278064e+01 - 2.6232002e+03 -2.0480025e+03 8.2233244e+01 - 2.6502492e+03 -1.9971284e+03 9.9924660e+01 - 2.6747399e+03 -1.9454682e+03 1.2054366e+02 - 2.6965106e+03 -1.8931229e+03 1.4430860e+02 - 2.7153919e+03 -1.8401964e+03 1.7146375e+02 - 2.7312090e+03 -1.7867948e+03 2.0227676e+02 - 2.7437846e+03 -1.7330255e+03 2.3703416e+02 - 2.7529446e+03 -1.6789954e+03 2.7603412e+02 - 2.7585242e+03 -1.6248083e+03 3.1957571e+02 - 2.7603784e+03 -1.5705602e+03 3.6794369e+02 - 2.7583935e+03 -1.5163341e+03 4.2138821e+02 - 2.7525023e+03 -1.4621919e+03 4.8009898e+02 - 2.7427010e+03 -1.4081662e+03 5.4417442e+02 - 2.7290670e+03 -1.3542494e+03 6.1358687e+02 - 2.7117761e+03 -1.3003840e+03 6.8814702e+02 - 2.6911159e+03 -1.2464534e+03 7.6747179e+02 - 2.6674918e+03 -1.1922757e+03 8.5096131e+02 - 2.6414239e+03 -1.1376036e+03 9.3779118e+02 - 2.6135308e+03 -1.0821307e+03 1.0269251e+03 - 2.5845022e+03 -1.0255057e+03 1.1171499e+03 - 2.5550605e+03 -9.6735471e+02 1.2071318e+03 - 2.5259177e+03 -9.0730855e+02 1.2954869e+03 - 2.4977334e+03 -8.4503194e+02 1.3808558e+03 - 2.4710799e+03 -7.8025096e+02 1.4619734e+03 - 2.4464191e+03 -7.1277502e+02 1.5377224e+03 - 2.4240931e+03 -6.4251111e+02 1.6071658e+03 - 2.4043284e+03 -5.6946961e+02 1.6695586e+03 - 2.3872499e+03 -4.9376246e+02 1.7243392e+03 - 2.3729021e+03 -4.1559531e+02 1.7711082e+03 - 2.3612729e+03 -3.3525573e+02 1.8095987e+03 - 2.3523167e+03 -2.5309923e+02 1.8396449e+03 - 2.3459755e+03 -1.6953478e+02 1.8611516e+03 - 2.3421957e+03 -8.5010490e+01 1.8740700e+03 - 2.3409402e+03 -4.8134273e-09 1.8783781e+03 - 2.3732834e+03 -2.4067136e-09 1.8099903e+03 - 2.3740130e+03 9.5286558e+01 1.8063795e+03 - 2.3762234e+03 1.9004462e+02 1.7955372e+03 - 2.3799772e+03 2.8375250e+02 1.7774356e+03 - 2.3853748e+03 3.7590266e+02 1.7520361e+03 - 2.3925472e+03 4.6601015e+02 1.7193002e+03 - 2.4016454e+03 5.5362253e+02 1.6792070e+03 - 2.4128266e+03 6.3833171e+02 1.6317753e+03 - 2.4262353e+03 7.1978765e+02 1.5770922e+03 - 2.4419811e+03 7.9771376e+02 1.5153460e+03 - 2.4601124e+03 8.7192293e+02 1.4468618e+03 - 2.4805893e+03 9.4233261e+02 1.3721353e+03 - 2.5032585e+03 1.0089766e+03 1.2918604e+03 - 2.5278342e+03 1.0720106e+03 1.2069410e+03 - 2.5538903e+03 1.1317087e+03 1.1184834e+03 - 2.5808675e+03 1.1884492e+03 1.0277623e+03 - 2.6080972e+03 1.2426896e+03 9.3616235e+02 - 2.6348409e+03 1.2949327e+03 8.4509956e+02 - 2.6603394e+03 1.3456891e+03 7.5593457e+02 - 2.6838647e+03 1.3954401e+03 6.6989058e+02 - 2.7047659e+03 1.4446080e+03 5.8798887e+02 - 2.7225032e+03 1.4935354e+03 5.1101002e+02 - 2.7366668e+03 1.5424760e+03 4.3948295e+02 - 2.7469801e+03 1.5915956e+03 3.7369851e+02 - 2.7532911e+03 1.6409800e+03 3.1374071e+02 - 2.7555555e+03 1.6906479e+03 2.5952752e+02 - 2.7538158e+03 1.7405650e+03 2.1085423e+02 - 2.7481795e+03 1.7906580e+03 1.6743388e+02 - 2.7388000e+03 1.8408268e+03 1.2893198e+02 - 2.7258590e+03 1.8909545e+03 9.4994180e+01 - 2.7095542e+03 1.9409148e+03 6.5266890e+01 - 2.6900888e+03 1.9905775e+03 3.9411901e+01 - 2.6676646e+03 2.0398118e+03 1.7115933e+01 - 2.6424777e+03 2.0884886e+03 -1.9035761e+00 - 2.6147155e+03 2.1364817e+03 -1.7895434e+01 - 2.5845553e+03 2.1836676e+03 -3.1073504e+01 - 2.5521642e+03 2.2299253e+03 -4.1616683e+01 - 2.5176993e+03 2.2751358e+03 -4.9669523e+01 - 2.4813084e+03 2.3191810e+03 -5.5343134e+01 - 2.4431311e+03 2.3619424e+03 -5.8716100e+01 - 2.4033001e+03 2.4033001e+03 -5.9835239e+01 - 2.3619424e+03 2.4431311e+03 -5.8716100e+01 - 2.3191810e+03 2.4813084e+03 -5.5343134e+01 - 2.2751358e+03 2.5176993e+03 -4.9669523e+01 - 2.2299253e+03 2.5521642e+03 -4.1616683e+01 - 2.1836676e+03 2.5845553e+03 -3.1073504e+01 - 2.1364817e+03 2.6147155e+03 -1.7895434e+01 - 2.0884886e+03 2.6424777e+03 -1.9035761e+00 - 2.0398118e+03 2.6676646e+03 1.7115933e+01 - 1.9905775e+03 2.6900888e+03 3.9411901e+01 - 1.9409148e+03 2.7095542e+03 6.5266890e+01 - 1.8909545e+03 2.7258590e+03 9.4994180e+01 - 1.8408268e+03 2.7388000e+03 1.2893198e+02 - 1.7906580e+03 2.7481795e+03 1.6743388e+02 - 1.7405650e+03 2.7538158e+03 2.1085423e+02 - 1.6906479e+03 2.7555555e+03 2.5952752e+02 - 1.6409800e+03 2.7532911e+03 3.1374071e+02 - 1.5915956e+03 2.7469801e+03 3.7369851e+02 - 1.5424760e+03 2.7366668e+03 4.3948295e+02 - 1.4935354e+03 2.7225032e+03 5.1101002e+02 - 1.4446080e+03 2.7047659e+03 5.8798887e+02 - 1.3954401e+03 2.6838647e+03 6.6989058e+02 - 1.3456891e+03 2.6603394e+03 7.5593457e+02 - 1.2949327e+03 2.6348409e+03 8.4509956e+02 - 1.2426896e+03 2.6080972e+03 9.3616235e+02 - 1.1884492e+03 2.5808675e+03 1.0277623e+03 - 1.1317087e+03 2.5538903e+03 1.1184834e+03 - 1.0720106e+03 2.5278342e+03 1.2069410e+03 - 1.0089766e+03 2.5032585e+03 1.2918604e+03 - 9.4233261e+02 2.4805893e+03 1.3721353e+03 - 8.7192293e+02 2.4601124e+03 1.4468618e+03 - 7.9771376e+02 2.4419811e+03 1.5153460e+03 - 7.1978765e+02 2.4262353e+03 1.5770922e+03 - 6.3833171e+02 2.4128266e+03 1.6317753e+03 - 5.5362253e+02 2.4016454e+03 1.6792070e+03 - 4.6601015e+02 2.3925472e+03 1.7193002e+03 - 3.7590266e+02 2.3853748e+03 1.7520361e+03 - 2.8375250e+02 2.3799772e+03 1.7774356e+03 - 1.9004462e+02 2.3762234e+03 1.7955372e+03 - 9.5286558e+01 2.3740130e+03 1.8063795e+03 - 2.4067136e-09 2.3732834e+03 1.8099903e+03 - -9.5286558e+01 2.3740130e+03 1.8063795e+03 - -1.9004462e+02 2.3762234e+03 1.7955372e+03 - -2.8375250e+02 2.3799772e+03 1.7774356e+03 - -3.7590266e+02 2.3853748e+03 1.7520361e+03 - -4.6601015e+02 2.3925472e+03 1.7193002e+03 - -5.5362253e+02 2.4016454e+03 1.6792070e+03 - -6.3833171e+02 2.4128266e+03 1.6317753e+03 - -7.1978765e+02 2.4262353e+03 1.5770922e+03 - -7.9771376e+02 2.4419811e+03 1.5153460e+03 - -8.7192293e+02 2.4601124e+03 1.4468618e+03 - -9.4233261e+02 2.4805893e+03 1.3721353e+03 - -1.0089766e+03 2.5032585e+03 1.2918604e+03 - -1.0720106e+03 2.5278342e+03 1.2069410e+03 - -1.1317087e+03 2.5538903e+03 1.1184834e+03 - -1.1884492e+03 2.5808675e+03 1.0277623e+03 - -1.2426896e+03 2.6080972e+03 9.3616235e+02 - -1.2949327e+03 2.6348409e+03 8.4509956e+02 - -1.3456891e+03 2.6603394e+03 7.5593457e+02 - -1.3954401e+03 2.6838647e+03 6.6989058e+02 - -1.4446080e+03 2.7047659e+03 5.8798887e+02 - -1.4935354e+03 2.7225032e+03 5.1101002e+02 - -1.5424760e+03 2.7366668e+03 4.3948295e+02 - -1.5915956e+03 2.7469801e+03 3.7369851e+02 - -1.6409800e+03 2.7532911e+03 3.1374071e+02 - -1.6906479e+03 2.7555555e+03 2.5952752e+02 - -1.7405650e+03 2.7538158e+03 2.1085423e+02 - -1.7906580e+03 2.7481795e+03 1.6743388e+02 - -1.8408268e+03 2.7388000e+03 1.2893198e+02 - -1.8909545e+03 2.7258590e+03 9.4994180e+01 - -1.9409148e+03 2.7095542e+03 6.5266890e+01 - -1.9905775e+03 2.6900888e+03 3.9411901e+01 - -2.0398118e+03 2.6676646e+03 1.7115933e+01 - -2.0884886e+03 2.6424777e+03 -1.9035761e+00 - -2.1364817e+03 2.6147155e+03 -1.7895434e+01 - -2.1836676e+03 2.5845553e+03 -3.1073504e+01 - -2.2299253e+03 2.5521642e+03 -4.1616683e+01 - -2.2751358e+03 2.5176993e+03 -4.9669523e+01 - -2.3191810e+03 2.4813084e+03 -5.5343134e+01 - -2.3619424e+03 2.4431311e+03 -5.8716100e+01 - -2.4033001e+03 2.4033001e+03 -5.9835239e+01 - -2.4431311e+03 2.3619424e+03 -5.8716100e+01 - -2.4813084e+03 2.3191810e+03 -5.5343134e+01 - -2.5176993e+03 2.2751358e+03 -4.9669523e+01 - -2.5521642e+03 2.2299253e+03 -4.1616683e+01 - -2.5845553e+03 2.1836676e+03 -3.1073504e+01 - -2.6147155e+03 2.1364817e+03 -1.7895434e+01 - -2.6424777e+03 2.0884886e+03 -1.9035761e+00 - -2.6676646e+03 2.0398118e+03 1.7115933e+01 - -2.6900888e+03 1.9905775e+03 3.9411901e+01 - -2.7095542e+03 1.9409148e+03 6.5266890e+01 - -2.7258590e+03 1.8909545e+03 9.4994180e+01 - -2.7388000e+03 1.8408268e+03 1.2893198e+02 - -2.7481795e+03 1.7906580e+03 1.6743388e+02 - -2.7538158e+03 1.7405650e+03 2.1085423e+02 - -2.7555555e+03 1.6906479e+03 2.5952752e+02 - -2.7532911e+03 1.6409800e+03 3.1374071e+02 - -2.7469801e+03 1.5915956e+03 3.7369851e+02 - -2.7366668e+03 1.5424760e+03 4.3948295e+02 - -2.7225032e+03 1.4935354e+03 5.1101002e+02 - -2.7047659e+03 1.4446080e+03 5.8798887e+02 - -2.6838647e+03 1.3954401e+03 6.6989058e+02 - -2.6603394e+03 1.3456891e+03 7.5593457e+02 - -2.6348409e+03 1.2949327e+03 8.4509956e+02 - -2.6080972e+03 1.2426896e+03 9.3616235e+02 - -2.5808675e+03 1.1884492e+03 1.0277623e+03 - -2.5538903e+03 1.1317087e+03 1.1184834e+03 - -2.5278342e+03 1.0720106e+03 1.2069410e+03 - -2.5032585e+03 1.0089766e+03 1.2918604e+03 - -2.4805893e+03 9.4233261e+02 1.3721353e+03 - -2.4601124e+03 8.7192293e+02 1.4468618e+03 - -2.4419811e+03 7.9771376e+02 1.5153460e+03 - -2.4262353e+03 7.1978765e+02 1.5770922e+03 - -2.4128266e+03 6.3833171e+02 1.6317753e+03 - -2.4016454e+03 5.5362253e+02 1.6792070e+03 - -2.3925472e+03 4.6601015e+02 1.7193002e+03 - -2.3853748e+03 3.7590266e+02 1.7520361e+03 - -2.3799772e+03 2.8375250e+02 1.7774356e+03 - -2.3762234e+03 1.9004462e+02 1.7955372e+03 - -2.3740130e+03 9.5286558e+01 1.8063795e+03 - -2.3732834e+03 4.8134273e-09 1.8099903e+03 - -2.3740130e+03 -9.5286558e+01 1.8063795e+03 - -2.3762234e+03 -1.9004462e+02 1.7955372e+03 - -2.3799772e+03 -2.8375250e+02 1.7774356e+03 - -2.3853748e+03 -3.7590266e+02 1.7520361e+03 - -2.3925472e+03 -4.6601015e+02 1.7193002e+03 - -2.4016454e+03 -5.5362253e+02 1.6792070e+03 - -2.4128266e+03 -6.3833171e+02 1.6317753e+03 - -2.4262353e+03 -7.1978765e+02 1.5770922e+03 - -2.4419811e+03 -7.9771376e+02 1.5153460e+03 - -2.4601124e+03 -8.7192293e+02 1.4468618e+03 - -2.4805893e+03 -9.4233261e+02 1.3721353e+03 - -2.5032585e+03 -1.0089766e+03 1.2918604e+03 - -2.5278342e+03 -1.0720106e+03 1.2069410e+03 - -2.5538903e+03 -1.1317087e+03 1.1184834e+03 - -2.5808675e+03 -1.1884492e+03 1.0277623e+03 - -2.6080972e+03 -1.2426896e+03 9.3616235e+02 - -2.6348409e+03 -1.2949327e+03 8.4509956e+02 - -2.6603394e+03 -1.3456891e+03 7.5593457e+02 - -2.6838647e+03 -1.3954401e+03 6.6989058e+02 - -2.7047659e+03 -1.4446080e+03 5.8798887e+02 - -2.7225032e+03 -1.4935354e+03 5.1101002e+02 - -2.7366668e+03 -1.5424760e+03 4.3948295e+02 - -2.7469801e+03 -1.5915956e+03 3.7369851e+02 - -2.7532911e+03 -1.6409800e+03 3.1374071e+02 - -2.7555555e+03 -1.6906479e+03 2.5952752e+02 - -2.7538158e+03 -1.7405650e+03 2.1085423e+02 - -2.7481795e+03 -1.7906580e+03 1.6743388e+02 - -2.7388000e+03 -1.8408268e+03 1.2893198e+02 - -2.7258590e+03 -1.8909545e+03 9.4994180e+01 - -2.7095542e+03 -1.9409148e+03 6.5266890e+01 - -2.6900888e+03 -1.9905775e+03 3.9411901e+01 - -2.6676646e+03 -2.0398118e+03 1.7115933e+01 - -2.6424777e+03 -2.0884886e+03 -1.9035761e+00 - -2.6147155e+03 -2.1364817e+03 -1.7895434e+01 - -2.5845553e+03 -2.1836676e+03 -3.1073504e+01 - -2.5521642e+03 -2.2299253e+03 -4.1616683e+01 - -2.5176993e+03 -2.2751358e+03 -4.9669523e+01 - -2.4813084e+03 -2.3191810e+03 -5.5343134e+01 - -2.4431311e+03 -2.3619424e+03 -5.8716100e+01 - -2.4033001e+03 -2.4033001e+03 -5.9835239e+01 - -2.3619424e+03 -2.4431311e+03 -5.8716100e+01 - -2.3191810e+03 -2.4813084e+03 -5.5343134e+01 - -2.2751358e+03 -2.5176993e+03 -4.9669523e+01 - -2.2299253e+03 -2.5521642e+03 -4.1616683e+01 - -2.1836676e+03 -2.5845553e+03 -3.1073504e+01 - -2.1364817e+03 -2.6147155e+03 -1.7895434e+01 - -2.0884886e+03 -2.6424777e+03 -1.9035761e+00 - -2.0398118e+03 -2.6676646e+03 1.7115933e+01 - -1.9905775e+03 -2.6900888e+03 3.9411901e+01 - -1.9409148e+03 -2.7095542e+03 6.5266890e+01 - -1.8909545e+03 -2.7258590e+03 9.4994180e+01 - -1.8408268e+03 -2.7388000e+03 1.2893198e+02 - -1.7906580e+03 -2.7481795e+03 1.6743388e+02 - -1.7405650e+03 -2.7538158e+03 2.1085423e+02 - -1.6906479e+03 -2.7555555e+03 2.5952752e+02 - -1.6409800e+03 -2.7532911e+03 3.1374071e+02 - -1.5915956e+03 -2.7469801e+03 3.7369851e+02 - -1.5424760e+03 -2.7366668e+03 4.3948295e+02 - -1.4935354e+03 -2.7225032e+03 5.1101002e+02 - -1.4446080e+03 -2.7047659e+03 5.8798887e+02 - -1.3954401e+03 -2.6838647e+03 6.6989058e+02 - -1.3456891e+03 -2.6603394e+03 7.5593457e+02 - -1.2949327e+03 -2.6348409e+03 8.4509956e+02 - -1.2426896e+03 -2.6080972e+03 9.3616235e+02 - -1.1884492e+03 -2.5808675e+03 1.0277623e+03 - -1.1317087e+03 -2.5538903e+03 1.1184834e+03 - -1.0720106e+03 -2.5278342e+03 1.2069410e+03 - -1.0089766e+03 -2.5032585e+03 1.2918604e+03 - -9.4233261e+02 -2.4805893e+03 1.3721353e+03 - -8.7192293e+02 -2.4601124e+03 1.4468618e+03 - -7.9771376e+02 -2.4419811e+03 1.5153460e+03 - -7.1978765e+02 -2.4262353e+03 1.5770922e+03 - -6.3833171e+02 -2.4128266e+03 1.6317753e+03 - -5.5362253e+02 -2.4016454e+03 1.6792070e+03 - -4.6601015e+02 -2.3925472e+03 1.7193002e+03 - -3.7590266e+02 -2.3853748e+03 1.7520361e+03 - -2.8375250e+02 -2.3799772e+03 1.7774356e+03 - -1.9004462e+02 -2.3762234e+03 1.7955372e+03 - -9.5286558e+01 -2.3740130e+03 1.8063795e+03 - 0.0000000e+00 -2.3732834e+03 1.8099903e+03 - 9.5286558e+01 -2.3740130e+03 1.8063795e+03 - 1.9004462e+02 -2.3762234e+03 1.7955372e+03 - 2.8375250e+02 -2.3799772e+03 1.7774356e+03 - 3.7590266e+02 -2.3853748e+03 1.7520361e+03 - 4.6601015e+02 -2.3925472e+03 1.7193002e+03 - 5.5362253e+02 -2.4016454e+03 1.6792070e+03 - 6.3833171e+02 -2.4128266e+03 1.6317753e+03 - 7.1978765e+02 -2.4262353e+03 1.5770922e+03 - 7.9771376e+02 -2.4419811e+03 1.5153460e+03 - 8.7192293e+02 -2.4601124e+03 1.4468618e+03 - 9.4233261e+02 -2.4805893e+03 1.3721353e+03 - 1.0089766e+03 -2.5032585e+03 1.2918604e+03 - 1.0720106e+03 -2.5278342e+03 1.2069410e+03 - 1.1317087e+03 -2.5538903e+03 1.1184834e+03 - 1.1884492e+03 -2.5808675e+03 1.0277623e+03 - 1.2426896e+03 -2.6080972e+03 9.3616235e+02 - 1.2949327e+03 -2.6348409e+03 8.4509956e+02 - 1.3456891e+03 -2.6603394e+03 7.5593457e+02 - 1.3954401e+03 -2.6838647e+03 6.6989058e+02 - 1.4446080e+03 -2.7047659e+03 5.8798887e+02 - 1.4935354e+03 -2.7225032e+03 5.1101002e+02 - 1.5424760e+03 -2.7366668e+03 4.3948295e+02 - 1.5915956e+03 -2.7469801e+03 3.7369851e+02 - 1.6409800e+03 -2.7532911e+03 3.1374071e+02 - 1.6906479e+03 -2.7555555e+03 2.5952752e+02 - 1.7405650e+03 -2.7538158e+03 2.1085423e+02 - 1.7906580e+03 -2.7481795e+03 1.6743388e+02 - 1.8408268e+03 -2.7388000e+03 1.2893198e+02 - 1.8909545e+03 -2.7258590e+03 9.4994180e+01 - 1.9409148e+03 -2.7095542e+03 6.5266890e+01 - 1.9905775e+03 -2.6900888e+03 3.9411900e+01 - 2.0398118e+03 -2.6676646e+03 1.7115933e+01 - 2.0884886e+03 -2.6424777e+03 -1.9035761e+00 - 2.1364817e+03 -2.6147155e+03 -1.7895434e+01 - 2.1836676e+03 -2.5845553e+03 -3.1073504e+01 - 2.2299253e+03 -2.5521642e+03 -4.1616683e+01 - 2.2751358e+03 -2.5176993e+03 -4.9669523e+01 - 2.3191810e+03 -2.4813084e+03 -5.5343134e+01 - 2.3619424e+03 -2.4431311e+03 -5.8716100e+01 - 2.4033001e+03 -2.4033001e+03 -5.9835239e+01 - 2.4431311e+03 -2.3619424e+03 -5.8716100e+01 - 2.4813084e+03 -2.3191810e+03 -5.5343134e+01 - 2.5176993e+03 -2.2751358e+03 -4.9669523e+01 - 2.5521642e+03 -2.2299253e+03 -4.1616683e+01 - 2.5845553e+03 -2.1836676e+03 -3.1073504e+01 - 2.6147155e+03 -2.1364817e+03 -1.7895434e+01 - 2.6424777e+03 -2.0884886e+03 -1.9035761e+00 - 2.6676646e+03 -2.0398118e+03 1.7115933e+01 - 2.6900888e+03 -1.9905775e+03 3.9411901e+01 - 2.7095542e+03 -1.9409148e+03 6.5266890e+01 - 2.7258590e+03 -1.8909545e+03 9.4994180e+01 - 2.7388000e+03 -1.8408268e+03 1.2893198e+02 - 2.7481795e+03 -1.7906580e+03 1.6743388e+02 - 2.7538158e+03 -1.7405650e+03 2.1085423e+02 - 2.7555555e+03 -1.6906479e+03 2.5952752e+02 - 2.7532911e+03 -1.6409800e+03 3.1374071e+02 - 2.7469801e+03 -1.5915956e+03 3.7369851e+02 - 2.7366668e+03 -1.5424760e+03 4.3948295e+02 - 2.7225032e+03 -1.4935354e+03 5.1101002e+02 - 2.7047659e+03 -1.4446080e+03 5.8798887e+02 - 2.6838647e+03 -1.3954401e+03 6.6989058e+02 - 2.6603394e+03 -1.3456891e+03 7.5593457e+02 - 2.6348409e+03 -1.2949327e+03 8.4509956e+02 - 2.6080972e+03 -1.2426896e+03 9.3616235e+02 - 2.5808675e+03 -1.1884492e+03 1.0277623e+03 - 2.5538903e+03 -1.1317087e+03 1.1184834e+03 - 2.5278342e+03 -1.0720106e+03 1.2069410e+03 - 2.5032585e+03 -1.0089766e+03 1.2918604e+03 - 2.4805893e+03 -9.4233261e+02 1.3721353e+03 - 2.4601124e+03 -8.7192293e+02 1.4468618e+03 - 2.4419811e+03 -7.9771376e+02 1.5153460e+03 - 2.4262353e+03 -7.1978765e+02 1.5770922e+03 - 2.4128266e+03 -6.3833171e+02 1.6317753e+03 - 2.4016454e+03 -5.5362253e+02 1.6792070e+03 - 2.3925472e+03 -4.6601015e+02 1.7193002e+03 - 2.3853748e+03 -3.7590266e+02 1.7520361e+03 - 2.3799772e+03 -2.8375250e+02 1.7774356e+03 - 2.3762234e+03 -1.9004462e+02 1.7955372e+03 - 2.3740130e+03 -9.5286558e+01 1.8063795e+03 - 2.3732834e+03 -2.4067136e-09 1.8099903e+03 - 2.4046877e+03 2.4067136e-09 1.7400677e+03 - 2.4050206e+03 1.0392875e+02 1.7369752e+03 - 2.4060421e+03 2.0732239e+02 1.7276832e+03 - 2.4078202e+03 3.0964928e+02 1.7121496e+03 - 2.4104662e+03 4.1038499e+02 1.6903076e+03 - 2.4141319e+03 5.0901693e+02 1.6620716e+03 - 2.4190041e+03 6.0505006e+02 1.6273457e+03 - 2.4252975e+03 6.9801437e+02 1.5860369e+03 - 2.4332434e+03 7.8747445e+02 1.5380735e+03 - 2.4430747e+03 8.7304178e+02 1.4834291e+03 - 2.4550063e+03 9.5438974e+02 1.4221532e+03 - 2.4692100e+03 1.0312713e+03 1.3544071e+03 - 2.4857857e+03 1.1035382e+03 1.2805040e+03 - 2.5047303e+03 1.1711602e+03 1.2009473e+03 - 2.5259081e+03 1.2342406e+03 1.1164605e+03 - 2.5490284e+03 1.2930245e+03 1.0280017e+03 - 2.5736364e+03 1.3478967e+03 9.3675189e+02 - 2.5991225e+03 1.3993641e+03 8.4407316e+02 - 2.6247521e+03 1.4480246e+03 7.5143620e+02 - 2.6497146e+03 1.4945240e+03 6.6032546e+02 - 2.6731847e+03 1.5395069e+03 5.7213629e+02 - 2.6943839e+03 1.5835703e+03 4.8808178e+02 - 2.7126346e+03 1.6272258e+03 4.0912474e+02 - 2.7273967e+03 1.6708763e+03 3.3594351e+02 - 2.7382845e+03 1.7148076e+03 2.6893222e+02 - 2.7450650e+03 1.7591929e+03 2.0822888e+02 - 2.7476423e+03 1.8041065e+03 1.5376122e+02 - 2.7460341e+03 1.8495426e+03 1.0529970e+02 - 2.7403448e+03 1.8954344e+03 6.2509311e+01 - 2.7307403e+03 1.9416725e+03 2.4994910e+01 - 2.7174257e+03 1.9881196e+03 -7.6625328e+00 - 2.7006275e+03 2.0346228e+03 -3.5878935e+01 - 2.6805808e+03 2.0810211e+03 -6.0048446e+01 - 2.6575196e+03 2.1271520e+03 -8.0531533e+01 - 2.6316714e+03 2.1728542e+03 -9.7648139e+01 - 2.6032534e+03 2.2179694e+03 -1.1167440e+02 - 2.5724710e+03 2.2623429e+03 -1.2284166e+02 - 2.5395178e+03 2.3058231e+03 -1.3133689e+02 - 2.5045764e+03 2.3482604e+03 -1.3730368e+02 - 2.4678190e+03 2.3895059e+03 -1.4084350e+02 - 2.4294097e+03 2.4294097e+03 -1.4201675e+02 - 2.3895059e+03 2.4678190e+03 -1.4084350e+02 - 2.3482604e+03 2.5045764e+03 -1.3730368e+02 - 2.3058231e+03 2.5395178e+03 -1.3133689e+02 - 2.2623429e+03 2.5724710e+03 -1.2284166e+02 - 2.2179694e+03 2.6032534e+03 -1.1167440e+02 - 2.1728542e+03 2.6316714e+03 -9.7648139e+01 - 2.1271520e+03 2.6575196e+03 -8.0531533e+01 - 2.0810211e+03 2.6805808e+03 -6.0048446e+01 - 2.0346228e+03 2.7006275e+03 -3.5878935e+01 - 1.9881196e+03 2.7174257e+03 -7.6625328e+00 - 1.9416725e+03 2.7307403e+03 2.4994910e+01 - 1.8954344e+03 2.7403448e+03 6.2509311e+01 - 1.8495426e+03 2.7460341e+03 1.0529970e+02 - 1.8041065e+03 2.7476423e+03 1.5376122e+02 - 1.7591929e+03 2.7450650e+03 2.0822888e+02 - 1.7148076e+03 2.7382845e+03 2.6893222e+02 - 1.6708763e+03 2.7273967e+03 3.3594351e+02 - 1.6272258e+03 2.7126346e+03 4.0912474e+02 - 1.5835703e+03 2.6943839e+03 4.8808178e+02 - 1.5395069e+03 2.6731847e+03 5.7213629e+02 - 1.4945240e+03 2.6497146e+03 6.6032546e+02 - 1.4480246e+03 2.6247521e+03 7.5143620e+02 - 1.3993641e+03 2.5991225e+03 8.4407316e+02 - 1.3478967e+03 2.5736364e+03 9.3675189e+02 - 1.2930245e+03 2.5490284e+03 1.0280017e+03 - 1.2342406e+03 2.5259081e+03 1.1164605e+03 - 1.1711602e+03 2.5047303e+03 1.2009473e+03 - 1.1035382e+03 2.4857857e+03 1.2805040e+03 - 1.0312713e+03 2.4692100e+03 1.3544071e+03 - 9.5438974e+02 2.4550063e+03 1.4221532e+03 - 8.7304178e+02 2.4430747e+03 1.4834291e+03 - 7.8747445e+02 2.4332434e+03 1.5380735e+03 - 6.9801437e+02 2.4252975e+03 1.5860369e+03 - 6.0505006e+02 2.4190041e+03 1.6273457e+03 - 5.0901693e+02 2.4141319e+03 1.6620716e+03 - 4.1038499e+02 2.4104662e+03 1.6903076e+03 - 3.0964928e+02 2.4078202e+03 1.7121496e+03 - 2.0732239e+02 2.4060421e+03 1.7276832e+03 - 1.0392875e+02 2.4050206e+03 1.7369752e+03 - -7.2201409e-09 2.4046877e+03 1.7400677e+03 - -1.0392875e+02 2.4050206e+03 1.7369752e+03 - -2.0732239e+02 2.4060421e+03 1.7276832e+03 - -3.0964928e+02 2.4078202e+03 1.7121496e+03 - -4.1038499e+02 2.4104662e+03 1.6903076e+03 - -5.0901693e+02 2.4141319e+03 1.6620716e+03 - -6.0505006e+02 2.4190041e+03 1.6273457e+03 - -6.9801437e+02 2.4252975e+03 1.5860369e+03 - -7.8747445e+02 2.4332434e+03 1.5380735e+03 - -8.7304178e+02 2.4430747e+03 1.4834291e+03 - -9.5438974e+02 2.4550063e+03 1.4221532e+03 - -1.0312713e+03 2.4692100e+03 1.3544071e+03 - -1.1035382e+03 2.4857857e+03 1.2805040e+03 - -1.1711602e+03 2.5047303e+03 1.2009473e+03 - -1.2342406e+03 2.5259081e+03 1.1164605e+03 - -1.2930245e+03 2.5490284e+03 1.0280017e+03 - -1.3478967e+03 2.5736364e+03 9.3675189e+02 - -1.3993641e+03 2.5991225e+03 8.4407316e+02 - -1.4480246e+03 2.6247521e+03 7.5143620e+02 - -1.4945240e+03 2.6497146e+03 6.6032546e+02 - -1.5395069e+03 2.6731847e+03 5.7213629e+02 - -1.5835703e+03 2.6943839e+03 4.8808178e+02 - -1.6272258e+03 2.7126346e+03 4.0912474e+02 - -1.6708763e+03 2.7273967e+03 3.3594351e+02 - -1.7148076e+03 2.7382845e+03 2.6893222e+02 - -1.7591929e+03 2.7450650e+03 2.0822888e+02 - -1.8041065e+03 2.7476423e+03 1.5376122e+02 - -1.8495426e+03 2.7460341e+03 1.0529970e+02 - -1.8954344e+03 2.7403448e+03 6.2509311e+01 - -1.9416725e+03 2.7307403e+03 2.4994910e+01 - -1.9881196e+03 2.7174257e+03 -7.6625328e+00 - -2.0346228e+03 2.7006275e+03 -3.5878935e+01 - -2.0810211e+03 2.6805808e+03 -6.0048446e+01 - -2.1271520e+03 2.6575196e+03 -8.0531533e+01 - -2.1728542e+03 2.6316714e+03 -9.7648139e+01 - -2.2179694e+03 2.6032534e+03 -1.1167440e+02 - -2.2623429e+03 2.5724710e+03 -1.2284166e+02 - -2.3058231e+03 2.5395178e+03 -1.3133689e+02 - -2.3482604e+03 2.5045764e+03 -1.3730368e+02 - -2.3895059e+03 2.4678190e+03 -1.4084350e+02 - -2.4294097e+03 2.4294097e+03 -1.4201675e+02 - -2.4678190e+03 2.3895059e+03 -1.4084350e+02 - -2.5045764e+03 2.3482604e+03 -1.3730368e+02 - -2.5395178e+03 2.3058231e+03 -1.3133689e+02 - -2.5724710e+03 2.2623429e+03 -1.2284166e+02 - -2.6032534e+03 2.2179694e+03 -1.1167440e+02 - -2.6316714e+03 2.1728542e+03 -9.7648139e+01 - -2.6575196e+03 2.1271520e+03 -8.0531533e+01 - -2.6805808e+03 2.0810211e+03 -6.0048446e+01 - -2.7006275e+03 2.0346228e+03 -3.5878935e+01 - -2.7174257e+03 1.9881196e+03 -7.6625328e+00 - -2.7307403e+03 1.9416725e+03 2.4994910e+01 - -2.7403448e+03 1.8954344e+03 6.2509311e+01 - -2.7460341e+03 1.8495426e+03 1.0529970e+02 - -2.7476423e+03 1.8041065e+03 1.5376122e+02 - -2.7450650e+03 1.7591929e+03 2.0822888e+02 - -2.7382845e+03 1.7148076e+03 2.6893222e+02 - -2.7273967e+03 1.6708763e+03 3.3594351e+02 - -2.7126346e+03 1.6272258e+03 4.0912474e+02 - -2.6943839e+03 1.5835703e+03 4.8808178e+02 - -2.6731847e+03 1.5395069e+03 5.7213629e+02 - -2.6497146e+03 1.4945240e+03 6.6032546e+02 - -2.6247521e+03 1.4480246e+03 7.5143620e+02 - -2.5991225e+03 1.3993641e+03 8.4407316e+02 - -2.5736364e+03 1.3478967e+03 9.3675189e+02 - -2.5490284e+03 1.2930245e+03 1.0280017e+03 - -2.5259081e+03 1.2342406e+03 1.1164605e+03 - -2.5047303e+03 1.1711602e+03 1.2009473e+03 - -2.4857857e+03 1.1035382e+03 1.2805040e+03 - -2.4692100e+03 1.0312713e+03 1.3544071e+03 - -2.4550063e+03 9.5438974e+02 1.4221532e+03 - -2.4430747e+03 8.7304178e+02 1.4834291e+03 - -2.4332434e+03 7.8747445e+02 1.5380735e+03 - -2.4252975e+03 6.9801437e+02 1.5860369e+03 - -2.4190041e+03 6.0505006e+02 1.6273457e+03 - -2.4141319e+03 5.0901693e+02 1.6620716e+03 - -2.4104662e+03 4.1038499e+02 1.6903076e+03 - -2.4078202e+03 3.0964928e+02 1.7121496e+03 - -2.4060421e+03 2.0732239e+02 1.7276832e+03 - -2.4050206e+03 1.0392875e+02 1.7369752e+03 - -2.4046877e+03 0.0000000e+00 1.7400677e+03 - -2.4050206e+03 -1.0392875e+02 1.7369752e+03 - -2.4060421e+03 -2.0732239e+02 1.7276832e+03 - -2.4078202e+03 -3.0964928e+02 1.7121496e+03 - -2.4104662e+03 -4.1038499e+02 1.6903076e+03 - -2.4141319e+03 -5.0901693e+02 1.6620716e+03 - -2.4190041e+03 -6.0505006e+02 1.6273457e+03 - -2.4252975e+03 -6.9801437e+02 1.5860369e+03 - -2.4332434e+03 -7.8747445e+02 1.5380735e+03 - -2.4430747e+03 -8.7304178e+02 1.4834291e+03 - -2.4550063e+03 -9.5438974e+02 1.4221532e+03 - -2.4692100e+03 -1.0312713e+03 1.3544071e+03 - -2.4857857e+03 -1.1035382e+03 1.2805040e+03 - -2.5047303e+03 -1.1711602e+03 1.2009473e+03 - -2.5259081e+03 -1.2342406e+03 1.1164605e+03 - -2.5490284e+03 -1.2930245e+03 1.0280017e+03 - -2.5736364e+03 -1.3478967e+03 9.3675189e+02 - -2.5991225e+03 -1.3993641e+03 8.4407316e+02 - -2.6247521e+03 -1.4480246e+03 7.5143620e+02 - -2.6497146e+03 -1.4945240e+03 6.6032546e+02 - -2.6731847e+03 -1.5395069e+03 5.7213629e+02 - -2.6943839e+03 -1.5835703e+03 4.8808178e+02 - -2.7126346e+03 -1.6272258e+03 4.0912474e+02 - -2.7273967e+03 -1.6708763e+03 3.3594351e+02 - -2.7382845e+03 -1.7148076e+03 2.6893222e+02 - -2.7450650e+03 -1.7591929e+03 2.0822888e+02 - -2.7476423e+03 -1.8041065e+03 1.5376122e+02 - -2.7460341e+03 -1.8495426e+03 1.0529970e+02 - -2.7403448e+03 -1.8954344e+03 6.2509311e+01 - -2.7307403e+03 -1.9416725e+03 2.4994910e+01 - -2.7174257e+03 -1.9881196e+03 -7.6625328e+00 - -2.7006275e+03 -2.0346228e+03 -3.5878935e+01 - -2.6805808e+03 -2.0810211e+03 -6.0048446e+01 - -2.6575196e+03 -2.1271520e+03 -8.0531533e+01 - -2.6316714e+03 -2.1728542e+03 -9.7648139e+01 - -2.6032534e+03 -2.2179694e+03 -1.1167440e+02 - -2.5724710e+03 -2.2623429e+03 -1.2284166e+02 - -2.5395178e+03 -2.3058231e+03 -1.3133689e+02 - -2.5045764e+03 -2.3482604e+03 -1.3730368e+02 - -2.4678190e+03 -2.3895059e+03 -1.4084350e+02 - -2.4294097e+03 -2.4294097e+03 -1.4201675e+02 - -2.3895059e+03 -2.4678190e+03 -1.4084350e+02 - -2.3482604e+03 -2.5045764e+03 -1.3730368e+02 - -2.3058231e+03 -2.5395178e+03 -1.3133689e+02 - -2.2623429e+03 -2.5724710e+03 -1.2284166e+02 - -2.2179694e+03 -2.6032534e+03 -1.1167440e+02 - -2.1728542e+03 -2.6316714e+03 -9.7648139e+01 - -2.1271520e+03 -2.6575196e+03 -8.0531533e+01 - -2.0810211e+03 -2.6805808e+03 -6.0048446e+01 - -2.0346228e+03 -2.7006275e+03 -3.5878935e+01 - -1.9881196e+03 -2.7174257e+03 -7.6625328e+00 - -1.9416725e+03 -2.7307403e+03 2.4994910e+01 - -1.8954344e+03 -2.7403448e+03 6.2509311e+01 - -1.8495426e+03 -2.7460341e+03 1.0529970e+02 - -1.8041065e+03 -2.7476423e+03 1.5376122e+02 - -1.7591929e+03 -2.7450650e+03 2.0822888e+02 - -1.7148076e+03 -2.7382845e+03 2.6893222e+02 - -1.6708763e+03 -2.7273967e+03 3.3594351e+02 - -1.6272258e+03 -2.7126346e+03 4.0912474e+02 - -1.5835703e+03 -2.6943839e+03 4.8808178e+02 - -1.5395069e+03 -2.6731847e+03 5.7213629e+02 - -1.4945240e+03 -2.6497146e+03 6.6032546e+02 - -1.4480246e+03 -2.6247521e+03 7.5143620e+02 - -1.3993641e+03 -2.5991225e+03 8.4407316e+02 - -1.3478967e+03 -2.5736364e+03 9.3675189e+02 - -1.2930245e+03 -2.5490284e+03 1.0280017e+03 - -1.2342406e+03 -2.5259081e+03 1.1164605e+03 - -1.1711602e+03 -2.5047303e+03 1.2009473e+03 - -1.1035382e+03 -2.4857857e+03 1.2805040e+03 - -1.0312713e+03 -2.4692100e+03 1.3544071e+03 - -9.5438974e+02 -2.4550063e+03 1.4221532e+03 - -8.7304178e+02 -2.4430747e+03 1.4834291e+03 - -7.8747445e+02 -2.4332434e+03 1.5380735e+03 - -6.9801437e+02 -2.4252975e+03 1.5860369e+03 - -6.0505006e+02 -2.4190041e+03 1.6273457e+03 - -5.0901693e+02 -2.4141319e+03 1.6620716e+03 - -4.1038499e+02 -2.4104662e+03 1.6903076e+03 - -3.0964928e+02 -2.4078202e+03 1.7121496e+03 - -2.0732239e+02 -2.4060421e+03 1.7276832e+03 - -1.0392875e+02 -2.4050206e+03 1.7369752e+03 - 2.4067136e-09 -2.4046877e+03 1.7400677e+03 - 1.0392875e+02 -2.4050206e+03 1.7369752e+03 - 2.0732239e+02 -2.4060421e+03 1.7276832e+03 - 3.0964928e+02 -2.4078202e+03 1.7121496e+03 - 4.1038499e+02 -2.4104662e+03 1.6903076e+03 - 5.0901693e+02 -2.4141319e+03 1.6620716e+03 - 6.0505006e+02 -2.4190041e+03 1.6273457e+03 - 6.9801437e+02 -2.4252975e+03 1.5860369e+03 - 7.8747445e+02 -2.4332434e+03 1.5380735e+03 - 8.7304178e+02 -2.4430747e+03 1.4834291e+03 - 9.5438974e+02 -2.4550063e+03 1.4221532e+03 - 1.0312713e+03 -2.4692100e+03 1.3544071e+03 - 1.1035382e+03 -2.4857857e+03 1.2805040e+03 - 1.1711602e+03 -2.5047303e+03 1.2009473e+03 - 1.2342406e+03 -2.5259081e+03 1.1164605e+03 - 1.2930245e+03 -2.5490284e+03 1.0280017e+03 - 1.3478967e+03 -2.5736364e+03 9.3675189e+02 - 1.3993641e+03 -2.5991225e+03 8.4407316e+02 - 1.4480246e+03 -2.6247521e+03 7.5143620e+02 - 1.4945240e+03 -2.6497146e+03 6.6032546e+02 - 1.5395069e+03 -2.6731847e+03 5.7213629e+02 - 1.5835703e+03 -2.6943839e+03 4.8808178e+02 - 1.6272258e+03 -2.7126346e+03 4.0912474e+02 - 1.6708763e+03 -2.7273967e+03 3.3594351e+02 - 1.7148076e+03 -2.7382845e+03 2.6893222e+02 - 1.7591929e+03 -2.7450650e+03 2.0822888e+02 - 1.8041065e+03 -2.7476423e+03 1.5376122e+02 - 1.8495426e+03 -2.7460341e+03 1.0529970e+02 - 1.8954344e+03 -2.7403448e+03 6.2509311e+01 - 1.9416725e+03 -2.7307403e+03 2.4994910e+01 - 1.9881196e+03 -2.7174257e+03 -7.6625328e+00 - 2.0346228e+03 -2.7006275e+03 -3.5878935e+01 - 2.0810211e+03 -2.6805808e+03 -6.0048446e+01 - 2.1271520e+03 -2.6575196e+03 -8.0531533e+01 - 2.1728542e+03 -2.6316714e+03 -9.7648139e+01 - 2.2179694e+03 -2.6032534e+03 -1.1167440e+02 - 2.2623429e+03 -2.5724710e+03 -1.2284166e+02 - 2.3058231e+03 -2.5395178e+03 -1.3133689e+02 - 2.3482604e+03 -2.5045764e+03 -1.3730368e+02 - 2.3895059e+03 -2.4678190e+03 -1.4084350e+02 - 2.4294097e+03 -2.4294097e+03 -1.4201675e+02 - 2.4678190e+03 -2.3895059e+03 -1.4084350e+02 - 2.5045764e+03 -2.3482604e+03 -1.3730368e+02 - 2.5395178e+03 -2.3058231e+03 -1.3133689e+02 - 2.5724710e+03 -2.2623429e+03 -1.2284166e+02 - 2.6032534e+03 -2.2179694e+03 -1.1167440e+02 - 2.6316714e+03 -2.1728542e+03 -9.7648139e+01 - 2.6575196e+03 -2.1271520e+03 -8.0531533e+01 - 2.6805808e+03 -2.0810211e+03 -6.0048446e+01 - 2.7006275e+03 -2.0346228e+03 -3.5878935e+01 - 2.7174257e+03 -1.9881196e+03 -7.6625328e+00 - 2.7307403e+03 -1.9416725e+03 2.4994910e+01 - 2.7403448e+03 -1.8954344e+03 6.2509311e+01 - 2.7460341e+03 -1.8495426e+03 1.0529970e+02 - 2.7476423e+03 -1.8041065e+03 1.5376122e+02 - 2.7450650e+03 -1.7591929e+03 2.0822888e+02 - 2.7382845e+03 -1.7148076e+03 2.6893222e+02 - 2.7273967e+03 -1.6708763e+03 3.3594351e+02 - 2.7126346e+03 -1.6272258e+03 4.0912474e+02 - 2.6943839e+03 -1.5835703e+03 4.8808178e+02 - 2.6731847e+03 -1.5395069e+03 5.7213629e+02 - 2.6497146e+03 -1.4945240e+03 6.6032546e+02 - 2.6247521e+03 -1.4480246e+03 7.5143620e+02 - 2.5991225e+03 -1.3993641e+03 8.4407316e+02 - 2.5736364e+03 -1.3478967e+03 9.3675189e+02 - 2.5490284e+03 -1.2930245e+03 1.0280017e+03 - 2.5259081e+03 -1.2342406e+03 1.1164605e+03 - 2.5047303e+03 -1.1711602e+03 1.2009473e+03 - 2.4857857e+03 -1.1035382e+03 1.2805040e+03 - 2.4692100e+03 -1.0312713e+03 1.3544071e+03 - 2.4550063e+03 -9.5438974e+02 1.4221532e+03 - 2.4430747e+03 -8.7304178e+02 1.4834291e+03 - 2.4332434e+03 -7.8747445e+02 1.5380735e+03 - 2.4252975e+03 -6.9801437e+02 1.5860369e+03 - 2.4190041e+03 -6.0505006e+02 1.6273457e+03 - 2.4141319e+03 -5.0901693e+02 1.6620716e+03 - 2.4104662e+03 -4.1038499e+02 1.6903076e+03 - 2.4078202e+03 -3.0964928e+02 1.7121496e+03 - 2.4060421e+03 -2.0732239e+02 1.7276832e+03 - 2.4050206e+03 -1.0392875e+02 1.7369752e+03 - 2.4046877e+03 0.0000000e+00 1.7400677e+03 - 2.4351001e+03 0.0000000e+00 1.6686333e+03 - 2.4351231e+03 1.1134136e+02 1.6659399e+03 - 2.4352142e+03 2.2215354e+02 1.6578453e+03 - 2.4354387e+03 3.3190924e+02 1.6443077e+03 - 2.4359055e+03 4.4008510e+02 1.6252577e+03 - 2.4367653e+03 5.4616409e+02 1.6006013e+03 - 2.4382091e+03 6.4963857e+02 1.5702229e+03 - 2.4404650e+03 7.5001428e+02 1.5339913e+03 - 2.4437930e+03 8.4681586e+02 1.4917691e+03 - 2.4484772e+03 9.3959439e+02 1.4434262e+03 - 2.4548141e+03 1.0279377e+03 1.3888601e+03 - 2.4630957e+03 1.1114839e+03 1.3280222e+03 - 2.4735874e+03 1.1899390e+03 1.2609531e+03 - 2.4864993e+03 1.2630982e+03 1.1878236e+03 - 2.5019525e+03 1.3308692e+03 1.1089806e+03 - 2.5199422e+03 1.3932965e+03 1.0249904e+03 - 2.5403038e+03 1.4505809e+03 9.3667231e+02 - 2.5626878e+03 1.5030899e+03 8.4510950e+02 - 2.5865522e+03 1.5513532e+03 7.5162755e+02 - 2.6111796e+03 1.5960384e+03 6.5773450e+02 - 2.6357199e+03 1.6379081e+03 5.6502452e+02 - 2.6592561e+03 1.6777618e+03 4.7505843e+02 - 2.6808812e+03 1.7163730e+03 3.8924221e+02 - 2.6997722e+03 1.7544317e+03 3.0872638e+02 - 2.7152484e+03 1.7925025e+03 2.3434386e+02 - 2.7268054e+03 1.8310026e+03 1.6659279e+02 - 2.7341229e+03 1.8701997e+03 1.0565975e+02 - 2.7370520e+03 1.9102262e+03 5.1471113e+01 - 2.7355886e+03 1.9511017e+03 3.7579280e+00 - 2.7298399e+03 1.9927593e+03 -3.7878300e+01 - 2.7199925e+03 2.0350713e+03 -7.3907431e+01 - 2.7062831e+03 2.0778702e+03 -1.0482422e+02 - 2.6889757e+03 2.1209659e+03 -1.3111428e+02 - 2.6683447e+03 2.1641574e+03 -1.5323121e+02 - 2.6446633e+03 2.2072410e+03 -1.7158262e+02 - 2.6181961e+03 2.2500148e+03 -1.8652267e+02 - 2.5891957e+03 2.2922810e+03 -1.9834896e+02 - 2.5579009e+03 2.3338461e+03 -2.0730221e+02 - 2.5245369e+03 2.3745204e+03 -2.1356724e+02 - 2.4893173e+03 2.4141160e+03 -2.1727454e+02 - 2.4524451e+03 2.4524451e+03 -2.1850172e+02 - 2.4141160e+03 2.4893173e+03 -2.1727454e+02 - 2.3745204e+03 2.5245369e+03 -2.1356724e+02 - 2.3338461e+03 2.5579009e+03 -2.0730221e+02 - 2.2922810e+03 2.5891957e+03 -1.9834896e+02 - 2.2500148e+03 2.6181961e+03 -1.8652267e+02 - 2.2072410e+03 2.6446633e+03 -1.7158262e+02 - 2.1641574e+03 2.6683447e+03 -1.5323121e+02 - 2.1209659e+03 2.6889757e+03 -1.3111428e+02 - 2.0778702e+03 2.7062831e+03 -1.0482422e+02 - 2.0350713e+03 2.7199925e+03 -7.3907431e+01 - 1.9927593e+03 2.7298399e+03 -3.7878300e+01 - 1.9511017e+03 2.7355886e+03 3.7579280e+00 - 1.9102262e+03 2.7370520e+03 5.1471113e+01 - 1.8701997e+03 2.7341229e+03 1.0565975e+02 - 1.8310026e+03 2.7268054e+03 1.6659279e+02 - 1.7925025e+03 2.7152484e+03 2.3434386e+02 - 1.7544317e+03 2.6997722e+03 3.0872638e+02 - 1.7163730e+03 2.6808812e+03 3.8924221e+02 - 1.6777618e+03 2.6592561e+03 4.7505843e+02 - 1.6379081e+03 2.6357199e+03 5.6502452e+02 - 1.5960384e+03 2.6111796e+03 6.5773450e+02 - 1.5513532e+03 2.5865522e+03 7.5162755e+02 - 1.5030899e+03 2.5626878e+03 8.4510950e+02 - 1.4505809e+03 2.5403038e+03 9.3667231e+02 - 1.3932965e+03 2.5199422e+03 1.0249904e+03 - 1.3308692e+03 2.5019525e+03 1.1089806e+03 - 1.2630982e+03 2.4864993e+03 1.1878236e+03 - 1.1899390e+03 2.4735874e+03 1.2609531e+03 - 1.1114839e+03 2.4630957e+03 1.3280222e+03 - 1.0279377e+03 2.4548141e+03 1.3888601e+03 - 9.3959439e+02 2.4484772e+03 1.4434262e+03 - 8.4681586e+02 2.4437930e+03 1.4917691e+03 - 7.5001428e+02 2.4404650e+03 1.5339913e+03 - 6.4963857e+02 2.4382091e+03 1.5702229e+03 - 5.4616409e+02 2.4367653e+03 1.6006013e+03 - 4.4008510e+02 2.4359055e+03 1.6252577e+03 - 3.3190924e+02 2.4354387e+03 1.6443077e+03 - 2.2215354e+02 2.4352142e+03 1.6578453e+03 - 1.1134136e+02 2.4351231e+03 1.6659399e+03 - 4.8134273e-09 2.4351001e+03 1.6686333e+03 - -1.1134136e+02 2.4351231e+03 1.6659399e+03 - -2.2215354e+02 2.4352142e+03 1.6578453e+03 - -3.3190924e+02 2.4354387e+03 1.6443077e+03 - -4.4008510e+02 2.4359055e+03 1.6252577e+03 - -5.4616409e+02 2.4367653e+03 1.6006013e+03 - -6.4963857e+02 2.4382091e+03 1.5702229e+03 - -7.5001428e+02 2.4404650e+03 1.5339913e+03 - -8.4681586e+02 2.4437930e+03 1.4917691e+03 - -9.3959439e+02 2.4484772e+03 1.4434262e+03 - -1.0279377e+03 2.4548141e+03 1.3888601e+03 - -1.1114839e+03 2.4630957e+03 1.3280222e+03 - -1.1899390e+03 2.4735874e+03 1.2609531e+03 - -1.2630982e+03 2.4864993e+03 1.1878236e+03 - -1.3308692e+03 2.5019525e+03 1.1089806e+03 - -1.3932965e+03 2.5199422e+03 1.0249904e+03 - -1.4505809e+03 2.5403038e+03 9.3667231e+02 - -1.5030899e+03 2.5626878e+03 8.4510950e+02 - -1.5513532e+03 2.5865522e+03 7.5162755e+02 - -1.5960384e+03 2.6111796e+03 6.5773450e+02 - -1.6379081e+03 2.6357199e+03 5.6502452e+02 - -1.6777618e+03 2.6592561e+03 4.7505843e+02 - -1.7163730e+03 2.6808812e+03 3.8924221e+02 - -1.7544317e+03 2.6997722e+03 3.0872638e+02 - -1.7925025e+03 2.7152484e+03 2.3434386e+02 - -1.8310026e+03 2.7268054e+03 1.6659279e+02 - -1.8701997e+03 2.7341229e+03 1.0565975e+02 - -1.9102262e+03 2.7370520e+03 5.1471113e+01 - -1.9511017e+03 2.7355886e+03 3.7579280e+00 - -1.9927593e+03 2.7298399e+03 -3.7878300e+01 - -2.0350713e+03 2.7199925e+03 -7.3907431e+01 - -2.0778702e+03 2.7062831e+03 -1.0482422e+02 - -2.1209659e+03 2.6889757e+03 -1.3111428e+02 - -2.1641574e+03 2.6683447e+03 -1.5323121e+02 - -2.2072410e+03 2.6446633e+03 -1.7158262e+02 - -2.2500148e+03 2.6181961e+03 -1.8652267e+02 - -2.2922810e+03 2.5891957e+03 -1.9834896e+02 - -2.3338461e+03 2.5579009e+03 -2.0730221e+02 - -2.3745204e+03 2.5245369e+03 -2.1356724e+02 - -2.4141160e+03 2.4893173e+03 -2.1727454e+02 - -2.4524451e+03 2.4524451e+03 -2.1850172e+02 - -2.4893173e+03 2.4141160e+03 -2.1727454e+02 - -2.5245369e+03 2.3745204e+03 -2.1356724e+02 - -2.5579009e+03 2.3338461e+03 -2.0730221e+02 - -2.5891957e+03 2.2922810e+03 -1.9834896e+02 - -2.6181961e+03 2.2500148e+03 -1.8652267e+02 - -2.6446633e+03 2.2072410e+03 -1.7158262e+02 - -2.6683447e+03 2.1641574e+03 -1.5323121e+02 - -2.6889757e+03 2.1209659e+03 -1.3111428e+02 - -2.7062831e+03 2.0778702e+03 -1.0482422e+02 - -2.7199925e+03 2.0350713e+03 -7.3907431e+01 - -2.7298399e+03 1.9927593e+03 -3.7878300e+01 - -2.7355886e+03 1.9511017e+03 3.7579280e+00 - -2.7370520e+03 1.9102262e+03 5.1471113e+01 - -2.7341229e+03 1.8701997e+03 1.0565975e+02 - -2.7268054e+03 1.8310026e+03 1.6659279e+02 - -2.7152484e+03 1.7925025e+03 2.3434386e+02 - -2.6997722e+03 1.7544317e+03 3.0872638e+02 - -2.6808812e+03 1.7163730e+03 3.8924221e+02 - -2.6592561e+03 1.6777618e+03 4.7505843e+02 - -2.6357199e+03 1.6379081e+03 5.6502452e+02 - -2.6111796e+03 1.5960384e+03 6.5773450e+02 - -2.5865522e+03 1.5513532e+03 7.5162755e+02 - -2.5626878e+03 1.5030899e+03 8.4510950e+02 - -2.5403038e+03 1.4505809e+03 9.3667231e+02 - -2.5199422e+03 1.3932965e+03 1.0249904e+03 - -2.5019525e+03 1.3308692e+03 1.1089806e+03 - -2.4864993e+03 1.2630982e+03 1.1878236e+03 - -2.4735874e+03 1.1899390e+03 1.2609531e+03 - -2.4630957e+03 1.1114839e+03 1.3280222e+03 - -2.4548141e+03 1.0279377e+03 1.3888601e+03 - -2.4484772e+03 9.3959439e+02 1.4434262e+03 - -2.4437930e+03 8.4681586e+02 1.4917691e+03 - -2.4404650e+03 7.5001428e+02 1.5339913e+03 - -2.4382091e+03 6.4963857e+02 1.5702229e+03 - -2.4367653e+03 5.4616409e+02 1.6006013e+03 - -2.4359055e+03 4.4008510e+02 1.6252577e+03 - -2.4354387e+03 3.3190924e+02 1.6443077e+03 - -2.4352142e+03 2.2215354e+02 1.6578453e+03 - -2.4351231e+03 1.1134136e+02 1.6659399e+03 - -2.4351001e+03 0.0000000e+00 1.6686333e+03 - -2.4351231e+03 -1.1134136e+02 1.6659399e+03 - -2.4352142e+03 -2.2215354e+02 1.6578453e+03 - -2.4354387e+03 -3.3190924e+02 1.6443077e+03 - -2.4359055e+03 -4.4008510e+02 1.6252577e+03 - -2.4367653e+03 -5.4616409e+02 1.6006013e+03 - -2.4382091e+03 -6.4963857e+02 1.5702229e+03 - -2.4404650e+03 -7.5001428e+02 1.5339913e+03 - -2.4437930e+03 -8.4681586e+02 1.4917691e+03 - -2.4484772e+03 -9.3959439e+02 1.4434262e+03 - -2.4548141e+03 -1.0279377e+03 1.3888601e+03 - -2.4630957e+03 -1.1114839e+03 1.3280222e+03 - -2.4735874e+03 -1.1899390e+03 1.2609531e+03 - -2.4864993e+03 -1.2630982e+03 1.1878236e+03 - -2.5019525e+03 -1.3308692e+03 1.1089806e+03 - -2.5199422e+03 -1.3932965e+03 1.0249904e+03 - -2.5403038e+03 -1.4505809e+03 9.3667231e+02 - -2.5626878e+03 -1.5030899e+03 8.4510950e+02 - -2.5865522e+03 -1.5513532e+03 7.5162755e+02 - -2.6111796e+03 -1.5960384e+03 6.5773450e+02 - -2.6357199e+03 -1.6379081e+03 5.6502452e+02 - -2.6592561e+03 -1.6777618e+03 4.7505843e+02 - -2.6808812e+03 -1.7163730e+03 3.8924221e+02 - -2.6997722e+03 -1.7544317e+03 3.0872638e+02 - -2.7152484e+03 -1.7925025e+03 2.3434386e+02 - -2.7268054e+03 -1.8310026e+03 1.6659279e+02 - -2.7341229e+03 -1.8701997e+03 1.0565975e+02 - -2.7370520e+03 -1.9102262e+03 5.1471113e+01 - -2.7355886e+03 -1.9511017e+03 3.7579280e+00 - -2.7298399e+03 -1.9927593e+03 -3.7878300e+01 - -2.7199925e+03 -2.0350713e+03 -7.3907431e+01 - -2.7062831e+03 -2.0778702e+03 -1.0482422e+02 - -2.6889757e+03 -2.1209659e+03 -1.3111428e+02 - -2.6683447e+03 -2.1641574e+03 -1.5323121e+02 - -2.6446633e+03 -2.2072410e+03 -1.7158262e+02 - -2.6181961e+03 -2.2500148e+03 -1.8652267e+02 - -2.5891957e+03 -2.2922810e+03 -1.9834896e+02 - -2.5579009e+03 -2.3338461e+03 -2.0730221e+02 - -2.5245369e+03 -2.3745204e+03 -2.1356724e+02 - -2.4893173e+03 -2.4141160e+03 -2.1727454e+02 - -2.4524451e+03 -2.4524451e+03 -2.1850172e+02 - -2.4141160e+03 -2.4893173e+03 -2.1727454e+02 - -2.3745204e+03 -2.5245369e+03 -2.1356724e+02 - -2.3338461e+03 -2.5579009e+03 -2.0730221e+02 - -2.2922810e+03 -2.5891957e+03 -1.9834896e+02 - -2.2500148e+03 -2.6181961e+03 -1.8652267e+02 - -2.2072410e+03 -2.6446633e+03 -1.7158262e+02 - -2.1641574e+03 -2.6683447e+03 -1.5323121e+02 - -2.1209659e+03 -2.6889757e+03 -1.3111428e+02 - -2.0778702e+03 -2.7062831e+03 -1.0482422e+02 - -2.0350713e+03 -2.7199925e+03 -7.3907431e+01 - -1.9927593e+03 -2.7298399e+03 -3.7878300e+01 - -1.9511017e+03 -2.7355886e+03 3.7579280e+00 - -1.9102262e+03 -2.7370520e+03 5.1471113e+01 - -1.8701997e+03 -2.7341229e+03 1.0565975e+02 - -1.8310026e+03 -2.7268054e+03 1.6659279e+02 - -1.7925025e+03 -2.7152484e+03 2.3434386e+02 - -1.7544317e+03 -2.6997722e+03 3.0872638e+02 - -1.7163730e+03 -2.6808812e+03 3.8924221e+02 - -1.6777618e+03 -2.6592561e+03 4.7505843e+02 - -1.6379081e+03 -2.6357199e+03 5.6502452e+02 - -1.5960384e+03 -2.6111796e+03 6.5773450e+02 - -1.5513532e+03 -2.5865522e+03 7.5162755e+02 - -1.5030899e+03 -2.5626878e+03 8.4510950e+02 - -1.4505809e+03 -2.5403038e+03 9.3667231e+02 - -1.3932965e+03 -2.5199422e+03 1.0249904e+03 - -1.3308692e+03 -2.5019525e+03 1.1089806e+03 - -1.2630982e+03 -2.4864993e+03 1.1878236e+03 - -1.1899390e+03 -2.4735874e+03 1.2609531e+03 - -1.1114839e+03 -2.4630957e+03 1.3280222e+03 - -1.0279377e+03 -2.4548141e+03 1.3888601e+03 - -9.3959439e+02 -2.4484772e+03 1.4434262e+03 - -8.4681586e+02 -2.4437930e+03 1.4917691e+03 - -7.5001428e+02 -2.4404650e+03 1.5339913e+03 - -6.4963857e+02 -2.4382091e+03 1.5702229e+03 - -5.4616409e+02 -2.4367653e+03 1.6006013e+03 - -4.4008510e+02 -2.4359055e+03 1.6252577e+03 - -3.3190924e+02 -2.4354387e+03 1.6443077e+03 - -2.2215354e+02 -2.4352142e+03 1.6578453e+03 - -1.1134136e+02 -2.4351231e+03 1.6659399e+03 - 0.0000000e+00 -2.4351001e+03 1.6686333e+03 - 1.1134136e+02 -2.4351231e+03 1.6659399e+03 - 2.2215354e+02 -2.4352142e+03 1.6578453e+03 - 3.3190924e+02 -2.4354387e+03 1.6443077e+03 - 4.4008510e+02 -2.4359055e+03 1.6252577e+03 - 5.4616409e+02 -2.4367653e+03 1.6006013e+03 - 6.4963857e+02 -2.4382091e+03 1.5702229e+03 - 7.5001428e+02 -2.4404650e+03 1.5339913e+03 - 8.4681586e+02 -2.4437930e+03 1.4917691e+03 - 9.3959439e+02 -2.4484772e+03 1.4434262e+03 - 1.0279377e+03 -2.4548141e+03 1.3888601e+03 - 1.1114839e+03 -2.4630957e+03 1.3280222e+03 - 1.1899390e+03 -2.4735874e+03 1.2609531e+03 - 1.2630982e+03 -2.4864993e+03 1.1878236e+03 - 1.3308692e+03 -2.5019525e+03 1.1089806e+03 - 1.3932965e+03 -2.5199422e+03 1.0249904e+03 - 1.4505809e+03 -2.5403038e+03 9.3667231e+02 - 1.5030899e+03 -2.5626878e+03 8.4510950e+02 - 1.5513532e+03 -2.5865522e+03 7.5162755e+02 - 1.5960384e+03 -2.6111796e+03 6.5773450e+02 - 1.6379081e+03 -2.6357199e+03 5.6502452e+02 - 1.6777618e+03 -2.6592561e+03 4.7505843e+02 - 1.7163730e+03 -2.6808812e+03 3.8924221e+02 - 1.7544317e+03 -2.6997722e+03 3.0872638e+02 - 1.7925025e+03 -2.7152484e+03 2.3434386e+02 - 1.8310026e+03 -2.7268054e+03 1.6659279e+02 - 1.8701997e+03 -2.7341229e+03 1.0565975e+02 - 1.9102262e+03 -2.7370520e+03 5.1471113e+01 - 1.9511017e+03 -2.7355886e+03 3.7579280e+00 - 1.9927593e+03 -2.7298399e+03 -3.7878300e+01 - 2.0350713e+03 -2.7199925e+03 -7.3907431e+01 - 2.0778702e+03 -2.7062831e+03 -1.0482422e+02 - 2.1209659e+03 -2.6889757e+03 -1.3111428e+02 - 2.1641574e+03 -2.6683447e+03 -1.5323121e+02 - 2.2072410e+03 -2.6446633e+03 -1.7158262e+02 - 2.2500148e+03 -2.6181961e+03 -1.8652267e+02 - 2.2922810e+03 -2.5891957e+03 -1.9834896e+02 - 2.3338461e+03 -2.5579009e+03 -2.0730221e+02 - 2.3745204e+03 -2.5245369e+03 -2.1356724e+02 - 2.4141160e+03 -2.4893173e+03 -2.1727454e+02 - 2.4524451e+03 -2.4524451e+03 -2.1850172e+02 - 2.4893173e+03 -2.4141160e+03 -2.1727454e+02 - 2.5245369e+03 -2.3745204e+03 -2.1356724e+02 - 2.5579009e+03 -2.3338461e+03 -2.0730221e+02 - 2.5891957e+03 -2.2922810e+03 -1.9834896e+02 - 2.6181961e+03 -2.2500148e+03 -1.8652267e+02 - 2.6446633e+03 -2.2072410e+03 -1.7158262e+02 - 2.6683447e+03 -2.1641574e+03 -1.5323121e+02 - 2.6889757e+03 -2.1209659e+03 -1.3111428e+02 - 2.7062831e+03 -2.0778702e+03 -1.0482422e+02 - 2.7199925e+03 -2.0350713e+03 -7.3907431e+01 - 2.7298399e+03 -1.9927593e+03 -3.7878300e+01 - 2.7355886e+03 -1.9511017e+03 3.7579280e+00 - 2.7370520e+03 -1.9102262e+03 5.1471113e+01 - 2.7341229e+03 -1.8701997e+03 1.0565975e+02 - 2.7268054e+03 -1.8310026e+03 1.6659279e+02 - 2.7152484e+03 -1.7925025e+03 2.3434386e+02 - 2.6997722e+03 -1.7544317e+03 3.0872638e+02 - 2.6808812e+03 -1.7163730e+03 3.8924221e+02 - 2.6592561e+03 -1.6777618e+03 4.7505843e+02 - 2.6357199e+03 -1.6379081e+03 5.6502452e+02 - 2.6111796e+03 -1.5960384e+03 6.5773450e+02 - 2.5865522e+03 -1.5513532e+03 7.5162755e+02 - 2.5626878e+03 -1.5030899e+03 8.4510950e+02 - 2.5403038e+03 -1.4505809e+03 9.3667231e+02 - 2.5199422e+03 -1.3932965e+03 1.0249904e+03 - 2.5019525e+03 -1.3308692e+03 1.1089806e+03 - 2.4864993e+03 -1.2630982e+03 1.1878236e+03 - 2.4735874e+03 -1.1899390e+03 1.2609531e+03 - 2.4630957e+03 -1.1114839e+03 1.3280222e+03 - 2.4548141e+03 -1.0279377e+03 1.3888601e+03 - 2.4484772e+03 -9.3959439e+02 1.4434262e+03 - 2.4437930e+03 -8.4681586e+02 1.4917691e+03 - 2.4404650e+03 -7.5001428e+02 1.5339913e+03 - 2.4382091e+03 -6.4963857e+02 1.5702229e+03 - 2.4367653e+03 -5.4616409e+02 1.6006013e+03 - 2.4359055e+03 -4.4008510e+02 1.6252577e+03 - 2.4354387e+03 -3.3190924e+02 1.6443077e+03 - 2.4352142e+03 -2.2215354e+02 1.6578453e+03 - 2.4351231e+03 -1.1134136e+02 1.6659399e+03 - 2.4351001e+03 -4.8134273e-09 1.6686333e+03 - 2.4644670e+03 -2.4067136e-09 1.5957146e+03 - 2.4642411e+03 1.1779721e+02 1.5933382e+03 - 2.4635837e+03 2.3507386e+02 1.5861966e+03 - 2.4625556e+03 3.5131080e+02 1.5742534e+03 - 2.4612584e+03 4.6599172e+02 1.5574473e+03 - 2.4598341e+03 5.7860462e+02 1.5356927e+03 - 2.4584651e+03 6.8864352e+02 1.5088796e+03 - 2.4573732e+03 7.9561038e+02 1.4768757e+03 - 2.4568180e+03 8.9901779e+02 1.4395286e+03 - 2.4570942e+03 9.9839274e+02 1.3966729e+03 - 2.4585256e+03 1.0932821e+03 1.3481391e+03 - 2.4614569e+03 1.1832606e+03 1.2937703e+03 - 2.4662399e+03 1.2679425e+03 1.2334445e+03 - 2.4732146e+03 1.3469981e+03 1.1671069e+03 - 2.4826815e+03 1.4201741e+03 1.0948115e+03 - 2.4948680e+03 1.4873211e+03 1.0167706e+03 - 2.5098866e+03 1.5484229e+03 9.3340900e+02 - 2.5276909e+03 1.6036266e+03 8.4541373e+02 - 2.5480366e+03 1.6532671e+03 7.5376742e+02 - 2.5704557e+03 1.6978767e+03 6.5975000e+02 - 2.5942567e+03 1.7381733e+03 5.6489602e+02 - 2.6185570e+03 1.7750229e+03 4.7090268e+02 - 2.6423489e+03 1.8093754e+03 3.7949718e+02 - 2.6645902e+03 1.8421865e+03 2.9228618e+02 - 2.6843003e+03 1.8743369e+03 2.1061843e+02 - 2.7006440e+03 1.9065672e+03 1.3548869e+02 - 2.7129868e+03 1.9394378e+03 6.7498709e+01 - 2.7209156e+03 1.9733171e+03 6.8742068e+00 - 2.7242296e+03 2.0083941e+03 -4.6476501e+01 - 2.7229093e+03 2.0447069e+03 -9.2882156e+01 - 2.7170751e+03 2.0821773e+03 -1.3282501e+02 - 2.7069464e+03 2.1206459e+03 -1.6686674e+02 - 2.6928033e+03 2.1599011e+03 -1.9559011e+02 - 2.6749587e+03 2.1997026e+03 -2.1955727e+02 - 2.6537359e+03 2.2397970e+03 -2.3928293e+02 - 2.6294557e+03 2.2799290e+03 -2.5521897e+02 - 2.6024277e+03 2.3198460e+03 -2.6774707e+02 - 2.5729465e+03 2.3593014e+03 -2.7717649e+02 - 2.5412910e+03 2.3980540e+03 -2.8374472e+02 - 2.5077258e+03 2.4358666e+03 -2.8761932e+02 - 2.4725032e+03 2.4725032e+03 -2.8889984e+02 - 2.4358666e+03 2.5077258e+03 -2.8761932e+02 - 2.3980540e+03 2.5412910e+03 -2.8374472e+02 - 2.3593014e+03 2.5729465e+03 -2.7717649e+02 - 2.3198460e+03 2.6024277e+03 -2.6774707e+02 - 2.2799290e+03 2.6294557e+03 -2.5521897e+02 - 2.2397970e+03 2.6537359e+03 -2.3928293e+02 - 2.1997026e+03 2.6749587e+03 -2.1955727e+02 - 2.1599011e+03 2.6928033e+03 -1.9559011e+02 - 2.1206459e+03 2.7069464e+03 -1.6686674e+02 - 2.0821773e+03 2.7170751e+03 -1.3282501e+02 - 2.0447069e+03 2.7229093e+03 -9.2882156e+01 - 2.0083941e+03 2.7242296e+03 -4.6476501e+01 - 1.9733171e+03 2.7209156e+03 6.8742068e+00 - 1.9394378e+03 2.7129868e+03 6.7498709e+01 - 1.9065672e+03 2.7006440e+03 1.3548869e+02 - 1.8743369e+03 2.6843003e+03 2.1061843e+02 - 1.8421865e+03 2.6645902e+03 2.9228618e+02 - 1.8093754e+03 2.6423489e+03 3.7949718e+02 - 1.7750229e+03 2.6185570e+03 4.7090268e+02 - 1.7381733e+03 2.5942567e+03 5.6489602e+02 - 1.6978767e+03 2.5704557e+03 6.5975000e+02 - 1.6532671e+03 2.5480366e+03 7.5376742e+02 - 1.6036266e+03 2.5276909e+03 8.4541373e+02 - 1.5484229e+03 2.5098866e+03 9.3340900e+02 - 1.4873211e+03 2.4948680e+03 1.0167706e+03 - 1.4201741e+03 2.4826815e+03 1.0948115e+03 - 1.3469981e+03 2.4732146e+03 1.1671069e+03 - 1.2679425e+03 2.4662399e+03 1.2334445e+03 - 1.1832606e+03 2.4614569e+03 1.2937703e+03 - 1.0932821e+03 2.4585256e+03 1.3481391e+03 - 9.9839274e+02 2.4570942e+03 1.3966729e+03 - 8.9901779e+02 2.4568180e+03 1.4395286e+03 - 7.9561038e+02 2.4573732e+03 1.4768757e+03 - 6.8864352e+02 2.4584651e+03 1.5088796e+03 - 5.7860462e+02 2.4598341e+03 1.5356927e+03 - 4.6599172e+02 2.4612584e+03 1.5574473e+03 - 3.5131080e+02 2.4625556e+03 1.5742534e+03 - 2.3507386e+02 2.4635837e+03 1.5861966e+03 - 1.1779721e+02 2.4642411e+03 1.5933382e+03 - 0.0000000e+00 2.4644670e+03 1.5957146e+03 - -1.1779721e+02 2.4642411e+03 1.5933382e+03 - -2.3507386e+02 2.4635837e+03 1.5861966e+03 - -3.5131080e+02 2.4625556e+03 1.5742534e+03 - -4.6599172e+02 2.4612584e+03 1.5574473e+03 - -5.7860462e+02 2.4598341e+03 1.5356927e+03 - -6.8864352e+02 2.4584651e+03 1.5088796e+03 - -7.9561038e+02 2.4573732e+03 1.4768757e+03 - -8.9901779e+02 2.4568180e+03 1.4395286e+03 - -9.9839274e+02 2.4570942e+03 1.3966729e+03 - -1.0932821e+03 2.4585256e+03 1.3481391e+03 - -1.1832606e+03 2.4614569e+03 1.2937703e+03 - -1.2679425e+03 2.4662399e+03 1.2334445e+03 - -1.3469981e+03 2.4732146e+03 1.1671069e+03 - -1.4201741e+03 2.4826815e+03 1.0948115e+03 - -1.4873211e+03 2.4948680e+03 1.0167706e+03 - -1.5484229e+03 2.5098866e+03 9.3340900e+02 - -1.6036266e+03 2.5276909e+03 8.4541373e+02 - -1.6532671e+03 2.5480366e+03 7.5376742e+02 - -1.6978767e+03 2.5704557e+03 6.5975000e+02 - -1.7381733e+03 2.5942567e+03 5.6489602e+02 - -1.7750229e+03 2.6185570e+03 4.7090268e+02 - -1.8093754e+03 2.6423489e+03 3.7949718e+02 - -1.8421865e+03 2.6645902e+03 2.9228618e+02 - -1.8743369e+03 2.6843003e+03 2.1061843e+02 - -1.9065672e+03 2.7006440e+03 1.3548869e+02 - -1.9394378e+03 2.7129868e+03 6.7498709e+01 - -1.9733171e+03 2.7209156e+03 6.8742068e+00 - -2.0083941e+03 2.7242296e+03 -4.6476501e+01 - -2.0447069e+03 2.7229093e+03 -9.2882156e+01 - -2.0821773e+03 2.7170751e+03 -1.3282501e+02 - -2.1206459e+03 2.7069464e+03 -1.6686674e+02 - -2.1599011e+03 2.6928033e+03 -1.9559011e+02 - -2.1997026e+03 2.6749587e+03 -2.1955727e+02 - -2.2397970e+03 2.6537359e+03 -2.3928293e+02 - -2.2799290e+03 2.6294557e+03 -2.5521897e+02 - -2.3198460e+03 2.6024277e+03 -2.6774707e+02 - -2.3593014e+03 2.5729465e+03 -2.7717649e+02 - -2.3980540e+03 2.5412910e+03 -2.8374472e+02 - -2.4358666e+03 2.5077258e+03 -2.8761932e+02 - -2.4725032e+03 2.4725032e+03 -2.8889984e+02 - -2.5077258e+03 2.4358666e+03 -2.8761932e+02 - -2.5412910e+03 2.3980540e+03 -2.8374472e+02 - -2.5729465e+03 2.3593014e+03 -2.7717649e+02 - -2.6024277e+03 2.3198460e+03 -2.6774707e+02 - -2.6294557e+03 2.2799290e+03 -2.5521897e+02 - -2.6537359e+03 2.2397970e+03 -2.3928293e+02 - -2.6749587e+03 2.1997026e+03 -2.1955727e+02 - -2.6928033e+03 2.1599011e+03 -1.9559011e+02 - -2.7069464e+03 2.1206459e+03 -1.6686674e+02 - -2.7170751e+03 2.0821773e+03 -1.3282501e+02 - -2.7229093e+03 2.0447069e+03 -9.2882156e+01 - -2.7242296e+03 2.0083941e+03 -4.6476501e+01 - -2.7209156e+03 1.9733171e+03 6.8742068e+00 - -2.7129868e+03 1.9394378e+03 6.7498709e+01 - -2.7006440e+03 1.9065672e+03 1.3548869e+02 - -2.6843003e+03 1.8743369e+03 2.1061843e+02 - -2.6645902e+03 1.8421865e+03 2.9228618e+02 - -2.6423489e+03 1.8093754e+03 3.7949718e+02 - -2.6185570e+03 1.7750229e+03 4.7090268e+02 - -2.5942567e+03 1.7381733e+03 5.6489602e+02 - -2.5704557e+03 1.6978767e+03 6.5975000e+02 - -2.5480366e+03 1.6532671e+03 7.5376742e+02 - -2.5276909e+03 1.6036266e+03 8.4541373e+02 - -2.5098866e+03 1.5484229e+03 9.3340900e+02 - -2.4948680e+03 1.4873211e+03 1.0167706e+03 - -2.4826815e+03 1.4201741e+03 1.0948115e+03 - -2.4732146e+03 1.3469981e+03 1.1671069e+03 - -2.4662399e+03 1.2679425e+03 1.2334445e+03 - -2.4614569e+03 1.1832606e+03 1.2937703e+03 - -2.4585256e+03 1.0932821e+03 1.3481391e+03 - -2.4570942e+03 9.9839274e+02 1.3966729e+03 - -2.4568180e+03 8.9901779e+02 1.4395286e+03 - -2.4573732e+03 7.9561038e+02 1.4768757e+03 - -2.4584651e+03 6.8864352e+02 1.5088796e+03 - -2.4598341e+03 5.7860462e+02 1.5356927e+03 - -2.4612584e+03 4.6599172e+02 1.5574473e+03 - -2.4625556e+03 3.5131080e+02 1.5742534e+03 - -2.4635837e+03 2.3507386e+02 1.5861966e+03 - -2.4642411e+03 1.1779721e+02 1.5933382e+03 - -2.4644670e+03 2.4067136e-09 1.5957146e+03 - -2.4642411e+03 -1.1779721e+02 1.5933382e+03 - -2.4635837e+03 -2.3507386e+02 1.5861966e+03 - -2.4625556e+03 -3.5131080e+02 1.5742534e+03 - -2.4612584e+03 -4.6599172e+02 1.5574473e+03 - -2.4598341e+03 -5.7860462e+02 1.5356927e+03 - -2.4584651e+03 -6.8864352e+02 1.5088796e+03 - -2.4573732e+03 -7.9561038e+02 1.4768757e+03 - -2.4568180e+03 -8.9901779e+02 1.4395286e+03 - -2.4570942e+03 -9.9839274e+02 1.3966729e+03 - -2.4585256e+03 -1.0932821e+03 1.3481391e+03 - -2.4614569e+03 -1.1832606e+03 1.2937703e+03 - -2.4662399e+03 -1.2679425e+03 1.2334445e+03 - -2.4732146e+03 -1.3469981e+03 1.1671069e+03 - -2.4826815e+03 -1.4201741e+03 1.0948115e+03 - -2.4948680e+03 -1.4873211e+03 1.0167706e+03 - -2.5098866e+03 -1.5484229e+03 9.3340900e+02 - -2.5276909e+03 -1.6036266e+03 8.4541373e+02 - -2.5480366e+03 -1.6532671e+03 7.5376742e+02 - -2.5704557e+03 -1.6978767e+03 6.5975000e+02 - -2.5942567e+03 -1.7381733e+03 5.6489602e+02 - -2.6185570e+03 -1.7750229e+03 4.7090268e+02 - -2.6423489e+03 -1.8093754e+03 3.7949718e+02 - -2.6645902e+03 -1.8421865e+03 2.9228618e+02 - -2.6843003e+03 -1.8743369e+03 2.1061843e+02 - -2.7006440e+03 -1.9065672e+03 1.3548869e+02 - -2.7129868e+03 -1.9394378e+03 6.7498709e+01 - -2.7209156e+03 -1.9733171e+03 6.8742068e+00 - -2.7242296e+03 -2.0083941e+03 -4.6476501e+01 - -2.7229093e+03 -2.0447069e+03 -9.2882156e+01 - -2.7170751e+03 -2.0821773e+03 -1.3282501e+02 - -2.7069464e+03 -2.1206459e+03 -1.6686674e+02 - -2.6928033e+03 -2.1599011e+03 -1.9559011e+02 - -2.6749587e+03 -2.1997026e+03 -2.1955727e+02 - -2.6537359e+03 -2.2397970e+03 -2.3928293e+02 - -2.6294557e+03 -2.2799290e+03 -2.5521897e+02 - -2.6024277e+03 -2.3198460e+03 -2.6774707e+02 - -2.5729465e+03 -2.3593014e+03 -2.7717649e+02 - -2.5412910e+03 -2.3980540e+03 -2.8374472e+02 - -2.5077258e+03 -2.4358666e+03 -2.8761932e+02 - -2.4725032e+03 -2.4725032e+03 -2.8889984e+02 - -2.4358666e+03 -2.5077258e+03 -2.8761932e+02 - -2.3980540e+03 -2.5412910e+03 -2.8374472e+02 - -2.3593014e+03 -2.5729465e+03 -2.7717649e+02 - -2.3198460e+03 -2.6024277e+03 -2.6774707e+02 - -2.2799290e+03 -2.6294557e+03 -2.5521897e+02 - -2.2397970e+03 -2.6537359e+03 -2.3928293e+02 - -2.1997026e+03 -2.6749587e+03 -2.1955727e+02 - -2.1599011e+03 -2.6928033e+03 -1.9559011e+02 - -2.1206459e+03 -2.7069464e+03 -1.6686674e+02 - -2.0821773e+03 -2.7170751e+03 -1.3282501e+02 - -2.0447069e+03 -2.7229093e+03 -9.2882156e+01 - -2.0083941e+03 -2.7242296e+03 -4.6476501e+01 - -1.9733171e+03 -2.7209156e+03 6.8742068e+00 - -1.9394378e+03 -2.7129868e+03 6.7498709e+01 - -1.9065672e+03 -2.7006440e+03 1.3548869e+02 - -1.8743369e+03 -2.6843003e+03 2.1061843e+02 - -1.8421865e+03 -2.6645902e+03 2.9228618e+02 - -1.8093754e+03 -2.6423489e+03 3.7949718e+02 - -1.7750229e+03 -2.6185570e+03 4.7090268e+02 - -1.7381733e+03 -2.5942567e+03 5.6489602e+02 - -1.6978767e+03 -2.5704557e+03 6.5975000e+02 - -1.6532671e+03 -2.5480366e+03 7.5376742e+02 - -1.6036266e+03 -2.5276909e+03 8.4541373e+02 - -1.5484229e+03 -2.5098866e+03 9.3340900e+02 - -1.4873211e+03 -2.4948680e+03 1.0167706e+03 - -1.4201741e+03 -2.4826815e+03 1.0948115e+03 - -1.3469981e+03 -2.4732146e+03 1.1671069e+03 - -1.2679425e+03 -2.4662399e+03 1.2334445e+03 - -1.1832606e+03 -2.4614569e+03 1.2937703e+03 - -1.0932821e+03 -2.4585256e+03 1.3481391e+03 - -9.9839274e+02 -2.4570942e+03 1.3966729e+03 - -8.9901779e+02 -2.4568180e+03 1.4395286e+03 - -7.9561038e+02 -2.4573732e+03 1.4768757e+03 - -6.8864352e+02 -2.4584651e+03 1.5088796e+03 - -5.7860462e+02 -2.4598341e+03 1.5356927e+03 - -4.6599172e+02 -2.4612584e+03 1.5574473e+03 - -3.5131080e+02 -2.4625556e+03 1.5742534e+03 - -2.3507386e+02 -2.4635837e+03 1.5861966e+03 - -1.1779721e+02 -2.4642411e+03 1.5933382e+03 - -2.4067136e-09 -2.4644670e+03 1.5957146e+03 - 1.1779721e+02 -2.4642411e+03 1.5933382e+03 - 2.3507386e+02 -2.4635837e+03 1.5861966e+03 - 3.5131080e+02 -2.4625556e+03 1.5742534e+03 - 4.6599172e+02 -2.4612584e+03 1.5574473e+03 - 5.7860462e+02 -2.4598341e+03 1.5356927e+03 - 6.8864352e+02 -2.4584651e+03 1.5088796e+03 - 7.9561038e+02 -2.4573732e+03 1.4768757e+03 - 8.9901779e+02 -2.4568180e+03 1.4395286e+03 - 9.9839274e+02 -2.4570942e+03 1.3966729e+03 - 1.0932821e+03 -2.4585256e+03 1.3481391e+03 - 1.1832606e+03 -2.4614569e+03 1.2937703e+03 - 1.2679425e+03 -2.4662399e+03 1.2334445e+03 - 1.3469981e+03 -2.4732146e+03 1.1671069e+03 - 1.4201741e+03 -2.4826815e+03 1.0948115e+03 - 1.4873211e+03 -2.4948680e+03 1.0167706e+03 - 1.5484229e+03 -2.5098866e+03 9.3340900e+02 - 1.6036266e+03 -2.5276909e+03 8.4541373e+02 - 1.6532671e+03 -2.5480366e+03 7.5376742e+02 - 1.6978767e+03 -2.5704557e+03 6.5975000e+02 - 1.7381733e+03 -2.5942567e+03 5.6489602e+02 - 1.7750229e+03 -2.6185570e+03 4.7090268e+02 - 1.8093754e+03 -2.6423489e+03 3.7949718e+02 - 1.8421865e+03 -2.6645902e+03 2.9228618e+02 - 1.8743369e+03 -2.6843003e+03 2.1061843e+02 - 1.9065672e+03 -2.7006440e+03 1.3548869e+02 - 1.9394378e+03 -2.7129868e+03 6.7498709e+01 - 1.9733171e+03 -2.7209156e+03 6.8742068e+00 - 2.0083941e+03 -2.7242296e+03 -4.6476501e+01 - 2.0447069e+03 -2.7229093e+03 -9.2882156e+01 - 2.0821773e+03 -2.7170751e+03 -1.3282501e+02 - 2.1206459e+03 -2.7069464e+03 -1.6686674e+02 - 2.1599011e+03 -2.6928033e+03 -1.9559011e+02 - 2.1997026e+03 -2.6749587e+03 -2.1955727e+02 - 2.2397970e+03 -2.6537359e+03 -2.3928293e+02 - 2.2799290e+03 -2.6294557e+03 -2.5521897e+02 - 2.3198460e+03 -2.6024277e+03 -2.6774707e+02 - 2.3593014e+03 -2.5729465e+03 -2.7717649e+02 - 2.3980540e+03 -2.5412910e+03 -2.8374472e+02 - 2.4358666e+03 -2.5077258e+03 -2.8761932e+02 - 2.4725032e+03 -2.4725032e+03 -2.8889984e+02 - 2.5077258e+03 -2.4358666e+03 -2.8761932e+02 - 2.5412910e+03 -2.3980540e+03 -2.8374472e+02 - 2.5729465e+03 -2.3593014e+03 -2.7717649e+02 - 2.6024277e+03 -2.3198460e+03 -2.6774707e+02 - 2.6294557e+03 -2.2799290e+03 -2.5521897e+02 - 2.6537359e+03 -2.2397970e+03 -2.3928293e+02 - 2.6749587e+03 -2.1997026e+03 -2.1955727e+02 - 2.6928033e+03 -2.1599011e+03 -1.9559011e+02 - 2.7069464e+03 -2.1206459e+03 -1.6686674e+02 - 2.7170751e+03 -2.0821773e+03 -1.3282501e+02 - 2.7229093e+03 -2.0447069e+03 -9.2882156e+01 - 2.7242296e+03 -2.0083941e+03 -4.6476501e+01 - 2.7209156e+03 -1.9733171e+03 6.8742068e+00 - 2.7129868e+03 -1.9394378e+03 6.7498709e+01 - 2.7006440e+03 -1.9065672e+03 1.3548869e+02 - 2.6843003e+03 -1.8743369e+03 2.1061843e+02 - 2.6645902e+03 -1.8421865e+03 2.9228618e+02 - 2.6423489e+03 -1.8093754e+03 3.7949718e+02 - 2.6185570e+03 -1.7750229e+03 4.7090268e+02 - 2.5942567e+03 -1.7381733e+03 5.6489602e+02 - 2.5704557e+03 -1.6978767e+03 6.5975000e+02 - 2.5480366e+03 -1.6532671e+03 7.5376742e+02 - 2.5276909e+03 -1.6036266e+03 8.4541373e+02 - 2.5098866e+03 -1.5484229e+03 9.3340900e+02 - 2.4948680e+03 -1.4873211e+03 1.0167706e+03 - 2.4826815e+03 -1.4201741e+03 1.0948115e+03 - 2.4732146e+03 -1.3469981e+03 1.1671069e+03 - 2.4662399e+03 -1.2679425e+03 1.2334445e+03 - 2.4614569e+03 -1.1832606e+03 1.2937703e+03 - 2.4585256e+03 -1.0932821e+03 1.3481391e+03 - 2.4570942e+03 -9.9839274e+02 1.3966729e+03 - 2.4568180e+03 -8.9901779e+02 1.4395286e+03 - 2.4573732e+03 -7.9561038e+02 1.4768757e+03 - 2.4584651e+03 -6.8864352e+02 1.5088796e+03 - 2.4598341e+03 -5.7860462e+02 1.5356927e+03 - 2.4612584e+03 -4.6599172e+02 1.5574473e+03 - 2.4625556e+03 -3.5131080e+02 1.5742534e+03 - 2.4635837e+03 -2.3507386e+02 1.5861966e+03 - 2.4642411e+03 -1.1779721e+02 1.5933382e+03 - 2.4644670e+03 2.4067136e-09 1.5957146e+03 - 2.4927347e+03 0.0000000e+00 1.5213440e+03 - 2.4923040e+03 1.2348643e+02 1.5192263e+03 - 2.4910306e+03 2.4645961e+02 1.5128637e+03 - 2.4889707e+03 3.6840781e+02 1.5022267e+03 - 2.4862180e+03 4.8882227e+02 1.4872656e+03 - 2.4829040e+03 6.0719850e+02 1.4679093e+03 - 2.4791985e+03 7.2303749e+02 1.4440640e+03 - 2.4753101e+03 8.3584673e+02 1.4156127e+03 - 2.4714858e+03 9.4514137e+02 1.3824143e+03 - 2.4680106e+03 1.0504456e+03 1.3443046e+03 - 2.4652065e+03 1.1512946e+03 1.3010995e+03 - 2.4634288e+03 1.2472384e+03 1.2526020e+03 - 2.4630604e+03 1.3378469e+03 1.1986136e+03 - 2.4645014e+03 1.4227199e+03 1.1389539e+03 - 2.4681527e+03 1.5015002e+03 1.0734891e+03 - 2.4743920e+03 1.5738944e+03 1.0021724e+03 - 2.4835401e+03 1.6397000e+03 9.2509598e+02 - 2.4958166e+03 1.6988401e+03 8.4255249e+02 - 2.5112884e+03 1.7514022e+03 7.5510024e+02 - 2.5298169e+03 1.7976759e+03 6.6361822e+02 - 2.5510133e+03 1.8381802e+03 5.6933333e+02 - 2.5742186e+03 1.8736684e+03 4.7379993e+02 - 2.5985210e+03 1.9050998e+03 3.7881744e+02 - 2.6228187e+03 1.9335752e+03 2.8628754e+02 - 2.6459218e+03 1.9602427e+03 1.9803293e+02 - 2.6666738e+03 1.9861911e+03 1.1561687e+02 - 2.6840664e+03 2.0123550e+03 4.0205616e+01 - 2.6973218e+03 2.0394509e+03 -2.7497799e+01 - 2.7059296e+03 2.0679516e+03 -8.7243546e+01 - 2.7096417e+03 2.0980975e+03 -1.3916547e+02 - 2.7084349e+03 2.1299323e+03 -1.8367967e+02 - 2.7024590e+03 2.1633493e+03 -2.2137768e+02 - 2.6919827e+03 2.1981385e+03 -2.5293285e+02 - 2.6773462e+03 2.2340262e+03 -2.7902829e+02 - 2.6589250e+03 2.2707052e+03 -3.0030751e+02 - 2.6371037e+03 2.3078554e+03 -3.1734448e+02 - 2.6122611e+03 2.3451566e+03 -3.3062789e+02 - 2.5847608e+03 2.3822945e+03 -3.4055506e+02 - 2.5549487e+03 2.4189621e+03 -3.4743131e+02 - 2.5231535e+03 2.4548594e+03 -3.5147189e+02 - 2.4896891e+03 2.4896891e+03 -3.5280463e+02 - 2.4548594e+03 2.5231535e+03 -3.5147189e+02 - 2.4189621e+03 2.5549487e+03 -3.4743131e+02 - 2.3822945e+03 2.5847608e+03 -3.4055506e+02 - 2.3451566e+03 2.6122611e+03 -3.3062789e+02 - 2.3078554e+03 2.6371037e+03 -3.1734448e+02 - 2.2707052e+03 2.6589250e+03 -3.0030751e+02 - 2.2340262e+03 2.6773462e+03 -2.7902829e+02 - 2.1981385e+03 2.6919827e+03 -2.5293285e+02 - 2.1633493e+03 2.7024590e+03 -2.2137768e+02 - 2.1299323e+03 2.7084349e+03 -1.8367967e+02 - 2.0980975e+03 2.7096417e+03 -1.3916547e+02 - 2.0679516e+03 2.7059296e+03 -8.7243546e+01 - 2.0394509e+03 2.6973218e+03 -2.7497799e+01 - 2.0123550e+03 2.6840664e+03 4.0205616e+01 - 1.9861911e+03 2.6666738e+03 1.1561687e+02 - 1.9602427e+03 2.6459218e+03 1.9803293e+02 - 1.9335752e+03 2.6228187e+03 2.8628754e+02 - 1.9050998e+03 2.5985210e+03 3.7881744e+02 - 1.8736684e+03 2.5742186e+03 4.7379993e+02 - 1.8381802e+03 2.5510133e+03 5.6933333e+02 - 1.7976759e+03 2.5298169e+03 6.6361822e+02 - 1.7514022e+03 2.5112884e+03 7.5510024e+02 - 1.6988401e+03 2.4958166e+03 8.4255249e+02 - 1.6397000e+03 2.4835401e+03 9.2509598e+02 - 1.5738944e+03 2.4743920e+03 1.0021724e+03 - 1.5015002e+03 2.4681527e+03 1.0734891e+03 - 1.4227199e+03 2.4645014e+03 1.1389539e+03 - 1.3378469e+03 2.4630604e+03 1.1986136e+03 - 1.2472384e+03 2.4634288e+03 1.2526020e+03 - 1.1512946e+03 2.4652065e+03 1.3010995e+03 - 1.0504456e+03 2.4680106e+03 1.3443046e+03 - 9.4514137e+02 2.4714858e+03 1.3824143e+03 - 8.3584673e+02 2.4753101e+03 1.4156127e+03 - 7.2303749e+02 2.4791985e+03 1.4440640e+03 - 6.0719850e+02 2.4829040e+03 1.4679093e+03 - 4.8882227e+02 2.4862180e+03 1.4872656e+03 - 3.6840781e+02 2.4889707e+03 1.5022267e+03 - 2.4645961e+02 2.4910306e+03 1.5128637e+03 - 1.2348643e+02 2.4923040e+03 1.5192263e+03 - -2.4067136e-09 2.4927347e+03 1.5213440e+03 - -1.2348643e+02 2.4923040e+03 1.5192263e+03 - -2.4645961e+02 2.4910306e+03 1.5128637e+03 - -3.6840781e+02 2.4889707e+03 1.5022267e+03 - -4.8882227e+02 2.4862180e+03 1.4872656e+03 - -6.0719850e+02 2.4829040e+03 1.4679093e+03 - -7.2303749e+02 2.4791985e+03 1.4440640e+03 - -8.3584673e+02 2.4753101e+03 1.4156127e+03 - -9.4514137e+02 2.4714858e+03 1.3824143e+03 - -1.0504456e+03 2.4680106e+03 1.3443046e+03 - -1.1512946e+03 2.4652065e+03 1.3010995e+03 - -1.2472384e+03 2.4634288e+03 1.2526020e+03 - -1.3378469e+03 2.4630604e+03 1.1986136e+03 - -1.4227199e+03 2.4645014e+03 1.1389539e+03 - -1.5015002e+03 2.4681527e+03 1.0734891e+03 - -1.5738944e+03 2.4743920e+03 1.0021724e+03 - -1.6397000e+03 2.4835401e+03 9.2509598e+02 - -1.6988401e+03 2.4958166e+03 8.4255249e+02 - -1.7514022e+03 2.5112884e+03 7.5510024e+02 - -1.7976759e+03 2.5298169e+03 6.6361822e+02 - -1.8381802e+03 2.5510133e+03 5.6933333e+02 - -1.8736684e+03 2.5742186e+03 4.7379993e+02 - -1.9050998e+03 2.5985210e+03 3.7881744e+02 - -1.9335752e+03 2.6228187e+03 2.8628754e+02 - -1.9602427e+03 2.6459218e+03 1.9803293e+02 - -1.9861911e+03 2.6666738e+03 1.1561687e+02 - -2.0123550e+03 2.6840664e+03 4.0205616e+01 - -2.0394509e+03 2.6973218e+03 -2.7497799e+01 - -2.0679516e+03 2.7059296e+03 -8.7243546e+01 - -2.0980975e+03 2.7096417e+03 -1.3916547e+02 - -2.1299323e+03 2.7084349e+03 -1.8367967e+02 - -2.1633493e+03 2.7024590e+03 -2.2137768e+02 - -2.1981385e+03 2.6919827e+03 -2.5293285e+02 - -2.2340262e+03 2.6773462e+03 -2.7902829e+02 - -2.2707052e+03 2.6589250e+03 -3.0030751e+02 - -2.3078554e+03 2.6371037e+03 -3.1734448e+02 - -2.3451566e+03 2.6122611e+03 -3.3062789e+02 - -2.3822945e+03 2.5847608e+03 -3.4055506e+02 - -2.4189621e+03 2.5549487e+03 -3.4743131e+02 - -2.4548594e+03 2.5231535e+03 -3.5147189e+02 - -2.4896891e+03 2.4896891e+03 -3.5280463e+02 - -2.5231535e+03 2.4548594e+03 -3.5147189e+02 - -2.5549487e+03 2.4189621e+03 -3.4743131e+02 - -2.5847608e+03 2.3822945e+03 -3.4055506e+02 - -2.6122611e+03 2.3451566e+03 -3.3062789e+02 - -2.6371037e+03 2.3078554e+03 -3.1734448e+02 - -2.6589250e+03 2.2707052e+03 -3.0030751e+02 - -2.6773462e+03 2.2340262e+03 -2.7902829e+02 - -2.6919827e+03 2.1981385e+03 -2.5293285e+02 - -2.7024590e+03 2.1633493e+03 -2.2137768e+02 - -2.7084349e+03 2.1299323e+03 -1.8367967e+02 - -2.7096417e+03 2.0980975e+03 -1.3916547e+02 - -2.7059296e+03 2.0679516e+03 -8.7243546e+01 - -2.6973218e+03 2.0394509e+03 -2.7497799e+01 - -2.6840664e+03 2.0123550e+03 4.0205616e+01 - -2.6666738e+03 1.9861911e+03 1.1561687e+02 - -2.6459218e+03 1.9602427e+03 1.9803293e+02 - -2.6228187e+03 1.9335752e+03 2.8628754e+02 - -2.5985210e+03 1.9050998e+03 3.7881744e+02 - -2.5742186e+03 1.8736684e+03 4.7379993e+02 - -2.5510133e+03 1.8381802e+03 5.6933333e+02 - -2.5298169e+03 1.7976759e+03 6.6361822e+02 - -2.5112884e+03 1.7514022e+03 7.5510024e+02 - -2.4958166e+03 1.6988401e+03 8.4255249e+02 - -2.4835401e+03 1.6397000e+03 9.2509598e+02 - -2.4743920e+03 1.5738944e+03 1.0021724e+03 - -2.4681527e+03 1.5015002e+03 1.0734891e+03 - -2.4645014e+03 1.4227199e+03 1.1389539e+03 - -2.4630604e+03 1.3378469e+03 1.1986136e+03 - -2.4634288e+03 1.2472384e+03 1.2526020e+03 - -2.4652065e+03 1.1512946e+03 1.3010995e+03 - -2.4680106e+03 1.0504456e+03 1.3443046e+03 - -2.4714858e+03 9.4514137e+02 1.3824143e+03 - -2.4753101e+03 8.3584673e+02 1.4156127e+03 - -2.4791985e+03 7.2303749e+02 1.4440640e+03 - -2.4829040e+03 6.0719850e+02 1.4679093e+03 - -2.4862180e+03 4.8882227e+02 1.4872656e+03 - -2.4889707e+03 3.6840781e+02 1.5022267e+03 - -2.4910306e+03 2.4645961e+02 1.5128637e+03 - -2.4923040e+03 1.2348643e+02 1.5192263e+03 - -2.4927347e+03 0.0000000e+00 1.5213440e+03 - -2.4923040e+03 -1.2348643e+02 1.5192263e+03 - -2.4910306e+03 -2.4645961e+02 1.5128637e+03 - -2.4889707e+03 -3.6840781e+02 1.5022267e+03 - -2.4862180e+03 -4.8882227e+02 1.4872656e+03 - -2.4829040e+03 -6.0719850e+02 1.4679093e+03 - -2.4791985e+03 -7.2303749e+02 1.4440640e+03 - -2.4753101e+03 -8.3584673e+02 1.4156127e+03 - -2.4714858e+03 -9.4514137e+02 1.3824143e+03 - -2.4680106e+03 -1.0504456e+03 1.3443046e+03 - -2.4652065e+03 -1.1512946e+03 1.3010995e+03 - -2.4634288e+03 -1.2472384e+03 1.2526020e+03 - -2.4630604e+03 -1.3378469e+03 1.1986136e+03 - -2.4645014e+03 -1.4227199e+03 1.1389539e+03 - -2.4681527e+03 -1.5015002e+03 1.0734891e+03 - -2.4743920e+03 -1.5738944e+03 1.0021724e+03 - -2.4835401e+03 -1.6397000e+03 9.2509598e+02 - -2.4958166e+03 -1.6988401e+03 8.4255249e+02 - -2.5112884e+03 -1.7514022e+03 7.5510024e+02 - -2.5298169e+03 -1.7976759e+03 6.6361822e+02 - -2.5510133e+03 -1.8381802e+03 5.6933333e+02 - -2.5742186e+03 -1.8736684e+03 4.7379993e+02 - -2.5985210e+03 -1.9050998e+03 3.7881744e+02 - -2.6228187e+03 -1.9335752e+03 2.8628754e+02 - -2.6459218e+03 -1.9602427e+03 1.9803293e+02 - -2.6666738e+03 -1.9861911e+03 1.1561687e+02 - -2.6840664e+03 -2.0123550e+03 4.0205616e+01 - -2.6973218e+03 -2.0394509e+03 -2.7497799e+01 - -2.7059296e+03 -2.0679516e+03 -8.7243546e+01 - -2.7096417e+03 -2.0980975e+03 -1.3916547e+02 - -2.7084349e+03 -2.1299323e+03 -1.8367967e+02 - -2.7024590e+03 -2.1633493e+03 -2.2137768e+02 - -2.6919827e+03 -2.1981385e+03 -2.5293285e+02 - -2.6773462e+03 -2.2340262e+03 -2.7902829e+02 - -2.6589250e+03 -2.2707052e+03 -3.0030751e+02 - -2.6371037e+03 -2.3078554e+03 -3.1734448e+02 - -2.6122611e+03 -2.3451566e+03 -3.3062789e+02 - -2.5847608e+03 -2.3822945e+03 -3.4055506e+02 - -2.5549487e+03 -2.4189621e+03 -3.4743131e+02 - -2.5231535e+03 -2.4548594e+03 -3.5147189e+02 - -2.4896891e+03 -2.4896891e+03 -3.5280463e+02 - -2.4548594e+03 -2.5231535e+03 -3.5147189e+02 - -2.4189621e+03 -2.5549487e+03 -3.4743131e+02 - -2.3822945e+03 -2.5847608e+03 -3.4055506e+02 - -2.3451566e+03 -2.6122611e+03 -3.3062789e+02 - -2.3078554e+03 -2.6371037e+03 -3.1734448e+02 - -2.2707052e+03 -2.6589250e+03 -3.0030751e+02 - -2.2340262e+03 -2.6773462e+03 -2.7902829e+02 - -2.1981385e+03 -2.6919827e+03 -2.5293285e+02 - -2.1633493e+03 -2.7024590e+03 -2.2137768e+02 - -2.1299323e+03 -2.7084349e+03 -1.8367967e+02 - -2.0980975e+03 -2.7096417e+03 -1.3916547e+02 - -2.0679516e+03 -2.7059296e+03 -8.7243546e+01 - -2.0394509e+03 -2.6973218e+03 -2.7497799e+01 - -2.0123550e+03 -2.6840664e+03 4.0205616e+01 - -1.9861911e+03 -2.6666738e+03 1.1561687e+02 - -1.9602427e+03 -2.6459218e+03 1.9803293e+02 - -1.9335752e+03 -2.6228187e+03 2.8628754e+02 - -1.9050998e+03 -2.5985210e+03 3.7881744e+02 - -1.8736684e+03 -2.5742186e+03 4.7379993e+02 - -1.8381802e+03 -2.5510133e+03 5.6933333e+02 - -1.7976759e+03 -2.5298169e+03 6.6361822e+02 - -1.7514022e+03 -2.5112884e+03 7.5510024e+02 - -1.6988401e+03 -2.4958166e+03 8.4255249e+02 - -1.6397000e+03 -2.4835401e+03 9.2509598e+02 - -1.5738944e+03 -2.4743920e+03 1.0021724e+03 - -1.5015002e+03 -2.4681527e+03 1.0734891e+03 - -1.4227199e+03 -2.4645014e+03 1.1389539e+03 - -1.3378469e+03 -2.4630604e+03 1.1986136e+03 - -1.2472384e+03 -2.4634288e+03 1.2526020e+03 - -1.1512946e+03 -2.4652065e+03 1.3010995e+03 - -1.0504456e+03 -2.4680106e+03 1.3443046e+03 - -9.4514137e+02 -2.4714858e+03 1.3824143e+03 - -8.3584673e+02 -2.4753101e+03 1.4156127e+03 - -7.2303749e+02 -2.4791985e+03 1.4440640e+03 - -6.0719850e+02 -2.4829040e+03 1.4679093e+03 - -4.8882227e+02 -2.4862180e+03 1.4872656e+03 - -3.6840781e+02 -2.4889707e+03 1.5022267e+03 - -2.4645961e+02 -2.4910306e+03 1.5128637e+03 - -1.2348643e+02 -2.4923040e+03 1.5192263e+03 - 2.4067136e-09 -2.4927347e+03 1.5213440e+03 - 1.2348643e+02 -2.4923040e+03 1.5192263e+03 - 2.4645961e+02 -2.4910306e+03 1.5128637e+03 - 3.6840781e+02 -2.4889707e+03 1.5022267e+03 - 4.8882227e+02 -2.4862180e+03 1.4872656e+03 - 6.0719850e+02 -2.4829040e+03 1.4679093e+03 - 7.2303749e+02 -2.4791985e+03 1.4440640e+03 - 8.3584673e+02 -2.4753101e+03 1.4156127e+03 - 9.4514137e+02 -2.4714858e+03 1.3824143e+03 - 1.0504456e+03 -2.4680106e+03 1.3443046e+03 - 1.1512946e+03 -2.4652065e+03 1.3010995e+03 - 1.2472384e+03 -2.4634288e+03 1.2526020e+03 - 1.3378469e+03 -2.4630604e+03 1.1986136e+03 - 1.4227199e+03 -2.4645014e+03 1.1389539e+03 - 1.5015002e+03 -2.4681527e+03 1.0734891e+03 - 1.5738944e+03 -2.4743920e+03 1.0021724e+03 - 1.6397000e+03 -2.4835401e+03 9.2509598e+02 - 1.6988401e+03 -2.4958166e+03 8.4255249e+02 - 1.7514022e+03 -2.5112884e+03 7.5510024e+02 - 1.7976759e+03 -2.5298169e+03 6.6361822e+02 - 1.8381802e+03 -2.5510133e+03 5.6933333e+02 - 1.8736684e+03 -2.5742186e+03 4.7379993e+02 - 1.9050998e+03 -2.5985210e+03 3.7881744e+02 - 1.9335752e+03 -2.6228187e+03 2.8628754e+02 - 1.9602427e+03 -2.6459218e+03 1.9803293e+02 - 1.9861911e+03 -2.6666738e+03 1.1561687e+02 - 2.0123550e+03 -2.6840664e+03 4.0205616e+01 - 2.0394509e+03 -2.6973218e+03 -2.7497799e+01 - 2.0679516e+03 -2.7059296e+03 -8.7243546e+01 - 2.0980975e+03 -2.7096417e+03 -1.3916547e+02 - 2.1299323e+03 -2.7084349e+03 -1.8367967e+02 - 2.1633493e+03 -2.7024590e+03 -2.2137768e+02 - 2.1981385e+03 -2.6919827e+03 -2.5293285e+02 - 2.2340262e+03 -2.6773462e+03 -2.7902829e+02 - 2.2707052e+03 -2.6589250e+03 -3.0030751e+02 - 2.3078554e+03 -2.6371037e+03 -3.1734448e+02 - 2.3451566e+03 -2.6122611e+03 -3.3062789e+02 - 2.3822945e+03 -2.5847608e+03 -3.4055506e+02 - 2.4189621e+03 -2.5549487e+03 -3.4743131e+02 - 2.4548594e+03 -2.5231535e+03 -3.5147189e+02 - 2.4896891e+03 -2.4896891e+03 -3.5280463e+02 - 2.5231535e+03 -2.4548594e+03 -3.5147189e+02 - 2.5549487e+03 -2.4189621e+03 -3.4743131e+02 - 2.5847608e+03 -2.3822945e+03 -3.4055506e+02 - 2.6122611e+03 -2.3451566e+03 -3.3062789e+02 - 2.6371037e+03 -2.3078554e+03 -3.1734448e+02 - 2.6589250e+03 -2.2707052e+03 -3.0030751e+02 - 2.6773462e+03 -2.2340262e+03 -2.7902829e+02 - 2.6919827e+03 -2.1981385e+03 -2.5293285e+02 - 2.7024590e+03 -2.1633493e+03 -2.2137768e+02 - 2.7084349e+03 -2.1299323e+03 -1.8367967e+02 - 2.7096417e+03 -2.0980975e+03 -1.3916547e+02 - 2.7059296e+03 -2.0679516e+03 -8.7243546e+01 - 2.6973218e+03 -2.0394509e+03 -2.7497799e+01 - 2.6840664e+03 -2.0123550e+03 4.0205616e+01 - 2.6666738e+03 -1.9861911e+03 1.1561687e+02 - 2.6459218e+03 -1.9602427e+03 1.9803293e+02 - 2.6228187e+03 -1.9335752e+03 2.8628754e+02 - 2.5985210e+03 -1.9050998e+03 3.7881744e+02 - 2.5742186e+03 -1.8736684e+03 4.7379993e+02 - 2.5510133e+03 -1.8381802e+03 5.6933333e+02 - 2.5298169e+03 -1.7976759e+03 6.6361822e+02 - 2.5112884e+03 -1.7514022e+03 7.5510024e+02 - 2.4958166e+03 -1.6988401e+03 8.4255249e+02 - 2.4835401e+03 -1.6397000e+03 9.2509598e+02 - 2.4743920e+03 -1.5738944e+03 1.0021724e+03 - 2.4681527e+03 -1.5015002e+03 1.0734891e+03 - 2.4645014e+03 -1.4227199e+03 1.1389539e+03 - 2.4630604e+03 -1.3378469e+03 1.1986136e+03 - 2.4634288e+03 -1.2472384e+03 1.2526020e+03 - 2.4652065e+03 -1.1512946e+03 1.3010995e+03 - 2.4680106e+03 -1.0504456e+03 1.3443046e+03 - 2.4714858e+03 -9.4514137e+02 1.3824143e+03 - 2.4753101e+03 -8.3584673e+02 1.4156127e+03 - 2.4791985e+03 -7.2303749e+02 1.4440640e+03 - 2.4829040e+03 -6.0719850e+02 1.4679093e+03 - 2.4862180e+03 -4.8882227e+02 1.4872656e+03 - 2.4889707e+03 -3.6840781e+02 1.5022267e+03 - 2.4910306e+03 -2.4645961e+02 1.5128637e+03 - 2.4923040e+03 -1.2348643e+02 1.5192263e+03 - 2.4927347e+03 0.0000000e+00 1.5213440e+03 - 2.5198496e+03 -2.4067136e-09 1.4455584e+03 - 2.5192472e+03 1.2854506e+02 1.4436574e+03 - 2.5174573e+03 2.5658148e+02 1.4379473e+03 - 2.5145319e+03 3.8360251e+02 1.4284058e+03 - 2.5105578e+03 5.0910509e+02 1.4149948e+03 - 2.5056571e+03 6.3259143e+02 1.3976591e+03 - 2.4999874e+03 7.5357016e+02 1.3763244e+03 - 2.4937425e+03 8.7155728e+02 1.3508951e+03 - 2.4871532e+03 9.8607659e+02 1.3212520e+03 - 2.4804877e+03 1.0966599e+03 1.2872506e+03 - 2.4740522e+03 1.2028473e+03 1.2487204e+03 - 2.4681912e+03 1.3041875e+03 1.2054648e+03 - 2.4632852e+03 1.4002394e+03 1.1572658e+03 - 2.4597481e+03 1.4905751e+03 1.1038921e+03 - 2.4580196e+03 1.5747869e+03 1.0451142e+03 - 2.4585524e+03 1.6524976e+03 9.8073029e+02 - 2.4617909e+03 1.7233798e+03 9.1060318e+02 - 2.4681400e+03 1.7871819e+03 8.3471362e+02 - 2.4779194e+03 1.8437662e+03 7.5322775e+02 - 2.4913065e+03 1.8931550e+03 6.6657536e+02 - 2.5082699e+03 1.9355823e+03 5.7552691e+02 - 2.5285059e+03 1.9715395e+03 4.8124902e+02 - 2.5513942e+03 2.0018020e+03 3.8531129e+02 - 2.5759949e+03 2.0274164e+03 2.8961943e+02 - 2.6011034e+03 2.0496395e+03 1.9626509e+02 - 2.6253627e+03 2.0698287e+03 1.0731081e+02 - 2.6474151e+03 2.0893049e+03 2.4557464e+01 - 2.6660548e+03 2.1092201e+03 -5.0645339e+01 - 2.6803452e+03 2.1304604e+03 -1.1749920e+02 - 2.6896765e+03 2.1536042e+03 -1.7575339e+02 - 2.6937634e+03 2.1789316e+03 -2.2561797e+02 - 2.6925985e+03 2.2064709e+03 -2.6763263e+02 - 2.6863838e+03 2.2360622e+03 -3.0252918e+02 - 2.6754607e+03 2.2674195e+03 -3.3111397e+02 - 2.6602501e+03 2.3001837e+03 -3.5418096e+02 - 2.6412075e+03 2.3339605e+03 -3.7245550e+02 - 2.6187937e+03 2.3683462e+03 -3.8656292e+02 - 2.5934579e+03 2.4029406e+03 -3.9701440e+02 - 2.5656298e+03 2.4373533e+03 -4.0420339e+02 - 2.5357187e+03 2.4712036e+03 -4.0840718e+02 - 2.5041167e+03 2.5041167e+03 -4.0979028e+02 - 2.4712036e+03 2.5357187e+03 -4.0840718e+02 - 2.4373533e+03 2.5656298e+03 -4.0420339e+02 - 2.4029406e+03 2.5934579e+03 -3.9701440e+02 - 2.3683462e+03 2.6187937e+03 -3.8656292e+02 - 2.3339605e+03 2.6412075e+03 -3.7245550e+02 - 2.3001837e+03 2.6602501e+03 -3.5418096e+02 - 2.2674195e+03 2.6754607e+03 -3.3111397e+02 - 2.2360622e+03 2.6863838e+03 -3.0252918e+02 - 2.2064709e+03 2.6925985e+03 -2.6763263e+02 - 2.1789316e+03 2.6937634e+03 -2.2561797e+02 - 2.1536042e+03 2.6896765e+03 -1.7575339e+02 - 2.1304604e+03 2.6803452e+03 -1.1749920e+02 - 2.1092201e+03 2.6660548e+03 -5.0645339e+01 - 2.0893049e+03 2.6474151e+03 2.4557464e+01 - 2.0698287e+03 2.6253627e+03 1.0731081e+02 - 2.0496395e+03 2.6011034e+03 1.9626509e+02 - 2.0274164e+03 2.5759949e+03 2.8961943e+02 - 2.0018020e+03 2.5513942e+03 3.8531129e+02 - 1.9715395e+03 2.5285059e+03 4.8124902e+02 - 1.9355823e+03 2.5082699e+03 5.7552691e+02 - 1.8931550e+03 2.4913065e+03 6.6657536e+02 - 1.8437662e+03 2.4779194e+03 7.5322775e+02 - 1.7871819e+03 2.4681400e+03 8.3471362e+02 - 1.7233798e+03 2.4617909e+03 9.1060318e+02 - 1.6524976e+03 2.4585524e+03 9.8073029e+02 - 1.5747869e+03 2.4580196e+03 1.0451142e+03 - 1.4905751e+03 2.4597481e+03 1.1038921e+03 - 1.4002394e+03 2.4632852e+03 1.1572658e+03 - 1.3041875e+03 2.4681912e+03 1.2054648e+03 - 1.2028473e+03 2.4740522e+03 1.2487204e+03 - 1.0966599e+03 2.4804877e+03 1.2872506e+03 - 9.8607659e+02 2.4871532e+03 1.3212520e+03 - 8.7155728e+02 2.4937425e+03 1.3508951e+03 - 7.5357016e+02 2.4999874e+03 1.3763244e+03 - 6.3259143e+02 2.5056571e+03 1.3976591e+03 - 5.0910509e+02 2.5105578e+03 1.4149948e+03 - 3.8360251e+02 2.5145319e+03 1.4284058e+03 - 2.5658148e+02 2.5174573e+03 1.4379473e+03 - 1.2854506e+02 2.5192472e+03 1.4436574e+03 - 0.0000000e+00 2.5198496e+03 1.4455584e+03 - -1.2854506e+02 2.5192472e+03 1.4436574e+03 - -2.5658148e+02 2.5174573e+03 1.4379473e+03 - -3.8360251e+02 2.5145319e+03 1.4284058e+03 - -5.0910509e+02 2.5105578e+03 1.4149948e+03 - -6.3259143e+02 2.5056571e+03 1.3976591e+03 - -7.5357016e+02 2.4999874e+03 1.3763244e+03 - -8.7155728e+02 2.4937425e+03 1.3508951e+03 - -9.8607659e+02 2.4871532e+03 1.3212520e+03 - -1.0966599e+03 2.4804877e+03 1.2872506e+03 - -1.2028473e+03 2.4740522e+03 1.2487204e+03 - -1.3041875e+03 2.4681912e+03 1.2054648e+03 - -1.4002394e+03 2.4632852e+03 1.1572658e+03 - -1.4905751e+03 2.4597481e+03 1.1038921e+03 - -1.5747869e+03 2.4580196e+03 1.0451142e+03 - -1.6524976e+03 2.4585524e+03 9.8073029e+02 - -1.7233798e+03 2.4617909e+03 9.1060318e+02 - -1.7871819e+03 2.4681400e+03 8.3471362e+02 - -1.8437662e+03 2.4779194e+03 7.5322775e+02 - -1.8931550e+03 2.4913065e+03 6.6657536e+02 - -1.9355823e+03 2.5082699e+03 5.7552691e+02 - -1.9715395e+03 2.5285059e+03 4.8124902e+02 - -2.0018020e+03 2.5513942e+03 3.8531129e+02 - -2.0274164e+03 2.5759949e+03 2.8961943e+02 - -2.0496395e+03 2.6011034e+03 1.9626509e+02 - -2.0698287e+03 2.6253627e+03 1.0731081e+02 - -2.0893049e+03 2.6474151e+03 2.4557464e+01 - -2.1092201e+03 2.6660548e+03 -5.0645339e+01 - -2.1304604e+03 2.6803452e+03 -1.1749920e+02 - -2.1536042e+03 2.6896765e+03 -1.7575339e+02 - -2.1789316e+03 2.6937634e+03 -2.2561797e+02 - -2.2064709e+03 2.6925985e+03 -2.6763263e+02 - -2.2360622e+03 2.6863838e+03 -3.0252918e+02 - -2.2674195e+03 2.6754607e+03 -3.3111397e+02 - -2.3001837e+03 2.6602501e+03 -3.5418096e+02 - -2.3339605e+03 2.6412075e+03 -3.7245550e+02 - -2.3683462e+03 2.6187937e+03 -3.8656292e+02 - -2.4029406e+03 2.5934579e+03 -3.9701440e+02 - -2.4373533e+03 2.5656298e+03 -4.0420339e+02 - -2.4712036e+03 2.5357187e+03 -4.0840718e+02 - -2.5041167e+03 2.5041167e+03 -4.0979028e+02 - -2.5357187e+03 2.4712036e+03 -4.0840718e+02 - -2.5656298e+03 2.4373533e+03 -4.0420339e+02 - -2.5934579e+03 2.4029406e+03 -3.9701440e+02 - -2.6187937e+03 2.3683462e+03 -3.8656292e+02 - -2.6412075e+03 2.3339605e+03 -3.7245550e+02 - -2.6602501e+03 2.3001837e+03 -3.5418096e+02 - -2.6754607e+03 2.2674195e+03 -3.3111397e+02 - -2.6863838e+03 2.2360622e+03 -3.0252918e+02 - -2.6925985e+03 2.2064709e+03 -2.6763263e+02 - -2.6937634e+03 2.1789316e+03 -2.2561797e+02 - -2.6896765e+03 2.1536042e+03 -1.7575339e+02 - -2.6803452e+03 2.1304604e+03 -1.1749920e+02 - -2.6660548e+03 2.1092201e+03 -5.0645339e+01 - -2.6474151e+03 2.0893049e+03 2.4557464e+01 - -2.6253627e+03 2.0698287e+03 1.0731081e+02 - -2.6011034e+03 2.0496395e+03 1.9626509e+02 - -2.5759949e+03 2.0274164e+03 2.8961943e+02 - -2.5513942e+03 2.0018020e+03 3.8531129e+02 - -2.5285059e+03 1.9715395e+03 4.8124902e+02 - -2.5082699e+03 1.9355823e+03 5.7552691e+02 - -2.4913065e+03 1.8931550e+03 6.6657536e+02 - -2.4779194e+03 1.8437662e+03 7.5322775e+02 - -2.4681400e+03 1.7871819e+03 8.3471362e+02 - -2.4617909e+03 1.7233798e+03 9.1060318e+02 - -2.4585524e+03 1.6524976e+03 9.8073029e+02 - -2.4580196e+03 1.5747869e+03 1.0451142e+03 - -2.4597481e+03 1.4905751e+03 1.1038921e+03 - -2.4632852e+03 1.4002394e+03 1.1572658e+03 - -2.4681912e+03 1.3041875e+03 1.2054648e+03 - -2.4740522e+03 1.2028473e+03 1.2487204e+03 - -2.4804877e+03 1.0966599e+03 1.2872506e+03 - -2.4871532e+03 9.8607659e+02 1.3212520e+03 - -2.4937425e+03 8.7155728e+02 1.3508951e+03 - -2.4999874e+03 7.5357016e+02 1.3763244e+03 - -2.5056571e+03 6.3259143e+02 1.3976591e+03 - -2.5105578e+03 5.0910509e+02 1.4149948e+03 - -2.5145319e+03 3.8360251e+02 1.4284058e+03 - -2.5174573e+03 2.5658148e+02 1.4379473e+03 - -2.5192472e+03 1.2854506e+02 1.4436574e+03 - -2.5198496e+03 4.8134273e-09 1.4455584e+03 - -2.5192472e+03 -1.2854506e+02 1.4436574e+03 - -2.5174573e+03 -2.5658148e+02 1.4379473e+03 - -2.5145319e+03 -3.8360251e+02 1.4284058e+03 - -2.5105578e+03 -5.0910509e+02 1.4149948e+03 - -2.5056571e+03 -6.3259143e+02 1.3976591e+03 - -2.4999874e+03 -7.5357016e+02 1.3763244e+03 - -2.4937425e+03 -8.7155728e+02 1.3508951e+03 - -2.4871532e+03 -9.8607659e+02 1.3212520e+03 - -2.4804877e+03 -1.0966599e+03 1.2872506e+03 - -2.4740522e+03 -1.2028473e+03 1.2487204e+03 - -2.4681912e+03 -1.3041875e+03 1.2054648e+03 - -2.4632852e+03 -1.4002394e+03 1.1572658e+03 - -2.4597481e+03 -1.4905751e+03 1.1038921e+03 - -2.4580196e+03 -1.5747869e+03 1.0451142e+03 - -2.4585524e+03 -1.6524976e+03 9.8073029e+02 - -2.4617909e+03 -1.7233798e+03 9.1060318e+02 - -2.4681400e+03 -1.7871819e+03 8.3471362e+02 - -2.4779194e+03 -1.8437662e+03 7.5322775e+02 - -2.4913065e+03 -1.8931550e+03 6.6657536e+02 - -2.5082699e+03 -1.9355823e+03 5.7552691e+02 - -2.5285059e+03 -1.9715395e+03 4.8124902e+02 - -2.5513942e+03 -2.0018020e+03 3.8531129e+02 - -2.5759949e+03 -2.0274164e+03 2.8961943e+02 - -2.6011034e+03 -2.0496395e+03 1.9626509e+02 - -2.6253627e+03 -2.0698287e+03 1.0731081e+02 - -2.6474151e+03 -2.0893049e+03 2.4557464e+01 - -2.6660548e+03 -2.1092201e+03 -5.0645339e+01 - -2.6803452e+03 -2.1304604e+03 -1.1749920e+02 - -2.6896765e+03 -2.1536042e+03 -1.7575339e+02 - -2.6937634e+03 -2.1789316e+03 -2.2561797e+02 - -2.6925985e+03 -2.2064709e+03 -2.6763263e+02 - -2.6863838e+03 -2.2360622e+03 -3.0252918e+02 - -2.6754607e+03 -2.2674195e+03 -3.3111397e+02 - -2.6602501e+03 -2.3001837e+03 -3.5418096e+02 - -2.6412075e+03 -2.3339605e+03 -3.7245550e+02 - -2.6187937e+03 -2.3683462e+03 -3.8656292e+02 - -2.5934579e+03 -2.4029406e+03 -3.9701440e+02 - -2.5656298e+03 -2.4373533e+03 -4.0420339e+02 - -2.5357187e+03 -2.4712036e+03 -4.0840718e+02 - -2.5041167e+03 -2.5041167e+03 -4.0979028e+02 - -2.4712036e+03 -2.5357187e+03 -4.0840718e+02 - -2.4373533e+03 -2.5656298e+03 -4.0420339e+02 - -2.4029406e+03 -2.5934579e+03 -3.9701440e+02 - -2.3683462e+03 -2.6187937e+03 -3.8656292e+02 - -2.3339605e+03 -2.6412075e+03 -3.7245550e+02 - -2.3001837e+03 -2.6602501e+03 -3.5418096e+02 - -2.2674195e+03 -2.6754607e+03 -3.3111397e+02 - -2.2360622e+03 -2.6863838e+03 -3.0252918e+02 - -2.2064709e+03 -2.6925985e+03 -2.6763263e+02 - -2.1789316e+03 -2.6937634e+03 -2.2561797e+02 - -2.1536042e+03 -2.6896765e+03 -1.7575339e+02 - -2.1304604e+03 -2.6803452e+03 -1.1749920e+02 - -2.1092201e+03 -2.6660548e+03 -5.0645339e+01 - -2.0893049e+03 -2.6474151e+03 2.4557464e+01 - -2.0698287e+03 -2.6253627e+03 1.0731081e+02 - -2.0496395e+03 -2.6011034e+03 1.9626509e+02 - -2.0274164e+03 -2.5759949e+03 2.8961943e+02 - -2.0018020e+03 -2.5513942e+03 3.8531129e+02 - -1.9715395e+03 -2.5285059e+03 4.8124902e+02 - -1.9355823e+03 -2.5082699e+03 5.7552691e+02 - -1.8931550e+03 -2.4913065e+03 6.6657536e+02 - -1.8437662e+03 -2.4779194e+03 7.5322775e+02 - -1.7871819e+03 -2.4681400e+03 8.3471362e+02 - -1.7233798e+03 -2.4617909e+03 9.1060318e+02 - -1.6524976e+03 -2.4585524e+03 9.8073029e+02 - -1.5747869e+03 -2.4580196e+03 1.0451142e+03 - -1.4905751e+03 -2.4597481e+03 1.1038921e+03 - -1.4002394e+03 -2.4632852e+03 1.1572658e+03 - -1.3041875e+03 -2.4681912e+03 1.2054648e+03 - -1.2028473e+03 -2.4740522e+03 1.2487204e+03 - -1.0966599e+03 -2.4804877e+03 1.2872506e+03 - -9.8607659e+02 -2.4871532e+03 1.3212520e+03 - -8.7155728e+02 -2.4937425e+03 1.3508951e+03 - -7.5357016e+02 -2.4999874e+03 1.3763244e+03 - -6.3259143e+02 -2.5056571e+03 1.3976591e+03 - -5.0910509e+02 -2.5105578e+03 1.4149948e+03 - -3.8360251e+02 -2.5145319e+03 1.4284058e+03 - -2.5658148e+02 -2.5174573e+03 1.4379473e+03 - -1.2854506e+02 -2.5192472e+03 1.4436574e+03 - -2.4067136e-09 -2.5198496e+03 1.4455584e+03 - 1.2854506e+02 -2.5192472e+03 1.4436574e+03 - 2.5658148e+02 -2.5174573e+03 1.4379473e+03 - 3.8360251e+02 -2.5145319e+03 1.4284058e+03 - 5.0910509e+02 -2.5105578e+03 1.4149948e+03 - 6.3259143e+02 -2.5056571e+03 1.3976591e+03 - 7.5357016e+02 -2.4999874e+03 1.3763244e+03 - 8.7155728e+02 -2.4937425e+03 1.3508951e+03 - 9.8607659e+02 -2.4871532e+03 1.3212520e+03 - 1.0966599e+03 -2.4804877e+03 1.2872506e+03 - 1.2028473e+03 -2.4740522e+03 1.2487204e+03 - 1.3041875e+03 -2.4681912e+03 1.2054648e+03 - 1.4002394e+03 -2.4632852e+03 1.1572658e+03 - 1.4905751e+03 -2.4597481e+03 1.1038921e+03 - 1.5747869e+03 -2.4580196e+03 1.0451142e+03 - 1.6524976e+03 -2.4585524e+03 9.8073029e+02 - 1.7233798e+03 -2.4617909e+03 9.1060318e+02 - 1.7871819e+03 -2.4681400e+03 8.3471362e+02 - 1.8437662e+03 -2.4779194e+03 7.5322775e+02 - 1.8931550e+03 -2.4913065e+03 6.6657536e+02 - 1.9355823e+03 -2.5082699e+03 5.7552691e+02 - 1.9715395e+03 -2.5285059e+03 4.8124902e+02 - 2.0018020e+03 -2.5513942e+03 3.8531129e+02 - 2.0274164e+03 -2.5759949e+03 2.8961943e+02 - 2.0496395e+03 -2.6011034e+03 1.9626509e+02 - 2.0698287e+03 -2.6253627e+03 1.0731081e+02 - 2.0893049e+03 -2.6474151e+03 2.4557464e+01 - 2.1092201e+03 -2.6660548e+03 -5.0645339e+01 - 2.1304604e+03 -2.6803452e+03 -1.1749920e+02 - 2.1536042e+03 -2.6896765e+03 -1.7575339e+02 - 2.1789316e+03 -2.6937634e+03 -2.2561797e+02 - 2.2064709e+03 -2.6925985e+03 -2.6763263e+02 - 2.2360622e+03 -2.6863838e+03 -3.0252918e+02 - 2.2674195e+03 -2.6754607e+03 -3.3111397e+02 - 2.3001837e+03 -2.6602501e+03 -3.5418096e+02 - 2.3339605e+03 -2.6412075e+03 -3.7245550e+02 - 2.3683462e+03 -2.6187937e+03 -3.8656292e+02 - 2.4029406e+03 -2.5934579e+03 -3.9701440e+02 - 2.4373533e+03 -2.5656298e+03 -4.0420339e+02 - 2.4712036e+03 -2.5357187e+03 -4.0840718e+02 - 2.5041167e+03 -2.5041167e+03 -4.0979028e+02 - 2.5357187e+03 -2.4712036e+03 -4.0840718e+02 - 2.5656298e+03 -2.4373533e+03 -4.0420339e+02 - 2.5934579e+03 -2.4029406e+03 -3.9701440e+02 - 2.6187937e+03 -2.3683462e+03 -3.8656292e+02 - 2.6412075e+03 -2.3339605e+03 -3.7245550e+02 - 2.6602501e+03 -2.3001837e+03 -3.5418096e+02 - 2.6754607e+03 -2.2674195e+03 -3.3111397e+02 - 2.6863838e+03 -2.2360622e+03 -3.0252918e+02 - 2.6925985e+03 -2.2064709e+03 -2.6763263e+02 - 2.6937634e+03 -2.1789316e+03 -2.2561797e+02 - 2.6896765e+03 -2.1536042e+03 -1.7575339e+02 - 2.6803452e+03 -2.1304604e+03 -1.1749920e+02 - 2.6660548e+03 -2.1092201e+03 -5.0645339e+01 - 2.6474151e+03 -2.0893049e+03 2.4557464e+01 - 2.6253627e+03 -2.0698287e+03 1.0731081e+02 - 2.6011034e+03 -2.0496395e+03 1.9626509e+02 - 2.5759949e+03 -2.0274164e+03 2.8961943e+02 - 2.5513942e+03 -2.0018020e+03 3.8531129e+02 - 2.5285059e+03 -1.9715395e+03 4.8124902e+02 - 2.5082699e+03 -1.9355823e+03 5.7552691e+02 - 2.4913065e+03 -1.8931550e+03 6.6657536e+02 - 2.4779194e+03 -1.8437662e+03 7.5322775e+02 - 2.4681400e+03 -1.7871819e+03 8.3471362e+02 - 2.4617909e+03 -1.7233798e+03 9.1060318e+02 - 2.4585524e+03 -1.6524976e+03 9.8073029e+02 - 2.4580196e+03 -1.5747869e+03 1.0451142e+03 - 2.4597481e+03 -1.4905751e+03 1.1038921e+03 - 2.4632852e+03 -1.4002394e+03 1.1572658e+03 - 2.4681912e+03 -1.3041875e+03 1.2054648e+03 - 2.4740522e+03 -1.2028473e+03 1.2487204e+03 - 2.4804877e+03 -1.0966599e+03 1.2872506e+03 - 2.4871532e+03 -9.8607659e+02 1.3212520e+03 - 2.4937425e+03 -8.7155728e+02 1.3508951e+03 - 2.4999874e+03 -7.5357016e+02 1.3763244e+03 - 2.5056571e+03 -6.3259143e+02 1.3976591e+03 - 2.5105578e+03 -5.0910509e+02 1.4149948e+03 - 2.5145319e+03 -3.8360251e+02 1.4284058e+03 - 2.5174573e+03 -2.5658148e+02 1.4379473e+03 - 2.5192472e+03 -1.2854506e+02 1.4436574e+03 - 2.5198496e+03 0.0000000e+00 1.4455584e+03 - 2.5457585e+03 -2.4067136e-09 1.3683999e+03 - 2.5450098e+03 1.3307263e+02 1.3666846e+03 - 2.5427800e+03 2.6563826e+02 1.3615334e+03 - 2.5391177e+03 3.9719227e+02 1.3529308e+03 - 2.5341044e+03 5.2723473e+02 1.3408492e+03 - 2.5278542e+03 6.5527234e+02 1.3252485e+03 - 2.5205145e+03 7.8081999e+02 1.3060730e+03 - 2.5122660e+03 9.0340177e+02 1.2832496e+03 - 2.5033238e+03 1.0225515e+03 1.2566843e+03 - 2.4939382e+03 1.1378124e+03 1.2262595e+03 - 2.4843957e+03 1.2487366e+03 1.1918304e+03 - 2.4750204e+03 1.3548842e+03 1.1532229e+03 - 2.4661748e+03 1.4558217e+03 1.1102323e+03 - 2.4582603e+03 1.5511220e+03 1.0626241e+03 - 2.4517161e+03 1.6403649e+03 1.0101397e+03 - 2.4470146e+03 1.7231408e+03 9.5250766e+02 - 2.4446525e+03 1.7990587e+03 8.8946496e+02 - 2.4451334e+03 1.8677617e+03 8.2079159e+02 - 2.4489390e+03 1.9289524e+03 7.4636242e+02 - 2.4564843e+03 1.9824316e+03 6.6621900e+02 - 2.4680563e+03 2.0281509e+03 5.8065982e+02 - 2.4837348e+03 2.0662778e+03 4.9033950e+02 - 2.5033082e+03 2.0972628e+03 3.9635554e+02 - 2.5262015e+03 2.1218909e+03 3.0028889e+02 - 2.5514461e+03 2.1412929e+03 2.0415974e+02 - 2.5777208e+03 2.1568921e+03 1.1027320e+02 - 2.6034741e+03 2.1702810e+03 2.0965421e+01 - 2.6271118e+03 2.1830460e+03 -6.1694117e+01 - 2.6471991e+03 2.1965852e+03 -1.3615906e+02 - 2.6626239e+03 2.2119699e+03 -2.0154799e+02 - 2.6726792e+03 2.2298794e+03 -2.5764458e+02 - 2.6770619e+03 2.2506121e+03 -3.0478249e+02 - 2.6758097e+03 2.2741495e+03 -3.4367122e+02 - 2.6692093e+03 2.3002428e+03 -3.7521846e+02 - 2.6577054e+03 2.3284973e+03 -4.0038402e+02 - 2.6418250e+03 2.3584396e+03 -4.2007802e+02 - 2.6221251e+03 2.3895651e+03 -4.3510023e+02 - 2.5991597e+03 2.4213659e+03 -4.4611016e+02 - 2.5734642e+03 2.4533446e+03 -4.5361689e+02 - 2.5455505e+03 2.4850170e+03 -4.5797925e+02 - 2.5159093e+03 2.5159093e+03 -4.5940990e+02 - 2.4850170e+03 2.5455505e+03 -4.5797925e+02 - 2.4533446e+03 2.5734642e+03 -4.5361689e+02 - 2.4213659e+03 2.5991597e+03 -4.4611016e+02 - 2.3895651e+03 2.6221251e+03 -4.3510023e+02 - 2.3584396e+03 2.6418250e+03 -4.2007802e+02 - 2.3284973e+03 2.6577054e+03 -4.0038402e+02 - 2.3002428e+03 2.6692093e+03 -3.7521846e+02 - 2.2741495e+03 2.6758097e+03 -3.4367122e+02 - 2.2506121e+03 2.6770619e+03 -3.0478249e+02 - 2.2298794e+03 2.6726792e+03 -2.5764458e+02 - 2.2119699e+03 2.6626239e+03 -2.0154799e+02 - 2.1965852e+03 2.6471991e+03 -1.3615906e+02 - 2.1830460e+03 2.6271118e+03 -6.1694117e+01 - 2.1702810e+03 2.6034741e+03 2.0965421e+01 - 2.1568921e+03 2.5777208e+03 1.1027320e+02 - 2.1412929e+03 2.5514461e+03 2.0415974e+02 - 2.1218909e+03 2.5262015e+03 3.0028889e+02 - 2.0972628e+03 2.5033082e+03 3.9635554e+02 - 2.0662778e+03 2.4837348e+03 4.9033950e+02 - 2.0281509e+03 2.4680563e+03 5.8065982e+02 - 1.9824316e+03 2.4564843e+03 6.6621900e+02 - 1.9289524e+03 2.4489390e+03 7.4636242e+02 - 1.8677617e+03 2.4451334e+03 8.2079159e+02 - 1.7990587e+03 2.4446525e+03 8.8946496e+02 - 1.7231408e+03 2.4470146e+03 9.5250766e+02 - 1.6403649e+03 2.4517161e+03 1.0101397e+03 - 1.5511220e+03 2.4582603e+03 1.0626241e+03 - 1.4558217e+03 2.4661748e+03 1.1102323e+03 - 1.3548842e+03 2.4750204e+03 1.1532229e+03 - 1.2487366e+03 2.4843957e+03 1.1918304e+03 - 1.1378124e+03 2.4939382e+03 1.2262595e+03 - 1.0225515e+03 2.5033238e+03 1.2566843e+03 - 9.0340177e+02 2.5122660e+03 1.2832496e+03 - 7.8081999e+02 2.5205145e+03 1.3060730e+03 - 6.5527234e+02 2.5278542e+03 1.3252485e+03 - 5.2723473e+02 2.5341044e+03 1.3408492e+03 - 3.9719227e+02 2.5391177e+03 1.3529308e+03 - 2.6563826e+02 2.5427800e+03 1.3615334e+03 - 1.3307263e+02 2.5450098e+03 1.3666846e+03 - 2.4067136e-09 2.5457585e+03 1.3683999e+03 - -1.3307263e+02 2.5450098e+03 1.3666846e+03 - -2.6563826e+02 2.5427800e+03 1.3615334e+03 - -3.9719227e+02 2.5391177e+03 1.3529308e+03 - -5.2723473e+02 2.5341044e+03 1.3408492e+03 - -6.5527234e+02 2.5278542e+03 1.3252485e+03 - -7.8081999e+02 2.5205145e+03 1.3060730e+03 - -9.0340177e+02 2.5122660e+03 1.2832496e+03 - -1.0225515e+03 2.5033238e+03 1.2566843e+03 - -1.1378124e+03 2.4939382e+03 1.2262595e+03 - -1.2487366e+03 2.4843957e+03 1.1918304e+03 - -1.3548842e+03 2.4750204e+03 1.1532229e+03 - -1.4558217e+03 2.4661748e+03 1.1102323e+03 - -1.5511220e+03 2.4582603e+03 1.0626241e+03 - -1.6403649e+03 2.4517161e+03 1.0101397e+03 - -1.7231408e+03 2.4470146e+03 9.5250766e+02 - -1.7990587e+03 2.4446525e+03 8.8946496e+02 - -1.8677617e+03 2.4451334e+03 8.2079159e+02 - -1.9289524e+03 2.4489390e+03 7.4636242e+02 - -1.9824316e+03 2.4564843e+03 6.6621900e+02 - -2.0281509e+03 2.4680563e+03 5.8065982e+02 - -2.0662778e+03 2.4837348e+03 4.9033950e+02 - -2.0972628e+03 2.5033082e+03 3.9635554e+02 - -2.1218909e+03 2.5262015e+03 3.0028889e+02 - -2.1412929e+03 2.5514461e+03 2.0415974e+02 - -2.1568921e+03 2.5777208e+03 1.1027320e+02 - -2.1702810e+03 2.6034741e+03 2.0965421e+01 - -2.1830460e+03 2.6271118e+03 -6.1694117e+01 - -2.1965852e+03 2.6471991e+03 -1.3615906e+02 - -2.2119699e+03 2.6626239e+03 -2.0154799e+02 - -2.2298794e+03 2.6726792e+03 -2.5764458e+02 - -2.2506121e+03 2.6770619e+03 -3.0478249e+02 - -2.2741495e+03 2.6758097e+03 -3.4367122e+02 - -2.3002428e+03 2.6692093e+03 -3.7521846e+02 - -2.3284973e+03 2.6577054e+03 -4.0038402e+02 - -2.3584396e+03 2.6418250e+03 -4.2007802e+02 - -2.3895651e+03 2.6221251e+03 -4.3510023e+02 - -2.4213659e+03 2.5991597e+03 -4.4611016e+02 - -2.4533446e+03 2.5734642e+03 -4.5361689e+02 - -2.4850170e+03 2.5455505e+03 -4.5797925e+02 - -2.5159093e+03 2.5159093e+03 -4.5940990e+02 - -2.5455505e+03 2.4850170e+03 -4.5797925e+02 - -2.5734642e+03 2.4533446e+03 -4.5361689e+02 - -2.5991597e+03 2.4213659e+03 -4.4611016e+02 - -2.6221251e+03 2.3895651e+03 -4.3510023e+02 - -2.6418250e+03 2.3584396e+03 -4.2007802e+02 - -2.6577054e+03 2.3284973e+03 -4.0038402e+02 - -2.6692093e+03 2.3002428e+03 -3.7521846e+02 - -2.6758097e+03 2.2741495e+03 -3.4367122e+02 - -2.6770619e+03 2.2506121e+03 -3.0478249e+02 - -2.6726792e+03 2.2298794e+03 -2.5764458e+02 - -2.6626239e+03 2.2119699e+03 -2.0154799e+02 - -2.6471991e+03 2.1965852e+03 -1.3615906e+02 - -2.6271118e+03 2.1830460e+03 -6.1694117e+01 - -2.6034741e+03 2.1702810e+03 2.0965421e+01 - -2.5777208e+03 2.1568921e+03 1.1027320e+02 - -2.5514461e+03 2.1412929e+03 2.0415974e+02 - -2.5262015e+03 2.1218909e+03 3.0028889e+02 - -2.5033082e+03 2.0972628e+03 3.9635554e+02 - -2.4837348e+03 2.0662778e+03 4.9033950e+02 - -2.4680563e+03 2.0281509e+03 5.8065982e+02 - -2.4564843e+03 1.9824316e+03 6.6621900e+02 - -2.4489390e+03 1.9289524e+03 7.4636242e+02 - -2.4451334e+03 1.8677617e+03 8.2079159e+02 - -2.4446525e+03 1.7990587e+03 8.8946496e+02 - -2.4470146e+03 1.7231408e+03 9.5250766e+02 - -2.4517161e+03 1.6403649e+03 1.0101397e+03 - -2.4582603e+03 1.5511220e+03 1.0626241e+03 - -2.4661748e+03 1.4558217e+03 1.1102323e+03 - -2.4750204e+03 1.3548842e+03 1.1532229e+03 - -2.4843957e+03 1.2487366e+03 1.1918304e+03 - -2.4939382e+03 1.1378124e+03 1.2262595e+03 - -2.5033238e+03 1.0225515e+03 1.2566843e+03 - -2.5122660e+03 9.0340177e+02 1.2832496e+03 - -2.5205145e+03 7.8081999e+02 1.3060730e+03 - -2.5278542e+03 6.5527234e+02 1.3252485e+03 - -2.5341044e+03 5.2723473e+02 1.3408492e+03 - -2.5391177e+03 3.9719227e+02 1.3529308e+03 - -2.5427800e+03 2.6563826e+02 1.3615334e+03 - -2.5450098e+03 1.3307263e+02 1.3666846e+03 - -2.5457585e+03 2.4067136e-09 1.3683999e+03 - -2.5450098e+03 -1.3307263e+02 1.3666846e+03 - -2.5427800e+03 -2.6563826e+02 1.3615334e+03 - -2.5391177e+03 -3.9719227e+02 1.3529308e+03 - -2.5341044e+03 -5.2723473e+02 1.3408492e+03 - -2.5278542e+03 -6.5527234e+02 1.3252485e+03 - -2.5205145e+03 -7.8081999e+02 1.3060730e+03 - -2.5122660e+03 -9.0340177e+02 1.2832496e+03 - -2.5033238e+03 -1.0225515e+03 1.2566843e+03 - -2.4939382e+03 -1.1378124e+03 1.2262595e+03 - -2.4843957e+03 -1.2487366e+03 1.1918304e+03 - -2.4750204e+03 -1.3548842e+03 1.1532229e+03 - -2.4661748e+03 -1.4558217e+03 1.1102323e+03 - -2.4582603e+03 -1.5511220e+03 1.0626241e+03 - -2.4517161e+03 -1.6403649e+03 1.0101397e+03 - -2.4470146e+03 -1.7231408e+03 9.5250766e+02 - -2.4446525e+03 -1.7990587e+03 8.8946496e+02 - -2.4451334e+03 -1.8677617e+03 8.2079159e+02 - -2.4489390e+03 -1.9289524e+03 7.4636242e+02 - -2.4564843e+03 -1.9824316e+03 6.6621900e+02 - -2.4680563e+03 -2.0281509e+03 5.8065982e+02 - -2.4837348e+03 -2.0662778e+03 4.9033950e+02 - -2.5033082e+03 -2.0972628e+03 3.9635554e+02 - -2.5262015e+03 -2.1218909e+03 3.0028889e+02 - -2.5514461e+03 -2.1412929e+03 2.0415974e+02 - -2.5777208e+03 -2.1568921e+03 1.1027320e+02 - -2.6034741e+03 -2.1702810e+03 2.0965421e+01 - -2.6271118e+03 -2.1830460e+03 -6.1694117e+01 - -2.6471991e+03 -2.1965852e+03 -1.3615906e+02 - -2.6626239e+03 -2.2119699e+03 -2.0154799e+02 - -2.6726792e+03 -2.2298794e+03 -2.5764458e+02 - -2.6770619e+03 -2.2506121e+03 -3.0478249e+02 - -2.6758097e+03 -2.2741495e+03 -3.4367122e+02 - -2.6692093e+03 -2.3002428e+03 -3.7521846e+02 - -2.6577054e+03 -2.3284973e+03 -4.0038402e+02 - -2.6418250e+03 -2.3584396e+03 -4.2007802e+02 - -2.6221251e+03 -2.3895651e+03 -4.3510023e+02 - -2.5991597e+03 -2.4213659e+03 -4.4611016e+02 - -2.5734642e+03 -2.4533446e+03 -4.5361689e+02 - -2.5455505e+03 -2.4850170e+03 -4.5797925e+02 - -2.5159093e+03 -2.5159093e+03 -4.5940990e+02 - -2.4850170e+03 -2.5455505e+03 -4.5797925e+02 - -2.4533446e+03 -2.5734642e+03 -4.5361689e+02 - -2.4213659e+03 -2.5991597e+03 -4.4611016e+02 - -2.3895651e+03 -2.6221251e+03 -4.3510023e+02 - -2.3584396e+03 -2.6418250e+03 -4.2007802e+02 - -2.3284973e+03 -2.6577054e+03 -4.0038402e+02 - -2.3002428e+03 -2.6692093e+03 -3.7521846e+02 - -2.2741495e+03 -2.6758097e+03 -3.4367122e+02 - -2.2506121e+03 -2.6770619e+03 -3.0478249e+02 - -2.2298794e+03 -2.6726792e+03 -2.5764458e+02 - -2.2119699e+03 -2.6626239e+03 -2.0154799e+02 - -2.1965852e+03 -2.6471991e+03 -1.3615906e+02 - -2.1830460e+03 -2.6271118e+03 -6.1694117e+01 - -2.1702810e+03 -2.6034741e+03 2.0965421e+01 - -2.1568921e+03 -2.5777208e+03 1.1027320e+02 - -2.1412929e+03 -2.5514461e+03 2.0415974e+02 - -2.1218909e+03 -2.5262015e+03 3.0028889e+02 - -2.0972628e+03 -2.5033082e+03 3.9635554e+02 - -2.0662778e+03 -2.4837348e+03 4.9033950e+02 - -2.0281509e+03 -2.4680563e+03 5.8065982e+02 - -1.9824316e+03 -2.4564843e+03 6.6621900e+02 - -1.9289524e+03 -2.4489390e+03 7.4636242e+02 - -1.8677617e+03 -2.4451334e+03 8.2079159e+02 - -1.7990587e+03 -2.4446525e+03 8.8946496e+02 - -1.7231408e+03 -2.4470146e+03 9.5250766e+02 - -1.6403649e+03 -2.4517161e+03 1.0101397e+03 - -1.5511220e+03 -2.4582603e+03 1.0626241e+03 - -1.4558217e+03 -2.4661748e+03 1.1102323e+03 - -1.3548842e+03 -2.4750204e+03 1.1532229e+03 - -1.2487366e+03 -2.4843957e+03 1.1918304e+03 - -1.1378124e+03 -2.4939382e+03 1.2262595e+03 - -1.0225515e+03 -2.5033238e+03 1.2566843e+03 - -9.0340177e+02 -2.5122660e+03 1.2832496e+03 - -7.8081999e+02 -2.5205145e+03 1.3060730e+03 - -6.5527234e+02 -2.5278542e+03 1.3252485e+03 - -5.2723473e+02 -2.5341044e+03 1.3408492e+03 - -3.9719227e+02 -2.5391177e+03 1.3529308e+03 - -2.6563826e+02 -2.5427800e+03 1.3615334e+03 - -1.3307263e+02 -2.5450098e+03 1.3666846e+03 - 0.0000000e+00 -2.5457585e+03 1.3683999e+03 - 1.3307263e+02 -2.5450098e+03 1.3666846e+03 - 2.6563826e+02 -2.5427800e+03 1.3615334e+03 - 3.9719227e+02 -2.5391177e+03 1.3529308e+03 - 5.2723473e+02 -2.5341044e+03 1.3408492e+03 - 6.5527234e+02 -2.5278542e+03 1.3252485e+03 - 7.8081999e+02 -2.5205145e+03 1.3060730e+03 - 9.0340177e+02 -2.5122660e+03 1.2832496e+03 - 1.0225515e+03 -2.5033238e+03 1.2566843e+03 - 1.1378124e+03 -2.4939382e+03 1.2262595e+03 - 1.2487366e+03 -2.4843957e+03 1.1918304e+03 - 1.3548842e+03 -2.4750204e+03 1.1532229e+03 - 1.4558217e+03 -2.4661748e+03 1.1102323e+03 - 1.5511220e+03 -2.4582603e+03 1.0626241e+03 - 1.6403649e+03 -2.4517161e+03 1.0101397e+03 - 1.7231408e+03 -2.4470146e+03 9.5250766e+02 - 1.7990587e+03 -2.4446525e+03 8.8946496e+02 - 1.8677617e+03 -2.4451334e+03 8.2079159e+02 - 1.9289524e+03 -2.4489390e+03 7.4636242e+02 - 1.9824316e+03 -2.4564843e+03 6.6621900e+02 - 2.0281509e+03 -2.4680563e+03 5.8065982e+02 - 2.0662778e+03 -2.4837348e+03 4.9033950e+02 - 2.0972628e+03 -2.5033082e+03 3.9635554e+02 - 2.1218909e+03 -2.5262015e+03 3.0028889e+02 - 2.1412929e+03 -2.5514461e+03 2.0415974e+02 - 2.1568921e+03 -2.5777208e+03 1.1027320e+02 - 2.1702810e+03 -2.6034741e+03 2.0965421e+01 - 2.1830460e+03 -2.6271118e+03 -6.1694117e+01 - 2.1965852e+03 -2.6471991e+03 -1.3615906e+02 - 2.2119699e+03 -2.6626239e+03 -2.0154799e+02 - 2.2298794e+03 -2.6726792e+03 -2.5764458e+02 - 2.2506121e+03 -2.6770619e+03 -3.0478249e+02 - 2.2741495e+03 -2.6758097e+03 -3.4367122e+02 - 2.3002428e+03 -2.6692093e+03 -3.7521846e+02 - 2.3284973e+03 -2.6577054e+03 -4.0038402e+02 - 2.3584396e+03 -2.6418250e+03 -4.2007802e+02 - 2.3895651e+03 -2.6221251e+03 -4.3510023e+02 - 2.4213659e+03 -2.5991597e+03 -4.4611016e+02 - 2.4533446e+03 -2.5734642e+03 -4.5361689e+02 - 2.4850170e+03 -2.5455505e+03 -4.5797925e+02 - 2.5159093e+03 -2.5159093e+03 -4.5940990e+02 - 2.5455505e+03 -2.4850170e+03 -4.5797925e+02 - 2.5734642e+03 -2.4533446e+03 -4.5361689e+02 - 2.5991597e+03 -2.4213659e+03 -4.4611016e+02 - 2.6221251e+03 -2.3895651e+03 -4.3510023e+02 - 2.6418250e+03 -2.3584396e+03 -4.2007802e+02 - 2.6577054e+03 -2.3284973e+03 -4.0038402e+02 - 2.6692093e+03 -2.3002428e+03 -3.7521846e+02 - 2.6758097e+03 -2.2741495e+03 -3.4367122e+02 - 2.6770619e+03 -2.2506121e+03 -3.0478249e+02 - 2.6726792e+03 -2.2298794e+03 -2.5764458e+02 - 2.6626239e+03 -2.2119699e+03 -2.0154799e+02 - 2.6471991e+03 -2.1965852e+03 -1.3615906e+02 - 2.6271118e+03 -2.1830460e+03 -6.1694117e+01 - 2.6034741e+03 -2.1702810e+03 2.0965421e+01 - 2.5777208e+03 -2.1568921e+03 1.1027320e+02 - 2.5514461e+03 -2.1412929e+03 2.0415974e+02 - 2.5262015e+03 -2.1218909e+03 3.0028889e+02 - 2.5033082e+03 -2.0972628e+03 3.9635554e+02 - 2.4837348e+03 -2.0662778e+03 4.9033950e+02 - 2.4680563e+03 -2.0281509e+03 5.8065982e+02 - 2.4564843e+03 -1.9824316e+03 6.6621900e+02 - 2.4489390e+03 -1.9289524e+03 7.4636242e+02 - 2.4451334e+03 -1.8677617e+03 8.2079159e+02 - 2.4446525e+03 -1.7990587e+03 8.8946496e+02 - 2.4470146e+03 -1.7231408e+03 9.5250766e+02 - 2.4517161e+03 -1.6403649e+03 1.0101397e+03 - 2.4582603e+03 -1.5511220e+03 1.0626241e+03 - 2.4661748e+03 -1.4558217e+03 1.1102323e+03 - 2.4750204e+03 -1.3548842e+03 1.1532229e+03 - 2.4843957e+03 -1.2487366e+03 1.1918304e+03 - 2.4939382e+03 -1.1378124e+03 1.2262595e+03 - 2.5033238e+03 -1.0225515e+03 1.2566843e+03 - 2.5122660e+03 -9.0340177e+02 1.2832496e+03 - 2.5205145e+03 -7.8081999e+02 1.3060730e+03 - 2.5278542e+03 -6.5527234e+02 1.3252485e+03 - 2.5341044e+03 -5.2723473e+02 1.3408492e+03 - 2.5391177e+03 -3.9719227e+02 1.3529308e+03 - 2.5427800e+03 -2.6563826e+02 1.3615334e+03 - 2.5450098e+03 -1.3307263e+02 1.3666846e+03 - 2.5457585e+03 -2.4067136e-09 1.3683999e+03 - 2.5704090e+03 0.0000000e+00 1.2899155e+03 - 2.5695341e+03 1.3714324e+02 1.2883626e+03 - 2.5669247e+03 2.7377840e+02 1.2837004e+03 - 2.5626274e+03 4.0940031e+02 1.2759188e+03 - 2.5567194e+03 5.4350955e+02 1.2649996e+03 - 2.5493091e+03 6.7561483e+02 1.2509156e+03 - 2.5405356e+03 8.0523499e+02 1.2336282e+03 - 2.5305692e+03 9.3190046e+02 1.2130847e+03 - 2.5196120e+03 1.0551539e+03 1.1892158e+03 - 2.5078979e+03 1.1745500e+03 1.1619313e+03 - 2.4956945e+03 1.2896551e+03 1.1311166e+03 - 2.4833041e+03 1.4000450e+03 1.0966289e+03 - 2.4710653e+03 1.5053031e+03 1.0582928e+03 - 2.4593558e+03 1.6050177e+03 1.0158976e+03 - 2.4485934e+03 1.6987797e+03 9.6919633e+02 - 2.4392375e+03 1.7861807e+03 9.1790739e+02 - 2.4317879e+03 1.8668140e+03 8.6172254e+02 - 2.4267788e+03 1.9402792e+03 8.0032362e+02 - 2.4247662e+03 2.0061941e+03 7.3341296e+02 - 2.4263032e+03 2.0642175e+03 6.6076300e+02 - 2.4318970e+03 2.1140874e+03 5.8229032e+02 - 2.4419447e+03 2.1556790e+03 4.9815640e+02 - 2.4566437e+03 2.1890818e+03 4.0888933e+02 - 2.4758841e+03 2.2146904e+03 3.1550576e+02 - 2.4991440e+03 2.2332877e+03 2.1959325e+02 - 2.5254245e+03 2.2460872e+03 1.2329814e+02 - 2.5532680e+03 2.2546971e+03 2.9171649e+01 - 2.5808902e+03 2.2609814e+03 -6.0130456e+01 - 2.6064125e+03 2.2668373e+03 -1.4222979e+02 - 2.6281318e+03 2.2739468e+03 -2.1536993e+02 - 2.6447432e+03 2.2835799e+03 -2.7860990e+02 - 2.6554535e+03 2.2965030e+03 -3.3182097e+02 - 2.6599747e+03 2.3129967e+03 -3.7552479e+02 - 2.6584336e+03 2.3329487e+03 -4.1065759e+02 - 2.6512459e+03 2.3559740e+03 -4.3834043e+02 - 2.6389978e+03 2.3815270e+03 -4.5970158e+02 - 2.6223537e+03 2.4089865e+03 -4.7576242e+02 - 2.6019962e+03 2.4377099e+03 -4.8737691e+02 - 2.5785941e+03 2.4670623e+03 -4.9520756e+02 - 2.5527898e+03 2.4964265e+03 -4.9972164e+02 - 2.5252006e+03 2.5252006e+03 -5.0119584e+02 - 2.4964265e+03 2.5527898e+03 -4.9972164e+02 - 2.4670623e+03 2.5785941e+03 -4.9520756e+02 - 2.4377099e+03 2.6019962e+03 -4.8737691e+02 - 2.4089865e+03 2.6223537e+03 -4.7576242e+02 - 2.3815270e+03 2.6389978e+03 -4.5970158e+02 - 2.3559740e+03 2.6512459e+03 -4.3834043e+02 - 2.3329487e+03 2.6584336e+03 -4.1065759e+02 - 2.3129967e+03 2.6599747e+03 -3.7552479e+02 - 2.2965030e+03 2.6554535e+03 -3.3182097e+02 - 2.2835799e+03 2.6447432e+03 -2.7860990e+02 - 2.2739468e+03 2.6281318e+03 -2.1536993e+02 - 2.2668373e+03 2.6064125e+03 -1.4222979e+02 - 2.2609814e+03 2.5808902e+03 -6.0130456e+01 - 2.2546971e+03 2.5532680e+03 2.9171649e+01 - 2.2460872e+03 2.5254245e+03 1.2329814e+02 - 2.2332877e+03 2.4991440e+03 2.1959325e+02 - 2.2146904e+03 2.4758841e+03 3.1550576e+02 - 2.1890818e+03 2.4566437e+03 4.0888933e+02 - 2.1556790e+03 2.4419447e+03 4.9815640e+02 - 2.1140874e+03 2.4318970e+03 5.8229032e+02 - 2.0642175e+03 2.4263032e+03 6.6076300e+02 - 2.0061941e+03 2.4247662e+03 7.3341296e+02 - 1.9402792e+03 2.4267788e+03 8.0032362e+02 - 1.8668140e+03 2.4317879e+03 8.6172254e+02 - 1.7861807e+03 2.4392375e+03 9.1790739e+02 - 1.6987797e+03 2.4485934e+03 9.6919633e+02 - 1.6050177e+03 2.4593558e+03 1.0158976e+03 - 1.5053031e+03 2.4710653e+03 1.0582928e+03 - 1.4000450e+03 2.4833041e+03 1.0966289e+03 - 1.2896551e+03 2.4956945e+03 1.1311166e+03 - 1.1745500e+03 2.5078979e+03 1.1619313e+03 - 1.0551539e+03 2.5196120e+03 1.1892158e+03 - 9.3190046e+02 2.5305692e+03 1.2130847e+03 - 8.0523499e+02 2.5405356e+03 1.2336282e+03 - 6.7561483e+02 2.5493091e+03 1.2509156e+03 - 5.4350955e+02 2.5567194e+03 1.2649996e+03 - 4.0940031e+02 2.5626274e+03 1.2759188e+03 - 2.7377840e+02 2.5669247e+03 1.2837004e+03 - 1.3714324e+02 2.5695341e+03 1.2883626e+03 - -2.4067136e-09 2.5704090e+03 1.2899155e+03 - -1.3714324e+02 2.5695341e+03 1.2883626e+03 - -2.7377840e+02 2.5669247e+03 1.2837004e+03 - -4.0940031e+02 2.5626274e+03 1.2759188e+03 - -5.4350955e+02 2.5567194e+03 1.2649996e+03 - -6.7561483e+02 2.5493091e+03 1.2509156e+03 - -8.0523499e+02 2.5405356e+03 1.2336282e+03 - -9.3190046e+02 2.5305692e+03 1.2130847e+03 - -1.0551539e+03 2.5196120e+03 1.1892158e+03 - -1.1745500e+03 2.5078979e+03 1.1619313e+03 - -1.2896551e+03 2.4956945e+03 1.1311166e+03 - -1.4000450e+03 2.4833041e+03 1.0966289e+03 - -1.5053031e+03 2.4710653e+03 1.0582928e+03 - -1.6050177e+03 2.4593558e+03 1.0158976e+03 - -1.6987797e+03 2.4485934e+03 9.6919633e+02 - -1.7861807e+03 2.4392375e+03 9.1790739e+02 - -1.8668140e+03 2.4317879e+03 8.6172254e+02 - -1.9402792e+03 2.4267788e+03 8.0032362e+02 - -2.0061941e+03 2.4247662e+03 7.3341296e+02 - -2.0642175e+03 2.4263032e+03 6.6076300e+02 - -2.1140874e+03 2.4318970e+03 5.8229032e+02 - -2.1556790e+03 2.4419447e+03 4.9815640e+02 - -2.1890818e+03 2.4566437e+03 4.0888933e+02 - -2.2146904e+03 2.4758841e+03 3.1550576e+02 - -2.2332877e+03 2.4991440e+03 2.1959325e+02 - -2.2460872e+03 2.5254245e+03 1.2329814e+02 - -2.2546971e+03 2.5532680e+03 2.9171649e+01 - -2.2609814e+03 2.5808902e+03 -6.0130456e+01 - -2.2668373e+03 2.6064125e+03 -1.4222979e+02 - -2.2739468e+03 2.6281318e+03 -2.1536993e+02 - -2.2835799e+03 2.6447432e+03 -2.7860990e+02 - -2.2965030e+03 2.6554535e+03 -3.3182097e+02 - -2.3129967e+03 2.6599747e+03 -3.7552479e+02 - -2.3329487e+03 2.6584336e+03 -4.1065759e+02 - -2.3559740e+03 2.6512459e+03 -4.3834043e+02 - -2.3815270e+03 2.6389978e+03 -4.5970158e+02 - -2.4089865e+03 2.6223537e+03 -4.7576242e+02 - -2.4377099e+03 2.6019962e+03 -4.8737691e+02 - -2.4670623e+03 2.5785941e+03 -4.9520756e+02 - -2.4964265e+03 2.5527898e+03 -4.9972164e+02 - -2.5252006e+03 2.5252006e+03 -5.0119584e+02 - -2.5527898e+03 2.4964265e+03 -4.9972164e+02 - -2.5785941e+03 2.4670623e+03 -4.9520756e+02 - -2.6019962e+03 2.4377099e+03 -4.8737691e+02 - -2.6223537e+03 2.4089865e+03 -4.7576242e+02 - -2.6389978e+03 2.3815270e+03 -4.5970158e+02 - -2.6512459e+03 2.3559740e+03 -4.3834043e+02 - -2.6584336e+03 2.3329487e+03 -4.1065759e+02 - -2.6599747e+03 2.3129967e+03 -3.7552479e+02 - -2.6554535e+03 2.2965030e+03 -3.3182097e+02 - -2.6447432e+03 2.2835799e+03 -2.7860990e+02 - -2.6281318e+03 2.2739468e+03 -2.1536993e+02 - -2.6064125e+03 2.2668373e+03 -1.4222979e+02 - -2.5808902e+03 2.2609814e+03 -6.0130456e+01 - -2.5532680e+03 2.2546971e+03 2.9171649e+01 - -2.5254245e+03 2.2460872e+03 1.2329814e+02 - -2.4991440e+03 2.2332877e+03 2.1959325e+02 - -2.4758841e+03 2.2146904e+03 3.1550576e+02 - -2.4566437e+03 2.1890818e+03 4.0888933e+02 - -2.4419447e+03 2.1556790e+03 4.9815640e+02 - -2.4318970e+03 2.1140874e+03 5.8229032e+02 - -2.4263032e+03 2.0642175e+03 6.6076300e+02 - -2.4247662e+03 2.0061941e+03 7.3341296e+02 - -2.4267788e+03 1.9402792e+03 8.0032362e+02 - -2.4317879e+03 1.8668140e+03 8.6172254e+02 - -2.4392375e+03 1.7861807e+03 9.1790739e+02 - -2.4485934e+03 1.6987797e+03 9.6919633e+02 - -2.4593558e+03 1.6050177e+03 1.0158976e+03 - -2.4710653e+03 1.5053031e+03 1.0582928e+03 - -2.4833041e+03 1.4000450e+03 1.0966289e+03 - -2.4956945e+03 1.2896551e+03 1.1311166e+03 - -2.5078979e+03 1.1745500e+03 1.1619313e+03 - -2.5196120e+03 1.0551539e+03 1.1892158e+03 - -2.5305692e+03 9.3190046e+02 1.2130847e+03 - -2.5405356e+03 8.0523499e+02 1.2336282e+03 - -2.5493091e+03 6.7561483e+02 1.2509156e+03 - -2.5567194e+03 5.4350955e+02 1.2649996e+03 - -2.5626274e+03 4.0940031e+02 1.2759188e+03 - -2.5669247e+03 2.7377840e+02 1.2837004e+03 - -2.5695341e+03 1.3714324e+02 1.2883626e+03 - -2.5704090e+03 -2.4067136e-09 1.2899155e+03 - -2.5695341e+03 -1.3714324e+02 1.2883626e+03 - -2.5669247e+03 -2.7377840e+02 1.2837004e+03 - -2.5626274e+03 -4.0940031e+02 1.2759188e+03 - -2.5567194e+03 -5.4350955e+02 1.2649996e+03 - -2.5493091e+03 -6.7561483e+02 1.2509156e+03 - -2.5405356e+03 -8.0523499e+02 1.2336282e+03 - -2.5305692e+03 -9.3190046e+02 1.2130847e+03 - -2.5196120e+03 -1.0551539e+03 1.1892158e+03 - -2.5078979e+03 -1.1745500e+03 1.1619313e+03 - -2.4956945e+03 -1.2896551e+03 1.1311166e+03 - -2.4833041e+03 -1.4000450e+03 1.0966289e+03 - -2.4710653e+03 -1.5053031e+03 1.0582928e+03 - -2.4593558e+03 -1.6050177e+03 1.0158976e+03 - -2.4485934e+03 -1.6987797e+03 9.6919633e+02 - -2.4392375e+03 -1.7861807e+03 9.1790739e+02 - -2.4317879e+03 -1.8668140e+03 8.6172254e+02 - -2.4267788e+03 -1.9402792e+03 8.0032362e+02 - -2.4247662e+03 -2.0061941e+03 7.3341296e+02 - -2.4263032e+03 -2.0642175e+03 6.6076300e+02 - -2.4318970e+03 -2.1140874e+03 5.8229032e+02 - -2.4419447e+03 -2.1556790e+03 4.9815640e+02 - -2.4566437e+03 -2.1890818e+03 4.0888933e+02 - -2.4758841e+03 -2.2146904e+03 3.1550576e+02 - -2.4991440e+03 -2.2332877e+03 2.1959325e+02 - -2.5254245e+03 -2.2460872e+03 1.2329814e+02 - -2.5532680e+03 -2.2546971e+03 2.9171649e+01 - -2.5808902e+03 -2.2609814e+03 -6.0130456e+01 - -2.6064125e+03 -2.2668373e+03 -1.4222979e+02 - -2.6281318e+03 -2.2739468e+03 -2.1536993e+02 - -2.6447432e+03 -2.2835799e+03 -2.7860990e+02 - -2.6554535e+03 -2.2965030e+03 -3.3182097e+02 - -2.6599747e+03 -2.3129967e+03 -3.7552479e+02 - -2.6584336e+03 -2.3329487e+03 -4.1065759e+02 - -2.6512459e+03 -2.3559740e+03 -4.3834043e+02 - -2.6389978e+03 -2.3815270e+03 -4.5970158e+02 - -2.6223537e+03 -2.4089865e+03 -4.7576242e+02 - -2.6019962e+03 -2.4377099e+03 -4.8737691e+02 - -2.5785941e+03 -2.4670623e+03 -4.9520756e+02 - -2.5527898e+03 -2.4964265e+03 -4.9972164e+02 - -2.5252006e+03 -2.5252006e+03 -5.0119584e+02 - -2.4964265e+03 -2.5527898e+03 -4.9972164e+02 - -2.4670623e+03 -2.5785941e+03 -4.9520756e+02 - -2.4377099e+03 -2.6019962e+03 -4.8737691e+02 - -2.4089865e+03 -2.6223537e+03 -4.7576242e+02 - -2.3815270e+03 -2.6389978e+03 -4.5970158e+02 - -2.3559740e+03 -2.6512459e+03 -4.3834043e+02 - -2.3329487e+03 -2.6584336e+03 -4.1065759e+02 - -2.3129967e+03 -2.6599747e+03 -3.7552479e+02 - -2.2965030e+03 -2.6554535e+03 -3.3182097e+02 - -2.2835799e+03 -2.6447432e+03 -2.7860990e+02 - -2.2739468e+03 -2.6281318e+03 -2.1536993e+02 - -2.2668373e+03 -2.6064125e+03 -1.4222979e+02 - -2.2609814e+03 -2.5808902e+03 -6.0130456e+01 - -2.2546971e+03 -2.5532680e+03 2.9171649e+01 - -2.2460872e+03 -2.5254245e+03 1.2329814e+02 - -2.2332877e+03 -2.4991440e+03 2.1959325e+02 - -2.2146904e+03 -2.4758841e+03 3.1550576e+02 - -2.1890818e+03 -2.4566437e+03 4.0888933e+02 - -2.1556790e+03 -2.4419447e+03 4.9815640e+02 - -2.1140874e+03 -2.4318970e+03 5.8229032e+02 - -2.0642175e+03 -2.4263032e+03 6.6076300e+02 - -2.0061941e+03 -2.4247662e+03 7.3341296e+02 - -1.9402792e+03 -2.4267788e+03 8.0032362e+02 - -1.8668140e+03 -2.4317879e+03 8.6172254e+02 - -1.7861807e+03 -2.4392375e+03 9.1790739e+02 - -1.6987797e+03 -2.4485934e+03 9.6919633e+02 - -1.6050177e+03 -2.4593558e+03 1.0158976e+03 - -1.5053031e+03 -2.4710653e+03 1.0582928e+03 - -1.4000450e+03 -2.4833041e+03 1.0966289e+03 - -1.2896551e+03 -2.4956945e+03 1.1311166e+03 - -1.1745500e+03 -2.5078979e+03 1.1619313e+03 - -1.0551539e+03 -2.5196120e+03 1.1892158e+03 - -9.3190046e+02 -2.5305692e+03 1.2130847e+03 - -8.0523499e+02 -2.5405356e+03 1.2336282e+03 - -6.7561483e+02 -2.5493091e+03 1.2509156e+03 - -5.4350955e+02 -2.5567194e+03 1.2649996e+03 - -4.0940031e+02 -2.5626274e+03 1.2759188e+03 - -2.7377840e+02 -2.5669247e+03 1.2837004e+03 - -1.3714324e+02 -2.5695341e+03 1.2883626e+03 - -2.4067136e-09 -2.5704090e+03 1.2899155e+03 - 1.3714324e+02 -2.5695341e+03 1.2883626e+03 - 2.7377840e+02 -2.5669247e+03 1.2837004e+03 - 4.0940031e+02 -2.5626274e+03 1.2759188e+03 - 5.4350955e+02 -2.5567194e+03 1.2649996e+03 - 6.7561483e+02 -2.5493091e+03 1.2509156e+03 - 8.0523499e+02 -2.5405356e+03 1.2336282e+03 - 9.3190046e+02 -2.5305692e+03 1.2130847e+03 - 1.0551539e+03 -2.5196120e+03 1.1892158e+03 - 1.1745500e+03 -2.5078979e+03 1.1619313e+03 - 1.2896551e+03 -2.4956945e+03 1.1311166e+03 - 1.4000450e+03 -2.4833041e+03 1.0966289e+03 - 1.5053031e+03 -2.4710653e+03 1.0582928e+03 - 1.6050177e+03 -2.4593558e+03 1.0158976e+03 - 1.6987797e+03 -2.4485934e+03 9.6919633e+02 - 1.7861807e+03 -2.4392375e+03 9.1790739e+02 - 1.8668140e+03 -2.4317879e+03 8.6172254e+02 - 1.9402792e+03 -2.4267788e+03 8.0032362e+02 - 2.0061941e+03 -2.4247662e+03 7.3341296e+02 - 2.0642175e+03 -2.4263032e+03 6.6076300e+02 - 2.1140874e+03 -2.4318970e+03 5.8229032e+02 - 2.1556790e+03 -2.4419447e+03 4.9815640e+02 - 2.1890818e+03 -2.4566437e+03 4.0888933e+02 - 2.2146904e+03 -2.4758841e+03 3.1550576e+02 - 2.2332877e+03 -2.4991440e+03 2.1959325e+02 - 2.2460872e+03 -2.5254245e+03 1.2329814e+02 - 2.2546971e+03 -2.5532680e+03 2.9171649e+01 - 2.2609814e+03 -2.5808902e+03 -6.0130456e+01 - 2.2668373e+03 -2.6064125e+03 -1.4222979e+02 - 2.2739468e+03 -2.6281318e+03 -2.1536993e+02 - 2.2835799e+03 -2.6447432e+03 -2.7860990e+02 - 2.2965030e+03 -2.6554535e+03 -3.3182097e+02 - 2.3129967e+03 -2.6599747e+03 -3.7552479e+02 - 2.3329487e+03 -2.6584336e+03 -4.1065759e+02 - 2.3559740e+03 -2.6512459e+03 -4.3834043e+02 - 2.3815270e+03 -2.6389978e+03 -4.5970158e+02 - 2.4089865e+03 -2.6223537e+03 -4.7576242e+02 - 2.4377099e+03 -2.6019962e+03 -4.8737691e+02 - 2.4670623e+03 -2.5785941e+03 -4.9520756e+02 - 2.4964265e+03 -2.5527898e+03 -4.9972164e+02 - 2.5252006e+03 -2.5252006e+03 -5.0119584e+02 - 2.5527898e+03 -2.4964265e+03 -4.9972164e+02 - 2.5785941e+03 -2.4670623e+03 -4.9520756e+02 - 2.6019962e+03 -2.4377099e+03 -4.8737691e+02 - 2.6223537e+03 -2.4089865e+03 -4.7576242e+02 - 2.6389978e+03 -2.3815270e+03 -4.5970158e+02 - 2.6512459e+03 -2.3559740e+03 -4.3834043e+02 - 2.6584336e+03 -2.3329487e+03 -4.1065759e+02 - 2.6599747e+03 -2.3129967e+03 -3.7552479e+02 - 2.6554535e+03 -2.2965030e+03 -3.3182097e+02 - 2.6447432e+03 -2.2835799e+03 -2.7860990e+02 - 2.6281318e+03 -2.2739468e+03 -2.1536993e+02 - 2.6064125e+03 -2.2668373e+03 -1.4222979e+02 - 2.5808902e+03 -2.2609814e+03 -6.0130456e+01 - 2.5532680e+03 -2.2546971e+03 2.9171649e+01 - 2.5254245e+03 -2.2460872e+03 1.2329814e+02 - 2.4991440e+03 -2.2332877e+03 2.1959325e+02 - 2.4758841e+03 -2.2146904e+03 3.1550576e+02 - 2.4566437e+03 -2.1890818e+03 4.0888933e+02 - 2.4419447e+03 -2.1556790e+03 4.9815640e+02 - 2.4318970e+03 -2.1140874e+03 5.8229032e+02 - 2.4263032e+03 -2.0642175e+03 6.6076300e+02 - 2.4247662e+03 -2.0061941e+03 7.3341296e+02 - 2.4267788e+03 -1.9402792e+03 8.0032362e+02 - 2.4317879e+03 -1.8668140e+03 8.6172254e+02 - 2.4392375e+03 -1.7861807e+03 9.1790739e+02 - 2.4485934e+03 -1.6987797e+03 9.6919633e+02 - 2.4593558e+03 -1.6050177e+03 1.0158976e+03 - 2.4710653e+03 -1.5053031e+03 1.0582928e+03 - 2.4833041e+03 -1.4000450e+03 1.0966289e+03 - 2.4956945e+03 -1.2896551e+03 1.1311166e+03 - 2.5078979e+03 -1.1745500e+03 1.1619313e+03 - 2.5196120e+03 -1.0551539e+03 1.1892158e+03 - 2.5305692e+03 -9.3190046e+02 1.2130847e+03 - 2.5405356e+03 -8.0523499e+02 1.2336282e+03 - 2.5493091e+03 -6.7561483e+02 1.2509156e+03 - 2.5567194e+03 -5.4350955e+02 1.2649996e+03 - 2.5626274e+03 -4.0940031e+02 1.2759188e+03 - 2.5669247e+03 -2.7377840e+02 1.2837004e+03 - 2.5695341e+03 -1.3714324e+02 1.2883626e+03 - 2.5704090e+03 0.0000000e+00 1.2899155e+03 - 2.5937494e+03 2.4067136e-09 1.2101573e+03 - 2.5927645e+03 1.4081289e+02 1.2087491e+03 - 2.5898247e+03 2.8111434e+02 1.2045229e+03 - 2.5849749e+03 4.2039638e+02 1.1974728e+03 - 2.5782897e+03 5.5815773e+02 1.1875885e+03 - 2.5698731e+03 6.9390678e+02 1.1748537e+03 - 2.5598587e+03 8.2716400e+02 1.1592439e+03 - 2.5484088e+03 9.5746381e+02 1.1407247e+03 - 2.5357152e+03 1.0843556e+03 1.1192482e+03 - 2.5219990e+03 1.2074039e+03 1.0947499e+03 - 2.5075115e+03 1.3261881e+03 1.0671448e+03 - 2.4925351e+03 1.4403001e+03 1.0363225e+03 - 2.4773854e+03 1.5493427e+03 1.0021429e+03 - 2.4624132e+03 1.6529256e+03 9.6443130e+02 - 2.4480077e+03 1.7506616e+03 9.2297359e+02 - 2.4345995e+03 1.8421626e+03 8.7751306e+02 - 2.4226641e+03 1.9270353e+03 8.2774940e+02 - 2.4127231e+03 2.0048797e+03 7.7334251e+02 - 2.4053426e+03 2.0752894e+03 7.1392438e+02 - 2.4011254e+03 2.1378601e+03 6.4912443e+02 - 2.4006909e+03 2.1922087e+03 5.7861505e+02 - 2.4046363e+03 2.2380091e+03 5.0218575e+02 - 2.4134714e+03 2.2750531e+03 4.1985251e+02 - 2.4275193e+03 2.3033400e+03 3.3200210e+02 - 2.4467846e+03 2.3231919e+03 2.3955398e+02 - 2.4708098e+03 2.3353761e+03 1.4409483e+02 - 2.4985625e+03 2.3411905e+03 4.7911860e+01 - 2.5284217e+03 2.3424540e+03 -4.6154078e+01 - 2.5583172e+03 2.3413543e+03 -1.3506584e+02 - 2.5860222e+03 2.3401614e+03 -2.1608494e+02 - 2.6095157e+03 2.3408867e+03 -2.8723479e+02 - 2.6272866e+03 2.3450084e+03 -3.4755705e+02 - 2.6384817e+03 2.3533495e+03 -3.9708943e+02 - 2.6428822e+03 2.3661146e+03 -4.3662698e+02 - 2.6407668e+03 2.3830299e+03 -4.6739834e+02 - 2.6327387e+03 2.4035122e+03 -4.9077160e+02 - 2.6195724e+03 2.4268147e+03 -5.0804559e+02 - 2.6021052e+03 2.4521293e+03 -5.2033030e+02 - 2.5811749e+03 2.4786444e+03 -5.2849416e+02 - 2.5575923e+03 2.5055696e+03 -5.3315072e+02 - 2.5321373e+03 2.5321373e+03 -5.3466295e+02 - 2.5055696e+03 2.5575923e+03 -5.3315072e+02 - 2.4786444e+03 2.5811749e+03 -5.2849416e+02 - 2.4521293e+03 2.6021052e+03 -5.2033030e+02 - 2.4268147e+03 2.6195724e+03 -5.0804559e+02 - 2.4035122e+03 2.6327387e+03 -4.9077160e+02 - 2.3830299e+03 2.6407668e+03 -4.6739834e+02 - 2.3661146e+03 2.6428822e+03 -4.3662698e+02 - 2.3533495e+03 2.6384817e+03 -3.9708943e+02 - 2.3450084e+03 2.6272866e+03 -3.4755705e+02 - 2.3408867e+03 2.6095157e+03 -2.8723479e+02 - 2.3401614e+03 2.5860222e+03 -2.1608494e+02 - 2.3413543e+03 2.5583172e+03 -1.3506584e+02 - 2.3424540e+03 2.5284217e+03 -4.6154078e+01 - 2.3411905e+03 2.4985625e+03 4.7911860e+01 - 2.3353761e+03 2.4708098e+03 1.4409483e+02 - 2.3231919e+03 2.4467846e+03 2.3955398e+02 - 2.3033400e+03 2.4275193e+03 3.3200210e+02 - 2.2750531e+03 2.4134714e+03 4.1985251e+02 - 2.2380091e+03 2.4046363e+03 5.0218575e+02 - 2.1922087e+03 2.4006909e+03 5.7861505e+02 - 2.1378601e+03 2.4011254e+03 6.4912443e+02 - 2.0752894e+03 2.4053426e+03 7.1392438e+02 - 2.0048797e+03 2.4127231e+03 7.7334251e+02 - 1.9270353e+03 2.4226641e+03 8.2774940e+02 - 1.8421626e+03 2.4345995e+03 8.7751306e+02 - 1.7506616e+03 2.4480077e+03 9.2297359e+02 - 1.6529256e+03 2.4624132e+03 9.6443130e+02 - 1.5493427e+03 2.4773854e+03 1.0021429e+03 - 1.4403001e+03 2.4925351e+03 1.0363225e+03 - 1.3261881e+03 2.5075115e+03 1.0671448e+03 - 1.2074039e+03 2.5219990e+03 1.0947499e+03 - 1.0843556e+03 2.5357152e+03 1.1192482e+03 - 9.5746381e+02 2.5484088e+03 1.1407247e+03 - 8.2716400e+02 2.5598587e+03 1.1592439e+03 - 6.9390678e+02 2.5698731e+03 1.1748537e+03 - 5.5815773e+02 2.5782897e+03 1.1875885e+03 - 4.2039638e+02 2.5849749e+03 1.1974728e+03 - 2.8111434e+02 2.5898247e+03 1.2045229e+03 - 1.4081289e+02 2.5927645e+03 1.2087491e+03 - 4.8134273e-09 2.5937494e+03 1.2101573e+03 - -1.4081289e+02 2.5927645e+03 1.2087491e+03 - -2.8111434e+02 2.5898247e+03 1.2045229e+03 - -4.2039638e+02 2.5849749e+03 1.1974728e+03 - -5.5815773e+02 2.5782897e+03 1.1875885e+03 - -6.9390678e+02 2.5698731e+03 1.1748537e+03 - -8.2716400e+02 2.5598587e+03 1.1592439e+03 - -9.5746381e+02 2.5484088e+03 1.1407247e+03 - -1.0843556e+03 2.5357152e+03 1.1192482e+03 - -1.2074039e+03 2.5219990e+03 1.0947499e+03 - -1.3261881e+03 2.5075115e+03 1.0671448e+03 - -1.4403001e+03 2.4925351e+03 1.0363225e+03 - -1.5493427e+03 2.4773854e+03 1.0021429e+03 - -1.6529256e+03 2.4624132e+03 9.6443130e+02 - -1.7506616e+03 2.4480077e+03 9.2297359e+02 - -1.8421626e+03 2.4345995e+03 8.7751306e+02 - -1.9270353e+03 2.4226641e+03 8.2774940e+02 - -2.0048797e+03 2.4127231e+03 7.7334251e+02 - -2.0752894e+03 2.4053426e+03 7.1392438e+02 - -2.1378601e+03 2.4011254e+03 6.4912443e+02 - -2.1922087e+03 2.4006909e+03 5.7861505e+02 - -2.2380091e+03 2.4046363e+03 5.0218575e+02 - -2.2750531e+03 2.4134714e+03 4.1985251e+02 - -2.3033400e+03 2.4275193e+03 3.3200210e+02 - -2.3231919e+03 2.4467846e+03 2.3955398e+02 - -2.3353761e+03 2.4708098e+03 1.4409483e+02 - -2.3411905e+03 2.4985625e+03 4.7911860e+01 - -2.3424540e+03 2.5284217e+03 -4.6154078e+01 - -2.3413543e+03 2.5583172e+03 -1.3506584e+02 - -2.3401614e+03 2.5860222e+03 -2.1608494e+02 - -2.3408867e+03 2.6095157e+03 -2.8723479e+02 - -2.3450084e+03 2.6272866e+03 -3.4755705e+02 - -2.3533495e+03 2.6384817e+03 -3.9708943e+02 - -2.3661146e+03 2.6428822e+03 -4.3662698e+02 - -2.3830299e+03 2.6407668e+03 -4.6739834e+02 - -2.4035122e+03 2.6327387e+03 -4.9077160e+02 - -2.4268147e+03 2.6195724e+03 -5.0804559e+02 - -2.4521293e+03 2.6021052e+03 -5.2033030e+02 - -2.4786444e+03 2.5811749e+03 -5.2849416e+02 - -2.5055696e+03 2.5575923e+03 -5.3315072e+02 - -2.5321373e+03 2.5321373e+03 -5.3466295e+02 - -2.5575923e+03 2.5055696e+03 -5.3315072e+02 - -2.5811749e+03 2.4786444e+03 -5.2849416e+02 - -2.6021052e+03 2.4521293e+03 -5.2033030e+02 - -2.6195724e+03 2.4268147e+03 -5.0804559e+02 - -2.6327387e+03 2.4035122e+03 -4.9077160e+02 - -2.6407668e+03 2.3830299e+03 -4.6739834e+02 - -2.6428822e+03 2.3661146e+03 -4.3662698e+02 - -2.6384817e+03 2.3533495e+03 -3.9708943e+02 - -2.6272866e+03 2.3450084e+03 -3.4755705e+02 - -2.6095157e+03 2.3408867e+03 -2.8723479e+02 - -2.5860222e+03 2.3401614e+03 -2.1608494e+02 - -2.5583172e+03 2.3413543e+03 -1.3506584e+02 - -2.5284217e+03 2.3424540e+03 -4.6154078e+01 - -2.4985625e+03 2.3411905e+03 4.7911860e+01 - -2.4708098e+03 2.3353761e+03 1.4409483e+02 - -2.4467846e+03 2.3231919e+03 2.3955398e+02 - -2.4275193e+03 2.3033400e+03 3.3200210e+02 - -2.4134714e+03 2.2750531e+03 4.1985251e+02 - -2.4046363e+03 2.2380091e+03 5.0218575e+02 - -2.4006909e+03 2.1922087e+03 5.7861505e+02 - -2.4011254e+03 2.1378601e+03 6.4912443e+02 - -2.4053426e+03 2.0752894e+03 7.1392438e+02 - -2.4127231e+03 2.0048797e+03 7.7334251e+02 - -2.4226641e+03 1.9270353e+03 8.2774940e+02 - -2.4345995e+03 1.8421626e+03 8.7751306e+02 - -2.4480077e+03 1.7506616e+03 9.2297359e+02 - -2.4624132e+03 1.6529256e+03 9.6443130e+02 - -2.4773854e+03 1.5493427e+03 1.0021429e+03 - -2.4925351e+03 1.4403001e+03 1.0363225e+03 - -2.5075115e+03 1.3261881e+03 1.0671448e+03 - -2.5219990e+03 1.2074039e+03 1.0947499e+03 - -2.5357152e+03 1.0843556e+03 1.1192482e+03 - -2.5484088e+03 9.5746381e+02 1.1407247e+03 - -2.5598587e+03 8.2716400e+02 1.1592439e+03 - -2.5698731e+03 6.9390678e+02 1.1748537e+03 - -2.5782897e+03 5.5815773e+02 1.1875885e+03 - -2.5849749e+03 4.2039638e+02 1.1974728e+03 - -2.5898247e+03 2.8111434e+02 1.2045229e+03 - -2.5927645e+03 1.4081289e+02 1.2087491e+03 - -2.5937494e+03 2.4067136e-09 1.2101573e+03 - -2.5927645e+03 -1.4081289e+02 1.2087491e+03 - -2.5898247e+03 -2.8111434e+02 1.2045229e+03 - -2.5849749e+03 -4.2039638e+02 1.1974728e+03 - -2.5782897e+03 -5.5815773e+02 1.1875885e+03 - -2.5698731e+03 -6.9390678e+02 1.1748537e+03 - -2.5598587e+03 -8.2716400e+02 1.1592439e+03 - -2.5484088e+03 -9.5746381e+02 1.1407247e+03 - -2.5357152e+03 -1.0843556e+03 1.1192482e+03 - -2.5219990e+03 -1.2074039e+03 1.0947499e+03 - -2.5075115e+03 -1.3261881e+03 1.0671448e+03 - -2.4925351e+03 -1.4403001e+03 1.0363225e+03 - -2.4773854e+03 -1.5493427e+03 1.0021429e+03 - -2.4624132e+03 -1.6529256e+03 9.6443130e+02 - -2.4480077e+03 -1.7506616e+03 9.2297359e+02 - -2.4345995e+03 -1.8421626e+03 8.7751306e+02 - -2.4226641e+03 -1.9270353e+03 8.2774940e+02 - -2.4127231e+03 -2.0048797e+03 7.7334251e+02 - -2.4053426e+03 -2.0752894e+03 7.1392438e+02 - -2.4011254e+03 -2.1378601e+03 6.4912443e+02 - -2.4006909e+03 -2.1922087e+03 5.7861505e+02 - -2.4046363e+03 -2.2380091e+03 5.0218575e+02 - -2.4134714e+03 -2.2750531e+03 4.1985251e+02 - -2.4275193e+03 -2.3033400e+03 3.3200210e+02 - -2.4467846e+03 -2.3231919e+03 2.3955398e+02 - -2.4708098e+03 -2.3353761e+03 1.4409483e+02 - -2.4985625e+03 -2.3411905e+03 4.7911860e+01 - -2.5284217e+03 -2.3424540e+03 -4.6154078e+01 - -2.5583172e+03 -2.3413543e+03 -1.3506584e+02 - -2.5860222e+03 -2.3401614e+03 -2.1608494e+02 - -2.6095157e+03 -2.3408867e+03 -2.8723479e+02 - -2.6272866e+03 -2.3450084e+03 -3.4755705e+02 - -2.6384817e+03 -2.3533495e+03 -3.9708943e+02 - -2.6428822e+03 -2.3661146e+03 -4.3662698e+02 - -2.6407668e+03 -2.3830299e+03 -4.6739834e+02 - -2.6327387e+03 -2.4035122e+03 -4.9077160e+02 - -2.6195724e+03 -2.4268147e+03 -5.0804559e+02 - -2.6021052e+03 -2.4521293e+03 -5.2033030e+02 - -2.5811749e+03 -2.4786444e+03 -5.2849416e+02 - -2.5575923e+03 -2.5055696e+03 -5.3315072e+02 - -2.5321373e+03 -2.5321373e+03 -5.3466295e+02 - -2.5055696e+03 -2.5575923e+03 -5.3315072e+02 - -2.4786444e+03 -2.5811749e+03 -5.2849416e+02 - -2.4521293e+03 -2.6021052e+03 -5.2033030e+02 - -2.4268147e+03 -2.6195724e+03 -5.0804559e+02 - -2.4035122e+03 -2.6327387e+03 -4.9077160e+02 - -2.3830299e+03 -2.6407668e+03 -4.6739834e+02 - -2.3661146e+03 -2.6428822e+03 -4.3662698e+02 - -2.3533495e+03 -2.6384817e+03 -3.9708943e+02 - -2.3450084e+03 -2.6272866e+03 -3.4755705e+02 - -2.3408867e+03 -2.6095157e+03 -2.8723479e+02 - -2.3401614e+03 -2.5860222e+03 -2.1608494e+02 - -2.3413543e+03 -2.5583172e+03 -1.3506584e+02 - -2.3424540e+03 -2.5284217e+03 -4.6154078e+01 - -2.3411905e+03 -2.4985625e+03 4.7911860e+01 - -2.3353761e+03 -2.4708098e+03 1.4409483e+02 - -2.3231919e+03 -2.4467846e+03 2.3955398e+02 - -2.3033400e+03 -2.4275193e+03 3.3200210e+02 - -2.2750531e+03 -2.4134714e+03 4.1985251e+02 - -2.2380091e+03 -2.4046363e+03 5.0218575e+02 - -2.1922087e+03 -2.4006909e+03 5.7861505e+02 - -2.1378601e+03 -2.4011254e+03 6.4912443e+02 - -2.0752894e+03 -2.4053426e+03 7.1392438e+02 - -2.0048797e+03 -2.4127231e+03 7.7334251e+02 - -1.9270353e+03 -2.4226641e+03 8.2774940e+02 - -1.8421626e+03 -2.4345995e+03 8.7751306e+02 - -1.7506616e+03 -2.4480077e+03 9.2297359e+02 - -1.6529256e+03 -2.4624132e+03 9.6443130e+02 - -1.5493427e+03 -2.4773854e+03 1.0021429e+03 - -1.4403001e+03 -2.4925351e+03 1.0363225e+03 - -1.3261881e+03 -2.5075115e+03 1.0671448e+03 - -1.2074039e+03 -2.5219990e+03 1.0947499e+03 - -1.0843556e+03 -2.5357152e+03 1.1192482e+03 - -9.5746381e+02 -2.5484088e+03 1.1407247e+03 - -8.2716400e+02 -2.5598587e+03 1.1592439e+03 - -6.9390678e+02 -2.5698731e+03 1.1748537e+03 - -5.5815773e+02 -2.5782897e+03 1.1875885e+03 - -4.2039638e+02 -2.5849749e+03 1.1974728e+03 - -2.8111434e+02 -2.5898247e+03 1.2045229e+03 - -1.4081289e+02 -2.5927645e+03 1.2087491e+03 - -4.8134273e-09 -2.5937494e+03 1.2101573e+03 - 1.4081289e+02 -2.5927645e+03 1.2087491e+03 - 2.8111434e+02 -2.5898247e+03 1.2045229e+03 - 4.2039638e+02 -2.5849749e+03 1.1974728e+03 - 5.5815773e+02 -2.5782897e+03 1.1875885e+03 - 6.9390678e+02 -2.5698731e+03 1.1748537e+03 - 8.2716400e+02 -2.5598587e+03 1.1592439e+03 - 9.5746381e+02 -2.5484088e+03 1.1407247e+03 - 1.0843556e+03 -2.5357152e+03 1.1192482e+03 - 1.2074039e+03 -2.5219990e+03 1.0947499e+03 - 1.3261881e+03 -2.5075115e+03 1.0671448e+03 - 1.4403001e+03 -2.4925351e+03 1.0363225e+03 - 1.5493427e+03 -2.4773854e+03 1.0021429e+03 - 1.6529256e+03 -2.4624132e+03 9.6443130e+02 - 1.7506616e+03 -2.4480077e+03 9.2297359e+02 - 1.8421626e+03 -2.4345995e+03 8.7751306e+02 - 1.9270353e+03 -2.4226641e+03 8.2774940e+02 - 2.0048797e+03 -2.4127231e+03 7.7334251e+02 - 2.0752894e+03 -2.4053426e+03 7.1392438e+02 - 2.1378601e+03 -2.4011254e+03 6.4912443e+02 - 2.1922087e+03 -2.4006909e+03 5.7861505e+02 - 2.2380091e+03 -2.4046363e+03 5.0218575e+02 - 2.2750531e+03 -2.4134714e+03 4.1985251e+02 - 2.3033400e+03 -2.4275193e+03 3.3200210e+02 - 2.3231919e+03 -2.4467846e+03 2.3955398e+02 - 2.3353761e+03 -2.4708098e+03 1.4409483e+02 - 2.3411905e+03 -2.4985625e+03 4.7911860e+01 - 2.3424540e+03 -2.5284217e+03 -4.6154078e+01 - 2.3413543e+03 -2.5583172e+03 -1.3506584e+02 - 2.3401614e+03 -2.5860222e+03 -2.1608494e+02 - 2.3408867e+03 -2.6095157e+03 -2.8723479e+02 - 2.3450084e+03 -2.6272866e+03 -3.4755705e+02 - 2.3533495e+03 -2.6384817e+03 -3.9708943e+02 - 2.3661146e+03 -2.6428822e+03 -4.3662698e+02 - 2.3830299e+03 -2.6407668e+03 -4.6739834e+02 - 2.4035122e+03 -2.6327387e+03 -4.9077160e+02 - 2.4268147e+03 -2.6195724e+03 -5.0804559e+02 - 2.4521293e+03 -2.6021052e+03 -5.2033030e+02 - 2.4786444e+03 -2.5811749e+03 -5.2849416e+02 - 2.5055696e+03 -2.5575923e+03 -5.3315072e+02 - 2.5321373e+03 -2.5321373e+03 -5.3466295e+02 - 2.5575923e+03 -2.5055696e+03 -5.3315072e+02 - 2.5811749e+03 -2.4786444e+03 -5.2849416e+02 - 2.6021052e+03 -2.4521293e+03 -5.2033030e+02 - 2.6195724e+03 -2.4268147e+03 -5.0804559e+02 - 2.6327387e+03 -2.4035122e+03 -4.9077160e+02 - 2.6407668e+03 -2.3830299e+03 -4.6739834e+02 - 2.6428822e+03 -2.3661146e+03 -4.3662698e+02 - 2.6384817e+03 -2.3533495e+03 -3.9708943e+02 - 2.6272866e+03 -2.3450084e+03 -3.4755705e+02 - 2.6095157e+03 -2.3408867e+03 -2.8723479e+02 - 2.5860222e+03 -2.3401614e+03 -2.1608494e+02 - 2.5583172e+03 -2.3413543e+03 -1.3506584e+02 - 2.5284217e+03 -2.3424540e+03 -4.6154078e+01 - 2.4985625e+03 -2.3411905e+03 4.7911860e+01 - 2.4708098e+03 -2.3353761e+03 1.4409483e+02 - 2.4467846e+03 -2.3231919e+03 2.3955398e+02 - 2.4275193e+03 -2.3033400e+03 3.3200210e+02 - 2.4134714e+03 -2.2750531e+03 4.1985251e+02 - 2.4046363e+03 -2.2380091e+03 5.0218575e+02 - 2.4006909e+03 -2.1922087e+03 5.7861505e+02 - 2.4011254e+03 -2.1378601e+03 6.4912443e+02 - 2.4053426e+03 -2.0752894e+03 7.1392438e+02 - 2.4127231e+03 -2.0048797e+03 7.7334251e+02 - 2.4226641e+03 -1.9270353e+03 8.2774940e+02 - 2.4345995e+03 -1.8421626e+03 8.7751306e+02 - 2.4480077e+03 -1.7506616e+03 9.2297359e+02 - 2.4624132e+03 -1.6529256e+03 9.6443130e+02 - 2.4773854e+03 -1.5493427e+03 1.0021429e+03 - 2.4925351e+03 -1.4403001e+03 1.0363225e+03 - 2.5075115e+03 -1.3261881e+03 1.0671448e+03 - 2.5219990e+03 -1.2074039e+03 1.0947499e+03 - 2.5357152e+03 -1.0843556e+03 1.1192482e+03 - 2.5484088e+03 -9.5746381e+02 1.1407247e+03 - 2.5598587e+03 -8.2716400e+02 1.1592439e+03 - 2.5698731e+03 -6.9390678e+02 1.1748537e+03 - 2.5782897e+03 -5.5815773e+02 1.1875885e+03 - 2.5849749e+03 -4.2039638e+02 1.1974728e+03 - 2.5898247e+03 -2.8111434e+02 1.2045229e+03 - 2.5927645e+03 -1.4081289e+02 1.2087491e+03 - 2.5937494e+03 -2.4067136e-09 1.2101573e+03 - 2.6157296e+03 4.8134273e-09 1.1291823e+03 - 2.6146482e+03 1.4412442e+02 1.1279055e+03 - 2.6114186e+03 2.8773228e+02 1.1240747e+03 - 2.6060848e+03 4.3031095e+02 1.1176877e+03 - 2.5987196e+03 5.7135544e+02 1.1087403e+03 - 2.5894246e+03 7.1037181e+02 1.0972249e+03 - 2.5783293e+03 8.4688005e+02 1.0831290e+03 - 2.5655908e+03 9.8041631e+02 1.0664329e+03 - 2.5513934e+03 1.1105344e+03 1.0471072e+03 - 2.5359487e+03 1.2368063e+03 1.0251095e+03 - 2.5194950e+03 1.3588219e+03 1.0003808e+03 - 2.5022989e+03 1.4761879e+03 9.7284161e+02 - 2.4846556e+03 1.5885248e+03 9.4238653e+02 - 2.4668916e+03 1.6954643e+03 9.0887947e+02 - 2.4493672e+03 1.7966444e+03 8.7214776e+02 - 2.4324804e+03 1.8917044e+03 8.3197628e+02 - 2.4166711e+03 1.9802792e+03 7.8810211e+02 - 2.4024266e+03 2.0619932e+03 7.4021063e+02 - 2.3902854e+03 2.1364553e+03 6.8793523e+02 - 2.3808404e+03 2.2032567e+03 6.3086386e+02 - 2.3747354e+03 2.2619742e+03 5.6855809e+02 - 2.3726514e+03 2.3121840e+03 5.0059271e+02 - 2.3752739e+03 2.3534950e+03 4.2662715e+02 - 2.3832286e+03 2.3856089e+03 3.4652077e+02 - 2.3969751e+03 2.4084209e+03 2.6049930e+02 - 2.4166494e+03 2.4221618e+03 1.6936192e+02 - 2.4418727e+03 2.4275675e+03 7.4681762e+01 - 2.4715765e+03 2.4260232e+03 -2.1096156e+01 - 2.5039394e+03 2.4195960e+03 -1.1478404e+02 - 2.5365320e+03 2.4108702e+03 -2.0288093e+02 - 2.5666931e+03 2.4025718e+03 -2.8222416e+02 - 2.5920244e+03 2.3970963e+03 -3.5061620e+02 - 2.6108057e+03 2.3961272e+03 -4.0715428e+02 - 2.6221769e+03 2.4004843e+03 -4.5215731e+02 - 2.6260732e+03 2.4102058e+03 -4.8680216e+02 - 2.6230130e+03 2.4247635e+03 -5.1267808e+02 - 2.6138598e+03 2.4432982e+03 -5.3141908e+02 - 2.5996308e+03 2.4648042e+03 -5.4447217e+02 - 2.5813779e+03 2.4882429e+03 -5.5298548e+02 - 2.5601303e+03 2.5125968e+03 -5.5777302e+02 - 2.5368809e+03 2.5368809e+03 -5.5931596e+02 - 2.5125968e+03 2.5601303e+03 -5.5777302e+02 - 2.4882429e+03 2.5813779e+03 -5.5298548e+02 - 2.4648042e+03 2.5996308e+03 -5.4447217e+02 - 2.4432982e+03 2.6138598e+03 -5.3141908e+02 - 2.4247635e+03 2.6230130e+03 -5.1267808e+02 - 2.4102058e+03 2.6260732e+03 -4.8680216e+02 - 2.4004843e+03 2.6221769e+03 -4.5215731e+02 - 2.3961272e+03 2.6108057e+03 -4.0715428e+02 - 2.3970963e+03 2.5920244e+03 -3.5061620e+02 - 2.4025718e+03 2.5666931e+03 -2.8222416e+02 - 2.4108702e+03 2.5365320e+03 -2.0288093e+02 - 2.4195960e+03 2.5039394e+03 -1.1478404e+02 - 2.4260232e+03 2.4715765e+03 -2.1096156e+01 - 2.4275675e+03 2.4418727e+03 7.4681762e+01 - 2.4221618e+03 2.4166494e+03 1.6936192e+02 - 2.4084209e+03 2.3969751e+03 2.6049930e+02 - 2.3856089e+03 2.3832286e+03 3.4652077e+02 - 2.3534950e+03 2.3752739e+03 4.2662715e+02 - 2.3121840e+03 2.3726514e+03 5.0059271e+02 - 2.2619742e+03 2.3747354e+03 5.6855809e+02 - 2.2032567e+03 2.3808404e+03 6.3086386e+02 - 2.1364553e+03 2.3902854e+03 6.8793523e+02 - 2.0619932e+03 2.4024266e+03 7.4021063e+02 - 1.9802792e+03 2.4166711e+03 7.8810211e+02 - 1.8917044e+03 2.4324804e+03 8.3197628e+02 - 1.7966444e+03 2.4493672e+03 8.7214776e+02 - 1.6954643e+03 2.4668916e+03 9.0887947e+02 - 1.5885248e+03 2.4846556e+03 9.4238653e+02 - 1.4761879e+03 2.5022989e+03 9.7284161e+02 - 1.3588219e+03 2.5194950e+03 1.0003808e+03 - 1.2368063e+03 2.5359487e+03 1.0251095e+03 - 1.1105344e+03 2.5513934e+03 1.0471072e+03 - 9.8041631e+02 2.5655908e+03 1.0664329e+03 - 8.4688005e+02 2.5783293e+03 1.0831290e+03 - 7.1037181e+02 2.5894246e+03 1.0972249e+03 - 5.7135544e+02 2.5987196e+03 1.1087403e+03 - 4.3031095e+02 2.6060848e+03 1.1176877e+03 - 2.8773228e+02 2.6114186e+03 1.1240747e+03 - 1.4412442e+02 2.6146482e+03 1.1279055e+03 - -7.2201409e-09 2.6157296e+03 1.1291823e+03 - -1.4412442e+02 2.6146482e+03 1.1279055e+03 - -2.8773228e+02 2.6114186e+03 1.1240747e+03 - -4.3031095e+02 2.6060848e+03 1.1176877e+03 - -5.7135544e+02 2.5987196e+03 1.1087403e+03 - -7.1037181e+02 2.5894246e+03 1.0972249e+03 - -8.4688005e+02 2.5783293e+03 1.0831290e+03 - -9.8041631e+02 2.5655908e+03 1.0664329e+03 - -1.1105344e+03 2.5513934e+03 1.0471072e+03 - -1.2368063e+03 2.5359487e+03 1.0251095e+03 - -1.3588219e+03 2.5194950e+03 1.0003808e+03 - -1.4761879e+03 2.5022989e+03 9.7284161e+02 - -1.5885248e+03 2.4846556e+03 9.4238653e+02 - -1.6954643e+03 2.4668916e+03 9.0887947e+02 - -1.7966444e+03 2.4493672e+03 8.7214776e+02 - -1.8917044e+03 2.4324804e+03 8.3197628e+02 - -1.9802792e+03 2.4166711e+03 7.8810211e+02 - -2.0619932e+03 2.4024266e+03 7.4021063e+02 - -2.1364553e+03 2.3902854e+03 6.8793523e+02 - -2.2032567e+03 2.3808404e+03 6.3086386e+02 - -2.2619742e+03 2.3747354e+03 5.6855809e+02 - -2.3121840e+03 2.3726514e+03 5.0059271e+02 - -2.3534950e+03 2.3752739e+03 4.2662715e+02 - -2.3856089e+03 2.3832286e+03 3.4652077e+02 - -2.4084209e+03 2.3969751e+03 2.6049930e+02 - -2.4221618e+03 2.4166494e+03 1.6936192e+02 - -2.4275675e+03 2.4418727e+03 7.4681762e+01 - -2.4260232e+03 2.4715765e+03 -2.1096156e+01 - -2.4195960e+03 2.5039394e+03 -1.1478404e+02 - -2.4108702e+03 2.5365320e+03 -2.0288093e+02 - -2.4025718e+03 2.5666931e+03 -2.8222416e+02 - -2.3970963e+03 2.5920244e+03 -3.5061620e+02 - -2.3961272e+03 2.6108057e+03 -4.0715428e+02 - -2.4004843e+03 2.6221769e+03 -4.5215731e+02 - -2.4102058e+03 2.6260732e+03 -4.8680216e+02 - -2.4247635e+03 2.6230130e+03 -5.1267808e+02 - -2.4432982e+03 2.6138598e+03 -5.3141908e+02 - -2.4648042e+03 2.5996308e+03 -5.4447217e+02 - -2.4882429e+03 2.5813779e+03 -5.5298548e+02 - -2.5125968e+03 2.5601303e+03 -5.5777302e+02 - -2.5368809e+03 2.5368809e+03 -5.5931596e+02 - -2.5601303e+03 2.5125968e+03 -5.5777302e+02 - -2.5813779e+03 2.4882429e+03 -5.5298548e+02 - -2.5996308e+03 2.4648042e+03 -5.4447217e+02 - -2.6138598e+03 2.4432982e+03 -5.3141908e+02 - -2.6230130e+03 2.4247635e+03 -5.1267808e+02 - -2.6260732e+03 2.4102058e+03 -4.8680216e+02 - -2.6221769e+03 2.4004843e+03 -4.5215731e+02 - -2.6108057e+03 2.3961272e+03 -4.0715428e+02 - -2.5920244e+03 2.3970963e+03 -3.5061620e+02 - -2.5666931e+03 2.4025718e+03 -2.8222416e+02 - -2.5365320e+03 2.4108702e+03 -2.0288093e+02 - -2.5039394e+03 2.4195960e+03 -1.1478404e+02 - -2.4715765e+03 2.4260232e+03 -2.1096156e+01 - -2.4418727e+03 2.4275675e+03 7.4681762e+01 - -2.4166494e+03 2.4221618e+03 1.6936192e+02 - -2.3969751e+03 2.4084209e+03 2.6049930e+02 - -2.3832286e+03 2.3856089e+03 3.4652077e+02 - -2.3752739e+03 2.3534950e+03 4.2662715e+02 - -2.3726514e+03 2.3121840e+03 5.0059271e+02 - -2.3747354e+03 2.2619742e+03 5.6855809e+02 - -2.3808404e+03 2.2032567e+03 6.3086386e+02 - -2.3902854e+03 2.1364553e+03 6.8793523e+02 - -2.4024266e+03 2.0619932e+03 7.4021063e+02 - -2.4166711e+03 1.9802792e+03 7.8810211e+02 - -2.4324804e+03 1.8917044e+03 8.3197628e+02 - -2.4493672e+03 1.7966444e+03 8.7214776e+02 - -2.4668916e+03 1.6954643e+03 9.0887947e+02 - -2.4846556e+03 1.5885248e+03 9.4238653e+02 - -2.5022989e+03 1.4761879e+03 9.7284161e+02 - -2.5194950e+03 1.3588219e+03 1.0003808e+03 - -2.5359487e+03 1.2368063e+03 1.0251095e+03 - -2.5513934e+03 1.1105344e+03 1.0471072e+03 - -2.5655908e+03 9.8041631e+02 1.0664329e+03 - -2.5783293e+03 8.4688005e+02 1.0831290e+03 - -2.5894246e+03 7.1037181e+02 1.0972249e+03 - -2.5987196e+03 5.7135544e+02 1.1087403e+03 - -2.6060848e+03 4.3031095e+02 1.1176877e+03 - -2.6114186e+03 2.8773228e+02 1.1240747e+03 - -2.6146482e+03 1.4412442e+02 1.1279055e+03 - -2.6157296e+03 -4.8134273e-09 1.1291823e+03 - -2.6146482e+03 -1.4412442e+02 1.1279055e+03 - -2.6114186e+03 -2.8773228e+02 1.1240747e+03 - -2.6060848e+03 -4.3031095e+02 1.1176877e+03 - -2.5987196e+03 -5.7135544e+02 1.1087403e+03 - -2.5894246e+03 -7.1037181e+02 1.0972249e+03 - -2.5783293e+03 -8.4688005e+02 1.0831290e+03 - -2.5655908e+03 -9.8041631e+02 1.0664329e+03 - -2.5513934e+03 -1.1105344e+03 1.0471072e+03 - -2.5359487e+03 -1.2368063e+03 1.0251095e+03 - -2.5194950e+03 -1.3588219e+03 1.0003808e+03 - -2.5022989e+03 -1.4761879e+03 9.7284161e+02 - -2.4846556e+03 -1.5885248e+03 9.4238653e+02 - -2.4668916e+03 -1.6954643e+03 9.0887947e+02 - -2.4493672e+03 -1.7966444e+03 8.7214776e+02 - -2.4324804e+03 -1.8917044e+03 8.3197628e+02 - -2.4166711e+03 -1.9802792e+03 7.8810211e+02 - -2.4024266e+03 -2.0619932e+03 7.4021063e+02 - -2.3902854e+03 -2.1364553e+03 6.8793523e+02 - -2.3808404e+03 -2.2032567e+03 6.3086386e+02 - -2.3747354e+03 -2.2619742e+03 5.6855809e+02 - -2.3726514e+03 -2.3121840e+03 5.0059271e+02 - -2.3752739e+03 -2.3534950e+03 4.2662715e+02 - -2.3832286e+03 -2.3856089e+03 3.4652077e+02 - -2.3969751e+03 -2.4084209e+03 2.6049930e+02 - -2.4166494e+03 -2.4221618e+03 1.6936192e+02 - -2.4418727e+03 -2.4275675e+03 7.4681762e+01 - -2.4715765e+03 -2.4260232e+03 -2.1096156e+01 - -2.5039394e+03 -2.4195960e+03 -1.1478404e+02 - -2.5365320e+03 -2.4108702e+03 -2.0288093e+02 - -2.5666931e+03 -2.4025718e+03 -2.8222416e+02 - -2.5920244e+03 -2.3970963e+03 -3.5061620e+02 - -2.6108057e+03 -2.3961272e+03 -4.0715428e+02 - -2.6221769e+03 -2.4004843e+03 -4.5215731e+02 - -2.6260732e+03 -2.4102058e+03 -4.8680216e+02 - -2.6230130e+03 -2.4247635e+03 -5.1267808e+02 - -2.6138598e+03 -2.4432982e+03 -5.3141908e+02 - -2.5996308e+03 -2.4648042e+03 -5.4447217e+02 - -2.5813779e+03 -2.4882429e+03 -5.5298548e+02 - -2.5601303e+03 -2.5125968e+03 -5.5777302e+02 - -2.5368809e+03 -2.5368809e+03 -5.5931596e+02 - -2.5125968e+03 -2.5601303e+03 -5.5777302e+02 - -2.4882429e+03 -2.5813779e+03 -5.5298548e+02 - -2.4648042e+03 -2.5996308e+03 -5.4447217e+02 - -2.4432982e+03 -2.6138598e+03 -5.3141908e+02 - -2.4247635e+03 -2.6230130e+03 -5.1267808e+02 - -2.4102058e+03 -2.6260732e+03 -4.8680216e+02 - -2.4004843e+03 -2.6221769e+03 -4.5215731e+02 - -2.3961272e+03 -2.6108057e+03 -4.0715428e+02 - -2.3970963e+03 -2.5920244e+03 -3.5061620e+02 - -2.4025718e+03 -2.5666931e+03 -2.8222416e+02 - -2.4108702e+03 -2.5365320e+03 -2.0288093e+02 - -2.4195960e+03 -2.5039394e+03 -1.1478404e+02 - -2.4260232e+03 -2.4715765e+03 -2.1096156e+01 - -2.4275675e+03 -2.4418727e+03 7.4681762e+01 - -2.4221618e+03 -2.4166494e+03 1.6936192e+02 - -2.4084209e+03 -2.3969751e+03 2.6049930e+02 - -2.3856089e+03 -2.3832286e+03 3.4652077e+02 - -2.3534950e+03 -2.3752739e+03 4.2662715e+02 - -2.3121840e+03 -2.3726514e+03 5.0059271e+02 - -2.2619742e+03 -2.3747354e+03 5.6855809e+02 - -2.2032567e+03 -2.3808404e+03 6.3086386e+02 - -2.1364553e+03 -2.3902854e+03 6.8793523e+02 - -2.0619932e+03 -2.4024266e+03 7.4021063e+02 - -1.9802792e+03 -2.4166711e+03 7.8810211e+02 - -1.8917044e+03 -2.4324804e+03 8.3197628e+02 - -1.7966444e+03 -2.4493672e+03 8.7214776e+02 - -1.6954643e+03 -2.4668916e+03 9.0887947e+02 - -1.5885248e+03 -2.4846556e+03 9.4238653e+02 - -1.4761879e+03 -2.5022989e+03 9.7284161e+02 - -1.3588219e+03 -2.5194950e+03 1.0003808e+03 - -1.2368063e+03 -2.5359487e+03 1.0251095e+03 - -1.1105344e+03 -2.5513934e+03 1.0471072e+03 - -9.8041631e+02 -2.5655908e+03 1.0664329e+03 - -8.4688005e+02 -2.5783293e+03 1.0831290e+03 - -7.1037181e+02 -2.5894246e+03 1.0972249e+03 - -5.7135544e+02 -2.5987196e+03 1.1087403e+03 - -4.3031095e+02 -2.6060848e+03 1.1176877e+03 - -2.8773228e+02 -2.6114186e+03 1.1240747e+03 - -1.4412442e+02 -2.6146482e+03 1.1279055e+03 - -4.8134273e-09 -2.6157296e+03 1.1291823e+03 - 1.4412442e+02 -2.6146482e+03 1.1279055e+03 - 2.8773228e+02 -2.6114186e+03 1.1240747e+03 - 4.3031095e+02 -2.6060848e+03 1.1176877e+03 - 5.7135544e+02 -2.5987196e+03 1.1087403e+03 - 7.1037181e+02 -2.5894246e+03 1.0972249e+03 - 8.4688005e+02 -2.5783293e+03 1.0831290e+03 - 9.8041631e+02 -2.5655908e+03 1.0664329e+03 - 1.1105344e+03 -2.5513934e+03 1.0471072e+03 - 1.2368063e+03 -2.5359487e+03 1.0251095e+03 - 1.3588219e+03 -2.5194950e+03 1.0003808e+03 - 1.4761879e+03 -2.5022989e+03 9.7284161e+02 - 1.5885248e+03 -2.4846556e+03 9.4238653e+02 - 1.6954643e+03 -2.4668916e+03 9.0887947e+02 - 1.7966444e+03 -2.4493672e+03 8.7214776e+02 - 1.8917044e+03 -2.4324804e+03 8.3197628e+02 - 1.9802792e+03 -2.4166711e+03 7.8810211e+02 - 2.0619932e+03 -2.4024266e+03 7.4021063e+02 - 2.1364553e+03 -2.3902854e+03 6.8793523e+02 - 2.2032567e+03 -2.3808404e+03 6.3086386e+02 - 2.2619742e+03 -2.3747354e+03 5.6855809e+02 - 2.3121840e+03 -2.3726514e+03 5.0059271e+02 - 2.3534950e+03 -2.3752739e+03 4.2662715e+02 - 2.3856089e+03 -2.3832286e+03 3.4652077e+02 - 2.4084209e+03 -2.3969751e+03 2.6049930e+02 - 2.4221618e+03 -2.4166494e+03 1.6936192e+02 - 2.4275675e+03 -2.4418727e+03 7.4681762e+01 - 2.4260232e+03 -2.4715765e+03 -2.1096156e+01 - 2.4195960e+03 -2.5039394e+03 -1.1478404e+02 - 2.4108702e+03 -2.5365320e+03 -2.0288093e+02 - 2.4025718e+03 -2.5666931e+03 -2.8222416e+02 - 2.3970963e+03 -2.5920244e+03 -3.5061620e+02 - 2.3961272e+03 -2.6108057e+03 -4.0715428e+02 - 2.4004843e+03 -2.6221769e+03 -4.5215731e+02 - 2.4102058e+03 -2.6260732e+03 -4.8680216e+02 - 2.4247635e+03 -2.6230130e+03 -5.1267808e+02 - 2.4432982e+03 -2.6138598e+03 -5.3141908e+02 - 2.4648042e+03 -2.5996308e+03 -5.4447217e+02 - 2.4882429e+03 -2.5813779e+03 -5.5298548e+02 - 2.5125968e+03 -2.5601303e+03 -5.5777302e+02 - 2.5368809e+03 -2.5368809e+03 -5.5931596e+02 - 2.5601303e+03 -2.5125968e+03 -5.5777302e+02 - 2.5813779e+03 -2.4882429e+03 -5.5298548e+02 - 2.5996308e+03 -2.4648042e+03 -5.4447217e+02 - 2.6138598e+03 -2.4432982e+03 -5.3141908e+02 - 2.6230130e+03 -2.4247635e+03 -5.1267808e+02 - 2.6260732e+03 -2.4102058e+03 -4.8680216e+02 - 2.6221769e+03 -2.4004843e+03 -4.5215731e+02 - 2.6108057e+03 -2.3961272e+03 -4.0715428e+02 - 2.5920244e+03 -2.3970963e+03 -3.5061620e+02 - 2.5666931e+03 -2.4025718e+03 -2.8222416e+02 - 2.5365320e+03 -2.4108702e+03 -2.0288093e+02 - 2.5039394e+03 -2.4195960e+03 -1.1478404e+02 - 2.4715765e+03 -2.4260232e+03 -2.1096156e+01 - 2.4418727e+03 -2.4275675e+03 7.4681762e+01 - 2.4166494e+03 -2.4221618e+03 1.6936192e+02 - 2.3969751e+03 -2.4084209e+03 2.6049930e+02 - 2.3832286e+03 -2.3856089e+03 3.4652077e+02 - 2.3752739e+03 -2.3534950e+03 4.2662715e+02 - 2.3726514e+03 -2.3121840e+03 5.0059271e+02 - 2.3747354e+03 -2.2619742e+03 5.6855809e+02 - 2.3808404e+03 -2.2032567e+03 6.3086386e+02 - 2.3902854e+03 -2.1364553e+03 6.8793523e+02 - 2.4024266e+03 -2.0619932e+03 7.4021063e+02 - 2.4166711e+03 -1.9802792e+03 7.8810211e+02 - 2.4324804e+03 -1.8917044e+03 8.3197628e+02 - 2.4493672e+03 -1.7966444e+03 8.7214776e+02 - 2.4668916e+03 -1.6954643e+03 9.0887947e+02 - 2.4846556e+03 -1.5885248e+03 9.4238653e+02 - 2.5022989e+03 -1.4761879e+03 9.7284161e+02 - 2.5194950e+03 -1.3588219e+03 1.0003808e+03 - 2.5359487e+03 -1.2368063e+03 1.0251095e+03 - 2.5513934e+03 -1.1105344e+03 1.0471072e+03 - 2.5655908e+03 -9.8041631e+02 1.0664329e+03 - 2.5783293e+03 -8.4688005e+02 1.0831290e+03 - 2.5894246e+03 -7.1037181e+02 1.0972249e+03 - 2.5987196e+03 -5.7135544e+02 1.1087403e+03 - 2.6060848e+03 -4.3031095e+02 1.1176877e+03 - 2.6114186e+03 -2.8773228e+02 1.1240747e+03 - 2.6146482e+03 -1.4412442e+02 1.1279055e+03 - 2.6157296e+03 0.0000000e+00 1.1291823e+03 - 2.6363008e+03 2.4067136e-09 1.0470525e+03 - 2.6351343e+03 1.4711092e+02 1.0458969e+03 - 2.6316495e+03 2.9369886e+02 1.0424304e+03 - 2.6258897e+03 4.3924519e+02 1.0366538e+03 - 2.6179271e+03 5.8323977e+02 1.0285675e+03 - 2.6078617e+03 7.2518477e+02 1.0181711e+03 - 2.5958209e+03 8.6459793e+02 1.0054611e+03 - 2.5819585e+03 1.0010152e+03 9.9042983e+02 - 2.5664539e+03 1.1339926e+03 9.7306270e+02 - 2.5495119e+03 1.2631071e+03 9.5333565e+02 - 2.5313617e+03 1.3879568e+03 9.3121193e+02 - 2.5122576e+03 1.5081597e+03 9.0663833e+02 - 2.4924791e+03 1.6233518e+03 8.7954092e+02 - 2.4723324e+03 1.7331842e+03 8.4982007e+02 - 2.4521526e+03 1.8373187e+03 8.1734483e+02 - 2.4323072e+03 1.9354227e+03 7.8194654e+02 - 2.4131999e+03 2.0271627e+03 7.4341192e+02 - 2.3952771e+03 2.1121977e+03 7.0147581e+02 - 2.3790339e+03 2.1901712e+03 6.5581454e+02 - 2.3650215e+03 2.2607034e+03 6.0604138e+02 - 2.3538538e+03 2.3233859e+03 5.5170730e+02 - 2.3462099e+03 2.3777798e+03 4.9231246e+02 - 2.3428274e+03 2.4234237e+03 4.2733758e+02 - 2.3444773e+03 2.4598610e+03 3.5630915e+02 - 2.3519053e+03 2.4866975e+03 2.7891659e+02 - 2.3657198e+03 2.5037097e+03 1.9519898e+02 - 2.3862095e+03 2.5110148e+03 1.0580267e+02 - 2.4130949e+03 2.5092974e+03 1.2265807e+01 - 2.4452690e+03 2.5000342e+03 -8.2791075e+01 - 2.4806598e+03 2.4855929e+03 -1.7575788e+02 - 2.5163766e+03 2.4690561e+03 -2.6255894e+02 - 2.5492074e+03 2.4537180e+03 -3.3952885e+02 - 2.5763094e+03 2.4424184e+03 -4.0426911e+02 - 2.5957749e+03 2.4370155e+03 -4.5605473e+02 - 2.6068351e+03 2.4382195e+03 -4.9564806e+02 - 2.6097068e+03 2.4457663e+03 -5.2473597e+02 - 2.6052647e+03 2.4587512e+03 -5.4532429e+02 - 2.5947188e+03 2.4759482e+03 -5.5929898e+02 - 2.5793908e+03 2.4960286e+03 -5.6819233e+02 - 2.5605970e+03 2.5176742e+03 -5.7309799e+02 - 2.5396109e+03 2.5396109e+03 -5.7466225e+02 - 2.5176742e+03 2.5605970e+03 -5.7309799e+02 - 2.4960286e+03 2.5793908e+03 -5.6819233e+02 - 2.4759482e+03 2.5947188e+03 -5.5929898e+02 - 2.4587512e+03 2.6052647e+03 -5.4532429e+02 - 2.4457663e+03 2.6097068e+03 -5.2473597e+02 - 2.4382195e+03 2.6068351e+03 -4.9564806e+02 - 2.4370155e+03 2.5957749e+03 -4.5605473e+02 - 2.4424184e+03 2.5763094e+03 -4.0426911e+02 - 2.4537180e+03 2.5492074e+03 -3.3952885e+02 - 2.4690561e+03 2.5163766e+03 -2.6255894e+02 - 2.4855929e+03 2.4806598e+03 -1.7575788e+02 - 2.5000342e+03 2.4452690e+03 -8.2791075e+01 - 2.5092974e+03 2.4130949e+03 1.2265807e+01 - 2.5110148e+03 2.3862095e+03 1.0580267e+02 - 2.5037097e+03 2.3657198e+03 1.9519898e+02 - 2.4866975e+03 2.3519053e+03 2.7891659e+02 - 2.4598610e+03 2.3444773e+03 3.5630915e+02 - 2.4234237e+03 2.3428274e+03 4.2733758e+02 - 2.3777798e+03 2.3462099e+03 4.9231246e+02 - 2.3233859e+03 2.3538538e+03 5.5170730e+02 - 2.2607034e+03 2.3650215e+03 6.0604138e+02 - 2.1901712e+03 2.3790339e+03 6.5581454e+02 - 2.1121977e+03 2.3952771e+03 7.0147581e+02 - 2.0271627e+03 2.4131999e+03 7.4341192e+02 - 1.9354227e+03 2.4323072e+03 7.8194654e+02 - 1.8373187e+03 2.4521526e+03 8.1734483e+02 - 1.7331842e+03 2.4723324e+03 8.4982007e+02 - 1.6233518e+03 2.4924791e+03 8.7954092e+02 - 1.5081597e+03 2.5122576e+03 9.0663833e+02 - 1.3879568e+03 2.5313617e+03 9.3121193e+02 - 1.2631071e+03 2.5495119e+03 9.5333565e+02 - 1.1339926e+03 2.5664539e+03 9.7306270e+02 - 1.0010152e+03 2.5819585e+03 9.9042983e+02 - 8.6459793e+02 2.5958209e+03 1.0054611e+03 - 7.2518477e+02 2.6078617e+03 1.0181711e+03 - 5.8323977e+02 2.6179271e+03 1.0285675e+03 - 4.3924519e+02 2.6258897e+03 1.0366538e+03 - 2.9369886e+02 2.6316495e+03 1.0424304e+03 - 1.4711092e+02 2.6351343e+03 1.0458969e+03 - 0.0000000e+00 2.6363008e+03 1.0470525e+03 - -1.4711092e+02 2.6351343e+03 1.0458969e+03 - -2.9369886e+02 2.6316495e+03 1.0424304e+03 - -4.3924519e+02 2.6258897e+03 1.0366538e+03 - -5.8323977e+02 2.6179271e+03 1.0285675e+03 - -7.2518477e+02 2.6078617e+03 1.0181711e+03 - -8.6459793e+02 2.5958209e+03 1.0054611e+03 - -1.0010152e+03 2.5819585e+03 9.9042983e+02 - -1.1339926e+03 2.5664539e+03 9.7306270e+02 - -1.2631071e+03 2.5495119e+03 9.5333565e+02 - -1.3879568e+03 2.5313617e+03 9.3121193e+02 - -1.5081597e+03 2.5122576e+03 9.0663833e+02 - -1.6233518e+03 2.4924791e+03 8.7954092e+02 - -1.7331842e+03 2.4723324e+03 8.4982007e+02 - -1.8373187e+03 2.4521526e+03 8.1734483e+02 - -1.9354227e+03 2.4323072e+03 7.8194654e+02 - -2.0271627e+03 2.4131999e+03 7.4341192e+02 - -2.1121977e+03 2.3952771e+03 7.0147581e+02 - -2.1901712e+03 2.3790339e+03 6.5581454e+02 - -2.2607034e+03 2.3650215e+03 6.0604138e+02 - -2.3233859e+03 2.3538538e+03 5.5170730e+02 - -2.3777798e+03 2.3462099e+03 4.9231246e+02 - -2.4234237e+03 2.3428274e+03 4.2733758e+02 - -2.4598610e+03 2.3444773e+03 3.5630915e+02 - -2.4866975e+03 2.3519053e+03 2.7891659e+02 - -2.5037097e+03 2.3657198e+03 1.9519898e+02 - -2.5110148e+03 2.3862095e+03 1.0580267e+02 - -2.5092974e+03 2.4130949e+03 1.2265807e+01 - -2.5000342e+03 2.4452690e+03 -8.2791075e+01 - -2.4855929e+03 2.4806598e+03 -1.7575788e+02 - -2.4690561e+03 2.5163766e+03 -2.6255894e+02 - -2.4537180e+03 2.5492074e+03 -3.3952885e+02 - -2.4424184e+03 2.5763094e+03 -4.0426911e+02 - -2.4370155e+03 2.5957749e+03 -4.5605473e+02 - -2.4382195e+03 2.6068351e+03 -4.9564806e+02 - -2.4457663e+03 2.6097068e+03 -5.2473597e+02 - -2.4587512e+03 2.6052647e+03 -5.4532429e+02 - -2.4759482e+03 2.5947188e+03 -5.5929898e+02 - -2.4960286e+03 2.5793908e+03 -5.6819233e+02 - -2.5176742e+03 2.5605970e+03 -5.7309799e+02 - -2.5396109e+03 2.5396109e+03 -5.7466225e+02 - -2.5605970e+03 2.5176742e+03 -5.7309799e+02 - -2.5793908e+03 2.4960286e+03 -5.6819233e+02 - -2.5947188e+03 2.4759482e+03 -5.5929898e+02 - -2.6052647e+03 2.4587512e+03 -5.4532429e+02 - -2.6097068e+03 2.4457663e+03 -5.2473597e+02 - -2.6068351e+03 2.4382195e+03 -4.9564806e+02 - -2.5957749e+03 2.4370155e+03 -4.5605473e+02 - -2.5763094e+03 2.4424184e+03 -4.0426911e+02 - -2.5492074e+03 2.4537180e+03 -3.3952885e+02 - -2.5163766e+03 2.4690561e+03 -2.6255894e+02 - -2.4806598e+03 2.4855929e+03 -1.7575788e+02 - -2.4452690e+03 2.5000342e+03 -8.2791075e+01 - -2.4130949e+03 2.5092974e+03 1.2265807e+01 - -2.3862095e+03 2.5110148e+03 1.0580267e+02 - -2.3657198e+03 2.5037097e+03 1.9519898e+02 - -2.3519053e+03 2.4866975e+03 2.7891659e+02 - -2.3444773e+03 2.4598610e+03 3.5630915e+02 - -2.3428274e+03 2.4234237e+03 4.2733758e+02 - -2.3462099e+03 2.3777798e+03 4.9231246e+02 - -2.3538538e+03 2.3233859e+03 5.5170730e+02 - -2.3650215e+03 2.2607034e+03 6.0604138e+02 - -2.3790339e+03 2.1901712e+03 6.5581454e+02 - -2.3952771e+03 2.1121977e+03 7.0147581e+02 - -2.4131999e+03 2.0271627e+03 7.4341192e+02 - -2.4323072e+03 1.9354227e+03 7.8194654e+02 - -2.4521526e+03 1.8373187e+03 8.1734483e+02 - -2.4723324e+03 1.7331842e+03 8.4982007e+02 - -2.4924791e+03 1.6233518e+03 8.7954092e+02 - -2.5122576e+03 1.5081597e+03 9.0663833e+02 - -2.5313617e+03 1.3879568e+03 9.3121193e+02 - -2.5495119e+03 1.2631071e+03 9.5333565e+02 - -2.5664539e+03 1.1339926e+03 9.7306270e+02 - -2.5819585e+03 1.0010152e+03 9.9042983e+02 - -2.5958209e+03 8.6459793e+02 1.0054611e+03 - -2.6078617e+03 7.2518477e+02 1.0181711e+03 - -2.6179271e+03 5.8323977e+02 1.0285675e+03 - -2.6258897e+03 4.3924519e+02 1.0366538e+03 - -2.6316495e+03 2.9369886e+02 1.0424304e+03 - -2.6351343e+03 1.4711092e+02 1.0458969e+03 - -2.6363008e+03 -4.8134273e-09 1.0470525e+03 - -2.6351343e+03 -1.4711092e+02 1.0458969e+03 - -2.6316495e+03 -2.9369886e+02 1.0424304e+03 - -2.6258897e+03 -4.3924519e+02 1.0366538e+03 - -2.6179271e+03 -5.8323977e+02 1.0285675e+03 - -2.6078617e+03 -7.2518477e+02 1.0181711e+03 - -2.5958209e+03 -8.6459793e+02 1.0054611e+03 - -2.5819585e+03 -1.0010152e+03 9.9042983e+02 - -2.5664539e+03 -1.1339926e+03 9.7306270e+02 - -2.5495119e+03 -1.2631071e+03 9.5333565e+02 - -2.5313617e+03 -1.3879568e+03 9.3121193e+02 - -2.5122576e+03 -1.5081597e+03 9.0663833e+02 - -2.4924791e+03 -1.6233518e+03 8.7954092e+02 - -2.4723324e+03 -1.7331842e+03 8.4982007e+02 - -2.4521526e+03 -1.8373187e+03 8.1734483e+02 - -2.4323072e+03 -1.9354227e+03 7.8194654e+02 - -2.4131999e+03 -2.0271627e+03 7.4341192e+02 - -2.3952771e+03 -2.1121977e+03 7.0147581e+02 - -2.3790339e+03 -2.1901712e+03 6.5581454e+02 - -2.3650215e+03 -2.2607034e+03 6.0604138e+02 - -2.3538538e+03 -2.3233859e+03 5.5170730e+02 - -2.3462099e+03 -2.3777798e+03 4.9231246e+02 - -2.3428274e+03 -2.4234237e+03 4.2733758e+02 - -2.3444773e+03 -2.4598610e+03 3.5630915e+02 - -2.3519053e+03 -2.4866975e+03 2.7891659e+02 - -2.3657198e+03 -2.5037097e+03 1.9519898e+02 - -2.3862095e+03 -2.5110148e+03 1.0580267e+02 - -2.4130949e+03 -2.5092974e+03 1.2265807e+01 - -2.4452690e+03 -2.5000342e+03 -8.2791075e+01 - -2.4806598e+03 -2.4855929e+03 -1.7575788e+02 - -2.5163766e+03 -2.4690561e+03 -2.6255894e+02 - -2.5492074e+03 -2.4537180e+03 -3.3952885e+02 - -2.5763094e+03 -2.4424184e+03 -4.0426911e+02 - -2.5957749e+03 -2.4370155e+03 -4.5605473e+02 - -2.6068351e+03 -2.4382195e+03 -4.9564806e+02 - -2.6097068e+03 -2.4457663e+03 -5.2473597e+02 - -2.6052647e+03 -2.4587512e+03 -5.4532429e+02 - -2.5947188e+03 -2.4759482e+03 -5.5929898e+02 - -2.5793908e+03 -2.4960286e+03 -5.6819233e+02 - -2.5605970e+03 -2.5176742e+03 -5.7309799e+02 - -2.5396109e+03 -2.5396109e+03 -5.7466225e+02 - -2.5176742e+03 -2.5605970e+03 -5.7309799e+02 - -2.4960286e+03 -2.5793908e+03 -5.6819233e+02 - -2.4759482e+03 -2.5947188e+03 -5.5929898e+02 - -2.4587512e+03 -2.6052647e+03 -5.4532429e+02 - -2.4457663e+03 -2.6097068e+03 -5.2473597e+02 - -2.4382195e+03 -2.6068351e+03 -4.9564806e+02 - -2.4370155e+03 -2.5957749e+03 -4.5605473e+02 - -2.4424184e+03 -2.5763094e+03 -4.0426911e+02 - -2.4537180e+03 -2.5492074e+03 -3.3952885e+02 - -2.4690561e+03 -2.5163766e+03 -2.6255894e+02 - -2.4855929e+03 -2.4806598e+03 -1.7575788e+02 - -2.5000342e+03 -2.4452690e+03 -8.2791075e+01 - -2.5092974e+03 -2.4130949e+03 1.2265807e+01 - -2.5110148e+03 -2.3862095e+03 1.0580267e+02 - -2.5037097e+03 -2.3657198e+03 1.9519898e+02 - -2.4866975e+03 -2.3519053e+03 2.7891659e+02 - -2.4598610e+03 -2.3444773e+03 3.5630915e+02 - -2.4234237e+03 -2.3428274e+03 4.2733758e+02 - -2.3777798e+03 -2.3462099e+03 4.9231246e+02 - -2.3233859e+03 -2.3538538e+03 5.5170730e+02 - -2.2607034e+03 -2.3650215e+03 6.0604138e+02 - -2.1901712e+03 -2.3790339e+03 6.5581454e+02 - -2.1121977e+03 -2.3952771e+03 7.0147581e+02 - -2.0271627e+03 -2.4131999e+03 7.4341192e+02 - -1.9354227e+03 -2.4323072e+03 7.8194654e+02 - -1.8373187e+03 -2.4521526e+03 8.1734483e+02 - -1.7331842e+03 -2.4723324e+03 8.4982007e+02 - -1.6233518e+03 -2.4924791e+03 8.7954092e+02 - -1.5081597e+03 -2.5122576e+03 9.0663833e+02 - -1.3879568e+03 -2.5313617e+03 9.3121193e+02 - -1.2631071e+03 -2.5495119e+03 9.5333565e+02 - -1.1339926e+03 -2.5664539e+03 9.7306270e+02 - -1.0010152e+03 -2.5819585e+03 9.9042983e+02 - -8.6459793e+02 -2.5958209e+03 1.0054611e+03 - -7.2518477e+02 -2.6078617e+03 1.0181711e+03 - -5.8323977e+02 -2.6179271e+03 1.0285675e+03 - -4.3924519e+02 -2.6258897e+03 1.0366538e+03 - -2.9369886e+02 -2.6316495e+03 1.0424304e+03 - -1.4711092e+02 -2.6351343e+03 1.0458969e+03 - 0.0000000e+00 -2.6363008e+03 1.0470525e+03 - 1.4711092e+02 -2.6351343e+03 1.0458969e+03 - 2.9369886e+02 -2.6316495e+03 1.0424304e+03 - 4.3924519e+02 -2.6258897e+03 1.0366538e+03 - 5.8323977e+02 -2.6179271e+03 1.0285675e+03 - 7.2518477e+02 -2.6078617e+03 1.0181711e+03 - 8.6459793e+02 -2.5958209e+03 1.0054611e+03 - 1.0010152e+03 -2.5819585e+03 9.9042983e+02 - 1.1339926e+03 -2.5664539e+03 9.7306270e+02 - 1.2631071e+03 -2.5495119e+03 9.5333565e+02 - 1.3879568e+03 -2.5313617e+03 9.3121193e+02 - 1.5081597e+03 -2.5122576e+03 9.0663833e+02 - 1.6233518e+03 -2.4924791e+03 8.7954092e+02 - 1.7331842e+03 -2.4723324e+03 8.4982007e+02 - 1.8373187e+03 -2.4521526e+03 8.1734483e+02 - 1.9354227e+03 -2.4323072e+03 7.8194654e+02 - 2.0271627e+03 -2.4131999e+03 7.4341192e+02 - 2.1121977e+03 -2.3952771e+03 7.0147581e+02 - 2.1901712e+03 -2.3790339e+03 6.5581454e+02 - 2.2607034e+03 -2.3650215e+03 6.0604138e+02 - 2.3233859e+03 -2.3538538e+03 5.5170730e+02 - 2.3777798e+03 -2.3462099e+03 4.9231246e+02 - 2.4234237e+03 -2.3428274e+03 4.2733758e+02 - 2.4598610e+03 -2.3444773e+03 3.5630915e+02 - 2.4866975e+03 -2.3519053e+03 2.7891659e+02 - 2.5037097e+03 -2.3657198e+03 1.9519898e+02 - 2.5110148e+03 -2.3862095e+03 1.0580267e+02 - 2.5092974e+03 -2.4130949e+03 1.2265807e+01 - 2.5000342e+03 -2.4452690e+03 -8.2791075e+01 - 2.4855929e+03 -2.4806598e+03 -1.7575788e+02 - 2.4690561e+03 -2.5163766e+03 -2.6255894e+02 - 2.4537180e+03 -2.5492074e+03 -3.3952885e+02 - 2.4424184e+03 -2.5763094e+03 -4.0426911e+02 - 2.4370155e+03 -2.5957749e+03 -4.5605473e+02 - 2.4382195e+03 -2.6068351e+03 -4.9564806e+02 - 2.4457663e+03 -2.6097068e+03 -5.2473597e+02 - 2.4587512e+03 -2.6052647e+03 -5.4532429e+02 - 2.4759482e+03 -2.5947188e+03 -5.5929898e+02 - 2.4960286e+03 -2.5793908e+03 -5.6819233e+02 - 2.5176742e+03 -2.5605970e+03 -5.7309799e+02 - 2.5396109e+03 -2.5396109e+03 -5.7466225e+02 - 2.5605970e+03 -2.5176742e+03 -5.7309799e+02 - 2.5793908e+03 -2.4960286e+03 -5.6819233e+02 - 2.5947188e+03 -2.4759482e+03 -5.5929898e+02 - 2.6052647e+03 -2.4587512e+03 -5.4532429e+02 - 2.6097068e+03 -2.4457663e+03 -5.2473597e+02 - 2.6068351e+03 -2.4382195e+03 -4.9564806e+02 - 2.5957749e+03 -2.4370155e+03 -4.5605473e+02 - 2.5763094e+03 -2.4424184e+03 -4.0426911e+02 - 2.5492074e+03 -2.4537180e+03 -3.3952885e+02 - 2.5163766e+03 -2.4690561e+03 -2.6255894e+02 - 2.4806598e+03 -2.4855929e+03 -1.7575788e+02 - 2.4452690e+03 -2.5000342e+03 -8.2791075e+01 - 2.4130949e+03 -2.5092974e+03 1.2265807e+01 - 2.3862095e+03 -2.5110148e+03 1.0580267e+02 - 2.3657198e+03 -2.5037097e+03 1.9519898e+02 - 2.3519053e+03 -2.4866975e+03 2.7891659e+02 - 2.3444773e+03 -2.4598610e+03 3.5630915e+02 - 2.3428274e+03 -2.4234237e+03 4.2733758e+02 - 2.3462099e+03 -2.3777798e+03 4.9231246e+02 - 2.3538538e+03 -2.3233859e+03 5.5170730e+02 - 2.3650215e+03 -2.2607034e+03 6.0604138e+02 - 2.3790339e+03 -2.1901712e+03 6.5581454e+02 - 2.3952771e+03 -2.1121977e+03 7.0147581e+02 - 2.4131999e+03 -2.0271627e+03 7.4341192e+02 - 2.4323072e+03 -1.9354227e+03 7.8194654e+02 - 2.4521526e+03 -1.8373187e+03 8.1734483e+02 - 2.4723324e+03 -1.7331842e+03 8.4982007e+02 - 2.4924791e+03 -1.6233518e+03 8.7954092e+02 - 2.5122576e+03 -1.5081597e+03 9.0663833e+02 - 2.5313617e+03 -1.3879568e+03 9.3121193e+02 - 2.5495119e+03 -1.2631071e+03 9.5333565e+02 - 2.5664539e+03 -1.1339926e+03 9.7306270e+02 - 2.5819585e+03 -1.0010152e+03 9.9042983e+02 - 2.5958209e+03 -8.6459793e+02 1.0054611e+03 - 2.6078617e+03 -7.2518477e+02 1.0181711e+03 - 2.6179271e+03 -5.8323977e+02 1.0285675e+03 - 2.6258897e+03 -4.3924519e+02 1.0366538e+03 - 2.6316495e+03 -2.9369886e+02 1.0424304e+03 - 2.6351343e+03 -1.4711092e+02 1.0458969e+03 - 2.6363008e+03 0.0000000e+00 1.0470525e+03 - 2.6554163e+03 2.4067136e-09 9.6383487e+02 - 2.6541747e+03 1.4979816e+02 9.6279251e+02 - 2.6504645e+03 2.9906605e+02 9.5966643e+02 - 2.6443291e+03 4.4727814e+02 9.5445948e+02 - 2.6358404e+03 5.9391813e+02 9.4717580e+02 - 2.6250980e+03 7.3848315e+02 9.3781996e+02 - 2.6122282e+03 8.8048740e+02 9.2639571e+02 - 2.5973833e+03 1.0194651e+03 9.1290443e+02 - 2.5807399e+03 1.1549725e+03 8.9734317e+02 - 2.5624986e+03 1.2865895e+03 8.7970235e+02 - 2.5428825e+03 1.4139197e+03 8.5996306e+02 - 2.5221371e+03 1.5365898e+03 8.3809394e+02 - 2.5005304e+03 1.6542479e+03 8.1404749e+02 - 2.4783532e+03 1.7665610e+03 7.8775585e+02 - 2.4559206e+03 1.8732109e+03 7.5912584e+02 - 2.4335745e+03 1.9738900e+03 7.2803313e+02 - 2.4116872e+03 2.0682946e+03 6.9431548e+02 - 2.3906664e+03 2.1561186e+03 6.5776493e+02 - 2.3709617e+03 2.2370451e+03 6.1811901e+02 - 2.3530728e+03 2.3107373e+03 5.7505138e+02 - 2.3375593e+03 2.3768288e+03 5.2816316e+02 - 2.3250505e+03 2.4349147e+03 4.7697733e+02 - 2.3162543e+03 2.4845446e+03 4.2094147e+02 - 2.3119585e+03 2.5252240e+03 3.5944820e+02 - 2.3130156e+03 2.5564331e+03 2.9188967e+02 - 2.3202935e+03 2.5776780e+03 2.1777076e+02 - 2.3345634e+03 2.5886018e+03 1.3691163e+02 - 2.3562931e+03 2.5891821e+03 4.9760256e+01 - 2.3853307e+03 2.5800261e+03 -4.2216012e+01 - 2.4205305e+03 2.5627061e+03 -1.3620512e+02 - 2.4595009e+03 2.5399622e+03 -2.2807488e+02 - 2.4987461e+03 2.5155188e+03 -3.1302370e+02 - 2.5343464e+03 2.4933891e+03 -3.8678987e+02 - 2.5629475e+03 2.4769126e+03 -4.4683590e+02 - 2.5825267e+03 2.4680371e+03 -4.9281389e+02 - 2.5925758e+03 2.4671821e+03 -5.2614854e+02 - 2.5937777e+03 2.4735882e+03 -5.4916893e+02 - 2.5875072e+03 2.4858239e+03 -5.6431318e+02 - 2.5754185e+03 2.5021967e+03 -5.7364542e+02 - 2.5592084e+03 2.5209859e+03 -5.7865740e+02 - 2.5405277e+03 2.5405277e+03 -5.8023135e+02 - 2.5209859e+03 2.5592084e+03 -5.7865740e+02 - 2.5021967e+03 2.5754185e+03 -5.7364542e+02 - 2.4858239e+03 2.5875072e+03 -5.6431318e+02 - 2.4735882e+03 2.5937777e+03 -5.4916893e+02 - 2.4671821e+03 2.5925758e+03 -5.2614854e+02 - 2.4680371e+03 2.5825267e+03 -4.9281389e+02 - 2.4769126e+03 2.5629475e+03 -4.4683590e+02 - 2.4933891e+03 2.5343464e+03 -3.8678987e+02 - 2.5155188e+03 2.4987461e+03 -3.1302370e+02 - 2.5399622e+03 2.4595009e+03 -2.2807488e+02 - 2.5627061e+03 2.4205305e+03 -1.3620512e+02 - 2.5800261e+03 2.3853307e+03 -4.2216012e+01 - 2.5891821e+03 2.3562931e+03 4.9760256e+01 - 2.5886018e+03 2.3345634e+03 1.3691163e+02 - 2.5776780e+03 2.3202935e+03 2.1777076e+02 - 2.5564331e+03 2.3130156e+03 2.9188967e+02 - 2.5252240e+03 2.3119585e+03 3.5944820e+02 - 2.4845446e+03 2.3162543e+03 4.2094147e+02 - 2.4349147e+03 2.3250505e+03 4.7697733e+02 - 2.3768288e+03 2.3375593e+03 5.2816316e+02 - 2.3107373e+03 2.3530728e+03 5.7505138e+02 - 2.2370451e+03 2.3709617e+03 6.1811901e+02 - 2.1561186e+03 2.3906664e+03 6.5776493e+02 - 2.0682946e+03 2.4116872e+03 6.9431548e+02 - 1.9738900e+03 2.4335745e+03 7.2803313e+02 - 1.8732109e+03 2.4559206e+03 7.5912584e+02 - 1.7665610e+03 2.4783532e+03 7.8775585e+02 - 1.6542479e+03 2.5005304e+03 8.1404749e+02 - 1.5365898e+03 2.5221371e+03 8.3809394e+02 - 1.4139197e+03 2.5428825e+03 8.5996306e+02 - 1.2865895e+03 2.5624986e+03 8.7970235e+02 - 1.1549725e+03 2.5807399e+03 8.9734317e+02 - 1.0194651e+03 2.5973833e+03 9.1290443e+02 - 8.8048740e+02 2.6122282e+03 9.2639571e+02 - 7.3848315e+02 2.6250980e+03 9.3781996e+02 - 5.9391813e+02 2.6358404e+03 9.4717580e+02 - 4.4727814e+02 2.6443291e+03 9.5445948e+02 - 2.9906605e+02 2.6504645e+03 9.5966643e+02 - 1.4979816e+02 2.6541747e+03 9.6279251e+02 - 0.0000000e+00 2.6554163e+03 9.6383487e+02 - -1.4979816e+02 2.6541747e+03 9.6279251e+02 - -2.9906605e+02 2.6504645e+03 9.5966643e+02 - -4.4727814e+02 2.6443291e+03 9.5445948e+02 - -5.9391813e+02 2.6358404e+03 9.4717580e+02 - -7.3848315e+02 2.6250980e+03 9.3781996e+02 - -8.8048740e+02 2.6122282e+03 9.2639571e+02 - -1.0194651e+03 2.5973833e+03 9.1290443e+02 - -1.1549725e+03 2.5807399e+03 8.9734317e+02 - -1.2865895e+03 2.5624986e+03 8.7970235e+02 - -1.4139197e+03 2.5428825e+03 8.5996306e+02 - -1.5365898e+03 2.5221371e+03 8.3809394e+02 - -1.6542479e+03 2.5005304e+03 8.1404749e+02 - -1.7665610e+03 2.4783532e+03 7.8775585e+02 - -1.8732109e+03 2.4559206e+03 7.5912584e+02 - -1.9738900e+03 2.4335745e+03 7.2803313e+02 - -2.0682946e+03 2.4116872e+03 6.9431548e+02 - -2.1561186e+03 2.3906664e+03 6.5776493e+02 - -2.2370451e+03 2.3709617e+03 6.1811901e+02 - -2.3107373e+03 2.3530728e+03 5.7505138e+02 - -2.3768288e+03 2.3375593e+03 5.2816316e+02 - -2.4349147e+03 2.3250505e+03 4.7697733e+02 - -2.4845446e+03 2.3162543e+03 4.2094147e+02 - -2.5252240e+03 2.3119585e+03 3.5944820e+02 - -2.5564331e+03 2.3130156e+03 2.9188967e+02 - -2.5776780e+03 2.3202935e+03 2.1777076e+02 - -2.5886018e+03 2.3345634e+03 1.3691163e+02 - -2.5891821e+03 2.3562931e+03 4.9760256e+01 - -2.5800261e+03 2.3853307e+03 -4.2216012e+01 - -2.5627061e+03 2.4205305e+03 -1.3620512e+02 - -2.5399622e+03 2.4595009e+03 -2.2807488e+02 - -2.5155188e+03 2.4987461e+03 -3.1302370e+02 - -2.4933891e+03 2.5343464e+03 -3.8678987e+02 - -2.4769126e+03 2.5629475e+03 -4.4683590e+02 - -2.4680371e+03 2.5825267e+03 -4.9281389e+02 - -2.4671821e+03 2.5925758e+03 -5.2614854e+02 - -2.4735882e+03 2.5937777e+03 -5.4916893e+02 - -2.4858239e+03 2.5875072e+03 -5.6431318e+02 - -2.5021967e+03 2.5754185e+03 -5.7364542e+02 - -2.5209859e+03 2.5592084e+03 -5.7865740e+02 - -2.5405277e+03 2.5405277e+03 -5.8023135e+02 - -2.5592084e+03 2.5209859e+03 -5.7865740e+02 - -2.5754185e+03 2.5021967e+03 -5.7364542e+02 - -2.5875072e+03 2.4858239e+03 -5.6431318e+02 - -2.5937777e+03 2.4735882e+03 -5.4916893e+02 - -2.5925758e+03 2.4671821e+03 -5.2614854e+02 - -2.5825267e+03 2.4680371e+03 -4.9281389e+02 - -2.5629475e+03 2.4769126e+03 -4.4683590e+02 - -2.5343464e+03 2.4933891e+03 -3.8678987e+02 - -2.4987461e+03 2.5155188e+03 -3.1302370e+02 - -2.4595009e+03 2.5399622e+03 -2.2807488e+02 - -2.4205305e+03 2.5627061e+03 -1.3620512e+02 - -2.3853307e+03 2.5800261e+03 -4.2216012e+01 - -2.3562931e+03 2.5891821e+03 4.9760256e+01 - -2.3345634e+03 2.5886018e+03 1.3691163e+02 - -2.3202935e+03 2.5776780e+03 2.1777076e+02 - -2.3130156e+03 2.5564331e+03 2.9188967e+02 - -2.3119585e+03 2.5252240e+03 3.5944820e+02 - -2.3162543e+03 2.4845446e+03 4.2094147e+02 - -2.3250505e+03 2.4349147e+03 4.7697733e+02 - -2.3375593e+03 2.3768288e+03 5.2816316e+02 - -2.3530728e+03 2.3107373e+03 5.7505138e+02 - -2.3709617e+03 2.2370451e+03 6.1811901e+02 - -2.3906664e+03 2.1561186e+03 6.5776493e+02 - -2.4116872e+03 2.0682946e+03 6.9431548e+02 - -2.4335745e+03 1.9738900e+03 7.2803313e+02 - -2.4559206e+03 1.8732109e+03 7.5912584e+02 - -2.4783532e+03 1.7665610e+03 7.8775585e+02 - -2.5005304e+03 1.6542479e+03 8.1404749e+02 - -2.5221371e+03 1.5365898e+03 8.3809394e+02 - -2.5428825e+03 1.4139197e+03 8.5996306e+02 - -2.5624986e+03 1.2865895e+03 8.7970235e+02 - -2.5807399e+03 1.1549725e+03 8.9734317e+02 - -2.5973833e+03 1.0194651e+03 9.1290443e+02 - -2.6122282e+03 8.8048740e+02 9.2639571e+02 - -2.6250980e+03 7.3848315e+02 9.3781996e+02 - -2.6358404e+03 5.9391813e+02 9.4717580e+02 - -2.6443291e+03 4.4727814e+02 9.5445948e+02 - -2.6504645e+03 2.9906605e+02 9.5966643e+02 - -2.6541747e+03 1.4979816e+02 9.6279251e+02 - -2.6554163e+03 0.0000000e+00 9.6383487e+02 - -2.6541747e+03 -1.4979816e+02 9.6279251e+02 - -2.6504645e+03 -2.9906605e+02 9.5966643e+02 - -2.6443291e+03 -4.4727814e+02 9.5445948e+02 - -2.6358404e+03 -5.9391813e+02 9.4717580e+02 - -2.6250980e+03 -7.3848315e+02 9.3781996e+02 - -2.6122282e+03 -8.8048740e+02 9.2639571e+02 - -2.5973833e+03 -1.0194651e+03 9.1290443e+02 - -2.5807399e+03 -1.1549725e+03 8.9734317e+02 - -2.5624986e+03 -1.2865895e+03 8.7970235e+02 - -2.5428825e+03 -1.4139197e+03 8.5996306e+02 - -2.5221371e+03 -1.5365898e+03 8.3809394e+02 - -2.5005304e+03 -1.6542479e+03 8.1404749e+02 - -2.4783532e+03 -1.7665610e+03 7.8775585e+02 - -2.4559206e+03 -1.8732109e+03 7.5912584e+02 - -2.4335745e+03 -1.9738900e+03 7.2803313e+02 - -2.4116872e+03 -2.0682946e+03 6.9431548e+02 - -2.3906664e+03 -2.1561186e+03 6.5776493e+02 - -2.3709617e+03 -2.2370451e+03 6.1811901e+02 - -2.3530728e+03 -2.3107373e+03 5.7505138e+02 - -2.3375593e+03 -2.3768288e+03 5.2816316e+02 - -2.3250505e+03 -2.4349147e+03 4.7697733e+02 - -2.3162543e+03 -2.4845446e+03 4.2094147e+02 - -2.3119585e+03 -2.5252240e+03 3.5944820e+02 - -2.3130156e+03 -2.5564331e+03 2.9188967e+02 - -2.3202935e+03 -2.5776780e+03 2.1777076e+02 - -2.3345634e+03 -2.5886018e+03 1.3691163e+02 - -2.3562931e+03 -2.5891821e+03 4.9760256e+01 - -2.3853307e+03 -2.5800261e+03 -4.2216012e+01 - -2.4205305e+03 -2.5627061e+03 -1.3620512e+02 - -2.4595009e+03 -2.5399622e+03 -2.2807488e+02 - -2.4987461e+03 -2.5155188e+03 -3.1302370e+02 - -2.5343464e+03 -2.4933891e+03 -3.8678987e+02 - -2.5629475e+03 -2.4769126e+03 -4.4683590e+02 - -2.5825267e+03 -2.4680371e+03 -4.9281389e+02 - -2.5925758e+03 -2.4671821e+03 -5.2614854e+02 - -2.5937777e+03 -2.4735882e+03 -5.4916893e+02 - -2.5875072e+03 -2.4858239e+03 -5.6431318e+02 - -2.5754185e+03 -2.5021967e+03 -5.7364542e+02 - -2.5592084e+03 -2.5209859e+03 -5.7865740e+02 - -2.5405277e+03 -2.5405277e+03 -5.8023135e+02 - -2.5209859e+03 -2.5592084e+03 -5.7865740e+02 - -2.5021967e+03 -2.5754185e+03 -5.7364542e+02 - -2.4858239e+03 -2.5875072e+03 -5.6431318e+02 - -2.4735882e+03 -2.5937777e+03 -5.4916893e+02 - -2.4671821e+03 -2.5925758e+03 -5.2614854e+02 - -2.4680371e+03 -2.5825267e+03 -4.9281389e+02 - -2.4769126e+03 -2.5629475e+03 -4.4683590e+02 - -2.4933891e+03 -2.5343464e+03 -3.8678987e+02 - -2.5155188e+03 -2.4987461e+03 -3.1302370e+02 - -2.5399622e+03 -2.4595009e+03 -2.2807488e+02 - -2.5627061e+03 -2.4205305e+03 -1.3620512e+02 - -2.5800261e+03 -2.3853307e+03 -4.2216012e+01 - -2.5891821e+03 -2.3562931e+03 4.9760256e+01 - -2.5886018e+03 -2.3345634e+03 1.3691163e+02 - -2.5776780e+03 -2.3202935e+03 2.1777076e+02 - -2.5564331e+03 -2.3130156e+03 2.9188967e+02 - -2.5252240e+03 -2.3119585e+03 3.5944820e+02 - -2.4845446e+03 -2.3162543e+03 4.2094147e+02 - -2.4349147e+03 -2.3250505e+03 4.7697733e+02 - -2.3768288e+03 -2.3375593e+03 5.2816316e+02 - -2.3107373e+03 -2.3530728e+03 5.7505138e+02 - -2.2370451e+03 -2.3709617e+03 6.1811901e+02 - -2.1561186e+03 -2.3906664e+03 6.5776493e+02 - -2.0682946e+03 -2.4116872e+03 6.9431548e+02 - -1.9738900e+03 -2.4335745e+03 7.2803313e+02 - -1.8732109e+03 -2.4559206e+03 7.5912584e+02 - -1.7665610e+03 -2.4783532e+03 7.8775585e+02 - -1.6542479e+03 -2.5005304e+03 8.1404749e+02 - -1.5365898e+03 -2.5221371e+03 8.3809394e+02 - -1.4139197e+03 -2.5428825e+03 8.5996306e+02 - -1.2865895e+03 -2.5624986e+03 8.7970235e+02 - -1.1549725e+03 -2.5807399e+03 8.9734317e+02 - -1.0194651e+03 -2.5973833e+03 9.1290443e+02 - -8.8048740e+02 -2.6122282e+03 9.2639571e+02 - -7.3848315e+02 -2.6250980e+03 9.3781996e+02 - -5.9391813e+02 -2.6358404e+03 9.4717580e+02 - -4.4727814e+02 -2.6443291e+03 9.5445948e+02 - -2.9906605e+02 -2.6504645e+03 9.5966643e+02 - -1.4979816e+02 -2.6541747e+03 9.6279251e+02 - 2.4067136e-09 -2.6554163e+03 9.6383487e+02 - 1.4979816e+02 -2.6541747e+03 9.6279251e+02 - 2.9906605e+02 -2.6504645e+03 9.5966643e+02 - 4.4727814e+02 -2.6443291e+03 9.5445948e+02 - 5.9391813e+02 -2.6358404e+03 9.4717580e+02 - 7.3848315e+02 -2.6250980e+03 9.3781996e+02 - 8.8048740e+02 -2.6122282e+03 9.2639571e+02 - 1.0194651e+03 -2.5973833e+03 9.1290443e+02 - 1.1549725e+03 -2.5807399e+03 8.9734317e+02 - 1.2865895e+03 -2.5624986e+03 8.7970235e+02 - 1.4139197e+03 -2.5428825e+03 8.5996306e+02 - 1.5365898e+03 -2.5221371e+03 8.3809394e+02 - 1.6542479e+03 -2.5005304e+03 8.1404749e+02 - 1.7665610e+03 -2.4783532e+03 7.8775585e+02 - 1.8732109e+03 -2.4559206e+03 7.5912584e+02 - 1.9738900e+03 -2.4335745e+03 7.2803313e+02 - 2.0682946e+03 -2.4116872e+03 6.9431548e+02 - 2.1561186e+03 -2.3906664e+03 6.5776493e+02 - 2.2370451e+03 -2.3709617e+03 6.1811901e+02 - 2.3107373e+03 -2.3530728e+03 5.7505138e+02 - 2.3768288e+03 -2.3375593e+03 5.2816316e+02 - 2.4349147e+03 -2.3250505e+03 4.7697733e+02 - 2.4845446e+03 -2.3162543e+03 4.2094147e+02 - 2.5252240e+03 -2.3119585e+03 3.5944820e+02 - 2.5564331e+03 -2.3130156e+03 2.9188967e+02 - 2.5776780e+03 -2.3202935e+03 2.1777076e+02 - 2.5886018e+03 -2.3345634e+03 1.3691163e+02 - 2.5891821e+03 -2.3562931e+03 4.9760256e+01 - 2.5800261e+03 -2.3853307e+03 -4.2216012e+01 - 2.5627061e+03 -2.4205305e+03 -1.3620512e+02 - 2.5399622e+03 -2.4595009e+03 -2.2807488e+02 - 2.5155188e+03 -2.4987461e+03 -3.1302370e+02 - 2.4933891e+03 -2.5343464e+03 -3.8678987e+02 - 2.4769126e+03 -2.5629475e+03 -4.4683590e+02 - 2.4680371e+03 -2.5825267e+03 -4.9281389e+02 - 2.4671821e+03 -2.5925758e+03 -5.2614854e+02 - 2.4735882e+03 -2.5937777e+03 -5.4916893e+02 - 2.4858239e+03 -2.5875072e+03 -5.6431318e+02 - 2.5021967e+03 -2.5754185e+03 -5.7364542e+02 - 2.5209859e+03 -2.5592084e+03 -5.7865740e+02 - 2.5405277e+03 -2.5405277e+03 -5.8023135e+02 - 2.5592084e+03 -2.5209859e+03 -5.7865740e+02 - 2.5754185e+03 -2.5021967e+03 -5.7364542e+02 - 2.5875072e+03 -2.4858239e+03 -5.6431318e+02 - 2.5937777e+03 -2.4735882e+03 -5.4916893e+02 - 2.5925758e+03 -2.4671821e+03 -5.2614854e+02 - 2.5825267e+03 -2.4680371e+03 -4.9281389e+02 - 2.5629475e+03 -2.4769126e+03 -4.4683590e+02 - 2.5343464e+03 -2.4933891e+03 -3.8678987e+02 - 2.4987461e+03 -2.5155188e+03 -3.1302370e+02 - 2.4595009e+03 -2.5399622e+03 -2.2807488e+02 - 2.4205305e+03 -2.5627061e+03 -1.3620512e+02 - 2.3853307e+03 -2.5800261e+03 -4.2216012e+01 - 2.3562931e+03 -2.5891821e+03 4.9760256e+01 - 2.3345634e+03 -2.5886018e+03 1.3691163e+02 - 2.3202935e+03 -2.5776780e+03 2.1777076e+02 - 2.3130156e+03 -2.5564331e+03 2.9188967e+02 - 2.3119585e+03 -2.5252240e+03 3.5944820e+02 - 2.3162543e+03 -2.4845446e+03 4.2094147e+02 - 2.3250505e+03 -2.4349147e+03 4.7697733e+02 - 2.3375593e+03 -2.3768288e+03 5.2816316e+02 - 2.3530728e+03 -2.3107373e+03 5.7505138e+02 - 2.3709617e+03 -2.2370451e+03 6.1811901e+02 - 2.3906664e+03 -2.1561186e+03 6.5776493e+02 - 2.4116872e+03 -2.0682946e+03 6.9431548e+02 - 2.4335745e+03 -1.9738900e+03 7.2803313e+02 - 2.4559206e+03 -1.8732109e+03 7.5912584e+02 - 2.4783532e+03 -1.7665610e+03 7.8775585e+02 - 2.5005304e+03 -1.6542479e+03 8.1404749e+02 - 2.5221371e+03 -1.5365898e+03 8.3809394e+02 - 2.5428825e+03 -1.4139197e+03 8.5996306e+02 - 2.5624986e+03 -1.2865895e+03 8.7970235e+02 - 2.5807399e+03 -1.1549725e+03 8.9734317e+02 - 2.5973833e+03 -1.0194651e+03 9.1290443e+02 - 2.6122282e+03 -8.8048740e+02 9.2639571e+02 - 2.6250980e+03 -7.3848315e+02 9.3781996e+02 - 2.6358404e+03 -5.9391813e+02 9.4717580e+02 - 2.6443291e+03 -4.4727814e+02 9.5445948e+02 - 2.6504645e+03 -2.9906605e+02 9.5966643e+02 - 2.6541747e+03 -1.4979816e+02 9.6279251e+02 - 2.6554163e+03 2.4067136e-09 9.6383487e+02 - 2.6730318e+03 2.4067136e-09 8.7960094e+02 - 2.6717239e+03 1.5220631e+02 8.7866575e+02 - 2.6678148e+03 3.0387458e+02 8.7586166e+02 - 2.6613482e+03 4.5447185e+02 8.7119299e+02 - 2.6523963e+03 6.0347507e+02 8.6466639e+02 - 2.6410589e+03 7.5037559e+02 8.5629015e+02 - 2.6274624e+03 8.9468310e+02 8.4607313e+02 - 2.6117585e+03 1.0359289e+03 8.3402341e+02 - 2.5941230e+03 1.1736683e+03 8.2014667e+02 - 2.5747539e+03 1.3074820e+03 8.0444431e+02 - 2.5538709e+03 1.4369771e+03 7.8691120e+02 - 2.5317141e+03 1.5617863e+03 7.6753313e+02 - 2.5085433e+03 1.6815667e+03 7.4628383e+02 - 2.4846383e+03 1.7959974e+03 7.2312153e+02 - 2.4602996e+03 1.9047762e+03 6.9798491e+02 - 2.4358496e+03 2.0076157e+03 6.7078831e+02 - 2.4116355e+03 2.1042371e+03 6.4141592e+02 - 2.3880330e+03 2.1943649e+03 6.0971487e+02 - 2.3654518e+03 2.2777188e+03 5.7548676e+02 - 2.3443426e+03 2.3540054e+03 5.3847767e+02 - 2.3252070e+03 2.4229079e+03 4.9836642e+02 - 2.3086085e+03 2.4840750e+03 4.5475182e+02 - 2.2951864e+03 2.5371089e+03 4.0714052e+02 - 2.2856697e+03 2.5815536e+03 3.5493976e+02 - 2.2808879e+03 2.6168890e+03 2.9746404e+02 - 2.2817678e+03 2.6425384e+03 2.3397332e+02 - 2.2892985e+03 2.6579088e+03 1.6377373e+02 - 2.3044268e+03 2.6624974e+03 8.6427445e+01 - 2.3278317e+03 2.6561119e+03 2.1210316e+00 - 2.3595284e+03 2.6392462e+03 -8.7807657e+01 - 2.3983368e+03 2.6135690e+03 -1.8034572e+02 - 2.4414515e+03 2.5822922e+03 -2.7070473e+02 - 2.4845634e+03 2.5499875e+03 -3.5314669e+02 - 2.5228361e+03 2.5215856e+03 -4.2270866e+02 - 2.5523586e+03 2.5009533e+03 -4.7685773e+02 - 2.5711637e+03 2.4899394e+03 -5.1593757e+02 - 2.5792802e+03 2.4883820e+03 -5.4230744e+02 - 2.5781050e+03 2.4947697e+03 -5.5903510e+02 - 2.5696789e+03 2.5069759e+03 -5.6891975e+02 - 2.5562067e+03 2.5227378e+03 -5.7403261e+02 - 2.5398557e+03 2.5398557e+03 -5.7560247e+02 - 2.5227378e+03 2.5562067e+03 -5.7403261e+02 - 2.5069759e+03 2.5696789e+03 -5.6891975e+02 - 2.4947697e+03 2.5781050e+03 -5.5903510e+02 - 2.4883820e+03 2.5792802e+03 -5.4230744e+02 - 2.4899394e+03 2.5711637e+03 -5.1593757e+02 - 2.5009533e+03 2.5523586e+03 -4.7685773e+02 - 2.5215856e+03 2.5228361e+03 -4.2270866e+02 - 2.5499875e+03 2.4845634e+03 -3.5314669e+02 - 2.5822922e+03 2.4414515e+03 -2.7070473e+02 - 2.6135690e+03 2.3983368e+03 -1.8034572e+02 - 2.6392462e+03 2.3595284e+03 -8.7807657e+01 - 2.6561119e+03 2.3278317e+03 2.1210316e+00 - 2.6624974e+03 2.3044268e+03 8.6427445e+01 - 2.6579088e+03 2.2892985e+03 1.6377373e+02 - 2.6425384e+03 2.2817678e+03 2.3397332e+02 - 2.6168890e+03 2.2808879e+03 2.9746404e+02 - 2.5815536e+03 2.2856697e+03 3.5493976e+02 - 2.5371089e+03 2.2951864e+03 4.0714052e+02 - 2.4840750e+03 2.3086085e+03 4.5475182e+02 - 2.4229079e+03 2.3252070e+03 4.9836642e+02 - 2.3540054e+03 2.3443426e+03 5.3847767e+02 - 2.2777188e+03 2.3654518e+03 5.7548676e+02 - 2.1943649e+03 2.3880330e+03 6.0971487e+02 - 2.1042371e+03 2.4116355e+03 6.4141592e+02 - 2.0076157e+03 2.4358496e+03 6.7078831e+02 - 1.9047762e+03 2.4602996e+03 6.9798491e+02 - 1.7959974e+03 2.4846383e+03 7.2312153e+02 - 1.6815667e+03 2.5085433e+03 7.4628383e+02 - 1.5617863e+03 2.5317141e+03 7.6753313e+02 - 1.4369771e+03 2.5538709e+03 7.8691120e+02 - 1.3074820e+03 2.5747539e+03 8.0444431e+02 - 1.1736683e+03 2.5941230e+03 8.2014667e+02 - 1.0359289e+03 2.6117585e+03 8.3402341e+02 - 8.9468310e+02 2.6274624e+03 8.4607313e+02 - 7.5037559e+02 2.6410589e+03 8.5629015e+02 - 6.0347507e+02 2.6523963e+03 8.6466639e+02 - 4.5447185e+02 2.6613482e+03 8.7119299e+02 - 3.0387458e+02 2.6678148e+03 8.7586166e+02 - 1.5220631e+02 2.6717239e+03 8.7866575e+02 - 2.4067136e-09 2.6730318e+03 8.7960094e+02 - -1.5220631e+02 2.6717239e+03 8.7866575e+02 - -3.0387458e+02 2.6678148e+03 8.7586166e+02 - -4.5447185e+02 2.6613482e+03 8.7119299e+02 - -6.0347507e+02 2.6523963e+03 8.6466639e+02 - -7.5037559e+02 2.6410589e+03 8.5629015e+02 - -8.9468310e+02 2.6274624e+03 8.4607313e+02 - -1.0359289e+03 2.6117585e+03 8.3402341e+02 - -1.1736683e+03 2.5941230e+03 8.2014667e+02 - -1.3074820e+03 2.5747539e+03 8.0444431e+02 - -1.4369771e+03 2.5538709e+03 7.8691120e+02 - -1.5617863e+03 2.5317141e+03 7.6753313e+02 - -1.6815667e+03 2.5085433e+03 7.4628383e+02 - -1.7959974e+03 2.4846383e+03 7.2312153e+02 - -1.9047762e+03 2.4602996e+03 6.9798491e+02 - -2.0076157e+03 2.4358496e+03 6.7078831e+02 - -2.1042371e+03 2.4116355e+03 6.4141592e+02 - -2.1943649e+03 2.3880330e+03 6.0971487e+02 - -2.2777188e+03 2.3654518e+03 5.7548676e+02 - -2.3540054e+03 2.3443426e+03 5.3847767e+02 - -2.4229079e+03 2.3252070e+03 4.9836642e+02 - -2.4840750e+03 2.3086085e+03 4.5475182e+02 - -2.5371089e+03 2.2951864e+03 4.0714052e+02 - -2.5815536e+03 2.2856697e+03 3.5493976e+02 - -2.6168890e+03 2.2808879e+03 2.9746404e+02 - -2.6425384e+03 2.2817678e+03 2.3397332e+02 - -2.6579088e+03 2.2892985e+03 1.6377373e+02 - -2.6624974e+03 2.3044268e+03 8.6427445e+01 - -2.6561119e+03 2.3278317e+03 2.1210315e+00 - -2.6392462e+03 2.3595284e+03 -8.7807657e+01 - -2.6135690e+03 2.3983368e+03 -1.8034572e+02 - -2.5822922e+03 2.4414515e+03 -2.7070473e+02 - -2.5499875e+03 2.4845634e+03 -3.5314669e+02 - -2.5215856e+03 2.5228361e+03 -4.2270866e+02 - -2.5009533e+03 2.5523586e+03 -4.7685773e+02 - -2.4899394e+03 2.5711637e+03 -5.1593757e+02 - -2.4883820e+03 2.5792802e+03 -5.4230744e+02 - -2.4947697e+03 2.5781050e+03 -5.5903510e+02 - -2.5069759e+03 2.5696789e+03 -5.6891975e+02 - -2.5227378e+03 2.5562067e+03 -5.7403261e+02 - -2.5398557e+03 2.5398557e+03 -5.7560247e+02 - -2.5562067e+03 2.5227378e+03 -5.7403261e+02 - -2.5696789e+03 2.5069759e+03 -5.6891975e+02 - -2.5781050e+03 2.4947697e+03 -5.5903510e+02 - -2.5792802e+03 2.4883820e+03 -5.4230744e+02 - -2.5711637e+03 2.4899394e+03 -5.1593757e+02 - -2.5523586e+03 2.5009533e+03 -4.7685773e+02 - -2.5228361e+03 2.5215856e+03 -4.2270866e+02 - -2.4845634e+03 2.5499875e+03 -3.5314669e+02 - -2.4414515e+03 2.5822922e+03 -2.7070473e+02 - -2.3983368e+03 2.6135690e+03 -1.8034572e+02 - -2.3595284e+03 2.6392462e+03 -8.7807657e+01 - -2.3278317e+03 2.6561119e+03 2.1210316e+00 - -2.3044268e+03 2.6624974e+03 8.6427445e+01 - -2.2892985e+03 2.6579088e+03 1.6377373e+02 - -2.2817678e+03 2.6425384e+03 2.3397332e+02 - -2.2808879e+03 2.6168890e+03 2.9746404e+02 - -2.2856697e+03 2.5815536e+03 3.5493976e+02 - -2.2951864e+03 2.5371089e+03 4.0714052e+02 - -2.3086085e+03 2.4840750e+03 4.5475182e+02 - -2.3252070e+03 2.4229079e+03 4.9836642e+02 - -2.3443426e+03 2.3540054e+03 5.3847767e+02 - -2.3654518e+03 2.2777188e+03 5.7548676e+02 - -2.3880330e+03 2.1943649e+03 6.0971487e+02 - -2.4116355e+03 2.1042371e+03 6.4141592e+02 - -2.4358496e+03 2.0076157e+03 6.7078831e+02 - -2.4602996e+03 1.9047762e+03 6.9798491e+02 - -2.4846383e+03 1.7959974e+03 7.2312153e+02 - -2.5085433e+03 1.6815667e+03 7.4628383e+02 - -2.5317141e+03 1.5617863e+03 7.6753313e+02 - -2.5538709e+03 1.4369771e+03 7.8691120e+02 - -2.5747539e+03 1.3074820e+03 8.0444431e+02 - -2.5941230e+03 1.1736683e+03 8.2014667e+02 - -2.6117585e+03 1.0359289e+03 8.3402341e+02 - -2.6274624e+03 8.9468310e+02 8.4607313e+02 - -2.6410589e+03 7.5037559e+02 8.5629015e+02 - -2.6523963e+03 6.0347507e+02 8.6466639e+02 - -2.6613482e+03 4.5447185e+02 8.7119299e+02 - -2.6678148e+03 3.0387458e+02 8.7586166e+02 - -2.6717239e+03 1.5220631e+02 8.7866575e+02 - -2.6730318e+03 0.0000000e+00 8.7960094e+02 - -2.6717239e+03 -1.5220631e+02 8.7866575e+02 - -2.6678148e+03 -3.0387458e+02 8.7586166e+02 - -2.6613482e+03 -4.5447185e+02 8.7119299e+02 - -2.6523963e+03 -6.0347507e+02 8.6466639e+02 - -2.6410589e+03 -7.5037559e+02 8.5629015e+02 - -2.6274624e+03 -8.9468310e+02 8.4607313e+02 - -2.6117585e+03 -1.0359289e+03 8.3402341e+02 - -2.5941230e+03 -1.1736683e+03 8.2014667e+02 - -2.5747539e+03 -1.3074820e+03 8.0444431e+02 - -2.5538709e+03 -1.4369771e+03 7.8691120e+02 - -2.5317141e+03 -1.5617863e+03 7.6753313e+02 - -2.5085433e+03 -1.6815667e+03 7.4628383e+02 - -2.4846383e+03 -1.7959974e+03 7.2312153e+02 - -2.4602996e+03 -1.9047762e+03 6.9798491e+02 - -2.4358496e+03 -2.0076157e+03 6.7078831e+02 - -2.4116355e+03 -2.1042371e+03 6.4141592e+02 - -2.3880330e+03 -2.1943649e+03 6.0971487e+02 - -2.3654518e+03 -2.2777188e+03 5.7548676e+02 - -2.3443426e+03 -2.3540054e+03 5.3847767e+02 - -2.3252070e+03 -2.4229079e+03 4.9836642e+02 - -2.3086085e+03 -2.4840750e+03 4.5475182e+02 - -2.2951864e+03 -2.5371089e+03 4.0714052e+02 - -2.2856697e+03 -2.5815536e+03 3.5493976e+02 - -2.2808879e+03 -2.6168890e+03 2.9746404e+02 - -2.2817678e+03 -2.6425384e+03 2.3397332e+02 - -2.2892985e+03 -2.6579088e+03 1.6377373e+02 - -2.3044268e+03 -2.6624974e+03 8.6427445e+01 - -2.3278317e+03 -2.6561119e+03 2.1210316e+00 - -2.3595284e+03 -2.6392462e+03 -8.7807657e+01 - -2.3983368e+03 -2.6135690e+03 -1.8034572e+02 - -2.4414515e+03 -2.5822922e+03 -2.7070473e+02 - -2.4845634e+03 -2.5499875e+03 -3.5314669e+02 - -2.5228361e+03 -2.5215856e+03 -4.2270866e+02 - -2.5523586e+03 -2.5009533e+03 -4.7685773e+02 - -2.5711637e+03 -2.4899394e+03 -5.1593757e+02 - -2.5792802e+03 -2.4883820e+03 -5.4230744e+02 - -2.5781050e+03 -2.4947697e+03 -5.5903510e+02 - -2.5696789e+03 -2.5069759e+03 -5.6891975e+02 - -2.5562067e+03 -2.5227378e+03 -5.7403261e+02 - -2.5398557e+03 -2.5398557e+03 -5.7560247e+02 - -2.5227378e+03 -2.5562067e+03 -5.7403261e+02 - -2.5069759e+03 -2.5696789e+03 -5.6891975e+02 - -2.4947697e+03 -2.5781050e+03 -5.5903510e+02 - -2.4883820e+03 -2.5792802e+03 -5.4230744e+02 - -2.4899394e+03 -2.5711637e+03 -5.1593757e+02 - -2.5009533e+03 -2.5523586e+03 -4.7685773e+02 - -2.5215856e+03 -2.5228361e+03 -4.2270866e+02 - -2.5499875e+03 -2.4845634e+03 -3.5314669e+02 - -2.5822922e+03 -2.4414515e+03 -2.7070473e+02 - -2.6135690e+03 -2.3983368e+03 -1.8034572e+02 - -2.6392462e+03 -2.3595284e+03 -8.7807657e+01 - -2.6561119e+03 -2.3278317e+03 2.1210316e+00 - -2.6624974e+03 -2.3044268e+03 8.6427445e+01 - -2.6579088e+03 -2.2892985e+03 1.6377373e+02 - -2.6425384e+03 -2.2817678e+03 2.3397332e+02 - -2.6168890e+03 -2.2808879e+03 2.9746404e+02 - -2.5815536e+03 -2.2856697e+03 3.5493976e+02 - -2.5371089e+03 -2.2951864e+03 4.0714052e+02 - -2.4840750e+03 -2.3086085e+03 4.5475182e+02 - -2.4229079e+03 -2.3252070e+03 4.9836642e+02 - -2.3540054e+03 -2.3443426e+03 5.3847767e+02 - -2.2777188e+03 -2.3654518e+03 5.7548676e+02 - -2.1943649e+03 -2.3880330e+03 6.0971487e+02 - -2.1042371e+03 -2.4116355e+03 6.4141592e+02 - -2.0076157e+03 -2.4358496e+03 6.7078831e+02 - -1.9047762e+03 -2.4602996e+03 6.9798491e+02 - -1.7959974e+03 -2.4846383e+03 7.2312153e+02 - -1.6815667e+03 -2.5085433e+03 7.4628383e+02 - -1.5617863e+03 -2.5317141e+03 7.6753313e+02 - -1.4369771e+03 -2.5538709e+03 7.8691120e+02 - -1.3074820e+03 -2.5747539e+03 8.0444431e+02 - -1.1736683e+03 -2.5941230e+03 8.2014667e+02 - -1.0359289e+03 -2.6117585e+03 8.3402341e+02 - -8.9468310e+02 -2.6274624e+03 8.4607313e+02 - -7.5037559e+02 -2.6410589e+03 8.5629015e+02 - -6.0347507e+02 -2.6523963e+03 8.6466639e+02 - -4.5447185e+02 -2.6613482e+03 8.7119299e+02 - -3.0387458e+02 -2.6678148e+03 8.7586166e+02 - -1.5220631e+02 -2.6717239e+03 8.7866575e+02 - -2.4067136e-09 -2.6730318e+03 8.7960094e+02 - 1.5220631e+02 -2.6717239e+03 8.7866575e+02 - 3.0387458e+02 -2.6678148e+03 8.7586166e+02 - 4.5447185e+02 -2.6613482e+03 8.7119299e+02 - 6.0347507e+02 -2.6523963e+03 8.6466639e+02 - 7.5037559e+02 -2.6410589e+03 8.5629015e+02 - 8.9468310e+02 -2.6274624e+03 8.4607313e+02 - 1.0359289e+03 -2.6117585e+03 8.3402341e+02 - 1.1736683e+03 -2.5941230e+03 8.2014667e+02 - 1.3074820e+03 -2.5747539e+03 8.0444431e+02 - 1.4369771e+03 -2.5538709e+03 7.8691120e+02 - 1.5617863e+03 -2.5317141e+03 7.6753313e+02 - 1.6815667e+03 -2.5085433e+03 7.4628383e+02 - 1.7959974e+03 -2.4846383e+03 7.2312153e+02 - 1.9047762e+03 -2.4602996e+03 6.9798491e+02 - 2.0076157e+03 -2.4358496e+03 6.7078831e+02 - 2.1042371e+03 -2.4116355e+03 6.4141592e+02 - 2.1943649e+03 -2.3880330e+03 6.0971487e+02 - 2.2777188e+03 -2.3654518e+03 5.7548676e+02 - 2.3540054e+03 -2.3443426e+03 5.3847767e+02 - 2.4229079e+03 -2.3252070e+03 4.9836642e+02 - 2.4840750e+03 -2.3086085e+03 4.5475182e+02 - 2.5371089e+03 -2.2951864e+03 4.0714052e+02 - 2.5815536e+03 -2.2856697e+03 3.5493976e+02 - 2.6168890e+03 -2.2808879e+03 2.9746404e+02 - 2.6425384e+03 -2.2817678e+03 2.3397332e+02 - 2.6579088e+03 -2.2892985e+03 1.6377373e+02 - 2.6624974e+03 -2.3044268e+03 8.6427445e+01 - 2.6561119e+03 -2.3278317e+03 2.1210316e+00 - 2.6392462e+03 -2.3595284e+03 -8.7807657e+01 - 2.6135690e+03 -2.3983368e+03 -1.8034572e+02 - 2.5822922e+03 -2.4414515e+03 -2.7070473e+02 - 2.5499875e+03 -2.4845634e+03 -3.5314669e+02 - 2.5215856e+03 -2.5228361e+03 -4.2270866e+02 - 2.5009533e+03 -2.5523586e+03 -4.7685773e+02 - 2.4899394e+03 -2.5711637e+03 -5.1593757e+02 - 2.4883820e+03 -2.5792802e+03 -5.4230744e+02 - 2.4947697e+03 -2.5781050e+03 -5.5903510e+02 - 2.5069759e+03 -2.5696789e+03 -5.6891975e+02 - 2.5227378e+03 -2.5562067e+03 -5.7403261e+02 - 2.5398557e+03 -2.5398557e+03 -5.7560247e+02 - 2.5562067e+03 -2.5227378e+03 -5.7403261e+02 - 2.5696789e+03 -2.5069759e+03 -5.6891975e+02 - 2.5781050e+03 -2.4947697e+03 -5.5903510e+02 - 2.5792802e+03 -2.4883820e+03 -5.4230744e+02 - 2.5711637e+03 -2.4899394e+03 -5.1593757e+02 - 2.5523586e+03 -2.5009533e+03 -4.7685773e+02 - 2.5228361e+03 -2.5215856e+03 -4.2270866e+02 - 2.4845634e+03 -2.5499875e+03 -3.5314669e+02 - 2.4414515e+03 -2.5822922e+03 -2.7070473e+02 - 2.3983368e+03 -2.6135690e+03 -1.8034572e+02 - 2.3595284e+03 -2.6392462e+03 -8.7807657e+01 - 2.3278317e+03 -2.6561119e+03 2.1210316e+00 - 2.3044268e+03 -2.6624974e+03 8.6427445e+01 - 2.2892985e+03 -2.6579088e+03 1.6377373e+02 - 2.2817678e+03 -2.6425384e+03 2.3397332e+02 - 2.2808879e+03 -2.6168890e+03 2.9746404e+02 - 2.2856697e+03 -2.5815536e+03 3.5493976e+02 - 2.2951864e+03 -2.5371089e+03 4.0714052e+02 - 2.3086085e+03 -2.4840750e+03 4.5475182e+02 - 2.3252070e+03 -2.4229079e+03 4.9836642e+02 - 2.3443426e+03 -2.3540054e+03 5.3847767e+02 - 2.3654518e+03 -2.2777188e+03 5.7548676e+02 - 2.3880330e+03 -2.1943649e+03 6.0971487e+02 - 2.4116355e+03 -2.1042371e+03 6.4141592e+02 - 2.4358496e+03 -2.0076157e+03 6.7078831e+02 - 2.4602996e+03 -1.9047762e+03 6.9798491e+02 - 2.4846383e+03 -1.7959974e+03 7.2312153e+02 - 2.5085433e+03 -1.6815667e+03 7.4628383e+02 - 2.5317141e+03 -1.5617863e+03 7.6753313e+02 - 2.5538709e+03 -1.4369771e+03 7.8691120e+02 - 2.5747539e+03 -1.3074820e+03 8.0444431e+02 - 2.5941230e+03 -1.1736683e+03 8.2014667e+02 - 2.6117585e+03 -1.0359289e+03 8.3402341e+02 - 2.6274624e+03 -8.9468310e+02 8.4607313e+02 - 2.6410589e+03 -7.5037559e+02 8.5629015e+02 - 2.6523963e+03 -6.0347507e+02 8.6466639e+02 - 2.6613482e+03 -4.5447185e+02 8.7119299e+02 - 2.6678148e+03 -3.0387458e+02 8.7586166e+02 - 2.6717239e+03 -1.5220631e+02 8.7866575e+02 - 2.6730318e+03 0.0000000e+00 8.7960094e+02 - 2.6891054e+03 0.0000000e+00 7.9442691e+02 - 2.6877391e+03 1.5435122e+02 7.9359421e+02 - 2.6836550e+03 3.0815650e+02 7.9109791e+02 - 2.6768973e+03 4.6087524e+02 7.8694323e+02 - 2.6675387e+03 6.1197738e+02 7.8113847e+02 - 2.6556798e+03 7.6094811e+02 7.7369433e+02 - 2.6414478e+03 9.0729207e+02 7.6462305e+02 - 2.6249948e+03 1.0505369e+03 7.5393729e+02 - 2.6064966e+03 1.1902357e+03 7.4164879e+02 - 2.5861508e+03 1.3259689e+03 7.2776677e+02 - 2.5641751e+03 1.4573453e+03 7.1229620e+02 - 2.5408066e+03 1.5840013e+03 6.9523569e+02 - 2.5163003e+03 1.7056002e+03 6.7657518e+02 - 2.4909288e+03 1.8218301e+03 6.5629327e+02 - 2.4649824e+03 1.9324007e+03 6.3435406e+02 - 2.4387696e+03 2.0370396e+03 6.1070348e+02 - 2.4126191e+03 2.1354878e+03 5.8526475e+02 - 2.3868825e+03 2.2274939e+03 5.5793287e+02 - 2.3619381e+03 2.3128076e+03 5.2856777e+02 - 2.3381967e+03 2.3911725e+03 4.9698560e+02 - 2.3161090e+03 2.4623169e+03 4.6294781e+02 - 2.2961758e+03 2.5259439e+03 4.2614761e+02 - 2.2789612e+03 2.5817191e+03 3.8619347e+02 - 2.2651081e+03 2.6292563e+03 3.4259049e+02 - 2.2553579e+03 2.6681025e+03 2.9472234e+02 - 2.2505700e+03 2.6977233e+03 2.4184131e+02 - 2.2517330e+03 2.7174978e+03 1.8308372e+02 - 2.2599498e+03 2.7267421e+03 1.1754654e+02 - 2.2763519e+03 2.7247998e+03 4.4489191e+01 - 2.3018650e+03 2.7112758e+03 -3.6248715e+01 - 2.3367273e+03 2.6864997e+03 -1.2355357e+02 - 2.3797395e+03 2.6522287e+03 -2.1421873e+02 - 2.4275496e+03 2.6122831e+03 -3.0261498e+02 - 2.4747307e+03 2.5723820e+03 -3.8176755e+02 - 2.5152539e+03 2.5386303e+03 -4.4591119e+02 - 2.5446826e+03 2.5153644e+03 -4.9281520e+02 - 2.5614523e+03 2.5039630e+03 -5.2398755e+02 - 2.5665508e+03 2.5032465e+03 -5.4300821e+02 - 2.5623925e+03 2.5106434e+03 -5.5366470e+02 - 2.5518607e+03 2.5231607e+03 -5.5889063e+02 - 2.5378451e+03 2.5378451e+03 -5.6044096e+02 - 2.5231607e+03 2.5518607e+03 -5.5889063e+02 - 2.5106434e+03 2.5623925e+03 -5.5366470e+02 - 2.5032465e+03 2.5665508e+03 -5.4300821e+02 - 2.5039630e+03 2.5614523e+03 -5.2398755e+02 - 2.5153644e+03 2.5446826e+03 -4.9281520e+02 - 2.5386303e+03 2.5152539e+03 -4.4591119e+02 - 2.5723820e+03 2.4747307e+03 -3.8176755e+02 - 2.6122831e+03 2.4275496e+03 -3.0261498e+02 - 2.6522287e+03 2.3797395e+03 -2.1421873e+02 - 2.6864997e+03 2.3367273e+03 -1.2355357e+02 - 2.7112758e+03 2.3018650e+03 -3.6248715e+01 - 2.7247998e+03 2.2763519e+03 4.4489191e+01 - 2.7267421e+03 2.2599498e+03 1.1754654e+02 - 2.7174978e+03 2.2517330e+03 1.8308372e+02 - 2.6977233e+03 2.2505700e+03 2.4184131e+02 - 2.6681025e+03 2.2553579e+03 2.9472234e+02 - 2.6292563e+03 2.2651081e+03 3.4259049e+02 - 2.5817191e+03 2.2789612e+03 3.8619347e+02 - 2.5259439e+03 2.2961758e+03 4.2614761e+02 - 2.4623169e+03 2.3161090e+03 4.6294781e+02 - 2.3911725e+03 2.3381967e+03 4.9698560e+02 - 2.3128076e+03 2.3619381e+03 5.2856777e+02 - 2.2274939e+03 2.3868825e+03 5.5793287e+02 - 2.1354878e+03 2.4126191e+03 5.8526475e+02 - 2.0370396e+03 2.4387696e+03 6.1070348e+02 - 1.9324007e+03 2.4649824e+03 6.3435406e+02 - 1.8218301e+03 2.4909288e+03 6.5629327e+02 - 1.7056002e+03 2.5163003e+03 6.7657518e+02 - 1.5840013e+03 2.5408066e+03 6.9523569e+02 - 1.4573453e+03 2.5641751e+03 7.1229620e+02 - 1.3259689e+03 2.5861508e+03 7.2776677e+02 - 1.1902357e+03 2.6064966e+03 7.4164879e+02 - 1.0505369e+03 2.6249948e+03 7.5393729e+02 - 9.0729207e+02 2.6414478e+03 7.6462305e+02 - 7.6094811e+02 2.6556798e+03 7.7369433e+02 - 6.1197738e+02 2.6675387e+03 7.8113847e+02 - 4.6087524e+02 2.6768973e+03 7.8694323e+02 - 3.0815650e+02 2.6836550e+03 7.9109791e+02 - 1.5435122e+02 2.6877391e+03 7.9359421e+02 - 2.4067136e-09 2.6891054e+03 7.9442691e+02 - -1.5435122e+02 2.6877391e+03 7.9359421e+02 - -3.0815650e+02 2.6836550e+03 7.9109791e+02 - -4.6087524e+02 2.6768973e+03 7.8694323e+02 - -6.1197738e+02 2.6675387e+03 7.8113847e+02 - -7.6094811e+02 2.6556798e+03 7.7369433e+02 - -9.0729207e+02 2.6414478e+03 7.6462305e+02 - -1.0505369e+03 2.6249948e+03 7.5393729e+02 - -1.1902357e+03 2.6064966e+03 7.4164879e+02 - -1.3259689e+03 2.5861508e+03 7.2776677e+02 - -1.4573453e+03 2.5641751e+03 7.1229620e+02 - -1.5840013e+03 2.5408066e+03 6.9523569e+02 - -1.7056002e+03 2.5163003e+03 6.7657518e+02 - -1.8218301e+03 2.4909288e+03 6.5629327e+02 - -1.9324007e+03 2.4649824e+03 6.3435406e+02 - -2.0370396e+03 2.4387696e+03 6.1070348e+02 - -2.1354878e+03 2.4126191e+03 5.8526475e+02 - -2.2274939e+03 2.3868825e+03 5.5793287e+02 - -2.3128076e+03 2.3619381e+03 5.2856777e+02 - -2.3911725e+03 2.3381967e+03 4.9698560e+02 - -2.4623169e+03 2.3161090e+03 4.6294781e+02 - -2.5259439e+03 2.2961758e+03 4.2614761e+02 - -2.5817191e+03 2.2789612e+03 3.8619347e+02 - -2.6292563e+03 2.2651081e+03 3.4259049e+02 - -2.6681025e+03 2.2553579e+03 2.9472234e+02 - -2.6977233e+03 2.2505700e+03 2.4184131e+02 - -2.7174978e+03 2.2517330e+03 1.8308372e+02 - -2.7267421e+03 2.2599498e+03 1.1754654e+02 - -2.7247998e+03 2.2763519e+03 4.4489191e+01 - -2.7112758e+03 2.3018650e+03 -3.6248715e+01 - -2.6864997e+03 2.3367273e+03 -1.2355357e+02 - -2.6522287e+03 2.3797395e+03 -2.1421873e+02 - -2.6122831e+03 2.4275496e+03 -3.0261498e+02 - -2.5723820e+03 2.4747307e+03 -3.8176755e+02 - -2.5386303e+03 2.5152539e+03 -4.4591119e+02 - -2.5153644e+03 2.5446826e+03 -4.9281520e+02 - -2.5039630e+03 2.5614523e+03 -5.2398755e+02 - -2.5032465e+03 2.5665508e+03 -5.4300821e+02 - -2.5106434e+03 2.5623925e+03 -5.5366470e+02 - -2.5231607e+03 2.5518607e+03 -5.5889063e+02 - -2.5378451e+03 2.5378451e+03 -5.6044096e+02 - -2.5518607e+03 2.5231607e+03 -5.5889063e+02 - -2.5623925e+03 2.5106434e+03 -5.5366470e+02 - -2.5665508e+03 2.5032465e+03 -5.4300821e+02 - -2.5614523e+03 2.5039630e+03 -5.2398755e+02 - -2.5446826e+03 2.5153644e+03 -4.9281520e+02 - -2.5152539e+03 2.5386303e+03 -4.4591119e+02 - -2.4747307e+03 2.5723820e+03 -3.8176755e+02 - -2.4275496e+03 2.6122831e+03 -3.0261498e+02 - -2.3797395e+03 2.6522287e+03 -2.1421873e+02 - -2.3367273e+03 2.6864997e+03 -1.2355357e+02 - -2.3018650e+03 2.7112758e+03 -3.6248715e+01 - -2.2763519e+03 2.7247998e+03 4.4489191e+01 - -2.2599498e+03 2.7267421e+03 1.1754654e+02 - -2.2517330e+03 2.7174978e+03 1.8308372e+02 - -2.2505700e+03 2.6977233e+03 2.4184131e+02 - -2.2553579e+03 2.6681025e+03 2.9472234e+02 - -2.2651081e+03 2.6292563e+03 3.4259049e+02 - -2.2789612e+03 2.5817191e+03 3.8619347e+02 - -2.2961758e+03 2.5259439e+03 4.2614761e+02 - -2.3161090e+03 2.4623169e+03 4.6294781e+02 - -2.3381967e+03 2.3911725e+03 4.9698560e+02 - -2.3619381e+03 2.3128076e+03 5.2856777e+02 - -2.3868825e+03 2.2274939e+03 5.5793287e+02 - -2.4126191e+03 2.1354878e+03 5.8526475e+02 - -2.4387696e+03 2.0370396e+03 6.1070348e+02 - -2.4649824e+03 1.9324007e+03 6.3435406e+02 - -2.4909288e+03 1.8218301e+03 6.5629327e+02 - -2.5163003e+03 1.7056002e+03 6.7657518e+02 - -2.5408066e+03 1.5840013e+03 6.9523569e+02 - -2.5641751e+03 1.4573453e+03 7.1229620e+02 - -2.5861508e+03 1.3259689e+03 7.2776677e+02 - -2.6064966e+03 1.1902357e+03 7.4164879e+02 - -2.6249948e+03 1.0505369e+03 7.5393729e+02 - -2.6414478e+03 9.0729207e+02 7.6462305e+02 - -2.6556798e+03 7.6094811e+02 7.7369433e+02 - -2.6675387e+03 6.1197738e+02 7.8113847e+02 - -2.6768973e+03 4.6087524e+02 7.8694323e+02 - -2.6836550e+03 3.0815650e+02 7.9109791e+02 - -2.6877391e+03 1.5435122e+02 7.9359421e+02 - -2.6891054e+03 -2.4067136e-09 7.9442691e+02 - -2.6877391e+03 -1.5435122e+02 7.9359421e+02 - -2.6836550e+03 -3.0815650e+02 7.9109791e+02 - -2.6768973e+03 -4.6087524e+02 7.8694323e+02 - -2.6675387e+03 -6.1197738e+02 7.8113847e+02 - -2.6556798e+03 -7.6094811e+02 7.7369433e+02 - -2.6414478e+03 -9.0729207e+02 7.6462305e+02 - -2.6249948e+03 -1.0505369e+03 7.5393729e+02 - -2.6064966e+03 -1.1902357e+03 7.4164879e+02 - -2.5861508e+03 -1.3259689e+03 7.2776677e+02 - -2.5641751e+03 -1.4573453e+03 7.1229620e+02 - -2.5408066e+03 -1.5840013e+03 6.9523569e+02 - -2.5163003e+03 -1.7056002e+03 6.7657518e+02 - -2.4909288e+03 -1.8218301e+03 6.5629327e+02 - -2.4649824e+03 -1.9324007e+03 6.3435406e+02 - -2.4387696e+03 -2.0370396e+03 6.1070348e+02 - -2.4126191e+03 -2.1354878e+03 5.8526475e+02 - -2.3868825e+03 -2.2274939e+03 5.5793287e+02 - -2.3619381e+03 -2.3128076e+03 5.2856777e+02 - -2.3381967e+03 -2.3911725e+03 4.9698560e+02 - -2.3161090e+03 -2.4623169e+03 4.6294781e+02 - -2.2961758e+03 -2.5259439e+03 4.2614761e+02 - -2.2789612e+03 -2.5817191e+03 3.8619347e+02 - -2.2651081e+03 -2.6292563e+03 3.4259049e+02 - -2.2553579e+03 -2.6681025e+03 2.9472234e+02 - -2.2505700e+03 -2.6977233e+03 2.4184131e+02 - -2.2517330e+03 -2.7174978e+03 1.8308372e+02 - -2.2599498e+03 -2.7267421e+03 1.1754654e+02 - -2.2763519e+03 -2.7247998e+03 4.4489191e+01 - -2.3018650e+03 -2.7112758e+03 -3.6248715e+01 - -2.3367273e+03 -2.6864997e+03 -1.2355357e+02 - -2.3797395e+03 -2.6522287e+03 -2.1421873e+02 - -2.4275496e+03 -2.6122831e+03 -3.0261498e+02 - -2.4747307e+03 -2.5723820e+03 -3.8176755e+02 - -2.5152539e+03 -2.5386303e+03 -4.4591119e+02 - -2.5446826e+03 -2.5153644e+03 -4.9281520e+02 - -2.5614523e+03 -2.5039630e+03 -5.2398755e+02 - -2.5665508e+03 -2.5032465e+03 -5.4300821e+02 - -2.5623925e+03 -2.5106434e+03 -5.5366470e+02 - -2.5518607e+03 -2.5231607e+03 -5.5889063e+02 - -2.5378451e+03 -2.5378451e+03 -5.6044096e+02 - -2.5231607e+03 -2.5518607e+03 -5.5889063e+02 - -2.5106434e+03 -2.5623925e+03 -5.5366470e+02 - -2.5032465e+03 -2.5665508e+03 -5.4300821e+02 - -2.5039630e+03 -2.5614523e+03 -5.2398755e+02 - -2.5153644e+03 -2.5446826e+03 -4.9281520e+02 - -2.5386303e+03 -2.5152539e+03 -4.4591119e+02 - -2.5723820e+03 -2.4747307e+03 -3.8176755e+02 - -2.6122831e+03 -2.4275496e+03 -3.0261498e+02 - -2.6522287e+03 -2.3797395e+03 -2.1421873e+02 - -2.6864997e+03 -2.3367273e+03 -1.2355357e+02 - -2.7112758e+03 -2.3018650e+03 -3.6248715e+01 - -2.7247998e+03 -2.2763519e+03 4.4489191e+01 - -2.7267421e+03 -2.2599498e+03 1.1754654e+02 - -2.7174978e+03 -2.2517330e+03 1.8308372e+02 - -2.6977233e+03 -2.2505700e+03 2.4184131e+02 - -2.6681025e+03 -2.2553579e+03 2.9472234e+02 - -2.6292563e+03 -2.2651081e+03 3.4259049e+02 - -2.5817191e+03 -2.2789612e+03 3.8619347e+02 - -2.5259439e+03 -2.2961758e+03 4.2614761e+02 - -2.4623169e+03 -2.3161090e+03 4.6294781e+02 - -2.3911725e+03 -2.3381967e+03 4.9698560e+02 - -2.3128076e+03 -2.3619381e+03 5.2856777e+02 - -2.2274939e+03 -2.3868825e+03 5.5793287e+02 - -2.1354878e+03 -2.4126191e+03 5.8526475e+02 - -2.0370396e+03 -2.4387696e+03 6.1070348e+02 - -1.9324007e+03 -2.4649824e+03 6.3435406e+02 - -1.8218301e+03 -2.4909288e+03 6.5629327e+02 - -1.7056002e+03 -2.5163003e+03 6.7657518e+02 - -1.5840013e+03 -2.5408066e+03 6.9523569e+02 - -1.4573453e+03 -2.5641751e+03 7.1229620e+02 - -1.3259689e+03 -2.5861508e+03 7.2776677e+02 - -1.1902357e+03 -2.6064966e+03 7.4164879e+02 - -1.0505369e+03 -2.6249948e+03 7.5393729e+02 - -9.0729207e+02 -2.6414478e+03 7.6462305e+02 - -7.6094811e+02 -2.6556798e+03 7.7369433e+02 - -6.1197738e+02 -2.6675387e+03 7.8113847e+02 - -4.6087524e+02 -2.6768973e+03 7.8694323e+02 - -3.0815650e+02 -2.6836550e+03 7.9109791e+02 - -1.5435122e+02 -2.6877391e+03 7.9359421e+02 - 4.8134273e-09 -2.6891054e+03 7.9442691e+02 - 1.5435122e+02 -2.6877391e+03 7.9359421e+02 - 3.0815650e+02 -2.6836550e+03 7.9109791e+02 - 4.6087524e+02 -2.6768973e+03 7.8694323e+02 - 6.1197738e+02 -2.6675387e+03 7.8113847e+02 - 7.6094811e+02 -2.6556798e+03 7.7369433e+02 - 9.0729207e+02 -2.6414478e+03 7.6462305e+02 - 1.0505369e+03 -2.6249948e+03 7.5393729e+02 - 1.1902357e+03 -2.6064966e+03 7.4164879e+02 - 1.3259689e+03 -2.5861508e+03 7.2776677e+02 - 1.4573453e+03 -2.5641751e+03 7.1229620e+02 - 1.5840013e+03 -2.5408066e+03 6.9523569e+02 - 1.7056002e+03 -2.5163003e+03 6.7657518e+02 - 1.8218301e+03 -2.4909288e+03 6.5629327e+02 - 1.9324007e+03 -2.4649824e+03 6.3435406e+02 - 2.0370396e+03 -2.4387696e+03 6.1070348e+02 - 2.1354878e+03 -2.4126191e+03 5.8526475e+02 - 2.2274939e+03 -2.3868825e+03 5.5793287e+02 - 2.3128076e+03 -2.3619381e+03 5.2856777e+02 - 2.3911725e+03 -2.3381967e+03 4.9698560e+02 - 2.4623169e+03 -2.3161090e+03 4.6294781e+02 - 2.5259439e+03 -2.2961758e+03 4.2614761e+02 - 2.5817191e+03 -2.2789612e+03 3.8619347e+02 - 2.6292563e+03 -2.2651081e+03 3.4259049e+02 - 2.6681025e+03 -2.2553579e+03 2.9472234e+02 - 2.6977233e+03 -2.2505700e+03 2.4184131e+02 - 2.7174978e+03 -2.2517330e+03 1.8308372e+02 - 2.7267421e+03 -2.2599498e+03 1.1754654e+02 - 2.7247998e+03 -2.2763519e+03 4.4489191e+01 - 2.7112758e+03 -2.3018650e+03 -3.6248715e+01 - 2.6864997e+03 -2.3367273e+03 -1.2355357e+02 - 2.6522287e+03 -2.3797395e+03 -2.1421873e+02 - 2.6122831e+03 -2.4275496e+03 -3.0261498e+02 - 2.5723820e+03 -2.4747307e+03 -3.8176755e+02 - 2.5386303e+03 -2.5152539e+03 -4.4591119e+02 - 2.5153644e+03 -2.5446826e+03 -4.9281520e+02 - 2.5039630e+03 -2.5614523e+03 -5.2398755e+02 - 2.5032465e+03 -2.5665508e+03 -5.4300821e+02 - 2.5106434e+03 -2.5623925e+03 -5.5366470e+02 - 2.5231607e+03 -2.5518607e+03 -5.5889063e+02 - 2.5378451e+03 -2.5378451e+03 -5.6044096e+02 - 2.5518607e+03 -2.5231607e+03 -5.5889063e+02 - 2.5623925e+03 -2.5106434e+03 -5.5366470e+02 - 2.5665508e+03 -2.5032465e+03 -5.4300821e+02 - 2.5614523e+03 -2.5039630e+03 -5.2398755e+02 - 2.5446826e+03 -2.5153644e+03 -4.9281520e+02 - 2.5152539e+03 -2.5386303e+03 -4.4591119e+02 - 2.4747307e+03 -2.5723820e+03 -3.8176755e+02 - 2.4275496e+03 -2.6122831e+03 -3.0261498e+02 - 2.3797395e+03 -2.6522287e+03 -2.1421873e+02 - 2.3367273e+03 -2.6864997e+03 -1.2355357e+02 - 2.3018650e+03 -2.7112758e+03 -3.6248715e+01 - 2.2763519e+03 -2.7247998e+03 4.4489191e+01 - 2.2599498e+03 -2.7267421e+03 1.1754654e+02 - 2.2517330e+03 -2.7174978e+03 1.8308372e+02 - 2.2505700e+03 -2.6977233e+03 2.4184131e+02 - 2.2553579e+03 -2.6681025e+03 2.9472234e+02 - 2.2651081e+03 -2.6292563e+03 3.4259049e+02 - 2.2789612e+03 -2.5817191e+03 3.8619347e+02 - 2.2961758e+03 -2.5259439e+03 4.2614761e+02 - 2.3161090e+03 -2.4623169e+03 4.6294781e+02 - 2.3381967e+03 -2.3911725e+03 4.9698560e+02 - 2.3619381e+03 -2.3128076e+03 5.2856777e+02 - 2.3868825e+03 -2.2274939e+03 5.5793287e+02 - 2.4126191e+03 -2.1354878e+03 5.8526475e+02 - 2.4387696e+03 -2.0370396e+03 6.1070348e+02 - 2.4649824e+03 -1.9324007e+03 6.3435406e+02 - 2.4909288e+03 -1.8218301e+03 6.5629327e+02 - 2.5163003e+03 -1.7056002e+03 6.7657518e+02 - 2.5408066e+03 -1.5840013e+03 6.9523569e+02 - 2.5641751e+03 -1.4573453e+03 7.1229620e+02 - 2.5861508e+03 -1.3259689e+03 7.2776677e+02 - 2.6064966e+03 -1.1902357e+03 7.4164879e+02 - 2.6249948e+03 -1.0505369e+03 7.5393729e+02 - 2.6414478e+03 -9.0729207e+02 7.6462305e+02 - 2.6556798e+03 -7.6094811e+02 7.7369433e+02 - 2.6675387e+03 -6.1197738e+02 7.8113847e+02 - 2.6768973e+03 -4.6087524e+02 7.8694323e+02 - 2.6836550e+03 -3.0815650e+02 7.9109791e+02 - 2.6877391e+03 -1.5435122e+02 7.9359421e+02 - 2.6891054e+03 4.8134273e-09 7.9442691e+02 - 2.7035980e+03 2.4067136e-09 7.0839325e+02 - 2.7021807e+03 1.5624538e+02 7.0765946e+02 - 2.6979436e+03 3.1193705e+02 7.0546002e+02 - 2.6909314e+03 4.6652692e+02 7.0180064e+02 - 2.6812178e+03 6.1947792e+02 6.9669044e+02 - 2.6689045e+03 7.7026899e+02 6.9014146e+02 - 2.6541197e+03 9.1839950e+02 6.8216786e+02 - 2.6370168e+03 1.0633929e+03 6.7278505e+02 - 2.6177723e+03 1.2047997e+03 6.6200855e+02 - 2.5965843e+03 1.3421989e+03 6.4985273e+02 - 2.5736704e+03 1.4751996e+03 6.3632938e+02 - 2.5492662e+03 1.6034403e+03 6.2144611e+02 - 2.5236243e+03 1.7265883e+03 6.0520454e+02 - 2.4970131e+03 1.8443378e+03 5.8759832e+02 - 2.4697164e+03 1.9564068e+03 5.6861075e+02 - 2.4420336e+03 2.0625341e+03 5.4821215e+02 - 2.4142810e+03 2.1624748e+03 5.2635654e+02 - 2.3867931e+03 2.2559952e+03 5.0297764e+02 - 2.3599256e+03 2.3428677e+03 4.7798382e+02 - 2.3340597e+03 2.4228640e+03 4.5125158e+02 - 2.3096073e+03 2.4957482e+03 4.2261703e+02 - 2.2870188e+03 2.5612685e+03 3.9186464e+02 - 2.2667932e+03 2.6191471e+03 3.5871240e+02 - 2.2494915e+03 2.6690683e+03 3.2279242e+02 - 2.2357544e+03 2.7106639e+03 2.8362642e+02 - 2.2263250e+03 2.7434945e+03 2.4059667e+02 - 2.2220766e+03 2.7670283e+03 1.9291722e+02 - 2.2240397e+03 2.7806223e+03 1.3961977e+02 - 2.2334130e+03 2.7835213e+03 7.9591064e+01 - 2.2515106e+03 2.7749196e+03 1.1741973e+01 - 2.2795421e+03 2.7541851e+03 -6.4547384e+01 - 2.3180461e+03 2.7214107e+03 -1.4853854e+02 - 2.3658413e+03 2.6784123e+03 -2.3687370e+02 - 2.4188422e+03 2.6298096e+03 -3.2282174e+02 - 2.4700427e+03 2.5829190e+03 -3.9772936e+02 - 2.5118775e+03 2.5453316e+03 -4.5497877e+02 - 2.5396112e+03 2.5215886e+03 -4.9322119e+02 - 2.5527280e+03 2.5119250e+03 -5.1577975e+02 - 2.5537577e+03 2.5135513e+03 -5.2763608e+02 - 2.5464637e+03 2.5225137e+03 -5.3302850e+02 - 2.5347729e+03 2.5347729e+03 -5.3454376e+02 - 2.5225137e+03 2.5464637e+03 -5.3302850e+02 - 2.5135513e+03 2.5537577e+03 -5.2763608e+02 - 2.5119250e+03 2.5527280e+03 -5.1577975e+02 - 2.5215886e+03 2.5396112e+03 -4.9322119e+02 - 2.5453316e+03 2.5118775e+03 -4.5497877e+02 - 2.5829190e+03 2.4700427e+03 -3.9772936e+02 - 2.6298096e+03 2.4188422e+03 -3.2282174e+02 - 2.6784123e+03 2.3658413e+03 -2.3687370e+02 - 2.7214107e+03 2.3180461e+03 -1.4853854e+02 - 2.7541851e+03 2.2795421e+03 -6.4547384e+01 - 2.7749196e+03 2.2515106e+03 1.1741973e+01 - 2.7835213e+03 2.2334130e+03 7.9591064e+01 - 2.7806223e+03 2.2240397e+03 1.3961977e+02 - 2.7670283e+03 2.2220766e+03 1.9291722e+02 - 2.7434945e+03 2.2263250e+03 2.4059667e+02 - 2.7106639e+03 2.2357544e+03 2.8362642e+02 - 2.6690683e+03 2.2494915e+03 3.2279242e+02 - 2.6191471e+03 2.2667932e+03 3.5871240e+02 - 2.5612685e+03 2.2870188e+03 3.9186464e+02 - 2.4957482e+03 2.3096073e+03 4.2261703e+02 - 2.4228640e+03 2.3340597e+03 4.5125158e+02 - 2.3428677e+03 2.3599256e+03 4.7798382e+02 - 2.2559952e+03 2.3867931e+03 5.0297764e+02 - 2.1624748e+03 2.4142810e+03 5.2635654e+02 - 2.0625341e+03 2.4420336e+03 5.4821215e+02 - 1.9564068e+03 2.4697164e+03 5.6861075e+02 - 1.8443378e+03 2.4970131e+03 5.8759832e+02 - 1.7265883e+03 2.5236243e+03 6.0520454e+02 - 1.6034403e+03 2.5492662e+03 6.2144611e+02 - 1.4751996e+03 2.5736704e+03 6.3632938e+02 - 1.3421989e+03 2.5965843e+03 6.4985273e+02 - 1.2047997e+03 2.6177723e+03 6.6200855e+02 - 1.0633929e+03 2.6370168e+03 6.7278505e+02 - 9.1839950e+02 2.6541197e+03 6.8216786e+02 - 7.7026899e+02 2.6689045e+03 6.9014146e+02 - 6.1947792e+02 2.6812178e+03 6.9669044e+02 - 4.6652692e+02 2.6909314e+03 7.0180064e+02 - 3.1193705e+02 2.6979436e+03 7.0546002e+02 - 1.5624538e+02 2.7021807e+03 7.0765946e+02 - -4.8134273e-09 2.7035980e+03 7.0839325e+02 - -1.5624538e+02 2.7021807e+03 7.0765946e+02 - -3.1193705e+02 2.6979436e+03 7.0546002e+02 - -4.6652692e+02 2.6909314e+03 7.0180064e+02 - -6.1947792e+02 2.6812178e+03 6.9669044e+02 - -7.7026899e+02 2.6689045e+03 6.9014146e+02 - -9.1839950e+02 2.6541197e+03 6.8216786e+02 - -1.0633929e+03 2.6370168e+03 6.7278505e+02 - -1.2047997e+03 2.6177723e+03 6.6200855e+02 - -1.3421989e+03 2.5965843e+03 6.4985273e+02 - -1.4751996e+03 2.5736704e+03 6.3632938e+02 - -1.6034403e+03 2.5492662e+03 6.2144611e+02 - -1.7265883e+03 2.5236243e+03 6.0520454e+02 - -1.8443378e+03 2.4970131e+03 5.8759832e+02 - -1.9564068e+03 2.4697164e+03 5.6861075e+02 - -2.0625341e+03 2.4420336e+03 5.4821215e+02 - -2.1624748e+03 2.4142810e+03 5.2635654e+02 - -2.2559952e+03 2.3867931e+03 5.0297764e+02 - -2.3428677e+03 2.3599256e+03 4.7798382e+02 - -2.4228640e+03 2.3340597e+03 4.5125158e+02 - -2.4957482e+03 2.3096073e+03 4.2261703e+02 - -2.5612685e+03 2.2870188e+03 3.9186464e+02 - -2.6191471e+03 2.2667932e+03 3.5871240e+02 - -2.6690683e+03 2.2494915e+03 3.2279242e+02 - -2.7106639e+03 2.2357544e+03 2.8362642e+02 - -2.7434945e+03 2.2263250e+03 2.4059667e+02 - -2.7670283e+03 2.2220766e+03 1.9291722e+02 - -2.7806223e+03 2.2240397e+03 1.3961977e+02 - -2.7835213e+03 2.2334130e+03 7.9591064e+01 - -2.7749196e+03 2.2515106e+03 1.1741973e+01 - -2.7541851e+03 2.2795421e+03 -6.4547384e+01 - -2.7214107e+03 2.3180461e+03 -1.4853854e+02 - -2.6784123e+03 2.3658413e+03 -2.3687370e+02 - -2.6298096e+03 2.4188422e+03 -3.2282174e+02 - -2.5829190e+03 2.4700427e+03 -3.9772936e+02 - -2.5453316e+03 2.5118775e+03 -4.5497877e+02 - -2.5215886e+03 2.5396112e+03 -4.9322119e+02 - -2.5119250e+03 2.5527280e+03 -5.1577975e+02 - -2.5135513e+03 2.5537577e+03 -5.2763608e+02 - -2.5225137e+03 2.5464637e+03 -5.3302850e+02 - -2.5347729e+03 2.5347729e+03 -5.3454376e+02 - -2.5464637e+03 2.5225137e+03 -5.3302850e+02 - -2.5537577e+03 2.5135513e+03 -5.2763608e+02 - -2.5527280e+03 2.5119250e+03 -5.1577975e+02 - -2.5396112e+03 2.5215886e+03 -4.9322119e+02 - -2.5118775e+03 2.5453316e+03 -4.5497877e+02 - -2.4700427e+03 2.5829190e+03 -3.9772936e+02 - -2.4188422e+03 2.6298096e+03 -3.2282174e+02 - -2.3658413e+03 2.6784123e+03 -2.3687370e+02 - -2.3180461e+03 2.7214107e+03 -1.4853854e+02 - -2.2795421e+03 2.7541851e+03 -6.4547384e+01 - -2.2515106e+03 2.7749196e+03 1.1741973e+01 - -2.2334130e+03 2.7835213e+03 7.9591064e+01 - -2.2240397e+03 2.7806223e+03 1.3961977e+02 - -2.2220766e+03 2.7670283e+03 1.9291722e+02 - -2.2263250e+03 2.7434945e+03 2.4059667e+02 - -2.2357544e+03 2.7106639e+03 2.8362642e+02 - -2.2494915e+03 2.6690683e+03 3.2279242e+02 - -2.2667932e+03 2.6191471e+03 3.5871240e+02 - -2.2870188e+03 2.5612685e+03 3.9186464e+02 - -2.3096073e+03 2.4957482e+03 4.2261703e+02 - -2.3340597e+03 2.4228640e+03 4.5125158e+02 - -2.3599256e+03 2.3428677e+03 4.7798382e+02 - -2.3867931e+03 2.2559952e+03 5.0297764e+02 - -2.4142810e+03 2.1624748e+03 5.2635654e+02 - -2.4420336e+03 2.0625341e+03 5.4821215e+02 - -2.4697164e+03 1.9564068e+03 5.6861075e+02 - -2.4970131e+03 1.8443378e+03 5.8759832e+02 - -2.5236243e+03 1.7265883e+03 6.0520454e+02 - -2.5492662e+03 1.6034403e+03 6.2144611e+02 - -2.5736704e+03 1.4751996e+03 6.3632938e+02 - -2.5965843e+03 1.3421989e+03 6.4985273e+02 - -2.6177723e+03 1.2047997e+03 6.6200855e+02 - -2.6370168e+03 1.0633929e+03 6.7278505e+02 - -2.6541197e+03 9.1839950e+02 6.8216786e+02 - -2.6689045e+03 7.7026899e+02 6.9014146e+02 - -2.6812178e+03 6.1947792e+02 6.9669044e+02 - -2.6909314e+03 4.6652692e+02 7.0180064e+02 - -2.6979436e+03 3.1193705e+02 7.0546002e+02 - -2.7021807e+03 1.5624538e+02 7.0765946e+02 - -2.7035980e+03 2.4067136e-09 7.0839325e+02 - -2.7021807e+03 -1.5624538e+02 7.0765946e+02 - -2.6979436e+03 -3.1193705e+02 7.0546002e+02 - -2.6909314e+03 -4.6652692e+02 7.0180064e+02 - -2.6812178e+03 -6.1947792e+02 6.9669044e+02 - -2.6689045e+03 -7.7026899e+02 6.9014146e+02 - -2.6541197e+03 -9.1839950e+02 6.8216786e+02 - -2.6370168e+03 -1.0633929e+03 6.7278505e+02 - -2.6177723e+03 -1.2047997e+03 6.6200855e+02 - -2.5965843e+03 -1.3421989e+03 6.4985273e+02 - -2.5736704e+03 -1.4751996e+03 6.3632938e+02 - -2.5492662e+03 -1.6034403e+03 6.2144611e+02 - -2.5236243e+03 -1.7265883e+03 6.0520454e+02 - -2.4970131e+03 -1.8443378e+03 5.8759832e+02 - -2.4697164e+03 -1.9564068e+03 5.6861075e+02 - -2.4420336e+03 -2.0625341e+03 5.4821215e+02 - -2.4142810e+03 -2.1624748e+03 5.2635654e+02 - -2.3867931e+03 -2.2559952e+03 5.0297764e+02 - -2.3599256e+03 -2.3428677e+03 4.7798382e+02 - -2.3340597e+03 -2.4228640e+03 4.5125158e+02 - -2.3096073e+03 -2.4957482e+03 4.2261703e+02 - -2.2870188e+03 -2.5612685e+03 3.9186464e+02 - -2.2667932e+03 -2.6191471e+03 3.5871240e+02 - -2.2494915e+03 -2.6690683e+03 3.2279242e+02 - -2.2357544e+03 -2.7106639e+03 2.8362642e+02 - -2.2263250e+03 -2.7434945e+03 2.4059667e+02 - -2.2220766e+03 -2.7670283e+03 1.9291722e+02 - -2.2240397e+03 -2.7806223e+03 1.3961977e+02 - -2.2334130e+03 -2.7835213e+03 7.9591064e+01 - -2.2515106e+03 -2.7749196e+03 1.1741973e+01 - -2.2795421e+03 -2.7541851e+03 -6.4547384e+01 - -2.3180461e+03 -2.7214107e+03 -1.4853854e+02 - -2.3658413e+03 -2.6784123e+03 -2.3687370e+02 - -2.4188422e+03 -2.6298096e+03 -3.2282174e+02 - -2.4700427e+03 -2.5829190e+03 -3.9772936e+02 - -2.5118775e+03 -2.5453316e+03 -4.5497877e+02 - -2.5396112e+03 -2.5215886e+03 -4.9322119e+02 - -2.5527280e+03 -2.5119250e+03 -5.1577975e+02 - -2.5537577e+03 -2.5135513e+03 -5.2763608e+02 - -2.5464637e+03 -2.5225137e+03 -5.3302850e+02 - -2.5347729e+03 -2.5347729e+03 -5.3454376e+02 - -2.5225137e+03 -2.5464637e+03 -5.3302850e+02 - -2.5135513e+03 -2.5537577e+03 -5.2763608e+02 - -2.5119250e+03 -2.5527280e+03 -5.1577975e+02 - -2.5215886e+03 -2.5396112e+03 -4.9322119e+02 - -2.5453316e+03 -2.5118775e+03 -4.5497877e+02 - -2.5829190e+03 -2.4700427e+03 -3.9772936e+02 - -2.6298096e+03 -2.4188422e+03 -3.2282174e+02 - -2.6784123e+03 -2.3658413e+03 -2.3687370e+02 - -2.7214107e+03 -2.3180461e+03 -1.4853854e+02 - -2.7541851e+03 -2.2795421e+03 -6.4547384e+01 - -2.7749196e+03 -2.2515106e+03 1.1741973e+01 - -2.7835213e+03 -2.2334130e+03 7.9591064e+01 - -2.7806223e+03 -2.2240397e+03 1.3961977e+02 - -2.7670283e+03 -2.2220766e+03 1.9291722e+02 - -2.7434945e+03 -2.2263250e+03 2.4059667e+02 - -2.7106639e+03 -2.2357544e+03 2.8362642e+02 - -2.6690683e+03 -2.2494915e+03 3.2279242e+02 - -2.6191471e+03 -2.2667932e+03 3.5871240e+02 - -2.5612685e+03 -2.2870188e+03 3.9186464e+02 - -2.4957482e+03 -2.3096073e+03 4.2261703e+02 - -2.4228640e+03 -2.3340597e+03 4.5125158e+02 - -2.3428677e+03 -2.3599256e+03 4.7798382e+02 - -2.2559952e+03 -2.3867931e+03 5.0297764e+02 - -2.1624748e+03 -2.4142810e+03 5.2635654e+02 - -2.0625341e+03 -2.4420336e+03 5.4821215e+02 - -1.9564068e+03 -2.4697164e+03 5.6861075e+02 - -1.8443378e+03 -2.4970131e+03 5.8759832e+02 - -1.7265883e+03 -2.5236243e+03 6.0520454e+02 - -1.6034403e+03 -2.5492662e+03 6.2144611e+02 - -1.4751996e+03 -2.5736704e+03 6.3632938e+02 - -1.3421989e+03 -2.5965843e+03 6.4985273e+02 - -1.2047997e+03 -2.6177723e+03 6.6200855e+02 - -1.0633929e+03 -2.6370168e+03 6.7278505e+02 - -9.1839950e+02 -2.6541197e+03 6.8216786e+02 - -7.7026899e+02 -2.6689045e+03 6.9014146e+02 - -6.1947792e+02 -2.6812178e+03 6.9669044e+02 - -4.6652692e+02 -2.6909314e+03 7.0180064e+02 - -3.1193705e+02 -2.6979436e+03 7.0546002e+02 - -1.5624538e+02 -2.7021807e+03 7.0765946e+02 - 4.8134273e-09 -2.7035980e+03 7.0839325e+02 - 1.5624538e+02 -2.7021807e+03 7.0765946e+02 - 3.1193705e+02 -2.6979436e+03 7.0546002e+02 - 4.6652692e+02 -2.6909314e+03 7.0180064e+02 - 6.1947792e+02 -2.6812178e+03 6.9669044e+02 - 7.7026899e+02 -2.6689045e+03 6.9014146e+02 - 9.1839950e+02 -2.6541197e+03 6.8216786e+02 - 1.0633929e+03 -2.6370168e+03 6.7278505e+02 - 1.2047997e+03 -2.6177723e+03 6.6200855e+02 - 1.3421989e+03 -2.5965843e+03 6.4985273e+02 - 1.4751996e+03 -2.5736704e+03 6.3632938e+02 - 1.6034403e+03 -2.5492662e+03 6.2144611e+02 - 1.7265883e+03 -2.5236243e+03 6.0520454e+02 - 1.8443378e+03 -2.4970131e+03 5.8759832e+02 - 1.9564068e+03 -2.4697164e+03 5.6861075e+02 - 2.0625341e+03 -2.4420336e+03 5.4821215e+02 - 2.1624748e+03 -2.4142810e+03 5.2635654e+02 - 2.2559952e+03 -2.3867931e+03 5.0297764e+02 - 2.3428677e+03 -2.3599256e+03 4.7798382e+02 - 2.4228640e+03 -2.3340597e+03 4.5125158e+02 - 2.4957482e+03 -2.3096073e+03 4.2261703e+02 - 2.5612685e+03 -2.2870188e+03 3.9186464e+02 - 2.6191471e+03 -2.2667932e+03 3.5871240e+02 - 2.6690683e+03 -2.2494915e+03 3.2279242e+02 - 2.7106639e+03 -2.2357544e+03 2.8362642e+02 - 2.7434945e+03 -2.2263250e+03 2.4059667e+02 - 2.7670283e+03 -2.2220766e+03 1.9291722e+02 - 2.7806223e+03 -2.2240397e+03 1.3961977e+02 - 2.7835213e+03 -2.2334130e+03 7.9591064e+01 - 2.7749196e+03 -2.2515106e+03 1.1741973e+01 - 2.7541851e+03 -2.2795421e+03 -6.4547384e+01 - 2.7214107e+03 -2.3180461e+03 -1.4853854e+02 - 2.6784123e+03 -2.3658413e+03 -2.3687370e+02 - 2.6298096e+03 -2.4188422e+03 -3.2282174e+02 - 2.5829190e+03 -2.4700427e+03 -3.9772936e+02 - 2.5453316e+03 -2.5118775e+03 -4.5497877e+02 - 2.5215886e+03 -2.5396112e+03 -4.9322119e+02 - 2.5119250e+03 -2.5527280e+03 -5.1577975e+02 - 2.5135513e+03 -2.5537577e+03 -5.2763608e+02 - 2.5225137e+03 -2.5464637e+03 -5.3302850e+02 - 2.5347729e+03 -2.5347729e+03 -5.3454376e+02 - 2.5464637e+03 -2.5225137e+03 -5.3302850e+02 - 2.5537577e+03 -2.5135513e+03 -5.2763608e+02 - 2.5527280e+03 -2.5119250e+03 -5.1577975e+02 - 2.5396112e+03 -2.5215886e+03 -4.9322119e+02 - 2.5118775e+03 -2.5453316e+03 -4.5497877e+02 - 2.4700427e+03 -2.5829190e+03 -3.9772936e+02 - 2.4188422e+03 -2.6298096e+03 -3.2282174e+02 - 2.3658413e+03 -2.6784123e+03 -2.3687370e+02 - 2.3180461e+03 -2.7214107e+03 -1.4853854e+02 - 2.2795421e+03 -2.7541851e+03 -6.4547384e+01 - 2.2515106e+03 -2.7749196e+03 1.1741973e+01 - 2.2334130e+03 -2.7835213e+03 7.9591064e+01 - 2.2240397e+03 -2.7806223e+03 1.3961977e+02 - 2.2220766e+03 -2.7670283e+03 1.9291722e+02 - 2.2263250e+03 -2.7434945e+03 2.4059667e+02 - 2.2357544e+03 -2.7106639e+03 2.8362642e+02 - 2.2494915e+03 -2.6690683e+03 3.2279242e+02 - 2.2667932e+03 -2.6191471e+03 3.5871240e+02 - 2.2870188e+03 -2.5612685e+03 3.9186464e+02 - 2.3096073e+03 -2.4957482e+03 4.2261703e+02 - 2.3340597e+03 -2.4228640e+03 4.5125158e+02 - 2.3599256e+03 -2.3428677e+03 4.7798382e+02 - 2.3867931e+03 -2.2559952e+03 5.0297764e+02 - 2.4142810e+03 -2.1624748e+03 5.2635654e+02 - 2.4420336e+03 -2.0625341e+03 5.4821215e+02 - 2.4697164e+03 -1.9564068e+03 5.6861075e+02 - 2.4970131e+03 -1.8443378e+03 5.8759832e+02 - 2.5236243e+03 -1.7265883e+03 6.0520454e+02 - 2.5492662e+03 -1.6034403e+03 6.2144611e+02 - 2.5736704e+03 -1.4751996e+03 6.3632938e+02 - 2.5965843e+03 -1.3421989e+03 6.4985273e+02 - 2.6177723e+03 -1.2047997e+03 6.6200855e+02 - 2.6370168e+03 -1.0633929e+03 6.7278505e+02 - 2.6541197e+03 -9.1839950e+02 6.8216786e+02 - 2.6689045e+03 -7.7026899e+02 6.9014146e+02 - 2.6812178e+03 -6.1947792e+02 6.9669044e+02 - 2.6909314e+03 -4.6652692e+02 7.0180064e+02 - 2.6979436e+03 -3.1193705e+02 7.0546002e+02 - 2.7021807e+03 -1.5624538e+02 7.0765946e+02 - 2.7035980e+03 -4.8134273e-09 7.0839325e+02 - 2.7164741e+03 4.8134273e-09 6.2158447e+02 - 2.7150125e+03 1.5789863e+02 6.2094684e+02 - 2.7106429e+03 3.1523618e+02 6.1903593e+02 - 2.7034104e+03 4.7145739e+02 6.1585749e+02 - 2.6933898e+03 6.2601850e+02 6.1142086e+02 - 2.6806840e+03 7.7839237e+02 6.0573842e+02 - 2.6654228e+03 9.2807316e+02 5.9882507e+02 - 2.6477608e+03 1.0745801e+03 5.9069739e+02 - 2.6278762e+03 1.2174603e+03 5.8137278e+02 - 2.6059680e+03 1.3562913e+03 5.7086843e+02 - 2.5822546e+03 1.4906812e+03 5.5920019e+02 - 2.5569717e+03 1.6202697e+03 5.4638135e+02 - 2.5303711e+03 1.7447261e+03 5.3242127e+02 - 2.5027190e+03 1.8637486e+03 5.1732392e+02 - 2.4742959e+03 1.9770609e+03 5.0108626e+02 - 2.4453957e+03 2.0844091e+03 4.8369629e+02 - 2.4163268e+03 2.1855581e+03 4.6513092e+02 - 2.3874127e+03 2.2802865e+03 4.4535322e+02 - 2.3589945e+03 2.3683823e+03 4.2430907e+02 - 2.3314331e+03 2.4496369e+03 4.0192276e+02 - 2.3051136e+03 2.5238399e+03 3.7809116e+02 - 2.2804506e+03 2.5907720e+03 3.5267583e+02 - 2.2578950e+03 2.6501983e+03 3.2549203e+02 - 2.2379440e+03 2.7018593e+03 2.9629360e+02 - 2.2211531e+03 2.7454607e+03 2.6475177e+02 - 2.2081545e+03 2.7806591e+03 2.3042604e+02 - 2.1996809e+03 2.8070429e+03 1.9272526e+02 - 2.1965988e+03 2.8241067e+03 1.5085927e+02 - 2.1999508e+03 2.8312181e+03 1.0378957e+02 - 2.2109960e+03 2.8275885e+03 5.0210228e+01 - 2.2312098e+03 2.8122871e+03 -1.1352480e+01 - 2.2621138e+03 2.7844181e+03 -8.2117103e+01 - 2.3046543e+03 2.7437347e+03 -1.6195666e+02 - 2.3577506e+03 2.6920351e+03 -2.4747897e+02 - 2.4163133e+03 2.6350104e+03 -3.3046807e+02 - 2.4710361e+03 2.5822724e+03 -3.9992255e+02 - 2.5124490e+03 2.5432159e+03 -4.4850323e+02 - 2.5361950e+03 2.5218580e+03 -4.7681021e+02 - 2.5438952e+03 2.5161798e+03 -4.9071883e+02 - 2.5403250e+03 2.5210897e+03 -4.9642430e+02 - 2.5309411e+03 2.5309411e+03 -4.9789240e+02 - 2.5210897e+03 2.5403250e+03 -4.9642430e+02 - 2.5161798e+03 2.5438952e+03 -4.9071883e+02 - 2.5218580e+03 2.5361950e+03 -4.7681021e+02 - 2.5432159e+03 2.5124490e+03 -4.4850323e+02 - 2.5822724e+03 2.4710361e+03 -3.9992255e+02 - 2.6350104e+03 2.4163133e+03 -3.3046807e+02 - 2.6920351e+03 2.3577506e+03 -2.4747897e+02 - 2.7437347e+03 2.3046543e+03 -1.6195666e+02 - 2.7844181e+03 2.2621138e+03 -8.2117103e+01 - 2.8122871e+03 2.2312098e+03 -1.1352480e+01 - 2.8275885e+03 2.2109960e+03 5.0210228e+01 - 2.8312181e+03 2.1999508e+03 1.0378957e+02 - 2.8241067e+03 2.1965988e+03 1.5085927e+02 - 2.8070429e+03 2.1996809e+03 1.9272526e+02 - 2.7806591e+03 2.2081545e+03 2.3042604e+02 - 2.7454607e+03 2.2211531e+03 2.6475177e+02 - 2.7018593e+03 2.2379440e+03 2.9629360e+02 - 2.6501983e+03 2.2578950e+03 3.2549203e+02 - 2.5907720e+03 2.2804506e+03 3.5267583e+02 - 2.5238399e+03 2.3051136e+03 3.7809116e+02 - 2.4496369e+03 2.3314331e+03 4.0192276e+02 - 2.3683823e+03 2.3589945e+03 4.2430907e+02 - 2.2802865e+03 2.3874127e+03 4.4535322e+02 - 2.1855581e+03 2.4163268e+03 4.6513092e+02 - 2.0844091e+03 2.4453957e+03 4.8369629e+02 - 1.9770609e+03 2.4742959e+03 5.0108626e+02 - 1.8637486e+03 2.5027190e+03 5.1732392e+02 - 1.7447261e+03 2.5303711e+03 5.3242127e+02 - 1.6202697e+03 2.5569717e+03 5.4638135e+02 - 1.4906812e+03 2.5822546e+03 5.5920019e+02 - 1.3562913e+03 2.6059680e+03 5.7086843e+02 - 1.2174603e+03 2.6278762e+03 5.8137278e+02 - 1.0745801e+03 2.6477608e+03 5.9069739e+02 - 9.2807316e+02 2.6654228e+03 5.9882507e+02 - 7.7839237e+02 2.6806840e+03 6.0573842e+02 - 6.2601850e+02 2.6933898e+03 6.1142086e+02 - 4.7145739e+02 2.7034104e+03 6.1585749e+02 - 3.1523618e+02 2.7106429e+03 6.1903593e+02 - 1.5789863e+02 2.7150125e+03 6.2094684e+02 - 4.8134273e-09 2.7164741e+03 6.2158447e+02 - -1.5789863e+02 2.7150125e+03 6.2094684e+02 - -3.1523618e+02 2.7106429e+03 6.1903593e+02 - -4.7145739e+02 2.7034104e+03 6.1585749e+02 - -6.2601850e+02 2.6933898e+03 6.1142086e+02 - -7.7839237e+02 2.6806840e+03 6.0573842e+02 - -9.2807316e+02 2.6654228e+03 5.9882507e+02 - -1.0745801e+03 2.6477608e+03 5.9069739e+02 - -1.2174603e+03 2.6278762e+03 5.8137278e+02 - -1.3562913e+03 2.6059680e+03 5.7086843e+02 - -1.4906812e+03 2.5822546e+03 5.5920019e+02 - -1.6202697e+03 2.5569717e+03 5.4638135e+02 - -1.7447261e+03 2.5303711e+03 5.3242127e+02 - -1.8637486e+03 2.5027190e+03 5.1732392e+02 - -1.9770609e+03 2.4742959e+03 5.0108626e+02 - -2.0844091e+03 2.4453957e+03 4.8369629e+02 - -2.1855581e+03 2.4163268e+03 4.6513092e+02 - -2.2802865e+03 2.3874127e+03 4.4535322e+02 - -2.3683823e+03 2.3589945e+03 4.2430907e+02 - -2.4496369e+03 2.3314331e+03 4.0192276e+02 - -2.5238399e+03 2.3051136e+03 3.7809116e+02 - -2.5907720e+03 2.2804506e+03 3.5267583e+02 - -2.6501983e+03 2.2578950e+03 3.2549203e+02 - -2.7018593e+03 2.2379440e+03 2.9629360e+02 - -2.7454607e+03 2.2211531e+03 2.6475177e+02 - -2.7806591e+03 2.2081545e+03 2.3042604e+02 - -2.8070429e+03 2.1996809e+03 1.9272526e+02 - -2.8241067e+03 2.1965988e+03 1.5085927e+02 - -2.8312181e+03 2.1999508e+03 1.0378957e+02 - -2.8275885e+03 2.2109960e+03 5.0210228e+01 - -2.8122871e+03 2.2312098e+03 -1.1352480e+01 - -2.7844181e+03 2.2621138e+03 -8.2117103e+01 - -2.7437347e+03 2.3046543e+03 -1.6195666e+02 - -2.6920351e+03 2.3577506e+03 -2.4747897e+02 - -2.6350104e+03 2.4163133e+03 -3.3046807e+02 - -2.5822724e+03 2.4710361e+03 -3.9992255e+02 - -2.5432159e+03 2.5124490e+03 -4.4850323e+02 - -2.5218580e+03 2.5361950e+03 -4.7681021e+02 - -2.5161798e+03 2.5438952e+03 -4.9071883e+02 - -2.5210897e+03 2.5403250e+03 -4.9642430e+02 - -2.5309411e+03 2.5309411e+03 -4.9789240e+02 - -2.5403250e+03 2.5210897e+03 -4.9642430e+02 - -2.5438952e+03 2.5161798e+03 -4.9071883e+02 - -2.5361950e+03 2.5218580e+03 -4.7681021e+02 - -2.5124490e+03 2.5432159e+03 -4.4850323e+02 - -2.4710361e+03 2.5822724e+03 -3.9992255e+02 - -2.4163133e+03 2.6350104e+03 -3.3046807e+02 - -2.3577506e+03 2.6920351e+03 -2.4747897e+02 - -2.3046543e+03 2.7437347e+03 -1.6195666e+02 - -2.2621138e+03 2.7844181e+03 -8.2117103e+01 - -2.2312098e+03 2.8122871e+03 -1.1352480e+01 - -2.2109960e+03 2.8275885e+03 5.0210228e+01 - -2.1999508e+03 2.8312181e+03 1.0378957e+02 - -2.1965988e+03 2.8241067e+03 1.5085927e+02 - -2.1996809e+03 2.8070429e+03 1.9272526e+02 - -2.2081545e+03 2.7806591e+03 2.3042604e+02 - -2.2211531e+03 2.7454607e+03 2.6475177e+02 - -2.2379440e+03 2.7018593e+03 2.9629360e+02 - -2.2578950e+03 2.6501983e+03 3.2549203e+02 - -2.2804506e+03 2.5907720e+03 3.5267583e+02 - -2.3051136e+03 2.5238399e+03 3.7809116e+02 - -2.3314331e+03 2.4496369e+03 4.0192276e+02 - -2.3589945e+03 2.3683823e+03 4.2430907e+02 - -2.3874127e+03 2.2802865e+03 4.4535322e+02 - -2.4163268e+03 2.1855581e+03 4.6513092e+02 - -2.4453957e+03 2.0844091e+03 4.8369629e+02 - -2.4742959e+03 1.9770609e+03 5.0108626e+02 - -2.5027190e+03 1.8637486e+03 5.1732392e+02 - -2.5303711e+03 1.7447261e+03 5.3242127e+02 - -2.5569717e+03 1.6202697e+03 5.4638135e+02 - -2.5822546e+03 1.4906812e+03 5.5920019e+02 - -2.6059680e+03 1.3562913e+03 5.7086843e+02 - -2.6278762e+03 1.2174603e+03 5.8137278e+02 - -2.6477608e+03 1.0745801e+03 5.9069739e+02 - -2.6654228e+03 9.2807316e+02 5.9882507e+02 - -2.6806840e+03 7.7839237e+02 6.0573842e+02 - -2.6933898e+03 6.2601850e+02 6.1142086e+02 - -2.7034104e+03 4.7145739e+02 6.1585749e+02 - -2.7106429e+03 3.1523618e+02 6.1903593e+02 - -2.7150125e+03 1.5789863e+02 6.2094684e+02 - -2.7164741e+03 -4.8134273e-09 6.2158447e+02 - -2.7150125e+03 -1.5789863e+02 6.2094684e+02 - -2.7106429e+03 -3.1523618e+02 6.1903593e+02 - -2.7034104e+03 -4.7145739e+02 6.1585749e+02 - -2.6933898e+03 -6.2601850e+02 6.1142086e+02 - -2.6806840e+03 -7.7839237e+02 6.0573842e+02 - -2.6654228e+03 -9.2807316e+02 5.9882507e+02 - -2.6477608e+03 -1.0745801e+03 5.9069739e+02 - -2.6278762e+03 -1.2174603e+03 5.8137278e+02 - -2.6059680e+03 -1.3562913e+03 5.7086843e+02 - -2.5822546e+03 -1.4906812e+03 5.5920019e+02 - -2.5569717e+03 -1.6202697e+03 5.4638135e+02 - -2.5303711e+03 -1.7447261e+03 5.3242127e+02 - -2.5027190e+03 -1.8637486e+03 5.1732392e+02 - -2.4742959e+03 -1.9770609e+03 5.0108626e+02 - -2.4453957e+03 -2.0844091e+03 4.8369629e+02 - -2.4163268e+03 -2.1855581e+03 4.6513092e+02 - -2.3874127e+03 -2.2802865e+03 4.4535322e+02 - -2.3589945e+03 -2.3683823e+03 4.2430907e+02 - -2.3314331e+03 -2.4496369e+03 4.0192276e+02 - -2.3051136e+03 -2.5238399e+03 3.7809116e+02 - -2.2804506e+03 -2.5907720e+03 3.5267583e+02 - -2.2578950e+03 -2.6501983e+03 3.2549203e+02 - -2.2379440e+03 -2.7018593e+03 2.9629360e+02 - -2.2211531e+03 -2.7454607e+03 2.6475177e+02 - -2.2081545e+03 -2.7806591e+03 2.3042604e+02 - -2.1996809e+03 -2.8070429e+03 1.9272526e+02 - -2.1965988e+03 -2.8241067e+03 1.5085927e+02 - -2.1999508e+03 -2.8312181e+03 1.0378957e+02 - -2.2109960e+03 -2.8275885e+03 5.0210228e+01 - -2.2312098e+03 -2.8122871e+03 -1.1352480e+01 - -2.2621138e+03 -2.7844181e+03 -8.2117103e+01 - -2.3046543e+03 -2.7437347e+03 -1.6195666e+02 - -2.3577506e+03 -2.6920351e+03 -2.4747897e+02 - -2.4163133e+03 -2.6350104e+03 -3.3046807e+02 - -2.4710361e+03 -2.5822724e+03 -3.9992255e+02 - -2.5124490e+03 -2.5432159e+03 -4.4850323e+02 - -2.5361950e+03 -2.5218580e+03 -4.7681021e+02 - -2.5438952e+03 -2.5161798e+03 -4.9071883e+02 - -2.5403250e+03 -2.5210897e+03 -4.9642430e+02 - -2.5309411e+03 -2.5309411e+03 -4.9789240e+02 - -2.5210897e+03 -2.5403250e+03 -4.9642430e+02 - -2.5161798e+03 -2.5438952e+03 -4.9071883e+02 - -2.5218580e+03 -2.5361950e+03 -4.7681021e+02 - -2.5432159e+03 -2.5124490e+03 -4.4850323e+02 - -2.5822724e+03 -2.4710361e+03 -3.9992255e+02 - -2.6350104e+03 -2.4163133e+03 -3.3046807e+02 - -2.6920351e+03 -2.3577506e+03 -2.4747897e+02 - -2.7437347e+03 -2.3046543e+03 -1.6195666e+02 - -2.7844181e+03 -2.2621138e+03 -8.2117103e+01 - -2.8122871e+03 -2.2312098e+03 -1.1352480e+01 - -2.8275885e+03 -2.2109960e+03 5.0210228e+01 - -2.8312181e+03 -2.1999508e+03 1.0378957e+02 - -2.8241067e+03 -2.1965988e+03 1.5085927e+02 - -2.8070429e+03 -2.1996809e+03 1.9272526e+02 - -2.7806591e+03 -2.2081545e+03 2.3042604e+02 - -2.7454607e+03 -2.2211531e+03 2.6475177e+02 - -2.7018593e+03 -2.2379440e+03 2.9629360e+02 - -2.6501983e+03 -2.2578950e+03 3.2549203e+02 - -2.5907720e+03 -2.2804506e+03 3.5267583e+02 - -2.5238399e+03 -2.3051136e+03 3.7809116e+02 - -2.4496369e+03 -2.3314331e+03 4.0192276e+02 - -2.3683823e+03 -2.3589945e+03 4.2430907e+02 - -2.2802865e+03 -2.3874127e+03 4.4535322e+02 - -2.1855581e+03 -2.4163268e+03 4.6513092e+02 - -2.0844091e+03 -2.4453957e+03 4.8369629e+02 - -1.9770609e+03 -2.4742959e+03 5.0108626e+02 - -1.8637486e+03 -2.5027190e+03 5.1732392e+02 - -1.7447261e+03 -2.5303711e+03 5.3242127e+02 - -1.6202697e+03 -2.5569717e+03 5.4638135e+02 - -1.4906812e+03 -2.5822546e+03 5.5920019e+02 - -1.3562913e+03 -2.6059680e+03 5.7086843e+02 - -1.2174603e+03 -2.6278762e+03 5.8137278e+02 - -1.0745801e+03 -2.6477608e+03 5.9069739e+02 - -9.2807316e+02 -2.6654228e+03 5.9882507e+02 - -7.7839237e+02 -2.6806840e+03 6.0573842e+02 - -6.2601850e+02 -2.6933898e+03 6.1142086e+02 - -4.7145739e+02 -2.7034104e+03 6.1585749e+02 - -3.1523618e+02 -2.7106429e+03 6.1903593e+02 - -1.5789863e+02 -2.7150125e+03 6.2094684e+02 - 2.4067136e-09 -2.7164741e+03 6.2158447e+02 - 1.5789863e+02 -2.7150125e+03 6.2094684e+02 - 3.1523618e+02 -2.7106429e+03 6.1903593e+02 - 4.7145739e+02 -2.7034104e+03 6.1585749e+02 - 6.2601850e+02 -2.6933898e+03 6.1142086e+02 - 7.7839237e+02 -2.6806840e+03 6.0573842e+02 - 9.2807316e+02 -2.6654228e+03 5.9882507e+02 - 1.0745801e+03 -2.6477608e+03 5.9069739e+02 - 1.2174603e+03 -2.6278762e+03 5.8137278e+02 - 1.3562913e+03 -2.6059680e+03 5.7086843e+02 - 1.4906812e+03 -2.5822546e+03 5.5920019e+02 - 1.6202697e+03 -2.5569717e+03 5.4638135e+02 - 1.7447261e+03 -2.5303711e+03 5.3242127e+02 - 1.8637486e+03 -2.5027190e+03 5.1732392e+02 - 1.9770609e+03 -2.4742959e+03 5.0108626e+02 - 2.0844091e+03 -2.4453957e+03 4.8369629e+02 - 2.1855581e+03 -2.4163268e+03 4.6513092e+02 - 2.2802865e+03 -2.3874127e+03 4.4535322e+02 - 2.3683823e+03 -2.3589945e+03 4.2430907e+02 - 2.4496369e+03 -2.3314331e+03 4.0192276e+02 - 2.5238399e+03 -2.3051136e+03 3.7809116e+02 - 2.5907720e+03 -2.2804506e+03 3.5267583e+02 - 2.6501983e+03 -2.2578950e+03 3.2549203e+02 - 2.7018593e+03 -2.2379440e+03 2.9629360e+02 - 2.7454607e+03 -2.2211531e+03 2.6475177e+02 - 2.7806591e+03 -2.2081545e+03 2.3042604e+02 - 2.8070429e+03 -2.1996809e+03 1.9272526e+02 - 2.8241067e+03 -2.1965988e+03 1.5085927e+02 - 2.8312181e+03 -2.1999508e+03 1.0378957e+02 - 2.8275885e+03 -2.2109960e+03 5.0210228e+01 - 2.8122871e+03 -2.2312098e+03 -1.1352480e+01 - 2.7844181e+03 -2.2621138e+03 -8.2117103e+01 - 2.7437347e+03 -2.3046543e+03 -1.6195666e+02 - 2.6920351e+03 -2.3577506e+03 -2.4747897e+02 - 2.6350104e+03 -2.4163133e+03 -3.3046807e+02 - 2.5822724e+03 -2.4710361e+03 -3.9992255e+02 - 2.5432159e+03 -2.5124490e+03 -4.4850323e+02 - 2.5218580e+03 -2.5361950e+03 -4.7681021e+02 - 2.5161798e+03 -2.5438952e+03 -4.9071883e+02 - 2.5210897e+03 -2.5403250e+03 -4.9642430e+02 - 2.5309411e+03 -2.5309411e+03 -4.9789240e+02 - 2.5403250e+03 -2.5210897e+03 -4.9642430e+02 - 2.5438952e+03 -2.5161798e+03 -4.9071883e+02 - 2.5361950e+03 -2.5218580e+03 -4.7681021e+02 - 2.5124490e+03 -2.5432159e+03 -4.4850323e+02 - 2.4710361e+03 -2.5822724e+03 -3.9992255e+02 - 2.4163133e+03 -2.6350104e+03 -3.3046807e+02 - 2.3577506e+03 -2.6920351e+03 -2.4747897e+02 - 2.3046543e+03 -2.7437347e+03 -1.6195666e+02 - 2.2621138e+03 -2.7844181e+03 -8.2117103e+01 - 2.2312098e+03 -2.8122871e+03 -1.1352480e+01 - 2.2109960e+03 -2.8275885e+03 5.0210228e+01 - 2.1999508e+03 -2.8312181e+03 1.0378957e+02 - 2.1965988e+03 -2.8241067e+03 1.5085927e+02 - 2.1996809e+03 -2.8070429e+03 1.9272526e+02 - 2.2081545e+03 -2.7806591e+03 2.3042604e+02 - 2.2211531e+03 -2.7454607e+03 2.6475177e+02 - 2.2379440e+03 -2.7018593e+03 2.9629360e+02 - 2.2578950e+03 -2.6501983e+03 3.2549203e+02 - 2.2804506e+03 -2.5907720e+03 3.5267583e+02 - 2.3051136e+03 -2.5238399e+03 3.7809116e+02 - 2.3314331e+03 -2.4496369e+03 4.0192276e+02 - 2.3589945e+03 -2.3683823e+03 4.2430907e+02 - 2.3874127e+03 -2.2802865e+03 4.4535322e+02 - 2.4163268e+03 -2.1855581e+03 4.6513092e+02 - 2.4453957e+03 -2.0844091e+03 4.8369629e+02 - 2.4742959e+03 -1.9770609e+03 5.0108626e+02 - 2.5027190e+03 -1.8637486e+03 5.1732392e+02 - 2.5303711e+03 -1.7447261e+03 5.3242127e+02 - 2.5569717e+03 -1.6202697e+03 5.4638135e+02 - 2.5822546e+03 -1.4906812e+03 5.5920019e+02 - 2.6059680e+03 -1.3562913e+03 5.7086843e+02 - 2.6278762e+03 -1.2174603e+03 5.8137278e+02 - 2.6477608e+03 -1.0745801e+03 5.9069739e+02 - 2.6654228e+03 -9.2807316e+02 5.9882507e+02 - 2.6806840e+03 -7.7839237e+02 6.0573842e+02 - 2.6933898e+03 -6.2601850e+02 6.1142086e+02 - 2.7034104e+03 -4.7145739e+02 6.1585749e+02 - 2.7106429e+03 -3.1523618e+02 6.1903593e+02 - 2.7150125e+03 -1.5789863e+02 6.2094684e+02 - 2.7164741e+03 0.0000000e+00 6.2158447e+02 - 2.7277013e+03 -2.4067136e-09 5.3408879e+02 - 2.7262019e+03 1.5931869e+02 5.3354526e+02 - 2.7217190e+03 3.1806952e+02 5.3191652e+02 - 2.7142986e+03 4.7569065e+02 5.2920811e+02 - 2.7040163e+03 6.3163209e+02 5.2542895e+02 - 2.6909763e+03 7.8536107e+02 5.2059107e+02 - 2.6753098e+03 9.3636675e+02 5.1470899e+02 - 2.6571734e+03 1.0841642e+03 5.0779920e+02 - 2.6367467e+03 1.2282975e+03 4.9987937e+02 - 2.6142304e+03 1.3683416e+03 4.9096756e+02 - 2.5898442e+03 1.5039039e+03 4.8108136e+02 - 2.5638246e+03 1.6346237e+03 4.7023695e+02 - 2.5364237e+03 1.7601717e+03 4.5844809e+02 - 2.5079074e+03 1.8802481e+03 4.4572510e+02 - 2.4785543e+03 1.9945802e+03 4.3207370e+02 - 2.4486561e+03 2.1029190e+03 4.1749381e+02 - 2.4185165e+03 2.2050354e+03 4.0197815e+02 - 2.3884530e+03 2.3007160e+03 3.8551055e+02 - 2.3587975e+03 2.3897588e+03 3.6806396e+02 - 2.3298988e+03 2.4719680e+03 3.4959779e+02 - 2.3021253e+03 2.5471492e+03 3.3005444e+02 - 2.2758685e+03 2.6151043e+03 3.0935442e+02 - 2.2515485e+03 2.6756266e+03 2.8738955e+02 - 2.2296191e+03 2.7284948e+03 2.6401308e+02 - 2.2105768e+03 2.7734669e+03 2.3902527e+02 - 2.1949706e+03 2.8102725e+03 2.1215209e+02 - 2.1834185e+03 2.8386015e+03 1.8301377e+02 - 2.1766291e+03 2.8580875e+03 1.5107866e+02 - 2.1754371e+03 2.8682809e+03 1.1559744e+02 - 2.1808550e+03 2.8686065e+03 7.5516474e+01 - 2.1941450e+03 2.8583040e+03 2.9386579e+01 - 2.2168863e+03 2.8363751e+03 -2.4654550e+01 - 2.2509140e+03 2.8016589e+03 -8.8575293e+01 - 2.2977222e+03 2.7534274e+03 -1.6321981e+02 - 2.3565053e+03 2.6932901e+03 -2.4543226e+02 - 2.4207681e+03 2.6284083e+03 -3.2492671e+02 - 2.4777327e+03 2.5718195e+03 -3.8731472e+02 - 2.5158356e+03 2.5348307e+03 -4.2519444e+02 - 2.5327208e+03 2.5192562e+03 -4.4290844e+02 - 2.5337498e+03 2.5192259e+03 -4.4928926e+02 - 2.5266718e+03 2.5266718e+03 -4.5071005e+02 - 2.5192259e+03 2.5337498e+03 -4.4928926e+02 - 2.5192562e+03 2.5327208e+03 -4.4290844e+02 - 2.5348307e+03 2.5158356e+03 -4.2519444e+02 - 2.5718195e+03 2.4777327e+03 -3.8731472e+02 - 2.6284083e+03 2.4207681e+03 -3.2492671e+02 - 2.6932901e+03 2.3565053e+03 -2.4543226e+02 - 2.7534274e+03 2.2977222e+03 -1.6321981e+02 - 2.8016589e+03 2.2509140e+03 -8.8575293e+01 - 2.8363751e+03 2.2168863e+03 -2.4654550e+01 - 2.8583040e+03 2.1941450e+03 2.9386579e+01 - 2.8686065e+03 2.1808550e+03 7.5516474e+01 - 2.8682809e+03 2.1754371e+03 1.1559744e+02 - 2.8580875e+03 2.1766291e+03 1.5107866e+02 - 2.8386015e+03 2.1834185e+03 1.8301377e+02 - 2.8102725e+03 2.1949706e+03 2.1215209e+02 - 2.7734669e+03 2.2105768e+03 2.3902527e+02 - 2.7284948e+03 2.2296191e+03 2.6401308e+02 - 2.6756266e+03 2.2515485e+03 2.8738955e+02 - 2.6151043e+03 2.2758685e+03 3.0935442e+02 - 2.5471492e+03 2.3021253e+03 3.3005444e+02 - 2.4719680e+03 2.3298988e+03 3.4959779e+02 - 2.3897588e+03 2.3587975e+03 3.6806396e+02 - 2.3007160e+03 2.3884530e+03 3.8551055e+02 - 2.2050354e+03 2.4185165e+03 4.0197815e+02 - 2.1029190e+03 2.4486561e+03 4.1749381e+02 - 1.9945802e+03 2.4785543e+03 4.3207370e+02 - 1.8802481e+03 2.5079074e+03 4.4572510e+02 - 1.7601717e+03 2.5364237e+03 4.5844809e+02 - 1.6346237e+03 2.5638246e+03 4.7023695e+02 - 1.5039039e+03 2.5898442e+03 4.8108136e+02 - 1.3683416e+03 2.6142304e+03 4.9096756e+02 - 1.2282975e+03 2.6367467e+03 4.9987937e+02 - 1.0841642e+03 2.6571734e+03 5.0779920e+02 - 9.3636675e+02 2.6753098e+03 5.1470899e+02 - 7.8536107e+02 2.6909763e+03 5.2059107e+02 - 6.3163209e+02 2.7040163e+03 5.2542895e+02 - 4.7569065e+02 2.7142986e+03 5.2920811e+02 - 3.1806952e+02 2.7217190e+03 5.3191652e+02 - 1.5931869e+02 2.7262019e+03 5.3354526e+02 - 0.0000000e+00 2.7277013e+03 5.3408879e+02 - -1.5931869e+02 2.7262019e+03 5.3354526e+02 - -3.1806952e+02 2.7217190e+03 5.3191652e+02 - -4.7569065e+02 2.7142986e+03 5.2920811e+02 - -6.3163209e+02 2.7040163e+03 5.2542895e+02 - -7.8536107e+02 2.6909763e+03 5.2059107e+02 - -9.3636675e+02 2.6753098e+03 5.1470899e+02 - -1.0841642e+03 2.6571734e+03 5.0779920e+02 - -1.2282975e+03 2.6367467e+03 4.9987937e+02 - -1.3683416e+03 2.6142304e+03 4.9096756e+02 - -1.5039039e+03 2.5898442e+03 4.8108136e+02 - -1.6346237e+03 2.5638246e+03 4.7023695e+02 - -1.7601717e+03 2.5364237e+03 4.5844809e+02 - -1.8802481e+03 2.5079074e+03 4.4572510e+02 - -1.9945802e+03 2.4785543e+03 4.3207370e+02 - -2.1029190e+03 2.4486561e+03 4.1749381e+02 - -2.2050354e+03 2.4185165e+03 4.0197815e+02 - -2.3007160e+03 2.3884530e+03 3.8551055e+02 - -2.3897588e+03 2.3587975e+03 3.6806396e+02 - -2.4719680e+03 2.3298988e+03 3.4959779e+02 - -2.5471492e+03 2.3021253e+03 3.3005444e+02 - -2.6151043e+03 2.2758685e+03 3.0935442e+02 - -2.6756266e+03 2.2515485e+03 2.8738955e+02 - -2.7284948e+03 2.2296191e+03 2.6401308e+02 - -2.7734669e+03 2.2105768e+03 2.3902527e+02 - -2.8102725e+03 2.1949706e+03 2.1215209e+02 - -2.8386015e+03 2.1834185e+03 1.8301377e+02 - -2.8580875e+03 2.1766291e+03 1.5107866e+02 - -2.8682809e+03 2.1754371e+03 1.1559744e+02 - -2.8686065e+03 2.1808550e+03 7.5516474e+01 - -2.8583040e+03 2.1941450e+03 2.9386579e+01 - -2.8363751e+03 2.2168863e+03 -2.4654550e+01 - -2.8016589e+03 2.2509140e+03 -8.8575293e+01 - -2.7534274e+03 2.2977222e+03 -1.6321981e+02 - -2.6932901e+03 2.3565053e+03 -2.4543226e+02 - -2.6284083e+03 2.4207681e+03 -3.2492671e+02 - -2.5718195e+03 2.4777327e+03 -3.8731472e+02 - -2.5348307e+03 2.5158356e+03 -4.2519444e+02 - -2.5192562e+03 2.5327208e+03 -4.4290844e+02 - -2.5192259e+03 2.5337498e+03 -4.4928926e+02 - -2.5266718e+03 2.5266718e+03 -4.5071005e+02 - -2.5337498e+03 2.5192259e+03 -4.4928926e+02 - -2.5327208e+03 2.5192562e+03 -4.4290844e+02 - -2.5158356e+03 2.5348307e+03 -4.2519444e+02 - -2.4777327e+03 2.5718195e+03 -3.8731472e+02 - -2.4207681e+03 2.6284083e+03 -3.2492671e+02 - -2.3565053e+03 2.6932901e+03 -2.4543226e+02 - -2.2977222e+03 2.7534274e+03 -1.6321981e+02 - -2.2509140e+03 2.8016589e+03 -8.8575293e+01 - -2.2168863e+03 2.8363751e+03 -2.4654550e+01 - -2.1941450e+03 2.8583040e+03 2.9386579e+01 - -2.1808550e+03 2.8686065e+03 7.5516474e+01 - -2.1754371e+03 2.8682809e+03 1.1559744e+02 - -2.1766291e+03 2.8580875e+03 1.5107866e+02 - -2.1834185e+03 2.8386015e+03 1.8301377e+02 - -2.1949706e+03 2.8102725e+03 2.1215209e+02 - -2.2105768e+03 2.7734669e+03 2.3902527e+02 - -2.2296191e+03 2.7284948e+03 2.6401308e+02 - -2.2515485e+03 2.6756266e+03 2.8738955e+02 - -2.2758685e+03 2.6151043e+03 3.0935442e+02 - -2.3021253e+03 2.5471492e+03 3.3005444e+02 - -2.3298988e+03 2.4719680e+03 3.4959779e+02 - -2.3587975e+03 2.3897588e+03 3.6806396e+02 - -2.3884530e+03 2.3007160e+03 3.8551055e+02 - -2.4185165e+03 2.2050354e+03 4.0197815e+02 - -2.4486561e+03 2.1029190e+03 4.1749381e+02 - -2.4785543e+03 1.9945802e+03 4.3207370e+02 - -2.5079074e+03 1.8802481e+03 4.4572510e+02 - -2.5364237e+03 1.7601717e+03 4.5844809e+02 - -2.5638246e+03 1.6346237e+03 4.7023695e+02 - -2.5898442e+03 1.5039039e+03 4.8108136e+02 - -2.6142304e+03 1.3683416e+03 4.9096756e+02 - -2.6367467e+03 1.2282975e+03 4.9987937e+02 - -2.6571734e+03 1.0841642e+03 5.0779920e+02 - -2.6753098e+03 9.3636675e+02 5.1470899e+02 - -2.6909763e+03 7.8536107e+02 5.2059107e+02 - -2.7040163e+03 6.3163209e+02 5.2542895e+02 - -2.7142986e+03 4.7569065e+02 5.2920811e+02 - -2.7217190e+03 3.1806952e+02 5.3191652e+02 - -2.7262019e+03 1.5931869e+02 5.3354526e+02 - -2.7277013e+03 2.4067136e-09 5.3408879e+02 - -2.7262019e+03 -1.5931869e+02 5.3354526e+02 - -2.7217190e+03 -3.1806952e+02 5.3191652e+02 - -2.7142986e+03 -4.7569065e+02 5.2920811e+02 - -2.7040163e+03 -6.3163209e+02 5.2542895e+02 - -2.6909763e+03 -7.8536107e+02 5.2059107e+02 - -2.6753098e+03 -9.3636675e+02 5.1470899e+02 - -2.6571734e+03 -1.0841642e+03 5.0779920e+02 - -2.6367467e+03 -1.2282975e+03 4.9987937e+02 - -2.6142304e+03 -1.3683416e+03 4.9096756e+02 - -2.5898442e+03 -1.5039039e+03 4.8108136e+02 - -2.5638246e+03 -1.6346237e+03 4.7023695e+02 - -2.5364237e+03 -1.7601717e+03 4.5844809e+02 - -2.5079074e+03 -1.8802481e+03 4.4572510e+02 - -2.4785543e+03 -1.9945802e+03 4.3207370e+02 - -2.4486561e+03 -2.1029190e+03 4.1749381e+02 - -2.4185165e+03 -2.2050354e+03 4.0197815e+02 - -2.3884530e+03 -2.3007160e+03 3.8551055e+02 - -2.3587975e+03 -2.3897588e+03 3.6806396e+02 - -2.3298988e+03 -2.4719680e+03 3.4959779e+02 - -2.3021253e+03 -2.5471492e+03 3.3005444e+02 - -2.2758685e+03 -2.6151043e+03 3.0935442e+02 - -2.2515485e+03 -2.6756266e+03 2.8738955e+02 - -2.2296191e+03 -2.7284948e+03 2.6401308e+02 - -2.2105768e+03 -2.7734669e+03 2.3902527e+02 - -2.1949706e+03 -2.8102725e+03 2.1215209e+02 - -2.1834185e+03 -2.8386015e+03 1.8301377e+02 - -2.1766291e+03 -2.8580875e+03 1.5107866e+02 - -2.1754371e+03 -2.8682809e+03 1.1559744e+02 - -2.1808550e+03 -2.8686065e+03 7.5516474e+01 - -2.1941450e+03 -2.8583040e+03 2.9386579e+01 - -2.2168863e+03 -2.8363751e+03 -2.4654550e+01 - -2.2509140e+03 -2.8016589e+03 -8.8575293e+01 - -2.2977222e+03 -2.7534274e+03 -1.6321981e+02 - -2.3565053e+03 -2.6932901e+03 -2.4543226e+02 - -2.4207681e+03 -2.6284083e+03 -3.2492671e+02 - -2.4777327e+03 -2.5718195e+03 -3.8731472e+02 - -2.5158356e+03 -2.5348307e+03 -4.2519444e+02 - -2.5327208e+03 -2.5192562e+03 -4.4290844e+02 - -2.5337498e+03 -2.5192259e+03 -4.4928926e+02 - -2.5266718e+03 -2.5266718e+03 -4.5071005e+02 - -2.5192259e+03 -2.5337498e+03 -4.4928926e+02 - -2.5192562e+03 -2.5327208e+03 -4.4290844e+02 - -2.5348307e+03 -2.5158356e+03 -4.2519444e+02 - -2.5718195e+03 -2.4777327e+03 -3.8731472e+02 - -2.6284083e+03 -2.4207681e+03 -3.2492671e+02 - -2.6932901e+03 -2.3565053e+03 -2.4543226e+02 - -2.7534274e+03 -2.2977222e+03 -1.6321981e+02 - -2.8016589e+03 -2.2509140e+03 -8.8575293e+01 - -2.8363751e+03 -2.2168863e+03 -2.4654550e+01 - -2.8583040e+03 -2.1941450e+03 2.9386579e+01 - -2.8686065e+03 -2.1808550e+03 7.5516474e+01 - -2.8682809e+03 -2.1754371e+03 1.1559744e+02 - -2.8580875e+03 -2.1766291e+03 1.5107866e+02 - -2.8386015e+03 -2.1834185e+03 1.8301377e+02 - -2.8102725e+03 -2.1949706e+03 2.1215209e+02 - -2.7734669e+03 -2.2105768e+03 2.3902527e+02 - -2.7284948e+03 -2.2296191e+03 2.6401308e+02 - -2.6756266e+03 -2.2515485e+03 2.8738955e+02 - -2.6151043e+03 -2.2758685e+03 3.0935442e+02 - -2.5471492e+03 -2.3021253e+03 3.3005444e+02 - -2.4719680e+03 -2.3298988e+03 3.4959779e+02 - -2.3897588e+03 -2.3587975e+03 3.6806396e+02 - -2.3007160e+03 -2.3884530e+03 3.8551055e+02 - -2.2050354e+03 -2.4185165e+03 4.0197815e+02 - -2.1029190e+03 -2.4486561e+03 4.1749381e+02 - -1.9945802e+03 -2.4785543e+03 4.3207370e+02 - -1.8802481e+03 -2.5079074e+03 4.4572510e+02 - -1.7601717e+03 -2.5364237e+03 4.5844809e+02 - -1.6346237e+03 -2.5638246e+03 4.7023695e+02 - -1.5039039e+03 -2.5898442e+03 4.8108136e+02 - -1.3683416e+03 -2.6142304e+03 4.9096756e+02 - -1.2282975e+03 -2.6367467e+03 4.9987937e+02 - -1.0841642e+03 -2.6571734e+03 5.0779920e+02 - -9.3636675e+02 -2.6753098e+03 5.1470899e+02 - -7.8536107e+02 -2.6909763e+03 5.2059107e+02 - -6.3163209e+02 -2.7040163e+03 5.2542895e+02 - -4.7569065e+02 -2.7142986e+03 5.2920811e+02 - -3.1806952e+02 -2.7217190e+03 5.3191652e+02 - -1.5931869e+02 -2.7262019e+03 5.3354526e+02 - -4.8134273e-09 -2.7277013e+03 5.3408879e+02 - 1.5931869e+02 -2.7262019e+03 5.3354526e+02 - 3.1806952e+02 -2.7217190e+03 5.3191652e+02 - 4.7569065e+02 -2.7142986e+03 5.2920811e+02 - 6.3163209e+02 -2.7040163e+03 5.2542895e+02 - 7.8536107e+02 -2.6909763e+03 5.2059107e+02 - 9.3636675e+02 -2.6753098e+03 5.1470899e+02 - 1.0841642e+03 -2.6571734e+03 5.0779920e+02 - 1.2282975e+03 -2.6367467e+03 4.9987937e+02 - 1.3683416e+03 -2.6142304e+03 4.9096756e+02 - 1.5039039e+03 -2.5898442e+03 4.8108136e+02 - 1.6346237e+03 -2.5638246e+03 4.7023695e+02 - 1.7601717e+03 -2.5364237e+03 4.5844809e+02 - 1.8802481e+03 -2.5079074e+03 4.4572510e+02 - 1.9945802e+03 -2.4785543e+03 4.3207370e+02 - 2.1029190e+03 -2.4486561e+03 4.1749381e+02 - 2.2050354e+03 -2.4185165e+03 4.0197815e+02 - 2.3007160e+03 -2.3884530e+03 3.8551055e+02 - 2.3897588e+03 -2.3587975e+03 3.6806396e+02 - 2.4719680e+03 -2.3298988e+03 3.4959779e+02 - 2.5471492e+03 -2.3021253e+03 3.3005444e+02 - 2.6151043e+03 -2.2758685e+03 3.0935442e+02 - 2.6756266e+03 -2.2515485e+03 2.8738955e+02 - 2.7284948e+03 -2.2296191e+03 2.6401308e+02 - 2.7734669e+03 -2.2105768e+03 2.3902527e+02 - 2.8102725e+03 -2.1949706e+03 2.1215209e+02 - 2.8386015e+03 -2.1834185e+03 1.8301377e+02 - 2.8580875e+03 -2.1766291e+03 1.5107866e+02 - 2.8682809e+03 -2.1754371e+03 1.1559744e+02 - 2.8686065e+03 -2.1808550e+03 7.5516474e+01 - 2.8583040e+03 -2.1941450e+03 2.9386579e+01 - 2.8363751e+03 -2.2168863e+03 -2.4654550e+01 - 2.8016589e+03 -2.2509140e+03 -8.8575293e+01 - 2.7534274e+03 -2.2977222e+03 -1.6321981e+02 - 2.6932901e+03 -2.3565053e+03 -2.4543226e+02 - 2.6284083e+03 -2.4207681e+03 -3.2492671e+02 - 2.5718195e+03 -2.4777327e+03 -3.8731472e+02 - 2.5348307e+03 -2.5158356e+03 -4.2519444e+02 - 2.5192562e+03 -2.5327208e+03 -4.4290844e+02 - 2.5192259e+03 -2.5337498e+03 -4.4928926e+02 - 2.5266718e+03 -2.5266718e+03 -4.5071005e+02 - 2.5337498e+03 -2.5192259e+03 -4.4928926e+02 - 2.5327208e+03 -2.5192562e+03 -4.4290844e+02 - 2.5158356e+03 -2.5348307e+03 -4.2519444e+02 - 2.4777327e+03 -2.5718195e+03 -3.8731472e+02 - 2.4207681e+03 -2.6284083e+03 -3.2492671e+02 - 2.3565053e+03 -2.6932901e+03 -2.4543226e+02 - 2.2977222e+03 -2.7534274e+03 -1.6321981e+02 - 2.2509140e+03 -2.8016589e+03 -8.8575293e+01 - 2.2168863e+03 -2.8363751e+03 -2.4654550e+01 - 2.1941450e+03 -2.8583040e+03 2.9386579e+01 - 2.1808550e+03 -2.8686065e+03 7.5516474e+01 - 2.1754371e+03 -2.8682809e+03 1.1559744e+02 - 2.1766291e+03 -2.8580875e+03 1.5107866e+02 - 2.1834185e+03 -2.8386015e+03 1.8301377e+02 - 2.1949706e+03 -2.8102725e+03 2.1215209e+02 - 2.2105768e+03 -2.7734669e+03 2.3902527e+02 - 2.2296191e+03 -2.7284948e+03 2.6401308e+02 - 2.2515485e+03 -2.6756266e+03 2.8738955e+02 - 2.2758685e+03 -2.6151043e+03 3.0935442e+02 - 2.3021253e+03 -2.5471492e+03 3.3005444e+02 - 2.3298988e+03 -2.4719680e+03 3.4959779e+02 - 2.3587975e+03 -2.3897588e+03 3.6806396e+02 - 2.3884530e+03 -2.3007160e+03 3.8551055e+02 - 2.4185165e+03 -2.2050354e+03 4.0197815e+02 - 2.4486561e+03 -2.1029190e+03 4.1749381e+02 - 2.4785543e+03 -1.9945802e+03 4.3207370e+02 - 2.5079074e+03 -1.8802481e+03 4.4572510e+02 - 2.5364237e+03 -1.7601717e+03 4.5844809e+02 - 2.5638246e+03 -1.6346237e+03 4.7023695e+02 - 2.5898442e+03 -1.5039039e+03 4.8108136e+02 - 2.6142304e+03 -1.3683416e+03 4.9096756e+02 - 2.6367467e+03 -1.2282975e+03 4.9987937e+02 - 2.6571734e+03 -1.0841642e+03 5.0779920e+02 - 2.6753098e+03 -9.3636675e+02 5.1470899e+02 - 2.6909763e+03 -7.8536107e+02 5.2059107e+02 - 2.7040163e+03 -6.3163209e+02 5.2542895e+02 - 2.7142986e+03 -4.7569065e+02 5.2920811e+02 - 2.7217190e+03 -3.1806952e+02 5.3191652e+02 - 2.7262019e+03 -1.5931869e+02 5.3354526e+02 - 2.7277013e+03 0.0000000e+00 5.3408879e+02 - 2.7372510e+03 2.4067136e-09 4.4599780e+02 - 2.7357199e+03 1.6051159e+02 4.4554680e+02 - 2.7311424e+03 3.2044931e+02 4.4419548e+02 - 2.7235649e+03 4.7924548e+02 4.4194884e+02 - 2.7130640e+03 6.3634457e+02 4.3881499e+02 - 2.6997451e+03 7.9120871e+02 4.3480489e+02 - 2.6837410e+03 9.4332258e+02 4.2993188e+02 - 2.6652099e+03 1.0921974e+03 4.2421126e+02 - 2.6443332e+03 1.2373742e+03 4.1765965e+02 - 2.6213132e+03 1.3784258e+03 4.1029440e+02 - 2.5963712e+03 1.5149580e+03 4.0213292e+02 - 2.5697452e+03 1.6466096e+03 3.9319197e+02 - 2.5416881e+03 1.7730516e+03 3.8348696e+02 - 2.5124662e+03 1.8939854e+03 3.7303122e+02 - 2.4823583e+03 2.0091401e+03 3.6183527e+02 - 2.4516548e+03 2.1182697e+03 3.4990605e+02 - 2.4206578e+03 2.2211486e+03 3.3724611e+02 - 2.3896816e+03 2.3175684e+03 3.2385269e+02 - 2.3590535e+03 2.4073326e+03 3.0971668e+02 - 2.3291158e+03 2.4902528e+03 2.9482123e+02 - 2.3002276e+03 2.5661439e+03 2.7914002e+02 - 2.2727678e+03 2.6348199e+03 2.6263477e+02 - 2.2471387e+03 2.6960901e+03 2.4525165e+02 - 2.2237692e+03 2.7497553e+03 2.2691598e+02 - 2.2031203e+03 2.7956048e+03 2.0752416e+02 - 2.1856902e+03 2.8334133e+03 1.8693124e+02 - 2.1720220e+03 2.8629374e+03 1.6493148e+02 - 2.1627144e+03 2.8839097e+03 1.4122771e+02 - 2.1584386e+03 2.8960283e+03 1.1538263e+02 - 2.1599687e+03 2.8989344e+03 8.6741981e+01 - 2.1682346e+03 2.8921682e+03 5.4315758e+01 - 2.1844161e+03 2.8750862e+03 1.6608919e+01 - 2.2100864e+03 2.8467321e+03 -2.8561983e+01 - 2.2473294e+03 2.8057371e+03 -8.4027770e+01 - 2.2983460e+03 2.7507234e+03 -1.5211802e+02 - 2.3629615e+03 2.6827522e+03 -2.3050631e+02 - 2.4326495e+03 2.6110706e+03 -3.0590147e+02 - 2.4891882e+03 2.5540416e+03 -3.5892004e+02 - 2.5196359e+03 2.5240537e+03 -3.8415150e+02 - 2.5269909e+03 2.5173342e+03 -3.9210929e+02 - 2.5222985e+03 2.5222985e+03 -3.9351674e+02 - 2.5173342e+03 2.5269909e+03 -3.9210929e+02 - 2.5240537e+03 2.5196359e+03 -3.8415150e+02 - 2.5540416e+03 2.4891882e+03 -3.5892004e+02 - 2.6110706e+03 2.4326495e+03 -3.0590147e+02 - 2.6827522e+03 2.3629615e+03 -2.3050631e+02 - 2.7507234e+03 2.2983460e+03 -1.5211802e+02 - 2.8057371e+03 2.2473294e+03 -8.4027770e+01 - 2.8467321e+03 2.2100864e+03 -2.8561983e+01 - 2.8750862e+03 2.1844161e+03 1.6608919e+01 - 2.8921682e+03 2.1682346e+03 5.4315758e+01 - 2.8989344e+03 2.1599687e+03 8.6741981e+01 - 2.8960283e+03 2.1584386e+03 1.1538263e+02 - 2.8839097e+03 2.1627144e+03 1.4122771e+02 - 2.8629374e+03 2.1720220e+03 1.6493148e+02 - 2.8334133e+03 2.1856902e+03 1.8693124e+02 - 2.7956048e+03 2.2031203e+03 2.0752416e+02 - 2.7497553e+03 2.2237692e+03 2.2691598e+02 - 2.6960901e+03 2.2471387e+03 2.4525165e+02 - 2.6348199e+03 2.2727678e+03 2.6263477e+02 - 2.5661439e+03 2.3002276e+03 2.7914002e+02 - 2.4902528e+03 2.3291158e+03 2.9482123e+02 - 2.4073326e+03 2.3590535e+03 3.0971668e+02 - 2.3175684e+03 2.3896816e+03 3.2385269e+02 - 2.2211486e+03 2.4206578e+03 3.3724611e+02 - 2.1182697e+03 2.4516548e+03 3.4990605e+02 - 2.0091401e+03 2.4823583e+03 3.6183527e+02 - 1.8939854e+03 2.5124662e+03 3.7303122e+02 - 1.7730516e+03 2.5416881e+03 3.8348696e+02 - 1.6466096e+03 2.5697452e+03 3.9319197e+02 - 1.5149580e+03 2.5963712e+03 4.0213292e+02 - 1.3784258e+03 2.6213132e+03 4.1029440e+02 - 1.2373742e+03 2.6443332e+03 4.1765965e+02 - 1.0921974e+03 2.6652099e+03 4.2421126e+02 - 9.4332258e+02 2.6837410e+03 4.2993188e+02 - 7.9120871e+02 2.6997451e+03 4.3480489e+02 - 6.3634457e+02 2.7130640e+03 4.3881499e+02 - 4.7924548e+02 2.7235649e+03 4.4194884e+02 - 3.2044931e+02 2.7311424e+03 4.4419548e+02 - 1.6051159e+02 2.7357199e+03 4.4554680e+02 - 7.2201409e-09 2.7372510e+03 4.4599780e+02 - -1.6051159e+02 2.7357199e+03 4.4554680e+02 - -3.2044931e+02 2.7311424e+03 4.4419548e+02 - -4.7924548e+02 2.7235649e+03 4.4194884e+02 - -6.3634457e+02 2.7130640e+03 4.3881499e+02 - -7.9120871e+02 2.6997451e+03 4.3480489e+02 - -9.4332258e+02 2.6837410e+03 4.2993188e+02 - -1.0921974e+03 2.6652099e+03 4.2421126e+02 - -1.2373742e+03 2.6443332e+03 4.1765965e+02 - -1.3784258e+03 2.6213132e+03 4.1029440e+02 - -1.5149580e+03 2.5963712e+03 4.0213292e+02 - -1.6466096e+03 2.5697452e+03 3.9319197e+02 - -1.7730516e+03 2.5416881e+03 3.8348696e+02 - -1.8939854e+03 2.5124662e+03 3.7303122e+02 - -2.0091401e+03 2.4823583e+03 3.6183527e+02 - -2.1182697e+03 2.4516548e+03 3.4990605e+02 - -2.2211486e+03 2.4206578e+03 3.3724611e+02 - -2.3175684e+03 2.3896816e+03 3.2385269e+02 - -2.4073326e+03 2.3590535e+03 3.0971668e+02 - -2.4902528e+03 2.3291158e+03 2.9482123e+02 - -2.5661439e+03 2.3002276e+03 2.7914002e+02 - -2.6348199e+03 2.2727678e+03 2.6263477e+02 - -2.6960901e+03 2.2471387e+03 2.4525165e+02 - -2.7497553e+03 2.2237692e+03 2.2691598e+02 - -2.7956048e+03 2.2031203e+03 2.0752416e+02 - -2.8334133e+03 2.1856902e+03 1.8693124e+02 - -2.8629374e+03 2.1720220e+03 1.6493148e+02 - -2.8839097e+03 2.1627144e+03 1.4122771e+02 - -2.8960283e+03 2.1584386e+03 1.1538263e+02 - -2.8989344e+03 2.1599687e+03 8.6741981e+01 - -2.8921682e+03 2.1682346e+03 5.4315758e+01 - -2.8750862e+03 2.1844161e+03 1.6608919e+01 - -2.8467321e+03 2.2100864e+03 -2.8561983e+01 - -2.8057371e+03 2.2473294e+03 -8.4027770e+01 - -2.7507234e+03 2.2983460e+03 -1.5211802e+02 - -2.6827522e+03 2.3629615e+03 -2.3050631e+02 - -2.6110706e+03 2.4326495e+03 -3.0590147e+02 - -2.5540416e+03 2.4891882e+03 -3.5892004e+02 - -2.5240537e+03 2.5196359e+03 -3.8415150e+02 - -2.5173342e+03 2.5269909e+03 -3.9210929e+02 - -2.5222985e+03 2.5222985e+03 -3.9351674e+02 - -2.5269909e+03 2.5173342e+03 -3.9210929e+02 - -2.5196359e+03 2.5240537e+03 -3.8415150e+02 - -2.4891882e+03 2.5540416e+03 -3.5892004e+02 - -2.4326495e+03 2.6110706e+03 -3.0590147e+02 - -2.3629615e+03 2.6827522e+03 -2.3050631e+02 - -2.2983460e+03 2.7507234e+03 -1.5211802e+02 - -2.2473294e+03 2.8057371e+03 -8.4027770e+01 - -2.2100864e+03 2.8467321e+03 -2.8561983e+01 - -2.1844161e+03 2.8750862e+03 1.6608919e+01 - -2.1682346e+03 2.8921682e+03 5.4315758e+01 - -2.1599687e+03 2.8989344e+03 8.6741981e+01 - -2.1584386e+03 2.8960283e+03 1.1538263e+02 - -2.1627144e+03 2.8839097e+03 1.4122771e+02 - -2.1720220e+03 2.8629374e+03 1.6493148e+02 - -2.1856902e+03 2.8334133e+03 1.8693124e+02 - -2.2031203e+03 2.7956048e+03 2.0752416e+02 - -2.2237692e+03 2.7497553e+03 2.2691598e+02 - -2.2471387e+03 2.6960901e+03 2.4525165e+02 - -2.2727678e+03 2.6348199e+03 2.6263477e+02 - -2.3002276e+03 2.5661439e+03 2.7914002e+02 - -2.3291158e+03 2.4902528e+03 2.9482123e+02 - -2.3590535e+03 2.4073326e+03 3.0971668e+02 - -2.3896816e+03 2.3175684e+03 3.2385269e+02 - -2.4206578e+03 2.2211486e+03 3.3724611e+02 - -2.4516548e+03 2.1182697e+03 3.4990605e+02 - -2.4823583e+03 2.0091401e+03 3.6183527e+02 - -2.5124662e+03 1.8939854e+03 3.7303122e+02 - -2.5416881e+03 1.7730516e+03 3.8348696e+02 - -2.5697452e+03 1.6466096e+03 3.9319197e+02 - -2.5963712e+03 1.5149580e+03 4.0213292e+02 - -2.6213132e+03 1.3784258e+03 4.1029440e+02 - -2.6443332e+03 1.2373742e+03 4.1765965e+02 - -2.6652099e+03 1.0921974e+03 4.2421126e+02 - -2.6837410e+03 9.4332258e+02 4.2993188e+02 - -2.6997451e+03 7.9120871e+02 4.3480489e+02 - -2.7130640e+03 6.3634457e+02 4.3881499e+02 - -2.7235649e+03 4.7924548e+02 4.4194884e+02 - -2.7311424e+03 3.2044931e+02 4.4419548e+02 - -2.7357199e+03 1.6051159e+02 4.4554680e+02 - -2.7372510e+03 -2.4067136e-09 4.4599780e+02 - -2.7357199e+03 -1.6051159e+02 4.4554680e+02 - -2.7311424e+03 -3.2044931e+02 4.4419548e+02 - -2.7235649e+03 -4.7924548e+02 4.4194884e+02 - -2.7130640e+03 -6.3634457e+02 4.3881499e+02 - -2.6997451e+03 -7.9120871e+02 4.3480489e+02 - -2.6837410e+03 -9.4332258e+02 4.2993188e+02 - -2.6652099e+03 -1.0921974e+03 4.2421126e+02 - -2.6443332e+03 -1.2373742e+03 4.1765965e+02 - -2.6213132e+03 -1.3784258e+03 4.1029440e+02 - -2.5963712e+03 -1.5149580e+03 4.0213292e+02 - -2.5697452e+03 -1.6466096e+03 3.9319197e+02 - -2.5416881e+03 -1.7730516e+03 3.8348696e+02 - -2.5124662e+03 -1.8939854e+03 3.7303122e+02 - -2.4823583e+03 -2.0091401e+03 3.6183527e+02 - -2.4516548e+03 -2.1182697e+03 3.4990605e+02 - -2.4206578e+03 -2.2211486e+03 3.3724611e+02 - -2.3896816e+03 -2.3175684e+03 3.2385269e+02 - -2.3590535e+03 -2.4073326e+03 3.0971668e+02 - -2.3291158e+03 -2.4902528e+03 2.9482123e+02 - -2.3002276e+03 -2.5661439e+03 2.7914002e+02 - -2.2727678e+03 -2.6348199e+03 2.6263477e+02 - -2.2471387e+03 -2.6960901e+03 2.4525165e+02 - -2.2237692e+03 -2.7497553e+03 2.2691598e+02 - -2.2031203e+03 -2.7956048e+03 2.0752416e+02 - -2.1856902e+03 -2.8334133e+03 1.8693124e+02 - -2.1720220e+03 -2.8629374e+03 1.6493148e+02 - -2.1627144e+03 -2.8839097e+03 1.4122771e+02 - -2.1584386e+03 -2.8960283e+03 1.1538263e+02 - -2.1599687e+03 -2.8989344e+03 8.6741981e+01 - -2.1682346e+03 -2.8921682e+03 5.4315758e+01 - -2.1844161e+03 -2.8750862e+03 1.6608919e+01 - -2.2100864e+03 -2.8467321e+03 -2.8561983e+01 - -2.2473294e+03 -2.8057371e+03 -8.4027770e+01 - -2.2983460e+03 -2.7507234e+03 -1.5211802e+02 - -2.3629615e+03 -2.6827522e+03 -2.3050631e+02 - -2.4326495e+03 -2.6110706e+03 -3.0590147e+02 - -2.4891882e+03 -2.5540416e+03 -3.5892004e+02 - -2.5196359e+03 -2.5240537e+03 -3.8415150e+02 - -2.5269909e+03 -2.5173342e+03 -3.9210929e+02 - -2.5222985e+03 -2.5222985e+03 -3.9351674e+02 - -2.5173342e+03 -2.5269909e+03 -3.9210929e+02 - -2.5240537e+03 -2.5196359e+03 -3.8415150e+02 - -2.5540416e+03 -2.4891882e+03 -3.5892004e+02 - -2.6110706e+03 -2.4326495e+03 -3.0590147e+02 - -2.6827522e+03 -2.3629615e+03 -2.3050631e+02 - -2.7507234e+03 -2.2983460e+03 -1.5211802e+02 - -2.8057371e+03 -2.2473294e+03 -8.4027770e+01 - -2.8467321e+03 -2.2100864e+03 -2.8561983e+01 - -2.8750862e+03 -2.1844161e+03 1.6608919e+01 - -2.8921682e+03 -2.1682346e+03 5.4315758e+01 - -2.8989344e+03 -2.1599687e+03 8.6741981e+01 - -2.8960283e+03 -2.1584386e+03 1.1538263e+02 - -2.8839097e+03 -2.1627144e+03 1.4122771e+02 - -2.8629374e+03 -2.1720220e+03 1.6493148e+02 - -2.8334133e+03 -2.1856902e+03 1.8693124e+02 - -2.7956048e+03 -2.2031203e+03 2.0752416e+02 - -2.7497553e+03 -2.2237692e+03 2.2691598e+02 - -2.6960901e+03 -2.2471387e+03 2.4525165e+02 - -2.6348199e+03 -2.2727678e+03 2.6263477e+02 - -2.5661439e+03 -2.3002276e+03 2.7914002e+02 - -2.4902528e+03 -2.3291158e+03 2.9482123e+02 - -2.4073326e+03 -2.3590535e+03 3.0971668e+02 - -2.3175684e+03 -2.3896816e+03 3.2385269e+02 - -2.2211486e+03 -2.4206578e+03 3.3724611e+02 - -2.1182697e+03 -2.4516548e+03 3.4990605e+02 - -2.0091401e+03 -2.4823583e+03 3.6183527e+02 - -1.8939854e+03 -2.5124662e+03 3.7303122e+02 - -1.7730516e+03 -2.5416881e+03 3.8348696e+02 - -1.6466096e+03 -2.5697452e+03 3.9319197e+02 - -1.5149580e+03 -2.5963712e+03 4.0213292e+02 - -1.3784258e+03 -2.6213132e+03 4.1029440e+02 - -1.2373742e+03 -2.6443332e+03 4.1765965e+02 - -1.0921974e+03 -2.6652099e+03 4.2421126e+02 - -9.4332258e+02 -2.6837410e+03 4.2993188e+02 - -7.9120871e+02 -2.6997451e+03 4.3480489e+02 - -6.3634457e+02 -2.7130640e+03 4.3881499e+02 - -4.7924548e+02 -2.7235649e+03 4.4194884e+02 - -3.2044931e+02 -2.7311424e+03 4.4419548e+02 - -1.6051159e+02 -2.7357199e+03 4.4554680e+02 - 2.4067136e-09 -2.7372510e+03 4.4599780e+02 - 1.6051159e+02 -2.7357199e+03 4.4554680e+02 - 3.2044931e+02 -2.7311424e+03 4.4419548e+02 - 4.7924548e+02 -2.7235649e+03 4.4194884e+02 - 6.3634457e+02 -2.7130640e+03 4.3881499e+02 - 7.9120871e+02 -2.6997451e+03 4.3480489e+02 - 9.4332258e+02 -2.6837410e+03 4.2993188e+02 - 1.0921974e+03 -2.6652099e+03 4.2421126e+02 - 1.2373742e+03 -2.6443332e+03 4.1765965e+02 - 1.3784258e+03 -2.6213132e+03 4.1029440e+02 - 1.5149580e+03 -2.5963712e+03 4.0213292e+02 - 1.6466096e+03 -2.5697452e+03 3.9319197e+02 - 1.7730516e+03 -2.5416881e+03 3.8348696e+02 - 1.8939854e+03 -2.5124662e+03 3.7303122e+02 - 2.0091401e+03 -2.4823583e+03 3.6183527e+02 - 2.1182697e+03 -2.4516548e+03 3.4990605e+02 - 2.2211486e+03 -2.4206578e+03 3.3724611e+02 - 2.3175684e+03 -2.3896816e+03 3.2385269e+02 - 2.4073326e+03 -2.3590535e+03 3.0971668e+02 - 2.4902528e+03 -2.3291158e+03 2.9482123e+02 - 2.5661439e+03 -2.3002276e+03 2.7914002e+02 - 2.6348199e+03 -2.2727678e+03 2.6263477e+02 - 2.6960901e+03 -2.2471387e+03 2.4525165e+02 - 2.7497553e+03 -2.2237692e+03 2.2691598e+02 - 2.7956048e+03 -2.2031203e+03 2.0752416e+02 - 2.8334133e+03 -2.1856902e+03 1.8693124e+02 - 2.8629374e+03 -2.1720220e+03 1.6493148e+02 - 2.8839097e+03 -2.1627144e+03 1.4122771e+02 - 2.8960283e+03 -2.1584386e+03 1.1538263e+02 - 2.8989344e+03 -2.1599687e+03 8.6741981e+01 - 2.8921682e+03 -2.1682346e+03 5.4315758e+01 - 2.8750862e+03 -2.1844161e+03 1.6608919e+01 - 2.8467321e+03 -2.2100864e+03 -2.8561983e+01 - 2.8057371e+03 -2.2473294e+03 -8.4027770e+01 - 2.7507234e+03 -2.2983460e+03 -1.5211802e+02 - 2.6827522e+03 -2.3629615e+03 -2.3050631e+02 - 2.6110706e+03 -2.4326495e+03 -3.0590147e+02 - 2.5540416e+03 -2.4891882e+03 -3.5892004e+02 - 2.5240537e+03 -2.5196359e+03 -3.8415150e+02 - 2.5173342e+03 -2.5269909e+03 -3.9210929e+02 - 2.5222985e+03 -2.5222985e+03 -3.9351674e+02 - 2.5269909e+03 -2.5173342e+03 -3.9210929e+02 - 2.5196359e+03 -2.5240537e+03 -3.8415150e+02 - 2.4891882e+03 -2.5540416e+03 -3.5892004e+02 - 2.4326495e+03 -2.6110706e+03 -3.0590147e+02 - 2.3629615e+03 -2.6827522e+03 -2.3050631e+02 - 2.2983460e+03 -2.7507234e+03 -1.5211802e+02 - 2.2473294e+03 -2.8057371e+03 -8.4027770e+01 - 2.2100864e+03 -2.8467321e+03 -2.8561983e+01 - 2.1844161e+03 -2.8750862e+03 1.6608919e+01 - 2.1682346e+03 -2.8921682e+03 5.4315758e+01 - 2.1599687e+03 -2.8989344e+03 8.6741981e+01 - 2.1584386e+03 -2.8960283e+03 1.1538263e+02 - 2.1627144e+03 -2.8839097e+03 1.4122771e+02 - 2.1720220e+03 -2.8629374e+03 1.6493148e+02 - 2.1856902e+03 -2.8334133e+03 1.8693124e+02 - 2.2031203e+03 -2.7956048e+03 2.0752416e+02 - 2.2237692e+03 -2.7497553e+03 2.2691598e+02 - 2.2471387e+03 -2.6960901e+03 2.4525165e+02 - 2.2727678e+03 -2.6348199e+03 2.6263477e+02 - 2.3002276e+03 -2.5661439e+03 2.7914002e+02 - 2.3291158e+03 -2.4902528e+03 2.9482123e+02 - 2.3590535e+03 -2.4073326e+03 3.0971668e+02 - 2.3896816e+03 -2.3175684e+03 3.2385269e+02 - 2.4206578e+03 -2.2211486e+03 3.3724611e+02 - 2.4516548e+03 -2.1182697e+03 3.4990605e+02 - 2.4823583e+03 -2.0091401e+03 3.6183527e+02 - 2.5124662e+03 -1.8939854e+03 3.7303122e+02 - 2.5416881e+03 -1.7730516e+03 3.8348696e+02 - 2.5697452e+03 -1.6466096e+03 3.9319197e+02 - 2.5963712e+03 -1.5149580e+03 4.0213292e+02 - 2.6213132e+03 -1.3784258e+03 4.1029440e+02 - 2.6443332e+03 -1.2373742e+03 4.1765965e+02 - 2.6652099e+03 -1.0921974e+03 4.2421126e+02 - 2.6837410e+03 -9.4332258e+02 4.2993188e+02 - 2.6997451e+03 -7.9120871e+02 4.3480489e+02 - 2.7130640e+03 -6.3634457e+02 4.3881499e+02 - 2.7235649e+03 -4.7924548e+02 4.4194884e+02 - 2.7311424e+03 -3.2044931e+02 4.4419548e+02 - 2.7357199e+03 -1.6051159e+02 4.4554680e+02 - 2.7372510e+03 -2.4067136e-09 4.4599780e+02 - 2.7450986e+03 -2.4067136e-09 3.5740604e+02 - 2.7435420e+03 1.6148199e+02 3.5704641e+02 - 2.7388877e+03 3.2238502e+02 3.5596898e+02 - 2.7311829e+03 4.8213641e+02 3.5417799e+02 - 2.7205048e+03 6.4017594e+02 3.5168037e+02 - 2.7069603e+03 7.9596140e+02 3.4848547e+02 - 2.6906833e+03 9.4897357e+02 3.4460479e+02 - 2.6718336e+03 1.0987204e+03 3.4005155e+02 - 2.6505942e+03 1.2447400e+03 3.3484026e+02 - 2.6271691e+03 1.3866033e+03 3.2898628e+02 - 2.6017811e+03 1.5239145e+03 3.2250529e+02 - 2.5746698e+03 1.6563117e+03 3.1541281e+02 - 2.5460893e+03 1.7834656e+03 3.0772368e+02 - 2.5163070e+03 1.9050782e+03 2.9945160e+02 - 2.4856021e+03 2.0208795e+03 2.9060863e+02 - 2.4542654e+03 2.1306247e+03 2.8120481e+02 - 2.4225985e+03 2.2340907e+03 2.7124769e+02 - 2.3909147e+03 2.3310711e+03 2.6074191e+02 - 2.3595396e+03 2.4213726e+03 2.4968877e+02 - 2.3288125e+03 2.5048105e+03 2.3808572e+02 - 2.2990886e+03 2.5812040e+03 2.2592568e+02 - 2.2707410e+03 2.6503728e+03 2.1319611e+02 - 2.2441635e+03 2.7121339e+03 1.9987766e+02 - 2.2197733e+03 2.7662985e+03 1.8594196e+02 - 2.1980138e+03 2.8126711e+03 1.7134815e+02 - 2.1793578e+03 2.8510489e+03 1.5603723e+02 - 2.1643091e+03 2.8812233e+03 1.3992270e+02 - 2.1534061e+03 2.9029817e+03 1.2287507e+02 - 2.1472250e+03 2.9161093e+03 1.0469564e+02 - 2.1463877e+03 2.9203882e+03 8.5071963e+01 - 2.1515789e+03 2.9155865e+03 6.3500742e+01 - 2.1635880e+03 2.9014239e+03 3.9153738e+01 - 2.1834044e+03 2.8774846e+03 1.0646729e+01 - 2.2124181e+03 2.8430260e+03 -2.4329314e+01 - 2.2527669e+03 2.7966498e+03 -6.9416525e+01 - 2.3074596e+03 2.7362017e+03 -1.2905509e+02 - 2.3776481e+03 2.6614815e+03 -2.0301772e+02 - 2.4517235e+03 2.5848577e+03 -2.7344104e+02 - 2.5026935e+03 2.5332167e+03 -3.1368894e+02 - 2.5201228e+03 2.5160029e+03 -3.2564311e+02 - 2.5181526e+03 2.5181526e+03 -3.2717421e+02 - 2.5160029e+03 2.5201228e+03 -3.2564311e+02 - 2.5332167e+03 2.5026935e+03 -3.1368894e+02 - 2.5848577e+03 2.4517235e+03 -2.7344104e+02 - 2.6614815e+03 2.3776481e+03 -2.0301772e+02 - 2.7362017e+03 2.3074596e+03 -1.2905509e+02 - 2.7966498e+03 2.2527669e+03 -6.9416525e+01 - 2.8430260e+03 2.2124181e+03 -2.4329314e+01 - 2.8774846e+03 2.1834044e+03 1.0646729e+01 - 2.9014239e+03 2.1635880e+03 3.9153738e+01 - 2.9155865e+03 2.1515789e+03 6.3500742e+01 - 2.9203882e+03 2.1463877e+03 8.5071963e+01 - 2.9161093e+03 2.1472250e+03 1.0469564e+02 - 2.9029817e+03 2.1534061e+03 1.2287507e+02 - 2.8812233e+03 2.1643091e+03 1.3992270e+02 - 2.8510489e+03 2.1793578e+03 1.5603723e+02 - 2.8126711e+03 2.1980138e+03 1.7134815e+02 - 2.7662985e+03 2.2197733e+03 1.8594196e+02 - 2.7121339e+03 2.2441635e+03 1.9987766e+02 - 2.6503728e+03 2.2707410e+03 2.1319611e+02 - 2.5812040e+03 2.2990886e+03 2.2592568e+02 - 2.5048105e+03 2.3288125e+03 2.3808572e+02 - 2.4213726e+03 2.3595396e+03 2.4968877e+02 - 2.3310711e+03 2.3909147e+03 2.6074191e+02 - 2.2340907e+03 2.4225985e+03 2.7124769e+02 - 2.1306247e+03 2.4542654e+03 2.8120481e+02 - 2.0208795e+03 2.4856021e+03 2.9060863e+02 - 1.9050782e+03 2.5163070e+03 2.9945160e+02 - 1.7834656e+03 2.5460893e+03 3.0772368e+02 - 1.6563117e+03 2.5746698e+03 3.1541281e+02 - 1.5239145e+03 2.6017811e+03 3.2250529e+02 - 1.3866033e+03 2.6271691e+03 3.2898628e+02 - 1.2447400e+03 2.6505942e+03 3.3484026e+02 - 1.0987204e+03 2.6718336e+03 3.4005155e+02 - 9.4897357e+02 2.6906833e+03 3.4460479e+02 - 7.9596140e+02 2.7069603e+03 3.4848547e+02 - 6.4017594e+02 2.7205048e+03 3.5168037e+02 - 4.8213641e+02 2.7311829e+03 3.5417799e+02 - 3.2238502e+02 2.7388877e+03 3.5596898e+02 - 1.6148199e+02 2.7435420e+03 3.5704641e+02 - 0.0000000e+00 2.7450986e+03 3.5740604e+02 - -1.6148199e+02 2.7435420e+03 3.5704641e+02 - -3.2238502e+02 2.7388877e+03 3.5596898e+02 - -4.8213641e+02 2.7311829e+03 3.5417799e+02 - -6.4017594e+02 2.7205048e+03 3.5168037e+02 - -7.9596140e+02 2.7069603e+03 3.4848547e+02 - -9.4897357e+02 2.6906833e+03 3.4460479e+02 - -1.0987204e+03 2.6718336e+03 3.4005155e+02 - -1.2447400e+03 2.6505942e+03 3.3484026e+02 - -1.3866033e+03 2.6271691e+03 3.2898628e+02 - -1.5239145e+03 2.6017811e+03 3.2250529e+02 - -1.6563117e+03 2.5746698e+03 3.1541281e+02 - -1.7834656e+03 2.5460893e+03 3.0772368e+02 - -1.9050782e+03 2.5163070e+03 2.9945160e+02 - -2.0208795e+03 2.4856021e+03 2.9060863e+02 - -2.1306247e+03 2.4542654e+03 2.8120481e+02 - -2.2340907e+03 2.4225985e+03 2.7124769e+02 - -2.3310711e+03 2.3909147e+03 2.6074191e+02 - -2.4213726e+03 2.3595396e+03 2.4968877e+02 - -2.5048105e+03 2.3288125e+03 2.3808572e+02 - -2.5812040e+03 2.2990886e+03 2.2592568e+02 - -2.6503728e+03 2.2707410e+03 2.1319611e+02 - -2.7121339e+03 2.2441635e+03 1.9987766e+02 - -2.7662985e+03 2.2197733e+03 1.8594196e+02 - -2.8126711e+03 2.1980138e+03 1.7134815e+02 - -2.8510489e+03 2.1793578e+03 1.5603723e+02 - -2.8812233e+03 2.1643091e+03 1.3992270e+02 - -2.9029817e+03 2.1534061e+03 1.2287507e+02 - -2.9161093e+03 2.1472250e+03 1.0469564e+02 - -2.9203882e+03 2.1463877e+03 8.5071963e+01 - -2.9155865e+03 2.1515789e+03 6.3500742e+01 - -2.9014239e+03 2.1635880e+03 3.9153738e+01 - -2.8774846e+03 2.1834044e+03 1.0646729e+01 - -2.8430260e+03 2.2124181e+03 -2.4329314e+01 - -2.7966498e+03 2.2527669e+03 -6.9416525e+01 - -2.7362017e+03 2.3074596e+03 -1.2905509e+02 - -2.6614815e+03 2.3776481e+03 -2.0301772e+02 - -2.5848577e+03 2.4517235e+03 -2.7344104e+02 - -2.5332167e+03 2.5026935e+03 -3.1368894e+02 - -2.5160029e+03 2.5201228e+03 -3.2564311e+02 - -2.5181526e+03 2.5181526e+03 -3.2717421e+02 - -2.5201228e+03 2.5160029e+03 -3.2564311e+02 - -2.5026935e+03 2.5332167e+03 -3.1368894e+02 - -2.4517235e+03 2.5848577e+03 -2.7344104e+02 - -2.3776481e+03 2.6614815e+03 -2.0301772e+02 - -2.3074596e+03 2.7362017e+03 -1.2905509e+02 - -2.2527669e+03 2.7966498e+03 -6.9416525e+01 - -2.2124181e+03 2.8430260e+03 -2.4329314e+01 - -2.1834044e+03 2.8774846e+03 1.0646729e+01 - -2.1635880e+03 2.9014239e+03 3.9153738e+01 - -2.1515789e+03 2.9155865e+03 6.3500742e+01 - -2.1463877e+03 2.9203882e+03 8.5071963e+01 - -2.1472250e+03 2.9161093e+03 1.0469564e+02 - -2.1534061e+03 2.9029817e+03 1.2287507e+02 - -2.1643091e+03 2.8812233e+03 1.3992270e+02 - -2.1793578e+03 2.8510489e+03 1.5603723e+02 - -2.1980138e+03 2.8126711e+03 1.7134815e+02 - -2.2197733e+03 2.7662985e+03 1.8594196e+02 - -2.2441635e+03 2.7121339e+03 1.9987766e+02 - -2.2707410e+03 2.6503728e+03 2.1319611e+02 - -2.2990886e+03 2.5812040e+03 2.2592568e+02 - -2.3288125e+03 2.5048105e+03 2.3808572e+02 - -2.3595396e+03 2.4213726e+03 2.4968877e+02 - -2.3909147e+03 2.3310711e+03 2.6074191e+02 - -2.4225985e+03 2.2340907e+03 2.7124769e+02 - -2.4542654e+03 2.1306247e+03 2.8120481e+02 - -2.4856021e+03 2.0208795e+03 2.9060863e+02 - -2.5163070e+03 1.9050782e+03 2.9945160e+02 - -2.5460893e+03 1.7834656e+03 3.0772368e+02 - -2.5746698e+03 1.6563117e+03 3.1541281e+02 - -2.6017811e+03 1.5239145e+03 3.2250529e+02 - -2.6271691e+03 1.3866033e+03 3.2898628e+02 - -2.6505942e+03 1.2447400e+03 3.3484026e+02 - -2.6718336e+03 1.0987204e+03 3.4005155e+02 - -2.6906833e+03 9.4897357e+02 3.4460479e+02 - -2.7069603e+03 7.9596140e+02 3.4848547e+02 - -2.7205048e+03 6.4017594e+02 3.5168037e+02 - -2.7311829e+03 4.8213641e+02 3.5417799e+02 - -2.7388877e+03 3.2238502e+02 3.5596898e+02 - -2.7435420e+03 1.6148199e+02 3.5704641e+02 - -2.7450986e+03 0.0000000e+00 3.5740604e+02 - -2.7435420e+03 -1.6148199e+02 3.5704641e+02 - -2.7388877e+03 -3.2238502e+02 3.5596898e+02 - -2.7311829e+03 -4.8213641e+02 3.5417799e+02 - -2.7205048e+03 -6.4017594e+02 3.5168037e+02 - -2.7069603e+03 -7.9596140e+02 3.4848547e+02 - -2.6906833e+03 -9.4897357e+02 3.4460479e+02 - -2.6718336e+03 -1.0987204e+03 3.4005155e+02 - -2.6505942e+03 -1.2447400e+03 3.3484026e+02 - -2.6271691e+03 -1.3866033e+03 3.2898628e+02 - -2.6017811e+03 -1.5239145e+03 3.2250529e+02 - -2.5746698e+03 -1.6563117e+03 3.1541281e+02 - -2.5460893e+03 -1.7834656e+03 3.0772368e+02 - -2.5163070e+03 -1.9050782e+03 2.9945160e+02 - -2.4856021e+03 -2.0208795e+03 2.9060863e+02 - -2.4542654e+03 -2.1306247e+03 2.8120481e+02 - -2.4225985e+03 -2.2340907e+03 2.7124769e+02 - -2.3909147e+03 -2.3310711e+03 2.6074191e+02 - -2.3595396e+03 -2.4213726e+03 2.4968877e+02 - -2.3288125e+03 -2.5048105e+03 2.3808572e+02 - -2.2990886e+03 -2.5812040e+03 2.2592568e+02 - -2.2707410e+03 -2.6503728e+03 2.1319611e+02 - -2.2441635e+03 -2.7121339e+03 1.9987766e+02 - -2.2197733e+03 -2.7662985e+03 1.8594196e+02 - -2.1980138e+03 -2.8126711e+03 1.7134815e+02 - -2.1793578e+03 -2.8510489e+03 1.5603723e+02 - -2.1643091e+03 -2.8812233e+03 1.3992270e+02 - -2.1534061e+03 -2.9029817e+03 1.2287507e+02 - -2.1472250e+03 -2.9161093e+03 1.0469564e+02 - -2.1463877e+03 -2.9203882e+03 8.5071963e+01 - -2.1515789e+03 -2.9155865e+03 6.3500742e+01 - -2.1635880e+03 -2.9014239e+03 3.9153738e+01 - -2.1834044e+03 -2.8774846e+03 1.0646729e+01 - -2.2124181e+03 -2.8430260e+03 -2.4329314e+01 - -2.2527669e+03 -2.7966498e+03 -6.9416525e+01 - -2.3074596e+03 -2.7362017e+03 -1.2905509e+02 - -2.3776481e+03 -2.6614815e+03 -2.0301772e+02 - -2.4517235e+03 -2.5848577e+03 -2.7344104e+02 - -2.5026935e+03 -2.5332167e+03 -3.1368894e+02 - -2.5201228e+03 -2.5160029e+03 -3.2564311e+02 - -2.5181526e+03 -2.5181526e+03 -3.2717421e+02 - -2.5160029e+03 -2.5201228e+03 -3.2564311e+02 - -2.5332167e+03 -2.5026935e+03 -3.1368894e+02 - -2.5848577e+03 -2.4517235e+03 -2.7344104e+02 - -2.6614815e+03 -2.3776481e+03 -2.0301772e+02 - -2.7362017e+03 -2.3074596e+03 -1.2905509e+02 - -2.7966498e+03 -2.2527669e+03 -6.9416525e+01 - -2.8430260e+03 -2.2124181e+03 -2.4329314e+01 - -2.8774846e+03 -2.1834044e+03 1.0646729e+01 - -2.9014239e+03 -2.1635880e+03 3.9153738e+01 - -2.9155865e+03 -2.1515789e+03 6.3500742e+01 - -2.9203882e+03 -2.1463877e+03 8.5071963e+01 - -2.9161093e+03 -2.1472250e+03 1.0469564e+02 - -2.9029817e+03 -2.1534061e+03 1.2287507e+02 - -2.8812233e+03 -2.1643091e+03 1.3992270e+02 - -2.8510489e+03 -2.1793578e+03 1.5603723e+02 - -2.8126711e+03 -2.1980138e+03 1.7134815e+02 - -2.7662985e+03 -2.2197733e+03 1.8594196e+02 - -2.7121339e+03 -2.2441635e+03 1.9987766e+02 - -2.6503728e+03 -2.2707410e+03 2.1319611e+02 - -2.5812040e+03 -2.2990886e+03 2.2592568e+02 - -2.5048105e+03 -2.3288125e+03 2.3808572e+02 - -2.4213726e+03 -2.3595396e+03 2.4968877e+02 - -2.3310711e+03 -2.3909147e+03 2.6074191e+02 - -2.2340907e+03 -2.4225985e+03 2.7124769e+02 - -2.1306247e+03 -2.4542654e+03 2.8120481e+02 - -2.0208795e+03 -2.4856021e+03 2.9060863e+02 - -1.9050782e+03 -2.5163070e+03 2.9945160e+02 - -1.7834656e+03 -2.5460893e+03 3.0772368e+02 - -1.6563117e+03 -2.5746698e+03 3.1541281e+02 - -1.5239145e+03 -2.6017811e+03 3.2250529e+02 - -1.3866033e+03 -2.6271691e+03 3.2898628e+02 - -1.2447400e+03 -2.6505942e+03 3.3484026e+02 - -1.0987204e+03 -2.6718336e+03 3.4005155e+02 - -9.4897357e+02 -2.6906833e+03 3.4460479e+02 - -7.9596140e+02 -2.7069603e+03 3.4848547e+02 - -6.4017594e+02 -2.7205048e+03 3.5168037e+02 - -4.8213641e+02 -2.7311829e+03 3.5417799e+02 - -3.2238502e+02 -2.7388877e+03 3.5596898e+02 - -1.6148199e+02 -2.7435420e+03 3.5704641e+02 - -4.8134273e-09 -2.7450986e+03 3.5740604e+02 - 1.6148199e+02 -2.7435420e+03 3.5704641e+02 - 3.2238502e+02 -2.7388877e+03 3.5596898e+02 - 4.8213641e+02 -2.7311829e+03 3.5417799e+02 - 6.4017594e+02 -2.7205048e+03 3.5168037e+02 - 7.9596140e+02 -2.7069603e+03 3.4848547e+02 - 9.4897357e+02 -2.6906833e+03 3.4460479e+02 - 1.0987204e+03 -2.6718336e+03 3.4005155e+02 - 1.2447400e+03 -2.6505942e+03 3.3484026e+02 - 1.3866033e+03 -2.6271691e+03 3.2898628e+02 - 1.5239145e+03 -2.6017811e+03 3.2250529e+02 - 1.6563117e+03 -2.5746698e+03 3.1541281e+02 - 1.7834656e+03 -2.5460893e+03 3.0772368e+02 - 1.9050782e+03 -2.5163070e+03 2.9945160e+02 - 2.0208795e+03 -2.4856021e+03 2.9060863e+02 - 2.1306247e+03 -2.4542654e+03 2.8120481e+02 - 2.2340907e+03 -2.4225985e+03 2.7124769e+02 - 2.3310711e+03 -2.3909147e+03 2.6074191e+02 - 2.4213726e+03 -2.3595396e+03 2.4968877e+02 - 2.5048105e+03 -2.3288125e+03 2.3808572e+02 - 2.5812040e+03 -2.2990886e+03 2.2592568e+02 - 2.6503728e+03 -2.2707410e+03 2.1319611e+02 - 2.7121339e+03 -2.2441635e+03 1.9987766e+02 - 2.7662985e+03 -2.2197733e+03 1.8594196e+02 - 2.8126711e+03 -2.1980138e+03 1.7134815e+02 - 2.8510489e+03 -2.1793578e+03 1.5603723e+02 - 2.8812233e+03 -2.1643091e+03 1.3992270e+02 - 2.9029817e+03 -2.1534061e+03 1.2287507e+02 - 2.9161093e+03 -2.1472250e+03 1.0469564e+02 - 2.9203882e+03 -2.1463877e+03 8.5071963e+01 - 2.9155865e+03 -2.1515789e+03 6.3500742e+01 - 2.9014239e+03 -2.1635880e+03 3.9153738e+01 - 2.8774846e+03 -2.1834044e+03 1.0646729e+01 - 2.8430260e+03 -2.2124181e+03 -2.4329314e+01 - 2.7966498e+03 -2.2527669e+03 -6.9416525e+01 - 2.7362017e+03 -2.3074596e+03 -1.2905509e+02 - 2.6614815e+03 -2.3776481e+03 -2.0301772e+02 - 2.5848577e+03 -2.4517235e+03 -2.7344104e+02 - 2.5332167e+03 -2.5026935e+03 -3.1368894e+02 - 2.5160029e+03 -2.5201228e+03 -3.2564311e+02 - 2.5181526e+03 -2.5181526e+03 -3.2717421e+02 - 2.5201228e+03 -2.5160029e+03 -3.2564311e+02 - 2.5026935e+03 -2.5332167e+03 -3.1368894e+02 - 2.4517235e+03 -2.5848577e+03 -2.7344104e+02 - 2.3776481e+03 -2.6614815e+03 -2.0301772e+02 - 2.3074596e+03 -2.7362017e+03 -1.2905509e+02 - 2.2527669e+03 -2.7966498e+03 -6.9416525e+01 - 2.2124181e+03 -2.8430260e+03 -2.4329314e+01 - 2.1834044e+03 -2.8774846e+03 1.0646729e+01 - 2.1635880e+03 -2.9014239e+03 3.9153738e+01 - 2.1515789e+03 -2.9155865e+03 6.3500742e+01 - 2.1463877e+03 -2.9203882e+03 8.5071963e+01 - 2.1472250e+03 -2.9161093e+03 1.0469564e+02 - 2.1534061e+03 -2.9029817e+03 1.2287507e+02 - 2.1643091e+03 -2.8812233e+03 1.3992270e+02 - 2.1793578e+03 -2.8510489e+03 1.5603723e+02 - 2.1980138e+03 -2.8126711e+03 1.7134815e+02 - 2.2197733e+03 -2.7662985e+03 1.8594196e+02 - 2.2441635e+03 -2.7121339e+03 1.9987766e+02 - 2.2707410e+03 -2.6503728e+03 2.1319611e+02 - 2.2990886e+03 -2.5812040e+03 2.2592568e+02 - 2.3288125e+03 -2.5048105e+03 2.3808572e+02 - 2.3595396e+03 -2.4213726e+03 2.4968877e+02 - 2.3909147e+03 -2.3310711e+03 2.6074191e+02 - 2.4225985e+03 -2.2340907e+03 2.7124769e+02 - 2.4542654e+03 -2.1306247e+03 2.8120481e+02 - 2.4856021e+03 -2.0208795e+03 2.9060863e+02 - 2.5163070e+03 -1.9050782e+03 2.9945160e+02 - 2.5460893e+03 -1.7834656e+03 3.0772368e+02 - 2.5746698e+03 -1.6563117e+03 3.1541281e+02 - 2.6017811e+03 -1.5239145e+03 3.2250529e+02 - 2.6271691e+03 -1.3866033e+03 3.2898628e+02 - 2.6505942e+03 -1.2447400e+03 3.3484026e+02 - 2.6718336e+03 -1.0987204e+03 3.4005155e+02 - 2.6906833e+03 -9.4897357e+02 3.4460479e+02 - 2.7069603e+03 -7.9596140e+02 3.4848547e+02 - 2.7205048e+03 -6.4017594e+02 3.5168037e+02 - 2.7311829e+03 -4.8213641e+02 3.5417799e+02 - 2.7388877e+03 -3.2238502e+02 3.5596898e+02 - 2.7435420e+03 -1.6148199e+02 3.5704641e+02 - 2.7450986e+03 -2.4067136e-09 3.5740604e+02 - 2.7512239e+03 4.8134273e-09 2.6841054e+02 - 2.7496474e+03 1.6223341e+02 2.6814147e+02 - 2.7449339e+03 3.2388377e+02 2.6733538e+02 - 2.7371307e+03 4.8437445e+02 2.6599562e+02 - 2.7263160e+03 6.4314142e+02 2.6412762e+02 - 2.7125974e+03 7.9963898e+02 2.6173875e+02 - 2.6961101e+03 9.5334478e+02 2.5883809e+02 - 2.6770151e+03 1.1037640e+03 2.5543612e+02 - 2.6554968e+03 1.2504326e+03 2.5154443e+02 - 2.6317607e+03 1.3929196e+03 2.4717539e+02 - 2.6060312e+03 1.5308280e+03 2.4234177e+02 - 2.5785489e+03 1.6637949e+03 2.3705639e+02 - 2.5495694e+03 1.7914908e+03 2.3133184e+02 - 2.5193611e+03 1.9136176e+03 2.2518011e+02 - 2.4882044e+03 2.0299056e+03 2.1861235e+02 - 2.4563904e+03 2.1401109e+03 2.1163863e+02 - 2.4242214e+03 2.2440110e+03 2.0426776e+02 - 2.3920107e+03 2.3414008e+03 1.9650712e+02 - 2.3600838e+03 2.4320882e+03 1.8836261e+02 - 2.3287793e+03 2.5158898e+03 1.7983853e+02 - 2.2984514e+03 2.5926264e+03 1.7093755e+02 - 2.2694714e+03 2.6621198e+03 1.6166063e+02 - 2.2422305e+03 2.7241891e+03 1.5200685e+02 - 2.2171420e+03 2.7786488e+03 1.4197297e+02 - 2.1946434e+03 2.8253084e+03 1.3155266e+02 - 2.1751978e+03 2.8639732e+03 1.2073484e+02 - 2.1592943e+03 2.8944478e+03 1.0950068e+02 - 2.1474466e+03 2.9165417e+03 9.7818023e+01 - 2.1401898e+03 2.9300785e+03 8.5631302e+01 - 2.1380755e+03 2.9349062e+03 7.2843252e+01 - 2.1416666e+03 2.9309091e+03 5.9281348e+01 - 2.1515356e+03 2.9180128e+03 4.4634976e+01 - 2.1682812e+03 2.8961725e+03 2.8334254e+01 - 2.1925928e+03 2.8653088e+03 9.3083227e+00 - 2.2254491e+03 2.8251114e+03 -1.4506673e+01 - 2.2686438e+03 2.7745220e+03 -4.7111193e+01 - 2.3257869e+03 2.7107671e+03 -9.5440036e+01 - 2.4006029e+03 2.6310989e+03 -1.6398938e+02 - 2.4763669e+03 2.5530141e+03 -2.2759259e+02 - 2.5126083e+03 2.5163983e+03 -2.5073554e+02 - 2.5145464e+03 2.5145464e+03 -2.5291058e+02 - 2.5163983e+03 2.5126083e+03 -2.5073554e+02 - 2.5530141e+03 2.4763669e+03 -2.2759259e+02 - 2.6310989e+03 2.4006029e+03 -1.6398938e+02 - 2.7107671e+03 2.3257869e+03 -9.5440036e+01 - 2.7745220e+03 2.2686438e+03 -4.7111193e+01 - 2.8251114e+03 2.2254491e+03 -1.4506673e+01 - 2.8653088e+03 2.1925928e+03 9.3083227e+00 - 2.8961725e+03 2.1682812e+03 2.8334254e+01 - 2.9180128e+03 2.1515356e+03 4.4634976e+01 - 2.9309091e+03 2.1416666e+03 5.9281348e+01 - 2.9349062e+03 2.1380755e+03 7.2843252e+01 - 2.9300785e+03 2.1401898e+03 8.5631302e+01 - 2.9165417e+03 2.1474466e+03 9.7818023e+01 - 2.8944478e+03 2.1592943e+03 1.0950068e+02 - 2.8639732e+03 2.1751978e+03 1.2073484e+02 - 2.8253084e+03 2.1946434e+03 1.3155266e+02 - 2.7786488e+03 2.2171420e+03 1.4197297e+02 - 2.7241891e+03 2.2422305e+03 1.5200685e+02 - 2.6621198e+03 2.2694714e+03 1.6166063e+02 - 2.5926264e+03 2.2984514e+03 1.7093755e+02 - 2.5158898e+03 2.3287793e+03 1.7983853e+02 - 2.4320882e+03 2.3600838e+03 1.8836261e+02 - 2.3414008e+03 2.3920107e+03 1.9650712e+02 - 2.2440110e+03 2.4242214e+03 2.0426776e+02 - 2.1401109e+03 2.4563904e+03 2.1163863e+02 - 2.0299056e+03 2.4882044e+03 2.1861235e+02 - 1.9136176e+03 2.5193611e+03 2.2518011e+02 - 1.7914908e+03 2.5495694e+03 2.3133184e+02 - 1.6637949e+03 2.5785489e+03 2.3705639e+02 - 1.5308280e+03 2.6060312e+03 2.4234177e+02 - 1.3929196e+03 2.6317607e+03 2.4717539e+02 - 1.2504326e+03 2.6554968e+03 2.5154443e+02 - 1.1037640e+03 2.6770151e+03 2.5543612e+02 - 9.5334478e+02 2.6961101e+03 2.5883809e+02 - 7.9963898e+02 2.7125974e+03 2.6173875e+02 - 6.4314142e+02 2.7263160e+03 2.6412762e+02 - 4.8437445e+02 2.7371307e+03 2.6599562e+02 - 3.2388377e+02 2.7449339e+03 2.6733538e+02 - 1.6223341e+02 2.7496474e+03 2.6814147e+02 - 0.0000000e+00 2.7512239e+03 2.6841054e+02 - -1.6223341e+02 2.7496474e+03 2.6814147e+02 - -3.2388377e+02 2.7449339e+03 2.6733538e+02 - -4.8437445e+02 2.7371307e+03 2.6599562e+02 - -6.4314142e+02 2.7263160e+03 2.6412762e+02 - -7.9963898e+02 2.7125974e+03 2.6173875e+02 - -9.5334478e+02 2.6961101e+03 2.5883809e+02 - -1.1037640e+03 2.6770151e+03 2.5543612e+02 - -1.2504326e+03 2.6554968e+03 2.5154443e+02 - -1.3929196e+03 2.6317607e+03 2.4717539e+02 - -1.5308280e+03 2.6060312e+03 2.4234177e+02 - -1.6637949e+03 2.5785489e+03 2.3705639e+02 - -1.7914908e+03 2.5495694e+03 2.3133184e+02 - -1.9136176e+03 2.5193611e+03 2.2518011e+02 - -2.0299056e+03 2.4882044e+03 2.1861235e+02 - -2.1401109e+03 2.4563904e+03 2.1163863e+02 - -2.2440110e+03 2.4242214e+03 2.0426776e+02 - -2.3414008e+03 2.3920107e+03 1.9650712e+02 - -2.4320882e+03 2.3600838e+03 1.8836261e+02 - -2.5158898e+03 2.3287793e+03 1.7983853e+02 - -2.5926264e+03 2.2984514e+03 1.7093755e+02 - -2.6621198e+03 2.2694714e+03 1.6166063e+02 - -2.7241891e+03 2.2422305e+03 1.5200685e+02 - -2.7786488e+03 2.2171420e+03 1.4197297e+02 - -2.8253084e+03 2.1946434e+03 1.3155266e+02 - -2.8639732e+03 2.1751978e+03 1.2073484e+02 - -2.8944478e+03 2.1592943e+03 1.0950068e+02 - -2.9165417e+03 2.1474466e+03 9.7818023e+01 - -2.9300785e+03 2.1401898e+03 8.5631302e+01 - -2.9349062e+03 2.1380755e+03 7.2843252e+01 - -2.9309091e+03 2.1416666e+03 5.9281348e+01 - -2.9180128e+03 2.1515356e+03 4.4634976e+01 - -2.8961725e+03 2.1682812e+03 2.8334254e+01 - -2.8653088e+03 2.1925928e+03 9.3083227e+00 - -2.8251114e+03 2.2254491e+03 -1.4506674e+01 - -2.7745220e+03 2.2686438e+03 -4.7111193e+01 - -2.7107671e+03 2.3257869e+03 -9.5440036e+01 - -2.6310989e+03 2.4006029e+03 -1.6398938e+02 - -2.5530141e+03 2.4763669e+03 -2.2759259e+02 - -2.5163983e+03 2.5126083e+03 -2.5073554e+02 - -2.5145464e+03 2.5145464e+03 -2.5291058e+02 - -2.5126083e+03 2.5163983e+03 -2.5073554e+02 - -2.4763669e+03 2.5530141e+03 -2.2759259e+02 - -2.4006029e+03 2.6310989e+03 -1.6398938e+02 - -2.3257869e+03 2.7107671e+03 -9.5440036e+01 - -2.2686438e+03 2.7745220e+03 -4.7111193e+01 - -2.2254491e+03 2.8251114e+03 -1.4506673e+01 - -2.1925928e+03 2.8653088e+03 9.3083227e+00 - -2.1682812e+03 2.8961725e+03 2.8334254e+01 - -2.1515356e+03 2.9180128e+03 4.4634976e+01 - -2.1416666e+03 2.9309091e+03 5.9281348e+01 - -2.1380755e+03 2.9349062e+03 7.2843252e+01 - -2.1401898e+03 2.9300785e+03 8.5631302e+01 - -2.1474466e+03 2.9165417e+03 9.7818023e+01 - -2.1592943e+03 2.8944478e+03 1.0950068e+02 - -2.1751978e+03 2.8639732e+03 1.2073484e+02 - -2.1946434e+03 2.8253084e+03 1.3155266e+02 - -2.2171420e+03 2.7786488e+03 1.4197297e+02 - -2.2422305e+03 2.7241891e+03 1.5200685e+02 - -2.2694714e+03 2.6621198e+03 1.6166063e+02 - -2.2984514e+03 2.5926264e+03 1.7093755e+02 - -2.3287793e+03 2.5158898e+03 1.7983853e+02 - -2.3600838e+03 2.4320882e+03 1.8836261e+02 - -2.3920107e+03 2.3414008e+03 1.9650712e+02 - -2.4242214e+03 2.2440110e+03 2.0426776e+02 - -2.4563904e+03 2.1401109e+03 2.1163863e+02 - -2.4882044e+03 2.0299056e+03 2.1861235e+02 - -2.5193611e+03 1.9136176e+03 2.2518011e+02 - -2.5495694e+03 1.7914908e+03 2.3133184e+02 - -2.5785489e+03 1.6637949e+03 2.3705639e+02 - -2.6060312e+03 1.5308280e+03 2.4234177e+02 - -2.6317607e+03 1.3929196e+03 2.4717539e+02 - -2.6554968e+03 1.2504326e+03 2.5154443e+02 - -2.6770151e+03 1.1037640e+03 2.5543612e+02 - -2.6961101e+03 9.5334478e+02 2.5883809e+02 - -2.7125974e+03 7.9963898e+02 2.6173875e+02 - -2.7263160e+03 6.4314142e+02 2.6412762e+02 - -2.7371307e+03 4.8437445e+02 2.6599562e+02 - -2.7449339e+03 3.2388377e+02 2.6733538e+02 - -2.7496474e+03 1.6223341e+02 2.6814147e+02 - -2.7512239e+03 -2.4067136e-09 2.6841054e+02 - -2.7496474e+03 -1.6223341e+02 2.6814147e+02 - -2.7449339e+03 -3.2388377e+02 2.6733538e+02 - -2.7371307e+03 -4.8437445e+02 2.6599562e+02 - -2.7263160e+03 -6.4314142e+02 2.6412762e+02 - -2.7125974e+03 -7.9963898e+02 2.6173875e+02 - -2.6961101e+03 -9.5334478e+02 2.5883809e+02 - -2.6770151e+03 -1.1037640e+03 2.5543612e+02 - -2.6554968e+03 -1.2504326e+03 2.5154443e+02 - -2.6317607e+03 -1.3929196e+03 2.4717539e+02 - -2.6060312e+03 -1.5308280e+03 2.4234177e+02 - -2.5785489e+03 -1.6637949e+03 2.3705639e+02 - -2.5495694e+03 -1.7914908e+03 2.3133184e+02 - -2.5193611e+03 -1.9136176e+03 2.2518011e+02 - -2.4882044e+03 -2.0299056e+03 2.1861235e+02 - -2.4563904e+03 -2.1401109e+03 2.1163863e+02 - -2.4242214e+03 -2.2440110e+03 2.0426776e+02 - -2.3920107e+03 -2.3414008e+03 1.9650712e+02 - -2.3600838e+03 -2.4320882e+03 1.8836261e+02 - -2.3287793e+03 -2.5158898e+03 1.7983853e+02 - -2.2984514e+03 -2.5926264e+03 1.7093755e+02 - -2.2694714e+03 -2.6621198e+03 1.6166063e+02 - -2.2422305e+03 -2.7241891e+03 1.5200685e+02 - -2.2171420e+03 -2.7786488e+03 1.4197297e+02 - -2.1946434e+03 -2.8253084e+03 1.3155266e+02 - -2.1751978e+03 -2.8639732e+03 1.2073484e+02 - -2.1592943e+03 -2.8944478e+03 1.0950068e+02 - -2.1474466e+03 -2.9165417e+03 9.7818023e+01 - -2.1401898e+03 -2.9300785e+03 8.5631302e+01 - -2.1380755e+03 -2.9349062e+03 7.2843252e+01 - -2.1416666e+03 -2.9309091e+03 5.9281348e+01 - -2.1515356e+03 -2.9180128e+03 4.4634976e+01 - -2.1682812e+03 -2.8961725e+03 2.8334254e+01 - -2.1925928e+03 -2.8653088e+03 9.3083227e+00 - -2.2254491e+03 -2.8251114e+03 -1.4506673e+01 - -2.2686438e+03 -2.7745220e+03 -4.7111193e+01 - -2.3257869e+03 -2.7107671e+03 -9.5440036e+01 - -2.4006029e+03 -2.6310989e+03 -1.6398938e+02 - -2.4763669e+03 -2.5530141e+03 -2.2759259e+02 - -2.5126083e+03 -2.5163983e+03 -2.5073554e+02 - -2.5145464e+03 -2.5145464e+03 -2.5291058e+02 - -2.5163983e+03 -2.5126083e+03 -2.5073554e+02 - -2.5530141e+03 -2.4763669e+03 -2.2759259e+02 - -2.6310989e+03 -2.4006029e+03 -1.6398938e+02 - -2.7107671e+03 -2.3257869e+03 -9.5440036e+01 - -2.7745220e+03 -2.2686438e+03 -4.7111193e+01 - -2.8251114e+03 -2.2254491e+03 -1.4506673e+01 - -2.8653088e+03 -2.1925928e+03 9.3083227e+00 - -2.8961725e+03 -2.1682812e+03 2.8334254e+01 - -2.9180128e+03 -2.1515356e+03 4.4634976e+01 - -2.9309091e+03 -2.1416666e+03 5.9281348e+01 - -2.9349062e+03 -2.1380755e+03 7.2843252e+01 - -2.9300785e+03 -2.1401898e+03 8.5631302e+01 - -2.9165417e+03 -2.1474466e+03 9.7818023e+01 - -2.8944478e+03 -2.1592943e+03 1.0950068e+02 - -2.8639732e+03 -2.1751978e+03 1.2073484e+02 - -2.8253084e+03 -2.1946434e+03 1.3155266e+02 - -2.7786488e+03 -2.2171420e+03 1.4197297e+02 - -2.7241891e+03 -2.2422305e+03 1.5200685e+02 - -2.6621198e+03 -2.2694714e+03 1.6166063e+02 - -2.5926264e+03 -2.2984514e+03 1.7093755e+02 - -2.5158898e+03 -2.3287793e+03 1.7983853e+02 - -2.4320882e+03 -2.3600838e+03 1.8836261e+02 - -2.3414008e+03 -2.3920107e+03 1.9650712e+02 - -2.2440110e+03 -2.4242214e+03 2.0426776e+02 - -2.1401109e+03 -2.4563904e+03 2.1163863e+02 - -2.0299056e+03 -2.4882044e+03 2.1861235e+02 - -1.9136176e+03 -2.5193611e+03 2.2518011e+02 - -1.7914908e+03 -2.5495694e+03 2.3133184e+02 - -1.6637949e+03 -2.5785489e+03 2.3705639e+02 - -1.5308280e+03 -2.6060312e+03 2.4234177e+02 - -1.3929196e+03 -2.6317607e+03 2.4717539e+02 - -1.2504326e+03 -2.6554968e+03 2.5154443e+02 - -1.1037640e+03 -2.6770151e+03 2.5543612e+02 - -9.5334478e+02 -2.6961101e+03 2.5883809e+02 - -7.9963898e+02 -2.7125974e+03 2.6173875e+02 - -6.4314142e+02 -2.7263160e+03 2.6412762e+02 - -4.8437445e+02 -2.7371307e+03 2.6599562e+02 - -3.2388377e+02 -2.7449339e+03 2.6733538e+02 - -1.6223341e+02 -2.7496474e+03 2.6814147e+02 - -2.4067136e-09 -2.7512239e+03 2.6841054e+02 - 1.6223341e+02 -2.7496474e+03 2.6814147e+02 - 3.2388377e+02 -2.7449339e+03 2.6733538e+02 - 4.8437445e+02 -2.7371307e+03 2.6599562e+02 - 6.4314142e+02 -2.7263160e+03 2.6412762e+02 - 7.9963898e+02 -2.7125974e+03 2.6173875e+02 - 9.5334478e+02 -2.6961101e+03 2.5883809e+02 - 1.1037640e+03 -2.6770151e+03 2.5543612e+02 - 1.2504326e+03 -2.6554968e+03 2.5154443e+02 - 1.3929196e+03 -2.6317607e+03 2.4717539e+02 - 1.5308280e+03 -2.6060312e+03 2.4234177e+02 - 1.6637949e+03 -2.5785489e+03 2.3705639e+02 - 1.7914908e+03 -2.5495694e+03 2.3133184e+02 - 1.9136176e+03 -2.5193611e+03 2.2518011e+02 - 2.0299056e+03 -2.4882044e+03 2.1861235e+02 - 2.1401109e+03 -2.4563904e+03 2.1163863e+02 - 2.2440110e+03 -2.4242214e+03 2.0426776e+02 - 2.3414008e+03 -2.3920107e+03 1.9650712e+02 - 2.4320882e+03 -2.3600838e+03 1.8836261e+02 - 2.5158898e+03 -2.3287793e+03 1.7983853e+02 - 2.5926264e+03 -2.2984514e+03 1.7093755e+02 - 2.6621198e+03 -2.2694714e+03 1.6166063e+02 - 2.7241891e+03 -2.2422305e+03 1.5200685e+02 - 2.7786488e+03 -2.2171420e+03 1.4197297e+02 - 2.8253084e+03 -2.1946434e+03 1.3155266e+02 - 2.8639732e+03 -2.1751978e+03 1.2073484e+02 - 2.8944478e+03 -2.1592943e+03 1.0950068e+02 - 2.9165417e+03 -2.1474466e+03 9.7818023e+01 - 2.9300785e+03 -2.1401898e+03 8.5631302e+01 - 2.9349062e+03 -2.1380755e+03 7.2843252e+01 - 2.9309091e+03 -2.1416666e+03 5.9281348e+01 - 2.9180128e+03 -2.1515356e+03 4.4634976e+01 - 2.8961725e+03 -2.1682812e+03 2.8334254e+01 - 2.8653088e+03 -2.1925928e+03 9.3083227e+00 - 2.8251114e+03 -2.2254491e+03 -1.4506673e+01 - 2.7745220e+03 -2.2686438e+03 -4.7111193e+01 - 2.7107671e+03 -2.3257869e+03 -9.5440036e+01 - 2.6310989e+03 -2.4006029e+03 -1.6398938e+02 - 2.5530141e+03 -2.4763669e+03 -2.2759259e+02 - 2.5163983e+03 -2.5126083e+03 -2.5073554e+02 - 2.5145464e+03 -2.5145464e+03 -2.5291058e+02 - 2.5126083e+03 -2.5163983e+03 -2.5073554e+02 - 2.4763669e+03 -2.5530141e+03 -2.2759259e+02 - 2.4006029e+03 -2.6310989e+03 -1.6398938e+02 - 2.3257869e+03 -2.7107671e+03 -9.5440036e+01 - 2.2686438e+03 -2.7745220e+03 -4.7111193e+01 - 2.2254491e+03 -2.8251114e+03 -1.4506673e+01 - 2.1925928e+03 -2.8653088e+03 9.3083227e+00 - 2.1682812e+03 -2.8961725e+03 2.8334254e+01 - 2.1515356e+03 -2.9180128e+03 4.4634976e+01 - 2.1416666e+03 -2.9309091e+03 5.9281348e+01 - 2.1380755e+03 -2.9349062e+03 7.2843252e+01 - 2.1401898e+03 -2.9300785e+03 8.5631302e+01 - 2.1474466e+03 -2.9165417e+03 9.7818023e+01 - 2.1592943e+03 -2.8944478e+03 1.0950068e+02 - 2.1751978e+03 -2.8639732e+03 1.2073484e+02 - 2.1946434e+03 -2.8253084e+03 1.3155266e+02 - 2.2171420e+03 -2.7786488e+03 1.4197297e+02 - 2.2422305e+03 -2.7241891e+03 1.5200685e+02 - 2.2694714e+03 -2.6621198e+03 1.6166063e+02 - 2.2984514e+03 -2.5926264e+03 1.7093755e+02 - 2.3287793e+03 -2.5158898e+03 1.7983853e+02 - 2.3600838e+03 -2.4320882e+03 1.8836261e+02 - 2.3920107e+03 -2.3414008e+03 1.9650712e+02 - 2.4242214e+03 -2.2440110e+03 2.0426776e+02 - 2.4563904e+03 -2.1401109e+03 2.1163863e+02 - 2.4882044e+03 -2.0299056e+03 2.1861235e+02 - 2.5193611e+03 -1.9136176e+03 2.2518011e+02 - 2.5495694e+03 -1.7914908e+03 2.3133184e+02 - 2.5785489e+03 -1.6637949e+03 2.3705639e+02 - 2.6060312e+03 -1.5308280e+03 2.4234177e+02 - 2.6317607e+03 -1.3929196e+03 2.4717539e+02 - 2.6554968e+03 -1.2504326e+03 2.5154443e+02 - 2.6770151e+03 -1.1037640e+03 2.5543612e+02 - 2.6961101e+03 -9.5334478e+02 2.5883809e+02 - 2.7125974e+03 -7.9963898e+02 2.6173875e+02 - 2.7263160e+03 -6.4314142e+02 2.6412762e+02 - 2.7371307e+03 -4.8437445e+02 2.6599562e+02 - 2.7449339e+03 -3.2388377e+02 2.6733538e+02 - 2.7496474e+03 -1.6223341e+02 2.6814147e+02 - 2.7512239e+03 0.0000000e+00 2.6841054e+02 - 2.7556106e+03 0.0000000e+00 1.7911041e+02 - 2.7540201e+03 1.6276841e+02 1.7893133e+02 - 2.7492644e+03 3.2495080e+02 1.7839484e+02 - 2.7413914e+03 4.8596763e+02 1.7750325e+02 - 2.7304796e+03 6.4525212e+02 1.7626030e+02 - 2.7166374e+03 8.0225600e+02 1.7467106e+02 - 2.7000009e+03 9.5645461e+02 1.7274180e+02 - 2.6807320e+03 1.1073511e+03 1.7047979e+02 - 2.6590162e+03 1.2544799e+03 1.6789307e+02 - 2.6350601e+03 1.3974084e+03 1.6499029e+02 - 2.6090892e+03 1.5357387e+03 1.6178043e+02 - 2.5813453e+03 1.6691073e+03 1.5827262e+02 - 2.5520850e+03 1.7971842e+03 1.5447590e+02 - 2.5215777e+03 1.9196710e+03 1.5039910e+02 - 2.4901046e+03 2.0362983e+03 1.4605061e+02 - 2.4579577e+03 2.1468222e+03 1.4143835e+02 - 2.4254398e+03 2.2510207e+03 1.3656966e+02 - 2.3928650e+03 2.3486890e+03 1.3145129e+02 - 2.3605591e+03 2.4396352e+03 1.2608945e+02 - 2.3288612e+03 2.5236763e+03 1.2048992e+02 - 2.2981257e+03 2.6006332e+03 1.1465821e+02 - 2.2687242e+03 2.6703276e+03 1.0859979e+02 - 2.2410482e+03 2.7325784e+03 1.0232038e+02 - 2.2155108e+03 2.7872001e+03 9.5826252e+01 - 2.1925492e+03 2.8340020e+03 8.9124516e+01 - 2.1726256e+03 2.8727899e+03 8.2223298e+01 - 2.1562266e+03 2.9033703e+03 7.5131596e+01 - 2.1438607e+03 2.9255574e+03 6.7858522e+01 - 2.1360528e+03 2.9391848e+03 6.0411294e+01 - 2.1333343e+03 2.9441204e+03 5.2790850e+01 - 2.1362286e+03 2.9402874e+03 4.4982907e+01 - 2.1452324e+03 2.9276865e+03 3.6940047e+01 - 2.1607933e+03 2.9064201e+03 2.8545338e+01 - 2.1832933e+03 2.8767066e+03 1.9535404e+01 - 2.2130581e+03 2.8388632e+03 9.3264893e+00 - 2.2504647e+03 2.7931871e+03 -3.4157444e+00 - 2.2964024e+03 2.7394855e+03 -2.1947421e+01 - 2.3540222e+03 2.6753497e+03 -5.4602974e+01 - 2.4312213e+03 2.5937945e+03 -1.1526007e+02 - 2.5011706e+03 2.5223759e+03 -1.6687833e+02 - 2.5117529e+03 2.5117529e+03 -1.7231498e+02 - 2.5223759e+03 2.5011706e+03 -1.6687833e+02 - 2.5937945e+03 2.4312213e+03 -1.1526007e+02 - 2.6753497e+03 2.3540222e+03 -5.4602974e+01 - 2.7394855e+03 2.2964024e+03 -2.1947421e+01 - 2.7931871e+03 2.2504647e+03 -3.4157444e+00 - 2.8388632e+03 2.2130581e+03 9.3264893e+00 - 2.8767066e+03 2.1832933e+03 1.9535404e+01 - 2.9064201e+03 2.1607933e+03 2.8545338e+01 - 2.9276865e+03 2.1452324e+03 3.6940047e+01 - 2.9402874e+03 2.1362286e+03 4.4982907e+01 - 2.9441204e+03 2.1333343e+03 5.2790850e+01 - 2.9391848e+03 2.1360528e+03 6.0411294e+01 - 2.9255574e+03 2.1438607e+03 6.7858522e+01 - 2.9033703e+03 2.1562266e+03 7.5131596e+01 - 2.8727899e+03 2.1726256e+03 8.2223298e+01 - 2.8340020e+03 2.1925492e+03 8.9124516e+01 - 2.7872001e+03 2.2155108e+03 9.5826252e+01 - 2.7325784e+03 2.2410482e+03 1.0232038e+02 - 2.6703276e+03 2.2687242e+03 1.0859979e+02 - 2.6006332e+03 2.2981257e+03 1.1465821e+02 - 2.5236763e+03 2.3288612e+03 1.2048992e+02 - 2.4396352e+03 2.3605591e+03 1.2608945e+02 - 2.3486890e+03 2.3928650e+03 1.3145129e+02 - 2.2510207e+03 2.4254398e+03 1.3656966e+02 - 2.1468222e+03 2.4579577e+03 1.4143835e+02 - 2.0362983e+03 2.4901046e+03 1.4605061e+02 - 1.9196710e+03 2.5215777e+03 1.5039910e+02 - 1.7971842e+03 2.5520850e+03 1.5447590e+02 - 1.6691073e+03 2.5813453e+03 1.5827262e+02 - 1.5357387e+03 2.6090892e+03 1.6178043e+02 - 1.3974084e+03 2.6350601e+03 1.6499029e+02 - 1.2544799e+03 2.6590162e+03 1.6789307e+02 - 1.1073511e+03 2.6807320e+03 1.7047979e+02 - 9.5645461e+02 2.7000009e+03 1.7274180e+02 - 8.0225600e+02 2.7166374e+03 1.7467106e+02 - 6.4525212e+02 2.7304796e+03 1.7626030e+02 - 4.8596763e+02 2.7413914e+03 1.7750325e+02 - 3.2495080e+02 2.7492644e+03 1.7839484e+02 - 1.6276841e+02 2.7540201e+03 1.7893133e+02 - 2.4067136e-09 2.7556106e+03 1.7911041e+02 - -1.6276841e+02 2.7540201e+03 1.7893133e+02 - -3.2495080e+02 2.7492644e+03 1.7839484e+02 - -4.8596763e+02 2.7413914e+03 1.7750325e+02 - -6.4525212e+02 2.7304796e+03 1.7626030e+02 - -8.0225600e+02 2.7166374e+03 1.7467106e+02 - -9.5645461e+02 2.7000009e+03 1.7274180e+02 - -1.1073511e+03 2.6807320e+03 1.7047979e+02 - -1.2544799e+03 2.6590162e+03 1.6789307e+02 - -1.3974084e+03 2.6350601e+03 1.6499029e+02 - -1.5357387e+03 2.6090892e+03 1.6178043e+02 - -1.6691073e+03 2.5813453e+03 1.5827262e+02 - -1.7971842e+03 2.5520850e+03 1.5447590e+02 - -1.9196710e+03 2.5215777e+03 1.5039910e+02 - -2.0362983e+03 2.4901046e+03 1.4605061e+02 - -2.1468222e+03 2.4579577e+03 1.4143835e+02 - -2.2510207e+03 2.4254398e+03 1.3656966e+02 - -2.3486890e+03 2.3928650e+03 1.3145129e+02 - -2.4396352e+03 2.3605591e+03 1.2608945e+02 - -2.5236763e+03 2.3288612e+03 1.2048992e+02 - -2.6006332e+03 2.2981257e+03 1.1465821e+02 - -2.6703276e+03 2.2687242e+03 1.0859979e+02 - -2.7325784e+03 2.2410482e+03 1.0232038e+02 - -2.7872001e+03 2.2155108e+03 9.5826252e+01 - -2.8340020e+03 2.1925492e+03 8.9124516e+01 - -2.8727899e+03 2.1726256e+03 8.2223298e+01 - -2.9033703e+03 2.1562266e+03 7.5131596e+01 - -2.9255574e+03 2.1438607e+03 6.7858522e+01 - -2.9391848e+03 2.1360528e+03 6.0411294e+01 - -2.9441204e+03 2.1333343e+03 5.2790850e+01 - -2.9402874e+03 2.1362286e+03 4.4982907e+01 - -2.9276865e+03 2.1452324e+03 3.6940047e+01 - -2.9064201e+03 2.1607933e+03 2.8545338e+01 - -2.8767066e+03 2.1832933e+03 1.9535404e+01 - -2.8388632e+03 2.2130581e+03 9.3264893e+00 - -2.7931871e+03 2.2504647e+03 -3.4157444e+00 - -2.7394855e+03 2.2964024e+03 -2.1947421e+01 - -2.6753497e+03 2.3540222e+03 -5.4602974e+01 - -2.5937945e+03 2.4312213e+03 -1.1526007e+02 - -2.5223759e+03 2.5011706e+03 -1.6687833e+02 - -2.5117529e+03 2.5117529e+03 -1.7231498e+02 - -2.5011706e+03 2.5223759e+03 -1.6687833e+02 - -2.4312213e+03 2.5937945e+03 -1.1526007e+02 - -2.3540222e+03 2.6753497e+03 -5.4602974e+01 - -2.2964024e+03 2.7394855e+03 -2.1947421e+01 - -2.2504647e+03 2.7931871e+03 -3.4157444e+00 - -2.2130581e+03 2.8388632e+03 9.3264893e+00 - -2.1832933e+03 2.8767066e+03 1.9535404e+01 - -2.1607933e+03 2.9064201e+03 2.8545338e+01 - -2.1452324e+03 2.9276865e+03 3.6940047e+01 - -2.1362286e+03 2.9402874e+03 4.4982907e+01 - -2.1333343e+03 2.9441204e+03 5.2790850e+01 - -2.1360528e+03 2.9391848e+03 6.0411294e+01 - -2.1438607e+03 2.9255574e+03 6.7858522e+01 - -2.1562266e+03 2.9033703e+03 7.5131596e+01 - -2.1726256e+03 2.8727899e+03 8.2223298e+01 - -2.1925492e+03 2.8340020e+03 8.9124516e+01 - -2.2155108e+03 2.7872001e+03 9.5826252e+01 - -2.2410482e+03 2.7325784e+03 1.0232038e+02 - -2.2687242e+03 2.6703276e+03 1.0859979e+02 - -2.2981257e+03 2.6006332e+03 1.1465821e+02 - -2.3288612e+03 2.5236763e+03 1.2048992e+02 - -2.3605591e+03 2.4396352e+03 1.2608945e+02 - -2.3928650e+03 2.3486890e+03 1.3145129e+02 - -2.4254398e+03 2.2510207e+03 1.3656966e+02 - -2.4579577e+03 2.1468222e+03 1.4143835e+02 - -2.4901046e+03 2.0362983e+03 1.4605061e+02 - -2.5215777e+03 1.9196710e+03 1.5039910e+02 - -2.5520850e+03 1.7971842e+03 1.5447590e+02 - -2.5813453e+03 1.6691073e+03 1.5827262e+02 - -2.6090892e+03 1.5357387e+03 1.6178043e+02 - -2.6350601e+03 1.3974084e+03 1.6499029e+02 - -2.6590162e+03 1.2544799e+03 1.6789307e+02 - -2.6807320e+03 1.1073511e+03 1.7047979e+02 - -2.7000009e+03 9.5645461e+02 1.7274180e+02 - -2.7166374e+03 8.0225600e+02 1.7467106e+02 - -2.7304796e+03 6.4525212e+02 1.7626030e+02 - -2.7413914e+03 4.8596763e+02 1.7750325e+02 - -2.7492644e+03 3.2495080e+02 1.7839484e+02 - -2.7540201e+03 1.6276841e+02 1.7893133e+02 - -2.7556106e+03 -2.4067136e-09 1.7911041e+02 - -2.7540201e+03 -1.6276841e+02 1.7893133e+02 - -2.7492644e+03 -3.2495080e+02 1.7839484e+02 - -2.7413914e+03 -4.8596763e+02 1.7750325e+02 - -2.7304796e+03 -6.4525212e+02 1.7626030e+02 - -2.7166374e+03 -8.0225600e+02 1.7467106e+02 - -2.7000009e+03 -9.5645461e+02 1.7274180e+02 - -2.6807320e+03 -1.1073511e+03 1.7047979e+02 - -2.6590162e+03 -1.2544799e+03 1.6789307e+02 - -2.6350601e+03 -1.3974084e+03 1.6499029e+02 - -2.6090892e+03 -1.5357387e+03 1.6178043e+02 - -2.5813453e+03 -1.6691073e+03 1.5827262e+02 - -2.5520850e+03 -1.7971842e+03 1.5447590e+02 - -2.5215777e+03 -1.9196710e+03 1.5039910e+02 - -2.4901046e+03 -2.0362983e+03 1.4605061e+02 - -2.4579577e+03 -2.1468222e+03 1.4143835e+02 - -2.4254398e+03 -2.2510207e+03 1.3656966e+02 - -2.3928650e+03 -2.3486890e+03 1.3145129e+02 - -2.3605591e+03 -2.4396352e+03 1.2608945e+02 - -2.3288612e+03 -2.5236763e+03 1.2048992e+02 - -2.2981257e+03 -2.6006332e+03 1.1465821e+02 - -2.2687242e+03 -2.6703276e+03 1.0859979e+02 - -2.2410482e+03 -2.7325784e+03 1.0232038e+02 - -2.2155108e+03 -2.7872001e+03 9.5826252e+01 - -2.1925492e+03 -2.8340020e+03 8.9124516e+01 - -2.1726256e+03 -2.8727899e+03 8.2223298e+01 - -2.1562266e+03 -2.9033703e+03 7.5131596e+01 - -2.1438607e+03 -2.9255574e+03 6.7858522e+01 - -2.1360528e+03 -2.9391848e+03 6.0411294e+01 - -2.1333343e+03 -2.9441204e+03 5.2790850e+01 - -2.1362286e+03 -2.9402874e+03 4.4982907e+01 - -2.1452324e+03 -2.9276865e+03 3.6940047e+01 - -2.1607933e+03 -2.9064201e+03 2.8545338e+01 - -2.1832933e+03 -2.8767066e+03 1.9535404e+01 - -2.2130581e+03 -2.8388632e+03 9.3264893e+00 - -2.2504647e+03 -2.7931871e+03 -3.4157444e+00 - -2.2964024e+03 -2.7394855e+03 -2.1947421e+01 - -2.3540222e+03 -2.6753497e+03 -5.4602974e+01 - -2.4312213e+03 -2.5937945e+03 -1.1526007e+02 - -2.5011706e+03 -2.5223759e+03 -1.6687833e+02 - -2.5117529e+03 -2.5117529e+03 -1.7231498e+02 - -2.5223759e+03 -2.5011706e+03 -1.6687833e+02 - -2.5937945e+03 -2.4312213e+03 -1.1526007e+02 - -2.6753497e+03 -2.3540222e+03 -5.4602974e+01 - -2.7394855e+03 -2.2964024e+03 -2.1947421e+01 - -2.7931871e+03 -2.2504647e+03 -3.4157444e+00 - -2.8388632e+03 -2.2130581e+03 9.3264893e+00 - -2.8767066e+03 -2.1832933e+03 1.9535404e+01 - -2.9064201e+03 -2.1607933e+03 2.8545338e+01 - -2.9276865e+03 -2.1452324e+03 3.6940047e+01 - -2.9402874e+03 -2.1362286e+03 4.4982907e+01 - -2.9441204e+03 -2.1333343e+03 5.2790850e+01 - -2.9391848e+03 -2.1360528e+03 6.0411294e+01 - -2.9255574e+03 -2.1438607e+03 6.7858522e+01 - -2.9033703e+03 -2.1562266e+03 7.5131596e+01 - -2.8727899e+03 -2.1726256e+03 8.2223298e+01 - -2.8340020e+03 -2.1925492e+03 8.9124516e+01 - -2.7872001e+03 -2.2155108e+03 9.5826252e+01 - -2.7325784e+03 -2.2410482e+03 1.0232038e+02 - -2.6703276e+03 -2.2687242e+03 1.0859979e+02 - -2.6006332e+03 -2.2981257e+03 1.1465821e+02 - -2.5236763e+03 -2.3288612e+03 1.2048992e+02 - -2.4396352e+03 -2.3605591e+03 1.2608945e+02 - -2.3486890e+03 -2.3928650e+03 1.3145129e+02 - -2.2510207e+03 -2.4254398e+03 1.3656966e+02 - -2.1468222e+03 -2.4579577e+03 1.4143835e+02 - -2.0362983e+03 -2.4901046e+03 1.4605061e+02 - -1.9196710e+03 -2.5215777e+03 1.5039910e+02 - -1.7971842e+03 -2.5520850e+03 1.5447590e+02 - -1.6691073e+03 -2.5813453e+03 1.5827262e+02 - -1.5357387e+03 -2.6090892e+03 1.6178043e+02 - -1.3974084e+03 -2.6350601e+03 1.6499029e+02 - -1.2544799e+03 -2.6590162e+03 1.6789307e+02 - -1.1073511e+03 -2.6807320e+03 1.7047979e+02 - -9.5645461e+02 -2.7000009e+03 1.7274180e+02 - -8.0225600e+02 -2.7166374e+03 1.7467106e+02 - -6.4525212e+02 -2.7304796e+03 1.7626030e+02 - -4.8596763e+02 -2.7413914e+03 1.7750325e+02 - -3.2495080e+02 -2.7492644e+03 1.7839484e+02 - -1.6276841e+02 -2.7540201e+03 1.7893133e+02 - -4.8134273e-09 -2.7556106e+03 1.7911041e+02 - 1.6276841e+02 -2.7540201e+03 1.7893133e+02 - 3.2495080e+02 -2.7492644e+03 1.7839484e+02 - 4.8596763e+02 -2.7413914e+03 1.7750325e+02 - 6.4525212e+02 -2.7304796e+03 1.7626030e+02 - 8.0225600e+02 -2.7166374e+03 1.7467106e+02 - 9.5645461e+02 -2.7000009e+03 1.7274180e+02 - 1.1073511e+03 -2.6807320e+03 1.7047979e+02 - 1.2544799e+03 -2.6590162e+03 1.6789307e+02 - 1.3974084e+03 -2.6350601e+03 1.6499029e+02 - 1.5357387e+03 -2.6090892e+03 1.6178043e+02 - 1.6691073e+03 -2.5813453e+03 1.5827262e+02 - 1.7971842e+03 -2.5520850e+03 1.5447590e+02 - 1.9196710e+03 -2.5215777e+03 1.5039910e+02 - 2.0362983e+03 -2.4901046e+03 1.4605061e+02 - 2.1468222e+03 -2.4579577e+03 1.4143835e+02 - 2.2510207e+03 -2.4254398e+03 1.3656966e+02 - 2.3486890e+03 -2.3928650e+03 1.3145129e+02 - 2.4396352e+03 -2.3605591e+03 1.2608945e+02 - 2.5236763e+03 -2.3288612e+03 1.2048992e+02 - 2.6006332e+03 -2.2981257e+03 1.1465821e+02 - 2.6703276e+03 -2.2687242e+03 1.0859979e+02 - 2.7325784e+03 -2.2410482e+03 1.0232038e+02 - 2.7872001e+03 -2.2155108e+03 9.5826252e+01 - 2.8340020e+03 -2.1925492e+03 8.9124516e+01 - 2.8727899e+03 -2.1726256e+03 8.2223298e+01 - 2.9033703e+03 -2.1562266e+03 7.5131596e+01 - 2.9255574e+03 -2.1438607e+03 6.7858522e+01 - 2.9391848e+03 -2.1360528e+03 6.0411294e+01 - 2.9441204e+03 -2.1333343e+03 5.2790850e+01 - 2.9402874e+03 -2.1362286e+03 4.4982907e+01 - 2.9276865e+03 -2.1452324e+03 3.6940047e+01 - 2.9064201e+03 -2.1607933e+03 2.8545338e+01 - 2.8767066e+03 -2.1832933e+03 1.9535404e+01 - 2.8388632e+03 -2.2130581e+03 9.3264893e+00 - 2.7931871e+03 -2.2504647e+03 -3.4157444e+00 - 2.7394855e+03 -2.2964024e+03 -2.1947421e+01 - 2.6753497e+03 -2.3540222e+03 -5.4602974e+01 - 2.5937945e+03 -2.4312213e+03 -1.1526007e+02 - 2.5223759e+03 -2.5011706e+03 -1.6687833e+02 - 2.5117529e+03 -2.5117529e+03 -1.7231498e+02 - 2.5011706e+03 -2.5223759e+03 -1.6687833e+02 - 2.4312213e+03 -2.5937945e+03 -1.1526007e+02 - 2.3540222e+03 -2.6753497e+03 -5.4602974e+01 - 2.2964024e+03 -2.7394855e+03 -2.1947421e+01 - 2.2504647e+03 -2.7931871e+03 -3.4157444e+00 - 2.2130581e+03 -2.8388632e+03 9.3264893e+00 - 2.1832933e+03 -2.8767066e+03 1.9535404e+01 - 2.1607933e+03 -2.9064201e+03 2.8545338e+01 - 2.1452324e+03 -2.9276865e+03 3.6940047e+01 - 2.1362286e+03 -2.9402874e+03 4.4982907e+01 - 2.1333343e+03 -2.9441204e+03 5.2790850e+01 - 2.1360528e+03 -2.9391848e+03 6.0411294e+01 - 2.1438607e+03 -2.9255574e+03 6.7858522e+01 - 2.1562266e+03 -2.9033703e+03 7.5131596e+01 - 2.1726256e+03 -2.8727899e+03 8.2223298e+01 - 2.1925492e+03 -2.8340020e+03 8.9124516e+01 - 2.2155108e+03 -2.7872001e+03 9.5826252e+01 - 2.2410482e+03 -2.7325784e+03 1.0232038e+02 - 2.2687242e+03 -2.6703276e+03 1.0859979e+02 - 2.2981257e+03 -2.6006332e+03 1.1465821e+02 - 2.3288612e+03 -2.5236763e+03 1.2048992e+02 - 2.3605591e+03 -2.4396352e+03 1.2608945e+02 - 2.3928650e+03 -2.3486890e+03 1.3145129e+02 - 2.4254398e+03 -2.2510207e+03 1.3656966e+02 - 2.4579577e+03 -2.1468222e+03 1.4143835e+02 - 2.4901046e+03 -2.0362983e+03 1.4605061e+02 - 2.5215777e+03 -1.9196710e+03 1.5039910e+02 - 2.5520850e+03 -1.7971842e+03 1.5447590e+02 - 2.5813453e+03 -1.6691073e+03 1.5827262e+02 - 2.6090892e+03 -1.5357387e+03 1.6178043e+02 - 2.6350601e+03 -1.3974084e+03 1.6499029e+02 - 2.6590162e+03 -1.2544799e+03 1.6789307e+02 - 2.6807320e+03 -1.1073511e+03 1.7047979e+02 - 2.7000009e+03 -9.5645461e+02 1.7274180e+02 - 2.7166374e+03 -8.0225600e+02 1.7467106e+02 - 2.7304796e+03 -6.4525212e+02 1.7626030e+02 - 2.7413914e+03 -4.8596763e+02 1.7750325e+02 - 2.7492644e+03 -3.2495080e+02 1.7839484e+02 - 2.7540201e+03 -1.6276841e+02 1.7893133e+02 - 2.7556106e+03 2.4067136e-09 1.7911041e+02 - 2.7582473e+03 0.0000000e+00 8.9606330e+01 - 2.7566484e+03 1.6308874e+02 8.9516873e+01 - 2.7518675e+03 3.2558964e+02 8.9248893e+01 - 2.7439527e+03 4.8692142e+02 8.8803558e+01 - 2.7329828e+03 6.4651560e+02 8.8182774e+01 - 2.7190668e+03 8.0382237e+02 8.7389131e+01 - 2.7023411e+03 9.5831564e+02 8.6425823e+01 - 2.6829684e+03 1.1094974e+03 8.5296563e+01 - 2.6611347e+03 1.2569008e+03 8.4005478e+01 - 2.6370475e+03 1.4000927e+03 8.2557003e+01 - 2.6109328e+03 1.5386744e+03 8.0955773e+01 - 2.5830333e+03 1.6722818e+03 7.9206515e+01 - 2.5536061e+03 1.8005849e+03 7.7313958e+01 - 2.5229214e+03 1.9232849e+03 7.5282746e+01 - 2.4912610e+03 2.0401125e+03 7.3117376e+01 - 2.4589174e+03 2.1508237e+03 7.0822154e+01 - 2.4261941e+03 2.2551967e+03 6.8401185e+01 - 2.3934056e+03 2.3530265e+03 6.5858386e+01 - 2.3608782e+03 2.4441215e+03 6.3197539e+01 - 2.3289517e+03 2.5282983e+03 6.0422393e+01 - 2.2979810e+03 2.6053776e+03 5.7536804e+01 - 2.2683385e+03 2.6751805e+03 5.4544934e+01 - 2.2404164e+03 2.7375251e+03 5.1451510e+01 - 2.2146292e+03 2.7922248e+03 4.8262150e+01 - 2.1914152e+03 2.8390875e+03 4.4983746e+01 - 2.1712384e+03 2.8779172e+03 4.1624917e+01 - 2.1545870e+03 2.9085187e+03 3.8196490e+01 - 2.1419715e+03 2.9307044e+03 3.4711974e+01 - 2.1339180e+03 2.9443070e+03 3.1187935e+01 - 2.1309578e+03 2.9491957e+03 2.7644094e+01 - 2.1336106e+03 2.9452984e+03 2.4102830e+01 - 2.1423617e+03 2.9326295e+03 2.0587468e+01 - 2.1576307e+03 2.9113218e+03 1.7118089e+01 - 2.1797341e+03 2.8816609e+03 1.3702042e+01 - 2.2088436e+03 2.8441170e+03 1.0312024e+01 - 2.2449482e+03 2.7993662e+03 6.8309161e+00 - 2.2878430e+03 2.7482757e+03 2.8905570e+00 - 2.3372459e+03 2.6917569e+03 -2.7183229e+00 - 2.3938076e+03 2.6297375e+03 -1.5043863e+01 - 2.4681658e+03 2.5522385e+03 -5.9486760e+01 - 2.5099856e+03 2.5099856e+03 -8.7295586e+01 - 2.5522385e+03 2.4681658e+03 -5.9486760e+01 - 2.6297375e+03 2.3938076e+03 -1.5043863e+01 - 2.6917569e+03 2.3372459e+03 -2.7183229e+00 - 2.7482757e+03 2.2878430e+03 2.8905571e+00 - 2.7993662e+03 2.2449482e+03 6.8309161e+00 - 2.8441170e+03 2.2088436e+03 1.0312024e+01 - 2.8816609e+03 2.1797341e+03 1.3702042e+01 - 2.9113218e+03 2.1576307e+03 1.7118089e+01 - 2.9326295e+03 2.1423617e+03 2.0587468e+01 - 2.9452984e+03 2.1336106e+03 2.4102830e+01 - 2.9491957e+03 2.1309578e+03 2.7644094e+01 - 2.9443070e+03 2.1339180e+03 3.1187935e+01 - 2.9307044e+03 2.1419715e+03 3.4711974e+01 - 2.9085187e+03 2.1545870e+03 3.8196490e+01 - 2.8779172e+03 2.1712384e+03 4.1624917e+01 - 2.8390875e+03 2.1914152e+03 4.4983746e+01 - 2.7922248e+03 2.2146292e+03 4.8262150e+01 - 2.7375251e+03 2.2404164e+03 5.1451510e+01 - 2.6751805e+03 2.2683385e+03 5.4544934e+01 - 2.6053776e+03 2.2979810e+03 5.7536804e+01 - 2.5282983e+03 2.3289517e+03 6.0422393e+01 - 2.4441215e+03 2.3608782e+03 6.3197539e+01 - 2.3530265e+03 2.3934056e+03 6.5858386e+01 - 2.2551967e+03 2.4261941e+03 6.8401185e+01 - 2.1508237e+03 2.4589174e+03 7.0822154e+01 - 2.0401125e+03 2.4912610e+03 7.3117376e+01 - 1.9232849e+03 2.5229214e+03 7.5282746e+01 - 1.8005849e+03 2.5536061e+03 7.7313958e+01 - 1.6722818e+03 2.5830333e+03 7.9206515e+01 - 1.5386744e+03 2.6109328e+03 8.0955773e+01 - 1.4000927e+03 2.6370475e+03 8.2557003e+01 - 1.2569008e+03 2.6611347e+03 8.4005478e+01 - 1.1094974e+03 2.6829684e+03 8.5296563e+01 - 9.5831564e+02 2.7023411e+03 8.6425823e+01 - 8.0382237e+02 2.7190668e+03 8.7389131e+01 - 6.4651560e+02 2.7329828e+03 8.8182774e+01 - 4.8692142e+02 2.7439527e+03 8.8803558e+01 - 3.2558964e+02 2.7518675e+03 8.9248893e+01 - 1.6308874e+02 2.7566484e+03 8.9516873e+01 - 0.0000000e+00 2.7582473e+03 8.9606330e+01 - -1.6308874e+02 2.7566484e+03 8.9516873e+01 - -3.2558964e+02 2.7518675e+03 8.9248893e+01 - -4.8692142e+02 2.7439527e+03 8.8803558e+01 - -6.4651560e+02 2.7329828e+03 8.8182774e+01 - -8.0382237e+02 2.7190668e+03 8.7389131e+01 - -9.5831564e+02 2.7023411e+03 8.6425823e+01 - -1.1094974e+03 2.6829684e+03 8.5296563e+01 - -1.2569008e+03 2.6611347e+03 8.4005478e+01 - -1.4000927e+03 2.6370475e+03 8.2557003e+01 - -1.5386744e+03 2.6109328e+03 8.0955773e+01 - -1.6722818e+03 2.5830333e+03 7.9206515e+01 - -1.8005849e+03 2.5536061e+03 7.7313958e+01 - -1.9232849e+03 2.5229214e+03 7.5282746e+01 - -2.0401125e+03 2.4912610e+03 7.3117376e+01 - -2.1508237e+03 2.4589174e+03 7.0822154e+01 - -2.2551967e+03 2.4261941e+03 6.8401185e+01 - -2.3530265e+03 2.3934056e+03 6.5858386e+01 - -2.4441215e+03 2.3608782e+03 6.3197539e+01 - -2.5282983e+03 2.3289517e+03 6.0422393e+01 - -2.6053776e+03 2.2979810e+03 5.7536804e+01 - -2.6751805e+03 2.2683385e+03 5.4544934e+01 - -2.7375251e+03 2.2404164e+03 5.1451510e+01 - -2.7922248e+03 2.2146292e+03 4.8262150e+01 - -2.8390875e+03 2.1914152e+03 4.4983746e+01 - -2.8779172e+03 2.1712384e+03 4.1624917e+01 - -2.9085187e+03 2.1545870e+03 3.8196490e+01 - -2.9307044e+03 2.1419715e+03 3.4711974e+01 - -2.9443070e+03 2.1339180e+03 3.1187935e+01 - -2.9491957e+03 2.1309578e+03 2.7644094e+01 - -2.9452984e+03 2.1336106e+03 2.4102830e+01 - -2.9326295e+03 2.1423617e+03 2.0587468e+01 - -2.9113218e+03 2.1576307e+03 1.7118089e+01 - -2.8816609e+03 2.1797341e+03 1.3702042e+01 - -2.8441170e+03 2.2088436e+03 1.0312024e+01 - -2.7993662e+03 2.2449482e+03 6.8309161e+00 - -2.7482757e+03 2.2878430e+03 2.8905570e+00 - -2.6917569e+03 2.3372459e+03 -2.7183229e+00 - -2.6297375e+03 2.3938076e+03 -1.5043863e+01 - -2.5522385e+03 2.4681658e+03 -5.9486760e+01 - -2.5099856e+03 2.5099856e+03 -8.7295586e+01 - -2.4681658e+03 2.5522385e+03 -5.9486760e+01 - -2.3938076e+03 2.6297375e+03 -1.5043863e+01 - -2.3372459e+03 2.6917569e+03 -2.7183229e+00 - -2.2878430e+03 2.7482757e+03 2.8905570e+00 - -2.2449482e+03 2.7993662e+03 6.8309161e+00 - -2.2088436e+03 2.8441170e+03 1.0312024e+01 - -2.1797341e+03 2.8816609e+03 1.3702042e+01 - -2.1576307e+03 2.9113218e+03 1.7118089e+01 - -2.1423617e+03 2.9326295e+03 2.0587468e+01 - -2.1336106e+03 2.9452984e+03 2.4102830e+01 - -2.1309578e+03 2.9491957e+03 2.7644094e+01 - -2.1339180e+03 2.9443070e+03 3.1187935e+01 - -2.1419715e+03 2.9307044e+03 3.4711974e+01 - -2.1545870e+03 2.9085187e+03 3.8196490e+01 - -2.1712384e+03 2.8779172e+03 4.1624917e+01 - -2.1914152e+03 2.8390875e+03 4.4983746e+01 - -2.2146292e+03 2.7922248e+03 4.8262150e+01 - -2.2404164e+03 2.7375251e+03 5.1451510e+01 - -2.2683385e+03 2.6751805e+03 5.4544934e+01 - -2.2979810e+03 2.6053776e+03 5.7536804e+01 - -2.3289517e+03 2.5282983e+03 6.0422393e+01 - -2.3608782e+03 2.4441215e+03 6.3197539e+01 - -2.3934056e+03 2.3530265e+03 6.5858386e+01 - -2.4261941e+03 2.2551967e+03 6.8401185e+01 - -2.4589174e+03 2.1508237e+03 7.0822154e+01 - -2.4912610e+03 2.0401125e+03 7.3117376e+01 - -2.5229214e+03 1.9232849e+03 7.5282746e+01 - -2.5536061e+03 1.8005849e+03 7.7313958e+01 - -2.5830333e+03 1.6722818e+03 7.9206515e+01 - -2.6109328e+03 1.5386744e+03 8.0955773e+01 - -2.6370475e+03 1.4000927e+03 8.2557003e+01 - -2.6611347e+03 1.2569008e+03 8.4005478e+01 - -2.6829684e+03 1.1094974e+03 8.5296563e+01 - -2.7023411e+03 9.5831564e+02 8.6425823e+01 - -2.7190668e+03 8.0382237e+02 8.7389131e+01 - -2.7329828e+03 6.4651560e+02 8.8182774e+01 - -2.7439527e+03 4.8692142e+02 8.8803558e+01 - -2.7518675e+03 3.2558964e+02 8.9248893e+01 - -2.7566484e+03 1.6308874e+02 8.9516873e+01 - -2.7582473e+03 -4.8134273e-09 8.9606330e+01 - -2.7566484e+03 -1.6308874e+02 8.9516873e+01 - -2.7518675e+03 -3.2558964e+02 8.9248893e+01 - -2.7439527e+03 -4.8692142e+02 8.8803558e+01 - -2.7329828e+03 -6.4651560e+02 8.8182774e+01 - -2.7190668e+03 -8.0382237e+02 8.7389131e+01 - -2.7023411e+03 -9.5831564e+02 8.6425823e+01 - -2.6829684e+03 -1.1094974e+03 8.5296563e+01 - -2.6611347e+03 -1.2569008e+03 8.4005478e+01 - -2.6370475e+03 -1.4000927e+03 8.2557003e+01 - -2.6109328e+03 -1.5386744e+03 8.0955773e+01 - -2.5830333e+03 -1.6722818e+03 7.9206515e+01 - -2.5536061e+03 -1.8005849e+03 7.7313958e+01 - -2.5229214e+03 -1.9232849e+03 7.5282746e+01 - -2.4912610e+03 -2.0401125e+03 7.3117376e+01 - -2.4589174e+03 -2.1508237e+03 7.0822154e+01 - -2.4261941e+03 -2.2551967e+03 6.8401185e+01 - -2.3934056e+03 -2.3530265e+03 6.5858386e+01 - -2.3608782e+03 -2.4441215e+03 6.3197539e+01 - -2.3289517e+03 -2.5282983e+03 6.0422393e+01 - -2.2979810e+03 -2.6053776e+03 5.7536804e+01 - -2.2683385e+03 -2.6751805e+03 5.4544934e+01 - -2.2404164e+03 -2.7375251e+03 5.1451510e+01 - -2.2146292e+03 -2.7922248e+03 4.8262150e+01 - -2.1914152e+03 -2.8390875e+03 4.4983746e+01 - -2.1712384e+03 -2.8779172e+03 4.1624917e+01 - -2.1545870e+03 -2.9085187e+03 3.8196490e+01 - -2.1419715e+03 -2.9307044e+03 3.4711974e+01 - -2.1339180e+03 -2.9443070e+03 3.1187935e+01 - -2.1309578e+03 -2.9491957e+03 2.7644094e+01 - -2.1336106e+03 -2.9452984e+03 2.4102830e+01 - -2.1423617e+03 -2.9326295e+03 2.0587468e+01 - -2.1576307e+03 -2.9113218e+03 1.7118089e+01 - -2.1797341e+03 -2.8816609e+03 1.3702042e+01 - -2.2088436e+03 -2.8441170e+03 1.0312024e+01 - -2.2449482e+03 -2.7993662e+03 6.8309161e+00 - -2.2878430e+03 -2.7482757e+03 2.8905570e+00 - -2.3372459e+03 -2.6917569e+03 -2.7183229e+00 - -2.3938076e+03 -2.6297375e+03 -1.5043863e+01 - -2.4681658e+03 -2.5522385e+03 -5.9486760e+01 - -2.5099856e+03 -2.5099856e+03 -8.7295586e+01 - -2.5522385e+03 -2.4681658e+03 -5.9486760e+01 - -2.6297375e+03 -2.3938076e+03 -1.5043863e+01 - -2.6917569e+03 -2.3372459e+03 -2.7183229e+00 - -2.7482757e+03 -2.2878430e+03 2.8905570e+00 - -2.7993662e+03 -2.2449482e+03 6.8309161e+00 - -2.8441170e+03 -2.2088436e+03 1.0312024e+01 - -2.8816609e+03 -2.1797341e+03 1.3702042e+01 - -2.9113218e+03 -2.1576307e+03 1.7118089e+01 - -2.9326295e+03 -2.1423617e+03 2.0587468e+01 - -2.9452984e+03 -2.1336106e+03 2.4102830e+01 - -2.9491957e+03 -2.1309578e+03 2.7644094e+01 - -2.9443070e+03 -2.1339180e+03 3.1187935e+01 - -2.9307044e+03 -2.1419715e+03 3.4711974e+01 - -2.9085187e+03 -2.1545870e+03 3.8196490e+01 - -2.8779172e+03 -2.1712384e+03 4.1624917e+01 - -2.8390875e+03 -2.1914152e+03 4.4983746e+01 - -2.7922248e+03 -2.2146292e+03 4.8262150e+01 - -2.7375251e+03 -2.2404164e+03 5.1451510e+01 - -2.6751805e+03 -2.2683385e+03 5.4544934e+01 - -2.6053776e+03 -2.2979810e+03 5.7536804e+01 - -2.5282983e+03 -2.3289517e+03 6.0422393e+01 - -2.4441215e+03 -2.3608782e+03 6.3197539e+01 - -2.3530265e+03 -2.3934056e+03 6.5858386e+01 - -2.2551967e+03 -2.4261941e+03 6.8401185e+01 - -2.1508237e+03 -2.4589174e+03 7.0822154e+01 - -2.0401125e+03 -2.4912610e+03 7.3117376e+01 - -1.9232849e+03 -2.5229214e+03 7.5282746e+01 - -1.8005849e+03 -2.5536061e+03 7.7313958e+01 - -1.6722818e+03 -2.5830333e+03 7.9206515e+01 - -1.5386744e+03 -2.6109328e+03 8.0955773e+01 - -1.4000927e+03 -2.6370475e+03 8.2557003e+01 - -1.2569008e+03 -2.6611347e+03 8.4005478e+01 - -1.1094974e+03 -2.6829684e+03 8.5296563e+01 - -9.5831564e+02 -2.7023411e+03 8.6425823e+01 - -8.0382237e+02 -2.7190668e+03 8.7389131e+01 - -6.4651560e+02 -2.7329828e+03 8.8182774e+01 - -4.8692142e+02 -2.7439527e+03 8.8803558e+01 - -3.2558964e+02 -2.7518675e+03 8.9248893e+01 - -1.6308874e+02 -2.7566484e+03 8.9516873e+01 - 2.4067136e-09 -2.7582473e+03 8.9606330e+01 - 1.6308874e+02 -2.7566484e+03 8.9516873e+01 - 3.2558964e+02 -2.7518675e+03 8.9248893e+01 - 4.8692142e+02 -2.7439527e+03 8.8803558e+01 - 6.4651560e+02 -2.7329828e+03 8.8182774e+01 - 8.0382237e+02 -2.7190668e+03 8.7389131e+01 - 9.5831564e+02 -2.7023411e+03 8.6425823e+01 - 1.1094974e+03 -2.6829684e+03 8.5296563e+01 - 1.2569008e+03 -2.6611347e+03 8.4005478e+01 - 1.4000927e+03 -2.6370475e+03 8.2557003e+01 - 1.5386744e+03 -2.6109328e+03 8.0955773e+01 - 1.6722818e+03 -2.5830333e+03 7.9206515e+01 - 1.8005849e+03 -2.5536061e+03 7.7313958e+01 - 1.9232849e+03 -2.5229214e+03 7.5282746e+01 - 2.0401125e+03 -2.4912610e+03 7.3117376e+01 - 2.1508237e+03 -2.4589174e+03 7.0822154e+01 - 2.2551967e+03 -2.4261941e+03 6.8401185e+01 - 2.3530265e+03 -2.3934056e+03 6.5858386e+01 - 2.4441215e+03 -2.3608782e+03 6.3197539e+01 - 2.5282983e+03 -2.3289517e+03 6.0422393e+01 - 2.6053776e+03 -2.2979810e+03 5.7536804e+01 - 2.6751805e+03 -2.2683385e+03 5.4544934e+01 - 2.7375251e+03 -2.2404164e+03 5.1451510e+01 - 2.7922248e+03 -2.2146292e+03 4.8262150e+01 - 2.8390875e+03 -2.1914152e+03 4.4983746e+01 - 2.8779172e+03 -2.1712384e+03 4.1624917e+01 - 2.9085187e+03 -2.1545870e+03 3.8196490e+01 - 2.9307044e+03 -2.1419715e+03 3.4711974e+01 - 2.9443070e+03 -2.1339180e+03 3.1187935e+01 - 2.9491957e+03 -2.1309578e+03 2.7644094e+01 - 2.9452984e+03 -2.1336106e+03 2.4102830e+01 - 2.9326295e+03 -2.1423617e+03 2.0587468e+01 - 2.9113218e+03 -2.1576307e+03 1.7118089e+01 - 2.8816609e+03 -2.1797341e+03 1.3702042e+01 - 2.8441170e+03 -2.2088436e+03 1.0312024e+01 - 2.7993662e+03 -2.2449482e+03 6.8309161e+00 - 2.7482757e+03 -2.2878430e+03 2.8905570e+00 - 2.6917569e+03 -2.3372459e+03 -2.7183229e+00 - 2.6297375e+03 -2.3938076e+03 -1.5043863e+01 - 2.5522385e+03 -2.4681658e+03 -5.9486760e+01 - 2.5099856e+03 -2.5099856e+03 -8.7295586e+01 - 2.4681658e+03 -2.5522385e+03 -5.9486760e+01 - 2.3938076e+03 -2.6297375e+03 -1.5043863e+01 - 2.3372459e+03 -2.6917569e+03 -2.7183229e+00 - 2.2878430e+03 -2.7482757e+03 2.8905570e+00 - 2.2449482e+03 -2.7993662e+03 6.8309161e+00 - 2.2088436e+03 -2.8441170e+03 1.0312024e+01 - 2.1797341e+03 -2.8816609e+03 1.3702042e+01 - 2.1576307e+03 -2.9113218e+03 1.7118089e+01 - 2.1423617e+03 -2.9326295e+03 2.0587468e+01 - 2.1336106e+03 -2.9452984e+03 2.4102830e+01 - 2.1309578e+03 -2.9491957e+03 2.7644094e+01 - 2.1339180e+03 -2.9443070e+03 3.1187935e+01 - 2.1419715e+03 -2.9307044e+03 3.4711974e+01 - 2.1545870e+03 -2.9085187e+03 3.8196490e+01 - 2.1712384e+03 -2.8779172e+03 4.1624917e+01 - 2.1914152e+03 -2.8390875e+03 4.4983746e+01 - 2.2146292e+03 -2.7922248e+03 4.8262150e+01 - 2.2404164e+03 -2.7375251e+03 5.1451510e+01 - 2.2683385e+03 -2.6751805e+03 5.4544934e+01 - 2.2979810e+03 -2.6053776e+03 5.7536804e+01 - 2.3289517e+03 -2.5282983e+03 6.0422393e+01 - 2.3608782e+03 -2.4441215e+03 6.3197539e+01 - 2.3934056e+03 -2.3530265e+03 6.5858386e+01 - 2.4261941e+03 -2.2551967e+03 6.8401185e+01 - 2.4589174e+03 -2.1508237e+03 7.0822154e+01 - 2.4912610e+03 -2.0401125e+03 7.3117376e+01 - 2.5229214e+03 -1.9232849e+03 7.5282746e+01 - 2.5536061e+03 -1.8005849e+03 7.7313958e+01 - 2.5830333e+03 -1.6722818e+03 7.9206515e+01 - 2.6109328e+03 -1.5386744e+03 8.0955773e+01 - 2.6370475e+03 -1.4000927e+03 8.2557003e+01 - 2.6611347e+03 -1.2569008e+03 8.4005478e+01 - 2.6829684e+03 -1.1094974e+03 8.5296563e+01 - 2.7023411e+03 -9.5831564e+02 8.6425823e+01 - 2.7190668e+03 -8.0382237e+02 8.7389131e+01 - 2.7329828e+03 -6.4651560e+02 8.8182774e+01 - 2.7439527e+03 -4.8692142e+02 8.8803558e+01 - 2.7518675e+03 -3.2558964e+02 8.9248893e+01 - 2.7566484e+03 -1.6308874e+02 8.9516873e+01 - 2.7582473e+03 0.0000000e+00 8.9606330e+01 - 2.7591270e+03 -2.4067136e-09 0.0000000e+00 - 2.7575252e+03 1.6319540e+02 0.0000000e+00 - 2.7527360e+03 3.2580237e+02 0.0000000e+00 - 2.7448072e+03 4.8723900e+02 0.0000000e+00 - 2.7338181e+03 6.4693628e+02 0.0000000e+00 - 2.7198775e+03 8.0434386e+02 -2.4067136e-09 - 2.7031221e+03 9.5893519e+02 0.0000000e+00 - 2.6837149e+03 1.1102118e+03 -2.4067136e-09 - 2.6618421e+03 1.2577066e+03 -4.8134273e-09 - 2.6377113e+03 1.4009860e+03 4.8134273e-09 - 2.6115488e+03 1.5396511e+03 0.0000000e+00 - 2.5835976e+03 1.6733379e+03 0.0000000e+00 - 2.5541151e+03 1.8017159e+03 0.0000000e+00 - 2.5233716e+03 1.9244865e+03 0.0000000e+00 - 2.4916491e+03 2.0413803e+03 0.0000000e+00 - 2.4592405e+03 2.1521534e+03 0.0000000e+00 - 2.4264494e+03 2.2565837e+03 -2.4067136e-09 - 2.3935904e+03 2.3544665e+03 4.8134273e-09 - 2.3609902e+03 2.4456100e+03 0.0000000e+00 - 2.3289887e+03 2.5298307e+03 2.4067136e-09 - 2.2979411e+03 2.6069492e+03 0.0000000e+00 - 2.2682202e+03 2.6767863e+03 0.0000000e+00 - 2.2402186e+03 2.7391597e+03 0.0000000e+00 - 2.2143513e+03 2.7938822e+03 -4.8134273e-09 - 2.1910574e+03 2.8407611e+03 2.4067136e-09 - 2.1708016e+03 2.8795996e+03 0.0000000e+00 - 2.1540735e+03 2.9102011e+03 4.8134273e-09 - 2.1413848e+03 2.9323770e+03 9.6268545e-09 - 2.1332633e+03 2.9459584e+03 0.0000000e+00 - 2.1302422e+03 2.9508132e+03 0.0000000e+00 - 2.1328433e+03 2.9468681e+03 2.4067136e-09 - 2.1415535e+03 2.9341367e+03 0.0000000e+00 - 2.1567934e+03 2.9127524e+03 4.8134273e-09 - 2.1788780e+03 2.8830042e+03 0.0000000e+00 - 2.2079716e+03 2.8453719e+03 2.4067136e-09 - 2.2440401e+03 2.8005569e+03 0.0000000e+00 - 2.2868055e+03 2.7494997e+03 0.0000000e+00 - 2.3357116e+03 2.6933812e+03 4.8134273e-09 - 2.3899078e+03 2.6335980e+03 0.0000000e+00 - 2.4482583e+03 2.5717129e+03 -4.8134273e-09 - 2.5093809e+03 2.5093809e+03 0.0000000e+00 - 2.5717129e+03 2.4482583e+03 0.0000000e+00 - 2.6335980e+03 2.3899078e+03 -2.4067136e-09 - 2.6933812e+03 2.3357116e+03 -4.8134273e-09 - 2.7494997e+03 2.2868055e+03 -4.8134273e-09 - 2.8005569e+03 2.2440401e+03 2.4067136e-09 - 2.8453719e+03 2.2079716e+03 -1.2033568e-08 - 2.8830042e+03 2.1788780e+03 0.0000000e+00 - 2.9127524e+03 2.1567934e+03 2.4067136e-09 - 2.9341367e+03 2.1415535e+03 0.0000000e+00 - 2.9468681e+03 2.1328433e+03 -2.4067136e-09 - 2.9508132e+03 2.1302422e+03 0.0000000e+00 - 2.9459584e+03 2.1332633e+03 -2.4067136e-09 - 2.9323770e+03 2.1413848e+03 2.4067136e-09 - 2.9102011e+03 2.1540735e+03 0.0000000e+00 - 2.8795996e+03 2.1708016e+03 4.8134273e-09 - 2.8407611e+03 2.1910574e+03 2.4067136e-09 - 2.7938822e+03 2.2143513e+03 0.0000000e+00 - 2.7391597e+03 2.2402186e+03 -4.8134273e-09 - 2.6767863e+03 2.2682202e+03 0.0000000e+00 - 2.6069492e+03 2.2979411e+03 0.0000000e+00 - 2.5298307e+03 2.3289887e+03 2.4067136e-09 - 2.4456100e+03 2.3609902e+03 0.0000000e+00 - 2.3544665e+03 2.3935904e+03 -4.8134273e-09 - 2.2565837e+03 2.4264494e+03 7.2201409e-09 - 2.1521534e+03 2.4592405e+03 -2.4067136e-09 - 2.0413803e+03 2.4916491e+03 0.0000000e+00 - 1.9244865e+03 2.5233716e+03 4.8134273e-09 - 1.8017159e+03 2.5541151e+03 4.8134273e-09 - 1.6733379e+03 2.5835976e+03 0.0000000e+00 - 1.5396511e+03 2.6115488e+03 0.0000000e+00 - 1.4009860e+03 2.6377113e+03 2.4067136e-09 - 1.2577066e+03 2.6618421e+03 0.0000000e+00 - 1.1102118e+03 2.6837149e+03 0.0000000e+00 - 9.5893519e+02 2.7031221e+03 0.0000000e+00 - 8.0434386e+02 2.7198775e+03 0.0000000e+00 - 6.4693628e+02 2.7338181e+03 4.8134273e-09 - 4.8723900e+02 2.7448072e+03 0.0000000e+00 - 3.2580237e+02 2.7527360e+03 0.0000000e+00 - 1.6319540e+02 2.7575252e+03 -4.8134273e-09 - 2.4067136e-09 2.7591270e+03 0.0000000e+00 - -1.6319540e+02 2.7575252e+03 7.2201409e-09 - -3.2580237e+02 2.7527360e+03 2.4067136e-09 - -4.8723900e+02 2.7448072e+03 2.4067136e-09 - -6.4693628e+02 2.7338181e+03 0.0000000e+00 - -8.0434386e+02 2.7198775e+03 0.0000000e+00 - -9.5893519e+02 2.7031221e+03 2.4067136e-09 - -1.1102118e+03 2.6837149e+03 -2.4067136e-09 - -1.2577066e+03 2.6618421e+03 0.0000000e+00 - -1.4009860e+03 2.6377113e+03 0.0000000e+00 - -1.5396511e+03 2.6115488e+03 0.0000000e+00 - -1.6733379e+03 2.5835976e+03 0.0000000e+00 - -1.8017159e+03 2.5541151e+03 0.0000000e+00 - -1.9244865e+03 2.5233716e+03 0.0000000e+00 - -2.0413803e+03 2.4916491e+03 0.0000000e+00 - -2.1521534e+03 2.4592405e+03 0.0000000e+00 - -2.2565837e+03 2.4264494e+03 0.0000000e+00 - -2.3544665e+03 2.3935904e+03 -4.8134273e-09 - -2.4456100e+03 2.3609902e+03 -2.4067136e-09 - -2.5298307e+03 2.3289887e+03 0.0000000e+00 - -2.6069492e+03 2.2979411e+03 0.0000000e+00 - -2.6767863e+03 2.2682202e+03 0.0000000e+00 - -2.7391597e+03 2.2402186e+03 2.4067136e-09 - -2.7938822e+03 2.2143513e+03 0.0000000e+00 - -2.8407611e+03 2.1910574e+03 0.0000000e+00 - -2.8795996e+03 2.1708016e+03 0.0000000e+00 - -2.9102011e+03 2.1540735e+03 0.0000000e+00 - -2.9323770e+03 2.1413848e+03 0.0000000e+00 - -2.9459584e+03 2.1332633e+03 0.0000000e+00 - -2.9508132e+03 2.1302422e+03 0.0000000e+00 - -2.9468681e+03 2.1328433e+03 0.0000000e+00 - -2.9341367e+03 2.1415535e+03 0.0000000e+00 - -2.9127524e+03 2.1567934e+03 0.0000000e+00 - -2.8830042e+03 2.1788780e+03 0.0000000e+00 - -2.8453719e+03 2.2079716e+03 0.0000000e+00 - -2.8005569e+03 2.2440401e+03 0.0000000e+00 - -2.7494997e+03 2.2868055e+03 0.0000000e+00 - -2.6933812e+03 2.3357116e+03 0.0000000e+00 - -2.6335980e+03 2.3899078e+03 0.0000000e+00 - -2.5717129e+03 2.4482583e+03 0.0000000e+00 - -2.5093809e+03 2.5093809e+03 0.0000000e+00 - -2.4482583e+03 2.5717129e+03 0.0000000e+00 - -2.3899078e+03 2.6335980e+03 0.0000000e+00 - -2.3357116e+03 2.6933812e+03 0.0000000e+00 - -2.2868055e+03 2.7494997e+03 0.0000000e+00 - -2.2440401e+03 2.8005569e+03 0.0000000e+00 - -2.2079716e+03 2.8453719e+03 0.0000000e+00 - -2.1788780e+03 2.8830042e+03 0.0000000e+00 - -2.1567934e+03 2.9127524e+03 0.0000000e+00 - -2.1415535e+03 2.9341367e+03 0.0000000e+00 - -2.1328433e+03 2.9468681e+03 0.0000000e+00 - -2.1302422e+03 2.9508132e+03 0.0000000e+00 - -2.1332633e+03 2.9459584e+03 0.0000000e+00 - -2.1413848e+03 2.9323770e+03 -2.4067136e-09 - -2.1540735e+03 2.9102011e+03 0.0000000e+00 - -2.1708016e+03 2.8795996e+03 0.0000000e+00 - -2.1910574e+03 2.8407611e+03 0.0000000e+00 - -2.2143513e+03 2.7938822e+03 -2.4067136e-09 - -2.2402186e+03 2.7391597e+03 0.0000000e+00 - -2.2682202e+03 2.6767863e+03 0.0000000e+00 - -2.2979411e+03 2.6069492e+03 0.0000000e+00 - -2.3289887e+03 2.5298307e+03 0.0000000e+00 - -2.3609902e+03 2.4456100e+03 0.0000000e+00 - -2.3935904e+03 2.3544665e+03 0.0000000e+00 - -2.4264494e+03 2.2565837e+03 0.0000000e+00 - -2.4592405e+03 2.1521534e+03 0.0000000e+00 - -2.4916491e+03 2.0413803e+03 -4.8134273e-09 - -2.5233716e+03 1.9244865e+03 2.4067136e-09 - -2.5541151e+03 1.8017159e+03 0.0000000e+00 - -2.5835976e+03 1.6733379e+03 2.4067136e-09 - -2.6115488e+03 1.5396511e+03 0.0000000e+00 - -2.6377113e+03 1.4009860e+03 0.0000000e+00 - -2.6618421e+03 1.2577066e+03 2.4067136e-09 - -2.6837149e+03 1.1102118e+03 0.0000000e+00 - -2.7031221e+03 9.5893519e+02 4.8134273e-09 - -2.7198775e+03 8.0434386e+02 -2.4067136e-09 - -2.7338181e+03 6.4693628e+02 2.4067136e-09 - -2.7448072e+03 4.8723900e+02 0.0000000e+00 - -2.7527360e+03 3.2580237e+02 0.0000000e+00 - -2.7575252e+03 1.6319540e+02 -2.4067136e-09 - -2.7591270e+03 0.0000000e+00 0.0000000e+00 - -2.7575252e+03 -1.6319540e+02 0.0000000e+00 - -2.7527360e+03 -3.2580237e+02 0.0000000e+00 - -2.7448072e+03 -4.8723900e+02 0.0000000e+00 - -2.7338181e+03 -6.4693628e+02 0.0000000e+00 - -2.7198775e+03 -8.0434386e+02 -2.4067136e-09 - -2.7031221e+03 -9.5893519e+02 -2.4067136e-09 - -2.6837149e+03 -1.1102118e+03 -2.4067136e-09 - -2.6618421e+03 -1.2577066e+03 0.0000000e+00 - -2.6377113e+03 -1.4009860e+03 0.0000000e+00 - -2.6115488e+03 -1.5396511e+03 0.0000000e+00 - -2.5835976e+03 -1.6733379e+03 2.4067136e-09 - -2.5541151e+03 -1.8017159e+03 -4.8134273e-09 - -2.5233716e+03 -1.9244865e+03 0.0000000e+00 - -2.4916491e+03 -2.0413803e+03 4.8134273e-09 - -2.4592405e+03 -2.1521534e+03 0.0000000e+00 - -2.4264494e+03 -2.2565837e+03 -4.8134273e-09 - -2.3935904e+03 -2.3544665e+03 4.8134273e-09 - -2.3609902e+03 -2.4456100e+03 -2.4067136e-09 - -2.3289887e+03 -2.5298307e+03 0.0000000e+00 - -2.2979411e+03 -2.6069492e+03 -2.4067136e-09 - -2.2682202e+03 -2.6767863e+03 4.8134273e-09 - -2.2402186e+03 -2.7391597e+03 -4.8134273e-09 - -2.2143513e+03 -2.7938822e+03 -2.4067136e-09 - -2.1910574e+03 -2.8407611e+03 0.0000000e+00 - -2.1708016e+03 -2.8795996e+03 0.0000000e+00 - -2.1540735e+03 -2.9102011e+03 2.4067136e-09 - -2.1413848e+03 -2.9323770e+03 4.8134273e-09 - -2.1332633e+03 -2.9459584e+03 0.0000000e+00 - -2.1302422e+03 -2.9508132e+03 0.0000000e+00 - -2.1328433e+03 -2.9468681e+03 0.0000000e+00 - -2.1415535e+03 -2.9341367e+03 0.0000000e+00 - -2.1567934e+03 -2.9127524e+03 0.0000000e+00 - -2.1788780e+03 -2.8830042e+03 0.0000000e+00 - -2.2079716e+03 -2.8453719e+03 0.0000000e+00 - -2.2440401e+03 -2.8005569e+03 -4.8134273e-09 - -2.2868055e+03 -2.7494997e+03 -4.8134273e-09 - -2.3357116e+03 -2.6933812e+03 7.2201409e-09 - -2.3899078e+03 -2.6335980e+03 0.0000000e+00 - -2.4482583e+03 -2.5717129e+03 4.8134273e-09 - -2.5093809e+03 -2.5093809e+03 0.0000000e+00 - -2.5717129e+03 -2.4482583e+03 0.0000000e+00 - -2.6335980e+03 -2.3899078e+03 0.0000000e+00 - -2.6933812e+03 -2.3357116e+03 -2.4067136e-09 - -2.7494997e+03 -2.2868055e+03 0.0000000e+00 - -2.8005569e+03 -2.2440401e+03 2.4067136e-09 - -2.8453719e+03 -2.2079716e+03 -2.4067136e-09 - -2.8830042e+03 -2.1788780e+03 0.0000000e+00 - -2.9127524e+03 -2.1567934e+03 0.0000000e+00 - -2.9341367e+03 -2.1415535e+03 0.0000000e+00 - -2.9468681e+03 -2.1328433e+03 -2.4067136e-09 - -2.9508132e+03 -2.1302422e+03 0.0000000e+00 - -2.9459584e+03 -2.1332633e+03 0.0000000e+00 - -2.9323770e+03 -2.1413848e+03 0.0000000e+00 - -2.9102011e+03 -2.1540735e+03 4.8134273e-09 - -2.8795996e+03 -2.1708016e+03 2.4067136e-09 - -2.8407611e+03 -2.1910574e+03 0.0000000e+00 - -2.7938822e+03 -2.2143513e+03 -2.4067136e-09 - -2.7391597e+03 -2.2402186e+03 0.0000000e+00 - -2.6767863e+03 -2.2682202e+03 0.0000000e+00 - -2.6069492e+03 -2.2979411e+03 0.0000000e+00 - -2.5298307e+03 -2.3289887e+03 0.0000000e+00 - -2.4456100e+03 -2.3609902e+03 0.0000000e+00 - -2.3544665e+03 -2.3935904e+03 2.4067136e-09 - -2.2565837e+03 -2.4264494e+03 0.0000000e+00 - -2.1521534e+03 -2.4592405e+03 0.0000000e+00 - -2.0413803e+03 -2.4916491e+03 0.0000000e+00 - -1.9244865e+03 -2.5233716e+03 -2.4067136e-09 - -1.8017159e+03 -2.5541151e+03 -4.8134273e-09 - -1.6733379e+03 -2.5835976e+03 0.0000000e+00 - -1.5396511e+03 -2.6115488e+03 4.8134273e-09 - -1.4009860e+03 -2.6377113e+03 2.4067136e-09 - -1.2577066e+03 -2.6618421e+03 0.0000000e+00 - -1.1102118e+03 -2.6837149e+03 0.0000000e+00 - -9.5893519e+02 -2.7031221e+03 0.0000000e+00 - -8.0434386e+02 -2.7198775e+03 -2.4067136e-09 - -6.4693628e+02 -2.7338181e+03 -4.8134273e-09 - -4.8723900e+02 -2.7448072e+03 0.0000000e+00 - -3.2580237e+02 -2.7527360e+03 2.4067136e-09 - -1.6319540e+02 -2.7575252e+03 4.8134273e-09 - -2.4067136e-09 -2.7591270e+03 0.0000000e+00 - 1.6319540e+02 -2.7575252e+03 4.8134273e-09 - 3.2580237e+02 -2.7527360e+03 2.4067136e-09 - 4.8723900e+02 -2.7448072e+03 0.0000000e+00 - 6.4693628e+02 -2.7338181e+03 2.4067136e-09 - 8.0434386e+02 -2.7198775e+03 0.0000000e+00 - 9.5893519e+02 -2.7031221e+03 0.0000000e+00 - 1.1102118e+03 -2.6837149e+03 -2.4067136e-09 - 1.2577066e+03 -2.6618421e+03 0.0000000e+00 - 1.4009860e+03 -2.6377113e+03 -2.4067136e-09 - 1.5396511e+03 -2.6115488e+03 0.0000000e+00 - 1.6733379e+03 -2.5835976e+03 2.4067136e-09 - 1.8017159e+03 -2.5541151e+03 2.4067136e-09 - 1.9244865e+03 -2.5233716e+03 -2.4067136e-09 - 2.0413803e+03 -2.4916491e+03 -2.4067136e-09 - 2.1521534e+03 -2.4592405e+03 0.0000000e+00 - 2.2565837e+03 -2.4264494e+03 0.0000000e+00 - 2.3544665e+03 -2.3935904e+03 -2.4067136e-09 - 2.4456100e+03 -2.3609902e+03 0.0000000e+00 - 2.5298307e+03 -2.3289887e+03 2.4067136e-09 - 2.6069492e+03 -2.2979411e+03 0.0000000e+00 - 2.6767863e+03 -2.2682202e+03 0.0000000e+00 - 2.7391597e+03 -2.2402186e+03 0.0000000e+00 - 2.7938822e+03 -2.2143513e+03 0.0000000e+00 - 2.8407611e+03 -2.1910574e+03 0.0000000e+00 - 2.8795996e+03 -2.1708016e+03 0.0000000e+00 - 2.9102011e+03 -2.1540735e+03 0.0000000e+00 - 2.9323770e+03 -2.1413848e+03 -2.4067136e-09 - 2.9459584e+03 -2.1332633e+03 0.0000000e+00 - 2.9508132e+03 -2.1302422e+03 0.0000000e+00 - 2.9468681e+03 -2.1328433e+03 0.0000000e+00 - 2.9341367e+03 -2.1415535e+03 0.0000000e+00 - 2.9127524e+03 -2.1567934e+03 0.0000000e+00 - 2.8830042e+03 -2.1788780e+03 0.0000000e+00 - 2.8453719e+03 -2.2079716e+03 0.0000000e+00 - 2.8005569e+03 -2.2440401e+03 0.0000000e+00 - 2.7494997e+03 -2.2868055e+03 0.0000000e+00 - 2.6933812e+03 -2.3357116e+03 0.0000000e+00 - 2.6335980e+03 -2.3899078e+03 0.0000000e+00 - 2.5717129e+03 -2.4482583e+03 0.0000000e+00 - 2.5093809e+03 -2.5093809e+03 0.0000000e+00 - 2.4482583e+03 -2.5717129e+03 0.0000000e+00 - 2.3899078e+03 -2.6335980e+03 0.0000000e+00 - 2.3357116e+03 -2.6933812e+03 0.0000000e+00 - 2.2868055e+03 -2.7494997e+03 0.0000000e+00 - 2.2440401e+03 -2.8005569e+03 0.0000000e+00 - 2.2079716e+03 -2.8453719e+03 0.0000000e+00 - 2.1788780e+03 -2.8830042e+03 0.0000000e+00 - 2.1567934e+03 -2.9127524e+03 0.0000000e+00 - 2.1415535e+03 -2.9341367e+03 0.0000000e+00 - 2.1328433e+03 -2.9468681e+03 0.0000000e+00 - 2.1302422e+03 -2.9508132e+03 0.0000000e+00 - 2.1332633e+03 -2.9459584e+03 0.0000000e+00 - 2.1413848e+03 -2.9323770e+03 0.0000000e+00 - 2.1540735e+03 -2.9102011e+03 0.0000000e+00 - 2.1708016e+03 -2.8795996e+03 0.0000000e+00 - 2.1910574e+03 -2.8407611e+03 0.0000000e+00 - 2.2143513e+03 -2.7938822e+03 0.0000000e+00 - 2.2402186e+03 -2.7391597e+03 0.0000000e+00 - 2.2682202e+03 -2.6767863e+03 -2.4067136e-09 - 2.2979411e+03 -2.6069492e+03 -2.4067136e-09 - 2.3289887e+03 -2.5298307e+03 -2.4067136e-09 - 2.3609902e+03 -2.4456100e+03 0.0000000e+00 - 2.3935904e+03 -2.3544665e+03 0.0000000e+00 - 2.4264494e+03 -2.2565837e+03 -2.4067136e-09 - 2.4592405e+03 -2.1521534e+03 0.0000000e+00 - 2.4916491e+03 -2.0413803e+03 0.0000000e+00 - 2.5233716e+03 -1.9244865e+03 0.0000000e+00 - 2.5541151e+03 -1.8017159e+03 0.0000000e+00 - 2.5835976e+03 -1.6733379e+03 -2.4067136e-09 - 2.6115488e+03 -1.5396511e+03 0.0000000e+00 - 2.6377113e+03 -1.4009860e+03 0.0000000e+00 - 2.6618421e+03 -1.2577066e+03 0.0000000e+00 - 2.6837149e+03 -1.1102118e+03 -2.4067136e-09 - 2.7031221e+03 -9.5893519e+02 4.8134273e-09 - 2.7198775e+03 -8.0434386e+02 0.0000000e+00 - 2.7338181e+03 -6.4693628e+02 0.0000000e+00 - 2.7448072e+03 -4.8723900e+02 -2.4067136e-09 - 2.7527360e+03 -3.2580237e+02 0.0000000e+00 - 2.7575252e+03 -1.6319540e+02 -2.4067136e-09 - 2.7591270e+03 0.0000000e+00 -2.4067136e-09 - 2.7582473e+03 -2.4067136e-09 -8.9606330e+01 - 2.7566484e+03 1.6308874e+02 -8.9516873e+01 - 2.7518675e+03 3.2558964e+02 -8.9248893e+01 - 2.7439527e+03 4.8692142e+02 -8.8803558e+01 - 2.7329828e+03 6.4651560e+02 -8.8182774e+01 - 2.7190668e+03 8.0382237e+02 -8.7389131e+01 - 2.7023411e+03 9.5831564e+02 -8.6425823e+01 - 2.6829684e+03 1.1094974e+03 -8.5296563e+01 - 2.6611347e+03 1.2569008e+03 -8.4005478e+01 - 2.6370475e+03 1.4000927e+03 -8.2557003e+01 - 2.6109328e+03 1.5386744e+03 -8.0955773e+01 - 2.5830333e+03 1.6722818e+03 -7.9206515e+01 - 2.5536061e+03 1.8005849e+03 -7.7313958e+01 - 2.5229214e+03 1.9232849e+03 -7.5282746e+01 - 2.4912610e+03 2.0401125e+03 -7.3117376e+01 - 2.4589174e+03 2.1508237e+03 -7.0822154e+01 - 2.4261941e+03 2.2551967e+03 -6.8401185e+01 - 2.3934056e+03 2.3530265e+03 -6.5858386e+01 - 2.3608782e+03 2.4441215e+03 -6.3197539e+01 - 2.3289517e+03 2.5282983e+03 -6.0422393e+01 - 2.2979810e+03 2.6053776e+03 -5.7536804e+01 - 2.2683385e+03 2.6751805e+03 -5.4544934e+01 - 2.2404164e+03 2.7375251e+03 -5.1451510e+01 - 2.2146292e+03 2.7922248e+03 -4.8262150e+01 - 2.1914152e+03 2.8390875e+03 -4.4983746e+01 - 2.1712384e+03 2.8779172e+03 -4.1624917e+01 - 2.1545870e+03 2.9085187e+03 -3.8196490e+01 - 2.1419715e+03 2.9307044e+03 -3.4711974e+01 - 2.1339180e+03 2.9443070e+03 -3.1187935e+01 - 2.1309578e+03 2.9491957e+03 -2.7644094e+01 - 2.1336106e+03 2.9452984e+03 -2.4102830e+01 - 2.1423617e+03 2.9326295e+03 -2.0587468e+01 - 2.1576307e+03 2.9113218e+03 -1.7118089e+01 - 2.1797341e+03 2.8816609e+03 -1.3702042e+01 - 2.2088436e+03 2.8441170e+03 -1.0312024e+01 - 2.2449482e+03 2.7993662e+03 -6.8309161e+00 - 2.2878430e+03 2.7482757e+03 -2.8905571e+00 - 2.3372459e+03 2.6917569e+03 2.7183229e+00 - 2.3938076e+03 2.6297375e+03 1.5043863e+01 - 2.4681658e+03 2.5522385e+03 5.9486760e+01 - 2.5099856e+03 2.5099856e+03 8.7295586e+01 - 2.5522385e+03 2.4681658e+03 5.9486760e+01 - 2.6297375e+03 2.3938076e+03 1.5043863e+01 - 2.6917569e+03 2.3372459e+03 2.7183229e+00 - 2.7482757e+03 2.2878430e+03 -2.8905571e+00 - 2.7993662e+03 2.2449482e+03 -6.8309161e+00 - 2.8441170e+03 2.2088436e+03 -1.0312024e+01 - 2.8816609e+03 2.1797341e+03 -1.3702042e+01 - 2.9113218e+03 2.1576307e+03 -1.7118089e+01 - 2.9326295e+03 2.1423617e+03 -2.0587468e+01 - 2.9452984e+03 2.1336106e+03 -2.4102830e+01 - 2.9491957e+03 2.1309578e+03 -2.7644094e+01 - 2.9443070e+03 2.1339180e+03 -3.1187935e+01 - 2.9307044e+03 2.1419715e+03 -3.4711974e+01 - 2.9085187e+03 2.1545870e+03 -3.8196490e+01 - 2.8779172e+03 2.1712384e+03 -4.1624917e+01 - 2.8390875e+03 2.1914152e+03 -4.4983746e+01 - 2.7922248e+03 2.2146292e+03 -4.8262150e+01 - 2.7375251e+03 2.2404164e+03 -5.1451510e+01 - 2.6751805e+03 2.2683385e+03 -5.4544934e+01 - 2.6053776e+03 2.2979810e+03 -5.7536804e+01 - 2.5282983e+03 2.3289517e+03 -6.0422393e+01 - 2.4441215e+03 2.3608782e+03 -6.3197539e+01 - 2.3530265e+03 2.3934056e+03 -6.5858386e+01 - 2.2551967e+03 2.4261941e+03 -6.8401185e+01 - 2.1508237e+03 2.4589174e+03 -7.0822154e+01 - 2.0401125e+03 2.4912610e+03 -7.3117376e+01 - 1.9232849e+03 2.5229214e+03 -7.5282746e+01 - 1.8005849e+03 2.5536061e+03 -7.7313958e+01 - 1.6722818e+03 2.5830333e+03 -7.9206515e+01 - 1.5386744e+03 2.6109328e+03 -8.0955773e+01 - 1.4000927e+03 2.6370475e+03 -8.2557003e+01 - 1.2569008e+03 2.6611347e+03 -8.4005478e+01 - 1.1094974e+03 2.6829684e+03 -8.5296563e+01 - 9.5831564e+02 2.7023411e+03 -8.6425823e+01 - 8.0382237e+02 2.7190668e+03 -8.7389131e+01 - 6.4651560e+02 2.7329828e+03 -8.8182774e+01 - 4.8692142e+02 2.7439527e+03 -8.8803558e+01 - 3.2558964e+02 2.7518675e+03 -8.9248893e+01 - 1.6308874e+02 2.7566484e+03 -8.9516873e+01 - 2.4067136e-09 2.7582473e+03 -8.9606330e+01 - -1.6308874e+02 2.7566484e+03 -8.9516873e+01 - -3.2558964e+02 2.7518675e+03 -8.9248893e+01 - -4.8692142e+02 2.7439527e+03 -8.8803558e+01 - -6.4651560e+02 2.7329828e+03 -8.8182774e+01 - -8.0382237e+02 2.7190668e+03 -8.7389131e+01 - -9.5831564e+02 2.7023411e+03 -8.6425823e+01 - -1.1094974e+03 2.6829684e+03 -8.5296563e+01 - -1.2569008e+03 2.6611347e+03 -8.4005478e+01 - -1.4000927e+03 2.6370475e+03 -8.2557003e+01 - -1.5386744e+03 2.6109328e+03 -8.0955773e+01 - -1.6722818e+03 2.5830333e+03 -7.9206515e+01 - -1.8005849e+03 2.5536061e+03 -7.7313958e+01 - -1.9232849e+03 2.5229214e+03 -7.5282746e+01 - -2.0401125e+03 2.4912610e+03 -7.3117376e+01 - -2.1508237e+03 2.4589174e+03 -7.0822154e+01 - -2.2551967e+03 2.4261941e+03 -6.8401185e+01 - -2.3530265e+03 2.3934056e+03 -6.5858386e+01 - -2.4441215e+03 2.3608782e+03 -6.3197539e+01 - -2.5282983e+03 2.3289517e+03 -6.0422393e+01 - -2.6053776e+03 2.2979810e+03 -5.7536804e+01 - -2.6751805e+03 2.2683385e+03 -5.4544934e+01 - -2.7375251e+03 2.2404164e+03 -5.1451510e+01 - -2.7922248e+03 2.2146292e+03 -4.8262150e+01 - -2.8390875e+03 2.1914152e+03 -4.4983746e+01 - -2.8779172e+03 2.1712384e+03 -4.1624917e+01 - -2.9085187e+03 2.1545870e+03 -3.8196490e+01 - -2.9307044e+03 2.1419715e+03 -3.4711974e+01 - -2.9443070e+03 2.1339180e+03 -3.1187935e+01 - -2.9491957e+03 2.1309578e+03 -2.7644094e+01 - -2.9452984e+03 2.1336106e+03 -2.4102830e+01 - -2.9326295e+03 2.1423617e+03 -2.0587468e+01 - -2.9113218e+03 2.1576307e+03 -1.7118089e+01 - -2.8816609e+03 2.1797341e+03 -1.3702042e+01 - -2.8441170e+03 2.2088436e+03 -1.0312024e+01 - -2.7993662e+03 2.2449482e+03 -6.8309161e+00 - -2.7482757e+03 2.2878430e+03 -2.8905570e+00 - -2.6917569e+03 2.3372459e+03 2.7183229e+00 - -2.6297375e+03 2.3938076e+03 1.5043863e+01 - -2.5522385e+03 2.4681658e+03 5.9486760e+01 - -2.5099856e+03 2.5099856e+03 8.7295586e+01 - -2.4681658e+03 2.5522385e+03 5.9486760e+01 - -2.3938076e+03 2.6297375e+03 1.5043863e+01 - -2.3372459e+03 2.6917569e+03 2.7183229e+00 - -2.2878430e+03 2.7482757e+03 -2.8905570e+00 - -2.2449482e+03 2.7993662e+03 -6.8309161e+00 - -2.2088436e+03 2.8441170e+03 -1.0312024e+01 - -2.1797341e+03 2.8816609e+03 -1.3702042e+01 - -2.1576307e+03 2.9113218e+03 -1.7118089e+01 - -2.1423617e+03 2.9326295e+03 -2.0587468e+01 - -2.1336106e+03 2.9452984e+03 -2.4102830e+01 - -2.1309578e+03 2.9491957e+03 -2.7644094e+01 - -2.1339180e+03 2.9443070e+03 -3.1187935e+01 - -2.1419715e+03 2.9307044e+03 -3.4711974e+01 - -2.1545870e+03 2.9085187e+03 -3.8196490e+01 - -2.1712384e+03 2.8779172e+03 -4.1624917e+01 - -2.1914152e+03 2.8390875e+03 -4.4983746e+01 - -2.2146292e+03 2.7922248e+03 -4.8262150e+01 - -2.2404164e+03 2.7375251e+03 -5.1451510e+01 - -2.2683385e+03 2.6751805e+03 -5.4544934e+01 - -2.2979810e+03 2.6053776e+03 -5.7536804e+01 - -2.3289517e+03 2.5282983e+03 -6.0422393e+01 - -2.3608782e+03 2.4441215e+03 -6.3197539e+01 - -2.3934056e+03 2.3530265e+03 -6.5858386e+01 - -2.4261941e+03 2.2551967e+03 -6.8401185e+01 - -2.4589174e+03 2.1508237e+03 -7.0822154e+01 - -2.4912610e+03 2.0401125e+03 -7.3117376e+01 - -2.5229214e+03 1.9232849e+03 -7.5282746e+01 - -2.5536061e+03 1.8005849e+03 -7.7313958e+01 - -2.5830333e+03 1.6722818e+03 -7.9206515e+01 - -2.6109328e+03 1.5386744e+03 -8.0955773e+01 - -2.6370475e+03 1.4000927e+03 -8.2557003e+01 - -2.6611347e+03 1.2569008e+03 -8.4005478e+01 - -2.6829684e+03 1.1094974e+03 -8.5296563e+01 - -2.7023411e+03 9.5831564e+02 -8.6425823e+01 - -2.7190668e+03 8.0382237e+02 -8.7389131e+01 - -2.7329828e+03 6.4651560e+02 -8.8182774e+01 - -2.7439527e+03 4.8692142e+02 -8.8803558e+01 - -2.7518675e+03 3.2558964e+02 -8.9248893e+01 - -2.7566484e+03 1.6308874e+02 -8.9516873e+01 - -2.7582473e+03 -2.4067136e-09 -8.9606330e+01 - -2.7566484e+03 -1.6308874e+02 -8.9516873e+01 - -2.7518675e+03 -3.2558964e+02 -8.9248893e+01 - -2.7439527e+03 -4.8692142e+02 -8.8803558e+01 - -2.7329828e+03 -6.4651560e+02 -8.8182774e+01 - -2.7190668e+03 -8.0382237e+02 -8.7389131e+01 - -2.7023411e+03 -9.5831564e+02 -8.6425823e+01 - -2.6829684e+03 -1.1094974e+03 -8.5296563e+01 - -2.6611347e+03 -1.2569008e+03 -8.4005478e+01 - -2.6370475e+03 -1.4000927e+03 -8.2557003e+01 - -2.6109328e+03 -1.5386744e+03 -8.0955773e+01 - -2.5830333e+03 -1.6722818e+03 -7.9206515e+01 - -2.5536061e+03 -1.8005849e+03 -7.7313958e+01 - -2.5229214e+03 -1.9232849e+03 -7.5282746e+01 - -2.4912610e+03 -2.0401125e+03 -7.3117376e+01 - -2.4589174e+03 -2.1508237e+03 -7.0822154e+01 - -2.4261941e+03 -2.2551967e+03 -6.8401185e+01 - -2.3934056e+03 -2.3530265e+03 -6.5858386e+01 - -2.3608782e+03 -2.4441215e+03 -6.3197539e+01 - -2.3289517e+03 -2.5282983e+03 -6.0422393e+01 - -2.2979810e+03 -2.6053776e+03 -5.7536804e+01 - -2.2683385e+03 -2.6751805e+03 -5.4544934e+01 - -2.2404164e+03 -2.7375251e+03 -5.1451510e+01 - -2.2146292e+03 -2.7922248e+03 -4.8262150e+01 - -2.1914152e+03 -2.8390875e+03 -4.4983746e+01 - -2.1712384e+03 -2.8779172e+03 -4.1624917e+01 - -2.1545870e+03 -2.9085187e+03 -3.8196490e+01 - -2.1419715e+03 -2.9307044e+03 -3.4711974e+01 - -2.1339180e+03 -2.9443070e+03 -3.1187935e+01 - -2.1309578e+03 -2.9491957e+03 -2.7644094e+01 - -2.1336106e+03 -2.9452984e+03 -2.4102830e+01 - -2.1423617e+03 -2.9326295e+03 -2.0587468e+01 - -2.1576307e+03 -2.9113218e+03 -1.7118089e+01 - -2.1797341e+03 -2.8816609e+03 -1.3702042e+01 - -2.2088436e+03 -2.8441170e+03 -1.0312024e+01 - -2.2449482e+03 -2.7993662e+03 -6.8309161e+00 - -2.2878430e+03 -2.7482757e+03 -2.8905570e+00 - -2.3372459e+03 -2.6917569e+03 2.7183229e+00 - -2.3938076e+03 -2.6297375e+03 1.5043863e+01 - -2.4681658e+03 -2.5522385e+03 5.9486760e+01 - -2.5099856e+03 -2.5099856e+03 8.7295586e+01 - -2.5522385e+03 -2.4681658e+03 5.9486760e+01 - -2.6297375e+03 -2.3938076e+03 1.5043863e+01 - -2.6917569e+03 -2.3372459e+03 2.7183229e+00 - -2.7482757e+03 -2.2878430e+03 -2.8905571e+00 - -2.7993662e+03 -2.2449482e+03 -6.8309161e+00 - -2.8441170e+03 -2.2088436e+03 -1.0312024e+01 - -2.8816609e+03 -2.1797341e+03 -1.3702042e+01 - -2.9113218e+03 -2.1576307e+03 -1.7118089e+01 - -2.9326295e+03 -2.1423617e+03 -2.0587468e+01 - -2.9452984e+03 -2.1336106e+03 -2.4102830e+01 - -2.9491957e+03 -2.1309578e+03 -2.7644094e+01 - -2.9443070e+03 -2.1339180e+03 -3.1187935e+01 - -2.9307044e+03 -2.1419715e+03 -3.4711974e+01 - -2.9085187e+03 -2.1545870e+03 -3.8196490e+01 - -2.8779172e+03 -2.1712384e+03 -4.1624917e+01 - -2.8390875e+03 -2.1914152e+03 -4.4983746e+01 - -2.7922248e+03 -2.2146292e+03 -4.8262150e+01 - -2.7375251e+03 -2.2404164e+03 -5.1451510e+01 - -2.6751805e+03 -2.2683385e+03 -5.4544934e+01 - -2.6053776e+03 -2.2979810e+03 -5.7536804e+01 - -2.5282983e+03 -2.3289517e+03 -6.0422393e+01 - -2.4441215e+03 -2.3608782e+03 -6.3197539e+01 - -2.3530265e+03 -2.3934056e+03 -6.5858386e+01 - -2.2551967e+03 -2.4261941e+03 -6.8401185e+01 - -2.1508237e+03 -2.4589174e+03 -7.0822154e+01 - -2.0401125e+03 -2.4912610e+03 -7.3117376e+01 - -1.9232849e+03 -2.5229214e+03 -7.5282746e+01 - -1.8005849e+03 -2.5536061e+03 -7.7313958e+01 - -1.6722818e+03 -2.5830333e+03 -7.9206515e+01 - -1.5386744e+03 -2.6109328e+03 -8.0955773e+01 - -1.4000927e+03 -2.6370475e+03 -8.2557003e+01 - -1.2569008e+03 -2.6611347e+03 -8.4005478e+01 - -1.1094974e+03 -2.6829684e+03 -8.5296563e+01 - -9.5831564e+02 -2.7023411e+03 -8.6425823e+01 - -8.0382237e+02 -2.7190668e+03 -8.7389131e+01 - -6.4651560e+02 -2.7329828e+03 -8.8182774e+01 - -4.8692142e+02 -2.7439527e+03 -8.8803558e+01 - -3.2558964e+02 -2.7518675e+03 -8.9248893e+01 - -1.6308874e+02 -2.7566484e+03 -8.9516873e+01 - 0.0000000e+00 -2.7582473e+03 -8.9606330e+01 - 1.6308874e+02 -2.7566484e+03 -8.9516873e+01 - 3.2558964e+02 -2.7518675e+03 -8.9248893e+01 - 4.8692142e+02 -2.7439527e+03 -8.8803558e+01 - 6.4651560e+02 -2.7329828e+03 -8.8182774e+01 - 8.0382237e+02 -2.7190668e+03 -8.7389131e+01 - 9.5831564e+02 -2.7023411e+03 -8.6425823e+01 - 1.1094974e+03 -2.6829684e+03 -8.5296563e+01 - 1.2569008e+03 -2.6611347e+03 -8.4005478e+01 - 1.4000927e+03 -2.6370475e+03 -8.2557003e+01 - 1.5386744e+03 -2.6109328e+03 -8.0955773e+01 - 1.6722818e+03 -2.5830333e+03 -7.9206515e+01 - 1.8005849e+03 -2.5536061e+03 -7.7313958e+01 - 1.9232849e+03 -2.5229214e+03 -7.5282746e+01 - 2.0401125e+03 -2.4912610e+03 -7.3117376e+01 - 2.1508237e+03 -2.4589174e+03 -7.0822154e+01 - 2.2551967e+03 -2.4261941e+03 -6.8401185e+01 - 2.3530265e+03 -2.3934056e+03 -6.5858386e+01 - 2.4441215e+03 -2.3608782e+03 -6.3197539e+01 - 2.5282983e+03 -2.3289517e+03 -6.0422393e+01 - 2.6053776e+03 -2.2979810e+03 -5.7536804e+01 - 2.6751805e+03 -2.2683385e+03 -5.4544934e+01 - 2.7375251e+03 -2.2404164e+03 -5.1451510e+01 - 2.7922248e+03 -2.2146292e+03 -4.8262150e+01 - 2.8390875e+03 -2.1914152e+03 -4.4983746e+01 - 2.8779172e+03 -2.1712384e+03 -4.1624917e+01 - 2.9085187e+03 -2.1545870e+03 -3.8196490e+01 - 2.9307044e+03 -2.1419715e+03 -3.4711974e+01 - 2.9443070e+03 -2.1339180e+03 -3.1187935e+01 - 2.9491957e+03 -2.1309578e+03 -2.7644094e+01 - 2.9452984e+03 -2.1336106e+03 -2.4102830e+01 - 2.9326295e+03 -2.1423617e+03 -2.0587468e+01 - 2.9113218e+03 -2.1576307e+03 -1.7118089e+01 - 2.8816609e+03 -2.1797341e+03 -1.3702042e+01 - 2.8441170e+03 -2.2088436e+03 -1.0312024e+01 - 2.7993662e+03 -2.2449482e+03 -6.8309161e+00 - 2.7482757e+03 -2.2878430e+03 -2.8905570e+00 - 2.6917569e+03 -2.3372459e+03 2.7183229e+00 - 2.6297375e+03 -2.3938076e+03 1.5043863e+01 - 2.5522385e+03 -2.4681658e+03 5.9486760e+01 - 2.5099856e+03 -2.5099856e+03 8.7295586e+01 - 2.4681658e+03 -2.5522385e+03 5.9486760e+01 - 2.3938076e+03 -2.6297375e+03 1.5043863e+01 - 2.3372459e+03 -2.6917569e+03 2.7183229e+00 - 2.2878430e+03 -2.7482757e+03 -2.8905570e+00 - 2.2449482e+03 -2.7993662e+03 -6.8309161e+00 - 2.2088436e+03 -2.8441170e+03 -1.0312024e+01 - 2.1797341e+03 -2.8816609e+03 -1.3702042e+01 - 2.1576307e+03 -2.9113218e+03 -1.7118089e+01 - 2.1423617e+03 -2.9326295e+03 -2.0587468e+01 - 2.1336106e+03 -2.9452984e+03 -2.4102830e+01 - 2.1309578e+03 -2.9491957e+03 -2.7644094e+01 - 2.1339180e+03 -2.9443070e+03 -3.1187935e+01 - 2.1419715e+03 -2.9307044e+03 -3.4711974e+01 - 2.1545870e+03 -2.9085187e+03 -3.8196490e+01 - 2.1712384e+03 -2.8779172e+03 -4.1624917e+01 - 2.1914152e+03 -2.8390875e+03 -4.4983746e+01 - 2.2146292e+03 -2.7922248e+03 -4.8262150e+01 - 2.2404164e+03 -2.7375251e+03 -5.1451510e+01 - 2.2683385e+03 -2.6751805e+03 -5.4544934e+01 - 2.2979810e+03 -2.6053776e+03 -5.7536804e+01 - 2.3289517e+03 -2.5282983e+03 -6.0422393e+01 - 2.3608782e+03 -2.4441215e+03 -6.3197539e+01 - 2.3934056e+03 -2.3530265e+03 -6.5858386e+01 - 2.4261941e+03 -2.2551967e+03 -6.8401185e+01 - 2.4589174e+03 -2.1508237e+03 -7.0822154e+01 - 2.4912610e+03 -2.0401125e+03 -7.3117376e+01 - 2.5229214e+03 -1.9232849e+03 -7.5282746e+01 - 2.5536061e+03 -1.8005849e+03 -7.7313958e+01 - 2.5830333e+03 -1.6722818e+03 -7.9206515e+01 - 2.6109328e+03 -1.5386744e+03 -8.0955773e+01 - 2.6370475e+03 -1.4000927e+03 -8.2557003e+01 - 2.6611347e+03 -1.2569008e+03 -8.4005478e+01 - 2.6829684e+03 -1.1094974e+03 -8.5296563e+01 - 2.7023411e+03 -9.5831564e+02 -8.6425823e+01 - 2.7190668e+03 -8.0382237e+02 -8.7389131e+01 - 2.7329828e+03 -6.4651560e+02 -8.8182774e+01 - 2.7439527e+03 -4.8692142e+02 -8.8803558e+01 - 2.7518675e+03 -3.2558964e+02 -8.9248893e+01 - 2.7566484e+03 -1.6308874e+02 -8.9516873e+01 - 2.7582473e+03 -2.4067136e-09 -8.9606330e+01 - 2.7556106e+03 2.4067136e-09 -1.7911041e+02 - 2.7540201e+03 1.6276841e+02 -1.7893133e+02 - 2.7492644e+03 3.2495080e+02 -1.7839484e+02 - 2.7413914e+03 4.8596763e+02 -1.7750325e+02 - 2.7304796e+03 6.4525212e+02 -1.7626030e+02 - 2.7166374e+03 8.0225600e+02 -1.7467106e+02 - 2.7000009e+03 9.5645461e+02 -1.7274180e+02 - 2.6807320e+03 1.1073511e+03 -1.7047979e+02 - 2.6590162e+03 1.2544799e+03 -1.6789307e+02 - 2.6350601e+03 1.3974084e+03 -1.6499029e+02 - 2.6090892e+03 1.5357387e+03 -1.6178043e+02 - 2.5813453e+03 1.6691073e+03 -1.5827262e+02 - 2.5520850e+03 1.7971842e+03 -1.5447590e+02 - 2.5215777e+03 1.9196710e+03 -1.5039910e+02 - 2.4901046e+03 2.0362983e+03 -1.4605061e+02 - 2.4579577e+03 2.1468222e+03 -1.4143835e+02 - 2.4254398e+03 2.2510207e+03 -1.3656966e+02 - 2.3928650e+03 2.3486890e+03 -1.3145129e+02 - 2.3605591e+03 2.4396352e+03 -1.2608945e+02 - 2.3288612e+03 2.5236763e+03 -1.2048992e+02 - 2.2981257e+03 2.6006332e+03 -1.1465821e+02 - 2.2687242e+03 2.6703276e+03 -1.0859979e+02 - 2.2410482e+03 2.7325784e+03 -1.0232038e+02 - 2.2155108e+03 2.7872001e+03 -9.5826252e+01 - 2.1925492e+03 2.8340020e+03 -8.9124516e+01 - 2.1726256e+03 2.8727899e+03 -8.2223298e+01 - 2.1562266e+03 2.9033703e+03 -7.5131596e+01 - 2.1438607e+03 2.9255574e+03 -6.7858522e+01 - 2.1360528e+03 2.9391848e+03 -6.0411294e+01 - 2.1333343e+03 2.9441204e+03 -5.2790850e+01 - 2.1362286e+03 2.9402874e+03 -4.4982907e+01 - 2.1452324e+03 2.9276865e+03 -3.6940047e+01 - 2.1607933e+03 2.9064201e+03 -2.8545338e+01 - 2.1832933e+03 2.8767066e+03 -1.9535404e+01 - 2.2130581e+03 2.8388632e+03 -9.3264893e+00 - 2.2504647e+03 2.7931871e+03 3.4157444e+00 - 2.2964024e+03 2.7394855e+03 2.1947421e+01 - 2.3540222e+03 2.6753497e+03 5.4602974e+01 - 2.4312213e+03 2.5937945e+03 1.1526007e+02 - 2.5011706e+03 2.5223759e+03 1.6687833e+02 - 2.5117529e+03 2.5117529e+03 1.7231498e+02 - 2.5223759e+03 2.5011706e+03 1.6687833e+02 - 2.5937945e+03 2.4312213e+03 1.1526007e+02 - 2.6753497e+03 2.3540222e+03 5.4602974e+01 - 2.7394855e+03 2.2964024e+03 2.1947421e+01 - 2.7931871e+03 2.2504647e+03 3.4157444e+00 - 2.8388632e+03 2.2130581e+03 -9.3264893e+00 - 2.8767066e+03 2.1832933e+03 -1.9535404e+01 - 2.9064201e+03 2.1607933e+03 -2.8545338e+01 - 2.9276865e+03 2.1452324e+03 -3.6940047e+01 - 2.9402874e+03 2.1362286e+03 -4.4982907e+01 - 2.9441204e+03 2.1333343e+03 -5.2790850e+01 - 2.9391848e+03 2.1360528e+03 -6.0411294e+01 - 2.9255574e+03 2.1438607e+03 -6.7858522e+01 - 2.9033703e+03 2.1562266e+03 -7.5131596e+01 - 2.8727899e+03 2.1726256e+03 -8.2223298e+01 - 2.8340020e+03 2.1925492e+03 -8.9124516e+01 - 2.7872001e+03 2.2155108e+03 -9.5826252e+01 - 2.7325784e+03 2.2410482e+03 -1.0232038e+02 - 2.6703276e+03 2.2687242e+03 -1.0859979e+02 - 2.6006332e+03 2.2981257e+03 -1.1465821e+02 - 2.5236763e+03 2.3288612e+03 -1.2048992e+02 - 2.4396352e+03 2.3605591e+03 -1.2608945e+02 - 2.3486890e+03 2.3928650e+03 -1.3145129e+02 - 2.2510207e+03 2.4254398e+03 -1.3656966e+02 - 2.1468222e+03 2.4579577e+03 -1.4143835e+02 - 2.0362983e+03 2.4901046e+03 -1.4605061e+02 - 1.9196710e+03 2.5215777e+03 -1.5039910e+02 - 1.7971842e+03 2.5520850e+03 -1.5447590e+02 - 1.6691073e+03 2.5813453e+03 -1.5827262e+02 - 1.5357387e+03 2.6090892e+03 -1.6178043e+02 - 1.3974084e+03 2.6350601e+03 -1.6499029e+02 - 1.2544799e+03 2.6590162e+03 -1.6789307e+02 - 1.1073511e+03 2.6807320e+03 -1.7047979e+02 - 9.5645461e+02 2.7000009e+03 -1.7274180e+02 - 8.0225600e+02 2.7166374e+03 -1.7467106e+02 - 6.4525212e+02 2.7304796e+03 -1.7626030e+02 - 4.8596763e+02 2.7413914e+03 -1.7750325e+02 - 3.2495080e+02 2.7492644e+03 -1.7839484e+02 - 1.6276841e+02 2.7540201e+03 -1.7893133e+02 - 0.0000000e+00 2.7556106e+03 -1.7911041e+02 - -1.6276841e+02 2.7540201e+03 -1.7893133e+02 - -3.2495080e+02 2.7492644e+03 -1.7839484e+02 - -4.8596763e+02 2.7413914e+03 -1.7750325e+02 - -6.4525212e+02 2.7304796e+03 -1.7626030e+02 - -8.0225600e+02 2.7166374e+03 -1.7467106e+02 - -9.5645461e+02 2.7000009e+03 -1.7274180e+02 - -1.1073511e+03 2.6807320e+03 -1.7047979e+02 - -1.2544799e+03 2.6590162e+03 -1.6789307e+02 - -1.3974084e+03 2.6350601e+03 -1.6499029e+02 - -1.5357387e+03 2.6090892e+03 -1.6178043e+02 - -1.6691073e+03 2.5813453e+03 -1.5827262e+02 - -1.7971842e+03 2.5520850e+03 -1.5447590e+02 - -1.9196710e+03 2.5215777e+03 -1.5039910e+02 - -2.0362983e+03 2.4901046e+03 -1.4605061e+02 - -2.1468222e+03 2.4579577e+03 -1.4143835e+02 - -2.2510207e+03 2.4254398e+03 -1.3656966e+02 - -2.3486890e+03 2.3928650e+03 -1.3145129e+02 - -2.4396352e+03 2.3605591e+03 -1.2608945e+02 - -2.5236763e+03 2.3288612e+03 -1.2048992e+02 - -2.6006332e+03 2.2981257e+03 -1.1465821e+02 - -2.6703276e+03 2.2687242e+03 -1.0859979e+02 - -2.7325784e+03 2.2410482e+03 -1.0232038e+02 - -2.7872001e+03 2.2155108e+03 -9.5826252e+01 - -2.8340020e+03 2.1925492e+03 -8.9124516e+01 - -2.8727899e+03 2.1726256e+03 -8.2223298e+01 - -2.9033703e+03 2.1562266e+03 -7.5131596e+01 - -2.9255574e+03 2.1438607e+03 -6.7858522e+01 - -2.9391848e+03 2.1360528e+03 -6.0411294e+01 - -2.9441204e+03 2.1333343e+03 -5.2790850e+01 - -2.9402874e+03 2.1362286e+03 -4.4982907e+01 - -2.9276865e+03 2.1452324e+03 -3.6940047e+01 - -2.9064201e+03 2.1607933e+03 -2.8545338e+01 - -2.8767066e+03 2.1832933e+03 -1.9535404e+01 - -2.8388632e+03 2.2130581e+03 -9.3264893e+00 - -2.7931871e+03 2.2504647e+03 3.4157444e+00 - -2.7394855e+03 2.2964024e+03 2.1947421e+01 - -2.6753497e+03 2.3540222e+03 5.4602974e+01 - -2.5937945e+03 2.4312213e+03 1.1526007e+02 - -2.5223759e+03 2.5011706e+03 1.6687833e+02 - -2.5117529e+03 2.5117529e+03 1.7231498e+02 - -2.5011706e+03 2.5223759e+03 1.6687833e+02 - -2.4312213e+03 2.5937945e+03 1.1526007e+02 - -2.3540222e+03 2.6753497e+03 5.4602974e+01 - -2.2964024e+03 2.7394855e+03 2.1947421e+01 - -2.2504647e+03 2.7931871e+03 3.4157444e+00 - -2.2130581e+03 2.8388632e+03 -9.3264893e+00 - -2.1832933e+03 2.8767066e+03 -1.9535404e+01 - -2.1607933e+03 2.9064201e+03 -2.8545338e+01 - -2.1452324e+03 2.9276865e+03 -3.6940047e+01 - -2.1362286e+03 2.9402874e+03 -4.4982907e+01 - -2.1333343e+03 2.9441204e+03 -5.2790850e+01 - -2.1360528e+03 2.9391848e+03 -6.0411294e+01 - -2.1438607e+03 2.9255574e+03 -6.7858522e+01 - -2.1562266e+03 2.9033703e+03 -7.5131596e+01 - -2.1726256e+03 2.8727899e+03 -8.2223298e+01 - -2.1925492e+03 2.8340020e+03 -8.9124516e+01 - -2.2155108e+03 2.7872001e+03 -9.5826252e+01 - -2.2410482e+03 2.7325784e+03 -1.0232038e+02 - -2.2687242e+03 2.6703276e+03 -1.0859979e+02 - -2.2981257e+03 2.6006332e+03 -1.1465821e+02 - -2.3288612e+03 2.5236763e+03 -1.2048992e+02 - -2.3605591e+03 2.4396352e+03 -1.2608945e+02 - -2.3928650e+03 2.3486890e+03 -1.3145129e+02 - -2.4254398e+03 2.2510207e+03 -1.3656966e+02 - -2.4579577e+03 2.1468222e+03 -1.4143835e+02 - -2.4901046e+03 2.0362983e+03 -1.4605061e+02 - -2.5215777e+03 1.9196710e+03 -1.5039910e+02 - -2.5520850e+03 1.7971842e+03 -1.5447590e+02 - -2.5813453e+03 1.6691073e+03 -1.5827262e+02 - -2.6090892e+03 1.5357387e+03 -1.6178043e+02 - -2.6350601e+03 1.3974084e+03 -1.6499029e+02 - -2.6590162e+03 1.2544799e+03 -1.6789307e+02 - -2.6807320e+03 1.1073511e+03 -1.7047979e+02 - -2.7000009e+03 9.5645461e+02 -1.7274180e+02 - -2.7166374e+03 8.0225600e+02 -1.7467106e+02 - -2.7304796e+03 6.4525212e+02 -1.7626030e+02 - -2.7413914e+03 4.8596763e+02 -1.7750325e+02 - -2.7492644e+03 3.2495080e+02 -1.7839484e+02 - -2.7540201e+03 1.6276841e+02 -1.7893133e+02 - -2.7556106e+03 2.4067136e-09 -1.7911041e+02 - -2.7540201e+03 -1.6276841e+02 -1.7893133e+02 - -2.7492644e+03 -3.2495080e+02 -1.7839484e+02 - -2.7413914e+03 -4.8596763e+02 -1.7750325e+02 - -2.7304796e+03 -6.4525212e+02 -1.7626030e+02 - -2.7166374e+03 -8.0225600e+02 -1.7467106e+02 - -2.7000009e+03 -9.5645461e+02 -1.7274180e+02 - -2.6807320e+03 -1.1073511e+03 -1.7047979e+02 - -2.6590162e+03 -1.2544799e+03 -1.6789307e+02 - -2.6350601e+03 -1.3974084e+03 -1.6499029e+02 - -2.6090892e+03 -1.5357387e+03 -1.6178043e+02 - -2.5813453e+03 -1.6691073e+03 -1.5827262e+02 - -2.5520850e+03 -1.7971842e+03 -1.5447590e+02 - -2.5215777e+03 -1.9196710e+03 -1.5039910e+02 - -2.4901046e+03 -2.0362983e+03 -1.4605061e+02 - -2.4579577e+03 -2.1468222e+03 -1.4143835e+02 - -2.4254398e+03 -2.2510207e+03 -1.3656966e+02 - -2.3928650e+03 -2.3486890e+03 -1.3145129e+02 - -2.3605591e+03 -2.4396352e+03 -1.2608945e+02 - -2.3288612e+03 -2.5236763e+03 -1.2048992e+02 - -2.2981257e+03 -2.6006332e+03 -1.1465821e+02 - -2.2687242e+03 -2.6703276e+03 -1.0859979e+02 - -2.2410482e+03 -2.7325784e+03 -1.0232038e+02 - -2.2155108e+03 -2.7872001e+03 -9.5826252e+01 - -2.1925492e+03 -2.8340020e+03 -8.9124516e+01 - -2.1726256e+03 -2.8727899e+03 -8.2223298e+01 - -2.1562266e+03 -2.9033703e+03 -7.5131596e+01 - -2.1438607e+03 -2.9255574e+03 -6.7858522e+01 - -2.1360528e+03 -2.9391848e+03 -6.0411294e+01 - -2.1333343e+03 -2.9441204e+03 -5.2790850e+01 - -2.1362286e+03 -2.9402874e+03 -4.4982907e+01 - -2.1452324e+03 -2.9276865e+03 -3.6940047e+01 - -2.1607933e+03 -2.9064201e+03 -2.8545338e+01 - -2.1832933e+03 -2.8767066e+03 -1.9535404e+01 - -2.2130581e+03 -2.8388632e+03 -9.3264893e+00 - -2.2504647e+03 -2.7931871e+03 3.4157444e+00 - -2.2964024e+03 -2.7394855e+03 2.1947421e+01 - -2.3540222e+03 -2.6753497e+03 5.4602974e+01 - -2.4312213e+03 -2.5937945e+03 1.1526007e+02 - -2.5011706e+03 -2.5223759e+03 1.6687833e+02 - -2.5117529e+03 -2.5117529e+03 1.7231498e+02 - -2.5223759e+03 -2.5011706e+03 1.6687833e+02 - -2.5937945e+03 -2.4312213e+03 1.1526007e+02 - -2.6753497e+03 -2.3540222e+03 5.4602974e+01 - -2.7394855e+03 -2.2964024e+03 2.1947421e+01 - -2.7931871e+03 -2.2504647e+03 3.4157444e+00 - -2.8388632e+03 -2.2130581e+03 -9.3264893e+00 - -2.8767066e+03 -2.1832933e+03 -1.9535404e+01 - -2.9064201e+03 -2.1607933e+03 -2.8545338e+01 - -2.9276865e+03 -2.1452324e+03 -3.6940047e+01 - -2.9402874e+03 -2.1362286e+03 -4.4982907e+01 - -2.9441204e+03 -2.1333343e+03 -5.2790850e+01 - -2.9391848e+03 -2.1360528e+03 -6.0411294e+01 - -2.9255574e+03 -2.1438607e+03 -6.7858522e+01 - -2.9033703e+03 -2.1562266e+03 -7.5131596e+01 - -2.8727899e+03 -2.1726256e+03 -8.2223298e+01 - -2.8340020e+03 -2.1925492e+03 -8.9124516e+01 - -2.7872001e+03 -2.2155108e+03 -9.5826252e+01 - -2.7325784e+03 -2.2410482e+03 -1.0232038e+02 - -2.6703276e+03 -2.2687242e+03 -1.0859979e+02 - -2.6006332e+03 -2.2981257e+03 -1.1465821e+02 - -2.5236763e+03 -2.3288612e+03 -1.2048992e+02 - -2.4396352e+03 -2.3605591e+03 -1.2608945e+02 - -2.3486890e+03 -2.3928650e+03 -1.3145129e+02 - -2.2510207e+03 -2.4254398e+03 -1.3656966e+02 - -2.1468222e+03 -2.4579577e+03 -1.4143835e+02 - -2.0362983e+03 -2.4901046e+03 -1.4605061e+02 - -1.9196710e+03 -2.5215777e+03 -1.5039910e+02 - -1.7971842e+03 -2.5520850e+03 -1.5447590e+02 - -1.6691073e+03 -2.5813453e+03 -1.5827262e+02 - -1.5357387e+03 -2.6090892e+03 -1.6178043e+02 - -1.3974084e+03 -2.6350601e+03 -1.6499029e+02 - -1.2544799e+03 -2.6590162e+03 -1.6789307e+02 - -1.1073511e+03 -2.6807320e+03 -1.7047979e+02 - -9.5645461e+02 -2.7000009e+03 -1.7274180e+02 - -8.0225600e+02 -2.7166374e+03 -1.7467106e+02 - -6.4525212e+02 -2.7304796e+03 -1.7626030e+02 - -4.8596763e+02 -2.7413914e+03 -1.7750325e+02 - -3.2495080e+02 -2.7492644e+03 -1.7839484e+02 - -1.6276841e+02 -2.7540201e+03 -1.7893133e+02 - -4.8134273e-09 -2.7556106e+03 -1.7911041e+02 - 1.6276841e+02 -2.7540201e+03 -1.7893133e+02 - 3.2495080e+02 -2.7492644e+03 -1.7839484e+02 - 4.8596763e+02 -2.7413914e+03 -1.7750325e+02 - 6.4525212e+02 -2.7304796e+03 -1.7626030e+02 - 8.0225600e+02 -2.7166374e+03 -1.7467106e+02 - 9.5645461e+02 -2.7000009e+03 -1.7274180e+02 - 1.1073511e+03 -2.6807320e+03 -1.7047979e+02 - 1.2544799e+03 -2.6590162e+03 -1.6789307e+02 - 1.3974084e+03 -2.6350601e+03 -1.6499029e+02 - 1.5357387e+03 -2.6090892e+03 -1.6178043e+02 - 1.6691073e+03 -2.5813453e+03 -1.5827262e+02 - 1.7971842e+03 -2.5520850e+03 -1.5447590e+02 - 1.9196710e+03 -2.5215777e+03 -1.5039910e+02 - 2.0362983e+03 -2.4901046e+03 -1.4605061e+02 - 2.1468222e+03 -2.4579577e+03 -1.4143835e+02 - 2.2510207e+03 -2.4254398e+03 -1.3656966e+02 - 2.3486890e+03 -2.3928650e+03 -1.3145129e+02 - 2.4396352e+03 -2.3605591e+03 -1.2608945e+02 - 2.5236763e+03 -2.3288612e+03 -1.2048992e+02 - 2.6006332e+03 -2.2981257e+03 -1.1465821e+02 - 2.6703276e+03 -2.2687242e+03 -1.0859979e+02 - 2.7325784e+03 -2.2410482e+03 -1.0232038e+02 - 2.7872001e+03 -2.2155108e+03 -9.5826252e+01 - 2.8340020e+03 -2.1925492e+03 -8.9124516e+01 - 2.8727899e+03 -2.1726256e+03 -8.2223298e+01 - 2.9033703e+03 -2.1562266e+03 -7.5131596e+01 - 2.9255574e+03 -2.1438607e+03 -6.7858522e+01 - 2.9391848e+03 -2.1360528e+03 -6.0411294e+01 - 2.9441204e+03 -2.1333343e+03 -5.2790850e+01 - 2.9402874e+03 -2.1362286e+03 -4.4982907e+01 - 2.9276865e+03 -2.1452324e+03 -3.6940047e+01 - 2.9064201e+03 -2.1607933e+03 -2.8545338e+01 - 2.8767066e+03 -2.1832933e+03 -1.9535404e+01 - 2.8388632e+03 -2.2130581e+03 -9.3264893e+00 - 2.7931871e+03 -2.2504647e+03 3.4157444e+00 - 2.7394855e+03 -2.2964024e+03 2.1947421e+01 - 2.6753497e+03 -2.3540222e+03 5.4602974e+01 - 2.5937945e+03 -2.4312213e+03 1.1526007e+02 - 2.5223759e+03 -2.5011706e+03 1.6687833e+02 - 2.5117529e+03 -2.5117529e+03 1.7231498e+02 - 2.5011706e+03 -2.5223759e+03 1.6687833e+02 - 2.4312213e+03 -2.5937945e+03 1.1526007e+02 - 2.3540222e+03 -2.6753497e+03 5.4602974e+01 - 2.2964024e+03 -2.7394855e+03 2.1947421e+01 - 2.2504647e+03 -2.7931871e+03 3.4157444e+00 - 2.2130581e+03 -2.8388632e+03 -9.3264893e+00 - 2.1832933e+03 -2.8767066e+03 -1.9535404e+01 - 2.1607933e+03 -2.9064201e+03 -2.8545338e+01 - 2.1452324e+03 -2.9276865e+03 -3.6940047e+01 - 2.1362286e+03 -2.9402874e+03 -4.4982907e+01 - 2.1333343e+03 -2.9441204e+03 -5.2790850e+01 - 2.1360528e+03 -2.9391848e+03 -6.0411294e+01 - 2.1438607e+03 -2.9255574e+03 -6.7858522e+01 - 2.1562266e+03 -2.9033703e+03 -7.5131596e+01 - 2.1726256e+03 -2.8727899e+03 -8.2223298e+01 - 2.1925492e+03 -2.8340020e+03 -8.9124516e+01 - 2.2155108e+03 -2.7872001e+03 -9.5826252e+01 - 2.2410482e+03 -2.7325784e+03 -1.0232038e+02 - 2.2687242e+03 -2.6703276e+03 -1.0859979e+02 - 2.2981257e+03 -2.6006332e+03 -1.1465821e+02 - 2.3288612e+03 -2.5236763e+03 -1.2048992e+02 - 2.3605591e+03 -2.4396352e+03 -1.2608945e+02 - 2.3928650e+03 -2.3486890e+03 -1.3145129e+02 - 2.4254398e+03 -2.2510207e+03 -1.3656966e+02 - 2.4579577e+03 -2.1468222e+03 -1.4143835e+02 - 2.4901046e+03 -2.0362983e+03 -1.4605061e+02 - 2.5215777e+03 -1.9196710e+03 -1.5039910e+02 - 2.5520850e+03 -1.7971842e+03 -1.5447590e+02 - 2.5813453e+03 -1.6691073e+03 -1.5827262e+02 - 2.6090892e+03 -1.5357387e+03 -1.6178043e+02 - 2.6350601e+03 -1.3974084e+03 -1.6499029e+02 - 2.6590162e+03 -1.2544799e+03 -1.6789307e+02 - 2.6807320e+03 -1.1073511e+03 -1.7047979e+02 - 2.7000009e+03 -9.5645461e+02 -1.7274180e+02 - 2.7166374e+03 -8.0225600e+02 -1.7467106e+02 - 2.7304796e+03 -6.4525212e+02 -1.7626030e+02 - 2.7413914e+03 -4.8596763e+02 -1.7750325e+02 - 2.7492644e+03 -3.2495080e+02 -1.7839484e+02 - 2.7540201e+03 -1.6276841e+02 -1.7893133e+02 - 2.7556106e+03 -2.4067136e-09 -1.7911041e+02 - 2.7512239e+03 2.4067136e-09 -2.6841054e+02 - 2.7496474e+03 1.6223341e+02 -2.6814147e+02 - 2.7449339e+03 3.2388377e+02 -2.6733538e+02 - 2.7371307e+03 4.8437445e+02 -2.6599562e+02 - 2.7263160e+03 6.4314142e+02 -2.6412762e+02 - 2.7125974e+03 7.9963898e+02 -2.6173875e+02 - 2.6961101e+03 9.5334478e+02 -2.5883809e+02 - 2.6770151e+03 1.1037640e+03 -2.5543612e+02 - 2.6554968e+03 1.2504326e+03 -2.5154443e+02 - 2.6317607e+03 1.3929196e+03 -2.4717539e+02 - 2.6060312e+03 1.5308280e+03 -2.4234177e+02 - 2.5785489e+03 1.6637949e+03 -2.3705639e+02 - 2.5495694e+03 1.7914908e+03 -2.3133184e+02 - 2.5193611e+03 1.9136176e+03 -2.2518011e+02 - 2.4882044e+03 2.0299056e+03 -2.1861235e+02 - 2.4563904e+03 2.1401109e+03 -2.1163863e+02 - 2.4242214e+03 2.2440110e+03 -2.0426776e+02 - 2.3920107e+03 2.3414008e+03 -1.9650712e+02 - 2.3600838e+03 2.4320882e+03 -1.8836261e+02 - 2.3287793e+03 2.5158898e+03 -1.7983853e+02 - 2.2984514e+03 2.5926264e+03 -1.7093755e+02 - 2.2694714e+03 2.6621198e+03 -1.6166063e+02 - 2.2422305e+03 2.7241891e+03 -1.5200685e+02 - 2.2171420e+03 2.7786488e+03 -1.4197297e+02 - 2.1946434e+03 2.8253084e+03 -1.3155266e+02 - 2.1751978e+03 2.8639732e+03 -1.2073484e+02 - 2.1592943e+03 2.8944478e+03 -1.0950068e+02 - 2.1474466e+03 2.9165417e+03 -9.7818023e+01 - 2.1401898e+03 2.9300785e+03 -8.5631302e+01 - 2.1380755e+03 2.9349062e+03 -7.2843252e+01 - 2.1416666e+03 2.9309091e+03 -5.9281348e+01 - 2.1515356e+03 2.9180128e+03 -4.4634976e+01 - 2.1682812e+03 2.8961725e+03 -2.8334254e+01 - 2.1925928e+03 2.8653088e+03 -9.3083227e+00 - 2.2254491e+03 2.8251114e+03 1.4506673e+01 - 2.2686438e+03 2.7745220e+03 4.7111193e+01 - 2.3257869e+03 2.7107671e+03 9.5440036e+01 - 2.4006029e+03 2.6310989e+03 1.6398938e+02 - 2.4763669e+03 2.5530141e+03 2.2759259e+02 - 2.5126083e+03 2.5163983e+03 2.5073554e+02 - 2.5145464e+03 2.5145464e+03 2.5291058e+02 - 2.5163983e+03 2.5126083e+03 2.5073554e+02 - 2.5530141e+03 2.4763669e+03 2.2759259e+02 - 2.6310989e+03 2.4006029e+03 1.6398938e+02 - 2.7107671e+03 2.3257869e+03 9.5440036e+01 - 2.7745220e+03 2.2686438e+03 4.7111193e+01 - 2.8251114e+03 2.2254491e+03 1.4506673e+01 - 2.8653088e+03 2.1925928e+03 -9.3083227e+00 - 2.8961725e+03 2.1682812e+03 -2.8334254e+01 - 2.9180128e+03 2.1515356e+03 -4.4634976e+01 - 2.9309091e+03 2.1416666e+03 -5.9281348e+01 - 2.9349062e+03 2.1380755e+03 -7.2843252e+01 - 2.9300785e+03 2.1401898e+03 -8.5631302e+01 - 2.9165417e+03 2.1474466e+03 -9.7818023e+01 - 2.8944478e+03 2.1592943e+03 -1.0950068e+02 - 2.8639732e+03 2.1751978e+03 -1.2073484e+02 - 2.8253084e+03 2.1946434e+03 -1.3155266e+02 - 2.7786488e+03 2.2171420e+03 -1.4197297e+02 - 2.7241891e+03 2.2422305e+03 -1.5200685e+02 - 2.6621198e+03 2.2694714e+03 -1.6166063e+02 - 2.5926264e+03 2.2984514e+03 -1.7093755e+02 - 2.5158898e+03 2.3287793e+03 -1.7983853e+02 - 2.4320882e+03 2.3600838e+03 -1.8836261e+02 - 2.3414008e+03 2.3920107e+03 -1.9650712e+02 - 2.2440110e+03 2.4242214e+03 -2.0426776e+02 - 2.1401109e+03 2.4563904e+03 -2.1163863e+02 - 2.0299056e+03 2.4882044e+03 -2.1861235e+02 - 1.9136176e+03 2.5193611e+03 -2.2518011e+02 - 1.7914908e+03 2.5495694e+03 -2.3133184e+02 - 1.6637949e+03 2.5785489e+03 -2.3705639e+02 - 1.5308280e+03 2.6060312e+03 -2.4234177e+02 - 1.3929196e+03 2.6317607e+03 -2.4717539e+02 - 1.2504326e+03 2.6554968e+03 -2.5154443e+02 - 1.1037640e+03 2.6770151e+03 -2.5543612e+02 - 9.5334478e+02 2.6961101e+03 -2.5883809e+02 - 7.9963898e+02 2.7125974e+03 -2.6173875e+02 - 6.4314142e+02 2.7263160e+03 -2.6412762e+02 - 4.8437445e+02 2.7371307e+03 -2.6599562e+02 - 3.2388377e+02 2.7449339e+03 -2.6733538e+02 - 1.6223341e+02 2.7496474e+03 -2.6814147e+02 - 0.0000000e+00 2.7512239e+03 -2.6841054e+02 - -1.6223341e+02 2.7496474e+03 -2.6814147e+02 - -3.2388377e+02 2.7449339e+03 -2.6733538e+02 - -4.8437445e+02 2.7371307e+03 -2.6599562e+02 - -6.4314142e+02 2.7263160e+03 -2.6412762e+02 - -7.9963898e+02 2.7125974e+03 -2.6173875e+02 - -9.5334478e+02 2.6961101e+03 -2.5883809e+02 - -1.1037640e+03 2.6770151e+03 -2.5543612e+02 - -1.2504326e+03 2.6554968e+03 -2.5154443e+02 - -1.3929196e+03 2.6317607e+03 -2.4717539e+02 - -1.5308280e+03 2.6060312e+03 -2.4234177e+02 - -1.6637949e+03 2.5785489e+03 -2.3705639e+02 - -1.7914908e+03 2.5495694e+03 -2.3133184e+02 - -1.9136176e+03 2.5193611e+03 -2.2518011e+02 - -2.0299056e+03 2.4882044e+03 -2.1861235e+02 - -2.1401109e+03 2.4563904e+03 -2.1163863e+02 - -2.2440110e+03 2.4242214e+03 -2.0426776e+02 - -2.3414008e+03 2.3920107e+03 -1.9650712e+02 - -2.4320882e+03 2.3600838e+03 -1.8836261e+02 - -2.5158898e+03 2.3287793e+03 -1.7983853e+02 - -2.5926264e+03 2.2984514e+03 -1.7093755e+02 - -2.6621198e+03 2.2694714e+03 -1.6166063e+02 - -2.7241891e+03 2.2422305e+03 -1.5200685e+02 - -2.7786488e+03 2.2171420e+03 -1.4197297e+02 - -2.8253084e+03 2.1946434e+03 -1.3155266e+02 - -2.8639732e+03 2.1751978e+03 -1.2073484e+02 - -2.8944478e+03 2.1592943e+03 -1.0950068e+02 - -2.9165417e+03 2.1474466e+03 -9.7818023e+01 - -2.9300785e+03 2.1401898e+03 -8.5631302e+01 - -2.9349062e+03 2.1380755e+03 -7.2843252e+01 - -2.9309091e+03 2.1416666e+03 -5.9281348e+01 - -2.9180128e+03 2.1515356e+03 -4.4634976e+01 - -2.8961725e+03 2.1682812e+03 -2.8334254e+01 - -2.8653088e+03 2.1925928e+03 -9.3083227e+00 - -2.8251114e+03 2.2254491e+03 1.4506673e+01 - -2.7745220e+03 2.2686438e+03 4.7111193e+01 - -2.7107671e+03 2.3257869e+03 9.5440036e+01 - -2.6310989e+03 2.4006029e+03 1.6398938e+02 - -2.5530141e+03 2.4763669e+03 2.2759259e+02 - -2.5163983e+03 2.5126083e+03 2.5073554e+02 - -2.5145464e+03 2.5145464e+03 2.5291058e+02 - -2.5126083e+03 2.5163983e+03 2.5073554e+02 - -2.4763669e+03 2.5530141e+03 2.2759259e+02 - -2.4006029e+03 2.6310989e+03 1.6398938e+02 - -2.3257869e+03 2.7107671e+03 9.5440036e+01 - -2.2686438e+03 2.7745220e+03 4.7111193e+01 - -2.2254491e+03 2.8251114e+03 1.4506674e+01 - -2.1925928e+03 2.8653088e+03 -9.3083227e+00 - -2.1682812e+03 2.8961725e+03 -2.8334254e+01 - -2.1515356e+03 2.9180128e+03 -4.4634976e+01 - -2.1416666e+03 2.9309091e+03 -5.9281348e+01 - -2.1380755e+03 2.9349062e+03 -7.2843252e+01 - -2.1401898e+03 2.9300785e+03 -8.5631302e+01 - -2.1474466e+03 2.9165417e+03 -9.7818023e+01 - -2.1592943e+03 2.8944478e+03 -1.0950068e+02 - -2.1751978e+03 2.8639732e+03 -1.2073484e+02 - -2.1946434e+03 2.8253084e+03 -1.3155266e+02 - -2.2171420e+03 2.7786488e+03 -1.4197297e+02 - -2.2422305e+03 2.7241891e+03 -1.5200685e+02 - -2.2694714e+03 2.6621198e+03 -1.6166063e+02 - -2.2984514e+03 2.5926264e+03 -1.7093755e+02 - -2.3287793e+03 2.5158898e+03 -1.7983853e+02 - -2.3600838e+03 2.4320882e+03 -1.8836261e+02 - -2.3920107e+03 2.3414008e+03 -1.9650712e+02 - -2.4242214e+03 2.2440110e+03 -2.0426776e+02 - -2.4563904e+03 2.1401109e+03 -2.1163863e+02 - -2.4882044e+03 2.0299056e+03 -2.1861235e+02 - -2.5193611e+03 1.9136176e+03 -2.2518011e+02 - -2.5495694e+03 1.7914908e+03 -2.3133184e+02 - -2.5785489e+03 1.6637949e+03 -2.3705639e+02 - -2.6060312e+03 1.5308280e+03 -2.4234177e+02 - -2.6317607e+03 1.3929196e+03 -2.4717539e+02 - -2.6554968e+03 1.2504326e+03 -2.5154443e+02 - -2.6770151e+03 1.1037640e+03 -2.5543612e+02 - -2.6961101e+03 9.5334478e+02 -2.5883809e+02 - -2.7125974e+03 7.9963898e+02 -2.6173875e+02 - -2.7263160e+03 6.4314142e+02 -2.6412762e+02 - -2.7371307e+03 4.8437445e+02 -2.6599562e+02 - -2.7449339e+03 3.2388377e+02 -2.6733538e+02 - -2.7496474e+03 1.6223341e+02 -2.6814147e+02 - -2.7512239e+03 -2.4067136e-09 -2.6841054e+02 - -2.7496474e+03 -1.6223341e+02 -2.6814147e+02 - -2.7449339e+03 -3.2388377e+02 -2.6733538e+02 - -2.7371307e+03 -4.8437445e+02 -2.6599562e+02 - -2.7263160e+03 -6.4314142e+02 -2.6412762e+02 - -2.7125974e+03 -7.9963898e+02 -2.6173875e+02 - -2.6961101e+03 -9.5334478e+02 -2.5883809e+02 - -2.6770151e+03 -1.1037640e+03 -2.5543612e+02 - -2.6554968e+03 -1.2504326e+03 -2.5154443e+02 - -2.6317607e+03 -1.3929196e+03 -2.4717539e+02 - -2.6060312e+03 -1.5308280e+03 -2.4234177e+02 - -2.5785489e+03 -1.6637949e+03 -2.3705639e+02 - -2.5495694e+03 -1.7914908e+03 -2.3133184e+02 - -2.5193611e+03 -1.9136176e+03 -2.2518011e+02 - -2.4882044e+03 -2.0299056e+03 -2.1861235e+02 - -2.4563904e+03 -2.1401109e+03 -2.1163863e+02 - -2.4242214e+03 -2.2440110e+03 -2.0426776e+02 - -2.3920107e+03 -2.3414008e+03 -1.9650712e+02 - -2.3600838e+03 -2.4320882e+03 -1.8836261e+02 - -2.3287793e+03 -2.5158898e+03 -1.7983853e+02 - -2.2984514e+03 -2.5926264e+03 -1.7093755e+02 - -2.2694714e+03 -2.6621198e+03 -1.6166063e+02 - -2.2422305e+03 -2.7241891e+03 -1.5200685e+02 - -2.2171420e+03 -2.7786488e+03 -1.4197297e+02 - -2.1946434e+03 -2.8253084e+03 -1.3155266e+02 - -2.1751978e+03 -2.8639732e+03 -1.2073484e+02 - -2.1592943e+03 -2.8944478e+03 -1.0950068e+02 - -2.1474466e+03 -2.9165417e+03 -9.7818023e+01 - -2.1401898e+03 -2.9300785e+03 -8.5631302e+01 - -2.1380755e+03 -2.9349062e+03 -7.2843252e+01 - -2.1416666e+03 -2.9309091e+03 -5.9281348e+01 - -2.1515356e+03 -2.9180128e+03 -4.4634976e+01 - -2.1682812e+03 -2.8961725e+03 -2.8334254e+01 - -2.1925928e+03 -2.8653088e+03 -9.3083227e+00 - -2.2254491e+03 -2.8251114e+03 1.4506673e+01 - -2.2686438e+03 -2.7745220e+03 4.7111193e+01 - -2.3257869e+03 -2.7107671e+03 9.5440036e+01 - -2.4006029e+03 -2.6310989e+03 1.6398938e+02 - -2.4763669e+03 -2.5530141e+03 2.2759259e+02 - -2.5126083e+03 -2.5163983e+03 2.5073554e+02 - -2.5145464e+03 -2.5145464e+03 2.5291058e+02 - -2.5163983e+03 -2.5126083e+03 2.5073554e+02 - -2.5530141e+03 -2.4763669e+03 2.2759259e+02 - -2.6310989e+03 -2.4006029e+03 1.6398938e+02 - -2.7107671e+03 -2.3257869e+03 9.5440036e+01 - -2.7745220e+03 -2.2686438e+03 4.7111193e+01 - -2.8251114e+03 -2.2254491e+03 1.4506674e+01 - -2.8653088e+03 -2.1925928e+03 -9.3083227e+00 - -2.8961725e+03 -2.1682812e+03 -2.8334254e+01 - -2.9180128e+03 -2.1515356e+03 -4.4634976e+01 - -2.9309091e+03 -2.1416666e+03 -5.9281348e+01 - -2.9349062e+03 -2.1380755e+03 -7.2843252e+01 - -2.9300785e+03 -2.1401898e+03 -8.5631302e+01 - -2.9165417e+03 -2.1474466e+03 -9.7818023e+01 - -2.8944478e+03 -2.1592943e+03 -1.0950068e+02 - -2.8639732e+03 -2.1751978e+03 -1.2073484e+02 - -2.8253084e+03 -2.1946434e+03 -1.3155266e+02 - -2.7786488e+03 -2.2171420e+03 -1.4197297e+02 - -2.7241891e+03 -2.2422305e+03 -1.5200685e+02 - -2.6621198e+03 -2.2694714e+03 -1.6166063e+02 - -2.5926264e+03 -2.2984514e+03 -1.7093755e+02 - -2.5158898e+03 -2.3287793e+03 -1.7983853e+02 - -2.4320882e+03 -2.3600838e+03 -1.8836261e+02 - -2.3414008e+03 -2.3920107e+03 -1.9650712e+02 - -2.2440110e+03 -2.4242214e+03 -2.0426776e+02 - -2.1401109e+03 -2.4563904e+03 -2.1163863e+02 - -2.0299056e+03 -2.4882044e+03 -2.1861235e+02 - -1.9136176e+03 -2.5193611e+03 -2.2518011e+02 - -1.7914908e+03 -2.5495694e+03 -2.3133184e+02 - -1.6637949e+03 -2.5785489e+03 -2.3705639e+02 - -1.5308280e+03 -2.6060312e+03 -2.4234177e+02 - -1.3929196e+03 -2.6317607e+03 -2.4717539e+02 - -1.2504326e+03 -2.6554968e+03 -2.5154443e+02 - -1.1037640e+03 -2.6770151e+03 -2.5543612e+02 - -9.5334478e+02 -2.6961101e+03 -2.5883809e+02 - -7.9963898e+02 -2.7125974e+03 -2.6173875e+02 - -6.4314142e+02 -2.7263160e+03 -2.6412762e+02 - -4.8437445e+02 -2.7371307e+03 -2.6599562e+02 - -3.2388377e+02 -2.7449339e+03 -2.6733538e+02 - -1.6223341e+02 -2.7496474e+03 -2.6814147e+02 - -4.8134273e-09 -2.7512239e+03 -2.6841054e+02 - 1.6223341e+02 -2.7496474e+03 -2.6814147e+02 - 3.2388377e+02 -2.7449339e+03 -2.6733538e+02 - 4.8437445e+02 -2.7371307e+03 -2.6599562e+02 - 6.4314142e+02 -2.7263160e+03 -2.6412762e+02 - 7.9963898e+02 -2.7125974e+03 -2.6173875e+02 - 9.5334478e+02 -2.6961101e+03 -2.5883809e+02 - 1.1037640e+03 -2.6770151e+03 -2.5543612e+02 - 1.2504326e+03 -2.6554968e+03 -2.5154443e+02 - 1.3929196e+03 -2.6317607e+03 -2.4717539e+02 - 1.5308280e+03 -2.6060312e+03 -2.4234177e+02 - 1.6637949e+03 -2.5785489e+03 -2.3705639e+02 - 1.7914908e+03 -2.5495694e+03 -2.3133184e+02 - 1.9136176e+03 -2.5193611e+03 -2.2518011e+02 - 2.0299056e+03 -2.4882044e+03 -2.1861235e+02 - 2.1401109e+03 -2.4563904e+03 -2.1163863e+02 - 2.2440110e+03 -2.4242214e+03 -2.0426776e+02 - 2.3414008e+03 -2.3920107e+03 -1.9650712e+02 - 2.4320882e+03 -2.3600838e+03 -1.8836261e+02 - 2.5158898e+03 -2.3287793e+03 -1.7983853e+02 - 2.5926264e+03 -2.2984514e+03 -1.7093755e+02 - 2.6621198e+03 -2.2694714e+03 -1.6166063e+02 - 2.7241891e+03 -2.2422305e+03 -1.5200685e+02 - 2.7786488e+03 -2.2171420e+03 -1.4197297e+02 - 2.8253084e+03 -2.1946434e+03 -1.3155266e+02 - 2.8639732e+03 -2.1751978e+03 -1.2073484e+02 - 2.8944478e+03 -2.1592943e+03 -1.0950068e+02 - 2.9165417e+03 -2.1474466e+03 -9.7818023e+01 - 2.9300785e+03 -2.1401898e+03 -8.5631302e+01 - 2.9349062e+03 -2.1380755e+03 -7.2843252e+01 - 2.9309091e+03 -2.1416666e+03 -5.9281348e+01 - 2.9180128e+03 -2.1515356e+03 -4.4634976e+01 - 2.8961725e+03 -2.1682812e+03 -2.8334254e+01 - 2.8653088e+03 -2.1925928e+03 -9.3083227e+00 - 2.8251114e+03 -2.2254491e+03 1.4506673e+01 - 2.7745220e+03 -2.2686438e+03 4.7111193e+01 - 2.7107671e+03 -2.3257869e+03 9.5440036e+01 - 2.6310989e+03 -2.4006029e+03 1.6398938e+02 - 2.5530141e+03 -2.4763669e+03 2.2759259e+02 - 2.5163983e+03 -2.5126083e+03 2.5073554e+02 - 2.5145464e+03 -2.5145464e+03 2.5291058e+02 - 2.5126083e+03 -2.5163983e+03 2.5073554e+02 - 2.4763669e+03 -2.5530141e+03 2.2759259e+02 - 2.4006029e+03 -2.6310989e+03 1.6398938e+02 - 2.3257869e+03 -2.7107671e+03 9.5440036e+01 - 2.2686438e+03 -2.7745220e+03 4.7111193e+01 - 2.2254491e+03 -2.8251114e+03 1.4506674e+01 - 2.1925928e+03 -2.8653088e+03 -9.3083227e+00 - 2.1682812e+03 -2.8961725e+03 -2.8334254e+01 - 2.1515356e+03 -2.9180128e+03 -4.4634976e+01 - 2.1416666e+03 -2.9309091e+03 -5.9281348e+01 - 2.1380755e+03 -2.9349062e+03 -7.2843252e+01 - 2.1401898e+03 -2.9300785e+03 -8.5631302e+01 - 2.1474466e+03 -2.9165417e+03 -9.7818023e+01 - 2.1592943e+03 -2.8944478e+03 -1.0950068e+02 - 2.1751978e+03 -2.8639732e+03 -1.2073484e+02 - 2.1946434e+03 -2.8253084e+03 -1.3155266e+02 - 2.2171420e+03 -2.7786488e+03 -1.4197297e+02 - 2.2422305e+03 -2.7241891e+03 -1.5200685e+02 - 2.2694714e+03 -2.6621198e+03 -1.6166063e+02 - 2.2984514e+03 -2.5926264e+03 -1.7093755e+02 - 2.3287793e+03 -2.5158898e+03 -1.7983853e+02 - 2.3600838e+03 -2.4320882e+03 -1.8836261e+02 - 2.3920107e+03 -2.3414008e+03 -1.9650712e+02 - 2.4242214e+03 -2.2440110e+03 -2.0426776e+02 - 2.4563904e+03 -2.1401109e+03 -2.1163863e+02 - 2.4882044e+03 -2.0299056e+03 -2.1861235e+02 - 2.5193611e+03 -1.9136176e+03 -2.2518011e+02 - 2.5495694e+03 -1.7914908e+03 -2.3133184e+02 - 2.5785489e+03 -1.6637949e+03 -2.3705639e+02 - 2.6060312e+03 -1.5308280e+03 -2.4234177e+02 - 2.6317607e+03 -1.3929196e+03 -2.4717539e+02 - 2.6554968e+03 -1.2504326e+03 -2.5154443e+02 - 2.6770151e+03 -1.1037640e+03 -2.5543612e+02 - 2.6961101e+03 -9.5334478e+02 -2.5883809e+02 - 2.7125974e+03 -7.9963898e+02 -2.6173875e+02 - 2.7263160e+03 -6.4314142e+02 -2.6412762e+02 - 2.7371307e+03 -4.8437445e+02 -2.6599562e+02 - 2.7449339e+03 -3.2388377e+02 -2.6733538e+02 - 2.7496474e+03 -1.6223341e+02 -2.6814147e+02 - 2.7512239e+03 0.0000000e+00 -2.6841054e+02 - 2.7450986e+03 -2.4067136e-09 -3.5740604e+02 - 2.7435420e+03 1.6148199e+02 -3.5704641e+02 - 2.7388877e+03 3.2238502e+02 -3.5596898e+02 - 2.7311829e+03 4.8213641e+02 -3.5417799e+02 - 2.7205048e+03 6.4017594e+02 -3.5168037e+02 - 2.7069603e+03 7.9596140e+02 -3.4848547e+02 - 2.6906833e+03 9.4897357e+02 -3.4460479e+02 - 2.6718336e+03 1.0987204e+03 -3.4005155e+02 - 2.6505942e+03 1.2447400e+03 -3.3484026e+02 - 2.6271691e+03 1.3866033e+03 -3.2898628e+02 - 2.6017811e+03 1.5239145e+03 -3.2250529e+02 - 2.5746698e+03 1.6563117e+03 -3.1541281e+02 - 2.5460893e+03 1.7834656e+03 -3.0772368e+02 - 2.5163070e+03 1.9050782e+03 -2.9945160e+02 - 2.4856021e+03 2.0208795e+03 -2.9060863e+02 - 2.4542654e+03 2.1306247e+03 -2.8120481e+02 - 2.4225985e+03 2.2340907e+03 -2.7124769e+02 - 2.3909147e+03 2.3310711e+03 -2.6074191e+02 - 2.3595396e+03 2.4213726e+03 -2.4968877e+02 - 2.3288125e+03 2.5048105e+03 -2.3808572e+02 - 2.2990886e+03 2.5812040e+03 -2.2592568e+02 - 2.2707410e+03 2.6503728e+03 -2.1319611e+02 - 2.2441635e+03 2.7121339e+03 -1.9987766e+02 - 2.2197733e+03 2.7662985e+03 -1.8594196e+02 - 2.1980138e+03 2.8126711e+03 -1.7134815e+02 - 2.1793578e+03 2.8510489e+03 -1.5603723e+02 - 2.1643091e+03 2.8812233e+03 -1.3992270e+02 - 2.1534061e+03 2.9029817e+03 -1.2287507e+02 - 2.1472250e+03 2.9161093e+03 -1.0469564e+02 - 2.1463877e+03 2.9203882e+03 -8.5071963e+01 - 2.1515789e+03 2.9155865e+03 -6.3500742e+01 - 2.1635880e+03 2.9014239e+03 -3.9153738e+01 - 2.1834044e+03 2.8774846e+03 -1.0646729e+01 - 2.2124181e+03 2.8430260e+03 2.4329314e+01 - 2.2527669e+03 2.7966498e+03 6.9416525e+01 - 2.3074596e+03 2.7362017e+03 1.2905509e+02 - 2.3776481e+03 2.6614815e+03 2.0301772e+02 - 2.4517235e+03 2.5848577e+03 2.7344104e+02 - 2.5026935e+03 2.5332167e+03 3.1368894e+02 - 2.5201228e+03 2.5160029e+03 3.2564311e+02 - 2.5181526e+03 2.5181526e+03 3.2717421e+02 - 2.5160029e+03 2.5201228e+03 3.2564311e+02 - 2.5332167e+03 2.5026935e+03 3.1368894e+02 - 2.5848577e+03 2.4517235e+03 2.7344104e+02 - 2.6614815e+03 2.3776481e+03 2.0301772e+02 - 2.7362017e+03 2.3074596e+03 1.2905509e+02 - 2.7966498e+03 2.2527669e+03 6.9416525e+01 - 2.8430260e+03 2.2124181e+03 2.4329314e+01 - 2.8774846e+03 2.1834044e+03 -1.0646729e+01 - 2.9014239e+03 2.1635880e+03 -3.9153738e+01 - 2.9155865e+03 2.1515789e+03 -6.3500742e+01 - 2.9203882e+03 2.1463877e+03 -8.5071963e+01 - 2.9161093e+03 2.1472250e+03 -1.0469564e+02 - 2.9029817e+03 2.1534061e+03 -1.2287507e+02 - 2.8812233e+03 2.1643091e+03 -1.3992270e+02 - 2.8510489e+03 2.1793578e+03 -1.5603723e+02 - 2.8126711e+03 2.1980138e+03 -1.7134815e+02 - 2.7662985e+03 2.2197733e+03 -1.8594196e+02 - 2.7121339e+03 2.2441635e+03 -1.9987766e+02 - 2.6503728e+03 2.2707410e+03 -2.1319611e+02 - 2.5812040e+03 2.2990886e+03 -2.2592568e+02 - 2.5048105e+03 2.3288125e+03 -2.3808572e+02 - 2.4213726e+03 2.3595396e+03 -2.4968877e+02 - 2.3310711e+03 2.3909147e+03 -2.6074191e+02 - 2.2340907e+03 2.4225985e+03 -2.7124769e+02 - 2.1306247e+03 2.4542654e+03 -2.8120481e+02 - 2.0208795e+03 2.4856021e+03 -2.9060863e+02 - 1.9050782e+03 2.5163070e+03 -2.9945160e+02 - 1.7834656e+03 2.5460893e+03 -3.0772368e+02 - 1.6563117e+03 2.5746698e+03 -3.1541281e+02 - 1.5239145e+03 2.6017811e+03 -3.2250529e+02 - 1.3866033e+03 2.6271691e+03 -3.2898628e+02 - 1.2447400e+03 2.6505942e+03 -3.3484026e+02 - 1.0987204e+03 2.6718336e+03 -3.4005155e+02 - 9.4897357e+02 2.6906833e+03 -3.4460479e+02 - 7.9596140e+02 2.7069603e+03 -3.4848547e+02 - 6.4017594e+02 2.7205048e+03 -3.5168037e+02 - 4.8213641e+02 2.7311829e+03 -3.5417799e+02 - 3.2238502e+02 2.7388877e+03 -3.5596898e+02 - 1.6148199e+02 2.7435420e+03 -3.5704641e+02 - 2.4067136e-09 2.7450986e+03 -3.5740604e+02 - -1.6148199e+02 2.7435420e+03 -3.5704641e+02 - -3.2238502e+02 2.7388877e+03 -3.5596898e+02 - -4.8213641e+02 2.7311829e+03 -3.5417799e+02 - -6.4017594e+02 2.7205048e+03 -3.5168037e+02 - -7.9596140e+02 2.7069603e+03 -3.4848547e+02 - -9.4897357e+02 2.6906833e+03 -3.4460479e+02 - -1.0987204e+03 2.6718336e+03 -3.4005155e+02 - -1.2447400e+03 2.6505942e+03 -3.3484026e+02 - -1.3866033e+03 2.6271691e+03 -3.2898628e+02 - -1.5239145e+03 2.6017811e+03 -3.2250529e+02 - -1.6563117e+03 2.5746698e+03 -3.1541281e+02 - -1.7834656e+03 2.5460893e+03 -3.0772368e+02 - -1.9050782e+03 2.5163070e+03 -2.9945160e+02 - -2.0208795e+03 2.4856021e+03 -2.9060863e+02 - -2.1306247e+03 2.4542654e+03 -2.8120481e+02 - -2.2340907e+03 2.4225985e+03 -2.7124769e+02 - -2.3310711e+03 2.3909147e+03 -2.6074191e+02 - -2.4213726e+03 2.3595396e+03 -2.4968877e+02 - -2.5048105e+03 2.3288125e+03 -2.3808572e+02 - -2.5812040e+03 2.2990886e+03 -2.2592568e+02 - -2.6503728e+03 2.2707410e+03 -2.1319611e+02 - -2.7121339e+03 2.2441635e+03 -1.9987766e+02 - -2.7662985e+03 2.2197733e+03 -1.8594196e+02 - -2.8126711e+03 2.1980138e+03 -1.7134815e+02 - -2.8510489e+03 2.1793578e+03 -1.5603723e+02 - -2.8812233e+03 2.1643091e+03 -1.3992270e+02 - -2.9029817e+03 2.1534061e+03 -1.2287507e+02 - -2.9161093e+03 2.1472250e+03 -1.0469564e+02 - -2.9203882e+03 2.1463877e+03 -8.5071963e+01 - -2.9155865e+03 2.1515789e+03 -6.3500742e+01 - -2.9014239e+03 2.1635880e+03 -3.9153738e+01 - -2.8774846e+03 2.1834044e+03 -1.0646729e+01 - -2.8430260e+03 2.2124181e+03 2.4329314e+01 - -2.7966498e+03 2.2527669e+03 6.9416525e+01 - -2.7362017e+03 2.3074596e+03 1.2905509e+02 - -2.6614815e+03 2.3776481e+03 2.0301772e+02 - -2.5848577e+03 2.4517235e+03 2.7344104e+02 - -2.5332167e+03 2.5026935e+03 3.1368894e+02 - -2.5160029e+03 2.5201228e+03 3.2564311e+02 - -2.5181526e+03 2.5181526e+03 3.2717421e+02 - -2.5201228e+03 2.5160029e+03 3.2564311e+02 - -2.5026935e+03 2.5332167e+03 3.1368894e+02 - -2.4517235e+03 2.5848577e+03 2.7344104e+02 - -2.3776481e+03 2.6614815e+03 2.0301772e+02 - -2.3074596e+03 2.7362017e+03 1.2905509e+02 - -2.2527669e+03 2.7966498e+03 6.9416525e+01 - -2.2124181e+03 2.8430260e+03 2.4329314e+01 - -2.1834044e+03 2.8774846e+03 -1.0646729e+01 - -2.1635880e+03 2.9014239e+03 -3.9153738e+01 - -2.1515789e+03 2.9155865e+03 -6.3500742e+01 - -2.1463877e+03 2.9203882e+03 -8.5071963e+01 - -2.1472250e+03 2.9161093e+03 -1.0469564e+02 - -2.1534061e+03 2.9029817e+03 -1.2287507e+02 - -2.1643091e+03 2.8812233e+03 -1.3992270e+02 - -2.1793578e+03 2.8510489e+03 -1.5603723e+02 - -2.1980138e+03 2.8126711e+03 -1.7134815e+02 - -2.2197733e+03 2.7662985e+03 -1.8594196e+02 - -2.2441635e+03 2.7121339e+03 -1.9987766e+02 - -2.2707410e+03 2.6503728e+03 -2.1319611e+02 - -2.2990886e+03 2.5812040e+03 -2.2592568e+02 - -2.3288125e+03 2.5048105e+03 -2.3808572e+02 - -2.3595396e+03 2.4213726e+03 -2.4968877e+02 - -2.3909147e+03 2.3310711e+03 -2.6074191e+02 - -2.4225985e+03 2.2340907e+03 -2.7124769e+02 - -2.4542654e+03 2.1306247e+03 -2.8120481e+02 - -2.4856021e+03 2.0208795e+03 -2.9060863e+02 - -2.5163070e+03 1.9050782e+03 -2.9945160e+02 - -2.5460893e+03 1.7834656e+03 -3.0772368e+02 - -2.5746698e+03 1.6563117e+03 -3.1541281e+02 - -2.6017811e+03 1.5239145e+03 -3.2250529e+02 - -2.6271691e+03 1.3866033e+03 -3.2898628e+02 - -2.6505942e+03 1.2447400e+03 -3.3484026e+02 - -2.6718336e+03 1.0987204e+03 -3.4005155e+02 - -2.6906833e+03 9.4897357e+02 -3.4460479e+02 - -2.7069603e+03 7.9596140e+02 -3.4848547e+02 - -2.7205048e+03 6.4017594e+02 -3.5168037e+02 - -2.7311829e+03 4.8213641e+02 -3.5417799e+02 - -2.7388877e+03 3.2238502e+02 -3.5596898e+02 - -2.7435420e+03 1.6148199e+02 -3.5704641e+02 - -2.7450986e+03 0.0000000e+00 -3.5740604e+02 - -2.7435420e+03 -1.6148199e+02 -3.5704641e+02 - -2.7388877e+03 -3.2238502e+02 -3.5596898e+02 - -2.7311829e+03 -4.8213641e+02 -3.5417799e+02 - -2.7205048e+03 -6.4017594e+02 -3.5168037e+02 - -2.7069603e+03 -7.9596140e+02 -3.4848547e+02 - -2.6906833e+03 -9.4897357e+02 -3.4460479e+02 - -2.6718336e+03 -1.0987204e+03 -3.4005155e+02 - -2.6505942e+03 -1.2447400e+03 -3.3484026e+02 - -2.6271691e+03 -1.3866033e+03 -3.2898628e+02 - -2.6017811e+03 -1.5239145e+03 -3.2250529e+02 - -2.5746698e+03 -1.6563117e+03 -3.1541281e+02 - -2.5460893e+03 -1.7834656e+03 -3.0772368e+02 - -2.5163070e+03 -1.9050782e+03 -2.9945160e+02 - -2.4856021e+03 -2.0208795e+03 -2.9060863e+02 - -2.4542654e+03 -2.1306247e+03 -2.8120481e+02 - -2.4225985e+03 -2.2340907e+03 -2.7124769e+02 - -2.3909147e+03 -2.3310711e+03 -2.6074191e+02 - -2.3595396e+03 -2.4213726e+03 -2.4968877e+02 - -2.3288125e+03 -2.5048105e+03 -2.3808572e+02 - -2.2990886e+03 -2.5812040e+03 -2.2592568e+02 - -2.2707410e+03 -2.6503728e+03 -2.1319611e+02 - -2.2441635e+03 -2.7121339e+03 -1.9987766e+02 - -2.2197733e+03 -2.7662985e+03 -1.8594196e+02 - -2.1980138e+03 -2.8126711e+03 -1.7134815e+02 - -2.1793578e+03 -2.8510489e+03 -1.5603723e+02 - -2.1643091e+03 -2.8812233e+03 -1.3992270e+02 - -2.1534061e+03 -2.9029817e+03 -1.2287507e+02 - -2.1472250e+03 -2.9161093e+03 -1.0469564e+02 - -2.1463877e+03 -2.9203882e+03 -8.5071963e+01 - -2.1515789e+03 -2.9155865e+03 -6.3500742e+01 - -2.1635880e+03 -2.9014239e+03 -3.9153738e+01 - -2.1834044e+03 -2.8774846e+03 -1.0646729e+01 - -2.2124181e+03 -2.8430260e+03 2.4329314e+01 - -2.2527669e+03 -2.7966498e+03 6.9416525e+01 - -2.3074596e+03 -2.7362017e+03 1.2905509e+02 - -2.3776481e+03 -2.6614815e+03 2.0301772e+02 - -2.4517235e+03 -2.5848577e+03 2.7344104e+02 - -2.5026935e+03 -2.5332167e+03 3.1368894e+02 - -2.5201228e+03 -2.5160029e+03 3.2564311e+02 - -2.5181526e+03 -2.5181526e+03 3.2717421e+02 - -2.5160029e+03 -2.5201228e+03 3.2564311e+02 - -2.5332167e+03 -2.5026935e+03 3.1368894e+02 - -2.5848577e+03 -2.4517235e+03 2.7344104e+02 - -2.6614815e+03 -2.3776481e+03 2.0301772e+02 - -2.7362017e+03 -2.3074596e+03 1.2905509e+02 - -2.7966498e+03 -2.2527669e+03 6.9416525e+01 - -2.8430260e+03 -2.2124181e+03 2.4329314e+01 - -2.8774846e+03 -2.1834044e+03 -1.0646729e+01 - -2.9014239e+03 -2.1635880e+03 -3.9153738e+01 - -2.9155865e+03 -2.1515789e+03 -6.3500742e+01 - -2.9203882e+03 -2.1463877e+03 -8.5071963e+01 - -2.9161093e+03 -2.1472250e+03 -1.0469564e+02 - -2.9029817e+03 -2.1534061e+03 -1.2287507e+02 - -2.8812233e+03 -2.1643091e+03 -1.3992270e+02 - -2.8510489e+03 -2.1793578e+03 -1.5603723e+02 - -2.8126711e+03 -2.1980138e+03 -1.7134815e+02 - -2.7662985e+03 -2.2197733e+03 -1.8594196e+02 - -2.7121339e+03 -2.2441635e+03 -1.9987766e+02 - -2.6503728e+03 -2.2707410e+03 -2.1319611e+02 - -2.5812040e+03 -2.2990886e+03 -2.2592568e+02 - -2.5048105e+03 -2.3288125e+03 -2.3808572e+02 - -2.4213726e+03 -2.3595396e+03 -2.4968877e+02 - -2.3310711e+03 -2.3909147e+03 -2.6074191e+02 - -2.2340907e+03 -2.4225985e+03 -2.7124769e+02 - -2.1306247e+03 -2.4542654e+03 -2.8120481e+02 - -2.0208795e+03 -2.4856021e+03 -2.9060863e+02 - -1.9050782e+03 -2.5163070e+03 -2.9945160e+02 - -1.7834656e+03 -2.5460893e+03 -3.0772368e+02 - -1.6563117e+03 -2.5746698e+03 -3.1541281e+02 - -1.5239145e+03 -2.6017811e+03 -3.2250529e+02 - -1.3866033e+03 -2.6271691e+03 -3.2898628e+02 - -1.2447400e+03 -2.6505942e+03 -3.3484026e+02 - -1.0987204e+03 -2.6718336e+03 -3.4005155e+02 - -9.4897357e+02 -2.6906833e+03 -3.4460479e+02 - -7.9596140e+02 -2.7069603e+03 -3.4848547e+02 - -6.4017594e+02 -2.7205048e+03 -3.5168037e+02 - -4.8213641e+02 -2.7311829e+03 -3.5417799e+02 - -3.2238502e+02 -2.7388877e+03 -3.5596898e+02 - -1.6148199e+02 -2.7435420e+03 -3.5704641e+02 - -2.4067136e-09 -2.7450986e+03 -3.5740604e+02 - 1.6148199e+02 -2.7435420e+03 -3.5704641e+02 - 3.2238502e+02 -2.7388877e+03 -3.5596898e+02 - 4.8213641e+02 -2.7311829e+03 -3.5417799e+02 - 6.4017594e+02 -2.7205048e+03 -3.5168037e+02 - 7.9596140e+02 -2.7069603e+03 -3.4848547e+02 - 9.4897357e+02 -2.6906833e+03 -3.4460479e+02 - 1.0987204e+03 -2.6718336e+03 -3.4005155e+02 - 1.2447400e+03 -2.6505942e+03 -3.3484026e+02 - 1.3866033e+03 -2.6271691e+03 -3.2898628e+02 - 1.5239145e+03 -2.6017811e+03 -3.2250529e+02 - 1.6563117e+03 -2.5746698e+03 -3.1541281e+02 - 1.7834656e+03 -2.5460893e+03 -3.0772368e+02 - 1.9050782e+03 -2.5163070e+03 -2.9945160e+02 - 2.0208795e+03 -2.4856021e+03 -2.9060863e+02 - 2.1306247e+03 -2.4542654e+03 -2.8120481e+02 - 2.2340907e+03 -2.4225985e+03 -2.7124769e+02 - 2.3310711e+03 -2.3909147e+03 -2.6074191e+02 - 2.4213726e+03 -2.3595396e+03 -2.4968877e+02 - 2.5048105e+03 -2.3288125e+03 -2.3808572e+02 - 2.5812040e+03 -2.2990886e+03 -2.2592568e+02 - 2.6503728e+03 -2.2707410e+03 -2.1319611e+02 - 2.7121339e+03 -2.2441635e+03 -1.9987766e+02 - 2.7662985e+03 -2.2197733e+03 -1.8594196e+02 - 2.8126711e+03 -2.1980138e+03 -1.7134815e+02 - 2.8510489e+03 -2.1793578e+03 -1.5603723e+02 - 2.8812233e+03 -2.1643091e+03 -1.3992270e+02 - 2.9029817e+03 -2.1534061e+03 -1.2287507e+02 - 2.9161093e+03 -2.1472250e+03 -1.0469564e+02 - 2.9203882e+03 -2.1463877e+03 -8.5071963e+01 - 2.9155865e+03 -2.1515789e+03 -6.3500742e+01 - 2.9014239e+03 -2.1635880e+03 -3.9153738e+01 - 2.8774846e+03 -2.1834044e+03 -1.0646729e+01 - 2.8430260e+03 -2.2124181e+03 2.4329314e+01 - 2.7966498e+03 -2.2527669e+03 6.9416525e+01 - 2.7362017e+03 -2.3074596e+03 1.2905509e+02 - 2.6614815e+03 -2.3776481e+03 2.0301772e+02 - 2.5848577e+03 -2.4517235e+03 2.7344104e+02 - 2.5332167e+03 -2.5026935e+03 3.1368894e+02 - 2.5160029e+03 -2.5201228e+03 3.2564311e+02 - 2.5181526e+03 -2.5181526e+03 3.2717421e+02 - 2.5201228e+03 -2.5160029e+03 3.2564311e+02 - 2.5026935e+03 -2.5332167e+03 3.1368894e+02 - 2.4517235e+03 -2.5848577e+03 2.7344104e+02 - 2.3776481e+03 -2.6614815e+03 2.0301772e+02 - 2.3074596e+03 -2.7362017e+03 1.2905509e+02 - 2.2527669e+03 -2.7966498e+03 6.9416525e+01 - 2.2124181e+03 -2.8430260e+03 2.4329314e+01 - 2.1834044e+03 -2.8774846e+03 -1.0646729e+01 - 2.1635880e+03 -2.9014239e+03 -3.9153738e+01 - 2.1515789e+03 -2.9155865e+03 -6.3500742e+01 - 2.1463877e+03 -2.9203882e+03 -8.5071963e+01 - 2.1472250e+03 -2.9161093e+03 -1.0469564e+02 - 2.1534061e+03 -2.9029817e+03 -1.2287507e+02 - 2.1643091e+03 -2.8812233e+03 -1.3992270e+02 - 2.1793578e+03 -2.8510489e+03 -1.5603723e+02 - 2.1980138e+03 -2.8126711e+03 -1.7134815e+02 - 2.2197733e+03 -2.7662985e+03 -1.8594196e+02 - 2.2441635e+03 -2.7121339e+03 -1.9987766e+02 - 2.2707410e+03 -2.6503728e+03 -2.1319611e+02 - 2.2990886e+03 -2.5812040e+03 -2.2592568e+02 - 2.3288125e+03 -2.5048105e+03 -2.3808572e+02 - 2.3595396e+03 -2.4213726e+03 -2.4968877e+02 - 2.3909147e+03 -2.3310711e+03 -2.6074191e+02 - 2.4225985e+03 -2.2340907e+03 -2.7124769e+02 - 2.4542654e+03 -2.1306247e+03 -2.8120481e+02 - 2.4856021e+03 -2.0208795e+03 -2.9060863e+02 - 2.5163070e+03 -1.9050782e+03 -2.9945160e+02 - 2.5460893e+03 -1.7834656e+03 -3.0772368e+02 - 2.5746698e+03 -1.6563117e+03 -3.1541281e+02 - 2.6017811e+03 -1.5239145e+03 -3.2250529e+02 - 2.6271691e+03 -1.3866033e+03 -3.2898628e+02 - 2.6505942e+03 -1.2447400e+03 -3.3484026e+02 - 2.6718336e+03 -1.0987204e+03 -3.4005155e+02 - 2.6906833e+03 -9.4897357e+02 -3.4460479e+02 - 2.7069603e+03 -7.9596140e+02 -3.4848547e+02 - 2.7205048e+03 -6.4017594e+02 -3.5168037e+02 - 2.7311829e+03 -4.8213641e+02 -3.5417799e+02 - 2.7388877e+03 -3.2238502e+02 -3.5596898e+02 - 2.7435420e+03 -1.6148199e+02 -3.5704641e+02 - 2.7450986e+03 0.0000000e+00 -3.5740604e+02 - 2.7372510e+03 0.0000000e+00 -4.4599780e+02 - 2.7357199e+03 1.6051159e+02 -4.4554680e+02 - 2.7311424e+03 3.2044931e+02 -4.4419548e+02 - 2.7235649e+03 4.7924548e+02 -4.4194884e+02 - 2.7130640e+03 6.3634457e+02 -4.3881499e+02 - 2.6997451e+03 7.9120871e+02 -4.3480489e+02 - 2.6837410e+03 9.4332258e+02 -4.2993188e+02 - 2.6652099e+03 1.0921974e+03 -4.2421126e+02 - 2.6443332e+03 1.2373742e+03 -4.1765965e+02 - 2.6213132e+03 1.3784258e+03 -4.1029440e+02 - 2.5963712e+03 1.5149580e+03 -4.0213292e+02 - 2.5697452e+03 1.6466096e+03 -3.9319197e+02 - 2.5416881e+03 1.7730516e+03 -3.8348696e+02 - 2.5124662e+03 1.8939854e+03 -3.7303122e+02 - 2.4823583e+03 2.0091401e+03 -3.6183527e+02 - 2.4516548e+03 2.1182697e+03 -3.4990605e+02 - 2.4206578e+03 2.2211486e+03 -3.3724611e+02 - 2.3896816e+03 2.3175684e+03 -3.2385269e+02 - 2.3590535e+03 2.4073326e+03 -3.0971668e+02 - 2.3291158e+03 2.4902528e+03 -2.9482123e+02 - 2.3002276e+03 2.5661439e+03 -2.7914002e+02 - 2.2727678e+03 2.6348199e+03 -2.6263477e+02 - 2.2471387e+03 2.6960901e+03 -2.4525165e+02 - 2.2237692e+03 2.7497553e+03 -2.2691598e+02 - 2.2031203e+03 2.7956048e+03 -2.0752416e+02 - 2.1856902e+03 2.8334133e+03 -1.8693124e+02 - 2.1720220e+03 2.8629374e+03 -1.6493148e+02 - 2.1627144e+03 2.8839097e+03 -1.4122771e+02 - 2.1584386e+03 2.8960283e+03 -1.1538263e+02 - 2.1599687e+03 2.8989344e+03 -8.6741981e+01 - 2.1682346e+03 2.8921682e+03 -5.4315758e+01 - 2.1844161e+03 2.8750862e+03 -1.6608919e+01 - 2.2100864e+03 2.8467321e+03 2.8561983e+01 - 2.2473294e+03 2.8057371e+03 8.4027770e+01 - 2.2983460e+03 2.7507234e+03 1.5211802e+02 - 2.3629615e+03 2.6827522e+03 2.3050631e+02 - 2.4326495e+03 2.6110706e+03 3.0590147e+02 - 2.4891882e+03 2.5540416e+03 3.5892004e+02 - 2.5196359e+03 2.5240537e+03 3.8415150e+02 - 2.5269909e+03 2.5173342e+03 3.9210929e+02 - 2.5222985e+03 2.5222985e+03 3.9351674e+02 - 2.5173342e+03 2.5269909e+03 3.9210929e+02 - 2.5240537e+03 2.5196359e+03 3.8415150e+02 - 2.5540416e+03 2.4891882e+03 3.5892004e+02 - 2.6110706e+03 2.4326495e+03 3.0590147e+02 - 2.6827522e+03 2.3629615e+03 2.3050631e+02 - 2.7507234e+03 2.2983460e+03 1.5211802e+02 - 2.8057371e+03 2.2473294e+03 8.4027770e+01 - 2.8467321e+03 2.2100864e+03 2.8561983e+01 - 2.8750862e+03 2.1844161e+03 -1.6608919e+01 - 2.8921682e+03 2.1682346e+03 -5.4315758e+01 - 2.8989344e+03 2.1599687e+03 -8.6741981e+01 - 2.8960283e+03 2.1584386e+03 -1.1538263e+02 - 2.8839097e+03 2.1627144e+03 -1.4122771e+02 - 2.8629374e+03 2.1720220e+03 -1.6493148e+02 - 2.8334133e+03 2.1856902e+03 -1.8693124e+02 - 2.7956048e+03 2.2031203e+03 -2.0752416e+02 - 2.7497553e+03 2.2237692e+03 -2.2691598e+02 - 2.6960901e+03 2.2471387e+03 -2.4525165e+02 - 2.6348199e+03 2.2727678e+03 -2.6263477e+02 - 2.5661439e+03 2.3002276e+03 -2.7914002e+02 - 2.4902528e+03 2.3291158e+03 -2.9482123e+02 - 2.4073326e+03 2.3590535e+03 -3.0971668e+02 - 2.3175684e+03 2.3896816e+03 -3.2385269e+02 - 2.2211486e+03 2.4206578e+03 -3.3724611e+02 - 2.1182697e+03 2.4516548e+03 -3.4990605e+02 - 2.0091401e+03 2.4823583e+03 -3.6183527e+02 - 1.8939854e+03 2.5124662e+03 -3.7303122e+02 - 1.7730516e+03 2.5416881e+03 -3.8348696e+02 - 1.6466096e+03 2.5697452e+03 -3.9319197e+02 - 1.5149580e+03 2.5963712e+03 -4.0213292e+02 - 1.3784258e+03 2.6213132e+03 -4.1029440e+02 - 1.2373742e+03 2.6443332e+03 -4.1765965e+02 - 1.0921974e+03 2.6652099e+03 -4.2421126e+02 - 9.4332258e+02 2.6837410e+03 -4.2993188e+02 - 7.9120871e+02 2.6997451e+03 -4.3480489e+02 - 6.3634457e+02 2.7130640e+03 -4.3881499e+02 - 4.7924548e+02 2.7235649e+03 -4.4194884e+02 - 3.2044931e+02 2.7311424e+03 -4.4419548e+02 - 1.6051159e+02 2.7357199e+03 -4.4554680e+02 - -2.4067136e-09 2.7372510e+03 -4.4599780e+02 - -1.6051159e+02 2.7357199e+03 -4.4554680e+02 - -3.2044931e+02 2.7311424e+03 -4.4419548e+02 - -4.7924548e+02 2.7235649e+03 -4.4194884e+02 - -6.3634457e+02 2.7130640e+03 -4.3881499e+02 - -7.9120871e+02 2.6997451e+03 -4.3480489e+02 - -9.4332258e+02 2.6837410e+03 -4.2993188e+02 - -1.0921974e+03 2.6652099e+03 -4.2421126e+02 - -1.2373742e+03 2.6443332e+03 -4.1765965e+02 - -1.3784258e+03 2.6213132e+03 -4.1029440e+02 - -1.5149580e+03 2.5963712e+03 -4.0213292e+02 - -1.6466096e+03 2.5697452e+03 -3.9319197e+02 - -1.7730516e+03 2.5416881e+03 -3.8348696e+02 - -1.8939854e+03 2.5124662e+03 -3.7303122e+02 - -2.0091401e+03 2.4823583e+03 -3.6183527e+02 - -2.1182697e+03 2.4516548e+03 -3.4990605e+02 - -2.2211486e+03 2.4206578e+03 -3.3724611e+02 - -2.3175684e+03 2.3896816e+03 -3.2385269e+02 - -2.4073326e+03 2.3590535e+03 -3.0971668e+02 - -2.4902528e+03 2.3291158e+03 -2.9482123e+02 - -2.5661439e+03 2.3002276e+03 -2.7914002e+02 - -2.6348199e+03 2.2727678e+03 -2.6263477e+02 - -2.6960901e+03 2.2471387e+03 -2.4525165e+02 - -2.7497553e+03 2.2237692e+03 -2.2691598e+02 - -2.7956048e+03 2.2031203e+03 -2.0752416e+02 - -2.8334133e+03 2.1856902e+03 -1.8693124e+02 - -2.8629374e+03 2.1720220e+03 -1.6493148e+02 - -2.8839097e+03 2.1627144e+03 -1.4122771e+02 - -2.8960283e+03 2.1584386e+03 -1.1538263e+02 - -2.8989344e+03 2.1599687e+03 -8.6741981e+01 - -2.8921682e+03 2.1682346e+03 -5.4315758e+01 - -2.8750862e+03 2.1844161e+03 -1.6608919e+01 - -2.8467321e+03 2.2100864e+03 2.8561983e+01 - -2.8057371e+03 2.2473294e+03 8.4027770e+01 - -2.7507234e+03 2.2983460e+03 1.5211802e+02 - -2.6827522e+03 2.3629615e+03 2.3050631e+02 - -2.6110706e+03 2.4326495e+03 3.0590147e+02 - -2.5540416e+03 2.4891882e+03 3.5892004e+02 - -2.5240537e+03 2.5196359e+03 3.8415150e+02 - -2.5173342e+03 2.5269909e+03 3.9210929e+02 - -2.5222985e+03 2.5222985e+03 3.9351674e+02 - -2.5269909e+03 2.5173342e+03 3.9210929e+02 - -2.5196359e+03 2.5240537e+03 3.8415150e+02 - -2.4891882e+03 2.5540416e+03 3.5892004e+02 - -2.4326495e+03 2.6110706e+03 3.0590147e+02 - -2.3629615e+03 2.6827522e+03 2.3050631e+02 - -2.2983460e+03 2.7507234e+03 1.5211802e+02 - -2.2473294e+03 2.8057371e+03 8.4027770e+01 - -2.2100864e+03 2.8467321e+03 2.8561983e+01 - -2.1844161e+03 2.8750862e+03 -1.6608919e+01 - -2.1682346e+03 2.8921682e+03 -5.4315758e+01 - -2.1599687e+03 2.8989344e+03 -8.6741981e+01 - -2.1584386e+03 2.8960283e+03 -1.1538263e+02 - -2.1627144e+03 2.8839097e+03 -1.4122771e+02 - -2.1720220e+03 2.8629374e+03 -1.6493148e+02 - -2.1856902e+03 2.8334133e+03 -1.8693124e+02 - -2.2031203e+03 2.7956048e+03 -2.0752416e+02 - -2.2237692e+03 2.7497553e+03 -2.2691598e+02 - -2.2471387e+03 2.6960901e+03 -2.4525165e+02 - -2.2727678e+03 2.6348199e+03 -2.6263477e+02 - -2.3002276e+03 2.5661439e+03 -2.7914002e+02 - -2.3291158e+03 2.4902528e+03 -2.9482123e+02 - -2.3590535e+03 2.4073326e+03 -3.0971668e+02 - -2.3896816e+03 2.3175684e+03 -3.2385269e+02 - -2.4206578e+03 2.2211486e+03 -3.3724611e+02 - -2.4516548e+03 2.1182697e+03 -3.4990605e+02 - -2.4823583e+03 2.0091401e+03 -3.6183527e+02 - -2.5124662e+03 1.8939854e+03 -3.7303122e+02 - -2.5416881e+03 1.7730516e+03 -3.8348696e+02 - -2.5697452e+03 1.6466096e+03 -3.9319197e+02 - -2.5963712e+03 1.5149580e+03 -4.0213292e+02 - -2.6213132e+03 1.3784258e+03 -4.1029440e+02 - -2.6443332e+03 1.2373742e+03 -4.1765965e+02 - -2.6652099e+03 1.0921974e+03 -4.2421126e+02 - -2.6837410e+03 9.4332258e+02 -4.2993188e+02 - -2.6997451e+03 7.9120871e+02 -4.3480489e+02 - -2.7130640e+03 6.3634457e+02 -4.3881499e+02 - -2.7235649e+03 4.7924548e+02 -4.4194884e+02 - -2.7311424e+03 3.2044931e+02 -4.4419548e+02 - -2.7357199e+03 1.6051159e+02 -4.4554680e+02 - -2.7372510e+03 0.0000000e+00 -4.4599780e+02 - -2.7357199e+03 -1.6051159e+02 -4.4554680e+02 - -2.7311424e+03 -3.2044931e+02 -4.4419548e+02 - -2.7235649e+03 -4.7924548e+02 -4.4194884e+02 - -2.7130640e+03 -6.3634457e+02 -4.3881499e+02 - -2.6997451e+03 -7.9120871e+02 -4.3480489e+02 - -2.6837410e+03 -9.4332258e+02 -4.2993188e+02 - -2.6652099e+03 -1.0921974e+03 -4.2421126e+02 - -2.6443332e+03 -1.2373742e+03 -4.1765965e+02 - -2.6213132e+03 -1.3784258e+03 -4.1029440e+02 - -2.5963712e+03 -1.5149580e+03 -4.0213292e+02 - -2.5697452e+03 -1.6466096e+03 -3.9319197e+02 - -2.5416881e+03 -1.7730516e+03 -3.8348696e+02 - -2.5124662e+03 -1.8939854e+03 -3.7303122e+02 - -2.4823583e+03 -2.0091401e+03 -3.6183527e+02 - -2.4516548e+03 -2.1182697e+03 -3.4990605e+02 - -2.4206578e+03 -2.2211486e+03 -3.3724611e+02 - -2.3896816e+03 -2.3175684e+03 -3.2385269e+02 - -2.3590535e+03 -2.4073326e+03 -3.0971668e+02 - -2.3291158e+03 -2.4902528e+03 -2.9482123e+02 - -2.3002276e+03 -2.5661439e+03 -2.7914002e+02 - -2.2727678e+03 -2.6348199e+03 -2.6263477e+02 - -2.2471387e+03 -2.6960901e+03 -2.4525165e+02 - -2.2237692e+03 -2.7497553e+03 -2.2691598e+02 - -2.2031203e+03 -2.7956048e+03 -2.0752416e+02 - -2.1856902e+03 -2.8334133e+03 -1.8693124e+02 - -2.1720220e+03 -2.8629374e+03 -1.6493148e+02 - -2.1627144e+03 -2.8839097e+03 -1.4122771e+02 - -2.1584386e+03 -2.8960283e+03 -1.1538263e+02 - -2.1599687e+03 -2.8989344e+03 -8.6741981e+01 - -2.1682346e+03 -2.8921682e+03 -5.4315758e+01 - -2.1844161e+03 -2.8750862e+03 -1.6608919e+01 - -2.2100864e+03 -2.8467321e+03 2.8561983e+01 - -2.2473294e+03 -2.8057371e+03 8.4027770e+01 - -2.2983460e+03 -2.7507234e+03 1.5211802e+02 - -2.3629615e+03 -2.6827522e+03 2.3050631e+02 - -2.4326495e+03 -2.6110706e+03 3.0590147e+02 - -2.4891882e+03 -2.5540416e+03 3.5892004e+02 - -2.5196359e+03 -2.5240537e+03 3.8415150e+02 - -2.5269909e+03 -2.5173342e+03 3.9210929e+02 - -2.5222985e+03 -2.5222985e+03 3.9351674e+02 - -2.5173342e+03 -2.5269909e+03 3.9210929e+02 - -2.5240537e+03 -2.5196359e+03 3.8415150e+02 - -2.5540416e+03 -2.4891882e+03 3.5892004e+02 - -2.6110706e+03 -2.4326495e+03 3.0590147e+02 - -2.6827522e+03 -2.3629615e+03 2.3050631e+02 - -2.7507234e+03 -2.2983460e+03 1.5211802e+02 - -2.8057371e+03 -2.2473294e+03 8.4027770e+01 - -2.8467321e+03 -2.2100864e+03 2.8561983e+01 - -2.8750862e+03 -2.1844161e+03 -1.6608919e+01 - -2.8921682e+03 -2.1682346e+03 -5.4315758e+01 - -2.8989344e+03 -2.1599687e+03 -8.6741981e+01 - -2.8960283e+03 -2.1584386e+03 -1.1538263e+02 - -2.8839097e+03 -2.1627144e+03 -1.4122771e+02 - -2.8629374e+03 -2.1720220e+03 -1.6493148e+02 - -2.8334133e+03 -2.1856902e+03 -1.8693124e+02 - -2.7956048e+03 -2.2031203e+03 -2.0752416e+02 - -2.7497553e+03 -2.2237692e+03 -2.2691598e+02 - -2.6960901e+03 -2.2471387e+03 -2.4525165e+02 - -2.6348199e+03 -2.2727678e+03 -2.6263477e+02 - -2.5661439e+03 -2.3002276e+03 -2.7914002e+02 - -2.4902528e+03 -2.3291158e+03 -2.9482123e+02 - -2.4073326e+03 -2.3590535e+03 -3.0971668e+02 - -2.3175684e+03 -2.3896816e+03 -3.2385269e+02 - -2.2211486e+03 -2.4206578e+03 -3.3724611e+02 - -2.1182697e+03 -2.4516548e+03 -3.4990605e+02 - -2.0091401e+03 -2.4823583e+03 -3.6183527e+02 - -1.8939854e+03 -2.5124662e+03 -3.7303122e+02 - -1.7730516e+03 -2.5416881e+03 -3.8348696e+02 - -1.6466096e+03 -2.5697452e+03 -3.9319197e+02 - -1.5149580e+03 -2.5963712e+03 -4.0213292e+02 - -1.3784258e+03 -2.6213132e+03 -4.1029440e+02 - -1.2373742e+03 -2.6443332e+03 -4.1765965e+02 - -1.0921974e+03 -2.6652099e+03 -4.2421126e+02 - -9.4332258e+02 -2.6837410e+03 -4.2993188e+02 - -7.9120871e+02 -2.6997451e+03 -4.3480489e+02 - -6.3634457e+02 -2.7130640e+03 -4.3881499e+02 - -4.7924548e+02 -2.7235649e+03 -4.4194884e+02 - -3.2044931e+02 -2.7311424e+03 -4.4419548e+02 - -1.6051159e+02 -2.7357199e+03 -4.4554680e+02 - 4.8134273e-09 -2.7372510e+03 -4.4599780e+02 - 1.6051159e+02 -2.7357199e+03 -4.4554680e+02 - 3.2044931e+02 -2.7311424e+03 -4.4419548e+02 - 4.7924548e+02 -2.7235649e+03 -4.4194884e+02 - 6.3634457e+02 -2.7130640e+03 -4.3881499e+02 - 7.9120871e+02 -2.6997451e+03 -4.3480489e+02 - 9.4332258e+02 -2.6837410e+03 -4.2993188e+02 - 1.0921974e+03 -2.6652099e+03 -4.2421126e+02 - 1.2373742e+03 -2.6443332e+03 -4.1765965e+02 - 1.3784258e+03 -2.6213132e+03 -4.1029440e+02 - 1.5149580e+03 -2.5963712e+03 -4.0213292e+02 - 1.6466096e+03 -2.5697452e+03 -3.9319197e+02 - 1.7730516e+03 -2.5416881e+03 -3.8348696e+02 - 1.8939854e+03 -2.5124662e+03 -3.7303122e+02 - 2.0091401e+03 -2.4823583e+03 -3.6183527e+02 - 2.1182697e+03 -2.4516548e+03 -3.4990605e+02 - 2.2211486e+03 -2.4206578e+03 -3.3724611e+02 - 2.3175684e+03 -2.3896816e+03 -3.2385269e+02 - 2.4073326e+03 -2.3590535e+03 -3.0971668e+02 - 2.4902528e+03 -2.3291158e+03 -2.9482123e+02 - 2.5661439e+03 -2.3002276e+03 -2.7914002e+02 - 2.6348199e+03 -2.2727678e+03 -2.6263477e+02 - 2.6960901e+03 -2.2471387e+03 -2.4525165e+02 - 2.7497553e+03 -2.2237692e+03 -2.2691598e+02 - 2.7956048e+03 -2.2031203e+03 -2.0752416e+02 - 2.8334133e+03 -2.1856902e+03 -1.8693124e+02 - 2.8629374e+03 -2.1720220e+03 -1.6493148e+02 - 2.8839097e+03 -2.1627144e+03 -1.4122771e+02 - 2.8960283e+03 -2.1584386e+03 -1.1538263e+02 - 2.8989344e+03 -2.1599687e+03 -8.6741981e+01 - 2.8921682e+03 -2.1682346e+03 -5.4315758e+01 - 2.8750862e+03 -2.1844161e+03 -1.6608919e+01 - 2.8467321e+03 -2.2100864e+03 2.8561983e+01 - 2.8057371e+03 -2.2473294e+03 8.4027770e+01 - 2.7507234e+03 -2.2983460e+03 1.5211802e+02 - 2.6827522e+03 -2.3629615e+03 2.3050631e+02 - 2.6110706e+03 -2.4326495e+03 3.0590147e+02 - 2.5540416e+03 -2.4891882e+03 3.5892004e+02 - 2.5240537e+03 -2.5196359e+03 3.8415150e+02 - 2.5173342e+03 -2.5269909e+03 3.9210929e+02 - 2.5222985e+03 -2.5222985e+03 3.9351674e+02 - 2.5269909e+03 -2.5173342e+03 3.9210929e+02 - 2.5196359e+03 -2.5240537e+03 3.8415150e+02 - 2.4891882e+03 -2.5540416e+03 3.5892004e+02 - 2.4326495e+03 -2.6110706e+03 3.0590147e+02 - 2.3629615e+03 -2.6827522e+03 2.3050631e+02 - 2.2983460e+03 -2.7507234e+03 1.5211802e+02 - 2.2473294e+03 -2.8057371e+03 8.4027770e+01 - 2.2100864e+03 -2.8467321e+03 2.8561983e+01 - 2.1844161e+03 -2.8750862e+03 -1.6608919e+01 - 2.1682346e+03 -2.8921682e+03 -5.4315758e+01 - 2.1599687e+03 -2.8989344e+03 -8.6741981e+01 - 2.1584386e+03 -2.8960283e+03 -1.1538263e+02 - 2.1627144e+03 -2.8839097e+03 -1.4122771e+02 - 2.1720220e+03 -2.8629374e+03 -1.6493148e+02 - 2.1856902e+03 -2.8334133e+03 -1.8693124e+02 - 2.2031203e+03 -2.7956048e+03 -2.0752416e+02 - 2.2237692e+03 -2.7497553e+03 -2.2691598e+02 - 2.2471387e+03 -2.6960901e+03 -2.4525165e+02 - 2.2727678e+03 -2.6348199e+03 -2.6263477e+02 - 2.3002276e+03 -2.5661439e+03 -2.7914002e+02 - 2.3291158e+03 -2.4902528e+03 -2.9482123e+02 - 2.3590535e+03 -2.4073326e+03 -3.0971668e+02 - 2.3896816e+03 -2.3175684e+03 -3.2385269e+02 - 2.4206578e+03 -2.2211486e+03 -3.3724611e+02 - 2.4516548e+03 -2.1182697e+03 -3.4990605e+02 - 2.4823583e+03 -2.0091401e+03 -3.6183527e+02 - 2.5124662e+03 -1.8939854e+03 -3.7303122e+02 - 2.5416881e+03 -1.7730516e+03 -3.8348696e+02 - 2.5697452e+03 -1.6466096e+03 -3.9319197e+02 - 2.5963712e+03 -1.5149580e+03 -4.0213292e+02 - 2.6213132e+03 -1.3784258e+03 -4.1029440e+02 - 2.6443332e+03 -1.2373742e+03 -4.1765965e+02 - 2.6652099e+03 -1.0921974e+03 -4.2421126e+02 - 2.6837410e+03 -9.4332258e+02 -4.2993188e+02 - 2.6997451e+03 -7.9120871e+02 -4.3480489e+02 - 2.7130640e+03 -6.3634457e+02 -4.3881499e+02 - 2.7235649e+03 -4.7924548e+02 -4.4194884e+02 - 2.7311424e+03 -3.2044931e+02 -4.4419548e+02 - 2.7357199e+03 -1.6051159e+02 -4.4554680e+02 - 2.7372510e+03 2.4067136e-09 -4.4599780e+02 - 2.7277013e+03 0.0000000e+00 -5.3408879e+02 - 2.7262019e+03 1.5931869e+02 -5.3354526e+02 - 2.7217190e+03 3.1806952e+02 -5.3191652e+02 - 2.7142986e+03 4.7569065e+02 -5.2920811e+02 - 2.7040163e+03 6.3163209e+02 -5.2542895e+02 - 2.6909763e+03 7.8536107e+02 -5.2059107e+02 - 2.6753098e+03 9.3636675e+02 -5.1470899e+02 - 2.6571734e+03 1.0841642e+03 -5.0779920e+02 - 2.6367467e+03 1.2282975e+03 -4.9987937e+02 - 2.6142304e+03 1.3683416e+03 -4.9096756e+02 - 2.5898442e+03 1.5039039e+03 -4.8108136e+02 - 2.5638246e+03 1.6346237e+03 -4.7023695e+02 - 2.5364237e+03 1.7601717e+03 -4.5844809e+02 - 2.5079074e+03 1.8802481e+03 -4.4572510e+02 - 2.4785543e+03 1.9945802e+03 -4.3207370e+02 - 2.4486561e+03 2.1029190e+03 -4.1749381e+02 - 2.4185165e+03 2.2050354e+03 -4.0197815e+02 - 2.3884530e+03 2.3007160e+03 -3.8551055e+02 - 2.3587975e+03 2.3897588e+03 -3.6806396e+02 - 2.3298988e+03 2.4719680e+03 -3.4959779e+02 - 2.3021253e+03 2.5471492e+03 -3.3005444e+02 - 2.2758685e+03 2.6151043e+03 -3.0935442e+02 - 2.2515485e+03 2.6756266e+03 -2.8738955e+02 - 2.2296191e+03 2.7284948e+03 -2.6401308e+02 - 2.2105768e+03 2.7734669e+03 -2.3902527e+02 - 2.1949706e+03 2.8102725e+03 -2.1215209e+02 - 2.1834185e+03 2.8386015e+03 -1.8301377e+02 - 2.1766291e+03 2.8580875e+03 -1.5107866e+02 - 2.1754371e+03 2.8682809e+03 -1.1559744e+02 - 2.1808550e+03 2.8686065e+03 -7.5516474e+01 - 2.1941450e+03 2.8583040e+03 -2.9386579e+01 - 2.2168863e+03 2.8363751e+03 2.4654550e+01 - 2.2509140e+03 2.8016589e+03 8.8575293e+01 - 2.2977222e+03 2.7534274e+03 1.6321981e+02 - 2.3565053e+03 2.6932901e+03 2.4543226e+02 - 2.4207681e+03 2.6284083e+03 3.2492671e+02 - 2.4777327e+03 2.5718195e+03 3.8731472e+02 - 2.5158356e+03 2.5348307e+03 4.2519444e+02 - 2.5327208e+03 2.5192562e+03 4.4290844e+02 - 2.5337498e+03 2.5192259e+03 4.4928926e+02 - 2.5266718e+03 2.5266718e+03 4.5071005e+02 - 2.5192259e+03 2.5337498e+03 4.4928926e+02 - 2.5192562e+03 2.5327208e+03 4.4290844e+02 - 2.5348307e+03 2.5158356e+03 4.2519444e+02 - 2.5718195e+03 2.4777327e+03 3.8731472e+02 - 2.6284083e+03 2.4207681e+03 3.2492671e+02 - 2.6932901e+03 2.3565053e+03 2.4543226e+02 - 2.7534274e+03 2.2977222e+03 1.6321981e+02 - 2.8016589e+03 2.2509140e+03 8.8575293e+01 - 2.8363751e+03 2.2168863e+03 2.4654550e+01 - 2.8583040e+03 2.1941450e+03 -2.9386579e+01 - 2.8686065e+03 2.1808550e+03 -7.5516474e+01 - 2.8682809e+03 2.1754371e+03 -1.1559744e+02 - 2.8580875e+03 2.1766291e+03 -1.5107866e+02 - 2.8386015e+03 2.1834185e+03 -1.8301377e+02 - 2.8102725e+03 2.1949706e+03 -2.1215209e+02 - 2.7734669e+03 2.2105768e+03 -2.3902527e+02 - 2.7284948e+03 2.2296191e+03 -2.6401308e+02 - 2.6756266e+03 2.2515485e+03 -2.8738955e+02 - 2.6151043e+03 2.2758685e+03 -3.0935442e+02 - 2.5471492e+03 2.3021253e+03 -3.3005444e+02 - 2.4719680e+03 2.3298988e+03 -3.4959779e+02 - 2.3897588e+03 2.3587975e+03 -3.6806396e+02 - 2.3007160e+03 2.3884530e+03 -3.8551055e+02 - 2.2050354e+03 2.4185165e+03 -4.0197815e+02 - 2.1029190e+03 2.4486561e+03 -4.1749381e+02 - 1.9945802e+03 2.4785543e+03 -4.3207370e+02 - 1.8802481e+03 2.5079074e+03 -4.4572510e+02 - 1.7601717e+03 2.5364237e+03 -4.5844809e+02 - 1.6346237e+03 2.5638246e+03 -4.7023695e+02 - 1.5039039e+03 2.5898442e+03 -4.8108136e+02 - 1.3683416e+03 2.6142304e+03 -4.9096756e+02 - 1.2282975e+03 2.6367467e+03 -4.9987937e+02 - 1.0841642e+03 2.6571734e+03 -5.0779920e+02 - 9.3636675e+02 2.6753098e+03 -5.1470899e+02 - 7.8536107e+02 2.6909763e+03 -5.2059107e+02 - 6.3163209e+02 2.7040163e+03 -5.2542895e+02 - 4.7569065e+02 2.7142986e+03 -5.2920811e+02 - 3.1806952e+02 2.7217190e+03 -5.3191652e+02 - 1.5931869e+02 2.7262019e+03 -5.3354526e+02 - 2.4067136e-09 2.7277013e+03 -5.3408879e+02 - -1.5931869e+02 2.7262019e+03 -5.3354526e+02 - -3.1806952e+02 2.7217190e+03 -5.3191652e+02 - -4.7569065e+02 2.7142986e+03 -5.2920811e+02 - -6.3163209e+02 2.7040163e+03 -5.2542895e+02 - -7.8536107e+02 2.6909763e+03 -5.2059107e+02 - -9.3636675e+02 2.6753098e+03 -5.1470899e+02 - -1.0841642e+03 2.6571734e+03 -5.0779920e+02 - -1.2282975e+03 2.6367467e+03 -4.9987937e+02 - -1.3683416e+03 2.6142304e+03 -4.9096756e+02 - -1.5039039e+03 2.5898442e+03 -4.8108136e+02 - -1.6346237e+03 2.5638246e+03 -4.7023695e+02 - -1.7601717e+03 2.5364237e+03 -4.5844809e+02 - -1.8802481e+03 2.5079074e+03 -4.4572510e+02 - -1.9945802e+03 2.4785543e+03 -4.3207370e+02 - -2.1029190e+03 2.4486561e+03 -4.1749381e+02 - -2.2050354e+03 2.4185165e+03 -4.0197815e+02 - -2.3007160e+03 2.3884530e+03 -3.8551055e+02 - -2.3897588e+03 2.3587975e+03 -3.6806396e+02 - -2.4719680e+03 2.3298988e+03 -3.4959779e+02 - -2.5471492e+03 2.3021253e+03 -3.3005444e+02 - -2.6151043e+03 2.2758685e+03 -3.0935442e+02 - -2.6756266e+03 2.2515485e+03 -2.8738955e+02 - -2.7284948e+03 2.2296191e+03 -2.6401308e+02 - -2.7734669e+03 2.2105768e+03 -2.3902527e+02 - -2.8102725e+03 2.1949706e+03 -2.1215209e+02 - -2.8386015e+03 2.1834185e+03 -1.8301377e+02 - -2.8580875e+03 2.1766291e+03 -1.5107866e+02 - -2.8682809e+03 2.1754371e+03 -1.1559744e+02 - -2.8686065e+03 2.1808550e+03 -7.5516474e+01 - -2.8583040e+03 2.1941450e+03 -2.9386579e+01 - -2.8363751e+03 2.2168863e+03 2.4654550e+01 - -2.8016589e+03 2.2509140e+03 8.8575293e+01 - -2.7534274e+03 2.2977222e+03 1.6321981e+02 - -2.6932901e+03 2.3565053e+03 2.4543226e+02 - -2.6284083e+03 2.4207681e+03 3.2492671e+02 - -2.5718195e+03 2.4777327e+03 3.8731472e+02 - -2.5348307e+03 2.5158356e+03 4.2519444e+02 - -2.5192562e+03 2.5327208e+03 4.4290844e+02 - -2.5192259e+03 2.5337498e+03 4.4928926e+02 - -2.5266718e+03 2.5266718e+03 4.5071005e+02 - -2.5337498e+03 2.5192259e+03 4.4928926e+02 - -2.5327208e+03 2.5192562e+03 4.4290844e+02 - -2.5158356e+03 2.5348307e+03 4.2519444e+02 - -2.4777327e+03 2.5718195e+03 3.8731472e+02 - -2.4207681e+03 2.6284083e+03 3.2492671e+02 - -2.3565053e+03 2.6932901e+03 2.4543226e+02 - -2.2977222e+03 2.7534274e+03 1.6321981e+02 - -2.2509140e+03 2.8016589e+03 8.8575293e+01 - -2.2168863e+03 2.8363751e+03 2.4654550e+01 - -2.1941450e+03 2.8583040e+03 -2.9386579e+01 - -2.1808550e+03 2.8686065e+03 -7.5516474e+01 - -2.1754371e+03 2.8682809e+03 -1.1559744e+02 - -2.1766291e+03 2.8580875e+03 -1.5107866e+02 - -2.1834185e+03 2.8386015e+03 -1.8301377e+02 - -2.1949706e+03 2.8102725e+03 -2.1215209e+02 - -2.2105768e+03 2.7734669e+03 -2.3902527e+02 - -2.2296191e+03 2.7284948e+03 -2.6401308e+02 - -2.2515485e+03 2.6756266e+03 -2.8738955e+02 - -2.2758685e+03 2.6151043e+03 -3.0935442e+02 - -2.3021253e+03 2.5471492e+03 -3.3005444e+02 - -2.3298988e+03 2.4719680e+03 -3.4959779e+02 - -2.3587975e+03 2.3897588e+03 -3.6806396e+02 - -2.3884530e+03 2.3007160e+03 -3.8551055e+02 - -2.4185165e+03 2.2050354e+03 -4.0197815e+02 - -2.4486561e+03 2.1029190e+03 -4.1749381e+02 - -2.4785543e+03 1.9945802e+03 -4.3207370e+02 - -2.5079074e+03 1.8802481e+03 -4.4572510e+02 - -2.5364237e+03 1.7601717e+03 -4.5844809e+02 - -2.5638246e+03 1.6346237e+03 -4.7023695e+02 - -2.5898442e+03 1.5039039e+03 -4.8108136e+02 - -2.6142304e+03 1.3683416e+03 -4.9096756e+02 - -2.6367467e+03 1.2282975e+03 -4.9987937e+02 - -2.6571734e+03 1.0841642e+03 -5.0779920e+02 - -2.6753098e+03 9.3636675e+02 -5.1470899e+02 - -2.6909763e+03 7.8536107e+02 -5.2059107e+02 - -2.7040163e+03 6.3163209e+02 -5.2542895e+02 - -2.7142986e+03 4.7569065e+02 -5.2920811e+02 - -2.7217190e+03 3.1806952e+02 -5.3191652e+02 - -2.7262019e+03 1.5931869e+02 -5.3354526e+02 - -2.7277013e+03 2.4067136e-09 -5.3408879e+02 - -2.7262019e+03 -1.5931869e+02 -5.3354526e+02 - -2.7217190e+03 -3.1806952e+02 -5.3191652e+02 - -2.7142986e+03 -4.7569065e+02 -5.2920811e+02 - -2.7040163e+03 -6.3163209e+02 -5.2542895e+02 - -2.6909763e+03 -7.8536107e+02 -5.2059107e+02 - -2.6753098e+03 -9.3636675e+02 -5.1470899e+02 - -2.6571734e+03 -1.0841642e+03 -5.0779920e+02 - -2.6367467e+03 -1.2282975e+03 -4.9987937e+02 - -2.6142304e+03 -1.3683416e+03 -4.9096756e+02 - -2.5898442e+03 -1.5039039e+03 -4.8108136e+02 - -2.5638246e+03 -1.6346237e+03 -4.7023695e+02 - -2.5364237e+03 -1.7601717e+03 -4.5844809e+02 - -2.5079074e+03 -1.8802481e+03 -4.4572510e+02 - -2.4785543e+03 -1.9945802e+03 -4.3207370e+02 - -2.4486561e+03 -2.1029190e+03 -4.1749381e+02 - -2.4185165e+03 -2.2050354e+03 -4.0197815e+02 - -2.3884530e+03 -2.3007160e+03 -3.8551055e+02 - -2.3587975e+03 -2.3897588e+03 -3.6806396e+02 - -2.3298988e+03 -2.4719680e+03 -3.4959779e+02 - -2.3021253e+03 -2.5471492e+03 -3.3005444e+02 - -2.2758685e+03 -2.6151043e+03 -3.0935442e+02 - -2.2515485e+03 -2.6756266e+03 -2.8738955e+02 - -2.2296191e+03 -2.7284948e+03 -2.6401308e+02 - -2.2105768e+03 -2.7734669e+03 -2.3902527e+02 - -2.1949706e+03 -2.8102725e+03 -2.1215209e+02 - -2.1834185e+03 -2.8386015e+03 -1.8301377e+02 - -2.1766291e+03 -2.8580875e+03 -1.5107866e+02 - -2.1754371e+03 -2.8682809e+03 -1.1559744e+02 - -2.1808550e+03 -2.8686065e+03 -7.5516474e+01 - -2.1941450e+03 -2.8583040e+03 -2.9386579e+01 - -2.2168863e+03 -2.8363751e+03 2.4654550e+01 - -2.2509140e+03 -2.8016589e+03 8.8575293e+01 - -2.2977222e+03 -2.7534274e+03 1.6321981e+02 - -2.3565053e+03 -2.6932901e+03 2.4543226e+02 - -2.4207681e+03 -2.6284083e+03 3.2492671e+02 - -2.4777327e+03 -2.5718195e+03 3.8731472e+02 - -2.5158356e+03 -2.5348307e+03 4.2519444e+02 - -2.5327208e+03 -2.5192562e+03 4.4290844e+02 - -2.5337498e+03 -2.5192259e+03 4.4928926e+02 - -2.5266718e+03 -2.5266718e+03 4.5071005e+02 - -2.5192259e+03 -2.5337498e+03 4.4928926e+02 - -2.5192562e+03 -2.5327208e+03 4.4290844e+02 - -2.5348307e+03 -2.5158356e+03 4.2519444e+02 - -2.5718195e+03 -2.4777327e+03 3.8731472e+02 - -2.6284083e+03 -2.4207681e+03 3.2492671e+02 - -2.6932901e+03 -2.3565053e+03 2.4543226e+02 - -2.7534274e+03 -2.2977222e+03 1.6321981e+02 - -2.8016589e+03 -2.2509140e+03 8.8575293e+01 - -2.8363751e+03 -2.2168863e+03 2.4654550e+01 - -2.8583040e+03 -2.1941450e+03 -2.9386579e+01 - -2.8686065e+03 -2.1808550e+03 -7.5516474e+01 - -2.8682809e+03 -2.1754371e+03 -1.1559744e+02 - -2.8580875e+03 -2.1766291e+03 -1.5107866e+02 - -2.8386015e+03 -2.1834185e+03 -1.8301377e+02 - -2.8102725e+03 -2.1949706e+03 -2.1215209e+02 - -2.7734669e+03 -2.2105768e+03 -2.3902527e+02 - -2.7284948e+03 -2.2296191e+03 -2.6401308e+02 - -2.6756266e+03 -2.2515485e+03 -2.8738955e+02 - -2.6151043e+03 -2.2758685e+03 -3.0935442e+02 - -2.5471492e+03 -2.3021253e+03 -3.3005444e+02 - -2.4719680e+03 -2.3298988e+03 -3.4959779e+02 - -2.3897588e+03 -2.3587975e+03 -3.6806396e+02 - -2.3007160e+03 -2.3884530e+03 -3.8551055e+02 - -2.2050354e+03 -2.4185165e+03 -4.0197815e+02 - -2.1029190e+03 -2.4486561e+03 -4.1749381e+02 - -1.9945802e+03 -2.4785543e+03 -4.3207370e+02 - -1.8802481e+03 -2.5079074e+03 -4.4572510e+02 - -1.7601717e+03 -2.5364237e+03 -4.5844809e+02 - -1.6346237e+03 -2.5638246e+03 -4.7023695e+02 - -1.5039039e+03 -2.5898442e+03 -4.8108136e+02 - -1.3683416e+03 -2.6142304e+03 -4.9096756e+02 - -1.2282975e+03 -2.6367467e+03 -4.9987937e+02 - -1.0841642e+03 -2.6571734e+03 -5.0779920e+02 - -9.3636675e+02 -2.6753098e+03 -5.1470899e+02 - -7.8536107e+02 -2.6909763e+03 -5.2059107e+02 - -6.3163209e+02 -2.7040163e+03 -5.2542895e+02 - -4.7569065e+02 -2.7142986e+03 -5.2920811e+02 - -3.1806952e+02 -2.7217190e+03 -5.3191652e+02 - -1.5931869e+02 -2.7262019e+03 -5.3354526e+02 - -2.4067136e-09 -2.7277013e+03 -5.3408879e+02 - 1.5931869e+02 -2.7262019e+03 -5.3354526e+02 - 3.1806952e+02 -2.7217190e+03 -5.3191652e+02 - 4.7569065e+02 -2.7142986e+03 -5.2920811e+02 - 6.3163209e+02 -2.7040163e+03 -5.2542895e+02 - 7.8536107e+02 -2.6909763e+03 -5.2059107e+02 - 9.3636675e+02 -2.6753098e+03 -5.1470899e+02 - 1.0841642e+03 -2.6571734e+03 -5.0779920e+02 - 1.2282975e+03 -2.6367467e+03 -4.9987937e+02 - 1.3683416e+03 -2.6142304e+03 -4.9096756e+02 - 1.5039039e+03 -2.5898442e+03 -4.8108136e+02 - 1.6346237e+03 -2.5638246e+03 -4.7023695e+02 - 1.7601717e+03 -2.5364237e+03 -4.5844809e+02 - 1.8802481e+03 -2.5079074e+03 -4.4572510e+02 - 1.9945802e+03 -2.4785543e+03 -4.3207370e+02 - 2.1029190e+03 -2.4486561e+03 -4.1749381e+02 - 2.2050354e+03 -2.4185165e+03 -4.0197815e+02 - 2.3007160e+03 -2.3884530e+03 -3.8551055e+02 - 2.3897588e+03 -2.3587975e+03 -3.6806396e+02 - 2.4719680e+03 -2.3298988e+03 -3.4959779e+02 - 2.5471492e+03 -2.3021253e+03 -3.3005444e+02 - 2.6151043e+03 -2.2758685e+03 -3.0935442e+02 - 2.6756266e+03 -2.2515485e+03 -2.8738955e+02 - 2.7284948e+03 -2.2296191e+03 -2.6401308e+02 - 2.7734669e+03 -2.2105768e+03 -2.3902527e+02 - 2.8102725e+03 -2.1949706e+03 -2.1215209e+02 - 2.8386015e+03 -2.1834185e+03 -1.8301377e+02 - 2.8580875e+03 -2.1766291e+03 -1.5107866e+02 - 2.8682809e+03 -2.1754371e+03 -1.1559744e+02 - 2.8686065e+03 -2.1808550e+03 -7.5516474e+01 - 2.8583040e+03 -2.1941450e+03 -2.9386579e+01 - 2.8363751e+03 -2.2168863e+03 2.4654550e+01 - 2.8016589e+03 -2.2509140e+03 8.8575293e+01 - 2.7534274e+03 -2.2977222e+03 1.6321981e+02 - 2.6932901e+03 -2.3565053e+03 2.4543226e+02 - 2.6284083e+03 -2.4207681e+03 3.2492671e+02 - 2.5718195e+03 -2.4777327e+03 3.8731472e+02 - 2.5348307e+03 -2.5158356e+03 4.2519444e+02 - 2.5192562e+03 -2.5327208e+03 4.4290844e+02 - 2.5192259e+03 -2.5337498e+03 4.4928926e+02 - 2.5266718e+03 -2.5266718e+03 4.5071005e+02 - 2.5337498e+03 -2.5192259e+03 4.4928926e+02 - 2.5327208e+03 -2.5192562e+03 4.4290844e+02 - 2.5158356e+03 -2.5348307e+03 4.2519444e+02 - 2.4777327e+03 -2.5718195e+03 3.8731472e+02 - 2.4207681e+03 -2.6284083e+03 3.2492671e+02 - 2.3565053e+03 -2.6932901e+03 2.4543226e+02 - 2.2977222e+03 -2.7534274e+03 1.6321981e+02 - 2.2509140e+03 -2.8016589e+03 8.8575293e+01 - 2.2168863e+03 -2.8363751e+03 2.4654550e+01 - 2.1941450e+03 -2.8583040e+03 -2.9386579e+01 - 2.1808550e+03 -2.8686065e+03 -7.5516474e+01 - 2.1754371e+03 -2.8682809e+03 -1.1559744e+02 - 2.1766291e+03 -2.8580875e+03 -1.5107866e+02 - 2.1834185e+03 -2.8386015e+03 -1.8301377e+02 - 2.1949706e+03 -2.8102725e+03 -2.1215209e+02 - 2.2105768e+03 -2.7734669e+03 -2.3902527e+02 - 2.2296191e+03 -2.7284948e+03 -2.6401308e+02 - 2.2515485e+03 -2.6756266e+03 -2.8738955e+02 - 2.2758685e+03 -2.6151043e+03 -3.0935442e+02 - 2.3021253e+03 -2.5471492e+03 -3.3005444e+02 - 2.3298988e+03 -2.4719680e+03 -3.4959779e+02 - 2.3587975e+03 -2.3897588e+03 -3.6806396e+02 - 2.3884530e+03 -2.3007160e+03 -3.8551055e+02 - 2.4185165e+03 -2.2050354e+03 -4.0197815e+02 - 2.4486561e+03 -2.1029190e+03 -4.1749381e+02 - 2.4785543e+03 -1.9945802e+03 -4.3207370e+02 - 2.5079074e+03 -1.8802481e+03 -4.4572510e+02 - 2.5364237e+03 -1.7601717e+03 -4.5844809e+02 - 2.5638246e+03 -1.6346237e+03 -4.7023695e+02 - 2.5898442e+03 -1.5039039e+03 -4.8108136e+02 - 2.6142304e+03 -1.3683416e+03 -4.9096756e+02 - 2.6367467e+03 -1.2282975e+03 -4.9987937e+02 - 2.6571734e+03 -1.0841642e+03 -5.0779920e+02 - 2.6753098e+03 -9.3636675e+02 -5.1470899e+02 - 2.6909763e+03 -7.8536107e+02 -5.2059107e+02 - 2.7040163e+03 -6.3163209e+02 -5.2542895e+02 - 2.7142986e+03 -4.7569065e+02 -5.2920811e+02 - 2.7217190e+03 -3.1806952e+02 -5.3191652e+02 - 2.7262019e+03 -1.5931869e+02 -5.3354526e+02 - 2.7277013e+03 -2.4067136e-09 -5.3408879e+02 - 2.7164741e+03 2.4067136e-09 -6.2158447e+02 - 2.7150125e+03 1.5789863e+02 -6.2094684e+02 - 2.7106429e+03 3.1523618e+02 -6.1903593e+02 - 2.7034104e+03 4.7145739e+02 -6.1585749e+02 - 2.6933898e+03 6.2601850e+02 -6.1142086e+02 - 2.6806840e+03 7.7839237e+02 -6.0573842e+02 - 2.6654228e+03 9.2807316e+02 -5.9882507e+02 - 2.6477608e+03 1.0745801e+03 -5.9069739e+02 - 2.6278762e+03 1.2174603e+03 -5.8137278e+02 - 2.6059680e+03 1.3562913e+03 -5.7086843e+02 - 2.5822546e+03 1.4906812e+03 -5.5920019e+02 - 2.5569717e+03 1.6202697e+03 -5.4638135e+02 - 2.5303711e+03 1.7447261e+03 -5.3242127e+02 - 2.5027190e+03 1.8637486e+03 -5.1732392e+02 - 2.4742959e+03 1.9770609e+03 -5.0108626e+02 - 2.4453957e+03 2.0844091e+03 -4.8369629e+02 - 2.4163268e+03 2.1855581e+03 -4.6513092e+02 - 2.3874127e+03 2.2802865e+03 -4.4535322e+02 - 2.3589945e+03 2.3683823e+03 -4.2430907e+02 - 2.3314331e+03 2.4496369e+03 -4.0192276e+02 - 2.3051136e+03 2.5238399e+03 -3.7809116e+02 - 2.2804506e+03 2.5907720e+03 -3.5267583e+02 - 2.2578950e+03 2.6501983e+03 -3.2549203e+02 - 2.2379440e+03 2.7018593e+03 -2.9629360e+02 - 2.2211531e+03 2.7454607e+03 -2.6475177e+02 - 2.2081545e+03 2.7806591e+03 -2.3042604e+02 - 2.1996809e+03 2.8070429e+03 -1.9272526e+02 - 2.1965988e+03 2.8241067e+03 -1.5085927e+02 - 2.1999508e+03 2.8312181e+03 -1.0378957e+02 - 2.2109960e+03 2.8275885e+03 -5.0210228e+01 - 2.2312098e+03 2.8122871e+03 1.1352480e+01 - 2.2621138e+03 2.7844181e+03 8.2117103e+01 - 2.3046543e+03 2.7437347e+03 1.6195666e+02 - 2.3577506e+03 2.6920351e+03 2.4747897e+02 - 2.4163133e+03 2.6350104e+03 3.3046807e+02 - 2.4710361e+03 2.5822724e+03 3.9992255e+02 - 2.5124490e+03 2.5432159e+03 4.4850323e+02 - 2.5361950e+03 2.5218580e+03 4.7681021e+02 - 2.5438952e+03 2.5161798e+03 4.9071883e+02 - 2.5403250e+03 2.5210897e+03 4.9642430e+02 - 2.5309411e+03 2.5309411e+03 4.9789240e+02 - 2.5210897e+03 2.5403250e+03 4.9642430e+02 - 2.5161798e+03 2.5438952e+03 4.9071883e+02 - 2.5218580e+03 2.5361950e+03 4.7681021e+02 - 2.5432159e+03 2.5124490e+03 4.4850323e+02 - 2.5822724e+03 2.4710361e+03 3.9992255e+02 - 2.6350104e+03 2.4163133e+03 3.3046807e+02 - 2.6920351e+03 2.3577506e+03 2.4747897e+02 - 2.7437347e+03 2.3046543e+03 1.6195666e+02 - 2.7844181e+03 2.2621138e+03 8.2117103e+01 - 2.8122871e+03 2.2312098e+03 1.1352480e+01 - 2.8275885e+03 2.2109960e+03 -5.0210228e+01 - 2.8312181e+03 2.1999508e+03 -1.0378957e+02 - 2.8241067e+03 2.1965988e+03 -1.5085927e+02 - 2.8070429e+03 2.1996809e+03 -1.9272526e+02 - 2.7806591e+03 2.2081545e+03 -2.3042604e+02 - 2.7454607e+03 2.2211531e+03 -2.6475177e+02 - 2.7018593e+03 2.2379440e+03 -2.9629360e+02 - 2.6501983e+03 2.2578950e+03 -3.2549203e+02 - 2.5907720e+03 2.2804506e+03 -3.5267583e+02 - 2.5238399e+03 2.3051136e+03 -3.7809116e+02 - 2.4496369e+03 2.3314331e+03 -4.0192276e+02 - 2.3683823e+03 2.3589945e+03 -4.2430907e+02 - 2.2802865e+03 2.3874127e+03 -4.4535322e+02 - 2.1855581e+03 2.4163268e+03 -4.6513092e+02 - 2.0844091e+03 2.4453957e+03 -4.8369629e+02 - 1.9770609e+03 2.4742959e+03 -5.0108626e+02 - 1.8637486e+03 2.5027190e+03 -5.1732392e+02 - 1.7447261e+03 2.5303711e+03 -5.3242127e+02 - 1.6202697e+03 2.5569717e+03 -5.4638135e+02 - 1.4906812e+03 2.5822546e+03 -5.5920019e+02 - 1.3562913e+03 2.6059680e+03 -5.7086843e+02 - 1.2174603e+03 2.6278762e+03 -5.8137278e+02 - 1.0745801e+03 2.6477608e+03 -5.9069739e+02 - 9.2807316e+02 2.6654228e+03 -5.9882507e+02 - 7.7839237e+02 2.6806840e+03 -6.0573842e+02 - 6.2601850e+02 2.6933898e+03 -6.1142086e+02 - 4.7145739e+02 2.7034104e+03 -6.1585749e+02 - 3.1523618e+02 2.7106429e+03 -6.1903593e+02 - 1.5789863e+02 2.7150125e+03 -6.2094684e+02 - 0.0000000e+00 2.7164741e+03 -6.2158447e+02 - -1.5789863e+02 2.7150125e+03 -6.2094684e+02 - -3.1523618e+02 2.7106429e+03 -6.1903593e+02 - -4.7145739e+02 2.7034104e+03 -6.1585749e+02 - -6.2601850e+02 2.6933898e+03 -6.1142086e+02 - -7.7839237e+02 2.6806840e+03 -6.0573842e+02 - -9.2807316e+02 2.6654228e+03 -5.9882507e+02 - -1.0745801e+03 2.6477608e+03 -5.9069739e+02 - -1.2174603e+03 2.6278762e+03 -5.8137278e+02 - -1.3562913e+03 2.6059680e+03 -5.7086843e+02 - -1.4906812e+03 2.5822546e+03 -5.5920019e+02 - -1.6202697e+03 2.5569717e+03 -5.4638135e+02 - -1.7447261e+03 2.5303711e+03 -5.3242127e+02 - -1.8637486e+03 2.5027190e+03 -5.1732392e+02 - -1.9770609e+03 2.4742959e+03 -5.0108626e+02 - -2.0844091e+03 2.4453957e+03 -4.8369629e+02 - -2.1855581e+03 2.4163268e+03 -4.6513092e+02 - -2.2802865e+03 2.3874127e+03 -4.4535322e+02 - -2.3683823e+03 2.3589945e+03 -4.2430907e+02 - -2.4496369e+03 2.3314331e+03 -4.0192276e+02 - -2.5238399e+03 2.3051136e+03 -3.7809116e+02 - -2.5907720e+03 2.2804506e+03 -3.5267583e+02 - -2.6501983e+03 2.2578950e+03 -3.2549203e+02 - -2.7018593e+03 2.2379440e+03 -2.9629360e+02 - -2.7454607e+03 2.2211531e+03 -2.6475177e+02 - -2.7806591e+03 2.2081545e+03 -2.3042604e+02 - -2.8070429e+03 2.1996809e+03 -1.9272526e+02 - -2.8241067e+03 2.1965988e+03 -1.5085927e+02 - -2.8312181e+03 2.1999508e+03 -1.0378957e+02 - -2.8275885e+03 2.2109960e+03 -5.0210228e+01 - -2.8122871e+03 2.2312098e+03 1.1352480e+01 - -2.7844181e+03 2.2621138e+03 8.2117103e+01 - -2.7437347e+03 2.3046543e+03 1.6195666e+02 - -2.6920351e+03 2.3577506e+03 2.4747897e+02 - -2.6350104e+03 2.4163133e+03 3.3046807e+02 - -2.5822724e+03 2.4710361e+03 3.9992255e+02 - -2.5432159e+03 2.5124490e+03 4.4850323e+02 - -2.5218580e+03 2.5361950e+03 4.7681021e+02 - -2.5161798e+03 2.5438952e+03 4.9071883e+02 - -2.5210897e+03 2.5403250e+03 4.9642430e+02 - -2.5309411e+03 2.5309411e+03 4.9789240e+02 - -2.5403250e+03 2.5210897e+03 4.9642430e+02 - -2.5438952e+03 2.5161798e+03 4.9071883e+02 - -2.5361950e+03 2.5218580e+03 4.7681021e+02 - -2.5124490e+03 2.5432159e+03 4.4850323e+02 - -2.4710361e+03 2.5822724e+03 3.9992255e+02 - -2.4163133e+03 2.6350104e+03 3.3046807e+02 - -2.3577506e+03 2.6920351e+03 2.4747897e+02 - -2.3046543e+03 2.7437347e+03 1.6195666e+02 - -2.2621138e+03 2.7844181e+03 8.2117103e+01 - -2.2312098e+03 2.8122871e+03 1.1352480e+01 - -2.2109960e+03 2.8275885e+03 -5.0210228e+01 - -2.1999508e+03 2.8312181e+03 -1.0378957e+02 - -2.1965988e+03 2.8241067e+03 -1.5085927e+02 - -2.1996809e+03 2.8070429e+03 -1.9272526e+02 - -2.2081545e+03 2.7806591e+03 -2.3042604e+02 - -2.2211531e+03 2.7454607e+03 -2.6475177e+02 - -2.2379440e+03 2.7018593e+03 -2.9629360e+02 - -2.2578950e+03 2.6501983e+03 -3.2549203e+02 - -2.2804506e+03 2.5907720e+03 -3.5267583e+02 - -2.3051136e+03 2.5238399e+03 -3.7809116e+02 - -2.3314331e+03 2.4496369e+03 -4.0192276e+02 - -2.3589945e+03 2.3683823e+03 -4.2430907e+02 - -2.3874127e+03 2.2802865e+03 -4.4535322e+02 - -2.4163268e+03 2.1855581e+03 -4.6513092e+02 - -2.4453957e+03 2.0844091e+03 -4.8369629e+02 - -2.4742959e+03 1.9770609e+03 -5.0108626e+02 - -2.5027190e+03 1.8637486e+03 -5.1732392e+02 - -2.5303711e+03 1.7447261e+03 -5.3242127e+02 - -2.5569717e+03 1.6202697e+03 -5.4638135e+02 - -2.5822546e+03 1.4906812e+03 -5.5920019e+02 - -2.6059680e+03 1.3562913e+03 -5.7086843e+02 - -2.6278762e+03 1.2174603e+03 -5.8137278e+02 - -2.6477608e+03 1.0745801e+03 -5.9069739e+02 - -2.6654228e+03 9.2807316e+02 -5.9882507e+02 - -2.6806840e+03 7.7839237e+02 -6.0573842e+02 - -2.6933898e+03 6.2601850e+02 -6.1142086e+02 - -2.7034104e+03 4.7145739e+02 -6.1585749e+02 - -2.7106429e+03 3.1523618e+02 -6.1903593e+02 - -2.7150125e+03 1.5789863e+02 -6.2094684e+02 - -2.7164741e+03 2.4067136e-09 -6.2158447e+02 - -2.7150125e+03 -1.5789863e+02 -6.2094684e+02 - -2.7106429e+03 -3.1523618e+02 -6.1903593e+02 - -2.7034104e+03 -4.7145739e+02 -6.1585749e+02 - -2.6933898e+03 -6.2601850e+02 -6.1142086e+02 - -2.6806840e+03 -7.7839237e+02 -6.0573842e+02 - -2.6654228e+03 -9.2807316e+02 -5.9882507e+02 - -2.6477608e+03 -1.0745801e+03 -5.9069739e+02 - -2.6278762e+03 -1.2174603e+03 -5.8137278e+02 - -2.6059680e+03 -1.3562913e+03 -5.7086843e+02 - -2.5822546e+03 -1.4906812e+03 -5.5920019e+02 - -2.5569717e+03 -1.6202697e+03 -5.4638135e+02 - -2.5303711e+03 -1.7447261e+03 -5.3242127e+02 - -2.5027190e+03 -1.8637486e+03 -5.1732392e+02 - -2.4742959e+03 -1.9770609e+03 -5.0108626e+02 - -2.4453957e+03 -2.0844091e+03 -4.8369629e+02 - -2.4163268e+03 -2.1855581e+03 -4.6513092e+02 - -2.3874127e+03 -2.2802865e+03 -4.4535322e+02 - -2.3589945e+03 -2.3683823e+03 -4.2430907e+02 - -2.3314331e+03 -2.4496369e+03 -4.0192276e+02 - -2.3051136e+03 -2.5238399e+03 -3.7809116e+02 - -2.2804506e+03 -2.5907720e+03 -3.5267583e+02 - -2.2578950e+03 -2.6501983e+03 -3.2549203e+02 - -2.2379440e+03 -2.7018593e+03 -2.9629360e+02 - -2.2211531e+03 -2.7454607e+03 -2.6475177e+02 - -2.2081545e+03 -2.7806591e+03 -2.3042604e+02 - -2.1996809e+03 -2.8070429e+03 -1.9272526e+02 - -2.1965988e+03 -2.8241067e+03 -1.5085927e+02 - -2.1999508e+03 -2.8312181e+03 -1.0378957e+02 - -2.2109960e+03 -2.8275885e+03 -5.0210228e+01 - -2.2312098e+03 -2.8122871e+03 1.1352480e+01 - -2.2621138e+03 -2.7844181e+03 8.2117103e+01 - -2.3046543e+03 -2.7437347e+03 1.6195666e+02 - -2.3577506e+03 -2.6920351e+03 2.4747897e+02 - -2.4163133e+03 -2.6350104e+03 3.3046807e+02 - -2.4710361e+03 -2.5822724e+03 3.9992255e+02 - -2.5124490e+03 -2.5432159e+03 4.4850323e+02 - -2.5361950e+03 -2.5218580e+03 4.7681021e+02 - -2.5438952e+03 -2.5161798e+03 4.9071883e+02 - -2.5403250e+03 -2.5210897e+03 4.9642430e+02 - -2.5309411e+03 -2.5309411e+03 4.9789240e+02 - -2.5210897e+03 -2.5403250e+03 4.9642430e+02 - -2.5161798e+03 -2.5438952e+03 4.9071883e+02 - -2.5218580e+03 -2.5361950e+03 4.7681021e+02 - -2.5432159e+03 -2.5124490e+03 4.4850323e+02 - -2.5822724e+03 -2.4710361e+03 3.9992255e+02 - -2.6350104e+03 -2.4163133e+03 3.3046807e+02 - -2.6920351e+03 -2.3577506e+03 2.4747897e+02 - -2.7437347e+03 -2.3046543e+03 1.6195666e+02 - -2.7844181e+03 -2.2621138e+03 8.2117103e+01 - -2.8122871e+03 -2.2312098e+03 1.1352480e+01 - -2.8275885e+03 -2.2109960e+03 -5.0210228e+01 - -2.8312181e+03 -2.1999508e+03 -1.0378957e+02 - -2.8241067e+03 -2.1965988e+03 -1.5085927e+02 - -2.8070429e+03 -2.1996809e+03 -1.9272526e+02 - -2.7806591e+03 -2.2081545e+03 -2.3042604e+02 - -2.7454607e+03 -2.2211531e+03 -2.6475177e+02 - -2.7018593e+03 -2.2379440e+03 -2.9629360e+02 - -2.6501983e+03 -2.2578950e+03 -3.2549203e+02 - -2.5907720e+03 -2.2804506e+03 -3.5267583e+02 - -2.5238399e+03 -2.3051136e+03 -3.7809116e+02 - -2.4496369e+03 -2.3314331e+03 -4.0192276e+02 - -2.3683823e+03 -2.3589945e+03 -4.2430907e+02 - -2.2802865e+03 -2.3874127e+03 -4.4535322e+02 - -2.1855581e+03 -2.4163268e+03 -4.6513092e+02 - -2.0844091e+03 -2.4453957e+03 -4.8369629e+02 - -1.9770609e+03 -2.4742959e+03 -5.0108626e+02 - -1.8637486e+03 -2.5027190e+03 -5.1732392e+02 - -1.7447261e+03 -2.5303711e+03 -5.3242127e+02 - -1.6202697e+03 -2.5569717e+03 -5.4638135e+02 - -1.4906812e+03 -2.5822546e+03 -5.5920019e+02 - -1.3562913e+03 -2.6059680e+03 -5.7086843e+02 - -1.2174603e+03 -2.6278762e+03 -5.8137278e+02 - -1.0745801e+03 -2.6477608e+03 -5.9069739e+02 - -9.2807316e+02 -2.6654228e+03 -5.9882507e+02 - -7.7839237e+02 -2.6806840e+03 -6.0573842e+02 - -6.2601850e+02 -2.6933898e+03 -6.1142086e+02 - -4.7145739e+02 -2.7034104e+03 -6.1585749e+02 - -3.1523618e+02 -2.7106429e+03 -6.1903593e+02 - -1.5789863e+02 -2.7150125e+03 -6.2094684e+02 - -4.8134273e-09 -2.7164741e+03 -6.2158447e+02 - 1.5789863e+02 -2.7150125e+03 -6.2094684e+02 - 3.1523618e+02 -2.7106429e+03 -6.1903593e+02 - 4.7145739e+02 -2.7034104e+03 -6.1585749e+02 - 6.2601850e+02 -2.6933898e+03 -6.1142086e+02 - 7.7839237e+02 -2.6806840e+03 -6.0573842e+02 - 9.2807316e+02 -2.6654228e+03 -5.9882507e+02 - 1.0745801e+03 -2.6477608e+03 -5.9069739e+02 - 1.2174603e+03 -2.6278762e+03 -5.8137278e+02 - 1.3562913e+03 -2.6059680e+03 -5.7086843e+02 - 1.4906812e+03 -2.5822546e+03 -5.5920019e+02 - 1.6202697e+03 -2.5569717e+03 -5.4638135e+02 - 1.7447261e+03 -2.5303711e+03 -5.3242127e+02 - 1.8637486e+03 -2.5027190e+03 -5.1732392e+02 - 1.9770609e+03 -2.4742959e+03 -5.0108626e+02 - 2.0844091e+03 -2.4453957e+03 -4.8369629e+02 - 2.1855581e+03 -2.4163268e+03 -4.6513092e+02 - 2.2802865e+03 -2.3874127e+03 -4.4535322e+02 - 2.3683823e+03 -2.3589945e+03 -4.2430907e+02 - 2.4496369e+03 -2.3314331e+03 -4.0192276e+02 - 2.5238399e+03 -2.3051136e+03 -3.7809116e+02 - 2.5907720e+03 -2.2804506e+03 -3.5267583e+02 - 2.6501983e+03 -2.2578950e+03 -3.2549203e+02 - 2.7018593e+03 -2.2379440e+03 -2.9629360e+02 - 2.7454607e+03 -2.2211531e+03 -2.6475177e+02 - 2.7806591e+03 -2.2081545e+03 -2.3042604e+02 - 2.8070429e+03 -2.1996809e+03 -1.9272526e+02 - 2.8241067e+03 -2.1965988e+03 -1.5085927e+02 - 2.8312181e+03 -2.1999508e+03 -1.0378957e+02 - 2.8275885e+03 -2.2109960e+03 -5.0210228e+01 - 2.8122871e+03 -2.2312098e+03 1.1352480e+01 - 2.7844181e+03 -2.2621138e+03 8.2117103e+01 - 2.7437347e+03 -2.3046543e+03 1.6195666e+02 - 2.6920351e+03 -2.3577506e+03 2.4747897e+02 - 2.6350104e+03 -2.4163133e+03 3.3046807e+02 - 2.5822724e+03 -2.4710361e+03 3.9992255e+02 - 2.5432159e+03 -2.5124490e+03 4.4850323e+02 - 2.5218580e+03 -2.5361950e+03 4.7681021e+02 - 2.5161798e+03 -2.5438952e+03 4.9071883e+02 - 2.5210897e+03 -2.5403250e+03 4.9642430e+02 - 2.5309411e+03 -2.5309411e+03 4.9789240e+02 - 2.5403250e+03 -2.5210897e+03 4.9642430e+02 - 2.5438952e+03 -2.5161798e+03 4.9071883e+02 - 2.5361950e+03 -2.5218580e+03 4.7681021e+02 - 2.5124490e+03 -2.5432159e+03 4.4850323e+02 - 2.4710361e+03 -2.5822724e+03 3.9992255e+02 - 2.4163133e+03 -2.6350104e+03 3.3046807e+02 - 2.3577506e+03 -2.6920351e+03 2.4747897e+02 - 2.3046543e+03 -2.7437347e+03 1.6195666e+02 - 2.2621138e+03 -2.7844181e+03 8.2117103e+01 - 2.2312098e+03 -2.8122871e+03 1.1352480e+01 - 2.2109960e+03 -2.8275885e+03 -5.0210228e+01 - 2.1999508e+03 -2.8312181e+03 -1.0378957e+02 - 2.1965988e+03 -2.8241067e+03 -1.5085927e+02 - 2.1996809e+03 -2.8070429e+03 -1.9272526e+02 - 2.2081545e+03 -2.7806591e+03 -2.3042604e+02 - 2.2211531e+03 -2.7454607e+03 -2.6475177e+02 - 2.2379440e+03 -2.7018593e+03 -2.9629360e+02 - 2.2578950e+03 -2.6501983e+03 -3.2549203e+02 - 2.2804506e+03 -2.5907720e+03 -3.5267583e+02 - 2.3051136e+03 -2.5238399e+03 -3.7809116e+02 - 2.3314331e+03 -2.4496369e+03 -4.0192276e+02 - 2.3589945e+03 -2.3683823e+03 -4.2430907e+02 - 2.3874127e+03 -2.2802865e+03 -4.4535322e+02 - 2.4163268e+03 -2.1855581e+03 -4.6513092e+02 - 2.4453957e+03 -2.0844091e+03 -4.8369629e+02 - 2.4742959e+03 -1.9770609e+03 -5.0108626e+02 - 2.5027190e+03 -1.8637486e+03 -5.1732392e+02 - 2.5303711e+03 -1.7447261e+03 -5.3242127e+02 - 2.5569717e+03 -1.6202697e+03 -5.4638135e+02 - 2.5822546e+03 -1.4906812e+03 -5.5920019e+02 - 2.6059680e+03 -1.3562913e+03 -5.7086843e+02 - 2.6278762e+03 -1.2174603e+03 -5.8137278e+02 - 2.6477608e+03 -1.0745801e+03 -5.9069739e+02 - 2.6654228e+03 -9.2807316e+02 -5.9882507e+02 - 2.6806840e+03 -7.7839237e+02 -6.0573842e+02 - 2.6933898e+03 -6.2601850e+02 -6.1142086e+02 - 2.7034104e+03 -4.7145739e+02 -6.1585749e+02 - 2.7106429e+03 -3.1523618e+02 -6.1903593e+02 - 2.7150125e+03 -1.5789863e+02 -6.2094684e+02 - 2.7164741e+03 4.8134273e-09 -6.2158447e+02 - 2.7035980e+03 0.0000000e+00 -7.0839325e+02 - 2.7021807e+03 1.5624538e+02 -7.0765946e+02 - 2.6979436e+03 3.1193705e+02 -7.0546002e+02 - 2.6909314e+03 4.6652692e+02 -7.0180064e+02 - 2.6812178e+03 6.1947792e+02 -6.9669044e+02 - 2.6689045e+03 7.7026899e+02 -6.9014146e+02 - 2.6541197e+03 9.1839950e+02 -6.8216786e+02 - 2.6370168e+03 1.0633929e+03 -6.7278505e+02 - 2.6177723e+03 1.2047997e+03 -6.6200855e+02 - 2.5965843e+03 1.3421989e+03 -6.4985273e+02 - 2.5736704e+03 1.4751996e+03 -6.3632938e+02 - 2.5492662e+03 1.6034403e+03 -6.2144611e+02 - 2.5236243e+03 1.7265883e+03 -6.0520454e+02 - 2.4970131e+03 1.8443378e+03 -5.8759832e+02 - 2.4697164e+03 1.9564068e+03 -5.6861075e+02 - 2.4420336e+03 2.0625341e+03 -5.4821215e+02 - 2.4142810e+03 2.1624748e+03 -5.2635654e+02 - 2.3867931e+03 2.2559952e+03 -5.0297764e+02 - 2.3599256e+03 2.3428677e+03 -4.7798382e+02 - 2.3340597e+03 2.4228640e+03 -4.5125158e+02 - 2.3096073e+03 2.4957482e+03 -4.2261703e+02 - 2.2870188e+03 2.5612685e+03 -3.9186464e+02 - 2.2667932e+03 2.6191471e+03 -3.5871240e+02 - 2.2494915e+03 2.6690683e+03 -3.2279242e+02 - 2.2357544e+03 2.7106639e+03 -2.8362642e+02 - 2.2263250e+03 2.7434945e+03 -2.4059667e+02 - 2.2220766e+03 2.7670283e+03 -1.9291722e+02 - 2.2240397e+03 2.7806223e+03 -1.3961977e+02 - 2.2334130e+03 2.7835213e+03 -7.9591064e+01 - 2.2515106e+03 2.7749196e+03 -1.1741973e+01 - 2.2795421e+03 2.7541851e+03 6.4547384e+01 - 2.3180461e+03 2.7214107e+03 1.4853854e+02 - 2.3658413e+03 2.6784123e+03 2.3687370e+02 - 2.4188422e+03 2.6298096e+03 3.2282174e+02 - 2.4700427e+03 2.5829190e+03 3.9772936e+02 - 2.5118775e+03 2.5453316e+03 4.5497877e+02 - 2.5396112e+03 2.5215886e+03 4.9322119e+02 - 2.5527280e+03 2.5119250e+03 5.1577975e+02 - 2.5537577e+03 2.5135513e+03 5.2763608e+02 - 2.5464637e+03 2.5225137e+03 5.3302850e+02 - 2.5347729e+03 2.5347729e+03 5.3454376e+02 - 2.5225137e+03 2.5464637e+03 5.3302850e+02 - 2.5135513e+03 2.5537577e+03 5.2763608e+02 - 2.5119250e+03 2.5527280e+03 5.1577975e+02 - 2.5215886e+03 2.5396112e+03 4.9322119e+02 - 2.5453316e+03 2.5118775e+03 4.5497877e+02 - 2.5829190e+03 2.4700427e+03 3.9772936e+02 - 2.6298096e+03 2.4188422e+03 3.2282174e+02 - 2.6784123e+03 2.3658413e+03 2.3687370e+02 - 2.7214107e+03 2.3180461e+03 1.4853854e+02 - 2.7541851e+03 2.2795421e+03 6.4547384e+01 - 2.7749196e+03 2.2515106e+03 -1.1741973e+01 - 2.7835213e+03 2.2334130e+03 -7.9591064e+01 - 2.7806223e+03 2.2240397e+03 -1.3961977e+02 - 2.7670283e+03 2.2220766e+03 -1.9291722e+02 - 2.7434945e+03 2.2263250e+03 -2.4059667e+02 - 2.7106639e+03 2.2357544e+03 -2.8362642e+02 - 2.6690683e+03 2.2494915e+03 -3.2279242e+02 - 2.6191471e+03 2.2667932e+03 -3.5871240e+02 - 2.5612685e+03 2.2870188e+03 -3.9186464e+02 - 2.4957482e+03 2.3096073e+03 -4.2261703e+02 - 2.4228640e+03 2.3340597e+03 -4.5125158e+02 - 2.3428677e+03 2.3599256e+03 -4.7798382e+02 - 2.2559952e+03 2.3867931e+03 -5.0297764e+02 - 2.1624748e+03 2.4142810e+03 -5.2635654e+02 - 2.0625341e+03 2.4420336e+03 -5.4821215e+02 - 1.9564068e+03 2.4697164e+03 -5.6861075e+02 - 1.8443378e+03 2.4970131e+03 -5.8759832e+02 - 1.7265883e+03 2.5236243e+03 -6.0520454e+02 - 1.6034403e+03 2.5492662e+03 -6.2144611e+02 - 1.4751996e+03 2.5736704e+03 -6.3632938e+02 - 1.3421989e+03 2.5965843e+03 -6.4985273e+02 - 1.2047997e+03 2.6177723e+03 -6.6200855e+02 - 1.0633929e+03 2.6370168e+03 -6.7278505e+02 - 9.1839950e+02 2.6541197e+03 -6.8216786e+02 - 7.7026899e+02 2.6689045e+03 -6.9014146e+02 - 6.1947792e+02 2.6812178e+03 -6.9669044e+02 - 4.6652692e+02 2.6909314e+03 -7.0180064e+02 - 3.1193705e+02 2.6979436e+03 -7.0546002e+02 - 1.5624538e+02 2.7021807e+03 -7.0765946e+02 - 0.0000000e+00 2.7035980e+03 -7.0839325e+02 - -1.5624538e+02 2.7021807e+03 -7.0765946e+02 - -3.1193705e+02 2.6979436e+03 -7.0546002e+02 - -4.6652692e+02 2.6909314e+03 -7.0180064e+02 - -6.1947792e+02 2.6812178e+03 -6.9669044e+02 - -7.7026899e+02 2.6689045e+03 -6.9014146e+02 - -9.1839950e+02 2.6541197e+03 -6.8216786e+02 - -1.0633929e+03 2.6370168e+03 -6.7278505e+02 - -1.2047997e+03 2.6177723e+03 -6.6200855e+02 - -1.3421989e+03 2.5965843e+03 -6.4985273e+02 - -1.4751996e+03 2.5736704e+03 -6.3632938e+02 - -1.6034403e+03 2.5492662e+03 -6.2144611e+02 - -1.7265883e+03 2.5236243e+03 -6.0520454e+02 - -1.8443378e+03 2.4970131e+03 -5.8759832e+02 - -1.9564068e+03 2.4697164e+03 -5.6861075e+02 - -2.0625341e+03 2.4420336e+03 -5.4821215e+02 - -2.1624748e+03 2.4142810e+03 -5.2635654e+02 - -2.2559952e+03 2.3867931e+03 -5.0297764e+02 - -2.3428677e+03 2.3599256e+03 -4.7798382e+02 - -2.4228640e+03 2.3340597e+03 -4.5125158e+02 - -2.4957482e+03 2.3096073e+03 -4.2261703e+02 - -2.5612685e+03 2.2870188e+03 -3.9186464e+02 - -2.6191471e+03 2.2667932e+03 -3.5871240e+02 - -2.6690683e+03 2.2494915e+03 -3.2279242e+02 - -2.7106639e+03 2.2357544e+03 -2.8362642e+02 - -2.7434945e+03 2.2263250e+03 -2.4059667e+02 - -2.7670283e+03 2.2220766e+03 -1.9291722e+02 - -2.7806223e+03 2.2240397e+03 -1.3961977e+02 - -2.7835213e+03 2.2334130e+03 -7.9591064e+01 - -2.7749196e+03 2.2515106e+03 -1.1741973e+01 - -2.7541851e+03 2.2795421e+03 6.4547384e+01 - -2.7214107e+03 2.3180461e+03 1.4853854e+02 - -2.6784123e+03 2.3658413e+03 2.3687370e+02 - -2.6298096e+03 2.4188422e+03 3.2282174e+02 - -2.5829190e+03 2.4700427e+03 3.9772936e+02 - -2.5453316e+03 2.5118775e+03 4.5497877e+02 - -2.5215886e+03 2.5396112e+03 4.9322119e+02 - -2.5119250e+03 2.5527280e+03 5.1577975e+02 - -2.5135513e+03 2.5537577e+03 5.2763608e+02 - -2.5225137e+03 2.5464637e+03 5.3302850e+02 - -2.5347729e+03 2.5347729e+03 5.3454376e+02 - -2.5464637e+03 2.5225137e+03 5.3302850e+02 - -2.5537577e+03 2.5135513e+03 5.2763608e+02 - -2.5527280e+03 2.5119250e+03 5.1577975e+02 - -2.5396112e+03 2.5215886e+03 4.9322119e+02 - -2.5118775e+03 2.5453316e+03 4.5497877e+02 - -2.4700427e+03 2.5829190e+03 3.9772936e+02 - -2.4188422e+03 2.6298096e+03 3.2282174e+02 - -2.3658413e+03 2.6784123e+03 2.3687370e+02 - -2.3180461e+03 2.7214107e+03 1.4853854e+02 - -2.2795421e+03 2.7541851e+03 6.4547384e+01 - -2.2515106e+03 2.7749196e+03 -1.1741973e+01 - -2.2334130e+03 2.7835213e+03 -7.9591064e+01 - -2.2240397e+03 2.7806223e+03 -1.3961977e+02 - -2.2220766e+03 2.7670283e+03 -1.9291722e+02 - -2.2263250e+03 2.7434945e+03 -2.4059667e+02 - -2.2357544e+03 2.7106639e+03 -2.8362642e+02 - -2.2494915e+03 2.6690683e+03 -3.2279242e+02 - -2.2667932e+03 2.6191471e+03 -3.5871240e+02 - -2.2870188e+03 2.5612685e+03 -3.9186464e+02 - -2.3096073e+03 2.4957482e+03 -4.2261703e+02 - -2.3340597e+03 2.4228640e+03 -4.5125158e+02 - -2.3599256e+03 2.3428677e+03 -4.7798382e+02 - -2.3867931e+03 2.2559952e+03 -5.0297764e+02 - -2.4142810e+03 2.1624748e+03 -5.2635654e+02 - -2.4420336e+03 2.0625341e+03 -5.4821215e+02 - -2.4697164e+03 1.9564068e+03 -5.6861075e+02 - -2.4970131e+03 1.8443378e+03 -5.8759832e+02 - -2.5236243e+03 1.7265883e+03 -6.0520454e+02 - -2.5492662e+03 1.6034403e+03 -6.2144611e+02 - -2.5736704e+03 1.4751996e+03 -6.3632938e+02 - -2.5965843e+03 1.3421989e+03 -6.4985273e+02 - -2.6177723e+03 1.2047997e+03 -6.6200855e+02 - -2.6370168e+03 1.0633929e+03 -6.7278505e+02 - -2.6541197e+03 9.1839950e+02 -6.8216786e+02 - -2.6689045e+03 7.7026899e+02 -6.9014146e+02 - -2.6812178e+03 6.1947792e+02 -6.9669044e+02 - -2.6909314e+03 4.6652692e+02 -7.0180064e+02 - -2.6979436e+03 3.1193705e+02 -7.0546002e+02 - -2.7021807e+03 1.5624538e+02 -7.0765946e+02 - -2.7035980e+03 0.0000000e+00 -7.0839325e+02 - -2.7021807e+03 -1.5624538e+02 -7.0765946e+02 - -2.6979436e+03 -3.1193705e+02 -7.0546002e+02 - -2.6909314e+03 -4.6652692e+02 -7.0180064e+02 - -2.6812178e+03 -6.1947792e+02 -6.9669044e+02 - -2.6689045e+03 -7.7026899e+02 -6.9014146e+02 - -2.6541197e+03 -9.1839950e+02 -6.8216786e+02 - -2.6370168e+03 -1.0633929e+03 -6.7278505e+02 - -2.6177723e+03 -1.2047997e+03 -6.6200855e+02 - -2.5965843e+03 -1.3421989e+03 -6.4985273e+02 - -2.5736704e+03 -1.4751996e+03 -6.3632938e+02 - -2.5492662e+03 -1.6034403e+03 -6.2144611e+02 - -2.5236243e+03 -1.7265883e+03 -6.0520454e+02 - -2.4970131e+03 -1.8443378e+03 -5.8759832e+02 - -2.4697164e+03 -1.9564068e+03 -5.6861075e+02 - -2.4420336e+03 -2.0625341e+03 -5.4821215e+02 - -2.4142810e+03 -2.1624748e+03 -5.2635654e+02 - -2.3867931e+03 -2.2559952e+03 -5.0297764e+02 - -2.3599256e+03 -2.3428677e+03 -4.7798382e+02 - -2.3340597e+03 -2.4228640e+03 -4.5125158e+02 - -2.3096073e+03 -2.4957482e+03 -4.2261703e+02 - -2.2870188e+03 -2.5612685e+03 -3.9186464e+02 - -2.2667932e+03 -2.6191471e+03 -3.5871240e+02 - -2.2494915e+03 -2.6690683e+03 -3.2279242e+02 - -2.2357544e+03 -2.7106639e+03 -2.8362642e+02 - -2.2263250e+03 -2.7434945e+03 -2.4059667e+02 - -2.2220766e+03 -2.7670283e+03 -1.9291722e+02 - -2.2240397e+03 -2.7806223e+03 -1.3961977e+02 - -2.2334130e+03 -2.7835213e+03 -7.9591064e+01 - -2.2515106e+03 -2.7749196e+03 -1.1741973e+01 - -2.2795421e+03 -2.7541851e+03 6.4547384e+01 - -2.3180461e+03 -2.7214107e+03 1.4853854e+02 - -2.3658413e+03 -2.6784123e+03 2.3687370e+02 - -2.4188422e+03 -2.6298096e+03 3.2282174e+02 - -2.4700427e+03 -2.5829190e+03 3.9772936e+02 - -2.5118775e+03 -2.5453316e+03 4.5497877e+02 - -2.5396112e+03 -2.5215886e+03 4.9322119e+02 - -2.5527280e+03 -2.5119250e+03 5.1577975e+02 - -2.5537577e+03 -2.5135513e+03 5.2763608e+02 - -2.5464637e+03 -2.5225137e+03 5.3302850e+02 - -2.5347729e+03 -2.5347729e+03 5.3454376e+02 - -2.5225137e+03 -2.5464637e+03 5.3302850e+02 - -2.5135513e+03 -2.5537577e+03 5.2763608e+02 - -2.5119250e+03 -2.5527280e+03 5.1577975e+02 - -2.5215886e+03 -2.5396112e+03 4.9322119e+02 - -2.5453316e+03 -2.5118775e+03 4.5497877e+02 - -2.5829190e+03 -2.4700427e+03 3.9772936e+02 - -2.6298096e+03 -2.4188422e+03 3.2282174e+02 - -2.6784123e+03 -2.3658413e+03 2.3687370e+02 - -2.7214107e+03 -2.3180461e+03 1.4853854e+02 - -2.7541851e+03 -2.2795421e+03 6.4547384e+01 - -2.7749196e+03 -2.2515106e+03 -1.1741973e+01 - -2.7835213e+03 -2.2334130e+03 -7.9591064e+01 - -2.7806223e+03 -2.2240397e+03 -1.3961977e+02 - -2.7670283e+03 -2.2220766e+03 -1.9291722e+02 - -2.7434945e+03 -2.2263250e+03 -2.4059667e+02 - -2.7106639e+03 -2.2357544e+03 -2.8362642e+02 - -2.6690683e+03 -2.2494915e+03 -3.2279242e+02 - -2.6191471e+03 -2.2667932e+03 -3.5871240e+02 - -2.5612685e+03 -2.2870188e+03 -3.9186464e+02 - -2.4957482e+03 -2.3096073e+03 -4.2261703e+02 - -2.4228640e+03 -2.3340597e+03 -4.5125158e+02 - -2.3428677e+03 -2.3599256e+03 -4.7798382e+02 - -2.2559952e+03 -2.3867931e+03 -5.0297764e+02 - -2.1624748e+03 -2.4142810e+03 -5.2635654e+02 - -2.0625341e+03 -2.4420336e+03 -5.4821215e+02 - -1.9564068e+03 -2.4697164e+03 -5.6861075e+02 - -1.8443378e+03 -2.4970131e+03 -5.8759832e+02 - -1.7265883e+03 -2.5236243e+03 -6.0520454e+02 - -1.6034403e+03 -2.5492662e+03 -6.2144611e+02 - -1.4751996e+03 -2.5736704e+03 -6.3632938e+02 - -1.3421989e+03 -2.5965843e+03 -6.4985273e+02 - -1.2047997e+03 -2.6177723e+03 -6.6200855e+02 - -1.0633929e+03 -2.6370168e+03 -6.7278505e+02 - -9.1839950e+02 -2.6541197e+03 -6.8216786e+02 - -7.7026899e+02 -2.6689045e+03 -6.9014146e+02 - -6.1947792e+02 -2.6812178e+03 -6.9669044e+02 - -4.6652692e+02 -2.6909314e+03 -7.0180064e+02 - -3.1193705e+02 -2.6979436e+03 -7.0546002e+02 - -1.5624538e+02 -2.7021807e+03 -7.0765946e+02 - 4.8134273e-09 -2.7035980e+03 -7.0839325e+02 - 1.5624538e+02 -2.7021807e+03 -7.0765946e+02 - 3.1193705e+02 -2.6979436e+03 -7.0546002e+02 - 4.6652692e+02 -2.6909314e+03 -7.0180064e+02 - 6.1947792e+02 -2.6812178e+03 -6.9669044e+02 - 7.7026899e+02 -2.6689045e+03 -6.9014146e+02 - 9.1839950e+02 -2.6541197e+03 -6.8216786e+02 - 1.0633929e+03 -2.6370168e+03 -6.7278505e+02 - 1.2047997e+03 -2.6177723e+03 -6.6200855e+02 - 1.3421989e+03 -2.5965843e+03 -6.4985273e+02 - 1.4751996e+03 -2.5736704e+03 -6.3632938e+02 - 1.6034403e+03 -2.5492662e+03 -6.2144611e+02 - 1.7265883e+03 -2.5236243e+03 -6.0520454e+02 - 1.8443378e+03 -2.4970131e+03 -5.8759832e+02 - 1.9564068e+03 -2.4697164e+03 -5.6861075e+02 - 2.0625341e+03 -2.4420336e+03 -5.4821215e+02 - 2.1624748e+03 -2.4142810e+03 -5.2635654e+02 - 2.2559952e+03 -2.3867931e+03 -5.0297764e+02 - 2.3428677e+03 -2.3599256e+03 -4.7798382e+02 - 2.4228640e+03 -2.3340597e+03 -4.5125158e+02 - 2.4957482e+03 -2.3096073e+03 -4.2261703e+02 - 2.5612685e+03 -2.2870188e+03 -3.9186464e+02 - 2.6191471e+03 -2.2667932e+03 -3.5871240e+02 - 2.6690683e+03 -2.2494915e+03 -3.2279242e+02 - 2.7106639e+03 -2.2357544e+03 -2.8362642e+02 - 2.7434945e+03 -2.2263250e+03 -2.4059667e+02 - 2.7670283e+03 -2.2220766e+03 -1.9291722e+02 - 2.7806223e+03 -2.2240397e+03 -1.3961977e+02 - 2.7835213e+03 -2.2334130e+03 -7.9591064e+01 - 2.7749196e+03 -2.2515106e+03 -1.1741973e+01 - 2.7541851e+03 -2.2795421e+03 6.4547384e+01 - 2.7214107e+03 -2.3180461e+03 1.4853854e+02 - 2.6784123e+03 -2.3658413e+03 2.3687370e+02 - 2.6298096e+03 -2.4188422e+03 3.2282174e+02 - 2.5829190e+03 -2.4700427e+03 3.9772936e+02 - 2.5453316e+03 -2.5118775e+03 4.5497877e+02 - 2.5215886e+03 -2.5396112e+03 4.9322119e+02 - 2.5119250e+03 -2.5527280e+03 5.1577975e+02 - 2.5135513e+03 -2.5537577e+03 5.2763608e+02 - 2.5225137e+03 -2.5464637e+03 5.3302850e+02 - 2.5347729e+03 -2.5347729e+03 5.3454376e+02 - 2.5464637e+03 -2.5225137e+03 5.3302850e+02 - 2.5537577e+03 -2.5135513e+03 5.2763608e+02 - 2.5527280e+03 -2.5119250e+03 5.1577975e+02 - 2.5396112e+03 -2.5215886e+03 4.9322119e+02 - 2.5118775e+03 -2.5453316e+03 4.5497877e+02 - 2.4700427e+03 -2.5829190e+03 3.9772936e+02 - 2.4188422e+03 -2.6298096e+03 3.2282174e+02 - 2.3658413e+03 -2.6784123e+03 2.3687370e+02 - 2.3180461e+03 -2.7214107e+03 1.4853854e+02 - 2.2795421e+03 -2.7541851e+03 6.4547384e+01 - 2.2515106e+03 -2.7749196e+03 -1.1741973e+01 - 2.2334130e+03 -2.7835213e+03 -7.9591064e+01 - 2.2240397e+03 -2.7806223e+03 -1.3961977e+02 - 2.2220766e+03 -2.7670283e+03 -1.9291722e+02 - 2.2263250e+03 -2.7434945e+03 -2.4059667e+02 - 2.2357544e+03 -2.7106639e+03 -2.8362642e+02 - 2.2494915e+03 -2.6690683e+03 -3.2279242e+02 - 2.2667932e+03 -2.6191471e+03 -3.5871240e+02 - 2.2870188e+03 -2.5612685e+03 -3.9186464e+02 - 2.3096073e+03 -2.4957482e+03 -4.2261703e+02 - 2.3340597e+03 -2.4228640e+03 -4.5125158e+02 - 2.3599256e+03 -2.3428677e+03 -4.7798382e+02 - 2.3867931e+03 -2.2559952e+03 -5.0297764e+02 - 2.4142810e+03 -2.1624748e+03 -5.2635654e+02 - 2.4420336e+03 -2.0625341e+03 -5.4821215e+02 - 2.4697164e+03 -1.9564068e+03 -5.6861075e+02 - 2.4970131e+03 -1.8443378e+03 -5.8759832e+02 - 2.5236243e+03 -1.7265883e+03 -6.0520454e+02 - 2.5492662e+03 -1.6034403e+03 -6.2144611e+02 - 2.5736704e+03 -1.4751996e+03 -6.3632938e+02 - 2.5965843e+03 -1.3421989e+03 -6.4985273e+02 - 2.6177723e+03 -1.2047997e+03 -6.6200855e+02 - 2.6370168e+03 -1.0633929e+03 -6.7278505e+02 - 2.6541197e+03 -9.1839950e+02 -6.8216786e+02 - 2.6689045e+03 -7.7026899e+02 -6.9014146e+02 - 2.6812178e+03 -6.1947792e+02 -6.9669044e+02 - 2.6909314e+03 -4.6652692e+02 -7.0180064e+02 - 2.6979436e+03 -3.1193705e+02 -7.0546002e+02 - 2.7021807e+03 -1.5624538e+02 -7.0765946e+02 - 2.7035980e+03 0.0000000e+00 -7.0839325e+02 - 2.6891054e+03 -2.4067136e-09 -7.9442691e+02 - 2.6877391e+03 1.5435122e+02 -7.9359421e+02 - 2.6836550e+03 3.0815650e+02 -7.9109791e+02 - 2.6768973e+03 4.6087524e+02 -7.8694323e+02 - 2.6675387e+03 6.1197738e+02 -7.8113847e+02 - 2.6556798e+03 7.6094811e+02 -7.7369433e+02 - 2.6414478e+03 9.0729207e+02 -7.6462305e+02 - 2.6249948e+03 1.0505369e+03 -7.5393729e+02 - 2.6064966e+03 1.1902357e+03 -7.4164879e+02 - 2.5861508e+03 1.3259689e+03 -7.2776677e+02 - 2.5641751e+03 1.4573453e+03 -7.1229620e+02 - 2.5408066e+03 1.5840013e+03 -6.9523569e+02 - 2.5163003e+03 1.7056002e+03 -6.7657518e+02 - 2.4909288e+03 1.8218301e+03 -6.5629327e+02 - 2.4649824e+03 1.9324007e+03 -6.3435406e+02 - 2.4387696e+03 2.0370396e+03 -6.1070348e+02 - 2.4126191e+03 2.1354878e+03 -5.8526475e+02 - 2.3868825e+03 2.2274939e+03 -5.5793287e+02 - 2.3619381e+03 2.3128076e+03 -5.2856777e+02 - 2.3381967e+03 2.3911725e+03 -4.9698560e+02 - 2.3161090e+03 2.4623169e+03 -4.6294781e+02 - 2.2961758e+03 2.5259439e+03 -4.2614761e+02 - 2.2789612e+03 2.5817191e+03 -3.8619347e+02 - 2.2651081e+03 2.6292563e+03 -3.4259049e+02 - 2.2553579e+03 2.6681025e+03 -2.9472234e+02 - 2.2505700e+03 2.6977233e+03 -2.4184131e+02 - 2.2517330e+03 2.7174978e+03 -1.8308372e+02 - 2.2599498e+03 2.7267421e+03 -1.1754654e+02 - 2.2763519e+03 2.7247998e+03 -4.4489191e+01 - 2.3018650e+03 2.7112758e+03 3.6248715e+01 - 2.3367273e+03 2.6864997e+03 1.2355357e+02 - 2.3797395e+03 2.6522287e+03 2.1421873e+02 - 2.4275496e+03 2.6122831e+03 3.0261498e+02 - 2.4747307e+03 2.5723820e+03 3.8176755e+02 - 2.5152539e+03 2.5386303e+03 4.4591119e+02 - 2.5446826e+03 2.5153644e+03 4.9281520e+02 - 2.5614523e+03 2.5039630e+03 5.2398755e+02 - 2.5665508e+03 2.5032465e+03 5.4300821e+02 - 2.5623925e+03 2.5106434e+03 5.5366470e+02 - 2.5518607e+03 2.5231607e+03 5.5889063e+02 - 2.5378451e+03 2.5378451e+03 5.6044096e+02 - 2.5231607e+03 2.5518607e+03 5.5889063e+02 - 2.5106434e+03 2.5623925e+03 5.5366470e+02 - 2.5032465e+03 2.5665508e+03 5.4300821e+02 - 2.5039630e+03 2.5614523e+03 5.2398755e+02 - 2.5153644e+03 2.5446826e+03 4.9281520e+02 - 2.5386303e+03 2.5152539e+03 4.4591119e+02 - 2.5723820e+03 2.4747307e+03 3.8176755e+02 - 2.6122831e+03 2.4275496e+03 3.0261498e+02 - 2.6522287e+03 2.3797395e+03 2.1421873e+02 - 2.6864997e+03 2.3367273e+03 1.2355357e+02 - 2.7112758e+03 2.3018650e+03 3.6248715e+01 - 2.7247998e+03 2.2763519e+03 -4.4489191e+01 - 2.7267421e+03 2.2599498e+03 -1.1754654e+02 - 2.7174978e+03 2.2517330e+03 -1.8308372e+02 - 2.6977233e+03 2.2505700e+03 -2.4184131e+02 - 2.6681025e+03 2.2553579e+03 -2.9472234e+02 - 2.6292563e+03 2.2651081e+03 -3.4259049e+02 - 2.5817191e+03 2.2789612e+03 -3.8619347e+02 - 2.5259439e+03 2.2961758e+03 -4.2614761e+02 - 2.4623169e+03 2.3161090e+03 -4.6294781e+02 - 2.3911725e+03 2.3381967e+03 -4.9698560e+02 - 2.3128076e+03 2.3619381e+03 -5.2856777e+02 - 2.2274939e+03 2.3868825e+03 -5.5793287e+02 - 2.1354878e+03 2.4126191e+03 -5.8526475e+02 - 2.0370396e+03 2.4387696e+03 -6.1070348e+02 - 1.9324007e+03 2.4649824e+03 -6.3435406e+02 - 1.8218301e+03 2.4909288e+03 -6.5629327e+02 - 1.7056002e+03 2.5163003e+03 -6.7657518e+02 - 1.5840013e+03 2.5408066e+03 -6.9523569e+02 - 1.4573453e+03 2.5641751e+03 -7.1229620e+02 - 1.3259689e+03 2.5861508e+03 -7.2776677e+02 - 1.1902357e+03 2.6064966e+03 -7.4164879e+02 - 1.0505369e+03 2.6249948e+03 -7.5393729e+02 - 9.0729207e+02 2.6414478e+03 -7.6462305e+02 - 7.6094811e+02 2.6556798e+03 -7.7369433e+02 - 6.1197738e+02 2.6675387e+03 -7.8113847e+02 - 4.6087524e+02 2.6768973e+03 -7.8694323e+02 - 3.0815650e+02 2.6836550e+03 -7.9109791e+02 - 1.5435122e+02 2.6877391e+03 -7.9359421e+02 - 2.4067136e-09 2.6891054e+03 -7.9442691e+02 - -1.5435122e+02 2.6877391e+03 -7.9359421e+02 - -3.0815650e+02 2.6836550e+03 -7.9109791e+02 - -4.6087524e+02 2.6768973e+03 -7.8694323e+02 - -6.1197738e+02 2.6675387e+03 -7.8113847e+02 - -7.6094811e+02 2.6556798e+03 -7.7369433e+02 - -9.0729207e+02 2.6414478e+03 -7.6462305e+02 - -1.0505369e+03 2.6249948e+03 -7.5393729e+02 - -1.1902357e+03 2.6064966e+03 -7.4164879e+02 - -1.3259689e+03 2.5861508e+03 -7.2776677e+02 - -1.4573453e+03 2.5641751e+03 -7.1229620e+02 - -1.5840013e+03 2.5408066e+03 -6.9523569e+02 - -1.7056002e+03 2.5163003e+03 -6.7657518e+02 - -1.8218301e+03 2.4909288e+03 -6.5629327e+02 - -1.9324007e+03 2.4649824e+03 -6.3435406e+02 - -2.0370396e+03 2.4387696e+03 -6.1070348e+02 - -2.1354878e+03 2.4126191e+03 -5.8526475e+02 - -2.2274939e+03 2.3868825e+03 -5.5793287e+02 - -2.3128076e+03 2.3619381e+03 -5.2856777e+02 - -2.3911725e+03 2.3381967e+03 -4.9698560e+02 - -2.4623169e+03 2.3161090e+03 -4.6294781e+02 - -2.5259439e+03 2.2961758e+03 -4.2614761e+02 - -2.5817191e+03 2.2789612e+03 -3.8619347e+02 - -2.6292563e+03 2.2651081e+03 -3.4259049e+02 - -2.6681025e+03 2.2553579e+03 -2.9472234e+02 - -2.6977233e+03 2.2505700e+03 -2.4184131e+02 - -2.7174978e+03 2.2517330e+03 -1.8308372e+02 - -2.7267421e+03 2.2599498e+03 -1.1754654e+02 - -2.7247998e+03 2.2763519e+03 -4.4489191e+01 - -2.7112758e+03 2.3018650e+03 3.6248715e+01 - -2.6864997e+03 2.3367273e+03 1.2355357e+02 - -2.6522287e+03 2.3797395e+03 2.1421873e+02 - -2.6122831e+03 2.4275496e+03 3.0261498e+02 - -2.5723820e+03 2.4747307e+03 3.8176755e+02 - -2.5386303e+03 2.5152539e+03 4.4591119e+02 - -2.5153644e+03 2.5446826e+03 4.9281520e+02 - -2.5039630e+03 2.5614523e+03 5.2398755e+02 - -2.5032465e+03 2.5665508e+03 5.4300821e+02 - -2.5106434e+03 2.5623925e+03 5.5366470e+02 - -2.5231607e+03 2.5518607e+03 5.5889063e+02 - -2.5378451e+03 2.5378451e+03 5.6044096e+02 - -2.5518607e+03 2.5231607e+03 5.5889063e+02 - -2.5623925e+03 2.5106434e+03 5.5366470e+02 - -2.5665508e+03 2.5032465e+03 5.4300821e+02 - -2.5614523e+03 2.5039630e+03 5.2398755e+02 - -2.5446826e+03 2.5153644e+03 4.9281520e+02 - -2.5152539e+03 2.5386303e+03 4.4591119e+02 - -2.4747307e+03 2.5723820e+03 3.8176755e+02 - -2.4275496e+03 2.6122831e+03 3.0261498e+02 - -2.3797395e+03 2.6522287e+03 2.1421873e+02 - -2.3367273e+03 2.6864997e+03 1.2355357e+02 - -2.3018650e+03 2.7112758e+03 3.6248715e+01 - -2.2763519e+03 2.7247998e+03 -4.4489191e+01 - -2.2599498e+03 2.7267421e+03 -1.1754654e+02 - -2.2517330e+03 2.7174978e+03 -1.8308372e+02 - -2.2505700e+03 2.6977233e+03 -2.4184131e+02 - -2.2553579e+03 2.6681025e+03 -2.9472234e+02 - -2.2651081e+03 2.6292563e+03 -3.4259049e+02 - -2.2789612e+03 2.5817191e+03 -3.8619347e+02 - -2.2961758e+03 2.5259439e+03 -4.2614761e+02 - -2.3161090e+03 2.4623169e+03 -4.6294781e+02 - -2.3381967e+03 2.3911725e+03 -4.9698560e+02 - -2.3619381e+03 2.3128076e+03 -5.2856777e+02 - -2.3868825e+03 2.2274939e+03 -5.5793287e+02 - -2.4126191e+03 2.1354878e+03 -5.8526475e+02 - -2.4387696e+03 2.0370396e+03 -6.1070348e+02 - -2.4649824e+03 1.9324007e+03 -6.3435406e+02 - -2.4909288e+03 1.8218301e+03 -6.5629327e+02 - -2.5163003e+03 1.7056002e+03 -6.7657518e+02 - -2.5408066e+03 1.5840013e+03 -6.9523569e+02 - -2.5641751e+03 1.4573453e+03 -7.1229620e+02 - -2.5861508e+03 1.3259689e+03 -7.2776677e+02 - -2.6064966e+03 1.1902357e+03 -7.4164879e+02 - -2.6249948e+03 1.0505369e+03 -7.5393729e+02 - -2.6414478e+03 9.0729207e+02 -7.6462305e+02 - -2.6556798e+03 7.6094811e+02 -7.7369433e+02 - -2.6675387e+03 6.1197738e+02 -7.8113847e+02 - -2.6768973e+03 4.6087524e+02 -7.8694323e+02 - -2.6836550e+03 3.0815650e+02 -7.9109791e+02 - -2.6877391e+03 1.5435122e+02 -7.9359421e+02 - -2.6891054e+03 2.4067136e-09 -7.9442691e+02 - -2.6877391e+03 -1.5435122e+02 -7.9359421e+02 - -2.6836550e+03 -3.0815650e+02 -7.9109791e+02 - -2.6768973e+03 -4.6087524e+02 -7.8694323e+02 - -2.6675387e+03 -6.1197738e+02 -7.8113847e+02 - -2.6556798e+03 -7.6094811e+02 -7.7369433e+02 - -2.6414478e+03 -9.0729207e+02 -7.6462305e+02 - -2.6249948e+03 -1.0505369e+03 -7.5393729e+02 - -2.6064966e+03 -1.1902357e+03 -7.4164879e+02 - -2.5861508e+03 -1.3259689e+03 -7.2776677e+02 - -2.5641751e+03 -1.4573453e+03 -7.1229620e+02 - -2.5408066e+03 -1.5840013e+03 -6.9523569e+02 - -2.5163003e+03 -1.7056002e+03 -6.7657518e+02 - -2.4909288e+03 -1.8218301e+03 -6.5629327e+02 - -2.4649824e+03 -1.9324007e+03 -6.3435406e+02 - -2.4387696e+03 -2.0370396e+03 -6.1070348e+02 - -2.4126191e+03 -2.1354878e+03 -5.8526475e+02 - -2.3868825e+03 -2.2274939e+03 -5.5793287e+02 - -2.3619381e+03 -2.3128076e+03 -5.2856777e+02 - -2.3381967e+03 -2.3911725e+03 -4.9698560e+02 - -2.3161090e+03 -2.4623169e+03 -4.6294781e+02 - -2.2961758e+03 -2.5259439e+03 -4.2614761e+02 - -2.2789612e+03 -2.5817191e+03 -3.8619347e+02 - -2.2651081e+03 -2.6292563e+03 -3.4259049e+02 - -2.2553579e+03 -2.6681025e+03 -2.9472234e+02 - -2.2505700e+03 -2.6977233e+03 -2.4184131e+02 - -2.2517330e+03 -2.7174978e+03 -1.8308372e+02 - -2.2599498e+03 -2.7267421e+03 -1.1754654e+02 - -2.2763519e+03 -2.7247998e+03 -4.4489191e+01 - -2.3018650e+03 -2.7112758e+03 3.6248715e+01 - -2.3367273e+03 -2.6864997e+03 1.2355357e+02 - -2.3797395e+03 -2.6522287e+03 2.1421873e+02 - -2.4275496e+03 -2.6122831e+03 3.0261498e+02 - -2.4747307e+03 -2.5723820e+03 3.8176755e+02 - -2.5152539e+03 -2.5386303e+03 4.4591119e+02 - -2.5446826e+03 -2.5153644e+03 4.9281520e+02 - -2.5614523e+03 -2.5039630e+03 5.2398755e+02 - -2.5665508e+03 -2.5032465e+03 5.4300821e+02 - -2.5623925e+03 -2.5106434e+03 5.5366470e+02 - -2.5518607e+03 -2.5231607e+03 5.5889063e+02 - -2.5378451e+03 -2.5378451e+03 5.6044096e+02 - -2.5231607e+03 -2.5518607e+03 5.5889063e+02 - -2.5106434e+03 -2.5623925e+03 5.5366470e+02 - -2.5032465e+03 -2.5665508e+03 5.4300821e+02 - -2.5039630e+03 -2.5614523e+03 5.2398755e+02 - -2.5153644e+03 -2.5446826e+03 4.9281520e+02 - -2.5386303e+03 -2.5152539e+03 4.4591119e+02 - -2.5723820e+03 -2.4747307e+03 3.8176755e+02 - -2.6122831e+03 -2.4275496e+03 3.0261498e+02 - -2.6522287e+03 -2.3797395e+03 2.1421873e+02 - -2.6864997e+03 -2.3367273e+03 1.2355357e+02 - -2.7112758e+03 -2.3018650e+03 3.6248715e+01 - -2.7247998e+03 -2.2763519e+03 -4.4489191e+01 - -2.7267421e+03 -2.2599498e+03 -1.1754654e+02 - -2.7174978e+03 -2.2517330e+03 -1.8308372e+02 - -2.6977233e+03 -2.2505700e+03 -2.4184131e+02 - -2.6681025e+03 -2.2553579e+03 -2.9472234e+02 - -2.6292563e+03 -2.2651081e+03 -3.4259049e+02 - -2.5817191e+03 -2.2789612e+03 -3.8619347e+02 - -2.5259439e+03 -2.2961758e+03 -4.2614761e+02 - -2.4623169e+03 -2.3161090e+03 -4.6294781e+02 - -2.3911725e+03 -2.3381967e+03 -4.9698560e+02 - -2.3128076e+03 -2.3619381e+03 -5.2856777e+02 - -2.2274939e+03 -2.3868825e+03 -5.5793287e+02 - -2.1354878e+03 -2.4126191e+03 -5.8526475e+02 - -2.0370396e+03 -2.4387696e+03 -6.1070348e+02 - -1.9324007e+03 -2.4649824e+03 -6.3435406e+02 - -1.8218301e+03 -2.4909288e+03 -6.5629327e+02 - -1.7056002e+03 -2.5163003e+03 -6.7657518e+02 - -1.5840013e+03 -2.5408066e+03 -6.9523569e+02 - -1.4573453e+03 -2.5641751e+03 -7.1229620e+02 - -1.3259689e+03 -2.5861508e+03 -7.2776677e+02 - -1.1902357e+03 -2.6064966e+03 -7.4164879e+02 - -1.0505369e+03 -2.6249948e+03 -7.5393729e+02 - -9.0729207e+02 -2.6414478e+03 -7.6462305e+02 - -7.6094811e+02 -2.6556798e+03 -7.7369433e+02 - -6.1197738e+02 -2.6675387e+03 -7.8113847e+02 - -4.6087524e+02 -2.6768973e+03 -7.8694323e+02 - -3.0815650e+02 -2.6836550e+03 -7.9109791e+02 - -1.5435122e+02 -2.6877391e+03 -7.9359421e+02 - 0.0000000e+00 -2.6891054e+03 -7.9442691e+02 - 1.5435122e+02 -2.6877391e+03 -7.9359421e+02 - 3.0815650e+02 -2.6836550e+03 -7.9109791e+02 - 4.6087524e+02 -2.6768973e+03 -7.8694323e+02 - 6.1197738e+02 -2.6675387e+03 -7.8113847e+02 - 7.6094811e+02 -2.6556798e+03 -7.7369433e+02 - 9.0729207e+02 -2.6414478e+03 -7.6462305e+02 - 1.0505369e+03 -2.6249948e+03 -7.5393729e+02 - 1.1902357e+03 -2.6064966e+03 -7.4164879e+02 - 1.3259689e+03 -2.5861508e+03 -7.2776677e+02 - 1.4573453e+03 -2.5641751e+03 -7.1229620e+02 - 1.5840013e+03 -2.5408066e+03 -6.9523569e+02 - 1.7056002e+03 -2.5163003e+03 -6.7657518e+02 - 1.8218301e+03 -2.4909288e+03 -6.5629327e+02 - 1.9324007e+03 -2.4649824e+03 -6.3435406e+02 - 2.0370396e+03 -2.4387696e+03 -6.1070348e+02 - 2.1354878e+03 -2.4126191e+03 -5.8526475e+02 - 2.2274939e+03 -2.3868825e+03 -5.5793287e+02 - 2.3128076e+03 -2.3619381e+03 -5.2856777e+02 - 2.3911725e+03 -2.3381967e+03 -4.9698560e+02 - 2.4623169e+03 -2.3161090e+03 -4.6294781e+02 - 2.5259439e+03 -2.2961758e+03 -4.2614761e+02 - 2.5817191e+03 -2.2789612e+03 -3.8619347e+02 - 2.6292563e+03 -2.2651081e+03 -3.4259049e+02 - 2.6681025e+03 -2.2553579e+03 -2.9472234e+02 - 2.6977233e+03 -2.2505700e+03 -2.4184131e+02 - 2.7174978e+03 -2.2517330e+03 -1.8308372e+02 - 2.7267421e+03 -2.2599498e+03 -1.1754654e+02 - 2.7247998e+03 -2.2763519e+03 -4.4489191e+01 - 2.7112758e+03 -2.3018650e+03 3.6248715e+01 - 2.6864997e+03 -2.3367273e+03 1.2355357e+02 - 2.6522287e+03 -2.3797395e+03 2.1421873e+02 - 2.6122831e+03 -2.4275496e+03 3.0261498e+02 - 2.5723820e+03 -2.4747307e+03 3.8176755e+02 - 2.5386303e+03 -2.5152539e+03 4.4591119e+02 - 2.5153644e+03 -2.5446826e+03 4.9281520e+02 - 2.5039630e+03 -2.5614523e+03 5.2398755e+02 - 2.5032465e+03 -2.5665508e+03 5.4300821e+02 - 2.5106434e+03 -2.5623925e+03 5.5366470e+02 - 2.5231607e+03 -2.5518607e+03 5.5889063e+02 - 2.5378451e+03 -2.5378451e+03 5.6044096e+02 - 2.5518607e+03 -2.5231607e+03 5.5889063e+02 - 2.5623925e+03 -2.5106434e+03 5.5366470e+02 - 2.5665508e+03 -2.5032465e+03 5.4300821e+02 - 2.5614523e+03 -2.5039630e+03 5.2398755e+02 - 2.5446826e+03 -2.5153644e+03 4.9281520e+02 - 2.5152539e+03 -2.5386303e+03 4.4591119e+02 - 2.4747307e+03 -2.5723820e+03 3.8176755e+02 - 2.4275496e+03 -2.6122831e+03 3.0261498e+02 - 2.3797395e+03 -2.6522287e+03 2.1421873e+02 - 2.3367273e+03 -2.6864997e+03 1.2355357e+02 - 2.3018650e+03 -2.7112758e+03 3.6248715e+01 - 2.2763519e+03 -2.7247998e+03 -4.4489191e+01 - 2.2599498e+03 -2.7267421e+03 -1.1754654e+02 - 2.2517330e+03 -2.7174978e+03 -1.8308372e+02 - 2.2505700e+03 -2.6977233e+03 -2.4184131e+02 - 2.2553579e+03 -2.6681025e+03 -2.9472234e+02 - 2.2651081e+03 -2.6292563e+03 -3.4259049e+02 - 2.2789612e+03 -2.5817191e+03 -3.8619347e+02 - 2.2961758e+03 -2.5259439e+03 -4.2614761e+02 - 2.3161090e+03 -2.4623169e+03 -4.6294781e+02 - 2.3381967e+03 -2.3911725e+03 -4.9698560e+02 - 2.3619381e+03 -2.3128076e+03 -5.2856777e+02 - 2.3868825e+03 -2.2274939e+03 -5.5793287e+02 - 2.4126191e+03 -2.1354878e+03 -5.8526475e+02 - 2.4387696e+03 -2.0370396e+03 -6.1070348e+02 - 2.4649824e+03 -1.9324007e+03 -6.3435406e+02 - 2.4909288e+03 -1.8218301e+03 -6.5629327e+02 - 2.5163003e+03 -1.7056002e+03 -6.7657518e+02 - 2.5408066e+03 -1.5840013e+03 -6.9523569e+02 - 2.5641751e+03 -1.4573453e+03 -7.1229620e+02 - 2.5861508e+03 -1.3259689e+03 -7.2776677e+02 - 2.6064966e+03 -1.1902357e+03 -7.4164879e+02 - 2.6249948e+03 -1.0505369e+03 -7.5393729e+02 - 2.6414478e+03 -9.0729207e+02 -7.6462305e+02 - 2.6556798e+03 -7.6094811e+02 -7.7369433e+02 - 2.6675387e+03 -6.1197738e+02 -7.8113847e+02 - 2.6768973e+03 -4.6087524e+02 -7.8694323e+02 - 2.6836550e+03 -3.0815650e+02 -7.9109791e+02 - 2.6877391e+03 -1.5435122e+02 -7.9359421e+02 - 2.6891054e+03 4.8134273e-09 -7.9442691e+02 - 2.6730318e+03 -2.4067136e-09 -8.7960094e+02 - 2.6717239e+03 1.5220631e+02 -8.7866575e+02 - 2.6678148e+03 3.0387458e+02 -8.7586166e+02 - 2.6613482e+03 4.5447185e+02 -8.7119299e+02 - 2.6523963e+03 6.0347507e+02 -8.6466639e+02 - 2.6410589e+03 7.5037559e+02 -8.5629015e+02 - 2.6274624e+03 8.9468310e+02 -8.4607313e+02 - 2.6117585e+03 1.0359289e+03 -8.3402341e+02 - 2.5941230e+03 1.1736683e+03 -8.2014667e+02 - 2.5747539e+03 1.3074820e+03 -8.0444431e+02 - 2.5538709e+03 1.4369771e+03 -7.8691120e+02 - 2.5317141e+03 1.5617863e+03 -7.6753313e+02 - 2.5085433e+03 1.6815667e+03 -7.4628383e+02 - 2.4846383e+03 1.7959974e+03 -7.2312153e+02 - 2.4602996e+03 1.9047762e+03 -6.9798491e+02 - 2.4358496e+03 2.0076157e+03 -6.7078831e+02 - 2.4116355e+03 2.1042371e+03 -6.4141592e+02 - 2.3880330e+03 2.1943649e+03 -6.0971487e+02 - 2.3654518e+03 2.2777188e+03 -5.7548676e+02 - 2.3443426e+03 2.3540054e+03 -5.3847767e+02 - 2.3252070e+03 2.4229079e+03 -4.9836642e+02 - 2.3086085e+03 2.4840750e+03 -4.5475182e+02 - 2.2951864e+03 2.5371089e+03 -4.0714052e+02 - 2.2856697e+03 2.5815536e+03 -3.5493976e+02 - 2.2808879e+03 2.6168890e+03 -2.9746404e+02 - 2.2817678e+03 2.6425384e+03 -2.3397332e+02 - 2.2892985e+03 2.6579088e+03 -1.6377373e+02 - 2.3044268e+03 2.6624974e+03 -8.6427445e+01 - 2.3278317e+03 2.6561119e+03 -2.1210316e+00 - 2.3595284e+03 2.6392462e+03 8.7807657e+01 - 2.3983368e+03 2.6135690e+03 1.8034572e+02 - 2.4414515e+03 2.5822922e+03 2.7070473e+02 - 2.4845634e+03 2.5499875e+03 3.5314669e+02 - 2.5228361e+03 2.5215856e+03 4.2270866e+02 - 2.5523586e+03 2.5009533e+03 4.7685773e+02 - 2.5711637e+03 2.4899394e+03 5.1593757e+02 - 2.5792802e+03 2.4883820e+03 5.4230744e+02 - 2.5781050e+03 2.4947697e+03 5.5903510e+02 - 2.5696789e+03 2.5069759e+03 5.6891975e+02 - 2.5562067e+03 2.5227378e+03 5.7403261e+02 - 2.5398557e+03 2.5398557e+03 5.7560247e+02 - 2.5227378e+03 2.5562067e+03 5.7403261e+02 - 2.5069759e+03 2.5696789e+03 5.6891975e+02 - 2.4947697e+03 2.5781050e+03 5.5903510e+02 - 2.4883820e+03 2.5792802e+03 5.4230744e+02 - 2.4899394e+03 2.5711637e+03 5.1593757e+02 - 2.5009533e+03 2.5523586e+03 4.7685773e+02 - 2.5215856e+03 2.5228361e+03 4.2270866e+02 - 2.5499875e+03 2.4845634e+03 3.5314669e+02 - 2.5822922e+03 2.4414515e+03 2.7070473e+02 - 2.6135690e+03 2.3983368e+03 1.8034572e+02 - 2.6392462e+03 2.3595284e+03 8.7807657e+01 - 2.6561119e+03 2.3278317e+03 -2.1210316e+00 - 2.6624974e+03 2.3044268e+03 -8.6427445e+01 - 2.6579088e+03 2.2892985e+03 -1.6377373e+02 - 2.6425384e+03 2.2817678e+03 -2.3397332e+02 - 2.6168890e+03 2.2808879e+03 -2.9746404e+02 - 2.5815536e+03 2.2856697e+03 -3.5493976e+02 - 2.5371089e+03 2.2951864e+03 -4.0714052e+02 - 2.4840750e+03 2.3086085e+03 -4.5475182e+02 - 2.4229079e+03 2.3252070e+03 -4.9836642e+02 - 2.3540054e+03 2.3443426e+03 -5.3847767e+02 - 2.2777188e+03 2.3654518e+03 -5.7548676e+02 - 2.1943649e+03 2.3880330e+03 -6.0971487e+02 - 2.1042371e+03 2.4116355e+03 -6.4141592e+02 - 2.0076157e+03 2.4358496e+03 -6.7078831e+02 - 1.9047762e+03 2.4602996e+03 -6.9798491e+02 - 1.7959974e+03 2.4846383e+03 -7.2312153e+02 - 1.6815667e+03 2.5085433e+03 -7.4628383e+02 - 1.5617863e+03 2.5317141e+03 -7.6753313e+02 - 1.4369771e+03 2.5538709e+03 -7.8691120e+02 - 1.3074820e+03 2.5747539e+03 -8.0444431e+02 - 1.1736683e+03 2.5941230e+03 -8.2014667e+02 - 1.0359289e+03 2.6117585e+03 -8.3402341e+02 - 8.9468310e+02 2.6274624e+03 -8.4607313e+02 - 7.5037559e+02 2.6410589e+03 -8.5629015e+02 - 6.0347507e+02 2.6523963e+03 -8.6466639e+02 - 4.5447185e+02 2.6613482e+03 -8.7119299e+02 - 3.0387458e+02 2.6678148e+03 -8.7586166e+02 - 1.5220631e+02 2.6717239e+03 -8.7866575e+02 - 0.0000000e+00 2.6730318e+03 -8.7960094e+02 - -1.5220631e+02 2.6717239e+03 -8.7866575e+02 - -3.0387458e+02 2.6678148e+03 -8.7586166e+02 - -4.5447185e+02 2.6613482e+03 -8.7119299e+02 - -6.0347507e+02 2.6523963e+03 -8.6466639e+02 - -7.5037559e+02 2.6410589e+03 -8.5629015e+02 - -8.9468310e+02 2.6274624e+03 -8.4607313e+02 - -1.0359289e+03 2.6117585e+03 -8.3402341e+02 - -1.1736683e+03 2.5941230e+03 -8.2014667e+02 - -1.3074820e+03 2.5747539e+03 -8.0444431e+02 - -1.4369771e+03 2.5538709e+03 -7.8691120e+02 - -1.5617863e+03 2.5317141e+03 -7.6753313e+02 - -1.6815667e+03 2.5085433e+03 -7.4628383e+02 - -1.7959974e+03 2.4846383e+03 -7.2312153e+02 - -1.9047762e+03 2.4602996e+03 -6.9798491e+02 - -2.0076157e+03 2.4358496e+03 -6.7078831e+02 - -2.1042371e+03 2.4116355e+03 -6.4141592e+02 - -2.1943649e+03 2.3880330e+03 -6.0971487e+02 - -2.2777188e+03 2.3654518e+03 -5.7548676e+02 - -2.3540054e+03 2.3443426e+03 -5.3847767e+02 - -2.4229079e+03 2.3252070e+03 -4.9836642e+02 - -2.4840750e+03 2.3086085e+03 -4.5475182e+02 - -2.5371089e+03 2.2951864e+03 -4.0714052e+02 - -2.5815536e+03 2.2856697e+03 -3.5493976e+02 - -2.6168890e+03 2.2808879e+03 -2.9746404e+02 - -2.6425384e+03 2.2817678e+03 -2.3397332e+02 - -2.6579088e+03 2.2892985e+03 -1.6377373e+02 - -2.6624974e+03 2.3044268e+03 -8.6427445e+01 - -2.6561119e+03 2.3278317e+03 -2.1210316e+00 - -2.6392462e+03 2.3595284e+03 8.7807657e+01 - -2.6135690e+03 2.3983368e+03 1.8034572e+02 - -2.5822922e+03 2.4414515e+03 2.7070473e+02 - -2.5499875e+03 2.4845634e+03 3.5314669e+02 - -2.5215856e+03 2.5228361e+03 4.2270866e+02 - -2.5009533e+03 2.5523586e+03 4.7685773e+02 - -2.4899394e+03 2.5711637e+03 5.1593757e+02 - -2.4883820e+03 2.5792802e+03 5.4230744e+02 - -2.4947697e+03 2.5781050e+03 5.5903510e+02 - -2.5069759e+03 2.5696789e+03 5.6891975e+02 - -2.5227378e+03 2.5562067e+03 5.7403261e+02 - -2.5398557e+03 2.5398557e+03 5.7560247e+02 - -2.5562067e+03 2.5227378e+03 5.7403261e+02 - -2.5696789e+03 2.5069759e+03 5.6891975e+02 - -2.5781050e+03 2.4947697e+03 5.5903510e+02 - -2.5792802e+03 2.4883820e+03 5.4230744e+02 - -2.5711637e+03 2.4899394e+03 5.1593757e+02 - -2.5523586e+03 2.5009533e+03 4.7685773e+02 - -2.5228361e+03 2.5215856e+03 4.2270866e+02 - -2.4845634e+03 2.5499875e+03 3.5314669e+02 - -2.4414515e+03 2.5822922e+03 2.7070473e+02 - -2.3983368e+03 2.6135690e+03 1.8034572e+02 - -2.3595284e+03 2.6392462e+03 8.7807657e+01 - -2.3278317e+03 2.6561119e+03 -2.1210316e+00 - -2.3044268e+03 2.6624974e+03 -8.6427445e+01 - -2.2892985e+03 2.6579088e+03 -1.6377373e+02 - -2.2817678e+03 2.6425384e+03 -2.3397332e+02 - -2.2808879e+03 2.6168890e+03 -2.9746404e+02 - -2.2856697e+03 2.5815536e+03 -3.5493976e+02 - -2.2951864e+03 2.5371089e+03 -4.0714052e+02 - -2.3086085e+03 2.4840750e+03 -4.5475182e+02 - -2.3252070e+03 2.4229079e+03 -4.9836642e+02 - -2.3443426e+03 2.3540054e+03 -5.3847767e+02 - -2.3654518e+03 2.2777188e+03 -5.7548676e+02 - -2.3880330e+03 2.1943649e+03 -6.0971487e+02 - -2.4116355e+03 2.1042371e+03 -6.4141592e+02 - -2.4358496e+03 2.0076157e+03 -6.7078831e+02 - -2.4602996e+03 1.9047762e+03 -6.9798491e+02 - -2.4846383e+03 1.7959974e+03 -7.2312153e+02 - -2.5085433e+03 1.6815667e+03 -7.4628383e+02 - -2.5317141e+03 1.5617863e+03 -7.6753313e+02 - -2.5538709e+03 1.4369771e+03 -7.8691120e+02 - -2.5747539e+03 1.3074820e+03 -8.0444431e+02 - -2.5941230e+03 1.1736683e+03 -8.2014667e+02 - -2.6117585e+03 1.0359289e+03 -8.3402341e+02 - -2.6274624e+03 8.9468310e+02 -8.4607313e+02 - -2.6410589e+03 7.5037559e+02 -8.5629015e+02 - -2.6523963e+03 6.0347507e+02 -8.6466639e+02 - -2.6613482e+03 4.5447185e+02 -8.7119299e+02 - -2.6678148e+03 3.0387458e+02 -8.7586166e+02 - -2.6717239e+03 1.5220631e+02 -8.7866575e+02 - -2.6730318e+03 4.8134273e-09 -8.7960094e+02 - -2.6717239e+03 -1.5220631e+02 -8.7866575e+02 - -2.6678148e+03 -3.0387458e+02 -8.7586166e+02 - -2.6613482e+03 -4.5447185e+02 -8.7119299e+02 - -2.6523963e+03 -6.0347507e+02 -8.6466639e+02 - -2.6410589e+03 -7.5037559e+02 -8.5629015e+02 - -2.6274624e+03 -8.9468310e+02 -8.4607313e+02 - -2.6117585e+03 -1.0359289e+03 -8.3402341e+02 - -2.5941230e+03 -1.1736683e+03 -8.2014667e+02 - -2.5747539e+03 -1.3074820e+03 -8.0444431e+02 - -2.5538709e+03 -1.4369771e+03 -7.8691120e+02 - -2.5317141e+03 -1.5617863e+03 -7.6753313e+02 - -2.5085433e+03 -1.6815667e+03 -7.4628383e+02 - -2.4846383e+03 -1.7959974e+03 -7.2312153e+02 - -2.4602996e+03 -1.9047762e+03 -6.9798491e+02 - -2.4358496e+03 -2.0076157e+03 -6.7078831e+02 - -2.4116355e+03 -2.1042371e+03 -6.4141592e+02 - -2.3880330e+03 -2.1943649e+03 -6.0971487e+02 - -2.3654518e+03 -2.2777188e+03 -5.7548676e+02 - -2.3443426e+03 -2.3540054e+03 -5.3847767e+02 - -2.3252070e+03 -2.4229079e+03 -4.9836642e+02 - -2.3086085e+03 -2.4840750e+03 -4.5475182e+02 - -2.2951864e+03 -2.5371089e+03 -4.0714052e+02 - -2.2856697e+03 -2.5815536e+03 -3.5493976e+02 - -2.2808879e+03 -2.6168890e+03 -2.9746404e+02 - -2.2817678e+03 -2.6425384e+03 -2.3397332e+02 - -2.2892985e+03 -2.6579088e+03 -1.6377373e+02 - -2.3044268e+03 -2.6624974e+03 -8.6427445e+01 - -2.3278317e+03 -2.6561119e+03 -2.1210316e+00 - -2.3595284e+03 -2.6392462e+03 8.7807657e+01 - -2.3983368e+03 -2.6135690e+03 1.8034572e+02 - -2.4414515e+03 -2.5822922e+03 2.7070473e+02 - -2.4845634e+03 -2.5499875e+03 3.5314669e+02 - -2.5228361e+03 -2.5215856e+03 4.2270866e+02 - -2.5523586e+03 -2.5009533e+03 4.7685773e+02 - -2.5711637e+03 -2.4899394e+03 5.1593757e+02 - -2.5792802e+03 -2.4883820e+03 5.4230744e+02 - -2.5781050e+03 -2.4947697e+03 5.5903510e+02 - -2.5696789e+03 -2.5069759e+03 5.6891975e+02 - -2.5562067e+03 -2.5227378e+03 5.7403261e+02 - -2.5398557e+03 -2.5398557e+03 5.7560247e+02 - -2.5227378e+03 -2.5562067e+03 5.7403261e+02 - -2.5069759e+03 -2.5696789e+03 5.6891975e+02 - -2.4947697e+03 -2.5781050e+03 5.5903510e+02 - -2.4883820e+03 -2.5792802e+03 5.4230744e+02 - -2.4899394e+03 -2.5711637e+03 5.1593757e+02 - -2.5009533e+03 -2.5523586e+03 4.7685773e+02 - -2.5215856e+03 -2.5228361e+03 4.2270866e+02 - -2.5499875e+03 -2.4845634e+03 3.5314669e+02 - -2.5822922e+03 -2.4414515e+03 2.7070473e+02 - -2.6135690e+03 -2.3983368e+03 1.8034572e+02 - -2.6392462e+03 -2.3595284e+03 8.7807657e+01 - -2.6561119e+03 -2.3278317e+03 -2.1210315e+00 - -2.6624974e+03 -2.3044268e+03 -8.6427445e+01 - -2.6579088e+03 -2.2892985e+03 -1.6377373e+02 - -2.6425384e+03 -2.2817678e+03 -2.3397332e+02 - -2.6168890e+03 -2.2808879e+03 -2.9746404e+02 - -2.5815536e+03 -2.2856697e+03 -3.5493976e+02 - -2.5371089e+03 -2.2951864e+03 -4.0714052e+02 - -2.4840750e+03 -2.3086085e+03 -4.5475182e+02 - -2.4229079e+03 -2.3252070e+03 -4.9836642e+02 - -2.3540054e+03 -2.3443426e+03 -5.3847767e+02 - -2.2777188e+03 -2.3654518e+03 -5.7548676e+02 - -2.1943649e+03 -2.3880330e+03 -6.0971487e+02 - -2.1042371e+03 -2.4116355e+03 -6.4141592e+02 - -2.0076157e+03 -2.4358496e+03 -6.7078831e+02 - -1.9047762e+03 -2.4602996e+03 -6.9798491e+02 - -1.7959974e+03 -2.4846383e+03 -7.2312153e+02 - -1.6815667e+03 -2.5085433e+03 -7.4628383e+02 - -1.5617863e+03 -2.5317141e+03 -7.6753313e+02 - -1.4369771e+03 -2.5538709e+03 -7.8691120e+02 - -1.3074820e+03 -2.5747539e+03 -8.0444431e+02 - -1.1736683e+03 -2.5941230e+03 -8.2014667e+02 - -1.0359289e+03 -2.6117585e+03 -8.3402341e+02 - -8.9468310e+02 -2.6274624e+03 -8.4607313e+02 - -7.5037559e+02 -2.6410589e+03 -8.5629015e+02 - -6.0347507e+02 -2.6523963e+03 -8.6466639e+02 - -4.5447185e+02 -2.6613482e+03 -8.7119299e+02 - -3.0387458e+02 -2.6678148e+03 -8.7586166e+02 - -1.5220631e+02 -2.6717239e+03 -8.7866575e+02 - -4.8134273e-09 -2.6730318e+03 -8.7960094e+02 - 1.5220631e+02 -2.6717239e+03 -8.7866575e+02 - 3.0387458e+02 -2.6678148e+03 -8.7586166e+02 - 4.5447185e+02 -2.6613482e+03 -8.7119299e+02 - 6.0347507e+02 -2.6523963e+03 -8.6466639e+02 - 7.5037559e+02 -2.6410589e+03 -8.5629015e+02 - 8.9468310e+02 -2.6274624e+03 -8.4607313e+02 - 1.0359289e+03 -2.6117585e+03 -8.3402341e+02 - 1.1736683e+03 -2.5941230e+03 -8.2014667e+02 - 1.3074820e+03 -2.5747539e+03 -8.0444431e+02 - 1.4369771e+03 -2.5538709e+03 -7.8691120e+02 - 1.5617863e+03 -2.5317141e+03 -7.6753313e+02 - 1.6815667e+03 -2.5085433e+03 -7.4628383e+02 - 1.7959974e+03 -2.4846383e+03 -7.2312153e+02 - 1.9047762e+03 -2.4602996e+03 -6.9798491e+02 - 2.0076157e+03 -2.4358496e+03 -6.7078831e+02 - 2.1042371e+03 -2.4116355e+03 -6.4141592e+02 - 2.1943649e+03 -2.3880330e+03 -6.0971487e+02 - 2.2777188e+03 -2.3654518e+03 -5.7548676e+02 - 2.3540054e+03 -2.3443426e+03 -5.3847767e+02 - 2.4229079e+03 -2.3252070e+03 -4.9836642e+02 - 2.4840750e+03 -2.3086085e+03 -4.5475182e+02 - 2.5371089e+03 -2.2951864e+03 -4.0714052e+02 - 2.5815536e+03 -2.2856697e+03 -3.5493976e+02 - 2.6168890e+03 -2.2808879e+03 -2.9746404e+02 - 2.6425384e+03 -2.2817678e+03 -2.3397332e+02 - 2.6579088e+03 -2.2892985e+03 -1.6377373e+02 - 2.6624974e+03 -2.3044268e+03 -8.6427445e+01 - 2.6561119e+03 -2.3278317e+03 -2.1210316e+00 - 2.6392462e+03 -2.3595284e+03 8.7807657e+01 - 2.6135690e+03 -2.3983368e+03 1.8034572e+02 - 2.5822922e+03 -2.4414515e+03 2.7070473e+02 - 2.5499875e+03 -2.4845634e+03 3.5314669e+02 - 2.5215856e+03 -2.5228361e+03 4.2270866e+02 - 2.5009533e+03 -2.5523586e+03 4.7685773e+02 - 2.4899394e+03 -2.5711637e+03 5.1593757e+02 - 2.4883820e+03 -2.5792802e+03 5.4230744e+02 - 2.4947697e+03 -2.5781050e+03 5.5903510e+02 - 2.5069759e+03 -2.5696789e+03 5.6891975e+02 - 2.5227378e+03 -2.5562067e+03 5.7403261e+02 - 2.5398557e+03 -2.5398557e+03 5.7560247e+02 - 2.5562067e+03 -2.5227378e+03 5.7403261e+02 - 2.5696789e+03 -2.5069759e+03 5.6891975e+02 - 2.5781050e+03 -2.4947697e+03 5.5903510e+02 - 2.5792802e+03 -2.4883820e+03 5.4230744e+02 - 2.5711637e+03 -2.4899394e+03 5.1593757e+02 - 2.5523586e+03 -2.5009533e+03 4.7685773e+02 - 2.5228361e+03 -2.5215856e+03 4.2270866e+02 - 2.4845634e+03 -2.5499875e+03 3.5314669e+02 - 2.4414515e+03 -2.5822922e+03 2.7070473e+02 - 2.3983368e+03 -2.6135690e+03 1.8034572e+02 - 2.3595284e+03 -2.6392462e+03 8.7807657e+01 - 2.3278317e+03 -2.6561119e+03 -2.1210316e+00 - 2.3044268e+03 -2.6624974e+03 -8.6427445e+01 - 2.2892985e+03 -2.6579088e+03 -1.6377373e+02 - 2.2817678e+03 -2.6425384e+03 -2.3397332e+02 - 2.2808879e+03 -2.6168890e+03 -2.9746404e+02 - 2.2856697e+03 -2.5815536e+03 -3.5493976e+02 - 2.2951864e+03 -2.5371089e+03 -4.0714052e+02 - 2.3086085e+03 -2.4840750e+03 -4.5475182e+02 - 2.3252070e+03 -2.4229079e+03 -4.9836642e+02 - 2.3443426e+03 -2.3540054e+03 -5.3847767e+02 - 2.3654518e+03 -2.2777188e+03 -5.7548676e+02 - 2.3880330e+03 -2.1943649e+03 -6.0971487e+02 - 2.4116355e+03 -2.1042371e+03 -6.4141592e+02 - 2.4358496e+03 -2.0076157e+03 -6.7078831e+02 - 2.4602996e+03 -1.9047762e+03 -6.9798491e+02 - 2.4846383e+03 -1.7959974e+03 -7.2312153e+02 - 2.5085433e+03 -1.6815667e+03 -7.4628383e+02 - 2.5317141e+03 -1.5617863e+03 -7.6753313e+02 - 2.5538709e+03 -1.4369771e+03 -7.8691120e+02 - 2.5747539e+03 -1.3074820e+03 -8.0444431e+02 - 2.5941230e+03 -1.1736683e+03 -8.2014667e+02 - 2.6117585e+03 -1.0359289e+03 -8.3402341e+02 - 2.6274624e+03 -8.9468310e+02 -8.4607313e+02 - 2.6410589e+03 -7.5037559e+02 -8.5629015e+02 - 2.6523963e+03 -6.0347507e+02 -8.6466639e+02 - 2.6613482e+03 -4.5447185e+02 -8.7119299e+02 - 2.6678148e+03 -3.0387458e+02 -8.7586166e+02 - 2.6717239e+03 -1.5220631e+02 -8.7866575e+02 - 2.6730318e+03 -4.8134273e-09 -8.7960094e+02 - 2.6554163e+03 2.4067136e-09 -9.6383487e+02 - 2.6541747e+03 1.4979816e+02 -9.6279251e+02 - 2.6504645e+03 2.9906605e+02 -9.5966643e+02 - 2.6443291e+03 4.4727814e+02 -9.5445948e+02 - 2.6358404e+03 5.9391813e+02 -9.4717580e+02 - 2.6250980e+03 7.3848315e+02 -9.3781996e+02 - 2.6122282e+03 8.8048740e+02 -9.2639571e+02 - 2.5973833e+03 1.0194651e+03 -9.1290443e+02 - 2.5807399e+03 1.1549725e+03 -8.9734317e+02 - 2.5624986e+03 1.2865895e+03 -8.7970235e+02 - 2.5428825e+03 1.4139197e+03 -8.5996306e+02 - 2.5221371e+03 1.5365898e+03 -8.3809394e+02 - 2.5005304e+03 1.6542479e+03 -8.1404749e+02 - 2.4783532e+03 1.7665610e+03 -7.8775585e+02 - 2.4559206e+03 1.8732109e+03 -7.5912584e+02 - 2.4335745e+03 1.9738900e+03 -7.2803313e+02 - 2.4116872e+03 2.0682946e+03 -6.9431548e+02 - 2.3906664e+03 2.1561186e+03 -6.5776493e+02 - 2.3709617e+03 2.2370451e+03 -6.1811901e+02 - 2.3530728e+03 2.3107373e+03 -5.7505138e+02 - 2.3375593e+03 2.3768288e+03 -5.2816316e+02 - 2.3250505e+03 2.4349147e+03 -4.7697733e+02 - 2.3162543e+03 2.4845446e+03 -4.2094147e+02 - 2.3119585e+03 2.5252240e+03 -3.5944820e+02 - 2.3130156e+03 2.5564331e+03 -2.9188967e+02 - 2.3202935e+03 2.5776780e+03 -2.1777076e+02 - 2.3345634e+03 2.5886018e+03 -1.3691163e+02 - 2.3562931e+03 2.5891821e+03 -4.9760256e+01 - 2.3853307e+03 2.5800261e+03 4.2216012e+01 - 2.4205305e+03 2.5627061e+03 1.3620512e+02 - 2.4595009e+03 2.5399622e+03 2.2807488e+02 - 2.4987461e+03 2.5155188e+03 3.1302370e+02 - 2.5343464e+03 2.4933891e+03 3.8678987e+02 - 2.5629475e+03 2.4769126e+03 4.4683590e+02 - 2.5825267e+03 2.4680371e+03 4.9281389e+02 - 2.5925758e+03 2.4671821e+03 5.2614854e+02 - 2.5937777e+03 2.4735882e+03 5.4916893e+02 - 2.5875072e+03 2.4858239e+03 5.6431318e+02 - 2.5754185e+03 2.5021967e+03 5.7364542e+02 - 2.5592084e+03 2.5209859e+03 5.7865740e+02 - 2.5405277e+03 2.5405277e+03 5.8023135e+02 - 2.5209859e+03 2.5592084e+03 5.7865740e+02 - 2.5021967e+03 2.5754185e+03 5.7364542e+02 - 2.4858239e+03 2.5875072e+03 5.6431318e+02 - 2.4735882e+03 2.5937777e+03 5.4916893e+02 - 2.4671821e+03 2.5925758e+03 5.2614854e+02 - 2.4680371e+03 2.5825267e+03 4.9281389e+02 - 2.4769126e+03 2.5629475e+03 4.4683590e+02 - 2.4933891e+03 2.5343464e+03 3.8678987e+02 - 2.5155188e+03 2.4987461e+03 3.1302370e+02 - 2.5399622e+03 2.4595009e+03 2.2807488e+02 - 2.5627061e+03 2.4205305e+03 1.3620512e+02 - 2.5800261e+03 2.3853307e+03 4.2216012e+01 - 2.5891821e+03 2.3562931e+03 -4.9760256e+01 - 2.5886018e+03 2.3345634e+03 -1.3691163e+02 - 2.5776780e+03 2.3202935e+03 -2.1777076e+02 - 2.5564331e+03 2.3130156e+03 -2.9188967e+02 - 2.5252240e+03 2.3119585e+03 -3.5944820e+02 - 2.4845446e+03 2.3162543e+03 -4.2094147e+02 - 2.4349147e+03 2.3250505e+03 -4.7697733e+02 - 2.3768288e+03 2.3375593e+03 -5.2816316e+02 - 2.3107373e+03 2.3530728e+03 -5.7505138e+02 - 2.2370451e+03 2.3709617e+03 -6.1811901e+02 - 2.1561186e+03 2.3906664e+03 -6.5776493e+02 - 2.0682946e+03 2.4116872e+03 -6.9431548e+02 - 1.9738900e+03 2.4335745e+03 -7.2803313e+02 - 1.8732109e+03 2.4559206e+03 -7.5912584e+02 - 1.7665610e+03 2.4783532e+03 -7.8775585e+02 - 1.6542479e+03 2.5005304e+03 -8.1404749e+02 - 1.5365898e+03 2.5221371e+03 -8.3809394e+02 - 1.4139197e+03 2.5428825e+03 -8.5996306e+02 - 1.2865895e+03 2.5624986e+03 -8.7970235e+02 - 1.1549725e+03 2.5807399e+03 -8.9734317e+02 - 1.0194651e+03 2.5973833e+03 -9.1290443e+02 - 8.8048740e+02 2.6122282e+03 -9.2639571e+02 - 7.3848315e+02 2.6250980e+03 -9.3781996e+02 - 5.9391813e+02 2.6358404e+03 -9.4717580e+02 - 4.4727814e+02 2.6443291e+03 -9.5445948e+02 - 2.9906605e+02 2.6504645e+03 -9.5966643e+02 - 1.4979816e+02 2.6541747e+03 -9.6279251e+02 - 0.0000000e+00 2.6554163e+03 -9.6383487e+02 - -1.4979816e+02 2.6541747e+03 -9.6279251e+02 - -2.9906605e+02 2.6504645e+03 -9.5966643e+02 - -4.4727814e+02 2.6443291e+03 -9.5445948e+02 - -5.9391813e+02 2.6358404e+03 -9.4717580e+02 - -7.3848315e+02 2.6250980e+03 -9.3781996e+02 - -8.8048740e+02 2.6122282e+03 -9.2639571e+02 - -1.0194651e+03 2.5973833e+03 -9.1290443e+02 - -1.1549725e+03 2.5807399e+03 -8.9734317e+02 - -1.2865895e+03 2.5624986e+03 -8.7970235e+02 - -1.4139197e+03 2.5428825e+03 -8.5996306e+02 - -1.5365898e+03 2.5221371e+03 -8.3809394e+02 - -1.6542479e+03 2.5005304e+03 -8.1404749e+02 - -1.7665610e+03 2.4783532e+03 -7.8775585e+02 - -1.8732109e+03 2.4559206e+03 -7.5912584e+02 - -1.9738900e+03 2.4335745e+03 -7.2803313e+02 - -2.0682946e+03 2.4116872e+03 -6.9431548e+02 - -2.1561186e+03 2.3906664e+03 -6.5776493e+02 - -2.2370451e+03 2.3709617e+03 -6.1811901e+02 - -2.3107373e+03 2.3530728e+03 -5.7505138e+02 - -2.3768288e+03 2.3375593e+03 -5.2816316e+02 - -2.4349147e+03 2.3250505e+03 -4.7697733e+02 - -2.4845446e+03 2.3162543e+03 -4.2094147e+02 - -2.5252240e+03 2.3119585e+03 -3.5944820e+02 - -2.5564331e+03 2.3130156e+03 -2.9188967e+02 - -2.5776780e+03 2.3202935e+03 -2.1777076e+02 - -2.5886018e+03 2.3345634e+03 -1.3691163e+02 - -2.5891821e+03 2.3562931e+03 -4.9760256e+01 - -2.5800261e+03 2.3853307e+03 4.2216012e+01 - -2.5627061e+03 2.4205305e+03 1.3620512e+02 - -2.5399622e+03 2.4595009e+03 2.2807488e+02 - -2.5155188e+03 2.4987461e+03 3.1302370e+02 - -2.4933891e+03 2.5343464e+03 3.8678987e+02 - -2.4769126e+03 2.5629475e+03 4.4683590e+02 - -2.4680371e+03 2.5825267e+03 4.9281389e+02 - -2.4671821e+03 2.5925758e+03 5.2614854e+02 - -2.4735882e+03 2.5937777e+03 5.4916893e+02 - -2.4858239e+03 2.5875072e+03 5.6431318e+02 - -2.5021967e+03 2.5754185e+03 5.7364542e+02 - -2.5209859e+03 2.5592084e+03 5.7865740e+02 - -2.5405277e+03 2.5405277e+03 5.8023135e+02 - -2.5592084e+03 2.5209859e+03 5.7865740e+02 - -2.5754185e+03 2.5021967e+03 5.7364542e+02 - -2.5875072e+03 2.4858239e+03 5.6431318e+02 - -2.5937777e+03 2.4735882e+03 5.4916893e+02 - -2.5925758e+03 2.4671821e+03 5.2614854e+02 - -2.5825267e+03 2.4680371e+03 4.9281389e+02 - -2.5629475e+03 2.4769126e+03 4.4683590e+02 - -2.5343464e+03 2.4933891e+03 3.8678987e+02 - -2.4987461e+03 2.5155188e+03 3.1302370e+02 - -2.4595009e+03 2.5399622e+03 2.2807488e+02 - -2.4205305e+03 2.5627061e+03 1.3620512e+02 - -2.3853307e+03 2.5800261e+03 4.2216012e+01 - -2.3562931e+03 2.5891821e+03 -4.9760256e+01 - -2.3345634e+03 2.5886018e+03 -1.3691163e+02 - -2.3202935e+03 2.5776780e+03 -2.1777076e+02 - -2.3130156e+03 2.5564331e+03 -2.9188967e+02 - -2.3119585e+03 2.5252240e+03 -3.5944820e+02 - -2.3162543e+03 2.4845446e+03 -4.2094147e+02 - -2.3250505e+03 2.4349147e+03 -4.7697733e+02 - -2.3375593e+03 2.3768288e+03 -5.2816316e+02 - -2.3530728e+03 2.3107373e+03 -5.7505138e+02 - -2.3709617e+03 2.2370451e+03 -6.1811901e+02 - -2.3906664e+03 2.1561186e+03 -6.5776493e+02 - -2.4116872e+03 2.0682946e+03 -6.9431548e+02 - -2.4335745e+03 1.9738900e+03 -7.2803313e+02 - -2.4559206e+03 1.8732109e+03 -7.5912584e+02 - -2.4783532e+03 1.7665610e+03 -7.8775585e+02 - -2.5005304e+03 1.6542479e+03 -8.1404749e+02 - -2.5221371e+03 1.5365898e+03 -8.3809394e+02 - -2.5428825e+03 1.4139197e+03 -8.5996306e+02 - -2.5624986e+03 1.2865895e+03 -8.7970235e+02 - -2.5807399e+03 1.1549725e+03 -8.9734317e+02 - -2.5973833e+03 1.0194651e+03 -9.1290443e+02 - -2.6122282e+03 8.8048740e+02 -9.2639571e+02 - -2.6250980e+03 7.3848315e+02 -9.3781996e+02 - -2.6358404e+03 5.9391813e+02 -9.4717580e+02 - -2.6443291e+03 4.4727814e+02 -9.5445948e+02 - -2.6504645e+03 2.9906605e+02 -9.5966643e+02 - -2.6541747e+03 1.4979816e+02 -9.6279251e+02 - -2.6554163e+03 0.0000000e+00 -9.6383487e+02 - -2.6541747e+03 -1.4979816e+02 -9.6279251e+02 - -2.6504645e+03 -2.9906605e+02 -9.5966643e+02 - -2.6443291e+03 -4.4727814e+02 -9.5445948e+02 - -2.6358404e+03 -5.9391813e+02 -9.4717580e+02 - -2.6250980e+03 -7.3848315e+02 -9.3781996e+02 - -2.6122282e+03 -8.8048740e+02 -9.2639571e+02 - -2.5973833e+03 -1.0194651e+03 -9.1290443e+02 - -2.5807399e+03 -1.1549725e+03 -8.9734317e+02 - -2.5624986e+03 -1.2865895e+03 -8.7970235e+02 - -2.5428825e+03 -1.4139197e+03 -8.5996306e+02 - -2.5221371e+03 -1.5365898e+03 -8.3809394e+02 - -2.5005304e+03 -1.6542479e+03 -8.1404749e+02 - -2.4783532e+03 -1.7665610e+03 -7.8775585e+02 - -2.4559206e+03 -1.8732109e+03 -7.5912584e+02 - -2.4335745e+03 -1.9738900e+03 -7.2803313e+02 - -2.4116872e+03 -2.0682946e+03 -6.9431548e+02 - -2.3906664e+03 -2.1561186e+03 -6.5776493e+02 - -2.3709617e+03 -2.2370451e+03 -6.1811901e+02 - -2.3530728e+03 -2.3107373e+03 -5.7505138e+02 - -2.3375593e+03 -2.3768288e+03 -5.2816316e+02 - -2.3250505e+03 -2.4349147e+03 -4.7697733e+02 - -2.3162543e+03 -2.4845446e+03 -4.2094147e+02 - -2.3119585e+03 -2.5252240e+03 -3.5944820e+02 - -2.3130156e+03 -2.5564331e+03 -2.9188967e+02 - -2.3202935e+03 -2.5776780e+03 -2.1777076e+02 - -2.3345634e+03 -2.5886018e+03 -1.3691163e+02 - -2.3562931e+03 -2.5891821e+03 -4.9760256e+01 - -2.3853307e+03 -2.5800261e+03 4.2216012e+01 - -2.4205305e+03 -2.5627061e+03 1.3620512e+02 - -2.4595009e+03 -2.5399622e+03 2.2807488e+02 - -2.4987461e+03 -2.5155188e+03 3.1302370e+02 - -2.5343464e+03 -2.4933891e+03 3.8678987e+02 - -2.5629475e+03 -2.4769126e+03 4.4683590e+02 - -2.5825267e+03 -2.4680371e+03 4.9281389e+02 - -2.5925758e+03 -2.4671821e+03 5.2614854e+02 - -2.5937777e+03 -2.4735882e+03 5.4916893e+02 - -2.5875072e+03 -2.4858239e+03 5.6431318e+02 - -2.5754185e+03 -2.5021967e+03 5.7364542e+02 - -2.5592084e+03 -2.5209859e+03 5.7865740e+02 - -2.5405277e+03 -2.5405277e+03 5.8023135e+02 - -2.5209859e+03 -2.5592084e+03 5.7865740e+02 - -2.5021967e+03 -2.5754185e+03 5.7364542e+02 - -2.4858239e+03 -2.5875072e+03 5.6431318e+02 - -2.4735882e+03 -2.5937777e+03 5.4916893e+02 - -2.4671821e+03 -2.5925758e+03 5.2614854e+02 - -2.4680371e+03 -2.5825267e+03 4.9281389e+02 - -2.4769126e+03 -2.5629475e+03 4.4683590e+02 - -2.4933891e+03 -2.5343464e+03 3.8678987e+02 - -2.5155188e+03 -2.4987461e+03 3.1302370e+02 - -2.5399622e+03 -2.4595009e+03 2.2807488e+02 - -2.5627061e+03 -2.4205305e+03 1.3620512e+02 - -2.5800261e+03 -2.3853307e+03 4.2216012e+01 - -2.5891821e+03 -2.3562931e+03 -4.9760256e+01 - -2.5886018e+03 -2.3345634e+03 -1.3691163e+02 - -2.5776780e+03 -2.3202935e+03 -2.1777076e+02 - -2.5564331e+03 -2.3130156e+03 -2.9188967e+02 - -2.5252240e+03 -2.3119585e+03 -3.5944820e+02 - -2.4845446e+03 -2.3162543e+03 -4.2094147e+02 - -2.4349147e+03 -2.3250505e+03 -4.7697733e+02 - -2.3768288e+03 -2.3375593e+03 -5.2816316e+02 - -2.3107373e+03 -2.3530728e+03 -5.7505138e+02 - -2.2370451e+03 -2.3709617e+03 -6.1811901e+02 - -2.1561186e+03 -2.3906664e+03 -6.5776493e+02 - -2.0682946e+03 -2.4116872e+03 -6.9431548e+02 - -1.9738900e+03 -2.4335745e+03 -7.2803313e+02 - -1.8732109e+03 -2.4559206e+03 -7.5912584e+02 - -1.7665610e+03 -2.4783532e+03 -7.8775585e+02 - -1.6542479e+03 -2.5005304e+03 -8.1404749e+02 - -1.5365898e+03 -2.5221371e+03 -8.3809394e+02 - -1.4139197e+03 -2.5428825e+03 -8.5996306e+02 - -1.2865895e+03 -2.5624986e+03 -8.7970235e+02 - -1.1549725e+03 -2.5807399e+03 -8.9734317e+02 - -1.0194651e+03 -2.5973833e+03 -9.1290443e+02 - -8.8048740e+02 -2.6122282e+03 -9.2639571e+02 - -7.3848315e+02 -2.6250980e+03 -9.3781996e+02 - -5.9391813e+02 -2.6358404e+03 -9.4717580e+02 - -4.4727814e+02 -2.6443291e+03 -9.5445948e+02 - -2.9906605e+02 -2.6504645e+03 -9.5966643e+02 - -1.4979816e+02 -2.6541747e+03 -9.6279251e+02 - 2.4067136e-09 -2.6554163e+03 -9.6383487e+02 - 1.4979816e+02 -2.6541747e+03 -9.6279251e+02 - 2.9906605e+02 -2.6504645e+03 -9.5966643e+02 - 4.4727814e+02 -2.6443291e+03 -9.5445948e+02 - 5.9391813e+02 -2.6358404e+03 -9.4717580e+02 - 7.3848315e+02 -2.6250980e+03 -9.3781996e+02 - 8.8048740e+02 -2.6122282e+03 -9.2639571e+02 - 1.0194651e+03 -2.5973833e+03 -9.1290443e+02 - 1.1549725e+03 -2.5807399e+03 -8.9734317e+02 - 1.2865895e+03 -2.5624986e+03 -8.7970235e+02 - 1.4139197e+03 -2.5428825e+03 -8.5996306e+02 - 1.5365898e+03 -2.5221371e+03 -8.3809394e+02 - 1.6542479e+03 -2.5005304e+03 -8.1404749e+02 - 1.7665610e+03 -2.4783532e+03 -7.8775585e+02 - 1.8732109e+03 -2.4559206e+03 -7.5912584e+02 - 1.9738900e+03 -2.4335745e+03 -7.2803313e+02 - 2.0682946e+03 -2.4116872e+03 -6.9431548e+02 - 2.1561186e+03 -2.3906664e+03 -6.5776493e+02 - 2.2370451e+03 -2.3709617e+03 -6.1811901e+02 - 2.3107373e+03 -2.3530728e+03 -5.7505138e+02 - 2.3768288e+03 -2.3375593e+03 -5.2816316e+02 - 2.4349147e+03 -2.3250505e+03 -4.7697733e+02 - 2.4845446e+03 -2.3162543e+03 -4.2094147e+02 - 2.5252240e+03 -2.3119585e+03 -3.5944820e+02 - 2.5564331e+03 -2.3130156e+03 -2.9188967e+02 - 2.5776780e+03 -2.3202935e+03 -2.1777076e+02 - 2.5886018e+03 -2.3345634e+03 -1.3691163e+02 - 2.5891821e+03 -2.3562931e+03 -4.9760256e+01 - 2.5800261e+03 -2.3853307e+03 4.2216012e+01 - 2.5627061e+03 -2.4205305e+03 1.3620512e+02 - 2.5399622e+03 -2.4595009e+03 2.2807488e+02 - 2.5155188e+03 -2.4987461e+03 3.1302370e+02 - 2.4933891e+03 -2.5343464e+03 3.8678987e+02 - 2.4769126e+03 -2.5629475e+03 4.4683590e+02 - 2.4680371e+03 -2.5825267e+03 4.9281389e+02 - 2.4671821e+03 -2.5925758e+03 5.2614854e+02 - 2.4735882e+03 -2.5937777e+03 5.4916893e+02 - 2.4858239e+03 -2.5875072e+03 5.6431318e+02 - 2.5021967e+03 -2.5754185e+03 5.7364542e+02 - 2.5209859e+03 -2.5592084e+03 5.7865740e+02 - 2.5405277e+03 -2.5405277e+03 5.8023135e+02 - 2.5592084e+03 -2.5209859e+03 5.7865740e+02 - 2.5754185e+03 -2.5021967e+03 5.7364542e+02 - 2.5875072e+03 -2.4858239e+03 5.6431318e+02 - 2.5937777e+03 -2.4735882e+03 5.4916893e+02 - 2.5925758e+03 -2.4671821e+03 5.2614854e+02 - 2.5825267e+03 -2.4680371e+03 4.9281389e+02 - 2.5629475e+03 -2.4769126e+03 4.4683590e+02 - 2.5343464e+03 -2.4933891e+03 3.8678987e+02 - 2.4987461e+03 -2.5155188e+03 3.1302370e+02 - 2.4595009e+03 -2.5399622e+03 2.2807488e+02 - 2.4205305e+03 -2.5627061e+03 1.3620512e+02 - 2.3853307e+03 -2.5800261e+03 4.2216012e+01 - 2.3562931e+03 -2.5891821e+03 -4.9760256e+01 - 2.3345634e+03 -2.5886018e+03 -1.3691163e+02 - 2.3202935e+03 -2.5776780e+03 -2.1777076e+02 - 2.3130156e+03 -2.5564331e+03 -2.9188967e+02 - 2.3119585e+03 -2.5252240e+03 -3.5944820e+02 - 2.3162543e+03 -2.4845446e+03 -4.2094147e+02 - 2.3250505e+03 -2.4349147e+03 -4.7697733e+02 - 2.3375593e+03 -2.3768288e+03 -5.2816316e+02 - 2.3530728e+03 -2.3107373e+03 -5.7505138e+02 - 2.3709617e+03 -2.2370451e+03 -6.1811901e+02 - 2.3906664e+03 -2.1561186e+03 -6.5776493e+02 - 2.4116872e+03 -2.0682946e+03 -6.9431548e+02 - 2.4335745e+03 -1.9738900e+03 -7.2803313e+02 - 2.4559206e+03 -1.8732109e+03 -7.5912584e+02 - 2.4783532e+03 -1.7665610e+03 -7.8775585e+02 - 2.5005304e+03 -1.6542479e+03 -8.1404749e+02 - 2.5221371e+03 -1.5365898e+03 -8.3809394e+02 - 2.5428825e+03 -1.4139197e+03 -8.5996306e+02 - 2.5624986e+03 -1.2865895e+03 -8.7970235e+02 - 2.5807399e+03 -1.1549725e+03 -8.9734317e+02 - 2.5973833e+03 -1.0194651e+03 -9.1290443e+02 - 2.6122282e+03 -8.8048740e+02 -9.2639571e+02 - 2.6250980e+03 -7.3848315e+02 -9.3781996e+02 - 2.6358404e+03 -5.9391813e+02 -9.4717580e+02 - 2.6443291e+03 -4.4727814e+02 -9.5445948e+02 - 2.6504645e+03 -2.9906605e+02 -9.5966643e+02 - 2.6541747e+03 -1.4979816e+02 -9.6279251e+02 - 2.6554163e+03 2.4067136e-09 -9.6383487e+02 - 2.6363008e+03 4.8134273e-09 -1.0470525e+03 - 2.6351343e+03 1.4711092e+02 -1.0458969e+03 - 2.6316495e+03 2.9369886e+02 -1.0424304e+03 - 2.6258897e+03 4.3924519e+02 -1.0366538e+03 - 2.6179271e+03 5.8323977e+02 -1.0285675e+03 - 2.6078617e+03 7.2518477e+02 -1.0181711e+03 - 2.5958209e+03 8.6459793e+02 -1.0054611e+03 - 2.5819585e+03 1.0010152e+03 -9.9042983e+02 - 2.5664539e+03 1.1339926e+03 -9.7306270e+02 - 2.5495119e+03 1.2631071e+03 -9.5333565e+02 - 2.5313617e+03 1.3879568e+03 -9.3121193e+02 - 2.5122576e+03 1.5081597e+03 -9.0663833e+02 - 2.4924791e+03 1.6233518e+03 -8.7954092e+02 - 2.4723324e+03 1.7331842e+03 -8.4982007e+02 - 2.4521526e+03 1.8373187e+03 -8.1734483e+02 - 2.4323072e+03 1.9354227e+03 -7.8194654e+02 - 2.4131999e+03 2.0271627e+03 -7.4341192e+02 - 2.3952771e+03 2.1121977e+03 -7.0147581e+02 - 2.3790339e+03 2.1901712e+03 -6.5581454e+02 - 2.3650215e+03 2.2607034e+03 -6.0604138e+02 - 2.3538538e+03 2.3233859e+03 -5.5170730e+02 - 2.3462099e+03 2.3777798e+03 -4.9231246e+02 - 2.3428274e+03 2.4234237e+03 -4.2733758e+02 - 2.3444773e+03 2.4598610e+03 -3.5630915e+02 - 2.3519053e+03 2.4866975e+03 -2.7891659e+02 - 2.3657198e+03 2.5037097e+03 -1.9519898e+02 - 2.3862095e+03 2.5110148e+03 -1.0580267e+02 - 2.4130949e+03 2.5092974e+03 -1.2265807e+01 - 2.4452690e+03 2.5000342e+03 8.2791075e+01 - 2.4806598e+03 2.4855929e+03 1.7575788e+02 - 2.5163766e+03 2.4690561e+03 2.6255894e+02 - 2.5492074e+03 2.4537180e+03 3.3952885e+02 - 2.5763094e+03 2.4424184e+03 4.0426911e+02 - 2.5957749e+03 2.4370155e+03 4.5605473e+02 - 2.6068351e+03 2.4382195e+03 4.9564806e+02 - 2.6097068e+03 2.4457663e+03 5.2473597e+02 - 2.6052647e+03 2.4587512e+03 5.4532429e+02 - 2.5947188e+03 2.4759482e+03 5.5929898e+02 - 2.5793908e+03 2.4960286e+03 5.6819233e+02 - 2.5605970e+03 2.5176742e+03 5.7309799e+02 - 2.5396109e+03 2.5396109e+03 5.7466225e+02 - 2.5176742e+03 2.5605970e+03 5.7309799e+02 - 2.4960286e+03 2.5793908e+03 5.6819233e+02 - 2.4759482e+03 2.5947188e+03 5.5929898e+02 - 2.4587512e+03 2.6052647e+03 5.4532429e+02 - 2.4457663e+03 2.6097068e+03 5.2473597e+02 - 2.4382195e+03 2.6068351e+03 4.9564806e+02 - 2.4370155e+03 2.5957749e+03 4.5605473e+02 - 2.4424184e+03 2.5763094e+03 4.0426911e+02 - 2.4537180e+03 2.5492074e+03 3.3952885e+02 - 2.4690561e+03 2.5163766e+03 2.6255894e+02 - 2.4855929e+03 2.4806598e+03 1.7575788e+02 - 2.5000342e+03 2.4452690e+03 8.2791075e+01 - 2.5092974e+03 2.4130949e+03 -1.2265807e+01 - 2.5110148e+03 2.3862095e+03 -1.0580267e+02 - 2.5037097e+03 2.3657198e+03 -1.9519898e+02 - 2.4866975e+03 2.3519053e+03 -2.7891659e+02 - 2.4598610e+03 2.3444773e+03 -3.5630915e+02 - 2.4234237e+03 2.3428274e+03 -4.2733758e+02 - 2.3777798e+03 2.3462099e+03 -4.9231246e+02 - 2.3233859e+03 2.3538538e+03 -5.5170730e+02 - 2.2607034e+03 2.3650215e+03 -6.0604138e+02 - 2.1901712e+03 2.3790339e+03 -6.5581454e+02 - 2.1121977e+03 2.3952771e+03 -7.0147581e+02 - 2.0271627e+03 2.4131999e+03 -7.4341192e+02 - 1.9354227e+03 2.4323072e+03 -7.8194654e+02 - 1.8373187e+03 2.4521526e+03 -8.1734483e+02 - 1.7331842e+03 2.4723324e+03 -8.4982007e+02 - 1.6233518e+03 2.4924791e+03 -8.7954092e+02 - 1.5081597e+03 2.5122576e+03 -9.0663833e+02 - 1.3879568e+03 2.5313617e+03 -9.3121193e+02 - 1.2631071e+03 2.5495119e+03 -9.5333565e+02 - 1.1339926e+03 2.5664539e+03 -9.7306270e+02 - 1.0010152e+03 2.5819585e+03 -9.9042983e+02 - 8.6459793e+02 2.5958209e+03 -1.0054611e+03 - 7.2518477e+02 2.6078617e+03 -1.0181711e+03 - 5.8323977e+02 2.6179271e+03 -1.0285675e+03 - 4.3924519e+02 2.6258897e+03 -1.0366538e+03 - 2.9369886e+02 2.6316495e+03 -1.0424304e+03 - 1.4711092e+02 2.6351343e+03 -1.0458969e+03 - -2.4067136e-09 2.6363008e+03 -1.0470525e+03 - -1.4711092e+02 2.6351343e+03 -1.0458969e+03 - -2.9369886e+02 2.6316495e+03 -1.0424304e+03 - -4.3924519e+02 2.6258897e+03 -1.0366538e+03 - -5.8323977e+02 2.6179271e+03 -1.0285675e+03 - -7.2518477e+02 2.6078617e+03 -1.0181711e+03 - -8.6459793e+02 2.5958209e+03 -1.0054611e+03 - -1.0010152e+03 2.5819585e+03 -9.9042983e+02 - -1.1339926e+03 2.5664539e+03 -9.7306270e+02 - -1.2631071e+03 2.5495119e+03 -9.5333565e+02 - -1.3879568e+03 2.5313617e+03 -9.3121193e+02 - -1.5081597e+03 2.5122576e+03 -9.0663833e+02 - -1.6233518e+03 2.4924791e+03 -8.7954092e+02 - -1.7331842e+03 2.4723324e+03 -8.4982007e+02 - -1.8373187e+03 2.4521526e+03 -8.1734483e+02 - -1.9354227e+03 2.4323072e+03 -7.8194654e+02 - -2.0271627e+03 2.4131999e+03 -7.4341192e+02 - -2.1121977e+03 2.3952771e+03 -7.0147581e+02 - -2.1901712e+03 2.3790339e+03 -6.5581454e+02 - -2.2607034e+03 2.3650215e+03 -6.0604138e+02 - -2.3233859e+03 2.3538538e+03 -5.5170730e+02 - -2.3777798e+03 2.3462099e+03 -4.9231246e+02 - -2.4234237e+03 2.3428274e+03 -4.2733758e+02 - -2.4598610e+03 2.3444773e+03 -3.5630915e+02 - -2.4866975e+03 2.3519053e+03 -2.7891659e+02 - -2.5037097e+03 2.3657198e+03 -1.9519898e+02 - -2.5110148e+03 2.3862095e+03 -1.0580267e+02 - -2.5092974e+03 2.4130949e+03 -1.2265807e+01 - -2.5000342e+03 2.4452690e+03 8.2791075e+01 - -2.4855929e+03 2.4806598e+03 1.7575788e+02 - -2.4690561e+03 2.5163766e+03 2.6255894e+02 - -2.4537180e+03 2.5492074e+03 3.3952885e+02 - -2.4424184e+03 2.5763094e+03 4.0426911e+02 - -2.4370155e+03 2.5957749e+03 4.5605473e+02 - -2.4382195e+03 2.6068351e+03 4.9564806e+02 - -2.4457663e+03 2.6097068e+03 5.2473597e+02 - -2.4587512e+03 2.6052647e+03 5.4532429e+02 - -2.4759482e+03 2.5947188e+03 5.5929898e+02 - -2.4960286e+03 2.5793908e+03 5.6819233e+02 - -2.5176742e+03 2.5605970e+03 5.7309799e+02 - -2.5396109e+03 2.5396109e+03 5.7466225e+02 - -2.5605970e+03 2.5176742e+03 5.7309799e+02 - -2.5793908e+03 2.4960286e+03 5.6819233e+02 - -2.5947188e+03 2.4759482e+03 5.5929898e+02 - -2.6052647e+03 2.4587512e+03 5.4532429e+02 - -2.6097068e+03 2.4457663e+03 5.2473597e+02 - -2.6068351e+03 2.4382195e+03 4.9564806e+02 - -2.5957749e+03 2.4370155e+03 4.5605473e+02 - -2.5763094e+03 2.4424184e+03 4.0426911e+02 - -2.5492074e+03 2.4537180e+03 3.3952885e+02 - -2.5163766e+03 2.4690561e+03 2.6255894e+02 - -2.4806598e+03 2.4855929e+03 1.7575788e+02 - -2.4452690e+03 2.5000342e+03 8.2791075e+01 - -2.4130949e+03 2.5092974e+03 -1.2265807e+01 - -2.3862095e+03 2.5110148e+03 -1.0580267e+02 - -2.3657198e+03 2.5037097e+03 -1.9519898e+02 - -2.3519053e+03 2.4866975e+03 -2.7891659e+02 - -2.3444773e+03 2.4598610e+03 -3.5630915e+02 - -2.3428274e+03 2.4234237e+03 -4.2733758e+02 - -2.3462099e+03 2.3777798e+03 -4.9231246e+02 - -2.3538538e+03 2.3233859e+03 -5.5170730e+02 - -2.3650215e+03 2.2607034e+03 -6.0604138e+02 - -2.3790339e+03 2.1901712e+03 -6.5581454e+02 - -2.3952771e+03 2.1121977e+03 -7.0147581e+02 - -2.4131999e+03 2.0271627e+03 -7.4341192e+02 - -2.4323072e+03 1.9354227e+03 -7.8194654e+02 - -2.4521526e+03 1.8373187e+03 -8.1734483e+02 - -2.4723324e+03 1.7331842e+03 -8.4982007e+02 - -2.4924791e+03 1.6233518e+03 -8.7954092e+02 - -2.5122576e+03 1.5081597e+03 -9.0663833e+02 - -2.5313617e+03 1.3879568e+03 -9.3121193e+02 - -2.5495119e+03 1.2631071e+03 -9.5333565e+02 - -2.5664539e+03 1.1339926e+03 -9.7306270e+02 - -2.5819585e+03 1.0010152e+03 -9.9042983e+02 - -2.5958209e+03 8.6459793e+02 -1.0054611e+03 - -2.6078617e+03 7.2518477e+02 -1.0181711e+03 - -2.6179271e+03 5.8323977e+02 -1.0285675e+03 - -2.6258897e+03 4.3924519e+02 -1.0366538e+03 - -2.6316495e+03 2.9369886e+02 -1.0424304e+03 - -2.6351343e+03 1.4711092e+02 -1.0458969e+03 - -2.6363008e+03 0.0000000e+00 -1.0470525e+03 - -2.6351343e+03 -1.4711092e+02 -1.0458969e+03 - -2.6316495e+03 -2.9369886e+02 -1.0424304e+03 - -2.6258897e+03 -4.3924519e+02 -1.0366538e+03 - -2.6179271e+03 -5.8323977e+02 -1.0285675e+03 - -2.6078617e+03 -7.2518477e+02 -1.0181711e+03 - -2.5958209e+03 -8.6459793e+02 -1.0054611e+03 - -2.5819585e+03 -1.0010152e+03 -9.9042983e+02 - -2.5664539e+03 -1.1339926e+03 -9.7306270e+02 - -2.5495119e+03 -1.2631071e+03 -9.5333565e+02 - -2.5313617e+03 -1.3879568e+03 -9.3121193e+02 - -2.5122576e+03 -1.5081597e+03 -9.0663833e+02 - -2.4924791e+03 -1.6233518e+03 -8.7954092e+02 - -2.4723324e+03 -1.7331842e+03 -8.4982007e+02 - -2.4521526e+03 -1.8373187e+03 -8.1734483e+02 - -2.4323072e+03 -1.9354227e+03 -7.8194654e+02 - -2.4131999e+03 -2.0271627e+03 -7.4341192e+02 - -2.3952771e+03 -2.1121977e+03 -7.0147581e+02 - -2.3790339e+03 -2.1901712e+03 -6.5581454e+02 - -2.3650215e+03 -2.2607034e+03 -6.0604138e+02 - -2.3538538e+03 -2.3233859e+03 -5.5170730e+02 - -2.3462099e+03 -2.3777798e+03 -4.9231246e+02 - -2.3428274e+03 -2.4234237e+03 -4.2733758e+02 - -2.3444773e+03 -2.4598610e+03 -3.5630915e+02 - -2.3519053e+03 -2.4866975e+03 -2.7891659e+02 - -2.3657198e+03 -2.5037097e+03 -1.9519898e+02 - -2.3862095e+03 -2.5110148e+03 -1.0580267e+02 - -2.4130949e+03 -2.5092974e+03 -1.2265807e+01 - -2.4452690e+03 -2.5000342e+03 8.2791075e+01 - -2.4806598e+03 -2.4855929e+03 1.7575788e+02 - -2.5163766e+03 -2.4690561e+03 2.6255894e+02 - -2.5492074e+03 -2.4537180e+03 3.3952885e+02 - -2.5763094e+03 -2.4424184e+03 4.0426911e+02 - -2.5957749e+03 -2.4370155e+03 4.5605473e+02 - -2.6068351e+03 -2.4382195e+03 4.9564806e+02 - -2.6097068e+03 -2.4457663e+03 5.2473597e+02 - -2.6052647e+03 -2.4587512e+03 5.4532429e+02 - -2.5947188e+03 -2.4759482e+03 5.5929898e+02 - -2.5793908e+03 -2.4960286e+03 5.6819233e+02 - -2.5605970e+03 -2.5176742e+03 5.7309799e+02 - -2.5396109e+03 -2.5396109e+03 5.7466225e+02 - -2.5176742e+03 -2.5605970e+03 5.7309799e+02 - -2.4960286e+03 -2.5793908e+03 5.6819233e+02 - -2.4759482e+03 -2.5947188e+03 5.5929898e+02 - -2.4587512e+03 -2.6052647e+03 5.4532429e+02 - -2.4457663e+03 -2.6097068e+03 5.2473597e+02 - -2.4382195e+03 -2.6068351e+03 4.9564806e+02 - -2.4370155e+03 -2.5957749e+03 4.5605473e+02 - -2.4424184e+03 -2.5763094e+03 4.0426911e+02 - -2.4537180e+03 -2.5492074e+03 3.3952885e+02 - -2.4690561e+03 -2.5163766e+03 2.6255894e+02 - -2.4855929e+03 -2.4806598e+03 1.7575788e+02 - -2.5000342e+03 -2.4452690e+03 8.2791075e+01 - -2.5092974e+03 -2.4130949e+03 -1.2265807e+01 - -2.5110148e+03 -2.3862095e+03 -1.0580267e+02 - -2.5037097e+03 -2.3657198e+03 -1.9519898e+02 - -2.4866975e+03 -2.3519053e+03 -2.7891659e+02 - -2.4598610e+03 -2.3444773e+03 -3.5630915e+02 - -2.4234237e+03 -2.3428274e+03 -4.2733758e+02 - -2.3777798e+03 -2.3462099e+03 -4.9231246e+02 - -2.3233859e+03 -2.3538538e+03 -5.5170730e+02 - -2.2607034e+03 -2.3650215e+03 -6.0604138e+02 - -2.1901712e+03 -2.3790339e+03 -6.5581454e+02 - -2.1121977e+03 -2.3952771e+03 -7.0147581e+02 - -2.0271627e+03 -2.4131999e+03 -7.4341192e+02 - -1.9354227e+03 -2.4323072e+03 -7.8194654e+02 - -1.8373187e+03 -2.4521526e+03 -8.1734483e+02 - -1.7331842e+03 -2.4723324e+03 -8.4982007e+02 - -1.6233518e+03 -2.4924791e+03 -8.7954092e+02 - -1.5081597e+03 -2.5122576e+03 -9.0663833e+02 - -1.3879568e+03 -2.5313617e+03 -9.3121193e+02 - -1.2631071e+03 -2.5495119e+03 -9.5333565e+02 - -1.1339926e+03 -2.5664539e+03 -9.7306270e+02 - -1.0010152e+03 -2.5819585e+03 -9.9042983e+02 - -8.6459793e+02 -2.5958209e+03 -1.0054611e+03 - -7.2518477e+02 -2.6078617e+03 -1.0181711e+03 - -5.8323977e+02 -2.6179271e+03 -1.0285675e+03 - -4.3924519e+02 -2.6258897e+03 -1.0366538e+03 - -2.9369886e+02 -2.6316495e+03 -1.0424304e+03 - -1.4711092e+02 -2.6351343e+03 -1.0458969e+03 - 0.0000000e+00 -2.6363008e+03 -1.0470525e+03 - 1.4711092e+02 -2.6351343e+03 -1.0458969e+03 - 2.9369886e+02 -2.6316495e+03 -1.0424304e+03 - 4.3924519e+02 -2.6258897e+03 -1.0366538e+03 - 5.8323977e+02 -2.6179271e+03 -1.0285675e+03 - 7.2518477e+02 -2.6078617e+03 -1.0181711e+03 - 8.6459793e+02 -2.5958209e+03 -1.0054611e+03 - 1.0010152e+03 -2.5819585e+03 -9.9042983e+02 - 1.1339926e+03 -2.5664539e+03 -9.7306270e+02 - 1.2631071e+03 -2.5495119e+03 -9.5333565e+02 - 1.3879568e+03 -2.5313617e+03 -9.3121193e+02 - 1.5081597e+03 -2.5122576e+03 -9.0663833e+02 - 1.6233518e+03 -2.4924791e+03 -8.7954092e+02 - 1.7331842e+03 -2.4723324e+03 -8.4982007e+02 - 1.8373187e+03 -2.4521526e+03 -8.1734483e+02 - 1.9354227e+03 -2.4323072e+03 -7.8194654e+02 - 2.0271627e+03 -2.4131999e+03 -7.4341192e+02 - 2.1121977e+03 -2.3952771e+03 -7.0147581e+02 - 2.1901712e+03 -2.3790339e+03 -6.5581454e+02 - 2.2607034e+03 -2.3650215e+03 -6.0604138e+02 - 2.3233859e+03 -2.3538538e+03 -5.5170730e+02 - 2.3777798e+03 -2.3462099e+03 -4.9231246e+02 - 2.4234237e+03 -2.3428274e+03 -4.2733758e+02 - 2.4598610e+03 -2.3444773e+03 -3.5630915e+02 - 2.4866975e+03 -2.3519053e+03 -2.7891659e+02 - 2.5037097e+03 -2.3657198e+03 -1.9519898e+02 - 2.5110148e+03 -2.3862095e+03 -1.0580267e+02 - 2.5092974e+03 -2.4130949e+03 -1.2265807e+01 - 2.5000342e+03 -2.4452690e+03 8.2791075e+01 - 2.4855929e+03 -2.4806598e+03 1.7575788e+02 - 2.4690561e+03 -2.5163766e+03 2.6255894e+02 - 2.4537180e+03 -2.5492074e+03 3.3952885e+02 - 2.4424184e+03 -2.5763094e+03 4.0426911e+02 - 2.4370155e+03 -2.5957749e+03 4.5605473e+02 - 2.4382195e+03 -2.6068351e+03 4.9564806e+02 - 2.4457663e+03 -2.6097068e+03 5.2473597e+02 - 2.4587512e+03 -2.6052647e+03 5.4532429e+02 - 2.4759482e+03 -2.5947188e+03 5.5929898e+02 - 2.4960286e+03 -2.5793908e+03 5.6819233e+02 - 2.5176742e+03 -2.5605970e+03 5.7309799e+02 - 2.5396109e+03 -2.5396109e+03 5.7466225e+02 - 2.5605970e+03 -2.5176742e+03 5.7309799e+02 - 2.5793908e+03 -2.4960286e+03 5.6819233e+02 - 2.5947188e+03 -2.4759482e+03 5.5929898e+02 - 2.6052647e+03 -2.4587512e+03 5.4532429e+02 - 2.6097068e+03 -2.4457663e+03 5.2473597e+02 - 2.6068351e+03 -2.4382195e+03 4.9564806e+02 - 2.5957749e+03 -2.4370155e+03 4.5605473e+02 - 2.5763094e+03 -2.4424184e+03 4.0426911e+02 - 2.5492074e+03 -2.4537180e+03 3.3952885e+02 - 2.5163766e+03 -2.4690561e+03 2.6255894e+02 - 2.4806598e+03 -2.4855929e+03 1.7575788e+02 - 2.4452690e+03 -2.5000342e+03 8.2791075e+01 - 2.4130949e+03 -2.5092974e+03 -1.2265807e+01 - 2.3862095e+03 -2.5110148e+03 -1.0580267e+02 - 2.3657198e+03 -2.5037097e+03 -1.9519898e+02 - 2.3519053e+03 -2.4866975e+03 -2.7891659e+02 - 2.3444773e+03 -2.4598610e+03 -3.5630915e+02 - 2.3428274e+03 -2.4234237e+03 -4.2733758e+02 - 2.3462099e+03 -2.3777798e+03 -4.9231246e+02 - 2.3538538e+03 -2.3233859e+03 -5.5170730e+02 - 2.3650215e+03 -2.2607034e+03 -6.0604138e+02 - 2.3790339e+03 -2.1901712e+03 -6.5581454e+02 - 2.3952771e+03 -2.1121977e+03 -7.0147581e+02 - 2.4131999e+03 -2.0271627e+03 -7.4341192e+02 - 2.4323072e+03 -1.9354227e+03 -7.8194654e+02 - 2.4521526e+03 -1.8373187e+03 -8.1734483e+02 - 2.4723324e+03 -1.7331842e+03 -8.4982007e+02 - 2.4924791e+03 -1.6233518e+03 -8.7954092e+02 - 2.5122576e+03 -1.5081597e+03 -9.0663833e+02 - 2.5313617e+03 -1.3879568e+03 -9.3121193e+02 - 2.5495119e+03 -1.2631071e+03 -9.5333565e+02 - 2.5664539e+03 -1.1339926e+03 -9.7306270e+02 - 2.5819585e+03 -1.0010152e+03 -9.9042983e+02 - 2.5958209e+03 -8.6459793e+02 -1.0054611e+03 - 2.6078617e+03 -7.2518477e+02 -1.0181711e+03 - 2.6179271e+03 -5.8323977e+02 -1.0285675e+03 - 2.6258897e+03 -4.3924519e+02 -1.0366538e+03 - 2.6316495e+03 -2.9369886e+02 -1.0424304e+03 - 2.6351343e+03 -1.4711092e+02 -1.0458969e+03 - 2.6363008e+03 0.0000000e+00 -1.0470525e+03 - 2.6157296e+03 4.8134273e-09 -1.1291823e+03 - 2.6146482e+03 1.4412442e+02 -1.1279055e+03 - 2.6114186e+03 2.8773228e+02 -1.1240747e+03 - 2.6060848e+03 4.3031095e+02 -1.1176877e+03 - 2.5987196e+03 5.7135544e+02 -1.1087403e+03 - 2.5894246e+03 7.1037181e+02 -1.0972249e+03 - 2.5783293e+03 8.4688005e+02 -1.0831290e+03 - 2.5655908e+03 9.8041631e+02 -1.0664329e+03 - 2.5513934e+03 1.1105344e+03 -1.0471072e+03 - 2.5359487e+03 1.2368063e+03 -1.0251095e+03 - 2.5194950e+03 1.3588219e+03 -1.0003808e+03 - 2.5022989e+03 1.4761879e+03 -9.7284161e+02 - 2.4846556e+03 1.5885248e+03 -9.4238653e+02 - 2.4668916e+03 1.6954643e+03 -9.0887947e+02 - 2.4493672e+03 1.7966444e+03 -8.7214776e+02 - 2.4324804e+03 1.8917044e+03 -8.3197628e+02 - 2.4166711e+03 1.9802792e+03 -7.8810211e+02 - 2.4024266e+03 2.0619932e+03 -7.4021063e+02 - 2.3902854e+03 2.1364553e+03 -6.8793523e+02 - 2.3808404e+03 2.2032567e+03 -6.3086386e+02 - 2.3747354e+03 2.2619742e+03 -5.6855809e+02 - 2.3726514e+03 2.3121840e+03 -5.0059271e+02 - 2.3752739e+03 2.3534950e+03 -4.2662715e+02 - 2.3832286e+03 2.3856089e+03 -3.4652077e+02 - 2.3969751e+03 2.4084209e+03 -2.6049930e+02 - 2.4166494e+03 2.4221618e+03 -1.6936192e+02 - 2.4418727e+03 2.4275675e+03 -7.4681762e+01 - 2.4715765e+03 2.4260232e+03 2.1096156e+01 - 2.5039394e+03 2.4195960e+03 1.1478404e+02 - 2.5365320e+03 2.4108702e+03 2.0288093e+02 - 2.5666931e+03 2.4025718e+03 2.8222416e+02 - 2.5920244e+03 2.3970963e+03 3.5061620e+02 - 2.6108057e+03 2.3961272e+03 4.0715428e+02 - 2.6221769e+03 2.4004843e+03 4.5215731e+02 - 2.6260732e+03 2.4102058e+03 4.8680216e+02 - 2.6230130e+03 2.4247635e+03 5.1267808e+02 - 2.6138598e+03 2.4432982e+03 5.3141908e+02 - 2.5996308e+03 2.4648042e+03 5.4447217e+02 - 2.5813779e+03 2.4882429e+03 5.5298548e+02 - 2.5601303e+03 2.5125968e+03 5.5777302e+02 - 2.5368809e+03 2.5368809e+03 5.5931596e+02 - 2.5125968e+03 2.5601303e+03 5.5777302e+02 - 2.4882429e+03 2.5813779e+03 5.5298548e+02 - 2.4648042e+03 2.5996308e+03 5.4447217e+02 - 2.4432982e+03 2.6138598e+03 5.3141908e+02 - 2.4247635e+03 2.6230130e+03 5.1267808e+02 - 2.4102058e+03 2.6260732e+03 4.8680216e+02 - 2.4004843e+03 2.6221769e+03 4.5215731e+02 - 2.3961272e+03 2.6108057e+03 4.0715428e+02 - 2.3970963e+03 2.5920244e+03 3.5061620e+02 - 2.4025718e+03 2.5666931e+03 2.8222416e+02 - 2.4108702e+03 2.5365320e+03 2.0288093e+02 - 2.4195960e+03 2.5039394e+03 1.1478404e+02 - 2.4260232e+03 2.4715765e+03 2.1096156e+01 - 2.4275675e+03 2.4418727e+03 -7.4681762e+01 - 2.4221618e+03 2.4166494e+03 -1.6936192e+02 - 2.4084209e+03 2.3969751e+03 -2.6049930e+02 - 2.3856089e+03 2.3832286e+03 -3.4652077e+02 - 2.3534950e+03 2.3752739e+03 -4.2662715e+02 - 2.3121840e+03 2.3726514e+03 -5.0059271e+02 - 2.2619742e+03 2.3747354e+03 -5.6855809e+02 - 2.2032567e+03 2.3808404e+03 -6.3086386e+02 - 2.1364553e+03 2.3902854e+03 -6.8793523e+02 - 2.0619932e+03 2.4024266e+03 -7.4021063e+02 - 1.9802792e+03 2.4166711e+03 -7.8810211e+02 - 1.8917044e+03 2.4324804e+03 -8.3197628e+02 - 1.7966444e+03 2.4493672e+03 -8.7214776e+02 - 1.6954643e+03 2.4668916e+03 -9.0887947e+02 - 1.5885248e+03 2.4846556e+03 -9.4238653e+02 - 1.4761879e+03 2.5022989e+03 -9.7284161e+02 - 1.3588219e+03 2.5194950e+03 -1.0003808e+03 - 1.2368063e+03 2.5359487e+03 -1.0251095e+03 - 1.1105344e+03 2.5513934e+03 -1.0471072e+03 - 9.8041631e+02 2.5655908e+03 -1.0664329e+03 - 8.4688005e+02 2.5783293e+03 -1.0831290e+03 - 7.1037181e+02 2.5894246e+03 -1.0972249e+03 - 5.7135544e+02 2.5987196e+03 -1.1087403e+03 - 4.3031095e+02 2.6060848e+03 -1.1176877e+03 - 2.8773228e+02 2.6114186e+03 -1.1240747e+03 - 1.4412442e+02 2.6146482e+03 -1.1279055e+03 - 2.4067136e-09 2.6157296e+03 -1.1291823e+03 - -1.4412442e+02 2.6146482e+03 -1.1279055e+03 - -2.8773228e+02 2.6114186e+03 -1.1240747e+03 - -4.3031095e+02 2.6060848e+03 -1.1176877e+03 - -5.7135544e+02 2.5987196e+03 -1.1087403e+03 - -7.1037181e+02 2.5894246e+03 -1.0972249e+03 - -8.4688005e+02 2.5783293e+03 -1.0831290e+03 - -9.8041631e+02 2.5655908e+03 -1.0664329e+03 - -1.1105344e+03 2.5513934e+03 -1.0471072e+03 - -1.2368063e+03 2.5359487e+03 -1.0251095e+03 - -1.3588219e+03 2.5194950e+03 -1.0003808e+03 - -1.4761879e+03 2.5022989e+03 -9.7284161e+02 - -1.5885248e+03 2.4846556e+03 -9.4238653e+02 - -1.6954643e+03 2.4668916e+03 -9.0887947e+02 - -1.7966444e+03 2.4493672e+03 -8.7214776e+02 - -1.8917044e+03 2.4324804e+03 -8.3197628e+02 - -1.9802792e+03 2.4166711e+03 -7.8810211e+02 - -2.0619932e+03 2.4024266e+03 -7.4021063e+02 - -2.1364553e+03 2.3902854e+03 -6.8793523e+02 - -2.2032567e+03 2.3808404e+03 -6.3086386e+02 - -2.2619742e+03 2.3747354e+03 -5.6855809e+02 - -2.3121840e+03 2.3726514e+03 -5.0059271e+02 - -2.3534950e+03 2.3752739e+03 -4.2662715e+02 - -2.3856089e+03 2.3832286e+03 -3.4652077e+02 - -2.4084209e+03 2.3969751e+03 -2.6049930e+02 - -2.4221618e+03 2.4166494e+03 -1.6936192e+02 - -2.4275675e+03 2.4418727e+03 -7.4681762e+01 - -2.4260232e+03 2.4715765e+03 2.1096156e+01 - -2.4195960e+03 2.5039394e+03 1.1478404e+02 - -2.4108702e+03 2.5365320e+03 2.0288093e+02 - -2.4025718e+03 2.5666931e+03 2.8222416e+02 - -2.3970963e+03 2.5920244e+03 3.5061620e+02 - -2.3961272e+03 2.6108057e+03 4.0715428e+02 - -2.4004843e+03 2.6221769e+03 4.5215731e+02 - -2.4102058e+03 2.6260732e+03 4.8680216e+02 - -2.4247635e+03 2.6230130e+03 5.1267808e+02 - -2.4432982e+03 2.6138598e+03 5.3141908e+02 - -2.4648042e+03 2.5996308e+03 5.4447217e+02 - -2.4882429e+03 2.5813779e+03 5.5298548e+02 - -2.5125968e+03 2.5601303e+03 5.5777302e+02 - -2.5368809e+03 2.5368809e+03 5.5931596e+02 - -2.5601303e+03 2.5125968e+03 5.5777302e+02 - -2.5813779e+03 2.4882429e+03 5.5298548e+02 - -2.5996308e+03 2.4648042e+03 5.4447217e+02 - -2.6138598e+03 2.4432982e+03 5.3141908e+02 - -2.6230130e+03 2.4247635e+03 5.1267808e+02 - -2.6260732e+03 2.4102058e+03 4.8680216e+02 - -2.6221769e+03 2.4004843e+03 4.5215731e+02 - -2.6108057e+03 2.3961272e+03 4.0715428e+02 - -2.5920244e+03 2.3970963e+03 3.5061620e+02 - -2.5666931e+03 2.4025718e+03 2.8222416e+02 - -2.5365320e+03 2.4108702e+03 2.0288093e+02 - -2.5039394e+03 2.4195960e+03 1.1478404e+02 - -2.4715765e+03 2.4260232e+03 2.1096156e+01 - -2.4418727e+03 2.4275675e+03 -7.4681762e+01 - -2.4166494e+03 2.4221618e+03 -1.6936192e+02 - -2.3969751e+03 2.4084209e+03 -2.6049930e+02 - -2.3832286e+03 2.3856089e+03 -3.4652077e+02 - -2.3752739e+03 2.3534950e+03 -4.2662715e+02 - -2.3726514e+03 2.3121840e+03 -5.0059271e+02 - -2.3747354e+03 2.2619742e+03 -5.6855809e+02 - -2.3808404e+03 2.2032567e+03 -6.3086386e+02 - -2.3902854e+03 2.1364553e+03 -6.8793523e+02 - -2.4024266e+03 2.0619932e+03 -7.4021063e+02 - -2.4166711e+03 1.9802792e+03 -7.8810211e+02 - -2.4324804e+03 1.8917044e+03 -8.3197628e+02 - -2.4493672e+03 1.7966444e+03 -8.7214776e+02 - -2.4668916e+03 1.6954643e+03 -9.0887947e+02 - -2.4846556e+03 1.5885248e+03 -9.4238653e+02 - -2.5022989e+03 1.4761879e+03 -9.7284161e+02 - -2.5194950e+03 1.3588219e+03 -1.0003808e+03 - -2.5359487e+03 1.2368063e+03 -1.0251095e+03 - -2.5513934e+03 1.1105344e+03 -1.0471072e+03 - -2.5655908e+03 9.8041631e+02 -1.0664329e+03 - -2.5783293e+03 8.4688005e+02 -1.0831290e+03 - -2.5894246e+03 7.1037181e+02 -1.0972249e+03 - -2.5987196e+03 5.7135544e+02 -1.1087403e+03 - -2.6060848e+03 4.3031095e+02 -1.1176877e+03 - -2.6114186e+03 2.8773228e+02 -1.1240747e+03 - -2.6146482e+03 1.4412442e+02 -1.1279055e+03 - -2.6157296e+03 -4.8134273e-09 -1.1291823e+03 - -2.6146482e+03 -1.4412442e+02 -1.1279055e+03 - -2.6114186e+03 -2.8773228e+02 -1.1240747e+03 - -2.6060848e+03 -4.3031095e+02 -1.1176877e+03 - -2.5987196e+03 -5.7135544e+02 -1.1087403e+03 - -2.5894246e+03 -7.1037181e+02 -1.0972249e+03 - -2.5783293e+03 -8.4688005e+02 -1.0831290e+03 - -2.5655908e+03 -9.8041631e+02 -1.0664329e+03 - -2.5513934e+03 -1.1105344e+03 -1.0471072e+03 - -2.5359487e+03 -1.2368063e+03 -1.0251095e+03 - -2.5194950e+03 -1.3588219e+03 -1.0003808e+03 - -2.5022989e+03 -1.4761879e+03 -9.7284161e+02 - -2.4846556e+03 -1.5885248e+03 -9.4238653e+02 - -2.4668916e+03 -1.6954643e+03 -9.0887947e+02 - -2.4493672e+03 -1.7966444e+03 -8.7214776e+02 - -2.4324804e+03 -1.8917044e+03 -8.3197628e+02 - -2.4166711e+03 -1.9802792e+03 -7.8810211e+02 - -2.4024266e+03 -2.0619932e+03 -7.4021063e+02 - -2.3902854e+03 -2.1364553e+03 -6.8793523e+02 - -2.3808404e+03 -2.2032567e+03 -6.3086386e+02 - -2.3747354e+03 -2.2619742e+03 -5.6855809e+02 - -2.3726514e+03 -2.3121840e+03 -5.0059271e+02 - -2.3752739e+03 -2.3534950e+03 -4.2662715e+02 - -2.3832286e+03 -2.3856089e+03 -3.4652077e+02 - -2.3969751e+03 -2.4084209e+03 -2.6049930e+02 - -2.4166494e+03 -2.4221618e+03 -1.6936192e+02 - -2.4418727e+03 -2.4275675e+03 -7.4681762e+01 - -2.4715765e+03 -2.4260232e+03 2.1096156e+01 - -2.5039394e+03 -2.4195960e+03 1.1478404e+02 - -2.5365320e+03 -2.4108702e+03 2.0288093e+02 - -2.5666931e+03 -2.4025718e+03 2.8222416e+02 - -2.5920244e+03 -2.3970963e+03 3.5061620e+02 - -2.6108057e+03 -2.3961272e+03 4.0715428e+02 - -2.6221769e+03 -2.4004843e+03 4.5215731e+02 - -2.6260732e+03 -2.4102058e+03 4.8680216e+02 - -2.6230130e+03 -2.4247635e+03 5.1267808e+02 - -2.6138598e+03 -2.4432982e+03 5.3141908e+02 - -2.5996308e+03 -2.4648042e+03 5.4447217e+02 - -2.5813779e+03 -2.4882429e+03 5.5298548e+02 - -2.5601303e+03 -2.5125968e+03 5.5777302e+02 - -2.5368809e+03 -2.5368809e+03 5.5931596e+02 - -2.5125968e+03 -2.5601303e+03 5.5777302e+02 - -2.4882429e+03 -2.5813779e+03 5.5298548e+02 - -2.4648042e+03 -2.5996308e+03 5.4447217e+02 - -2.4432982e+03 -2.6138598e+03 5.3141908e+02 - -2.4247635e+03 -2.6230130e+03 5.1267808e+02 - -2.4102058e+03 -2.6260732e+03 4.8680216e+02 - -2.4004843e+03 -2.6221769e+03 4.5215731e+02 - -2.3961272e+03 -2.6108057e+03 4.0715428e+02 - -2.3970963e+03 -2.5920244e+03 3.5061620e+02 - -2.4025718e+03 -2.5666931e+03 2.8222416e+02 - -2.4108702e+03 -2.5365320e+03 2.0288093e+02 - -2.4195960e+03 -2.5039394e+03 1.1478404e+02 - -2.4260232e+03 -2.4715765e+03 2.1096156e+01 - -2.4275675e+03 -2.4418727e+03 -7.4681762e+01 - -2.4221618e+03 -2.4166494e+03 -1.6936192e+02 - -2.4084209e+03 -2.3969751e+03 -2.6049930e+02 - -2.3856089e+03 -2.3832286e+03 -3.4652077e+02 - -2.3534950e+03 -2.3752739e+03 -4.2662715e+02 - -2.3121840e+03 -2.3726514e+03 -5.0059271e+02 - -2.2619742e+03 -2.3747354e+03 -5.6855809e+02 - -2.2032567e+03 -2.3808404e+03 -6.3086386e+02 - -2.1364553e+03 -2.3902854e+03 -6.8793523e+02 - -2.0619932e+03 -2.4024266e+03 -7.4021063e+02 - -1.9802792e+03 -2.4166711e+03 -7.8810211e+02 - -1.8917044e+03 -2.4324804e+03 -8.3197628e+02 - -1.7966444e+03 -2.4493672e+03 -8.7214776e+02 - -1.6954643e+03 -2.4668916e+03 -9.0887947e+02 - -1.5885248e+03 -2.4846556e+03 -9.4238653e+02 - -1.4761879e+03 -2.5022989e+03 -9.7284161e+02 - -1.3588219e+03 -2.5194950e+03 -1.0003808e+03 - -1.2368063e+03 -2.5359487e+03 -1.0251095e+03 - -1.1105344e+03 -2.5513934e+03 -1.0471072e+03 - -9.8041631e+02 -2.5655908e+03 -1.0664329e+03 - -8.4688005e+02 -2.5783293e+03 -1.0831290e+03 - -7.1037181e+02 -2.5894246e+03 -1.0972249e+03 - -5.7135544e+02 -2.5987196e+03 -1.1087403e+03 - -4.3031095e+02 -2.6060848e+03 -1.1176877e+03 - -2.8773228e+02 -2.6114186e+03 -1.1240747e+03 - -1.4412442e+02 -2.6146482e+03 -1.1279055e+03 - -4.8134273e-09 -2.6157296e+03 -1.1291823e+03 - 1.4412442e+02 -2.6146482e+03 -1.1279055e+03 - 2.8773228e+02 -2.6114186e+03 -1.1240747e+03 - 4.3031095e+02 -2.6060848e+03 -1.1176877e+03 - 5.7135544e+02 -2.5987196e+03 -1.1087403e+03 - 7.1037181e+02 -2.5894246e+03 -1.0972249e+03 - 8.4688005e+02 -2.5783293e+03 -1.0831290e+03 - 9.8041631e+02 -2.5655908e+03 -1.0664329e+03 - 1.1105344e+03 -2.5513934e+03 -1.0471072e+03 - 1.2368063e+03 -2.5359487e+03 -1.0251095e+03 - 1.3588219e+03 -2.5194950e+03 -1.0003808e+03 - 1.4761879e+03 -2.5022989e+03 -9.7284161e+02 - 1.5885248e+03 -2.4846556e+03 -9.4238653e+02 - 1.6954643e+03 -2.4668916e+03 -9.0887947e+02 - 1.7966444e+03 -2.4493672e+03 -8.7214776e+02 - 1.8917044e+03 -2.4324804e+03 -8.3197628e+02 - 1.9802792e+03 -2.4166711e+03 -7.8810211e+02 - 2.0619932e+03 -2.4024266e+03 -7.4021063e+02 - 2.1364553e+03 -2.3902854e+03 -6.8793523e+02 - 2.2032567e+03 -2.3808404e+03 -6.3086386e+02 - 2.2619742e+03 -2.3747354e+03 -5.6855809e+02 - 2.3121840e+03 -2.3726514e+03 -5.0059271e+02 - 2.3534950e+03 -2.3752739e+03 -4.2662715e+02 - 2.3856089e+03 -2.3832286e+03 -3.4652077e+02 - 2.4084209e+03 -2.3969751e+03 -2.6049930e+02 - 2.4221618e+03 -2.4166494e+03 -1.6936192e+02 - 2.4275675e+03 -2.4418727e+03 -7.4681762e+01 - 2.4260232e+03 -2.4715765e+03 2.1096156e+01 - 2.4195960e+03 -2.5039394e+03 1.1478404e+02 - 2.4108702e+03 -2.5365320e+03 2.0288093e+02 - 2.4025718e+03 -2.5666931e+03 2.8222416e+02 - 2.3970963e+03 -2.5920244e+03 3.5061620e+02 - 2.3961272e+03 -2.6108057e+03 4.0715428e+02 - 2.4004843e+03 -2.6221769e+03 4.5215731e+02 - 2.4102058e+03 -2.6260732e+03 4.8680216e+02 - 2.4247635e+03 -2.6230130e+03 5.1267808e+02 - 2.4432982e+03 -2.6138598e+03 5.3141908e+02 - 2.4648042e+03 -2.5996308e+03 5.4447217e+02 - 2.4882429e+03 -2.5813779e+03 5.5298548e+02 - 2.5125968e+03 -2.5601303e+03 5.5777302e+02 - 2.5368809e+03 -2.5368809e+03 5.5931596e+02 - 2.5601303e+03 -2.5125968e+03 5.5777302e+02 - 2.5813779e+03 -2.4882429e+03 5.5298548e+02 - 2.5996308e+03 -2.4648042e+03 5.4447217e+02 - 2.6138598e+03 -2.4432982e+03 5.3141908e+02 - 2.6230130e+03 -2.4247635e+03 5.1267808e+02 - 2.6260732e+03 -2.4102058e+03 4.8680216e+02 - 2.6221769e+03 -2.4004843e+03 4.5215731e+02 - 2.6108057e+03 -2.3961272e+03 4.0715428e+02 - 2.5920244e+03 -2.3970963e+03 3.5061620e+02 - 2.5666931e+03 -2.4025718e+03 2.8222416e+02 - 2.5365320e+03 -2.4108702e+03 2.0288093e+02 - 2.5039394e+03 -2.4195960e+03 1.1478404e+02 - 2.4715765e+03 -2.4260232e+03 2.1096156e+01 - 2.4418727e+03 -2.4275675e+03 -7.4681762e+01 - 2.4166494e+03 -2.4221618e+03 -1.6936192e+02 - 2.3969751e+03 -2.4084209e+03 -2.6049930e+02 - 2.3832286e+03 -2.3856089e+03 -3.4652077e+02 - 2.3752739e+03 -2.3534950e+03 -4.2662715e+02 - 2.3726514e+03 -2.3121840e+03 -5.0059271e+02 - 2.3747354e+03 -2.2619742e+03 -5.6855809e+02 - 2.3808404e+03 -2.2032567e+03 -6.3086386e+02 - 2.3902854e+03 -2.1364553e+03 -6.8793523e+02 - 2.4024266e+03 -2.0619932e+03 -7.4021063e+02 - 2.4166711e+03 -1.9802792e+03 -7.8810211e+02 - 2.4324804e+03 -1.8917044e+03 -8.3197628e+02 - 2.4493672e+03 -1.7966444e+03 -8.7214776e+02 - 2.4668916e+03 -1.6954643e+03 -9.0887947e+02 - 2.4846556e+03 -1.5885248e+03 -9.4238653e+02 - 2.5022989e+03 -1.4761879e+03 -9.7284161e+02 - 2.5194950e+03 -1.3588219e+03 -1.0003808e+03 - 2.5359487e+03 -1.2368063e+03 -1.0251095e+03 - 2.5513934e+03 -1.1105344e+03 -1.0471072e+03 - 2.5655908e+03 -9.8041631e+02 -1.0664329e+03 - 2.5783293e+03 -8.4688005e+02 -1.0831290e+03 - 2.5894246e+03 -7.1037181e+02 -1.0972249e+03 - 2.5987196e+03 -5.7135544e+02 -1.1087403e+03 - 2.6060848e+03 -4.3031095e+02 -1.1176877e+03 - 2.6114186e+03 -2.8773228e+02 -1.1240747e+03 - 2.6146482e+03 -1.4412442e+02 -1.1279055e+03 - 2.6157296e+03 0.0000000e+00 -1.1291823e+03 - 2.5937494e+03 2.4067136e-09 -1.2101573e+03 - 2.5927645e+03 1.4081289e+02 -1.2087491e+03 - 2.5898247e+03 2.8111434e+02 -1.2045229e+03 - 2.5849749e+03 4.2039638e+02 -1.1974728e+03 - 2.5782897e+03 5.5815773e+02 -1.1875885e+03 - 2.5698731e+03 6.9390678e+02 -1.1748537e+03 - 2.5598587e+03 8.2716400e+02 -1.1592439e+03 - 2.5484088e+03 9.5746381e+02 -1.1407247e+03 - 2.5357152e+03 1.0843556e+03 -1.1192482e+03 - 2.5219990e+03 1.2074039e+03 -1.0947499e+03 - 2.5075115e+03 1.3261881e+03 -1.0671448e+03 - 2.4925351e+03 1.4403001e+03 -1.0363225e+03 - 2.4773854e+03 1.5493427e+03 -1.0021429e+03 - 2.4624132e+03 1.6529256e+03 -9.6443130e+02 - 2.4480077e+03 1.7506616e+03 -9.2297359e+02 - 2.4345995e+03 1.8421626e+03 -8.7751306e+02 - 2.4226641e+03 1.9270353e+03 -8.2774940e+02 - 2.4127231e+03 2.0048797e+03 -7.7334251e+02 - 2.4053426e+03 2.0752894e+03 -7.1392438e+02 - 2.4011254e+03 2.1378601e+03 -6.4912443e+02 - 2.4006909e+03 2.1922087e+03 -5.7861505e+02 - 2.4046363e+03 2.2380091e+03 -5.0218575e+02 - 2.4134714e+03 2.2750531e+03 -4.1985251e+02 - 2.4275193e+03 2.3033400e+03 -3.3200210e+02 - 2.4467846e+03 2.3231919e+03 -2.3955398e+02 - 2.4708098e+03 2.3353761e+03 -1.4409483e+02 - 2.4985625e+03 2.3411905e+03 -4.7911860e+01 - 2.5284217e+03 2.3424540e+03 4.6154078e+01 - 2.5583172e+03 2.3413543e+03 1.3506584e+02 - 2.5860222e+03 2.3401614e+03 2.1608494e+02 - 2.6095157e+03 2.3408867e+03 2.8723479e+02 - 2.6272866e+03 2.3450084e+03 3.4755705e+02 - 2.6384817e+03 2.3533495e+03 3.9708943e+02 - 2.6428822e+03 2.3661146e+03 4.3662698e+02 - 2.6407668e+03 2.3830299e+03 4.6739834e+02 - 2.6327387e+03 2.4035122e+03 4.9077160e+02 - 2.6195724e+03 2.4268147e+03 5.0804559e+02 - 2.6021052e+03 2.4521293e+03 5.2033030e+02 - 2.5811749e+03 2.4786444e+03 5.2849416e+02 - 2.5575923e+03 2.5055696e+03 5.3315072e+02 - 2.5321373e+03 2.5321373e+03 5.3466295e+02 - 2.5055696e+03 2.5575923e+03 5.3315072e+02 - 2.4786444e+03 2.5811749e+03 5.2849416e+02 - 2.4521293e+03 2.6021052e+03 5.2033030e+02 - 2.4268147e+03 2.6195724e+03 5.0804559e+02 - 2.4035122e+03 2.6327387e+03 4.9077160e+02 - 2.3830299e+03 2.6407668e+03 4.6739834e+02 - 2.3661146e+03 2.6428822e+03 4.3662698e+02 - 2.3533495e+03 2.6384817e+03 3.9708943e+02 - 2.3450084e+03 2.6272866e+03 3.4755705e+02 - 2.3408867e+03 2.6095157e+03 2.8723479e+02 - 2.3401614e+03 2.5860222e+03 2.1608494e+02 - 2.3413543e+03 2.5583172e+03 1.3506584e+02 - 2.3424540e+03 2.5284217e+03 4.6154078e+01 - 2.3411905e+03 2.4985625e+03 -4.7911860e+01 - 2.3353761e+03 2.4708098e+03 -1.4409483e+02 - 2.3231919e+03 2.4467846e+03 -2.3955398e+02 - 2.3033400e+03 2.4275193e+03 -3.3200210e+02 - 2.2750531e+03 2.4134714e+03 -4.1985251e+02 - 2.2380091e+03 2.4046363e+03 -5.0218575e+02 - 2.1922087e+03 2.4006909e+03 -5.7861505e+02 - 2.1378601e+03 2.4011254e+03 -6.4912443e+02 - 2.0752894e+03 2.4053426e+03 -7.1392438e+02 - 2.0048797e+03 2.4127231e+03 -7.7334251e+02 - 1.9270353e+03 2.4226641e+03 -8.2774940e+02 - 1.8421626e+03 2.4345995e+03 -8.7751306e+02 - 1.7506616e+03 2.4480077e+03 -9.2297359e+02 - 1.6529256e+03 2.4624132e+03 -9.6443130e+02 - 1.5493427e+03 2.4773854e+03 -1.0021429e+03 - 1.4403001e+03 2.4925351e+03 -1.0363225e+03 - 1.3261881e+03 2.5075115e+03 -1.0671448e+03 - 1.2074039e+03 2.5219990e+03 -1.0947499e+03 - 1.0843556e+03 2.5357152e+03 -1.1192482e+03 - 9.5746381e+02 2.5484088e+03 -1.1407247e+03 - 8.2716400e+02 2.5598587e+03 -1.1592439e+03 - 6.9390678e+02 2.5698731e+03 -1.1748537e+03 - 5.5815773e+02 2.5782897e+03 -1.1875885e+03 - 4.2039638e+02 2.5849749e+03 -1.1974728e+03 - 2.8111434e+02 2.5898247e+03 -1.2045229e+03 - 1.4081289e+02 2.5927645e+03 -1.2087491e+03 - 4.8134273e-09 2.5937494e+03 -1.2101573e+03 - -1.4081289e+02 2.5927645e+03 -1.2087491e+03 - -2.8111434e+02 2.5898247e+03 -1.2045229e+03 - -4.2039638e+02 2.5849749e+03 -1.1974728e+03 - -5.5815773e+02 2.5782897e+03 -1.1875885e+03 - -6.9390678e+02 2.5698731e+03 -1.1748537e+03 - -8.2716400e+02 2.5598587e+03 -1.1592439e+03 - -9.5746381e+02 2.5484088e+03 -1.1407247e+03 - -1.0843556e+03 2.5357152e+03 -1.1192482e+03 - -1.2074039e+03 2.5219990e+03 -1.0947499e+03 - -1.3261881e+03 2.5075115e+03 -1.0671448e+03 - -1.4403001e+03 2.4925351e+03 -1.0363225e+03 - -1.5493427e+03 2.4773854e+03 -1.0021429e+03 - -1.6529256e+03 2.4624132e+03 -9.6443130e+02 - -1.7506616e+03 2.4480077e+03 -9.2297359e+02 - -1.8421626e+03 2.4345995e+03 -8.7751306e+02 - -1.9270353e+03 2.4226641e+03 -8.2774940e+02 - -2.0048797e+03 2.4127231e+03 -7.7334251e+02 - -2.0752894e+03 2.4053426e+03 -7.1392438e+02 - -2.1378601e+03 2.4011254e+03 -6.4912443e+02 - -2.1922087e+03 2.4006909e+03 -5.7861505e+02 - -2.2380091e+03 2.4046363e+03 -5.0218575e+02 - -2.2750531e+03 2.4134714e+03 -4.1985251e+02 - -2.3033400e+03 2.4275193e+03 -3.3200210e+02 - -2.3231919e+03 2.4467846e+03 -2.3955398e+02 - -2.3353761e+03 2.4708098e+03 -1.4409483e+02 - -2.3411905e+03 2.4985625e+03 -4.7911860e+01 - -2.3424540e+03 2.5284217e+03 4.6154078e+01 - -2.3413543e+03 2.5583172e+03 1.3506584e+02 - -2.3401614e+03 2.5860222e+03 2.1608494e+02 - -2.3408867e+03 2.6095157e+03 2.8723479e+02 - -2.3450084e+03 2.6272866e+03 3.4755705e+02 - -2.3533495e+03 2.6384817e+03 3.9708943e+02 - -2.3661146e+03 2.6428822e+03 4.3662698e+02 - -2.3830299e+03 2.6407668e+03 4.6739834e+02 - -2.4035122e+03 2.6327387e+03 4.9077160e+02 - -2.4268147e+03 2.6195724e+03 5.0804559e+02 - -2.4521293e+03 2.6021052e+03 5.2033030e+02 - -2.4786444e+03 2.5811749e+03 5.2849416e+02 - -2.5055696e+03 2.5575923e+03 5.3315072e+02 - -2.5321373e+03 2.5321373e+03 5.3466295e+02 - -2.5575923e+03 2.5055696e+03 5.3315072e+02 - -2.5811749e+03 2.4786444e+03 5.2849416e+02 - -2.6021052e+03 2.4521293e+03 5.2033030e+02 - -2.6195724e+03 2.4268147e+03 5.0804559e+02 - -2.6327387e+03 2.4035122e+03 4.9077160e+02 - -2.6407668e+03 2.3830299e+03 4.6739834e+02 - -2.6428822e+03 2.3661146e+03 4.3662698e+02 - -2.6384817e+03 2.3533495e+03 3.9708943e+02 - -2.6272866e+03 2.3450084e+03 3.4755705e+02 - -2.6095157e+03 2.3408867e+03 2.8723479e+02 - -2.5860222e+03 2.3401614e+03 2.1608494e+02 - -2.5583172e+03 2.3413543e+03 1.3506584e+02 - -2.5284217e+03 2.3424540e+03 4.6154078e+01 - -2.4985625e+03 2.3411905e+03 -4.7911860e+01 - -2.4708098e+03 2.3353761e+03 -1.4409483e+02 - -2.4467846e+03 2.3231919e+03 -2.3955398e+02 - -2.4275193e+03 2.3033400e+03 -3.3200210e+02 - -2.4134714e+03 2.2750531e+03 -4.1985251e+02 - -2.4046363e+03 2.2380091e+03 -5.0218575e+02 - -2.4006909e+03 2.1922087e+03 -5.7861505e+02 - -2.4011254e+03 2.1378601e+03 -6.4912443e+02 - -2.4053426e+03 2.0752894e+03 -7.1392438e+02 - -2.4127231e+03 2.0048797e+03 -7.7334251e+02 - -2.4226641e+03 1.9270353e+03 -8.2774940e+02 - -2.4345995e+03 1.8421626e+03 -8.7751306e+02 - -2.4480077e+03 1.7506616e+03 -9.2297359e+02 - -2.4624132e+03 1.6529256e+03 -9.6443130e+02 - -2.4773854e+03 1.5493427e+03 -1.0021429e+03 - -2.4925351e+03 1.4403001e+03 -1.0363225e+03 - -2.5075115e+03 1.3261881e+03 -1.0671448e+03 - -2.5219990e+03 1.2074039e+03 -1.0947499e+03 - -2.5357152e+03 1.0843556e+03 -1.1192482e+03 - -2.5484088e+03 9.5746381e+02 -1.1407247e+03 - -2.5598587e+03 8.2716400e+02 -1.1592439e+03 - -2.5698731e+03 6.9390678e+02 -1.1748537e+03 - -2.5782897e+03 5.5815773e+02 -1.1875885e+03 - -2.5849749e+03 4.2039638e+02 -1.1974728e+03 - -2.5898247e+03 2.8111434e+02 -1.2045229e+03 - -2.5927645e+03 1.4081289e+02 -1.2087491e+03 - -2.5937494e+03 -2.4067136e-09 -1.2101573e+03 - -2.5927645e+03 -1.4081289e+02 -1.2087491e+03 - -2.5898247e+03 -2.8111434e+02 -1.2045229e+03 - -2.5849749e+03 -4.2039638e+02 -1.1974728e+03 - -2.5782897e+03 -5.5815773e+02 -1.1875885e+03 - -2.5698731e+03 -6.9390678e+02 -1.1748537e+03 - -2.5598587e+03 -8.2716400e+02 -1.1592439e+03 - -2.5484088e+03 -9.5746381e+02 -1.1407247e+03 - -2.5357152e+03 -1.0843556e+03 -1.1192482e+03 - -2.5219990e+03 -1.2074039e+03 -1.0947499e+03 - -2.5075115e+03 -1.3261881e+03 -1.0671448e+03 - -2.4925351e+03 -1.4403001e+03 -1.0363225e+03 - -2.4773854e+03 -1.5493427e+03 -1.0021429e+03 - -2.4624132e+03 -1.6529256e+03 -9.6443130e+02 - -2.4480077e+03 -1.7506616e+03 -9.2297359e+02 - -2.4345995e+03 -1.8421626e+03 -8.7751306e+02 - -2.4226641e+03 -1.9270353e+03 -8.2774940e+02 - -2.4127231e+03 -2.0048797e+03 -7.7334251e+02 - -2.4053426e+03 -2.0752894e+03 -7.1392438e+02 - -2.4011254e+03 -2.1378601e+03 -6.4912443e+02 - -2.4006909e+03 -2.1922087e+03 -5.7861505e+02 - -2.4046363e+03 -2.2380091e+03 -5.0218575e+02 - -2.4134714e+03 -2.2750531e+03 -4.1985251e+02 - -2.4275193e+03 -2.3033400e+03 -3.3200210e+02 - -2.4467846e+03 -2.3231919e+03 -2.3955398e+02 - -2.4708098e+03 -2.3353761e+03 -1.4409483e+02 - -2.4985625e+03 -2.3411905e+03 -4.7911860e+01 - -2.5284217e+03 -2.3424540e+03 4.6154078e+01 - -2.5583172e+03 -2.3413543e+03 1.3506584e+02 - -2.5860222e+03 -2.3401614e+03 2.1608494e+02 - -2.6095157e+03 -2.3408867e+03 2.8723479e+02 - -2.6272866e+03 -2.3450084e+03 3.4755705e+02 - -2.6384817e+03 -2.3533495e+03 3.9708943e+02 - -2.6428822e+03 -2.3661146e+03 4.3662698e+02 - -2.6407668e+03 -2.3830299e+03 4.6739834e+02 - -2.6327387e+03 -2.4035122e+03 4.9077160e+02 - -2.6195724e+03 -2.4268147e+03 5.0804559e+02 - -2.6021052e+03 -2.4521293e+03 5.2033030e+02 - -2.5811749e+03 -2.4786444e+03 5.2849416e+02 - -2.5575923e+03 -2.5055696e+03 5.3315072e+02 - -2.5321373e+03 -2.5321373e+03 5.3466295e+02 - -2.5055696e+03 -2.5575923e+03 5.3315072e+02 - -2.4786444e+03 -2.5811749e+03 5.2849416e+02 - -2.4521293e+03 -2.6021052e+03 5.2033030e+02 - -2.4268147e+03 -2.6195724e+03 5.0804559e+02 - -2.4035122e+03 -2.6327387e+03 4.9077160e+02 - -2.3830299e+03 -2.6407668e+03 4.6739834e+02 - -2.3661146e+03 -2.6428822e+03 4.3662698e+02 - -2.3533495e+03 -2.6384817e+03 3.9708943e+02 - -2.3450084e+03 -2.6272866e+03 3.4755705e+02 - -2.3408867e+03 -2.6095157e+03 2.8723479e+02 - -2.3401614e+03 -2.5860222e+03 2.1608494e+02 - -2.3413543e+03 -2.5583172e+03 1.3506584e+02 - -2.3424540e+03 -2.5284217e+03 4.6154078e+01 - -2.3411905e+03 -2.4985625e+03 -4.7911860e+01 - -2.3353761e+03 -2.4708098e+03 -1.4409483e+02 - -2.3231919e+03 -2.4467846e+03 -2.3955398e+02 - -2.3033400e+03 -2.4275193e+03 -3.3200210e+02 - -2.2750531e+03 -2.4134714e+03 -4.1985251e+02 - -2.2380091e+03 -2.4046363e+03 -5.0218575e+02 - -2.1922087e+03 -2.4006909e+03 -5.7861505e+02 - -2.1378601e+03 -2.4011254e+03 -6.4912443e+02 - -2.0752894e+03 -2.4053426e+03 -7.1392438e+02 - -2.0048797e+03 -2.4127231e+03 -7.7334251e+02 - -1.9270353e+03 -2.4226641e+03 -8.2774940e+02 - -1.8421626e+03 -2.4345995e+03 -8.7751306e+02 - -1.7506616e+03 -2.4480077e+03 -9.2297359e+02 - -1.6529256e+03 -2.4624132e+03 -9.6443130e+02 - -1.5493427e+03 -2.4773854e+03 -1.0021429e+03 - -1.4403001e+03 -2.4925351e+03 -1.0363225e+03 - -1.3261881e+03 -2.5075115e+03 -1.0671448e+03 - -1.2074039e+03 -2.5219990e+03 -1.0947499e+03 - -1.0843556e+03 -2.5357152e+03 -1.1192482e+03 - -9.5746381e+02 -2.5484088e+03 -1.1407247e+03 - -8.2716400e+02 -2.5598587e+03 -1.1592439e+03 - -6.9390678e+02 -2.5698731e+03 -1.1748537e+03 - -5.5815773e+02 -2.5782897e+03 -1.1875885e+03 - -4.2039638e+02 -2.5849749e+03 -1.1974728e+03 - -2.8111434e+02 -2.5898247e+03 -1.2045229e+03 - -1.4081289e+02 -2.5927645e+03 -1.2087491e+03 - 2.4067136e-09 -2.5937494e+03 -1.2101573e+03 - 1.4081289e+02 -2.5927645e+03 -1.2087491e+03 - 2.8111434e+02 -2.5898247e+03 -1.2045229e+03 - 4.2039638e+02 -2.5849749e+03 -1.1974728e+03 - 5.5815773e+02 -2.5782897e+03 -1.1875885e+03 - 6.9390678e+02 -2.5698731e+03 -1.1748537e+03 - 8.2716400e+02 -2.5598587e+03 -1.1592439e+03 - 9.5746381e+02 -2.5484088e+03 -1.1407247e+03 - 1.0843556e+03 -2.5357152e+03 -1.1192482e+03 - 1.2074039e+03 -2.5219990e+03 -1.0947499e+03 - 1.3261881e+03 -2.5075115e+03 -1.0671448e+03 - 1.4403001e+03 -2.4925351e+03 -1.0363225e+03 - 1.5493427e+03 -2.4773854e+03 -1.0021429e+03 - 1.6529256e+03 -2.4624132e+03 -9.6443130e+02 - 1.7506616e+03 -2.4480077e+03 -9.2297359e+02 - 1.8421626e+03 -2.4345995e+03 -8.7751306e+02 - 1.9270353e+03 -2.4226641e+03 -8.2774940e+02 - 2.0048797e+03 -2.4127231e+03 -7.7334251e+02 - 2.0752894e+03 -2.4053426e+03 -7.1392438e+02 - 2.1378601e+03 -2.4011254e+03 -6.4912443e+02 - 2.1922087e+03 -2.4006909e+03 -5.7861505e+02 - 2.2380091e+03 -2.4046363e+03 -5.0218575e+02 - 2.2750531e+03 -2.4134714e+03 -4.1985251e+02 - 2.3033400e+03 -2.4275193e+03 -3.3200210e+02 - 2.3231919e+03 -2.4467846e+03 -2.3955398e+02 - 2.3353761e+03 -2.4708098e+03 -1.4409483e+02 - 2.3411905e+03 -2.4985625e+03 -4.7911860e+01 - 2.3424540e+03 -2.5284217e+03 4.6154078e+01 - 2.3413543e+03 -2.5583172e+03 1.3506584e+02 - 2.3401614e+03 -2.5860222e+03 2.1608494e+02 - 2.3408867e+03 -2.6095157e+03 2.8723479e+02 - 2.3450084e+03 -2.6272866e+03 3.4755705e+02 - 2.3533495e+03 -2.6384817e+03 3.9708943e+02 - 2.3661146e+03 -2.6428822e+03 4.3662698e+02 - 2.3830299e+03 -2.6407668e+03 4.6739834e+02 - 2.4035122e+03 -2.6327387e+03 4.9077160e+02 - 2.4268147e+03 -2.6195724e+03 5.0804559e+02 - 2.4521293e+03 -2.6021052e+03 5.2033030e+02 - 2.4786444e+03 -2.5811749e+03 5.2849416e+02 - 2.5055696e+03 -2.5575923e+03 5.3315072e+02 - 2.5321373e+03 -2.5321373e+03 5.3466295e+02 - 2.5575923e+03 -2.5055696e+03 5.3315072e+02 - 2.5811749e+03 -2.4786444e+03 5.2849416e+02 - 2.6021052e+03 -2.4521293e+03 5.2033030e+02 - 2.6195724e+03 -2.4268147e+03 5.0804559e+02 - 2.6327387e+03 -2.4035122e+03 4.9077160e+02 - 2.6407668e+03 -2.3830299e+03 4.6739834e+02 - 2.6428822e+03 -2.3661146e+03 4.3662698e+02 - 2.6384817e+03 -2.3533495e+03 3.9708943e+02 - 2.6272866e+03 -2.3450084e+03 3.4755705e+02 - 2.6095157e+03 -2.3408867e+03 2.8723479e+02 - 2.5860222e+03 -2.3401614e+03 2.1608494e+02 - 2.5583172e+03 -2.3413543e+03 1.3506584e+02 - 2.5284217e+03 -2.3424540e+03 4.6154078e+01 - 2.4985625e+03 -2.3411905e+03 -4.7911860e+01 - 2.4708098e+03 -2.3353761e+03 -1.4409483e+02 - 2.4467846e+03 -2.3231919e+03 -2.3955398e+02 - 2.4275193e+03 -2.3033400e+03 -3.3200210e+02 - 2.4134714e+03 -2.2750531e+03 -4.1985251e+02 - 2.4046363e+03 -2.2380091e+03 -5.0218575e+02 - 2.4006909e+03 -2.1922087e+03 -5.7861505e+02 - 2.4011254e+03 -2.1378601e+03 -6.4912443e+02 - 2.4053426e+03 -2.0752894e+03 -7.1392438e+02 - 2.4127231e+03 -2.0048797e+03 -7.7334251e+02 - 2.4226641e+03 -1.9270353e+03 -8.2774940e+02 - 2.4345995e+03 -1.8421626e+03 -8.7751306e+02 - 2.4480077e+03 -1.7506616e+03 -9.2297359e+02 - 2.4624132e+03 -1.6529256e+03 -9.6443130e+02 - 2.4773854e+03 -1.5493427e+03 -1.0021429e+03 - 2.4925351e+03 -1.4403001e+03 -1.0363225e+03 - 2.5075115e+03 -1.3261881e+03 -1.0671448e+03 - 2.5219990e+03 -1.2074039e+03 -1.0947499e+03 - 2.5357152e+03 -1.0843556e+03 -1.1192482e+03 - 2.5484088e+03 -9.5746381e+02 -1.1407247e+03 - 2.5598587e+03 -8.2716400e+02 -1.1592439e+03 - 2.5698731e+03 -6.9390678e+02 -1.1748537e+03 - 2.5782897e+03 -5.5815773e+02 -1.1875885e+03 - 2.5849749e+03 -4.2039638e+02 -1.1974728e+03 - 2.5898247e+03 -2.8111434e+02 -1.2045229e+03 - 2.5927645e+03 -1.4081289e+02 -1.2087491e+03 - 2.5937494e+03 -4.8134273e-09 -1.2101573e+03 - 2.5704090e+03 2.4067136e-09 -1.2899155e+03 - 2.5695341e+03 1.3714324e+02 -1.2883626e+03 - 2.5669247e+03 2.7377840e+02 -1.2837004e+03 - 2.5626274e+03 4.0940031e+02 -1.2759188e+03 - 2.5567194e+03 5.4350955e+02 -1.2649996e+03 - 2.5493091e+03 6.7561483e+02 -1.2509156e+03 - 2.5405356e+03 8.0523499e+02 -1.2336282e+03 - 2.5305692e+03 9.3190046e+02 -1.2130847e+03 - 2.5196120e+03 1.0551539e+03 -1.1892158e+03 - 2.5078979e+03 1.1745500e+03 -1.1619313e+03 - 2.4956945e+03 1.2896551e+03 -1.1311166e+03 - 2.4833041e+03 1.4000450e+03 -1.0966289e+03 - 2.4710653e+03 1.5053031e+03 -1.0582928e+03 - 2.4593558e+03 1.6050177e+03 -1.0158976e+03 - 2.4485934e+03 1.6987797e+03 -9.6919633e+02 - 2.4392375e+03 1.7861807e+03 -9.1790739e+02 - 2.4317879e+03 1.8668140e+03 -8.6172254e+02 - 2.4267788e+03 1.9402792e+03 -8.0032362e+02 - 2.4247662e+03 2.0061941e+03 -7.3341296e+02 - 2.4263032e+03 2.0642175e+03 -6.6076300e+02 - 2.4318970e+03 2.1140874e+03 -5.8229032e+02 - 2.4419447e+03 2.1556790e+03 -4.9815640e+02 - 2.4566437e+03 2.1890818e+03 -4.0888933e+02 - 2.4758841e+03 2.2146904e+03 -3.1550576e+02 - 2.4991440e+03 2.2332877e+03 -2.1959325e+02 - 2.5254245e+03 2.2460872e+03 -1.2329814e+02 - 2.5532680e+03 2.2546971e+03 -2.9171649e+01 - 2.5808902e+03 2.2609814e+03 6.0130456e+01 - 2.6064125e+03 2.2668373e+03 1.4222979e+02 - 2.6281318e+03 2.2739468e+03 2.1536993e+02 - 2.6447432e+03 2.2835799e+03 2.7860990e+02 - 2.6554535e+03 2.2965030e+03 3.3182097e+02 - 2.6599747e+03 2.3129967e+03 3.7552479e+02 - 2.6584336e+03 2.3329487e+03 4.1065759e+02 - 2.6512459e+03 2.3559740e+03 4.3834043e+02 - 2.6389978e+03 2.3815270e+03 4.5970158e+02 - 2.6223537e+03 2.4089865e+03 4.7576242e+02 - 2.6019962e+03 2.4377099e+03 4.8737691e+02 - 2.5785941e+03 2.4670623e+03 4.9520756e+02 - 2.5527898e+03 2.4964265e+03 4.9972164e+02 - 2.5252006e+03 2.5252006e+03 5.0119584e+02 - 2.4964265e+03 2.5527898e+03 4.9972164e+02 - 2.4670623e+03 2.5785941e+03 4.9520756e+02 - 2.4377099e+03 2.6019962e+03 4.8737691e+02 - 2.4089865e+03 2.6223537e+03 4.7576242e+02 - 2.3815270e+03 2.6389978e+03 4.5970158e+02 - 2.3559740e+03 2.6512459e+03 4.3834043e+02 - 2.3329487e+03 2.6584336e+03 4.1065759e+02 - 2.3129967e+03 2.6599747e+03 3.7552479e+02 - 2.2965030e+03 2.6554535e+03 3.3182097e+02 - 2.2835799e+03 2.6447432e+03 2.7860990e+02 - 2.2739468e+03 2.6281318e+03 2.1536993e+02 - 2.2668373e+03 2.6064125e+03 1.4222979e+02 - 2.2609814e+03 2.5808902e+03 6.0130456e+01 - 2.2546971e+03 2.5532680e+03 -2.9171649e+01 - 2.2460872e+03 2.5254245e+03 -1.2329814e+02 - 2.2332877e+03 2.4991440e+03 -2.1959325e+02 - 2.2146904e+03 2.4758841e+03 -3.1550576e+02 - 2.1890818e+03 2.4566437e+03 -4.0888933e+02 - 2.1556790e+03 2.4419447e+03 -4.9815640e+02 - 2.1140874e+03 2.4318970e+03 -5.8229032e+02 - 2.0642175e+03 2.4263032e+03 -6.6076300e+02 - 2.0061941e+03 2.4247662e+03 -7.3341296e+02 - 1.9402792e+03 2.4267788e+03 -8.0032362e+02 - 1.8668140e+03 2.4317879e+03 -8.6172254e+02 - 1.7861807e+03 2.4392375e+03 -9.1790739e+02 - 1.6987797e+03 2.4485934e+03 -9.6919633e+02 - 1.6050177e+03 2.4593558e+03 -1.0158976e+03 - 1.5053031e+03 2.4710653e+03 -1.0582928e+03 - 1.4000450e+03 2.4833041e+03 -1.0966289e+03 - 1.2896551e+03 2.4956945e+03 -1.1311166e+03 - 1.1745500e+03 2.5078979e+03 -1.1619313e+03 - 1.0551539e+03 2.5196120e+03 -1.1892158e+03 - 9.3190046e+02 2.5305692e+03 -1.2130847e+03 - 8.0523499e+02 2.5405356e+03 -1.2336282e+03 - 6.7561483e+02 2.5493091e+03 -1.2509156e+03 - 5.4350955e+02 2.5567194e+03 -1.2649996e+03 - 4.0940031e+02 2.5626274e+03 -1.2759188e+03 - 2.7377840e+02 2.5669247e+03 -1.2837004e+03 - 1.3714324e+02 2.5695341e+03 -1.2883626e+03 - 0.0000000e+00 2.5704090e+03 -1.2899155e+03 - -1.3714324e+02 2.5695341e+03 -1.2883626e+03 - -2.7377840e+02 2.5669247e+03 -1.2837004e+03 - -4.0940031e+02 2.5626274e+03 -1.2759188e+03 - -5.4350955e+02 2.5567194e+03 -1.2649996e+03 - -6.7561483e+02 2.5493091e+03 -1.2509156e+03 - -8.0523499e+02 2.5405356e+03 -1.2336282e+03 - -9.3190046e+02 2.5305692e+03 -1.2130847e+03 - -1.0551539e+03 2.5196120e+03 -1.1892158e+03 - -1.1745500e+03 2.5078979e+03 -1.1619313e+03 - -1.2896551e+03 2.4956945e+03 -1.1311166e+03 - -1.4000450e+03 2.4833041e+03 -1.0966289e+03 - -1.5053031e+03 2.4710653e+03 -1.0582928e+03 - -1.6050177e+03 2.4593558e+03 -1.0158976e+03 - -1.6987797e+03 2.4485934e+03 -9.6919633e+02 - -1.7861807e+03 2.4392375e+03 -9.1790739e+02 - -1.8668140e+03 2.4317879e+03 -8.6172254e+02 - -1.9402792e+03 2.4267788e+03 -8.0032362e+02 - -2.0061941e+03 2.4247662e+03 -7.3341296e+02 - -2.0642175e+03 2.4263032e+03 -6.6076300e+02 - -2.1140874e+03 2.4318970e+03 -5.8229032e+02 - -2.1556790e+03 2.4419447e+03 -4.9815640e+02 - -2.1890818e+03 2.4566437e+03 -4.0888933e+02 - -2.2146904e+03 2.4758841e+03 -3.1550576e+02 - -2.2332877e+03 2.4991440e+03 -2.1959325e+02 - -2.2460872e+03 2.5254245e+03 -1.2329814e+02 - -2.2546971e+03 2.5532680e+03 -2.9171649e+01 - -2.2609814e+03 2.5808902e+03 6.0130456e+01 - -2.2668373e+03 2.6064125e+03 1.4222979e+02 - -2.2739468e+03 2.6281318e+03 2.1536993e+02 - -2.2835799e+03 2.6447432e+03 2.7860990e+02 - -2.2965030e+03 2.6554535e+03 3.3182097e+02 - -2.3129967e+03 2.6599747e+03 3.7552479e+02 - -2.3329487e+03 2.6584336e+03 4.1065759e+02 - -2.3559740e+03 2.6512459e+03 4.3834043e+02 - -2.3815270e+03 2.6389978e+03 4.5970158e+02 - -2.4089865e+03 2.6223537e+03 4.7576242e+02 - -2.4377099e+03 2.6019962e+03 4.8737691e+02 - -2.4670623e+03 2.5785941e+03 4.9520756e+02 - -2.4964265e+03 2.5527898e+03 4.9972164e+02 - -2.5252006e+03 2.5252006e+03 5.0119584e+02 - -2.5527898e+03 2.4964265e+03 4.9972164e+02 - -2.5785941e+03 2.4670623e+03 4.9520756e+02 - -2.6019962e+03 2.4377099e+03 4.8737691e+02 - -2.6223537e+03 2.4089865e+03 4.7576242e+02 - -2.6389978e+03 2.3815270e+03 4.5970158e+02 - -2.6512459e+03 2.3559740e+03 4.3834043e+02 - -2.6584336e+03 2.3329487e+03 4.1065759e+02 - -2.6599747e+03 2.3129967e+03 3.7552479e+02 - -2.6554535e+03 2.2965030e+03 3.3182097e+02 - -2.6447432e+03 2.2835799e+03 2.7860990e+02 - -2.6281318e+03 2.2739468e+03 2.1536993e+02 - -2.6064125e+03 2.2668373e+03 1.4222979e+02 - -2.5808902e+03 2.2609814e+03 6.0130456e+01 - -2.5532680e+03 2.2546971e+03 -2.9171649e+01 - -2.5254245e+03 2.2460872e+03 -1.2329814e+02 - -2.4991440e+03 2.2332877e+03 -2.1959325e+02 - -2.4758841e+03 2.2146904e+03 -3.1550576e+02 - -2.4566437e+03 2.1890818e+03 -4.0888933e+02 - -2.4419447e+03 2.1556790e+03 -4.9815640e+02 - -2.4318970e+03 2.1140874e+03 -5.8229032e+02 - -2.4263032e+03 2.0642175e+03 -6.6076300e+02 - -2.4247662e+03 2.0061941e+03 -7.3341296e+02 - -2.4267788e+03 1.9402792e+03 -8.0032362e+02 - -2.4317879e+03 1.8668140e+03 -8.6172254e+02 - -2.4392375e+03 1.7861807e+03 -9.1790739e+02 - -2.4485934e+03 1.6987797e+03 -9.6919633e+02 - -2.4593558e+03 1.6050177e+03 -1.0158976e+03 - -2.4710653e+03 1.5053031e+03 -1.0582928e+03 - -2.4833041e+03 1.4000450e+03 -1.0966289e+03 - -2.4956945e+03 1.2896551e+03 -1.1311166e+03 - -2.5078979e+03 1.1745500e+03 -1.1619313e+03 - -2.5196120e+03 1.0551539e+03 -1.1892158e+03 - -2.5305692e+03 9.3190046e+02 -1.2130847e+03 - -2.5405356e+03 8.0523499e+02 -1.2336282e+03 - -2.5493091e+03 6.7561483e+02 -1.2509156e+03 - -2.5567194e+03 5.4350955e+02 -1.2649996e+03 - -2.5626274e+03 4.0940031e+02 -1.2759188e+03 - -2.5669247e+03 2.7377840e+02 -1.2837004e+03 - -2.5695341e+03 1.3714324e+02 -1.2883626e+03 - -2.5704090e+03 -4.8134273e-09 -1.2899155e+03 - -2.5695341e+03 -1.3714324e+02 -1.2883626e+03 - -2.5669247e+03 -2.7377840e+02 -1.2837004e+03 - -2.5626274e+03 -4.0940031e+02 -1.2759188e+03 - -2.5567194e+03 -5.4350955e+02 -1.2649996e+03 - -2.5493091e+03 -6.7561483e+02 -1.2509156e+03 - -2.5405356e+03 -8.0523499e+02 -1.2336282e+03 - -2.5305692e+03 -9.3190046e+02 -1.2130847e+03 - -2.5196120e+03 -1.0551539e+03 -1.1892158e+03 - -2.5078979e+03 -1.1745500e+03 -1.1619313e+03 - -2.4956945e+03 -1.2896551e+03 -1.1311166e+03 - -2.4833041e+03 -1.4000450e+03 -1.0966289e+03 - -2.4710653e+03 -1.5053031e+03 -1.0582928e+03 - -2.4593558e+03 -1.6050177e+03 -1.0158976e+03 - -2.4485934e+03 -1.6987797e+03 -9.6919633e+02 - -2.4392375e+03 -1.7861807e+03 -9.1790739e+02 - -2.4317879e+03 -1.8668140e+03 -8.6172254e+02 - -2.4267788e+03 -1.9402792e+03 -8.0032362e+02 - -2.4247662e+03 -2.0061941e+03 -7.3341296e+02 - -2.4263032e+03 -2.0642175e+03 -6.6076300e+02 - -2.4318970e+03 -2.1140874e+03 -5.8229032e+02 - -2.4419447e+03 -2.1556790e+03 -4.9815640e+02 - -2.4566437e+03 -2.1890818e+03 -4.0888933e+02 - -2.4758841e+03 -2.2146904e+03 -3.1550576e+02 - -2.4991440e+03 -2.2332877e+03 -2.1959325e+02 - -2.5254245e+03 -2.2460872e+03 -1.2329814e+02 - -2.5532680e+03 -2.2546971e+03 -2.9171649e+01 - -2.5808902e+03 -2.2609814e+03 6.0130456e+01 - -2.6064125e+03 -2.2668373e+03 1.4222979e+02 - -2.6281318e+03 -2.2739468e+03 2.1536993e+02 - -2.6447432e+03 -2.2835799e+03 2.7860990e+02 - -2.6554535e+03 -2.2965030e+03 3.3182097e+02 - -2.6599747e+03 -2.3129967e+03 3.7552479e+02 - -2.6584336e+03 -2.3329487e+03 4.1065759e+02 - -2.6512459e+03 -2.3559740e+03 4.3834043e+02 - -2.6389978e+03 -2.3815270e+03 4.5970158e+02 - -2.6223537e+03 -2.4089865e+03 4.7576242e+02 - -2.6019962e+03 -2.4377099e+03 4.8737691e+02 - -2.5785941e+03 -2.4670623e+03 4.9520756e+02 - -2.5527898e+03 -2.4964265e+03 4.9972164e+02 - -2.5252006e+03 -2.5252006e+03 5.0119584e+02 - -2.4964265e+03 -2.5527898e+03 4.9972164e+02 - -2.4670623e+03 -2.5785941e+03 4.9520756e+02 - -2.4377099e+03 -2.6019962e+03 4.8737691e+02 - -2.4089865e+03 -2.6223537e+03 4.7576242e+02 - -2.3815270e+03 -2.6389978e+03 4.5970158e+02 - -2.3559740e+03 -2.6512459e+03 4.3834043e+02 - -2.3329487e+03 -2.6584336e+03 4.1065759e+02 - -2.3129967e+03 -2.6599747e+03 3.7552479e+02 - -2.2965030e+03 -2.6554535e+03 3.3182097e+02 - -2.2835799e+03 -2.6447432e+03 2.7860990e+02 - -2.2739468e+03 -2.6281318e+03 2.1536993e+02 - -2.2668373e+03 -2.6064125e+03 1.4222979e+02 - -2.2609814e+03 -2.5808902e+03 6.0130456e+01 - -2.2546971e+03 -2.5532680e+03 -2.9171649e+01 - -2.2460872e+03 -2.5254245e+03 -1.2329814e+02 - -2.2332877e+03 -2.4991440e+03 -2.1959325e+02 - -2.2146904e+03 -2.4758841e+03 -3.1550576e+02 - -2.1890818e+03 -2.4566437e+03 -4.0888933e+02 - -2.1556790e+03 -2.4419447e+03 -4.9815640e+02 - -2.1140874e+03 -2.4318970e+03 -5.8229032e+02 - -2.0642175e+03 -2.4263032e+03 -6.6076300e+02 - -2.0061941e+03 -2.4247662e+03 -7.3341296e+02 - -1.9402792e+03 -2.4267788e+03 -8.0032362e+02 - -1.8668140e+03 -2.4317879e+03 -8.6172254e+02 - -1.7861807e+03 -2.4392375e+03 -9.1790739e+02 - -1.6987797e+03 -2.4485934e+03 -9.6919633e+02 - -1.6050177e+03 -2.4593558e+03 -1.0158976e+03 - -1.5053031e+03 -2.4710653e+03 -1.0582928e+03 - -1.4000450e+03 -2.4833041e+03 -1.0966289e+03 - -1.2896551e+03 -2.4956945e+03 -1.1311166e+03 - -1.1745500e+03 -2.5078979e+03 -1.1619313e+03 - -1.0551539e+03 -2.5196120e+03 -1.1892158e+03 - -9.3190046e+02 -2.5305692e+03 -1.2130847e+03 - -8.0523499e+02 -2.5405356e+03 -1.2336282e+03 - -6.7561483e+02 -2.5493091e+03 -1.2509156e+03 - -5.4350955e+02 -2.5567194e+03 -1.2649996e+03 - -4.0940031e+02 -2.5626274e+03 -1.2759188e+03 - -2.7377840e+02 -2.5669247e+03 -1.2837004e+03 - -1.3714324e+02 -2.5695341e+03 -1.2883626e+03 - 0.0000000e+00 -2.5704090e+03 -1.2899155e+03 - 1.3714324e+02 -2.5695341e+03 -1.2883626e+03 - 2.7377840e+02 -2.5669247e+03 -1.2837004e+03 - 4.0940031e+02 -2.5626274e+03 -1.2759188e+03 - 5.4350955e+02 -2.5567194e+03 -1.2649996e+03 - 6.7561483e+02 -2.5493091e+03 -1.2509156e+03 - 8.0523499e+02 -2.5405356e+03 -1.2336282e+03 - 9.3190046e+02 -2.5305692e+03 -1.2130847e+03 - 1.0551539e+03 -2.5196120e+03 -1.1892158e+03 - 1.1745500e+03 -2.5078979e+03 -1.1619313e+03 - 1.2896551e+03 -2.4956945e+03 -1.1311166e+03 - 1.4000450e+03 -2.4833041e+03 -1.0966289e+03 - 1.5053031e+03 -2.4710653e+03 -1.0582928e+03 - 1.6050177e+03 -2.4593558e+03 -1.0158976e+03 - 1.6987797e+03 -2.4485934e+03 -9.6919633e+02 - 1.7861807e+03 -2.4392375e+03 -9.1790739e+02 - 1.8668140e+03 -2.4317879e+03 -8.6172254e+02 - 1.9402792e+03 -2.4267788e+03 -8.0032362e+02 - 2.0061941e+03 -2.4247662e+03 -7.3341296e+02 - 2.0642175e+03 -2.4263032e+03 -6.6076300e+02 - 2.1140874e+03 -2.4318970e+03 -5.8229032e+02 - 2.1556790e+03 -2.4419447e+03 -4.9815640e+02 - 2.1890818e+03 -2.4566437e+03 -4.0888933e+02 - 2.2146904e+03 -2.4758841e+03 -3.1550576e+02 - 2.2332877e+03 -2.4991440e+03 -2.1959325e+02 - 2.2460872e+03 -2.5254245e+03 -1.2329814e+02 - 2.2546971e+03 -2.5532680e+03 -2.9171649e+01 - 2.2609814e+03 -2.5808902e+03 6.0130456e+01 - 2.2668373e+03 -2.6064125e+03 1.4222979e+02 - 2.2739468e+03 -2.6281318e+03 2.1536993e+02 - 2.2835799e+03 -2.6447432e+03 2.7860990e+02 - 2.2965030e+03 -2.6554535e+03 3.3182097e+02 - 2.3129967e+03 -2.6599747e+03 3.7552479e+02 - 2.3329487e+03 -2.6584336e+03 4.1065759e+02 - 2.3559740e+03 -2.6512459e+03 4.3834043e+02 - 2.3815270e+03 -2.6389978e+03 4.5970158e+02 - 2.4089865e+03 -2.6223537e+03 4.7576242e+02 - 2.4377099e+03 -2.6019962e+03 4.8737691e+02 - 2.4670623e+03 -2.5785941e+03 4.9520756e+02 - 2.4964265e+03 -2.5527898e+03 4.9972164e+02 - 2.5252006e+03 -2.5252006e+03 5.0119584e+02 - 2.5527898e+03 -2.4964265e+03 4.9972164e+02 - 2.5785941e+03 -2.4670623e+03 4.9520756e+02 - 2.6019962e+03 -2.4377099e+03 4.8737691e+02 - 2.6223537e+03 -2.4089865e+03 4.7576242e+02 - 2.6389978e+03 -2.3815270e+03 4.5970158e+02 - 2.6512459e+03 -2.3559740e+03 4.3834043e+02 - 2.6584336e+03 -2.3329487e+03 4.1065759e+02 - 2.6599747e+03 -2.3129967e+03 3.7552479e+02 - 2.6554535e+03 -2.2965030e+03 3.3182097e+02 - 2.6447432e+03 -2.2835799e+03 2.7860990e+02 - 2.6281318e+03 -2.2739468e+03 2.1536993e+02 - 2.6064125e+03 -2.2668373e+03 1.4222979e+02 - 2.5808902e+03 -2.2609814e+03 6.0130456e+01 - 2.5532680e+03 -2.2546971e+03 -2.9171649e+01 - 2.5254245e+03 -2.2460872e+03 -1.2329814e+02 - 2.4991440e+03 -2.2332877e+03 -2.1959325e+02 - 2.4758841e+03 -2.2146904e+03 -3.1550576e+02 - 2.4566437e+03 -2.1890818e+03 -4.0888933e+02 - 2.4419447e+03 -2.1556790e+03 -4.9815640e+02 - 2.4318970e+03 -2.1140874e+03 -5.8229032e+02 - 2.4263032e+03 -2.0642175e+03 -6.6076300e+02 - 2.4247662e+03 -2.0061941e+03 -7.3341296e+02 - 2.4267788e+03 -1.9402792e+03 -8.0032362e+02 - 2.4317879e+03 -1.8668140e+03 -8.6172254e+02 - 2.4392375e+03 -1.7861807e+03 -9.1790739e+02 - 2.4485934e+03 -1.6987797e+03 -9.6919633e+02 - 2.4593558e+03 -1.6050177e+03 -1.0158976e+03 - 2.4710653e+03 -1.5053031e+03 -1.0582928e+03 - 2.4833041e+03 -1.4000450e+03 -1.0966289e+03 - 2.4956945e+03 -1.2896551e+03 -1.1311166e+03 - 2.5078979e+03 -1.1745500e+03 -1.1619313e+03 - 2.5196120e+03 -1.0551539e+03 -1.1892158e+03 - 2.5305692e+03 -9.3190046e+02 -1.2130847e+03 - 2.5405356e+03 -8.0523499e+02 -1.2336282e+03 - 2.5493091e+03 -6.7561483e+02 -1.2509156e+03 - 2.5567194e+03 -5.4350955e+02 -1.2649996e+03 - 2.5626274e+03 -4.0940031e+02 -1.2759188e+03 - 2.5669247e+03 -2.7377840e+02 -1.2837004e+03 - 2.5695341e+03 -1.3714324e+02 -1.2883626e+03 - 2.5704090e+03 0.0000000e+00 -1.2899155e+03 - 2.5457585e+03 -2.4067136e-09 -1.3683999e+03 - 2.5450098e+03 1.3307263e+02 -1.3666846e+03 - 2.5427800e+03 2.6563826e+02 -1.3615334e+03 - 2.5391177e+03 3.9719227e+02 -1.3529308e+03 - 2.5341044e+03 5.2723473e+02 -1.3408492e+03 - 2.5278542e+03 6.5527234e+02 -1.3252485e+03 - 2.5205145e+03 7.8081999e+02 -1.3060730e+03 - 2.5122660e+03 9.0340177e+02 -1.2832496e+03 - 2.5033238e+03 1.0225515e+03 -1.2566843e+03 - 2.4939382e+03 1.1378124e+03 -1.2262595e+03 - 2.4843957e+03 1.2487366e+03 -1.1918304e+03 - 2.4750204e+03 1.3548842e+03 -1.1532229e+03 - 2.4661748e+03 1.4558217e+03 -1.1102323e+03 - 2.4582603e+03 1.5511220e+03 -1.0626241e+03 - 2.4517161e+03 1.6403649e+03 -1.0101397e+03 - 2.4470146e+03 1.7231408e+03 -9.5250766e+02 - 2.4446525e+03 1.7990587e+03 -8.8946496e+02 - 2.4451334e+03 1.8677617e+03 -8.2079159e+02 - 2.4489390e+03 1.9289524e+03 -7.4636242e+02 - 2.4564843e+03 1.9824316e+03 -6.6621900e+02 - 2.4680563e+03 2.0281509e+03 -5.8065982e+02 - 2.4837348e+03 2.0662778e+03 -4.9033950e+02 - 2.5033082e+03 2.0972628e+03 -3.9635554e+02 - 2.5262015e+03 2.1218909e+03 -3.0028889e+02 - 2.5514461e+03 2.1412929e+03 -2.0415974e+02 - 2.5777208e+03 2.1568921e+03 -1.1027320e+02 - 2.6034741e+03 2.1702810e+03 -2.0965421e+01 - 2.6271118e+03 2.1830460e+03 6.1694117e+01 - 2.6471991e+03 2.1965852e+03 1.3615906e+02 - 2.6626239e+03 2.2119699e+03 2.0154799e+02 - 2.6726792e+03 2.2298794e+03 2.5764458e+02 - 2.6770619e+03 2.2506121e+03 3.0478249e+02 - 2.6758097e+03 2.2741495e+03 3.4367122e+02 - 2.6692093e+03 2.3002428e+03 3.7521846e+02 - 2.6577054e+03 2.3284973e+03 4.0038402e+02 - 2.6418250e+03 2.3584396e+03 4.2007802e+02 - 2.6221251e+03 2.3895651e+03 4.3510023e+02 - 2.5991597e+03 2.4213659e+03 4.4611016e+02 - 2.5734642e+03 2.4533446e+03 4.5361689e+02 - 2.5455505e+03 2.4850170e+03 4.5797925e+02 - 2.5159093e+03 2.5159093e+03 4.5940990e+02 - 2.4850170e+03 2.5455505e+03 4.5797925e+02 - 2.4533446e+03 2.5734642e+03 4.5361689e+02 - 2.4213659e+03 2.5991597e+03 4.4611016e+02 - 2.3895651e+03 2.6221251e+03 4.3510023e+02 - 2.3584396e+03 2.6418250e+03 4.2007802e+02 - 2.3284973e+03 2.6577054e+03 4.0038402e+02 - 2.3002428e+03 2.6692093e+03 3.7521846e+02 - 2.2741495e+03 2.6758097e+03 3.4367122e+02 - 2.2506121e+03 2.6770619e+03 3.0478249e+02 - 2.2298794e+03 2.6726792e+03 2.5764458e+02 - 2.2119699e+03 2.6626239e+03 2.0154799e+02 - 2.1965852e+03 2.6471991e+03 1.3615906e+02 - 2.1830460e+03 2.6271118e+03 6.1694117e+01 - 2.1702810e+03 2.6034741e+03 -2.0965421e+01 - 2.1568921e+03 2.5777208e+03 -1.1027320e+02 - 2.1412929e+03 2.5514461e+03 -2.0415974e+02 - 2.1218909e+03 2.5262015e+03 -3.0028889e+02 - 2.0972628e+03 2.5033082e+03 -3.9635554e+02 - 2.0662778e+03 2.4837348e+03 -4.9033950e+02 - 2.0281509e+03 2.4680563e+03 -5.8065982e+02 - 1.9824316e+03 2.4564843e+03 -6.6621900e+02 - 1.9289524e+03 2.4489390e+03 -7.4636242e+02 - 1.8677617e+03 2.4451334e+03 -8.2079159e+02 - 1.7990587e+03 2.4446525e+03 -8.8946496e+02 - 1.7231408e+03 2.4470146e+03 -9.5250766e+02 - 1.6403649e+03 2.4517161e+03 -1.0101397e+03 - 1.5511220e+03 2.4582603e+03 -1.0626241e+03 - 1.4558217e+03 2.4661748e+03 -1.1102323e+03 - 1.3548842e+03 2.4750204e+03 -1.1532229e+03 - 1.2487366e+03 2.4843957e+03 -1.1918304e+03 - 1.1378124e+03 2.4939382e+03 -1.2262595e+03 - 1.0225515e+03 2.5033238e+03 -1.2566843e+03 - 9.0340177e+02 2.5122660e+03 -1.2832496e+03 - 7.8081999e+02 2.5205145e+03 -1.3060730e+03 - 6.5527234e+02 2.5278542e+03 -1.3252485e+03 - 5.2723473e+02 2.5341044e+03 -1.3408492e+03 - 3.9719227e+02 2.5391177e+03 -1.3529308e+03 - 2.6563826e+02 2.5427800e+03 -1.3615334e+03 - 1.3307263e+02 2.5450098e+03 -1.3666846e+03 - 4.8134273e-09 2.5457585e+03 -1.3683999e+03 - -1.3307263e+02 2.5450098e+03 -1.3666846e+03 - -2.6563826e+02 2.5427800e+03 -1.3615334e+03 - -3.9719227e+02 2.5391177e+03 -1.3529308e+03 - -5.2723473e+02 2.5341044e+03 -1.3408492e+03 - -6.5527234e+02 2.5278542e+03 -1.3252485e+03 - -7.8081999e+02 2.5205145e+03 -1.3060730e+03 - -9.0340177e+02 2.5122660e+03 -1.2832496e+03 - -1.0225515e+03 2.5033238e+03 -1.2566843e+03 - -1.1378124e+03 2.4939382e+03 -1.2262595e+03 - -1.2487366e+03 2.4843957e+03 -1.1918304e+03 - -1.3548842e+03 2.4750204e+03 -1.1532229e+03 - -1.4558217e+03 2.4661748e+03 -1.1102323e+03 - -1.5511220e+03 2.4582603e+03 -1.0626241e+03 - -1.6403649e+03 2.4517161e+03 -1.0101397e+03 - -1.7231408e+03 2.4470146e+03 -9.5250766e+02 - -1.7990587e+03 2.4446525e+03 -8.8946496e+02 - -1.8677617e+03 2.4451334e+03 -8.2079159e+02 - -1.9289524e+03 2.4489390e+03 -7.4636242e+02 - -1.9824316e+03 2.4564843e+03 -6.6621900e+02 - -2.0281509e+03 2.4680563e+03 -5.8065982e+02 - -2.0662778e+03 2.4837348e+03 -4.9033950e+02 - -2.0972628e+03 2.5033082e+03 -3.9635554e+02 - -2.1218909e+03 2.5262015e+03 -3.0028889e+02 - -2.1412929e+03 2.5514461e+03 -2.0415974e+02 - -2.1568921e+03 2.5777208e+03 -1.1027320e+02 - -2.1702810e+03 2.6034741e+03 -2.0965421e+01 - -2.1830460e+03 2.6271118e+03 6.1694117e+01 - -2.1965852e+03 2.6471991e+03 1.3615906e+02 - -2.2119699e+03 2.6626239e+03 2.0154799e+02 - -2.2298794e+03 2.6726792e+03 2.5764458e+02 - -2.2506121e+03 2.6770619e+03 3.0478249e+02 - -2.2741495e+03 2.6758097e+03 3.4367122e+02 - -2.3002428e+03 2.6692093e+03 3.7521846e+02 - -2.3284973e+03 2.6577054e+03 4.0038402e+02 - -2.3584396e+03 2.6418250e+03 4.2007802e+02 - -2.3895651e+03 2.6221251e+03 4.3510023e+02 - -2.4213659e+03 2.5991597e+03 4.4611016e+02 - -2.4533446e+03 2.5734642e+03 4.5361689e+02 - -2.4850170e+03 2.5455505e+03 4.5797925e+02 - -2.5159093e+03 2.5159093e+03 4.5940990e+02 - -2.5455505e+03 2.4850170e+03 4.5797925e+02 - -2.5734642e+03 2.4533446e+03 4.5361689e+02 - -2.5991597e+03 2.4213659e+03 4.4611016e+02 - -2.6221251e+03 2.3895651e+03 4.3510023e+02 - -2.6418250e+03 2.3584396e+03 4.2007802e+02 - -2.6577054e+03 2.3284973e+03 4.0038402e+02 - -2.6692093e+03 2.3002428e+03 3.7521846e+02 - -2.6758097e+03 2.2741495e+03 3.4367122e+02 - -2.6770619e+03 2.2506121e+03 3.0478249e+02 - -2.6726792e+03 2.2298794e+03 2.5764458e+02 - -2.6626239e+03 2.2119699e+03 2.0154799e+02 - -2.6471991e+03 2.1965852e+03 1.3615906e+02 - -2.6271118e+03 2.1830460e+03 6.1694117e+01 - -2.6034741e+03 2.1702810e+03 -2.0965421e+01 - -2.5777208e+03 2.1568921e+03 -1.1027320e+02 - -2.5514461e+03 2.1412929e+03 -2.0415974e+02 - -2.5262015e+03 2.1218909e+03 -3.0028889e+02 - -2.5033082e+03 2.0972628e+03 -3.9635554e+02 - -2.4837348e+03 2.0662778e+03 -4.9033950e+02 - -2.4680563e+03 2.0281509e+03 -5.8065982e+02 - -2.4564843e+03 1.9824316e+03 -6.6621900e+02 - -2.4489390e+03 1.9289524e+03 -7.4636242e+02 - -2.4451334e+03 1.8677617e+03 -8.2079159e+02 - -2.4446525e+03 1.7990587e+03 -8.8946496e+02 - -2.4470146e+03 1.7231408e+03 -9.5250766e+02 - -2.4517161e+03 1.6403649e+03 -1.0101397e+03 - -2.4582603e+03 1.5511220e+03 -1.0626241e+03 - -2.4661748e+03 1.4558217e+03 -1.1102323e+03 - -2.4750204e+03 1.3548842e+03 -1.1532229e+03 - -2.4843957e+03 1.2487366e+03 -1.1918304e+03 - -2.4939382e+03 1.1378124e+03 -1.2262595e+03 - -2.5033238e+03 1.0225515e+03 -1.2566843e+03 - -2.5122660e+03 9.0340177e+02 -1.2832496e+03 - -2.5205145e+03 7.8081999e+02 -1.3060730e+03 - -2.5278542e+03 6.5527234e+02 -1.3252485e+03 - -2.5341044e+03 5.2723473e+02 -1.3408492e+03 - -2.5391177e+03 3.9719227e+02 -1.3529308e+03 - -2.5427800e+03 2.6563826e+02 -1.3615334e+03 - -2.5450098e+03 1.3307263e+02 -1.3666846e+03 - -2.5457585e+03 2.4067136e-09 -1.3683999e+03 - -2.5450098e+03 -1.3307263e+02 -1.3666846e+03 - -2.5427800e+03 -2.6563826e+02 -1.3615334e+03 - -2.5391177e+03 -3.9719227e+02 -1.3529308e+03 - -2.5341044e+03 -5.2723473e+02 -1.3408492e+03 - -2.5278542e+03 -6.5527234e+02 -1.3252485e+03 - -2.5205145e+03 -7.8081999e+02 -1.3060730e+03 - -2.5122660e+03 -9.0340177e+02 -1.2832496e+03 - -2.5033238e+03 -1.0225515e+03 -1.2566843e+03 - -2.4939382e+03 -1.1378124e+03 -1.2262595e+03 - -2.4843957e+03 -1.2487366e+03 -1.1918304e+03 - -2.4750204e+03 -1.3548842e+03 -1.1532229e+03 - -2.4661748e+03 -1.4558217e+03 -1.1102323e+03 - -2.4582603e+03 -1.5511220e+03 -1.0626241e+03 - -2.4517161e+03 -1.6403649e+03 -1.0101397e+03 - -2.4470146e+03 -1.7231408e+03 -9.5250766e+02 - -2.4446525e+03 -1.7990587e+03 -8.8946496e+02 - -2.4451334e+03 -1.8677617e+03 -8.2079159e+02 - -2.4489390e+03 -1.9289524e+03 -7.4636242e+02 - -2.4564843e+03 -1.9824316e+03 -6.6621900e+02 - -2.4680563e+03 -2.0281509e+03 -5.8065982e+02 - -2.4837348e+03 -2.0662778e+03 -4.9033950e+02 - -2.5033082e+03 -2.0972628e+03 -3.9635554e+02 - -2.5262015e+03 -2.1218909e+03 -3.0028889e+02 - -2.5514461e+03 -2.1412929e+03 -2.0415974e+02 - -2.5777208e+03 -2.1568921e+03 -1.1027320e+02 - -2.6034741e+03 -2.1702810e+03 -2.0965421e+01 - -2.6271118e+03 -2.1830460e+03 6.1694117e+01 - -2.6471991e+03 -2.1965852e+03 1.3615906e+02 - -2.6626239e+03 -2.2119699e+03 2.0154799e+02 - -2.6726792e+03 -2.2298794e+03 2.5764458e+02 - -2.6770619e+03 -2.2506121e+03 3.0478249e+02 - -2.6758097e+03 -2.2741495e+03 3.4367122e+02 - -2.6692093e+03 -2.3002428e+03 3.7521846e+02 - -2.6577054e+03 -2.3284973e+03 4.0038402e+02 - -2.6418250e+03 -2.3584396e+03 4.2007802e+02 - -2.6221251e+03 -2.3895651e+03 4.3510023e+02 - -2.5991597e+03 -2.4213659e+03 4.4611016e+02 - -2.5734642e+03 -2.4533446e+03 4.5361689e+02 - -2.5455505e+03 -2.4850170e+03 4.5797925e+02 - -2.5159093e+03 -2.5159093e+03 4.5940990e+02 - -2.4850170e+03 -2.5455505e+03 4.5797925e+02 - -2.4533446e+03 -2.5734642e+03 4.5361689e+02 - -2.4213659e+03 -2.5991597e+03 4.4611016e+02 - -2.3895651e+03 -2.6221251e+03 4.3510023e+02 - -2.3584396e+03 -2.6418250e+03 4.2007802e+02 - -2.3284973e+03 -2.6577054e+03 4.0038402e+02 - -2.3002428e+03 -2.6692093e+03 3.7521846e+02 - -2.2741495e+03 -2.6758097e+03 3.4367122e+02 - -2.2506121e+03 -2.6770619e+03 3.0478249e+02 - -2.2298794e+03 -2.6726792e+03 2.5764458e+02 - -2.2119699e+03 -2.6626239e+03 2.0154799e+02 - -2.1965852e+03 -2.6471991e+03 1.3615906e+02 - -2.1830460e+03 -2.6271118e+03 6.1694117e+01 - -2.1702810e+03 -2.6034741e+03 -2.0965421e+01 - -2.1568921e+03 -2.5777208e+03 -1.1027320e+02 - -2.1412929e+03 -2.5514461e+03 -2.0415974e+02 - -2.1218909e+03 -2.5262015e+03 -3.0028889e+02 - -2.0972628e+03 -2.5033082e+03 -3.9635554e+02 - -2.0662778e+03 -2.4837348e+03 -4.9033950e+02 - -2.0281509e+03 -2.4680563e+03 -5.8065982e+02 - -1.9824316e+03 -2.4564843e+03 -6.6621900e+02 - -1.9289524e+03 -2.4489390e+03 -7.4636242e+02 - -1.8677617e+03 -2.4451334e+03 -8.2079159e+02 - -1.7990587e+03 -2.4446525e+03 -8.8946496e+02 - -1.7231408e+03 -2.4470146e+03 -9.5250766e+02 - -1.6403649e+03 -2.4517161e+03 -1.0101397e+03 - -1.5511220e+03 -2.4582603e+03 -1.0626241e+03 - -1.4558217e+03 -2.4661748e+03 -1.1102323e+03 - -1.3548842e+03 -2.4750204e+03 -1.1532229e+03 - -1.2487366e+03 -2.4843957e+03 -1.1918304e+03 - -1.1378124e+03 -2.4939382e+03 -1.2262595e+03 - -1.0225515e+03 -2.5033238e+03 -1.2566843e+03 - -9.0340177e+02 -2.5122660e+03 -1.2832496e+03 - -7.8081999e+02 -2.5205145e+03 -1.3060730e+03 - -6.5527234e+02 -2.5278542e+03 -1.3252485e+03 - -5.2723473e+02 -2.5341044e+03 -1.3408492e+03 - -3.9719227e+02 -2.5391177e+03 -1.3529308e+03 - -2.6563826e+02 -2.5427800e+03 -1.3615334e+03 - -1.3307263e+02 -2.5450098e+03 -1.3666846e+03 - 2.4067136e-09 -2.5457585e+03 -1.3683999e+03 - 1.3307263e+02 -2.5450098e+03 -1.3666846e+03 - 2.6563826e+02 -2.5427800e+03 -1.3615334e+03 - 3.9719227e+02 -2.5391177e+03 -1.3529308e+03 - 5.2723473e+02 -2.5341044e+03 -1.3408492e+03 - 6.5527234e+02 -2.5278542e+03 -1.3252485e+03 - 7.8081999e+02 -2.5205145e+03 -1.3060730e+03 - 9.0340177e+02 -2.5122660e+03 -1.2832496e+03 - 1.0225515e+03 -2.5033238e+03 -1.2566843e+03 - 1.1378124e+03 -2.4939382e+03 -1.2262595e+03 - 1.2487366e+03 -2.4843957e+03 -1.1918304e+03 - 1.3548842e+03 -2.4750204e+03 -1.1532229e+03 - 1.4558217e+03 -2.4661748e+03 -1.1102323e+03 - 1.5511220e+03 -2.4582603e+03 -1.0626241e+03 - 1.6403649e+03 -2.4517161e+03 -1.0101397e+03 - 1.7231408e+03 -2.4470146e+03 -9.5250766e+02 - 1.7990587e+03 -2.4446525e+03 -8.8946496e+02 - 1.8677617e+03 -2.4451334e+03 -8.2079159e+02 - 1.9289524e+03 -2.4489390e+03 -7.4636242e+02 - 1.9824316e+03 -2.4564843e+03 -6.6621900e+02 - 2.0281509e+03 -2.4680563e+03 -5.8065982e+02 - 2.0662778e+03 -2.4837348e+03 -4.9033950e+02 - 2.0972628e+03 -2.5033082e+03 -3.9635554e+02 - 2.1218909e+03 -2.5262015e+03 -3.0028889e+02 - 2.1412929e+03 -2.5514461e+03 -2.0415974e+02 - 2.1568921e+03 -2.5777208e+03 -1.1027320e+02 - 2.1702810e+03 -2.6034741e+03 -2.0965421e+01 - 2.1830460e+03 -2.6271118e+03 6.1694117e+01 - 2.1965852e+03 -2.6471991e+03 1.3615906e+02 - 2.2119699e+03 -2.6626239e+03 2.0154799e+02 - 2.2298794e+03 -2.6726792e+03 2.5764458e+02 - 2.2506121e+03 -2.6770619e+03 3.0478249e+02 - 2.2741495e+03 -2.6758097e+03 3.4367122e+02 - 2.3002428e+03 -2.6692093e+03 3.7521846e+02 - 2.3284973e+03 -2.6577054e+03 4.0038402e+02 - 2.3584396e+03 -2.6418250e+03 4.2007802e+02 - 2.3895651e+03 -2.6221251e+03 4.3510023e+02 - 2.4213659e+03 -2.5991597e+03 4.4611016e+02 - 2.4533446e+03 -2.5734642e+03 4.5361689e+02 - 2.4850170e+03 -2.5455505e+03 4.5797925e+02 - 2.5159093e+03 -2.5159093e+03 4.5940990e+02 - 2.5455505e+03 -2.4850170e+03 4.5797925e+02 - 2.5734642e+03 -2.4533446e+03 4.5361689e+02 - 2.5991597e+03 -2.4213659e+03 4.4611016e+02 - 2.6221251e+03 -2.3895651e+03 4.3510023e+02 - 2.6418250e+03 -2.3584396e+03 4.2007802e+02 - 2.6577054e+03 -2.3284973e+03 4.0038402e+02 - 2.6692093e+03 -2.3002428e+03 3.7521846e+02 - 2.6758097e+03 -2.2741495e+03 3.4367122e+02 - 2.6770619e+03 -2.2506121e+03 3.0478249e+02 - 2.6726792e+03 -2.2298794e+03 2.5764458e+02 - 2.6626239e+03 -2.2119699e+03 2.0154799e+02 - 2.6471991e+03 -2.1965852e+03 1.3615906e+02 - 2.6271118e+03 -2.1830460e+03 6.1694117e+01 - 2.6034741e+03 -2.1702810e+03 -2.0965421e+01 - 2.5777208e+03 -2.1568921e+03 -1.1027320e+02 - 2.5514461e+03 -2.1412929e+03 -2.0415974e+02 - 2.5262015e+03 -2.1218909e+03 -3.0028889e+02 - 2.5033082e+03 -2.0972628e+03 -3.9635554e+02 - 2.4837348e+03 -2.0662778e+03 -4.9033950e+02 - 2.4680563e+03 -2.0281509e+03 -5.8065982e+02 - 2.4564843e+03 -1.9824316e+03 -6.6621900e+02 - 2.4489390e+03 -1.9289524e+03 -7.4636242e+02 - 2.4451334e+03 -1.8677617e+03 -8.2079159e+02 - 2.4446525e+03 -1.7990587e+03 -8.8946496e+02 - 2.4470146e+03 -1.7231408e+03 -9.5250766e+02 - 2.4517161e+03 -1.6403649e+03 -1.0101397e+03 - 2.4582603e+03 -1.5511220e+03 -1.0626241e+03 - 2.4661748e+03 -1.4558217e+03 -1.1102323e+03 - 2.4750204e+03 -1.3548842e+03 -1.1532229e+03 - 2.4843957e+03 -1.2487366e+03 -1.1918304e+03 - 2.4939382e+03 -1.1378124e+03 -1.2262595e+03 - 2.5033238e+03 -1.0225515e+03 -1.2566843e+03 - 2.5122660e+03 -9.0340177e+02 -1.2832496e+03 - 2.5205145e+03 -7.8081999e+02 -1.3060730e+03 - 2.5278542e+03 -6.5527234e+02 -1.3252485e+03 - 2.5341044e+03 -5.2723473e+02 -1.3408492e+03 - 2.5391177e+03 -3.9719227e+02 -1.3529308e+03 - 2.5427800e+03 -2.6563826e+02 -1.3615334e+03 - 2.5450098e+03 -1.3307263e+02 -1.3666846e+03 - 2.5457585e+03 -4.8134273e-09 -1.3683999e+03 - 2.5198496e+03 0.0000000e+00 -1.4455584e+03 - 2.5192472e+03 1.2854506e+02 -1.4436574e+03 - 2.5174573e+03 2.5658148e+02 -1.4379473e+03 - 2.5145319e+03 3.8360251e+02 -1.4284058e+03 - 2.5105578e+03 5.0910509e+02 -1.4149948e+03 - 2.5056571e+03 6.3259143e+02 -1.3976591e+03 - 2.4999874e+03 7.5357016e+02 -1.3763244e+03 - 2.4937425e+03 8.7155728e+02 -1.3508951e+03 - 2.4871532e+03 9.8607659e+02 -1.3212520e+03 - 2.4804877e+03 1.0966599e+03 -1.2872506e+03 - 2.4740522e+03 1.2028473e+03 -1.2487204e+03 - 2.4681912e+03 1.3041875e+03 -1.2054648e+03 - 2.4632852e+03 1.4002394e+03 -1.1572658e+03 - 2.4597481e+03 1.4905751e+03 -1.1038921e+03 - 2.4580196e+03 1.5747869e+03 -1.0451142e+03 - 2.4585524e+03 1.6524976e+03 -9.8073029e+02 - 2.4617909e+03 1.7233798e+03 -9.1060318e+02 - 2.4681400e+03 1.7871819e+03 -8.3471362e+02 - 2.4779194e+03 1.8437662e+03 -7.5322775e+02 - 2.4913065e+03 1.8931550e+03 -6.6657536e+02 - 2.5082699e+03 1.9355823e+03 -5.7552691e+02 - 2.5285059e+03 1.9715395e+03 -4.8124902e+02 - 2.5513942e+03 2.0018020e+03 -3.8531129e+02 - 2.5759949e+03 2.0274164e+03 -2.8961943e+02 - 2.6011034e+03 2.0496395e+03 -1.9626509e+02 - 2.6253627e+03 2.0698287e+03 -1.0731081e+02 - 2.6474151e+03 2.0893049e+03 -2.4557464e+01 - 2.6660548e+03 2.1092201e+03 5.0645339e+01 - 2.6803452e+03 2.1304604e+03 1.1749920e+02 - 2.6896765e+03 2.1536042e+03 1.7575339e+02 - 2.6937634e+03 2.1789316e+03 2.2561797e+02 - 2.6925985e+03 2.2064709e+03 2.6763263e+02 - 2.6863838e+03 2.2360622e+03 3.0252918e+02 - 2.6754607e+03 2.2674195e+03 3.3111397e+02 - 2.6602501e+03 2.3001837e+03 3.5418096e+02 - 2.6412075e+03 2.3339605e+03 3.7245550e+02 - 2.6187937e+03 2.3683462e+03 3.8656292e+02 - 2.5934579e+03 2.4029406e+03 3.9701440e+02 - 2.5656298e+03 2.4373533e+03 4.0420339e+02 - 2.5357187e+03 2.4712036e+03 4.0840718e+02 - 2.5041167e+03 2.5041167e+03 4.0979028e+02 - 2.4712036e+03 2.5357187e+03 4.0840718e+02 - 2.4373533e+03 2.5656298e+03 4.0420339e+02 - 2.4029406e+03 2.5934579e+03 3.9701440e+02 - 2.3683462e+03 2.6187937e+03 3.8656292e+02 - 2.3339605e+03 2.6412075e+03 3.7245550e+02 - 2.3001837e+03 2.6602501e+03 3.5418096e+02 - 2.2674195e+03 2.6754607e+03 3.3111397e+02 - 2.2360622e+03 2.6863838e+03 3.0252918e+02 - 2.2064709e+03 2.6925985e+03 2.6763263e+02 - 2.1789316e+03 2.6937634e+03 2.2561797e+02 - 2.1536042e+03 2.6896765e+03 1.7575339e+02 - 2.1304604e+03 2.6803452e+03 1.1749920e+02 - 2.1092201e+03 2.6660548e+03 5.0645339e+01 - 2.0893049e+03 2.6474151e+03 -2.4557464e+01 - 2.0698287e+03 2.6253627e+03 -1.0731081e+02 - 2.0496395e+03 2.6011034e+03 -1.9626509e+02 - 2.0274164e+03 2.5759949e+03 -2.8961943e+02 - 2.0018020e+03 2.5513942e+03 -3.8531129e+02 - 1.9715395e+03 2.5285059e+03 -4.8124902e+02 - 1.9355823e+03 2.5082699e+03 -5.7552691e+02 - 1.8931550e+03 2.4913065e+03 -6.6657536e+02 - 1.8437662e+03 2.4779194e+03 -7.5322775e+02 - 1.7871819e+03 2.4681400e+03 -8.3471362e+02 - 1.7233798e+03 2.4617909e+03 -9.1060318e+02 - 1.6524976e+03 2.4585524e+03 -9.8073029e+02 - 1.5747869e+03 2.4580196e+03 -1.0451142e+03 - 1.4905751e+03 2.4597481e+03 -1.1038921e+03 - 1.4002394e+03 2.4632852e+03 -1.1572658e+03 - 1.3041875e+03 2.4681912e+03 -1.2054648e+03 - 1.2028473e+03 2.4740522e+03 -1.2487204e+03 - 1.0966599e+03 2.4804877e+03 -1.2872506e+03 - 9.8607659e+02 2.4871532e+03 -1.3212520e+03 - 8.7155728e+02 2.4937425e+03 -1.3508951e+03 - 7.5357016e+02 2.4999874e+03 -1.3763244e+03 - 6.3259143e+02 2.5056571e+03 -1.3976591e+03 - 5.0910509e+02 2.5105578e+03 -1.4149948e+03 - 3.8360251e+02 2.5145319e+03 -1.4284058e+03 - 2.5658148e+02 2.5174573e+03 -1.4379473e+03 - 1.2854506e+02 2.5192472e+03 -1.4436574e+03 - 2.4067136e-09 2.5198496e+03 -1.4455584e+03 - -1.2854506e+02 2.5192472e+03 -1.4436574e+03 - -2.5658148e+02 2.5174573e+03 -1.4379473e+03 - -3.8360251e+02 2.5145319e+03 -1.4284058e+03 - -5.0910509e+02 2.5105578e+03 -1.4149948e+03 - -6.3259143e+02 2.5056571e+03 -1.3976591e+03 - -7.5357016e+02 2.4999874e+03 -1.3763244e+03 - -8.7155728e+02 2.4937425e+03 -1.3508951e+03 - -9.8607659e+02 2.4871532e+03 -1.3212520e+03 - -1.0966599e+03 2.4804877e+03 -1.2872506e+03 - -1.2028473e+03 2.4740522e+03 -1.2487204e+03 - -1.3041875e+03 2.4681912e+03 -1.2054648e+03 - -1.4002394e+03 2.4632852e+03 -1.1572658e+03 - -1.4905751e+03 2.4597481e+03 -1.1038921e+03 - -1.5747869e+03 2.4580196e+03 -1.0451142e+03 - -1.6524976e+03 2.4585524e+03 -9.8073029e+02 - -1.7233798e+03 2.4617909e+03 -9.1060318e+02 - -1.7871819e+03 2.4681400e+03 -8.3471362e+02 - -1.8437662e+03 2.4779194e+03 -7.5322775e+02 - -1.8931550e+03 2.4913065e+03 -6.6657536e+02 - -1.9355823e+03 2.5082699e+03 -5.7552691e+02 - -1.9715395e+03 2.5285059e+03 -4.8124902e+02 - -2.0018020e+03 2.5513942e+03 -3.8531129e+02 - -2.0274164e+03 2.5759949e+03 -2.8961943e+02 - -2.0496395e+03 2.6011034e+03 -1.9626509e+02 - -2.0698287e+03 2.6253627e+03 -1.0731081e+02 - -2.0893049e+03 2.6474151e+03 -2.4557464e+01 - -2.1092201e+03 2.6660548e+03 5.0645339e+01 - -2.1304604e+03 2.6803452e+03 1.1749920e+02 - -2.1536042e+03 2.6896765e+03 1.7575339e+02 - -2.1789316e+03 2.6937634e+03 2.2561797e+02 - -2.2064709e+03 2.6925985e+03 2.6763263e+02 - -2.2360622e+03 2.6863838e+03 3.0252918e+02 - -2.2674195e+03 2.6754607e+03 3.3111397e+02 - -2.3001837e+03 2.6602501e+03 3.5418096e+02 - -2.3339605e+03 2.6412075e+03 3.7245550e+02 - -2.3683462e+03 2.6187937e+03 3.8656292e+02 - -2.4029406e+03 2.5934579e+03 3.9701440e+02 - -2.4373533e+03 2.5656298e+03 4.0420339e+02 - -2.4712036e+03 2.5357187e+03 4.0840718e+02 - -2.5041167e+03 2.5041167e+03 4.0979028e+02 - -2.5357187e+03 2.4712036e+03 4.0840718e+02 - -2.5656298e+03 2.4373533e+03 4.0420339e+02 - -2.5934579e+03 2.4029406e+03 3.9701440e+02 - -2.6187937e+03 2.3683462e+03 3.8656292e+02 - -2.6412075e+03 2.3339605e+03 3.7245550e+02 - -2.6602501e+03 2.3001837e+03 3.5418096e+02 - -2.6754607e+03 2.2674195e+03 3.3111397e+02 - -2.6863838e+03 2.2360622e+03 3.0252918e+02 - -2.6925985e+03 2.2064709e+03 2.6763263e+02 - -2.6937634e+03 2.1789316e+03 2.2561797e+02 - -2.6896765e+03 2.1536042e+03 1.7575339e+02 - -2.6803452e+03 2.1304604e+03 1.1749920e+02 - -2.6660548e+03 2.1092201e+03 5.0645339e+01 - -2.6474151e+03 2.0893049e+03 -2.4557464e+01 - -2.6253627e+03 2.0698287e+03 -1.0731081e+02 - -2.6011034e+03 2.0496395e+03 -1.9626509e+02 - -2.5759949e+03 2.0274164e+03 -2.8961943e+02 - -2.5513942e+03 2.0018020e+03 -3.8531129e+02 - -2.5285059e+03 1.9715395e+03 -4.8124902e+02 - -2.5082699e+03 1.9355823e+03 -5.7552691e+02 - -2.4913065e+03 1.8931550e+03 -6.6657536e+02 - -2.4779194e+03 1.8437662e+03 -7.5322775e+02 - -2.4681400e+03 1.7871819e+03 -8.3471362e+02 - -2.4617909e+03 1.7233798e+03 -9.1060318e+02 - -2.4585524e+03 1.6524976e+03 -9.8073029e+02 - -2.4580196e+03 1.5747869e+03 -1.0451142e+03 - -2.4597481e+03 1.4905751e+03 -1.1038921e+03 - -2.4632852e+03 1.4002394e+03 -1.1572658e+03 - -2.4681912e+03 1.3041875e+03 -1.2054648e+03 - -2.4740522e+03 1.2028473e+03 -1.2487204e+03 - -2.4804877e+03 1.0966599e+03 -1.2872506e+03 - -2.4871532e+03 9.8607659e+02 -1.3212520e+03 - -2.4937425e+03 8.7155728e+02 -1.3508951e+03 - -2.4999874e+03 7.5357016e+02 -1.3763244e+03 - -2.5056571e+03 6.3259143e+02 -1.3976591e+03 - -2.5105578e+03 5.0910509e+02 -1.4149948e+03 - -2.5145319e+03 3.8360251e+02 -1.4284058e+03 - -2.5174573e+03 2.5658148e+02 -1.4379473e+03 - -2.5192472e+03 1.2854506e+02 -1.4436574e+03 - -2.5198496e+03 0.0000000e+00 -1.4455584e+03 - -2.5192472e+03 -1.2854506e+02 -1.4436574e+03 - -2.5174573e+03 -2.5658148e+02 -1.4379473e+03 - -2.5145319e+03 -3.8360251e+02 -1.4284058e+03 - -2.5105578e+03 -5.0910509e+02 -1.4149948e+03 - -2.5056571e+03 -6.3259143e+02 -1.3976591e+03 - -2.4999874e+03 -7.5357016e+02 -1.3763244e+03 - -2.4937425e+03 -8.7155728e+02 -1.3508951e+03 - -2.4871532e+03 -9.8607659e+02 -1.3212520e+03 - -2.4804877e+03 -1.0966599e+03 -1.2872506e+03 - -2.4740522e+03 -1.2028473e+03 -1.2487204e+03 - -2.4681912e+03 -1.3041875e+03 -1.2054648e+03 - -2.4632852e+03 -1.4002394e+03 -1.1572658e+03 - -2.4597481e+03 -1.4905751e+03 -1.1038921e+03 - -2.4580196e+03 -1.5747869e+03 -1.0451142e+03 - -2.4585524e+03 -1.6524976e+03 -9.8073029e+02 - -2.4617909e+03 -1.7233798e+03 -9.1060318e+02 - -2.4681400e+03 -1.7871819e+03 -8.3471362e+02 - -2.4779194e+03 -1.8437662e+03 -7.5322775e+02 - -2.4913065e+03 -1.8931550e+03 -6.6657536e+02 - -2.5082699e+03 -1.9355823e+03 -5.7552691e+02 - -2.5285059e+03 -1.9715395e+03 -4.8124902e+02 - -2.5513942e+03 -2.0018020e+03 -3.8531129e+02 - -2.5759949e+03 -2.0274164e+03 -2.8961943e+02 - -2.6011034e+03 -2.0496395e+03 -1.9626509e+02 - -2.6253627e+03 -2.0698287e+03 -1.0731081e+02 - -2.6474151e+03 -2.0893049e+03 -2.4557464e+01 - -2.6660548e+03 -2.1092201e+03 5.0645339e+01 - -2.6803452e+03 -2.1304604e+03 1.1749920e+02 - -2.6896765e+03 -2.1536042e+03 1.7575339e+02 - -2.6937634e+03 -2.1789316e+03 2.2561797e+02 - -2.6925985e+03 -2.2064709e+03 2.6763263e+02 - -2.6863838e+03 -2.2360622e+03 3.0252918e+02 - -2.6754607e+03 -2.2674195e+03 3.3111397e+02 - -2.6602501e+03 -2.3001837e+03 3.5418096e+02 - -2.6412075e+03 -2.3339605e+03 3.7245550e+02 - -2.6187937e+03 -2.3683462e+03 3.8656292e+02 - -2.5934579e+03 -2.4029406e+03 3.9701440e+02 - -2.5656298e+03 -2.4373533e+03 4.0420339e+02 - -2.5357187e+03 -2.4712036e+03 4.0840718e+02 - -2.5041167e+03 -2.5041167e+03 4.0979028e+02 - -2.4712036e+03 -2.5357187e+03 4.0840718e+02 - -2.4373533e+03 -2.5656298e+03 4.0420339e+02 - -2.4029406e+03 -2.5934579e+03 3.9701440e+02 - -2.3683462e+03 -2.6187937e+03 3.8656292e+02 - -2.3339605e+03 -2.6412075e+03 3.7245550e+02 - -2.3001837e+03 -2.6602501e+03 3.5418096e+02 - -2.2674195e+03 -2.6754607e+03 3.3111397e+02 - -2.2360622e+03 -2.6863838e+03 3.0252918e+02 - -2.2064709e+03 -2.6925985e+03 2.6763263e+02 - -2.1789316e+03 -2.6937634e+03 2.2561797e+02 - -2.1536042e+03 -2.6896765e+03 1.7575339e+02 - -2.1304604e+03 -2.6803452e+03 1.1749920e+02 - -2.1092201e+03 -2.6660548e+03 5.0645339e+01 - -2.0893049e+03 -2.6474151e+03 -2.4557464e+01 - -2.0698287e+03 -2.6253627e+03 -1.0731081e+02 - -2.0496395e+03 -2.6011034e+03 -1.9626509e+02 - -2.0274164e+03 -2.5759949e+03 -2.8961943e+02 - -2.0018020e+03 -2.5513942e+03 -3.8531129e+02 - -1.9715395e+03 -2.5285059e+03 -4.8124902e+02 - -1.9355823e+03 -2.5082699e+03 -5.7552691e+02 - -1.8931550e+03 -2.4913065e+03 -6.6657536e+02 - -1.8437662e+03 -2.4779194e+03 -7.5322775e+02 - -1.7871819e+03 -2.4681400e+03 -8.3471362e+02 - -1.7233798e+03 -2.4617909e+03 -9.1060318e+02 - -1.6524976e+03 -2.4585524e+03 -9.8073029e+02 - -1.5747869e+03 -2.4580196e+03 -1.0451142e+03 - -1.4905751e+03 -2.4597481e+03 -1.1038921e+03 - -1.4002394e+03 -2.4632852e+03 -1.1572658e+03 - -1.3041875e+03 -2.4681912e+03 -1.2054648e+03 - -1.2028473e+03 -2.4740522e+03 -1.2487204e+03 - -1.0966599e+03 -2.4804877e+03 -1.2872506e+03 - -9.8607659e+02 -2.4871532e+03 -1.3212520e+03 - -8.7155728e+02 -2.4937425e+03 -1.3508951e+03 - -7.5357016e+02 -2.4999874e+03 -1.3763244e+03 - -6.3259143e+02 -2.5056571e+03 -1.3976591e+03 - -5.0910509e+02 -2.5105578e+03 -1.4149948e+03 - -3.8360251e+02 -2.5145319e+03 -1.4284058e+03 - -2.5658148e+02 -2.5174573e+03 -1.4379473e+03 - -1.2854506e+02 -2.5192472e+03 -1.4436574e+03 - -2.4067136e-09 -2.5198496e+03 -1.4455584e+03 - 1.2854506e+02 -2.5192472e+03 -1.4436574e+03 - 2.5658148e+02 -2.5174573e+03 -1.4379473e+03 - 3.8360251e+02 -2.5145319e+03 -1.4284058e+03 - 5.0910509e+02 -2.5105578e+03 -1.4149948e+03 - 6.3259143e+02 -2.5056571e+03 -1.3976591e+03 - 7.5357016e+02 -2.4999874e+03 -1.3763244e+03 - 8.7155728e+02 -2.4937425e+03 -1.3508951e+03 - 9.8607659e+02 -2.4871532e+03 -1.3212520e+03 - 1.0966599e+03 -2.4804877e+03 -1.2872506e+03 - 1.2028473e+03 -2.4740522e+03 -1.2487204e+03 - 1.3041875e+03 -2.4681912e+03 -1.2054648e+03 - 1.4002394e+03 -2.4632852e+03 -1.1572658e+03 - 1.4905751e+03 -2.4597481e+03 -1.1038921e+03 - 1.5747869e+03 -2.4580196e+03 -1.0451142e+03 - 1.6524976e+03 -2.4585524e+03 -9.8073029e+02 - 1.7233798e+03 -2.4617909e+03 -9.1060318e+02 - 1.7871819e+03 -2.4681400e+03 -8.3471362e+02 - 1.8437662e+03 -2.4779194e+03 -7.5322775e+02 - 1.8931550e+03 -2.4913065e+03 -6.6657536e+02 - 1.9355823e+03 -2.5082699e+03 -5.7552691e+02 - 1.9715395e+03 -2.5285059e+03 -4.8124902e+02 - 2.0018020e+03 -2.5513942e+03 -3.8531129e+02 - 2.0274164e+03 -2.5759949e+03 -2.8961943e+02 - 2.0496395e+03 -2.6011034e+03 -1.9626509e+02 - 2.0698287e+03 -2.6253627e+03 -1.0731081e+02 - 2.0893049e+03 -2.6474151e+03 -2.4557464e+01 - 2.1092201e+03 -2.6660548e+03 5.0645339e+01 - 2.1304604e+03 -2.6803452e+03 1.1749920e+02 - 2.1536042e+03 -2.6896765e+03 1.7575339e+02 - 2.1789316e+03 -2.6937634e+03 2.2561797e+02 - 2.2064709e+03 -2.6925985e+03 2.6763263e+02 - 2.2360622e+03 -2.6863838e+03 3.0252918e+02 - 2.2674195e+03 -2.6754607e+03 3.3111397e+02 - 2.3001837e+03 -2.6602501e+03 3.5418096e+02 - 2.3339605e+03 -2.6412075e+03 3.7245550e+02 - 2.3683462e+03 -2.6187937e+03 3.8656292e+02 - 2.4029406e+03 -2.5934579e+03 3.9701440e+02 - 2.4373533e+03 -2.5656298e+03 4.0420339e+02 - 2.4712036e+03 -2.5357187e+03 4.0840718e+02 - 2.5041167e+03 -2.5041167e+03 4.0979028e+02 - 2.5357187e+03 -2.4712036e+03 4.0840718e+02 - 2.5656298e+03 -2.4373533e+03 4.0420339e+02 - 2.5934579e+03 -2.4029406e+03 3.9701440e+02 - 2.6187937e+03 -2.3683462e+03 3.8656292e+02 - 2.6412075e+03 -2.3339605e+03 3.7245550e+02 - 2.6602501e+03 -2.3001837e+03 3.5418096e+02 - 2.6754607e+03 -2.2674195e+03 3.3111397e+02 - 2.6863838e+03 -2.2360622e+03 3.0252918e+02 - 2.6925985e+03 -2.2064709e+03 2.6763263e+02 - 2.6937634e+03 -2.1789316e+03 2.2561797e+02 - 2.6896765e+03 -2.1536042e+03 1.7575339e+02 - 2.6803452e+03 -2.1304604e+03 1.1749920e+02 - 2.6660548e+03 -2.1092201e+03 5.0645339e+01 - 2.6474151e+03 -2.0893049e+03 -2.4557464e+01 - 2.6253627e+03 -2.0698287e+03 -1.0731081e+02 - 2.6011034e+03 -2.0496395e+03 -1.9626509e+02 - 2.5759949e+03 -2.0274164e+03 -2.8961943e+02 - 2.5513942e+03 -2.0018020e+03 -3.8531129e+02 - 2.5285059e+03 -1.9715395e+03 -4.8124902e+02 - 2.5082699e+03 -1.9355823e+03 -5.7552691e+02 - 2.4913065e+03 -1.8931550e+03 -6.6657536e+02 - 2.4779194e+03 -1.8437662e+03 -7.5322775e+02 - 2.4681400e+03 -1.7871819e+03 -8.3471362e+02 - 2.4617909e+03 -1.7233798e+03 -9.1060318e+02 - 2.4585524e+03 -1.6524976e+03 -9.8073029e+02 - 2.4580196e+03 -1.5747869e+03 -1.0451142e+03 - 2.4597481e+03 -1.4905751e+03 -1.1038921e+03 - 2.4632852e+03 -1.4002394e+03 -1.1572658e+03 - 2.4681912e+03 -1.3041875e+03 -1.2054648e+03 - 2.4740522e+03 -1.2028473e+03 -1.2487204e+03 - 2.4804877e+03 -1.0966599e+03 -1.2872506e+03 - 2.4871532e+03 -9.8607659e+02 -1.3212520e+03 - 2.4937425e+03 -8.7155728e+02 -1.3508951e+03 - 2.4999874e+03 -7.5357016e+02 -1.3763244e+03 - 2.5056571e+03 -6.3259143e+02 -1.3976591e+03 - 2.5105578e+03 -5.0910509e+02 -1.4149948e+03 - 2.5145319e+03 -3.8360251e+02 -1.4284058e+03 - 2.5174573e+03 -2.5658148e+02 -1.4379473e+03 - 2.5192472e+03 -1.2854506e+02 -1.4436574e+03 - 2.5198496e+03 -2.4067136e-09 -1.4455584e+03 - 2.4927347e+03 0.0000000e+00 -1.5213440e+03 - 2.4923040e+03 1.2348643e+02 -1.5192263e+03 - 2.4910306e+03 2.4645961e+02 -1.5128637e+03 - 2.4889707e+03 3.6840781e+02 -1.5022267e+03 - 2.4862180e+03 4.8882227e+02 -1.4872656e+03 - 2.4829040e+03 6.0719850e+02 -1.4679093e+03 - 2.4791985e+03 7.2303749e+02 -1.4440640e+03 - 2.4753101e+03 8.3584673e+02 -1.4156127e+03 - 2.4714858e+03 9.4514137e+02 -1.3824143e+03 - 2.4680106e+03 1.0504456e+03 -1.3443046e+03 - 2.4652065e+03 1.1512946e+03 -1.3010995e+03 - 2.4634288e+03 1.2472384e+03 -1.2526020e+03 - 2.4630604e+03 1.3378469e+03 -1.1986136e+03 - 2.4645014e+03 1.4227199e+03 -1.1389539e+03 - 2.4681527e+03 1.5015002e+03 -1.0734891e+03 - 2.4743920e+03 1.5738944e+03 -1.0021724e+03 - 2.4835401e+03 1.6397000e+03 -9.2509598e+02 - 2.4958166e+03 1.6988401e+03 -8.4255249e+02 - 2.5112884e+03 1.7514022e+03 -7.5510024e+02 - 2.5298169e+03 1.7976759e+03 -6.6361822e+02 - 2.5510133e+03 1.8381802e+03 -5.6933333e+02 - 2.5742186e+03 1.8736684e+03 -4.7379993e+02 - 2.5985210e+03 1.9050998e+03 -3.7881744e+02 - 2.6228187e+03 1.9335752e+03 -2.8628754e+02 - 2.6459218e+03 1.9602427e+03 -1.9803293e+02 - 2.6666738e+03 1.9861911e+03 -1.1561687e+02 - 2.6840664e+03 2.0123550e+03 -4.0205616e+01 - 2.6973218e+03 2.0394509e+03 2.7497799e+01 - 2.7059296e+03 2.0679516e+03 8.7243546e+01 - 2.7096417e+03 2.0980975e+03 1.3916547e+02 - 2.7084349e+03 2.1299323e+03 1.8367967e+02 - 2.7024590e+03 2.1633493e+03 2.2137768e+02 - 2.6919827e+03 2.1981385e+03 2.5293285e+02 - 2.6773462e+03 2.2340262e+03 2.7902829e+02 - 2.6589250e+03 2.2707052e+03 3.0030751e+02 - 2.6371037e+03 2.3078554e+03 3.1734448e+02 - 2.6122611e+03 2.3451566e+03 3.3062789e+02 - 2.5847608e+03 2.3822945e+03 3.4055506e+02 - 2.5549487e+03 2.4189621e+03 3.4743131e+02 - 2.5231535e+03 2.4548594e+03 3.5147189e+02 - 2.4896891e+03 2.4896891e+03 3.5280463e+02 - 2.4548594e+03 2.5231535e+03 3.5147189e+02 - 2.4189621e+03 2.5549487e+03 3.4743131e+02 - 2.3822945e+03 2.5847608e+03 3.4055506e+02 - 2.3451566e+03 2.6122611e+03 3.3062789e+02 - 2.3078554e+03 2.6371037e+03 3.1734448e+02 - 2.2707052e+03 2.6589250e+03 3.0030751e+02 - 2.2340262e+03 2.6773462e+03 2.7902829e+02 - 2.1981385e+03 2.6919827e+03 2.5293285e+02 - 2.1633493e+03 2.7024590e+03 2.2137768e+02 - 2.1299323e+03 2.7084349e+03 1.8367967e+02 - 2.0980975e+03 2.7096417e+03 1.3916547e+02 - 2.0679516e+03 2.7059296e+03 8.7243546e+01 - 2.0394509e+03 2.6973218e+03 2.7497799e+01 - 2.0123550e+03 2.6840664e+03 -4.0205616e+01 - 1.9861911e+03 2.6666738e+03 -1.1561687e+02 - 1.9602427e+03 2.6459218e+03 -1.9803293e+02 - 1.9335752e+03 2.6228187e+03 -2.8628754e+02 - 1.9050998e+03 2.5985210e+03 -3.7881744e+02 - 1.8736684e+03 2.5742186e+03 -4.7379993e+02 - 1.8381802e+03 2.5510133e+03 -5.6933333e+02 - 1.7976759e+03 2.5298169e+03 -6.6361822e+02 - 1.7514022e+03 2.5112884e+03 -7.5510024e+02 - 1.6988401e+03 2.4958166e+03 -8.4255249e+02 - 1.6397000e+03 2.4835401e+03 -9.2509598e+02 - 1.5738944e+03 2.4743920e+03 -1.0021724e+03 - 1.5015002e+03 2.4681527e+03 -1.0734891e+03 - 1.4227199e+03 2.4645014e+03 -1.1389539e+03 - 1.3378469e+03 2.4630604e+03 -1.1986136e+03 - 1.2472384e+03 2.4634288e+03 -1.2526020e+03 - 1.1512946e+03 2.4652065e+03 -1.3010995e+03 - 1.0504456e+03 2.4680106e+03 -1.3443046e+03 - 9.4514137e+02 2.4714858e+03 -1.3824143e+03 - 8.3584673e+02 2.4753101e+03 -1.4156127e+03 - 7.2303749e+02 2.4791985e+03 -1.4440640e+03 - 6.0719850e+02 2.4829040e+03 -1.4679093e+03 - 4.8882227e+02 2.4862180e+03 -1.4872656e+03 - 3.6840781e+02 2.4889707e+03 -1.5022267e+03 - 2.4645961e+02 2.4910306e+03 -1.5128637e+03 - 1.2348643e+02 2.4923040e+03 -1.5192263e+03 - 0.0000000e+00 2.4927347e+03 -1.5213440e+03 - -1.2348643e+02 2.4923040e+03 -1.5192263e+03 - -2.4645961e+02 2.4910306e+03 -1.5128637e+03 - -3.6840781e+02 2.4889707e+03 -1.5022267e+03 - -4.8882227e+02 2.4862180e+03 -1.4872656e+03 - -6.0719850e+02 2.4829040e+03 -1.4679093e+03 - -7.2303749e+02 2.4791985e+03 -1.4440640e+03 - -8.3584673e+02 2.4753101e+03 -1.4156127e+03 - -9.4514137e+02 2.4714858e+03 -1.3824143e+03 - -1.0504456e+03 2.4680106e+03 -1.3443046e+03 - -1.1512946e+03 2.4652065e+03 -1.3010995e+03 - -1.2472384e+03 2.4634288e+03 -1.2526020e+03 - -1.3378469e+03 2.4630604e+03 -1.1986136e+03 - -1.4227199e+03 2.4645014e+03 -1.1389539e+03 - -1.5015002e+03 2.4681527e+03 -1.0734891e+03 - -1.5738944e+03 2.4743920e+03 -1.0021724e+03 - -1.6397000e+03 2.4835401e+03 -9.2509598e+02 - -1.6988401e+03 2.4958166e+03 -8.4255249e+02 - -1.7514022e+03 2.5112884e+03 -7.5510024e+02 - -1.7976759e+03 2.5298169e+03 -6.6361822e+02 - -1.8381802e+03 2.5510133e+03 -5.6933333e+02 - -1.8736684e+03 2.5742186e+03 -4.7379993e+02 - -1.9050998e+03 2.5985210e+03 -3.7881744e+02 - -1.9335752e+03 2.6228187e+03 -2.8628754e+02 - -1.9602427e+03 2.6459218e+03 -1.9803293e+02 - -1.9861911e+03 2.6666738e+03 -1.1561687e+02 - -2.0123550e+03 2.6840664e+03 -4.0205616e+01 - -2.0394509e+03 2.6973218e+03 2.7497799e+01 - -2.0679516e+03 2.7059296e+03 8.7243546e+01 - -2.0980975e+03 2.7096417e+03 1.3916547e+02 - -2.1299323e+03 2.7084349e+03 1.8367967e+02 - -2.1633493e+03 2.7024590e+03 2.2137768e+02 - -2.1981385e+03 2.6919827e+03 2.5293285e+02 - -2.2340262e+03 2.6773462e+03 2.7902829e+02 - -2.2707052e+03 2.6589250e+03 3.0030751e+02 - -2.3078554e+03 2.6371037e+03 3.1734448e+02 - -2.3451566e+03 2.6122611e+03 3.3062789e+02 - -2.3822945e+03 2.5847608e+03 3.4055506e+02 - -2.4189621e+03 2.5549487e+03 3.4743131e+02 - -2.4548594e+03 2.5231535e+03 3.5147189e+02 - -2.4896891e+03 2.4896891e+03 3.5280463e+02 - -2.5231535e+03 2.4548594e+03 3.5147189e+02 - -2.5549487e+03 2.4189621e+03 3.4743131e+02 - -2.5847608e+03 2.3822945e+03 3.4055506e+02 - -2.6122611e+03 2.3451566e+03 3.3062789e+02 - -2.6371037e+03 2.3078554e+03 3.1734448e+02 - -2.6589250e+03 2.2707052e+03 3.0030751e+02 - -2.6773462e+03 2.2340262e+03 2.7902829e+02 - -2.6919827e+03 2.1981385e+03 2.5293285e+02 - -2.7024590e+03 2.1633493e+03 2.2137768e+02 - -2.7084349e+03 2.1299323e+03 1.8367967e+02 - -2.7096417e+03 2.0980975e+03 1.3916547e+02 - -2.7059296e+03 2.0679516e+03 8.7243546e+01 - -2.6973218e+03 2.0394509e+03 2.7497799e+01 - -2.6840664e+03 2.0123550e+03 -4.0205616e+01 - -2.6666738e+03 1.9861911e+03 -1.1561687e+02 - -2.6459218e+03 1.9602427e+03 -1.9803293e+02 - -2.6228187e+03 1.9335752e+03 -2.8628754e+02 - -2.5985210e+03 1.9050998e+03 -3.7881744e+02 - -2.5742186e+03 1.8736684e+03 -4.7379993e+02 - -2.5510133e+03 1.8381802e+03 -5.6933333e+02 - -2.5298169e+03 1.7976759e+03 -6.6361822e+02 - -2.5112884e+03 1.7514022e+03 -7.5510024e+02 - -2.4958166e+03 1.6988401e+03 -8.4255249e+02 - -2.4835401e+03 1.6397000e+03 -9.2509598e+02 - -2.4743920e+03 1.5738944e+03 -1.0021724e+03 - -2.4681527e+03 1.5015002e+03 -1.0734891e+03 - -2.4645014e+03 1.4227199e+03 -1.1389539e+03 - -2.4630604e+03 1.3378469e+03 -1.1986136e+03 - -2.4634288e+03 1.2472384e+03 -1.2526020e+03 - -2.4652065e+03 1.1512946e+03 -1.3010995e+03 - -2.4680106e+03 1.0504456e+03 -1.3443046e+03 - -2.4714858e+03 9.4514137e+02 -1.3824143e+03 - -2.4753101e+03 8.3584673e+02 -1.4156127e+03 - -2.4791985e+03 7.2303749e+02 -1.4440640e+03 - -2.4829040e+03 6.0719850e+02 -1.4679093e+03 - -2.4862180e+03 4.8882227e+02 -1.4872656e+03 - -2.4889707e+03 3.6840781e+02 -1.5022267e+03 - -2.4910306e+03 2.4645961e+02 -1.5128637e+03 - -2.4923040e+03 1.2348643e+02 -1.5192263e+03 - -2.4927347e+03 -2.4067136e-09 -1.5213440e+03 - -2.4923040e+03 -1.2348643e+02 -1.5192263e+03 - -2.4910306e+03 -2.4645961e+02 -1.5128637e+03 - -2.4889707e+03 -3.6840781e+02 -1.5022267e+03 - -2.4862180e+03 -4.8882227e+02 -1.4872656e+03 - -2.4829040e+03 -6.0719850e+02 -1.4679093e+03 - -2.4791985e+03 -7.2303749e+02 -1.4440640e+03 - -2.4753101e+03 -8.3584673e+02 -1.4156127e+03 - -2.4714858e+03 -9.4514137e+02 -1.3824143e+03 - -2.4680106e+03 -1.0504456e+03 -1.3443046e+03 - -2.4652065e+03 -1.1512946e+03 -1.3010995e+03 - -2.4634288e+03 -1.2472384e+03 -1.2526020e+03 - -2.4630604e+03 -1.3378469e+03 -1.1986136e+03 - -2.4645014e+03 -1.4227199e+03 -1.1389539e+03 - -2.4681527e+03 -1.5015002e+03 -1.0734891e+03 - -2.4743920e+03 -1.5738944e+03 -1.0021724e+03 - -2.4835401e+03 -1.6397000e+03 -9.2509598e+02 - -2.4958166e+03 -1.6988401e+03 -8.4255249e+02 - -2.5112884e+03 -1.7514022e+03 -7.5510024e+02 - -2.5298169e+03 -1.7976759e+03 -6.6361822e+02 - -2.5510133e+03 -1.8381802e+03 -5.6933333e+02 - -2.5742186e+03 -1.8736684e+03 -4.7379993e+02 - -2.5985210e+03 -1.9050998e+03 -3.7881744e+02 - -2.6228187e+03 -1.9335752e+03 -2.8628754e+02 - -2.6459218e+03 -1.9602427e+03 -1.9803293e+02 - -2.6666738e+03 -1.9861911e+03 -1.1561687e+02 - -2.6840664e+03 -2.0123550e+03 -4.0205616e+01 - -2.6973218e+03 -2.0394509e+03 2.7497799e+01 - -2.7059296e+03 -2.0679516e+03 8.7243546e+01 - -2.7096417e+03 -2.0980975e+03 1.3916547e+02 - -2.7084349e+03 -2.1299323e+03 1.8367967e+02 - -2.7024590e+03 -2.1633493e+03 2.2137768e+02 - -2.6919827e+03 -2.1981385e+03 2.5293285e+02 - -2.6773462e+03 -2.2340262e+03 2.7902829e+02 - -2.6589250e+03 -2.2707052e+03 3.0030751e+02 - -2.6371037e+03 -2.3078554e+03 3.1734448e+02 - -2.6122611e+03 -2.3451566e+03 3.3062789e+02 - -2.5847608e+03 -2.3822945e+03 3.4055506e+02 - -2.5549487e+03 -2.4189621e+03 3.4743131e+02 - -2.5231535e+03 -2.4548594e+03 3.5147189e+02 - -2.4896891e+03 -2.4896891e+03 3.5280463e+02 - -2.4548594e+03 -2.5231535e+03 3.5147189e+02 - -2.4189621e+03 -2.5549487e+03 3.4743131e+02 - -2.3822945e+03 -2.5847608e+03 3.4055506e+02 - -2.3451566e+03 -2.6122611e+03 3.3062789e+02 - -2.3078554e+03 -2.6371037e+03 3.1734448e+02 - -2.2707052e+03 -2.6589250e+03 3.0030751e+02 - -2.2340262e+03 -2.6773462e+03 2.7902829e+02 - -2.1981385e+03 -2.6919827e+03 2.5293285e+02 - -2.1633493e+03 -2.7024590e+03 2.2137768e+02 - -2.1299323e+03 -2.7084349e+03 1.8367967e+02 - -2.0980975e+03 -2.7096417e+03 1.3916547e+02 - -2.0679516e+03 -2.7059296e+03 8.7243546e+01 - -2.0394509e+03 -2.6973218e+03 2.7497799e+01 - -2.0123550e+03 -2.6840664e+03 -4.0205616e+01 - -1.9861911e+03 -2.6666738e+03 -1.1561687e+02 - -1.9602427e+03 -2.6459218e+03 -1.9803293e+02 - -1.9335752e+03 -2.6228187e+03 -2.8628754e+02 - -1.9050998e+03 -2.5985210e+03 -3.7881744e+02 - -1.8736684e+03 -2.5742186e+03 -4.7379993e+02 - -1.8381802e+03 -2.5510133e+03 -5.6933333e+02 - -1.7976759e+03 -2.5298169e+03 -6.6361822e+02 - -1.7514022e+03 -2.5112884e+03 -7.5510024e+02 - -1.6988401e+03 -2.4958166e+03 -8.4255249e+02 - -1.6397000e+03 -2.4835401e+03 -9.2509598e+02 - -1.5738944e+03 -2.4743920e+03 -1.0021724e+03 - -1.5015002e+03 -2.4681527e+03 -1.0734891e+03 - -1.4227199e+03 -2.4645014e+03 -1.1389539e+03 - -1.3378469e+03 -2.4630604e+03 -1.1986136e+03 - -1.2472384e+03 -2.4634288e+03 -1.2526020e+03 - -1.1512946e+03 -2.4652065e+03 -1.3010995e+03 - -1.0504456e+03 -2.4680106e+03 -1.3443046e+03 - -9.4514137e+02 -2.4714858e+03 -1.3824143e+03 - -8.3584673e+02 -2.4753101e+03 -1.4156127e+03 - -7.2303749e+02 -2.4791985e+03 -1.4440640e+03 - -6.0719850e+02 -2.4829040e+03 -1.4679093e+03 - -4.8882227e+02 -2.4862180e+03 -1.4872656e+03 - -3.6840781e+02 -2.4889707e+03 -1.5022267e+03 - -2.4645961e+02 -2.4910306e+03 -1.5128637e+03 - -1.2348643e+02 -2.4923040e+03 -1.5192263e+03 - -2.4067136e-09 -2.4927347e+03 -1.5213440e+03 - 1.2348643e+02 -2.4923040e+03 -1.5192263e+03 - 2.4645961e+02 -2.4910306e+03 -1.5128637e+03 - 3.6840781e+02 -2.4889707e+03 -1.5022267e+03 - 4.8882227e+02 -2.4862180e+03 -1.4872656e+03 - 6.0719850e+02 -2.4829040e+03 -1.4679093e+03 - 7.2303749e+02 -2.4791985e+03 -1.4440640e+03 - 8.3584673e+02 -2.4753101e+03 -1.4156127e+03 - 9.4514137e+02 -2.4714858e+03 -1.3824143e+03 - 1.0504456e+03 -2.4680106e+03 -1.3443046e+03 - 1.1512946e+03 -2.4652065e+03 -1.3010995e+03 - 1.2472384e+03 -2.4634288e+03 -1.2526020e+03 - 1.3378469e+03 -2.4630604e+03 -1.1986136e+03 - 1.4227199e+03 -2.4645014e+03 -1.1389539e+03 - 1.5015002e+03 -2.4681527e+03 -1.0734891e+03 - 1.5738944e+03 -2.4743920e+03 -1.0021724e+03 - 1.6397000e+03 -2.4835401e+03 -9.2509598e+02 - 1.6988401e+03 -2.4958166e+03 -8.4255249e+02 - 1.7514022e+03 -2.5112884e+03 -7.5510024e+02 - 1.7976759e+03 -2.5298169e+03 -6.6361822e+02 - 1.8381802e+03 -2.5510133e+03 -5.6933333e+02 - 1.8736684e+03 -2.5742186e+03 -4.7379993e+02 - 1.9050998e+03 -2.5985210e+03 -3.7881744e+02 - 1.9335752e+03 -2.6228187e+03 -2.8628754e+02 - 1.9602427e+03 -2.6459218e+03 -1.9803293e+02 - 1.9861911e+03 -2.6666738e+03 -1.1561687e+02 - 2.0123550e+03 -2.6840664e+03 -4.0205616e+01 - 2.0394509e+03 -2.6973218e+03 2.7497799e+01 - 2.0679516e+03 -2.7059296e+03 8.7243546e+01 - 2.0980975e+03 -2.7096417e+03 1.3916547e+02 - 2.1299323e+03 -2.7084349e+03 1.8367967e+02 - 2.1633493e+03 -2.7024590e+03 2.2137768e+02 - 2.1981385e+03 -2.6919827e+03 2.5293285e+02 - 2.2340262e+03 -2.6773462e+03 2.7902829e+02 - 2.2707052e+03 -2.6589250e+03 3.0030751e+02 - 2.3078554e+03 -2.6371037e+03 3.1734448e+02 - 2.3451566e+03 -2.6122611e+03 3.3062789e+02 - 2.3822945e+03 -2.5847608e+03 3.4055506e+02 - 2.4189621e+03 -2.5549487e+03 3.4743131e+02 - 2.4548594e+03 -2.5231535e+03 3.5147189e+02 - 2.4896891e+03 -2.4896891e+03 3.5280463e+02 - 2.5231535e+03 -2.4548594e+03 3.5147189e+02 - 2.5549487e+03 -2.4189621e+03 3.4743131e+02 - 2.5847608e+03 -2.3822945e+03 3.4055506e+02 - 2.6122611e+03 -2.3451566e+03 3.3062789e+02 - 2.6371037e+03 -2.3078554e+03 3.1734448e+02 - 2.6589250e+03 -2.2707052e+03 3.0030751e+02 - 2.6773462e+03 -2.2340262e+03 2.7902829e+02 - 2.6919827e+03 -2.1981385e+03 2.5293285e+02 - 2.7024590e+03 -2.1633493e+03 2.2137768e+02 - 2.7084349e+03 -2.1299323e+03 1.8367967e+02 - 2.7096417e+03 -2.0980975e+03 1.3916547e+02 - 2.7059296e+03 -2.0679516e+03 8.7243546e+01 - 2.6973218e+03 -2.0394509e+03 2.7497799e+01 - 2.6840664e+03 -2.0123550e+03 -4.0205616e+01 - 2.6666738e+03 -1.9861911e+03 -1.1561687e+02 - 2.6459218e+03 -1.9602427e+03 -1.9803293e+02 - 2.6228187e+03 -1.9335752e+03 -2.8628754e+02 - 2.5985210e+03 -1.9050998e+03 -3.7881744e+02 - 2.5742186e+03 -1.8736684e+03 -4.7379993e+02 - 2.5510133e+03 -1.8381802e+03 -5.6933333e+02 - 2.5298169e+03 -1.7976759e+03 -6.6361822e+02 - 2.5112884e+03 -1.7514022e+03 -7.5510024e+02 - 2.4958166e+03 -1.6988401e+03 -8.4255249e+02 - 2.4835401e+03 -1.6397000e+03 -9.2509598e+02 - 2.4743920e+03 -1.5738944e+03 -1.0021724e+03 - 2.4681527e+03 -1.5015002e+03 -1.0734891e+03 - 2.4645014e+03 -1.4227199e+03 -1.1389539e+03 - 2.4630604e+03 -1.3378469e+03 -1.1986136e+03 - 2.4634288e+03 -1.2472384e+03 -1.2526020e+03 - 2.4652065e+03 -1.1512946e+03 -1.3010995e+03 - 2.4680106e+03 -1.0504456e+03 -1.3443046e+03 - 2.4714858e+03 -9.4514137e+02 -1.3824143e+03 - 2.4753101e+03 -8.3584673e+02 -1.4156127e+03 - 2.4791985e+03 -7.2303749e+02 -1.4440640e+03 - 2.4829040e+03 -6.0719850e+02 -1.4679093e+03 - 2.4862180e+03 -4.8882227e+02 -1.4872656e+03 - 2.4889707e+03 -3.6840781e+02 -1.5022267e+03 - 2.4910306e+03 -2.4645961e+02 -1.5128637e+03 - 2.4923040e+03 -1.2348643e+02 -1.5192263e+03 - 2.4927347e+03 0.0000000e+00 -1.5213440e+03 - 2.4644670e+03 2.4067136e-09 -1.5957146e+03 - 2.4642411e+03 1.1779721e+02 -1.5933382e+03 - 2.4635837e+03 2.3507386e+02 -1.5861966e+03 - 2.4625556e+03 3.5131080e+02 -1.5742534e+03 - 2.4612584e+03 4.6599172e+02 -1.5574473e+03 - 2.4598341e+03 5.7860462e+02 -1.5356927e+03 - 2.4584651e+03 6.8864352e+02 -1.5088796e+03 - 2.4573732e+03 7.9561038e+02 -1.4768757e+03 - 2.4568180e+03 8.9901779e+02 -1.4395286e+03 - 2.4570942e+03 9.9839274e+02 -1.3966729e+03 - 2.4585256e+03 1.0932821e+03 -1.3481391e+03 - 2.4614569e+03 1.1832606e+03 -1.2937703e+03 - 2.4662399e+03 1.2679425e+03 -1.2334445e+03 - 2.4732146e+03 1.3469981e+03 -1.1671069e+03 - 2.4826815e+03 1.4201741e+03 -1.0948115e+03 - 2.4948680e+03 1.4873211e+03 -1.0167706e+03 - 2.5098866e+03 1.5484229e+03 -9.3340900e+02 - 2.5276909e+03 1.6036266e+03 -8.4541373e+02 - 2.5480366e+03 1.6532671e+03 -7.5376742e+02 - 2.5704557e+03 1.6978767e+03 -6.5975000e+02 - 2.5942567e+03 1.7381733e+03 -5.6489602e+02 - 2.6185570e+03 1.7750229e+03 -4.7090268e+02 - 2.6423489e+03 1.8093754e+03 -3.7949718e+02 - 2.6645902e+03 1.8421865e+03 -2.9228618e+02 - 2.6843003e+03 1.8743369e+03 -2.1061843e+02 - 2.7006440e+03 1.9065672e+03 -1.3548869e+02 - 2.7129868e+03 1.9394378e+03 -6.7498709e+01 - 2.7209156e+03 1.9733171e+03 -6.8742068e+00 - 2.7242296e+03 2.0083941e+03 4.6476501e+01 - 2.7229093e+03 2.0447069e+03 9.2882156e+01 - 2.7170751e+03 2.0821773e+03 1.3282501e+02 - 2.7069464e+03 2.1206459e+03 1.6686674e+02 - 2.6928033e+03 2.1599011e+03 1.9559011e+02 - 2.6749587e+03 2.1997026e+03 2.1955727e+02 - 2.6537359e+03 2.2397970e+03 2.3928293e+02 - 2.6294557e+03 2.2799290e+03 2.5521897e+02 - 2.6024277e+03 2.3198460e+03 2.6774707e+02 - 2.5729465e+03 2.3593014e+03 2.7717649e+02 - 2.5412910e+03 2.3980540e+03 2.8374472e+02 - 2.5077258e+03 2.4358666e+03 2.8761932e+02 - 2.4725032e+03 2.4725032e+03 2.8889984e+02 - 2.4358666e+03 2.5077258e+03 2.8761932e+02 - 2.3980540e+03 2.5412910e+03 2.8374472e+02 - 2.3593014e+03 2.5729465e+03 2.7717649e+02 - 2.3198460e+03 2.6024277e+03 2.6774707e+02 - 2.2799290e+03 2.6294557e+03 2.5521897e+02 - 2.2397970e+03 2.6537359e+03 2.3928293e+02 - 2.1997026e+03 2.6749587e+03 2.1955727e+02 - 2.1599011e+03 2.6928033e+03 1.9559011e+02 - 2.1206459e+03 2.7069464e+03 1.6686674e+02 - 2.0821773e+03 2.7170751e+03 1.3282501e+02 - 2.0447069e+03 2.7229093e+03 9.2882156e+01 - 2.0083941e+03 2.7242296e+03 4.6476501e+01 - 1.9733171e+03 2.7209156e+03 -6.8742068e+00 - 1.9394378e+03 2.7129868e+03 -6.7498709e+01 - 1.9065672e+03 2.7006440e+03 -1.3548869e+02 - 1.8743369e+03 2.6843003e+03 -2.1061843e+02 - 1.8421865e+03 2.6645902e+03 -2.9228618e+02 - 1.8093754e+03 2.6423489e+03 -3.7949718e+02 - 1.7750229e+03 2.6185570e+03 -4.7090268e+02 - 1.7381733e+03 2.5942567e+03 -5.6489602e+02 - 1.6978767e+03 2.5704557e+03 -6.5975000e+02 - 1.6532671e+03 2.5480366e+03 -7.5376742e+02 - 1.6036266e+03 2.5276909e+03 -8.4541373e+02 - 1.5484229e+03 2.5098866e+03 -9.3340900e+02 - 1.4873211e+03 2.4948680e+03 -1.0167706e+03 - 1.4201741e+03 2.4826815e+03 -1.0948115e+03 - 1.3469981e+03 2.4732146e+03 -1.1671069e+03 - 1.2679425e+03 2.4662399e+03 -1.2334445e+03 - 1.1832606e+03 2.4614569e+03 -1.2937703e+03 - 1.0932821e+03 2.4585256e+03 -1.3481391e+03 - 9.9839274e+02 2.4570942e+03 -1.3966729e+03 - 8.9901779e+02 2.4568180e+03 -1.4395286e+03 - 7.9561038e+02 2.4573732e+03 -1.4768757e+03 - 6.8864352e+02 2.4584651e+03 -1.5088796e+03 - 5.7860462e+02 2.4598341e+03 -1.5356927e+03 - 4.6599172e+02 2.4612584e+03 -1.5574473e+03 - 3.5131080e+02 2.4625556e+03 -1.5742534e+03 - 2.3507386e+02 2.4635837e+03 -1.5861966e+03 - 1.1779721e+02 2.4642411e+03 -1.5933382e+03 - -2.4067136e-09 2.4644670e+03 -1.5957146e+03 - -1.1779721e+02 2.4642411e+03 -1.5933382e+03 - -2.3507386e+02 2.4635837e+03 -1.5861966e+03 - -3.5131080e+02 2.4625556e+03 -1.5742534e+03 - -4.6599172e+02 2.4612584e+03 -1.5574473e+03 - -5.7860462e+02 2.4598341e+03 -1.5356927e+03 - -6.8864352e+02 2.4584651e+03 -1.5088796e+03 - -7.9561038e+02 2.4573732e+03 -1.4768757e+03 - -8.9901779e+02 2.4568180e+03 -1.4395286e+03 - -9.9839274e+02 2.4570942e+03 -1.3966729e+03 - -1.0932821e+03 2.4585256e+03 -1.3481391e+03 - -1.1832606e+03 2.4614569e+03 -1.2937703e+03 - -1.2679425e+03 2.4662399e+03 -1.2334445e+03 - -1.3469981e+03 2.4732146e+03 -1.1671069e+03 - -1.4201741e+03 2.4826815e+03 -1.0948115e+03 - -1.4873211e+03 2.4948680e+03 -1.0167706e+03 - -1.5484229e+03 2.5098866e+03 -9.3340900e+02 - -1.6036266e+03 2.5276909e+03 -8.4541373e+02 - -1.6532671e+03 2.5480366e+03 -7.5376742e+02 - -1.6978767e+03 2.5704557e+03 -6.5975000e+02 - -1.7381733e+03 2.5942567e+03 -5.6489602e+02 - -1.7750229e+03 2.6185570e+03 -4.7090268e+02 - -1.8093754e+03 2.6423489e+03 -3.7949718e+02 - -1.8421865e+03 2.6645902e+03 -2.9228618e+02 - -1.8743369e+03 2.6843003e+03 -2.1061843e+02 - -1.9065672e+03 2.7006440e+03 -1.3548869e+02 - -1.9394378e+03 2.7129868e+03 -6.7498709e+01 - -1.9733171e+03 2.7209156e+03 -6.8742068e+00 - -2.0083941e+03 2.7242296e+03 4.6476501e+01 - -2.0447069e+03 2.7229093e+03 9.2882156e+01 - -2.0821773e+03 2.7170751e+03 1.3282501e+02 - -2.1206459e+03 2.7069464e+03 1.6686674e+02 - -2.1599011e+03 2.6928033e+03 1.9559011e+02 - -2.1997026e+03 2.6749587e+03 2.1955727e+02 - -2.2397970e+03 2.6537359e+03 2.3928293e+02 - -2.2799290e+03 2.6294557e+03 2.5521897e+02 - -2.3198460e+03 2.6024277e+03 2.6774707e+02 - -2.3593014e+03 2.5729465e+03 2.7717649e+02 - -2.3980540e+03 2.5412910e+03 2.8374472e+02 - -2.4358666e+03 2.5077258e+03 2.8761932e+02 - -2.4725032e+03 2.4725032e+03 2.8889984e+02 - -2.5077258e+03 2.4358666e+03 2.8761932e+02 - -2.5412910e+03 2.3980540e+03 2.8374472e+02 - -2.5729465e+03 2.3593014e+03 2.7717649e+02 - -2.6024277e+03 2.3198460e+03 2.6774707e+02 - -2.6294557e+03 2.2799290e+03 2.5521897e+02 - -2.6537359e+03 2.2397970e+03 2.3928293e+02 - -2.6749587e+03 2.1997026e+03 2.1955727e+02 - -2.6928033e+03 2.1599011e+03 1.9559011e+02 - -2.7069464e+03 2.1206459e+03 1.6686674e+02 - -2.7170751e+03 2.0821773e+03 1.3282501e+02 - -2.7229093e+03 2.0447069e+03 9.2882156e+01 - -2.7242296e+03 2.0083941e+03 4.6476501e+01 - -2.7209156e+03 1.9733171e+03 -6.8742068e+00 - -2.7129868e+03 1.9394378e+03 -6.7498709e+01 - -2.7006440e+03 1.9065672e+03 -1.3548869e+02 - -2.6843003e+03 1.8743369e+03 -2.1061843e+02 - -2.6645902e+03 1.8421865e+03 -2.9228618e+02 - -2.6423489e+03 1.8093754e+03 -3.7949718e+02 - -2.6185570e+03 1.7750229e+03 -4.7090268e+02 - -2.5942567e+03 1.7381733e+03 -5.6489602e+02 - -2.5704557e+03 1.6978767e+03 -6.5975000e+02 - -2.5480366e+03 1.6532671e+03 -7.5376742e+02 - -2.5276909e+03 1.6036266e+03 -8.4541373e+02 - -2.5098866e+03 1.5484229e+03 -9.3340900e+02 - -2.4948680e+03 1.4873211e+03 -1.0167706e+03 - -2.4826815e+03 1.4201741e+03 -1.0948115e+03 - -2.4732146e+03 1.3469981e+03 -1.1671069e+03 - -2.4662399e+03 1.2679425e+03 -1.2334445e+03 - -2.4614569e+03 1.1832606e+03 -1.2937703e+03 - -2.4585256e+03 1.0932821e+03 -1.3481391e+03 - -2.4570942e+03 9.9839274e+02 -1.3966729e+03 - -2.4568180e+03 8.9901779e+02 -1.4395286e+03 - -2.4573732e+03 7.9561038e+02 -1.4768757e+03 - -2.4584651e+03 6.8864352e+02 -1.5088796e+03 - -2.4598341e+03 5.7860462e+02 -1.5356927e+03 - -2.4612584e+03 4.6599172e+02 -1.5574473e+03 - -2.4625556e+03 3.5131080e+02 -1.5742534e+03 - -2.4635837e+03 2.3507386e+02 -1.5861966e+03 - -2.4642411e+03 1.1779721e+02 -1.5933382e+03 - -2.4644670e+03 -7.2201409e-09 -1.5957146e+03 - -2.4642411e+03 -1.1779721e+02 -1.5933382e+03 - -2.4635837e+03 -2.3507386e+02 -1.5861966e+03 - -2.4625556e+03 -3.5131080e+02 -1.5742534e+03 - -2.4612584e+03 -4.6599172e+02 -1.5574473e+03 - -2.4598341e+03 -5.7860462e+02 -1.5356927e+03 - -2.4584651e+03 -6.8864352e+02 -1.5088796e+03 - -2.4573732e+03 -7.9561038e+02 -1.4768757e+03 - -2.4568180e+03 -8.9901779e+02 -1.4395286e+03 - -2.4570942e+03 -9.9839274e+02 -1.3966729e+03 - -2.4585256e+03 -1.0932821e+03 -1.3481391e+03 - -2.4614569e+03 -1.1832606e+03 -1.2937703e+03 - -2.4662399e+03 -1.2679425e+03 -1.2334445e+03 - -2.4732146e+03 -1.3469981e+03 -1.1671069e+03 - -2.4826815e+03 -1.4201741e+03 -1.0948115e+03 - -2.4948680e+03 -1.4873211e+03 -1.0167706e+03 - -2.5098866e+03 -1.5484229e+03 -9.3340900e+02 - -2.5276909e+03 -1.6036266e+03 -8.4541373e+02 - -2.5480366e+03 -1.6532671e+03 -7.5376742e+02 - -2.5704557e+03 -1.6978767e+03 -6.5975000e+02 - -2.5942567e+03 -1.7381733e+03 -5.6489602e+02 - -2.6185570e+03 -1.7750229e+03 -4.7090268e+02 - -2.6423489e+03 -1.8093754e+03 -3.7949718e+02 - -2.6645902e+03 -1.8421865e+03 -2.9228618e+02 - -2.6843003e+03 -1.8743369e+03 -2.1061843e+02 - -2.7006440e+03 -1.9065672e+03 -1.3548869e+02 - -2.7129868e+03 -1.9394378e+03 -6.7498709e+01 - -2.7209156e+03 -1.9733171e+03 -6.8742068e+00 - -2.7242296e+03 -2.0083941e+03 4.6476501e+01 - -2.7229093e+03 -2.0447069e+03 9.2882156e+01 - -2.7170751e+03 -2.0821773e+03 1.3282501e+02 - -2.7069464e+03 -2.1206459e+03 1.6686674e+02 - -2.6928033e+03 -2.1599011e+03 1.9559011e+02 - -2.6749587e+03 -2.1997026e+03 2.1955727e+02 - -2.6537359e+03 -2.2397970e+03 2.3928293e+02 - -2.6294557e+03 -2.2799290e+03 2.5521897e+02 - -2.6024277e+03 -2.3198460e+03 2.6774707e+02 - -2.5729465e+03 -2.3593014e+03 2.7717649e+02 - -2.5412910e+03 -2.3980540e+03 2.8374472e+02 - -2.5077258e+03 -2.4358666e+03 2.8761932e+02 - -2.4725032e+03 -2.4725032e+03 2.8889984e+02 - -2.4358666e+03 -2.5077258e+03 2.8761932e+02 - -2.3980540e+03 -2.5412910e+03 2.8374472e+02 - -2.3593014e+03 -2.5729465e+03 2.7717649e+02 - -2.3198460e+03 -2.6024277e+03 2.6774707e+02 - -2.2799290e+03 -2.6294557e+03 2.5521897e+02 - -2.2397970e+03 -2.6537359e+03 2.3928293e+02 - -2.1997026e+03 -2.6749587e+03 2.1955727e+02 - -2.1599011e+03 -2.6928033e+03 1.9559011e+02 - -2.1206459e+03 -2.7069464e+03 1.6686674e+02 - -2.0821773e+03 -2.7170751e+03 1.3282501e+02 - -2.0447069e+03 -2.7229093e+03 9.2882156e+01 - -2.0083941e+03 -2.7242296e+03 4.6476501e+01 - -1.9733171e+03 -2.7209156e+03 -6.8742068e+00 - -1.9394378e+03 -2.7129868e+03 -6.7498709e+01 - -1.9065672e+03 -2.7006440e+03 -1.3548869e+02 - -1.8743369e+03 -2.6843003e+03 -2.1061843e+02 - -1.8421865e+03 -2.6645902e+03 -2.9228618e+02 - -1.8093754e+03 -2.6423489e+03 -3.7949718e+02 - -1.7750229e+03 -2.6185570e+03 -4.7090268e+02 - -1.7381733e+03 -2.5942567e+03 -5.6489602e+02 - -1.6978767e+03 -2.5704557e+03 -6.5975000e+02 - -1.6532671e+03 -2.5480366e+03 -7.5376742e+02 - -1.6036266e+03 -2.5276909e+03 -8.4541373e+02 - -1.5484229e+03 -2.5098866e+03 -9.3340900e+02 - -1.4873211e+03 -2.4948680e+03 -1.0167706e+03 - -1.4201741e+03 -2.4826815e+03 -1.0948115e+03 - -1.3469981e+03 -2.4732146e+03 -1.1671069e+03 - -1.2679425e+03 -2.4662399e+03 -1.2334445e+03 - -1.1832606e+03 -2.4614569e+03 -1.2937703e+03 - -1.0932821e+03 -2.4585256e+03 -1.3481391e+03 - -9.9839274e+02 -2.4570942e+03 -1.3966729e+03 - -8.9901779e+02 -2.4568180e+03 -1.4395286e+03 - -7.9561038e+02 -2.4573732e+03 -1.4768757e+03 - -6.8864352e+02 -2.4584651e+03 -1.5088796e+03 - -5.7860462e+02 -2.4598341e+03 -1.5356927e+03 - -4.6599172e+02 -2.4612584e+03 -1.5574473e+03 - -3.5131080e+02 -2.4625556e+03 -1.5742534e+03 - -2.3507386e+02 -2.4635837e+03 -1.5861966e+03 - -1.1779721e+02 -2.4642411e+03 -1.5933382e+03 - 0.0000000e+00 -2.4644670e+03 -1.5957146e+03 - 1.1779721e+02 -2.4642411e+03 -1.5933382e+03 - 2.3507386e+02 -2.4635837e+03 -1.5861966e+03 - 3.5131080e+02 -2.4625556e+03 -1.5742534e+03 - 4.6599172e+02 -2.4612584e+03 -1.5574473e+03 - 5.7860462e+02 -2.4598341e+03 -1.5356927e+03 - 6.8864352e+02 -2.4584651e+03 -1.5088796e+03 - 7.9561038e+02 -2.4573732e+03 -1.4768757e+03 - 8.9901779e+02 -2.4568180e+03 -1.4395286e+03 - 9.9839274e+02 -2.4570942e+03 -1.3966729e+03 - 1.0932821e+03 -2.4585256e+03 -1.3481391e+03 - 1.1832606e+03 -2.4614569e+03 -1.2937703e+03 - 1.2679425e+03 -2.4662399e+03 -1.2334445e+03 - 1.3469981e+03 -2.4732146e+03 -1.1671069e+03 - 1.4201741e+03 -2.4826815e+03 -1.0948115e+03 - 1.4873211e+03 -2.4948680e+03 -1.0167706e+03 - 1.5484229e+03 -2.5098866e+03 -9.3340900e+02 - 1.6036266e+03 -2.5276909e+03 -8.4541373e+02 - 1.6532671e+03 -2.5480366e+03 -7.5376742e+02 - 1.6978767e+03 -2.5704557e+03 -6.5975000e+02 - 1.7381733e+03 -2.5942567e+03 -5.6489602e+02 - 1.7750229e+03 -2.6185570e+03 -4.7090268e+02 - 1.8093754e+03 -2.6423489e+03 -3.7949718e+02 - 1.8421865e+03 -2.6645902e+03 -2.9228618e+02 - 1.8743369e+03 -2.6843003e+03 -2.1061843e+02 - 1.9065672e+03 -2.7006440e+03 -1.3548869e+02 - 1.9394378e+03 -2.7129868e+03 -6.7498709e+01 - 1.9733171e+03 -2.7209156e+03 -6.8742068e+00 - 2.0083941e+03 -2.7242296e+03 4.6476501e+01 - 2.0447069e+03 -2.7229093e+03 9.2882156e+01 - 2.0821773e+03 -2.7170751e+03 1.3282501e+02 - 2.1206459e+03 -2.7069464e+03 1.6686674e+02 - 2.1599011e+03 -2.6928033e+03 1.9559011e+02 - 2.1997026e+03 -2.6749587e+03 2.1955727e+02 - 2.2397970e+03 -2.6537359e+03 2.3928293e+02 - 2.2799290e+03 -2.6294557e+03 2.5521897e+02 - 2.3198460e+03 -2.6024277e+03 2.6774707e+02 - 2.3593014e+03 -2.5729465e+03 2.7717649e+02 - 2.3980540e+03 -2.5412910e+03 2.8374472e+02 - 2.4358666e+03 -2.5077258e+03 2.8761932e+02 - 2.4725032e+03 -2.4725032e+03 2.8889984e+02 - 2.5077258e+03 -2.4358666e+03 2.8761932e+02 - 2.5412910e+03 -2.3980540e+03 2.8374472e+02 - 2.5729465e+03 -2.3593014e+03 2.7717649e+02 - 2.6024277e+03 -2.3198460e+03 2.6774707e+02 - 2.6294557e+03 -2.2799290e+03 2.5521897e+02 - 2.6537359e+03 -2.2397970e+03 2.3928293e+02 - 2.6749587e+03 -2.1997026e+03 2.1955727e+02 - 2.6928033e+03 -2.1599011e+03 1.9559011e+02 - 2.7069464e+03 -2.1206459e+03 1.6686674e+02 - 2.7170751e+03 -2.0821773e+03 1.3282501e+02 - 2.7229093e+03 -2.0447069e+03 9.2882156e+01 - 2.7242296e+03 -2.0083941e+03 4.6476501e+01 - 2.7209156e+03 -1.9733171e+03 -6.8742068e+00 - 2.7129868e+03 -1.9394378e+03 -6.7498709e+01 - 2.7006440e+03 -1.9065672e+03 -1.3548869e+02 - 2.6843003e+03 -1.8743369e+03 -2.1061843e+02 - 2.6645902e+03 -1.8421865e+03 -2.9228618e+02 - 2.6423489e+03 -1.8093754e+03 -3.7949718e+02 - 2.6185570e+03 -1.7750229e+03 -4.7090268e+02 - 2.5942567e+03 -1.7381733e+03 -5.6489602e+02 - 2.5704557e+03 -1.6978767e+03 -6.5975000e+02 - 2.5480366e+03 -1.6532671e+03 -7.5376742e+02 - 2.5276909e+03 -1.6036266e+03 -8.4541373e+02 - 2.5098866e+03 -1.5484229e+03 -9.3340900e+02 - 2.4948680e+03 -1.4873211e+03 -1.0167706e+03 - 2.4826815e+03 -1.4201741e+03 -1.0948115e+03 - 2.4732146e+03 -1.3469981e+03 -1.1671069e+03 - 2.4662399e+03 -1.2679425e+03 -1.2334445e+03 - 2.4614569e+03 -1.1832606e+03 -1.2937703e+03 - 2.4585256e+03 -1.0932821e+03 -1.3481391e+03 - 2.4570942e+03 -9.9839274e+02 -1.3966729e+03 - 2.4568180e+03 -8.9901779e+02 -1.4395286e+03 - 2.4573732e+03 -7.9561038e+02 -1.4768757e+03 - 2.4584651e+03 -6.8864352e+02 -1.5088796e+03 - 2.4598341e+03 -5.7860462e+02 -1.5356927e+03 - 2.4612584e+03 -4.6599172e+02 -1.5574473e+03 - 2.4625556e+03 -3.5131080e+02 -1.5742534e+03 - 2.4635837e+03 -2.3507386e+02 -1.5861966e+03 - 2.4642411e+03 -1.1779721e+02 -1.5933382e+03 - 2.4644670e+03 4.8134273e-09 -1.5957146e+03 - 2.4351001e+03 -2.4067136e-09 -1.6686333e+03 - 2.4351231e+03 1.1134136e+02 -1.6659399e+03 - 2.4352142e+03 2.2215354e+02 -1.6578453e+03 - 2.4354387e+03 3.3190924e+02 -1.6443077e+03 - 2.4359055e+03 4.4008510e+02 -1.6252577e+03 - 2.4367653e+03 5.4616409e+02 -1.6006013e+03 - 2.4382091e+03 6.4963857e+02 -1.5702229e+03 - 2.4404650e+03 7.5001428e+02 -1.5339913e+03 - 2.4437930e+03 8.4681586e+02 -1.4917691e+03 - 2.4484772e+03 9.3959439e+02 -1.4434262e+03 - 2.4548141e+03 1.0279377e+03 -1.3888601e+03 - 2.4630957e+03 1.1114839e+03 -1.3280222e+03 - 2.4735874e+03 1.1899390e+03 -1.2609531e+03 - 2.4864993e+03 1.2630982e+03 -1.1878236e+03 - 2.5019525e+03 1.3308692e+03 -1.1089806e+03 - 2.5199422e+03 1.3932965e+03 -1.0249904e+03 - 2.5403038e+03 1.4505809e+03 -9.3667231e+02 - 2.5626878e+03 1.5030899e+03 -8.4510950e+02 - 2.5865522e+03 1.5513532e+03 -7.5162755e+02 - 2.6111796e+03 1.5960384e+03 -6.5773450e+02 - 2.6357199e+03 1.6379081e+03 -5.6502452e+02 - 2.6592561e+03 1.6777618e+03 -4.7505843e+02 - 2.6808812e+03 1.7163730e+03 -3.8924221e+02 - 2.6997722e+03 1.7544317e+03 -3.0872638e+02 - 2.7152484e+03 1.7925025e+03 -2.3434386e+02 - 2.7268054e+03 1.8310026e+03 -1.6659279e+02 - 2.7341229e+03 1.8701997e+03 -1.0565975e+02 - 2.7370520e+03 1.9102262e+03 -5.1471113e+01 - 2.7355886e+03 1.9511017e+03 -3.7579280e+00 - 2.7298399e+03 1.9927593e+03 3.7878300e+01 - 2.7199925e+03 2.0350713e+03 7.3907431e+01 - 2.7062831e+03 2.0778702e+03 1.0482422e+02 - 2.6889757e+03 2.1209659e+03 1.3111428e+02 - 2.6683447e+03 2.1641574e+03 1.5323121e+02 - 2.6446633e+03 2.2072410e+03 1.7158262e+02 - 2.6181961e+03 2.2500148e+03 1.8652267e+02 - 2.5891957e+03 2.2922810e+03 1.9834896e+02 - 2.5579009e+03 2.3338461e+03 2.0730221e+02 - 2.5245369e+03 2.3745204e+03 2.1356724e+02 - 2.4893173e+03 2.4141160e+03 2.1727454e+02 - 2.4524451e+03 2.4524451e+03 2.1850172e+02 - 2.4141160e+03 2.4893173e+03 2.1727454e+02 - 2.3745204e+03 2.5245369e+03 2.1356724e+02 - 2.3338461e+03 2.5579009e+03 2.0730221e+02 - 2.2922810e+03 2.5891957e+03 1.9834896e+02 - 2.2500148e+03 2.6181961e+03 1.8652267e+02 - 2.2072410e+03 2.6446633e+03 1.7158262e+02 - 2.1641574e+03 2.6683447e+03 1.5323121e+02 - 2.1209659e+03 2.6889757e+03 1.3111428e+02 - 2.0778702e+03 2.7062831e+03 1.0482422e+02 - 2.0350713e+03 2.7199925e+03 7.3907431e+01 - 1.9927593e+03 2.7298399e+03 3.7878300e+01 - 1.9511017e+03 2.7355886e+03 -3.7579280e+00 - 1.9102262e+03 2.7370520e+03 -5.1471113e+01 - 1.8701997e+03 2.7341229e+03 -1.0565975e+02 - 1.8310026e+03 2.7268054e+03 -1.6659279e+02 - 1.7925025e+03 2.7152484e+03 -2.3434386e+02 - 1.7544317e+03 2.6997722e+03 -3.0872638e+02 - 1.7163730e+03 2.6808812e+03 -3.8924221e+02 - 1.6777618e+03 2.6592561e+03 -4.7505843e+02 - 1.6379081e+03 2.6357199e+03 -5.6502452e+02 - 1.5960384e+03 2.6111796e+03 -6.5773450e+02 - 1.5513532e+03 2.5865522e+03 -7.5162755e+02 - 1.5030899e+03 2.5626878e+03 -8.4510950e+02 - 1.4505809e+03 2.5403038e+03 -9.3667231e+02 - 1.3932965e+03 2.5199422e+03 -1.0249904e+03 - 1.3308692e+03 2.5019525e+03 -1.1089806e+03 - 1.2630982e+03 2.4864993e+03 -1.1878236e+03 - 1.1899390e+03 2.4735874e+03 -1.2609531e+03 - 1.1114839e+03 2.4630957e+03 -1.3280222e+03 - 1.0279377e+03 2.4548141e+03 -1.3888601e+03 - 9.3959439e+02 2.4484772e+03 -1.4434262e+03 - 8.4681586e+02 2.4437930e+03 -1.4917691e+03 - 7.5001428e+02 2.4404650e+03 -1.5339913e+03 - 6.4963857e+02 2.4382091e+03 -1.5702229e+03 - 5.4616409e+02 2.4367653e+03 -1.6006013e+03 - 4.4008510e+02 2.4359055e+03 -1.6252577e+03 - 3.3190924e+02 2.4354387e+03 -1.6443077e+03 - 2.2215354e+02 2.4352142e+03 -1.6578453e+03 - 1.1134136e+02 2.4351231e+03 -1.6659399e+03 - 2.4067136e-09 2.4351001e+03 -1.6686333e+03 - -1.1134136e+02 2.4351231e+03 -1.6659399e+03 - -2.2215354e+02 2.4352142e+03 -1.6578453e+03 - -3.3190924e+02 2.4354387e+03 -1.6443077e+03 - -4.4008510e+02 2.4359055e+03 -1.6252577e+03 - -5.4616409e+02 2.4367653e+03 -1.6006013e+03 - -6.4963857e+02 2.4382091e+03 -1.5702229e+03 - -7.5001428e+02 2.4404650e+03 -1.5339913e+03 - -8.4681586e+02 2.4437930e+03 -1.4917691e+03 - -9.3959439e+02 2.4484772e+03 -1.4434262e+03 - -1.0279377e+03 2.4548141e+03 -1.3888601e+03 - -1.1114839e+03 2.4630957e+03 -1.3280222e+03 - -1.1899390e+03 2.4735874e+03 -1.2609531e+03 - -1.2630982e+03 2.4864993e+03 -1.1878236e+03 - -1.3308692e+03 2.5019525e+03 -1.1089806e+03 - -1.3932965e+03 2.5199422e+03 -1.0249904e+03 - -1.4505809e+03 2.5403038e+03 -9.3667231e+02 - -1.5030899e+03 2.5626878e+03 -8.4510950e+02 - -1.5513532e+03 2.5865522e+03 -7.5162755e+02 - -1.5960384e+03 2.6111796e+03 -6.5773450e+02 - -1.6379081e+03 2.6357199e+03 -5.6502452e+02 - -1.6777618e+03 2.6592561e+03 -4.7505843e+02 - -1.7163730e+03 2.6808812e+03 -3.8924221e+02 - -1.7544317e+03 2.6997722e+03 -3.0872638e+02 - -1.7925025e+03 2.7152484e+03 -2.3434386e+02 - -1.8310026e+03 2.7268054e+03 -1.6659279e+02 - -1.8701997e+03 2.7341229e+03 -1.0565975e+02 - -1.9102262e+03 2.7370520e+03 -5.1471113e+01 - -1.9511017e+03 2.7355886e+03 -3.7579280e+00 - -1.9927593e+03 2.7298399e+03 3.7878300e+01 - -2.0350713e+03 2.7199925e+03 7.3907431e+01 - -2.0778702e+03 2.7062831e+03 1.0482422e+02 - -2.1209659e+03 2.6889757e+03 1.3111428e+02 - -2.1641574e+03 2.6683447e+03 1.5323121e+02 - -2.2072410e+03 2.6446633e+03 1.7158262e+02 - -2.2500148e+03 2.6181961e+03 1.8652267e+02 - -2.2922810e+03 2.5891957e+03 1.9834896e+02 - -2.3338461e+03 2.5579009e+03 2.0730221e+02 - -2.3745204e+03 2.5245369e+03 2.1356724e+02 - -2.4141160e+03 2.4893173e+03 2.1727454e+02 - -2.4524451e+03 2.4524451e+03 2.1850172e+02 - -2.4893173e+03 2.4141160e+03 2.1727454e+02 - -2.5245369e+03 2.3745204e+03 2.1356724e+02 - -2.5579009e+03 2.3338461e+03 2.0730221e+02 - -2.5891957e+03 2.2922810e+03 1.9834896e+02 - -2.6181961e+03 2.2500148e+03 1.8652267e+02 - -2.6446633e+03 2.2072410e+03 1.7158262e+02 - -2.6683447e+03 2.1641574e+03 1.5323121e+02 - -2.6889757e+03 2.1209659e+03 1.3111428e+02 - -2.7062831e+03 2.0778702e+03 1.0482422e+02 - -2.7199925e+03 2.0350713e+03 7.3907431e+01 - -2.7298399e+03 1.9927593e+03 3.7878300e+01 - -2.7355886e+03 1.9511017e+03 -3.7579280e+00 - -2.7370520e+03 1.9102262e+03 -5.1471113e+01 - -2.7341229e+03 1.8701997e+03 -1.0565975e+02 - -2.7268054e+03 1.8310026e+03 -1.6659279e+02 - -2.7152484e+03 1.7925025e+03 -2.3434386e+02 - -2.6997722e+03 1.7544317e+03 -3.0872638e+02 - -2.6808812e+03 1.7163730e+03 -3.8924221e+02 - -2.6592561e+03 1.6777618e+03 -4.7505843e+02 - -2.6357199e+03 1.6379081e+03 -5.6502452e+02 - -2.6111796e+03 1.5960384e+03 -6.5773450e+02 - -2.5865522e+03 1.5513532e+03 -7.5162755e+02 - -2.5626878e+03 1.5030899e+03 -8.4510950e+02 - -2.5403038e+03 1.4505809e+03 -9.3667231e+02 - -2.5199422e+03 1.3932965e+03 -1.0249904e+03 - -2.5019525e+03 1.3308692e+03 -1.1089806e+03 - -2.4864993e+03 1.2630982e+03 -1.1878236e+03 - -2.4735874e+03 1.1899390e+03 -1.2609531e+03 - -2.4630957e+03 1.1114839e+03 -1.3280222e+03 - -2.4548141e+03 1.0279377e+03 -1.3888601e+03 - -2.4484772e+03 9.3959439e+02 -1.4434262e+03 - -2.4437930e+03 8.4681586e+02 -1.4917691e+03 - -2.4404650e+03 7.5001428e+02 -1.5339913e+03 - -2.4382091e+03 6.4963857e+02 -1.5702229e+03 - -2.4367653e+03 5.4616409e+02 -1.6006013e+03 - -2.4359055e+03 4.4008510e+02 -1.6252577e+03 - -2.4354387e+03 3.3190924e+02 -1.6443077e+03 - -2.4352142e+03 2.2215354e+02 -1.6578453e+03 - -2.4351231e+03 1.1134136e+02 -1.6659399e+03 - -2.4351001e+03 2.4067136e-09 -1.6686333e+03 - -2.4351231e+03 -1.1134136e+02 -1.6659399e+03 - -2.4352142e+03 -2.2215354e+02 -1.6578453e+03 - -2.4354387e+03 -3.3190924e+02 -1.6443077e+03 - -2.4359055e+03 -4.4008510e+02 -1.6252577e+03 - -2.4367653e+03 -5.4616409e+02 -1.6006013e+03 - -2.4382091e+03 -6.4963857e+02 -1.5702229e+03 - -2.4404650e+03 -7.5001428e+02 -1.5339913e+03 - -2.4437930e+03 -8.4681586e+02 -1.4917691e+03 - -2.4484772e+03 -9.3959439e+02 -1.4434262e+03 - -2.4548141e+03 -1.0279377e+03 -1.3888601e+03 - -2.4630957e+03 -1.1114839e+03 -1.3280222e+03 - -2.4735874e+03 -1.1899390e+03 -1.2609531e+03 - -2.4864993e+03 -1.2630982e+03 -1.1878236e+03 - -2.5019525e+03 -1.3308692e+03 -1.1089806e+03 - -2.5199422e+03 -1.3932965e+03 -1.0249904e+03 - -2.5403038e+03 -1.4505809e+03 -9.3667231e+02 - -2.5626878e+03 -1.5030899e+03 -8.4510950e+02 - -2.5865522e+03 -1.5513532e+03 -7.5162755e+02 - -2.6111796e+03 -1.5960384e+03 -6.5773450e+02 - -2.6357199e+03 -1.6379081e+03 -5.6502452e+02 - -2.6592561e+03 -1.6777618e+03 -4.7505843e+02 - -2.6808812e+03 -1.7163730e+03 -3.8924221e+02 - -2.6997722e+03 -1.7544317e+03 -3.0872638e+02 - -2.7152484e+03 -1.7925025e+03 -2.3434386e+02 - -2.7268054e+03 -1.8310026e+03 -1.6659279e+02 - -2.7341229e+03 -1.8701997e+03 -1.0565975e+02 - -2.7370520e+03 -1.9102262e+03 -5.1471113e+01 - -2.7355886e+03 -1.9511017e+03 -3.7579280e+00 - -2.7298399e+03 -1.9927593e+03 3.7878300e+01 - -2.7199925e+03 -2.0350713e+03 7.3907431e+01 - -2.7062831e+03 -2.0778702e+03 1.0482422e+02 - -2.6889757e+03 -2.1209659e+03 1.3111428e+02 - -2.6683447e+03 -2.1641574e+03 1.5323121e+02 - -2.6446633e+03 -2.2072410e+03 1.7158262e+02 - -2.6181961e+03 -2.2500148e+03 1.8652267e+02 - -2.5891957e+03 -2.2922810e+03 1.9834896e+02 - -2.5579009e+03 -2.3338461e+03 2.0730221e+02 - -2.5245369e+03 -2.3745204e+03 2.1356724e+02 - -2.4893173e+03 -2.4141160e+03 2.1727454e+02 - -2.4524451e+03 -2.4524451e+03 2.1850172e+02 - -2.4141160e+03 -2.4893173e+03 2.1727454e+02 - -2.3745204e+03 -2.5245369e+03 2.1356724e+02 - -2.3338461e+03 -2.5579009e+03 2.0730221e+02 - -2.2922810e+03 -2.5891957e+03 1.9834896e+02 - -2.2500148e+03 -2.6181961e+03 1.8652267e+02 - -2.2072410e+03 -2.6446633e+03 1.7158262e+02 - -2.1641574e+03 -2.6683447e+03 1.5323121e+02 - -2.1209659e+03 -2.6889757e+03 1.3111428e+02 - -2.0778702e+03 -2.7062831e+03 1.0482422e+02 - -2.0350713e+03 -2.7199925e+03 7.3907431e+01 - -1.9927593e+03 -2.7298399e+03 3.7878300e+01 - -1.9511017e+03 -2.7355886e+03 -3.7579280e+00 - -1.9102262e+03 -2.7370520e+03 -5.1471113e+01 - -1.8701997e+03 -2.7341229e+03 -1.0565975e+02 - -1.8310026e+03 -2.7268054e+03 -1.6659279e+02 - -1.7925025e+03 -2.7152484e+03 -2.3434386e+02 - -1.7544317e+03 -2.6997722e+03 -3.0872638e+02 - -1.7163730e+03 -2.6808812e+03 -3.8924221e+02 - -1.6777618e+03 -2.6592561e+03 -4.7505843e+02 - -1.6379081e+03 -2.6357199e+03 -5.6502452e+02 - -1.5960384e+03 -2.6111796e+03 -6.5773450e+02 - -1.5513532e+03 -2.5865522e+03 -7.5162755e+02 - -1.5030899e+03 -2.5626878e+03 -8.4510950e+02 - -1.4505809e+03 -2.5403038e+03 -9.3667231e+02 - -1.3932965e+03 -2.5199422e+03 -1.0249904e+03 - -1.3308692e+03 -2.5019525e+03 -1.1089806e+03 - -1.2630982e+03 -2.4864993e+03 -1.1878236e+03 - -1.1899390e+03 -2.4735874e+03 -1.2609531e+03 - -1.1114839e+03 -2.4630957e+03 -1.3280222e+03 - -1.0279377e+03 -2.4548141e+03 -1.3888601e+03 - -9.3959439e+02 -2.4484772e+03 -1.4434262e+03 - -8.4681586e+02 -2.4437930e+03 -1.4917691e+03 - -7.5001428e+02 -2.4404650e+03 -1.5339913e+03 - -6.4963857e+02 -2.4382091e+03 -1.5702229e+03 - -5.4616409e+02 -2.4367653e+03 -1.6006013e+03 - -4.4008510e+02 -2.4359055e+03 -1.6252577e+03 - -3.3190924e+02 -2.4354387e+03 -1.6443077e+03 - -2.2215354e+02 -2.4352142e+03 -1.6578453e+03 - -1.1134136e+02 -2.4351231e+03 -1.6659399e+03 - 0.0000000e+00 -2.4351001e+03 -1.6686333e+03 - 1.1134136e+02 -2.4351231e+03 -1.6659399e+03 - 2.2215354e+02 -2.4352142e+03 -1.6578453e+03 - 3.3190924e+02 -2.4354387e+03 -1.6443077e+03 - 4.4008510e+02 -2.4359055e+03 -1.6252577e+03 - 5.4616409e+02 -2.4367653e+03 -1.6006013e+03 - 6.4963857e+02 -2.4382091e+03 -1.5702229e+03 - 7.5001428e+02 -2.4404650e+03 -1.5339913e+03 - 8.4681586e+02 -2.4437930e+03 -1.4917691e+03 - 9.3959439e+02 -2.4484772e+03 -1.4434262e+03 - 1.0279377e+03 -2.4548141e+03 -1.3888601e+03 - 1.1114839e+03 -2.4630957e+03 -1.3280222e+03 - 1.1899390e+03 -2.4735874e+03 -1.2609531e+03 - 1.2630982e+03 -2.4864993e+03 -1.1878236e+03 - 1.3308692e+03 -2.5019525e+03 -1.1089806e+03 - 1.3932965e+03 -2.5199422e+03 -1.0249904e+03 - 1.4505809e+03 -2.5403038e+03 -9.3667231e+02 - 1.5030899e+03 -2.5626878e+03 -8.4510950e+02 - 1.5513532e+03 -2.5865522e+03 -7.5162755e+02 - 1.5960384e+03 -2.6111796e+03 -6.5773450e+02 - 1.6379081e+03 -2.6357199e+03 -5.6502452e+02 - 1.6777618e+03 -2.6592561e+03 -4.7505843e+02 - 1.7163730e+03 -2.6808812e+03 -3.8924221e+02 - 1.7544317e+03 -2.6997722e+03 -3.0872638e+02 - 1.7925025e+03 -2.7152484e+03 -2.3434386e+02 - 1.8310026e+03 -2.7268054e+03 -1.6659279e+02 - 1.8701997e+03 -2.7341229e+03 -1.0565975e+02 - 1.9102262e+03 -2.7370520e+03 -5.1471113e+01 - 1.9511017e+03 -2.7355886e+03 -3.7579280e+00 - 1.9927593e+03 -2.7298399e+03 3.7878300e+01 - 2.0350713e+03 -2.7199925e+03 7.3907431e+01 - 2.0778702e+03 -2.7062831e+03 1.0482422e+02 - 2.1209659e+03 -2.6889757e+03 1.3111428e+02 - 2.1641574e+03 -2.6683447e+03 1.5323121e+02 - 2.2072410e+03 -2.6446633e+03 1.7158262e+02 - 2.2500148e+03 -2.6181961e+03 1.8652267e+02 - 2.2922810e+03 -2.5891957e+03 1.9834896e+02 - 2.3338461e+03 -2.5579009e+03 2.0730221e+02 - 2.3745204e+03 -2.5245369e+03 2.1356724e+02 - 2.4141160e+03 -2.4893173e+03 2.1727454e+02 - 2.4524451e+03 -2.4524451e+03 2.1850172e+02 - 2.4893173e+03 -2.4141160e+03 2.1727454e+02 - 2.5245369e+03 -2.3745204e+03 2.1356724e+02 - 2.5579009e+03 -2.3338461e+03 2.0730221e+02 - 2.5891957e+03 -2.2922810e+03 1.9834896e+02 - 2.6181961e+03 -2.2500148e+03 1.8652267e+02 - 2.6446633e+03 -2.2072410e+03 1.7158262e+02 - 2.6683447e+03 -2.1641574e+03 1.5323121e+02 - 2.6889757e+03 -2.1209659e+03 1.3111428e+02 - 2.7062831e+03 -2.0778702e+03 1.0482422e+02 - 2.7199925e+03 -2.0350713e+03 7.3907431e+01 - 2.7298399e+03 -1.9927593e+03 3.7878300e+01 - 2.7355886e+03 -1.9511017e+03 -3.7579280e+00 - 2.7370520e+03 -1.9102262e+03 -5.1471113e+01 - 2.7341229e+03 -1.8701997e+03 -1.0565975e+02 - 2.7268054e+03 -1.8310026e+03 -1.6659279e+02 - 2.7152484e+03 -1.7925025e+03 -2.3434386e+02 - 2.6997722e+03 -1.7544317e+03 -3.0872638e+02 - 2.6808812e+03 -1.7163730e+03 -3.8924221e+02 - 2.6592561e+03 -1.6777618e+03 -4.7505843e+02 - 2.6357199e+03 -1.6379081e+03 -5.6502452e+02 - 2.6111796e+03 -1.5960384e+03 -6.5773450e+02 - 2.5865522e+03 -1.5513532e+03 -7.5162755e+02 - 2.5626878e+03 -1.5030899e+03 -8.4510950e+02 - 2.5403038e+03 -1.4505809e+03 -9.3667231e+02 - 2.5199422e+03 -1.3932965e+03 -1.0249904e+03 - 2.5019525e+03 -1.3308692e+03 -1.1089806e+03 - 2.4864993e+03 -1.2630982e+03 -1.1878236e+03 - 2.4735874e+03 -1.1899390e+03 -1.2609531e+03 - 2.4630957e+03 -1.1114839e+03 -1.3280222e+03 - 2.4548141e+03 -1.0279377e+03 -1.3888601e+03 - 2.4484772e+03 -9.3959439e+02 -1.4434262e+03 - 2.4437930e+03 -8.4681586e+02 -1.4917691e+03 - 2.4404650e+03 -7.5001428e+02 -1.5339913e+03 - 2.4382091e+03 -6.4963857e+02 -1.5702229e+03 - 2.4367653e+03 -5.4616409e+02 -1.6006013e+03 - 2.4359055e+03 -4.4008510e+02 -1.6252577e+03 - 2.4354387e+03 -3.3190924e+02 -1.6443077e+03 - 2.4352142e+03 -2.2215354e+02 -1.6578453e+03 - 2.4351231e+03 -1.1134136e+02 -1.6659399e+03 - 2.4351001e+03 0.0000000e+00 -1.6686333e+03 - 2.4046877e+03 4.8134273e-09 -1.7400677e+03 - 2.4050206e+03 1.0392875e+02 -1.7369752e+03 - 2.4060421e+03 2.0732239e+02 -1.7276832e+03 - 2.4078202e+03 3.0964928e+02 -1.7121496e+03 - 2.4104662e+03 4.1038499e+02 -1.6903076e+03 - 2.4141319e+03 5.0901693e+02 -1.6620716e+03 - 2.4190041e+03 6.0505006e+02 -1.6273457e+03 - 2.4252975e+03 6.9801437e+02 -1.5860369e+03 - 2.4332434e+03 7.8747445e+02 -1.5380735e+03 - 2.4430747e+03 8.7304178e+02 -1.4834291e+03 - 2.4550063e+03 9.5438974e+02 -1.4221532e+03 - 2.4692100e+03 1.0312713e+03 -1.3544071e+03 - 2.4857857e+03 1.1035382e+03 -1.2805040e+03 - 2.5047303e+03 1.1711602e+03 -1.2009473e+03 - 2.5259081e+03 1.2342406e+03 -1.1164605e+03 - 2.5490284e+03 1.2930245e+03 -1.0280017e+03 - 2.5736364e+03 1.3478967e+03 -9.3675189e+02 - 2.5991225e+03 1.3993641e+03 -8.4407316e+02 - 2.6247521e+03 1.4480246e+03 -7.5143620e+02 - 2.6497146e+03 1.4945240e+03 -6.6032546e+02 - 2.6731847e+03 1.5395069e+03 -5.7213629e+02 - 2.6943839e+03 1.5835703e+03 -4.8808178e+02 - 2.7126346e+03 1.6272258e+03 -4.0912474e+02 - 2.7273967e+03 1.6708763e+03 -3.3594351e+02 - 2.7382845e+03 1.7148076e+03 -2.6893222e+02 - 2.7450650e+03 1.7591929e+03 -2.0822888e+02 - 2.7476423e+03 1.8041065e+03 -1.5376122e+02 - 2.7460341e+03 1.8495426e+03 -1.0529970e+02 - 2.7403448e+03 1.8954344e+03 -6.2509311e+01 - 2.7307403e+03 1.9416725e+03 -2.4994910e+01 - 2.7174257e+03 1.9881196e+03 7.6625328e+00 - 2.7006275e+03 2.0346228e+03 3.5878935e+01 - 2.6805808e+03 2.0810211e+03 6.0048446e+01 - 2.6575196e+03 2.1271520e+03 8.0531533e+01 - 2.6316714e+03 2.1728542e+03 9.7648139e+01 - 2.6032534e+03 2.2179694e+03 1.1167440e+02 - 2.5724710e+03 2.2623429e+03 1.2284166e+02 - 2.5395178e+03 2.3058231e+03 1.3133689e+02 - 2.5045764e+03 2.3482604e+03 1.3730368e+02 - 2.4678190e+03 2.3895059e+03 1.4084350e+02 - 2.4294097e+03 2.4294097e+03 1.4201675e+02 - 2.3895059e+03 2.4678190e+03 1.4084350e+02 - 2.3482604e+03 2.5045764e+03 1.3730368e+02 - 2.3058231e+03 2.5395178e+03 1.3133689e+02 - 2.2623429e+03 2.5724710e+03 1.2284166e+02 - 2.2179694e+03 2.6032534e+03 1.1167440e+02 - 2.1728542e+03 2.6316714e+03 9.7648139e+01 - 2.1271520e+03 2.6575196e+03 8.0531533e+01 - 2.0810211e+03 2.6805808e+03 6.0048446e+01 - 2.0346228e+03 2.7006275e+03 3.5878935e+01 - 1.9881196e+03 2.7174257e+03 7.6625328e+00 - 1.9416725e+03 2.7307403e+03 -2.4994910e+01 - 1.8954344e+03 2.7403448e+03 -6.2509311e+01 - 1.8495426e+03 2.7460341e+03 -1.0529970e+02 - 1.8041065e+03 2.7476423e+03 -1.5376122e+02 - 1.7591929e+03 2.7450650e+03 -2.0822888e+02 - 1.7148076e+03 2.7382845e+03 -2.6893222e+02 - 1.6708763e+03 2.7273967e+03 -3.3594351e+02 - 1.6272258e+03 2.7126346e+03 -4.0912474e+02 - 1.5835703e+03 2.6943839e+03 -4.8808178e+02 - 1.5395069e+03 2.6731847e+03 -5.7213629e+02 - 1.4945240e+03 2.6497146e+03 -6.6032546e+02 - 1.4480246e+03 2.6247521e+03 -7.5143620e+02 - 1.3993641e+03 2.5991225e+03 -8.4407316e+02 - 1.3478967e+03 2.5736364e+03 -9.3675189e+02 - 1.2930245e+03 2.5490284e+03 -1.0280017e+03 - 1.2342406e+03 2.5259081e+03 -1.1164605e+03 - 1.1711602e+03 2.5047303e+03 -1.2009473e+03 - 1.1035382e+03 2.4857857e+03 -1.2805040e+03 - 1.0312713e+03 2.4692100e+03 -1.3544071e+03 - 9.5438974e+02 2.4550063e+03 -1.4221532e+03 - 8.7304178e+02 2.4430747e+03 -1.4834291e+03 - 7.8747445e+02 2.4332434e+03 -1.5380735e+03 - 6.9801437e+02 2.4252975e+03 -1.5860369e+03 - 6.0505006e+02 2.4190041e+03 -1.6273457e+03 - 5.0901693e+02 2.4141319e+03 -1.6620716e+03 - 4.1038499e+02 2.4104662e+03 -1.6903076e+03 - 3.0964928e+02 2.4078202e+03 -1.7121496e+03 - 2.0732239e+02 2.4060421e+03 -1.7276832e+03 - 1.0392875e+02 2.4050206e+03 -1.7369752e+03 - 0.0000000e+00 2.4046877e+03 -1.7400677e+03 - -1.0392875e+02 2.4050206e+03 -1.7369752e+03 - -2.0732239e+02 2.4060421e+03 -1.7276832e+03 - -3.0964928e+02 2.4078202e+03 -1.7121496e+03 - -4.1038499e+02 2.4104662e+03 -1.6903076e+03 - -5.0901693e+02 2.4141319e+03 -1.6620716e+03 - -6.0505006e+02 2.4190041e+03 -1.6273457e+03 - -6.9801437e+02 2.4252975e+03 -1.5860369e+03 - -7.8747445e+02 2.4332434e+03 -1.5380735e+03 - -8.7304178e+02 2.4430747e+03 -1.4834291e+03 - -9.5438974e+02 2.4550063e+03 -1.4221532e+03 - -1.0312713e+03 2.4692100e+03 -1.3544071e+03 - -1.1035382e+03 2.4857857e+03 -1.2805040e+03 - -1.1711602e+03 2.5047303e+03 -1.2009473e+03 - -1.2342406e+03 2.5259081e+03 -1.1164605e+03 - -1.2930245e+03 2.5490284e+03 -1.0280017e+03 - -1.3478967e+03 2.5736364e+03 -9.3675189e+02 - -1.3993641e+03 2.5991225e+03 -8.4407316e+02 - -1.4480246e+03 2.6247521e+03 -7.5143620e+02 - -1.4945240e+03 2.6497146e+03 -6.6032546e+02 - -1.5395069e+03 2.6731847e+03 -5.7213629e+02 - -1.5835703e+03 2.6943839e+03 -4.8808178e+02 - -1.6272258e+03 2.7126346e+03 -4.0912474e+02 - -1.6708763e+03 2.7273967e+03 -3.3594351e+02 - -1.7148076e+03 2.7382845e+03 -2.6893222e+02 - -1.7591929e+03 2.7450650e+03 -2.0822888e+02 - -1.8041065e+03 2.7476423e+03 -1.5376122e+02 - -1.8495426e+03 2.7460341e+03 -1.0529970e+02 - -1.8954344e+03 2.7403448e+03 -6.2509311e+01 - -1.9416725e+03 2.7307403e+03 -2.4994910e+01 - -1.9881196e+03 2.7174257e+03 7.6625328e+00 - -2.0346228e+03 2.7006275e+03 3.5878935e+01 - -2.0810211e+03 2.6805808e+03 6.0048446e+01 - -2.1271520e+03 2.6575196e+03 8.0531533e+01 - -2.1728542e+03 2.6316714e+03 9.7648139e+01 - -2.2179694e+03 2.6032534e+03 1.1167440e+02 - -2.2623429e+03 2.5724710e+03 1.2284166e+02 - -2.3058231e+03 2.5395178e+03 1.3133689e+02 - -2.3482604e+03 2.5045764e+03 1.3730368e+02 - -2.3895059e+03 2.4678190e+03 1.4084350e+02 - -2.4294097e+03 2.4294097e+03 1.4201675e+02 - -2.4678190e+03 2.3895059e+03 1.4084350e+02 - -2.5045764e+03 2.3482604e+03 1.3730368e+02 - -2.5395178e+03 2.3058231e+03 1.3133689e+02 - -2.5724710e+03 2.2623429e+03 1.2284166e+02 - -2.6032534e+03 2.2179694e+03 1.1167440e+02 - -2.6316714e+03 2.1728542e+03 9.7648139e+01 - -2.6575196e+03 2.1271520e+03 8.0531533e+01 - -2.6805808e+03 2.0810211e+03 6.0048446e+01 - -2.7006275e+03 2.0346228e+03 3.5878935e+01 - -2.7174257e+03 1.9881196e+03 7.6625328e+00 - -2.7307403e+03 1.9416725e+03 -2.4994910e+01 - -2.7403448e+03 1.8954344e+03 -6.2509311e+01 - -2.7460341e+03 1.8495426e+03 -1.0529970e+02 - -2.7476423e+03 1.8041065e+03 -1.5376122e+02 - -2.7450650e+03 1.7591929e+03 -2.0822888e+02 - -2.7382845e+03 1.7148076e+03 -2.6893222e+02 - -2.7273967e+03 1.6708763e+03 -3.3594351e+02 - -2.7126346e+03 1.6272258e+03 -4.0912474e+02 - -2.6943839e+03 1.5835703e+03 -4.8808178e+02 - -2.6731847e+03 1.5395069e+03 -5.7213629e+02 - -2.6497146e+03 1.4945240e+03 -6.6032546e+02 - -2.6247521e+03 1.4480246e+03 -7.5143620e+02 - -2.5991225e+03 1.3993641e+03 -8.4407316e+02 - -2.5736364e+03 1.3478967e+03 -9.3675189e+02 - -2.5490284e+03 1.2930245e+03 -1.0280017e+03 - -2.5259081e+03 1.2342406e+03 -1.1164605e+03 - -2.5047303e+03 1.1711602e+03 -1.2009473e+03 - -2.4857857e+03 1.1035382e+03 -1.2805040e+03 - -2.4692100e+03 1.0312713e+03 -1.3544071e+03 - -2.4550063e+03 9.5438974e+02 -1.4221532e+03 - -2.4430747e+03 8.7304178e+02 -1.4834291e+03 - -2.4332434e+03 7.8747445e+02 -1.5380735e+03 - -2.4252975e+03 6.9801437e+02 -1.5860369e+03 - -2.4190041e+03 6.0505006e+02 -1.6273457e+03 - -2.4141319e+03 5.0901693e+02 -1.6620716e+03 - -2.4104662e+03 4.1038499e+02 -1.6903076e+03 - -2.4078202e+03 3.0964928e+02 -1.7121496e+03 - -2.4060421e+03 2.0732239e+02 -1.7276832e+03 - -2.4050206e+03 1.0392875e+02 -1.7369752e+03 - -2.4046877e+03 -2.4067136e-09 -1.7400677e+03 - -2.4050206e+03 -1.0392875e+02 -1.7369752e+03 - -2.4060421e+03 -2.0732239e+02 -1.7276832e+03 - -2.4078202e+03 -3.0964928e+02 -1.7121496e+03 - -2.4104662e+03 -4.1038499e+02 -1.6903076e+03 - -2.4141319e+03 -5.0901693e+02 -1.6620716e+03 - -2.4190041e+03 -6.0505006e+02 -1.6273457e+03 - -2.4252975e+03 -6.9801437e+02 -1.5860369e+03 - -2.4332434e+03 -7.8747445e+02 -1.5380735e+03 - -2.4430747e+03 -8.7304178e+02 -1.4834291e+03 - -2.4550063e+03 -9.5438974e+02 -1.4221532e+03 - -2.4692100e+03 -1.0312713e+03 -1.3544071e+03 - -2.4857857e+03 -1.1035382e+03 -1.2805040e+03 - -2.5047303e+03 -1.1711602e+03 -1.2009473e+03 - -2.5259081e+03 -1.2342406e+03 -1.1164605e+03 - -2.5490284e+03 -1.2930245e+03 -1.0280017e+03 - -2.5736364e+03 -1.3478967e+03 -9.3675189e+02 - -2.5991225e+03 -1.3993641e+03 -8.4407316e+02 - -2.6247521e+03 -1.4480246e+03 -7.5143620e+02 - -2.6497146e+03 -1.4945240e+03 -6.6032546e+02 - -2.6731847e+03 -1.5395069e+03 -5.7213629e+02 - -2.6943839e+03 -1.5835703e+03 -4.8808178e+02 - -2.7126346e+03 -1.6272258e+03 -4.0912474e+02 - -2.7273967e+03 -1.6708763e+03 -3.3594351e+02 - -2.7382845e+03 -1.7148076e+03 -2.6893222e+02 - -2.7450650e+03 -1.7591929e+03 -2.0822888e+02 - -2.7476423e+03 -1.8041065e+03 -1.5376122e+02 - -2.7460341e+03 -1.8495426e+03 -1.0529970e+02 - -2.7403448e+03 -1.8954344e+03 -6.2509311e+01 - -2.7307403e+03 -1.9416725e+03 -2.4994910e+01 - -2.7174257e+03 -1.9881196e+03 7.6625328e+00 - -2.7006275e+03 -2.0346228e+03 3.5878935e+01 - -2.6805808e+03 -2.0810211e+03 6.0048446e+01 - -2.6575196e+03 -2.1271520e+03 8.0531533e+01 - -2.6316714e+03 -2.1728542e+03 9.7648139e+01 - -2.6032534e+03 -2.2179694e+03 1.1167440e+02 - -2.5724710e+03 -2.2623429e+03 1.2284166e+02 - -2.5395178e+03 -2.3058231e+03 1.3133689e+02 - -2.5045764e+03 -2.3482604e+03 1.3730368e+02 - -2.4678190e+03 -2.3895059e+03 1.4084350e+02 - -2.4294097e+03 -2.4294097e+03 1.4201675e+02 - -2.3895059e+03 -2.4678190e+03 1.4084350e+02 - -2.3482604e+03 -2.5045764e+03 1.3730368e+02 - -2.3058231e+03 -2.5395178e+03 1.3133689e+02 - -2.2623429e+03 -2.5724710e+03 1.2284166e+02 - -2.2179694e+03 -2.6032534e+03 1.1167440e+02 - -2.1728542e+03 -2.6316714e+03 9.7648139e+01 - -2.1271520e+03 -2.6575196e+03 8.0531533e+01 - -2.0810211e+03 -2.6805808e+03 6.0048446e+01 - -2.0346228e+03 -2.7006275e+03 3.5878935e+01 - -1.9881196e+03 -2.7174257e+03 7.6625328e+00 - -1.9416725e+03 -2.7307403e+03 -2.4994910e+01 - -1.8954344e+03 -2.7403448e+03 -6.2509311e+01 - -1.8495426e+03 -2.7460341e+03 -1.0529970e+02 - -1.8041065e+03 -2.7476423e+03 -1.5376122e+02 - -1.7591929e+03 -2.7450650e+03 -2.0822888e+02 - -1.7148076e+03 -2.7382845e+03 -2.6893222e+02 - -1.6708763e+03 -2.7273967e+03 -3.3594351e+02 - -1.6272258e+03 -2.7126346e+03 -4.0912474e+02 - -1.5835703e+03 -2.6943839e+03 -4.8808178e+02 - -1.5395069e+03 -2.6731847e+03 -5.7213629e+02 - -1.4945240e+03 -2.6497146e+03 -6.6032546e+02 - -1.4480246e+03 -2.6247521e+03 -7.5143620e+02 - -1.3993641e+03 -2.5991225e+03 -8.4407316e+02 - -1.3478967e+03 -2.5736364e+03 -9.3675189e+02 - -1.2930245e+03 -2.5490284e+03 -1.0280017e+03 - -1.2342406e+03 -2.5259081e+03 -1.1164605e+03 - -1.1711602e+03 -2.5047303e+03 -1.2009473e+03 - -1.1035382e+03 -2.4857857e+03 -1.2805040e+03 - -1.0312713e+03 -2.4692100e+03 -1.3544071e+03 - -9.5438974e+02 -2.4550063e+03 -1.4221532e+03 - -8.7304178e+02 -2.4430747e+03 -1.4834291e+03 - -7.8747445e+02 -2.4332434e+03 -1.5380735e+03 - -6.9801437e+02 -2.4252975e+03 -1.5860369e+03 - -6.0505006e+02 -2.4190041e+03 -1.6273457e+03 - -5.0901693e+02 -2.4141319e+03 -1.6620716e+03 - -4.1038499e+02 -2.4104662e+03 -1.6903076e+03 - -3.0964928e+02 -2.4078202e+03 -1.7121496e+03 - -2.0732239e+02 -2.4060421e+03 -1.7276832e+03 - -1.0392875e+02 -2.4050206e+03 -1.7369752e+03 - 2.4067136e-09 -2.4046877e+03 -1.7400677e+03 - 1.0392875e+02 -2.4050206e+03 -1.7369752e+03 - 2.0732239e+02 -2.4060421e+03 -1.7276832e+03 - 3.0964928e+02 -2.4078202e+03 -1.7121496e+03 - 4.1038499e+02 -2.4104662e+03 -1.6903076e+03 - 5.0901693e+02 -2.4141319e+03 -1.6620716e+03 - 6.0505006e+02 -2.4190041e+03 -1.6273457e+03 - 6.9801437e+02 -2.4252975e+03 -1.5860369e+03 - 7.8747445e+02 -2.4332434e+03 -1.5380735e+03 - 8.7304178e+02 -2.4430747e+03 -1.4834291e+03 - 9.5438974e+02 -2.4550063e+03 -1.4221532e+03 - 1.0312713e+03 -2.4692100e+03 -1.3544071e+03 - 1.1035382e+03 -2.4857857e+03 -1.2805040e+03 - 1.1711602e+03 -2.5047303e+03 -1.2009473e+03 - 1.2342406e+03 -2.5259081e+03 -1.1164605e+03 - 1.2930245e+03 -2.5490284e+03 -1.0280017e+03 - 1.3478967e+03 -2.5736364e+03 -9.3675189e+02 - 1.3993641e+03 -2.5991225e+03 -8.4407316e+02 - 1.4480246e+03 -2.6247521e+03 -7.5143620e+02 - 1.4945240e+03 -2.6497146e+03 -6.6032546e+02 - 1.5395069e+03 -2.6731847e+03 -5.7213629e+02 - 1.5835703e+03 -2.6943839e+03 -4.8808178e+02 - 1.6272258e+03 -2.7126346e+03 -4.0912474e+02 - 1.6708763e+03 -2.7273967e+03 -3.3594351e+02 - 1.7148076e+03 -2.7382845e+03 -2.6893222e+02 - 1.7591929e+03 -2.7450650e+03 -2.0822888e+02 - 1.8041065e+03 -2.7476423e+03 -1.5376122e+02 - 1.8495426e+03 -2.7460341e+03 -1.0529970e+02 - 1.8954344e+03 -2.7403448e+03 -6.2509311e+01 - 1.9416725e+03 -2.7307403e+03 -2.4994910e+01 - 1.9881196e+03 -2.7174257e+03 7.6625328e+00 - 2.0346228e+03 -2.7006275e+03 3.5878935e+01 - 2.0810211e+03 -2.6805808e+03 6.0048446e+01 - 2.1271520e+03 -2.6575196e+03 8.0531533e+01 - 2.1728542e+03 -2.6316714e+03 9.7648139e+01 - 2.2179694e+03 -2.6032534e+03 1.1167440e+02 - 2.2623429e+03 -2.5724710e+03 1.2284166e+02 - 2.3058231e+03 -2.5395178e+03 1.3133689e+02 - 2.3482604e+03 -2.5045764e+03 1.3730368e+02 - 2.3895059e+03 -2.4678190e+03 1.4084350e+02 - 2.4294097e+03 -2.4294097e+03 1.4201675e+02 - 2.4678190e+03 -2.3895059e+03 1.4084350e+02 - 2.5045764e+03 -2.3482604e+03 1.3730368e+02 - 2.5395178e+03 -2.3058231e+03 1.3133689e+02 - 2.5724710e+03 -2.2623429e+03 1.2284166e+02 - 2.6032534e+03 -2.2179694e+03 1.1167440e+02 - 2.6316714e+03 -2.1728542e+03 9.7648139e+01 - 2.6575196e+03 -2.1271520e+03 8.0531533e+01 - 2.6805808e+03 -2.0810211e+03 6.0048446e+01 - 2.7006275e+03 -2.0346228e+03 3.5878935e+01 - 2.7174257e+03 -1.9881196e+03 7.6625328e+00 - 2.7307403e+03 -1.9416725e+03 -2.4994910e+01 - 2.7403448e+03 -1.8954344e+03 -6.2509311e+01 - 2.7460341e+03 -1.8495426e+03 -1.0529970e+02 - 2.7476423e+03 -1.8041065e+03 -1.5376122e+02 - 2.7450650e+03 -1.7591929e+03 -2.0822888e+02 - 2.7382845e+03 -1.7148076e+03 -2.6893222e+02 - 2.7273967e+03 -1.6708763e+03 -3.3594351e+02 - 2.7126346e+03 -1.6272258e+03 -4.0912474e+02 - 2.6943839e+03 -1.5835703e+03 -4.8808178e+02 - 2.6731847e+03 -1.5395069e+03 -5.7213629e+02 - 2.6497146e+03 -1.4945240e+03 -6.6032546e+02 - 2.6247521e+03 -1.4480246e+03 -7.5143620e+02 - 2.5991225e+03 -1.3993641e+03 -8.4407316e+02 - 2.5736364e+03 -1.3478967e+03 -9.3675189e+02 - 2.5490284e+03 -1.2930245e+03 -1.0280017e+03 - 2.5259081e+03 -1.2342406e+03 -1.1164605e+03 - 2.5047303e+03 -1.1711602e+03 -1.2009473e+03 - 2.4857857e+03 -1.1035382e+03 -1.2805040e+03 - 2.4692100e+03 -1.0312713e+03 -1.3544071e+03 - 2.4550063e+03 -9.5438974e+02 -1.4221532e+03 - 2.4430747e+03 -8.7304178e+02 -1.4834291e+03 - 2.4332434e+03 -7.8747445e+02 -1.5380735e+03 - 2.4252975e+03 -6.9801437e+02 -1.5860369e+03 - 2.4190041e+03 -6.0505006e+02 -1.6273457e+03 - 2.4141319e+03 -5.0901693e+02 -1.6620716e+03 - 2.4104662e+03 -4.1038499e+02 -1.6903076e+03 - 2.4078202e+03 -3.0964928e+02 -1.7121496e+03 - 2.4060421e+03 -2.0732239e+02 -1.7276832e+03 - 2.4050206e+03 -1.0392875e+02 -1.7369752e+03 - 2.4046877e+03 -2.4067136e-09 -1.7400677e+03 - 2.3732834e+03 0.0000000e+00 -1.8099903e+03 - 2.3740130e+03 9.5286558e+01 -1.8063795e+03 - 2.3762234e+03 1.9004462e+02 -1.7955372e+03 - 2.3799772e+03 2.8375250e+02 -1.7774356e+03 - 2.3853748e+03 3.7590266e+02 -1.7520361e+03 - 2.3925472e+03 4.6601015e+02 -1.7193002e+03 - 2.4016454e+03 5.5362253e+02 -1.6792070e+03 - 2.4128266e+03 6.3833171e+02 -1.6317753e+03 - 2.4262353e+03 7.1978765e+02 -1.5770922e+03 - 2.4419811e+03 7.9771376e+02 -1.5153460e+03 - 2.4601124e+03 8.7192293e+02 -1.4468618e+03 - 2.4805893e+03 9.4233261e+02 -1.3721353e+03 - 2.5032585e+03 1.0089766e+03 -1.2918604e+03 - 2.5278342e+03 1.0720106e+03 -1.2069410e+03 - 2.5538903e+03 1.1317087e+03 -1.1184834e+03 - 2.5808675e+03 1.1884492e+03 -1.0277623e+03 - 2.6080972e+03 1.2426896e+03 -9.3616235e+02 - 2.6348409e+03 1.2949327e+03 -8.4509956e+02 - 2.6603394e+03 1.3456891e+03 -7.5593457e+02 - 2.6838647e+03 1.3954401e+03 -6.6989058e+02 - 2.7047659e+03 1.4446080e+03 -5.8798887e+02 - 2.7225032e+03 1.4935354e+03 -5.1101002e+02 - 2.7366668e+03 1.5424760e+03 -4.3948295e+02 - 2.7469801e+03 1.5915956e+03 -3.7369851e+02 - 2.7532911e+03 1.6409800e+03 -3.1374071e+02 - 2.7555555e+03 1.6906479e+03 -2.5952752e+02 - 2.7538158e+03 1.7405650e+03 -2.1085423e+02 - 2.7481795e+03 1.7906580e+03 -1.6743388e+02 - 2.7388000e+03 1.8408268e+03 -1.2893198e+02 - 2.7258590e+03 1.8909545e+03 -9.4994180e+01 - 2.7095542e+03 1.9409148e+03 -6.5266890e+01 - 2.6900888e+03 1.9905775e+03 -3.9411901e+01 - 2.6676646e+03 2.0398118e+03 -1.7115933e+01 - 2.6424777e+03 2.0884886e+03 1.9035761e+00 - 2.6147155e+03 2.1364817e+03 1.7895434e+01 - 2.5845553e+03 2.1836676e+03 3.1073504e+01 - 2.5521642e+03 2.2299253e+03 4.1616683e+01 - 2.5176993e+03 2.2751358e+03 4.9669523e+01 - 2.4813084e+03 2.3191810e+03 5.5343134e+01 - 2.4431311e+03 2.3619424e+03 5.8716100e+01 - 2.4033001e+03 2.4033001e+03 5.9835239e+01 - 2.3619424e+03 2.4431311e+03 5.8716100e+01 - 2.3191810e+03 2.4813084e+03 5.5343134e+01 - 2.2751358e+03 2.5176993e+03 4.9669523e+01 - 2.2299253e+03 2.5521642e+03 4.1616683e+01 - 2.1836676e+03 2.5845553e+03 3.1073504e+01 - 2.1364817e+03 2.6147155e+03 1.7895434e+01 - 2.0884886e+03 2.6424777e+03 1.9035761e+00 - 2.0398118e+03 2.6676646e+03 -1.7115933e+01 - 1.9905775e+03 2.6900888e+03 -3.9411900e+01 - 1.9409148e+03 2.7095542e+03 -6.5266890e+01 - 1.8909545e+03 2.7258590e+03 -9.4994180e+01 - 1.8408268e+03 2.7388000e+03 -1.2893198e+02 - 1.7906580e+03 2.7481795e+03 -1.6743388e+02 - 1.7405650e+03 2.7538158e+03 -2.1085423e+02 - 1.6906479e+03 2.7555555e+03 -2.5952752e+02 - 1.6409800e+03 2.7532911e+03 -3.1374071e+02 - 1.5915956e+03 2.7469801e+03 -3.7369851e+02 - 1.5424760e+03 2.7366668e+03 -4.3948295e+02 - 1.4935354e+03 2.7225032e+03 -5.1101002e+02 - 1.4446080e+03 2.7047659e+03 -5.8798887e+02 - 1.3954401e+03 2.6838647e+03 -6.6989058e+02 - 1.3456891e+03 2.6603394e+03 -7.5593457e+02 - 1.2949327e+03 2.6348409e+03 -8.4509956e+02 - 1.2426896e+03 2.6080972e+03 -9.3616235e+02 - 1.1884492e+03 2.5808675e+03 -1.0277623e+03 - 1.1317087e+03 2.5538903e+03 -1.1184834e+03 - 1.0720106e+03 2.5278342e+03 -1.2069410e+03 - 1.0089766e+03 2.5032585e+03 -1.2918604e+03 - 9.4233261e+02 2.4805893e+03 -1.3721353e+03 - 8.7192293e+02 2.4601124e+03 -1.4468618e+03 - 7.9771376e+02 2.4419811e+03 -1.5153460e+03 - 7.1978765e+02 2.4262353e+03 -1.5770922e+03 - 6.3833171e+02 2.4128266e+03 -1.6317753e+03 - 5.5362253e+02 2.4016454e+03 -1.6792070e+03 - 4.6601015e+02 2.3925472e+03 -1.7193002e+03 - 3.7590266e+02 2.3853748e+03 -1.7520361e+03 - 2.8375250e+02 2.3799772e+03 -1.7774356e+03 - 1.9004462e+02 2.3762234e+03 -1.7955372e+03 - 9.5286558e+01 2.3740130e+03 -1.8063795e+03 - 2.4067136e-09 2.3732834e+03 -1.8099903e+03 - -9.5286558e+01 2.3740130e+03 -1.8063795e+03 - -1.9004462e+02 2.3762234e+03 -1.7955372e+03 - -2.8375250e+02 2.3799772e+03 -1.7774356e+03 - -3.7590266e+02 2.3853748e+03 -1.7520361e+03 - -4.6601015e+02 2.3925472e+03 -1.7193002e+03 - -5.5362253e+02 2.4016454e+03 -1.6792070e+03 - -6.3833171e+02 2.4128266e+03 -1.6317753e+03 - -7.1978765e+02 2.4262353e+03 -1.5770922e+03 - -7.9771376e+02 2.4419811e+03 -1.5153460e+03 - -8.7192293e+02 2.4601124e+03 -1.4468618e+03 - -9.4233261e+02 2.4805893e+03 -1.3721353e+03 - -1.0089766e+03 2.5032585e+03 -1.2918604e+03 - -1.0720106e+03 2.5278342e+03 -1.2069410e+03 - -1.1317087e+03 2.5538903e+03 -1.1184834e+03 - -1.1884492e+03 2.5808675e+03 -1.0277623e+03 - -1.2426896e+03 2.6080972e+03 -9.3616235e+02 - -1.2949327e+03 2.6348409e+03 -8.4509956e+02 - -1.3456891e+03 2.6603394e+03 -7.5593457e+02 - -1.3954401e+03 2.6838647e+03 -6.6989058e+02 - -1.4446080e+03 2.7047659e+03 -5.8798887e+02 - -1.4935354e+03 2.7225032e+03 -5.1101002e+02 - -1.5424760e+03 2.7366668e+03 -4.3948295e+02 - -1.5915956e+03 2.7469801e+03 -3.7369851e+02 - -1.6409800e+03 2.7532911e+03 -3.1374071e+02 - -1.6906479e+03 2.7555555e+03 -2.5952752e+02 - -1.7405650e+03 2.7538158e+03 -2.1085423e+02 - -1.7906580e+03 2.7481795e+03 -1.6743388e+02 - -1.8408268e+03 2.7388000e+03 -1.2893198e+02 - -1.8909545e+03 2.7258590e+03 -9.4994180e+01 - -1.9409148e+03 2.7095542e+03 -6.5266890e+01 - -1.9905775e+03 2.6900888e+03 -3.9411900e+01 - -2.0398118e+03 2.6676646e+03 -1.7115933e+01 - -2.0884886e+03 2.6424777e+03 1.9035761e+00 - -2.1364817e+03 2.6147155e+03 1.7895434e+01 - -2.1836676e+03 2.5845553e+03 3.1073504e+01 - -2.2299253e+03 2.5521642e+03 4.1616683e+01 - -2.2751358e+03 2.5176993e+03 4.9669523e+01 - -2.3191810e+03 2.4813084e+03 5.5343134e+01 - -2.3619424e+03 2.4431311e+03 5.8716100e+01 - -2.4033001e+03 2.4033001e+03 5.9835239e+01 - -2.4431311e+03 2.3619424e+03 5.8716100e+01 - -2.4813084e+03 2.3191810e+03 5.5343134e+01 - -2.5176993e+03 2.2751358e+03 4.9669523e+01 - -2.5521642e+03 2.2299253e+03 4.1616683e+01 - -2.5845553e+03 2.1836676e+03 3.1073504e+01 - -2.6147155e+03 2.1364817e+03 1.7895434e+01 - -2.6424777e+03 2.0884886e+03 1.9035761e+00 - -2.6676646e+03 2.0398118e+03 -1.7115933e+01 - -2.6900888e+03 1.9905775e+03 -3.9411901e+01 - -2.7095542e+03 1.9409148e+03 -6.5266890e+01 - -2.7258590e+03 1.8909545e+03 -9.4994180e+01 - -2.7388000e+03 1.8408268e+03 -1.2893198e+02 - -2.7481795e+03 1.7906580e+03 -1.6743388e+02 - -2.7538158e+03 1.7405650e+03 -2.1085423e+02 - -2.7555555e+03 1.6906479e+03 -2.5952752e+02 - -2.7532911e+03 1.6409800e+03 -3.1374071e+02 - -2.7469801e+03 1.5915956e+03 -3.7369851e+02 - -2.7366668e+03 1.5424760e+03 -4.3948295e+02 - -2.7225032e+03 1.4935354e+03 -5.1101002e+02 - -2.7047659e+03 1.4446080e+03 -5.8798887e+02 - -2.6838647e+03 1.3954401e+03 -6.6989058e+02 - -2.6603394e+03 1.3456891e+03 -7.5593457e+02 - -2.6348409e+03 1.2949327e+03 -8.4509956e+02 - -2.6080972e+03 1.2426896e+03 -9.3616235e+02 - -2.5808675e+03 1.1884492e+03 -1.0277623e+03 - -2.5538903e+03 1.1317087e+03 -1.1184834e+03 - -2.5278342e+03 1.0720106e+03 -1.2069410e+03 - -2.5032585e+03 1.0089766e+03 -1.2918604e+03 - -2.4805893e+03 9.4233261e+02 -1.3721353e+03 - -2.4601124e+03 8.7192293e+02 -1.4468618e+03 - -2.4419811e+03 7.9771376e+02 -1.5153460e+03 - -2.4262353e+03 7.1978765e+02 -1.5770922e+03 - -2.4128266e+03 6.3833171e+02 -1.6317753e+03 - -2.4016454e+03 5.5362253e+02 -1.6792070e+03 - -2.3925472e+03 4.6601015e+02 -1.7193002e+03 - -2.3853748e+03 3.7590266e+02 -1.7520361e+03 - -2.3799772e+03 2.8375250e+02 -1.7774356e+03 - -2.3762234e+03 1.9004462e+02 -1.7955372e+03 - -2.3740130e+03 9.5286558e+01 -1.8063795e+03 - -2.3732834e+03 0.0000000e+00 -1.8099903e+03 - -2.3740130e+03 -9.5286558e+01 -1.8063795e+03 - -2.3762234e+03 -1.9004462e+02 -1.7955372e+03 - -2.3799772e+03 -2.8375250e+02 -1.7774356e+03 - -2.3853748e+03 -3.7590266e+02 -1.7520361e+03 - -2.3925472e+03 -4.6601015e+02 -1.7193002e+03 - -2.4016454e+03 -5.5362253e+02 -1.6792070e+03 - -2.4128266e+03 -6.3833171e+02 -1.6317753e+03 - -2.4262353e+03 -7.1978765e+02 -1.5770922e+03 - -2.4419811e+03 -7.9771376e+02 -1.5153460e+03 - -2.4601124e+03 -8.7192293e+02 -1.4468618e+03 - -2.4805893e+03 -9.4233261e+02 -1.3721353e+03 - -2.5032585e+03 -1.0089766e+03 -1.2918604e+03 - -2.5278342e+03 -1.0720106e+03 -1.2069410e+03 - -2.5538903e+03 -1.1317087e+03 -1.1184834e+03 - -2.5808675e+03 -1.1884492e+03 -1.0277623e+03 - -2.6080972e+03 -1.2426896e+03 -9.3616235e+02 - -2.6348409e+03 -1.2949327e+03 -8.4509956e+02 - -2.6603394e+03 -1.3456891e+03 -7.5593457e+02 - -2.6838647e+03 -1.3954401e+03 -6.6989058e+02 - -2.7047659e+03 -1.4446080e+03 -5.8798887e+02 - -2.7225032e+03 -1.4935354e+03 -5.1101002e+02 - -2.7366668e+03 -1.5424760e+03 -4.3948295e+02 - -2.7469801e+03 -1.5915956e+03 -3.7369851e+02 - -2.7532911e+03 -1.6409800e+03 -3.1374071e+02 - -2.7555555e+03 -1.6906479e+03 -2.5952752e+02 - -2.7538158e+03 -1.7405650e+03 -2.1085423e+02 - -2.7481795e+03 -1.7906580e+03 -1.6743388e+02 - -2.7388000e+03 -1.8408268e+03 -1.2893198e+02 - -2.7258590e+03 -1.8909545e+03 -9.4994180e+01 - -2.7095542e+03 -1.9409148e+03 -6.5266890e+01 - -2.6900888e+03 -1.9905775e+03 -3.9411901e+01 - -2.6676646e+03 -2.0398118e+03 -1.7115933e+01 - -2.6424777e+03 -2.0884886e+03 1.9035761e+00 - -2.6147155e+03 -2.1364817e+03 1.7895434e+01 - -2.5845553e+03 -2.1836676e+03 3.1073504e+01 - -2.5521642e+03 -2.2299253e+03 4.1616683e+01 - -2.5176993e+03 -2.2751358e+03 4.9669523e+01 - -2.4813084e+03 -2.3191810e+03 5.5343134e+01 - -2.4431311e+03 -2.3619424e+03 5.8716100e+01 - -2.4033001e+03 -2.4033001e+03 5.9835239e+01 - -2.3619424e+03 -2.4431311e+03 5.8716100e+01 - -2.3191810e+03 -2.4813084e+03 5.5343134e+01 - -2.2751358e+03 -2.5176993e+03 4.9669523e+01 - -2.2299253e+03 -2.5521642e+03 4.1616683e+01 - -2.1836676e+03 -2.5845553e+03 3.1073504e+01 - -2.1364817e+03 -2.6147155e+03 1.7895434e+01 - -2.0884886e+03 -2.6424777e+03 1.9035761e+00 - -2.0398118e+03 -2.6676646e+03 -1.7115933e+01 - -1.9905775e+03 -2.6900888e+03 -3.9411900e+01 - -1.9409148e+03 -2.7095542e+03 -6.5266890e+01 - -1.8909545e+03 -2.7258590e+03 -9.4994180e+01 - -1.8408268e+03 -2.7388000e+03 -1.2893198e+02 - -1.7906580e+03 -2.7481795e+03 -1.6743388e+02 - -1.7405650e+03 -2.7538158e+03 -2.1085423e+02 - -1.6906479e+03 -2.7555555e+03 -2.5952752e+02 - -1.6409800e+03 -2.7532911e+03 -3.1374071e+02 - -1.5915956e+03 -2.7469801e+03 -3.7369851e+02 - -1.5424760e+03 -2.7366668e+03 -4.3948295e+02 - -1.4935354e+03 -2.7225032e+03 -5.1101002e+02 - -1.4446080e+03 -2.7047659e+03 -5.8798887e+02 - -1.3954401e+03 -2.6838647e+03 -6.6989058e+02 - -1.3456891e+03 -2.6603394e+03 -7.5593457e+02 - -1.2949327e+03 -2.6348409e+03 -8.4509956e+02 - -1.2426896e+03 -2.6080972e+03 -9.3616235e+02 - -1.1884492e+03 -2.5808675e+03 -1.0277623e+03 - -1.1317087e+03 -2.5538903e+03 -1.1184834e+03 - -1.0720106e+03 -2.5278342e+03 -1.2069410e+03 - -1.0089766e+03 -2.5032585e+03 -1.2918604e+03 - -9.4233261e+02 -2.4805893e+03 -1.3721353e+03 - -8.7192293e+02 -2.4601124e+03 -1.4468618e+03 - -7.9771376e+02 -2.4419811e+03 -1.5153460e+03 - -7.1978765e+02 -2.4262353e+03 -1.5770922e+03 - -6.3833171e+02 -2.4128266e+03 -1.6317753e+03 - -5.5362253e+02 -2.4016454e+03 -1.6792070e+03 - -4.6601015e+02 -2.3925472e+03 -1.7193002e+03 - -3.7590266e+02 -2.3853748e+03 -1.7520361e+03 - -2.8375250e+02 -2.3799772e+03 -1.7774356e+03 - -1.9004462e+02 -2.3762234e+03 -1.7955372e+03 - -9.5286558e+01 -2.3740130e+03 -1.8063795e+03 - -2.4067136e-09 -2.3732834e+03 -1.8099903e+03 - 9.5286558e+01 -2.3740130e+03 -1.8063795e+03 - 1.9004462e+02 -2.3762234e+03 -1.7955372e+03 - 2.8375250e+02 -2.3799772e+03 -1.7774356e+03 - 3.7590266e+02 -2.3853748e+03 -1.7520361e+03 - 4.6601015e+02 -2.3925472e+03 -1.7193002e+03 - 5.5362253e+02 -2.4016454e+03 -1.6792070e+03 - 6.3833171e+02 -2.4128266e+03 -1.6317753e+03 - 7.1978765e+02 -2.4262353e+03 -1.5770922e+03 - 7.9771376e+02 -2.4419811e+03 -1.5153460e+03 - 8.7192293e+02 -2.4601124e+03 -1.4468618e+03 - 9.4233261e+02 -2.4805893e+03 -1.3721353e+03 - 1.0089766e+03 -2.5032585e+03 -1.2918604e+03 - 1.0720106e+03 -2.5278342e+03 -1.2069410e+03 - 1.1317087e+03 -2.5538903e+03 -1.1184834e+03 - 1.1884492e+03 -2.5808675e+03 -1.0277623e+03 - 1.2426896e+03 -2.6080972e+03 -9.3616235e+02 - 1.2949327e+03 -2.6348409e+03 -8.4509956e+02 - 1.3456891e+03 -2.6603394e+03 -7.5593457e+02 - 1.3954401e+03 -2.6838647e+03 -6.6989058e+02 - 1.4446080e+03 -2.7047659e+03 -5.8798887e+02 - 1.4935354e+03 -2.7225032e+03 -5.1101002e+02 - 1.5424760e+03 -2.7366668e+03 -4.3948295e+02 - 1.5915956e+03 -2.7469801e+03 -3.7369851e+02 - 1.6409800e+03 -2.7532911e+03 -3.1374071e+02 - 1.6906479e+03 -2.7555555e+03 -2.5952752e+02 - 1.7405650e+03 -2.7538158e+03 -2.1085423e+02 - 1.7906580e+03 -2.7481795e+03 -1.6743388e+02 - 1.8408268e+03 -2.7388000e+03 -1.2893198e+02 - 1.8909545e+03 -2.7258590e+03 -9.4994180e+01 - 1.9409148e+03 -2.7095542e+03 -6.5266890e+01 - 1.9905775e+03 -2.6900888e+03 -3.9411901e+01 - 2.0398118e+03 -2.6676646e+03 -1.7115933e+01 - 2.0884886e+03 -2.6424777e+03 1.9035761e+00 - 2.1364817e+03 -2.6147155e+03 1.7895434e+01 - 2.1836676e+03 -2.5845553e+03 3.1073504e+01 - 2.2299253e+03 -2.5521642e+03 4.1616683e+01 - 2.2751358e+03 -2.5176993e+03 4.9669523e+01 - 2.3191810e+03 -2.4813084e+03 5.5343134e+01 - 2.3619424e+03 -2.4431311e+03 5.8716100e+01 - 2.4033001e+03 -2.4033001e+03 5.9835239e+01 - 2.4431311e+03 -2.3619424e+03 5.8716100e+01 - 2.4813084e+03 -2.3191810e+03 5.5343134e+01 - 2.5176993e+03 -2.2751358e+03 4.9669523e+01 - 2.5521642e+03 -2.2299253e+03 4.1616683e+01 - 2.5845553e+03 -2.1836676e+03 3.1073504e+01 - 2.6147155e+03 -2.1364817e+03 1.7895434e+01 - 2.6424777e+03 -2.0884886e+03 1.9035761e+00 - 2.6676646e+03 -2.0398118e+03 -1.7115933e+01 - 2.6900888e+03 -1.9905775e+03 -3.9411901e+01 - 2.7095542e+03 -1.9409148e+03 -6.5266890e+01 - 2.7258590e+03 -1.8909545e+03 -9.4994180e+01 - 2.7388000e+03 -1.8408268e+03 -1.2893198e+02 - 2.7481795e+03 -1.7906580e+03 -1.6743388e+02 - 2.7538158e+03 -1.7405650e+03 -2.1085423e+02 - 2.7555555e+03 -1.6906479e+03 -2.5952752e+02 - 2.7532911e+03 -1.6409800e+03 -3.1374071e+02 - 2.7469801e+03 -1.5915956e+03 -3.7369851e+02 - 2.7366668e+03 -1.5424760e+03 -4.3948295e+02 - 2.7225032e+03 -1.4935354e+03 -5.1101002e+02 - 2.7047659e+03 -1.4446080e+03 -5.8798887e+02 - 2.6838647e+03 -1.3954401e+03 -6.6989058e+02 - 2.6603394e+03 -1.3456891e+03 -7.5593457e+02 - 2.6348409e+03 -1.2949327e+03 -8.4509956e+02 - 2.6080972e+03 -1.2426896e+03 -9.3616235e+02 - 2.5808675e+03 -1.1884492e+03 -1.0277623e+03 - 2.5538903e+03 -1.1317087e+03 -1.1184834e+03 - 2.5278342e+03 -1.0720106e+03 -1.2069410e+03 - 2.5032585e+03 -1.0089766e+03 -1.2918604e+03 - 2.4805893e+03 -9.4233261e+02 -1.3721353e+03 - 2.4601124e+03 -8.7192293e+02 -1.4468618e+03 - 2.4419811e+03 -7.9771376e+02 -1.5153460e+03 - 2.4262353e+03 -7.1978765e+02 -1.5770922e+03 - 2.4128266e+03 -6.3833171e+02 -1.6317753e+03 - 2.4016454e+03 -5.5362253e+02 -1.6792070e+03 - 2.3925472e+03 -4.6601015e+02 -1.7193002e+03 - 2.3853748e+03 -3.7590266e+02 -1.7520361e+03 - 2.3799772e+03 -2.8375250e+02 -1.7774356e+03 - 2.3762234e+03 -1.9004462e+02 -1.7955372e+03 - 2.3740130e+03 -9.5286558e+01 -1.8063795e+03 - 2.3732834e+03 -2.4067136e-09 -1.8099903e+03 - 2.3409402e+03 -2.4067136e-09 -1.8783781e+03 - 2.3421957e+03 8.5010490e+01 -1.8740700e+03 - 2.3459755e+03 1.6953478e+02 -1.8611516e+03 - 2.3523167e+03 2.5309923e+02 -1.8396449e+03 - 2.3612729e+03 3.3525573e+02 -1.8095987e+03 - 2.3729021e+03 4.1559531e+02 -1.7711082e+03 - 2.3872499e+03 4.9376246e+02 -1.7243392e+03 - 2.4043284e+03 5.6946961e+02 -1.6695586e+03 - 2.4240931e+03 6.4251111e+02 -1.6071658e+03 - 2.4464191e+03 7.1277502e+02 -1.5377224e+03 - 2.4710799e+03 7.8025096e+02 -1.4619734e+03 - 2.4977334e+03 8.4503194e+02 -1.3808558e+03 - 2.5259177e+03 9.0730855e+02 -1.2954869e+03 - 2.5550605e+03 9.6735471e+02 -1.2071318e+03 - 2.5845022e+03 1.0255057e+03 -1.1171499e+03 - 2.6135308e+03 1.0821307e+03 -1.0269251e+03 - 2.6414239e+03 1.1376036e+03 -9.3779118e+02 - 2.6674918e+03 1.1922757e+03 -8.5096131e+02 - 2.6911159e+03 1.2464534e+03 -7.6747179e+02 - 2.7117761e+03 1.3003840e+03 -6.8814702e+02 - 2.7290670e+03 1.3542494e+03 -6.1358687e+02 - 2.7427010e+03 1.4081662e+03 -5.4417442e+02 - 2.7525023e+03 1.4621919e+03 -4.8009898e+02 - 2.7583935e+03 1.5163341e+03 -4.2138821e+02 - 2.7603784e+03 1.5705602e+03 -3.6794369e+02 - 2.7585242e+03 1.6248083e+03 -3.1957571e+02 - 2.7529446e+03 1.6789954e+03 -2.7603412e+02 - 2.7437846e+03 1.7330255e+03 -2.3703416e+02 - 2.7312090e+03 1.7867948e+03 -2.0227676e+02 - 2.7153919e+03 1.8401964e+03 -1.7146375e+02 - 2.6965106e+03 1.8931229e+03 -1.4430860e+02 - 2.6747399e+03 1.9454682e+03 -1.2054366e+02 - 2.6502492e+03 1.9971284e+03 -9.9924660e+01 - 2.6232002e+03 2.0480025e+03 -8.2233244e+01 - 2.5937463e+03 2.0979920e+03 -6.7278064e+01 - 2.5620319e+03 2.1470007e+03 -5.4895006e+01 - 2.5281926e+03 2.1949337e+03 -4.4946861e+01 - 2.4923558e+03 2.2416973e+03 -3.7322701e+01 - 2.4546415e+03 2.2871977e+03 -3.1937183e+01 - 2.4151632e+03 2.3313402e+03 -2.8729883e+01 - 2.3740285e+03 2.3740285e+03 -2.7664774e+01 - 2.3313402e+03 2.4151632e+03 -2.8729883e+01 - 2.2871977e+03 2.4546415e+03 -3.1937183e+01 - 2.2416973e+03 2.4923558e+03 -3.7322701e+01 - 2.1949337e+03 2.5281926e+03 -4.4946861e+01 - 2.1470007e+03 2.5620319e+03 -5.4895006e+01 - 2.0979920e+03 2.5937463e+03 -6.7278064e+01 - 2.0480025e+03 2.6232002e+03 -8.2233244e+01 - 1.9971284e+03 2.6502492e+03 -9.9924660e+01 - 1.9454682e+03 2.6747399e+03 -1.2054366e+02 - 1.8931229e+03 2.6965106e+03 -1.4430860e+02 - 1.8401964e+03 2.7153919e+03 -1.7146375e+02 - 1.7867948e+03 2.7312090e+03 -2.0227676e+02 - 1.7330255e+03 2.7437846e+03 -2.3703416e+02 - 1.6789954e+03 2.7529446e+03 -2.7603412e+02 - 1.6248083e+03 2.7585242e+03 -3.1957571e+02 - 1.5705602e+03 2.7603784e+03 -3.6794369e+02 - 1.5163341e+03 2.7583935e+03 -4.2138821e+02 - 1.4621919e+03 2.7525023e+03 -4.8009898e+02 - 1.4081662e+03 2.7427010e+03 -5.4417442e+02 - 1.3542494e+03 2.7290670e+03 -6.1358687e+02 - 1.3003840e+03 2.7117761e+03 -6.8814702e+02 - 1.2464534e+03 2.6911159e+03 -7.6747179e+02 - 1.1922757e+03 2.6674918e+03 -8.5096131e+02 - 1.1376036e+03 2.6414239e+03 -9.3779118e+02 - 1.0821307e+03 2.6135308e+03 -1.0269251e+03 - 1.0255057e+03 2.5845022e+03 -1.1171499e+03 - 9.6735471e+02 2.5550605e+03 -1.2071318e+03 - 9.0730855e+02 2.5259177e+03 -1.2954869e+03 - 8.4503194e+02 2.4977334e+03 -1.3808558e+03 - 7.8025096e+02 2.4710799e+03 -1.4619734e+03 - 7.1277502e+02 2.4464191e+03 -1.5377224e+03 - 6.4251111e+02 2.4240931e+03 -1.6071658e+03 - 5.6946961e+02 2.4043284e+03 -1.6695586e+03 - 4.9376246e+02 2.3872499e+03 -1.7243392e+03 - 4.1559531e+02 2.3729021e+03 -1.7711082e+03 - 3.3525573e+02 2.3612729e+03 -1.8095987e+03 - 2.5309923e+02 2.3523167e+03 -1.8396449e+03 - 1.6953478e+02 2.3459755e+03 -1.8611516e+03 - 8.5010490e+01 2.3421957e+03 -1.8740700e+03 - 2.4067136e-09 2.3409402e+03 -1.8783781e+03 - -8.5010490e+01 2.3421957e+03 -1.8740700e+03 - -1.6953478e+02 2.3459755e+03 -1.8611516e+03 - -2.5309923e+02 2.3523167e+03 -1.8396449e+03 - -3.3525573e+02 2.3612729e+03 -1.8095987e+03 - -4.1559531e+02 2.3729021e+03 -1.7711082e+03 - -4.9376246e+02 2.3872499e+03 -1.7243392e+03 - -5.6946961e+02 2.4043284e+03 -1.6695586e+03 - -6.4251111e+02 2.4240931e+03 -1.6071658e+03 - -7.1277502e+02 2.4464191e+03 -1.5377224e+03 - -7.8025096e+02 2.4710799e+03 -1.4619734e+03 - -8.4503194e+02 2.4977334e+03 -1.3808558e+03 - -9.0730855e+02 2.5259177e+03 -1.2954869e+03 - -9.6735471e+02 2.5550605e+03 -1.2071318e+03 - -1.0255057e+03 2.5845022e+03 -1.1171499e+03 - -1.0821307e+03 2.6135308e+03 -1.0269251e+03 - -1.1376036e+03 2.6414239e+03 -9.3779118e+02 - -1.1922757e+03 2.6674918e+03 -8.5096131e+02 - -1.2464534e+03 2.6911159e+03 -7.6747179e+02 - -1.3003840e+03 2.7117761e+03 -6.8814702e+02 - -1.3542494e+03 2.7290670e+03 -6.1358687e+02 - -1.4081662e+03 2.7427010e+03 -5.4417442e+02 - -1.4621919e+03 2.7525023e+03 -4.8009898e+02 - -1.5163341e+03 2.7583935e+03 -4.2138821e+02 - -1.5705602e+03 2.7603784e+03 -3.6794369e+02 - -1.6248083e+03 2.7585242e+03 -3.1957571e+02 - -1.6789954e+03 2.7529446e+03 -2.7603412e+02 - -1.7330255e+03 2.7437846e+03 -2.3703416e+02 - -1.7867948e+03 2.7312090e+03 -2.0227676e+02 - -1.8401964e+03 2.7153919e+03 -1.7146375e+02 - -1.8931229e+03 2.6965106e+03 -1.4430860e+02 - -1.9454682e+03 2.6747399e+03 -1.2054366e+02 - -1.9971284e+03 2.6502492e+03 -9.9924660e+01 - -2.0480025e+03 2.6232002e+03 -8.2233244e+01 - -2.0979920e+03 2.5937463e+03 -6.7278064e+01 - -2.1470007e+03 2.5620319e+03 -5.4895006e+01 - -2.1949337e+03 2.5281926e+03 -4.4946861e+01 - -2.2416973e+03 2.4923558e+03 -3.7322701e+01 - -2.2871977e+03 2.4546415e+03 -3.1937183e+01 - -2.3313402e+03 2.4151632e+03 -2.8729883e+01 - -2.3740285e+03 2.3740285e+03 -2.7664774e+01 - -2.4151632e+03 2.3313402e+03 -2.8729883e+01 - -2.4546415e+03 2.2871977e+03 -3.1937183e+01 - -2.4923558e+03 2.2416973e+03 -3.7322701e+01 - -2.5281926e+03 2.1949337e+03 -4.4946861e+01 - -2.5620319e+03 2.1470007e+03 -5.4895006e+01 - -2.5937463e+03 2.0979920e+03 -6.7278064e+01 - -2.6232002e+03 2.0480025e+03 -8.2233244e+01 - -2.6502492e+03 1.9971284e+03 -9.9924660e+01 - -2.6747399e+03 1.9454682e+03 -1.2054366e+02 - -2.6965106e+03 1.8931229e+03 -1.4430860e+02 - -2.7153919e+03 1.8401964e+03 -1.7146375e+02 - -2.7312090e+03 1.7867948e+03 -2.0227676e+02 - -2.7437846e+03 1.7330255e+03 -2.3703416e+02 - -2.7529446e+03 1.6789954e+03 -2.7603412e+02 - -2.7585242e+03 1.6248083e+03 -3.1957571e+02 - -2.7603784e+03 1.5705602e+03 -3.6794369e+02 - -2.7583935e+03 1.5163341e+03 -4.2138821e+02 - -2.7525023e+03 1.4621919e+03 -4.8009898e+02 - -2.7427010e+03 1.4081662e+03 -5.4417442e+02 - -2.7290670e+03 1.3542494e+03 -6.1358687e+02 - -2.7117761e+03 1.3003840e+03 -6.8814702e+02 - -2.6911159e+03 1.2464534e+03 -7.6747179e+02 - -2.6674918e+03 1.1922757e+03 -8.5096131e+02 - -2.6414239e+03 1.1376036e+03 -9.3779118e+02 - -2.6135308e+03 1.0821307e+03 -1.0269251e+03 - -2.5845022e+03 1.0255057e+03 -1.1171499e+03 - -2.5550605e+03 9.6735471e+02 -1.2071318e+03 - -2.5259177e+03 9.0730855e+02 -1.2954869e+03 - -2.4977334e+03 8.4503194e+02 -1.3808558e+03 - -2.4710799e+03 7.8025096e+02 -1.4619734e+03 - -2.4464191e+03 7.1277502e+02 -1.5377224e+03 - -2.4240931e+03 6.4251111e+02 -1.6071658e+03 - -2.4043284e+03 5.6946961e+02 -1.6695586e+03 - -2.3872499e+03 4.9376246e+02 -1.7243392e+03 - -2.3729021e+03 4.1559531e+02 -1.7711082e+03 - -2.3612729e+03 3.3525573e+02 -1.8095987e+03 - -2.3523167e+03 2.5309923e+02 -1.8396449e+03 - -2.3459755e+03 1.6953478e+02 -1.8611516e+03 - -2.3421957e+03 8.5010490e+01 -1.8740700e+03 - -2.3409402e+03 4.8134273e-09 -1.8783781e+03 - -2.3421957e+03 -8.5010490e+01 -1.8740700e+03 - -2.3459755e+03 -1.6953478e+02 -1.8611516e+03 - -2.3523167e+03 -2.5309923e+02 -1.8396449e+03 - -2.3612729e+03 -3.3525573e+02 -1.8095987e+03 - -2.3729021e+03 -4.1559531e+02 -1.7711082e+03 - -2.3872499e+03 -4.9376246e+02 -1.7243392e+03 - -2.4043284e+03 -5.6946961e+02 -1.6695586e+03 - -2.4240931e+03 -6.4251111e+02 -1.6071658e+03 - -2.4464191e+03 -7.1277502e+02 -1.5377224e+03 - -2.4710799e+03 -7.8025096e+02 -1.4619734e+03 - -2.4977334e+03 -8.4503194e+02 -1.3808558e+03 - -2.5259177e+03 -9.0730855e+02 -1.2954869e+03 - -2.5550605e+03 -9.6735471e+02 -1.2071318e+03 - -2.5845022e+03 -1.0255057e+03 -1.1171499e+03 - -2.6135308e+03 -1.0821307e+03 -1.0269251e+03 - -2.6414239e+03 -1.1376036e+03 -9.3779118e+02 - -2.6674918e+03 -1.1922757e+03 -8.5096131e+02 - -2.6911159e+03 -1.2464534e+03 -7.6747179e+02 - -2.7117761e+03 -1.3003840e+03 -6.8814702e+02 - -2.7290670e+03 -1.3542494e+03 -6.1358687e+02 - -2.7427010e+03 -1.4081662e+03 -5.4417442e+02 - -2.7525023e+03 -1.4621919e+03 -4.8009898e+02 - -2.7583935e+03 -1.5163341e+03 -4.2138821e+02 - -2.7603784e+03 -1.5705602e+03 -3.6794369e+02 - -2.7585242e+03 -1.6248083e+03 -3.1957571e+02 - -2.7529446e+03 -1.6789954e+03 -2.7603412e+02 - -2.7437846e+03 -1.7330255e+03 -2.3703416e+02 - -2.7312090e+03 -1.7867948e+03 -2.0227676e+02 - -2.7153919e+03 -1.8401964e+03 -1.7146375e+02 - -2.6965106e+03 -1.8931229e+03 -1.4430860e+02 - -2.6747399e+03 -1.9454682e+03 -1.2054366e+02 - -2.6502492e+03 -1.9971284e+03 -9.9924660e+01 - -2.6232002e+03 -2.0480025e+03 -8.2233244e+01 - -2.5937463e+03 -2.0979920e+03 -6.7278064e+01 - -2.5620319e+03 -2.1470007e+03 -5.4895006e+01 - -2.5281926e+03 -2.1949337e+03 -4.4946861e+01 - -2.4923558e+03 -2.2416973e+03 -3.7322701e+01 - -2.4546415e+03 -2.2871977e+03 -3.1937183e+01 - -2.4151632e+03 -2.3313402e+03 -2.8729883e+01 - -2.3740285e+03 -2.3740285e+03 -2.7664774e+01 - -2.3313402e+03 -2.4151632e+03 -2.8729883e+01 - -2.2871977e+03 -2.4546415e+03 -3.1937183e+01 - -2.2416973e+03 -2.4923558e+03 -3.7322701e+01 - -2.1949337e+03 -2.5281926e+03 -4.4946861e+01 - -2.1470007e+03 -2.5620319e+03 -5.4895006e+01 - -2.0979920e+03 -2.5937463e+03 -6.7278064e+01 - -2.0480025e+03 -2.6232002e+03 -8.2233244e+01 - -1.9971284e+03 -2.6502492e+03 -9.9924660e+01 - -1.9454682e+03 -2.6747399e+03 -1.2054366e+02 - -1.8931229e+03 -2.6965106e+03 -1.4430860e+02 - -1.8401964e+03 -2.7153919e+03 -1.7146375e+02 - -1.7867948e+03 -2.7312090e+03 -2.0227676e+02 - -1.7330255e+03 -2.7437846e+03 -2.3703416e+02 - -1.6789954e+03 -2.7529446e+03 -2.7603412e+02 - -1.6248083e+03 -2.7585242e+03 -3.1957571e+02 - -1.5705602e+03 -2.7603784e+03 -3.6794369e+02 - -1.5163341e+03 -2.7583935e+03 -4.2138821e+02 - -1.4621919e+03 -2.7525023e+03 -4.8009898e+02 - -1.4081662e+03 -2.7427010e+03 -5.4417442e+02 - -1.3542494e+03 -2.7290670e+03 -6.1358687e+02 - -1.3003840e+03 -2.7117761e+03 -6.8814702e+02 - -1.2464534e+03 -2.6911159e+03 -7.6747179e+02 - -1.1922757e+03 -2.6674918e+03 -8.5096131e+02 - -1.1376036e+03 -2.6414239e+03 -9.3779118e+02 - -1.0821307e+03 -2.6135308e+03 -1.0269251e+03 - -1.0255057e+03 -2.5845022e+03 -1.1171499e+03 - -9.6735471e+02 -2.5550605e+03 -1.2071318e+03 - -9.0730855e+02 -2.5259177e+03 -1.2954869e+03 - -8.4503194e+02 -2.4977334e+03 -1.3808558e+03 - -7.8025096e+02 -2.4710799e+03 -1.4619734e+03 - -7.1277502e+02 -2.4464191e+03 -1.5377224e+03 - -6.4251111e+02 -2.4240931e+03 -1.6071658e+03 - -5.6946961e+02 -2.4043284e+03 -1.6695586e+03 - -4.9376246e+02 -2.3872499e+03 -1.7243392e+03 - -4.1559531e+02 -2.3729021e+03 -1.7711082e+03 - -3.3525573e+02 -2.3612729e+03 -1.8095987e+03 - -2.5309923e+02 -2.3523167e+03 -1.8396449e+03 - -1.6953478e+02 -2.3459755e+03 -1.8611516e+03 - -8.5010490e+01 -2.3421957e+03 -1.8740700e+03 - -2.4067136e-09 -2.3409402e+03 -1.8783781e+03 - 8.5010490e+01 -2.3421957e+03 -1.8740700e+03 - 1.6953478e+02 -2.3459755e+03 -1.8611516e+03 - 2.5309923e+02 -2.3523167e+03 -1.8396449e+03 - 3.3525573e+02 -2.3612729e+03 -1.8095987e+03 - 4.1559531e+02 -2.3729021e+03 -1.7711082e+03 - 4.9376246e+02 -2.3872499e+03 -1.7243392e+03 - 5.6946961e+02 -2.4043284e+03 -1.6695586e+03 - 6.4251111e+02 -2.4240931e+03 -1.6071658e+03 - 7.1277502e+02 -2.4464191e+03 -1.5377224e+03 - 7.8025096e+02 -2.4710799e+03 -1.4619734e+03 - 8.4503194e+02 -2.4977334e+03 -1.3808558e+03 - 9.0730855e+02 -2.5259177e+03 -1.2954869e+03 - 9.6735471e+02 -2.5550605e+03 -1.2071318e+03 - 1.0255057e+03 -2.5845022e+03 -1.1171499e+03 - 1.0821307e+03 -2.6135308e+03 -1.0269251e+03 - 1.1376036e+03 -2.6414239e+03 -9.3779118e+02 - 1.1922757e+03 -2.6674918e+03 -8.5096131e+02 - 1.2464534e+03 -2.6911159e+03 -7.6747179e+02 - 1.3003840e+03 -2.7117761e+03 -6.8814702e+02 - 1.3542494e+03 -2.7290670e+03 -6.1358687e+02 - 1.4081662e+03 -2.7427010e+03 -5.4417442e+02 - 1.4621919e+03 -2.7525023e+03 -4.8009898e+02 - 1.5163341e+03 -2.7583935e+03 -4.2138821e+02 - 1.5705602e+03 -2.7603784e+03 -3.6794369e+02 - 1.6248083e+03 -2.7585242e+03 -3.1957571e+02 - 1.6789954e+03 -2.7529446e+03 -2.7603412e+02 - 1.7330255e+03 -2.7437846e+03 -2.3703416e+02 - 1.7867948e+03 -2.7312090e+03 -2.0227676e+02 - 1.8401964e+03 -2.7153919e+03 -1.7146375e+02 - 1.8931229e+03 -2.6965106e+03 -1.4430860e+02 - 1.9454682e+03 -2.6747399e+03 -1.2054366e+02 - 1.9971284e+03 -2.6502492e+03 -9.9924660e+01 - 2.0480025e+03 -2.6232002e+03 -8.2233244e+01 - 2.0979920e+03 -2.5937463e+03 -6.7278064e+01 - 2.1470007e+03 -2.5620319e+03 -5.4895006e+01 - 2.1949337e+03 -2.5281926e+03 -4.4946861e+01 - 2.2416973e+03 -2.4923558e+03 -3.7322701e+01 - 2.2871977e+03 -2.4546415e+03 -3.1937183e+01 - 2.3313402e+03 -2.4151632e+03 -2.8729883e+01 - 2.3740285e+03 -2.3740285e+03 -2.7664774e+01 - 2.4151632e+03 -2.3313402e+03 -2.8729883e+01 - 2.4546415e+03 -2.2871977e+03 -3.1937183e+01 - 2.4923558e+03 -2.2416973e+03 -3.7322701e+01 - 2.5281926e+03 -2.1949337e+03 -4.4946861e+01 - 2.5620319e+03 -2.1470007e+03 -5.4895006e+01 - 2.5937463e+03 -2.0979920e+03 -6.7278064e+01 - 2.6232002e+03 -2.0480025e+03 -8.2233244e+01 - 2.6502492e+03 -1.9971284e+03 -9.9924660e+01 - 2.6747399e+03 -1.9454682e+03 -1.2054366e+02 - 2.6965106e+03 -1.8931229e+03 -1.4430860e+02 - 2.7153919e+03 -1.8401964e+03 -1.7146375e+02 - 2.7312090e+03 -1.7867948e+03 -2.0227676e+02 - 2.7437846e+03 -1.7330255e+03 -2.3703416e+02 - 2.7529446e+03 -1.6789954e+03 -2.7603412e+02 - 2.7585242e+03 -1.6248083e+03 -3.1957571e+02 - 2.7603784e+03 -1.5705602e+03 -3.6794369e+02 - 2.7583935e+03 -1.5163341e+03 -4.2138821e+02 - 2.7525023e+03 -1.4621919e+03 -4.8009898e+02 - 2.7427010e+03 -1.4081662e+03 -5.4417442e+02 - 2.7290670e+03 -1.3542494e+03 -6.1358687e+02 - 2.7117761e+03 -1.3003840e+03 -6.8814702e+02 - 2.6911159e+03 -1.2464534e+03 -7.6747179e+02 - 2.6674918e+03 -1.1922757e+03 -8.5096131e+02 - 2.6414239e+03 -1.1376036e+03 -9.3779118e+02 - 2.6135308e+03 -1.0821307e+03 -1.0269251e+03 - 2.5845022e+03 -1.0255057e+03 -1.1171499e+03 - 2.5550605e+03 -9.6735471e+02 -1.2071318e+03 - 2.5259177e+03 -9.0730855e+02 -1.2954869e+03 - 2.4977334e+03 -8.4503194e+02 -1.3808558e+03 - 2.4710799e+03 -7.8025096e+02 -1.4619734e+03 - 2.4464191e+03 -7.1277502e+02 -1.5377224e+03 - 2.4240931e+03 -6.4251111e+02 -1.6071658e+03 - 2.4043284e+03 -5.6946961e+02 -1.6695586e+03 - 2.3872499e+03 -4.9376246e+02 -1.7243392e+03 - 2.3729021e+03 -4.1559531e+02 -1.7711082e+03 - 2.3612729e+03 -3.3525573e+02 -1.8095987e+03 - 2.3523167e+03 -2.5309923e+02 -1.8396449e+03 - 2.3459755e+03 -1.6953478e+02 -1.8611516e+03 - 2.3421957e+03 -8.5010490e+01 -1.8740700e+03 - 2.3409402e+03 0.0000000e+00 -1.8783781e+03 - 2.3077107e+03 -4.8134273e-09 -1.9452124e+03 - 2.3096933e+03 7.2476923e+01 -1.9399257e+03 - 2.3156284e+03 1.4460077e+02 -1.9241164e+03 - 2.3254741e+03 2.1603728e+02 -1.8979407e+03 - 2.3391502e+03 2.8648909e+02 -1.8616735e+03 - 2.3565237e+03 3.5571211e+02 -1.8157268e+03 - 2.3773917e+03 4.2352927e+02 -1.7606707e+03 - 2.4014652e+03 4.8984001e+02 -1.6972505e+03 - 2.4283562e+03 5.5462460e+02 -1.6263960e+03 - 2.4575727e+03 6.1794192e+02 -1.5492152e+03 - 2.4885240e+03 6.7992050e+02 -1.4669714e+03 - 2.5205374e+03 7.4074349e+02 -1.3810408e+03 - 2.5528858e+03 8.0062902e+02 -1.2928550e+03 - 2.5848226e+03 8.5980863e+02 -1.2038353e+03 - 2.6156194e+03 9.1850650e+02 -1.1153254e+03 - 2.6446013e+03 9.7692195e+02 -1.0285335e+03 - 2.6711758e+03 1.0352171e+03 -9.4448898e+02 - 2.6948515e+03 1.0935100e+03 -8.6401814e+02 - 2.7152469e+03 1.1518734e+03 -7.8773803e+02 - 2.7320897e+03 1.2103374e+03 -7.1606669e+02 - 2.7452085e+03 1.2688949e+03 -6.4924452e+02 - 2.7545202e+03 1.3275087e+03 -5.8736244e+02 - 2.7600142e+03 1.3861189e+03 -5.3039230e+02 - 2.7617376e+03 1.4446491e+03 -4.7821649e+02 - 2.7597803e+03 1.5030129e+03 -4.3065450e+02 - 2.7542618e+03 1.5611177e+03 -3.8748545e+02 - 2.7453216e+03 1.6188687e+03 -3.4846629e+02 - 2.7331099e+03 1.6761713e+03 -3.1334588e+02 - 2.7177816e+03 1.7329323e+03 -2.8187537e+02 - 2.6994918e+03 1.7890615e+03 -2.5381566e+02 - 2.6783922e+03 1.8444714e+03 -2.2894240e+02 - 2.6546289e+03 1.8990778e+03 -2.0704919e+02 - 2.6283414e+03 1.9527994e+03 -1.8794940e+02 - 2.5996620e+03 2.0055572e+03 -1.7147708e+02 - 2.5687152e+03 2.0572743e+03 -1.5748719e+02 - 2.5356181e+03 2.1078753e+03 -1.4585542e+02 - 2.5004809e+03 2.1572855e+03 -1.3647779e+02 - 2.4634071e+03 2.2054304e+03 -1.2927016e+02 - 2.4244943e+03 2.2522350e+03 -1.2416771e+02 - 2.3838349e+03 2.2976231e+03 -1.2112452e+02 - 2.3415165e+03 2.3415165e+03 -1.2011316e+02 - 2.2976231e+03 2.3838349e+03 -1.2112452e+02 - 2.2522350e+03 2.4244943e+03 -1.2416771e+02 - 2.2054304e+03 2.4634071e+03 -1.2927016e+02 - 2.1572855e+03 2.5004809e+03 -1.3647779e+02 - 2.1078753e+03 2.5356181e+03 -1.4585542e+02 - 2.0572743e+03 2.5687152e+03 -1.5748719e+02 - 2.0055572e+03 2.5996620e+03 -1.7147708e+02 - 1.9527994e+03 2.6283414e+03 -1.8794940e+02 - 1.8990778e+03 2.6546289e+03 -2.0704919e+02 - 1.8444714e+03 2.6783922e+03 -2.2894240e+02 - 1.7890615e+03 2.6994918e+03 -2.5381566e+02 - 1.7329323e+03 2.7177816e+03 -2.8187537e+02 - 1.6761713e+03 2.7331099e+03 -3.1334588e+02 - 1.6188687e+03 2.7453216e+03 -3.4846629e+02 - 1.5611177e+03 2.7542618e+03 -3.8748545e+02 - 1.5030129e+03 2.7597803e+03 -4.3065450e+02 - 1.4446491e+03 2.7617376e+03 -4.7821649e+02 - 1.3861189e+03 2.7600142e+03 -5.3039230e+02 - 1.3275087e+03 2.7545202e+03 -5.8736244e+02 - 1.2688949e+03 2.7452085e+03 -6.4924452e+02 - 1.2103374e+03 2.7320897e+03 -7.1606669e+02 - 1.1518734e+03 2.7152469e+03 -7.8773803e+02 - 1.0935100e+03 2.6948515e+03 -8.6401814e+02 - 1.0352171e+03 2.6711758e+03 -9.4448898e+02 - 9.7692195e+02 2.6446013e+03 -1.0285335e+03 - 9.1850650e+02 2.6156194e+03 -1.1153254e+03 - 8.5980863e+02 2.5848226e+03 -1.2038353e+03 - 8.0062902e+02 2.5528858e+03 -1.2928550e+03 - 7.4074349e+02 2.5205374e+03 -1.3810408e+03 - 6.7992050e+02 2.4885240e+03 -1.4669714e+03 - 6.1794192e+02 2.4575727e+03 -1.5492152e+03 - 5.5462460e+02 2.4283562e+03 -1.6263960e+03 - 4.8984001e+02 2.4014652e+03 -1.6972505e+03 - 4.2352927e+02 2.3773917e+03 -1.7606707e+03 - 3.5571211e+02 2.3565237e+03 -1.8157268e+03 - 2.8648909e+02 2.3391502e+03 -1.8616735e+03 - 2.1603728e+02 2.3254741e+03 -1.8979407e+03 - 1.4460077e+02 2.3156284e+03 -1.9241164e+03 - 7.2476923e+01 2.3096933e+03 -1.9399257e+03 - -2.4067136e-09 2.3077107e+03 -1.9452124e+03 - -7.2476923e+01 2.3096933e+03 -1.9399257e+03 - -1.4460077e+02 2.3156284e+03 -1.9241164e+03 - -2.1603728e+02 2.3254741e+03 -1.8979407e+03 - -2.8648909e+02 2.3391502e+03 -1.8616735e+03 - -3.5571212e+02 2.3565237e+03 -1.8157268e+03 - -4.2352927e+02 2.3773917e+03 -1.7606707e+03 - -4.8984001e+02 2.4014652e+03 -1.6972505e+03 - -5.5462460e+02 2.4283562e+03 -1.6263960e+03 - -6.1794192e+02 2.4575727e+03 -1.5492152e+03 - -6.7992050e+02 2.4885240e+03 -1.4669714e+03 - -7.4074349e+02 2.5205374e+03 -1.3810408e+03 - -8.0062902e+02 2.5528858e+03 -1.2928550e+03 - -8.5980863e+02 2.5848226e+03 -1.2038353e+03 - -9.1850650e+02 2.6156194e+03 -1.1153254e+03 - -9.7692195e+02 2.6446013e+03 -1.0285335e+03 - -1.0352171e+03 2.6711758e+03 -9.4448898e+02 - -1.0935100e+03 2.6948515e+03 -8.6401814e+02 - -1.1518734e+03 2.7152469e+03 -7.8773803e+02 - -1.2103374e+03 2.7320897e+03 -7.1606669e+02 - -1.2688949e+03 2.7452085e+03 -6.4924452e+02 - -1.3275087e+03 2.7545202e+03 -5.8736244e+02 - -1.3861189e+03 2.7600142e+03 -5.3039230e+02 - -1.4446491e+03 2.7617376e+03 -4.7821649e+02 - -1.5030129e+03 2.7597803e+03 -4.3065450e+02 - -1.5611177e+03 2.7542618e+03 -3.8748545e+02 - -1.6188687e+03 2.7453216e+03 -3.4846629e+02 - -1.6761713e+03 2.7331099e+03 -3.1334588e+02 - -1.7329323e+03 2.7177816e+03 -2.8187537e+02 - -1.7890615e+03 2.6994918e+03 -2.5381566e+02 - -1.8444714e+03 2.6783922e+03 -2.2894240e+02 - -1.8990778e+03 2.6546289e+03 -2.0704919e+02 - -1.9527994e+03 2.6283414e+03 -1.8794940e+02 - -2.0055572e+03 2.5996620e+03 -1.7147708e+02 - -2.0572743e+03 2.5687152e+03 -1.5748719e+02 - -2.1078753e+03 2.5356181e+03 -1.4585542e+02 - -2.1572855e+03 2.5004809e+03 -1.3647779e+02 - -2.2054304e+03 2.4634071e+03 -1.2927016e+02 - -2.2522350e+03 2.4244943e+03 -1.2416771e+02 - -2.2976231e+03 2.3838349e+03 -1.2112452e+02 - -2.3415165e+03 2.3415165e+03 -1.2011316e+02 - -2.3838349e+03 2.2976231e+03 -1.2112452e+02 - -2.4244943e+03 2.2522350e+03 -1.2416771e+02 - -2.4634071e+03 2.2054304e+03 -1.2927016e+02 - -2.5004809e+03 2.1572855e+03 -1.3647779e+02 - -2.5356181e+03 2.1078753e+03 -1.4585542e+02 - -2.5687152e+03 2.0572743e+03 -1.5748719e+02 - -2.5996620e+03 2.0055572e+03 -1.7147708e+02 - -2.6283414e+03 1.9527994e+03 -1.8794940e+02 - -2.6546289e+03 1.8990778e+03 -2.0704919e+02 - -2.6783922e+03 1.8444714e+03 -2.2894240e+02 - -2.6994918e+03 1.7890615e+03 -2.5381566e+02 - -2.7177816e+03 1.7329323e+03 -2.8187537e+02 - -2.7331099e+03 1.6761713e+03 -3.1334588e+02 - -2.7453216e+03 1.6188687e+03 -3.4846629e+02 - -2.7542618e+03 1.5611177e+03 -3.8748545e+02 - -2.7597803e+03 1.5030129e+03 -4.3065450e+02 - -2.7617376e+03 1.4446491e+03 -4.7821649e+02 - -2.7600142e+03 1.3861189e+03 -5.3039230e+02 - -2.7545202e+03 1.3275087e+03 -5.8736244e+02 - -2.7452085e+03 1.2688949e+03 -6.4924452e+02 - -2.7320897e+03 1.2103374e+03 -7.1606669e+02 - -2.7152469e+03 1.1518734e+03 -7.8773803e+02 - -2.6948515e+03 1.0935100e+03 -8.6401814e+02 - -2.6711758e+03 1.0352171e+03 -9.4448898e+02 - -2.6446013e+03 9.7692195e+02 -1.0285335e+03 - -2.6156194e+03 9.1850650e+02 -1.1153254e+03 - -2.5848226e+03 8.5980863e+02 -1.2038353e+03 - -2.5528858e+03 8.0062902e+02 -1.2928550e+03 - -2.5205374e+03 7.4074349e+02 -1.3810408e+03 - -2.4885240e+03 6.7992050e+02 -1.4669714e+03 - -2.4575727e+03 6.1794192e+02 -1.5492152e+03 - -2.4283562e+03 5.5462460e+02 -1.6263960e+03 - -2.4014652e+03 4.8984001e+02 -1.6972505e+03 - -2.3773917e+03 4.2352927e+02 -1.7606707e+03 - -2.3565237e+03 3.5571212e+02 -1.8157268e+03 - -2.3391502e+03 2.8648909e+02 -1.8616735e+03 - -2.3254741e+03 2.1603728e+02 -1.8979407e+03 - -2.3156284e+03 1.4460077e+02 -1.9241164e+03 - -2.3096933e+03 7.2476923e+01 -1.9399257e+03 - -2.3077107e+03 4.8134273e-09 -1.9452124e+03 - -2.3096933e+03 -7.2476923e+01 -1.9399257e+03 - -2.3156284e+03 -1.4460077e+02 -1.9241164e+03 - -2.3254741e+03 -2.1603728e+02 -1.8979407e+03 - -2.3391502e+03 -2.8648909e+02 -1.8616735e+03 - -2.3565237e+03 -3.5571211e+02 -1.8157268e+03 - -2.3773917e+03 -4.2352927e+02 -1.7606707e+03 - -2.4014652e+03 -4.8984001e+02 -1.6972505e+03 - -2.4283562e+03 -5.5462460e+02 -1.6263960e+03 - -2.4575727e+03 -6.1794192e+02 -1.5492152e+03 - -2.4885240e+03 -6.7992050e+02 -1.4669714e+03 - -2.5205374e+03 -7.4074349e+02 -1.3810408e+03 - -2.5528858e+03 -8.0062902e+02 -1.2928550e+03 - -2.5848226e+03 -8.5980863e+02 -1.2038353e+03 - -2.6156194e+03 -9.1850650e+02 -1.1153254e+03 - -2.6446013e+03 -9.7692195e+02 -1.0285335e+03 - -2.6711758e+03 -1.0352171e+03 -9.4448898e+02 - -2.6948515e+03 -1.0935100e+03 -8.6401814e+02 - -2.7152469e+03 -1.1518734e+03 -7.8773803e+02 - -2.7320897e+03 -1.2103374e+03 -7.1606669e+02 - -2.7452085e+03 -1.2688949e+03 -6.4924452e+02 - -2.7545202e+03 -1.3275087e+03 -5.8736244e+02 - -2.7600142e+03 -1.3861189e+03 -5.3039230e+02 - -2.7617376e+03 -1.4446491e+03 -4.7821649e+02 - -2.7597803e+03 -1.5030129e+03 -4.3065450e+02 - -2.7542618e+03 -1.5611177e+03 -3.8748545e+02 - -2.7453216e+03 -1.6188687e+03 -3.4846629e+02 - -2.7331099e+03 -1.6761713e+03 -3.1334588e+02 - -2.7177816e+03 -1.7329323e+03 -2.8187537e+02 - -2.6994918e+03 -1.7890615e+03 -2.5381566e+02 - -2.6783922e+03 -1.8444714e+03 -2.2894240e+02 - -2.6546289e+03 -1.8990778e+03 -2.0704919e+02 - -2.6283414e+03 -1.9527994e+03 -1.8794940e+02 - -2.5996620e+03 -2.0055572e+03 -1.7147708e+02 - -2.5687152e+03 -2.0572743e+03 -1.5748719e+02 - -2.5356181e+03 -2.1078753e+03 -1.4585542e+02 - -2.5004809e+03 -2.1572855e+03 -1.3647779e+02 - -2.4634071e+03 -2.2054304e+03 -1.2927016e+02 - -2.4244943e+03 -2.2522350e+03 -1.2416771e+02 - -2.3838349e+03 -2.2976231e+03 -1.2112452e+02 - -2.3415165e+03 -2.3415165e+03 -1.2011316e+02 - -2.2976231e+03 -2.3838349e+03 -1.2112452e+02 - -2.2522350e+03 -2.4244943e+03 -1.2416771e+02 - -2.2054304e+03 -2.4634071e+03 -1.2927016e+02 - -2.1572855e+03 -2.5004809e+03 -1.3647779e+02 - -2.1078753e+03 -2.5356181e+03 -1.4585542e+02 - -2.0572743e+03 -2.5687152e+03 -1.5748719e+02 - -2.0055572e+03 -2.5996620e+03 -1.7147708e+02 - -1.9527994e+03 -2.6283414e+03 -1.8794940e+02 - -1.8990778e+03 -2.6546289e+03 -2.0704919e+02 - -1.8444714e+03 -2.6783922e+03 -2.2894240e+02 - -1.7890615e+03 -2.6994918e+03 -2.5381566e+02 - -1.7329323e+03 -2.7177816e+03 -2.8187537e+02 - -1.6761713e+03 -2.7331099e+03 -3.1334588e+02 - -1.6188687e+03 -2.7453216e+03 -3.4846629e+02 - -1.5611177e+03 -2.7542618e+03 -3.8748545e+02 - -1.5030129e+03 -2.7597803e+03 -4.3065450e+02 - -1.4446491e+03 -2.7617376e+03 -4.7821649e+02 - -1.3861189e+03 -2.7600142e+03 -5.3039230e+02 - -1.3275087e+03 -2.7545202e+03 -5.8736244e+02 - -1.2688949e+03 -2.7452085e+03 -6.4924452e+02 - -1.2103374e+03 -2.7320897e+03 -7.1606669e+02 - -1.1518734e+03 -2.7152469e+03 -7.8773803e+02 - -1.0935100e+03 -2.6948515e+03 -8.6401814e+02 - -1.0352171e+03 -2.6711758e+03 -9.4448898e+02 - -9.7692195e+02 -2.6446013e+03 -1.0285335e+03 - -9.1850650e+02 -2.6156194e+03 -1.1153254e+03 - -8.5980863e+02 -2.5848226e+03 -1.2038353e+03 - -8.0062902e+02 -2.5528858e+03 -1.2928550e+03 - -7.4074349e+02 -2.5205374e+03 -1.3810408e+03 - -6.7992050e+02 -2.4885240e+03 -1.4669714e+03 - -6.1794192e+02 -2.4575727e+03 -1.5492152e+03 - -5.5462460e+02 -2.4283562e+03 -1.6263960e+03 - -4.8984001e+02 -2.4014652e+03 -1.6972505e+03 - -4.2352927e+02 -2.3773917e+03 -1.7606707e+03 - -3.5571211e+02 -2.3565237e+03 -1.8157268e+03 - -2.8648909e+02 -2.3391502e+03 -1.8616735e+03 - -2.1603728e+02 -2.3254741e+03 -1.8979407e+03 - -1.4460077e+02 -2.3156284e+03 -1.9241164e+03 - -7.2476923e+01 -2.3096933e+03 -1.9399257e+03 - 2.4067136e-09 -2.3077107e+03 -1.9452124e+03 - 7.2476923e+01 -2.3096933e+03 -1.9399257e+03 - 1.4460077e+02 -2.3156284e+03 -1.9241164e+03 - 2.1603728e+02 -2.3254741e+03 -1.8979407e+03 - 2.8648909e+02 -2.3391502e+03 -1.8616735e+03 - 3.5571211e+02 -2.3565237e+03 -1.8157268e+03 - 4.2352927e+02 -2.3773917e+03 -1.7606707e+03 - 4.8984001e+02 -2.4014652e+03 -1.6972505e+03 - 5.5462460e+02 -2.4283562e+03 -1.6263960e+03 - 6.1794192e+02 -2.4575727e+03 -1.5492152e+03 - 6.7992050e+02 -2.4885240e+03 -1.4669714e+03 - 7.4074349e+02 -2.5205374e+03 -1.3810408e+03 - 8.0062902e+02 -2.5528858e+03 -1.2928550e+03 - 8.5980863e+02 -2.5848226e+03 -1.2038353e+03 - 9.1850650e+02 -2.6156194e+03 -1.1153254e+03 - 9.7692195e+02 -2.6446013e+03 -1.0285335e+03 - 1.0352171e+03 -2.6711758e+03 -9.4448898e+02 - 1.0935100e+03 -2.6948515e+03 -8.6401814e+02 - 1.1518734e+03 -2.7152469e+03 -7.8773803e+02 - 1.2103374e+03 -2.7320897e+03 -7.1606669e+02 - 1.2688949e+03 -2.7452085e+03 -6.4924452e+02 - 1.3275087e+03 -2.7545202e+03 -5.8736244e+02 - 1.3861189e+03 -2.7600142e+03 -5.3039230e+02 - 1.4446491e+03 -2.7617376e+03 -4.7821649e+02 - 1.5030129e+03 -2.7597803e+03 -4.3065450e+02 - 1.5611177e+03 -2.7542618e+03 -3.8748545e+02 - 1.6188687e+03 -2.7453216e+03 -3.4846629e+02 - 1.6761713e+03 -2.7331099e+03 -3.1334588e+02 - 1.7329323e+03 -2.7177816e+03 -2.8187537e+02 - 1.7890615e+03 -2.6994918e+03 -2.5381566e+02 - 1.8444714e+03 -2.6783922e+03 -2.2894240e+02 - 1.8990778e+03 -2.6546289e+03 -2.0704919e+02 - 1.9527994e+03 -2.6283414e+03 -1.8794940e+02 - 2.0055572e+03 -2.5996620e+03 -1.7147708e+02 - 2.0572743e+03 -2.5687152e+03 -1.5748719e+02 - 2.1078753e+03 -2.5356181e+03 -1.4585542e+02 - 2.1572855e+03 -2.5004809e+03 -1.3647779e+02 - 2.2054304e+03 -2.4634071e+03 -1.2927016e+02 - 2.2522350e+03 -2.4244943e+03 -1.2416771e+02 - 2.2976231e+03 -2.3838349e+03 -1.2112452e+02 - 2.3415165e+03 -2.3415165e+03 -1.2011316e+02 - 2.3838349e+03 -2.2976231e+03 -1.2112452e+02 - 2.4244943e+03 -2.2522350e+03 -1.2416771e+02 - 2.4634071e+03 -2.2054304e+03 -1.2927016e+02 - 2.5004809e+03 -2.1572855e+03 -1.3647779e+02 - 2.5356181e+03 -2.1078753e+03 -1.4585542e+02 - 2.5687152e+03 -2.0572743e+03 -1.5748719e+02 - 2.5996620e+03 -2.0055572e+03 -1.7147708e+02 - 2.6283414e+03 -1.9527994e+03 -1.8794940e+02 - 2.6546289e+03 -1.8990778e+03 -2.0704919e+02 - 2.6783922e+03 -1.8444714e+03 -2.2894240e+02 - 2.6994918e+03 -1.7890615e+03 -2.5381566e+02 - 2.7177816e+03 -1.7329323e+03 -2.8187537e+02 - 2.7331099e+03 -1.6761713e+03 -3.1334588e+02 - 2.7453216e+03 -1.6188687e+03 -3.4846629e+02 - 2.7542618e+03 -1.5611177e+03 -3.8748545e+02 - 2.7597803e+03 -1.5030129e+03 -4.3065450e+02 - 2.7617376e+03 -1.4446491e+03 -4.7821649e+02 - 2.7600142e+03 -1.3861189e+03 -5.3039230e+02 - 2.7545202e+03 -1.3275087e+03 -5.8736244e+02 - 2.7452085e+03 -1.2688949e+03 -6.4924452e+02 - 2.7320897e+03 -1.2103374e+03 -7.1606669e+02 - 2.7152469e+03 -1.1518734e+03 -7.8773803e+02 - 2.6948515e+03 -1.0935100e+03 -8.6401814e+02 - 2.6711758e+03 -1.0352171e+03 -9.4448898e+02 - 2.6446013e+03 -9.7692195e+02 -1.0285335e+03 - 2.6156194e+03 -9.1850650e+02 -1.1153254e+03 - 2.5848226e+03 -8.5980863e+02 -1.2038353e+03 - 2.5528858e+03 -8.0062902e+02 -1.2928550e+03 - 2.5205374e+03 -7.4074349e+02 -1.3810408e+03 - 2.4885240e+03 -6.7992050e+02 -1.4669714e+03 - 2.4575727e+03 -6.1794192e+02 -1.5492152e+03 - 2.4283562e+03 -5.5462460e+02 -1.6263960e+03 - 2.4014652e+03 -4.8984001e+02 -1.6972505e+03 - 2.3773917e+03 -4.2352927e+02 -1.7606707e+03 - 2.3565237e+03 -3.5571211e+02 -1.8157268e+03 - 2.3391502e+03 -2.8648909e+02 -1.8616735e+03 - 2.3254741e+03 -2.1603728e+02 -1.8979407e+03 - 2.3156284e+03 -1.4460077e+02 -1.9241164e+03 - 2.3096933e+03 -7.2476923e+01 -1.9399257e+03 - 2.3077107e+03 -7.2201409e-09 -1.9452124e+03 - 2.2736465e+03 0.0000000e+00 -2.0104787e+03 - 2.2766890e+03 5.6674612e+01 -2.0037463e+03 - 2.2857291e+03 1.1335690e+02 -1.9837187e+03 - 2.3005072e+03 1.7006405e+02 -1.9508998e+03 - 2.3205968e+03 2.2683026e+02 -1.9061123e+03 - 2.3454166e+03 2.8371056e+02 -1.8504700e+03 - 2.3742496e+03 3.4078004e+02 -1.7853353e+03 - 2.4062692e+03 3.9812870e+02 -1.7122629e+03 - 2.4405751e+03 4.5585277e+02 -1.6329307e+03 - 2.4762321e+03 5.1404432e+02 -1.5490626e+03 - 2.5123133e+03 5.7278088e+02 -1.4623511e+03 - 2.5479382e+03 6.3211697e+02 -1.3743871e+03 - 2.5823070e+03 6.9207851e+02 -1.2866025e+03 - 2.6147236e+03 7.5266074e+02 -1.2002311e+03 - 2.6446097e+03 8.1382913e+02 -1.1162881e+03 - 2.6715088e+03 8.7552285e+02 -1.0355675e+03 - 2.6950814e+03 9.3765969e+02 -9.5865381e+02 - 2.7150952e+03 1.0001416e+03 -8.8594286e+02 - 2.7314110e+03 1.0628603e+03 -8.1766922e+02 - 2.7439669e+03 1.1257017e+03 -7.5393511e+02 - 2.7527633e+03 1.1885504e+03 -6.9473864e+02 - 2.7578484e+03 1.2512924e+03 -6.3999969e+02 - 2.7593056e+03 1.3138172e+03 -5.8958221e+02 - 2.7572427e+03 1.3760194e+03 -5.4331284e+02 - 2.7517836e+03 1.4377993e+03 -5.0099575e+02 - 2.7430616e+03 1.4990630e+03 -4.6242436e+02 - 2.7312139e+03 1.5597225e+03 -4.2738995e+02 - 2.7163780e+03 1.6196954e+03 -3.9568818e+02 - 2.6986892e+03 1.6789040e+03 -3.6712354e+02 - 2.6782785e+03 1.7372752e+03 -3.4151243e+02 - 2.6552715e+03 1.7947396e+03 -3.1868511e+02 - 2.6297877e+03 1.8512309e+03 -2.9848686e+02 - 2.6019404e+03 1.9066852e+03 -2.8077852e+02 - 2.5718365e+03 1.9610407e+03 -2.6543666e+02 - 2.5395768e+03 2.0142367e+03 -2.5235349e+02 - 2.5052561e+03 2.0662133e+03 -2.4143656e+02 - 2.4689637e+03 2.1169110e+03 -2.3260847e+02 - 2.4307839e+03 2.1662696e+03 -2.2580650e+02 - 2.3907965e+03 2.2142284e+03 -2.2098225e+02 - 2.3490769e+03 2.2607255e+03 -2.1810137e+02 - 2.3056970e+03 2.3056970e+03 -2.1714335e+02 - 2.2607255e+03 2.3490769e+03 -2.1810137e+02 - 2.2142284e+03 2.3907965e+03 -2.2098225e+02 - 2.1662696e+03 2.4307839e+03 -2.2580650e+02 - 2.1169110e+03 2.4689637e+03 -2.3260847e+02 - 2.0662133e+03 2.5052561e+03 -2.4143656e+02 - 2.0142367e+03 2.5395768e+03 -2.5235349e+02 - 1.9610407e+03 2.5718365e+03 -2.6543666e+02 - 1.9066852e+03 2.6019404e+03 -2.8077852e+02 - 1.8512309e+03 2.6297877e+03 -2.9848686e+02 - 1.7947396e+03 2.6552715e+03 -3.1868511e+02 - 1.7372752e+03 2.6782785e+03 -3.4151243e+02 - 1.6789040e+03 2.6986892e+03 -3.6712354e+02 - 1.6196954e+03 2.7163780e+03 -3.9568818e+02 - 1.5597225e+03 2.7312139e+03 -4.2738995e+02 - 1.4990630e+03 2.7430616e+03 -4.6242436e+02 - 1.4377993e+03 2.7517836e+03 -5.0099575e+02 - 1.3760194e+03 2.7572427e+03 -5.4331284e+02 - 1.3138172e+03 2.7593056e+03 -5.8958221e+02 - 1.2512924e+03 2.7578484e+03 -6.3999969e+02 - 1.1885504e+03 2.7527633e+03 -6.9473864e+02 - 1.1257017e+03 2.7439669e+03 -7.5393511e+02 - 1.0628603e+03 2.7314110e+03 -8.1766922e+02 - 1.0001416e+03 2.7150952e+03 -8.8594286e+02 - 9.3765969e+02 2.6950814e+03 -9.5865381e+02 - 8.7552285e+02 2.6715088e+03 -1.0355675e+03 - 8.1382913e+02 2.6446097e+03 -1.1162881e+03 - 7.5266074e+02 2.6147236e+03 -1.2002311e+03 - 6.9207851e+02 2.5823070e+03 -1.2866025e+03 - 6.3211697e+02 2.5479382e+03 -1.3743871e+03 - 5.7278088e+02 2.5123133e+03 -1.4623511e+03 - 5.1404432e+02 2.4762321e+03 -1.5490626e+03 - 4.5585277e+02 2.4405751e+03 -1.6329307e+03 - 3.9812870e+02 2.4062692e+03 -1.7122629e+03 - 3.4078004e+02 2.3742496e+03 -1.7853353e+03 - 2.8371056e+02 2.3454166e+03 -1.8504700e+03 - 2.2683026e+02 2.3205968e+03 -1.9061123e+03 - 1.7006405e+02 2.3005072e+03 -1.9508998e+03 - 1.1335690e+02 2.2857291e+03 -1.9837187e+03 - 5.6674612e+01 2.2766890e+03 -2.0037463e+03 - -2.4067136e-09 2.2736465e+03 -2.0104787e+03 - -5.6674612e+01 2.2766890e+03 -2.0037463e+03 - -1.1335690e+02 2.2857291e+03 -1.9837187e+03 - -1.7006405e+02 2.3005072e+03 -1.9508998e+03 - -2.2683026e+02 2.3205968e+03 -1.9061123e+03 - -2.8371056e+02 2.3454166e+03 -1.8504700e+03 - -3.4078004e+02 2.3742496e+03 -1.7853353e+03 - -3.9812870e+02 2.4062692e+03 -1.7122629e+03 - -4.5585277e+02 2.4405751e+03 -1.6329307e+03 - -5.1404432e+02 2.4762321e+03 -1.5490626e+03 - -5.7278088e+02 2.5123133e+03 -1.4623511e+03 - -6.3211697e+02 2.5479382e+03 -1.3743871e+03 - -6.9207851e+02 2.5823070e+03 -1.2866025e+03 - -7.5266074e+02 2.6147236e+03 -1.2002311e+03 - -8.1382913e+02 2.6446097e+03 -1.1162881e+03 - -8.7552285e+02 2.6715088e+03 -1.0355675e+03 - -9.3765969e+02 2.6950814e+03 -9.5865381e+02 - -1.0001416e+03 2.7150952e+03 -8.8594286e+02 - -1.0628603e+03 2.7314110e+03 -8.1766922e+02 - -1.1257017e+03 2.7439669e+03 -7.5393511e+02 - -1.1885504e+03 2.7527633e+03 -6.9473864e+02 - -1.2512924e+03 2.7578484e+03 -6.3999969e+02 - -1.3138172e+03 2.7593056e+03 -5.8958221e+02 - -1.3760194e+03 2.7572427e+03 -5.4331284e+02 - -1.4377993e+03 2.7517836e+03 -5.0099575e+02 - -1.4990630e+03 2.7430616e+03 -4.6242436e+02 - -1.5597225e+03 2.7312139e+03 -4.2738995e+02 - -1.6196954e+03 2.7163780e+03 -3.9568818e+02 - -1.6789040e+03 2.6986892e+03 -3.6712354e+02 - -1.7372752e+03 2.6782785e+03 -3.4151243e+02 - -1.7947396e+03 2.6552715e+03 -3.1868511e+02 - -1.8512309e+03 2.6297877e+03 -2.9848686e+02 - -1.9066852e+03 2.6019404e+03 -2.8077852e+02 - -1.9610407e+03 2.5718365e+03 -2.6543666e+02 - -2.0142367e+03 2.5395768e+03 -2.5235349e+02 - -2.0662133e+03 2.5052561e+03 -2.4143656e+02 - -2.1169110e+03 2.4689637e+03 -2.3260847e+02 - -2.1662696e+03 2.4307839e+03 -2.2580650e+02 - -2.2142284e+03 2.3907965e+03 -2.2098225e+02 - -2.2607255e+03 2.3490769e+03 -2.1810137e+02 - -2.3056970e+03 2.3056970e+03 -2.1714335e+02 - -2.3490769e+03 2.2607255e+03 -2.1810137e+02 - -2.3907965e+03 2.2142284e+03 -2.2098225e+02 - -2.4307839e+03 2.1662696e+03 -2.2580650e+02 - -2.4689637e+03 2.1169110e+03 -2.3260847e+02 - -2.5052561e+03 2.0662133e+03 -2.4143656e+02 - -2.5395768e+03 2.0142367e+03 -2.5235349e+02 - -2.5718365e+03 1.9610407e+03 -2.6543666e+02 - -2.6019404e+03 1.9066852e+03 -2.8077852e+02 - -2.6297877e+03 1.8512309e+03 -2.9848686e+02 - -2.6552715e+03 1.7947396e+03 -3.1868511e+02 - -2.6782785e+03 1.7372752e+03 -3.4151243e+02 - -2.6986892e+03 1.6789040e+03 -3.6712354e+02 - -2.7163780e+03 1.6196954e+03 -3.9568818e+02 - -2.7312139e+03 1.5597225e+03 -4.2738995e+02 - -2.7430616e+03 1.4990630e+03 -4.6242436e+02 - -2.7517836e+03 1.4377993e+03 -5.0099575e+02 - -2.7572427e+03 1.3760194e+03 -5.4331284e+02 - -2.7593056e+03 1.3138172e+03 -5.8958221e+02 - -2.7578484e+03 1.2512924e+03 -6.3999969e+02 - -2.7527633e+03 1.1885504e+03 -6.9473864e+02 - -2.7439669e+03 1.1257017e+03 -7.5393511e+02 - -2.7314110e+03 1.0628603e+03 -8.1766922e+02 - -2.7150952e+03 1.0001416e+03 -8.8594286e+02 - -2.6950814e+03 9.3765969e+02 -9.5865381e+02 - -2.6715088e+03 8.7552285e+02 -1.0355675e+03 - -2.6446097e+03 8.1382913e+02 -1.1162881e+03 - -2.6147236e+03 7.5266074e+02 -1.2002311e+03 - -2.5823070e+03 6.9207851e+02 -1.2866025e+03 - -2.5479382e+03 6.3211697e+02 -1.3743871e+03 - -2.5123133e+03 5.7278088e+02 -1.4623511e+03 - -2.4762321e+03 5.1404432e+02 -1.5490626e+03 - -2.4405751e+03 4.5585277e+02 -1.6329307e+03 - -2.4062692e+03 3.9812870e+02 -1.7122629e+03 - -2.3742496e+03 3.4078004e+02 -1.7853353e+03 - -2.3454166e+03 2.8371056e+02 -1.8504700e+03 - -2.3205968e+03 2.2683026e+02 -1.9061123e+03 - -2.3005072e+03 1.7006405e+02 -1.9508998e+03 - -2.2857291e+03 1.1335690e+02 -1.9837187e+03 - -2.2766890e+03 5.6674612e+01 -2.0037463e+03 - -2.2736465e+03 -2.4067136e-09 -2.0104787e+03 - -2.2766890e+03 -5.6674612e+01 -2.0037463e+03 - -2.2857291e+03 -1.1335690e+02 -1.9837187e+03 - -2.3005072e+03 -1.7006405e+02 -1.9508998e+03 - -2.3205968e+03 -2.2683026e+02 -1.9061123e+03 - -2.3454166e+03 -2.8371056e+02 -1.8504700e+03 - -2.3742496e+03 -3.4078004e+02 -1.7853353e+03 - -2.4062692e+03 -3.9812870e+02 -1.7122629e+03 - -2.4405751e+03 -4.5585277e+02 -1.6329307e+03 - -2.4762321e+03 -5.1404432e+02 -1.5490626e+03 - -2.5123133e+03 -5.7278088e+02 -1.4623511e+03 - -2.5479382e+03 -6.3211697e+02 -1.3743871e+03 - -2.5823070e+03 -6.9207851e+02 -1.2866025e+03 - -2.6147236e+03 -7.5266074e+02 -1.2002311e+03 - -2.6446097e+03 -8.1382913e+02 -1.1162881e+03 - -2.6715088e+03 -8.7552285e+02 -1.0355675e+03 - -2.6950814e+03 -9.3765969e+02 -9.5865381e+02 - -2.7150952e+03 -1.0001416e+03 -8.8594286e+02 - -2.7314110e+03 -1.0628603e+03 -8.1766922e+02 - -2.7439669e+03 -1.1257017e+03 -7.5393511e+02 - -2.7527633e+03 -1.1885504e+03 -6.9473864e+02 - -2.7578484e+03 -1.2512924e+03 -6.3999969e+02 - -2.7593056e+03 -1.3138172e+03 -5.8958221e+02 - -2.7572427e+03 -1.3760194e+03 -5.4331284e+02 - -2.7517836e+03 -1.4377993e+03 -5.0099575e+02 - -2.7430616e+03 -1.4990630e+03 -4.6242436e+02 - -2.7312139e+03 -1.5597225e+03 -4.2738995e+02 - -2.7163780e+03 -1.6196954e+03 -3.9568818e+02 - -2.6986892e+03 -1.6789040e+03 -3.6712354e+02 - -2.6782785e+03 -1.7372752e+03 -3.4151243e+02 - -2.6552715e+03 -1.7947396e+03 -3.1868511e+02 - -2.6297877e+03 -1.8512309e+03 -2.9848686e+02 - -2.6019404e+03 -1.9066852e+03 -2.8077852e+02 - -2.5718365e+03 -1.9610407e+03 -2.6543666e+02 - -2.5395768e+03 -2.0142367e+03 -2.5235349e+02 - -2.5052561e+03 -2.0662133e+03 -2.4143656e+02 - -2.4689637e+03 -2.1169110e+03 -2.3260847e+02 - -2.4307839e+03 -2.1662696e+03 -2.2580650e+02 - -2.3907965e+03 -2.2142284e+03 -2.2098225e+02 - -2.3490769e+03 -2.2607255e+03 -2.1810137e+02 - -2.3056970e+03 -2.3056970e+03 -2.1714335e+02 - -2.2607255e+03 -2.3490769e+03 -2.1810137e+02 - -2.2142284e+03 -2.3907965e+03 -2.2098225e+02 - -2.1662696e+03 -2.4307839e+03 -2.2580650e+02 - -2.1169110e+03 -2.4689637e+03 -2.3260847e+02 - -2.0662133e+03 -2.5052561e+03 -2.4143656e+02 - -2.0142367e+03 -2.5395768e+03 -2.5235349e+02 - -1.9610407e+03 -2.5718365e+03 -2.6543666e+02 - -1.9066852e+03 -2.6019404e+03 -2.8077852e+02 - -1.8512309e+03 -2.6297877e+03 -2.9848686e+02 - -1.7947396e+03 -2.6552715e+03 -3.1868511e+02 - -1.7372752e+03 -2.6782785e+03 -3.4151243e+02 - -1.6789040e+03 -2.6986892e+03 -3.6712354e+02 - -1.6196954e+03 -2.7163780e+03 -3.9568818e+02 - -1.5597225e+03 -2.7312139e+03 -4.2738995e+02 - -1.4990630e+03 -2.7430616e+03 -4.6242436e+02 - -1.4377993e+03 -2.7517836e+03 -5.0099575e+02 - -1.3760194e+03 -2.7572427e+03 -5.4331284e+02 - -1.3138172e+03 -2.7593056e+03 -5.8958221e+02 - -1.2512924e+03 -2.7578484e+03 -6.3999969e+02 - -1.1885504e+03 -2.7527633e+03 -6.9473864e+02 - -1.1257017e+03 -2.7439669e+03 -7.5393511e+02 - -1.0628603e+03 -2.7314110e+03 -8.1766922e+02 - -1.0001416e+03 -2.7150952e+03 -8.8594286e+02 - -9.3765969e+02 -2.6950814e+03 -9.5865381e+02 - -8.7552285e+02 -2.6715088e+03 -1.0355675e+03 - -8.1382913e+02 -2.6446097e+03 -1.1162881e+03 - -7.5266074e+02 -2.6147236e+03 -1.2002311e+03 - -6.9207851e+02 -2.5823070e+03 -1.2866025e+03 - -6.3211697e+02 -2.5479382e+03 -1.3743871e+03 - -5.7278088e+02 -2.5123133e+03 -1.4623511e+03 - -5.1404432e+02 -2.4762321e+03 -1.5490626e+03 - -4.5585277e+02 -2.4405751e+03 -1.6329307e+03 - -3.9812870e+02 -2.4062692e+03 -1.7122629e+03 - -3.4078004e+02 -2.3742496e+03 -1.7853353e+03 - -2.8371056e+02 -2.3454166e+03 -1.8504700e+03 - -2.2683026e+02 -2.3205968e+03 -1.9061123e+03 - -1.7006405e+02 -2.3005072e+03 -1.9508998e+03 - -1.1335690e+02 -2.2857291e+03 -1.9837187e+03 - -5.6674612e+01 -2.2766890e+03 -2.0037463e+03 - 2.4067136e-09 -2.2736465e+03 -2.0104787e+03 - 5.6674612e+01 -2.2766890e+03 -2.0037463e+03 - 1.1335690e+02 -2.2857291e+03 -1.9837187e+03 - 1.7006405e+02 -2.3005072e+03 -1.9508998e+03 - 2.2683026e+02 -2.3205968e+03 -1.9061123e+03 - 2.8371056e+02 -2.3454166e+03 -1.8504700e+03 - 3.4078004e+02 -2.3742496e+03 -1.7853353e+03 - 3.9812870e+02 -2.4062692e+03 -1.7122629e+03 - 4.5585277e+02 -2.4405751e+03 -1.6329307e+03 - 5.1404432e+02 -2.4762321e+03 -1.5490626e+03 - 5.7278088e+02 -2.5123133e+03 -1.4623511e+03 - 6.3211697e+02 -2.5479382e+03 -1.3743871e+03 - 6.9207851e+02 -2.5823070e+03 -1.2866025e+03 - 7.5266074e+02 -2.6147236e+03 -1.2002311e+03 - 8.1382913e+02 -2.6446097e+03 -1.1162881e+03 - 8.7552285e+02 -2.6715088e+03 -1.0355675e+03 - 9.3765969e+02 -2.6950814e+03 -9.5865381e+02 - 1.0001416e+03 -2.7150952e+03 -8.8594286e+02 - 1.0628603e+03 -2.7314110e+03 -8.1766922e+02 - 1.1257017e+03 -2.7439669e+03 -7.5393511e+02 - 1.1885504e+03 -2.7527633e+03 -6.9473864e+02 - 1.2512924e+03 -2.7578484e+03 -6.3999969e+02 - 1.3138172e+03 -2.7593056e+03 -5.8958221e+02 - 1.3760194e+03 -2.7572427e+03 -5.4331284e+02 - 1.4377993e+03 -2.7517836e+03 -5.0099575e+02 - 1.4990630e+03 -2.7430616e+03 -4.6242436e+02 - 1.5597225e+03 -2.7312139e+03 -4.2738995e+02 - 1.6196954e+03 -2.7163780e+03 -3.9568818e+02 - 1.6789040e+03 -2.6986892e+03 -3.6712354e+02 - 1.7372752e+03 -2.6782785e+03 -3.4151243e+02 - 1.7947396e+03 -2.6552715e+03 -3.1868511e+02 - 1.8512309e+03 -2.6297877e+03 -2.9848686e+02 - 1.9066852e+03 -2.6019404e+03 -2.8077852e+02 - 1.9610407e+03 -2.5718365e+03 -2.6543666e+02 - 2.0142367e+03 -2.5395768e+03 -2.5235349e+02 - 2.0662133e+03 -2.5052561e+03 -2.4143656e+02 - 2.1169110e+03 -2.4689637e+03 -2.3260847e+02 - 2.1662696e+03 -2.4307839e+03 -2.2580650e+02 - 2.2142284e+03 -2.3907965e+03 -2.2098225e+02 - 2.2607255e+03 -2.3490769e+03 -2.1810137e+02 - 2.3056970e+03 -2.3056970e+03 -2.1714335e+02 - 2.3490769e+03 -2.2607255e+03 -2.1810137e+02 - 2.3907965e+03 -2.2142284e+03 -2.2098225e+02 - 2.4307839e+03 -2.1662696e+03 -2.2580650e+02 - 2.4689637e+03 -2.1169110e+03 -2.3260847e+02 - 2.5052561e+03 -2.0662133e+03 -2.4143656e+02 - 2.5395768e+03 -2.0142367e+03 -2.5235349e+02 - 2.5718365e+03 -1.9610407e+03 -2.6543666e+02 - 2.6019404e+03 -1.9066852e+03 -2.8077852e+02 - 2.6297877e+03 -1.8512309e+03 -2.9848686e+02 - 2.6552715e+03 -1.7947396e+03 -3.1868511e+02 - 2.6782785e+03 -1.7372752e+03 -3.4151243e+02 - 2.6986892e+03 -1.6789040e+03 -3.6712354e+02 - 2.7163780e+03 -1.6196954e+03 -3.9568818e+02 - 2.7312139e+03 -1.5597225e+03 -4.2738995e+02 - 2.7430616e+03 -1.4990630e+03 -4.6242436e+02 - 2.7517836e+03 -1.4377993e+03 -5.0099575e+02 - 2.7572427e+03 -1.3760194e+03 -5.4331284e+02 - 2.7593056e+03 -1.3138172e+03 -5.8958221e+02 - 2.7578484e+03 -1.2512924e+03 -6.3999969e+02 - 2.7527633e+03 -1.1885504e+03 -6.9473864e+02 - 2.7439669e+03 -1.1257017e+03 -7.5393511e+02 - 2.7314110e+03 -1.0628603e+03 -8.1766922e+02 - 2.7150952e+03 -1.0001416e+03 -8.8594286e+02 - 2.6950814e+03 -9.3765969e+02 -9.5865381e+02 - 2.6715088e+03 -8.7552285e+02 -1.0355675e+03 - 2.6446097e+03 -8.1382913e+02 -1.1162881e+03 - 2.6147236e+03 -7.5266074e+02 -1.2002311e+03 - 2.5823070e+03 -6.9207851e+02 -1.2866025e+03 - 2.5479382e+03 -6.3211697e+02 -1.3743871e+03 - 2.5123133e+03 -5.7278088e+02 -1.4623511e+03 - 2.4762321e+03 -5.1404432e+02 -1.5490626e+03 - 2.4405751e+03 -4.5585277e+02 -1.6329307e+03 - 2.4062692e+03 -3.9812870e+02 -1.7122629e+03 - 2.3742496e+03 -3.4078004e+02 -1.7853353e+03 - 2.3454166e+03 -2.8371056e+02 -1.8504700e+03 - 2.3205968e+03 -2.2683026e+02 -1.9061123e+03 - 2.3005072e+03 -1.7006405e+02 -1.9508998e+03 - 2.2857291e+03 -1.1335690e+02 -1.9837187e+03 - 2.2766890e+03 -5.6674612e+01 -2.0037463e+03 - 2.2736465e+03 4.8134273e-09 -2.0104787e+03 - 2.2387984e+03 -2.4067136e-09 -2.0741667e+03 - 2.2434941e+03 3.5855463e+01 -2.0651526e+03 - 2.2572797e+03 7.2671144e+01 -2.0386086e+03 - 2.2792961e+03 1.1130405e+02 -1.9959532e+03 - 2.3082516e+03 1.5242777e+02 -1.9393231e+03 - 2.3425907e+03 1.9648956e+02 -1.8712961e+03 - 2.3806662e+03 2.4370658e+02 -1.7946089e+03 - 2.4208852e+03 2.9409268e+02 -1.7119180e+03 - 2.4618097e+03 3.4750254e+02 -1.6256323e+03 - 2.5022125e+03 4.0368050e+02 -1.5378195e+03 - 2.5410959e+03 4.6230536e+02 -1.4501728e+03 - 2.5776841e+03 5.2302643e+02 -1.3640222e+03 - 2.6114003e+03 5.8548989e+02 -1.2803689e+03 - 2.6418376e+03 6.4935606e+02 -1.1999335e+03 - 2.6687279e+03 7.1430963e+02 -1.1232053e+03 - 2.6919134e+03 7.8006454e+02 -1.0504887e+03 - 2.7113215e+03 8.4636538e+02 -9.8194519e+02 - 2.7269442e+03 9.1298647e+02 -9.1762729e+02 - 2.7388204e+03 9.7972972e+02 -8.5750760e+02 - 2.7470228e+03 1.0464218e+03 -8.0150134e+02 - 2.7516472e+03 1.1129114e+03 -7.4948430e+02 - 2.7528043e+03 1.1790657e+03 -7.0130670e+02 - 2.7506138e+03 1.2447682e+03 -6.5680379e+02 - 2.7451998e+03 1.3099162e+03 -6.1580377e+02 - 2.7366873e+03 1.3744182e+03 -5.7813376e+02 - 2.7251999e+03 1.4381923e+03 -5.4362404e+02 - 2.7108582e+03 1.5011644e+03 -5.1211115e+02 - 2.6937787e+03 1.5632668e+03 -4.8344003e+02 - 2.6740733e+03 1.6244371e+03 -4.5746540e+02 - 2.6518484e+03 1.6846170e+03 -4.3405270e+02 - 2.6272053e+03 1.7437514e+03 -4.1307856e+02 - 2.6002400e+03 1.8017877e+03 -3.9443104e+02 - 2.5710430e+03 1.8586752e+03 -3.7800968e+02 - 2.5397004e+03 1.9143642e+03 -3.6372537e+02 - 2.5062930e+03 1.9688061e+03 -3.5150024e+02 - 2.4708977e+03 2.0219521e+03 -3.4126739e+02 - 2.4335869e+03 2.0737537e+03 -3.3297069e+02 - 2.3944293e+03 2.1241615e+03 -3.2656455e+02 - 2.3534905e+03 2.1731254e+03 -3.2201376e+02 - 2.3108325e+03 2.2205941e+03 -3.1929327e+02 - 2.2665147e+03 2.2665147e+03 -3.1838810e+02 - 2.2205941e+03 2.3108325e+03 -3.1929327e+02 - 2.1731254e+03 2.3534905e+03 -3.2201376e+02 - 2.1241615e+03 2.3944293e+03 -3.2656455e+02 - 2.0737537e+03 2.4335869e+03 -3.3297069e+02 - 2.0219521e+03 2.4708977e+03 -3.4126739e+02 - 1.9688061e+03 2.5062930e+03 -3.5150024e+02 - 1.9143642e+03 2.5397004e+03 -3.6372537e+02 - 1.8586752e+03 2.5710430e+03 -3.7800968e+02 - 1.8017877e+03 2.6002400e+03 -3.9443104e+02 - 1.7437514e+03 2.6272053e+03 -4.1307856e+02 - 1.6846170e+03 2.6518484e+03 -4.3405270e+02 - 1.6244371e+03 2.6740733e+03 -4.5746540e+02 - 1.5632668e+03 2.6937787e+03 -4.8344003e+02 - 1.5011644e+03 2.7108582e+03 -5.1211115e+02 - 1.4381923e+03 2.7251999e+03 -5.4362404e+02 - 1.3744182e+03 2.7366873e+03 -5.7813376e+02 - 1.3099162e+03 2.7451998e+03 -6.1580377e+02 - 1.2447682e+03 2.7506138e+03 -6.5680379e+02 - 1.1790657e+03 2.7528043e+03 -7.0130670e+02 - 1.1129114e+03 2.7516472e+03 -7.4948430e+02 - 1.0464218e+03 2.7470228e+03 -8.0150134e+02 - 9.7972972e+02 2.7388204e+03 -8.5750760e+02 - 9.1298647e+02 2.7269442e+03 -9.1762729e+02 - 8.4636538e+02 2.7113215e+03 -9.8194519e+02 - 7.8006454e+02 2.6919134e+03 -1.0504887e+03 - 7.1430963e+02 2.6687279e+03 -1.1232053e+03 - 6.4935606e+02 2.6418376e+03 -1.1999335e+03 - 5.8548989e+02 2.6114003e+03 -1.2803689e+03 - 5.2302643e+02 2.5776841e+03 -1.3640222e+03 - 4.6230536e+02 2.5410959e+03 -1.4501728e+03 - 4.0368050e+02 2.5022125e+03 -1.5378195e+03 - 3.4750254e+02 2.4618097e+03 -1.6256323e+03 - 2.9409268e+02 2.4208852e+03 -1.7119180e+03 - 2.4370658e+02 2.3806662e+03 -1.7946089e+03 - 1.9648956e+02 2.3425907e+03 -1.8712961e+03 - 1.5242777e+02 2.3082516e+03 -1.9393231e+03 - 1.1130405e+02 2.2792961e+03 -1.9959532e+03 - 7.2671144e+01 2.2572797e+03 -2.0386086e+03 - 3.5855463e+01 2.2434941e+03 -2.0651526e+03 - 0.0000000e+00 2.2387984e+03 -2.0741667e+03 - -3.5855463e+01 2.2434941e+03 -2.0651526e+03 - -7.2671144e+01 2.2572797e+03 -2.0386086e+03 - -1.1130405e+02 2.2792961e+03 -1.9959532e+03 - -1.5242777e+02 2.3082516e+03 -1.9393231e+03 - -1.9648956e+02 2.3425907e+03 -1.8712961e+03 - -2.4370658e+02 2.3806662e+03 -1.7946089e+03 - -2.9409268e+02 2.4208852e+03 -1.7119180e+03 - -3.4750254e+02 2.4618097e+03 -1.6256323e+03 - -4.0368050e+02 2.5022125e+03 -1.5378195e+03 - -4.6230536e+02 2.5410959e+03 -1.4501728e+03 - -5.2302643e+02 2.5776841e+03 -1.3640222e+03 - -5.8548989e+02 2.6114003e+03 -1.2803689e+03 - -6.4935606e+02 2.6418376e+03 -1.1999335e+03 - -7.1430963e+02 2.6687279e+03 -1.1232053e+03 - -7.8006454e+02 2.6919134e+03 -1.0504887e+03 - -8.4636538e+02 2.7113215e+03 -9.8194519e+02 - -9.1298647e+02 2.7269442e+03 -9.1762729e+02 - -9.7972972e+02 2.7388204e+03 -8.5750760e+02 - -1.0464218e+03 2.7470228e+03 -8.0150134e+02 - -1.1129114e+03 2.7516472e+03 -7.4948430e+02 - -1.1790657e+03 2.7528043e+03 -7.0130670e+02 - -1.2447682e+03 2.7506138e+03 -6.5680379e+02 - -1.3099162e+03 2.7451998e+03 -6.1580377e+02 - -1.3744182e+03 2.7366873e+03 -5.7813376e+02 - -1.4381923e+03 2.7251999e+03 -5.4362404e+02 - -1.5011644e+03 2.7108582e+03 -5.1211115e+02 - -1.5632668e+03 2.6937787e+03 -4.8344003e+02 - -1.6244371e+03 2.6740733e+03 -4.5746540e+02 - -1.6846170e+03 2.6518484e+03 -4.3405270e+02 - -1.7437514e+03 2.6272053e+03 -4.1307856e+02 - -1.8017877e+03 2.6002400e+03 -3.9443104e+02 - -1.8586752e+03 2.5710430e+03 -3.7800968e+02 - -1.9143642e+03 2.5397004e+03 -3.6372537e+02 - -1.9688061e+03 2.5062930e+03 -3.5150024e+02 - -2.0219521e+03 2.4708977e+03 -3.4126739e+02 - -2.0737537e+03 2.4335869e+03 -3.3297069e+02 - -2.1241615e+03 2.3944293e+03 -3.2656455e+02 - -2.1731254e+03 2.3534905e+03 -3.2201376e+02 - -2.2205941e+03 2.3108325e+03 -3.1929327e+02 - -2.2665147e+03 2.2665147e+03 -3.1838810e+02 - -2.3108325e+03 2.2205941e+03 -3.1929327e+02 - -2.3534905e+03 2.1731254e+03 -3.2201376e+02 - -2.3944293e+03 2.1241615e+03 -3.2656455e+02 - -2.4335869e+03 2.0737537e+03 -3.3297069e+02 - -2.4708977e+03 2.0219521e+03 -3.4126739e+02 - -2.5062930e+03 1.9688061e+03 -3.5150024e+02 - -2.5397004e+03 1.9143642e+03 -3.6372537e+02 - -2.5710430e+03 1.8586752e+03 -3.7800968e+02 - -2.6002400e+03 1.8017877e+03 -3.9443104e+02 - -2.6272053e+03 1.7437514e+03 -4.1307856e+02 - -2.6518484e+03 1.6846170e+03 -4.3405270e+02 - -2.6740733e+03 1.6244371e+03 -4.5746540e+02 - -2.6937787e+03 1.5632668e+03 -4.8344003e+02 - -2.7108582e+03 1.5011644e+03 -5.1211115e+02 - -2.7251999e+03 1.4381923e+03 -5.4362404e+02 - -2.7366873e+03 1.3744182e+03 -5.7813376e+02 - -2.7451998e+03 1.3099162e+03 -6.1580377e+02 - -2.7506138e+03 1.2447682e+03 -6.5680379e+02 - -2.7528043e+03 1.1790657e+03 -7.0130670e+02 - -2.7516472e+03 1.1129114e+03 -7.4948430e+02 - -2.7470228e+03 1.0464218e+03 -8.0150134e+02 - -2.7388204e+03 9.7972972e+02 -8.5750760e+02 - -2.7269442e+03 9.1298647e+02 -9.1762729e+02 - -2.7113215e+03 8.4636538e+02 -9.8194519e+02 - -2.6919134e+03 7.8006454e+02 -1.0504887e+03 - -2.6687279e+03 7.1430963e+02 -1.1232053e+03 - -2.6418376e+03 6.4935606e+02 -1.1999335e+03 - -2.6114003e+03 5.8548989e+02 -1.2803689e+03 - -2.5776841e+03 5.2302643e+02 -1.3640222e+03 - -2.5410959e+03 4.6230536e+02 -1.4501728e+03 - -2.5022125e+03 4.0368050e+02 -1.5378195e+03 - -2.4618097e+03 3.4750254e+02 -1.6256323e+03 - -2.4208852e+03 2.9409268e+02 -1.7119180e+03 - -2.3806662e+03 2.4370658e+02 -1.7946089e+03 - -2.3425907e+03 1.9648956e+02 -1.8712961e+03 - -2.3082516e+03 1.5242777e+02 -1.9393231e+03 - -2.2792961e+03 1.1130405e+02 -1.9959532e+03 - -2.2572797e+03 7.2671144e+01 -2.0386086e+03 - -2.2434941e+03 3.5855463e+01 -2.0651526e+03 - -2.2387984e+03 0.0000000e+00 -2.0741667e+03 - -2.2434941e+03 -3.5855463e+01 -2.0651526e+03 - -2.2572797e+03 -7.2671144e+01 -2.0386086e+03 - -2.2792961e+03 -1.1130405e+02 -1.9959532e+03 - -2.3082516e+03 -1.5242777e+02 -1.9393231e+03 - -2.3425907e+03 -1.9648956e+02 -1.8712961e+03 - -2.3806662e+03 -2.4370658e+02 -1.7946089e+03 - -2.4208852e+03 -2.9409268e+02 -1.7119180e+03 - -2.4618097e+03 -3.4750254e+02 -1.6256323e+03 - -2.5022125e+03 -4.0368050e+02 -1.5378195e+03 - -2.5410959e+03 -4.6230536e+02 -1.4501728e+03 - -2.5776841e+03 -5.2302643e+02 -1.3640222e+03 - -2.6114003e+03 -5.8548989e+02 -1.2803689e+03 - -2.6418376e+03 -6.4935606e+02 -1.1999335e+03 - -2.6687279e+03 -7.1430963e+02 -1.1232053e+03 - -2.6919134e+03 -7.8006454e+02 -1.0504887e+03 - -2.7113215e+03 -8.4636538e+02 -9.8194519e+02 - -2.7269442e+03 -9.1298647e+02 -9.1762729e+02 - -2.7388204e+03 -9.7972972e+02 -8.5750760e+02 - -2.7470228e+03 -1.0464218e+03 -8.0150134e+02 - -2.7516472e+03 -1.1129114e+03 -7.4948430e+02 - -2.7528043e+03 -1.1790657e+03 -7.0130670e+02 - -2.7506138e+03 -1.2447682e+03 -6.5680379e+02 - -2.7451998e+03 -1.3099162e+03 -6.1580377e+02 - -2.7366873e+03 -1.3744182e+03 -5.7813376e+02 - -2.7251999e+03 -1.4381923e+03 -5.4362404e+02 - -2.7108582e+03 -1.5011644e+03 -5.1211115e+02 - -2.6937787e+03 -1.5632668e+03 -4.8344003e+02 - -2.6740733e+03 -1.6244371e+03 -4.5746540e+02 - -2.6518484e+03 -1.6846170e+03 -4.3405270e+02 - -2.6272053e+03 -1.7437514e+03 -4.1307856e+02 - -2.6002400e+03 -1.8017877e+03 -3.9443104e+02 - -2.5710430e+03 -1.8586752e+03 -3.7800968e+02 - -2.5397004e+03 -1.9143642e+03 -3.6372537e+02 - -2.5062930e+03 -1.9688061e+03 -3.5150024e+02 - -2.4708977e+03 -2.0219521e+03 -3.4126739e+02 - -2.4335869e+03 -2.0737537e+03 -3.3297069e+02 - -2.3944293e+03 -2.1241615e+03 -3.2656455e+02 - -2.3534905e+03 -2.1731254e+03 -3.2201376e+02 - -2.3108325e+03 -2.2205941e+03 -3.1929327e+02 - -2.2665147e+03 -2.2665147e+03 -3.1838810e+02 - -2.2205941e+03 -2.3108325e+03 -3.1929327e+02 - -2.1731254e+03 -2.3534905e+03 -3.2201376e+02 - -2.1241615e+03 -2.3944293e+03 -3.2656455e+02 - -2.0737537e+03 -2.4335869e+03 -3.3297069e+02 - -2.0219521e+03 -2.4708977e+03 -3.4126739e+02 - -1.9688061e+03 -2.5062930e+03 -3.5150024e+02 - -1.9143642e+03 -2.5397004e+03 -3.6372537e+02 - -1.8586752e+03 -2.5710430e+03 -3.7800968e+02 - -1.8017877e+03 -2.6002400e+03 -3.9443104e+02 - -1.7437514e+03 -2.6272053e+03 -4.1307856e+02 - -1.6846170e+03 -2.6518484e+03 -4.3405270e+02 - -1.6244371e+03 -2.6740733e+03 -4.5746540e+02 - -1.5632668e+03 -2.6937787e+03 -4.8344003e+02 - -1.5011644e+03 -2.7108582e+03 -5.1211115e+02 - -1.4381923e+03 -2.7251999e+03 -5.4362404e+02 - -1.3744182e+03 -2.7366873e+03 -5.7813376e+02 - -1.3099162e+03 -2.7451998e+03 -6.1580377e+02 - -1.2447682e+03 -2.7506138e+03 -6.5680379e+02 - -1.1790657e+03 -2.7528043e+03 -7.0130670e+02 - -1.1129114e+03 -2.7516472e+03 -7.4948430e+02 - -1.0464218e+03 -2.7470228e+03 -8.0150134e+02 - -9.7972972e+02 -2.7388204e+03 -8.5750760e+02 - -9.1298647e+02 -2.7269442e+03 -9.1762729e+02 - -8.4636538e+02 -2.7113215e+03 -9.8194519e+02 - -7.8006454e+02 -2.6919134e+03 -1.0504887e+03 - -7.1430963e+02 -2.6687279e+03 -1.1232053e+03 - -6.4935606e+02 -2.6418376e+03 -1.1999335e+03 - -5.8548989e+02 -2.6114003e+03 -1.2803689e+03 - -5.2302643e+02 -2.5776841e+03 -1.3640222e+03 - -4.6230536e+02 -2.5410959e+03 -1.4501728e+03 - -4.0368050e+02 -2.5022125e+03 -1.5378195e+03 - -3.4750254e+02 -2.4618097e+03 -1.6256323e+03 - -2.9409268e+02 -2.4208852e+03 -1.7119180e+03 - -2.4370658e+02 -2.3806662e+03 -1.7946089e+03 - -1.9648956e+02 -2.3425907e+03 -1.8712961e+03 - -1.5242777e+02 -2.3082516e+03 -1.9393231e+03 - -1.1130405e+02 -2.2792961e+03 -1.9959532e+03 - -7.2671144e+01 -2.2572797e+03 -2.0386086e+03 - -3.5855463e+01 -2.2434941e+03 -2.0651526e+03 - 0.0000000e+00 -2.2387984e+03 -2.0741667e+03 - 3.5855463e+01 -2.2434941e+03 -2.0651526e+03 - 7.2671144e+01 -2.2572797e+03 -2.0386086e+03 - 1.1130405e+02 -2.2792961e+03 -1.9959532e+03 - 1.5242777e+02 -2.3082516e+03 -1.9393231e+03 - 1.9648956e+02 -2.3425907e+03 -1.8712961e+03 - 2.4370658e+02 -2.3806662e+03 -1.7946089e+03 - 2.9409268e+02 -2.4208852e+03 -1.7119180e+03 - 3.4750254e+02 -2.4618097e+03 -1.6256323e+03 - 4.0368050e+02 -2.5022125e+03 -1.5378195e+03 - 4.6230536e+02 -2.5410959e+03 -1.4501728e+03 - 5.2302643e+02 -2.5776841e+03 -1.3640222e+03 - 5.8548989e+02 -2.6114003e+03 -1.2803689e+03 - 6.4935606e+02 -2.6418376e+03 -1.1999335e+03 - 7.1430963e+02 -2.6687279e+03 -1.1232053e+03 - 7.8006454e+02 -2.6919134e+03 -1.0504887e+03 - 8.4636538e+02 -2.7113215e+03 -9.8194519e+02 - 9.1298647e+02 -2.7269442e+03 -9.1762729e+02 - 9.7972972e+02 -2.7388204e+03 -8.5750760e+02 - 1.0464218e+03 -2.7470228e+03 -8.0150134e+02 - 1.1129114e+03 -2.7516472e+03 -7.4948430e+02 - 1.1790657e+03 -2.7528043e+03 -7.0130670e+02 - 1.2447682e+03 -2.7506138e+03 -6.5680379e+02 - 1.3099162e+03 -2.7451998e+03 -6.1580377e+02 - 1.3744182e+03 -2.7366873e+03 -5.7813376e+02 - 1.4381923e+03 -2.7251999e+03 -5.4362404e+02 - 1.5011644e+03 -2.7108582e+03 -5.1211115e+02 - 1.5632668e+03 -2.6937787e+03 -4.8344003e+02 - 1.6244371e+03 -2.6740733e+03 -4.5746540e+02 - 1.6846170e+03 -2.6518484e+03 -4.3405270e+02 - 1.7437514e+03 -2.6272053e+03 -4.1307856e+02 - 1.8017877e+03 -2.6002400e+03 -3.9443104e+02 - 1.8586752e+03 -2.5710430e+03 -3.7800968e+02 - 1.9143642e+03 -2.5397004e+03 -3.6372537e+02 - 1.9688061e+03 -2.5062930e+03 -3.5150024e+02 - 2.0219521e+03 -2.4708977e+03 -3.4126739e+02 - 2.0737537e+03 -2.4335869e+03 -3.3297069e+02 - 2.1241615e+03 -2.3944293e+03 -3.2656455e+02 - 2.1731254e+03 -2.3534905e+03 -3.2201376e+02 - 2.2205941e+03 -2.3108325e+03 -3.1929327e+02 - 2.2665147e+03 -2.2665147e+03 -3.1838810e+02 - 2.3108325e+03 -2.2205941e+03 -3.1929327e+02 - 2.3534905e+03 -2.1731254e+03 -3.2201376e+02 - 2.3944293e+03 -2.1241615e+03 -3.2656455e+02 - 2.4335869e+03 -2.0737537e+03 -3.3297069e+02 - 2.4708977e+03 -2.0219521e+03 -3.4126739e+02 - 2.5062930e+03 -1.9688061e+03 -3.5150024e+02 - 2.5397004e+03 -1.9143642e+03 -3.6372537e+02 - 2.5710430e+03 -1.8586752e+03 -3.7800968e+02 - 2.6002400e+03 -1.8017877e+03 -3.9443104e+02 - 2.6272053e+03 -1.7437514e+03 -4.1307856e+02 - 2.6518484e+03 -1.6846170e+03 -4.3405270e+02 - 2.6740733e+03 -1.6244371e+03 -4.5746540e+02 - 2.6937787e+03 -1.5632668e+03 -4.8344003e+02 - 2.7108582e+03 -1.5011644e+03 -5.1211115e+02 - 2.7251999e+03 -1.4381923e+03 -5.4362404e+02 - 2.7366873e+03 -1.3744182e+03 -5.7813376e+02 - 2.7451998e+03 -1.3099162e+03 -6.1580377e+02 - 2.7506138e+03 -1.2447682e+03 -6.5680379e+02 - 2.7528043e+03 -1.1790657e+03 -7.0130670e+02 - 2.7516472e+03 -1.1129114e+03 -7.4948430e+02 - 2.7470228e+03 -1.0464218e+03 -8.0150134e+02 - 2.7388204e+03 -9.7972972e+02 -8.5750760e+02 - 2.7269442e+03 -9.1298647e+02 -9.1762729e+02 - 2.7113215e+03 -8.4636538e+02 -9.8194519e+02 - 2.6919134e+03 -7.8006454e+02 -1.0504887e+03 - 2.6687279e+03 -7.1430963e+02 -1.1232053e+03 - 2.6418376e+03 -6.4935606e+02 -1.1999335e+03 - 2.6114003e+03 -5.8548989e+02 -1.2803689e+03 - 2.5776841e+03 -5.2302643e+02 -1.3640222e+03 - 2.5410959e+03 -4.6230536e+02 -1.4501728e+03 - 2.5022125e+03 -4.0368050e+02 -1.5378195e+03 - 2.4618097e+03 -3.4750254e+02 -1.6256323e+03 - 2.4208852e+03 -2.9409268e+02 -1.7119180e+03 - 2.3806662e+03 -2.4370658e+02 -1.7946089e+03 - 2.3425907e+03 -1.9648956e+02 -1.8712961e+03 - 2.3082516e+03 -1.5242777e+02 -1.9393231e+03 - 2.2792961e+03 -1.1130405e+02 -1.9959532e+03 - 2.2572797e+03 -7.2671144e+01 -2.0386086e+03 - 2.2434941e+03 -3.5855463e+01 -2.0651526e+03 - 2.2387984e+03 0.0000000e+00 -2.0741667e+03 - 2.2032157e+03 0.0000000e+00 -2.1362695e+03 - 2.2107364e+03 6.7334797e+00 -2.1233212e+03 - 2.2323269e+03 1.7046981e+01 -2.0859691e+03 - 2.2654027e+03 3.3732079e+01 -2.0281893e+03 - 2.3065484e+03 5.8365552e+01 -1.9552467e+03 - 2.3523282e+03 9.1338566e+01 -1.8724584e+03 - 2.3998174e+03 1.3217590e+02 -1.7843774e+03 - 2.4468019e+03 1.7991926e+02 -1.6944813e+03 - 2.4917503e+03 2.3343416e+02 -1.6052109e+03 - 2.5336810e+03 2.9160217e+02 -1.5181660e+03 - 2.5720140e+03 3.5341716e+02 -1.4343297e+03 - 2.6064433e+03 4.1801927e+02 -1.3542606e+03 - 2.6368413e+03 4.8469484e+02 -1.2782378e+03 - 2.6631923e+03 5.5286109e+02 -1.2063618e+03 - 2.6855491e+03 6.2204582e+02 -1.1386216e+03 - 2.7040041e+03 6.9186732e+02 -1.0749387e+03 - 2.7186716e+03 7.6201658e+02 -1.0151952e+03 - 2.7296767e+03 8.3224241e+02 -9.5925095e+02 - 2.7371486e+03 9.0233938e+02 -9.0695492e+02 - 2.7412166e+03 9.7213819e+02 -8.5815227e+02 - 2.7420073e+03 1.0414980e+03 -8.1268870e+02 - 2.7396434e+03 1.1103006e+03 -7.7041327e+02 - 2.7342431e+03 1.1784453e+03 -7.3118020e+02 - 2.7259195e+03 1.2458457e+03 -6.9485007e+02 - 2.7147805e+03 1.3124265e+03 -6.6129052e+02 - 2.7009292e+03 1.3781208e+03 -6.3037673e+02 - 2.6844631e+03 1.4428690e+03 -6.0199171e+02 - 2.6654754e+03 1.5066167e+03 -5.7602648e+02 - 2.6440543e+03 1.5693136e+03 -5.5238007e+02 - 2.6202835e+03 1.6309127e+03 -5.3095956e+02 - 2.5942427e+03 1.6913694e+03 -5.1168005e+02 - 2.5660075e+03 1.7506407e+03 -4.9446451e+02 - 2.5356497e+03 1.8086848e+03 -4.7924376e+02 - 2.5032376e+03 1.8654608e+03 -4.6595631e+02 - 2.4688361e+03 1.9209279e+03 -4.5454825e+02 - 2.4325073e+03 1.9750455e+03 -4.4497313e+02 - 2.3943100e+03 2.0277725e+03 -4.3719186e+02 - 2.3543007e+03 2.0790673e+03 -4.3117260e+02 - 2.3125333e+03 2.1288875e+03 -4.2689069e+02 - 2.2690595e+03 2.1771897e+03 -4.2432855e+02 - 2.2239291e+03 2.2239291e+03 -4.2347567e+02 - 2.1771897e+03 2.2690595e+03 -4.2432855e+02 - 2.1288875e+03 2.3125333e+03 -4.2689069e+02 - 2.0790673e+03 2.3543007e+03 -4.3117260e+02 - 2.0277725e+03 2.3943100e+03 -4.3719186e+02 - 1.9750455e+03 2.4325073e+03 -4.4497313e+02 - 1.9209279e+03 2.4688361e+03 -4.5454825e+02 - 1.8654608e+03 2.5032376e+03 -4.6595631e+02 - 1.8086848e+03 2.5356497e+03 -4.7924376e+02 - 1.7506407e+03 2.5660075e+03 -4.9446451e+02 - 1.6913694e+03 2.5942427e+03 -5.1168005e+02 - 1.6309127e+03 2.6202835e+03 -5.3095956e+02 - 1.5693136e+03 2.6440543e+03 -5.5238007e+02 - 1.5066167e+03 2.6654754e+03 -5.7602648e+02 - 1.4428690e+03 2.6844631e+03 -6.0199171e+02 - 1.3781208e+03 2.7009292e+03 -6.3037673e+02 - 1.3124265e+03 2.7147805e+03 -6.6129052e+02 - 1.2458457e+03 2.7259195e+03 -6.9485007e+02 - 1.1784453e+03 2.7342431e+03 -7.3118020e+02 - 1.1103006e+03 2.7396434e+03 -7.7041327e+02 - 1.0414980e+03 2.7420073e+03 -8.1268870e+02 - 9.7213819e+02 2.7412166e+03 -8.5815227e+02 - 9.0233938e+02 2.7371486e+03 -9.0695492e+02 - 8.3224241e+02 2.7296767e+03 -9.5925095e+02 - 7.6201658e+02 2.7186716e+03 -1.0151952e+03 - 6.9186732e+02 2.7040041e+03 -1.0749387e+03 - 6.2204582e+02 2.6855491e+03 -1.1386216e+03 - 5.5286109e+02 2.6631923e+03 -1.2063618e+03 - 4.8469484e+02 2.6368413e+03 -1.2782378e+03 - 4.1801927e+02 2.6064433e+03 -1.3542606e+03 - 3.5341716e+02 2.5720140e+03 -1.4343297e+03 - 2.9160217e+02 2.5336810e+03 -1.5181660e+03 - 2.3343416e+02 2.4917503e+03 -1.6052109e+03 - 1.7991926e+02 2.4468019e+03 -1.6944813e+03 - 1.3217590e+02 2.3998174e+03 -1.7843774e+03 - 9.1338566e+01 2.3523282e+03 -1.8724584e+03 - 5.8365552e+01 2.3065484e+03 -1.9552467e+03 - 3.3732079e+01 2.2654027e+03 -2.0281893e+03 - 1.7046981e+01 2.2323269e+03 -2.0859691e+03 - 6.7334797e+00 2.2107364e+03 -2.1233212e+03 - 2.4067136e-09 2.2032157e+03 -2.1362695e+03 - -6.7334797e+00 2.2107364e+03 -2.1233212e+03 - -1.7046981e+01 2.2323269e+03 -2.0859691e+03 - -3.3732079e+01 2.2654027e+03 -2.0281893e+03 - -5.8365552e+01 2.3065484e+03 -1.9552467e+03 - -9.1338566e+01 2.3523282e+03 -1.8724584e+03 - -1.3217590e+02 2.3998174e+03 -1.7843774e+03 - -1.7991926e+02 2.4468019e+03 -1.6944813e+03 - -2.3343416e+02 2.4917503e+03 -1.6052109e+03 - -2.9160217e+02 2.5336810e+03 -1.5181660e+03 - -3.5341716e+02 2.5720140e+03 -1.4343297e+03 - -4.1801927e+02 2.6064433e+03 -1.3542606e+03 - -4.8469484e+02 2.6368413e+03 -1.2782378e+03 - -5.5286109e+02 2.6631923e+03 -1.2063618e+03 - -6.2204582e+02 2.6855491e+03 -1.1386216e+03 - -6.9186732e+02 2.7040041e+03 -1.0749387e+03 - -7.6201658e+02 2.7186716e+03 -1.0151952e+03 - -8.3224241e+02 2.7296767e+03 -9.5925095e+02 - -9.0233938e+02 2.7371486e+03 -9.0695492e+02 - -9.7213819e+02 2.7412166e+03 -8.5815227e+02 - -1.0414980e+03 2.7420073e+03 -8.1268870e+02 - -1.1103006e+03 2.7396434e+03 -7.7041327e+02 - -1.1784453e+03 2.7342431e+03 -7.3118020e+02 - -1.2458457e+03 2.7259195e+03 -6.9485007e+02 - -1.3124265e+03 2.7147805e+03 -6.6129052e+02 - -1.3781208e+03 2.7009292e+03 -6.3037673e+02 - -1.4428690e+03 2.6844631e+03 -6.0199171e+02 - -1.5066167e+03 2.6654754e+03 -5.7602648e+02 - -1.5693136e+03 2.6440543e+03 -5.5238007e+02 - -1.6309127e+03 2.6202835e+03 -5.3095956e+02 - -1.6913694e+03 2.5942427e+03 -5.1168005e+02 - -1.7506407e+03 2.5660075e+03 -4.9446451e+02 - -1.8086848e+03 2.5356497e+03 -4.7924376e+02 - -1.8654608e+03 2.5032376e+03 -4.6595631e+02 - -1.9209279e+03 2.4688361e+03 -4.5454825e+02 - -1.9750455e+03 2.4325073e+03 -4.4497313e+02 - -2.0277725e+03 2.3943100e+03 -4.3719186e+02 - -2.0790673e+03 2.3543007e+03 -4.3117260e+02 - -2.1288875e+03 2.3125333e+03 -4.2689069e+02 - -2.1771897e+03 2.2690595e+03 -4.2432855e+02 - -2.2239291e+03 2.2239291e+03 -4.2347567e+02 - -2.2690595e+03 2.1771897e+03 -4.2432855e+02 - -2.3125333e+03 2.1288875e+03 -4.2689069e+02 - -2.3543007e+03 2.0790673e+03 -4.3117260e+02 - -2.3943100e+03 2.0277725e+03 -4.3719186e+02 - -2.4325073e+03 1.9750455e+03 -4.4497313e+02 - -2.4688361e+03 1.9209279e+03 -4.5454825e+02 - -2.5032376e+03 1.8654608e+03 -4.6595631e+02 - -2.5356497e+03 1.8086848e+03 -4.7924376e+02 - -2.5660075e+03 1.7506407e+03 -4.9446451e+02 - -2.5942427e+03 1.6913694e+03 -5.1168005e+02 - -2.6202835e+03 1.6309127e+03 -5.3095956e+02 - -2.6440543e+03 1.5693136e+03 -5.5238007e+02 - -2.6654754e+03 1.5066167e+03 -5.7602648e+02 - -2.6844631e+03 1.4428690e+03 -6.0199171e+02 - -2.7009292e+03 1.3781208e+03 -6.3037673e+02 - -2.7147805e+03 1.3124265e+03 -6.6129052e+02 - -2.7259195e+03 1.2458457e+03 -6.9485007e+02 - -2.7342431e+03 1.1784453e+03 -7.3118020e+02 - -2.7396434e+03 1.1103006e+03 -7.7041327e+02 - -2.7420073e+03 1.0414980e+03 -8.1268870e+02 - -2.7412166e+03 9.7213819e+02 -8.5815227e+02 - -2.7371486e+03 9.0233938e+02 -9.0695492e+02 - -2.7296767e+03 8.3224241e+02 -9.5925095e+02 - -2.7186716e+03 7.6201658e+02 -1.0151952e+03 - -2.7040041e+03 6.9186732e+02 -1.0749387e+03 - -2.6855491e+03 6.2204582e+02 -1.1386216e+03 - -2.6631923e+03 5.5286109e+02 -1.2063618e+03 - -2.6368413e+03 4.8469484e+02 -1.2782378e+03 - -2.6064433e+03 4.1801927e+02 -1.3542606e+03 - -2.5720140e+03 3.5341716e+02 -1.4343297e+03 - -2.5336810e+03 2.9160217e+02 -1.5181660e+03 - -2.4917503e+03 2.3343416e+02 -1.6052109e+03 - -2.4468019e+03 1.7991926e+02 -1.6944813e+03 - -2.3998174e+03 1.3217590e+02 -1.7843774e+03 - -2.3523282e+03 9.1338566e+01 -1.8724584e+03 - -2.3065484e+03 5.8365552e+01 -1.9552467e+03 - -2.2654027e+03 3.3732079e+01 -2.0281893e+03 - -2.2323269e+03 1.7046981e+01 -2.0859691e+03 - -2.2107364e+03 6.7334797e+00 -2.1233212e+03 - -2.2032157e+03 0.0000000e+00 -2.1362695e+03 - -2.2107364e+03 -6.7334797e+00 -2.1233212e+03 - -2.2323269e+03 -1.7046981e+01 -2.0859691e+03 - -2.2654027e+03 -3.3732079e+01 -2.0281893e+03 - -2.3065484e+03 -5.8365552e+01 -1.9552467e+03 - -2.3523282e+03 -9.1338566e+01 -1.8724584e+03 - -2.3998174e+03 -1.3217590e+02 -1.7843774e+03 - -2.4468019e+03 -1.7991926e+02 -1.6944813e+03 - -2.4917503e+03 -2.3343416e+02 -1.6052109e+03 - -2.5336810e+03 -2.9160217e+02 -1.5181660e+03 - -2.5720140e+03 -3.5341716e+02 -1.4343297e+03 - -2.6064433e+03 -4.1801927e+02 -1.3542606e+03 - -2.6368413e+03 -4.8469484e+02 -1.2782378e+03 - -2.6631923e+03 -5.5286109e+02 -1.2063618e+03 - -2.6855491e+03 -6.2204582e+02 -1.1386216e+03 - -2.7040041e+03 -6.9186732e+02 -1.0749387e+03 - -2.7186716e+03 -7.6201658e+02 -1.0151952e+03 - -2.7296767e+03 -8.3224241e+02 -9.5925095e+02 - -2.7371486e+03 -9.0233938e+02 -9.0695492e+02 - -2.7412166e+03 -9.7213819e+02 -8.5815227e+02 - -2.7420073e+03 -1.0414980e+03 -8.1268870e+02 - -2.7396434e+03 -1.1103006e+03 -7.7041327e+02 - -2.7342431e+03 -1.1784453e+03 -7.3118020e+02 - -2.7259195e+03 -1.2458457e+03 -6.9485007e+02 - -2.7147805e+03 -1.3124265e+03 -6.6129052e+02 - -2.7009292e+03 -1.3781208e+03 -6.3037673e+02 - -2.6844631e+03 -1.4428690e+03 -6.0199171e+02 - -2.6654754e+03 -1.5066167e+03 -5.7602648e+02 - -2.6440543e+03 -1.5693136e+03 -5.5238007e+02 - -2.6202835e+03 -1.6309127e+03 -5.3095956e+02 - -2.5942427e+03 -1.6913694e+03 -5.1168005e+02 - -2.5660075e+03 -1.7506407e+03 -4.9446451e+02 - -2.5356497e+03 -1.8086848e+03 -4.7924376e+02 - -2.5032376e+03 -1.8654608e+03 -4.6595631e+02 - -2.4688361e+03 -1.9209279e+03 -4.5454825e+02 - -2.4325073e+03 -1.9750455e+03 -4.4497313e+02 - -2.3943100e+03 -2.0277725e+03 -4.3719186e+02 - -2.3543007e+03 -2.0790673e+03 -4.3117260e+02 - -2.3125333e+03 -2.1288875e+03 -4.2689069e+02 - -2.2690595e+03 -2.1771897e+03 -4.2432855e+02 - -2.2239291e+03 -2.2239291e+03 -4.2347567e+02 - -2.1771897e+03 -2.2690595e+03 -4.2432855e+02 - -2.1288875e+03 -2.3125333e+03 -4.2689069e+02 - -2.0790673e+03 -2.3543007e+03 -4.3117260e+02 - -2.0277725e+03 -2.3943100e+03 -4.3719186e+02 - -1.9750455e+03 -2.4325073e+03 -4.4497313e+02 - -1.9209279e+03 -2.4688361e+03 -4.5454825e+02 - -1.8654608e+03 -2.5032376e+03 -4.6595631e+02 - -1.8086848e+03 -2.5356497e+03 -4.7924376e+02 - -1.7506407e+03 -2.5660075e+03 -4.9446451e+02 - -1.6913694e+03 -2.5942427e+03 -5.1168005e+02 - -1.6309127e+03 -2.6202835e+03 -5.3095956e+02 - -1.5693136e+03 -2.6440543e+03 -5.5238007e+02 - -1.5066167e+03 -2.6654754e+03 -5.7602648e+02 - -1.4428690e+03 -2.6844631e+03 -6.0199171e+02 - -1.3781208e+03 -2.7009292e+03 -6.3037673e+02 - -1.3124265e+03 -2.7147805e+03 -6.6129052e+02 - -1.2458457e+03 -2.7259195e+03 -6.9485007e+02 - -1.1784453e+03 -2.7342431e+03 -7.3118020e+02 - -1.1103006e+03 -2.7396434e+03 -7.7041327e+02 - -1.0414980e+03 -2.7420073e+03 -8.1268870e+02 - -9.7213819e+02 -2.7412166e+03 -8.5815227e+02 - -9.0233938e+02 -2.7371486e+03 -9.0695492e+02 - -8.3224241e+02 -2.7296767e+03 -9.5925095e+02 - -7.6201658e+02 -2.7186716e+03 -1.0151952e+03 - -6.9186732e+02 -2.7040041e+03 -1.0749387e+03 - -6.2204582e+02 -2.6855491e+03 -1.1386216e+03 - -5.5286109e+02 -2.6631923e+03 -1.2063618e+03 - -4.8469484e+02 -2.6368413e+03 -1.2782378e+03 - -4.1801927e+02 -2.6064433e+03 -1.3542606e+03 - -3.5341716e+02 -2.5720140e+03 -1.4343297e+03 - -2.9160217e+02 -2.5336810e+03 -1.5181660e+03 - -2.3343416e+02 -2.4917503e+03 -1.6052109e+03 - -1.7991926e+02 -2.4468019e+03 -1.6944813e+03 - -1.3217590e+02 -2.3998174e+03 -1.7843774e+03 - -9.1338566e+01 -2.3523282e+03 -1.8724584e+03 - -5.8365552e+01 -2.3065484e+03 -1.9552467e+03 - -3.3732079e+01 -2.2654027e+03 -2.0281893e+03 - -1.7046981e+01 -2.2323269e+03 -2.0859691e+03 - -6.7334797e+00 -2.2107364e+03 -2.1233212e+03 - 0.0000000e+00 -2.2032157e+03 -2.1362695e+03 - 6.7334797e+00 -2.2107364e+03 -2.1233212e+03 - 1.7046981e+01 -2.2323269e+03 -2.0859691e+03 - 3.3732079e+01 -2.2654027e+03 -2.0281893e+03 - 5.8365552e+01 -2.3065484e+03 -1.9552467e+03 - 9.1338566e+01 -2.3523282e+03 -1.8724584e+03 - 1.3217590e+02 -2.3998174e+03 -1.7843774e+03 - 1.7991926e+02 -2.4468019e+03 -1.6944813e+03 - 2.3343416e+02 -2.4917503e+03 -1.6052109e+03 - 2.9160217e+02 -2.5336810e+03 -1.5181660e+03 - 3.5341716e+02 -2.5720140e+03 -1.4343297e+03 - 4.1801927e+02 -2.6064433e+03 -1.3542606e+03 - 4.8469484e+02 -2.6368413e+03 -1.2782378e+03 - 5.5286109e+02 -2.6631923e+03 -1.2063618e+03 - 6.2204582e+02 -2.6855491e+03 -1.1386216e+03 - 6.9186732e+02 -2.7040041e+03 -1.0749387e+03 - 7.6201658e+02 -2.7186716e+03 -1.0151952e+03 - 8.3224241e+02 -2.7296767e+03 -9.5925095e+02 - 9.0233938e+02 -2.7371486e+03 -9.0695492e+02 - 9.7213819e+02 -2.7412166e+03 -8.5815227e+02 - 1.0414980e+03 -2.7420073e+03 -8.1268870e+02 - 1.1103006e+03 -2.7396434e+03 -7.7041327e+02 - 1.1784453e+03 -2.7342431e+03 -7.3118020e+02 - 1.2458457e+03 -2.7259195e+03 -6.9485007e+02 - 1.3124265e+03 -2.7147805e+03 -6.6129052e+02 - 1.3781208e+03 -2.7009292e+03 -6.3037673e+02 - 1.4428690e+03 -2.6844631e+03 -6.0199171e+02 - 1.5066167e+03 -2.6654754e+03 -5.7602648e+02 - 1.5693136e+03 -2.6440543e+03 -5.5238007e+02 - 1.6309127e+03 -2.6202835e+03 -5.3095956e+02 - 1.6913694e+03 -2.5942427e+03 -5.1168005e+02 - 1.7506407e+03 -2.5660075e+03 -4.9446451e+02 - 1.8086848e+03 -2.5356497e+03 -4.7924376e+02 - 1.8654608e+03 -2.5032376e+03 -4.6595631e+02 - 1.9209279e+03 -2.4688361e+03 -4.5454825e+02 - 1.9750455e+03 -2.4325073e+03 -4.4497313e+02 - 2.0277725e+03 -2.3943100e+03 -4.3719186e+02 - 2.0790673e+03 -2.3543007e+03 -4.3117260e+02 - 2.1288875e+03 -2.3125333e+03 -4.2689069e+02 - 2.1771897e+03 -2.2690595e+03 -4.2432855e+02 - 2.2239291e+03 -2.2239291e+03 -4.2347567e+02 - 2.2690595e+03 -2.1771897e+03 -4.2432855e+02 - 2.3125333e+03 -2.1288875e+03 -4.2689069e+02 - 2.3543007e+03 -2.0790673e+03 -4.3117260e+02 - 2.3943100e+03 -2.0277725e+03 -4.3719186e+02 - 2.4325073e+03 -1.9750455e+03 -4.4497313e+02 - 2.4688361e+03 -1.9209279e+03 -4.5454825e+02 - 2.5032376e+03 -1.8654608e+03 -4.6595631e+02 - 2.5356497e+03 -1.8086848e+03 -4.7924376e+02 - 2.5660075e+03 -1.7506407e+03 -4.9446451e+02 - 2.5942427e+03 -1.6913694e+03 -5.1168005e+02 - 2.6202835e+03 -1.6309127e+03 -5.3095956e+02 - 2.6440543e+03 -1.5693136e+03 -5.5238007e+02 - 2.6654754e+03 -1.5066167e+03 -5.7602648e+02 - 2.6844631e+03 -1.4428690e+03 -6.0199171e+02 - 2.7009292e+03 -1.3781208e+03 -6.3037673e+02 - 2.7147805e+03 -1.3124265e+03 -6.6129052e+02 - 2.7259195e+03 -1.2458457e+03 -6.9485007e+02 - 2.7342431e+03 -1.1784453e+03 -7.3118020e+02 - 2.7396434e+03 -1.1103006e+03 -7.7041327e+02 - 2.7420073e+03 -1.0414980e+03 -8.1268870e+02 - 2.7412166e+03 -9.7213819e+02 -8.5815227e+02 - 2.7371486e+03 -9.0233938e+02 -9.0695492e+02 - 2.7296767e+03 -8.3224241e+02 -9.5925095e+02 - 2.7186716e+03 -7.6201658e+02 -1.0151952e+03 - 2.7040041e+03 -6.9186732e+02 -1.0749387e+03 - 2.6855491e+03 -6.2204582e+02 -1.1386216e+03 - 2.6631923e+03 -5.5286109e+02 -1.2063618e+03 - 2.6368413e+03 -4.8469484e+02 -1.2782378e+03 - 2.6064433e+03 -4.1801927e+02 -1.3542606e+03 - 2.5720140e+03 -3.5341716e+02 -1.4343297e+03 - 2.5336810e+03 -2.9160217e+02 -1.5181660e+03 - 2.4917503e+03 -2.3343416e+02 -1.6052109e+03 - 2.4468019e+03 -1.7991926e+02 -1.6944813e+03 - 2.3998174e+03 -1.3217590e+02 -1.7843774e+03 - 2.3523282e+03 -9.1338566e+01 -1.8724584e+03 - 2.3065484e+03 -5.8365552e+01 -1.9552467e+03 - 2.2654027e+03 -3.3732079e+01 -2.0281893e+03 - 2.2323269e+03 -1.7046981e+01 -2.0859691e+03 - 2.2107364e+03 -6.7334797e+00 -2.1233212e+03 - 2.2032157e+03 -2.4067136e-09 -2.1362695e+03 - 2.1669467e+03 -4.8134273e-09 -2.1967838e+03 - 2.1799602e+03 -3.7607769e+01 -2.1761354e+03 - 2.2155955e+03 -6.3677864e+01 -2.1192215e+03 - 2.2659009e+03 -7.1471853e+01 -2.0378035e+03 - 2.3226239e+03 -5.9929682e+01 -1.9441179e+03 - 2.3797688e+03 -3.1510237e+01 -1.8470983e+03 - 2.4338923e+03 1.0187818e+01 -1.7519271e+03 - 2.4833849e+03 6.1765519e+01 -1.6610840e+03 - 2.5276968e+03 1.2047838e+02 -1.5754814e+03 - 2.5668087e+03 1.8425631e+02 -1.4952419e+03 - 2.6009318e+03 2.5158059e+02 -1.4201407e+03 - 2.6303557e+03 3.2134466e+02 -1.3498305e+03 - 2.6553774e+03 3.9273879e+02 -1.2839464e+03 - 2.6762727e+03 4.6516433e+02 -1.2221495e+03 - 2.6932863e+03 5.3817265e+02 -1.1641408e+03 - 2.7066325e+03 6.1142242e+02 -1.1096626e+03 - 2.7164973e+03 6.8464987e+02 -1.0584940e+03 - 2.7230436e+03 7.5764783e+02 -1.0104448e+03 - 2.7264148e+03 8.3025098e+02 -9.6535045e+02 - 2.7267383e+03 9.0232526e+02 -9.2306654e+02 - 2.7241290e+03 9.7376024e+02 -8.8346517e+02 - 2.7186914e+03 1.0444634e+03 -8.4643167e+02 - 2.7105215e+03 1.1143561e+03 -8.1186217e+02 - 2.6997082e+03 1.1833702e+03 -7.7966183e+02 - 2.6863347e+03 1.2514460e+03 -7.4974352e+02 - 2.6704790e+03 1.3185300e+03 -7.2202683e+02 - 2.6522152e+03 1.3845736e+03 -6.9643743e+02 - 2.6316133e+03 1.4495323e+03 -6.7290655e+02 - 2.6087400e+03 1.5133643e+03 -6.5137068e+02 - 2.5836592e+03 1.5760300e+03 -6.3177132e+02 - 2.5564317e+03 1.6374914e+03 -6.1405487e+02 - 2.5271162e+03 1.6977118e+03 -5.9817250e+02 - 2.4957687e+03 1.7566549e+03 -5.8408011e+02 - 2.4624432e+03 1.8142853e+03 -5.7173827e+02 - 2.4271916e+03 1.8705672e+03 -5.6111225e+02 - 2.3900640e+03 1.9254650e+03 -5.5217192e+02 - 2.3511085e+03 1.9789429e+03 -5.4489182e+02 - 2.3103716e+03 2.0309643e+03 -5.3925112e+02 - 2.2678984e+03 2.0814923e+03 -5.3523362e+02 - 2.2237323e+03 2.1304889e+03 -5.3282774e+02 - 2.1779155e+03 2.1779155e+03 -5.3202655e+02 - 2.1304889e+03 2.2237323e+03 -5.3282774e+02 - 2.0814923e+03 2.2678984e+03 -5.3523362e+02 - 2.0309643e+03 2.3103716e+03 -5.3925112e+02 - 1.9789429e+03 2.3511085e+03 -5.4489182e+02 - 1.9254650e+03 2.3900640e+03 -5.5217192e+02 - 1.8705672e+03 2.4271916e+03 -5.6111225e+02 - 1.8142853e+03 2.4624432e+03 -5.7173827e+02 - 1.7566549e+03 2.4957687e+03 -5.8408011e+02 - 1.6977118e+03 2.5271162e+03 -5.9817250e+02 - 1.6374914e+03 2.5564317e+03 -6.1405487e+02 - 1.5760300e+03 2.5836592e+03 -6.3177132e+02 - 1.5133643e+03 2.6087400e+03 -6.5137068e+02 - 1.4495323e+03 2.6316133e+03 -6.7290655e+02 - 1.3845736e+03 2.6522152e+03 -6.9643743e+02 - 1.3185300e+03 2.6704790e+03 -7.2202683e+02 - 1.2514460e+03 2.6863347e+03 -7.4974352e+02 - 1.1833702e+03 2.6997082e+03 -7.7966183e+02 - 1.1143561e+03 2.7105215e+03 -8.1186217e+02 - 1.0444634e+03 2.7186914e+03 -8.4643167e+02 - 9.7376024e+02 2.7241290e+03 -8.8346517e+02 - 9.0232526e+02 2.7267383e+03 -9.2306654e+02 - 8.3025097e+02 2.7264148e+03 -9.6535045e+02 - 7.5764783e+02 2.7230436e+03 -1.0104448e+03 - 6.8464987e+02 2.7164973e+03 -1.0584940e+03 - 6.1142242e+02 2.7066325e+03 -1.1096626e+03 - 5.3817265e+02 2.6932863e+03 -1.1641408e+03 - 4.6516433e+02 2.6762727e+03 -1.2221495e+03 - 3.9273879e+02 2.6553774e+03 -1.2839464e+03 - 3.2134466e+02 2.6303557e+03 -1.3498305e+03 - 2.5158059e+02 2.6009318e+03 -1.4201407e+03 - 1.8425631e+02 2.5668087e+03 -1.4952419e+03 - 1.2047838e+02 2.5276968e+03 -1.5754814e+03 - 6.1765519e+01 2.4833849e+03 -1.6610840e+03 - 1.0187818e+01 2.4338923e+03 -1.7519271e+03 - -3.1510237e+01 2.3797688e+03 -1.8470983e+03 - -5.9929682e+01 2.3226239e+03 -1.9441179e+03 - -7.1471853e+01 2.2659009e+03 -2.0378035e+03 - -6.3677864e+01 2.2155955e+03 -2.1192215e+03 - -3.7607769e+01 2.1799602e+03 -2.1761354e+03 - -4.8134273e-09 2.1669467e+03 -2.1967838e+03 - 3.7607769e+01 2.1799602e+03 -2.1761354e+03 - 6.3677864e+01 2.2155955e+03 -2.1192215e+03 - 7.1471853e+01 2.2659009e+03 -2.0378035e+03 - 5.9929682e+01 2.3226239e+03 -1.9441179e+03 - 3.1510237e+01 2.3797688e+03 -1.8470983e+03 - -1.0187818e+01 2.4338923e+03 -1.7519271e+03 - -6.1765519e+01 2.4833849e+03 -1.6610840e+03 - -1.2047838e+02 2.5276968e+03 -1.5754814e+03 - -1.8425631e+02 2.5668087e+03 -1.4952419e+03 - -2.5158059e+02 2.6009318e+03 -1.4201407e+03 - -3.2134466e+02 2.6303557e+03 -1.3498305e+03 - -3.9273879e+02 2.6553774e+03 -1.2839464e+03 - -4.6516433e+02 2.6762727e+03 -1.2221495e+03 - -5.3817265e+02 2.6932863e+03 -1.1641408e+03 - -6.1142242e+02 2.7066325e+03 -1.1096626e+03 - -6.8464987e+02 2.7164973e+03 -1.0584940e+03 - -7.5764783e+02 2.7230436e+03 -1.0104448e+03 - -8.3025098e+02 2.7264148e+03 -9.6535045e+02 - -9.0232526e+02 2.7267383e+03 -9.2306654e+02 - -9.7376024e+02 2.7241290e+03 -8.8346517e+02 - -1.0444634e+03 2.7186914e+03 -8.4643167e+02 - -1.1143561e+03 2.7105215e+03 -8.1186217e+02 - -1.1833702e+03 2.6997082e+03 -7.7966183e+02 - -1.2514460e+03 2.6863347e+03 -7.4974352e+02 - -1.3185300e+03 2.6704790e+03 -7.2202683e+02 - -1.3845736e+03 2.6522152e+03 -6.9643743e+02 - -1.4495323e+03 2.6316133e+03 -6.7290655e+02 - -1.5133643e+03 2.6087400e+03 -6.5137068e+02 - -1.5760300e+03 2.5836592e+03 -6.3177132e+02 - -1.6374914e+03 2.5564317e+03 -6.1405487e+02 - -1.6977118e+03 2.5271162e+03 -5.9817250e+02 - -1.7566549e+03 2.4957687e+03 -5.8408011e+02 - -1.8142853e+03 2.4624432e+03 -5.7173827e+02 - -1.8705672e+03 2.4271916e+03 -5.6111225e+02 - -1.9254650e+03 2.3900640e+03 -5.5217192e+02 - -1.9789429e+03 2.3511085e+03 -5.4489182e+02 - -2.0309643e+03 2.3103716e+03 -5.3925112e+02 - -2.0814923e+03 2.2678984e+03 -5.3523362e+02 - -2.1304889e+03 2.2237323e+03 -5.3282774e+02 - -2.1779155e+03 2.1779155e+03 -5.3202655e+02 - -2.2237323e+03 2.1304889e+03 -5.3282774e+02 - -2.2678984e+03 2.0814923e+03 -5.3523362e+02 - -2.3103716e+03 2.0309643e+03 -5.3925112e+02 - -2.3511085e+03 1.9789429e+03 -5.4489182e+02 - -2.3900640e+03 1.9254650e+03 -5.5217192e+02 - -2.4271916e+03 1.8705672e+03 -5.6111225e+02 - -2.4624432e+03 1.8142853e+03 -5.7173827e+02 - -2.4957687e+03 1.7566549e+03 -5.8408011e+02 - -2.5271162e+03 1.6977118e+03 -5.9817250e+02 - -2.5564317e+03 1.6374914e+03 -6.1405487e+02 - -2.5836592e+03 1.5760300e+03 -6.3177132e+02 - -2.6087400e+03 1.5133643e+03 -6.5137068e+02 - -2.6316133e+03 1.4495323e+03 -6.7290655e+02 - -2.6522152e+03 1.3845736e+03 -6.9643743e+02 - -2.6704790e+03 1.3185300e+03 -7.2202683e+02 - -2.6863347e+03 1.2514460e+03 -7.4974352e+02 - -2.6997082e+03 1.1833702e+03 -7.7966183e+02 - -2.7105215e+03 1.1143561e+03 -8.1186217e+02 - -2.7186914e+03 1.0444634e+03 -8.4643167e+02 - -2.7241290e+03 9.7376024e+02 -8.8346517e+02 - -2.7267383e+03 9.0232526e+02 -9.2306654e+02 - -2.7264148e+03 8.3025097e+02 -9.6535045e+02 - -2.7230436e+03 7.5764783e+02 -1.0104448e+03 - -2.7164973e+03 6.8464987e+02 -1.0584940e+03 - -2.7066325e+03 6.1142242e+02 -1.1096626e+03 - -2.6932863e+03 5.3817265e+02 -1.1641408e+03 - -2.6762727e+03 4.6516433e+02 -1.2221495e+03 - -2.6553774e+03 3.9273879e+02 -1.2839464e+03 - -2.6303557e+03 3.2134466e+02 -1.3498305e+03 - -2.6009318e+03 2.5158059e+02 -1.4201407e+03 - -2.5668087e+03 1.8425631e+02 -1.4952419e+03 - -2.5276968e+03 1.2047838e+02 -1.5754814e+03 - -2.4833849e+03 6.1765519e+01 -1.6610840e+03 - -2.4338923e+03 1.0187818e+01 -1.7519271e+03 - -2.3797688e+03 -3.1510237e+01 -1.8470983e+03 - -2.3226239e+03 -5.9929682e+01 -1.9441179e+03 - -2.2659009e+03 -7.1471853e+01 -2.0378035e+03 - -2.2155955e+03 -6.3677864e+01 -2.1192215e+03 - -2.1799602e+03 -3.7607769e+01 -2.1761354e+03 - -2.1669467e+03 0.0000000e+00 -2.1967838e+03 - -2.1799602e+03 3.7607769e+01 -2.1761354e+03 - -2.2155955e+03 6.3677864e+01 -2.1192215e+03 - -2.2659009e+03 7.1471853e+01 -2.0378035e+03 - -2.3226239e+03 5.9929682e+01 -1.9441179e+03 - -2.3797688e+03 3.1510237e+01 -1.8470983e+03 - -2.4338923e+03 -1.0187818e+01 -1.7519271e+03 - -2.4833849e+03 -6.1765519e+01 -1.6610840e+03 - -2.5276968e+03 -1.2047838e+02 -1.5754814e+03 - -2.5668087e+03 -1.8425631e+02 -1.4952419e+03 - -2.6009318e+03 -2.5158059e+02 -1.4201407e+03 - -2.6303557e+03 -3.2134466e+02 -1.3498305e+03 - -2.6553774e+03 -3.9273879e+02 -1.2839464e+03 - -2.6762727e+03 -4.6516433e+02 -1.2221495e+03 - -2.6932863e+03 -5.3817265e+02 -1.1641408e+03 - -2.7066325e+03 -6.1142242e+02 -1.1096626e+03 - -2.7164973e+03 -6.8464987e+02 -1.0584940e+03 - -2.7230436e+03 -7.5764783e+02 -1.0104448e+03 - -2.7264148e+03 -8.3025098e+02 -9.6535045e+02 - -2.7267383e+03 -9.0232526e+02 -9.2306654e+02 - -2.7241290e+03 -9.7376024e+02 -8.8346517e+02 - -2.7186914e+03 -1.0444634e+03 -8.4643167e+02 - -2.7105215e+03 -1.1143561e+03 -8.1186217e+02 - -2.6997082e+03 -1.1833702e+03 -7.7966183e+02 - -2.6863347e+03 -1.2514460e+03 -7.4974352e+02 - -2.6704790e+03 -1.3185300e+03 -7.2202683e+02 - -2.6522152e+03 -1.3845736e+03 -6.9643743e+02 - -2.6316133e+03 -1.4495323e+03 -6.7290655e+02 - -2.6087400e+03 -1.5133643e+03 -6.5137068e+02 - -2.5836592e+03 -1.5760300e+03 -6.3177132e+02 - -2.5564317e+03 -1.6374914e+03 -6.1405487e+02 - -2.5271162e+03 -1.6977118e+03 -5.9817250e+02 - -2.4957687e+03 -1.7566549e+03 -5.8408011e+02 - -2.4624432e+03 -1.8142853e+03 -5.7173827e+02 - -2.4271916e+03 -1.8705672e+03 -5.6111225e+02 - -2.3900640e+03 -1.9254650e+03 -5.5217192e+02 - -2.3511085e+03 -1.9789429e+03 -5.4489182e+02 - -2.3103716e+03 -2.0309643e+03 -5.3925112e+02 - -2.2678984e+03 -2.0814923e+03 -5.3523362e+02 - -2.2237323e+03 -2.1304889e+03 -5.3282774e+02 - -2.1779155e+03 -2.1779155e+03 -5.3202655e+02 - -2.1304889e+03 -2.2237323e+03 -5.3282774e+02 - -2.0814923e+03 -2.2678984e+03 -5.3523362e+02 - -2.0309643e+03 -2.3103716e+03 -5.3925112e+02 - -1.9789429e+03 -2.3511085e+03 -5.4489182e+02 - -1.9254650e+03 -2.3900640e+03 -5.5217192e+02 - -1.8705672e+03 -2.4271916e+03 -5.6111225e+02 - -1.8142853e+03 -2.4624432e+03 -5.7173827e+02 - -1.7566549e+03 -2.4957687e+03 -5.8408011e+02 - -1.6977118e+03 -2.5271162e+03 -5.9817250e+02 - -1.6374914e+03 -2.5564317e+03 -6.1405487e+02 - -1.5760300e+03 -2.5836592e+03 -6.3177132e+02 - -1.5133643e+03 -2.6087400e+03 -6.5137068e+02 - -1.4495323e+03 -2.6316133e+03 -6.7290655e+02 - -1.3845736e+03 -2.6522152e+03 -6.9643743e+02 - -1.3185300e+03 -2.6704790e+03 -7.2202683e+02 - -1.2514460e+03 -2.6863347e+03 -7.4974352e+02 - -1.1833702e+03 -2.6997082e+03 -7.7966183e+02 - -1.1143561e+03 -2.7105215e+03 -8.1186217e+02 - -1.0444634e+03 -2.7186914e+03 -8.4643167e+02 - -9.7376024e+02 -2.7241290e+03 -8.8346517e+02 - -9.0232526e+02 -2.7267383e+03 -9.2306654e+02 - -8.3025097e+02 -2.7264148e+03 -9.6535045e+02 - -7.5764783e+02 -2.7230436e+03 -1.0104448e+03 - -6.8464987e+02 -2.7164973e+03 -1.0584940e+03 - -6.1142242e+02 -2.7066325e+03 -1.1096626e+03 - -5.3817265e+02 -2.6932863e+03 -1.1641408e+03 - -4.6516433e+02 -2.6762727e+03 -1.2221495e+03 - -3.9273879e+02 -2.6553774e+03 -1.2839464e+03 - -3.2134466e+02 -2.6303557e+03 -1.3498305e+03 - -2.5158059e+02 -2.6009318e+03 -1.4201407e+03 - -1.8425631e+02 -2.5668087e+03 -1.4952419e+03 - -1.2047838e+02 -2.5276968e+03 -1.5754814e+03 - -6.1765519e+01 -2.4833849e+03 -1.6610840e+03 - -1.0187818e+01 -2.4338923e+03 -1.7519271e+03 - 3.1510237e+01 -2.3797688e+03 -1.8470983e+03 - 5.9929682e+01 -2.3226239e+03 -1.9441179e+03 - 7.1471853e+01 -2.2659009e+03 -2.0378035e+03 - 6.3677864e+01 -2.2155955e+03 -2.1192215e+03 - 3.7607769e+01 -2.1799602e+03 -2.1761354e+03 - -2.4067136e-09 -2.1669467e+03 -2.1967838e+03 - -3.7607769e+01 -2.1799602e+03 -2.1761354e+03 - -6.3677864e+01 -2.2155955e+03 -2.1192215e+03 - -7.1471853e+01 -2.2659009e+03 -2.0378035e+03 - -5.9929682e+01 -2.3226239e+03 -1.9441179e+03 - -3.1510237e+01 -2.3797688e+03 -1.8470983e+03 - 1.0187818e+01 -2.4338923e+03 -1.7519271e+03 - 6.1765519e+01 -2.4833849e+03 -1.6610840e+03 - 1.2047838e+02 -2.5276968e+03 -1.5754814e+03 - 1.8425631e+02 -2.5668087e+03 -1.4952419e+03 - 2.5158059e+02 -2.6009318e+03 -1.4201407e+03 - 3.2134466e+02 -2.6303557e+03 -1.3498305e+03 - 3.9273879e+02 -2.6553774e+03 -1.2839464e+03 - 4.6516433e+02 -2.6762727e+03 -1.2221495e+03 - 5.3817265e+02 -2.6932863e+03 -1.1641408e+03 - 6.1142242e+02 -2.7066325e+03 -1.1096626e+03 - 6.8464987e+02 -2.7164973e+03 -1.0584940e+03 - 7.5764783e+02 -2.7230436e+03 -1.0104448e+03 - 8.3025098e+02 -2.7264148e+03 -9.6535045e+02 - 9.0232526e+02 -2.7267383e+03 -9.2306654e+02 - 9.7376024e+02 -2.7241290e+03 -8.8346517e+02 - 1.0444634e+03 -2.7186914e+03 -8.4643167e+02 - 1.1143561e+03 -2.7105215e+03 -8.1186217e+02 - 1.1833702e+03 -2.6997082e+03 -7.7966183e+02 - 1.2514460e+03 -2.6863347e+03 -7.4974352e+02 - 1.3185300e+03 -2.6704790e+03 -7.2202683e+02 - 1.3845736e+03 -2.6522152e+03 -6.9643743e+02 - 1.4495323e+03 -2.6316133e+03 -6.7290655e+02 - 1.5133643e+03 -2.6087400e+03 -6.5137068e+02 - 1.5760300e+03 -2.5836592e+03 -6.3177132e+02 - 1.6374914e+03 -2.5564317e+03 -6.1405487e+02 - 1.6977118e+03 -2.5271162e+03 -5.9817250e+02 - 1.7566549e+03 -2.4957687e+03 -5.8408011e+02 - 1.8142853e+03 -2.4624432e+03 -5.7173827e+02 - 1.8705672e+03 -2.4271916e+03 -5.6111225e+02 - 1.9254650e+03 -2.3900640e+03 -5.5217192e+02 - 1.9789429e+03 -2.3511085e+03 -5.4489182e+02 - 2.0309643e+03 -2.3103716e+03 -5.3925112e+02 - 2.0814923e+03 -2.2678984e+03 -5.3523362e+02 - 2.1304889e+03 -2.2237323e+03 -5.3282774e+02 - 2.1779155e+03 -2.1779155e+03 -5.3202655e+02 - 2.2237323e+03 -2.1304889e+03 -5.3282774e+02 - 2.2678984e+03 -2.0814923e+03 -5.3523362e+02 - 2.3103716e+03 -2.0309643e+03 -5.3925112e+02 - 2.3511085e+03 -1.9789429e+03 -5.4489182e+02 - 2.3900640e+03 -1.9254650e+03 -5.5217192e+02 - 2.4271916e+03 -1.8705672e+03 -5.6111225e+02 - 2.4624432e+03 -1.8142853e+03 -5.7173827e+02 - 2.4957687e+03 -1.7566549e+03 -5.8408011e+02 - 2.5271162e+03 -1.6977118e+03 -5.9817250e+02 - 2.5564317e+03 -1.6374914e+03 -6.1405487e+02 - 2.5836592e+03 -1.5760300e+03 -6.3177132e+02 - 2.6087400e+03 -1.5133643e+03 -6.5137068e+02 - 2.6316133e+03 -1.4495323e+03 -6.7290655e+02 - 2.6522152e+03 -1.3845736e+03 -6.9643743e+02 - 2.6704790e+03 -1.3185300e+03 -7.2202683e+02 - 2.6863347e+03 -1.2514460e+03 -7.4974352e+02 - 2.6997082e+03 -1.1833702e+03 -7.7966183e+02 - 2.7105215e+03 -1.1143561e+03 -8.1186217e+02 - 2.7186914e+03 -1.0444634e+03 -8.4643167e+02 - 2.7241290e+03 -9.7376024e+02 -8.8346517e+02 - 2.7267383e+03 -9.0232526e+02 -9.2306654e+02 - 2.7264148e+03 -8.3025097e+02 -9.6535045e+02 - 2.7230436e+03 -7.5764783e+02 -1.0104448e+03 - 2.7164973e+03 -6.8464987e+02 -1.0584940e+03 - 2.7066325e+03 -6.1142242e+02 -1.1096626e+03 - 2.6932863e+03 -5.3817265e+02 -1.1641408e+03 - 2.6762727e+03 -4.6516433e+02 -1.2221495e+03 - 2.6553774e+03 -3.9273879e+02 -1.2839464e+03 - 2.6303557e+03 -3.2134466e+02 -1.3498305e+03 - 2.6009318e+03 -2.5158059e+02 -1.4201407e+03 - 2.5668087e+03 -1.8425631e+02 -1.4952419e+03 - 2.5276968e+03 -1.2047838e+02 -1.5754814e+03 - 2.4833849e+03 -6.1765519e+01 -1.6610840e+03 - 2.4338923e+03 -1.0187818e+01 -1.7519271e+03 - 2.3797688e+03 3.1510237e+01 -1.8470983e+03 - 2.3226239e+03 5.9929682e+01 -1.9441179e+03 - 2.2659009e+03 7.1471853e+01 -2.0378035e+03 - 2.2155955e+03 6.3677864e+01 -2.1192215e+03 - 2.1799602e+03 3.7607769e+01 -2.1761354e+03 - 2.1669467e+03 -2.4067136e-09 -2.1967838e+03 - 2.1300382e+03 -2.4067136e-09 -2.2557099e+03 - 2.1560740e+03 -1.1417927e+02 -2.2167300e+03 - 2.2194704e+03 -1.8833111e+02 -2.1210237e+03 - 2.2945905e+03 -2.1349794e+02 -2.0056323e+03 - 2.3658818e+03 -2.0088984e+02 -1.8930971e+03 - 2.4282356e+03 -1.6376432e+02 -1.7909042e+03 - 2.4813211e+03 -1.1153008e+02 -1.6996342e+03 - 2.5262235e+03 -5.0011775e+01 -1.6178089e+03 - 2.5641880e+03 1.7280396e+01 -1.5437075e+03 - 2.5962692e+03 8.8200063e+01 -1.4758752e+03 - 2.6232844e+03 1.6139416e+02 -1.4131950e+03 - 2.6458487e+03 2.3597848e+02 -1.3548375e+03 - 2.6644225e+03 3.1135352e+02 -1.3001940e+03 - 2.6793529e+03 3.8709799e+02 -1.2488170e+03 - 2.6909047e+03 4.6290567e+02 -1.2003759e+03 - 2.6992837e+03 5.3854694e+02 -1.1546235e+03 - 2.7046528e+03 6.1384457e+02 -1.1113725e+03 - 2.7071441e+03 6.8865814e+02 -1.0704784e+03 - 2.7068671e+03 7.6287373e+02 -1.0318279e+03 - 2.7039152e+03 8.3639683e+02 -9.9532932e+02 - 2.6983694e+03 9.0914749e+02 -9.6090726e+02 - 2.6903019e+03 9.8105681e+02 -9.2849777e+02 - 2.6797785e+03 1.0520644e+03 -8.9804537e+02 - 2.6668597e+03 1.1221163e+03 -8.6950082e+02 - 2.6516024e+03 1.1911640e+03 -8.4281964e+02 - 2.6340605e+03 1.2591628e+03 -8.1796104e+02 - 2.6142856e+03 1.3260712e+03 -7.9488725e+02 - 2.5923272e+03 1.3918503e+03 -7.7356307e+02 - 2.5682335e+03 1.4564629e+03 -7.5395566e+02 - 2.5420510e+03 1.5198734e+03 -7.3603434e+02 - 2.5138253e+03 1.5820473e+03 -7.1977062e+02 - 2.4836007e+03 1.6429509e+03 -7.0513813e+02 - 2.4514204e+03 1.7025509e+03 -6.9211273e+02 - 2.4173269e+03 1.7608144e+03 -6.8067256e+02 - 2.3813615e+03 1.8177088e+03 -6.7079807e+02 - 2.3435646e+03 1.8732011e+03 -6.6247217e+02 - 2.3039760e+03 1.9272584e+03 -6.5568024e+02 - 2.2626344e+03 1.9798476e+03 -6.5041024e+02 - 2.2195778e+03 2.0309350e+03 -6.4665273e+02 - 2.1748435e+03 2.0804866e+03 -6.4440093e+02 - 2.1284678e+03 2.1284678e+03 -6.4365079e+02 - 2.0804866e+03 2.1748435e+03 -6.4440093e+02 - 2.0309350e+03 2.2195778e+03 -6.4665273e+02 - 1.9798476e+03 2.2626344e+03 -6.5041024e+02 - 1.9272584e+03 2.3039760e+03 -6.5568024e+02 - 1.8732011e+03 2.3435646e+03 -6.6247217e+02 - 1.8177088e+03 2.3813615e+03 -6.7079807e+02 - 1.7608144e+03 2.4173269e+03 -6.8067256e+02 - 1.7025509e+03 2.4514204e+03 -6.9211273e+02 - 1.6429509e+03 2.4836007e+03 -7.0513813e+02 - 1.5820473e+03 2.5138253e+03 -7.1977062e+02 - 1.5198734e+03 2.5420510e+03 -7.3603434e+02 - 1.4564629e+03 2.5682335e+03 -7.5395566e+02 - 1.3918503e+03 2.5923272e+03 -7.7356307e+02 - 1.3260712e+03 2.6142856e+03 -7.9488725e+02 - 1.2591628e+03 2.6340605e+03 -8.1796104e+02 - 1.1911640e+03 2.6516024e+03 -8.4281964e+02 - 1.1221163e+03 2.6668597e+03 -8.6950082e+02 - 1.0520644e+03 2.6797785e+03 -8.9804537e+02 - 9.8105681e+02 2.6903019e+03 -9.2849777e+02 - 9.0914749e+02 2.6983694e+03 -9.6090726e+02 - 8.3639683e+02 2.7039152e+03 -9.9532932e+02 - 7.6287373e+02 2.7068671e+03 -1.0318279e+03 - 6.8865814e+02 2.7071441e+03 -1.0704784e+03 - 6.1384457e+02 2.7046528e+03 -1.1113725e+03 - 5.3854694e+02 2.6992837e+03 -1.1546235e+03 - 4.6290567e+02 2.6909047e+03 -1.2003759e+03 - 3.8709799e+02 2.6793529e+03 -1.2488170e+03 - 3.1135352e+02 2.6644225e+03 -1.3001940e+03 - 2.3597848e+02 2.6458487e+03 -1.3548375e+03 - 1.6139416e+02 2.6232844e+03 -1.4131950e+03 - 8.8200063e+01 2.5962692e+03 -1.4758752e+03 - 1.7280396e+01 2.5641880e+03 -1.5437075e+03 - -5.0011775e+01 2.5262235e+03 -1.6178089e+03 - -1.1153008e+02 2.4813211e+03 -1.6996342e+03 - -1.6376432e+02 2.4282356e+03 -1.7909042e+03 - -2.0088984e+02 2.3658818e+03 -1.8930971e+03 - -2.1349794e+02 2.2945905e+03 -2.0056323e+03 - -1.8833111e+02 2.2194704e+03 -2.1210237e+03 - -1.1417927e+02 2.1560740e+03 -2.2167300e+03 - 0.0000000e+00 2.1300382e+03 -2.2557099e+03 - 1.1417927e+02 2.1560740e+03 -2.2167300e+03 - 1.8833111e+02 2.2194704e+03 -2.1210237e+03 - 2.1349794e+02 2.2945905e+03 -2.0056323e+03 - 2.0088984e+02 2.3658818e+03 -1.8930971e+03 - 1.6376432e+02 2.4282356e+03 -1.7909042e+03 - 1.1153008e+02 2.4813211e+03 -1.6996342e+03 - 5.0011775e+01 2.5262235e+03 -1.6178089e+03 - -1.7280396e+01 2.5641880e+03 -1.5437075e+03 - -8.8200063e+01 2.5962692e+03 -1.4758752e+03 - -1.6139416e+02 2.6232844e+03 -1.4131950e+03 - -2.3597848e+02 2.6458487e+03 -1.3548375e+03 - -3.1135352e+02 2.6644225e+03 -1.3001940e+03 - -3.8709799e+02 2.6793529e+03 -1.2488170e+03 - -4.6290567e+02 2.6909047e+03 -1.2003759e+03 - -5.3854694e+02 2.6992837e+03 -1.1546235e+03 - -6.1384457e+02 2.7046528e+03 -1.1113725e+03 - -6.8865814e+02 2.7071441e+03 -1.0704784e+03 - -7.6287373e+02 2.7068671e+03 -1.0318279e+03 - -8.3639683e+02 2.7039152e+03 -9.9532932e+02 - -9.0914749e+02 2.6983694e+03 -9.6090726e+02 - -9.8105681e+02 2.6903019e+03 -9.2849777e+02 - -1.0520644e+03 2.6797785e+03 -8.9804537e+02 - -1.1221163e+03 2.6668597e+03 -8.6950082e+02 - -1.1911640e+03 2.6516024e+03 -8.4281964e+02 - -1.2591628e+03 2.6340605e+03 -8.1796104e+02 - -1.3260712e+03 2.6142856e+03 -7.9488725e+02 - -1.3918503e+03 2.5923272e+03 -7.7356307e+02 - -1.4564629e+03 2.5682335e+03 -7.5395566e+02 - -1.5198734e+03 2.5420510e+03 -7.3603434e+02 - -1.5820473e+03 2.5138253e+03 -7.1977062e+02 - -1.6429509e+03 2.4836007e+03 -7.0513813e+02 - -1.7025509e+03 2.4514204e+03 -6.9211273e+02 - -1.7608144e+03 2.4173269e+03 -6.8067256e+02 - -1.8177088e+03 2.3813615e+03 -6.7079807e+02 - -1.8732011e+03 2.3435646e+03 -6.6247217e+02 - -1.9272584e+03 2.3039760e+03 -6.5568024e+02 - -1.9798476e+03 2.2626344e+03 -6.5041024e+02 - -2.0309350e+03 2.2195778e+03 -6.4665273e+02 - -2.0804866e+03 2.1748435e+03 -6.4440093e+02 - -2.1284678e+03 2.1284678e+03 -6.4365079e+02 - -2.1748435e+03 2.0804866e+03 -6.4440093e+02 - -2.2195778e+03 2.0309350e+03 -6.4665273e+02 - -2.2626344e+03 1.9798476e+03 -6.5041024e+02 - -2.3039760e+03 1.9272584e+03 -6.5568024e+02 - -2.3435646e+03 1.8732011e+03 -6.6247217e+02 - -2.3813615e+03 1.8177088e+03 -6.7079807e+02 - -2.4173269e+03 1.7608144e+03 -6.8067256e+02 - -2.4514204e+03 1.7025509e+03 -6.9211273e+02 - -2.4836007e+03 1.6429509e+03 -7.0513813e+02 - -2.5138253e+03 1.5820473e+03 -7.1977062e+02 - -2.5420510e+03 1.5198734e+03 -7.3603434e+02 - -2.5682335e+03 1.4564629e+03 -7.5395566e+02 - -2.5923272e+03 1.3918503e+03 -7.7356307e+02 - -2.6142856e+03 1.3260712e+03 -7.9488725e+02 - -2.6340605e+03 1.2591628e+03 -8.1796104e+02 - -2.6516024e+03 1.1911640e+03 -8.4281964e+02 - -2.6668597e+03 1.1221163e+03 -8.6950082e+02 - -2.6797785e+03 1.0520644e+03 -8.9804537e+02 - -2.6903019e+03 9.8105681e+02 -9.2849777e+02 - -2.6983694e+03 9.0914749e+02 -9.6090726e+02 - -2.7039152e+03 8.3639683e+02 -9.9532932e+02 - -2.7068671e+03 7.6287373e+02 -1.0318279e+03 - -2.7071441e+03 6.8865814e+02 -1.0704784e+03 - -2.7046528e+03 6.1384457e+02 -1.1113725e+03 - -2.6992837e+03 5.3854694e+02 -1.1546235e+03 - -2.6909047e+03 4.6290567e+02 -1.2003759e+03 - -2.6793529e+03 3.8709799e+02 -1.2488170e+03 - -2.6644225e+03 3.1135352e+02 -1.3001940e+03 - -2.6458487e+03 2.3597848e+02 -1.3548375e+03 - -2.6232844e+03 1.6139416e+02 -1.4131950e+03 - -2.5962692e+03 8.8200063e+01 -1.4758752e+03 - -2.5641880e+03 1.7280396e+01 -1.5437075e+03 - -2.5262235e+03 -5.0011775e+01 -1.6178089e+03 - -2.4813211e+03 -1.1153008e+02 -1.6996342e+03 - -2.4282356e+03 -1.6376432e+02 -1.7909042e+03 - -2.3658818e+03 -2.0088984e+02 -1.8930971e+03 - -2.2945905e+03 -2.1349794e+02 -2.0056323e+03 - -2.2194704e+03 -1.8833111e+02 -2.1210237e+03 - -2.1560740e+03 -1.1417927e+02 -2.2167300e+03 - -2.1300382e+03 4.8134273e-09 -2.2557099e+03 - -2.1560740e+03 1.1417927e+02 -2.2167300e+03 - -2.2194704e+03 1.8833111e+02 -2.1210237e+03 - -2.2945905e+03 2.1349794e+02 -2.0056323e+03 - -2.3658818e+03 2.0088984e+02 -1.8930971e+03 - -2.4282356e+03 1.6376432e+02 -1.7909042e+03 - -2.4813211e+03 1.1153008e+02 -1.6996342e+03 - -2.5262235e+03 5.0011775e+01 -1.6178089e+03 - -2.5641880e+03 -1.7280396e+01 -1.5437075e+03 - -2.5962692e+03 -8.8200063e+01 -1.4758752e+03 - -2.6232844e+03 -1.6139416e+02 -1.4131950e+03 - -2.6458487e+03 -2.3597848e+02 -1.3548375e+03 - -2.6644225e+03 -3.1135352e+02 -1.3001940e+03 - -2.6793529e+03 -3.8709799e+02 -1.2488170e+03 - -2.6909047e+03 -4.6290567e+02 -1.2003759e+03 - -2.6992837e+03 -5.3854694e+02 -1.1546235e+03 - -2.7046528e+03 -6.1384457e+02 -1.1113725e+03 - -2.7071441e+03 -6.8865814e+02 -1.0704784e+03 - -2.7068671e+03 -7.6287373e+02 -1.0318279e+03 - -2.7039152e+03 -8.3639683e+02 -9.9532932e+02 - -2.6983694e+03 -9.0914749e+02 -9.6090726e+02 - -2.6903019e+03 -9.8105681e+02 -9.2849777e+02 - -2.6797785e+03 -1.0520644e+03 -8.9804537e+02 - -2.6668597e+03 -1.1221163e+03 -8.6950082e+02 - -2.6516024e+03 -1.1911640e+03 -8.4281964e+02 - -2.6340605e+03 -1.2591628e+03 -8.1796104e+02 - -2.6142856e+03 -1.3260712e+03 -7.9488725e+02 - -2.5923272e+03 -1.3918503e+03 -7.7356307e+02 - -2.5682335e+03 -1.4564629e+03 -7.5395566e+02 - -2.5420510e+03 -1.5198734e+03 -7.3603434e+02 - -2.5138253e+03 -1.5820473e+03 -7.1977062e+02 - -2.4836007e+03 -1.6429509e+03 -7.0513813e+02 - -2.4514204e+03 -1.7025509e+03 -6.9211273e+02 - -2.4173269e+03 -1.7608144e+03 -6.8067256e+02 - -2.3813615e+03 -1.8177088e+03 -6.7079807e+02 - -2.3435646e+03 -1.8732011e+03 -6.6247217e+02 - -2.3039760e+03 -1.9272584e+03 -6.5568024e+02 - -2.2626344e+03 -1.9798476e+03 -6.5041024e+02 - -2.2195778e+03 -2.0309350e+03 -6.4665273e+02 - -2.1748435e+03 -2.0804866e+03 -6.4440093e+02 - -2.1284678e+03 -2.1284678e+03 -6.4365079e+02 - -2.0804866e+03 -2.1748435e+03 -6.4440093e+02 - -2.0309350e+03 -2.2195778e+03 -6.4665273e+02 - -1.9798476e+03 -2.2626344e+03 -6.5041024e+02 - -1.9272584e+03 -2.3039760e+03 -6.5568024e+02 - -1.8732011e+03 -2.3435646e+03 -6.6247217e+02 - -1.8177088e+03 -2.3813615e+03 -6.7079807e+02 - -1.7608144e+03 -2.4173269e+03 -6.8067256e+02 - -1.7025509e+03 -2.4514204e+03 -6.9211273e+02 - -1.6429509e+03 -2.4836007e+03 -7.0513813e+02 - -1.5820473e+03 -2.5138253e+03 -7.1977062e+02 - -1.5198734e+03 -2.5420510e+03 -7.3603434e+02 - -1.4564629e+03 -2.5682335e+03 -7.5395566e+02 - -1.3918503e+03 -2.5923272e+03 -7.7356307e+02 - -1.3260712e+03 -2.6142856e+03 -7.9488725e+02 - -1.2591628e+03 -2.6340605e+03 -8.1796104e+02 - -1.1911640e+03 -2.6516024e+03 -8.4281964e+02 - -1.1221163e+03 -2.6668597e+03 -8.6950082e+02 - -1.0520644e+03 -2.6797785e+03 -8.9804537e+02 - -9.8105681e+02 -2.6903019e+03 -9.2849777e+02 - -9.0914749e+02 -2.6983694e+03 -9.6090726e+02 - -8.3639683e+02 -2.7039152e+03 -9.9532932e+02 - -7.6287373e+02 -2.7068671e+03 -1.0318279e+03 - -6.8865814e+02 -2.7071441e+03 -1.0704784e+03 - -6.1384457e+02 -2.7046528e+03 -1.1113725e+03 - -5.3854694e+02 -2.6992837e+03 -1.1546235e+03 - -4.6290567e+02 -2.6909047e+03 -1.2003759e+03 - -3.8709799e+02 -2.6793529e+03 -1.2488170e+03 - -3.1135352e+02 -2.6644225e+03 -1.3001940e+03 - -2.3597848e+02 -2.6458487e+03 -1.3548375e+03 - -1.6139416e+02 -2.6232844e+03 -1.4131950e+03 - -8.8200063e+01 -2.5962692e+03 -1.4758752e+03 - -1.7280396e+01 -2.5641880e+03 -1.5437075e+03 - 5.0011775e+01 -2.5262235e+03 -1.6178089e+03 - 1.1153008e+02 -2.4813211e+03 -1.6996342e+03 - 1.6376432e+02 -2.4282356e+03 -1.7909042e+03 - 2.0088984e+02 -2.3658818e+03 -1.8930971e+03 - 2.1349794e+02 -2.2945905e+03 -2.0056323e+03 - 1.8833111e+02 -2.2194704e+03 -2.1210237e+03 - 1.1417927e+02 -2.1560740e+03 -2.2167300e+03 - -4.8134273e-09 -2.1300382e+03 -2.2557099e+03 - -1.1417927e+02 -2.1560740e+03 -2.2167300e+03 - -1.8833111e+02 -2.2194704e+03 -2.1210237e+03 - -2.1349794e+02 -2.2945905e+03 -2.0056323e+03 - -2.0088984e+02 -2.3658818e+03 -1.8930971e+03 - -1.6376432e+02 -2.4282356e+03 -1.7909042e+03 - -1.1153008e+02 -2.4813211e+03 -1.6996342e+03 - -5.0011775e+01 -2.5262235e+03 -1.6178089e+03 - 1.7280396e+01 -2.5641880e+03 -1.5437075e+03 - 8.8200063e+01 -2.5962692e+03 -1.4758752e+03 - 1.6139416e+02 -2.6232844e+03 -1.4131950e+03 - 2.3597848e+02 -2.6458487e+03 -1.3548375e+03 - 3.1135352e+02 -2.6644225e+03 -1.3001940e+03 - 3.8709799e+02 -2.6793529e+03 -1.2488170e+03 - 4.6290567e+02 -2.6909047e+03 -1.2003759e+03 - 5.3854694e+02 -2.6992837e+03 -1.1546235e+03 - 6.1384457e+02 -2.7046528e+03 -1.1113725e+03 - 6.8865814e+02 -2.7071441e+03 -1.0704784e+03 - 7.6287373e+02 -2.7068671e+03 -1.0318279e+03 - 8.3639683e+02 -2.7039152e+03 -9.9532932e+02 - 9.0914749e+02 -2.6983694e+03 -9.6090726e+02 - 9.8105681e+02 -2.6903019e+03 -9.2849777e+02 - 1.0520644e+03 -2.6797785e+03 -8.9804537e+02 - 1.1221163e+03 -2.6668597e+03 -8.6950082e+02 - 1.1911640e+03 -2.6516024e+03 -8.4281964e+02 - 1.2591628e+03 -2.6340605e+03 -8.1796104e+02 - 1.3260712e+03 -2.6142856e+03 -7.9488725e+02 - 1.3918503e+03 -2.5923272e+03 -7.7356307e+02 - 1.4564629e+03 -2.5682335e+03 -7.5395566e+02 - 1.5198734e+03 -2.5420510e+03 -7.3603434e+02 - 1.5820473e+03 -2.5138253e+03 -7.1977062e+02 - 1.6429509e+03 -2.4836007e+03 -7.0513813e+02 - 1.7025509e+03 -2.4514204e+03 -6.9211273e+02 - 1.7608144e+03 -2.4173269e+03 -6.8067256e+02 - 1.8177088e+03 -2.3813615e+03 -6.7079807e+02 - 1.8732011e+03 -2.3435646e+03 -6.6247217e+02 - 1.9272584e+03 -2.3039760e+03 -6.5568024e+02 - 1.9798476e+03 -2.2626344e+03 -6.5041024e+02 - 2.0309350e+03 -2.2195778e+03 -6.4665273e+02 - 2.0804866e+03 -2.1748435e+03 -6.4440093e+02 - 2.1284678e+03 -2.1284678e+03 -6.4365079e+02 - 2.1748435e+03 -2.0804866e+03 -6.4440093e+02 - 2.2195778e+03 -2.0309350e+03 -6.4665273e+02 - 2.2626344e+03 -1.9798476e+03 -6.5041024e+02 - 2.3039760e+03 -1.9272584e+03 -6.5568024e+02 - 2.3435646e+03 -1.8732011e+03 -6.6247217e+02 - 2.3813615e+03 -1.8177088e+03 -6.7079807e+02 - 2.4173269e+03 -1.7608144e+03 -6.8067256e+02 - 2.4514204e+03 -1.7025509e+03 -6.9211273e+02 - 2.4836007e+03 -1.6429509e+03 -7.0513813e+02 - 2.5138253e+03 -1.5820473e+03 -7.1977062e+02 - 2.5420510e+03 -1.5198734e+03 -7.3603434e+02 - 2.5682335e+03 -1.4564629e+03 -7.5395566e+02 - 2.5923272e+03 -1.3918503e+03 -7.7356307e+02 - 2.6142856e+03 -1.3260712e+03 -7.9488725e+02 - 2.6340605e+03 -1.2591628e+03 -8.1796104e+02 - 2.6516024e+03 -1.1911640e+03 -8.4281964e+02 - 2.6668597e+03 -1.1221163e+03 -8.6950082e+02 - 2.6797785e+03 -1.0520644e+03 -8.9804537e+02 - 2.6903019e+03 -9.8105681e+02 -9.2849777e+02 - 2.6983694e+03 -9.0914749e+02 -9.6090726e+02 - 2.7039152e+03 -8.3639683e+02 -9.9532932e+02 - 2.7068671e+03 -7.6287373e+02 -1.0318279e+03 - 2.7071441e+03 -6.8865814e+02 -1.0704784e+03 - 2.7046528e+03 -6.1384457e+02 -1.1113725e+03 - 2.6992837e+03 -5.3854694e+02 -1.1546235e+03 - 2.6909047e+03 -4.6290567e+02 -1.2003759e+03 - 2.6793529e+03 -3.8709799e+02 -1.2488170e+03 - 2.6644225e+03 -3.1135352e+02 -1.3001940e+03 - 2.6458487e+03 -2.3597848e+02 -1.3548375e+03 - 2.6232844e+03 -1.6139416e+02 -1.4131950e+03 - 2.5962692e+03 -8.8200063e+01 -1.4758752e+03 - 2.5641880e+03 -1.7280396e+01 -1.5437075e+03 - 2.5262235e+03 5.0011775e+01 -1.6178089e+03 - 2.4813211e+03 1.1153008e+02 -1.6996342e+03 - 2.4282356e+03 1.6376432e+02 -1.7909042e+03 - 2.3658818e+03 2.0088984e+02 -1.8930971e+03 - 2.2945905e+03 2.1349794e+02 -2.0056323e+03 - 2.2194704e+03 1.8833111e+02 -2.1210237e+03 - 2.1560740e+03 1.1417927e+02 -2.2167300e+03 - 2.1300382e+03 0.0000000e+00 -2.2557099e+03 - 2.0925352e+03 0.0000000e+00 -2.3130507e+03 - 2.1615844e+03 -2.7367005e+02 -2.2133926e+03 - 2.2782034e+03 -3.8139340e+02 -2.0433189e+03 - 2.3720512e+03 -3.8455235e+02 -1.9031062e+03 - 2.4410145e+03 -3.4398774e+02 -1.7959025e+03 - 2.4930991e+03 -2.8470481e+02 -1.7103960e+03 - 2.5339748e+03 -2.1655980e+02 -1.6385689e+03 - 2.5669978e+03 -1.4383163e+02 -1.5756855e+03 - 2.5941474e+03 -6.8594211e+01 -1.5189656e+03 - 2.6166266e+03 8.0402979e+00 -1.4667344e+03 - 2.6351920e+03 8.5419334e+01 -1.4179527e+03 - 2.6503357e+03 1.6312822e+02 -1.3719596e+03 - 2.6623870e+03 2.4088427e+02 -1.3283268e+03 - 2.6715728e+03 3.1848268e+02 -1.2867725e+03 - 2.6780537e+03 3.9576722e+02 -1.2471101e+03 - 2.6819467e+03 4.7261349e+02 -1.2092152e+03 - 2.6833399e+03 5.4891893e+02 -1.1730045e+03 - 2.6823018e+03 6.2459658e+02 -1.1384226e+03 - 2.6788880e+03 6.9957101e+02 -1.1054320e+03 - 2.6731450e+03 7.7377558e+02 -1.0740074e+03 - 2.6651139e+03 8.4715052e+02 -1.0441311e+03 - 2.6548318e+03 9.1964151e+02 -1.0157903e+03 - 2.6423336e+03 9.9119869e+02 -9.8897493e+02 - 2.6276526e+03 1.0617758e+03 -9.6367645e+02 - 2.6108215e+03 1.1313295e+03 -9.3988700e+02 - 2.5918724e+03 1.1998190e+03 -9.1759885e+02 - 2.5708375e+03 1.2672054e+03 -8.9680412e+02 - 2.5477491e+03 1.3334517e+03 -8.7749467e+02 - 2.5226394e+03 1.3985220e+03 -8.5966210e+02 - 2.4955410e+03 1.4623816e+03 -8.4329777e+02 - 2.4664866e+03 1.5249968e+03 -8.2839300e+02 - 2.4355091e+03 1.5863345e+03 -8.1493912e+02 - 2.4026412e+03 1.6463621e+03 -8.0292772e+02 - 2.3679161e+03 1.7050476e+03 -7.9235075e+02 - 2.3313668e+03 1.7623589e+03 -7.8320068e+02 - 2.2930261e+03 1.8182646e+03 -7.7547070e+02 - 2.2529270e+03 1.8727328e+03 -7.6915480e+02 - 2.2111023e+03 1.9257322e+03 -7.6424788e+02 - 2.1675846e+03 1.9772310e+03 -7.6074590e+02 - 2.1224064e+03 2.0271975e+03 -7.5864590e+02 - 2.0756000e+03 2.0756000e+03 -7.5794610e+02 - 2.0271975e+03 2.1224064e+03 -7.5864590e+02 - 1.9772310e+03 2.1675846e+03 -7.6074590e+02 - 1.9257322e+03 2.2111023e+03 -7.6424788e+02 - 1.8727328e+03 2.2529270e+03 -7.6915480e+02 - 1.8182646e+03 2.2930261e+03 -7.7547070e+02 - 1.7623589e+03 2.3313668e+03 -7.8320068e+02 - 1.7050476e+03 2.3679161e+03 -7.9235075e+02 - 1.6463621e+03 2.4026412e+03 -8.0292772e+02 - 1.5863345e+03 2.4355091e+03 -8.1493912e+02 - 1.5249968e+03 2.4664866e+03 -8.2839300e+02 - 1.4623816e+03 2.4955410e+03 -8.4329777e+02 - 1.3985220e+03 2.5226394e+03 -8.5966210e+02 - 1.3334517e+03 2.5477491e+03 -8.7749467e+02 - 1.2672054e+03 2.5708375e+03 -8.9680412e+02 - 1.1998190e+03 2.5918724e+03 -9.1759885e+02 - 1.1313295e+03 2.6108215e+03 -9.3988700e+02 - 1.0617758e+03 2.6276526e+03 -9.6367645e+02 - 9.9119869e+02 2.6423336e+03 -9.8897493e+02 - 9.1964151e+02 2.6548318e+03 -1.0157903e+03 - 8.4715052e+02 2.6651139e+03 -1.0441311e+03 - 7.7377558e+02 2.6731450e+03 -1.0740074e+03 - 6.9957101e+02 2.6788880e+03 -1.1054320e+03 - 6.2459658e+02 2.6823018e+03 -1.1384226e+03 - 5.4891893e+02 2.6833399e+03 -1.1730045e+03 - 4.7261349e+02 2.6819467e+03 -1.2092152e+03 - 3.9576722e+02 2.6780537e+03 -1.2471101e+03 - 3.1848268e+02 2.6715728e+03 -1.2867725e+03 - 2.4088427e+02 2.6623870e+03 -1.3283268e+03 - 1.6312822e+02 2.6503357e+03 -1.3719596e+03 - 8.5419334e+01 2.6351920e+03 -1.4179527e+03 - 8.0402979e+00 2.6166266e+03 -1.4667344e+03 - -6.8594211e+01 2.5941474e+03 -1.5189656e+03 - -1.4383163e+02 2.5669978e+03 -1.5756855e+03 - -2.1655980e+02 2.5339748e+03 -1.6385689e+03 - -2.8470481e+02 2.4930991e+03 -1.7103960e+03 - -3.4398774e+02 2.4410145e+03 -1.7959025e+03 - -3.8455235e+02 2.3720512e+03 -1.9031062e+03 - -3.8139340e+02 2.2782034e+03 -2.0433189e+03 - -2.7367005e+02 2.1615844e+03 -2.2133926e+03 - -2.4067136e-09 2.0925352e+03 -2.3130507e+03 - 2.7367005e+02 2.1615844e+03 -2.2133926e+03 - 3.8139340e+02 2.2782034e+03 -2.0433189e+03 - 3.8455235e+02 2.3720512e+03 -1.9031062e+03 - 3.4398774e+02 2.4410145e+03 -1.7959025e+03 - 2.8470481e+02 2.4930991e+03 -1.7103960e+03 - 2.1655980e+02 2.5339748e+03 -1.6385689e+03 - 1.4383163e+02 2.5669978e+03 -1.5756855e+03 - 6.8594211e+01 2.5941474e+03 -1.5189656e+03 - -8.0402979e+00 2.6166266e+03 -1.4667344e+03 - -8.5419334e+01 2.6351920e+03 -1.4179527e+03 - -1.6312822e+02 2.6503357e+03 -1.3719596e+03 - -2.4088427e+02 2.6623870e+03 -1.3283268e+03 - -3.1848268e+02 2.6715728e+03 -1.2867725e+03 - -3.9576722e+02 2.6780537e+03 -1.2471101e+03 - -4.7261349e+02 2.6819467e+03 -1.2092152e+03 - -5.4891893e+02 2.6833399e+03 -1.1730045e+03 - -6.2459658e+02 2.6823018e+03 -1.1384226e+03 - -6.9957101e+02 2.6788880e+03 -1.1054320e+03 - -7.7377558e+02 2.6731450e+03 -1.0740074e+03 - -8.4715052e+02 2.6651139e+03 -1.0441311e+03 - -9.1964151e+02 2.6548318e+03 -1.0157903e+03 - -9.9119869e+02 2.6423336e+03 -9.8897493e+02 - -1.0617758e+03 2.6276526e+03 -9.6367645e+02 - -1.1313295e+03 2.6108215e+03 -9.3988700e+02 - -1.1998190e+03 2.5918724e+03 -9.1759885e+02 - -1.2672054e+03 2.5708375e+03 -8.9680412e+02 - -1.3334517e+03 2.5477491e+03 -8.7749467e+02 - -1.3985220e+03 2.5226394e+03 -8.5966210e+02 - -1.4623816e+03 2.4955410e+03 -8.4329777e+02 - -1.5249968e+03 2.4664866e+03 -8.2839300e+02 - -1.5863345e+03 2.4355091e+03 -8.1493912e+02 - -1.6463621e+03 2.4026412e+03 -8.0292772e+02 - -1.7050476e+03 2.3679161e+03 -7.9235075e+02 - -1.7623589e+03 2.3313668e+03 -7.8320068e+02 - -1.8182646e+03 2.2930261e+03 -7.7547070e+02 - -1.8727328e+03 2.2529270e+03 -7.6915480e+02 - -1.9257322e+03 2.2111023e+03 -7.6424788e+02 - -1.9772310e+03 2.1675846e+03 -7.6074590e+02 - -2.0271975e+03 2.1224064e+03 -7.5864590e+02 - -2.0756000e+03 2.0756000e+03 -7.5794610e+02 - -2.1224064e+03 2.0271975e+03 -7.5864590e+02 - -2.1675846e+03 1.9772310e+03 -7.6074590e+02 - -2.2111023e+03 1.9257322e+03 -7.6424788e+02 - -2.2529270e+03 1.8727328e+03 -7.6915480e+02 - -2.2930261e+03 1.8182646e+03 -7.7547070e+02 - -2.3313668e+03 1.7623589e+03 -7.8320068e+02 - -2.3679161e+03 1.7050476e+03 -7.9235075e+02 - -2.4026412e+03 1.6463621e+03 -8.0292772e+02 - -2.4355091e+03 1.5863345e+03 -8.1493912e+02 - -2.4664866e+03 1.5249968e+03 -8.2839300e+02 - -2.4955410e+03 1.4623816e+03 -8.4329777e+02 - -2.5226394e+03 1.3985220e+03 -8.5966210e+02 - -2.5477491e+03 1.3334517e+03 -8.7749467e+02 - -2.5708375e+03 1.2672054e+03 -8.9680412e+02 - -2.5918724e+03 1.1998190e+03 -9.1759885e+02 - -2.6108215e+03 1.1313295e+03 -9.3988700e+02 - -2.6276526e+03 1.0617758e+03 -9.6367645e+02 - -2.6423336e+03 9.9119869e+02 -9.8897493e+02 - -2.6548318e+03 9.1964151e+02 -1.0157903e+03 - -2.6651139e+03 8.4715052e+02 -1.0441311e+03 - -2.6731450e+03 7.7377558e+02 -1.0740074e+03 - -2.6788880e+03 6.9957101e+02 -1.1054320e+03 - -2.6823018e+03 6.2459658e+02 -1.1384226e+03 - -2.6833399e+03 5.4891893e+02 -1.1730045e+03 - -2.6819467e+03 4.7261349e+02 -1.2092152e+03 - -2.6780537e+03 3.9576722e+02 -1.2471101e+03 - -2.6715728e+03 3.1848268e+02 -1.2867725e+03 - -2.6623870e+03 2.4088427e+02 -1.3283268e+03 - -2.6503357e+03 1.6312822e+02 -1.3719596e+03 - -2.6351920e+03 8.5419334e+01 -1.4179527e+03 - -2.6166266e+03 8.0402979e+00 -1.4667344e+03 - -2.5941474e+03 -6.8594211e+01 -1.5189656e+03 - -2.5669978e+03 -1.4383163e+02 -1.5756855e+03 - -2.5339748e+03 -2.1655980e+02 -1.6385689e+03 - -2.4930991e+03 -2.8470481e+02 -1.7103960e+03 - -2.4410145e+03 -3.4398774e+02 -1.7959025e+03 - -2.3720512e+03 -3.8455235e+02 -1.9031062e+03 - -2.2782034e+03 -3.8139340e+02 -2.0433189e+03 - -2.1615844e+03 -2.7367005e+02 -2.2133926e+03 - -2.0925352e+03 0.0000000e+00 -2.3130507e+03 - -2.1615844e+03 2.7367005e+02 -2.2133926e+03 - -2.2782034e+03 3.8139340e+02 -2.0433189e+03 - -2.3720512e+03 3.8455235e+02 -1.9031062e+03 - -2.4410145e+03 3.4398774e+02 -1.7959025e+03 - -2.4930991e+03 2.8470481e+02 -1.7103960e+03 - -2.5339748e+03 2.1655980e+02 -1.6385689e+03 - -2.5669978e+03 1.4383163e+02 -1.5756855e+03 - -2.5941474e+03 6.8594211e+01 -1.5189656e+03 - -2.6166266e+03 -8.0402979e+00 -1.4667344e+03 - -2.6351920e+03 -8.5419334e+01 -1.4179527e+03 - -2.6503357e+03 -1.6312822e+02 -1.3719596e+03 - -2.6623870e+03 -2.4088427e+02 -1.3283268e+03 - -2.6715728e+03 -3.1848268e+02 -1.2867725e+03 - -2.6780537e+03 -3.9576722e+02 -1.2471101e+03 - -2.6819467e+03 -4.7261349e+02 -1.2092152e+03 - -2.6833399e+03 -5.4891893e+02 -1.1730045e+03 - -2.6823018e+03 -6.2459658e+02 -1.1384226e+03 - -2.6788880e+03 -6.9957101e+02 -1.1054320e+03 - -2.6731450e+03 -7.7377558e+02 -1.0740074e+03 - -2.6651139e+03 -8.4715052e+02 -1.0441311e+03 - -2.6548318e+03 -9.1964151e+02 -1.0157903e+03 - -2.6423336e+03 -9.9119869e+02 -9.8897493e+02 - -2.6276526e+03 -1.0617758e+03 -9.6367645e+02 - -2.6108215e+03 -1.1313295e+03 -9.3988700e+02 - -2.5918724e+03 -1.1998190e+03 -9.1759885e+02 - -2.5708375e+03 -1.2672054e+03 -8.9680412e+02 - -2.5477491e+03 -1.3334517e+03 -8.7749467e+02 - -2.5226394e+03 -1.3985220e+03 -8.5966210e+02 - -2.4955410e+03 -1.4623816e+03 -8.4329777e+02 - -2.4664866e+03 -1.5249968e+03 -8.2839300e+02 - -2.4355091e+03 -1.5863345e+03 -8.1493912e+02 - -2.4026412e+03 -1.6463621e+03 -8.0292772e+02 - -2.3679161e+03 -1.7050476e+03 -7.9235075e+02 - -2.3313668e+03 -1.7623589e+03 -7.8320068e+02 - -2.2930261e+03 -1.8182646e+03 -7.7547070e+02 - -2.2529270e+03 -1.8727328e+03 -7.6915480e+02 - -2.2111023e+03 -1.9257322e+03 -7.6424788e+02 - -2.1675846e+03 -1.9772310e+03 -7.6074590e+02 - -2.1224064e+03 -2.0271975e+03 -7.5864590e+02 - -2.0756000e+03 -2.0756000e+03 -7.5794610e+02 - -2.0271975e+03 -2.1224064e+03 -7.5864590e+02 - -1.9772310e+03 -2.1675846e+03 -7.6074590e+02 - -1.9257322e+03 -2.2111023e+03 -7.6424788e+02 - -1.8727328e+03 -2.2529270e+03 -7.6915480e+02 - -1.8182646e+03 -2.2930261e+03 -7.7547070e+02 - -1.7623589e+03 -2.3313668e+03 -7.8320068e+02 - -1.7050476e+03 -2.3679161e+03 -7.9235075e+02 - -1.6463621e+03 -2.4026412e+03 -8.0292772e+02 - -1.5863345e+03 -2.4355091e+03 -8.1493912e+02 - -1.5249968e+03 -2.4664866e+03 -8.2839300e+02 - -1.4623816e+03 -2.4955410e+03 -8.4329777e+02 - -1.3985220e+03 -2.5226394e+03 -8.5966210e+02 - -1.3334517e+03 -2.5477491e+03 -8.7749467e+02 - -1.2672054e+03 -2.5708375e+03 -8.9680412e+02 - -1.1998190e+03 -2.5918724e+03 -9.1759885e+02 - -1.1313295e+03 -2.6108215e+03 -9.3988700e+02 - -1.0617758e+03 -2.6276526e+03 -9.6367645e+02 - -9.9119869e+02 -2.6423336e+03 -9.8897493e+02 - -9.1964151e+02 -2.6548318e+03 -1.0157903e+03 - -8.4715052e+02 -2.6651139e+03 -1.0441311e+03 - -7.7377558e+02 -2.6731450e+03 -1.0740074e+03 - -6.9957101e+02 -2.6788880e+03 -1.1054320e+03 - -6.2459658e+02 -2.6823018e+03 -1.1384226e+03 - -5.4891893e+02 -2.6833399e+03 -1.1730045e+03 - -4.7261349e+02 -2.6819467e+03 -1.2092152e+03 - -3.9576722e+02 -2.6780537e+03 -1.2471101e+03 - -3.1848268e+02 -2.6715728e+03 -1.2867725e+03 - -2.4088427e+02 -2.6623870e+03 -1.3283268e+03 - -1.6312822e+02 -2.6503357e+03 -1.3719596e+03 - -8.5419334e+01 -2.6351920e+03 -1.4179527e+03 - -8.0402979e+00 -2.6166266e+03 -1.4667344e+03 - 6.8594211e+01 -2.5941474e+03 -1.5189656e+03 - 1.4383163e+02 -2.5669978e+03 -1.5756855e+03 - 2.1655980e+02 -2.5339748e+03 -1.6385689e+03 - 2.8470481e+02 -2.4930991e+03 -1.7103960e+03 - 3.4398774e+02 -2.4410145e+03 -1.7959025e+03 - 3.8455235e+02 -2.3720512e+03 -1.9031062e+03 - 3.8139340e+02 -2.2782034e+03 -2.0433189e+03 - 2.7367005e+02 -2.1615844e+03 -2.2133926e+03 - -2.4067136e-09 -2.0925352e+03 -2.3130507e+03 - -2.7367005e+02 -2.1615844e+03 -2.2133926e+03 - -3.8139340e+02 -2.2782034e+03 -2.0433189e+03 - -3.8455235e+02 -2.3720512e+03 -1.9031062e+03 - -3.4398774e+02 -2.4410145e+03 -1.7959025e+03 - -2.8470481e+02 -2.4930991e+03 -1.7103960e+03 - -2.1655980e+02 -2.5339748e+03 -1.6385689e+03 - -1.4383163e+02 -2.5669978e+03 -1.5756855e+03 - -6.8594211e+01 -2.5941474e+03 -1.5189656e+03 - 8.0402979e+00 -2.6166266e+03 -1.4667344e+03 - 8.5419334e+01 -2.6351920e+03 -1.4179527e+03 - 1.6312822e+02 -2.6503357e+03 -1.3719596e+03 - 2.4088427e+02 -2.6623870e+03 -1.3283268e+03 - 3.1848268e+02 -2.6715728e+03 -1.2867725e+03 - 3.9576722e+02 -2.6780537e+03 -1.2471101e+03 - 4.7261349e+02 -2.6819467e+03 -1.2092152e+03 - 5.4891893e+02 -2.6833399e+03 -1.1730045e+03 - 6.2459658e+02 -2.6823018e+03 -1.1384226e+03 - 6.9957101e+02 -2.6788880e+03 -1.1054320e+03 - 7.7377558e+02 -2.6731450e+03 -1.0740074e+03 - 8.4715052e+02 -2.6651139e+03 -1.0441311e+03 - 9.1964151e+02 -2.6548318e+03 -1.0157903e+03 - 9.9119869e+02 -2.6423336e+03 -9.8897493e+02 - 1.0617758e+03 -2.6276526e+03 -9.6367645e+02 - 1.1313295e+03 -2.6108215e+03 -9.3988700e+02 - 1.1998190e+03 -2.5918724e+03 -9.1759885e+02 - 1.2672054e+03 -2.5708375e+03 -8.9680412e+02 - 1.3334517e+03 -2.5477491e+03 -8.7749467e+02 - 1.3985220e+03 -2.5226394e+03 -8.5966210e+02 - 1.4623816e+03 -2.4955410e+03 -8.4329777e+02 - 1.5249968e+03 -2.4664866e+03 -8.2839300e+02 - 1.5863345e+03 -2.4355091e+03 -8.1493912e+02 - 1.6463621e+03 -2.4026412e+03 -8.0292772e+02 - 1.7050476e+03 -2.3679161e+03 -7.9235075e+02 - 1.7623589e+03 -2.3313668e+03 -7.8320068e+02 - 1.8182646e+03 -2.2930261e+03 -7.7547070e+02 - 1.8727328e+03 -2.2529270e+03 -7.6915480e+02 - 1.9257322e+03 -2.2111023e+03 -7.6424788e+02 - 1.9772310e+03 -2.1675846e+03 -7.6074590e+02 - 2.0271975e+03 -2.1224064e+03 -7.5864590e+02 - 2.0756000e+03 -2.0756000e+03 -7.5794610e+02 - 2.1224064e+03 -2.0271975e+03 -7.5864590e+02 - 2.1675846e+03 -1.9772310e+03 -7.6074590e+02 - 2.2111023e+03 -1.9257322e+03 -7.6424788e+02 - 2.2529270e+03 -1.8727328e+03 -7.6915480e+02 - 2.2930261e+03 -1.8182646e+03 -7.7547070e+02 - 2.3313668e+03 -1.7623589e+03 -7.8320068e+02 - 2.3679161e+03 -1.7050476e+03 -7.9235075e+02 - 2.4026412e+03 -1.6463621e+03 -8.0292772e+02 - 2.4355091e+03 -1.5863345e+03 -8.1493912e+02 - 2.4664866e+03 -1.5249968e+03 -8.2839300e+02 - 2.4955410e+03 -1.4623816e+03 -8.4329777e+02 - 2.5226394e+03 -1.3985220e+03 -8.5966210e+02 - 2.5477491e+03 -1.3334517e+03 -8.7749467e+02 - 2.5708375e+03 -1.2672054e+03 -8.9680412e+02 - 2.5918724e+03 -1.1998190e+03 -9.1759885e+02 - 2.6108215e+03 -1.1313295e+03 -9.3988700e+02 - 2.6276526e+03 -1.0617758e+03 -9.6367645e+02 - 2.6423336e+03 -9.9119869e+02 -9.8897493e+02 - 2.6548318e+03 -9.1964151e+02 -1.0157903e+03 - 2.6651139e+03 -8.4715052e+02 -1.0441311e+03 - 2.6731450e+03 -7.7377558e+02 -1.0740074e+03 - 2.6788880e+03 -6.9957101e+02 -1.1054320e+03 - 2.6823018e+03 -6.2459658e+02 -1.1384226e+03 - 2.6833399e+03 -5.4891893e+02 -1.1730045e+03 - 2.6819467e+03 -4.7261349e+02 -1.2092152e+03 - 2.6780537e+03 -3.9576722e+02 -1.2471101e+03 - 2.6715728e+03 -3.1848268e+02 -1.2867725e+03 - 2.6623870e+03 -2.4088427e+02 -1.3283268e+03 - 2.6503357e+03 -1.6312822e+02 -1.3719596e+03 - 2.6351920e+03 -8.5419334e+01 -1.4179527e+03 - 2.6166266e+03 -8.0402979e+00 -1.4667344e+03 - 2.5941474e+03 6.8594211e+01 -1.5189656e+03 - 2.5669978e+03 1.4383163e+02 -1.5756855e+03 - 2.5339748e+03 2.1655980e+02 -1.6385689e+03 - 2.4930991e+03 2.8470481e+02 -1.7103960e+03 - 2.4410145e+03 3.4398774e+02 -1.7959025e+03 - 2.3720512e+03 3.8455235e+02 -1.9031062e+03 - 2.2782034e+03 3.8139340e+02 -2.0433189e+03 - 2.1615844e+03 2.7367005e+02 -2.2133926e+03 - 2.0925352e+03 4.8134273e-09 -2.3130507e+03 - 2.0544815e+03 0.0000000e+00 -2.3688121e+03 - 2.3447725e+03 -6.2064172e+02 -1.9568300e+03 - 2.4488118e+03 -5.8881469e+02 -1.8060745e+03 - 2.4985636e+03 -5.2047783e+02 -1.7299372e+03 - 2.5318480e+03 -4.4563958e+02 -1.6749115e+03 - 2.5574964e+03 -3.6864206e+02 -1.6285026e+03 - 2.5785358e+03 -2.9067536e+02 -1.5864319e+03 - 2.5962484e+03 -2.1221987e+02 -1.5468958e+03 - 2.6112492e+03 -1.3353372e+02 -1.5090392e+03 - 2.6238567e+03 -5.4788109e+01 -1.4724319e+03 - 2.6342422e+03 2.3886131e+01 -1.4368549e+03 - 2.6424996e+03 1.0238001e+02 -1.4022032e+03 - 2.6486795e+03 1.8059805e+02 -1.3684352e+03 - 2.6528081e+03 2.5845413e+02 -1.3355464e+03 - 2.6548978e+03 3.3586929e+02 -1.3035538e+03 - 2.6549536e+03 4.1277040e+02 -1.2724862e+03 - 2.6529767e+03 4.8908929e+02 -1.2423787e+03 - 2.6489671e+03 5.6476214e+02 -1.2132690e+03 - 2.6429254e+03 6.3972902e+02 -1.1851947e+03 - 2.6348529e+03 7.1393348e+02 -1.1581924e+03 - 2.6247529e+03 7.8732222e+02 -1.1322961e+03 - 2.6126310e+03 8.5984479e+02 -1.1075370e+03 - 2.5984946e+03 9.3145330e+02 -1.0839430e+03 - 2.5823535e+03 1.0021022e+03 -1.0615391e+03 - 2.5642199e+03 1.0717479e+03 -1.0403468e+03 - 2.5441078e+03 1.1403489e+03 -1.0203845e+03 - 2.5220333e+03 1.2078650e+03 -1.0016678e+03 - 2.4980143e+03 1.2742577e+03 -9.8420976e+02 - 2.4720705e+03 1.3394899e+03 -9.6802093e+02 - 2.4442228e+03 1.4035252e+03 -9.5310979e+02 - 2.4144937e+03 1.4663285e+03 -9.3948300e+02 - 2.3829068e+03 1.5278655e+03 -9.2714565e+02 - 2.3494868e+03 1.5881027e+03 -9.1610152e+02 - 2.3142592e+03 1.6470070e+03 -9.0635335e+02 - 2.2772506e+03 1.7045461e+03 -8.9790299e+02 - 2.2384878e+03 1.7606880e+03 -8.9075167e+02 - 2.1979987e+03 1.8154012e+03 -8.8490011e+02 - 2.1558114e+03 1.8686545e+03 -8.8034872e+02 - 2.1119545e+03 1.9204172e+03 -8.7709767e+02 - 2.0664571e+03 1.9706587e+03 -8.7514704e+02 - 2.0193486e+03 2.0193486e+03 -8.7449683e+02 - 1.9706587e+03 2.0664571e+03 -8.7514704e+02 - 1.9204172e+03 2.1119545e+03 -8.7709767e+02 - 1.8686545e+03 2.1558114e+03 -8.8034872e+02 - 1.8154012e+03 2.1979987e+03 -8.8490011e+02 - 1.7606880e+03 2.2384878e+03 -8.9075167e+02 - 1.7045461e+03 2.2772506e+03 -8.9790299e+02 - 1.6470070e+03 2.3142592e+03 -9.0635335e+02 - 1.5881027e+03 2.3494868e+03 -9.1610152e+02 - 1.5278655e+03 2.3829068e+03 -9.2714565e+02 - 1.4663285e+03 2.4144937e+03 -9.3948300e+02 - 1.4035252e+03 2.4442228e+03 -9.5310979e+02 - 1.3394899e+03 2.4720705e+03 -9.6802093e+02 - 1.2742577e+03 2.4980143e+03 -9.8420976e+02 - 1.2078650e+03 2.5220333e+03 -1.0016678e+03 - 1.1403489e+03 2.5441078e+03 -1.0203845e+03 - 1.0717479e+03 2.5642199e+03 -1.0403468e+03 - 1.0021022e+03 2.5823535e+03 -1.0615391e+03 - 9.3145330e+02 2.5984946e+03 -1.0839430e+03 - 8.5984479e+02 2.6126310e+03 -1.1075370e+03 - 7.8732222e+02 2.6247529e+03 -1.1322961e+03 - 7.1393348e+02 2.6348529e+03 -1.1581924e+03 - 6.3972902e+02 2.6429254e+03 -1.1851947e+03 - 5.6476214e+02 2.6489671e+03 -1.2132690e+03 - 4.8908929e+02 2.6529767e+03 -1.2423787e+03 - 4.1277040e+02 2.6549536e+03 -1.2724862e+03 - 3.3586929e+02 2.6548978e+03 -1.3035538e+03 - 2.5845413e+02 2.6528081e+03 -1.3355464e+03 - 1.8059805e+02 2.6486795e+03 -1.3684352e+03 - 1.0238001e+02 2.6424996e+03 -1.4022032e+03 - 2.3886131e+01 2.6342422e+03 -1.4368549e+03 - -5.4788109e+01 2.6238567e+03 -1.4724319e+03 - -1.3353372e+02 2.6112492e+03 -1.5090392e+03 - -2.1221987e+02 2.5962484e+03 -1.5468958e+03 - -2.9067536e+02 2.5785358e+03 -1.5864319e+03 - -3.6864206e+02 2.5574964e+03 -1.6285026e+03 - -4.4563958e+02 2.5318480e+03 -1.6749115e+03 - -5.2047783e+02 2.4985636e+03 -1.7299372e+03 - -5.8881469e+02 2.4488118e+03 -1.8060745e+03 - -6.2064172e+02 2.3447725e+03 -1.9568300e+03 - -2.4067136e-09 2.0544815e+03 -2.3688121e+03 - 6.2064172e+02 2.3447725e+03 -1.9568300e+03 - 5.8881469e+02 2.4488118e+03 -1.8060745e+03 - 5.2047783e+02 2.4985636e+03 -1.7299372e+03 - 4.4563958e+02 2.5318480e+03 -1.6749115e+03 - 3.6864206e+02 2.5574964e+03 -1.6285026e+03 - 2.9067536e+02 2.5785358e+03 -1.5864319e+03 - 2.1221987e+02 2.5962484e+03 -1.5468958e+03 - 1.3353372e+02 2.6112492e+03 -1.5090392e+03 - 5.4788109e+01 2.6238567e+03 -1.4724319e+03 - -2.3886131e+01 2.6342422e+03 -1.4368549e+03 - -1.0238001e+02 2.6424996e+03 -1.4022032e+03 - -1.8059805e+02 2.6486795e+03 -1.3684352e+03 - -2.5845413e+02 2.6528081e+03 -1.3355464e+03 - -3.3586929e+02 2.6548978e+03 -1.3035538e+03 - -4.1277040e+02 2.6549536e+03 -1.2724862e+03 - -4.8908929e+02 2.6529767e+03 -1.2423787e+03 - -5.6476214e+02 2.6489671e+03 -1.2132690e+03 - -6.3972902e+02 2.6429254e+03 -1.1851947e+03 - -7.1393348e+02 2.6348529e+03 -1.1581924e+03 - -7.8732222e+02 2.6247529e+03 -1.1322961e+03 - -8.5984479e+02 2.6126310e+03 -1.1075370e+03 - -9.3145330e+02 2.5984946e+03 -1.0839430e+03 - -1.0021022e+03 2.5823535e+03 -1.0615391e+03 - -1.0717479e+03 2.5642199e+03 -1.0403468e+03 - -1.1403489e+03 2.5441078e+03 -1.0203845e+03 - -1.2078650e+03 2.5220333e+03 -1.0016678e+03 - -1.2742577e+03 2.4980143e+03 -9.8420976e+02 - -1.3394899e+03 2.4720705e+03 -9.6802093e+02 - -1.4035252e+03 2.4442228e+03 -9.5310979e+02 - -1.4663285e+03 2.4144937e+03 -9.3948300e+02 - -1.5278655e+03 2.3829068e+03 -9.2714565e+02 - -1.5881027e+03 2.3494868e+03 -9.1610152e+02 - -1.6470070e+03 2.3142592e+03 -9.0635335e+02 - -1.7045461e+03 2.2772506e+03 -8.9790299e+02 - -1.7606880e+03 2.2384878e+03 -8.9075167e+02 - -1.8154012e+03 2.1979987e+03 -8.8490011e+02 - -1.8686545e+03 2.1558114e+03 -8.8034872e+02 - -1.9204172e+03 2.1119545e+03 -8.7709767e+02 - -1.9706587e+03 2.0664571e+03 -8.7514704e+02 - -2.0193486e+03 2.0193486e+03 -8.7449683e+02 - -2.0664571e+03 1.9706587e+03 -8.7514704e+02 - -2.1119545e+03 1.9204172e+03 -8.7709767e+02 - -2.1558114e+03 1.8686545e+03 -8.8034872e+02 - -2.1979987e+03 1.8154012e+03 -8.8490011e+02 - -2.2384878e+03 1.7606880e+03 -8.9075167e+02 - -2.2772506e+03 1.7045461e+03 -8.9790299e+02 - -2.3142592e+03 1.6470070e+03 -9.0635335e+02 - -2.3494868e+03 1.5881027e+03 -9.1610152e+02 - -2.3829068e+03 1.5278655e+03 -9.2714565e+02 - -2.4144937e+03 1.4663285e+03 -9.3948300e+02 - -2.4442228e+03 1.4035252e+03 -9.5310979e+02 - -2.4720705e+03 1.3394899e+03 -9.6802093e+02 - -2.4980143e+03 1.2742577e+03 -9.8420976e+02 - -2.5220333e+03 1.2078650e+03 -1.0016678e+03 - -2.5441078e+03 1.1403489e+03 -1.0203845e+03 - -2.5642199e+03 1.0717479e+03 -1.0403468e+03 - -2.5823535e+03 1.0021022e+03 -1.0615391e+03 - -2.5984946e+03 9.3145330e+02 -1.0839430e+03 - -2.6126310e+03 8.5984479e+02 -1.1075370e+03 - -2.6247529e+03 7.8732222e+02 -1.1322961e+03 - -2.6348529e+03 7.1393348e+02 -1.1581924e+03 - -2.6429254e+03 6.3972902e+02 -1.1851947e+03 - -2.6489671e+03 5.6476214e+02 -1.2132690e+03 - -2.6529767e+03 4.8908929e+02 -1.2423787e+03 - -2.6549536e+03 4.1277040e+02 -1.2724862e+03 - -2.6548978e+03 3.3586929e+02 -1.3035538e+03 - -2.6528081e+03 2.5845413e+02 -1.3355464e+03 - -2.6486795e+03 1.8059805e+02 -1.3684352e+03 - -2.6424996e+03 1.0238001e+02 -1.4022032e+03 - -2.6342422e+03 2.3886131e+01 -1.4368549e+03 - -2.6238567e+03 -5.4788109e+01 -1.4724319e+03 - -2.6112492e+03 -1.3353372e+02 -1.5090392e+03 - -2.5962484e+03 -2.1221987e+02 -1.5468958e+03 - -2.5785358e+03 -2.9067536e+02 -1.5864319e+03 - -2.5574964e+03 -3.6864206e+02 -1.6285026e+03 - -2.5318480e+03 -4.4563958e+02 -1.6749115e+03 - -2.4985636e+03 -5.2047783e+02 -1.7299372e+03 - -2.4488118e+03 -5.8881469e+02 -1.8060745e+03 - -2.3447725e+03 -6.2064172e+02 -1.9568300e+03 - -2.0544815e+03 -2.4067136e-09 -2.3688121e+03 - -2.3447725e+03 6.2064172e+02 -1.9568300e+03 - -2.4488118e+03 5.8881469e+02 -1.8060745e+03 - -2.4985636e+03 5.2047783e+02 -1.7299372e+03 - -2.5318480e+03 4.4563958e+02 -1.6749115e+03 - -2.5574964e+03 3.6864206e+02 -1.6285026e+03 - -2.5785358e+03 2.9067536e+02 -1.5864319e+03 - -2.5962484e+03 2.1221987e+02 -1.5468958e+03 - -2.6112492e+03 1.3353372e+02 -1.5090392e+03 - -2.6238567e+03 5.4788109e+01 -1.4724319e+03 - -2.6342422e+03 -2.3886131e+01 -1.4368549e+03 - -2.6424996e+03 -1.0238001e+02 -1.4022032e+03 - -2.6486795e+03 -1.8059805e+02 -1.3684352e+03 - -2.6528081e+03 -2.5845413e+02 -1.3355464e+03 - -2.6548978e+03 -3.3586929e+02 -1.3035538e+03 - -2.6549536e+03 -4.1277040e+02 -1.2724862e+03 - -2.6529767e+03 -4.8908929e+02 -1.2423787e+03 - -2.6489671e+03 -5.6476214e+02 -1.2132690e+03 - -2.6429254e+03 -6.3972902e+02 -1.1851947e+03 - -2.6348529e+03 -7.1393348e+02 -1.1581924e+03 - -2.6247529e+03 -7.8732222e+02 -1.1322961e+03 - -2.6126310e+03 -8.5984479e+02 -1.1075370e+03 - -2.5984946e+03 -9.3145330e+02 -1.0839430e+03 - -2.5823535e+03 -1.0021022e+03 -1.0615391e+03 - -2.5642199e+03 -1.0717479e+03 -1.0403468e+03 - -2.5441078e+03 -1.1403489e+03 -1.0203845e+03 - -2.5220333e+03 -1.2078650e+03 -1.0016678e+03 - -2.4980143e+03 -1.2742577e+03 -9.8420976e+02 - -2.4720705e+03 -1.3394899e+03 -9.6802093e+02 - -2.4442228e+03 -1.4035252e+03 -9.5310979e+02 - -2.4144937e+03 -1.4663285e+03 -9.3948300e+02 - -2.3829068e+03 -1.5278655e+03 -9.2714565e+02 - -2.3494868e+03 -1.5881027e+03 -9.1610152e+02 - -2.3142592e+03 -1.6470070e+03 -9.0635335e+02 - -2.2772506e+03 -1.7045461e+03 -8.9790299e+02 - -2.2384878e+03 -1.7606880e+03 -8.9075167e+02 - -2.1979987e+03 -1.8154012e+03 -8.8490011e+02 - -2.1558114e+03 -1.8686545e+03 -8.8034872e+02 - -2.1119545e+03 -1.9204172e+03 -8.7709767e+02 - -2.0664571e+03 -1.9706587e+03 -8.7514704e+02 - -2.0193486e+03 -2.0193486e+03 -8.7449683e+02 - -1.9706587e+03 -2.0664571e+03 -8.7514704e+02 - -1.9204172e+03 -2.1119545e+03 -8.7709767e+02 - -1.8686545e+03 -2.1558114e+03 -8.8034872e+02 - -1.8154012e+03 -2.1979987e+03 -8.8490011e+02 - -1.7606880e+03 -2.2384878e+03 -8.9075167e+02 - -1.7045461e+03 -2.2772506e+03 -8.9790299e+02 - -1.6470070e+03 -2.3142592e+03 -9.0635335e+02 - -1.5881027e+03 -2.3494868e+03 -9.1610152e+02 - -1.5278655e+03 -2.3829068e+03 -9.2714565e+02 - -1.4663285e+03 -2.4144937e+03 -9.3948300e+02 - -1.4035252e+03 -2.4442228e+03 -9.5310979e+02 - -1.3394899e+03 -2.4720705e+03 -9.6802093e+02 - -1.2742577e+03 -2.4980143e+03 -9.8420976e+02 - -1.2078650e+03 -2.5220333e+03 -1.0016678e+03 - -1.1403489e+03 -2.5441078e+03 -1.0203845e+03 - -1.0717479e+03 -2.5642199e+03 -1.0403468e+03 - -1.0021022e+03 -2.5823535e+03 -1.0615391e+03 - -9.3145330e+02 -2.5984946e+03 -1.0839430e+03 - -8.5984479e+02 -2.6126310e+03 -1.1075370e+03 - -7.8732222e+02 -2.6247529e+03 -1.1322961e+03 - -7.1393348e+02 -2.6348529e+03 -1.1581924e+03 - -6.3972902e+02 -2.6429254e+03 -1.1851947e+03 - -5.6476214e+02 -2.6489671e+03 -1.2132690e+03 - -4.8908929e+02 -2.6529767e+03 -1.2423787e+03 - -4.1277040e+02 -2.6549536e+03 -1.2724862e+03 - -3.3586929e+02 -2.6548978e+03 -1.3035538e+03 - -2.5845413e+02 -2.6528081e+03 -1.3355464e+03 - -1.8059805e+02 -2.6486795e+03 -1.3684352e+03 - -1.0238001e+02 -2.6424996e+03 -1.4022032e+03 - -2.3886131e+01 -2.6342422e+03 -1.4368549e+03 - 5.4788109e+01 -2.6238567e+03 -1.4724319e+03 - 1.3353372e+02 -2.6112492e+03 -1.5090392e+03 - 2.1221987e+02 -2.5962484e+03 -1.5468958e+03 - 2.9067536e+02 -2.5785358e+03 -1.5864319e+03 - 3.6864206e+02 -2.5574964e+03 -1.6285026e+03 - 4.4563958e+02 -2.5318480e+03 -1.6749115e+03 - 5.2047783e+02 -2.4985636e+03 -1.7299372e+03 - 5.8881469e+02 -2.4488118e+03 -1.8060745e+03 - 6.2064172e+02 -2.3447725e+03 -1.9568300e+03 - 2.4067136e-09 -2.0544815e+03 -2.3688121e+03 - -6.2064172e+02 -2.3447725e+03 -1.9568300e+03 - -5.8881469e+02 -2.4488118e+03 -1.8060745e+03 - -5.2047783e+02 -2.4985636e+03 -1.7299372e+03 - -4.4563958e+02 -2.5318480e+03 -1.6749115e+03 - -3.6864206e+02 -2.5574964e+03 -1.6285026e+03 - -2.9067536e+02 -2.5785358e+03 -1.5864319e+03 - -2.1221987e+02 -2.5962484e+03 -1.5468958e+03 - -1.3353372e+02 -2.6112492e+03 -1.5090392e+03 - -5.4788109e+01 -2.6238567e+03 -1.4724319e+03 - 2.3886131e+01 -2.6342422e+03 -1.4368549e+03 - 1.0238001e+02 -2.6424996e+03 -1.4022032e+03 - 1.8059805e+02 -2.6486795e+03 -1.3684352e+03 - 2.5845413e+02 -2.6528081e+03 -1.3355464e+03 - 3.3586929e+02 -2.6548978e+03 -1.3035538e+03 - 4.1277040e+02 -2.6549536e+03 -1.2724862e+03 - 4.8908929e+02 -2.6529767e+03 -1.2423787e+03 - 5.6476214e+02 -2.6489671e+03 -1.2132690e+03 - 6.3972902e+02 -2.6429254e+03 -1.1851947e+03 - 7.1393348e+02 -2.6348529e+03 -1.1581924e+03 - 7.8732222e+02 -2.6247529e+03 -1.1322961e+03 - 8.5984479e+02 -2.6126310e+03 -1.1075370e+03 - 9.3145330e+02 -2.5984946e+03 -1.0839430e+03 - 1.0021022e+03 -2.5823535e+03 -1.0615391e+03 - 1.0717479e+03 -2.5642199e+03 -1.0403468e+03 - 1.1403489e+03 -2.5441078e+03 -1.0203845e+03 - 1.2078650e+03 -2.5220333e+03 -1.0016678e+03 - 1.2742577e+03 -2.4980143e+03 -9.8420976e+02 - 1.3394899e+03 -2.4720705e+03 -9.6802093e+02 - 1.4035252e+03 -2.4442228e+03 -9.5310979e+02 - 1.4663285e+03 -2.4144937e+03 -9.3948300e+02 - 1.5278655e+03 -2.3829068e+03 -9.2714565e+02 - 1.5881027e+03 -2.3494868e+03 -9.1610152e+02 - 1.6470070e+03 -2.3142592e+03 -9.0635335e+02 - 1.7045461e+03 -2.2772506e+03 -8.9790299e+02 - 1.7606880e+03 -2.2384878e+03 -8.9075167e+02 - 1.8154012e+03 -2.1979987e+03 -8.8490011e+02 - 1.8686545e+03 -2.1558114e+03 -8.8034872e+02 - 1.9204172e+03 -2.1119545e+03 -8.7709767e+02 - 1.9706587e+03 -2.0664571e+03 -8.7514704e+02 - 2.0193486e+03 -2.0193486e+03 -8.7449683e+02 - 2.0664571e+03 -1.9706587e+03 -8.7514704e+02 - 2.1119545e+03 -1.9204172e+03 -8.7709767e+02 - 2.1558114e+03 -1.8686545e+03 -8.8034872e+02 - 2.1979987e+03 -1.8154012e+03 -8.8490011e+02 - 2.2384878e+03 -1.7606880e+03 -8.9075167e+02 - 2.2772506e+03 -1.7045461e+03 -8.9790299e+02 - 2.3142592e+03 -1.6470070e+03 -9.0635335e+02 - 2.3494868e+03 -1.5881027e+03 -9.1610152e+02 - 2.3829068e+03 -1.5278655e+03 -9.2714565e+02 - 2.4144937e+03 -1.4663285e+03 -9.3948300e+02 - 2.4442228e+03 -1.4035252e+03 -9.5310979e+02 - 2.4720705e+03 -1.3394899e+03 -9.6802093e+02 - 2.4980143e+03 -1.2742577e+03 -9.8420976e+02 - 2.5220333e+03 -1.2078650e+03 -1.0016678e+03 - 2.5441078e+03 -1.1403489e+03 -1.0203845e+03 - 2.5642199e+03 -1.0717479e+03 -1.0403468e+03 - 2.5823535e+03 -1.0021022e+03 -1.0615391e+03 - 2.5984946e+03 -9.3145330e+02 -1.0839430e+03 - 2.6126310e+03 -8.5984479e+02 -1.1075370e+03 - 2.6247529e+03 -7.8732222e+02 -1.1322961e+03 - 2.6348529e+03 -7.1393348e+02 -1.1581924e+03 - 2.6429254e+03 -6.3972902e+02 -1.1851947e+03 - 2.6489671e+03 -5.6476214e+02 -1.2132690e+03 - 2.6529767e+03 -4.8908929e+02 -1.2423787e+03 - 2.6549536e+03 -4.1277040e+02 -1.2724862e+03 - 2.6548978e+03 -3.3586929e+02 -1.3035538e+03 - 2.6528081e+03 -2.5845413e+02 -1.3355464e+03 - 2.6486795e+03 -1.8059805e+02 -1.3684352e+03 - 2.6424996e+03 -1.0238001e+02 -1.4022032e+03 - 2.6342422e+03 -2.3886131e+01 -1.4368549e+03 - 2.6238567e+03 5.4788109e+01 -1.4724319e+03 - 2.6112492e+03 1.3353372e+02 -1.5090392e+03 - 2.5962484e+03 2.1221987e+02 -1.5468958e+03 - 2.5785358e+03 2.9067536e+02 -1.5864319e+03 - 2.5574964e+03 3.6864206e+02 -1.6285026e+03 - 2.5318480e+03 4.4563958e+02 -1.6749115e+03 - 2.4985636e+03 5.2047783e+02 -1.7299372e+03 - 2.4488118e+03 5.8881469e+02 -1.8060745e+03 - 2.3447725e+03 6.2064172e+02 -1.9568300e+03 - 2.0544815e+03 -2.4067136e-09 -2.3688121e+03 - 2.8862588e+03 2.4067136e-09 -1.1917696e+03 - 2.7318986e+03 -5.5302592e+02 -1.4096371e+03 - 2.6422039e+03 -5.8987999e+02 -1.5341427e+03 - 2.6117093e+03 -5.4226815e+02 -1.5727811e+03 - 2.6019643e+03 -4.7659280e+02 -1.5799361e+03 - 2.6007171e+03 -4.0490228e+02 -1.5729318e+03 - 2.6032371e+03 -3.3058577e+02 -1.5584553e+03 - 2.6073331e+03 -2.5492483e+02 -1.5396072e+03 - 2.6118426e+03 -1.7852329e+02 -1.5180368e+03 - 2.6160828e+03 -1.0172120e+02 -1.4947206e+03 - 2.6196189e+03 -2.4740199e+01 -1.4702881e+03 - 2.6221562e+03 5.2257711e+01 -1.4451750e+03 - 2.6234847e+03 1.2914374e+02 -1.4197002e+03 - 2.6234488e+03 2.0580936e+02 -1.3941088e+03 - 2.6219300e+03 2.8215943e+02 -1.3685959e+03 - 2.6188362e+03 3.5810843e+02 -1.3433218e+03 - 2.6140948e+03 4.3357811e+02 -1.3184206e+03 - 2.6076481e+03 5.0849610e+02 -1.2940066e+03 - 2.5994508e+03 5.8279489e+02 -1.2701786e+03 - 2.5894672e+03 6.5641118e+02 -1.2470221e+03 - 2.5776699e+03 7.2928534e+02 -1.2246118e+03 - 2.5640385e+03 8.0136102e+02 -1.2030132e+03 - 2.5485586e+03 8.7258478e+02 -1.1822836e+03 - 2.5312213e+03 9.4290584e+02 -1.1624733e+03 - 2.5120221e+03 1.0122758e+03 -1.1436261e+03 - 2.4909606e+03 1.0806483e+03 -1.1257804e+03 - 2.4680403e+03 1.1479792e+03 -1.1089695e+03 - 2.4432676e+03 1.2142259e+03 -1.0932223e+03 - 2.4166521e+03 1.2793474e+03 -1.0785638e+03 - 2.3882058e+03 1.3433042e+03 -1.0650153e+03 - 2.3579430e+03 1.4060582e+03 -1.0525953e+03 - 2.3258800e+03 1.4675724e+03 -1.0413193e+03 - 2.2920351e+03 1.5278109e+03 -1.0312003e+03 - 2.2564281e+03 1.5867386e+03 -1.0222494e+03 - 2.2190801e+03 1.6443216e+03 -1.0144756e+03 - 2.1800139e+03 1.7005268e+03 -1.0078863e+03 - 2.1392532e+03 1.7553216e+03 -1.0024876e+03 - 2.0968227e+03 1.8086744e+03 -9.9828404e+02 - 2.0527481e+03 1.8605541e+03 -9.9527909e+02 - 2.0070562e+03 1.9109307e+03 -9.9347518e+02 - 1.9597743e+03 1.9597743e+03 -9.9287372e+02 - 1.9109307e+03 2.0070562e+03 -9.9347518e+02 - 1.8605541e+03 2.0527481e+03 -9.9527909e+02 - 1.8086744e+03 2.0968227e+03 -9.9828404e+02 - 1.7553216e+03 2.1392532e+03 -1.0024876e+03 - 1.7005268e+03 2.1800139e+03 -1.0078863e+03 - 1.6443216e+03 2.2190801e+03 -1.0144756e+03 - 1.5867386e+03 2.2564281e+03 -1.0222494e+03 - 1.5278109e+03 2.2920351e+03 -1.0312003e+03 - 1.4675724e+03 2.3258800e+03 -1.0413193e+03 - 1.4060582e+03 2.3579430e+03 -1.0525953e+03 - 1.3433042e+03 2.3882058e+03 -1.0650153e+03 - 1.2793474e+03 2.4166521e+03 -1.0785638e+03 - 1.2142259e+03 2.4432676e+03 -1.0932223e+03 - 1.1479792e+03 2.4680403e+03 -1.1089695e+03 - 1.0806483e+03 2.4909606e+03 -1.1257804e+03 - 1.0122758e+03 2.5120221e+03 -1.1436261e+03 - 9.4290584e+02 2.5312213e+03 -1.1624733e+03 - 8.7258478e+02 2.5485586e+03 -1.1822836e+03 - 8.0136102e+02 2.5640385e+03 -1.2030132e+03 - 7.2928534e+02 2.5776699e+03 -1.2246118e+03 - 6.5641118e+02 2.5894672e+03 -1.2470221e+03 - 5.8279489e+02 2.5994508e+03 -1.2701786e+03 - 5.0849610e+02 2.6076481e+03 -1.2940066e+03 - 4.3357811e+02 2.6140948e+03 -1.3184206e+03 - 3.5810843e+02 2.6188362e+03 -1.3433218e+03 - 2.8215943e+02 2.6219300e+03 -1.3685959e+03 - 2.0580936e+02 2.6234488e+03 -1.3941088e+03 - 1.2914374e+02 2.6234847e+03 -1.4197002e+03 - 5.2257711e+01 2.6221562e+03 -1.4451750e+03 - -2.4740199e+01 2.6196189e+03 -1.4702881e+03 - -1.0172120e+02 2.6160828e+03 -1.4947206e+03 - -1.7852329e+02 2.6118426e+03 -1.5180368e+03 - -2.5492483e+02 2.6073331e+03 -1.5396072e+03 - -3.3058577e+02 2.6032371e+03 -1.5584553e+03 - -4.0490228e+02 2.6007171e+03 -1.5729318e+03 - -4.7659280e+02 2.6019643e+03 -1.5799361e+03 - -5.4226815e+02 2.6117093e+03 -1.5727811e+03 - -5.8987999e+02 2.6422039e+03 -1.5341427e+03 - -5.5302592e+02 2.7318986e+03 -1.4096371e+03 - -2.4067136e-09 2.8862588e+03 -1.1917696e+03 - 5.5302592e+02 2.7318986e+03 -1.4096371e+03 - 5.8987999e+02 2.6422039e+03 -1.5341427e+03 - 5.4226815e+02 2.6117093e+03 -1.5727811e+03 - 4.7659280e+02 2.6019643e+03 -1.5799361e+03 - 4.0490228e+02 2.6007171e+03 -1.5729318e+03 - 3.3058577e+02 2.6032371e+03 -1.5584553e+03 - 2.5492483e+02 2.6073331e+03 -1.5396072e+03 - 1.7852329e+02 2.6118426e+03 -1.5180368e+03 - 1.0172120e+02 2.6160828e+03 -1.4947206e+03 - 2.4740199e+01 2.6196189e+03 -1.4702881e+03 - -5.2257711e+01 2.6221562e+03 -1.4451750e+03 - -1.2914374e+02 2.6234847e+03 -1.4197002e+03 - -2.0580936e+02 2.6234488e+03 -1.3941088e+03 - -2.8215943e+02 2.6219300e+03 -1.3685959e+03 - -3.5810843e+02 2.6188362e+03 -1.3433218e+03 - -4.3357811e+02 2.6140948e+03 -1.3184206e+03 - -5.0849610e+02 2.6076481e+03 -1.2940066e+03 - -5.8279489e+02 2.5994508e+03 -1.2701786e+03 - -6.5641118e+02 2.5894672e+03 -1.2470221e+03 - -7.2928534e+02 2.5776699e+03 -1.2246118e+03 - -8.0136102e+02 2.5640385e+03 -1.2030132e+03 - -8.7258478e+02 2.5485586e+03 -1.1822836e+03 - -9.4290584e+02 2.5312213e+03 -1.1624733e+03 - -1.0122758e+03 2.5120221e+03 -1.1436261e+03 - -1.0806483e+03 2.4909606e+03 -1.1257804e+03 - -1.1479792e+03 2.4680403e+03 -1.1089695e+03 - -1.2142259e+03 2.4432676e+03 -1.0932223e+03 - -1.2793474e+03 2.4166521e+03 -1.0785638e+03 - -1.3433042e+03 2.3882058e+03 -1.0650153e+03 - -1.4060582e+03 2.3579430e+03 -1.0525953e+03 - -1.4675724e+03 2.3258800e+03 -1.0413193e+03 - -1.5278109e+03 2.2920351e+03 -1.0312003e+03 - -1.5867386e+03 2.2564281e+03 -1.0222494e+03 - -1.6443216e+03 2.2190801e+03 -1.0144756e+03 - -1.7005268e+03 2.1800139e+03 -1.0078863e+03 - -1.7553216e+03 2.1392532e+03 -1.0024876e+03 - -1.8086744e+03 2.0968227e+03 -9.9828404e+02 - -1.8605541e+03 2.0527481e+03 -9.9527909e+02 - -1.9109307e+03 2.0070562e+03 -9.9347518e+02 - -1.9597743e+03 1.9597743e+03 -9.9287372e+02 - -2.0070562e+03 1.9109307e+03 -9.9347518e+02 - -2.0527481e+03 1.8605541e+03 -9.9527909e+02 - -2.0968227e+03 1.8086744e+03 -9.9828404e+02 - -2.1392532e+03 1.7553216e+03 -1.0024876e+03 - -2.1800139e+03 1.7005268e+03 -1.0078863e+03 - -2.2190801e+03 1.6443216e+03 -1.0144756e+03 - -2.2564281e+03 1.5867386e+03 -1.0222494e+03 - -2.2920351e+03 1.5278109e+03 -1.0312003e+03 - -2.3258800e+03 1.4675724e+03 -1.0413193e+03 - -2.3579430e+03 1.4060582e+03 -1.0525953e+03 - -2.3882058e+03 1.3433042e+03 -1.0650153e+03 - -2.4166521e+03 1.2793474e+03 -1.0785638e+03 - -2.4432676e+03 1.2142259e+03 -1.0932223e+03 - -2.4680403e+03 1.1479792e+03 -1.1089695e+03 - -2.4909606e+03 1.0806483e+03 -1.1257804e+03 - -2.5120221e+03 1.0122758e+03 -1.1436261e+03 - -2.5312213e+03 9.4290584e+02 -1.1624733e+03 - -2.5485586e+03 8.7258478e+02 -1.1822836e+03 - -2.5640385e+03 8.0136102e+02 -1.2030132e+03 - -2.5776699e+03 7.2928534e+02 -1.2246118e+03 - -2.5894672e+03 6.5641118e+02 -1.2470221e+03 - -2.5994508e+03 5.8279489e+02 -1.2701786e+03 - -2.6076481e+03 5.0849610e+02 -1.2940066e+03 - -2.6140948e+03 4.3357811e+02 -1.3184206e+03 - -2.6188362e+03 3.5810843e+02 -1.3433218e+03 - -2.6219300e+03 2.8215943e+02 -1.3685959e+03 - -2.6234488e+03 2.0580936e+02 -1.3941088e+03 - -2.6234847e+03 1.2914374e+02 -1.4197002e+03 - -2.6221562e+03 5.2257711e+01 -1.4451750e+03 - -2.6196189e+03 -2.4740199e+01 -1.4702881e+03 - -2.6160828e+03 -1.0172120e+02 -1.4947206e+03 - -2.6118426e+03 -1.7852329e+02 -1.5180368e+03 - -2.6073331e+03 -2.5492483e+02 -1.5396072e+03 - -2.6032371e+03 -3.3058577e+02 -1.5584553e+03 - -2.6007171e+03 -4.0490228e+02 -1.5729318e+03 - -2.6019643e+03 -4.7659280e+02 -1.5799361e+03 - -2.6117093e+03 -5.4226815e+02 -1.5727811e+03 - -2.6422039e+03 -5.8987999e+02 -1.5341427e+03 - -2.7318986e+03 -5.5302592e+02 -1.4096371e+03 - -2.8862588e+03 0.0000000e+00 -1.1917696e+03 - -2.7318986e+03 5.5302592e+02 -1.4096371e+03 - -2.6422039e+03 5.8987999e+02 -1.5341427e+03 - -2.6117093e+03 5.4226815e+02 -1.5727811e+03 - -2.6019643e+03 4.7659280e+02 -1.5799361e+03 - -2.6007171e+03 4.0490228e+02 -1.5729318e+03 - -2.6032371e+03 3.3058577e+02 -1.5584553e+03 - -2.6073331e+03 2.5492483e+02 -1.5396072e+03 - -2.6118426e+03 1.7852329e+02 -1.5180368e+03 - -2.6160828e+03 1.0172120e+02 -1.4947206e+03 - -2.6196189e+03 2.4740199e+01 -1.4702881e+03 - -2.6221562e+03 -5.2257711e+01 -1.4451750e+03 - -2.6234847e+03 -1.2914374e+02 -1.4197002e+03 - -2.6234488e+03 -2.0580936e+02 -1.3941088e+03 - -2.6219300e+03 -2.8215943e+02 -1.3685959e+03 - -2.6188362e+03 -3.5810843e+02 -1.3433218e+03 - -2.6140948e+03 -4.3357811e+02 -1.3184206e+03 - -2.6076481e+03 -5.0849610e+02 -1.2940066e+03 - -2.5994508e+03 -5.8279489e+02 -1.2701786e+03 - -2.5894672e+03 -6.5641118e+02 -1.2470221e+03 - -2.5776699e+03 -7.2928534e+02 -1.2246118e+03 - -2.5640385e+03 -8.0136102e+02 -1.2030132e+03 - -2.5485586e+03 -8.7258478e+02 -1.1822836e+03 - -2.5312213e+03 -9.4290584e+02 -1.1624733e+03 - -2.5120221e+03 -1.0122758e+03 -1.1436261e+03 - -2.4909606e+03 -1.0806483e+03 -1.1257804e+03 - -2.4680403e+03 -1.1479792e+03 -1.1089695e+03 - -2.4432676e+03 -1.2142259e+03 -1.0932223e+03 - -2.4166521e+03 -1.2793474e+03 -1.0785638e+03 - -2.3882058e+03 -1.3433042e+03 -1.0650153e+03 - -2.3579430e+03 -1.4060582e+03 -1.0525953e+03 - -2.3258800e+03 -1.4675724e+03 -1.0413193e+03 - -2.2920351e+03 -1.5278109e+03 -1.0312003e+03 - -2.2564281e+03 -1.5867386e+03 -1.0222494e+03 - -2.2190801e+03 -1.6443216e+03 -1.0144756e+03 - -2.1800139e+03 -1.7005268e+03 -1.0078863e+03 - -2.1392532e+03 -1.7553216e+03 -1.0024876e+03 - -2.0968227e+03 -1.8086744e+03 -9.9828404e+02 - -2.0527481e+03 -1.8605541e+03 -9.9527909e+02 - -2.0070562e+03 -1.9109307e+03 -9.9347518e+02 - -1.9597743e+03 -1.9597743e+03 -9.9287372e+02 - -1.9109307e+03 -2.0070562e+03 -9.9347518e+02 - -1.8605541e+03 -2.0527481e+03 -9.9527909e+02 - -1.8086744e+03 -2.0968227e+03 -9.9828404e+02 - -1.7553216e+03 -2.1392532e+03 -1.0024876e+03 - -1.7005268e+03 -2.1800139e+03 -1.0078863e+03 - -1.6443216e+03 -2.2190801e+03 -1.0144756e+03 - -1.5867386e+03 -2.2564281e+03 -1.0222494e+03 - -1.5278109e+03 -2.2920351e+03 -1.0312003e+03 - -1.4675724e+03 -2.3258800e+03 -1.0413193e+03 - -1.4060582e+03 -2.3579430e+03 -1.0525953e+03 - -1.3433042e+03 -2.3882058e+03 -1.0650153e+03 - -1.2793474e+03 -2.4166521e+03 -1.0785638e+03 - -1.2142259e+03 -2.4432676e+03 -1.0932223e+03 - -1.1479792e+03 -2.4680403e+03 -1.1089695e+03 - -1.0806483e+03 -2.4909606e+03 -1.1257804e+03 - -1.0122758e+03 -2.5120221e+03 -1.1436261e+03 - -9.4290584e+02 -2.5312213e+03 -1.1624733e+03 - -8.7258478e+02 -2.5485586e+03 -1.1822836e+03 - -8.0136102e+02 -2.5640385e+03 -1.2030132e+03 - -7.2928534e+02 -2.5776699e+03 -1.2246118e+03 - -6.5641118e+02 -2.5894672e+03 -1.2470221e+03 - -5.8279489e+02 -2.5994508e+03 -1.2701786e+03 - -5.0849610e+02 -2.6076481e+03 -1.2940066e+03 - -4.3357811e+02 -2.6140948e+03 -1.3184206e+03 - -3.5810843e+02 -2.6188362e+03 -1.3433218e+03 - -2.8215943e+02 -2.6219300e+03 -1.3685959e+03 - -2.0580936e+02 -2.6234488e+03 -1.3941088e+03 - -1.2914374e+02 -2.6234847e+03 -1.4197002e+03 - -5.2257711e+01 -2.6221562e+03 -1.4451750e+03 - 2.4740199e+01 -2.6196189e+03 -1.4702881e+03 - 1.0172120e+02 -2.6160828e+03 -1.4947206e+03 - 1.7852329e+02 -2.6118426e+03 -1.5180368e+03 - 2.5492483e+02 -2.6073331e+03 -1.5396072e+03 - 3.3058577e+02 -2.6032371e+03 -1.5584553e+03 - 4.0490228e+02 -2.6007171e+03 -1.5729318e+03 - 4.7659280e+02 -2.6019643e+03 -1.5799361e+03 - 5.4226815e+02 -2.6117093e+03 -1.5727811e+03 - 5.8987999e+02 -2.6422039e+03 -1.5341427e+03 - 5.5302592e+02 -2.7318986e+03 -1.4096371e+03 - 4.8134273e-09 -2.8862588e+03 -1.1917696e+03 - -5.5302592e+02 -2.7318986e+03 -1.4096371e+03 - -5.8987999e+02 -2.6422039e+03 -1.5341427e+03 - -5.4226815e+02 -2.6117093e+03 -1.5727811e+03 - -4.7659280e+02 -2.6019643e+03 -1.5799361e+03 - -4.0490228e+02 -2.6007171e+03 -1.5729318e+03 - -3.3058577e+02 -2.6032371e+03 -1.5584553e+03 - -2.5492483e+02 -2.6073331e+03 -1.5396072e+03 - -1.7852329e+02 -2.6118426e+03 -1.5180368e+03 - -1.0172120e+02 -2.6160828e+03 -1.4947206e+03 - -2.4740199e+01 -2.6196189e+03 -1.4702881e+03 - 5.2257711e+01 -2.6221562e+03 -1.4451750e+03 - 1.2914374e+02 -2.6234847e+03 -1.4197002e+03 - 2.0580936e+02 -2.6234488e+03 -1.3941088e+03 - 2.8215943e+02 -2.6219300e+03 -1.3685959e+03 - 3.5810843e+02 -2.6188362e+03 -1.3433218e+03 - 4.3357811e+02 -2.6140948e+03 -1.3184206e+03 - 5.0849610e+02 -2.6076481e+03 -1.2940066e+03 - 5.8279489e+02 -2.5994508e+03 -1.2701786e+03 - 6.5641118e+02 -2.5894672e+03 -1.2470221e+03 - 7.2928534e+02 -2.5776699e+03 -1.2246118e+03 - 8.0136102e+02 -2.5640385e+03 -1.2030132e+03 - 8.7258478e+02 -2.5485586e+03 -1.1822836e+03 - 9.4290584e+02 -2.5312213e+03 -1.1624733e+03 - 1.0122758e+03 -2.5120221e+03 -1.1436261e+03 - 1.0806483e+03 -2.4909606e+03 -1.1257804e+03 - 1.1479792e+03 -2.4680403e+03 -1.1089695e+03 - 1.2142259e+03 -2.4432676e+03 -1.0932223e+03 - 1.2793474e+03 -2.4166521e+03 -1.0785638e+03 - 1.3433042e+03 -2.3882058e+03 -1.0650153e+03 - 1.4060582e+03 -2.3579430e+03 -1.0525953e+03 - 1.4675724e+03 -2.3258800e+03 -1.0413193e+03 - 1.5278109e+03 -2.2920351e+03 -1.0312003e+03 - 1.5867386e+03 -2.2564281e+03 -1.0222494e+03 - 1.6443216e+03 -2.2190801e+03 -1.0144756e+03 - 1.7005268e+03 -2.1800139e+03 -1.0078863e+03 - 1.7553216e+03 -2.1392532e+03 -1.0024876e+03 - 1.8086744e+03 -2.0968227e+03 -9.9828404e+02 - 1.8605541e+03 -2.0527481e+03 -9.9527909e+02 - 1.9109307e+03 -2.0070562e+03 -9.9347518e+02 - 1.9597743e+03 -1.9597743e+03 -9.9287372e+02 - 2.0070562e+03 -1.9109307e+03 -9.9347518e+02 - 2.0527481e+03 -1.8605541e+03 -9.9527909e+02 - 2.0968227e+03 -1.8086744e+03 -9.9828404e+02 - 2.1392532e+03 -1.7553216e+03 -1.0024876e+03 - 2.1800139e+03 -1.7005268e+03 -1.0078863e+03 - 2.2190801e+03 -1.6443216e+03 -1.0144756e+03 - 2.2564281e+03 -1.5867386e+03 -1.0222494e+03 - 2.2920351e+03 -1.5278109e+03 -1.0312003e+03 - 2.3258800e+03 -1.4675724e+03 -1.0413193e+03 - 2.3579430e+03 -1.4060582e+03 -1.0525953e+03 - 2.3882058e+03 -1.3433042e+03 -1.0650153e+03 - 2.4166521e+03 -1.2793474e+03 -1.0785638e+03 - 2.4432676e+03 -1.2142259e+03 -1.0932223e+03 - 2.4680403e+03 -1.1479792e+03 -1.1089695e+03 - 2.4909606e+03 -1.0806483e+03 -1.1257804e+03 - 2.5120221e+03 -1.0122758e+03 -1.1436261e+03 - 2.5312213e+03 -9.4290584e+02 -1.1624733e+03 - 2.5485586e+03 -8.7258478e+02 -1.1822836e+03 - 2.5640385e+03 -8.0136102e+02 -1.2030132e+03 - 2.5776699e+03 -7.2928534e+02 -1.2246118e+03 - 2.5894672e+03 -6.5641118e+02 -1.2470221e+03 - 2.5994508e+03 -5.8279489e+02 -1.2701786e+03 - 2.6076481e+03 -5.0849610e+02 -1.2940066e+03 - 2.6140948e+03 -4.3357811e+02 -1.3184206e+03 - 2.6188362e+03 -3.5810843e+02 -1.3433218e+03 - 2.6219300e+03 -2.8215943e+02 -1.3685959e+03 - 2.6234488e+03 -2.0580936e+02 -1.3941088e+03 - 2.6234847e+03 -1.2914374e+02 -1.4197002e+03 - 2.6221562e+03 -5.2257711e+01 -1.4451750e+03 - 2.6196189e+03 2.4740199e+01 -1.4702881e+03 - 2.6160828e+03 1.0172120e+02 -1.4947206e+03 - 2.6118426e+03 1.7852329e+02 -1.5180368e+03 - 2.6073331e+03 2.5492483e+02 -1.5396072e+03 - 2.6032371e+03 3.3058577e+02 -1.5584553e+03 - 2.6007171e+03 4.0490228e+02 -1.5729318e+03 - 2.6019643e+03 4.7659280e+02 -1.5799361e+03 - 2.6117093e+03 5.4226815e+02 -1.5727811e+03 - 2.6422039e+03 5.8987999e+02 -1.5341427e+03 - 2.7318986e+03 5.5302592e+02 -1.4096371e+03 - 2.8862588e+03 4.8134273e-09 -1.1917696e+03 - 2.8135739e+03 2.4067136e-09 -1.2897641e+03 - 2.7714693e+03 -3.1892657e+02 -1.3491923e+03 - 2.7040960e+03 -4.5899481e+02 -1.4432481e+03 - 2.6567350e+03 -4.8186336e+02 -1.5070607e+03 - 2.6285942e+03 -4.5412820e+02 -1.5415653e+03 - 2.6124519e+03 -4.0422394e+02 -1.5569592e+03 - 2.6033115e+03 -3.4357566e+02 -1.5603132e+03 - 2.5981763e+03 -2.7718761e+02 -1.5558709e+03 - 2.5952319e+03 -2.0749252e+02 -1.5462042e+03 - 2.5933343e+03 -1.3579413e+02 -1.5329387e+03 - 2.5917294e+03 -6.2855489e+01 -1.5171510e+03 - 2.5898989e+03 1.0839858e+01 -1.4995875e+03 - 2.5874733e+03 8.4962684e+01 -1.4807869e+03 - 2.5841807e+03 1.5927409e+02 -1.4611528e+03 - 2.5798160e+03 2.3359087e+02 -1.4409975e+03 - 2.5742207e+03 3.0776585e+02 -1.4205689e+03 - 2.5672711e+03 3.8167625e+02 -1.4000690e+03 - 2.5588688e+03 4.5521648e+02 -1.3796650e+03 - 2.5489355e+03 5.2829354e+02 -1.3594978e+03 - 2.5374086e+03 6.0082404e+02 -1.3396876e+03 - 2.5242381e+03 6.7273212e+02 -1.3203378e+03 - 2.5093846e+03 7.4394797e+02 -1.3015380e+03 - 2.4928172e+03 8.1440684e+02 -1.2833663e+03 - 2.4745129e+03 8.8404821e+02 -1.2658912e+03 - 2.4544547e+03 9.5281521e+02 -1.2491724e+03 - 2.4326313e+03 1.0206542e+03 -1.2332627e+03 - 2.4090364e+03 1.0875141e+03 -1.2182081e+03 - 2.3836678e+03 1.1533468e+03 -1.2040491e+03 - 2.3565271e+03 1.2181058e+03 -1.1908211e+03 - 2.3276195e+03 1.2817472e+03 -1.1785551e+03 - 2.2969531e+03 1.3442285e+03 -1.1672779e+03 - 2.2645385e+03 1.4055089e+03 -1.1570129e+03 - 2.2303891e+03 1.4655495e+03 -1.1477802e+03 - 2.1945202e+03 1.5243123e+03 -1.1395968e+03 - 2.1569492e+03 1.5817609e+03 -1.1324773e+03 - 2.1176953e+03 1.6378602e+03 -1.1264339e+03 - 2.0767794e+03 1.6925760e+03 -1.1214763e+03 - 2.0342239e+03 1.7458755e+03 -1.1176125e+03 - 1.9900525e+03 1.7977269e+03 -1.1148484e+03 - 1.9442902e+03 1.8480994e+03 -1.1131883e+03 - 1.8969633e+03 1.8969633e+03 -1.1126347e+03 - 1.8480994e+03 1.9442902e+03 -1.1131883e+03 - 1.7977269e+03 1.9900525e+03 -1.1148484e+03 - 1.7458755e+03 2.0342239e+03 -1.1176125e+03 - 1.6925760e+03 2.0767794e+03 -1.1214763e+03 - 1.6378602e+03 2.1176953e+03 -1.1264339e+03 - 1.5817609e+03 2.1569492e+03 -1.1324773e+03 - 1.5243123e+03 2.1945202e+03 -1.1395968e+03 - 1.4655495e+03 2.2303891e+03 -1.1477802e+03 - 1.4055089e+03 2.2645385e+03 -1.1570129e+03 - 1.3442285e+03 2.2969531e+03 -1.1672779e+03 - 1.2817472e+03 2.3276195e+03 -1.1785551e+03 - 1.2181058e+03 2.3565271e+03 -1.1908211e+03 - 1.1533468e+03 2.3836678e+03 -1.2040491e+03 - 1.0875141e+03 2.4090364e+03 -1.2182081e+03 - 1.0206542e+03 2.4326313e+03 -1.2332627e+03 - 9.5281521e+02 2.4544547e+03 -1.2491724e+03 - 8.8404821e+02 2.4745129e+03 -1.2658912e+03 - 8.1440684e+02 2.4928172e+03 -1.2833663e+03 - 7.4394797e+02 2.5093846e+03 -1.3015380e+03 - 6.7273212e+02 2.5242381e+03 -1.3203378e+03 - 6.0082404e+02 2.5374086e+03 -1.3396876e+03 - 5.2829354e+02 2.5489355e+03 -1.3594978e+03 - 4.5521648e+02 2.5588688e+03 -1.3796650e+03 - 3.8167625e+02 2.5672711e+03 -1.4000690e+03 - 3.0776585e+02 2.5742207e+03 -1.4205689e+03 - 2.3359087e+02 2.5798160e+03 -1.4409975e+03 - 1.5927409e+02 2.5841807e+03 -1.4611528e+03 - 8.4962684e+01 2.5874733e+03 -1.4807869e+03 - 1.0839858e+01 2.5898989e+03 -1.4995875e+03 - -6.2855489e+01 2.5917294e+03 -1.5171510e+03 - -1.3579413e+02 2.5933343e+03 -1.5329387e+03 - -2.0749252e+02 2.5952319e+03 -1.5462042e+03 - -2.7718761e+02 2.5981763e+03 -1.5558709e+03 - -3.4357566e+02 2.6033115e+03 -1.5603132e+03 - -4.0422394e+02 2.6124519e+03 -1.5569592e+03 - -4.5412820e+02 2.6285942e+03 -1.5415653e+03 - -4.8186336e+02 2.6567350e+03 -1.5070607e+03 - -4.5899481e+02 2.7040960e+03 -1.4432481e+03 - -3.1892657e+02 2.7714693e+03 -1.3491923e+03 - -7.2201409e-09 2.8135739e+03 -1.2897641e+03 - 3.1892657e+02 2.7714693e+03 -1.3491923e+03 - 4.5899481e+02 2.7040960e+03 -1.4432481e+03 - 4.8186336e+02 2.6567350e+03 -1.5070607e+03 - 4.5412820e+02 2.6285942e+03 -1.5415653e+03 - 4.0422394e+02 2.6124519e+03 -1.5569592e+03 - 3.4357566e+02 2.6033115e+03 -1.5603132e+03 - 2.7718761e+02 2.5981763e+03 -1.5558709e+03 - 2.0749252e+02 2.5952319e+03 -1.5462042e+03 - 1.3579413e+02 2.5933343e+03 -1.5329387e+03 - 6.2855489e+01 2.5917294e+03 -1.5171510e+03 - -1.0839858e+01 2.5898989e+03 -1.4995875e+03 - -8.4962684e+01 2.5874733e+03 -1.4807869e+03 - -1.5927409e+02 2.5841807e+03 -1.4611528e+03 - -2.3359087e+02 2.5798160e+03 -1.4409975e+03 - -3.0776585e+02 2.5742207e+03 -1.4205689e+03 - -3.8167625e+02 2.5672711e+03 -1.4000690e+03 - -4.5521648e+02 2.5588688e+03 -1.3796650e+03 - -5.2829354e+02 2.5489355e+03 -1.3594978e+03 - -6.0082404e+02 2.5374086e+03 -1.3396876e+03 - -6.7273212e+02 2.5242381e+03 -1.3203378e+03 - -7.4394797e+02 2.5093846e+03 -1.3015380e+03 - -8.1440684e+02 2.4928172e+03 -1.2833663e+03 - -8.8404821e+02 2.4745129e+03 -1.2658912e+03 - -9.5281521e+02 2.4544547e+03 -1.2491724e+03 - -1.0206542e+03 2.4326313e+03 -1.2332627e+03 - -1.0875141e+03 2.4090364e+03 -1.2182081e+03 - -1.1533468e+03 2.3836678e+03 -1.2040491e+03 - -1.2181058e+03 2.3565271e+03 -1.1908211e+03 - -1.2817472e+03 2.3276195e+03 -1.1785551e+03 - -1.3442285e+03 2.2969531e+03 -1.1672779e+03 - -1.4055089e+03 2.2645385e+03 -1.1570129e+03 - -1.4655495e+03 2.2303891e+03 -1.1477802e+03 - -1.5243123e+03 2.1945202e+03 -1.1395968e+03 - -1.5817609e+03 2.1569492e+03 -1.1324773e+03 - -1.6378602e+03 2.1176953e+03 -1.1264339e+03 - -1.6925760e+03 2.0767794e+03 -1.1214763e+03 - -1.7458755e+03 2.0342239e+03 -1.1176125e+03 - -1.7977269e+03 1.9900525e+03 -1.1148484e+03 - -1.8480994e+03 1.9442902e+03 -1.1131883e+03 - -1.8969633e+03 1.8969633e+03 -1.1126347e+03 - -1.9442902e+03 1.8480994e+03 -1.1131883e+03 - -1.9900525e+03 1.7977269e+03 -1.1148484e+03 - -2.0342239e+03 1.7458755e+03 -1.1176125e+03 - -2.0767794e+03 1.6925760e+03 -1.1214763e+03 - -2.1176953e+03 1.6378602e+03 -1.1264339e+03 - -2.1569492e+03 1.5817609e+03 -1.1324773e+03 - -2.1945202e+03 1.5243123e+03 -1.1395968e+03 - -2.2303891e+03 1.4655495e+03 -1.1477802e+03 - -2.2645385e+03 1.4055089e+03 -1.1570129e+03 - -2.2969531e+03 1.3442285e+03 -1.1672779e+03 - -2.3276195e+03 1.2817472e+03 -1.1785551e+03 - -2.3565271e+03 1.2181058e+03 -1.1908211e+03 - -2.3836678e+03 1.1533468e+03 -1.2040491e+03 - -2.4090364e+03 1.0875141e+03 -1.2182081e+03 - -2.4326313e+03 1.0206542e+03 -1.2332627e+03 - -2.4544547e+03 9.5281521e+02 -1.2491724e+03 - -2.4745129e+03 8.8404821e+02 -1.2658912e+03 - -2.4928172e+03 8.1440684e+02 -1.2833663e+03 - -2.5093846e+03 7.4394797e+02 -1.3015380e+03 - -2.5242381e+03 6.7273212e+02 -1.3203378e+03 - -2.5374086e+03 6.0082404e+02 -1.3396876e+03 - -2.5489355e+03 5.2829354e+02 -1.3594978e+03 - -2.5588688e+03 4.5521648e+02 -1.3796650e+03 - -2.5672711e+03 3.8167625e+02 -1.4000690e+03 - -2.5742207e+03 3.0776585e+02 -1.4205689e+03 - -2.5798160e+03 2.3359087e+02 -1.4409975e+03 - -2.5841807e+03 1.5927409e+02 -1.4611528e+03 - -2.5874733e+03 8.4962684e+01 -1.4807869e+03 - -2.5898989e+03 1.0839858e+01 -1.4995875e+03 - -2.5917294e+03 -6.2855489e+01 -1.5171510e+03 - -2.5933343e+03 -1.3579413e+02 -1.5329387e+03 - -2.5952319e+03 -2.0749252e+02 -1.5462042e+03 - -2.5981763e+03 -2.7718761e+02 -1.5558709e+03 - -2.6033115e+03 -3.4357566e+02 -1.5603132e+03 - -2.6124519e+03 -4.0422394e+02 -1.5569592e+03 - -2.6285942e+03 -4.5412820e+02 -1.5415653e+03 - -2.6567350e+03 -4.8186336e+02 -1.5070607e+03 - -2.7040960e+03 -4.5899481e+02 -1.4432481e+03 - -2.7714693e+03 -3.1892657e+02 -1.3491923e+03 - -2.8135739e+03 4.8134273e-09 -1.2897641e+03 - -2.7714693e+03 3.1892657e+02 -1.3491923e+03 - -2.7040960e+03 4.5899481e+02 -1.4432481e+03 - -2.6567350e+03 4.8186336e+02 -1.5070607e+03 - -2.6285942e+03 4.5412820e+02 -1.5415653e+03 - -2.6124519e+03 4.0422394e+02 -1.5569592e+03 - -2.6033115e+03 3.4357566e+02 -1.5603132e+03 - -2.5981763e+03 2.7718761e+02 -1.5558709e+03 - -2.5952319e+03 2.0749252e+02 -1.5462042e+03 - -2.5933343e+03 1.3579413e+02 -1.5329387e+03 - -2.5917294e+03 6.2855489e+01 -1.5171510e+03 - -2.5898989e+03 -1.0839858e+01 -1.4995875e+03 - -2.5874733e+03 -8.4962684e+01 -1.4807869e+03 - -2.5841807e+03 -1.5927409e+02 -1.4611528e+03 - -2.5798160e+03 -2.3359087e+02 -1.4409975e+03 - -2.5742207e+03 -3.0776585e+02 -1.4205689e+03 - -2.5672711e+03 -3.8167625e+02 -1.4000690e+03 - -2.5588688e+03 -4.5521648e+02 -1.3796650e+03 - -2.5489355e+03 -5.2829354e+02 -1.3594978e+03 - -2.5374086e+03 -6.0082404e+02 -1.3396876e+03 - -2.5242381e+03 -6.7273212e+02 -1.3203378e+03 - -2.5093846e+03 -7.4394797e+02 -1.3015380e+03 - -2.4928172e+03 -8.1440684e+02 -1.2833663e+03 - -2.4745129e+03 -8.8404821e+02 -1.2658912e+03 - -2.4544547e+03 -9.5281521e+02 -1.2491724e+03 - -2.4326313e+03 -1.0206542e+03 -1.2332627e+03 - -2.4090364e+03 -1.0875141e+03 -1.2182081e+03 - -2.3836678e+03 -1.1533468e+03 -1.2040491e+03 - -2.3565271e+03 -1.2181058e+03 -1.1908211e+03 - -2.3276195e+03 -1.2817472e+03 -1.1785551e+03 - -2.2969531e+03 -1.3442285e+03 -1.1672779e+03 - -2.2645385e+03 -1.4055089e+03 -1.1570129e+03 - -2.2303891e+03 -1.4655495e+03 -1.1477802e+03 - -2.1945202e+03 -1.5243123e+03 -1.1395968e+03 - -2.1569492e+03 -1.5817609e+03 -1.1324773e+03 - -2.1176953e+03 -1.6378602e+03 -1.1264339e+03 - -2.0767794e+03 -1.6925760e+03 -1.1214763e+03 - -2.0342239e+03 -1.7458755e+03 -1.1176125e+03 - -1.9900525e+03 -1.7977269e+03 -1.1148484e+03 - -1.9442902e+03 -1.8480994e+03 -1.1131883e+03 - -1.8969633e+03 -1.8969633e+03 -1.1126347e+03 - -1.8480994e+03 -1.9442902e+03 -1.1131883e+03 - -1.7977269e+03 -1.9900525e+03 -1.1148484e+03 - -1.7458755e+03 -2.0342239e+03 -1.1176125e+03 - -1.6925760e+03 -2.0767794e+03 -1.1214763e+03 - -1.6378602e+03 -2.1176953e+03 -1.1264339e+03 - -1.5817609e+03 -2.1569492e+03 -1.1324773e+03 - -1.5243123e+03 -2.1945202e+03 -1.1395968e+03 - -1.4655495e+03 -2.2303891e+03 -1.1477802e+03 - -1.4055089e+03 -2.2645385e+03 -1.1570129e+03 - -1.3442285e+03 -2.2969531e+03 -1.1672779e+03 - -1.2817472e+03 -2.3276195e+03 -1.1785551e+03 - -1.2181058e+03 -2.3565271e+03 -1.1908211e+03 - -1.1533468e+03 -2.3836678e+03 -1.2040491e+03 - -1.0875141e+03 -2.4090364e+03 -1.2182081e+03 - -1.0206542e+03 -2.4326313e+03 -1.2332627e+03 - -9.5281521e+02 -2.4544547e+03 -1.2491724e+03 - -8.8404821e+02 -2.4745129e+03 -1.2658912e+03 - -8.1440684e+02 -2.4928172e+03 -1.2833663e+03 - -7.4394797e+02 -2.5093846e+03 -1.3015380e+03 - -6.7273212e+02 -2.5242381e+03 -1.3203378e+03 - -6.0082404e+02 -2.5374086e+03 -1.3396876e+03 - -5.2829354e+02 -2.5489355e+03 -1.3594978e+03 - -4.5521648e+02 -2.5588688e+03 -1.3796650e+03 - -3.8167625e+02 -2.5672711e+03 -1.4000690e+03 - -3.0776585e+02 -2.5742207e+03 -1.4205689e+03 - -2.3359087e+02 -2.5798160e+03 -1.4409975e+03 - -1.5927409e+02 -2.5841807e+03 -1.4611528e+03 - -8.4962684e+01 -2.5874733e+03 -1.4807869e+03 - -1.0839858e+01 -2.5898989e+03 -1.4995875e+03 - 6.2855489e+01 -2.5917294e+03 -1.5171510e+03 - 1.3579413e+02 -2.5933343e+03 -1.5329387e+03 - 2.0749252e+02 -2.5952319e+03 -1.5462042e+03 - 2.7718761e+02 -2.5981763e+03 -1.5558709e+03 - 3.4357566e+02 -2.6033115e+03 -1.5603132e+03 - 4.0422394e+02 -2.6124519e+03 -1.5569592e+03 - 4.5412820e+02 -2.6285942e+03 -1.5415653e+03 - 4.8186336e+02 -2.6567350e+03 -1.5070607e+03 - 4.5899481e+02 -2.7040960e+03 -1.4432481e+03 - 3.1892657e+02 -2.7714693e+03 -1.3491923e+03 - 0.0000000e+00 -2.8135739e+03 -1.2897641e+03 - -3.1892657e+02 -2.7714693e+03 -1.3491923e+03 - -4.5899481e+02 -2.7040960e+03 -1.4432481e+03 - -4.8186336e+02 -2.6567350e+03 -1.5070607e+03 - -4.5412820e+02 -2.6285942e+03 -1.5415653e+03 - -4.0422394e+02 -2.6124519e+03 -1.5569592e+03 - -3.4357566e+02 -2.6033115e+03 -1.5603132e+03 - -2.7718761e+02 -2.5981763e+03 -1.5558709e+03 - -2.0749252e+02 -2.5952319e+03 -1.5462042e+03 - -1.3579413e+02 -2.5933343e+03 -1.5329387e+03 - -6.2855489e+01 -2.5917294e+03 -1.5171510e+03 - 1.0839858e+01 -2.5898989e+03 -1.4995875e+03 - 8.4962684e+01 -2.5874733e+03 -1.4807869e+03 - 1.5927409e+02 -2.5841807e+03 -1.4611528e+03 - 2.3359087e+02 -2.5798160e+03 -1.4409975e+03 - 3.0776585e+02 -2.5742207e+03 -1.4205689e+03 - 3.8167625e+02 -2.5672711e+03 -1.4000690e+03 - 4.5521648e+02 -2.5588688e+03 -1.3796650e+03 - 5.2829354e+02 -2.5489355e+03 -1.3594978e+03 - 6.0082404e+02 -2.5374086e+03 -1.3396876e+03 - 6.7273212e+02 -2.5242381e+03 -1.3203378e+03 - 7.4394797e+02 -2.5093846e+03 -1.3015380e+03 - 8.1440684e+02 -2.4928172e+03 -1.2833663e+03 - 8.8404821e+02 -2.4745129e+03 -1.2658912e+03 - 9.5281521e+02 -2.4544547e+03 -1.2491724e+03 - 1.0206542e+03 -2.4326313e+03 -1.2332627e+03 - 1.0875141e+03 -2.4090364e+03 -1.2182081e+03 - 1.1533468e+03 -2.3836678e+03 -1.2040491e+03 - 1.2181058e+03 -2.3565271e+03 -1.1908211e+03 - 1.2817472e+03 -2.3276195e+03 -1.1785551e+03 - 1.3442285e+03 -2.2969531e+03 -1.1672779e+03 - 1.4055089e+03 -2.2645385e+03 -1.1570129e+03 - 1.4655495e+03 -2.2303891e+03 -1.1477802e+03 - 1.5243123e+03 -2.1945202e+03 -1.1395968e+03 - 1.5817609e+03 -2.1569492e+03 -1.1324773e+03 - 1.6378602e+03 -2.1176953e+03 -1.1264339e+03 - 1.6925760e+03 -2.0767794e+03 -1.1214763e+03 - 1.7458755e+03 -2.0342239e+03 -1.1176125e+03 - 1.7977269e+03 -1.9900525e+03 -1.1148484e+03 - 1.8480994e+03 -1.9442902e+03 -1.1131883e+03 - 1.8969633e+03 -1.8969633e+03 -1.1126347e+03 - 1.9442902e+03 -1.8480994e+03 -1.1131883e+03 - 1.9900525e+03 -1.7977269e+03 -1.1148484e+03 - 2.0342239e+03 -1.7458755e+03 -1.1176125e+03 - 2.0767794e+03 -1.6925760e+03 -1.1214763e+03 - 2.1176953e+03 -1.6378602e+03 -1.1264339e+03 - 2.1569492e+03 -1.5817609e+03 -1.1324773e+03 - 2.1945202e+03 -1.5243123e+03 -1.1395968e+03 - 2.2303891e+03 -1.4655495e+03 -1.1477802e+03 - 2.2645385e+03 -1.4055089e+03 -1.1570129e+03 - 2.2969531e+03 -1.3442285e+03 -1.1672779e+03 - 2.3276195e+03 -1.2817472e+03 -1.1785551e+03 - 2.3565271e+03 -1.2181058e+03 -1.1908211e+03 - 2.3836678e+03 -1.1533468e+03 -1.2040491e+03 - 2.4090364e+03 -1.0875141e+03 -1.2182081e+03 - 2.4326313e+03 -1.0206542e+03 -1.2332627e+03 - 2.4544547e+03 -9.5281521e+02 -1.2491724e+03 - 2.4745129e+03 -8.8404821e+02 -1.2658912e+03 - 2.4928172e+03 -8.1440684e+02 -1.2833663e+03 - 2.5093846e+03 -7.4394797e+02 -1.3015380e+03 - 2.5242381e+03 -6.7273212e+02 -1.3203378e+03 - 2.5374086e+03 -6.0082404e+02 -1.3396876e+03 - 2.5489355e+03 -5.2829354e+02 -1.3594978e+03 - 2.5588688e+03 -4.5521648e+02 -1.3796650e+03 - 2.5672711e+03 -3.8167625e+02 -1.4000690e+03 - 2.5742207e+03 -3.0776585e+02 -1.4205689e+03 - 2.5798160e+03 -2.3359087e+02 -1.4409975e+03 - 2.5841807e+03 -1.5927409e+02 -1.4611528e+03 - 2.5874733e+03 -8.4962684e+01 -1.4807869e+03 - 2.5898989e+03 -1.0839858e+01 -1.4995875e+03 - 2.5917294e+03 6.2855489e+01 -1.5171510e+03 - 2.5933343e+03 1.3579413e+02 -1.5329387e+03 - 2.5952319e+03 2.0749252e+02 -1.5462042e+03 - 2.5981763e+03 2.7718761e+02 -1.5558709e+03 - 2.6033115e+03 3.4357566e+02 -1.5603132e+03 - 2.6124519e+03 4.0422394e+02 -1.5569592e+03 - 2.6285942e+03 4.5412820e+02 -1.5415653e+03 - 2.6567350e+03 4.8186336e+02 -1.5070607e+03 - 2.7040960e+03 4.5899481e+02 -1.4432481e+03 - 2.7714693e+03 3.1892657e+02 -1.3491923e+03 - 2.8135739e+03 4.8134273e-09 -1.2897641e+03 - 2.7368824e+03 -2.4067136e-09 -1.3890273e+03 - 2.7192183e+03 -2.1345796e+02 -1.4139861e+03 - 2.6811824e+03 -3.5064377e+02 -1.4671502e+03 - 2.6438532e+03 -4.0739704e+02 -1.5178376e+03 - 2.6150452e+03 -4.1114832e+02 -1.5545391e+03 - 2.5945640e+03 -3.8440191e+02 -1.5773785e+03 - 2.5802770e+03 -3.4025846e+02 -1.5893347e+03 - 2.5701702e+03 -2.8585216e+02 -1.5932512e+03 - 2.5627163e+03 -2.2513068e+02 -1.5912926e+03 - 2.5568154e+03 -1.6037352e+02 -1.5850217e+03 - 2.5516786e+03 -9.2964682e+01 -1.5755629e+03 - 2.5467328e+03 -2.3788533e+01 -1.5637379e+03 - 2.5415535e+03 4.6561038e+01 -1.5501599e+03 - 2.5358202e+03 1.1766591e+02 -1.5352974e+03 - 2.5292864e+03 1.8921841e+02 -1.5195169e+03 - 2.5217596e+03 2.6098274e+02 -1.5031108e+03 - 2.5130871e+03 3.3277152e+02 -1.4863173e+03 - 2.5031466e+03 4.0443095e+02 -1.4693337e+03 - 2.4918397e+03 4.7583128e+02 -1.4523255e+03 - 2.4790864e+03 5.4686045e+02 -1.4354339e+03 - 2.4648219e+03 6.1741982e+02 -1.4187799e+03 - 2.4489939e+03 6.8742113e+02 -1.4024684e+03 - 2.4315605e+03 7.5678437e+02 -1.3865910e+03 - 2.4124884e+03 8.2543624e+02 -1.3712279e+03 - 2.3917519e+03 8.9330900e+02 -1.3564495e+03 - 2.3693317e+03 9.6033959e+02 -1.3423180e+03 - 2.3452145e+03 1.0264690e+03 -1.3288883e+03 - 2.3193915e+03 1.0916416e+03 -1.3162087e+03 - 2.2918587e+03 1.1558049e+03 -1.3043220e+03 - 2.2626161e+03 1.2189092e+03 -1.2932656e+03 - 2.2316669e+03 1.2809071e+03 -1.2830727e+03 - 2.1990178e+03 1.3417536e+03 -1.2737720e+03 - 2.1646783e+03 1.4014056e+03 -1.2653886e+03 - 2.1286606e+03 1.4598220e+03 -1.2579441e+03 - 2.0909793e+03 1.5169633e+03 -1.2514569e+03 - 2.0516509e+03 1.5727918e+03 -1.2459427e+03 - 2.0106946e+03 1.6272713e+03 -1.2414141e+03 - 1.9681308e+03 1.6803672e+03 -1.2378815e+03 - 1.9239822e+03 1.7320463e+03 -1.2353527e+03 - 1.8782729e+03 1.7822769e+03 -1.2338333e+03 - 1.8310287e+03 1.8310287e+03 -1.2333264e+03 - 1.7822769e+03 1.8782729e+03 -1.2338333e+03 - 1.7320463e+03 1.9239822e+03 -1.2353527e+03 - 1.6803672e+03 1.9681308e+03 -1.2378815e+03 - 1.6272713e+03 2.0106946e+03 -1.2414141e+03 - 1.5727918e+03 2.0516509e+03 -1.2459427e+03 - 1.5169633e+03 2.0909793e+03 -1.2514569e+03 - 1.4598220e+03 2.1286606e+03 -1.2579441e+03 - 1.4014056e+03 2.1646783e+03 -1.2653886e+03 - 1.3417536e+03 2.1990178e+03 -1.2737720e+03 - 1.2809071e+03 2.2316669e+03 -1.2830727e+03 - 1.2189092e+03 2.2626161e+03 -1.2932656e+03 - 1.1558049e+03 2.2918587e+03 -1.3043220e+03 - 1.0916416e+03 2.3193915e+03 -1.3162087e+03 - 1.0264690e+03 2.3452145e+03 -1.3288883e+03 - 9.6033959e+02 2.3693317e+03 -1.3423180e+03 - 8.9330900e+02 2.3917519e+03 -1.3564495e+03 - 8.2543624e+02 2.4124884e+03 -1.3712279e+03 - 7.5678437e+02 2.4315605e+03 -1.3865910e+03 - 6.8742113e+02 2.4489939e+03 -1.4024684e+03 - 6.1741982e+02 2.4648219e+03 -1.4187799e+03 - 5.4686045e+02 2.4790864e+03 -1.4354339e+03 - 4.7583128e+02 2.4918397e+03 -1.4523255e+03 - 4.0443095e+02 2.5031466e+03 -1.4693337e+03 - 3.3277152e+02 2.5130871e+03 -1.4863173e+03 - 2.6098274e+02 2.5217596e+03 -1.5031108e+03 - 1.8921841e+02 2.5292864e+03 -1.5195169e+03 - 1.1766591e+02 2.5358202e+03 -1.5352974e+03 - 4.6561038e+01 2.5415535e+03 -1.5501599e+03 - -2.3788533e+01 2.5467328e+03 -1.5637379e+03 - -9.2964682e+01 2.5516786e+03 -1.5755629e+03 - -1.6037352e+02 2.5568154e+03 -1.5850217e+03 - -2.2513068e+02 2.5627163e+03 -1.5912926e+03 - -2.8585216e+02 2.5701702e+03 -1.5932512e+03 - -3.4025846e+02 2.5802770e+03 -1.5893347e+03 - -3.8440191e+02 2.5945640e+03 -1.5773785e+03 - -4.1114832e+02 2.6150452e+03 -1.5545391e+03 - -4.0739704e+02 2.6438532e+03 -1.5178376e+03 - -3.5064377e+02 2.6811824e+03 -1.4671502e+03 - -2.1345796e+02 2.7192183e+03 -1.4139861e+03 - -2.4067136e-09 2.7368824e+03 -1.3890273e+03 - 2.1345796e+02 2.7192183e+03 -1.4139861e+03 - 3.5064377e+02 2.6811824e+03 -1.4671502e+03 - 4.0739704e+02 2.6438532e+03 -1.5178376e+03 - 4.1114832e+02 2.6150452e+03 -1.5545391e+03 - 3.8440191e+02 2.5945640e+03 -1.5773785e+03 - 3.4025846e+02 2.5802770e+03 -1.5893347e+03 - 2.8585216e+02 2.5701702e+03 -1.5932512e+03 - 2.2513068e+02 2.5627163e+03 -1.5912926e+03 - 1.6037352e+02 2.5568154e+03 -1.5850217e+03 - 9.2964682e+01 2.5516786e+03 -1.5755629e+03 - 2.3788533e+01 2.5467328e+03 -1.5637379e+03 - -4.6561038e+01 2.5415535e+03 -1.5501599e+03 - -1.1766591e+02 2.5358202e+03 -1.5352974e+03 - -1.8921841e+02 2.5292864e+03 -1.5195169e+03 - -2.6098274e+02 2.5217596e+03 -1.5031108e+03 - -3.3277152e+02 2.5130871e+03 -1.4863173e+03 - -4.0443095e+02 2.5031466e+03 -1.4693337e+03 - -4.7583128e+02 2.4918397e+03 -1.4523255e+03 - -5.4686045e+02 2.4790864e+03 -1.4354339e+03 - -6.1741982e+02 2.4648219e+03 -1.4187799e+03 - -6.8742113e+02 2.4489939e+03 -1.4024684e+03 - -7.5678437e+02 2.4315605e+03 -1.3865910e+03 - -8.2543624e+02 2.4124884e+03 -1.3712279e+03 - -8.9330900e+02 2.3917519e+03 -1.3564495e+03 - -9.6033959e+02 2.3693317e+03 -1.3423180e+03 - -1.0264690e+03 2.3452145e+03 -1.3288883e+03 - -1.0916416e+03 2.3193915e+03 -1.3162087e+03 - -1.1558049e+03 2.2918587e+03 -1.3043220e+03 - -1.2189092e+03 2.2626161e+03 -1.2932656e+03 - -1.2809071e+03 2.2316669e+03 -1.2830727e+03 - -1.3417536e+03 2.1990178e+03 -1.2737720e+03 - -1.4014056e+03 2.1646783e+03 -1.2653886e+03 - -1.4598220e+03 2.1286606e+03 -1.2579441e+03 - -1.5169633e+03 2.0909793e+03 -1.2514569e+03 - -1.5727918e+03 2.0516509e+03 -1.2459427e+03 - -1.6272713e+03 2.0106946e+03 -1.2414141e+03 - -1.6803672e+03 1.9681308e+03 -1.2378815e+03 - -1.7320463e+03 1.9239822e+03 -1.2353527e+03 - -1.7822769e+03 1.8782729e+03 -1.2338333e+03 - -1.8310287e+03 1.8310287e+03 -1.2333264e+03 - -1.8782729e+03 1.7822769e+03 -1.2338333e+03 - -1.9239822e+03 1.7320463e+03 -1.2353527e+03 - -1.9681308e+03 1.6803672e+03 -1.2378815e+03 - -2.0106946e+03 1.6272713e+03 -1.2414141e+03 - -2.0516509e+03 1.5727918e+03 -1.2459427e+03 - -2.0909793e+03 1.5169633e+03 -1.2514569e+03 - -2.1286606e+03 1.4598220e+03 -1.2579441e+03 - -2.1646783e+03 1.4014056e+03 -1.2653886e+03 - -2.1990178e+03 1.3417536e+03 -1.2737720e+03 - -2.2316669e+03 1.2809071e+03 -1.2830727e+03 - -2.2626161e+03 1.2189092e+03 -1.2932656e+03 - -2.2918587e+03 1.1558049e+03 -1.3043220e+03 - -2.3193915e+03 1.0916416e+03 -1.3162087e+03 - -2.3452145e+03 1.0264690e+03 -1.3288883e+03 - -2.3693317e+03 9.6033959e+02 -1.3423180e+03 - -2.3917519e+03 8.9330900e+02 -1.3564495e+03 - -2.4124884e+03 8.2543624e+02 -1.3712279e+03 - -2.4315605e+03 7.5678437e+02 -1.3865910e+03 - -2.4489939e+03 6.8742113e+02 -1.4024684e+03 - -2.4648219e+03 6.1741982e+02 -1.4187799e+03 - -2.4790864e+03 5.4686045e+02 -1.4354339e+03 - -2.4918397e+03 4.7583128e+02 -1.4523255e+03 - -2.5031466e+03 4.0443095e+02 -1.4693337e+03 - -2.5130871e+03 3.3277152e+02 -1.4863173e+03 - -2.5217596e+03 2.6098274e+02 -1.5031108e+03 - -2.5292864e+03 1.8921841e+02 -1.5195169e+03 - -2.5358202e+03 1.1766591e+02 -1.5352974e+03 - -2.5415535e+03 4.6561038e+01 -1.5501599e+03 - -2.5467328e+03 -2.3788533e+01 -1.5637379e+03 - -2.5516786e+03 -9.2964682e+01 -1.5755629e+03 - -2.5568154e+03 -1.6037352e+02 -1.5850217e+03 - -2.5627163e+03 -2.2513068e+02 -1.5912926e+03 - -2.5701702e+03 -2.8585216e+02 -1.5932512e+03 - -2.5802770e+03 -3.4025846e+02 -1.5893347e+03 - -2.5945640e+03 -3.8440191e+02 -1.5773785e+03 - -2.6150452e+03 -4.1114832e+02 -1.5545391e+03 - -2.6438532e+03 -4.0739704e+02 -1.5178376e+03 - -2.6811824e+03 -3.5064377e+02 -1.4671502e+03 - -2.7192183e+03 -2.1345796e+02 -1.4139861e+03 - -2.7368824e+03 -7.2201409e-09 -1.3890273e+03 - -2.7192183e+03 2.1345796e+02 -1.4139861e+03 - -2.6811824e+03 3.5064377e+02 -1.4671502e+03 - -2.6438532e+03 4.0739704e+02 -1.5178376e+03 - -2.6150452e+03 4.1114832e+02 -1.5545391e+03 - -2.5945640e+03 3.8440191e+02 -1.5773785e+03 - -2.5802770e+03 3.4025846e+02 -1.5893347e+03 - -2.5701702e+03 2.8585216e+02 -1.5932512e+03 - -2.5627163e+03 2.2513068e+02 -1.5912926e+03 - -2.5568154e+03 1.6037352e+02 -1.5850217e+03 - -2.5516786e+03 9.2964682e+01 -1.5755629e+03 - -2.5467328e+03 2.3788533e+01 -1.5637379e+03 - -2.5415535e+03 -4.6561038e+01 -1.5501599e+03 - -2.5358202e+03 -1.1766591e+02 -1.5352974e+03 - -2.5292864e+03 -1.8921841e+02 -1.5195169e+03 - -2.5217596e+03 -2.6098274e+02 -1.5031108e+03 - -2.5130871e+03 -3.3277152e+02 -1.4863173e+03 - -2.5031466e+03 -4.0443095e+02 -1.4693337e+03 - -2.4918397e+03 -4.7583128e+02 -1.4523255e+03 - -2.4790864e+03 -5.4686045e+02 -1.4354339e+03 - -2.4648219e+03 -6.1741982e+02 -1.4187799e+03 - -2.4489939e+03 -6.8742113e+02 -1.4024684e+03 - -2.4315605e+03 -7.5678437e+02 -1.3865910e+03 - -2.4124884e+03 -8.2543624e+02 -1.3712279e+03 - -2.3917519e+03 -8.9330900e+02 -1.3564495e+03 - -2.3693317e+03 -9.6033959e+02 -1.3423180e+03 - -2.3452145e+03 -1.0264690e+03 -1.3288883e+03 - -2.3193915e+03 -1.0916416e+03 -1.3162087e+03 - -2.2918587e+03 -1.1558049e+03 -1.3043220e+03 - -2.2626161e+03 -1.2189092e+03 -1.2932656e+03 - -2.2316669e+03 -1.2809071e+03 -1.2830727e+03 - -2.1990178e+03 -1.3417536e+03 -1.2737720e+03 - -2.1646783e+03 -1.4014056e+03 -1.2653886e+03 - -2.1286606e+03 -1.4598220e+03 -1.2579441e+03 - -2.0909793e+03 -1.5169633e+03 -1.2514569e+03 - -2.0516509e+03 -1.5727918e+03 -1.2459427e+03 - -2.0106946e+03 -1.6272713e+03 -1.2414141e+03 - -1.9681308e+03 -1.6803672e+03 -1.2378815e+03 - -1.9239822e+03 -1.7320463e+03 -1.2353527e+03 - -1.8782729e+03 -1.7822769e+03 -1.2338333e+03 - -1.8310287e+03 -1.8310287e+03 -1.2333264e+03 - -1.7822769e+03 -1.8782729e+03 -1.2338333e+03 - -1.7320463e+03 -1.9239822e+03 -1.2353527e+03 - -1.6803672e+03 -1.9681308e+03 -1.2378815e+03 - -1.6272713e+03 -2.0106946e+03 -1.2414141e+03 - -1.5727918e+03 -2.0516509e+03 -1.2459427e+03 - -1.5169633e+03 -2.0909793e+03 -1.2514569e+03 - -1.4598220e+03 -2.1286606e+03 -1.2579441e+03 - -1.4014056e+03 -2.1646783e+03 -1.2653886e+03 - -1.3417536e+03 -2.1990178e+03 -1.2737720e+03 - -1.2809071e+03 -2.2316669e+03 -1.2830727e+03 - -1.2189092e+03 -2.2626161e+03 -1.2932656e+03 - -1.1558049e+03 -2.2918587e+03 -1.3043220e+03 - -1.0916416e+03 -2.3193915e+03 -1.3162087e+03 - -1.0264690e+03 -2.3452145e+03 -1.3288883e+03 - -9.6033959e+02 -2.3693317e+03 -1.3423180e+03 - -8.9330900e+02 -2.3917519e+03 -1.3564495e+03 - -8.2543624e+02 -2.4124884e+03 -1.3712279e+03 - -7.5678437e+02 -2.4315605e+03 -1.3865910e+03 - -6.8742113e+02 -2.4489939e+03 -1.4024684e+03 - -6.1741982e+02 -2.4648219e+03 -1.4187799e+03 - -5.4686045e+02 -2.4790864e+03 -1.4354339e+03 - -4.7583128e+02 -2.4918397e+03 -1.4523255e+03 - -4.0443095e+02 -2.5031466e+03 -1.4693337e+03 - -3.3277152e+02 -2.5130871e+03 -1.4863173e+03 - -2.6098274e+02 -2.5217596e+03 -1.5031108e+03 - -1.8921841e+02 -2.5292864e+03 -1.5195169e+03 - -1.1766591e+02 -2.5358202e+03 -1.5352974e+03 - -4.6561038e+01 -2.5415535e+03 -1.5501599e+03 - 2.3788533e+01 -2.5467328e+03 -1.5637379e+03 - 9.2964682e+01 -2.5516786e+03 -1.5755629e+03 - 1.6037352e+02 -2.5568154e+03 -1.5850217e+03 - 2.2513068e+02 -2.5627163e+03 -1.5912926e+03 - 2.8585216e+02 -2.5701702e+03 -1.5932512e+03 - 3.4025846e+02 -2.5802770e+03 -1.5893347e+03 - 3.8440191e+02 -2.5945640e+03 -1.5773785e+03 - 4.1114832e+02 -2.6150452e+03 -1.5545391e+03 - 4.0739704e+02 -2.6438532e+03 -1.5178376e+03 - 3.5064377e+02 -2.6811824e+03 -1.4671502e+03 - 2.1345796e+02 -2.7192183e+03 -1.4139861e+03 - 2.4067136e-09 -2.7368824e+03 -1.3890273e+03 - -2.1345796e+02 -2.7192183e+03 -1.4139861e+03 - -3.5064377e+02 -2.6811824e+03 -1.4671502e+03 - -4.0739704e+02 -2.6438532e+03 -1.5178376e+03 - -4.1114832e+02 -2.6150452e+03 -1.5545391e+03 - -3.8440191e+02 -2.5945640e+03 -1.5773785e+03 - -3.4025846e+02 -2.5802770e+03 -1.5893347e+03 - -2.8585216e+02 -2.5701702e+03 -1.5932512e+03 - -2.2513068e+02 -2.5627163e+03 -1.5912926e+03 - -1.6037352e+02 -2.5568154e+03 -1.5850217e+03 - -9.2964682e+01 -2.5516786e+03 -1.5755629e+03 - -2.3788533e+01 -2.5467328e+03 -1.5637379e+03 - 4.6561038e+01 -2.5415535e+03 -1.5501599e+03 - 1.1766591e+02 -2.5358202e+03 -1.5352974e+03 - 1.8921841e+02 -2.5292864e+03 -1.5195169e+03 - 2.6098274e+02 -2.5217596e+03 -1.5031108e+03 - 3.3277152e+02 -2.5130871e+03 -1.4863173e+03 - 4.0443095e+02 -2.5031466e+03 -1.4693337e+03 - 4.7583128e+02 -2.4918397e+03 -1.4523255e+03 - 5.4686045e+02 -2.4790864e+03 -1.4354339e+03 - 6.1741982e+02 -2.4648219e+03 -1.4187799e+03 - 6.8742113e+02 -2.4489939e+03 -1.4024684e+03 - 7.5678437e+02 -2.4315605e+03 -1.3865910e+03 - 8.2543624e+02 -2.4124884e+03 -1.3712279e+03 - 8.9330900e+02 -2.3917519e+03 -1.3564495e+03 - 9.6033959e+02 -2.3693317e+03 -1.3423180e+03 - 1.0264690e+03 -2.3452145e+03 -1.3288883e+03 - 1.0916416e+03 -2.3193915e+03 -1.3162087e+03 - 1.1558049e+03 -2.2918587e+03 -1.3043220e+03 - 1.2189092e+03 -2.2626161e+03 -1.2932656e+03 - 1.2809071e+03 -2.2316669e+03 -1.2830727e+03 - 1.3417536e+03 -2.1990178e+03 -1.2737720e+03 - 1.4014056e+03 -2.1646783e+03 -1.2653886e+03 - 1.4598220e+03 -2.1286606e+03 -1.2579441e+03 - 1.5169633e+03 -2.0909793e+03 -1.2514569e+03 - 1.5727918e+03 -2.0516509e+03 -1.2459427e+03 - 1.6272713e+03 -2.0106946e+03 -1.2414141e+03 - 1.6803672e+03 -1.9681308e+03 -1.2378815e+03 - 1.7320463e+03 -1.9239822e+03 -1.2353527e+03 - 1.7822769e+03 -1.8782729e+03 -1.2338333e+03 - 1.8310287e+03 -1.8310287e+03 -1.2333264e+03 - 1.8782729e+03 -1.7822769e+03 -1.2338333e+03 - 1.9239822e+03 -1.7320463e+03 -1.2353527e+03 - 1.9681308e+03 -1.6803672e+03 -1.2378815e+03 - 2.0106946e+03 -1.6272713e+03 -1.2414141e+03 - 2.0516509e+03 -1.5727918e+03 -1.2459427e+03 - 2.0909793e+03 -1.5169633e+03 -1.2514569e+03 - 2.1286606e+03 -1.4598220e+03 -1.2579441e+03 - 2.1646783e+03 -1.4014056e+03 -1.2653886e+03 - 2.1990178e+03 -1.3417536e+03 -1.2737720e+03 - 2.2316669e+03 -1.2809071e+03 -1.2830727e+03 - 2.2626161e+03 -1.2189092e+03 -1.2932656e+03 - 2.2918587e+03 -1.1558049e+03 -1.3043220e+03 - 2.3193915e+03 -1.0916416e+03 -1.3162087e+03 - 2.3452145e+03 -1.0264690e+03 -1.3288883e+03 - 2.3693317e+03 -9.6033959e+02 -1.3423180e+03 - 2.3917519e+03 -8.9330900e+02 -1.3564495e+03 - 2.4124884e+03 -8.2543624e+02 -1.3712279e+03 - 2.4315605e+03 -7.5678437e+02 -1.3865910e+03 - 2.4489939e+03 -6.8742113e+02 -1.4024684e+03 - 2.4648219e+03 -6.1741982e+02 -1.4187799e+03 - 2.4790864e+03 -5.4686045e+02 -1.4354339e+03 - 2.4918397e+03 -4.7583128e+02 -1.4523255e+03 - 2.5031466e+03 -4.0443095e+02 -1.4693337e+03 - 2.5130871e+03 -3.3277152e+02 -1.4863173e+03 - 2.5217596e+03 -2.6098274e+02 -1.5031108e+03 - 2.5292864e+03 -1.8921841e+02 -1.5195169e+03 - 2.5358202e+03 -1.1766591e+02 -1.5352974e+03 - 2.5415535e+03 -4.6561038e+01 -1.5501599e+03 - 2.5467328e+03 2.3788533e+01 -1.5637379e+03 - 2.5516786e+03 9.2964682e+01 -1.5755629e+03 - 2.5568154e+03 1.6037352e+02 -1.5850217e+03 - 2.5627163e+03 2.2513068e+02 -1.5912926e+03 - 2.5701702e+03 2.8585216e+02 -1.5932512e+03 - 2.5802770e+03 3.4025846e+02 -1.5893347e+03 - 2.5945640e+03 3.8440191e+02 -1.5773785e+03 - 2.6150452e+03 4.1114832e+02 -1.5545391e+03 - 2.6438532e+03 4.0739704e+02 -1.5178376e+03 - 2.6811824e+03 3.5064377e+02 -1.4671502e+03 - 2.7192183e+03 2.1345796e+02 -1.4139861e+03 - 2.7368824e+03 9.6268545e-09 -1.3890273e+03 - 2.6562809e+03 -2.4067136e-09 -1.4892226e+03 - 2.6469267e+03 -1.5937774e+02 -1.5024787e+03 - 2.6241321e+03 -2.7860447e+02 -1.5344155e+03 - 2.5975519e+03 -3.4504232e+02 -1.5706354e+03 - 2.5734276e+03 -3.6720985e+02 -1.6017419e+03 - 2.5537492e+03 -3.5837856e+02 -1.6246277e+03 - 2.5383077e+03 -3.2917668e+02 -1.6394670e+03 - 2.5261938e+03 -2.8671401e+02 -1.6475016e+03 - 2.5164383e+03 -2.3550366e+02 -1.6500906e+03 - 2.5082087e+03 -1.7840367e+02 -1.6484117e+03 - 2.5008380e+03 -1.1725907e+02 -1.6434137e+03 - 2.4938046e+03 -5.3295341e+01 -1.6358430e+03 - 2.4867012e+03 1.2646793e+01 -1.6262861e+03 - 2.4792085e+03 7.9970856e+01 -1.6152073e+03 - 2.4710737e+03 1.4823931e+02 -1.6029790e+03 - 2.4620947e+03 2.1712065e+02 -1.5899037e+03 - 2.4521087e+03 2.8635590e+02 -1.5762308e+03 - 2.4409831e+03 3.5573690e+02 -1.5621688e+03 - 2.4286098e+03 4.2509193e+02 -1.5478936e+03 - 2.4148998e+03 4.9427603e+02 -1.5335559e+03 - 2.3997800e+03 5.6316432e+02 -1.5192854e+03 - 2.3831905e+03 6.3164729e+02 -1.5051950e+03 - 2.3650823e+03 6.9962748e+02 -1.4913836e+03 - 2.3454159e+03 7.6701704e+02 -1.4779380e+03 - 2.3241597e+03 8.3373593e+02 -1.4649349e+03 - 2.3012892e+03 8.9971058e+02 -1.4524421e+03 - 2.2767858e+03 9.6487287e+02 -1.4405199e+03 - 2.2506367e+03 1.0291593e+03 -1.4292216e+03 - 2.2228335e+03 1.0925105e+03 -1.4185945e+03 - 2.1933726e+03 1.1548706e+03 -1.4086807e+03 - 2.1622539e+03 1.2161868e+03 -1.3995170e+03 - 2.1294810e+03 1.2764092e+03 -1.3911360e+03 - 2.0950609e+03 1.3354905e+03 -1.3835661e+03 - 2.0590034e+03 1.3933859e+03 -1.3768321e+03 - 2.0213210e+03 1.4500526e+03 -1.3709551e+03 - 1.9820289e+03 1.5054500e+03 -1.3659531e+03 - 1.9411445e+03 1.5595394e+03 -1.3618408e+03 - 1.8986877e+03 1.6122842e+03 -1.3586302e+03 - 1.8546802e+03 1.6636494e+03 -1.3563304e+03 - 1.8091460e+03 1.7136020e+03 -1.3549480e+03 - 1.7621107e+03 1.7621107e+03 -1.3544868e+03 - 1.7136020e+03 1.8091460e+03 -1.3549480e+03 - 1.6636494e+03 1.8546802e+03 -1.3563304e+03 - 1.6122842e+03 1.8986877e+03 -1.3586302e+03 - 1.5595394e+03 1.9411445e+03 -1.3618408e+03 - 1.5054500e+03 1.9820289e+03 -1.3659531e+03 - 1.4500526e+03 2.0213210e+03 -1.3709551e+03 - 1.3933859e+03 2.0590034e+03 -1.3768321e+03 - 1.3354905e+03 2.0950609e+03 -1.3835661e+03 - 1.2764092e+03 2.1294810e+03 -1.3911360e+03 - 1.2161868e+03 2.1622539e+03 -1.3995170e+03 - 1.1548706e+03 2.1933726e+03 -1.4086807e+03 - 1.0925105e+03 2.2228335e+03 -1.4185945e+03 - 1.0291593e+03 2.2506367e+03 -1.4292216e+03 - 9.6487287e+02 2.2767858e+03 -1.4405199e+03 - 8.9971058e+02 2.3012892e+03 -1.4524421e+03 - 8.3373593e+02 2.3241597e+03 -1.4649349e+03 - 7.6701704e+02 2.3454159e+03 -1.4779380e+03 - 6.9962748e+02 2.3650823e+03 -1.4913836e+03 - 6.3164729e+02 2.3831905e+03 -1.5051950e+03 - 5.6316432e+02 2.3997800e+03 -1.5192854e+03 - 4.9427603e+02 2.4148998e+03 -1.5335559e+03 - 4.2509193e+02 2.4286098e+03 -1.5478936e+03 - 3.5573690e+02 2.4409831e+03 -1.5621688e+03 - 2.8635590e+02 2.4521087e+03 -1.5762308e+03 - 2.1712065e+02 2.4620947e+03 -1.5899037e+03 - 1.4823931e+02 2.4710737e+03 -1.6029790e+03 - 7.9970856e+01 2.4792085e+03 -1.6152073e+03 - 1.2646793e+01 2.4867012e+03 -1.6262861e+03 - -5.3295341e+01 2.4938046e+03 -1.6358430e+03 - -1.1725907e+02 2.5008380e+03 -1.6434137e+03 - -1.7840367e+02 2.5082087e+03 -1.6484117e+03 - -2.3550366e+02 2.5164383e+03 -1.6500906e+03 - -2.8671401e+02 2.5261938e+03 -1.6475016e+03 - -3.2917668e+02 2.5383077e+03 -1.6394670e+03 - -3.5837856e+02 2.5537492e+03 -1.6246277e+03 - -3.6720985e+02 2.5734276e+03 -1.6017419e+03 - -3.4504232e+02 2.5975519e+03 -1.5706354e+03 - -2.7860447e+02 2.6241321e+03 -1.5344155e+03 - -1.5937774e+02 2.6469267e+03 -1.5024787e+03 - 2.4067136e-09 2.6562809e+03 -1.4892226e+03 - 1.5937774e+02 2.6469267e+03 -1.5024787e+03 - 2.7860447e+02 2.6241321e+03 -1.5344155e+03 - 3.4504232e+02 2.5975519e+03 -1.5706354e+03 - 3.6720985e+02 2.5734276e+03 -1.6017419e+03 - 3.5837856e+02 2.5537492e+03 -1.6246277e+03 - 3.2917668e+02 2.5383077e+03 -1.6394670e+03 - 2.8671401e+02 2.5261938e+03 -1.6475016e+03 - 2.3550366e+02 2.5164383e+03 -1.6500906e+03 - 1.7840367e+02 2.5082087e+03 -1.6484117e+03 - 1.1725907e+02 2.5008380e+03 -1.6434137e+03 - 5.3295341e+01 2.4938046e+03 -1.6358430e+03 - -1.2646793e+01 2.4867012e+03 -1.6262861e+03 - -7.9970856e+01 2.4792085e+03 -1.6152073e+03 - -1.4823931e+02 2.4710737e+03 -1.6029790e+03 - -2.1712065e+02 2.4620947e+03 -1.5899037e+03 - -2.8635590e+02 2.4521087e+03 -1.5762308e+03 - -3.5573690e+02 2.4409831e+03 -1.5621688e+03 - -4.2509193e+02 2.4286098e+03 -1.5478936e+03 - -4.9427603e+02 2.4148998e+03 -1.5335559e+03 - -5.6316432e+02 2.3997800e+03 -1.5192854e+03 - -6.3164729e+02 2.3831905e+03 -1.5051950e+03 - -6.9962748e+02 2.3650823e+03 -1.4913836e+03 - -7.6701704e+02 2.3454159e+03 -1.4779380e+03 - -8.3373593e+02 2.3241597e+03 -1.4649349e+03 - -8.9971058e+02 2.3012892e+03 -1.4524421e+03 - -9.6487287e+02 2.2767858e+03 -1.4405199e+03 - -1.0291593e+03 2.2506367e+03 -1.4292216e+03 - -1.0925105e+03 2.2228336e+03 -1.4185945e+03 - -1.1548706e+03 2.1933726e+03 -1.4086807e+03 - -1.2161868e+03 2.1622539e+03 -1.3995170e+03 - -1.2764092e+03 2.1294810e+03 -1.3911360e+03 - -1.3354905e+03 2.0950609e+03 -1.3835661e+03 - -1.3933859e+03 2.0590034e+03 -1.3768321e+03 - -1.4500526e+03 2.0213210e+03 -1.3709551e+03 - -1.5054500e+03 1.9820289e+03 -1.3659531e+03 - -1.5595394e+03 1.9411445e+03 -1.3618408e+03 - -1.6122842e+03 1.8986877e+03 -1.3586302e+03 - -1.6636494e+03 1.8546802e+03 -1.3563304e+03 - -1.7136020e+03 1.8091460e+03 -1.3549480e+03 - -1.7621107e+03 1.7621107e+03 -1.3544868e+03 - -1.8091460e+03 1.7136020e+03 -1.3549480e+03 - -1.8546802e+03 1.6636494e+03 -1.3563304e+03 - -1.8986877e+03 1.6122842e+03 -1.3586302e+03 - -1.9411445e+03 1.5595394e+03 -1.3618408e+03 - -1.9820289e+03 1.5054500e+03 -1.3659531e+03 - -2.0213210e+03 1.4500526e+03 -1.3709551e+03 - -2.0590034e+03 1.3933859e+03 -1.3768321e+03 - -2.0950609e+03 1.3354905e+03 -1.3835661e+03 - -2.1294810e+03 1.2764092e+03 -1.3911360e+03 - -2.1622539e+03 1.2161868e+03 -1.3995170e+03 - -2.1933726e+03 1.1548706e+03 -1.4086807e+03 - -2.2228335e+03 1.0925105e+03 -1.4185945e+03 - -2.2506367e+03 1.0291593e+03 -1.4292216e+03 - -2.2767858e+03 9.6487287e+02 -1.4405199e+03 - -2.3012892e+03 8.9971058e+02 -1.4524421e+03 - -2.3241597e+03 8.3373593e+02 -1.4649349e+03 - -2.3454159e+03 7.6701704e+02 -1.4779380e+03 - -2.3650823e+03 6.9962748e+02 -1.4913836e+03 - -2.3831905e+03 6.3164729e+02 -1.5051950e+03 - -2.3997800e+03 5.6316432e+02 -1.5192854e+03 - -2.4148998e+03 4.9427603e+02 -1.5335559e+03 - -2.4286098e+03 4.2509193e+02 -1.5478936e+03 - -2.4409831e+03 3.5573690e+02 -1.5621688e+03 - -2.4521087e+03 2.8635590e+02 -1.5762308e+03 - -2.4620947e+03 2.1712065e+02 -1.5899037e+03 - -2.4710737e+03 1.4823931e+02 -1.6029790e+03 - -2.4792085e+03 7.9970856e+01 -1.6152073e+03 - -2.4867012e+03 1.2646793e+01 -1.6262861e+03 - -2.4938046e+03 -5.3295341e+01 -1.6358430e+03 - -2.5008380e+03 -1.1725907e+02 -1.6434137e+03 - -2.5082087e+03 -1.7840367e+02 -1.6484117e+03 - -2.5164383e+03 -2.3550366e+02 -1.6500906e+03 - -2.5261938e+03 -2.8671401e+02 -1.6475016e+03 - -2.5383077e+03 -3.2917668e+02 -1.6394670e+03 - -2.5537492e+03 -3.5837856e+02 -1.6246277e+03 - -2.5734276e+03 -3.6720985e+02 -1.6017419e+03 - -2.5975519e+03 -3.4504232e+02 -1.5706354e+03 - -2.6241321e+03 -2.7860447e+02 -1.5344155e+03 - -2.6469267e+03 -1.5937774e+02 -1.5024787e+03 - -2.6562809e+03 0.0000000e+00 -1.4892226e+03 - -2.6469267e+03 1.5937774e+02 -1.5024787e+03 - -2.6241321e+03 2.7860447e+02 -1.5344155e+03 - -2.5975519e+03 3.4504232e+02 -1.5706354e+03 - -2.5734276e+03 3.6720985e+02 -1.6017419e+03 - -2.5537492e+03 3.5837856e+02 -1.6246277e+03 - -2.5383077e+03 3.2917668e+02 -1.6394670e+03 - -2.5261938e+03 2.8671401e+02 -1.6475016e+03 - -2.5164383e+03 2.3550366e+02 -1.6500906e+03 - -2.5082087e+03 1.7840367e+02 -1.6484117e+03 - -2.5008380e+03 1.1725907e+02 -1.6434137e+03 - -2.4938046e+03 5.3295341e+01 -1.6358430e+03 - -2.4867012e+03 -1.2646793e+01 -1.6262861e+03 - -2.4792085e+03 -7.9970856e+01 -1.6152073e+03 - -2.4710737e+03 -1.4823931e+02 -1.6029790e+03 - -2.4620947e+03 -2.1712065e+02 -1.5899037e+03 - -2.4521087e+03 -2.8635590e+02 -1.5762308e+03 - -2.4409831e+03 -3.5573690e+02 -1.5621688e+03 - -2.4286098e+03 -4.2509193e+02 -1.5478936e+03 - -2.4148998e+03 -4.9427603e+02 -1.5335559e+03 - -2.3997800e+03 -5.6316432e+02 -1.5192854e+03 - -2.3831905e+03 -6.3164729e+02 -1.5051950e+03 - -2.3650823e+03 -6.9962748e+02 -1.4913836e+03 - -2.3454159e+03 -7.6701704e+02 -1.4779380e+03 - -2.3241597e+03 -8.3373593e+02 -1.4649349e+03 - -2.3012892e+03 -8.9971058e+02 -1.4524421e+03 - -2.2767858e+03 -9.6487287e+02 -1.4405199e+03 - -2.2506367e+03 -1.0291593e+03 -1.4292216e+03 - -2.2228335e+03 -1.0925105e+03 -1.4185945e+03 - -2.1933726e+03 -1.1548706e+03 -1.4086807e+03 - -2.1622539e+03 -1.2161868e+03 -1.3995170e+03 - -2.1294810e+03 -1.2764092e+03 -1.3911360e+03 - -2.0950609e+03 -1.3354905e+03 -1.3835661e+03 - -2.0590034e+03 -1.3933859e+03 -1.3768321e+03 - -2.0213210e+03 -1.4500526e+03 -1.3709551e+03 - -1.9820289e+03 -1.5054500e+03 -1.3659531e+03 - -1.9411445e+03 -1.5595394e+03 -1.3618408e+03 - -1.8986877e+03 -1.6122842e+03 -1.3586302e+03 - -1.8546802e+03 -1.6636494e+03 -1.3563304e+03 - -1.8091460e+03 -1.7136020e+03 -1.3549480e+03 - -1.7621107e+03 -1.7621107e+03 -1.3544868e+03 - -1.7136020e+03 -1.8091460e+03 -1.3549480e+03 - -1.6636494e+03 -1.8546802e+03 -1.3563304e+03 - -1.6122842e+03 -1.8986877e+03 -1.3586302e+03 - -1.5595394e+03 -1.9411445e+03 -1.3618408e+03 - -1.5054500e+03 -1.9820289e+03 -1.3659531e+03 - -1.4500526e+03 -2.0213210e+03 -1.3709551e+03 - -1.3933859e+03 -2.0590034e+03 -1.3768321e+03 - -1.3354905e+03 -2.0950609e+03 -1.3835661e+03 - -1.2764092e+03 -2.1294810e+03 -1.3911360e+03 - -1.2161868e+03 -2.1622539e+03 -1.3995170e+03 - -1.1548706e+03 -2.1933726e+03 -1.4086807e+03 - -1.0925105e+03 -2.2228335e+03 -1.4185945e+03 - -1.0291593e+03 -2.2506367e+03 -1.4292216e+03 - -9.6487287e+02 -2.2767858e+03 -1.4405199e+03 - -8.9971058e+02 -2.3012892e+03 -1.4524421e+03 - -8.3373593e+02 -2.3241597e+03 -1.4649349e+03 - -7.6701704e+02 -2.3454159e+03 -1.4779380e+03 - -6.9962748e+02 -2.3650823e+03 -1.4913836e+03 - -6.3164729e+02 -2.3831905e+03 -1.5051950e+03 - -5.6316432e+02 -2.3997800e+03 -1.5192854e+03 - -4.9427603e+02 -2.4148998e+03 -1.5335559e+03 - -4.2509193e+02 -2.4286098e+03 -1.5478936e+03 - -3.5573690e+02 -2.4409831e+03 -1.5621688e+03 - -2.8635590e+02 -2.4521087e+03 -1.5762308e+03 - -2.1712065e+02 -2.4620947e+03 -1.5899037e+03 - -1.4823931e+02 -2.4710737e+03 -1.6029790e+03 - -7.9970856e+01 -2.4792085e+03 -1.6152073e+03 - -1.2646793e+01 -2.4867012e+03 -1.6262861e+03 - 5.3295341e+01 -2.4938046e+03 -1.6358430e+03 - 1.1725907e+02 -2.5008380e+03 -1.6434137e+03 - 1.7840367e+02 -2.5082087e+03 -1.6484117e+03 - 2.3550366e+02 -2.5164383e+03 -1.6500906e+03 - 2.8671401e+02 -2.5261938e+03 -1.6475016e+03 - 3.2917668e+02 -2.5383077e+03 -1.6394670e+03 - 3.5837856e+02 -2.5537492e+03 -1.6246277e+03 - 3.6720985e+02 -2.5734276e+03 -1.6017419e+03 - 3.4504232e+02 -2.5975519e+03 -1.5706354e+03 - 2.7860447e+02 -2.6241321e+03 -1.5344155e+03 - 1.5937774e+02 -2.6469267e+03 -1.5024787e+03 - -2.4067136e-09 -2.6562809e+03 -1.4892226e+03 - -1.5937774e+02 -2.6469267e+03 -1.5024787e+03 - -2.7860447e+02 -2.6241321e+03 -1.5344155e+03 - -3.4504232e+02 -2.5975519e+03 -1.5706354e+03 - -3.6720985e+02 -2.5734276e+03 -1.6017419e+03 - -3.5837856e+02 -2.5537492e+03 -1.6246277e+03 - -3.2917668e+02 -2.5383077e+03 -1.6394670e+03 - -2.8671401e+02 -2.5261938e+03 -1.6475016e+03 - -2.3550366e+02 -2.5164383e+03 -1.6500906e+03 - -1.7840367e+02 -2.5082087e+03 -1.6484117e+03 - -1.1725907e+02 -2.5008380e+03 -1.6434137e+03 - -5.3295341e+01 -2.4938046e+03 -1.6358430e+03 - 1.2646793e+01 -2.4867012e+03 -1.6262861e+03 - 7.9970856e+01 -2.4792085e+03 -1.6152073e+03 - 1.4823931e+02 -2.4710737e+03 -1.6029790e+03 - 2.1712065e+02 -2.4620947e+03 -1.5899037e+03 - 2.8635590e+02 -2.4521087e+03 -1.5762308e+03 - 3.5573690e+02 -2.4409831e+03 -1.5621688e+03 - 4.2509193e+02 -2.4286098e+03 -1.5478936e+03 - 4.9427603e+02 -2.4148998e+03 -1.5335559e+03 - 5.6316432e+02 -2.3997800e+03 -1.5192854e+03 - 6.3164729e+02 -2.3831905e+03 -1.5051950e+03 - 6.9962748e+02 -2.3650823e+03 -1.4913836e+03 - 7.6701704e+02 -2.3454159e+03 -1.4779380e+03 - 8.3373593e+02 -2.3241597e+03 -1.4649349e+03 - 8.9971058e+02 -2.3012892e+03 -1.4524421e+03 - 9.6487287e+02 -2.2767858e+03 -1.4405199e+03 - 1.0291593e+03 -2.2506367e+03 -1.4292216e+03 - 1.0925105e+03 -2.2228335e+03 -1.4185945e+03 - 1.1548706e+03 -2.1933726e+03 -1.4086807e+03 - 1.2161868e+03 -2.1622539e+03 -1.3995170e+03 - 1.2764092e+03 -2.1294810e+03 -1.3911360e+03 - 1.3354905e+03 -2.0950609e+03 -1.3835661e+03 - 1.3933859e+03 -2.0590034e+03 -1.3768321e+03 - 1.4500526e+03 -2.0213210e+03 -1.3709551e+03 - 1.5054500e+03 -1.9820289e+03 -1.3659531e+03 - 1.5595394e+03 -1.9411445e+03 -1.3618408e+03 - 1.6122842e+03 -1.8986877e+03 -1.3586302e+03 - 1.6636494e+03 -1.8546802e+03 -1.3563304e+03 - 1.7136020e+03 -1.8091460e+03 -1.3549480e+03 - 1.7621107e+03 -1.7621107e+03 -1.3544868e+03 - 1.8091460e+03 -1.7136020e+03 -1.3549480e+03 - 1.8546802e+03 -1.6636494e+03 -1.3563304e+03 - 1.8986877e+03 -1.6122842e+03 -1.3586302e+03 - 1.9411445e+03 -1.5595394e+03 -1.3618408e+03 - 1.9820289e+03 -1.5054500e+03 -1.3659531e+03 - 2.0213210e+03 -1.4500526e+03 -1.3709551e+03 - 2.0590034e+03 -1.3933859e+03 -1.3768321e+03 - 2.0950609e+03 -1.3354905e+03 -1.3835661e+03 - 2.1294810e+03 -1.2764092e+03 -1.3911360e+03 - 2.1622539e+03 -1.2161868e+03 -1.3995170e+03 - 2.1933726e+03 -1.1548706e+03 -1.4086807e+03 - 2.2228335e+03 -1.0925105e+03 -1.4185945e+03 - 2.2506367e+03 -1.0291593e+03 -1.4292216e+03 - 2.2767858e+03 -9.6487287e+02 -1.4405199e+03 - 2.3012892e+03 -8.9971058e+02 -1.4524421e+03 - 2.3241597e+03 -8.3373593e+02 -1.4649349e+03 - 2.3454159e+03 -7.6701704e+02 -1.4779380e+03 - 2.3650823e+03 -6.9962748e+02 -1.4913836e+03 - 2.3831905e+03 -6.3164729e+02 -1.5051950e+03 - 2.3997800e+03 -5.6316432e+02 -1.5192854e+03 - 2.4148998e+03 -4.9427603e+02 -1.5335559e+03 - 2.4286098e+03 -4.2509193e+02 -1.5478936e+03 - 2.4409831e+03 -3.5573690e+02 -1.5621688e+03 - 2.4521087e+03 -2.8635590e+02 -1.5762308e+03 - 2.4620947e+03 -2.1712065e+02 -1.5899037e+03 - 2.4710737e+03 -1.4823931e+02 -1.6029790e+03 - 2.4792085e+03 -7.9970856e+01 -1.6152073e+03 - 2.4867012e+03 -1.2646793e+01 -1.6262861e+03 - 2.4938046e+03 5.3295341e+01 -1.6358430e+03 - 2.5008380e+03 1.1725907e+02 -1.6434137e+03 - 2.5082087e+03 1.7840367e+02 -1.6484117e+03 - 2.5164383e+03 2.3550366e+02 -1.6500906e+03 - 2.5261938e+03 2.8671401e+02 -1.6475016e+03 - 2.5383077e+03 3.2917668e+02 -1.6394670e+03 - 2.5537492e+03 3.5837856e+02 -1.6246277e+03 - 2.5734276e+03 3.6720985e+02 -1.6017419e+03 - 2.5975519e+03 3.4504232e+02 -1.5706354e+03 - 2.6241321e+03 2.7860447e+02 -1.5344155e+03 - 2.6469267e+03 1.5937774e+02 -1.5024787e+03 - 2.6562809e+03 2.4067136e-09 -1.4892226e+03 - 2.5718942e+03 -2.4067136e-09 -1.5900070e+03 - 2.5662352e+03 -1.2749252e+02 -1.5980713e+03 - 2.5515395e+03 -2.3055980e+02 -1.6187598e+03 - 2.5326133e+03 -2.9743620e+02 -1.6446628e+03 - 2.5135165e+03 -3.2918024e+02 -1.6694601e+03 - 2.4963404e+03 -3.3273236e+02 -1.6898130e+03 - 2.4816540e+03 -3.1558231e+02 -1.7047113e+03 - 2.4692469e+03 -2.8375624e+02 -1.7143542e+03 - 2.4586217e+03 -2.4160459e+02 -1.7194025e+03 - 2.4492333e+03 -1.9214802e+02 -1.7206113e+03 - 2.4405828e+03 -1.3746981e+02 -1.7186833e+03 - 2.4322446e+03 -7.9020427e+01 -1.7142241e+03 - 2.4238656e+03 -1.7827811e+01 -1.7077403e+03 - 2.4151562e+03 4.5363265e+01 -1.6996514e+03 - 2.4058792e+03 1.1000003e+02 -1.6903050e+03 - 2.3958401e+03 1.7566188e+02 -1.6799905e+03 - 2.3848785e+03 2.4202078e+02 -1.6689508e+03 - 2.3728618e+03 3.0881467e+02 -1.6573916e+03 - 2.3596799e+03 3.7582941e+02 -1.6454888e+03 - 2.3452413e+03 4.4288623e+02 -1.6333939e+03 - 2.3294696e+03 5.0983305e+02 -1.6212385e+03 - 2.3123014e+03 5.7653818e+02 -1.6091377e+03 - 2.2936844e+03 6.4288587e+02 -1.5971929e+03 - 2.2735755e+03 7.0877301e+02 -1.5854935e+03 - 2.2519397e+03 7.7410665e+02 -1.5741188e+03 - 2.2287493e+03 8.3880223e+02 -1.5631394e+03 - 2.2039829e+03 9.0278215e+02 -1.5526181e+03 - 2.1776244e+03 9.6597470e+02 -1.5426109e+03 - 2.1496631e+03 1.0283132e+03 -1.5331678e+03 - 2.1200927e+03 1.0897355e+03 -1.5243330e+03 - 2.0889111e+03 1.1501832e+03 -1.5161460e+03 - 2.0561197e+03 1.2096014e+03 -1.5086414e+03 - 2.0217238e+03 1.2679385e+03 -1.5018497e+03 - 1.9857316e+03 1.3251455e+03 -1.4957977e+03 - 1.9481545e+03 1.3811763e+03 -1.4905080e+03 - 1.9090067e+03 1.4359873e+03 -1.4860003e+03 - 1.8683047e+03 1.4895371e+03 -1.4822906e+03 - 1.8260680e+03 1.5417868e+03 -1.4793920e+03 - 1.7823182e+03 1.5926995e+03 -1.4773145e+03 - 1.7370792e+03 1.6422405e+03 -1.4760652e+03 - 1.6903772e+03 1.6903772e+03 -1.4756483e+03 - 1.6422405e+03 1.7370792e+03 -1.4760652e+03 - 1.5926995e+03 1.7823182e+03 -1.4773145e+03 - 1.5417868e+03 1.8260680e+03 -1.4793920e+03 - 1.4895371e+03 1.8683047e+03 -1.4822906e+03 - 1.4359873e+03 1.9090067e+03 -1.4860003e+03 - 1.3811763e+03 1.9481545e+03 -1.4905080e+03 - 1.3251455e+03 1.9857316e+03 -1.4957977e+03 - 1.2679385e+03 2.0217238e+03 -1.5018497e+03 - 1.2096014e+03 2.0561197e+03 -1.5086414e+03 - 1.1501832e+03 2.0889111e+03 -1.5161460e+03 - 1.0897355e+03 2.1200927e+03 -1.5243330e+03 - 1.0283132e+03 2.1496631e+03 -1.5331678e+03 - 9.6597470e+02 2.1776244e+03 -1.5426109e+03 - 9.0278215e+02 2.2039829e+03 -1.5526181e+03 - 8.3880223e+02 2.2287493e+03 -1.5631394e+03 - 7.7410665e+02 2.2519397e+03 -1.5741188e+03 - 7.0877301e+02 2.2735755e+03 -1.5854935e+03 - 6.4288587e+02 2.2936844e+03 -1.5971929e+03 - 5.7653818e+02 2.3123014e+03 -1.6091377e+03 - 5.0983305e+02 2.3294696e+03 -1.6212385e+03 - 4.4288623e+02 2.3452413e+03 -1.6333939e+03 - 3.7582941e+02 2.3596799e+03 -1.6454888e+03 - 3.0881467e+02 2.3728618e+03 -1.6573916e+03 - 2.4202078e+02 2.3848785e+03 -1.6689508e+03 - 1.7566188e+02 2.3958401e+03 -1.6799905e+03 - 1.1000003e+02 2.4058792e+03 -1.6903050e+03 - 4.5363265e+01 2.4151562e+03 -1.6996514e+03 - -1.7827811e+01 2.4238656e+03 -1.7077403e+03 - -7.9020427e+01 2.4322446e+03 -1.7142241e+03 - -1.3746981e+02 2.4405828e+03 -1.7186833e+03 - -1.9214802e+02 2.4492333e+03 -1.7206113e+03 - -2.4160459e+02 2.4586217e+03 -1.7194025e+03 - -2.8375624e+02 2.4692469e+03 -1.7143542e+03 - -3.1558231e+02 2.4816540e+03 -1.7047113e+03 - -3.3273236e+02 2.4963404e+03 -1.6898130e+03 - -3.2918024e+02 2.5135165e+03 -1.6694601e+03 - -2.9743620e+02 2.5326133e+03 -1.6446628e+03 - -2.3055980e+02 2.5515395e+03 -1.6187598e+03 - -1.2749252e+02 2.5662352e+03 -1.5980713e+03 - -2.4067136e-09 2.5718942e+03 -1.5900070e+03 - 1.2749252e+02 2.5662352e+03 -1.5980713e+03 - 2.3055980e+02 2.5515395e+03 -1.6187598e+03 - 2.9743620e+02 2.5326133e+03 -1.6446628e+03 - 3.2918024e+02 2.5135165e+03 -1.6694601e+03 - 3.3273236e+02 2.4963404e+03 -1.6898130e+03 - 3.1558231e+02 2.4816540e+03 -1.7047113e+03 - 2.8375624e+02 2.4692469e+03 -1.7143542e+03 - 2.4160459e+02 2.4586217e+03 -1.7194025e+03 - 1.9214802e+02 2.4492333e+03 -1.7206113e+03 - 1.3746981e+02 2.4405828e+03 -1.7186833e+03 - 7.9020427e+01 2.4322446e+03 -1.7142241e+03 - 1.7827811e+01 2.4238656e+03 -1.7077403e+03 - -4.5363265e+01 2.4151562e+03 -1.6996514e+03 - -1.1000003e+02 2.4058792e+03 -1.6903050e+03 - -1.7566188e+02 2.3958401e+03 -1.6799905e+03 - -2.4202078e+02 2.3848785e+03 -1.6689508e+03 - -3.0881467e+02 2.3728618e+03 -1.6573916e+03 - -3.7582941e+02 2.3596799e+03 -1.6454888e+03 - -4.4288623e+02 2.3452413e+03 -1.6333939e+03 - -5.0983305e+02 2.3294696e+03 -1.6212385e+03 - -5.7653818e+02 2.3123014e+03 -1.6091377e+03 - -6.4288587e+02 2.2936844e+03 -1.5971929e+03 - -7.0877301e+02 2.2735755e+03 -1.5854935e+03 - -7.7410665e+02 2.2519397e+03 -1.5741188e+03 - -8.3880223e+02 2.2287493e+03 -1.5631394e+03 - -9.0278215e+02 2.2039829e+03 -1.5526181e+03 - -9.6597470e+02 2.1776244e+03 -1.5426109e+03 - -1.0283132e+03 2.1496631e+03 -1.5331678e+03 - -1.0897355e+03 2.1200927e+03 -1.5243330e+03 - -1.1501832e+03 2.0889111e+03 -1.5161460e+03 - -1.2096014e+03 2.0561197e+03 -1.5086414e+03 - -1.2679385e+03 2.0217238e+03 -1.5018497e+03 - -1.3251455e+03 1.9857316e+03 -1.4957977e+03 - -1.3811763e+03 1.9481545e+03 -1.4905080e+03 - -1.4359873e+03 1.9090067e+03 -1.4860003e+03 - -1.4895371e+03 1.8683047e+03 -1.4822906e+03 - -1.5417868e+03 1.8260680e+03 -1.4793920e+03 - -1.5926995e+03 1.7823182e+03 -1.4773145e+03 - -1.6422405e+03 1.7370792e+03 -1.4760652e+03 - -1.6903772e+03 1.6903772e+03 -1.4756483e+03 - -1.7370792e+03 1.6422405e+03 -1.4760652e+03 - -1.7823182e+03 1.5926995e+03 -1.4773145e+03 - -1.8260680e+03 1.5417868e+03 -1.4793920e+03 - -1.8683047e+03 1.4895371e+03 -1.4822906e+03 - -1.9090067e+03 1.4359873e+03 -1.4860003e+03 - -1.9481545e+03 1.3811763e+03 -1.4905080e+03 - -1.9857316e+03 1.3251455e+03 -1.4957977e+03 - -2.0217238e+03 1.2679385e+03 -1.5018497e+03 - -2.0561197e+03 1.2096014e+03 -1.5086414e+03 - -2.0889111e+03 1.1501832e+03 -1.5161460e+03 - -2.1200927e+03 1.0897355e+03 -1.5243330e+03 - -2.1496631e+03 1.0283132e+03 -1.5331678e+03 - -2.1776244e+03 9.6597470e+02 -1.5426109e+03 - -2.2039829e+03 9.0278215e+02 -1.5526181e+03 - -2.2287493e+03 8.3880223e+02 -1.5631394e+03 - -2.2519397e+03 7.7410665e+02 -1.5741188e+03 - -2.2735755e+03 7.0877301e+02 -1.5854935e+03 - -2.2936844e+03 6.4288587e+02 -1.5971929e+03 - -2.3123014e+03 5.7653818e+02 -1.6091377e+03 - -2.3294696e+03 5.0983305e+02 -1.6212385e+03 - -2.3452413e+03 4.4288623e+02 -1.6333939e+03 - -2.3596799e+03 3.7582941e+02 -1.6454888e+03 - -2.3728618e+03 3.0881467e+02 -1.6573916e+03 - -2.3848785e+03 2.4202078e+02 -1.6689508e+03 - -2.3958401e+03 1.7566188e+02 -1.6799905e+03 - -2.4058792e+03 1.1000003e+02 -1.6903050e+03 - -2.4151562e+03 4.5363265e+01 -1.6996514e+03 - -2.4238656e+03 -1.7827811e+01 -1.7077403e+03 - -2.4322446e+03 -7.9020427e+01 -1.7142241e+03 - -2.4405828e+03 -1.3746981e+02 -1.7186833e+03 - -2.4492333e+03 -1.9214802e+02 -1.7206113e+03 - -2.4586217e+03 -2.4160459e+02 -1.7194025e+03 - -2.4692469e+03 -2.8375624e+02 -1.7143542e+03 - -2.4816540e+03 -3.1558231e+02 -1.7047113e+03 - -2.4963404e+03 -3.3273236e+02 -1.6898130e+03 - -2.5135165e+03 -3.2918024e+02 -1.6694601e+03 - -2.5326133e+03 -2.9743620e+02 -1.6446628e+03 - -2.5515395e+03 -2.3055980e+02 -1.6187598e+03 - -2.5662352e+03 -1.2749252e+02 -1.5980713e+03 - -2.5718942e+03 2.4067136e-09 -1.5900070e+03 - -2.5662352e+03 1.2749252e+02 -1.5980713e+03 - -2.5515395e+03 2.3055980e+02 -1.6187598e+03 - -2.5326133e+03 2.9743620e+02 -1.6446628e+03 - -2.5135165e+03 3.2918024e+02 -1.6694601e+03 - -2.4963404e+03 3.3273236e+02 -1.6898130e+03 - -2.4816540e+03 3.1558231e+02 -1.7047113e+03 - -2.4692469e+03 2.8375624e+02 -1.7143542e+03 - -2.4586217e+03 2.4160459e+02 -1.7194025e+03 - -2.4492333e+03 1.9214802e+02 -1.7206113e+03 - -2.4405828e+03 1.3746981e+02 -1.7186833e+03 - -2.4322446e+03 7.9020427e+01 -1.7142241e+03 - -2.4238656e+03 1.7827811e+01 -1.7077403e+03 - -2.4151562e+03 -4.5363265e+01 -1.6996514e+03 - -2.4058792e+03 -1.1000003e+02 -1.6903050e+03 - -2.3958401e+03 -1.7566188e+02 -1.6799905e+03 - -2.3848785e+03 -2.4202078e+02 -1.6689508e+03 - -2.3728618e+03 -3.0881467e+02 -1.6573916e+03 - -2.3596799e+03 -3.7582941e+02 -1.6454888e+03 - -2.3452413e+03 -4.4288623e+02 -1.6333939e+03 - -2.3294696e+03 -5.0983305e+02 -1.6212385e+03 - -2.3123014e+03 -5.7653818e+02 -1.6091377e+03 - -2.2936844e+03 -6.4288587e+02 -1.5971929e+03 - -2.2735755e+03 -7.0877301e+02 -1.5854935e+03 - -2.2519397e+03 -7.7410665e+02 -1.5741188e+03 - -2.2287493e+03 -8.3880223e+02 -1.5631394e+03 - -2.2039829e+03 -9.0278215e+02 -1.5526181e+03 - -2.1776244e+03 -9.6597470e+02 -1.5426109e+03 - -2.1496631e+03 -1.0283132e+03 -1.5331678e+03 - -2.1200927e+03 -1.0897355e+03 -1.5243330e+03 - -2.0889111e+03 -1.1501832e+03 -1.5161460e+03 - -2.0561197e+03 -1.2096014e+03 -1.5086414e+03 - -2.0217238e+03 -1.2679385e+03 -1.5018497e+03 - -1.9857316e+03 -1.3251455e+03 -1.4957977e+03 - -1.9481545e+03 -1.3811763e+03 -1.4905080e+03 - -1.9090067e+03 -1.4359873e+03 -1.4860003e+03 - -1.8683047e+03 -1.4895371e+03 -1.4822906e+03 - -1.8260680e+03 -1.5417868e+03 -1.4793920e+03 - -1.7823182e+03 -1.5926995e+03 -1.4773145e+03 - -1.7370792e+03 -1.6422405e+03 -1.4760652e+03 - -1.6903772e+03 -1.6903772e+03 -1.4756483e+03 - -1.6422405e+03 -1.7370792e+03 -1.4760652e+03 - -1.5926995e+03 -1.7823182e+03 -1.4773145e+03 - -1.5417868e+03 -1.8260680e+03 -1.4793920e+03 - -1.4895371e+03 -1.8683047e+03 -1.4822906e+03 - -1.4359873e+03 -1.9090067e+03 -1.4860003e+03 - -1.3811763e+03 -1.9481545e+03 -1.4905080e+03 - -1.3251455e+03 -1.9857316e+03 -1.4957977e+03 - -1.2679385e+03 -2.0217238e+03 -1.5018497e+03 - -1.2096014e+03 -2.0561197e+03 -1.5086414e+03 - -1.1501832e+03 -2.0889111e+03 -1.5161460e+03 - -1.0897355e+03 -2.1200927e+03 -1.5243330e+03 - -1.0283132e+03 -2.1496631e+03 -1.5331678e+03 - -9.6597470e+02 -2.1776244e+03 -1.5426109e+03 - -9.0278215e+02 -2.2039829e+03 -1.5526181e+03 - -8.3880223e+02 -2.2287493e+03 -1.5631394e+03 - -7.7410665e+02 -2.2519397e+03 -1.5741188e+03 - -7.0877301e+02 -2.2735755e+03 -1.5854935e+03 - -6.4288587e+02 -2.2936844e+03 -1.5971929e+03 - -5.7653818e+02 -2.3123014e+03 -1.6091377e+03 - -5.0983305e+02 -2.3294696e+03 -1.6212385e+03 - -4.4288623e+02 -2.3452413e+03 -1.6333939e+03 - -3.7582941e+02 -2.3596799e+03 -1.6454888e+03 - -3.0881467e+02 -2.3728618e+03 -1.6573916e+03 - -2.4202078e+02 -2.3848785e+03 -1.6689508e+03 - -1.7566188e+02 -2.3958401e+03 -1.6799905e+03 - -1.1000003e+02 -2.4058792e+03 -1.6903050e+03 - -4.5363265e+01 -2.4151562e+03 -1.6996514e+03 - 1.7827811e+01 -2.4238656e+03 -1.7077403e+03 - 7.9020427e+01 -2.4322446e+03 -1.7142241e+03 - 1.3746981e+02 -2.4405828e+03 -1.7186833e+03 - 1.9214802e+02 -2.4492333e+03 -1.7206113e+03 - 2.4160459e+02 -2.4586217e+03 -1.7194025e+03 - 2.8375624e+02 -2.4692469e+03 -1.7143542e+03 - 3.1558231e+02 -2.4816540e+03 -1.7047113e+03 - 3.3273236e+02 -2.4963404e+03 -1.6898130e+03 - 3.2918024e+02 -2.5135165e+03 -1.6694601e+03 - 2.9743620e+02 -2.5326133e+03 -1.6446628e+03 - 2.3055980e+02 -2.5515395e+03 -1.6187598e+03 - 1.2749252e+02 -2.5662352e+03 -1.5980713e+03 - 2.4067136e-09 -2.5718942e+03 -1.5900070e+03 - -1.2749252e+02 -2.5662352e+03 -1.5980713e+03 - -2.3055980e+02 -2.5515395e+03 -1.6187598e+03 - -2.9743620e+02 -2.5326133e+03 -1.6446628e+03 - -3.2918024e+02 -2.5135165e+03 -1.6694601e+03 - -3.3273236e+02 -2.4963404e+03 -1.6898130e+03 - -3.1558231e+02 -2.4816540e+03 -1.7047113e+03 - -2.8375624e+02 -2.4692469e+03 -1.7143542e+03 - -2.4160459e+02 -2.4586217e+03 -1.7194025e+03 - -1.9214802e+02 -2.4492333e+03 -1.7206113e+03 - -1.3746981e+02 -2.4405828e+03 -1.7186833e+03 - -7.9020427e+01 -2.4322446e+03 -1.7142241e+03 - -1.7827811e+01 -2.4238656e+03 -1.7077403e+03 - 4.5363265e+01 -2.4151562e+03 -1.6996514e+03 - 1.1000003e+02 -2.4058792e+03 -1.6903050e+03 - 1.7566188e+02 -2.3958401e+03 -1.6799905e+03 - 2.4202078e+02 -2.3848785e+03 -1.6689508e+03 - 3.0881467e+02 -2.3728618e+03 -1.6573916e+03 - 3.7582941e+02 -2.3596799e+03 -1.6454888e+03 - 4.4288623e+02 -2.3452413e+03 -1.6333939e+03 - 5.0983305e+02 -2.3294696e+03 -1.6212385e+03 - 5.7653818e+02 -2.3123014e+03 -1.6091377e+03 - 6.4288587e+02 -2.2936844e+03 -1.5971929e+03 - 7.0877301e+02 -2.2735755e+03 -1.5854935e+03 - 7.7410665e+02 -2.2519397e+03 -1.5741188e+03 - 8.3880223e+02 -2.2287493e+03 -1.5631394e+03 - 9.0278215e+02 -2.2039829e+03 -1.5526181e+03 - 9.6597470e+02 -2.1776244e+03 -1.5426109e+03 - 1.0283132e+03 -2.1496631e+03 -1.5331678e+03 - 1.0897355e+03 -2.1200927e+03 -1.5243330e+03 - 1.1501832e+03 -2.0889111e+03 -1.5161460e+03 - 1.2096014e+03 -2.0561197e+03 -1.5086414e+03 - 1.2679385e+03 -2.0217238e+03 -1.5018497e+03 - 1.3251455e+03 -1.9857316e+03 -1.4957977e+03 - 1.3811763e+03 -1.9481545e+03 -1.4905080e+03 - 1.4359873e+03 -1.9090067e+03 -1.4860003e+03 - 1.4895371e+03 -1.8683047e+03 -1.4822906e+03 - 1.5417868e+03 -1.8260680e+03 -1.4793920e+03 - 1.5926995e+03 -1.7823182e+03 -1.4773145e+03 - 1.6422405e+03 -1.7370792e+03 -1.4760652e+03 - 1.6903772e+03 -1.6903772e+03 -1.4756483e+03 - 1.7370792e+03 -1.6422405e+03 -1.4760652e+03 - 1.7823182e+03 -1.5926995e+03 -1.4773145e+03 - 1.8260680e+03 -1.5417868e+03 -1.4793920e+03 - 1.8683047e+03 -1.4895371e+03 -1.4822906e+03 - 1.9090067e+03 -1.4359873e+03 -1.4860003e+03 - 1.9481545e+03 -1.3811763e+03 -1.4905080e+03 - 1.9857316e+03 -1.3251455e+03 -1.4957977e+03 - 2.0217238e+03 -1.2679385e+03 -1.5018497e+03 - 2.0561197e+03 -1.2096014e+03 -1.5086414e+03 - 2.0889111e+03 -1.1501832e+03 -1.5161460e+03 - 2.1200927e+03 -1.0897355e+03 -1.5243330e+03 - 2.1496631e+03 -1.0283132e+03 -1.5331678e+03 - 2.1776244e+03 -9.6597470e+02 -1.5426109e+03 - 2.2039829e+03 -9.0278215e+02 -1.5526181e+03 - 2.2287493e+03 -8.3880223e+02 -1.5631394e+03 - 2.2519397e+03 -7.7410665e+02 -1.5741188e+03 - 2.2735755e+03 -7.0877301e+02 -1.5854935e+03 - 2.2936844e+03 -6.4288587e+02 -1.5971929e+03 - 2.3123014e+03 -5.7653818e+02 -1.6091377e+03 - 2.3294696e+03 -5.0983305e+02 -1.6212385e+03 - 2.3452413e+03 -4.4288623e+02 -1.6333939e+03 - 2.3596799e+03 -3.7582941e+02 -1.6454888e+03 - 2.3728618e+03 -3.0881467e+02 -1.6573916e+03 - 2.3848785e+03 -2.4202078e+02 -1.6689508e+03 - 2.3958401e+03 -1.7566188e+02 -1.6799905e+03 - 2.4058792e+03 -1.1000003e+02 -1.6903050e+03 - 2.4151562e+03 -4.5363265e+01 -1.6996514e+03 - 2.4238656e+03 1.7827811e+01 -1.7077403e+03 - 2.4322446e+03 7.9020427e+01 -1.7142241e+03 - 2.4405828e+03 1.3746981e+02 -1.7186833e+03 - 2.4492333e+03 1.9214802e+02 -1.7206113e+03 - 2.4586217e+03 2.4160459e+02 -1.7194025e+03 - 2.4692469e+03 2.8375624e+02 -1.7143542e+03 - 2.4816540e+03 3.1558231e+02 -1.7047113e+03 - 2.4963404e+03 3.3273236e+02 -1.6898130e+03 - 2.5135165e+03 3.2918024e+02 -1.6694601e+03 - 2.5326133e+03 2.9743620e+02 -1.6446628e+03 - 2.5515395e+03 2.3055980e+02 -1.6187598e+03 - 2.5662352e+03 1.2749252e+02 -1.5980713e+03 - 2.5718942e+03 2.4067136e-09 -1.5900070e+03 - 2.4838752e+03 -4.8134273e-09 -1.6910326e+03 - 2.4801508e+03 -1.0688127e+02 -1.6963877e+03 - 2.4701078e+03 -1.9735821e+02 -1.7106403e+03 - 2.4563331e+03 -2.6171247e+02 -1.7296238e+03 - 2.4413831e+03 -2.9819151e+02 -1.7491772e+03 - 2.4269292e+03 -3.1004656e+02 -1.7665157e+03 - 2.4137194e+03 -3.0221029e+02 -1.7803126e+03 - 2.4018831e+03 -2.7939548e+02 -1.7902329e+03 - 2.3912292e+03 -2.4543052e+02 -1.7964667e+03 - 2.3814393e+03 -2.0321414e+02 -1.7994258e+03 - 2.3721690e+03 -1.5487933e+02 -1.7995804e+03 - 2.3630939e+03 -1.0198493e+02 -1.7973845e+03 - 2.3539265e+03 -4.5676244e+01 -1.7932467e+03 - 2.3444195e+03 1.3194983e+01 -1.7875233e+03 - 2.3343624e+03 7.3985048e+01 -1.7805207e+03 - 2.3235778e+03 1.3619849e+02 -1.7725016e+03 - 2.3119159e+03 1.9944650e+02 -1.7636913e+03 - 2.2992506e+03 2.6341794e+02 -1.7542840e+03 - 2.2854755e+03 3.2785894e+02 -1.7444478e+03 - 2.2705006e+03 3.9255850e+02 -1.7343293e+03 - 2.2542504e+03 4.5733815e+02 -1.7240567e+03 - 2.2366612e+03 5.2204447e+02 -1.7137432e+03 - 2.2176797e+03 5.8654364e+02 -1.7034889e+03 - 2.1972618e+03 6.5071736e+02 -1.6933828e+03 - 2.1753711e+03 7.1445984e+02 -1.6835042e+03 - 2.1519784e+03 7.7767555e+02 -1.6739238e+03 - 2.1270606e+03 8.4027739e+02 -1.6647052e+03 - 2.1006002e+03 9.0218544e+02 -1.6559051e+03 - 2.0725851e+03 9.6332585e+02 -1.6475741e+03 - 2.0430073e+03 1.0236300e+03 -1.6397576e+03 - 2.0118634e+03 1.0830341e+03 -1.6324960e+03 - 1.9791540e+03 1.1414781e+03 -1.6258249e+03 - 1.9448830e+03 1.1989059e+03 -1.6197759e+03 - 1.9090579e+03 1.2552648e+03 -1.6143766e+03 - 1.8716894e+03 1.3105051e+03 -1.6096506e+03 - 1.8327911e+03 1.3645801e+03 -1.6056184e+03 - 1.7923795e+03 1.4174456e+03 -1.6022967e+03 - 1.7504738e+03 1.4690604e+03 -1.5996992e+03 - 1.7070959e+03 1.5193855e+03 -1.5978364e+03 - 1.6622700e+03 1.5683844e+03 -1.5967158e+03 - 1.6160231e+03 1.6160231e+03 -1.5963418e+03 - 1.5683844e+03 1.6622700e+03 -1.5967158e+03 - 1.5193855e+03 1.7070959e+03 -1.5978364e+03 - 1.4690604e+03 1.7504738e+03 -1.5996992e+03 - 1.4174456e+03 1.7923795e+03 -1.6022967e+03 - 1.3645801e+03 1.8327911e+03 -1.6056184e+03 - 1.3105051e+03 1.8716894e+03 -1.6096506e+03 - 1.2552648e+03 1.9090579e+03 -1.6143766e+03 - 1.1989059e+03 1.9448830e+03 -1.6197759e+03 - 1.1414781e+03 1.9791540e+03 -1.6258249e+03 - 1.0830341e+03 2.0118634e+03 -1.6324960e+03 - 1.0236300e+03 2.0430073e+03 -1.6397576e+03 - 9.6332585e+02 2.0725851e+03 -1.6475741e+03 - 9.0218544e+02 2.1006002e+03 -1.6559051e+03 - 8.4027739e+02 2.1270606e+03 -1.6647052e+03 - 7.7767555e+02 2.1519784e+03 -1.6739238e+03 - 7.1445984e+02 2.1753711e+03 -1.6835042e+03 - 6.5071736e+02 2.1972618e+03 -1.6933828e+03 - 5.8654364e+02 2.2176797e+03 -1.7034889e+03 - 5.2204447e+02 2.2366612e+03 -1.7137432e+03 - 4.5733815e+02 2.2542504e+03 -1.7240567e+03 - 3.9255850e+02 2.2705006e+03 -1.7343293e+03 - 3.2785894e+02 2.2854755e+03 -1.7444478e+03 - 2.6341794e+02 2.2992506e+03 -1.7542840e+03 - 1.9944650e+02 2.3119159e+03 -1.7636913e+03 - 1.3619849e+02 2.3235778e+03 -1.7725016e+03 - 7.3985048e+01 2.3343624e+03 -1.7805207e+03 - 1.3194983e+01 2.3444195e+03 -1.7875233e+03 - -4.5676244e+01 2.3539265e+03 -1.7932467e+03 - -1.0198493e+02 2.3630939e+03 -1.7973845e+03 - -1.5487933e+02 2.3721690e+03 -1.7995804e+03 - -2.0321414e+02 2.3814393e+03 -1.7994258e+03 - -2.4543052e+02 2.3912292e+03 -1.7964667e+03 - -2.7939548e+02 2.4018831e+03 -1.7902329e+03 - -3.0221029e+02 2.4137194e+03 -1.7803126e+03 - -3.1004656e+02 2.4269292e+03 -1.7665157e+03 - -2.9819151e+02 2.4413831e+03 -1.7491772e+03 - -2.6171247e+02 2.4563331e+03 -1.7296238e+03 - -1.9735821e+02 2.4701078e+03 -1.7106403e+03 - -1.0688127e+02 2.4801508e+03 -1.6963877e+03 - 2.4067136e-09 2.4838752e+03 -1.6910326e+03 - 1.0688127e+02 2.4801508e+03 -1.6963877e+03 - 1.9735821e+02 2.4701078e+03 -1.7106403e+03 - 2.6171247e+02 2.4563331e+03 -1.7296238e+03 - 2.9819151e+02 2.4413831e+03 -1.7491772e+03 - 3.1004656e+02 2.4269292e+03 -1.7665157e+03 - 3.0221029e+02 2.4137194e+03 -1.7803126e+03 - 2.7939548e+02 2.4018831e+03 -1.7902329e+03 - 2.4543052e+02 2.3912292e+03 -1.7964667e+03 - 2.0321414e+02 2.3814393e+03 -1.7994258e+03 - 1.5487933e+02 2.3721690e+03 -1.7995804e+03 - 1.0198493e+02 2.3630939e+03 -1.7973845e+03 - 4.5676244e+01 2.3539265e+03 -1.7932467e+03 - -1.3194983e+01 2.3444195e+03 -1.7875233e+03 - -7.3985048e+01 2.3343624e+03 -1.7805207e+03 - -1.3619849e+02 2.3235778e+03 -1.7725016e+03 - -1.9944650e+02 2.3119159e+03 -1.7636913e+03 - -2.6341794e+02 2.2992506e+03 -1.7542840e+03 - -3.2785894e+02 2.2854755e+03 -1.7444478e+03 - -3.9255850e+02 2.2705006e+03 -1.7343293e+03 - -4.5733815e+02 2.2542504e+03 -1.7240567e+03 - -5.2204447e+02 2.2366612e+03 -1.7137432e+03 - -5.8654364e+02 2.2176797e+03 -1.7034889e+03 - -6.5071736e+02 2.1972618e+03 -1.6933828e+03 - -7.1445984e+02 2.1753711e+03 -1.6835042e+03 - -7.7767555e+02 2.1519784e+03 -1.6739238e+03 - -8.4027739e+02 2.1270606e+03 -1.6647052e+03 - -9.0218544e+02 2.1006002e+03 -1.6559051e+03 - -9.6332585e+02 2.0725851e+03 -1.6475741e+03 - -1.0236300e+03 2.0430073e+03 -1.6397576e+03 - -1.0830341e+03 2.0118634e+03 -1.6324960e+03 - -1.1414781e+03 1.9791540e+03 -1.6258249e+03 - -1.1989059e+03 1.9448830e+03 -1.6197759e+03 - -1.2552648e+03 1.9090579e+03 -1.6143766e+03 - -1.3105051e+03 1.8716894e+03 -1.6096506e+03 - -1.3645801e+03 1.8327911e+03 -1.6056184e+03 - -1.4174456e+03 1.7923795e+03 -1.6022967e+03 - -1.4690604e+03 1.7504738e+03 -1.5996992e+03 - -1.5193855e+03 1.7070959e+03 -1.5978364e+03 - -1.5683844e+03 1.6622700e+03 -1.5967158e+03 - -1.6160231e+03 1.6160231e+03 -1.5963418e+03 - -1.6622700e+03 1.5683844e+03 -1.5967158e+03 - -1.7070959e+03 1.5193855e+03 -1.5978364e+03 - -1.7504738e+03 1.4690604e+03 -1.5996992e+03 - -1.7923795e+03 1.4174456e+03 -1.6022967e+03 - -1.8327911e+03 1.3645801e+03 -1.6056184e+03 - -1.8716894e+03 1.3105051e+03 -1.6096506e+03 - -1.9090579e+03 1.2552648e+03 -1.6143766e+03 - -1.9448830e+03 1.1989059e+03 -1.6197759e+03 - -1.9791540e+03 1.1414781e+03 -1.6258249e+03 - -2.0118634e+03 1.0830341e+03 -1.6324960e+03 - -2.0430073e+03 1.0236300e+03 -1.6397576e+03 - -2.0725851e+03 9.6332585e+02 -1.6475741e+03 - -2.1006002e+03 9.0218544e+02 -1.6559051e+03 - -2.1270606e+03 8.4027739e+02 -1.6647052e+03 - -2.1519784e+03 7.7767555e+02 -1.6739238e+03 - -2.1753711e+03 7.1445984e+02 -1.6835042e+03 - -2.1972618e+03 6.5071736e+02 -1.6933828e+03 - -2.2176797e+03 5.8654364e+02 -1.7034889e+03 - -2.2366612e+03 5.2204447e+02 -1.7137432e+03 - -2.2542504e+03 4.5733815e+02 -1.7240567e+03 - -2.2705006e+03 3.9255850e+02 -1.7343293e+03 - -2.2854755e+03 3.2785894e+02 -1.7444478e+03 - -2.2992506e+03 2.6341794e+02 -1.7542840e+03 - -2.3119159e+03 1.9944650e+02 -1.7636913e+03 - -2.3235778e+03 1.3619849e+02 -1.7725016e+03 - -2.3343624e+03 7.3985048e+01 -1.7805207e+03 - -2.3444195e+03 1.3194983e+01 -1.7875233e+03 - -2.3539265e+03 -4.5676244e+01 -1.7932467e+03 - -2.3630939e+03 -1.0198493e+02 -1.7973845e+03 - -2.3721690e+03 -1.5487933e+02 -1.7995804e+03 - -2.3814393e+03 -2.0321414e+02 -1.7994258e+03 - -2.3912292e+03 -2.4543052e+02 -1.7964667e+03 - -2.4018831e+03 -2.7939548e+02 -1.7902329e+03 - -2.4137194e+03 -3.0221029e+02 -1.7803126e+03 - -2.4269292e+03 -3.1004656e+02 -1.7665157e+03 - -2.4413831e+03 -2.9819151e+02 -1.7491772e+03 - -2.4563331e+03 -2.6171247e+02 -1.7296238e+03 - -2.4701078e+03 -1.9735821e+02 -1.7106403e+03 - -2.4801508e+03 -1.0688127e+02 -1.6963877e+03 - -2.4838752e+03 4.8134273e-09 -1.6910326e+03 - -2.4801508e+03 1.0688127e+02 -1.6963877e+03 - -2.4701078e+03 1.9735821e+02 -1.7106403e+03 - -2.4563331e+03 2.6171247e+02 -1.7296238e+03 - -2.4413831e+03 2.9819151e+02 -1.7491772e+03 - -2.4269292e+03 3.1004656e+02 -1.7665157e+03 - -2.4137194e+03 3.0221029e+02 -1.7803126e+03 - -2.4018831e+03 2.7939548e+02 -1.7902329e+03 - -2.3912292e+03 2.4543052e+02 -1.7964667e+03 - -2.3814393e+03 2.0321414e+02 -1.7994258e+03 - -2.3721690e+03 1.5487933e+02 -1.7995804e+03 - -2.3630939e+03 1.0198493e+02 -1.7973845e+03 - -2.3539265e+03 4.5676244e+01 -1.7932467e+03 - -2.3444195e+03 -1.3194983e+01 -1.7875233e+03 - -2.3343624e+03 -7.3985048e+01 -1.7805207e+03 - -2.3235778e+03 -1.3619849e+02 -1.7725016e+03 - -2.3119159e+03 -1.9944650e+02 -1.7636913e+03 - -2.2992506e+03 -2.6341794e+02 -1.7542840e+03 - -2.2854755e+03 -3.2785894e+02 -1.7444478e+03 - -2.2705006e+03 -3.9255850e+02 -1.7343293e+03 - -2.2542504e+03 -4.5733815e+02 -1.7240567e+03 - -2.2366612e+03 -5.2204447e+02 -1.7137432e+03 - -2.2176797e+03 -5.8654364e+02 -1.7034889e+03 - -2.1972618e+03 -6.5071736e+02 -1.6933828e+03 - -2.1753711e+03 -7.1445984e+02 -1.6835042e+03 - -2.1519784e+03 -7.7767555e+02 -1.6739238e+03 - -2.1270606e+03 -8.4027739e+02 -1.6647052e+03 - -2.1006002e+03 -9.0218544e+02 -1.6559051e+03 - -2.0725851e+03 -9.6332585e+02 -1.6475741e+03 - -2.0430073e+03 -1.0236300e+03 -1.6397576e+03 - -2.0118634e+03 -1.0830341e+03 -1.6324960e+03 - -1.9791540e+03 -1.1414781e+03 -1.6258249e+03 - -1.9448830e+03 -1.1989059e+03 -1.6197759e+03 - -1.9090579e+03 -1.2552648e+03 -1.6143766e+03 - -1.8716894e+03 -1.3105051e+03 -1.6096506e+03 - -1.8327911e+03 -1.3645801e+03 -1.6056184e+03 - -1.7923795e+03 -1.4174456e+03 -1.6022967e+03 - -1.7504738e+03 -1.4690604e+03 -1.5996992e+03 - -1.7070959e+03 -1.5193855e+03 -1.5978364e+03 - -1.6622700e+03 -1.5683844e+03 -1.5967158e+03 - -1.6160231e+03 -1.6160231e+03 -1.5963418e+03 - -1.5683844e+03 -1.6622700e+03 -1.5967158e+03 - -1.5193855e+03 -1.7070959e+03 -1.5978364e+03 - -1.4690604e+03 -1.7504738e+03 -1.5996992e+03 - -1.4174456e+03 -1.7923795e+03 -1.6022967e+03 - -1.3645801e+03 -1.8327911e+03 -1.6056184e+03 - -1.3105051e+03 -1.8716894e+03 -1.6096506e+03 - -1.2552648e+03 -1.9090579e+03 -1.6143766e+03 - -1.1989059e+03 -1.9448830e+03 -1.6197759e+03 - -1.1414781e+03 -1.9791540e+03 -1.6258249e+03 - -1.0830341e+03 -2.0118634e+03 -1.6324960e+03 - -1.0236300e+03 -2.0430073e+03 -1.6397576e+03 - -9.6332585e+02 -2.0725851e+03 -1.6475741e+03 - -9.0218544e+02 -2.1006002e+03 -1.6559051e+03 - -8.4027739e+02 -2.1270606e+03 -1.6647052e+03 - -7.7767555e+02 -2.1519784e+03 -1.6739238e+03 - -7.1445984e+02 -2.1753711e+03 -1.6835042e+03 - -6.5071736e+02 -2.1972618e+03 -1.6933828e+03 - -5.8654364e+02 -2.2176797e+03 -1.7034889e+03 - -5.2204447e+02 -2.2366612e+03 -1.7137432e+03 - -4.5733815e+02 -2.2542504e+03 -1.7240567e+03 - -3.9255850e+02 -2.2705006e+03 -1.7343293e+03 - -3.2785894e+02 -2.2854755e+03 -1.7444478e+03 - -2.6341794e+02 -2.2992506e+03 -1.7542840e+03 - -1.9944650e+02 -2.3119159e+03 -1.7636913e+03 - -1.3619849e+02 -2.3235778e+03 -1.7725016e+03 - -7.3985048e+01 -2.3343624e+03 -1.7805207e+03 - -1.3194983e+01 -2.3444195e+03 -1.7875233e+03 - 4.5676244e+01 -2.3539265e+03 -1.7932467e+03 - 1.0198493e+02 -2.3630939e+03 -1.7973845e+03 - 1.5487933e+02 -2.3721690e+03 -1.7995804e+03 - 2.0321414e+02 -2.3814393e+03 -1.7994258e+03 - 2.4543052e+02 -2.3912292e+03 -1.7964667e+03 - 2.7939548e+02 -2.4018831e+03 -1.7902329e+03 - 3.0221029e+02 -2.4137194e+03 -1.7803126e+03 - 3.1004656e+02 -2.4269292e+03 -1.7665157e+03 - 2.9819151e+02 -2.4413831e+03 -1.7491772e+03 - 2.6171247e+02 -2.4563331e+03 -1.7296238e+03 - 1.9735821e+02 -2.4701078e+03 -1.7106403e+03 - 1.0688127e+02 -2.4801508e+03 -1.6963877e+03 - -2.4067136e-09 -2.4838752e+03 -1.6910326e+03 - -1.0688127e+02 -2.4801508e+03 -1.6963877e+03 - -1.9735821e+02 -2.4701078e+03 -1.7106403e+03 - -2.6171247e+02 -2.4563331e+03 -1.7296238e+03 - -2.9819151e+02 -2.4413831e+03 -1.7491772e+03 - -3.1004656e+02 -2.4269292e+03 -1.7665157e+03 - -3.0221029e+02 -2.4137194e+03 -1.7803126e+03 - -2.7939548e+02 -2.4018831e+03 -1.7902329e+03 - -2.4543052e+02 -2.3912292e+03 -1.7964667e+03 - -2.0321414e+02 -2.3814393e+03 -1.7994258e+03 - -1.5487933e+02 -2.3721690e+03 -1.7995804e+03 - -1.0198493e+02 -2.3630939e+03 -1.7973845e+03 - -4.5676244e+01 -2.3539265e+03 -1.7932467e+03 - 1.3194983e+01 -2.3444195e+03 -1.7875233e+03 - 7.3985048e+01 -2.3343624e+03 -1.7805207e+03 - 1.3619849e+02 -2.3235778e+03 -1.7725016e+03 - 1.9944650e+02 -2.3119159e+03 -1.7636913e+03 - 2.6341794e+02 -2.2992506e+03 -1.7542840e+03 - 3.2785894e+02 -2.2854755e+03 -1.7444478e+03 - 3.9255850e+02 -2.2705006e+03 -1.7343293e+03 - 4.5733815e+02 -2.2542504e+03 -1.7240567e+03 - 5.2204447e+02 -2.2366612e+03 -1.7137432e+03 - 5.8654364e+02 -2.2176797e+03 -1.7034889e+03 - 6.5071736e+02 -2.1972618e+03 -1.6933828e+03 - 7.1445984e+02 -2.1753711e+03 -1.6835042e+03 - 7.7767555e+02 -2.1519784e+03 -1.6739238e+03 - 8.4027739e+02 -2.1270606e+03 -1.6647052e+03 - 9.0218544e+02 -2.1006002e+03 -1.6559051e+03 - 9.6332585e+02 -2.0725851e+03 -1.6475741e+03 - 1.0236300e+03 -2.0430073e+03 -1.6397576e+03 - 1.0830341e+03 -2.0118634e+03 -1.6324960e+03 - 1.1414781e+03 -1.9791540e+03 -1.6258249e+03 - 1.1989059e+03 -1.9448830e+03 -1.6197759e+03 - 1.2552648e+03 -1.9090579e+03 -1.6143766e+03 - 1.3105051e+03 -1.8716894e+03 -1.6096506e+03 - 1.3645801e+03 -1.8327911e+03 -1.6056184e+03 - 1.4174456e+03 -1.7923795e+03 -1.6022967e+03 - 1.4690604e+03 -1.7504738e+03 -1.5996992e+03 - 1.5193855e+03 -1.7070959e+03 -1.5978364e+03 - 1.5683844e+03 -1.6622700e+03 -1.5967158e+03 - 1.6160231e+03 -1.6160231e+03 -1.5963418e+03 - 1.6622700e+03 -1.5683844e+03 -1.5967158e+03 - 1.7070959e+03 -1.5193855e+03 -1.5978364e+03 - 1.7504738e+03 -1.4690604e+03 -1.5996992e+03 - 1.7923795e+03 -1.4174456e+03 -1.6022967e+03 - 1.8327911e+03 -1.3645801e+03 -1.6056184e+03 - 1.8716894e+03 -1.3105051e+03 -1.6096506e+03 - 1.9090579e+03 -1.2552648e+03 -1.6143766e+03 - 1.9448830e+03 -1.1989059e+03 -1.6197759e+03 - 1.9791540e+03 -1.1414781e+03 -1.6258249e+03 - 2.0118634e+03 -1.0830341e+03 -1.6324960e+03 - 2.0430073e+03 -1.0236300e+03 -1.6397576e+03 - 2.0725851e+03 -9.6332585e+02 -1.6475741e+03 - 2.1006002e+03 -9.0218544e+02 -1.6559051e+03 - 2.1270606e+03 -8.4027739e+02 -1.6647052e+03 - 2.1519784e+03 -7.7767555e+02 -1.6739238e+03 - 2.1753711e+03 -7.1445984e+02 -1.6835042e+03 - 2.1972618e+03 -6.5071736e+02 -1.6933828e+03 - 2.2176797e+03 -5.8654364e+02 -1.7034889e+03 - 2.2366612e+03 -5.2204447e+02 -1.7137432e+03 - 2.2542504e+03 -4.5733815e+02 -1.7240567e+03 - 2.2705006e+03 -3.9255850e+02 -1.7343293e+03 - 2.2854755e+03 -3.2785894e+02 -1.7444478e+03 - 2.2992506e+03 -2.6341794e+02 -1.7542840e+03 - 2.3119159e+03 -1.9944650e+02 -1.7636913e+03 - 2.3235778e+03 -1.3619849e+02 -1.7725016e+03 - 2.3343624e+03 -7.3985048e+01 -1.7805207e+03 - 2.3444195e+03 -1.3194983e+01 -1.7875233e+03 - 2.3539265e+03 4.5676244e+01 -1.7932467e+03 - 2.3630939e+03 1.0198493e+02 -1.7973845e+03 - 2.3721690e+03 1.5487933e+02 -1.7995804e+03 - 2.3814393e+03 2.0321414e+02 -1.7994258e+03 - 2.3912292e+03 2.4543052e+02 -1.7964667e+03 - 2.4018831e+03 2.7939548e+02 -1.7902329e+03 - 2.4137194e+03 3.0221029e+02 -1.7803126e+03 - 2.4269292e+03 3.1004656e+02 -1.7665157e+03 - 2.4413831e+03 2.9819151e+02 -1.7491772e+03 - 2.4563331e+03 2.6171247e+02 -1.7296238e+03 - 2.4701078e+03 1.9735821e+02 -1.7106403e+03 - 2.4801508e+03 1.0688127e+02 -1.6963877e+03 - 2.4838752e+03 0.0000000e+00 -1.6910326e+03 - 2.3924051e+03 -2.4067136e-09 -1.7919493e+03 - 2.3898091e+03 -9.2713679e+01 -1.7957308e+03 - 2.3826338e+03 -1.7361062e+02 -1.8060368e+03 - 2.3723585e+03 -2.3478577e+02 -1.8203471e+03 - 2.3606009e+03 -2.7351145e+02 -1.8358733e+03 - 2.3485862e+03 -2.9097681e+02 -1.8504520e+03 - 2.3370043e+03 -2.9028680e+02 -1.8627988e+03 - 2.3261093e+03 -2.7497015e+02 -1.8723574e+03 - 2.3158797e+03 -2.4822721e+02 -1.8790415e+03 - 2.3061504e+03 -2.1268444e+02 -1.8830196e+03 - 2.2966968e+03 -1.7039678e+02 -1.8845750e+03 - 2.2872829e+03 -1.2293879e+02 -1.8840257e+03 - 2.2776838e+03 -7.1510259e+01 -1.8816842e+03 - 2.2676961e+03 -1.7028596e+01 -1.8778396e+03 - 2.2571402e+03 3.9798293e+01 -1.8727512e+03 - 2.2458599e+03 9.8417308e+01 -1.8666486e+03 - 2.2337204e+03 1.5838998e+02 -1.8597335e+03 - 2.2206058e+03 2.1936325e+02 -1.8521830e+03 - 2.2064168e+03 2.8104822e+02 -1.8441530e+03 - 2.1910684e+03 3.4320473e+02 -1.8357809e+03 - 2.1744881e+03 4.0562997e+02 -1.8271883e+03 - 2.1566142e+03 4.6815018e+02 -1.8184834e+03 - 2.1373949e+03 5.3061443e+02 -1.8097623e+03 - 2.1167864e+03 5.9288995e+02 -1.8011114e+03 - 2.0947526e+03 6.5485862e+02 -1.7926078e+03 - 2.0712640e+03 7.1641430e+02 -1.7843209e+03 - 2.0462973e+03 7.7746078e+02 -1.7763130e+03 - 2.0198346e+03 8.3791014e+02 -1.7686400e+03 - 1.9918629e+03 8.9768158e+02 -1.7613522e+03 - 1.9623740e+03 9.5670037e+02 -1.7544948e+03 - 1.9313638e+03 1.0148971e+03 -1.7481080e+03 - 1.8988323e+03 1.0722072e+03 -1.7422275e+03 - 1.8647831e+03 1.1285700e+03 -1.7368850e+03 - 1.8292234e+03 1.1839291e+03 -1.7321082e+03 - 1.7921636e+03 1.2382314e+03 -1.7279212e+03 - 1.7536173e+03 1.2914269e+03 -1.7243445e+03 - 1.7136012e+03 1.3434691e+03 -1.7213951e+03 - 1.6721346e+03 1.3943140e+03 -1.7190870e+03 - 1.6292400e+03 1.4439208e+03 -1.7174307e+03 - 1.5849423e+03 1.4922510e+03 -1.7164340e+03 - 1.5392692e+03 1.5392692e+03 -1.7161012e+03 - 1.4922510e+03 1.5849423e+03 -1.7164340e+03 - 1.4439208e+03 1.6292400e+03 -1.7174307e+03 - 1.3943140e+03 1.6721346e+03 -1.7190870e+03 - 1.3434691e+03 1.7136012e+03 -1.7213951e+03 - 1.2914269e+03 1.7536173e+03 -1.7243445e+03 - 1.2382314e+03 1.7921636e+03 -1.7279212e+03 - 1.1839291e+03 1.8292234e+03 -1.7321082e+03 - 1.1285700e+03 1.8647831e+03 -1.7368850e+03 - 1.0722072e+03 1.8988323e+03 -1.7422275e+03 - 1.0148971e+03 1.9313638e+03 -1.7481080e+03 - 9.5670037e+02 1.9623740e+03 -1.7544948e+03 - 8.9768158e+02 1.9918629e+03 -1.7613522e+03 - 8.3791014e+02 2.0198346e+03 -1.7686400e+03 - 7.7746078e+02 2.0462973e+03 -1.7763130e+03 - 7.1641430e+02 2.0712640e+03 -1.7843209e+03 - 6.5485862e+02 2.0947526e+03 -1.7926078e+03 - 5.9288995e+02 2.1167864e+03 -1.8011114e+03 - 5.3061443e+02 2.1373949e+03 -1.8097623e+03 - 4.6815018e+02 2.1566142e+03 -1.8184834e+03 - 4.0562997e+02 2.1744881e+03 -1.8271883e+03 - 3.4320473e+02 2.1910684e+03 -1.8357809e+03 - 2.8104822e+02 2.2064168e+03 -1.8441530e+03 - 2.1936325e+02 2.2206058e+03 -1.8521830e+03 - 1.5838998e+02 2.2337204e+03 -1.8597335e+03 - 9.8417308e+01 2.2458599e+03 -1.8666486e+03 - 3.9798293e+01 2.2571402e+03 -1.8727512e+03 - -1.7028596e+01 2.2676961e+03 -1.8778396e+03 - -7.1510259e+01 2.2776838e+03 -1.8816842e+03 - -1.2293879e+02 2.2872829e+03 -1.8840257e+03 - -1.7039678e+02 2.2966968e+03 -1.8845750e+03 - -2.1268444e+02 2.3061504e+03 -1.8830196e+03 - -2.4822721e+02 2.3158797e+03 -1.8790415e+03 - -2.7497015e+02 2.3261093e+03 -1.8723574e+03 - -2.9028680e+02 2.3370043e+03 -1.8627988e+03 - -2.9097681e+02 2.3485862e+03 -1.8504520e+03 - -2.7351145e+02 2.3606009e+03 -1.8358733e+03 - -2.3478577e+02 2.3723585e+03 -1.8203471e+03 - -1.7361062e+02 2.3826338e+03 -1.8060368e+03 - -9.2713679e+01 2.3898091e+03 -1.7957308e+03 - 2.4067136e-09 2.3924051e+03 -1.7919493e+03 - 9.2713679e+01 2.3898091e+03 -1.7957308e+03 - 1.7361062e+02 2.3826338e+03 -1.8060368e+03 - 2.3478577e+02 2.3723585e+03 -1.8203471e+03 - 2.7351145e+02 2.3606009e+03 -1.8358733e+03 - 2.9097681e+02 2.3485862e+03 -1.8504520e+03 - 2.9028680e+02 2.3370043e+03 -1.8627988e+03 - 2.7497015e+02 2.3261093e+03 -1.8723574e+03 - 2.4822721e+02 2.3158797e+03 -1.8790415e+03 - 2.1268444e+02 2.3061504e+03 -1.8830196e+03 - 1.7039678e+02 2.2966968e+03 -1.8845750e+03 - 1.2293879e+02 2.2872829e+03 -1.8840257e+03 - 7.1510259e+01 2.2776838e+03 -1.8816842e+03 - 1.7028596e+01 2.2676961e+03 -1.8778396e+03 - -3.9798293e+01 2.2571402e+03 -1.8727512e+03 - -9.8417308e+01 2.2458599e+03 -1.8666486e+03 - -1.5838998e+02 2.2337204e+03 -1.8597335e+03 - -2.1936325e+02 2.2206058e+03 -1.8521830e+03 - -2.8104822e+02 2.2064168e+03 -1.8441530e+03 - -3.4320473e+02 2.1910684e+03 -1.8357809e+03 - -4.0562997e+02 2.1744881e+03 -1.8271883e+03 - -4.6815018e+02 2.1566142e+03 -1.8184834e+03 - -5.3061443e+02 2.1373949e+03 -1.8097623e+03 - -5.9288995e+02 2.1167864e+03 -1.8011114e+03 - -6.5485862e+02 2.0947526e+03 -1.7926078e+03 - -7.1641430e+02 2.0712640e+03 -1.7843209e+03 - -7.7746078e+02 2.0462973e+03 -1.7763130e+03 - -8.3791014e+02 2.0198346e+03 -1.7686400e+03 - -8.9768158e+02 1.9918629e+03 -1.7613522e+03 - -9.5670037e+02 1.9623740e+03 -1.7544948e+03 - -1.0148971e+03 1.9313638e+03 -1.7481080e+03 - -1.0722072e+03 1.8988323e+03 -1.7422275e+03 - -1.1285700e+03 1.8647831e+03 -1.7368850e+03 - -1.1839291e+03 1.8292234e+03 -1.7321082e+03 - -1.2382314e+03 1.7921636e+03 -1.7279212e+03 - -1.2914269e+03 1.7536173e+03 -1.7243445e+03 - -1.3434691e+03 1.7136012e+03 -1.7213951e+03 - -1.3943140e+03 1.6721346e+03 -1.7190870e+03 - -1.4439208e+03 1.6292400e+03 -1.7174307e+03 - -1.4922510e+03 1.5849423e+03 -1.7164340e+03 - -1.5392692e+03 1.5392692e+03 -1.7161012e+03 - -1.5849423e+03 1.4922510e+03 -1.7164340e+03 - -1.6292400e+03 1.4439208e+03 -1.7174307e+03 - -1.6721346e+03 1.3943140e+03 -1.7190870e+03 - -1.7136012e+03 1.3434691e+03 -1.7213951e+03 - -1.7536173e+03 1.2914269e+03 -1.7243445e+03 - -1.7921636e+03 1.2382314e+03 -1.7279212e+03 - -1.8292234e+03 1.1839291e+03 -1.7321082e+03 - -1.8647831e+03 1.1285700e+03 -1.7368850e+03 - -1.8988323e+03 1.0722072e+03 -1.7422275e+03 - -1.9313638e+03 1.0148971e+03 -1.7481080e+03 - -1.9623740e+03 9.5670037e+02 -1.7544948e+03 - -1.9918629e+03 8.9768158e+02 -1.7613522e+03 - -2.0198346e+03 8.3791014e+02 -1.7686400e+03 - -2.0462973e+03 7.7746078e+02 -1.7763130e+03 - -2.0712640e+03 7.1641430e+02 -1.7843209e+03 - -2.0947526e+03 6.5485862e+02 -1.7926078e+03 - -2.1167864e+03 5.9288995e+02 -1.8011114e+03 - -2.1373949e+03 5.3061443e+02 -1.8097623e+03 - -2.1566142e+03 4.6815018e+02 -1.8184834e+03 - -2.1744881e+03 4.0562997e+02 -1.8271883e+03 - -2.1910684e+03 3.4320473e+02 -1.8357809e+03 - -2.2064168e+03 2.8104822e+02 -1.8441530e+03 - -2.2206058e+03 2.1936325e+02 -1.8521830e+03 - -2.2337204e+03 1.5838998e+02 -1.8597335e+03 - -2.2458599e+03 9.8417308e+01 -1.8666486e+03 - -2.2571402e+03 3.9798293e+01 -1.8727512e+03 - -2.2676961e+03 -1.7028596e+01 -1.8778396e+03 - -2.2776838e+03 -7.1510259e+01 -1.8816842e+03 - -2.2872829e+03 -1.2293879e+02 -1.8840257e+03 - -2.2966968e+03 -1.7039678e+02 -1.8845750e+03 - -2.3061504e+03 -2.1268444e+02 -1.8830196e+03 - -2.3158797e+03 -2.4822721e+02 -1.8790415e+03 - -2.3261093e+03 -2.7497015e+02 -1.8723574e+03 - -2.3370043e+03 -2.9028680e+02 -1.8627988e+03 - -2.3485862e+03 -2.9097681e+02 -1.8504520e+03 - -2.3606009e+03 -2.7351145e+02 -1.8358733e+03 - -2.3723585e+03 -2.3478577e+02 -1.8203471e+03 - -2.3826338e+03 -1.7361062e+02 -1.8060368e+03 - -2.3898091e+03 -9.2713679e+01 -1.7957308e+03 - -2.3924051e+03 0.0000000e+00 -1.7919493e+03 - -2.3898091e+03 9.2713679e+01 -1.7957308e+03 - -2.3826338e+03 1.7361062e+02 -1.8060368e+03 - -2.3723585e+03 2.3478577e+02 -1.8203471e+03 - -2.3606009e+03 2.7351145e+02 -1.8358733e+03 - -2.3485862e+03 2.9097681e+02 -1.8504520e+03 - -2.3370043e+03 2.9028680e+02 -1.8627988e+03 - -2.3261093e+03 2.7497015e+02 -1.8723574e+03 - -2.3158797e+03 2.4822721e+02 -1.8790415e+03 - -2.3061504e+03 2.1268444e+02 -1.8830196e+03 - -2.2966968e+03 1.7039678e+02 -1.8845750e+03 - -2.2872829e+03 1.2293879e+02 -1.8840257e+03 - -2.2776838e+03 7.1510259e+01 -1.8816842e+03 - -2.2676961e+03 1.7028596e+01 -1.8778396e+03 - -2.2571402e+03 -3.9798293e+01 -1.8727512e+03 - -2.2458599e+03 -9.8417308e+01 -1.8666486e+03 - -2.2337204e+03 -1.5838998e+02 -1.8597335e+03 - -2.2206058e+03 -2.1936325e+02 -1.8521830e+03 - -2.2064168e+03 -2.8104822e+02 -1.8441530e+03 - -2.1910684e+03 -3.4320473e+02 -1.8357809e+03 - -2.1744881e+03 -4.0562997e+02 -1.8271883e+03 - -2.1566142e+03 -4.6815018e+02 -1.8184834e+03 - -2.1373949e+03 -5.3061443e+02 -1.8097623e+03 - -2.1167864e+03 -5.9288995e+02 -1.8011114e+03 - -2.0947526e+03 -6.5485862e+02 -1.7926078e+03 - -2.0712640e+03 -7.1641430e+02 -1.7843209e+03 - -2.0462973e+03 -7.7746078e+02 -1.7763130e+03 - -2.0198346e+03 -8.3791014e+02 -1.7686400e+03 - -1.9918629e+03 -8.9768158e+02 -1.7613522e+03 - -1.9623740e+03 -9.5670037e+02 -1.7544948e+03 - -1.9313638e+03 -1.0148971e+03 -1.7481080e+03 - -1.8988323e+03 -1.0722072e+03 -1.7422275e+03 - -1.8647831e+03 -1.1285700e+03 -1.7368850e+03 - -1.8292234e+03 -1.1839291e+03 -1.7321082e+03 - -1.7921636e+03 -1.2382314e+03 -1.7279212e+03 - -1.7536173e+03 -1.2914269e+03 -1.7243445e+03 - -1.7136012e+03 -1.3434691e+03 -1.7213951e+03 - -1.6721346e+03 -1.3943140e+03 -1.7190870e+03 - -1.6292400e+03 -1.4439208e+03 -1.7174307e+03 - -1.5849423e+03 -1.4922510e+03 -1.7164340e+03 - -1.5392692e+03 -1.5392692e+03 -1.7161012e+03 - -1.4922510e+03 -1.5849423e+03 -1.7164340e+03 - -1.4439208e+03 -1.6292400e+03 -1.7174307e+03 - -1.3943140e+03 -1.6721346e+03 -1.7190870e+03 - -1.3434691e+03 -1.7136012e+03 -1.7213951e+03 - -1.2914269e+03 -1.7536173e+03 -1.7243445e+03 - -1.2382314e+03 -1.7921636e+03 -1.7279212e+03 - -1.1839291e+03 -1.8292234e+03 -1.7321082e+03 - -1.1285700e+03 -1.8647831e+03 -1.7368850e+03 - -1.0722072e+03 -1.8988323e+03 -1.7422275e+03 - -1.0148971e+03 -1.9313638e+03 -1.7481080e+03 - -9.5670037e+02 -1.9623740e+03 -1.7544948e+03 - -8.9768158e+02 -1.9918629e+03 -1.7613522e+03 - -8.3791014e+02 -2.0198346e+03 -1.7686400e+03 - -7.7746078e+02 -2.0462973e+03 -1.7763130e+03 - -7.1641430e+02 -2.0712640e+03 -1.7843209e+03 - -6.5485862e+02 -2.0947526e+03 -1.7926078e+03 - -5.9288995e+02 -2.1167864e+03 -1.8011114e+03 - -5.3061443e+02 -2.1373949e+03 -1.8097623e+03 - -4.6815018e+02 -2.1566142e+03 -1.8184834e+03 - -4.0562997e+02 -2.1744881e+03 -1.8271883e+03 - -3.4320473e+02 -2.1910684e+03 -1.8357809e+03 - -2.8104822e+02 -2.2064168e+03 -1.8441530e+03 - -2.1936325e+02 -2.2206058e+03 -1.8521830e+03 - -1.5838998e+02 -2.2337204e+03 -1.8597335e+03 - -9.8417308e+01 -2.2458599e+03 -1.8666486e+03 - -3.9798293e+01 -2.2571402e+03 -1.8727512e+03 - 1.7028596e+01 -2.2676961e+03 -1.8778396e+03 - 7.1510259e+01 -2.2776838e+03 -1.8816842e+03 - 1.2293879e+02 -2.2872829e+03 -1.8840257e+03 - 1.7039678e+02 -2.2966968e+03 -1.8845750e+03 - 2.1268444e+02 -2.3061504e+03 -1.8830196e+03 - 2.4822721e+02 -2.3158797e+03 -1.8790415e+03 - 2.7497015e+02 -2.3261093e+03 -1.8723574e+03 - 2.9028680e+02 -2.3370043e+03 -1.8627988e+03 - 2.9097681e+02 -2.3485862e+03 -1.8504520e+03 - 2.7351145e+02 -2.3606009e+03 -1.8358733e+03 - 2.3478577e+02 -2.3723585e+03 -1.8203471e+03 - 1.7361062e+02 -2.3826338e+03 -1.8060368e+03 - 9.2713679e+01 -2.3898091e+03 -1.7957308e+03 - -2.4067136e-09 -2.3924051e+03 -1.7919493e+03 - -9.2713679e+01 -2.3898091e+03 -1.7957308e+03 - -1.7361062e+02 -2.3826338e+03 -1.8060368e+03 - -2.3478577e+02 -2.3723585e+03 -1.8203471e+03 - -2.7351145e+02 -2.3606009e+03 -1.8358733e+03 - -2.9097681e+02 -2.3485862e+03 -1.8504520e+03 - -2.9028680e+02 -2.3370043e+03 -1.8627988e+03 - -2.7497015e+02 -2.3261093e+03 -1.8723574e+03 - -2.4822721e+02 -2.3158797e+03 -1.8790415e+03 - -2.1268444e+02 -2.3061504e+03 -1.8830196e+03 - -1.7039678e+02 -2.2966968e+03 -1.8845750e+03 - -1.2293879e+02 -2.2872829e+03 -1.8840257e+03 - -7.1510259e+01 -2.2776838e+03 -1.8816842e+03 - -1.7028596e+01 -2.2676961e+03 -1.8778396e+03 - 3.9798293e+01 -2.2571402e+03 -1.8727512e+03 - 9.8417308e+01 -2.2458599e+03 -1.8666486e+03 - 1.5838998e+02 -2.2337204e+03 -1.8597335e+03 - 2.1936325e+02 -2.2206058e+03 -1.8521830e+03 - 2.8104822e+02 -2.2064168e+03 -1.8441530e+03 - 3.4320473e+02 -2.1910684e+03 -1.8357809e+03 - 4.0562997e+02 -2.1744881e+03 -1.8271883e+03 - 4.6815018e+02 -2.1566142e+03 -1.8184834e+03 - 5.3061443e+02 -2.1373949e+03 -1.8097623e+03 - 5.9288995e+02 -2.1167864e+03 -1.8011114e+03 - 6.5485862e+02 -2.0947526e+03 -1.7926078e+03 - 7.1641430e+02 -2.0712640e+03 -1.7843209e+03 - 7.7746078e+02 -2.0462973e+03 -1.7763130e+03 - 8.3791014e+02 -2.0198346e+03 -1.7686400e+03 - 8.9768158e+02 -1.9918629e+03 -1.7613522e+03 - 9.5670037e+02 -1.9623740e+03 -1.7544948e+03 - 1.0148971e+03 -1.9313638e+03 -1.7481080e+03 - 1.0722072e+03 -1.8988323e+03 -1.7422275e+03 - 1.1285700e+03 -1.8647831e+03 -1.7368850e+03 - 1.1839291e+03 -1.8292234e+03 -1.7321082e+03 - 1.2382314e+03 -1.7921636e+03 -1.7279212e+03 - 1.2914269e+03 -1.7536173e+03 -1.7243445e+03 - 1.3434691e+03 -1.7136012e+03 -1.7213951e+03 - 1.3943140e+03 -1.6721346e+03 -1.7190870e+03 - 1.4439208e+03 -1.6292400e+03 -1.7174307e+03 - 1.4922510e+03 -1.5849423e+03 -1.7164340e+03 - 1.5392692e+03 -1.5392692e+03 -1.7161012e+03 - 1.5849423e+03 -1.4922510e+03 -1.7164340e+03 - 1.6292400e+03 -1.4439208e+03 -1.7174307e+03 - 1.6721346e+03 -1.3943140e+03 -1.7190870e+03 - 1.7136012e+03 -1.3434691e+03 -1.7213951e+03 - 1.7536173e+03 -1.2914269e+03 -1.7243445e+03 - 1.7921636e+03 -1.2382314e+03 -1.7279212e+03 - 1.8292234e+03 -1.1839291e+03 -1.7321082e+03 - 1.8647831e+03 -1.1285700e+03 -1.7368850e+03 - 1.8988323e+03 -1.0722072e+03 -1.7422275e+03 - 1.9313638e+03 -1.0148971e+03 -1.7481080e+03 - 1.9623740e+03 -9.5670037e+02 -1.7544948e+03 - 1.9918629e+03 -8.9768158e+02 -1.7613522e+03 - 2.0198346e+03 -8.3791014e+02 -1.7686400e+03 - 2.0462973e+03 -7.7746078e+02 -1.7763130e+03 - 2.0712640e+03 -7.1641430e+02 -1.7843209e+03 - 2.0947526e+03 -6.5485862e+02 -1.7926078e+03 - 2.1167864e+03 -5.9288995e+02 -1.8011114e+03 - 2.1373949e+03 -5.3061443e+02 -1.8097623e+03 - 2.1566142e+03 -4.6815018e+02 -1.8184834e+03 - 2.1744881e+03 -4.0562997e+02 -1.8271883e+03 - 2.1910684e+03 -3.4320473e+02 -1.8357809e+03 - 2.2064168e+03 -2.8104822e+02 -1.8441530e+03 - 2.2206058e+03 -2.1936325e+02 -1.8521830e+03 - 2.2337204e+03 -1.5838998e+02 -1.8597335e+03 - 2.2458599e+03 -9.8417308e+01 -1.8666486e+03 - 2.2571402e+03 -3.9798293e+01 -1.8727512e+03 - 2.2676961e+03 1.7028596e+01 -1.8778396e+03 - 2.2776838e+03 7.1510259e+01 -1.8816842e+03 - 2.2872829e+03 1.2293879e+02 -1.8840257e+03 - 2.2966968e+03 1.7039678e+02 -1.8845750e+03 - 2.3061504e+03 2.1268444e+02 -1.8830196e+03 - 2.3158797e+03 2.4822721e+02 -1.8790415e+03 - 2.3261093e+03 2.7497015e+02 -1.8723574e+03 - 2.3370043e+03 2.9028680e+02 -1.8627988e+03 - 2.3485862e+03 2.9097681e+02 -1.8504520e+03 - 2.3606009e+03 2.7351145e+02 -1.8358733e+03 - 2.3723585e+03 2.3478577e+02 -1.8203471e+03 - 2.3826338e+03 1.7361062e+02 -1.8060368e+03 - 2.3898091e+03 9.2713679e+01 -1.7957308e+03 - 2.3924051e+03 -2.4067136e-09 -1.7919493e+03 - 2.2976931e+03 -4.8134273e-09 -1.8924072e+03 - 2.2958075e+03 -8.2552455e+01 -1.8952031e+03 - 2.2905032e+03 -1.5614455e+02 -1.9029493e+03 - 2.2826640e+03 -2.1428906e+02 -1.9140299e+03 - 2.2733255e+03 -2.5401931e+02 -1.9265248e+03 - 2.2633541e+03 -2.7538264e+02 -1.9387856e+03 - 2.2533111e+03 -2.8023718e+02 -1.9496883e+03 - 2.2434668e+03 -2.7115415e+02 -1.9586200e+03 - 2.2338791e+03 -2.5072870e+02 -1.9653497e+03 - 2.2244760e+03 -2.2125780e+02 -1.9698882e+03 - 2.2151176e+03 -1.8464522e+02 -1.9723801e+03 - 2.2056368e+03 -1.4241701e+02 -1.9730328e+03 - 2.1958621e+03 -9.5778021e+01 -1.9720741e+03 - 2.1856304e+03 -4.5675662e+01 -1.9697299e+03 - 2.1747922e+03 7.1429747e+00 -1.9662128e+03 - 2.1632135e+03 6.2084415e+01 -1.9617172e+03 - 2.1507760e+03 1.1867239e+02 -1.9564190e+03 - 2.1373759e+03 1.7652008e+02 -1.9504758e+03 - 2.1229231e+03 2.3530921e+02 -1.9440282e+03 - 2.1073391e+03 2.9477437e+02 -1.9372024e+03 - 2.0905564e+03 3.5469123e+02 -1.9301109e+03 - 2.0725170e+03 4.1486768e+02 -1.9228548e+03 - 2.0531716e+03 4.7513715e+02 -1.9155249e+03 - 2.0324784e+03 5.3535351e+02 -1.9082028e+03 - 2.0104026e+03 5.9538715e+02 -1.9009622e+03 - 1.9869156e+03 6.5512203e+02 -1.8938697e+03 - 1.9619947e+03 7.1445334e+02 -1.8869851e+03 - 1.9356223e+03 7.7328566e+02 -1.8803626e+03 - 1.9077857e+03 8.3153160e+02 -1.8740511e+03 - 1.8784767e+03 8.8911063e+02 -1.8680944e+03 - 1.8476915e+03 9.4594822e+02 -1.8625319e+03 - 1.8154299e+03 1.0019751e+03 -1.8573985e+03 - 1.7816958e+03 1.0571268e+03 -1.8527255e+03 - 1.7464963e+03 1.1113430e+03 -1.8485401e+03 - 1.7098422e+03 1.1645673e+03 -1.8448661e+03 - 1.6717473e+03 1.2167471e+03 -1.8417237e+03 - 1.6322286e+03 1.2678330e+03 -1.8391298e+03 - 1.5913062e+03 1.3177788e+03 -1.8370982e+03 - 1.5490029e+03 1.3665416e+03 -1.8356396e+03 - 1.5053447e+03 1.4140811e+03 -1.8347614e+03 - 1.4603603e+03 1.4603603e+03 -1.8344682e+03 - 1.4140811e+03 1.5053447e+03 -1.8347614e+03 - 1.3665416e+03 1.5490029e+03 -1.8356396e+03 - 1.3177788e+03 1.5913062e+03 -1.8370982e+03 - 1.2678330e+03 1.6322286e+03 -1.8391298e+03 - 1.2167471e+03 1.6717473e+03 -1.8417237e+03 - 1.1645673e+03 1.7098422e+03 -1.8448661e+03 - 1.1113430e+03 1.7464963e+03 -1.8485401e+03 - 1.0571268e+03 1.7816958e+03 -1.8527255e+03 - 1.0019751e+03 1.8154299e+03 -1.8573985e+03 - 9.4594822e+02 1.8476915e+03 -1.8625319e+03 - 8.8911063e+02 1.8784767e+03 -1.8680944e+03 - 8.3153160e+02 1.9077857e+03 -1.8740511e+03 - 7.7328566e+02 1.9356223e+03 -1.8803626e+03 - 7.1445334e+02 1.9619947e+03 -1.8869851e+03 - 6.5512203e+02 1.9869156e+03 -1.8938697e+03 - 5.9538715e+02 2.0104026e+03 -1.9009622e+03 - 5.3535351e+02 2.0324784e+03 -1.9082028e+03 - 4.7513715e+02 2.0531716e+03 -1.9155249e+03 - 4.1486768e+02 2.0725170e+03 -1.9228548e+03 - 3.5469123e+02 2.0905564e+03 -1.9301109e+03 - 2.9477437e+02 2.1073391e+03 -1.9372024e+03 - 2.3530921e+02 2.1229231e+03 -1.9440282e+03 - 1.7652008e+02 2.1373759e+03 -1.9504758e+03 - 1.1867239e+02 2.1507760e+03 -1.9564190e+03 - 6.2084415e+01 2.1632135e+03 -1.9617172e+03 - 7.1429748e+00 2.1747922e+03 -1.9662128e+03 - -4.5675662e+01 2.1856304e+03 -1.9697299e+03 - -9.5778021e+01 2.1958621e+03 -1.9720741e+03 - -1.4241701e+02 2.2056368e+03 -1.9730328e+03 - -1.8464522e+02 2.2151176e+03 -1.9723801e+03 - -2.2125780e+02 2.2244760e+03 -1.9698882e+03 - -2.5072870e+02 2.2338791e+03 -1.9653497e+03 - -2.7115415e+02 2.2434668e+03 -1.9586200e+03 - -2.8023718e+02 2.2533111e+03 -1.9496883e+03 - -2.7538264e+02 2.2633541e+03 -1.9387856e+03 - -2.5401931e+02 2.2733255e+03 -1.9265248e+03 - -2.1428906e+02 2.2826640e+03 -1.9140299e+03 - -1.5614455e+02 2.2905032e+03 -1.9029493e+03 - -8.2552455e+01 2.2958075e+03 -1.8952031e+03 - -4.8134273e-09 2.2976931e+03 -1.8924072e+03 - 8.2552455e+01 2.2958075e+03 -1.8952031e+03 - 1.5614455e+02 2.2905032e+03 -1.9029493e+03 - 2.1428906e+02 2.2826640e+03 -1.9140299e+03 - 2.5401931e+02 2.2733255e+03 -1.9265248e+03 - 2.7538264e+02 2.2633541e+03 -1.9387856e+03 - 2.8023718e+02 2.2533111e+03 -1.9496883e+03 - 2.7115415e+02 2.2434668e+03 -1.9586200e+03 - 2.5072870e+02 2.2338791e+03 -1.9653497e+03 - 2.2125780e+02 2.2244760e+03 -1.9698882e+03 - 1.8464522e+02 2.2151176e+03 -1.9723801e+03 - 1.4241701e+02 2.2056368e+03 -1.9730328e+03 - 9.5778021e+01 2.1958621e+03 -1.9720741e+03 - 4.5675662e+01 2.1856304e+03 -1.9697299e+03 - -7.1429748e+00 2.1747922e+03 -1.9662128e+03 - -6.2084415e+01 2.1632135e+03 -1.9617172e+03 - -1.1867239e+02 2.1507760e+03 -1.9564190e+03 - -1.7652008e+02 2.1373759e+03 -1.9504758e+03 - -2.3530921e+02 2.1229231e+03 -1.9440282e+03 - -2.9477437e+02 2.1073391e+03 -1.9372024e+03 - -3.5469123e+02 2.0905564e+03 -1.9301109e+03 - -4.1486768e+02 2.0725170e+03 -1.9228548e+03 - -4.7513715e+02 2.0531716e+03 -1.9155249e+03 - -5.3535351e+02 2.0324784e+03 -1.9082028e+03 - -5.9538715e+02 2.0104026e+03 -1.9009622e+03 - -6.5512203e+02 1.9869156e+03 -1.8938697e+03 - -7.1445334e+02 1.9619947e+03 -1.8869851e+03 - -7.7328566e+02 1.9356223e+03 -1.8803626e+03 - -8.3153160e+02 1.9077857e+03 -1.8740511e+03 - -8.8911063e+02 1.8784767e+03 -1.8680944e+03 - -9.4594822e+02 1.8476915e+03 -1.8625319e+03 - -1.0019751e+03 1.8154299e+03 -1.8573985e+03 - -1.0571268e+03 1.7816958e+03 -1.8527255e+03 - -1.1113430e+03 1.7464963e+03 -1.8485401e+03 - -1.1645673e+03 1.7098422e+03 -1.8448661e+03 - -1.2167471e+03 1.6717473e+03 -1.8417237e+03 - -1.2678330e+03 1.6322286e+03 -1.8391298e+03 - -1.3177788e+03 1.5913062e+03 -1.8370982e+03 - -1.3665416e+03 1.5490029e+03 -1.8356396e+03 - -1.4140811e+03 1.5053447e+03 -1.8347614e+03 - -1.4603603e+03 1.4603603e+03 -1.8344682e+03 - -1.5053447e+03 1.4140811e+03 -1.8347614e+03 - -1.5490029e+03 1.3665416e+03 -1.8356396e+03 - -1.5913062e+03 1.3177788e+03 -1.8370982e+03 - -1.6322286e+03 1.2678330e+03 -1.8391298e+03 - -1.6717473e+03 1.2167471e+03 -1.8417237e+03 - -1.7098422e+03 1.1645673e+03 -1.8448661e+03 - -1.7464963e+03 1.1113430e+03 -1.8485401e+03 - -1.7816958e+03 1.0571268e+03 -1.8527255e+03 - -1.8154299e+03 1.0019751e+03 -1.8573985e+03 - -1.8476915e+03 9.4594822e+02 -1.8625319e+03 - -1.8784767e+03 8.8911063e+02 -1.8680944e+03 - -1.9077857e+03 8.3153160e+02 -1.8740511e+03 - -1.9356223e+03 7.7328566e+02 -1.8803626e+03 - -1.9619947e+03 7.1445334e+02 -1.8869851e+03 - -1.9869156e+03 6.5512203e+02 -1.8938697e+03 - -2.0104026e+03 5.9538715e+02 -1.9009622e+03 - -2.0324784e+03 5.3535351e+02 -1.9082028e+03 - -2.0531716e+03 4.7513715e+02 -1.9155249e+03 - -2.0725170e+03 4.1486768e+02 -1.9228548e+03 - -2.0905564e+03 3.5469123e+02 -1.9301109e+03 - -2.1073391e+03 2.9477437e+02 -1.9372024e+03 - -2.1229231e+03 2.3530921e+02 -1.9440282e+03 - -2.1373759e+03 1.7652008e+02 -1.9504758e+03 - -2.1507760e+03 1.1867239e+02 -1.9564190e+03 - -2.1632135e+03 6.2084415e+01 -1.9617172e+03 - -2.1747922e+03 7.1429748e+00 -1.9662128e+03 - -2.1856304e+03 -4.5675662e+01 -1.9697299e+03 - -2.1958621e+03 -9.5778021e+01 -1.9720741e+03 - -2.2056368e+03 -1.4241701e+02 -1.9730328e+03 - -2.2151176e+03 -1.8464522e+02 -1.9723801e+03 - -2.2244760e+03 -2.2125780e+02 -1.9698882e+03 - -2.2338791e+03 -2.5072870e+02 -1.9653497e+03 - -2.2434668e+03 -2.7115415e+02 -1.9586200e+03 - -2.2533111e+03 -2.8023718e+02 -1.9496883e+03 - -2.2633541e+03 -2.7538264e+02 -1.9387856e+03 - -2.2733255e+03 -2.5401931e+02 -1.9265248e+03 - -2.2826640e+03 -2.1428906e+02 -1.9140299e+03 - -2.2905032e+03 -1.5614455e+02 -1.9029493e+03 - -2.2958075e+03 -8.2552455e+01 -1.8952031e+03 - -2.2976931e+03 7.2201409e-09 -1.8924072e+03 - -2.2958075e+03 8.2552455e+01 -1.8952031e+03 - -2.2905032e+03 1.5614455e+02 -1.9029493e+03 - -2.2826640e+03 2.1428906e+02 -1.9140299e+03 - -2.2733255e+03 2.5401931e+02 -1.9265248e+03 - -2.2633541e+03 2.7538264e+02 -1.9387856e+03 - -2.2533111e+03 2.8023718e+02 -1.9496883e+03 - -2.2434668e+03 2.7115415e+02 -1.9586200e+03 - -2.2338791e+03 2.5072870e+02 -1.9653497e+03 - -2.2244760e+03 2.2125780e+02 -1.9698882e+03 - -2.2151176e+03 1.8464522e+02 -1.9723801e+03 - -2.2056368e+03 1.4241701e+02 -1.9730328e+03 - -2.1958621e+03 9.5778021e+01 -1.9720741e+03 - -2.1856304e+03 4.5675662e+01 -1.9697299e+03 - -2.1747922e+03 -7.1429748e+00 -1.9662128e+03 - -2.1632135e+03 -6.2084415e+01 -1.9617172e+03 - -2.1507760e+03 -1.1867239e+02 -1.9564190e+03 - -2.1373759e+03 -1.7652008e+02 -1.9504758e+03 - -2.1229231e+03 -2.3530921e+02 -1.9440282e+03 - -2.1073391e+03 -2.9477437e+02 -1.9372024e+03 - -2.0905564e+03 -3.5469123e+02 -1.9301109e+03 - -2.0725170e+03 -4.1486768e+02 -1.9228548e+03 - -2.0531716e+03 -4.7513715e+02 -1.9155249e+03 - -2.0324784e+03 -5.3535351e+02 -1.9082028e+03 - -2.0104026e+03 -5.9538715e+02 -1.9009622e+03 - -1.9869156e+03 -6.5512203e+02 -1.8938697e+03 - -1.9619947e+03 -7.1445334e+02 -1.8869851e+03 - -1.9356223e+03 -7.7328566e+02 -1.8803626e+03 - -1.9077857e+03 -8.3153160e+02 -1.8740511e+03 - -1.8784767e+03 -8.8911063e+02 -1.8680944e+03 - -1.8476915e+03 -9.4594822e+02 -1.8625319e+03 - -1.8154299e+03 -1.0019751e+03 -1.8573985e+03 - -1.7816958e+03 -1.0571268e+03 -1.8527255e+03 - -1.7464963e+03 -1.1113430e+03 -1.8485401e+03 - -1.7098422e+03 -1.1645673e+03 -1.8448661e+03 - -1.6717473e+03 -1.2167471e+03 -1.8417237e+03 - -1.6322286e+03 -1.2678330e+03 -1.8391298e+03 - -1.5913062e+03 -1.3177788e+03 -1.8370982e+03 - -1.5490029e+03 -1.3665416e+03 -1.8356396e+03 - -1.5053447e+03 -1.4140811e+03 -1.8347614e+03 - -1.4603603e+03 -1.4603603e+03 -1.8344682e+03 - -1.4140811e+03 -1.5053447e+03 -1.8347614e+03 - -1.3665416e+03 -1.5490029e+03 -1.8356396e+03 - -1.3177788e+03 -1.5913062e+03 -1.8370982e+03 - -1.2678330e+03 -1.6322286e+03 -1.8391298e+03 - -1.2167471e+03 -1.6717473e+03 -1.8417237e+03 - -1.1645673e+03 -1.7098422e+03 -1.8448661e+03 - -1.1113430e+03 -1.7464963e+03 -1.8485401e+03 - -1.0571268e+03 -1.7816958e+03 -1.8527255e+03 - -1.0019751e+03 -1.8154299e+03 -1.8573985e+03 - -9.4594822e+02 -1.8476915e+03 -1.8625319e+03 - -8.8911063e+02 -1.8784767e+03 -1.8680944e+03 - -8.3153160e+02 -1.9077857e+03 -1.8740511e+03 - -7.7328566e+02 -1.9356223e+03 -1.8803626e+03 - -7.1445334e+02 -1.9619947e+03 -1.8869851e+03 - -6.5512203e+02 -1.9869156e+03 -1.8938697e+03 - -5.9538715e+02 -2.0104026e+03 -1.9009622e+03 - -5.3535351e+02 -2.0324784e+03 -1.9082028e+03 - -4.7513715e+02 -2.0531716e+03 -1.9155249e+03 - -4.1486768e+02 -2.0725170e+03 -1.9228548e+03 - -3.5469123e+02 -2.0905564e+03 -1.9301109e+03 - -2.9477437e+02 -2.1073391e+03 -1.9372024e+03 - -2.3530921e+02 -2.1229231e+03 -1.9440282e+03 - -1.7652008e+02 -2.1373759e+03 -1.9504758e+03 - -1.1867239e+02 -2.1507760e+03 -1.9564190e+03 - -6.2084415e+01 -2.1632135e+03 -1.9617172e+03 - -7.1429748e+00 -2.1747922e+03 -1.9662128e+03 - 4.5675662e+01 -2.1856304e+03 -1.9697299e+03 - 9.5778021e+01 -2.1958621e+03 -1.9720741e+03 - 1.4241701e+02 -2.2056368e+03 -1.9730328e+03 - 1.8464522e+02 -2.2151176e+03 -1.9723801e+03 - 2.2125780e+02 -2.2244760e+03 -1.9698882e+03 - 2.5072870e+02 -2.2338791e+03 -1.9653497e+03 - 2.7115415e+02 -2.2434668e+03 -1.9586200e+03 - 2.8023718e+02 -2.2533111e+03 -1.9496883e+03 - 2.7538264e+02 -2.2633541e+03 -1.9387856e+03 - 2.5401931e+02 -2.2733255e+03 -1.9265248e+03 - 2.1428906e+02 -2.2826640e+03 -1.9140299e+03 - 1.5614455e+02 -2.2905032e+03 -1.9029493e+03 - 8.2552455e+01 -2.2958075e+03 -1.8952031e+03 - 4.8134273e-09 -2.2976931e+03 -1.8924072e+03 - -8.2552455e+01 -2.2958075e+03 -1.8952031e+03 - -1.5614455e+02 -2.2905032e+03 -1.9029493e+03 - -2.1428906e+02 -2.2826640e+03 -1.9140299e+03 - -2.5401931e+02 -2.2733255e+03 -1.9265248e+03 - -2.7538264e+02 -2.2633541e+03 -1.9387856e+03 - -2.8023718e+02 -2.2533111e+03 -1.9496883e+03 - -2.7115415e+02 -2.2434668e+03 -1.9586200e+03 - -2.5072870e+02 -2.2338791e+03 -1.9653497e+03 - -2.2125780e+02 -2.2244760e+03 -1.9698882e+03 - -1.8464522e+02 -2.2151176e+03 -1.9723801e+03 - -1.4241701e+02 -2.2056368e+03 -1.9730328e+03 - -9.5778021e+01 -2.1958621e+03 -1.9720741e+03 - -4.5675662e+01 -2.1856304e+03 -1.9697299e+03 - 7.1429747e+00 -2.1747922e+03 -1.9662128e+03 - 6.2084415e+01 -2.1632135e+03 -1.9617172e+03 - 1.1867239e+02 -2.1507760e+03 -1.9564190e+03 - 1.7652008e+02 -2.1373759e+03 -1.9504758e+03 - 2.3530921e+02 -2.1229231e+03 -1.9440282e+03 - 2.9477437e+02 -2.1073391e+03 -1.9372024e+03 - 3.5469123e+02 -2.0905564e+03 -1.9301109e+03 - 4.1486768e+02 -2.0725170e+03 -1.9228548e+03 - 4.7513715e+02 -2.0531716e+03 -1.9155249e+03 - 5.3535351e+02 -2.0324784e+03 -1.9082028e+03 - 5.9538715e+02 -2.0104026e+03 -1.9009622e+03 - 6.5512203e+02 -1.9869156e+03 -1.8938697e+03 - 7.1445334e+02 -1.9619947e+03 -1.8869851e+03 - 7.7328566e+02 -1.9356223e+03 -1.8803626e+03 - 8.3153160e+02 -1.9077857e+03 -1.8740511e+03 - 8.8911063e+02 -1.8784767e+03 -1.8680944e+03 - 9.4594822e+02 -1.8476915e+03 -1.8625319e+03 - 1.0019751e+03 -1.8154299e+03 -1.8573985e+03 - 1.0571268e+03 -1.7816958e+03 -1.8527255e+03 - 1.1113430e+03 -1.7464963e+03 -1.8485401e+03 - 1.1645673e+03 -1.7098422e+03 -1.8448661e+03 - 1.2167471e+03 -1.6717473e+03 -1.8417237e+03 - 1.2678330e+03 -1.6322286e+03 -1.8391298e+03 - 1.3177788e+03 -1.5913062e+03 -1.8370982e+03 - 1.3665416e+03 -1.5490029e+03 -1.8356396e+03 - 1.4140811e+03 -1.5053447e+03 -1.8347614e+03 - 1.4603603e+03 -1.4603603e+03 -1.8344682e+03 - 1.5053447e+03 -1.4140811e+03 -1.8347614e+03 - 1.5490029e+03 -1.3665416e+03 -1.8356396e+03 - 1.5913062e+03 -1.3177788e+03 -1.8370982e+03 - 1.6322286e+03 -1.2678330e+03 -1.8391298e+03 - 1.6717473e+03 -1.2167471e+03 -1.8417237e+03 - 1.7098422e+03 -1.1645673e+03 -1.8448661e+03 - 1.7464963e+03 -1.1113430e+03 -1.8485401e+03 - 1.7816958e+03 -1.0571268e+03 -1.8527255e+03 - 1.8154299e+03 -1.0019751e+03 -1.8573985e+03 - 1.8476915e+03 -9.4594822e+02 -1.8625319e+03 - 1.8784767e+03 -8.8911063e+02 -1.8680944e+03 - 1.9077857e+03 -8.3153160e+02 -1.8740511e+03 - 1.9356223e+03 -7.7328566e+02 -1.8803626e+03 - 1.9619947e+03 -7.1445334e+02 -1.8869851e+03 - 1.9869156e+03 -6.5512203e+02 -1.8938697e+03 - 2.0104026e+03 -5.9538715e+02 -1.9009622e+03 - 2.0324784e+03 -5.3535351e+02 -1.9082028e+03 - 2.0531716e+03 -4.7513715e+02 -1.9155249e+03 - 2.0725170e+03 -4.1486768e+02 -1.9228548e+03 - 2.0905564e+03 -3.5469123e+02 -1.9301109e+03 - 2.1073391e+03 -2.9477437e+02 -1.9372024e+03 - 2.1229231e+03 -2.3530921e+02 -1.9440282e+03 - 2.1373759e+03 -1.7652008e+02 -1.9504758e+03 - 2.1507760e+03 -1.1867239e+02 -1.9564190e+03 - 2.1632135e+03 -6.2084415e+01 -1.9617172e+03 - 2.1747922e+03 -7.1429748e+00 -1.9662128e+03 - 2.1856304e+03 4.5675662e+01 -1.9697299e+03 - 2.1958621e+03 9.5778021e+01 -1.9720741e+03 - 2.2056368e+03 1.4241701e+02 -1.9730328e+03 - 2.2151176e+03 1.8464522e+02 -1.9723801e+03 - 2.2244760e+03 2.2125780e+02 -1.9698882e+03 - 2.2338791e+03 2.5072870e+02 -1.9653497e+03 - 2.2434668e+03 2.7115415e+02 -1.9586200e+03 - 2.2533111e+03 2.8023718e+02 -1.9496883e+03 - 2.2633541e+03 2.7538264e+02 -1.9387856e+03 - 2.2733255e+03 2.5401931e+02 -1.9265248e+03 - 2.2826640e+03 2.1428906e+02 -1.9140299e+03 - 2.2905032e+03 1.5614455e+02 -1.9029493e+03 - 2.2958075e+03 8.2552455e+01 -1.8952031e+03 - 2.2976931e+03 0.0000000e+00 -1.8924072e+03 - 2.1999757e+03 2.4067136e-09 -1.9920594e+03 - 2.1985632e+03 -7.5040873e+01 -1.9942024e+03 - 2.1945367e+03 -1.4301888e+02 -2.0002120e+03 - 2.1884391e+03 -1.9853170e+02 -2.0090024e+03 - 2.1809391e+03 -2.3866885e+02 -2.0192144e+03 - 2.1726372e+03 -2.6284966e+02 -2.0295919e+03 - 2.1639606e+03 -2.7209468e+02 -2.0391912e+03 - 2.1551484e+03 -2.6823658e+02 -2.0474210e+03 - 2.1462852e+03 -2.5333938e+02 -2.0539860e+03 - 2.1373498e+03 -2.2936706e+02 -2.0588016e+03 - 2.1282575e+03 -1.9803834e+02 -2.0619155e+03 - 2.1188915e+03 -1.6079101e+02 -2.0634497e+03 - 2.1091227e+03 -1.1879966e+02 -2.0635622e+03 - 2.0988224e+03 -7.3013418e+01 -2.0624231e+03 - 2.0878678e+03 -2.4197217e+01 -2.0602017e+03 - 2.0761463e+03 2.7030791e+01 -2.0570589e+03 - 2.0635559e+03 8.0167909e+01 -2.0531444e+03 - 2.0500056e+03 1.3480177e+02 -2.0485952e+03 - 2.0354149e+03 1.9059065e+02 -2.0435362e+03 - 2.0197133e+03 2.4724819e+02 -2.0380806e+03 - 2.0028391e+03 3.0453170e+02 -2.0323307e+03 - 1.9847390e+03 3.6223309e+02 -2.0263793e+03 - 1.9653673e+03 4.2017191e+02 -2.0203105e+03 - 1.9446849e+03 4.7819003e+02 -2.0142003e+03 - 1.9226593e+03 5.3614745e+02 -2.0081179e+03 - 1.8992637e+03 5.9391909e+02 -2.0021258e+03 - 1.8744765e+03 6.5139224e+02 -1.9962809e+03 - 1.8482813e+03 7.0846459e+02 -1.9906347e+03 - 1.8206663e+03 7.6504267e+02 -1.9852336e+03 - 1.7916238e+03 8.2104058e+02 -1.9801197e+03 - 1.7611507e+03 8.7637902e+02 -1.9753307e+03 - 1.7292473e+03 9.3098452e+02 -1.9709005e+03 - 1.6959178e+03 9.8478875e+02 -1.9668590e+03 - 1.6611701e+03 1.0377281e+03 -1.9632326e+03 - 1.6250152e+03 1.0897431e+03 -1.9600443e+03 - 1.5874675e+03 1.1407783e+03 -1.9573138e+03 - 1.5485449e+03 1.1907820e+03 -1.9550575e+03 - 1.5082678e+03 1.2397059e+03 -1.9532889e+03 - 1.4666602e+03 1.2875047e+03 -1.9520183e+03 - 1.4237489e+03 1.3341369e+03 -1.9512530e+03 - 1.3795635e+03 1.3795635e+03 -1.9509974e+03 - 1.3341369e+03 1.4237489e+03 -1.9512530e+03 - 1.2875047e+03 1.4666602e+03 -1.9520183e+03 - 1.2397059e+03 1.5082678e+03 -1.9532889e+03 - 1.1907820e+03 1.5485449e+03 -1.9550575e+03 - 1.1407783e+03 1.5874675e+03 -1.9573138e+03 - 1.0897431e+03 1.6250152e+03 -1.9600443e+03 - 1.0377281e+03 1.6611701e+03 -1.9632326e+03 - 9.8478875e+02 1.6959178e+03 -1.9668590e+03 - 9.3098452e+02 1.7292473e+03 -1.9709005e+03 - 8.7637902e+02 1.7611507e+03 -1.9753307e+03 - 8.2104058e+02 1.7916238e+03 -1.9801197e+03 - 7.6504267e+02 1.8206663e+03 -1.9852336e+03 - 7.0846459e+02 1.8482813e+03 -1.9906347e+03 - 6.5139224e+02 1.8744765e+03 -1.9962809e+03 - 5.9391909e+02 1.8992637e+03 -2.0021258e+03 - 5.3614745e+02 1.9226593e+03 -2.0081179e+03 - 4.7819003e+02 1.9446849e+03 -2.0142003e+03 - 4.2017191e+02 1.9653673e+03 -2.0203105e+03 - 3.6223309e+02 1.9847390e+03 -2.0263793e+03 - 3.0453170e+02 2.0028391e+03 -2.0323307e+03 - 2.4724819e+02 2.0197133e+03 -2.0380806e+03 - 1.9059065e+02 2.0354149e+03 -2.0435362e+03 - 1.3480177e+02 2.0500056e+03 -2.0485952e+03 - 8.0167909e+01 2.0635559e+03 -2.0531444e+03 - 2.7030791e+01 2.0761463e+03 -2.0570589e+03 - -2.4197217e+01 2.0878678e+03 -2.0602017e+03 - -7.3013418e+01 2.0988224e+03 -2.0624231e+03 - -1.1879966e+02 2.1091227e+03 -2.0635622e+03 - -1.6079101e+02 2.1188915e+03 -2.0634497e+03 - -1.9803834e+02 2.1282575e+03 -2.0619155e+03 - -2.2936706e+02 2.1373498e+03 -2.0588016e+03 - -2.5333938e+02 2.1462852e+03 -2.0539860e+03 - -2.6823658e+02 2.1551484e+03 -2.0474210e+03 - -2.7209468e+02 2.1639606e+03 -2.0391912e+03 - -2.6284966e+02 2.1726372e+03 -2.0295919e+03 - -2.3866885e+02 2.1809391e+03 -2.0192144e+03 - -1.9853170e+02 2.1884391e+03 -2.0090024e+03 - -1.4301888e+02 2.1945367e+03 -2.0002120e+03 - -7.5040873e+01 2.1985632e+03 -1.9942024e+03 - 0.0000000e+00 2.1999757e+03 -1.9920594e+03 - 7.5040873e+01 2.1985632e+03 -1.9942024e+03 - 1.4301888e+02 2.1945367e+03 -2.0002120e+03 - 1.9853170e+02 2.1884391e+03 -2.0090024e+03 - 2.3866885e+02 2.1809391e+03 -2.0192144e+03 - 2.6284966e+02 2.1726372e+03 -2.0295919e+03 - 2.7209468e+02 2.1639606e+03 -2.0391912e+03 - 2.6823658e+02 2.1551484e+03 -2.0474210e+03 - 2.5333938e+02 2.1462852e+03 -2.0539860e+03 - 2.2936706e+02 2.1373498e+03 -2.0588016e+03 - 1.9803834e+02 2.1282575e+03 -2.0619155e+03 - 1.6079101e+02 2.1188915e+03 -2.0634497e+03 - 1.1879966e+02 2.1091227e+03 -2.0635622e+03 - 7.3013418e+01 2.0988224e+03 -2.0624231e+03 - 2.4197217e+01 2.0878678e+03 -2.0602017e+03 - -2.7030791e+01 2.0761463e+03 -2.0570589e+03 - -8.0167909e+01 2.0635559e+03 -2.0531444e+03 - -1.3480177e+02 2.0500056e+03 -2.0485952e+03 - -1.9059065e+02 2.0354149e+03 -2.0435362e+03 - -2.4724819e+02 2.0197133e+03 -2.0380806e+03 - -3.0453170e+02 2.0028391e+03 -2.0323307e+03 - -3.6223309e+02 1.9847390e+03 -2.0263793e+03 - -4.2017191e+02 1.9653673e+03 -2.0203105e+03 - -4.7819003e+02 1.9446849e+03 -2.0142003e+03 - -5.3614745e+02 1.9226593e+03 -2.0081179e+03 - -5.9391909e+02 1.8992637e+03 -2.0021258e+03 - -6.5139224e+02 1.8744765e+03 -1.9962809e+03 - -7.0846459e+02 1.8482813e+03 -1.9906347e+03 - -7.6504267e+02 1.8206663e+03 -1.9852336e+03 - -8.2104058e+02 1.7916238e+03 -1.9801197e+03 - -8.7637902e+02 1.7611507e+03 -1.9753307e+03 - -9.3098452e+02 1.7292473e+03 -1.9709005e+03 - -9.8478875e+02 1.6959178e+03 -1.9668590e+03 - -1.0377281e+03 1.6611701e+03 -1.9632326e+03 - -1.0897431e+03 1.6250152e+03 -1.9600443e+03 - -1.1407783e+03 1.5874675e+03 -1.9573138e+03 - -1.1907820e+03 1.5485449e+03 -1.9550575e+03 - -1.2397059e+03 1.5082678e+03 -1.9532889e+03 - -1.2875047e+03 1.4666602e+03 -1.9520183e+03 - -1.3341369e+03 1.4237489e+03 -1.9512530e+03 - -1.3795635e+03 1.3795635e+03 -1.9509974e+03 - -1.4237489e+03 1.3341369e+03 -1.9512530e+03 - -1.4666602e+03 1.2875047e+03 -1.9520183e+03 - -1.5082678e+03 1.2397059e+03 -1.9532889e+03 - -1.5485449e+03 1.1907820e+03 -1.9550575e+03 - -1.5874675e+03 1.1407783e+03 -1.9573138e+03 - -1.6250152e+03 1.0897431e+03 -1.9600443e+03 - -1.6611701e+03 1.0377281e+03 -1.9632326e+03 - -1.6959178e+03 9.8478875e+02 -1.9668590e+03 - -1.7292473e+03 9.3098452e+02 -1.9709005e+03 - -1.7611507e+03 8.7637902e+02 -1.9753307e+03 - -1.7916238e+03 8.2104058e+02 -1.9801197e+03 - -1.8206663e+03 7.6504267e+02 -1.9852336e+03 - -1.8482813e+03 7.0846459e+02 -1.9906347e+03 - -1.8744765e+03 6.5139224e+02 -1.9962809e+03 - -1.8992637e+03 5.9391909e+02 -2.0021258e+03 - -1.9226593e+03 5.3614745e+02 -2.0081179e+03 - -1.9446849e+03 4.7819003e+02 -2.0142003e+03 - -1.9653673e+03 4.2017191e+02 -2.0203105e+03 - -1.9847390e+03 3.6223309e+02 -2.0263793e+03 - -2.0028391e+03 3.0453170e+02 -2.0323307e+03 - -2.0197133e+03 2.4724819e+02 -2.0380806e+03 - -2.0354149e+03 1.9059065e+02 -2.0435362e+03 - -2.0500056e+03 1.3480177e+02 -2.0485952e+03 - -2.0635559e+03 8.0167909e+01 -2.0531444e+03 - -2.0761463e+03 2.7030791e+01 -2.0570589e+03 - -2.0878678e+03 -2.4197217e+01 -2.0602017e+03 - -2.0988224e+03 -7.3013418e+01 -2.0624231e+03 - -2.1091227e+03 -1.1879966e+02 -2.0635622e+03 - -2.1188915e+03 -1.6079101e+02 -2.0634497e+03 - -2.1282575e+03 -1.9803834e+02 -2.0619155e+03 - -2.1373498e+03 -2.2936706e+02 -2.0588016e+03 - -2.1462852e+03 -2.5333938e+02 -2.0539860e+03 - -2.1551484e+03 -2.6823658e+02 -2.0474210e+03 - -2.1639606e+03 -2.7209468e+02 -2.0391912e+03 - -2.1726372e+03 -2.6284966e+02 -2.0295919e+03 - -2.1809391e+03 -2.3866885e+02 -2.0192144e+03 - -2.1884391e+03 -1.9853170e+02 -2.0090024e+03 - -2.1945367e+03 -1.4301888e+02 -2.0002120e+03 - -2.1985632e+03 -7.5040873e+01 -1.9942024e+03 - -2.1999757e+03 7.2201409e-09 -1.9920594e+03 - -2.1985632e+03 7.5040873e+01 -1.9942024e+03 - -2.1945367e+03 1.4301888e+02 -2.0002120e+03 - -2.1884391e+03 1.9853170e+02 -2.0090024e+03 - -2.1809391e+03 2.3866885e+02 -2.0192144e+03 - -2.1726372e+03 2.6284966e+02 -2.0295919e+03 - -2.1639606e+03 2.7209468e+02 -2.0391912e+03 - -2.1551484e+03 2.6823658e+02 -2.0474210e+03 - -2.1462852e+03 2.5333938e+02 -2.0539860e+03 - -2.1373498e+03 2.2936706e+02 -2.0588016e+03 - -2.1282575e+03 1.9803834e+02 -2.0619155e+03 - -2.1188915e+03 1.6079101e+02 -2.0634497e+03 - -2.1091227e+03 1.1879966e+02 -2.0635622e+03 - -2.0988224e+03 7.3013418e+01 -2.0624231e+03 - -2.0878678e+03 2.4197217e+01 -2.0602017e+03 - -2.0761463e+03 -2.7030791e+01 -2.0570589e+03 - -2.0635559e+03 -8.0167909e+01 -2.0531444e+03 - -2.0500056e+03 -1.3480177e+02 -2.0485952e+03 - -2.0354149e+03 -1.9059065e+02 -2.0435362e+03 - -2.0197133e+03 -2.4724819e+02 -2.0380806e+03 - -2.0028391e+03 -3.0453170e+02 -2.0323307e+03 - -1.9847390e+03 -3.6223309e+02 -2.0263793e+03 - -1.9653673e+03 -4.2017191e+02 -2.0203105e+03 - -1.9446849e+03 -4.7819003e+02 -2.0142003e+03 - -1.9226593e+03 -5.3614745e+02 -2.0081179e+03 - -1.8992637e+03 -5.9391909e+02 -2.0021258e+03 - -1.8744765e+03 -6.5139224e+02 -1.9962809e+03 - -1.8482813e+03 -7.0846459e+02 -1.9906347e+03 - -1.8206663e+03 -7.6504267e+02 -1.9852336e+03 - -1.7916238e+03 -8.2104058e+02 -1.9801197e+03 - -1.7611507e+03 -8.7637902e+02 -1.9753307e+03 - -1.7292473e+03 -9.3098452e+02 -1.9709005e+03 - -1.6959178e+03 -9.8478875e+02 -1.9668590e+03 - -1.6611701e+03 -1.0377281e+03 -1.9632326e+03 - -1.6250152e+03 -1.0897431e+03 -1.9600443e+03 - -1.5874675e+03 -1.1407783e+03 -1.9573138e+03 - -1.5485449e+03 -1.1907820e+03 -1.9550575e+03 - -1.5082678e+03 -1.2397059e+03 -1.9532889e+03 - -1.4666602e+03 -1.2875047e+03 -1.9520183e+03 - -1.4237489e+03 -1.3341369e+03 -1.9512530e+03 - -1.3795635e+03 -1.3795635e+03 -1.9509974e+03 - -1.3341369e+03 -1.4237489e+03 -1.9512530e+03 - -1.2875047e+03 -1.4666602e+03 -1.9520183e+03 - -1.2397059e+03 -1.5082678e+03 -1.9532889e+03 - -1.1907820e+03 -1.5485449e+03 -1.9550575e+03 - -1.1407783e+03 -1.5874675e+03 -1.9573138e+03 - -1.0897431e+03 -1.6250152e+03 -1.9600443e+03 - -1.0377281e+03 -1.6611701e+03 -1.9632326e+03 - -9.8478875e+02 -1.6959178e+03 -1.9668590e+03 - -9.3098452e+02 -1.7292473e+03 -1.9709005e+03 - -8.7637902e+02 -1.7611507e+03 -1.9753307e+03 - -8.2104058e+02 -1.7916238e+03 -1.9801197e+03 - -7.6504267e+02 -1.8206663e+03 -1.9852336e+03 - -7.0846459e+02 -1.8482813e+03 -1.9906347e+03 - -6.5139224e+02 -1.8744765e+03 -1.9962809e+03 - -5.9391909e+02 -1.8992637e+03 -2.0021258e+03 - -5.3614745e+02 -1.9226593e+03 -2.0081179e+03 - -4.7819003e+02 -1.9446849e+03 -2.0142003e+03 - -4.2017191e+02 -1.9653673e+03 -2.0203105e+03 - -3.6223309e+02 -1.9847390e+03 -2.0263793e+03 - -3.0453170e+02 -2.0028391e+03 -2.0323307e+03 - -2.4724819e+02 -2.0197133e+03 -2.0380806e+03 - -1.9059065e+02 -2.0354149e+03 -2.0435362e+03 - -1.3480177e+02 -2.0500056e+03 -2.0485952e+03 - -8.0167909e+01 -2.0635559e+03 -2.0531444e+03 - -2.7030791e+01 -2.0761463e+03 -2.0570589e+03 - 2.4197217e+01 -2.0878678e+03 -2.0602017e+03 - 7.3013418e+01 -2.0988224e+03 -2.0624231e+03 - 1.1879966e+02 -2.1091227e+03 -2.0635622e+03 - 1.6079101e+02 -2.1188915e+03 -2.0634497e+03 - 1.9803834e+02 -2.1282575e+03 -2.0619155e+03 - 2.2936706e+02 -2.1373498e+03 -2.0588016e+03 - 2.5333938e+02 -2.1462852e+03 -2.0539860e+03 - 2.6823658e+02 -2.1551484e+03 -2.0474210e+03 - 2.7209468e+02 -2.1639606e+03 -2.0391912e+03 - 2.6284966e+02 -2.1726372e+03 -2.0295919e+03 - 2.3866885e+02 -2.1809391e+03 -2.0192144e+03 - 1.9853170e+02 -2.1884391e+03 -2.0090024e+03 - 1.4301888e+02 -2.1945367e+03 -2.0002120e+03 - 7.5040873e+01 -2.1985632e+03 -1.9942024e+03 - 2.4067136e-09 -2.1999757e+03 -1.9920594e+03 - -7.5040873e+01 -2.1985632e+03 -1.9942024e+03 - -1.4301888e+02 -2.1945367e+03 -2.0002120e+03 - -1.9853170e+02 -2.1884391e+03 -2.0090024e+03 - -2.3866885e+02 -2.1809391e+03 -2.0192144e+03 - -2.6284966e+02 -2.1726372e+03 -2.0295919e+03 - -2.7209468e+02 -2.1639606e+03 -2.0391912e+03 - -2.6823658e+02 -2.1551484e+03 -2.0474210e+03 - -2.5333938e+02 -2.1462852e+03 -2.0539860e+03 - -2.2936706e+02 -2.1373498e+03 -2.0588016e+03 - -1.9803834e+02 -2.1282575e+03 -2.0619155e+03 - -1.6079101e+02 -2.1188915e+03 -2.0634497e+03 - -1.1879966e+02 -2.1091227e+03 -2.0635622e+03 - -7.3013418e+01 -2.0988224e+03 -2.0624231e+03 - -2.4197217e+01 -2.0878678e+03 -2.0602017e+03 - 2.7030791e+01 -2.0761463e+03 -2.0570589e+03 - 8.0167909e+01 -2.0635559e+03 -2.0531444e+03 - 1.3480177e+02 -2.0500056e+03 -2.0485952e+03 - 1.9059065e+02 -2.0354149e+03 -2.0435362e+03 - 2.4724819e+02 -2.0197133e+03 -2.0380806e+03 - 3.0453170e+02 -2.0028391e+03 -2.0323307e+03 - 3.6223309e+02 -1.9847390e+03 -2.0263793e+03 - 4.2017191e+02 -1.9653673e+03 -2.0203105e+03 - 4.7819003e+02 -1.9446849e+03 -2.0142003e+03 - 5.3614745e+02 -1.9226593e+03 -2.0081179e+03 - 5.9391909e+02 -1.8992637e+03 -2.0021258e+03 - 6.5139224e+02 -1.8744765e+03 -1.9962809e+03 - 7.0846459e+02 -1.8482813e+03 -1.9906347e+03 - 7.6504267e+02 -1.8206663e+03 -1.9852336e+03 - 8.2104058e+02 -1.7916238e+03 -1.9801197e+03 - 8.7637902e+02 -1.7611507e+03 -1.9753307e+03 - 9.3098452e+02 -1.7292473e+03 -1.9709005e+03 - 9.8478875e+02 -1.6959178e+03 -1.9668590e+03 - 1.0377281e+03 -1.6611701e+03 -1.9632326e+03 - 1.0897431e+03 -1.6250152e+03 -1.9600443e+03 - 1.1407783e+03 -1.5874675e+03 -1.9573138e+03 - 1.1907820e+03 -1.5485449e+03 -1.9550575e+03 - 1.2397059e+03 -1.5082678e+03 -1.9532889e+03 - 1.2875047e+03 -1.4666602e+03 -1.9520183e+03 - 1.3341369e+03 -1.4237489e+03 -1.9512530e+03 - 1.3795635e+03 -1.3795635e+03 -1.9509974e+03 - 1.4237489e+03 -1.3341369e+03 -1.9512530e+03 - 1.4666602e+03 -1.2875047e+03 -1.9520183e+03 - 1.5082678e+03 -1.2397059e+03 -1.9532889e+03 - 1.5485449e+03 -1.1907820e+03 -1.9550575e+03 - 1.5874675e+03 -1.1407783e+03 -1.9573138e+03 - 1.6250152e+03 -1.0897431e+03 -1.9600443e+03 - 1.6611701e+03 -1.0377281e+03 -1.9632326e+03 - 1.6959178e+03 -9.8478875e+02 -1.9668590e+03 - 1.7292473e+03 -9.3098452e+02 -1.9709005e+03 - 1.7611507e+03 -8.7637902e+02 -1.9753307e+03 - 1.7916238e+03 -8.2104058e+02 -1.9801197e+03 - 1.8206663e+03 -7.6504267e+02 -1.9852336e+03 - 1.8482813e+03 -7.0846459e+02 -1.9906347e+03 - 1.8744765e+03 -6.5139224e+02 -1.9962809e+03 - 1.8992637e+03 -5.9391909e+02 -2.0021258e+03 - 1.9226593e+03 -5.3614745e+02 -2.0081179e+03 - 1.9446849e+03 -4.7819003e+02 -2.0142003e+03 - 1.9653673e+03 -4.2017191e+02 -2.0203105e+03 - 1.9847390e+03 -3.6223309e+02 -2.0263793e+03 - 2.0028391e+03 -3.0453170e+02 -2.0323307e+03 - 2.0197133e+03 -2.4724819e+02 -2.0380806e+03 - 2.0354149e+03 -1.9059065e+02 -2.0435362e+03 - 2.0500056e+03 -1.3480177e+02 -2.0485952e+03 - 2.0635559e+03 -8.0167909e+01 -2.0531444e+03 - 2.0761463e+03 -2.7030791e+01 -2.0570589e+03 - 2.0878678e+03 2.4197217e+01 -2.0602017e+03 - 2.0988224e+03 7.3013418e+01 -2.0624231e+03 - 2.1091227e+03 1.1879966e+02 -2.0635622e+03 - 2.1188915e+03 1.6079101e+02 -2.0634497e+03 - 2.1282575e+03 1.9803834e+02 -2.0619155e+03 - 2.1373498e+03 2.2936706e+02 -2.0588016e+03 - 2.1462852e+03 2.5333938e+02 -2.0539860e+03 - 2.1551484e+03 2.6823658e+02 -2.0474210e+03 - 2.1639606e+03 2.7209468e+02 -2.0391912e+03 - 2.1726372e+03 2.6284966e+02 -2.0295919e+03 - 2.1809391e+03 2.3866885e+02 -2.0192144e+03 - 2.1884391e+03 1.9853170e+02 -2.0090024e+03 - 2.1945367e+03 1.4301888e+02 -2.0002120e+03 - 2.1985632e+03 7.5040873e+01 -1.9942024e+03 - 2.1999757e+03 0.0000000e+00 -1.9920594e+03 - 2.0995150e+03 2.4067136e-09 -2.0905644e+03 - 2.0984317e+03 -6.9364914e+01 -2.0922560e+03 - 2.0953107e+03 -1.3299320e+02 -2.0970438e+03 - 2.0904899e+03 -1.8631742e+02 -2.1041699e+03 - 2.0844014e+03 -2.2659568e+02 -2.1126475e+03 - 2.0774534e+03 -2.5290876e+02 -2.1215122e+03 - 2.0699567e+03 -2.6571638e+02 -2.1299849e+03 - 2.0621021e+03 -2.6629328e+02 -2.1375281e+03 - 2.0539726e+03 -2.5625838e+02 -2.1438288e+03 - 2.0455703e+03 -2.3726594e+02 -2.1487488e+03 - 2.0368440e+03 -2.1084068e+02 -2.1522710e+03 - 2.0277116e+03 -1.7831083e+02 -2.1544543e+03 - 2.0180763e+03 -1.4079727e+02 -2.1554009e+03 - 2.0078366e+03 -9.9229936e+01 -2.1552343e+03 - 1.9968931e+03 -5.4374438e+01 -2.1540854e+03 - 1.9851520e+03 -6.8601944e+00 -2.1520844e+03 - 1.9725265e+03 4.2793899e+01 -2.1493559e+03 - 1.9589382e+03 9.4157628e+01 -2.1460172e+03 - 1.9443165e+03 1.4687158e+02 -2.1421769e+03 - 1.9285989e+03 2.0063283e+02 -2.1379349e+03 - 1.9117303e+03 2.5518356e+02 -2.1333829e+03 - 1.8936626e+03 3.1030220e+02 -2.1286047e+03 - 1.8743542e+03 3.6579639e+02 -2.1236770e+03 - 1.8537696e+03 4.2149750e+02 -2.1186695e+03 - 1.8318791e+03 4.7725636e+02 -2.1136460e+03 - 1.8086581e+03 5.3293981e+02 -2.1086648e+03 - 1.7840871e+03 5.8842809e+02 -2.1037787e+03 - 1.7581510e+03 6.4361266e+02 -2.0990361e+03 - 1.7308395e+03 6.9839457e+02 -2.0944805e+03 - 1.7021460e+03 7.5268306e+02 -2.0901517e+03 - 1.6720682e+03 8.0639452e+02 -2.0860853e+03 - 1.6406074e+03 8.5945163e+02 -2.0823133e+03 - 1.6077686e+03 9.1178263e+02 -2.0788643e+03 - 1.5735604e+03 9.6332079e+02 -2.0757634e+03 - 1.5379946e+03 1.0140040e+03 -2.0730325e+03 - 1.5010865e+03 1.0637742e+03 -2.0706904e+03 - 1.4628544e+03 1.1125774e+03 -2.0687529e+03 - 1.4233200e+03 1.1603633e+03 -2.0672327e+03 - 1.3825079e+03 1.2070849e+03 -2.0661399e+03 - 1.3404459e+03 1.2526989e+03 -2.0654813e+03 - 1.2971649e+03 1.2971649e+03 -2.0652614e+03 - 1.2526989e+03 1.3404459e+03 -2.0654813e+03 - 1.2070849e+03 1.3825079e+03 -2.0661399e+03 - 1.1603633e+03 1.4233200e+03 -2.0672327e+03 - 1.1125774e+03 1.4628544e+03 -2.0687529e+03 - 1.0637742e+03 1.5010865e+03 -2.0706904e+03 - 1.0140040e+03 1.5379946e+03 -2.0730325e+03 - 9.6332079e+02 1.5735604e+03 -2.0757634e+03 - 9.1178263e+02 1.6077686e+03 -2.0788643e+03 - 8.5945163e+02 1.6406074e+03 -2.0823133e+03 - 8.0639452e+02 1.6720682e+03 -2.0860853e+03 - 7.5268306e+02 1.7021460e+03 -2.0901517e+03 - 6.9839457e+02 1.7308395e+03 -2.0944805e+03 - 6.4361266e+02 1.7581510e+03 -2.0990361e+03 - 5.8842809e+02 1.7840871e+03 -2.1037787e+03 - 5.3293981e+02 1.8086581e+03 -2.1086648e+03 - 4.7725636e+02 1.8318791e+03 -2.1136460e+03 - 4.2149750e+02 1.8537696e+03 -2.1186695e+03 - 3.6579639e+02 1.8743542e+03 -2.1236770e+03 - 3.1030220e+02 1.8936626e+03 -2.1286047e+03 - 2.5518356e+02 1.9117303e+03 -2.1333829e+03 - 2.0063283e+02 1.9285989e+03 -2.1379349e+03 - 1.4687158e+02 1.9443165e+03 -2.1421769e+03 - 9.4157628e+01 1.9589382e+03 -2.1460172e+03 - 4.2793899e+01 1.9725265e+03 -2.1493559e+03 - -6.8601944e+00 1.9851520e+03 -2.1520844e+03 - -5.4374438e+01 1.9968931e+03 -2.1540854e+03 - -9.9229936e+01 2.0078366e+03 -2.1552343e+03 - -1.4079727e+02 2.0180763e+03 -2.1554009e+03 - -1.7831083e+02 2.0277116e+03 -2.1544543e+03 - -2.1084068e+02 2.0368440e+03 -2.1522710e+03 - -2.3726594e+02 2.0455703e+03 -2.1487488e+03 - -2.5625838e+02 2.0539726e+03 -2.1438288e+03 - -2.6629328e+02 2.0621021e+03 -2.1375281e+03 - -2.6571638e+02 2.0699567e+03 -2.1299849e+03 - -2.5290876e+02 2.0774534e+03 -2.1215122e+03 - -2.2659568e+02 2.0844014e+03 -2.1126475e+03 - -1.8631742e+02 2.0904899e+03 -2.1041699e+03 - -1.3299320e+02 2.0953107e+03 -2.0970438e+03 - -6.9364914e+01 2.0984317e+03 -2.0922560e+03 - 2.4067136e-09 2.0995150e+03 -2.0905644e+03 - 6.9364914e+01 2.0984317e+03 -2.0922560e+03 - 1.3299320e+02 2.0953107e+03 -2.0970438e+03 - 1.8631742e+02 2.0904899e+03 -2.1041699e+03 - 2.2659568e+02 2.0844014e+03 -2.1126475e+03 - 2.5290876e+02 2.0774534e+03 -2.1215122e+03 - 2.6571638e+02 2.0699567e+03 -2.1299849e+03 - 2.6629328e+02 2.0621021e+03 -2.1375281e+03 - 2.5625838e+02 2.0539726e+03 -2.1438288e+03 - 2.3726594e+02 2.0455703e+03 -2.1487488e+03 - 2.1084068e+02 2.0368440e+03 -2.1522710e+03 - 1.7831083e+02 2.0277116e+03 -2.1544543e+03 - 1.4079727e+02 2.0180763e+03 -2.1554009e+03 - 9.9229936e+01 2.0078366e+03 -2.1552343e+03 - 5.4374438e+01 1.9968931e+03 -2.1540854e+03 - 6.8601943e+00 1.9851520e+03 -2.1520844e+03 - -4.2793899e+01 1.9725265e+03 -2.1493559e+03 - -9.4157628e+01 1.9589382e+03 -2.1460172e+03 - -1.4687158e+02 1.9443165e+03 -2.1421769e+03 - -2.0063283e+02 1.9285989e+03 -2.1379349e+03 - -2.5518356e+02 1.9117303e+03 -2.1333829e+03 - -3.1030220e+02 1.8936626e+03 -2.1286047e+03 - -3.6579639e+02 1.8743542e+03 -2.1236770e+03 - -4.2149750e+02 1.8537696e+03 -2.1186695e+03 - -4.7725636e+02 1.8318791e+03 -2.1136460e+03 - -5.3293981e+02 1.8086581e+03 -2.1086648e+03 - -5.8842809e+02 1.7840871e+03 -2.1037787e+03 - -6.4361266e+02 1.7581510e+03 -2.0990361e+03 - -6.9839457e+02 1.7308395e+03 -2.0944805e+03 - -7.5268306e+02 1.7021460e+03 -2.0901517e+03 - -8.0639452e+02 1.6720682e+03 -2.0860853e+03 - -8.5945163e+02 1.6406074e+03 -2.0823133e+03 - -9.1178263e+02 1.6077686e+03 -2.0788643e+03 - -9.6332079e+02 1.5735604e+03 -2.0757634e+03 - -1.0140040e+03 1.5379946e+03 -2.0730325e+03 - -1.0637742e+03 1.5010865e+03 -2.0706904e+03 - -1.1125774e+03 1.4628544e+03 -2.0687529e+03 - -1.1603633e+03 1.4233200e+03 -2.0672327e+03 - -1.2070849e+03 1.3825079e+03 -2.0661399e+03 - -1.2526989e+03 1.3404459e+03 -2.0654813e+03 - -1.2971649e+03 1.2971649e+03 -2.0652614e+03 - -1.3404459e+03 1.2526989e+03 -2.0654813e+03 - -1.3825079e+03 1.2070849e+03 -2.0661399e+03 - -1.4233200e+03 1.1603633e+03 -2.0672327e+03 - -1.4628544e+03 1.1125774e+03 -2.0687529e+03 - -1.5010865e+03 1.0637742e+03 -2.0706904e+03 - -1.5379946e+03 1.0140040e+03 -2.0730325e+03 - -1.5735604e+03 9.6332079e+02 -2.0757634e+03 - -1.6077686e+03 9.1178263e+02 -2.0788643e+03 - -1.6406074e+03 8.5945163e+02 -2.0823133e+03 - -1.6720682e+03 8.0639452e+02 -2.0860853e+03 - -1.7021460e+03 7.5268306e+02 -2.0901517e+03 - -1.7308395e+03 6.9839457e+02 -2.0944805e+03 - -1.7581510e+03 6.4361266e+02 -2.0990361e+03 - -1.7840871e+03 5.8842809e+02 -2.1037787e+03 - -1.8086581e+03 5.3293981e+02 -2.1086648e+03 - -1.8318791e+03 4.7725636e+02 -2.1136460e+03 - -1.8537696e+03 4.2149750e+02 -2.1186695e+03 - -1.8743542e+03 3.6579639e+02 -2.1236770e+03 - -1.8936626e+03 3.1030220e+02 -2.1286047e+03 - -1.9117303e+03 2.5518356e+02 -2.1333829e+03 - -1.9285989e+03 2.0063283e+02 -2.1379349e+03 - -1.9443165e+03 1.4687158e+02 -2.1421769e+03 - -1.9589382e+03 9.4157628e+01 -2.1460172e+03 - -1.9725265e+03 4.2793899e+01 -2.1493559e+03 - -1.9851520e+03 -6.8601944e+00 -2.1520844e+03 - -1.9968931e+03 -5.4374438e+01 -2.1540854e+03 - -2.0078366e+03 -9.9229936e+01 -2.1552343e+03 - -2.0180763e+03 -1.4079727e+02 -2.1554009e+03 - -2.0277116e+03 -1.7831083e+02 -2.1544543e+03 - -2.0368440e+03 -2.1084068e+02 -2.1522710e+03 - -2.0455703e+03 -2.3726594e+02 -2.1487488e+03 - -2.0539726e+03 -2.5625838e+02 -2.1438288e+03 - -2.0621021e+03 -2.6629328e+02 -2.1375281e+03 - -2.0699567e+03 -2.6571638e+02 -2.1299849e+03 - -2.0774534e+03 -2.5290876e+02 -2.1215122e+03 - -2.0844014e+03 -2.2659568e+02 -2.1126475e+03 - -2.0904899e+03 -1.8631742e+02 -2.1041699e+03 - -2.0953107e+03 -1.3299320e+02 -2.0970438e+03 - -2.0984317e+03 -6.9364914e+01 -2.0922560e+03 - -2.0995150e+03 2.4067136e-09 -2.0905644e+03 - -2.0984317e+03 6.9364914e+01 -2.0922560e+03 - -2.0953107e+03 1.3299320e+02 -2.0970438e+03 - -2.0904899e+03 1.8631742e+02 -2.1041699e+03 - -2.0844014e+03 2.2659568e+02 -2.1126475e+03 - -2.0774534e+03 2.5290876e+02 -2.1215122e+03 - -2.0699567e+03 2.6571638e+02 -2.1299849e+03 - -2.0621021e+03 2.6629328e+02 -2.1375281e+03 - -2.0539726e+03 2.5625838e+02 -2.1438288e+03 - -2.0455703e+03 2.3726594e+02 -2.1487488e+03 - -2.0368440e+03 2.1084068e+02 -2.1522710e+03 - -2.0277116e+03 1.7831083e+02 -2.1544543e+03 - -2.0180763e+03 1.4079727e+02 -2.1554009e+03 - -2.0078366e+03 9.9229936e+01 -2.1552343e+03 - -1.9968931e+03 5.4374438e+01 -2.1540854e+03 - -1.9851520e+03 6.8601944e+00 -2.1520844e+03 - -1.9725265e+03 -4.2793899e+01 -2.1493559e+03 - -1.9589382e+03 -9.4157628e+01 -2.1460172e+03 - -1.9443165e+03 -1.4687158e+02 -2.1421769e+03 - -1.9285989e+03 -2.0063283e+02 -2.1379349e+03 - -1.9117303e+03 -2.5518356e+02 -2.1333829e+03 - -1.8936626e+03 -3.1030220e+02 -2.1286047e+03 - -1.8743542e+03 -3.6579639e+02 -2.1236770e+03 - -1.8537696e+03 -4.2149750e+02 -2.1186695e+03 - -1.8318791e+03 -4.7725636e+02 -2.1136460e+03 - -1.8086581e+03 -5.3293981e+02 -2.1086648e+03 - -1.7840871e+03 -5.8842809e+02 -2.1037787e+03 - -1.7581510e+03 -6.4361266e+02 -2.0990361e+03 - -1.7308395e+03 -6.9839457e+02 -2.0944805e+03 - -1.7021460e+03 -7.5268306e+02 -2.0901517e+03 - -1.6720682e+03 -8.0639452e+02 -2.0860853e+03 - -1.6406074e+03 -8.5945163e+02 -2.0823133e+03 - -1.6077686e+03 -9.1178263e+02 -2.0788643e+03 - -1.5735604e+03 -9.6332079e+02 -2.0757634e+03 - -1.5379946e+03 -1.0140040e+03 -2.0730325e+03 - -1.5010865e+03 -1.0637742e+03 -2.0706904e+03 - -1.4628544e+03 -1.1125774e+03 -2.0687529e+03 - -1.4233200e+03 -1.1603633e+03 -2.0672327e+03 - -1.3825079e+03 -1.2070849e+03 -2.0661399e+03 - -1.3404459e+03 -1.2526989e+03 -2.0654813e+03 - -1.2971649e+03 -1.2971649e+03 -2.0652614e+03 - -1.2526989e+03 -1.3404459e+03 -2.0654813e+03 - -1.2070849e+03 -1.3825079e+03 -2.0661399e+03 - -1.1603633e+03 -1.4233200e+03 -2.0672327e+03 - -1.1125774e+03 -1.4628544e+03 -2.0687529e+03 - -1.0637742e+03 -1.5010865e+03 -2.0706904e+03 - -1.0140040e+03 -1.5379946e+03 -2.0730325e+03 - -9.6332079e+02 -1.5735604e+03 -2.0757634e+03 - -9.1178263e+02 -1.6077686e+03 -2.0788643e+03 - -8.5945163e+02 -1.6406074e+03 -2.0823133e+03 - -8.0639452e+02 -1.6720682e+03 -2.0860853e+03 - -7.5268306e+02 -1.7021460e+03 -2.0901517e+03 - -6.9839457e+02 -1.7308395e+03 -2.0944805e+03 - -6.4361266e+02 -1.7581510e+03 -2.0990361e+03 - -5.8842809e+02 -1.7840871e+03 -2.1037787e+03 - -5.3293981e+02 -1.8086581e+03 -2.1086648e+03 - -4.7725636e+02 -1.8318791e+03 -2.1136460e+03 - -4.2149750e+02 -1.8537696e+03 -2.1186695e+03 - -3.6579639e+02 -1.8743542e+03 -2.1236770e+03 - -3.1030220e+02 -1.8936626e+03 -2.1286047e+03 - -2.5518356e+02 -1.9117303e+03 -2.1333829e+03 - -2.0063283e+02 -1.9285989e+03 -2.1379349e+03 - -1.4687158e+02 -1.9443165e+03 -2.1421769e+03 - -9.4157628e+01 -1.9589382e+03 -2.1460172e+03 - -4.2793899e+01 -1.9725265e+03 -2.1493559e+03 - 6.8601944e+00 -1.9851520e+03 -2.1520844e+03 - 5.4374438e+01 -1.9968931e+03 -2.1540854e+03 - 9.9229936e+01 -2.0078366e+03 -2.1552343e+03 - 1.4079727e+02 -2.0180763e+03 -2.1554009e+03 - 1.7831083e+02 -2.0277116e+03 -2.1544543e+03 - 2.1084068e+02 -2.0368440e+03 -2.1522710e+03 - 2.3726594e+02 -2.0455703e+03 -2.1487488e+03 - 2.5625838e+02 -2.0539726e+03 -2.1438288e+03 - 2.6629328e+02 -2.0621021e+03 -2.1375281e+03 - 2.6571638e+02 -2.0699567e+03 -2.1299849e+03 - 2.5290876e+02 -2.0774534e+03 -2.1215122e+03 - 2.2659568e+02 -2.0844014e+03 -2.1126475e+03 - 1.8631742e+02 -2.0904899e+03 -2.1041699e+03 - 1.3299320e+02 -2.0953107e+03 -2.0970438e+03 - 6.9364914e+01 -2.0984317e+03 -2.0922560e+03 - 0.0000000e+00 -2.0995150e+03 -2.0905644e+03 - -6.9364914e+01 -2.0984317e+03 -2.0922560e+03 - -1.3299320e+02 -2.0953107e+03 -2.0970438e+03 - -1.8631742e+02 -2.0904899e+03 -2.1041699e+03 - -2.2659568e+02 -2.0844014e+03 -2.1126475e+03 - -2.5290876e+02 -2.0774534e+03 -2.1215122e+03 - -2.6571638e+02 -2.0699567e+03 -2.1299849e+03 - -2.6629328e+02 -2.0621021e+03 -2.1375281e+03 - -2.5625838e+02 -2.0539726e+03 -2.1438288e+03 - -2.3726594e+02 -2.0455703e+03 -2.1487488e+03 - -2.1084068e+02 -2.0368440e+03 -2.1522710e+03 - -1.7831083e+02 -2.0277116e+03 -2.1544543e+03 - -1.4079727e+02 -2.0180763e+03 -2.1554009e+03 - -9.9229936e+01 -2.0078366e+03 -2.1552343e+03 - -5.4374438e+01 -1.9968931e+03 -2.1540854e+03 - -6.8601944e+00 -1.9851520e+03 -2.1520844e+03 - 4.2793899e+01 -1.9725265e+03 -2.1493559e+03 - 9.4157628e+01 -1.9589382e+03 -2.1460172e+03 - 1.4687158e+02 -1.9443165e+03 -2.1421769e+03 - 2.0063283e+02 -1.9285989e+03 -2.1379349e+03 - 2.5518356e+02 -1.9117303e+03 -2.1333829e+03 - 3.1030220e+02 -1.8936626e+03 -2.1286047e+03 - 3.6579639e+02 -1.8743542e+03 -2.1236770e+03 - 4.2149750e+02 -1.8537696e+03 -2.1186695e+03 - 4.7725636e+02 -1.8318791e+03 -2.1136460e+03 - 5.3293981e+02 -1.8086581e+03 -2.1086648e+03 - 5.8842809e+02 -1.7840871e+03 -2.1037787e+03 - 6.4361266e+02 -1.7581510e+03 -2.0990361e+03 - 6.9839457e+02 -1.7308395e+03 -2.0944805e+03 - 7.5268306e+02 -1.7021460e+03 -2.0901517e+03 - 8.0639452e+02 -1.6720682e+03 -2.0860853e+03 - 8.5945163e+02 -1.6406074e+03 -2.0823133e+03 - 9.1178263e+02 -1.6077686e+03 -2.0788643e+03 - 9.6332079e+02 -1.5735604e+03 -2.0757634e+03 - 1.0140040e+03 -1.5379946e+03 -2.0730325e+03 - 1.0637742e+03 -1.5010865e+03 -2.0706904e+03 - 1.1125774e+03 -1.4628544e+03 -2.0687529e+03 - 1.1603633e+03 -1.4233200e+03 -2.0672327e+03 - 1.2070849e+03 -1.3825079e+03 -2.0661399e+03 - 1.2526989e+03 -1.3404459e+03 -2.0654813e+03 - 1.2971649e+03 -1.2971649e+03 -2.0652614e+03 - 1.3404459e+03 -1.2526989e+03 -2.0654813e+03 - 1.3825079e+03 -1.2070849e+03 -2.0661399e+03 - 1.4233200e+03 -1.1603633e+03 -2.0672327e+03 - 1.4628544e+03 -1.1125774e+03 -2.0687529e+03 - 1.5010865e+03 -1.0637742e+03 -2.0706904e+03 - 1.5379946e+03 -1.0140040e+03 -2.0730325e+03 - 1.5735604e+03 -9.6332079e+02 -2.0757634e+03 - 1.6077686e+03 -9.1178263e+02 -2.0788643e+03 - 1.6406074e+03 -8.5945163e+02 -2.0823133e+03 - 1.6720682e+03 -8.0639452e+02 -2.0860853e+03 - 1.7021460e+03 -7.5268306e+02 -2.0901517e+03 - 1.7308395e+03 -6.9839457e+02 -2.0944805e+03 - 1.7581510e+03 -6.4361266e+02 -2.0990361e+03 - 1.7840871e+03 -5.8842809e+02 -2.1037787e+03 - 1.8086581e+03 -5.3293981e+02 -2.1086648e+03 - 1.8318791e+03 -4.7725636e+02 -2.1136460e+03 - 1.8537696e+03 -4.2149750e+02 -2.1186695e+03 - 1.8743542e+03 -3.6579639e+02 -2.1236770e+03 - 1.8936626e+03 -3.1030220e+02 -2.1286047e+03 - 1.9117303e+03 -2.5518356e+02 -2.1333829e+03 - 1.9285989e+03 -2.0063283e+02 -2.1379349e+03 - 1.9443165e+03 -1.4687158e+02 -2.1421769e+03 - 1.9589382e+03 -9.4157628e+01 -2.1460172e+03 - 1.9725265e+03 -4.2793899e+01 -2.1493559e+03 - 1.9851520e+03 6.8601944e+00 -2.1520844e+03 - 1.9968931e+03 5.4374438e+01 -2.1540854e+03 - 2.0078366e+03 9.9229936e+01 -2.1552343e+03 - 2.0180763e+03 1.4079727e+02 -2.1554009e+03 - 2.0277116e+03 1.7831083e+02 -2.1544543e+03 - 2.0368440e+03 2.1084068e+02 -2.1522710e+03 - 2.0455703e+03 2.3726594e+02 -2.1487488e+03 - 2.0539726e+03 2.5625838e+02 -2.1438288e+03 - 2.0621021e+03 2.6629328e+02 -2.1375281e+03 - 2.0699567e+03 2.6571638e+02 -2.1299849e+03 - 2.0774534e+03 2.5290876e+02 -2.1215122e+03 - 2.0844014e+03 2.2659568e+02 -2.1126475e+03 - 2.0904899e+03 1.8631742e+02 -2.1041699e+03 - 2.0953107e+03 1.3299320e+02 -2.0970438e+03 - 2.0984317e+03 6.9364914e+01 -2.0922560e+03 - 2.0995150e+03 4.8134273e-09 -2.0905644e+03 - 1.9965978e+03 4.8134273e-09 -2.1875899e+03 - 1.9957516e+03 -6.5006525e+01 -2.1889582e+03 - 1.9932919e+03 -1.2524201e+02 -2.1928600e+03 - 1.9894287e+03 -1.7679067e+02 -2.1987493e+03 - 1.9844377e+03 -2.1711395e+02 -2.2058933e+03 - 1.9785893e+03 -2.4511958e+02 -2.2135438e+03 - 1.9720995e+03 -2.6089160e+02 -2.2210614e+03 - 1.9651086e+03 -2.6528684e+02 -2.2279718e+03 - 1.9576846e+03 -2.5955996e+02 -2.2339691e+03 - 1.9498361e+03 -2.4508971e+02 -2.2388891e+03 - 1.9415302e+03 -2.2321231e+02 -2.2426731e+03 - 1.9327076e+03 -1.9513766e+02 -2.2453348e+03 - 1.9232944e+03 -1.6191888e+02 -2.2469332e+03 - 1.9132110e+03 -1.2445205e+02 -2.2475536e+03 - 1.9023767e+03 -8.3490297e+01 -2.2472942e+03 - 1.8907141e+03 -3.9663345e+01 -2.2462578e+03 - 1.8781502e+03 6.5025042e+00 -2.2445463e+03 - 1.8646180e+03 5.4566096e+01 -2.2422580e+03 - 1.8500567e+03 1.0415570e+02 -2.2394860e+03 - 1.8344117e+03 1.5495594e+02 -2.2363172e+03 - 1.8176345e+03 2.0669715e+02 -2.2328325e+03 - 1.7996825e+03 2.5914677e+02 -2.2291065e+03 - 1.7805189e+03 3.1210249e+02 -2.2252080e+03 - 1.7601120e+03 3.6538679e+02 -2.2212003e+03 - 1.7384351e+03 4.1884258e+02 -2.2171415e+03 - 1.7154666e+03 4.7232971e+02 -2.2130849e+03 - 1.6911890e+03 5.2572221e+02 -2.2090792e+03 - 1.6655895e+03 5.7890607e+02 -2.2051689e+03 - 1.6386592e+03 6.3177748e+02 -2.2013946e+03 - 1.6103931e+03 6.8424140e+02 -2.1977932e+03 - 1.5807901e+03 7.3621038e+02 -2.1943980e+03 - 1.5498527e+03 7.8760367e+02 -2.1912388e+03 - 1.5175870e+03 8.3834648e+02 -2.1883425e+03 - 1.4840024e+03 8.8836934e+02 -2.1857326e+03 - 1.4491118e+03 9.3760761e+02 -2.1834296e+03 - 1.4129312e+03 9.8600112e+02 -2.1814514e+03 - 1.3754800e+03 1.0334938e+03 -2.1798128e+03 - 1.3367807e+03 1.0800335e+03 -2.1785259e+03 - 1.2968591e+03 1.1255717e+03 -2.1776000e+03 - 1.2557437e+03 1.1700633e+03 -2.1770418e+03 - 1.2134668e+03 1.2134668e+03 -2.1768553e+03 - 1.1700633e+03 1.2557437e+03 -2.1770418e+03 - 1.1255717e+03 1.2968591e+03 -2.1776000e+03 - 1.0800335e+03 1.3367807e+03 -2.1785259e+03 - 1.0334938e+03 1.3754800e+03 -2.1798128e+03 - 9.8600112e+02 1.4129312e+03 -2.1814514e+03 - 9.3760761e+02 1.4491118e+03 -2.1834296e+03 - 8.8836934e+02 1.4840024e+03 -2.1857326e+03 - 8.3834648e+02 1.5175870e+03 -2.1883425e+03 - 7.8760367e+02 1.5498527e+03 -2.1912388e+03 - 7.3621038e+02 1.5807901e+03 -2.1943980e+03 - 6.8424140e+02 1.6103931e+03 -2.1977932e+03 - 6.3177748e+02 1.6386592e+03 -2.2013946e+03 - 5.7890607e+02 1.6655895e+03 -2.2051689e+03 - 5.2572221e+02 1.6911890e+03 -2.2090792e+03 - 4.7232971e+02 1.7154666e+03 -2.2130849e+03 - 4.1884258e+02 1.7384351e+03 -2.2171415e+03 - 3.6538679e+02 1.7601120e+03 -2.2212003e+03 - 3.1210249e+02 1.7805189e+03 -2.2252080e+03 - 2.5914677e+02 1.7996825e+03 -2.2291065e+03 - 2.0669715e+02 1.8176345e+03 -2.2328325e+03 - 1.5495594e+02 1.8344117e+03 -2.2363172e+03 - 1.0415570e+02 1.8500567e+03 -2.2394860e+03 - 5.4566096e+01 1.8646180e+03 -2.2422580e+03 - 6.5025042e+00 1.8781502e+03 -2.2445463e+03 - -3.9663345e+01 1.8907141e+03 -2.2462578e+03 - -8.3490297e+01 1.9023767e+03 -2.2472942e+03 - -1.2445205e+02 1.9132110e+03 -2.2475536e+03 - -1.6191888e+02 1.9232944e+03 -2.2469332e+03 - -1.9513766e+02 1.9327076e+03 -2.2453348e+03 - -2.2321231e+02 1.9415302e+03 -2.2426731e+03 - -2.4508971e+02 1.9498361e+03 -2.2388891e+03 - -2.5955996e+02 1.9576846e+03 -2.2339691e+03 - -2.6528684e+02 1.9651086e+03 -2.2279718e+03 - -2.6089160e+02 1.9720995e+03 -2.2210614e+03 - -2.4511958e+02 1.9785893e+03 -2.2135438e+03 - -2.1711395e+02 1.9844377e+03 -2.2058933e+03 - -1.7679067e+02 1.9894287e+03 -2.1987493e+03 - -1.2524201e+02 1.9932919e+03 -2.1928600e+03 - -6.5006525e+01 1.9957516e+03 -2.1889582e+03 - 2.4067136e-09 1.9965978e+03 -2.1875899e+03 - 6.5006525e+01 1.9957516e+03 -2.1889582e+03 - 1.2524201e+02 1.9932919e+03 -2.1928600e+03 - 1.7679067e+02 1.9894287e+03 -2.1987493e+03 - 2.1711395e+02 1.9844377e+03 -2.2058933e+03 - 2.4511958e+02 1.9785893e+03 -2.2135438e+03 - 2.6089160e+02 1.9720995e+03 -2.2210614e+03 - 2.6528684e+02 1.9651086e+03 -2.2279718e+03 - 2.5955996e+02 1.9576846e+03 -2.2339691e+03 - 2.4508971e+02 1.9498361e+03 -2.2388891e+03 - 2.2321231e+02 1.9415302e+03 -2.2426731e+03 - 1.9513766e+02 1.9327076e+03 -2.2453348e+03 - 1.6191888e+02 1.9232944e+03 -2.2469332e+03 - 1.2445205e+02 1.9132110e+03 -2.2475536e+03 - 8.3490297e+01 1.9023767e+03 -2.2472942e+03 - 3.9663345e+01 1.8907141e+03 -2.2462578e+03 - -6.5025042e+00 1.8781502e+03 -2.2445463e+03 - -5.4566096e+01 1.8646180e+03 -2.2422580e+03 - -1.0415570e+02 1.8500567e+03 -2.2394860e+03 - -1.5495594e+02 1.8344117e+03 -2.2363172e+03 - -2.0669715e+02 1.8176345e+03 -2.2328325e+03 - -2.5914677e+02 1.7996825e+03 -2.2291065e+03 - -3.1210249e+02 1.7805189e+03 -2.2252080e+03 - -3.6538679e+02 1.7601120e+03 -2.2212003e+03 - -4.1884258e+02 1.7384351e+03 -2.2171415e+03 - -4.7232971e+02 1.7154666e+03 -2.2130849e+03 - -5.2572221e+02 1.6911890e+03 -2.2090792e+03 - -5.7890607e+02 1.6655895e+03 -2.2051689e+03 - -6.3177748e+02 1.6386592e+03 -2.2013946e+03 - -6.8424140e+02 1.6103931e+03 -2.1977932e+03 - -7.3621038e+02 1.5807901e+03 -2.1943980e+03 - -7.8760367e+02 1.5498527e+03 -2.1912388e+03 - -8.3834648e+02 1.5175870e+03 -2.1883425e+03 - -8.8836934e+02 1.4840024e+03 -2.1857326e+03 - -9.3760761e+02 1.4491118e+03 -2.1834296e+03 - -9.8600112e+02 1.4129312e+03 -2.1814514e+03 - -1.0334938e+03 1.3754800e+03 -2.1798128e+03 - -1.0800335e+03 1.3367807e+03 -2.1785259e+03 - -1.1255717e+03 1.2968591e+03 -2.1776000e+03 - -1.1700633e+03 1.2557437e+03 -2.1770418e+03 - -1.2134668e+03 1.2134668e+03 -2.1768553e+03 - -1.2557437e+03 1.1700633e+03 -2.1770418e+03 - -1.2968591e+03 1.1255717e+03 -2.1776000e+03 - -1.3367807e+03 1.0800335e+03 -2.1785259e+03 - -1.3754800e+03 1.0334938e+03 -2.1798128e+03 - -1.4129312e+03 9.8600112e+02 -2.1814514e+03 - -1.4491118e+03 9.3760761e+02 -2.1834296e+03 - -1.4840024e+03 8.8836934e+02 -2.1857326e+03 - -1.5175870e+03 8.3834648e+02 -2.1883425e+03 - -1.5498527e+03 7.8760367e+02 -2.1912388e+03 - -1.5807901e+03 7.3621038e+02 -2.1943980e+03 - -1.6103931e+03 6.8424140e+02 -2.1977932e+03 - -1.6386592e+03 6.3177748e+02 -2.2013946e+03 - -1.6655895e+03 5.7890607e+02 -2.2051689e+03 - -1.6911890e+03 5.2572221e+02 -2.2090792e+03 - -1.7154666e+03 4.7232971e+02 -2.2130849e+03 - -1.7384351e+03 4.1884258e+02 -2.2171415e+03 - -1.7601120e+03 3.6538679e+02 -2.2212003e+03 - -1.7805189e+03 3.1210249e+02 -2.2252080e+03 - -1.7996825e+03 2.5914677e+02 -2.2291065e+03 - -1.8176345e+03 2.0669715e+02 -2.2328325e+03 - -1.8344117e+03 1.5495594e+02 -2.2363172e+03 - -1.8500567e+03 1.0415570e+02 -2.2394860e+03 - -1.8646180e+03 5.4566096e+01 -2.2422580e+03 - -1.8781502e+03 6.5025042e+00 -2.2445463e+03 - -1.8907141e+03 -3.9663345e+01 -2.2462578e+03 - -1.9023767e+03 -8.3490297e+01 -2.2472942e+03 - -1.9132110e+03 -1.2445205e+02 -2.2475536e+03 - -1.9232944e+03 -1.6191888e+02 -2.2469332e+03 - -1.9327076e+03 -1.9513766e+02 -2.2453348e+03 - -1.9415302e+03 -2.2321231e+02 -2.2426731e+03 - -1.9498361e+03 -2.4508971e+02 -2.2388891e+03 - -1.9576846e+03 -2.5955996e+02 -2.2339691e+03 - -1.9651086e+03 -2.6528684e+02 -2.2279718e+03 - -1.9720995e+03 -2.6089160e+02 -2.2210614e+03 - -1.9785893e+03 -2.4511958e+02 -2.2135438e+03 - -1.9844377e+03 -2.1711395e+02 -2.2058933e+03 - -1.9894287e+03 -1.7679067e+02 -2.1987493e+03 - -1.9932919e+03 -1.2524201e+02 -2.1928600e+03 - -1.9957516e+03 -6.5006525e+01 -2.1889582e+03 - -1.9965978e+03 2.4067136e-09 -2.1875899e+03 - -1.9957516e+03 6.5006525e+01 -2.1889582e+03 - -1.9932919e+03 1.2524201e+02 -2.1928600e+03 - -1.9894287e+03 1.7679067e+02 -2.1987493e+03 - -1.9844377e+03 2.1711395e+02 -2.2058933e+03 - -1.9785893e+03 2.4511958e+02 -2.2135438e+03 - -1.9720995e+03 2.6089160e+02 -2.2210614e+03 - -1.9651086e+03 2.6528684e+02 -2.2279718e+03 - -1.9576846e+03 2.5955996e+02 -2.2339691e+03 - -1.9498361e+03 2.4508971e+02 -2.2388891e+03 - -1.9415302e+03 2.2321231e+02 -2.2426731e+03 - -1.9327076e+03 1.9513766e+02 -2.2453348e+03 - -1.9232944e+03 1.6191888e+02 -2.2469332e+03 - -1.9132110e+03 1.2445205e+02 -2.2475536e+03 - -1.9023767e+03 8.3490297e+01 -2.2472942e+03 - -1.8907141e+03 3.9663345e+01 -2.2462578e+03 - -1.8781502e+03 -6.5025042e+00 -2.2445463e+03 - -1.8646180e+03 -5.4566096e+01 -2.2422580e+03 - -1.8500567e+03 -1.0415570e+02 -2.2394860e+03 - -1.8344117e+03 -1.5495594e+02 -2.2363172e+03 - -1.8176345e+03 -2.0669715e+02 -2.2328325e+03 - -1.7996825e+03 -2.5914677e+02 -2.2291065e+03 - -1.7805189e+03 -3.1210249e+02 -2.2252080e+03 - -1.7601120e+03 -3.6538679e+02 -2.2212003e+03 - -1.7384351e+03 -4.1884258e+02 -2.2171415e+03 - -1.7154666e+03 -4.7232971e+02 -2.2130849e+03 - -1.6911890e+03 -5.2572221e+02 -2.2090792e+03 - -1.6655895e+03 -5.7890607e+02 -2.2051689e+03 - -1.6386592e+03 -6.3177748e+02 -2.2013946e+03 - -1.6103931e+03 -6.8424140e+02 -2.1977932e+03 - -1.5807901e+03 -7.3621038e+02 -2.1943980e+03 - -1.5498527e+03 -7.8760367e+02 -2.1912388e+03 - -1.5175870e+03 -8.3834648e+02 -2.1883425e+03 - -1.4840024e+03 -8.8836934e+02 -2.1857326e+03 - -1.4491118e+03 -9.3760761e+02 -2.1834296e+03 - -1.4129312e+03 -9.8600112e+02 -2.1814514e+03 - -1.3754800e+03 -1.0334938e+03 -2.1798128e+03 - -1.3367807e+03 -1.0800335e+03 -2.1785259e+03 - -1.2968591e+03 -1.1255717e+03 -2.1776000e+03 - -1.2557437e+03 -1.1700633e+03 -2.1770418e+03 - -1.2134668e+03 -1.2134668e+03 -2.1768553e+03 - -1.1700633e+03 -1.2557437e+03 -2.1770418e+03 - -1.1255717e+03 -1.2968591e+03 -2.1776000e+03 - -1.0800335e+03 -1.3367807e+03 -2.1785259e+03 - -1.0334938e+03 -1.3754800e+03 -2.1798128e+03 - -9.8600112e+02 -1.4129312e+03 -2.1814514e+03 - -9.3760761e+02 -1.4491118e+03 -2.1834296e+03 - -8.8836934e+02 -1.4840024e+03 -2.1857326e+03 - -8.3834648e+02 -1.5175870e+03 -2.1883425e+03 - -7.8760367e+02 -1.5498527e+03 -2.1912388e+03 - -7.3621038e+02 -1.5807901e+03 -2.1943980e+03 - -6.8424140e+02 -1.6103931e+03 -2.1977932e+03 - -6.3177748e+02 -1.6386592e+03 -2.2013946e+03 - -5.7890607e+02 -1.6655895e+03 -2.2051689e+03 - -5.2572221e+02 -1.6911890e+03 -2.2090792e+03 - -4.7232971e+02 -1.7154666e+03 -2.2130849e+03 - -4.1884258e+02 -1.7384351e+03 -2.2171415e+03 - -3.6538679e+02 -1.7601120e+03 -2.2212003e+03 - -3.1210249e+02 -1.7805189e+03 -2.2252080e+03 - -2.5914677e+02 -1.7996825e+03 -2.2291065e+03 - -2.0669715e+02 -1.8176345e+03 -2.2328325e+03 - -1.5495594e+02 -1.8344117e+03 -2.2363172e+03 - -1.0415570e+02 -1.8500567e+03 -2.2394860e+03 - -5.4566096e+01 -1.8646180e+03 -2.2422580e+03 - -6.5025042e+00 -1.8781502e+03 -2.2445463e+03 - 3.9663345e+01 -1.8907141e+03 -2.2462578e+03 - 8.3490297e+01 -1.9023767e+03 -2.2472942e+03 - 1.2445205e+02 -1.9132110e+03 -2.2475536e+03 - 1.6191888e+02 -1.9232944e+03 -2.2469332e+03 - 1.9513766e+02 -1.9327076e+03 -2.2453348e+03 - 2.2321231e+02 -1.9415302e+03 -2.2426731e+03 - 2.4508971e+02 -1.9498361e+03 -2.2388891e+03 - 2.5955996e+02 -1.9576846e+03 -2.2339691e+03 - 2.6528684e+02 -1.9651086e+03 -2.2279718e+03 - 2.6089160e+02 -1.9720995e+03 -2.2210614e+03 - 2.4511958e+02 -1.9785893e+03 -2.2135438e+03 - 2.1711395e+02 -1.9844377e+03 -2.2058933e+03 - 1.7679067e+02 -1.9894287e+03 -2.1987493e+03 - 1.2524201e+02 -1.9932919e+03 -2.1928600e+03 - 6.5006525e+01 -1.9957516e+03 -2.1889582e+03 - -2.4067136e-09 -1.9965978e+03 -2.1875899e+03 - -6.5006525e+01 -1.9957516e+03 -2.1889582e+03 - -1.2524201e+02 -1.9932919e+03 -2.1928600e+03 - -1.7679067e+02 -1.9894287e+03 -2.1987493e+03 - -2.1711395e+02 -1.9844377e+03 -2.2058933e+03 - -2.4511958e+02 -1.9785893e+03 -2.2135438e+03 - -2.6089160e+02 -1.9720995e+03 -2.2210614e+03 - -2.6528684e+02 -1.9651086e+03 -2.2279718e+03 - -2.5955996e+02 -1.9576846e+03 -2.2339691e+03 - -2.4508971e+02 -1.9498361e+03 -2.2388891e+03 - -2.2321231e+02 -1.9415302e+03 -2.2426731e+03 - -1.9513766e+02 -1.9327076e+03 -2.2453348e+03 - -1.6191888e+02 -1.9232944e+03 -2.2469332e+03 - -1.2445205e+02 -1.9132110e+03 -2.2475536e+03 - -8.3490297e+01 -1.9023767e+03 -2.2472942e+03 - -3.9663345e+01 -1.8907141e+03 -2.2462578e+03 - 6.5025042e+00 -1.8781502e+03 -2.2445463e+03 - 5.4566096e+01 -1.8646180e+03 -2.2422580e+03 - 1.0415570e+02 -1.8500567e+03 -2.2394860e+03 - 1.5495594e+02 -1.8344117e+03 -2.2363172e+03 - 2.0669715e+02 -1.8176345e+03 -2.2328325e+03 - 2.5914677e+02 -1.7996825e+03 -2.2291065e+03 - 3.1210249e+02 -1.7805189e+03 -2.2252080e+03 - 3.6538679e+02 -1.7601120e+03 -2.2212003e+03 - 4.1884258e+02 -1.7384351e+03 -2.2171415e+03 - 4.7232971e+02 -1.7154666e+03 -2.2130849e+03 - 5.2572221e+02 -1.6911890e+03 -2.2090792e+03 - 5.7890607e+02 -1.6655895e+03 -2.2051689e+03 - 6.3177748e+02 -1.6386592e+03 -2.2013946e+03 - 6.8424140e+02 -1.6103931e+03 -2.1977932e+03 - 7.3621038e+02 -1.5807901e+03 -2.1943980e+03 - 7.8760367e+02 -1.5498527e+03 -2.1912388e+03 - 8.3834648e+02 -1.5175870e+03 -2.1883425e+03 - 8.8836934e+02 -1.4840024e+03 -2.1857326e+03 - 9.3760761e+02 -1.4491118e+03 -2.1834296e+03 - 9.8600112e+02 -1.4129312e+03 -2.1814514e+03 - 1.0334938e+03 -1.3754800e+03 -2.1798128e+03 - 1.0800335e+03 -1.3367807e+03 -2.1785259e+03 - 1.1255717e+03 -1.2968591e+03 -2.1776000e+03 - 1.1700633e+03 -1.2557437e+03 -2.1770418e+03 - 1.2134668e+03 -1.2134668e+03 -2.1768553e+03 - 1.2557437e+03 -1.1700633e+03 -2.1770418e+03 - 1.2968591e+03 -1.1255717e+03 -2.1776000e+03 - 1.3367807e+03 -1.0800335e+03 -2.1785259e+03 - 1.3754800e+03 -1.0334938e+03 -2.1798128e+03 - 1.4129312e+03 -9.8600112e+02 -2.1814514e+03 - 1.4491118e+03 -9.3760761e+02 -2.1834296e+03 - 1.4840024e+03 -8.8836934e+02 -2.1857326e+03 - 1.5175870e+03 -8.3834648e+02 -2.1883425e+03 - 1.5498527e+03 -7.8760367e+02 -2.1912388e+03 - 1.5807901e+03 -7.3621038e+02 -2.1943980e+03 - 1.6103931e+03 -6.8424140e+02 -2.1977932e+03 - 1.6386592e+03 -6.3177748e+02 -2.2013946e+03 - 1.6655895e+03 -5.7890607e+02 -2.2051689e+03 - 1.6911890e+03 -5.2572221e+02 -2.2090792e+03 - 1.7154666e+03 -4.7232971e+02 -2.2130849e+03 - 1.7384351e+03 -4.1884258e+02 -2.2171415e+03 - 1.7601120e+03 -3.6538679e+02 -2.2212003e+03 - 1.7805189e+03 -3.1210249e+02 -2.2252080e+03 - 1.7996825e+03 -2.5914677e+02 -2.2291065e+03 - 1.8176345e+03 -2.0669715e+02 -2.2328325e+03 - 1.8344117e+03 -1.5495594e+02 -2.2363172e+03 - 1.8500567e+03 -1.0415570e+02 -2.2394860e+03 - 1.8646180e+03 -5.4566096e+01 -2.2422580e+03 - 1.8781502e+03 -6.5025042e+00 -2.2445463e+03 - 1.8907141e+03 3.9663345e+01 -2.2462578e+03 - 1.9023767e+03 8.3490297e+01 -2.2472942e+03 - 1.9132110e+03 1.2445205e+02 -2.2475536e+03 - 1.9232944e+03 1.6191888e+02 -2.2469332e+03 - 1.9327076e+03 1.9513766e+02 -2.2453348e+03 - 1.9415302e+03 2.2321231e+02 -2.2426731e+03 - 1.9498361e+03 2.4508971e+02 -2.2388891e+03 - 1.9576846e+03 2.5955996e+02 -2.2339691e+03 - 1.9651086e+03 2.6528684e+02 -2.2279718e+03 - 1.9720995e+03 2.6089160e+02 -2.2210614e+03 - 1.9785893e+03 2.4511958e+02 -2.2135438e+03 - 1.9844377e+03 2.1711395e+02 -2.2058933e+03 - 1.9894287e+03 1.7679067e+02 -2.1987493e+03 - 1.9932919e+03 1.2524201e+02 -2.1928600e+03 - 1.9957516e+03 6.5006525e+01 -2.1889582e+03 - 1.9965978e+03 2.4067136e-09 -2.1875899e+03 - 1.8915331e+03 0.0000000e+00 -2.2828147e+03 - 1.8908626e+03 -6.1619914e+01 -2.2839450e+03 - 1.8888985e+03 -1.1919569e+02 -2.2871875e+03 - 1.8857683e+03 -1.6932867e+02 -2.2921387e+03 - 1.8816423e+03 -2.0968530e+02 -2.2982435e+03 - 1.8766922e+03 -2.3909626e+02 -2.3049150e+03 - 1.8710588e+03 -2.5739408e+02 -2.3116283e+03 - 1.8648369e+03 -2.6512331e+02 -2.3179716e+03 - 1.8580733e+03 -2.6324416e+02 -2.3236586e+03 - 1.8507740e+03 -2.5289639e+02 -2.3285157e+03 - 1.8429143e+03 -2.3524083e+02 -2.3324594e+03 - 1.8344487e+03 -2.1136837e+02 -2.3354718e+03 - 1.8253196e+03 -1.8225711e+02 -2.3375794e+03 - 1.8154633e+03 -1.4875962e+02 -2.3388369e+03 - 1.8048145e+03 -1.1160691e+02 -2.3393150e+03 - 1.7933094e+03 -7.1420368e+01 -2.3390927e+03 - 1.7808870e+03 -2.8726364e+01 -2.3382516e+03 - 1.7674908e+03 1.6028990e+01 -2.3368730e+03 - 1.7530689e+03 6.2466465e+01 -2.3350350e+03 - 1.7375743e+03 1.1026209e+02 -2.3328123e+03 - 1.7209652e+03 1.5913736e+02 -2.3302752e+03 - 1.7032046e+03 2.0885118e+02 -2.3274891e+03 - 1.6842602e+03 2.5919327e+02 -2.3245152e+03 - 1.6641046e+03 3.0997877e+02 -2.3214099e+03 - 1.6427146e+03 3.6104399e+02 -2.3182256e+03 - 1.6200714e+03 4.1224282e+02 -2.3150104e+03 - 1.5961604e+03 4.6344403e+02 -2.3118086e+03 - 1.5709707e+03 5.1452888e+02 -2.3086609e+03 - 1.5444954e+03 5.6538937e+02 -2.3056044e+03 - 1.5167314e+03 6.1592674e+02 -2.3026730e+03 - 1.4876790e+03 6.6605022e+02 -2.2998973e+03 - 1.4573420e+03 7.1567612e+02 -2.2973049e+03 - 1.4257278e+03 7.6472696e+02 -2.2949207e+03 - 1.3928469e+03 8.1313090e+02 -2.2927664e+03 - 1.3587132e+03 8.6082116e+02 -2.2908612e+03 - 1.3233438e+03 9.0773563e+02 -2.2892216e+03 - 1.2867591e+03 9.5381650e+02 -2.2878614e+03 - 1.2489826e+03 9.9900997e+02 -2.2867918e+03 - 1.2100408e+03 1.0432661e+03 -2.2860217e+03 - 1.1699637e+03 1.0865384e+03 -2.2855571e+03 - 1.1287841e+03 1.1287841e+03 -2.2854018e+03 - 1.0865384e+03 1.1699637e+03 -2.2855571e+03 - 1.0432661e+03 1.2100408e+03 -2.2860217e+03 - 9.9900997e+02 1.2489826e+03 -2.2867918e+03 - 9.5381650e+02 1.2867591e+03 -2.2878614e+03 - 9.0773563e+02 1.3233438e+03 -2.2892216e+03 - 8.6082116e+02 1.3587132e+03 -2.2908612e+03 - 8.1313090e+02 1.3928469e+03 -2.2927664e+03 - 7.6472696e+02 1.4257278e+03 -2.2949207e+03 - 7.1567612e+02 1.4573420e+03 -2.2973049e+03 - 6.6605022e+02 1.4876790e+03 -2.2998973e+03 - 6.1592674e+02 1.5167314e+03 -2.3026730e+03 - 5.6538937e+02 1.5444954e+03 -2.3056044e+03 - 5.1452888e+02 1.5709707e+03 -2.3086609e+03 - 4.6344403e+02 1.5961604e+03 -2.3118086e+03 - 4.1224282e+02 1.6200714e+03 -2.3150104e+03 - 3.6104399e+02 1.6427146e+03 -2.3182256e+03 - 3.0997877e+02 1.6641046e+03 -2.3214099e+03 - 2.5919327e+02 1.6842602e+03 -2.3245152e+03 - 2.0885118e+02 1.7032046e+03 -2.3274891e+03 - 1.5913736e+02 1.7209652e+03 -2.3302752e+03 - 1.1026209e+02 1.7375743e+03 -2.3328123e+03 - 6.2466465e+01 1.7530689e+03 -2.3350350e+03 - 1.6028990e+01 1.7674908e+03 -2.3368730e+03 - -2.8726364e+01 1.7808870e+03 -2.3382516e+03 - -7.1420368e+01 1.7933094e+03 -2.3390927e+03 - -1.1160691e+02 1.8048145e+03 -2.3393150e+03 - -1.4875962e+02 1.8154633e+03 -2.3388369e+03 - -1.8225711e+02 1.8253196e+03 -2.3375794e+03 - -2.1136837e+02 1.8344487e+03 -2.3354718e+03 - -2.3524083e+02 1.8429143e+03 -2.3324594e+03 - -2.5289639e+02 1.8507740e+03 -2.3285157e+03 - -2.6324416e+02 1.8580733e+03 -2.3236586e+03 - -2.6512331e+02 1.8648369e+03 -2.3179716e+03 - -2.5739408e+02 1.8710588e+03 -2.3116283e+03 - -2.3909626e+02 1.8766922e+03 -2.3049150e+03 - -2.0968530e+02 1.8816423e+03 -2.2982435e+03 - -1.6932867e+02 1.8857683e+03 -2.2921387e+03 - -1.1919569e+02 1.8888985e+03 -2.2871875e+03 - -6.1619914e+01 1.8908626e+03 -2.2839450e+03 - -2.4067136e-09 1.8915331e+03 -2.2828147e+03 - 6.1619914e+01 1.8908626e+03 -2.2839450e+03 - 1.1919569e+02 1.8888985e+03 -2.2871875e+03 - 1.6932867e+02 1.8857683e+03 -2.2921387e+03 - 2.0968530e+02 1.8816423e+03 -2.2982435e+03 - 2.3909626e+02 1.8766922e+03 -2.3049150e+03 - 2.5739408e+02 1.8710588e+03 -2.3116283e+03 - 2.6512331e+02 1.8648369e+03 -2.3179716e+03 - 2.6324416e+02 1.8580733e+03 -2.3236586e+03 - 2.5289639e+02 1.8507740e+03 -2.3285157e+03 - 2.3524083e+02 1.8429143e+03 -2.3324594e+03 - 2.1136837e+02 1.8344487e+03 -2.3354718e+03 - 1.8225711e+02 1.8253196e+03 -2.3375794e+03 - 1.4875962e+02 1.8154633e+03 -2.3388369e+03 - 1.1160691e+02 1.8048145e+03 -2.3393150e+03 - 7.1420368e+01 1.7933094e+03 -2.3390927e+03 - 2.8726364e+01 1.7808870e+03 -2.3382516e+03 - -1.6028990e+01 1.7674908e+03 -2.3368730e+03 - -6.2466465e+01 1.7530689e+03 -2.3350350e+03 - -1.1026209e+02 1.7375743e+03 -2.3328123e+03 - -1.5913736e+02 1.7209652e+03 -2.3302752e+03 - -2.0885118e+02 1.7032046e+03 -2.3274891e+03 - -2.5919327e+02 1.6842602e+03 -2.3245152e+03 - -3.0997877e+02 1.6641046e+03 -2.3214099e+03 - -3.6104399e+02 1.6427146e+03 -2.3182256e+03 - -4.1224282e+02 1.6200714e+03 -2.3150104e+03 - -4.6344403e+02 1.5961604e+03 -2.3118086e+03 - -5.1452888e+02 1.5709707e+03 -2.3086609e+03 - -5.6538937e+02 1.5444954e+03 -2.3056044e+03 - -6.1592674e+02 1.5167314e+03 -2.3026730e+03 - -6.6605022e+02 1.4876790e+03 -2.2998973e+03 - -7.1567612e+02 1.4573420e+03 -2.2973049e+03 - -7.6472696e+02 1.4257278e+03 -2.2949207e+03 - -8.1313090e+02 1.3928469e+03 -2.2927664e+03 - -8.6082116e+02 1.3587132e+03 -2.2908612e+03 - -9.0773563e+02 1.3233438e+03 -2.2892216e+03 - -9.5381650e+02 1.2867591e+03 -2.2878614e+03 - -9.9900997e+02 1.2489826e+03 -2.2867918e+03 - -1.0432661e+03 1.2100408e+03 -2.2860217e+03 - -1.0865384e+03 1.1699637e+03 -2.2855571e+03 - -1.1287841e+03 1.1287841e+03 -2.2854018e+03 - -1.1699637e+03 1.0865384e+03 -2.2855571e+03 - -1.2100408e+03 1.0432661e+03 -2.2860217e+03 - -1.2489826e+03 9.9900997e+02 -2.2867918e+03 - -1.2867591e+03 9.5381650e+02 -2.2878614e+03 - -1.3233438e+03 9.0773563e+02 -2.2892216e+03 - -1.3587132e+03 8.6082116e+02 -2.2908612e+03 - -1.3928469e+03 8.1313090e+02 -2.2927664e+03 - -1.4257278e+03 7.6472696e+02 -2.2949207e+03 - -1.4573420e+03 7.1567612e+02 -2.2973049e+03 - -1.4876790e+03 6.6605022e+02 -2.2998973e+03 - -1.5167314e+03 6.1592674e+02 -2.3026730e+03 - -1.5444954e+03 5.6538937e+02 -2.3056044e+03 - -1.5709707e+03 5.1452888e+02 -2.3086609e+03 - -1.5961604e+03 4.6344403e+02 -2.3118086e+03 - -1.6200714e+03 4.1224282e+02 -2.3150104e+03 - -1.6427146e+03 3.6104399e+02 -2.3182256e+03 - -1.6641046e+03 3.0997877e+02 -2.3214099e+03 - -1.6842602e+03 2.5919327e+02 -2.3245152e+03 - -1.7032046e+03 2.0885118e+02 -2.3274891e+03 - -1.7209652e+03 1.5913736e+02 -2.3302752e+03 - -1.7375743e+03 1.1026209e+02 -2.3328123e+03 - -1.7530689e+03 6.2466465e+01 -2.3350350e+03 - -1.7674908e+03 1.6028990e+01 -2.3368730e+03 - -1.7808870e+03 -2.8726364e+01 -2.3382516e+03 - -1.7933094e+03 -7.1420368e+01 -2.3390927e+03 - -1.8048145e+03 -1.1160691e+02 -2.3393150e+03 - -1.8154633e+03 -1.4875962e+02 -2.3388369e+03 - -1.8253196e+03 -1.8225711e+02 -2.3375794e+03 - -1.8344487e+03 -2.1136837e+02 -2.3354718e+03 - -1.8429143e+03 -2.3524083e+02 -2.3324594e+03 - -1.8507740e+03 -2.5289639e+02 -2.3285157e+03 - -1.8580733e+03 -2.6324416e+02 -2.3236586e+03 - -1.8648369e+03 -2.6512331e+02 -2.3179716e+03 - -1.8710588e+03 -2.5739408e+02 -2.3116283e+03 - -1.8766922e+03 -2.3909626e+02 -2.3049150e+03 - -1.8816423e+03 -2.0968530e+02 -2.2982435e+03 - -1.8857683e+03 -1.6932867e+02 -2.2921387e+03 - -1.8888985e+03 -1.1919569e+02 -2.2871875e+03 - -1.8908626e+03 -6.1619914e+01 -2.2839450e+03 - -1.8915331e+03 -7.2201409e-09 -2.2828147e+03 - -1.8908626e+03 6.1619914e+01 -2.2839450e+03 - -1.8888985e+03 1.1919569e+02 -2.2871875e+03 - -1.8857683e+03 1.6932867e+02 -2.2921387e+03 - -1.8816423e+03 2.0968530e+02 -2.2982435e+03 - -1.8766922e+03 2.3909626e+02 -2.3049150e+03 - -1.8710588e+03 2.5739408e+02 -2.3116283e+03 - -1.8648369e+03 2.6512331e+02 -2.3179716e+03 - -1.8580733e+03 2.6324416e+02 -2.3236586e+03 - -1.8507740e+03 2.5289639e+02 -2.3285157e+03 - -1.8429143e+03 2.3524083e+02 -2.3324594e+03 - -1.8344487e+03 2.1136837e+02 -2.3354718e+03 - -1.8253196e+03 1.8225711e+02 -2.3375794e+03 - -1.8154633e+03 1.4875962e+02 -2.3388369e+03 - -1.8048145e+03 1.1160691e+02 -2.3393150e+03 - -1.7933094e+03 7.1420368e+01 -2.3390927e+03 - -1.7808870e+03 2.8726364e+01 -2.3382516e+03 - -1.7674908e+03 -1.6028990e+01 -2.3368730e+03 - -1.7530689e+03 -6.2466465e+01 -2.3350350e+03 - -1.7375743e+03 -1.1026209e+02 -2.3328123e+03 - -1.7209652e+03 -1.5913736e+02 -2.3302752e+03 - -1.7032046e+03 -2.0885118e+02 -2.3274891e+03 - -1.6842602e+03 -2.5919327e+02 -2.3245152e+03 - -1.6641046e+03 -3.0997877e+02 -2.3214099e+03 - -1.6427146e+03 -3.6104399e+02 -2.3182256e+03 - -1.6200714e+03 -4.1224282e+02 -2.3150104e+03 - -1.5961604e+03 -4.6344403e+02 -2.3118086e+03 - -1.5709707e+03 -5.1452888e+02 -2.3086609e+03 - -1.5444954e+03 -5.6538937e+02 -2.3056044e+03 - -1.5167314e+03 -6.1592674e+02 -2.3026730e+03 - -1.4876790e+03 -6.6605022e+02 -2.2998973e+03 - -1.4573420e+03 -7.1567612e+02 -2.2973049e+03 - -1.4257278e+03 -7.6472696e+02 -2.2949207e+03 - -1.3928469e+03 -8.1313090e+02 -2.2927664e+03 - -1.3587132e+03 -8.6082116e+02 -2.2908612e+03 - -1.3233438e+03 -9.0773563e+02 -2.2892216e+03 - -1.2867591e+03 -9.5381650e+02 -2.2878614e+03 - -1.2489826e+03 -9.9900997e+02 -2.2867918e+03 - -1.2100408e+03 -1.0432661e+03 -2.2860217e+03 - -1.1699637e+03 -1.0865384e+03 -2.2855571e+03 - -1.1287841e+03 -1.1287841e+03 -2.2854018e+03 - -1.0865384e+03 -1.1699637e+03 -2.2855571e+03 - -1.0432661e+03 -1.2100408e+03 -2.2860217e+03 - -9.9900997e+02 -1.2489826e+03 -2.2867918e+03 - -9.5381650e+02 -1.2867591e+03 -2.2878614e+03 - -9.0773563e+02 -1.3233438e+03 -2.2892216e+03 - -8.6082116e+02 -1.3587132e+03 -2.2908612e+03 - -8.1313090e+02 -1.3928469e+03 -2.2927664e+03 - -7.6472696e+02 -1.4257278e+03 -2.2949207e+03 - -7.1567612e+02 -1.4573420e+03 -2.2973049e+03 - -6.6605022e+02 -1.4876790e+03 -2.2998973e+03 - -6.1592674e+02 -1.5167314e+03 -2.3026730e+03 - -5.6538937e+02 -1.5444954e+03 -2.3056044e+03 - -5.1452888e+02 -1.5709707e+03 -2.3086609e+03 - -4.6344403e+02 -1.5961604e+03 -2.3118086e+03 - -4.1224282e+02 -1.6200714e+03 -2.3150104e+03 - -3.6104399e+02 -1.6427146e+03 -2.3182256e+03 - -3.0997877e+02 -1.6641046e+03 -2.3214099e+03 - -2.5919327e+02 -1.6842602e+03 -2.3245152e+03 - -2.0885118e+02 -1.7032046e+03 -2.3274891e+03 - -1.5913736e+02 -1.7209652e+03 -2.3302752e+03 - -1.1026209e+02 -1.7375743e+03 -2.3328123e+03 - -6.2466465e+01 -1.7530689e+03 -2.3350350e+03 - -1.6028990e+01 -1.7674908e+03 -2.3368730e+03 - 2.8726364e+01 -1.7808870e+03 -2.3382516e+03 - 7.1420368e+01 -1.7933094e+03 -2.3390927e+03 - 1.1160691e+02 -1.8048145e+03 -2.3393150e+03 - 1.4875962e+02 -1.8154633e+03 -2.3388369e+03 - 1.8225711e+02 -1.8253196e+03 -2.3375794e+03 - 2.1136837e+02 -1.8344487e+03 -2.3354718e+03 - 2.3524083e+02 -1.8429143e+03 -2.3324594e+03 - 2.5289639e+02 -1.8507740e+03 -2.3285157e+03 - 2.6324416e+02 -1.8580733e+03 -2.3236586e+03 - 2.6512331e+02 -1.8648369e+03 -2.3179716e+03 - 2.5739408e+02 -1.8710588e+03 -2.3116283e+03 - 2.3909626e+02 -1.8766922e+03 -2.3049150e+03 - 2.0968530e+02 -1.8816423e+03 -2.2982435e+03 - 1.6932867e+02 -1.8857683e+03 -2.2921387e+03 - 1.1919569e+02 -1.8888985e+03 -2.2871875e+03 - 6.1619914e+01 -1.8908626e+03 -2.2839450e+03 - 7.2201409e-09 -1.8915331e+03 -2.2828147e+03 - -6.1619914e+01 -1.8908626e+03 -2.2839450e+03 - -1.1919569e+02 -1.8888985e+03 -2.2871875e+03 - -1.6932867e+02 -1.8857683e+03 -2.2921387e+03 - -2.0968530e+02 -1.8816423e+03 -2.2982435e+03 - -2.3909626e+02 -1.8766922e+03 -2.3049150e+03 - -2.5739408e+02 -1.8710588e+03 -2.3116283e+03 - -2.6512331e+02 -1.8648369e+03 -2.3179716e+03 - -2.6324416e+02 -1.8580733e+03 -2.3236586e+03 - -2.5289639e+02 -1.8507740e+03 -2.3285157e+03 - -2.3524083e+02 -1.8429143e+03 -2.3324594e+03 - -2.1136837e+02 -1.8344487e+03 -2.3354718e+03 - -1.8225711e+02 -1.8253196e+03 -2.3375794e+03 - -1.4875962e+02 -1.8154633e+03 -2.3388369e+03 - -1.1160691e+02 -1.8048145e+03 -2.3393150e+03 - -7.1420368e+01 -1.7933094e+03 -2.3390927e+03 - -2.8726364e+01 -1.7808870e+03 -2.3382516e+03 - 1.6028990e+01 -1.7674908e+03 -2.3368730e+03 - 6.2466465e+01 -1.7530689e+03 -2.3350350e+03 - 1.1026209e+02 -1.7375743e+03 -2.3328123e+03 - 1.5913736e+02 -1.7209652e+03 -2.3302752e+03 - 2.0885118e+02 -1.7032046e+03 -2.3274891e+03 - 2.5919327e+02 -1.6842602e+03 -2.3245152e+03 - 3.0997877e+02 -1.6641046e+03 -2.3214099e+03 - 3.6104399e+02 -1.6427146e+03 -2.3182256e+03 - 4.1224282e+02 -1.6200714e+03 -2.3150104e+03 - 4.6344403e+02 -1.5961604e+03 -2.3118086e+03 - 5.1452888e+02 -1.5709707e+03 -2.3086609e+03 - 5.6538937e+02 -1.5444954e+03 -2.3056044e+03 - 6.1592674e+02 -1.5167314e+03 -2.3026730e+03 - 6.6605022e+02 -1.4876790e+03 -2.2998973e+03 - 7.1567612e+02 -1.4573420e+03 -2.2973049e+03 - 7.6472696e+02 -1.4257278e+03 -2.2949207e+03 - 8.1313090e+02 -1.3928469e+03 -2.2927664e+03 - 8.6082116e+02 -1.3587132e+03 -2.2908612e+03 - 9.0773563e+02 -1.3233438e+03 -2.2892216e+03 - 9.5381650e+02 -1.2867591e+03 -2.2878614e+03 - 9.9900997e+02 -1.2489826e+03 -2.2867918e+03 - 1.0432661e+03 -1.2100408e+03 -2.2860217e+03 - 1.0865384e+03 -1.1699637e+03 -2.2855571e+03 - 1.1287841e+03 -1.1287841e+03 -2.2854018e+03 - 1.1699637e+03 -1.0865384e+03 -2.2855571e+03 - 1.2100408e+03 -1.0432661e+03 -2.2860217e+03 - 1.2489826e+03 -9.9900997e+02 -2.2867918e+03 - 1.2867591e+03 -9.5381650e+02 -2.2878614e+03 - 1.3233438e+03 -9.0773563e+02 -2.2892216e+03 - 1.3587132e+03 -8.6082116e+02 -2.2908612e+03 - 1.3928469e+03 -8.1313090e+02 -2.2927664e+03 - 1.4257278e+03 -7.6472696e+02 -2.2949207e+03 - 1.4573420e+03 -7.1567612e+02 -2.2973049e+03 - 1.4876790e+03 -6.6605022e+02 -2.2998973e+03 - 1.5167314e+03 -6.1592674e+02 -2.3026730e+03 - 1.5444954e+03 -5.6538937e+02 -2.3056044e+03 - 1.5709707e+03 -5.1452888e+02 -2.3086609e+03 - 1.5961604e+03 -4.6344403e+02 -2.3118086e+03 - 1.6200714e+03 -4.1224282e+02 -2.3150104e+03 - 1.6427146e+03 -3.6104399e+02 -2.3182256e+03 - 1.6641046e+03 -3.0997877e+02 -2.3214099e+03 - 1.6842602e+03 -2.5919327e+02 -2.3245152e+03 - 1.7032046e+03 -2.0885118e+02 -2.3274891e+03 - 1.7209652e+03 -1.5913736e+02 -2.3302752e+03 - 1.7375743e+03 -1.1026209e+02 -2.3328123e+03 - 1.7530689e+03 -6.2466465e+01 -2.3350350e+03 - 1.7674908e+03 -1.6028990e+01 -2.3368730e+03 - 1.7808870e+03 2.8726364e+01 -2.3382516e+03 - 1.7933094e+03 7.1420368e+01 -2.3390927e+03 - 1.8048145e+03 1.1160691e+02 -2.3393150e+03 - 1.8154633e+03 1.4875962e+02 -2.3388369e+03 - 1.8253196e+03 1.8225711e+02 -2.3375794e+03 - 1.8344487e+03 2.1136837e+02 -2.3354718e+03 - 1.8429143e+03 2.3524083e+02 -2.3324594e+03 - 1.8507740e+03 2.5289639e+02 -2.3285157e+03 - 1.8580733e+03 2.6324416e+02 -2.3236586e+03 - 1.8648369e+03 2.6512331e+02 -2.3179716e+03 - 1.8710588e+03 2.5739408e+02 -2.3116283e+03 - 1.8766922e+03 2.3909626e+02 -2.3049150e+03 - 1.8816423e+03 2.0968530e+02 -2.2982435e+03 - 1.8857683e+03 1.6932867e+02 -2.2921387e+03 - 1.8888985e+03 1.1919569e+02 -2.2871875e+03 - 1.8908626e+03 6.1619914e+01 -2.2839450e+03 - 1.8915331e+03 -2.4067136e-09 -2.2828147e+03 - 1.7846501e+03 0.0000000e+00 -2.3759321e+03 - 1.7841130e+03 -5.8964974e+01 -2.3768826e+03 - 1.7825288e+03 -1.1444850e+02 -2.3796234e+03 - 1.7799701e+03 -1.6346902e+02 -2.3838495e+03 - 1.7765354e+03 -2.0388634e+02 -2.3891332e+03 - 1.7723250e+03 -2.3451020e+02 -2.3950090e+03 - 1.7674217e+03 -2.5500560e+02 -2.4010449e+03 - 1.7618808e+03 -2.6568366e+02 -2.4068862e+03 - 1.7557274e+03 -2.6726802e+02 -2.4122712e+03 - 1.7489596e+03 -2.6069419e+02 -2.4170277e+03 - 1.7415545e+03 -2.4696397e+02 -2.4210584e+03 - 1.7334743e+03 -2.2705352e+02 -2.4243242e+03 - 1.7246721e+03 -2.0186332e+02 -2.4268274e+03 - 1.7150961e+03 -1.7219670e+02 -2.4285985e+03 - 1.7046928e+03 -1.3875580e+02 -2.4296860e+03 - 1.6934096e+03 -1.0214700e+02 -2.4301486e+03 - 1.6811958e+03 -6.2890861e+01 -2.4300500e+03 - 1.6680040e+03 -2.1433364e+01 -2.4294558e+03 - 1.6537906e+03 2.1842975e+01 -2.4284310e+03 - 1.6385157e+03 6.6609043e+01 -2.4270386e+03 - 1.6221438e+03 1.1258034e+02 -2.4253385e+03 - 1.6046433e+03 1.5950953e+02 -2.4233878e+03 - 1.5859869e+03 2.0718020e+02 -2.4212399e+03 - 1.5661510e+03 2.5540172e+02 -2.4189446e+03 - 1.5451163e+03 3.0400504e+02 -2.4165484e+03 - 1.5228671e+03 3.5283921e+02 -2.4140943e+03 - 1.4993914e+03 4.0176857e+02 -2.4116221e+03 - 1.4746809e+03 4.5067047e+02 -2.4091685e+03 - 1.4487308e+03 4.9943338e+02 -2.4067670e+03 - 1.4215398e+03 5.4795540e+02 -2.4044485e+03 - 1.3931098e+03 5.9614295e+02 -2.4022407e+03 - 1.3634464e+03 6.4390983e+02 -2.4001690e+03 - 1.3325580e+03 6.9117634e+02 -2.3982559e+03 - 1.3004566e+03 7.3786860e+02 -2.3965214e+03 - 1.2671572e+03 7.8391804e+02 -2.3949831e+03 - 1.2326779e+03 8.2926089e+02 -2.3936562e+03 - 1.1970402e+03 8.7383783e+02 -2.3925533e+03 - 1.1602684e+03 9.1759372e+02 -2.3916847e+03 - 1.1223902e+03 9.6047730e+02 -2.3910587e+03 - 1.0834364e+03 1.0024410e+03 -2.3906807e+03 - 1.0434409e+03 1.0434409e+03 -2.3905544e+03 - 1.0024410e+03 1.0834364e+03 -2.3906807e+03 - 9.6047730e+02 1.1223902e+03 -2.3910587e+03 - 9.1759372e+02 1.1602684e+03 -2.3916847e+03 - 8.7383783e+02 1.1970402e+03 -2.3925533e+03 - 8.2926089e+02 1.2326779e+03 -2.3936562e+03 - 7.8391804e+02 1.2671572e+03 -2.3949831e+03 - 7.3786860e+02 1.3004566e+03 -2.3965214e+03 - 6.9117634e+02 1.3325580e+03 -2.3982559e+03 - 6.4390983e+02 1.3634464e+03 -2.4001690e+03 - 5.9614295e+02 1.3931098e+03 -2.4022407e+03 - 5.4795540e+02 1.4215398e+03 -2.4044485e+03 - 4.9943338e+02 1.4487308e+03 -2.4067670e+03 - 4.5067047e+02 1.4746809e+03 -2.4091685e+03 - 4.0176857e+02 1.4993914e+03 -2.4116221e+03 - 3.5283921e+02 1.5228671e+03 -2.4140943e+03 - 3.0400504e+02 1.5451163e+03 -2.4165484e+03 - 2.5540172e+02 1.5661510e+03 -2.4189446e+03 - 2.0718020e+02 1.5859869e+03 -2.4212399e+03 - 1.5950953e+02 1.6046433e+03 -2.4233878e+03 - 1.1258034e+02 1.6221438e+03 -2.4253385e+03 - 6.6609043e+01 1.6385157e+03 -2.4270386e+03 - 2.1842975e+01 1.6537906e+03 -2.4284310e+03 - -2.1433364e+01 1.6680040e+03 -2.4294558e+03 - -6.2890861e+01 1.6811958e+03 -2.4300500e+03 - -1.0214700e+02 1.6934096e+03 -2.4301486e+03 - -1.3875580e+02 1.7046928e+03 -2.4296860e+03 - -1.7219670e+02 1.7150961e+03 -2.4285985e+03 - -2.0186332e+02 1.7246721e+03 -2.4268274e+03 - -2.2705352e+02 1.7334743e+03 -2.4243242e+03 - -2.4696397e+02 1.7415545e+03 -2.4210584e+03 - -2.6069419e+02 1.7489596e+03 -2.4170277e+03 - -2.6726802e+02 1.7557274e+03 -2.4122712e+03 - -2.6568366e+02 1.7618808e+03 -2.4068862e+03 - -2.5500560e+02 1.7674217e+03 -2.4010449e+03 - -2.3451020e+02 1.7723250e+03 -2.3950090e+03 - -2.0388634e+02 1.7765354e+03 -2.3891332e+03 - -1.6346902e+02 1.7799701e+03 -2.3838495e+03 - -1.1444850e+02 1.7825288e+03 -2.3796234e+03 - -5.8964974e+01 1.7841130e+03 -2.3768826e+03 - 0.0000000e+00 1.7846501e+03 -2.3759321e+03 - 5.8964974e+01 1.7841130e+03 -2.3768826e+03 - 1.1444850e+02 1.7825288e+03 -2.3796234e+03 - 1.6346902e+02 1.7799701e+03 -2.3838495e+03 - 2.0388634e+02 1.7765354e+03 -2.3891332e+03 - 2.3451020e+02 1.7723250e+03 -2.3950090e+03 - 2.5500560e+02 1.7674217e+03 -2.4010449e+03 - 2.6568366e+02 1.7618808e+03 -2.4068862e+03 - 2.6726802e+02 1.7557274e+03 -2.4122712e+03 - 2.6069419e+02 1.7489596e+03 -2.4170277e+03 - 2.4696397e+02 1.7415545e+03 -2.4210584e+03 - 2.2705352e+02 1.7334743e+03 -2.4243242e+03 - 2.0186332e+02 1.7246721e+03 -2.4268274e+03 - 1.7219670e+02 1.7150961e+03 -2.4285985e+03 - 1.3875580e+02 1.7046928e+03 -2.4296860e+03 - 1.0214700e+02 1.6934096e+03 -2.4301486e+03 - 6.2890861e+01 1.6811958e+03 -2.4300500e+03 - 2.1433364e+01 1.6680040e+03 -2.4294558e+03 - -2.1842975e+01 1.6537906e+03 -2.4284310e+03 - -6.6609043e+01 1.6385157e+03 -2.4270386e+03 - -1.1258034e+02 1.6221438e+03 -2.4253385e+03 - -1.5950953e+02 1.6046433e+03 -2.4233878e+03 - -2.0718020e+02 1.5859869e+03 -2.4212399e+03 - -2.5540172e+02 1.5661510e+03 -2.4189446e+03 - -3.0400504e+02 1.5451163e+03 -2.4165484e+03 - -3.5283921e+02 1.5228671e+03 -2.4140943e+03 - -4.0176857e+02 1.4993914e+03 -2.4116221e+03 - -4.5067047e+02 1.4746809e+03 -2.4091685e+03 - -4.9943338e+02 1.4487308e+03 -2.4067670e+03 - -5.4795540e+02 1.4215398e+03 -2.4044485e+03 - -5.9614295e+02 1.3931098e+03 -2.4022407e+03 - -6.4390983e+02 1.3634464e+03 -2.4001690e+03 - -6.9117634e+02 1.3325580e+03 -2.3982559e+03 - -7.3786860e+02 1.3004566e+03 -2.3965214e+03 - -7.8391804e+02 1.2671572e+03 -2.3949831e+03 - -8.2926089e+02 1.2326779e+03 -2.3936562e+03 - -8.7383783e+02 1.1970402e+03 -2.3925533e+03 - -9.1759372e+02 1.1602684e+03 -2.3916847e+03 - -9.6047730e+02 1.1223902e+03 -2.3910587e+03 - -1.0024410e+03 1.0834364e+03 -2.3906807e+03 - -1.0434409e+03 1.0434409e+03 -2.3905544e+03 - -1.0834364e+03 1.0024410e+03 -2.3906807e+03 - -1.1223902e+03 9.6047730e+02 -2.3910587e+03 - -1.1602684e+03 9.1759372e+02 -2.3916847e+03 - -1.1970402e+03 8.7383783e+02 -2.3925533e+03 - -1.2326779e+03 8.2926089e+02 -2.3936562e+03 - -1.2671572e+03 7.8391804e+02 -2.3949831e+03 - -1.3004566e+03 7.3786860e+02 -2.3965214e+03 - -1.3325580e+03 6.9117634e+02 -2.3982559e+03 - -1.3634464e+03 6.4390983e+02 -2.4001690e+03 - -1.3931098e+03 5.9614295e+02 -2.4022407e+03 - -1.4215398e+03 5.4795540e+02 -2.4044485e+03 - -1.4487308e+03 4.9943338e+02 -2.4067670e+03 - -1.4746809e+03 4.5067047e+02 -2.4091685e+03 - -1.4993914e+03 4.0176857e+02 -2.4116221e+03 - -1.5228671e+03 3.5283921e+02 -2.4140943e+03 - -1.5451163e+03 3.0400504e+02 -2.4165484e+03 - -1.5661510e+03 2.5540172e+02 -2.4189446e+03 - -1.5859869e+03 2.0718020e+02 -2.4212399e+03 - -1.6046433e+03 1.5950953e+02 -2.4233878e+03 - -1.6221438e+03 1.1258034e+02 -2.4253385e+03 - -1.6385157e+03 6.6609043e+01 -2.4270386e+03 - -1.6537906e+03 2.1842975e+01 -2.4284310e+03 - -1.6680040e+03 -2.1433364e+01 -2.4294558e+03 - -1.6811958e+03 -6.2890861e+01 -2.4300500e+03 - -1.6934096e+03 -1.0214700e+02 -2.4301486e+03 - -1.7046928e+03 -1.3875580e+02 -2.4296860e+03 - -1.7150961e+03 -1.7219670e+02 -2.4285985e+03 - -1.7246721e+03 -2.0186332e+02 -2.4268274e+03 - -1.7334743e+03 -2.2705352e+02 -2.4243242e+03 - -1.7415545e+03 -2.4696397e+02 -2.4210584e+03 - -1.7489596e+03 -2.6069419e+02 -2.4170277e+03 - -1.7557274e+03 -2.6726802e+02 -2.4122712e+03 - -1.7618808e+03 -2.6568366e+02 -2.4068862e+03 - -1.7674217e+03 -2.5500560e+02 -2.4010449e+03 - -1.7723250e+03 -2.3451020e+02 -2.3950090e+03 - -1.7765354e+03 -2.0388634e+02 -2.3891332e+03 - -1.7799701e+03 -1.6346902e+02 -2.3838495e+03 - -1.7825288e+03 -1.1444850e+02 -2.3796234e+03 - -1.7841130e+03 -5.8964974e+01 -2.3768826e+03 - -1.7846501e+03 4.8134273e-09 -2.3759321e+03 - -1.7841130e+03 5.8964974e+01 -2.3768826e+03 - -1.7825288e+03 1.1444850e+02 -2.3796234e+03 - -1.7799701e+03 1.6346902e+02 -2.3838495e+03 - -1.7765354e+03 2.0388634e+02 -2.3891332e+03 - -1.7723250e+03 2.3451020e+02 -2.3950090e+03 - -1.7674217e+03 2.5500560e+02 -2.4010449e+03 - -1.7618808e+03 2.6568366e+02 -2.4068862e+03 - -1.7557274e+03 2.6726802e+02 -2.4122712e+03 - -1.7489596e+03 2.6069419e+02 -2.4170277e+03 - -1.7415545e+03 2.4696397e+02 -2.4210584e+03 - -1.7334743e+03 2.2705352e+02 -2.4243242e+03 - -1.7246721e+03 2.0186332e+02 -2.4268274e+03 - -1.7150961e+03 1.7219670e+02 -2.4285985e+03 - -1.7046928e+03 1.3875580e+02 -2.4296860e+03 - -1.6934096e+03 1.0214700e+02 -2.4301486e+03 - -1.6811958e+03 6.2890861e+01 -2.4300500e+03 - -1.6680040e+03 2.1433364e+01 -2.4294558e+03 - -1.6537906e+03 -2.1842975e+01 -2.4284310e+03 - -1.6385157e+03 -6.6609043e+01 -2.4270386e+03 - -1.6221438e+03 -1.1258034e+02 -2.4253385e+03 - -1.6046433e+03 -1.5950953e+02 -2.4233878e+03 - -1.5859869e+03 -2.0718020e+02 -2.4212399e+03 - -1.5661510e+03 -2.5540172e+02 -2.4189446e+03 - -1.5451163e+03 -3.0400504e+02 -2.4165484e+03 - -1.5228671e+03 -3.5283921e+02 -2.4140943e+03 - -1.4993914e+03 -4.0176857e+02 -2.4116221e+03 - -1.4746809e+03 -4.5067047e+02 -2.4091685e+03 - -1.4487308e+03 -4.9943338e+02 -2.4067670e+03 - -1.4215398e+03 -5.4795540e+02 -2.4044485e+03 - -1.3931098e+03 -5.9614295e+02 -2.4022407e+03 - -1.3634464e+03 -6.4390983e+02 -2.4001690e+03 - -1.3325580e+03 -6.9117634e+02 -2.3982559e+03 - -1.3004566e+03 -7.3786860e+02 -2.3965214e+03 - -1.2671572e+03 -7.8391804e+02 -2.3949831e+03 - -1.2326779e+03 -8.2926089e+02 -2.3936562e+03 - -1.1970402e+03 -8.7383783e+02 -2.3925533e+03 - -1.1602684e+03 -9.1759372e+02 -2.3916847e+03 - -1.1223902e+03 -9.6047730e+02 -2.3910587e+03 - -1.0834364e+03 -1.0024410e+03 -2.3906807e+03 - -1.0434409e+03 -1.0434409e+03 -2.3905544e+03 - -1.0024410e+03 -1.0834364e+03 -2.3906807e+03 - -9.6047730e+02 -1.1223902e+03 -2.3910587e+03 - -9.1759372e+02 -1.1602684e+03 -2.3916847e+03 - -8.7383783e+02 -1.1970402e+03 -2.3925533e+03 - -8.2926089e+02 -1.2326779e+03 -2.3936562e+03 - -7.8391804e+02 -1.2671572e+03 -2.3949831e+03 - -7.3786860e+02 -1.3004566e+03 -2.3965214e+03 - -6.9117634e+02 -1.3325580e+03 -2.3982559e+03 - -6.4390983e+02 -1.3634464e+03 -2.4001690e+03 - -5.9614295e+02 -1.3931098e+03 -2.4022407e+03 - -5.4795540e+02 -1.4215398e+03 -2.4044485e+03 - -4.9943338e+02 -1.4487308e+03 -2.4067670e+03 - -4.5067047e+02 -1.4746809e+03 -2.4091685e+03 - -4.0176857e+02 -1.4993914e+03 -2.4116221e+03 - -3.5283921e+02 -1.5228671e+03 -2.4140943e+03 - -3.0400504e+02 -1.5451163e+03 -2.4165484e+03 - -2.5540172e+02 -1.5661510e+03 -2.4189446e+03 - -2.0718020e+02 -1.5859869e+03 -2.4212399e+03 - -1.5950953e+02 -1.6046433e+03 -2.4233878e+03 - -1.1258034e+02 -1.6221438e+03 -2.4253385e+03 - -6.6609043e+01 -1.6385157e+03 -2.4270386e+03 - -2.1842975e+01 -1.6537906e+03 -2.4284310e+03 - 2.1433364e+01 -1.6680040e+03 -2.4294558e+03 - 6.2890861e+01 -1.6811958e+03 -2.4300500e+03 - 1.0214700e+02 -1.6934096e+03 -2.4301486e+03 - 1.3875580e+02 -1.7046928e+03 -2.4296860e+03 - 1.7219670e+02 -1.7150961e+03 -2.4285985e+03 - 2.0186332e+02 -1.7246721e+03 -2.4268274e+03 - 2.2705352e+02 -1.7334743e+03 -2.4243242e+03 - 2.4696397e+02 -1.7415545e+03 -2.4210584e+03 - 2.6069419e+02 -1.7489596e+03 -2.4170277e+03 - 2.6726802e+02 -1.7557274e+03 -2.4122712e+03 - 2.6568366e+02 -1.7618808e+03 -2.4068862e+03 - 2.5500560e+02 -1.7674217e+03 -2.4010449e+03 - 2.3451020e+02 -1.7723250e+03 -2.3950090e+03 - 2.0388634e+02 -1.7765354e+03 -2.3891332e+03 - 1.6346902e+02 -1.7799701e+03 -2.3838495e+03 - 1.1444850e+02 -1.7825288e+03 -2.3796234e+03 - 5.8964974e+01 -1.7841130e+03 -2.3768826e+03 - 0.0000000e+00 -1.7846501e+03 -2.3759321e+03 - -5.8964974e+01 -1.7841130e+03 -2.3768826e+03 - -1.1444850e+02 -1.7825288e+03 -2.3796234e+03 - -1.6346902e+02 -1.7799701e+03 -2.3838495e+03 - -2.0388634e+02 -1.7765354e+03 -2.3891332e+03 - -2.3451020e+02 -1.7723250e+03 -2.3950090e+03 - -2.5500560e+02 -1.7674217e+03 -2.4010449e+03 - -2.6568366e+02 -1.7618808e+03 -2.4068862e+03 - -2.6726802e+02 -1.7557274e+03 -2.4122712e+03 - -2.6069419e+02 -1.7489596e+03 -2.4170277e+03 - -2.4696397e+02 -1.7415545e+03 -2.4210584e+03 - -2.2705352e+02 -1.7334743e+03 -2.4243242e+03 - -2.0186332e+02 -1.7246721e+03 -2.4268274e+03 - -1.7219670e+02 -1.7150961e+03 -2.4285985e+03 - -1.3875580e+02 -1.7046928e+03 -2.4296860e+03 - -1.0214700e+02 -1.6934096e+03 -2.4301486e+03 - -6.2890861e+01 -1.6811958e+03 -2.4300500e+03 - -2.1433364e+01 -1.6680040e+03 -2.4294558e+03 - 2.1842975e+01 -1.6537906e+03 -2.4284310e+03 - 6.6609043e+01 -1.6385157e+03 -2.4270386e+03 - 1.1258034e+02 -1.6221438e+03 -2.4253385e+03 - 1.5950953e+02 -1.6046433e+03 -2.4233878e+03 - 2.0718020e+02 -1.5859869e+03 -2.4212399e+03 - 2.5540172e+02 -1.5661510e+03 -2.4189446e+03 - 3.0400504e+02 -1.5451163e+03 -2.4165484e+03 - 3.5283921e+02 -1.5228671e+03 -2.4140943e+03 - 4.0176857e+02 -1.4993914e+03 -2.4116221e+03 - 4.5067047e+02 -1.4746809e+03 -2.4091685e+03 - 4.9943338e+02 -1.4487308e+03 -2.4067670e+03 - 5.4795540e+02 -1.4215398e+03 -2.4044485e+03 - 5.9614295e+02 -1.3931098e+03 -2.4022407e+03 - 6.4390983e+02 -1.3634464e+03 -2.4001690e+03 - 6.9117634e+02 -1.3325580e+03 -2.3982559e+03 - 7.3786860e+02 -1.3004566e+03 -2.3965214e+03 - 7.8391804e+02 -1.2671572e+03 -2.3949831e+03 - 8.2926089e+02 -1.2326779e+03 -2.3936562e+03 - 8.7383783e+02 -1.1970402e+03 -2.3925533e+03 - 9.1759372e+02 -1.1602684e+03 -2.3916847e+03 - 9.6047730e+02 -1.1223902e+03 -2.3910587e+03 - 1.0024410e+03 -1.0834364e+03 -2.3906807e+03 - 1.0434409e+03 -1.0434409e+03 -2.3905544e+03 - 1.0834364e+03 -1.0024410e+03 -2.3906807e+03 - 1.1223902e+03 -9.6047730e+02 -2.3910587e+03 - 1.1602684e+03 -9.1759372e+02 -2.3916847e+03 - 1.1970402e+03 -8.7383783e+02 -2.3925533e+03 - 1.2326779e+03 -8.2926089e+02 -2.3936562e+03 - 1.2671572e+03 -7.8391804e+02 -2.3949831e+03 - 1.3004566e+03 -7.3786860e+02 -2.3965214e+03 - 1.3325580e+03 -6.9117634e+02 -2.3982559e+03 - 1.3634464e+03 -6.4390983e+02 -2.4001690e+03 - 1.3931098e+03 -5.9614295e+02 -2.4022407e+03 - 1.4215398e+03 -5.4795540e+02 -2.4044485e+03 - 1.4487308e+03 -4.9943338e+02 -2.4067670e+03 - 1.4746809e+03 -4.5067047e+02 -2.4091685e+03 - 1.4993914e+03 -4.0176857e+02 -2.4116221e+03 - 1.5228671e+03 -3.5283921e+02 -2.4140943e+03 - 1.5451163e+03 -3.0400504e+02 -2.4165484e+03 - 1.5661510e+03 -2.5540172e+02 -2.4189446e+03 - 1.5859869e+03 -2.0718020e+02 -2.4212399e+03 - 1.6046433e+03 -1.5950953e+02 -2.4233878e+03 - 1.6221438e+03 -1.1258034e+02 -2.4253385e+03 - 1.6385157e+03 -6.6609043e+01 -2.4270386e+03 - 1.6537906e+03 -2.1842975e+01 -2.4284310e+03 - 1.6680040e+03 2.1433364e+01 -2.4294558e+03 - 1.6811958e+03 6.2890861e+01 -2.4300500e+03 - 1.6934096e+03 1.0214700e+02 -2.4301486e+03 - 1.7046928e+03 1.3875580e+02 -2.4296860e+03 - 1.7150961e+03 1.7219670e+02 -2.4285985e+03 - 1.7246721e+03 2.0186332e+02 -2.4268274e+03 - 1.7334743e+03 2.2705352e+02 -2.4243242e+03 - 1.7415545e+03 2.4696397e+02 -2.4210584e+03 - 1.7489596e+03 2.6069419e+02 -2.4170277e+03 - 1.7557274e+03 2.6726802e+02 -2.4122712e+03 - 1.7618808e+03 2.6568366e+02 -2.4068862e+03 - 1.7674217e+03 2.5500560e+02 -2.4010449e+03 - 1.7723250e+03 2.3451020e+02 -2.3950090e+03 - 1.7765354e+03 2.0388634e+02 -2.3891332e+03 - 1.7799701e+03 1.6346902e+02 -2.3838495e+03 - 1.7825288e+03 1.1444850e+02 -2.3796234e+03 - 1.7841130e+03 5.8964974e+01 -2.3768826e+03 - 1.7846501e+03 -4.8134273e-09 -2.3759321e+03 - 1.6762959e+03 4.8134273e-09 -2.4666521e+03 - 1.6758624e+03 -5.6869316e+01 -2.4674640e+03 - 1.6745750e+03 -1.1070314e+02 -2.4698150e+03 - 1.6724698e+03 -1.5886158e+02 -2.4734707e+03 - 1.6695952e+03 -1.9938150e+02 -2.4780964e+03 - 1.6659998e+03 -2.3108454e+02 -2.4833190e+03 - 1.6617222e+03 -2.5352549e+02 -2.4887815e+03 - 1.6567847e+03 -2.6684090e+02 -2.4941795e+03 - 1.6511918e+03 -2.7156480e+02 -2.4992774e+03 - 1.6449318e+03 -2.6845965e+02 -2.5039101e+03 - 1.6379797e+03 -2.5838541e+02 -2.5079745e+03 - 1.6303012e+03 -2.4221051e+02 -2.5114175e+03 - 1.6218560e+03 -2.2075840e+02 -2.5142241e+03 - 1.6126006e+03 -1.9478028e+02 -2.5164061e+03 - 1.6024907e+03 -1.6494489e+02 -2.5179938e+03 - 1.5914825e+03 -1.3183879e+02 -2.5190288e+03 - 1.5795341e+03 -9.5971992e+01 -2.5195596e+03 - 1.5666062e+03 -5.7786183e+01 -2.5196380e+03 - 1.5526623e+03 -1.7663532e+01 -2.5193168e+03 - 1.5376692e+03 2.4064769e+01 -2.5186483e+03 - 1.5215973e+03 6.7110771e+01 -2.5176832e+03 - 1.5044201e+03 1.1122301e+02 -2.5164701e+03 - 1.4861151e+03 1.5618071e+02 -2.5150552e+03 - 1.4666628e+03 2.0178893e+02 -2.5134820e+03 - 1.4460475e+03 2.4787449e+02 -2.5117911e+03 - 1.4242567e+03 2.9428261e+02 -2.5100206e+03 - 1.4012814e+03 3.4087412e+02 -2.5082058e+03 - 1.3771156e+03 3.8752318e+02 -2.5063794e+03 - 1.3517570e+03 4.3411541e+02 -2.5045713e+03 - 1.3252060e+03 4.8054634e+02 -2.5028092e+03 - 1.2974666e+03 5.2672009e+02 -2.5011181e+03 - 1.2685457e+03 5.7254842e+02 -2.4995208e+03 - 1.2384533e+03 6.1794979e+02 -2.4980377e+03 - 1.2072027e+03 6.6284867e+02 -2.4966870e+03 - 1.1748100e+03 7.0717501e+02 -2.4954845e+03 - 1.1412946e+03 7.5086368e+02 -2.4944440e+03 - 1.1066787e+03 7.9385416e+02 -2.4935769e+03 - 1.0709879e+03 8.3609014e+02 -2.4928928e+03 - 1.0342507e+03 8.7751933e+02 -2.4923990e+03 - 9.9649866e+02 9.1809319e+02 -2.4921006e+03 - 9.5776679e+02 9.5776679e+02 -2.4920008e+03 - 9.1809319e+02 9.9649866e+02 -2.4921006e+03 - 8.7751933e+02 1.0342507e+03 -2.4923990e+03 - 8.3609014e+02 1.0709879e+03 -2.4928928e+03 - 7.9385416e+02 1.1066787e+03 -2.4935769e+03 - 7.5086368e+02 1.1412946e+03 -2.4944440e+03 - 7.0717501e+02 1.1748100e+03 -2.4954845e+03 - 6.6284867e+02 1.2072027e+03 -2.4966870e+03 - 6.1794979e+02 1.2384533e+03 -2.4980377e+03 - 5.7254842e+02 1.2685457e+03 -2.4995208e+03 - 5.2672009e+02 1.2974666e+03 -2.5011181e+03 - 4.8054634e+02 1.3252060e+03 -2.5028092e+03 - 4.3411541e+02 1.3517570e+03 -2.5045713e+03 - 3.8752318e+02 1.3771156e+03 -2.5063794e+03 - 3.4087412e+02 1.4012814e+03 -2.5082058e+03 - 2.9428261e+02 1.4242567e+03 -2.5100206e+03 - 2.4787449e+02 1.4460475e+03 -2.5117911e+03 - 2.0178893e+02 1.4666628e+03 -2.5134820e+03 - 1.5618071e+02 1.4861151e+03 -2.5150552e+03 - 1.1122301e+02 1.5044201e+03 -2.5164701e+03 - 6.7110771e+01 1.5215973e+03 -2.5176832e+03 - 2.4064769e+01 1.5376692e+03 -2.5186483e+03 - -1.7663532e+01 1.5526623e+03 -2.5193168e+03 - -5.7786183e+01 1.5666062e+03 -2.5196380e+03 - -9.5971992e+01 1.5795341e+03 -2.5195596e+03 - -1.3183879e+02 1.5914825e+03 -2.5190288e+03 - -1.6494489e+02 1.6024907e+03 -2.5179938e+03 - -1.9478028e+02 1.6126006e+03 -2.5164061e+03 - -2.2075840e+02 1.6218560e+03 -2.5142241e+03 - -2.4221051e+02 1.6303012e+03 -2.5114175e+03 - -2.5838541e+02 1.6379797e+03 -2.5079745e+03 - -2.6845965e+02 1.6449318e+03 -2.5039101e+03 - -2.7156480e+02 1.6511918e+03 -2.4992774e+03 - -2.6684090e+02 1.6567847e+03 -2.4941795e+03 - -2.5352549e+02 1.6617222e+03 -2.4887815e+03 - -2.3108454e+02 1.6659998e+03 -2.4833190e+03 - -1.9938150e+02 1.6695952e+03 -2.4780964e+03 - -1.5886158e+02 1.6724698e+03 -2.4734707e+03 - -1.1070314e+02 1.6745750e+03 -2.4698150e+03 - -5.6869316e+01 1.6758624e+03 -2.4674640e+03 - 0.0000000e+00 1.6762959e+03 -2.4666521e+03 - 5.6869316e+01 1.6758624e+03 -2.4674640e+03 - 1.1070314e+02 1.6745750e+03 -2.4698150e+03 - 1.5886158e+02 1.6724698e+03 -2.4734707e+03 - 1.9938150e+02 1.6695952e+03 -2.4780964e+03 - 2.3108454e+02 1.6659998e+03 -2.4833190e+03 - 2.5352549e+02 1.6617222e+03 -2.4887815e+03 - 2.6684090e+02 1.6567847e+03 -2.4941795e+03 - 2.7156480e+02 1.6511918e+03 -2.4992774e+03 - 2.6845965e+02 1.6449318e+03 -2.5039101e+03 - 2.5838541e+02 1.6379797e+03 -2.5079745e+03 - 2.4221051e+02 1.6303012e+03 -2.5114175e+03 - 2.2075840e+02 1.6218560e+03 -2.5142241e+03 - 1.9478028e+02 1.6126006e+03 -2.5164061e+03 - 1.6494489e+02 1.6024907e+03 -2.5179938e+03 - 1.3183879e+02 1.5914825e+03 -2.5190288e+03 - 9.5971992e+01 1.5795341e+03 -2.5195596e+03 - 5.7786183e+01 1.5666062e+03 -2.5196380e+03 - 1.7663532e+01 1.5526623e+03 -2.5193168e+03 - -2.4064769e+01 1.5376692e+03 -2.5186483e+03 - -6.7110771e+01 1.5215973e+03 -2.5176832e+03 - -1.1122301e+02 1.5044201e+03 -2.5164701e+03 - -1.5618071e+02 1.4861151e+03 -2.5150552e+03 - -2.0178893e+02 1.4666628e+03 -2.5134820e+03 - -2.4787449e+02 1.4460475e+03 -2.5117911e+03 - -2.9428261e+02 1.4242567e+03 -2.5100206e+03 - -3.4087412e+02 1.4012814e+03 -2.5082058e+03 - -3.8752318e+02 1.3771156e+03 -2.5063794e+03 - -4.3411541e+02 1.3517570e+03 -2.5045713e+03 - -4.8054634e+02 1.3252060e+03 -2.5028092e+03 - -5.2672009e+02 1.2974666e+03 -2.5011181e+03 - -5.7254842e+02 1.2685457e+03 -2.4995208e+03 - -6.1794979e+02 1.2384533e+03 -2.4980377e+03 - -6.6284867e+02 1.2072027e+03 -2.4966870e+03 - -7.0717501e+02 1.1748100e+03 -2.4954845e+03 - -7.5086368e+02 1.1412946e+03 -2.4944440e+03 - -7.9385416e+02 1.1066787e+03 -2.4935769e+03 - -8.3609014e+02 1.0709879e+03 -2.4928928e+03 - -8.7751933e+02 1.0342507e+03 -2.4923990e+03 - -9.1809319e+02 9.9649866e+02 -2.4921006e+03 - -9.5776679e+02 9.5776679e+02 -2.4920008e+03 - -9.9649866e+02 9.1809319e+02 -2.4921006e+03 - -1.0342507e+03 8.7751933e+02 -2.4923990e+03 - -1.0709879e+03 8.3609014e+02 -2.4928928e+03 - -1.1066787e+03 7.9385416e+02 -2.4935769e+03 - -1.1412946e+03 7.5086368e+02 -2.4944440e+03 - -1.1748100e+03 7.0717501e+02 -2.4954845e+03 - -1.2072027e+03 6.6284867e+02 -2.4966870e+03 - -1.2384533e+03 6.1794979e+02 -2.4980377e+03 - -1.2685457e+03 5.7254842e+02 -2.4995208e+03 - -1.2974666e+03 5.2672009e+02 -2.5011181e+03 - -1.3252060e+03 4.8054634e+02 -2.5028092e+03 - -1.3517570e+03 4.3411541e+02 -2.5045713e+03 - -1.3771156e+03 3.8752318e+02 -2.5063794e+03 - -1.4012814e+03 3.4087412e+02 -2.5082058e+03 - -1.4242567e+03 2.9428261e+02 -2.5100206e+03 - -1.4460475e+03 2.4787449e+02 -2.5117911e+03 - -1.4666628e+03 2.0178893e+02 -2.5134820e+03 - -1.4861151e+03 1.5618071e+02 -2.5150552e+03 - -1.5044201e+03 1.1122301e+02 -2.5164701e+03 - -1.5215973e+03 6.7110771e+01 -2.5176832e+03 - -1.5376692e+03 2.4064769e+01 -2.5186483e+03 - -1.5526623e+03 -1.7663532e+01 -2.5193168e+03 - -1.5666062e+03 -5.7786183e+01 -2.5196380e+03 - -1.5795341e+03 -9.5971992e+01 -2.5195596e+03 - -1.5914825e+03 -1.3183879e+02 -2.5190288e+03 - -1.6024907e+03 -1.6494489e+02 -2.5179938e+03 - -1.6126006e+03 -1.9478028e+02 -2.5164061e+03 - -1.6218560e+03 -2.2075840e+02 -2.5142241e+03 - -1.6303012e+03 -2.4221051e+02 -2.5114175e+03 - -1.6379797e+03 -2.5838541e+02 -2.5079745e+03 - -1.6449318e+03 -2.6845965e+02 -2.5039101e+03 - -1.6511918e+03 -2.7156480e+02 -2.4992774e+03 - -1.6567847e+03 -2.6684090e+02 -2.4941795e+03 - -1.6617222e+03 -2.5352549e+02 -2.4887815e+03 - -1.6659998e+03 -2.3108454e+02 -2.4833190e+03 - -1.6695952e+03 -1.9938150e+02 -2.4780964e+03 - -1.6724698e+03 -1.5886158e+02 -2.4734707e+03 - -1.6745750e+03 -1.1070314e+02 -2.4698150e+03 - -1.6758624e+03 -5.6869316e+01 -2.4674640e+03 - -1.6762959e+03 2.4067136e-09 -2.4666521e+03 - -1.6758624e+03 5.6869316e+01 -2.4674640e+03 - -1.6745750e+03 1.1070314e+02 -2.4698150e+03 - -1.6724698e+03 1.5886158e+02 -2.4734707e+03 - -1.6695952e+03 1.9938150e+02 -2.4780964e+03 - -1.6659998e+03 2.3108454e+02 -2.4833190e+03 - -1.6617222e+03 2.5352549e+02 -2.4887815e+03 - -1.6567847e+03 2.6684090e+02 -2.4941795e+03 - -1.6511918e+03 2.7156480e+02 -2.4992774e+03 - -1.6449318e+03 2.6845965e+02 -2.5039101e+03 - -1.6379797e+03 2.5838541e+02 -2.5079745e+03 - -1.6303012e+03 2.4221051e+02 -2.5114175e+03 - -1.6218560e+03 2.2075840e+02 -2.5142241e+03 - -1.6126006e+03 1.9478028e+02 -2.5164061e+03 - -1.6024907e+03 1.6494489e+02 -2.5179938e+03 - -1.5914825e+03 1.3183879e+02 -2.5190288e+03 - -1.5795341e+03 9.5971992e+01 -2.5195596e+03 - -1.5666062e+03 5.7786183e+01 -2.5196380e+03 - -1.5526623e+03 1.7663532e+01 -2.5193168e+03 - -1.5376692e+03 -2.4064769e+01 -2.5186483e+03 - -1.5215973e+03 -6.7110771e+01 -2.5176832e+03 - -1.5044201e+03 -1.1122301e+02 -2.5164701e+03 - -1.4861151e+03 -1.5618071e+02 -2.5150552e+03 - -1.4666628e+03 -2.0178893e+02 -2.5134820e+03 - -1.4460475e+03 -2.4787449e+02 -2.5117911e+03 - -1.4242567e+03 -2.9428261e+02 -2.5100206e+03 - -1.4012814e+03 -3.4087412e+02 -2.5082058e+03 - -1.3771156e+03 -3.8752318e+02 -2.5063794e+03 - -1.3517570e+03 -4.3411541e+02 -2.5045713e+03 - -1.3252060e+03 -4.8054634e+02 -2.5028092e+03 - -1.2974666e+03 -5.2672009e+02 -2.5011181e+03 - -1.2685457e+03 -5.7254842e+02 -2.4995208e+03 - -1.2384533e+03 -6.1794979e+02 -2.4980377e+03 - -1.2072027e+03 -6.6284867e+02 -2.4966870e+03 - -1.1748100e+03 -7.0717501e+02 -2.4954845e+03 - -1.1412946e+03 -7.5086368e+02 -2.4944440e+03 - -1.1066787e+03 -7.9385416e+02 -2.4935769e+03 - -1.0709879e+03 -8.3609014e+02 -2.4928928e+03 - -1.0342507e+03 -8.7751933e+02 -2.4923990e+03 - -9.9649866e+02 -9.1809319e+02 -2.4921006e+03 - -9.5776679e+02 -9.5776679e+02 -2.4920008e+03 - -9.1809319e+02 -9.9649866e+02 -2.4921006e+03 - -8.7751933e+02 -1.0342507e+03 -2.4923990e+03 - -8.3609014e+02 -1.0709879e+03 -2.4928928e+03 - -7.9385416e+02 -1.1066787e+03 -2.4935769e+03 - -7.5086368e+02 -1.1412946e+03 -2.4944440e+03 - -7.0717501e+02 -1.1748100e+03 -2.4954845e+03 - -6.6284867e+02 -1.2072027e+03 -2.4966870e+03 - -6.1794979e+02 -1.2384533e+03 -2.4980377e+03 - -5.7254842e+02 -1.2685457e+03 -2.4995208e+03 - -5.2672009e+02 -1.2974666e+03 -2.5011181e+03 - -4.8054634e+02 -1.3252060e+03 -2.5028092e+03 - -4.3411541e+02 -1.3517570e+03 -2.5045713e+03 - -3.8752318e+02 -1.3771156e+03 -2.5063794e+03 - -3.4087412e+02 -1.4012814e+03 -2.5082058e+03 - -2.9428261e+02 -1.4242567e+03 -2.5100206e+03 - -2.4787449e+02 -1.4460475e+03 -2.5117911e+03 - -2.0178893e+02 -1.4666628e+03 -2.5134820e+03 - -1.5618071e+02 -1.4861151e+03 -2.5150552e+03 - -1.1122301e+02 -1.5044201e+03 -2.5164701e+03 - -6.7110771e+01 -1.5215973e+03 -2.5176832e+03 - -2.4064769e+01 -1.5376692e+03 -2.5186483e+03 - 1.7663532e+01 -1.5526623e+03 -2.5193168e+03 - 5.7786183e+01 -1.5666062e+03 -2.5196380e+03 - 9.5971992e+01 -1.5795341e+03 -2.5195596e+03 - 1.3183879e+02 -1.5914825e+03 -2.5190288e+03 - 1.6494489e+02 -1.6024907e+03 -2.5179938e+03 - 1.9478028e+02 -1.6126006e+03 -2.5164061e+03 - 2.2075840e+02 -1.6218560e+03 -2.5142241e+03 - 2.4221051e+02 -1.6303012e+03 -2.5114175e+03 - 2.5838541e+02 -1.6379797e+03 -2.5079745e+03 - 2.6845965e+02 -1.6449318e+03 -2.5039101e+03 - 2.7156480e+02 -1.6511918e+03 -2.4992774e+03 - 2.6684090e+02 -1.6567847e+03 -2.4941795e+03 - 2.5352549e+02 -1.6617222e+03 -2.4887815e+03 - 2.3108454e+02 -1.6659998e+03 -2.4833190e+03 - 1.9938150e+02 -1.6695952e+03 -2.4780964e+03 - 1.5886158e+02 -1.6724698e+03 -2.4734707e+03 - 1.1070314e+02 -1.6745750e+03 -2.4698150e+03 - 5.6869316e+01 -1.6758624e+03 -2.4674640e+03 - 0.0000000e+00 -1.6762959e+03 -2.4666521e+03 - -5.6869316e+01 -1.6758624e+03 -2.4674640e+03 - -1.1070314e+02 -1.6745750e+03 -2.4698150e+03 - -1.5886158e+02 -1.6724698e+03 -2.4734707e+03 - -1.9938150e+02 -1.6695952e+03 -2.4780964e+03 - -2.3108454e+02 -1.6659998e+03 -2.4833190e+03 - -2.5352549e+02 -1.6617222e+03 -2.4887815e+03 - -2.6684090e+02 -1.6567847e+03 -2.4941795e+03 - -2.7156480e+02 -1.6511918e+03 -2.4992774e+03 - -2.6845965e+02 -1.6449318e+03 -2.5039101e+03 - -2.5838541e+02 -1.6379797e+03 -2.5079745e+03 - -2.4221051e+02 -1.6303012e+03 -2.5114175e+03 - -2.2075840e+02 -1.6218560e+03 -2.5142241e+03 - -1.9478028e+02 -1.6126006e+03 -2.5164061e+03 - -1.6494489e+02 -1.6024907e+03 -2.5179938e+03 - -1.3183879e+02 -1.5914825e+03 -2.5190288e+03 - -9.5971992e+01 -1.5795341e+03 -2.5195596e+03 - -5.7786183e+01 -1.5666062e+03 -2.5196380e+03 - -1.7663532e+01 -1.5526623e+03 -2.5193168e+03 - 2.4064769e+01 -1.5376692e+03 -2.5186483e+03 - 6.7110771e+01 -1.5215973e+03 -2.5176832e+03 - 1.1122301e+02 -1.5044201e+03 -2.5164701e+03 - 1.5618071e+02 -1.4861151e+03 -2.5150552e+03 - 2.0178893e+02 -1.4666628e+03 -2.5134820e+03 - 2.4787449e+02 -1.4460475e+03 -2.5117911e+03 - 2.9428261e+02 -1.4242567e+03 -2.5100206e+03 - 3.4087412e+02 -1.4012814e+03 -2.5082058e+03 - 3.8752318e+02 -1.3771156e+03 -2.5063794e+03 - 4.3411541e+02 -1.3517570e+03 -2.5045713e+03 - 4.8054634e+02 -1.3252060e+03 -2.5028092e+03 - 5.2672009e+02 -1.2974666e+03 -2.5011181e+03 - 5.7254842e+02 -1.2685457e+03 -2.4995208e+03 - 6.1794979e+02 -1.2384533e+03 -2.4980377e+03 - 6.6284867e+02 -1.2072027e+03 -2.4966870e+03 - 7.0717501e+02 -1.1748100e+03 -2.4954845e+03 - 7.5086368e+02 -1.1412946e+03 -2.4944440e+03 - 7.9385416e+02 -1.1066787e+03 -2.4935769e+03 - 8.3609014e+02 -1.0709879e+03 -2.4928928e+03 - 8.7751933e+02 -1.0342507e+03 -2.4923990e+03 - 9.1809319e+02 -9.9649866e+02 -2.4921006e+03 - 9.5776679e+02 -9.5776679e+02 -2.4920008e+03 - 9.9649866e+02 -9.1809319e+02 -2.4921006e+03 - 1.0342507e+03 -8.7751933e+02 -2.4923990e+03 - 1.0709879e+03 -8.3609014e+02 -2.4928928e+03 - 1.1066787e+03 -7.9385416e+02 -2.4935769e+03 - 1.1412946e+03 -7.5086368e+02 -2.4944440e+03 - 1.1748100e+03 -7.0717501e+02 -2.4954845e+03 - 1.2072027e+03 -6.6284867e+02 -2.4966870e+03 - 1.2384533e+03 -6.1794979e+02 -2.4980377e+03 - 1.2685457e+03 -5.7254842e+02 -2.4995208e+03 - 1.2974666e+03 -5.2672009e+02 -2.5011181e+03 - 1.3252060e+03 -4.8054634e+02 -2.5028092e+03 - 1.3517570e+03 -4.3411541e+02 -2.5045713e+03 - 1.3771156e+03 -3.8752318e+02 -2.5063794e+03 - 1.4012814e+03 -3.4087412e+02 -2.5082058e+03 - 1.4242567e+03 -2.9428261e+02 -2.5100206e+03 - 1.4460475e+03 -2.4787449e+02 -2.5117911e+03 - 1.4666628e+03 -2.0178893e+02 -2.5134820e+03 - 1.4861151e+03 -1.5618071e+02 -2.5150552e+03 - 1.5044201e+03 -1.1122301e+02 -2.5164701e+03 - 1.5215973e+03 -6.7110771e+01 -2.5176832e+03 - 1.5376692e+03 -2.4064769e+01 -2.5186483e+03 - 1.5526623e+03 1.7663532e+01 -2.5193168e+03 - 1.5666062e+03 5.7786183e+01 -2.5196380e+03 - 1.5795341e+03 9.5971992e+01 -2.5195596e+03 - 1.5914825e+03 1.3183879e+02 -2.5190288e+03 - 1.6024907e+03 1.6494489e+02 -2.5179938e+03 - 1.6126006e+03 1.9478028e+02 -2.5164061e+03 - 1.6218560e+03 2.2075840e+02 -2.5142241e+03 - 1.6303012e+03 2.4221051e+02 -2.5114175e+03 - 1.6379797e+03 2.5838541e+02 -2.5079745e+03 - 1.6449318e+03 2.6845965e+02 -2.5039101e+03 - 1.6511918e+03 2.7156480e+02 -2.4992774e+03 - 1.6567847e+03 2.6684090e+02 -2.4941795e+03 - 1.6617222e+03 2.5352549e+02 -2.4887815e+03 - 1.6659998e+03 2.3108454e+02 -2.4833190e+03 - 1.6695952e+03 1.9938150e+02 -2.4780964e+03 - 1.6724698e+03 1.5886158e+02 -2.4734707e+03 - 1.6745750e+03 1.1070314e+02 -2.4698150e+03 - 1.6758624e+03 5.6869316e+01 -2.4674640e+03 - 1.6762959e+03 -2.4067136e-09 -2.4666521e+03 - 1.5668330e+03 2.4067136e-09 -2.5547041e+03 - 1.5664812e+03 -5.5205557e+01 -2.5554069e+03 - 1.5654301e+03 -1.0773626e+02 -2.5574495e+03 - 1.5636905e+03 -1.5523608e+02 -2.5606487e+03 - 1.5612760e+03 -1.9590193e+02 -2.5647393e+03 - 1.5581977e+03 -2.2858630e+02 -2.5694193e+03 - 1.5544602e+03 -2.5277334e+02 -2.5743925e+03 - 1.5500592e+03 -2.6846904e+02 -2.5793978e+03 - 1.5449811e+03 -2.7605558e+02 -2.5842251e+03 - 1.5392035e+03 -2.7614955e+02 -2.5887195e+03 - 1.5326974e+03 -2.6948572e+02 -2.5927770e+03 - 1.5254290e+03 -2.5683311e+02 -2.5963363e+03 - 1.5173619e+03 -2.3894077e+02 -2.5993700e+03 - 1.5084583e+03 -2.1650686e+02 -2.6018759e+03 - 1.4986806e+03 -1.9016409e+02 -2.6038695e+03 - 1.4879921e+03 -1.6047567e+02 -2.6053785e+03 - 1.4763582e+03 -1.2793751e+02 -2.6064382e+03 - 1.4637462e+03 -9.2983562e+01 -2.6070883e+03 - 1.4501262e+03 -5.5992597e+01 -2.6073709e+03 - 1.4354709e+03 -1.7295229e+01 -2.6073287e+03 - 1.4197561e+03 2.2819419e+01 -2.6070036e+03 - 1.4029605e+03 6.4097679e+01 -2.6064367e+03 - 1.3850658e+03 1.0631605e+02 -2.6056672e+03 - 1.3660566e+03 1.4927663e+02 -2.6047325e+03 - 1.3459207e+03 1.9280328e+02 -2.6036679e+03 - 1.3246490e+03 2.3673837e+02 -2.6025065e+03 - 1.3022351e+03 2.8094008e+02 -2.6012792e+03 - 1.2786759e+03 3.2528011e+02 -2.6000148e+03 - 1.2539710e+03 3.6964186e+02 -2.5987398e+03 - 1.2281233e+03 4.1391884e+02 -2.5974786e+03 - 1.2011383e+03 4.5801341e+02 -2.5962536e+03 - 1.1730247e+03 5.0183568e+02 -2.5950851e+03 - 1.1437939e+03 5.4530270e+02 -2.5939912e+03 - 1.1134606e+03 5.8833765e+02 -2.5929881e+03 - 1.0820420e+03 6.3086930e+02 -2.5920902e+03 - 1.0495587e+03 6.7283148e+02 -2.5913098e+03 - 1.0160338e+03 7.1416270e+02 -2.5906571e+03 - 9.8149394e+02 7.5480576e+02 -2.5901407e+03 - 9.4596839e+02 7.9470753e+02 -2.5897672e+03 - 9.0948967e+02 8.3381867e+02 -2.5895412e+03 - 8.7209346e+02 8.7209346e+02 -2.5894656e+03 - 8.3381867e+02 9.0948967e+02 -2.5895412e+03 - 7.9470753e+02 9.4596839e+02 -2.5897672e+03 - 7.5480576e+02 9.8149394e+02 -2.5901407e+03 - 7.1416270e+02 1.0160338e+03 -2.5906571e+03 - 6.7283148e+02 1.0495587e+03 -2.5913098e+03 - 6.3086930e+02 1.0820420e+03 -2.5920902e+03 - 5.8833765e+02 1.1134606e+03 -2.5929881e+03 - 5.4530270e+02 1.1437939e+03 -2.5939912e+03 - 5.0183568e+02 1.1730247e+03 -2.5950851e+03 - 4.5801341e+02 1.2011383e+03 -2.5962536e+03 - 4.1391884e+02 1.2281233e+03 -2.5974786e+03 - 3.6964186e+02 1.2539710e+03 -2.5987398e+03 - 3.2528011e+02 1.2786759e+03 -2.6000148e+03 - 2.8094008e+02 1.3022351e+03 -2.6012792e+03 - 2.3673837e+02 1.3246490e+03 -2.6025065e+03 - 1.9280328e+02 1.3459207e+03 -2.6036679e+03 - 1.4927663e+02 1.3660566e+03 -2.6047325e+03 - 1.0631605e+02 1.3850658e+03 -2.6056672e+03 - 6.4097679e+01 1.4029605e+03 -2.6064367e+03 - 2.2819419e+01 1.4197561e+03 -2.6070036e+03 - -1.7295229e+01 1.4354709e+03 -2.6073287e+03 - -5.5992597e+01 1.4501262e+03 -2.6073709e+03 - -9.2983562e+01 1.4637462e+03 -2.6070883e+03 - -1.2793751e+02 1.4763582e+03 -2.6064382e+03 - -1.6047567e+02 1.4879921e+03 -2.6053785e+03 - -1.9016409e+02 1.4986806e+03 -2.6038695e+03 - -2.1650686e+02 1.5084583e+03 -2.6018759e+03 - -2.3894077e+02 1.5173619e+03 -2.5993700e+03 - -2.5683311e+02 1.5254290e+03 -2.5963363e+03 - -2.6948572e+02 1.5326974e+03 -2.5927770e+03 - -2.7614955e+02 1.5392035e+03 -2.5887195e+03 - -2.7605558e+02 1.5449811e+03 -2.5842251e+03 - -2.6846904e+02 1.5500592e+03 -2.5793978e+03 - -2.5277334e+02 1.5544602e+03 -2.5743925e+03 - -2.2858630e+02 1.5581977e+03 -2.5694193e+03 - -1.9590193e+02 1.5612760e+03 -2.5647393e+03 - -1.5523608e+02 1.5636905e+03 -2.5606487e+03 - -1.0773626e+02 1.5654301e+03 -2.5574495e+03 - -5.5205557e+01 1.5664812e+03 -2.5554069e+03 - 9.6268545e-09 1.5668330e+03 -2.5547041e+03 - 5.5205557e+01 1.5664812e+03 -2.5554069e+03 - 1.0773626e+02 1.5654301e+03 -2.5574495e+03 - 1.5523608e+02 1.5636905e+03 -2.5606487e+03 - 1.9590193e+02 1.5612760e+03 -2.5647393e+03 - 2.2858630e+02 1.5581977e+03 -2.5694193e+03 - 2.5277334e+02 1.5544602e+03 -2.5743925e+03 - 2.6846904e+02 1.5500592e+03 -2.5793978e+03 - 2.7605558e+02 1.5449811e+03 -2.5842251e+03 - 2.7614955e+02 1.5392035e+03 -2.5887195e+03 - 2.6948572e+02 1.5326974e+03 -2.5927770e+03 - 2.5683311e+02 1.5254290e+03 -2.5963363e+03 - 2.3894077e+02 1.5173619e+03 -2.5993700e+03 - 2.1650686e+02 1.5084583e+03 -2.6018759e+03 - 1.9016409e+02 1.4986806e+03 -2.6038695e+03 - 1.6047567e+02 1.4879921e+03 -2.6053785e+03 - 1.2793751e+02 1.4763582e+03 -2.6064382e+03 - 9.2983562e+01 1.4637462e+03 -2.6070883e+03 - 5.5992597e+01 1.4501262e+03 -2.6073709e+03 - 1.7295229e+01 1.4354709e+03 -2.6073287e+03 - -2.2819419e+01 1.4197561e+03 -2.6070036e+03 - -6.4097679e+01 1.4029605e+03 -2.6064367e+03 - -1.0631605e+02 1.3850658e+03 -2.6056672e+03 - -1.4927663e+02 1.3660566e+03 -2.6047325e+03 - -1.9280328e+02 1.3459207e+03 -2.6036679e+03 - -2.3673837e+02 1.3246490e+03 -2.6025065e+03 - -2.8094008e+02 1.3022351e+03 -2.6012792e+03 - -3.2528011e+02 1.2786759e+03 -2.6000148e+03 - -3.6964186e+02 1.2539710e+03 -2.5987398e+03 - -4.1391884e+02 1.2281233e+03 -2.5974786e+03 - -4.5801341e+02 1.2011383e+03 -2.5962536e+03 - -5.0183568e+02 1.1730247e+03 -2.5950851e+03 - -5.4530270e+02 1.1437939e+03 -2.5939912e+03 - -5.8833765e+02 1.1134606e+03 -2.5929881e+03 - -6.3086930e+02 1.0820420e+03 -2.5920902e+03 - -6.7283148e+02 1.0495587e+03 -2.5913098e+03 - -7.1416270e+02 1.0160338e+03 -2.5906571e+03 - -7.5480576e+02 9.8149394e+02 -2.5901407e+03 - -7.9470753e+02 9.4596839e+02 -2.5897672e+03 - -8.3381867e+02 9.0948967e+02 -2.5895412e+03 - -8.7209346e+02 8.7209346e+02 -2.5894656e+03 - -9.0948967e+02 8.3381867e+02 -2.5895412e+03 - -9.4596839e+02 7.9470753e+02 -2.5897672e+03 - -9.8149394e+02 7.5480576e+02 -2.5901407e+03 - -1.0160338e+03 7.1416270e+02 -2.5906571e+03 - -1.0495587e+03 6.7283148e+02 -2.5913098e+03 - -1.0820420e+03 6.3086930e+02 -2.5920902e+03 - -1.1134606e+03 5.8833765e+02 -2.5929881e+03 - -1.1437939e+03 5.4530270e+02 -2.5939912e+03 - -1.1730247e+03 5.0183568e+02 -2.5950851e+03 - -1.2011383e+03 4.5801341e+02 -2.5962536e+03 - -1.2281233e+03 4.1391884e+02 -2.5974786e+03 - -1.2539710e+03 3.6964186e+02 -2.5987398e+03 - -1.2786759e+03 3.2528011e+02 -2.6000148e+03 - -1.3022351e+03 2.8094008e+02 -2.6012792e+03 - -1.3246490e+03 2.3673837e+02 -2.6025065e+03 - -1.3459207e+03 1.9280328e+02 -2.6036679e+03 - -1.3660566e+03 1.4927663e+02 -2.6047325e+03 - -1.3850658e+03 1.0631605e+02 -2.6056672e+03 - -1.4029605e+03 6.4097679e+01 -2.6064367e+03 - -1.4197561e+03 2.2819419e+01 -2.6070036e+03 - -1.4354709e+03 -1.7295229e+01 -2.6073287e+03 - -1.4501262e+03 -5.5992597e+01 -2.6073709e+03 - -1.4637462e+03 -9.2983562e+01 -2.6070883e+03 - -1.4763582e+03 -1.2793751e+02 -2.6064382e+03 - -1.4879921e+03 -1.6047567e+02 -2.6053785e+03 - -1.4986806e+03 -1.9016409e+02 -2.6038695e+03 - -1.5084583e+03 -2.1650686e+02 -2.6018759e+03 - -1.5173619e+03 -2.3894077e+02 -2.5993700e+03 - -1.5254290e+03 -2.5683311e+02 -2.5963363e+03 - -1.5326974e+03 -2.6948572e+02 -2.5927770e+03 - -1.5392035e+03 -2.7614955e+02 -2.5887195e+03 - -1.5449811e+03 -2.7605558e+02 -2.5842251e+03 - -1.5500592e+03 -2.6846904e+02 -2.5793978e+03 - -1.5544602e+03 -2.5277334e+02 -2.5743925e+03 - -1.5581977e+03 -2.2858630e+02 -2.5694193e+03 - -1.5612760e+03 -1.9590193e+02 -2.5647393e+03 - -1.5636905e+03 -1.5523608e+02 -2.5606487e+03 - -1.5654301e+03 -1.0773626e+02 -2.5574495e+03 - -1.5664812e+03 -5.5205557e+01 -2.5554069e+03 - -1.5668330e+03 -2.4067136e-09 -2.5547041e+03 - -1.5664812e+03 5.5205557e+01 -2.5554069e+03 - -1.5654301e+03 1.0773626e+02 -2.5574495e+03 - -1.5636905e+03 1.5523608e+02 -2.5606487e+03 - -1.5612760e+03 1.9590193e+02 -2.5647393e+03 - -1.5581977e+03 2.2858630e+02 -2.5694193e+03 - -1.5544602e+03 2.5277334e+02 -2.5743925e+03 - -1.5500592e+03 2.6846904e+02 -2.5793978e+03 - -1.5449811e+03 2.7605558e+02 -2.5842251e+03 - -1.5392035e+03 2.7614955e+02 -2.5887195e+03 - -1.5326974e+03 2.6948572e+02 -2.5927770e+03 - -1.5254290e+03 2.5683311e+02 -2.5963363e+03 - -1.5173619e+03 2.3894077e+02 -2.5993700e+03 - -1.5084583e+03 2.1650686e+02 -2.6018759e+03 - -1.4986806e+03 1.9016409e+02 -2.6038695e+03 - -1.4879921e+03 1.6047567e+02 -2.6053785e+03 - -1.4763582e+03 1.2793751e+02 -2.6064382e+03 - -1.4637462e+03 9.2983562e+01 -2.6070883e+03 - -1.4501262e+03 5.5992597e+01 -2.6073709e+03 - -1.4354709e+03 1.7295229e+01 -2.6073287e+03 - -1.4197561e+03 -2.2819419e+01 -2.6070036e+03 - -1.4029605e+03 -6.4097679e+01 -2.6064367e+03 - -1.3850658e+03 -1.0631605e+02 -2.6056672e+03 - -1.3660566e+03 -1.4927663e+02 -2.6047325e+03 - -1.3459207e+03 -1.9280328e+02 -2.6036679e+03 - -1.3246490e+03 -2.3673837e+02 -2.6025065e+03 - -1.3022351e+03 -2.8094008e+02 -2.6012792e+03 - -1.2786759e+03 -3.2528011e+02 -2.6000148e+03 - -1.2539710e+03 -3.6964186e+02 -2.5987398e+03 - -1.2281233e+03 -4.1391884e+02 -2.5974786e+03 - -1.2011383e+03 -4.5801341e+02 -2.5962536e+03 - -1.1730247e+03 -5.0183568e+02 -2.5950851e+03 - -1.1437939e+03 -5.4530270e+02 -2.5939912e+03 - -1.1134606e+03 -5.8833765e+02 -2.5929881e+03 - -1.0820420e+03 -6.3086930e+02 -2.5920902e+03 - -1.0495587e+03 -6.7283148e+02 -2.5913098e+03 - -1.0160338e+03 -7.1416270e+02 -2.5906571e+03 - -9.8149394e+02 -7.5480576e+02 -2.5901407e+03 - -9.4596839e+02 -7.9470753e+02 -2.5897672e+03 - -9.0948967e+02 -8.3381867e+02 -2.5895412e+03 - -8.7209346e+02 -8.7209346e+02 -2.5894656e+03 - -8.3381867e+02 -9.0948967e+02 -2.5895412e+03 - -7.9470753e+02 -9.4596839e+02 -2.5897672e+03 - -7.5480576e+02 -9.8149394e+02 -2.5901407e+03 - -7.1416270e+02 -1.0160338e+03 -2.5906571e+03 - -6.7283148e+02 -1.0495587e+03 -2.5913098e+03 - -6.3086930e+02 -1.0820420e+03 -2.5920902e+03 - -5.8833765e+02 -1.1134606e+03 -2.5929881e+03 - -5.4530270e+02 -1.1437939e+03 -2.5939912e+03 - -5.0183568e+02 -1.1730247e+03 -2.5950851e+03 - -4.5801341e+02 -1.2011383e+03 -2.5962536e+03 - -4.1391884e+02 -1.2281233e+03 -2.5974786e+03 - -3.6964186e+02 -1.2539710e+03 -2.5987398e+03 - -3.2528011e+02 -1.2786759e+03 -2.6000148e+03 - -2.8094008e+02 -1.3022351e+03 -2.6012792e+03 - -2.3673837e+02 -1.3246490e+03 -2.6025065e+03 - -1.9280328e+02 -1.3459207e+03 -2.6036679e+03 - -1.4927663e+02 -1.3660566e+03 -2.6047325e+03 - -1.0631605e+02 -1.3850658e+03 -2.6056672e+03 - -6.4097679e+01 -1.4029605e+03 -2.6064367e+03 - -2.2819419e+01 -1.4197561e+03 -2.6070036e+03 - 1.7295229e+01 -1.4354709e+03 -2.6073287e+03 - 5.5992597e+01 -1.4501262e+03 -2.6073709e+03 - 9.2983562e+01 -1.4637462e+03 -2.6070883e+03 - 1.2793751e+02 -1.4763582e+03 -2.6064382e+03 - 1.6047567e+02 -1.4879921e+03 -2.6053785e+03 - 1.9016409e+02 -1.4986806e+03 -2.6038695e+03 - 2.1650686e+02 -1.5084583e+03 -2.6018759e+03 - 2.3894077e+02 -1.5173619e+03 -2.5993700e+03 - 2.5683311e+02 -1.5254290e+03 -2.5963363e+03 - 2.6948572e+02 -1.5326974e+03 -2.5927770e+03 - 2.7614955e+02 -1.5392035e+03 -2.5887195e+03 - 2.7605558e+02 -1.5449811e+03 -2.5842251e+03 - 2.6846904e+02 -1.5500592e+03 -2.5793978e+03 - 2.5277334e+02 -1.5544602e+03 -2.5743925e+03 - 2.2858630e+02 -1.5581977e+03 -2.5694193e+03 - 1.9590193e+02 -1.5612760e+03 -2.5647393e+03 - 1.5523608e+02 -1.5636905e+03 -2.5606487e+03 - 1.0773626e+02 -1.5654301e+03 -2.5574495e+03 - 5.5205557e+01 -1.5664812e+03 -2.5554069e+03 - 2.4067136e-09 -1.5668330e+03 -2.5547041e+03 - -5.5205557e+01 -1.5664812e+03 -2.5554069e+03 - -1.0773626e+02 -1.5654301e+03 -2.5574495e+03 - -1.5523608e+02 -1.5636905e+03 -2.5606487e+03 - -1.9590193e+02 -1.5612760e+03 -2.5647393e+03 - -2.2858630e+02 -1.5581977e+03 -2.5694193e+03 - -2.5277334e+02 -1.5544602e+03 -2.5743925e+03 - -2.6846904e+02 -1.5500592e+03 -2.5793978e+03 - -2.7605558e+02 -1.5449811e+03 -2.5842251e+03 - -2.7614955e+02 -1.5392035e+03 -2.5887195e+03 - -2.6948572e+02 -1.5326974e+03 -2.5927770e+03 - -2.5683311e+02 -1.5254290e+03 -2.5963363e+03 - -2.3894077e+02 -1.5173619e+03 -2.5993700e+03 - -2.1650686e+02 -1.5084583e+03 -2.6018759e+03 - -1.9016409e+02 -1.4986806e+03 -2.6038695e+03 - -1.6047567e+02 -1.4879921e+03 -2.6053785e+03 - -1.2793751e+02 -1.4763582e+03 -2.6064382e+03 - -9.2983562e+01 -1.4637462e+03 -2.6070883e+03 - -5.5992597e+01 -1.4501262e+03 -2.6073709e+03 - -1.7295229e+01 -1.4354709e+03 -2.6073287e+03 - 2.2819419e+01 -1.4197561e+03 -2.6070036e+03 - 6.4097679e+01 -1.4029605e+03 -2.6064367e+03 - 1.0631605e+02 -1.3850658e+03 -2.6056672e+03 - 1.4927663e+02 -1.3660566e+03 -2.6047325e+03 - 1.9280328e+02 -1.3459207e+03 -2.6036679e+03 - 2.3673837e+02 -1.3246490e+03 -2.6025065e+03 - 2.8094008e+02 -1.3022351e+03 -2.6012792e+03 - 3.2528011e+02 -1.2786759e+03 -2.6000148e+03 - 3.6964186e+02 -1.2539710e+03 -2.5987398e+03 - 4.1391884e+02 -1.2281233e+03 -2.5974786e+03 - 4.5801341e+02 -1.2011383e+03 -2.5962536e+03 - 5.0183568e+02 -1.1730247e+03 -2.5950851e+03 - 5.4530270e+02 -1.1437939e+03 -2.5939912e+03 - 5.8833765e+02 -1.1134606e+03 -2.5929881e+03 - 6.3086930e+02 -1.0820420e+03 -2.5920902e+03 - 6.7283148e+02 -1.0495587e+03 -2.5913098e+03 - 7.1416270e+02 -1.0160338e+03 -2.5906571e+03 - 7.5480576e+02 -9.8149394e+02 -2.5901407e+03 - 7.9470753e+02 -9.4596839e+02 -2.5897672e+03 - 8.3381867e+02 -9.0948967e+02 -2.5895412e+03 - 8.7209346e+02 -8.7209346e+02 -2.5894656e+03 - 9.0948967e+02 -8.3381867e+02 -2.5895412e+03 - 9.4596839e+02 -7.9470753e+02 -2.5897672e+03 - 9.8149394e+02 -7.5480576e+02 -2.5901407e+03 - 1.0160338e+03 -7.1416270e+02 -2.5906571e+03 - 1.0495587e+03 -6.7283148e+02 -2.5913098e+03 - 1.0820420e+03 -6.3086930e+02 -2.5920902e+03 - 1.1134606e+03 -5.8833765e+02 -2.5929881e+03 - 1.1437939e+03 -5.4530270e+02 -2.5939912e+03 - 1.1730247e+03 -5.0183568e+02 -2.5950851e+03 - 1.2011383e+03 -4.5801341e+02 -2.5962536e+03 - 1.2281233e+03 -4.1391884e+02 -2.5974786e+03 - 1.2539710e+03 -3.6964186e+02 -2.5987398e+03 - 1.2786759e+03 -3.2528011e+02 -2.6000148e+03 - 1.3022351e+03 -2.8094008e+02 -2.6012792e+03 - 1.3246490e+03 -2.3673837e+02 -2.6025065e+03 - 1.3459207e+03 -1.9280328e+02 -2.6036679e+03 - 1.3660566e+03 -1.4927663e+02 -2.6047325e+03 - 1.3850658e+03 -1.0631605e+02 -2.6056672e+03 - 1.4029605e+03 -6.4097679e+01 -2.6064367e+03 - 1.4197561e+03 -2.2819419e+01 -2.6070036e+03 - 1.4354709e+03 1.7295229e+01 -2.6073287e+03 - 1.4501262e+03 5.5992597e+01 -2.6073709e+03 - 1.4637462e+03 9.2983562e+01 -2.6070883e+03 - 1.4763582e+03 1.2793751e+02 -2.6064382e+03 - 1.4879921e+03 1.6047567e+02 -2.6053785e+03 - 1.4986806e+03 1.9016409e+02 -2.6038695e+03 - 1.5084583e+03 2.1650686e+02 -2.6018759e+03 - 1.5173619e+03 2.3894077e+02 -2.5993700e+03 - 1.5254290e+03 2.5683311e+02 -2.5963363e+03 - 1.5326974e+03 2.6948572e+02 -2.5927770e+03 - 1.5392035e+03 2.7614955e+02 -2.5887195e+03 - 1.5449811e+03 2.7605558e+02 -2.5842251e+03 - 1.5500592e+03 2.6846904e+02 -2.5793978e+03 - 1.5544602e+03 2.5277334e+02 -2.5743925e+03 - 1.5581977e+03 2.2858630e+02 -2.5694193e+03 - 1.5612760e+03 1.9590193e+02 -2.5647393e+03 - 1.5636905e+03 1.5523608e+02 -2.5606487e+03 - 1.5654301e+03 1.0773626e+02 -2.5574495e+03 - 1.5664812e+03 5.5205557e+01 -2.5554069e+03 - 1.5668330e+03 -9.6268545e-09 -2.5547041e+03 - 1.4566362e+03 2.4067136e-09 -2.6398384e+03 - 1.4563502e+03 -5.3877160e+01 -2.6404537e+03 - 1.4554904e+03 -1.0537623e+02 -2.6422479e+03 - 1.4540503e+03 -1.5238015e+02 -2.6450758e+03 - 1.4520189e+03 -1.9322967e+02 -2.6487247e+03 - 1.4493802e+03 -2.2681879e+02 -2.6529485e+03 - 1.4461132e+03 -2.5258858e+02 -2.6574998e+03 - 1.4421923e+03 -2.7044755e+02 -2.6621546e+03 - 1.4375880e+03 -2.8065629e+02 -2.6667268e+03 - 1.4322680e+03 -2.8370877e+02 -2.6710732e+03 - 1.4261983e+03 -2.8023001e+02 -2.6750920e+03 - 1.4193440e+03 -2.7089840e+02 -2.6787178e+03 - 1.4116702e+03 -2.5639239e+02 -2.6819146e+03 - 1.4031429e+03 -2.3735770e+02 -2.6846698e+03 - 1.3937293e+03 -2.1438961e+02 -2.6869872e+03 - 1.3833985e+03 -1.8802571e+02 -2.6888831e+03 - 1.3721214e+03 -1.5874506e+02 -2.6903817e+03 - 1.3598714e+03 -1.2697119e+02 -2.6915125e+03 - 1.3466240e+03 -9.3076934e+01 -2.6923079e+03 - 1.3323574e+03 -5.7390042e+01 -2.6928019e+03 - 1.3170522e+03 -2.0198811e+01 -2.6930289e+03 - 1.3006917e+03 1.8242619e+01 -2.6930226e+03 - 1.2832618e+03 5.7709488e+01 -2.6928160e+03 - 1.2647511e+03 9.8002221e+01 -2.6924407e+03 - 1.2451508e+03 1.3894280e+02 -2.6919270e+03 - 1.2244548e+03 1.8037168e+02 -2.6913031e+03 - 1.2026597e+03 2.2214518e+02 -2.6905960e+03 - 1.1797648e+03 2.6413325e+02 -2.6898306e+03 - 1.1557723e+03 3.0621767e+02 -2.6890301e+03 - 1.1306868e+03 3.4829049e+02 -2.6882157e+03 - 1.1045158e+03 3.9025274e+02 -2.6874073e+03 - 1.0772696e+03 4.3201337e+02 -2.6866225e+03 - 1.0489613e+03 4.7348835e+02 -2.6858775e+03 - 1.0196066e+03 5.1459994e+02 -2.6851866e+03 - 9.8922410e+02 5.5527605e+02 -2.6845625e+03 - 9.5783533e+02 5.9544975e+02 -2.6840160e+03 - 9.2546458e+02 6.3505882e+02 -2.6835563e+03 - 8.9213909e+02 6.7404541e+02 -2.6831910e+03 - 8.5788908e+02 7.1235576e+02 -2.6829259e+03 - 8.2274777e+02 7.4993991e+02 -2.6827651e+03 - 7.8675154e+02 7.8675154e+02 -2.6827113e+03 - 7.4993991e+02 8.2274777e+02 -2.6827651e+03 - 7.1235576e+02 8.5788908e+02 -2.6829259e+03 - 6.7404541e+02 8.9213909e+02 -2.6831910e+03 - 6.3505882e+02 9.2546458e+02 -2.6835563e+03 - 5.9544975e+02 9.5783533e+02 -2.6840160e+03 - 5.5527605e+02 9.8922410e+02 -2.6845625e+03 - 5.1459994e+02 1.0196066e+03 -2.6851866e+03 - 4.7348835e+02 1.0489613e+03 -2.6858775e+03 - 4.3201337e+02 1.0772696e+03 -2.6866225e+03 - 3.9025274e+02 1.1045158e+03 -2.6874073e+03 - 3.4829049e+02 1.1306868e+03 -2.6882157e+03 - 3.0621767e+02 1.1557723e+03 -2.6890301e+03 - 2.6413325e+02 1.1797648e+03 -2.6898306e+03 - 2.2214518e+02 1.2026597e+03 -2.6905960e+03 - 1.8037168e+02 1.2244548e+03 -2.6913031e+03 - 1.3894280e+02 1.2451508e+03 -2.6919270e+03 - 9.8002221e+01 1.2647511e+03 -2.6924407e+03 - 5.7709488e+01 1.2832618e+03 -2.6928160e+03 - 1.8242619e+01 1.3006917e+03 -2.6930226e+03 - -2.0198811e+01 1.3170522e+03 -2.6930289e+03 - -5.7390042e+01 1.3323574e+03 -2.6928019e+03 - -9.3076934e+01 1.3466240e+03 -2.6923079e+03 - -1.2697119e+02 1.3598714e+03 -2.6915125e+03 - -1.5874506e+02 1.3721214e+03 -2.6903817e+03 - -1.8802571e+02 1.3833985e+03 -2.6888831e+03 - -2.1438961e+02 1.3937293e+03 -2.6869872e+03 - -2.3735770e+02 1.4031429e+03 -2.6846698e+03 - -2.5639239e+02 1.4116702e+03 -2.6819146e+03 - -2.7089840e+02 1.4193440e+03 -2.6787178e+03 - -2.8023001e+02 1.4261983e+03 -2.6750920e+03 - -2.8370877e+02 1.4322680e+03 -2.6710732e+03 - -2.8065629e+02 1.4375880e+03 -2.6667268e+03 - -2.7044755e+02 1.4421923e+03 -2.6621546e+03 - -2.5258858e+02 1.4461132e+03 -2.6574998e+03 - -2.2681879e+02 1.4493802e+03 -2.6529485e+03 - -1.9322967e+02 1.4520189e+03 -2.6487247e+03 - -1.5238015e+02 1.4540503e+03 -2.6450758e+03 - -1.0537623e+02 1.4554904e+03 -2.6422479e+03 - -5.3877160e+01 1.4563502e+03 -2.6404537e+03 - -7.2201409e-09 1.4566362e+03 -2.6398384e+03 - 5.3877160e+01 1.4563502e+03 -2.6404537e+03 - 1.0537623e+02 1.4554904e+03 -2.6422479e+03 - 1.5238015e+02 1.4540503e+03 -2.6450758e+03 - 1.9322967e+02 1.4520189e+03 -2.6487247e+03 - 2.2681879e+02 1.4493802e+03 -2.6529485e+03 - 2.5258858e+02 1.4461132e+03 -2.6574998e+03 - 2.7044755e+02 1.4421923e+03 -2.6621546e+03 - 2.8065629e+02 1.4375880e+03 -2.6667268e+03 - 2.8370877e+02 1.4322680e+03 -2.6710732e+03 - 2.8023001e+02 1.4261983e+03 -2.6750920e+03 - 2.7089840e+02 1.4193440e+03 -2.6787178e+03 - 2.5639239e+02 1.4116702e+03 -2.6819146e+03 - 2.3735770e+02 1.4031429e+03 -2.6846698e+03 - 2.1438961e+02 1.3937293e+03 -2.6869872e+03 - 1.8802571e+02 1.3833985e+03 -2.6888831e+03 - 1.5874506e+02 1.3721214e+03 -2.6903817e+03 - 1.2697119e+02 1.3598714e+03 -2.6915125e+03 - 9.3076934e+01 1.3466240e+03 -2.6923079e+03 - 5.7390042e+01 1.3323574e+03 -2.6928019e+03 - 2.0198811e+01 1.3170522e+03 -2.6930289e+03 - -1.8242619e+01 1.3006917e+03 -2.6930226e+03 - -5.7709488e+01 1.2832618e+03 -2.6928160e+03 - -9.8002221e+01 1.2647511e+03 -2.6924407e+03 - -1.3894280e+02 1.2451508e+03 -2.6919270e+03 - -1.8037168e+02 1.2244548e+03 -2.6913031e+03 - -2.2214518e+02 1.2026597e+03 -2.6905960e+03 - -2.6413325e+02 1.1797648e+03 -2.6898306e+03 - -3.0621767e+02 1.1557723e+03 -2.6890301e+03 - -3.4829049e+02 1.1306868e+03 -2.6882157e+03 - -3.9025274e+02 1.1045158e+03 -2.6874073e+03 - -4.3201337e+02 1.0772696e+03 -2.6866225e+03 - -4.7348835e+02 1.0489613e+03 -2.6858775e+03 - -5.1459994e+02 1.0196066e+03 -2.6851866e+03 - -5.5527605e+02 9.8922410e+02 -2.6845625e+03 - -5.9544975e+02 9.5783533e+02 -2.6840160e+03 - -6.3505882e+02 9.2546458e+02 -2.6835563e+03 - -6.7404541e+02 8.9213909e+02 -2.6831910e+03 - -7.1235576e+02 8.5788908e+02 -2.6829259e+03 - -7.4993991e+02 8.2274777e+02 -2.6827651e+03 - -7.8675154e+02 7.8675154e+02 -2.6827113e+03 - -8.2274777e+02 7.4993991e+02 -2.6827651e+03 - -8.5788908e+02 7.1235576e+02 -2.6829259e+03 - -8.9213909e+02 6.7404541e+02 -2.6831910e+03 - -9.2546458e+02 6.3505882e+02 -2.6835563e+03 - -9.5783533e+02 5.9544975e+02 -2.6840160e+03 - -9.8922410e+02 5.5527605e+02 -2.6845625e+03 - -1.0196066e+03 5.1459994e+02 -2.6851866e+03 - -1.0489613e+03 4.7348835e+02 -2.6858775e+03 - -1.0772696e+03 4.3201337e+02 -2.6866225e+03 - -1.1045158e+03 3.9025274e+02 -2.6874073e+03 - -1.1306868e+03 3.4829049e+02 -2.6882157e+03 - -1.1557723e+03 3.0621767e+02 -2.6890301e+03 - -1.1797648e+03 2.6413325e+02 -2.6898306e+03 - -1.2026597e+03 2.2214518e+02 -2.6905960e+03 - -1.2244548e+03 1.8037168e+02 -2.6913031e+03 - -1.2451508e+03 1.3894280e+02 -2.6919270e+03 - -1.2647511e+03 9.8002221e+01 -2.6924407e+03 - -1.2832618e+03 5.7709488e+01 -2.6928160e+03 - -1.3006917e+03 1.8242619e+01 -2.6930226e+03 - -1.3170522e+03 -2.0198811e+01 -2.6930289e+03 - -1.3323574e+03 -5.7390042e+01 -2.6928019e+03 - -1.3466240e+03 -9.3076934e+01 -2.6923079e+03 - -1.3598714e+03 -1.2697119e+02 -2.6915125e+03 - -1.3721214e+03 -1.5874506e+02 -2.6903817e+03 - -1.3833985e+03 -1.8802571e+02 -2.6888831e+03 - -1.3937293e+03 -2.1438961e+02 -2.6869872e+03 - -1.4031429e+03 -2.3735770e+02 -2.6846698e+03 - -1.4116702e+03 -2.5639239e+02 -2.6819146e+03 - -1.4193440e+03 -2.7089840e+02 -2.6787178e+03 - -1.4261983e+03 -2.8023001e+02 -2.6750920e+03 - -1.4322680e+03 -2.8370877e+02 -2.6710732e+03 - -1.4375880e+03 -2.8065629e+02 -2.6667268e+03 - -1.4421923e+03 -2.7044755e+02 -2.6621546e+03 - -1.4461132e+03 -2.5258858e+02 -2.6574998e+03 - -1.4493802e+03 -2.2681879e+02 -2.6529485e+03 - -1.4520189e+03 -1.9322967e+02 -2.6487247e+03 - -1.4540503e+03 -1.5238015e+02 -2.6450758e+03 - -1.4554904e+03 -1.0537623e+02 -2.6422479e+03 - -1.4563502e+03 -5.3877160e+01 -2.6404537e+03 - -1.4566362e+03 -9.6268545e-09 -2.6398384e+03 - -1.4563502e+03 5.3877160e+01 -2.6404537e+03 - -1.4554904e+03 1.0537623e+02 -2.6422479e+03 - -1.4540503e+03 1.5238015e+02 -2.6450758e+03 - -1.4520189e+03 1.9322967e+02 -2.6487247e+03 - -1.4493802e+03 2.2681879e+02 -2.6529485e+03 - -1.4461132e+03 2.5258858e+02 -2.6574998e+03 - -1.4421923e+03 2.7044755e+02 -2.6621546e+03 - -1.4375880e+03 2.8065629e+02 -2.6667268e+03 - -1.4322680e+03 2.8370877e+02 -2.6710732e+03 - -1.4261983e+03 2.8023001e+02 -2.6750920e+03 - -1.4193440e+03 2.7089840e+02 -2.6787178e+03 - -1.4116702e+03 2.5639239e+02 -2.6819146e+03 - -1.4031429e+03 2.3735770e+02 -2.6846698e+03 - -1.3937293e+03 2.1438961e+02 -2.6869872e+03 - -1.3833985e+03 1.8802571e+02 -2.6888831e+03 - -1.3721214e+03 1.5874506e+02 -2.6903817e+03 - -1.3598714e+03 1.2697119e+02 -2.6915125e+03 - -1.3466240e+03 9.3076934e+01 -2.6923079e+03 - -1.3323574e+03 5.7390042e+01 -2.6928019e+03 - -1.3170522e+03 2.0198811e+01 -2.6930289e+03 - -1.3006917e+03 -1.8242619e+01 -2.6930226e+03 - -1.2832618e+03 -5.7709488e+01 -2.6928160e+03 - -1.2647511e+03 -9.8002221e+01 -2.6924407e+03 - -1.2451508e+03 -1.3894280e+02 -2.6919270e+03 - -1.2244548e+03 -1.8037168e+02 -2.6913031e+03 - -1.2026597e+03 -2.2214518e+02 -2.6905960e+03 - -1.1797648e+03 -2.6413325e+02 -2.6898306e+03 - -1.1557723e+03 -3.0621767e+02 -2.6890301e+03 - -1.1306868e+03 -3.4829049e+02 -2.6882157e+03 - -1.1045158e+03 -3.9025274e+02 -2.6874073e+03 - -1.0772696e+03 -4.3201337e+02 -2.6866225e+03 - -1.0489613e+03 -4.7348835e+02 -2.6858775e+03 - -1.0196066e+03 -5.1459994e+02 -2.6851866e+03 - -9.8922410e+02 -5.5527605e+02 -2.6845625e+03 - -9.5783533e+02 -5.9544975e+02 -2.6840160e+03 - -9.2546458e+02 -6.3505882e+02 -2.6835563e+03 - -8.9213909e+02 -6.7404541e+02 -2.6831910e+03 - -8.5788908e+02 -7.1235576e+02 -2.6829259e+03 - -8.2274777e+02 -7.4993991e+02 -2.6827651e+03 - -7.8675154e+02 -7.8675154e+02 -2.6827113e+03 - -7.4993991e+02 -8.2274777e+02 -2.6827651e+03 - -7.1235576e+02 -8.5788908e+02 -2.6829259e+03 - -6.7404541e+02 -8.9213909e+02 -2.6831910e+03 - -6.3505882e+02 -9.2546458e+02 -2.6835563e+03 - -5.9544975e+02 -9.5783533e+02 -2.6840160e+03 - -5.5527605e+02 -9.8922410e+02 -2.6845625e+03 - -5.1459994e+02 -1.0196066e+03 -2.6851866e+03 - -4.7348835e+02 -1.0489613e+03 -2.6858775e+03 - -4.3201337e+02 -1.0772696e+03 -2.6866225e+03 - -3.9025274e+02 -1.1045158e+03 -2.6874073e+03 - -3.4829049e+02 -1.1306868e+03 -2.6882157e+03 - -3.0621767e+02 -1.1557723e+03 -2.6890301e+03 - -2.6413325e+02 -1.1797648e+03 -2.6898306e+03 - -2.2214518e+02 -1.2026597e+03 -2.6905960e+03 - -1.8037168e+02 -1.2244548e+03 -2.6913031e+03 - -1.3894280e+02 -1.2451508e+03 -2.6919270e+03 - -9.8002221e+01 -1.2647511e+03 -2.6924407e+03 - -5.7709488e+01 -1.2832618e+03 -2.6928160e+03 - -1.8242619e+01 -1.3006917e+03 -2.6930226e+03 - 2.0198811e+01 -1.3170522e+03 -2.6930289e+03 - 5.7390042e+01 -1.3323574e+03 -2.6928019e+03 - 9.3076934e+01 -1.3466240e+03 -2.6923079e+03 - 1.2697119e+02 -1.3598714e+03 -2.6915125e+03 - 1.5874506e+02 -1.3721214e+03 -2.6903817e+03 - 1.8802571e+02 -1.3833985e+03 -2.6888831e+03 - 2.1438961e+02 -1.3937293e+03 -2.6869872e+03 - 2.3735770e+02 -1.4031429e+03 -2.6846698e+03 - 2.5639239e+02 -1.4116702e+03 -2.6819146e+03 - 2.7089840e+02 -1.4193440e+03 -2.6787178e+03 - 2.8023001e+02 -1.4261983e+03 -2.6750920e+03 - 2.8370877e+02 -1.4322680e+03 -2.6710732e+03 - 2.8065629e+02 -1.4375880e+03 -2.6667268e+03 - 2.7044755e+02 -1.4421923e+03 -2.6621546e+03 - 2.5258858e+02 -1.4461132e+03 -2.6574998e+03 - 2.2681879e+02 -1.4493802e+03 -2.6529485e+03 - 1.9322967e+02 -1.4520189e+03 -2.6487247e+03 - 1.5238015e+02 -1.4540503e+03 -2.6450758e+03 - 1.0537623e+02 -1.4554904e+03 -2.6422479e+03 - 5.3877160e+01 -1.4563502e+03 -2.6404537e+03 - -2.4067136e-09 -1.4566362e+03 -2.6398384e+03 - -5.3877160e+01 -1.4563502e+03 -2.6404537e+03 - -1.0537623e+02 -1.4554904e+03 -2.6422479e+03 - -1.5238015e+02 -1.4540503e+03 -2.6450758e+03 - -1.9322967e+02 -1.4520189e+03 -2.6487247e+03 - -2.2681879e+02 -1.4493802e+03 -2.6529485e+03 - -2.5258858e+02 -1.4461132e+03 -2.6574998e+03 - -2.7044755e+02 -1.4421923e+03 -2.6621546e+03 - -2.8065629e+02 -1.4375880e+03 -2.6667268e+03 - -2.8370877e+02 -1.4322680e+03 -2.6710732e+03 - -2.8023001e+02 -1.4261983e+03 -2.6750920e+03 - -2.7089840e+02 -1.4193440e+03 -2.6787178e+03 - -2.5639239e+02 -1.4116702e+03 -2.6819146e+03 - -2.3735770e+02 -1.4031429e+03 -2.6846698e+03 - -2.1438961e+02 -1.3937293e+03 -2.6869872e+03 - -1.8802571e+02 -1.3833985e+03 -2.6888831e+03 - -1.5874506e+02 -1.3721214e+03 -2.6903817e+03 - -1.2697119e+02 -1.3598714e+03 -2.6915125e+03 - -9.3076934e+01 -1.3466240e+03 -2.6923079e+03 - -5.7390042e+01 -1.3323574e+03 -2.6928019e+03 - -2.0198811e+01 -1.3170522e+03 -2.6930289e+03 - 1.8242619e+01 -1.3006917e+03 -2.6930226e+03 - 5.7709488e+01 -1.2832618e+03 -2.6928160e+03 - 9.8002221e+01 -1.2647511e+03 -2.6924407e+03 - 1.3894280e+02 -1.2451508e+03 -2.6919270e+03 - 1.8037168e+02 -1.2244548e+03 -2.6913031e+03 - 2.2214518e+02 -1.2026597e+03 -2.6905960e+03 - 2.6413325e+02 -1.1797648e+03 -2.6898306e+03 - 3.0621767e+02 -1.1557723e+03 -2.6890301e+03 - 3.4829049e+02 -1.1306868e+03 -2.6882157e+03 - 3.9025274e+02 -1.1045158e+03 -2.6874073e+03 - 4.3201337e+02 -1.0772696e+03 -2.6866225e+03 - 4.7348835e+02 -1.0489613e+03 -2.6858775e+03 - 5.1459994e+02 -1.0196066e+03 -2.6851866e+03 - 5.5527605e+02 -9.8922410e+02 -2.6845625e+03 - 5.9544975e+02 -9.5783533e+02 -2.6840160e+03 - 6.3505882e+02 -9.2546458e+02 -2.6835563e+03 - 6.7404541e+02 -8.9213909e+02 -2.6831910e+03 - 7.1235576e+02 -8.5788908e+02 -2.6829259e+03 - 7.4993991e+02 -8.2274777e+02 -2.6827651e+03 - 7.8675154e+02 -7.8675154e+02 -2.6827113e+03 - 8.2274777e+02 -7.4993991e+02 -2.6827651e+03 - 8.5788908e+02 -7.1235576e+02 -2.6829259e+03 - 8.9213909e+02 -6.7404541e+02 -2.6831910e+03 - 9.2546458e+02 -6.3505882e+02 -2.6835563e+03 - 9.5783533e+02 -5.9544975e+02 -2.6840160e+03 - 9.8922410e+02 -5.5527605e+02 -2.6845625e+03 - 1.0196066e+03 -5.1459994e+02 -2.6851866e+03 - 1.0489613e+03 -4.7348835e+02 -2.6858775e+03 - 1.0772696e+03 -4.3201337e+02 -2.6866225e+03 - 1.1045158e+03 -3.9025274e+02 -2.6874073e+03 - 1.1306868e+03 -3.4829049e+02 -2.6882157e+03 - 1.1557723e+03 -3.0621767e+02 -2.6890301e+03 - 1.1797648e+03 -2.6413325e+02 -2.6898306e+03 - 1.2026597e+03 -2.2214518e+02 -2.6905960e+03 - 1.2244548e+03 -1.8037168e+02 -2.6913031e+03 - 1.2451508e+03 -1.3894280e+02 -2.6919270e+03 - 1.2647511e+03 -9.8002221e+01 -2.6924407e+03 - 1.2832618e+03 -5.7709488e+01 -2.6928160e+03 - 1.3006917e+03 -1.8242619e+01 -2.6930226e+03 - 1.3170522e+03 2.0198811e+01 -2.6930289e+03 - 1.3323574e+03 5.7390042e+01 -2.6928019e+03 - 1.3466240e+03 9.3076934e+01 -2.6923079e+03 - 1.3598714e+03 1.2697119e+02 -2.6915125e+03 - 1.3721214e+03 1.5874506e+02 -2.6903817e+03 - 1.3833985e+03 1.8802571e+02 -2.6888831e+03 - 1.3937293e+03 2.1438961e+02 -2.6869872e+03 - 1.4031429e+03 2.3735770e+02 -2.6846698e+03 - 1.4116702e+03 2.5639239e+02 -2.6819146e+03 - 1.4193440e+03 2.7089840e+02 -2.6787178e+03 - 1.4261983e+03 2.8023001e+02 -2.6750920e+03 - 1.4322680e+03 2.8370877e+02 -2.6710732e+03 - 1.4375880e+03 2.8065629e+02 -2.6667268e+03 - 1.4421923e+03 2.7044755e+02 -2.6621546e+03 - 1.4461132e+03 2.5258858e+02 -2.6574998e+03 - 1.4493802e+03 2.2681879e+02 -2.6529485e+03 - 1.4520189e+03 1.9322967e+02 -2.6487247e+03 - 1.4540503e+03 1.5238015e+02 -2.6450758e+03 - 1.4554904e+03 1.0537623e+02 -2.6422479e+03 - 1.4563502e+03 5.3877160e+01 -2.6404537e+03 - 1.4566362e+03 2.4067136e-09 -2.6398384e+03 - 1.3460906e+03 7.2201409e-09 -2.7218283e+03 - 1.3458586e+03 -5.2809301e+01 -2.7223722e+03 - 1.3451562e+03 -1.0348849e+02 -2.7239628e+03 - 1.3439652e+03 -1.5012397e+02 -2.7264838e+03 - 1.3422573e+03 -1.9118576e+02 -2.7297628e+03 - 1.3399969e+03 -2.2561490e+02 -2.7335976e+03 - 1.3371437e+03 -2.5282870e+02 -2.7377807e+03 - 1.3336553e+03 -2.7266325e+02 -2.7421199e+03 - 1.3294893e+03 -2.8528178e+02 -2.7464507e+03 - 1.3246041e+03 -2.9107533e+02 -2.7506420e+03 - 1.3189604e+03 -2.9057315e+02 -2.7545964e+03 - 1.3125210e+03 -2.8437166e+02 -2.7582469e+03 - 1.3052515e+03 -2.7308321e+02 -2.7615523e+03 - 1.2971201e+03 -2.5730257e+02 -2.7644921e+03 - 1.2880974e+03 -2.3758729e+02 -2.7670614e+03 - 1.2781567e+03 -2.1444788e+02 -2.7692670e+03 - 1.2672737e+03 -1.8834462e+02 -2.7711239e+03 - 1.2554265e+03 -1.5968850e+02 -2.7726528e+03 - 1.2425956e+03 -1.2884434e+02 -2.7738778e+03 - 1.2287637e+03 -9.6135085e+01 -2.7748254e+03 - 1.2139160e+03 -6.1846478e+01 -2.7755226e+03 - 1.1980400e+03 -2.6231595e+01 -2.7759971e+03 - 1.1811255e+03 1.0484889e+01 -2.7762759e+03 - 1.1631646e+03 4.8102876e+01 -2.7763854e+03 - 1.1441520e+03 8.6443478e+01 -2.7763510e+03 - 1.1240845e+03 1.2534610e+02 -2.7761967e+03 - 1.1029615e+03 1.6466595e+02 -2.7759453e+03 - 1.0807849e+03 2.0427190e+02 -2.7756183e+03 - 1.0575588e+03 2.4404468e+02 -2.7752356e+03 - 1.0332902e+03 2.8387539e+02 -2.7748158e+03 - 1.0079883e+03 3.2366420e+02 -2.7743757e+03 - 9.8166506e+02 3.6331928e+02 -2.7739310e+03 - 9.5433485e+02 4.0275591e+02 -2.7734956e+03 - 9.2601482e+02 4.4189574e+02 -2.7730820e+03 - 8.9672473e+02 4.8066612e+02 -2.7727014e+03 - 8.6648705e+02 5.1899961e+02 -2.7723631e+03 - 8.3532701e+02 5.5683355e+02 -2.7720754e+03 - 8.0327265e+02 5.9410965e+02 -2.7718448e+03 - 7.7035490e+02 6.3077370e+02 -2.7716764e+03 - 7.3660763e+02 6.6677532e+02 -2.7715739e+03 - 7.0206774e+02 7.0206774e+02 -2.7715394e+03 - 6.6677532e+02 7.3660763e+02 -2.7715739e+03 - 6.3077370e+02 7.7035490e+02 -2.7716764e+03 - 5.9410965e+02 8.0327265e+02 -2.7718448e+03 - 5.5683355e+02 8.3532701e+02 -2.7720754e+03 - 5.1899961e+02 8.6648705e+02 -2.7723631e+03 - 4.8066612e+02 8.9672473e+02 -2.7727014e+03 - 4.4189574e+02 9.2601482e+02 -2.7730820e+03 - 4.0275591e+02 9.5433485e+02 -2.7734956e+03 - 3.6331928e+02 9.8166506e+02 -2.7739310e+03 - 3.2366420e+02 1.0079883e+03 -2.7743757e+03 - 2.8387539e+02 1.0332902e+03 -2.7748158e+03 - 2.4404468e+02 1.0575588e+03 -2.7752356e+03 - 2.0427190e+02 1.0807849e+03 -2.7756183e+03 - 1.6466595e+02 1.1029615e+03 -2.7759453e+03 - 1.2534610e+02 1.1240845e+03 -2.7761967e+03 - 8.6443478e+01 1.1441520e+03 -2.7763510e+03 - 4.8102876e+01 1.1631646e+03 -2.7763854e+03 - 1.0484889e+01 1.1811255e+03 -2.7762759e+03 - -2.6231595e+01 1.1980400e+03 -2.7759971e+03 - -6.1846478e+01 1.2139160e+03 -2.7755226e+03 - -9.6135085e+01 1.2287637e+03 -2.7748254e+03 - -1.2884434e+02 1.2425956e+03 -2.7738778e+03 - -1.5968850e+02 1.2554265e+03 -2.7726528e+03 - -1.8834462e+02 1.2672737e+03 -2.7711239e+03 - -2.1444788e+02 1.2781567e+03 -2.7692670e+03 - -2.3758729e+02 1.2880974e+03 -2.7670614e+03 - -2.5730257e+02 1.2971201e+03 -2.7644921e+03 - -2.7308321e+02 1.3052515e+03 -2.7615523e+03 - -2.8437166e+02 1.3125210e+03 -2.7582469e+03 - -2.9057315e+02 1.3189604e+03 -2.7545964e+03 - -2.9107533e+02 1.3246041e+03 -2.7506420e+03 - -2.8528178e+02 1.3294893e+03 -2.7464507e+03 - -2.7266325e+02 1.3336553e+03 -2.7421199e+03 - -2.5282870e+02 1.3371437e+03 -2.7377807e+03 - -2.2561490e+02 1.3399969e+03 -2.7335976e+03 - -1.9118576e+02 1.3422573e+03 -2.7297628e+03 - -1.5012397e+02 1.3439652e+03 -2.7264838e+03 - -1.0348849e+02 1.3451562e+03 -2.7239628e+03 - -5.2809301e+01 1.3458586e+03 -2.7223722e+03 - -4.8134273e-09 1.3460906e+03 -2.7218283e+03 - 5.2809301e+01 1.3458586e+03 -2.7223722e+03 - 1.0348849e+02 1.3451562e+03 -2.7239628e+03 - 1.5012397e+02 1.3439652e+03 -2.7264838e+03 - 1.9118576e+02 1.3422573e+03 -2.7297628e+03 - 2.2561490e+02 1.3399969e+03 -2.7335976e+03 - 2.5282870e+02 1.3371437e+03 -2.7377807e+03 - 2.7266325e+02 1.3336553e+03 -2.7421199e+03 - 2.8528178e+02 1.3294893e+03 -2.7464507e+03 - 2.9107533e+02 1.3246041e+03 -2.7506420e+03 - 2.9057315e+02 1.3189604e+03 -2.7545964e+03 - 2.8437166e+02 1.3125210e+03 -2.7582469e+03 - 2.7308321e+02 1.3052515e+03 -2.7615523e+03 - 2.5730257e+02 1.2971201e+03 -2.7644921e+03 - 2.3758729e+02 1.2880974e+03 -2.7670614e+03 - 2.1444788e+02 1.2781567e+03 -2.7692670e+03 - 1.8834462e+02 1.2672737e+03 -2.7711239e+03 - 1.5968850e+02 1.2554265e+03 -2.7726528e+03 - 1.2884434e+02 1.2425956e+03 -2.7738778e+03 - 9.6135085e+01 1.2287637e+03 -2.7748254e+03 - 6.1846478e+01 1.2139160e+03 -2.7755226e+03 - 2.6231595e+01 1.1980400e+03 -2.7759971e+03 - -1.0484889e+01 1.1811255e+03 -2.7762759e+03 - -4.8102876e+01 1.1631646e+03 -2.7763854e+03 - -8.6443478e+01 1.1441520e+03 -2.7763510e+03 - -1.2534610e+02 1.1240845e+03 -2.7761967e+03 - -1.6466595e+02 1.1029615e+03 -2.7759453e+03 - -2.0427190e+02 1.0807849e+03 -2.7756183e+03 - -2.4404468e+02 1.0575588e+03 -2.7752356e+03 - -2.8387539e+02 1.0332902e+03 -2.7748158e+03 - -3.2366420e+02 1.0079883e+03 -2.7743757e+03 - -3.6331928e+02 9.8166506e+02 -2.7739310e+03 - -4.0275591e+02 9.5433485e+02 -2.7734956e+03 - -4.4189574e+02 9.2601482e+02 -2.7730820e+03 - -4.8066612e+02 8.9672473e+02 -2.7727014e+03 - -5.1899961e+02 8.6648705e+02 -2.7723631e+03 - -5.5683355e+02 8.3532701e+02 -2.7720754e+03 - -5.9410965e+02 8.0327265e+02 -2.7718448e+03 - -6.3077370e+02 7.7035490e+02 -2.7716764e+03 - -6.6677532e+02 7.3660763e+02 -2.7715739e+03 - -7.0206774e+02 7.0206774e+02 -2.7715394e+03 - -7.3660763e+02 6.6677532e+02 -2.7715739e+03 - -7.7035490e+02 6.3077370e+02 -2.7716764e+03 - -8.0327265e+02 5.9410965e+02 -2.7718448e+03 - -8.3532701e+02 5.5683355e+02 -2.7720754e+03 - -8.6648705e+02 5.1899961e+02 -2.7723631e+03 - -8.9672473e+02 4.8066612e+02 -2.7727014e+03 - -9.2601482e+02 4.4189574e+02 -2.7730820e+03 - -9.5433485e+02 4.0275591e+02 -2.7734956e+03 - -9.8166506e+02 3.6331928e+02 -2.7739310e+03 - -1.0079883e+03 3.2366420e+02 -2.7743757e+03 - -1.0332902e+03 2.8387539e+02 -2.7748158e+03 - -1.0575588e+03 2.4404468e+02 -2.7752356e+03 - -1.0807849e+03 2.0427190e+02 -2.7756183e+03 - -1.1029615e+03 1.6466595e+02 -2.7759453e+03 - -1.1240845e+03 1.2534610e+02 -2.7761967e+03 - -1.1441520e+03 8.6443478e+01 -2.7763510e+03 - -1.1631646e+03 4.8102876e+01 -2.7763854e+03 - -1.1811255e+03 1.0484889e+01 -2.7762759e+03 - -1.1980400e+03 -2.6231595e+01 -2.7759971e+03 - -1.2139160e+03 -6.1846478e+01 -2.7755226e+03 - -1.2287637e+03 -9.6135085e+01 -2.7748254e+03 - -1.2425956e+03 -1.2884434e+02 -2.7738778e+03 - -1.2554265e+03 -1.5968850e+02 -2.7726528e+03 - -1.2672737e+03 -1.8834462e+02 -2.7711239e+03 - -1.2781567e+03 -2.1444788e+02 -2.7692670e+03 - -1.2880974e+03 -2.3758729e+02 -2.7670614e+03 - -1.2971201e+03 -2.5730257e+02 -2.7644921e+03 - -1.3052515e+03 -2.7308321e+02 -2.7615523e+03 - -1.3125210e+03 -2.8437166e+02 -2.7582469e+03 - -1.3189604e+03 -2.9057315e+02 -2.7545964e+03 - -1.3246041e+03 -2.9107533e+02 -2.7506420e+03 - -1.3294893e+03 -2.8528178e+02 -2.7464507e+03 - -1.3336553e+03 -2.7266325e+02 -2.7421199e+03 - -1.3371437e+03 -2.5282870e+02 -2.7377807e+03 - -1.3399969e+03 -2.2561490e+02 -2.7335976e+03 - -1.3422573e+03 -1.9118576e+02 -2.7297628e+03 - -1.3439652e+03 -1.5012397e+02 -2.7264838e+03 - -1.3451562e+03 -1.0348849e+02 -2.7239628e+03 - -1.3458586e+03 -5.2809301e+01 -2.7223722e+03 - -1.3460906e+03 2.4067136e-09 -2.7218283e+03 - -1.3458586e+03 5.2809301e+01 -2.7223722e+03 - -1.3451562e+03 1.0348849e+02 -2.7239628e+03 - -1.3439652e+03 1.5012397e+02 -2.7264838e+03 - -1.3422573e+03 1.9118576e+02 -2.7297628e+03 - -1.3399969e+03 2.2561490e+02 -2.7335976e+03 - -1.3371437e+03 2.5282870e+02 -2.7377807e+03 - -1.3336553e+03 2.7266325e+02 -2.7421199e+03 - -1.3294893e+03 2.8528178e+02 -2.7464507e+03 - -1.3246041e+03 2.9107533e+02 -2.7506420e+03 - -1.3189604e+03 2.9057315e+02 -2.7545964e+03 - -1.3125210e+03 2.8437166e+02 -2.7582469e+03 - -1.3052515e+03 2.7308321e+02 -2.7615523e+03 - -1.2971201e+03 2.5730257e+02 -2.7644921e+03 - -1.2880974e+03 2.3758729e+02 -2.7670614e+03 - -1.2781567e+03 2.1444788e+02 -2.7692670e+03 - -1.2672737e+03 1.8834462e+02 -2.7711239e+03 - -1.2554265e+03 1.5968850e+02 -2.7726528e+03 - -1.2425956e+03 1.2884434e+02 -2.7738778e+03 - -1.2287637e+03 9.6135085e+01 -2.7748254e+03 - -1.2139160e+03 6.1846478e+01 -2.7755226e+03 - -1.1980400e+03 2.6231595e+01 -2.7759971e+03 - -1.1811255e+03 -1.0484889e+01 -2.7762759e+03 - -1.1631646e+03 -4.8102876e+01 -2.7763854e+03 - -1.1441520e+03 -8.6443478e+01 -2.7763510e+03 - -1.1240845e+03 -1.2534610e+02 -2.7761967e+03 - -1.1029615e+03 -1.6466595e+02 -2.7759453e+03 - -1.0807849e+03 -2.0427190e+02 -2.7756183e+03 - -1.0575588e+03 -2.4404468e+02 -2.7752356e+03 - -1.0332902e+03 -2.8387539e+02 -2.7748158e+03 - -1.0079883e+03 -3.2366420e+02 -2.7743757e+03 - -9.8166506e+02 -3.6331928e+02 -2.7739310e+03 - -9.5433485e+02 -4.0275591e+02 -2.7734956e+03 - -9.2601482e+02 -4.4189574e+02 -2.7730820e+03 - -8.9672473e+02 -4.8066612e+02 -2.7727014e+03 - -8.6648705e+02 -5.1899961e+02 -2.7723631e+03 - -8.3532701e+02 -5.5683355e+02 -2.7720754e+03 - -8.0327265e+02 -5.9410965e+02 -2.7718448e+03 - -7.7035490e+02 -6.3077370e+02 -2.7716764e+03 - -7.3660763e+02 -6.6677532e+02 -2.7715739e+03 - -7.0206774e+02 -7.0206774e+02 -2.7715394e+03 - -6.6677532e+02 -7.3660763e+02 -2.7715739e+03 - -6.3077370e+02 -7.7035490e+02 -2.7716764e+03 - -5.9410965e+02 -8.0327265e+02 -2.7718448e+03 - -5.5683355e+02 -8.3532701e+02 -2.7720754e+03 - -5.1899961e+02 -8.6648705e+02 -2.7723631e+03 - -4.8066612e+02 -8.9672473e+02 -2.7727014e+03 - -4.4189574e+02 -9.2601482e+02 -2.7730820e+03 - -4.0275591e+02 -9.5433485e+02 -2.7734956e+03 - -3.6331928e+02 -9.8166506e+02 -2.7739310e+03 - -3.2366420e+02 -1.0079883e+03 -2.7743757e+03 - -2.8387539e+02 -1.0332902e+03 -2.7748158e+03 - -2.4404468e+02 -1.0575588e+03 -2.7752356e+03 - -2.0427190e+02 -1.0807849e+03 -2.7756183e+03 - -1.6466595e+02 -1.1029615e+03 -2.7759453e+03 - -1.2534610e+02 -1.1240845e+03 -2.7761967e+03 - -8.6443478e+01 -1.1441520e+03 -2.7763510e+03 - -4.8102876e+01 -1.1631646e+03 -2.7763854e+03 - -1.0484889e+01 -1.1811255e+03 -2.7762759e+03 - 2.6231595e+01 -1.1980400e+03 -2.7759971e+03 - 6.1846478e+01 -1.2139160e+03 -2.7755226e+03 - 9.6135085e+01 -1.2287637e+03 -2.7748254e+03 - 1.2884434e+02 -1.2425956e+03 -2.7738778e+03 - 1.5968850e+02 -1.2554265e+03 -2.7726528e+03 - 1.8834462e+02 -1.2672737e+03 -2.7711239e+03 - 2.1444788e+02 -1.2781567e+03 -2.7692670e+03 - 2.3758729e+02 -1.2880974e+03 -2.7670614e+03 - 2.5730257e+02 -1.2971201e+03 -2.7644921e+03 - 2.7308321e+02 -1.3052515e+03 -2.7615523e+03 - 2.8437166e+02 -1.3125210e+03 -2.7582469e+03 - 2.9057315e+02 -1.3189604e+03 -2.7545964e+03 - 2.9107533e+02 -1.3246041e+03 -2.7506420e+03 - 2.8528178e+02 -1.3294893e+03 -2.7464507e+03 - 2.7266325e+02 -1.3336553e+03 -2.7421199e+03 - 2.5282870e+02 -1.3371437e+03 -2.7377807e+03 - 2.2561490e+02 -1.3399969e+03 -2.7335976e+03 - 1.9118576e+02 -1.3422573e+03 -2.7297628e+03 - 1.5012397e+02 -1.3439652e+03 -2.7264838e+03 - 1.0348849e+02 -1.3451562e+03 -2.7239628e+03 - 5.2809301e+01 -1.3458586e+03 -2.7223722e+03 - 2.4067136e-09 -1.3460906e+03 -2.7218283e+03 - -5.2809301e+01 -1.3458586e+03 -2.7223722e+03 - -1.0348849e+02 -1.3451562e+03 -2.7239628e+03 - -1.5012397e+02 -1.3439652e+03 -2.7264838e+03 - -1.9118576e+02 -1.3422573e+03 -2.7297628e+03 - -2.2561490e+02 -1.3399969e+03 -2.7335976e+03 - -2.5282870e+02 -1.3371437e+03 -2.7377807e+03 - -2.7266325e+02 -1.3336553e+03 -2.7421199e+03 - -2.8528178e+02 -1.3294893e+03 -2.7464507e+03 - -2.9107533e+02 -1.3246041e+03 -2.7506420e+03 - -2.9057315e+02 -1.3189604e+03 -2.7545964e+03 - -2.8437166e+02 -1.3125210e+03 -2.7582469e+03 - -2.7308321e+02 -1.3052515e+03 -2.7615523e+03 - -2.5730257e+02 -1.2971201e+03 -2.7644921e+03 - -2.3758729e+02 -1.2880974e+03 -2.7670614e+03 - -2.1444788e+02 -1.2781567e+03 -2.7692670e+03 - -1.8834462e+02 -1.2672737e+03 -2.7711239e+03 - -1.5968850e+02 -1.2554265e+03 -2.7726528e+03 - -1.2884434e+02 -1.2425956e+03 -2.7738778e+03 - -9.6135085e+01 -1.2287637e+03 -2.7748254e+03 - -6.1846478e+01 -1.2139160e+03 -2.7755226e+03 - -2.6231595e+01 -1.1980400e+03 -2.7759971e+03 - 1.0484889e+01 -1.1811255e+03 -2.7762759e+03 - 4.8102876e+01 -1.1631646e+03 -2.7763854e+03 - 8.6443478e+01 -1.1441520e+03 -2.7763510e+03 - 1.2534610e+02 -1.1240845e+03 -2.7761967e+03 - 1.6466595e+02 -1.1029615e+03 -2.7759453e+03 - 2.0427190e+02 -1.0807849e+03 -2.7756183e+03 - 2.4404468e+02 -1.0575588e+03 -2.7752356e+03 - 2.8387539e+02 -1.0332902e+03 -2.7748158e+03 - 3.2366420e+02 -1.0079883e+03 -2.7743757e+03 - 3.6331928e+02 -9.8166506e+02 -2.7739310e+03 - 4.0275591e+02 -9.5433485e+02 -2.7734956e+03 - 4.4189574e+02 -9.2601482e+02 -2.7730820e+03 - 4.8066612e+02 -8.9672473e+02 -2.7727014e+03 - 5.1899961e+02 -8.6648705e+02 -2.7723631e+03 - 5.5683355e+02 -8.3532701e+02 -2.7720754e+03 - 5.9410965e+02 -8.0327265e+02 -2.7718448e+03 - 6.3077370e+02 -7.7035490e+02 -2.7716764e+03 - 6.6677532e+02 -7.3660763e+02 -2.7715739e+03 - 7.0206774e+02 -7.0206774e+02 -2.7715394e+03 - 7.3660763e+02 -6.6677532e+02 -2.7715739e+03 - 7.7035490e+02 -6.3077370e+02 -2.7716764e+03 - 8.0327265e+02 -5.9410965e+02 -2.7718448e+03 - 8.3532701e+02 -5.5683355e+02 -2.7720754e+03 - 8.6648705e+02 -5.1899961e+02 -2.7723631e+03 - 8.9672473e+02 -4.8066612e+02 -2.7727014e+03 - 9.2601482e+02 -4.4189574e+02 -2.7730820e+03 - 9.5433485e+02 -4.0275591e+02 -2.7734956e+03 - 9.8166506e+02 -3.6331928e+02 -2.7739310e+03 - 1.0079883e+03 -3.2366420e+02 -2.7743757e+03 - 1.0332902e+03 -2.8387539e+02 -2.7748158e+03 - 1.0575588e+03 -2.4404468e+02 -2.7752356e+03 - 1.0807849e+03 -2.0427190e+02 -2.7756183e+03 - 1.1029615e+03 -1.6466595e+02 -2.7759453e+03 - 1.1240845e+03 -1.2534610e+02 -2.7761967e+03 - 1.1441520e+03 -8.6443478e+01 -2.7763510e+03 - 1.1631646e+03 -4.8102876e+01 -2.7763854e+03 - 1.1811255e+03 -1.0484889e+01 -2.7762759e+03 - 1.1980400e+03 2.6231595e+01 -2.7759971e+03 - 1.2139160e+03 6.1846478e+01 -2.7755226e+03 - 1.2287637e+03 9.6135085e+01 -2.7748254e+03 - 1.2425956e+03 1.2884434e+02 -2.7738778e+03 - 1.2554265e+03 1.5968850e+02 -2.7726528e+03 - 1.2672737e+03 1.8834462e+02 -2.7711239e+03 - 1.2781567e+03 2.1444788e+02 -2.7692670e+03 - 1.2880974e+03 2.3758729e+02 -2.7670614e+03 - 1.2971201e+03 2.5730257e+02 -2.7644921e+03 - 1.3052515e+03 2.7308321e+02 -2.7615523e+03 - 1.3125210e+03 2.8437166e+02 -2.7582469e+03 - 1.3189604e+03 2.9057315e+02 -2.7545964e+03 - 1.3246041e+03 2.9107533e+02 -2.7506420e+03 - 1.3294893e+03 2.8528178e+02 -2.7464507e+03 - 1.3336553e+03 2.7266325e+02 -2.7421199e+03 - 1.3371437e+03 2.5282870e+02 -2.7377807e+03 - 1.3399969e+03 2.2561490e+02 -2.7335976e+03 - 1.3422573e+03 1.9118576e+02 -2.7297628e+03 - 1.3439652e+03 1.5012397e+02 -2.7264838e+03 - 1.3451562e+03 1.0348849e+02 -2.7239628e+03 - 1.3458586e+03 5.2809301e+01 -2.7223722e+03 - 1.3460906e+03 4.8134273e-09 -2.7218283e+03 - 1.2355891e+03 2.4067136e-09 -2.8004709e+03 - 1.2354020e+03 -5.1942794e+01 -2.8009556e+03 - 1.2348312e+03 -1.0196546e+02 -2.8023767e+03 - 1.2338505e+03 -1.4832958e+02 -2.8046398e+03 - 1.2324196e+03 -1.8962141e+02 -2.8076044e+03 - 1.2304886e+03 -2.2483150e+02 -2.8111030e+03 - 1.2280032e+03 -2.5336706e+02 -2.8149608e+03 - 1.2249079e+03 -2.7501083e+02 -2.8190127e+03 - 1.2211494e+03 -2.8984813e+02 -2.8231134e+03 - 1.2166784e+03 -2.9818364e+02 -2.8271441e+03 - 1.2114503e+03 -3.0046334e+02 -2.8310126e+03 - 1.2054252e+03 -2.9720992e+02 -2.8346526e+03 - 1.1985682e+03 -2.8897439e+02 -2.8380198e+03 - 1.1908486e+03 -2.7630275e+02 -2.8410880e+03 - 1.1822393e+03 -2.5971515e+02 -2.8438457e+03 - 1.1727167e+03 -2.3969431e+02 -2.8462923e+03 - 1.1622604e+03 -2.1668044e+02 -2.8484351e+03 - 1.1508523e+03 -1.9107033e+02 -2.8502873e+03 - 1.1384771e+03 -1.6321914e+02 -2.8518661e+03 - 1.1251217e+03 -1.3344341e+02 -2.8531910e+03 - 1.1107752e+03 -1.0202481e+02 -2.8542831e+03 - 1.0954288e+03 -6.9214007e+01 -2.8551642e+03 - 1.0790761e+03 -3.5234405e+01 -2.8558560e+03 - 1.0617124e+03 -2.8556920e-01 -2.8563801e+03 - 1.0433355e+03 3.5453662e+01 -2.8567574e+03 - 1.0239453e+03 7.1822452e+01 -2.8570080e+03 - 1.0035436e+03 1.0867560e+02 -2.8571511e+03 - 9.8213473e+02 1.4588150e+02 -2.8572047e+03 - 9.5972512e+02 1.8332040e+02 -2.8571858e+03 - 9.3632350e+02 2.2088292e+02 -2.8571101e+03 - 9.1194096e+02 2.5846879e+02 -2.8569921e+03 - 8.8659094e+02 2.9598579e+02 -2.8568452e+03 - 8.6028932e+02 3.3334885e+02 -2.8566813e+03 - 8.3305442e+02 3.7047931e+02 -2.8565114e+03 - 8.0490711e+02 4.0730426e+02 -2.8563448e+03 - 7.7587080e+02 4.4375602e+02 -2.8561899e+03 - 7.4597156e+02 4.7977168e+02 -2.8560536e+03 - 7.1523814e+02 5.1529274e+02 -2.8559417e+03 - 6.8370209e+02 5.5026474e+02 -2.8558586e+03 - 6.5139780e+02 5.8463706e+02 -2.8558075e+03 - 6.1836264e+02 6.1836264e+02 -2.8557902e+03 - 5.8463706e+02 6.5139780e+02 -2.8558075e+03 - 5.5026474e+02 6.8370209e+02 -2.8558586e+03 - 5.1529274e+02 7.1523814e+02 -2.8559417e+03 - 4.7977168e+02 7.4597156e+02 -2.8560536e+03 - 4.4375602e+02 7.7587080e+02 -2.8561899e+03 - 4.0730426e+02 8.0490711e+02 -2.8563448e+03 - 3.7047931e+02 8.3305442e+02 -2.8565114e+03 - 3.3334885e+02 8.6028932e+02 -2.8566813e+03 - 2.9598579e+02 8.8659094e+02 -2.8568452e+03 - 2.5846879e+02 9.1194096e+02 -2.8569921e+03 - 2.2088292e+02 9.3632350e+02 -2.8571101e+03 - 1.8332040e+02 9.5972512e+02 -2.8571858e+03 - 1.4588150e+02 9.8213473e+02 -2.8572047e+03 - 1.0867560e+02 1.0035436e+03 -2.8571511e+03 - 7.1822452e+01 1.0239453e+03 -2.8570080e+03 - 3.5453662e+01 1.0433355e+03 -2.8567574e+03 - -2.8556920e-01 1.0617124e+03 -2.8563801e+03 - -3.5234405e+01 1.0790761e+03 -2.8558560e+03 - -6.9214007e+01 1.0954288e+03 -2.8551642e+03 - -1.0202481e+02 1.1107752e+03 -2.8542831e+03 - -1.3344341e+02 1.1251217e+03 -2.8531910e+03 - -1.6321914e+02 1.1384771e+03 -2.8518661e+03 - -1.9107033e+02 1.1508523e+03 -2.8502873e+03 - -2.1668044e+02 1.1622604e+03 -2.8484351e+03 - -2.3969431e+02 1.1727167e+03 -2.8462923e+03 - -2.5971515e+02 1.1822393e+03 -2.8438457e+03 - -2.7630275e+02 1.1908486e+03 -2.8410880e+03 - -2.8897439e+02 1.1985682e+03 -2.8380198e+03 - -2.9720992e+02 1.2054252e+03 -2.8346526e+03 - -3.0046334e+02 1.2114503e+03 -2.8310126e+03 - -2.9818364e+02 1.2166784e+03 -2.8271441e+03 - -2.8984813e+02 1.2211494e+03 -2.8231134e+03 - -2.7501083e+02 1.2249079e+03 -2.8190127e+03 - -2.5336706e+02 1.2280032e+03 -2.8149608e+03 - -2.2483150e+02 1.2304886e+03 -2.8111030e+03 - -1.8962141e+02 1.2324196e+03 -2.8076044e+03 - -1.4832958e+02 1.2338505e+03 -2.8046398e+03 - -1.0196546e+02 1.2348312e+03 -2.8023767e+03 - -5.1942794e+01 1.2354020e+03 -2.8009556e+03 - 0.0000000e+00 1.2355891e+03 -2.8004709e+03 - 5.1942794e+01 1.2354020e+03 -2.8009556e+03 - 1.0196546e+02 1.2348312e+03 -2.8023767e+03 - 1.4832958e+02 1.2338505e+03 -2.8046398e+03 - 1.8962141e+02 1.2324196e+03 -2.8076044e+03 - 2.2483150e+02 1.2304886e+03 -2.8111030e+03 - 2.5336706e+02 1.2280032e+03 -2.8149608e+03 - 2.7501083e+02 1.2249079e+03 -2.8190127e+03 - 2.8984813e+02 1.2211494e+03 -2.8231134e+03 - 2.9818364e+02 1.2166784e+03 -2.8271441e+03 - 3.0046334e+02 1.2114503e+03 -2.8310126e+03 - 2.9720992e+02 1.2054252e+03 -2.8346526e+03 - 2.8897439e+02 1.1985682e+03 -2.8380198e+03 - 2.7630275e+02 1.1908486e+03 -2.8410880e+03 - 2.5971515e+02 1.1822393e+03 -2.8438457e+03 - 2.3969431e+02 1.1727167e+03 -2.8462923e+03 - 2.1668044e+02 1.1622604e+03 -2.8484351e+03 - 1.9107033e+02 1.1508523e+03 -2.8502873e+03 - 1.6321914e+02 1.1384771e+03 -2.8518661e+03 - 1.3344341e+02 1.1251217e+03 -2.8531910e+03 - 1.0202481e+02 1.1107752e+03 -2.8542831e+03 - 6.9214007e+01 1.0954288e+03 -2.8551642e+03 - 3.5234405e+01 1.0790761e+03 -2.8558560e+03 - 2.8556921e-01 1.0617124e+03 -2.8563801e+03 - -3.5453662e+01 1.0433355e+03 -2.8567574e+03 - -7.1822452e+01 1.0239453e+03 -2.8570080e+03 - -1.0867560e+02 1.0035436e+03 -2.8571511e+03 - -1.4588150e+02 9.8213473e+02 -2.8572047e+03 - -1.8332040e+02 9.5972512e+02 -2.8571858e+03 - -2.2088292e+02 9.3632350e+02 -2.8571101e+03 - -2.5846879e+02 9.1194096e+02 -2.8569921e+03 - -2.9598579e+02 8.8659094e+02 -2.8568452e+03 - -3.3334885e+02 8.6028932e+02 -2.8566813e+03 - -3.7047931e+02 8.3305442e+02 -2.8565114e+03 - -4.0730426e+02 8.0490711e+02 -2.8563448e+03 - -4.4375602e+02 7.7587080e+02 -2.8561899e+03 - -4.7977168e+02 7.4597156e+02 -2.8560536e+03 - -5.1529274e+02 7.1523814e+02 -2.8559417e+03 - -5.5026474e+02 6.8370209e+02 -2.8558586e+03 - -5.8463706e+02 6.5139780e+02 -2.8558075e+03 - -6.1836264e+02 6.1836264e+02 -2.8557902e+03 - -6.5139780e+02 5.8463706e+02 -2.8558075e+03 - -6.8370209e+02 5.5026474e+02 -2.8558586e+03 - -7.1523814e+02 5.1529274e+02 -2.8559417e+03 - -7.4597156e+02 4.7977168e+02 -2.8560536e+03 - -7.7587080e+02 4.4375602e+02 -2.8561899e+03 - -8.0490711e+02 4.0730426e+02 -2.8563448e+03 - -8.3305442e+02 3.7047931e+02 -2.8565114e+03 - -8.6028932e+02 3.3334885e+02 -2.8566813e+03 - -8.8659094e+02 2.9598579e+02 -2.8568452e+03 - -9.1194096e+02 2.5846879e+02 -2.8569921e+03 - -9.3632350e+02 2.2088292e+02 -2.8571101e+03 - -9.5972512e+02 1.8332040e+02 -2.8571858e+03 - -9.8213473e+02 1.4588150e+02 -2.8572047e+03 - -1.0035436e+03 1.0867560e+02 -2.8571511e+03 - -1.0239453e+03 7.1822452e+01 -2.8570080e+03 - -1.0433355e+03 3.5453662e+01 -2.8567574e+03 - -1.0617124e+03 -2.8556921e-01 -2.8563801e+03 - -1.0790761e+03 -3.5234405e+01 -2.8558560e+03 - -1.0954288e+03 -6.9214007e+01 -2.8551642e+03 - -1.1107752e+03 -1.0202481e+02 -2.8542831e+03 - -1.1251217e+03 -1.3344341e+02 -2.8531910e+03 - -1.1384771e+03 -1.6321914e+02 -2.8518661e+03 - -1.1508523e+03 -1.9107033e+02 -2.8502873e+03 - -1.1622604e+03 -2.1668044e+02 -2.8484351e+03 - -1.1727167e+03 -2.3969431e+02 -2.8462923e+03 - -1.1822393e+03 -2.5971515e+02 -2.8438457e+03 - -1.1908486e+03 -2.7630275e+02 -2.8410880e+03 - -1.1985682e+03 -2.8897439e+02 -2.8380198e+03 - -1.2054252e+03 -2.9720992e+02 -2.8346526e+03 - -1.2114503e+03 -3.0046334e+02 -2.8310126e+03 - -1.2166784e+03 -2.9818364e+02 -2.8271441e+03 - -1.2211494e+03 -2.8984813e+02 -2.8231134e+03 - -1.2249079e+03 -2.7501083e+02 -2.8190127e+03 - -1.2280032e+03 -2.5336706e+02 -2.8149608e+03 - -1.2304886e+03 -2.2483150e+02 -2.8111030e+03 - -1.2324196e+03 -1.8962141e+02 -2.8076044e+03 - -1.2338505e+03 -1.4832958e+02 -2.8046398e+03 - -1.2348312e+03 -1.0196546e+02 -2.8023767e+03 - -1.2354020e+03 -5.1942794e+01 -2.8009556e+03 - -1.2355891e+03 7.2201409e-09 -2.8004709e+03 - -1.2354020e+03 5.1942794e+01 -2.8009556e+03 - -1.2348312e+03 1.0196546e+02 -2.8023767e+03 - -1.2338505e+03 1.4832958e+02 -2.8046398e+03 - -1.2324196e+03 1.8962141e+02 -2.8076044e+03 - -1.2304886e+03 2.2483150e+02 -2.8111030e+03 - -1.2280032e+03 2.5336706e+02 -2.8149608e+03 - -1.2249079e+03 2.7501083e+02 -2.8190127e+03 - -1.2211494e+03 2.8984813e+02 -2.8231134e+03 - -1.2166784e+03 2.9818364e+02 -2.8271441e+03 - -1.2114503e+03 3.0046334e+02 -2.8310126e+03 - -1.2054252e+03 2.9720992e+02 -2.8346526e+03 - -1.1985682e+03 2.8897439e+02 -2.8380198e+03 - -1.1908486e+03 2.7630275e+02 -2.8410880e+03 - -1.1822393e+03 2.5971515e+02 -2.8438457e+03 - -1.1727167e+03 2.3969431e+02 -2.8462923e+03 - -1.1622604e+03 2.1668044e+02 -2.8484351e+03 - -1.1508523e+03 1.9107033e+02 -2.8502873e+03 - -1.1384771e+03 1.6321914e+02 -2.8518661e+03 - -1.1251217e+03 1.3344341e+02 -2.8531910e+03 - -1.1107752e+03 1.0202481e+02 -2.8542831e+03 - -1.0954288e+03 6.9214007e+01 -2.8551642e+03 - -1.0790761e+03 3.5234405e+01 -2.8558560e+03 - -1.0617124e+03 2.8556921e-01 -2.8563801e+03 - -1.0433355e+03 -3.5453662e+01 -2.8567574e+03 - -1.0239453e+03 -7.1822452e+01 -2.8570080e+03 - -1.0035436e+03 -1.0867560e+02 -2.8571511e+03 - -9.8213473e+02 -1.4588150e+02 -2.8572047e+03 - -9.5972512e+02 -1.8332040e+02 -2.8571858e+03 - -9.3632350e+02 -2.2088292e+02 -2.8571101e+03 - -9.1194096e+02 -2.5846879e+02 -2.8569921e+03 - -8.8659094e+02 -2.9598579e+02 -2.8568452e+03 - -8.6028932e+02 -3.3334885e+02 -2.8566813e+03 - -8.3305442e+02 -3.7047931e+02 -2.8565114e+03 - -8.0490711e+02 -4.0730426e+02 -2.8563448e+03 - -7.7587080e+02 -4.4375602e+02 -2.8561899e+03 - -7.4597156e+02 -4.7977168e+02 -2.8560536e+03 - -7.1523814e+02 -5.1529274e+02 -2.8559417e+03 - -6.8370209e+02 -5.5026474e+02 -2.8558586e+03 - -6.5139780e+02 -5.8463706e+02 -2.8558075e+03 - -6.1836264e+02 -6.1836264e+02 -2.8557902e+03 - -5.8463706e+02 -6.5139780e+02 -2.8558075e+03 - -5.5026474e+02 -6.8370209e+02 -2.8558586e+03 - -5.1529274e+02 -7.1523814e+02 -2.8559417e+03 - -4.7977168e+02 -7.4597156e+02 -2.8560536e+03 - -4.4375602e+02 -7.7587080e+02 -2.8561899e+03 - -4.0730426e+02 -8.0490711e+02 -2.8563448e+03 - -3.7047931e+02 -8.3305442e+02 -2.8565114e+03 - -3.3334885e+02 -8.6028932e+02 -2.8566813e+03 - -2.9598579e+02 -8.8659094e+02 -2.8568452e+03 - -2.5846879e+02 -9.1194096e+02 -2.8569921e+03 - -2.2088292e+02 -9.3632350e+02 -2.8571101e+03 - -1.8332040e+02 -9.5972512e+02 -2.8571858e+03 - -1.4588150e+02 -9.8213473e+02 -2.8572047e+03 - -1.0867560e+02 -1.0035436e+03 -2.8571511e+03 - -7.1822452e+01 -1.0239453e+03 -2.8570080e+03 - -3.5453662e+01 -1.0433355e+03 -2.8567574e+03 - 2.8556921e-01 -1.0617124e+03 -2.8563801e+03 - 3.5234405e+01 -1.0790761e+03 -2.8558560e+03 - 6.9214007e+01 -1.0954288e+03 -2.8551642e+03 - 1.0202481e+02 -1.1107752e+03 -2.8542831e+03 - 1.3344341e+02 -1.1251217e+03 -2.8531910e+03 - 1.6321914e+02 -1.1384771e+03 -2.8518661e+03 - 1.9107033e+02 -1.1508523e+03 -2.8502873e+03 - 2.1668044e+02 -1.1622604e+03 -2.8484351e+03 - 2.3969431e+02 -1.1727167e+03 -2.8462923e+03 - 2.5971515e+02 -1.1822393e+03 -2.8438457e+03 - 2.7630275e+02 -1.1908486e+03 -2.8410880e+03 - 2.8897439e+02 -1.1985682e+03 -2.8380198e+03 - 2.9720992e+02 -1.2054252e+03 -2.8346526e+03 - 3.0046334e+02 -1.2114503e+03 -2.8310126e+03 - 2.9818364e+02 -1.2166784e+03 -2.8271441e+03 - 2.8984813e+02 -1.2211494e+03 -2.8231134e+03 - 2.7501083e+02 -1.2249079e+03 -2.8190127e+03 - 2.5336706e+02 -1.2280032e+03 -2.8149608e+03 - 2.2483150e+02 -1.2304886e+03 -2.8111030e+03 - 1.8962141e+02 -1.2324196e+03 -2.8076044e+03 - 1.4832958e+02 -1.2338505e+03 -2.8046398e+03 - 1.0196546e+02 -1.2348312e+03 -2.8023767e+03 - 5.1942794e+01 -1.2354020e+03 -2.8009556e+03 - -7.2201409e-09 -1.2355891e+03 -2.8004709e+03 - -5.1942794e+01 -1.2354020e+03 -2.8009556e+03 - -1.0196546e+02 -1.2348312e+03 -2.8023767e+03 - -1.4832958e+02 -1.2338505e+03 -2.8046398e+03 - -1.8962141e+02 -1.2324196e+03 -2.8076044e+03 - -2.2483150e+02 -1.2304886e+03 -2.8111030e+03 - -2.5336706e+02 -1.2280032e+03 -2.8149608e+03 - -2.7501083e+02 -1.2249079e+03 -2.8190127e+03 - -2.8984813e+02 -1.2211494e+03 -2.8231134e+03 - -2.9818364e+02 -1.2166784e+03 -2.8271441e+03 - -3.0046334e+02 -1.2114503e+03 -2.8310126e+03 - -2.9720992e+02 -1.2054252e+03 -2.8346526e+03 - -2.8897439e+02 -1.1985682e+03 -2.8380198e+03 - -2.7630275e+02 -1.1908486e+03 -2.8410880e+03 - -2.5971515e+02 -1.1822393e+03 -2.8438457e+03 - -2.3969431e+02 -1.1727167e+03 -2.8462923e+03 - -2.1668044e+02 -1.1622604e+03 -2.8484351e+03 - -1.9107033e+02 -1.1508523e+03 -2.8502873e+03 - -1.6321914e+02 -1.1384771e+03 -2.8518661e+03 - -1.3344341e+02 -1.1251217e+03 -2.8531910e+03 - -1.0202481e+02 -1.1107752e+03 -2.8542831e+03 - -6.9214007e+01 -1.0954288e+03 -2.8551642e+03 - -3.5234405e+01 -1.0790761e+03 -2.8558560e+03 - -2.8556921e-01 -1.0617124e+03 -2.8563801e+03 - 3.5453662e+01 -1.0433355e+03 -2.8567574e+03 - 7.1822452e+01 -1.0239453e+03 -2.8570080e+03 - 1.0867560e+02 -1.0035436e+03 -2.8571511e+03 - 1.4588150e+02 -9.8213473e+02 -2.8572047e+03 - 1.8332040e+02 -9.5972512e+02 -2.8571858e+03 - 2.2088292e+02 -9.3632350e+02 -2.8571101e+03 - 2.5846879e+02 -9.1194096e+02 -2.8569921e+03 - 2.9598579e+02 -8.8659094e+02 -2.8568452e+03 - 3.3334885e+02 -8.6028932e+02 -2.8566813e+03 - 3.7047931e+02 -8.3305442e+02 -2.8565114e+03 - 4.0730426e+02 -8.0490711e+02 -2.8563448e+03 - 4.4375602e+02 -7.7587080e+02 -2.8561899e+03 - 4.7977168e+02 -7.4597156e+02 -2.8560536e+03 - 5.1529274e+02 -7.1523814e+02 -2.8559417e+03 - 5.5026474e+02 -6.8370209e+02 -2.8558586e+03 - 5.8463706e+02 -6.5139780e+02 -2.8558075e+03 - 6.1836264e+02 -6.1836264e+02 -2.8557902e+03 - 6.5139780e+02 -5.8463706e+02 -2.8558075e+03 - 6.8370209e+02 -5.5026474e+02 -2.8558586e+03 - 7.1523814e+02 -5.1529274e+02 -2.8559417e+03 - 7.4597156e+02 -4.7977168e+02 -2.8560536e+03 - 7.7587080e+02 -4.4375602e+02 -2.8561899e+03 - 8.0490711e+02 -4.0730426e+02 -2.8563448e+03 - 8.3305442e+02 -3.7047931e+02 -2.8565114e+03 - 8.6028932e+02 -3.3334885e+02 -2.8566813e+03 - 8.8659094e+02 -2.9598579e+02 -2.8568452e+03 - 9.1194096e+02 -2.5846879e+02 -2.8569921e+03 - 9.3632350e+02 -2.2088292e+02 -2.8571101e+03 - 9.5972512e+02 -1.8332040e+02 -2.8571858e+03 - 9.8213473e+02 -1.4588150e+02 -2.8572047e+03 - 1.0035436e+03 -1.0867560e+02 -2.8571511e+03 - 1.0239453e+03 -7.1822452e+01 -2.8570080e+03 - 1.0433355e+03 -3.5453662e+01 -2.8567574e+03 - 1.0617124e+03 2.8556921e-01 -2.8563801e+03 - 1.0790761e+03 3.5234405e+01 -2.8558560e+03 - 1.0954288e+03 6.9214007e+01 -2.8551642e+03 - 1.1107752e+03 1.0202481e+02 -2.8542831e+03 - 1.1251217e+03 1.3344341e+02 -2.8531910e+03 - 1.1384771e+03 1.6321914e+02 -2.8518661e+03 - 1.1508523e+03 1.9107033e+02 -2.8502873e+03 - 1.1622604e+03 2.1668044e+02 -2.8484351e+03 - 1.1727167e+03 2.3969431e+02 -2.8462923e+03 - 1.1822393e+03 2.5971515e+02 -2.8438457e+03 - 1.1908486e+03 2.7630275e+02 -2.8410880e+03 - 1.1985682e+03 2.8897439e+02 -2.8380198e+03 - 1.2054252e+03 2.9720992e+02 -2.8346526e+03 - 1.2114503e+03 3.0046334e+02 -2.8310126e+03 - 1.2166784e+03 2.9818364e+02 -2.8271441e+03 - 1.2211494e+03 2.8984813e+02 -2.8231134e+03 - 1.2249079e+03 2.7501083e+02 -2.8190127e+03 - 1.2280032e+03 2.5336706e+02 -2.8149608e+03 - 1.2304886e+03 2.2483150e+02 -2.8111030e+03 - 1.2324196e+03 1.8962141e+02 -2.8076044e+03 - 1.2338505e+03 1.4832958e+02 -2.8046398e+03 - 1.2348312e+03 1.0196546e+02 -2.8023767e+03 - 1.2354020e+03 5.1942794e+01 -2.8009556e+03 - 1.2355891e+03 0.0000000e+00 -2.8004709e+03 - 1.1255302e+03 0.0000000e+00 -2.8755882e+03 - 1.1253809e+03 -5.1229932e+01 -2.8760231e+03 - 1.1249219e+03 -1.0071968e+02 -2.8773006e+03 - 1.1241214e+03 -1.4688311e+02 -2.8793439e+03 - 1.1229307e+03 -1.8841132e+02 -2.8820373e+03 - 1.1212903e+03 -2.2434488e+02 -2.8852412e+03 - 1.1191351e+03 -2.5409063e+02 -2.8888081e+03 - 1.1163999e+03 -2.7739258e+02 -2.8925954e+03 - 1.1130228e+03 -2.9427378e+02 -2.8964755e+03 - 1.1089477e+03 -3.0496655e+02 -2.9003408e+03 - 1.1041252e+03 -3.0984453e+02 -2.9041054e+03 - 1.0985127e+03 -3.0936442e+02 -2.9077048e+03 - 1.0920742e+03 -3.0402066e+02 -2.9110930e+03 - 1.0847792e+03 -2.9431304e+02 -2.9142406e+03 - 1.0766022e+03 -2.8072520e+02 -2.9171308e+03 - 1.0675220e+03 -2.6371189e+02 -2.9197571e+03 - 1.0575208e+03 -2.4369236e+02 -2.9221208e+03 - 1.0465840e+03 -2.2104811e+02 -2.9242289e+03 - 1.0346997e+03 -1.9612325e+02 -2.9260923e+03 - 1.0218582e+03 -1.6922661e+02 -2.9277250e+03 - 1.0080524e+03 -1.4063451e+02 -2.9291424e+03 - 9.9327670e+02 -1.1059405e+02 -2.9303613e+03 - 9.7752794e+02 -7.9326285e+01 -2.9313987e+03 - 9.6080471e+02 -4.7029300e+01 -2.9322719e+03 - 9.4310756e+02 -1.3881052e+01 -2.9329977e+03 - 9.2443900e+02 1.9958117e+01 -2.9335926e+03 - 9.0480347e+02 5.4343254e+01 -2.9340722e+03 - 8.8420747e+02 8.9142849e+01 -2.9344517e+03 - 8.6265950e+02 1.2423716e+02 -2.9347451e+03 - 8.4017016e+02 1.5951679e+02 -2.9349656e+03 - 8.1675221e+02 1.9488141e+02 -2.9351255e+03 - 7.9242059e+02 2.3023879e+02 -2.9352360e+03 - 7.6719248e+02 2.6550382e+02 -2.9353073e+03 - 7.4108738e+02 3.0059783e+02 -2.9353486e+03 - 7.1412715e+02 3.3544791e+02 -2.9353679e+03 - 6.8633610e+02 3.6998637e+02 -2.9353723e+03 - 6.5774103e+02 4.0415029e+02 -2.9353678e+03 - 6.2837131e+02 4.3788113e+02 -2.9353592e+03 - 5.9825902e+02 4.7112439e+02 -2.9353504e+03 - 5.6743896e+02 5.0382936e+02 -2.9353440e+03 - 5.3594883e+02 5.3594883e+02 -2.9353416e+03 - 5.0382936e+02 5.6743896e+02 -2.9353440e+03 - 4.7112439e+02 5.9825902e+02 -2.9353504e+03 - 4.3788113e+02 6.2837131e+02 -2.9353592e+03 - 4.0415029e+02 6.5774103e+02 -2.9353678e+03 - 3.6998637e+02 6.8633610e+02 -2.9353723e+03 - 3.3544791e+02 7.1412715e+02 -2.9353679e+03 - 3.0059783e+02 7.4108738e+02 -2.9353486e+03 - 2.6550382e+02 7.6719248e+02 -2.9353073e+03 - 2.3023879e+02 7.9242059e+02 -2.9352360e+03 - 1.9488141e+02 8.1675221e+02 -2.9351255e+03 - 1.5951679e+02 8.4017016e+02 -2.9349656e+03 - 1.2423716e+02 8.6265950e+02 -2.9347451e+03 - 8.9142849e+01 8.8420747e+02 -2.9344517e+03 - 5.4343254e+01 9.0480347e+02 -2.9340722e+03 - 1.9958117e+01 9.2443900e+02 -2.9335926e+03 - -1.3881052e+01 9.4310756e+02 -2.9329977e+03 - -4.7029300e+01 9.6080471e+02 -2.9322719e+03 - -7.9326285e+01 9.7752794e+02 -2.9313987e+03 - -1.1059405e+02 9.9327670e+02 -2.9303613e+03 - -1.4063451e+02 1.0080524e+03 -2.9291424e+03 - -1.6922661e+02 1.0218582e+03 -2.9277250e+03 - -1.9612325e+02 1.0346997e+03 -2.9260923e+03 - -2.2104811e+02 1.0465840e+03 -2.9242289e+03 - -2.4369236e+02 1.0575208e+03 -2.9221208e+03 - -2.6371189e+02 1.0675220e+03 -2.9197571e+03 - -2.8072520e+02 1.0766022e+03 -2.9171308e+03 - -2.9431304e+02 1.0847792e+03 -2.9142406e+03 - -3.0402066e+02 1.0920742e+03 -2.9110930e+03 - -3.0936442e+02 1.0985127e+03 -2.9077048e+03 - -3.0984453e+02 1.1041252e+03 -2.9041054e+03 - -3.0496655e+02 1.1089477e+03 -2.9003408e+03 - -2.9427378e+02 1.1130228e+03 -2.8964755e+03 - -2.7739258e+02 1.1163999e+03 -2.8925954e+03 - -2.5409063e+02 1.1191351e+03 -2.8888081e+03 - -2.2434488e+02 1.1212903e+03 -2.8852412e+03 - -1.8841132e+02 1.1229307e+03 -2.8820373e+03 - -1.4688311e+02 1.1241214e+03 -2.8793439e+03 - -1.0071968e+02 1.1249219e+03 -2.8773006e+03 - -5.1229932e+01 1.1253809e+03 -2.8760231e+03 - 0.0000000e+00 1.1255302e+03 -2.8755882e+03 - 5.1229932e+01 1.1253809e+03 -2.8760231e+03 - 1.0071968e+02 1.1249219e+03 -2.8773006e+03 - 1.4688311e+02 1.1241214e+03 -2.8793439e+03 - 1.8841132e+02 1.1229307e+03 -2.8820373e+03 - 2.2434488e+02 1.1212903e+03 -2.8852412e+03 - 2.5409063e+02 1.1191351e+03 -2.8888081e+03 - 2.7739258e+02 1.1163999e+03 -2.8925954e+03 - 2.9427378e+02 1.1130228e+03 -2.8964755e+03 - 3.0496655e+02 1.1089477e+03 -2.9003408e+03 - 3.0984453e+02 1.1041252e+03 -2.9041054e+03 - 3.0936442e+02 1.0985127e+03 -2.9077048e+03 - 3.0402066e+02 1.0920742e+03 -2.9110930e+03 - 2.9431304e+02 1.0847792e+03 -2.9142406e+03 - 2.8072520e+02 1.0766022e+03 -2.9171308e+03 - 2.6371189e+02 1.0675220e+03 -2.9197571e+03 - 2.4369236e+02 1.0575208e+03 -2.9221208e+03 - 2.2104811e+02 1.0465840e+03 -2.9242289e+03 - 1.9612325e+02 1.0346997e+03 -2.9260923e+03 - 1.6922661e+02 1.0218582e+03 -2.9277250e+03 - 1.4063451e+02 1.0080524e+03 -2.9291424e+03 - 1.1059405e+02 9.9327670e+02 -2.9303613e+03 - 7.9326285e+01 9.7752794e+02 -2.9313987e+03 - 4.7029300e+01 9.6080471e+02 -2.9322719e+03 - 1.3881052e+01 9.4310756e+02 -2.9329977e+03 - -1.9958117e+01 9.2443900e+02 -2.9335926e+03 - -5.4343254e+01 9.0480347e+02 -2.9340722e+03 - -8.9142849e+01 8.8420747e+02 -2.9344517e+03 - -1.2423716e+02 8.6265950e+02 -2.9347451e+03 - -1.5951679e+02 8.4017016e+02 -2.9349656e+03 - -1.9488141e+02 8.1675221e+02 -2.9351255e+03 - -2.3023879e+02 7.9242059e+02 -2.9352360e+03 - -2.6550382e+02 7.6719248e+02 -2.9353073e+03 - -3.0059783e+02 7.4108738e+02 -2.9353486e+03 - -3.3544791e+02 7.1412715e+02 -2.9353679e+03 - -3.6998637e+02 6.8633610e+02 -2.9353723e+03 - -4.0415029e+02 6.5774103e+02 -2.9353678e+03 - -4.3788113e+02 6.2837131e+02 -2.9353592e+03 - -4.7112439e+02 5.9825902e+02 -2.9353504e+03 - -5.0382936e+02 5.6743896e+02 -2.9353440e+03 - -5.3594883e+02 5.3594883e+02 -2.9353416e+03 - -5.6743896e+02 5.0382936e+02 -2.9353440e+03 - -5.9825902e+02 4.7112439e+02 -2.9353504e+03 - -6.2837131e+02 4.3788113e+02 -2.9353592e+03 - -6.5774103e+02 4.0415029e+02 -2.9353678e+03 - -6.8633610e+02 3.6998637e+02 -2.9353723e+03 - -7.1412715e+02 3.3544791e+02 -2.9353679e+03 - -7.4108738e+02 3.0059783e+02 -2.9353486e+03 - -7.6719248e+02 2.6550382e+02 -2.9353073e+03 - -7.9242059e+02 2.3023879e+02 -2.9352360e+03 - -8.1675221e+02 1.9488141e+02 -2.9351255e+03 - -8.4017016e+02 1.5951679e+02 -2.9349656e+03 - -8.6265950e+02 1.2423716e+02 -2.9347451e+03 - -8.8420747e+02 8.9142849e+01 -2.9344517e+03 - -9.0480347e+02 5.4343254e+01 -2.9340722e+03 - -9.2443900e+02 1.9958117e+01 -2.9335926e+03 - -9.4310756e+02 -1.3881052e+01 -2.9329977e+03 - -9.6080471e+02 -4.7029300e+01 -2.9322719e+03 - -9.7752794e+02 -7.9326285e+01 -2.9313987e+03 - -9.9327670e+02 -1.1059405e+02 -2.9303613e+03 - -1.0080524e+03 -1.4063451e+02 -2.9291424e+03 - -1.0218582e+03 -1.6922661e+02 -2.9277250e+03 - -1.0346997e+03 -1.9612325e+02 -2.9260923e+03 - -1.0465840e+03 -2.2104811e+02 -2.9242289e+03 - -1.0575208e+03 -2.4369236e+02 -2.9221208e+03 - -1.0675220e+03 -2.6371189e+02 -2.9197571e+03 - -1.0766022e+03 -2.8072520e+02 -2.9171308e+03 - -1.0847792e+03 -2.9431304e+02 -2.9142406e+03 - -1.0920742e+03 -3.0402066e+02 -2.9110930e+03 - -1.0985127e+03 -3.0936442e+02 -2.9077048e+03 - -1.1041252e+03 -3.0984453e+02 -2.9041054e+03 - -1.1089477e+03 -3.0496655e+02 -2.9003408e+03 - -1.1130228e+03 -2.9427378e+02 -2.8964755e+03 - -1.1163999e+03 -2.7739258e+02 -2.8925954e+03 - -1.1191351e+03 -2.5409063e+02 -2.8888081e+03 - -1.1212903e+03 -2.2434488e+02 -2.8852412e+03 - -1.1229307e+03 -1.8841132e+02 -2.8820373e+03 - -1.1241214e+03 -1.4688311e+02 -2.8793439e+03 - -1.1249219e+03 -1.0071968e+02 -2.8773006e+03 - -1.1253809e+03 -5.1229932e+01 -2.8760231e+03 - -1.1255302e+03 0.0000000e+00 -2.8755882e+03 - -1.1253809e+03 5.1229932e+01 -2.8760231e+03 - -1.1249219e+03 1.0071968e+02 -2.8773006e+03 - -1.1241214e+03 1.4688311e+02 -2.8793439e+03 - -1.1229307e+03 1.8841132e+02 -2.8820373e+03 - -1.1212903e+03 2.2434488e+02 -2.8852412e+03 - -1.1191351e+03 2.5409063e+02 -2.8888081e+03 - -1.1163999e+03 2.7739258e+02 -2.8925954e+03 - -1.1130228e+03 2.9427378e+02 -2.8964755e+03 - -1.1089477e+03 3.0496655e+02 -2.9003408e+03 - -1.1041252e+03 3.0984453e+02 -2.9041054e+03 - -1.0985127e+03 3.0936442e+02 -2.9077048e+03 - -1.0920742e+03 3.0402066e+02 -2.9110930e+03 - -1.0847792e+03 2.9431304e+02 -2.9142406e+03 - -1.0766022e+03 2.8072520e+02 -2.9171308e+03 - -1.0675220e+03 2.6371189e+02 -2.9197571e+03 - -1.0575208e+03 2.4369236e+02 -2.9221208e+03 - -1.0465840e+03 2.2104811e+02 -2.9242289e+03 - -1.0346997e+03 1.9612325e+02 -2.9260923e+03 - -1.0218582e+03 1.6922661e+02 -2.9277250e+03 - -1.0080524e+03 1.4063451e+02 -2.9291424e+03 - -9.9327670e+02 1.1059405e+02 -2.9303613e+03 - -9.7752794e+02 7.9326285e+01 -2.9313987e+03 - -9.6080471e+02 4.7029300e+01 -2.9322719e+03 - -9.4310756e+02 1.3881052e+01 -2.9329977e+03 - -9.2443900e+02 -1.9958117e+01 -2.9335926e+03 - -9.0480347e+02 -5.4343254e+01 -2.9340722e+03 - -8.8420747e+02 -8.9142849e+01 -2.9344517e+03 - -8.6265950e+02 -1.2423716e+02 -2.9347451e+03 - -8.4017016e+02 -1.5951679e+02 -2.9349656e+03 - -8.1675221e+02 -1.9488141e+02 -2.9351255e+03 - -7.9242059e+02 -2.3023879e+02 -2.9352360e+03 - -7.6719248e+02 -2.6550382e+02 -2.9353073e+03 - -7.4108738e+02 -3.0059783e+02 -2.9353486e+03 - -7.1412715e+02 -3.3544791e+02 -2.9353679e+03 - -6.8633610e+02 -3.6998637e+02 -2.9353723e+03 - -6.5774103e+02 -4.0415029e+02 -2.9353678e+03 - -6.2837131e+02 -4.3788113e+02 -2.9353592e+03 - -5.9825902e+02 -4.7112439e+02 -2.9353504e+03 - -5.6743896e+02 -5.0382936e+02 -2.9353440e+03 - -5.3594883e+02 -5.3594883e+02 -2.9353416e+03 - -5.0382936e+02 -5.6743896e+02 -2.9353440e+03 - -4.7112439e+02 -5.9825902e+02 -2.9353504e+03 - -4.3788113e+02 -6.2837131e+02 -2.9353592e+03 - -4.0415029e+02 -6.5774103e+02 -2.9353678e+03 - -3.6998637e+02 -6.8633610e+02 -2.9353723e+03 - -3.3544791e+02 -7.1412715e+02 -2.9353679e+03 - -3.0059783e+02 -7.4108738e+02 -2.9353486e+03 - -2.6550382e+02 -7.6719248e+02 -2.9353073e+03 - -2.3023879e+02 -7.9242059e+02 -2.9352360e+03 - -1.9488141e+02 -8.1675221e+02 -2.9351255e+03 - -1.5951679e+02 -8.4017016e+02 -2.9349656e+03 - -1.2423716e+02 -8.6265950e+02 -2.9347451e+03 - -8.9142849e+01 -8.8420747e+02 -2.9344517e+03 - -5.4343254e+01 -9.0480347e+02 -2.9340722e+03 - -1.9958117e+01 -9.2443900e+02 -2.9335926e+03 - 1.3881052e+01 -9.4310756e+02 -2.9329977e+03 - 4.7029300e+01 -9.6080471e+02 -2.9322719e+03 - 7.9326285e+01 -9.7752794e+02 -2.9313987e+03 - 1.1059405e+02 -9.9327670e+02 -2.9303613e+03 - 1.4063451e+02 -1.0080524e+03 -2.9291424e+03 - 1.6922661e+02 -1.0218582e+03 -2.9277250e+03 - 1.9612325e+02 -1.0346997e+03 -2.9260923e+03 - 2.2104811e+02 -1.0465840e+03 -2.9242289e+03 - 2.4369236e+02 -1.0575208e+03 -2.9221208e+03 - 2.6371189e+02 -1.0675220e+03 -2.9197571e+03 - 2.8072520e+02 -1.0766022e+03 -2.9171308e+03 - 2.9431304e+02 -1.0847792e+03 -2.9142406e+03 - 3.0402066e+02 -1.0920742e+03 -2.9110930e+03 - 3.0936442e+02 -1.0985127e+03 -2.9077048e+03 - 3.0984453e+02 -1.1041252e+03 -2.9041054e+03 - 3.0496655e+02 -1.1089477e+03 -2.9003408e+03 - 2.9427378e+02 -1.1130228e+03 -2.8964755e+03 - 2.7739258e+02 -1.1163999e+03 -2.8925954e+03 - 2.5409063e+02 -1.1191351e+03 -2.8888081e+03 - 2.2434488e+02 -1.1212903e+03 -2.8852412e+03 - 1.8841132e+02 -1.1229307e+03 -2.8820373e+03 - 1.4688311e+02 -1.1241214e+03 -2.8793439e+03 - 1.0071968e+02 -1.1249219e+03 -2.8773006e+03 - 5.1229932e+01 -1.1253809e+03 -2.8760231e+03 - 0.0000000e+00 -1.1255302e+03 -2.8755882e+03 - -5.1229932e+01 -1.1253809e+03 -2.8760231e+03 - -1.0071968e+02 -1.1249219e+03 -2.8773006e+03 - -1.4688311e+02 -1.1241214e+03 -2.8793439e+03 - -1.8841132e+02 -1.1229307e+03 -2.8820373e+03 - -2.2434488e+02 -1.1212903e+03 -2.8852412e+03 - -2.5409063e+02 -1.1191351e+03 -2.8888081e+03 - -2.7739258e+02 -1.1163999e+03 -2.8925954e+03 - -2.9427378e+02 -1.1130228e+03 -2.8964755e+03 - -3.0496655e+02 -1.1089477e+03 -2.9003408e+03 - -3.0984453e+02 -1.1041252e+03 -2.9041054e+03 - -3.0936442e+02 -1.0985127e+03 -2.9077048e+03 - -3.0402066e+02 -1.0920742e+03 -2.9110930e+03 - -2.9431304e+02 -1.0847792e+03 -2.9142406e+03 - -2.8072520e+02 -1.0766022e+03 -2.9171308e+03 - -2.6371189e+02 -1.0675220e+03 -2.9197571e+03 - -2.4369236e+02 -1.0575208e+03 -2.9221208e+03 - -2.2104811e+02 -1.0465840e+03 -2.9242289e+03 - -1.9612325e+02 -1.0346997e+03 -2.9260923e+03 - -1.6922661e+02 -1.0218582e+03 -2.9277250e+03 - -1.4063451e+02 -1.0080524e+03 -2.9291424e+03 - -1.1059405e+02 -9.9327670e+02 -2.9303613e+03 - -7.9326285e+01 -9.7752794e+02 -2.9313987e+03 - -4.7029300e+01 -9.6080471e+02 -2.9322719e+03 - -1.3881052e+01 -9.4310756e+02 -2.9329977e+03 - 1.9958117e+01 -9.2443900e+02 -2.9335926e+03 - 5.4343254e+01 -9.0480347e+02 -2.9340722e+03 - 8.9142849e+01 -8.8420747e+02 -2.9344517e+03 - 1.2423716e+02 -8.6265950e+02 -2.9347451e+03 - 1.5951679e+02 -8.4017016e+02 -2.9349656e+03 - 1.9488141e+02 -8.1675221e+02 -2.9351255e+03 - 2.3023879e+02 -7.9242059e+02 -2.9352360e+03 - 2.6550382e+02 -7.6719248e+02 -2.9353073e+03 - 3.0059783e+02 -7.4108738e+02 -2.9353486e+03 - 3.3544791e+02 -7.1412715e+02 -2.9353679e+03 - 3.6998637e+02 -6.8633610e+02 -2.9353723e+03 - 4.0415029e+02 -6.5774103e+02 -2.9353678e+03 - 4.3788113e+02 -6.2837131e+02 -2.9353592e+03 - 4.7112439e+02 -5.9825902e+02 -2.9353504e+03 - 5.0382936e+02 -5.6743896e+02 -2.9353440e+03 - 5.3594883e+02 -5.3594883e+02 -2.9353416e+03 - 5.6743896e+02 -5.0382936e+02 -2.9353440e+03 - 5.9825902e+02 -4.7112439e+02 -2.9353504e+03 - 6.2837131e+02 -4.3788113e+02 -2.9353592e+03 - 6.5774103e+02 -4.0415029e+02 -2.9353678e+03 - 6.8633610e+02 -3.6998637e+02 -2.9353723e+03 - 7.1412715e+02 -3.3544791e+02 -2.9353679e+03 - 7.4108738e+02 -3.0059783e+02 -2.9353486e+03 - 7.6719248e+02 -2.6550382e+02 -2.9353073e+03 - 7.9242059e+02 -2.3023879e+02 -2.9352360e+03 - 8.1675221e+02 -1.9488141e+02 -2.9351255e+03 - 8.4017016e+02 -1.5951679e+02 -2.9349656e+03 - 8.6265950e+02 -1.2423716e+02 -2.9347451e+03 - 8.8420747e+02 -8.9142849e+01 -2.9344517e+03 - 9.0480347e+02 -5.4343254e+01 -2.9340722e+03 - 9.2443900e+02 -1.9958117e+01 -2.9335926e+03 - 9.4310756e+02 1.3881052e+01 -2.9329977e+03 - 9.6080471e+02 4.7029300e+01 -2.9322719e+03 - 9.7752794e+02 7.9326285e+01 -2.9313987e+03 - 9.9327670e+02 1.1059405e+02 -2.9303613e+03 - 1.0080524e+03 1.4063451e+02 -2.9291424e+03 - 1.0218582e+03 1.6922661e+02 -2.9277250e+03 - 1.0346997e+03 1.9612325e+02 -2.9260923e+03 - 1.0465840e+03 2.2104811e+02 -2.9242289e+03 - 1.0575208e+03 2.4369236e+02 -2.9221208e+03 - 1.0675220e+03 2.6371189e+02 -2.9197571e+03 - 1.0766022e+03 2.8072520e+02 -2.9171308e+03 - 1.0847792e+03 2.9431304e+02 -2.9142406e+03 - 1.0920742e+03 3.0402066e+02 -2.9110930e+03 - 1.0985127e+03 3.0936442e+02 -2.9077048e+03 - 1.1041252e+03 3.0984453e+02 -2.9041054e+03 - 1.1089477e+03 3.0496655e+02 -2.9003408e+03 - 1.1130228e+03 2.9427378e+02 -2.8964755e+03 - 1.1163999e+03 2.7739258e+02 -2.8925954e+03 - 1.1191351e+03 2.5409063e+02 -2.8888081e+03 - 1.1212903e+03 2.2434488e+02 -2.8852412e+03 - 1.1229307e+03 1.8841132e+02 -2.8820373e+03 - 1.1241214e+03 1.4688311e+02 -2.8793439e+03 - 1.1249219e+03 1.0071968e+02 -2.8773006e+03 - 1.1253809e+03 5.1229932e+01 -2.8760231e+03 - 1.1255302e+03 -7.2201409e-09 -2.8755882e+03 - 1.0163162e+03 2.4067136e-09 -2.9470276e+03 - 1.0161994e+03 -5.0631575e+01 -2.9474198e+03 - 1.0158366e+03 -9.9678825e+01 -2.9485740e+03 - 1.0151925e+03 -1.4568914e+02 -2.9504271e+03 - 1.0142131e+03 -1.8744853e+02 -2.9528832e+03 - 1.0128317e+03 -2.2404700e+02 -2.9558255e+03 - 1.0109760e+03 -2.5489788e+02 -2.9591288e+03 - 1.0085734e+03 -2.7971775e+02 -2.9626701e+03 - 1.0055552e+03 -2.9848004e+02 -2.9663372e+03 - 1.0018598e+03 -3.1135647e+02 -2.9700331e+03 - 9.9743358e+02 -3.1865793e+02 -2.9736784e+03 - 9.9223131e+02 -3.2078221e+02 -2.9772111e+03 - 9.8621545e+02 -3.1817192e+02 -2.9805854e+03 - 9.7935540e+02 -3.1128331e+02 -2.9837693e+03 - 9.7162650e+02 -3.0056479e+02 -2.9867427e+03 - 9.6300911e+02 -2.8644333e+02 -2.9894944e+03 - 9.5348774e+02 -2.6931684e+02 -2.9920208e+03 - 9.4305039e+02 -2.4955063e+02 -2.9943238e+03 - 9.3168797e+02 -2.2747681e+02 -2.9964093e+03 - 9.1939395e+02 -2.0339538e+02 -2.9982862e+03 - 9.0616402e+02 -1.7757627e+02 -2.9999653e+03 - 8.9199589e+02 -1.5026196e+02 -3.0014588e+03 - 8.7688916e+02 -1.2167023e+02 -3.0027797e+03 - 8.6084527e+02 -9.1996857e+01 -3.0039411e+03 - 8.4386740e+02 -6.1418151e+01 -3.0049565e+03 - 8.2596055e+02 -3.0093284e+01 -3.0058388e+03 - 8.0713146e+02 1.8336326e+00 -3.0066008e+03 - 7.8738873e+02 3.4231716e+01 -3.0072547e+03 - 7.6674278e+02 6.6981710e+01 -3.0078120e+03 - 7.4520598e+02 9.9974596e+01 -3.0082835e+03 - 7.2279262e+02 1.3311040e+02 -3.0086795e+03 - 6.9951904e+02 1.6629718e+02 -3.0090092e+03 - 6.7540366e+02 1.9945010e+02 -3.0092811e+03 - 6.5046705e+02 2.3249075e+02 -3.0095028e+03 - 6.2473198e+02 2.6534646e+02 -3.0096812e+03 - 5.9822355e+02 2.9794974e+02 -3.0098220e+03 - 5.7096919e+02 3.3023789e+02 -3.0099305e+03 - 5.4299883e+02 3.6215251e+02 -3.0100105e+03 - 5.1434494e+02 3.9363923e+02 -3.0100654e+03 - 4.8504263e+02 4.2464740e+02 -3.0100975e+03 - 4.5512984e+02 4.5512984e+02 -3.0101080e+03 - 4.2464740e+02 4.8504263e+02 -3.0100975e+03 - 3.9363923e+02 5.1434494e+02 -3.0100654e+03 - 3.6215251e+02 5.4299883e+02 -3.0100105e+03 - 3.3023789e+02 5.7096919e+02 -3.0099305e+03 - 2.9794974e+02 5.9822355e+02 -3.0098220e+03 - 2.6534646e+02 6.2473198e+02 -3.0096812e+03 - 2.3249075e+02 6.5046705e+02 -3.0095028e+03 - 1.9945010e+02 6.7540366e+02 -3.0092811e+03 - 1.6629718e+02 6.9951904e+02 -3.0090092e+03 - 1.3311040e+02 7.2279262e+02 -3.0086795e+03 - 9.9974596e+01 7.4520598e+02 -3.0082835e+03 - 6.6981710e+01 7.6674278e+02 -3.0078120e+03 - 3.4231716e+01 7.8738873e+02 -3.0072547e+03 - 1.8336326e+00 8.0713146e+02 -3.0066008e+03 - -3.0093284e+01 8.2596055e+02 -3.0058388e+03 - -6.1418151e+01 8.4386740e+02 -3.0049565e+03 - -9.1996857e+01 8.6084527e+02 -3.0039411e+03 - -1.2167023e+02 8.7688916e+02 -3.0027797e+03 - -1.5026196e+02 8.9199589e+02 -3.0014588e+03 - -1.7757627e+02 9.0616402e+02 -2.9999653e+03 - -2.0339538e+02 9.1939395e+02 -2.9982862e+03 - -2.2747681e+02 9.3168797e+02 -2.9964093e+03 - -2.4955063e+02 9.4305039e+02 -2.9943238e+03 - -2.6931684e+02 9.5348774e+02 -2.9920208e+03 - -2.8644333e+02 9.6300911e+02 -2.9894944e+03 - -3.0056479e+02 9.7162650e+02 -2.9867427e+03 - -3.1128331e+02 9.7935540e+02 -2.9837693e+03 - -3.1817192e+02 9.8621545e+02 -2.9805854e+03 - -3.2078221e+02 9.9223131e+02 -2.9772111e+03 - -3.1865793e+02 9.9743358e+02 -2.9736784e+03 - -3.1135647e+02 1.0018598e+03 -2.9700331e+03 - -2.9848004e+02 1.0055552e+03 -2.9663372e+03 - -2.7971775e+02 1.0085734e+03 -2.9626701e+03 - -2.5489788e+02 1.0109760e+03 -2.9591288e+03 - -2.2404700e+02 1.0128317e+03 -2.9558255e+03 - -1.8744853e+02 1.0142131e+03 -2.9528832e+03 - -1.4568914e+02 1.0151925e+03 -2.9504271e+03 - -9.9678825e+01 1.0158366e+03 -2.9485740e+03 - -5.0631575e+01 1.0161994e+03 -2.9474198e+03 - -2.4067136e-09 1.0163162e+03 -2.9470276e+03 - 5.0631575e+01 1.0161994e+03 -2.9474198e+03 - 9.9678825e+01 1.0158366e+03 -2.9485740e+03 - 1.4568914e+02 1.0151925e+03 -2.9504271e+03 - 1.8744853e+02 1.0142131e+03 -2.9528832e+03 - 2.2404700e+02 1.0128317e+03 -2.9558255e+03 - 2.5489788e+02 1.0109760e+03 -2.9591288e+03 - 2.7971775e+02 1.0085734e+03 -2.9626701e+03 - 2.9848004e+02 1.0055552e+03 -2.9663372e+03 - 3.1135647e+02 1.0018598e+03 -2.9700331e+03 - 3.1865793e+02 9.9743358e+02 -2.9736784e+03 - 3.2078221e+02 9.9223131e+02 -2.9772111e+03 - 3.1817192e+02 9.8621545e+02 -2.9805854e+03 - 3.1128331e+02 9.7935540e+02 -2.9837693e+03 - 3.0056479e+02 9.7162650e+02 -2.9867427e+03 - 2.8644333e+02 9.6300911e+02 -2.9894944e+03 - 2.6931684e+02 9.5348774e+02 -2.9920208e+03 - 2.4955063e+02 9.4305039e+02 -2.9943238e+03 - 2.2747681e+02 9.3168797e+02 -2.9964093e+03 - 2.0339538e+02 9.1939395e+02 -2.9982862e+03 - 1.7757627e+02 9.0616402e+02 -2.9999653e+03 - 1.5026196e+02 8.9199589e+02 -3.0014588e+03 - 1.2167023e+02 8.7688916e+02 -3.0027797e+03 - 9.1996857e+01 8.6084527e+02 -3.0039411e+03 - 6.1418151e+01 8.4386740e+02 -3.0049565e+03 - 3.0093284e+01 8.2596055e+02 -3.0058388e+03 - -1.8336326e+00 8.0713146e+02 -3.0066008e+03 - -3.4231716e+01 7.8738873e+02 -3.0072547e+03 - -6.6981710e+01 7.6674278e+02 -3.0078120e+03 - -9.9974596e+01 7.4520598e+02 -3.0082835e+03 - -1.3311040e+02 7.2279262e+02 -3.0086795e+03 - -1.6629718e+02 6.9951904e+02 -3.0090092e+03 - -1.9945010e+02 6.7540366e+02 -3.0092811e+03 - -2.3249075e+02 6.5046705e+02 -3.0095028e+03 - -2.6534646e+02 6.2473198e+02 -3.0096812e+03 - -2.9794974e+02 5.9822355e+02 -3.0098220e+03 - -3.3023789e+02 5.7096919e+02 -3.0099305e+03 - -3.6215251e+02 5.4299883e+02 -3.0100105e+03 - -3.9363923e+02 5.1434494e+02 -3.0100654e+03 - -4.2464740e+02 4.8504263e+02 -3.0100975e+03 - -4.5512984e+02 4.5512984e+02 -3.0101080e+03 - -4.8504263e+02 4.2464740e+02 -3.0100975e+03 - -5.1434494e+02 3.9363923e+02 -3.0100654e+03 - -5.4299883e+02 3.6215251e+02 -3.0100105e+03 - -5.7096919e+02 3.3023789e+02 -3.0099305e+03 - -5.9822355e+02 2.9794974e+02 -3.0098220e+03 - -6.2473198e+02 2.6534646e+02 -3.0096812e+03 - -6.5046705e+02 2.3249075e+02 -3.0095028e+03 - -6.7540366e+02 1.9945010e+02 -3.0092811e+03 - -6.9951904e+02 1.6629718e+02 -3.0090092e+03 - -7.2279262e+02 1.3311040e+02 -3.0086795e+03 - -7.4520598e+02 9.9974596e+01 -3.0082835e+03 - -7.6674278e+02 6.6981710e+01 -3.0078120e+03 - -7.8738873e+02 3.4231716e+01 -3.0072547e+03 - -8.0713146e+02 1.8336326e+00 -3.0066008e+03 - -8.2596055e+02 -3.0093284e+01 -3.0058388e+03 - -8.4386740e+02 -6.1418151e+01 -3.0049565e+03 - -8.6084527e+02 -9.1996857e+01 -3.0039411e+03 - -8.7688916e+02 -1.2167023e+02 -3.0027797e+03 - -8.9199589e+02 -1.5026196e+02 -3.0014588e+03 - -9.0616402e+02 -1.7757627e+02 -2.9999653e+03 - -9.1939395e+02 -2.0339538e+02 -2.9982862e+03 - -9.3168797e+02 -2.2747681e+02 -2.9964093e+03 - -9.4305039e+02 -2.4955063e+02 -2.9943238e+03 - -9.5348774e+02 -2.6931684e+02 -2.9920208e+03 - -9.6300911e+02 -2.8644333e+02 -2.9894944e+03 - -9.7162650e+02 -3.0056479e+02 -2.9867427e+03 - -9.7935540e+02 -3.1128331e+02 -2.9837693e+03 - -9.8621545e+02 -3.1817192e+02 -2.9805854e+03 - -9.9223131e+02 -3.2078221e+02 -2.9772111e+03 - -9.9743358e+02 -3.1865793e+02 -2.9736784e+03 - -1.0018598e+03 -3.1135647e+02 -2.9700331e+03 - -1.0055552e+03 -2.9848004e+02 -2.9663372e+03 - -1.0085734e+03 -2.7971775e+02 -2.9626701e+03 - -1.0109760e+03 -2.5489788e+02 -2.9591288e+03 - -1.0128317e+03 -2.2404700e+02 -2.9558255e+03 - -1.0142131e+03 -1.8744853e+02 -2.9528832e+03 - -1.0151925e+03 -1.4568914e+02 -2.9504271e+03 - -1.0158366e+03 -9.9678825e+01 -2.9485740e+03 - -1.0161994e+03 -5.0631575e+01 -2.9474198e+03 - -1.0163162e+03 4.8134273e-09 -2.9470276e+03 - -1.0161994e+03 5.0631575e+01 -2.9474198e+03 - -1.0158366e+03 9.9678825e+01 -2.9485740e+03 - -1.0151925e+03 1.4568914e+02 -2.9504271e+03 - -1.0142131e+03 1.8744853e+02 -2.9528832e+03 - -1.0128317e+03 2.2404700e+02 -2.9558255e+03 - -1.0109760e+03 2.5489788e+02 -2.9591288e+03 - -1.0085734e+03 2.7971775e+02 -2.9626701e+03 - -1.0055552e+03 2.9848004e+02 -2.9663372e+03 - -1.0018598e+03 3.1135647e+02 -2.9700331e+03 - -9.9743358e+02 3.1865793e+02 -2.9736784e+03 - -9.9223131e+02 3.2078221e+02 -2.9772111e+03 - -9.8621545e+02 3.1817192e+02 -2.9805854e+03 - -9.7935540e+02 3.1128331e+02 -2.9837693e+03 - -9.7162650e+02 3.0056479e+02 -2.9867427e+03 - -9.6300911e+02 2.8644333e+02 -2.9894944e+03 - -9.5348774e+02 2.6931684e+02 -2.9920208e+03 - -9.4305039e+02 2.4955063e+02 -2.9943238e+03 - -9.3168797e+02 2.2747681e+02 -2.9964093e+03 - -9.1939395e+02 2.0339538e+02 -2.9982862e+03 - -9.0616402e+02 1.7757627e+02 -2.9999653e+03 - -8.9199589e+02 1.5026196e+02 -3.0014588e+03 - -8.7688916e+02 1.2167023e+02 -3.0027797e+03 - -8.6084527e+02 9.1996857e+01 -3.0039411e+03 - -8.4386740e+02 6.1418151e+01 -3.0049565e+03 - -8.2596055e+02 3.0093284e+01 -3.0058388e+03 - -8.0713146e+02 -1.8336326e+00 -3.0066008e+03 - -7.8738873e+02 -3.4231716e+01 -3.0072547e+03 - -7.6674278e+02 -6.6981710e+01 -3.0078120e+03 - -7.4520598e+02 -9.9974596e+01 -3.0082835e+03 - -7.2279262e+02 -1.3311040e+02 -3.0086795e+03 - -6.9951904e+02 -1.6629718e+02 -3.0090092e+03 - -6.7540366e+02 -1.9945010e+02 -3.0092811e+03 - -6.5046705e+02 -2.3249075e+02 -3.0095028e+03 - -6.2473198e+02 -2.6534646e+02 -3.0096812e+03 - -5.9822355e+02 -2.9794974e+02 -3.0098220e+03 - -5.7096919e+02 -3.3023789e+02 -3.0099305e+03 - -5.4299883e+02 -3.6215251e+02 -3.0100105e+03 - -5.1434494e+02 -3.9363923e+02 -3.0100654e+03 - -4.8504263e+02 -4.2464740e+02 -3.0100975e+03 - -4.5512984e+02 -4.5512984e+02 -3.0101080e+03 - -4.2464740e+02 -4.8504263e+02 -3.0100975e+03 - -3.9363923e+02 -5.1434494e+02 -3.0100654e+03 - -3.6215251e+02 -5.4299883e+02 -3.0100105e+03 - -3.3023789e+02 -5.7096919e+02 -3.0099305e+03 - -2.9794974e+02 -5.9822355e+02 -3.0098220e+03 - -2.6534646e+02 -6.2473198e+02 -3.0096812e+03 - -2.3249075e+02 -6.5046705e+02 -3.0095028e+03 - -1.9945010e+02 -6.7540366e+02 -3.0092811e+03 - -1.6629718e+02 -6.9951904e+02 -3.0090092e+03 - -1.3311040e+02 -7.2279262e+02 -3.0086795e+03 - -9.9974596e+01 -7.4520598e+02 -3.0082835e+03 - -6.6981710e+01 -7.6674278e+02 -3.0078120e+03 - -3.4231716e+01 -7.8738873e+02 -3.0072547e+03 - -1.8336326e+00 -8.0713146e+02 -3.0066008e+03 - 3.0093284e+01 -8.2596055e+02 -3.0058388e+03 - 6.1418151e+01 -8.4386740e+02 -3.0049565e+03 - 9.1996857e+01 -8.6084527e+02 -3.0039411e+03 - 1.2167023e+02 -8.7688916e+02 -3.0027797e+03 - 1.5026196e+02 -8.9199589e+02 -3.0014588e+03 - 1.7757627e+02 -9.0616402e+02 -2.9999653e+03 - 2.0339538e+02 -9.1939395e+02 -2.9982862e+03 - 2.2747681e+02 -9.3168797e+02 -2.9964093e+03 - 2.4955063e+02 -9.4305039e+02 -2.9943238e+03 - 2.6931684e+02 -9.5348774e+02 -2.9920208e+03 - 2.8644333e+02 -9.6300911e+02 -2.9894944e+03 - 3.0056479e+02 -9.7162650e+02 -2.9867427e+03 - 3.1128331e+02 -9.7935540e+02 -2.9837693e+03 - 3.1817192e+02 -9.8621545e+02 -2.9805854e+03 - 3.2078221e+02 -9.9223131e+02 -2.9772111e+03 - 3.1865793e+02 -9.9743358e+02 -2.9736784e+03 - 3.1135647e+02 -1.0018598e+03 -2.9700331e+03 - 2.9848004e+02 -1.0055552e+03 -2.9663372e+03 - 2.7971775e+02 -1.0085734e+03 -2.9626701e+03 - 2.5489788e+02 -1.0109760e+03 -2.9591288e+03 - 2.2404700e+02 -1.0128317e+03 -2.9558255e+03 - 1.8744853e+02 -1.0142131e+03 -2.9528832e+03 - 1.4568914e+02 -1.0151925e+03 -2.9504271e+03 - 9.9678825e+01 -1.0158366e+03 -2.9485740e+03 - 5.0631575e+01 -1.0161994e+03 -2.9474198e+03 - 0.0000000e+00 -1.0163162e+03 -2.9470276e+03 - -5.0631575e+01 -1.0161994e+03 -2.9474198e+03 - -9.9678825e+01 -1.0158366e+03 -2.9485740e+03 - -1.4568914e+02 -1.0151925e+03 -2.9504271e+03 - -1.8744853e+02 -1.0142131e+03 -2.9528832e+03 - -2.2404700e+02 -1.0128317e+03 -2.9558255e+03 - -2.5489788e+02 -1.0109760e+03 -2.9591288e+03 - -2.7971775e+02 -1.0085734e+03 -2.9626701e+03 - -2.9848004e+02 -1.0055552e+03 -2.9663372e+03 - -3.1135647e+02 -1.0018598e+03 -2.9700331e+03 - -3.1865793e+02 -9.9743358e+02 -2.9736784e+03 - -3.2078221e+02 -9.9223131e+02 -2.9772111e+03 - -3.1817192e+02 -9.8621545e+02 -2.9805854e+03 - -3.1128331e+02 -9.7935540e+02 -2.9837693e+03 - -3.0056479e+02 -9.7162650e+02 -2.9867427e+03 - -2.8644333e+02 -9.6300911e+02 -2.9894944e+03 - -2.6931684e+02 -9.5348774e+02 -2.9920208e+03 - -2.4955063e+02 -9.4305039e+02 -2.9943238e+03 - -2.2747681e+02 -9.3168797e+02 -2.9964093e+03 - -2.0339538e+02 -9.1939395e+02 -2.9982862e+03 - -1.7757627e+02 -9.0616402e+02 -2.9999653e+03 - -1.5026196e+02 -8.9199589e+02 -3.0014588e+03 - -1.2167023e+02 -8.7688916e+02 -3.0027797e+03 - -9.1996857e+01 -8.6084527e+02 -3.0039411e+03 - -6.1418151e+01 -8.4386740e+02 -3.0049565e+03 - -3.0093284e+01 -8.2596055e+02 -3.0058388e+03 - 1.8336326e+00 -8.0713146e+02 -3.0066008e+03 - 3.4231716e+01 -7.8738873e+02 -3.0072547e+03 - 6.6981710e+01 -7.6674278e+02 -3.0078120e+03 - 9.9974596e+01 -7.4520598e+02 -3.0082835e+03 - 1.3311040e+02 -7.2279262e+02 -3.0086795e+03 - 1.6629718e+02 -6.9951904e+02 -3.0090092e+03 - 1.9945010e+02 -6.7540366e+02 -3.0092811e+03 - 2.3249075e+02 -6.5046705e+02 -3.0095028e+03 - 2.6534646e+02 -6.2473198e+02 -3.0096812e+03 - 2.9794974e+02 -5.9822355e+02 -3.0098220e+03 - 3.3023789e+02 -5.7096919e+02 -3.0099305e+03 - 3.6215251e+02 -5.4299883e+02 -3.0100105e+03 - 3.9363923e+02 -5.1434494e+02 -3.0100654e+03 - 4.2464740e+02 -4.8504263e+02 -3.0100975e+03 - 4.5512984e+02 -4.5512984e+02 -3.0101080e+03 - 4.8504263e+02 -4.2464740e+02 -3.0100975e+03 - 5.1434494e+02 -3.9363923e+02 -3.0100654e+03 - 5.4299883e+02 -3.6215251e+02 -3.0100105e+03 - 5.7096919e+02 -3.3023789e+02 -3.0099305e+03 - 5.9822355e+02 -2.9794974e+02 -3.0098220e+03 - 6.2473198e+02 -2.6534646e+02 -3.0096812e+03 - 6.5046705e+02 -2.3249075e+02 -3.0095028e+03 - 6.7540366e+02 -1.9945010e+02 -3.0092811e+03 - 6.9951904e+02 -1.6629718e+02 -3.0090092e+03 - 7.2279262e+02 -1.3311040e+02 -3.0086795e+03 - 7.4520598e+02 -9.9974596e+01 -3.0082835e+03 - 7.6674278e+02 -6.6981710e+01 -3.0078120e+03 - 7.8738873e+02 -3.4231716e+01 -3.0072547e+03 - 8.0713146e+02 -1.8336326e+00 -3.0066008e+03 - 8.2596055e+02 3.0093284e+01 -3.0058388e+03 - 8.4386740e+02 6.1418151e+01 -3.0049565e+03 - 8.6084527e+02 9.1996857e+01 -3.0039411e+03 - 8.7688916e+02 1.2167023e+02 -3.0027797e+03 - 8.9199589e+02 1.5026196e+02 -3.0014588e+03 - 9.0616402e+02 1.7757627e+02 -2.9999653e+03 - 9.1939395e+02 2.0339538e+02 -2.9982862e+03 - 9.3168797e+02 2.2747681e+02 -2.9964093e+03 - 9.4305039e+02 2.4955063e+02 -2.9943238e+03 - 9.5348774e+02 2.6931684e+02 -2.9920208e+03 - 9.6300911e+02 2.8644333e+02 -2.9894944e+03 - 9.7162650e+02 3.0056479e+02 -2.9867427e+03 - 9.7935540e+02 3.1128331e+02 -2.9837693e+03 - 9.8621545e+02 3.1817192e+02 -2.9805854e+03 - 9.9223131e+02 3.2078221e+02 -2.9772111e+03 - 9.9743358e+02 3.1865793e+02 -2.9736784e+03 - 1.0018598e+03 3.1135647e+02 -2.9700331e+03 - 1.0055552e+03 2.9848004e+02 -2.9663372e+03 - 1.0085734e+03 2.7971775e+02 -2.9626701e+03 - 1.0109760e+03 2.5489788e+02 -2.9591288e+03 - 1.0128317e+03 2.2404700e+02 -2.9558255e+03 - 1.0142131e+03 1.8744853e+02 -2.9528832e+03 - 1.0151925e+03 1.4568914e+02 -2.9504271e+03 - 1.0158366e+03 9.9678825e+01 -2.9485740e+03 - 1.0161994e+03 5.0631575e+01 -2.9474198e+03 - 1.0163162e+03 -2.4067136e-09 -2.9470276e+03 - 9.0835154e+02 2.4067136e-09 -3.0146616e+03 - 9.0826302e+02 -5.0115060e+01 -3.0150166e+03 - 9.0798435e+02 -9.8782079e+01 -3.0160634e+03 - 9.0747795e+02 -1.4466651e+02 -3.0177496e+03 - 9.0668634e+02 -1.8664058e+02 -3.0199953e+03 - 9.0553851e+02 -2.2384246e+02 -3.0227025e+03 - 9.0395690e+02 -2.5569687e+02 -3.0257644e+03 - 9.0186354e+02 -2.8190172e+02 -3.0290749e+03 - 8.9918485e+02 -3.0239107e+02 -3.0325352e+03 - 8.9585470e+02 -3.1728595e+02 -3.0360582e+03 - 8.9181596e+02 -3.2684291e+02 -3.0395711e+03 - 8.8702078e+02 -3.3140726e+02 -3.0430150e+03 - 8.8143017e+02 -3.3137424e+02 -3.0463449e+03 - 8.7501303e+02 -3.2715940e+02 -3.0495278e+03 - 8.6774507e+02 -3.1917737e+02 -3.0525408e+03 - 8.5960773e+02 -3.0782790e+02 -3.0553698e+03 - 8.5058718e+02 -2.9348739e+02 -3.0580072e+03 - 8.4067349e+02 -2.7650448e+02 -3.0604506e+03 - 8.2985995e+02 -2.5719849e+02 -3.0627017e+03 - 8.1814256e+02 -2.3585972e+02 -3.0647653e+03 - 8.0551964e+02 -2.1275080e+02 -3.0666481e+03 - 7.9199154e+02 -1.8810877e+02 -3.0683584e+03 - 7.7756046e+02 -1.6214730e+02 -3.0699055e+03 - 7.6223033e+02 -1.3505910e+02 -3.0712993e+03 - 7.4600676e+02 -1.0701814e+02 -3.0725497e+03 - 7.2889696e+02 -7.8181834e+01 -3.0736669e+03 - 7.1090981e+02 -4.8692886e+01 -3.0746609e+03 - 6.9205582e+02 -1.8681073e+01 -3.0755413e+03 - 6.7234720e+02 1.1735267e+01 -3.0763173e+03 - 6.5179791e+02 4.2447896e+01 -3.0769976e+03 - 6.3042369e+02 7.3357521e+01 -3.0775905e+03 - 6.0824217e+02 1.0437280e+02 -3.0781034e+03 - 5.8527286e+02 1.3540946e+02 -3.0785434e+03 - 5.6153731e+02 1.6638960e+02 -3.0789167e+03 - 5.3705912e+02 1.9724100e+02 -3.0792288e+03 - 5.1186405e+02 2.2789663e+02 -3.0794846e+03 - 4.8598010e+02 2.5829413e+02 -3.0796882e+03 - 4.5943761e+02 2.8837547e+02 -3.0798431e+03 - 4.3226936e+02 3.1808655e+02 -3.0799518e+03 - 4.0451068e+02 3.4737693e+02 -3.0800163e+03 - 3.7619959e+02 3.7619959e+02 -3.0800377e+03 - 3.4737693e+02 4.0451068e+02 -3.0800163e+03 - 3.1808655e+02 4.3226936e+02 -3.0799518e+03 - 2.8837547e+02 4.5943761e+02 -3.0798431e+03 - 2.5829413e+02 4.8598010e+02 -3.0796882e+03 - 2.2789663e+02 5.1186405e+02 -3.0794846e+03 - 1.9724100e+02 5.3705912e+02 -3.0792288e+03 - 1.6638960e+02 5.6153731e+02 -3.0789167e+03 - 1.3540946e+02 5.8527286e+02 -3.0785434e+03 - 1.0437280e+02 6.0824217e+02 -3.0781034e+03 - 7.3357521e+01 6.3042369e+02 -3.0775905e+03 - 4.2447896e+01 6.5179791e+02 -3.0769976e+03 - 1.1735267e+01 6.7234720e+02 -3.0763173e+03 - -1.8681073e+01 6.9205582e+02 -3.0755413e+03 - -4.8692886e+01 7.1090981e+02 -3.0746609e+03 - -7.8181834e+01 7.2889696e+02 -3.0736669e+03 - -1.0701814e+02 7.4600676e+02 -3.0725497e+03 - -1.3505910e+02 7.6223033e+02 -3.0712993e+03 - -1.6214730e+02 7.7756046e+02 -3.0699055e+03 - -1.8810877e+02 7.9199154e+02 -3.0683584e+03 - -2.1275080e+02 8.0551964e+02 -3.0666481e+03 - -2.3585972e+02 8.1814256e+02 -3.0647653e+03 - -2.5719849e+02 8.2985995e+02 -3.0627017e+03 - -2.7650448e+02 8.4067349e+02 -3.0604506e+03 - -2.9348739e+02 8.5058718e+02 -3.0580072e+03 - -3.0782790e+02 8.5960773e+02 -3.0553698e+03 - -3.1917737e+02 8.6774507e+02 -3.0525408e+03 - -3.2715940e+02 8.7501303e+02 -3.0495278e+03 - -3.3137424e+02 8.8143017e+02 -3.0463449e+03 - -3.3140726e+02 8.8702078e+02 -3.0430150e+03 - -3.2684291e+02 8.9181596e+02 -3.0395711e+03 - -3.1728595e+02 8.9585470e+02 -3.0360582e+03 - -3.0239107e+02 8.9918485e+02 -3.0325352e+03 - -2.8190172e+02 9.0186354e+02 -3.0290749e+03 - -2.5569687e+02 9.0395690e+02 -3.0257644e+03 - -2.2384246e+02 9.0553851e+02 -3.0227025e+03 - -1.8664058e+02 9.0668634e+02 -3.0199953e+03 - -1.4466651e+02 9.0747795e+02 -3.0177496e+03 - -9.8782079e+01 9.0798435e+02 -3.0160634e+03 - -5.0115060e+01 9.0826302e+02 -3.0150166e+03 - 7.2201409e-09 9.0835154e+02 -3.0146616e+03 - 5.0115060e+01 9.0826302e+02 -3.0150166e+03 - 9.8782079e+01 9.0798435e+02 -3.0160634e+03 - 1.4466651e+02 9.0747795e+02 -3.0177496e+03 - 1.8664058e+02 9.0668634e+02 -3.0199953e+03 - 2.2384246e+02 9.0553851e+02 -3.0227025e+03 - 2.5569687e+02 9.0395690e+02 -3.0257644e+03 - 2.8190172e+02 9.0186354e+02 -3.0290749e+03 - 3.0239107e+02 8.9918485e+02 -3.0325352e+03 - 3.1728595e+02 8.9585470e+02 -3.0360582e+03 - 3.2684291e+02 8.9181596e+02 -3.0395711e+03 - 3.3140726e+02 8.8702078e+02 -3.0430150e+03 - 3.3137424e+02 8.8143017e+02 -3.0463449e+03 - 3.2715940e+02 8.7501303e+02 -3.0495278e+03 - 3.1917737e+02 8.6774507e+02 -3.0525408e+03 - 3.0782790e+02 8.5960773e+02 -3.0553698e+03 - 2.9348739e+02 8.5058718e+02 -3.0580072e+03 - 2.7650448e+02 8.4067349e+02 -3.0604506e+03 - 2.5719849e+02 8.2985995e+02 -3.0627017e+03 - 2.3585972e+02 8.1814256e+02 -3.0647653e+03 - 2.1275080e+02 8.0551964e+02 -3.0666481e+03 - 1.8810877e+02 7.9199154e+02 -3.0683584e+03 - 1.6214730e+02 7.7756046e+02 -3.0699055e+03 - 1.3505910e+02 7.6223033e+02 -3.0712993e+03 - 1.0701814e+02 7.4600676e+02 -3.0725497e+03 - 7.8181834e+01 7.2889696e+02 -3.0736669e+03 - 4.8692886e+01 7.1090981e+02 -3.0746609e+03 - 1.8681073e+01 6.9205582e+02 -3.0755413e+03 - -1.1735267e+01 6.7234720e+02 -3.0763173e+03 - -4.2447896e+01 6.5179791e+02 -3.0769976e+03 - -7.3357521e+01 6.3042369e+02 -3.0775905e+03 - -1.0437280e+02 6.0824217e+02 -3.0781034e+03 - -1.3540946e+02 5.8527286e+02 -3.0785434e+03 - -1.6638960e+02 5.6153731e+02 -3.0789167e+03 - -1.9724100e+02 5.3705912e+02 -3.0792288e+03 - -2.2789663e+02 5.1186405e+02 -3.0794846e+03 - -2.5829413e+02 4.8598010e+02 -3.0796882e+03 - -2.8837547e+02 4.5943761e+02 -3.0798431e+03 - -3.1808655e+02 4.3226936e+02 -3.0799518e+03 - -3.4737693e+02 4.0451068e+02 -3.0800163e+03 - -3.7619959e+02 3.7619959e+02 -3.0800377e+03 - -4.0451068e+02 3.4737693e+02 -3.0800163e+03 - -4.3226936e+02 3.1808655e+02 -3.0799518e+03 - -4.5943761e+02 2.8837547e+02 -3.0798431e+03 - -4.8598010e+02 2.5829413e+02 -3.0796882e+03 - -5.1186405e+02 2.2789663e+02 -3.0794846e+03 - -5.3705912e+02 1.9724100e+02 -3.0792288e+03 - -5.6153731e+02 1.6638960e+02 -3.0789167e+03 - -5.8527286e+02 1.3540946e+02 -3.0785434e+03 - -6.0824217e+02 1.0437280e+02 -3.0781034e+03 - -6.3042369e+02 7.3357521e+01 -3.0775905e+03 - -6.5179791e+02 4.2447896e+01 -3.0769976e+03 - -6.7234720e+02 1.1735267e+01 -3.0763173e+03 - -6.9205582e+02 -1.8681073e+01 -3.0755413e+03 - -7.1090981e+02 -4.8692886e+01 -3.0746609e+03 - -7.2889696e+02 -7.8181834e+01 -3.0736669e+03 - -7.4600676e+02 -1.0701814e+02 -3.0725497e+03 - -7.6223033e+02 -1.3505910e+02 -3.0712993e+03 - -7.7756046e+02 -1.6214730e+02 -3.0699055e+03 - -7.9199154e+02 -1.8810877e+02 -3.0683584e+03 - -8.0551964e+02 -2.1275080e+02 -3.0666481e+03 - -8.1814256e+02 -2.3585972e+02 -3.0647653e+03 - -8.2985995e+02 -2.5719849e+02 -3.0627017e+03 - -8.4067349e+02 -2.7650448e+02 -3.0604506e+03 - -8.5058718e+02 -2.9348739e+02 -3.0580072e+03 - -8.5960773e+02 -3.0782790e+02 -3.0553698e+03 - -8.6774507e+02 -3.1917737e+02 -3.0525408e+03 - -8.7501303e+02 -3.2715940e+02 -3.0495278e+03 - -8.8143017e+02 -3.3137424e+02 -3.0463449e+03 - -8.8702078e+02 -3.3140726e+02 -3.0430150e+03 - -8.9181596e+02 -3.2684291e+02 -3.0395711e+03 - -8.9585470e+02 -3.1728595e+02 -3.0360582e+03 - -8.9918485e+02 -3.0239107e+02 -3.0325352e+03 - -9.0186354e+02 -2.8190172e+02 -3.0290749e+03 - -9.0395690e+02 -2.5569687e+02 -3.0257644e+03 - -9.0553851e+02 -2.2384246e+02 -3.0227025e+03 - -9.0668634e+02 -1.8664058e+02 -3.0199953e+03 - -9.0747795e+02 -1.4466651e+02 -3.0177496e+03 - -9.0798435e+02 -9.8782079e+01 -3.0160634e+03 - -9.0826302e+02 -5.0115060e+01 -3.0150166e+03 - -9.0835154e+02 0.0000000e+00 -3.0146616e+03 - -9.0826302e+02 5.0115060e+01 -3.0150166e+03 - -9.0798435e+02 9.8782079e+01 -3.0160634e+03 - -9.0747795e+02 1.4466651e+02 -3.0177496e+03 - -9.0668634e+02 1.8664058e+02 -3.0199953e+03 - -9.0553851e+02 2.2384246e+02 -3.0227025e+03 - -9.0395690e+02 2.5569687e+02 -3.0257644e+03 - -9.0186354e+02 2.8190172e+02 -3.0290749e+03 - -8.9918485e+02 3.0239107e+02 -3.0325352e+03 - -8.9585470e+02 3.1728595e+02 -3.0360582e+03 - -8.9181596e+02 3.2684291e+02 -3.0395711e+03 - -8.8702078e+02 3.3140726e+02 -3.0430150e+03 - -8.8143017e+02 3.3137424e+02 -3.0463449e+03 - -8.7501303e+02 3.2715940e+02 -3.0495278e+03 - -8.6774507e+02 3.1917737e+02 -3.0525408e+03 - -8.5960773e+02 3.0782790e+02 -3.0553698e+03 - -8.5058718e+02 2.9348739e+02 -3.0580072e+03 - -8.4067349e+02 2.7650448e+02 -3.0604506e+03 - -8.2985995e+02 2.5719849e+02 -3.0627017e+03 - -8.1814256e+02 2.3585972e+02 -3.0647653e+03 - -8.0551964e+02 2.1275080e+02 -3.0666481e+03 - -7.9199154e+02 1.8810877e+02 -3.0683584e+03 - -7.7756046e+02 1.6214730e+02 -3.0699055e+03 - -7.6223033e+02 1.3505910e+02 -3.0712993e+03 - -7.4600676e+02 1.0701814e+02 -3.0725497e+03 - -7.2889696e+02 7.8181834e+01 -3.0736669e+03 - -7.1090981e+02 4.8692886e+01 -3.0746609e+03 - -6.9205582e+02 1.8681073e+01 -3.0755413e+03 - -6.7234720e+02 -1.1735267e+01 -3.0763173e+03 - -6.5179791e+02 -4.2447896e+01 -3.0769976e+03 - -6.3042369e+02 -7.3357521e+01 -3.0775905e+03 - -6.0824217e+02 -1.0437280e+02 -3.0781034e+03 - -5.8527286e+02 -1.3540946e+02 -3.0785434e+03 - -5.6153731e+02 -1.6638960e+02 -3.0789167e+03 - -5.3705912e+02 -1.9724100e+02 -3.0792288e+03 - -5.1186405e+02 -2.2789663e+02 -3.0794846e+03 - -4.8598010e+02 -2.5829413e+02 -3.0796882e+03 - -4.5943761e+02 -2.8837547e+02 -3.0798431e+03 - -4.3226936e+02 -3.1808655e+02 -3.0799518e+03 - -4.0451068e+02 -3.4737693e+02 -3.0800163e+03 - -3.7619959e+02 -3.7619959e+02 -3.0800377e+03 - -3.4737693e+02 -4.0451068e+02 -3.0800163e+03 - -3.1808655e+02 -4.3226936e+02 -3.0799518e+03 - -2.8837547e+02 -4.5943761e+02 -3.0798431e+03 - -2.5829413e+02 -4.8598010e+02 -3.0796882e+03 - -2.2789663e+02 -5.1186405e+02 -3.0794846e+03 - -1.9724100e+02 -5.3705912e+02 -3.0792288e+03 - -1.6638960e+02 -5.6153731e+02 -3.0789167e+03 - -1.3540946e+02 -5.8527286e+02 -3.0785434e+03 - -1.0437280e+02 -6.0824217e+02 -3.0781034e+03 - -7.3357521e+01 -6.3042369e+02 -3.0775905e+03 - -4.2447896e+01 -6.5179791e+02 -3.0769976e+03 - -1.1735267e+01 -6.7234720e+02 -3.0763173e+03 - 1.8681073e+01 -6.9205582e+02 -3.0755413e+03 - 4.8692886e+01 -7.1090981e+02 -3.0746609e+03 - 7.8181834e+01 -7.2889696e+02 -3.0736669e+03 - 1.0701814e+02 -7.4600676e+02 -3.0725497e+03 - 1.3505910e+02 -7.6223033e+02 -3.0712993e+03 - 1.6214730e+02 -7.7756046e+02 -3.0699055e+03 - 1.8810877e+02 -7.9199154e+02 -3.0683584e+03 - 2.1275080e+02 -8.0551964e+02 -3.0666481e+03 - 2.3585972e+02 -8.1814256e+02 -3.0647653e+03 - 2.5719849e+02 -8.2985995e+02 -3.0627017e+03 - 2.7650448e+02 -8.4067349e+02 -3.0604506e+03 - 2.9348739e+02 -8.5058718e+02 -3.0580072e+03 - 3.0782790e+02 -8.5960773e+02 -3.0553698e+03 - 3.1917737e+02 -8.6774507e+02 -3.0525408e+03 - 3.2715940e+02 -8.7501303e+02 -3.0495278e+03 - 3.3137424e+02 -8.8143017e+02 -3.0463449e+03 - 3.3140726e+02 -8.8702078e+02 -3.0430150e+03 - 3.2684291e+02 -8.9181596e+02 -3.0395711e+03 - 3.1728595e+02 -8.9585470e+02 -3.0360582e+03 - 3.0239107e+02 -8.9918485e+02 -3.0325352e+03 - 2.8190172e+02 -9.0186354e+02 -3.0290749e+03 - 2.5569687e+02 -9.0395690e+02 -3.0257644e+03 - 2.2384246e+02 -9.0553851e+02 -3.0227025e+03 - 1.8664058e+02 -9.0668634e+02 -3.0199953e+03 - 1.4466651e+02 -9.0747795e+02 -3.0177496e+03 - 9.8782079e+01 -9.0798435e+02 -3.0160634e+03 - 5.0115060e+01 -9.0826302e+02 -3.0150166e+03 - -7.2201409e-09 -9.0835154e+02 -3.0146616e+03 - -5.0115060e+01 -9.0826302e+02 -3.0150166e+03 - -9.8782079e+01 -9.0798435e+02 -3.0160634e+03 - -1.4466651e+02 -9.0747795e+02 -3.0177496e+03 - -1.8664058e+02 -9.0668634e+02 -3.0199953e+03 - -2.2384246e+02 -9.0553851e+02 -3.0227025e+03 - -2.5569687e+02 -9.0395690e+02 -3.0257644e+03 - -2.8190172e+02 -9.0186354e+02 -3.0290749e+03 - -3.0239107e+02 -8.9918485e+02 -3.0325352e+03 - -3.1728595e+02 -8.9585470e+02 -3.0360582e+03 - -3.2684291e+02 -8.9181596e+02 -3.0395711e+03 - -3.3140726e+02 -8.8702078e+02 -3.0430150e+03 - -3.3137424e+02 -8.8143017e+02 -3.0463449e+03 - -3.2715940e+02 -8.7501303e+02 -3.0495278e+03 - -3.1917737e+02 -8.6774507e+02 -3.0525408e+03 - -3.0782790e+02 -8.5960773e+02 -3.0553698e+03 - -2.9348739e+02 -8.5058718e+02 -3.0580072e+03 - -2.7650448e+02 -8.4067349e+02 -3.0604506e+03 - -2.5719849e+02 -8.2985995e+02 -3.0627017e+03 - -2.3585972e+02 -8.1814256e+02 -3.0647653e+03 - -2.1275080e+02 -8.0551964e+02 -3.0666481e+03 - -1.8810877e+02 -7.9199154e+02 -3.0683584e+03 - -1.6214730e+02 -7.7756046e+02 -3.0699055e+03 - -1.3505910e+02 -7.6223033e+02 -3.0712993e+03 - -1.0701814e+02 -7.4600676e+02 -3.0725497e+03 - -7.8181834e+01 -7.2889696e+02 -3.0736669e+03 - -4.8692886e+01 -7.1090981e+02 -3.0746609e+03 - -1.8681073e+01 -6.9205582e+02 -3.0755413e+03 - 1.1735267e+01 -6.7234720e+02 -3.0763173e+03 - 4.2447896e+01 -6.5179791e+02 -3.0769976e+03 - 7.3357521e+01 -6.3042369e+02 -3.0775905e+03 - 1.0437280e+02 -6.0824217e+02 -3.0781034e+03 - 1.3540946e+02 -5.8527286e+02 -3.0785434e+03 - 1.6638960e+02 -5.6153731e+02 -3.0789167e+03 - 1.9724100e+02 -5.3705912e+02 -3.0792288e+03 - 2.2789663e+02 -5.1186405e+02 -3.0794846e+03 - 2.5829413e+02 -4.8598010e+02 -3.0796882e+03 - 2.8837547e+02 -4.5943761e+02 -3.0798431e+03 - 3.1808655e+02 -4.3226936e+02 -3.0799518e+03 - 3.4737693e+02 -4.0451068e+02 -3.0800163e+03 - 3.7619959e+02 -3.7619959e+02 -3.0800377e+03 - 4.0451068e+02 -3.4737693e+02 -3.0800163e+03 - 4.3226936e+02 -3.1808655e+02 -3.0799518e+03 - 4.5943761e+02 -2.8837547e+02 -3.0798431e+03 - 4.8598010e+02 -2.5829413e+02 -3.0796882e+03 - 5.1186405e+02 -2.2789663e+02 -3.0794846e+03 - 5.3705912e+02 -1.9724100e+02 -3.0792288e+03 - 5.6153731e+02 -1.6638960e+02 -3.0789167e+03 - 5.8527286e+02 -1.3540946e+02 -3.0785434e+03 - 6.0824217e+02 -1.0437280e+02 -3.0781034e+03 - 6.3042369e+02 -7.3357521e+01 -3.0775905e+03 - 6.5179791e+02 -4.2447896e+01 -3.0769976e+03 - 6.7234720e+02 -1.1735267e+01 -3.0763173e+03 - 6.9205582e+02 1.8681073e+01 -3.0755413e+03 - 7.1090981e+02 4.8692886e+01 -3.0746609e+03 - 7.2889696e+02 7.8181834e+01 -3.0736669e+03 - 7.4600676e+02 1.0701814e+02 -3.0725497e+03 - 7.6223033e+02 1.3505910e+02 -3.0712993e+03 - 7.7756046e+02 1.6214730e+02 -3.0699055e+03 - 7.9199154e+02 1.8810877e+02 -3.0683584e+03 - 8.0551964e+02 2.1275080e+02 -3.0666481e+03 - 8.1814256e+02 2.3585972e+02 -3.0647653e+03 - 8.2985995e+02 2.5719849e+02 -3.0627017e+03 - 8.4067349e+02 2.7650448e+02 -3.0604506e+03 - 8.5058718e+02 2.9348739e+02 -3.0580072e+03 - 8.5960773e+02 3.0782790e+02 -3.0553698e+03 - 8.6774507e+02 3.1917737e+02 -3.0525408e+03 - 8.7501303e+02 3.2715940e+02 -3.0495278e+03 - 8.8143017e+02 3.3137424e+02 -3.0463449e+03 - 8.8702078e+02 3.3140726e+02 -3.0430150e+03 - 8.9181596e+02 3.2684291e+02 -3.0395711e+03 - 8.9585470e+02 3.1728595e+02 -3.0360582e+03 - 8.9918485e+02 3.0239107e+02 -3.0325352e+03 - 9.0186354e+02 2.8190172e+02 -3.0290749e+03 - 9.0395690e+02 2.5569687e+02 -3.0257644e+03 - 9.0553851e+02 2.2384246e+02 -3.0227025e+03 - 9.0668634e+02 1.8664058e+02 -3.0199953e+03 - 9.0747795e+02 1.4466651e+02 -3.0177496e+03 - 9.0798435e+02 9.8782079e+01 -3.0160634e+03 - 9.0826302e+02 5.0115060e+01 -3.0150166e+03 - 9.0835154e+02 -2.4067136e-09 -3.0146616e+03 - 8.0204255e+02 0.0000000e+00 -3.0783877e+03 - 8.0197892e+02 -4.9652664e+01 -3.0787100e+03 - 8.0177457e+02 -9.7977493e+01 -3.0796619e+03 - 8.0139074e+02 -1.4374509e+02 -3.0811998e+03 - 8.0076798e+02 -1.8590636e+02 -3.0832569e+03 - 7.9983260e+02 -2.2364598e+02 -3.0857503e+03 - 7.9850376e+02 -2.5640349e+02 -3.0885889e+03 - 7.9669987e+02 -2.8386500e+02 -3.0916810e+03 - 7.9434367e+02 -3.0593357e+02 -3.0949397e+03 - 7.9136562e+02 -3.2268786e+02 -3.0982872e+03 - 7.8770566e+02 -3.3433744e+02 -3.1016565e+03 - 7.8331373e+02 -3.4118094e+02 -3.1049927e+03 - 7.7814935e+02 -3.4357047e+02 -3.1082521e+03 - 7.7218076e+02 -3.4188364e+02 -3.1114014e+03 - 7.6538370e+02 -3.3650296e+02 -3.1144164e+03 - 7.5774029e+02 -3.2780170e+02 -3.1172803e+03 - 7.4923791e+02 -3.1613485e+02 -3.1199827e+03 - 7.3986822e+02 -3.0183409e+02 -3.1225178e+03 - 7.2962642e+02 -2.8520541e+02 -3.1248840e+03 - 7.1851064e+02 -2.6652875e+02 -3.1270825e+03 - 7.0652141e+02 -2.4605870e+02 -3.1291166e+03 - 6.9366135e+02 -2.2402610e+02 -3.1309913e+03 - 6.7993496e+02 -2.0063981e+02 -3.1327126e+03 - 6.6534836e+02 -1.7608880e+02 -3.1342875e+03 - 6.4990930e+02 -1.5054413e+02 -3.1357231e+03 - 6.3362703e+02 -1.2416085e+02 -3.1370270e+03 - 6.1651229e+02 -9.7079793e+01 -3.1382066e+03 - 5.9857738e+02 -6.9429166e+01 -3.1392692e+03 - 5.7983609e+02 -4.1325992e+01 -3.1402221e+03 - 5.6030385e+02 -1.2877374e+01 -3.1410720e+03 - 5.3999771e+02 1.5818397e+01 -3.1418254e+03 - 5.1893642e+02 4.4670873e+01 -3.1424882e+03 - 4.9714052e+02 7.3596603e+01 -3.1430661e+03 - 4.7463240e+02 1.0251842e+02 -3.1435639e+03 - 4.5143636e+02 1.3136478e+02 -3.1439861e+03 - 4.2757875e+02 1.6006928e+02 -3.1443367e+03 - 4.0308802e+02 1.8857012e+02 -3.1446190e+03 - 3.7799481e+02 2.1680976e+02 -3.1448357e+03 - 3.5233211e+02 2.4473454e+02 -3.1449890e+03 - 3.2613535e+02 2.7229437e+02 -3.1450803e+03 - 2.9944252e+02 2.9944252e+02 -3.1451107e+03 - 2.7229437e+02 3.2613535e+02 -3.1450803e+03 - 2.4473454e+02 3.5233211e+02 -3.1449890e+03 - 2.1680976e+02 3.7799481e+02 -3.1448357e+03 - 1.8857012e+02 4.0308802e+02 -3.1446190e+03 - 1.6006928e+02 4.2757875e+02 -3.1443367e+03 - 1.3136478e+02 4.5143636e+02 -3.1439861e+03 - 1.0251842e+02 4.7463240e+02 -3.1435639e+03 - 7.3596603e+01 4.9714052e+02 -3.1430661e+03 - 4.4670873e+01 5.1893642e+02 -3.1424882e+03 - 1.5818397e+01 5.3999771e+02 -3.1418254e+03 - -1.2877374e+01 5.6030385e+02 -3.1410720e+03 - -4.1325992e+01 5.7983609e+02 -3.1402221e+03 - -6.9429166e+01 5.9857738e+02 -3.1392692e+03 - -9.7079793e+01 6.1651229e+02 -3.1382066e+03 - -1.2416085e+02 6.3362703e+02 -3.1370270e+03 - -1.5054413e+02 6.4990930e+02 -3.1357231e+03 - -1.7608880e+02 6.6534836e+02 -3.1342875e+03 - -2.0063981e+02 6.7993496e+02 -3.1327126e+03 - -2.2402610e+02 6.9366135e+02 -3.1309913e+03 - -2.4605870e+02 7.0652141e+02 -3.1291166e+03 - -2.6652875e+02 7.1851064e+02 -3.1270825e+03 - -2.8520541e+02 7.2962642e+02 -3.1248840e+03 - -3.0183409e+02 7.3986822e+02 -3.1225178e+03 - -3.1613485e+02 7.4923791e+02 -3.1199827e+03 - -3.2780170e+02 7.5774029e+02 -3.1172803e+03 - -3.3650296e+02 7.6538370e+02 -3.1144164e+03 - -3.4188364e+02 7.7218076e+02 -3.1114014e+03 - -3.4357047e+02 7.7814935e+02 -3.1082521e+03 - -3.4118094e+02 7.8331373e+02 -3.1049927e+03 - -3.3433744e+02 7.8770566e+02 -3.1016565e+03 - -3.2268786e+02 7.9136562e+02 -3.0982872e+03 - -3.0593357e+02 7.9434367e+02 -3.0949397e+03 - -2.8386500e+02 7.9669987e+02 -3.0916810e+03 - -2.5640349e+02 7.9850376e+02 -3.0885889e+03 - -2.2364598e+02 7.9983260e+02 -3.0857503e+03 - -1.8590636e+02 8.0076798e+02 -3.0832569e+03 - -1.4374509e+02 8.0139074e+02 -3.0811998e+03 - -9.7977493e+01 8.0177457e+02 -3.0796619e+03 - -4.9652664e+01 8.0197892e+02 -3.0787100e+03 - 0.0000000e+00 8.0204255e+02 -3.0783877e+03 - 4.9652664e+01 8.0197892e+02 -3.0787100e+03 - 9.7977493e+01 8.0177457e+02 -3.0796619e+03 - 1.4374509e+02 8.0139074e+02 -3.0811998e+03 - 1.8590636e+02 8.0076798e+02 -3.0832569e+03 - 2.2364598e+02 7.9983260e+02 -3.0857503e+03 - 2.5640349e+02 7.9850376e+02 -3.0885889e+03 - 2.8386500e+02 7.9669987e+02 -3.0916810e+03 - 3.0593357e+02 7.9434367e+02 -3.0949397e+03 - 3.2268786e+02 7.9136562e+02 -3.0982872e+03 - 3.3433744e+02 7.8770566e+02 -3.1016565e+03 - 3.4118094e+02 7.8331373e+02 -3.1049927e+03 - 3.4357047e+02 7.7814935e+02 -3.1082521e+03 - 3.4188364e+02 7.7218076e+02 -3.1114014e+03 - 3.3650296e+02 7.6538370e+02 -3.1144164e+03 - 3.2780170e+02 7.5774029e+02 -3.1172803e+03 - 3.1613485e+02 7.4923791e+02 -3.1199827e+03 - 3.0183409e+02 7.3986822e+02 -3.1225178e+03 - 2.8520541e+02 7.2962643e+02 -3.1248840e+03 - 2.6652875e+02 7.1851064e+02 -3.1270825e+03 - 2.4605870e+02 7.0652141e+02 -3.1291166e+03 - 2.2402610e+02 6.9366135e+02 -3.1309913e+03 - 2.0063981e+02 6.7993496e+02 -3.1327126e+03 - 1.7608880e+02 6.6534836e+02 -3.1342875e+03 - 1.5054413e+02 6.4990930e+02 -3.1357231e+03 - 1.2416085e+02 6.3362703e+02 -3.1370270e+03 - 9.7079793e+01 6.1651229e+02 -3.1382066e+03 - 6.9429166e+01 5.9857738e+02 -3.1392692e+03 - 4.1325992e+01 5.7983609e+02 -3.1402221e+03 - 1.2877374e+01 5.6030385e+02 -3.1410720e+03 - -1.5818397e+01 5.3999771e+02 -3.1418254e+03 - -4.4670873e+01 5.1893642e+02 -3.1424882e+03 - -7.3596603e+01 4.9714052e+02 -3.1430661e+03 - -1.0251842e+02 4.7463240e+02 -3.1435639e+03 - -1.3136478e+02 4.5143636e+02 -3.1439861e+03 - -1.6006928e+02 4.2757875e+02 -3.1443367e+03 - -1.8857012e+02 4.0308802e+02 -3.1446190e+03 - -2.1680976e+02 3.7799481e+02 -3.1448357e+03 - -2.4473454e+02 3.5233211e+02 -3.1449890e+03 - -2.7229437e+02 3.2613535e+02 -3.1450803e+03 - -2.9944252e+02 2.9944252e+02 -3.1451107e+03 - -3.2613535e+02 2.7229437e+02 -3.1450803e+03 - -3.5233211e+02 2.4473454e+02 -3.1449890e+03 - -3.7799481e+02 2.1680976e+02 -3.1448357e+03 - -4.0308802e+02 1.8857012e+02 -3.1446190e+03 - -4.2757875e+02 1.6006928e+02 -3.1443367e+03 - -4.5143636e+02 1.3136478e+02 -3.1439861e+03 - -4.7463240e+02 1.0251842e+02 -3.1435639e+03 - -4.9714052e+02 7.3596603e+01 -3.1430661e+03 - -5.1893642e+02 4.4670873e+01 -3.1424882e+03 - -5.3999771e+02 1.5818397e+01 -3.1418254e+03 - -5.6030385e+02 -1.2877374e+01 -3.1410720e+03 - -5.7983609e+02 -4.1325992e+01 -3.1402221e+03 - -5.9857738e+02 -6.9429166e+01 -3.1392692e+03 - -6.1651229e+02 -9.7079793e+01 -3.1382066e+03 - -6.3362703e+02 -1.2416085e+02 -3.1370270e+03 - -6.4990930e+02 -1.5054413e+02 -3.1357231e+03 - -6.6534836e+02 -1.7608880e+02 -3.1342875e+03 - -6.7993496e+02 -2.0063981e+02 -3.1327126e+03 - -6.9366135e+02 -2.2402610e+02 -3.1309913e+03 - -7.0652141e+02 -2.4605870e+02 -3.1291166e+03 - -7.1851064e+02 -2.6652875e+02 -3.1270825e+03 - -7.2962642e+02 -2.8520541e+02 -3.1248840e+03 - -7.3986822e+02 -3.0183409e+02 -3.1225178e+03 - -7.4923791e+02 -3.1613485e+02 -3.1199827e+03 - -7.5774029e+02 -3.2780170e+02 -3.1172803e+03 - -7.6538370e+02 -3.3650296e+02 -3.1144164e+03 - -7.7218076e+02 -3.4188364e+02 -3.1114014e+03 - -7.7814935e+02 -3.4357047e+02 -3.1082521e+03 - -7.8331373e+02 -3.4118094e+02 -3.1049927e+03 - -7.8770566e+02 -3.3433744e+02 -3.1016565e+03 - -7.9136562e+02 -3.2268786e+02 -3.0982872e+03 - -7.9434367e+02 -3.0593357e+02 -3.0949397e+03 - -7.9669987e+02 -2.8386500e+02 -3.0916810e+03 - -7.9850376e+02 -2.5640349e+02 -3.0885889e+03 - -7.9983260e+02 -2.2364598e+02 -3.0857503e+03 - -8.0076798e+02 -1.8590636e+02 -3.0832569e+03 - -8.0139074e+02 -1.4374509e+02 -3.0811998e+03 - -8.0177457e+02 -9.7977493e+01 -3.0796619e+03 - -8.0197892e+02 -4.9652664e+01 -3.0787100e+03 - -8.0204255e+02 2.4067136e-09 -3.0783877e+03 - -8.0197892e+02 4.9652664e+01 -3.0787100e+03 - -8.0177457e+02 9.7977493e+01 -3.0796619e+03 - -8.0139074e+02 1.4374509e+02 -3.0811998e+03 - -8.0076798e+02 1.8590636e+02 -3.0832569e+03 - -7.9983260e+02 2.2364598e+02 -3.0857503e+03 - -7.9850376e+02 2.5640349e+02 -3.0885889e+03 - -7.9669987e+02 2.8386500e+02 -3.0916810e+03 - -7.9434367e+02 3.0593357e+02 -3.0949397e+03 - -7.9136562e+02 3.2268786e+02 -3.0982872e+03 - -7.8770566e+02 3.3433744e+02 -3.1016565e+03 - -7.8331373e+02 3.4118094e+02 -3.1049927e+03 - -7.7814935e+02 3.4357047e+02 -3.1082521e+03 - -7.7218076e+02 3.4188364e+02 -3.1114014e+03 - -7.6538370e+02 3.3650296e+02 -3.1144164e+03 - -7.5774029e+02 3.2780170e+02 -3.1172803e+03 - -7.4923791e+02 3.1613485e+02 -3.1199827e+03 - -7.3986822e+02 3.0183409e+02 -3.1225178e+03 - -7.2962642e+02 2.8520541e+02 -3.1248840e+03 - -7.1851064e+02 2.6652875e+02 -3.1270825e+03 - -7.0652141e+02 2.4605870e+02 -3.1291166e+03 - -6.9366135e+02 2.2402610e+02 -3.1309913e+03 - -6.7993496e+02 2.0063981e+02 -3.1327126e+03 - -6.6534836e+02 1.7608880e+02 -3.1342875e+03 - -6.4990930e+02 1.5054413e+02 -3.1357231e+03 - -6.3362703e+02 1.2416085e+02 -3.1370270e+03 - -6.1651229e+02 9.7079793e+01 -3.1382066e+03 - -5.9857738e+02 6.9429166e+01 -3.1392692e+03 - -5.7983609e+02 4.1325992e+01 -3.1402221e+03 - -5.6030385e+02 1.2877374e+01 -3.1410720e+03 - -5.3999771e+02 -1.5818397e+01 -3.1418254e+03 - -5.1893642e+02 -4.4670873e+01 -3.1424882e+03 - -4.9714052e+02 -7.3596603e+01 -3.1430661e+03 - -4.7463240e+02 -1.0251842e+02 -3.1435639e+03 - -4.5143636e+02 -1.3136478e+02 -3.1439861e+03 - -4.2757875e+02 -1.6006928e+02 -3.1443367e+03 - -4.0308802e+02 -1.8857012e+02 -3.1446190e+03 - -3.7799481e+02 -2.1680976e+02 -3.1448357e+03 - -3.5233211e+02 -2.4473454e+02 -3.1449890e+03 - -3.2613535e+02 -2.7229437e+02 -3.1450803e+03 - -2.9944252e+02 -2.9944252e+02 -3.1451107e+03 - -2.7229437e+02 -3.2613535e+02 -3.1450803e+03 - -2.4473454e+02 -3.5233211e+02 -3.1449890e+03 - -2.1680976e+02 -3.7799481e+02 -3.1448357e+03 - -1.8857012e+02 -4.0308802e+02 -3.1446190e+03 - -1.6006928e+02 -4.2757875e+02 -3.1443367e+03 - -1.3136478e+02 -4.5143636e+02 -3.1439861e+03 - -1.0251842e+02 -4.7463240e+02 -3.1435639e+03 - -7.3596603e+01 -4.9714052e+02 -3.1430661e+03 - -4.4670873e+01 -5.1893642e+02 -3.1424882e+03 - -1.5818397e+01 -5.3999771e+02 -3.1418254e+03 - 1.2877374e+01 -5.6030385e+02 -3.1410720e+03 - 4.1325992e+01 -5.7983609e+02 -3.1402221e+03 - 6.9429166e+01 -5.9857738e+02 -3.1392692e+03 - 9.7079793e+01 -6.1651229e+02 -3.1382066e+03 - 1.2416085e+02 -6.3362703e+02 -3.1370270e+03 - 1.5054413e+02 -6.4990930e+02 -3.1357231e+03 - 1.7608880e+02 -6.6534836e+02 -3.1342875e+03 - 2.0063981e+02 -6.7993496e+02 -3.1327126e+03 - 2.2402610e+02 -6.9366135e+02 -3.1309913e+03 - 2.4605870e+02 -7.0652141e+02 -3.1291166e+03 - 2.6652875e+02 -7.1851064e+02 -3.1270825e+03 - 2.8520541e+02 -7.2962642e+02 -3.1248840e+03 - 3.0183409e+02 -7.3986822e+02 -3.1225178e+03 - 3.1613485e+02 -7.4923791e+02 -3.1199827e+03 - 3.2780170e+02 -7.5774029e+02 -3.1172803e+03 - 3.3650296e+02 -7.6538370e+02 -3.1144164e+03 - 3.4188364e+02 -7.7218076e+02 -3.1114014e+03 - 3.4357047e+02 -7.7814935e+02 -3.1082521e+03 - 3.4118094e+02 -7.8331373e+02 -3.1049927e+03 - 3.3433744e+02 -7.8770566e+02 -3.1016565e+03 - 3.2268786e+02 -7.9136562e+02 -3.0982872e+03 - 3.0593357e+02 -7.9434367e+02 -3.0949397e+03 - 2.8386500e+02 -7.9669987e+02 -3.0916810e+03 - 2.5640349e+02 -7.9850376e+02 -3.0885889e+03 - 2.2364598e+02 -7.9983260e+02 -3.0857503e+03 - 1.8590636e+02 -8.0076798e+02 -3.0832569e+03 - 1.4374509e+02 -8.0139074e+02 -3.0811998e+03 - 9.7977493e+01 -8.0177457e+02 -3.0796619e+03 - 4.9652664e+01 -8.0197892e+02 -3.0787100e+03 - 0.0000000e+00 -8.0204255e+02 -3.0783877e+03 - -4.9652664e+01 -8.0197892e+02 -3.0787100e+03 - -9.7977493e+01 -8.0177457e+02 -3.0796619e+03 - -1.4374509e+02 -8.0139074e+02 -3.0811998e+03 - -1.8590636e+02 -8.0076798e+02 -3.0832569e+03 - -2.2364598e+02 -7.9983260e+02 -3.0857503e+03 - -2.5640349e+02 -7.9850376e+02 -3.0885889e+03 - -2.8386500e+02 -7.9669987e+02 -3.0916810e+03 - -3.0593357e+02 -7.9434367e+02 -3.0949397e+03 - -3.2268786e+02 -7.9136562e+02 -3.0982872e+03 - -3.3433744e+02 -7.8770566e+02 -3.1016565e+03 - -3.4118094e+02 -7.8331373e+02 -3.1049927e+03 - -3.4357047e+02 -7.7814935e+02 -3.1082521e+03 - -3.4188364e+02 -7.7218076e+02 -3.1114014e+03 - -3.3650296e+02 -7.6538370e+02 -3.1144164e+03 - -3.2780170e+02 -7.5774029e+02 -3.1172803e+03 - -3.1613485e+02 -7.4923791e+02 -3.1199827e+03 - -3.0183409e+02 -7.3986822e+02 -3.1225178e+03 - -2.8520541e+02 -7.2962643e+02 -3.1248840e+03 - -2.6652875e+02 -7.1851064e+02 -3.1270825e+03 - -2.4605870e+02 -7.0652141e+02 -3.1291166e+03 - -2.2402610e+02 -6.9366135e+02 -3.1309913e+03 - -2.0063981e+02 -6.7993496e+02 -3.1327126e+03 - -1.7608880e+02 -6.6534836e+02 -3.1342875e+03 - -1.5054413e+02 -6.4990930e+02 -3.1357231e+03 - -1.2416085e+02 -6.3362703e+02 -3.1370270e+03 - -9.7079793e+01 -6.1651229e+02 -3.1382066e+03 - -6.9429166e+01 -5.9857738e+02 -3.1392692e+03 - -4.1325992e+01 -5.7983609e+02 -3.1402221e+03 - -1.2877374e+01 -5.6030385e+02 -3.1410720e+03 - 1.5818397e+01 -5.3999771e+02 -3.1418254e+03 - 4.4670873e+01 -5.1893642e+02 -3.1424882e+03 - 7.3596603e+01 -4.9714052e+02 -3.1430661e+03 - 1.0251842e+02 -4.7463240e+02 -3.1435639e+03 - 1.3136478e+02 -4.5143636e+02 -3.1439861e+03 - 1.6006928e+02 -4.2757875e+02 -3.1443367e+03 - 1.8857012e+02 -4.0308802e+02 -3.1446190e+03 - 2.1680976e+02 -3.7799481e+02 -3.1448357e+03 - 2.4473454e+02 -3.5233211e+02 -3.1449890e+03 - 2.7229437e+02 -3.2613535e+02 -3.1450803e+03 - 2.9944252e+02 -2.9944252e+02 -3.1451107e+03 - 3.2613535e+02 -2.7229437e+02 -3.1450803e+03 - 3.5233211e+02 -2.4473454e+02 -3.1449890e+03 - 3.7799481e+02 -2.1680976e+02 -3.1448357e+03 - 4.0308802e+02 -1.8857012e+02 -3.1446190e+03 - 4.2757875e+02 -1.6006928e+02 -3.1443367e+03 - 4.5143636e+02 -1.3136478e+02 -3.1439861e+03 - 4.7463240e+02 -1.0251842e+02 -3.1435639e+03 - 4.9714052e+02 -7.3596603e+01 -3.1430661e+03 - 5.1893642e+02 -4.4670873e+01 -3.1424882e+03 - 5.3999771e+02 -1.5818397e+01 -3.1418254e+03 - 5.6030385e+02 1.2877374e+01 -3.1410720e+03 - 5.7983609e+02 4.1325992e+01 -3.1402221e+03 - 5.9857738e+02 6.9429166e+01 -3.1392692e+03 - 6.1651229e+02 9.7079793e+01 -3.1382066e+03 - 6.3362703e+02 1.2416085e+02 -3.1370270e+03 - 6.4990930e+02 1.5054413e+02 -3.1357231e+03 - 6.6534836e+02 1.7608880e+02 -3.1342875e+03 - 6.7993496e+02 2.0063981e+02 -3.1327126e+03 - 6.9366135e+02 2.2402610e+02 -3.1309913e+03 - 7.0652141e+02 2.4605870e+02 -3.1291166e+03 - 7.1851064e+02 2.6652875e+02 -3.1270825e+03 - 7.2962642e+02 2.8520541e+02 -3.1248840e+03 - 7.3986822e+02 3.0183409e+02 -3.1225178e+03 - 7.4923791e+02 3.1613485e+02 -3.1199827e+03 - 7.5774029e+02 3.2780170e+02 -3.1172803e+03 - 7.6538370e+02 3.3650296e+02 -3.1144164e+03 - 7.7218076e+02 3.4188364e+02 -3.1114014e+03 - 7.7814935e+02 3.4357047e+02 -3.1082521e+03 - 7.8331373e+02 3.4118094e+02 -3.1049927e+03 - 7.8770566e+02 3.3433744e+02 -3.1016565e+03 - 7.9136562e+02 3.2268786e+02 -3.0982872e+03 - 7.9434367e+02 3.0593357e+02 -3.0949397e+03 - 7.9669987e+02 2.8386500e+02 -3.0916810e+03 - 7.9850376e+02 2.5640349e+02 -3.0885889e+03 - 7.9983260e+02 2.2364598e+02 -3.0857503e+03 - 8.0076798e+02 1.8590636e+02 -3.0832569e+03 - 8.0139074e+02 1.4374509e+02 -3.0811998e+03 - 8.0177457e+02 9.7977493e+01 -3.0796619e+03 - 8.0197892e+02 4.9652664e+01 -3.0787100e+03 - 8.0204255e+02 -2.4067136e-09 -3.0783877e+03 - 6.9779630e+02 0.0000000e+00 -3.1381278e+03 - 6.9775484e+02 -4.9220455e+01 -3.1384210e+03 - 6.9761688e+02 -9.7219939e+01 -3.1392882e+03 - 6.9734323e+02 -1.4286337e+02 -3.1406928e+03 - 6.9687360e+02 -1.8517369e+02 -3.1425788e+03 - 6.9613300e+02 -2.2338028e+02 -3.1448760e+03 - 6.9503873e+02 -2.5693993e+02 -3.1475064e+03 - 6.9350698e+02 -2.8553228e+02 -3.1503906e+03 - 6.9145799e+02 -3.0903626e+02 -3.1534524e+03 - 6.8881971e+02 -3.2749525e+02 -3.1566220e+03 - 6.8552980e+02 -3.4107818e+02 -3.1598387e+03 - 6.8153634e+02 -3.5004226e+02 -3.1630513e+03 - 6.7679750e+02 -3.5470040e+02 -3.1662179e+03 - 6.7128075e+02 -3.5539503e+02 -3.1693058e+03 - 6.6496167e+02 -3.5247821e+02 -3.1722898e+03 - 6.5782275e+02 -3.4629762e+02 -3.1751517e+03 - 6.4985217e+02 -3.3718718e+02 -3.1778787e+03 - 6.4104284e+02 -3.2546149e+02 -3.1804626e+03 - 6.3139147e+02 -3.1141285e+02 -3.1828990e+03 - 6.2089788e+02 -2.9531031e+02 -3.1851861e+03 - 6.0956450e+02 -2.7739985e+02 -3.1873245e+03 - 5.9739587e+02 -2.5790547e+02 -3.1893163e+03 - 5.8439843e+02 -2.3703062e+02 -3.1911649e+03 - 5.7058026e+02 -2.1495995e+02 -3.1928746e+03 - 5.5595097e+02 -1.9186103e+02 -3.1944501e+03 - 5.4052158e+02 -1.6788608e+02 -3.1958965e+03 - 5.2430455e+02 -1.4317359e+02 -3.1972193e+03 - 5.0731371e+02 -1.1784980e+02 -3.1984238e+03 - 4.8956430e+02 -9.2030048e+01 -3.1995152e+03 - 4.7107303e+02 -6.5819960e+01 -3.2004987e+03 - 4.5185811e+02 -3.9316533e+01 -3.2013792e+03 - 4.3193931e+02 -1.2609052e+01 -3.2021612e+03 - 4.1133804e+02 1.4220087e+01 -3.2028490e+03 - 3.9007741e+02 4.1094671e+01 -3.2034465e+03 - 3.6818234e+02 6.7944049e+01 -3.2039571e+03 - 3.4567963e+02 9.4702597e+01 -3.2043839e+03 - 3.2259805e+02 1.2130926e+02 -3.2047295e+03 - 2.9896849e+02 1.4770712e+02 -3.2049960e+03 - 2.7482400e+02 1.7384312e+02 -3.2051852e+03 - 2.5020001e+02 1.9966765e+02 -3.2052983e+03 - 2.2513439e+02 2.2513439e+02 -3.2053359e+03 - 1.9966765e+02 2.5020001e+02 -3.2052983e+03 - 1.7384312e+02 2.7482400e+02 -3.2051852e+03 - 1.4770712e+02 2.9896849e+02 -3.2049960e+03 - 1.2130926e+02 3.2259805e+02 -3.2047295e+03 - 9.4702597e+01 3.4567963e+02 -3.2043839e+03 - 6.7944049e+01 3.6818234e+02 -3.2039571e+03 - 4.1094671e+01 3.9007741e+02 -3.2034465e+03 - 1.4220087e+01 4.1133804e+02 -3.2028490e+03 - -1.2609052e+01 4.3193931e+02 -3.2021612e+03 - -3.9316533e+01 4.5185811e+02 -3.2013792e+03 - -6.5819960e+01 4.7107303e+02 -3.2004987e+03 - -9.2030048e+01 4.8956430e+02 -3.1995152e+03 - -1.1784980e+02 5.0731371e+02 -3.1984238e+03 - -1.4317359e+02 5.2430455e+02 -3.1972193e+03 - -1.6788608e+02 5.4052158e+02 -3.1958965e+03 - -1.9186103e+02 5.5595097e+02 -3.1944501e+03 - -2.1495995e+02 5.7058026e+02 -3.1928746e+03 - -2.3703062e+02 5.8439843e+02 -3.1911649e+03 - -2.5790547e+02 5.9739587e+02 -3.1893163e+03 - -2.7739985e+02 6.0956450e+02 -3.1873245e+03 - -2.9531031e+02 6.2089788e+02 -3.1851861e+03 - -3.1141285e+02 6.3139147e+02 -3.1828990e+03 - -3.2546149e+02 6.4104284e+02 -3.1804626e+03 - -3.3718718e+02 6.4985217e+02 -3.1778787e+03 - -3.4629762e+02 6.5782275e+02 -3.1751517e+03 - -3.5247821e+02 6.6496167e+02 -3.1722898e+03 - -3.5539503e+02 6.7128075e+02 -3.1693058e+03 - -3.5470040e+02 6.7679750e+02 -3.1662179e+03 - -3.5004226e+02 6.8153634e+02 -3.1630513e+03 - -3.4107818e+02 6.8552980e+02 -3.1598387e+03 - -3.2749525e+02 6.8881971e+02 -3.1566220e+03 - -3.0903626e+02 6.9145799e+02 -3.1534524e+03 - -2.8553228e+02 6.9350698e+02 -3.1503906e+03 - -2.5693993e+02 6.9503873e+02 -3.1475064e+03 - -2.2338028e+02 6.9613300e+02 -3.1448760e+03 - -1.8517369e+02 6.9687360e+02 -3.1425788e+03 - -1.4286337e+02 6.9734323e+02 -3.1406928e+03 - -9.7219939e+01 6.9761688e+02 -3.1392882e+03 - -4.9220455e+01 6.9775484e+02 -3.1384210e+03 - 0.0000000e+00 6.9779630e+02 -3.1381278e+03 - 4.9220455e+01 6.9775484e+02 -3.1384210e+03 - 9.7219939e+01 6.9761688e+02 -3.1392882e+03 - 1.4286337e+02 6.9734323e+02 -3.1406928e+03 - 1.8517369e+02 6.9687360e+02 -3.1425788e+03 - 2.2338028e+02 6.9613300e+02 -3.1448760e+03 - 2.5693993e+02 6.9503873e+02 -3.1475064e+03 - 2.8553228e+02 6.9350698e+02 -3.1503906e+03 - 3.0903626e+02 6.9145799e+02 -3.1534524e+03 - 3.2749525e+02 6.8881971e+02 -3.1566220e+03 - 3.4107818e+02 6.8552980e+02 -3.1598387e+03 - 3.5004226e+02 6.8153634e+02 -3.1630513e+03 - 3.5470040e+02 6.7679750e+02 -3.1662179e+03 - 3.5539503e+02 6.7128075e+02 -3.1693058e+03 - 3.5247821e+02 6.6496167e+02 -3.1722898e+03 - 3.4629762e+02 6.5782275e+02 -3.1751517e+03 - 3.3718718e+02 6.4985217e+02 -3.1778787e+03 - 3.2546149e+02 6.4104284e+02 -3.1804626e+03 - 3.1141285e+02 6.3139147e+02 -3.1828990e+03 - 2.9531031e+02 6.2089788e+02 -3.1851861e+03 - 2.7739985e+02 6.0956450e+02 -3.1873245e+03 - 2.5790547e+02 5.9739587e+02 -3.1893163e+03 - 2.3703062e+02 5.8439843e+02 -3.1911649e+03 - 2.1495995e+02 5.7058026e+02 -3.1928746e+03 - 1.9186103e+02 5.5595097e+02 -3.1944501e+03 - 1.6788608e+02 5.4052158e+02 -3.1958965e+03 - 1.4317359e+02 5.2430455e+02 -3.1972193e+03 - 1.1784980e+02 5.0731371e+02 -3.1984238e+03 - 9.2030048e+01 4.8956430e+02 -3.1995152e+03 - 6.5819960e+01 4.7107303e+02 -3.2004987e+03 - 3.9316533e+01 4.5185811e+02 -3.2013792e+03 - 1.2609052e+01 4.3193931e+02 -3.2021612e+03 - -1.4220087e+01 4.1133804e+02 -3.2028490e+03 - -4.1094671e+01 3.9007741e+02 -3.2034465e+03 - -6.7944049e+01 3.6818234e+02 -3.2039571e+03 - -9.4702597e+01 3.4567963e+02 -3.2043839e+03 - -1.2130926e+02 3.2259805e+02 -3.2047295e+03 - -1.4770712e+02 2.9896849e+02 -3.2049960e+03 - -1.7384312e+02 2.7482400e+02 -3.2051852e+03 - -1.9966765e+02 2.5020001e+02 -3.2052983e+03 - -2.2513439e+02 2.2513439e+02 -3.2053359e+03 - -2.5020001e+02 1.9966765e+02 -3.2052983e+03 - -2.7482400e+02 1.7384312e+02 -3.2051852e+03 - -2.9896849e+02 1.4770712e+02 -3.2049960e+03 - -3.2259805e+02 1.2130926e+02 -3.2047295e+03 - -3.4567963e+02 9.4702597e+01 -3.2043839e+03 - -3.6818234e+02 6.7944049e+01 -3.2039571e+03 - -3.9007741e+02 4.1094671e+01 -3.2034465e+03 - -4.1133804e+02 1.4220087e+01 -3.2028490e+03 - -4.3193931e+02 -1.2609052e+01 -3.2021612e+03 - -4.5185811e+02 -3.9316533e+01 -3.2013792e+03 - -4.7107303e+02 -6.5819960e+01 -3.2004987e+03 - -4.8956430e+02 -9.2030048e+01 -3.1995152e+03 - -5.0731371e+02 -1.1784980e+02 -3.1984238e+03 - -5.2430455e+02 -1.4317359e+02 -3.1972193e+03 - -5.4052158e+02 -1.6788608e+02 -3.1958965e+03 - -5.5595097e+02 -1.9186103e+02 -3.1944501e+03 - -5.7058026e+02 -2.1495995e+02 -3.1928746e+03 - -5.8439843e+02 -2.3703062e+02 -3.1911649e+03 - -5.9739587e+02 -2.5790547e+02 -3.1893163e+03 - -6.0956450e+02 -2.7739985e+02 -3.1873245e+03 - -6.2089788e+02 -2.9531031e+02 -3.1851861e+03 - -6.3139147e+02 -3.1141285e+02 -3.1828990e+03 - -6.4104284e+02 -3.2546149e+02 -3.1804626e+03 - -6.4985217e+02 -3.3718718e+02 -3.1778787e+03 - -6.5782275e+02 -3.4629762e+02 -3.1751517e+03 - -6.6496167e+02 -3.5247821e+02 -3.1722898e+03 - -6.7128075e+02 -3.5539503e+02 -3.1693058e+03 - -6.7679750e+02 -3.5470040e+02 -3.1662179e+03 - -6.8153634e+02 -3.5004226e+02 -3.1630513e+03 - -6.8552980e+02 -3.4107818e+02 -3.1598387e+03 - -6.8881971e+02 -3.2749525e+02 -3.1566220e+03 - -6.9145799e+02 -3.0903626e+02 -3.1534524e+03 - -6.9350698e+02 -2.8553228e+02 -3.1503906e+03 - -6.9503873e+02 -2.5693993e+02 -3.1475064e+03 - -6.9613300e+02 -2.2338028e+02 -3.1448760e+03 - -6.9687360e+02 -1.8517369e+02 -3.1425788e+03 - -6.9734323e+02 -1.4286337e+02 -3.1406928e+03 - -6.9761688e+02 -9.7219939e+01 -3.1392882e+03 - -6.9775484e+02 -4.9220455e+01 -3.1384210e+03 - -6.9779630e+02 2.4067136e-09 -3.1381278e+03 - -6.9775484e+02 4.9220455e+01 -3.1384210e+03 - -6.9761688e+02 9.7219939e+01 -3.1392882e+03 - -6.9734323e+02 1.4286337e+02 -3.1406928e+03 - -6.9687360e+02 1.8517369e+02 -3.1425788e+03 - -6.9613300e+02 2.2338028e+02 -3.1448760e+03 - -6.9503873e+02 2.5693993e+02 -3.1475064e+03 - -6.9350698e+02 2.8553228e+02 -3.1503906e+03 - -6.9145799e+02 3.0903626e+02 -3.1534524e+03 - -6.8881971e+02 3.2749525e+02 -3.1566220e+03 - -6.8552980e+02 3.4107818e+02 -3.1598387e+03 - -6.8153634e+02 3.5004226e+02 -3.1630513e+03 - -6.7679750e+02 3.5470040e+02 -3.1662179e+03 - -6.7128075e+02 3.5539503e+02 -3.1693058e+03 - -6.6496167e+02 3.5247821e+02 -3.1722898e+03 - -6.5782275e+02 3.4629762e+02 -3.1751517e+03 - -6.4985217e+02 3.3718718e+02 -3.1778787e+03 - -6.4104284e+02 3.2546149e+02 -3.1804626e+03 - -6.3139147e+02 3.1141285e+02 -3.1828990e+03 - -6.2089788e+02 2.9531031e+02 -3.1851861e+03 - -6.0956450e+02 2.7739985e+02 -3.1873245e+03 - -5.9739587e+02 2.5790547e+02 -3.1893163e+03 - -5.8439843e+02 2.3703062e+02 -3.1911649e+03 - -5.7058026e+02 2.1495995e+02 -3.1928746e+03 - -5.5595097e+02 1.9186103e+02 -3.1944501e+03 - -5.4052158e+02 1.6788608e+02 -3.1958965e+03 - -5.2430455e+02 1.4317359e+02 -3.1972193e+03 - -5.0731371e+02 1.1784980e+02 -3.1984238e+03 - -4.8956430e+02 9.2030048e+01 -3.1995152e+03 - -4.7107303e+02 6.5819960e+01 -3.2004987e+03 - -4.5185811e+02 3.9316533e+01 -3.2013792e+03 - -4.3193931e+02 1.2609052e+01 -3.2021612e+03 - -4.1133804e+02 -1.4220087e+01 -3.2028490e+03 - -3.9007741e+02 -4.1094671e+01 -3.2034465e+03 - -3.6818234e+02 -6.7944049e+01 -3.2039571e+03 - -3.4567963e+02 -9.4702597e+01 -3.2043839e+03 - -3.2259805e+02 -1.2130926e+02 -3.2047295e+03 - -2.9896849e+02 -1.4770712e+02 -3.2049960e+03 - -2.7482400e+02 -1.7384312e+02 -3.2051852e+03 - -2.5020001e+02 -1.9966765e+02 -3.2052983e+03 - -2.2513439e+02 -2.2513439e+02 -3.2053359e+03 - -1.9966765e+02 -2.5020001e+02 -3.2052983e+03 - -1.7384312e+02 -2.7482400e+02 -3.2051852e+03 - -1.4770712e+02 -2.9896849e+02 -3.2049960e+03 - -1.2130926e+02 -3.2259805e+02 -3.2047295e+03 - -9.4702597e+01 -3.4567963e+02 -3.2043839e+03 - -6.7944049e+01 -3.6818234e+02 -3.2039571e+03 - -4.1094671e+01 -3.9007741e+02 -3.2034465e+03 - -1.4220087e+01 -4.1133804e+02 -3.2028490e+03 - 1.2609052e+01 -4.3193931e+02 -3.2021612e+03 - 3.9316533e+01 -4.5185811e+02 -3.2013792e+03 - 6.5819960e+01 -4.7107303e+02 -3.2004987e+03 - 9.2030048e+01 -4.8956430e+02 -3.1995152e+03 - 1.1784980e+02 -5.0731371e+02 -3.1984238e+03 - 1.4317359e+02 -5.2430455e+02 -3.1972193e+03 - 1.6788608e+02 -5.4052158e+02 -3.1958965e+03 - 1.9186103e+02 -5.5595097e+02 -3.1944501e+03 - 2.1495995e+02 -5.7058026e+02 -3.1928746e+03 - 2.3703062e+02 -5.8439843e+02 -3.1911649e+03 - 2.5790547e+02 -5.9739587e+02 -3.1893163e+03 - 2.7739985e+02 -6.0956450e+02 -3.1873245e+03 - 2.9531031e+02 -6.2089788e+02 -3.1851861e+03 - 3.1141285e+02 -6.3139147e+02 -3.1828990e+03 - 3.2546149e+02 -6.4104284e+02 -3.1804626e+03 - 3.3718718e+02 -6.4985217e+02 -3.1778787e+03 - 3.4629762e+02 -6.5782275e+02 -3.1751517e+03 - 3.5247821e+02 -6.6496167e+02 -3.1722898e+03 - 3.5539503e+02 -6.7128075e+02 -3.1693058e+03 - 3.5470040e+02 -6.7679750e+02 -3.1662179e+03 - 3.5004226e+02 -6.8153634e+02 -3.1630513e+03 - 3.4107818e+02 -6.8552980e+02 -3.1598387e+03 - 3.2749525e+02 -6.8881971e+02 -3.1566220e+03 - 3.0903626e+02 -6.9145799e+02 -3.1534524e+03 - 2.8553228e+02 -6.9350698e+02 -3.1503906e+03 - 2.5693993e+02 -6.9503873e+02 -3.1475064e+03 - 2.2338028e+02 -6.9613300e+02 -3.1448760e+03 - 1.8517369e+02 -6.9687360e+02 -3.1425788e+03 - 1.4286337e+02 -6.9734323e+02 -3.1406928e+03 - 9.7219939e+01 -6.9761688e+02 -3.1392882e+03 - 4.9220455e+01 -6.9775484e+02 -3.1384210e+03 - -4.8134273e-09 -6.9779630e+02 -3.1381278e+03 - -4.9220455e+01 -6.9775484e+02 -3.1384210e+03 - -9.7219939e+01 -6.9761688e+02 -3.1392882e+03 - -1.4286337e+02 -6.9734323e+02 -3.1406928e+03 - -1.8517369e+02 -6.9687360e+02 -3.1425788e+03 - -2.2338028e+02 -6.9613300e+02 -3.1448760e+03 - -2.5693993e+02 -6.9503873e+02 -3.1475064e+03 - -2.8553228e+02 -6.9350698e+02 -3.1503906e+03 - -3.0903626e+02 -6.9145799e+02 -3.1534524e+03 - -3.2749525e+02 -6.8881971e+02 -3.1566220e+03 - -3.4107818e+02 -6.8552980e+02 -3.1598387e+03 - -3.5004226e+02 -6.8153634e+02 -3.1630513e+03 - -3.5470040e+02 -6.7679750e+02 -3.1662179e+03 - -3.5539503e+02 -6.7128075e+02 -3.1693058e+03 - -3.5247821e+02 -6.6496167e+02 -3.1722898e+03 - -3.4629762e+02 -6.5782275e+02 -3.1751517e+03 - -3.3718718e+02 -6.4985217e+02 -3.1778787e+03 - -3.2546149e+02 -6.4104284e+02 -3.1804626e+03 - -3.1141285e+02 -6.3139147e+02 -3.1828990e+03 - -2.9531031e+02 -6.2089788e+02 -3.1851861e+03 - -2.7739985e+02 -6.0956450e+02 -3.1873245e+03 - -2.5790547e+02 -5.9739587e+02 -3.1893163e+03 - -2.3703062e+02 -5.8439843e+02 -3.1911649e+03 - -2.1495995e+02 -5.7058026e+02 -3.1928746e+03 - -1.9186103e+02 -5.5595097e+02 -3.1944501e+03 - -1.6788608e+02 -5.4052158e+02 -3.1958965e+03 - -1.4317359e+02 -5.2430455e+02 -3.1972193e+03 - -1.1784980e+02 -5.0731371e+02 -3.1984238e+03 - -9.2030048e+01 -4.8956430e+02 -3.1995152e+03 - -6.5819960e+01 -4.7107303e+02 -3.2004987e+03 - -3.9316533e+01 -4.5185811e+02 -3.2013792e+03 - -1.2609052e+01 -4.3193931e+02 -3.2021612e+03 - 1.4220087e+01 -4.1133804e+02 -3.2028490e+03 - 4.1094671e+01 -3.9007741e+02 -3.2034465e+03 - 6.7944049e+01 -3.6818234e+02 -3.2039571e+03 - 9.4702597e+01 -3.4567963e+02 -3.2043839e+03 - 1.2130926e+02 -3.2259805e+02 -3.2047295e+03 - 1.4770712e+02 -2.9896849e+02 -3.2049960e+03 - 1.7384312e+02 -2.7482400e+02 -3.2051852e+03 - 1.9966765e+02 -2.5020001e+02 -3.2052983e+03 - 2.2513439e+02 -2.2513439e+02 -3.2053359e+03 - 2.5020001e+02 -1.9966765e+02 -3.2052983e+03 - 2.7482400e+02 -1.7384312e+02 -3.2051852e+03 - 2.9896849e+02 -1.4770712e+02 -3.2049960e+03 - 3.2259805e+02 -1.2130926e+02 -3.2047295e+03 - 3.4567963e+02 -9.4702597e+01 -3.2043839e+03 - 3.6818234e+02 -6.7944049e+01 -3.2039571e+03 - 3.9007741e+02 -4.1094671e+01 -3.2034465e+03 - 4.1133804e+02 -1.4220087e+01 -3.2028490e+03 - 4.3193931e+02 1.2609052e+01 -3.2021612e+03 - 4.5185811e+02 3.9316533e+01 -3.2013792e+03 - 4.7107303e+02 6.5819960e+01 -3.2004987e+03 - 4.8956430e+02 9.2030048e+01 -3.1995152e+03 - 5.0731371e+02 1.1784980e+02 -3.1984238e+03 - 5.2430455e+02 1.4317359e+02 -3.1972193e+03 - 5.4052158e+02 1.6788608e+02 -3.1958965e+03 - 5.5595097e+02 1.9186103e+02 -3.1944501e+03 - 5.7058026e+02 2.1495995e+02 -3.1928746e+03 - 5.8439843e+02 2.3703062e+02 -3.1911649e+03 - 5.9739587e+02 2.5790547e+02 -3.1893163e+03 - 6.0956450e+02 2.7739985e+02 -3.1873245e+03 - 6.2089788e+02 2.9531031e+02 -3.1851861e+03 - 6.3139147e+02 3.1141285e+02 -3.1828990e+03 - 6.4104284e+02 3.2546149e+02 -3.1804626e+03 - 6.4985217e+02 3.3718718e+02 -3.1778787e+03 - 6.5782275e+02 3.4629762e+02 -3.1751517e+03 - 6.6496167e+02 3.5247821e+02 -3.1722898e+03 - 6.7128075e+02 3.5539503e+02 -3.1693058e+03 - 6.7679750e+02 3.5470040e+02 -3.1662179e+03 - 6.8153634e+02 3.5004226e+02 -3.1630513e+03 - 6.8552980e+02 3.4107818e+02 -3.1598387e+03 - 6.8881971e+02 3.2749525e+02 -3.1566220e+03 - 6.9145799e+02 3.0903626e+02 -3.1534524e+03 - 6.9350698e+02 2.8553228e+02 -3.1503906e+03 - 6.9503873e+02 2.5693993e+02 -3.1475064e+03 - 6.9613300e+02 2.2338028e+02 -3.1448760e+03 - 6.9687360e+02 1.8517369e+02 -3.1425788e+03 - 6.9734323e+02 1.4286337e+02 -3.1406928e+03 - 6.9761688e+02 9.7219939e+01 -3.1392882e+03 - 6.9775484e+02 4.9220455e+01 -3.1384210e+03 - 6.9779630e+02 -2.4067136e-09 -3.1381278e+03 - 5.9602100e+02 7.2201409e-09 -3.1938273e+03 - 5.9599946e+02 -4.8797408e+01 -3.1940944e+03 - 5.9592130e+02 -9.6469539e+01 -3.1948850e+03 - 5.9574746e+02 -1.4196644e+02 -3.1961687e+03 - 5.9541765e+02 -1.8437730e+02 -3.1978982e+03 - 5.9485663e+02 -2.2297434e+02 -3.2000137e+03 - 5.9398103e+02 -2.5723323e+02 -3.2024487e+03 - 5.9270587e+02 -2.8683139e+02 -3.2051342e+03 - 5.9094994e+02 -3.1162927e+02 -3.2080032e+03 - 5.8863950e+02 -3.3164093e+02 -3.2109937e+03 - 5.8571054e+02 -3.4700027e+02 -3.2140505e+03 - 5.8210963e+02 -3.5792773e+02 -3.2171263e+03 - 5.7779379e+02 -3.6470073e+02 -3.2201815e+03 - 5.7272973e+02 -3.6762909e+02 -3.2231842e+03 - 5.6689274e+02 -3.6703618e+02 -3.2261091e+03 - 5.6026543e+02 -3.6324508e+02 -3.2289369e+03 - 5.5283655e+02 -3.5656909e+02 -3.2316534e+03 - 5.4459988e+02 -3.4730579e+02 -3.2342484e+03 - 5.3555329e+02 -3.3573358e+02 -3.2367154e+03 - 5.2569801e+02 -3.2211024e+02 -3.2390502e+03 - 5.1503796e+02 -3.0667265e+02 -3.2412511e+03 - 5.0357933e+02 -2.8963746e+02 -3.2433179e+03 - 4.9133019e+02 -2.7120219e+02 -3.2452517e+03 - 4.7830030e+02 -2.5154665e+02 -3.2470545e+03 - 4.6450086e+02 -2.3083445e+02 -3.2487290e+03 - 4.4994447e+02 -2.0921452e+02 -3.2502784e+03 - 4.3464504e+02 -1.8682260e+02 -3.2517060e+03 - 4.1861776e+02 -1.6378257e+02 -3.2530156e+03 - 4.0187914e+02 -1.4020775e+02 -3.2542108e+03 - 3.8444700e+02 -1.1620198e+02 -3.2552952e+03 - 3.6634057e+02 -9.1860700e+01 -3.2562722e+03 - 3.4758048e+02 -6.7271772e+01 -3.2571454e+03 - 3.2818888e+02 -4.2516315e+01 -3.2579177e+03 - 3.0818949e+02 -1.7669380e+01 -3.2585921e+03 - 2.8760770e+02 7.1994436e+00 -3.2591711e+03 - 2.6647067e+02 3.2025501e+01 -3.2596571e+03 - 2.4480740e+02 5.6748611e+01 -3.2600520e+03 - 2.2264887e+02 8.1312668e+01 -3.2603574e+03 - 2.0002813e+02 1.0566529e+02 -3.2605747e+03 - 1.7698047e+02 1.2975752e+02 -3.2607046e+03 - 1.5354354e+02 1.5354354e+02 -3.2607479e+03 - 1.2975752e+02 1.7698047e+02 -3.2607046e+03 - 1.0566529e+02 2.0002813e+02 -3.2605747e+03 - 8.1312668e+01 2.2264887e+02 -3.2603574e+03 - 5.6748611e+01 2.4480740e+02 -3.2600520e+03 - 3.2025501e+01 2.6647067e+02 -3.2596571e+03 - 7.1994436e+00 2.8760770e+02 -3.2591711e+03 - -1.7669380e+01 3.0818949e+02 -3.2585921e+03 - -4.2516315e+01 3.2818888e+02 -3.2579177e+03 - -6.7271772e+01 3.4758048e+02 -3.2571454e+03 - -9.1860700e+01 3.6634057e+02 -3.2562722e+03 - -1.1620198e+02 3.8444700e+02 -3.2552952e+03 - -1.4020775e+02 4.0187914e+02 -3.2542108e+03 - -1.6378257e+02 4.1861776e+02 -3.2530156e+03 - -1.8682260e+02 4.3464504e+02 -3.2517060e+03 - -2.0921452e+02 4.4994448e+02 -3.2502784e+03 - -2.3083445e+02 4.6450086e+02 -3.2487290e+03 - -2.5154665e+02 4.7830030e+02 -3.2470545e+03 - -2.7120219e+02 4.9133019e+02 -3.2452517e+03 - -2.8963746e+02 5.0357933e+02 -3.2433179e+03 - -3.0667265e+02 5.1503796e+02 -3.2412511e+03 - -3.2211024e+02 5.2569801e+02 -3.2390502e+03 - -3.3573358e+02 5.3555329e+02 -3.2367154e+03 - -3.4730579e+02 5.4459988e+02 -3.2342484e+03 - -3.5656909e+02 5.5283655e+02 -3.2316534e+03 - -3.6324508e+02 5.6026543e+02 -3.2289369e+03 - -3.6703618e+02 5.6689274e+02 -3.2261091e+03 - -3.6762909e+02 5.7272973e+02 -3.2231842e+03 - -3.6470073e+02 5.7779379e+02 -3.2201815e+03 - -3.5792773e+02 5.8210963e+02 -3.2171263e+03 - -3.4700026e+02 5.8571054e+02 -3.2140505e+03 - -3.3164093e+02 5.8863950e+02 -3.2109937e+03 - -3.1162927e+02 5.9094994e+02 -3.2080032e+03 - -2.8683139e+02 5.9270587e+02 -3.2051342e+03 - -2.5723323e+02 5.9398103e+02 -3.2024487e+03 - -2.2297434e+02 5.9485663e+02 -3.2000137e+03 - -1.8437730e+02 5.9541765e+02 -3.1978982e+03 - -1.4196644e+02 5.9574746e+02 -3.1961687e+03 - -9.6469539e+01 5.9592130e+02 -3.1948850e+03 - -4.8797408e+01 5.9599946e+02 -3.1940944e+03 - 7.2201409e-09 5.9602100e+02 -3.1938273e+03 - 4.8797408e+01 5.9599946e+02 -3.1940944e+03 - 9.6469539e+01 5.9592130e+02 -3.1948850e+03 - 1.4196644e+02 5.9574746e+02 -3.1961687e+03 - 1.8437730e+02 5.9541765e+02 -3.1978982e+03 - 2.2297434e+02 5.9485663e+02 -3.2000137e+03 - 2.5723323e+02 5.9398103e+02 -3.2024487e+03 - 2.8683139e+02 5.9270587e+02 -3.2051342e+03 - 3.1162927e+02 5.9094994e+02 -3.2080032e+03 - 3.3164093e+02 5.8863950e+02 -3.2109937e+03 - 3.4700027e+02 5.8571054e+02 -3.2140505e+03 - 3.5792773e+02 5.8210963e+02 -3.2171263e+03 - 3.6470073e+02 5.7779379e+02 -3.2201815e+03 - 3.6762909e+02 5.7272973e+02 -3.2231842e+03 - 3.6703618e+02 5.6689274e+02 -3.2261091e+03 - 3.6324508e+02 5.6026543e+02 -3.2289369e+03 - 3.5656909e+02 5.5283655e+02 -3.2316534e+03 - 3.4730579e+02 5.4459988e+02 -3.2342484e+03 - 3.3573358e+02 5.3555329e+02 -3.2367154e+03 - 3.2211024e+02 5.2569801e+02 -3.2390502e+03 - 3.0667265e+02 5.1503796e+02 -3.2412511e+03 - 2.8963746e+02 5.0357933e+02 -3.2433179e+03 - 2.7120219e+02 4.9133019e+02 -3.2452517e+03 - 2.5154665e+02 4.7830030e+02 -3.2470545e+03 - 2.3083445e+02 4.6450086e+02 -3.2487290e+03 - 2.0921452e+02 4.4994448e+02 -3.2502784e+03 - 1.8682260e+02 4.3464504e+02 -3.2517060e+03 - 1.6378257e+02 4.1861776e+02 -3.2530156e+03 - 1.4020775e+02 4.0187914e+02 -3.2542108e+03 - 1.1620198e+02 3.8444700e+02 -3.2552952e+03 - 9.1860700e+01 3.6634057e+02 -3.2562722e+03 - 6.7271772e+01 3.4758048e+02 -3.2571454e+03 - 4.2516315e+01 3.2818888e+02 -3.2579177e+03 - 1.7669380e+01 3.0818949e+02 -3.2585921e+03 - -7.1994436e+00 2.8760770e+02 -3.2591711e+03 - -3.2025501e+01 2.6647067e+02 -3.2596571e+03 - -5.6748611e+01 2.4480740e+02 -3.2600520e+03 - -8.1312668e+01 2.2264887e+02 -3.2603574e+03 - -1.0566529e+02 2.0002813e+02 -3.2605747e+03 - -1.2975752e+02 1.7698047e+02 -3.2607046e+03 - -1.5354354e+02 1.5354354e+02 -3.2607479e+03 - -1.7698047e+02 1.2975752e+02 -3.2607046e+03 - -2.0002813e+02 1.0566529e+02 -3.2605747e+03 - -2.2264887e+02 8.1312668e+01 -3.2603574e+03 - -2.4480740e+02 5.6748611e+01 -3.2600520e+03 - -2.6647067e+02 3.2025501e+01 -3.2596571e+03 - -2.8760770e+02 7.1994436e+00 -3.2591711e+03 - -3.0818949e+02 -1.7669380e+01 -3.2585921e+03 - -3.2818888e+02 -4.2516315e+01 -3.2579177e+03 - -3.4758048e+02 -6.7271772e+01 -3.2571454e+03 - -3.6634057e+02 -9.1860700e+01 -3.2562722e+03 - -3.8444700e+02 -1.1620198e+02 -3.2552952e+03 - -4.0187914e+02 -1.4020775e+02 -3.2542108e+03 - -4.1861776e+02 -1.6378257e+02 -3.2530156e+03 - -4.3464504e+02 -1.8682260e+02 -3.2517060e+03 - -4.4994447e+02 -2.0921452e+02 -3.2502784e+03 - -4.6450086e+02 -2.3083445e+02 -3.2487290e+03 - -4.7830030e+02 -2.5154665e+02 -3.2470545e+03 - -4.9133019e+02 -2.7120219e+02 -3.2452517e+03 - -5.0357933e+02 -2.8963746e+02 -3.2433179e+03 - -5.1503796e+02 -3.0667265e+02 -3.2412511e+03 - -5.2569801e+02 -3.2211024e+02 -3.2390502e+03 - -5.3555329e+02 -3.3573358e+02 -3.2367154e+03 - -5.4459988e+02 -3.4730579e+02 -3.2342484e+03 - -5.5283655e+02 -3.5656909e+02 -3.2316534e+03 - -5.6026543e+02 -3.6324508e+02 -3.2289369e+03 - -5.6689274e+02 -3.6703618e+02 -3.2261091e+03 - -5.7272973e+02 -3.6762909e+02 -3.2231842e+03 - -5.7779379e+02 -3.6470073e+02 -3.2201815e+03 - -5.8210963e+02 -3.5792773e+02 -3.2171263e+03 - -5.8571054e+02 -3.4700027e+02 -3.2140505e+03 - -5.8863950e+02 -3.3164093e+02 -3.2109937e+03 - -5.9094994e+02 -3.1162927e+02 -3.2080032e+03 - -5.9270587e+02 -2.8683139e+02 -3.2051342e+03 - -5.9398103e+02 -2.5723323e+02 -3.2024487e+03 - -5.9485663e+02 -2.2297434e+02 -3.2000137e+03 - -5.9541765e+02 -1.8437730e+02 -3.1978982e+03 - -5.9574746e+02 -1.4196644e+02 -3.1961687e+03 - -5.9592130e+02 -9.6469539e+01 -3.1948850e+03 - -5.9599946e+02 -4.8797408e+01 -3.1940944e+03 - -5.9602100e+02 0.0000000e+00 -3.1938273e+03 - -5.9599946e+02 4.8797408e+01 -3.1940944e+03 - -5.9592130e+02 9.6469539e+01 -3.1948850e+03 - -5.9574746e+02 1.4196644e+02 -3.1961687e+03 - -5.9541765e+02 1.8437730e+02 -3.1978982e+03 - -5.9485663e+02 2.2297434e+02 -3.2000137e+03 - -5.9398103e+02 2.5723323e+02 -3.2024487e+03 - -5.9270587e+02 2.8683139e+02 -3.2051342e+03 - -5.9094994e+02 3.1162927e+02 -3.2080032e+03 - -5.8863950e+02 3.3164093e+02 -3.2109937e+03 - -5.8571054e+02 3.4700027e+02 -3.2140505e+03 - -5.8210963e+02 3.5792773e+02 -3.2171263e+03 - -5.7779379e+02 3.6470073e+02 -3.2201815e+03 - -5.7272973e+02 3.6762909e+02 -3.2231842e+03 - -5.6689274e+02 3.6703618e+02 -3.2261091e+03 - -5.6026543e+02 3.6324508e+02 -3.2289369e+03 - -5.5283655e+02 3.5656909e+02 -3.2316534e+03 - -5.4459988e+02 3.4730579e+02 -3.2342484e+03 - -5.3555329e+02 3.3573358e+02 -3.2367154e+03 - -5.2569801e+02 3.2211024e+02 -3.2390502e+03 - -5.1503796e+02 3.0667265e+02 -3.2412511e+03 - -5.0357933e+02 2.8963746e+02 -3.2433179e+03 - -4.9133019e+02 2.7120219e+02 -3.2452517e+03 - -4.7830030e+02 2.5154665e+02 -3.2470545e+03 - -4.6450086e+02 2.3083445e+02 -3.2487290e+03 - -4.4994447e+02 2.0921452e+02 -3.2502784e+03 - -4.3464504e+02 1.8682260e+02 -3.2517060e+03 - -4.1861776e+02 1.6378257e+02 -3.2530156e+03 - -4.0187914e+02 1.4020775e+02 -3.2542108e+03 - -3.8444700e+02 1.1620198e+02 -3.2552952e+03 - -3.6634057e+02 9.1860700e+01 -3.2562722e+03 - -3.4758048e+02 6.7271772e+01 -3.2571454e+03 - -3.2818888e+02 4.2516315e+01 -3.2579177e+03 - -3.0818949e+02 1.7669380e+01 -3.2585921e+03 - -2.8760770e+02 -7.1994436e+00 -3.2591711e+03 - -2.6647067e+02 -3.2025501e+01 -3.2596571e+03 - -2.4480740e+02 -5.6748611e+01 -3.2600520e+03 - -2.2264887e+02 -8.1312668e+01 -3.2603574e+03 - -2.0002813e+02 -1.0566529e+02 -3.2605747e+03 - -1.7698047e+02 -1.2975752e+02 -3.2607046e+03 - -1.5354354e+02 -1.5354354e+02 -3.2607479e+03 - -1.2975752e+02 -1.7698047e+02 -3.2607046e+03 - -1.0566529e+02 -2.0002813e+02 -3.2605747e+03 - -8.1312668e+01 -2.2264887e+02 -3.2603574e+03 - -5.6748611e+01 -2.4480740e+02 -3.2600520e+03 - -3.2025501e+01 -2.6647067e+02 -3.2596571e+03 - -7.1994436e+00 -2.8760770e+02 -3.2591711e+03 - 1.7669380e+01 -3.0818949e+02 -3.2585921e+03 - 4.2516315e+01 -3.2818888e+02 -3.2579177e+03 - 6.7271772e+01 -3.4758048e+02 -3.2571454e+03 - 9.1860700e+01 -3.6634057e+02 -3.2562722e+03 - 1.1620198e+02 -3.8444700e+02 -3.2552952e+03 - 1.4020775e+02 -4.0187914e+02 -3.2542108e+03 - 1.6378257e+02 -4.1861776e+02 -3.2530156e+03 - 1.8682260e+02 -4.3464504e+02 -3.2517060e+03 - 2.0921452e+02 -4.4994447e+02 -3.2502784e+03 - 2.3083445e+02 -4.6450086e+02 -3.2487290e+03 - 2.5154665e+02 -4.7830030e+02 -3.2470545e+03 - 2.7120219e+02 -4.9133019e+02 -3.2452517e+03 - 2.8963746e+02 -5.0357933e+02 -3.2433179e+03 - 3.0667265e+02 -5.1503796e+02 -3.2412511e+03 - 3.2211024e+02 -5.2569801e+02 -3.2390502e+03 - 3.3573358e+02 -5.3555329e+02 -3.2367154e+03 - 3.4730579e+02 -5.4459988e+02 -3.2342484e+03 - 3.5656909e+02 -5.5283655e+02 -3.2316534e+03 - 3.6324508e+02 -5.6026543e+02 -3.2289369e+03 - 3.6703618e+02 -5.6689274e+02 -3.2261091e+03 - 3.6762909e+02 -5.7272973e+02 -3.2231842e+03 - 3.6470073e+02 -5.7779379e+02 -3.2201815e+03 - 3.5792773e+02 -5.8210963e+02 -3.2171263e+03 - 3.4700027e+02 -5.8571054e+02 -3.2140505e+03 - 3.3164093e+02 -5.8863950e+02 -3.2109937e+03 - 3.1162927e+02 -5.9094994e+02 -3.2080032e+03 - 2.8683139e+02 -5.9270587e+02 -3.2051342e+03 - 2.5723323e+02 -5.9398103e+02 -3.2024487e+03 - 2.2297434e+02 -5.9485663e+02 -3.2000137e+03 - 1.8437730e+02 -5.9541765e+02 -3.1978982e+03 - 1.4196644e+02 -5.9574746e+02 -3.1961687e+03 - 9.6469539e+01 -5.9592130e+02 -3.1948850e+03 - 4.8797408e+01 -5.9599946e+02 -3.1940944e+03 - -9.6268545e-09 -5.9602100e+02 -3.1938273e+03 - -4.8797408e+01 -5.9599946e+02 -3.1940944e+03 - -9.6469539e+01 -5.9592130e+02 -3.1948850e+03 - -1.4196644e+02 -5.9574746e+02 -3.1961687e+03 - -1.8437730e+02 -5.9541765e+02 -3.1978982e+03 - -2.2297434e+02 -5.9485663e+02 -3.2000137e+03 - -2.5723323e+02 -5.9398103e+02 -3.2024487e+03 - -2.8683139e+02 -5.9270587e+02 -3.2051342e+03 - -3.1162927e+02 -5.9094994e+02 -3.2080032e+03 - -3.3164093e+02 -5.8863950e+02 -3.2109937e+03 - -3.4700027e+02 -5.8571054e+02 -3.2140505e+03 - -3.5792773e+02 -5.8210963e+02 -3.2171263e+03 - -3.6470073e+02 -5.7779379e+02 -3.2201815e+03 - -3.6762909e+02 -5.7272973e+02 -3.2231842e+03 - -3.6703618e+02 -5.6689274e+02 -3.2261091e+03 - -3.6324508e+02 -5.6026543e+02 -3.2289369e+03 - -3.5656909e+02 -5.5283655e+02 -3.2316534e+03 - -3.4730579e+02 -5.4459988e+02 -3.2342484e+03 - -3.3573358e+02 -5.3555329e+02 -3.2367154e+03 - -3.2211024e+02 -5.2569801e+02 -3.2390502e+03 - -3.0667265e+02 -5.1503796e+02 -3.2412511e+03 - -2.8963746e+02 -5.0357933e+02 -3.2433179e+03 - -2.7120219e+02 -4.9133019e+02 -3.2452517e+03 - -2.5154665e+02 -4.7830030e+02 -3.2470545e+03 - -2.3083445e+02 -4.6450086e+02 -3.2487290e+03 - -2.0921452e+02 -4.4994448e+02 -3.2502784e+03 - -1.8682260e+02 -4.3464504e+02 -3.2517060e+03 - -1.6378257e+02 -4.1861776e+02 -3.2530156e+03 - -1.4020775e+02 -4.0187914e+02 -3.2542108e+03 - -1.1620198e+02 -3.8444700e+02 -3.2552952e+03 - -9.1860700e+01 -3.6634057e+02 -3.2562722e+03 - -6.7271772e+01 -3.4758048e+02 -3.2571454e+03 - -4.2516315e+01 -3.2818888e+02 -3.2579177e+03 - -1.7669380e+01 -3.0818949e+02 -3.2585921e+03 - 7.1994436e+00 -2.8760770e+02 -3.2591711e+03 - 3.2025501e+01 -2.6647067e+02 -3.2596571e+03 - 5.6748611e+01 -2.4480740e+02 -3.2600520e+03 - 8.1312668e+01 -2.2264887e+02 -3.2603574e+03 - 1.0566529e+02 -2.0002813e+02 -3.2605747e+03 - 1.2975752e+02 -1.7698047e+02 -3.2607046e+03 - 1.5354354e+02 -1.5354354e+02 -3.2607479e+03 - 1.7698047e+02 -1.2975752e+02 -3.2607046e+03 - 2.0002813e+02 -1.0566529e+02 -3.2605747e+03 - 2.2264887e+02 -8.1312668e+01 -3.2603574e+03 - 2.4480740e+02 -5.6748611e+01 -3.2600520e+03 - 2.6647067e+02 -3.2025501e+01 -3.2596571e+03 - 2.8760770e+02 -7.1994436e+00 -3.2591711e+03 - 3.0818949e+02 1.7669380e+01 -3.2585921e+03 - 3.2818888e+02 4.2516315e+01 -3.2579177e+03 - 3.4758048e+02 6.7271772e+01 -3.2571454e+03 - 3.6634057e+02 9.1860700e+01 -3.2562722e+03 - 3.8444700e+02 1.1620198e+02 -3.2552952e+03 - 4.0187914e+02 1.4020775e+02 -3.2542108e+03 - 4.1861776e+02 1.6378257e+02 -3.2530156e+03 - 4.3464504e+02 1.8682260e+02 -3.2517060e+03 - 4.4994447e+02 2.0921452e+02 -3.2502784e+03 - 4.6450086e+02 2.3083445e+02 -3.2487290e+03 - 4.7830030e+02 2.5154665e+02 -3.2470545e+03 - 4.9133019e+02 2.7120219e+02 -3.2452517e+03 - 5.0357933e+02 2.8963746e+02 -3.2433179e+03 - 5.1503796e+02 3.0667265e+02 -3.2412511e+03 - 5.2569801e+02 3.2211024e+02 -3.2390502e+03 - 5.3555329e+02 3.3573358e+02 -3.2367154e+03 - 5.4459988e+02 3.4730579e+02 -3.2342484e+03 - 5.5283655e+02 3.5656909e+02 -3.2316534e+03 - 5.6026543e+02 3.6324508e+02 -3.2289369e+03 - 5.6689274e+02 3.6703618e+02 -3.2261091e+03 - 5.7272973e+02 3.6762909e+02 -3.2231842e+03 - 5.7779379e+02 3.6470073e+02 -3.2201815e+03 - 5.8210963e+02 3.5792773e+02 -3.2171263e+03 - 5.8571054e+02 3.4700027e+02 -3.2140505e+03 - 5.8863950e+02 3.3164093e+02 -3.2109937e+03 - 5.9094994e+02 3.1162927e+02 -3.2080032e+03 - 5.9270587e+02 2.8683139e+02 -3.2051342e+03 - 5.9398103e+02 2.5723323e+02 -3.2024487e+03 - 5.9485663e+02 2.2297434e+02 -3.2000137e+03 - 5.9541765e+02 1.8437730e+02 -3.1978982e+03 - 5.9574746e+02 1.4196644e+02 -3.1961687e+03 - 5.9592130e+02 9.6469539e+01 -3.1948850e+03 - 5.9599946e+02 4.8797408e+01 -3.1940944e+03 - 5.9602100e+02 -7.2201409e-09 -3.1938273e+03 - 4.9712652e+02 -7.2201409e-09 -3.2454542e+03 - 4.9712297e+02 -4.8364715e+01 -3.2456975e+03 - 4.9709898e+02 -9.5690422e+01 -3.2464185e+03 - 4.9701602e+02 -1.4100446e+02 -3.2475916e+03 - 4.9681447e+02 -1.8345721e+02 -3.2491767e+03 - 4.9641961e+02 -2.2236185e+02 -3.2511231e+03 - 4.9574831e+02 -2.5721403e+02 -3.2533735e+03 - 4.9471538e+02 -2.8769233e+02 -3.2558684e+03 - 4.9323898e+02 -3.1364337e+02 -3.2585488e+03 - 4.9124443e+02 -3.3505699e+02 -3.2613597e+03 - 4.8866660e+02 -3.5203690e+02 -3.2642511e+03 - 4.8545096e+02 -3.6477105e+02 -3.2671796e+03 - 4.8155358e+02 -3.7350464e+02 -3.2701080e+03 - 4.7694049e+02 -3.7851745e+02 -3.2730055e+03 - 4.7158662e+02 -3.8010587e+02 -3.2758474e+03 - 4.6547456e+02 -3.7856943e+02 -3.2786138e+03 - 4.5859338e+02 -3.7420137e+02 -3.2812895e+03 - 4.5093749e+02 -3.6728242e+02 -3.2838630e+03 - 4.4250565e+02 -3.5807701e+02 -3.2863260e+03 - 4.3330014e+02 -3.4683136e+02 -3.2886727e+03 - 4.2332612e+02 -3.3377291e+02 -3.2908994e+03 - 4.1259111e+02 -3.1911052e+02 -3.2930039e+03 - 4.0110455e+02 -3.0303533e+02 -3.2949856e+03 - 3.8887757e+02 -2.8572186e+02 -3.2968445e+03 - 3.7592277e+02 -2.6732933e+02 -3.2985816e+03 - 3.6225405e+02 -2.4800298e+02 -3.3001983e+03 - 3.4788658e+02 -2.2787541e+02 -3.3016965e+03 - 3.3283672e+02 -2.0706782e+02 -3.3030782e+03 - 3.1712204e+02 -1.8569116e+02 -3.3043458e+03 - 3.0076135e+02 -1.6384726e+02 -3.3055016e+03 - 2.8377469e+02 -1.4162968e+02 -3.3065478e+03 - 2.6618343e+02 -1.1912466e+02 -3.3074868e+03 - 2.4801032e+02 -9.6411822e+01 -3.3083206e+03 - 2.2927957e+02 -7.3564872e+01 -3.3090513e+03 - 2.1001691e+02 -5.0652160e+01 -3.3096807e+03 - 1.9024975e+02 -2.7737213e+01 -3.3102104e+03 - 1.7000719e+02 -4.8791854e+00 -3.3106419e+03 - 1.4932020e+02 1.7866745e+01 -3.3109762e+03 - 1.2822173e+02 4.0449031e+01 -3.3112143e+03 - 1.0674684e+02 6.2819451e+01 -3.3113570e+03 - 8.4932837e+01 8.4932837e+01 -3.3114045e+03 - 6.2819451e+01 1.0674684e+02 -3.3113570e+03 - 4.0449031e+01 1.2822173e+02 -3.3112143e+03 - 1.7866745e+01 1.4932020e+02 -3.3109762e+03 - -4.8791854e+00 1.7000719e+02 -3.3106419e+03 - -2.7737213e+01 1.9024975e+02 -3.3102104e+03 - -5.0652160e+01 2.1001691e+02 -3.3096807e+03 - -7.3564872e+01 2.2927957e+02 -3.3090513e+03 - -9.6411822e+01 2.4801032e+02 -3.3083206e+03 - -1.1912466e+02 2.6618343e+02 -3.3074868e+03 - -1.4162968e+02 2.8377469e+02 -3.3065478e+03 - -1.6384726e+02 3.0076135e+02 -3.3055016e+03 - -1.8569116e+02 3.1712204e+02 -3.3043458e+03 - -2.0706782e+02 3.3283672e+02 -3.3030782e+03 - -2.2787541e+02 3.4788658e+02 -3.3016965e+03 - -2.4800298e+02 3.6225405e+02 -3.3001983e+03 - -2.6732933e+02 3.7592277e+02 -3.2985816e+03 - -2.8572186e+02 3.8887757e+02 -3.2968445e+03 - -3.0303533e+02 4.0110455e+02 -3.2949856e+03 - -3.1911052e+02 4.1259111e+02 -3.2930039e+03 - -3.3377291e+02 4.2332612e+02 -3.2908994e+03 - -3.4683136e+02 4.3330014e+02 -3.2886727e+03 - -3.5807701e+02 4.4250565e+02 -3.2863260e+03 - -3.6728242e+02 4.5093749e+02 -3.2838630e+03 - -3.7420137e+02 4.5859338e+02 -3.2812895e+03 - -3.7856943e+02 4.6547456e+02 -3.2786138e+03 - -3.8010587e+02 4.7158662e+02 -3.2758474e+03 - -3.7851745e+02 4.7694049e+02 -3.2730055e+03 - -3.7350464e+02 4.8155358e+02 -3.2701080e+03 - -3.6477105e+02 4.8545096e+02 -3.2671796e+03 - -3.5203690e+02 4.8866660e+02 -3.2642511e+03 - -3.3505699e+02 4.9124443e+02 -3.2613597e+03 - -3.1364337e+02 4.9323898e+02 -3.2585488e+03 - -2.8769233e+02 4.9471538e+02 -3.2558684e+03 - -2.5721403e+02 4.9574831e+02 -3.2533735e+03 - -2.2236185e+02 4.9641961e+02 -3.2511231e+03 - -1.8345721e+02 4.9681447e+02 -3.2491767e+03 - -1.4100446e+02 4.9701602e+02 -3.2475916e+03 - -9.5690422e+01 4.9709898e+02 -3.2464185e+03 - -4.8364715e+01 4.9712297e+02 -3.2456975e+03 - -2.4067136e-09 4.9712652e+02 -3.2454542e+03 - 4.8364715e+01 4.9712297e+02 -3.2456975e+03 - 9.5690422e+01 4.9709898e+02 -3.2464185e+03 - 1.4100446e+02 4.9701602e+02 -3.2475916e+03 - 1.8345721e+02 4.9681447e+02 -3.2491767e+03 - 2.2236185e+02 4.9641961e+02 -3.2511231e+03 - 2.5721403e+02 4.9574831e+02 -3.2533735e+03 - 2.8769233e+02 4.9471538e+02 -3.2558684e+03 - 3.1364337e+02 4.9323898e+02 -3.2585488e+03 - 3.3505699e+02 4.9124443e+02 -3.2613597e+03 - 3.5203690e+02 4.8866660e+02 -3.2642511e+03 - 3.6477105e+02 4.8545096e+02 -3.2671796e+03 - 3.7350464e+02 4.8155358e+02 -3.2701080e+03 - 3.7851745e+02 4.7694049e+02 -3.2730055e+03 - 3.8010587e+02 4.7158662e+02 -3.2758474e+03 - 3.7856943e+02 4.6547456e+02 -3.2786138e+03 - 3.7420137e+02 4.5859338e+02 -3.2812895e+03 - 3.6728242e+02 4.5093749e+02 -3.2838630e+03 - 3.5807701e+02 4.4250565e+02 -3.2863260e+03 - 3.4683136e+02 4.3330014e+02 -3.2886727e+03 - 3.3377291e+02 4.2332612e+02 -3.2908994e+03 - 3.1911052e+02 4.1259111e+02 -3.2930039e+03 - 3.0303533e+02 4.0110455e+02 -3.2949856e+03 - 2.8572186e+02 3.8887757e+02 -3.2968445e+03 - 2.6732933e+02 3.7592277e+02 -3.2985816e+03 - 2.4800298e+02 3.6225405e+02 -3.3001983e+03 - 2.2787541e+02 3.4788658e+02 -3.3016965e+03 - 2.0706782e+02 3.3283672e+02 -3.3030782e+03 - 1.8569116e+02 3.1712204e+02 -3.3043458e+03 - 1.6384726e+02 3.0076135e+02 -3.3055016e+03 - 1.4162968e+02 2.8377469e+02 -3.3065478e+03 - 1.1912466e+02 2.6618343e+02 -3.3074868e+03 - 9.6411822e+01 2.4801032e+02 -3.3083206e+03 - 7.3564872e+01 2.2927957e+02 -3.3090513e+03 - 5.0652160e+01 2.1001691e+02 -3.3096807e+03 - 2.7737213e+01 1.9024975e+02 -3.3102104e+03 - 4.8791854e+00 1.7000719e+02 -3.3106419e+03 - -1.7866745e+01 1.4932020e+02 -3.3109762e+03 - -4.0449031e+01 1.2822173e+02 -3.3112143e+03 - -6.2819451e+01 1.0674684e+02 -3.3113570e+03 - -8.4932837e+01 8.4932837e+01 -3.3114045e+03 - -1.0674684e+02 6.2819451e+01 -3.3113570e+03 - -1.2822173e+02 4.0449031e+01 -3.3112143e+03 - -1.4932020e+02 1.7866745e+01 -3.3109762e+03 - -1.7000719e+02 -4.8791854e+00 -3.3106419e+03 - -1.9024975e+02 -2.7737213e+01 -3.3102104e+03 - -2.1001691e+02 -5.0652160e+01 -3.3096807e+03 - -2.2927957e+02 -7.3564872e+01 -3.3090513e+03 - -2.4801032e+02 -9.6411822e+01 -3.3083206e+03 - -2.6618343e+02 -1.1912466e+02 -3.3074868e+03 - -2.8377469e+02 -1.4162968e+02 -3.3065478e+03 - -3.0076135e+02 -1.6384726e+02 -3.3055016e+03 - -3.1712204e+02 -1.8569116e+02 -3.3043458e+03 - -3.3283672e+02 -2.0706782e+02 -3.3030782e+03 - -3.4788658e+02 -2.2787541e+02 -3.3016965e+03 - -3.6225405e+02 -2.4800298e+02 -3.3001983e+03 - -3.7592277e+02 -2.6732933e+02 -3.2985816e+03 - -3.8887757e+02 -2.8572186e+02 -3.2968445e+03 - -4.0110455e+02 -3.0303533e+02 -3.2949856e+03 - -4.1259111e+02 -3.1911052e+02 -3.2930039e+03 - -4.2332612e+02 -3.3377291e+02 -3.2908994e+03 - -4.3330014e+02 -3.4683136e+02 -3.2886727e+03 - -4.4250565e+02 -3.5807701e+02 -3.2863260e+03 - -4.5093749e+02 -3.6728242e+02 -3.2838630e+03 - -4.5859338e+02 -3.7420137e+02 -3.2812895e+03 - -4.6547456e+02 -3.7856943e+02 -3.2786138e+03 - -4.7158662e+02 -3.8010587e+02 -3.2758474e+03 - -4.7694049e+02 -3.7851745e+02 -3.2730055e+03 - -4.8155358e+02 -3.7350464e+02 -3.2701080e+03 - -4.8545096e+02 -3.6477105e+02 -3.2671796e+03 - -4.8866660e+02 -3.5203690e+02 -3.2642511e+03 - -4.9124443e+02 -3.3505699e+02 -3.2613597e+03 - -4.9323898e+02 -3.1364337e+02 -3.2585488e+03 - -4.9471538e+02 -2.8769233e+02 -3.2558684e+03 - -4.9574831e+02 -2.5721403e+02 -3.2533735e+03 - -4.9641961e+02 -2.2236185e+02 -3.2511231e+03 - -4.9681447e+02 -1.8345721e+02 -3.2491767e+03 - -4.9701602e+02 -1.4100446e+02 -3.2475916e+03 - -4.9709898e+02 -9.5690422e+01 -3.2464185e+03 - -4.9712297e+02 -4.8364715e+01 -3.2456975e+03 - -4.9712652e+02 -7.2201409e-09 -3.2454542e+03 - -4.9712297e+02 4.8364715e+01 -3.2456975e+03 - -4.9709898e+02 9.5690422e+01 -3.2464185e+03 - -4.9701602e+02 1.4100446e+02 -3.2475916e+03 - -4.9681447e+02 1.8345721e+02 -3.2491767e+03 - -4.9641961e+02 2.2236185e+02 -3.2511231e+03 - -4.9574831e+02 2.5721403e+02 -3.2533735e+03 - -4.9471538e+02 2.8769233e+02 -3.2558684e+03 - -4.9323898e+02 3.1364337e+02 -3.2585488e+03 - -4.9124443e+02 3.3505699e+02 -3.2613597e+03 - -4.8866660e+02 3.5203690e+02 -3.2642511e+03 - -4.8545096e+02 3.6477105e+02 -3.2671796e+03 - -4.8155358e+02 3.7350464e+02 -3.2701080e+03 - -4.7694049e+02 3.7851745e+02 -3.2730055e+03 - -4.7158662e+02 3.8010587e+02 -3.2758474e+03 - -4.6547456e+02 3.7856943e+02 -3.2786138e+03 - -4.5859338e+02 3.7420137e+02 -3.2812895e+03 - -4.5093749e+02 3.6728242e+02 -3.2838630e+03 - -4.4250565e+02 3.5807701e+02 -3.2863260e+03 - -4.3330014e+02 3.4683136e+02 -3.2886727e+03 - -4.2332612e+02 3.3377291e+02 -3.2908994e+03 - -4.1259111e+02 3.1911052e+02 -3.2930039e+03 - -4.0110455e+02 3.0303533e+02 -3.2949856e+03 - -3.8887757e+02 2.8572186e+02 -3.2968445e+03 - -3.7592277e+02 2.6732933e+02 -3.2985816e+03 - -3.6225405e+02 2.4800298e+02 -3.3001983e+03 - -3.4788658e+02 2.2787541e+02 -3.3016965e+03 - -3.3283672e+02 2.0706782e+02 -3.3030782e+03 - -3.1712204e+02 1.8569116e+02 -3.3043458e+03 - -3.0076135e+02 1.6384726e+02 -3.3055016e+03 - -2.8377469e+02 1.4162968e+02 -3.3065478e+03 - -2.6618343e+02 1.1912466e+02 -3.3074868e+03 - -2.4801032e+02 9.6411822e+01 -3.3083206e+03 - -2.2927957e+02 7.3564872e+01 -3.3090513e+03 - -2.1001691e+02 5.0652160e+01 -3.3096807e+03 - -1.9024975e+02 2.7737213e+01 -3.3102104e+03 - -1.7000719e+02 4.8791854e+00 -3.3106419e+03 - -1.4932020e+02 -1.7866745e+01 -3.3109762e+03 - -1.2822173e+02 -4.0449031e+01 -3.3112143e+03 - -1.0674684e+02 -6.2819451e+01 -3.3113570e+03 - -8.4932837e+01 -8.4932837e+01 -3.3114045e+03 - -6.2819451e+01 -1.0674684e+02 -3.3113570e+03 - -4.0449031e+01 -1.2822173e+02 -3.3112143e+03 - -1.7866745e+01 -1.4932020e+02 -3.3109762e+03 - 4.8791854e+00 -1.7000719e+02 -3.3106419e+03 - 2.7737213e+01 -1.9024975e+02 -3.3102104e+03 - 5.0652160e+01 -2.1001691e+02 -3.3096807e+03 - 7.3564872e+01 -2.2927957e+02 -3.3090513e+03 - 9.6411822e+01 -2.4801032e+02 -3.3083206e+03 - 1.1912466e+02 -2.6618343e+02 -3.3074868e+03 - 1.4162968e+02 -2.8377469e+02 -3.3065478e+03 - 1.6384726e+02 -3.0076135e+02 -3.3055016e+03 - 1.8569116e+02 -3.1712204e+02 -3.3043458e+03 - 2.0706782e+02 -3.3283672e+02 -3.3030782e+03 - 2.2787541e+02 -3.4788658e+02 -3.3016965e+03 - 2.4800298e+02 -3.6225405e+02 -3.3001983e+03 - 2.6732933e+02 -3.7592277e+02 -3.2985816e+03 - 2.8572186e+02 -3.8887757e+02 -3.2968445e+03 - 3.0303533e+02 -4.0110455e+02 -3.2949856e+03 - 3.1911052e+02 -4.1259111e+02 -3.2930039e+03 - 3.3377291e+02 -4.2332612e+02 -3.2908994e+03 - 3.4683136e+02 -4.3330014e+02 -3.2886727e+03 - 3.5807701e+02 -4.4250565e+02 -3.2863260e+03 - 3.6728242e+02 -4.5093749e+02 -3.2838630e+03 - 3.7420137e+02 -4.5859338e+02 -3.2812895e+03 - 3.7856943e+02 -4.6547456e+02 -3.2786138e+03 - 3.8010587e+02 -4.7158662e+02 -3.2758474e+03 - 3.7851745e+02 -4.7694049e+02 -3.2730055e+03 - 3.7350464e+02 -4.8155358e+02 -3.2701080e+03 - 3.6477105e+02 -4.8545096e+02 -3.2671796e+03 - 3.5203690e+02 -4.8866660e+02 -3.2642511e+03 - 3.3505699e+02 -4.9124443e+02 -3.2613597e+03 - 3.1364337e+02 -4.9323898e+02 -3.2585488e+03 - 2.8769233e+02 -4.9471538e+02 -3.2558684e+03 - 2.5721403e+02 -4.9574831e+02 -3.2533735e+03 - 2.2236185e+02 -4.9641961e+02 -3.2511231e+03 - 1.8345721e+02 -4.9681447e+02 -3.2491767e+03 - 1.4100446e+02 -4.9701602e+02 -3.2475916e+03 - 9.5690422e+01 -4.9709898e+02 -3.2464185e+03 - 4.8364715e+01 -4.9712297e+02 -3.2456975e+03 - 9.6268545e-09 -4.9712652e+02 -3.2454542e+03 - -4.8364715e+01 -4.9712297e+02 -3.2456975e+03 - -9.5690422e+01 -4.9709898e+02 -3.2464185e+03 - -1.4100446e+02 -4.9701602e+02 -3.2475916e+03 - -1.8345721e+02 -4.9681447e+02 -3.2491767e+03 - -2.2236185e+02 -4.9641961e+02 -3.2511231e+03 - -2.5721403e+02 -4.9574831e+02 -3.2533735e+03 - -2.8769233e+02 -4.9471538e+02 -3.2558684e+03 - -3.1364337e+02 -4.9323898e+02 -3.2585488e+03 - -3.3505699e+02 -4.9124443e+02 -3.2613597e+03 - -3.5203690e+02 -4.8866660e+02 -3.2642511e+03 - -3.6477105e+02 -4.8545096e+02 -3.2671796e+03 - -3.7350464e+02 -4.8155358e+02 -3.2701080e+03 - -3.7851745e+02 -4.7694049e+02 -3.2730055e+03 - -3.8010587e+02 -4.7158662e+02 -3.2758474e+03 - -3.7856943e+02 -4.6547456e+02 -3.2786138e+03 - -3.7420137e+02 -4.5859338e+02 -3.2812895e+03 - -3.6728242e+02 -4.5093749e+02 -3.2838630e+03 - -3.5807701e+02 -4.4250565e+02 -3.2863260e+03 - -3.4683136e+02 -4.3330014e+02 -3.2886727e+03 - -3.3377291e+02 -4.2332612e+02 -3.2908994e+03 - -3.1911052e+02 -4.1259111e+02 -3.2930039e+03 - -3.0303533e+02 -4.0110455e+02 -3.2949856e+03 - -2.8572186e+02 -3.8887757e+02 -3.2968445e+03 - -2.6732933e+02 -3.7592277e+02 -3.2985816e+03 - -2.4800298e+02 -3.6225405e+02 -3.3001983e+03 - -2.2787541e+02 -3.4788658e+02 -3.3016965e+03 - -2.0706782e+02 -3.3283672e+02 -3.3030782e+03 - -1.8569116e+02 -3.1712204e+02 -3.3043458e+03 - -1.6384726e+02 -3.0076135e+02 -3.3055016e+03 - -1.4162968e+02 -2.8377469e+02 -3.3065478e+03 - -1.1912466e+02 -2.6618343e+02 -3.3074868e+03 - -9.6411822e+01 -2.4801032e+02 -3.3083206e+03 - -7.3564872e+01 -2.2927957e+02 -3.3090513e+03 - -5.0652160e+01 -2.1001691e+02 -3.3096807e+03 - -2.7737213e+01 -1.9024975e+02 -3.3102104e+03 - -4.8791854e+00 -1.7000719e+02 -3.3106419e+03 - 1.7866745e+01 -1.4932020e+02 -3.3109762e+03 - 4.0449031e+01 -1.2822173e+02 -3.3112143e+03 - 6.2819451e+01 -1.0674684e+02 -3.3113570e+03 - 8.4932837e+01 -8.4932837e+01 -3.3114045e+03 - 1.0674684e+02 -6.2819451e+01 -3.3113570e+03 - 1.2822173e+02 -4.0449031e+01 -3.3112143e+03 - 1.4932020e+02 -1.7866745e+01 -3.3109762e+03 - 1.7000719e+02 4.8791854e+00 -3.3106419e+03 - 1.9024975e+02 2.7737213e+01 -3.3102104e+03 - 2.1001691e+02 5.0652160e+01 -3.3096807e+03 - 2.2927957e+02 7.3564872e+01 -3.3090513e+03 - 2.4801032e+02 9.6411822e+01 -3.3083206e+03 - 2.6618343e+02 1.1912466e+02 -3.3074868e+03 - 2.8377469e+02 1.4162968e+02 -3.3065478e+03 - 3.0076135e+02 1.6384726e+02 -3.3055016e+03 - 3.1712204e+02 1.8569116e+02 -3.3043458e+03 - 3.3283672e+02 2.0706782e+02 -3.3030782e+03 - 3.4788658e+02 2.2787541e+02 -3.3016965e+03 - 3.6225405e+02 2.4800298e+02 -3.3001983e+03 - 3.7592277e+02 2.6732933e+02 -3.2985816e+03 - 3.8887757e+02 2.8572186e+02 -3.2968445e+03 - 4.0110455e+02 3.0303533e+02 -3.2949856e+03 - 4.1259111e+02 3.1911052e+02 -3.2930039e+03 - 4.2332612e+02 3.3377291e+02 -3.2908994e+03 - 4.3330014e+02 3.4683136e+02 -3.2886727e+03 - 4.4250565e+02 3.5807701e+02 -3.2863260e+03 - 4.5093749e+02 3.6728242e+02 -3.2838630e+03 - 4.5859338e+02 3.7420137e+02 -3.2812895e+03 - 4.6547456e+02 3.7856943e+02 -3.2786138e+03 - 4.7158662e+02 3.8010587e+02 -3.2758474e+03 - 4.7694049e+02 3.7851745e+02 -3.2730055e+03 - 4.8155358e+02 3.7350464e+02 -3.2701080e+03 - 4.8545096e+02 3.6477105e+02 -3.2671796e+03 - 4.8866660e+02 3.5203690e+02 -3.2642511e+03 - 4.9124443e+02 3.3505699e+02 -3.2613597e+03 - 4.9323898e+02 3.1364337e+02 -3.2585488e+03 - 4.9471538e+02 2.8769233e+02 -3.2558684e+03 - 4.9574831e+02 2.5721403e+02 -3.2533735e+03 - 4.9641961e+02 2.2236185e+02 -3.2511231e+03 - 4.9681447e+02 1.8345721e+02 -3.2491767e+03 - 4.9701602e+02 1.4100446e+02 -3.2475916e+03 - 4.9709898e+02 9.5690422e+01 -3.2464185e+03 - 4.9712297e+02 4.8364715e+01 -3.2456975e+03 - 4.9712652e+02 7.2201409e-09 -3.2454542e+03 - 4.0152538e+02 -2.4067136e-09 -3.2929981e+03 - 4.0153813e+02 -4.7905231e+01 -3.2932196e+03 - 4.0156336e+02 -9.4849714e+01 -3.2938768e+03 - 4.0156337e+02 -1.3993138e+02 -3.2949479e+03 - 4.0147968e+02 -1.8235731e+02 -3.2963990e+03 - 4.0123874e+02 -2.2147986e+02 -3.2981870e+03 - 4.0075838e+02 -2.5681538e+02 -3.3002628e+03 - 3.9995396e+02 -2.8804627e+02 -3.3025744e+03 - 3.9874373e+02 -3.1500918e+02 -3.3050705e+03 - 3.9705270e+02 -3.3767411e+02 -3.3077021e+03 - 3.9481519e+02 -3.5611882e+02 -3.3104243e+03 - 3.9197592e+02 -3.7050252e+02 -3.3131973e+03 - 3.8849028e+02 -3.8104132e+02 -3.3159864e+03 - 3.8432372e+02 -3.8798732e+02 -3.3187625e+03 - 3.7945081e+02 -3.9161159e+02 -3.3215014e+03 - 3.7385403e+02 -3.9219122e+02 -3.3241833e+03 - 3.6752262e+02 -3.9000005e+02 -3.3267924e+03 - 3.6045138e+02 -3.8530220e+02 -3.3293164e+03 - 3.5263972e+02 -3.7834813e+02 -3.3317457e+03 - 3.4409073e+02 -3.6937238e+02 -3.3340732e+03 - 3.3481053e+02 -3.5859263e+02 -3.3362936e+03 - 3.2480767e+02 -3.4620963e+02 -3.3384034e+03 - 3.1409274e+02 -3.3240773e+02 -3.3404002e+03 - 3.0267800e+02 -3.1735580e+02 -3.3422826e+03 - 2.9057716e+02 -3.0120828e+02 -3.3440501e+03 - 2.7780524e+02 -2.8410634e+02 -3.3457027e+03 - 2.6437845e+02 -2.6617912e+02 -3.3472409e+03 - 2.5031412e+02 -2.4754479e+02 -3.3486656e+03 - 2.3563072e+02 -2.2831169e+02 -3.3499777e+03 - 2.2034782e+02 -2.0857930e+02 -3.3511786e+03 - 2.0448618e+02 -1.8843914e+02 -3.3522694e+03 - 1.8806774e+02 -1.6797556e+02 -3.3532515e+03 - 1.7111571e+02 -1.4726651e+02 -3.3541262e+03 - 1.5365464e+02 -1.2638416e+02 -3.3548948e+03 - 1.3571052e+02 -1.0539544e+02 -3.3555584e+03 - 1.1731085e+02 -8.4362624e+01 -3.3561180e+03 - 9.8484745e+01 -6.3343690e+01 -3.3565745e+03 - 7.9263068e+01 -4.2392757e+01 -3.3569288e+03 - 5.9678539e+01 -2.1560419e+01 -3.3571814e+03 - 3.9765877e+01 -8.9404417e-01 -3.3573328e+03 - 1.9561953e+01 1.9561953e+01 -3.3573833e+03 - -8.9404417e-01 3.9765877e+01 -3.3573328e+03 - -2.1560419e+01 5.9678539e+01 -3.3571814e+03 - -4.2392757e+01 7.9263068e+01 -3.3569288e+03 - -6.3343690e+01 9.8484745e+01 -3.3565745e+03 - -8.4362624e+01 1.1731085e+02 -3.3561180e+03 - -1.0539544e+02 1.3571052e+02 -3.3555584e+03 - -1.2638416e+02 1.5365464e+02 -3.3548948e+03 - -1.4726651e+02 1.7111571e+02 -3.3541262e+03 - -1.6797556e+02 1.8806774e+02 -3.3532515e+03 - -1.8843914e+02 2.0448618e+02 -3.3522694e+03 - -2.0857930e+02 2.2034782e+02 -3.3511786e+03 - -2.2831169e+02 2.3563072e+02 -3.3499777e+03 - -2.4754479e+02 2.5031412e+02 -3.3486656e+03 - -2.6617912e+02 2.6437845e+02 -3.3472409e+03 - -2.8410634e+02 2.7780524e+02 -3.3457027e+03 - -3.0120828e+02 2.9057716e+02 -3.3440501e+03 - -3.1735580e+02 3.0267800e+02 -3.3422826e+03 - -3.3240773e+02 3.1409274e+02 -3.3404002e+03 - -3.4620963e+02 3.2480767e+02 -3.3384034e+03 - -3.5859263e+02 3.3481053e+02 -3.3362936e+03 - -3.6937238e+02 3.4409073e+02 -3.3340732e+03 - -3.7834813e+02 3.5263972e+02 -3.3317457e+03 - -3.8530220e+02 3.6045138e+02 -3.3293164e+03 - -3.9000005e+02 3.6752262e+02 -3.3267924e+03 - -3.9219122e+02 3.7385403e+02 -3.3241833e+03 - -3.9161159e+02 3.7945081e+02 -3.3215014e+03 - -3.8798732e+02 3.8432372e+02 -3.3187625e+03 - -3.8104132e+02 3.8849028e+02 -3.3159864e+03 - -3.7050252e+02 3.9197592e+02 -3.3131973e+03 - -3.5611882e+02 3.9481519e+02 -3.3104243e+03 - -3.3767411e+02 3.9705270e+02 -3.3077021e+03 - -3.1500918e+02 3.9874373e+02 -3.3050705e+03 - -2.8804627e+02 3.9995396e+02 -3.3025744e+03 - -2.5681538e+02 4.0075838e+02 -3.3002628e+03 - -2.2147986e+02 4.0123874e+02 -3.2981870e+03 - -1.8235731e+02 4.0147968e+02 -3.2963990e+03 - -1.3993138e+02 4.0156337e+02 -3.2949479e+03 - -9.4849714e+01 4.0156336e+02 -3.2938768e+03 - -4.7905231e+01 4.0153813e+02 -3.2932196e+03 - -4.8134273e-09 4.0152538e+02 -3.2929981e+03 - 4.7905231e+01 4.0153813e+02 -3.2932196e+03 - 9.4849714e+01 4.0156336e+02 -3.2938768e+03 - 1.3993138e+02 4.0156337e+02 -3.2949479e+03 - 1.8235731e+02 4.0147968e+02 -3.2963990e+03 - 2.2147986e+02 4.0123874e+02 -3.2981870e+03 - 2.5681538e+02 4.0075838e+02 -3.3002628e+03 - 2.8804627e+02 3.9995396e+02 -3.3025744e+03 - 3.1500918e+02 3.9874373e+02 -3.3050705e+03 - 3.3767411e+02 3.9705270e+02 -3.3077021e+03 - 3.5611882e+02 3.9481519e+02 -3.3104243e+03 - 3.7050252e+02 3.9197592e+02 -3.3131973e+03 - 3.8104132e+02 3.8849028e+02 -3.3159864e+03 - 3.8798732e+02 3.8432372e+02 -3.3187625e+03 - 3.9161159e+02 3.7945081e+02 -3.3215014e+03 - 3.9219122e+02 3.7385403e+02 -3.3241833e+03 - 3.9000005e+02 3.6752262e+02 -3.3267924e+03 - 3.8530220e+02 3.6045138e+02 -3.3293164e+03 - 3.7834813e+02 3.5263972e+02 -3.3317457e+03 - 3.6937238e+02 3.4409073e+02 -3.3340732e+03 - 3.5859263e+02 3.3481053e+02 -3.3362936e+03 - 3.4620963e+02 3.2480767e+02 -3.3384034e+03 - 3.3240773e+02 3.1409274e+02 -3.3404002e+03 - 3.1735580e+02 3.0267800e+02 -3.3422826e+03 - 3.0120828e+02 2.9057716e+02 -3.3440501e+03 - 2.8410634e+02 2.7780524e+02 -3.3457027e+03 - 2.6617912e+02 2.6437845e+02 -3.3472409e+03 - 2.4754479e+02 2.5031412e+02 -3.3486656e+03 - 2.2831169e+02 2.3563072e+02 -3.3499777e+03 - 2.0857930e+02 2.2034782e+02 -3.3511786e+03 - 1.8843914e+02 2.0448618e+02 -3.3522694e+03 - 1.6797556e+02 1.8806774e+02 -3.3532515e+03 - 1.4726651e+02 1.7111571e+02 -3.3541262e+03 - 1.2638416e+02 1.5365464e+02 -3.3548948e+03 - 1.0539544e+02 1.3571052e+02 -3.3555584e+03 - 8.4362624e+01 1.1731085e+02 -3.3561180e+03 - 6.3343690e+01 9.8484745e+01 -3.3565745e+03 - 4.2392757e+01 7.9263068e+01 -3.3569288e+03 - 2.1560419e+01 5.9678539e+01 -3.3571814e+03 - 8.9404417e-01 3.9765877e+01 -3.3573328e+03 - -1.9561953e+01 1.9561953e+01 -3.3573833e+03 - -3.9765877e+01 -8.9404417e-01 -3.3573328e+03 - -5.9678539e+01 -2.1560419e+01 -3.3571814e+03 - -7.9263068e+01 -4.2392757e+01 -3.3569288e+03 - -9.8484745e+01 -6.3343690e+01 -3.3565745e+03 - -1.1731085e+02 -8.4362624e+01 -3.3561180e+03 - -1.3571052e+02 -1.0539544e+02 -3.3555584e+03 - -1.5365464e+02 -1.2638416e+02 -3.3548948e+03 - -1.7111571e+02 -1.4726651e+02 -3.3541262e+03 - -1.8806774e+02 -1.6797556e+02 -3.3532515e+03 - -2.0448618e+02 -1.8843914e+02 -3.3522694e+03 - -2.2034782e+02 -2.0857930e+02 -3.3511786e+03 - -2.3563072e+02 -2.2831169e+02 -3.3499777e+03 - -2.5031412e+02 -2.4754479e+02 -3.3486656e+03 - -2.6437845e+02 -2.6617912e+02 -3.3472409e+03 - -2.7780524e+02 -2.8410634e+02 -3.3457027e+03 - -2.9057716e+02 -3.0120828e+02 -3.3440501e+03 - -3.0267800e+02 -3.1735580e+02 -3.3422826e+03 - -3.1409274e+02 -3.3240773e+02 -3.3404002e+03 - -3.2480767e+02 -3.4620963e+02 -3.3384034e+03 - -3.3481053e+02 -3.5859263e+02 -3.3362936e+03 - -3.4409073e+02 -3.6937238e+02 -3.3340732e+03 - -3.5263972e+02 -3.7834813e+02 -3.3317457e+03 - -3.6045138e+02 -3.8530220e+02 -3.3293164e+03 - -3.6752262e+02 -3.9000005e+02 -3.3267924e+03 - -3.7385403e+02 -3.9219122e+02 -3.3241833e+03 - -3.7945081e+02 -3.9161159e+02 -3.3215014e+03 - -3.8432372e+02 -3.8798732e+02 -3.3187625e+03 - -3.8849028e+02 -3.8104132e+02 -3.3159864e+03 - -3.9197592e+02 -3.7050252e+02 -3.3131973e+03 - -3.9481519e+02 -3.5611882e+02 -3.3104243e+03 - -3.9705270e+02 -3.3767411e+02 -3.3077021e+03 - -3.9874373e+02 -3.1500918e+02 -3.3050705e+03 - -3.9995396e+02 -2.8804627e+02 -3.3025744e+03 - -4.0075838e+02 -2.5681538e+02 -3.3002628e+03 - -4.0123874e+02 -2.2147986e+02 -3.2981870e+03 - -4.0147968e+02 -1.8235731e+02 -3.2963990e+03 - -4.0156337e+02 -1.3993138e+02 -3.2949479e+03 - -4.0156336e+02 -9.4849714e+01 -3.2938768e+03 - -4.0153813e+02 -4.7905231e+01 -3.2932196e+03 - -4.0152538e+02 0.0000000e+00 -3.2929981e+03 - -4.0153813e+02 4.7905231e+01 -3.2932196e+03 - -4.0156336e+02 9.4849714e+01 -3.2938768e+03 - -4.0156337e+02 1.3993138e+02 -3.2949479e+03 - -4.0147968e+02 1.8235731e+02 -3.2963990e+03 - -4.0123874e+02 2.2147986e+02 -3.2981870e+03 - -4.0075838e+02 2.5681538e+02 -3.3002628e+03 - -3.9995396e+02 2.8804627e+02 -3.3025744e+03 - -3.9874373e+02 3.1500918e+02 -3.3050705e+03 - -3.9705270e+02 3.3767411e+02 -3.3077021e+03 - -3.9481519e+02 3.5611882e+02 -3.3104243e+03 - -3.9197592e+02 3.7050252e+02 -3.3131973e+03 - -3.8849028e+02 3.8104132e+02 -3.3159864e+03 - -3.8432372e+02 3.8798732e+02 -3.3187625e+03 - -3.7945081e+02 3.9161159e+02 -3.3215014e+03 - -3.7385403e+02 3.9219122e+02 -3.3241833e+03 - -3.6752262e+02 3.9000005e+02 -3.3267924e+03 - -3.6045138e+02 3.8530220e+02 -3.3293164e+03 - -3.5263972e+02 3.7834813e+02 -3.3317457e+03 - -3.4409073e+02 3.6937238e+02 -3.3340732e+03 - -3.3481053e+02 3.5859263e+02 -3.3362936e+03 - -3.2480767e+02 3.4620963e+02 -3.3384034e+03 - -3.1409274e+02 3.3240773e+02 -3.3404002e+03 - -3.0267800e+02 3.1735580e+02 -3.3422826e+03 - -2.9057716e+02 3.0120828e+02 -3.3440501e+03 - -2.7780524e+02 2.8410634e+02 -3.3457027e+03 - -2.6437845e+02 2.6617912e+02 -3.3472409e+03 - -2.5031412e+02 2.4754479e+02 -3.3486656e+03 - -2.3563072e+02 2.2831169e+02 -3.3499777e+03 - -2.2034782e+02 2.0857930e+02 -3.3511786e+03 - -2.0448618e+02 1.8843914e+02 -3.3522694e+03 - -1.8806774e+02 1.6797556e+02 -3.3532515e+03 - -1.7111571e+02 1.4726651e+02 -3.3541262e+03 - -1.5365464e+02 1.2638416e+02 -3.3548948e+03 - -1.3571052e+02 1.0539544e+02 -3.3555584e+03 - -1.1731085e+02 8.4362624e+01 -3.3561180e+03 - -9.8484745e+01 6.3343690e+01 -3.3565745e+03 - -7.9263068e+01 4.2392757e+01 -3.3569288e+03 - -5.9678539e+01 2.1560419e+01 -3.3571814e+03 - -3.9765877e+01 8.9404417e-01 -3.3573328e+03 - -1.9561953e+01 -1.9561953e+01 -3.3573833e+03 - 8.9404417e-01 -3.9765877e+01 -3.3573328e+03 - 2.1560419e+01 -5.9678539e+01 -3.3571814e+03 - 4.2392757e+01 -7.9263068e+01 -3.3569288e+03 - 6.3343690e+01 -9.8484745e+01 -3.3565745e+03 - 8.4362624e+01 -1.1731085e+02 -3.3561180e+03 - 1.0539544e+02 -1.3571052e+02 -3.3555584e+03 - 1.2638416e+02 -1.5365464e+02 -3.3548948e+03 - 1.4726651e+02 -1.7111571e+02 -3.3541262e+03 - 1.6797556e+02 -1.8806774e+02 -3.3532515e+03 - 1.8843914e+02 -2.0448618e+02 -3.3522694e+03 - 2.0857930e+02 -2.2034782e+02 -3.3511786e+03 - 2.2831169e+02 -2.3563072e+02 -3.3499777e+03 - 2.4754479e+02 -2.5031412e+02 -3.3486656e+03 - 2.6617912e+02 -2.6437845e+02 -3.3472409e+03 - 2.8410634e+02 -2.7780524e+02 -3.3457027e+03 - 3.0120828e+02 -2.9057716e+02 -3.3440501e+03 - 3.1735580e+02 -3.0267800e+02 -3.3422826e+03 - 3.3240773e+02 -3.1409274e+02 -3.3404002e+03 - 3.4620963e+02 -3.2480767e+02 -3.3384034e+03 - 3.5859263e+02 -3.3481053e+02 -3.3362936e+03 - 3.6937238e+02 -3.4409073e+02 -3.3340732e+03 - 3.7834813e+02 -3.5263972e+02 -3.3317457e+03 - 3.8530220e+02 -3.6045138e+02 -3.3293164e+03 - 3.9000005e+02 -3.6752262e+02 -3.3267924e+03 - 3.9219122e+02 -3.7385403e+02 -3.3241833e+03 - 3.9161159e+02 -3.7945081e+02 -3.3215014e+03 - 3.8798732e+02 -3.8432372e+02 -3.3187625e+03 - 3.8104132e+02 -3.8849028e+02 -3.3159864e+03 - 3.7050252e+02 -3.9197592e+02 -3.3131973e+03 - 3.5611882e+02 -3.9481519e+02 -3.3104243e+03 - 3.3767411e+02 -3.9705270e+02 -3.3077021e+03 - 3.1500918e+02 -3.9874373e+02 -3.3050705e+03 - 2.8804627e+02 -3.9995396e+02 -3.3025744e+03 - 2.5681538e+02 -4.0075838e+02 -3.3002628e+03 - 2.2147986e+02 -4.0123874e+02 -3.2981870e+03 - 1.8235731e+02 -4.0147968e+02 -3.2963990e+03 - 1.3993138e+02 -4.0156337e+02 -3.2949479e+03 - 9.4849714e+01 -4.0156336e+02 -3.2938768e+03 - 4.7905231e+01 -4.0153813e+02 -3.2932196e+03 - 0.0000000e+00 -4.0152538e+02 -3.2929981e+03 - -4.7905231e+01 -4.0153813e+02 -3.2932196e+03 - -9.4849714e+01 -4.0156336e+02 -3.2938768e+03 - -1.3993138e+02 -4.0156337e+02 -3.2949479e+03 - -1.8235731e+02 -4.0147968e+02 -3.2963990e+03 - -2.2147986e+02 -4.0123874e+02 -3.2981870e+03 - -2.5681538e+02 -4.0075838e+02 -3.3002628e+03 - -2.8804627e+02 -3.9995396e+02 -3.3025744e+03 - -3.1500918e+02 -3.9874373e+02 -3.3050705e+03 - -3.3767411e+02 -3.9705270e+02 -3.3077021e+03 - -3.5611882e+02 -3.9481519e+02 -3.3104243e+03 - -3.7050252e+02 -3.9197592e+02 -3.3131973e+03 - -3.8104132e+02 -3.8849028e+02 -3.3159864e+03 - -3.8798732e+02 -3.8432372e+02 -3.3187625e+03 - -3.9161159e+02 -3.7945081e+02 -3.3215014e+03 - -3.9219122e+02 -3.7385403e+02 -3.3241833e+03 - -3.9000005e+02 -3.6752262e+02 -3.3267924e+03 - -3.8530220e+02 -3.6045138e+02 -3.3293164e+03 - -3.7834813e+02 -3.5263972e+02 -3.3317457e+03 - -3.6937238e+02 -3.4409073e+02 -3.3340732e+03 - -3.5859263e+02 -3.3481053e+02 -3.3362936e+03 - -3.4620963e+02 -3.2480767e+02 -3.3384034e+03 - -3.3240773e+02 -3.1409274e+02 -3.3404002e+03 - -3.1735580e+02 -3.0267800e+02 -3.3422826e+03 - -3.0120828e+02 -2.9057716e+02 -3.3440501e+03 - -2.8410634e+02 -2.7780524e+02 -3.3457027e+03 - -2.6617912e+02 -2.6437845e+02 -3.3472409e+03 - -2.4754479e+02 -2.5031412e+02 -3.3486656e+03 - -2.2831169e+02 -2.3563072e+02 -3.3499777e+03 - -2.0857930e+02 -2.2034782e+02 -3.3511786e+03 - -1.8843914e+02 -2.0448618e+02 -3.3522694e+03 - -1.6797556e+02 -1.8806774e+02 -3.3532515e+03 - -1.4726651e+02 -1.7111571e+02 -3.3541262e+03 - -1.2638416e+02 -1.5365464e+02 -3.3548948e+03 - -1.0539544e+02 -1.3571052e+02 -3.3555584e+03 - -8.4362624e+01 -1.1731085e+02 -3.3561180e+03 - -6.3343690e+01 -9.8484745e+01 -3.3565745e+03 - -4.2392757e+01 -7.9263068e+01 -3.3569288e+03 - -2.1560419e+01 -5.9678539e+01 -3.3571814e+03 - -8.9404417e-01 -3.9765877e+01 -3.3573328e+03 - 1.9561953e+01 -1.9561953e+01 -3.3573833e+03 - 3.9765877e+01 8.9404417e-01 -3.3573328e+03 - 5.9678539e+01 2.1560419e+01 -3.3571814e+03 - 7.9263068e+01 4.2392757e+01 -3.3569288e+03 - 9.8484745e+01 6.3343690e+01 -3.3565745e+03 - 1.1731085e+02 8.4362624e+01 -3.3561180e+03 - 1.3571052e+02 1.0539544e+02 -3.3555584e+03 - 1.5365464e+02 1.2638416e+02 -3.3548948e+03 - 1.7111571e+02 1.4726651e+02 -3.3541262e+03 - 1.8806774e+02 1.6797556e+02 -3.3532515e+03 - 2.0448618e+02 1.8843914e+02 -3.3522694e+03 - 2.2034782e+02 2.0857930e+02 -3.3511786e+03 - 2.3563072e+02 2.2831169e+02 -3.3499777e+03 - 2.5031412e+02 2.4754479e+02 -3.3486656e+03 - 2.6437845e+02 2.6617912e+02 -3.3472409e+03 - 2.7780524e+02 2.8410634e+02 -3.3457027e+03 - 2.9057716e+02 3.0120828e+02 -3.3440501e+03 - 3.0267800e+02 3.1735580e+02 -3.3422826e+03 - 3.1409274e+02 3.3240773e+02 -3.3404002e+03 - 3.2480767e+02 3.4620963e+02 -3.3384034e+03 - 3.3481053e+02 3.5859263e+02 -3.3362936e+03 - 3.4409073e+02 3.6937238e+02 -3.3340732e+03 - 3.5263972e+02 3.7834813e+02 -3.3317457e+03 - 3.6045138e+02 3.8530220e+02 -3.3293164e+03 - 3.6752262e+02 3.9000005e+02 -3.3267924e+03 - 3.7385403e+02 3.9219122e+02 -3.3241833e+03 - 3.7945081e+02 3.9161159e+02 -3.3215014e+03 - 3.8432372e+02 3.8798732e+02 -3.3187625e+03 - 3.8849028e+02 3.8104132e+02 -3.3159864e+03 - 3.9197592e+02 3.7050252e+02 -3.3131973e+03 - 3.9481519e+02 3.5611882e+02 -3.3104243e+03 - 3.9705270e+02 3.3767411e+02 -3.3077021e+03 - 3.9874373e+02 3.1500918e+02 -3.3050705e+03 - 3.9995396e+02 2.8804627e+02 -3.3025744e+03 - 4.0075838e+02 2.5681538e+02 -3.3002628e+03 - 4.0123874e+02 2.2147986e+02 -3.2981870e+03 - 4.0147968e+02 1.8235731e+02 -3.2963990e+03 - 4.0156337e+02 1.3993138e+02 -3.2949479e+03 - 4.0156336e+02 9.4849714e+01 -3.2938768e+03 - 4.0153813e+02 4.7905231e+01 -3.2932196e+03 - 4.0152538e+02 0.0000000e+00 -3.2929981e+03 - 3.0963423e+02 0.0000000e+00 -3.3364689e+03 - 3.0966176e+02 -4.7403025e+01 -3.3366704e+03 - 3.0973170e+02 -9.3916719e+01 -3.3372687e+03 - 3.0980741e+02 -1.3870381e+02 -3.3382453e+03 - 3.0983193e+02 -1.8102418e+02 -3.3395716e+03 - 3.0973339e+02 -2.2026763e+02 -3.3412108e+03 - 3.0943111e+02 -2.5597166e+02 -3.3431205e+03 - 3.0884166e+02 -2.8782458e+02 -3.3452561e+03 - 3.0788401e+02 -3.1565634e+02 -3.3475723e+03 - 3.0648344e+02 -3.3942082e+02 -3.3500259e+03 - 3.0457415e+02 -3.5917358e+02 -3.3525765e+03 - 3.0210056e+02 -3.7504843e+02 -3.3551879e+03 - 2.9901759e+02 -3.8723527e+02 -3.3578282e+03 - 2.9529028e+02 -3.9596070e+02 -3.3604698e+03 - 2.9089288e+02 -4.0147212e+02 -3.3630894e+03 - 2.8580773e+02 -4.0402533e+02 -3.3656677e+03 - 2.8002410e+02 -4.0387538e+02 -3.3681887e+03 - 2.7353705e+02 -4.0127018e+02 -3.3706394e+03 - 2.6634641e+02 -3.9644631e+02 -3.3730097e+03 - 2.5845586e+02 -3.8962652e+02 -3.3752913e+03 - 2.4987224e+02 -3.8101854e+02 -3.3774779e+03 - 2.4060493e+02 -3.7081473e+02 -3.3795647e+03 - 2.3066538e+02 -3.5919234e+02 -3.3815482e+03 - 2.2006675e+02 -3.4631425e+02 -3.3834257e+03 - 2.0882368e+02 -3.3232975e+02 -3.3851956e+03 - 1.9695205e+02 -3.1737566e+02 -3.3868565e+03 - 1.8446893e+02 -3.0157730e+02 -3.3884080e+03 - 1.7139242e+02 -2.8504955e+02 -3.3898498e+03 - 1.5774171e+02 -2.6789787e+02 -3.3911819e+03 - 1.4353699e+02 -2.5021914e+02 -3.3924046e+03 - 1.2879955e+02 -2.3210257e+02 -3.3935183e+03 - 1.1355175e+02 -2.1363048e+02 -3.3945236e+03 - 9.7817145e+01 -1.9487891e+02 -3.3954209e+03 - 8.1620500e+01 -1.7591832e+02 -3.3962110e+03 - 6.4987910e+01 -1.5681412e+02 -3.3968943e+03 - 4.7946873e+01 -1.3762713e+02 -3.3974715e+03 - 3.0526402e+01 -1.1841404e+02 -3.3979430e+03 - 1.2757137e+01 -9.9227784e+01 -3.3983093e+03 - -5.3285306e+00 -8.0117880e+01 -3.3985706e+03 - -2.3696318e+01 -6.1130733e+01 -3.3987274e+03 - -4.2309899e+01 -4.2309899e+01 -3.3987796e+03 - -6.1130733e+01 -2.3696318e+01 -3.3987274e+03 - -8.0117880e+01 -5.3285306e+00 -3.3985706e+03 - -9.9227784e+01 1.2757137e+01 -3.3983093e+03 - -1.1841404e+02 3.0526402e+01 -3.3979430e+03 - -1.3762713e+02 4.7946873e+01 -3.3974715e+03 - -1.5681412e+02 6.4987910e+01 -3.3968943e+03 - -1.7591832e+02 8.1620500e+01 -3.3962110e+03 - -1.9487891e+02 9.7817145e+01 -3.3954209e+03 - -2.1363048e+02 1.1355175e+02 -3.3945236e+03 - -2.3210257e+02 1.2879955e+02 -3.3935183e+03 - -2.5021914e+02 1.4353699e+02 -3.3924046e+03 - -2.6789787e+02 1.5774171e+02 -3.3911819e+03 - -2.8504955e+02 1.7139242e+02 -3.3898498e+03 - -3.0157730e+02 1.8446893e+02 -3.3884080e+03 - -3.1737566e+02 1.9695205e+02 -3.3868565e+03 - -3.3232975e+02 2.0882368e+02 -3.3851956e+03 - -3.4631425e+02 2.2006675e+02 -3.3834257e+03 - -3.5919234e+02 2.3066538e+02 -3.3815482e+03 - -3.7081473e+02 2.4060493e+02 -3.3795647e+03 - -3.8101854e+02 2.4987224e+02 -3.3774779e+03 - -3.8962652e+02 2.5845586e+02 -3.3752913e+03 - -3.9644631e+02 2.6634641e+02 -3.3730097e+03 - -4.0127018e+02 2.7353705e+02 -3.3706394e+03 - -4.0387538e+02 2.8002410e+02 -3.3681887e+03 - -4.0402533e+02 2.8580773e+02 -3.3656677e+03 - -4.0147212e+02 2.9089288e+02 -3.3630894e+03 - -3.9596070e+02 2.9529028e+02 -3.3604698e+03 - -3.8723527e+02 2.9901759e+02 -3.3578282e+03 - -3.7504843e+02 3.0210056e+02 -3.3551879e+03 - -3.5917358e+02 3.0457415e+02 -3.3525765e+03 - -3.3942082e+02 3.0648344e+02 -3.3500259e+03 - -3.1565634e+02 3.0788401e+02 -3.3475723e+03 - -2.8782458e+02 3.0884166e+02 -3.3452561e+03 - -2.5597166e+02 3.0943111e+02 -3.3431205e+03 - -2.2026763e+02 3.0973339e+02 -3.3412108e+03 - -1.8102418e+02 3.0983193e+02 -3.3395716e+03 - -1.3870381e+02 3.0980741e+02 -3.3382453e+03 - -9.3916719e+01 3.0973170e+02 -3.3372687e+03 - -4.7403025e+01 3.0966176e+02 -3.3366704e+03 - 0.0000000e+00 3.0963423e+02 -3.3364689e+03 - 4.7403025e+01 3.0966176e+02 -3.3366704e+03 - 9.3916719e+01 3.0973170e+02 -3.3372687e+03 - 1.3870381e+02 3.0980741e+02 -3.3382453e+03 - 1.8102418e+02 3.0983193e+02 -3.3395716e+03 - 2.2026763e+02 3.0973339e+02 -3.3412108e+03 - 2.5597166e+02 3.0943111e+02 -3.3431205e+03 - 2.8782458e+02 3.0884166e+02 -3.3452561e+03 - 3.1565634e+02 3.0788401e+02 -3.3475723e+03 - 3.3942082e+02 3.0648344e+02 -3.3500259e+03 - 3.5917358e+02 3.0457415e+02 -3.3525765e+03 - 3.7504843e+02 3.0210056e+02 -3.3551879e+03 - 3.8723527e+02 2.9901759e+02 -3.3578282e+03 - 3.9596070e+02 2.9529028e+02 -3.3604698e+03 - 4.0147212e+02 2.9089288e+02 -3.3630894e+03 - 4.0402533e+02 2.8580773e+02 -3.3656677e+03 - 4.0387538e+02 2.8002410e+02 -3.3681887e+03 - 4.0127018e+02 2.7353705e+02 -3.3706394e+03 - 3.9644631e+02 2.6634641e+02 -3.3730097e+03 - 3.8962652e+02 2.5845586e+02 -3.3752913e+03 - 3.8101854e+02 2.4987224e+02 -3.3774779e+03 - 3.7081473e+02 2.4060493e+02 -3.3795647e+03 - 3.5919234e+02 2.3066538e+02 -3.3815482e+03 - 3.4631425e+02 2.2006675e+02 -3.3834257e+03 - 3.3232975e+02 2.0882368e+02 -3.3851956e+03 - 3.1737566e+02 1.9695205e+02 -3.3868565e+03 - 3.0157730e+02 1.8446893e+02 -3.3884080e+03 - 2.8504955e+02 1.7139242e+02 -3.3898498e+03 - 2.6789787e+02 1.5774171e+02 -3.3911819e+03 - 2.5021914e+02 1.4353699e+02 -3.3924046e+03 - 2.3210257e+02 1.2879955e+02 -3.3935183e+03 - 2.1363048e+02 1.1355175e+02 -3.3945236e+03 - 1.9487891e+02 9.7817145e+01 -3.3954209e+03 - 1.7591832e+02 8.1620500e+01 -3.3962110e+03 - 1.5681412e+02 6.4987910e+01 -3.3968943e+03 - 1.3762713e+02 4.7946873e+01 -3.3974715e+03 - 1.1841404e+02 3.0526402e+01 -3.3979430e+03 - 9.9227784e+01 1.2757137e+01 -3.3983093e+03 - 8.0117880e+01 -5.3285306e+00 -3.3985706e+03 - 6.1130733e+01 -2.3696318e+01 -3.3987274e+03 - 4.2309899e+01 -4.2309899e+01 -3.3987796e+03 - 2.3696318e+01 -6.1130733e+01 -3.3987274e+03 - 5.3285306e+00 -8.0117880e+01 -3.3985706e+03 - -1.2757137e+01 -9.9227784e+01 -3.3983093e+03 - -3.0526402e+01 -1.1841404e+02 -3.3979430e+03 - -4.7946873e+01 -1.3762713e+02 -3.3974715e+03 - -6.4987910e+01 -1.5681412e+02 -3.3968943e+03 - -8.1620500e+01 -1.7591832e+02 -3.3962110e+03 - -9.7817145e+01 -1.9487891e+02 -3.3954209e+03 - -1.1355175e+02 -2.1363048e+02 -3.3945236e+03 - -1.2879955e+02 -2.3210257e+02 -3.3935183e+03 - -1.4353699e+02 -2.5021914e+02 -3.3924046e+03 - -1.5774171e+02 -2.6789787e+02 -3.3911819e+03 - -1.7139242e+02 -2.8504955e+02 -3.3898498e+03 - -1.8446893e+02 -3.0157730e+02 -3.3884080e+03 - -1.9695205e+02 -3.1737566e+02 -3.3868565e+03 - -2.0882368e+02 -3.3232975e+02 -3.3851956e+03 - -2.2006675e+02 -3.4631425e+02 -3.3834257e+03 - -2.3066538e+02 -3.5919234e+02 -3.3815482e+03 - -2.4060493e+02 -3.7081473e+02 -3.3795647e+03 - -2.4987224e+02 -3.8101854e+02 -3.3774779e+03 - -2.5845586e+02 -3.8962652e+02 -3.3752913e+03 - -2.6634641e+02 -3.9644631e+02 -3.3730097e+03 - -2.7353705e+02 -4.0127018e+02 -3.3706394e+03 - -2.8002410e+02 -4.0387538e+02 -3.3681887e+03 - -2.8580773e+02 -4.0402533e+02 -3.3656677e+03 - -2.9089288e+02 -4.0147212e+02 -3.3630894e+03 - -2.9529028e+02 -3.9596070e+02 -3.3604698e+03 - -2.9901759e+02 -3.8723527e+02 -3.3578282e+03 - -3.0210056e+02 -3.7504843e+02 -3.3551879e+03 - -3.0457415e+02 -3.5917358e+02 -3.3525765e+03 - -3.0648344e+02 -3.3942082e+02 -3.3500259e+03 - -3.0788401e+02 -3.1565634e+02 -3.3475723e+03 - -3.0884166e+02 -2.8782458e+02 -3.3452561e+03 - -3.0943111e+02 -2.5597166e+02 -3.3431205e+03 - -3.0973339e+02 -2.2026763e+02 -3.3412108e+03 - -3.0983193e+02 -1.8102418e+02 -3.3395716e+03 - -3.0980741e+02 -1.3870381e+02 -3.3382453e+03 - -3.0973170e+02 -9.3916719e+01 -3.3372687e+03 - -3.0966176e+02 -4.7403025e+01 -3.3366704e+03 - -3.0963423e+02 -4.8134273e-09 -3.3364689e+03 - -3.0966176e+02 4.7403025e+01 -3.3366704e+03 - -3.0973170e+02 9.3916719e+01 -3.3372687e+03 - -3.0980741e+02 1.3870381e+02 -3.3382453e+03 - -3.0983193e+02 1.8102418e+02 -3.3395716e+03 - -3.0973339e+02 2.2026763e+02 -3.3412108e+03 - -3.0943111e+02 2.5597166e+02 -3.3431205e+03 - -3.0884166e+02 2.8782458e+02 -3.3452561e+03 - -3.0788401e+02 3.1565634e+02 -3.3475723e+03 - -3.0648344e+02 3.3942082e+02 -3.3500259e+03 - -3.0457415e+02 3.5917358e+02 -3.3525765e+03 - -3.0210056e+02 3.7504843e+02 -3.3551879e+03 - -2.9901759e+02 3.8723527e+02 -3.3578282e+03 - -2.9529028e+02 3.9596070e+02 -3.3604698e+03 - -2.9089288e+02 4.0147212e+02 -3.3630894e+03 - -2.8580773e+02 4.0402533e+02 -3.3656677e+03 - -2.8002410e+02 4.0387538e+02 -3.3681887e+03 - -2.7353705e+02 4.0127018e+02 -3.3706394e+03 - -2.6634641e+02 3.9644631e+02 -3.3730097e+03 - -2.5845586e+02 3.8962652e+02 -3.3752913e+03 - -2.4987224e+02 3.8101854e+02 -3.3774779e+03 - -2.4060493e+02 3.7081473e+02 -3.3795647e+03 - -2.3066538e+02 3.5919234e+02 -3.3815482e+03 - -2.2006675e+02 3.4631425e+02 -3.3834257e+03 - -2.0882368e+02 3.3232975e+02 -3.3851956e+03 - -1.9695205e+02 3.1737566e+02 -3.3868565e+03 - -1.8446893e+02 3.0157730e+02 -3.3884080e+03 - -1.7139242e+02 2.8504955e+02 -3.3898498e+03 - -1.5774171e+02 2.6789787e+02 -3.3911819e+03 - -1.4353699e+02 2.5021914e+02 -3.3924046e+03 - -1.2879955e+02 2.3210257e+02 -3.3935183e+03 - -1.1355175e+02 2.1363048e+02 -3.3945236e+03 - -9.7817145e+01 1.9487891e+02 -3.3954209e+03 - -8.1620500e+01 1.7591832e+02 -3.3962110e+03 - -6.4987910e+01 1.5681412e+02 -3.3968943e+03 - -4.7946873e+01 1.3762713e+02 -3.3974715e+03 - -3.0526402e+01 1.1841404e+02 -3.3979430e+03 - -1.2757137e+01 9.9227784e+01 -3.3983093e+03 - 5.3285306e+00 8.0117880e+01 -3.3985706e+03 - 2.3696318e+01 6.1130733e+01 -3.3987274e+03 - 4.2309899e+01 4.2309899e+01 -3.3987796e+03 - 6.1130733e+01 2.3696318e+01 -3.3987274e+03 - 8.0117880e+01 5.3285306e+00 -3.3985706e+03 - 9.9227784e+01 -1.2757137e+01 -3.3983093e+03 - 1.1841404e+02 -3.0526402e+01 -3.3979430e+03 - 1.3762713e+02 -4.7946873e+01 -3.3974715e+03 - 1.5681412e+02 -6.4987910e+01 -3.3968943e+03 - 1.7591832e+02 -8.1620500e+01 -3.3962110e+03 - 1.9487891e+02 -9.7817145e+01 -3.3954209e+03 - 2.1363048e+02 -1.1355175e+02 -3.3945236e+03 - 2.3210257e+02 -1.2879955e+02 -3.3935183e+03 - 2.5021914e+02 -1.4353699e+02 -3.3924046e+03 - 2.6789787e+02 -1.5774171e+02 -3.3911819e+03 - 2.8504955e+02 -1.7139242e+02 -3.3898498e+03 - 3.0157730e+02 -1.8446893e+02 -3.3884080e+03 - 3.1737566e+02 -1.9695205e+02 -3.3868565e+03 - 3.3232975e+02 -2.0882368e+02 -3.3851956e+03 - 3.4631425e+02 -2.2006675e+02 -3.3834257e+03 - 3.5919234e+02 -2.3066538e+02 -3.3815482e+03 - 3.7081473e+02 -2.4060493e+02 -3.3795647e+03 - 3.8101854e+02 -2.4987224e+02 -3.3774779e+03 - 3.8962652e+02 -2.5845586e+02 -3.3752913e+03 - 3.9644631e+02 -2.6634641e+02 -3.3730097e+03 - 4.0127018e+02 -2.7353705e+02 -3.3706394e+03 - 4.0387538e+02 -2.8002410e+02 -3.3681887e+03 - 4.0402533e+02 -2.8580773e+02 -3.3656677e+03 - 4.0147212e+02 -2.9089288e+02 -3.3630894e+03 - 3.9596070e+02 -2.9529028e+02 -3.3604698e+03 - 3.8723527e+02 -2.9901759e+02 -3.3578282e+03 - 3.7504843e+02 -3.0210056e+02 -3.3551879e+03 - 3.5917358e+02 -3.0457415e+02 -3.3525765e+03 - 3.3942082e+02 -3.0648344e+02 -3.3500259e+03 - 3.1565634e+02 -3.0788401e+02 -3.3475723e+03 - 2.8782458e+02 -3.0884166e+02 -3.3452561e+03 - 2.5597166e+02 -3.0943111e+02 -3.3431205e+03 - 2.2026763e+02 -3.0973339e+02 -3.3412108e+03 - 1.8102418e+02 -3.0983193e+02 -3.3395716e+03 - 1.3870381e+02 -3.0980741e+02 -3.3382453e+03 - 9.3916719e+01 -3.0973170e+02 -3.3372687e+03 - 4.7403025e+01 -3.0966176e+02 -3.3366704e+03 - 0.0000000e+00 -3.0963423e+02 -3.3364689e+03 - -4.7403025e+01 -3.0966176e+02 -3.3366704e+03 - -9.3916719e+01 -3.0973170e+02 -3.3372687e+03 - -1.3870381e+02 -3.0980741e+02 -3.3382453e+03 - -1.8102418e+02 -3.0983193e+02 -3.3395716e+03 - -2.2026763e+02 -3.0973339e+02 -3.3412108e+03 - -2.5597166e+02 -3.0943111e+02 -3.3431205e+03 - -2.8782458e+02 -3.0884166e+02 -3.3452561e+03 - -3.1565634e+02 -3.0788401e+02 -3.3475723e+03 - -3.3942082e+02 -3.0648344e+02 -3.3500259e+03 - -3.5917358e+02 -3.0457415e+02 -3.3525765e+03 - -3.7504843e+02 -3.0210056e+02 -3.3551879e+03 - -3.8723527e+02 -2.9901759e+02 -3.3578282e+03 - -3.9596070e+02 -2.9529028e+02 -3.3604698e+03 - -4.0147212e+02 -2.9089288e+02 -3.3630894e+03 - -4.0402533e+02 -2.8580773e+02 -3.3656677e+03 - -4.0387538e+02 -2.8002410e+02 -3.3681887e+03 - -4.0127018e+02 -2.7353705e+02 -3.3706394e+03 - -3.9644631e+02 -2.6634641e+02 -3.3730097e+03 - -3.8962652e+02 -2.5845586e+02 -3.3752913e+03 - -3.8101854e+02 -2.4987224e+02 -3.3774779e+03 - -3.7081473e+02 -2.4060493e+02 -3.3795647e+03 - -3.5919234e+02 -2.3066538e+02 -3.3815482e+03 - -3.4631425e+02 -2.2006675e+02 -3.3834257e+03 - -3.3232975e+02 -2.0882368e+02 -3.3851956e+03 - -3.1737566e+02 -1.9695205e+02 -3.3868565e+03 - -3.0157730e+02 -1.8446893e+02 -3.3884080e+03 - -2.8504955e+02 -1.7139242e+02 -3.3898498e+03 - -2.6789787e+02 -1.5774171e+02 -3.3911819e+03 - -2.5021914e+02 -1.4353699e+02 -3.3924046e+03 - -2.3210257e+02 -1.2879955e+02 -3.3935183e+03 - -2.1363048e+02 -1.1355175e+02 -3.3945236e+03 - -1.9487891e+02 -9.7817145e+01 -3.3954209e+03 - -1.7591832e+02 -8.1620500e+01 -3.3962110e+03 - -1.5681412e+02 -6.4987910e+01 -3.3968943e+03 - -1.3762713e+02 -4.7946873e+01 -3.3974715e+03 - -1.1841404e+02 -3.0526402e+01 -3.3979430e+03 - -9.9227784e+01 -1.2757137e+01 -3.3983093e+03 - -8.0117880e+01 5.3285306e+00 -3.3985706e+03 - -6.1130733e+01 2.3696318e+01 -3.3987274e+03 - -4.2309899e+01 4.2309899e+01 -3.3987796e+03 - -2.3696318e+01 6.1130733e+01 -3.3987274e+03 - -5.3285306e+00 8.0117880e+01 -3.3985706e+03 - 1.2757137e+01 9.9227784e+01 -3.3983093e+03 - 3.0526402e+01 1.1841404e+02 -3.3979430e+03 - 4.7946873e+01 1.3762713e+02 -3.3974715e+03 - 6.4987910e+01 1.5681412e+02 -3.3968943e+03 - 8.1620500e+01 1.7591832e+02 -3.3962110e+03 - 9.7817145e+01 1.9487891e+02 -3.3954209e+03 - 1.1355175e+02 2.1363048e+02 -3.3945236e+03 - 1.2879955e+02 2.3210257e+02 -3.3935183e+03 - 1.4353699e+02 2.5021914e+02 -3.3924046e+03 - 1.5774171e+02 2.6789787e+02 -3.3911819e+03 - 1.7139242e+02 2.8504955e+02 -3.3898498e+03 - 1.8446893e+02 3.0157730e+02 -3.3884080e+03 - 1.9695205e+02 3.1737566e+02 -3.3868565e+03 - 2.0882368e+02 3.3232975e+02 -3.3851956e+03 - 2.2006675e+02 3.4631425e+02 -3.3834257e+03 - 2.3066538e+02 3.5919234e+02 -3.3815482e+03 - 2.4060493e+02 3.7081473e+02 -3.3795647e+03 - 2.4987224e+02 3.8101854e+02 -3.3774779e+03 - 2.5845586e+02 3.8962652e+02 -3.3752913e+03 - 2.6634641e+02 3.9644631e+02 -3.3730097e+03 - 2.7353705e+02 4.0127018e+02 -3.3706394e+03 - 2.8002410e+02 4.0387538e+02 -3.3681887e+03 - 2.8580773e+02 4.0402533e+02 -3.3656677e+03 - 2.9089288e+02 4.0147212e+02 -3.3630894e+03 - 2.9529028e+02 3.9596070e+02 -3.3604698e+03 - 2.9901759e+02 3.8723527e+02 -3.3578282e+03 - 3.0210056e+02 3.7504843e+02 -3.3551879e+03 - 3.0457415e+02 3.5917358e+02 -3.3525765e+03 - 3.0648344e+02 3.3942082e+02 -3.3500259e+03 - 3.0788401e+02 3.1565634e+02 -3.3475723e+03 - 3.0884166e+02 2.8782458e+02 -3.3452561e+03 - 3.0943111e+02 2.5597166e+02 -3.3431205e+03 - 3.0973339e+02 2.2026763e+02 -3.3412108e+03 - 3.0983193e+02 1.8102418e+02 -3.3395716e+03 - 3.0980741e+02 1.3870381e+02 -3.3382453e+03 - 3.0973170e+02 9.3916719e+01 -3.3372687e+03 - 3.0966176e+02 4.7403025e+01 -3.3366704e+03 - 3.0963423e+02 4.8134273e-09 -3.3364689e+03 - 2.2187560e+02 0.0000000e+00 -3.3758963e+03 - 2.2191647e+02 -4.6843010e+01 -3.3760793e+03 - 2.2202687e+02 -9.2862226e+01 -3.3766229e+03 - 2.2217139e+02 -1.3728018e+02 -3.3775116e+03 - 2.2229488e+02 -1.7940608e+02 -3.3787212e+03 - 2.2232751e+02 -2.1866557e+02 -3.3802200e+03 - 2.2219061e+02 -2.5461753e+02 -3.3819720e+03 - 2.2180244e+02 -2.8695792e+02 -3.3839382e+03 - 2.2108321e+02 -3.1551267e+02 -3.3860793e+03 - 2.1995901e+02 -3.4022276e+02 -3.3883570e+03 - 2.1836437e+02 -3.6112482e+02 -3.3907352e+03 - 2.1624376e+02 -3.7833032e+02 -3.3931810e+03 - 2.1355192e+02 -3.9200550e+02 -3.3956653e+03 - 2.1025365e+02 -4.0235358e+02 -3.3981622e+03 - 2.0632294e+02 -4.0959985e+02 -3.4006496e+03 - 2.0174201e+02 -4.1397990e+02 -3.4031087e+03 - 1.9650008e+02 -4.1573076e+02 -3.4055238e+03 - 1.9059236e+02 -4.1508449e+02 -3.4078817e+03 - 1.8401892e+02 -4.1226395e+02 -3.4101717e+03 - 1.7678387e+02 -4.0748010e+02 -3.4123850e+03 - 1.6889456e+02 -4.0093057e+02 -3.4145144e+03 - 1.6036095e+02 -3.9279911e+02 -3.4165542e+03 - 1.5119517e+02 -3.8325562e+02 -3.4185000e+03 - 1.4141106e+02 -3.7245665e+02 -3.4203482e+03 - 1.3102395e+02 -3.6054611e+02 -3.4220961e+03 - 1.2005042e+02 -3.4765610e+02 -3.4237415e+03 - 1.0850817e+02 -3.3390789e+02 -3.4252831e+03 - 9.6415922e+01 -3.1941279e+02 -3.4267195e+03 - 8.3793375e+01 -3.0427308e+02 -3.4280501e+03 - 7.0661199e+01 -2.8858285e+02 -3.4292744e+03 - 5.7041044e+01 -2.7242880e+02 -3.4303920e+03 - 4.2955573e+01 -2.5589097e+02 -3.4314028e+03 - 2.8428515e+01 -2.3904336e+02 -3.4323067e+03 - 1.3484736e+01 -2.2195455e+02 -3.4331039e+03 - -1.8496855e+00 -2.0468823e+02 -3.4337943e+03 - -1.7547367e+01 -1.8730367e+02 -3.4343783e+03 - -3.3579516e+01 -1.6985613e+02 -3.4348558e+03 - -4.9915821e+01 -1.5239724e+02 -3.4352270e+03 - -6.6524323e+01 -1.3497532e+02 -3.4354921e+03 - -8.3371279e+01 -1.1763571e+02 -3.4356511e+03 - -1.0042101e+02 -1.0042101e+02 -3.4357041e+03 - -1.1763571e+02 -8.3371279e+01 -3.4356511e+03 - -1.3497532e+02 -6.6524323e+01 -3.4354921e+03 - -1.5239724e+02 -4.9915821e+01 -3.4352270e+03 - -1.6985613e+02 -3.3579516e+01 -3.4348558e+03 - -1.8730367e+02 -1.7547367e+01 -3.4343783e+03 - -2.0468823e+02 -1.8496855e+00 -3.4337943e+03 - -2.2195455e+02 1.3484736e+01 -3.4331039e+03 - -2.3904336e+02 2.8428515e+01 -3.4323067e+03 - -2.5589097e+02 4.2955573e+01 -3.4314028e+03 - -2.7242880e+02 5.7041044e+01 -3.4303920e+03 - -2.8858285e+02 7.0661199e+01 -3.4292744e+03 - -3.0427308e+02 8.3793375e+01 -3.4280501e+03 - -3.1941279e+02 9.6415922e+01 -3.4267195e+03 - -3.3390789e+02 1.0850817e+02 -3.4252831e+03 - -3.4765610e+02 1.2005042e+02 -3.4237415e+03 - -3.6054611e+02 1.3102395e+02 -3.4220961e+03 - -3.7245665e+02 1.4141106e+02 -3.4203482e+03 - -3.8325562e+02 1.5119517e+02 -3.4185000e+03 - -3.9279911e+02 1.6036095e+02 -3.4165542e+03 - -4.0093057e+02 1.6889456e+02 -3.4145144e+03 - -4.0748010e+02 1.7678387e+02 -3.4123850e+03 - -4.1226395e+02 1.8401892e+02 -3.4101717e+03 - -4.1508449e+02 1.9059236e+02 -3.4078817e+03 - -4.1573076e+02 1.9650008e+02 -3.4055238e+03 - -4.1397990e+02 2.0174201e+02 -3.4031087e+03 - -4.0959985e+02 2.0632294e+02 -3.4006496e+03 - -4.0235358e+02 2.1025365e+02 -3.3981622e+03 - -3.9200550e+02 2.1355192e+02 -3.3956653e+03 - -3.7833032e+02 2.1624376e+02 -3.3931810e+03 - -3.6112482e+02 2.1836437e+02 -3.3907352e+03 - -3.4022276e+02 2.1995901e+02 -3.3883570e+03 - -3.1551267e+02 2.2108321e+02 -3.3860793e+03 - -2.8695792e+02 2.2180244e+02 -3.3839382e+03 - -2.5461753e+02 2.2219061e+02 -3.3819720e+03 - -2.1866557e+02 2.2232751e+02 -3.3802200e+03 - -1.7940608e+02 2.2229488e+02 -3.3787212e+03 - -1.3728018e+02 2.2217139e+02 -3.3775116e+03 - -9.2862226e+01 2.2202687e+02 -3.3766229e+03 - -4.6843010e+01 2.2191647e+02 -3.3760793e+03 - -4.8134273e-09 2.2187560e+02 -3.3758963e+03 - 4.6843010e+01 2.2191647e+02 -3.3760793e+03 - 9.2862226e+01 2.2202687e+02 -3.3766229e+03 - 1.3728018e+02 2.2217139e+02 -3.3775116e+03 - 1.7940608e+02 2.2229488e+02 -3.3787212e+03 - 2.1866557e+02 2.2232751e+02 -3.3802200e+03 - 2.5461753e+02 2.2219061e+02 -3.3819720e+03 - 2.8695792e+02 2.2180244e+02 -3.3839382e+03 - 3.1551267e+02 2.2108321e+02 -3.3860793e+03 - 3.4022276e+02 2.1995901e+02 -3.3883570e+03 - 3.6112482e+02 2.1836437e+02 -3.3907352e+03 - 3.7833032e+02 2.1624376e+02 -3.3931810e+03 - 3.9200550e+02 2.1355192e+02 -3.3956653e+03 - 4.0235358e+02 2.1025365e+02 -3.3981622e+03 - 4.0959985e+02 2.0632294e+02 -3.4006496e+03 - 4.1397990e+02 2.0174201e+02 -3.4031087e+03 - 4.1573076e+02 1.9650008e+02 -3.4055238e+03 - 4.1508449e+02 1.9059236e+02 -3.4078817e+03 - 4.1226395e+02 1.8401892e+02 -3.4101717e+03 - 4.0748010e+02 1.7678387e+02 -3.4123850e+03 - 4.0093057e+02 1.6889456e+02 -3.4145144e+03 - 3.9279911e+02 1.6036095e+02 -3.4165542e+03 - 3.8325562e+02 1.5119517e+02 -3.4185000e+03 - 3.7245665e+02 1.4141106e+02 -3.4203482e+03 - 3.6054611e+02 1.3102395e+02 -3.4220961e+03 - 3.4765610e+02 1.2005042e+02 -3.4237415e+03 - 3.3390789e+02 1.0850817e+02 -3.4252831e+03 - 3.1941279e+02 9.6415922e+01 -3.4267195e+03 - 3.0427308e+02 8.3793375e+01 -3.4280501e+03 - 2.8858285e+02 7.0661199e+01 -3.4292744e+03 - 2.7242880e+02 5.7041044e+01 -3.4303920e+03 - 2.5589097e+02 4.2955573e+01 -3.4314028e+03 - 2.3904336e+02 2.8428515e+01 -3.4323067e+03 - 2.2195455e+02 1.3484736e+01 -3.4331039e+03 - 2.0468823e+02 -1.8496855e+00 -3.4337943e+03 - 1.8730367e+02 -1.7547367e+01 -3.4343783e+03 - 1.6985613e+02 -3.3579516e+01 -3.4348558e+03 - 1.5239724e+02 -4.9915821e+01 -3.4352270e+03 - 1.3497532e+02 -6.6524323e+01 -3.4354921e+03 - 1.1763571e+02 -8.3371279e+01 -3.4356511e+03 - 1.0042101e+02 -1.0042101e+02 -3.4357041e+03 - 8.3371279e+01 -1.1763571e+02 -3.4356511e+03 - 6.6524323e+01 -1.3497532e+02 -3.4354921e+03 - 4.9915821e+01 -1.5239724e+02 -3.4352270e+03 - 3.3579516e+01 -1.6985613e+02 -3.4348558e+03 - 1.7547367e+01 -1.8730367e+02 -3.4343783e+03 - 1.8496855e+00 -2.0468823e+02 -3.4337943e+03 - -1.3484736e+01 -2.2195455e+02 -3.4331039e+03 - -2.8428515e+01 -2.3904336e+02 -3.4323067e+03 - -4.2955573e+01 -2.5589097e+02 -3.4314028e+03 - -5.7041044e+01 -2.7242880e+02 -3.4303920e+03 - -7.0661199e+01 -2.8858285e+02 -3.4292744e+03 - -8.3793375e+01 -3.0427308e+02 -3.4280501e+03 - -9.6415922e+01 -3.1941279e+02 -3.4267195e+03 - -1.0850817e+02 -3.3390789e+02 -3.4252831e+03 - -1.2005042e+02 -3.4765610e+02 -3.4237415e+03 - -1.3102395e+02 -3.6054611e+02 -3.4220961e+03 - -1.4141106e+02 -3.7245665e+02 -3.4203482e+03 - -1.5119517e+02 -3.8325562e+02 -3.4185000e+03 - -1.6036095e+02 -3.9279911e+02 -3.4165542e+03 - -1.6889456e+02 -4.0093057e+02 -3.4145144e+03 - -1.7678387e+02 -4.0748010e+02 -3.4123850e+03 - -1.8401892e+02 -4.1226395e+02 -3.4101717e+03 - -1.9059236e+02 -4.1508449e+02 -3.4078817e+03 - -1.9650008e+02 -4.1573076e+02 -3.4055238e+03 - -2.0174201e+02 -4.1397990e+02 -3.4031087e+03 - -2.0632294e+02 -4.0959985e+02 -3.4006496e+03 - -2.1025365e+02 -4.0235358e+02 -3.3981622e+03 - -2.1355192e+02 -3.9200550e+02 -3.3956653e+03 - -2.1624376e+02 -3.7833032e+02 -3.3931810e+03 - -2.1836437e+02 -3.6112482e+02 -3.3907352e+03 - -2.1995901e+02 -3.4022276e+02 -3.3883570e+03 - -2.2108321e+02 -3.1551267e+02 -3.3860793e+03 - -2.2180244e+02 -2.8695792e+02 -3.3839382e+03 - -2.2219061e+02 -2.5461753e+02 -3.3819720e+03 - -2.2232751e+02 -2.1866557e+02 -3.3802200e+03 - -2.2229488e+02 -1.7940608e+02 -3.3787212e+03 - -2.2217139e+02 -1.3728018e+02 -3.3775116e+03 - -2.2202687e+02 -9.2862226e+01 -3.3766229e+03 - -2.2191647e+02 -4.6843010e+01 -3.3760793e+03 - -2.2187560e+02 4.8134273e-09 -3.3758963e+03 - -2.2191647e+02 4.6843010e+01 -3.3760793e+03 - -2.2202687e+02 9.2862226e+01 -3.3766229e+03 - -2.2217139e+02 1.3728018e+02 -3.3775116e+03 - -2.2229488e+02 1.7940608e+02 -3.3787212e+03 - -2.2232751e+02 2.1866557e+02 -3.3802200e+03 - -2.2219061e+02 2.5461753e+02 -3.3819720e+03 - -2.2180244e+02 2.8695792e+02 -3.3839382e+03 - -2.2108321e+02 3.1551267e+02 -3.3860793e+03 - -2.1995901e+02 3.4022276e+02 -3.3883570e+03 - -2.1836437e+02 3.6112482e+02 -3.3907352e+03 - -2.1624376e+02 3.7833032e+02 -3.3931810e+03 - -2.1355192e+02 3.9200550e+02 -3.3956653e+03 - -2.1025365e+02 4.0235358e+02 -3.3981622e+03 - -2.0632294e+02 4.0959985e+02 -3.4006496e+03 - -2.0174201e+02 4.1397990e+02 -3.4031087e+03 - -1.9650008e+02 4.1573076e+02 -3.4055238e+03 - -1.9059236e+02 4.1508449e+02 -3.4078817e+03 - -1.8401892e+02 4.1226395e+02 -3.4101717e+03 - -1.7678387e+02 4.0748010e+02 -3.4123850e+03 - -1.6889456e+02 4.0093057e+02 -3.4145144e+03 - -1.6036095e+02 3.9279911e+02 -3.4165542e+03 - -1.5119517e+02 3.8325562e+02 -3.4185000e+03 - -1.4141106e+02 3.7245665e+02 -3.4203482e+03 - -1.3102395e+02 3.6054611e+02 -3.4220961e+03 - -1.2005042e+02 3.4765610e+02 -3.4237415e+03 - -1.0850817e+02 3.3390789e+02 -3.4252831e+03 - -9.6415922e+01 3.1941279e+02 -3.4267195e+03 - -8.3793375e+01 3.0427308e+02 -3.4280501e+03 - -7.0661199e+01 2.8858285e+02 -3.4292744e+03 - -5.7041044e+01 2.7242880e+02 -3.4303920e+03 - -4.2955573e+01 2.5589097e+02 -3.4314028e+03 - -2.8428515e+01 2.3904336e+02 -3.4323067e+03 - -1.3484736e+01 2.2195455e+02 -3.4331039e+03 - 1.8496855e+00 2.0468823e+02 -3.4337943e+03 - 1.7547367e+01 1.8730367e+02 -3.4343783e+03 - 3.3579516e+01 1.6985613e+02 -3.4348558e+03 - 4.9915821e+01 1.5239724e+02 -3.4352270e+03 - 6.6524323e+01 1.3497532e+02 -3.4354921e+03 - 8.3371279e+01 1.1763571e+02 -3.4356511e+03 - 1.0042101e+02 1.0042101e+02 -3.4357041e+03 - 1.1763571e+02 8.3371279e+01 -3.4356511e+03 - 1.3497532e+02 6.6524323e+01 -3.4354921e+03 - 1.5239724e+02 4.9915821e+01 -3.4352270e+03 - 1.6985613e+02 3.3579516e+01 -3.4348558e+03 - 1.8730367e+02 1.7547367e+01 -3.4343783e+03 - 2.0468823e+02 1.8496855e+00 -3.4337943e+03 - 2.2195455e+02 -1.3484736e+01 -3.4331039e+03 - 2.3904336e+02 -2.8428515e+01 -3.4323067e+03 - 2.5589097e+02 -4.2955573e+01 -3.4314028e+03 - 2.7242880e+02 -5.7041044e+01 -3.4303920e+03 - 2.8858285e+02 -7.0661199e+01 -3.4292744e+03 - 3.0427308e+02 -8.3793375e+01 -3.4280501e+03 - 3.1941279e+02 -9.6415922e+01 -3.4267195e+03 - 3.3390789e+02 -1.0850817e+02 -3.4252831e+03 - 3.4765610e+02 -1.2005042e+02 -3.4237415e+03 - 3.6054611e+02 -1.3102395e+02 -3.4220961e+03 - 3.7245665e+02 -1.4141106e+02 -3.4203482e+03 - 3.8325562e+02 -1.5119517e+02 -3.4185000e+03 - 3.9279911e+02 -1.6036095e+02 -3.4165542e+03 - 4.0093057e+02 -1.6889456e+02 -3.4145144e+03 - 4.0748010e+02 -1.7678387e+02 -3.4123850e+03 - 4.1226395e+02 -1.8401892e+02 -3.4101717e+03 - 4.1508449e+02 -1.9059236e+02 -3.4078817e+03 - 4.1573076e+02 -1.9650008e+02 -3.4055238e+03 - 4.1397990e+02 -2.0174201e+02 -3.4031087e+03 - 4.0959985e+02 -2.0632294e+02 -3.4006496e+03 - 4.0235358e+02 -2.1025365e+02 -3.3981622e+03 - 3.9200550e+02 -2.1355192e+02 -3.3956653e+03 - 3.7833032e+02 -2.1624376e+02 -3.3931810e+03 - 3.6112482e+02 -2.1836437e+02 -3.3907352e+03 - 3.4022276e+02 -2.1995901e+02 -3.3883570e+03 - 3.1551267e+02 -2.2108321e+02 -3.3860793e+03 - 2.8695792e+02 -2.2180244e+02 -3.3839382e+03 - 2.5461753e+02 -2.2219061e+02 -3.3819720e+03 - 2.1866557e+02 -2.2232751e+02 -3.3802200e+03 - 1.7940608e+02 -2.2229488e+02 -3.3787212e+03 - 1.3728018e+02 -2.2217139e+02 -3.3775116e+03 - 9.2862226e+01 -2.2202687e+02 -3.3766229e+03 - 4.6843010e+01 -2.2191647e+02 -3.3760793e+03 - -7.2201409e-09 -2.2187560e+02 -3.3758963e+03 - -4.6843010e+01 -2.2191647e+02 -3.3760793e+03 - -9.2862226e+01 -2.2202687e+02 -3.3766229e+03 - -1.3728018e+02 -2.2217139e+02 -3.3775116e+03 - -1.7940608e+02 -2.2229488e+02 -3.3787212e+03 - -2.1866557e+02 -2.2232751e+02 -3.3802200e+03 - -2.5461753e+02 -2.2219061e+02 -3.3819720e+03 - -2.8695792e+02 -2.2180244e+02 -3.3839382e+03 - -3.1551267e+02 -2.2108321e+02 -3.3860793e+03 - -3.4022276e+02 -2.1995901e+02 -3.3883570e+03 - -3.6112482e+02 -2.1836437e+02 -3.3907352e+03 - -3.7833032e+02 -2.1624376e+02 -3.3931810e+03 - -3.9200550e+02 -2.1355192e+02 -3.3956653e+03 - -4.0235358e+02 -2.1025365e+02 -3.3981622e+03 - -4.0959985e+02 -2.0632294e+02 -3.4006496e+03 - -4.1397990e+02 -2.0174201e+02 -3.4031087e+03 - -4.1573076e+02 -1.9650008e+02 -3.4055238e+03 - -4.1508449e+02 -1.9059236e+02 -3.4078817e+03 - -4.1226395e+02 -1.8401892e+02 -3.4101717e+03 - -4.0748010e+02 -1.7678387e+02 -3.4123850e+03 - -4.0093057e+02 -1.6889456e+02 -3.4145144e+03 - -3.9279911e+02 -1.6036095e+02 -3.4165542e+03 - -3.8325562e+02 -1.5119517e+02 -3.4185000e+03 - -3.7245665e+02 -1.4141106e+02 -3.4203482e+03 - -3.6054611e+02 -1.3102395e+02 -3.4220961e+03 - -3.4765610e+02 -1.2005042e+02 -3.4237415e+03 - -3.3390789e+02 -1.0850817e+02 -3.4252831e+03 - -3.1941279e+02 -9.6415922e+01 -3.4267195e+03 - -3.0427308e+02 -8.3793375e+01 -3.4280501e+03 - -2.8858285e+02 -7.0661199e+01 -3.4292744e+03 - -2.7242880e+02 -5.7041044e+01 -3.4303920e+03 - -2.5589097e+02 -4.2955573e+01 -3.4314028e+03 - -2.3904336e+02 -2.8428515e+01 -3.4323067e+03 - -2.2195455e+02 -1.3484736e+01 -3.4331039e+03 - -2.0468823e+02 1.8496855e+00 -3.4337943e+03 - -1.8730367e+02 1.7547367e+01 -3.4343783e+03 - -1.6985613e+02 3.3579516e+01 -3.4348558e+03 - -1.5239724e+02 4.9915821e+01 -3.4352270e+03 - -1.3497532e+02 6.6524323e+01 -3.4354921e+03 - -1.1763571e+02 8.3371279e+01 -3.4356511e+03 - -1.0042101e+02 1.0042101e+02 -3.4357041e+03 - -8.3371279e+01 1.1763571e+02 -3.4356511e+03 - -6.6524323e+01 1.3497532e+02 -3.4354921e+03 - -4.9915821e+01 1.5239724e+02 -3.4352270e+03 - -3.3579516e+01 1.6985613e+02 -3.4348558e+03 - -1.7547367e+01 1.8730367e+02 -3.4343783e+03 - -1.8496855e+00 2.0468823e+02 -3.4337943e+03 - 1.3484736e+01 2.2195455e+02 -3.4331039e+03 - 2.8428515e+01 2.3904336e+02 -3.4323067e+03 - 4.2955573e+01 2.5589097e+02 -3.4314028e+03 - 5.7041044e+01 2.7242880e+02 -3.4303920e+03 - 7.0661199e+01 2.8858285e+02 -3.4292744e+03 - 8.3793375e+01 3.0427308e+02 -3.4280501e+03 - 9.6415922e+01 3.1941279e+02 -3.4267195e+03 - 1.0850817e+02 3.3390789e+02 -3.4252831e+03 - 1.2005042e+02 3.4765610e+02 -3.4237415e+03 - 1.3102395e+02 3.6054611e+02 -3.4220961e+03 - 1.4141106e+02 3.7245665e+02 -3.4203482e+03 - 1.5119517e+02 3.8325562e+02 -3.4185000e+03 - 1.6036095e+02 3.9279911e+02 -3.4165542e+03 - 1.6889456e+02 4.0093057e+02 -3.4145144e+03 - 1.7678387e+02 4.0748010e+02 -3.4123850e+03 - 1.8401892e+02 4.1226395e+02 -3.4101717e+03 - 1.9059236e+02 4.1508449e+02 -3.4078817e+03 - 1.9650008e+02 4.1573076e+02 -3.4055238e+03 - 2.0174201e+02 4.1397990e+02 -3.4031087e+03 - 2.0632294e+02 4.0959985e+02 -3.4006496e+03 - 2.1025365e+02 4.0235358e+02 -3.3981622e+03 - 2.1355192e+02 3.9200550e+02 -3.3956653e+03 - 2.1624376e+02 3.7833032e+02 -3.3931810e+03 - 2.1836437e+02 3.6112482e+02 -3.3907352e+03 - 2.1995901e+02 3.4022276e+02 -3.3883570e+03 - 2.2108321e+02 3.1551267e+02 -3.3860793e+03 - 2.2180244e+02 2.8695792e+02 -3.3839382e+03 - 2.2219061e+02 2.5461753e+02 -3.3819720e+03 - 2.2232751e+02 2.1866557e+02 -3.3802200e+03 - 2.2229488e+02 1.7940608e+02 -3.3787212e+03 - 2.2217139e+02 1.3728018e+02 -3.3775116e+03 - 2.2202687e+02 9.2862226e+01 -3.3766229e+03 - 2.2191647e+02 4.6843010e+01 -3.3760793e+03 - 2.2187560e+02 -4.8134273e-09 -3.3758963e+03 - 1.3867972e+02 2.4067136e-09 -3.4113286e+03 - 1.3873255e+02 -4.6210633e+01 -3.4114944e+03 - 1.3887929e+02 -9.1657939e+01 -3.4119872e+03 - 1.3908590e+02 -1.3561991e+02 -3.4127940e+03 - 1.3929925e+02 -1.7745203e+02 -3.4138940e+03 - 1.3945186e+02 -2.1661432e+02 -3.4152605e+03 - 1.3946744e+02 -2.5268712e+02 -3.4168623e+03 - 1.3926638e+02 -2.8537539e+02 -3.4186659e+03 - 1.3877062e+02 -3.1450336e+02 -3.4206368e+03 - 1.3790747e+02 -3.4000187e+02 -3.4227415e+03 - 1.3661225e+02 -3.6189154e+02 -3.4249477e+03 - 1.3482979e+02 -3.8026418e+02 -3.4272258e+03 - 1.3251497e+02 -3.9526478e+02 -3.4295491e+03 - 1.2963249e+02 -4.0707508e+02 -3.4318938e+03 - 1.2615625e+02 -4.1589980e+02 -3.4342390e+03 - 1.2206833e+02 -4.2195540e+02 -3.4365668e+03 - 1.1735791e+02 -4.2546160e+02 -3.4388617e+03 - 1.1202024e+02 -4.2663508e+02 -3.4411107e+03 - 1.0605554e+02 -4.2568518e+02 -3.4433029e+03 - 9.9468161e+01 -4.2281111e+02 -3.4454292e+03 - 9.2265789e+01 -4.1820032e+02 -3.4474817e+03 - 8.4458810e+01 -4.1202775e+02 -3.4494543e+03 - 7.6059795e+01 -4.0445575e+02 -3.4513418e+03 - 6.7083098e+01 -3.9563431e+02 -3.4531399e+03 - 5.7544543e+01 -3.8570163e+02 -3.4548451e+03 - 4.7461205e+01 -3.7478490e+02 -3.4564547e+03 - 3.6851245e+01 -3.6300102e+02 -3.4579663e+03 - 2.5733808e+01 -3.5045748e+02 -3.4593781e+03 - 1.4128965e+01 -3.3725318e+02 -3.4606887e+03 - 2.0576837e+00 -3.2347919e+02 -3.4618970e+03 - -1.0458161e+01 -3.0921947e+02 -3.4630020e+03 - -2.3395762e+01 -2.9455161e+02 -3.4640031e+03 - -3.6731335e+01 -2.7954738e+02 -3.4648998e+03 - -5.0440053e+01 -2.6427333e+02 -3.4656915e+03 - -6.4495970e+01 -2.4879130e+02 -3.4663782e+03 - -7.8871935e+01 -2.3315885e+02 -3.4669594e+03 - -9.3539490e+01 -2.1742968e+02 -3.4674351e+03 - -1.0846876e+02 -2.0165400e+02 -3.4678052e+03 - -1.2362831e+02 -1.8587884e+02 -3.4680696e+03 - -1.3898505e+02 -1.7014835e+02 -3.4682283e+03 - -1.5450404e+02 -1.5450404e+02 -3.4682812e+03 - -1.7014835e+02 -1.3898505e+02 -3.4682283e+03 - -1.8587884e+02 -1.2362831e+02 -3.4680696e+03 - -2.0165400e+02 -1.0846876e+02 -3.4678052e+03 - -2.1742968e+02 -9.3539490e+01 -3.4674351e+03 - -2.3315885e+02 -7.8871935e+01 -3.4669594e+03 - -2.4879130e+02 -6.4495970e+01 -3.4663782e+03 - -2.6427333e+02 -5.0440053e+01 -3.4656915e+03 - -2.7954738e+02 -3.6731335e+01 -3.4648998e+03 - -2.9455161e+02 -2.3395762e+01 -3.4640031e+03 - -3.0921947e+02 -1.0458161e+01 -3.4630020e+03 - -3.2347919e+02 2.0576837e+00 -3.4618970e+03 - -3.3725318e+02 1.4128965e+01 -3.4606887e+03 - -3.5045748e+02 2.5733808e+01 -3.4593781e+03 - -3.6300102e+02 3.6851245e+01 -3.4579663e+03 - -3.7478490e+02 4.7461205e+01 -3.4564547e+03 - -3.8570163e+02 5.7544543e+01 -3.4548451e+03 - -3.9563431e+02 6.7083098e+01 -3.4531399e+03 - -4.0445575e+02 7.6059795e+01 -3.4513418e+03 - -4.1202775e+02 8.4458810e+01 -3.4494543e+03 - -4.1820032e+02 9.2265789e+01 -3.4474817e+03 - -4.2281111e+02 9.9468161e+01 -3.4454292e+03 - -4.2568518e+02 1.0605554e+02 -3.4433029e+03 - -4.2663508e+02 1.1202024e+02 -3.4411107e+03 - -4.2546160e+02 1.1735791e+02 -3.4388617e+03 - -4.2195540e+02 1.2206833e+02 -3.4365668e+03 - -4.1589980e+02 1.2615625e+02 -3.4342390e+03 - -4.0707508e+02 1.2963249e+02 -3.4318938e+03 - -3.9526478e+02 1.3251497e+02 -3.4295491e+03 - -3.8026418e+02 1.3482979e+02 -3.4272258e+03 - -3.6189154e+02 1.3661225e+02 -3.4249477e+03 - -3.4000187e+02 1.3790747e+02 -3.4227415e+03 - -3.1450336e+02 1.3877062e+02 -3.4206368e+03 - -2.8537539e+02 1.3926638e+02 -3.4186659e+03 - -2.5268712e+02 1.3946744e+02 -3.4168623e+03 - -2.1661432e+02 1.3945186e+02 -3.4152605e+03 - -1.7745203e+02 1.3929925e+02 -3.4138940e+03 - -1.3561991e+02 1.3908590e+02 -3.4127940e+03 - -9.1657939e+01 1.3887929e+02 -3.4119872e+03 - -4.6210633e+01 1.3873255e+02 -3.4114944e+03 - 0.0000000e+00 1.3867972e+02 -3.4113286e+03 - 4.6210633e+01 1.3873255e+02 -3.4114944e+03 - 9.1657939e+01 1.3887929e+02 -3.4119872e+03 - 1.3561991e+02 1.3908590e+02 -3.4127940e+03 - 1.7745203e+02 1.3929925e+02 -3.4138940e+03 - 2.1661432e+02 1.3945186e+02 -3.4152605e+03 - 2.5268712e+02 1.3946744e+02 -3.4168623e+03 - 2.8537539e+02 1.3926638e+02 -3.4186659e+03 - 3.1450336e+02 1.3877062e+02 -3.4206368e+03 - 3.4000187e+02 1.3790747e+02 -3.4227415e+03 - 3.6189154e+02 1.3661225e+02 -3.4249477e+03 - 3.8026418e+02 1.3482979e+02 -3.4272258e+03 - 3.9526478e+02 1.3251497e+02 -3.4295491e+03 - 4.0707508e+02 1.2963249e+02 -3.4318938e+03 - 4.1589980e+02 1.2615625e+02 -3.4342390e+03 - 4.2195540e+02 1.2206833e+02 -3.4365668e+03 - 4.2546160e+02 1.1735791e+02 -3.4388617e+03 - 4.2663508e+02 1.1202024e+02 -3.4411107e+03 - 4.2568518e+02 1.0605554e+02 -3.4433029e+03 - 4.2281111e+02 9.9468161e+01 -3.4454292e+03 - 4.1820032e+02 9.2265789e+01 -3.4474817e+03 - 4.1202775e+02 8.4458810e+01 -3.4494543e+03 - 4.0445575e+02 7.6059795e+01 -3.4513418e+03 - 3.9563431e+02 6.7083098e+01 -3.4531399e+03 - 3.8570163e+02 5.7544543e+01 -3.4548451e+03 - 3.7478490e+02 4.7461205e+01 -3.4564547e+03 - 3.6300102e+02 3.6851245e+01 -3.4579663e+03 - 3.5045748e+02 2.5733808e+01 -3.4593781e+03 - 3.3725318e+02 1.4128965e+01 -3.4606887e+03 - 3.2347919e+02 2.0576837e+00 -3.4618970e+03 - 3.0921947e+02 -1.0458161e+01 -3.4630020e+03 - 2.9455161e+02 -2.3395762e+01 -3.4640031e+03 - 2.7954738e+02 -3.6731335e+01 -3.4648998e+03 - 2.6427333e+02 -5.0440053e+01 -3.4656915e+03 - 2.4879130e+02 -6.4495970e+01 -3.4663782e+03 - 2.3315885e+02 -7.8871935e+01 -3.4669594e+03 - 2.1742968e+02 -9.3539490e+01 -3.4674351e+03 - 2.0165400e+02 -1.0846876e+02 -3.4678052e+03 - 1.8587884e+02 -1.2362831e+02 -3.4680696e+03 - 1.7014835e+02 -1.3898505e+02 -3.4682283e+03 - 1.5450404e+02 -1.5450404e+02 -3.4682812e+03 - 1.3898505e+02 -1.7014835e+02 -3.4682283e+03 - 1.2362831e+02 -1.8587884e+02 -3.4680696e+03 - 1.0846876e+02 -2.0165400e+02 -3.4678052e+03 - 9.3539490e+01 -2.1742968e+02 -3.4674351e+03 - 7.8871935e+01 -2.3315885e+02 -3.4669594e+03 - 6.4495970e+01 -2.4879130e+02 -3.4663782e+03 - 5.0440053e+01 -2.6427333e+02 -3.4656915e+03 - 3.6731335e+01 -2.7954738e+02 -3.4648998e+03 - 2.3395762e+01 -2.9455161e+02 -3.4640031e+03 - 1.0458161e+01 -3.0921947e+02 -3.4630020e+03 - -2.0576837e+00 -3.2347919e+02 -3.4618970e+03 - -1.4128965e+01 -3.3725318e+02 -3.4606887e+03 - -2.5733808e+01 -3.5045748e+02 -3.4593781e+03 - -3.6851245e+01 -3.6300102e+02 -3.4579663e+03 - -4.7461205e+01 -3.7478490e+02 -3.4564547e+03 - -5.7544543e+01 -3.8570163e+02 -3.4548451e+03 - -6.7083098e+01 -3.9563431e+02 -3.4531399e+03 - -7.6059795e+01 -4.0445575e+02 -3.4513418e+03 - -8.4458810e+01 -4.1202775e+02 -3.4494543e+03 - -9.2265789e+01 -4.1820032e+02 -3.4474817e+03 - -9.9468161e+01 -4.2281111e+02 -3.4454292e+03 - -1.0605554e+02 -4.2568518e+02 -3.4433029e+03 - -1.1202024e+02 -4.2663508e+02 -3.4411107e+03 - -1.1735791e+02 -4.2546160e+02 -3.4388617e+03 - -1.2206833e+02 -4.2195540e+02 -3.4365668e+03 - -1.2615625e+02 -4.1589980e+02 -3.4342390e+03 - -1.2963249e+02 -4.0707508e+02 -3.4318938e+03 - -1.3251497e+02 -3.9526478e+02 -3.4295491e+03 - -1.3482979e+02 -3.8026418e+02 -3.4272258e+03 - -1.3661225e+02 -3.6189154e+02 -3.4249477e+03 - -1.3790747e+02 -3.4000187e+02 -3.4227415e+03 - -1.3877062e+02 -3.1450336e+02 -3.4206368e+03 - -1.3926638e+02 -2.8537539e+02 -3.4186659e+03 - -1.3946744e+02 -2.5268712e+02 -3.4168623e+03 - -1.3945186e+02 -2.1661432e+02 -3.4152605e+03 - -1.3929925e+02 -1.7745203e+02 -3.4138940e+03 - -1.3908590e+02 -1.3561991e+02 -3.4127940e+03 - -1.3887929e+02 -9.1657939e+01 -3.4119872e+03 - -1.3873255e+02 -4.6210633e+01 -3.4114944e+03 - -1.3867972e+02 -2.4067136e-09 -3.4113286e+03 - -1.3873255e+02 4.6210633e+01 -3.4114944e+03 - -1.3887929e+02 9.1657939e+01 -3.4119872e+03 - -1.3908590e+02 1.3561991e+02 -3.4127940e+03 - -1.3929925e+02 1.7745203e+02 -3.4138940e+03 - -1.3945186e+02 2.1661432e+02 -3.4152605e+03 - -1.3946744e+02 2.5268712e+02 -3.4168623e+03 - -1.3926638e+02 2.8537539e+02 -3.4186659e+03 - -1.3877062e+02 3.1450336e+02 -3.4206368e+03 - -1.3790747e+02 3.4000187e+02 -3.4227415e+03 - -1.3661225e+02 3.6189154e+02 -3.4249477e+03 - -1.3482979e+02 3.8026418e+02 -3.4272258e+03 - -1.3251497e+02 3.9526478e+02 -3.4295491e+03 - -1.2963249e+02 4.0707508e+02 -3.4318938e+03 - -1.2615625e+02 4.1589980e+02 -3.4342390e+03 - -1.2206833e+02 4.2195540e+02 -3.4365668e+03 - -1.1735791e+02 4.2546160e+02 -3.4388617e+03 - -1.1202024e+02 4.2663508e+02 -3.4411107e+03 - -1.0605554e+02 4.2568518e+02 -3.4433029e+03 - -9.9468161e+01 4.2281111e+02 -3.4454292e+03 - -9.2265789e+01 4.1820032e+02 -3.4474817e+03 - -8.4458810e+01 4.1202775e+02 -3.4494543e+03 - -7.6059795e+01 4.0445575e+02 -3.4513418e+03 - -6.7083098e+01 3.9563431e+02 -3.4531399e+03 - -5.7544543e+01 3.8570163e+02 -3.4548451e+03 - -4.7461205e+01 3.7478490e+02 -3.4564547e+03 - -3.6851245e+01 3.6300102e+02 -3.4579663e+03 - -2.5733808e+01 3.5045748e+02 -3.4593781e+03 - -1.4128965e+01 3.3725318e+02 -3.4606887e+03 - -2.0576837e+00 3.2347919e+02 -3.4618970e+03 - 1.0458161e+01 3.0921947e+02 -3.4630020e+03 - 2.3395762e+01 2.9455161e+02 -3.4640031e+03 - 3.6731335e+01 2.7954738e+02 -3.4648998e+03 - 5.0440053e+01 2.6427333e+02 -3.4656915e+03 - 6.4495970e+01 2.4879130e+02 -3.4663782e+03 - 7.8871935e+01 2.3315885e+02 -3.4669594e+03 - 9.3539490e+01 2.1742968e+02 -3.4674351e+03 - 1.0846876e+02 2.0165400e+02 -3.4678052e+03 - 1.2362831e+02 1.8587884e+02 -3.4680696e+03 - 1.3898505e+02 1.7014835e+02 -3.4682283e+03 - 1.5450404e+02 1.5450404e+02 -3.4682812e+03 - 1.7014835e+02 1.3898505e+02 -3.4682283e+03 - 1.8587884e+02 1.2362831e+02 -3.4680696e+03 - 2.0165400e+02 1.0846876e+02 -3.4678052e+03 - 2.1742968e+02 9.3539490e+01 -3.4674351e+03 - 2.3315885e+02 7.8871935e+01 -3.4669594e+03 - 2.4879130e+02 6.4495970e+01 -3.4663782e+03 - 2.6427333e+02 5.0440053e+01 -3.4656915e+03 - 2.7954738e+02 3.6731335e+01 -3.4648998e+03 - 2.9455161e+02 2.3395762e+01 -3.4640031e+03 - 3.0921947e+02 1.0458161e+01 -3.4630020e+03 - 3.2347919e+02 -2.0576837e+00 -3.4618970e+03 - 3.3725318e+02 -1.4128965e+01 -3.4606887e+03 - 3.5045748e+02 -2.5733808e+01 -3.4593781e+03 - 3.6300102e+02 -3.6851245e+01 -3.4579663e+03 - 3.7478490e+02 -4.7461205e+01 -3.4564547e+03 - 3.8570163e+02 -5.7544543e+01 -3.4548451e+03 - 3.9563431e+02 -6.7083098e+01 -3.4531399e+03 - 4.0445575e+02 -7.6059795e+01 -3.4513418e+03 - 4.1202775e+02 -8.4458810e+01 -3.4494543e+03 - 4.1820032e+02 -9.2265789e+01 -3.4474817e+03 - 4.2281111e+02 -9.9468161e+01 -3.4454292e+03 - 4.2568518e+02 -1.0605554e+02 -3.4433029e+03 - 4.2663508e+02 -1.1202024e+02 -3.4411107e+03 - 4.2546160e+02 -1.1735791e+02 -3.4388617e+03 - 4.2195540e+02 -1.2206833e+02 -3.4365668e+03 - 4.1589980e+02 -1.2615625e+02 -3.4342390e+03 - 4.0707508e+02 -1.2963249e+02 -3.4318938e+03 - 3.9526478e+02 -1.3251497e+02 -3.4295491e+03 - 3.8026418e+02 -1.3482979e+02 -3.4272258e+03 - 3.6189154e+02 -1.3661225e+02 -3.4249477e+03 - 3.4000187e+02 -1.3790747e+02 -3.4227415e+03 - 3.1450336e+02 -1.3877062e+02 -3.4206368e+03 - 2.8537539e+02 -1.3926638e+02 -3.4186659e+03 - 2.5268712e+02 -1.3946744e+02 -3.4168623e+03 - 2.1661432e+02 -1.3945186e+02 -3.4152605e+03 - 1.7745203e+02 -1.3929925e+02 -3.4138940e+03 - 1.3561991e+02 -1.3908590e+02 -3.4127940e+03 - 9.1657939e+01 -1.3887929e+02 -3.4119872e+03 - 4.6210633e+01 -1.3873255e+02 -3.4114944e+03 - 0.0000000e+00 -1.3867972e+02 -3.4113286e+03 - -4.6210633e+01 -1.3873255e+02 -3.4114944e+03 - -9.1657939e+01 -1.3887929e+02 -3.4119872e+03 - -1.3561991e+02 -1.3908590e+02 -3.4127940e+03 - -1.7745203e+02 -1.3929925e+02 -3.4138940e+03 - -2.1661432e+02 -1.3945186e+02 -3.4152605e+03 - -2.5268712e+02 -1.3946744e+02 -3.4168623e+03 - -2.8537539e+02 -1.3926638e+02 -3.4186659e+03 - -3.1450336e+02 -1.3877062e+02 -3.4206368e+03 - -3.4000187e+02 -1.3790747e+02 -3.4227415e+03 - -3.6189154e+02 -1.3661225e+02 -3.4249477e+03 - -3.8026418e+02 -1.3482979e+02 -3.4272258e+03 - -3.9526478e+02 -1.3251497e+02 -3.4295491e+03 - -4.0707508e+02 -1.2963249e+02 -3.4318938e+03 - -4.1589980e+02 -1.2615625e+02 -3.4342390e+03 - -4.2195540e+02 -1.2206833e+02 -3.4365668e+03 - -4.2546160e+02 -1.1735791e+02 -3.4388617e+03 - -4.2663508e+02 -1.1202024e+02 -3.4411107e+03 - -4.2568518e+02 -1.0605554e+02 -3.4433029e+03 - -4.2281111e+02 -9.9468161e+01 -3.4454292e+03 - -4.1820032e+02 -9.2265789e+01 -3.4474817e+03 - -4.1202775e+02 -8.4458810e+01 -3.4494543e+03 - -4.0445575e+02 -7.6059795e+01 -3.4513418e+03 - -3.9563431e+02 -6.7083098e+01 -3.4531399e+03 - -3.8570163e+02 -5.7544543e+01 -3.4548451e+03 - -3.7478490e+02 -4.7461205e+01 -3.4564547e+03 - -3.6300102e+02 -3.6851245e+01 -3.4579663e+03 - -3.5045748e+02 -2.5733808e+01 -3.4593781e+03 - -3.3725318e+02 -1.4128965e+01 -3.4606887e+03 - -3.2347919e+02 -2.0576837e+00 -3.4618970e+03 - -3.0921947e+02 1.0458161e+01 -3.4630020e+03 - -2.9455161e+02 2.3395762e+01 -3.4640031e+03 - -2.7954738e+02 3.6731335e+01 -3.4648998e+03 - -2.6427333e+02 5.0440053e+01 -3.4656915e+03 - -2.4879130e+02 6.4495970e+01 -3.4663782e+03 - -2.3315885e+02 7.8871935e+01 -3.4669594e+03 - -2.1742968e+02 9.3539490e+01 -3.4674351e+03 - -2.0165400e+02 1.0846876e+02 -3.4678052e+03 - -1.8587884e+02 1.2362831e+02 -3.4680696e+03 - -1.7014835e+02 1.3898505e+02 -3.4682283e+03 - -1.5450404e+02 1.5450404e+02 -3.4682812e+03 - -1.3898505e+02 1.7014835e+02 -3.4682283e+03 - -1.2362831e+02 1.8587884e+02 -3.4680696e+03 - -1.0846876e+02 2.0165400e+02 -3.4678052e+03 - -9.3539490e+01 2.1742968e+02 -3.4674351e+03 - -7.8871935e+01 2.3315885e+02 -3.4669594e+03 - -6.4495970e+01 2.4879130e+02 -3.4663782e+03 - -5.0440053e+01 2.6427333e+02 -3.4656915e+03 - -3.6731335e+01 2.7954738e+02 -3.4648998e+03 - -2.3395762e+01 2.9455161e+02 -3.4640031e+03 - -1.0458161e+01 3.0921947e+02 -3.4630020e+03 - 2.0576837e+00 3.2347919e+02 -3.4618970e+03 - 1.4128965e+01 3.3725318e+02 -3.4606887e+03 - 2.5733808e+01 3.5045748e+02 -3.4593781e+03 - 3.6851245e+01 3.6300102e+02 -3.4579663e+03 - 4.7461205e+01 3.7478490e+02 -3.4564547e+03 - 5.7544543e+01 3.8570163e+02 -3.4548451e+03 - 6.7083098e+01 3.9563431e+02 -3.4531399e+03 - 7.6059795e+01 4.0445575e+02 -3.4513418e+03 - 8.4458810e+01 4.1202775e+02 -3.4494543e+03 - 9.2265789e+01 4.1820032e+02 -3.4474817e+03 - 9.9468161e+01 4.2281111e+02 -3.4454292e+03 - 1.0605554e+02 4.2568518e+02 -3.4433029e+03 - 1.1202024e+02 4.2663508e+02 -3.4411107e+03 - 1.1735791e+02 4.2546160e+02 -3.4388617e+03 - 1.2206833e+02 4.2195540e+02 -3.4365668e+03 - 1.2615625e+02 4.1589980e+02 -3.4342390e+03 - 1.2963249e+02 4.0707508e+02 -3.4318938e+03 - 1.3251497e+02 3.9526478e+02 -3.4295491e+03 - 1.3482979e+02 3.8026418e+02 -3.4272258e+03 - 1.3661225e+02 3.6189154e+02 -3.4249477e+03 - 1.3790747e+02 3.4000187e+02 -3.4227415e+03 - 1.3877062e+02 3.1450336e+02 -3.4206368e+03 - 1.3926638e+02 2.8537539e+02 -3.4186659e+03 - 1.3946744e+02 2.5268712e+02 -3.4168623e+03 - 1.3945186e+02 2.1661432e+02 -3.4152605e+03 - 1.3929925e+02 1.7745203e+02 -3.4138940e+03 - 1.3908590e+02 1.3561991e+02 -3.4127940e+03 - 1.3887929e+02 9.1657939e+01 -3.4119872e+03 - 1.3873255e+02 4.6210633e+01 -3.4114944e+03 - 1.3867972e+02 2.4067136e-09 -3.4113286e+03 - 6.0486402e+01 -4.8134273e-09 -3.4428327e+03 - 6.0549801e+01 -4.5491621e+01 -3.4429824e+03 - 6.0728781e+01 -9.0275998e+01 -3.4434279e+03 - 6.0990755e+01 -1.3368280e+02 -3.4441580e+03 - 6.1284769e+01 -1.7511111e+02 -3.4451552e+03 - 6.1545953e+01 -2.1405398e+02 -3.4463966e+03 - 6.1700706e+01 -2.5011314e+02 -3.4478556e+03 - 6.1671922e+01 -2.8300374e+02 -3.4495031e+03 - 6.1383659e+01 -3.1255022e+02 -3.4513094e+03 - 6.0764869e+01 -3.3867572e+02 -3.4532446e+03 - 5.9752028e+01 -3.6138735e+02 -3.4552805e+03 - 5.8290690e+01 -3.8075976e+02 -3.4573903e+03 - 5.6336109e+01 -3.9691882e+02 -3.4595498e+03 - 5.3853154e+01 -4.1002664e+02 -3.4617371e+03 - 5.0815716e+01 -4.2026876e+02 -3.4639328e+03 - 4.7205827e+01 -4.2784360e+02 -3.4661198e+03 - 4.3012635e+01 -4.3295430e+02 -3.4682834e+03 - 3.8231358e+01 -4.3580261e+02 -3.4704108e+03 - 3.2862285e+01 -4.3658462e+02 -3.4724911e+03 - 2.6909890e+01 -4.3548785e+02 -3.4745151e+03 - 2.0382052e+01 -4.3268954e+02 -3.4764747e+03 - 1.3289404e+01 -4.2835573e+02 -3.4783633e+03 - 5.6448091e+00 -4.2264099e+02 -3.4801753e+03 - -2.5370654e+00 -4.1568854e+02 -3.4819059e+03 - -1.1240069e+01 -4.0763067e+02 -3.4835511e+03 - -2.0446813e+01 -3.9858935e+02 -3.4851074e+03 - -3.0138842e+01 -3.8867691e+02 -3.4865722e+03 - -4.0296756e+01 -3.7799680e+02 -3.4879430e+03 - -5.0900279e+01 -3.6664428e+02 -3.4892179e+03 - -6.1928295e+01 -3.5470719e+02 -3.4903952e+03 - -7.3358849e+01 -3.4226659e+02 -3.4914736e+03 - -8.5169132e+01 -3.2939741e+02 -3.4924519e+03 - -9.7335437e+01 -3.1616903e+02 -3.4933293e+03 - -1.0983310e+02 -3.0264581e+02 -3.4941050e+03 - -1.2263643e+02 -2.8888759e+02 -3.4947783e+03 - -1.3571862e+02 -2.7495009e+02 -3.4953487e+03 - -1.4905166e+02 -2.6088534e+02 -3.4958159e+03 - -1.6260620e+02 -2.4674200e+02 -3.4961796e+03 - -1.7635148e+02 -2.3256568e+02 -3.4964396e+03 - -1.9025512e+02 -2.1839924e+02 -3.4965956e+03 - -2.0428303e+02 -2.0428303e+02 -3.4966476e+03 - -2.1839924e+02 -1.9025512e+02 -3.4965956e+03 - -2.3256568e+02 -1.7635148e+02 -3.4964396e+03 - -2.4674200e+02 -1.6260620e+02 -3.4961796e+03 - -2.6088534e+02 -1.4905166e+02 -3.4958159e+03 - -2.7495009e+02 -1.3571862e+02 -3.4953487e+03 - -2.8888759e+02 -1.2263643e+02 -3.4947783e+03 - -3.0264581e+02 -1.0983310e+02 -3.4941050e+03 - -3.1616903e+02 -9.7335437e+01 -3.4933293e+03 - -3.2939741e+02 -8.5169132e+01 -3.4924519e+03 - -3.4226659e+02 -7.3358849e+01 -3.4914736e+03 - -3.5470719e+02 -6.1928295e+01 -3.4903952e+03 - -3.6664428e+02 -5.0900279e+01 -3.4892179e+03 - -3.7799680e+02 -4.0296756e+01 -3.4879430e+03 - -3.8867691e+02 -3.0138842e+01 -3.4865722e+03 - -3.9858935e+02 -2.0446813e+01 -3.4851074e+03 - -4.0763067e+02 -1.1240069e+01 -3.4835511e+03 - -4.1568854e+02 -2.5370654e+00 -3.4819059e+03 - -4.2264099e+02 5.6448091e+00 -3.4801753e+03 - -4.2835573e+02 1.3289404e+01 -3.4783633e+03 - -4.3268954e+02 2.0382052e+01 -3.4764747e+03 - -4.3548785e+02 2.6909890e+01 -3.4745151e+03 - -4.3658462e+02 3.2862285e+01 -3.4724911e+03 - -4.3580261e+02 3.8231358e+01 -3.4704108e+03 - -4.3295430e+02 4.3012635e+01 -3.4682834e+03 - -4.2784360e+02 4.7205827e+01 -3.4661198e+03 - -4.2026876e+02 5.0815716e+01 -3.4639328e+03 - -4.1002664e+02 5.3853154e+01 -3.4617371e+03 - -3.9691882e+02 5.6336109e+01 -3.4595498e+03 - -3.8075976e+02 5.8290690e+01 -3.4573903e+03 - -3.6138735e+02 5.9752028e+01 -3.4552805e+03 - -3.3867572e+02 6.0764869e+01 -3.4532446e+03 - -3.1255022e+02 6.1383659e+01 -3.4513094e+03 - -2.8300374e+02 6.1671922e+01 -3.4495031e+03 - -2.5011314e+02 6.1700706e+01 -3.4478556e+03 - -2.1405398e+02 6.1545953e+01 -3.4463966e+03 - -1.7511111e+02 6.1284769e+01 -3.4451552e+03 - -1.3368280e+02 6.0990755e+01 -3.4441580e+03 - -9.0275998e+01 6.0728781e+01 -3.4434279e+03 - -4.5491621e+01 6.0549801e+01 -3.4429824e+03 - -4.8134273e-09 6.0486402e+01 -3.4428327e+03 - 4.5491621e+01 6.0549801e+01 -3.4429824e+03 - 9.0275998e+01 6.0728782e+01 -3.4434279e+03 - 1.3368280e+02 6.0990755e+01 -3.4441580e+03 - 1.7511111e+02 6.1284769e+01 -3.4451552e+03 - 2.1405398e+02 6.1545953e+01 -3.4463966e+03 - 2.5011314e+02 6.1700706e+01 -3.4478556e+03 - 2.8300374e+02 6.1671922e+01 -3.4495031e+03 - 3.1255022e+02 6.1383659e+01 -3.4513094e+03 - 3.3867572e+02 6.0764869e+01 -3.4532446e+03 - 3.6138735e+02 5.9752028e+01 -3.4552805e+03 - 3.8075976e+02 5.8290690e+01 -3.4573903e+03 - 3.9691882e+02 5.6336109e+01 -3.4595498e+03 - 4.1002664e+02 5.3853153e+01 -3.4617371e+03 - 4.2026876e+02 5.0815716e+01 -3.4639328e+03 - 4.2784360e+02 4.7205827e+01 -3.4661198e+03 - 4.3295430e+02 4.3012635e+01 -3.4682834e+03 - 4.3580261e+02 3.8231358e+01 -3.4704108e+03 - 4.3658462e+02 3.2862285e+01 -3.4724911e+03 - 4.3548785e+02 2.6909890e+01 -3.4745151e+03 - 4.3268954e+02 2.0382052e+01 -3.4764747e+03 - 4.2835573e+02 1.3289404e+01 -3.4783633e+03 - 4.2264099e+02 5.6448091e+00 -3.4801753e+03 - 4.1568854e+02 -2.5370654e+00 -3.4819059e+03 - 4.0763067e+02 -1.1240069e+01 -3.4835511e+03 - 3.9858935e+02 -2.0446813e+01 -3.4851074e+03 - 3.8867691e+02 -3.0138842e+01 -3.4865722e+03 - 3.7799680e+02 -4.0296756e+01 -3.4879430e+03 - 3.6664428e+02 -5.0900279e+01 -3.4892179e+03 - 3.5470719e+02 -6.1928295e+01 -3.4903952e+03 - 3.4226659e+02 -7.3358849e+01 -3.4914736e+03 - 3.2939741e+02 -8.5169132e+01 -3.4924519e+03 - 3.1616903e+02 -9.7335437e+01 -3.4933293e+03 - 3.0264581e+02 -1.0983310e+02 -3.4941050e+03 - 2.8888759e+02 -1.2263643e+02 -3.4947783e+03 - 2.7495009e+02 -1.3571862e+02 -3.4953487e+03 - 2.6088534e+02 -1.4905166e+02 -3.4958159e+03 - 2.4674200e+02 -1.6260620e+02 -3.4961796e+03 - 2.3256568e+02 -1.7635148e+02 -3.4964396e+03 - 2.1839924e+02 -1.9025512e+02 -3.4965956e+03 - 2.0428303e+02 -2.0428303e+02 -3.4966476e+03 - 1.9025512e+02 -2.1839924e+02 -3.4965956e+03 - 1.7635148e+02 -2.3256568e+02 -3.4964396e+03 - 1.6260620e+02 -2.4674200e+02 -3.4961796e+03 - 1.4905166e+02 -2.6088534e+02 -3.4958159e+03 - 1.3571862e+02 -2.7495009e+02 -3.4953487e+03 - 1.2263643e+02 -2.8888759e+02 -3.4947783e+03 - 1.0983310e+02 -3.0264581e+02 -3.4941050e+03 - 9.7335437e+01 -3.1616903e+02 -3.4933293e+03 - 8.5169132e+01 -3.2939741e+02 -3.4924519e+03 - 7.3358849e+01 -3.4226659e+02 -3.4914736e+03 - 6.1928295e+01 -3.5470719e+02 -3.4903952e+03 - 5.0900279e+01 -3.6664428e+02 -3.4892179e+03 - 4.0296756e+01 -3.7799680e+02 -3.4879430e+03 - 3.0138842e+01 -3.8867691e+02 -3.4865722e+03 - 2.0446813e+01 -3.9858935e+02 -3.4851074e+03 - 1.1240069e+01 -4.0763067e+02 -3.4835511e+03 - 2.5370654e+00 -4.1568854e+02 -3.4819059e+03 - -5.6448091e+00 -4.2264099e+02 -3.4801753e+03 - -1.3289404e+01 -4.2835573e+02 -3.4783633e+03 - -2.0382052e+01 -4.3268954e+02 -3.4764747e+03 - -2.6909890e+01 -4.3548785e+02 -3.4745151e+03 - -3.2862285e+01 -4.3658462e+02 -3.4724911e+03 - -3.8231358e+01 -4.3580261e+02 -3.4704108e+03 - -4.3012635e+01 -4.3295430e+02 -3.4682834e+03 - -4.7205827e+01 -4.2784360e+02 -3.4661198e+03 - -5.0815716e+01 -4.2026876e+02 -3.4639328e+03 - -5.3853154e+01 -4.1002664e+02 -3.4617371e+03 - -5.6336109e+01 -3.9691882e+02 -3.4595498e+03 - -5.8290690e+01 -3.8075976e+02 -3.4573903e+03 - -5.9752028e+01 -3.6138735e+02 -3.4552805e+03 - -6.0764869e+01 -3.3867572e+02 -3.4532446e+03 - -6.1383659e+01 -3.1255022e+02 -3.4513094e+03 - -6.1671922e+01 -2.8300374e+02 -3.4495031e+03 - -6.1700706e+01 -2.5011314e+02 -3.4478556e+03 - -6.1545953e+01 -2.1405398e+02 -3.4463966e+03 - -6.1284769e+01 -1.7511111e+02 -3.4451552e+03 - -6.0990755e+01 -1.3368280e+02 -3.4441580e+03 - -6.0728781e+01 -9.0275998e+01 -3.4434279e+03 - -6.0549801e+01 -4.5491621e+01 -3.4429824e+03 - -6.0486402e+01 4.8134273e-09 -3.4428327e+03 - -6.0549801e+01 4.5491621e+01 -3.4429824e+03 - -6.0728781e+01 9.0275998e+01 -3.4434279e+03 - -6.0990755e+01 1.3368280e+02 -3.4441580e+03 - -6.1284769e+01 1.7511111e+02 -3.4451552e+03 - -6.1545953e+01 2.1405398e+02 -3.4463966e+03 - -6.1700706e+01 2.5011314e+02 -3.4478556e+03 - -6.1671922e+01 2.8300374e+02 -3.4495031e+03 - -6.1383659e+01 3.1255022e+02 -3.4513094e+03 - -6.0764869e+01 3.3867572e+02 -3.4532446e+03 - -5.9752028e+01 3.6138735e+02 -3.4552805e+03 - -5.8290690e+01 3.8075976e+02 -3.4573903e+03 - -5.6336109e+01 3.9691882e+02 -3.4595498e+03 - -5.3853154e+01 4.1002664e+02 -3.4617371e+03 - -5.0815716e+01 4.2026876e+02 -3.4639328e+03 - -4.7205827e+01 4.2784360e+02 -3.4661198e+03 - -4.3012635e+01 4.3295430e+02 -3.4682834e+03 - -3.8231358e+01 4.3580261e+02 -3.4704108e+03 - -3.2862285e+01 4.3658462e+02 -3.4724911e+03 - -2.6909890e+01 4.3548785e+02 -3.4745151e+03 - -2.0382052e+01 4.3268954e+02 -3.4764747e+03 - -1.3289404e+01 4.2835573e+02 -3.4783633e+03 - -5.6448091e+00 4.2264099e+02 -3.4801753e+03 - 2.5370654e+00 4.1568854e+02 -3.4819059e+03 - 1.1240069e+01 4.0763067e+02 -3.4835511e+03 - 2.0446813e+01 3.9858935e+02 -3.4851074e+03 - 3.0138842e+01 3.8867691e+02 -3.4865722e+03 - 4.0296756e+01 3.7799680e+02 -3.4879430e+03 - 5.0900279e+01 3.6664428e+02 -3.4892179e+03 - 6.1928295e+01 3.5470719e+02 -3.4903952e+03 - 7.3358849e+01 3.4226659e+02 -3.4914736e+03 - 8.5169132e+01 3.2939741e+02 -3.4924519e+03 - 9.7335437e+01 3.1616903e+02 -3.4933293e+03 - 1.0983310e+02 3.0264581e+02 -3.4941050e+03 - 1.2263643e+02 2.8888759e+02 -3.4947783e+03 - 1.3571862e+02 2.7495009e+02 -3.4953487e+03 - 1.4905166e+02 2.6088534e+02 -3.4958159e+03 - 1.6260620e+02 2.4674200e+02 -3.4961796e+03 - 1.7635148e+02 2.3256568e+02 -3.4964396e+03 - 1.9025512e+02 2.1839924e+02 -3.4965956e+03 - 2.0428303e+02 2.0428303e+02 -3.4966476e+03 - 2.1839924e+02 1.9025512e+02 -3.4965956e+03 - 2.3256568e+02 1.7635148e+02 -3.4964396e+03 - 2.4674200e+02 1.6260620e+02 -3.4961796e+03 - 2.6088534e+02 1.4905166e+02 -3.4958159e+03 - 2.7495009e+02 1.3571862e+02 -3.4953487e+03 - 2.8888759e+02 1.2263643e+02 -3.4947783e+03 - 3.0264581e+02 1.0983310e+02 -3.4941050e+03 - 3.1616903e+02 9.7335437e+01 -3.4933293e+03 - 3.2939741e+02 8.5169132e+01 -3.4924519e+03 - 3.4226659e+02 7.3358849e+01 -3.4914736e+03 - 3.5470719e+02 6.1928295e+01 -3.4903952e+03 - 3.6664428e+02 5.0900279e+01 -3.4892179e+03 - 3.7799680e+02 4.0296756e+01 -3.4879430e+03 - 3.8867691e+02 3.0138842e+01 -3.4865722e+03 - 3.9858935e+02 2.0446813e+01 -3.4851074e+03 - 4.0763067e+02 1.1240069e+01 -3.4835511e+03 - 4.1568854e+02 2.5370654e+00 -3.4819059e+03 - 4.2264099e+02 -5.6448091e+00 -3.4801753e+03 - 4.2835573e+02 -1.3289404e+01 -3.4783633e+03 - 4.3268954e+02 -2.0382052e+01 -3.4764747e+03 - 4.3548785e+02 -2.6909890e+01 -3.4745151e+03 - 4.3658462e+02 -3.2862285e+01 -3.4724911e+03 - 4.3580261e+02 -3.8231358e+01 -3.4704108e+03 - 4.3295430e+02 -4.3012635e+01 -3.4682834e+03 - 4.2784360e+02 -4.7205827e+01 -3.4661198e+03 - 4.2026876e+02 -5.0815716e+01 -3.4639328e+03 - 4.1002664e+02 -5.3853154e+01 -3.4617371e+03 - 3.9691882e+02 -5.6336109e+01 -3.4595498e+03 - 3.8075976e+02 -5.8290690e+01 -3.4573903e+03 - 3.6138735e+02 -5.9752028e+01 -3.4552805e+03 - 3.3867572e+02 -6.0764869e+01 -3.4532446e+03 - 3.1255022e+02 -6.1383659e+01 -3.4513094e+03 - 2.8300374e+02 -6.1671922e+01 -3.4495031e+03 - 2.5011314e+02 -6.1700706e+01 -3.4478556e+03 - 2.1405398e+02 -6.1545953e+01 -3.4463966e+03 - 1.7511111e+02 -6.1284769e+01 -3.4451552e+03 - 1.3368280e+02 -6.0990755e+01 -3.4441580e+03 - 9.0275998e+01 -6.0728782e+01 -3.4434279e+03 - 4.5491621e+01 -6.0549801e+01 -3.4429824e+03 - 0.0000000e+00 -6.0486402e+01 -3.4428327e+03 - -4.5491621e+01 -6.0549801e+01 -3.4429824e+03 - -9.0275998e+01 -6.0728782e+01 -3.4434279e+03 - -1.3368280e+02 -6.0990755e+01 -3.4441580e+03 - -1.7511111e+02 -6.1284769e+01 -3.4451552e+03 - -2.1405398e+02 -6.1545953e+01 -3.4463966e+03 - -2.5011314e+02 -6.1700706e+01 -3.4478556e+03 - -2.8300374e+02 -6.1671922e+01 -3.4495031e+03 - -3.1255022e+02 -6.1383659e+01 -3.4513094e+03 - -3.3867572e+02 -6.0764869e+01 -3.4532446e+03 - -3.6138735e+02 -5.9752028e+01 -3.4552805e+03 - -3.8075976e+02 -5.8290690e+01 -3.4573903e+03 - -3.9691882e+02 -5.6336109e+01 -3.4595498e+03 - -4.1002664e+02 -5.3853153e+01 -3.4617371e+03 - -4.2026876e+02 -5.0815716e+01 -3.4639328e+03 - -4.2784360e+02 -4.7205827e+01 -3.4661198e+03 - -4.3295430e+02 -4.3012635e+01 -3.4682834e+03 - -4.3580261e+02 -3.8231358e+01 -3.4704108e+03 - -4.3658462e+02 -3.2862285e+01 -3.4724911e+03 - -4.3548785e+02 -2.6909890e+01 -3.4745151e+03 - -4.3268954e+02 -2.0382052e+01 -3.4764747e+03 - -4.2835573e+02 -1.3289404e+01 -3.4783633e+03 - -4.2264099e+02 -5.6448091e+00 -3.4801753e+03 - -4.1568854e+02 2.5370654e+00 -3.4819059e+03 - -4.0763067e+02 1.1240069e+01 -3.4835511e+03 - -3.9858935e+02 2.0446813e+01 -3.4851074e+03 - -3.8867691e+02 3.0138842e+01 -3.4865722e+03 - -3.7799680e+02 4.0296756e+01 -3.4879430e+03 - -3.6664428e+02 5.0900279e+01 -3.4892179e+03 - -3.5470719e+02 6.1928295e+01 -3.4903952e+03 - -3.4226659e+02 7.3358849e+01 -3.4914736e+03 - -3.2939741e+02 8.5169132e+01 -3.4924519e+03 - -3.1616903e+02 9.7335437e+01 -3.4933293e+03 - -3.0264581e+02 1.0983310e+02 -3.4941050e+03 - -2.8888759e+02 1.2263643e+02 -3.4947783e+03 - -2.7495009e+02 1.3571862e+02 -3.4953487e+03 - -2.6088534e+02 1.4905166e+02 -3.4958159e+03 - -2.4674200e+02 1.6260620e+02 -3.4961796e+03 - -2.3256568e+02 1.7635148e+02 -3.4964396e+03 - -2.1839924e+02 1.9025512e+02 -3.4965956e+03 - -2.0428303e+02 2.0428303e+02 -3.4966476e+03 - -1.9025512e+02 2.1839924e+02 -3.4965956e+03 - -1.7635148e+02 2.3256568e+02 -3.4964396e+03 - -1.6260620e+02 2.4674200e+02 -3.4961796e+03 - -1.4905166e+02 2.6088534e+02 -3.4958159e+03 - -1.3571862e+02 2.7495009e+02 -3.4953487e+03 - -1.2263643e+02 2.8888759e+02 -3.4947783e+03 - -1.0983310e+02 3.0264581e+02 -3.4941050e+03 - -9.7335437e+01 3.1616903e+02 -3.4933293e+03 - -8.5169132e+01 3.2939741e+02 -3.4924519e+03 - -7.3358849e+01 3.4226659e+02 -3.4914736e+03 - -6.1928295e+01 3.5470719e+02 -3.4903952e+03 - -5.0900279e+01 3.6664428e+02 -3.4892179e+03 - -4.0296756e+01 3.7799680e+02 -3.4879430e+03 - -3.0138842e+01 3.8867691e+02 -3.4865722e+03 - -2.0446813e+01 3.9858935e+02 -3.4851074e+03 - -1.1240069e+01 4.0763067e+02 -3.4835511e+03 - -2.5370654e+00 4.1568854e+02 -3.4819059e+03 - 5.6448091e+00 4.2264099e+02 -3.4801753e+03 - 1.3289404e+01 4.2835573e+02 -3.4783633e+03 - 2.0382052e+01 4.3268954e+02 -3.4764747e+03 - 2.6909890e+01 4.3548785e+02 -3.4745151e+03 - 3.2862285e+01 4.3658462e+02 -3.4724911e+03 - 3.8231358e+01 4.3580261e+02 -3.4704108e+03 - 4.3012635e+01 4.3295430e+02 -3.4682834e+03 - 4.7205827e+01 4.2784360e+02 -3.4661198e+03 - 5.0815716e+01 4.2026876e+02 -3.4639328e+03 - 5.3853153e+01 4.1002664e+02 -3.4617371e+03 - 5.6336109e+01 3.9691882e+02 -3.4595498e+03 - 5.8290690e+01 3.8075976e+02 -3.4573903e+03 - 5.9752028e+01 3.6138735e+02 -3.4552805e+03 - 6.0764869e+01 3.3867572e+02 -3.4532446e+03 - 6.1383659e+01 3.1255022e+02 -3.4513094e+03 - 6.1671922e+01 2.8300374e+02 -3.4495031e+03 - 6.1700706e+01 2.5011314e+02 -3.4478556e+03 - 6.1545953e+01 2.1405398e+02 -3.4463966e+03 - 6.1284769e+01 1.7511111e+02 -3.4451552e+03 - 6.0990755e+01 1.3368280e+02 -3.4441580e+03 - 6.0728782e+01 9.0275998e+01 -3.4434279e+03 - 6.0549801e+01 4.5491621e+01 -3.4429824e+03 - 6.0486402e+01 -4.8134273e-09 -3.4428327e+03 - -1.2253601e+01 0.0000000e+00 -3.4704938e+03 - -1.2181022e+01 -4.4671781e+01 -3.4706286e+03 - -1.1973966e+01 -8.8688601e+01 -3.4710299e+03 - -1.1663485e+01 -1.3142853e+02 -3.4716882e+03 - -1.1298216e+01 -1.7233186e+02 -3.4725887e+03 - -1.0940235e+01 -2.1092342e+02 -3.4737120e+03 - -1.0660194e+01 -2.4682633e+02 -3.4750351e+03 - -1.0532380e+01 -2.7976678e+02 -3.4765332e+03 - -1.0630263e+01 -3.0957112e+02 -3.4781804e+03 - -1.1022881e+01 -3.3615688e+02 -3.4799505e+03 - -1.1772247e+01 -3.5951994e+02 -3.4818187e+03 - -1.2931758e+01 -3.7971997e+02 -3.4837610e+03 - -1.4545498e+01 -3.9686571e+02 -3.4857555e+03 - -1.6648236e+01 -4.1110134e+02 -3.4877823e+03 - -1.9265918e+01 -4.2259456e+02 -3.4898235e+03 - -2.2416473e+01 -4.3152678e+02 -3.4918630e+03 - -2.6110769e+01 -4.3808529e+02 -3.4938869e+03 - -3.0353615e+01 -4.4245741e+02 -3.4958828e+03 - -3.5144726e+01 -4.4482624e+02 -3.4978402e+03 - -4.0479596e+01 -4.4536775e+02 -3.4997498e+03 - -4.6350277e+01 -4.4424895e+02 -3.5016036e+03 - -5.2746024e+01 -4.4162689e+02 -3.5033946e+03 - -5.9653835e+01 -4.3764821e+02 -3.5051170e+03 - -6.7058887e+01 -4.3244918e+02 -3.5067658e+03 - -7.4944869e+01 -4.2615594e+02 -3.5083364e+03 - -8.3294237e+01 -4.1888507e+02 -3.5098253e+03 - -9.2088407e+01 -4.1074407e+02 -3.5112291e+03 - -1.0130788e+02 -4.0183213e+02 -3.5125451e+03 - -1.1093233e+02 -3.9224067e+02 -3.5137710e+03 - -1.2094063e+02 -3.8205410e+02 -3.5149047e+03 - -1.3131091e+02 -3.7135037e+02 -3.5159446e+03 - -1.4202047e+02 -3.6020160e+02 -3.5168891e+03 - -1.5304581e+02 -3.4867460e+02 -3.5177371e+03 - -1.6436258e+02 -3.3683139e+02 -3.5184875e+03 - -1.7594543e+02 -3.2472967e+02 -3.5191394e+03 - -1.8776804e+02 -3.1242318e+02 -3.5196922e+03 - -1.9980293e+02 -2.9996215e+02 -3.5201452e+03 - -2.1202141e+02 -2.8739357e+02 -3.5204980e+03 - -2.2439346e+02 -2.7476154e+02 -3.5207502e+03 - -2.3688755e+02 -2.6210750e+02 -3.5209017e+03 - -2.4947054e+02 -2.4947054e+02 -3.5209522e+03 - -2.6210750e+02 -2.3688755e+02 -3.5209017e+03 - -2.7476154e+02 -2.2439346e+02 -3.5207502e+03 - -2.8739357e+02 -2.1202141e+02 -3.5204980e+03 - -2.9996215e+02 -1.9980293e+02 -3.5201452e+03 - -3.1242318e+02 -1.8776804e+02 -3.5196922e+03 - -3.2472967e+02 -1.7594543e+02 -3.5191394e+03 - -3.3683139e+02 -1.6436258e+02 -3.5184875e+03 - -3.4867460e+02 -1.5304581e+02 -3.5177371e+03 - -3.6020160e+02 -1.4202047e+02 -3.5168891e+03 - -3.7135037e+02 -1.3131091e+02 -3.5159446e+03 - -3.8205410e+02 -1.2094063e+02 -3.5149047e+03 - -3.9224067e+02 -1.1093233e+02 -3.5137710e+03 - -4.0183213e+02 -1.0130788e+02 -3.5125451e+03 - -4.1074407e+02 -9.2088407e+01 -3.5112291e+03 - -4.1888507e+02 -8.3294237e+01 -3.5098253e+03 - -4.2615594e+02 -7.4944869e+01 -3.5083364e+03 - -4.3244918e+02 -6.7058887e+01 -3.5067658e+03 - -4.3764821e+02 -5.9653835e+01 -3.5051170e+03 - -4.4162689e+02 -5.2746024e+01 -3.5033946e+03 - -4.4424895e+02 -4.6350277e+01 -3.5016036e+03 - -4.4536775e+02 -4.0479596e+01 -3.4997498e+03 - -4.4482624e+02 -3.5144726e+01 -3.4978402e+03 - -4.4245741e+02 -3.0353615e+01 -3.4958828e+03 - -4.3808529e+02 -2.6110769e+01 -3.4938869e+03 - -4.3152678e+02 -2.2416473e+01 -3.4918630e+03 - -4.2259456e+02 -1.9265918e+01 -3.4898235e+03 - -4.1110134e+02 -1.6648236e+01 -3.4877823e+03 - -3.9686571e+02 -1.4545498e+01 -3.4857555e+03 - -3.7971997e+02 -1.2931758e+01 -3.4837610e+03 - -3.5951994e+02 -1.1772247e+01 -3.4818187e+03 - -3.3615688e+02 -1.1022881e+01 -3.4799505e+03 - -3.0957112e+02 -1.0630263e+01 -3.4781804e+03 - -2.7976678e+02 -1.0532380e+01 -3.4765332e+03 - -2.4682633e+02 -1.0660194e+01 -3.4750351e+03 - -2.1092342e+02 -1.0940235e+01 -3.4737120e+03 - -1.7233186e+02 -1.1298216e+01 -3.4725887e+03 - -1.3142853e+02 -1.1663485e+01 -3.4716882e+03 - -8.8688601e+01 -1.1973966e+01 -3.4710299e+03 - -4.4671781e+01 -1.2181022e+01 -3.4706286e+03 - 2.4067136e-09 -1.2253601e+01 -3.4704938e+03 - 4.4671781e+01 -1.2181022e+01 -3.4706286e+03 - 8.8688601e+01 -1.1973966e+01 -3.4710299e+03 - 1.3142853e+02 -1.1663485e+01 -3.4716882e+03 - 1.7233186e+02 -1.1298216e+01 -3.4725887e+03 - 2.1092342e+02 -1.0940235e+01 -3.4737120e+03 - 2.4682633e+02 -1.0660194e+01 -3.4750351e+03 - 2.7976678e+02 -1.0532380e+01 -3.4765332e+03 - 3.0957112e+02 -1.0630263e+01 -3.4781804e+03 - 3.3615688e+02 -1.1022881e+01 -3.4799505e+03 - 3.5951994e+02 -1.1772247e+01 -3.4818187e+03 - 3.7971997e+02 -1.2931758e+01 -3.4837610e+03 - 3.9686571e+02 -1.4545498e+01 -3.4857555e+03 - 4.1110134e+02 -1.6648236e+01 -3.4877823e+03 - 4.2259456e+02 -1.9265918e+01 -3.4898235e+03 - 4.3152678e+02 -2.2416473e+01 -3.4918630e+03 - 4.3808529e+02 -2.6110769e+01 -3.4938869e+03 - 4.4245741e+02 -3.0353615e+01 -3.4958828e+03 - 4.4482624e+02 -3.5144726e+01 -3.4978402e+03 - 4.4536775e+02 -4.0479596e+01 -3.4997498e+03 - 4.4424895e+02 -4.6350277e+01 -3.5016036e+03 - 4.4162689e+02 -5.2746024e+01 -3.5033946e+03 - 4.3764821e+02 -5.9653835e+01 -3.5051170e+03 - 4.3244918e+02 -6.7058887e+01 -3.5067658e+03 - 4.2615594e+02 -7.4944869e+01 -3.5083364e+03 - 4.1888507e+02 -8.3294237e+01 -3.5098253e+03 - 4.1074407e+02 -9.2088407e+01 -3.5112291e+03 - 4.0183213e+02 -1.0130788e+02 -3.5125451e+03 - 3.9224067e+02 -1.1093233e+02 -3.5137710e+03 - 3.8205410e+02 -1.2094063e+02 -3.5149047e+03 - 3.7135037e+02 -1.3131091e+02 -3.5159446e+03 - 3.6020160e+02 -1.4202047e+02 -3.5168891e+03 - 3.4867460e+02 -1.5304581e+02 -3.5177371e+03 - 3.3683139e+02 -1.6436258e+02 -3.5184875e+03 - 3.2472967e+02 -1.7594543e+02 -3.5191394e+03 - 3.1242318e+02 -1.8776804e+02 -3.5196922e+03 - 2.9996215e+02 -1.9980293e+02 -3.5201452e+03 - 2.8739357e+02 -2.1202141e+02 -3.5204980e+03 - 2.7476154e+02 -2.2439346e+02 -3.5207502e+03 - 2.6210750e+02 -2.3688755e+02 -3.5209017e+03 - 2.4947054e+02 -2.4947054e+02 -3.5209522e+03 - 2.3688755e+02 -2.6210750e+02 -3.5209017e+03 - 2.2439346e+02 -2.7476154e+02 -3.5207502e+03 - 2.1202141e+02 -2.8739357e+02 -3.5204980e+03 - 1.9980293e+02 -2.9996215e+02 -3.5201452e+03 - 1.8776804e+02 -3.1242318e+02 -3.5196922e+03 - 1.7594543e+02 -3.2472967e+02 -3.5191394e+03 - 1.6436258e+02 -3.3683139e+02 -3.5184875e+03 - 1.5304582e+02 -3.4867460e+02 -3.5177371e+03 - 1.4202047e+02 -3.6020160e+02 -3.5168891e+03 - 1.3131091e+02 -3.7135037e+02 -3.5159446e+03 - 1.2094063e+02 -3.8205410e+02 -3.5149047e+03 - 1.1093233e+02 -3.9224067e+02 -3.5137710e+03 - 1.0130788e+02 -4.0183213e+02 -3.5125451e+03 - 9.2088407e+01 -4.1074407e+02 -3.5112291e+03 - 8.3294237e+01 -4.1888507e+02 -3.5098253e+03 - 7.4944869e+01 -4.2615594e+02 -3.5083364e+03 - 6.7058887e+01 -4.3244918e+02 -3.5067658e+03 - 5.9653835e+01 -4.3764821e+02 -3.5051170e+03 - 5.2746024e+01 -4.4162689e+02 -3.5033946e+03 - 4.6350277e+01 -4.4424895e+02 -3.5016036e+03 - 4.0479596e+01 -4.4536775e+02 -3.4997498e+03 - 3.5144726e+01 -4.4482624e+02 -3.4978402e+03 - 3.0353615e+01 -4.4245741e+02 -3.4958828e+03 - 2.6110769e+01 -4.3808529e+02 -3.4938869e+03 - 2.2416473e+01 -4.3152678e+02 -3.4918630e+03 - 1.9265918e+01 -4.2259456e+02 -3.4898235e+03 - 1.6648236e+01 -4.1110134e+02 -3.4877823e+03 - 1.4545498e+01 -3.9686571e+02 -3.4857555e+03 - 1.2931758e+01 -3.7971997e+02 -3.4837610e+03 - 1.1772247e+01 -3.5951994e+02 -3.4818187e+03 - 1.1022881e+01 -3.3615688e+02 -3.4799505e+03 - 1.0630263e+01 -3.0957112e+02 -3.4781804e+03 - 1.0532380e+01 -2.7976678e+02 -3.4765332e+03 - 1.0660194e+01 -2.4682633e+02 -3.4750351e+03 - 1.0940235e+01 -2.1092342e+02 -3.4737120e+03 - 1.1298216e+01 -1.7233186e+02 -3.4725887e+03 - 1.1663485e+01 -1.3142853e+02 -3.4716882e+03 - 1.1973965e+01 -8.8688601e+01 -3.4710299e+03 - 1.2181022e+01 -4.4671781e+01 -3.4706286e+03 - 1.2253601e+01 7.2201409e-09 -3.4704938e+03 - 1.2181022e+01 4.4671781e+01 -3.4706286e+03 - 1.1973966e+01 8.8688601e+01 -3.4710299e+03 - 1.1663485e+01 1.3142853e+02 -3.4716882e+03 - 1.1298216e+01 1.7233186e+02 -3.4725887e+03 - 1.0940235e+01 2.1092342e+02 -3.4737120e+03 - 1.0660194e+01 2.4682633e+02 -3.4750351e+03 - 1.0532380e+01 2.7976678e+02 -3.4765332e+03 - 1.0630263e+01 3.0957112e+02 -3.4781804e+03 - 1.1022881e+01 3.3615688e+02 -3.4799505e+03 - 1.1772247e+01 3.5951994e+02 -3.4818187e+03 - 1.2931758e+01 3.7971997e+02 -3.4837610e+03 - 1.4545498e+01 3.9686571e+02 -3.4857555e+03 - 1.6648236e+01 4.1110134e+02 -3.4877823e+03 - 1.9265918e+01 4.2259456e+02 -3.4898235e+03 - 2.2416473e+01 4.3152678e+02 -3.4918630e+03 - 2.6110769e+01 4.3808529e+02 -3.4938869e+03 - 3.0353615e+01 4.4245741e+02 -3.4958828e+03 - 3.5144726e+01 4.4482624e+02 -3.4978402e+03 - 4.0479596e+01 4.4536775e+02 -3.4997498e+03 - 4.6350277e+01 4.4424895e+02 -3.5016036e+03 - 5.2746024e+01 4.4162689e+02 -3.5033946e+03 - 5.9653835e+01 4.3764821e+02 -3.5051170e+03 - 6.7058887e+01 4.3244918e+02 -3.5067658e+03 - 7.4944869e+01 4.2615594e+02 -3.5083364e+03 - 8.3294237e+01 4.1888507e+02 -3.5098253e+03 - 9.2088407e+01 4.1074407e+02 -3.5112291e+03 - 1.0130788e+02 4.0183213e+02 -3.5125451e+03 - 1.1093233e+02 3.9224067e+02 -3.5137710e+03 - 1.2094063e+02 3.8205410e+02 -3.5149047e+03 - 1.3131091e+02 3.7135037e+02 -3.5159446e+03 - 1.4202047e+02 3.6020160e+02 -3.5168891e+03 - 1.5304582e+02 3.4867460e+02 -3.5177371e+03 - 1.6436258e+02 3.3683139e+02 -3.5184875e+03 - 1.7594543e+02 3.2472967e+02 -3.5191394e+03 - 1.8776804e+02 3.1242318e+02 -3.5196922e+03 - 1.9980293e+02 2.9996215e+02 -3.5201452e+03 - 2.1202141e+02 2.8739357e+02 -3.5204980e+03 - 2.2439346e+02 2.7476154e+02 -3.5207502e+03 - 2.3688755e+02 2.6210750e+02 -3.5209017e+03 - 2.4947054e+02 2.4947054e+02 -3.5209522e+03 - 2.6210750e+02 2.3688755e+02 -3.5209017e+03 - 2.7476154e+02 2.2439346e+02 -3.5207502e+03 - 2.8739357e+02 2.1202141e+02 -3.5204980e+03 - 2.9996215e+02 1.9980293e+02 -3.5201452e+03 - 3.1242318e+02 1.8776804e+02 -3.5196922e+03 - 3.2472967e+02 1.7594543e+02 -3.5191394e+03 - 3.3683139e+02 1.6436258e+02 -3.5184875e+03 - 3.4867460e+02 1.5304582e+02 -3.5177371e+03 - 3.6020160e+02 1.4202047e+02 -3.5168891e+03 - 3.7135037e+02 1.3131091e+02 -3.5159446e+03 - 3.8205410e+02 1.2094063e+02 -3.5149047e+03 - 3.9224067e+02 1.1093233e+02 -3.5137710e+03 - 4.0183213e+02 1.0130788e+02 -3.5125451e+03 - 4.1074407e+02 9.2088407e+01 -3.5112291e+03 - 4.1888507e+02 8.3294237e+01 -3.5098253e+03 - 4.2615594e+02 7.4944869e+01 -3.5083364e+03 - 4.3244918e+02 6.7058887e+01 -3.5067658e+03 - 4.3764821e+02 5.9653835e+01 -3.5051170e+03 - 4.4162689e+02 5.2746024e+01 -3.5033946e+03 - 4.4424895e+02 4.6350277e+01 -3.5016036e+03 - 4.4536775e+02 4.0479596e+01 -3.4997498e+03 - 4.4482624e+02 3.5144726e+01 -3.4978402e+03 - 4.4245741e+02 3.0353615e+01 -3.4958828e+03 - 4.3808529e+02 2.6110769e+01 -3.4938869e+03 - 4.3152678e+02 2.2416473e+01 -3.4918630e+03 - 4.2259456e+02 1.9265918e+01 -3.4898235e+03 - 4.1110134e+02 1.6648236e+01 -3.4877823e+03 - 3.9686571e+02 1.4545498e+01 -3.4857555e+03 - 3.7971997e+02 1.2931758e+01 -3.4837610e+03 - 3.5951994e+02 1.1772247e+01 -3.4818187e+03 - 3.3615688e+02 1.1022881e+01 -3.4799505e+03 - 3.0957112e+02 1.0630263e+01 -3.4781804e+03 - 2.7976678e+02 1.0532380e+01 -3.4765332e+03 - 2.4682633e+02 1.0660194e+01 -3.4750351e+03 - 2.1092342e+02 1.0940235e+01 -3.4737120e+03 - 1.7233186e+02 1.1298216e+01 -3.4725887e+03 - 1.3142853e+02 1.1663485e+01 -3.4716882e+03 - 8.8688601e+01 1.1973966e+01 -3.4710299e+03 - 4.4671781e+01 1.2181022e+01 -3.4706286e+03 - 0.0000000e+00 1.2253601e+01 -3.4704938e+03 - -4.4671781e+01 1.2181022e+01 -3.4706286e+03 - -8.8688601e+01 1.1973966e+01 -3.4710299e+03 - -1.3142853e+02 1.1663485e+01 -3.4716882e+03 - -1.7233186e+02 1.1298216e+01 -3.4725887e+03 - -2.1092342e+02 1.0940235e+01 -3.4737120e+03 - -2.4682633e+02 1.0660194e+01 -3.4750351e+03 - -2.7976678e+02 1.0532380e+01 -3.4765332e+03 - -3.0957112e+02 1.0630263e+01 -3.4781804e+03 - -3.3615688e+02 1.1022881e+01 -3.4799505e+03 - -3.5951994e+02 1.1772247e+01 -3.4818187e+03 - -3.7971997e+02 1.2931758e+01 -3.4837610e+03 - -3.9686571e+02 1.4545498e+01 -3.4857555e+03 - -4.1110134e+02 1.6648236e+01 -3.4877823e+03 - -4.2259456e+02 1.9265918e+01 -3.4898235e+03 - -4.3152678e+02 2.2416473e+01 -3.4918630e+03 - -4.3808529e+02 2.6110769e+01 -3.4938869e+03 - -4.4245741e+02 3.0353615e+01 -3.4958828e+03 - -4.4482624e+02 3.5144726e+01 -3.4978402e+03 - -4.4536775e+02 4.0479596e+01 -3.4997498e+03 - -4.4424895e+02 4.6350277e+01 -3.5016036e+03 - -4.4162689e+02 5.2746024e+01 -3.5033946e+03 - -4.3764821e+02 5.9653835e+01 -3.5051170e+03 - -4.3244918e+02 6.7058887e+01 -3.5067658e+03 - -4.2615594e+02 7.4944869e+01 -3.5083364e+03 - -4.1888507e+02 8.3294237e+01 -3.5098253e+03 - -4.1074407e+02 9.2088407e+01 -3.5112291e+03 - -4.0183213e+02 1.0130788e+02 -3.5125451e+03 - -3.9224067e+02 1.1093233e+02 -3.5137710e+03 - -3.8205410e+02 1.2094063e+02 -3.5149047e+03 - -3.7135037e+02 1.3131091e+02 -3.5159446e+03 - -3.6020160e+02 1.4202047e+02 -3.5168891e+03 - -3.4867460e+02 1.5304581e+02 -3.5177371e+03 - -3.3683139e+02 1.6436258e+02 -3.5184875e+03 - -3.2472967e+02 1.7594543e+02 -3.5191394e+03 - -3.1242318e+02 1.8776804e+02 -3.5196922e+03 - -2.9996215e+02 1.9980293e+02 -3.5201452e+03 - -2.8739357e+02 2.1202141e+02 -3.5204980e+03 - -2.7476154e+02 2.2439346e+02 -3.5207502e+03 - -2.6210750e+02 2.3688755e+02 -3.5209017e+03 - -2.4947054e+02 2.4947054e+02 -3.5209522e+03 - -2.3688755e+02 2.6210750e+02 -3.5209017e+03 - -2.2439346e+02 2.7476154e+02 -3.5207502e+03 - -2.1202141e+02 2.8739357e+02 -3.5204980e+03 - -1.9980293e+02 2.9996215e+02 -3.5201452e+03 - -1.8776804e+02 3.1242318e+02 -3.5196922e+03 - -1.7594543e+02 3.2472967e+02 -3.5191394e+03 - -1.6436258e+02 3.3683139e+02 -3.5184875e+03 - -1.5304582e+02 3.4867460e+02 -3.5177371e+03 - -1.4202047e+02 3.6020160e+02 -3.5168891e+03 - -1.3131091e+02 3.7135037e+02 -3.5159446e+03 - -1.2094063e+02 3.8205410e+02 -3.5149047e+03 - -1.1093233e+02 3.9224067e+02 -3.5137710e+03 - -1.0130788e+02 4.0183213e+02 -3.5125451e+03 - -9.2088407e+01 4.1074407e+02 -3.5112291e+03 - -8.3294237e+01 4.1888507e+02 -3.5098253e+03 - -7.4944869e+01 4.2615594e+02 -3.5083364e+03 - -6.7058887e+01 4.3244918e+02 -3.5067658e+03 - -5.9653835e+01 4.3764821e+02 -3.5051170e+03 - -5.2746024e+01 4.4162689e+02 -3.5033946e+03 - -4.6350277e+01 4.4424895e+02 -3.5016036e+03 - -4.0479596e+01 4.4536775e+02 -3.4997498e+03 - -3.5144726e+01 4.4482624e+02 -3.4978402e+03 - -3.0353615e+01 4.4245741e+02 -3.4958828e+03 - -2.6110769e+01 4.3808529e+02 -3.4938869e+03 - -2.2416473e+01 4.3152678e+02 -3.4918630e+03 - -1.9265918e+01 4.2259456e+02 -3.4898235e+03 - -1.6648236e+01 4.1110134e+02 -3.4877823e+03 - -1.4545498e+01 3.9686571e+02 -3.4857555e+03 - -1.2931758e+01 3.7971997e+02 -3.4837610e+03 - -1.1772247e+01 3.5951994e+02 -3.4818187e+03 - -1.1022881e+01 3.3615688e+02 -3.4799505e+03 - -1.0630263e+01 3.0957112e+02 -3.4781804e+03 - -1.0532380e+01 2.7976678e+02 -3.4765332e+03 - -1.0660194e+01 2.4682633e+02 -3.4750351e+03 - -1.0940235e+01 2.1092342e+02 -3.4737120e+03 - -1.1298216e+01 1.7233186e+02 -3.4725887e+03 - -1.1663485e+01 1.3142853e+02 -3.4716882e+03 - -1.1973966e+01 8.8688601e+01 -3.4710299e+03 - -1.2181022e+01 4.4671781e+01 -3.4706286e+03 - -1.2253601e+01 0.0000000e+00 -3.4704938e+03 - -7.9077866e+01 -2.4067136e-09 -3.4944162e+03 - -7.8997537e+01 -4.3736848e+01 -3.4945370e+03 - -7.8766676e+01 -8.6867721e+01 -3.4948969e+03 - -7.8414747e+01 -1.2881622e+02 -3.4954880e+03 - -7.7987964e+01 -1.6906177e+02 -3.4962975e+03 - -7.7545450e+01 -2.0715989e+02 -3.4973091e+03 - -7.7154688e+01 -2.4275491e+02 -3.4985033e+03 - -7.6886879e+01 -2.7558491e+02 -3.4998586e+03 - -7.6812709e+01 -3.0547955e+02 -3.5013525e+03 - -7.6998874e+01 -3.3235258e+02 -3.5029625e+03 - -7.7505541e+01 -3.5619067e+02 -3.5046664e+03 - -7.8384747e+01 -3.7704050e+02 -3.5064431e+03 - -7.9679643e+01 -3.9499552e+02 -3.5082731e+03 - -8.1424413e+01 -4.1018350e+02 -3.5101381e+03 - -8.3644673e+01 -4.2275563e+02 -3.5120218e+03 - -8.6358204e+01 -4.3287726e+02 -3.5139093e+03 - -8.9575832e+01 -4.4072057e+02 -3.5157876e+03 - -9.3302386e+01 -4.4645894e+02 -3.5176449e+03 - -9.7537618e+01 -4.5026278e+02 -3.5194709e+03 - -1.0227706e+02 -4.5229664e+02 -3.5212567e+03 - -1.0751279e+02 -4.5271735e+02 -3.5229944e+03 - -1.1323407e+02 -4.5167290e+02 -3.5246771e+03 - -1.1942788e+02 -4.4930188e+02 -3.5262987e+03 - -1.2607940e+02 -4.4573345e+02 -3.5278540e+03 - -1.3317229e+02 -4.4108742e+02 -3.5293384e+03 - -1.4068902e+02 -4.3547475e+02 -3.5307480e+03 - -1.4861101e+02 -4.2899793e+02 -3.5320792e+03 - -1.5691881e+02 -4.2175166e+02 -3.5333291e+03 - -1.6559220e+02 -4.1382335e+02 -3.5344950e+03 - -1.7461018e+02 -4.0529376e+02 -3.5355747e+03 - -1.8395108e+02 -3.9623756e+02 -3.5365661e+03 - -1.9359248e+02 -3.8672387e+02 -3.5374676e+03 - -2.0351121e+02 -3.7681678e+02 -3.5382778e+03 - -2.1368331e+02 -3.6657583e+02 -3.5389953e+03 - -2.2408394e+02 -3.5605641e+02 -3.5396191e+03 - -2.3468733e+02 -3.4531019e+02 -3.5401483e+03 - -2.4546669e+02 -3.3438542e+02 -3.5405823e+03 - -2.5639408e+02 -3.2332735e+02 -3.5409204e+03 - -2.6744031e+02 -3.1217841e+02 -3.5411622e+03 - -2.7857480e+02 -3.0097856e+02 -3.5413074e+03 - -2.8976548e+02 -2.8976548e+02 -3.5413559e+03 - -3.0097856e+02 -2.7857480e+02 -3.5413074e+03 - -3.1217841e+02 -2.6744031e+02 -3.5411622e+03 - -3.2332735e+02 -2.5639408e+02 -3.5409204e+03 - -3.3438542e+02 -2.4546669e+02 -3.5405823e+03 - -3.4531019e+02 -2.3468733e+02 -3.5401483e+03 - -3.5605641e+02 -2.2408394e+02 -3.5396191e+03 - -3.6657583e+02 -2.1368331e+02 -3.5389953e+03 - -3.7681678e+02 -2.0351121e+02 -3.5382778e+03 - -3.8672387e+02 -1.9359248e+02 -3.5374676e+03 - -3.9623756e+02 -1.8395108e+02 -3.5365661e+03 - -4.0529376e+02 -1.7461018e+02 -3.5355747e+03 - -4.1382335e+02 -1.6559220e+02 -3.5344950e+03 - -4.2175166e+02 -1.5691881e+02 -3.5333291e+03 - -4.2899793e+02 -1.4861101e+02 -3.5320792e+03 - -4.3547475e+02 -1.4068902e+02 -3.5307480e+03 - -4.4108742e+02 -1.3317229e+02 -3.5293384e+03 - -4.4573345e+02 -1.2607940e+02 -3.5278540e+03 - -4.4930188e+02 -1.1942788e+02 -3.5262987e+03 - -4.5167290e+02 -1.1323407e+02 -3.5246771e+03 - -4.5271735e+02 -1.0751279e+02 -3.5229944e+03 - -4.5229664e+02 -1.0227706e+02 -3.5212567e+03 - -4.5026278e+02 -9.7537618e+01 -3.5194709e+03 - -4.4645894e+02 -9.3302386e+01 -3.5176449e+03 - -4.4072057e+02 -8.9575832e+01 -3.5157876e+03 - -4.3287726e+02 -8.6358204e+01 -3.5139093e+03 - -4.2275563e+02 -8.3644673e+01 -3.5120218e+03 - -4.1018350e+02 -8.1424413e+01 -3.5101381e+03 - -3.9499552e+02 -7.9679643e+01 -3.5082731e+03 - -3.7704050e+02 -7.8384747e+01 -3.5064431e+03 - -3.5619067e+02 -7.7505541e+01 -3.5046664e+03 - -3.3235258e+02 -7.6998874e+01 -3.5029625e+03 - -3.0547955e+02 -7.6812709e+01 -3.5013525e+03 - -2.7558491e+02 -7.6886879e+01 -3.4998586e+03 - -2.4275491e+02 -7.7154688e+01 -3.4985033e+03 - -2.0715989e+02 -7.7545450e+01 -3.4973091e+03 - -1.6906177e+02 -7.7987964e+01 -3.4962975e+03 - -1.2881622e+02 -7.8414747e+01 -3.4954880e+03 - -8.6867721e+01 -7.8766676e+01 -3.4948969e+03 - -4.3736848e+01 -7.8997537e+01 -3.4945370e+03 - -4.8134273e-09 -7.9077866e+01 -3.4944162e+03 - 4.3736848e+01 -7.8997537e+01 -3.4945370e+03 - 8.6867721e+01 -7.8766676e+01 -3.4948969e+03 - 1.2881622e+02 -7.8414746e+01 -3.4954880e+03 - 1.6906177e+02 -7.7987964e+01 -3.4962975e+03 - 2.0715989e+02 -7.7545450e+01 -3.4973091e+03 - 2.4275491e+02 -7.7154688e+01 -3.4985033e+03 - 2.7558491e+02 -7.6886879e+01 -3.4998586e+03 - 3.0547955e+02 -7.6812709e+01 -3.5013525e+03 - 3.3235258e+02 -7.6998874e+01 -3.5029625e+03 - 3.5619067e+02 -7.7505541e+01 -3.5046664e+03 - 3.7704050e+02 -7.8384747e+01 -3.5064431e+03 - 3.9499552e+02 -7.9679644e+01 -3.5082731e+03 - 4.1018350e+02 -8.1424413e+01 -3.5101381e+03 - 4.2275563e+02 -8.3644673e+01 -3.5120218e+03 - 4.3287726e+02 -8.6358204e+01 -3.5139093e+03 - 4.4072057e+02 -8.9575832e+01 -3.5157876e+03 - 4.4645894e+02 -9.3302386e+01 -3.5176449e+03 - 4.5026278e+02 -9.7537618e+01 -3.5194709e+03 - 4.5229664e+02 -1.0227706e+02 -3.5212567e+03 - 4.5271735e+02 -1.0751279e+02 -3.5229944e+03 - 4.5167290e+02 -1.1323407e+02 -3.5246771e+03 - 4.4930188e+02 -1.1942788e+02 -3.5262987e+03 - 4.4573345e+02 -1.2607940e+02 -3.5278540e+03 - 4.4108742e+02 -1.3317229e+02 -3.5293384e+03 - 4.3547475e+02 -1.4068902e+02 -3.5307480e+03 - 4.2899793e+02 -1.4861101e+02 -3.5320792e+03 - 4.2175166e+02 -1.5691881e+02 -3.5333291e+03 - 4.1382335e+02 -1.6559220e+02 -3.5344950e+03 - 4.0529376e+02 -1.7461018e+02 -3.5355747e+03 - 3.9623756e+02 -1.8395108e+02 -3.5365661e+03 - 3.8672387e+02 -1.9359248e+02 -3.5374676e+03 - 3.7681678e+02 -2.0351121e+02 -3.5382778e+03 - 3.6657583e+02 -2.1368331e+02 -3.5389953e+03 - 3.5605641e+02 -2.2408394e+02 -3.5396191e+03 - 3.4531019e+02 -2.3468733e+02 -3.5401483e+03 - 3.3438542e+02 -2.4546669e+02 -3.5405823e+03 - 3.2332735e+02 -2.5639408e+02 -3.5409204e+03 - 3.1217841e+02 -2.6744031e+02 -3.5411622e+03 - 3.0097856e+02 -2.7857480e+02 -3.5413074e+03 - 2.8976548e+02 -2.8976548e+02 -3.5413559e+03 - 2.7857480e+02 -3.0097856e+02 -3.5413074e+03 - 2.6744031e+02 -3.1217841e+02 -3.5411622e+03 - 2.5639408e+02 -3.2332735e+02 -3.5409204e+03 - 2.4546669e+02 -3.3438542e+02 -3.5405823e+03 - 2.3468733e+02 -3.4531019e+02 -3.5401483e+03 - 2.2408394e+02 -3.5605641e+02 -3.5396191e+03 - 2.1368331e+02 -3.6657583e+02 -3.5389953e+03 - 2.0351121e+02 -3.7681678e+02 -3.5382778e+03 - 1.9359248e+02 -3.8672387e+02 -3.5374676e+03 - 1.8395108e+02 -3.9623756e+02 -3.5365661e+03 - 1.7461018e+02 -4.0529376e+02 -3.5355747e+03 - 1.6559220e+02 -4.1382335e+02 -3.5344950e+03 - 1.5691881e+02 -4.2175166e+02 -3.5333291e+03 - 1.4861101e+02 -4.2899793e+02 -3.5320792e+03 - 1.4068902e+02 -4.3547475e+02 -3.5307480e+03 - 1.3317229e+02 -4.4108742e+02 -3.5293384e+03 - 1.2607940e+02 -4.4573345e+02 -3.5278540e+03 - 1.1942788e+02 -4.4930188e+02 -3.5262987e+03 - 1.1323407e+02 -4.5167290e+02 -3.5246771e+03 - 1.0751279e+02 -4.5271735e+02 -3.5229944e+03 - 1.0227706e+02 -4.5229664e+02 -3.5212567e+03 - 9.7537618e+01 -4.5026278e+02 -3.5194709e+03 - 9.3302386e+01 -4.4645894e+02 -3.5176449e+03 - 8.9575832e+01 -4.4072057e+02 -3.5157876e+03 - 8.6358204e+01 -4.3287726e+02 -3.5139093e+03 - 8.3644673e+01 -4.2275563e+02 -3.5120218e+03 - 8.1424413e+01 -4.1018350e+02 -3.5101381e+03 - 7.9679644e+01 -3.9499552e+02 -3.5082731e+03 - 7.8384747e+01 -3.7704050e+02 -3.5064431e+03 - 7.7505541e+01 -3.5619067e+02 -3.5046664e+03 - 7.6998874e+01 -3.3235258e+02 -3.5029625e+03 - 7.6812709e+01 -3.0547955e+02 -3.5013525e+03 - 7.6886879e+01 -2.7558491e+02 -3.4998586e+03 - 7.7154688e+01 -2.4275491e+02 -3.4985033e+03 - 7.7545450e+01 -2.0715989e+02 -3.4973091e+03 - 7.7987964e+01 -1.6906177e+02 -3.4962975e+03 - 7.8414746e+01 -1.2881622e+02 -3.4954880e+03 - 7.8766676e+01 -8.6867721e+01 -3.4948969e+03 - 7.8997537e+01 -4.3736848e+01 -3.4945370e+03 - 7.9077866e+01 -2.4067136e-09 -3.4944162e+03 - 7.8997537e+01 4.3736848e+01 -3.4945370e+03 - 7.8766676e+01 8.6867721e+01 -3.4948969e+03 - 7.8414747e+01 1.2881622e+02 -3.4954880e+03 - 7.7987964e+01 1.6906177e+02 -3.4962975e+03 - 7.7545450e+01 2.0715989e+02 -3.4973091e+03 - 7.7154688e+01 2.4275491e+02 -3.4985033e+03 - 7.6886879e+01 2.7558491e+02 -3.4998586e+03 - 7.6812709e+01 3.0547955e+02 -3.5013525e+03 - 7.6998874e+01 3.3235258e+02 -3.5029625e+03 - 7.7505541e+01 3.5619067e+02 -3.5046664e+03 - 7.8384747e+01 3.7704050e+02 -3.5064431e+03 - 7.9679643e+01 3.9499552e+02 -3.5082731e+03 - 8.1424413e+01 4.1018350e+02 -3.5101381e+03 - 8.3644673e+01 4.2275563e+02 -3.5120218e+03 - 8.6358204e+01 4.3287726e+02 -3.5139093e+03 - 8.9575832e+01 4.4072057e+02 -3.5157876e+03 - 9.3302386e+01 4.4645894e+02 -3.5176449e+03 - 9.7537618e+01 4.5026278e+02 -3.5194709e+03 - 1.0227706e+02 4.5229664e+02 -3.5212567e+03 - 1.0751279e+02 4.5271735e+02 -3.5229944e+03 - 1.1323407e+02 4.5167290e+02 -3.5246771e+03 - 1.1942788e+02 4.4930188e+02 -3.5262987e+03 - 1.2607940e+02 4.4573345e+02 -3.5278540e+03 - 1.3317229e+02 4.4108742e+02 -3.5293384e+03 - 1.4068902e+02 4.3547475e+02 -3.5307480e+03 - 1.4861101e+02 4.2899793e+02 -3.5320792e+03 - 1.5691881e+02 4.2175166e+02 -3.5333291e+03 - 1.6559220e+02 4.1382335e+02 -3.5344950e+03 - 1.7461018e+02 4.0529376e+02 -3.5355747e+03 - 1.8395108e+02 3.9623756e+02 -3.5365661e+03 - 1.9359248e+02 3.8672387e+02 -3.5374676e+03 - 2.0351121e+02 3.7681678e+02 -3.5382778e+03 - 2.1368331e+02 3.6657583e+02 -3.5389953e+03 - 2.2408394e+02 3.5605641e+02 -3.5396191e+03 - 2.3468733e+02 3.4531019e+02 -3.5401483e+03 - 2.4546669e+02 3.3438542e+02 -3.5405823e+03 - 2.5639408e+02 3.2332735e+02 -3.5409204e+03 - 2.6744031e+02 3.1217841e+02 -3.5411622e+03 - 2.7857480e+02 3.0097856e+02 -3.5413074e+03 - 2.8976548e+02 2.8976548e+02 -3.5413559e+03 - 3.0097856e+02 2.7857480e+02 -3.5413074e+03 - 3.1217841e+02 2.6744031e+02 -3.5411622e+03 - 3.2332735e+02 2.5639408e+02 -3.5409204e+03 - 3.3438542e+02 2.4546669e+02 -3.5405823e+03 - 3.4531019e+02 2.3468733e+02 -3.5401483e+03 - 3.5605641e+02 2.2408394e+02 -3.5396191e+03 - 3.6657583e+02 2.1368331e+02 -3.5389953e+03 - 3.7681678e+02 2.0351121e+02 -3.5382778e+03 - 3.8672387e+02 1.9359248e+02 -3.5374676e+03 - 3.9623756e+02 1.8395108e+02 -3.5365661e+03 - 4.0529376e+02 1.7461018e+02 -3.5355747e+03 - 4.1382335e+02 1.6559220e+02 -3.5344950e+03 - 4.2175166e+02 1.5691881e+02 -3.5333291e+03 - 4.2899793e+02 1.4861101e+02 -3.5320792e+03 - 4.3547475e+02 1.4068902e+02 -3.5307480e+03 - 4.4108742e+02 1.3317229e+02 -3.5293384e+03 - 4.4573345e+02 1.2607940e+02 -3.5278540e+03 - 4.4930188e+02 1.1942788e+02 -3.5262987e+03 - 4.5167290e+02 1.1323407e+02 -3.5246771e+03 - 4.5271735e+02 1.0751279e+02 -3.5229944e+03 - 4.5229664e+02 1.0227706e+02 -3.5212567e+03 - 4.5026278e+02 9.7537618e+01 -3.5194709e+03 - 4.4645894e+02 9.3302386e+01 -3.5176449e+03 - 4.4072057e+02 8.9575832e+01 -3.5157876e+03 - 4.3287726e+02 8.6358204e+01 -3.5139093e+03 - 4.2275563e+02 8.3644673e+01 -3.5120218e+03 - 4.1018350e+02 8.1424413e+01 -3.5101381e+03 - 3.9499552e+02 7.9679643e+01 -3.5082731e+03 - 3.7704050e+02 7.8384747e+01 -3.5064431e+03 - 3.5619067e+02 7.7505541e+01 -3.5046664e+03 - 3.3235258e+02 7.6998874e+01 -3.5029625e+03 - 3.0547955e+02 7.6812709e+01 -3.5013525e+03 - 2.7558491e+02 7.6886879e+01 -3.4998586e+03 - 2.4275491e+02 7.7154688e+01 -3.4985033e+03 - 2.0715989e+02 7.7545450e+01 -3.4973091e+03 - 1.6906177e+02 7.7987964e+01 -3.4962975e+03 - 1.2881622e+02 7.8414747e+01 -3.4954880e+03 - 8.6867721e+01 7.8766676e+01 -3.4948969e+03 - 4.3736848e+01 7.8997537e+01 -3.4945370e+03 - 4.8134273e-09 7.9077866e+01 -3.4944162e+03 - -4.3736848e+01 7.8997537e+01 -3.4945370e+03 - -8.6867721e+01 7.8766676e+01 -3.4948969e+03 - -1.2881622e+02 7.8414746e+01 -3.4954880e+03 - -1.6906177e+02 7.7987964e+01 -3.4962975e+03 - -2.0715989e+02 7.7545450e+01 -3.4973091e+03 - -2.4275491e+02 7.7154688e+01 -3.4985033e+03 - -2.7558491e+02 7.6886879e+01 -3.4998586e+03 - -3.0547955e+02 7.6812709e+01 -3.5013525e+03 - -3.3235258e+02 7.6998874e+01 -3.5029625e+03 - -3.5619067e+02 7.7505541e+01 -3.5046664e+03 - -3.7704050e+02 7.8384747e+01 -3.5064431e+03 - -3.9499552e+02 7.9679644e+01 -3.5082731e+03 - -4.1018350e+02 8.1424413e+01 -3.5101381e+03 - -4.2275563e+02 8.3644673e+01 -3.5120218e+03 - -4.3287726e+02 8.6358204e+01 -3.5139093e+03 - -4.4072057e+02 8.9575832e+01 -3.5157876e+03 - -4.4645894e+02 9.3302386e+01 -3.5176449e+03 - -4.5026278e+02 9.7537618e+01 -3.5194709e+03 - -4.5229664e+02 1.0227706e+02 -3.5212567e+03 - -4.5271735e+02 1.0751279e+02 -3.5229944e+03 - -4.5167290e+02 1.1323407e+02 -3.5246771e+03 - -4.4930188e+02 1.1942788e+02 -3.5262987e+03 - -4.4573345e+02 1.2607940e+02 -3.5278540e+03 - -4.4108742e+02 1.3317229e+02 -3.5293384e+03 - -4.3547475e+02 1.4068902e+02 -3.5307480e+03 - -4.2899793e+02 1.4861101e+02 -3.5320792e+03 - -4.2175166e+02 1.5691881e+02 -3.5333291e+03 - -4.1382335e+02 1.6559220e+02 -3.5344950e+03 - -4.0529376e+02 1.7461018e+02 -3.5355747e+03 - -3.9623756e+02 1.8395108e+02 -3.5365661e+03 - -3.8672387e+02 1.9359248e+02 -3.5374676e+03 - -3.7681678e+02 2.0351121e+02 -3.5382778e+03 - -3.6657583e+02 2.1368331e+02 -3.5389953e+03 - -3.5605641e+02 2.2408394e+02 -3.5396191e+03 - -3.4531019e+02 2.3468733e+02 -3.5401483e+03 - -3.3438542e+02 2.4546669e+02 -3.5405823e+03 - -3.2332735e+02 2.5639408e+02 -3.5409204e+03 - -3.1217841e+02 2.6744031e+02 -3.5411622e+03 - -3.0097856e+02 2.7857480e+02 -3.5413074e+03 - -2.8976548e+02 2.8976548e+02 -3.5413559e+03 - -2.7857480e+02 3.0097856e+02 -3.5413074e+03 - -2.6744031e+02 3.1217841e+02 -3.5411622e+03 - -2.5639408e+02 3.2332735e+02 -3.5409204e+03 - -2.4546669e+02 3.3438542e+02 -3.5405823e+03 - -2.3468733e+02 3.4531019e+02 -3.5401483e+03 - -2.2408394e+02 3.5605641e+02 -3.5396191e+03 - -2.1368331e+02 3.6657583e+02 -3.5389953e+03 - -2.0351121e+02 3.7681678e+02 -3.5382778e+03 - -1.9359248e+02 3.8672387e+02 -3.5374676e+03 - -1.8395108e+02 3.9623756e+02 -3.5365661e+03 - -1.7461018e+02 4.0529376e+02 -3.5355747e+03 - -1.6559220e+02 4.1382335e+02 -3.5344950e+03 - -1.5691881e+02 4.2175166e+02 -3.5333291e+03 - -1.4861101e+02 4.2899793e+02 -3.5320792e+03 - -1.4068902e+02 4.3547475e+02 -3.5307480e+03 - -1.3317229e+02 4.4108742e+02 -3.5293384e+03 - -1.2607940e+02 4.4573345e+02 -3.5278540e+03 - -1.1942788e+02 4.4930188e+02 -3.5262987e+03 - -1.1323407e+02 4.5167290e+02 -3.5246771e+03 - -1.0751279e+02 4.5271735e+02 -3.5229944e+03 - -1.0227706e+02 4.5229664e+02 -3.5212567e+03 - -9.7537618e+01 4.5026278e+02 -3.5194709e+03 - -9.3302386e+01 4.4645894e+02 -3.5176449e+03 - -8.9575832e+01 4.4072057e+02 -3.5157876e+03 - -8.6358204e+01 4.3287726e+02 -3.5139093e+03 - -8.3644673e+01 4.2275563e+02 -3.5120218e+03 - -8.1424413e+01 4.1018350e+02 -3.5101381e+03 - -7.9679644e+01 3.9499552e+02 -3.5082731e+03 - -7.8384747e+01 3.7704050e+02 -3.5064431e+03 - -7.7505541e+01 3.5619067e+02 -3.5046664e+03 - -7.6998874e+01 3.3235258e+02 -3.5029625e+03 - -7.6812709e+01 3.0547955e+02 -3.5013525e+03 - -7.6886879e+01 2.7558491e+02 -3.4998586e+03 - -7.7154688e+01 2.4275491e+02 -3.4985033e+03 - -7.7545450e+01 2.0715989e+02 -3.4973091e+03 - -7.7987964e+01 1.6906177e+02 -3.4962975e+03 - -7.8414747e+01 1.2881622e+02 -3.4954880e+03 - -7.8766676e+01 8.6867721e+01 -3.4948969e+03 - -7.8997537e+01 4.3736848e+01 -3.4945370e+03 - -7.9077866e+01 2.4067136e-09 -3.4944162e+03 - -1.3951289e+02 -2.4067136e-09 -3.5147236e+03 - -1.3942628e+02 -4.2672394e+01 -3.5148314e+03 - -1.3917603e+02 -8.4784938e+01 -3.5151526e+03 - -1.3878996e+02 -1.2580427e+02 -3.5156806e+03 - -1.3831178e+02 -1.6524713e+02 -3.5164046e+03 - -1.3779754e+02 -2.0269873e+02 -3.5173108e+03 - -1.3731135e+02 -2.3782451e+02 -3.5183826e+03 - -1.3692110e+02 -2.7037503e+02 -3.5196016e+03 - -1.3669441e+02 -3.0018454e+02 -3.5209484e+03 - -1.3669534e+02 -3.2716465e+02 -3.5224034e+03 - -1.3698190e+02 -3.5129462e+02 -3.5239474e+03 - -1.3760447e+02 -3.7260992e+02 -3.5255616e+03 - -1.3860499e+02 -3.9119035e+02 -3.5272287e+03 - -1.4001684e+02 -4.0714878e+02 -3.5289321e+03 - -1.4186514e+02 -4.2062104e+02 -3.5306572e+03 - -1.4416738e+02 -4.3175740e+02 -3.5323902e+03 - -1.4693427e+02 -4.4071564e+02 -3.5341190e+03 - -1.5017064e+02 -4.4765567e+02 -3.5358326e+03 - -1.5387629e+02 -4.5273553e+02 -3.5375213e+03 - -1.5804683e+02 -4.5610855e+02 -3.5391764e+03 - -1.6267443e+02 -4.5792140e+02 -3.5407904e+03 - -1.6774847e+02 -4.5831297e+02 -3.5423563e+03 - -1.7325604e+02 -4.5741374e+02 -3.5438683e+03 - -1.7918241e+02 -4.5534558e+02 -3.5453211e+03 - -1.8551137e+02 -4.5222183e+02 -3.5467099e+03 - -1.9222552e+02 -4.4814762e+02 -3.5480308e+03 - -1.9930644e+02 -4.4322026e+02 -3.5492801e+03 - -2.0673488e+02 -4.3752976e+02 -3.5504547e+03 - -2.1449084e+02 -4.3115931e+02 -3.5515517e+03 - -2.2255361e+02 -4.2418585e+02 -3.5525687e+03 - -2.3090184e+02 -4.1668058e+02 -3.5535036e+03 - -2.3951349e+02 -4.0870948e+02 -3.5543545e+03 - -2.4836586e+02 -4.0033375e+02 -3.5551197e+03 - -2.5743552e+02 -3.9161028e+02 -3.5557980e+03 - -2.6669823e+02 -3.8259202e+02 -3.5563882e+03 - -2.7612892e+02 -3.7332842e+02 -3.5568891e+03 - -2.8570156e+02 -3.6386567e+02 -3.5573001e+03 - -2.9538905e+02 -3.5424711e+02 -3.5576203e+03 - -3.0516319e+02 -3.4451342e+02 -3.5578495e+03 - -3.1499443e+02 -3.3470294e+02 -3.5579871e+03 - -3.2485185e+02 -3.2485185e+02 -3.5580330e+03 - -3.3470294e+02 -3.1499443e+02 -3.5579871e+03 - -3.4451342e+02 -3.0516319e+02 -3.5578495e+03 - -3.5424711e+02 -2.9538905e+02 -3.5576203e+03 - -3.6386567e+02 -2.8570156e+02 -3.5573001e+03 - -3.7332842e+02 -2.7612892e+02 -3.5568891e+03 - -3.8259202e+02 -2.6669823e+02 -3.5563882e+03 - -3.9161028e+02 -2.5743552e+02 -3.5557980e+03 - -4.0033375e+02 -2.4836586e+02 -3.5551197e+03 - -4.0870948e+02 -2.3951349e+02 -3.5543545e+03 - -4.1668058e+02 -2.3090184e+02 -3.5535036e+03 - -4.2418585e+02 -2.2255361e+02 -3.5525687e+03 - -4.3115931e+02 -2.1449084e+02 -3.5515517e+03 - -4.3752976e+02 -2.0673488e+02 -3.5504547e+03 - -4.4322026e+02 -1.9930644e+02 -3.5492801e+03 - -4.4814762e+02 -1.9222552e+02 -3.5480308e+03 - -4.5222183e+02 -1.8551137e+02 -3.5467099e+03 - -4.5534558e+02 -1.7918241e+02 -3.5453211e+03 - -4.5741374e+02 -1.7325604e+02 -3.5438683e+03 - -4.5831297e+02 -1.6774847e+02 -3.5423563e+03 - -4.5792140e+02 -1.6267443e+02 -3.5407904e+03 - -4.5610855e+02 -1.5804683e+02 -3.5391764e+03 - -4.5273553e+02 -1.5387629e+02 -3.5375213e+03 - -4.4765567e+02 -1.5017064e+02 -3.5358326e+03 - -4.4071564e+02 -1.4693427e+02 -3.5341190e+03 - -4.3175740e+02 -1.4416738e+02 -3.5323902e+03 - -4.2062104e+02 -1.4186514e+02 -3.5306572e+03 - -4.0714878e+02 -1.4001684e+02 -3.5289321e+03 - -3.9119035e+02 -1.3860499e+02 -3.5272287e+03 - -3.7260992e+02 -1.3760447e+02 -3.5255616e+03 - -3.5129462e+02 -1.3698190e+02 -3.5239474e+03 - -3.2716465e+02 -1.3669534e+02 -3.5224034e+03 - -3.0018454e+02 -1.3669441e+02 -3.5209484e+03 - -2.7037503e+02 -1.3692110e+02 -3.5196016e+03 - -2.3782451e+02 -1.3731135e+02 -3.5183826e+03 - -2.0269873e+02 -1.3779754e+02 -3.5173108e+03 - -1.6524713e+02 -1.3831178e+02 -3.5164046e+03 - -1.2580427e+02 -1.3878996e+02 -3.5156806e+03 - -8.4784938e+01 -1.3917603e+02 -3.5151526e+03 - -4.2672395e+01 -1.3942628e+02 -3.5148314e+03 - 7.2201409e-09 -1.3951289e+02 -3.5147236e+03 - 4.2672395e+01 -1.3942628e+02 -3.5148314e+03 - 8.4784938e+01 -1.3917603e+02 -3.5151526e+03 - 1.2580427e+02 -1.3878996e+02 -3.5156806e+03 - 1.6524713e+02 -1.3831178e+02 -3.5164046e+03 - 2.0269873e+02 -1.3779754e+02 -3.5173108e+03 - 2.3782451e+02 -1.3731135e+02 -3.5183826e+03 - 2.7037503e+02 -1.3692110e+02 -3.5196016e+03 - 3.0018454e+02 -1.3669441e+02 -3.5209484e+03 - 3.2716465e+02 -1.3669534e+02 -3.5224034e+03 - 3.5129462e+02 -1.3698190e+02 -3.5239474e+03 - 3.7260992e+02 -1.3760447e+02 -3.5255616e+03 - 3.9119035e+02 -1.3860499e+02 -3.5272287e+03 - 4.0714878e+02 -1.4001684e+02 -3.5289321e+03 - 4.2062104e+02 -1.4186514e+02 -3.5306572e+03 - 4.3175740e+02 -1.4416738e+02 -3.5323902e+03 - 4.4071564e+02 -1.4693427e+02 -3.5341190e+03 - 4.4765567e+02 -1.5017064e+02 -3.5358326e+03 - 4.5273553e+02 -1.5387629e+02 -3.5375213e+03 - 4.5610855e+02 -1.5804683e+02 -3.5391764e+03 - 4.5792140e+02 -1.6267443e+02 -3.5407904e+03 - 4.5831297e+02 -1.6774847e+02 -3.5423563e+03 - 4.5741374e+02 -1.7325604e+02 -3.5438683e+03 - 4.5534558e+02 -1.7918241e+02 -3.5453211e+03 - 4.5222183e+02 -1.8551137e+02 -3.5467099e+03 - 4.4814762e+02 -1.9222552e+02 -3.5480308e+03 - 4.4322026e+02 -1.9930644e+02 -3.5492801e+03 - 4.3752976e+02 -2.0673488e+02 -3.5504547e+03 - 4.3115931e+02 -2.1449084e+02 -3.5515517e+03 - 4.2418585e+02 -2.2255361e+02 -3.5525687e+03 - 4.1668058e+02 -2.3090184e+02 -3.5535036e+03 - 4.0870948e+02 -2.3951349e+02 -3.5543545e+03 - 4.0033375e+02 -2.4836586e+02 -3.5551197e+03 - 3.9161028e+02 -2.5743552e+02 -3.5557980e+03 - 3.8259202e+02 -2.6669823e+02 -3.5563882e+03 - 3.7332842e+02 -2.7612892e+02 -3.5568891e+03 - 3.6386567e+02 -2.8570156e+02 -3.5573001e+03 - 3.5424711e+02 -2.9538905e+02 -3.5576203e+03 - 3.4451342e+02 -3.0516319e+02 -3.5578495e+03 - 3.3470294e+02 -3.1499443e+02 -3.5579871e+03 - 3.2485185e+02 -3.2485185e+02 -3.5580330e+03 - 3.1499443e+02 -3.3470294e+02 -3.5579871e+03 - 3.0516319e+02 -3.4451342e+02 -3.5578495e+03 - 2.9538905e+02 -3.5424711e+02 -3.5576203e+03 - 2.8570156e+02 -3.6386567e+02 -3.5573001e+03 - 2.7612892e+02 -3.7332842e+02 -3.5568891e+03 - 2.6669823e+02 -3.8259202e+02 -3.5563882e+03 - 2.5743552e+02 -3.9161028e+02 -3.5557980e+03 - 2.4836586e+02 -4.0033375e+02 -3.5551197e+03 - 2.3951349e+02 -4.0870948e+02 -3.5543545e+03 - 2.3090184e+02 -4.1668058e+02 -3.5535036e+03 - 2.2255361e+02 -4.2418585e+02 -3.5525687e+03 - 2.1449084e+02 -4.3115931e+02 -3.5515517e+03 - 2.0673488e+02 -4.3752976e+02 -3.5504547e+03 - 1.9930644e+02 -4.4322026e+02 -3.5492801e+03 - 1.9222552e+02 -4.4814762e+02 -3.5480308e+03 - 1.8551137e+02 -4.5222183e+02 -3.5467099e+03 - 1.7918241e+02 -4.5534558e+02 -3.5453211e+03 - 1.7325604e+02 -4.5741374e+02 -3.5438683e+03 - 1.6774847e+02 -4.5831297e+02 -3.5423563e+03 - 1.6267443e+02 -4.5792140e+02 -3.5407904e+03 - 1.5804683e+02 -4.5610855e+02 -3.5391764e+03 - 1.5387629e+02 -4.5273553e+02 -3.5375213e+03 - 1.5017064e+02 -4.4765567e+02 -3.5358326e+03 - 1.4693427e+02 -4.4071564e+02 -3.5341190e+03 - 1.4416738e+02 -4.3175740e+02 -3.5323902e+03 - 1.4186514e+02 -4.2062104e+02 -3.5306572e+03 - 1.4001684e+02 -4.0714878e+02 -3.5289321e+03 - 1.3860499e+02 -3.9119035e+02 -3.5272287e+03 - 1.3760447e+02 -3.7260992e+02 -3.5255616e+03 - 1.3698190e+02 -3.5129462e+02 -3.5239474e+03 - 1.3669534e+02 -3.2716465e+02 -3.5224034e+03 - 1.3669441e+02 -3.0018454e+02 -3.5209484e+03 - 1.3692110e+02 -2.7037503e+02 -3.5196016e+03 - 1.3731135e+02 -2.3782451e+02 -3.5183826e+03 - 1.3779754e+02 -2.0269873e+02 -3.5173108e+03 - 1.3831178e+02 -1.6524713e+02 -3.5164046e+03 - 1.3878996e+02 -1.2580427e+02 -3.5156806e+03 - 1.3917603e+02 -8.4784938e+01 -3.5151526e+03 - 1.3942628e+02 -4.2672394e+01 -3.5148314e+03 - 1.3951289e+02 2.4067136e-09 -3.5147236e+03 - 1.3942628e+02 4.2672394e+01 -3.5148314e+03 - 1.3917603e+02 8.4784938e+01 -3.5151526e+03 - 1.3878996e+02 1.2580427e+02 -3.5156806e+03 - 1.3831178e+02 1.6524713e+02 -3.5164046e+03 - 1.3779754e+02 2.0269873e+02 -3.5173108e+03 - 1.3731135e+02 2.3782451e+02 -3.5183826e+03 - 1.3692110e+02 2.7037503e+02 -3.5196016e+03 - 1.3669441e+02 3.0018454e+02 -3.5209484e+03 - 1.3669534e+02 3.2716465e+02 -3.5224034e+03 - 1.3698190e+02 3.5129462e+02 -3.5239474e+03 - 1.3760447e+02 3.7260992e+02 -3.5255616e+03 - 1.3860499e+02 3.9119035e+02 -3.5272287e+03 - 1.4001684e+02 4.0714878e+02 -3.5289321e+03 - 1.4186514e+02 4.2062104e+02 -3.5306572e+03 - 1.4416738e+02 4.3175740e+02 -3.5323902e+03 - 1.4693427e+02 4.4071564e+02 -3.5341190e+03 - 1.5017064e+02 4.4765567e+02 -3.5358326e+03 - 1.5387629e+02 4.5273553e+02 -3.5375213e+03 - 1.5804683e+02 4.5610855e+02 -3.5391764e+03 - 1.6267443e+02 4.5792140e+02 -3.5407904e+03 - 1.6774847e+02 4.5831297e+02 -3.5423563e+03 - 1.7325604e+02 4.5741374e+02 -3.5438683e+03 - 1.7918241e+02 4.5534558e+02 -3.5453211e+03 - 1.8551137e+02 4.5222183e+02 -3.5467099e+03 - 1.9222552e+02 4.4814762e+02 -3.5480308e+03 - 1.9930644e+02 4.4322026e+02 -3.5492801e+03 - 2.0673488e+02 4.3752976e+02 -3.5504547e+03 - 2.1449084e+02 4.3115931e+02 -3.5515517e+03 - 2.2255361e+02 4.2418585e+02 -3.5525687e+03 - 2.3090184e+02 4.1668058e+02 -3.5535036e+03 - 2.3951349e+02 4.0870948e+02 -3.5543545e+03 - 2.4836586e+02 4.0033375e+02 -3.5551197e+03 - 2.5743552e+02 3.9161028e+02 -3.5557980e+03 - 2.6669823e+02 3.8259202e+02 -3.5563882e+03 - 2.7612892e+02 3.7332842e+02 -3.5568891e+03 - 2.8570156e+02 3.6386567e+02 -3.5573001e+03 - 2.9538905e+02 3.5424711e+02 -3.5576203e+03 - 3.0516319e+02 3.4451342e+02 -3.5578495e+03 - 3.1499443e+02 3.3470294e+02 -3.5579871e+03 - 3.2485185e+02 3.2485185e+02 -3.5580330e+03 - 3.3470294e+02 3.1499443e+02 -3.5579871e+03 - 3.4451342e+02 3.0516319e+02 -3.5578495e+03 - 3.5424711e+02 2.9538905e+02 -3.5576203e+03 - 3.6386567e+02 2.8570156e+02 -3.5573001e+03 - 3.7332842e+02 2.7612892e+02 -3.5568891e+03 - 3.8259202e+02 2.6669823e+02 -3.5563882e+03 - 3.9161028e+02 2.5743552e+02 -3.5557980e+03 - 4.0033375e+02 2.4836586e+02 -3.5551197e+03 - 4.0870948e+02 2.3951349e+02 -3.5543545e+03 - 4.1668058e+02 2.3090184e+02 -3.5535036e+03 - 4.2418585e+02 2.2255361e+02 -3.5525687e+03 - 4.3115931e+02 2.1449084e+02 -3.5515517e+03 - 4.3752976e+02 2.0673488e+02 -3.5504547e+03 - 4.4322026e+02 1.9930644e+02 -3.5492801e+03 - 4.4814762e+02 1.9222552e+02 -3.5480308e+03 - 4.5222183e+02 1.8551137e+02 -3.5467099e+03 - 4.5534558e+02 1.7918241e+02 -3.5453211e+03 - 4.5741374e+02 1.7325604e+02 -3.5438683e+03 - 4.5831297e+02 1.6774847e+02 -3.5423563e+03 - 4.5792140e+02 1.6267443e+02 -3.5407904e+03 - 4.5610855e+02 1.5804683e+02 -3.5391764e+03 - 4.5273553e+02 1.5387629e+02 -3.5375213e+03 - 4.4765567e+02 1.5017064e+02 -3.5358326e+03 - 4.4071564e+02 1.4693427e+02 -3.5341190e+03 - 4.3175740e+02 1.4416738e+02 -3.5323902e+03 - 4.2062104e+02 1.4186514e+02 -3.5306572e+03 - 4.0714878e+02 1.4001684e+02 -3.5289321e+03 - 3.9119035e+02 1.3860499e+02 -3.5272287e+03 - 3.7260992e+02 1.3760447e+02 -3.5255616e+03 - 3.5129462e+02 1.3698190e+02 -3.5239474e+03 - 3.2716465e+02 1.3669534e+02 -3.5224034e+03 - 3.0018454e+02 1.3669441e+02 -3.5209484e+03 - 2.7037503e+02 1.3692110e+02 -3.5196016e+03 - 2.3782451e+02 1.3731135e+02 -3.5183826e+03 - 2.0269873e+02 1.3779754e+02 -3.5173108e+03 - 1.6524713e+02 1.3831178e+02 -3.5164046e+03 - 1.2580427e+02 1.3878996e+02 -3.5156806e+03 - 8.4784938e+01 1.3917603e+02 -3.5151526e+03 - 4.2672395e+01 1.3942628e+02 -3.5148314e+03 - 0.0000000e+00 1.3951289e+02 -3.5147236e+03 - -4.2672395e+01 1.3942628e+02 -3.5148314e+03 - -8.4784938e+01 1.3917603e+02 -3.5151526e+03 - -1.2580427e+02 1.3878996e+02 -3.5156806e+03 - -1.6524713e+02 1.3831178e+02 -3.5164046e+03 - -2.0269873e+02 1.3779754e+02 -3.5173108e+03 - -2.3782451e+02 1.3731135e+02 -3.5183826e+03 - -2.7037503e+02 1.3692110e+02 -3.5196016e+03 - -3.0018454e+02 1.3669441e+02 -3.5209484e+03 - -3.2716465e+02 1.3669534e+02 -3.5224034e+03 - -3.5129462e+02 1.3698190e+02 -3.5239474e+03 - -3.7260992e+02 1.3760447e+02 -3.5255616e+03 - -3.9119035e+02 1.3860499e+02 -3.5272287e+03 - -4.0714878e+02 1.4001684e+02 -3.5289321e+03 - -4.2062104e+02 1.4186514e+02 -3.5306572e+03 - -4.3175740e+02 1.4416738e+02 -3.5323902e+03 - -4.4071564e+02 1.4693427e+02 -3.5341190e+03 - -4.4765567e+02 1.5017064e+02 -3.5358326e+03 - -4.5273553e+02 1.5387629e+02 -3.5375213e+03 - -4.5610855e+02 1.5804683e+02 -3.5391764e+03 - -4.5792140e+02 1.6267443e+02 -3.5407904e+03 - -4.5831297e+02 1.6774847e+02 -3.5423563e+03 - -4.5741374e+02 1.7325604e+02 -3.5438683e+03 - -4.5534558e+02 1.7918241e+02 -3.5453211e+03 - -4.5222183e+02 1.8551137e+02 -3.5467099e+03 - -4.4814762e+02 1.9222552e+02 -3.5480308e+03 - -4.4322026e+02 1.9930644e+02 -3.5492801e+03 - -4.3752976e+02 2.0673488e+02 -3.5504547e+03 - -4.3115931e+02 2.1449084e+02 -3.5515517e+03 - -4.2418585e+02 2.2255361e+02 -3.5525687e+03 - -4.1668058e+02 2.3090184e+02 -3.5535036e+03 - -4.0870948e+02 2.3951349e+02 -3.5543545e+03 - -4.0033375e+02 2.4836586e+02 -3.5551197e+03 - -3.9161028e+02 2.5743552e+02 -3.5557980e+03 - -3.8259202e+02 2.6669823e+02 -3.5563882e+03 - -3.7332842e+02 2.7612892e+02 -3.5568891e+03 - -3.6386567e+02 2.8570156e+02 -3.5573001e+03 - -3.5424711e+02 2.9538905e+02 -3.5576203e+03 - -3.4451342e+02 3.0516319e+02 -3.5578495e+03 - -3.3470294e+02 3.1499443e+02 -3.5579871e+03 - -3.2485185e+02 3.2485185e+02 -3.5580330e+03 - -3.1499443e+02 3.3470294e+02 -3.5579871e+03 - -3.0516319e+02 3.4451342e+02 -3.5578495e+03 - -2.9538905e+02 3.5424711e+02 -3.5576203e+03 - -2.8570156e+02 3.6386567e+02 -3.5573001e+03 - -2.7612892e+02 3.7332842e+02 -3.5568891e+03 - -2.6669823e+02 3.8259202e+02 -3.5563882e+03 - -2.5743552e+02 3.9161028e+02 -3.5557980e+03 - -2.4836586e+02 4.0033375e+02 -3.5551197e+03 - -2.3951349e+02 4.0870948e+02 -3.5543545e+03 - -2.3090184e+02 4.1668058e+02 -3.5535036e+03 - -2.2255361e+02 4.2418585e+02 -3.5525687e+03 - -2.1449084e+02 4.3115931e+02 -3.5515517e+03 - -2.0673488e+02 4.3752976e+02 -3.5504547e+03 - -1.9930644e+02 4.4322026e+02 -3.5492801e+03 - -1.9222552e+02 4.4814762e+02 -3.5480308e+03 - -1.8551137e+02 4.5222183e+02 -3.5467099e+03 - -1.7918241e+02 4.5534558e+02 -3.5453211e+03 - -1.7325604e+02 4.5741374e+02 -3.5438683e+03 - -1.6774847e+02 4.5831297e+02 -3.5423563e+03 - -1.6267443e+02 4.5792140e+02 -3.5407904e+03 - -1.5804683e+02 4.5610855e+02 -3.5391764e+03 - -1.5387629e+02 4.5273553e+02 -3.5375213e+03 - -1.5017064e+02 4.4765567e+02 -3.5358326e+03 - -1.4693427e+02 4.4071564e+02 -3.5341190e+03 - -1.4416738e+02 4.3175740e+02 -3.5323902e+03 - -1.4186514e+02 4.2062104e+02 -3.5306572e+03 - -1.4001684e+02 4.0714878e+02 -3.5289321e+03 - -1.3860499e+02 3.9119035e+02 -3.5272287e+03 - -1.3760447e+02 3.7260992e+02 -3.5255616e+03 - -1.3698190e+02 3.5129462e+02 -3.5239474e+03 - -1.3669534e+02 3.2716465e+02 -3.5224034e+03 - -1.3669441e+02 3.0018454e+02 -3.5209484e+03 - -1.3692110e+02 2.7037503e+02 -3.5196016e+03 - -1.3731135e+02 2.3782451e+02 -3.5183826e+03 - -1.3779754e+02 2.0269873e+02 -3.5173108e+03 - -1.3831178e+02 1.6524713e+02 -3.5164046e+03 - -1.3878996e+02 1.2580427e+02 -3.5156806e+03 - -1.3917603e+02 8.4784938e+01 -3.5151526e+03 - -1.3942628e+02 4.2672394e+01 -3.5148314e+03 - -1.3951289e+02 -9.6268545e-09 -3.5147236e+03 - -1.9307653e+02 2.4067136e-09 -3.5315613e+03 - -1.9298518e+02 -4.1463812e+01 -3.5316569e+03 - -1.9272010e+02 -8.2411421e+01 -3.5319419e+03 - -1.9230746e+02 -1.2235034e+02 -3.5324108e+03 - -1.9178839e+02 -1.6083303e+02 -3.5330545e+03 - -1.9121573e+02 -1.9747351e+02 -3.5338612e+03 - -1.9065012e+02 -2.3195821e+02 -3.5348170e+03 - -1.9015590e+02 -2.6405076e+02 -3.5359061e+03 - -1.8979738e+02 -2.9359106e+02 -3.5371121e+03 - -1.8963569e+02 -3.2049001e+02 -3.5384179e+03 - -1.8972640e+02 -3.4472109e+02 -3.5398067e+03 - -1.9011796e+02 -3.6631018e+02 -3.5412623e+03 - -1.9085086e+02 -3.8532499e+02 -3.5427691e+03 - -1.9195743e+02 -4.0186479e+02 -3.5443126e+03 - -1.9346209e+02 -4.1605121e+02 -3.5458793e+03 - -1.9538193e+02 -4.2802034e+02 -3.5474569e+03 - -1.9772746e+02 -4.3791624e+02 -3.5490343e+03 - -2.0050344e+02 -4.4588586e+02 -3.5506012e+03 - -2.0370972e+02 -4.5207519e+02 -3.5521486e+03 - -2.0734201e+02 -4.5662648e+02 -3.5536682e+03 - -2.1139266e+02 -4.5967635e+02 -3.5551529e+03 - -2.1585120e+02 -4.6135460e+02 -3.5565960e+03 - -2.2070494e+02 -4.6178347e+02 -3.5579918e+03 - -2.2593937e+02 -4.6107746e+02 -3.5593350e+03 - -2.3153853e+02 -4.5934327e+02 -3.5606211e+03 - -2.3748526e+02 -4.5668005e+02 -3.5618460e+03 - -2.4376145e+02 -4.5317973e+02 -3.5630060e+03 - -2.5034816e+02 -4.4892745e+02 -3.5640980e+03 - -2.5722575e+02 -4.4400200e+02 -3.5651190e+03 - -2.6437392e+02 -4.3847634e+02 -3.5660665e+03 - -2.7177177e+02 -4.3241801e+02 -3.5669383e+03 - -2.7939779e+02 -4.2588968e+02 -3.5677324e+03 - -2.8722985e+02 -4.1894950e+02 -3.5684473e+03 - -2.9524517e+02 -4.1165157e+02 -3.5690812e+03 - -3.0342022e+02 -4.0404629e+02 -3.5696331e+03 - -3.1173073e+02 -3.9618070e+02 -3.5701018e+03 - -3.2015155e+02 -3.8809884e+02 -3.5704865e+03 - -3.2865657e+02 -3.7984200e+02 -3.5707864e+03 - -3.3721861e+02 -3.7144901e+02 -3.5710010e+03 - -3.4580931e+02 -3.6295647e+02 -3.5711299e+03 - -3.5439898e+02 -3.5439898e+02 -3.5711729e+03 - -3.6295647e+02 -3.4580931e+02 -3.5711299e+03 - -3.7144901e+02 -3.3721861e+02 -3.5710010e+03 - -3.7984200e+02 -3.2865657e+02 -3.5707864e+03 - -3.8809884e+02 -3.2015155e+02 -3.5704865e+03 - -3.9618070e+02 -3.1173073e+02 -3.5701018e+03 - -4.0404629e+02 -3.0342022e+02 -3.5696331e+03 - -4.1165157e+02 -2.9524517e+02 -3.5690812e+03 - -4.1894950e+02 -2.8722985e+02 -3.5684473e+03 - -4.2588968e+02 -2.7939779e+02 -3.5677324e+03 - -4.3241801e+02 -2.7177177e+02 -3.5669383e+03 - -4.3847634e+02 -2.6437392e+02 -3.5660665e+03 - -4.4400200e+02 -2.5722575e+02 -3.5651190e+03 - -4.4892745e+02 -2.5034816e+02 -3.5640980e+03 - -4.5317973e+02 -2.4376145e+02 -3.5630060e+03 - -4.5668005e+02 -2.3748526e+02 -3.5618460e+03 - -4.5934327e+02 -2.3153853e+02 -3.5606211e+03 - -4.6107746e+02 -2.2593937e+02 -3.5593350e+03 - -4.6178347e+02 -2.2070494e+02 -3.5579918e+03 - -4.6135460e+02 -2.1585120e+02 -3.5565960e+03 - -4.5967635e+02 -2.1139266e+02 -3.5551529e+03 - -4.5662648e+02 -2.0734201e+02 -3.5536682e+03 - -4.5207519e+02 -2.0370972e+02 -3.5521486e+03 - -4.4588586e+02 -2.0050344e+02 -3.5506012e+03 - -4.3791624e+02 -1.9772746e+02 -3.5490343e+03 - -4.2802034e+02 -1.9538193e+02 -3.5474569e+03 - -4.1605121e+02 -1.9346209e+02 -3.5458793e+03 - -4.0186479e+02 -1.9195743e+02 -3.5443126e+03 - -3.8532499e+02 -1.9085086e+02 -3.5427691e+03 - -3.6631018e+02 -1.9011796e+02 -3.5412623e+03 - -3.4472109e+02 -1.8972640e+02 -3.5398067e+03 - -3.2049001e+02 -1.8963569e+02 -3.5384179e+03 - -2.9359106e+02 -1.8979738e+02 -3.5371121e+03 - -2.6405076e+02 -1.9015590e+02 -3.5359061e+03 - -2.3195821e+02 -1.9065012e+02 -3.5348170e+03 - -1.9747351e+02 -1.9121573e+02 -3.5338612e+03 - -1.6083303e+02 -1.9178839e+02 -3.5330545e+03 - -1.2235034e+02 -1.9230746e+02 -3.5324108e+03 - -8.2411421e+01 -1.9272010e+02 -3.5319419e+03 - -4.1463812e+01 -1.9298518e+02 -3.5316569e+03 - 0.0000000e+00 -1.9307653e+02 -3.5315613e+03 - 4.1463812e+01 -1.9298518e+02 -3.5316569e+03 - 8.2411421e+01 -1.9272010e+02 -3.5319419e+03 - 1.2235034e+02 -1.9230746e+02 -3.5324108e+03 - 1.6083303e+02 -1.9178839e+02 -3.5330545e+03 - 1.9747351e+02 -1.9121573e+02 -3.5338612e+03 - 2.3195821e+02 -1.9065012e+02 -3.5348170e+03 - 2.6405076e+02 -1.9015590e+02 -3.5359061e+03 - 2.9359106e+02 -1.8979738e+02 -3.5371121e+03 - 3.2049001e+02 -1.8963569e+02 -3.5384179e+03 - 3.4472109e+02 -1.8972640e+02 -3.5398067e+03 - 3.6631018e+02 -1.9011796e+02 -3.5412623e+03 - 3.8532499e+02 -1.9085086e+02 -3.5427691e+03 - 4.0186479e+02 -1.9195743e+02 -3.5443126e+03 - 4.1605121e+02 -1.9346209e+02 -3.5458793e+03 - 4.2802034e+02 -1.9538193e+02 -3.5474569e+03 - 4.3791624e+02 -1.9772746e+02 -3.5490343e+03 - 4.4588586e+02 -2.0050344e+02 -3.5506012e+03 - 4.5207519e+02 -2.0370972e+02 -3.5521486e+03 - 4.5662648e+02 -2.0734201e+02 -3.5536682e+03 - 4.5967635e+02 -2.1139266e+02 -3.5551529e+03 - 4.6135460e+02 -2.1585120e+02 -3.5565960e+03 - 4.6178347e+02 -2.2070494e+02 -3.5579918e+03 - 4.6107746e+02 -2.2593937e+02 -3.5593350e+03 - 4.5934327e+02 -2.3153853e+02 -3.5606211e+03 - 4.5668005e+02 -2.3748526e+02 -3.5618460e+03 - 4.5317973e+02 -2.4376145e+02 -3.5630060e+03 - 4.4892745e+02 -2.5034816e+02 -3.5640980e+03 - 4.4400200e+02 -2.5722575e+02 -3.5651190e+03 - 4.3847634e+02 -2.6437392e+02 -3.5660665e+03 - 4.3241801e+02 -2.7177177e+02 -3.5669383e+03 - 4.2588968e+02 -2.7939779e+02 -3.5677324e+03 - 4.1894950e+02 -2.8722985e+02 -3.5684473e+03 - 4.1165157e+02 -2.9524517e+02 -3.5690812e+03 - 4.0404629e+02 -3.0342022e+02 -3.5696331e+03 - 3.9618070e+02 -3.1173073e+02 -3.5701018e+03 - 3.8809884e+02 -3.2015155e+02 -3.5704865e+03 - 3.7984200e+02 -3.2865657e+02 -3.5707864e+03 - 3.7144901e+02 -3.3721861e+02 -3.5710010e+03 - 3.6295647e+02 -3.4580931e+02 -3.5711299e+03 - 3.5439898e+02 -3.5439898e+02 -3.5711729e+03 - 3.4580931e+02 -3.6295647e+02 -3.5711299e+03 - 3.3721861e+02 -3.7144901e+02 -3.5710010e+03 - 3.2865657e+02 -3.7984200e+02 -3.5707864e+03 - 3.2015155e+02 -3.8809884e+02 -3.5704865e+03 - 3.1173073e+02 -3.9618070e+02 -3.5701018e+03 - 3.0342022e+02 -4.0404629e+02 -3.5696331e+03 - 2.9524517e+02 -4.1165157e+02 -3.5690812e+03 - 2.8722985e+02 -4.1894950e+02 -3.5684473e+03 - 2.7939779e+02 -4.2588968e+02 -3.5677324e+03 - 2.7177177e+02 -4.3241801e+02 -3.5669383e+03 - 2.6437392e+02 -4.3847634e+02 -3.5660665e+03 - 2.5722575e+02 -4.4400200e+02 -3.5651190e+03 - 2.5034816e+02 -4.4892745e+02 -3.5640980e+03 - 2.4376145e+02 -4.5317973e+02 -3.5630060e+03 - 2.3748526e+02 -4.5668005e+02 -3.5618460e+03 - 2.3153853e+02 -4.5934327e+02 -3.5606211e+03 - 2.2593937e+02 -4.6107746e+02 -3.5593350e+03 - 2.2070494e+02 -4.6178347e+02 -3.5579918e+03 - 2.1585120e+02 -4.6135460e+02 -3.5565960e+03 - 2.1139266e+02 -4.5967635e+02 -3.5551529e+03 - 2.0734201e+02 -4.5662648e+02 -3.5536682e+03 - 2.0370972e+02 -4.5207519e+02 -3.5521486e+03 - 2.0050344e+02 -4.4588586e+02 -3.5506012e+03 - 1.9772746e+02 -4.3791624e+02 -3.5490343e+03 - 1.9538193e+02 -4.2802034e+02 -3.5474569e+03 - 1.9346209e+02 -4.1605121e+02 -3.5458793e+03 - 1.9195743e+02 -4.0186479e+02 -3.5443126e+03 - 1.9085086e+02 -3.8532499e+02 -3.5427691e+03 - 1.9011796e+02 -3.6631018e+02 -3.5412623e+03 - 1.8972640e+02 -3.4472109e+02 -3.5398067e+03 - 1.8963569e+02 -3.2049001e+02 -3.5384179e+03 - 1.8979738e+02 -2.9359106e+02 -3.5371121e+03 - 1.9015590e+02 -2.6405076e+02 -3.5359061e+03 - 1.9065012e+02 -2.3195821e+02 -3.5348170e+03 - 1.9121573e+02 -1.9747351e+02 -3.5338612e+03 - 1.9178839e+02 -1.6083303e+02 -3.5330545e+03 - 1.9230746e+02 -1.2235034e+02 -3.5324108e+03 - 1.9272010e+02 -8.2411421e+01 -3.5319419e+03 - 1.9298518e+02 -4.1463812e+01 -3.5316569e+03 - 1.9307653e+02 0.0000000e+00 -3.5315613e+03 - 1.9298518e+02 4.1463812e+01 -3.5316569e+03 - 1.9272010e+02 8.2411421e+01 -3.5319419e+03 - 1.9230746e+02 1.2235034e+02 -3.5324108e+03 - 1.9178839e+02 1.6083303e+02 -3.5330545e+03 - 1.9121573e+02 1.9747351e+02 -3.5338612e+03 - 1.9065012e+02 2.3195821e+02 -3.5348170e+03 - 1.9015590e+02 2.6405076e+02 -3.5359061e+03 - 1.8979738e+02 2.9359106e+02 -3.5371121e+03 - 1.8963569e+02 3.2049001e+02 -3.5384179e+03 - 1.8972640e+02 3.4472109e+02 -3.5398067e+03 - 1.9011796e+02 3.6631018e+02 -3.5412623e+03 - 1.9085086e+02 3.8532499e+02 -3.5427691e+03 - 1.9195743e+02 4.0186479e+02 -3.5443126e+03 - 1.9346209e+02 4.1605121e+02 -3.5458793e+03 - 1.9538193e+02 4.2802034e+02 -3.5474569e+03 - 1.9772746e+02 4.3791624e+02 -3.5490343e+03 - 2.0050344e+02 4.4588586e+02 -3.5506012e+03 - 2.0370972e+02 4.5207519e+02 -3.5521486e+03 - 2.0734201e+02 4.5662648e+02 -3.5536682e+03 - 2.1139266e+02 4.5967635e+02 -3.5551529e+03 - 2.1585120e+02 4.6135460e+02 -3.5565960e+03 - 2.2070494e+02 4.6178347e+02 -3.5579918e+03 - 2.2593937e+02 4.6107746e+02 -3.5593350e+03 - 2.3153853e+02 4.5934327e+02 -3.5606211e+03 - 2.3748526e+02 4.5668005e+02 -3.5618460e+03 - 2.4376145e+02 4.5317973e+02 -3.5630060e+03 - 2.5034816e+02 4.4892745e+02 -3.5640980e+03 - 2.5722575e+02 4.4400200e+02 -3.5651190e+03 - 2.6437392e+02 4.3847634e+02 -3.5660665e+03 - 2.7177177e+02 4.3241801e+02 -3.5669383e+03 - 2.7939779e+02 4.2588968e+02 -3.5677324e+03 - 2.8722985e+02 4.1894950e+02 -3.5684473e+03 - 2.9524517e+02 4.1165157e+02 -3.5690812e+03 - 3.0342022e+02 4.0404629e+02 -3.5696331e+03 - 3.1173073e+02 3.9618070e+02 -3.5701018e+03 - 3.2015155e+02 3.8809884e+02 -3.5704865e+03 - 3.2865657e+02 3.7984200e+02 -3.5707864e+03 - 3.3721861e+02 3.7144901e+02 -3.5710010e+03 - 3.4580931e+02 3.6295647e+02 -3.5711299e+03 - 3.5439898e+02 3.5439898e+02 -3.5711729e+03 - 3.6295647e+02 3.4580931e+02 -3.5711299e+03 - 3.7144901e+02 3.3721861e+02 -3.5710010e+03 - 3.7984200e+02 3.2865657e+02 -3.5707864e+03 - 3.8809884e+02 3.2015155e+02 -3.5704865e+03 - 3.9618070e+02 3.1173073e+02 -3.5701018e+03 - 4.0404629e+02 3.0342022e+02 -3.5696331e+03 - 4.1165157e+02 2.9524517e+02 -3.5690812e+03 - 4.1894950e+02 2.8722985e+02 -3.5684473e+03 - 4.2588968e+02 2.7939779e+02 -3.5677324e+03 - 4.3241801e+02 2.7177177e+02 -3.5669383e+03 - 4.3847634e+02 2.6437392e+02 -3.5660665e+03 - 4.4400200e+02 2.5722575e+02 -3.5651190e+03 - 4.4892745e+02 2.5034816e+02 -3.5640980e+03 - 4.5317973e+02 2.4376145e+02 -3.5630060e+03 - 4.5668005e+02 2.3748526e+02 -3.5618460e+03 - 4.5934327e+02 2.3153853e+02 -3.5606211e+03 - 4.6107746e+02 2.2593937e+02 -3.5593350e+03 - 4.6178347e+02 2.2070494e+02 -3.5579918e+03 - 4.6135460e+02 2.1585120e+02 -3.5565960e+03 - 4.5967635e+02 2.1139266e+02 -3.5551529e+03 - 4.5662648e+02 2.0734201e+02 -3.5536682e+03 - 4.5207519e+02 2.0370972e+02 -3.5521486e+03 - 4.4588586e+02 2.0050344e+02 -3.5506012e+03 - 4.3791624e+02 1.9772746e+02 -3.5490343e+03 - 4.2802034e+02 1.9538193e+02 -3.5474569e+03 - 4.1605121e+02 1.9346209e+02 -3.5458793e+03 - 4.0186479e+02 1.9195743e+02 -3.5443126e+03 - 3.8532499e+02 1.9085086e+02 -3.5427691e+03 - 3.6631018e+02 1.9011796e+02 -3.5412623e+03 - 3.4472109e+02 1.8972640e+02 -3.5398067e+03 - 3.2049001e+02 1.8963569e+02 -3.5384179e+03 - 2.9359106e+02 1.8979738e+02 -3.5371121e+03 - 2.6405076e+02 1.9015590e+02 -3.5359061e+03 - 2.3195821e+02 1.9065012e+02 -3.5348170e+03 - 1.9747351e+02 1.9121573e+02 -3.5338612e+03 - 1.6083303e+02 1.9178839e+02 -3.5330545e+03 - 1.2235034e+02 1.9230746e+02 -3.5324108e+03 - 8.2411421e+01 1.9272010e+02 -3.5319419e+03 - 4.1463812e+01 1.9298518e+02 -3.5316569e+03 - 0.0000000e+00 1.9307653e+02 -3.5315613e+03 - -4.1463812e+01 1.9298518e+02 -3.5316569e+03 - -8.2411421e+01 1.9272010e+02 -3.5319419e+03 - -1.2235034e+02 1.9230746e+02 -3.5324108e+03 - -1.6083303e+02 1.9178839e+02 -3.5330545e+03 - -1.9747351e+02 1.9121573e+02 -3.5338612e+03 - -2.3195821e+02 1.9065012e+02 -3.5348170e+03 - -2.6405076e+02 1.9015590e+02 -3.5359061e+03 - -2.9359106e+02 1.8979738e+02 -3.5371121e+03 - -3.2049001e+02 1.8963569e+02 -3.5384179e+03 - -3.4472109e+02 1.8972640e+02 -3.5398067e+03 - -3.6631018e+02 1.9011796e+02 -3.5412623e+03 - -3.8532499e+02 1.9085086e+02 -3.5427691e+03 - -4.0186479e+02 1.9195743e+02 -3.5443126e+03 - -4.1605121e+02 1.9346209e+02 -3.5458793e+03 - -4.2802034e+02 1.9538193e+02 -3.5474569e+03 - -4.3791624e+02 1.9772746e+02 -3.5490343e+03 - -4.4588586e+02 2.0050344e+02 -3.5506012e+03 - -4.5207519e+02 2.0370972e+02 -3.5521486e+03 - -4.5662648e+02 2.0734201e+02 -3.5536682e+03 - -4.5967635e+02 2.1139266e+02 -3.5551529e+03 - -4.6135460e+02 2.1585120e+02 -3.5565960e+03 - -4.6178347e+02 2.2070494e+02 -3.5579918e+03 - -4.6107746e+02 2.2593937e+02 -3.5593350e+03 - -4.5934327e+02 2.3153853e+02 -3.5606211e+03 - -4.5668005e+02 2.3748526e+02 -3.5618460e+03 - -4.5317973e+02 2.4376145e+02 -3.5630060e+03 - -4.4892745e+02 2.5034816e+02 -3.5640980e+03 - -4.4400200e+02 2.5722575e+02 -3.5651190e+03 - -4.3847634e+02 2.6437392e+02 -3.5660665e+03 - -4.3241801e+02 2.7177177e+02 -3.5669383e+03 - -4.2588968e+02 2.7939779e+02 -3.5677324e+03 - -4.1894950e+02 2.8722985e+02 -3.5684473e+03 - -4.1165157e+02 2.9524517e+02 -3.5690812e+03 - -4.0404629e+02 3.0342022e+02 -3.5696331e+03 - -3.9618070e+02 3.1173073e+02 -3.5701018e+03 - -3.8809884e+02 3.2015155e+02 -3.5704865e+03 - -3.7984200e+02 3.2865657e+02 -3.5707864e+03 - -3.7144901e+02 3.3721861e+02 -3.5710010e+03 - -3.6295647e+02 3.4580931e+02 -3.5711299e+03 - -3.5439898e+02 3.5439898e+02 -3.5711729e+03 - -3.4580931e+02 3.6295647e+02 -3.5711299e+03 - -3.3721861e+02 3.7144901e+02 -3.5710010e+03 - -3.2865657e+02 3.7984200e+02 -3.5707864e+03 - -3.2015155e+02 3.8809884e+02 -3.5704865e+03 - -3.1173073e+02 3.9618070e+02 -3.5701018e+03 - -3.0342022e+02 4.0404629e+02 -3.5696331e+03 - -2.9524517e+02 4.1165157e+02 -3.5690812e+03 - -2.8722985e+02 4.1894950e+02 -3.5684473e+03 - -2.7939779e+02 4.2588968e+02 -3.5677324e+03 - -2.7177177e+02 4.3241801e+02 -3.5669383e+03 - -2.6437392e+02 4.3847634e+02 -3.5660665e+03 - -2.5722575e+02 4.4400200e+02 -3.5651190e+03 - -2.5034816e+02 4.4892745e+02 -3.5640980e+03 - -2.4376145e+02 4.5317973e+02 -3.5630060e+03 - -2.3748526e+02 4.5668005e+02 -3.5618460e+03 - -2.3153853e+02 4.5934327e+02 -3.5606211e+03 - -2.2593937e+02 4.6107746e+02 -3.5593350e+03 - -2.2070494e+02 4.6178347e+02 -3.5579918e+03 - -2.1585120e+02 4.6135460e+02 -3.5565960e+03 - -2.1139266e+02 4.5967635e+02 -3.5551529e+03 - -2.0734201e+02 4.5662648e+02 -3.5536682e+03 - -2.0370972e+02 4.5207519e+02 -3.5521486e+03 - -2.0050344e+02 4.4588586e+02 -3.5506012e+03 - -1.9772746e+02 4.3791624e+02 -3.5490343e+03 - -1.9538193e+02 4.2802034e+02 -3.5474569e+03 - -1.9346209e+02 4.1605121e+02 -3.5458793e+03 - -1.9195743e+02 4.0186479e+02 -3.5443126e+03 - -1.9085086e+02 3.8532499e+02 -3.5427691e+03 - -1.9011796e+02 3.6631018e+02 -3.5412623e+03 - -1.8972640e+02 3.4472109e+02 -3.5398067e+03 - -1.8963569e+02 3.2049001e+02 -3.5384179e+03 - -1.8979738e+02 2.9359106e+02 -3.5371121e+03 - -1.9015590e+02 2.6405076e+02 -3.5359061e+03 - -1.9065012e+02 2.3195821e+02 -3.5348170e+03 - -1.9121573e+02 1.9747351e+02 -3.5338612e+03 - -1.9178839e+02 1.6083303e+02 -3.5330545e+03 - -1.9230746e+02 1.2235034e+02 -3.5324108e+03 - -1.9272010e+02 8.2411421e+01 -3.5319419e+03 - -1.9298518e+02 4.1463812e+01 -3.5316569e+03 - -1.9307653e+02 2.4067136e-09 -3.5315613e+03 - -2.3928315e+02 -2.4067136e-09 -3.5450980e+03 - -2.3918862e+02 -4.0096384e+01 -3.5451822e+03 - -2.3891341e+02 -7.9718070e+01 -3.5454334e+03 - -2.3848199e+02 -1.1841158e+02 -3.5458468e+03 - -2.3793287e+02 -1.5576370e+02 -3.5464149e+03 - -2.3731562e+02 -1.9141649e+02 -3.5471280e+03 - -2.3668720e+02 -2.2507729e+02 -3.5479740e+03 - -2.3610826e+02 -2.5652324e+02 -3.5489398e+03 - -2.3563958e+02 -2.8560089e+02 -3.5500112e+03 - -2.3533911e+02 -3.1222172e+02 -3.5511737e+03 - -2.3525972e+02 -3.3635485e+02 -3.5524128e+03 - -2.3544764e+02 -3.5801808e+02 -3.5537142e+03 - -2.3594166e+02 -3.7726840e+02 -3.5550644e+03 - -2.3677284e+02 -3.9419276e+02 -3.5564505e+03 - -2.3796473e+02 -4.0889964e+02 -3.5578605e+03 - -2.3953388e+02 -4.2151181e+02 -3.5592833e+03 - -2.4149048e+02 -4.3216026e+02 -3.5607088e+03 - -2.4383917e+02 -4.4097948e+02 -3.5621277e+03 - -2.4657982e+02 -4.4810373e+02 -3.5635315e+03 - -2.4970828e+02 -4.5366439e+02 -3.5649128e+03 - -2.5321707e+02 -4.5778812e+02 -3.5662645e+03 - -2.5709600e+02 -4.6059559e+02 -3.5675806e+03 - -2.6133264e+02 -4.6220081e+02 -3.5688555e+03 - -2.6591282e+02 -4.6271076e+02 -3.5700842e+03 - -2.7082091e+02 -4.6222538e+02 -3.5712622e+03 - -2.7604015e+02 -4.6083769e+02 -3.5723856e+03 - -2.8155282e+02 -4.5863408e+02 -3.5734508e+03 - -2.8734045e+02 -4.5569463e+02 -3.5744545e+03 - -2.9338386e+02 -4.5209357e+02 -3.5753940e+03 - -2.9966330e+02 -4.4789969e+02 -3.5762667e+03 - -3.0615844e+02 -4.4317673e+02 -3.5770703e+03 - -3.1284842e+02 -4.3798387e+02 -3.5778030e+03 - -3.1971179e+02 -4.3237607e+02 -3.5784628e+03 - -3.2672653e+02 -4.2640449e+02 -3.5790485e+03 - -3.3386997e+02 -4.2011681e+02 -3.5795585e+03 - -3.4111873e+02 -4.1355759e+02 -3.5799919e+03 - -3.4844865e+02 -4.0676854e+02 -3.5803477e+03 - -3.5583468e+02 -3.9978882e+02 -3.5806252e+03 - -3.6325082e+02 -3.9265526e+02 -3.5808238e+03 - -3.7066997e+02 -3.8540262e+02 -3.5809431e+03 - -3.7806379e+02 -3.7806379e+02 -3.5809829e+03 - -3.8540262e+02 -3.7066997e+02 -3.5809431e+03 - -3.9265526e+02 -3.6325082e+02 -3.5808238e+03 - -3.9978882e+02 -3.5583468e+02 -3.5806252e+03 - -4.0676854e+02 -3.4844865e+02 -3.5803477e+03 - -4.1355759e+02 -3.4111873e+02 -3.5799919e+03 - -4.2011681e+02 -3.3386997e+02 -3.5795585e+03 - -4.2640449e+02 -3.2672653e+02 -3.5790485e+03 - -4.3237607e+02 -3.1971179e+02 -3.5784628e+03 - -4.3798387e+02 -3.1284842e+02 -3.5778030e+03 - -4.4317673e+02 -3.0615844e+02 -3.5770703e+03 - -4.4789969e+02 -2.9966330e+02 -3.5762667e+03 - -4.5209357e+02 -2.9338386e+02 -3.5753940e+03 - -4.5569463e+02 -2.8734045e+02 -3.5744545e+03 - -4.5863408e+02 -2.8155282e+02 -3.5734508e+03 - -4.6083769e+02 -2.7604015e+02 -3.5723856e+03 - -4.6222538e+02 -2.7082091e+02 -3.5712622e+03 - -4.6271076e+02 -2.6591282e+02 -3.5700842e+03 - -4.6220081e+02 -2.6133264e+02 -3.5688555e+03 - -4.6059559e+02 -2.5709600e+02 -3.5675806e+03 - -4.5778812e+02 -2.5321707e+02 -3.5662645e+03 - -4.5366439e+02 -2.4970828e+02 -3.5649128e+03 - -4.4810373e+02 -2.4657982e+02 -3.5635315e+03 - -4.4097948e+02 -2.4383917e+02 -3.5621277e+03 - -4.3216026e+02 -2.4149048e+02 -3.5607088e+03 - -4.2151181e+02 -2.3953388e+02 -3.5592833e+03 - -4.0889964e+02 -2.3796473e+02 -3.5578605e+03 - -3.9419276e+02 -2.3677284e+02 -3.5564505e+03 - -3.7726840e+02 -2.3594166e+02 -3.5550644e+03 - -3.5801808e+02 -2.3544764e+02 -3.5537142e+03 - -3.3635485e+02 -2.3525972e+02 -3.5524128e+03 - -3.1222172e+02 -2.3533911e+02 -3.5511737e+03 - -2.8560089e+02 -2.3563958e+02 -3.5500112e+03 - -2.5652324e+02 -2.3610826e+02 -3.5489398e+03 - -2.2507729e+02 -2.3668720e+02 -3.5479740e+03 - -1.9141649e+02 -2.3731562e+02 -3.5471280e+03 - -1.5576370e+02 -2.3793287e+02 -3.5464149e+03 - -1.1841158e+02 -2.3848199e+02 -3.5458468e+03 - -7.9718070e+01 -2.3891341e+02 -3.5454334e+03 - -4.0096384e+01 -2.3918862e+02 -3.5451822e+03 - -2.4067136e-09 -2.3928315e+02 -3.5450980e+03 - 4.0096384e+01 -2.3918862e+02 -3.5451822e+03 - 7.9718070e+01 -2.3891341e+02 -3.5454334e+03 - 1.1841158e+02 -2.3848199e+02 -3.5458468e+03 - 1.5576370e+02 -2.3793287e+02 -3.5464149e+03 - 1.9141649e+02 -2.3731562e+02 -3.5471280e+03 - 2.2507729e+02 -2.3668720e+02 -3.5479740e+03 - 2.5652324e+02 -2.3610826e+02 -3.5489398e+03 - 2.8560089e+02 -2.3563958e+02 -3.5500112e+03 - 3.1222172e+02 -2.3533911e+02 -3.5511737e+03 - 3.3635485e+02 -2.3525972e+02 -3.5524128e+03 - 3.5801808e+02 -2.3544764e+02 -3.5537142e+03 - 3.7726840e+02 -2.3594166e+02 -3.5550644e+03 - 3.9419276e+02 -2.3677284e+02 -3.5564505e+03 - 4.0889964e+02 -2.3796473e+02 -3.5578605e+03 - 4.2151181e+02 -2.3953388e+02 -3.5592833e+03 - 4.3216026e+02 -2.4149048e+02 -3.5607088e+03 - 4.4097948e+02 -2.4383917e+02 -3.5621277e+03 - 4.4810373e+02 -2.4657982e+02 -3.5635315e+03 - 4.5366439e+02 -2.4970828e+02 -3.5649128e+03 - 4.5778812e+02 -2.5321707e+02 -3.5662645e+03 - 4.6059559e+02 -2.5709600e+02 -3.5675806e+03 - 4.6220081e+02 -2.6133264e+02 -3.5688555e+03 - 4.6271076e+02 -2.6591282e+02 -3.5700842e+03 - 4.6222538e+02 -2.7082091e+02 -3.5712622e+03 - 4.6083769e+02 -2.7604015e+02 -3.5723856e+03 - 4.5863408e+02 -2.8155282e+02 -3.5734508e+03 - 4.5569463e+02 -2.8734045e+02 -3.5744545e+03 - 4.5209357e+02 -2.9338386e+02 -3.5753940e+03 - 4.4789969e+02 -2.9966330e+02 -3.5762667e+03 - 4.4317673e+02 -3.0615844e+02 -3.5770703e+03 - 4.3798387e+02 -3.1284842e+02 -3.5778030e+03 - 4.3237607e+02 -3.1971179e+02 -3.5784628e+03 - 4.2640449e+02 -3.2672653e+02 -3.5790485e+03 - 4.2011681e+02 -3.3386997e+02 -3.5795585e+03 - 4.1355759e+02 -3.4111873e+02 -3.5799919e+03 - 4.0676854e+02 -3.4844865e+02 -3.5803477e+03 - 3.9978882e+02 -3.5583468e+02 -3.5806252e+03 - 3.9265526e+02 -3.6325082e+02 -3.5808238e+03 - 3.8540262e+02 -3.7066997e+02 -3.5809431e+03 - 3.7806379e+02 -3.7806379e+02 -3.5809829e+03 - 3.7066997e+02 -3.8540262e+02 -3.5809431e+03 - 3.6325082e+02 -3.9265526e+02 -3.5808238e+03 - 3.5583468e+02 -3.9978882e+02 -3.5806252e+03 - 3.4844865e+02 -4.0676854e+02 -3.5803477e+03 - 3.4111873e+02 -4.1355759e+02 -3.5799919e+03 - 3.3386997e+02 -4.2011681e+02 -3.5795585e+03 - 3.2672653e+02 -4.2640449e+02 -3.5790485e+03 - 3.1971179e+02 -4.3237607e+02 -3.5784628e+03 - 3.1284842e+02 -4.3798387e+02 -3.5778030e+03 - 3.0615844e+02 -4.4317673e+02 -3.5770703e+03 - 2.9966330e+02 -4.4789969e+02 -3.5762667e+03 - 2.9338386e+02 -4.5209357e+02 -3.5753940e+03 - 2.8734045e+02 -4.5569463e+02 -3.5744545e+03 - 2.8155282e+02 -4.5863408e+02 -3.5734508e+03 - 2.7604015e+02 -4.6083769e+02 -3.5723856e+03 - 2.7082091e+02 -4.6222538e+02 -3.5712622e+03 - 2.6591282e+02 -4.6271076e+02 -3.5700842e+03 - 2.6133264e+02 -4.6220081e+02 -3.5688555e+03 - 2.5709600e+02 -4.6059559e+02 -3.5675806e+03 - 2.5321707e+02 -4.5778812e+02 -3.5662645e+03 - 2.4970828e+02 -4.5366439e+02 -3.5649128e+03 - 2.4657982e+02 -4.4810373e+02 -3.5635315e+03 - 2.4383917e+02 -4.4097948e+02 -3.5621277e+03 - 2.4149048e+02 -4.3216026e+02 -3.5607088e+03 - 2.3953388e+02 -4.2151181e+02 -3.5592833e+03 - 2.3796473e+02 -4.0889964e+02 -3.5578605e+03 - 2.3677284e+02 -3.9419276e+02 -3.5564505e+03 - 2.3594166e+02 -3.7726840e+02 -3.5550644e+03 - 2.3544764e+02 -3.5801808e+02 -3.5537142e+03 - 2.3525972e+02 -3.3635485e+02 -3.5524128e+03 - 2.3533911e+02 -3.1222172e+02 -3.5511737e+03 - 2.3563958e+02 -2.8560089e+02 -3.5500112e+03 - 2.3610826e+02 -2.5652324e+02 -3.5489398e+03 - 2.3668720e+02 -2.2507729e+02 -3.5479740e+03 - 2.3731562e+02 -1.9141649e+02 -3.5471280e+03 - 2.3793287e+02 -1.5576370e+02 -3.5464149e+03 - 2.3848199e+02 -1.1841158e+02 -3.5458468e+03 - 2.3891341e+02 -7.9718070e+01 -3.5454334e+03 - 2.3918862e+02 -4.0096384e+01 -3.5451822e+03 - 2.3928315e+02 4.8134273e-09 -3.5450980e+03 - 2.3918862e+02 4.0096384e+01 -3.5451822e+03 - 2.3891341e+02 7.9718070e+01 -3.5454334e+03 - 2.3848199e+02 1.1841158e+02 -3.5458468e+03 - 2.3793287e+02 1.5576370e+02 -3.5464149e+03 - 2.3731562e+02 1.9141649e+02 -3.5471280e+03 - 2.3668720e+02 2.2507729e+02 -3.5479740e+03 - 2.3610826e+02 2.5652324e+02 -3.5489398e+03 - 2.3563958e+02 2.8560089e+02 -3.5500112e+03 - 2.3533911e+02 3.1222172e+02 -3.5511737e+03 - 2.3525972e+02 3.3635485e+02 -3.5524128e+03 - 2.3544764e+02 3.5801808e+02 -3.5537142e+03 - 2.3594166e+02 3.7726840e+02 -3.5550644e+03 - 2.3677284e+02 3.9419276e+02 -3.5564505e+03 - 2.3796473e+02 4.0889964e+02 -3.5578605e+03 - 2.3953388e+02 4.2151181e+02 -3.5592833e+03 - 2.4149048e+02 4.3216026e+02 -3.5607088e+03 - 2.4383917e+02 4.4097948e+02 -3.5621277e+03 - 2.4657982e+02 4.4810373e+02 -3.5635315e+03 - 2.4970828e+02 4.5366439e+02 -3.5649128e+03 - 2.5321707e+02 4.5778812e+02 -3.5662645e+03 - 2.5709600e+02 4.6059559e+02 -3.5675806e+03 - 2.6133264e+02 4.6220081e+02 -3.5688555e+03 - 2.6591282e+02 4.6271076e+02 -3.5700842e+03 - 2.7082091e+02 4.6222538e+02 -3.5712622e+03 - 2.7604015e+02 4.6083769e+02 -3.5723856e+03 - 2.8155282e+02 4.5863408e+02 -3.5734508e+03 - 2.8734045e+02 4.5569463e+02 -3.5744545e+03 - 2.9338386e+02 4.5209357e+02 -3.5753940e+03 - 2.9966330e+02 4.4789969e+02 -3.5762667e+03 - 3.0615844e+02 4.4317673e+02 -3.5770703e+03 - 3.1284842e+02 4.3798387e+02 -3.5778030e+03 - 3.1971179e+02 4.3237607e+02 -3.5784628e+03 - 3.2672653e+02 4.2640449e+02 -3.5790485e+03 - 3.3386997e+02 4.2011681e+02 -3.5795585e+03 - 3.4111873e+02 4.1355759e+02 -3.5799919e+03 - 3.4844865e+02 4.0676854e+02 -3.5803477e+03 - 3.5583468e+02 3.9978882e+02 -3.5806252e+03 - 3.6325082e+02 3.9265526e+02 -3.5808238e+03 - 3.7066997e+02 3.8540262e+02 -3.5809431e+03 - 3.7806379e+02 3.7806379e+02 -3.5809829e+03 - 3.8540262e+02 3.7066997e+02 -3.5809431e+03 - 3.9265526e+02 3.6325082e+02 -3.5808238e+03 - 3.9978882e+02 3.5583468e+02 -3.5806252e+03 - 4.0676854e+02 3.4844865e+02 -3.5803477e+03 - 4.1355759e+02 3.4111873e+02 -3.5799919e+03 - 4.2011681e+02 3.3386997e+02 -3.5795585e+03 - 4.2640449e+02 3.2672653e+02 -3.5790485e+03 - 4.3237607e+02 3.1971179e+02 -3.5784628e+03 - 4.3798387e+02 3.1284842e+02 -3.5778030e+03 - 4.4317673e+02 3.0615844e+02 -3.5770703e+03 - 4.4789969e+02 2.9966330e+02 -3.5762667e+03 - 4.5209357e+02 2.9338386e+02 -3.5753940e+03 - 4.5569463e+02 2.8734045e+02 -3.5744545e+03 - 4.5863408e+02 2.8155282e+02 -3.5734508e+03 - 4.6083769e+02 2.7604015e+02 -3.5723856e+03 - 4.6222538e+02 2.7082091e+02 -3.5712622e+03 - 4.6271076e+02 2.6591282e+02 -3.5700842e+03 - 4.6220081e+02 2.6133264e+02 -3.5688555e+03 - 4.6059559e+02 2.5709600e+02 -3.5675806e+03 - 4.5778812e+02 2.5321707e+02 -3.5662645e+03 - 4.5366439e+02 2.4970828e+02 -3.5649128e+03 - 4.4810373e+02 2.4657982e+02 -3.5635315e+03 - 4.4097948e+02 2.4383917e+02 -3.5621277e+03 - 4.3216026e+02 2.4149048e+02 -3.5607088e+03 - 4.2151181e+02 2.3953388e+02 -3.5592833e+03 - 4.0889964e+02 2.3796473e+02 -3.5578605e+03 - 3.9419276e+02 2.3677284e+02 -3.5564505e+03 - 3.7726840e+02 2.3594166e+02 -3.5550644e+03 - 3.5801808e+02 2.3544764e+02 -3.5537142e+03 - 3.3635485e+02 2.3525972e+02 -3.5524128e+03 - 3.1222172e+02 2.3533911e+02 -3.5511737e+03 - 2.8560089e+02 2.3563958e+02 -3.5500112e+03 - 2.5652324e+02 2.3610826e+02 -3.5489398e+03 - 2.2507729e+02 2.3668720e+02 -3.5479740e+03 - 1.9141649e+02 2.3731562e+02 -3.5471280e+03 - 1.5576370e+02 2.3793287e+02 -3.5464149e+03 - 1.1841158e+02 2.3848199e+02 -3.5458468e+03 - 7.9718070e+01 2.3891341e+02 -3.5454334e+03 - 4.0096384e+01 2.3918862e+02 -3.5451822e+03 - 0.0000000e+00 2.3928315e+02 -3.5450980e+03 - -4.0096384e+01 2.3918862e+02 -3.5451822e+03 - -7.9718070e+01 2.3891341e+02 -3.5454334e+03 - -1.1841158e+02 2.3848199e+02 -3.5458468e+03 - -1.5576370e+02 2.3793287e+02 -3.5464149e+03 - -1.9141649e+02 2.3731562e+02 -3.5471280e+03 - -2.2507729e+02 2.3668720e+02 -3.5479740e+03 - -2.5652324e+02 2.3610826e+02 -3.5489398e+03 - -2.8560089e+02 2.3563958e+02 -3.5500112e+03 - -3.1222172e+02 2.3533911e+02 -3.5511737e+03 - -3.3635485e+02 2.3525972e+02 -3.5524128e+03 - -3.5801808e+02 2.3544764e+02 -3.5537142e+03 - -3.7726840e+02 2.3594166e+02 -3.5550644e+03 - -3.9419276e+02 2.3677284e+02 -3.5564505e+03 - -4.0889964e+02 2.3796473e+02 -3.5578605e+03 - -4.2151181e+02 2.3953388e+02 -3.5592833e+03 - -4.3216026e+02 2.4149048e+02 -3.5607088e+03 - -4.4097948e+02 2.4383917e+02 -3.5621277e+03 - -4.4810373e+02 2.4657982e+02 -3.5635315e+03 - -4.5366439e+02 2.4970828e+02 -3.5649128e+03 - -4.5778812e+02 2.5321707e+02 -3.5662645e+03 - -4.6059559e+02 2.5709600e+02 -3.5675806e+03 - -4.6220081e+02 2.6133264e+02 -3.5688555e+03 - -4.6271076e+02 2.6591282e+02 -3.5700842e+03 - -4.6222538e+02 2.7082091e+02 -3.5712622e+03 - -4.6083769e+02 2.7604015e+02 -3.5723856e+03 - -4.5863408e+02 2.8155282e+02 -3.5734508e+03 - -4.5569463e+02 2.8734045e+02 -3.5744545e+03 - -4.5209357e+02 2.9338386e+02 -3.5753940e+03 - -4.4789969e+02 2.9966330e+02 -3.5762667e+03 - -4.4317673e+02 3.0615844e+02 -3.5770703e+03 - -4.3798387e+02 3.1284842e+02 -3.5778030e+03 - -4.3237607e+02 3.1971179e+02 -3.5784628e+03 - -4.2640449e+02 3.2672653e+02 -3.5790485e+03 - -4.2011681e+02 3.3386997e+02 -3.5795585e+03 - -4.1355759e+02 3.4111873e+02 -3.5799919e+03 - -4.0676854e+02 3.4844865e+02 -3.5803477e+03 - -3.9978882e+02 3.5583468e+02 -3.5806252e+03 - -3.9265526e+02 3.6325082e+02 -3.5808238e+03 - -3.8540262e+02 3.7066997e+02 -3.5809431e+03 - -3.7806379e+02 3.7806379e+02 -3.5809829e+03 - -3.7066997e+02 3.8540262e+02 -3.5809431e+03 - -3.6325082e+02 3.9265526e+02 -3.5808238e+03 - -3.5583468e+02 3.9978882e+02 -3.5806252e+03 - -3.4844865e+02 4.0676854e+02 -3.5803477e+03 - -3.4111873e+02 4.1355759e+02 -3.5799919e+03 - -3.3386997e+02 4.2011681e+02 -3.5795585e+03 - -3.2672653e+02 4.2640449e+02 -3.5790485e+03 - -3.1971179e+02 4.3237607e+02 -3.5784628e+03 - -3.1284842e+02 4.3798387e+02 -3.5778030e+03 - -3.0615844e+02 4.4317673e+02 -3.5770703e+03 - -2.9966330e+02 4.4789969e+02 -3.5762667e+03 - -2.9338386e+02 4.5209357e+02 -3.5753940e+03 - -2.8734045e+02 4.5569463e+02 -3.5744545e+03 - -2.8155282e+02 4.5863408e+02 -3.5734508e+03 - -2.7604015e+02 4.6083769e+02 -3.5723856e+03 - -2.7082091e+02 4.6222538e+02 -3.5712622e+03 - -2.6591282e+02 4.6271076e+02 -3.5700842e+03 - -2.6133264e+02 4.6220081e+02 -3.5688555e+03 - -2.5709600e+02 4.6059559e+02 -3.5675806e+03 - -2.5321707e+02 4.5778812e+02 -3.5662645e+03 - -2.4970828e+02 4.5366439e+02 -3.5649128e+03 - -2.4657982e+02 4.4810373e+02 -3.5635315e+03 - -2.4383917e+02 4.4097948e+02 -3.5621277e+03 - -2.4149048e+02 4.3216026e+02 -3.5607088e+03 - -2.3953388e+02 4.2151181e+02 -3.5592833e+03 - -2.3796473e+02 4.0889964e+02 -3.5578605e+03 - -2.3677284e+02 3.9419276e+02 -3.5564505e+03 - -2.3594166e+02 3.7726840e+02 -3.5550644e+03 - -2.3544764e+02 3.5801808e+02 -3.5537142e+03 - -2.3525972e+02 3.3635485e+02 -3.5524128e+03 - -2.3533911e+02 3.1222172e+02 -3.5511737e+03 - -2.3563958e+02 2.8560089e+02 -3.5500112e+03 - -2.3610826e+02 2.5652324e+02 -3.5489398e+03 - -2.3668720e+02 2.2507729e+02 -3.5479740e+03 - -2.3731562e+02 1.9141649e+02 -3.5471280e+03 - -2.3793287e+02 1.5576370e+02 -3.5464149e+03 - -2.3848199e+02 1.1841158e+02 -3.5458468e+03 - -2.3891341e+02 7.9718070e+01 -3.5454334e+03 - -2.3918862e+02 4.0096384e+01 -3.5451822e+03 - -2.3928315e+02 0.0000000e+00 -3.5450980e+03 - -2.7765219e+02 0.0000000e+00 -3.5555282e+03 - -2.7755608e+02 -3.8555461e+01 -3.5556017e+03 - -2.7727554e+02 -7.6675887e+01 -3.5558212e+03 - -2.7683333e+02 -1.1394519e+02 -3.5561827e+03 - -2.7626527e+02 -1.4998329e+02 -3.5566800e+03 - -2.7561758e+02 -1.8445964e+02 -3.5573048e+03 - -2.7494346e+02 -2.1710238e+02 -3.5580471e+03 - -2.7429968e+02 -2.4770263e+02 -3.5588959e+03 - -2.7374329e+02 -2.7611442e+02 -3.5598392e+03 - -2.7332884e+02 -3.0225097e+02 -3.5608646e+03 - -2.7310623e+02 -3.2607835e+02 -3.5619596e+03 - -2.7311926e+02 -3.4760763e+02 -3.5631120e+03 - -2.7340475e+02 -3.6688636e+02 -3.5643099e+03 - -2.7399231e+02 -3.8399032e+02 -3.5655422e+03 - -2.7490442e+02 -3.9901585e+02 -3.5667982e+03 - -2.7615693e+02 -4.1207322e+02 -3.5680680e+03 - -2.7775961e+02 -4.2328100e+02 -3.5693426e+03 - -2.7971693e+02 -4.3276165e+02 -3.5706136e+03 - -2.8202874e+02 -4.4063806e+02 -3.5718733e+03 - -2.8469102e+02 -4.4703094e+02 -3.5731148e+03 - -2.8769653e+02 -4.5205707e+02 -3.5743317e+03 - -2.9103536e+02 -4.5582804e+02 -3.5755182e+03 - -2.9469546e+02 -4.5844956e+02 -3.5766693e+03 - -2.9866306e+02 -4.6002105e+02 -3.5777801e+03 - -3.0292299e+02 -4.6063554e+02 -3.5788464e+03 - -3.0745897e+02 -4.6037979e+02 -3.5798644e+03 - -3.1225382e+02 -4.5933447e+02 -3.5808308e+03 - -3.1728961e+02 -4.5757449e+02 -3.5817423e+03 - -3.2254779e+02 -4.5516932e+02 -3.5825962e+03 - -3.2800925e+02 -4.5218342e+02 -3.5833901e+03 - -3.3365438e+02 -4.4867658e+02 -3.5841218e+03 - -3.3946304e+02 -4.4470433e+02 -3.5847893e+03 - -3.4541463e+02 -4.4031829e+02 -3.5853908e+03 - -3.5148799e+02 -4.3556654e+02 -3.5859250e+03 - -3.5766140e+02 -4.3049391e+02 -3.5863904e+03 - -3.6391248e+02 -4.2514234e+02 -3.5867861e+03 - -3.7021819e+02 -4.1955108e+02 -3.5871110e+03 - -3.7655466e+02 -4.1375704e+02 -3.5873645e+03 - -3.8289714e+02 -4.0779495e+02 -3.5875459e+03 - -3.8921991e+02 -4.0169762e+02 -3.5876550e+03 - -3.9549610e+02 -3.9549610e+02 -3.5876913e+03 - -4.0169762e+02 -3.8921991e+02 -3.5876550e+03 - -4.0779495e+02 -3.8289714e+02 -3.5875459e+03 - -4.1375704e+02 -3.7655466e+02 -3.5873645e+03 - -4.1955108e+02 -3.7021819e+02 -3.5871110e+03 - -4.2514234e+02 -3.6391248e+02 -3.5867861e+03 - -4.3049391e+02 -3.5766140e+02 -3.5863904e+03 - -4.3556654e+02 -3.5148799e+02 -3.5859250e+03 - -4.4031829e+02 -3.4541463e+02 -3.5853908e+03 - -4.4470433e+02 -3.3946304e+02 -3.5847893e+03 - -4.4867658e+02 -3.3365438e+02 -3.5841218e+03 - -4.5218342e+02 -3.2800925e+02 -3.5833901e+03 - -4.5516932e+02 -3.2254779e+02 -3.5825962e+03 - -4.5757449e+02 -3.1728961e+02 -3.5817423e+03 - -4.5933447e+02 -3.1225382e+02 -3.5808308e+03 - -4.6037979e+02 -3.0745897e+02 -3.5798644e+03 - -4.6063554e+02 -3.0292299e+02 -3.5788464e+03 - -4.6002105e+02 -2.9866306e+02 -3.5777801e+03 - -4.5844956e+02 -2.9469546e+02 -3.5766693e+03 - -4.5582804e+02 -2.9103536e+02 -3.5755182e+03 - -4.5205707e+02 -2.8769653e+02 -3.5743317e+03 - -4.4703094e+02 -2.8469102e+02 -3.5731148e+03 - -4.4063806e+02 -2.8202874e+02 -3.5718733e+03 - -4.3276165e+02 -2.7971693e+02 -3.5706136e+03 - -4.2328100e+02 -2.7775961e+02 -3.5693426e+03 - -4.1207322e+02 -2.7615693e+02 -3.5680680e+03 - -3.9901585e+02 -2.7490442e+02 -3.5667982e+03 - -3.8399032e+02 -2.7399231e+02 -3.5655422e+03 - -3.6688636e+02 -2.7340475e+02 -3.5643099e+03 - -3.4760763e+02 -2.7311926e+02 -3.5631120e+03 - -3.2607835e+02 -2.7310623e+02 -3.5619596e+03 - -3.0225097e+02 -2.7332884e+02 -3.5608646e+03 - -2.7611442e+02 -2.7374329e+02 -3.5598392e+03 - -2.4770263e+02 -2.7429968e+02 -3.5588959e+03 - -2.1710238e+02 -2.7494346e+02 -3.5580471e+03 - -1.8445964e+02 -2.7561758e+02 -3.5573048e+03 - -1.4998329e+02 -2.7626527e+02 -3.5566800e+03 - -1.1394519e+02 -2.7683333e+02 -3.5561827e+03 - -7.6675887e+01 -2.7727554e+02 -3.5558212e+03 - -3.8555461e+01 -2.7755608e+02 -3.5556017e+03 - 2.4067136e-09 -2.7765219e+02 -3.5555282e+03 - 3.8555461e+01 -2.7755608e+02 -3.5556017e+03 - 7.6675887e+01 -2.7727554e+02 -3.5558212e+03 - 1.1394519e+02 -2.7683333e+02 -3.5561827e+03 - 1.4998329e+02 -2.7626527e+02 -3.5566800e+03 - 1.8445964e+02 -2.7561758e+02 -3.5573048e+03 - 2.1710238e+02 -2.7494346e+02 -3.5580471e+03 - 2.4770263e+02 -2.7429968e+02 -3.5588959e+03 - 2.7611442e+02 -2.7374329e+02 -3.5598392e+03 - 3.0225097e+02 -2.7332884e+02 -3.5608646e+03 - 3.2607835e+02 -2.7310623e+02 -3.5619596e+03 - 3.4760763e+02 -2.7311926e+02 -3.5631120e+03 - 3.6688636e+02 -2.7340475e+02 -3.5643099e+03 - 3.8399032e+02 -2.7399231e+02 -3.5655422e+03 - 3.9901585e+02 -2.7490442e+02 -3.5667982e+03 - 4.1207322e+02 -2.7615693e+02 -3.5680680e+03 - 4.2328100e+02 -2.7775961e+02 -3.5693426e+03 - 4.3276165e+02 -2.7971693e+02 -3.5706136e+03 - 4.4063806e+02 -2.8202874e+02 -3.5718733e+03 - 4.4703094e+02 -2.8469102e+02 -3.5731148e+03 - 4.5205707e+02 -2.8769653e+02 -3.5743317e+03 - 4.5582804e+02 -2.9103536e+02 -3.5755182e+03 - 4.5844956e+02 -2.9469546e+02 -3.5766693e+03 - 4.6002105e+02 -2.9866306e+02 -3.5777801e+03 - 4.6063554e+02 -3.0292299e+02 -3.5788464e+03 - 4.6037979e+02 -3.0745897e+02 -3.5798644e+03 - 4.5933447e+02 -3.1225382e+02 -3.5808308e+03 - 4.5757449e+02 -3.1728961e+02 -3.5817423e+03 - 4.5516932e+02 -3.2254779e+02 -3.5825962e+03 - 4.5218342e+02 -3.2800925e+02 -3.5833901e+03 - 4.4867658e+02 -3.3365438e+02 -3.5841218e+03 - 4.4470433e+02 -3.3946304e+02 -3.5847893e+03 - 4.4031829e+02 -3.4541463e+02 -3.5853908e+03 - 4.3556654e+02 -3.5148799e+02 -3.5859250e+03 - 4.3049391e+02 -3.5766140e+02 -3.5863904e+03 - 4.2514234e+02 -3.6391248e+02 -3.5867861e+03 - 4.1955108e+02 -3.7021819e+02 -3.5871110e+03 - 4.1375704e+02 -3.7655466e+02 -3.5873645e+03 - 4.0779495e+02 -3.8289714e+02 -3.5875459e+03 - 4.0169762e+02 -3.8921991e+02 -3.5876550e+03 - 3.9549610e+02 -3.9549610e+02 -3.5876913e+03 - 3.8921991e+02 -4.0169762e+02 -3.5876550e+03 - 3.8289714e+02 -4.0779495e+02 -3.5875459e+03 - 3.7655466e+02 -4.1375704e+02 -3.5873645e+03 - 3.7021819e+02 -4.1955108e+02 -3.5871110e+03 - 3.6391248e+02 -4.2514234e+02 -3.5867861e+03 - 3.5766140e+02 -4.3049391e+02 -3.5863904e+03 - 3.5148799e+02 -4.3556654e+02 -3.5859250e+03 - 3.4541463e+02 -4.4031829e+02 -3.5853908e+03 - 3.3946304e+02 -4.4470433e+02 -3.5847893e+03 - 3.3365438e+02 -4.4867658e+02 -3.5841218e+03 - 3.2800925e+02 -4.5218342e+02 -3.5833901e+03 - 3.2254779e+02 -4.5516932e+02 -3.5825962e+03 - 3.1728961e+02 -4.5757449e+02 -3.5817423e+03 - 3.1225382e+02 -4.5933447e+02 -3.5808308e+03 - 3.0745897e+02 -4.6037979e+02 -3.5798644e+03 - 3.0292299e+02 -4.6063554e+02 -3.5788464e+03 - 2.9866306e+02 -4.6002105e+02 -3.5777801e+03 - 2.9469546e+02 -4.5844956e+02 -3.5766693e+03 - 2.9103536e+02 -4.5582804e+02 -3.5755182e+03 - 2.8769653e+02 -4.5205707e+02 -3.5743317e+03 - 2.8469102e+02 -4.4703094e+02 -3.5731148e+03 - 2.8202874e+02 -4.4063806e+02 -3.5718733e+03 - 2.7971693e+02 -4.3276165e+02 -3.5706136e+03 - 2.7775961e+02 -4.2328100e+02 -3.5693426e+03 - 2.7615693e+02 -4.1207322e+02 -3.5680680e+03 - 2.7490442e+02 -3.9901585e+02 -3.5667982e+03 - 2.7399231e+02 -3.8399032e+02 -3.5655422e+03 - 2.7340475e+02 -3.6688636e+02 -3.5643099e+03 - 2.7311926e+02 -3.4760763e+02 -3.5631120e+03 - 2.7310623e+02 -3.2607835e+02 -3.5619596e+03 - 2.7332884e+02 -3.0225097e+02 -3.5608646e+03 - 2.7374329e+02 -2.7611442e+02 -3.5598392e+03 - 2.7429968e+02 -2.4770263e+02 -3.5588959e+03 - 2.7494346e+02 -2.1710238e+02 -3.5580471e+03 - 2.7561758e+02 -1.8445964e+02 -3.5573048e+03 - 2.7626527e+02 -1.4998329e+02 -3.5566800e+03 - 2.7683333e+02 -1.1394519e+02 -3.5561827e+03 - 2.7727554e+02 -7.6675887e+01 -3.5558212e+03 - 2.7755608e+02 -3.8555461e+01 -3.5556017e+03 - 2.7765219e+02 0.0000000e+00 -3.5555282e+03 - 2.7755608e+02 3.8555461e+01 -3.5556017e+03 - 2.7727554e+02 7.6675887e+01 -3.5558212e+03 - 2.7683333e+02 1.1394519e+02 -3.5561827e+03 - 2.7626527e+02 1.4998329e+02 -3.5566800e+03 - 2.7561758e+02 1.8445964e+02 -3.5573048e+03 - 2.7494346e+02 2.1710238e+02 -3.5580471e+03 - 2.7429968e+02 2.4770263e+02 -3.5588959e+03 - 2.7374329e+02 2.7611442e+02 -3.5598392e+03 - 2.7332884e+02 3.0225097e+02 -3.5608646e+03 - 2.7310623e+02 3.2607835e+02 -3.5619596e+03 - 2.7311926e+02 3.4760763e+02 -3.5631120e+03 - 2.7340475e+02 3.6688636e+02 -3.5643099e+03 - 2.7399231e+02 3.8399032e+02 -3.5655422e+03 - 2.7490442e+02 3.9901585e+02 -3.5667982e+03 - 2.7615693e+02 4.1207322e+02 -3.5680680e+03 - 2.7775961e+02 4.2328100e+02 -3.5693426e+03 - 2.7971693e+02 4.3276165e+02 -3.5706136e+03 - 2.8202874e+02 4.4063806e+02 -3.5718733e+03 - 2.8469102e+02 4.4703094e+02 -3.5731148e+03 - 2.8769653e+02 4.5205707e+02 -3.5743317e+03 - 2.9103536e+02 4.5582804e+02 -3.5755182e+03 - 2.9469546e+02 4.5844956e+02 -3.5766693e+03 - 2.9866306e+02 4.6002105e+02 -3.5777801e+03 - 3.0292299e+02 4.6063554e+02 -3.5788464e+03 - 3.0745897e+02 4.6037979e+02 -3.5798644e+03 - 3.1225382e+02 4.5933447e+02 -3.5808308e+03 - 3.1728961e+02 4.5757449e+02 -3.5817423e+03 - 3.2254779e+02 4.5516932e+02 -3.5825962e+03 - 3.2800925e+02 4.5218342e+02 -3.5833901e+03 - 3.3365438e+02 4.4867658e+02 -3.5841218e+03 - 3.3946304e+02 4.4470433e+02 -3.5847893e+03 - 3.4541463e+02 4.4031829e+02 -3.5853908e+03 - 3.5148799e+02 4.3556654e+02 -3.5859250e+03 - 3.5766140e+02 4.3049391e+02 -3.5863904e+03 - 3.6391248e+02 4.2514234e+02 -3.5867861e+03 - 3.7021819e+02 4.1955108e+02 -3.5871110e+03 - 3.7655466e+02 4.1375704e+02 -3.5873645e+03 - 3.8289714e+02 4.0779495e+02 -3.5875459e+03 - 3.8921991e+02 4.0169762e+02 -3.5876550e+03 - 3.9549610e+02 3.9549610e+02 -3.5876913e+03 - 4.0169762e+02 3.8921991e+02 -3.5876550e+03 - 4.0779495e+02 3.8289714e+02 -3.5875459e+03 - 4.1375704e+02 3.7655466e+02 -3.5873645e+03 - 4.1955108e+02 3.7021819e+02 -3.5871110e+03 - 4.2514234e+02 3.6391248e+02 -3.5867861e+03 - 4.3049391e+02 3.5766140e+02 -3.5863904e+03 - 4.3556654e+02 3.5148799e+02 -3.5859250e+03 - 4.4031829e+02 3.4541463e+02 -3.5853908e+03 - 4.4470433e+02 3.3946304e+02 -3.5847893e+03 - 4.4867658e+02 3.3365438e+02 -3.5841218e+03 - 4.5218342e+02 3.2800925e+02 -3.5833901e+03 - 4.5516932e+02 3.2254779e+02 -3.5825962e+03 - 4.5757449e+02 3.1728961e+02 -3.5817423e+03 - 4.5933447e+02 3.1225382e+02 -3.5808308e+03 - 4.6037979e+02 3.0745897e+02 -3.5798644e+03 - 4.6063554e+02 3.0292299e+02 -3.5788464e+03 - 4.6002105e+02 2.9866306e+02 -3.5777801e+03 - 4.5844956e+02 2.9469546e+02 -3.5766693e+03 - 4.5582804e+02 2.9103536e+02 -3.5755182e+03 - 4.5205707e+02 2.8769653e+02 -3.5743317e+03 - 4.4703094e+02 2.8469102e+02 -3.5731148e+03 - 4.4063806e+02 2.8202874e+02 -3.5718733e+03 - 4.3276165e+02 2.7971693e+02 -3.5706136e+03 - 4.2328100e+02 2.7775961e+02 -3.5693426e+03 - 4.1207322e+02 2.7615693e+02 -3.5680680e+03 - 3.9901585e+02 2.7490442e+02 -3.5667982e+03 - 3.8399032e+02 2.7399231e+02 -3.5655422e+03 - 3.6688636e+02 2.7340475e+02 -3.5643099e+03 - 3.4760763e+02 2.7311926e+02 -3.5631120e+03 - 3.2607835e+02 2.7310623e+02 -3.5619596e+03 - 3.0225097e+02 2.7332884e+02 -3.5608646e+03 - 2.7611442e+02 2.7374329e+02 -3.5598392e+03 - 2.4770263e+02 2.7429968e+02 -3.5588959e+03 - 2.1710238e+02 2.7494346e+02 -3.5580471e+03 - 1.8445964e+02 2.7561758e+02 -3.5573048e+03 - 1.4998329e+02 2.7626527e+02 -3.5566800e+03 - 1.1394519e+02 2.7683333e+02 -3.5561827e+03 - 7.6675887e+01 2.7727554e+02 -3.5558212e+03 - 3.8555461e+01 2.7755608e+02 -3.5556017e+03 - -2.4067136e-09 2.7765219e+02 -3.5555282e+03 - -3.8555461e+01 2.7755608e+02 -3.5556017e+03 - -7.6675887e+01 2.7727554e+02 -3.5558212e+03 - -1.1394519e+02 2.7683333e+02 -3.5561827e+03 - -1.4998329e+02 2.7626527e+02 -3.5566800e+03 - -1.8445964e+02 2.7561758e+02 -3.5573048e+03 - -2.1710238e+02 2.7494346e+02 -3.5580471e+03 - -2.4770263e+02 2.7429968e+02 -3.5588959e+03 - -2.7611442e+02 2.7374329e+02 -3.5598392e+03 - -3.0225097e+02 2.7332884e+02 -3.5608646e+03 - -3.2607835e+02 2.7310623e+02 -3.5619596e+03 - -3.4760763e+02 2.7311926e+02 -3.5631120e+03 - -3.6688636e+02 2.7340475e+02 -3.5643099e+03 - -3.8399032e+02 2.7399231e+02 -3.5655422e+03 - -3.9901585e+02 2.7490442e+02 -3.5667982e+03 - -4.1207322e+02 2.7615693e+02 -3.5680680e+03 - -4.2328100e+02 2.7775961e+02 -3.5693426e+03 - -4.3276165e+02 2.7971693e+02 -3.5706136e+03 - -4.4063806e+02 2.8202874e+02 -3.5718733e+03 - -4.4703094e+02 2.8469102e+02 -3.5731148e+03 - -4.5205707e+02 2.8769653e+02 -3.5743317e+03 - -4.5582804e+02 2.9103536e+02 -3.5755182e+03 - -4.5844956e+02 2.9469546e+02 -3.5766693e+03 - -4.6002105e+02 2.9866306e+02 -3.5777801e+03 - -4.6063554e+02 3.0292299e+02 -3.5788464e+03 - -4.6037979e+02 3.0745897e+02 -3.5798644e+03 - -4.5933447e+02 3.1225382e+02 -3.5808308e+03 - -4.5757449e+02 3.1728961e+02 -3.5817423e+03 - -4.5516932e+02 3.2254779e+02 -3.5825962e+03 - -4.5218342e+02 3.2800925e+02 -3.5833901e+03 - -4.4867658e+02 3.3365438e+02 -3.5841218e+03 - -4.4470433e+02 3.3946304e+02 -3.5847893e+03 - -4.4031829e+02 3.4541463e+02 -3.5853908e+03 - -4.3556654e+02 3.5148799e+02 -3.5859250e+03 - -4.3049391e+02 3.5766140e+02 -3.5863904e+03 - -4.2514234e+02 3.6391248e+02 -3.5867861e+03 - -4.1955108e+02 3.7021819e+02 -3.5871110e+03 - -4.1375704e+02 3.7655466e+02 -3.5873645e+03 - -4.0779495e+02 3.8289714e+02 -3.5875459e+03 - -4.0169762e+02 3.8921991e+02 -3.5876550e+03 - -3.9549610e+02 3.9549610e+02 -3.5876913e+03 - -3.8921991e+02 4.0169762e+02 -3.5876550e+03 - -3.8289714e+02 4.0779495e+02 -3.5875459e+03 - -3.7655466e+02 4.1375704e+02 -3.5873645e+03 - -3.7021819e+02 4.1955108e+02 -3.5871110e+03 - -3.6391248e+02 4.2514234e+02 -3.5867861e+03 - -3.5766140e+02 4.3049391e+02 -3.5863904e+03 - -3.5148799e+02 4.3556654e+02 -3.5859250e+03 - -3.4541463e+02 4.4031829e+02 -3.5853908e+03 - -3.3946304e+02 4.4470433e+02 -3.5847893e+03 - -3.3365438e+02 4.4867658e+02 -3.5841218e+03 - -3.2800925e+02 4.5218342e+02 -3.5833901e+03 - -3.2254779e+02 4.5516932e+02 -3.5825962e+03 - -3.1728961e+02 4.5757449e+02 -3.5817423e+03 - -3.1225382e+02 4.5933447e+02 -3.5808308e+03 - -3.0745897e+02 4.6037979e+02 -3.5798644e+03 - -3.0292299e+02 4.6063554e+02 -3.5788464e+03 - -2.9866306e+02 4.6002105e+02 -3.5777801e+03 - -2.9469546e+02 4.5844956e+02 -3.5766693e+03 - -2.9103536e+02 4.5582804e+02 -3.5755182e+03 - -2.8769653e+02 4.5205707e+02 -3.5743317e+03 - -2.8469102e+02 4.4703094e+02 -3.5731148e+03 - -2.8202874e+02 4.4063806e+02 -3.5718733e+03 - -2.7971693e+02 4.3276165e+02 -3.5706136e+03 - -2.7775961e+02 4.2328100e+02 -3.5693426e+03 - -2.7615693e+02 4.1207322e+02 -3.5680680e+03 - -2.7490442e+02 3.9901585e+02 -3.5667982e+03 - -2.7399231e+02 3.8399032e+02 -3.5655422e+03 - -2.7340475e+02 3.6688636e+02 -3.5643099e+03 - -2.7311926e+02 3.4760763e+02 -3.5631120e+03 - -2.7310623e+02 3.2607835e+02 -3.5619596e+03 - -2.7332884e+02 3.0225097e+02 -3.5608646e+03 - -2.7374329e+02 2.7611442e+02 -3.5598392e+03 - -2.7429968e+02 2.4770263e+02 -3.5588959e+03 - -2.7494346e+02 2.1710238e+02 -3.5580471e+03 - -2.7561758e+02 1.8445964e+02 -3.5573048e+03 - -2.7626527e+02 1.4998329e+02 -3.5566800e+03 - -2.7683333e+02 1.1394519e+02 -3.5561827e+03 - -2.7727554e+02 7.6675887e+01 -3.5558212e+03 - -2.7755608e+02 3.8555461e+01 -3.5556017e+03 - -2.7765219e+02 0.0000000e+00 -3.5555282e+03 - -3.0772139e+02 0.0000000e+00 -3.5630752e+03 - -3.0762533e+02 -3.6826779e+01 -3.5631388e+03 - -3.0734431e+02 -7.3256605e+01 -3.5633287e+03 - -3.0689936e+02 -1.0890940e+02 -3.5636416e+03 - -3.0632361e+02 -1.4343720e+02 -3.5640724e+03 - -3.0565983e+02 -1.7653630e+02 -3.5646143e+03 - -3.0495737e+02 -2.0795556e+02 -3.5652589e+03 - -3.0426898e+02 -2.3750047e+02 -3.5659971e+03 - -3.0364780e+02 -2.6503334e+02 -3.5668186e+03 - -3.0314478e+02 -2.9047015e+02 -3.5677132e+03 - -3.0280663e+02 -3.1377513e+02 -3.5686702e+03 - -3.0267447e+02 -3.3495381e+02 -3.5696791e+03 - -3.0278295e+02 -3.5404550e+02 -3.5707299e+03 - -3.0315999e+02 -3.7111589e+02 -3.5718127e+03 - -3.0382687e+02 -3.8625012e+02 -3.5729183e+03 - -3.0479856e+02 -3.9954669e+02 -3.5740381e+03 - -3.0608435e+02 -4.1111238e+02 -3.5751640e+03 - -3.0768843e+02 -4.2105810e+02 -3.5762885e+03 - -3.0961062e+02 -4.2949567e+02 -3.5774048e+03 - -3.1184702e+02 -4.3653534e+02 -3.5785067e+03 - -3.1439063e+02 -4.4228414e+02 -3.5795882e+03 - -3.1723192e+02 -4.4684462e+02 -3.5806443e+03 - -3.2035925e+02 -4.5031415e+02 -3.5816700e+03 - -3.2375934e+02 -4.5278450e+02 -3.5826611e+03 - -3.2741758e+02 -4.5434174e+02 -3.5836136e+03 - -3.3131828e+02 -4.5506620e+02 -3.5845239e+03 - -3.3544490e+02 -4.5503272e+02 -3.5853889e+03 - -3.3978019e+02 -4.5431086e+02 -3.5862055e+03 - -3.4430632e+02 -4.5296521e+02 -3.5869712e+03 - -3.4900496e+02 -4.5105573e+02 -3.5876836e+03 - -3.5385730e+02 -4.4863812e+02 -3.5883406e+03 - -3.5884410e+02 -4.4576410e+02 -3.5889404e+03 - -3.6394567e+02 -4.4248181e+02 -3.5894812e+03 - -3.6914184e+02 -4.3883612e+02 -3.5899617e+03 - -3.7441196e+02 -4.3486888e+02 -3.5903805e+03 - -3.7973478e+02 -4.3061925e+02 -3.5907367e+03 - -3.8508844e+02 -4.2612395e+02 -3.5910293e+03 - -3.9045038e+02 -4.2141748e+02 -3.5912576e+03 - -3.9579723e+02 -4.1653237e+02 -3.5914211e+03 - -4.0110472e+02 -4.1149936e+02 -3.5915194e+03 - -4.0634757e+02 -4.0634757e+02 -3.5915521e+03 - -4.1149936e+02 -4.0110472e+02 -3.5915194e+03 - -4.1653237e+02 -3.9579723e+02 -3.5914211e+03 - -4.2141748e+02 -3.9045038e+02 -3.5912576e+03 - -4.2612395e+02 -3.8508844e+02 -3.5910293e+03 - -4.3061925e+02 -3.7973478e+02 -3.5907367e+03 - -4.3486888e+02 -3.7441196e+02 -3.5903805e+03 - -4.3883612e+02 -3.6914184e+02 -3.5899617e+03 - -4.4248181e+02 -3.6394567e+02 -3.5894812e+03 - -4.4576410e+02 -3.5884410e+02 -3.5889404e+03 - -4.4863812e+02 -3.5385730e+02 -3.5883406e+03 - -4.5105573e+02 -3.4900496e+02 -3.5876836e+03 - -4.5296521e+02 -3.4430632e+02 -3.5869712e+03 - -4.5431086e+02 -3.3978019e+02 -3.5862055e+03 - -4.5503272e+02 -3.3544490e+02 -3.5853889e+03 - -4.5506620e+02 -3.3131828e+02 -3.5845239e+03 - -4.5434174e+02 -3.2741758e+02 -3.5836136e+03 - -4.5278450e+02 -3.2375934e+02 -3.5826611e+03 - -4.5031415e+02 -3.2035925e+02 -3.5816700e+03 - -4.4684462e+02 -3.1723192e+02 -3.5806443e+03 - -4.4228414e+02 -3.1439063e+02 -3.5795882e+03 - -4.3653534e+02 -3.1184702e+02 -3.5785067e+03 - -4.2949567e+02 -3.0961062e+02 -3.5774048e+03 - -4.2105810e+02 -3.0768843e+02 -3.5762885e+03 - -4.1111238e+02 -3.0608435e+02 -3.5751640e+03 - -3.9954669e+02 -3.0479856e+02 -3.5740381e+03 - -3.8625012e+02 -3.0382687e+02 -3.5729183e+03 - -3.7111589e+02 -3.0315999e+02 -3.5718127e+03 - -3.5404550e+02 -3.0278295e+02 -3.5707299e+03 - -3.3495381e+02 -3.0267447e+02 -3.5696791e+03 - -3.1377513e+02 -3.0280663e+02 -3.5686702e+03 - -2.9047015e+02 -3.0314478e+02 -3.5677132e+03 - -2.6503334e+02 -3.0364780e+02 -3.5668186e+03 - -2.3750047e+02 -3.0426898e+02 -3.5659971e+03 - -2.0795556e+02 -3.0495737e+02 -3.5652589e+03 - -1.7653630e+02 -3.0565983e+02 -3.5646143e+03 - -1.4343720e+02 -3.0632361e+02 -3.5640724e+03 - -1.0890940e+02 -3.0689936e+02 -3.5636416e+03 - -7.3256605e+01 -3.0734431e+02 -3.5633287e+03 - -3.6826779e+01 -3.0762533e+02 -3.5631388e+03 - -2.4067136e-09 -3.0772139e+02 -3.5630752e+03 - 3.6826779e+01 -3.0762533e+02 -3.5631388e+03 - 7.3256605e+01 -3.0734431e+02 -3.5633287e+03 - 1.0890940e+02 -3.0689936e+02 -3.5636416e+03 - 1.4343720e+02 -3.0632361e+02 -3.5640724e+03 - 1.7653630e+02 -3.0565983e+02 -3.5646143e+03 - 2.0795556e+02 -3.0495737e+02 -3.5652589e+03 - 2.3750047e+02 -3.0426898e+02 -3.5659971e+03 - 2.6503334e+02 -3.0364780e+02 -3.5668186e+03 - 2.9047015e+02 -3.0314478e+02 -3.5677132e+03 - 3.1377513e+02 -3.0280663e+02 -3.5686702e+03 - 3.3495381e+02 -3.0267447e+02 -3.5696791e+03 - 3.5404550e+02 -3.0278295e+02 -3.5707299e+03 - 3.7111589e+02 -3.0315999e+02 -3.5718127e+03 - 3.8625012e+02 -3.0382687e+02 -3.5729183e+03 - 3.9954669e+02 -3.0479856e+02 -3.5740381e+03 - 4.1111238e+02 -3.0608435e+02 -3.5751640e+03 - 4.2105810e+02 -3.0768843e+02 -3.5762885e+03 - 4.2949567e+02 -3.0961062e+02 -3.5774048e+03 - 4.3653534e+02 -3.1184702e+02 -3.5785067e+03 - 4.4228414e+02 -3.1439063e+02 -3.5795882e+03 - 4.4684462e+02 -3.1723192e+02 -3.5806443e+03 - 4.5031415e+02 -3.2035925e+02 -3.5816700e+03 - 4.5278450e+02 -3.2375934e+02 -3.5826611e+03 - 4.5434174e+02 -3.2741758e+02 -3.5836136e+03 - 4.5506620e+02 -3.3131828e+02 -3.5845239e+03 - 4.5503272e+02 -3.3544490e+02 -3.5853889e+03 - 4.5431086e+02 -3.3978019e+02 -3.5862055e+03 - 4.5296521e+02 -3.4430632e+02 -3.5869712e+03 - 4.5105573e+02 -3.4900496e+02 -3.5876836e+03 - 4.4863812e+02 -3.5385730e+02 -3.5883406e+03 - 4.4576410e+02 -3.5884410e+02 -3.5889404e+03 - 4.4248181e+02 -3.6394567e+02 -3.5894812e+03 - 4.3883612e+02 -3.6914184e+02 -3.5899617e+03 - 4.3486888e+02 -3.7441196e+02 -3.5903805e+03 - 4.3061925e+02 -3.7973478e+02 -3.5907367e+03 - 4.2612395e+02 -3.8508844e+02 -3.5910293e+03 - 4.2141748e+02 -3.9045038e+02 -3.5912576e+03 - 4.1653237e+02 -3.9579723e+02 -3.5914211e+03 - 4.1149936e+02 -4.0110472e+02 -3.5915194e+03 - 4.0634757e+02 -4.0634757e+02 -3.5915521e+03 - 4.0110472e+02 -4.1149936e+02 -3.5915194e+03 - 3.9579723e+02 -4.1653237e+02 -3.5914211e+03 - 3.9045038e+02 -4.2141748e+02 -3.5912576e+03 - 3.8508844e+02 -4.2612395e+02 -3.5910293e+03 - 3.7973478e+02 -4.3061925e+02 -3.5907367e+03 - 3.7441196e+02 -4.3486888e+02 -3.5903805e+03 - 3.6914184e+02 -4.3883612e+02 -3.5899617e+03 - 3.6394567e+02 -4.4248181e+02 -3.5894812e+03 - 3.5884410e+02 -4.4576410e+02 -3.5889404e+03 - 3.5385730e+02 -4.4863812e+02 -3.5883406e+03 - 3.4900496e+02 -4.5105573e+02 -3.5876836e+03 - 3.4430632e+02 -4.5296521e+02 -3.5869712e+03 - 3.3978019e+02 -4.5431086e+02 -3.5862055e+03 - 3.3544490e+02 -4.5503272e+02 -3.5853889e+03 - 3.3131828e+02 -4.5506620e+02 -3.5845239e+03 - 3.2741758e+02 -4.5434174e+02 -3.5836136e+03 - 3.2375934e+02 -4.5278450e+02 -3.5826611e+03 - 3.2035925e+02 -4.5031415e+02 -3.5816700e+03 - 3.1723192e+02 -4.4684462e+02 -3.5806443e+03 - 3.1439063e+02 -4.4228414e+02 -3.5795882e+03 - 3.1184702e+02 -4.3653534e+02 -3.5785067e+03 - 3.0961062e+02 -4.2949567e+02 -3.5774048e+03 - 3.0768843e+02 -4.2105810e+02 -3.5762885e+03 - 3.0608435e+02 -4.1111238e+02 -3.5751640e+03 - 3.0479856e+02 -3.9954669e+02 -3.5740381e+03 - 3.0382687e+02 -3.8625012e+02 -3.5729183e+03 - 3.0315999e+02 -3.7111589e+02 -3.5718127e+03 - 3.0278295e+02 -3.5404550e+02 -3.5707299e+03 - 3.0267447e+02 -3.3495381e+02 -3.5696791e+03 - 3.0280663e+02 -3.1377513e+02 -3.5686702e+03 - 3.0314478e+02 -2.9047015e+02 -3.5677132e+03 - 3.0364780e+02 -2.6503334e+02 -3.5668186e+03 - 3.0426898e+02 -2.3750047e+02 -3.5659971e+03 - 3.0495737e+02 -2.0795556e+02 -3.5652589e+03 - 3.0565983e+02 -1.7653630e+02 -3.5646143e+03 - 3.0632361e+02 -1.4343720e+02 -3.5640724e+03 - 3.0689936e+02 -1.0890940e+02 -3.5636416e+03 - 3.0734431e+02 -7.3256605e+01 -3.5633287e+03 - 3.0762533e+02 -3.6826779e+01 -3.5631388e+03 - 3.0772139e+02 2.4067136e-09 -3.5630752e+03 - 3.0762533e+02 3.6826779e+01 -3.5631388e+03 - 3.0734431e+02 7.3256605e+01 -3.5633287e+03 - 3.0689936e+02 1.0890940e+02 -3.5636416e+03 - 3.0632361e+02 1.4343720e+02 -3.5640724e+03 - 3.0565983e+02 1.7653630e+02 -3.5646143e+03 - 3.0495737e+02 2.0795556e+02 -3.5652589e+03 - 3.0426898e+02 2.3750047e+02 -3.5659971e+03 - 3.0364780e+02 2.6503334e+02 -3.5668186e+03 - 3.0314478e+02 2.9047015e+02 -3.5677132e+03 - 3.0280663e+02 3.1377513e+02 -3.5686702e+03 - 3.0267447e+02 3.3495381e+02 -3.5696791e+03 - 3.0278295e+02 3.5404550e+02 -3.5707299e+03 - 3.0315999e+02 3.7111589e+02 -3.5718127e+03 - 3.0382687e+02 3.8625012e+02 -3.5729183e+03 - 3.0479856e+02 3.9954669e+02 -3.5740381e+03 - 3.0608435e+02 4.1111238e+02 -3.5751640e+03 - 3.0768843e+02 4.2105810e+02 -3.5762885e+03 - 3.0961062e+02 4.2949567e+02 -3.5774048e+03 - 3.1184702e+02 4.3653534e+02 -3.5785067e+03 - 3.1439063e+02 4.4228414e+02 -3.5795882e+03 - 3.1723192e+02 4.4684462e+02 -3.5806443e+03 - 3.2035925e+02 4.5031415e+02 -3.5816700e+03 - 3.2375934e+02 4.5278450e+02 -3.5826611e+03 - 3.2741758e+02 4.5434174e+02 -3.5836136e+03 - 3.3131828e+02 4.5506620e+02 -3.5845239e+03 - 3.3544490e+02 4.5503272e+02 -3.5853889e+03 - 3.3978019e+02 4.5431086e+02 -3.5862055e+03 - 3.4430632e+02 4.5296521e+02 -3.5869712e+03 - 3.4900496e+02 4.5105573e+02 -3.5876836e+03 - 3.5385730e+02 4.4863812e+02 -3.5883406e+03 - 3.5884410e+02 4.4576410e+02 -3.5889404e+03 - 3.6394567e+02 4.4248181e+02 -3.5894812e+03 - 3.6914184e+02 4.3883612e+02 -3.5899617e+03 - 3.7441196e+02 4.3486888e+02 -3.5903805e+03 - 3.7973478e+02 4.3061925e+02 -3.5907367e+03 - 3.8508844e+02 4.2612395e+02 -3.5910293e+03 - 3.9045038e+02 4.2141748e+02 -3.5912576e+03 - 3.9579723e+02 4.1653237e+02 -3.5914211e+03 - 4.0110472e+02 4.1149936e+02 -3.5915194e+03 - 4.0634757e+02 4.0634757e+02 -3.5915521e+03 - 4.1149936e+02 4.0110472e+02 -3.5915194e+03 - 4.1653237e+02 3.9579723e+02 -3.5914211e+03 - 4.2141748e+02 3.9045038e+02 -3.5912576e+03 - 4.2612395e+02 3.8508844e+02 -3.5910293e+03 - 4.3061925e+02 3.7973478e+02 -3.5907367e+03 - 4.3486888e+02 3.7441196e+02 -3.5903805e+03 - 4.3883612e+02 3.6914184e+02 -3.5899617e+03 - 4.4248181e+02 3.6394567e+02 -3.5894812e+03 - 4.4576410e+02 3.5884410e+02 -3.5889404e+03 - 4.4863812e+02 3.5385730e+02 -3.5883406e+03 - 4.5105573e+02 3.4900496e+02 -3.5876836e+03 - 4.5296521e+02 3.4430632e+02 -3.5869712e+03 - 4.5431086e+02 3.3978019e+02 -3.5862055e+03 - 4.5503272e+02 3.3544490e+02 -3.5853889e+03 - 4.5506620e+02 3.3131828e+02 -3.5845239e+03 - 4.5434174e+02 3.2741758e+02 -3.5836136e+03 - 4.5278450e+02 3.2375934e+02 -3.5826611e+03 - 4.5031415e+02 3.2035925e+02 -3.5816700e+03 - 4.4684462e+02 3.1723192e+02 -3.5806443e+03 - 4.4228414e+02 3.1439063e+02 -3.5795882e+03 - 4.3653534e+02 3.1184702e+02 -3.5785067e+03 - 4.2949567e+02 3.0961062e+02 -3.5774048e+03 - 4.2105810e+02 3.0768843e+02 -3.5762885e+03 - 4.1111238e+02 3.0608435e+02 -3.5751640e+03 - 3.9954669e+02 3.0479856e+02 -3.5740381e+03 - 3.8625012e+02 3.0382687e+02 -3.5729183e+03 - 3.7111589e+02 3.0315999e+02 -3.5718127e+03 - 3.5404550e+02 3.0278295e+02 -3.5707299e+03 - 3.3495381e+02 3.0267447e+02 -3.5696791e+03 - 3.1377513e+02 3.0280663e+02 -3.5686702e+03 - 2.9047015e+02 3.0314478e+02 -3.5677132e+03 - 2.6503334e+02 3.0364780e+02 -3.5668186e+03 - 2.3750047e+02 3.0426898e+02 -3.5659971e+03 - 2.0795556e+02 3.0495737e+02 -3.5652589e+03 - 1.7653630e+02 3.0565983e+02 -3.5646143e+03 - 1.4343720e+02 3.0632361e+02 -3.5640724e+03 - 1.0890940e+02 3.0689936e+02 -3.5636416e+03 - 7.3256605e+01 3.0734431e+02 -3.5633287e+03 - 3.6826779e+01 3.0762533e+02 -3.5631388e+03 - -2.4067136e-09 3.0772139e+02 -3.5630752e+03 - -3.6826779e+01 3.0762533e+02 -3.5631388e+03 - -7.3256605e+01 3.0734431e+02 -3.5633287e+03 - -1.0890940e+02 3.0689936e+02 -3.5636416e+03 - -1.4343720e+02 3.0632361e+02 -3.5640724e+03 - -1.7653630e+02 3.0565983e+02 -3.5646143e+03 - -2.0795556e+02 3.0495737e+02 -3.5652589e+03 - -2.3750047e+02 3.0426898e+02 -3.5659971e+03 - -2.6503334e+02 3.0364780e+02 -3.5668186e+03 - -2.9047015e+02 3.0314478e+02 -3.5677132e+03 - -3.1377513e+02 3.0280663e+02 -3.5686702e+03 - -3.3495381e+02 3.0267447e+02 -3.5696791e+03 - -3.5404550e+02 3.0278295e+02 -3.5707299e+03 - -3.7111589e+02 3.0315999e+02 -3.5718127e+03 - -3.8625012e+02 3.0382687e+02 -3.5729183e+03 - -3.9954669e+02 3.0479856e+02 -3.5740381e+03 - -4.1111238e+02 3.0608435e+02 -3.5751640e+03 - -4.2105810e+02 3.0768843e+02 -3.5762885e+03 - -4.2949567e+02 3.0961062e+02 -3.5774048e+03 - -4.3653534e+02 3.1184702e+02 -3.5785067e+03 - -4.4228414e+02 3.1439063e+02 -3.5795882e+03 - -4.4684462e+02 3.1723192e+02 -3.5806443e+03 - -4.5031415e+02 3.2035925e+02 -3.5816700e+03 - -4.5278450e+02 3.2375934e+02 -3.5826611e+03 - -4.5434174e+02 3.2741758e+02 -3.5836136e+03 - -4.5506620e+02 3.3131828e+02 -3.5845239e+03 - -4.5503272e+02 3.3544490e+02 -3.5853889e+03 - -4.5431086e+02 3.3978019e+02 -3.5862055e+03 - -4.5296521e+02 3.4430632e+02 -3.5869712e+03 - -4.5105573e+02 3.4900496e+02 -3.5876836e+03 - -4.4863812e+02 3.5385730e+02 -3.5883406e+03 - -4.4576410e+02 3.5884410e+02 -3.5889404e+03 - -4.4248181e+02 3.6394567e+02 -3.5894812e+03 - -4.3883612e+02 3.6914184e+02 -3.5899617e+03 - -4.3486888e+02 3.7441196e+02 -3.5903805e+03 - -4.3061925e+02 3.7973478e+02 -3.5907367e+03 - -4.2612395e+02 3.8508844e+02 -3.5910293e+03 - -4.2141748e+02 3.9045038e+02 -3.5912576e+03 - -4.1653237e+02 3.9579723e+02 -3.5914211e+03 - -4.1149936e+02 4.0110472e+02 -3.5915194e+03 - -4.0634757e+02 4.0634757e+02 -3.5915521e+03 - -4.0110472e+02 4.1149936e+02 -3.5915194e+03 - -3.9579723e+02 4.1653237e+02 -3.5914211e+03 - -3.9045038e+02 4.2141748e+02 -3.5912576e+03 - -3.8508844e+02 4.2612395e+02 -3.5910293e+03 - -3.7973478e+02 4.3061925e+02 -3.5907367e+03 - -3.7441196e+02 4.3486888e+02 -3.5903805e+03 - -3.6914184e+02 4.3883612e+02 -3.5899617e+03 - -3.6394567e+02 4.4248181e+02 -3.5894812e+03 - -3.5884410e+02 4.4576410e+02 -3.5889404e+03 - -3.5385730e+02 4.4863812e+02 -3.5883406e+03 - -3.4900496e+02 4.5105573e+02 -3.5876836e+03 - -3.4430632e+02 4.5296521e+02 -3.5869712e+03 - -3.3978019e+02 4.5431086e+02 -3.5862055e+03 - -3.3544490e+02 4.5503272e+02 -3.5853889e+03 - -3.3131828e+02 4.5506620e+02 -3.5845239e+03 - -3.2741758e+02 4.5434174e+02 -3.5836136e+03 - -3.2375934e+02 4.5278450e+02 -3.5826611e+03 - -3.2035925e+02 4.5031415e+02 -3.5816700e+03 - -3.1723192e+02 4.4684462e+02 -3.5806443e+03 - -3.1439063e+02 4.4228414e+02 -3.5795882e+03 - -3.1184702e+02 4.3653534e+02 -3.5785067e+03 - -3.0961062e+02 4.2949567e+02 -3.5774048e+03 - -3.0768843e+02 4.2105810e+02 -3.5762885e+03 - -3.0608435e+02 4.1111238e+02 -3.5751640e+03 - -3.0479856e+02 3.9954669e+02 -3.5740381e+03 - -3.0382687e+02 3.8625012e+02 -3.5729183e+03 - -3.0315999e+02 3.7111589e+02 -3.5718127e+03 - -3.0278295e+02 3.5404550e+02 -3.5707299e+03 - -3.0267447e+02 3.3495381e+02 -3.5696791e+03 - -3.0280663e+02 3.1377513e+02 -3.5686702e+03 - -3.0314478e+02 2.9047015e+02 -3.5677132e+03 - -3.0364780e+02 2.6503334e+02 -3.5668186e+03 - -3.0426898e+02 2.3750047e+02 -3.5659971e+03 - -3.0495737e+02 2.0795556e+02 -3.5652589e+03 - -3.0565983e+02 1.7653630e+02 -3.5646143e+03 - -3.0632361e+02 1.4343720e+02 -3.5640724e+03 - -3.0689936e+02 1.0890940e+02 -3.5636416e+03 - -3.0734431e+02 7.3256605e+01 -3.5633287e+03 - -3.0762533e+02 3.6826779e+01 -3.5631388e+03 - -3.0772139e+02 -2.4067136e-09 -3.5630752e+03 - -3.2906544e+02 -7.2201409e-09 -3.5679938e+03 - -3.2897102e+02 -3.4896928e+01 -3.5680482e+03 - -3.2869436e+02 -6.9433641e+01 -3.5682105e+03 - -3.2825470e+02 -1.0326490e+02 -3.5684781e+03 - -3.2768246e+02 -1.3607398e+02 -3.5688467e+03 - -3.2701692e+02 -1.6758356e+02 -3.5693108e+03 - -3.2630347e+02 -1.9756319e+02 -3.5698635e+03 - -3.2559074e+02 -2.2583311e+02 -3.5704973e+03 - -3.2492779e+02 -2.5226458e+02 -3.5712036e+03 - -3.2436179e+02 -2.7677731e+02 -3.5719739e+03 - -3.2393607e+02 -2.9933473e+02 -3.5727993e+03 - -3.2368884e+02 -3.1993798e+02 -3.5736708e+03 - -3.2365239e+02 -3.3861920e+02 -3.5745800e+03 - -3.2385277e+02 -3.5543499e+02 -3.5755185e+03 - -3.2430987e+02 -3.7046012e+02 -3.5764783e+03 - -3.2503769e+02 -3.8378210e+02 -3.5774519e+03 - -3.2604490e+02 -3.9549648e+02 -3.5784323e+03 - -3.2733536e+02 -4.0570307e+02 -3.5794131e+03 - -3.2890883e+02 -4.1450291e+02 -3.5803881e+03 - -3.3076152e+02 -4.2199605e+02 -3.5813517e+03 - -3.3288672e+02 -4.2827985e+02 -3.5822989e+03 - -3.3527528e+02 -4.3344788e+02 -3.5832248e+03 - -3.3791607e+02 -4.3758917e+02 -3.5841253e+03 - -3.4079638e+02 -4.4078781e+02 -3.5849963e+03 - -3.4390224e+02 -4.4312277e+02 -3.5858343e+03 - -3.4721866e+02 -4.4466788e+02 -3.5866359e+03 - -3.5072985e+02 -4.4549202e+02 -3.5873983e+03 - -3.5441934e+02 -4.4565926e+02 -3.5881186e+03 - -3.5827017e+02 -4.4522917e+02 -3.5887946e+03 - -3.6226487e+02 -4.4425707e+02 -3.5894240e+03 - -3.6638559e+02 -4.4279441e+02 -3.5900048e+03 - -3.7061407e+02 -4.4088900e+02 -3.5905352e+03 - -3.7493166e+02 -4.3858536e+02 -3.5910139e+03 - -3.7931931e+02 -4.3592498e+02 -3.5914393e+03 - -3.8375751e+02 -4.3294663e+02 -3.5918103e+03 - -3.8822627e+02 -4.2968658e+02 -3.5921259e+03 - -3.9270505e+02 -4.2617887e+02 -3.5923852e+03 - -3.9717266e+02 -4.2245552e+02 -3.5925876e+03 - -4.0160723e+02 -4.1854671e+02 -3.5927325e+03 - -4.0598605e+02 -4.1448101e+02 -3.5928197e+03 - -4.1028553e+02 -4.1028553e+02 -3.5928487e+03 - -4.1448101e+02 -4.0598605e+02 -3.5928197e+03 - -4.1854671e+02 -4.0160723e+02 -3.5927325e+03 - -4.2245552e+02 -3.9717266e+02 -3.5925876e+03 - -4.2617887e+02 -3.9270505e+02 -3.5923852e+03 - -4.2968658e+02 -3.8822627e+02 -3.5921259e+03 - -4.3294663e+02 -3.8375751e+02 -3.5918103e+03 - -4.3592498e+02 -3.7931931e+02 -3.5914393e+03 - -4.3858536e+02 -3.7493166e+02 -3.5910139e+03 - -4.4088900e+02 -3.7061407e+02 -3.5905352e+03 - -4.4279441e+02 -3.6638559e+02 -3.5900048e+03 - -4.4425707e+02 -3.6226487e+02 -3.5894240e+03 - -4.4522917e+02 -3.5827017e+02 -3.5887946e+03 - -4.4565926e+02 -3.5441934e+02 -3.5881186e+03 - -4.4549202e+02 -3.5072985e+02 -3.5873983e+03 - -4.4466788e+02 -3.4721866e+02 -3.5866359e+03 - -4.4312277e+02 -3.4390224e+02 -3.5858343e+03 - -4.4078781e+02 -3.4079638e+02 -3.5849963e+03 - -4.3758917e+02 -3.3791607e+02 -3.5841253e+03 - -4.3344788e+02 -3.3527528e+02 -3.5832248e+03 - -4.2827985e+02 -3.3288672e+02 -3.5822989e+03 - -4.2199605e+02 -3.3076152e+02 -3.5813517e+03 - -4.1450291e+02 -3.2890883e+02 -3.5803881e+03 - -4.0570307e+02 -3.2733536e+02 -3.5794131e+03 - -3.9549648e+02 -3.2604490e+02 -3.5784323e+03 - -3.8378210e+02 -3.2503769e+02 -3.5774519e+03 - -3.7046012e+02 -3.2430987e+02 -3.5764783e+03 - -3.5543499e+02 -3.2385277e+02 -3.5755185e+03 - -3.3861920e+02 -3.2365239e+02 -3.5745800e+03 - -3.1993798e+02 -3.2368884e+02 -3.5736708e+03 - -2.9933473e+02 -3.2393607e+02 -3.5727993e+03 - -2.7677731e+02 -3.2436179e+02 -3.5719739e+03 - -2.5226458e+02 -3.2492779e+02 -3.5712036e+03 - -2.2583311e+02 -3.2559074e+02 -3.5704973e+03 - -1.9756319e+02 -3.2630347e+02 -3.5698635e+03 - -1.6758356e+02 -3.2701692e+02 -3.5693108e+03 - -1.3607398e+02 -3.2768246e+02 -3.5688467e+03 - -1.0326490e+02 -3.2825470e+02 -3.5684781e+03 - -6.9433641e+01 -3.2869436e+02 -3.5682105e+03 - -3.4896928e+01 -3.2897102e+02 -3.5680482e+03 - 0.0000000e+00 -3.2906544e+02 -3.5679938e+03 - 3.4896928e+01 -3.2897102e+02 -3.5680482e+03 - 6.9433641e+01 -3.2869436e+02 -3.5682105e+03 - 1.0326490e+02 -3.2825470e+02 -3.5684781e+03 - 1.3607398e+02 -3.2768246e+02 -3.5688467e+03 - 1.6758356e+02 -3.2701692e+02 -3.5693108e+03 - 1.9756319e+02 -3.2630347e+02 -3.5698635e+03 - 2.2583311e+02 -3.2559074e+02 -3.5704973e+03 - 2.5226458e+02 -3.2492779e+02 -3.5712036e+03 - 2.7677731e+02 -3.2436179e+02 -3.5719739e+03 - 2.9933473e+02 -3.2393607e+02 -3.5727993e+03 - 3.1993798e+02 -3.2368884e+02 -3.5736708e+03 - 3.3861920e+02 -3.2365239e+02 -3.5745800e+03 - 3.5543499e+02 -3.2385277e+02 -3.5755185e+03 - 3.7046012e+02 -3.2430987e+02 -3.5764783e+03 - 3.8378210e+02 -3.2503769e+02 -3.5774519e+03 - 3.9549648e+02 -3.2604490e+02 -3.5784323e+03 - 4.0570307e+02 -3.2733536e+02 -3.5794131e+03 - 4.1450291e+02 -3.2890883e+02 -3.5803881e+03 - 4.2199605e+02 -3.3076152e+02 -3.5813517e+03 - 4.2827985e+02 -3.3288672e+02 -3.5822989e+03 - 4.3344788e+02 -3.3527528e+02 -3.5832248e+03 - 4.3758917e+02 -3.3791607e+02 -3.5841253e+03 - 4.4078781e+02 -3.4079638e+02 -3.5849963e+03 - 4.4312277e+02 -3.4390224e+02 -3.5858343e+03 - 4.4466788e+02 -3.4721866e+02 -3.5866359e+03 - 4.4549202e+02 -3.5072985e+02 -3.5873983e+03 - 4.4565926e+02 -3.5441934e+02 -3.5881186e+03 - 4.4522917e+02 -3.5827017e+02 -3.5887946e+03 - 4.4425707e+02 -3.6226487e+02 -3.5894240e+03 - 4.4279441e+02 -3.6638559e+02 -3.5900048e+03 - 4.4088900e+02 -3.7061407e+02 -3.5905352e+03 - 4.3858536e+02 -3.7493166e+02 -3.5910139e+03 - 4.3592498e+02 -3.7931931e+02 -3.5914393e+03 - 4.3294663e+02 -3.8375751e+02 -3.5918103e+03 - 4.2968658e+02 -3.8822627e+02 -3.5921259e+03 - 4.2617887e+02 -3.9270505e+02 -3.5923852e+03 - 4.2245552e+02 -3.9717266e+02 -3.5925876e+03 - 4.1854671e+02 -4.0160723e+02 -3.5927325e+03 - 4.1448101e+02 -4.0598605e+02 -3.5928197e+03 - 4.1028553e+02 -4.1028553e+02 -3.5928487e+03 - 4.0598605e+02 -4.1448101e+02 -3.5928197e+03 - 4.0160723e+02 -4.1854671e+02 -3.5927325e+03 - 3.9717266e+02 -4.2245552e+02 -3.5925876e+03 - 3.9270505e+02 -4.2617887e+02 -3.5923852e+03 - 3.8822627e+02 -4.2968658e+02 -3.5921259e+03 - 3.8375751e+02 -4.3294663e+02 -3.5918103e+03 - 3.7931931e+02 -4.3592498e+02 -3.5914393e+03 - 3.7493166e+02 -4.3858536e+02 -3.5910139e+03 - 3.7061407e+02 -4.4088900e+02 -3.5905352e+03 - 3.6638559e+02 -4.4279441e+02 -3.5900048e+03 - 3.6226487e+02 -4.4425707e+02 -3.5894240e+03 - 3.5827017e+02 -4.4522917e+02 -3.5887946e+03 - 3.5441934e+02 -4.4565926e+02 -3.5881186e+03 - 3.5072985e+02 -4.4549202e+02 -3.5873983e+03 - 3.4721866e+02 -4.4466788e+02 -3.5866359e+03 - 3.4390224e+02 -4.4312277e+02 -3.5858343e+03 - 3.4079638e+02 -4.4078781e+02 -3.5849963e+03 - 3.3791607e+02 -4.3758917e+02 -3.5841253e+03 - 3.3527528e+02 -4.3344788e+02 -3.5832248e+03 - 3.3288672e+02 -4.2827985e+02 -3.5822989e+03 - 3.3076152e+02 -4.2199605e+02 -3.5813517e+03 - 3.2890883e+02 -4.1450291e+02 -3.5803881e+03 - 3.2733536e+02 -4.0570307e+02 -3.5794131e+03 - 3.2604490e+02 -3.9549648e+02 -3.5784323e+03 - 3.2503769e+02 -3.8378210e+02 -3.5774519e+03 - 3.2430987e+02 -3.7046012e+02 -3.5764783e+03 - 3.2385277e+02 -3.5543499e+02 -3.5755185e+03 - 3.2365239e+02 -3.3861920e+02 -3.5745800e+03 - 3.2368884e+02 -3.1993798e+02 -3.5736708e+03 - 3.2393607e+02 -2.9933473e+02 -3.5727993e+03 - 3.2436179e+02 -2.7677731e+02 -3.5719739e+03 - 3.2492779e+02 -2.5226458e+02 -3.5712036e+03 - 3.2559074e+02 -2.2583311e+02 -3.5704973e+03 - 3.2630347e+02 -1.9756319e+02 -3.5698635e+03 - 3.2701692e+02 -1.6758356e+02 -3.5693108e+03 - 3.2768246e+02 -1.3607398e+02 -3.5688467e+03 - 3.2825470e+02 -1.0326490e+02 -3.5684781e+03 - 3.2869436e+02 -6.9433641e+01 -3.5682105e+03 - 3.2897102e+02 -3.4896928e+01 -3.5680482e+03 - 3.2906544e+02 2.4067136e-09 -3.5679938e+03 - 3.2897102e+02 3.4896928e+01 -3.5680482e+03 - 3.2869436e+02 6.9433641e+01 -3.5682105e+03 - 3.2825470e+02 1.0326490e+02 -3.5684781e+03 - 3.2768246e+02 1.3607398e+02 -3.5688467e+03 - 3.2701692e+02 1.6758356e+02 -3.5693108e+03 - 3.2630347e+02 1.9756319e+02 -3.5698635e+03 - 3.2559074e+02 2.2583311e+02 -3.5704973e+03 - 3.2492779e+02 2.5226458e+02 -3.5712036e+03 - 3.2436179e+02 2.7677731e+02 -3.5719739e+03 - 3.2393607e+02 2.9933473e+02 -3.5727993e+03 - 3.2368884e+02 3.1993798e+02 -3.5736708e+03 - 3.2365239e+02 3.3861920e+02 -3.5745800e+03 - 3.2385277e+02 3.5543499e+02 -3.5755185e+03 - 3.2430987e+02 3.7046012e+02 -3.5764783e+03 - 3.2503769e+02 3.8378210e+02 -3.5774519e+03 - 3.2604490e+02 3.9549648e+02 -3.5784323e+03 - 3.2733536e+02 4.0570307e+02 -3.5794131e+03 - 3.2890883e+02 4.1450291e+02 -3.5803881e+03 - 3.3076152e+02 4.2199605e+02 -3.5813517e+03 - 3.3288672e+02 4.2827985e+02 -3.5822989e+03 - 3.3527528e+02 4.3344788e+02 -3.5832248e+03 - 3.3791607e+02 4.3758917e+02 -3.5841253e+03 - 3.4079638e+02 4.4078781e+02 -3.5849963e+03 - 3.4390224e+02 4.4312277e+02 -3.5858343e+03 - 3.4721866e+02 4.4466788e+02 -3.5866359e+03 - 3.5072985e+02 4.4549202e+02 -3.5873983e+03 - 3.5441934e+02 4.4565926e+02 -3.5881186e+03 - 3.5827017e+02 4.4522917e+02 -3.5887946e+03 - 3.6226487e+02 4.4425707e+02 -3.5894240e+03 - 3.6638559e+02 4.4279441e+02 -3.5900048e+03 - 3.7061407e+02 4.4088900e+02 -3.5905352e+03 - 3.7493166e+02 4.3858536e+02 -3.5910139e+03 - 3.7931931e+02 4.3592498e+02 -3.5914393e+03 - 3.8375751e+02 4.3294663e+02 -3.5918103e+03 - 3.8822627e+02 4.2968658e+02 -3.5921259e+03 - 3.9270505e+02 4.2617887e+02 -3.5923852e+03 - 3.9717266e+02 4.2245552e+02 -3.5925876e+03 - 4.0160723e+02 4.1854671e+02 -3.5927325e+03 - 4.0598605e+02 4.1448101e+02 -3.5928197e+03 - 4.1028553e+02 4.1028553e+02 -3.5928487e+03 - 4.1448101e+02 4.0598605e+02 -3.5928197e+03 - 4.1854671e+02 4.0160723e+02 -3.5927325e+03 - 4.2245552e+02 3.9717266e+02 -3.5925876e+03 - 4.2617887e+02 3.9270505e+02 -3.5923852e+03 - 4.2968658e+02 3.8822627e+02 -3.5921259e+03 - 4.3294663e+02 3.8375751e+02 -3.5918103e+03 - 4.3592498e+02 3.7931931e+02 -3.5914393e+03 - 4.3858536e+02 3.7493166e+02 -3.5910139e+03 - 4.4088900e+02 3.7061407e+02 -3.5905352e+03 - 4.4279441e+02 3.6638559e+02 -3.5900048e+03 - 4.4425707e+02 3.6226487e+02 -3.5894240e+03 - 4.4522917e+02 3.5827017e+02 -3.5887946e+03 - 4.4565926e+02 3.5441934e+02 -3.5881186e+03 - 4.4549202e+02 3.5072985e+02 -3.5873983e+03 - 4.4466788e+02 3.4721866e+02 -3.5866359e+03 - 4.4312277e+02 3.4390224e+02 -3.5858343e+03 - 4.4078781e+02 3.4079638e+02 -3.5849963e+03 - 4.3758917e+02 3.3791607e+02 -3.5841253e+03 - 4.3344788e+02 3.3527528e+02 -3.5832248e+03 - 4.2827985e+02 3.3288672e+02 -3.5822989e+03 - 4.2199605e+02 3.3076152e+02 -3.5813517e+03 - 4.1450291e+02 3.2890883e+02 -3.5803881e+03 - 4.0570307e+02 3.2733536e+02 -3.5794131e+03 - 3.9549648e+02 3.2604490e+02 -3.5784323e+03 - 3.8378210e+02 3.2503769e+02 -3.5774519e+03 - 3.7046012e+02 3.2430987e+02 -3.5764783e+03 - 3.5543499e+02 3.2385277e+02 -3.5755185e+03 - 3.3861920e+02 3.2365239e+02 -3.5745800e+03 - 3.1993798e+02 3.2368884e+02 -3.5736708e+03 - 2.9933473e+02 3.2393607e+02 -3.5727993e+03 - 2.7677731e+02 3.2436179e+02 -3.5719739e+03 - 2.5226458e+02 3.2492779e+02 -3.5712036e+03 - 2.2583311e+02 3.2559074e+02 -3.5704973e+03 - 1.9756319e+02 3.2630347e+02 -3.5698635e+03 - 1.6758356e+02 3.2701692e+02 -3.5693108e+03 - 1.3607398e+02 3.2768246e+02 -3.5688467e+03 - 1.0326490e+02 3.2825470e+02 -3.5684781e+03 - 6.9433641e+01 3.2869436e+02 -3.5682105e+03 - 3.4896928e+01 3.2897102e+02 -3.5680482e+03 - 0.0000000e+00 3.2906544e+02 -3.5679938e+03 - -3.4896928e+01 3.2897102e+02 -3.5680482e+03 - -6.9433641e+01 3.2869436e+02 -3.5682105e+03 - -1.0326490e+02 3.2825470e+02 -3.5684781e+03 - -1.3607398e+02 3.2768246e+02 -3.5688467e+03 - -1.6758356e+02 3.2701692e+02 -3.5693108e+03 - -1.9756319e+02 3.2630347e+02 -3.5698635e+03 - -2.2583311e+02 3.2559074e+02 -3.5704973e+03 - -2.5226458e+02 3.2492779e+02 -3.5712036e+03 - -2.7677731e+02 3.2436179e+02 -3.5719739e+03 - -2.9933473e+02 3.2393607e+02 -3.5727993e+03 - -3.1993798e+02 3.2368884e+02 -3.5736708e+03 - -3.3861920e+02 3.2365239e+02 -3.5745800e+03 - -3.5543499e+02 3.2385277e+02 -3.5755185e+03 - -3.7046012e+02 3.2430987e+02 -3.5764783e+03 - -3.8378210e+02 3.2503769e+02 -3.5774519e+03 - -3.9549648e+02 3.2604490e+02 -3.5784323e+03 - -4.0570307e+02 3.2733536e+02 -3.5794131e+03 - -4.1450291e+02 3.2890883e+02 -3.5803881e+03 - -4.2199605e+02 3.3076152e+02 -3.5813517e+03 - -4.2827985e+02 3.3288672e+02 -3.5822989e+03 - -4.3344788e+02 3.3527528e+02 -3.5832248e+03 - -4.3758917e+02 3.3791607e+02 -3.5841253e+03 - -4.4078781e+02 3.4079638e+02 -3.5849963e+03 - -4.4312277e+02 3.4390224e+02 -3.5858343e+03 - -4.4466788e+02 3.4721866e+02 -3.5866359e+03 - -4.4549202e+02 3.5072985e+02 -3.5873983e+03 - -4.4565926e+02 3.5441934e+02 -3.5881186e+03 - -4.4522917e+02 3.5827017e+02 -3.5887946e+03 - -4.4425707e+02 3.6226487e+02 -3.5894240e+03 - -4.4279441e+02 3.6638559e+02 -3.5900048e+03 - -4.4088900e+02 3.7061407e+02 -3.5905352e+03 - -4.3858536e+02 3.7493166e+02 -3.5910139e+03 - -4.3592498e+02 3.7931931e+02 -3.5914393e+03 - -4.3294663e+02 3.8375751e+02 -3.5918103e+03 - -4.2968658e+02 3.8822627e+02 -3.5921259e+03 - -4.2617887e+02 3.9270505e+02 -3.5923852e+03 - -4.2245552e+02 3.9717266e+02 -3.5925876e+03 - -4.1854671e+02 4.0160723e+02 -3.5927325e+03 - -4.1448101e+02 4.0598605e+02 -3.5928197e+03 - -4.1028553e+02 4.1028553e+02 -3.5928487e+03 - -4.0598605e+02 4.1448101e+02 -3.5928197e+03 - -4.0160723e+02 4.1854671e+02 -3.5927325e+03 - -3.9717266e+02 4.2245552e+02 -3.5925876e+03 - -3.9270505e+02 4.2617887e+02 -3.5923852e+03 - -3.8822627e+02 4.2968658e+02 -3.5921259e+03 - -3.8375751e+02 4.3294663e+02 -3.5918103e+03 - -3.7931931e+02 4.3592498e+02 -3.5914393e+03 - -3.7493166e+02 4.3858536e+02 -3.5910139e+03 - -3.7061407e+02 4.4088900e+02 -3.5905352e+03 - -3.6638559e+02 4.4279441e+02 -3.5900048e+03 - -3.6226487e+02 4.4425707e+02 -3.5894240e+03 - -3.5827017e+02 4.4522917e+02 -3.5887946e+03 - -3.5441934e+02 4.4565926e+02 -3.5881186e+03 - -3.5072985e+02 4.4549202e+02 -3.5873983e+03 - -3.4721866e+02 4.4466788e+02 -3.5866359e+03 - -3.4390224e+02 4.4312277e+02 -3.5858343e+03 - -3.4079638e+02 4.4078781e+02 -3.5849963e+03 - -3.3791607e+02 4.3758917e+02 -3.5841253e+03 - -3.3527528e+02 4.3344788e+02 -3.5832248e+03 - -3.3288672e+02 4.2827985e+02 -3.5822989e+03 - -3.3076152e+02 4.2199605e+02 -3.5813517e+03 - -3.2890883e+02 4.1450291e+02 -3.5803881e+03 - -3.2733536e+02 4.0570307e+02 -3.5794131e+03 - -3.2604490e+02 3.9549648e+02 -3.5784323e+03 - -3.2503769e+02 3.8378210e+02 -3.5774519e+03 - -3.2430987e+02 3.7046012e+02 -3.5764783e+03 - -3.2385277e+02 3.5543499e+02 -3.5755185e+03 - -3.2365239e+02 3.3861920e+02 -3.5745800e+03 - -3.2368884e+02 3.1993798e+02 -3.5736708e+03 - -3.2393607e+02 2.9933473e+02 -3.5727993e+03 - -3.2436179e+02 2.7677731e+02 -3.5719739e+03 - -3.2492779e+02 2.5226458e+02 -3.5712036e+03 - -3.2559074e+02 2.2583311e+02 -3.5704973e+03 - -3.2630347e+02 1.9756319e+02 -3.5698635e+03 - -3.2701692e+02 1.6758356e+02 -3.5693108e+03 - -3.2768246e+02 1.3607398e+02 -3.5688467e+03 - -3.2825470e+02 1.0326490e+02 -3.5684781e+03 - -3.2869436e+02 6.9433641e+01 -3.5682105e+03 - -3.2897102e+02 3.4896928e+01 -3.5680482e+03 - -3.2906544e+02 -4.8134273e-09 -3.5679938e+03 - -3.4132086e+02 -7.2201409e-09 -3.5705728e+03 - -3.4122967e+02 -3.2754005e+01 -3.5706186e+03 - -3.4096207e+02 -6.5183399e+01 -3.5707552e+03 - -3.4053557e+02 -9.6976790e+01 -3.5709805e+03 - -3.3997780e+02 -1.2784798e+02 -3.5712911e+03 - -3.3932452e+02 -1.5754562e+02 -3.5716825e+03 - -3.3861712e+02 -1.8585998e+02 -3.5721492e+03 - -3.3789996e+02 -2.1262637e+02 -3.5726848e+03 - -3.3721794e+02 -2.3772565e+02 -3.5732826e+03 - -3.3661424e+02 -2.6108210e+02 -3.5739354e+03 - -3.3612864e+02 -2.8265935e+02 -3.5746359e+03 - -3.3579628e+02 -3.0245514e+02 -3.5753767e+03 - -3.3564689e+02 -3.2049545e+02 -3.5761505e+03 - -3.3570450e+02 -3.3682868e+02 -3.5769505e+03 - -3.3598745e+02 -3.5152007e+02 -3.5777699e+03 - -3.3650866e+02 -3.6464680e+02 -3.5786022e+03 - -3.3727607e+02 -3.7629375e+02 -3.5794416e+03 - -3.3829319e+02 -3.8655003e+02 -3.5802824e+03 - -3.3955967e+02 -3.9550627e+02 -3.5811193e+03 - -3.4107184e+02 -4.0325247e+02 -3.5819476e+03 - -3.4282329e+02 -4.0987650e+02 -3.5827626e+03 - -3.4480531e+02 -4.1546300e+02 -3.5835603e+03 - -3.4700735e+02 -4.2009265e+02 -3.5843369e+03 - -3.4941735e+02 -4.2384183e+02 -3.5850888e+03 - -3.5202209e+02 -4.2678233e+02 -3.5858129e+03 - -3.5480737e+02 -4.2898142e+02 -3.5865062e+03 - -3.5775824e+02 -4.3050188e+02 -3.5871661e+03 - -3.6085918e+02 -4.3140219e+02 -3.5877901e+03 - -3.6409416e+02 -4.3173675e+02 -3.5883760e+03 - -3.6744673e+02 -4.3155616e+02 -3.5889219e+03 - -3.7090008e+02 -4.3090746e+02 -3.5894260e+03 - -3.7443707e+02 -4.2983441e+02 -3.5898867e+03 - -3.7804021e+02 -4.2837779e+02 -3.5903025e+03 - -3.8169166e+02 -4.2657563e+02 -3.5906723e+03 - -3.8537321e+02 -4.2446346e+02 -3.5909949e+03 - -3.8906620e+02 -4.2207456e+02 -3.5912693e+03 - -3.9275150e+02 -4.1944019e+02 -3.5914950e+03 - -3.9640945e+02 -4.1658975e+02 -3.5916711e+03 - -4.0001973e+02 -4.1355101e+02 -3.5917972e+03 - -4.0356132e+02 -4.1035024e+02 -3.5918731e+03 - -4.0701241e+02 -4.0701241e+02 -3.5918984e+03 - -4.1035024e+02 -4.0356132e+02 -3.5918731e+03 - -4.1355101e+02 -4.0001973e+02 -3.5917972e+03 - -4.1658975e+02 -3.9640945e+02 -3.5916711e+03 - -4.1944019e+02 -3.9275150e+02 -3.5914950e+03 - -4.2207456e+02 -3.8906620e+02 -3.5912693e+03 - -4.2446346e+02 -3.8537321e+02 -3.5909949e+03 - -4.2657563e+02 -3.8169166e+02 -3.5906723e+03 - -4.2837779e+02 -3.7804021e+02 -3.5903025e+03 - -4.2983441e+02 -3.7443707e+02 -3.5898867e+03 - -4.3090746e+02 -3.7090008e+02 -3.5894260e+03 - -4.3155616e+02 -3.6744673e+02 -3.5889219e+03 - -4.3173675e+02 -3.6409416e+02 -3.5883760e+03 - -4.3140219e+02 -3.6085918e+02 -3.5877901e+03 - -4.3050188e+02 -3.5775824e+02 -3.5871661e+03 - -4.2898142e+02 -3.5480737e+02 -3.5865062e+03 - -4.2678233e+02 -3.5202209e+02 -3.5858129e+03 - -4.2384183e+02 -3.4941735e+02 -3.5850888e+03 - -4.2009265e+02 -3.4700735e+02 -3.5843369e+03 - -4.1546300e+02 -3.4480531e+02 -3.5835603e+03 - -4.0987650e+02 -3.4282329e+02 -3.5827626e+03 - -4.0325247e+02 -3.4107184e+02 -3.5819476e+03 - -3.9550627e+02 -3.3955967e+02 -3.5811193e+03 - -3.8655003e+02 -3.3829319e+02 -3.5802824e+03 - -3.7629375e+02 -3.3727607e+02 -3.5794416e+03 - -3.6464680e+02 -3.3650866e+02 -3.5786022e+03 - -3.5152007e+02 -3.3598745e+02 -3.5777699e+03 - -3.3682868e+02 -3.3570450e+02 -3.5769505e+03 - -3.2049545e+02 -3.3564689e+02 -3.5761505e+03 - -3.0245514e+02 -3.3579628e+02 -3.5753767e+03 - -2.8265935e+02 -3.3612864e+02 -3.5746359e+03 - -2.6108210e+02 -3.3661424e+02 -3.5739354e+03 - -2.3772565e+02 -3.3721794e+02 -3.5732826e+03 - -2.1262637e+02 -3.3789996e+02 -3.5726848e+03 - -1.8585998e+02 -3.3861712e+02 -3.5721492e+03 - -1.5754562e+02 -3.3932452e+02 -3.5716825e+03 - -1.2784798e+02 -3.3997780e+02 -3.5712911e+03 - -9.6976790e+01 -3.4053557e+02 -3.5709805e+03 - -6.5183399e+01 -3.4096207e+02 -3.5707552e+03 - -3.2754005e+01 -3.4122967e+02 -3.5706186e+03 - 0.0000000e+00 -3.4132086e+02 -3.5705728e+03 - 3.2754005e+01 -3.4122967e+02 -3.5706186e+03 - 6.5183399e+01 -3.4096207e+02 -3.5707552e+03 - 9.6976790e+01 -3.4053557e+02 -3.5709805e+03 - 1.2784798e+02 -3.3997780e+02 -3.5712911e+03 - 1.5754562e+02 -3.3932452e+02 -3.5716825e+03 - 1.8585998e+02 -3.3861712e+02 -3.5721492e+03 - 2.1262637e+02 -3.3789996e+02 -3.5726848e+03 - 2.3772565e+02 -3.3721794e+02 -3.5732826e+03 - 2.6108210e+02 -3.3661424e+02 -3.5739354e+03 - 2.8265935e+02 -3.3612864e+02 -3.5746359e+03 - 3.0245514e+02 -3.3579628e+02 -3.5753767e+03 - 3.2049545e+02 -3.3564689e+02 -3.5761505e+03 - 3.3682868e+02 -3.3570450e+02 -3.5769505e+03 - 3.5152007e+02 -3.3598745e+02 -3.5777699e+03 - 3.6464680e+02 -3.3650866e+02 -3.5786022e+03 - 3.7629375e+02 -3.3727607e+02 -3.5794416e+03 - 3.8655003e+02 -3.3829319e+02 -3.5802824e+03 - 3.9550627e+02 -3.3955967e+02 -3.5811193e+03 - 4.0325247e+02 -3.4107184e+02 -3.5819476e+03 - 4.0987650e+02 -3.4282329e+02 -3.5827626e+03 - 4.1546300e+02 -3.4480531e+02 -3.5835603e+03 - 4.2009265e+02 -3.4700735e+02 -3.5843369e+03 - 4.2384183e+02 -3.4941735e+02 -3.5850888e+03 - 4.2678233e+02 -3.5202209e+02 -3.5858129e+03 - 4.2898142e+02 -3.5480737e+02 -3.5865062e+03 - 4.3050188e+02 -3.5775824e+02 -3.5871661e+03 - 4.3140219e+02 -3.6085918e+02 -3.5877901e+03 - 4.3173675e+02 -3.6409416e+02 -3.5883760e+03 - 4.3155616e+02 -3.6744673e+02 -3.5889219e+03 - 4.3090746e+02 -3.7090008e+02 -3.5894260e+03 - 4.2983441e+02 -3.7443707e+02 -3.5898867e+03 - 4.2837779e+02 -3.7804021e+02 -3.5903025e+03 - 4.2657563e+02 -3.8169166e+02 -3.5906723e+03 - 4.2446346e+02 -3.8537321e+02 -3.5909949e+03 - 4.2207456e+02 -3.8906620e+02 -3.5912693e+03 - 4.1944019e+02 -3.9275150e+02 -3.5914950e+03 - 4.1658975e+02 -3.9640945e+02 -3.5916711e+03 - 4.1355101e+02 -4.0001973e+02 -3.5917972e+03 - 4.1035024e+02 -4.0356132e+02 -3.5918731e+03 - 4.0701241e+02 -4.0701241e+02 -3.5918984e+03 - 4.0356132e+02 -4.1035024e+02 -3.5918731e+03 - 4.0001973e+02 -4.1355101e+02 -3.5917972e+03 - 3.9640945e+02 -4.1658975e+02 -3.5916711e+03 - 3.9275150e+02 -4.1944019e+02 -3.5914950e+03 - 3.8906620e+02 -4.2207456e+02 -3.5912693e+03 - 3.8537321e+02 -4.2446346e+02 -3.5909949e+03 - 3.8169166e+02 -4.2657563e+02 -3.5906723e+03 - 3.7804021e+02 -4.2837779e+02 -3.5903025e+03 - 3.7443707e+02 -4.2983441e+02 -3.5898867e+03 - 3.7090008e+02 -4.3090746e+02 -3.5894260e+03 - 3.6744673e+02 -4.3155616e+02 -3.5889219e+03 - 3.6409416e+02 -4.3173675e+02 -3.5883760e+03 - 3.6085918e+02 -4.3140219e+02 -3.5877901e+03 - 3.5775824e+02 -4.3050188e+02 -3.5871661e+03 - 3.5480737e+02 -4.2898142e+02 -3.5865062e+03 - 3.5202209e+02 -4.2678233e+02 -3.5858129e+03 - 3.4941735e+02 -4.2384183e+02 -3.5850888e+03 - 3.4700735e+02 -4.2009265e+02 -3.5843369e+03 - 3.4480531e+02 -4.1546300e+02 -3.5835603e+03 - 3.4282329e+02 -4.0987650e+02 -3.5827626e+03 - 3.4107184e+02 -4.0325247e+02 -3.5819476e+03 - 3.3955967e+02 -3.9550627e+02 -3.5811193e+03 - 3.3829319e+02 -3.8655003e+02 -3.5802824e+03 - 3.3727607e+02 -3.7629375e+02 -3.5794416e+03 - 3.3650866e+02 -3.6464680e+02 -3.5786022e+03 - 3.3598745e+02 -3.5152007e+02 -3.5777699e+03 - 3.3570450e+02 -3.3682868e+02 -3.5769505e+03 - 3.3564689e+02 -3.2049545e+02 -3.5761505e+03 - 3.3579628e+02 -3.0245514e+02 -3.5753767e+03 - 3.3612864e+02 -2.8265935e+02 -3.5746359e+03 - 3.3661424e+02 -2.6108210e+02 -3.5739354e+03 - 3.3721794e+02 -2.3772565e+02 -3.5732826e+03 - 3.3789996e+02 -2.1262637e+02 -3.5726848e+03 - 3.3861712e+02 -1.8585998e+02 -3.5721492e+03 - 3.3932452e+02 -1.5754562e+02 -3.5716825e+03 - 3.3997780e+02 -1.2784798e+02 -3.5712911e+03 - 3.4053557e+02 -9.6976790e+01 -3.5709805e+03 - 3.4096207e+02 -6.5183399e+01 -3.5707552e+03 - 3.4122967e+02 -3.2754005e+01 -3.5706186e+03 - 3.4132086e+02 7.2201409e-09 -3.5705728e+03 - 3.4122967e+02 3.2754005e+01 -3.5706186e+03 - 3.4096207e+02 6.5183399e+01 -3.5707552e+03 - 3.4053557e+02 9.6976790e+01 -3.5709805e+03 - 3.3997780e+02 1.2784798e+02 -3.5712911e+03 - 3.3932452e+02 1.5754562e+02 -3.5716825e+03 - 3.3861712e+02 1.8585998e+02 -3.5721492e+03 - 3.3789996e+02 2.1262637e+02 -3.5726848e+03 - 3.3721794e+02 2.3772565e+02 -3.5732826e+03 - 3.3661424e+02 2.6108210e+02 -3.5739354e+03 - 3.3612864e+02 2.8265935e+02 -3.5746359e+03 - 3.3579628e+02 3.0245514e+02 -3.5753767e+03 - 3.3564689e+02 3.2049545e+02 -3.5761505e+03 - 3.3570450e+02 3.3682868e+02 -3.5769505e+03 - 3.3598745e+02 3.5152007e+02 -3.5777699e+03 - 3.3650866e+02 3.6464680e+02 -3.5786022e+03 - 3.3727607e+02 3.7629375e+02 -3.5794416e+03 - 3.3829319e+02 3.8655003e+02 -3.5802824e+03 - 3.3955967e+02 3.9550627e+02 -3.5811193e+03 - 3.4107184e+02 4.0325247e+02 -3.5819476e+03 - 3.4282329e+02 4.0987650e+02 -3.5827626e+03 - 3.4480531e+02 4.1546300e+02 -3.5835603e+03 - 3.4700735e+02 4.2009265e+02 -3.5843369e+03 - 3.4941735e+02 4.2384183e+02 -3.5850888e+03 - 3.5202209e+02 4.2678233e+02 -3.5858129e+03 - 3.5480737e+02 4.2898142e+02 -3.5865062e+03 - 3.5775824e+02 4.3050188e+02 -3.5871661e+03 - 3.6085918e+02 4.3140219e+02 -3.5877901e+03 - 3.6409416e+02 4.3173675e+02 -3.5883760e+03 - 3.6744673e+02 4.3155616e+02 -3.5889219e+03 - 3.7090008e+02 4.3090746e+02 -3.5894260e+03 - 3.7443707e+02 4.2983441e+02 -3.5898867e+03 - 3.7804021e+02 4.2837779e+02 -3.5903025e+03 - 3.8169166e+02 4.2657563e+02 -3.5906723e+03 - 3.8537321e+02 4.2446346e+02 -3.5909949e+03 - 3.8906620e+02 4.2207456e+02 -3.5912693e+03 - 3.9275150e+02 4.1944019e+02 -3.5914950e+03 - 3.9640945e+02 4.1658975e+02 -3.5916711e+03 - 4.0001973e+02 4.1355101e+02 -3.5917972e+03 - 4.0356132e+02 4.1035024e+02 -3.5918731e+03 - 4.0701241e+02 4.0701241e+02 -3.5918984e+03 - 4.1035024e+02 4.0356132e+02 -3.5918731e+03 - 4.1355101e+02 4.0001973e+02 -3.5917972e+03 - 4.1658975e+02 3.9640945e+02 -3.5916711e+03 - 4.1944019e+02 3.9275150e+02 -3.5914950e+03 - 4.2207456e+02 3.8906620e+02 -3.5912693e+03 - 4.2446346e+02 3.8537321e+02 -3.5909949e+03 - 4.2657563e+02 3.8169166e+02 -3.5906723e+03 - 4.2837779e+02 3.7804021e+02 -3.5903025e+03 - 4.2983441e+02 3.7443707e+02 -3.5898867e+03 - 4.3090746e+02 3.7090008e+02 -3.5894260e+03 - 4.3155616e+02 3.6744673e+02 -3.5889219e+03 - 4.3173675e+02 3.6409416e+02 -3.5883760e+03 - 4.3140219e+02 3.6085918e+02 -3.5877901e+03 - 4.3050188e+02 3.5775824e+02 -3.5871661e+03 - 4.2898142e+02 3.5480737e+02 -3.5865062e+03 - 4.2678233e+02 3.5202209e+02 -3.5858129e+03 - 4.2384183e+02 3.4941735e+02 -3.5850888e+03 - 4.2009265e+02 3.4700735e+02 -3.5843369e+03 - 4.1546300e+02 3.4480531e+02 -3.5835603e+03 - 4.0987650e+02 3.4282329e+02 -3.5827626e+03 - 4.0325247e+02 3.4107184e+02 -3.5819476e+03 - 3.9550627e+02 3.3955967e+02 -3.5811193e+03 - 3.8655003e+02 3.3829319e+02 -3.5802824e+03 - 3.7629375e+02 3.3727607e+02 -3.5794416e+03 - 3.6464680e+02 3.3650866e+02 -3.5786022e+03 - 3.5152007e+02 3.3598745e+02 -3.5777699e+03 - 3.3682868e+02 3.3570450e+02 -3.5769505e+03 - 3.2049545e+02 3.3564689e+02 -3.5761505e+03 - 3.0245514e+02 3.3579628e+02 -3.5753767e+03 - 2.8265935e+02 3.3612864e+02 -3.5746359e+03 - 2.6108210e+02 3.3661424e+02 -3.5739354e+03 - 2.3772565e+02 3.3721794e+02 -3.5732826e+03 - 2.1262637e+02 3.3789996e+02 -3.5726848e+03 - 1.8585998e+02 3.3861712e+02 -3.5721492e+03 - 1.5754562e+02 3.3932452e+02 -3.5716825e+03 - 1.2784798e+02 3.3997780e+02 -3.5712911e+03 - 9.6976790e+01 3.4053557e+02 -3.5709805e+03 - 6.5183399e+01 3.4096207e+02 -3.5707552e+03 - 3.2754005e+01 3.4122967e+02 -3.5706186e+03 - -4.8134273e-09 3.4132086e+02 -3.5705728e+03 - -3.2754005e+01 3.4122967e+02 -3.5706186e+03 - -6.5183399e+01 3.4096207e+02 -3.5707552e+03 - -9.6976790e+01 3.4053557e+02 -3.5709805e+03 - -1.2784798e+02 3.3997780e+02 -3.5712911e+03 - -1.5754562e+02 3.3932452e+02 -3.5716825e+03 - -1.8585998e+02 3.3861712e+02 -3.5721492e+03 - -2.1262637e+02 3.3789996e+02 -3.5726848e+03 - -2.3772565e+02 3.3721794e+02 -3.5732826e+03 - -2.6108210e+02 3.3661424e+02 -3.5739354e+03 - -2.8265935e+02 3.3612864e+02 -3.5746359e+03 - -3.0245514e+02 3.3579628e+02 -3.5753767e+03 - -3.2049545e+02 3.3564689e+02 -3.5761505e+03 - -3.3682868e+02 3.3570450e+02 -3.5769505e+03 - -3.5152007e+02 3.3598745e+02 -3.5777699e+03 - -3.6464680e+02 3.3650866e+02 -3.5786022e+03 - -3.7629375e+02 3.3727607e+02 -3.5794416e+03 - -3.8655003e+02 3.3829319e+02 -3.5802824e+03 - -3.9550627e+02 3.3955967e+02 -3.5811193e+03 - -4.0325247e+02 3.4107184e+02 -3.5819476e+03 - -4.0987650e+02 3.4282329e+02 -3.5827626e+03 - -4.1546300e+02 3.4480531e+02 -3.5835603e+03 - -4.2009265e+02 3.4700735e+02 -3.5843369e+03 - -4.2384183e+02 3.4941735e+02 -3.5850888e+03 - -4.2678233e+02 3.5202209e+02 -3.5858129e+03 - -4.2898142e+02 3.5480737e+02 -3.5865062e+03 - -4.3050188e+02 3.5775824e+02 -3.5871661e+03 - -4.3140219e+02 3.6085918e+02 -3.5877901e+03 - -4.3173675e+02 3.6409416e+02 -3.5883760e+03 - -4.3155616e+02 3.6744673e+02 -3.5889219e+03 - -4.3090746e+02 3.7090008e+02 -3.5894260e+03 - -4.2983441e+02 3.7443707e+02 -3.5898867e+03 - -4.2837779e+02 3.7804021e+02 -3.5903025e+03 - -4.2657563e+02 3.8169166e+02 -3.5906723e+03 - -4.2446346e+02 3.8537321e+02 -3.5909949e+03 - -4.2207456e+02 3.8906620e+02 -3.5912693e+03 - -4.1944019e+02 3.9275150e+02 -3.5914950e+03 - -4.1658975e+02 3.9640945e+02 -3.5916711e+03 - -4.1355101e+02 4.0001973e+02 -3.5917972e+03 - -4.1035024e+02 4.0356132e+02 -3.5918731e+03 - -4.0701241e+02 4.0701241e+02 -3.5918984e+03 - -4.0356132e+02 4.1035024e+02 -3.5918731e+03 - -4.0001973e+02 4.1355101e+02 -3.5917972e+03 - -3.9640945e+02 4.1658975e+02 -3.5916711e+03 - -3.9275150e+02 4.1944019e+02 -3.5914950e+03 - -3.8906620e+02 4.2207456e+02 -3.5912693e+03 - -3.8537321e+02 4.2446346e+02 -3.5909949e+03 - -3.8169166e+02 4.2657563e+02 -3.5906723e+03 - -3.7804021e+02 4.2837779e+02 -3.5903025e+03 - -3.7443707e+02 4.2983441e+02 -3.5898867e+03 - -3.7090008e+02 4.3090746e+02 -3.5894260e+03 - -3.6744673e+02 4.3155616e+02 -3.5889219e+03 - -3.6409416e+02 4.3173675e+02 -3.5883760e+03 - -3.6085918e+02 4.3140219e+02 -3.5877901e+03 - -3.5775824e+02 4.3050188e+02 -3.5871661e+03 - -3.5480737e+02 4.2898142e+02 -3.5865062e+03 - -3.5202209e+02 4.2678233e+02 -3.5858129e+03 - -3.4941735e+02 4.2384183e+02 -3.5850888e+03 - -3.4700735e+02 4.2009265e+02 -3.5843369e+03 - -3.4480531e+02 4.1546300e+02 -3.5835603e+03 - -3.4282329e+02 4.0987650e+02 -3.5827626e+03 - -3.4107184e+02 4.0325247e+02 -3.5819476e+03 - -3.3955967e+02 3.9550627e+02 -3.5811193e+03 - -3.3829319e+02 3.8655003e+02 -3.5802824e+03 - -3.3727607e+02 3.7629375e+02 -3.5794416e+03 - -3.3650866e+02 3.6464680e+02 -3.5786022e+03 - -3.3598745e+02 3.5152007e+02 -3.5777699e+03 - -3.3570450e+02 3.3682868e+02 -3.5769505e+03 - -3.3564689e+02 3.2049545e+02 -3.5761505e+03 - -3.3579628e+02 3.0245514e+02 -3.5753767e+03 - -3.3612864e+02 2.8265935e+02 -3.5746359e+03 - -3.3661424e+02 2.6108210e+02 -3.5739354e+03 - -3.3721794e+02 2.3772565e+02 -3.5732826e+03 - -3.3789996e+02 2.1262637e+02 -3.5726848e+03 - -3.3861712e+02 1.8585998e+02 -3.5721492e+03 - -3.3932452e+02 1.5754562e+02 -3.5716825e+03 - -3.3997780e+02 1.2784798e+02 -3.5712911e+03 - -3.4053557e+02 9.6976790e+01 -3.5709805e+03 - -3.4096207e+02 6.5183399e+01 -3.5707552e+03 - -3.4122967e+02 3.2754005e+01 -3.5706186e+03 - -3.4132086e+02 -4.8134273e-09 -3.5705728e+03 - -3.4421762e+02 0.0000000e+00 -3.5711355e+03 - -3.4413116e+02 -3.0388457e+01 -3.5711733e+03 - -3.4387714e+02 -6.0486954e+01 -3.5712861e+03 - -3.4347130e+02 -9.0017119e+01 -3.5714723e+03 - -3.4293851e+02 -1.1872268e+02 -3.5717291e+03 - -3.4231095e+02 -1.4637798e+02 -3.5720529e+03 - -3.4162593e+02 -1.7279400e+02 -3.5724394e+03 - -3.4092351e+02 -1.9782145e+02 -3.5728834e+03 - -3.4024425e+02 -2.2135140e+02 -3.5733795e+03 - -3.3962727e+02 -2.4331343e+02 -3.5739219e+03 - -3.3910863e+02 -2.6367227e+02 -3.5745047e+03 - -3.3872022e+02 -2.8242318e+02 -3.5751218e+03 - -3.3848908e+02 -2.9958690e+02 -3.5757673e+03 - -3.3843706e+02 -3.1520446e+02 -3.5764355e+03 - -3.3858083e+02 -3.2933232e+02 -3.5771208e+03 - -3.3893213e+02 -3.4203796e+02 -3.5778178e+03 - -3.3949812e+02 -3.5339609e+02 -3.5785217e+03 - -3.4028188e+02 -3.6348557e+02 -3.5792276e+03 - -3.4128294e+02 -3.7238689e+02 -3.5799310e+03 - -3.4249779e+02 -3.8018025e+02 -3.5806280e+03 - -3.4392032e+02 -3.8694413e+02 -3.5813146e+03 - -3.4554236e+02 -3.9275431e+02 -3.5819873e+03 - -3.4735397e+02 -3.9768318e+02 -3.5826428e+03 - -3.4934385e+02 -4.0179934e+02 -3.5832780e+03 - -3.5149961e+02 -4.0516741e+02 -3.5838903e+03 - -3.5380795e+02 -4.0784797e+02 -3.5844770e+03 - -3.5625492e+02 -4.0989764e+02 -3.5850359e+03 - -3.5882600e+02 -4.1136919e+02 -3.5855647e+03 - -3.6150625e+02 -4.1231178e+02 -3.5860617e+03 - -3.6428034e+02 -4.1277112e+02 -3.5865249e+03 - -3.6713264e+02 -4.1278977e+02 -3.5869529e+03 - -3.7004723e+02 -4.1240732e+02 -3.5873442e+03 - -3.7300791e+02 -4.1166071e+02 -3.5876975e+03 - -3.7599816e+02 -4.1058436e+02 -3.5880119e+03 - -3.7900116e+02 -4.0921050e+02 -3.5882862e+03 - -3.8199971e+02 -4.0756931e+02 -3.5885197e+03 - -3.8497621e+02 -4.0568915e+02 -3.5887116e+03 - -3.8791259e+02 -4.0359671e+02 -3.5888615e+03 - -3.9079023e+02 -4.0131723e+02 -3.5889689e+03 - -3.9358989e+02 -3.9887461e+02 -3.5890334e+03 - -3.9629160e+02 -3.9629160e+02 -3.5890550e+03 - -3.9887461e+02 -3.9358989e+02 -3.5890334e+03 - -4.0131723e+02 -3.9079023e+02 -3.5889689e+03 - -4.0359671e+02 -3.8791259e+02 -3.5888615e+03 - -4.0568915e+02 -3.8497621e+02 -3.5887116e+03 - -4.0756931e+02 -3.8199971e+02 -3.5885197e+03 - -4.0921050e+02 -3.7900116e+02 -3.5882862e+03 - -4.1058436e+02 -3.7599816e+02 -3.5880119e+03 - -4.1166071e+02 -3.7300791e+02 -3.5876975e+03 - -4.1240732e+02 -3.7004723e+02 -3.5873442e+03 - -4.1278977e+02 -3.6713264e+02 -3.5869529e+03 - -4.1277112e+02 -3.6428034e+02 -3.5865249e+03 - -4.1231178e+02 -3.6150625e+02 -3.5860617e+03 - -4.1136919e+02 -3.5882600e+02 -3.5855647e+03 - -4.0989764e+02 -3.5625492e+02 -3.5850359e+03 - -4.0784797e+02 -3.5380795e+02 -3.5844770e+03 - -4.0516741e+02 -3.5149961e+02 -3.5838903e+03 - -4.0179934e+02 -3.4934385e+02 -3.5832780e+03 - -3.9768318e+02 -3.4735397e+02 -3.5826428e+03 - -3.9275431e+02 -3.4554236e+02 -3.5819873e+03 - -3.8694413e+02 -3.4392032e+02 -3.5813146e+03 - -3.8018025e+02 -3.4249779e+02 -3.5806280e+03 - -3.7238689e+02 -3.4128294e+02 -3.5799310e+03 - -3.6348557e+02 -3.4028188e+02 -3.5792276e+03 - -3.5339609e+02 -3.3949812e+02 -3.5785217e+03 - -3.4203796e+02 -3.3893213e+02 -3.5778178e+03 - -3.2933232e+02 -3.3858083e+02 -3.5771208e+03 - -3.1520446e+02 -3.3843706e+02 -3.5764355e+03 - -2.9958690e+02 -3.3848908e+02 -3.5757673e+03 - -2.8242318e+02 -3.3872022e+02 -3.5751218e+03 - -2.6367227e+02 -3.3910863e+02 -3.5745047e+03 - -2.4331343e+02 -3.3962727e+02 -3.5739219e+03 - -2.2135140e+02 -3.4024425e+02 -3.5733795e+03 - -1.9782145e+02 -3.4092351e+02 -3.5728834e+03 - -1.7279400e+02 -3.4162593e+02 -3.5724394e+03 - -1.4637798e+02 -3.4231095e+02 -3.5720529e+03 - -1.1872268e+02 -3.4293851e+02 -3.5717291e+03 - -9.0017119e+01 -3.4347130e+02 -3.5714723e+03 - -6.0486954e+01 -3.4387714e+02 -3.5712861e+03 - -3.0388457e+01 -3.4413116e+02 -3.5711733e+03 - 0.0000000e+00 -3.4421762e+02 -3.5711355e+03 - 3.0388457e+01 -3.4413116e+02 -3.5711733e+03 - 6.0486954e+01 -3.4387714e+02 -3.5712861e+03 - 9.0017119e+01 -3.4347130e+02 -3.5714723e+03 - 1.1872268e+02 -3.4293851e+02 -3.5717291e+03 - 1.4637798e+02 -3.4231095e+02 -3.5720529e+03 - 1.7279400e+02 -3.4162593e+02 -3.5724394e+03 - 1.9782145e+02 -3.4092351e+02 -3.5728834e+03 - 2.2135140e+02 -3.4024425e+02 -3.5733795e+03 - 2.4331343e+02 -3.3962727e+02 -3.5739219e+03 - 2.6367227e+02 -3.3910863e+02 -3.5745047e+03 - 2.8242318e+02 -3.3872022e+02 -3.5751218e+03 - 2.9958690e+02 -3.3848908e+02 -3.5757673e+03 - 3.1520446e+02 -3.3843706e+02 -3.5764355e+03 - 3.2933232e+02 -3.3858083e+02 -3.5771208e+03 - 3.4203796e+02 -3.3893213e+02 -3.5778178e+03 - 3.5339609e+02 -3.3949812e+02 -3.5785217e+03 - 3.6348557e+02 -3.4028188e+02 -3.5792276e+03 - 3.7238689e+02 -3.4128294e+02 -3.5799310e+03 - 3.8018025e+02 -3.4249779e+02 -3.5806280e+03 - 3.8694413e+02 -3.4392032e+02 -3.5813146e+03 - 3.9275431e+02 -3.4554236e+02 -3.5819873e+03 - 3.9768318e+02 -3.4735397e+02 -3.5826428e+03 - 4.0179934e+02 -3.4934385e+02 -3.5832780e+03 - 4.0516741e+02 -3.5149961e+02 -3.5838903e+03 - 4.0784797e+02 -3.5380795e+02 -3.5844770e+03 - 4.0989764e+02 -3.5625492e+02 -3.5850359e+03 - 4.1136919e+02 -3.5882600e+02 -3.5855647e+03 - 4.1231178e+02 -3.6150625e+02 -3.5860617e+03 - 4.1277112e+02 -3.6428034e+02 -3.5865249e+03 - 4.1278977e+02 -3.6713264e+02 -3.5869529e+03 - 4.1240732e+02 -3.7004723e+02 -3.5873442e+03 - 4.1166071e+02 -3.7300791e+02 -3.5876975e+03 - 4.1058436e+02 -3.7599816e+02 -3.5880119e+03 - 4.0921050e+02 -3.7900116e+02 -3.5882862e+03 - 4.0756931e+02 -3.8199971e+02 -3.5885197e+03 - 4.0568915e+02 -3.8497621e+02 -3.5887116e+03 - 4.0359671e+02 -3.8791259e+02 -3.5888615e+03 - 4.0131723e+02 -3.9079023e+02 -3.5889689e+03 - 3.9887461e+02 -3.9358989e+02 -3.5890334e+03 - 3.9629160e+02 -3.9629160e+02 -3.5890550e+03 - 3.9358989e+02 -3.9887461e+02 -3.5890334e+03 - 3.9079023e+02 -4.0131723e+02 -3.5889689e+03 - 3.8791259e+02 -4.0359671e+02 -3.5888615e+03 - 3.8497621e+02 -4.0568915e+02 -3.5887116e+03 - 3.8199971e+02 -4.0756931e+02 -3.5885197e+03 - 3.7900116e+02 -4.0921050e+02 -3.5882862e+03 - 3.7599816e+02 -4.1058436e+02 -3.5880119e+03 - 3.7300791e+02 -4.1166071e+02 -3.5876975e+03 - 3.7004723e+02 -4.1240732e+02 -3.5873442e+03 - 3.6713264e+02 -4.1278977e+02 -3.5869529e+03 - 3.6428034e+02 -4.1277112e+02 -3.5865249e+03 - 3.6150625e+02 -4.1231178e+02 -3.5860617e+03 - 3.5882600e+02 -4.1136919e+02 -3.5855647e+03 - 3.5625492e+02 -4.0989764e+02 -3.5850359e+03 - 3.5380795e+02 -4.0784797e+02 -3.5844770e+03 - 3.5149961e+02 -4.0516741e+02 -3.5838903e+03 - 3.4934385e+02 -4.0179934e+02 -3.5832780e+03 - 3.4735397e+02 -3.9768318e+02 -3.5826428e+03 - 3.4554236e+02 -3.9275431e+02 -3.5819873e+03 - 3.4392032e+02 -3.8694413e+02 -3.5813146e+03 - 3.4249779e+02 -3.8018025e+02 -3.5806280e+03 - 3.4128294e+02 -3.7238689e+02 -3.5799310e+03 - 3.4028188e+02 -3.6348557e+02 -3.5792276e+03 - 3.3949812e+02 -3.5339609e+02 -3.5785217e+03 - 3.3893213e+02 -3.4203796e+02 -3.5778178e+03 - 3.3858083e+02 -3.2933232e+02 -3.5771208e+03 - 3.3843706e+02 -3.1520446e+02 -3.5764355e+03 - 3.3848908e+02 -2.9958690e+02 -3.5757673e+03 - 3.3872022e+02 -2.8242318e+02 -3.5751218e+03 - 3.3910863e+02 -2.6367227e+02 -3.5745047e+03 - 3.3962727e+02 -2.4331343e+02 -3.5739219e+03 - 3.4024425e+02 -2.2135140e+02 -3.5733795e+03 - 3.4092351e+02 -1.9782145e+02 -3.5728834e+03 - 3.4162593e+02 -1.7279400e+02 -3.5724394e+03 - 3.4231095e+02 -1.4637798e+02 -3.5720529e+03 - 3.4293851e+02 -1.1872268e+02 -3.5717291e+03 - 3.4347130e+02 -9.0017119e+01 -3.5714723e+03 - 3.4387714e+02 -6.0486954e+01 -3.5712861e+03 - 3.4413116e+02 -3.0388457e+01 -3.5711733e+03 - 3.4421762e+02 -7.2201409e-09 -3.5711355e+03 - 3.4413116e+02 3.0388457e+01 -3.5711733e+03 - 3.4387714e+02 6.0486954e+01 -3.5712861e+03 - 3.4347130e+02 9.0017119e+01 -3.5714723e+03 - 3.4293851e+02 1.1872268e+02 -3.5717291e+03 - 3.4231095e+02 1.4637798e+02 -3.5720529e+03 - 3.4162593e+02 1.7279400e+02 -3.5724394e+03 - 3.4092351e+02 1.9782145e+02 -3.5728834e+03 - 3.4024425e+02 2.2135140e+02 -3.5733795e+03 - 3.3962727e+02 2.4331343e+02 -3.5739219e+03 - 3.3910863e+02 2.6367227e+02 -3.5745047e+03 - 3.3872022e+02 2.8242318e+02 -3.5751218e+03 - 3.3848908e+02 2.9958690e+02 -3.5757673e+03 - 3.3843706e+02 3.1520446e+02 -3.5764355e+03 - 3.3858083e+02 3.2933232e+02 -3.5771208e+03 - 3.3893213e+02 3.4203796e+02 -3.5778178e+03 - 3.3949812e+02 3.5339609e+02 -3.5785217e+03 - 3.4028188e+02 3.6348557e+02 -3.5792276e+03 - 3.4128294e+02 3.7238689e+02 -3.5799310e+03 - 3.4249779e+02 3.8018025e+02 -3.5806280e+03 - 3.4392032e+02 3.8694413e+02 -3.5813146e+03 - 3.4554236e+02 3.9275431e+02 -3.5819873e+03 - 3.4735397e+02 3.9768318e+02 -3.5826428e+03 - 3.4934385e+02 4.0179934e+02 -3.5832780e+03 - 3.5149961e+02 4.0516741e+02 -3.5838903e+03 - 3.5380795e+02 4.0784797e+02 -3.5844770e+03 - 3.5625492e+02 4.0989764e+02 -3.5850359e+03 - 3.5882600e+02 4.1136919e+02 -3.5855647e+03 - 3.6150625e+02 4.1231178e+02 -3.5860617e+03 - 3.6428034e+02 4.1277112e+02 -3.5865249e+03 - 3.6713264e+02 4.1278977e+02 -3.5869529e+03 - 3.7004723e+02 4.1240732e+02 -3.5873442e+03 - 3.7300791e+02 4.1166071e+02 -3.5876975e+03 - 3.7599816e+02 4.1058436e+02 -3.5880119e+03 - 3.7900116e+02 4.0921050e+02 -3.5882862e+03 - 3.8199971e+02 4.0756931e+02 -3.5885197e+03 - 3.8497621e+02 4.0568915e+02 -3.5887116e+03 - 3.8791259e+02 4.0359671e+02 -3.5888615e+03 - 3.9079023e+02 4.0131723e+02 -3.5889689e+03 - 3.9358989e+02 3.9887461e+02 -3.5890334e+03 - 3.9629160e+02 3.9629160e+02 -3.5890550e+03 - 3.9887461e+02 3.9358989e+02 -3.5890334e+03 - 4.0131723e+02 3.9079023e+02 -3.5889689e+03 - 4.0359671e+02 3.8791259e+02 -3.5888615e+03 - 4.0568915e+02 3.8497621e+02 -3.5887116e+03 - 4.0756931e+02 3.8199971e+02 -3.5885197e+03 - 4.0921050e+02 3.7900116e+02 -3.5882862e+03 - 4.1058436e+02 3.7599816e+02 -3.5880119e+03 - 4.1166071e+02 3.7300791e+02 -3.5876975e+03 - 4.1240732e+02 3.7004723e+02 -3.5873442e+03 - 4.1278977e+02 3.6713264e+02 -3.5869529e+03 - 4.1277112e+02 3.6428034e+02 -3.5865249e+03 - 4.1231178e+02 3.6150625e+02 -3.5860617e+03 - 4.1136919e+02 3.5882600e+02 -3.5855647e+03 - 4.0989764e+02 3.5625492e+02 -3.5850359e+03 - 4.0784797e+02 3.5380795e+02 -3.5844770e+03 - 4.0516741e+02 3.5149961e+02 -3.5838903e+03 - 4.0179934e+02 3.4934385e+02 -3.5832780e+03 - 3.9768318e+02 3.4735397e+02 -3.5826428e+03 - 3.9275431e+02 3.4554236e+02 -3.5819873e+03 - 3.8694413e+02 3.4392032e+02 -3.5813146e+03 - 3.8018025e+02 3.4249779e+02 -3.5806280e+03 - 3.7238689e+02 3.4128294e+02 -3.5799310e+03 - 3.6348557e+02 3.4028188e+02 -3.5792276e+03 - 3.5339609e+02 3.3949812e+02 -3.5785217e+03 - 3.4203796e+02 3.3893213e+02 -3.5778178e+03 - 3.2933232e+02 3.3858083e+02 -3.5771208e+03 - 3.1520446e+02 3.3843706e+02 -3.5764355e+03 - 2.9958690e+02 3.3848908e+02 -3.5757673e+03 - 2.8242318e+02 3.3872022e+02 -3.5751218e+03 - 2.6367227e+02 3.3910863e+02 -3.5745047e+03 - 2.4331343e+02 3.3962727e+02 -3.5739219e+03 - 2.2135140e+02 3.4024425e+02 -3.5733795e+03 - 1.9782145e+02 3.4092351e+02 -3.5728834e+03 - 1.7279400e+02 3.4162593e+02 -3.5724394e+03 - 1.4637798e+02 3.4231095e+02 -3.5720529e+03 - 1.1872268e+02 3.4293851e+02 -3.5717291e+03 - 9.0017119e+01 3.4347130e+02 -3.5714723e+03 - 6.0486954e+01 3.4387714e+02 -3.5712861e+03 - 3.0388457e+01 3.4413116e+02 -3.5711733e+03 - 0.0000000e+00 3.4421762e+02 -3.5711355e+03 - -3.0388457e+01 3.4413116e+02 -3.5711733e+03 - -6.0486954e+01 3.4387714e+02 -3.5712861e+03 - -9.0017119e+01 3.4347130e+02 -3.5714723e+03 - -1.1872268e+02 3.4293851e+02 -3.5717291e+03 - -1.4637798e+02 3.4231095e+02 -3.5720529e+03 - -1.7279400e+02 3.4162593e+02 -3.5724394e+03 - -1.9782145e+02 3.4092351e+02 -3.5728834e+03 - -2.2135140e+02 3.4024425e+02 -3.5733795e+03 - -2.4331343e+02 3.3962727e+02 -3.5739219e+03 - -2.6367227e+02 3.3910863e+02 -3.5745047e+03 - -2.8242318e+02 3.3872022e+02 -3.5751218e+03 - -2.9958690e+02 3.3848908e+02 -3.5757673e+03 - -3.1520446e+02 3.3843706e+02 -3.5764355e+03 - -3.2933232e+02 3.3858083e+02 -3.5771208e+03 - -3.4203796e+02 3.3893213e+02 -3.5778178e+03 - -3.5339609e+02 3.3949812e+02 -3.5785217e+03 - -3.6348557e+02 3.4028188e+02 -3.5792276e+03 - -3.7238689e+02 3.4128294e+02 -3.5799310e+03 - -3.8018025e+02 3.4249779e+02 -3.5806280e+03 - -3.8694413e+02 3.4392032e+02 -3.5813146e+03 - -3.9275431e+02 3.4554236e+02 -3.5819873e+03 - -3.9768318e+02 3.4735397e+02 -3.5826428e+03 - -4.0179934e+02 3.4934385e+02 -3.5832780e+03 - -4.0516741e+02 3.5149961e+02 -3.5838903e+03 - -4.0784797e+02 3.5380795e+02 -3.5844770e+03 - -4.0989764e+02 3.5625492e+02 -3.5850359e+03 - -4.1136919e+02 3.5882600e+02 -3.5855647e+03 - -4.1231178e+02 3.6150625e+02 -3.5860617e+03 - -4.1277112e+02 3.6428034e+02 -3.5865249e+03 - -4.1278977e+02 3.6713264e+02 -3.5869529e+03 - -4.1240732e+02 3.7004723e+02 -3.5873442e+03 - -4.1166071e+02 3.7300791e+02 -3.5876975e+03 - -4.1058436e+02 3.7599816e+02 -3.5880119e+03 - -4.0921050e+02 3.7900116e+02 -3.5882862e+03 - -4.0756931e+02 3.8199971e+02 -3.5885197e+03 - -4.0568915e+02 3.8497621e+02 -3.5887116e+03 - -4.0359671e+02 3.8791259e+02 -3.5888615e+03 - -4.0131723e+02 3.9079023e+02 -3.5889689e+03 - -3.9887461e+02 3.9358989e+02 -3.5890334e+03 - -3.9629160e+02 3.9629160e+02 -3.5890550e+03 - -3.9358989e+02 3.9887461e+02 -3.5890334e+03 - -3.9079023e+02 4.0131723e+02 -3.5889689e+03 - -3.8791259e+02 4.0359671e+02 -3.5888615e+03 - -3.8497621e+02 4.0568915e+02 -3.5887116e+03 - -3.8199971e+02 4.0756931e+02 -3.5885197e+03 - -3.7900116e+02 4.0921050e+02 -3.5882862e+03 - -3.7599816e+02 4.1058436e+02 -3.5880119e+03 - -3.7300791e+02 4.1166071e+02 -3.5876975e+03 - -3.7004723e+02 4.1240732e+02 -3.5873442e+03 - -3.6713264e+02 4.1278977e+02 -3.5869529e+03 - -3.6428034e+02 4.1277112e+02 -3.5865249e+03 - -3.6150625e+02 4.1231178e+02 -3.5860617e+03 - -3.5882600e+02 4.1136919e+02 -3.5855647e+03 - -3.5625492e+02 4.0989764e+02 -3.5850359e+03 - -3.5380795e+02 4.0784797e+02 -3.5844770e+03 - -3.5149961e+02 4.0516741e+02 -3.5838903e+03 - -3.4934385e+02 4.0179934e+02 -3.5832780e+03 - -3.4735397e+02 3.9768318e+02 -3.5826428e+03 - -3.4554236e+02 3.9275431e+02 -3.5819873e+03 - -3.4392032e+02 3.8694413e+02 -3.5813146e+03 - -3.4249779e+02 3.8018025e+02 -3.5806280e+03 - -3.4128294e+02 3.7238689e+02 -3.5799310e+03 - -3.4028188e+02 3.6348557e+02 -3.5792276e+03 - -3.3949812e+02 3.5339609e+02 -3.5785217e+03 - -3.3893213e+02 3.4203796e+02 -3.5778178e+03 - -3.3858083e+02 3.2933232e+02 -3.5771208e+03 - -3.3843706e+02 3.1520446e+02 -3.5764355e+03 - -3.3848908e+02 2.9958690e+02 -3.5757673e+03 - -3.3872022e+02 2.8242318e+02 -3.5751218e+03 - -3.3910863e+02 2.6367227e+02 -3.5745047e+03 - -3.3962727e+02 2.4331343e+02 -3.5739219e+03 - -3.4024425e+02 2.2135140e+02 -3.5733795e+03 - -3.4092351e+02 1.9782145e+02 -3.5728834e+03 - -3.4162593e+02 1.7279400e+02 -3.5724394e+03 - -3.4231095e+02 1.4637798e+02 -3.5720529e+03 - -3.4293851e+02 1.1872268e+02 -3.5717291e+03 - -3.4347130e+02 9.0017119e+01 -3.5714723e+03 - -3.4387714e+02 6.0486954e+01 -3.5712861e+03 - -3.4413116e+02 3.0388457e+01 -3.5711733e+03 - -3.4421762e+02 -1.2033568e-08 -3.5711355e+03 - -3.3761689e+02 -2.4067136e-09 -3.5700395e+03 - -3.3753656e+02 -2.7794088e+01 -3.5700700e+03 - -3.3730033e+02 -5.5332080e+01 -3.5701609e+03 - -3.3692216e+02 -8.2367940e+01 -3.5703111e+03 - -3.3642413e+02 -1.0867483e+02 -3.5705183e+03 - -3.3583486e+02 -1.3405256e+02 -3.5707797e+03 - -3.3518752e+02 -1.5833285e+02 -3.5710920e+03 - -3.3451778e+02 -1.8138214e+02 -3.5714511e+03 - -3.3386182e+02 -2.0310220e+02 -3.5718527e+03 - -3.3325454e+02 -2.2342865e+02 -3.5722923e+03 - -3.3272817e+02 -2.4232807e+02 -3.5727651e+03 - -3.3231125e+02 -2.5979412e+02 -3.5732664e+03 - -3.3202798e+02 -2.7584308e+02 -3.5737914e+03 - -3.3189791e+02 -2.9050940e+02 -3.5743355e+03 - -3.3193596e+02 -3.0384144e+02 -3.5748942e+03 - -3.3215259e+02 -3.1589756e+02 -3.5754631e+03 - -3.3255414e+02 -3.2674281e+02 -3.5760382e+03 - -3.3314324e+02 -3.3644617e+02 -3.5766156e+03 - -3.3391930e+02 -3.4507829e+02 -3.5771916e+03 - -3.3487895e+02 -3.5270975e+02 -3.5777629e+03 - -3.3601651e+02 -3.5940983e+02 -3.5783263e+03 - -3.3732432e+02 -3.6524552e+02 -3.5788787e+03 - -3.3879320e+02 -3.7028092e+02 -3.5794175e+03 - -3.4041269e+02 -3.7457690e+02 -3.5799401e+03 - -3.4217131e+02 -3.7819083e+02 -3.5804441e+03 - -3.4405682e+02 -3.8117657e+02 -3.5809275e+03 - -3.4605632e+02 -3.8358450e+02 -3.5813883e+03 - -3.4815647e+02 -3.8546162e+02 -3.5818246e+03 - -3.5034350e+02 -3.8685172e+02 -3.5822348e+03 - -3.5260336e+02 -3.8779557e+02 -3.5826173e+03 - -3.5492171e+02 -3.8833114e+02 -3.5829710e+03 - -3.5728396e+02 -3.8849376e+02 -3.5832944e+03 - -3.5967531e+02 -3.8831641e+02 -3.5835867e+03 - -3.6208070e+02 -3.8782985e+02 -3.5838467e+03 - -3.6448479e+02 -3.8706289e+02 -3.5840737e+03 - -3.6687196e+02 -3.8604251e+02 -3.5842670e+03 - -3.6922624e+02 -3.8479409e+02 -3.5844259e+03 - -3.7153124e+02 -3.8334153e+02 -3.5845500e+03 - -3.7377014e+02 -3.8170746e+02 -3.5846389e+03 - -3.7592556e+02 -3.7991332e+02 -3.5846924e+03 - -3.7797952e+02 -3.7797952e+02 -3.5847102e+03 - -3.7991332e+02 -3.7592556e+02 -3.5846924e+03 - -3.8170746e+02 -3.7377014e+02 -3.5846389e+03 - -3.8334153e+02 -3.7153124e+02 -3.5845500e+03 - -3.8479409e+02 -3.6922624e+02 -3.5844259e+03 - -3.8604251e+02 -3.6687196e+02 -3.5842670e+03 - -3.8706289e+02 -3.6448479e+02 -3.5840737e+03 - -3.8782985e+02 -3.6208070e+02 -3.5838467e+03 - -3.8831641e+02 -3.5967531e+02 -3.5835867e+03 - -3.8849376e+02 -3.5728396e+02 -3.5832944e+03 - -3.8833114e+02 -3.5492171e+02 -3.5829710e+03 - -3.8779557e+02 -3.5260336e+02 -3.5826173e+03 - -3.8685172e+02 -3.5034350e+02 -3.5822348e+03 - -3.8546162e+02 -3.4815647e+02 -3.5818246e+03 - -3.8358450e+02 -3.4605632e+02 -3.5813883e+03 - -3.8117657e+02 -3.4405682e+02 -3.5809275e+03 - -3.7819083e+02 -3.4217131e+02 -3.5804441e+03 - -3.7457690e+02 -3.4041269e+02 -3.5799401e+03 - -3.7028092e+02 -3.3879320e+02 -3.5794175e+03 - -3.6524552e+02 -3.3732432e+02 -3.5788787e+03 - -3.5940983e+02 -3.3601651e+02 -3.5783263e+03 - -3.5270975e+02 -3.3487895e+02 -3.5777629e+03 - -3.4507829e+02 -3.3391930e+02 -3.5771916e+03 - -3.3644617e+02 -3.3314324e+02 -3.5766156e+03 - -3.2674281e+02 -3.3255414e+02 -3.5760382e+03 - -3.1589756e+02 -3.3215259e+02 -3.5754631e+03 - -3.0384144e+02 -3.3193596e+02 -3.5748942e+03 - -2.9050940e+02 -3.3189791e+02 -3.5743355e+03 - -2.7584308e+02 -3.3202798e+02 -3.5737914e+03 - -2.5979412e+02 -3.3231125e+02 -3.5732664e+03 - -2.4232807e+02 -3.3272817e+02 -3.5727651e+03 - -2.2342865e+02 -3.3325454e+02 -3.5722923e+03 - -2.0310220e+02 -3.3386182e+02 -3.5718527e+03 - -1.8138214e+02 -3.3451778e+02 -3.5714511e+03 - -1.5833285e+02 -3.3518752e+02 -3.5710920e+03 - -1.3405256e+02 -3.3583486e+02 -3.5707797e+03 - -1.0867483e+02 -3.3642413e+02 -3.5705183e+03 - -8.2367940e+01 -3.3692216e+02 -3.5703111e+03 - -5.5332080e+01 -3.3730033e+02 -3.5701609e+03 - -2.7794088e+01 -3.3753656e+02 -3.5700700e+03 - 0.0000000e+00 -3.3761689e+02 -3.5700395e+03 - 2.7794088e+01 -3.3753656e+02 -3.5700700e+03 - 5.5332080e+01 -3.3730033e+02 -3.5701609e+03 - 8.2367940e+01 -3.3692216e+02 -3.5703111e+03 - 1.0867483e+02 -3.3642413e+02 -3.5705183e+03 - 1.3405256e+02 -3.3583486e+02 -3.5707797e+03 - 1.5833285e+02 -3.3518752e+02 -3.5710920e+03 - 1.8138214e+02 -3.3451778e+02 -3.5714511e+03 - 2.0310220e+02 -3.3386182e+02 -3.5718527e+03 - 2.2342865e+02 -3.3325454e+02 -3.5722923e+03 - 2.4232807e+02 -3.3272817e+02 -3.5727651e+03 - 2.5979412e+02 -3.3231125e+02 -3.5732664e+03 - 2.7584308e+02 -3.3202798e+02 -3.5737914e+03 - 2.9050940e+02 -3.3189791e+02 -3.5743355e+03 - 3.0384144e+02 -3.3193596e+02 -3.5748942e+03 - 3.1589756e+02 -3.3215259e+02 -3.5754631e+03 - 3.2674281e+02 -3.3255414e+02 -3.5760382e+03 - 3.3644617e+02 -3.3314324e+02 -3.5766156e+03 - 3.4507829e+02 -3.3391930e+02 -3.5771916e+03 - 3.5270975e+02 -3.3487895e+02 -3.5777629e+03 - 3.5940983e+02 -3.3601651e+02 -3.5783263e+03 - 3.6524552e+02 -3.3732432e+02 -3.5788787e+03 - 3.7028092e+02 -3.3879320e+02 -3.5794175e+03 - 3.7457690e+02 -3.4041269e+02 -3.5799401e+03 - 3.7819083e+02 -3.4217131e+02 -3.5804441e+03 - 3.8117657e+02 -3.4405682e+02 -3.5809275e+03 - 3.8358450e+02 -3.4605632e+02 -3.5813883e+03 - 3.8546162e+02 -3.4815647e+02 -3.5818246e+03 - 3.8685172e+02 -3.5034350e+02 -3.5822348e+03 - 3.8779557e+02 -3.5260336e+02 -3.5826173e+03 - 3.8833114e+02 -3.5492171e+02 -3.5829710e+03 - 3.8849376e+02 -3.5728396e+02 -3.5832944e+03 - 3.8831641e+02 -3.5967531e+02 -3.5835867e+03 - 3.8782985e+02 -3.6208070e+02 -3.5838467e+03 - 3.8706289e+02 -3.6448479e+02 -3.5840737e+03 - 3.8604251e+02 -3.6687196e+02 -3.5842670e+03 - 3.8479409e+02 -3.6922624e+02 -3.5844259e+03 - 3.8334153e+02 -3.7153124e+02 -3.5845500e+03 - 3.8170746e+02 -3.7377014e+02 -3.5846389e+03 - 3.7991332e+02 -3.7592556e+02 -3.5846924e+03 - 3.7797952e+02 -3.7797952e+02 -3.5847102e+03 - 3.7592556e+02 -3.7991332e+02 -3.5846924e+03 - 3.7377014e+02 -3.8170746e+02 -3.5846389e+03 - 3.7153124e+02 -3.8334153e+02 -3.5845500e+03 - 3.6922624e+02 -3.8479409e+02 -3.5844259e+03 - 3.6687196e+02 -3.8604251e+02 -3.5842670e+03 - 3.6448479e+02 -3.8706289e+02 -3.5840737e+03 - 3.6208070e+02 -3.8782985e+02 -3.5838467e+03 - 3.5967531e+02 -3.8831641e+02 -3.5835867e+03 - 3.5728396e+02 -3.8849376e+02 -3.5832944e+03 - 3.5492171e+02 -3.8833114e+02 -3.5829710e+03 - 3.5260336e+02 -3.8779557e+02 -3.5826173e+03 - 3.5034350e+02 -3.8685172e+02 -3.5822348e+03 - 3.4815647e+02 -3.8546162e+02 -3.5818246e+03 - 3.4605632e+02 -3.8358450e+02 -3.5813883e+03 - 3.4405682e+02 -3.8117657e+02 -3.5809275e+03 - 3.4217131e+02 -3.7819083e+02 -3.5804441e+03 - 3.4041269e+02 -3.7457690e+02 -3.5799401e+03 - 3.3879320e+02 -3.7028092e+02 -3.5794175e+03 - 3.3732432e+02 -3.6524552e+02 -3.5788787e+03 - 3.3601651e+02 -3.5940983e+02 -3.5783263e+03 - 3.3487895e+02 -3.5270975e+02 -3.5777629e+03 - 3.3391930e+02 -3.4507829e+02 -3.5771916e+03 - 3.3314324e+02 -3.3644617e+02 -3.5766156e+03 - 3.3255414e+02 -3.2674281e+02 -3.5760382e+03 - 3.3215259e+02 -3.1589756e+02 -3.5754631e+03 - 3.3193596e+02 -3.0384144e+02 -3.5748942e+03 - 3.3189791e+02 -2.9050940e+02 -3.5743355e+03 - 3.3202798e+02 -2.7584308e+02 -3.5737914e+03 - 3.3231125e+02 -2.5979412e+02 -3.5732664e+03 - 3.3272817e+02 -2.4232807e+02 -3.5727651e+03 - 3.3325454e+02 -2.2342865e+02 -3.5722923e+03 - 3.3386182e+02 -2.0310220e+02 -3.5718527e+03 - 3.3451778e+02 -1.8138214e+02 -3.5714511e+03 - 3.3518752e+02 -1.5833285e+02 -3.5710920e+03 - 3.3583486e+02 -1.3405256e+02 -3.5707797e+03 - 3.3642413e+02 -1.0867483e+02 -3.5705183e+03 - 3.3692216e+02 -8.2367940e+01 -3.5703111e+03 - 3.3730033e+02 -5.5332080e+01 -3.5701609e+03 - 3.3753656e+02 -2.7794088e+01 -3.5700700e+03 - 3.3761689e+02 -4.8134273e-09 -3.5700395e+03 - 3.3753656e+02 2.7794088e+01 -3.5700700e+03 - 3.3730033e+02 5.5332080e+01 -3.5701609e+03 - 3.3692216e+02 8.2367940e+01 -3.5703111e+03 - 3.3642413e+02 1.0867483e+02 -3.5705183e+03 - 3.3583486e+02 1.3405256e+02 -3.5707797e+03 - 3.3518752e+02 1.5833285e+02 -3.5710920e+03 - 3.3451778e+02 1.8138214e+02 -3.5714511e+03 - 3.3386182e+02 2.0310220e+02 -3.5718527e+03 - 3.3325454e+02 2.2342865e+02 -3.5722923e+03 - 3.3272817e+02 2.4232807e+02 -3.5727651e+03 - 3.3231125e+02 2.5979412e+02 -3.5732664e+03 - 3.3202798e+02 2.7584308e+02 -3.5737914e+03 - 3.3189791e+02 2.9050940e+02 -3.5743355e+03 - 3.3193596e+02 3.0384144e+02 -3.5748942e+03 - 3.3215259e+02 3.1589756e+02 -3.5754631e+03 - 3.3255414e+02 3.2674281e+02 -3.5760382e+03 - 3.3314324e+02 3.3644617e+02 -3.5766156e+03 - 3.3391930e+02 3.4507829e+02 -3.5771916e+03 - 3.3487895e+02 3.5270975e+02 -3.5777629e+03 - 3.3601651e+02 3.5940983e+02 -3.5783263e+03 - 3.3732432e+02 3.6524552e+02 -3.5788787e+03 - 3.3879320e+02 3.7028092e+02 -3.5794175e+03 - 3.4041269e+02 3.7457690e+02 -3.5799401e+03 - 3.4217131e+02 3.7819083e+02 -3.5804441e+03 - 3.4405682e+02 3.8117657e+02 -3.5809275e+03 - 3.4605632e+02 3.8358450e+02 -3.5813883e+03 - 3.4815647e+02 3.8546162e+02 -3.5818246e+03 - 3.5034350e+02 3.8685172e+02 -3.5822348e+03 - 3.5260336e+02 3.8779557e+02 -3.5826173e+03 - 3.5492171e+02 3.8833114e+02 -3.5829710e+03 - 3.5728396e+02 3.8849376e+02 -3.5832944e+03 - 3.5967531e+02 3.8831641e+02 -3.5835867e+03 - 3.6208070e+02 3.8782985e+02 -3.5838467e+03 - 3.6448479e+02 3.8706289e+02 -3.5840737e+03 - 3.6687196e+02 3.8604251e+02 -3.5842670e+03 - 3.6922624e+02 3.8479409e+02 -3.5844259e+03 - 3.7153124e+02 3.8334153e+02 -3.5845500e+03 - 3.7377014e+02 3.8170746e+02 -3.5846389e+03 - 3.7592556e+02 3.7991332e+02 -3.5846924e+03 - 3.7797952e+02 3.7797952e+02 -3.5847102e+03 - 3.7991332e+02 3.7592556e+02 -3.5846924e+03 - 3.8170746e+02 3.7377014e+02 -3.5846389e+03 - 3.8334153e+02 3.7153124e+02 -3.5845500e+03 - 3.8479409e+02 3.6922624e+02 -3.5844259e+03 - 3.8604251e+02 3.6687196e+02 -3.5842670e+03 - 3.8706289e+02 3.6448479e+02 -3.5840737e+03 - 3.8782985e+02 3.6208070e+02 -3.5838467e+03 - 3.8831641e+02 3.5967531e+02 -3.5835867e+03 - 3.8849376e+02 3.5728396e+02 -3.5832944e+03 - 3.8833114e+02 3.5492171e+02 -3.5829710e+03 - 3.8779557e+02 3.5260336e+02 -3.5826173e+03 - 3.8685172e+02 3.5034350e+02 -3.5822348e+03 - 3.8546162e+02 3.4815647e+02 -3.5818246e+03 - 3.8358450e+02 3.4605632e+02 -3.5813883e+03 - 3.8117657e+02 3.4405682e+02 -3.5809275e+03 - 3.7819083e+02 3.4217131e+02 -3.5804441e+03 - 3.7457690e+02 3.4041269e+02 -3.5799401e+03 - 3.7028092e+02 3.3879320e+02 -3.5794175e+03 - 3.6524552e+02 3.3732432e+02 -3.5788787e+03 - 3.5940983e+02 3.3601651e+02 -3.5783263e+03 - 3.5270975e+02 3.3487895e+02 -3.5777629e+03 - 3.4507829e+02 3.3391930e+02 -3.5771916e+03 - 3.3644617e+02 3.3314324e+02 -3.5766156e+03 - 3.2674281e+02 3.3255414e+02 -3.5760382e+03 - 3.1589756e+02 3.3215259e+02 -3.5754631e+03 - 3.0384144e+02 3.3193596e+02 -3.5748942e+03 - 2.9050940e+02 3.3189791e+02 -3.5743355e+03 - 2.7584308e+02 3.3202798e+02 -3.5737914e+03 - 2.5979412e+02 3.3231125e+02 -3.5732664e+03 - 2.4232807e+02 3.3272817e+02 -3.5727651e+03 - 2.2342865e+02 3.3325454e+02 -3.5722923e+03 - 2.0310220e+02 3.3386182e+02 -3.5718527e+03 - 1.8138214e+02 3.3451778e+02 -3.5714511e+03 - 1.5833285e+02 3.3518752e+02 -3.5710920e+03 - 1.3405256e+02 3.3583486e+02 -3.5707797e+03 - 1.0867483e+02 3.3642413e+02 -3.5705183e+03 - 8.2367940e+01 3.3692216e+02 -3.5703111e+03 - 5.5332080e+01 3.3730033e+02 -3.5701609e+03 - 2.7794088e+01 3.3753656e+02 -3.5700700e+03 - 2.4067136e-09 3.3761689e+02 -3.5700395e+03 - -2.7794088e+01 3.3753656e+02 -3.5700700e+03 - -5.5332080e+01 3.3730033e+02 -3.5701609e+03 - -8.2367940e+01 3.3692216e+02 -3.5703111e+03 - -1.0867483e+02 3.3642413e+02 -3.5705183e+03 - -1.3405256e+02 3.3583486e+02 -3.5707797e+03 - -1.5833285e+02 3.3518752e+02 -3.5710920e+03 - -1.8138214e+02 3.3451778e+02 -3.5714511e+03 - -2.0310220e+02 3.3386182e+02 -3.5718527e+03 - -2.2342865e+02 3.3325454e+02 -3.5722923e+03 - -2.4232807e+02 3.3272817e+02 -3.5727651e+03 - -2.5979412e+02 3.3231125e+02 -3.5732664e+03 - -2.7584308e+02 3.3202798e+02 -3.5737914e+03 - -2.9050940e+02 3.3189791e+02 -3.5743355e+03 - -3.0384144e+02 3.3193596e+02 -3.5748942e+03 - -3.1589756e+02 3.3215259e+02 -3.5754631e+03 - -3.2674281e+02 3.3255414e+02 -3.5760382e+03 - -3.3644617e+02 3.3314324e+02 -3.5766156e+03 - -3.4507829e+02 3.3391930e+02 -3.5771916e+03 - -3.5270975e+02 3.3487895e+02 -3.5777629e+03 - -3.5940983e+02 3.3601651e+02 -3.5783263e+03 - -3.6524552e+02 3.3732432e+02 -3.5788787e+03 - -3.7028092e+02 3.3879320e+02 -3.5794175e+03 - -3.7457690e+02 3.4041269e+02 -3.5799401e+03 - -3.7819083e+02 3.4217131e+02 -3.5804441e+03 - -3.8117657e+02 3.4405682e+02 -3.5809275e+03 - -3.8358450e+02 3.4605632e+02 -3.5813883e+03 - -3.8546162e+02 3.4815647e+02 -3.5818246e+03 - -3.8685172e+02 3.5034350e+02 -3.5822348e+03 - -3.8779557e+02 3.5260336e+02 -3.5826173e+03 - -3.8833114e+02 3.5492171e+02 -3.5829710e+03 - -3.8849376e+02 3.5728396e+02 -3.5832944e+03 - -3.8831641e+02 3.5967531e+02 -3.5835867e+03 - -3.8782985e+02 3.6208070e+02 -3.5838467e+03 - -3.8706289e+02 3.6448479e+02 -3.5840737e+03 - -3.8604251e+02 3.6687196e+02 -3.5842670e+03 - -3.8479409e+02 3.6922624e+02 -3.5844259e+03 - -3.8334153e+02 3.7153124e+02 -3.5845500e+03 - -3.8170746e+02 3.7377014e+02 -3.5846389e+03 - -3.7991332e+02 3.7592556e+02 -3.5846924e+03 - -3.7797952e+02 3.7797952e+02 -3.5847102e+03 - -3.7592556e+02 3.7991332e+02 -3.5846924e+03 - -3.7377014e+02 3.8170746e+02 -3.5846389e+03 - -3.7153124e+02 3.8334153e+02 -3.5845500e+03 - -3.6922624e+02 3.8479409e+02 -3.5844259e+03 - -3.6687196e+02 3.8604251e+02 -3.5842670e+03 - -3.6448479e+02 3.8706289e+02 -3.5840737e+03 - -3.6208070e+02 3.8782985e+02 -3.5838467e+03 - -3.5967531e+02 3.8831641e+02 -3.5835867e+03 - -3.5728396e+02 3.8849376e+02 -3.5832944e+03 - -3.5492171e+02 3.8833114e+02 -3.5829710e+03 - -3.5260336e+02 3.8779557e+02 -3.5826173e+03 - -3.5034350e+02 3.8685172e+02 -3.5822348e+03 - -3.4815647e+02 3.8546162e+02 -3.5818246e+03 - -3.4605632e+02 3.8358450e+02 -3.5813883e+03 - -3.4405682e+02 3.8117657e+02 -3.5809275e+03 - -3.4217131e+02 3.7819083e+02 -3.5804441e+03 - -3.4041269e+02 3.7457690e+02 -3.5799401e+03 - -3.3879320e+02 3.7028092e+02 -3.5794175e+03 - -3.3732432e+02 3.6524552e+02 -3.5788787e+03 - -3.3601651e+02 3.5940983e+02 -3.5783263e+03 - -3.3487895e+02 3.5270975e+02 -3.5777629e+03 - -3.3391930e+02 3.4507829e+02 -3.5771916e+03 - -3.3314324e+02 3.3644617e+02 -3.5766156e+03 - -3.3255414e+02 3.2674281e+02 -3.5760382e+03 - -3.3215259e+02 3.1589756e+02 -3.5754631e+03 - -3.3193596e+02 3.0384144e+02 -3.5748942e+03 - -3.3189791e+02 2.9050940e+02 -3.5743355e+03 - -3.3202798e+02 2.7584308e+02 -3.5737914e+03 - -3.3231125e+02 2.5979412e+02 -3.5732664e+03 - -3.3272817e+02 2.4232807e+02 -3.5727651e+03 - -3.3325454e+02 2.2342865e+02 -3.5722923e+03 - -3.3386182e+02 2.0310220e+02 -3.5718527e+03 - -3.3451778e+02 1.8138214e+02 -3.5714511e+03 - -3.3518752e+02 1.5833285e+02 -3.5710920e+03 - -3.3583486e+02 1.3405256e+02 -3.5707797e+03 - -3.3642413e+02 1.0867483e+02 -3.5705183e+03 - -3.3692216e+02 8.2367940e+01 -3.5703111e+03 - -3.3730033e+02 5.5332080e+01 -3.5701609e+03 - -3.3753656e+02 2.7794088e+01 -3.5700700e+03 - -3.3761689e+02 4.8134273e-09 -3.5700395e+03 - -3.2155341e+02 2.4067136e-09 -3.5676723e+03 - -3.2148047e+02 -2.4969217e+01 -3.5676961e+03 - -3.2126583e+02 -4.9715555e+01 -3.5677672e+03 - -3.2092167e+02 -7.4024756e+01 -3.5678845e+03 - -3.2046729e+02 -9.7699029e+01 -3.5680465e+03 - -3.1992770e+02 -1.2056346e+02 -3.5682510e+03 - -3.1933193e+02 -1.4247058e+02 -3.5684955e+03 - -3.1871121e+02 -1.6330285e+02 -3.5687768e+03 - -3.1809726e+02 -1.8297319e+02 -3.5690917e+03 - -3.1752069e+02 -2.0142391e+02 -3.5694368e+03 - -3.1700982e+02 -2.1862416e+02 -3.5698082e+03 - -3.1658970e+02 -2.3456671e+02 -3.5702025e+03 - -3.1628162e+02 -2.4926414e+02 -3.5706158e+03 - -3.1610274e+02 -2.6274502e+02 -3.5710446e+03 - -3.1606616e+02 -2.7505021e+02 -3.5714853e+03 - -3.1618101e+02 -2.8622950e+02 -3.5719346e+03 - -3.1645276e+02 -2.9633875e+02 -3.5723893e+03 - -3.1688360e+02 -3.0543738e+02 -3.5728462e+03 - -3.1747284e+02 -3.1358651e+02 -3.5733024e+03 - -3.1821731e+02 -3.2084732e+02 -3.5737553e+03 - -3.1911175e+02 -3.2728000e+02 -3.5742023e+03 - -3.2014916e+02 -3.3294285e+02 -3.5746410e+03 - -3.2132118e+02 -3.3789177e+02 -3.5750691e+03 - -3.2261827e+02 -3.4217985e+02 -3.5754848e+03 - -3.2403001e+02 -3.4585724e+02 -3.5758859e+03 - -3.2554531e+02 -3.4897102e+02 -3.5762709e+03 - -3.2715248e+02 -3.5156530e+02 -3.5766380e+03 - -3.2883943e+02 -3.5368122e+02 -3.5769859e+03 - -3.3059375e+02 -3.5535718e+02 -3.5773131e+03 - -3.3240275e+02 -3.5662891e+02 -3.5776185e+03 - -3.3425350e+02 -3.5752970e+02 -3.5779008e+03 - -3.3613290e+02 -3.5809057e+02 -3.5781592e+03 - -3.3802764e+02 -3.5834045e+02 -3.5783927e+03 - -3.3992421e+02 -3.5830638e+02 -3.5786005e+03 - -3.4180891e+02 -3.5801365e+02 -3.5787820e+03 - -3.4366777e+02 -3.5748598e+02 -3.5789366e+03 - -3.4548654e+02 -3.5674570e+02 -3.5790637e+03 - -3.4725065e+02 -3.5581385e+02 -3.5791630e+03 - -3.4894514e+02 -3.5471034e+02 -3.5792341e+03 - -3.5055460e+02 -3.5345408e+02 -3.5792769e+03 - -3.5206309e+02 -3.5206309e+02 -3.5792912e+03 - -3.5345408e+02 -3.5055460e+02 -3.5792769e+03 - -3.5471034e+02 -3.4894514e+02 -3.5792341e+03 - -3.5581385e+02 -3.4725065e+02 -3.5791630e+03 - -3.5674570e+02 -3.4548654e+02 -3.5790637e+03 - -3.5748598e+02 -3.4366777e+02 -3.5789366e+03 - -3.5801365e+02 -3.4180891e+02 -3.5787820e+03 - -3.5830638e+02 -3.3992421e+02 -3.5786005e+03 - -3.5834045e+02 -3.3802764e+02 -3.5783927e+03 - -3.5809057e+02 -3.3613290e+02 -3.5781592e+03 - -3.5752970e+02 -3.3425350e+02 -3.5779008e+03 - -3.5662891e+02 -3.3240275e+02 -3.5776185e+03 - -3.5535718e+02 -3.3059375e+02 -3.5773131e+03 - -3.5368122e+02 -3.2883943e+02 -3.5769859e+03 - -3.5156530e+02 -3.2715248e+02 -3.5766380e+03 - -3.4897102e+02 -3.2554531e+02 -3.5762709e+03 - -3.4585724e+02 -3.2403001e+02 -3.5758859e+03 - -3.4217985e+02 -3.2261827e+02 -3.5754848e+03 - -3.3789177e+02 -3.2132118e+02 -3.5750691e+03 - -3.3294285e+02 -3.2014916e+02 -3.5746410e+03 - -3.2728000e+02 -3.1911175e+02 -3.5742023e+03 - -3.2084732e+02 -3.1821731e+02 -3.5737553e+03 - -3.1358651e+02 -3.1747284e+02 -3.5733024e+03 - -3.0543738e+02 -3.1688360e+02 -3.5728462e+03 - -2.9633875e+02 -3.1645276e+02 -3.5723893e+03 - -2.8622950e+02 -3.1618101e+02 -3.5719346e+03 - -2.7505021e+02 -3.1606616e+02 -3.5714853e+03 - -2.6274502e+02 -3.1610274e+02 -3.5710446e+03 - -2.4926414e+02 -3.1628162e+02 -3.5706158e+03 - -2.3456671e+02 -3.1658970e+02 -3.5702025e+03 - -2.1862416e+02 -3.1700982e+02 -3.5698082e+03 - -2.0142391e+02 -3.1752069e+02 -3.5694368e+03 - -1.8297319e+02 -3.1809726e+02 -3.5690917e+03 - -1.6330285e+02 -3.1871121e+02 -3.5687768e+03 - -1.4247058e+02 -3.1933193e+02 -3.5684955e+03 - -1.2056346e+02 -3.1992770e+02 -3.5682510e+03 - -9.7699029e+01 -3.2046729e+02 -3.5680465e+03 - -7.4024756e+01 -3.2092167e+02 -3.5678845e+03 - -4.9715555e+01 -3.2126583e+02 -3.5677672e+03 - -2.4969217e+01 -3.2148047e+02 -3.5676961e+03 - 2.4067136e-09 -3.2155341e+02 -3.5676723e+03 - 2.4969217e+01 -3.2148047e+02 -3.5676961e+03 - 4.9715555e+01 -3.2126583e+02 -3.5677672e+03 - 7.4024756e+01 -3.2092167e+02 -3.5678845e+03 - 9.7699029e+01 -3.2046729e+02 -3.5680465e+03 - 1.2056346e+02 -3.1992770e+02 -3.5682510e+03 - 1.4247058e+02 -3.1933193e+02 -3.5684955e+03 - 1.6330285e+02 -3.1871121e+02 -3.5687768e+03 - 1.8297319e+02 -3.1809726e+02 -3.5690917e+03 - 2.0142391e+02 -3.1752069e+02 -3.5694368e+03 - 2.1862416e+02 -3.1700982e+02 -3.5698082e+03 - 2.3456671e+02 -3.1658970e+02 -3.5702025e+03 - 2.4926414e+02 -3.1628162e+02 -3.5706158e+03 - 2.6274502e+02 -3.1610274e+02 -3.5710446e+03 - 2.7505021e+02 -3.1606616e+02 -3.5714853e+03 - 2.8622950e+02 -3.1618101e+02 -3.5719346e+03 - 2.9633875e+02 -3.1645276e+02 -3.5723893e+03 - 3.0543738e+02 -3.1688360e+02 -3.5728462e+03 - 3.1358651e+02 -3.1747284e+02 -3.5733024e+03 - 3.2084732e+02 -3.1821731e+02 -3.5737553e+03 - 3.2728000e+02 -3.1911175e+02 -3.5742023e+03 - 3.3294285e+02 -3.2014916e+02 -3.5746410e+03 - 3.3789177e+02 -3.2132118e+02 -3.5750691e+03 - 3.4217985e+02 -3.2261827e+02 -3.5754848e+03 - 3.4585724e+02 -3.2403001e+02 -3.5758859e+03 - 3.4897102e+02 -3.2554531e+02 -3.5762709e+03 - 3.5156530e+02 -3.2715248e+02 -3.5766380e+03 - 3.5368122e+02 -3.2883943e+02 -3.5769859e+03 - 3.5535718e+02 -3.3059375e+02 -3.5773131e+03 - 3.5662891e+02 -3.3240275e+02 -3.5776185e+03 - 3.5752970e+02 -3.3425350e+02 -3.5779008e+03 - 3.5809057e+02 -3.3613290e+02 -3.5781592e+03 - 3.5834045e+02 -3.3802764e+02 -3.5783927e+03 - 3.5830638e+02 -3.3992421e+02 -3.5786005e+03 - 3.5801365e+02 -3.4180891e+02 -3.5787820e+03 - 3.5748598e+02 -3.4366777e+02 -3.5789366e+03 - 3.5674570e+02 -3.4548654e+02 -3.5790637e+03 - 3.5581385e+02 -3.4725065e+02 -3.5791630e+03 - 3.5471034e+02 -3.4894514e+02 -3.5792341e+03 - 3.5345408e+02 -3.5055460e+02 -3.5792769e+03 - 3.5206309e+02 -3.5206309e+02 -3.5792912e+03 - 3.5055460e+02 -3.5345408e+02 -3.5792769e+03 - 3.4894514e+02 -3.5471034e+02 -3.5792341e+03 - 3.4725065e+02 -3.5581385e+02 -3.5791630e+03 - 3.4548654e+02 -3.5674570e+02 -3.5790637e+03 - 3.4366777e+02 -3.5748598e+02 -3.5789366e+03 - 3.4180891e+02 -3.5801365e+02 -3.5787820e+03 - 3.3992421e+02 -3.5830638e+02 -3.5786005e+03 - 3.3802764e+02 -3.5834045e+02 -3.5783927e+03 - 3.3613290e+02 -3.5809057e+02 -3.5781592e+03 - 3.3425350e+02 -3.5752970e+02 -3.5779008e+03 - 3.3240275e+02 -3.5662891e+02 -3.5776185e+03 - 3.3059375e+02 -3.5535718e+02 -3.5773131e+03 - 3.2883943e+02 -3.5368122e+02 -3.5769859e+03 - 3.2715248e+02 -3.5156530e+02 -3.5766380e+03 - 3.2554531e+02 -3.4897102e+02 -3.5762709e+03 - 3.2403001e+02 -3.4585724e+02 -3.5758859e+03 - 3.2261827e+02 -3.4217985e+02 -3.5754848e+03 - 3.2132118e+02 -3.3789177e+02 -3.5750691e+03 - 3.2014916e+02 -3.3294285e+02 -3.5746410e+03 - 3.1911175e+02 -3.2728000e+02 -3.5742023e+03 - 3.1821731e+02 -3.2084732e+02 -3.5737553e+03 - 3.1747284e+02 -3.1358651e+02 -3.5733024e+03 - 3.1688360e+02 -3.0543738e+02 -3.5728462e+03 - 3.1645276e+02 -2.9633875e+02 -3.5723893e+03 - 3.1618101e+02 -2.8622950e+02 -3.5719346e+03 - 3.1606616e+02 -2.7505021e+02 -3.5714853e+03 - 3.1610274e+02 -2.6274502e+02 -3.5710446e+03 - 3.1628162e+02 -2.4926414e+02 -3.5706158e+03 - 3.1658970e+02 -2.3456671e+02 -3.5702025e+03 - 3.1700982e+02 -2.1862416e+02 -3.5698082e+03 - 3.1752069e+02 -2.0142391e+02 -3.5694368e+03 - 3.1809726e+02 -1.8297319e+02 -3.5690917e+03 - 3.1871121e+02 -1.6330285e+02 -3.5687768e+03 - 3.1933193e+02 -1.4247058e+02 -3.5684955e+03 - 3.1992770e+02 -1.2056346e+02 -3.5682510e+03 - 3.2046729e+02 -9.7699029e+01 -3.5680465e+03 - 3.2092167e+02 -7.4024756e+01 -3.5678845e+03 - 3.2126583e+02 -4.9715555e+01 -3.5677672e+03 - 3.2148047e+02 -2.4969217e+01 -3.5676961e+03 - 3.2155341e+02 -2.4067136e-09 -3.5676723e+03 - 3.2148047e+02 2.4969217e+01 -3.5676961e+03 - 3.2126583e+02 4.9715555e+01 -3.5677672e+03 - 3.2092167e+02 7.4024756e+01 -3.5678845e+03 - 3.2046729e+02 9.7699029e+01 -3.5680465e+03 - 3.1992770e+02 1.2056346e+02 -3.5682510e+03 - 3.1933193e+02 1.4247058e+02 -3.5684955e+03 - 3.1871121e+02 1.6330285e+02 -3.5687768e+03 - 3.1809726e+02 1.8297319e+02 -3.5690917e+03 - 3.1752069e+02 2.0142391e+02 -3.5694368e+03 - 3.1700982e+02 2.1862416e+02 -3.5698082e+03 - 3.1658970e+02 2.3456671e+02 -3.5702025e+03 - 3.1628162e+02 2.4926414e+02 -3.5706158e+03 - 3.1610274e+02 2.6274502e+02 -3.5710446e+03 - 3.1606616e+02 2.7505021e+02 -3.5714853e+03 - 3.1618101e+02 2.8622950e+02 -3.5719346e+03 - 3.1645276e+02 2.9633875e+02 -3.5723893e+03 - 3.1688360e+02 3.0543738e+02 -3.5728462e+03 - 3.1747284e+02 3.1358651e+02 -3.5733024e+03 - 3.1821731e+02 3.2084732e+02 -3.5737553e+03 - 3.1911175e+02 3.2728000e+02 -3.5742023e+03 - 3.2014916e+02 3.3294285e+02 -3.5746410e+03 - 3.2132118e+02 3.3789177e+02 -3.5750691e+03 - 3.2261827e+02 3.4217985e+02 -3.5754848e+03 - 3.2403001e+02 3.4585724e+02 -3.5758859e+03 - 3.2554531e+02 3.4897102e+02 -3.5762709e+03 - 3.2715248e+02 3.5156530e+02 -3.5766380e+03 - 3.2883943e+02 3.5368122e+02 -3.5769859e+03 - 3.3059375e+02 3.5535718e+02 -3.5773131e+03 - 3.3240275e+02 3.5662891e+02 -3.5776185e+03 - 3.3425350e+02 3.5752970e+02 -3.5779008e+03 - 3.3613290e+02 3.5809057e+02 -3.5781592e+03 - 3.3802764e+02 3.5834045e+02 -3.5783927e+03 - 3.3992421e+02 3.5830638e+02 -3.5786005e+03 - 3.4180891e+02 3.5801365e+02 -3.5787820e+03 - 3.4366777e+02 3.5748598e+02 -3.5789366e+03 - 3.4548654e+02 3.5674570e+02 -3.5790637e+03 - 3.4725065e+02 3.5581385e+02 -3.5791630e+03 - 3.4894514e+02 3.5471034e+02 -3.5792341e+03 - 3.5055460e+02 3.5345408e+02 -3.5792769e+03 - 3.5206309e+02 3.5206309e+02 -3.5792912e+03 - 3.5345408e+02 3.5055460e+02 -3.5792769e+03 - 3.5471034e+02 3.4894514e+02 -3.5792341e+03 - 3.5581385e+02 3.4725065e+02 -3.5791630e+03 - 3.5674570e+02 3.4548654e+02 -3.5790637e+03 - 3.5748598e+02 3.4366777e+02 -3.5789366e+03 - 3.5801365e+02 3.4180891e+02 -3.5787820e+03 - 3.5830638e+02 3.3992421e+02 -3.5786005e+03 - 3.5834045e+02 3.3802764e+02 -3.5783927e+03 - 3.5809057e+02 3.3613290e+02 -3.5781592e+03 - 3.5752970e+02 3.3425350e+02 -3.5779008e+03 - 3.5662891e+02 3.3240275e+02 -3.5776185e+03 - 3.5535718e+02 3.3059375e+02 -3.5773131e+03 - 3.5368122e+02 3.2883943e+02 -3.5769859e+03 - 3.5156530e+02 3.2715248e+02 -3.5766380e+03 - 3.4897102e+02 3.2554531e+02 -3.5762709e+03 - 3.4585724e+02 3.2403001e+02 -3.5758859e+03 - 3.4217985e+02 3.2261827e+02 -3.5754848e+03 - 3.3789177e+02 3.2132118e+02 -3.5750691e+03 - 3.3294285e+02 3.2014916e+02 -3.5746410e+03 - 3.2728000e+02 3.1911175e+02 -3.5742023e+03 - 3.2084732e+02 3.1821731e+02 -3.5737553e+03 - 3.1358651e+02 3.1747284e+02 -3.5733024e+03 - 3.0543738e+02 3.1688360e+02 -3.5728462e+03 - 2.9633875e+02 3.1645276e+02 -3.5723893e+03 - 2.8622950e+02 3.1618101e+02 -3.5719346e+03 - 2.7505021e+02 3.1606616e+02 -3.5714853e+03 - 2.6274502e+02 3.1610274e+02 -3.5710446e+03 - 2.4926414e+02 3.1628162e+02 -3.5706158e+03 - 2.3456671e+02 3.1658970e+02 -3.5702025e+03 - 2.1862416e+02 3.1700982e+02 -3.5698082e+03 - 2.0142391e+02 3.1752069e+02 -3.5694368e+03 - 1.8297319e+02 3.1809726e+02 -3.5690917e+03 - 1.6330285e+02 3.1871121e+02 -3.5687768e+03 - 1.4247058e+02 3.1933193e+02 -3.5684955e+03 - 1.2056346e+02 3.1992770e+02 -3.5682510e+03 - 9.7699029e+01 3.2046729e+02 -3.5680465e+03 - 7.4024756e+01 3.2092167e+02 -3.5678845e+03 - 4.9715555e+01 3.2126583e+02 -3.5677672e+03 - 2.4969217e+01 3.2148047e+02 -3.5676961e+03 - -7.2201409e-09 3.2155341e+02 -3.5676723e+03 - -2.4969217e+01 3.2148047e+02 -3.5676961e+03 - -4.9715555e+01 3.2126583e+02 -3.5677672e+03 - -7.4024756e+01 3.2092167e+02 -3.5678845e+03 - -9.7699029e+01 3.2046729e+02 -3.5680465e+03 - -1.2056346e+02 3.1992770e+02 -3.5682510e+03 - -1.4247058e+02 3.1933193e+02 -3.5684955e+03 - -1.6330285e+02 3.1871121e+02 -3.5687768e+03 - -1.8297319e+02 3.1809726e+02 -3.5690917e+03 - -2.0142391e+02 3.1752069e+02 -3.5694368e+03 - -2.1862416e+02 3.1700982e+02 -3.5698082e+03 - -2.3456671e+02 3.1658970e+02 -3.5702025e+03 - -2.4926414e+02 3.1628162e+02 -3.5706158e+03 - -2.6274502e+02 3.1610274e+02 -3.5710446e+03 - -2.7505021e+02 3.1606616e+02 -3.5714853e+03 - -2.8622950e+02 3.1618101e+02 -3.5719346e+03 - -2.9633875e+02 3.1645276e+02 -3.5723893e+03 - -3.0543738e+02 3.1688360e+02 -3.5728462e+03 - -3.1358651e+02 3.1747284e+02 -3.5733024e+03 - -3.2084732e+02 3.1821731e+02 -3.5737553e+03 - -3.2728000e+02 3.1911175e+02 -3.5742023e+03 - -3.3294285e+02 3.2014916e+02 -3.5746410e+03 - -3.3789177e+02 3.2132118e+02 -3.5750691e+03 - -3.4217985e+02 3.2261827e+02 -3.5754848e+03 - -3.4585724e+02 3.2403001e+02 -3.5758859e+03 - -3.4897102e+02 3.2554531e+02 -3.5762709e+03 - -3.5156530e+02 3.2715248e+02 -3.5766380e+03 - -3.5368122e+02 3.2883943e+02 -3.5769859e+03 - -3.5535718e+02 3.3059375e+02 -3.5773131e+03 - -3.5662891e+02 3.3240275e+02 -3.5776185e+03 - -3.5752970e+02 3.3425350e+02 -3.5779008e+03 - -3.5809057e+02 3.3613290e+02 -3.5781592e+03 - -3.5834045e+02 3.3802764e+02 -3.5783927e+03 - -3.5830638e+02 3.3992421e+02 -3.5786005e+03 - -3.5801365e+02 3.4180891e+02 -3.5787820e+03 - -3.5748598e+02 3.4366777e+02 -3.5789366e+03 - -3.5674570e+02 3.4548654e+02 -3.5790637e+03 - -3.5581385e+02 3.4725065e+02 -3.5791630e+03 - -3.5471034e+02 3.4894514e+02 -3.5792341e+03 - -3.5345408e+02 3.5055460e+02 -3.5792769e+03 - -3.5206309e+02 3.5206309e+02 -3.5792912e+03 - -3.5055460e+02 3.5345408e+02 -3.5792769e+03 - -3.4894514e+02 3.5471034e+02 -3.5792341e+03 - -3.4725065e+02 3.5581385e+02 -3.5791630e+03 - -3.4548654e+02 3.5674570e+02 -3.5790637e+03 - -3.4366777e+02 3.5748598e+02 -3.5789366e+03 - -3.4180891e+02 3.5801365e+02 -3.5787820e+03 - -3.3992421e+02 3.5830638e+02 -3.5786005e+03 - -3.3802764e+02 3.5834045e+02 -3.5783927e+03 - -3.3613290e+02 3.5809057e+02 -3.5781592e+03 - -3.3425350e+02 3.5752970e+02 -3.5779008e+03 - -3.3240275e+02 3.5662891e+02 -3.5776185e+03 - -3.3059375e+02 3.5535718e+02 -3.5773131e+03 - -3.2883943e+02 3.5368122e+02 -3.5769859e+03 - -3.2715248e+02 3.5156530e+02 -3.5766380e+03 - -3.2554531e+02 3.4897102e+02 -3.5762709e+03 - -3.2403001e+02 3.4585724e+02 -3.5758859e+03 - -3.2261827e+02 3.4217985e+02 -3.5754848e+03 - -3.2132118e+02 3.3789177e+02 -3.5750691e+03 - -3.2014916e+02 3.3294285e+02 -3.5746410e+03 - -3.1911175e+02 3.2728000e+02 -3.5742023e+03 - -3.1821731e+02 3.2084732e+02 -3.5737553e+03 - -3.1747284e+02 3.1358651e+02 -3.5733024e+03 - -3.1688360e+02 3.0543738e+02 -3.5728462e+03 - -3.1645276e+02 2.9633875e+02 -3.5723893e+03 - -3.1618101e+02 2.8622950e+02 -3.5719346e+03 - -3.1606616e+02 2.7505021e+02 -3.5714853e+03 - -3.1610274e+02 2.6274502e+02 -3.5710446e+03 - -3.1628162e+02 2.4926414e+02 -3.5706158e+03 - -3.1658970e+02 2.3456671e+02 -3.5702025e+03 - -3.1700982e+02 2.1862416e+02 -3.5698082e+03 - -3.1752069e+02 2.0142391e+02 -3.5694368e+03 - -3.1809726e+02 1.8297319e+02 -3.5690917e+03 - -3.1871121e+02 1.6330285e+02 -3.5687768e+03 - -3.1933193e+02 1.4247058e+02 -3.5684955e+03 - -3.1992770e+02 1.2056346e+02 -3.5682510e+03 - -3.2046729e+02 9.7699029e+01 -3.5680465e+03 - -3.2092167e+02 7.4024756e+01 -3.5678845e+03 - -3.2126583e+02 4.9715555e+01 -3.5677672e+03 - -3.2148047e+02 2.4969217e+01 -3.5676961e+03 - -3.2155341e+02 -9.6268545e-09 -3.5676723e+03 - -2.9627928e+02 2.4067136e-09 -3.5644439e+03 - -2.9621485e+02 -2.1917867e+01 -3.5644617e+03 - -2.9602512e+02 -4.3645546e+01 -3.5645150e+03 - -2.9572052e+02 -6.5000111e+01 -3.5646029e+03 - -2.9531756e+02 -8.5812505e+01 -3.5647243e+03 - -2.9483764e+02 -1.0593297e+02 -3.5648778e+03 - -2.9430563e+02 -1.2523491e+02 -3.5650612e+03 - -2.9374831e+02 -1.4361704e+02 -3.5652725e+03 - -2.9319286e+02 -1.6100393e+02 -3.5655093e+03 - -2.9266559e+02 -1.7734506e+02 -3.5657688e+03 - -2.9219079e+02 -1.9261280e+02 -3.5660485e+03 - -2.9179000e+02 -2.0679970e+02 -3.5663456e+03 - -2.9148149e+02 -2.1991528e+02 -3.5666573e+03 - -2.9128001e+02 -2.3198286e+02 -3.5669810e+03 - -2.9119677e+02 -2.4303635e+02 -3.5673141e+03 - -2.9123954e+02 -2.5311748e+02 -3.5676539e+03 - -2.9141293e+02 -2.6227327e+02 -3.5679980e+03 - -2.9171871e+02 -2.7055400e+02 -3.5683441e+03 - -2.9215609e+02 -2.7801145e+02 -3.5686901e+03 - -2.9272217e+02 -2.8469764e+02 -3.5690337e+03 - -2.9341220e+02 -2.9066380e+02 -3.5693732e+03 - -2.9421993e+02 -2.9595966e+02 -3.5697065e+03 - -2.9513787e+02 -3.0063293e+02 -3.5700322e+03 - -2.9615757e+02 -3.0472900e+02 -3.5703484e+03 - -2.9726977e+02 -3.0829076e+02 -3.5706539e+03 - -2.9846463e+02 -3.1135854e+02 -3.5709472e+03 - -2.9973182e+02 -3.1397011e+02 -3.5712270e+03 - -3.0106064e+02 -3.1616075e+02 -3.5714923e+03 - -3.0244014e+02 -3.1796338e+02 -3.5717420e+03 - -3.0385911e+02 -3.1940865e+02 -3.5719751e+03 - -3.0530619e+02 -3.2052515e+02 -3.5721907e+03 - -3.0676985e+02 -3.2133951e+02 -3.5723880e+03 - -3.0823840e+02 -3.2187656e+02 -3.5725665e+03 - -3.0970002e+02 -3.2215955e+02 -3.5727253e+03 - -3.1114271e+02 -3.2221020e+02 -3.5728641e+03 - -3.1255428e+02 -3.2204891e+02 -3.5729823e+03 - -3.1392230e+02 -3.2169490e+02 -3.5730795e+03 - -3.1523408e+02 -3.2116627e+02 -3.5731554e+03 - -3.1647664e+02 -3.2048020e+02 -3.5732099e+03 - -3.1763659e+02 -3.1965297e+02 -3.5732426e+03 - -3.1870014e+02 -3.1870014e+02 -3.5732535e+03 - -3.1965297e+02 -3.1763659e+02 -3.5732426e+03 - -3.2048020e+02 -3.1647664e+02 -3.5732099e+03 - -3.2116627e+02 -3.1523408e+02 -3.5731554e+03 - -3.2169490e+02 -3.1392230e+02 -3.5730795e+03 - -3.2204891e+02 -3.1255428e+02 -3.5729823e+03 - -3.2221020e+02 -3.1114271e+02 -3.5728641e+03 - -3.2215955e+02 -3.0970002e+02 -3.5727253e+03 - -3.2187656e+02 -3.0823840e+02 -3.5725665e+03 - -3.2133951e+02 -3.0676985e+02 -3.5723880e+03 - -3.2052515e+02 -3.0530619e+02 -3.5721907e+03 - -3.1940865e+02 -3.0385911e+02 -3.5719751e+03 - -3.1796338e+02 -3.0244014e+02 -3.5717420e+03 - -3.1616075e+02 -3.0106064e+02 -3.5714923e+03 - -3.1397011e+02 -2.9973182e+02 -3.5712270e+03 - -3.1135854e+02 -2.9846463e+02 -3.5709472e+03 - -3.0829076e+02 -2.9726977e+02 -3.5706539e+03 - -3.0472900e+02 -2.9615757e+02 -3.5703484e+03 - -3.0063293e+02 -2.9513787e+02 -3.5700322e+03 - -2.9595966e+02 -2.9421993e+02 -3.5697065e+03 - -2.9066380e+02 -2.9341220e+02 -3.5693732e+03 - -2.8469764e+02 -2.9272217e+02 -3.5690337e+03 - -2.7801145e+02 -2.9215609e+02 -3.5686901e+03 - -2.7055400e+02 -2.9171871e+02 -3.5683441e+03 - -2.6227327e+02 -2.9141293e+02 -3.5679980e+03 - -2.5311748e+02 -2.9123954e+02 -3.5676539e+03 - -2.4303635e+02 -2.9119677e+02 -3.5673141e+03 - -2.3198286e+02 -2.9128001e+02 -3.5669810e+03 - -2.1991528e+02 -2.9148149e+02 -3.5666573e+03 - -2.0679970e+02 -2.9179000e+02 -3.5663456e+03 - -1.9261280e+02 -2.9219079e+02 -3.5660485e+03 - -1.7734506e+02 -2.9266559e+02 -3.5657688e+03 - -1.6100393e+02 -2.9319286e+02 -3.5655093e+03 - -1.4361704e+02 -2.9374831e+02 -3.5652725e+03 - -1.2523491e+02 -2.9430563e+02 -3.5650612e+03 - -1.0593297e+02 -2.9483764e+02 -3.5648778e+03 - -8.5812505e+01 -2.9531756e+02 -3.5647243e+03 - -6.5000111e+01 -2.9572052e+02 -3.5646029e+03 - -4.3645546e+01 -2.9602512e+02 -3.5645150e+03 - -2.1917867e+01 -2.9621485e+02 -3.5644617e+03 - 2.4067136e-09 -2.9627928e+02 -3.5644439e+03 - 2.1917867e+01 -2.9621485e+02 -3.5644617e+03 - 4.3645546e+01 -2.9602512e+02 -3.5645150e+03 - 6.5000111e+01 -2.9572052e+02 -3.5646029e+03 - 8.5812505e+01 -2.9531756e+02 -3.5647243e+03 - 1.0593297e+02 -2.9483764e+02 -3.5648778e+03 - 1.2523491e+02 -2.9430563e+02 -3.5650612e+03 - 1.4361704e+02 -2.9374831e+02 -3.5652725e+03 - 1.6100393e+02 -2.9319286e+02 -3.5655093e+03 - 1.7734506e+02 -2.9266559e+02 -3.5657688e+03 - 1.9261280e+02 -2.9219079e+02 -3.5660485e+03 - 2.0679970e+02 -2.9179000e+02 -3.5663456e+03 - 2.1991528e+02 -2.9148149e+02 -3.5666573e+03 - 2.3198286e+02 -2.9128001e+02 -3.5669810e+03 - 2.4303635e+02 -2.9119677e+02 -3.5673141e+03 - 2.5311748e+02 -2.9123954e+02 -3.5676539e+03 - 2.6227327e+02 -2.9141293e+02 -3.5679980e+03 - 2.7055400e+02 -2.9171871e+02 -3.5683441e+03 - 2.7801145e+02 -2.9215609e+02 -3.5686901e+03 - 2.8469764e+02 -2.9272217e+02 -3.5690337e+03 - 2.9066380e+02 -2.9341220e+02 -3.5693732e+03 - 2.9595966e+02 -2.9421993e+02 -3.5697065e+03 - 3.0063293e+02 -2.9513787e+02 -3.5700322e+03 - 3.0472900e+02 -2.9615757e+02 -3.5703484e+03 - 3.0829076e+02 -2.9726977e+02 -3.5706539e+03 - 3.1135854e+02 -2.9846463e+02 -3.5709472e+03 - 3.1397011e+02 -2.9973182e+02 -3.5712270e+03 - 3.1616075e+02 -3.0106064e+02 -3.5714923e+03 - 3.1796338e+02 -3.0244014e+02 -3.5717420e+03 - 3.1940865e+02 -3.0385911e+02 -3.5719751e+03 - 3.2052515e+02 -3.0530619e+02 -3.5721907e+03 - 3.2133951e+02 -3.0676985e+02 -3.5723880e+03 - 3.2187656e+02 -3.0823840e+02 -3.5725665e+03 - 3.2215955e+02 -3.0970002e+02 -3.5727253e+03 - 3.2221020e+02 -3.1114271e+02 -3.5728641e+03 - 3.2204891e+02 -3.1255428e+02 -3.5729823e+03 - 3.2169490e+02 -3.1392230e+02 -3.5730795e+03 - 3.2116627e+02 -3.1523408e+02 -3.5731554e+03 - 3.2048020e+02 -3.1647664e+02 -3.5732099e+03 - 3.1965297e+02 -3.1763659e+02 -3.5732426e+03 - 3.1870014e+02 -3.1870014e+02 -3.5732535e+03 - 3.1763659e+02 -3.1965297e+02 -3.5732426e+03 - 3.1647664e+02 -3.2048020e+02 -3.5732099e+03 - 3.1523408e+02 -3.2116627e+02 -3.5731554e+03 - 3.1392230e+02 -3.2169490e+02 -3.5730795e+03 - 3.1255428e+02 -3.2204891e+02 -3.5729823e+03 - 3.1114271e+02 -3.2221020e+02 -3.5728641e+03 - 3.0970002e+02 -3.2215955e+02 -3.5727253e+03 - 3.0823840e+02 -3.2187656e+02 -3.5725665e+03 - 3.0676985e+02 -3.2133951e+02 -3.5723880e+03 - 3.0530619e+02 -3.2052515e+02 -3.5721907e+03 - 3.0385911e+02 -3.1940865e+02 -3.5719751e+03 - 3.0244014e+02 -3.1796338e+02 -3.5717420e+03 - 3.0106064e+02 -3.1616075e+02 -3.5714923e+03 - 2.9973182e+02 -3.1397011e+02 -3.5712270e+03 - 2.9846463e+02 -3.1135854e+02 -3.5709472e+03 - 2.9726977e+02 -3.0829076e+02 -3.5706539e+03 - 2.9615757e+02 -3.0472900e+02 -3.5703484e+03 - 2.9513787e+02 -3.0063293e+02 -3.5700322e+03 - 2.9421993e+02 -2.9595966e+02 -3.5697065e+03 - 2.9341220e+02 -2.9066380e+02 -3.5693732e+03 - 2.9272217e+02 -2.8469764e+02 -3.5690337e+03 - 2.9215609e+02 -2.7801145e+02 -3.5686901e+03 - 2.9171871e+02 -2.7055400e+02 -3.5683441e+03 - 2.9141293e+02 -2.6227327e+02 -3.5679980e+03 - 2.9123954e+02 -2.5311748e+02 -3.5676539e+03 - 2.9119677e+02 -2.4303635e+02 -3.5673141e+03 - 2.9128001e+02 -2.3198286e+02 -3.5669810e+03 - 2.9148149e+02 -2.1991528e+02 -3.5666573e+03 - 2.9179000e+02 -2.0679970e+02 -3.5663456e+03 - 2.9219079e+02 -1.9261280e+02 -3.5660485e+03 - 2.9266559e+02 -1.7734506e+02 -3.5657688e+03 - 2.9319286e+02 -1.6100393e+02 -3.5655093e+03 - 2.9374831e+02 -1.4361704e+02 -3.5652725e+03 - 2.9430563e+02 -1.2523491e+02 -3.5650612e+03 - 2.9483764e+02 -1.0593297e+02 -3.5648778e+03 - 2.9531756e+02 -8.5812505e+01 -3.5647243e+03 - 2.9572052e+02 -6.5000111e+01 -3.5646029e+03 - 2.9602512e+02 -4.3645546e+01 -3.5645150e+03 - 2.9621485e+02 -2.1917867e+01 -3.5644617e+03 - 2.9627928e+02 -2.4067136e-09 -3.5644439e+03 - 2.9621485e+02 2.1917867e+01 -3.5644617e+03 - 2.9602512e+02 4.3645546e+01 -3.5645150e+03 - 2.9572052e+02 6.5000111e+01 -3.5646029e+03 - 2.9531756e+02 8.5812505e+01 -3.5647243e+03 - 2.9483764e+02 1.0593297e+02 -3.5648778e+03 - 2.9430563e+02 1.2523491e+02 -3.5650612e+03 - 2.9374831e+02 1.4361704e+02 -3.5652725e+03 - 2.9319286e+02 1.6100393e+02 -3.5655093e+03 - 2.9266559e+02 1.7734506e+02 -3.5657688e+03 - 2.9219079e+02 1.9261280e+02 -3.5660485e+03 - 2.9179000e+02 2.0679970e+02 -3.5663456e+03 - 2.9148149e+02 2.1991528e+02 -3.5666573e+03 - 2.9128001e+02 2.3198286e+02 -3.5669810e+03 - 2.9119677e+02 2.4303635e+02 -3.5673141e+03 - 2.9123954e+02 2.5311748e+02 -3.5676539e+03 - 2.9141293e+02 2.6227327e+02 -3.5679980e+03 - 2.9171871e+02 2.7055400e+02 -3.5683441e+03 - 2.9215609e+02 2.7801145e+02 -3.5686901e+03 - 2.9272217e+02 2.8469764e+02 -3.5690337e+03 - 2.9341220e+02 2.9066380e+02 -3.5693732e+03 - 2.9421993e+02 2.9595966e+02 -3.5697065e+03 - 2.9513787e+02 3.0063293e+02 -3.5700322e+03 - 2.9615757e+02 3.0472900e+02 -3.5703484e+03 - 2.9726977e+02 3.0829076e+02 -3.5706539e+03 - 2.9846463e+02 3.1135854e+02 -3.5709472e+03 - 2.9973182e+02 3.1397011e+02 -3.5712270e+03 - 3.0106064e+02 3.1616075e+02 -3.5714923e+03 - 3.0244014e+02 3.1796338e+02 -3.5717420e+03 - 3.0385911e+02 3.1940865e+02 -3.5719751e+03 - 3.0530619e+02 3.2052515e+02 -3.5721907e+03 - 3.0676985e+02 3.2133951e+02 -3.5723880e+03 - 3.0823840e+02 3.2187656e+02 -3.5725665e+03 - 3.0970002e+02 3.2215955e+02 -3.5727253e+03 - 3.1114271e+02 3.2221020e+02 -3.5728641e+03 - 3.1255428e+02 3.2204891e+02 -3.5729823e+03 - 3.1392230e+02 3.2169490e+02 -3.5730795e+03 - 3.1523408e+02 3.2116627e+02 -3.5731554e+03 - 3.1647664e+02 3.2048020e+02 -3.5732099e+03 - 3.1763659e+02 3.1965297e+02 -3.5732426e+03 - 3.1870014e+02 3.1870014e+02 -3.5732535e+03 - 3.1965297e+02 3.1763659e+02 -3.5732426e+03 - 3.2048020e+02 3.1647664e+02 -3.5732099e+03 - 3.2116627e+02 3.1523408e+02 -3.5731554e+03 - 3.2169490e+02 3.1392230e+02 -3.5730795e+03 - 3.2204891e+02 3.1255428e+02 -3.5729823e+03 - 3.2221020e+02 3.1114271e+02 -3.5728641e+03 - 3.2215955e+02 3.0970002e+02 -3.5727253e+03 - 3.2187656e+02 3.0823840e+02 -3.5725665e+03 - 3.2133951e+02 3.0676985e+02 -3.5723880e+03 - 3.2052515e+02 3.0530619e+02 -3.5721907e+03 - 3.1940865e+02 3.0385911e+02 -3.5719751e+03 - 3.1796338e+02 3.0244014e+02 -3.5717420e+03 - 3.1616075e+02 3.0106064e+02 -3.5714923e+03 - 3.1397011e+02 2.9973182e+02 -3.5712270e+03 - 3.1135854e+02 2.9846463e+02 -3.5709472e+03 - 3.0829076e+02 2.9726977e+02 -3.5706539e+03 - 3.0472900e+02 2.9615757e+02 -3.5703484e+03 - 3.0063293e+02 2.9513787e+02 -3.5700322e+03 - 2.9595966e+02 2.9421993e+02 -3.5697065e+03 - 2.9066380e+02 2.9341220e+02 -3.5693732e+03 - 2.8469764e+02 2.9272217e+02 -3.5690337e+03 - 2.7801145e+02 2.9215609e+02 -3.5686901e+03 - 2.7055400e+02 2.9171871e+02 -3.5683441e+03 - 2.6227327e+02 2.9141293e+02 -3.5679980e+03 - 2.5311748e+02 2.9123954e+02 -3.5676539e+03 - 2.4303635e+02 2.9119677e+02 -3.5673141e+03 - 2.3198286e+02 2.9128001e+02 -3.5669810e+03 - 2.1991528e+02 2.9148149e+02 -3.5666573e+03 - 2.0679970e+02 2.9179000e+02 -3.5663456e+03 - 1.9261280e+02 2.9219079e+02 -3.5660485e+03 - 1.7734506e+02 2.9266559e+02 -3.5657688e+03 - 1.6100393e+02 2.9319286e+02 -3.5655093e+03 - 1.4361704e+02 2.9374831e+02 -3.5652725e+03 - 1.2523491e+02 2.9430563e+02 -3.5650612e+03 - 1.0593297e+02 2.9483764e+02 -3.5648778e+03 - 8.5812505e+01 2.9531756e+02 -3.5647243e+03 - 6.5000111e+01 2.9572052e+02 -3.5646029e+03 - 4.3645546e+01 2.9602512e+02 -3.5645150e+03 - 2.1917867e+01 2.9621485e+02 -3.5644617e+03 - -2.4067136e-09 2.9627928e+02 -3.5644439e+03 - -2.1917867e+01 2.9621485e+02 -3.5644617e+03 - -4.3645546e+01 2.9602512e+02 -3.5645150e+03 - -6.5000111e+01 2.9572052e+02 -3.5646029e+03 - -8.5812505e+01 2.9531756e+02 -3.5647243e+03 - -1.0593297e+02 2.9483764e+02 -3.5648778e+03 - -1.2523491e+02 2.9430563e+02 -3.5650612e+03 - -1.4361704e+02 2.9374831e+02 -3.5652725e+03 - -1.6100393e+02 2.9319286e+02 -3.5655093e+03 - -1.7734506e+02 2.9266559e+02 -3.5657688e+03 - -1.9261280e+02 2.9219079e+02 -3.5660485e+03 - -2.0679970e+02 2.9179000e+02 -3.5663456e+03 - -2.1991528e+02 2.9148149e+02 -3.5666573e+03 - -2.3198286e+02 2.9128001e+02 -3.5669810e+03 - -2.4303635e+02 2.9119677e+02 -3.5673141e+03 - -2.5311748e+02 2.9123954e+02 -3.5676539e+03 - -2.6227327e+02 2.9141293e+02 -3.5679980e+03 - -2.7055400e+02 2.9171871e+02 -3.5683441e+03 - -2.7801145e+02 2.9215609e+02 -3.5686901e+03 - -2.8469764e+02 2.9272217e+02 -3.5690337e+03 - -2.9066380e+02 2.9341220e+02 -3.5693732e+03 - -2.9595966e+02 2.9421993e+02 -3.5697065e+03 - -3.0063293e+02 2.9513787e+02 -3.5700322e+03 - -3.0472900e+02 2.9615757e+02 -3.5703484e+03 - -3.0829076e+02 2.9726977e+02 -3.5706539e+03 - -3.1135854e+02 2.9846463e+02 -3.5709472e+03 - -3.1397011e+02 2.9973182e+02 -3.5712270e+03 - -3.1616075e+02 3.0106064e+02 -3.5714923e+03 - -3.1796338e+02 3.0244014e+02 -3.5717420e+03 - -3.1940865e+02 3.0385911e+02 -3.5719751e+03 - -3.2052515e+02 3.0530619e+02 -3.5721907e+03 - -3.2133951e+02 3.0676985e+02 -3.5723880e+03 - -3.2187656e+02 3.0823840e+02 -3.5725665e+03 - -3.2215955e+02 3.0970002e+02 -3.5727253e+03 - -3.2221020e+02 3.1114271e+02 -3.5728641e+03 - -3.2204891e+02 3.1255428e+02 -3.5729823e+03 - -3.2169490e+02 3.1392230e+02 -3.5730795e+03 - -3.2116627e+02 3.1523408e+02 -3.5731554e+03 - -3.2048020e+02 3.1647664e+02 -3.5732099e+03 - -3.1965297e+02 3.1763659e+02 -3.5732426e+03 - -3.1870014e+02 3.1870014e+02 -3.5732535e+03 - -3.1763659e+02 3.1965297e+02 -3.5732426e+03 - -3.1647664e+02 3.2048020e+02 -3.5732099e+03 - -3.1523408e+02 3.2116627e+02 -3.5731554e+03 - -3.1392230e+02 3.2169490e+02 -3.5730795e+03 - -3.1255428e+02 3.2204891e+02 -3.5729823e+03 - -3.1114271e+02 3.2221020e+02 -3.5728641e+03 - -3.0970002e+02 3.2215955e+02 -3.5727253e+03 - -3.0823840e+02 3.2187656e+02 -3.5725665e+03 - -3.0676985e+02 3.2133951e+02 -3.5723880e+03 - -3.0530619e+02 3.2052515e+02 -3.5721907e+03 - -3.0385911e+02 3.1940865e+02 -3.5719751e+03 - -3.0244014e+02 3.1796338e+02 -3.5717420e+03 - -3.0106064e+02 3.1616075e+02 -3.5714923e+03 - -2.9973182e+02 3.1397011e+02 -3.5712270e+03 - -2.9846463e+02 3.1135854e+02 -3.5709472e+03 - -2.9726977e+02 3.0829076e+02 -3.5706539e+03 - -2.9615757e+02 3.0472900e+02 -3.5703484e+03 - -2.9513787e+02 3.0063293e+02 -3.5700322e+03 - -2.9421993e+02 2.9595966e+02 -3.5697065e+03 - -2.9341220e+02 2.9066380e+02 -3.5693732e+03 - -2.9272217e+02 2.8469764e+02 -3.5690337e+03 - -2.9215609e+02 2.7801145e+02 -3.5686901e+03 - -2.9171871e+02 2.7055400e+02 -3.5683441e+03 - -2.9141293e+02 2.6227327e+02 -3.5679980e+03 - -2.9123954e+02 2.5311748e+02 -3.5676539e+03 - -2.9119677e+02 2.4303635e+02 -3.5673141e+03 - -2.9128001e+02 2.3198286e+02 -3.5669810e+03 - -2.9148149e+02 2.1991528e+02 -3.5666573e+03 - -2.9179000e+02 2.0679970e+02 -3.5663456e+03 - -2.9219079e+02 1.9261280e+02 -3.5660485e+03 - -2.9266559e+02 1.7734506e+02 -3.5657688e+03 - -2.9319286e+02 1.6100393e+02 -3.5655093e+03 - -2.9374831e+02 1.4361704e+02 -3.5652725e+03 - -2.9430563e+02 1.2523491e+02 -3.5650612e+03 - -2.9483764e+02 1.0593297e+02 -3.5648778e+03 - -2.9531756e+02 8.5812505e+01 -3.5647243e+03 - -2.9572052e+02 6.5000111e+01 -3.5646029e+03 - -2.9602512e+02 4.3645546e+01 -3.5645150e+03 - -2.9621485e+02 2.1917867e+01 -3.5644617e+03 - -2.9627928e+02 -2.4067136e-09 -3.5644439e+03 - -2.6230434e+02 4.8134273e-09 -3.5607743e+03 - -2.6224935e+02 -1.8650872e+01 -3.5607869e+03 - -2.6208733e+02 -3.7143830e+01 -3.5608245e+03 - -2.6182695e+02 -5.5326922e+01 -3.5608867e+03 - -2.6148194e+02 -7.3059585e+01 -3.5609727e+03 - -2.6107011e+02 -9.0217120e+01 -3.5610813e+03 - -2.6061216e+02 -1.0669388e+02 -3.5612112e+03 - -2.6013039e+02 -1.2240510e+02 -3.5613610e+03 - -2.5964746e+02 -1.3728731e+02 -3.5615289e+03 - -2.5918528e+02 -1.5129768e+02 -3.5617131e+03 - -2.5876412e+02 -1.6441234e+02 -3.5619117e+03 - -2.5840195e+02 -1.7662418e+02 -3.5621229e+03 - -2.5811399e+02 -1.8794026e+02 -3.5623446e+03 - -2.5791252e+02 -1.9837913e+02 -3.5625750e+03 - -2.5780685e+02 -2.0796830e+02 -3.5628123e+03 - -2.5780341e+02 -2.1674182e+02 -3.5630545e+03 - -2.5790596e+02 -2.2473830e+02 -3.5633001e+03 - -2.5811584e+02 -2.3199910e+02 -3.5635472e+03 - -2.5843227e+02 -2.3856699e+02 -3.5637944e+03 - -2.5885265e+02 -2.4448496e+02 -3.5640401e+03 - -2.5937284e+02 -2.4979545e+02 -3.5642829e+03 - -2.5998740e+02 -2.5453968e+02 -3.5645215e+03 - -2.6068987e+02 -2.5875729e+02 -3.5647548e+03 - -2.6147297e+02 -2.6248597e+02 -3.5649814e+03 - -2.6232873e+02 -2.6576139e+02 -3.5652004e+03 - -2.6324870e+02 -2.6861712e+02 -3.5654108e+03 - -2.6422400e+02 -2.7108459e+02 -3.5656117e+03 - -2.6524549e+02 -2.7319319e+02 -3.5658022e+03 - -2.6630377e+02 -2.7497034e+02 -3.5659815e+03 - -2.6738927e+02 -2.7644159e+02 -3.5661490e+03 - -2.6849230e+02 -2.7763078e+02 -3.5663040e+03 - -2.6960302e+02 -2.7856010e+02 -3.5664459e+03 - -2.7071149e+02 -2.7925029e+02 -3.5665743e+03 - -2.7180765e+02 -2.7972071e+02 -3.5666886e+03 - -2.7288133e+02 -2.7998952e+02 -3.5667884e+03 - -2.7392219e+02 -2.8007375e+02 -3.5668735e+03 - -2.7491973e+02 -2.7998944e+02 -3.5669434e+03 - -2.7586323e+02 -2.7975174e+02 -3.5669981e+03 - -2.7674173e+02 -2.7937500e+02 -3.5670373e+03 - -2.7754397e+02 -2.7887286e+02 -3.5670609e+03 - -2.7825836e+02 -2.7825836e+02 -3.5670687e+03 - -2.7887286e+02 -2.7754397e+02 -3.5670609e+03 - -2.7937500e+02 -2.7674173e+02 -3.5670373e+03 - -2.7975174e+02 -2.7586323e+02 -3.5669981e+03 - -2.7998944e+02 -2.7491973e+02 -3.5669434e+03 - -2.8007375e+02 -2.7392219e+02 -3.5668735e+03 - -2.7998952e+02 -2.7288133e+02 -3.5667884e+03 - -2.7972071e+02 -2.7180765e+02 -3.5666886e+03 - -2.7925029e+02 -2.7071149e+02 -3.5665743e+03 - -2.7856010e+02 -2.6960302e+02 -3.5664459e+03 - -2.7763078e+02 -2.6849230e+02 -3.5663040e+03 - -2.7644159e+02 -2.6738927e+02 -3.5661490e+03 - -2.7497034e+02 -2.6630377e+02 -3.5659815e+03 - -2.7319319e+02 -2.6524549e+02 -3.5658022e+03 - -2.7108459e+02 -2.6422400e+02 -3.5656117e+03 - -2.6861712e+02 -2.6324870e+02 -3.5654108e+03 - -2.6576139e+02 -2.6232873e+02 -3.5652004e+03 - -2.6248597e+02 -2.6147297e+02 -3.5649814e+03 - -2.5875729e+02 -2.6068987e+02 -3.5647548e+03 - -2.5453968e+02 -2.5998740e+02 -3.5645215e+03 - -2.4979545e+02 -2.5937284e+02 -3.5642829e+03 - -2.4448496e+02 -2.5885265e+02 -3.5640401e+03 - -2.3856699e+02 -2.5843227e+02 -3.5637944e+03 - -2.3199910e+02 -2.5811584e+02 -3.5635472e+03 - -2.2473830e+02 -2.5790596e+02 -3.5633001e+03 - -2.1674182e+02 -2.5780341e+02 -3.5630545e+03 - -2.0796830e+02 -2.5780685e+02 -3.5628123e+03 - -1.9837913e+02 -2.5791252e+02 -3.5625750e+03 - -1.8794026e+02 -2.5811399e+02 -3.5623446e+03 - -1.7662418e+02 -2.5840195e+02 -3.5621229e+03 - -1.6441234e+02 -2.5876412e+02 -3.5619117e+03 - -1.5129768e+02 -2.5918528e+02 -3.5617131e+03 - -1.3728731e+02 -2.5964746e+02 -3.5615289e+03 - -1.2240510e+02 -2.6013039e+02 -3.5613610e+03 - -1.0669388e+02 -2.6061216e+02 -3.5612112e+03 - -9.0217120e+01 -2.6107011e+02 -3.5610813e+03 - -7.3059585e+01 -2.6148194e+02 -3.5609727e+03 - -5.5326922e+01 -2.6182695e+02 -3.5608867e+03 - -3.7143830e+01 -2.6208733e+02 -3.5608245e+03 - -1.8650872e+01 -2.6224935e+02 -3.5607869e+03 - 0.0000000e+00 -2.6230434e+02 -3.5607743e+03 - 1.8650872e+01 -2.6224935e+02 -3.5607869e+03 - 3.7143830e+01 -2.6208733e+02 -3.5608245e+03 - 5.5326922e+01 -2.6182695e+02 -3.5608867e+03 - 7.3059585e+01 -2.6148194e+02 -3.5609727e+03 - 9.0217120e+01 -2.6107011e+02 -3.5610813e+03 - 1.0669388e+02 -2.6061216e+02 -3.5612112e+03 - 1.2240510e+02 -2.6013039e+02 -3.5613610e+03 - 1.3728731e+02 -2.5964746e+02 -3.5615289e+03 - 1.5129768e+02 -2.5918528e+02 -3.5617131e+03 - 1.6441234e+02 -2.5876412e+02 -3.5619117e+03 - 1.7662418e+02 -2.5840195e+02 -3.5621229e+03 - 1.8794026e+02 -2.5811399e+02 -3.5623446e+03 - 1.9837913e+02 -2.5791252e+02 -3.5625750e+03 - 2.0796830e+02 -2.5780685e+02 -3.5628123e+03 - 2.1674182e+02 -2.5780341e+02 -3.5630545e+03 - 2.2473830e+02 -2.5790596e+02 -3.5633001e+03 - 2.3199910e+02 -2.5811584e+02 -3.5635472e+03 - 2.3856699e+02 -2.5843227e+02 -3.5637944e+03 - 2.4448496e+02 -2.5885265e+02 -3.5640401e+03 - 2.4979545e+02 -2.5937284e+02 -3.5642829e+03 - 2.5453968e+02 -2.5998740e+02 -3.5645215e+03 - 2.5875729e+02 -2.6068987e+02 -3.5647548e+03 - 2.6248597e+02 -2.6147297e+02 -3.5649814e+03 - 2.6576139e+02 -2.6232873e+02 -3.5652004e+03 - 2.6861712e+02 -2.6324870e+02 -3.5654108e+03 - 2.7108459e+02 -2.6422400e+02 -3.5656117e+03 - 2.7319319e+02 -2.6524549e+02 -3.5658022e+03 - 2.7497034e+02 -2.6630377e+02 -3.5659815e+03 - 2.7644159e+02 -2.6738927e+02 -3.5661490e+03 - 2.7763078e+02 -2.6849230e+02 -3.5663040e+03 - 2.7856010e+02 -2.6960302e+02 -3.5664459e+03 - 2.7925029e+02 -2.7071149e+02 -3.5665743e+03 - 2.7972071e+02 -2.7180765e+02 -3.5666886e+03 - 2.7998952e+02 -2.7288133e+02 -3.5667884e+03 - 2.8007375e+02 -2.7392219e+02 -3.5668735e+03 - 2.7998944e+02 -2.7491973e+02 -3.5669434e+03 - 2.7975174e+02 -2.7586323e+02 -3.5669981e+03 - 2.7937500e+02 -2.7674173e+02 -3.5670373e+03 - 2.7887286e+02 -2.7754397e+02 -3.5670609e+03 - 2.7825836e+02 -2.7825836e+02 -3.5670687e+03 - 2.7754397e+02 -2.7887286e+02 -3.5670609e+03 - 2.7674173e+02 -2.7937500e+02 -3.5670373e+03 - 2.7586323e+02 -2.7975174e+02 -3.5669981e+03 - 2.7491973e+02 -2.7998944e+02 -3.5669434e+03 - 2.7392219e+02 -2.8007375e+02 -3.5668735e+03 - 2.7288133e+02 -2.7998952e+02 -3.5667884e+03 - 2.7180765e+02 -2.7972071e+02 -3.5666886e+03 - 2.7071149e+02 -2.7925029e+02 -3.5665743e+03 - 2.6960302e+02 -2.7856010e+02 -3.5664459e+03 - 2.6849230e+02 -2.7763078e+02 -3.5663040e+03 - 2.6738927e+02 -2.7644159e+02 -3.5661490e+03 - 2.6630377e+02 -2.7497034e+02 -3.5659815e+03 - 2.6524549e+02 -2.7319319e+02 -3.5658022e+03 - 2.6422400e+02 -2.7108459e+02 -3.5656117e+03 - 2.6324870e+02 -2.6861712e+02 -3.5654108e+03 - 2.6232873e+02 -2.6576139e+02 -3.5652004e+03 - 2.6147297e+02 -2.6248597e+02 -3.5649814e+03 - 2.6068987e+02 -2.5875729e+02 -3.5647548e+03 - 2.5998740e+02 -2.5453968e+02 -3.5645215e+03 - 2.5937284e+02 -2.4979545e+02 -3.5642829e+03 - 2.5885265e+02 -2.4448496e+02 -3.5640401e+03 - 2.5843227e+02 -2.3856699e+02 -3.5637944e+03 - 2.5811584e+02 -2.3199910e+02 -3.5635472e+03 - 2.5790596e+02 -2.2473830e+02 -3.5633001e+03 - 2.5780341e+02 -2.1674182e+02 -3.5630545e+03 - 2.5780685e+02 -2.0796830e+02 -3.5628123e+03 - 2.5791252e+02 -1.9837913e+02 -3.5625750e+03 - 2.5811399e+02 -1.8794026e+02 -3.5623446e+03 - 2.5840195e+02 -1.7662418e+02 -3.5621229e+03 - 2.5876412e+02 -1.6441234e+02 -3.5619117e+03 - 2.5918528e+02 -1.5129768e+02 -3.5617131e+03 - 2.5964746e+02 -1.3728731e+02 -3.5615289e+03 - 2.6013039e+02 -1.2240510e+02 -3.5613610e+03 - 2.6061216e+02 -1.0669388e+02 -3.5612112e+03 - 2.6107011e+02 -9.0217120e+01 -3.5610813e+03 - 2.6148194e+02 -7.3059585e+01 -3.5609727e+03 - 2.6182695e+02 -5.5326922e+01 -3.5608867e+03 - 2.6208733e+02 -3.7143830e+01 -3.5608245e+03 - 2.6224935e+02 -1.8650872e+01 -3.5607869e+03 - 2.6230434e+02 -9.6268545e-09 -3.5607743e+03 - 2.6224935e+02 1.8650872e+01 -3.5607869e+03 - 2.6208733e+02 3.7143830e+01 -3.5608245e+03 - 2.6182695e+02 5.5326922e+01 -3.5608867e+03 - 2.6148194e+02 7.3059585e+01 -3.5609727e+03 - 2.6107011e+02 9.0217120e+01 -3.5610813e+03 - 2.6061216e+02 1.0669388e+02 -3.5612112e+03 - 2.6013039e+02 1.2240510e+02 -3.5613610e+03 - 2.5964746e+02 1.3728731e+02 -3.5615289e+03 - 2.5918528e+02 1.5129768e+02 -3.5617131e+03 - 2.5876412e+02 1.6441234e+02 -3.5619117e+03 - 2.5840195e+02 1.7662418e+02 -3.5621229e+03 - 2.5811399e+02 1.8794026e+02 -3.5623446e+03 - 2.5791252e+02 1.9837913e+02 -3.5625750e+03 - 2.5780685e+02 2.0796830e+02 -3.5628123e+03 - 2.5780341e+02 2.1674182e+02 -3.5630545e+03 - 2.5790596e+02 2.2473830e+02 -3.5633001e+03 - 2.5811584e+02 2.3199910e+02 -3.5635472e+03 - 2.5843227e+02 2.3856699e+02 -3.5637944e+03 - 2.5885265e+02 2.4448496e+02 -3.5640401e+03 - 2.5937284e+02 2.4979545e+02 -3.5642829e+03 - 2.5998740e+02 2.5453968e+02 -3.5645215e+03 - 2.6068987e+02 2.5875729e+02 -3.5647548e+03 - 2.6147297e+02 2.6248597e+02 -3.5649814e+03 - 2.6232873e+02 2.6576139e+02 -3.5652004e+03 - 2.6324870e+02 2.6861712e+02 -3.5654108e+03 - 2.6422400e+02 2.7108459e+02 -3.5656117e+03 - 2.6524549e+02 2.7319319e+02 -3.5658022e+03 - 2.6630377e+02 2.7497034e+02 -3.5659815e+03 - 2.6738927e+02 2.7644159e+02 -3.5661490e+03 - 2.6849230e+02 2.7763078e+02 -3.5663040e+03 - 2.6960302e+02 2.7856010e+02 -3.5664459e+03 - 2.7071149e+02 2.7925029e+02 -3.5665743e+03 - 2.7180765e+02 2.7972071e+02 -3.5666886e+03 - 2.7288133e+02 2.7998952e+02 -3.5667884e+03 - 2.7392219e+02 2.8007375e+02 -3.5668735e+03 - 2.7491973e+02 2.7998944e+02 -3.5669434e+03 - 2.7586323e+02 2.7975174e+02 -3.5669981e+03 - 2.7674173e+02 2.7937500e+02 -3.5670373e+03 - 2.7754397e+02 2.7887286e+02 -3.5670609e+03 - 2.7825836e+02 2.7825836e+02 -3.5670687e+03 - 2.7887286e+02 2.7754397e+02 -3.5670609e+03 - 2.7937500e+02 2.7674173e+02 -3.5670373e+03 - 2.7975174e+02 2.7586323e+02 -3.5669981e+03 - 2.7998944e+02 2.7491973e+02 -3.5669434e+03 - 2.8007375e+02 2.7392219e+02 -3.5668735e+03 - 2.7998952e+02 2.7288133e+02 -3.5667884e+03 - 2.7972071e+02 2.7180765e+02 -3.5666886e+03 - 2.7925029e+02 2.7071149e+02 -3.5665743e+03 - 2.7856010e+02 2.6960302e+02 -3.5664459e+03 - 2.7763078e+02 2.6849230e+02 -3.5663040e+03 - 2.7644159e+02 2.6738927e+02 -3.5661490e+03 - 2.7497034e+02 2.6630377e+02 -3.5659815e+03 - 2.7319319e+02 2.6524549e+02 -3.5658022e+03 - 2.7108459e+02 2.6422400e+02 -3.5656117e+03 - 2.6861712e+02 2.6324870e+02 -3.5654108e+03 - 2.6576139e+02 2.6232873e+02 -3.5652004e+03 - 2.6248597e+02 2.6147297e+02 -3.5649814e+03 - 2.5875729e+02 2.6068987e+02 -3.5647548e+03 - 2.5453968e+02 2.5998740e+02 -3.5645215e+03 - 2.4979545e+02 2.5937284e+02 -3.5642829e+03 - 2.4448496e+02 2.5885265e+02 -3.5640401e+03 - 2.3856699e+02 2.5843227e+02 -3.5637944e+03 - 2.3199910e+02 2.5811584e+02 -3.5635472e+03 - 2.2473830e+02 2.5790596e+02 -3.5633001e+03 - 2.1674182e+02 2.5780341e+02 -3.5630545e+03 - 2.0796830e+02 2.5780685e+02 -3.5628123e+03 - 1.9837913e+02 2.5791252e+02 -3.5625750e+03 - 1.8794026e+02 2.5811399e+02 -3.5623446e+03 - 1.7662418e+02 2.5840195e+02 -3.5621229e+03 - 1.6441234e+02 2.5876412e+02 -3.5619117e+03 - 1.5129768e+02 2.5918528e+02 -3.5617131e+03 - 1.3728731e+02 2.5964746e+02 -3.5615289e+03 - 1.2240510e+02 2.6013039e+02 -3.5613610e+03 - 1.0669388e+02 2.6061216e+02 -3.5612112e+03 - 9.0217120e+01 2.6107011e+02 -3.5610813e+03 - 7.3059585e+01 2.6148194e+02 -3.5609727e+03 - 5.5326922e+01 2.6182695e+02 -3.5608867e+03 - 3.7143830e+01 2.6208733e+02 -3.5608245e+03 - 1.8650872e+01 2.6224935e+02 -3.5607869e+03 - 0.0000000e+00 2.6230434e+02 -3.5607743e+03 - -1.8650872e+01 2.6224935e+02 -3.5607869e+03 - -3.7143830e+01 2.6208733e+02 -3.5608245e+03 - -5.5326922e+01 2.6182695e+02 -3.5608867e+03 - -7.3059585e+01 2.6148194e+02 -3.5609727e+03 - -9.0217120e+01 2.6107011e+02 -3.5610813e+03 - -1.0669388e+02 2.6061216e+02 -3.5612112e+03 - -1.2240510e+02 2.6013039e+02 -3.5613610e+03 - -1.3728731e+02 2.5964746e+02 -3.5615289e+03 - -1.5129768e+02 2.5918528e+02 -3.5617131e+03 - -1.6441234e+02 2.5876412e+02 -3.5619117e+03 - -1.7662418e+02 2.5840195e+02 -3.5621229e+03 - -1.8794026e+02 2.5811399e+02 -3.5623446e+03 - -1.9837913e+02 2.5791252e+02 -3.5625750e+03 - -2.0796830e+02 2.5780685e+02 -3.5628123e+03 - -2.1674182e+02 2.5780341e+02 -3.5630545e+03 - -2.2473830e+02 2.5790596e+02 -3.5633001e+03 - -2.3199910e+02 2.5811584e+02 -3.5635472e+03 - -2.3856699e+02 2.5843227e+02 -3.5637944e+03 - -2.4448496e+02 2.5885265e+02 -3.5640401e+03 - -2.4979545e+02 2.5937284e+02 -3.5642829e+03 - -2.5453968e+02 2.5998740e+02 -3.5645215e+03 - -2.5875729e+02 2.6068987e+02 -3.5647548e+03 - -2.6248597e+02 2.6147297e+02 -3.5649814e+03 - -2.6576139e+02 2.6232873e+02 -3.5652004e+03 - -2.6861712e+02 2.6324870e+02 -3.5654108e+03 - -2.7108459e+02 2.6422400e+02 -3.5656117e+03 - -2.7319319e+02 2.6524549e+02 -3.5658022e+03 - -2.7497034e+02 2.6630377e+02 -3.5659815e+03 - -2.7644159e+02 2.6738927e+02 -3.5661490e+03 - -2.7763078e+02 2.6849230e+02 -3.5663040e+03 - -2.7856010e+02 2.6960302e+02 -3.5664459e+03 - -2.7925029e+02 2.7071149e+02 -3.5665743e+03 - -2.7972071e+02 2.7180765e+02 -3.5666886e+03 - -2.7998952e+02 2.7288133e+02 -3.5667884e+03 - -2.8007375e+02 2.7392219e+02 -3.5668735e+03 - -2.7998944e+02 2.7491973e+02 -3.5669434e+03 - -2.7975174e+02 2.7586323e+02 -3.5669981e+03 - -2.7937500e+02 2.7674173e+02 -3.5670373e+03 - -2.7887286e+02 2.7754397e+02 -3.5670609e+03 - -2.7825836e+02 2.7825836e+02 -3.5670687e+03 - -2.7754397e+02 2.7887286e+02 -3.5670609e+03 - -2.7674173e+02 2.7937500e+02 -3.5670373e+03 - -2.7586323e+02 2.7975174e+02 -3.5669981e+03 - -2.7491973e+02 2.7998944e+02 -3.5669434e+03 - -2.7392219e+02 2.8007375e+02 -3.5668735e+03 - -2.7288133e+02 2.7998952e+02 -3.5667884e+03 - -2.7180765e+02 2.7972071e+02 -3.5666886e+03 - -2.7071149e+02 2.7925029e+02 -3.5665743e+03 - -2.6960302e+02 2.7856010e+02 -3.5664459e+03 - -2.6849230e+02 2.7763078e+02 -3.5663040e+03 - -2.6738927e+02 2.7644159e+02 -3.5661490e+03 - -2.6630377e+02 2.7497034e+02 -3.5659815e+03 - -2.6524549e+02 2.7319319e+02 -3.5658022e+03 - -2.6422400e+02 2.7108459e+02 -3.5656117e+03 - -2.6324870e+02 2.6861712e+02 -3.5654108e+03 - -2.6232873e+02 2.6576139e+02 -3.5652004e+03 - -2.6147297e+02 2.6248597e+02 -3.5649814e+03 - -2.6068987e+02 2.5875729e+02 -3.5647548e+03 - -2.5998740e+02 2.5453968e+02 -3.5645215e+03 - -2.5937284e+02 2.4979545e+02 -3.5642829e+03 - -2.5885265e+02 2.4448496e+02 -3.5640401e+03 - -2.5843227e+02 2.3856699e+02 -3.5637944e+03 - -2.5811584e+02 2.3199910e+02 -3.5635472e+03 - -2.5790596e+02 2.2473830e+02 -3.5633001e+03 - -2.5780341e+02 2.1674182e+02 -3.5630545e+03 - -2.5780685e+02 2.0796830e+02 -3.5628123e+03 - -2.5791252e+02 1.9837913e+02 -3.5625750e+03 - -2.5811399e+02 1.8794026e+02 -3.5623446e+03 - -2.5840195e+02 1.7662418e+02 -3.5621229e+03 - -2.5876412e+02 1.6441234e+02 -3.5619117e+03 - -2.5918528e+02 1.5129768e+02 -3.5617131e+03 - -2.5964746e+02 1.3728731e+02 -3.5615289e+03 - -2.6013039e+02 1.2240510e+02 -3.5613610e+03 - -2.6061216e+02 1.0669388e+02 -3.5612112e+03 - -2.6107011e+02 9.0217120e+01 -3.5610813e+03 - -2.6148194e+02 7.3059585e+01 -3.5609727e+03 - -2.6182695e+02 5.5326922e+01 -3.5608867e+03 - -2.6208733e+02 3.7143830e+01 -3.5608245e+03 - -2.6224935e+02 1.8650872e+01 -3.5607869e+03 - -2.6230434e+02 4.8134273e-09 -3.5607743e+03 - -2.2042663e+02 2.4067136e-09 -3.5570765e+03 - -2.2038182e+02 -1.5186726e+01 -3.5570847e+03 - -2.2024975e+02 -3.0247486e+01 -3.5571092e+03 - -2.2003733e+02 -4.5061022e+01 -3.5571497e+03 - -2.1975553e+02 -5.9515085e+01 -3.5572056e+03 - -2.1941858e+02 -7.3509970e+01 -3.5572763e+03 - -2.1904300e+02 -8.6961063e+01 -3.5573610e+03 - -2.1864662e+02 -9.9800288e+01 -3.5574585e+03 - -2.1824755e+02 -1.1197649e+02 -3.5575680e+03 - -2.1786333e+02 -1.2345491e+02 -3.5576882e+03 - -2.1751016e+02 -1.3421591e+02 -3.5578178e+03 - -2.1720241e+02 -1.4425319e+02 -3.5579557e+03 - -2.1695225e+02 -1.5357181e+02 -3.5581006e+03 - -2.1676949e+02 -1.6218606e+02 -3.5582513e+03 - -2.1666153e+02 -1.7011742e+02 -3.5584066e+03 - -2.1663347e+02 -1.7739267e+02 -3.5585652e+03 - -2.1668823e+02 -1.8404229e+02 -3.5587260e+03 - -2.1682681e+02 -1.9009903e+02 -3.5588880e+03 - -2.1704847e+02 -1.9559681e+02 -3.5590502e+03 - -2.1735099e+02 -2.0056981e+02 -3.5592114e+03 - -2.1773093e+02 -2.0505178e+02 -3.5593709e+03 - -2.1818377e+02 -2.0907557e+02 -3.5595277e+03 - -2.1870419e+02 -2.1267276e+02 -3.5596810e+03 - -2.1928617e+02 -2.1587343e+02 -3.5598300e+03 - -2.1992318e+02 -2.1870606e+02 -3.5599741e+03 - -2.2060825e+02 -2.2119744e+02 -3.5601126e+03 - -2.2133411e+02 -2.2337270e+02 -3.5602448e+03 - -2.2209327e+02 -2.2525532e+02 -3.5603703e+03 - -2.2287803e+02 -2.2686723e+02 -3.5604885e+03 - -2.2368057e+02 -2.2822885e+02 -3.5605989e+03 - -2.2449296e+02 -2.2935925e+02 -3.5607010e+03 - -2.2530719e+02 -2.3027618e+02 -3.5607946e+03 - -2.2611515e+02 -2.3099624e+02 -3.5608793e+03 - -2.2690867e+02 -2.3153492e+02 -3.5609547e+03 - -2.2767946e+02 -2.3190676e+02 -3.5610205e+03 - -2.2841916e+02 -2.3212540e+02 -3.5610767e+03 - -2.2911925e+02 -2.3220368e+02 -3.5611229e+03 - -2.2977107e+02 -2.3215376e+02 -3.5611590e+03 - -2.3036575e+02 -2.3198713e+02 -3.5611848e+03 - -2.3089421e+02 -2.3171476e+02 -3.5612004e+03 - -2.3134711e+02 -2.3134711e+02 -3.5612056e+03 - -2.3171476e+02 -2.3089421e+02 -3.5612004e+03 - -2.3198713e+02 -2.3036575e+02 -3.5611848e+03 - -2.3215376e+02 -2.2977107e+02 -3.5611590e+03 - -2.3220368e+02 -2.2911925e+02 -3.5611229e+03 - -2.3212540e+02 -2.2841916e+02 -3.5610767e+03 - -2.3190676e+02 -2.2767946e+02 -3.5610205e+03 - -2.3153492e+02 -2.2690867e+02 -3.5609547e+03 - -2.3099624e+02 -2.2611515e+02 -3.5608793e+03 - -2.3027618e+02 -2.2530719e+02 -3.5607946e+03 - -2.2935925e+02 -2.2449296e+02 -3.5607010e+03 - -2.2822885e+02 -2.2368057e+02 -3.5605989e+03 - -2.2686723e+02 -2.2287803e+02 -3.5604885e+03 - -2.2525532e+02 -2.2209327e+02 -3.5603703e+03 - -2.2337270e+02 -2.2133411e+02 -3.5602448e+03 - -2.2119744e+02 -2.2060825e+02 -3.5601126e+03 - -2.1870606e+02 -2.1992318e+02 -3.5599741e+03 - -2.1587343e+02 -2.1928617e+02 -3.5598300e+03 - -2.1267276e+02 -2.1870419e+02 -3.5596810e+03 - -2.0907557e+02 -2.1818377e+02 -3.5595277e+03 - -2.0505178e+02 -2.1773093e+02 -3.5593709e+03 - -2.0056981e+02 -2.1735099e+02 -3.5592114e+03 - -1.9559681e+02 -2.1704847e+02 -3.5590502e+03 - -1.9009903e+02 -2.1682681e+02 -3.5588880e+03 - -1.8404229e+02 -2.1668823e+02 -3.5587260e+03 - -1.7739267e+02 -2.1663347e+02 -3.5585652e+03 - -1.7011742e+02 -2.1666153e+02 -3.5584066e+03 - -1.6218606e+02 -2.1676949e+02 -3.5582513e+03 - -1.5357181e+02 -2.1695225e+02 -3.5581006e+03 - -1.4425319e+02 -2.1720241e+02 -3.5579557e+03 - -1.3421591e+02 -2.1751016e+02 -3.5578178e+03 - -1.2345491e+02 -2.1786333e+02 -3.5576882e+03 - -1.1197649e+02 -2.1824755e+02 -3.5575680e+03 - -9.9800288e+01 -2.1864662e+02 -3.5574585e+03 - -8.6961063e+01 -2.1904300e+02 -3.5573610e+03 - -7.3509970e+01 -2.1941858e+02 -3.5572763e+03 - -5.9515085e+01 -2.1975553e+02 -3.5572056e+03 - -4.5061022e+01 -2.2003733e+02 -3.5571497e+03 - -3.0247486e+01 -2.2024975e+02 -3.5571092e+03 - -1.5186726e+01 -2.2038182e+02 -3.5570847e+03 - -4.8134273e-09 -2.2042663e+02 -3.5570765e+03 - 1.5186726e+01 -2.2038182e+02 -3.5570847e+03 - 3.0247486e+01 -2.2024975e+02 -3.5571092e+03 - 4.5061022e+01 -2.2003733e+02 -3.5571497e+03 - 5.9515085e+01 -2.1975553e+02 -3.5572056e+03 - 7.3509970e+01 -2.1941858e+02 -3.5572763e+03 - 8.6961063e+01 -2.1904300e+02 -3.5573610e+03 - 9.9800288e+01 -2.1864662e+02 -3.5574585e+03 - 1.1197649e+02 -2.1824755e+02 -3.5575680e+03 - 1.2345491e+02 -2.1786333e+02 -3.5576882e+03 - 1.3421591e+02 -2.1751016e+02 -3.5578178e+03 - 1.4425319e+02 -2.1720241e+02 -3.5579557e+03 - 1.5357181e+02 -2.1695225e+02 -3.5581006e+03 - 1.6218606e+02 -2.1676949e+02 -3.5582513e+03 - 1.7011742e+02 -2.1666153e+02 -3.5584066e+03 - 1.7739267e+02 -2.1663347e+02 -3.5585652e+03 - 1.8404229e+02 -2.1668823e+02 -3.5587260e+03 - 1.9009903e+02 -2.1682681e+02 -3.5588880e+03 - 1.9559681e+02 -2.1704847e+02 -3.5590502e+03 - 2.0056981e+02 -2.1735099e+02 -3.5592114e+03 - 2.0505178e+02 -2.1773093e+02 -3.5593709e+03 - 2.0907557e+02 -2.1818377e+02 -3.5595277e+03 - 2.1267276e+02 -2.1870419e+02 -3.5596810e+03 - 2.1587343e+02 -2.1928617e+02 -3.5598300e+03 - 2.1870606e+02 -2.1992318e+02 -3.5599741e+03 - 2.2119744e+02 -2.2060825e+02 -3.5601126e+03 - 2.2337270e+02 -2.2133411e+02 -3.5602448e+03 - 2.2525532e+02 -2.2209327e+02 -3.5603703e+03 - 2.2686723e+02 -2.2287803e+02 -3.5604885e+03 - 2.2822885e+02 -2.2368057e+02 -3.5605989e+03 - 2.2935925e+02 -2.2449296e+02 -3.5607010e+03 - 2.3027618e+02 -2.2530719e+02 -3.5607946e+03 - 2.3099624e+02 -2.2611515e+02 -3.5608793e+03 - 2.3153492e+02 -2.2690867e+02 -3.5609547e+03 - 2.3190676e+02 -2.2767946e+02 -3.5610205e+03 - 2.3212540e+02 -2.2841916e+02 -3.5610767e+03 - 2.3220368e+02 -2.2911925e+02 -3.5611229e+03 - 2.3215376e+02 -2.2977107e+02 -3.5611590e+03 - 2.3198713e+02 -2.3036575e+02 -3.5611848e+03 - 2.3171476e+02 -2.3089421e+02 -3.5612004e+03 - 2.3134711e+02 -2.3134711e+02 -3.5612056e+03 - 2.3089421e+02 -2.3171476e+02 -3.5612004e+03 - 2.3036575e+02 -2.3198713e+02 -3.5611848e+03 - 2.2977107e+02 -2.3215376e+02 -3.5611590e+03 - 2.2911925e+02 -2.3220368e+02 -3.5611229e+03 - 2.2841916e+02 -2.3212540e+02 -3.5610767e+03 - 2.2767946e+02 -2.3190676e+02 -3.5610205e+03 - 2.2690867e+02 -2.3153492e+02 -3.5609547e+03 - 2.2611515e+02 -2.3099624e+02 -3.5608793e+03 - 2.2530719e+02 -2.3027618e+02 -3.5607946e+03 - 2.2449296e+02 -2.2935925e+02 -3.5607010e+03 - 2.2368057e+02 -2.2822885e+02 -3.5605989e+03 - 2.2287803e+02 -2.2686723e+02 -3.5604885e+03 - 2.2209327e+02 -2.2525532e+02 -3.5603703e+03 - 2.2133411e+02 -2.2337270e+02 -3.5602448e+03 - 2.2060825e+02 -2.2119744e+02 -3.5601126e+03 - 2.1992318e+02 -2.1870606e+02 -3.5599741e+03 - 2.1928617e+02 -2.1587343e+02 -3.5598300e+03 - 2.1870419e+02 -2.1267276e+02 -3.5596810e+03 - 2.1818377e+02 -2.0907557e+02 -3.5595277e+03 - 2.1773093e+02 -2.0505178e+02 -3.5593709e+03 - 2.1735099e+02 -2.0056981e+02 -3.5592114e+03 - 2.1704847e+02 -1.9559681e+02 -3.5590502e+03 - 2.1682681e+02 -1.9009903e+02 -3.5588880e+03 - 2.1668823e+02 -1.8404229e+02 -3.5587260e+03 - 2.1663347e+02 -1.7739267e+02 -3.5585652e+03 - 2.1666153e+02 -1.7011742e+02 -3.5584066e+03 - 2.1676949e+02 -1.6218606e+02 -3.5582513e+03 - 2.1695225e+02 -1.5357181e+02 -3.5581006e+03 - 2.1720241e+02 -1.4425319e+02 -3.5579557e+03 - 2.1751016e+02 -1.3421591e+02 -3.5578178e+03 - 2.1786333e+02 -1.2345491e+02 -3.5576882e+03 - 2.1824755e+02 -1.1197649e+02 -3.5575680e+03 - 2.1864662e+02 -9.9800288e+01 -3.5574585e+03 - 2.1904300e+02 -8.6961063e+01 -3.5573610e+03 - 2.1941858e+02 -7.3509970e+01 -3.5572763e+03 - 2.1975553e+02 -5.9515085e+01 -3.5572056e+03 - 2.2003733e+02 -4.5061022e+01 -3.5571497e+03 - 2.2024975e+02 -3.0247486e+01 -3.5571092e+03 - 2.2038182e+02 -1.5186726e+01 -3.5570847e+03 - 2.2042663e+02 -2.4067136e-09 -3.5570765e+03 - 2.2038182e+02 1.5186726e+01 -3.5570847e+03 - 2.2024975e+02 3.0247486e+01 -3.5571092e+03 - 2.2003733e+02 4.5061022e+01 -3.5571497e+03 - 2.1975553e+02 5.9515085e+01 -3.5572056e+03 - 2.1941858e+02 7.3509970e+01 -3.5572763e+03 - 2.1904300e+02 8.6961063e+01 -3.5573610e+03 - 2.1864662e+02 9.9800288e+01 -3.5574585e+03 - 2.1824755e+02 1.1197649e+02 -3.5575680e+03 - 2.1786333e+02 1.2345491e+02 -3.5576882e+03 - 2.1751016e+02 1.3421591e+02 -3.5578178e+03 - 2.1720241e+02 1.4425319e+02 -3.5579557e+03 - 2.1695225e+02 1.5357181e+02 -3.5581006e+03 - 2.1676949e+02 1.6218606e+02 -3.5582513e+03 - 2.1666153e+02 1.7011742e+02 -3.5584066e+03 - 2.1663347e+02 1.7739267e+02 -3.5585652e+03 - 2.1668823e+02 1.8404229e+02 -3.5587260e+03 - 2.1682681e+02 1.9009903e+02 -3.5588880e+03 - 2.1704847e+02 1.9559681e+02 -3.5590502e+03 - 2.1735099e+02 2.0056981e+02 -3.5592114e+03 - 2.1773093e+02 2.0505178e+02 -3.5593709e+03 - 2.1818377e+02 2.0907557e+02 -3.5595277e+03 - 2.1870419e+02 2.1267276e+02 -3.5596810e+03 - 2.1928617e+02 2.1587343e+02 -3.5598300e+03 - 2.1992318e+02 2.1870606e+02 -3.5599741e+03 - 2.2060825e+02 2.2119744e+02 -3.5601126e+03 - 2.2133411e+02 2.2337270e+02 -3.5602448e+03 - 2.2209327e+02 2.2525532e+02 -3.5603703e+03 - 2.2287803e+02 2.2686723e+02 -3.5604885e+03 - 2.2368057e+02 2.2822885e+02 -3.5605989e+03 - 2.2449296e+02 2.2935925e+02 -3.5607010e+03 - 2.2530719e+02 2.3027618e+02 -3.5607946e+03 - 2.2611515e+02 2.3099624e+02 -3.5608793e+03 - 2.2690867e+02 2.3153492e+02 -3.5609547e+03 - 2.2767946e+02 2.3190676e+02 -3.5610205e+03 - 2.2841916e+02 2.3212540e+02 -3.5610767e+03 - 2.2911925e+02 2.3220368e+02 -3.5611229e+03 - 2.2977107e+02 2.3215376e+02 -3.5611590e+03 - 2.3036575e+02 2.3198713e+02 -3.5611848e+03 - 2.3089421e+02 2.3171476e+02 -3.5612004e+03 - 2.3134711e+02 2.3134711e+02 -3.5612056e+03 - 2.3171476e+02 2.3089421e+02 -3.5612004e+03 - 2.3198713e+02 2.3036575e+02 -3.5611848e+03 - 2.3215376e+02 2.2977107e+02 -3.5611590e+03 - 2.3220368e+02 2.2911925e+02 -3.5611229e+03 - 2.3212540e+02 2.2841916e+02 -3.5610767e+03 - 2.3190676e+02 2.2767946e+02 -3.5610205e+03 - 2.3153492e+02 2.2690867e+02 -3.5609547e+03 - 2.3099624e+02 2.2611515e+02 -3.5608793e+03 - 2.3027618e+02 2.2530719e+02 -3.5607946e+03 - 2.2935925e+02 2.2449296e+02 -3.5607010e+03 - 2.2822885e+02 2.2368057e+02 -3.5605989e+03 - 2.2686723e+02 2.2287803e+02 -3.5604885e+03 - 2.2525532e+02 2.2209327e+02 -3.5603703e+03 - 2.2337270e+02 2.2133411e+02 -3.5602448e+03 - 2.2119744e+02 2.2060825e+02 -3.5601126e+03 - 2.1870606e+02 2.1992318e+02 -3.5599741e+03 - 2.1587343e+02 2.1928617e+02 -3.5598300e+03 - 2.1267276e+02 2.1870419e+02 -3.5596810e+03 - 2.0907557e+02 2.1818377e+02 -3.5595277e+03 - 2.0505178e+02 2.1773093e+02 -3.5593709e+03 - 2.0056981e+02 2.1735099e+02 -3.5592114e+03 - 1.9559681e+02 2.1704847e+02 -3.5590502e+03 - 1.9009903e+02 2.1682681e+02 -3.5588880e+03 - 1.8404229e+02 2.1668823e+02 -3.5587260e+03 - 1.7739267e+02 2.1663347e+02 -3.5585652e+03 - 1.7011742e+02 2.1666153e+02 -3.5584066e+03 - 1.6218606e+02 2.1676949e+02 -3.5582513e+03 - 1.5357181e+02 2.1695225e+02 -3.5581006e+03 - 1.4425319e+02 2.1720241e+02 -3.5579557e+03 - 1.3421591e+02 2.1751016e+02 -3.5578178e+03 - 1.2345491e+02 2.1786333e+02 -3.5576882e+03 - 1.1197649e+02 2.1824755e+02 -3.5575680e+03 - 9.9800288e+01 2.1864662e+02 -3.5574585e+03 - 8.6961063e+01 2.1904300e+02 -3.5573610e+03 - 7.3509970e+01 2.1941858e+02 -3.5572763e+03 - 5.9515085e+01 2.1975553e+02 -3.5572056e+03 - 4.5061022e+01 2.2003733e+02 -3.5571497e+03 - 3.0247486e+01 2.2024975e+02 -3.5571092e+03 - 1.5186726e+01 2.2038182e+02 -3.5570847e+03 - -2.4067136e-09 2.2042663e+02 -3.5570765e+03 - -1.5186726e+01 2.2038182e+02 -3.5570847e+03 - -3.0247486e+01 2.2024975e+02 -3.5571092e+03 - -4.5061022e+01 2.2003733e+02 -3.5571497e+03 - -5.9515085e+01 2.1975553e+02 -3.5572056e+03 - -7.3509970e+01 2.1941858e+02 -3.5572763e+03 - -8.6961063e+01 2.1904300e+02 -3.5573610e+03 - -9.9800288e+01 2.1864662e+02 -3.5574585e+03 - -1.1197649e+02 2.1824755e+02 -3.5575680e+03 - -1.2345491e+02 2.1786333e+02 -3.5576882e+03 - -1.3421591e+02 2.1751016e+02 -3.5578178e+03 - -1.4425319e+02 2.1720241e+02 -3.5579557e+03 - -1.5357181e+02 2.1695225e+02 -3.5581006e+03 - -1.6218606e+02 2.1676949e+02 -3.5582513e+03 - -1.7011742e+02 2.1666153e+02 -3.5584066e+03 - -1.7739267e+02 2.1663347e+02 -3.5585652e+03 - -1.8404229e+02 2.1668823e+02 -3.5587260e+03 - -1.9009903e+02 2.1682681e+02 -3.5588880e+03 - -1.9559681e+02 2.1704847e+02 -3.5590502e+03 - -2.0056981e+02 2.1735099e+02 -3.5592114e+03 - -2.0505178e+02 2.1773093e+02 -3.5593709e+03 - -2.0907557e+02 2.1818377e+02 -3.5595277e+03 - -2.1267276e+02 2.1870419e+02 -3.5596810e+03 - -2.1587343e+02 2.1928617e+02 -3.5598300e+03 - -2.1870606e+02 2.1992318e+02 -3.5599741e+03 - -2.2119744e+02 2.2060825e+02 -3.5601126e+03 - -2.2337270e+02 2.2133411e+02 -3.5602448e+03 - -2.2525532e+02 2.2209327e+02 -3.5603703e+03 - -2.2686723e+02 2.2287803e+02 -3.5604885e+03 - -2.2822885e+02 2.2368057e+02 -3.5605989e+03 - -2.2935925e+02 2.2449296e+02 -3.5607010e+03 - -2.3027618e+02 2.2530719e+02 -3.5607946e+03 - -2.3099624e+02 2.2611515e+02 -3.5608793e+03 - -2.3153492e+02 2.2690867e+02 -3.5609547e+03 - -2.3190676e+02 2.2767946e+02 -3.5610205e+03 - -2.3212540e+02 2.2841916e+02 -3.5610767e+03 - -2.3220368e+02 2.2911925e+02 -3.5611229e+03 - -2.3215376e+02 2.2977107e+02 -3.5611590e+03 - -2.3198713e+02 2.3036575e+02 -3.5611848e+03 - -2.3171476e+02 2.3089421e+02 -3.5612004e+03 - -2.3134711e+02 2.3134711e+02 -3.5612056e+03 - -2.3089421e+02 2.3171476e+02 -3.5612004e+03 - -2.3036575e+02 2.3198713e+02 -3.5611848e+03 - -2.2977107e+02 2.3215376e+02 -3.5611590e+03 - -2.2911925e+02 2.3220368e+02 -3.5611229e+03 - -2.2841916e+02 2.3212540e+02 -3.5610767e+03 - -2.2767946e+02 2.3190676e+02 -3.5610205e+03 - -2.2690867e+02 2.3153492e+02 -3.5609547e+03 - -2.2611515e+02 2.3099624e+02 -3.5608793e+03 - -2.2530719e+02 2.3027618e+02 -3.5607946e+03 - -2.2449296e+02 2.2935925e+02 -3.5607010e+03 - -2.2368057e+02 2.2822885e+02 -3.5605989e+03 - -2.2287803e+02 2.2686723e+02 -3.5604885e+03 - -2.2209327e+02 2.2525532e+02 -3.5603703e+03 - -2.2133411e+02 2.2337270e+02 -3.5602448e+03 - -2.2060825e+02 2.2119744e+02 -3.5601126e+03 - -2.1992318e+02 2.1870606e+02 -3.5599741e+03 - -2.1928617e+02 2.1587343e+02 -3.5598300e+03 - -2.1870419e+02 2.1267276e+02 -3.5596810e+03 - -2.1818377e+02 2.0907557e+02 -3.5595277e+03 - -2.1773093e+02 2.0505178e+02 -3.5593709e+03 - -2.1735099e+02 2.0056981e+02 -3.5592114e+03 - -2.1704847e+02 1.9559681e+02 -3.5590502e+03 - -2.1682681e+02 1.9009903e+02 -3.5588880e+03 - -2.1668823e+02 1.8404229e+02 -3.5587260e+03 - -2.1663347e+02 1.7739267e+02 -3.5585652e+03 - -2.1666153e+02 1.7011742e+02 -3.5584066e+03 - -2.1676949e+02 1.6218606e+02 -3.5582513e+03 - -2.1695225e+02 1.5357181e+02 -3.5581006e+03 - -2.1720241e+02 1.4425319e+02 -3.5579557e+03 - -2.1751016e+02 1.3421591e+02 -3.5578178e+03 - -2.1786333e+02 1.2345491e+02 -3.5576882e+03 - -2.1824755e+02 1.1197649e+02 -3.5575680e+03 - -2.1864662e+02 9.9800288e+01 -3.5574585e+03 - -2.1904300e+02 8.6961063e+01 -3.5573610e+03 - -2.1941858e+02 7.3509970e+01 -3.5572763e+03 - -2.1975553e+02 5.9515085e+01 -3.5572056e+03 - -2.2003733e+02 4.5061022e+01 -3.5571497e+03 - -2.2024975e+02 3.0247486e+01 -3.5571092e+03 - -2.2038182e+02 1.5186726e+01 -3.5570847e+03 - -2.2042663e+02 2.4067136e-09 -3.5570765e+03 - -1.7174583e+02 0.0000000e+00 -3.5537358e+03 - -1.7171176e+02 -1.1551968e+01 -3.5537405e+03 - -1.7161134e+02 -2.3009669e+01 -3.5537544e+03 - -1.7144973e+02 -3.4282335e+01 -3.5537775e+03 - -1.7123514e+02 -4.5285890e+01 -3.5538094e+03 - -1.7097823e+02 -5.5945584e+01 -3.5538498e+03 - -1.7069137e+02 -6.6197895e+01 -3.5538981e+03 - -1.7038793e+02 -7.5991618e+01 -3.5539538e+03 - -1.7008147e+02 -8.5288159e+01 -3.5540163e+03 - -1.6978512e+02 -9.4061158e+01 -3.5540850e+03 - -1.6951105e+02 -1.0229555e+02 -3.5541591e+03 - -1.6927001e+02 -1.0998628e+02 -3.5542380e+03 - -1.6907112e+02 -1.1713680e+02 -3.5543209e+03 - -1.6892171e+02 -1.2375747e+02 -3.5544072e+03 - -1.6882731e+02 -1.2986411e+02 -3.5544961e+03 - -1.6879170e+02 -1.3547653e+02 -3.5545870e+03 - -1.6881703e+02 -1.4061733e+02 -3.5546792e+03 - -1.6890398e+02 -1.4531089e+02 -3.5547721e+03 - -1.6905191e+02 -1.4958247e+02 -3.5548652e+03 - -1.6925909e+02 -1.5345756e+02 -3.5549578e+03 - -1.6952284e+02 -1.5696137e+02 -3.5550493e+03 - -1.6983966e+02 -1.6011843e+02 -3.5551394e+03 - -1.7020547e+02 -1.6295236e+02 -3.5552276e+03 - -1.7061563e+02 -1.6548568e+02 -3.5553133e+03 - -1.7106514e+02 -1.6773968e+02 -3.5553962e+03 - -1.7154864e+02 -1.6973444e+02 -3.5554759e+03 - -1.7206059e+02 -1.7148878e+02 -3.5555520e+03 - -1.7259524e+02 -1.7302028e+02 -3.5556242e+03 - -1.7314671e+02 -1.7434537e+02 -3.5556923e+03 - -1.7370903e+02 -1.7547938e+02 -3.5557559e+03 - -1.7427616e+02 -1.7643657e+02 -3.5558147e+03 - -1.7484198e+02 -1.7723026e+02 -3.5558687e+03 - -1.7540033e+02 -1.7787290e+02 -3.5559175e+03 - -1.7594499e+02 -1.7837611e+02 -3.5559609e+03 - -1.7646967e+02 -1.7875078e+02 -3.5559989e+03 - -1.7696803e+02 -1.7900715e+02 -3.5560313e+03 - -1.7743361e+02 -1.7915486e+02 -3.5560579e+03 - -1.7785986e+02 -1.7920304e+02 -3.5560787e+03 - -1.7824007e+02 -1.7916032e+02 -3.5560936e+03 - -1.7856740e+02 -1.7903495e+02 -3.5561026e+03 - -1.7883479e+02 -1.7883479e+02 -3.5561056e+03 - -1.7903495e+02 -1.7856740e+02 -3.5561026e+03 - -1.7916032e+02 -1.7824007e+02 -3.5560936e+03 - -1.7920304e+02 -1.7785986e+02 -3.5560787e+03 - -1.7915486e+02 -1.7743361e+02 -3.5560579e+03 - -1.7900715e+02 -1.7696803e+02 -3.5560313e+03 - -1.7875078e+02 -1.7646967e+02 -3.5559989e+03 - -1.7837611e+02 -1.7594499e+02 -3.5559609e+03 - -1.7787290e+02 -1.7540033e+02 -3.5559175e+03 - -1.7723026e+02 -1.7484198e+02 -3.5558687e+03 - -1.7643657e+02 -1.7427616e+02 -3.5558147e+03 - -1.7547938e+02 -1.7370903e+02 -3.5557559e+03 - -1.7434537e+02 -1.7314671e+02 -3.5556923e+03 - -1.7302028e+02 -1.7259524e+02 -3.5556242e+03 - -1.7148878e+02 -1.7206059e+02 -3.5555520e+03 - -1.6973444e+02 -1.7154864e+02 -3.5554759e+03 - -1.6773968e+02 -1.7106514e+02 -3.5553962e+03 - -1.6548568e+02 -1.7061563e+02 -3.5553133e+03 - -1.6295236e+02 -1.7020547e+02 -3.5552276e+03 - -1.6011843e+02 -1.6983966e+02 -3.5551394e+03 - -1.5696137e+02 -1.6952284e+02 -3.5550493e+03 - -1.5345756e+02 -1.6925909e+02 -3.5549578e+03 - -1.4958247e+02 -1.6905191e+02 -3.5548652e+03 - -1.4531089e+02 -1.6890398e+02 -3.5547721e+03 - -1.4061733e+02 -1.6881703e+02 -3.5546792e+03 - -1.3547653e+02 -1.6879170e+02 -3.5545870e+03 - -1.2986411e+02 -1.6882731e+02 -3.5544961e+03 - -1.2375747e+02 -1.6892171e+02 -3.5544072e+03 - -1.1713680e+02 -1.6907112e+02 -3.5543209e+03 - -1.0998628e+02 -1.6927001e+02 -3.5542380e+03 - -1.0229555e+02 -1.6951105e+02 -3.5541591e+03 - -9.4061158e+01 -1.6978512e+02 -3.5540850e+03 - -8.5288159e+01 -1.7008147e+02 -3.5540163e+03 - -7.5991618e+01 -1.7038793e+02 -3.5539538e+03 - -6.6197895e+01 -1.7069137e+02 -3.5538981e+03 - -5.5945584e+01 -1.7097823e+02 -3.5538498e+03 - -4.5285890e+01 -1.7123514e+02 -3.5538094e+03 - -3.4282335e+01 -1.7144973e+02 -3.5537775e+03 - -2.3009669e+01 -1.7161134e+02 -3.5537544e+03 - -1.1551968e+01 -1.7171176e+02 -3.5537405e+03 - -4.8134273e-09 -1.7174583e+02 -3.5537358e+03 - 1.1551968e+01 -1.7171176e+02 -3.5537405e+03 - 2.3009669e+01 -1.7161134e+02 -3.5537544e+03 - 3.4282335e+01 -1.7144973e+02 -3.5537775e+03 - 4.5285890e+01 -1.7123514e+02 -3.5538094e+03 - 5.5945584e+01 -1.7097823e+02 -3.5538498e+03 - 6.6197895e+01 -1.7069137e+02 -3.5538981e+03 - 7.5991618e+01 -1.7038793e+02 -3.5539538e+03 - 8.5288159e+01 -1.7008147e+02 -3.5540163e+03 - 9.4061158e+01 -1.6978512e+02 -3.5540850e+03 - 1.0229555e+02 -1.6951105e+02 -3.5541591e+03 - 1.0998628e+02 -1.6927001e+02 -3.5542380e+03 - 1.1713680e+02 -1.6907112e+02 -3.5543209e+03 - 1.2375747e+02 -1.6892171e+02 -3.5544072e+03 - 1.2986411e+02 -1.6882731e+02 -3.5544961e+03 - 1.3547653e+02 -1.6879170e+02 -3.5545870e+03 - 1.4061733e+02 -1.6881703e+02 -3.5546792e+03 - 1.4531089e+02 -1.6890398e+02 -3.5547721e+03 - 1.4958247e+02 -1.6905191e+02 -3.5548652e+03 - 1.5345756e+02 -1.6925909e+02 -3.5549578e+03 - 1.5696137e+02 -1.6952284e+02 -3.5550493e+03 - 1.6011843e+02 -1.6983966e+02 -3.5551394e+03 - 1.6295236e+02 -1.7020547e+02 -3.5552276e+03 - 1.6548568e+02 -1.7061563e+02 -3.5553133e+03 - 1.6773968e+02 -1.7106514e+02 -3.5553962e+03 - 1.6973444e+02 -1.7154864e+02 -3.5554759e+03 - 1.7148878e+02 -1.7206059e+02 -3.5555520e+03 - 1.7302028e+02 -1.7259524e+02 -3.5556242e+03 - 1.7434537e+02 -1.7314671e+02 -3.5556923e+03 - 1.7547938e+02 -1.7370903e+02 -3.5557559e+03 - 1.7643657e+02 -1.7427616e+02 -3.5558147e+03 - 1.7723026e+02 -1.7484198e+02 -3.5558687e+03 - 1.7787290e+02 -1.7540033e+02 -3.5559175e+03 - 1.7837611e+02 -1.7594499e+02 -3.5559609e+03 - 1.7875078e+02 -1.7646967e+02 -3.5559989e+03 - 1.7900715e+02 -1.7696803e+02 -3.5560313e+03 - 1.7915486e+02 -1.7743361e+02 -3.5560579e+03 - 1.7920304e+02 -1.7785986e+02 -3.5560787e+03 - 1.7916032e+02 -1.7824007e+02 -3.5560936e+03 - 1.7903495e+02 -1.7856740e+02 -3.5561026e+03 - 1.7883479e+02 -1.7883479e+02 -3.5561056e+03 - 1.7856740e+02 -1.7903495e+02 -3.5561026e+03 - 1.7824007e+02 -1.7916032e+02 -3.5560936e+03 - 1.7785986e+02 -1.7920304e+02 -3.5560787e+03 - 1.7743361e+02 -1.7915486e+02 -3.5560579e+03 - 1.7696803e+02 -1.7900715e+02 -3.5560313e+03 - 1.7646967e+02 -1.7875078e+02 -3.5559989e+03 - 1.7594499e+02 -1.7837611e+02 -3.5559609e+03 - 1.7540033e+02 -1.7787290e+02 -3.5559175e+03 - 1.7484198e+02 -1.7723026e+02 -3.5558687e+03 - 1.7427616e+02 -1.7643657e+02 -3.5558147e+03 - 1.7370903e+02 -1.7547938e+02 -3.5557559e+03 - 1.7314671e+02 -1.7434537e+02 -3.5556923e+03 - 1.7259524e+02 -1.7302028e+02 -3.5556242e+03 - 1.7206059e+02 -1.7148878e+02 -3.5555520e+03 - 1.7154864e+02 -1.6973444e+02 -3.5554759e+03 - 1.7106514e+02 -1.6773968e+02 -3.5553962e+03 - 1.7061563e+02 -1.6548568e+02 -3.5553133e+03 - 1.7020547e+02 -1.6295236e+02 -3.5552276e+03 - 1.6983966e+02 -1.6011843e+02 -3.5551394e+03 - 1.6952284e+02 -1.5696137e+02 -3.5550493e+03 - 1.6925909e+02 -1.5345756e+02 -3.5549578e+03 - 1.6905191e+02 -1.4958247e+02 -3.5548652e+03 - 1.6890398e+02 -1.4531089e+02 -3.5547721e+03 - 1.6881703e+02 -1.4061733e+02 -3.5546792e+03 - 1.6879170e+02 -1.3547653e+02 -3.5545870e+03 - 1.6882731e+02 -1.2986411e+02 -3.5544961e+03 - 1.6892171e+02 -1.2375747e+02 -3.5544072e+03 - 1.6907112e+02 -1.1713680e+02 -3.5543209e+03 - 1.6927001e+02 -1.0998628e+02 -3.5542380e+03 - 1.6951105e+02 -1.0229555e+02 -3.5541591e+03 - 1.6978512e+02 -9.4061158e+01 -3.5540850e+03 - 1.7008147e+02 -8.5288159e+01 -3.5540163e+03 - 1.7038793e+02 -7.5991618e+01 -3.5539538e+03 - 1.7069137e+02 -6.6197895e+01 -3.5538981e+03 - 1.7097823e+02 -5.5945584e+01 -3.5538498e+03 - 1.7123514e+02 -4.5285890e+01 -3.5538094e+03 - 1.7144973e+02 -3.4282335e+01 -3.5537775e+03 - 1.7161134e+02 -2.3009669e+01 -3.5537544e+03 - 1.7171176e+02 -1.1551968e+01 -3.5537405e+03 - 1.7174583e+02 -4.8134273e-09 -3.5537358e+03 - 1.7171176e+02 1.1551968e+01 -3.5537405e+03 - 1.7161134e+02 2.3009669e+01 -3.5537544e+03 - 1.7144973e+02 3.4282335e+01 -3.5537775e+03 - 1.7123514e+02 4.5285890e+01 -3.5538094e+03 - 1.7097823e+02 5.5945584e+01 -3.5538498e+03 - 1.7069137e+02 6.6197895e+01 -3.5538981e+03 - 1.7038793e+02 7.5991618e+01 -3.5539538e+03 - 1.7008147e+02 8.5288159e+01 -3.5540163e+03 - 1.6978512e+02 9.4061158e+01 -3.5540850e+03 - 1.6951105e+02 1.0229555e+02 -3.5541591e+03 - 1.6927001e+02 1.0998628e+02 -3.5542380e+03 - 1.6907112e+02 1.1713680e+02 -3.5543209e+03 - 1.6892171e+02 1.2375747e+02 -3.5544072e+03 - 1.6882731e+02 1.2986411e+02 -3.5544961e+03 - 1.6879170e+02 1.3547653e+02 -3.5545870e+03 - 1.6881703e+02 1.4061733e+02 -3.5546792e+03 - 1.6890398e+02 1.4531089e+02 -3.5547721e+03 - 1.6905191e+02 1.4958247e+02 -3.5548652e+03 - 1.6925909e+02 1.5345756e+02 -3.5549578e+03 - 1.6952284e+02 1.5696137e+02 -3.5550493e+03 - 1.6983966e+02 1.6011843e+02 -3.5551394e+03 - 1.7020547e+02 1.6295236e+02 -3.5552276e+03 - 1.7061563e+02 1.6548568e+02 -3.5553133e+03 - 1.7106514e+02 1.6773968e+02 -3.5553962e+03 - 1.7154864e+02 1.6973444e+02 -3.5554759e+03 - 1.7206059e+02 1.7148878e+02 -3.5555520e+03 - 1.7259524e+02 1.7302028e+02 -3.5556242e+03 - 1.7314671e+02 1.7434537e+02 -3.5556923e+03 - 1.7370903e+02 1.7547938e+02 -3.5557559e+03 - 1.7427616e+02 1.7643657e+02 -3.5558147e+03 - 1.7484198e+02 1.7723026e+02 -3.5558687e+03 - 1.7540033e+02 1.7787290e+02 -3.5559175e+03 - 1.7594499e+02 1.7837611e+02 -3.5559609e+03 - 1.7646967e+02 1.7875078e+02 -3.5559989e+03 - 1.7696803e+02 1.7900715e+02 -3.5560313e+03 - 1.7743361e+02 1.7915486e+02 -3.5560579e+03 - 1.7785986e+02 1.7920304e+02 -3.5560787e+03 - 1.7824007e+02 1.7916032e+02 -3.5560936e+03 - 1.7856740e+02 1.7903495e+02 -3.5561026e+03 - 1.7883479e+02 1.7883479e+02 -3.5561056e+03 - 1.7903495e+02 1.7856740e+02 -3.5561026e+03 - 1.7916032e+02 1.7824007e+02 -3.5560936e+03 - 1.7920304e+02 1.7785986e+02 -3.5560787e+03 - 1.7915486e+02 1.7743361e+02 -3.5560579e+03 - 1.7900715e+02 1.7696803e+02 -3.5560313e+03 - 1.7875078e+02 1.7646967e+02 -3.5559989e+03 - 1.7837611e+02 1.7594499e+02 -3.5559609e+03 - 1.7787290e+02 1.7540033e+02 -3.5559175e+03 - 1.7723026e+02 1.7484198e+02 -3.5558687e+03 - 1.7643657e+02 1.7427616e+02 -3.5558147e+03 - 1.7547938e+02 1.7370903e+02 -3.5557559e+03 - 1.7434537e+02 1.7314671e+02 -3.5556923e+03 - 1.7302028e+02 1.7259524e+02 -3.5556242e+03 - 1.7148878e+02 1.7206059e+02 -3.5555520e+03 - 1.6973444e+02 1.7154864e+02 -3.5554759e+03 - 1.6773968e+02 1.7106514e+02 -3.5553962e+03 - 1.6548568e+02 1.7061563e+02 -3.5553133e+03 - 1.6295236e+02 1.7020547e+02 -3.5552276e+03 - 1.6011843e+02 1.6983966e+02 -3.5551394e+03 - 1.5696137e+02 1.6952284e+02 -3.5550493e+03 - 1.5345756e+02 1.6925909e+02 -3.5549578e+03 - 1.4958247e+02 1.6905191e+02 -3.5548652e+03 - 1.4531089e+02 1.6890398e+02 -3.5547721e+03 - 1.4061733e+02 1.6881703e+02 -3.5546792e+03 - 1.3547653e+02 1.6879170e+02 -3.5545870e+03 - 1.2986411e+02 1.6882731e+02 -3.5544961e+03 - 1.2375747e+02 1.6892171e+02 -3.5544072e+03 - 1.1713680e+02 1.6907112e+02 -3.5543209e+03 - 1.0998628e+02 1.6927001e+02 -3.5542380e+03 - 1.0229555e+02 1.6951105e+02 -3.5541591e+03 - 9.4061158e+01 1.6978512e+02 -3.5540850e+03 - 8.5288159e+01 1.7008147e+02 -3.5540163e+03 - 7.5991618e+01 1.7038793e+02 -3.5539538e+03 - 6.6197895e+01 1.7069137e+02 -3.5538981e+03 - 5.5945584e+01 1.7097823e+02 -3.5538498e+03 - 4.5285890e+01 1.7123514e+02 -3.5538094e+03 - 3.4282335e+01 1.7144973e+02 -3.5537775e+03 - 2.3009669e+01 1.7161134e+02 -3.5537544e+03 - 1.1551968e+01 1.7171176e+02 -3.5537405e+03 - 4.8134273e-09 1.7174583e+02 -3.5537358e+03 - -1.1551968e+01 1.7171176e+02 -3.5537405e+03 - -2.3009669e+01 1.7161134e+02 -3.5537544e+03 - -3.4282335e+01 1.7144973e+02 -3.5537775e+03 - -4.5285890e+01 1.7123514e+02 -3.5538094e+03 - -5.5945584e+01 1.7097823e+02 -3.5538498e+03 - -6.6197895e+01 1.7069137e+02 -3.5538981e+03 - -7.5991618e+01 1.7038793e+02 -3.5539538e+03 - -8.5288159e+01 1.7008147e+02 -3.5540163e+03 - -9.4061158e+01 1.6978512e+02 -3.5540850e+03 - -1.0229555e+02 1.6951105e+02 -3.5541591e+03 - -1.0998628e+02 1.6927001e+02 -3.5542380e+03 - -1.1713680e+02 1.6907112e+02 -3.5543209e+03 - -1.2375747e+02 1.6892171e+02 -3.5544072e+03 - -1.2986411e+02 1.6882731e+02 -3.5544961e+03 - -1.3547653e+02 1.6879170e+02 -3.5545870e+03 - -1.4061733e+02 1.6881703e+02 -3.5546792e+03 - -1.4531089e+02 1.6890398e+02 -3.5547721e+03 - -1.4958247e+02 1.6905191e+02 -3.5548652e+03 - -1.5345756e+02 1.6925909e+02 -3.5549578e+03 - -1.5696137e+02 1.6952284e+02 -3.5550493e+03 - -1.6011843e+02 1.6983966e+02 -3.5551394e+03 - -1.6295236e+02 1.7020547e+02 -3.5552276e+03 - -1.6548568e+02 1.7061563e+02 -3.5553133e+03 - -1.6773968e+02 1.7106514e+02 -3.5553962e+03 - -1.6973444e+02 1.7154864e+02 -3.5554759e+03 - -1.7148878e+02 1.7206059e+02 -3.5555520e+03 - -1.7302028e+02 1.7259524e+02 -3.5556242e+03 - -1.7434537e+02 1.7314671e+02 -3.5556923e+03 - -1.7547938e+02 1.7370903e+02 -3.5557559e+03 - -1.7643657e+02 1.7427616e+02 -3.5558147e+03 - -1.7723026e+02 1.7484198e+02 -3.5558687e+03 - -1.7787290e+02 1.7540033e+02 -3.5559175e+03 - -1.7837611e+02 1.7594499e+02 -3.5559609e+03 - -1.7875078e+02 1.7646967e+02 -3.5559989e+03 - -1.7900715e+02 1.7696803e+02 -3.5560313e+03 - -1.7915486e+02 1.7743361e+02 -3.5560579e+03 - -1.7920304e+02 1.7785986e+02 -3.5560787e+03 - -1.7916032e+02 1.7824007e+02 -3.5560936e+03 - -1.7903495e+02 1.7856740e+02 -3.5561026e+03 - -1.7883479e+02 1.7883479e+02 -3.5561056e+03 - -1.7856740e+02 1.7903495e+02 -3.5561026e+03 - -1.7824007e+02 1.7916032e+02 -3.5560936e+03 - -1.7785986e+02 1.7920304e+02 -3.5560787e+03 - -1.7743361e+02 1.7915486e+02 -3.5560579e+03 - -1.7696803e+02 1.7900715e+02 -3.5560313e+03 - -1.7646967e+02 1.7875078e+02 -3.5559989e+03 - -1.7594499e+02 1.7837611e+02 -3.5559609e+03 - -1.7540033e+02 1.7787290e+02 -3.5559175e+03 - -1.7484198e+02 1.7723026e+02 -3.5558687e+03 - -1.7427616e+02 1.7643657e+02 -3.5558147e+03 - -1.7370903e+02 1.7547938e+02 -3.5557559e+03 - -1.7314671e+02 1.7434537e+02 -3.5556923e+03 - -1.7259524e+02 1.7302028e+02 -3.5556242e+03 - -1.7206059e+02 1.7148878e+02 -3.5555520e+03 - -1.7154864e+02 1.6973444e+02 -3.5554759e+03 - -1.7106514e+02 1.6773968e+02 -3.5553962e+03 - -1.7061563e+02 1.6548568e+02 -3.5553133e+03 - -1.7020547e+02 1.6295236e+02 -3.5552276e+03 - -1.6983966e+02 1.6011843e+02 -3.5551394e+03 - -1.6952284e+02 1.5696137e+02 -3.5550493e+03 - -1.6925909e+02 1.5345756e+02 -3.5549578e+03 - -1.6905191e+02 1.4958247e+02 -3.5548652e+03 - -1.6890398e+02 1.4531089e+02 -3.5547721e+03 - -1.6881703e+02 1.4061733e+02 -3.5546792e+03 - -1.6879170e+02 1.3547653e+02 -3.5545870e+03 - -1.6882731e+02 1.2986411e+02 -3.5544961e+03 - -1.6892171e+02 1.2375747e+02 -3.5544072e+03 - -1.6907112e+02 1.1713680e+02 -3.5543209e+03 - -1.6927001e+02 1.0998628e+02 -3.5542380e+03 - -1.6951105e+02 1.0229555e+02 -3.5541591e+03 - -1.6978512e+02 9.4061158e+01 -3.5540850e+03 - -1.7008147e+02 8.5288159e+01 -3.5540163e+03 - -1.7038793e+02 7.5991618e+01 -3.5539538e+03 - -1.7069137e+02 6.6197895e+01 -3.5538981e+03 - -1.7097823e+02 5.5945584e+01 -3.5538498e+03 - -1.7123514e+02 4.5285890e+01 -3.5538094e+03 - -1.7144973e+02 3.4282335e+01 -3.5537775e+03 - -1.7161134e+02 2.3009669e+01 -3.5537544e+03 - -1.7171176e+02 1.1551968e+01 -3.5537405e+03 - -1.7174583e+02 0.0000000e+00 -3.5537358e+03 - -1.1765312e+02 1.4440282e-08 -3.5510859e+03 - -1.1763020e+02 -7.7809261e+00 -3.5510880e+03 - -1.1756263e+02 -1.5499107e+01 -3.5510943e+03 - -1.1745384e+02 -2.3094115e+01 -3.5511046e+03 - -1.1730930e+02 -3.0509952e+01 -3.5511190e+03 - -1.1713610e+02 -3.7696800e+01 -3.5511371e+03 - -1.1694249e+02 -4.4612281e+01 -3.5511588e+03 - -1.1673736e+02 -5.1222186e+01 -3.5511838e+03 - -1.1652975e+02 -5.7500677e+01 -3.5512119e+03 - -1.1632842e+02 -6.3430040e+01 -3.5512428e+03 - -1.1614144e+02 -6.9000077e+01 -3.5512762e+03 - -1.1597601e+02 -7.4207249e+01 -3.5513117e+03 - -1.1583817e+02 -7.9053685e+01 -3.5513490e+03 - -1.1573281e+02 -8.3546143e+01 -3.5513878e+03 - -1.1566360e+02 -8.7695007e+01 -3.5514279e+03 - -1.1563303e+02 -9.1513355e+01 -3.5514689e+03 - -1.1564250e+02 -9.5016143e+01 -3.5515104e+03 - -1.1569244e+02 -9.8219514e+01 -3.5515523e+03 - -1.1578239e+02 -1.0114022e+02 -3.5515943e+03 - -1.1591115e+02 -1.0379520e+02 -3.5516361e+03 - -1.1607687e+02 -1.0620119e+02 -3.5516774e+03 - -1.1627719e+02 -1.0837451e+02 -3.5517181e+03 - -1.1650931e+02 -1.1033085e+02 -3.5517579e+03 - -1.1677010e+02 -1.1208521e+02 -3.5517966e+03 - -1.1705615e+02 -1.1365177e+02 -3.5518341e+03 - -1.1736386e+02 -1.1504388e+02 -3.5518701e+03 - -1.1768945e+02 -1.1627406e+02 -3.5519045e+03 - -1.1802903e+02 -1.1735405e+02 -3.5519372e+03 - -1.1837865e+02 -1.1829478e+02 -3.5519679e+03 - -1.1873425e+02 -1.1910646e+02 -3.5519967e+03 - -1.1909177e+02 -1.1979858e+02 -3.5520233e+03 - -1.1944707e+02 -1.2038004e+02 -3.5520477e+03 - -1.1979601e+02 -1.2085911e+02 -3.5520698e+03 - -1.2013439e+02 -1.2124355e+02 -3.5520895e+03 - -1.2045800e+02 -1.2154061e+02 -3.5521067e+03 - -1.2076255e+02 -1.2175712e+02 -3.5521213e+03 - -1.2104371e+02 -1.2189952e+02 -3.5521334e+03 - -1.2129709e+02 -1.2197388e+02 -3.5521428e+03 - -1.2151820e+02 -1.2198597e+02 -3.5521496e+03 - -1.2170244e+02 -1.2194129e+02 -3.5521536e+03 - -1.2184509e+02 -1.2184509e+02 -3.5521550e+03 - -1.2194129e+02 -1.2170244e+02 -3.5521536e+03 - -1.2198597e+02 -1.2151820e+02 -3.5521496e+03 - -1.2197388e+02 -1.2129709e+02 -3.5521428e+03 - -1.2189952e+02 -1.2104371e+02 -3.5521334e+03 - -1.2175712e+02 -1.2076255e+02 -3.5521213e+03 - -1.2154061e+02 -1.2045800e+02 -3.5521067e+03 - -1.2124355e+02 -1.2013439e+02 -3.5520895e+03 - -1.2085911e+02 -1.1979601e+02 -3.5520698e+03 - -1.2038004e+02 -1.1944707e+02 -3.5520477e+03 - -1.1979858e+02 -1.1909177e+02 -3.5520233e+03 - -1.1910646e+02 -1.1873425e+02 -3.5519967e+03 - -1.1829478e+02 -1.1837865e+02 -3.5519679e+03 - -1.1735405e+02 -1.1802903e+02 -3.5519372e+03 - -1.1627406e+02 -1.1768945e+02 -3.5519045e+03 - -1.1504388e+02 -1.1736386e+02 -3.5518701e+03 - -1.1365177e+02 -1.1705615e+02 -3.5518341e+03 - -1.1208521e+02 -1.1677010e+02 -3.5517966e+03 - -1.1033085e+02 -1.1650931e+02 -3.5517579e+03 - -1.0837451e+02 -1.1627719e+02 -3.5517181e+03 - -1.0620119e+02 -1.1607687e+02 -3.5516774e+03 - -1.0379520e+02 -1.1591115e+02 -3.5516361e+03 - -1.0114022e+02 -1.1578239e+02 -3.5515943e+03 - -9.8219514e+01 -1.1569244e+02 -3.5515523e+03 - -9.5016143e+01 -1.1564250e+02 -3.5515104e+03 - -9.1513355e+01 -1.1563303e+02 -3.5514689e+03 - -8.7695007e+01 -1.1566360e+02 -3.5514279e+03 - -8.3546143e+01 -1.1573281e+02 -3.5513878e+03 - -7.9053685e+01 -1.1583817e+02 -3.5513490e+03 - -7.4207249e+01 -1.1597601e+02 -3.5513117e+03 - -6.9000077e+01 -1.1614144e+02 -3.5512762e+03 - -6.3430040e+01 -1.1632842e+02 -3.5512428e+03 - -5.7500677e+01 -1.1652975e+02 -3.5512119e+03 - -5.1222186e+01 -1.1673736e+02 -3.5511838e+03 - -4.4612281e+01 -1.1694249e+02 -3.5511588e+03 - -3.7696800e+01 -1.1713610e+02 -3.5511371e+03 - -3.0509952e+01 -1.1730930e+02 -3.5511190e+03 - -2.3094115e+01 -1.1745384e+02 -3.5511046e+03 - -1.5499107e+01 -1.1756263e+02 -3.5510943e+03 - -7.7809261e+00 -1.1763020e+02 -3.5510880e+03 - 0.0000000e+00 -1.1765312e+02 -3.5510859e+03 - 7.7809261e+00 -1.1763020e+02 -3.5510880e+03 - 1.5499107e+01 -1.1756263e+02 -3.5510943e+03 - 2.3094115e+01 -1.1745384e+02 -3.5511046e+03 - 3.0509952e+01 -1.1730930e+02 -3.5511190e+03 - 3.7696800e+01 -1.1713610e+02 -3.5511371e+03 - 4.4612281e+01 -1.1694249e+02 -3.5511588e+03 - 5.1222186e+01 -1.1673736e+02 -3.5511838e+03 - 5.7500677e+01 -1.1652975e+02 -3.5512119e+03 - 6.3430040e+01 -1.1632842e+02 -3.5512428e+03 - 6.9000077e+01 -1.1614144e+02 -3.5512762e+03 - 7.4207249e+01 -1.1597601e+02 -3.5513117e+03 - 7.9053685e+01 -1.1583817e+02 -3.5513490e+03 - 8.3546143e+01 -1.1573281e+02 -3.5513878e+03 - 8.7695007e+01 -1.1566360e+02 -3.5514279e+03 - 9.1513355e+01 -1.1563303e+02 -3.5514689e+03 - 9.5016143e+01 -1.1564250e+02 -3.5515104e+03 - 9.8219514e+01 -1.1569244e+02 -3.5515523e+03 - 1.0114022e+02 -1.1578239e+02 -3.5515943e+03 - 1.0379520e+02 -1.1591115e+02 -3.5516361e+03 - 1.0620119e+02 -1.1607687e+02 -3.5516774e+03 - 1.0837451e+02 -1.1627719e+02 -3.5517181e+03 - 1.1033085e+02 -1.1650931e+02 -3.5517579e+03 - 1.1208521e+02 -1.1677010e+02 -3.5517966e+03 - 1.1365177e+02 -1.1705615e+02 -3.5518341e+03 - 1.1504388e+02 -1.1736386e+02 -3.5518701e+03 - 1.1627406e+02 -1.1768945e+02 -3.5519045e+03 - 1.1735405e+02 -1.1802903e+02 -3.5519372e+03 - 1.1829478e+02 -1.1837865e+02 -3.5519679e+03 - 1.1910646e+02 -1.1873425e+02 -3.5519967e+03 - 1.1979858e+02 -1.1909177e+02 -3.5520233e+03 - 1.2038004e+02 -1.1944707e+02 -3.5520477e+03 - 1.2085911e+02 -1.1979601e+02 -3.5520698e+03 - 1.2124355e+02 -1.2013439e+02 -3.5520895e+03 - 1.2154061e+02 -1.2045800e+02 -3.5521067e+03 - 1.2175712e+02 -1.2076255e+02 -3.5521213e+03 - 1.2189952e+02 -1.2104371e+02 -3.5521334e+03 - 1.2197388e+02 -1.2129709e+02 -3.5521428e+03 - 1.2198597e+02 -1.2151820e+02 -3.5521496e+03 - 1.2194129e+02 -1.2170244e+02 -3.5521536e+03 - 1.2184509e+02 -1.2184509e+02 -3.5521550e+03 - 1.2170244e+02 -1.2194129e+02 -3.5521536e+03 - 1.2151820e+02 -1.2198597e+02 -3.5521496e+03 - 1.2129709e+02 -1.2197388e+02 -3.5521428e+03 - 1.2104371e+02 -1.2189952e+02 -3.5521334e+03 - 1.2076255e+02 -1.2175712e+02 -3.5521213e+03 - 1.2045800e+02 -1.2154061e+02 -3.5521067e+03 - 1.2013439e+02 -1.2124355e+02 -3.5520895e+03 - 1.1979601e+02 -1.2085911e+02 -3.5520698e+03 - 1.1944707e+02 -1.2038004e+02 -3.5520477e+03 - 1.1909177e+02 -1.1979858e+02 -3.5520233e+03 - 1.1873425e+02 -1.1910646e+02 -3.5519967e+03 - 1.1837865e+02 -1.1829478e+02 -3.5519679e+03 - 1.1802903e+02 -1.1735405e+02 -3.5519372e+03 - 1.1768945e+02 -1.1627406e+02 -3.5519045e+03 - 1.1736386e+02 -1.1504388e+02 -3.5518701e+03 - 1.1705615e+02 -1.1365177e+02 -3.5518341e+03 - 1.1677010e+02 -1.1208521e+02 -3.5517966e+03 - 1.1650931e+02 -1.1033085e+02 -3.5517579e+03 - 1.1627719e+02 -1.0837451e+02 -3.5517181e+03 - 1.1607687e+02 -1.0620119e+02 -3.5516774e+03 - 1.1591115e+02 -1.0379520e+02 -3.5516361e+03 - 1.1578239e+02 -1.0114022e+02 -3.5515943e+03 - 1.1569244e+02 -9.8219514e+01 -3.5515523e+03 - 1.1564250e+02 -9.5016143e+01 -3.5515104e+03 - 1.1563303e+02 -9.1513355e+01 -3.5514689e+03 - 1.1566360e+02 -8.7695007e+01 -3.5514279e+03 - 1.1573281e+02 -8.3546143e+01 -3.5513878e+03 - 1.1583817e+02 -7.9053685e+01 -3.5513490e+03 - 1.1597601e+02 -7.4207249e+01 -3.5513117e+03 - 1.1614144e+02 -6.9000077e+01 -3.5512762e+03 - 1.1632842e+02 -6.3430040e+01 -3.5512428e+03 - 1.1652975e+02 -5.7500677e+01 -3.5512119e+03 - 1.1673736e+02 -5.1222186e+01 -3.5511838e+03 - 1.1694249e+02 -4.4612281e+01 -3.5511588e+03 - 1.1713610e+02 -3.7696800e+01 -3.5511371e+03 - 1.1730930e+02 -3.0509952e+01 -3.5511190e+03 - 1.1745384e+02 -2.3094115e+01 -3.5511046e+03 - 1.1756263e+02 -1.5499107e+01 -3.5510943e+03 - 1.1763020e+02 -7.7809261e+00 -3.5510880e+03 - 1.1765312e+02 4.8134273e-09 -3.5510859e+03 - 1.1763020e+02 7.7809261e+00 -3.5510880e+03 - 1.1756263e+02 1.5499107e+01 -3.5510943e+03 - 1.1745384e+02 2.3094115e+01 -3.5511046e+03 - 1.1730930e+02 3.0509952e+01 -3.5511190e+03 - 1.1713610e+02 3.7696800e+01 -3.5511371e+03 - 1.1694249e+02 4.4612281e+01 -3.5511588e+03 - 1.1673736e+02 5.1222186e+01 -3.5511838e+03 - 1.1652975e+02 5.7500677e+01 -3.5512119e+03 - 1.1632842e+02 6.3430040e+01 -3.5512428e+03 - 1.1614144e+02 6.9000077e+01 -3.5512762e+03 - 1.1597601e+02 7.4207249e+01 -3.5513117e+03 - 1.1583817e+02 7.9053685e+01 -3.5513490e+03 - 1.1573281e+02 8.3546143e+01 -3.5513878e+03 - 1.1566360e+02 8.7695007e+01 -3.5514279e+03 - 1.1563303e+02 9.1513355e+01 -3.5514689e+03 - 1.1564250e+02 9.5016143e+01 -3.5515104e+03 - 1.1569244e+02 9.8219514e+01 -3.5515523e+03 - 1.1578239e+02 1.0114022e+02 -3.5515943e+03 - 1.1591115e+02 1.0379520e+02 -3.5516361e+03 - 1.1607687e+02 1.0620119e+02 -3.5516774e+03 - 1.1627719e+02 1.0837451e+02 -3.5517181e+03 - 1.1650931e+02 1.1033085e+02 -3.5517579e+03 - 1.1677010e+02 1.1208521e+02 -3.5517966e+03 - 1.1705615e+02 1.1365177e+02 -3.5518341e+03 - 1.1736386e+02 1.1504388e+02 -3.5518701e+03 - 1.1768945e+02 1.1627406e+02 -3.5519045e+03 - 1.1802903e+02 1.1735405e+02 -3.5519372e+03 - 1.1837865e+02 1.1829478e+02 -3.5519679e+03 - 1.1873425e+02 1.1910646e+02 -3.5519967e+03 - 1.1909177e+02 1.1979858e+02 -3.5520233e+03 - 1.1944707e+02 1.2038004e+02 -3.5520477e+03 - 1.1979601e+02 1.2085911e+02 -3.5520698e+03 - 1.2013439e+02 1.2124355e+02 -3.5520895e+03 - 1.2045800e+02 1.2154061e+02 -3.5521067e+03 - 1.2076255e+02 1.2175712e+02 -3.5521213e+03 - 1.2104371e+02 1.2189952e+02 -3.5521334e+03 - 1.2129709e+02 1.2197388e+02 -3.5521428e+03 - 1.2151820e+02 1.2198597e+02 -3.5521496e+03 - 1.2170244e+02 1.2194129e+02 -3.5521536e+03 - 1.2184509e+02 1.2184509e+02 -3.5521550e+03 - 1.2194129e+02 1.2170244e+02 -3.5521536e+03 - 1.2198597e+02 1.2151820e+02 -3.5521496e+03 - 1.2197388e+02 1.2129709e+02 -3.5521428e+03 - 1.2189952e+02 1.2104371e+02 -3.5521334e+03 - 1.2175712e+02 1.2076255e+02 -3.5521213e+03 - 1.2154061e+02 1.2045800e+02 -3.5521067e+03 - 1.2124355e+02 1.2013439e+02 -3.5520895e+03 - 1.2085911e+02 1.1979601e+02 -3.5520698e+03 - 1.2038004e+02 1.1944707e+02 -3.5520477e+03 - 1.1979858e+02 1.1909177e+02 -3.5520233e+03 - 1.1910646e+02 1.1873425e+02 -3.5519967e+03 - 1.1829478e+02 1.1837865e+02 -3.5519679e+03 - 1.1735405e+02 1.1802903e+02 -3.5519372e+03 - 1.1627406e+02 1.1768945e+02 -3.5519045e+03 - 1.1504388e+02 1.1736386e+02 -3.5518701e+03 - 1.1365177e+02 1.1705615e+02 -3.5518341e+03 - 1.1208521e+02 1.1677010e+02 -3.5517966e+03 - 1.1033085e+02 1.1650931e+02 -3.5517579e+03 - 1.0837451e+02 1.1627719e+02 -3.5517181e+03 - 1.0620119e+02 1.1607687e+02 -3.5516774e+03 - 1.0379520e+02 1.1591115e+02 -3.5516361e+03 - 1.0114022e+02 1.1578239e+02 -3.5515943e+03 - 9.8219514e+01 1.1569244e+02 -3.5515523e+03 - 9.5016143e+01 1.1564250e+02 -3.5515104e+03 - 9.1513355e+01 1.1563303e+02 -3.5514689e+03 - 8.7695007e+01 1.1566360e+02 -3.5514279e+03 - 8.3546143e+01 1.1573281e+02 -3.5513878e+03 - 7.9053685e+01 1.1583817e+02 -3.5513490e+03 - 7.4207249e+01 1.1597601e+02 -3.5513117e+03 - 6.9000077e+01 1.1614144e+02 -3.5512762e+03 - 6.3430040e+01 1.1632842e+02 -3.5512428e+03 - 5.7500677e+01 1.1652975e+02 -3.5512119e+03 - 5.1222186e+01 1.1673736e+02 -3.5511838e+03 - 4.4612281e+01 1.1694249e+02 -3.5511588e+03 - 3.7696800e+01 1.1713610e+02 -3.5511371e+03 - 3.0509952e+01 1.1730930e+02 -3.5511190e+03 - 2.3094115e+01 1.1745384e+02 -3.5511046e+03 - 1.5499107e+01 1.1756263e+02 -3.5510943e+03 - 7.7809261e+00 1.1763020e+02 -3.5510880e+03 - -1.4440282e-08 1.1765312e+02 -3.5510859e+03 - -7.7809261e+00 1.1763020e+02 -3.5510880e+03 - -1.5499107e+01 1.1756263e+02 -3.5510943e+03 - -2.3094115e+01 1.1745384e+02 -3.5511046e+03 - -3.0509952e+01 1.1730930e+02 -3.5511190e+03 - -3.7696800e+01 1.1713610e+02 -3.5511371e+03 - -4.4612281e+01 1.1694249e+02 -3.5511588e+03 - -5.1222186e+01 1.1673736e+02 -3.5511838e+03 - -5.7500677e+01 1.1652975e+02 -3.5512119e+03 - -6.3430040e+01 1.1632842e+02 -3.5512428e+03 - -6.9000077e+01 1.1614144e+02 -3.5512762e+03 - -7.4207249e+01 1.1597601e+02 -3.5513117e+03 - -7.9053685e+01 1.1583817e+02 -3.5513490e+03 - -8.3546143e+01 1.1573281e+02 -3.5513878e+03 - -8.7695007e+01 1.1566360e+02 -3.5514279e+03 - -9.1513355e+01 1.1563303e+02 -3.5514689e+03 - -9.5016143e+01 1.1564250e+02 -3.5515104e+03 - -9.8219514e+01 1.1569244e+02 -3.5515523e+03 - -1.0114022e+02 1.1578239e+02 -3.5515943e+03 - -1.0379520e+02 1.1591115e+02 -3.5516361e+03 - -1.0620119e+02 1.1607687e+02 -3.5516774e+03 - -1.0837451e+02 1.1627719e+02 -3.5517181e+03 - -1.1033085e+02 1.1650931e+02 -3.5517579e+03 - -1.1208521e+02 1.1677010e+02 -3.5517966e+03 - -1.1365177e+02 1.1705615e+02 -3.5518341e+03 - -1.1504388e+02 1.1736386e+02 -3.5518701e+03 - -1.1627406e+02 1.1768945e+02 -3.5519045e+03 - -1.1735405e+02 1.1802903e+02 -3.5519372e+03 - -1.1829478e+02 1.1837865e+02 -3.5519679e+03 - -1.1910646e+02 1.1873425e+02 -3.5519967e+03 - -1.1979858e+02 1.1909177e+02 -3.5520233e+03 - -1.2038004e+02 1.1944707e+02 -3.5520477e+03 - -1.2085911e+02 1.1979601e+02 -3.5520698e+03 - -1.2124355e+02 1.2013439e+02 -3.5520895e+03 - -1.2154061e+02 1.2045800e+02 -3.5521067e+03 - -1.2175712e+02 1.2076255e+02 -3.5521213e+03 - -1.2189952e+02 1.2104371e+02 -3.5521334e+03 - -1.2197388e+02 1.2129709e+02 -3.5521428e+03 - -1.2198597e+02 1.2151820e+02 -3.5521496e+03 - -1.2194129e+02 1.2170244e+02 -3.5521536e+03 - -1.2184509e+02 1.2184509e+02 -3.5521550e+03 - -1.2170244e+02 1.2194129e+02 -3.5521536e+03 - -1.2151820e+02 1.2198597e+02 -3.5521496e+03 - -1.2129709e+02 1.2197388e+02 -3.5521428e+03 - -1.2104371e+02 1.2189952e+02 -3.5521334e+03 - -1.2076255e+02 1.2175712e+02 -3.5521213e+03 - -1.2045800e+02 1.2154061e+02 -3.5521067e+03 - -1.2013439e+02 1.2124355e+02 -3.5520895e+03 - -1.1979601e+02 1.2085911e+02 -3.5520698e+03 - -1.1944707e+02 1.2038004e+02 -3.5520477e+03 - -1.1909177e+02 1.1979858e+02 -3.5520233e+03 - -1.1873425e+02 1.1910646e+02 -3.5519967e+03 - -1.1837865e+02 1.1829478e+02 -3.5519679e+03 - -1.1802903e+02 1.1735405e+02 -3.5519372e+03 - -1.1768945e+02 1.1627406e+02 -3.5519045e+03 - -1.1736386e+02 1.1504388e+02 -3.5518701e+03 - -1.1705615e+02 1.1365177e+02 -3.5518341e+03 - -1.1677010e+02 1.1208521e+02 -3.5517966e+03 - -1.1650931e+02 1.1033085e+02 -3.5517579e+03 - -1.1627719e+02 1.0837451e+02 -3.5517181e+03 - -1.1607687e+02 1.0620119e+02 -3.5516774e+03 - -1.1591115e+02 1.0379520e+02 -3.5516361e+03 - -1.1578239e+02 1.0114022e+02 -3.5515943e+03 - -1.1569244e+02 9.8219514e+01 -3.5515523e+03 - -1.1564250e+02 9.5016143e+01 -3.5515104e+03 - -1.1563303e+02 9.1513355e+01 -3.5514689e+03 - -1.1566360e+02 8.7695007e+01 -3.5514279e+03 - -1.1573281e+02 8.3546143e+01 -3.5513878e+03 - -1.1583817e+02 7.9053685e+01 -3.5513490e+03 - -1.1597601e+02 7.4207249e+01 -3.5513117e+03 - -1.1614144e+02 6.9000077e+01 -3.5512762e+03 - -1.1632842e+02 6.3430040e+01 -3.5512428e+03 - -1.1652975e+02 5.7500677e+01 -3.5512119e+03 - -1.1673736e+02 5.1222186e+01 -3.5511838e+03 - -1.1694249e+02 4.4612281e+01 -3.5511588e+03 - -1.1713610e+02 3.7696800e+01 -3.5511371e+03 - -1.1730930e+02 3.0509952e+01 -3.5511190e+03 - -1.1745384e+02 2.3094115e+01 -3.5511046e+03 - -1.1756263e+02 1.5499107e+01 -3.5510943e+03 - -1.1763020e+02 7.7809261e+00 -3.5510880e+03 - -1.1765312e+02 -4.8134273e-09 -3.5510859e+03 - -5.9793428e+01 0.0000000e+00 -3.5493860e+03 - -5.9781909e+01 -3.9146637e+00 -3.5493865e+03 - -5.9747939e+01 -7.7979936e+00 -3.5493881e+03 - -5.9693239e+01 -1.1619808e+01 -3.5493907e+03 - -5.9620540e+01 -1.5352132e+01 -3.5493943e+03 - -5.9533382e+01 -1.8970064e+01 -3.5493988e+03 - -5.9435886e+01 -2.2452409e+01 -3.5494043e+03 - -5.9332496e+01 -2.5782041e+01 -3.5494106e+03 - -5.9227729e+01 -2.8946007e+01 -3.5494177e+03 - -5.9125957e+01 -3.1935407e+01 -3.5494255e+03 - -5.9031225e+01 -3.4745089e+01 -3.5494339e+03 - -5.8947115e+01 -3.7373230e+01 -3.5494428e+03 - -5.8876656e+01 -3.9820839e+01 -3.5494522e+03 - -5.8822282e+01 -4.2091244e+01 -3.5494620e+03 - -5.8785821e+01 -4.4189586e+01 -3.5494721e+03 - -5.8768514e+01 -4.6122363e+01 -3.5494824e+03 - -5.8771054e+01 -4.7897012e+01 -3.5494929e+03 - -5.8793639e+01 -4.9521573e+01 -3.5495035e+03 - -5.8836030e+01 -5.1004397e+01 -3.5495141e+03 - -5.8897610e+01 -5.2353924e+01 -3.5495246e+03 - -5.8977443e+01 -5.3578509e+01 -3.5495350e+03 - -5.9074329e+01 -5.4686295e+01 -3.5495453e+03 - -5.9186855e+01 -5.5685122e+01 -3.5495554e+03 - -5.9313435e+01 -5.6582470e+01 -3.5495651e+03 - -5.9452348e+01 -5.7385424e+01 -3.5495746e+03 - -5.9601771e+01 -5.8100655e+01 -3.5495837e+03 - -5.9759801e+01 -5.8734425e+01 -3.5495924e+03 - -5.9924479e+01 -5.9292588e+01 -3.5496006e+03 - -6.0093800e+01 -5.9780611e+01 -3.5496084e+03 - -6.0265732e+01 -6.0203592e+01 -3.5496157e+03 - -6.0438218e+01 -6.0566286e+01 -3.5496224e+03 - -6.0609182e+01 -6.0873128e+01 -3.5496286e+03 - -6.0776532e+01 -6.1128258e+01 -3.5496342e+03 - -6.0938162e+01 -6.1335551e+01 -3.5496391e+03 - -6.1091947e+01 -6.1498637e+01 -3.5496435e+03 - -6.1235738e+01 -6.1620927e+01 -3.5496472e+03 - -6.1367361e+01 -6.1705638e+01 -3.5496502e+03 - -6.1484608e+01 -6.1755811e+01 -3.5496526e+03 - -6.1585227e+01 -6.1774331e+01 -3.5496543e+03 - -6.1666913e+01 -6.1763951e+01 -3.5496553e+03 - -6.1727302e+01 -6.1727302e+01 -3.5496557e+03 - -6.1763951e+01 -6.1666913e+01 -3.5496553e+03 - -6.1774331e+01 -6.1585227e+01 -3.5496543e+03 - -6.1755811e+01 -6.1484608e+01 -3.5496526e+03 - -6.1705638e+01 -6.1367361e+01 -3.5496502e+03 - -6.1620927e+01 -6.1235738e+01 -3.5496472e+03 - -6.1498637e+01 -6.1091947e+01 -3.5496435e+03 - -6.1335551e+01 -6.0938162e+01 -3.5496391e+03 - -6.1128258e+01 -6.0776532e+01 -3.5496342e+03 - -6.0873128e+01 -6.0609182e+01 -3.5496286e+03 - -6.0566286e+01 -6.0438218e+01 -3.5496224e+03 - -6.0203592e+01 -6.0265732e+01 -3.5496157e+03 - -5.9780611e+01 -6.0093800e+01 -3.5496084e+03 - -5.9292588e+01 -5.9924479e+01 -3.5496006e+03 - -5.8734425e+01 -5.9759801e+01 -3.5495924e+03 - -5.8100655e+01 -5.9601771e+01 -3.5495837e+03 - -5.7385424e+01 -5.9452348e+01 -3.5495746e+03 - -5.6582470e+01 -5.9313435e+01 -3.5495651e+03 - -5.5685122e+01 -5.9186855e+01 -3.5495554e+03 - -5.4686295e+01 -5.9074329e+01 -3.5495453e+03 - -5.3578509e+01 -5.8977443e+01 -3.5495350e+03 - -5.2353924e+01 -5.8897610e+01 -3.5495246e+03 - -5.1004397e+01 -5.8836030e+01 -3.5495141e+03 - -4.9521573e+01 -5.8793639e+01 -3.5495035e+03 - -4.7897012e+01 -5.8771054e+01 -3.5494929e+03 - -4.6122363e+01 -5.8768514e+01 -3.5494824e+03 - -4.4189586e+01 -5.8785821e+01 -3.5494721e+03 - -4.2091244e+01 -5.8822282e+01 -3.5494620e+03 - -3.9820839e+01 -5.8876656e+01 -3.5494522e+03 - -3.7373230e+01 -5.8947115e+01 -3.5494428e+03 - -3.4745089e+01 -5.9031225e+01 -3.5494339e+03 - -3.1935407e+01 -5.9125957e+01 -3.5494255e+03 - -2.8946007e+01 -5.9227729e+01 -3.5494177e+03 - -2.5782041e+01 -5.9332496e+01 -3.5494106e+03 - -2.2452409e+01 -5.9435886e+01 -3.5494043e+03 - -1.8970064e+01 -5.9533382e+01 -3.5493988e+03 - -1.5352132e+01 -5.9620540e+01 -3.5493943e+03 - -1.1619808e+01 -5.9693239e+01 -3.5493907e+03 - -7.7979936e+00 -5.9747939e+01 -3.5493881e+03 - -3.9146637e+00 -5.9781909e+01 -3.5493865e+03 - 4.8134273e-09 -5.9793428e+01 -3.5493860e+03 - 3.9146637e+00 -5.9781909e+01 -3.5493865e+03 - 7.7979936e+00 -5.9747939e+01 -3.5493881e+03 - 1.1619808e+01 -5.9693239e+01 -3.5493907e+03 - 1.5352132e+01 -5.9620540e+01 -3.5493943e+03 - 1.8970064e+01 -5.9533382e+01 -3.5493988e+03 - 2.2452409e+01 -5.9435886e+01 -3.5494043e+03 - 2.5782041e+01 -5.9332496e+01 -3.5494106e+03 - 2.8946007e+01 -5.9227729e+01 -3.5494177e+03 - 3.1935407e+01 -5.9125957e+01 -3.5494255e+03 - 3.4745089e+01 -5.9031225e+01 -3.5494339e+03 - 3.7373230e+01 -5.8947115e+01 -3.5494428e+03 - 3.9820839e+01 -5.8876656e+01 -3.5494522e+03 - 4.2091244e+01 -5.8822282e+01 -3.5494620e+03 - 4.4189586e+01 -5.8785821e+01 -3.5494721e+03 - 4.6122363e+01 -5.8768514e+01 -3.5494824e+03 - 4.7897012e+01 -5.8771054e+01 -3.5494929e+03 - 4.9521573e+01 -5.8793639e+01 -3.5495035e+03 - 5.1004397e+01 -5.8836030e+01 -3.5495141e+03 - 5.2353924e+01 -5.8897610e+01 -3.5495246e+03 - 5.3578509e+01 -5.8977443e+01 -3.5495350e+03 - 5.4686295e+01 -5.9074329e+01 -3.5495453e+03 - 5.5685122e+01 -5.9186855e+01 -3.5495554e+03 - 5.6582470e+01 -5.9313435e+01 -3.5495651e+03 - 5.7385424e+01 -5.9452348e+01 -3.5495746e+03 - 5.8100655e+01 -5.9601771e+01 -3.5495837e+03 - 5.8734425e+01 -5.9759801e+01 -3.5495924e+03 - 5.9292588e+01 -5.9924479e+01 -3.5496006e+03 - 5.9780611e+01 -6.0093800e+01 -3.5496084e+03 - 6.0203592e+01 -6.0265732e+01 -3.5496157e+03 - 6.0566286e+01 -6.0438218e+01 -3.5496224e+03 - 6.0873128e+01 -6.0609182e+01 -3.5496286e+03 - 6.1128258e+01 -6.0776532e+01 -3.5496342e+03 - 6.1335551e+01 -6.0938162e+01 -3.5496391e+03 - 6.1498637e+01 -6.1091947e+01 -3.5496435e+03 - 6.1620927e+01 -6.1235738e+01 -3.5496472e+03 - 6.1705638e+01 -6.1367361e+01 -3.5496502e+03 - 6.1755811e+01 -6.1484608e+01 -3.5496526e+03 - 6.1774331e+01 -6.1585227e+01 -3.5496543e+03 - 6.1763951e+01 -6.1666913e+01 -3.5496553e+03 - 6.1727302e+01 -6.1727302e+01 -3.5496557e+03 - 6.1666913e+01 -6.1763951e+01 -3.5496553e+03 - 6.1585227e+01 -6.1774331e+01 -3.5496543e+03 - 6.1484608e+01 -6.1755811e+01 -3.5496526e+03 - 6.1367361e+01 -6.1705638e+01 -3.5496502e+03 - 6.1235738e+01 -6.1620927e+01 -3.5496472e+03 - 6.1091947e+01 -6.1498637e+01 -3.5496435e+03 - 6.0938162e+01 -6.1335551e+01 -3.5496391e+03 - 6.0776532e+01 -6.1128258e+01 -3.5496342e+03 - 6.0609182e+01 -6.0873128e+01 -3.5496286e+03 - 6.0438218e+01 -6.0566286e+01 -3.5496224e+03 - 6.0265732e+01 -6.0203592e+01 -3.5496157e+03 - 6.0093800e+01 -5.9780611e+01 -3.5496084e+03 - 5.9924479e+01 -5.9292588e+01 -3.5496006e+03 - 5.9759801e+01 -5.8734425e+01 -3.5495924e+03 - 5.9601771e+01 -5.8100655e+01 -3.5495837e+03 - 5.9452348e+01 -5.7385424e+01 -3.5495746e+03 - 5.9313435e+01 -5.6582470e+01 -3.5495651e+03 - 5.9186855e+01 -5.5685122e+01 -3.5495554e+03 - 5.9074329e+01 -5.4686295e+01 -3.5495453e+03 - 5.8977443e+01 -5.3578509e+01 -3.5495350e+03 - 5.8897610e+01 -5.2353924e+01 -3.5495246e+03 - 5.8836030e+01 -5.1004397e+01 -3.5495141e+03 - 5.8793639e+01 -4.9521573e+01 -3.5495035e+03 - 5.8771054e+01 -4.7897012e+01 -3.5494929e+03 - 5.8768514e+01 -4.6122363e+01 -3.5494824e+03 - 5.8785821e+01 -4.4189586e+01 -3.5494721e+03 - 5.8822282e+01 -4.2091244e+01 -3.5494620e+03 - 5.8876656e+01 -3.9820839e+01 -3.5494522e+03 - 5.8947115e+01 -3.7373230e+01 -3.5494428e+03 - 5.9031225e+01 -3.4745089e+01 -3.5494339e+03 - 5.9125957e+01 -3.1935407e+01 -3.5494255e+03 - 5.9227729e+01 -2.8946007e+01 -3.5494177e+03 - 5.9332496e+01 -2.5782041e+01 -3.5494106e+03 - 5.9435886e+01 -2.2452409e+01 -3.5494043e+03 - 5.9533382e+01 -1.8970064e+01 -3.5493988e+03 - 5.9620540e+01 -1.5352132e+01 -3.5493943e+03 - 5.9693239e+01 -1.1619808e+01 -3.5493907e+03 - 5.9747939e+01 -7.7979936e+00 -3.5493881e+03 - 5.9781909e+01 -3.9146637e+00 -3.5493865e+03 - 5.9793428e+01 4.8134273e-09 -3.5493860e+03 - 5.9781909e+01 3.9146637e+00 -3.5493865e+03 - 5.9747939e+01 7.7979936e+00 -3.5493881e+03 - 5.9693239e+01 1.1619808e+01 -3.5493907e+03 - 5.9620540e+01 1.5352132e+01 -3.5493943e+03 - 5.9533382e+01 1.8970064e+01 -3.5493988e+03 - 5.9435886e+01 2.2452409e+01 -3.5494043e+03 - 5.9332496e+01 2.5782041e+01 -3.5494106e+03 - 5.9227729e+01 2.8946007e+01 -3.5494177e+03 - 5.9125957e+01 3.1935407e+01 -3.5494255e+03 - 5.9031225e+01 3.4745089e+01 -3.5494339e+03 - 5.8947115e+01 3.7373230e+01 -3.5494428e+03 - 5.8876656e+01 3.9820839e+01 -3.5494522e+03 - 5.8822282e+01 4.2091244e+01 -3.5494620e+03 - 5.8785821e+01 4.4189586e+01 -3.5494721e+03 - 5.8768514e+01 4.6122363e+01 -3.5494824e+03 - 5.8771054e+01 4.7897012e+01 -3.5494929e+03 - 5.8793639e+01 4.9521573e+01 -3.5495035e+03 - 5.8836030e+01 5.1004397e+01 -3.5495141e+03 - 5.8897610e+01 5.2353924e+01 -3.5495246e+03 - 5.8977443e+01 5.3578509e+01 -3.5495350e+03 - 5.9074329e+01 5.4686295e+01 -3.5495453e+03 - 5.9186855e+01 5.5685122e+01 -3.5495554e+03 - 5.9313435e+01 5.6582470e+01 -3.5495651e+03 - 5.9452348e+01 5.7385424e+01 -3.5495746e+03 - 5.9601771e+01 5.8100655e+01 -3.5495837e+03 - 5.9759801e+01 5.8734425e+01 -3.5495924e+03 - 5.9924479e+01 5.9292588e+01 -3.5496006e+03 - 6.0093800e+01 5.9780611e+01 -3.5496084e+03 - 6.0265732e+01 6.0203592e+01 -3.5496157e+03 - 6.0438218e+01 6.0566286e+01 -3.5496224e+03 - 6.0609182e+01 6.0873128e+01 -3.5496286e+03 - 6.0776532e+01 6.1128258e+01 -3.5496342e+03 - 6.0938162e+01 6.1335551e+01 -3.5496391e+03 - 6.1091947e+01 6.1498637e+01 -3.5496435e+03 - 6.1235738e+01 6.1620927e+01 -3.5496472e+03 - 6.1367361e+01 6.1705638e+01 -3.5496502e+03 - 6.1484608e+01 6.1755811e+01 -3.5496526e+03 - 6.1585227e+01 6.1774331e+01 -3.5496543e+03 - 6.1666913e+01 6.1763951e+01 -3.5496553e+03 - 6.1727302e+01 6.1727302e+01 -3.5496557e+03 - 6.1763951e+01 6.1666913e+01 -3.5496553e+03 - 6.1774331e+01 6.1585227e+01 -3.5496543e+03 - 6.1755811e+01 6.1484608e+01 -3.5496526e+03 - 6.1705638e+01 6.1367361e+01 -3.5496502e+03 - 6.1620927e+01 6.1235738e+01 -3.5496472e+03 - 6.1498637e+01 6.1091947e+01 -3.5496435e+03 - 6.1335551e+01 6.0938162e+01 -3.5496391e+03 - 6.1128258e+01 6.0776532e+01 -3.5496342e+03 - 6.0873128e+01 6.0609182e+01 -3.5496286e+03 - 6.0566286e+01 6.0438218e+01 -3.5496224e+03 - 6.0203592e+01 6.0265732e+01 -3.5496157e+03 - 5.9780611e+01 6.0093800e+01 -3.5496084e+03 - 5.9292588e+01 5.9924479e+01 -3.5496006e+03 - 5.8734425e+01 5.9759801e+01 -3.5495924e+03 - 5.8100655e+01 5.9601771e+01 -3.5495837e+03 - 5.7385424e+01 5.9452348e+01 -3.5495746e+03 - 5.6582470e+01 5.9313435e+01 -3.5495651e+03 - 5.5685122e+01 5.9186855e+01 -3.5495554e+03 - 5.4686295e+01 5.9074329e+01 -3.5495453e+03 - 5.3578509e+01 5.8977443e+01 -3.5495350e+03 - 5.2353924e+01 5.8897610e+01 -3.5495246e+03 - 5.1004397e+01 5.8836030e+01 -3.5495141e+03 - 4.9521573e+01 5.8793639e+01 -3.5495035e+03 - 4.7897012e+01 5.8771054e+01 -3.5494929e+03 - 4.6122363e+01 5.8768514e+01 -3.5494824e+03 - 4.4189586e+01 5.8785821e+01 -3.5494721e+03 - 4.2091244e+01 5.8822282e+01 -3.5494620e+03 - 3.9820839e+01 5.8876656e+01 -3.5494522e+03 - 3.7373230e+01 5.8947115e+01 -3.5494428e+03 - 3.4745089e+01 5.9031225e+01 -3.5494339e+03 - 3.1935407e+01 5.9125957e+01 -3.5494255e+03 - 2.8946007e+01 5.9227729e+01 -3.5494177e+03 - 2.5782041e+01 5.9332496e+01 -3.5494106e+03 - 2.2452409e+01 5.9435886e+01 -3.5494043e+03 - 1.8970064e+01 5.9533382e+01 -3.5493988e+03 - 1.5352132e+01 5.9620540e+01 -3.5493943e+03 - 1.1619808e+01 5.9693239e+01 -3.5493907e+03 - 7.7979936e+00 5.9747939e+01 -3.5493881e+03 - 3.9146637e+00 5.9781909e+01 -3.5493865e+03 - -4.8134273e-09 5.9793428e+01 -3.5493860e+03 - -3.9146637e+00 5.9781909e+01 -3.5493865e+03 - -7.7979936e+00 5.9747939e+01 -3.5493881e+03 - -1.1619808e+01 5.9693239e+01 -3.5493907e+03 - -1.5352132e+01 5.9620540e+01 -3.5493943e+03 - -1.8970064e+01 5.9533382e+01 -3.5493988e+03 - -2.2452409e+01 5.9435886e+01 -3.5494043e+03 - -2.5782041e+01 5.9332496e+01 -3.5494106e+03 - -2.8946007e+01 5.9227729e+01 -3.5494177e+03 - -3.1935407e+01 5.9125957e+01 -3.5494255e+03 - -3.4745089e+01 5.9031225e+01 -3.5494339e+03 - -3.7373230e+01 5.8947115e+01 -3.5494428e+03 - -3.9820839e+01 5.8876656e+01 -3.5494522e+03 - -4.2091244e+01 5.8822282e+01 -3.5494620e+03 - -4.4189586e+01 5.8785821e+01 -3.5494721e+03 - -4.6122363e+01 5.8768514e+01 -3.5494824e+03 - -4.7897012e+01 5.8771054e+01 -3.5494929e+03 - -4.9521573e+01 5.8793639e+01 -3.5495035e+03 - -5.1004397e+01 5.8836030e+01 -3.5495141e+03 - -5.2353924e+01 5.8897610e+01 -3.5495246e+03 - -5.3578509e+01 5.8977443e+01 -3.5495350e+03 - -5.4686295e+01 5.9074329e+01 -3.5495453e+03 - -5.5685122e+01 5.9186855e+01 -3.5495554e+03 - -5.6582470e+01 5.9313435e+01 -3.5495651e+03 - -5.7385424e+01 5.9452348e+01 -3.5495746e+03 - -5.8100655e+01 5.9601771e+01 -3.5495837e+03 - -5.8734425e+01 5.9759801e+01 -3.5495924e+03 - -5.9292588e+01 5.9924479e+01 -3.5496006e+03 - -5.9780611e+01 6.0093800e+01 -3.5496084e+03 - -6.0203592e+01 6.0265732e+01 -3.5496157e+03 - -6.0566286e+01 6.0438218e+01 -3.5496224e+03 - -6.0873128e+01 6.0609182e+01 -3.5496286e+03 - -6.1128258e+01 6.0776532e+01 -3.5496342e+03 - -6.1335551e+01 6.0938162e+01 -3.5496391e+03 - -6.1498637e+01 6.1091947e+01 -3.5496435e+03 - -6.1620927e+01 6.1235738e+01 -3.5496472e+03 - -6.1705638e+01 6.1367361e+01 -3.5496502e+03 - -6.1755811e+01 6.1484608e+01 -3.5496526e+03 - -6.1774331e+01 6.1585227e+01 -3.5496543e+03 - -6.1763951e+01 6.1666913e+01 -3.5496553e+03 - -6.1727302e+01 6.1727302e+01 -3.5496557e+03 - -6.1666913e+01 6.1763951e+01 -3.5496553e+03 - -6.1585227e+01 6.1774331e+01 -3.5496543e+03 - -6.1484608e+01 6.1755811e+01 -3.5496526e+03 - -6.1367361e+01 6.1705638e+01 -3.5496502e+03 - -6.1235738e+01 6.1620927e+01 -3.5496472e+03 - -6.1091947e+01 6.1498637e+01 -3.5496435e+03 - -6.0938162e+01 6.1335551e+01 -3.5496391e+03 - -6.0776532e+01 6.1128258e+01 -3.5496342e+03 - -6.0609182e+01 6.0873128e+01 -3.5496286e+03 - -6.0438218e+01 6.0566286e+01 -3.5496224e+03 - -6.0265732e+01 6.0203592e+01 -3.5496157e+03 - -6.0093800e+01 5.9780611e+01 -3.5496084e+03 - -5.9924479e+01 5.9292588e+01 -3.5496006e+03 - -5.9759801e+01 5.8734425e+01 -3.5495924e+03 - -5.9601771e+01 5.8100655e+01 -3.5495837e+03 - -5.9452348e+01 5.7385424e+01 -3.5495746e+03 - -5.9313435e+01 5.6582470e+01 -3.5495651e+03 - -5.9186855e+01 5.5685122e+01 -3.5495554e+03 - -5.9074329e+01 5.4686295e+01 -3.5495453e+03 - -5.8977443e+01 5.3578509e+01 -3.5495350e+03 - -5.8897610e+01 5.2353924e+01 -3.5495246e+03 - -5.8836030e+01 5.1004397e+01 -3.5495141e+03 - -5.8793639e+01 4.9521573e+01 -3.5495035e+03 - -5.8771054e+01 4.7897012e+01 -3.5494929e+03 - -5.8768514e+01 4.6122363e+01 -3.5494824e+03 - -5.8785821e+01 4.4189586e+01 -3.5494721e+03 - -5.8822282e+01 4.2091244e+01 -3.5494620e+03 - -5.8876656e+01 3.9820839e+01 -3.5494522e+03 - -5.8947115e+01 3.7373230e+01 -3.5494428e+03 - -5.9031225e+01 3.4745089e+01 -3.5494339e+03 - -5.9125957e+01 3.1935407e+01 -3.5494255e+03 - -5.9227729e+01 2.8946007e+01 -3.5494177e+03 - -5.9332496e+01 2.5782041e+01 -3.5494106e+03 - -5.9435886e+01 2.2452409e+01 -3.5494043e+03 - -5.9533382e+01 1.8970064e+01 -3.5493988e+03 - -5.9620540e+01 1.5352132e+01 -3.5493943e+03 - -5.9693239e+01 1.1619808e+01 -3.5493907e+03 - -5.9747939e+01 7.7979936e+00 -3.5493881e+03 - -5.9781909e+01 3.9146637e+00 -3.5493865e+03 - -5.9793428e+01 0.0000000e+00 -3.5493860e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -9.6268545e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 -9.6268545e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -9.6268545e-09 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 -9.6268545e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 9.6268545e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 9.6268545e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 9.6268545e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 9.6268545e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 9.6268545e-09 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 9.6268545e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - -9.6268545e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -9.6268545e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - -4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 4.8134273e-09 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 4.8134273e-09 -4.8134273e-09 -3.5488005e+03 - 4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - -4.8134273e-09 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 0.0000000e+00 -3.5488005e+03 - 0.0000000e+00 4.8134273e-09 -3.5488005e+03 diff --git a/examples/extended/exoticphysics/phonon/History b/examples/extended/exoticphysics/phonon/History index 4cb1d51825..484cbf2183 100644 --- a/examples/extended/exoticphysics/phonon/History +++ b/examples/extended/exoticphysics/phonon/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10 November 2020 B. Morgan (phononExample-V10-06-00) +- Migration to G4RunManagerFactory. + 24 June 2018 G.Folger (phononExample-V10-04-03) - Correct Windows specific references for windows line ends @@ -27,7 +30,7 @@ track of all tags. 21 March 2018 G.Folger (phononExample-V10-04-00) - update references for caustic and timing - changed caused by new CLHEP 2.4.0.4 with changes in random + changed caused by new CLHEP 2.4.0.4 with changes in random 4 December 2017 G.Folger (phononExample-V10-03-08) @@ -40,7 +43,7 @@ track of all tags. 24 October 2017 G.Folger (phononExample-V10-03-06) - create caustic and timings with \n at least line, drop first empty line; it is difficult to create file without final \nl -- update references for this change. +- update references for this change. 24 October 2017 G.Folger (phononExample-V10-03-05) - update references for caustic and timing @@ -74,7 +77,7 @@ track of all tags. 19 November 2016 A.Dotti (phononExample-V10-02-08) - explicit set of SD to manager - + 14 October 2016 G.Folger (phononExample-V10-02-07) - remove direct use of {a,the}ParticleIterator, use GetParticleTableIterator(). fix required by clang39 on Linux and MAC @@ -93,7 +96,7 @@ track of all tags. - run.in: do not set random seed, this changes caustic.ssv and timing.ssv 26 July 2016: Gunter Folger (phononExample-V10-02-02) -- add clang/icc specific references, and switch depending on compiler +- add clang/icc specific references, and switch depending on compiler 17 February 2016: E. Bagli (phononExample-V10-02-01) - run.in: set the random seed in the macro file @@ -199,7 +202,7 @@ NOTE: XPhysicsList.cc still has process verbosity. to use of h_Planck. Updated run.out to reflect reduced message output. 13 June 2013: A. Dotti (phononExample-V09-06-03) -- Adding reference files for MT mode, adding CTestDefinitions.txt +- Adding reference files for MT mode, adding CTestDefinitions.txt file containing new ctest with OS/Mode reference files 6 June 2013: G. Cosmo (phononExample-V09-06-02) @@ -215,7 +218,7 @@ NOTE: XPhysicsList.cc still has process verbosity. - Fixed cases of variable shadowing. 15 November 2012: I. Hrivnacova (phononExample-V09-05-08) -- Fixed files descriptions, .README for a change in the example +- Fixed files descriptions, .README for a change in the example directory name. 14 November 2012: I. Hrivnacova (phononExample-V09-05-07) @@ -247,7 +250,7 @@ NOTE: XPhysicsList.cc still has process verbosity. - Added explicit include of units and physical constants - Replaced own defined PI with pi from physical constants - Adding Copyright where missing -- Allocate XLogicalLattice on heap to avoid a stack overflow +- Allocate XLogicalLattice on heap to avoid a stack overflow - Added file descriptions (for Doxygen documentation) - Added .README file - Replaced tabulations with space characters diff --git a/examples/extended/exoticphysics/phonon/XGeBox.cc b/examples/extended/exoticphysics/phonon/XGeBox.cc index ff474fb7e2..737a42f303 100644 --- a/examples/extended/exoticphysics/phonon/XGeBox.cc +++ b/examples/extended/exoticphysics/phonon/XGeBox.cc @@ -59,11 +59,7 @@ int main(int argc,char** argv) { // Construct the run manager // -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = G4RunManagerFactory::CreateRunManager(); // Set mandatory initialization classes // @@ -73,7 +69,7 @@ int main(int argc,char** argv) { G4VUserPhysicsList* physics = new XPhysicsList(); physics->SetCuts(); runManager->SetUserInitialization(physics); - + // Set user action classes // runManager->SetUserInitialization(new XActionInitialization); @@ -86,10 +82,10 @@ int main(int argc,char** argv) { // Initialize G4 kernel (replaces /run/initialize macro command) // runManager->Initialize(); - + // Get the pointer to the User Interface manager // - G4UImanager* UImanager = G4UImanager::GetUIpointer(); + G4UImanager* UImanager = G4UImanager::GetUIpointer(); if (ui) // Define UI session for interactive mode { diff --git a/examples/extended/exoticphysics/saxs/.README.txt b/examples/extended/exoticphysics/saxs/.README.txt new file mode 100644 index 0000000000..579478c44f --- /dev/null +++ b/examples/extended/exoticphysics/saxs/.README.txt @@ -0,0 +1,254 @@ + +///\file "exoticphysics/saxs/.README.txt" +///\brief Example SAXS README page + +/*! \page Examplesaxs Example saxs + +\author Gianfranco Paternò - INFN and University Ferrara (Italy) \n + paterno@fe.infn.it + +The example saxs implements the typical setup of a Small Angle X-ray +Scattering (SAXS) experiment. It is meant to illustrate the +usage of molecular interference (MI) of Rayleigh (coherent) scattering +of photons inside the matter, which is implemented in the +G4PenelopeRayleighModelMI model. + + +\section saxs_s1 Geometry + +The setup consists of a phantom/sample under investigation, slits +to collimate the photon beam and a shielded detector to collect +the photons scattered by the phantom (see SAXSDetectorConstruction). + +The geometry is scalable through the interactive commands defined +in the SAXSDetectorConstructionMessenger class. All the significant +quantities, such as the setup (scattering) rotation angle, the position +and size of all the volumes, as well as the phantom material can be +set via macro commands. + +Two macro files come with this example: saxs.in and saxs_slits.in. + +-# In the saxs.in macro, the phantom is a cylinder with a diameter and +a height of 10 mm made of a mixture of 80% fat and 20% water. +In general, if the argument of /det/setPhantomMaterial command is 2, +as in this case, the material is a biological tissue ("MedMat") +defined as a mixture of fat, water, collagen and hydroxyapatite. +The weight fraction of the mixture components can be set through commands +\verbatim + /det/setComp0 + /det/setComp1 + /det/setComp2 + /det/setComp3 +\endverbatim +respectively. +The tissue form factor (including MI) is automatically calculated as a +weighed sum of the form factors of the basis components. +In this case, no slits are foreseen and the sensitive detector +positioned 400 mm downstream of the phantom collects all the photons +transmitted and scattered by the phantom, which is irradiated +by a pencil beam with an energy of 20 keV. + +-# In the saxs_slits.in macro, the phantom is again a cylinder with a +diameter and a height of 10 mm. The phantom is made of a custom +material ("CustomMat") whose density and composition is set through +\verbatim + /det/setCustomMatDensity + /det/setCustomMatHmassfract, + /det/setCustomMatNmassfract + /det/setCustomMatOmassfract +\endverbatim +commands. In general, a custom material can be defined by +specifying the mass fraction of H, C, N, O, Na, P, S, Cl, K, and Ca via +commands analogous to those mentioned above. In this case, the material +composition corresponds to that of ammonium nitrate +(NH4NO3). +For a custom material, the user can provide the path of the file with +the material form factor (with MI) through the +\verbatim + /det/SetCustomMatFF +\endverbatim +command. As an example, the file myFF.dat contains the form factor of +NH4NO3 measured by Harding in 1999. +In this case the slits upstream and downstream the phantom +are present. This setup is suitable for both monochromatic and +polychromatic beams. To speed-up the simulation, a monochromatic +photon beam was chosen, but a polychromatic beam can be easily defined. + +\section saxs_s2 Physics + +In this example, only electromagnetic processes and decays are considered. + +They are defined in a custom physics list that allows the user to +choose among various EM PhysicsList constructors. In particular, +by choosing G4EmPenelopePhysicsMI and setting fUseMIFlag as true, +it is possible to enable the molecular interference effects. This +is the default configuration. + +\section saxs_s3 Action Initialization + +SAXSActionInitialization class instantiates and registers to +Geant4 kernel all user action classes. While in sequential mode +the action classes are instatiated just once, by invoking the +method: SAXSActionInitialization::Build(), +in multi-threading mode the same method is invoked for each thread +worker and so all user action classes are defined thread-local. + +A run action class is instantiated both thread-local and global. +That's why its instance is created also in the method +SAXSActionInitialization::BuildForMaster(), which is +invoked only in multi-threading mode. + +\section saxs_s4 Primary generator + +The primary generator action class employs the G4GeneralParticleSource (GPS) +generator. The primary beam has to be defined via the G4 built-in +commands of the G4GeneralParticleSource in a input macro file. +In particular, a photon beam directed toward the phantom must be defined +to test the MI effects. The X-ray beam can be monochromatic or +polychromatic, parallel or divergent. + + +\section saxs_s5 Event and Detector Response + +An event consists of the generation of a single particle which is +transported through the phantom and then to the sensitive detector. + +The interactions of the photons inside the phantom, and in particular, +the scattering events, are scored in a dedicated ntuple through the +SAXSSteppingAction class. + +The hits of the particles on the sensitive detector positioned +downstream of the phantom (SAXSSensitiveDetectorHit) are recorded +in a dedicated ntuple through the SAXSSensitiveDetector class. + +\section saxs_s6 Analysis + +The analysis tools are used to accumulate statistics. +ntuple are created in SAXSRunAction::SAXSRunAction() +constructor for the following quantities: + +Ntuple1 (part) - Particles impinging on the Sensitive Detector (SD): + +- energy of the particles +- position of the hits +- momentum of the particles +- time of the hits +- type of impinging particles +- ID number of the impinging particles +- number of scattering events a primary had before hitting the SD +- event number of the hits + +Ntuple2 (scatt) - Interactions of photons inside the phantom: + +- ID of the process occurred + (0-> transportation, 1->Rayleigh, 2->Compton, 3->Photoelectic) +- initial energy of the particles +- scattering angle + +The ntuples are saved in the output file in a format +selected in SAXSAnalysis.hh. +When running in multi-threading mode, the ntuples accumulated +on threads are automatically merged in a single output file. + +The default output format is root. Two root scripts come with +this example to analyze the output file: scattAnalysis.C and +ADXRD.C. The first can be used to analyze the scatt ntuple, while +the second can be used for part ntuple. + +\section saxs_s7 How to run + +Execute saxs in the 'interactive mode' with visualization: +\verbatim + % ./saxs +\endverbatim +and type in the commands line by line: +\verbatim + Idle> /control/verbose 2 + Idle> /tracking/verbose 1 + Idle> ... + Idle> /run/beamOn 10 + Idle> ... + Idle> exit +\endverbatim +or it is possible to run a macro file (test.in is a simple macro where the +primary beam is defined through the usual GPS commands): +\verbatim + Idle> /control/execute test.in + Idle> /run/beamOn 10 + .... + Idle> exit +\endverbatim + +Execute saxs in the 'batch' mode from macro files (without visualization) +\verbatim + % ./saxs saxs.in [Ncores] + % ./saxs saxs_slits.in [Ncores] +\endverbatim + Ncores (optional argument) is the number of threads the user wants + to use in MT mode. + +\section saxs_s8 Appendix + +The following paragraphs are common to all basic examples + +\subsection saxs_s8a Visualization + +The visualization manager is set via the G4VisExecutive class +in the main() function in saxs.cc. +The initialisation of the drawing is done via a set of /vis/ commands +in the macro vis.mac. This macro is automatically read from +the main function when the example is used in interactive running mode. + +By default, vis.mac opens an OpenGL viewer (/vis/open OGL). +The user can change the initial viewer by commenting out this line +and instead uncommenting one of the other /vis/open +statements, such as +HepRepFile or DAWNFILE (which produce files that can be viewed with the +HepRApp and DAWN viewers, respectively). Note that one can always +open new viewers at any time from the command line. For example, if +you already have a view in, say, an OpenGL window with a name +"viewer-0", then +\verbatim + /vis/open DAWNFILE +\endverbatim +then to get the same view +\verbatim + /vis/viewer/copyView viewer-0 +\endverbatim +or to get the same view *plus* scene-modifications +\verbatim + /vis/viewer/set/all viewer-0 +\endverbatim +then to see the result +\verbatim + /vis/viewer/flush +\endverbatim + +The DAWNFILE, HepRepFile drivers are always available +(since they require no external libraries), but the OGL driver requires +that the Geant4 libraries have been built with the OpenGL option. + +vis.mac has additional commands that demonstrate additional functionality +of the vis system, such as displaying text, axes, scales, date, logo and +shows how to change viewpoint and style. +To see even more commands use help or ls or +browse the available UI commands in the Application Developers Guide. + +For more information on visualization, including information on how to +install and run DAWN, OpenGL and HepRApp, see the visualization tutorials, +for example, + http://geant4.slac.stanford.edu/Presentations/vis/G4[VIS]Tutorial/G4[VIS]Tutorial.html +(where [VIS] can be replaced by DAWN, OpenGL and HepRApp) + +The tracks are automatically drawn at the end of each event, accumulated +for all events and erased at the beginning of the next run. + +\subsection saxs_s8b User Interfaces + +The user command interface is set via the G4UIExecutive class +in the main() function in saxs.cc +The selection of the user command interface is then done automatically +according to the Geant4 configuration or it can be done explicitly via +the third argument of the G4UIExecutive constructor (see exampleB4a.cc). + +*/ diff --git a/examples/extended/exoticphysics/saxs/ADXRD.C b/examples/extended/exoticphysics/saxs/ADXRD.C new file mode 100644 index 0000000000..61e21867da --- /dev/null +++ b/examples/extended/exoticphysics/saxs/ADXRD.C @@ -0,0 +1,361 @@ + +#include "TFile.h" +#include "TTree.h" +#include "TH1D.h" +#include "TH2D.h" +#include "TH1I.h" +#include "TF1.h" +#include "TProfile2D.h" +#include "TGraph.h" +#include "TGraph2D.h" +#include "TGraphErrors.h" +#include "TGaxis.h" +#include "TAxis.h" +#include "TMath.h" +#include "TRandom3.h" +#include "TCanvas.h" +#include "TLegend.h" +#include +#include +#include +#include "string.h" +#include + +#define pi 3.1415926535 + +using namespace std; + +void ADXRD() +{ + gROOT->Reset(); + + //----------------------------------input-------------------------------- + //open a simulation result file + TFile* file = TFile::Open("output.root"); + + //histogram parameters + Double_t binXsize = 0.5; //mm + Double_t binXStart = -200.; //mm + Double_t binXEnd = -binXStart; + Int_t nbinsX = binXEnd*2./binXsize; + + Double_t binYsize = 0.5; //mm + Double_t binYStart = -200.; //mm + Double_t binYEnd = binXEnd; + Int_t nbinsY = binYEnd*2./binYsize; + + Double_t Nbin = 92; + Double_t thetaMin = 1; //deg + Double_t thetaMax = 27; //deg + + //cuts + Double_t Emin = 0.; //keV + Double_t Emax = 140.; //keV + Double_t angCut = 0.; //deg + Bool_t IWantOnlyScatt = true; + Bool_t IWantOnlyRayleighScatt = false; + Bool_t IWantOnlyComptonScatt = false; + Bool_t IWantOnlyDiffraction = false; + + //plot options + Bool_t IWantThetaDistribution = true; + Bool_t IWantEdistrib = true; + + Bool_t IWantPlot2D = true; + Bool_t IWantProfiles = false; + + Bool_t IWantBoxAnalysis = false; + Bool_t IWantPlotEtheta = true; + + Int_t nbp = 2; + gStyle->SetOptStat(kFALSE); + //gStyle->SetPalette(52); //52->gray, 53->hot + + //Energy Distribution Analysis + Double_t NbinE = 140; + Double_t EMin = 0; //keV + Double_t EMax = 140; //keV + Double_t Angle = 2.58; //deg + Double_t DeltaAngle = 2.; //deg + Bool_t ApplyThetaCut = false; + + //export + Bool_t IwantExportScattering = false; + Char_t ExportScattFileName[128]; + sprintf(ExportScattFileName,"scatt.txt"); + + Bool_t IwantExportVariables = false; + Char_t ExportVarFileName[128]; + sprintf(ExportVarFileName,"var.txt"); + + Bool_t IwantExportImage = false; + Char_t ExportImageFileName[128]; + sprintf(ExportImageFileName,"image.txt"); + //----------------------------------------------------------------------- + + //tree definition + Double_t x,y,energy; + Int_t kind,ID,nri,nci,ndi; + TTree* t1 = (TTree*)file->Get("part"); + t1->SetBranchAddress("e",&energy); + t1->SetBranchAddress("posx",&x); + t1->SetBranchAddress("posy",&y); + t1->SetBranchAddress("type",&kind); + t1->SetBranchAddress("trackID",&ID); + t1->SetBranchAddress("NRi",&nri); + t1->SetBranchAddress("NCi",&nci); + t1->SetBranchAddress("NDi",&ndi); + Int_t N = t1->GetEntries(); + const Int_t Nval = N; + + //scatt cut + Char_t cutScatt[128]; + if (IWantOnlyScatt) { + if (IWantOnlyRayleighScatt) { + sprintf(cutScatt,"type==0 & trackID==1 & e>=%f & e<=%f & NRi>=1 & NCi==0 & NDi==0",Emin,Emax); + } else if (IWantOnlyComptonScatt) { + sprintf(cutScatt,"type==0 & trackID==1 & e>=%f & e<=%f & NRi==0 & NCi>=1 & NDi==0",Emin,Emax); + } else if (IWantOnlyDiffraction) { + sprintf(cutScatt,"type==0 & trackID==1 & e>=%f & e<=%f & NRi==0 & NCi==0 & NDi>1",Emin,Emax); + } else { + sprintf(cutScatt,"type==0 & trackID==1 & e>=%f & e<=%f & (NRi+NCi+NDi)>=1",Emin,Emax); + } + } else { + sprintf(cutScatt,"type==0 & trackID==1 & e>=%f & e<=%f",Emin,Emax); + } + + + //spatial distribution + TH2D* SpatialDistribution = new TH2D("SpatialDistribution", "Spatial Distribution", nbinsX, binXStart, binXEnd, nbinsY, binYStart, binYEnd); + t1->Project("SpatialDistribution","posy:posx",cutScatt); + if (IWantPlot2D) { + SpatialDistribution->SetXTitle("X (mm)"); + SpatialDistribution->GetXaxis()->CenterTitle(); + SpatialDistribution->GetXaxis()->SetTitleOffset(1.2); + SpatialDistribution->SetYTitle("Y (mm)"); + SpatialDistribution->GetYaxis()->CenterTitle(); + SpatialDistribution->GetYaxis()->SetTitleOffset(1.3); + TCanvas* c1 = new TCanvas("c1","",1000,1100); + c1->cd(); + SpatialDistribution->SetContour(50); + SpatialDistribution->Draw("colz"); + } + + //profiles (projections transformed in profiles by myself) + if (IWantProfiles) { + TCanvas* c2 = new TCanvas("c2","",1200,900); + c2->Divide(2,1); + + Int_t bcx = Int_t(nbinsX/2.); + Int_t bcy = Int_t(nbinsY/2.); + Double_t sf = 1./(2.*nbp+1.); + + TH1D* profileX = SpatialDistribution->ProjectionX("px", bcx-nbp, bcx+nbp); + profileX->Scale(sf); + profileX->SetTitle("X profile"); + c2->cd(1); + //profileX->Fit("gaus"); + profileX->Draw(); + + TH1D* profileY = SpatialDistribution->ProjectionY("py", bcy-nbp, bcy+nbp); + profileY->Scale(sf); + profileY->SetTitle("Y profile"); + c2->cd(2); + //profileY->Fit("gaus"); + profileY->Draw(); + + cout << endl; + cout << "profileX FWHM: " << profileX->GetRMS()*2.35 << " mm" << endl; + cout << "profileY FWHM: " << profileY->GetRMS()*2.35 << " mm" << endl; + cout << endl; + } + + + //theta distribution + TH1D* thetaDistr = new TH1D("thetaDistr", "", Nbin, thetaMin, thetaMax); + t1->Project("thetaDistr","acos(momz)*180/acos(-1)",cutScatt); + + Double_t Norig = thetaDistr->Integral(); + + Double_t val, angle; + for (Int_t i=1; i<=Nbin; i++) { + angle = thetaDistr->GetBinCenter(i)*acos(-1)/180; + val = thetaDistr->GetBinContent(i); + thetaDistr->SetBinContent(i,val/TMath::Sin(angle)); + } + + Double_t Ndiv = thetaDistr->Integral(); + thetaDistr->Scale(Norig/Ndiv); + + cout << endl << "total counts of thetaDistr: " << thetaDistr->Integral() << endl; + + if (IWantThetaDistribution) { + thetaDistr->SetLineColor(kBlack); + thetaDistr->SetLineWidth(2); + thetaDistr->SetXTitle("#theta (degree)"); + thetaDistr->GetXaxis()->CenterTitle(); + thetaDistr->GetXaxis()->SetTitleOffset(1.1); + //thetaDistr->GetXaxis()->SetRangeUser(2., 12.); + thetaDistr->SetYTitle("Counts"); + thetaDistr->GetYaxis()->CenterTitle(); + thetaDistr->GetYaxis()->SetTitleOffset(1.2); + TCanvas* c3 = new TCanvas("c3","",1100,1100); + c3->cd(); + thetaDistr->Draw("HIST"); + } + + + //Energy Distribution Analysis + if (IWantEdistrib) { + //Theta cut + Char_t cutTheta[256]; + + if (ApplyThetaCut) { + sprintf(cutTheta,"type==0 & TMath::Abs(acos(momz)-%f) <= %f",Angle*0.017453293,DeltaAngle*0.017453293); + } else { + sprintf(cutTheta,""); + } + + //Energy distribution of scattered photons + TH1D* edistrib = new TH1D("edistrib", "", NbinE, EMin, EMax); + t1->Project("edistrib", "e", cutTheta); + edistrib->SetLineColor(kRed); + edistrib->SetLineWidth(2); + edistrib->SetXTitle("E (keV)"); + edistrib->GetXaxis()->CenterTitle(); + edistrib->GetXaxis()->SetTitleOffset(1.1); + edistrib->SetYTitle("Counts (a. u.)"); + edistrib->GetYaxis()->CenterTitle(); + edistrib->GetYaxis()->SetTitleOffset(1.3); + edistrib->SetTitle("Energy spectrum of the particles impinging on the detector"); + TCanvas* c4 = new TCanvas("c4","",1200,800); + c4->cd(); + gStyle->SetOptStat(kFALSE); + edistrib->Draw(); + + Int_t Ntot = edistrib->Integral(); + cout << "total counts of edistrib: " << Ntot << endl; + } + + + //Box Score Analysis + if (IWantBoxAnalysis) { + Int_t xBins = 40; + Int_t yBins = 40; + Int_t zBins = 20; + + Double_t xlow = -25; //mm + Double_t xup = 25; + Double_t ylow = -25; + Double_t yup = 25; + Double_t zlow = -10; + Double_t zup = 10; + + Double_t rngadd = 1.; //Box plot range margin (mm) + + TH3D* XYZ = new TH3D("XYZ","Hot spots", xBins, xlow-rngadd, xup+rngadd, zBins, zlow-rngadd, zup+rngadd, yBins, ylow-rngadd, yup+rngadd); + t1->Project("XYZ", "posy:posz:posx",cutScatt); + XYZ->SetFillColor(2); + XYZ->SetXTitle("x (mm)"); + XYZ->GetXaxis()->CenterTitle(); + XYZ->GetXaxis()->SetTitleOffset(1.8); + XYZ->SetYTitle("z (mm)"); + XYZ->GetYaxis()->CenterTitle(); + XYZ->GetYaxis()->SetTitleOffset(2.4); + XYZ->SetZTitle("y (mm)"); + XYZ->GetZaxis()->CenterTitle(); + XYZ->GetZaxis()->SetTitleOffset(1.8); + gStyle->SetCanvasPreferGL(kTRUE); + TCanvas* c5 = new TCanvas("c5","Box Score Analysis",1200,800); + c5->cd(); + XYZ->Draw("glbox"); + } + + + //energy-angle correlation of impinging photons + if (IWantPlotEtheta) { + TH2D* Etheta = new TH2D("Etheta", "", NbinE, EMin, EMax, Nbin, thetaMin, thetaMax); + t1->Project("Etheta","acos(momz)*180/acos(-1):e"); + Etheta->SetXTitle("E (keV)"); + Etheta->GetXaxis()->CenterTitle(); + Etheta->GetXaxis()->SetTitleOffset(1.2); + Etheta->SetYTitle("#theta (degree)"); + Etheta->GetYaxis()->CenterTitle(); + Etheta->GetYaxis()->SetTitleOffset(1.3); + TCanvas* c6 = new TCanvas("c6","",1000,1100); + c6->cd(); + Etheta->SetContour(50); + Etheta->Draw("colz"); + } + + + //export scattering data + if (IwantExportScattering) { + //open a txt file + ofstream f(ExportScattFileName); + if(!f) { + cout << "Error opening the file!"; + return; + } + //variables extraction from tree + for (Int_t i=1; i<=Nbin; i++) { + Double_t ang = thetaDistr->GetBinCenter(i); + Double_t scatt = thetaDistr->GetBinContent(i); + if (ang >= angCut) { + f << ang << " " << scatt << endl; + } + } + //close the txt file + f.close(); + cout << "writing the file with the scattering data successful!" << endl << endl; + } + + + //export (x,y) variables + if (IwantExportVariables) { + //open a txt file + ofstream f(ExportVarFileName); + if(!f) { + cout << "Error opening the file!"; + return; + } + for (Int_t i=0; iGetEntry(i); + if (IWantOnlyScatt) { + if (kind==0 && ID==1 && energy>=Emin && energy<=Emax && nri+nci+ndi>=1) { + f << x << " " << y << endl; + } + } else { + f << x << " " << y << endl; + } + } + //close the txt file + f.close(); + cout << "writing the file with the (x,y) variables successful!" << endl << endl; + } + + + //export Image + if (IwantExportImage) { + //open a txt file + ofstream fout(ExportImageFileName); + if (!fout) { + cout << "Error opening the file!"; + return; + } + //variables extraction from histogram + Double_t counts = 0.; + for (Int_t i=1; i<=nbinsY; i++) { + for (Int_t j=1; j<=nbinsX; j++) { + counts = SpatialDistribution->GetBinContent(j,i); + fout << counts << " "; + } + fout << endl; + } + //close the txt file + fout.close(); + cout << "writing text image file successful!" << endl << endl; + } + +} + diff --git a/examples/extended/exoticphysics/saxs/CMakeLists.txt b/examples/extended/exoticphysics/saxs/CMakeLists.txt new file mode 100644 index 0000000000..444e4612a8 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/CMakeLists.txt @@ -0,0 +1,77 @@ +#---------------------------------------------------------------------------- +# Setup the project + +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() +project(saxs) + +#---------------------------------------------------------------------------- +# Find Geant4 package, activating all available UI and Vis drivers by default +# You can set WITH_GEANT4_UIVIS to OFF via the command line or ccmake/cmake-gui +# to build a batch mode only executable + +option(WITH_GEANT4_UIVIS "Build SAXS with Geant4 UI and Vis drivers" ON) +if(WITH_GEANT4_UIVIS) + find_package(Geant4 REQUIRED ui_all vis_all) +else() + find_package(Geant4 REQUIRED) +endif() + +#---------------------------------------------------------------------------- +# Setup Geant4 include directories and compile definitions +# Setup include directory for this project + +include(${Geant4_USE_FILE}) +include_directories(${PROJECT_SOURCE_DIR}/include) + +#---------------------------------------------------------------------------- +# Locate sources and headers for this project +# NB: headers are included so they will show up in IDEs + +file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) +file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) + +#---------------------------------------------------------------------------- +# Add the executable, and link it to the Geant4 libraries + +add_executable(saxs saxs.cc ${sources} ${headers}) +target_link_libraries(saxs ${Geant4_LIBRARIES}) + +#---------------------------------------------------------------------------- +# Copy all scripts to the build directory, i.e. the directory in which we +# build SAXS. This is so that we can run the executable directly because it +# relies on these scripts being in the current working directory. + +set(SAXS_SCRIPTS + init_vis.mac + vis.mac + gui.mac + geom.mac + myFF.dat + saxs.in + saxs_slits.in + test.in + scattAnalysis.C + ADXRD.C +) + +foreach(_script ${SAXS_SCRIPTS}) + configure_file( + ${PROJECT_SOURCE_DIR}/${_script} + ${PROJECT_BINARY_DIR}/${_script} + COPYONLY + ) +endforeach() + +#---------------------------------------------------------------------------- +# For internal Geant4 use - but has no effect if you build this +# example standalone +# add_custom_target(saxs_custom DEPENDS saxs) + +#---------------------------------------------------------------------------- +# Install the executable to 'bin' directory under CMAKE_INSTALL_PREFIX + +install(TARGETS saxs DESTINATION bin) + diff --git a/examples/extended/exoticphysics/saxs/History b/examples/extended/exoticphysics/saxs/History new file mode 100644 index 0000000000..fba1d609d6 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/History @@ -0,0 +1,28 @@ +------------------------------------------------------------------- + + ========================================================= + Geant4 - an Object-Oriented Toolkit for Simulation in HEP + ========================================================= + + Exotic Examples History file + ----------------------------- +This file should be used by the G4 example coordinator to briefly +summarize all major modifications introduced in the code and keep +track of all tags. + + ---------------------------------------------------------- + * Reverse chronological order (last date on top), please * + ---------------------------------------------------------- + +November 10, 2020, B. Morgan (saxs-V10-06-03) +- Migration to G4RunManagerFactory. + +Nov 6, 2020, I. Hrivnacova (saxs-V10-06-02) +- Fixed doxygen documentation + +Nov 2, 2020, G. Paternò and L. Pandola (saxs-V10-06-01) +- Finalize documentation (README and .README.txt) + +Oct 13, 2020, G. Paternò and L. Pandola (saxs-V10-06-00) +- First import. + diff --git a/examples/extended/exoticphysics/saxs/README b/examples/extended/exoticphysics/saxs/README new file mode 100644 index 0000000000..a583fdd2b9 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/README @@ -0,0 +1,218 @@ + + ========================================================= + Geant4 - an Object-Oriented Toolkit for Simulation in HEP + ========================================================= + + Extended Example saxs + -------------------- + + The example saxs implements the typical setup of a Small Angle X-ray + Scattering (SAXS) experiment. It is meant to illustrate the + usage of molecular interference (MI) of Rayleigh (coherent) scattering + of photons inside the matter, which is implemented in the + G4PenelopeRayleighModelMI model. + + 1- GEOMETRY + + The setup consists of a phantom/sample under investigation, slits + to collimate the photon beam and a shielded detector to collect + the photons scattered by the phantom (see SAXSDetectorConstruction). + + The geometry is scalable through the interactive commands defined + in the SAXSDetectorConstructionMessenger class. All the significant + quantities, such as the setup (scattering) rotation angle, the position + and size of all the volumes, as well as the phantom material can be + set via macro commands. + + Two macro files come with this example: saxs.in and saxs_slits.in. + + In the saxs.in macro, the phantom is a cylinder with a diameter and + a height of 10 mm made of a mixture of 80% fat and 20% water. + In general, if the argument of /det/setPhantomMaterial command is 2, + as in this case, the material is a biological tissue ("MedMat") + defined as a mixture of fat, water, collagen and hydroxyapatite. + The weight fraction of the mixture components can be set through commands + /det/setComp0, /det/setComp1, /det/setComp2, /det/setComp3, respectively. + The tissue form factor (including MI) is automatically calculated as a + weighed sum of the form factors of the basis components. + In this case, no slits are foreseen and the sensitive detector + positioned 400 mm downstream of the phantom collects all the photons + transmitted and scattered by the phantom, which is irradiated + by a pencil beam with an energy of 20 keV. + + In the saxs_slits.in macro, the phantom is again a cylinder with a + diameter and a height of 10 mm. The phantom is made of a custom + material ("CustomMat") whose density and composition is set through + /det/setCustomMatDensity and /det/setCustomMatHmassfract, + /det/setCustomMatNmassfract, /det/setCustomMatOmassfract commands, + respectively. In general, a custom material can be defined by + specifying the mass fraction of H, C, N, O, Na, P, S, Cl, K, and Ca via + commands analogous to those mentioned above. In this case, the material + composition corresponds to that of ammonium nitrate (NH4NO3). + For a custom material, the user can provide the path of the file with + the material form factor (with MI) through the /det/SetCustomMatFF + command. As an example, the file myFF.dat contains the form factor of + NH4NO3 measured by Harding in 1999. + In this case the slits upstream and downstream the phantom + are present. This setup is suitable for both monochromatic and + polychromatic beams. To speed-up the simulation, a monochromatic + photon beam was chosen, but a polychromatic beam can be easily defined. + + 2- PHYSICS + + In this example, only electromagnetic processes and decays are considered. + They are defined in a custom physics list that allows the user to + choose among various EM PhysicsList constructors. In particular, + by choosing G4EmPenelopePhysicsMI and setting fUseMIFlag as true, + it is possible to enable the molecular interference effects. This + is the default configuration. + + 3- ACTION INITALIZATION + + SAXSActionInitialization class instantiates and registers to + Geant4 kernel all user action classes. While in sequential mode + the action classes are instatiated just once, by invoking the + method: SAXSActionInitialization::Build(), + in multi-threading mode the same method is invoked for each thread + worker and so all user action classes are defined thread-local. + + A run action class is instantiated both thread-local and global. + That's why its instance is created also in the method + SAXSActionInitialization::BuildForMaster(), which is + invoked only in multi-threading mode. + + 4- PRIMARY GENERATOR + + The primary generator action class employs the G4GeneralParticleSource (GPS) + generator. The primary beam has to be defined via the G4 built-in + commands of the G4GeneralParticleSource in a input macro file. + In particular, a photon beam directed toward the phantom must be defined + to test the MI effects. The X-ray beam can be monochromatic or + polychromatic, parallel or divergent. + + 5- EVENT AND DETECTOR RESPONSE + + An event consists of the generation of a single particle which is + transported through the phantom and then to the sensitive detector. + + The interactions of the photons inside the phantom, and in particular, + the scattering events, are scored in a dedicated ntuple through the + SAXSSteppingAction class. + + The hits of the particles on the sensitive detector positioned + downstream of the phantom (SAXSSensitiveDetectorHit) are recorded + in a dedicated ntuple through the SAXSSensitiveDetector class. + + 6- ANALYSIS: + + The analysis tools are used to accumulate statistics. + ntuple are created in SAXSRunAction::SAXSRunAction() + constructor for the following quantities: + + Ntuple1 (part) - Particles impinging on the Sensitive Detector (SD): + - energy of the particles + - position of the hits + - momentum of the particles + - time of the hits + - type of impinging particles + - ID number of the impinging particles + - number of scattering events a primary had before hitting the SD + - event number of the hits + + Ntuple2 (scatt) - Interactions of photons inside the phantom: + - ID of the process occurred + (0-> transportation, 1->Rayleigh, 2->Compton, 3->Photoelectic) + - initial energy of the particles + - scattering angle + + The ntuples are saved in the output file in a format + selected in SAXSAnalysis.hh. + + When running in multi-threading mode, the ntuples accumulated + on threads are automatically merged in a single output file. + + The default output format is root. Two root scripts come with + this example to analyze the output file: scattAnalysis.C and + ADXRD.C. The first can be used to analyze the scatt ntuple, while + the second can be used for part ntuple. + + 7- HOW TO RUN + + - Execute saxs in the 'interactive mode' with visualization: + % ./saxs + and type in the commands line by line: + Idle> /control/verbose 2 + Idle> /tracking/verbose 1 + Idle> ... + Idle> /run/beamOn 10 + Idle> ... + Idle> exit + or it is possible to run a macro file (test.in is a simple macro where the + primary beam is defined through the usual GPS commands): + Idle> /control/execute test.in + Idle> /run/beamOn 10 + .... + Idle> exit + + - Execute saxs in the 'batch' mode from macro files + (without visualization) + % ./saxs saxs.in [Ncores] + % ./saxs saxs_slits.in [Ncores] + Ncores (optional argument) is the number of threads the user wants to use in + MT mode. + + + The following paragraphs are common to all basic examples + + A- VISUALISATION + + The visualization manager is set via the G4VisExecutive class + in the main() function in saxs.cc. + The initialisation of the drawing is done via a set of /vis/ commands + in the macro vis.mac. This macro is automatically read from + the main function when the example is used in interactive running mode. + + By default, vis.mac opens an OpenGL viewer (/vis/open OGL). + The user can change the initial viewer by commenting out this line + and instead uncommenting one of the other /vis/open statements, such as + HepRepFile or DAWNFILE (which produce files that can be viewed with the + HepRApp and DAWN viewers, respectively). Note that one can always + open new viewers at any time from the command line. For example, if + you already have a view in, say, an OpenGL window with a name + "viewer-0", then + /vis/open DAWNFILE + then to get the same view + /vis/viewer/copyView viewer-0 + or to get the same view *plus* scene-modifications + /vis/viewer/set/all viewer-0 + then to see the result + /vis/viewer/flush + + The DAWNFILE, HepRepFile drivers are always available + (since they require no external libraries), but the OGL driver requires + that the Geant4 libraries have been built with the OpenGL option. + + vis.mac has additional commands that demonstrate additional functionality + of the vis system, such as displaying text, axes, scales, date, logo and + shows how to change viewpoint and style. + To see even more commands use help or ls or browse the available UI commands + in the Application Developers Guide. + + For more information on visualization, including information on how to + install and run DAWN, OpenGL and HepRApp, see the visualization tutorials, + for example, + http://geant4.slac.stanford.edu/Presentations/vis/G4[VIS]Tutorial/G4[VIS]Tutorial.html + (where [VIS] can be replaced by DAWN, OpenGL and HepRApp) + + The tracks are automatically drawn at the end of each event, accumulated + for all events and erased at the beginning of the next run. + + B- USER INTERFACES + + The user command interface is set via the G4UIExecutive class + in the main() function in saxs.cc + The selection of the user command interface is then done automatically + according to the Geant4 configuration or it can be done explicitly via + the third argument of the G4UIExecutive constructor (see exampleB4a.cc). + + diff --git a/examples/extended/exoticphysics/saxs/geom.mac b/examples/extended/exoticphysics/saxs/geom.mac new file mode 100644 index 0000000000..67dd7b5bf3 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/geom.mac @@ -0,0 +1,28 @@ +/det/setPhantomMaterial 1 +/det/setPhantomDiameter 20. mm +/det/setPhantomHeight 20. mm +/det/setPhantomZ 500. mm #default is 0 + +/det/setThetaSetup 0.192 #[rad] (default is 0) + +/det/setSlits true #default is false +/det/setSlit1Thickness 5. mm +/det/setSlit2Thickness 5. mm +/det/setSlit3Thickness 5. mm +/det/setSlit4Thickness 5. mm +/det/setSlit1SampleDistance 350. mm +/det/setSlit2SampleDistance 50. mm +/det/setSlit3SampleDistance 50. mm +/det/setSlit4SampleDistance 450. mm +/det/setSlit1xAperture 4. mm +/det/setSlit2xAperture 4. mm +/det/setSlit3xAperture 4. mm +/det/setSlit4xAperture 4. mm +/det/setSlit1yAperture 4. mm +/det/setSlit2yAperture 4. mm +/det/setSlit3yAperture 4. mm +/det/setSlit4yAperture 4. mm + +/det/setDetectorSize 20. mm +/det/setDetectorThickness 20. mm +/det/setDetectorSampleDistance 500. mm diff --git a/examples/extended/exoticphysics/saxs/gui.mac b/examples/extended/exoticphysics/saxs/gui.mac new file mode 100644 index 0000000000..37bc7d509e --- /dev/null +++ b/examples/extended/exoticphysics/saxs/gui.mac @@ -0,0 +1,25 @@ +# This file permits to customize, with commands, +# the menu bar of the G4UIXm, G4UIQt, G4UIWin32 sessions. +# It has no effect with G4UIterminal. +# +# File : +/gui/addMenu g4file G4File +/gui/addButton g4file Continue "continue" +/gui/addButton g4file Exit "exit" +# +# Run menu : +/gui/addMenu run Run +/gui/addButton run "test beam" "/control/execute test.in" +/gui/addButton run "beamOn 1" "/run/beamOn 1" +# +# Gun menu : +/gui/addMenu gun Gun +/gui/addButton gun "gamma" "/gps/particle gamma" +/gui/addButton gun "20 keV" "/gps/energy 20. keV" +# +# Viewer menu : +/gui/addMenu viewer Viewer +/gui/addButton viewer "Set lateral view" "/vis/viewer/set/viewpointThetaPhi 90 0" +/gui/addButton viewer "Set front view" "/vis/viewer/set/viewpointThetaPhi 180 0" +/gui/addButton viewer "Set top view" "/vis/viewer/set/viewpointThetaPhi 90 90" +/gui/addButton viewer "geometry test" "/geometry/test/run" diff --git a/source/processes/electromagnetic/lowenergy/include/G4MuElecElastic.hh b/examples/extended/exoticphysics/saxs/include/G4EmPenelopePhysicsMI.hh old mode 100755 new mode 100644 similarity index 69% rename from source/processes/electromagnetic/lowenergy/include/G4MuElecElastic.hh rename to examples/extended/exoticphysics/saxs/include/G4EmPenelopePhysicsMI.hh index 056b1becbc..d28ebb1a42 --- a/source/processes/electromagnetic/lowenergy/include/G4MuElecElastic.hh +++ b/examples/extended/exoticphysics/saxs/include/G4EmPenelopePhysicsMI.hh @@ -23,50 +23,37 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// $Id: G4EmPenelopePhysicsMI.cc 109526 2018-04-30 07:11:52Z gcosmo $ +// customized by gpaterno for MI in Rayleigh Scattering, March 2019 // -// G4MuElecElastic.hh, 2011/08/29 A.Valentin, M. Raine -// -// Based on the following publications -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for electrons in Si, -// NIM B, vol. 288, pp. 66 - 73, 2012. -// -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#ifndef G4MuElecElastic_h -#define G4MuElecElastic_h 1 +#ifndef G4EmPenelopePhysicsMI_h +#define G4EmPenelopePhysicsMI_h 1 -#include "G4VEmProcess.hh" -#include "G4Electron.hh" - -// Available models -#include "G4MuElecElasticModel.hh" +#include "G4VPhysicsConstructor.hh" +#include "G4EmParticleList.hh" +#include "globals.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -class G4MuElecElastic : public G4VEmProcess - +class G4EmPenelopePhysicsMI : public G4VPhysicsConstructor { -public: - - G4MuElecElastic(const G4String& processName ="MuElecElastic", - G4ProcessType type = fElectromagnetic); - - virtual ~G4MuElecElastic(); - - virtual G4bool IsApplicable(const G4ParticleDefinition&); +public: + explicit G4EmPenelopePhysicsMI(G4int ver=1, const G4String& name="", + G4bool useMI=true); + + virtual ~G4EmPenelopePhysicsMI(); + + virtual void ConstructParticle(); + virtual void ConstructProcess(); - virtual void PrintInfo(); - -protected: - - virtual void InitialiseProcess(const G4ParticleDefinition*); - private: - - G4bool isInitialised; + G4int fVerbose; + G4EmParticleList fPartList; + G4bool fUseMIFlag; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - + #endif diff --git a/examples/extended/exoticphysics/saxs/include/SAXSActionInitialization.hh b/examples/extended/exoticphysics/saxs/include/SAXSActionInitialization.hh new file mode 100644 index 0000000000..5707344501 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/include/SAXSActionInitialization.hh @@ -0,0 +1,55 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSActionInitialization.hh +/// \brief Definition of the SAXSActionInitialization class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef SAXSActionInitialization_h +#define SAXSActionInitialization_h 1 + +#include "G4VUserActionInitialization.hh" +#include "G4GeneralParticleSource.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +/// Action initialization class. + +class SAXSActionInitialization : public G4VUserActionInitialization { +public: + SAXSActionInitialization(); + ~SAXSActionInitialization(); + +private: + virtual void Build() const; + virtual void BuildForMaster() const; + +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif + diff --git a/environments/g4py/source/boost/pyG4indexing.hh b/examples/extended/exoticphysics/saxs/include/SAXSAnalysis.hh similarity index 80% rename from environments/g4py/source/boost/pyG4indexing.hh rename to examples/extended/exoticphysics/saxs/include/SAXSAnalysis.hh index 530e7c0b37..9c3bc8872c 100644 --- a/environments/g4py/source/boost/pyG4indexing.hh +++ b/examples/extended/exoticphysics/saxs/include/SAXSAnalysis.hh @@ -23,18 +23,18 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// ==================================================================== -// pyG4indexing.hh +/// \file SAXSAnalysis.hh +/// \brief Implementation of the SAXSAnalysis class // -// 2005 Q -// ==================================================================== -#ifndef PYG4_INDEXING_H -#define PYG4_INDEXING_H +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#if BOOST_VERSION < 103300 -#include "vector_indexing_suite.hpp" -#else -#include -#endif +#ifndef SAXSAnalysis_h +#define SAXSAnalysis_h 1 + +#include "g4root.hh" +//#include "g4xml.hh" +//#include "g4csv.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #endif diff --git a/examples/extended/exoticphysics/saxs/include/SAXSDetectorConstruction.hh b/examples/extended/exoticphysics/saxs/include/SAXSDetectorConstruction.hh new file mode 100644 index 0000000000..58f6b2a121 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/include/SAXSDetectorConstruction.hh @@ -0,0 +1,269 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSDetectorConstruction.hh +/// \brief Implementation of the SAXSDetectorConstruction class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef SAXSDetectorConstruction_h +#define SAXSDetectorConstruction_h 1 +#endif + +#include "SAXSDetectorConstructionMessenger.hh" + +#include "G4VUserDetectorConstruction.hh" + +#include "G4Box.hh" +#include "G4Tubs.hh" +#include "G4LogicalVolume.hh" +#include "G4VPhysicalVolume.hh" + +#include "G4RunManager.hh" +#include "globals.hh" + +#include "G4Material.hh" +#include "G4MaterialTable.hh" +#include "G4Element.hh" +#include "G4ElementTable.hh" +#include "G4NistManager.hh" +#include "G4ExtendedMaterial.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +/// Detector construction. + +class SAXSDetectorConstruction : public G4VUserDetectorConstruction +{ +public: + SAXSDetectorConstruction(); + ~SAXSDetectorConstruction(); + + void DefineMaterials(); + void SetGeometricalVariables(); + + virtual G4VPhysicalVolume* Construct(); + + G4LogicalVolume* GetSensitiveVolume() const {return fSensitiveVolume;} + G4LogicalVolume* GetPhantom() const {return fPhantomLogic;} + +protected: + G4LogicalVolume* fSensitiveVolume; + +private: + virtual void ConstructSDandField(); + + SAXSDetectorConstructionMessenger* fMessenger; + + G4bool fIWantSlits; + + //-----------------definition of Volumes------------------- + //World + G4Box* fWorldSolid; + G4LogicalVolume* fWorldLogic; + G4VPhysicalVolume* fWorldPhysical; + + //Phantom + G4LogicalVolume* fPhantomLogic; + G4VPhysicalVolume* fPhantomPhysical; + G4Material* fPhantomMaterial; + G4int fPhantomMaterialIndex; + + //Slits + G4LogicalVolume* fSlit1Logic; + G4LogicalVolume* fSlit2Logic; + G4LogicalVolume* fSlit3Logic; + G4LogicalVolume* fSlit4Logic; + G4VPhysicalVolume* fSlit1Physical; + G4VPhysicalVolume* fSlit2Physical; + G4VPhysicalVolume* fSlit3Physical; + G4VPhysicalVolume* fSlit4Physical; + + //Detector + G4LogicalVolume* fDetectorLogic; + G4VPhysicalVolume* fDetectorPhysical; + + //Shielding + G4LogicalVolume* fShieldingLogic; + G4VPhysicalVolume* fShieldingPhysical; + G4LogicalVolume* fShieldingBackLogic; + G4VPhysicalVolume* fShieldingBackPhysical; + + //--------------------definition of Materials-------------- + //materials for MIFF study + G4Material* fFat; + G4Material* fWater; + G4Material* fBoneMatrix; + G4Material* fMineral; + G4Material* fMedMat; + G4Material* fPMMA; + G4Material* fAdipose; + G4Material* fGlandular; + G4Material* fBreast5050; + G4Material* fcarcinoma; + G4Material* fLexan; + G4Material* fKapton; + G4Material* fNylon; + G4Material* fPolyethylene; + G4Material* fPolystyrene; + G4Material* fGrayMatter; + G4Material* fWhiteMatter; + G4Material* fbeefBlood; + G4Material* fFormaline; + G4Material* fAcetone; + G4Material* fHperoxide; + G4Material* fCIRS3070; + G4Material* fCIRS5050; + G4Material* fCIRS7030; + G4Material* fRMI454; + G4Material* fBone; + G4Material* ffatLowX; + G4Material* fbonematrixLowX; + G4Material* fdryBoneLowX; + G4Material* fliver; + G4Material* fkidney; + + //custom material + G4ExtendedMaterial* fCustomMat; + G4double fCustomMatDensity; + G4double fCustomMatHmassfract; + G4double fCustomMatCmassfract; + G4double fCustomMatNmassfract; + G4double fCustomMatOmassfract; + G4double fCustomMatNamassfract; + G4double fCustomMatPmassfract; + G4double fCustomMatSmassfract; + G4double fCustomMatClmassfract; + G4double fCustomMatKmassfract; + G4double fCustomMatCamassfract; + G4String fCustomMatFF; + + //definitions of variables for MedMat composition + G4double fComp0,fComp1,fComp2,fComp3; + + //other materials + G4Material* fAir; + G4Material* fTungsten; + G4Material* fLead; + G4Material* fGe; + + //-------------definition of Geometrical Variables--------- + //World + G4double fWorldSize; + + //Phantom + G4double fPhantomDiameter; + G4double fPhantomHeight; + G4double fPhantomZ; + + //setup angle (rad) + G4double fthetaSetup; + + //Slits + G4double fSlitSize; + G4double fSlit1Thickness; + G4double fSlit2Thickness; + G4double fSlit3Thickness; + G4double fSlit4Thickness; + G4double fSlit1SampleDistance; //center-center + G4double fSlit2SampleDistance; + G4double fSlit3SampleDistance; + G4double fSlit4SampleDistance; + G4double fSlit1xAperture; + G4double fSlit2xAperture; + G4double fSlit3xAperture; + G4double fSlit4xAperture; + G4double fSlit1yAperture; + G4double fSlit2yAperture; + G4double fSlit3yAperture; + G4double fSlit4yAperture; + + //Detector + G4double fDetectorThickness; + G4double fDetectorSize; + G4double fDetectorSampleDistance; //center-center + + //Shielding + G4double fShieldingThickness; + + //-------------set methods for the messenger--------------- +public: + void SetCustomMatFF(const G4String& ffname) {fCustomMatFF = ffname;} + + void SetCustomMatDensity(G4double csd) {fCustomMatDensity = csd;} + void SetCustomMatHmassfract(G4double csHmf) {fCustomMatHmassfract = csHmf;} + void SetCustomMatCmassfract(G4double csCmf) {fCustomMatCmassfract = csCmf;} + void SetCustomMatNmassfract(G4double csNmf) {fCustomMatNmassfract = csNmf;} + void SetCustomMatOmassfract(G4double csOmf) {fCustomMatOmassfract = csOmf;} + void SetCustomMatNamassfract(G4double csNamf) {fCustomMatNamassfract = csNamf;} + void SetCustomMatPmassfract(G4double csPmf) {fCustomMatPmassfract = csPmf;} + void SetCustomMatSmassfract(G4double csSmf) {fCustomMatSmassfract = csSmf;} + void SetCustomMatClmassfract(G4double csClmf) {fCustomMatClmassfract = csClmf;} + void SetCustomMatKmassfract(G4double csKmf) {fCustomMatKmassfract = csKmf;} + void SetCustomMatCamassfract(G4double csCamf) {fCustomMatCamassfract = csCamf;} + + void SetPhantomMaterial(G4int mat) {fPhantomMaterialIndex = mat;} + + void SetPhantomDiameter(G4double diam) {fPhantomDiameter = diam;} + void SetPhantomHeight(G4double ht) {fPhantomHeight = ht;} + void SetPhantomZ(G4double PhZ) {fPhantomZ = PhZ;} + + void SetComp0(G4double c0) {fComp0 = c0;} + void SetComp1(G4double c1) {fComp1 = c1;} + void SetComp2(G4double c2) {fComp2 = c2;} + void SetComp3(G4double c3) {fComp3 = c3;} + + void SetThetaSetup(G4double theta) {fthetaSetup = theta;} + + void SetSlits(G4bool bslits) {fIWantSlits = bslits;} + void SetSlit1Thickness(G4double sl1th) {fSlit1Thickness = sl1th;} + void SetSlit2Thickness(G4double sl2th) {fSlit2Thickness = sl2th;} + void SetSlit3Thickness(G4double sl3th) {fSlit3Thickness = sl3th;} + void SetSlit4Thickness(G4double sl4th) {fSlit4Thickness = sl4th;} + void SetSlit1SampleDistance(G4double slSampleDist1) + {fSlit1SampleDistance = slSampleDist1;} + void SetSlit2SampleDistance(G4double slSampleDist2) + {fSlit2SampleDistance = slSampleDist2;} + void SetSlit3SampleDistance(G4double slSampleDist3) + {fSlit3SampleDistance = slSampleDist3;} + void SetSlit4SampleDistance(G4double slSampleDist4) + {fSlit4SampleDistance = slSampleDist4;} + void SetSlit1xAperture(G4double aperture1x) {fSlit1xAperture = aperture1x;} + void SetSlit2xAperture(G4double aperture2x) {fSlit2xAperture = aperture2x;} + void SetSlit3xAperture(G4double aperture3x) {fSlit3xAperture = aperture3x;} + void SetSlit4xAperture(G4double aperture4x) {fSlit4xAperture = aperture4x;} + void SetSlit1yAperture(G4double aperture1y) {fSlit1yAperture = aperture1y;} + void SetSlit2yAperture(G4double aperture2y) {fSlit2yAperture = aperture2y;} + void SetSlit3yAperture(G4double aperture3y) {fSlit3yAperture = aperture3y;} + void SetSlit4yAperture(G4double aperture4y) {fSlit4yAperture = aperture4y;} + + void SetDetectorSize(G4double detSize) {fDetectorSize = detSize;} + void SetDetectorThickness(G4double detTh) {fDetectorThickness = detTh;} + void SetDetectorSampleDistance(G4double detDist) + {fDetectorSampleDistance = detDist;} + +}; +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + diff --git a/examples/extended/exoticphysics/saxs/include/SAXSDetectorConstructionMessenger.hh b/examples/extended/exoticphysics/saxs/include/SAXSDetectorConstructionMessenger.hh new file mode 100644 index 0000000000..cc972fc817 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/include/SAXSDetectorConstructionMessenger.hh @@ -0,0 +1,115 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSDetectorConstructionMessenger.hh +/// \brief Implementation of the SAXSDetectorConstructionMessenger class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef SAXSDetectorConstructionMessenger_h +#define SAXSDetectorConstructionMessenger_h 1 + +#include "G4UImessenger.hh" +#include "globals.hh" + +class SAXSDetectorConstruction; + +class G4UIdirectory; +class G4UIcmdWithADoubleAndUnit; +class G4UIcmdWithAnInteger; +class G4UIcmdWithADouble; +class G4UIcmdWithABool; +class G4UIcmdWith3VectorAndUnit; +class G4UIcmdWithAString; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +/// DetectorConstruction messenger. + +class SAXSDetectorConstructionMessenger: public G4UImessenger +{ +public: + SAXSDetectorConstructionMessenger(SAXSDetectorConstruction* detconstr); + ~SAXSDetectorConstructionMessenger(); + + virtual void SetNewValue(G4UIcommand* command,G4String newValues); + +private: + SAXSDetectorConstruction* fDetector; + + G4UIdirectory* fCmdDir; + + G4UIcmdWithAString* fSetCustomMatFFfilename; + G4UIcmdWithADouble* fSetCustomMatDensityCmd; + G4UIcmdWithADouble* fSetCustomMatHmassfractCmd; + G4UIcmdWithADouble* fSetCustomMatCmassfractCmd; + G4UIcmdWithADouble* fSetCustomMatNmassfractCmd; + G4UIcmdWithADouble* fSetCustomMatOmassfractCmd; + G4UIcmdWithADouble* fSetCustomMatNamassfractCmd; + G4UIcmdWithADouble* fSetCustomMatPmassfractCmd; + G4UIcmdWithADouble* fSetCustomMatSmassfractCmd; + G4UIcmdWithADouble* fSetCustomMatClmassfractCmd; + G4UIcmdWithADouble* fSetCustomMatKmassfractCmd; + G4UIcmdWithADouble* fSetCustomMatCamassfractCmd; + + G4UIcmdWithAnInteger* fPhantomMaterialCmd; + G4UIcmdWithADoubleAndUnit* fPhantomDiameterCmd; + G4UIcmdWithADoubleAndUnit* fPhantomHeightCmd; + G4UIcmdWithADoubleAndUnit* fPhantomZCmd; + + G4UIcmdWithADouble* fSetComp0Cmd; + G4UIcmdWithADouble* fSetComp1Cmd; + G4UIcmdWithADouble* fSetComp2Cmd; + G4UIcmdWithADouble* fSetComp3Cmd; + + G4UIcmdWithADouble* fThetaSetupCmd; + + G4UIcmdWithABool* fSetSlitsCmd; + G4UIcmdWithADoubleAndUnit* fSlit1ThicknessCmd; + G4UIcmdWithADoubleAndUnit* fSlit2ThicknessCmd; + G4UIcmdWithADoubleAndUnit* fSlit3ThicknessCmd; + G4UIcmdWithADoubleAndUnit* fSlit4ThicknessCmd; + G4UIcmdWithADoubleAndUnit* fSlit1DistanceCmd; + G4UIcmdWithADoubleAndUnit* fSlit2DistanceCmd; + G4UIcmdWithADoubleAndUnit* fSlit3DistanceCmd; + G4UIcmdWithADoubleAndUnit* fSlit4DistanceCmd; + G4UIcmdWithADoubleAndUnit* fSlit1xApertureCmd; + G4UIcmdWithADoubleAndUnit* fSlit2xApertureCmd; + G4UIcmdWithADoubleAndUnit* fSlit3xApertureCmd; + G4UIcmdWithADoubleAndUnit* fSlit4xApertureCmd; + G4UIcmdWithADoubleAndUnit* fSlit1yApertureCmd; + G4UIcmdWithADoubleAndUnit* fSlit2yApertureCmd; + G4UIcmdWithADoubleAndUnit* fSlit3yApertureCmd; + G4UIcmdWithADoubleAndUnit* fSlit4yApertureCmd; + + G4UIcmdWithADoubleAndUnit* fDetectorThicknessCmd; + G4UIcmdWithADoubleAndUnit* fDetectorSizeCmd; + G4UIcmdWithADoubleAndUnit* fDetectorDistanceCmd; +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif + diff --git a/examples/extended/exoticphysics/saxs/include/SAXSEventAction.hh b/examples/extended/exoticphysics/saxs/include/SAXSEventAction.hh new file mode 100644 index 0000000000..e7d2d2b49d --- /dev/null +++ b/examples/extended/exoticphysics/saxs/include/SAXSEventAction.hh @@ -0,0 +1,75 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSEventAction.hh +/// \brief Implementation of the SAXSEventAction class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef SAXSEventAction_h +#define SAXSEventAction_h 1 + +#include "G4UserEventAction.hh" +#include "globals.hh" +#include +#include +#include + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +/// Event action. + +class SAXSEventAction : public G4UserEventAction +{ +public: + SAXSEventAction(); + virtual ~SAXSEventAction(); + + virtual void BeginOfEventAction(const G4Event*); + virtual void EndOfEventAction(const G4Event*); + +private: + G4int fSensitiveDetector_ID; + G4int fVerboseLevel; + + G4int fNRi; + G4int fNCi; + G4int fNDi; + G4double fEventWeight; + +public: + inline void SetVerbose(G4int val) {fVerboseLevel = val;} + inline G4int GetVerbose() const {return fVerboseLevel;} + + void AddNRi() {fNRi++;} + void AddNCi() {fNCi++;} + void AddNDi() {fNDi++;} + void UpdateEventWeight(G4double ew) {fEventWeight = ew;} +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif + diff --git a/examples/extended/exoticphysics/saxs/include/SAXSPhysicsList.hh b/examples/extended/exoticphysics/saxs/include/SAXSPhysicsList.hh new file mode 100644 index 0000000000..f826894848 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/include/SAXSPhysicsList.hh @@ -0,0 +1,82 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSPhysicsList.hh +/// \brief Implementation of the SAXSPhysicsList class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef SAXSPhysicsList_h +#define SAXSPhysicsList_h 1 + +#include "globals.hh" +#include "G4VUserPhysicsList.hh" +#include "G4VModularPhysicsList.hh" +#include + +class G4VPhysicsConstructor; +class SAXSPhysicsListMessenger; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +/// Physics list. +/// It includes various EM constructors, which can be selected through macro. +/// By defualt "standard" Penelope physics is used. In order to activate +/// Molecular interference (MI) effects in Rayleigh scattering, choose +/// G4EmPenelopeMI PhysicsList with fUseMIFlag variable set as true (default). + +class SAXSPhysicsList : public G4VUserPhysicsList +{ +public: + SAXSPhysicsList(); + virtual ~SAXSPhysicsList(); + +public: + virtual void ConstructParticle(); + virtual void ConstructProcess(); + virtual void SetCuts(); + + //for the Messenger + void SetDefaultCutsValue(G4double); + void SelectPhysicsList(const G4String& name); + void SetUseMIFlag(G4bool val){fUseMIFlag = val;}; + G4bool GetUseMIFlag(){return fUseMIFlag;}; + +private: + SAXSPhysicsList & operator = (const SAXSPhysicsList &right); + SAXSPhysicsList(const SAXSPhysicsList&); + + G4VPhysicsConstructor* fParticleList; + G4VPhysicsConstructor* fEmPhysicsList; + + G4bool fUseMIFlag; + + SAXSPhysicsListMessenger* fPMessenger; +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif + diff --git a/examples/extended/optical/wls/include/WLSRunActionMessenger.hh b/examples/extended/exoticphysics/saxs/include/SAXSPhysicsListMessenger.hh similarity index 73% rename from examples/extended/optical/wls/include/WLSRunActionMessenger.hh rename to examples/extended/exoticphysics/saxs/include/SAXSPhysicsListMessenger.hh index e0c7c6738b..fbe4b060ff 100644 --- a/examples/extended/optical/wls/include/WLSRunActionMessenger.hh +++ b/examples/extended/exoticphysics/saxs/include/SAXSPhysicsListMessenger.hh @@ -23,48 +23,46 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -/// \file optical/wls/include/WLSRunActionMessenger.hh -/// \brief Definition of the WLSRunActionMessenger class -// +/// \file SAXSPhysicsListMessenger.hh +/// \brief Definition of the SAXSPhysicsListMessenger class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -#ifndef WLSRunActionMessenger_h -#define WLSRunActionMessenger_h 1 +#ifndef SAXSPhysicsListMessenger_h +#define SAXSPhysicsListMessenger_h 1 #include "globals.hh" - #include "G4UImessenger.hh" -class WLSRunAction; +class SAXSPhysicsList; class G4UIdirectory; -class G4UIcmdWithABool; -class G4UIcmdWithAString; -class G4UIcmdWithADouble; class G4UIcmdWithAnInteger; class G4UIcmdWithADoubleAndUnit; +class G4UIcmdWithAString; +class G4UIcmdWithABool; -class WLSRunActionMessenger : public G4UImessenger +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +/// PhysicsList messenger + +class SAXSPhysicsListMessenger : public G4UImessenger { - public: - - WLSRunActionMessenger(WLSRunAction* ); - virtual ~WLSRunActionMessenger(); - - virtual void SetNewValue(G4UIcommand* ,G4String ); - - private: - - WLSRunAction* fRunAction; - - G4UIdirectory* fRndmDir; - G4UIcmdWithAnInteger* fRndmSaveCmd; - G4UIcmdWithAString* fRndmReadCmd; - G4UIcmdWithABool* fSetAutoSeedCmd; - +public: + SAXSPhysicsListMessenger(SAXSPhysicsList*); + virtual ~SAXSPhysicsListMessenger(); + + virtual void SetNewValue(G4UIcommand*, G4String); + +private: + SAXSPhysicsList* fPhysicsList; + G4UIdirectory* fPhysDir; + G4UIcmdWithADoubleAndUnit* fCutsCmd; + G4UIcmdWithAString* fListCmd; + G4UIcmdWithABool* fUseMIFlagCmd; }; +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + #endif + diff --git a/source/processes/hadronic/processes/src/G4AntiOmegacZeroInelasticProcess.cc b/examples/extended/exoticphysics/saxs/include/SAXSPrimaryGeneratorAction.hh similarity index 65% rename from source/processes/hadronic/processes/src/G4AntiOmegacZeroInelasticProcess.cc rename to examples/extended/exoticphysics/saxs/include/SAXSPrimaryGeneratorAction.hh index f2693a05f6..f2153c464d 100644 --- a/source/processes/hadronic/processes/src/G4AntiOmegacZeroInelasticProcess.cc +++ b/examples/extended/exoticphysics/saxs/include/SAXSPrimaryGeneratorAction.hh @@ -23,18 +23,39 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -#include "G4AntiOmegacZeroInelasticProcess.hh" -#include "G4AntiOmegacZero.hh" -#include +/// \file SAXSPrimaryGeneratorAction.hh +/// \brief Definition of the SAXSPrimaryGeneratorAction class +// +/// The G4GeneralParticleSource generator is defined and the +/// features of the primary beam are set through macro commands +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +#ifndef SAXSPrimaryGeneratorAction_h +#define SAXSPrimaryGeneratorAction_h 1 -G4AntiOmegacZeroInelasticProcess::G4AntiOmegacZeroInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4AntiOmegacZero::Definition() ) {} +#include "G4VUserPrimaryGeneratorAction.hh" +#include "globals.hh" +class G4GeneralParticleSource; +class G4ParticleGun; +class G4Event; -void G4AntiOmegacZeroInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4AntiOmegacZeroInelasticProcess handles the inelastic scattering of\n" - << "anti_omega_c0 from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +class SAXSPrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction +{ +public: + SAXSPrimaryGeneratorAction(); + virtual ~SAXSPrimaryGeneratorAction(); + + virtual void GeneratePrimaries(G4Event*); + +private: + G4GeneralParticleSource* fParticleGPS; +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif diff --git a/examples/extended/exoticphysics/saxs/include/SAXSRunAction.hh b/examples/extended/exoticphysics/saxs/include/SAXSRunAction.hh new file mode 100644 index 0000000000..13f550175b --- /dev/null +++ b/examples/extended/exoticphysics/saxs/include/SAXSRunAction.hh @@ -0,0 +1,67 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSRunAction.hh +/// \brief Definition of the SAXSRunAction class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef SAXSRunAction_h +#define SAXSRunAction_h 1 + +#include "SAXSRunActionMessenger.hh" + +#include "G4UserRunAction.hh" +#include "globals.hh" + +class G4Run; +class SAXSRunActionMessenger; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +/// Run action class. + +class SAXSRunAction : public G4UserRunAction +{ +public: + SAXSRunAction(); + virtual ~SAXSRunAction(); + + virtual void BeginOfRunAction(const G4Run*); + virtual void EndOfRunAction(const G4Run*); + + void SetFileName(G4String); + +private: + G4String fFileName; + SAXSRunActionMessenger* fMessenger; + + G4bool fIsFileOpened; +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif + diff --git a/examples/extended/exoticphysics/saxs/include/SAXSRunActionMessenger.hh b/examples/extended/exoticphysics/saxs/include/SAXSRunActionMessenger.hh new file mode 100644 index 0000000000..a40a007e3a --- /dev/null +++ b/examples/extended/exoticphysics/saxs/include/SAXSRunActionMessenger.hh @@ -0,0 +1,60 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSRunActionMessenger.hh +/// \brief Definition of the SAXSRunActionMessenger class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef SAXSRunActionMessenger_h +#define SAXSRunActionMessenger_h 1 + +#include "globals.hh" +#include "G4UImessenger.hh" + +class G4UIcmdWithAString; +class SAXSRunAction; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +/// RunAction messenger. + +class SAXSRunActionMessenger: public G4UImessenger +{ +public: + SAXSRunActionMessenger(SAXSRunAction*); + virtual ~SAXSRunActionMessenger(); + + virtual void SetNewValue(G4UIcommand*,G4String); + +private: + SAXSRunAction* fRunAction; + G4UIcmdWithAString* fSetFileNameCmd; +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif + diff --git a/examples/extended/exoticphysics/saxs/include/SAXSSensitiveDetector.hh b/examples/extended/exoticphysics/saxs/include/SAXSSensitiveDetector.hh new file mode 100644 index 0000000000..8549fce434 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/include/SAXSSensitiveDetector.hh @@ -0,0 +1,71 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSSensitiveDetector.hh +/// \brief Definition of the SAXSSensitiveDetector class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef SAXSSensitiveDetector_h +#define SAXSSensitiveDetector_h 1 + +#include "SAXSSensitiveDetectorHit.hh" +#include "SAXSSensitiveDetectorMessenger.hh" +#include "G4VSensitiveDetector.hh" + +class G4Step; +class G4HCofThisEvent; +class G4TouchableHistory; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +/// Sensitive detector. +/// It stores the features of the impinging particles. + +class SAXSSensitiveDetector : public G4VSensitiveDetector +{ +public: + SAXSSensitiveDetector(G4String); + virtual ~SAXSSensitiveDetector(); + + virtual void Initialize(G4HCofThisEvent*); + virtual G4bool ProcessHits(G4Step*,G4TouchableHistory*); + virtual void EndOfEvent(G4HCofThisEvent*); + + void SetVarStopAndKill(G4bool bVar) {fVarStopAndKill = bVar;} + +private: + SensitiveDetectorHitsCollection* fHitsCollection; + G4int fHCID; + + SAXSSensitiveDetectorMessenger* fSDMessenger; + + G4bool fVarStopAndKill; +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif + diff --git a/examples/extended/exoticphysics/saxs/include/SAXSSensitiveDetectorHit.hh b/examples/extended/exoticphysics/saxs/include/SAXSSensitiveDetectorHit.hh new file mode 100644 index 0000000000..cb29c244fe --- /dev/null +++ b/examples/extended/exoticphysics/saxs/include/SAXSSensitiveDetectorHit.hh @@ -0,0 +1,130 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSSensitiveDetectorHit.hh +/// \brief Definition of the SAXSSensitiveDetectorHit class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef SAXSSensitiveDetectorHit_h +#define SAXSSensitiveDetectorHit_h 1 + +#include "G4VHit.hh" +#include "G4THitsCollection.hh" +#include "G4Allocator.hh" +#include "G4ThreeVector.hh" +#include "G4LogicalVolume.hh" +#include "G4Transform3D.hh" +#include "G4RotationMatrix.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +/// Sensitive Detector hit +/// +/// It records: +/// - the spatial coordinate of the hit +/// - the time at which the hit occurred +/// - the type, ID, weight, momentum and energy of the impinging particle +/// - the ID of the impinging particle parent + +class SAXSSensitiveDetectorHit : public G4VHit +{ +public: + SAXSSensitiveDetectorHit(); + SAXSSensitiveDetectorHit(const SAXSSensitiveDetectorHit &right); + virtual ~SAXSSensitiveDetectorHit(){;} + + const SAXSSensitiveDetectorHit& operator=(const SAXSSensitiveDetectorHit &right); + + int operator==(const SAXSSensitiveDetectorHit &right) const; + + inline void *operator new(size_t); + inline void operator delete(void *aHit); + + virtual void Draw(); + virtual void Print(); + +private: + G4int fTrackID; + G4int fTrackIDP; + G4double fTime; + G4ThreeVector fPos; + G4ThreeVector fMom; + G4double fEnergy; + G4int fType; + G4double fWeight; + +public: + inline void SetTrackID(G4int z) {fTrackID = z;} + inline G4int GetTrackID() const {return fTrackID;} + + inline void SetTrackIDP(G4int z) {fTrackIDP = z;} + inline G4int GetTrackIDP() const {return fTrackIDP;} + + inline void SetTime(G4double t) {fTime = t;} + inline G4double GetTime() const {return fTime;} + + inline void SetPos(G4ThreeVector xyz) {fPos = xyz;} + inline G4ThreeVector GetPos() const {return fPos;} + + inline void SetMom(G4ThreeVector xyz) {fMom = xyz;} + inline G4ThreeVector GetMom() const {return fMom;} + + inline void SetEnergy(G4double energy) {fEnergy = energy;} + inline G4double GetEnergy() const {return fEnergy;} + + inline void SetType(G4int type) {fType = type;} + inline G4int GetType() const {return fType;} + + inline void SetWeight(G4double weight) {fWeight = weight;} + inline G4double GetWeight() const {return fWeight;} +}; + +using SensitiveDetectorHitsCollection = G4THitsCollection; + +extern G4ThreadLocal G4Allocator *hitAllocator; + +inline void* SAXSSensitiveDetectorHit::operator new(size_t) +{ + if (!hitAllocator) + { + hitAllocator = new G4Allocator; + } + return hitAllocator->MallocSingle(); +} + +inline void SAXSSensitiveDetectorHit::operator delete(void *aHit) +{ + if (!hitAllocator) + { + hitAllocator = new G4Allocator; + } + hitAllocator->FreeSingle((SAXSSensitiveDetectorHit*) aHit); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif + diff --git a/examples/extended/exoticphysics/saxs/include/SAXSSensitiveDetectorMessenger.hh b/examples/extended/exoticphysics/saxs/include/SAXSSensitiveDetectorMessenger.hh new file mode 100644 index 0000000000..bddcfd47cc --- /dev/null +++ b/examples/extended/exoticphysics/saxs/include/SAXSSensitiveDetectorMessenger.hh @@ -0,0 +1,62 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSSensitiveDetectorMessenger.hh +/// \brief Implementation of the SAXSSensitiveDetectorMessenger class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef SAXSSensitiveDetectorMessenger_h +#define SAXSSensitiveDetectorMessenger_h 1 + +#include "G4UImessenger.hh" +#include "globals.hh" + +class SAXSSensitiveDetector; +class G4UIdirectory; +class G4UIcmdWithABool; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +/// SensitiveDetector messenger. + +class SAXSSensitiveDetectorMessenger : public G4UImessenger +{ +public: + SAXSSensitiveDetectorMessenger(SAXSSensitiveDetector*); + ~SAXSSensitiveDetectorMessenger(); + + virtual void SetNewValue(G4UIcommand*,G4String); + +private: + SAXSSensitiveDetector* fSenDet; + G4UIdirectory* fSenDetDir; + G4UIcmdWithABool* fUserStopAndKillCmd; +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif + diff --git a/examples/extended/exoticphysics/saxs/include/SAXSSteppingAction.hh b/examples/extended/exoticphysics/saxs/include/SAXSSteppingAction.hh new file mode 100644 index 0000000000..3235e6aaeb --- /dev/null +++ b/examples/extended/exoticphysics/saxs/include/SAXSSteppingAction.hh @@ -0,0 +1,69 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSSteppingAction.hh +/// \brief Definition of the SAXSSteppingAction class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef SAXSSteppingAction_h +#define SAXSSteppingAction_h 1 + +#include "G4UserSteppingAction.hh" +#include "globals.hh" +#include + +class SAXSEventAction; +class G4LogicalVolume; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +/// Stepping Action. +/// It is used to retrive information about every interaction of the photons +/// occuring iside the phantom, and in particular, scattering events. +/// The total number of scattering events (subdivided by tyoe) is passed to +/// the EventAction class and stored at the end of the event. + +class SAXSSteppingAction : public G4UserSteppingAction +{ +public: + SAXSSteppingAction(SAXSEventAction*); + virtual ~SAXSSteppingAction(); + + virtual void UserSteppingAction(const G4Step*); + +private: + SAXSEventAction* fEventAction; + + G4LogicalVolume* fPhantom; + + G4int fEventNumber; + G4int fNSe; +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif + diff --git a/examples/extended/exoticphysics/saxs/init_vis.mac b/examples/extended/exoticphysics/saxs/init_vis.mac new file mode 100644 index 0000000000..52a7443c37 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/init_vis.mac @@ -0,0 +1,10 @@ +#Macro for the initialization in interactive mode + +#Geometry setting +/control/execute geom.mac + +#Initialize kernel +/run/initialize + +#Visualization setting +/control/execute vis.mac diff --git a/examples/extended/exoticphysics/saxs/myFF.dat b/examples/extended/exoticphysics/saxs/myFF.dat new file mode 100644 index 0000000000..aa3c8daab2 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/myFF.dat @@ -0,0 +1,1142 @@ +1.00000e-09 9.56462e-01 +1.00000e-06 9.56917e-01 +4.85201e-06 9.58659e-01 +9.70403e-06 9.60819e-01 +1.45560e-05 9.62943e-01 +1.94081e-05 9.65031e-01 +2.42601e-05 9.67083e-01 +2.91121e-05 9.69101e-01 +3.39641e-05 9.71083e-01 +3.88161e-05 9.73031e-01 +4.36681e-05 9.74944e-01 +4.85201e-05 9.76824e-01 +5.33721e-05 9.78670e-01 +5.82242e-05 9.80483e-01 +6.30762e-05 9.82263e-01 +6.79282e-05 9.84011e-01 +7.27802e-05 9.85726e-01 +7.76322e-05 9.87410e-01 +8.24842e-05 9.89062e-01 +8.73362e-05 9.90682e-01 +9.21883e-05 9.92272e-01 +9.70403e-05 9.93831e-01 +1.01892e-04 9.95359e-01 +1.06744e-04 9.96858e-01 +1.11596e-04 9.98326e-01 +1.16448e-04 9.99765e-01 +1.21300e-04 1.00117e+00 +1.26152e-04 1.00256e+00 +1.31004e-04 1.00391e+00 +1.35856e-04 1.00523e+00 +1.40708e-04 1.00653e+00 +1.45560e-04 1.00779e+00 +1.50412e-04 1.00903e+00 +1.55264e-04 1.01024e+00 +1.60116e-04 1.01143e+00 +1.64968e-04 1.01258e+00 +1.69820e-04 1.01371e+00 +1.74672e-04 1.01482e+00 +1.79525e-04 1.01589e+00 +1.84377e-04 1.01695e+00 +1.89229e-04 1.01797e+00 +1.94081e-04 1.01897e+00 +1.98933e-04 1.01994e+00 +2.03785e-04 1.02089e+00 +2.08637e-04 1.02182e+00 +2.13489e-04 1.02271e+00 +2.18341e-04 1.02359e+00 +2.23193e-04 1.02444e+00 +2.28045e-04 1.02526e+00 +2.32897e-04 1.02606e+00 +2.37749e-04 1.02684e+00 +2.42601e-04 1.02759e+00 +2.47453e-04 1.02832e+00 +2.52305e-04 1.02903e+00 +2.57157e-04 1.02971e+00 +2.62009e-04 1.03037e+00 +2.66861e-04 1.03101e+00 +2.71713e-04 1.03162e+00 +2.76565e-04 1.03222e+00 +2.81417e-04 1.03278e+00 +2.86269e-04 1.03333e+00 +2.91121e-04 1.03386e+00 +2.95973e-04 1.03436e+00 +3.00825e-04 1.03484e+00 +3.05677e-04 1.03531e+00 +3.10529e-04 1.03575e+00 +3.15381e-04 1.03616e+00 +3.20233e-04 1.03656e+00 +3.25085e-04 1.03694e+00 +3.29937e-04 1.03730e+00 +3.34789e-04 1.03763e+00 +3.39641e-04 1.03795e+00 +3.44493e-04 1.03824e+00 +3.49345e-04 1.03852e+00 +3.54197e-04 1.03877e+00 +3.59049e-04 1.03901e+00 +3.63901e-04 1.03922e+00 +3.68753e-04 1.03942e+00 +3.73605e-04 1.03960e+00 +3.78457e-04 1.03976e+00 +3.83309e-04 1.03990e+00 +3.88161e-04 1.04002e+00 +3.93013e-04 1.04012e+00 +3.97865e-04 1.04020e+00 +4.02717e-04 1.04027e+00 +4.07569e-04 1.04031e+00 +4.12421e-04 1.04034e+00 +4.17273e-04 1.04035e+00 +4.22125e-04 1.04034e+00 +4.26977e-04 1.04032e+00 +4.31829e-04 1.04028e+00 +4.36681e-04 1.04022e+00 +4.41533e-04 1.04014e+00 +4.46385e-04 1.04004e+00 +4.51237e-04 1.03993e+00 +4.56089e-04 1.03980e+00 +4.60941e-04 1.03966e+00 +4.65793e-04 1.03949e+00 +4.70645e-04 1.03931e+00 +4.75497e-04 1.03912e+00 +4.80349e-04 1.03891e+00 +4.85201e-04 1.03868e+00 +4.90053e-04 1.03844e+00 +4.94905e-04 1.03818e+00 +4.99757e-04 1.03790e+00 +5.04609e-04 1.03761e+00 +5.09461e-04 1.03730e+00 +5.14313e-04 1.03698e+00 +5.19165e-04 1.03664e+00 +5.24017e-04 1.03629e+00 +5.28869e-04 1.03592e+00 +5.33721e-04 1.03554e+00 +5.38574e-04 1.03514e+00 +5.43426e-04 1.03473e+00 +5.48278e-04 1.03430e+00 +5.53130e-04 1.03386e+00 +5.57982e-04 1.03340e+00 +5.62834e-04 1.03293e+00 +5.67686e-04 1.03245e+00 +5.72538e-04 1.03195e+00 +5.77390e-04 1.03144e+00 +5.82242e-04 1.03091e+00 +5.87094e-04 1.03037e+00 +5.91946e-04 1.02982e+00 +5.96798e-04 1.02925e+00 +6.01650e-04 1.02867e+00 +6.06502e-04 1.02807e+00 +6.11354e-04 1.02747e+00 +6.16206e-04 1.02685e+00 +6.21058e-04 1.02622e+00 +6.25910e-04 1.02557e+00 +6.30762e-04 1.02491e+00 +6.35614e-04 1.02424e+00 +6.40466e-04 1.02356e+00 +6.45318e-04 1.02286e+00 +6.50170e-04 1.02216e+00 +6.55022e-04 1.02144e+00 +6.59874e-04 1.02070e+00 +6.64726e-04 1.01996e+00 +6.69578e-04 1.01921e+00 +6.74430e-04 1.01844e+00 +6.79282e-04 1.01766e+00 +6.84134e-04 1.01687e+00 +6.88986e-04 1.01607e+00 +6.93838e-04 1.01526e+00 +6.98690e-04 1.01443e+00 +7.03542e-04 1.01360e+00 +7.08394e-04 1.01275e+00 +7.13246e-04 1.01190e+00 +7.18098e-04 1.01103e+00 +7.22950e-04 1.01015e+00 +7.27802e-04 1.00926e+00 +7.32654e-04 1.00837e+00 +7.37506e-04 1.00746e+00 +7.42358e-04 1.00654e+00 +7.47210e-04 1.00561e+00 +7.52062e-04 1.00467e+00 +7.56914e-04 1.00372e+00 +7.61766e-04 1.00277e+00 +7.66618e-04 1.00180e+00 +7.71470e-04 1.00082e+00 +7.76322e-04 9.99837e-01 +7.81174e-04 9.98841e-01 +7.86026e-04 9.97837e-01 +7.90878e-04 9.96824e-01 +7.95730e-04 9.95802e-01 +8.00582e-04 9.94771e-01 +8.05434e-04 9.93731e-01 +8.10286e-04 9.92683e-01 +8.15138e-04 9.91627e-01 +8.19990e-04 9.90562e-01 +8.24842e-04 9.89489e-01 +8.29694e-04 9.88408e-01 +8.34546e-04 9.87320e-01 +8.39398e-04 9.86223e-01 +8.44250e-04 9.85118e-01 +8.49102e-04 9.84007e-01 +8.53954e-04 9.82887e-01 +8.58806e-04 9.81760e-01 +8.63658e-04 9.80626e-01 +8.68510e-04 9.79485e-01 +8.73362e-04 9.78337e-01 +8.78214e-04 9.77182e-01 +8.83066e-04 9.76020e-01 +8.87918e-04 9.74851e-01 +8.92770e-04 9.73676e-01 +8.97623e-04 9.72495e-01 +9.02475e-04 9.71307e-01 +9.07327e-04 9.70113e-01 +9.12179e-04 9.68913e-01 +9.17031e-04 9.67707e-01 +9.21883e-04 9.66496e-01 +9.26735e-04 9.65278e-01 +9.31587e-04 9.64055e-01 +9.36439e-04 9.62827e-01 +9.41291e-04 9.61593e-01 +9.46143e-04 9.60355e-01 +9.50995e-04 9.59111e-01 +9.55847e-04 9.57862e-01 +9.60699e-04 9.56609e-01 +9.65551e-04 9.55350e-01 +9.70403e-04 9.54088e-01 +9.75255e-04 9.52820e-01 +9.80107e-04 9.51549e-01 +9.84959e-04 9.50273e-01 +9.89811e-04 9.48994e-01 +9.94663e-04 9.47710e-01 +9.99515e-04 9.46423e-01 +1.00437e-03 9.45132e-01 +1.00922e-03 9.43838e-01 +1.01407e-03 9.42541e-01 +1.01892e-03 9.41240e-01 +1.02377e-03 9.39937e-01 +1.02863e-03 9.38628e-01 +1.03348e-03 9.37318e-01 +1.03833e-03 9.36007e-01 +1.04318e-03 9.34692e-01 +1.04803e-03 9.33375e-01 +1.05289e-03 9.32054e-01 +1.05774e-03 9.30732e-01 +1.06259e-03 9.29409e-01 +1.06744e-03 9.28084e-01 +1.07230e-03 9.26755e-01 +1.07715e-03 9.25427e-01 +1.08200e-03 9.24097e-01 +1.08685e-03 9.22766e-01 +1.09170e-03 9.21434e-01 +1.09656e-03 9.20099e-01 +1.10141e-03 9.18765e-01 +1.10626e-03 9.17431e-01 +1.11111e-03 9.16096e-01 +1.11596e-03 9.14761e-01 +1.12082e-03 9.13423e-01 +1.12567e-03 9.12087e-01 +1.13052e-03 9.10752e-01 +1.13537e-03 9.09417e-01 +1.14022e-03 9.08082e-01 +1.14508e-03 9.06745e-01 +1.14993e-03 9.05412e-01 +1.15478e-03 9.04079e-01 +1.15963e-03 9.02748e-01 +1.16448e-03 9.01418e-01 +1.16934e-03 9.00086e-01 +1.17419e-03 8.98759e-01 +1.17904e-03 8.97433e-01 +1.18389e-03 8.96109e-01 +1.18874e-03 8.94788e-01 +1.19360e-03 8.93465e-01 +1.19845e-03 8.92148e-01 +1.20330e-03 8.90833e-01 +1.20815e-03 8.89521e-01 +1.21300e-03 8.88212e-01 +1.21786e-03 8.86904e-01 +1.22271e-03 8.85601e-01 +1.22756e-03 8.84301e-01 +1.23241e-03 8.83005e-01 +1.23726e-03 8.81713e-01 +1.24212e-03 8.80422e-01 +1.24697e-03 8.79138e-01 +1.25182e-03 8.77857e-01 +1.25667e-03 8.76582e-01 +1.26152e-03 8.75311e-01 +1.26638e-03 8.74042e-01 +1.27123e-03 8.72781e-01 +1.27608e-03 8.71525e-01 +1.28093e-03 8.70274e-01 +1.28578e-03 8.69029e-01 +1.29064e-03 8.67787e-01 +1.29549e-03 8.66553e-01 +1.30034e-03 8.65325e-01 +1.30519e-03 8.64104e-01 +1.31004e-03 8.62889e-01 +1.31490e-03 8.61679e-01 +1.31975e-03 8.60477e-01 +1.32460e-03 8.59283e-01 +1.32945e-03 8.58096e-01 +1.33430e-03 8.56916e-01 +1.33916e-03 8.55742e-01 +1.34401e-03 8.54578e-01 +1.34886e-03 8.53421e-01 +1.35371e-03 8.52273e-01 +1.35856e-03 8.51134e-01 +1.36342e-03 8.50000e-01 +1.36827e-03 8.48878e-01 +1.37312e-03 8.47765e-01 +1.37797e-03 8.46661e-01 +1.38282e-03 8.45566e-01 +1.38768e-03 8.44479e-01 +1.39253e-03 8.43404e-01 +1.39738e-03 8.42338e-01 +1.40223e-03 8.41283e-01 +1.40708e-03 8.40239e-01 +1.41194e-03 8.39203e-01 +1.41679e-03 8.38180e-01 +1.42164e-03 8.37167e-01 +1.42649e-03 8.36167e-01 +1.43134e-03 8.35177e-01 +1.43620e-03 8.34197e-01 +1.44105e-03 8.33232e-01 +1.44590e-03 8.32278e-01 +1.45075e-03 8.31336e-01 +1.45560e-03 8.30407e-01 +1.46046e-03 8.29489e-01 +1.46531e-03 8.28586e-01 +1.47016e-03 8.27696e-01 +1.47501e-03 8.26819e-01 +1.47986e-03 8.25955e-01 +1.48472e-03 8.25104e-01 +1.48957e-03 8.24269e-01 +1.49442e-03 8.23447e-01 +1.49927e-03 8.22640e-01 +1.50412e-03 8.21848e-01 +1.50898e-03 8.21069e-01 +1.51383e-03 8.20307e-01 +1.51868e-03 8.19559e-01 +1.52353e-03 8.18827e-01 +1.52838e-03 8.18103e-01 +1.53324e-03 8.17384e-01 +1.53809e-03 8.16674e-01 +1.54294e-03 8.15969e-01 +1.54779e-03 8.15271e-01 +1.55264e-03 8.14579e-01 +1.55750e-03 8.13892e-01 +1.56235e-03 8.13213e-01 +1.56720e-03 8.12540e-01 +1.57205e-03 8.11873e-01 +1.57690e-03 8.11211e-01 +1.58176e-03 8.10554e-01 +1.58661e-03 8.09905e-01 +1.59146e-03 8.09261e-01 +1.59631e-03 8.08623e-01 +1.60116e-03 8.07990e-01 +1.60602e-03 8.07362e-01 +1.61087e-03 8.06740e-01 +1.61572e-03 8.06124e-01 +1.62057e-03 8.05513e-01 +1.62542e-03 8.04907e-01 +1.63028e-03 8.04305e-01 +1.63513e-03 8.03710e-01 +1.63998e-03 8.03120e-01 +1.64483e-03 8.02534e-01 +1.64968e-03 8.01953e-01 +1.65454e-03 8.01376e-01 +1.65939e-03 8.00805e-01 +1.66424e-03 8.00238e-01 +1.66909e-03 7.99676e-01 +1.67394e-03 7.99119e-01 +1.67880e-03 7.98564e-01 +1.68365e-03 7.98016e-01 +1.68850e-03 7.97471e-01 +1.69335e-03 7.96931e-01 +1.69820e-03 7.96394e-01 +1.70306e-03 7.95861e-01 +1.70791e-03 7.95332e-01 +1.71276e-03 7.94808e-01 +1.71761e-03 7.94287e-01 +1.72246e-03 7.93770e-01 +1.72732e-03 7.93255e-01 +1.73217e-03 7.92745e-01 +1.73702e-03 7.92239e-01 +1.74187e-03 7.91736e-01 +1.74672e-03 7.91236e-01 +1.75158e-03 7.90738e-01 +1.75643e-03 7.90244e-01 +1.76128e-03 7.89754e-01 +1.76613e-03 7.89266e-01 +1.77098e-03 7.88782e-01 +1.77584e-03 7.88299e-01 +1.78069e-03 7.87820e-01 +1.78554e-03 7.87343e-01 +1.79039e-03 7.86869e-01 +1.79525e-03 7.86397e-01 +1.80010e-03 7.85927e-01 +1.80495e-03 7.85461e-01 +1.80980e-03 7.84996e-01 +1.81465e-03 7.84533e-01 +1.81951e-03 7.84072e-01 +1.82436e-03 7.83613e-01 +1.82921e-03 7.83157e-01 +1.83406e-03 7.82702e-01 +1.83891e-03 7.82249e-01 +1.84377e-03 7.81796e-01 +1.84862e-03 7.81346e-01 +1.85347e-03 7.80898e-01 +1.85832e-03 7.80451e-01 +1.86317e-03 7.80005e-01 +1.86803e-03 7.79559e-01 +1.87288e-03 7.79116e-01 +1.87773e-03 7.78673e-01 +1.88258e-03 7.78231e-01 +1.88743e-03 7.77790e-01 +1.89229e-03 7.77349e-01 +1.89714e-03 7.76910e-01 +1.90199e-03 7.76471e-01 +1.90684e-03 7.76033e-01 +1.91169e-03 7.75595e-01 +1.91655e-03 7.75156e-01 +1.92140e-03 7.74719e-01 +1.92625e-03 7.74281e-01 +1.93110e-03 7.73844e-01 +1.93595e-03 7.73407e-01 +1.94081e-03 7.72969e-01 +1.94566e-03 7.72531e-01 +1.95051e-03 7.72093e-01 +1.95536e-03 7.71655e-01 +1.96021e-03 7.71216e-01 +1.96507e-03 7.70775e-01 +1.96992e-03 7.70335e-01 +1.97477e-03 7.69894e-01 +1.97962e-03 7.69453e-01 +1.98447e-03 7.69010e-01 +1.98933e-03 7.68565e-01 +1.99418e-03 7.68120e-01 +1.99903e-03 7.67674e-01 +2.00388e-03 7.67227e-01 +2.00873e-03 7.66778e-01 +2.01359e-03 7.66327e-01 +2.01844e-03 7.65875e-01 +2.02329e-03 7.65421e-01 +2.02814e-03 7.64966e-01 +2.03299e-03 7.64508e-01 +2.03785e-03 7.64048e-01 +2.04270e-03 7.63587e-01 +2.04755e-03 7.63123e-01 +2.05240e-03 7.62658e-01 +2.05725e-03 7.62190e-01 +2.06211e-03 7.61718e-01 +2.06696e-03 7.61245e-01 +2.07181e-03 7.60769e-01 +2.07666e-03 7.60291e-01 +2.08151e-03 7.59810e-01 +2.08637e-03 7.59325e-01 +2.09122e-03 7.58837e-01 +2.09607e-03 7.58347e-01 +2.10092e-03 7.57854e-01 +2.10577e-03 7.57357e-01 +2.11063e-03 7.56855e-01 +2.11548e-03 7.56352e-01 +2.12033e-03 7.55844e-01 +2.12518e-03 7.55333e-01 +2.13003e-03 7.54818e-01 +2.13489e-03 7.54299e-01 +2.13974e-03 7.53776e-01 +2.14459e-03 7.53249e-01 +2.14944e-03 7.52718e-01 +2.15429e-03 7.52183e-01 +2.15915e-03 7.51642e-01 +2.16400e-03 7.51097e-01 +2.16885e-03 7.50548e-01 +2.17370e-03 7.49995e-01 +2.17855e-03 7.49436e-01 +2.18341e-03 7.48872e-01 +2.18826e-03 7.48303e-01 +2.19311e-03 7.47730e-01 +2.19796e-03 7.47151e-01 +2.20281e-03 7.46567e-01 +2.20767e-03 7.45977e-01 +2.21252e-03 7.45381e-01 +2.21737e-03 7.44781e-01 +2.22222e-03 7.44173e-01 +2.22707e-03 7.43549e-01 +2.23193e-03 7.42906e-01 +2.23678e-03 7.42246e-01 +2.24163e-03 7.41569e-01 +2.24648e-03 7.40876e-01 +2.25133e-03 7.40167e-01 +2.25619e-03 7.39441e-01 +2.26104e-03 7.38701e-01 +2.26589e-03 7.37947e-01 +2.27074e-03 7.37179e-01 +2.27559e-03 7.36398e-01 +2.28045e-03 7.35603e-01 +2.28530e-03 7.34797e-01 +2.29015e-03 7.33979e-01 +2.29500e-03 7.33150e-01 +2.29985e-03 7.32311e-01 +2.30471e-03 7.31460e-01 +2.30956e-03 7.30601e-01 +2.31441e-03 7.29733e-01 +2.31926e-03 7.28857e-01 +2.32411e-03 7.27974e-01 +2.32897e-03 7.27081e-01 +2.33382e-03 7.26183e-01 +2.33867e-03 7.25280e-01 +2.34352e-03 7.24371e-01 +2.34837e-03 7.23457e-01 +2.35323e-03 7.22537e-01 +2.35808e-03 7.21615e-01 +2.36293e-03 7.20690e-01 +2.36778e-03 7.19762e-01 +2.37263e-03 7.18832e-01 +2.37749e-03 7.17899e-01 +2.38234e-03 7.16967e-01 +2.38719e-03 7.16035e-01 +2.39204e-03 7.15103e-01 +2.39689e-03 7.14173e-01 +2.40175e-03 7.13242e-01 +2.40660e-03 7.12315e-01 +2.41145e-03 7.11391e-01 +2.41630e-03 7.10470e-01 +2.42115e-03 7.09554e-01 +2.42601e-03 7.08640e-01 +2.47453e-03 6.99919e-01 +2.52305e-03 6.92379e-01 +2.57157e-03 6.86688e-01 +2.62009e-03 6.83524e-01 +2.66861e-03 6.83660e-01 +2.71713e-03 6.87824e-01 +2.76565e-03 6.95342e-01 +2.81417e-03 7.05357e-01 +2.86269e-03 7.17026e-01 +2.91121e-03 7.29546e-01 +2.95973e-03 7.42159e-01 +3.00825e-03 7.56362e-01 +3.05677e-03 7.75136e-01 +3.10529e-03 7.96854e-01 +3.15381e-03 8.19914e-01 +3.20233e-03 8.42871e-01 +3.25085e-03 8.64432e-01 +3.29937e-03 8.83428e-01 +3.34789e-03 8.98771e-01 +3.39641e-03 9.10193e-01 +3.44493e-03 9.20448e-01 +3.49345e-03 9.29954e-01 +3.54197e-03 9.38779e-01 +3.59049e-03 9.46986e-01 +3.63901e-03 9.54638e-01 +3.68753e-03 9.61791e-01 +3.73605e-03 9.68502e-01 +3.78457e-03 9.74823e-01 +3.83309e-03 9.80805e-01 +3.88161e-03 9.86499e-01 +3.93013e-03 9.91952e-01 +3.97865e-03 9.97223e-01 +4.02717e-03 1.00258e+00 +4.07569e-03 1.00804e+00 +4.12421e-03 1.01353e+00 +4.17273e-03 1.01896e+00 +4.22125e-03 1.02426e+00 +4.26977e-03 1.02933e+00 +4.31829e-03 1.03411e+00 +4.36681e-03 1.03852e+00 +4.41533e-03 1.04247e+00 +4.46385e-03 1.04590e+00 +4.51237e-03 1.04873e+00 +4.56089e-03 1.05088e+00 +4.60941e-03 1.05229e+00 +4.65793e-03 1.05286e+00 +4.70645e-03 1.05133e+00 +4.75497e-03 1.04602e+00 +4.80349e-03 1.03749e+00 +4.85201e-03 1.02634e+00 +4.90053e-03 1.01315e+00 +4.94905e-03 9.98533e-01 +4.99757e-03 9.83136e-01 +5.04609e-03 9.67630e-01 +5.09461e-03 9.52734e-01 +5.14313e-03 9.39212e-01 +5.19165e-03 9.27867e-01 +5.24017e-03 9.19528e-01 +5.28869e-03 9.13083e-01 +5.33721e-03 9.07044e-01 +5.38574e-03 9.01379e-01 +5.43426e-03 8.96056e-01 +5.48278e-03 8.91041e-01 +5.53130e-03 8.86297e-01 +5.57982e-03 8.81790e-01 +5.62834e-03 8.77480e-01 +5.67686e-03 8.73331e-01 +5.72538e-03 8.69303e-01 +5.77390e-03 8.65356e-01 +5.82242e-03 8.61450e-01 +5.87094e-03 8.57543e-01 +5.91946e-03 8.53593e-01 +5.96798e-03 8.49558e-01 +6.01650e-03 8.45393e-01 +6.06502e-03 8.41054e-01 +6.11354e-03 8.36496e-01 +6.16206e-03 8.31533e-01 +6.21058e-03 8.26102e-01 +6.25910e-03 8.20306e-01 +6.30762e-03 8.14251e-01 +6.35614e-03 8.08045e-01 +6.40466e-03 8.01799e-01 +6.45318e-03 7.95628e-01 +6.50170e-03 7.89651e-01 +6.55022e-03 7.83991e-01 +6.59874e-03 7.78771e-01 +6.64726e-03 7.74121e-01 +6.69578e-03 7.70171e-01 +6.74430e-03 7.67051e-01 +6.79282e-03 7.64893e-01 +6.84134e-03 7.63824e-01 +6.88986e-03 7.65999e-01 +6.93838e-03 7.83632e-01 +6.98690e-03 8.25686e-01 +7.03542e-03 8.97379e-01 +7.08394e-03 1.00008e+00 +7.13246e-03 1.79047e+00 +7.18098e-03 2.15082e+00 +7.22950e-03 2.37657e+00 +7.27802e-03 2.37101e+00 +7.32654e-03 2.34496e+00 +7.37506e-03 2.30431e+00 +7.42358e-03 2.25239e+00 +7.47210e-03 2.15268e+00 +7.52062e-03 2.03720e+00 +7.56914e-03 1.97544e+00 +7.61766e-03 1.89913e+00 +7.66618e-03 1.77157e+00 +7.71470e-03 1.60143e+00 +7.76322e-03 1.36874e+00 +7.81174e-03 1.19684e+00 +7.86026e-03 1.06949e+00 +7.90878e-03 9.73669e-01 +7.95730e-03 9.35456e-01 +8.00582e-03 9.37365e-01 +8.05434e-03 9.42493e-01 +8.10286e-03 9.49784e-01 +8.15138e-03 9.58198e-01 +8.19990e-03 9.66722e-01 +8.24842e-03 9.74380e-01 +8.29694e-03 9.80221e-01 +8.34546e-03 9.84054e-01 +8.39398e-03 9.87119e-01 +8.44250e-03 9.89652e-01 +8.49102e-03 9.91842e-01 +8.53954e-03 9.93876e-01 +8.58806e-03 9.95939e-01 +8.63658e-03 9.98215e-01 +8.68510e-03 1.00089e+00 +8.73362e-03 1.00413e+00 +8.78214e-03 1.00813e+00 +8.83066e-03 1.01296e+00 +8.87918e-03 1.01872e+00 +8.92770e-03 1.02665e+00 +8.97623e-03 1.03810e+00 +9.02475e-03 1.05431e+00 +9.07327e-03 1.07641e+00 +9.12179e-03 1.15948e+00 +9.17031e-03 1.43548e+00 +9.21883e-03 1.62933e+00 +9.26735e-03 1.76777e+00 +9.31587e-03 2.00296e+00 +9.36439e-03 2.16927e+00 +9.41291e-03 2.27221e+00 +9.46143e-03 2.35084e+00 +9.50995e-03 2.39332e+00 +9.55847e-03 2.14403e+00 +9.60699e-03 2.08145e+00 +9.65551e-03 2.04627e+00 +9.70403e-03 1.84562e+00 +9.75255e-03 1.55579e+00 +9.80107e-03 1.41534e+00 +9.84959e-03 1.28570e+00 +9.89811e-03 1.26552e+00 +9.94663e-03 1.35482e+00 +9.99515e-03 1.47136e+00 +1.00437e-02 1.58580e+00 +1.00922e-02 1.69024e+00 +1.01407e-02 1.76238e+00 +1.01892e-02 1.83717e+00 +1.02377e-02 1.97452e+00 +1.02863e-02 2.06207e+00 +1.03348e-02 1.99714e+00 +1.03833e-02 1.89143e+00 +1.04318e-02 1.81739e+00 +1.04803e-02 1.75305e+00 +1.05289e-02 1.50299e+00 +1.05774e-02 1.39150e+00 +1.06259e-02 1.31429e+00 +1.06744e-02 1.19064e+00 +1.07230e-02 1.06422e+00 +1.07715e-02 1.01398e+00 +1.08200e-02 9.90777e-01 +1.08685e-02 9.72577e-01 +1.09170e-02 9.59728e-01 +1.09656e-02 9.52502e-01 +1.10141e-02 9.50966e-01 +1.10626e-02 9.52101e-01 +1.11111e-02 9.54755e-01 +1.11596e-02 9.58962e-01 +1.12082e-02 9.64765e-01 +1.12567e-02 9.72160e-01 +1.13052e-02 9.81167e-01 +1.13537e-02 9.91790e-01 +1.14022e-02 1.00402e+00 +1.14508e-02 1.02014e+00 +1.14993e-02 1.05850e+00 +1.15478e-02 1.13396e+00 +1.15963e-02 1.41247e+00 +1.16448e-02 1.49961e+00 +1.16934e-02 1.54824e+00 +1.17419e-02 1.57452e+00 +1.17904e-02 1.58379e+00 +1.18389e-02 1.55726e+00 +1.18874e-02 1.47409e+00 +1.19360e-02 1.37731e+00 +1.19845e-02 1.29981e+00 +1.20330e-02 1.22004e+00 +1.20815e-02 1.15125e+00 +1.21300e-02 1.10522e+00 +1.21786e-02 1.06626e+00 +1.22271e-02 1.03194e+00 +1.22756e-02 1.00133e+00 +1.23241e-02 9.73403e-01 +1.23726e-02 9.47009e-01 +1.24212e-02 9.20782e-01 +1.24697e-02 8.92264e-01 +1.25182e-02 8.61856e-01 +1.25667e-02 8.33503e-01 +1.26152e-02 8.11696e-01 +1.26638e-02 8.01293e-01 +1.27123e-02 8.02637e-01 +1.27608e-02 8.08652e-01 +1.28093e-02 8.18430e-01 +1.28578e-02 8.31231e-01 +1.29064e-02 8.46354e-01 +1.29549e-02 8.63030e-01 +1.30034e-02 8.80625e-01 +1.30519e-02 9.01049e-01 +1.31004e-02 9.31530e-01 +1.31490e-02 9.68544e-01 +1.31975e-02 1.00776e+00 +1.32460e-02 1.04565e+00 +1.32945e-02 1.07911e+00 +1.33430e-02 1.11298e+00 +1.33916e-02 1.14989e+00 +1.34401e-02 1.18218e+00 +1.34886e-02 1.20319e+00 +1.35371e-02 1.20561e+00 +1.35856e-02 1.17788e+00 +1.36342e-02 1.12725e+00 +1.36827e-02 1.06620e+00 +1.37312e-02 1.00920e+00 +1.37797e-02 9.63797e-01 +1.38282e-02 9.16017e-01 +1.38768e-02 8.74801e-01 +1.39253e-02 8.52632e-01 +1.39738e-02 8.41791e-01 +1.40223e-02 8.32110e-01 +1.40708e-02 8.23645e-01 +1.41194e-02 8.16438e-01 +1.41679e-02 8.13714e-01 +1.42164e-02 8.11005e-01 +1.42649e-02 8.08311e-01 +1.43134e-02 8.05632e-01 +1.43620e-02 8.02963e-01 +1.44105e-02 8.00314e-01 +1.44590e-02 7.97681e-01 +1.45075e-02 7.95062e-01 +1.45560e-02 7.92460e-01 +1.46046e-02 7.89865e-01 +1.46531e-02 7.87288e-01 +1.47016e-02 7.84723e-01 +1.47501e-02 7.82170e-01 +1.47986e-02 7.79631e-01 +1.48472e-02 7.77099e-01 +1.48957e-02 7.74585e-01 +1.49442e-02 7.72085e-01 +1.49927e-02 7.69599e-01 +1.50412e-02 7.67127e-01 +1.50898e-02 7.64663e-01 +1.51383e-02 7.62220e-01 +1.51868e-02 7.59791e-01 +1.52353e-02 7.57377e-01 +1.52838e-02 7.54978e-01 +1.53324e-02 7.52589e-01 +1.53809e-02 7.50221e-01 +1.54294e-02 7.47869e-01 +1.54779e-02 7.45533e-01 +1.55264e-02 7.43213e-01 +1.55750e-02 7.40905e-01 +1.56235e-02 7.38617e-01 +1.56720e-02 7.36344e-01 +1.57205e-02 7.34085e-01 +1.57690e-02 7.31840e-01 +1.58176e-02 7.29605e-01 +1.58661e-02 7.27388e-01 +1.59146e-02 7.25184e-01 +1.59631e-02 7.22993e-01 +1.60116e-02 7.20814e-01 +1.60602e-02 7.18643e-01 +1.61087e-02 7.16488e-01 +1.61572e-02 7.14344e-01 +1.62057e-02 7.12211e-01 +1.62542e-02 7.10089e-01 +1.63028e-02 7.07973e-01 +1.63513e-02 7.05872e-01 +1.63998e-02 7.03779e-01 +1.64483e-02 7.01697e-01 +1.64968e-02 6.99623e-01 +1.65454e-02 6.97558e-01 +1.65939e-02 6.95517e-01 +1.66424e-02 6.93492e-01 +1.66909e-02 6.91484e-01 +1.67394e-02 6.89492e-01 +1.67880e-02 6.87509e-01 +1.68365e-02 6.85543e-01 +1.68850e-02 6.83589e-01 +1.69335e-02 6.81645e-01 +1.69820e-02 6.79711e-01 +1.70306e-02 6.77781e-01 +1.70791e-02 6.75862e-01 +1.71276e-02 6.73953e-01 +1.71761e-02 6.72054e-01 +1.72246e-02 6.70168e-01 +1.72732e-02 6.68292e-01 +1.73217e-02 6.66435e-01 +1.73702e-02 6.64596e-01 +1.74187e-02 6.62776e-01 +1.74672e-02 6.60976e-01 +1.75158e-02 6.59187e-01 +1.75643e-02 6.57411e-01 +1.76128e-02 6.55644e-01 +1.76613e-02 6.53886e-01 +1.77098e-02 6.52137e-01 +1.77584e-02 6.50393e-01 +1.78069e-02 6.48663e-01 +1.78554e-02 6.46942e-01 +1.79039e-02 6.45231e-01 +1.79525e-02 6.43526e-01 +1.80010e-02 6.41834e-01 +1.80495e-02 6.40153e-01 +1.80980e-02 6.38482e-01 +1.81465e-02 6.36822e-01 +1.81951e-02 6.35168e-01 +1.82436e-02 6.33529e-01 +1.82921e-02 6.31901e-01 +1.83406e-02 6.30283e-01 +1.83891e-02 6.28677e-01 +1.84377e-02 6.27079e-01 +1.84862e-02 6.25494e-01 +1.85347e-02 6.23918e-01 +1.85832e-02 6.22351e-01 +1.86317e-02 6.20794e-01 +1.86803e-02 6.19242e-01 +1.87288e-02 6.17703e-01 +1.87773e-02 6.16173e-01 +1.88258e-02 6.14652e-01 +1.88743e-02 6.13140e-01 +1.89229e-02 6.11635e-01 +1.89714e-02 6.10142e-01 +1.90199e-02 6.08659e-01 +1.90684e-02 6.07185e-01 +1.91169e-02 6.05721e-01 +1.91655e-02 6.04263e-01 +1.92140e-02 6.02818e-01 +1.92625e-02 6.01383e-01 +1.93110e-02 5.99957e-01 +1.93595e-02 5.98542e-01 +1.94081e-02 5.97133e-01 +1.94566e-02 5.95736e-01 +1.95051e-02 5.94346e-01 +1.95536e-02 5.92965e-01 +1.96021e-02 5.91591e-01 +1.96507e-02 5.90222e-01 +1.96992e-02 5.88865e-01 +1.97477e-02 5.87515e-01 +1.97962e-02 5.86175e-01 +1.98447e-02 5.84843e-01 +1.98933e-02 5.83516e-01 +1.99418e-02 5.82202e-01 +1.99903e-02 5.80896e-01 +2.00388e-02 5.79600e-01 +2.00873e-02 5.78313e-01 +2.01359e-02 5.77032e-01 +2.01844e-02 5.75764e-01 +2.02329e-02 5.74505e-01 +2.02814e-02 5.73257e-01 +2.03299e-02 5.72018e-01 +2.03785e-02 5.70786e-01 +2.04270e-02 5.69568e-01 +2.04755e-02 5.68360e-01 +2.05240e-02 5.67161e-01 +2.05725e-02 5.65973e-01 +2.06211e-02 5.64791e-01 +2.06696e-02 5.63620e-01 +2.07181e-02 5.62458e-01 +2.07666e-02 5.61303e-01 +2.08151e-02 5.60156e-01 +2.08637e-02 5.59014e-01 +2.09122e-02 5.57881e-01 +2.09607e-02 5.56754e-01 +2.10092e-02 5.55633e-01 +2.10577e-02 5.54518e-01 +2.11063e-02 5.53406e-01 +2.11548e-02 5.52301e-01 +2.12033e-02 5.51200e-01 +2.12518e-02 5.50103e-01 +2.13003e-02 5.49009e-01 +2.13489e-02 5.47917e-01 +2.13974e-02 5.46832e-01 +2.14459e-02 5.45754e-01 +2.14944e-02 5.44685e-01 +2.15429e-02 5.43623e-01 +2.15915e-02 5.42567e-01 +2.16400e-02 5.41521e-01 +2.16885e-02 5.40484e-01 +2.17370e-02 5.39455e-01 +2.17855e-02 5.38435e-01 +2.18341e-02 5.37422e-01 +2.18826e-02 5.36419e-01 +2.19311e-02 5.35423e-01 +2.19796e-02 5.34436e-01 +2.20281e-02 5.33456e-01 +2.20767e-02 5.32482e-01 +2.21252e-02 5.31518e-01 +2.21737e-02 5.30562e-01 +2.22222e-02 5.29613e-01 +2.22707e-02 5.28673e-01 +2.23193e-02 5.27738e-01 +2.23678e-02 5.26811e-01 +2.24163e-02 5.25887e-01 +2.24648e-02 5.24968e-01 +2.25133e-02 5.24052e-01 +2.25619e-02 5.23139e-01 +2.26104e-02 5.22231e-01 +2.26589e-02 5.21328e-01 +2.27074e-02 5.20430e-01 +2.27559e-02 5.19536e-01 +2.28045e-02 5.18645e-01 +2.28530e-02 5.17761e-01 +2.29015e-02 5.16882e-01 +2.29500e-02 5.16008e-01 +2.29985e-02 5.15140e-01 +2.30471e-02 5.14275e-01 +2.30956e-02 5.13418e-01 +2.31441e-02 5.12567e-01 +2.31926e-02 5.11721e-01 +2.32411e-02 5.10882e-01 +2.32897e-02 5.10047e-01 +2.33382e-02 5.09218e-01 +2.33867e-02 5.08393e-01 +2.34352e-02 5.07570e-01 +2.34837e-02 5.06751e-01 +2.35323e-02 5.05934e-01 +2.35808e-02 5.05123e-01 +2.36293e-02 5.04317e-01 +2.36778e-02 5.03516e-01 +2.37263e-02 5.02719e-01 +2.37749e-02 5.01927e-01 +2.38234e-02 5.01143e-01 +2.38719e-02 5.00364e-01 +2.39204e-02 4.99592e-01 +2.39689e-02 4.98827e-01 +2.40175e-02 4.98068e-01 +2.40660e-02 4.97318e-01 +2.41145e-02 4.96576e-01 +2.41630e-02 4.95842e-01 +2.42115e-02 4.95117e-01 +2.42601e-02 4.94399e-01 +2.50000e-02 4.83868e-01 +2.60000e-02 4.70771e-01 +2.70000e-02 4.59137e-01 +2.80000e-02 4.48776e-01 +2.90000e-02 4.39406e-01 +3.00000e-02 4.30853e-01 +3.10000e-02 4.23009e-01 +3.20000e-02 4.15733e-01 +3.40000e-02 4.02598e-01 +3.60000e-02 3.90547e-01 +3.80000e-02 3.79145e-01 +4.00000e-02 3.68138e-01 +4.20000e-02 3.57554e-01 +4.40000e-02 3.47070e-01 +4.60000e-02 3.36608e-01 +4.80000e-02 3.26219e-01 +5.00000e-02 3.15871e-01 +5.25000e-02 3.03020e-01 +5.50000e-02 2.90336e-01 +5.75000e-02 2.77819e-01 +6.00000e-02 2.65510e-01 +6.25000e-02 2.53421e-01 +6.50000e-02 2.41622e-01 +6.75000e-02 2.30157e-01 +7.00000e-02 2.19225e-01 +7.25000e-02 2.08709e-01 +7.50000e-02 1.98483e-01 +8.00000e-02 1.79244e-01 +8.50000e-02 1.61629e-01 +9.00000e-02 1.45697e-01 +1.00000e-01 1.18457e-01 +1.05000e-01 1.06710e-01 +1.10000e-01 9.63044e-02 +1.15000e-01 8.69740e-02 +1.20000e-01 7.85732e-02 +1.25000e-01 7.10760e-02 +1.30000e-01 6.44358e-02 +1.35000e-01 5.84141e-02 +1.40000e-01 5.30354e-02 +1.45000e-01 4.82328e-02 +1.50000e-01 4.39842e-02 +1.55000e-01 4.01093e-02 +1.60000e-01 3.65878e-02 +1.65000e-01 3.34383e-02 +1.70000e-01 3.06000e-02 +1.75000e-01 2.80593e-02 +1.80000e-01 2.58165e-02 +1.85000e-01 2.37432e-02 +1.90000e-01 2.18277e-02 +1.95000e-01 2.01335e-02 +2.00000e-01 1.85701e-02 +2.10000e-01 1.59060e-02 +2.20000e-01 1.36416e-02 +2.30000e-01 1.17698e-02 +2.40000e-01 1.01937e-02 +2.50000e-01 8.87883e-03 +2.60000e-01 7.75448e-03 +2.70000e-01 6.79864e-03 +2.80000e-01 5.97858e-03 +2.90000e-01 5.27684e-03 +3.00000e-01 4.67359e-03 +3.10000e-01 4.15812e-03 +3.20000e-01 3.70471e-03 +3.30000e-01 3.31285e-03 +3.40000e-01 2.97041e-03 +3.50000e-01 2.66862e-03 +3.60000e-01 2.40659e-03 +3.70000e-01 2.17405e-03 +3.80000e-01 1.96573e-03 +3.90000e-01 1.78775e-03 +4.00000e-01 1.62981e-03 +4.10000e-01 1.48515e-03 +4.20000e-01 1.35419e-03 +4.40000e-01 1.13479e-03 +4.60000e-01 9.58572e-04 +4.80000e-01 8.14595e-04 +5.00000e-01 6.97407e-04 +5.20000e-01 5.99610e-04 +5.40000e-01 5.18710e-04 +5.60000e-01 4.49603e-04 +5.80000e-01 3.93143e-04 +6.00000e-01 3.47332e-04 +6.25000e-01 2.96685e-04 +6.75000e-01 2.18320e-04 +7.00000e-01 1.89817e-04 +7.25000e-01 1.65402e-04 +7.50000e-01 1.44679e-04 +7.75000e-01 1.27305e-04 +8.00000e-01 1.12543e-04 +8.25000e-01 9.96884e-05 +8.50000e-01 8.85913e-05 +9.00000e-01 7.08577e-05 +9.50000e-01 5.72254e-05 +1.00000e+00 4.67732e-05 +1.05000e+00 3.85331e-05 +1.10000e+00 3.22564e-05 +1.15000e+00 2.70342e-05 +1.20000e+00 2.27923e-05 +1.25000e+00 1.94248e-05 +1.30000e+00 1.66236e-05 +1.35000e+00 1.43183e-05 +1.40000e+00 1.24079e-05 +1.45000e+00 1.07841e-05 +1.50000e+00 9.44271e-06 +1.55000e+00 8.31887e-06 +1.60000e+00 7.32829e-06 +1.65000e+00 6.47484e-06 +1.70000e+00 5.76281e-06 +1.75000e+00 5.15369e-06 +1.80000e+00 4.61010e-06 +1.85000e+00 4.13000e-06 +1.90000e+00 3.71131e-06 +1.95000e+00 3.35162e-06 +2.00000e+00 3.03483e-06 +2.10000e+00 2.49988e-06 +2.20000e+00 2.08106e-06 +2.30000e+00 1.73119e-06 +2.40000e+00 1.46468e-06 +2.50000e+00 1.28915e-06 +2.60000e+00 1.13089e-06 +2.70000e+00 9.86029e-07 +2.80000e+00 8.54899e-07 +2.90000e+00 7.37824e-07 +3.00000e+00 6.35132e-07 +3.10000e+00 5.47149e-07 +3.20000e+00 4.74203e-07 +3.30000e+00 4.16620e-07 +3.40000e+00 3.74720e-07 +3.50000e+00 3.41058e-07 +3.60000e+00 3.09057e-07 +3.70000e+00 2.78824e-07 +3.80000e+00 2.50466e-07 +3.90000e+00 2.24090e-07 +4.00000e+00 1.99803e-07 +4.10000e+00 1.77712e-07 +4.20000e+00 1.57925e-07 +4.30000e+00 1.40548e-07 +4.60000e+00 1.03954e-07 +4.80000e+00 9.35740e-08 +5.00000e+00 9.19485e-08 +5.20000e+00 9.07511e-08 +5.40000e+00 8.95641e-08 +5.60000e+00 8.83875e-08 +5.80000e+00 8.72213e-08 +6.00000e+00 8.60653e-08 +6.50000e+00 8.32200e-08 +7.00000e+00 8.04379e-08 +7.25000e+00 7.90703e-08 +7.50000e+00 7.77183e-08 +7.75000e+00 7.63818e-08 +8.00000e+00 7.50606e-08 +8.25000e+00 7.37547e-08 +8.50000e+00 7.24639e-08 +8.75000e+00 7.11883e-08 +9.00000e+00 6.99277e-08 +9.50000e+00 6.74512e-08 +1.00000e+01 6.50336e-08 +1.25000e+01 5.38058e-08 +1.50000e+01 4.39464e-08 +1.75000e+01 3.53668e-08 +2.00000e+01 2.79787e-08 +2.25000e+01 2.16934e-08 +2.50000e+01 1.64224e-08 +2.75000e+01 1.20773e-08 +3.00000e+01 8.56951e-09 +3.50000e+01 3.71189e-09 +4.00000e+01 1.14147e-09 +4.50000e+01 1.50177e-10 +5.00000e+01 1.66704e-11 +5.50000e+01 1.66652e-11 +6.00000e+01 1.66600e-11 +7.00000e+01 1.66497e-11 +8.00000e+01 1.66394e-11 +9.00000e+01 1.66291e-11 +1.00000e+02 1.66189e-11 +1.50000e+02 1.65675e-11 +3.00000e+02 1.64140e-11 +4.50000e+02 1.62614e-11 +6.00000e+02 1.61098e-11 +1.00000e+03 1.57101e-11 +3.00000e+03 1.38105e-11 +1.00000e+04 8.37314e-12 +3.00000e+04 9.33998e-13 +1.00000e+05 8.27005e-21 +3.00000e+05 8.16810e-21 +1.00000e+06 7.81786e-21 +3.00000e+06 6.87264e-21 +1.00000e+07 4.16704e-21 +3.00000e+07 4.65007e-22 +1.00000e+08 4.65007e-23 diff --git a/examples/extended/exoticphysics/saxs/saxs.cc b/examples/extended/exoticphysics/saxs/saxs.cc new file mode 100644 index 0000000000..9322b3bff6 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/saxs.cc @@ -0,0 +1,120 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "G4RunManagerFactory.hh" + +#include "G4UImanager.hh" + +#include "SAXSDetectorConstruction.hh" +#include "SAXSPhysicsList.hh" +#include "SAXSActionInitialization.hh" +#include "SAXSRunAction.hh" +#include "SAXSEventAction.hh" +#include "SAXSSteppingAction.hh" +#include "SAXSAnalysis.hh" + +#include "G4VisExecutive.hh" +#include "G4UIExecutive.hh" +#include "G4Timer.hh" + +#include "Randomize.hh" +#include + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +int main(int argc,char** argv) +{ + + G4Timer* theTimer = new G4Timer(); + theTimer->Start(); + + //Choose the Random engine and reset the seed (before the RunManager) + G4Random::setTheEngine(new CLHEP::RanecuEngine); + G4int seed = time(0); + G4cout << "Random seed: " << seed << G4endl; + CLHEP::HepRandom::setTheSeed(seed); + + //Construct the run manager + auto* runManager = G4RunManagerFactory::CreateRunManager(); + int vNumberOfThreads = 2; + if (argc>2) { + vNumberOfThreads = atoi(argv[2]); + } + if (vNumberOfThreads > 0) { + runManager->SetNumberOfThreads(vNumberOfThreads); + } + + //Set mandatory initialization classes + runManager->SetUserInitialization(new SAXSDetectorConstruction); + runManager->SetUserInitialization(new SAXSPhysicsList()); + + //Set user action classes + runManager->SetUserInitialization(new SAXSActionInitialization()); + + //Get the pointer to the User Interface manager + G4UImanager* UImanager = G4UImanager::GetUIpointer(); + + //No arguments: set the batch mode + if (argc!=1) { + //Batch mode + G4String command = "/control/execute "; + G4String fileName = argv[1]; + UImanager->ApplyCommand(command+fileName); + } else { + //Visualization manager + G4VisManager* visManager = new G4VisExecutive; + visManager->Initialize(); + + //Define UI session for interactive mode + G4UIExecutive* ui = new G4UIExecutive(argc,argv); + UImanager->ApplyCommand("/control/execute init_vis.mac"); + if (ui->IsGUI()) + UImanager->ApplyCommand("/control/execute gui.mac"); + ui->SessionStart(); + + delete ui; + delete visManager; + } + + //Job termination + delete runManager; + + G4AnalysisManager* man = G4AnalysisManager::Instance(); + man->CloseFile(); + + theTimer->Stop(); + G4cout << "Execution terminated" << G4endl; + G4cout << (*theTimer) << G4endl; + delete theTimer; + + return 0; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo..... + diff --git a/examples/extended/exoticphysics/saxs/saxs.in b/examples/extended/exoticphysics/saxs/saxs.in new file mode 100644 index 0000000000..306f47f5c3 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/saxs.in @@ -0,0 +1,51 @@ +#Medical material (MedMat) definition +/det/setComp0 0.80 #Comp0->Fat +/det/setComp1 0.20 #Comp1->Water +/det/setComp2 0.00 #Comp2->Collagen (BM) +/det/setComp3 0.00 #Comp3->Mineral (HA) + +#Custom Material (CustomMat) definition +/det/setCustomMatDensity 1.72 #[g/mol] +/det/setCustomMatHmassfract 0.0504 +/det/setCustomMatNmassfract 0.3500 +/det/setCustomMatOmassfract 0.5996 +/det/SetCustomMatFF myFF.dat #NH4NO3 + +/det/setPhantomMaterial 2 #see the list below +/det/setPhantomDiameter 10. mm +/det/setPhantomHeight 10. mm +/det/setPhantomZ 500. mm #default is 0 + +/det/setDetectorSize 400. mm +/det/setDetectorThickness 20. mm +/det/setDetectorSampleDistance 400. mm + +/phys/SelectPhysicsList penelopeMI #To activate MI effect, set "penelopeMI" + +/run/setCut .1 mm + +/run/verbose 1 + +/run/initialize + +/run/setfilenamesave output #output filename (without extention) + +#source +/gps/pos/type Plane +/gps/pos/shape Circle +/gps/pos/radius 1. mm +/gps/pos/centre 0. 0. 0. mm +/gps/direction 0 0 1 +/gps/particle gamma +/gps/ene/type Mono +/gps/ene/mono 20. keV + +/run/printProgress 100000 +/run/beamOn 1000000 + +#materials for the Phantom: +#1->Water, 2->MedMat, 3->PMMA, 4->Adipose, 5->Glandular, 6->Breast5050, 7->carcinoma, +#8->kidney, 9->liver, 10->Fat, 11->BoneMatrix, 12->Mineral, 13->Bone, 14->fatLowX, +#15->bonematrixLowX, 16->dryBoneLowX, 17->Lexan, 18->Kapton, 19->Nylon, +#20->Polyethylene, 21->Polystyrene, 22->Formaline, 23->Acetone, 24->Hperoxide +#25->CIRS3070, 26->CIRS5050, 27->CIRS7030, 28->RMI454, 29->Air, 30->CustomMat diff --git a/examples/extended/exoticphysics/saxs/saxs_slits.in b/examples/extended/exoticphysics/saxs/saxs_slits.in new file mode 100644 index 0000000000..94635a31b0 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/saxs_slits.in @@ -0,0 +1,72 @@ +#Medical material (MedMat) definition +/det/setComp0 0.80 #Comp0->Fat +/det/setComp1 0.20 #Comp1->Water +/det/setComp2 0.00 #Comp2->Collagen (BM) +/det/setComp3 0.00 #Comp3->Mineral (HA) + +#Custom Material (CustomMat) definition +/det/setCustomMatDensity 1.72 #[g/mol] +/det/setCustomMatHmassfract 0.0504 +/det/setCustomMatNmassfract 0.3500 +/det/setCustomMatOmassfract 0.5996 +/det/SetCustomMatFF myFF.dat #NH4NO3 + +/det/setPhantomMaterial 30 #see the list below +/det/setPhantomDiameter 10. mm +/det/setPhantomHeight 10. mm +/det/setPhantomZ 500. mm #default is 0 + +/det/setThetaSetup 0.192 #[rad] (default is 0) + +/det/setSlits true #default is false +/det/setSlit1Thickness 5. mm +/det/setSlit2Thickness 5. mm +/det/setSlit3Thickness 5. mm +/det/setSlit4Thickness 5. mm +/det/setSlit1SampleDistance 350. mm +/det/setSlit2SampleDistance 50. mm +/det/setSlit3SampleDistance 50. mm +/det/setSlit4SampleDistance 450. mm +/det/setSlit1xAperture 4. mm +/det/setSlit2xAperture 4. mm +/det/setSlit3xAperture 4. mm +/det/setSlit4xAperture 4. mm +/det/setSlit1yAperture 4. mm +/det/setSlit2yAperture 4. mm +/det/setSlit3yAperture 4. mm +/det/setSlit4yAperture 4. mm + +/det/setDetectorSize 50. mm +/det/setDetectorThickness 20. mm +/det/setDetectorSampleDistance 500. mm + +/phys/SelectPhysicsList penelopeMI #To activate MI effect, set "penelopeMI" + +/run/setCut .1 mm + +/run/verbose 1 + +/run/initialize + +/run/setfilenamesave output #output filename (without extention) + +#source +/gps/pos/type Plane +/gps/pos/shape Circle +/gps/pos/radius 2. mm +/gps/pos/centre 0. 0. 0. mm +/gps/direction 0 0 1 +/gps/particle gamma +/gps/ene/type Mono +/gps/ene/mono 20. keV + +/run/printProgress 100000 +/run/beamOn 1000000 + +#materials for the Phantom: +#1->Water, 2->MedMat, 3->PMMA, 4->Adipose, 5->Glandular, 6->Breast5050, 7->carcinoma, +#8->kidney, 9->liver, 10->Fat, 11->BoneMatrix, 12->Mineral, 13->Bone, 14->fatLowX, +#15->bonematrixLowX, 16->dryBoneLowX, 17->Lexan, 18->Kapton, 19->Nylon, +#20->Polyethylene, 21->Polystyrene, 22->Formaline, 23->Acetone, 24->Hperoxide +#25->CIRS3070, 26->CIRS5050, 27->CIRS7030, 28->RMI454, 29->Air, 30->CustomMat + diff --git a/examples/extended/exoticphysics/saxs/scattAnalysis.C b/examples/extended/exoticphysics/saxs/scattAnalysis.C new file mode 100644 index 0000000000..93ac50bb94 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/scattAnalysis.C @@ -0,0 +1,187 @@ + +#include "TFile.h" +#include "TTree.h" +#include "TH1D.h" +#include "TH2D.h" +#include "TH1I.h" +#include "TF1.h" +#include "TProfile2D.h" +#include "TGraph.h" +#include "TGraph2D.h" +#include "TGraphErrors.h" +#include "TGaxis.h" +#include "TAxis.h" +#include "TMath.h" +#include "TRandom3.h" +#include "TCanvas.h" +#include "TLegend.h" +#include +#include +#include +#include "string.h" +#include + +#define pi 3.1415926535 + +using namespace std; + +void scattAnalysis() +{ + gROOT->Reset(); + + //----------------------------------input-------------------------------- + //open a simulation result file + TFile* file = TFile::Open("output.root"); + + //scattering histogram parameters + Double_t thetalimit = 0.5; //deg + Double_t Nbin = 120.; + Double_t thetaMin = 0.; //deg + Double_t thetaMax = 30.; //deg + + //options + Bool_t IwantTotalScatterig = false; + Bool_t IWantPlotComptonScattering = false; + Bool_t IWantPlotPlotComparison = false; + Bool_t IWantPlotProcessDistrib = false; + + //export + Bool_t IwantExportScattDistrib = false; + Char_t ExportFileName[128]; + sprintf(ExportFileName,"SimResults.txt"); + //----------------------------------------------------------------------- + + //definitions + Char_t cutproc[256]; + Double_t val, angle; + + //cut definition + if (IwantTotalScatterig) { + sprintf(cutproc,"(processID == 1 || processID == 2)"); + } else { + sprintf(cutproc,"processID == 1"); + } + + //define a tree from the ntuple contained in the input file + TTree* scatt = (TTree*)file->Get("scatt"); + Int_t N = scatt->GetEntries(); + + //Rayleigh/Total scattering + TH1D* thetaDistr = new TH1D("thetaDistr", "", Nbin, thetaMin, thetaMax); + scatt->Project("thetaDistr", "theta", cutproc); + + Double_t Norig = thetaDistr->Integral(); + + for (Int_t i=1; i<=Nbin; i++) { + angle = thetaDistr->GetBinCenter(i); + if (angle >= thetalimit) { + val = thetaDistr->GetBinContent(i); + thetaDistr->SetBinContent(i,val/TMath::Sin(angle*pi/180)); + } + } + + Double_t Ndiv = thetaDistr->Integral(); + thetaDistr->Scale(Norig/Ndiv); + + cout << endl << "Scattering events: " << thetaDistr->Integral() << endl << endl; + + thetaDistr->SetLineColor(kRed); + thetaDistr->SetLineWidth(2); + thetaDistr->SetXTitle("#theta (deg)"); + thetaDistr->GetXaxis()->CenterTitle(); + thetaDistr->GetXaxis()->SetTitleOffset(1.1); + thetaDistr->GetXaxis()->SetRangeUser(0., thetaMax); + thetaDistr->SetYTitle("Counts (a.u.)"); + thetaDistr->GetYaxis()->CenterTitle(); + thetaDistr->GetYaxis()->SetTitleOffset(1.5); + thetaDistr->SetTitle(""); + TCanvas* c1 = new TCanvas("c1","",1200,800); + c1->cd(); + gStyle->SetOptStat(kFALSE); + thetaDistr->Draw("HIST"); + + + //Compton scattering + if (IWantPlotComptonScattering) { + TH1D* thetaDistrCompt = new TH1D("thetaDistrCompt", "", Nbin, thetaMin, thetaMax); + scatt->Project("thetaDistrCompt", "theta", "processID == 2"); + + Double_t NorigC = thetaDistrCompt->Integral(); + + for (Int_t i=1; i<=Nbin; i++) { + angle = thetaDistrCompt->GetBinCenter(i); + if (angle >= thetalimit) { + val = thetaDistrCompt->GetBinContent(i); + thetaDistrCompt->SetBinContent(i,val/TMath::Sin(angle*pi/180)); + } + } + + Double_t NdivC = thetaDistrCompt->Integral(); + thetaDistrCompt->Scale(NorigC/NdivC); + + thetaDistrCompt->SetLineColor(kBlue); + thetaDistrCompt->SetLineWidth(2); + + if (IWantPlotPlotComparison) { + thetaDistrCompt->Draw("HIST SAME"); + TLegend* leg = new TLegend(0.7,0.75,0.85,0.85); + leg->SetBorderSize(0); + leg->AddEntry(thetaDistr,"Rayleigh","lp"); + leg->AddEntry(thetaDistrCompt,"Compton","lp"); + leg->Draw(); + } else { + thetaDistrCompt->SetXTitle("#theta (deg)"); + thetaDistrCompt->GetXaxis()->CenterTitle(); + thetaDistrCompt->GetXaxis()->SetTitleOffset(1.1); + thetaDistrCompt->GetXaxis()->SetRangeUser(0., thetaMax); + thetaDistr->SetYTitle("Counts (a.u.)"); + thetaDistrCompt->GetYaxis()->CenterTitle(); + thetaDistrCompt->GetYaxis()->SetTitleOffset(1.5); + thetaDistrCompt->SetTitle(""); + TCanvas* c2 = new TCanvas("c2","",1200,800); + c2->cd(); + thetaDistrCompt->Draw("HIST SAME"); + } + + } + + + //process distribution (0->transport, 1->Rayleigh, 2->Compton, 3->Photoel, + // 4->Pair prod, 5->Nuclear, 6->Diffraction) + if (IWantPlotProcessDistrib) { + TH1D* procDistr = new TH1D("procDistr", "process distribution", 70, 0, 7); + scatt->Project("procDistr", "processID"); + procDistr->SetLineColor(kBlack); + procDistr->SetLineWidth(2); + procDistr->SetXTitle("process"); + procDistr->GetXaxis()->CenterTitle(); + procDistr->GetXaxis()->SetTitleOffset(1.1); + procDistr->SetYTitle("Counts"); + procDistr->GetYaxis()->CenterTitle(); + procDistr->GetYaxis()->SetTitleOffset(1.2); + TCanvas* c3 = new TCanvas("c3","",1200,800); + c3->cd(); + procDistr->Draw(); + } + + + //export scattering data + if (IwantExportScattDistrib) { + ofstream f(ExportFileName); + if (!f) { + cout << "Error opening the file!"; + return; + } + for (Int_t i=1; i<=Nbin; i++) { + angle = thetaDistr->GetBinCenter(i); + if (angle >= thetalimit) { + val = thetaDistr->GetBinContent(i); + f << angle << " " << val << endl; + } + } + f.close(); + cout << "writing successful!" << endl << endl; + } + +} + diff --git a/examples/extended/exoticphysics/saxs/src/G4EmPenelopePhysicsMI.cc b/examples/extended/exoticphysics/saxs/src/G4EmPenelopePhysicsMI.cc new file mode 100644 index 0000000000..3f24493d18 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/G4EmPenelopePhysicsMI.cc @@ -0,0 +1,455 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// $Id: G4EmPenelopePhysicsMI.cc 109526 2018-04-30 07:11:52Z gcosmo $ +// customized by gpaterno for MI in Rayleigh Scattering, March 2019 +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "G4EmPenelopePhysicsMI.hh" +#include "G4ParticleDefinition.hh" +#include "G4SystemOfUnits.hh" +#include "G4ParticleTable.hh" + +//Processes and models +//gamma +#include "G4PhotoElectricEffect.hh" +#include "G4PenelopePhotoElectricModel.hh" + +#include "G4ComptonScattering.hh" +#include "G4PenelopeComptonModel.hh" + +#include "G4GammaConversion.hh" +#include "G4PenelopeGammaConversionModel.hh" + +#include "G4RayleighScattering.hh" +#include "G4PenelopeRayleighModel.hh" +#include "G4PenelopeRayleighModelMI.hh" + +//e- and e+ +#include "G4eMultipleScattering.hh" +#include "G4UniversalFluctuation.hh" + +#include "G4eIonisation.hh" +#include "G4PenelopeIonisationModel.hh" + +#include "G4eBremsstrahlung.hh" +#include "G4PenelopeBremsstrahlungModel.hh" + +//e+ only +#include "G4eplusAnnihilation.hh" +#include "G4PenelopeAnnihilationModel.hh" + +//mu +#include "G4MuMultipleScattering.hh" +#include "G4MuIonisation.hh" +#include "G4MuBremsstrahlung.hh" +#include "G4MuPairProduction.hh" + +#include "G4MuBremsstrahlungModel.hh" +#include "G4MuPairProductionModel.hh" +#include "G4hBremsstrahlungModel.hh" +#include "G4hPairProductionModel.hh" + +//hadrons +#include "G4hMultipleScattering.hh" +#include "G4MscStepLimitType.hh" + +#include "G4hBremsstrahlung.hh" +#include "G4hPairProduction.hh" + +#include "G4hIonisation.hh" +#include "G4ionIonisation.hh" +#include "G4alphaIonisation.hh" +#include "G4IonParametrisedLossModel.hh" +#include "G4NuclearStopping.hh" + +//msc models +#include "G4UrbanMscModel.hh" +#include "G4GoudsmitSaundersonMscModel.hh" +#include "G4WentzelVIModel.hh" +#include "G4CoulombScattering.hh" +#include "G4eCoulombScatteringModel.hh" + +#include "G4LossTableManager.hh" +#include "G4VAtomDeexcitation.hh" +#include "G4UAtomicDeexcitation.hh" + +//particles +#include "G4Gamma.hh" +#include "G4Electron.hh" +#include "G4Positron.hh" +#include "G4MuonPlus.hh" +#include "G4MuonMinus.hh" +#include "G4PionPlus.hh" +#include "G4PionMinus.hh" +#include "G4KaonPlus.hh" +#include "G4KaonMinus.hh" +#include "G4Proton.hh" +#include "G4AntiProton.hh" +#include "G4Deuteron.hh" +#include "G4Triton.hh" +#include "G4He3.hh" +#include "G4Alpha.hh" +#include "G4GenericIon.hh" + +#include "G4PhysicsListHelper.hh" +#include "G4BuilderType.hh" +#include "G4EmModelActivator.hh" + +//factory +#include "G4PhysicsConstructorFactory.hh" + +G4_DECLARE_PHYSCONSTR_FACTORY(G4EmPenelopePhysicsMI); + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4EmPenelopePhysicsMI::G4EmPenelopePhysicsMI(G4int ver, const G4String&, + G4bool UseMIFlag): + G4VPhysicsConstructor("G4EmPenelopeMI"), fVerbose(ver),fUseMIFlag(UseMIFlag) +{ + G4EmParameters* param = G4EmParameters::Instance(); + param->SetDefaults(); + param->SetVerbose(fVerbose); + param->SetMinEnergy(100*eV); + param->SetLowestElectronEnergy(100*eV); + param->SetNumberOfBinsPerDecade(20); + param->SetMscRangeFactor(0.02); + param->SetMscStepLimitType(fUseDistanceToBoundary); + param->SetMuHadLateralDisplacement(true); + param->SetFluo(true); + param->SetPIXEElectronCrossSectionModel("Penelope"); + SetPhysicsType(bElectromagnetic); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4EmPenelopePhysicsMI::~G4EmPenelopePhysicsMI() +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void G4EmPenelopePhysicsMI::ConstructParticle() +{ + //gamma + G4Gamma::Gamma(); + + //leptons + G4Electron::Electron(); + G4Positron::Positron(); + G4MuonPlus::MuonPlus(); + G4MuonMinus::MuonMinus(); + + //mesons + G4PionPlus::PionPlusDefinition(); + G4PionMinus::PionMinusDefinition(); + G4KaonPlus::KaonPlusDefinition(); + G4KaonMinus::KaonMinusDefinition(); + + //baryons + G4Proton::Proton(); + G4AntiProton::AntiProton(); + + //ions + G4Deuteron::Deuteron(); + G4Triton::Triton(); + G4He3::He3(); + G4Alpha::Alpha(); + G4GenericIon::GenericIonDefinition(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void G4EmPenelopePhysicsMI::ConstructProcess() +{ + if(fVerbose > 1) { + G4cout << "### " << GetPhysicsName() << " Construct Processes " << G4endl; + } + + G4PhysicsListHelper* ph = G4PhysicsListHelper::GetPhysicsListHelper(); + + //muon & hadron bremsstrahlung and pair production + G4MuBremsstrahlung* mub = new G4MuBremsstrahlung(); + G4MuPairProduction* mup = new G4MuPairProduction(); + G4hBremsstrahlung* pib = new G4hBremsstrahlung(); + G4hPairProduction* pip = new G4hPairProduction(); + G4hBremsstrahlung* kb = new G4hBremsstrahlung(); + G4hPairProduction* kp = new G4hPairProduction(); + G4hBremsstrahlung* pb = new G4hBremsstrahlung(); + G4hPairProduction* pp = new G4hPairProduction(); + + //muon & hadron multiple scattering + G4MuMultipleScattering* mumsc = new G4MuMultipleScattering(); + mumsc->SetEmModel(new G4WentzelVIModel()); + G4hMultipleScattering* hmsc = new G4hMultipleScattering("ionmsc"); + + //high energy limit for e+- scattering models + G4double highEnergyLimit = G4EmParameters::Instance()->MscEnergyLimit(); + + //nuclear stopping + G4NuclearStopping* pnuc = new G4NuclearStopping(); + + //Applicability range for Penelope models + //for higher energies, the Standard models are used + G4double PenelopeHighEnergyLimit = 1.0*GeV; + + //Add Penelope EM Processes + G4ParticleTable* table = G4ParticleTable::GetParticleTable(); + for (const auto& particleName : fPartList.PartNames()) { + G4ParticleDefinition* particle = table->FindParticle(particleName); + if (!particle) { continue; } + if (particleName == "gamma") { + + //Photo-electric effect + G4PhotoElectricEffect* thePhotoElectricEffect = new G4PhotoElectricEffect(); + G4PenelopePhotoElectricModel* thePEPenelopeModel = new + G4PenelopePhotoElectricModel(); + thePEPenelopeModel->SetHighEnergyLimit(PenelopeHighEnergyLimit); + thePhotoElectricEffect->SetEmModel(thePEPenelopeModel); + ph->RegisterProcess(thePhotoElectricEffect, particle); + + //Compton scattering + G4ComptonScattering* theComptonScattering = new G4ComptonScattering(); + G4PenelopeComptonModel* theComptonPenelopeModel = + new G4PenelopeComptonModel(); + theComptonPenelopeModel->SetHighEnergyLimit(PenelopeHighEnergyLimit); + theComptonScattering->SetEmModel(theComptonPenelopeModel); + ph->RegisterProcess(theComptonScattering, particle); + + //Gamma conversion + G4GammaConversion* theGammaConversion = new G4GammaConversion(); + G4PenelopeGammaConversionModel* theGCPenelopeModel = + new G4PenelopeGammaConversionModel(); + theGammaConversion->SetEmModel(theGCPenelopeModel); + ph->RegisterProcess(theGammaConversion, particle); + + //Rayleigh scattering (modified by gpaterno) + G4RayleighScattering* theRayleigh = new G4RayleighScattering(); + G4PenelopeRayleighModelMI* theRayleighPenelopeModel = + new G4PenelopeRayleighModelMI(); + theRayleighPenelopeModel->SetVerbosityLevel(1); + theRayleighPenelopeModel->SetMIActive(fUseMIFlag); + //theRayleighPenelopeModel->SetHighEnergyLimit(PenelopeHighEnergyLimit); + theRayleigh->SetEmModel(theRayleighPenelopeModel); + ph->RegisterProcess(theRayleigh, particle); + + } else if (particleName == "e-") { + + //multiple scattering + G4eMultipleScattering* msc = new G4eMultipleScattering; + G4UrbanMscModel* msc1 = new G4UrbanMscModel(); + G4WentzelVIModel* msc2 = new G4WentzelVIModel(); + msc1->SetHighEnergyLimit(highEnergyLimit); + msc2->SetLowEnergyLimit(highEnergyLimit); + msc->SetEmModel(msc1); + msc->SetEmModel(msc2); + + G4eCoulombScatteringModel* ssm = new G4eCoulombScatteringModel(); + G4CoulombScattering* ss = new G4CoulombScattering(); + ss->SetEmModel(ssm); + ss->SetMinKinEnergy(highEnergyLimit); + ssm->SetLowEnergyLimit(highEnergyLimit); + ssm->SetActivationLowEnergyLimit(highEnergyLimit); + + //Ionisation + G4eIonisation* eIoni = new G4eIonisation(); + G4PenelopeIonisationModel* theIoniPenelope = + new G4PenelopeIonisationModel(); + theIoniPenelope->SetHighEnergyLimit(PenelopeHighEnergyLimit); + eIoni->AddEmModel(0,theIoniPenelope,new G4UniversalFluctuation()); + eIoni->SetStepFunction(0.2, 100*um); // + + //Bremsstrahlung + G4eBremsstrahlung* eBrem = new G4eBremsstrahlung(); + G4PenelopeBremsstrahlungModel* theBremPenelope = + new G4PenelopeBremsstrahlungModel(); + theBremPenelope->SetHighEnergyLimit(PenelopeHighEnergyLimit); + eBrem->SetEmModel(theBremPenelope); + + //register processes + ph->RegisterProcess(msc, particle); + ph->RegisterProcess(eIoni, particle); + ph->RegisterProcess(eBrem, particle); + ph->RegisterProcess(ss, particle); + + } else if (particleName == "e+") { + + //multiple scattering + G4eMultipleScattering* msc = new G4eMultipleScattering; + G4UrbanMscModel* msc1 = new G4UrbanMscModel(); + G4WentzelVIModel* msc2 = new G4WentzelVIModel(); + msc1->SetHighEnergyLimit(highEnergyLimit); + msc2->SetLowEnergyLimit(highEnergyLimit); + msc->SetEmModel(msc1); + msc->SetEmModel(msc2); + + G4eCoulombScatteringModel* ssm = new G4eCoulombScatteringModel(); + G4CoulombScattering* ss = new G4CoulombScattering(); + ss->SetEmModel(ssm); + ss->SetMinKinEnergy(highEnergyLimit); + ssm->SetLowEnergyLimit(highEnergyLimit); + ssm->SetActivationLowEnergyLimit(highEnergyLimit); + + //Ionisation + G4eIonisation* eIoni = new G4eIonisation(); + G4PenelopeIonisationModel* theIoniPenelope = + new G4PenelopeIonisationModel(); + theIoniPenelope->SetHighEnergyLimit(PenelopeHighEnergyLimit); + eIoni->AddEmModel(0,theIoniPenelope,new G4UniversalFluctuation()); + eIoni->SetStepFunction(0.2, 100*um); // + + //Bremsstrahlung + G4eBremsstrahlung* eBrem = new G4eBremsstrahlung(); + G4PenelopeBremsstrahlungModel* theBremPenelope = + new G4PenelopeBremsstrahlungModel(); + theBremPenelope->SetHighEnergyLimit(PenelopeHighEnergyLimit); + eBrem->SetEmModel(theBremPenelope); + + //Annihilation + G4eplusAnnihilation* eAnni = new G4eplusAnnihilation(); + G4PenelopeAnnihilationModel* theAnnPenelope = + new G4PenelopeAnnihilationModel(); + theAnnPenelope->SetHighEnergyLimit(PenelopeHighEnergyLimit); + eAnni->AddEmModel(0, theAnnPenelope); + + //register processes + ph->RegisterProcess(msc, particle); + ph->RegisterProcess(eIoni, particle); + ph->RegisterProcess(eBrem, particle); + ph->RegisterProcess(eAnni, particle); + ph->RegisterProcess(ss, particle); + + } else if (particleName == "mu+" ||particleName == "mu-") { + + G4MuIonisation* muIoni = new G4MuIonisation(); + muIoni->SetStepFunction(0.2, 50*um); + + ph->RegisterProcess(mumsc, particle); + ph->RegisterProcess(muIoni, particle); + ph->RegisterProcess(mub, particle); + ph->RegisterProcess(mup, particle); + ph->RegisterProcess(new G4CoulombScattering(), particle); + + } else if (particleName == "alpha" || particleName == "He3") { + + G4hMultipleScattering* msc = new G4hMultipleScattering(); + G4ionIonisation* ionIoni = new G4ionIonisation(); + ionIoni->SetStepFunction(0.1, 10*um); + + ph->RegisterProcess(msc, particle); + ph->RegisterProcess(ionIoni, particle); + ph->RegisterProcess(pnuc, particle); + + } else if (particleName == "GenericIon") { + + G4ionIonisation* ionIoni = new G4ionIonisation(); + ionIoni->SetEmModel(new G4IonParametrisedLossModel()); + ionIoni->SetStepFunction(0.1, 1*um); + + ph->RegisterProcess(hmsc, particle); + ph->RegisterProcess(ionIoni, particle); + ph->RegisterProcess(pnuc, particle); + + } else if (particleName == "pi+" || particleName == "pi-" ) { + + G4hMultipleScattering* pimsc = new G4hMultipleScattering(); + G4hIonisation* hIoni = new G4hIonisation(); + hIoni->SetStepFunction(0.2, 50*um); + + ph->RegisterProcess(pimsc, particle); + ph->RegisterProcess(hIoni, particle); + ph->RegisterProcess(pib, particle); + ph->RegisterProcess(pip, particle); + + } else if (particleName == "kaon+" || particleName == "kaon-" ) { + + G4hMultipleScattering* kmsc = new G4hMultipleScattering(); + G4hIonisation* hIoni = new G4hIonisation(); + hIoni->SetStepFunction(0.2, 50*um); + + ph->RegisterProcess(kmsc, particle); + ph->RegisterProcess(hIoni, particle); + ph->RegisterProcess(kb, particle); + ph->RegisterProcess(kp, particle); + + } else if (particleName == "proton" || particleName == "anti_proton") { + + G4hMultipleScattering* pmsc = new G4hMultipleScattering(); + G4hIonisation* hIoni = new G4hIonisation(); + hIoni->SetStepFunction(0.2, 50*um); + + ph->RegisterProcess(pmsc, particle); + ph->RegisterProcess(hIoni, particle); + ph->RegisterProcess(pb, particle); + ph->RegisterProcess(pp, particle); + ph->RegisterProcess(pnuc, particle); + + } else if (particleName == "B+" || + particleName == "B-" || + particleName == "D+" || + particleName == "D-" || + particleName == "Ds+" || + particleName == "Ds-" || + particleName == "anti_He3" || + particleName == "anti_alpha" || + particleName == "anti_deuteron" || + particleName == "anti_lambda_c+" || + particleName == "anti_omega-" || + particleName == "anti_sigma_c+" || + particleName == "anti_sigma_c++" || + particleName == "anti_sigma+" || + particleName == "anti_sigma-" || + particleName == "anti_triton" || + particleName == "anti_xi_c+" || + particleName == "anti_xi-" || + particleName == "deuteron" || + particleName == "lambda_c+" || + particleName == "omega-" || + particleName == "sigma_c+" || + particleName == "sigma_c++" || + particleName == "sigma+" || + particleName == "sigma-" || + particleName == "tau+" || + particleName == "tau-" || + particleName == "triton" || + particleName == "xi_c+" || + particleName == "xi-" ) { + + ph->RegisterProcess(hmsc, particle); + ph->RegisterProcess(new G4hIonisation(), particle); + } + } + + //Nuclear stopping + pnuc->SetMaxKinEnergy(MeV); + + //Deexcitation + G4VAtomDeexcitation* deexcitation = new G4UAtomicDeexcitation(); + G4LossTableManager::Instance()->SetAtomDeexcitation(deexcitation); + + G4EmModelActivator mact(GetPhysicsName()); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/exoticphysics/saxs/src/SAXSActionInitialization.cc b/examples/extended/exoticphysics/saxs/src/SAXSActionInitialization.cc new file mode 100644 index 0000000000..ac5bb8dec2 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/SAXSActionInitialization.cc @@ -0,0 +1,67 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSActionInitialization.cc +/// \brief Implementation of the SAXSActionInitialization class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "SAXSActionInitialization.hh" +#include "SAXSPrimaryGeneratorAction.hh" +#include "SAXSRunAction.hh" +#include "SAXSEventAction.hh" +#include "SAXSSteppingAction.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSActionInitialization::SAXSActionInitialization() : + G4VUserActionInitialization() +{;} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSActionInitialization::~SAXSActionInitialization() +{;} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSActionInitialization::Build() const +{ + SetUserAction(new SAXSPrimaryGeneratorAction()); + SetUserAction(new SAXSRunAction()); + SAXSEventAction* eventAction = new SAXSEventAction(); + SetUserAction(eventAction); + SetUserAction(new SAXSSteppingAction(eventAction)); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void SAXSActionInitialization::BuildForMaster() const +{ + SetUserAction(new SAXSRunAction()); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + diff --git a/examples/extended/exoticphysics/saxs/src/SAXSDetectorConstruction.cc b/examples/extended/exoticphysics/saxs/src/SAXSDetectorConstruction.cc new file mode 100644 index 0000000000..0cb58df1d3 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/SAXSDetectorConstruction.cc @@ -0,0 +1,1089 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSDetectorConstruction.cc +/// \brief Implementation of the SAXSDetectorConstruction class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "SAXSDetectorConstruction.hh" +#include "SAXSSensitiveDetector.hh" + +#include "G4RunManager.hh" + +#include "G4Material.hh" +#include "G4MaterialTable.hh" +#include "G4Element.hh" +#include "G4ElementTable.hh" +#include "G4NistManager.hh" + +#include "G4Box.hh" +#include "G4Tubs.hh" +#include "G4Sphere.hh" +#include "G4Cons.hh" +#include "G4Polyhedra.hh" +#include "G4Trd.hh" +#include "G4SubtractionSolid.hh" +#include "G4UnionSolid.hh" +#include "G4AssemblyVolume.hh" +#include "G4IntersectionSolid.hh" + +#include "G4RotationMatrix.hh" +#include "G4ThreeVector.hh" + +#include "G4LogicalVolume.hh" +#include "G4PVPlacement.hh" +#include "G4GeometryManager.hh" +#include "G4PhysicalVolumeStore.hh" +#include "G4LogicalVolumeStore.hh" +#include "G4SolidStore.hh" +#include "G4UniformMagField.hh" + +#include "G4VisAttributes.hh" +#include "G4Colour.hh" + +#include "G4SDManager.hh" +#include "G4VSensitiveDetector.hh" + +#include "G4MultiFunctionalDetector.hh" +#include "G4PSDoseDeposit.hh" +#include "G4PSEnergyDeposit.hh" +#include "G4SDParticleFilter.hh" + +#include +#include +#include + +#include "G4PhysicalConstants.hh" +#include "G4SystemOfUnits.hh" +#include "globals.hh" + +#include "G4ExtendedMaterial.hh" +#include "G4MIData.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSDetectorConstruction::SAXSDetectorConstruction(): + G4VUserDetectorConstruction(), fWorldLogic(0) +{ + G4cout << "### DetectorConstruction Instantiated ###" << G4endl; + + //instantiate the messenger (set methods will be called after construct) + fMessenger = new SAXSDetectorConstructionMessenger(this); + + //set geometrical variables + SetGeometricalVariables(); + + //Initialization + fPhantomMaterialIndex = 1; + + fComp0 = 0.0; //components of the "Medical Material (MedMat)" + fComp1 = 1.0; //Through macro I can set one Medical Material only + fComp2 = 0.0; + fComp3 = 0.0; + + fCustomMatDensity = 1.00; //g/mol + fCustomMatHmassfract = 0.1119; + fCustomMatCmassfract = 0.; + fCustomMatNmassfract = 0.; + fCustomMatOmassfract = 0.8881; + fCustomMatNamassfract = 0.; + fCustomMatPmassfract = 0.; + fCustomMatSmassfract = 0.; + fCustomMatClmassfract = 0.; + fCustomMatKmassfract = 0.; + fCustomMatCamassfract = 0.; + + fCustomMatFF = ""; //MIFF filename for a custom (extended) material + + fSensitiveVolume = 0; + + fIWantSlits = false; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo..... + +SAXSDetectorConstruction::~SAXSDetectorConstruction(){} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSDetectorConstruction::DefineMaterials() +{ + //Define the NIST manager + G4NistManager* NistMan = G4NistManager::Instance(); + + //Define the required elements for compounds + G4Element* elH = NistMan->FindOrBuildElement("H"); + G4Element* elC = NistMan->FindOrBuildElement("C"); + G4Element* elN = NistMan->FindOrBuildElement("N"); + G4Element* elO = NistMan->FindOrBuildElement("O"); + G4Element* elNa = NistMan->FindOrBuildElement("Na"); + G4Element* elP = NistMan->FindOrBuildElement("P"); + G4Element* elS = NistMan->FindOrBuildElement("S"); + G4Element* elCl = NistMan->FindOrBuildElement("Cl"); + G4Element* elK = NistMan->FindOrBuildElement("K"); + G4Element* elCa = NistMan->FindOrBuildElement("Ca"); + + //variable definition + G4double d; //density + G4int nel; //number of elements + G4String matname; + + //Air + d = 1.29*mg/cm3; + nel = 2; + G4double tAir = 293.15 * CLHEP::kelvin; //20° Celsius + G4double pAir = 1.*CLHEP::atmosphere; //1 atm + fAir = new G4Material("Air", d, nel, kStateGas, tAir, pAir); + fAir->AddElement(elN, 0.7); + fAir->AddElement(elO, 0.3); + + //Fat (Tartari2002) (FF from Tartari2002) + G4double d_Fat = 0.923*g/cm3; + nel = 3; + matname = "Fat_MI"; + fFat = new G4Material(matname, d_Fat, nel); + fFat->AddElement(elH, 0.119); + fFat->AddElement(elC, 0.772); + fFat->AddElement(elO, 0.109); + + //Water (FF from Tartari2002) + G4double d_Water = 1.*g/cm3; + nel = 2; + matname = "Water_MI"; + fWater = new G4Material(matname, d_Water, nel); + fWater->AddElement(elH, 2); + fWater->AddElement(elO, 1); + + //BoneMatrix (Collagen) (FF from Tartari2002) + G4double d_BoneMatrix = 1.263*g/cm3; + nel = 4; + matname = "BoneMatrix_MI"; + fBoneMatrix = new G4Material(matname, d_BoneMatrix, nel); + fBoneMatrix->AddElement(elH, 0.0344); + fBoneMatrix->AddElement(elC, 0.7140); + fBoneMatrix->AddElement(elN, 0.1827); + fBoneMatrix->AddElement(elO, 0.0689); + + //Mineral (Hydroxyapatite) (Tartari2002) (FF from Tartari2002) + G4double d_Mineral = 2.74*g/cm3; + nel = 4; + matname = "Mineral_MI"; + fMineral = new G4Material(matname, d_Mineral, nel); + fMineral->AddElement(elH, 0.002); + fMineral->AddElement(elO, 0.414); + fMineral->AddElement(elP, 0.185); + fMineral->AddElement(elCa, 0.399); + + //Medical Material (compostion of Water, Fat, BoneMatrix and Mineral) + G4double comp[] = {fComp0, fComp1, fComp2, fComp3}; + G4double d_MedMat = + 1/(comp[0]/d_Fat+comp[1]/d_Water+comp[2]/d_BoneMatrix+comp[3]/d_Mineral); + G4int n_MedMat = 0; + for (size_t i=0; i<4; i++) { + if (comp[i]>0) n_MedMat++; + if (comp[i]<0 || comp[i]>1) { + G4String excep = + "Error in Medical Material composition: comp[i]<0 or comp[i]>1"; + G4Exception("DetectorConstuction::DefineMaterials()","dc0001", + FatalException,excep); + return; + } + } + std::stringstream ss0,ss1,ss2,ss3; + ss0 << comp[0]; + ss1 << comp[1]; + ss2 << comp[2]; + ss3 << comp[3]; + if (comp[0]==0 || comp[0]==1) ss0 << ".00"; + if (comp[1]==0 || comp[1]==1) ss1 << ".00"; + if (comp[2]==0 || comp[2]==1) ss2 << ".00"; + if (comp[3]==0 || comp[3]==1) ss3 << ".00"; + if (ss0.str().size()<4) ss0 << "0"; + if (ss1.str().size()<4) ss1 << "0"; + if (ss2.str().size()<4) ss2 << "0"; + if (ss3.str().size()<4) ss3 << "0"; + if (ss0.str().size()!=4 || ss1.str().size()!=4 || ss2.str().size()!=4 + || ss3.str().size()!=4) { + G4String excep = + "Error in MedMaterial composition: check the digits of the elements of comp"; + G4Exception("DetectorConstuction::DefineMaterials()","dc0002", + FatalException,excep); + return; + } + matname = "MedMat_"+ss0.str()+"_"+ss1.str()+"_"+ss2.str()+"_"+ss3.str(); + fMedMat = new G4Material(matname, d_MedMat, n_MedMat); + if (comp[0]) fMedMat->AddMaterial(fFat, comp[0]); + if (comp[1]) fMedMat->AddMaterial(fWater, comp[1]); + if (comp[2]) fMedMat->AddMaterial(fBoneMatrix, comp[2]); + if (comp[3]) fMedMat->AddMaterial(fMineral, comp[3]); + if (comp[0]+comp[1]+comp[2]+comp[3] != 1) { + G4String excep = "Error in Medical Material composition: sum(comp) != 1"; + G4Exception("DetectorConstuction::DefineMaterials()", + "dc0003",FatalException,excep); + return; + } + //If the user wants to use more than one MedMat, he has to create the mix + //and label the material properly, such as "MedMat_0.55_0.25_0.05_0.15". + //Such a name enables the automatic form factor calculation. + + //PMMA (FF from Tartari2002) + d = 1.18*g/cm3; + nel = 3; + matname = "PMMA_MI"; + fPMMA = new G4Material(matname, d, nel); + fPMMA->AddElement(elH, 8); + fPMMA->AddElement(elC, 5); + fPMMA->AddElement(elO, 2); + + //Adipose (Poletti2002) (FF from Poletti2002) + d = 0.92*g/cm3; + nel = 4; + matname = "adipose_MI"; + fAdipose = new G4Material(matname, d, nel); + fAdipose->AddElement(elH, 0.124); + fAdipose->AddElement(elC, 0.765); + fAdipose->AddElement(elN, 0.004); + fAdipose->AddElement(elO, 0.107); + + //Glandular (Poletti2002) (FF from Poletti2002) + d = 1.04*g/cm3; + nel = 4; + matname = "glandular_MI"; + fGlandular = new G4Material(matname, d, nel); + fGlandular->AddElement(elH, 0.093); + fGlandular->AddElement(elC, 0.184); + fGlandular->AddElement(elN, 0.044); + fGlandular->AddElement(elO, 0.679); + + //human breast 50/50 (ICRU44) (FF from Peplow1998) + d = 0.96*g/cm3; + nel = 3; + matname = "breast5050_MI"; + fBreast5050 = new G4Material(matname, d, nel); + fBreast5050->AddElement(elH, 0.115); + fBreast5050->AddElement(elC, 0.387); + fBreast5050->AddElement(elO, 0.498); + + //Liver (ICRU46) (FF_pork_liver_Peplow1998) + d = 1.06*g/cm3; + nel = 9; + matname = "liver_MI"; + fliver = new G4Material(matname, d, nel); + fliver->AddElement(elH, 0.102); + fliver->AddElement(elC, 0.139); + fliver->AddElement(elN, 0.030); + fliver->AddElement(elO, 0.716); + fliver->AddElement(elNa, 0.002); + fliver->AddElement(elP, 0.003); + fliver->AddElement(elS, 0.003); + fliver->AddElement(elCl, 0.002); + fliver->AddElement(elK, 0.003); + + //Kidney (ICRU46) (FF_pork_kidney_Peplow1998) + d = 1.05*g/cm3; + nel = 10; + matname = "kidney_MI"; + fkidney = new G4Material(matname, d, nel); + fkidney->AddElement(elH, 0.103); + fkidney->AddElement(elC, 0.132); + fkidney->AddElement(elN, 0.030); + fkidney->AddElement(elO, 0.724); + fkidney->AddElement(elNa, 0.002); + fkidney->AddElement(elP, 0.002); + fkidney->AddElement(elS, 0.002); + fkidney->AddElement(elCl, 0.002); + fkidney->AddElement(elK, 0.002); + fkidney->AddElement(elCa, 0.001); + + //Lexan (Polycarbonate) (FF from Peplow1998) + d = 1.221*g/cm3; + nel = 3; + matname = "Lexan_MI"; + fLexan = new G4Material(matname, d, nel); + fLexan->AddElement(elH, 14); + fLexan->AddElement(elC, 16); + fLexan->AddElement(elO, 3); + + //Kapton (FF from Peplow1998) + d = 1.42*g/cm3; + nel = 4; + matname = "Kapton_MI"; + fKapton = new G4Material(matname, d, nel); + fKapton->AddElement(elH, 28); + fKapton->AddElement(elC, 35); + fKapton->AddElement(elN, 2); + fKapton->AddElement(elO, 7); + + //Carcinoma (muscle ICRU44) (FF from Kidane1999) + d = 1.05*g/cm3; //check the density + nel = 9; + matname = "carcinoma_MI"; + fcarcinoma = new G4Material(matname, d, nel); + fcarcinoma->AddElement(elH, 0.102); + fcarcinoma->AddElement(elC, 0.143); + fcarcinoma->AddElement(elN, 0.034); + fcarcinoma->AddElement(elO, 0.710); + fcarcinoma->AddElement(elNa, 0.001); + fcarcinoma->AddElement(elP, 0.002); + fcarcinoma->AddElement(elS, 0.003); + fcarcinoma->AddElement(elCl, 0.001); + fcarcinoma->AddElement(elK, 0.004); + + //Nylon (FF from Kosanetzky1987) + d = 1.15*g/cm3; + nel = 4; + matname = "Nylon_MI"; + fNylon = new G4Material(matname, d, nel); + fNylon->AddElement(elH, 11); + fNylon->AddElement(elC, 6); + fNylon->AddElement(elN, 1); + fNylon->AddElement(elO, 1); + + //Polyethylene (FF from Kosanetzky1987) + d = 0.94*g/cm3; //MDPE => 0.92*g/cm3, HDPE => 0.94*g/cm3 + nel = 2; + matname = "Polyethylene_MI"; + fPolyethylene = new G4Material(matname, d, nel); + fPolyethylene->AddElement(elH, 4); + fPolyethylene->AddElement(elC, 2); + + //Polystyrene (FF from Kosanetzky1987) + d = 1.05*g/cm3; + nel = 2; + matname = "Polystyrene_MI"; + fPolystyrene = new G4Material(matname, d, nel); + fPolystyrene->AddElement(elH, 8); + fPolystyrene->AddElement(elC, 8); + + //GrayMatter (DeFelici2008) (FF from DeFelici2008) + d = 0.991*g/cm3; + nel = 3; + matname = "grayMatter_MI"; + fGrayMatter = new G4Material(matname, d, nel); + fGrayMatter->AddElement(elH, 0.1127); + fGrayMatter->AddElement(elC, 0.0849); + fGrayMatter->AddElement(elO, 0.8024); + + //WhiteMatter (DeFelici2008) (FF from DeFelici2008) + d = 0.983*g/cm3; + nel = 3; + matname = "whiteMatter_MI"; + fWhiteMatter = new G4Material(matname, d, nel); + fWhiteMatter->AddElement(elH, 0.1134); + fWhiteMatter->AddElement(elC, 0.1621); + fWhiteMatter->AddElement(elO, 0.7245); + + //Blood (beef) (ICRU46) (FF from Peplow1998) + d = 1.06*g/cm3; + nel = 9; + matname = "blood_MI"; + fbeefBlood = new G4Material(matname, d, nel); + fbeefBlood->AddElement(elH, 0.102); + fbeefBlood->AddElement(elC, 0.11); + fbeefBlood->AddElement(elN, 0.033); + fbeefBlood->AddElement(elO, 0.746); + fbeefBlood->AddElement(elNa, 0.001); + fbeefBlood->AddElement(elP, 0.001); + fbeefBlood->AddElement(elS, 0.002); + fbeefBlood->AddElement(elCl, 0.003); + fbeefBlood->AddElement(elK, 0.002); + + //Formaline (FF from Peplow1998) + d = 1.083*g/cm3; + nel = 3; + matname = "Formaline_MI"; + fFormaline = new G4Material(matname, d, nel); + fFormaline->AddElement(elH, 2); + fFormaline->AddElement(elC, 1); + fFormaline->AddElement(elO, 1); + + //Acetone (FF from Cozzini2010) + d = 0.7845*g/cm3; + nel = 3; + matname = "Acetone_MI"; + fAcetone = new G4Material(matname, d, nel); + fAcetone->AddElement(elH, 6); + fAcetone->AddElement(elC, 3); + fAcetone->AddElement(elO, 1); + + //Hperoxide (FF from Cozzini2010) + d = 1.11*g/cm3; + nel = 2; + matname = "Hperoxide_MI"; + fHperoxide = new G4Material(matname, d, nel); + fHperoxide->AddElement(elH, 2); + fHperoxide->AddElement(elO, 2); + + //CIRS30-70 (Poletti2002) (FF from Poletti2002) + d = 0.97*g/cm3; + nel = 5; + matname = "CIRS30-70_MI"; + fCIRS3070 = new G4Material(matname, d, nel); + fCIRS3070->AddElement(elH, 0.1178); + fCIRS3070->AddElement(elC, 0.7512); + fCIRS3070->AddElement(elN, 0.0066); + fCIRS3070->AddElement(elO, 0.1214); + fCIRS3070->AddElement(elCa, 0.0030); + + //CIRS50-50 (Poletti2002) (FF from Poletti2002) + d = 0.98*g/cm3; + nel = 5; + matname = "CIRS50-50_MI"; + fCIRS5050 = new G4Material(matname, d, nel); + fCIRS5050->AddElement(elH, 0.1110); + fCIRS5050->AddElement(elC, 0.7274); + fCIRS5050->AddElement(elN, 0.0104); + fCIRS5050->AddElement(elO, 0.1482); + fCIRS5050->AddElement(elCa, 0.0030); + + //CIRS70-30 (Poletti2002) (FF from Poletti2002) + d = 1.01*g/cm3; + nel = 5; + matname = "CIRS70-30_MI"; + fCIRS7030 = new G4Material(matname, d, nel); + fCIRS7030->AddElement(elH, 0.1172); + fCIRS7030->AddElement(elC, 0.7378); + fCIRS7030->AddElement(elN, 0.0130); + fCIRS7030->AddElement(elO, 0.1244); + fCIRS7030->AddElement(elCa, 0.0076); + + //RMI454 (Poletti2002) (FF from Poletti2002) + d = 0.98*g/cm3; + nel = 4; + matname = "RMI454_MI"; + fRMI454 = new G4Material(matname, d, nel); + fRMI454->AddElement(elH, 0.0924); + fRMI454->AddElement(elC, 0.6935); + fRMI454->AddElement(elN, 0.0198); + fRMI454->AddElement(elO, 0.1943); + + //Bone (King2011 decomposition) (FF from King2011) + d = 1.344*g/cm3; + nel = 6; + matname = "bone_MI"; + fBone = new G4Material(matname, d, nel); + fBone->AddElement(elH, 0.0582); + fBone->AddElement(elC, 0.3055); + fBone->AddElement(elN, 0.0347); + fBone->AddElement(elO, 0.3856); + fBone->AddElement(elP, 0.0684); + fBone->AddElement(elCa, 0.1476); + + //FatLowX (Tartari2002) (FF_fat_Tartari2002_joint_lowXdata_ESRF2003) + nel = 3; + matname = "FatLowX_MI"; + ffatLowX = new G4Material(matname, d_Fat, nel); + ffatLowX->AddElement(elH, 0.119); + ffatLowX->AddElement(elC, 0.772); + ffatLowX->AddElement(elO, 0.109); + + //BonematrixLowX (Collagen) + //(Tartari2002) (FF_bonematrix_Tartari2002_joint_lowXdata) + nel = 4; + matname = "BoneMatrixLowX_MI"; + fbonematrixLowX = new G4Material(matname, d_BoneMatrix, nel); + fbonematrixLowX->AddElement(elH, 0.0344); + fbonematrixLowX->AddElement(elC, 0.7140); + fbonematrixLowX->AddElement(elN, 0.1827); + fbonematrixLowX->AddElement(elO, 0.0689); + + //dryBoneLowX + //(Tartari2002) (FF_dryBone_Tartari2002_joint_lowXdata_ESRF2003) + d = 2.06*g/cm3; + nel = 6; + matname = "dryBoneLowX_MI"; + fdryBoneLowX = new G4Material(matname, d, nel); + fdryBoneLowX->AddElement(elH, 0.0112); + fdryBoneLowX->AddElement(elC, 0.2013); + fdryBoneLowX->AddElement(elN, 0.0515); + fdryBoneLowX->AddElement(elO, 0.3148); + fdryBoneLowX->AddElement(elP, 0.1327); + fdryBoneLowX->AddElement(elCa, 0.2885); + + //CustomMat (FF read from file) + nel = 0; + G4double sumMF = 0.; + G4cout << "CustomMat composition: " << G4endl; + if (fCustomMatHmassfract) { + G4cout << "CustomMatHmassfract: " << fCustomMatHmassfract << G4endl; + nel++; + sumMF += fCustomMatHmassfract; + } + if (fCustomMatCmassfract) { + G4cout << "CustomMatCmassfract: " << fCustomMatCmassfract << G4endl; + nel++; + sumMF += fCustomMatCmassfract; + } + if (fCustomMatNmassfract) { + G4cout << "CustomMatNmassfract: " << fCustomMatNmassfract << G4endl; + nel++; + sumMF += fCustomMatNmassfract; + } + if (fCustomMatOmassfract) { + G4cout << "CustomMatOmassfract: " << fCustomMatOmassfract << G4endl; + nel++; + sumMF += fCustomMatOmassfract; + } + if (fCustomMatNamassfract) { + G4cout << "CustomMatNamassfract: " << fCustomMatNamassfract << G4endl; + nel++; + sumMF += fCustomMatNamassfract; + } + if (fCustomMatPmassfract) { + G4cout << "CustomMatPmassfract: " << fCustomMatPmassfract << G4endl; + nel++; + sumMF += fCustomMatPmassfract; + } + if (fCustomMatSmassfract) { + G4cout << "CustomMatSmassfract: " << fCustomMatSmassfract << G4endl; + nel++; + sumMF += fCustomMatSmassfract; + } + if (fCustomMatClmassfract) { + G4cout << "CustomMatClmassfract: " << fCustomMatClmassfract << G4endl; + nel++; + sumMF += fCustomMatClmassfract; + } + if (fCustomMatKmassfract) { + G4cout << "CustomMatKmassfract: " << fCustomMatKmassfract << G4endl; + nel++; + sumMF += fCustomMatKmassfract; + } + if (fCustomMatCamassfract) { + G4cout << "CustomMatCamassfract: " << fCustomMatCamassfract << G4endl; + nel++; + sumMF += fCustomMatCamassfract; + } + if (sumMF == 0.) { + //set a default material (water), + //otherwiswe an error appears in the interactive mode + fCustomMatDensity = 1.00; //g/cm3 + fCustomMatHmassfract = 0.1119; + G4cout << "CustomMat set, but not used!" << G4endl; + G4cout << "CustomMatHmassfract: " << fCustomMatHmassfract << G4endl; + fCustomMatOmassfract = 0.8881; + G4cout << "CustomMatOmassfract: " << fCustomMatOmassfract << G4endl; + nel = 2; + sumMF = 1; + } + if (sumMF != 1.) { + G4String excep = + "Error in Custom Material composition: check elemental mass fractions"; + G4Exception("DetectorConstuction::DefineMaterials()", + "dc0004",FatalException,excep); + return; + } + + d = fCustomMatDensity*g/cm3; + matname = "CustomMat"; + //Notice: this is an extended material + fCustomMat = new G4ExtendedMaterial(matname, d, nel); + if (fCustomMatHmassfract) + fCustomMat->AddElement(elH, fCustomMatHmassfract); + if (fCustomMatCmassfract) + fCustomMat->AddElement(elC, fCustomMatCmassfract); + if (fCustomMatNmassfract) + fCustomMat->AddElement(elN, fCustomMatNmassfract); + if (fCustomMatOmassfract) + fCustomMat->AddElement(elO, fCustomMatOmassfract); + if (fCustomMatNamassfract) + fCustomMat->AddElement(elNa, fCustomMatNamassfract); + if (fCustomMatPmassfract) + fCustomMat->AddElement(elP, fCustomMatPmassfract); + if (fCustomMatSmassfract) + fCustomMat->AddElement(elS, fCustomMatSmassfract); + if (fCustomMatClmassfract) + fCustomMat->AddElement(elCl, fCustomMatClmassfract); + if (fCustomMatKmassfract) + fCustomMat->AddElement(elK, fCustomMatKmassfract); + if (fCustomMatCamassfract) + fCustomMat->AddElement(elCa, fCustomMatCamassfract); + //Register MI extension + fCustomMat->RegisterExtension + (std::unique_ptr(new G4MIData("MI"))); + G4MIData* dataMICustomMat = (G4MIData*)fCustomMat->RetrieveExtension("MI"); + dataMICustomMat->SetFilenameFF(fCustomMatFF); + + //Nist Materials + fLead = NistMan->FindOrBuildMaterial("G4_Pb"); + fTungsten = NistMan->FindOrBuildMaterial("G4_W"); + fGe = NistMan->FindOrBuildMaterial("G4_Ge"); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSDetectorConstruction::SetGeometricalVariables() +{ + //World + fWorldSize = 10000.*mm; + + //Phantom + fPhantomDiameter = 50.*mm; + fPhantomHeight = 15.*mm; + fPhantomZ = 0.*mm; + + //setup angle (rad) + fthetaSetup = 0.; + + //Slits + fSlitSize = 50.*mm; + fSlit1Thickness = 5.*mm; + fSlit2Thickness = 5.*mm; + fSlit3Thickness = 5.*mm; + fSlit4Thickness = 5.*mm; + fSlit1SampleDistance = 350.*mm; + fSlit2SampleDistance = 50.*mm; + fSlit3SampleDistance = 50.*mm; + fSlit4SampleDistance = 450.*mm; + fSlit1xAperture = 4.*mm; + fSlit2xAperture = 4.*mm; + fSlit3xAperture = 4.*mm; + fSlit4xAperture = 4.*mm; + fSlit1yAperture = 4.*mm; + fSlit2yAperture = 4.*mm; + fSlit3yAperture = 4.*mm; + fSlit4yAperture = 4.*mm; + + //Detector + fDetectorSize = 20.*mm; + fDetectorThickness = 20.*mm; + fDetectorSampleDistance = 500.*mm; + + //Shielding + fShieldingThickness = 4.*mm; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4VPhysicalVolume* SAXSDetectorConstruction::Construct() +{ + //define custom materials + DefineMaterials(); + + //World + fWorldSolid = new G4Box("WorldSolid", + fWorldSize*0.5, + fWorldSize*0.5, + fWorldSize*0.5); + + fWorldLogic = new G4LogicalVolume(fWorldSolid, fAir, "WorldLogic"); + + fWorldLogic->SetVisAttributes(G4VisAttributes::GetInvisible()); + + fWorldPhysical = new G4PVPlacement(0, + G4ThreeVector(0., 0., 0.), + fWorldLogic, + "WorldPhysical", + 0, + false, + 0); + + //choose the phantom material + switch (fPhantomMaterialIndex) { + case (1): + fPhantomMaterial = fWater; + break; + case (2): + fPhantomMaterial = fMedMat; + break; + case (3): + fPhantomMaterial = fPMMA; + break; + case (4): + fPhantomMaterial = fAdipose; + break; + case (5): + fPhantomMaterial = fGlandular; + break; + case (6): + fPhantomMaterial = fBreast5050; + break; + case (7): + fPhantomMaterial = fcarcinoma; + break; + case (8): + fPhantomMaterial = fkidney; + break; + case (9): + fPhantomMaterial = fliver; + break; + case (10): + fPhantomMaterial = fFat; + break; + case (11): + fPhantomMaterial = fBoneMatrix; + break; + case (12): + fPhantomMaterial = fMineral; + break; + case (13): + fPhantomMaterial = fBone; + break; + case (14): + fPhantomMaterial = ffatLowX; + break; + case (15): + fPhantomMaterial = fbonematrixLowX; + break; + case (16): + fPhantomMaterial = fdryBoneLowX; + break; + case (17): + fPhantomMaterial = fLexan; + break; + case (18): + fPhantomMaterial = fKapton; + break; + case (19): + fPhantomMaterial = fNylon; + break; + case (20): + fPhantomMaterial = fPolyethylene; + break; + case (21): + fPhantomMaterial = fPolystyrene; + break; + case (22): + fPhantomMaterial = fFormaline; + break; + case (23): + fPhantomMaterial = fAcetone; + break; + case (24): + fPhantomMaterial = fHperoxide; + break; + case (25): + fPhantomMaterial = fCIRS3070; + break; + case (26): + fPhantomMaterial = fCIRS5050; + break; + case (27): + fPhantomMaterial = fCIRS7030; + break; + case (28): + fPhantomMaterial = fRMI454; + break; + case (29): + fPhantomMaterial = fAir; + break; + case (30): + fPhantomMaterial = fCustomMat; + break; + } + + //Phantom (cylinder with axis orthogonal to the X-ray beam axis) + G4Tubs* PhantomSolid = new G4Tubs("PhantomSolid", + 0., + fPhantomDiameter*0.5, + fPhantomHeight*0.5, + 0.*deg, + 360.*deg); + + fPhantomLogic = new G4LogicalVolume(PhantomSolid, + fPhantomMaterial, + "PhantomLogic"); + + G4VisAttributes* PhantomVisAttribute = + new G4VisAttributes(G4Colour(1., 1., 1.)); + PhantomVisAttribute->SetForceSolid(true); + fPhantomLogic->SetVisAttributes(PhantomVisAttribute); + + G4cout << "Phantom material: " << fPhantomMaterial->GetName() << G4endl; + G4cout << "Phantom density: " << fPhantomMaterial->GetDensity()/(g/cm3) + << " g/cm3" << G4endl; + G4cout << "Phantom mass: " << fPhantomLogic->GetMass()/g << " g" << G4endl; + + G4double rotAngle = 90.*CLHEP::deg; + G4RotationMatrix* PhantomRotationMatrix = + new G4RotationMatrix(0., 0., 0.); + PhantomRotationMatrix->rotateX(rotAngle); + + fPhantomPhysical = new G4PVPlacement(PhantomRotationMatrix, + G4ThreeVector(0., 0., fPhantomZ), + fPhantomLogic, + "PhantomPhysical", + fWorldLogic, + false, + 0); + + //setup rotation matrix (downstream of the phantom/sample) + G4RotationMatrix* SetupRotationMatrix = new G4RotationMatrix(); + SetupRotationMatrix->rotateY(-fthetaSetup); + + //Slits + G4Box* Slit1OutSolid = new G4Box("Slit1OutSolid", + fSlitSize*0.5, + fSlitSize*0.5, + fSlit1Thickness*0.5); + + G4Box* Slit2OutSolid = new G4Box("Slit2OutSolid", + fSlitSize*0.5, + fSlitSize*0.5, + fSlit2Thickness*0.5); + + G4Box* Slit3OutSolid = new G4Box("Slit3OutSolid", + fSlitSize*0.5, + fSlitSize*0.5, + fSlit3Thickness*0.5); + + G4Box* Slit4OutSolid = new G4Box("Slit4OutSolid", + fSlitSize*0.5, + fSlitSize*0.5, + fSlit4Thickness*0.5); + + G4Box* Hole1Solid = new G4Box("Hole1Solid", + fSlit1xAperture*0.5, + fSlit1yAperture*0.5, + fSlit1Thickness*0.51); + + G4Box* Hole2Solid = new G4Box("Hole2Solid", + fSlit2xAperture*0.5, + fSlit2yAperture*0.5, + fSlit2Thickness*0.51); + + G4Box* Hole3Solid = new G4Box("Hole3Solid", + fSlit3xAperture*0.5, + fSlit3yAperture*0.5, + fSlit3Thickness*0.51); + + G4Box* Hole4Solid = new G4Box("Hole4Solid", + fSlit4xAperture*0.5, + fSlit4yAperture*0.5, + fSlit4Thickness*0.51); + + G4SubtractionSolid* Slit1Solid = new G4SubtractionSolid("Slit1Solid", + Slit1OutSolid, + Hole1Solid); + + G4SubtractionSolid* Slit2Solid = new G4SubtractionSolid("Slit1Solid", + Slit2OutSolid, + Hole2Solid); + + G4SubtractionSolid* Slit3Solid = new G4SubtractionSolid("Slit3Solid", + Slit3OutSolid, + Hole3Solid); + + G4SubtractionSolid* Slit4Solid = new G4SubtractionSolid("Slit4Solid", + Slit4OutSolid, + Hole4Solid); + + fSlit1Logic = new G4LogicalVolume(Slit1Solid, fTungsten, "Slit1Logic"); + fSlit2Logic = new G4LogicalVolume(Slit2Solid, fTungsten, "Slit2Logic"); + fSlit3Logic = new G4LogicalVolume(Slit3Solid, fTungsten, "Slit3Logic"); + fSlit4Logic = new G4LogicalVolume(Slit4Solid, fTungsten, "Slit4Logic"); + + if (fIWantSlits) { + G4cout << "Slit material: Tungsten" << G4endl; + G4cout << "Slit1 thickness: " << fSlit1Thickness/mm << " mm" << G4endl; + G4cout << "Slit2 thickness: " << fSlit2Thickness/mm << " mm" << G4endl; + G4cout << "Slit3 thickness: " << fSlit3Thickness/mm << " mm" << G4endl; + G4cout << "Slit4 thickness: " << fSlit4Thickness/mm << " mm" << G4endl; + G4cout << "Slit1 aperture: " << fSlit1xAperture/mm << " x " + << fSlit1yAperture/mm << " mm2" << G4endl; + G4cout << "Slit2 aperture: " << fSlit2xAperture/mm << " x " + << fSlit2yAperture/mm << " mm2" << G4endl; + G4cout << "Slit3 aperture: " << fSlit3xAperture/mm << " x " + << fSlit3yAperture/mm << " mm2" << G4endl; + G4cout << "Slit4 aperture: " << fSlit4xAperture/mm << " x " + << fSlit4yAperture/mm << " mm2" << G4endl; + } + + G4VisAttributes* SlitlVisAttribute = + new G4VisAttributes(G4Colour(0.5, 0.5, 0.5)); + SlitlVisAttribute->SetForceSolid(true); + fSlit1Logic->SetVisAttributes(SlitlVisAttribute); + fSlit2Logic->SetVisAttributes(SlitlVisAttribute); + fSlit3Logic->SetVisAttributes(SlitlVisAttribute); + fSlit4Logic->SetVisAttributes(SlitlVisAttribute); + + G4double Slit1z = fPhantomZ - fSlit1SampleDistance; + G4ThreeVector Slit1PositionVector = G4ThreeVector(0., 0., Slit1z); + + G4double Slit2z = fPhantomZ - fSlit2SampleDistance; + G4ThreeVector Slit2PositionVector = G4ThreeVector(0., 0., Slit2z); + + G4double Slit3x = fSlit3SampleDistance*std::sin(fthetaSetup); + G4double Slit3z = fPhantomZ + fSlit3SampleDistance*std::cos(fthetaSetup); + G4ThreeVector Slit3PositionVector = G4ThreeVector(Slit3x, 0., Slit3z); + + G4double Slit4x = fSlit4SampleDistance*std::sin(fthetaSetup); + G4double Slit4z = fPhantomZ + fSlit4SampleDistance*std::cos(fthetaSetup); + G4ThreeVector Slit4PositionVector = G4ThreeVector(Slit4x, 0., Slit4z); + + if (fIWantSlits) { + fSlit1Physical = new G4PVPlacement(0, + Slit1PositionVector, + fSlit1Logic, + "Slit1Physical", + fWorldLogic, + false, + 0); + + fSlit2Physical = new G4PVPlacement(0, + Slit2PositionVector, + fSlit2Logic, + "Slit2Physical", + fWorldLogic, + false, + 0); + + fSlit3Physical = new G4PVPlacement(SetupRotationMatrix, + Slit3PositionVector, + fSlit3Logic, + "Slit3Physical", + fWorldLogic, + false, + 0); + + fSlit4Physical = new G4PVPlacement(SetupRotationMatrix, + Slit4PositionVector, + fSlit4Logic, + "Slit4Physical", + fWorldLogic, + false, + 0); + } + + //Detector (with shielding) + G4Tubs* DetectorSolid = new G4Tubs("DetectorSolid", + 0., + fDetectorSize*0.5, + fDetectorThickness*0.5, + 0.*deg, + 360.*deg); + + fDetectorLogic = new G4LogicalVolume(DetectorSolid, fGe, "DetectorLogic"); + + G4VisAttributes* DetectorVisAttribute = + new G4VisAttributes(G4Colour(0., 0.5, 0.)); + DetectorVisAttribute->SetForceSolid(true); + fDetectorLogic->SetVisAttributes(DetectorVisAttribute); + + G4double Detx = fDetectorSampleDistance*std::sin(fthetaSetup); + G4double Detz = fPhantomZ + fDetectorSampleDistance*std::cos(fthetaSetup); + G4ThreeVector DetectorPositionVector = G4ThreeVector(Detx, 0., Detz); + + fDetectorPhysical = new G4PVPlacement(SetupRotationMatrix, + DetectorPositionVector, + fDetectorLogic, + "DetectorPhysical", + fWorldLogic, + false, + 0); + + //Shielding + G4double ShieldingSize = fDetectorSize+2*fShieldingThickness; + + G4double margin = 2.; + G4double ShieldingLength = fDetectorThickness+fShieldingThickness*margin; + + G4double ShieldingSampleDistance = fDetectorSampleDistance+ + fDetectorThickness*0.5+ + fShieldingThickness- + ShieldingLength*0.5; + + G4Tubs* ShieldingSolid = new G4Tubs("ShieldingSolid", + fDetectorSize*0.5, + ShieldingSize*0.5, + ShieldingLength*0.5, + 0.*deg, + 360.*deg); + + fShieldingLogic = new G4LogicalVolume(ShieldingSolid, + fLead, + "ShieldingLogic"); + + G4cout << "Shielding material: Lead" << G4endl; + G4cout << "Shielding thickness: " << fShieldingThickness/mm + << " mm" << G4endl; + + G4VisAttributes* ShieldingVisAttribute = + new G4VisAttributes(G4Colour(0.3, 0.3, 0.3)); + ShieldingVisAttribute->SetForceSolid(true); + fShieldingLogic->SetVisAttributes(ShieldingVisAttribute); + + G4double Shieldx = ShieldingSampleDistance*std::sin(fthetaSetup); + G4double Shieldz = fPhantomZ + + ShieldingSampleDistance*std::cos(fthetaSetup); + G4ThreeVector ShieldingPositionVector = + G4ThreeVector(Shieldx, 0., Shieldz); + + G4double ShieldingBackSampleDistance = fDetectorSampleDistance+ + fDetectorThickness*0.5+ + fShieldingThickness*0.5; + + G4Tubs* ShieldingBackSolid = new G4Tubs("ShieldingBackSolid", + 0., + fDetectorSize*0.5, + fShieldingThickness*0.5, + 0.*deg, + 360.*deg); + + fShieldingBackLogic = new G4LogicalVolume(ShieldingBackSolid, + fLead, + "ShieldingBackLogic"); + + fShieldingBackLogic->SetVisAttributes(ShieldingVisAttribute); + + G4double ShieldBackx = ShieldingBackSampleDistance*std::sin(fthetaSetup); + G4double ShieldBackz = fPhantomZ + + ShieldingBackSampleDistance*std::cos(fthetaSetup); + G4ThreeVector ShieldingBackPositionVector = + G4ThreeVector(ShieldBackx, 0., ShieldBackz); + + fShieldingPhysical = new G4PVPlacement(SetupRotationMatrix, + ShieldingPositionVector, + fShieldingLogic, + "ShieldingPhysical", + fWorldLogic, + false, + 0); + + fShieldingBackPhysical = new G4PVPlacement(SetupRotationMatrix, + ShieldingBackPositionVector, + fShieldingBackLogic, + "ShieldingBackPhysical", + fWorldLogic, + false, + 0); + + return fWorldPhysical; + +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSDetectorConstruction::ConstructSDandField() +{ + //Sensitive Volume + G4VSensitiveDetector* vDetector = new SAXSSensitiveDetector("det"); + G4SDManager::GetSDMpointer()->AddNewDetector(vDetector); + fSensitiveVolume = fDetectorLogic; + fSensitiveVolume->SetSensitiveDetector(vDetector); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/exoticphysics/saxs/src/SAXSDetectorConstructionMessenger.cc b/examples/extended/exoticphysics/saxs/src/SAXSDetectorConstructionMessenger.cc new file mode 100644 index 0000000000..8d252e9e27 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/SAXSDetectorConstructionMessenger.cc @@ -0,0 +1,542 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSDetectorConstructionMessenger.cc +/// \brief Implementation of the SAXSDetectorConstructionMessenger class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "SAXSDetectorConstructionMessenger.hh" +#include "SAXSDetectorConstruction.hh" + +#include "G4UIdirectory.hh" +#include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIcmdWithADouble.hh" +#include "G4UIcmdWithAnInteger.hh" +#include "G4UIcmdWith3VectorAndUnit.hh" +#include "G4UIcmdWithABool.hh" +#include "G4UIcmdWithAString.hh" + +#include "G4RunManager.hh" +#include "G4ios.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSDetectorConstructionMessenger::SAXSDetectorConstructionMessenger +(SAXSDetectorConstruction* detconstr): + G4UImessenger(), fDetector(detconstr) +{ + fCmdDir = new G4UIdirectory("/det/"); + fCmdDir->SetGuidance("Detector Control"); + + fSetCustomMatFFfilename = new G4UIcmdWithAString("/det/SetCustomMatFF",this); + fSetCustomMatFFfilename->SetGuidance("Set CustomMat FF filename"); + fSetCustomMatFFfilename->SetParameterName("mmff",false); + fSetCustomMatFFfilename->AvailableForStates(G4State_PreInit); + + fSetCustomMatDensityCmd = new G4UIcmdWithADouble("/det/setCustomMatDensity", + this); + fSetCustomMatDensityCmd->SetGuidance("Set density for custom material"); + fSetCustomMatDensityCmd->SetParameterName("cmden",false); + fSetCustomMatDensityCmd->SetRange("cmden>0."); + fSetCustomMatDensityCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetCustomMatHmassfractCmd = new G4UIcmdWithADouble + ("/det/setCustomMatHmassfract",this); + fSetCustomMatHmassfractCmd-> + SetGuidance("Set H mass fraction for custom material"); + fSetCustomMatHmassfractCmd->SetParameterName("cmHmf",false); + fSetCustomMatHmassfractCmd->SetRange("cmHmf>=0."); + fSetCustomMatHmassfractCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetCustomMatCmassfractCmd = new G4UIcmdWithADouble + ("/det/setCustomMatCmassfract",this); + fSetCustomMatCmassfractCmd-> + SetGuidance("Set C mass fraction for custom material"); + fSetCustomMatCmassfractCmd->SetParameterName("cmCmf",false); + fSetCustomMatCmassfractCmd->SetRange("cmCmf>=0."); + fSetCustomMatCmassfractCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetCustomMatNmassfractCmd = new G4UIcmdWithADouble + ("/det/setCustomMatNmassfract",this); + fSetCustomMatNmassfractCmd->SetGuidance + ("Set N mass fraction for custom material"); + fSetCustomMatNmassfractCmd->SetParameterName("cmNmf",false); + fSetCustomMatNmassfractCmd->SetRange("cmNmf>=0."); + fSetCustomMatNmassfractCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetCustomMatOmassfractCmd = new G4UIcmdWithADouble + ("/det/setCustomMatOmassfract",this); + fSetCustomMatOmassfractCmd->SetGuidance + ("Set O mass fraction for custom material"); + fSetCustomMatOmassfractCmd->SetParameterName("cmOmf",false); + fSetCustomMatOmassfractCmd->SetRange("cmOmf>=0."); + fSetCustomMatOmassfractCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetCustomMatNamassfractCmd = new G4UIcmdWithADouble + ("/det/setCustomMatNamassfract",this); + fSetCustomMatNamassfractCmd-> + SetGuidance("Set Na mass fraction for custom material"); + fSetCustomMatNamassfractCmd->SetParameterName("cmNamf",false); + fSetCustomMatNamassfractCmd->SetRange("cmNamf>=0."); + fSetCustomMatNamassfractCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetCustomMatPmassfractCmd = new G4UIcmdWithADouble + ("/det/setCustomMatPmassfract",this); + fSetCustomMatPmassfractCmd-> + SetGuidance("Set P mass fraction for custom material"); + fSetCustomMatPmassfractCmd->SetParameterName("cmPmf",false); + fSetCustomMatPmassfractCmd->SetRange("cmPmf>=0."); + fSetCustomMatPmassfractCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetCustomMatSmassfractCmd = new G4UIcmdWithADouble + ("/det/setCustomMatSmassfract",this); + fSetCustomMatSmassfractCmd-> + SetGuidance("Set S mass fraction for custom material"); + fSetCustomMatSmassfractCmd->SetParameterName("cmSmf",false); + fSetCustomMatSmassfractCmd->SetRange("cmSmf>=0."); + fSetCustomMatSmassfractCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetCustomMatClmassfractCmd = + new G4UIcmdWithADouble("/det/setCustomMatClmassfract",this); + fSetCustomMatClmassfractCmd-> + SetGuidance("Set Cl mass fraction for custom material"); + fSetCustomMatClmassfractCmd->SetParameterName("cmClmf",false); + fSetCustomMatClmassfractCmd->SetRange("cmClmf>=0."); + fSetCustomMatClmassfractCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetCustomMatKmassfractCmd = new G4UIcmdWithADouble + ("/det/setCustomMatKmassfract",this); + fSetCustomMatKmassfractCmd-> + SetGuidance("Set K mass fraction for custom material"); + fSetCustomMatKmassfractCmd->SetParameterName("cmKmf",false); + fSetCustomMatKmassfractCmd->SetRange("cmKmf>=0."); + fSetCustomMatKmassfractCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetCustomMatCamassfractCmd = new G4UIcmdWithADouble + ("/det/setCustomMatCamassfract",this); + fSetCustomMatCamassfractCmd-> + SetGuidance("Set Ca mass fraction for custom material"); + fSetCustomMatCamassfractCmd->SetParameterName("cmCamf",false); + fSetCustomMatCamassfractCmd->SetRange("cmCamf>=0."); + fSetCustomMatCamassfractCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fPhantomMaterialCmd = new G4UIcmdWithAnInteger("/det/setPhantomMaterial",this); + fPhantomMaterialCmd->SetGuidance("Set Phantom material"); + fPhantomMaterialCmd->SetParameterName("PhantomMat",false); + fPhantomMaterialCmd->SetRange("PhantomMat>=1 && PhantomMat<=30"); + fPhantomMaterialCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fPhantomDiameterCmd = + new G4UIcmdWithADoubleAndUnit("/det/setPhantomDiameter",this); + fPhantomDiameterCmd->SetGuidance("Set Phantom Diameter"); + fPhantomDiameterCmd->SetParameterName("PhantomDiameter",false); + fPhantomDiameterCmd->SetUnitCategory("Length"); + fPhantomDiameterCmd->SetRange("PhantomDiameter>0."); + fPhantomDiameterCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fPhantomHeightCmd = new G4UIcmdWithADoubleAndUnit("/det/setPhantomHeight",this); + fPhantomHeightCmd->SetGuidance("Set Phantom Thickness"); + fPhantomHeightCmd->SetParameterName("PhantomHeight",false); + fPhantomHeightCmd->SetUnitCategory("Length"); + fPhantomHeightCmd->SetRange("PhantomHeight>0."); + fPhantomHeightCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fPhantomZCmd = new G4UIcmdWithADoubleAndUnit("/det/setPhantomZ",this); + fPhantomZCmd->SetGuidance("Set Phantom Z"); + fPhantomZCmd->SetParameterName("PhantomZ",false); + fPhantomZCmd->SetUnitCategory("Length"); + fPhantomZCmd->SetRange("PhantomZ>=0."); + fPhantomZCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetComp0Cmd = new G4UIcmdWithADouble("/det/setComp0",this); + fSetComp0Cmd->SetGuidance("Set Comp0 for medical material"); + fSetComp0Cmd->SetParameterName("c0",false); + fSetComp0Cmd->SetRange("c0>=0."); + fSetComp0Cmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetComp1Cmd = new G4UIcmdWithADouble("/det/setComp1",this); + fSetComp1Cmd->SetGuidance("Set Comp1 for medical material"); + fSetComp1Cmd->SetParameterName("c1",false); + fSetComp1Cmd->SetRange("c1>=0."); + fSetComp1Cmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetComp2Cmd = new G4UIcmdWithADouble("/det/setComp2",this); + fSetComp2Cmd->SetGuidance("Set Comp2 for medical material"); + fSetComp2Cmd->SetParameterName("c2",false); + fSetComp2Cmd->SetRange("c2>=0."); + fSetComp2Cmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetComp3Cmd = new G4UIcmdWithADouble("/det/setComp3",this); + fSetComp3Cmd->SetGuidance("Set Comp3 for medical material"); + fSetComp3Cmd->SetParameterName("c3",false); + fSetComp3Cmd->SetRange("c3>=0."); + fSetComp3Cmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fThetaSetupCmd = new G4UIcmdWithADouble("/det/setThetaSetup",this); + fThetaSetupCmd->SetGuidance("Set theta setup (rad)"); + fThetaSetupCmd->SetParameterName("theta",false); + fThetaSetupCmd->SetRange("theta>=0."); + fThetaSetupCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSetSlitsCmd = new G4UIcmdWithABool("/det/setSlits", this); + fSetSlitsCmd->SetGuidance("set Slits"); + fSetSlitsCmd->SetParameterName("fIWantSlits",true); + fSetSlitsCmd->SetDefaultValue(false); + + fSlit1ThicknessCmd = new G4UIcmdWithADoubleAndUnit("/det/setSlit1Thickness",this); + fSlit1ThicknessCmd->SetGuidance("Set Slit1 Thickness"); + fSlit1ThicknessCmd->SetParameterName("Slit1Thickness",false); + fSlit1ThicknessCmd->SetUnitCategory("Length"); + fSlit1ThicknessCmd->SetRange("Slit1Thickness>0."); + fSlit1ThicknessCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit2ThicknessCmd = new G4UIcmdWithADoubleAndUnit("/det/setSlit2Thickness",this); + fSlit2ThicknessCmd->SetGuidance("Set Slit2 Thickness"); + fSlit2ThicknessCmd->SetParameterName("Slit2Thickness",false); + fSlit2ThicknessCmd->SetUnitCategory("Length"); + fSlit2ThicknessCmd->SetRange("Slit2Thickness>0."); + fSlit2ThicknessCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit3ThicknessCmd = new G4UIcmdWithADoubleAndUnit("/det/setSlit3Thickness",this); + fSlit3ThicknessCmd->SetGuidance("Set Slit3 Thickness"); + fSlit3ThicknessCmd->SetParameterName("Slit3Thickness",false); + fSlit3ThicknessCmd->SetUnitCategory("Length"); + fSlit3ThicknessCmd->SetRange("Slit3Thickness>0."); + fSlit3ThicknessCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit4ThicknessCmd = new G4UIcmdWithADoubleAndUnit("/det/setSlit4Thickness",this); + fSlit4ThicknessCmd->SetGuidance("Set Slit4 Thickness"); + fSlit4ThicknessCmd->SetParameterName("Slit4Thickness",false); + fSlit4ThicknessCmd->SetUnitCategory("Length"); + fSlit4ThicknessCmd->SetRange("Slit4Thickness>0."); + fSlit4ThicknessCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit1DistanceCmd = + new G4UIcmdWithADoubleAndUnit("/det/setSlit1SampleDistance",this); + fSlit1DistanceCmd->SetGuidance("Set Slit1-to-Sample Distance"); + fSlit1DistanceCmd->SetParameterName("Slit1dist",false); + fSlit1DistanceCmd->SetUnitCategory("Length"); + fSlit1DistanceCmd->SetRange("Slit1dist>0."); + fSlit1DistanceCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit2DistanceCmd = + new G4UIcmdWithADoubleAndUnit("/det/setSlit2SampleDistance",this); + fSlit2DistanceCmd->SetGuidance("Set Slit2-to-Sample Distance"); + fSlit2DistanceCmd->SetParameterName("Slit2dist",false); + fSlit2DistanceCmd->SetUnitCategory("Length"); + fSlit2DistanceCmd->SetRange("Slit2dist>0."); + fSlit2DistanceCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit3DistanceCmd = + new G4UIcmdWithADoubleAndUnit("/det/setSlit3SampleDistance",this); + fSlit3DistanceCmd->SetGuidance("Set Slit3-to-Sample Distance"); + fSlit3DistanceCmd->SetParameterName("Slit3dist",false); + fSlit3DistanceCmd->SetUnitCategory("Length"); + fSlit3DistanceCmd->SetRange("Slit3dist>0."); + fSlit3DistanceCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit4DistanceCmd = + new G4UIcmdWithADoubleAndUnit("/det/setSlit4SampleDistance",this); + fSlit4DistanceCmd->SetGuidance("Set Slit4-to-Sample Distance"); + fSlit4DistanceCmd->SetParameterName("Slit4dist",false); + fSlit4DistanceCmd->SetUnitCategory("Length"); + fSlit4DistanceCmd->SetRange("Slit4dist>0."); + fSlit4DistanceCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit1xApertureCmd = + new G4UIcmdWithADoubleAndUnit("/det/setSlit1xAperture",this); + fSlit1xApertureCmd->SetGuidance("Set Slit1 x Aperture"); + fSlit1xApertureCmd->SetParameterName("Slit1xAp",false); + fSlit1xApertureCmd->SetUnitCategory("Length"); + fSlit1xApertureCmd->SetRange("Slit1xAp>0."); + fSlit1xApertureCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit2xApertureCmd = + new G4UIcmdWithADoubleAndUnit("/det/setSlit2xAperture",this); + fSlit2xApertureCmd->SetGuidance("Set Slit2 x Aperture"); + fSlit2xApertureCmd->SetParameterName("Slit2xAp",false); + fSlit2xApertureCmd->SetUnitCategory("Length"); + fSlit2xApertureCmd->SetRange("Slit2xAp>0."); + fSlit2xApertureCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit3xApertureCmd = + new G4UIcmdWithADoubleAndUnit("/det/setSlit3xAperture",this); + fSlit3xApertureCmd->SetGuidance("Set Slit3 x Aperture"); + fSlit3xApertureCmd->SetParameterName("Slit3xAp",false); + fSlit3xApertureCmd->SetUnitCategory("Length"); + fSlit3xApertureCmd->SetRange("Slit3xAp>0."); + fSlit3xApertureCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit4xApertureCmd = + new G4UIcmdWithADoubleAndUnit("/det/setSlit4xAperture",this); + fSlit4xApertureCmd->SetGuidance("Set Slit4 x Aperture"); + fSlit4xApertureCmd->SetParameterName("Slit4xAp",false); + fSlit4xApertureCmd->SetUnitCategory("Length"); + fSlit4xApertureCmd->SetRange("Slit4xAp>0."); + fSlit4xApertureCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit1yApertureCmd = + new G4UIcmdWithADoubleAndUnit("/det/setSlit1yAperture",this); + fSlit1yApertureCmd->SetGuidance("Set Slit1 y Aperture"); + fSlit1yApertureCmd->SetParameterName("Slit1yAp",false); + fSlit1yApertureCmd->SetUnitCategory("Length"); + fSlit1yApertureCmd->SetRange("Slit1yAp>0."); + fSlit1yApertureCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit2yApertureCmd = + new G4UIcmdWithADoubleAndUnit("/det/setSlit2yAperture",this); + fSlit2yApertureCmd->SetGuidance("Set Slit2 y Aperture"); + fSlit2yApertureCmd->SetParameterName("Slit2yAp",false); + fSlit2yApertureCmd->SetUnitCategory("Length"); + fSlit2yApertureCmd->SetRange("Slit2yAp>0."); + fSlit2yApertureCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit3yApertureCmd = + new G4UIcmdWithADoubleAndUnit("/det/setSlit3yAperture",this); + fSlit3yApertureCmd->SetGuidance("Set Slit3 y Aperture"); + fSlit3yApertureCmd->SetParameterName("Slit3yAp",false); + fSlit3yApertureCmd->SetUnitCategory("Length"); + fSlit3yApertureCmd->SetRange("Slit3yAp>0."); + fSlit3yApertureCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fSlit4yApertureCmd = + new G4UIcmdWithADoubleAndUnit("/det/setSlit4yAperture",this); + fSlit4yApertureCmd->SetGuidance("Set Slit4 y Aperture"); + fSlit4yApertureCmd->SetParameterName("Slit4yAp",false); + fSlit4yApertureCmd->SetUnitCategory("Length"); + fSlit4yApertureCmd->SetRange("Slit4yAp>0."); + fSlit4yApertureCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fDetectorThicknessCmd = new G4UIcmdWithADoubleAndUnit + ("/det/setDetectorThickness",this); + fDetectorThicknessCmd->SetGuidance("Set Detector Thickness"); + fDetectorThicknessCmd->SetParameterName("DetectorThickness",false); + fDetectorThicknessCmd->SetUnitCategory("Length"); + fDetectorThicknessCmd->SetRange("DetectorThickness>0."); + fDetectorThicknessCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fDetectorSizeCmd = new G4UIcmdWithADoubleAndUnit("/det/setDetectorSize",this); + fDetectorSizeCmd->SetGuidance("Set DetectorSize"); + fDetectorSizeCmd->SetParameterName("scrnsize",false); + fDetectorSizeCmd->SetUnitCategory("Length"); + fDetectorSizeCmd->SetRange("scrnsize>0."); + fDetectorSizeCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + + fDetectorDistanceCmd = new G4UIcmdWithADoubleAndUnit + ("/det/setDetectorSampleDistance",this); + fDetectorDistanceCmd->SetGuidance("Set Detector Distance"); + fDetectorDistanceCmd->SetParameterName("detDist",false); + fDetectorDistanceCmd->SetUnitCategory("Length"); + fDetectorDistanceCmd->SetRange("detDist>0."); + fDetectorDistanceCmd->AvailableForStates(G4State_PreInit,G4State_Idle); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +SAXSDetectorConstructionMessenger::~SAXSDetectorConstructionMessenger() +{ + delete fCmdDir; + + delete fSetCustomMatFFfilename; + delete fSetCustomMatDensityCmd; + delete fSetCustomMatHmassfractCmd; + delete fSetCustomMatCmassfractCmd; + delete fSetCustomMatNmassfractCmd; + delete fSetCustomMatOmassfractCmd; + delete fSetCustomMatNamassfractCmd; + delete fSetCustomMatPmassfractCmd; + delete fSetCustomMatSmassfractCmd; + delete fSetCustomMatClmassfractCmd; + delete fSetCustomMatKmassfractCmd; + delete fSetCustomMatCamassfractCmd; + + delete fPhantomMaterialCmd; + delete fPhantomDiameterCmd; + delete fPhantomHeightCmd; + delete fPhantomZCmd; + + delete fSetComp0Cmd; + delete fSetComp1Cmd; + delete fSetComp2Cmd; + delete fSetComp3Cmd; + + delete fThetaSetupCmd; + + delete fSetSlitsCmd; + delete fSlit1ThicknessCmd; + delete fSlit2ThicknessCmd; + delete fSlit3ThicknessCmd; + delete fSlit4ThicknessCmd; + delete fSlit1DistanceCmd; + delete fSlit2DistanceCmd; + delete fSlit3DistanceCmd; + delete fSlit4DistanceCmd; + delete fSlit1xApertureCmd; + delete fSlit2xApertureCmd; + delete fSlit3xApertureCmd; + delete fSlit4xApertureCmd; + delete fSlit1yApertureCmd; + delete fSlit2yApertureCmd; + delete fSlit3yApertureCmd; + delete fSlit4yApertureCmd; + + delete fDetectorThicknessCmd; + delete fDetectorSizeCmd; + delete fDetectorDistanceCmd; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void SAXSDetectorConstructionMessenger::SetNewValue(G4UIcommand* command, + G4String newValue) +{ + if (command == fSetCustomMatFFfilename) + fDetector->SetCustomMatFF(newValue); + + if (command == fSetCustomMatDensityCmd) + fDetector->SetCustomMatDensity + (fSetCustomMatDensityCmd->GetNewDoubleValue(newValue)); + + if (command == fSetCustomMatHmassfractCmd) + fDetector->SetCustomMatHmassfract + (fSetCustomMatHmassfractCmd->GetNewDoubleValue(newValue)); + + if (command == fSetCustomMatCmassfractCmd) + fDetector->SetCustomMatCmassfract + (fSetCustomMatCmassfractCmd->GetNewDoubleValue(newValue)); + if (command == fSetCustomMatNmassfractCmd) + fDetector->SetCustomMatNmassfract + (fSetCustomMatNmassfractCmd->GetNewDoubleValue(newValue)); + if (command == fSetCustomMatOmassfractCmd) + fDetector->SetCustomMatOmassfract + (fSetCustomMatOmassfractCmd->GetNewDoubleValue(newValue)); + if (command == fSetCustomMatNamassfractCmd) + fDetector->SetCustomMatNamassfract + (fSetCustomMatNamassfractCmd->GetNewDoubleValue(newValue)); + if (command == fSetCustomMatPmassfractCmd) + fDetector->SetCustomMatPmassfract + (fSetCustomMatPmassfractCmd->GetNewDoubleValue(newValue)); + if (command == fSetCustomMatSmassfractCmd) + fDetector->SetCustomMatSmassfract + (fSetCustomMatSmassfractCmd->GetNewDoubleValue(newValue)); + if (command == fSetCustomMatClmassfractCmd) + fDetector->SetCustomMatClmassfract + (fSetCustomMatClmassfractCmd->GetNewDoubleValue(newValue)); + if (command == fSetCustomMatKmassfractCmd) + fDetector->SetCustomMatKmassfract + (fSetCustomMatKmassfractCmd->GetNewDoubleValue(newValue)); + if (command == fSetCustomMatCamassfractCmd) + fDetector->SetCustomMatCamassfract + (fSetCustomMatCamassfractCmd->GetNewDoubleValue(newValue)); + + if (command == fPhantomMaterialCmd) { + fDetector->SetPhantomMaterial + (fPhantomMaterialCmd->GetNewIntValue(newValue));} + if (command == fPhantomDiameterCmd) { + fDetector->SetPhantomDiameter + (fPhantomDiameterCmd->GetNewDoubleValue(newValue));} + if (command == fPhantomHeightCmd) { + fDetector->SetPhantomHeight + (fPhantomHeightCmd->GetNewDoubleValue(newValue));} + if (command == fPhantomZCmd) { + fDetector->SetPhantomZ + (fPhantomZCmd->GetNewDoubleValue(newValue));} + + if (command == fSetComp0Cmd) + fDetector->SetComp0(fSetComp0Cmd->GetNewDoubleValue(newValue)); + if (command == fSetComp1Cmd) + fDetector->SetComp1(fSetComp1Cmd->GetNewDoubleValue(newValue)); + if (command == fSetComp2Cmd) + fDetector->SetComp2(fSetComp2Cmd->GetNewDoubleValue(newValue)); + if (command == fSetComp3Cmd) + fDetector->SetComp3(fSetComp3Cmd->GetNewDoubleValue(newValue)); + + if (command == fThetaSetupCmd) + fDetector->SetThetaSetup + (fThetaSetupCmd->GetNewDoubleValue(newValue)); + if (command == fSetSlitsCmd) + fDetector->SetSlits(fSetSlitsCmd->GetNewBoolValue(newValue)); + if (command == fSlit1ThicknessCmd) + fDetector->SetSlit1Thickness + (fSlit1ThicknessCmd->GetNewDoubleValue(newValue)); + if (command == fSlit2ThicknessCmd) + fDetector->SetSlit2Thickness + (fSlit2ThicknessCmd->GetNewDoubleValue(newValue)); + if (command == fSlit3ThicknessCmd) + fDetector->SetSlit3Thickness + (fSlit3ThicknessCmd->GetNewDoubleValue(newValue)); + if (command == fSlit4ThicknessCmd) + fDetector->SetSlit4Thickness + (fSlit4ThicknessCmd->GetNewDoubleValue(newValue)); + if (command == fSlit1DistanceCmd) + fDetector->SetSlit1SampleDistance + (fSlit1DistanceCmd->GetNewDoubleValue(newValue)); + if (command == fSlit2DistanceCmd) + fDetector->SetSlit2SampleDistance + (fSlit2DistanceCmd->GetNewDoubleValue(newValue)); + if (command == fSlit3DistanceCmd) + fDetector->SetSlit3SampleDistance + (fSlit3DistanceCmd->GetNewDoubleValue(newValue)); + if (command == fSlit4DistanceCmd) + fDetector->SetSlit4SampleDistance + (fSlit4DistanceCmd->GetNewDoubleValue(newValue)); + if (command == fSlit1xApertureCmd) + fDetector->SetSlit1xAperture + (fSlit1xApertureCmd->GetNewDoubleValue(newValue)); + if (command == fSlit2xApertureCmd) + fDetector->SetSlit2xAperture + (fSlit2xApertureCmd->GetNewDoubleValue(newValue)); + if (command == fSlit3xApertureCmd) + fDetector->SetSlit3xAperture + (fSlit3xApertureCmd->GetNewDoubleValue(newValue)); + if (command == fSlit4xApertureCmd) + fDetector->SetSlit4xAperture + (fSlit4xApertureCmd->GetNewDoubleValue(newValue)); + if (command == fSlit1yApertureCmd) + fDetector->SetSlit1yAperture + (fSlit1yApertureCmd->GetNewDoubleValue(newValue)); + if (command == fSlit2yApertureCmd) + fDetector->SetSlit2yAperture + (fSlit2yApertureCmd->GetNewDoubleValue(newValue)); + if (command == fSlit3yApertureCmd) + fDetector->SetSlit3yAperture + (fSlit3yApertureCmd->GetNewDoubleValue(newValue)); + if (command == fSlit4yApertureCmd) + fDetector->SetSlit4yAperture + (fSlit4yApertureCmd->GetNewDoubleValue(newValue)); + if (command == fDetectorThicknessCmd) + fDetector->SetDetectorThickness + (fDetectorThicknessCmd->GetNewDoubleValue(newValue)); + if (command == fDetectorSizeCmd) + fDetector->SetDetectorSize + (fDetectorSizeCmd->GetNewDoubleValue(newValue)); + if (command == fDetectorDistanceCmd) + fDetector->SetDetectorSampleDistance + (fDetectorDistanceCmd->GetNewDoubleValue(newValue)); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + diff --git a/examples/extended/exoticphysics/saxs/src/SAXSEventAction.cc b/examples/extended/exoticphysics/saxs/src/SAXSEventAction.cc new file mode 100644 index 0000000000..231577ff4a --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/SAXSEventAction.cc @@ -0,0 +1,139 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSEventAction.cc +/// \brief Implementation of the SAXSEventAction class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +#ifdef G4MULTITHREADED +#include "G4MTRunManager.hh" +#else +#include "G4RunManager.hh" +#endif + +#include "G4Event.hh" +#include "G4EventManager.hh" +#include "G4HCofThisEvent.hh" +#include "G4VHitsCollection.hh" +#include "G4TrajectoryContainer.hh" +#include "G4Trajectory.hh" +#include "G4VVisManager.hh" +#include "G4SDManager.hh" +#include "G4UImanager.hh" +#include "G4ios.hh" +#include "G4SystemOfUnits.hh" + +#include "SAXSAnalysis.hh" +#include "SAXSEventAction.hh" +#include "SAXSSensitiveDetectorHit.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +SAXSEventAction::SAXSEventAction(): + G4UserEventAction(), + fSensitiveDetector_ID(-1), + fVerboseLevel(0), + fNRi(0), + fNCi(0), + fNDi(0), + fEventWeight(0.) +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +SAXSEventAction::~SAXSEventAction() {} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void SAXSEventAction::BeginOfEventAction(const G4Event*) +{ + fNRi = 0; + fNCi = 0; + fNDi = 0; + fEventWeight = 1.; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void SAXSEventAction::EndOfEventAction(const G4Event* aEvent) +{ + //instantiating The Sensitive Detector Manager + G4SDManager* SDman = G4SDManager::GetSDMpointer(); + + //Hit Detection System + if (fSensitiveDetector_ID==-1) { + G4String SensitiveDetectorName; + if (SDman->FindSensitiveDetector(SensitiveDetectorName="det",0)) { + fSensitiveDetector_ID = + SDman->GetCollectionID(SensitiveDetectorName="det/collection"); + } + } + + SensitiveDetectorHitsCollection* fSensitiveDetectorHC = 0; + G4HCofThisEvent* HCE = aEvent->GetHCofThisEvent(); + + if (HCE) { + if (fSensitiveDetector_ID != -1) { + G4VHitsCollection* aHC = HCE->GetHC(fSensitiveDetector_ID); + fSensitiveDetectorHC = (SensitiveDetectorHitsCollection*)(aHC); + } + } + + //instantiating The Analysis Manager + G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); + + //get the Event Number + G4int eventNumber = + G4RunManager::GetRunManager()->GetCurrentEvent()->GetEventID(); + + //filling the SD scoring ntuple + if (fSensitiveDetectorHC) { + size_t vNumberOfHit = fSensitiveDetectorHC->entries(); + for (size_t i=0; iFillNtupleDColumn(0,0,aHit->GetEnergy()/CLHEP::keV); + analysisManager->FillNtupleDColumn(0,1,aHit->GetPos().x()/CLHEP::mm); + analysisManager->FillNtupleDColumn(0,2,aHit->GetPos().y()/CLHEP::mm); + analysisManager->FillNtupleDColumn(0,3,aHit->GetPos().z()/CLHEP::mm); + analysisManager->FillNtupleDColumn(0,4,aHit->GetMom().x()); + analysisManager->FillNtupleDColumn(0,5,aHit->GetMom().y()); + analysisManager->FillNtupleDColumn(0,6,aHit->GetMom().z()); + analysisManager->FillNtupleDColumn(0,7,aHit->GetTime()/CLHEP::ns); + analysisManager->FillNtupleIColumn(0,8,aHit->GetType()); + analysisManager->FillNtupleIColumn(0,9,aHit->GetTrackID()); + analysisManager->FillNtupleIColumn(0,10,fNRi); + analysisManager->FillNtupleIColumn(0,11,fNCi); + analysisManager->FillNtupleIColumn(0,12,fNDi); + analysisManager->FillNtupleIColumn(0,13,eventNumber); + analysisManager->FillNtupleDColumn(0,14,aHit->GetWeight()); + analysisManager->AddNtupleRow(0); + } + } + +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + diff --git a/examples/extended/exoticphysics/saxs/src/SAXSPhysicsList.cc b/examples/extended/exoticphysics/saxs/src/SAXSPhysicsList.cc new file mode 100644 index 0000000000..e253da0166 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/SAXSPhysicsList.cc @@ -0,0 +1,195 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSPhysicsList.cc +/// \brief Implementation of the SAXSPhysicsList class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "SAXSPhysicsList.hh" +#include "SAXSPhysicsListMessenger.hh" + +#include "G4UnitsTable.hh" +#include "G4SystemOfUnits.hh" +#include "globals.hh" + +#include "G4ProcessManager.hh" +#include "G4Threading.hh" + +//Particles +#include "G4ParticleDefinition.hh" +#include "G4ParticleTypes.hh" +#include "G4ParticleTable.hh" + +//EM Physics Lists +#include "G4EmStandardPhysics.hh" +#include "G4EmLivermorePhysics.hh" +#include "G4EmPenelopePhysics.hh" +#include "G4EmLowEPPhysics.hh" +#include "G4EmStandardPhysics_option4.hh" +#include "G4EmPenelopePhysicsMI.hh" + +//EM options +#include "G4EmSaturation.hh" +#include "G4LossTableManager.hh" +#include "G4UAtomicDeexcitation.hh" + +//Hadronic and Extra Physics Lists +#include "G4EmExtraPhysics.hh" +#include "G4HadronPhysicsQGSP_BIC_HP.hh" +#include "G4HadronElasticPhysicsHP.hh" +#include "G4IonPhysics.hh" +#include "G4StoppingPhysics.hh" + +//Optical processes +#include "G4Cerenkov.hh" +#include "G4Scintillation.hh" +#include "G4OpAbsorption.hh" +#include "G4OpRayleigh.hh" +#include "G4OpMieHG.hh" +#include "G4OpBoundaryProcess.hh" + +//Decays +#include "G4Decay.hh" +#include "G4DecayPhysics.hh" +#include "G4RadioactiveDecayPhysics.hh" +#include "G4PhysicsListHelper.hh" +#include "G4RadioactiveDecayBase.hh" +#include "G4NuclideTable.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSPhysicsList::SAXSPhysicsList(): + G4VUserPhysicsList(), + fUseMIFlag(true), + fPMessenger(0) +{ + G4cout << "### PhysicsList instantiated ###" << G4endl; + + G4LossTableManager::Instance(); + + //set default cuts value + defaultCutValue = 0.1*mm; + + //define the messenger + fPMessenger = new SAXSPhysicsListMessenger(this); + + //set verbosity + SetVerboseLevel(1); + + //particle list + fParticleList = new G4DecayPhysics(verboseLevel); + + //EM Physics + fEmPhysicsList = new G4EmPenelopePhysics(verboseLevel); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSPhysicsList::~SAXSPhysicsList() {} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSPhysicsList::ConstructParticle() +{ + fParticleList->ConstructParticle(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSPhysicsList::ConstructProcess() +{ + //transportation + AddTransportation(); + + //EM physics + fEmPhysicsList->ConstructProcess(); + + //Atomic deexcitation + G4VAtomDeexcitation* de = new G4UAtomicDeexcitation(); + de->SetFluo(true); //Activate deexcitation processes and fluorescence + de->SetAuger(true); //Activate Auger effect if deexcitation is activated + de->SetAugerCascade(true); //Activate Auger Cascade if deexcitation is activated + de->SetPIXE(true); //Activate Particle Induced X-Ray Emission (PIXE) + G4LossTableManager::Instance()->SetAtomDeexcitation(de); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSPhysicsList::SelectPhysicsList(const G4String& name) +{ + if (verboseLevel>1) { + G4cout << "### PhysicsList::SelectPhysicsList: <" << name << "> ###" << G4endl; + } + + if (name == "standard") { + delete fEmPhysicsList; + fEmPhysicsList = new G4EmStandardPhysics(verboseLevel); + G4cout << "### selected Standard PhysicsList ###" << G4endl; + } else if (name == "standard_option4") { + delete fEmPhysicsList; + fEmPhysicsList = new G4EmStandardPhysics_option4(verboseLevel); + G4cout << "### selected Standard_option4 PhysicsList ###" << G4endl; + } else if (name == "livermore") { + delete fEmPhysicsList; + fEmPhysicsList = new G4EmLivermorePhysics(verboseLevel); + G4cout << "### selected Livermore PhysicsList ###" << G4endl; + } else if (name == "penelope") { + delete fEmPhysicsList; + fEmPhysicsList = new G4EmPenelopePhysics(verboseLevel); + G4cout << "### selected Penelope PhysicsList ###" << G4endl; + } else if (name == "penelopeMI") { + delete fEmPhysicsList; + fEmPhysicsList = new G4EmPenelopePhysicsMI(verboseLevel,"G4EmPenelopeMI",fUseMIFlag); + G4cout << "### selected Penelope PhysicsList with MI effects ###" << G4endl; + } else if (name == "LowEP") { + delete fEmPhysicsList; + fEmPhysicsList = new G4EmLowEPPhysics(1,name); + G4cout << "### selected LowEP PhysicsList ###" << G4endl; + } else { + G4cout << "### PhysicsList::SelectPhysicsList: <" << name + << ">"<< " is not defined ###" << G4endl; + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSPhysicsList::SetCuts() +{ + //set the default cuts value for all particle types + SetCutsWithDefault(); + if (verboseLevel>0) DumpCutValuesTable(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSPhysicsList::SetDefaultCutsValue(G4double value) +{ + //define a new default cuts value + defaultCutValue = value; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + diff --git a/examples/extended/exoticphysics/saxs/src/SAXSPhysicsListMessenger.cc b/examples/extended/exoticphysics/saxs/src/SAXSPhysicsListMessenger.cc new file mode 100644 index 0000000000..1749fd5d41 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/SAXSPhysicsListMessenger.cc @@ -0,0 +1,92 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSPhysicsListMessenger.cc +/// \brief Definition of the SAXSPhysicsListMessenger class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "SAXSPhysicsListMessenger.hh" +#include "SAXSPhysicsList.hh" + +#include "G4UIdirectory.hh" +#include "G4UIcmdWithAnInteger.hh" +#include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIcmdWithAString.hh" +#include "G4UIcmdWithABool.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSPhysicsListMessenger::SAXSPhysicsListMessenger(SAXSPhysicsList* pPhys): + G4UImessenger(), + fPhysicsList(pPhys) +{ + fPhysDir = new G4UIdirectory("/phys/"); + fPhysDir->SetGuidance("PhysicsList control"); + + fCutsCmd = new G4UIcmdWithADoubleAndUnit("/phys/setCuts",this); + fCutsCmd->SetGuidance("set cuts"); + fCutsCmd->SetParameterName("cuts",false); + fCutsCmd->SetUnitCategory("Length"); + fCutsCmd->SetRange("cuts>0."); + fCutsCmd->AvailableForStates(G4State_PreInit, G4State_Idle); + + fListCmd = new G4UIcmdWithAString("/phys/SelectPhysicsList",this); + fListCmd->SetGuidance("Select the EM physics list"); + fListCmd->SetParameterName("PList",false); + fListCmd->AvailableForStates(G4State_PreInit); + + fUseMIFlagCmd = new G4UIcmdWithABool("/phys/useMIFlag",this); + fUseMIFlagCmd->SetGuidance + ("Enable (default) or disable MI for the PenelopeMI physics list"); + fUseMIFlagCmd->SetParameterName("useMIFlag", true); + fUseMIFlagCmd->AvailableForStates(G4State_PreInit); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSPhysicsListMessenger::~SAXSPhysicsListMessenger() +{ + delete fPhysDir; + delete fCutsCmd; + delete fListCmd; + delete fUseMIFlagCmd; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSPhysicsListMessenger::SetNewValue(G4UIcommand* command, + G4String newValue) +{ + if (command == fCutsCmd) + fPhysicsList->SetDefaultCutsValue(fCutsCmd->GetNewDoubleValue(newValue)); + if (command == fListCmd) + fPhysicsList->SelectPhysicsList(newValue); + if (command == fUseMIFlagCmd) + fPhysicsList->SetUseMIFlag(fUseMIFlagCmd->GetNewBoolValue(newValue)); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + diff --git a/examples/extended/exoticphysics/saxs/src/SAXSPrimaryGeneratorAction.cc b/examples/extended/exoticphysics/saxs/src/SAXSPrimaryGeneratorAction.cc new file mode 100644 index 0000000000..ae41e291c8 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/SAXSPrimaryGeneratorAction.cc @@ -0,0 +1,72 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSPrimaryGeneratorAction.cc +/// \brief Implementation of the SAXSPrimaryGeneratorAction class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "SAXSPrimaryGeneratorAction.hh" +#include "SAXSDetectorConstruction.hh" + +#include "G4RunManager.hh" +#include "G4Event.hh" +#include "G4AutoLock.hh" +#include "G4ParticleTable.hh" +#include "G4ParticleDefinition.hh" + +#include "Randomize.hh" + +#include "G4GeneralParticleSource.hh" +#include "G4ParticleGun.hh" + +#include "G4PhysicalConstants.hh" +#include "G4SystemOfUnits.hh" +#include "globals.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSPrimaryGeneratorAction::SAXSPrimaryGeneratorAction() : + G4VUserPrimaryGeneratorAction() +{ + fParticleGPS = new G4GeneralParticleSource(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSPrimaryGeneratorAction::~SAXSPrimaryGeneratorAction() +{ + delete fParticleGPS; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSPrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) +{ + fParticleGPS->GeneratePrimaryVertex(anEvent); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + diff --git a/examples/extended/exoticphysics/saxs/src/SAXSRunAction.cc b/examples/extended/exoticphysics/saxs/src/SAXSRunAction.cc new file mode 100644 index 0000000000..847ffb98bc --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/SAXSRunAction.cc @@ -0,0 +1,148 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSRunAction.cc +/// \brief Implementation of the SAXSRunAction class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "G4Run.hh" +#include "G4RunManager.hh" +#include "G4UnitsTable.hh" +#include "G4SystemOfUnits.hh" + +#include "SAXSRunAction.hh" +#include "SAXSRunActionMessenger.hh" +#include "SAXSDetectorConstruction.hh" +#include "SAXSAnalysis.hh" + +#include "G4SDManager.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSRunAction::SAXSRunAction(): + G4UserRunAction(), + fIsFileOpened(false) +{ + //set the number of events to print progress during the simulation + G4RunManager::GetRunManager()->SetPrintProgress(10000); + + //define the messenger + fMessenger = new SAXSRunActionMessenger(this); + + //default output filename (can be set through macro) + fFileName = "output"; + + //Create the analysis manager + G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); + analysisManager->SetFileName(fFileName); + analysisManager->SetNtupleMerging(true); //only for root + analysisManager->SetVerboseLevel(1); + + //Creating the SD scoring ntuple + analysisManager->CreateNtuple("part","Particle"); + analysisManager->CreateNtupleDColumn("e"); + analysisManager->CreateNtupleDColumn("posx"); + analysisManager->CreateNtupleDColumn("posy"); + analysisManager->CreateNtupleDColumn("posz"); + analysisManager->CreateNtupleDColumn("momx"); + analysisManager->CreateNtupleDColumn("momy"); + analysisManager->CreateNtupleDColumn("momz"); + analysisManager->CreateNtupleDColumn("t"); + analysisManager->CreateNtupleIColumn("type"); + analysisManager->CreateNtupleIColumn("trackID"); + analysisManager->CreateNtupleIColumn("NRi"); + analysisManager->CreateNtupleIColumn("NCi"); + analysisManager->CreateNtupleIColumn("NDi"); + analysisManager->CreateNtupleIColumn("eventID"); + analysisManager->CreateNtupleDColumn("weight"); + analysisManager->FinishNtuple(); + + //Creating ntuple for scattering + analysisManager->CreateNtuple("scatt","Scattering"); + analysisManager->CreateNtupleIColumn("processID"); + analysisManager->CreateNtupleDColumn("e"); + analysisManager->CreateNtupleDColumn("theta"); + analysisManager->CreateNtupleDColumn("weight"); + analysisManager->FinishNtuple(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSRunAction::~SAXSRunAction() { + //write results + if (fIsFileOpened) + { + G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); + analysisManager->Write(); + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSRunAction::BeginOfRunAction(const G4Run*) +{ + //open the output file + if (!fIsFileOpened) + { + G4AnalysisManager::Instance()->OpenFile(fFileName); + fIsFileOpened = true; + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSRunAction::EndOfRunAction(const G4Run* run) +{ + G4int nofEvents = run->GetNumberOfEvent(); + if (nofEvents == 0) return; + + //print + if (IsMaster()) { + G4cout + << G4endl + << "--------------------End of Global Run-----------------------" + << G4endl + << " The run had " << nofEvents << " events"; + } else { + G4cout + << G4endl + << "--------------------End of Local Run------------------------" + << G4endl + << " The run had " << nofEvents << " events"; + } + +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSRunAction::SetFileName(G4String filename) +{ + //method to set the output filename + if (filename != "") fFileName = filename; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + diff --git a/examples/extended/exoticphysics/saxs/src/SAXSRunActionMessenger.cc b/examples/extended/exoticphysics/saxs/src/SAXSRunActionMessenger.cc new file mode 100644 index 0000000000..cd32849999 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/SAXSRunActionMessenger.cc @@ -0,0 +1,62 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSRunActionMessenger.cc +/// \brief Definition of the SAXSRunActionMessenger class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "SAXSRunActionMessenger.hh" +#include "SAXSRunAction.hh" + +#include "G4UIcmdWithAString.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSRunActionMessenger::SAXSRunActionMessenger(SAXSRunAction* runaction): +G4UImessenger(), +fSetFileNameCmd(0) +{ + fRunAction = runaction; + + fSetFileNameCmd = new G4UIcmdWithAString("/run/setfilenamesave",this); + fSetFileNameCmd->SetGuidance("Set File Name Save"); + fSetFileNameCmd->SetParameterName("SetFileNameSave",false); + fSetFileNameCmd->SetDefaultValue("output"); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSRunActionMessenger::~SAXSRunActionMessenger() {delete fSetFileNameCmd;} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSRunActionMessenger::SetNewValue(G4UIcommand* command,G4String newValue) +{ + if (command == fSetFileNameCmd) fRunAction->SetFileName(newValue); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + diff --git a/examples/extended/exoticphysics/saxs/src/SAXSSensitiveDetector.cc b/examples/extended/exoticphysics/saxs/src/SAXSSensitiveDetector.cc new file mode 100644 index 0000000000..fd995c9f6e --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/SAXSSensitiveDetector.cc @@ -0,0 +1,122 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSSensitiveDetector.cc +/// \brief Implementation of the SAXSSensitiveDetector class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +#include "SAXSSensitiveDetector.hh" +#include "SAXSSensitiveDetectorHit.hh" + +#include "G4HCofThisEvent.hh" +#include "G4TouchableHistory.hh" +#include "G4Track.hh" +#include "G4Step.hh" +#include "G4SDManager.hh" +#include "G4Navigator.hh" +#include "G4ios.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +SAXSSensitiveDetector::SAXSSensitiveDetector(G4String name): + G4VSensitiveDetector(name) +{ + G4String HCname; + collectionName.insert(HCname="collection"); + fHCID = -1; + + fVarStopAndKill = true; + + fSDMessenger = new SAXSSensitiveDetectorMessenger(this); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +SAXSSensitiveDetector::~SAXSSensitiveDetector() {} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void SAXSSensitiveDetector::Initialize(G4HCofThisEvent* HCE) +{ + fHitsCollection = + new SensitiveDetectorHitsCollection(SensitiveDetectorName,collectionName[0]); + if(fHCID<0) + fHCID = G4SDManager::GetSDMpointer()->GetCollectionID(fHitsCollection); + HCE->AddHitsCollection(fHCID,fHitsCollection); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +bool SAXSSensitiveDetector::ProcessHits(G4Step* aStep,G4TouchableHistory*) +{ + G4Track* vTrack = aStep->GetTrack(); + + G4StepPoint* preStepPoint = aStep->GetPreStepPoint(); + + G4ThreeVector worldPosition = preStepPoint->GetPosition(); + G4ThreeVector localPosition = preStepPoint->GetTouchableHandle()-> + GetHistory()->GetTopTransform().TransformPoint(worldPosition); + + G4ThreeVector mom = preStepPoint->GetMomentumDirection(); + + //if the partcile is not on the boundary of the sensitive detector, return + if (!(preStepPoint->GetStepStatus() == fGeomBoundary)) {return false;} + + G4int vType = -1; + if(preStepPoint->GetMass() == 0 && preStepPoint->GetCharge() == 0) { + vType = 0; + } + else if(preStepPoint->GetMass() != 0 && preStepPoint->GetCharge() == 0) { + vType = 1; + } + else if(preStepPoint->GetMass() != 0 && preStepPoint->GetCharge() > 0) { + vType = 2; + } + else if(preStepPoint->GetMass() != 0 && preStepPoint->GetCharge() < 0) { + vType = 3; + } + + //insert a hit + SAXSSensitiveDetectorHit* aHit = new SAXSSensitiveDetectorHit(); + aHit->SetPos(localPosition); + aHit->SetMom(mom); + aHit->SetType(vType); + aHit->SetEnergy(preStepPoint->GetKineticEnergy()); + aHit->SetTime(preStepPoint->GetGlobalTime()); + aHit->SetTrackID(vTrack->GetTrackID()); + aHit->SetWeight(vTrack->GetWeight()); + fHitsCollection->insert(aHit); + + if (fVarStopAndKill) {vTrack->SetTrackStatus(fStopAndKill);} + + return true; +} +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void SAXSSensitiveDetector::EndOfEvent(G4HCofThisEvent*) {} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + diff --git a/examples/extended/exoticphysics/saxs/src/SAXSSensitiveDetectorHit.cc b/examples/extended/exoticphysics/saxs/src/SAXSSensitiveDetectorHit.cc new file mode 100644 index 0000000000..edb66bdf95 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/SAXSSensitiveDetectorHit.cc @@ -0,0 +1,130 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSSensitiveDetectorHit.cc +/// \brief Implementation of the SAXSSensitiveDetectorHit class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +#include "SAXSSensitiveDetectorHit.hh" + +#include "G4ios.hh" +#include "G4VVisManager.hh" +#include "G4Circle.hh" +#include "G4Colour.hh" +#include "G4AttDefStore.hh" +#include "G4AttDef.hh" +#include "G4AttValue.hh" +#include "G4UIcommand.hh" +#include "G4UnitsTable.hh" +#include "G4VisAttributes.hh" +#include "G4LogicalVolume.hh" +#include "G4SystemOfUnits.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4ThreadLocal G4Allocator* hitAllocator = nullptr; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +SAXSSensitiveDetectorHit::SAXSSensitiveDetectorHit() : + G4VHit() +{ + fTime = 0.; + fPos = G4ThreeVector(0.,0.,0.); + fMom = G4ThreeVector(0.,0.,0.); + fEnergy = 0.; + fType = -1; + fTrackID = -1; + fWeight = -1; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +SAXSSensitiveDetectorHit::SAXSSensitiveDetectorHit(const SAXSSensitiveDetectorHit &right): + G4VHit() +{ + fTrackID = right.fTrackID; + fTrackIDP = right.fTrackIDP; + fPos = right.fPos; + fMom = right.fMom; + fTime = right.fTime; + fEnergy = right.fEnergy; + fType = right.fType; + fWeight = right.fWeight; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +const SAXSSensitiveDetectorHit& SAXSSensitiveDetectorHit::operator= + (const SAXSSensitiveDetectorHit &right) +{ + fTrackID = right.fTrackID; + fTrackIDP = right.fTrackIDP; + fPos = right.fPos; + fMom = right.fMom; + fTime = right.fTime; + fEnergy = right.fEnergy; + fType = right.fType; + fWeight = right.fWeight; + + return *this; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +int SAXSSensitiveDetectorHit::operator==(const SAXSSensitiveDetectorHit &) const +{ + return 0; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void SAXSSensitiveDetectorHit::Draw() +{ + G4VVisManager* pVVisManager = G4VVisManager::GetConcreteInstance(); + if (pVVisManager) + { + G4Circle circle(fPos); + circle.SetScreenSize(2); + circle.SetFillStyle(G4Circle::filled); + G4Colour colour(1.,1.,0.); + G4VisAttributes attribs(colour); + circle.SetVisAttributes(attribs); + pVVisManager->Draw(circle); + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void SAXSSensitiveDetectorHit::Print() +{ + G4cout << " Hit at time " << fTime/ns + << " (nsec) - pos(x,y,z) " << fPos/mm + << " (mm) - mom(x,y,z) " << fMom/eV << " eV" << G4endl; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + diff --git a/examples/extended/exoticphysics/saxs/src/SAXSSensitiveDetectorMessenger.cc b/examples/extended/exoticphysics/saxs/src/SAXSSensitiveDetectorMessenger.cc new file mode 100644 index 0000000000..21add4db24 --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/SAXSSensitiveDetectorMessenger.cc @@ -0,0 +1,68 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSSensitiveDetectorMessenger.cc +/// \brief Implementation of the SAXSSensitiveDetectorMessenger class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "SAXSSensitiveDetectorMessenger.hh" +#include "SAXSSensitiveDetector.hh" + +#include "G4UIdirectory.hh" +#include "G4UIcmdWithABool.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSSensitiveDetectorMessenger::SAXSSensitiveDetectorMessenger(SAXSSensitiveDetector* SD): + G4UImessenger(), fSenDet(SD) +{ + fSenDetDir = new G4UIdirectory("/sd/"); + fSenDetDir->SetGuidance("Sensitive Detector control."); + + fUserStopAndKillCmd = new G4UIcmdWithABool("/sd/setSK", this); + fUserStopAndKillCmd->SetGuidance("bStopAndKill: (1) true, (0) false."); + fUserStopAndKillCmd->SetParameterName("bStopAndKill", true); + fUserStopAndKillCmd->SetDefaultValue(false); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSSensitiveDetectorMessenger::~SAXSSensitiveDetectorMessenger() +{ + delete fSenDetDir; + delete fUserStopAndKillCmd; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSSensitiveDetectorMessenger::SetNewValue(G4UIcommand* command,G4String newValue) +{ + if (command == fUserStopAndKillCmd) + fSenDet->SetVarStopAndKill(fUserStopAndKillCmd->GetNewBoolValue(newValue)); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + diff --git a/examples/extended/exoticphysics/saxs/src/SAXSSteppingAction.cc b/examples/extended/exoticphysics/saxs/src/SAXSSteppingAction.cc new file mode 100644 index 0000000000..78c99b032f --- /dev/null +++ b/examples/extended/exoticphysics/saxs/src/SAXSSteppingAction.cc @@ -0,0 +1,172 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file SAXSSteppingAction.cc +/// \brief Definition of the SAXSSteppingAction class +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifdef G4MULTITHREADED +#include "G4MTRunManager.hh" +#else +#include "G4RunManager.hh" +#endif + +#include "G4Event.hh" +#include "G4EventManager.hh" +#include "G4HCofThisEvent.hh" +#include "G4VHitsCollection.hh" +#include "G4TrajectoryContainer.hh" +#include "G4Trajectory.hh" +#include "G4VVisManager.hh" +#include "G4SDManager.hh" +#include "G4UImanager.hh" +#include "G4ios.hh" +#include "G4SystemOfUnits.hh" + +#include "SAXSSteppingAction.hh" +#include "SAXSEventAction.hh" +#include "SAXSDetectorConstruction.hh" +#include "SAXSAnalysis.hh" + +#include "G4Step.hh" +#include "G4Track.hh" +#include "G4OpticalPhoton.hh" + +#include + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSSteppingAction::SAXSSteppingAction(SAXSEventAction* eventAction): + G4UserSteppingAction(), + fEventAction(eventAction), + fPhantom(0), + fEventNumber(-1), + fNSe(0) +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +SAXSSteppingAction::~SAXSSteppingAction() {} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void SAXSSteppingAction::UserSteppingAction(const G4Step* step) +{ + //DetectorConstruction instance + const SAXSDetectorConstruction* detectorConstruction = + static_cast + (G4RunManager::GetRunManager()->GetUserDetectorConstruction()); + + //get Phantom volume + fPhantom = detectorConstruction->GetPhantom(); + + //get pre and post step points + G4StepPoint* preStepPoint = step->GetPreStepPoint(); + G4StepPoint* postStepPoint = step->GetPostStepPoint(); + + //get the volume of the current step + G4LogicalVolume* volume = preStepPoint->GetTouchableHandle() + ->GetVolume()->GetLogicalVolume(); + + //get track and particle name + G4Track* track = step->GetTrack(); + G4int ID = track->GetTrackID(); + G4String partName = track->GetDefinition()->GetParticleName(); + + //update the primary particle (event) weight + G4double PrimaryWeight = 1.; + if (partName == "gamma" && ID==1) { + PrimaryWeight = track->GetWeight(); + fEventAction->UpdateEventWeight(PrimaryWeight); + } + + //if the particle is not a primary photon stepping in the phantom, exit! + if (volume != fPhantom || partName != "gamma" || ID!=1) return; + + //if it is a new event, reset variable values to 0 + G4int eventNumber = G4RunManager::GetRunManager() + ->GetCurrentEvent()->GetEventID(); + if (eventNumber != fEventNumber) { + fEventNumber = eventNumber; + fNSe = 0; + } + + //identify the process that occurred + G4String Process; + if (postStepPoint->GetProcessDefinedStep() != NULL) { + Process = postStepPoint->GetProcessDefinedStep()->GetProcessName(); + } else { + Process = "UserLimit"; + } + //G4cout << "Process: " << Process << G4endl; + G4int ProcIndex = -1; + if (Process == "Transportation" || Process == "CoupledTransportation" + || Process == "UserLimit") { + ProcIndex = 0; + } + if (Process == "Rayl" || Process == "biasWrapper(Rayl)") { + ProcIndex = 1; + fNSe++; + fEventAction->AddNRi(); + } + if (Process == "compt" || Process == "biasWrapper(compt)") { + ProcIndex = 2; + fNSe++; + fEventAction->AddNCi(); + } + if (Process == "phot" || Process == "biasWrapper(phot)") ProcIndex = 3; + if (Process == "conv" || Process == "biasWrapper(conv)") ProcIndex = 4; + if (Process == "photonNuclear" || + Process == "biasWrapper(photonNuclear)") { + ProcIndex = 5; + } + if (Process == "PowderDiffraction" || + Process == "biasWrapper(PowderDiffraction)") { + ProcIndex = 6; + fNSe++; + fEventAction->AddNDi(); + } + //G4cout << "ProcIndex: " << ProcIndex << G4endl; + + //calculate the scattering angle + G4ThreeVector mom1 = preStepPoint->GetMomentumDirection(); + G4ThreeVector mom2 = postStepPoint->GetMomentumDirection(); + G4double theta = mom1.angle(mom2); + + //fill the Scattering ntuple + G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); + if (theta > 1e-6) { //record only if the angle is not 0 + analysisManager->FillNtupleIColumn(1,0,ProcIndex); + analysisManager->FillNtupleDColumn(1,1, + preStepPoint->GetKineticEnergy()/CLHEP::keV); + analysisManager->FillNtupleDColumn(1,2,theta/CLHEP::deg); + analysisManager->FillNtupleDColumn(1,3,track->GetWeight()); + analysisManager->AddNtupleRow(1); + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + diff --git a/examples/extended/exoticphysics/saxs/test.in b/examples/extended/exoticphysics/saxs/test.in new file mode 100644 index 0000000000..e4b818bb3f --- /dev/null +++ b/examples/extended/exoticphysics/saxs/test.in @@ -0,0 +1,10 @@ + +#test beam +/gps/pos/type Plane +/gps/pos/shape Circle +/gps/pos/radius 1. mm +/gps/pos/centre 0. 0. 0. mm +/gps/direction 0 0 1 +/gps/particle gamma +/gps/ene/type Mono +/gps/ene/mono 20. keV diff --git a/examples/extended/exoticphysics/saxs/vis.mac b/examples/extended/exoticphysics/saxs/vis.mac new file mode 100644 index 0000000000..90027bf8ac --- /dev/null +++ b/examples/extended/exoticphysics/saxs/vis.mac @@ -0,0 +1,52 @@ +#Macro for the visualization + +#Create an empty scene +/vis/scene/create + +#Create a scene handler for a specific graphics system +/vis/open OGL + +#Draw the scene +/vis/viewer/reset +/vis/viewer/set/viewpointThetaPhi 135. 45. deg +/vis/viewer/zoom 0.5 + +#Specify style (surface, wireframe, auxiliary edges,...) +/vis/viewer/set/style wireframe +/vis/viewer/set/lineSegmentsPerCircle 100 + +#Geometry +#/vis/geometry/set/lineWidth all 1 3 +#/vis/geometry/set/colour PhantomLogic 1 0 0 0 + +#Decoration +#Axes +/vis/set/lineWidth 3 +/vis/scene/add/axes 0 0 0 0.10 m #Simple axes: x=red, y=green, z=blue. +#Name +#/vis/set/textColour red +#/vis/set/textLayout right +#/vis/scene/add/text2D 0.9 -.9 24 ! ! saxs +#Frame +#/vis/set/colour red +#/vis/set/lineWidth 2 +#/vis/scene/add/frame #Simple frame around the view +#/vis/set/colour #Revert to default colour (white) +#/vis/set/lineWidth #Revert to default line width (1.) + +#Commands for the drawing the tracks +/vis/scene/add/eventID #Drawn at end of event +/tracking/storeTrajectory 0 #(if too many tracks cause core dumped => storeTrajectory 0) +/vis/scene/endOfEventAction accumulate +/vis/scene/add/trajectories smooth rich +#/vis/modeling/trajectories/create/drawByParticleID +/vis/modeling/trajectories/create/drawByCharge +/vis/modeling/trajectories/drawByCharge-0/default/setDrawStepPts true +/vis/modeling/trajectories/drawByCharge-0/default/setStepPtsSize 2 + +#Draw hits at end of event: +/vis/scene/add/hits + +#Geometry test (it can cause a "core dumped") +/geometry/navigator/reset +/geometry/test/run diff --git a/examples/extended/exoticphysics/ucn/CMakeLists.txt b/examples/extended/exoticphysics/ucn/CMakeLists.txt index 2b5361bc62..6911ca5aa3 100644 --- a/examples/extended/exoticphysics/ucn/CMakeLists.txt +++ b/examples/extended/exoticphysics/ucn/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(ExUCN) #---------------------------------------------------------------------------- diff --git a/examples/extended/exoticphysics/ucn/ExUCN.cc b/examples/extended/exoticphysics/ucn/ExUCN.cc index 5d9c0a46d5..e070b22b91 100644 --- a/examples/extended/exoticphysics/ucn/ExUCN.cc +++ b/examples/extended/exoticphysics/ucn/ExUCN.cc @@ -43,11 +43,7 @@ #include "ExUCNDetectorConstruction.hh" #include "ExUCNActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIcommand.hh" @@ -82,20 +78,16 @@ int main(int argc,char** argv) G4String macro; G4String session; -#ifdef G4MULTITHREADED G4int nThreads = 0; -#endif G4long myseed = 1234; for ( G4int i=1; i 0 ) runManager->SetNumberOfThreads(nThreads); -#else - G4RunManager * runManager = new G4RunManager; -#endif // Seed the random number generator manually G4Random::setTheSeed(myseed); @@ -147,11 +135,11 @@ int main(int argc,char** argv) // Get the pointer to the User Interface manager // G4UImanager* UImanager = G4UImanager::GetUIpointer(); - + if ( macro.size() ) { // batch mode G4String command = "/control/execute "; - UImanager->ApplyCommand(command+macro); + UImanager->ApplyCommand(command+macro); } else { // interactive mode : define UI session @@ -166,7 +154,7 @@ int main(int argc,char** argv) // Free the store: user actions, physics_list and detector_description are // owned and deleted by the run manager, so they should not // be deleted in the main() program ! - + delete visManager; delete runManager; diff --git a/examples/extended/exoticphysics/ucn/ExUCN.out b/examples/extended/exoticphysics/ucn/ExUCN.out index 636063f5d0..b8fe18f547 100644 --- a/examples/extended/exoticphysics/ucn/ExUCN.out +++ b/examples/extended/exoticphysics/ucn/ExUCN.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,7 +16,7 @@ ***** Table : Nb of materials = 2 ***** - Material: G4_Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: G4_Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 21.800 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -37,7 +38,6 @@ - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 0.01 numVar= 8 Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... @@ -52,10 +52,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -107,7 +109,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_Ni Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma -1 MeV e- 1.45649 MeV e+ -1 MeV proton 100 keV + Energy thresholds : gamma -1 MeV e- 1.44302 MeV e+ -1 MeV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -1486,7 +1488,7 @@ Terminate current event processing. Run terminated. Run Summary Number of events processed : 1 - User=0.030000s Real=0.038753s Sys=0.000000s + User=0.030000s Real=0.037779s Sys=0.000000s Sum NoMT: 0 Sum NoMRT: 0 Sum NoMRCondition: 0 @@ -1502,6 +1504,9 @@ Sum No. E > V SnellTransmit: 0 Sum No. E > V MR SnellTransmit: 0 Sum No. E > V DiffuseTransmit: 0 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/exoticphysics/ucn/History b/examples/extended/exoticphysics/ucn/History index 4f29fa5cb6..cbf1987e6a 100644 --- a/examples/extended/exoticphysics/ucn/History +++ b/examples/extended/exoticphysics/ucn/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Nov 10, 2020 B. Morgan (ExUCN-V10-06-00) +- Migration to G4RunManagerFactory. + Nov 5, 2019 J.Apostolakis (ExUCN-V10-05-00) - Enabled use of Gravity in physics list ( setting flags in G4Transportation. ) diff --git a/examples/extended/field/BlineTracer/CMakeLists.txt b/examples/extended/field/BlineTracer/CMakeLists.txt index ad54518906..49cb3ce209 100644 --- a/examples/extended/field/BlineTracer/CMakeLists.txt +++ b/examples/extended/field/BlineTracer/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(BlineTracer) #---------------------------------------------------------------------------- diff --git a/examples/extended/field/BlineTracer/History b/examples/extended/field/BlineTracer/History index e2318632af..b1eb2b29ff 100644 --- a/examples/extended/field/BlineTracer/History +++ b/examples/extended/field/BlineTracer/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10th November 2020 Ben Morgan (BlineTracer-V10-06-00) +- Migration to G4RunManagerFactory. + 2nd May 2018 Ivana Hrivnacova (BlineTracer-V10-04-00) - Fixed compilation error (missing include) @@ -21,8 +24,8 @@ track of all tags. - Fixed shadowed declarations 8th November 2012 Ivana Hrivnacova (BlineTracer-V09-05-03) -- Fixed testBlineTracer: - now a physics list has to be instatiated first. +- Fixed testBlineTracer: + now a physics list has to be instatiated first. 21st September 2012 Ivana Hrivnacova (BlineTracer-V09-05-02) - Fixed compiler warning (unused variable in G4BlineEventAction.cc) diff --git a/examples/extended/field/BlineTracer/testBlineTracer.cc b/examples/extended/field/BlineTracer/testBlineTracer.cc index d042bbd9d1..10f42f0a62 100644 --- a/examples/extended/field/BlineTracer/testBlineTracer.cc +++ b/examples/extended/field/BlineTracer/testBlineTracer.cc @@ -24,26 +24,26 @@ // ******************************************************************** // // -// +// /// \file testBlineTracer.cc /// \brief Test program for the G4BlineTracer class #include "G4BlineTracer.hh" -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "FTFP_BERT.hh" // Test program which only instantiates the G4BlineTracer class. int main() { - // Construct the default run manager + // Construct a serial run manager // and set a physics list (otherwise a run action cannot be instatiated) - G4RunManager * runManager = new G4RunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); runManager->SetUserInitialization(new FTFP_BERT); // Instantiate the G4BlineTracer class G4BlineTracer* theBlineTool = new G4BlineTracer(); - + // delete it delete theBlineTool; } diff --git a/examples/extended/field/CMakeLists.txt b/examples/extended/field/CMakeLists.txt index e5a446d00c..3bb53119eb 100644 --- a/examples/extended/field/CMakeLists.txt +++ b/examples/extended/field/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all field examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(BlineTracer) add_subdirectory(field01) diff --git a/examples/extended/field/History b/examples/extended/field/History index ff1dc74457..1cbd98a2cc 100644 --- a/examples/extended/field/History +++ b/examples/extended/field/History @@ -14,6 +14,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +13th Nov 2020 B. Morgan (fieldex-V10-06-01) +- Enforce use of Serial RunManager for serial-only examples. + +3rd Nov 2020 B. Morgan (fieldex-V10-06-00) +- Support same CMake version range as core Geant4 + 31st Jan 2019 Ivana Hrivnacova (fieldex-V10-05-00) - Merged GitHub PR #4: all Boolean operators now return G4bool. @@ -24,7 +30,7 @@ track of all tags. - Grouping single ex tags for new API of PhysicsList needed for MT 14th Feb 2013 Ivana Hrivnacova (fieldex-V09-06-00) -- Applied coding guidelines in field01, 02, 03 +- Applied coding guidelines in field01, 02, 03 (data members initialization, separators) 17th Nov 2012 Ivana Hrivnacova (fieldex-V09-05-03) @@ -35,7 +41,7 @@ track of all tags. 18th Sep 2012 Ivana Hrivnacova (fieldex-V09-05-02) - Adding explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh where needed -- Replaced tabulators with space characters +- Replaced tabulators with space characters 17th Sep 2012 Peter Gumplinger (fieldex-V09-05-01) - remove G4TRACKING_ALLOC_EXPORT, G4DLLEXPORT and G4DLLIMPORT from @@ -44,7 +50,7 @@ track of all tags. 4th Sep 2012 Ivana Hrivnacova (fieldex-V09-05-00) - Updated CMakeLists.txt: adding visualization, copying macros, install target and comment lines -- Added .README files +- Added .README files 23rd Nov 2011 Peter Gumplinger (fieldex-V09-04-01) - Add README file to the new field example field06 and correct a small @@ -56,7 +62,7 @@ track of all tags. 19th Nov 2009 Peter Gumplinger (fieldex-V09-02-00) -------------------------------------------------- -- Add new field example field05. This example checks the so-called +- Add new field example field05. This example checks the so-called "spin-frozen" condition. There is a good article hep-ph/0012087v1. This article discusses about how to cancel the muon g-2 precession by applying an electric field. @@ -71,7 +77,7 @@ track of all tags. - Add new field example field04 to exhibit the way overlapping fields may be handled in Geant4. Thanks to Tom Roberts and Muons Inc. - G4BEAMLINE release 1.12 + G4BEAMLINE release 1.12 http://g4beamline.muonsinc.com 3rd May 2005 John Allison (fieldex-V07-00-03) @@ -86,8 +92,8 @@ Dec 3rd, 2004 Gabriele Cosmo (fieldex-V06-02-00) Mar 23rd, 2004 John Apostolakis (fieldex-V06-00-00) --------------------------------------------------- -- Group together fixes in: - field01 fieldex01-V06-00-00 and +- Group together fixes in: + field01 fieldex01-V06-00-00 and field03 fieldex03-V06-00-00 which fix common problem in SetField methods. - Created. diff --git a/examples/extended/field/field01/CMakeLists.txt b/examples/extended/field/field01/CMakeLists.txt index a81f2a9d30..b68cc3d013 100644 --- a/examples/extended/field/field01/CMakeLists.txt +++ b/examples/extended/field/field01/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(field01) #---------------------------------------------------------------------------- diff --git a/examples/extended/field/field01/field01.out b/examples/extended/field/field01/field01.out index e7149932d0..5757ab489f 100644 --- a/examples/extended/field/field01/field01.out +++ b/examples/extended/field/field01/field01.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -91,7 +91,7 @@ ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: Air density: 0.000 kg/m3 RadL: 28329263.098 km Nucl.Int.Length: 66178552.901 km + Material: Air density: 0.000 mg/cm3 RadL: 28329262.634 km Nucl.Int.Length: 66178558.148 km Imean: 85.664 eV temperature: 273.15 K pressure: 0.00 atm ---> Element: Nitrogen (N) Z = 7.0 N = 14 A = 14.010 g/mole @@ -121,7 +121,7 @@ ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -152,7 +152,7 @@ ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -208,11 +208,10 @@ G4ExplicitEuler is chosen. The minimal step is equal to 1 mm 2. Creating ChordFinder. - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 1 numVar= 6 3. Updating Field Manager. 4. Updating Field Manager. - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -233,10 +232,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -275,15 +276,340 @@ Some /vis commands (optionally) take a string to specify colour. G4DormandPrince745 Stepper is chosen The minimal step is equal to 1 mm 2. Creating ChordFinder. - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 1 numVar= 6 3. Updating Field Manager. F01FieldSetup::CreateStepperAndChordFinder() called. 1. Creating Stepper. G4DormandPrince745 Stepper is chosen The minimal step is equal to 0.1 mm 2. Creating ChordFinder. - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 0.1 numVar= 6 3. Updating Field Manager. + +==================================================================== + HADRONIC PROCESSES SUMMARY (verbose level 1) + +--------------------------------------------------- + Hadronic Processes for neutron + + Process: hadElastic + Model: hElasticCHIPS: 0 eV ---> 100 TeV + Cr_sctns: G4NeutronElasticXS: 0 eV ---> 100 TeV + + Process: neutronInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: G4NeutronInelasticXS: 0 eV ---> 100 TeV + + Process: nCapture + Model: nRadCapture: 0 eV ---> 100 TeV + Cr_sctns: G4NeutronCaptureXS: 0 eV ---> 100 TeV + + Process: nKiller + +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for GenericIon + + Process: ionInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + +--------------------------------------------------- + Hadronic Processes for He3 + + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + + Process: He3Inelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + +--------------------------------------------------- + Hadronic Processes for alpha + + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + + Process: alphaInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + +--------------------------------------------------- + Hadronic Processes for anti_He3 + + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: anti_He3Inelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: hFritiofCaptureAtRest + +--------------------------------------------------- + Hadronic Processes for anti_alpha + + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: anti_alphaInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: hFritiofCaptureAtRest + +--------------------------------------------------- + Hadronic Processes for anti_deuteron + + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: anti_deuteronInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: hFritiofCaptureAtRest + +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + +--------------------------------------------------- + Hadronic Processes for anti_neutron + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: anti_neutronInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: hFritiofCaptureAtRest + +--------------------------------------------------- + Hadronic Processes for anti_proton + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100.1 MeV + Model: AntiAElastic: 100 MeV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: anti_protonInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: hFritiofCaptureAtRest + +--------------------------------------------------- + Hadronic Processes for anti_triton + + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n + Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: anti_tritonInelastic + Model: FTFP: 0 eV /n ---> 100 TeV/n + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: hFritiofCaptureAtRest + +--------------------------------------------------- + Hadronic Processes for deuteron + + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + + Process: dInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + +--------------------------------------------------- + Hadronic Processes for e+ + + Process: electronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for e- + + Process: electronNuclear + Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for gamma + + Process: photonNuclear + Model: GammaNPreco: 0 eV ---> 200 MeV + Model: BertiniCascade: 199 MeV ---> 6 GeV + Model: TheoFSGenerator: 3 GeV ---> 100 TeV + Cr_sctns: PhotoNuclearXS: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for kaon+ + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: kaon+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for kaon- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: kaon-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hBertiniCaptureAtRest + +--------------------------------------------------- + Hadronic Processes for lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: lambdaInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for mu+ + + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for mu- + + Process: muonNuclear + Model: G4MuonVDNuclearModel: 0 eV ---> 1 PeV + Cr_sctns: KokoulinMuonNuclearXS: 0 eV ---> 100 TeV + + Process: muMinusCaptureAtRest + +--------------------------------------------------- + Hadronic Processes for pi+ + + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + + Process: pi+Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for pi- + + Process: hadElastic + Model: hElasticGlauber: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + + Process: pi-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + + Process: hBertiniCaptureAtRest + +--------------------------------------------------- + Hadronic Processes for proton + + Process: hadElastic + Model: hElasticCHIPS: 0 eV ---> 100 TeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + + Process: protonInelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for sigma- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: sigma-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hBertiniCaptureAtRest + +--------------------------------------------------- + Hadronic Processes for triton + + Process: hadElastic + Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + + Process: tInelastic + Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n + Model: FTFP: 3 GeV/n ---> 100 TeV/n + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV + +================================================================ ======================================================================= ====== Pre-compound/De-excitation Physics Parameters ======== ======================================================================= @@ -307,7 +633,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -333,15 +658,18 @@ See commands in /vis/modeling/trajectories/ for other options. Step# X Y Z Direction x dir y dir z KineE dEStep StepLeng TrakLeng Volume Process 0 0 fm 0 fm 21.9895 m 0 0 -1 500 MeV 0 eV 0 fm 0 fm World initStep - 1 0 fm 1.01183 m 21.9895 m 0 8.14791e-13 1 500 MeV0.00387484 eV 1.58938 m 1.58938 m World Transportation - 2 0 fm 1.01183 m 21.9905 m 0 -0.00197661 0.999998 500 MeV2.43795e-06 eV 1 mm 1.59038 m Absorber Transportation - 3 0 fm 1.01172 m 22 m 0 -0.0207544 0.999785 500 MeV2.31624e-05 eV 9.50075 mm 1.59988 m OutOfWorld Transportation + 1 0 fm 1.01183 m 21.9895 m 0 8.14791e-13 1 500 MeV0.0038748 eV 1.58938 m 1.58938 m World Transportation + 2 0 fm 1.01183 m 21.9905 m 0 -0.00197661 0.999998 500 MeV2.43793e-06 eV 1 mm 1.59038 m Absorber Transportation + 3 0 fm 1.01172 m 22 m 0 -0.0207544 0.999785 500 MeV2.31622e-05 eV 9.50075 mm 1.59988 m OutOfWorld Transportation Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.001100s Sys=0.000000s + User=0.000000s Real=0.001360s Sys=0.000000s G4Transportation: Statistics for looping particles No looping tracks found or killed. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ========= Table of registered couples ============================ @@ -370,9 +698,12 @@ Step# X Y Z Direction x dir y dir Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000169s Sys=0.000000s + User=0.000000s Real=0.000168s Sys=0.000000s G4Transportation: Statistics for looping particles No looping tracks found or killed. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ========= Table of registered couples ============================ @@ -395,15 +726,18 @@ Index : 0 used in the geometry : Yes Step# X Y Z Direction x dir y dir z KineE dEStep StepLeng TrakLeng Volume Process 0 0 fm 0 fm 21.9895 m 0 0 -1 200 MeV 0 eV 0 fm 0 fm World initStep - 1 0 fm 40.5352 cm 21.9895 m 0 -2.20161e-09 1 200 MeV0.00143691 eV 63.6725 cm 63.6725 cm World Transportation - 2 0 fm 40.5349 cm 21.9905 m 0 -0.00493399 0.999988 200 MeV2.25673e-06 eV 1 mm 63.7725 cm Absorber Transportation - 3 0 fm 40.5079 cm 22 m 0 -0.0518069 0.998657 200 MeV2.14495e-05 eV 9.50471 mm 64.723 cm OutOfWorld Transportation + 1 0 fm 40.5352 cm 21.9895 m 0 -2.20161e-09 1 200 MeV0.00143689 eV 63.6725 cm 63.6725 cm World Transportation + 2 0 fm 40.5349 cm 21.9905 m 0 -0.00493399 0.999988 200 MeV2.2567e-06 eV 1 mm 63.7725 cm Absorber Transportation + 3 0 fm 40.5079 cm 22 m 0 -0.0518069 0.998657 200 MeV2.14492e-05 eV 9.50471 mm 64.723 cm OutOfWorld Transportation Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000169s Sys=0.000000s + User=0.000000s Real=0.000144s Sys=0.000000s G4Transportation: Statistics for looping particles No looping tracks found or killed. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ========= Table of registered couples ============================ @@ -426,15 +760,18 @@ Index : 0 used in the geometry : Yes Step# X Y Z Direction x dir y dir z KineE dEStep StepLeng TrakLeng Volume Process 0 0 fm 0 fm 21.9895 m 0 0 -1 100 MeV 0 eV 0 fm 0 fm World initStep - 1 0 fm 20.319 cm 21.9895 m 5.03276e-08 3.37364e-08 1 100 MeV0.000676643 eV 31.9182 cm 31.9182 cm World Transportation - 2 50328.4 fm 20.3185 cm 21.9905 m 5.03276e-08 -0.00984295 0.999952 100 MeV2.21971e-06 eV 1.04707 mm 32.0229 cm Absorber Transportation - 3 5.29388 Ang 20.2645 cm 22 m 1.48908e-07 -0.103352 0.994645 100 MeV2.03474e-05 eV 9.59813 mm 32.9827 cm OutOfWorld Transportation + 1 0 fm 20.319 cm 21.9895 m 5.03276e-08 3.37364e-08 1 100 MeV0.000676633 eV 31.9182 cm 31.9182 cm World Transportation + 2 50328.4 fm 20.3185 cm 21.9905 m 5.03276e-08 -0.00984295 0.999952 100 MeV2.21968e-06 eV 1.04707 mm 32.0229 cm Absorber Transportation + 3 5.29388 Ang 20.2645 cm 22 m 1.48908e-07 -0.103352 0.994645 100 MeV2.03471e-05 eV 9.59814 mm 32.9827 cm OutOfWorld Transportation Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000201s Sys=0.000000s + User=0.000000s Real=0.000185s Sys=0.000000s G4Transportation: Statistics for looping particles No looping tracks found or killed. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ========= Table of registered couples ============================ @@ -457,21 +794,23 @@ Index : 0 used in the geometry : Yes Step# X Y Z Direction x dir y dir z KineE dEStep StepLeng TrakLeng Volume Process 0 0 fm 0 fm 21.9895 m 0 0 -1 50 MeV 0 eV 0 fm 0 fm World initStep - 1 0 fm 10.2108 cm 21.9895 m -8.42505e-09 -9.58672e-08 1 50 MeV0.000318191 eV 16.0399 cm 16.0399 cm World Transportation - 2 -8425.59 fm 10.2098 cm 21.9905 m -2.94296e-08 -0.0195872 0.999808 50 MeV2.02389e-06 eV 1.02024 mm 16.142 cm Absorber Transportation - 3 -2.90229 Ang 10.1016 cm 22 m -2.94296e-08 -0.205667 0.978622 50 MeV1.9007e-05 eV 9.58138 mm 17.1001 cm OutOfWorld Transportation + 1 0 fm 10.2108 cm 21.9895 m -8.42505e-09 -9.58672e-08 1 50 MeV0.000318195 eV 16.0403 cm 16.0403 cm World Transportation + 2 -8425.59 fm 10.2098 cm 21.9905 m -2.94296e-08 -0.0195872 0.999808 50 MeV2.02392e-06 eV 1.02026 mm 16.1423 cm Absorber Transportation + 3 -2.90229 Ang 10.1016 cm 22 m -2.94296e-08 -0.205667 0.978622 50 MeV1.90072e-05 eV 9.58159 mm 17.1005 cm OutOfWorld Transportation Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000155s Sys=0.000000s + User=0.000000s Real=0.000136s Sys=0.000000s G4Transportation: Statistics for looping particles No looping tracks found or killed. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. F01FieldSetup::CreateStepperAndChordFinder() called. 1. Creating Stepper. G4DormandPrince745 Stepper is chosen The minimal step is equal to 0.1 mm 2. Creating ChordFinder. - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 0.1 numVar= 6 3. Updating Field Manager. Setting Field strength to (1000,0,0) Gauss. @@ -496,15 +835,18 @@ Index : 0 used in the geometry : Yes Step# X Y Z Direction x dir y dir z KineE dEStep StepLeng TrakLeng Volume Process 0 0 fm 0 fm 21.9895 m 0 0 -1 50 MeV 0 eV 0 fm 0 fm World initStep - 1 0 fm 3.36956 m 21.9895 m 5.03344e-08 4.10621e-08 1 50 MeV0.0104997 eV 5.29289 m 5.29289 m World Transportation - 2 50334.4 fm 3.36956 m 21.9905 m 2.36242e-08 -0.000593528 1 50 MeV2.02389e-06 eV 1.02024 mm 5.29391 m Absorber Transportation - 3 2.74766 Ang 3.36953 m 22 m 1.69481e-08 -0.00623228 0.999981 50 MeV1.88457e-05 eV 9.50007 mm 5.30341 m OutOfWorld Transportation + 1 0 fm 3.36956 m 21.9895 m 5.03344e-08 4.10621e-08 1 50 MeV0.0104996 eV 5.2929 m 5.2929 m World Transportation + 2 50334.4 fm 3.36956 m 21.9905 m 2.97687e-07 -0.000593498 1 50 MeV2.02392e-06 eV 1.02026 mm 5.29392 m Absorber Transportation + 3 2.87839 nm 3.36953 m 22 m 5.20032e-07 -0.00623232 0.999981 50 MeV1.88455e-05 eV 9.50007 mm 5.30342 m OutOfWorld Transportation Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000218s Sys=0.000000s + User=0.000000s Real=0.000161s Sys=0.000000s G4Transportation: Statistics for looping particles No looping tracks found or killed. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ========= Table of registered couples ============================ @@ -533,9 +875,12 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 100 - User=0.010000s Real=0.008803s Sys=0.000000s + User=0.010000s Real=0.008762s Sys=0.000000s G4Transportation: Statistics for looping particles No looping tracks found or killed. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # /calor/setAbsMat Xe20CO2 /calor/setWorldMat Kr20CO2 @@ -587,7 +932,7 @@ Index : 1 used in the geometry : Yes Index : 2 used in the geometry : Yes Material : Xe20CO2 Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 990 eV e- 1.2778733697294 keV e+ 1.2558672945243 keV proton 70 keV + Energy thresholds : gamma 990 eV e- 1.2894289741487 keV e+ 1.2671050631168 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -600,14 +945,17 @@ Index : 2 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1 - User=0.010000s Real=0.014830s Sys=0.010000s + User=0.010000s Real=0.008322s Sys=0.000000s G4Transportation: Statistics for looping particles No looping tracks found or killed. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 12 of which, static: 0 -Dynamic pools deleted: 12 / Total memory freed: 0.33 MB +Dynamic pools deleted: 12 / Total memory freed: 0.28 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/field/field02/CMakeLists.txt b/examples/extended/field/field02/CMakeLists.txt index f37b3a49af..b0f961b986 100644 --- a/examples/extended/field/field02/CMakeLists.txt +++ b/examples/extended/field/field02/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(field02) #---------------------------------------------------------------------------- diff --git a/examples/extended/field/field02/field02.out b/examples/extended/field/field02/field02.out index 5d4441c339..e4974eb18f 100644 --- a/examples/extended/field/field02/field02.out +++ b/examples/extended/field/field02/field02.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -121,7 +121,7 @@ ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -152,7 +152,7 @@ ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -205,7 +205,7 @@ F02ElectricFieldSetup: The minimal step is equal to 0.01 mm G4ClassicalRK4 is called - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -226,10 +226,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -290,10 +292,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -317,10 +320,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -348,9 +352,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -364,14 +368,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -380,9 +384,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -394,9 +398,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -407,9 +411,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -423,14 +427,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -439,9 +443,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -455,14 +459,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -471,9 +475,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -487,14 +491,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -503,9 +507,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -520,14 +524,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -536,9 +540,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -553,14 +557,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -569,9 +573,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -585,14 +589,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -601,9 +605,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -617,14 +621,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -653,6 +657,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -727,6 +753,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -838,8 +877,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -904,8 +943,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -946,7 +985,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -989,9 +1027,17 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 238 um -10.4 cm 1.9 cm 12.3 keV 0 eV 0 fm 0 fm World initStep - 1 244 um -10.5 cm 1.89 cm 2.37 MeV 133 eV 246 um 246 um World eIoni - 2 -104 um -14.7 cm 2 cm 425 MeV 4.31 keV 4.24 cm 4.26 cm World eIoni - 3 -330 um -20 cm 2.22 cm 956 MeV 13.1 keV 5.31 cm 9.57 cm OutOfWorldTransportation + 1 244 um -10.5 cm 1.89 cm 2.36 MeV 117 eV 246 um 246 um World eIoni + 2 27.5 um -20 cm 1.85 cm 956 MeV 16.8 keV 9.56 cm 9.59 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 244 um -10.5 cm 1.89 cm 13.9 keV 0 eV 0 fm 0 fm World initStep + 1 268 um -10.5 cm 1.89 cm 7.09 MeV 1.67 keV 780 um 780 um World eIoni + 2 -1.61 mm -20 cm 1.78 cm 954 MeV 15.4 keV 9.48 cm 9.56 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 @@ -999,8 +1045,8 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 193 um -7.4 cm 1.73 cm 1.41 keV 0 eV 0 fm 0 fm World initStep - 1 197 um -7.4 cm 1.73 cm 353 keV 1.41 keV 88.1 um 88.1 um World eIoni - 2 221 um -20 cm 1.73 cm 1.26 GeV 23.6 keV 13.5 cm 13.5 cm OutOfWorldTransportation + 1 197 um -7.4 cm 1.73 cm 354 keV 1.41 keV 88.1 um 88.1 um World eIoni + 2 221 um -20 cm 1.73 cm 1.26 GeV 25.9 keV 13.5 cm 13.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -1008,9 +1054,9 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 74.9 um -3.07 cm 1.33 cm 1.08 keV 0 eV 0 fm 0 fm World initStep - 1 76.2 um -3.07 cm 1.33 cm 226 keV 1.08 keV 59.2 um 59.2 um World eIoni - 2 3.42 cm -14.3 cm -1.98 cm 1.12 GeV 29.3 keV 13 cm 13 cm World eIoni - 3 6.15 cm -19 cm -2.37 cm 1.6 GeV 10.9 keV 5.48 cm 18.5 cm OutOfWorldTransportation + 1 76.2 um -3.07 cm 1.33 cm 225 keV 1.08 keV 59.2 um 59.2 um World eIoni + 2 -3.58 cm -14.3 cm 4.44 cm 1.12 GeV 28 keV 13 cm 13 cm World eIoni + 3 -5.26 cm -19.3 cm 4.24 cm 1.62 GeV 16.7 keV 5.29 cm 18.3 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1018,652 +1064,245 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -130 um -4.83 cm 1.53 cm 532 MeV 10.3 keV 5.31 cm 5.31 cm World eIoni - 2 -267 um -14.3 cm 2.05 cm 1.48 GeV 17.5 keV 9.53 cm 14.8 cm World eIoni - 3 -294 um -17.8 cm 2.15 cm 1.83 GeV 7.23 keV 3.43 cm 18.3 cm World eIoni - 4 -312 um -20 cm 2.21 cm 2.05 GeV 6.2 keV 2.23 cm 20.5 cm OutOfWorldTransportation + 1 0 fm -20 cm 2.22 cm 2.05 GeV 40 keV 20.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 48 um -2.97 cm 1.33 cm 347 MeV 4.71 keV 3.43 cm 3.43 cm World eIoni + 2 94.9 um -17.7 cm 2.17 cm 1.82 GeV 32.3 keV 14.8 cm 18.2 cm World eIoni + 3 96.8 um -18.4 cm 2.19 cm 1.89 GeV 864 eV 6.54 mm 18.9 cm World eIoni + 4 101 um -19.9 cm 2.22 cm 2.04 GeV 2.86 keV 1.51 cm 20.4 cm World eIoni + 5 101 um -20 cm 2.23 cm 2.05 GeV 101 eV 1.04 mm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 101 um -19.9 cm 2.22 cm 2.39 keV 0 eV 0 fm 0 fm World initStep + 1 109 um -19.9 cm 2.22 cm 868 keV 2.39 keV 201 um 201 um World eIoni + 2 116 um -19.9 cm 2.22 cm 3.76 MeV 0 eV 290 um 491 um World eIoni + 3 124 um -20 cm 2.22 cm 10.5 MeV 76.4 eV 670 um 1.16 mm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -294 um -17.8 cm 2.15 cm 1.45 keV 0 eV 0 fm 0 fm World initStep - 1 -298 um -17.8 cm 2.15 cm 370 keV 1.45 keV 91.9 um 91.9 um World eIoni - 2 -313 um -20 cm 2.15 cm 223 MeV 5.07 keV 2.25 cm 2.26 cm OutOfWorldTransportation + 0 96.8 um -18.4 cm 2.19 cm 1.13 keV 0 eV 0 fm 0 fm World initStep + 1 97.9 um -18.4 cm 2.19 cm 245 keV 1.13 keV 63.7 um 63.7 um World eIoni + 2 104 um -20 cm 2.19 cm 162 MeV 3.82 keV 1.64 cm 1.65 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -267 um -14.3 cm 2.05 cm 2.57 keV 0 eV 0 fm 0 fm World initStep - 1 -276 um -14.3 cm 2.05 cm 986 keV 2.57 keV 226 um 226 um World eIoni - 2 -410 um -15 cm 2.04 cm 64.7 MeV 434 eV 6.38 mm 6.61 mm World eIoni - 3 -432 um -16.9 cm 2 cm 251 MeV 3.55 keV 1.86 cm 2.52 cm World eIoni - 4 -456 um -20 cm 1.98 cm 566 MeV 3.99 keV 3.15 cm 5.67 cm OutOfWorldTransportation + 0 94.9 um -17.7 cm 2.17 cm 1.14 keV 0 eV 0 fm 0 fm World initStep + 1 96.4 um -17.7 cm 2.17 cm 247 keV 1.14 keV 64.1 um 64.1 um World eIoni + 2 106 um -20 cm 2.17 cm 227 MeV 5.14 keV 2.32 cm 2.32 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 48 um -2.97 cm 1.33 cm 1.45 keV 0 eV 0 fm 0 fm World initStep + 1 44.9 um -2.97 cm 1.33 cm 370 keV 1.45 keV 91.9 um 91.9 um World eIoni + 2 24.5 um -20 cm 1.32 cm 1.7 GeV 29 keV 18.7 cm 18.7 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 157 um -5.26 cm 1.58 cm 576 MeV 11 keV 5.74 cm 5.74 cm World eIoni + 2 487 um -20 cm 2.22 cm 2.05 GeV 31.8 keV 14.8 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 157 um -5.26 cm 1.58 cm 1.8 keV 0 eV 0 fm 0 fm World initStep + 1 159 um -5.26 cm 1.58 cm 531 keV 1.8 keV 128 um 128 um World eIoni + 2 170 um -20 cm 1.58 cm 1.47 GeV 26.5 keV 15.4 cm 15.4 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -166 um -5.43 cm 1.59 cm 593 MeV 9.29 keV 5.91 cm 5.91 cm World eIoni + 2 -211 um -9.74 cm 1.87 cm 1.02 GeV 9.39 keV 4.33 cm 10.2 cm World eIoni + 3 -270 um -17.6 cm 2.16 cm 1.81 GeV 15 keV 7.9 cm 18.1 cm World eIoni + 4 -283 um -20 cm 2.23 cm 2.05 GeV 4.03 keV 2.36 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -270 um -17.6 cm 2.16 cm 1.92 keV 0 eV 0 fm 0 fm World initStep + 1 -276 um -17.6 cm 2.16 cm 596 keV 1.92 keV 142 um 142 um World eIoni + 2 -300 um -20 cm 2.16 cm 236 MeV 3.14 keV 2.37 cm 2.38 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -211 um -9.74 cm 1.87 cm 2.52 keV 0 eV 0 fm 0 fm World initStep + 1 -207 um -9.75 cm 1.87 cm 951 keV 2.52 keV 219 um 219 um World eIoni + 2 -188 um -10.1 cm 1.88 cm 39.5 MeV 1.28 keV 3.85 mm 4.07 mm World eIoni + 3 -358 um -12.6 cm 1.9 cm 290 MeV 2.54 keV 2.51 cm 2.92 cm World eIoni + 4 -479 um -20 cm 1.91 cm 1.03 GeV 16.1 keV 7.35 cm 10.3 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -432 um -16.9 cm 2 cm 1 keV 0 eV 0 fm 0 fm World initStep - 1 -432 um -16.9 cm 2 cm 199 keV 1 keV 53.2 um 53.2 um World eIoni - 2 -431 um -20 cm 2 cm 315 MeV 6.13 keV 3.29 cm 3.29 cm OutOfWorldTransportation + 0 -358 um -12.6 cm 1.9 cm 2.21 keV 0 eV 0 fm 0 fm World initStep + 1 -364 um -12.7 cm 1.9 cm 760 keV 2.21 keV 177 um 177 um World eIoni + 2 -2.97 mm -16.2 cm 1.82 cm 354 MeV 5.61 keV 3.55 cm 3.56 cm World eIoni + 3 -4.84 mm -20 cm 1.72 cm 735 MeV 10.2 keV 3.82 cm 7.38 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -130 um -4.83 cm 1.53 cm 8.91 keV 0 eV 0 fm 0 fm World initStep - 1 -97 um -4.91 cm 1.53 cm 8.77 MeV 6.02 keV 1.61 mm 1.61 mm World eIoni - 2 -274 um -6.27 cm 1.63 cm 145 MeV 3 keV 1.54 cm 1.7 cm World eIoni - 3 -104 um -20 cm 1.66 cm 1.52 GeV 29.3 keV 13.7 cm 15.4 cm OutOfWorldTransportation + 0 -166 um -5.43 cm 1.59 cm 14.3 keV 0 eV 0 fm 0 fm World initStep + 1 -180 um -5.59 cm 1.59 cm 17 MeV 3.93 keV 2.39 mm 2.39 mm World eIoni + 2 -1.52 mm -6.07 cm 1.52 cm 65.3 MeV 2.13 keV 5.11 mm 7.5 mm World eIoni + 3 -4.03 mm -18.3 cm 1.39 cm 1.29 GeV 20.9 keV 12.2 cm 13 cm World eIoni + 4 -4.06 mm -18.9 cm 1.39 cm 1.35 GeV 873 eV 6.14 mm 13.6 cm World eIoni + 5 -4.11 mm -20 cm 1.39 cm 1.46 GeV 1.57 keV 1.1 cm 14.7 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 6.77 um -9.63 cm 1.83 cm 1.01 GeV 16.5 keV 10.1 cm 10.1 cm World eIoni - 2 120 um -20 cm 2.1 cm 2.05 GeV 25 keV 10.4 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.77 um -9.63 cm 1.83 cm 2.65 keV 0 eV 0 fm 0 fm World initStep - 1 -2.56 um -9.64 cm 1.83 cm 1.04 MeV 2.65 keV 239 um 239 um World eIoni - 2 -7.09 um -9.67 cm 1.83 cm 4.01 MeV 18.9 eV 297 um 535 um World eIoni - 3 -30.6 um -20 cm 1.83 cm 1.04 GeV 13.4 keV 10.3 cm 10.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -747 nm -1.62 cm 1.07 cm 212 MeV 3.78 keV 2.07 cm 2.07 cm World eIoni - 2 309 um -10.9 cm 1.93 cm 1.14 GeV 18.9 keV 9.33 cm 11.4 cm World eIoni - 3 432 um -20 cm 2.24 cm 2.05 GeV 19.8 keV 9.1 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 309 um -10.9 cm 1.93 cm 5.07 keV 0 eV 0 fm 0 fm World initStep - 1 291 um -10.9 cm 1.93 cm 3.24 MeV 2.36 keV 634 um 634 um World eIoni - 2 -1.78 mm -17.9 cm 1.63 cm 696 MeV 9.75 keV 6.97 cm 7.03 cm World eIoni - 3 -1.66 mm -20 cm 1.53 cm 910 MeV 4.29 keV 2.15 cm 9.18 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -747 nm -1.62 cm 1.07 cm 1.82 keV 0 eV 0 fm 0 fm World initStep - 1 -6.59 um -1.63 cm 1.07 cm 545 keV 1.82 keV 130 um 130 um World eIoni - 2 -39.4 um -20 cm 1.07 cm 1.84 GeV 38 keV 19.3 cm 19.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 336 um -10.4 cm 1.92 cm 1.09 GeV 26.1 keV 10.9 cm 10.9 cm World eIoni - 2 376 um -12.5 cm 2.02 cm 1.3 GeV 4.72 keV 2.19 cm 13 cm World eIoni - 3 469 um -20 cm 2.25 cm 2.05 GeV 22 keV 7.46 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 376 um -12.5 cm 2.02 cm 1.59 keV 0 eV 0 fm 0 fm World initStep - 1 378 um -12.6 cm 2.02 cm 432 keV 1.59 keV 106 um 106 um World eIoni - 2 389 um -20 cm 2.01 cm 745 MeV 14.1 keV 7.67 cm 7.68 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 336 um -10.4 cm 1.92 cm 1.93 keV 0 eV 0 fm 0 fm World initStep - 1 333 um -10.4 cm 1.92 cm 603 keV 1.93 keV 143 um 143 um World eIoni - 2 317 um -20 cm 1.93 cm 964 MeV 14.9 keV 9.86 cm 9.87 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 19.1 um -1.64 cm 1.07 cm 214 MeV 4.25 keV 2.09 cm 2.09 cm World eIoni - 2 37 um -6.1 cm 1.64 cm 660 MeV 9.1 keV 4.5 cm 6.59 cm World eIoni - 3 36.3 um -20 cm 2.2 cm 2.05 GeV 30.7 keV 13.9 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 37 um -6.1 cm 1.64 cm 9.5 keV 0 eV 0 fm 0 fm World initStep - 1 74.5 um -6.2 cm 1.64 cm 9.68 MeV 4.48 keV 1.7 mm 1.7 mm World eIoni - 2 -250 um -6.22 cm 1.58 cm 12.1 MeV 74.3 eV 721 um 2.42 mm World eIoni - 3 -2.7 mm -20 cm 1.15 cm 1.39 GeV 27.9 keV 13.8 cm 14.1 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 19.1 um -1.64 cm 1.07 cm 1.06 keV 0 eV 0 fm 0 fm World initStep - 1 19.9 um -1.64 cm 1.07 cm 221 keV 1.06 keV 58 um 58 um World eIoni - 2 -2.27 cm -12.5 cm -2.93 cm 1.09 GeV 30.4 keV 12.5 cm 12.6 cm World eIoni - 3 -4.63 cm -19.5 cm -7.37 cm 1.78 GeV 18.1 keV 8.63 cm 21.2 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 38.7 um -1.79 cm 1.11 cm 229 MeV 4.93 keV 2.24 cm 2.24 cm World eIoni - 2 218 um -10.7 cm 1.92 cm 1.12 GeV 20.1 keV 8.98 cm 11.2 cm World eIoni - 3 289 um -20 cm 2.23 cm 2.05 GeV 17.3 keV 9.28 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 218 um -10.7 cm 1.92 cm 1.32 keV 0 eV 0 fm 0 fm World initStep - 1 215 um -10.7 cm 1.92 cm 316 keV 1.32 keV 79.7 um 79.7 um World eIoni - 2 196 um -20 cm 1.92 cm 928 MeV 22 keV 9.87 cm 9.88 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 38.7 um -1.79 cm 1.11 cm 1.08 keV 0 eV 0 fm 0 fm World initStep - 1 37.4 um -1.79 cm 1.11 cm 228 keV 1.08 keV 59.7 um 59.7 um World eIoni - 2 2.86 cm -13.2 cm -2.79 cm 1.14 GeV 34.8 keV 13.2 cm 13.2 cm World eIoni - 3 6.75 cm -18.8 cm -7.49 cm 1.7 GeV 17.5 keV 8.35 cm 21.6 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 98.6 um -17.7 cm 2.07 cm 1.82 GeV 37.4 keV 18.2 cm 18.2 cm World eIoni - 2 86.5 um -20 cm 2.12 cm 2.05 GeV 4.95 keV 2.32 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 98.6 um -17.7 cm 2.07 cm 3.26 keV 0 eV 0 fm 0 fm World initStep - 1 110 um -17.7 cm 2.07 cm 1.45 MeV 1.47 keV 261 um 261 um World eIoni - 2 -917 um -20 cm 2.08 cm 232 MeV 2.03 keV 2.33 cm 2.36 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -58.6 um -2.53 cm 1.25 cm 303 MeV 8.66 keV 2.99 cm 2.99 cm World eIoni - 2 -109 um -10.4 cm 1.9 cm 1.09 GeV 17.1 keV 7.86 cm 10.9 cm World eIoni - 3 -148 um -19.3 cm 2.2 cm 1.98 GeV 16.8 keV 8.97 cm 19.8 cm World eIoni - 4 -152 um -20 cm 2.22 cm 2.05 GeV 2.65 keV 6.74 mm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -148 um -19.3 cm 2.2 cm 4.55 keV 0 eV 0 fm 0 fm World initStep - 1 -146 um -19.4 cm 2.2 cm 2.7 MeV 4.55 keV 605 um 605 um World eIoni - 2 -137 um -19.5 cm 2.2 cm 17.4 MeV 168 eV 1.47 mm 2.07 mm World eIoni - 3 -115 um -20 cm 2.2 cm 67.6 MeV 252 eV 5.02 mm 7.09 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -109 um -10.4 cm 1.9 cm 1.18 keV 0 eV 0 fm 0 fm World initStep - 1 -110 um -10.4 cm 1.9 cm 261 keV 1.18 keV 67.3 um 67.3 um World eIoni - 2 -119 um -20 cm 1.9 cm 964 MeV 19.2 keV 10.6 cm 10.6 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -58.6 um -2.53 cm 1.25 cm 2.58 keV 0 eV 0 fm 0 fm World initStep - 1 -50.7 um -2.53 cm 1.25 cm 992 keV 2.58 keV 228 um 228 um World eIoni - 2 3.68 um -2.97 cm 1.26 cm 44.1 MeV 549 eV 4.32 mm 4.54 mm World eIoni - 3 7.51 um -4.76 cm 1.27 cm 224 MeV 3.65 keV 1.8 cm 2.25 cm World eIoni - 4 -40.3 um -20 cm 1.28 cm 1.75 GeV 30.2 keV 15.2 cm 17.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 7.51 um -4.76 cm 1.27 cm 2.09 keV 0 eV 0 fm 0 fm World initStep - 1 10.4 um -4.77 cm 1.27 cm 688 keV 2.09 keV 162 um 162 um World eIoni - 2 1.81 mm -7.81 cm 1.11 cm 305 MeV 3.35 keV 3.06 cm 3.07 cm World eIoni - 3 6.7 mm -20 cm 1 cm 1.52 GeV 22.1 keV 12.2 cm 15.3 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -29.9 um -3.88 cm 1.45 cm 438 MeV 7.35 keV 4.36 cm 4.36 cm World eIoni - 2 -152 um -18.1 cm 2.2 cm 1.86 GeV 30 keV 14.2 cm 18.6 cm World eIoni - 3 -155 um -20 cm 2.25 cm 2.05 GeV 6.43 keV 1.92 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -152 um -18.1 cm 2.2 cm 1.29 keV 0 eV 0 fm 0 fm World initStep - 1 -149 um -18.1 cm 2.2 cm 302 keV 1.29 keV 76.6 um 76.6 um World eIoni - 2 -133 um -20 cm 2.2 cm 192 MeV 3.28 keV 1.94 cm 1.95 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -29.9 um -3.88 cm 1.45 cm 1.02 keV 0 eV 0 fm 0 fm World initStep - 1 -27.1 um -3.88 cm 1.45 cm 207 keV 1.02 keV 54.9 um 54.9 um World eIoni - 2 4.15 cm -13.7 cm 1.54 cm 979 MeV 26.3 keV 11.3 cm 11.3 cm World eIoni - 3 4.59 cm -19.5 cm 1.54 cm 1.56 GeV 12.5 keV 5.81 cm 17.1 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -20.1 um -1.06 cm 9.09 mm 156 MeV 2.86 keV 1.49 cm 1.49 cm World eIoni - 2 -85.4 um -13.5 cm 2.03 cm 1.4 GeV 28.2 keV 12.5 cm 14 cm World eIoni - 3 -186 um -20 cm 2.22 cm 2.05 GeV 15.3 keV 6.49 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -85.4 um -13.5 cm 2.03 cm 2.36 keV 0 eV 0 fm 0 fm World initStep - 1 -92.6 um -13.5 cm 2.03 cm 849 keV 2.36 keV 197 um 197 um World eIoni - 2 -114 um -13.7 cm 2.03 cm 14.9 MeV 37.9 eV 1.4 mm 1.6 mm World eIoni - 3 -339 um -20 cm 2.02 cm 649 MeV 10.2 keV 6.34 cm 6.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -20.1 um -1.06 cm 9.09 mm 4.78 keV 0 eV 0 fm 0 fm World initStep - 1 -35.9 um -1.09 cm 9.08 mm 2.94 MeV 4.78 keV 659 um 659 um World eIoni - 2 30.5 um -2.06 cm 8.96 mm 99.9 MeV 2.61 keV 9.69 mm 1.04 cm World eIoni - 3 1.26 um -5.82 cm 8.21 mm 476 MeV 9.01 keV 3.76 cm 4.8 cm World eIoni - 4 28.5 um -20 cm 7.52 mm 1.89 GeV 31.3 keV 14.2 cm 19 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 1.26 um -5.82 cm 8.21 mm 1.74 keV 0 eV 0 fm 0 fm World initStep - 1 2.53 um -5.83 cm 8.22 mm 503 keV 1.74 keV 121 um 121 um World eIoni - 2 9.72 um -20 cm 8.25 mm 1.42 GeV 18.9 keV 14.8 cm 14.8 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -37.1 um -1.93 cm 1.14 cm 243 MeV 6.74 keV 2.38 cm 2.38 cm World eIoni - 2 -73.1 um -12.3 cm 1.99 cm 1.28 GeV 15.9 keV 10.4 cm 12.8 cm World eIoni - 3 -80.2 um -20 cm 2.23 cm 2.05 GeV 11.9 keV 7.72 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -73.1 um -12.3 cm 1.99 cm 6.91 keV 0 eV 0 fm 0 fm World initStep - 1 -95.5 um -12.3 cm 1.98 cm 5.67 MeV 4.63 keV 1.23 mm 1.23 mm World eIoni - 2 335 um -13.9 cm 2.25 cm 159 MeV 3.18 keV 1.62 cm 1.74 cm World eIoni - 3 207 um -20 cm 2.34 cm 772 MeV 13.4 keV 6.12 cm 7.87 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -37.1 um -1.93 cm 1.14 cm 5.72 keV 0 eV 0 fm 0 fm World initStep - 1 -43.9 um -1.96 cm 1.14 cm 4.05 MeV 5.72 keV 908 um 908 um World eIoni - 2 -52.3 um -2.23 cm 1.15 cm 31 MeV 1.27 keV 2.7 mm 3.6 mm World eIoni - 3 -53.4 um -2.28 cm 1.15 cm 35.8 MeV 48.5 eV 483 um 4.09 mm World eIoni - 4 547 um -18.5 cm 1.07 cm 1.66 GeV 27 keV 16.2 cm 16.6 cm World eIoni - 5 547 um -18.6 cm 1.07 cm 1.67 GeV 528 eV 1.01 mm 16.7 cm World eIoni - 6 555 um -20 cm 1.05 cm 1.81 GeV 2.19 keV 1.38 cm 18.1 cm OutOfWorldTransportation + 0 -4.06 mm -18.9 cm 1.39 cm 2.28 keV 0 eV 0 fm 0 fm World initStep + 1 -4.06 mm -18.9 cm 1.39 cm 798 keV 2.28 keV 186 um 186 um World eIoni + 2 -4.06 mm -20 cm 1.39 cm 110 MeV 1.2 keV 1.09 cm 1.11 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 547 um -18.6 cm 1.07 cm 1.54 keV 0 eV 0 fm 0 fm World initStep - 1 543 um -18.6 cm 1.07 cm 408 keV 1.54 keV 100 um 100 um World eIoni - 2 523 um -20 cm 1.07 cm 138 MeV 1.98 keV 1.39 cm 1.4 cm OutOfWorldTransportation + 0 -4.03 mm -18.3 cm 1.39 cm 1.64 keV 0 eV 0 fm 0 fm World initStep + 1 -4.03 mm -18.3 cm 1.39 cm 453 keV 1.64 keV 110 um 110 um World eIoni + 2 -4.05 mm -20 cm 1.39 cm 171 MeV 3.86 keV 1.72 cm 1.73 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 47.9 um -14.9 cm 2.14 cm 1.54 GeV 33.5 keV 15.4 cm 15.4 cm World eIoni + 2 197 um -20 cm 2.35 cm 2.05 GeV 14.9 keV 5.14 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 47.9 um -14.9 cm 2.14 cm 2.04 keV 0 eV 0 fm 0 fm World initStep + 1 54.6 um -14.9 cm 2.14 cm 660 keV 2.04 keV 156 um 156 um World eIoni + 2 -824 um -16.4 cm 2.15 cm 158 MeV 3.27 keV 1.58 cm 1.59 cm World eIoni + 3 -1.74 mm -20 cm 2.21 cm 514 MeV 5.91 keV 3.56 cm 5.15 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -44 um -2.8 cm 1.29 cm 330 MeV 6.32 keV 3.26 cm 3.26 cm World eIoni + 2 -69.7 um -20 cm 2.21 cm 2.05 GeV 39 keV 17.2 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -44 um -2.8 cm 1.29 cm 4.08 keV 0 eV 0 fm 0 fm World initStep + 1 -29 um -2.82 cm 1.29 cm 2.22 MeV 4.08 keV 500 um 500 um World eIoni + 2 1.09 um -3.2 cm 1.29 cm 40.2 MeV 230 eV 3.8 mm 4.3 mm World eIoni + 3 -98.3 um -7.78 cm 1.28 cm 499 MeV 9.97 keV 4.58 cm 5.01 cm World eIoni + 4 -99 um -8.9 cm 1.28 cm 610 MeV 2.78 keV 1.11 cm 6.13 cm World eIoni + 5 -105 um -12.9 cm 1.28 cm 1.01 GeV 9.49 keV 4.03 cm 10.2 cm World eIoni + 6 -106 um -13.6 cm 1.28 cm 1.08 GeV 747 eV 6.62 mm 10.8 cm World eIoni + 7 -122 um -19.5 cm 1.28 cm 1.67 GeV 15 keV 5.88 cm 16.7 cm World eIoni + 8 -124 um -20 cm 1.28 cm 1.72 GeV 1.5 keV 5.37 mm 17.2 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -122 um -19.5 cm 1.28 cm 2.39 keV 0 eV 0 fm 0 fm World initStep + 1 -130 um -19.5 cm 1.28 cm 870 keV 2.39 keV 201 um 201 um World eIoni + 2 -148 um -20 cm 1.28 cm 53.8 MeV 725 eV 5.3 mm 5.5 mm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -106 um -13.6 cm 1.28 cm 3.1 keV 0 eV 0 fm 0 fm World initStep + 1 -117 um -13.6 cm 1.28 cm 1.37 MeV 3.1 keV 311 um 311 um World eIoni + 2 -120 um -13.6 cm 1.28 cm 2.73 MeV 0 eV 135 um 446 um World eIoni + 3 -147 um -20 cm 1.28 cm 642 MeV 16.7 keV 6.4 cm 6.44 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 547 um -18.5 cm 1.07 cm 40.6 keV 0 eV 0 fm 0 fm World initStep - 1 361 um -18.7 cm 1.11 cm 19.8 MeV 1.37 keV 2.03 mm 2.03 mm World eIoni - 2 323 um -18.8 cm 1.14 cm 31.4 MeV 149 eV 1.21 mm 3.24 mm World eIoni - 3 212 um -19.6 cm 1.23 cm 108 MeV 2.49 keV 7.71 mm 1.1 cm World msc - 4 186 um -20 cm 1.25 cm 149 MeV 372 eV 4.12 mm 1.51 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 5 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 323 um -18.8 cm 1.14 cm 2.63 keV 0 eV 0 fm 0 fm World initStep - 1 317 um -18.8 cm 1.14 cm 1.03 MeV 2.63 keV 235 um 235 um World eIoni - 2 318 um -18.9 cm 1.15 cm 10.5 MeV 107 eV 948 um 1.18 mm World eIoni - 3 330 um -20 cm 1.15 cm 118 MeV 1.7 keV 1.07 cm 1.19 cm OutOfWorldTransportation + 0 -105 um -12.9 cm 1.28 cm 1.21 keV 0 eV 0 fm 0 fm World initStep + 1 -102 um -12.9 cm 1.28 cm 274 keV 1.21 keV 70.3 um 70.3 um World eIoni + 2 -82.2 um -20 cm 1.28 cm 708 MeV 19.1 keV 7.51 cm 7.52 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -53.4 um -2.28 cm 1.15 cm 1.21 keV 0 eV 0 fm 0 fm World initStep - 1 -56.8 um -2.28 cm 1.15 cm 273 keV 1.21 keV 70.1 um 70.1 um World eIoni - 2 -2.3 cm -17.5 cm 2.59 mm 1.52 GeV 34.6 keV 17.6 cm 17.6 cm World eIoni - 3 -5.5 cm -19.2 cm -5.78 mm 1.69 GeV 6.85 keV 3.73 cm 21.3 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -711 um -15.1 cm 2.08 cm 1.56 GeV 28.3 keV 15.6 cm 15.6 cm World eIoni - 2 -836 um -20 cm 2.22 cm 2.05 GeV 10.7 keV 4.9 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -711 um -15.1 cm 2.08 cm 26.1 keV 0 eV 0 fm 0 fm World initStep - 1 -775 um -15.4 cm 2.07 cm 36.5 MeV 4.6 keV 4.42 mm 4.42 mm World eIoni - 2 1.03 mm -19.2 cm 1.52 cm 409 MeV 5.78 keV 3.8 cm 4.24 cm World eIoni - 3 1.13 mm -20 cm 1.48 cm 492 MeV 2.28 keV 8.35 mm 5.08 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 223 um -8.67 cm 1.79 cm 917 MeV 16.9 keV 9.16 cm 9.16 cm World eIoni - 2 224 um -8.72 cm 1.79 cm 922 MeV 81.8 eV 547 um 9.21 cm World eIoni - 3 273 um -20 cm 2.18 cm 2.05 GeV 24.2 keV 11.3 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 224 um -8.72 cm 1.79 cm 3.42 keV 0 eV 0 fm 0 fm World initStep - 1 236 um -8.74 cm 1.79 cm 1.49 MeV 3.42 keV 237 um 237 um World eIoni - 2 600 um -20 cm 1.71 cm 1.13 GeV 17.1 keV 11.3 cm 11.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 223 um -8.67 cm 1.79 cm 1.72 keV 0 eV 0 fm 0 fm World initStep - 1 229 um -8.67 cm 1.79 cm 494 keV 1.72 keV 119 um 119 um World eIoni - 2 259 um -20 cm 1.79 cm 1.13 GeV 19.1 keV 11.7 cm 11.8 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 668 um -14.8 cm 2.09 cm 1.53 GeV 29.8 keV 15.3 cm 15.3 cm World eIoni - 2 681 um -16.9 cm 2.16 cm 1.74 GeV 3.18 keV 2.14 cm 17.4 cm World eIoni - 3 699 um -20 cm 2.24 cm 2.05 GeV 6.04 keV 3.07 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 681 um -16.9 cm 2.16 cm 5 keV 0 eV 0 fm 0 fm World initStep - 1 666 um -17 cm 2.16 cm 3.18 MeV 5 keV 714 um 714 um World eIoni - 2 664 um -17.1 cm 2.16 cm 14 MeV 0 eV 1.08 mm 1.79 mm World eIoni - 3 670 um -20 cm 2.16 cm 307 MeV 4.95 keV 2.93 cm 3.11 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 668 um -14.8 cm 2.09 cm 16.5 keV 0 eV 0 fm 0 fm World initStep - 1 718 um -15 cm 2.09 cm 20.3 MeV 5.86 keV 2.71 mm 2.71 mm World eIoni - 2 307 um -15.1 cm 2.25 cm 33.8 MeV 306 eV 2.22 mm 4.93 mm World eIoni - 3 -789 um -17.4 cm 2.66 cm 260 MeV 4.16 keV 2.32 cm 2.81 cm World eIoni - 4 -1.18 mm -20 cm 2.8 cm 522 MeV 5.11 keV 2.63 cm 5.44 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -789 um -17.4 cm 2.66 cm 3.17 keV 0 eV 0 fm 0 fm World initStep - 1 -796 um -17.4 cm 2.67 cm 1.43 MeV 3.17 keV 323 um 323 um World eIoni - 2 -188 um -19.3 cm 2.65 cm 189 MeV 2.97 keV 1.87 cm 1.91 cm World eIoni - 3 -25.2 um -20 cm 2.66 cm 262 MeV 823 eV 7.37 mm 2.64 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -109 um -3.99 cm 1.45 cm 449 MeV 6.76 keV 4.47 cm 4.47 cm World eIoni - 2 -128 um -5.17 cm 1.57 cm 567 MeV 2.79 keV 1.19 cm 5.66 cm World eIoni - 3 -230 um -20 cm 2.23 cm 2.05 GeV 36.3 keV 14.8 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -128 um -5.17 cm 1.57 cm 2.06 keV 0 eV 0 fm 0 fm World initStep - 1 -127 um -5.18 cm 1.57 cm 668 keV 2.06 keV 158 um 158 um World eIoni - 2 -53.1 um -5.7 cm 1.59 cm 52.8 MeV 398 eV 5.22 mm 5.38 mm World eIoni - 3 379 um -17.4 cm 1.74 cm 1.22 GeV 25.4 keV 11.7 cm 12.2 cm World eIoni - 4 356 um -20 cm 1.74 cm 1.48 GeV 4 keV 2.63 cm 14.8 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 379 um -17.4 cm 1.74 cm 14.6 keV 0 eV 0 fm 0 fm World initStep - 1 374 um -17.4 cm 1.73 cm 4.85 MeV 724 eV 510 um 510 um World eIoni - 2 905 um -18.5 cm 1.74 cm 110 MeV 2.34 keV 1.05 cm 1.11 cm World eIoni - 3 996 um -20 cm 1.75 cm 264 MeV 2.67 keV 1.54 cm 2.64 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 5 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 905 um -18.5 cm 1.74 cm 2.43 keV 0 eV 0 fm 0 fm World initStep - 1 907 um -18.5 cm 1.74 cm 895 keV 2.43 keV 207 um 207 um World eIoni - 2 1.1 mm -19.5 cm 1.71 cm 107 MeV 1.26 keV 1.07 cm 1.09 cm World eIoni - 3 1.11 mm -20 cm 1.7 cm 154 MeV 633 eV 4.64 mm 1.55 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -53.1 um -5.7 cm 1.59 cm 1.26 keV 0 eV 0 fm 0 fm World initStep - 1 -51.7 um -5.7 cm 1.59 cm 294 keV 1.26 keV 74.7 um 74.7 um World eIoni - 2 -41.4 um -20 cm 1.59 cm 1.43 GeV 33.4 keV 16 cm 16 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -109 um -3.99 cm 1.45 cm 12.1 keV 0 eV 0 fm 0 fm World initStep - 1 -152 um -4.08 cm 1.45 cm 9.23 MeV 2.09 keV 1.13 mm 1.13 mm World eIoni - 2 -5.25 mm -13.6 cm 1.68 cm 958 MeV 14.9 keV 9.6 cm 9.71 cm World eBrem - 3 -6.01 mm -20 cm 1.53 cm 1.6 GeV 12.7 keV 6.42 cm 16.1 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -5.25 mm -13.6 cm 1.68 cm 624 keV 0 eV 0 fm 0 fm World initStep - 1 -6.32 mm -20 cm 1.49 cm 624 keV 0 eV 6.42 cm 6.42 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -96.4 um -4.52 cm 1.5 cm 502 MeV 6.84 keV 5 cm 5 cm World eIoni - 2 -59.1 um -16.9 cm 2.12 cm 1.74 GeV 27.7 keV 12.4 cm 17.4 cm World eIoni - 3 -42.6 um -20 cm 2.2 cm 2.05 GeV 5.85 keV 3.08 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -59.1 um -16.9 cm 2.12 cm 1 keV 0 eV 0 fm 0 fm World initStep - 1 -61.4 um -16.9 cm 2.12 cm 201 keV 1 keV 53.5 um 53.5 um World eIoni - 2 -78.5 um -20 cm 2.12 cm 308 MeV 7.07 keV 3.2 cm 3.21 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -96.4 um -4.52 cm 1.5 cm 6.52 keV 0 eV 0 fm 0 fm World initStep - 1 -85.2 um -4.57 cm 1.5 cm 5.11 MeV 6.52 keV 1.13 mm 1.13 mm World eIoni - 2 228 um -6.56 cm 1.51 cm 205 MeV 3.33 keV 2 cm 2.11 cm World eIoni - 3 409 um -9.59 cm 1.53 cm 507 MeV 6.2 keV 3.02 cm 5.13 cm World eBrem - 4 586 um -18.1 cm 1.55 cm 1.36 GeV 19 keV 8.53 cm 13.7 cm World eIoni - 5 610 um -20 cm 1.55 cm 1.55 GeV 4.78 keV 1.88 cm 15.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 586 um -18.1 cm 1.55 cm 1.02 keV 0 eV 0 fm 0 fm World initStep - 1 588 um -18.1 cm 1.55 cm 206 keV 1.02 keV 54.8 um 54.8 um World eIoni - 2 601 um -20 cm 1.55 cm 188 MeV 4.66 keV 1.93 cm 1.93 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 259 um -7.52 cm 1.75 cm 802 MeV 13.9 keV 8.01 cm 8.01 cm World eIoni - 2 481 um -20 cm 2.25 cm 2.05 GeV 27.1 keV 12.5 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 259 um -7.52 cm 1.75 cm 2.57 keV 0 eV 0 fm 0 fm World initStep - 1 266 um -7.53 cm 1.75 cm 982 keV 2.57 keV 226 um 226 um World eIoni - 2 252 um -7.85 cm 1.74 cm 32.8 MeV 573 eV 3.19 mm 3.41 mm WorldTransportation - 3 252 um -7.85 cm 1.74 cm 32.8 MeV 0 eV 0 fm 3.41 mm World eIoni - 4 54.1 um -11.8 cm 1.72 cm 432 MeV 8.91 keV 4 cm 4.34 cm World eIoni - 5 -235 um -20 cm 1.71 cm 1.25 GeV 15.5 keV 8.16 cm 12.5 cm OutOfWorldTransportation + 0 -99 um -8.9 cm 1.28 cm 1.81 keV 0 eV 0 fm 0 fm World initStep + 1 -101 um -8.9 cm 1.28 cm 537 keV 1.81 keV 129 um 129 um World eIoni + 2 -114 um -20 cm 1.28 cm 1.11 GeV 18 keV 11.5 cm 11.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 54.1 um -11.8 cm 1.72 cm 2.74 keV 0 eV 0 fm 0 fm World initStep - 1 54.4 um -11.9 cm 1.72 cm 1.1 MeV 2.74 keV 252 um 252 um World eIoni - 2 69 um -12 cm 1.72 cm 17 MeV 447 eV 1.59 mm 1.84 mm World eIoni - 3 207 um -18.5 cm 1.77 cm 667 MeV 8.2 keV 6.5 cm 6.69 cm World eIoni - 4 254 um -20 cm 1.78 cm 816 MeV 3.58 keV 1.48 cm 8.17 cm OutOfWorldTransportation + 0 -98.3 um -7.78 cm 1.28 cm 2.01 keV 0 eV 0 fm 0 fm World initStep + 1 -94.1 um -7.79 cm 1.28 cm 644 keV 2.01 keV 152 um 152 um World eIoni + 2 -5.81 mm -13.5 cm 9.89 mm 573 MeV 6.85 keV 5.79 cm 5.81 cm World eIoni + 3 -1.37 cm -20 cm 3.55 mm 1.22 GeV 13.6 keV 6.52 cm 12.3 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 3 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 207 um -18.5 cm 1.77 cm 3.28 keV 0 eV 0 fm 0 fm World initStep - 1 216 um -18.5 cm 1.77 cm 1.51 MeV 3.28 keV 342 um 342 um World eIoni - 2 363 um -19.4 cm 1.75 cm 92.1 MeV 793 eV 9.07 mm 9.41 mm World eIoni - 3 389 um -20 cm 1.75 cm 148 MeV 1.12 keV 5.63 mm 1.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 69 um -12 cm 1.72 cm 2.05 keV 0 eV 0 fm 0 fm World initStep - 1 64.4 um -12 cm 1.72 cm 666 keV 2.05 keV 157 um 157 um World eIoni - 2 68.5 um -14.9 cm 1.5 cm 293 MeV 4.4 keV 2.94 cm 2.96 cm World eIoni - 3 -47.8 um -20 cm 8.69 mm 799 MeV 10.3 keV 5.09 cm 8.06 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 68.5 um -14.9 cm 1.5 cm 1.13 keV 0 eV 0 fm 0 fm World initStep - 1 68.9 um -14.9 cm 1.5 cm 243 keV 1.13 keV 63 um 63 um World eIoni - 2 72.4 um -20 cm 1.49 cm 505 MeV 10.7 keV 5.31 cm 5.32 cm OutOfWorldTransportation + 0 -5.81 mm -13.5 cm 9.89 mm 2.08 keV 0 eV 0 fm 0 fm World initStep + 1 -5.82 mm -13.5 cm 9.89 mm 682 keV 2.08 keV 161 um 161 um World eIoni + 2 -5.81 mm -14.1 cm 9.73 mm 55.2 MeV 738 eV 5.46 mm 5.62 mm World eIoni + 3 -6.12 mm -20 cm 9.57 mm 648 MeV 12.8 keV 5.92 cm 6.49 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1671,135 +1310,148 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -187 um -6.46 cm 1.68 cm 696 MeV 12.4 keV 6.94 cm 6.94 cm World eIoni - 2 -187 um -6.47 cm 1.69 cm 697 MeV 0 eV 101 um 6.96 cm World eIoni - 3 -224 um -7.52 cm 1.76 cm 802 MeV 1.65 keV 1.05 cm 8.01 cm World eIoni - 4 -328 um -11.9 cm 1.98 cm 1.24 GeV 8.28 keV 4.37 cm 12.4 cm World eIoni - 5 -346 um -12.9 cm 2.02 cm 1.34 GeV 1.72 keV 9.88 mm 13.4 cm World eIoni - 6 -397 um -15.9 cm 2.12 cm 1.64 GeV 6.99 keV 2.99 cm 16.4 cm World eIoni - 7 -403 um -16.2 cm 2.13 cm 1.67 GeV 780 eV 3.28 mm 16.7 cm World eIoni - 8 -440 um -18.7 cm 2.21 cm 1.92 GeV 6.17 keV 2.5 cm 19.2 cm World eIoni - 9 -457 um -20 cm 2.24 cm 2.05 GeV 3.59 keV 1.32 cm 20.5 cm OutOfWorldTransportation + 1 140 um -12.3 cm 2.03 cm 1.28 GeV 26.7 keV 12.8 cm 12.8 cm World eIoni + 2 238 um -20 cm 2.29 cm 2.05 GeV 14 keV 7.74 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -440 um -18.7 cm 2.21 cm 1.73 keV 0 eV 0 fm 0 fm World initStep - 1 -445 um -18.7 cm 2.21 cm 496 keV 1.73 keV 120 um 120 um World eIoni - 2 -465 um -20 cm 2.21 cm 132 MeV 1.75 keV 1.32 cm 1.33 cm OutOfWorldTransportation + 0 140 um -12.3 cm 2.03 cm 2.63 keV 0 eV 0 fm 0 fm World initStep + 1 137 um -12.3 cm 2.03 cm 1.03 MeV 2.63 keV 235 um 235 um World eIoni + 2 665 um -13.7 cm 2.06 cm 148 MeV 2.52 keV 1.48 cm 1.5 cm World eIoni + 3 938 um -20 cm 2.06 cm 774 MeV 10.5 keV 6.25 cm 7.75 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -403 um -16.2 cm 2.13 cm 1.12 keV 0 eV 0 fm 0 fm World initStep - 1 -401 um -16.2 cm 2.13 cm 241 keV 1.12 keV 62.8 um 62.8 um World eIoni - 2 -391 um -20 cm 2.14 cm 382 MeV 5.33 keV 3.96 cm 3.97 cm OutOfWorldTransportation + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -4.68 um -4.74 mm 6.46 mm 97.3 MeV 1.17 keV 8.38 mm 8.38 mm World eIoni + 2 -4.07 um -6.14 mm 7.23 mm 111 MeV 223 eV 1.6 mm 9.98 mm World eIoni + 3 38.2 um -6.95 cm 1.69 cm 745 MeV 9.66 keV 6.44 cm 7.43 cm World eIoni + 4 62.2 um -9.29 cm 1.83 cm 979 MeV 5.27 keV 2.35 cm 9.78 cm World eIoni + 5 72.5 um -10.8 cm 1.89 cm 1.13 GeV 3.19 keV 1.49 cm 11.3 cm World eIoni + 6 98.4 um -15.3 cm 2.06 cm 1.58 GeV 11.5 keV 4.53 cm 15.8 cm World eIoni + 7 123 um -20 cm 2.19 cm 2.05 GeV 7.11 keV 4.7 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -397 um -15.9 cm 2.12 cm 4.22 keV 0 eV 0 fm 0 fm World initStep - 1 -389 um -15.9 cm 2.12 cm 2.36 MeV 4.22 keV 529 um 529 um World eIoni - 2 54.8 um -18.3 cm 2.17 cm 249 MeV 2.24 keV 2.47 cm 2.52 cm World eIoni - 3 145 um -20 cm 2.18 cm 415 MeV 4.13 keV 1.65 cm 4.18 cm OutOfWorldTransportation + 0 98.4 um -15.3 cm 2.06 cm 1.03 keV 0 eV 0 fm 0 fm World initStep + 1 99 um -15.3 cm 2.06 cm 208 keV 1.03 keV 55.3 um 55.3 um World eIoni + 2 104 um -20 cm 2.06 cm 469 MeV 14.6 keV 4.99 cm 5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -346 um -12.9 cm 2.02 cm 4.16 keV 0 eV 0 fm 0 fm World initStep - 1 -356 um -12.9 cm 2.02 cm 2.3 MeV 4.16 keV 517 um 517 um World eIoni - 2 -356 um -12.9 cm 2.02 cm 2.84 MeV 7.81 eV 53.5 um 571 um World eIoni - 3 -144 um -14.3 cm 2.03 cm 145 MeV 1.36 keV 1.43 cm 1.48 cm World eIoni - 4 334 um -20 cm 2.05 cm 713 MeV 8.81 keV 5.68 cm 7.16 cm OutOfWorldTransportation + 0 72.5 um -10.8 cm 1.89 cm 3.26 keV 0 eV 0 fm 0 fm World initStep + 1 66.3 um -10.8 cm 1.9 cm 1.5 MeV 3.26 keV 338 um 338 um World eIoni + 2 113 um -11.2 cm 1.9 cm 40.1 MeV 335 eV 3.86 mm 4.2 mm World eIoni + 3 307 um -15.2 cm 1.9 cm 440 MeV 9.92 keV 4 cm 4.42 cm World eIoni + 4 493 um -18.9 cm 1.89 cm 816 MeV 7.83 keV 3.76 cm 8.18 cm World eIoni + 5 533 um -20 cm 1.89 cm 922 MeV 1.96 keV 1.06 cm 9.24 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 6 +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 6 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -144 um -14.3 cm 2.03 cm 2.54 keV 0 eV 0 fm 0 fm World initStep - 1 -140 um -14.3 cm 2.03 cm 968 keV 2.54 keV 223 um 223 um World eIoni - 2 -5.61 um -15.3 cm 2.06 cm 102 MeV 759 eV 1.01 cm 1.03 cm World eIoni - 3 577 um -20 cm 2.16 cm 568 MeV 9.84 keV 4.66 cm 5.69 cm OutOfWorldTransportation + 0 493 um -18.9 cm 1.89 cm 1.06 keV 0 eV 0 fm 0 fm World initStep + 1 490 um -18.9 cm 1.89 cm 218 keV 1.06 keV 57.6 um 57.6 um World eIoni + 2 475 um -20 cm 1.89 cm 106 MeV 1.49 keV 1.07 cm 1.08 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 6 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 307 um -15.2 cm 1.9 cm 1.01 keV 0 eV 0 fm 0 fm World initStep + 1 305 um -15.2 cm 1.9 cm 204 keV 1.01 keV 54.3 um 54.3 um World eIoni + 2 294 um -20 cm 1.9 cm 482 MeV 14.4 keV 5.15 cm 5.15 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -328 um -11.9 cm 1.98 cm 1.14 keV 0 eV 0 fm 0 fm World initStep - 1 -325 um -11.9 cm 1.98 cm 246 keV 1.14 keV 64 um 64 um World eIoni - 2 -301 um -20 cm 1.98 cm 812 MeV 16.6 keV 8.82 cm 8.83 cm OutOfWorldTransportation + 0 62.2 um -9.29 cm 1.83 cm 9.27 keV 0 eV 0 fm 0 fm World initStep + 1 99.7 um -9.38 cm 1.83 cm 9.32 MeV 3.37 keV 1.66 mm 1.66 mm World eIoni + 2 1.36 mm -9.47 cm 1.76 cm 18.6 MeV 90.9 eV 1.81 mm 3.47 mm World eIoni + 3 3.21 mm -11 cm 1.67 cm 168 MeV 1.1 keV 1.52 cm 1.87 cm World eIoni + 4 4.76 mm -20 cm 1.59 cm 1.07 GeV 20.2 keV 9.02 cm 10.9 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 5 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 3.21 mm -11 cm 1.67 cm 1.33 keV 0 eV 0 fm 0 fm World initStep + 1 3.21 mm -11 cm 1.67 cm 321 keV 1.33 keV 81 um 81 um World eIoni + 2 3.2 mm -20 cm 1.67 cm 903 MeV 20.3 keV 9.57 cm 9.57 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -224 um -7.52 cm 1.76 cm 7.69 keV 0 eV 0 fm 0 fm World initStep - 1 -248 um -7.58 cm 1.76 cm 6.85 MeV 4.99 keV 1.39 mm 1.39 mm World eIoni - 2 -757 um -7.82 cm 1.92 cm 30.4 MeV 394 eV 3.52 mm 4.91 mm World eIoni - 3 -1.09 mm -9.62 cm 2.03 cm 210 MeV 1.75 keV 1.8 cm 2.3 cm World eIoni - 4 -1.42 mm -20 cm 2.12 cm 1.25 GeV 21.9 keV 10.4 cm 12.7 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 4 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -1.09 mm -9.62 cm 2.03 cm 6.01 keV 0 eV 0 fm 0 fm World initStep - 1 -1.09 mm -9.66 cm 2.03 cm 4.41 MeV 6.01 keV 990 um 990 um World eIoni - 2 -1.09 mm -9.67 cm 2.03 cm 4.94 MeV 8.14 eV 52.9 um 1.04 mm World eIoni - 3 -829 um -12.4 cm 2.07 cm 277 MeV 4.18 keV 2.72 cm 2.83 cm World eIoni - 4 -400 um -20 cm 2.12 cm 1.04 GeV 13.4 keV 7.61 cm 10.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 11 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -829 um -12.4 cm 2.07 cm 1.24 keV 0 eV 0 fm 0 fm World initStep - 1 -827 um -12.4 cm 2.07 cm 283 keV 1.24 keV 72.2 um 72.2 um World eIoni - 2 -811 um -20 cm 2.07 cm 761 MeV 19.9 keV 8.09 cm 8.09 cm OutOfWorldTransportation + 0 38.2 um -6.95 cm 1.69 cm 1.25 keV 0 eV 0 fm 0 fm World initStep + 1 41.9 um -6.95 cm 1.69 cm 289 keV 1.25 keV 73.6 um 73.6 um World eIoni + 2 68.6 um -20 cm 1.69 cm 1.31 GeV 33.5 keV 14.5 cm 14.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -187 um -6.47 cm 1.69 cm 1.02 keV 0 eV 0 fm 0 fm World initStep - 1 -187 um -6.47 cm 1.69 cm 207 keV 1.02 keV 54.9 um 54.9 um World eIoni - 2 2.53 cm -16.2 cm 4.4 cm 977 MeV 23.9 keV 11.3 cm 11.3 cm World eIoni - 3 4.25 cm -19.5 cm 6.44 cm 1.31 GeV 8.69 keV 4.25 cm 15.6 cm OutOfWorldTransportation + 0 -4.07 um -6.14 mm 7.23 mm 1.28 keV 0 eV 0 fm 0 fm World initStep + 1 -1.43 um -6.17 mm 7.23 mm 303 keV 1.28 keV 76.2 um 76.2 um World eIoni + 2 -1.83 mm -2.71 cm 9.03 mm 209 MeV 7.79 keV 2.12 cm 2.13 cm World eBrem + 3 -5.91 mm -20 cm 1.18 cm 1.94 GeV 30.6 keV 17.3 cm 19.4 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 11, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -1.83 mm -2.71 cm 9.03 mm 3.86 keV 0 eV 0 fm 0 fm World initStep + 1 -1.66 cm -19.9 cm 1.7 cm 3.86 keV 0 eV 17.3 cm 17.3 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -187 um -6.46 cm 1.68 cm 2.09 keV 0 eV 0 fm 0 fm World initStep - 1 -192 um -6.46 cm 1.68 cm 691 keV 2.09 keV 162 um 162 um World eIoni - 2 -578 um -7.37 cm 1.68 cm 91.4 MeV 1.14 keV 9.09 mm 9.25 mm World eIoni - 3 -1.73 mm -15.8 cm 1.63 cm 939 MeV 21.1 keV 8.48 cm 9.4 cm World eIoni - 4 -1.6 mm -20 cm 1.65 cm 1.35 GeV 8.68 keV 4.15 cm 13.6 cm OutOfWorldTransportation + 0 -4.68 um -4.74 mm 6.46 mm 4.65 keV 0 eV 0 fm 0 fm World initStep + 1 -10.4 um -5 mm 6.47 mm 2.82 MeV 4.65 keV 629 um 629 um World eIoni + 2 10.9 um -1.2 cm 6.41 mm 73.1 MeV 811 eV 7.02 mm 7.65 mm World eIoni + 3 430 um -17.4 cm 6.52 mm 1.69 GeV 27.6 keV 16.2 cm 16.9 cm World eIoni + 4 543 um -20 cm 6.47 mm 1.95 GeV 5.02 keV 2.63 cm 19.6 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -1.73 mm -15.8 cm 1.63 cm 15.3 keV 0 eV 0 fm 0 fm World initStep - 1 -1.78 mm -16 cm 1.63 cm 18.6 MeV 3.38 keV 2.54 mm 2.54 mm World eIoni - 2 -1.82 mm -16.1 cm 1.53 cm 22.6 MeV 186 eV 1.09 mm 3.64 mm World eIoni - 3 -2.04 mm -20 cm 9.38 mm 416 MeV 5.29 keV 4.03 cm 4.39 cm OutOfWorldTransportation + 0 430 um -17.4 cm 6.52 mm 2.03 keV 0 eV 0 fm 0 fm World initStep + 1 429 um -17.4 cm 6.51 mm 655 keV 2.03 keV 155 um 155 um World eIoni + 2 420 um -18.5 cm 5.94 mm 113 MeV 3.35 keV 1.13 cm 1.15 cm World eIoni + 3 363 um -20 cm 5.18 mm 263 MeV 2.97 keV 1.49 cm 2.64 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 12 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 420 um -18.5 cm 5.94 mm 1.3 keV 0 eV 0 fm 0 fm World initStep + 1 419 um -18.5 cm 5.94 mm 308 keV 1.3 keV 78.1 um 78.1 um World eIoni + 2 413 um -20 cm 5.96 mm 149 MeV 2.51 keV 1.5 cm 1.51 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1807,17 +1459,27 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 78.7 um -3.22 cm 1.36 cm 372 MeV 8.19 keV 3.7 cm 3.7 cm World eIoni - 2 263 um -20 cm 2.24 cm 2.05 GeV 29.6 keV 16.8 cm 20.5 cm OutOfWorldTransportation + 1 24 um -8.21 cm 1.82 cm 872 MeV 16.3 keV 8.71 cm 8.71 cm World eIoni + 2 10.4 um -9.26 cm 1.88 cm 976 MeV 1.92 keV 1.05 cm 9.75 cm World eIoni + 3 -80.4 um -20 cm 2.26 cm 2.05 GeV 22.9 keV 10.7 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 10.4 um -9.26 cm 1.88 cm 1.07 keV 0 eV 0 fm 0 fm World initStep + 1 13.4 um -9.26 cm 1.88 cm 224 keV 1.07 keV 58.9 um 58.9 um World eIoni + 2 38.1 um -20 cm 1.88 cm 1.07 GeV 25.4 keV 12.3 cm 12.3 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 78.7 um -3.22 cm 1.36 cm 1.72 keV 0 eV 0 fm 0 fm World initStep - 1 83.6 um -3.23 cm 1.36 cm 495 keV 1.72 keV 119 um 119 um World eIoni - 2 113 um -20 cm 1.36 cm 1.68 GeV 27.2 keV 17.7 cm 17.7 cm OutOfWorldTransportation + 0 24 um -8.21 cm 1.82 cm 1.75 keV 0 eV 0 fm 0 fm World initStep + 1 29.5 um -8.22 cm 1.82 cm 506 keV 1.75 keV 122 um 122 um World eIoni + 2 59.8 um -20 cm 1.82 cm 1.18 GeV 19.5 keV 12.2 cm 12.2 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1825,80 +1487,7 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 311 um -8.72 cm 1.83 cm 922 MeV 20.2 keV 9.22 cm 9.22 cm World eIoni - 2 455 um -14.9 cm 2.09 cm 1.54 GeV 13.3 keV 6.14 cm 15.4 cm World eIoni - 3 485 um -16.5 cm 2.14 cm 1.7 GeV 3.08 keV 1.64 cm 17 cm World eIoni - 4 489 um -16.7 cm 2.15 cm 1.72 GeV 186 eV 2.5 mm 17.2 cm World eIoni - 5 541 um -20 cm 2.24 cm 2.05 GeV 9.9 keV 3.25 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 489 um -16.7 cm 2.15 cm 3.85 keV 0 eV 0 fm 0 fm World initStep - 1 475 um -16.8 cm 2.15 cm 2.01 MeV 3.85 keV 452 um 452 um World eIoni - 2 725 um -18.4 cm 2.12 cm 163 MeV 2.05 keV 1.61 cm 1.66 cm World eIoni - 3 1.21 mm -19.3 cm 2.09 cm 250 MeV 1.15 keV 8.75 mm 2.53 cm World eIoni - 4 1.5 mm -20 cm 2.08 cm 325 MeV 1.52 keV 7.49 mm 3.28 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 5 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 1.21 mm -19.3 cm 2.09 cm 1.72 keV 0 eV 0 fm 0 fm World initStep - 1 1.21 mm -19.3 cm 2.09 cm 492 keV 1.72 keV 119 um 119 um World eIoni - 2 1.22 mm -20 cm 2.09 cm 74.9 MeV 548 eV 7.45 mm 7.57 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 485 um -16.5 cm 2.14 cm 1.04 keV 0 eV 0 fm 0 fm World initStep - 1 488 um -16.5 cm 2.14 cm 214 keV 1.04 keV 56.5 um 56.5 um World eIoni - 2 508 um -20 cm 2.14 cm 350 MeV 6.06 keV 3.65 cm 3.66 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 455 um -14.9 cm 2.09 cm 1.11 keV 0 eV 0 fm 0 fm World initStep - 1 453 um -14.9 cm 2.09 cm 237 keV 1.11 keV 61.8 um 61.8 um World eIoni - 2 435 um -20 cm 2.09 cm 514 MeV 13.3 keV 5.42 cm 5.43 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 311 um -8.72 cm 1.83 cm 2.2 keV 0 eV 0 fm 0 fm World initStep - 1 303 um -8.73 cm 1.83 cm 749 keV 2.2 keV 175 um 175 um World eIoni - 2 351 um -9.04 cm 1.82 cm 31.5 MeV 283 eV 3.08 mm 3.25 mm World eIoni - 3 596 um -20 cm 1.82 cm 1.13 GeV 22.6 keV 11 cm 11.3 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 351 um -9.04 cm 1.82 cm 2.44 keV 0 eV 0 fm 0 fm World initStep - 1 351 um -9.05 cm 1.82 cm 899 keV 2.44 keV 208 um 208 um World eIoni - 2 336 um -9.2 cm 1.82 cm 15.7 MeV 37.1 eV 1.48 mm 1.69 mm World eIoni - 3 714 um -16.5 cm 1.88 cm 744 MeV 13.7 keV 7.28 cm 7.45 cm World eIoni - 4 799 um -20 cm 2.1 cm 1.1 GeV 8.77 keV 3.53 cm 11 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 714 um -16.5 cm 1.88 cm 5.29 keV 0 eV 0 fm 0 fm World initStep - 1 728 um -16.5 cm 1.88 cm 3.52 MeV 5.29 keV 788 um 788 um World eIoni - 2 746 um -16.7 cm 1.87 cm 23.7 MeV 931 eV 2.02 mm 2.81 mm World eIoni - 3 764 um -20 cm 1.87 cm 353 MeV 5.3 keV 3.29 cm 3.57 cm OutOfWorldTransportation + 1 0 fm -20 cm 2.22 cm 2.05 GeV 37 keV 20.5 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1906,38 +1495,27 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -8.1 um -5.74 mm 7.02 mm 107 MeV 2.95 keV 9.53 mm 9.53 mm World eIoni - 2 -14.5 um -5.87 cm 1.62 cm 637 MeV 11.8 keV 5.4 cm 6.36 cm World eIoni - 3 -83.5 um -19.1 cm 2.19 cm 1.96 GeV 30.8 keV 13.3 cm 19.6 cm World eIoni - 4 -89.7 um -20 cm 2.21 cm 2.05 GeV 3.02 keV 8.87 mm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -83.5 um -19.1 cm 2.19 cm 1.14 keV 0 eV 0 fm 0 fm World initStep - 1 -86.4 um -19.1 cm 2.19 cm 246 keV 1.14 keV 63.9 um 63.9 um World eIoni - 2 -101 um -20 cm 2.19 cm 88.7 MeV 1.44 keV 8.91 mm 8.98 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -14.5 um -5.87 cm 1.62 cm 1.44 keV 0 eV 0 fm 0 fm World initStep - 1 -10.7 um -5.88 cm 1.62 cm 366 keV 1.44 keV 91 um 91 um World eIoni - 2 14.7 um -20 cm 1.62 cm 1.41 GeV 26.8 keV 15.2 cm 15.3 cm OutOfWorldTransportation + 1 -739 um -17.1 cm 2.18 cm 1.76 GeV 25.2 keV 17.6 cm 17.6 cm World eIoni + 2 -827 um -20 cm 2.27 cm 2.05 GeV 7.35 keV 2.94 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -8.1 um -5.74 mm 7.02 mm 1.26 keV 0 eV 0 fm 0 fm World initStep - 1 -11.6 um -5.77 mm 7.02 mm 293 keV 1.26 keV 74.5 um 74.5 um World eIoni - 2 1.68 cm -17.6 cm 2.39 cm 1.7 GeV 34.9 keV 19.6 cm 19.6 cm World eIoni - 3 1.97 cm -19.9 cm 2.48 cm 1.93 GeV 4.71 keV 2.33 cm 22 cm OutOfWorldTransportation + 0 -739 um -17.1 cm 2.18 cm 2.95 keV 0 eV 0 fm 0 fm World initStep + 1 -732 um -17.1 cm 2.19 cm 1.25 MeV 2.95 keV 285 um 285 um World eIoni + 2 -719 um -17.3 cm 2.19 cm 28 MeV 467 eV 2.68 mm 2.96 mm World eIoni + 3 -691 um -20 cm 2.2 cm 294 MeV 5.73 keV 2.66 cm 2.96 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -719 um -17.3 cm 2.19 cm 1.62 keV 0 eV 0 fm 0 fm World initStep + 1 -715 um -17.3 cm 2.19 cm 447 keV 1.62 keV 109 um 109 um World eIoni + 2 -696 um -20 cm 2.19 cm 266 MeV 3.8 keV 2.68 cm 2.69 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1945,98 +1523,209 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -63.4 um -3.84 cm 1.44 cm 434 MeV 8.53 keV 4.31 cm 4.31 cm World eIoni - 2 -115 um -19.7 cm 2.25 cm 2.02 GeV 26.4 keV 15.9 cm 20.2 cm World eIoni - 3 -114 um -20 cm 2.26 cm 2.05 GeV 680 eV 2.77 mm 20.5 cm OutOfWorldTransportation + 1 0 fm -20 cm 2.22 cm 2.05 GeV 35.5 keV 20.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 14.5 um -7.69 mm 7.96 mm 127 MeV 2.29 keV 1.17 cm 1.17 cm World eIoni + 2 14.4 um -8.19 mm 8.18 mm 132 MeV 81.3 eV 547 um 1.22 cm World eIoni + 3 -7.29 um -20 cm 2.22 cm 2.05 GeV 39.2 keV 19.3 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -115 um -19.7 cm 2.25 cm 22 keV 0 eV 0 fm 0 fm World initStep - 1 -584 um -19.9 cm 2.29 cm 15.5 MeV 878 eV 1.69 mm 1.69 mm World msc - 2 -686 um -20 cm 2.29 cm 25.3 MeV 76.9 eV 992 um 2.68 mm World msc - 3 -709 um -20 cm 2.3 cm 28.4 MeV 0 eV 308 um 2.99 mm OutOfWorldTransportation + 0 14.4 um -8.19 mm 8.18 mm 3.42 keV 0 eV 0 fm 0 fm World initStep + 1 26.7 um -8.33 mm 8.18 mm 1.49 MeV 3.42 keV 238 um 238 um World eIoni + 2 421 um -20 cm 7.27 mm 1.92 GeV 29 keV 19.4 cm 19.4 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -63.4 um -3.84 cm 1.44 cm 65.7 keV 0 eV 0 fm 0 fm World initStep - 1 83.8 um -4.94 cm 1.46 cm 112 MeV 6.75 keV 1.25 cm 1.25 cm World eIoni - 2 -5.45 mm -6.44 cm 1.63 cm 263 MeV 1.25 keV 1.62 cm 2.87 cm World eIoni - 3 -7.87 mm -7.71 cm 1.71 cm 389 MeV 4.12 keV 1.29 cm 4.16 cm World eIoni - 4 -1.01 cm -9.4 cm 1.78 cm 559 MeV 3.97 keV 1.71 cm 5.87 cm World eIoni - 5 -1.51 cm -16.7 cm 1.94 cm 1.28 GeV 10.5 keV 7.27 cm 13.1 cm World eIoni - 6 -1.64 cm -19.9 cm 1.99 cm 1.61 GeV 5.31 keV 3.28 cm 16.4 cm OutOfWorldTransportation + 0 14.5 um -7.69 mm 7.96 mm 1.72 keV 0 eV 0 fm 0 fm World initStep + 1 20 um -7.74 mm 7.97 mm 494 keV 1.72 keV 119 um 119 um World eIoni + 2 52.2 um -20 cm 7.97 mm 1.92 GeV 29.5 keV 20.5 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -1.51 cm -16.7 cm 1.94 cm 5.69 keV 0 eV 0 fm 0 fm World initStep - 1 -1.51 cm -16.7 cm 1.94 cm 4 MeV 5.69 keV 897 um 897 um World eIoni - 2 -1.51 cm -17.2 cm 1.94 cm 50 MeV 574 eV 4.6 mm 5.49 mm World eIoni - 3 -1.51 cm -17.4 cm 1.94 cm 75.2 MeV 642 eV 2.52 mm 8.01 mm World eIoni - 4 -1.51 cm -19.4 cm 1.93 cm 276 MeV 4.37 keV 2.01 cm 2.81 cm World eIoni - 5 -1.51 cm -19.9 cm 1.93 cm 329 MeV 1.61 keV 5.29 mm 3.34 cm OutOfWorldTransportation + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -940 nm -360 um 1.9 mm 53.6 MeV 202 eV 1.94 mm 1.94 mm World eIoni + 2 16.5 nm -591 um 2.42 mm 55.9 MeV 102 eV 575 um 2.52 mm World eIoni + 3 300 um -9.07 cm 1.85 cm 957 MeV 15.7 keV 9.31 cm 9.56 cm World eIoni + 4 302 um -9.27 cm 1.86 cm 977 MeV 209 eV 2.02 mm 9.76 cm World eIoni + 5 333 um -13.2 cm 2.03 cm 1.37 GeV 10.6 keV 3.89 cm 13.7 cm World eIoni + 6 345 um -15.2 cm 2.11 cm 1.57 GeV 4.17 keV 2.09 cm 15.7 cm World eIoni + 7 367 um -20 cm 2.25 cm 2.05 GeV 10.5 keV 4.76 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 7 +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -1.51 cm -19.4 cm 1.93 cm 1.37 keV 0 eV 0 fm 0 fm World initStep - 1 -1.51 cm -19.4 cm 1.93 cm 335 keV 1.37 keV 84.1 um 84.1 um World eIoni - 2 -1.51 cm -19.9 cm 1.93 cm 52.9 MeV 458 eV 5.27 mm 5.35 mm OutOfWorldTransportation + 0 345 um -15.2 cm 2.11 cm 3.17 keV 0 eV 0 fm 0 fm World initStep + 1 338 um -15.3 cm 2.11 cm 1.43 MeV 3.17 keV 323 um 323 um World eIoni + 2 946 um -17.1 cm 2.09 cm 189 MeV 2.97 keV 1.87 cm 1.91 cm World eIoni + 3 1.23 mm -18.6 cm 2.11 cm 341 MeV 3.07 keV 1.52 cm 3.43 cm World eIoni + 4 1.3 mm -19.2 cm 2.11 cm 392 MeV 481 eV 5.1 mm 3.94 cm World eIoni + 5 1.39 mm -20 cm 2.12 cm 476 MeV 895 eV 8.44 mm 4.78 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 9, Parent ID = 7 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -1.51 cm -17.4 cm 1.94 cm 994 eV 0 eV 0 fm 0 fm World initStep - 1 -1.51 cm -17.4 cm 1.94 cm 198 keV 994 eV 52.7 um 52.7 um World eIoni - 2 -1.51 cm -19.9 cm 1.94 cm 254 MeV 5.04 keV 2.63 cm 2.64 cm OutOfWorldTransportation + 0 1.3 mm -19.2 cm 2.11 cm 1.11 keV 0 eV 0 fm 0 fm World initStep + 1 1.3 mm -19.2 cm 2.11 cm 238 keV 1.11 keV 62.1 um 62.1 um World eIoni + 2 1.29 mm -20 cm 2.11 cm 84.4 MeV 1.95 keV 8.49 mm 8.55 mm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 8, Parent ID = 7 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -1.51 cm -17.2 cm 1.94 cm 1.86 keV 0 eV 0 fm 0 fm World initStep - 1 -1.51 cm -17.2 cm 1.94 cm 562 keV 1.86 keV 134 um 134 um World eIoni - 2 -1.51 cm -19.9 cm 1.94 cm 279 MeV 3.48 keV 2.81 cm 2.82 cm OutOfWorldTransportation + 0 1.23 mm -18.6 cm 2.11 cm 1.08 keV 0 eV 0 fm 0 fm World initStep + 1 1.23 mm -18.6 cm 2.11 cm 225 keV 1.08 keV 59.1 um 59.1 um World eIoni + 2 1.23 mm -20 cm 2.11 cm 135 MeV 2.07 keV 1.37 cm 1.38 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -1.01 cm -9.4 cm 1.78 cm 1.25 keV 0 eV 0 fm 0 fm World initStep - 1 -1.01 cm -9.41 cm 1.78 cm 287 keV 1.25 keV 73.1 um 73.1 um World eIoni - 2 -1.01 cm -20 cm 1.78 cm 1.06 GeV 23.1 keV 11.5 cm 11.5 cm OutOfWorldTransportation + 0 333 um -13.2 cm 2.03 cm 1.2 keV 0 eV 0 fm 0 fm World initStep + 1 329 um -13.2 cm 2.03 cm 270 keV 1.2 keV 69.3 um 69.3 um World eIoni + 2 306 um -20 cm 2.03 cm 685 MeV 19.5 keV 7.26 cm 7.26 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -7.87 mm -7.71 cm 1.71 cm 1.32 keV 0 eV 0 fm 0 fm World initStep - 1 -7.87 mm -7.72 cm 1.71 cm 318 keV 1.32 keV 80 um 80 um World eIoni - 2 -7.89 mm -20 cm 1.71 cm 1.23 GeV 24.2 keV 13.3 cm 13.3 cm OutOfWorldTransportation + 0 302 um -9.27 cm 1.86 cm 1.84 keV 0 eV 0 fm 0 fm World initStep + 1 305 um -9.28 cm 1.86 cm 552 keV 1.84 keV 132 um 132 um World eIoni + 2 325 um -20 cm 1.86 cm 1.07 GeV 14.3 keV 11 cm 11 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -5.45 mm -6.44 cm 1.63 cm 1.33 keV 0 eV 0 fm 0 fm World initStep - 1 -5.46 mm -6.45 cm 1.63 cm 321 keV 1.33 keV 80.6 um 80.6 um World eIoni - 2 -5.48 mm -20 cm 1.64 cm 1.35 GeV 29 keV 14.8 cm 14.9 cm OutOfWorldTransportation + 0 300 um -9.07 cm 1.85 cm 12 keV 0 eV 0 fm 0 fm World initStep + 1 327 um -9.19 cm 1.85 cm 12.8 MeV 3.56 keV 1.84 mm 1.84 mm World eIoni + 2 -2.05 mm -13.9 cm 1.36 cm 483 MeV 7.33 keV 4.93 cm 5.11 cm World eIoni + 3 -2.12 mm -19.1 cm 1.26 cm 1 GeV 12.6 keV 5.19 cm 10.3 cm World eIoni + 4 -2.13 mm -20 cm 1.25 cm 1.09 GeV 1.18 keV 9.22 mm 11.2 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -2.12 mm -19.1 cm 1.26 cm 2.43 keV 0 eV 0 fm 0 fm World initStep + 1 -2.12 mm -19.1 cm 1.26 cm 895 keV 2.43 keV 207 um 207 um World eIoni + 2 -2.12 mm -20 cm 1.26 cm 92.3 MeV 993 eV 9.15 mm 9.35 mm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -2.05 mm -13.9 cm 1.36 cm 1.08 keV 0 eV 0 fm 0 fm World initStep + 1 -2.05 mm -13.9 cm 1.36 cm 226 keV 1.08 keV 59.3 um 59.3 um World eIoni + 2 -2.07 mm -20 cm 1.36 cm 611 MeV 14.9 keV 6.56 cm 6.57 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 16.5 nm -591 um 2.42 mm 3.89 keV 0 eV 0 fm 0 fm World initStep + 1 -7.8 um -779 um 2.43 mm 2.13 MeV 3.89 keV 460 um 460 um World eIoni + 2 11.3 um -5.25 mm 2.49 mm 46.9 MeV 394 eV 4.48 mm 4.94 mm World eIoni + 3 292 um -9.19 cm 2.72 mm 914 MeV 16.7 keV 8.67 cm 9.16 cm World eIoni + 4 314 um -11.1 cm 2.74 mm 1.1 GeV 4.48 keV 1.89 cm 11.1 cm World eIoni + 5 322 um -11.9 cm 2.75 mm 1.18 GeV 1.34 keV 7.68 mm 11.8 cm World eIoni + 6 382 um -20 cm 2.83 mm 1.99 GeV 14.3 keV 8.15 cm 20 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 322 um -11.9 cm 2.75 mm 1.72 keV 0 eV 0 fm 0 fm World initStep + 1 327 um -11.9 cm 2.75 mm 492 keV 1.72 keV 119 um 119 um World eIoni + 2 353 um -20 cm 2.74 mm 815 MeV 12.3 keV 8.36 cm 8.37 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 314 um -11.1 cm 2.74 mm 1.5 keV 0 eV 0 fm 0 fm World initStep + 1 311 um -11.1 cm 2.75 mm 390 keV 1.5 keV 96.3 um 96.3 um World eIoni + 2 290 um -20 cm 2.76 mm 892 MeV 17.8 keV 9.29 cm 9.3 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 292 um -9.19 cm 2.72 mm 2.8 keV 0 eV 0 fm 0 fm World initStep + 1 301 um -9.2 cm 2.71 mm 1.14 MeV 2.8 keV 261 um 261 um World eIoni + 2 155 um -9.88 cm 2.67 mm 69.2 MeV 574 eV 6.81 mm 7.07 mm World eIoni + 3 -106 um -14.1 cm 2.6 mm 492 MeV 6.56 keV 4.23 cm 4.94 cm World eIoni + 4 -174 um -20 cm 2.53 mm 1.08 GeV 11.9 keV 5.88 cm 10.8 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 12 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -106 um -14.1 cm 2.6 mm 2.83 keV 0 eV 0 fm 0 fm World initStep + 1 -106 um -14.1 cm 2.61 mm 1.17 MeV 2.83 keV 266 um 266 um World eIoni + 2 -126 um -14.3 cm 2.62 mm 18.3 MeV 161 eV 1.72 mm 1.98 mm World eIoni + 3 -233 um -20 cm 2.62 mm 588 MeV 12.1 keV 5.7 cm 5.9 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -940 nm -360 um 1.9 mm 7.95 keV 0 eV 0 fm 0 fm World initStep + 1 -34.3 um -1.04 mm 1.9 mm 7.25 MeV 3.56 keV 1.44 mm 1.44 mm World eIoni + 2 -430 um -3.84 mm 3.2 mm 35.2 MeV 612 eV 3.2 mm 4.64 mm World eIoni + 3 -1.07 mm -4.22 cm 4.97 mm 419 MeV 6.98 keV 3.85 cm 4.31 cm World eIoni + 4 -1.45 mm -13.5 cm 5.82 mm 1.34 GeV 15.5 keV 9.23 cm 13.5 cm World eIoni + 5 -1.6 mm -20 cm 6.13 mm 2 GeV 12.7 keV 6.54 cm 20.1 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -1.45 mm -13.5 cm 5.82 mm 4.07 keV 0 eV 0 fm 0 fm World initStep + 1 -1.44 mm -13.5 cm 5.81 mm 2.21 MeV 4.07 keV 497 um 497 um World eIoni + 2 -1.34 mm -14.3 cm 5.9 mm 81.9 MeV 2.11 keV 7.97 mm 8.46 mm World eIoni + 3 -1.25 mm -20 cm 5.98 mm 655 MeV 11.5 keV 5.73 cm 6.57 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -1.07 mm -4.22 cm 4.97 mm 1.44 keV 0 eV 0 fm 0 fm World initStep + 1 -1.06 mm -4.23 cm 4.97 mm 363 keV 1.44 keV 90.3 um 90.3 um World eIoni + 2 -1.04 mm -20 cm 4.95 mm 1.58 GeV 27.8 keV 17.2 cm 17.2 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -2044,55 +1733,49 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -560 um -13 cm 2 cm 1.35 GeV 29.2 keV 13.5 cm 13.5 cm World eIoni - 2 -772 um -20 cm 2.2 cm 2.05 GeV 13.9 keV 6.98 cm 20.5 cm OutOfWorldTransportation + 1 -8.33 um -2.03 cm 1.16 cm 253 MeV 7.11 keV 2.48 cm 2.48 cm World eIoni + 2 5.79 um -9.97 cm 1.89 cm 1.05 GeV 10.8 keV 7.98 cm 10.5 cm World eIoni + 3 19.6 um -20 cm 2.23 cm 2.05 GeV 21.2 keV 10 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 5.79 um -9.97 cm 1.89 cm 2.3 keV 0 eV 0 fm 0 fm World initStep + 1 8.82 um -9.98 cm 1.89 cm 808 keV 2.3 keV 188 um 188 um World eIoni + 2 -223 um -10.8 cm 1.87 cm 80.1 MeV 1.43 keV 7.94 mm 8.13 mm World eIoni + 3 -777 um -18.1 cm 1.89 cm 809 MeV 12.7 keV 7.29 cm 8.1 cm World eIoni + 4 -825 um -20 cm 1.9 cm 1 GeV 2.33 keV 1.94 cm 10 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -777 um -18.1 cm 1.89 cm 2.43 keV 0 eV 0 fm 0 fm World initStep + 1 -771 um -18.1 cm 1.89 cm 896 keV 2.43 keV 207 um 207 um World eIoni + 2 -697 um -18.5 cm 1.9 cm 41.8 MeV 564 eV 4.09 mm 4.3 mm World eIoni + 3 -686 um -20 cm 1.91 cm 194 MeV 2.41 keV 1.53 cm 1.96 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -697 um -18.5 cm 1.9 cm 1.26 keV 0 eV 0 fm 0 fm World initStep + 1 -699 um -18.5 cm 1.9 cm 291 keV 1.26 keV 74.1 um 74.1 um World eIoni + 2 -712 um -20 cm 1.9 cm 153 MeV 1.42 keV 1.54 cm 1.55 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -560 um -13 cm 2 cm 1.06 keV 0 eV 0 fm 0 fm World initStep - 1 -561 um -13 cm 2 cm 219 keV 1.06 keV 57.8 um 57.8 um World eIoni - 2 -569 um -20 cm 2 cm 698 MeV 16.1 keV 7.61 cm 7.62 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 790 um -16.6 cm 2.11 cm 1.71 GeV 26.3 keV 17.1 cm 17.1 cm World eIoni - 2 957 um -20 cm 2.2 cm 2.05 GeV 4.69 keV 3.37 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 790 um -16.6 cm 2.11 cm 3.53 keV 0 eV 0 fm 0 fm World initStep - 1 792 um -16.7 cm 2.11 cm 1.72 MeV 3.53 keV 388 um 388 um World eIoni - 2 775 um -16.8 cm 2.11 cm 20.4 MeV 216 eV 1.87 mm 2.26 mm World eIoni - 3 721 um -20 cm 2.11 cm 337 MeV 4.87 keV 3.16 cm 3.39 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 2.89 um -1.27 cm 9.76 mm 177 MeV 3.24 keV 1.7 cm 1.7 cm World eIoni - 2 -5.76 um -20 cm 2.22 cm 2.05 GeV 43.7 keV 18.8 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 2.89 um -1.27 cm 9.76 mm 1.2 keV 0 eV 0 fm 0 fm World initStep - 1 5.91 um -1.27 cm 9.76 mm 269 keV 1.2 keV 69.2 um 69.2 um World eIoni - 2 3.79 cm -16.2 cm 7.21 mm 1.49 GeV 37.3 keV 17.2 cm 17.2 cm World eIoni - 3 4.91 cm -19.4 cm -7.34 mm 1.81 GeV 8.96 keV 3.71 cm 20.9 cm OutOfWorldTransportation + 0 -8.33 um -2.03 cm 1.16 cm 2.93 keV 0 eV 0 fm 0 fm World initStep + 1 -10.4 um -2.04 cm 1.16 cm 1.24 MeV 2.93 keV 282 um 282 um World eIoni + 2 -9.08 um -2.11 cm 1.17 cm 7.97 MeV 0 eV 673 um 955 um World eIoni + 3 65.8 nm -20 cm 1.17 cm 1.8 GeV 31.6 keV 17.9 cm 18 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -2108,72 +1791,502 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -49.1 um -2.9 cm 1.31 cm 340 MeV 6.79 keV 3.37 cm 3.37 cm World eIoni - 2 -86.7 um -5.55 cm 1.6 cm 605 MeV 5.35 keV 2.66 cm 6.03 cm World eIoni - 3 -138 um -20 cm 2.21 cm 2.05 GeV 31.3 keV 14.4 cm 20.5 cm World eIoni - 4 -138 um -20 cm 2.21 cm 2.05 GeV 0 eV 399 um 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -138 um -20 cm 2.21 cm 3.42 keV 0 eV 0 fm 0 fm World initStep - 1 -126 um -20 cm 2.21 cm 1.63 MeV 3.42 keV 368 um 368 um World eIoni - 2 -122 um -20 cm 2.21 cm 3.26 MeV 0 eV 163 um 531 um World msc - 3 -122 um -20 cm 2.21 cm 3.68 MeV 6.32 eV 42.3 um 573 um World msc - 4 -122 um -20 cm 2.21 cm 3.94 MeV 3.92 eV 25.9 um 599 um World msc - 5 -121 um -20 cm 2.21 cm 4.11 MeV 2.54 eV 16.7 um 616 um OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -86.7 um -5.55 cm 1.6 cm 3.99 keV 0 eV 0 fm 0 fm World initStep - 1 -102 um -5.57 cm 1.6 cm 2.13 MeV 3.99 keV 480 um 480 um World eIoni - 2 98 um -6.71 cm 1.6 cm 116 MeV 1.47 keV 1.14 cm 1.19 cm World eIoni - 3 156 um -6.92 cm 1.6 cm 137 MeV 2.57 keV 2.1 mm 1.4 cm World eIoni - 4 684 um -12 cm 1.61 cm 643 MeV 11.7 keV 5.05 cm 6.45 cm World eIoni - 5 947 um -20 cm 1.62 cm 1.45 GeV 16.2 keV 8.02 cm 14.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 684 um -12 cm 1.61 cm 1.94 keV 0 eV 0 fm 0 fm World initStep - 1 679 um -12 cm 1.61 cm 605 keV 1.94 keV 144 um 144 um World eIoni - 2 653 um -20 cm 1.61 cm 803 MeV 12.2 keV 8.17 cm 8.18 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 156 um -6.92 cm 1.6 cm 1.86 keV 0 eV 0 fm 0 fm World initStep - 1 158 um -6.93 cm 1.6 cm 564 keV 1.86 keV 135 um 135 um World eIoni - 2 168 um -20 cm 1.59 cm 1.31 GeV 18.4 keV 13.5 cm 13.5 cm OutOfWorldTransportation + 1 -333 um -13.4 cm 2.07 cm 1.39 GeV 26.2 keV 13.9 cm 13.9 cm World eIoni + 2 -423 um -20 cm 2.27 cm 2.05 GeV 11.5 keV 6.59 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -49.1 um -2.9 cm 1.31 cm 63 keV 0 eV 0 fm 0 fm World initStep - 1 -111 um -4 cm 1.29 cm 111 MeV 6.64 keV 1.25 cm 1.25 cm World eIoni - 2 769 um -6.76 cm 8.38 mm 388 MeV 5.83 keV 2.81 cm 4.05 cm World eIoni - 3 1.84 mm -20 cm 3.05 mm 1.71 GeV 28.5 keV 13.3 cm 17.3 cm OutOfWorldTransportation + 0 -333 um -13.4 cm 2.07 cm 1.22 keV 0 eV 0 fm 0 fm World initStep + 1 -335 um -13.4 cm 2.07 cm 276 keV 1.22 keV 70.8 um 70.8 um World eIoni + 2 -342 um -20 cm 2.08 cm 659 MeV 16 keV 6.95 cm 6.96 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -290 um -8.42 cm 1.79 cm 892 MeV 14.5 keV 8.91 cm 8.91 cm World eIoni + 2 -513 um -20 cm 2.18 cm 2.05 GeV 26 keV 11.6 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -290 um -8.42 cm 1.79 cm 1.1 keV 0 eV 0 fm 0 fm World initStep + 1 -290 um -8.42 cm 1.79 cm 233 keV 1.1 keV 60.9 um 60.9 um World eIoni + 2 -288 um -20 cm 1.79 cm 1.16 GeV 29.5 keV 13.3 cm 13.3 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 37.5 um -1.75 cm 1.1 cm 225 MeV 4.56 keV 2.2 cm 2.2 cm World eIoni + 2 146 um -18.6 cm 2.2 cm 1.91 GeV 39.2 keV 16.9 cm 19.1 cm World eIoni + 3 164 um -20 cm 2.24 cm 2.05 GeV 3.01 keV 1.4 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 146 um -18.6 cm 2.2 cm 11.4 keV 0 eV 0 fm 0 fm World initStep + 1 113 um -18.7 cm 2.21 cm 11.9 MeV 5.21 keV 1.75 mm 1.75 mm World eIoni + 2 -2.63 mm -20 cm 2.32 cm 141 MeV 1.32 keV 1.35 cm 1.52 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 37.5 um -1.75 cm 1.1 cm 1.09 keV 0 eV 0 fm 0 fm World initStep + 1 36 um -1.76 cm 1.1 cm 229 keV 1.09 keV 60 um 60 um World eIoni + 2 -4.11 cm -13.3 cm -1.52 cm 1.15 GeV 29.7 keV 13.3 cm 13.3 cm World eIoni + 3 -8.6 cm -18.1 cm -5.43 cm 1.63 GeV 17.3 keV 7.7 cm 21 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 0 fm -20 cm 2.22 cm 2.05 GeV 41.3 keV 20.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 293 um -16.5 cm 2.2 cm 1.7 GeV 32.4 keV 17 cm 17 cm World eIoni + 2 315 um -17 cm 2.22 cm 1.75 GeV 3.24 keV 5.28 mm 17.5 cm World eIoni + 3 430 um -20 cm 2.32 cm 2.05 GeV 4.78 keV 2.99 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 315 um -17 cm 2.22 cm 1.31 keV 0 eV 0 fm 0 fm World initStep + 1 312 um -17 cm 2.22 cm 310 keV 1.31 keV 78.5 um 78.5 um World eIoni + 2 291 um -20 cm 2.22 cm 299 MeV 5.79 keV 3.04 cm 3.05 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 293 um -16.5 cm 2.2 cm 1.47 keV 0 eV 0 fm 0 fm World initStep + 1 295 um -16.5 cm 2.2 cm 377 keV 1.47 keV 93.4 um 93.4 um World eIoni + 2 306 um -20 cm 2.2 cm 351 MeV 5.51 keV 3.57 cm 3.58 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 29.7 um -1.63 cm 1.07 cm 213 MeV 6.22 keV 2.07 cm 2.07 cm World eIoni + 2 34.9 um -3.36 cm 1.37 cm 386 MeV 4.57 keV 1.76 cm 3.83 cm World eIoni + 3 37.8 um -6.92 cm 1.7 cm 742 MeV 5.55 keV 3.58 cm 7.41 cm World eIoni + 4 38.2 um -8.11 cm 1.78 cm 861 MeV 2.98 keV 1.2 cm 8.6 cm World eIoni + 5 36 um -10.4 cm 1.89 cm 1.09 GeV 3.46 keV 2.24 cm 10.8 cm World eIoni + 6 36 um -18.6 cm 2.17 cm 1.91 GeV 16.1 keV 8.29 cm 19.1 cm World eIoni + 7 36.3 um -20 cm 2.21 cm 2.05 GeV 3.37 keV 1.36 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 36 um -18.6 cm 2.17 cm 4.98 keV 0 eV 0 fm 0 fm World initStep + 1 53.6 um -18.7 cm 2.17 cm 3.16 MeV 4.98 keV 708 um 708 um World eIoni + 2 79.7 um -19.1 cm 2.17 cm 47.7 MeV 457 eV 4.45 mm 5.16 mm World eIoni + 3 52.8 um -20 cm 2.16 cm 136 MeV 1.85 keV 8.85 mm 1.4 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 36 um -10.4 cm 1.89 cm 1.25 keV 0 eV 0 fm 0 fm World initStep + 1 35.4 um -10.4 cm 1.89 cm 289 keV 1.25 keV 73.7 um 73.7 um World eIoni + 2 30.9 um -20 cm 1.89 cm 965 MeV 22.7 keV 10.4 cm 10.4 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 38.2 um -8.11 cm 1.78 cm 6.29 keV 0 eV 0 fm 0 fm World initStep + 1 63.4 um -8.16 cm 1.77 cm 4.8 MeV 4.54 keV 1.07 mm 1.07 mm World eIoni + 2 887 um -8.2 cm 1.81 cm 9.14 MeV 86.9 eV 1.18 mm 2.25 mm World eIoni + 3 2.73 mm -20 cm 1.9 cm 1.19 GeV 16.9 keV 11.8 cm 12 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 37.8 um -6.92 cm 1.7 cm 1.73 keV 0 eV 0 fm 0 fm World initStep + 1 40.8 um -6.93 cm 1.7 cm 499 keV 1.73 keV 120 um 120 um World eIoni + 2 57 um -20 cm 1.7 cm 1.31 GeV 29.7 keV 13.6 cm 13.6 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 34.9 um -3.36 cm 1.37 cm 5.54 keV 0 eV 0 fm 0 fm World initStep + 1 34.6 um -3.4 cm 1.37 cm 3.83 MeV 5.54 keV 857 um 857 um World eIoni + 2 41.6 um -3.58 cm 1.38 cm 22.6 MeV 38 eV 1.87 mm 2.73 mm World eIoni + 3 54 um -20 cm 1.38 cm 1.66 GeV 30.6 keV 16.4 cm 16.7 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 29.7 um -1.63 cm 1.07 cm 2.09 keV 0 eV 0 fm 0 fm World initStep + 1 25.6 um -1.63 cm 1.07 cm 690 keV 2.09 keV 162 um 162 um World eIoni + 2 -2.42 um -1.77 cm 1.07 cm 14.1 MeV 261 eV 1.34 mm 1.5 mm World eIoni + 3 -32 um -2.89 cm 1.08 cm 126 MeV 2.16 keV 1.12 cm 1.27 cm World eIoni + 4 -29.2 um -5.86 cm 1.08 cm 423 MeV 3.96 keV 2.97 cm 4.24 cm World eIoni + 5 -53.7 um -17.1 cm 1.09 cm 1.54 GeV 27 keV 11.2 cm 15.4 cm World eIoni + 6 -66.9 um -20 cm 1.09 cm 1.84 GeV 5.17 keV 2.94 cm 18.4 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -53.7 um -17.1 cm 1.09 cm 2.35 keV 0 eV 0 fm 0 fm World initStep + 1 -58.4 um -17.1 cm 1.09 cm 845 keV 2.35 keV 196 um 196 um World eIoni + 2 46.3 um -17.5 cm 1.1 cm 48.6 MeV 449 eV 4.78 mm 4.98 mm World eIoni + 3 120 um -20 cm 1.1 cm 294 MeV 4.74 keV 2.45 cm 2.95 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -29.2 um -5.86 cm 1.08 cm 2 keV 0 eV 0 fm 0 fm World initStep + 1 -23.1 um -5.86 cm 1.08 cm 636 keV 2 keV 150 um 150 um World eIoni + 2 4.1 mm -19.4 cm 1.55 cm 1.35 GeV 24.5 keV 13.9 cm 13.9 cm World eIoni + 3 5.41 mm -20 cm 1.71 cm 1.41 GeV 1.42 keV 6.53 mm 14.6 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 9 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 4.1 mm -19.4 cm 1.55 cm 2.61 keV 0 eV 0 fm 0 fm World initStep + 1 4.09 mm -19.4 cm 1.55 cm 1.01 MeV 2.61 keV 232 um 232 um World eIoni + 2 4.07 mm -20 cm 1.55 cm 62.1 MeV 551 eV 6.12 mm 6.35 mm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -32 um -2.89 cm 1.08 cm 17.5 keV 0 eV 0 fm 0 fm World initStep + 1 -76.5 um -2.95 cm 1.07 cm 6.12 MeV 602 eV 641 um 641 um World eIoni + 2 577 um -6.43 cm 1.04 cm 354 MeV 8.44 keV 3.49 cm 3.55 cm World eIoni + 3 602 um -20 cm 1.11 cm 1.71 GeV 29 keV 13.6 cm 17.1 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 8 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 577 um -6.43 cm 1.04 cm 31.6 keV 0 eV 0 fm 0 fm World initStep + 1 671 um -6.89 cm 1.03 cm 47.6 MeV 4.03 keV 5.65 mm 5.65 mm World eIoni + 2 -5.87 mm -7.9 cm 1.72 cm 149 MeV 2.66 keV 1.51 cm 2.07 cm World eIoni + 3 -1.08 cm -13 cm 2.24 cm 662 MeV 6.89 keV 5.19 cm 7.26 cm World eIoni + 4 -1.26 cm -18 cm 2.44 cm 1.16 GeV 11.8 keV 5 cm 12.3 cm World eIoni + 5 -1.31 cm -20 cm 2.49 cm 1.35 GeV 4.11 keV 1.94 cm 14.2 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 12 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -1.26 cm -18 cm 2.44 cm 1.54 keV 0 eV 0 fm 0 fm World initStep + 1 -1.26 cm -18 cm 2.44 cm 409 keV 1.54 keV 100 um 100 um World eIoni + 2 -1.26 cm -20 cm 2.43 cm 194 MeV 5.99 keV 1.95 cm 1.96 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 12 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -1.08 cm -13 cm 2.24 cm 3.96 keV 0 eV 0 fm 0 fm World initStep + 1 -1.08 cm -13 cm 2.25 cm 2.11 MeV 3.96 keV 474 um 474 um World eIoni + 2 -1.08 cm -13.1 cm 2.25 cm 6.65 MeV 153 eV 454 um 928 um World eIoni + 3 -1.07 cm -14 cm 2.25 cm 101 MeV 1.24 keV 9.41 mm 1.03 cm World eIoni + 4 -1.07 cm -20 cm 2.24 cm 695 MeV 11.1 keV 5.94 cm 6.97 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 13 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -1.07 cm -14 cm 2.25 cm 1.26 keV 0 eV 0 fm 0 fm World initStep + 1 -1.07 cm -14 cm 2.25 cm 292 keV 1.26 keV 74.4 um 74.4 um World eIoni + 2 -1.07 cm -20 cm 2.25 cm 594 MeV 9.91 keV 6.2 cm 6.21 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -126 um -6.13 cm 1.67 cm 663 MeV 10.4 keV 6.61 cm 6.61 cm World eIoni + 2 -320 um -19.5 cm 2.23 cm 2 GeV 27.2 keV 13.4 cm 20 cm World eIoni + 3 -325 um -20 cm 2.25 cm 2.05 GeV 798 eV 4.55 mm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -320 um -19.5 cm 2.23 cm 9.26 keV 0 eV 0 fm 0 fm World initStep + 1 -340 um -19.6 cm 2.23 cm 9.31 MeV 5.19 keV 1.66 mm 1.66 mm World eIoni + 2 -369 um -19.7 cm 2.28 cm 12.3 MeV 37.9 eV 581 um 2.24 mm World eIoni + 3 -449 um -20 cm 2.42 cm 46 MeV 185 eV 3.69 mm 5.93 mm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -126 um -6.13 cm 1.67 cm 1.13 keV 0 eV 0 fm 0 fm World initStep + 1 -129 um -6.13 cm 1.66 cm 242 keV 1.13 keV 63 um 63 um World eIoni + 2 -9.99 mm -18.7 cm 8.39 mm 1.26 GeV 32.9 keV 14.5 cm 14.5 cm World eIoni + 3 -1.09 cm -20 cm 7.24 mm 1.38 GeV 2.53 keV 1.28 cm 15.8 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 295 um -10.6 cm 1.94 cm 1.11 GeV 23.8 keV 11.1 cm 11.1 cm World eIoni + 2 321 um -11.5 cm 1.98 cm 1.2 GeV 914 eV 8.13 mm 12 cm World eIoni + 3 522 um -20 cm 2.28 cm 2.05 GeV 14.6 keV 8.55 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 321 um -11.5 cm 1.98 cm 997 eV 0 eV 0 fm 0 fm World initStep + 1 318 um -11.5 cm 1.98 cm 198 keV 997 eV 53 um 53 um World eIoni + 2 296 um -20 cm 1.98 cm 854 MeV 27.9 keV 9.77 cm 9.78 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 295 um -10.6 cm 1.94 cm 2.53 keV 0 eV 0 fm 0 fm World initStep + 1 297 um -10.7 cm 1.94 cm 959 keV 2.53 keV 220 um 220 um World eIoni + 2 290 um -10.9 cm 1.94 cm 20.9 MeV 439 eV 2 mm 2.22 mm World eIoni + 3 -140 um -18.7 cm 1.92 cm 804 MeV 14.3 keV 7.83 cm 8.05 cm World eIoni + 4 -241 um -20 cm 1.91 cm 936 MeV 2.05 keV 1.32 cm 9.37 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -140 um -18.7 cm 1.92 cm 1.78 keV 0 eV 0 fm 0 fm World initStep + 1 -135 um -18.7 cm 1.92 cm 520 keV 1.78 keV 125 um 125 um World eIoni + 2 -117 um -20 cm 1.92 cm 132 MeV 2.25 keV 1.32 cm 1.33 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 0 fm -20 cm 2.22 cm 2.05 GeV 43.4 keV 20.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 111 um -7.06 cm 1.7 cm 755 MeV 15.4 keV 7.54 cm 7.54 cm World eIoni + 2 425 um -11.3 cm 1.91 cm 1.18 GeV 14.3 keV 4.28 cm 11.8 cm World eIoni + 3 525 um -13.2 cm 1.98 cm 1.37 GeV 4.07 keV 1.85 cm 13.7 cm World eIoni + 4 632 um -15.5 cm 2.06 cm 1.6 GeV 3.39 keV 2.29 cm 16 cm World eIoni + 5 758 um -18.6 cm 2.14 cm 1.91 GeV 7.74 keV 3.16 cm 19.1 cm World eIoni + 6 806 um -20 cm 2.18 cm 2.05 GeV 1.56 keV 1.37 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 758 um -18.6 cm 2.14 cm 6.53 keV 0 eV 0 fm 0 fm World initStep + 1 769 um -18.7 cm 2.14 cm 5.13 MeV 4.24 keV 1.13 mm 1.13 mm World eIoni + 2 -468 um -18.8 cm 2.15 cm 18.3 MeV 211 eV 2.06 mm 3.19 mm World eIoni + 3 -1.47 mm -20 cm 2.16 cm 137 MeV 2.65 keV 1.19 cm 1.51 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 632 um -15.5 cm 2.06 cm 3.3 keV 0 eV 0 fm 0 fm World initStep + 1 620 um -15.5 cm 2.06 cm 1.53 MeV 3.3 keV 346 um 346 um World eIoni + 2 578 um -15.7 cm 2.05 cm 27.3 MeV 30.7 eV 2.58 mm 2.93 mm World eIoni + 3 543 um -16.4 cm 2.05 cm 91.3 MeV 1.24 keV 6.39 mm 9.32 mm World eIoni + 4 497 um -20 cm 2.05 cm 453 MeV 8.49 keV 3.62 cm 4.55 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 5 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 543 um -16.4 cm 2.05 cm 3.15 keV 0 eV 0 fm 0 fm World initStep + 1 547 um -16.4 cm 2.05 cm 1.41 MeV 3.15 keV 320 um 320 um World eIoni + 2 584 um -17 cm 2.06 cm 63.9 MeV 678 eV 6.26 mm 6.57 mm World eIoni + 3 659 um -20 cm 2.07 cm 362 MeV 7.29 keV 2.98 cm 3.64 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 525 um -13.2 cm 1.98 cm 1.05 keV 0 eV 0 fm 0 fm World initStep + 1 523 um -13.2 cm 1.98 cm 215 keV 1.05 keV 56.8 um 56.8 um World eIoni + 2 501 um -20 cm 1.98 cm 682 MeV 16.1 keV 7.45 cm 7.45 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 425 um -11.3 cm 1.91 cm 1.05 keV 0 eV 0 fm 0 fm World initStep + 1 427 um -11.3 cm 1.91 cm 216 keV 1.05 keV 57 um 57 um World eIoni + 2 447 um -20 cm 1.91 cm 867 MeV 20.2 keV 9.73 cm 9.74 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 111 um -7.06 cm 1.7 cm 1.07 keV 0 eV 0 fm 0 fm World initStep + 1 113 um -7.06 cm 1.7 cm 222 keV 1.07 keV 58.4 um 58.4 um World eIoni + 2 -8.32 mm -18 cm -1.08 mm 1.09 GeV 24.8 keV 12.6 cm 12.6 cm WorldTransportation + 3 -6.44 mm -20 cm -8.57 mm 1.29 GeV 4.16 keV 2.15 cm 14.8 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -128 um -4.5 cm 1.51 cm 500 MeV 8.01 keV 4.98 cm 4.98 cm World eIoni + 2 -443 um -20 cm 2.26 cm 2.05 GeV 31.1 keV 15.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -128 um -4.5 cm 1.51 cm 1.02 keV 0 eV 0 fm 0 fm World initStep + 1 -125 um -4.5 cm 1.51 cm 205 keV 1.02 keV 54.7 um 54.7 um World eIoni + 2 -3.16 cm -14.2 cm -1.13 cm 967 MeV 27 keV 11.2 cm 11.2 cm World eIoni + 3 -8.55 cm -18.1 cm -3.02 cm 1.36 GeV 15.1 keV 7.01 cm 18.2 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 0 fm -20 cm 2.22 cm 2.05 GeV 38.6 keV 20.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -1.24 um -1.09 mm 3.27 mm 61 MeV 825 eV 3.5 mm 3.5 mm World eIoni + 2 -127 um -6.51 cm 1.67 cm 700 MeV 11.4 keV 6.64 cm 6.99 cm World eIoni + 3 -163 um -18.2 cm 2.15 cm 1.87 GeV 23.6 keV 11.7 cm 18.7 cm World eIoni + 4 -164 um -20 cm 2.19 cm 2.05 GeV 3.61 keV 1.78 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -163 um -18.2 cm 2.15 cm 1.91 keV 0 eV 0 fm 0 fm World initStep + 1 -169 um -18.2 cm 2.15 cm 588 keV 1.91 keV 140 um 140 um World eIoni + 2 -190 um -20 cm 2.15 cm 178 MeV 3.23 keV 1.78 cm 1.8 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -127 um -6.51 cm 1.67 cm 1.09 keV 0 eV 0 fm 0 fm World initStep + 1 -128 um -6.51 cm 1.67 cm 230 keV 1.09 keV 60.4 um 60.4 um World eIoni + 2 1.1 cm -18.1 cm 2 mm 1.16 GeV 30.8 keV 13.4 cm 13.4 cm World eIoni + 3 1.72 cm -19.9 cm -6.71 mm 1.34 GeV 5.01 keV 2.09 cm 15.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -1.24 um -1.09 mm 3.27 mm 2.09 keV 0 eV 0 fm 0 fm World initStep + 1 110 nm -1.16 mm 3.27 mm 690 keV 2.09 keV 162 um 162 um World eIoni + 2 362 um -1.14 cm 2.96 mm 104 MeV 1.65 keV 1.03 cm 1.05 cm World eIoni + 3 641 um -7.45 cm 2.99 mm 734 MeV 14.6 keV 6.31 cm 7.36 cm World eIoni + 4 652 um -13.1 cm 3.06 mm 1.3 GeV 13.4 keV 5.63 cm 13 cm World eIoni + 5 655 um -17.6 cm 3.1 mm 1.74 GeV 9.17 keV 4.48 cm 17.5 cm World eIoni + 6 657 um -20 cm 3.11 mm 1.99 GeV 8.59 keV 2.44 cm 19.9 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 769 um -6.76 cm 8.38 mm 73.9 keV 0 eV 0 fm 0 fm World initStep - 1 558 um -8.52 cm 8.34 mm 177 MeV 9.99 keV 2.07 cm 2.07 cm World eIoni - 2 476 um -8.6 cm 8.83 mm 185 MeV 151 eV 924 um 2.16 cm World eIoni - 3 -2.84 mm -20 cm 2.87 cm 1.33 GeV 26.3 keV 11.6 cm 13.8 cm OutOfWorldTransportation + 0 655 um -17.6 cm 3.1 mm 1.06 keV 0 eV 0 fm 0 fm World initStep + 1 655 um -17.6 cm 3.1 mm 219 keV 1.06 keV 57.8 um 57.8 um World eIoni + 2 653 um -20 cm 3.12 mm 244 MeV 4.32 keV 2.51 cm 2.52 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 652 um -13.1 cm 3.06 mm 1.41 keV 0 eV 0 fm 0 fm World initStep + 1 656 um -13.1 cm 3.06 mm 352 keV 1.41 keV 87.8 um 87.8 um World eIoni + 2 676 um -20 cm 3.05 mm 692 MeV 12.9 keV 7.18 cm 7.19 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 641 um -7.45 cm 2.99 mm 2.21 keV 0 eV 0 fm 0 fm World initStep + 1 647 um -7.46 cm 2.99 mm 759 keV 2.21 keV 177 um 177 um World eIoni + 2 950 um -8.33 cm 2.84 mm 87.6 MeV 717 eV 8.69 mm 8.87 mm World eIoni + 3 2 mm -20 cm 4.44 mm 1.25 GeV 25.6 keV 11.7 cm 12.6 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -2231,30 +2344,30 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 93.2 um -7.5 cm 1.76 cm 2.58 keV 0 eV 0 fm 0 fm World initStep 1 85.1 um -7.51 cm 1.76 cm 994 keV 2.58 keV 228 um 228 um World eIoni - 2 -250 um -8.56 cm 1.75 cm 106 MeV 2.58 keV 1.05 cm 1.07 cm World eIoni - 3 -514 um -9.62 cm 1.74 cm 212 MeV 2.57 keV 1.06 cm 2.13 cm World eIoni - 4 -906 um -15.1 cm 1.72 cm 761 MeV 14.8 keV 5.49 cm 7.63 cm World eIoni - 5 -944 um -20 cm 1.72 cm 1.25 GeV 5.31 keV 4.88 cm 12.5 cm OutOfWorldTransportation + 2 -254 um -8.57 cm 1.75 cm 107 MeV 2.58 keV 1.06 cm 1.08 cm World eIoni + 3 -519 um -9.63 cm 1.74 cm 213 MeV 2.57 keV 1.06 cm 2.14 cm World eIoni + 4 -917 um -15.1 cm 1.72 cm 762 MeV 14.8 keV 5.49 cm 7.64 cm World eIoni + 5 -957 um -20 cm 1.72 cm 1.25 GeV 5.29 keV 4.88 cm 12.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 7, Parent ID = 3 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -906 um -15.1 cm 1.72 cm 2.06 keV 0 eV 0 fm 0 fm World initStep - 1 -905 um -15.1 cm 1.72 cm 671 keV 2.06 keV 158 um 158 um World eIoni - 2 -1.65 mm -17.1 cm 1.83 cm 200 MeV 4.42 keV 2 cm 2.02 cm World eIoni - 3 -1.77 mm -20 cm 1.84 cm 488 MeV 6.85 keV 2.88 cm 4.9 cm OutOfWorldTransportation + 0 -917 um -15.1 cm 1.72 cm 2.06 keV 0 eV 0 fm 0 fm World initStep + 1 -916 um -15.1 cm 1.72 cm 670 keV 2.06 keV 158 um 158 um World eIoni + 2 -1.67 mm -17.1 cm 1.83 cm 202 MeV 4.44 keV 2.02 cm 2.03 cm World eIoni + 3 -1.79 mm -20 cm 1.84 cm 488 MeV 6.82 keV 2.86 cm 4.89 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -514 um -9.62 cm 1.74 cm 2.76 keV 0 eV 0 fm 0 fm World initStep - 1 -504 um -9.63 cm 1.74 cm 1.12 MeV 2.76 keV 255 um 255 um World eIoni - 2 -500 um -9.91 cm 1.74 cm 28.4 MeV 424 eV 2.73 mm 2.98 mm World eIoni - 3 -599 um -20 cm 1.61 cm 1.04 GeV 17.7 keV 10.1 cm 10.4 cm OutOfWorldTransportation + 0 -519 um -9.63 cm 1.74 cm 2.76 keV 0 eV 0 fm 0 fm World initStep + 1 -510 um -9.64 cm 1.74 cm 1.12 MeV 2.76 keV 255 um 255 um World eIoni + 2 -505 um -9.91 cm 1.74 cm 28.3 MeV 424 eV 2.72 mm 2.97 mm World eIoni + 3 -604 um -20 cm 1.61 cm 1.04 GeV 17.7 keV 10.1 cm 10.4 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -2299,7 +2412,7 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 -83.6 um -16.4 cm 2.12 cm 1.49 keV 0 eV 0 fm 0 fm World initStep 1 -88.1 um -16.4 cm 2.12 cm 388 keV 1.49 keV 95.8 um 95.8 um World eIoni - 2 -112 um -20 cm 2.12 cm 357 MeV 5.04 keV 3.62 cm 3.63 cm OutOfWorldTransportation + 2 -112 um -20 cm 2.12 cm 357 MeV 5.05 keV 3.62 cm 3.63 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 @@ -2308,10 +2421,10 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 -29.1 um -6.75 cm 1.7 cm 12.8 keV 0 eV 0 fm 0 fm World initStep 1 -70.9 um -6.89 cm 1.7 cm 14.8 MeV 4.51 keV 2.18 mm 2.18 mm World eIoni - 2 -3.69 mm -7.77 cm 1.5 cm 102 MeV 1.46 keV 1.03 cm 1.25 cm World eIoni + 2 -3.69 mm -7.77 cm 1.5 cm 103 MeV 1.46 keV 1.04 cm 1.25 cm World eIoni 3 -7.08 mm -18.5 cm 1.31 cm 88.2 MeV 21.7 keV 10.8 cm 12 cm World eBrem - 4 -7.18 mm -19.3 cm 1.31 cm 169 MeV 1.01 keV 8.05 mm 12.8 cm World eIoni - 5 -7.23 mm -20 cm 1.31 cm 233 MeV 1.65 keV 6.45 mm 13.5 cm OutOfWorldTransportation + 4 -7.18 mm -19.3 cm 1.31 cm 169 MeV 1.01 keV 8.1 mm 12.8 cm World eIoni + 5 -7.23 mm -20 cm 1.31 cm 234 MeV 1.65 keV 6.45 mm 13.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 @@ -2320,7 +2433,7 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 -7.18 mm -19.3 cm 1.31 cm 1.3 keV 0 eV 0 fm 0 fm World initStep 1 -7.17 mm -19.3 cm 1.31 cm 309 keV 1.3 keV 78.2 um 78.2 um World eIoni - 2 -7.17 mm -20 cm 1.31 cm 64.6 MeV 972 eV 6.45 mm 6.53 mm OutOfWorldTransportation + 2 -7.17 mm -20 cm 1.31 cm 64.5 MeV 972 eV 6.45 mm 6.53 mm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 5, Parent ID = 3 @@ -2336,9 +2449,9 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 -11 um -6.35 mm 7.35 mm 8.14 keV 0 eV 0 fm 0 fm World initStep - 1 -8.33 um -6.86 mm 7.38 mm 5.44 MeV 1.75 keV 713 um 713 um World eIoni + 1 -8.33 um -6.86 mm 7.38 mm 5.44 MeV 1.75 keV 712 um 712 um World eIoni 2 875 um -5.01 cm 7.53 mm 437 MeV 7.55 keV 4.33 cm 4.4 cm World eIoni - 3 997 um -6.45 cm 7.3 mm 582 MeV 3.25 keV 1.45 cm 5.85 cm World eIoni + 3 996 um -6.45 cm 7.3 mm 582 MeV 3.25 keV 1.45 cm 5.85 cm World eIoni 4 1.1 mm -8.1 cm 7.1 mm 746 MeV 4.23 keV 1.64 cm 7.49 cm World eIoni 5 1.51 mm -20 cm 6.36 mm 1.94 GeV 30.5 keV 11.9 cm 19.4 cm OutOfWorldTransportation @@ -2349,7 +2462,7 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 1.1 mm -8.1 cm 7.1 mm 6.51 keV 0 eV 0 fm 0 fm World initStep 1 1.1 mm -8.14 cm 7.08 mm 5.1 MeV 6.51 keV 1.13 mm 1.13 mm World eIoni - 2 353 um -8.32 cm 8.2 mm 22.9 MeV 389 eV 2.58 mm 3.71 mm World eIoni + 2 352 um -8.32 cm 8.2 mm 22.9 MeV 389 eV 2.58 mm 3.71 mm World eIoni 3 -970 um -15.3 cm 9.74 mm 724 MeV 13.4 keV 7.02 cm 7.39 cm World eIoni 4 -1.33 mm -20 cm 9.71 mm 1.19 GeV 8.76 keV 4.67 cm 12.1 cm OutOfWorldTransportation @@ -2359,20 +2472,20 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 -970 um -15.3 cm 9.74 mm 5.76 keV 0 eV 0 fm 0 fm World initStep - 1 -950 um -15.4 cm 9.75 mm 4.09 MeV 5.76 keV 918 um 918 um World eIoni + 1 -950 um -15.4 cm 9.75 mm 4.1 MeV 5.76 keV 918 um 918 um World eIoni 2 -933 um -15.6 cm 9.75 mm 25.1 MeV 368 eV 2.1 mm 3.02 mm World eIoni - 3 -905 um -20 cm 9.74 mm 467 MeV 7.21 keV 4.42 cm 4.72 cm OutOfWorldTransportation + 3 -905 um -20 cm 9.74 mm 467 MeV 7.2 keV 4.42 cm 4.72 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 997 um -6.45 cm 7.3 mm 6.89 keV 0 eV 0 fm 0 fm World initStep - 1 987 um -6.46 cm 7.29 mm 834 keV 88.2 eV 87.9 um 87.9 um World eIoni + 0 996 um -6.45 cm 7.3 mm 6.89 keV 0 eV 0 fm 0 fm World initStep + 1 986 um -6.46 cm 7.29 mm 834 keV 88.1 eV 88 um 88 um World eIoni 2 6.76 mm -16.5 cm 1.78 cm 1 GeV 17.2 keV 10.1 cm 10.2 cm World eIoni 3 9.44 mm -19.4 cm 2.18 cm 1.3 GeV 6.31 keV 3.01 cm 13.2 cm World eIoni - 4 9.85 mm -20 cm 2.24 cm 1.35 GeV 1.96 keV 5.37 mm 13.7 cm OutOfWorldTransportation + 4 9.85 mm -20 cm 2.24 cm 1.35 GeV 1.95 keV 5.35 mm 13.7 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 12, Parent ID = 8 @@ -2381,8 +2494,8 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 9.44 mm -19.4 cm 2.18 cm 3.53 keV 0 eV 0 fm 0 fm World initStep 1 9.43 mm -19.5 cm 2.18 cm 1.72 MeV 3.53 keV 388 um 388 um World eIoni - 2 9.4 mm -19.6 cm 2.18 cm 19.6 MeV 93.2 eV 1.79 mm 2.17 mm World eIoni - 3 9.38 mm -20 cm 2.18 cm 53.5 MeV 228 eV 3.4 mm 5.57 mm OutOfWorldTransportation + 2 9.4 mm -19.6 cm 2.18 cm 19.6 MeV 93.2 eV 1.79 mm 2.18 mm World eIoni + 3 9.38 mm -20 cm 2.18 cm 53.3 MeV 228 eV 3.37 mm 5.55 mm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 11, Parent ID = 8 @@ -2391,7 +2504,7 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 6.76 mm -16.5 cm 1.78 cm 1.84 keV 0 eV 0 fm 0 fm World initStep 1 6.75 mm -16.5 cm 1.78 cm 552 keV 1.84 keV 132 um 132 um World eIoni - 2 6.74 mm -20 cm 1.78 cm 352 MeV 6.07 keV 3.55 cm 3.56 cm OutOfWorldTransportation + 2 6.74 mm -20 cm 1.78 cm 352 MeV 6.09 keV 3.55 cm 3.56 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 @@ -2399,10 +2512,10 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 875 um -5.01 cm 7.53 mm 2.91 keV 0 eV 0 fm 0 fm World initStep - 1 868 um -5.02 cm 7.54 mm 1.23 MeV 2.91 keV 279 um 279 um World eIoni - 2 861 um -5.06 cm 7.54 mm 5.28 MeV 45.5 eV 405 um 684 um World eIoni + 1 867 um -5.02 cm 7.54 mm 1.23 MeV 2.91 keV 279 um 279 um World eIoni + 2 860 um -5.06 cm 7.54 mm 5.27 MeV 45.5 eV 404 um 683 um World eIoni 3 3.62 mm -15.2 cm 8.03 mm 1.02 GeV 17.5 keV 10.2 cm 10.2 cm World eIoni - 4 8.59 mm -20 cm 8.29 mm 1.5 GeV 9.7 keV 4.79 cm 15 cm OutOfWorldTransportation + 4 8.6 mm -20 cm 8.29 mm 1.5 GeV 9.7 keV 4.79 cm 15 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 13, Parent ID = 7 @@ -2411,7 +2524,7 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 3.62 mm -15.2 cm 8.03 mm 1.68 keV 0 eV 0 fm 0 fm World initStep 1 3.61 mm -15.2 cm 8.02 mm 472 keV 1.68 keV 114 um 114 um World eIoni - 2 3.59 mm -20 cm 8.01 mm 478 MeV 7.57 keV 4.85 cm 4.86 cm OutOfWorldTransportation + 2 3.59 mm -20 cm 8.01 mm 478 MeV 7.55 keV 4.85 cm 4.87 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -2428,9 +2541,9 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 -15.6 um -9.59 mm 8.71 mm 1.02 keV 0 eV 0 fm 0 fm World initStep - 1 -17.2 um -9.61 mm 8.71 mm 207 keV 1.02 keV 54.7 um 54.7 um World eIoni - 2 1.98 cm -10.7 cm -2.77 cm 976 MeV 29.2 keV 11.3 cm 11.3 cm World eIoni - 3 8.26 cm -18.2 cm -11.6 cm 1.73 GeV 27.7 keV 13.6 cm 24.9 cm OutOfWorldTransportation + 1 -17.2 um -9.61 mm 8.71 mm 206 keV 1.02 keV 54.7 um 54.7 um World eIoni + 2 1.97 cm -10.7 cm -2.76 cm 974 MeV 29.1 keV 11.3 cm 11.3 cm World eIoni + 3 8.26 cm -18.2 cm -11.5 cm 1.73 GeV 27.7 keV 13.6 cm 24.9 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -2458,7 +2571,7 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 265 um -7.67 cm 1.76 cm 1.13 keV 0 eV 0 fm 0 fm World initStep 1 262 um -7.67 cm 1.76 cm 245 keV 1.13 keV 63.8 um 63.8 um World eIoni - 2 242 um -20 cm 1.76 cm 1.23 GeV 31.6 keV 14.1 cm 14.1 cm OutOfWorldTransportation + 2 242 um -20 cm 1.76 cm 1.23 GeV 31.7 keV 14.1 cm 14.1 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -2493,9 +2606,9 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 191 um -6.01 cm 1.64 cm 1.07 keV 0 eV 0 fm 0 fm World initStep - 1 193 um -6.01 cm 1.64 cm 223 keV 1.07 keV 58.5 um 58.5 um World eIoni - 2 2.88 cm -17 cm 2.4 cm 1.1 GeV 28.9 keV 12.7 cm 12.7 cm World eIoni - 3 5.86 cm -19.1 cm 1.7 cm 1.31 GeV 7.49 keV 3.73 cm 16.4 cm OutOfWorldTransportation + 1 193 um -6.01 cm 1.64 cm 222 keV 1.07 keV 58.5 um 58.5 um World eIoni + 2 2.9 cm -17 cm 2.41 cm 1.1 GeV 28.9 keV 12.7 cm 12.7 cm World eIoni + 3 5.9 cm -19.1 cm 1.71 cm 1.31 GeV 7.52 keV 3.75 cm 16.4 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -2521,21 +2634,21 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 -20.5 um -5.54 cm 1.6 cm 2.15 keV 0 eV 0 fm 0 fm World initStep - 1 -27.8 um -5.54 cm 1.6 cm 724 keV 2.15 keV 170 um 170 um World eIoni - 2 -50 um -5.79 cm 1.61 cm 24.8 MeV 229 eV 2.41 mm 2.58 mm World eIoni - 3 26.6 um -20 cm 1.64 cm 1.45 GeV 23.6 keV 14.2 cm 14.5 cm OutOfWorldTransportation + 1 -27.7 um -5.54 cm 1.6 cm 723 keV 2.15 keV 170 um 170 um World eIoni + 2 -50.1 um -5.79 cm 1.61 cm 25 MeV 229 eV 2.43 mm 2.6 mm World eIoni + 3 27.7 um -20 cm 1.64 cm 1.45 GeV 23.6 keV 14.2 cm 14.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -50 um -5.79 cm 1.61 cm 2.67 keV 0 eV 0 fm 0 fm World initStep - 1 -44.9 um -5.8 cm 1.61 cm 1.06 MeV 2.67 keV 242 um 242 um World eIoni - 2 -3.72 um -6.02 cm 1.61 cm 23.6 MeV 159 eV 2.26 mm 2.5 mm World eIoni - 3 902 um -14.7 cm 1.6 cm 892 MeV 14.6 keV 8.69 cm 8.94 cm World eIoni + 0 -50.1 um -5.79 cm 1.61 cm 2.67 keV 0 eV 0 fm 0 fm World initStep + 1 -45 um -5.8 cm 1.61 cm 1.06 MeV 2.67 keV 242 um 242 um World eIoni + 2 -3.4 um -6.02 cm 1.61 cm 23.8 MeV 159 eV 2.28 mm 2.52 mm World eIoni + 3 901 um -14.7 cm 1.6 cm 892 MeV 14.6 keV 8.69 cm 8.94 cm World eIoni 4 942 um -19.3 cm 1.59 cm 1.35 GeV 10.6 keV 4.59 cm 13.5 cm World eIoni - 5 947 um -20 cm 1.59 cm 1.42 GeV 1.82 keV 7.03 mm 14.2 cm OutOfWorldTransportation + 5 946 um -20 cm 1.59 cm 1.42 GeV 1.81 keV 6.99 mm 14.2 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 @@ -2543,17 +2656,17 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 942 um -19.3 cm 1.59 cm 6.29 keV 0 eV 0 fm 0 fm World initStep - 1 917 um -19.3 cm 1.59 cm 4.79 MeV 4.25 keV 1.07 mm 1.07 mm World eIoni - 2 1.46 mm -20 cm 1.74 cm 70.5 MeV 1.19 keV 6.96 mm 8.03 mm OutOfWorldTransportation + 1 916 um -19.3 cm 1.59 cm 4.79 MeV 4.25 keV 1.07 mm 1.07 mm World eIoni + 2 1.46 mm -20 cm 1.74 cm 70.1 MeV 1.19 keV 6.92 mm 7.99 mm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 902 um -14.7 cm 1.6 cm 1.22 keV 0 eV 0 fm 0 fm World initStep - 1 899 um -14.7 cm 1.6 cm 277 keV 1.22 keV 71 um 71 um World eIoni - 2 878 um -20 cm 1.6 cm 529 MeV 10.4 keV 5.52 cm 5.53 cm OutOfWorldTransportation + 0 901 um -14.7 cm 1.6 cm 1.22 keV 0 eV 0 fm 0 fm World initStep + 1 898 um -14.7 cm 1.6 cm 277 keV 1.22 keV 71 um 71 um World eIoni + 2 877 um -20 cm 1.6 cm 529 MeV 10.4 keV 5.52 cm 5.52 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -2562,8 +2675,8 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 10.3 um -5.89 mm 7.12 mm 1.17 keV 0 eV 0 fm 0 fm World initStep 1 13.6 um -5.91 mm 7.12 mm 259 keV 1.17 keV 66.8 um 66.8 um World eIoni - 2 4.55 cm -14.6 cm -2.13 cm 1.4 GeV 37.5 keV 16.2 cm 16.2 cm World eIoni - 3 10.9 cm -16.8 cm -7.29 cm 1.62 GeV 20.6 keV 8.58 cm 24.7 cm OutOfWorldTransportation + 2 4.57 cm -14.6 cm -2.14 cm 1.4 GeV 37.4 keV 16.1 cm 16.1 cm World eIoni + 3 10.9 cm -16.8 cm -7.31 cm 1.62 GeV 20.7 keV 8.58 cm 24.7 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -2581,16 +2694,16 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 -596 um -14.4 cm 2.09 cm 1.48 keV 0 eV 0 fm 0 fm World initStep 1 -599 um -14.5 cm 2.09 cm 382 keV 1.48 keV 94.5 um 94.5 um World eIoni - 2 3.5 mm -17.9 cm 1.93 cm 340 MeV 3.56 keV 3.45 cm 3.46 cm World eBrem - 3 5.19 mm -20 cm 1.86 cm 554 MeV 2.96 keV 2.15 cm 5.61 cm OutOfWorldTransportation + 2 3.49 mm -17.8 cm 1.93 cm 340 MeV 3.57 keV 3.45 cm 3.46 cm World eBrem + 3 5.18 mm -20 cm 1.86 cm 554 MeV 3.16 keV 2.15 cm 5.61 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 3.5 mm -17.9 cm 1.93 cm 32 keV 0 eV 0 fm 0 fm World initStep - 1 5.71 mm -20 cm 1.85 cm 32 keV 0 eV 2.15 cm 2.15 cm OutOfWorldTransportation + 0 3.49 mm -17.8 cm 1.93 cm 32 keV 0 eV 0 fm 0 fm World initStep + 1 5.7 mm -20 cm 1.85 cm 32 keV 0 eV 2.16 cm 2.16 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -2610,8 +2723,8 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 -507 um -15.3 cm 2.04 cm 1.84 keV 0 eV 0 fm 0 fm World initStep - 1 -502 um -15.3 cm 2.04 cm 555 keV 1.84 keV 133 um 133 um World eIoni - 2 -482 um -20 cm 2.04 cm 471 MeV 8.4 keV 4.76 cm 4.78 cm OutOfWorldTransportation + 1 -502 um -15.3 cm 2.04 cm 554 keV 1.84 keV 133 um 133 um World eIoni + 2 -482 um -20 cm 2.04 cm 471 MeV 8.42 keV 4.76 cm 4.78 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 @@ -2620,8 +2733,8 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 -504 um -15 cm 2.04 cm 2.24 keV 0 eV 0 fm 0 fm World initStep 1 -511 um -15 cm 2.04 cm 774 keV 2.24 keV 181 um 181 um World eIoni - 2 -1.04 mm -16.3 cm 2.06 cm 125 MeV 3.66 keV 1.25 cm 1.27 cm World eIoni - 3 -2.22 mm -20 cm 2.09 cm 496 MeV 5.19 keV 3.71 cm 4.98 cm OutOfWorldTransportation + 2 -1.05 mm -16.3 cm 2.06 cm 126 MeV 3.67 keV 1.26 cm 1.28 cm World eIoni + 3 -2.23 mm -20 cm 2.09 cm 496 MeV 5.18 keV 3.7 cm 4.98 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 @@ -2669,60 +2782,8 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 -44.5 um -5.83 cm 1.62 cm 3.8 keV 0 eV 0 fm 0 fm World initStep 1 -30 um -5.85 cm 1.62 cm 1.96 MeV 3.8 keV 442 um 442 um World eIoni - 2 -29.7 um -6.14 cm 1.62 cm 30.9 MeV 649 eV 2.89 mm 3.34 mm World eIoni - 3 -33.9 um -7.01 cm 1.61 cm 118 MeV 2.78 keV 8.67 mm 1.2 cm World eIoni - 4 -9.51 um -8.13 cm 1.61 cm 229 MeV 1.11 keV 1.12 cm 2.32 cm World eIoni - 5 18.8 um -11.3 cm 1.6 cm 542 MeV 6.23 keV 3.13 cm 5.44 cm World eIoni - 6 24.5 um -12.4 cm 1.6 cm 652 MeV 1.56 keV 1.11 cm 6.55 cm World eIoni - 7 42.8 um -16.5 cm 1.6 cm 1.06 GeV 8.11 keV 4.11 cm 10.7 cm World eIoni - 8 57.8 um -20 cm 1.6 cm 1.42 GeV 9.16 keV 3.53 cm 14.2 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 4 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 42.8 um -16.5 cm 1.6 cm 1.04 keV 0 eV 0 fm 0 fm World initStep - 1 44 um -16.5 cm 1.6 cm 213 keV 1.04 keV 56.2 um 56.2 um World eIoni - 2 52.7 um -20 cm 1.6 cm 353 MeV 9.7 keV 3.69 cm 3.69 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 4 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 24.5 um -12.4 cm 1.6 cm 1.22 keV 0 eV 0 fm 0 fm World initStep - 1 25.4 um -12.4 cm 1.6 cm 276 keV 1.22 keV 70.7 um 70.7 um World eIoni - 2 31 um -20 cm 1.6 cm 764 MeV 14.5 keV 8.14 cm 8.15 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 4 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 18.8 um -11.3 cm 1.6 cm 3.08 keV 0 eV 0 fm 0 fm World initStep - 1 30 um -11.3 cm 1.6 cm 1.35 MeV 3.08 keV 307 um 307 um World eIoni - 2 133 um -11.7 cm 1.6 cm 49.5 MeV 1.12 keV 4.82 mm 5.12 mm World eIoni - 3 560 um -20 cm 1.61 cm 875 MeV 13.2 keV 8.25 cm 8.77 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -9.51 um -8.13 cm 1.61 cm 3.15 keV 0 eV 0 fm 0 fm World initStep - 1 -3.61 um -8.14 cm 1.61 cm 1.41 MeV 3.15 keV 320 um 320 um World eIoni - 2 47.3 um -8.49 cm 1.61 cm 36.8 MeV 1.21 keV 3.54 mm 3.86 mm World eIoni - 3 134 um -20 cm 1.62 cm 1.19 GeV 20.9 keV 11.5 cm 11.9 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -33.9 um -7.01 cm 1.61 cm 2.01 keV 0 eV 0 fm 0 fm World initStep - 1 -34 um -7.01 cm 1.61 cm 643 keV 2.01 keV 152 um 152 um World eIoni - 2 -34.2 um -20 cm 1.61 cm 1.3 GeV 21.2 keV 13.3 cm 13.4 cm OutOfWorldTransportation + 2 -29.7 um -6.14 cm 1.62 cm 30.9 MeV 707 eV 2.9 mm 3.34 mm World eIoni + 3 -69.4 um -20 cm 1.61 cm 1.42 GeV 21.6 keV 13.9 cm 14.2 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 @@ -2731,8 +2792,8 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 -19.7 um -1.67 cm 1.08 cm 1.01 keV 0 eV 0 fm 0 fm World initStep 1 -17 um -1.67 cm 1.08 cm 201 keV 1.01 keV 53.6 um 53.6 um World eIoni - 2 7.25 mm -11 cm 4.98 cm 936 MeV 26.8 keV 10.8 cm 10.8 cm World eIoni - 3 1.75 cm -19.9 cm 12.3 cm 1.83 GeV 21.3 keV 11.7 cm 22.6 cm OutOfWorldTransportation + 2 1.45 cm -11 cm -2.61 cm 934 MeV 22.7 keV 10.8 cm 10.8 cm World eIoni + 3 1.4 cm -20 cm -4.53 cm 1.83 GeV 24.4 keV 9.16 cm 20 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -2740,215 +2801,41 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 -206 nm -49.2 um 704 um 2.17 keV 0 eV 0 fm 0 fm World initStep - 1 5.71 um -119 um 704 um 732 keV 2.17 keV 172 um 172 um World eIoni - 2 -2.84 mm -4.19 cm 2.9 mm 418 MeV 10 keV 4.2 cm 4.22 cm World eIoni - 3 -3.97 mm -9.9 cm 7.25 mm 989 MeV 9.39 keV 5.73 cm 9.95 cm World eIoni - 4 -4.28 mm -12.4 cm 8.38 mm 1.24 GeV 4.61 keV 2.51 cm 12.5 cm World eBrem - 5 -4.5 mm -14.5 cm 9.17 mm 1.45 GeV 6.93 keV 2.1 cm 14.6 cm World eIoni - 6 -4.94 mm -20 cm 1.08 cm 2 GeV 10.7 keV 5.5 cm 20.1 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -4.5 mm -14.5 cm 9.17 mm 3.96 keV 0 eV 0 fm 0 fm World initStep - 1 -4.5 mm -14.5 cm 9.16 mm 2.11 MeV 3.96 keV 475 um 475 um World eIoni - 2 -4.5 mm -14.6 cm 9.15 mm 8.41 MeV 114 eV 630 um 1.1 mm World eIoni - 3 -4.48 mm -15.1 cm 9.15 mm 62.8 MeV 722 eV 5.44 mm 6.54 mm World eIoni - 4 -4.46 mm -17.5 cm 9.18 mm 296 MeV 3.77 keV 2.33 cm 2.98 cm World eIoni - 5 -4.43 mm -20 cm 9.18 mm 550 MeV 3.92 keV 2.54 cm 5.52 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 12 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -4.46 mm -17.5 cm 9.18 mm 3.41 keV 0 eV 0 fm 0 fm World initStep - 1 -4.47 mm -17.5 cm 9.18 mm 1.62 MeV 3.41 keV 367 um 367 um World eIoni - 2 -4.47 mm -17.7 cm 9.16 mm 24.9 MeV 400 eV 2.32 mm 2.69 mm World eIoni - 3 -4.47 mm -19.7 cm 9.07 mm 224 MeV 3.14 keV 1.99 cm 2.26 cm World eIoni - 4 -4.48 mm -20 cm 9.06 mm 254 MeV 410 eV 3.06 mm 2.56 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 14 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -4.47 mm -19.7 cm 9.07 mm 1.56 keV 0 eV 0 fm 0 fm World initStep - 1 -4.48 mm -19.7 cm 9.08 mm 420 keV 1.56 keV 103 um 103 um World eIoni - 2 -4.48 mm -20 cm 9.09 mm 30.6 MeV 571 eV 3.02 mm 3.13 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 12 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -4.48 mm -15.1 cm 9.15 mm 2.22 keV 0 eV 0 fm 0 fm World initStep - 1 -4.48 mm -15.1 cm 9.15 mm 764 keV 2.22 keV 178 um 178 um World eIoni - 2 -4.46 mm -20 cm 9.18 mm 487 MeV 6.47 keV 4.9 cm 4.92 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -3.97 mm -9.9 cm 7.25 mm 6.95 keV 0 eV 0 fm 0 fm World initStep - 1 -3.94 mm -9.95 cm 7.24 mm 5.72 MeV 6.95 keV 1.23 mm 1.23 mm World eIoni - 2 -3.44 mm -10.2 cm 8.52 mm 26 MeV 1.32 keV 2.64 mm 3.88 mm World eIoni - 3 -2.6 mm -20 cm 1.06 cm 1.01 GeV 20.5 keV 9.85 cm 10.2 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -361 um -13.6 cm 1.98 cm 1.41 GeV 26.6 keV 14.1 cm 14.1 cm World eIoni - 2 -407 um -14.7 cm 2.01 cm 1.52 GeV 3.08 keV 1.13 cm 15.2 cm World eIoni - 3 -560 um -19.2 cm 2.11 cm 1.97 GeV 10.1 keV 4.52 cm 19.7 cm World eIoni - 4 -582 um -20 cm 2.13 cm 2.05 GeV 2.26 keV 7.58 mm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -560 um -19.2 cm 2.11 cm 1.46 keV 0 eV 0 fm 0 fm World initStep - 1 -555 um -19.2 cm 2.11 cm 375 keV 1.46 keV 92.9 um 92.9 um World eIoni - 2 -539 um -20 cm 2.11 cm 75.8 MeV 1.76 keV 7.57 mm 7.67 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -407 um -14.7 cm 2.01 cm 11.9 keV 0 eV 0 fm 0 fm World initStep - 1 -425 um -14.8 cm 2.01 cm 13.3 MeV 4.72 keV 2.04 mm 2.04 mm World eIoni - 2 -453 um -14.9 cm 1.85 cm 21.2 MeV 203 eV 1.8 mm 3.85 mm World eIoni - 3 -532 um -20 cm 1.4 cm 529 MeV 11.4 keV 5.12 cm 5.51 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -361 um -13.6 cm 1.98 cm 14.8 keV 0 eV 0 fm 0 fm World initStep - 1 -362 um -13.7 cm 1.99 cm 12.8 MeV 1.74 keV 1.54 mm 1.54 mm World eIoni - 2 2.04 mm -20 cm 2.13 cm 642 MeV 8.57 keV 6.31 cm 6.46 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -33.5 um -1.76 cm 1.1 cm 226 MeV 4.13 keV 2.21 cm 2.21 cm World eIoni - 2 -67.1 um -5.29 cm 1.58 cm 579 MeV 5.42 keV 3.57 cm 5.77 cm World eIoni - 3 -63.1 um -17.4 cm 2.15 cm 1.79 GeV 26.8 keV 12.2 cm 17.9 cm World eIoni - 4 -65.3 um -20 cm 2.22 cm 2.05 GeV 3.94 keV 2.57 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -63.1 um -17.4 cm 2.15 cm 1 keV 0 eV 0 fm 0 fm World initStep - 1 -64.7 um -17.4 cm 2.15 cm 201 keV 1 keV 53.4 um 53.4 um World eIoni - 2 -75.7 um -20 cm 2.15 cm 257 MeV 5.05 keV 2.66 cm 2.66 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -67.1 um -5.29 cm 1.58 cm 29.4 keV 0 eV 0 fm 0 fm World initStep - 1 -194 um -5.69 cm 1.58 cm 41.6 MeV 3.76 keV 4.92 mm 4.92 mm World eIoni - 2 2.41 mm -8.14 cm 1.42 cm 287 MeV 3.66 keV 2.48 cm 2.97 cm World eIoni - 3 4.48 mm -20 cm 1.27 cm 1.47 GeV 23.1 keV 11.9 cm 14.8 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 2.41 mm -8.14 cm 1.42 cm 2.18 keV 0 eV 0 fm 0 fm World initStep - 1 2.4 mm -8.14 cm 1.42 cm 742 keV 2.18 keV 174 um 174 um World eIoni - 2 3.32 mm -13.2 cm 9.53 mm 509 MeV 10.1 keV 5.12 cm 5.14 cm World eIoni - 3 4.86 mm -16.6 cm 5.02 mm 849 MeV 9.02 keV 3.44 cm 8.57 cm World eIoni - 4 5.86 mm -20 cm 2.1 mm 1.19 GeV 5.96 keV 3.38 cm 12 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 5 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 4.86 mm -16.6 cm 5.02 mm 3.79 keV 0 eV 0 fm 0 fm World initStep - 1 4.84 mm -16.6 cm 5.01 mm 1.95 MeV 3.79 keV 439 um 439 um World eIoni - 2 4.83 mm -16.9 cm 4.99 mm 23.2 MeV 147 eV 2.13 mm 2.57 mm World eIoni - 3 4.87 mm -20 cm 4.9 mm 337 MeV 7.4 keV 3.14 cm 3.39 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -33.5 um -1.76 cm 1.1 cm 4.41 keV 0 eV 0 fm 0 fm World initStep - 1 -16.3 um -1.78 cm 1.1 cm 2.55 MeV 4.41 keV 572 um 572 um World eIoni - 2 -19.8 um -2.02 cm 1.1 cm 26.4 MeV 1.98 keV 2.38 mm 2.95 mm World eIoni - 3 -53 um -2.21 cm 1.1 cm 45.4 MeV 123 eV 1.9 mm 4.86 mm World eIoni - 4 -142 um -3.58 cm 1.1 cm 182 MeV 2.16 keV 1.37 cm 1.85 cm World eIoni - 5 -259 um -6.29 cm 1.09 cm 454 MeV 4.51 keV 2.72 cm 4.57 cm World eIoni - 6 -360 um -11.3 cm 1.09 cm 958 MeV 9.35 keV 5.04 cm 9.61 cm World eIoni - 7 -450 um -20 cm 1.09 cm 1.82 GeV 17.7 keV 8.66 cm 18.3 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -360 um -11.3 cm 1.09 cm 4.23 keV 0 eV 0 fm 0 fm World initStep - 1 -374 um -11.4 cm 1.09 cm 2.37 MeV 4.23 keV 532 um 532 um World eIoni - 2 -378 um -11.4 cm 1.09 cm 5.33 MeV 0 eV 296 um 828 um World eIoni - 3 1.35 mm -18.9 cm 1.11 cm 753 MeV 9.3 keV 7.48 cm 7.56 cm World eIoni - 4 1.73 mm -20 cm 1.12 cm 866 MeV 1.68 keV 1.14 cm 8.7 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 10 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 1.35 mm -18.9 cm 1.11 cm 1.06 keV 0 eV 0 fm 0 fm World initStep - 1 1.35 mm -18.9 cm 1.12 cm 218 keV 1.06 keV 57.5 um 57.5 um World eIoni - 2 1.33 mm -20 cm 1.12 cm 114 MeV 2.15 keV 1.15 cm 1.15 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -259 um -6.29 cm 1.09 cm 1.9 keV 0 eV 0 fm 0 fm World initStep - 1 -254 um -6.3 cm 1.09 cm 584 keV 1.9 keV 139 um 139 um World eIoni - 2 -230 um -20 cm 1.09 cm 1.37 GeV 19.6 keV 14.2 cm 14.2 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -142 um -3.58 cm 1.1 cm 1.11 keV 0 eV 0 fm 0 fm World initStep - 1 -143 um -3.58 cm 1.1 cm 238 keV 1.11 keV 62.2 um 62.2 um World eIoni - 2 -3.47 cm -15.9 cm -1.11 cm 1.23 GeV 33.7 keV 14.2 cm 14.2 cm World eIoni - 3 -4.82 cm -19.4 cm -2.71 cm 1.58 GeV 10.2 keV 4.13 cm 18.3 cm OutOfWorldTransportation + 1 5.71 um -118 um 704 um 731 keV 2.17 keV 171 um 171 um World eIoni + 2 -76.9 um -4.65 mm 619 um 46 MeV 196 eV 4.53 mm 4.7 mm World eIoni + 3 -236 um -2.04 cm 438 um 203 MeV 1.73 keV 1.57 cm 2.04 cm World eIoni + 4 -288 um -3.33 cm 378 um 333 MeV 2.05 keV 1.3 cm 3.34 cm World eIoni + 5 -478 um -20 cm 163 um 2 GeV 35 keV 16.7 cm 20 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -53 um -2.21 cm 1.1 cm 1.78 keV 0 eV 0 fm 0 fm World initStep - 1 -57.9 um -2.22 cm 1.1 cm 524 keV 1.78 keV 126 um 126 um World eIoni - 2 -85.9 um -20 cm 1.1 cm 1.78 GeV 30.9 keV 18.8 cm 18.8 cm OutOfWorldTransportation + 0 -288 um -3.33 cm 378 um 3.55 keV 0 eV 0 fm 0 fm World initStep + 1 -300 um -3.35 cm 373 um 1.74 MeV 3.55 keV 391 um 391 um World eIoni + 2 -285 um -3.62 cm 371 um 28.5 MeV 336 eV 2.68 mm 3.07 mm World eIoni + 3 208 um -12.8 cm 712 um 947 MeV 19.8 keV 9.18 cm 9.49 cm World eIoni + 4 843 um -20 cm 839 um 1.67 GeV 16.7 keV 7.2 cm 16.7 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 7 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 208 um -12.8 cm 712 um 2.79 keV 0 eV 0 fm 0 fm World initStep + 1 217 um -12.8 cm 708 um 1.14 MeV 2.79 keV 260 um 260 um World eIoni + 2 202 um -13.6 cm 896 um 77.3 MeV 1.66 keV 7.62 mm 7.88 mm World eIoni + 3 -144 um -20 cm 1.68 mm 720 MeV 12.1 keV 6.43 cm 7.22 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -236 um -2.04 cm 438 um 1.59 keV 0 eV 0 fm 0 fm World initStep + 1 -239 um -2.04 cm 434 um 432 keV 1.59 keV 106 um 106 um World eIoni + 2 -259 um -20 cm 410 um 1.8 GeV 37.6 keV 19.3 cm 19.4 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -2956,18 +2843,28 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -876 um -17.6 cm 2.18 cm 1.81 GeV 38.6 keV 18.1 cm 18.1 cm World eIoni - 2 -978 um -20 cm 2.25 cm 2.05 GeV 5.32 keV 2.36 cm 20.5 cm OutOfWorldTransportation + 1 -255 um -7.4 cm 1.74 cm 790 MeV 11.8 keV 7.89 cm 7.89 cm World eIoni + 2 -325 um -17.9 cm 2.16 cm 1.84 GeV 24.3 keV 10.5 cm 18.4 cm World eIoni + 3 -333 um -20 cm 2.22 cm 2.05 GeV 2.36 keV 2.11 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -325 um -17.9 cm 2.16 cm 1.86 keV 0 eV 0 fm 0 fm World initStep + 1 -320 um -17.9 cm 2.16 cm 563 keV 1.86 keV 135 um 135 um World eIoni + 2 -297 um -20 cm 2.16 cm 211 MeV 4.01 keV 2.12 cm 2.13 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -876 um -17.6 cm 2.18 cm 2.08 keV 0 eV 0 fm 0 fm World initStep - 1 -882 um -17.6 cm 2.18 cm 684 keV 2.08 keV 161 um 161 um World eIoni - 2 -965 um -18 cm 2.17 cm 40.2 MeV 556 eV 3.95 mm 4.11 mm World eIoni - 3 -941 um -20 cm 2.13 cm 236 MeV 4.26 keV 1.96 cm 2.37 cm OutOfWorldTransportation + 0 -255 um -7.4 cm 1.74 cm 1.01 keV 0 eV 0 fm 0 fm World initStep + 1 -258 um -7.4 cm 1.74 cm 202 keV 1.01 keV 53.9 um 53.9 um World eIoni + 2 -3.83 mm -16.8 cm 4.88 cm 941 MeV 28.4 keV 10.9 cm 10.9 cm World eIoni + 3 -8.54 mm -20 cm 7.02 cm 1.26 GeV 7.87 keV 3.86 cm 14.8 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -2975,48 +2872,65 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -51 um -4.54 cm 1.5 cm 504 MeV 12.5 keV 5.02 cm 5.02 cm World eIoni - 2 61.8 um -15.6 cm 2.08 cm 1.61 GeV 25.9 keV 11.1 cm 16.1 cm World eIoni - 3 89.2 um -18.9 cm 2.17 cm 1.94 GeV 5.94 keV 3.26 cm 19.4 cm World eIoni - 4 93.8 um -19.5 cm 2.19 cm 2 GeV 1.48 keV 6.34 mm 20 cm World eIoni - 5 97.3 um -20 cm 2.2 cm 2.05 GeV 740 eV 5.1 mm 20.5 cm OutOfWorldTransportation + 1 0 fm -20 cm 2.22 cm 2.05 GeV 38.1 keV 20.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -130 um -7.68 cm 1.78 cm 818 MeV 16.8 keV 8.17 cm 8.17 cm World eIoni + 2 -238 um -12.5 cm 2.02 cm 1.3 GeV 11.8 keV 4.79 cm 13 cm World eIoni + 3 -290 um -15.5 cm 2.13 cm 1.6 GeV 6.72 keV 3.06 cm 16 cm World eIoni + 4 -336 um -19 cm 2.24 cm 1.95 GeV 4.54 keV 3.45 cm 19.5 cm World eIoni + 5 -348 um -20 cm 2.26 cm 2.05 GeV 1.88 keV 1.02 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 93.8 um -19.5 cm 2.19 cm 1.29 keV 0 eV 0 fm 0 fm World initStep - 1 93.5 um -19.5 cm 2.19 cm 303 keV 1.29 keV 76.8 um 76.8 um World eIoni - 2 92.6 um -20 cm 2.19 cm 51 MeV 556 eV 5.09 mm 5.16 mm OutOfWorldTransportation + 0 -336 um -19 cm 2.24 cm 2.05 keV 0 eV 0 fm 0 fm World initStep + 1 -334 um -19 cm 2.24 cm 663 keV 2.05 keV 156 um 156 um World eIoni + 2 -333 um -19 cm 2.24 cm 4.2 MeV 0 eV 354 um 510 um World eIoni + 3 -325 um -20 cm 2.24 cm 102 MeV 2.45 keV 9.83 mm 1.03 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 5 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -333 um -19 cm 2.24 cm 1.24 keV 0 eV 0 fm 0 fm World initStep + 1 -334 um -19 cm 2.24 cm 283 keV 1.24 keV 72.2 um 72.2 um World eIoni + 2 -339 um -20 cm 2.24 cm 98.3 MeV 1.25 keV 9.87 mm 9.95 mm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 89.2 um -18.9 cm 2.17 cm 1.12 keV 0 eV 0 fm 0 fm World initStep - 1 92.4 um -18.9 cm 2.17 cm 239 keV 1.12 keV 62.4 um 62.4 um World eIoni - 2 110 um -20 cm 2.17 cm 114 MeV 2.69 keV 1.15 cm 1.16 cm OutOfWorldTransportation + 0 -290 um -15.5 cm 2.13 cm 1.23 keV 0 eV 0 fm 0 fm World initStep + 1 -292 um -15.5 cm 2.13 cm 280 keV 1.23 keV 71.6 um 71.6 um World eIoni + 2 -306 um -20 cm 2.13 cm 447 MeV 7.8 keV 4.63 cm 4.64 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 61.8 um -15.6 cm 2.08 cm 1.02 keV 0 eV 0 fm 0 fm World initStep - 1 59.1 um -15.6 cm 2.08 cm 205 keV 1.02 keV 54.4 um 54.4 um World eIoni - 2 37.9 um -20 cm 2.08 cm 440 MeV 8.18 keV 4.66 cm 4.67 cm OutOfWorldTransportation + 0 -238 um -12.5 cm 2.02 cm 1.73 keV 0 eV 0 fm 0 fm World initStep + 1 -233 um -12.5 cm 2.02 cm 499 keV 1.73 keV 120 um 120 um World eIoni + 2 -207 um -20 cm 2.02 cm 753 MeV 15 keV 7.7 cm 7.72 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -51 um -4.54 cm 1.5 cm 1.05 keV 0 eV 0 fm 0 fm World initStep - 1 -53.9 um -4.54 cm 1.5 cm 216 keV 1.05 keV 57 um 57 um World eIoni - 2 4.04 cm -15 cm 3.33 cm 1.05 GeV 28.1 keV 12.1 cm 12.1 cm World eIoni - 3 8.45 cm -18.1 cm 4.92 cm 1.36 GeV 14.8 keV 5.67 cm 17.8 cm OutOfWorldTransportation + 0 -130 um -7.68 cm 1.78 cm 1.72 keV 0 eV 0 fm 0 fm World initStep + 1 -133 um -7.68 cm 1.78 cm 496 keV 1.72 keV 120 um 120 um World eIoni + 2 -152 um -20 cm 1.78 cm 1.23 GeV 18.5 keV 12.8 cm 12.8 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -3024,118 +2938,47 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -22.3 um -11.6 cm 1.91 cm 1.21 GeV 21.6 keV 12.1 cm 12.1 cm World eIoni - 2 101 um -20 cm 2.14 cm 2.05 GeV 16.4 keV 8.41 cm 20.5 cm OutOfWorldTransportation + 1 6.49 um -4.38 mm 6.24 mm 93.7 MeV 1.38 keV 7.96 mm 7.96 mm World eIoni + 2 170 um -8.59 cm 1.81 cm 909 MeV 12.6 keV 8.28 cm 9.08 cm World eIoni + 3 182 um -13.1 cm 2.02 cm 1.36 GeV 10 keV 4.52 cm 13.6 cm World eIoni + 4 192 um -19.4 cm 2.21 cm 1.99 GeV 12.9 keV 6.32 cm 19.9 cm World eIoni + 5 193 um -20 cm 2.23 cm 2.05 GeV 1.78 keV 5.76 mm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -22.3 um -11.6 cm 1.91 cm 17.2 keV 0 eV 0 fm 0 fm World initStep - 1 35.9 um -11.8 cm 1.91 cm 17.3 MeV 3.19 keV 2.1 mm 2.1 mm World eIoni - 2 -496 um -13 cm 2.13 cm 146 MeV 2.63 keV 1.31 cm 1.52 cm World eIoni - 3 -897 um -20 cm 2.29 cm 841 MeV 11.5 keV 6.95 cm 8.48 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -496 um -13 cm 2.13 cm 12.7 keV 0 eV 0 fm 0 fm World initStep - 1 -494 um -13.2 cm 2.13 cm 14.6 MeV 2.95 keV 2.17 mm 2.17 mm World eIoni - 2 -811 um -13.3 cm 2.23 cm 22.3 MeV 174 eV 1.31 mm 3.48 mm World eIoni - 3 -1.78 mm -14.9 cm 2.53 cm 182 MeV 2.78 keV 1.64 cm 1.99 cm World eIoni - 4 -2.25 mm -17.4 cm 2.65 cm 433 MeV 5.57 keV 2.51 cm 4.5 cm World eIoni - 5 -2.5 mm -20 cm 2.72 cm 696 MeV 5.28 keV 2.63 cm 7.13 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -2.25 mm -17.4 cm 2.65 cm 1.72 keV 0 eV 0 fm 0 fm World initStep - 1 -2.24 mm -17.4 cm 2.65 cm 495 keV 1.72 keV 120 um 120 um World eIoni - 2 -2.22 mm -20 cm 2.65 cm 263 MeV 6.32 keV 2.65 cm 2.66 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -1.78 mm -14.9 cm 2.53 cm 9.87 keV 0 eV 0 fm 0 fm World initStep - 1 -1.75 mm -15 cm 2.53 cm 10.3 MeV 6.09 keV 1.76 mm 1.76 mm World eIoni - 2 643 um -15.4 cm 2.67 cm 57.8 MeV 836 eV 5.96 mm 7.72 mm World eIoni - 3 2.65 mm -20 cm 2.79 cm 515 MeV 8.62 keV 4.58 cm 5.35 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 128 um -9.58 cm 1.83 cm 1.01 GeV 16.2 keV 10.1 cm 10.1 cm World eIoni - 2 380 um -17.1 cm 2.08 cm 1.76 GeV 14.1 keV 7.55 cm 17.6 cm World eIoni - 3 448 um -20 cm 2.15 cm 2.05 GeV 7.73 keV 2.87 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 380 um -17.1 cm 2.08 cm 3.24 keV 0 eV 0 fm 0 fm World initStep - 1 380 um -17.1 cm 2.08 cm 1.48 MeV 3.24 keV 336 um 336 um World eIoni - 2 376 um -17.3 cm 2.08 cm 16.6 MeV 546 eV 1.51 mm 1.84 mm World eIoni - 3 389 um -20 cm 2.09 cm 287 MeV 3.61 keV 2.71 cm 2.89 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 128 um -9.58 cm 1.83 cm 1.22 keV 0 eV 0 fm 0 fm World initStep - 1 125 um -9.59 cm 1.83 cm 276 keV 1.22 keV 70.7 um 70.7 um World eIoni - 2 109 um -20 cm 1.83 cm 1.04 GeV 24.1 keV 11.4 cm 11.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 102 um -5.49 cm 1.61 cm 599 MeV 9.79 keV 5.97 cm 5.97 cm World eIoni - 2 180 um -13.9 cm 2.06 cm 1.44 GeV 19.5 keV 8.39 cm 14.4 cm World eIoni - 3 198 um -16.6 cm 2.15 cm 1.71 GeV 5.98 keV 2.72 cm 17.1 cm World eIoni - 4 217 um -20 cm 2.24 cm 2.05 GeV 9.65 keV 3.42 cm 20.5 cm OutOfWorldTransportation + 0 192 um -19.4 cm 2.21 cm 6.42 keV 0 eV 0 fm 0 fm World initStep + 1 206 um -19.5 cm 2.21 cm 4.8 MeV 6.42 keV 849 um 849 um World eIoni + 2 -552 um -20 cm 2.13 cm 57.9 MeV 1.64 keV 5.52 mm 6.37 mm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 198 um -16.6 cm 2.15 cm 6.62 keV 0 eV 0 fm 0 fm World initStep - 1 182 um -16.6 cm 2.15 cm 5.26 MeV 3.86 keV 1.16 mm 1.16 mm World eIoni - 2 -913 um -16.8 cm 2.24 cm 26.2 MeV 954 eV 2.86 mm 4.02 mm World eIoni - 3 -1.89 mm -20 cm 2.33 cm 343 MeV 5.84 keV 3.17 cm 3.57 cm OutOfWorldTransportation + 0 182 um -13.1 cm 2.02 cm 1.46 keV 0 eV 0 fm 0 fm World initStep + 1 186 um -13.1 cm 2.02 cm 375 keV 1.46 keV 92.9 um 92.9 um World eIoni + 2 212 um -20 cm 2.02 cm 689 MeV 11 keV 7.13 cm 7.14 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 180 um -13.9 cm 2.06 cm 3.78 keV 0 eV 0 fm 0 fm World initStep - 1 194 um -13.9 cm 2.06 cm 1.95 MeV 3.78 keV 438 um 438 um World eIoni - 2 207 um -14 cm 2.06 cm 16.8 MeV 144 eV 1.48 mm 1.92 mm World eIoni - 3 228 um -20 cm 2.06 cm 614 MeV 8.27 keV 5.97 cm 6.16 cm OutOfWorldTransportation + 0 170 um -8.59 cm 1.81 cm 1.33 keV 0 eV 0 fm 0 fm World initStep + 1 174 um -8.59 cm 1.81 cm 321 keV 1.33 keV 80.9 um 80.9 um World eIoni + 2 201 um -20 cm 1.81 cm 1.14 GeV 21.5 keV 12.3 cm 12.3 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 102 um -5.49 cm 1.61 cm 1.48 keV 0 eV 0 fm 0 fm World initStep - 1 104 um -5.49 cm 1.61 cm 383 keV 1.48 keV 94.6 um 94.6 um World eIoni - 2 114 um -20 cm 1.62 cm 1.45 GeV 28.8 keV 15.6 cm 15.6 cm OutOfWorldTransportation + 0 6.49 um -4.38 mm 6.24 mm 1.97 keV 0 eV 0 fm 0 fm World initStep + 1 2.58 um -4.44 mm 6.23 mm 620 keV 1.97 keV 147 um 147 um World eIoni + 2 -18.7 um -20 cm 6.21 mm 1.96 GeV 29.9 keV 20.5 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -3143,27 +2986,157 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 677 um -14.8 cm 2.09 cm 1.53 GeV 32.1 keV 15.3 cm 15.3 cm World eIoni - 2 795 um -17.8 cm 2.18 cm 1.83 GeV 4.95 keV 2.98 cm 18.3 cm World eIoni - 3 871 um -20 cm 2.24 cm 2.05 GeV 7.12 keV 2.22 cm 20.5 cm OutOfWorldTransportation + 1 -51.5 um -3.03 cm 1.32 cm 353 MeV 5.57 keV 3.5 cm 3.5 cm World eIoni + 2 -115 um -6.83 cm 1.7 cm 733 MeV 7.47 keV 3.82 cm 7.32 cm World eIoni + 3 -133 um -10.4 cm 1.9 cm 1.09 GeV 10.6 keV 3.59 cm 10.9 cm World eIoni + 4 -136 um -11 cm 1.92 cm 1.15 GeV 1.8 keV 5.99 mm 11.5 cm World eIoni + 5 -139 um -12 cm 1.96 cm 1.24 GeV 2.37 keV 9.37 mm 12.4 cm World eIoni + 6 -155 um -20 cm 2.21 cm 2.05 GeV 23.9 keV 8.05 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -139 um -12 cm 1.96 cm 26.8 keV 0 eV 0 fm 0 fm World initStep + 1 -202 um -12 cm 1.96 cm 9.53 MeV 870 eV 982 um 982 um World eIoni + 2 -671 um -15.9 cm 2.02 cm 396 MeV 4.59 keV 3.86 cm 3.96 cm World eIoni + 3 -968 um -20 cm 2.06 cm 805 MeV 7.73 keV 4.09 cm 8.06 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 6 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -671 um -15.9 cm 2.02 cm 51.1 keV 0 eV 0 fm 0 fm World initStep + 1 -800 um -16.9 cm 2.03 cm 97.6 MeV 6.4 keV 1.14 cm 1.14 cm World eIoni + 2 -465 um -20 cm 2.71 cm 411 MeV 7.23 keV 3.22 cm 4.36 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 6 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -202 um -12 cm 1.96 cm 1.18 keV 0 eV 0 fm 0 fm World initStep + 1 -199 um -12 cm 1.96 cm 262 keV 1.18 keV 67.5 um 67.5 um World eIoni + 2 -175 um -20 cm 1.96 cm 796 MeV 19 keV 8.56 cm 8.56 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -136 um -11 cm 1.92 cm 19.9 keV 0 eV 0 fm 0 fm World initStep + 1 -163 um -11.1 cm 1.93 cm 4.13 MeV 148 eV 423 um 423 um World eIoni + 2 253 um -17 cm 2.19 cm 597 MeV 10.3 keV 5.94 cm 5.98 cm World eIoni + 3 855 um -20 cm 2.32 cm 899 MeV 4.63 keV 3.02 cm 9 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 5 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 253 um -17 cm 2.19 cm 3.13 keV 0 eV 0 fm 0 fm World initStep + 1 265 um -17 cm 2.19 cm 1.39 MeV 3.13 keV 316 um 316 um World eIoni + 2 392 um -17.6 cm 2.2 cm 65.4 MeV 619 eV 6.4 mm 6.72 mm World eIoni + 3 405 um -18.1 cm 2.2 cm 116 MeV 657 eV 5.04 mm 1.18 cm World eIoni + 4 430 um -20 cm 2.21 cm 302 MeV 2.81 keV 1.86 cm 3.04 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 10 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 405 um -18.1 cm 2.2 cm 3.7 keV 0 eV 0 fm 0 fm World initStep + 1 404 um -18.2 cm 2.2 cm 1.87 MeV 3.7 keV 422 um 422 um World eIoni + 2 446 um -18.8 cm 2.21 cm 63.1 MeV 874 eV 6.12 mm 6.54 mm World eIoni + 3 426 um -20 cm 2.22 cm 186 MeV 1.81 keV 1.23 cm 1.89 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 5 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -163 um -11.1 cm 1.93 cm 1.23 keV 0 eV 0 fm 0 fm World initStep + 1 -159 um -11.1 cm 1.93 cm 282 keV 1.23 keV 72.1 um 72.1 um World eIoni + 2 -135 um -20 cm 1.93 cm 894 MeV 20.7 keV 9.62 cm 9.63 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -133 um -10.4 cm 1.9 cm 1.33 keV 0 eV 0 fm 0 fm World initStep + 1 -129 um -10.4 cm 1.9 cm 318 keV 1.33 keV 80.2 um 80.2 um World eIoni + 2 -106 um -20 cm 1.9 cm 958 MeV 20.8 keV 10.2 cm 10.2 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 795 um -17.8 cm 2.18 cm 1.44 keV 0 eV 0 fm 0 fm World initStep - 1 791 um -17.8 cm 2.18 cm 364 keV 1.44 keV 90.6 um 90.6 um World eIoni - 2 770 um -20 cm 2.18 cm 222 MeV 3.95 keV 2.25 cm 2.25 cm OutOfWorldTransportation + 0 -115 um -6.83 cm 1.7 cm 5.25 keV 0 eV 0 fm 0 fm World initStep + 1 -127 um -6.87 cm 1.69 cm 3.47 MeV 5.25 keV 778 um 778 um World eIoni + 2 -128 um -6.99 cm 1.69 cm 15.4 MeV 30.6 eV 1.2 mm 1.98 mm World eIoni + 3 -102 um -9.77 cm 1.7 cm 293 MeV 4.13 keV 2.78 cm 2.98 cm World eIoni + 4 88.8 um -17.2 cm 1.74 cm 1.04 GeV 20.5 keV 7.48 cm 10.5 cm World eIoni + 5 122 um -20 cm 1.75 cm 1.32 GeV 5.42 keV 2.75 cm 13.2 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 88.8 um -17.2 cm 1.74 cm 1.17 keV 0 eV 0 fm 0 fm World initStep + 1 90.2 um -17.3 cm 1.74 cm 257 keV 1.17 keV 66.5 um 66.5 um World eIoni + 2 99.1 um -20 cm 1.74 cm 275 MeV 5.93 keV 2.82 cm 2.82 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -102 um -9.77 cm 1.7 cm 2.53 keV 0 eV 0 fm 0 fm World initStep + 1 -106 um -9.78 cm 1.71 cm 960 keV 2.53 keV 221 um 221 um World eIoni + 2 -115 um -9.84 cm 1.71 cm 7.77 MeV 15.2 eV 681 um 902 um World eIoni + 3 -139 um -20 cm 1.71 cm 1.02 GeV 18.7 keV 10.2 cm 10.3 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 12 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -115 um -9.84 cm 1.71 cm 2.22 keV 0 eV 0 fm 0 fm World initStep + 1 -122 um -9.85 cm 1.71 cm 763 keV 2.22 keV 178 um 178 um World eIoni + 2 -227 um -10.3 cm 1.7 cm 42.8 MeV 358 eV 4.2 mm 4.38 mm World eIoni + 3 -554 um -20 cm 1.69 cm 1.02 GeV 18.9 keV 9.73 cm 10.2 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 677 um -14.8 cm 2.09 cm 1.3 keV 0 eV 0 fm 0 fm World initStep - 1 678 um -14.8 cm 2.09 cm 307 keV 1.3 keV 77.7 um 77.7 um World eIoni - 2 683 um -20 cm 2.09 cm 520 MeV 11.7 keV 5.38 cm 5.39 cm OutOfWorldTransportation + 0 -51.5 um -3.03 cm 1.32 cm 15.6 keV 0 eV 0 fm 0 fm World initStep + 1 -79.1 um -3.2 cm 1.33 cm 17.6 MeV 3.55 keV 2.3 mm 2.3 mm World eIoni + 2 -2.97 mm -16.9 cm 1.95 cm 1.39 GeV 30.5 keV 13.8 cm 14.1 cm World eIoni + 3 -2.79 mm -20 cm 1.97 cm 1.7 GeV 4.27 keV 3.1 cm 17.2 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -2.97 mm -16.9 cm 1.95 cm 1.1 keV 0 eV 0 fm 0 fm World initStep + 1 -2.97 mm -16.9 cm 1.95 cm 234 keV 1.1 keV 61.3 um 61.3 um World eIoni + 2 -3 mm -20 cm 1.95 cm 310 MeV 7.75 keV 3.2 cm 3.21 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 0 fm -20 cm 2.22 cm 2.05 GeV 42.2 keV 20.5 cm 20.5 cm OutOfWorldTransportation --> Event 50 starts. ********************************************************************************************************* @@ -3172,361 +3145,182 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -136 um -4.7 cm 1.53 cm 520 MeV 9.51 keV 5.18 cm 5.18 cm World eIoni - 2 -186 um -11.4 cm 1.96 cm 1.19 GeV 15 keV 6.73 cm 11.9 cm World eIoni - 3 -220 um -17.3 cm 2.17 cm 1.78 GeV 10 keV 5.87 cm 17.8 cm World eIoni - 4 -225 um -18.2 cm 2.19 cm 1.87 GeV 1.89 keV 8.74 mm 18.7 cm World eIoni - 5 -231 um -19.5 cm 2.23 cm 2 GeV 3.14 keV 1.32 cm 20 cm World eIoni - 6 -234 um -20 cm 2.24 cm 2.05 GeV 691 eV 5.2 mm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -231 um -19.5 cm 2.23 cm 1.57 keV 0 eV 0 fm 0 fm World initStep - 1 -236 um -19.5 cm 2.23 cm 424 keV 1.57 keV 104 um 104 um World eIoni - 2 -252 um -20 cm 2.23 cm 52 MeV 971 eV 5.17 mm 5.27 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -225 um -18.2 cm 2.19 cm 2.34 keV 0 eV 0 fm 0 fm World initStep - 1 -232 um -18.2 cm 2.19 cm 837 keV 2.34 keV 194 um 194 um World eIoni - 2 -200 um -18.6 cm 2.18 cm 49.2 MeV 616 eV 4.84 mm 5.03 mm World eIoni - 3 -303 um -20 cm 2.17 cm 184 MeV 4.13 keV 1.35 cm 1.85 cm OutOfWorldTransportation + 1 124 um -5.99 cm 1.63 cm 649 MeV 10.1 keV 6.48 cm 6.48 cm World eIoni + 2 232 um -9.72 cm 1.84 cm 1.02 GeV 11 keV 3.73 cm 10.2 cm World eIoni + 3 352 um -16 cm 2.08 cm 1.65 GeV 13.9 keV 6.33 cm 16.5 cm World eIoni + 4 395 um -20 cm 2.18 cm 2.05 GeV 9.56 keV 3.96 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -220 um -17.3 cm 2.17 cm 3.89 keV 0 eV 0 fm 0 fm World initStep - 1 -205 um -17.3 cm 2.17 cm 2.04 MeV 3.89 keV 459 um 459 um World eIoni - 2 -123 um -17.8 cm 2.16 cm 53.4 MeV 430 eV 5.14 mm 5.59 mm World eIoni - 3 -55.4 um -18.3 cm 2.16 cm 99.8 MeV 780 eV 4.64 mm 1.02 cm World eIoni - 4 54.4 um -20 cm 2.15 cm 272 MeV 2.87 keV 1.72 cm 2.74 cm OutOfWorldTransportation + 0 352 um -16 cm 2.08 cm 227 keV 0 eV 0 fm 0 fm World initStep + 1 51.4 um -19.9 cm 2.1 cm 389 MeV 8.46 keV 4.06 cm 4.06 cm World eIoni + 2 18 um -20 cm 2.1 cm 396 MeV 46.3 eV 694 um 4.13 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -55.4 um -18.3 cm 2.16 cm 2.28 keV 0 eV 0 fm 0 fm World initStep - 1 -48.7 um -18.3 cm 2.16 cm 803 keV 2.28 keV 187 um 187 um World eIoni - 2 -57.4 um -18.8 cm 2.14 cm 57 MeV 858 eV 5.62 mm 5.81 mm World eIoni - 3 -68.9 um -20 cm 2.13 cm 172 MeV 2.95 keV 1.15 cm 1.73 cm OutOfWorldTransportation + 0 51.4 um -19.9 cm 2.1 cm 8.71 keV 0 eV 0 fm 0 fm World initStep + 1 174 um -20 cm 2.08 cm 3.79 MeV 721 eV 429 um 429 um World msc + 2 241 um -20 cm 2.08 cm 5.81 MeV 113 eV 217 um 646 um World msc + 3 262 um -20 cm 2.08 cm 6.65 MeV 0 eV 88.1 um 734 um World msc + 4 272 um -20 cm 2.08 cm 7.09 MeV 7.22 eV 45 um 779 um OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -186 um -11.4 cm 1.96 cm 1.17 keV 0 eV 0 fm 0 fm World initStep - 1 -187 um -11.4 cm 1.96 cm 257 keV 1.17 keV 66.3 um 66.3 um World eIoni - 2 -199 um -20 cm 1.96 cm 858 MeV 22.8 keV 9.32 cm 9.32 cm OutOfWorldTransportation + 0 232 um -9.72 cm 1.84 cm 999 eV 0 eV 0 fm 0 fm World initStep + 1 230 um -9.72 cm 1.84 cm 199 keV 999 eV 53.1 um 53.1 um World eIoni + 2 1.71 mm -18.9 cm 7.54 mm 917 MeV 21.2 keV 10.6 cm 10.6 cm World eIoni + 3 1.18 cm -20 cm -473 um 1.02 GeV 4.46 keV 1.68 cm 12.3 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -136 um -4.7 cm 1.53 cm 12.9 keV 0 eV 0 fm 0 fm World initStep - 1 -146 um -4.78 cm 1.52 cm 7.68 MeV 2.06 keV 872 um 872 um World eIoni - 2 229 um -8.92 cm 1.46 cm 422 MeV 6.9 keV 4.14 cm 4.23 cm World eIoni - 3 845 um -20 cm 1.3 cm 1.53 GeV 25 keV 11.1 cm 15.3 cm OutOfWorldTransportation + 0 124 um -5.99 cm 1.63 cm 3.19 keV 0 eV 0 fm 0 fm World initStep + 1 113 um -6.01 cm 1.63 cm 1.44 MeV 3.19 keV 326 um 326 um World eIoni + 2 109 um -6.24 cm 1.63 cm 24.3 MeV 183 eV 2.29 mm 2.62 mm World eIoni + 3 106 um -7.88 cm 1.63 cm 189 MeV 2.8 keV 1.64 cm 1.9 cm World eIoni + 4 21.9 um -10.4 cm 1.63 cm 440 MeV 5.58 keV 2.51 cm 4.42 cm World eIoni + 5 -62.9 um -16.3 cm 1.64 cm 1.03 GeV 12.2 keV 5.91 cm 10.3 cm World eIoni + 6 -70.1 um -17 cm 1.64 cm 1.1 GeV 370 eV 6.68 mm 11 cm World eIoni + 7 -98.9 um -20 cm 1.64 cm 1.4 GeV 6.68 keV 3.03 cm 14 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -70.1 um -17 cm 1.64 cm 1.51 keV 0 eV 0 fm 0 fm World initStep + 1 -66.5 um -17 cm 1.64 cm 394 keV 1.51 keV 97.2 um 97.2 um World eIoni + 2 -48.1 um -20 cm 1.63 cm 303 MeV 8.58 keV 3.07 cm 3.08 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 229 um -8.92 cm 1.46 cm 1.03 keV 0 eV 0 fm 0 fm World initStep - 1 231 um -8.92 cm 1.46 cm 210 keV 1.03 keV 55.7 um 55.7 um World eIoni - 2 -9.91 mm -19 cm 1.57 cm 1 GeV 23.6 keV 11.6 cm 11.6 cm World eIoni - 3 -1.39 cm -20 cm 1.6 cm 1.1 GeV 2.8 keV 1.06 cm 12.7 cm OutOfWorldTransportation + 0 -62.9 um -16.3 cm 1.64 cm 1.2 keV 0 eV 0 fm 0 fm World initStep + 1 -62 um -16.3 cm 1.64 cm 270 keV 1.2 keV 69.4 um 69.4 um World eIoni + 2 -56 um -20 cm 1.64 cm 370 MeV 6.3 keV 3.81 cm 3.82 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -287 um -8.38 cm 1.79 cm 888 MeV 13.1 keV 8.87 cm 8.87 cm World eIoni - 2 -333 um -10.7 cm 1.9 cm 1.12 GeV 4.62 keV 2.29 cm 11.2 cm World eIoni - 3 -453 um -20 cm 2.2 cm 2.05 GeV 23.2 keV 9.34 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -333 um -10.7 cm 1.9 cm 3.34 keV 0 eV 0 fm 0 fm World initStep - 1 -321 um -10.7 cm 1.9 cm 1.56 MeV 3.34 keV 353 um 353 um World eIoni - 2 -317 um -10.7 cm 1.9 cm 3.25 MeV 82.3 eV 169 um 522 um World eIoni - 3 -281 um -20 cm 1.9 cm 934 MeV 15.2 keV 9.32 cm 9.37 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -287 um -8.38 cm 1.79 cm 1.23 keV 0 eV 0 fm 0 fm World initStep - 1 -284 um -8.38 cm 1.79 cm 280 keV 1.23 keV 71.7 um 71.7 um World eIoni - 2 -257 um -20 cm 1.79 cm 1.16 GeV 29.7 keV 12.8 cm 12.8 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -3.39 um -1.69 mm 4.02 mm 66.9 MeV 400 eV 4.46 mm 4.46 mm World eIoni - 2 -15.2 um -2.38 cm 1.23 cm 288 MeV 2.15 keV 2.39 cm 2.84 cm World eIoni - 3 -55.8 um -10.9 cm 1.92 cm 1.14 GeV 14.9 keV 8.52 cm 11.4 cm World eIoni - 4 -59 um -20 cm 2.22 cm 2.05 GeV 17.9 keV 9.14 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -55.8 um -10.9 cm 1.92 cm 1.05 keV 0 eV 0 fm 0 fm World initStep - 1 -58.6 um -10.9 cm 1.92 cm 216 keV 1.05 keV 57 um 57 um World eIoni - 2 -82.5 um -20 cm 1.92 cm 913 MeV 25.7 keV 10.3 cm 10.3 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -15.2 um -2.38 cm 1.23 cm 6.56 keV 0 eV 0 fm 0 fm World initStep - 1 -16.2 um -2.42 cm 1.23 cm 4.91 MeV 3.9 keV 836 um 836 um World eIoni - 2 -3.45 mm -10.1 cm 1.35 cm 775 MeV 12.2 keV 7.75 cm 7.83 cm World eIoni - 3 -4.21 mm -19.2 cm 1.44 cm 1.69 GeV 19.9 keV 9.11 cm 16.9 cm World eIoni - 4 -4.25 mm -20 cm 1.44 cm 1.76 GeV 1.33 keV 7.68 mm 17.7 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -4.21 mm -19.2 cm 1.44 cm 1.07 keV 0 eV 0 fm 0 fm World initStep - 1 -4.21 mm -19.2 cm 1.44 cm 223 keV 1.07 keV 58.6 um 58.6 um World eIoni - 2 -4.19 mm -20 cm 1.44 cm 76.8 MeV 1.22 keV 7.72 mm 7.78 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -3.45 mm -10.1 cm 1.35 cm 1.47 keV 0 eV 0 fm 0 fm World initStep - 1 -3.45 mm -10.1 cm 1.35 cm 379 keV 1.47 keV 93.8 um 93.8 um World eIoni - 2 -3.42 mm -20 cm 1.35 cm 988 MeV 25.5 keV 10.4 cm 10.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -3.39 um -1.69 mm 4.02 mm 1.03 keV 0 eV 0 fm 0 fm World initStep - 1 -5 um -1.71 mm 4.02 mm 218 keV 1.03 keV 55.7 um 55.7 um World eIoni - 2 -8.9 mm -10.8 cm -4.01 cm 1.06 GeV 24.6 keV 12.3 cm 12.3 cm World eIoni - 3 4 cm -19.6 cm -17.5 cm 1.94 GeV 37.1 keV 17.8 cm 30.1 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 257 um -8.89 cm 1.85 cm 939 MeV 18.1 keV 9.38 cm 9.38 cm World eIoni - 2 550 um -20 cm 2.27 cm 2.05 GeV 20.8 keV 11.1 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 257 um -8.89 cm 1.85 cm 6.57 keV 0 eV 0 fm 0 fm World initStep - 1 281 um -8.93 cm 1.85 cm 5.18 MeV 6.57 keV 1.14 mm 1.14 mm World eIoni - 2 1.13 mm -9.08 cm 1.79 cm 20.2 MeV 131 eV 1.91 mm 3.06 mm World eIoni - 3 1.95 mm -10.1 cm 1.74 cm 117 MeV 2.16 keV 9.74 mm 1.28 cm World eIoni - 4 2.99 mm -20 cm 1.67 cm 1.11 GeV 21.2 keV 9.95 cm 11.2 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 1.95 mm -10.1 cm 1.74 cm 1.38 keV 0 eV 0 fm 0 fm World initStep - 1 1.96 mm -10.1 cm 1.74 cm 340 keV 1.38 keV 85 um 85 um World eIoni - 2 1.97 mm -20 cm 1.74 cm 995 MeV 17.1 keV 10.5 cm 10.6 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -497 um -14.5 cm 2.02 cm 1.5 GeV 29.3 keV 15 cm 15 cm World eIoni - 2 -615 um -18.6 cm 2.13 cm 1.91 GeV 8.55 keV 4.09 cm 19.1 cm World eIoni - 3 -650 um -20 cm 2.16 cm 2.05 GeV 5.62 keV 1.44 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -615 um -18.6 cm 2.13 cm 1.52 keV 0 eV 0 fm 0 fm World initStep - 1 -611 um -18.6 cm 2.13 cm 401 keV 1.52 keV 98.7 um 98.7 um World eIoni - 2 -597 um -20 cm 2.13 cm 144 MeV 2.5 keV 1.45 cm 1.46 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -497 um -14.5 cm 2.02 cm 30.8 keV 0 eV 0 fm 0 fm World initStep - 1 -627 um -14.9 cm 2.02 cm 46 MeV 4.14 keV 5.46 mm 5.46 mm World eIoni - 2 -529 um -16 cm 1.84 cm 154 MeV 1.98 keV 1.09 cm 1.64 cm World eIoni - 3 -448 um -20 cm 1.66 cm 555 MeV 6.54 keV 4.02 cm 5.66 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 435 um -11.2 cm 1.95 cm 1.17 GeV 19.6 keV 11.7 cm 11.7 cm World eIoni - 2 436 um -11.3 cm 1.96 cm 1.18 GeV 474 eV 959 um 11.8 cm World eIoni - 3 540 um -20 cm 2.26 cm 2.05 GeV 13.9 keV 8.68 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 436 um -11.3 cm 1.96 cm 1.28 keV 0 eV 0 fm 0 fm World initStep - 1 440 um -11.3 cm 1.96 cm 301 keV 1.28 keV 76.4 um 76.4 um World eIoni - 2 462 um -20 cm 1.96 cm 868 MeV 19.9 keV 9.24 cm 9.25 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 435 um -11.2 cm 1.95 cm 1.82 keV 0 eV 0 fm 0 fm World initStep - 1 432 um -11.2 cm 1.95 cm 544 keV 1.82 keV 130 um 130 um World eIoni - 2 415 um -20 cm 1.96 cm 877 MeV 12.3 keV 8.98 cm 8.99 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -409 um -13 cm 2.05 cm 1.36 GeV 26.2 keV 13.5 cm 13.5 cm World eIoni - 2 -595 um -20 cm 2.25 cm 2.05 GeV 14.3 keV 6.95 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -409 um -13 cm 2.05 cm 1.84 keV 0 eV 0 fm 0 fm World initStep - 1 -415 um -13.1 cm 2.05 cm 553 keV 1.84 keV 132 um 132 um World eIoni - 2 -443 um -20 cm 2.05 cm 695 MeV 11.5 keV 7.07 cm 7.09 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -72.4 um -5.2 cm 1.59 cm 570 MeV 8.92 keV 5.68 cm 5.68 cm World eIoni - 2 66 um -14.4 cm 2.09 cm 1.49 GeV 21.5 keV 9.26 cm 14.9 cm World eIoni - 3 103 um -20 cm 2.25 cm 2.05 GeV 10.8 keV 5.56 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 66 um -14.4 cm 2.09 cm 4.09 keV 0 eV 0 fm 0 fm World initStep - 1 63 um -14.5 cm 2.08 cm 2.24 MeV 4.09 keV 502 um 502 um World eIoni - 2 69 um -14.6 cm 2.08 cm 17 MeV 208 eV 1.48 mm 1.98 mm World eIoni - 3 79.8 um -20 cm 2.08 cm 556 MeV 9.27 keV 5.39 cm 5.59 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -72.4 um -5.2 cm 1.59 cm 1.29 keV 0 eV 0 fm 0 fm World initStep - 1 -75.2 um -5.2 cm 1.59 cm 305 keV 1.29 keV 77.2 um 77.2 um World eIoni - 2 -95.1 um -20 cm 1.59 cm 1.48 GeV 33.5 keV 16.6 cm 16.6 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -300 um -11.4 cm 1.98 cm 1.19 GeV 27.2 keV 11.9 cm 11.9 cm World eIoni - 2 -301 um -11.8 cm 2 cm 1.23 GeV 583 eV 4.14 mm 12.3 cm World eIoni - 3 -311 um -19.4 cm 2.25 cm 1.99 GeV 13.8 keV 7.64 cm 19.9 cm World eIoni - 4 -311 um -20 cm 2.27 cm 2.05 GeV 1.25 keV 5.61 mm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -311 um -19.4 cm 2.25 cm 3.35 keV 0 eV 0 fm 0 fm World initStep - 1 -305 um -19.4 cm 2.25 cm 880 keV 98.4 eV 107 um 107 um World eIoni - 2 -649 um -20 cm 2.23 cm 56.1 MeV 428 eV 5.58 mm 5.69 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -301 um -11.8 cm 2 cm 1.42 keV 0 eV 0 fm 0 fm World initStep - 1 -298 um -11.8 cm 2 cm 358 keV 1.42 keV 89.2 um 89.2 um World eIoni - 2 -281 um -20 cm 2 cm 820 MeV 16.3 keV 8.56 cm 8.57 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -300 um -11.4 cm 1.98 cm 3.6 keV 0 eV 0 fm 0 fm World initStep - 1 -305 um -11.4 cm 1.98 cm 1.78 MeV 3.6 keV 401 um 401 um World eIoni - 2 -343 um -11.7 cm 1.98 cm 32.9 MeV 192 eV 3.11 mm 3.51 mm World eIoni - 3 -399 um -12.2 cm 1.98 cm 80.2 MeV 1 keV 4.73 mm 8.24 mm World eIoni - 4 -462 um -14.6 cm 1.98 cm 316 MeV 4.2 keV 2.36 cm 3.18 cm World eIoni - 5 -495 um -20 cm 1.97 cm 861 MeV 11.4 keV 5.45 cm 8.63 cm OutOfWorldTransportation + 0 21.9 um -10.4 cm 1.63 cm 1.72 keV 0 eV 0 fm 0 fm World initStep + 1 26.7 um -10.4 cm 1.63 cm 495 keV 1.72 keV 120 um 120 um World eIoni + 2 52.6 um -20 cm 1.63 cm 961 MeV 17.5 keV 9.9 cm 9.91 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -462 um -14.6 cm 1.98 cm 996 eV 0 eV 0 fm 0 fm World initStep - 1 -462 um -14.6 cm 1.97 cm 198 keV 996 eV 52.9 um 52.9 um World eIoni - 2 -462 um -20 cm 1.97 cm 545 MeV 11.2 keV 5.9 cm 5.91 cm OutOfWorldTransportation + 0 106 um -7.88 cm 1.63 cm 9.87 keV 0 eV 0 fm 0 fm World initStep + 1 132 um -7.97 cm 1.63 cm 10.3 MeV 3.14 keV 1.76 mm 1.76 mm World eIoni + 2 18.7 um -8.09 cm 1.63 cm 22.1 MeV 85.6 eV 1.19 mm 2.95 mm World eIoni + 3 -635 um -20 cm 1.66 cm 1.21 GeV 25.4 keV 11.9 cm 12.2 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 384 um -12.9 cm 2.05 cm 1.34 GeV 22.4 keV 13.4 cm 13.4 cm World eIoni + 2 478 um -20 cm 2.27 cm 2.05 GeV 14.7 keV 7.1 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 384 um -12.9 cm 2.05 cm 6.62 keV 0 eV 0 fm 0 fm World initStep + 1 368 um -13 cm 2.05 cm 5.25 MeV 6.62 keV 1.16 mm 1.16 mm World eIoni + 2 560 um -12.9 cm 2.05 cm 5.08 MeV 90.6 eV 199 um 1.36 mm World eIoni + 3 3.51 mm -20 cm 2.12 cm 710 MeV 10.6 keV 7.1 cm 7.24 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -27.8 um -11.9 cm 2.02 cm 1.24 GeV 27.9 keV 12.4 cm 12.4 cm World eIoni + 2 26.6 um -17.5 cm 2.24 cm 1.8 GeV 15.8 keV 5.59 cm 18 cm World eIoni + 3 46.5 um -20 cm 2.31 cm 2.05 GeV 5.1 keV 2.47 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 26.6 um -17.5 cm 2.24 cm 21.2 keV 0 eV 0 fm 0 fm World initStep + 1 -55 um -17.8 cm 2.24 cm 27.8 MeV 2.76 keV 3.49 mm 3.49 mm World eIoni + 2 -659 um -18.2 cm 2.17 cm 70.9 MeV 1.04 keV 4.41 mm 7.9 mm World eIoni + 3 -1.46 mm -20 cm 2.09 cm 249 MeV 4.52 keV 1.78 cm 2.57 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -27.8 um -11.9 cm 2.02 cm 2.99 keV 0 eV 0 fm 0 fm World initStep + 1 -34.8 um -12 cm 2.02 cm 1.28 MeV 2.99 keV 292 um 292 um World eIoni + 2 -313 um -13 cm 2.01 cm 102 MeV 1.53 keV 1 cm 1.03 cm World eIoni + 3 -356 um -13.9 cm 2 cm 200 MeV 1.33 keV 9.83 mm 2.02 cm World eIoni + 4 -387 um -15.2 cm 2 cm 330 MeV 1.87 keV 1.3 cm 3.31 cm World eIoni + 5 -425 um -18.1 cm 2 cm 618 MeV 6.13 keV 2.89 cm 6.2 cm World eIoni + 6 -442 um -20 cm 2 cm 806 MeV 4.23 keV 1.88 cm 8.08 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -425 um -18.1 cm 2 cm 1.17 keV 0 eV 0 fm 0 fm World initStep + 1 -427 um -18.1 cm 2 cm 257 keV 1.17 keV 66.3 um 66.3 um World eIoni + 2 -436 um -20 cm 2 cm 188 MeV 2.48 keV 1.91 cm 1.91 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -399 um -12.2 cm 1.98 cm 1.89 keV 0 eV 0 fm 0 fm World initStep - 1 -395 um -12.2 cm 1.98 cm 576 keV 1.89 keV 137 um 137 um World eIoni - 2 -381 um -20 cm 1.98 cm 781 MeV 18.1 keV 7.96 cm 7.97 cm OutOfWorldTransportation + 0 -387 um -15.2 cm 2 cm 12.9 keV 0 eV 0 fm 0 fm World initStep + 1 -400 um -15.4 cm 2 cm 14.8 MeV 3.84 keV 2.18 mm 2.18 mm World eIoni + 2 -541 um -15.4 cm 1.98 cm 20.7 MeV 70.6 eV 625 um 2.81 mm World eIoni + 3 -1.82 mm -20 cm 1.84 cm 477 MeV 9.88 keV 4.57 cm 4.85 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -356 um -13.9 cm 2 cm 4.63 keV 0 eV 0 fm 0 fm World initStep + 1 -366 um -14 cm 2.01 cm 2.78 MeV 4.63 keV 624 um 624 um World eIoni + 2 -275 um -14.8 cm 2.01 cm 82.3 MeV 1.57 keV 7.95 mm 8.58 mm World eIoni + 3 -266 um -16.1 cm 2.02 cm 215 MeV 3.5 keV 1.32 cm 2.18 cm World eIoni + 4 -260 um -20 cm 2.04 cm 606 MeV 5.19 keV 3.92 cm 6.1 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -266 um -16.1 cm 2.02 cm 1.57 keV 0 eV 0 fm 0 fm World initStep + 1 -270 um -16.1 cm 2.02 cm 424 keV 1.57 keV 104 um 104 um World eIoni + 2 -295 um -20 cm 2.02 cm 392 MeV 4.02 keV 3.97 cm 3.98 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -3534,2014 +3328,338 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -242 um -11.6 cm 2 cm 1.21 GeV 22.8 keV 12.1 cm 12.1 cm World eIoni - 2 -485 um -20 cm 2.27 cm 2.05 GeV 18.8 keV 8.43 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -242 um -11.6 cm 2 cm 2.91 keV 0 eV 0 fm 0 fm World initStep - 1 -237 um -11.6 cm 1.99 cm 1.23 MeV 2.91 keV 280 um 280 um World eIoni - 2 -233 um -11.6 cm 1.99 cm 5.09 MeV 0 eV 387 um 666 um World eIoni - 3 -183 um -12.3 cm 1.99 cm 70 MeV 1.06 keV 6.49 mm 7.15 mm World eIoni - 4 -309 um -20 cm 1.97 cm 842 MeV 17.4 keV 7.72 cm 8.44 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -183 um -12.3 cm 1.99 cm 2.54 keV 0 eV 0 fm 0 fm World initStep - 1 -177 um -12.3 cm 1.99 cm 966 keV 2.54 keV 222 um 222 um World eIoni - 2 -59.9 um -12.8 cm 1.98 cm 52.3 MeV 248 eV 5.14 mm 5.36 mm World eIoni - 3 462 um -20 cm 1.96 cm 772 MeV 16.5 keV 7.2 cm 7.74 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 402 um -12.7 cm 1.96 cm 1.32 GeV 21.5 keV 13.2 cm 13.2 cm World eIoni - 2 589 um -17.4 cm 2.12 cm 1.79 GeV 12.5 keV 4.67 cm 17.9 cm World eIoni - 3 673 um -20 cm 2.19 cm 2.05 GeV 6.32 keV 2.61 cm 20.5 cm OutOfWorldTransportation + 1 -242 um -11.7 cm 1.91 cm 1.22 GeV 22.8 keV 12.2 cm 12.2 cm World eIoni + 2 -257 um -16.2 cm 2.07 cm 1.67 GeV 9.78 keV 4.53 cm 16.7 cm World eIoni + 3 -270 um -20 cm 2.17 cm 2.05 GeV 7.94 keV 3.79 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 589 um -17.4 cm 2.12 cm 1.12 keV 0 eV 0 fm 0 fm World initStep - 1 592 um -17.4 cm 2.12 cm 241 keV 1.12 keV 62.7 um 62.7 um World eIoni - 2 609 um -20 cm 2.12 cm 261 MeV 3.31 keV 2.68 cm 2.69 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 402 um -12.7 cm 1.96 cm 2.25 keV 0 eV 0 fm 0 fm World initStep - 1 395 um -12.7 cm 1.96 cm 779 keV 2.25 keV 182 um 182 um World eIoni - 2 331 um -13 cm 1.96 cm 26.8 MeV 36.1 eV 2.61 mm 2.79 mm World eIoni - 3 239 um -20 cm 1.96 cm 728 MeV 11.4 keV 7.02 cm 7.29 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -81.8 um -3.26 cm 1.36 cm 376 MeV 7.47 keV 3.73 cm 3.73 cm World eIoni - 2 -113 um -13.6 cm 2.02 cm 1.41 GeV 20.2 keV 10.3 cm 14 cm World eIoni - 3 -113 um -20 cm 2.21 cm 2.05 GeV 16.1 keV 6.45 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -113 um -13.6 cm 2.02 cm 1.27 keV 0 eV 0 fm 0 fm World initStep - 1 -114 um -13.6 cm 2.02 cm 297 keV 1.27 keV 75.5 um 75.5 um World eIoni - 2 -119 um -20 cm 2.02 cm 645 MeV 12.5 keV 6.75 cm 6.76 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -81.8 um -3.26 cm 1.36 cm 1.72 keV 0 eV 0 fm 0 fm World initStep - 1 -78.4 um -3.26 cm 1.36 cm 492 keV 1.72 keV 119 um 119 um World eIoni - 2 -58.3 um -20 cm 1.36 cm 1.67 GeV 28.3 keV 17.7 cm 17.7 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 266 um -11.1 cm 1.97 cm 1.16 GeV 26.1 keV 11.6 cm 11.6 cm World eIoni - 2 382 um -17.5 cm 2.21 cm 1.8 GeV 12.3 keV 6.4 cm 18 cm World eIoni - 3 414 um -20 cm 2.29 cm 2.05 GeV 5.04 keV 2.55 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 382 um -17.5 cm 2.21 cm 2.76 keV 0 eV 0 fm 0 fm World initStep - 1 390 um -17.5 cm 2.21 cm 1.11 MeV 2.76 keV 255 um 255 um World eIoni - 2 391 um -17.5 cm 2.21 cm 1.31 MeV 2.84 eV 19.6 um 274 um World eIoni - 3 414 um -20 cm 2.22 cm 255 MeV 3.62 keV 2.54 cm 2.56 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 266 um -11.1 cm 1.97 cm 25 keV 0 eV 0 fm 0 fm World initStep - 1 206 um -11.4 cm 1.98 cm 34.4 MeV 7.09 keV 4.2 mm 4.2 mm World eIoni - 2 7.93 mm -14.6 cm 1.62 cm 358 MeV 5.69 keV 3.42 cm 3.84 cm World eIoni - 3 1.07 cm -20 cm 1.5 cm 893 MeV 11 keV 5.36 cm 9.2 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 447 nm -184 um 1.36 mm 51.8 MeV 794 eV 1.37 mm 1.37 mm World eIoni - 2 -44.5 um -3.52 cm 1.39 cm 402 MeV 9.42 keV 3.86 cm 4 cm World eIoni - 3 -109 um -9.35 cm 1.84 cm 984 MeV 16.9 keV 5.84 cm 9.84 cm World eIoni - 4 -114 um -9.93 cm 1.87 cm 1.04 GeV 750 eV 5.86 mm 10.4 cm World eIoni - 5 -114 um -9.93 cm 1.87 cm 1.04 GeV 5.92 eV 28.1 um 10.4 cm World eIoni - 6 -126 um -11.4 cm 1.94 cm 1.19 GeV 2.19 keV 1.51 cm 11.9 cm World eIoni - 7 -174 um -20 cm 2.21 cm 2.05 GeV 21.5 keV 8.57 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -126 um -11.4 cm 1.94 cm 2.53 keV 0 eV 0 fm 0 fm World initStep - 1 -129 um -11.4 cm 1.94 cm 961 keV 2.53 keV 221 um 221 um World eIoni - 2 -254 um -12 cm 1.95 cm 59.4 MeV 1.78 keV 5.85 mm 6.07 mm World eIoni - 3 -944 um -15.3 cm 1.98 cm 384 MeV 7.1 keV 3.25 cm 3.85 cm World eIoni - 4 -1.35 mm -20 cm 2 cm 856 MeV 9.24 keV 4.72 cm 8.58 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -944 um -15.3 cm 1.98 cm 1.03 keV 0 eV 0 fm 0 fm World initStep - 1 -945 um -15.3 cm 1.98 cm 209 keV 1.03 keV 55.4 um 55.4 um World eIoni - 2 -947 um -20 cm 1.98 cm 472 MeV 11.6 keV 5.02 cm 5.03 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -114 um -9.93 cm 1.87 cm 1.44 keV 0 eV 0 fm 0 fm World initStep - 1 -117 um -9.94 cm 1.87 cm 366 keV 1.44 keV 90.9 um 90.9 um World eIoni - 2 -135 um -20 cm 1.86 cm 1.01 GeV 17.1 keV 10.6 cm 10.6 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -114 um -9.93 cm 1.87 cm 1.39 keV 0 eV 0 fm 0 fm World initStep - 1 -116 um -9.93 cm 1.87 cm 344 keV 1.39 keV 86 um 86 um World eIoni - 2 -130 um -20 cm 1.86 cm 1.01 GeV 18.4 keV 10.7 cm 10.7 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -109 um -9.35 cm 1.84 cm 19.1 keV 0 eV 0 fm 0 fm World initStep - 1 -168 um -9.49 cm 1.83 cm 15.5 MeV 3.18 keV 1.76 mm 1.76 mm World eIoni - 2 1.65 mm -20 cm 1.78 cm 1.07 GeV 21 keV 10.5 cm 10.7 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -44.5 um -3.52 cm 1.39 cm 2.05 keV 0 eV 0 fm 0 fm World initStep - 1 -49.8 um -3.53 cm 1.39 cm 665 keV 2.05 keV 157 um 157 um World eIoni - 2 -5.64 mm -8.86 cm 1.47 cm 533 MeV 8.8 keV 5.38 cm 5.4 cm World eIoni - 3 -9.45 mm -18.2 cm 1.58 cm 1.47 GeV 22.8 keV 9.39 cm 14.8 cm World eIoni - 4 -9.87 mm -20 cm 1.6 cm 1.65 GeV 3.21 keV 1.74 cm 16.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -9.45 mm -18.2 cm 1.58 cm 1.26 keV 0 eV 0 fm 0 fm World initStep - 1 -9.45 mm -18.2 cm 1.58 cm 291 keV 1.26 keV 74.1 um 74.1 um World eIoni - 2 -9.45 mm -20 cm 1.58 cm 174 MeV 2.4 keV 1.76 cm 1.76 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 447 nm -184 um 1.36 mm 1.08 keV 0 eV 0 fm 0 fm World initStep - 1 3.11 um -205 um 1.36 mm 231 keV 1.08 keV 59.3 um 59.3 um World eIoni - 2 8.46 mm -11.7 cm -4.72 cm 1.16 GeV 34.7 keV 13.5 cm 13.5 cm World eIoni - 3 1.23 cm -20 cm -12.2 cm 1.99 GeV 24.5 keV 11.3 cm 24.7 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -92.3 um -3.58 cm 1.4 cm 408 MeV 5.68 keV 4.05 cm 4.05 cm World eIoni - 2 -160 um -10.5 cm 1.9 cm 1.1 GeV 13.8 keV 6.91 cm 11 cm World eIoni - 3 -195 um -20 cm 2.22 cm 2.05 GeV 21.4 keV 9.54 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -160 um -10.5 cm 1.9 cm 2.88 keV 0 eV 0 fm 0 fm World initStep - 1 -170 um -10.5 cm 1.9 cm 1.2 MeV 2.88 keV 274 um 274 um World eIoni - 2 -40.4 um -11.6 cm 1.93 cm 112 MeV 1.73 keV 1.11 cm 1.14 cm World eIoni - 3 77 um -13.4 cm 1.95 cm 292 MeV 2.94 keV 1.79 cm 2.93 cm World eIoni - 4 118 um -14.3 cm 1.95 cm 380 MeV 3.49 keV 8.85 mm 3.82 cm World eIoni - 5 160 um -15.4 cm 1.96 cm 493 MeV 1.35 keV 1.13 cm 4.94 cm World eIoni - 6 262 um -20 cm 1.97 cm 953 MeV 14.2 keV 4.61 cm 9.55 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 160 um -15.4 cm 1.96 cm 2.08 keV 0 eV 0 fm 0 fm World initStep - 1 167 um -15.4 cm 1.96 cm 682 keV 2.08 keV 160 um 160 um World eIoni - 2 163 um -15.5 cm 1.96 cm 10.6 MeV 108 eV 991 um 1.15 mm World eIoni - 3 184 um -20 cm 1.96 cm 461 MeV 6.83 keV 4.5 cm 4.62 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 6 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 163 um -15.5 cm 1.96 cm 17.7 keV 0 eV 0 fm 0 fm World initStep - 1 141 um -15.6 cm 1.95 cm 8.56 MeV 1.07 keV 915 um 915 um World eIoni - 2 -1.21 mm -16.9 cm 2.03 cm 137 MeV 1.14 keV 1.3 cm 1.4 cm World eIoni - 3 -1.82 mm -20 cm 2.07 cm 450 MeV 6.98 keV 3.13 cm 4.53 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -1.21 mm -16.9 cm 2.03 cm 25.7 keV 0 eV 0 fm 0 fm World initStep - 1 -1.31 mm -17.2 cm 2.02 cm 35.7 MeV 4.24 keV 4.34 mm 4.34 mm World eIoni - 2 -7.01 mm -20 cm 2.11 cm 314 MeV 4.85 keV 2.87 cm 3.3 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 118 um -14.3 cm 1.95 cm 1.33 keV 0 eV 0 fm 0 fm World initStep - 1 115 um -14.3 cm 1.95 cm 319 keV 1.33 keV 80.5 um 80.5 um World eIoni - 2 94.6 um -20 cm 1.95 cm 573 MeV 10.5 keV 5.94 cm 5.95 cm OutOfWorldTransportation + 0 -257 um -16.2 cm 2.07 cm 8.42 keV 0 eV 0 fm 0 fm World initStep + 1 -222 um -16.3 cm 2.07 cm 7.98 MeV 5.7 keV 1.52 mm 1.52 mm World eIoni + 2 845 um -16.4 cm 2.09 cm 24.3 MeV 45 eV 2.01 mm 3.54 mm World eIoni + 3 2.52 mm -18.4 cm 2.12 cm 219 MeV 4.72 keV 1.95 cm 2.31 cm World eIoni + 4 2.95 mm -20 cm 2.13 cm 379 MeV 1.87 keV 1.61 cm 3.91 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 77 um -13.4 cm 1.95 cm 2.15 keV 0 eV 0 fm 0 fm World initStep - 1 70.3 um -13.4 cm 1.95 cm 721 keV 2.15 keV 169 um 169 um World eIoni - 2 -1.4 mm -15.8 cm 2.01 cm 238 MeV 3.22 keV 2.39 cm 2.4 cm World eIoni - 3 -2.29 mm -20 cm 1.87 cm 662 MeV 10.7 keV 4.24 cm 6.64 cm OutOfWorldTransportation + 0 2.52 mm -18.4 cm 2.12 cm 1.23 keV 0 eV 0 fm 0 fm World initStep + 1 2.52 mm -18.4 cm 2.12 cm 281 keV 1.23 keV 71.9 um 71.9 um World eIoni + 2 2.53 mm -20 cm 2.12 cm 161 MeV 5.42 keV 1.62 cm 1.63 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -242 um -11.7 cm 1.91 cm 1.14 keV 0 eV 0 fm 0 fm World initStep + 1 -245 um -11.7 cm 1.91 cm 245 keV 1.14 keV 63.8 um 63.8 um World eIoni + 2 -269 um -20 cm 1.91 cm 832 MeV 24.8 keV 9.07 cm 9.08 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -141 um -4.92 cm 1.55 cm 542 MeV 11.3 keV 5.41 cm 5.41 cm World eIoni + 2 -170 um -12.6 cm 1.99 cm 1.31 GeV 17.2 keV 7.65 cm 13.1 cm World eIoni + 3 -170 um -20 cm 2.21 cm 2.05 GeV 14.6 keV 7.44 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -170 um -12.6 cm 1.99 cm 3.48 keV 0 eV 0 fm 0 fm World initStep + 1 -165 um -12.6 cm 1.98 cm 1.67 MeV 3.48 keV 378 um 378 um World eIoni + 2 -148 um -12.9 cm 1.98 cm 38.3 MeV 370 eV 3.66 mm 4.04 mm World eIoni + 3 -134 um -20 cm 1.97 cm 744 MeV 14.7 keV 7.06 cm 7.46 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -141 um -4.92 cm 1.55 cm 1.04 keV 0 eV 0 fm 0 fm World initStep + 1 -143 um -4.93 cm 1.55 cm 211 keV 1.04 keV 56 um 56 um World eIoni + 2 -2.25 cm -15.1 cm -2.12 cm 1.01 GeV 24.5 keV 11.7 cm 11.7 cm World eIoni + 3 -3.96 cm -19.6 cm -4.11 cm 1.47 GeV 11.9 keV 5.26 cm 17 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 282 um -12 cm 1.93 cm 1.25 GeV 27.2 keV 12.5 cm 12.5 cm World eIoni + 2 1.14 mm -20 cm 2.09 cm 2.05 GeV 20.3 keV 8.03 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 282 um -12 cm 1.93 cm 1.34 keV 0 eV 0 fm 0 fm World initStep + 1 284 um -12 cm 1.93 cm 323 keV 1.34 keV 81.3 um 81.3 um World eIoni + 2 296 um -20 cm 1.93 cm 802 MeV 17.1 keV 8.44 cm 8.45 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -240 um -7.27 cm 1.72 cm 777 MeV 16 keV 7.76 cm 7.76 cm World eIoni + 2 -431 um -20 cm 2.21 cm 2.05 GeV 29.4 keV 12.7 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -240 um -7.27 cm 1.72 cm 995 eV 0 eV 0 fm 0 fm World initStep + 1 -238 um -7.27 cm 1.72 cm 198 keV 995 eV 52.8 um 52.8 um World eIoni + 2 -3.57 cm -16.3 cm 2.4 cm 907 MeV 31.4 keV 10.5 cm 10.5 cm World eIoni + 3 -5.75 cm -19.2 cm 1.13 cm 1.19 GeV 9.69 keV 3.79 cm 14.3 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 107 um -5.32 cm 1.6 cm 582 MeV 10.9 keV 5.81 cm 5.81 cm World eIoni + 2 150 um -20 cm 2.24 cm 2.05 GeV 34.3 keV 14.7 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 107 um -5.32 cm 1.6 cm 1.65 keV 0 eV 0 fm 0 fm World initStep + 1 112 um -5.33 cm 1.6 cm 458 keV 1.65 keV 111 um 111 um World eIoni + 2 141 um -20 cm 1.6 cm 1.47 GeV 27.3 keV 15.5 cm 15.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 0 fm -20 cm 2.22 cm 2.05 GeV 41.7 keV 20.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -497 um -13.7 cm 2.07 cm 1.42 GeV 28.3 keV 14.2 cm 14.2 cm World eIoni + 2 -522 um -14.9 cm 2.11 cm 1.54 GeV 3.06 keV 1.21 cm 15.4 cm World eIoni + 3 -609 um -20 cm 2.26 cm 2.05 GeV 11.8 keV 5.13 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -522 um -14.9 cm 2.11 cm 3.73 keV 0 eV 0 fm 0 fm World initStep + 1 -536 um -14.9 cm 2.11 cm 1.9 MeV 3.73 keV 428 um 428 um World eIoni + 2 -521 um -15.2 cm 2.11 cm 34.8 MeV 239 eV 3.29 mm 3.72 mm WorldTransportation + 3 -521 um -15.2 cm 2.11 cm 34.8 MeV 0 eV 0 fm 3.72 mm World eIoni + 4 -420 um -20 cm 2.1 cm 512 MeV 7.01 keV 4.78 cm 5.15 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -521 um -15.2 cm 2.11 cm 2.58 keV 0 eV 0 fm 0 fm World initStep + 1 -514 um -15.2 cm 2.11 cm 993 keV 2.58 keV 228 um 228 um World eIoni + 2 -480 um -15.5 cm 2.11 cm 23.5 MeV 199 eV 2.25 mm 2.48 mm World eIoni + 3 -299 um -20 cm 2.12 cm 478 MeV 9.77 keV 4.54 cm 4.79 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -497 um -13.7 cm 2.07 cm 1.53 keV 0 eV 0 fm 0 fm World initStep + 1 -497 um -13.7 cm 2.07 cm 406 keV 1.53 keV 99.8 um 99.8 um World eIoni + 2 -498 um -20 cm 2.07 cm 633 MeV 10.8 keV 6.5 cm 6.51 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 0 fm -20 cm 2.22 cm 2.05 GeV 42.8 keV 20.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 536 um -13 cm 1.99 cm 1.35 GeV 23.3 keV 13.5 cm 13.5 cm World eIoni + 2 832 um -20 cm 2.22 cm 2.05 GeV 15.5 keV 7.01 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 536 um -13 cm 1.99 cm 1.09 keV 0 eV 0 fm 0 fm World initStep + 1 539 um -13 cm 1.99 cm 231 keV 1.09 keV 60.5 um 60.5 um World eIoni + 2 561 um -20 cm 1.99 cm 700 MeV 17.9 keV 7.58 cm 7.59 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -234 um -9.29 cm 1.82 cm 979 MeV 19.4 keV 9.78 cm 9.78 cm World eIoni + 2 -595 um -20 cm 2.18 cm 2.05 GeV 20.8 keV 10.7 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -234 um -9.29 cm 1.82 cm 2.86 keV 0 eV 0 fm 0 fm World initStep + 1 -230 um -9.3 cm 1.82 cm 1.19 MeV 2.86 keV 270 um 270 um World eIoni + 2 -209 um -9.71 cm 1.83 cm 42 MeV 476 eV 4.08 mm 4.35 mm World eIoni + 3 17 um -20 cm 1.85 cm 1.07 GeV 22.8 keV 10.3 cm 10.7 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 46.2 um -2.98 cm 1.33 cm 348 MeV 5.5 keV 3.45 cm 3.45 cm World eIoni + 2 76 um -8.56 cm 1.82 cm 906 MeV 9.82 keV 5.6 cm 9.05 cm World eIoni + 3 100 um -20 cm 2.23 cm 2.05 GeV 18.8 keV 11.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 76 um -8.56 cm 1.82 cm 1.82 keV 0 eV 0 fm 0 fm World initStep + 1 72.8 um -8.56 cm 1.82 cm 544 keV 1.82 keV 130 um 130 um World eIoni + 2 55.9 um -20 cm 1.82 cm 1.14 GeV 18.5 keV 11.8 cm 11.8 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 46.2 um -2.98 cm 1.33 cm 5.78 keV 0 eV 0 fm 0 fm World initStep + 1 34.1 um -3.02 cm 1.33 cm 4.13 MeV 5.78 keV 925 um 925 um World eIoni + 2 31.6 um -3.11 cm 1.33 cm 12.8 MeV 87.2 eV 871 um 1.8 mm World eIoni + 3 619 um -9.09 cm 1.32 cm 611 MeV 8.78 keV 5.98 cm 6.16 cm World eIoni + 4 1.73 mm -16.1 cm 1.31 cm 1.31 GeV 18.6 keV 6.97 cm 13.1 cm World eIoni + 5 2.09 mm -19.7 cm 1.31 cm 1.67 GeV 7.57 keV 3.61 cm 16.7 cm World eIoni + 6 2.12 mm -20 cm 1.31 cm 1.7 GeV 699 eV 3.28 mm 17.1 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 2.09 mm -19.7 cm 1.31 cm 1.21 keV 0 eV 0 fm 0 fm World initStep + 1 2.09 mm -19.7 cm 1.31 cm 272 keV 1.21 keV 69.8 um 69.8 um World eIoni + 2 2.1 mm -20 cm 1.31 cm 32.8 MeV 124 eV 3.26 mm 3.33 mm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 1.73 mm -16.1 cm 1.31 cm 1.44 keV 0 eV 0 fm 0 fm World initStep + 1 1.73 mm -16.1 cm 1.31 cm 366 keV 1.44 keV 90.9 um 90.9 um World eIoni + 2 1.75 mm -20 cm 1.31 cm 394 MeV 7.81 keV 4.01 cm 4.02 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 619 um -9.09 cm 1.32 cm 10.8 keV 0 eV 0 fm 0 fm World initStep + 1 581 um -9.2 cm 1.32 cm 11.7 MeV 4.45 keV 1.9 mm 1.9 mm World eIoni + 2 311 um -9.15 cm 1.39 cm 6.91 MeV 250 eV 872 um 2.77 mm World eIoni + 3 -1.5 mm -12.7 cm 1.71 cm 361 MeV 5.27 keV 3.62 cm 3.9 cm World eIoni + 4 -1.85 mm -15.8 cm 1.75 cm 669 MeV 5.35 keV 3.08 cm 6.98 cm World eIoni + 5 -2.05 mm -18.6 cm 1.77 cm 953 MeV 5.86 keV 2.84 cm 9.82 cm World eIoni + 6 -2.11 mm -19.6 cm 1.77 cm 1.05 GeV 2.39 keV 1 cm 10.8 cm World eIoni + 7 -2.13 mm -20 cm 1.78 cm 1.09 GeV 1.43 keV 3.87 mm 11.2 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -2.11 mm -19.6 cm 1.77 cm 1.16 keV 0 eV 0 fm 0 fm World initStep + 1 -2.12 mm -19.6 cm 1.77 cm 253 keV 1.16 keV 65.4 um 65.4 um World eIoni + 2 -2.13 mm -20 cm 1.77 cm 38.7 MeV 891 eV 3.86 mm 3.92 mm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 9, Parent ID = 4 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -1.4 mm -15.8 cm 2.01 cm 4.71 keV 0 eV 0 fm 0 fm World initStep - 1 -1.38 mm -15.8 cm 2.01 cm 2.86 MeV 4.71 keV 641 um 641 um World eIoni - 2 -1.39 mm -16.1 cm 2.01 cm 36.1 MeV 293 eV 3.33 mm 3.97 mm World eIoni - 3 -1.53 mm -19.4 cm 2.01 cm 361 MeV 4.5 keV 3.24 cm 3.64 cm World eIoni - 4 -1.55 mm -20 cm 2.02 cm 424 MeV 842 eV 6.32 mm 4.27 cm OutOfWorldTransportation + 0 -2.05 mm -18.6 cm 1.77 cm 1.27 keV 0 eV 0 fm 0 fm World initStep + 1 -2.05 mm -18.6 cm 1.77 cm 297 keV 1.27 keV 75.6 um 75.6 um World eIoni + 2 -2.04 mm -20 cm 1.77 cm 139 MeV 3.57 keV 1.4 cm 1.41 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 9 +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 4 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -1.53 mm -19.4 cm 2.01 cm 1.39 keV 0 eV 0 fm 0 fm World initStep - 1 -1.53 mm -19.4 cm 2.01 cm 345 keV 1.39 keV 86.1 um 86.1 um World eIoni - 2 -1.52 mm -20 cm 2.01 cm 63.2 MeV 1.08 keV 6.3 mm 6.39 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -92.3 um -3.58 cm 1.4 cm 7.39 keV 0 eV 0 fm 0 fm World initStep - 1 -82.9 um -3.64 cm 1.41 cm 6.39 MeV 6.32 keV 1.33 mm 1.33 mm World eIoni - 2 205 um -4.11 cm 1.47 cm 53.2 MeV 366 eV 4.76 mm 6.09 mm World eIoni - 3 713 um -11.5 cm 1.53 cm 788 MeV 12.9 keV 7.35 cm 7.96 cm World eIoni - 4 858 um -19.5 cm 1.54 cm 1.59 GeV 19.1 keV 8.06 cm 16 cm World eIoni - 5 864 um -20 cm 1.54 cm 1.64 GeV 1.2 keV 4.85 mm 16.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 858 um -19.5 cm 1.54 cm 1.11 keV 0 eV 0 fm 0 fm World initStep - 1 856 um -19.5 cm 1.54 cm 236 keV 1.11 keV 61.6 um 61.6 um World eIoni - 2 849 um -20 cm 1.53 cm 48.5 MeV 1.15 keV 4.85 mm 4.91 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 713 um -11.5 cm 1.53 cm 1.58 keV 0 eV 0 fm 0 fm World initStep - 1 718 um -11.5 cm 1.53 cm 429 keV 1.58 keV 105 um 105 um World eIoni - 2 745 um -20 cm 1.53 cm 854 MeV 14.2 keV 8.83 cm 8.84 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 186 um -5.95 cm 1.63 cm 644 MeV 8.57 keV 6.43 cm 6.43 cm World eIoni - 2 448 um -16.1 cm 2.09 cm 1.66 GeV 21 keV 10.1 cm 16.6 cm World eIoni - 3 450 um -16.1 cm 2.09 cm 1.66 GeV 333 eV 798 um 16.6 cm World eIoni - 4 507 um -20 cm 2.19 cm 2.05 GeV 7.55 keV 3.86 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 450 um -16.1 cm 2.09 cm 4.51 keV 0 eV 0 fm 0 fm World initStep - 1 444 um -16.2 cm 2.09 cm 2.66 MeV 4.51 keV 596 um 596 um World eIoni - 2 431 um -16.5 cm 2.09 cm 36.6 MeV 419 eV 3.39 mm 3.99 mm World eIoni - 3 404 um -20 cm 2.09 cm 386 MeV 6.79 keV 3.5 cm 3.9 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 448 um -16.1 cm 2.09 cm 12.4 keV 0 eV 0 fm 0 fm World initStep - 1 476 um -16.2 cm 2.08 cm 11.9 MeV 4.77 keV 1.57 mm 1.57 mm World eIoni - 2 -1.71 mm -20 cm 2.05 cm 395 MeV 4.53 keV 3.85 cm 4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 186 um -5.95 cm 1.63 cm 2.16 keV 0 eV 0 fm 0 fm World initStep - 1 188 um -5.95 cm 1.63 cm 731 keV 2.16 keV 171 um 171 um World eIoni - 2 92.8 um -6.35 cm 1.64 cm 40.3 MeV 439 eV 3.96 mm 4.13 mm World eIoni - 3 -525 um -12.8 cm 1.62 cm 682 MeV 12.8 keV 6.42 cm 6.83 cm World eIoni - 4 -570 um -14.1 cm 1.62 cm 813 MeV 3.16 keV 1.31 cm 8.14 cm World eIoni - 5 -713 um -20 cm 1.62 cm 1.41 GeV 11.4 keV 5.93 cm 14.1 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -570 um -14.1 cm 1.62 cm 5.76 keV 0 eV 0 fm 0 fm World initStep - 1 -548 um -14.1 cm 1.62 cm 4.09 MeV 5.76 keV 918 um 918 um World eIoni - 2 -539 um -14.8 cm 1.62 cm 77.7 MeV 2.59 keV 7.36 mm 8.28 mm World eIoni - 3 -610 um -16 cm 1.61 cm 189 MeV 1.14 keV 1.12 cm 1.94 cm World eIoni - 4 -687 um -20 cm 1.6 cm 593 MeV 8.45 keV 4.04 cm 5.98 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 6 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -610 um -16 cm 1.61 cm 3.1 keV 0 eV 0 fm 0 fm World initStep - 1 -621 um -16 cm 1.61 cm 1.37 MeV 3.1 keV 311 um 311 um World eIoni - 2 -622 um -16 cm 1.61 cm 1.77 MeV 5.92 eV 41.2 um 352 um World eIoni - 3 -1.34 mm -18.5 cm 1.57 cm 251 MeV 4.57 keV 2.5 cm 2.53 cm World eIoni - 4 -2.21 mm -20 cm 1.56 cm 404 MeV 2.11 keV 1.53 cm 4.06 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -1.34 mm -18.5 cm 1.57 cm 1.3 keV 0 eV 0 fm 0 fm World initStep - 1 -1.34 mm -18.5 cm 1.57 cm 308 keV 1.3 keV 77.9 um 77.9 um World eIoni - 2 -1.34 mm -20 cm 1.57 cm 152 MeV 1.37 keV 1.54 cm 1.54 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -622 um -16 cm 1.61 cm 8.77 keV 0 eV 0 fm 0 fm World initStep - 1 -660 um -16.1 cm 1.61 cm 8.53 MeV 4.67 keV 1.58 mm 1.58 mm World eIoni - 2 230 um -16.8 cm 1.88 cm 80.5 MeV 4.03 keV 8.35 mm 9.93 mm World eIoni - 3 429 um -17.7 cm 1.94 cm 173 MeV 1.86 keV 9.26 mm 1.92 cm World eIoni - 4 655 um -20 cm 2.01 cm 402 MeV 4.4 keV 2.3 cm 4.22 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 8 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 429 um -17.7 cm 1.94 cm 3 keV 0 eV 0 fm 0 fm World initStep - 1 428 um -17.7 cm 1.94 cm 1.3 MeV 3 keV 295 um 295 um World eIoni - 2 544 um -18.6 cm 1.96 cm 87.7 MeV 857 eV 8.64 mm 8.94 mm World eIoni - 3 544 um -18.6 cm 1.96 cm 87.9 MeV 4.93 eV 24.8 um 8.96 mm World eIoni - 4 575 um -20 cm 1.96 cm 230 MeV 1.74 keV 1.42 cm 2.31 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 10 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 544 um -18.6 cm 1.96 cm 1.12 keV 0 eV 0 fm 0 fm World initStep - 1 542 um -18.6 cm 1.96 cm 239 keV 1.12 keV 62.4 um 62.4 um World eIoni - 2 529 um -20 cm 1.95 cm 142 MeV 3.63 keV 1.43 cm 1.44 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -525 um -12.8 cm 1.62 cm 7.27 keV 0 eV 0 fm 0 fm World initStep - 1 -556 um -12.8 cm 1.62 cm 6.21 MeV 4.74 keV 1.31 mm 1.31 mm World eIoni - 2 -953 um -12.8 cm 1.64 cm 6.12 MeV 156 eV 461 um 1.77 mm World eIoni - 3 -2.94 mm -14.1 cm 1.74 cm 133 MeV 1.83 keV 1.31 cm 1.49 cm World eIoni - 4 -3.9 mm -20 cm 1.79 cm 724 MeV 12.8 keV 5.91 cm 7.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 5 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -2.94 mm -14.1 cm 1.74 cm 3.82 keV 0 eV 0 fm 0 fm World initStep - 1 -2.93 mm -14.1 cm 1.74 cm 1.98 MeV 3.82 keV 445 um 445 um World eIoni - 2 -2.92 mm -14.2 cm 1.74 cm 10.1 MeV 0 eV 810 um 1.25 mm World eIoni - 3 -2.9 mm -20 cm 1.74 cm 591 MeV 8.63 keV 5.81 cm 5.94 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -593 um -13.6 cm 2.05 cm 1.41 GeV 21.5 keV 14.1 cm 14.1 cm World eIoni - 2 -1.12 mm -20 cm 2.18 cm 2.05 GeV 16.4 keV 6.4 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -593 um -13.6 cm 2.05 cm 1.89 keV 0 eV 0 fm 0 fm World initStep - 1 -589 um -13.6 cm 2.05 cm 580 keV 1.89 keV 138 um 138 um World eIoni - 2 -571 um -20 cm 2.05 cm 639 MeV 11.7 keV 6.49 cm 6.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -10.4 um -5.77 mm 7.05 mm 108 MeV 3.22 keV 9.57 mm 9.57 mm World eIoni - 2 -401 um -12 cm 1.99 cm 1.25 GeV 22.9 keV 11.6 cm 12.5 cm World eIoni - 3 -445 um -13.7 cm 2.05 cm 1.42 GeV 3.56 keV 1.64 cm 14.2 cm World eIoni - 4 -578 um -20 cm 2.26 cm 2.05 GeV 12.8 keV 6.35 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -445 um -13.7 cm 2.05 cm 3.03 keV 0 eV 0 fm 0 fm World initStep - 1 -441 um -13.7 cm 2.05 cm 160 keV 90.8 eV 17.3 um 17.3 um World eIoni - 2 -3.36 mm -15.3 cm 2.18 cm 168 MeV 3.16 keV 1.74 cm 1.74 cm World eIoni - 3 -1.53 cm -16.8 cm 2.2 cm 311 MeV 5.31 keV 1.88 cm 3.62 cm World eIoni - 4 -2.58 cm -19.8 cm 2.23 cm 618 MeV 8.43 keV 3.25 cm 6.87 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -1.53 cm -16.8 cm 2.2 cm 1.71 keV 0 eV 0 fm 0 fm World initStep - 1 -1.53 cm -16.8 cm 2.2 cm 487 keV 1.71 keV 118 um 118 um World eIoni - 2 -1.53 cm -19.9 cm 2.21 cm 318 MeV 7.14 keV 3.21 cm 3.22 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -401 um -12 cm 1.99 cm 2.01 keV 0 eV 0 fm 0 fm World initStep - 1 -407 um -12 cm 1.99 cm 645 keV 2.01 keV 152 um 152 um World eIoni - 2 -478 um -12.4 cm 2 cm 42.7 MeV 431 eV 4.21 mm 4.37 mm World eIoni - 3 -816 um -20 cm 2.03 cm 798 MeV 19.8 keV 7.56 cm 7.99 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -478 um -12.4 cm 2 cm 1.72 keV 0 eV 0 fm 0 fm World initStep - 1 -477 um -12.4 cm 2 cm 494 keV 1.72 keV 119 um 119 um World eIoni - 2 -474 um -20 cm 2 cm 756 MeV 15.6 keV 7.74 cm 7.75 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -10.4 um -5.77 mm 7.05 mm 6.65 keV 0 eV 0 fm 0 fm World initStep - 1 9.09 um -6.26 mm 7.06 mm 5.29 MeV 5 keV 1.16 mm 1.16 mm World eIoni - 2 -884 um -6.75 mm 6.89 mm 10.1 MeV 102 eV 1.13 mm 2.29 mm World eIoni - 3 -2.5 mm -8.38 cm 7.24 mm 781 MeV 14.4 keV 7.72 cm 7.95 cm World eIoni - 4 -1.37 mm -20 cm 5.89 mm 1.94 GeV 25 keV 11.6 cm 19.6 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -2.5 mm -8.38 cm 7.24 mm 2.4 keV 0 eV 0 fm 0 fm World initStep - 1 -2.51 mm -8.39 cm 7.24 mm 873 keV 2.4 keV 202 um 202 um World eIoni - 2 -2.55 mm -8.63 cm 7.26 mm 25.3 MeV 300 eV 2.45 mm 2.65 mm World eIoni - 3 -2.83 mm -14.6 cm 7.62 mm 621 MeV 10.5 keV 5.96 cm 6.23 cm World eIoni - 4 -2.85 mm -16.5 cm 7.52 mm 812 MeV 3.84 keV 1.91 cm 8.13 cm World eIoni - 5 -2.86 mm -20 cm 7.38 mm 1.16 GeV 8.51 keV 3.5 cm 11.6 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -2.85 mm -16.5 cm 7.52 mm 1.52 keV 0 eV 0 fm 0 fm World initStep - 1 -2.84 mm -16.5 cm 7.52 mm 400 keV 1.52 keV 98.5 um 98.5 um World eIoni - 2 -2.82 mm -20 cm 7.53 mm 350 MeV 7.09 keV 3.55 cm 3.56 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -2.83 mm -14.6 cm 7.62 mm 2.08 keV 0 eV 0 fm 0 fm World initStep - 1 -2.83 mm -14.6 cm 7.61 mm 681 keV 2.08 keV 160 um 160 um World eIoni - 2 -2.53 mm -16.7 cm 6.22 mm 214 MeV 2.76 keV 2.15 cm 2.16 cm World eIoni - 3 -2.71 mm -17.2 cm 4.96 mm 256 MeV 555 eV 4.32 mm 2.59 cm World eIoni - 4 -3.46 mm -20 cm -275 um 540 MeV 4.7 keV 2.9 cm 5.49 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 8 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -2.71 mm -17.2 cm 4.96 mm 2.25 keV 0 eV 0 fm 0 fm World initStep - 1 -2.7 mm -17.2 cm 4.95 mm 784 keV 2.25 keV 182 um 182 um World eIoni - 2 -3.05 mm -19.2 cm 3.88 mm 200 MeV 3.76 keV 2 cm 2.01 cm World eIoni - 3 -3.1 mm -20 cm 3.61 mm 285 MeV 1.51 keV 8.48 mm 2.86 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 10 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -3.05 mm -19.2 cm 3.88 mm 1.99 keV 0 eV 0 fm 0 fm World initStep - 1 -3.05 mm -19.2 cm 3.88 mm 633 keV 1.99 keV 150 um 150 um World eIoni - 2 -3.06 mm -20 cm 3.9 mm 84.8 MeV 1.14 keV 8.43 mm 8.58 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -59.6 um -2.53 cm 1.25 cm 303 MeV 6.31 keV 2.99 cm 2.99 cm World eIoni - 2 -150 um -12.2 cm 1.98 cm 1.27 GeV 21.5 keV 9.66 cm 12.7 cm World eIoni - 3 -161 um -13.7 cm 2.04 cm 1.42 GeV 2.88 keV 1.56 cm 14.2 cm World eIoni - 4 -194 um -20 cm 2.22 cm 2.05 GeV 10.8 keV 6.29 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -161 um -13.7 cm 2.04 cm 5.01 keV 0 eV 0 fm 0 fm World initStep - 1 -178 um -13.7 cm 2.04 cm 3.19 MeV 5.01 keV 716 um 716 um World eIoni - 2 -181 um -13.8 cm 2.04 cm 4.94 MeV 0 eV 175 um 891 um World eIoni - 3 -219 um -20 cm 2.04 cm 629 MeV 12.2 keV 6.24 cm 6.33 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -150 um -12.2 cm 1.98 cm 1.07 keV 0 eV 0 fm 0 fm World initStep - 1 -147 um -12.2 cm 1.98 cm 223 keV 1.07 keV 58.6 um 58.6 um World eIoni - 2 -128 um -20 cm 1.98 cm 784 MeV 22.7 keV 8.64 cm 8.64 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -59.6 um -2.53 cm 1.25 cm 1.39 keV 0 eV 0 fm 0 fm World initStep - 1 -57.4 um -2.53 cm 1.25 cm 344 keV 1.39 keV 86.1 um 86.1 um World eIoni - 2 -41.6 um -20 cm 1.25 cm 1.75 GeV 32 keV 19.5 cm 19.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -265 um -7.62 cm 1.75 cm 812 MeV 17.6 keV 8.11 cm 8.11 cm World eIoni - 2 -354 um -10.4 cm 1.89 cm 1.09 GeV 7.36 keV 2.75 cm 10.9 cm World eIoni - 3 -542 um -19.7 cm 2.21 cm 2.02 GeV 16.1 keV 9.36 cm 20.2 cm World eIoni - 4 -546 um -20 cm 2.21 cm 2.05 GeV 738 eV 2.75 mm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -542 um -19.7 cm 2.21 cm 1.05 keV 0 eV 0 fm 0 fm World initStep - 1 -540 um -19.7 cm 2.21 cm 216 keV 1.05 keV 57.1 um 57.1 um World eIoni - 2 -535 um -20 cm 2.21 cm 27.5 MeV 674 eV 2.73 mm 2.79 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -354 um -10.4 cm 1.89 cm 6.41 keV 0 eV 0 fm 0 fm World initStep - 1 -329 um -10.4 cm 1.89 cm 4.97 MeV 4.27 keV 1.1 mm 1.1 mm World eIoni - 2 -1.54 mm -10.7 cm 1.84 cm 30.1 MeV 324 eV 3.47 mm 4.58 mm World eIoni - 3 -2.69 mm -20 cm 1.8 cm 964 MeV 14.7 keV 9.34 cm 9.79 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -265 um -7.62 cm 1.75 cm 4.22 keV 0 eV 0 fm 0 fm World initStep - 1 -260 um -7.64 cm 1.75 cm 2.36 MeV 4.22 keV 530 um 530 um World eIoni - 2 -262 um -7.82 cm 1.75 cm 19.9 MeV 256 eV 1.75 mm 2.28 mm World eIoni - 3 -424 um -11 cm 1.75 cm 341 MeV 5.52 keV 3.21 cm 3.44 cm World eIoni - 4 -481 um -13.8 cm 1.75 cm 622 MeV 4.46 keV 2.81 cm 6.25 cm World eIoni - 5 -497 um -15 cm 1.75 cm 736 MeV 2.78 keV 1.14 cm 7.39 cm World eIoni - 6 -510 um -16 cm 1.75 cm 839 MeV 2.85 keV 1.03 cm 8.42 cm World eIoni - 7 -550 um -20 cm 1.75 cm 1.24 GeV 7.59 keV 3.99 cm 12.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -510 um -16 cm 1.75 cm 1.08 keV 0 eV 0 fm 0 fm World initStep - 1 -510 um -16 cm 1.75 cm 227 keV 1.08 keV 59.6 um 59.6 um World eIoni - 2 -511 um -20 cm 1.75 cm 399 MeV 10.4 keV 4.17 cm 4.17 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -497 um -15 cm 1.75 cm 3.31 keV 0 eV 0 fm 0 fm World initStep - 1 -500 um -15 cm 1.75 cm 1.53 MeV 3.31 keV 347 um 347 um World eIoni - 2 -482 um -15.2 cm 1.76 cm 23 MeV 565 eV 2.15 mm 2.5 mm World eIoni - 3 -449 um -20 cm 1.76 cm 502 MeV 8.96 keV 4.79 cm 5.04 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -481 um -13.8 cm 1.75 cm 1.49 keV 0 eV 0 fm 0 fm World initStep - 1 -484 um -13.8 cm 1.75 cm 389 keV 1.49 keV 96 um 96 um World eIoni - 2 -500 um -20 cm 1.75 cm 616 MeV 13.5 keV 6.33 cm 6.34 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -424 um -11 cm 1.75 cm 9.25 keV 0 eV 0 fm 0 fm World initStep - 1 -432 um -11.1 cm 1.75 cm 9.29 MeV 4.98 keV 1.66 mm 1.66 mm World eIoni - 2 -1.41 mm -11.2 cm 1.78 cm 21.6 MeV 317 eV 1.64 mm 3.3 mm World eIoni - 3 -4.62 mm -20 cm 1.88 cm 897 MeV 13.6 keV 8.77 cm 9.1 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 1.08 um -624 um 2.48 mm 56.2 MeV 503 eV 2.58 mm 2.58 mm World eIoni - 2 -383 um -13.6 cm 2.07 cm 1.41 GeV 26.2 keV 13.9 cm 14.1 cm World eIoni - 3 -503 um -19.3 cm 2.25 cm 1.98 GeV 9.43 keV 5.67 cm 19.8 cm World eIoni - 4 -516 um -20 cm 2.26 cm 2.05 GeV 820 eV 7.03 mm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -503 um -19.3 cm 2.25 cm 1.6 keV 0 eV 0 fm 0 fm World initStep - 1 -500 um -19.3 cm 2.25 cm 437 keV 1.6 keV 107 um 107 um World eIoni - 2 -490 um -20 cm 2.25 cm 70.3 MeV 1.24 keV 7 mm 7.11 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -383 um -13.6 cm 2.07 cm 1.23 keV 0 eV 0 fm 0 fm World initStep - 1 -384 um -13.6 cm 2.07 cm 280 keV 1.23 keV 71.7 um 71.7 um World eIoni - 2 -395 um -20 cm 2.07 cm 637 MeV 14.9 keV 6.7 cm 6.71 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 1.08 um -624 um 2.48 mm 14 keV 0 eV 0 fm 0 fm World initStep - 1 -347 nm -1.09 mm 2.47 mm 4.77 MeV 533 eV 499 um 499 um World eIoni - 2 -107 um -4.42 cm 4.49 mm 436 MeV 4.29 keV 4.33 cm 4.38 cm World eIoni - 3 320 um -14.3 cm 6.75 mm 1.43 GeV 25.6 keV 9.89 cm 14.3 cm World eIoni - 4 372 um -16.5 cm 7.02 mm 1.64 GeV 2.48 keV 2.15 cm 16.4 cm World eIoni - 5 446 um -20 cm 7.4 mm 1.99 GeV 6.82 keV 3.54 cm 20 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 372 um -16.5 cm 7.02 mm 2.4 keV 0 eV 0 fm 0 fm World initStep - 1 366 um -16.5 cm 7.03 mm 877 keV 2.4 keV 203 um 203 um World eIoni - 2 356 um -16.5 cm 7.03 mm 6.81 MeV 16.9 eV 594 um 797 um World eIoni - 3 339 um -20 cm 7.03 mm 354 MeV 5.31 keV 3.47 cm 3.55 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 320 um -14.3 cm 6.75 mm 2.99 keV 0 eV 0 fm 0 fm World initStep - 1 317 um -14.3 cm 6.76 mm 1.29 MeV 2.99 keV 293 um 293 um World eIoni - 2 314 um -14.9 cm 6.9 mm 60.1 MeV 975 eV 5.88 mm 6.18 mm World eIoni - 3 420 um -19.9 cm 7.23 mm 563 MeV 11.9 keV 5.03 cm 5.64 cm World eIoni - 4 420 um -20 cm 7.23 mm 569 MeV 106 eV 616 um 5.71 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 6 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 420 um -19.9 cm 7.23 mm 2.89 keV 0 eV 0 fm 0 fm World initStep - 1 419 um -19.9 cm 7.22 mm 1.21 MeV 2.89 keV 275 um 275 um World eIoni - 2 419 um -20 cm 7.21 mm 6.25 MeV 0 eV 504 um 779 um OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -107 um -4.42 cm 4.49 mm 4.79 keV 0 eV 0 fm 0 fm World initStep - 1 -97.6 um -4.43 cm 4.49 mm 857 keV 344 eV 93.7 um 93.7 um World eIoni - 2 -6.29 mm -11 cm 2.66 mm 654 MeV 7.4 keV 6.59 cm 6.6 cm World eIoni - 3 -1.83 cm -19.9 cm 1.78 mm 1.55 GeV 17.7 keV 9.04 cm 15.6 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 5 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -6.29 mm -11 cm 2.66 mm 1.1 keV 0 eV 0 fm 0 fm World initStep - 1 -6.29 mm -11 cm 2.66 mm 234 keV 1.1 keV 61.1 um 61.1 um World eIoni - 2 -6.29 mm -20 cm 2.68 mm 903 MeV 25.8 keV 10 cm 10 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 2.04 um -988 um 3.11 mm 59.9 MeV 486 eV 3.31 mm 3.31 mm World eIoni - 2 -183 um -6.9 cm 1.7 cm 740 MeV 15.1 keV 7.06 cm 7.39 cm World eIoni - 3 -283 um -10.1 cm 1.88 cm 1.06 GeV 4.71 keV 3.16 cm 10.5 cm World eIoni - 4 -296 um -10.6 cm 1.91 cm 1.11 GeV 1.1 keV 5.13 mm 11.1 cm World eIoni - 5 -475 um -20 cm 2.21 cm 2.05 GeV 21.4 keV 9.44 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -296 um -10.6 cm 1.91 cm 1.1 keV 0 eV 0 fm 0 fm World initStep - 1 -293 um -10.6 cm 1.91 cm 232 keV 1.1 keV 60.6 um 60.6 um World eIoni - 2 -269 um -20 cm 1.91 cm 944 MeV 22.2 keV 10.5 cm 10.6 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -283 um -10.1 cm 1.88 cm 1.51 keV 0 eV 0 fm 0 fm World initStep - 1 -278 um -10.1 cm 1.88 cm 396 keV 1.51 keV 97.5 um 97.5 um World eIoni - 2 -250 um -20 cm 1.88 cm 995 MeV 20.9 keV 10.4 cm 10.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -183 um -6.9 cm 1.7 cm 1.59 keV 0 eV 0 fm 0 fm World initStep - 1 -183 um -6.91 cm 1.7 cm 430 keV 1.59 keV 105 um 105 um World eIoni - 2 -183 um -20 cm 1.7 cm 1.31 GeV 22.2 keV 13.8 cm 13.8 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 2.04 um -988 um 3.11 mm 1.49 keV 0 eV 0 fm 0 fm World initStep - 1 6.58 um -1.02 mm 3.11 mm 387 keV 1.49 keV 95.5 um 95.5 um World eIoni - 2 36.5 um -20 cm 3.11 mm 1.99 GeV 34.5 keV 22 cm 22 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 3.92 um -1.2 cm 9.49 mm 169 MeV 1.83 keV 1.62 cm 1.62 cm World eIoni - 2 -15.5 um -6.32 cm 1.66 cm 682 MeV 9.29 keV 5.18 cm 6.81 cm World eIoni - 3 -103 um -20 cm 2.21 cm 2.05 GeV 36.3 keV 13.7 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -15.5 um -6.32 cm 1.66 cm 3.86 keV 0 eV 0 fm 0 fm World initStep - 1 -2.21 um -6.34 cm 1.66 cm 2.01 MeV 3.86 keV 453 um 453 um World eIoni - 2 27.5 um -6.63 cm 1.66 cm 30.9 MeV 318 eV 2.89 mm 3.34 mm World eIoni - 3 5.92 um -12.6 cm 1.61 cm 627 MeV 8.87 keV 5.96 cm 6.29 cm World eIoni - 4 -37.1 um -13.6 cm 1.61 cm 725 MeV 3.79 keV 9.83 mm 7.28 cm World eIoni - 5 -76.8 um -14.6 cm 1.61 cm 828 MeV 2.47 keV 1.03 cm 8.3 cm World eIoni - 6 -229 um -20 cm 1.6 cm 1.37 GeV 13.5 keV 5.4 cm 13.7 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -76.8 um -14.6 cm 1.61 cm 2.11 keV 0 eV 0 fm 0 fm World initStep - 1 -75.8 um -14.6 cm 1.61 cm 697 keV 2.11 keV 164 um 164 um World eIoni - 2 -24.9 um -15.5 cm 1.64 cm 87.2 MeV 1.6 keV 8.67 mm 8.83 mm World eIoni - 3 -38.4 um -20 cm 1.66 cm 540 MeV 11.5 keV 4.53 cm 5.41 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -37.1 um -13.6 cm 1.61 cm 2.93 keV 0 eV 0 fm 0 fm World initStep - 1 -31.6 um -13.6 cm 1.61 cm 1.24 MeV 2.93 keV 282 um 282 um World eIoni - 2 -483 um -15 cm 1.61 cm 143 MeV 1.38 keV 1.42 cm 1.45 cm World eIoni - 3 -1.25 mm -20 cm 1.47 cm 643 MeV 9.48 keV 5 cm 6.45 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 5.92 um -12.6 cm 1.61 cm 1.51 keV 0 eV 0 fm 0 fm World initStep - 1 1.92 um -12.6 cm 1.61 cm 397 keV 1.51 keV 97.9 um 97.9 um World eIoni - 2 -20.8 um -20 cm 1.62 cm 741 MeV 15.6 keV 7.66 cm 7.67 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 3.92 um -1.2 cm 9.49 mm 2.03 keV 0 eV 0 fm 0 fm World initStep - 1 10.6 um -1.2 cm 9.49 mm 654 keV 2.03 keV 154 um 154 um World eIoni - 2 -151 um -1.89 cm 9.69 mm 69.7 MeV 201 eV 6.92 mm 7.07 mm World eIoni - 3 -178 um -2.72 cm 9.72 mm 153 MeV 2.99 keV 8.3 mm 1.54 cm World eIoni - 4 -357 um -10.9 cm 9.83 mm 972 MeV 19.7 keV 8.19 cm 9.73 cm World eIoni - 5 -468 um -20 cm 9.88 mm 1.88 GeV 13.9 keV 9.09 cm 18.8 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -357 um -10.9 cm 9.83 mm 6.97 keV 0 eV 0 fm 0 fm World initStep - 1 -343 um -11 cm 9.8 mm 5.75 MeV 4.55 keV 1.24 mm 1.24 mm World eIoni - 2 -2.17 mm -11.8 cm 8.66 mm 84.8 MeV 2.57 keV 8.75 mm 9.99 mm World eIoni - 3 -3.2 mm -20 cm 8.08 mm 909 MeV 14.7 keV 8.24 cm 9.24 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -178 um -2.72 cm 9.72 mm 2.06 keV 0 eV 0 fm 0 fm World initStep - 1 -174 um -2.73 cm 9.72 mm 672 keV 2.06 keV 158 um 158 um World eIoni - 2 442 um -5.05 cm 8.22 mm 233 MeV 3.96 keV 2.33 cm 2.35 cm World eIoni - 3 879 um -5.76 cm 7.58 mm 304 MeV 854 eV 7.16 mm 3.06 cm World eIoni - 4 2.25 mm -9.73 cm 5.59 mm 701 MeV 11.2 keV 3.98 cm 7.04 cm World eIoni - 5 3.67 mm -19.2 cm 3.54 mm 1.65 GeV 23.5 keV 9.46 cm 16.5 cm World eIoni - 6 3.75 mm -20 cm 3.43 mm 1.73 GeV 1.57 keV 8.07 mm 17.3 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 8 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 3.67 mm -19.2 cm 3.54 mm 21.4 keV 0 eV 0 fm 0 fm World initStep - 1 3.2 mm -19.5 cm 1.99 mm 28.1 MeV 6.59 keV 3.52 mm 3.52 mm World eIoni - 2 2.48 mm -19.7 cm 611 um 51.8 MeV 476 eV 2.85 mm 6.38 mm World msc - 3 2.19 mm -19.9 cm 48.1 um 68.8 MeV 174 eV 1.82 mm 8.19 mm World msc - 4 2.06 mm -20 cm -206 um 78.5 MeV 91.6 eV 1 mm 9.2 mm World msc - 5 2.01 mm -20 cm -297 um 82.3 MeV 127 eV 396 um 9.6 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 8 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 2.25 mm -9.73 cm 5.59 mm 1.73 keV 0 eV 0 fm 0 fm World initStep - 1 2.25 mm -9.73 cm 5.59 mm 500 keV 1.73 keV 121 um 121 um World eIoni - 2 2.25 mm -20 cm 5.56 mm 1.03 GeV 16.5 keV 10.6 cm 10.6 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 8 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 879 um -5.76 cm 7.58 mm 2.06 keV 0 eV 0 fm 0 fm World initStep - 1 878 um -5.77 cm 7.59 mm 669 keV 2.06 keV 158 um 158 um World eIoni - 2 7.24 mm -12.4 cm 3.22 mm 660 MeV 11 keV 6.68 cm 6.7 cm World eIoni - 3 9.05 mm -20 cm 691 um 1.42 GeV 14 keV 7.62 cm 14.3 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -151 um -1.89 cm 9.69 mm 1.67 keV 0 eV 0 fm 0 fm World initStep - 1 -154 um -1.9 cm 9.69 mm 468 keV 1.67 keV 114 um 114 um World eIoni - 2 -170 um -20 cm 9.72 mm 1.81 GeV 28.9 keV 19.3 cm 19.3 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 183 um -5.86 cm 1.63 cm 636 MeV 13.1 keV 6.35 cm 6.35 cm World eIoni - 2 298 um -11.8 cm 1.97 cm 1.23 GeV 14 keV 5.93 cm 12.3 cm World eIoni - 3 338 um -14.9 cm 2.09 cm 1.54 GeV 5.81 keV 3.16 cm 15.4 cm World eIoni - 4 359 um -17 cm 2.16 cm 1.75 GeV 6.38 keV 2.03 cm 17.5 cm World eIoni - 5 384 um -20 cm 2.24 cm 2.05 GeV 7.05 keV 3.03 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 359 um -17 cm 2.16 cm 6.8 keV 0 eV 0 fm 0 fm World initStep - 1 371 um -17 cm 2.16 cm 5.51 MeV 6.8 keV 1.2 mm 1.2 mm World eIoni - 2 1.24 mm -17.3 cm 2.15 cm 35.2 MeV 570 eV 4.12 mm 5.32 mm World eIoni - 3 1.56 mm -20 cm 2.15 cm 303 MeV 3.73 keV 2.68 cm 3.21 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 5 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 1.24 mm -17.3 cm 2.15 cm 1.14 keV 0 eV 0 fm 0 fm World initStep - 1 1.24 mm -17.3 cm 2.15 cm 248 keV 1.14 keV 64.4 um 64.4 um World eIoni - 2 1.23 mm -20 cm 2.15 cm 268 MeV 6.42 keV 2.74 cm 2.75 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 338 um -14.9 cm 2.09 cm 2.95 keV 0 eV 0 fm 0 fm World initStep - 1 338 um -15 cm 2.09 cm 1.24 MeV 2.95 keV 239 um 239 um World eIoni - 2 1.15 mm -20 cm 2.13 cm 506 MeV 7.79 keV 5.09 cm 5.11 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 298 um -11.8 cm 1.97 cm 2.75 keV 0 eV 0 fm 0 fm World initStep - 1 290 um -11.8 cm 1.97 cm 1.11 MeV 2.75 keV 253 um 253 um World eIoni - 2 416 um -12.6 cm 1.96 cm 82.8 MeV 643 eV 8.18 mm 8.43 mm World eIoni - 3 295 um -20 cm 1.92 cm 821 MeV 11.4 keV 7.38 cm 8.23 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 183 um -5.86 cm 1.63 cm 20.3 keV 0 eV 0 fm 0 fm World initStep - 1 155 um -6.11 cm 1.62 cm 26.3 MeV 4.77 keV 3.33 mm 3.33 mm World eIoni - 2 2.94 mm -7.44 cm 1.33 cm 159 MeV 1.44 keV 1.41 cm 1.74 cm World eIoni - 3 4.64 mm -11.1 cm 1.15 cm 528 MeV 7.96 keV 3.7 cm 5.44 cm World eIoni - 4 5.06 mm -13 cm 1.11 cm 715 MeV 2.63 keV 1.86 cm 7.31 cm World eIoni - 5 5.43 mm -15.2 cm 1.06 cm 937 MeV 2.43 keV 2.22 cm 9.53 cm World eIoni - 6 5.61 mm -16.5 cm 1.04 cm 1.06 GeV 1.97 keV 1.28 cm 10.8 cm World eIoni - 7 5.64 mm -16.8 cm 1.04 cm 1.09 GeV 227 eV 2.87 mm 11.1 cm World eIoni - 8 6 mm -20 cm 9.99 mm 1.41 GeV 5.46 keV 3.21 cm 14.3 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 5.64 mm -16.8 cm 1.04 cm 5.45 keV 0 eV 0 fm 0 fm World initStep - 1 5.63 mm -16.8 cm 1.04 cm 2.15 MeV 729 eV 259 um 259 um World eIoni - 2 5.1 mm -20 cm 1.07 cm 321 MeV 3.72 keV 3.19 cm 3.22 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 5.61 mm -16.5 cm 1.04 cm 2.86 keV 0 eV 0 fm 0 fm World initStep - 1 5.61 mm -16.5 cm 1.04 cm 1.19 MeV 2.86 keV 272 um 272 um World eIoni - 2 5.69 mm -16.9 cm 1.04 cm 36.6 MeV 707 eV 3.54 mm 3.81 mm WorldTransportation - 3 5.69 mm -16.9 cm 1.04 cm 36.6 MeV5.99e-11 eV 0.315 fm 3.81 mm World eIoni - 4 5.72 mm -18.1 cm 1.04 cm 164 MeV 1.42 keV 1.27 cm 1.66 cm World eIoni - 5 5.73 mm -19.1 cm 1.04 cm 263 MeV 1.37 keV 9.86 mm 2.64 cm World eIoni - 6 5.74 mm -20 cm 1.04 cm 349 MeV 824 eV 8.68 mm 3.51 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 10 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 5.73 mm -19.1 cm 1.04 cm 2.89 keV 0 eV 0 fm 0 fm World initStep - 1 5.73 mm -19.1 cm 1.04 cm 1.21 MeV 2.89 keV 276 um 276 um World eIoni - 2 5.73 mm -19.2 cm 1.04 cm 4.96 MeV 0 eV 374 um 650 um World eIoni - 3 5.73 mm -20 cm 1.04 cm 86.9 MeV 1.83 keV 8.2 mm 8.85 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 10 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 5.72 mm -18.1 cm 1.04 cm 1.45 keV 0 eV 0 fm 0 fm World initStep - 1 5.72 mm -18.1 cm 1.04 cm 368 keV 1.45 keV 91.4 um 91.4 um World eIoni - 2 5.73 mm -20 cm 1.04 cm 185 MeV 1.77 keV 1.87 cm 1.88 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 5.43 mm -15.2 cm 1.06 cm 2.27 keV 0 eV 0 fm 0 fm World initStep - 1 5.43 mm -15.2 cm 1.06 cm 793 keV 2.27 keV 185 um 185 um World eIoni - 2 5.44 mm -15.3 cm 1.06 cm 8.86 MeV 156 eV 807 um 991 um World eBrem - 3 5.45 mm -15.5 cm 1.06 cm 27.7 MeV 40.3 eV 1.89 mm 2.88 mm World eIoni - 4 5.46 mm -20 cm 1.07 cm 477 MeV 5.96 keV 4.5 cm 4.78 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 5.06 mm -13 cm 1.11 cm 1.3 keV 0 eV 0 fm 0 fm World initStep - 1 5.05 mm -13 cm 1.11 cm 309 keV 1.3 keV 78.2 um 78.2 um World eIoni - 2 5.03 mm -20 cm 1.11 cm 700 MeV 11.8 keV 7.33 cm 7.34 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 4.64 mm -11.1 cm 1.15 cm 1.67 keV 0 eV 0 fm 0 fm World initStep - 1 4.64 mm -11.1 cm 1.15 cm 470 keV 1.67 keV 114 um 114 um World eIoni - 2 4.67 mm -20 cm 1.15 cm 886 MeV 15.1 keV 9.13 cm 9.14 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -743 um -18.3 cm 2.23 cm 1.88 GeV 34.7 keV 18.8 cm 18.8 cm World eIoni - 2 -806 um -20 cm 2.28 cm 2.05 GeV 5.16 keV 1.73 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -743 um -18.3 cm 2.23 cm 1.84 keV 0 eV 0 fm 0 fm World initStep - 1 -746 um -18.3 cm 2.23 cm 551 keV 1.84 keV 132 um 132 um World eIoni - 2 -753 um -20 cm 2.24 cm 173 MeV 2.8 keV 1.73 cm 1.74 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 113 um -4.54 cm 1.52 cm 504 MeV 10.7 keV 5.02 cm 5.02 cm World eIoni - 2 224 um -13.9 cm 2.05 cm 1.44 GeV 20.4 keV 9.41 cm 14.4 cm World eIoni - 3 268 um -20 cm 2.22 cm 2.05 GeV 11.9 keV 6.07 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 224 um -13.9 cm 2.05 cm 5.12 keV 0 eV 0 fm 0 fm World initStep - 1 245 um -14 cm 2.05 cm 3.32 MeV 5.12 keV 745 um 745 um World eIoni - 2 250 um -14 cm 2.05 cm 7.19 MeV 25 eV 386 um 1.13 mm World eIoni - 3 -102 um -18.1 cm 2.01 cm 420 MeV 5.71 keV 4.12 cm 4.24 cm World eIoni - 4 -141 um -19.1 cm 1.99 cm 521 MeV 1.44 keV 1.02 cm 5.26 cm World eIoni - 5 -146 um -19.3 cm 1.99 cm 536 MeV 292 eV 1.43 mm 5.4 cm World eIoni - 6 -168 um -20 cm 1.98 cm 607 MeV 1.93 keV 7.15 mm 6.11 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -146 um -19.3 cm 1.99 cm 1.75 keV 0 eV 0 fm 0 fm World initStep - 1 -148 um -19.3 cm 1.99 cm 509 keV 1.75 keV 123 um 123 um World eIoni - 2 -154 um -20 cm 1.99 cm 71.5 MeV 961 eV 7.11 mm 7.24 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -141 um -19.1 cm 1.99 cm 1.58 keV 0 eV 0 fm 0 fm World initStep - 1 -145 um -19.1 cm 1.99 cm 428 keV 1.58 keV 105 um 105 um World eIoni - 2 -159 um -20 cm 1.99 cm 85.8 MeV 2.38 keV 8.57 mm 8.67 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -102 um -18.1 cm 2.01 cm 1.75 keV 0 eV 0 fm 0 fm World initStep - 1 -104 um -18.1 cm 2.01 cm 508 keV 1.75 keV 122 um 122 um World eIoni - 2 -109 um -20 cm 2.01 cm 188 MeV 3.39 keV 1.88 cm 1.89 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 113 um -4.54 cm 1.52 cm 3.67 keV 0 eV 0 fm 0 fm World initStep - 1 109 um -4.56 cm 1.52 cm 1.84 MeV 3.67 keV 415 um 415 um World eIoni - 2 8.42 um -5.26 cm 1.51 cm 71.7 MeV 882 eV 6.99 mm 7.41 mm World eIoni - 3 -122 um -9.54 cm 1.52 cm 500 MeV 12.9 keV 4.28 cm 5.02 cm World eIoni - 4 -92 um -14.3 cm 1.52 cm 972 MeV 10.4 keV 4.72 cm 9.74 cm World eIoni - 5 -73.6 um -19.5 cm 1.52 cm 1.5 GeV 9.5 keV 5.28 cm 15 cm World eIoni - 6 -73 um -20 cm 1.52 cm 1.55 GeV 873 eV 4.63 mm 15.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -73.6 um -19.5 cm 1.52 cm 1.05 keV 0 eV 0 fm 0 fm World initStep - 1 -73.3 um -19.5 cm 1.52 cm 216 keV 1.05 keV 57 um 57 um World eIoni - 2 -71.9 um -20 cm 1.52 cm 46.3 MeV 1.35 keV 4.64 mm 4.69 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -92 um -14.3 cm 1.52 cm 1.68 keV 0 eV 0 fm 0 fm World initStep - 1 -87.3 um -14.3 cm 1.52 cm 475 keV 1.68 keV 115 um 115 um World eIoni - 2 -63.4 um -20 cm 1.52 cm 574 MeV 8.54 keV 5.85 cm 5.86 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -122 um -9.54 cm 1.52 cm 2.7 keV 0 eV 0 fm 0 fm World initStep - 1 -125 um -9.55 cm 1.52 cm 1.08 MeV 2.7 keV 247 um 247 um World eIoni - 2 -184 um -9.88 cm 1.52 cm 34.6 MeV 229 eV 3.36 mm 3.6 mm World eIoni - 3 -411 um -11.7 cm 1.52 cm 219 MeV 3.4 keV 1.85 cm 2.21 cm World eIoni - 4 -506 um -13.3 cm 1.53 cm 373 MeV 2.46 keV 1.54 cm 3.75 cm World eIoni - 5 -523 um -13.6 cm 1.53 cm 410 MeV 706 eV 3.71 mm 4.12 cm World eIoni - 6 -763 um -20 cm 1.53 cm 1.05 GeV 13.7 keV 6.36 cm 10.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -523 um -13.6 cm 1.53 cm 544 keV 0 eV 0 fm 0 fm World initStep - 1 -2.17 mm -17 cm 1.29 cm 336 MeV 5.17 keV 3.39 cm 3.39 cm World eIoni - 2 -4.79 mm -18.9 cm 1.13 cm 530 MeV 4.63 keV 1.96 cm 5.35 cm World eIoni - 3 -5.83 mm -20 cm 1.06 cm 636 MeV 3.71 keV 1.07 cm 6.42 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 12 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -4.79 mm -18.9 cm 1.13 cm 1.7 keV 0 eV 0 fm 0 fm World initStep - 1 -4.78 mm -18.9 cm 1.13 cm 484 keV 1.7 keV 117 um 117 um World eIoni - 2 -4.76 mm -20 cm 1.13 cm 107 MeV 1.93 keV 1.07 cm 1.08 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 12 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -2.17 mm -17 cm 1.29 cm 1.36 keV 0 eV 0 fm 0 fm World initStep - 1 -2.18 mm -17 cm 1.29 cm 333 keV 1.36 keV 83.3 um 83.3 um World eIoni - 2 -2.2 mm -20 cm 1.29 cm 301 MeV 3.99 keV 3.06 cm 3.06 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -506 um -13.3 cm 1.53 cm 2 keV 0 eV 0 fm 0 fm World initStep - 1 -507 um -13.3 cm 1.53 cm 637 keV 2 keV 151 um 151 um World eIoni - 2 151 um -14.7 cm 1.48 cm 145 MeV 2.71 keV 1.45 cm 1.46 cm World eIoni - 3 95.6 um -20 cm 1.35 cm 673 MeV 10.6 keV 5.29 cm 6.75 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 11 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 151 um -14.7 cm 1.48 cm 3.47 keV 0 eV 0 fm 0 fm World initStep - 1 157 um -14.7 cm 1.48 cm 1.67 MeV 3.47 keV 377 um 377 um World eIoni - 2 140 um -15 cm 1.47 cm 23.7 MeV 291 eV 2.21 mm 2.59 mm World eIoni - 3 110 um -16.1 cm 1.48 cm 134 MeV 2.93 keV 1.1 cm 1.36 cm World eIoni - 4 113 um -20 cm 1.49 cm 529 MeV 7.12 keV 3.95 cm 5.31 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 15 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 110 um -16.1 cm 1.48 cm 1.04 keV 0 eV 0 fm 0 fm World initStep - 1 108 um -16.1 cm 1.48 cm 213 keV 1.04 keV 56.3 um 56.3 um World eIoni - 2 93.2 um -20 cm 1.48 cm 395 MeV 10.6 keV 4.15 cm 4.15 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -411 um -11.7 cm 1.52 cm 1.18 keV 0 eV 0 fm 0 fm World initStep - 1 -410 um -11.7 cm 1.52 cm 260 keV 1.18 keV 67.1 um 67.1 um World eIoni - 2 -404 um -20 cm 1.52 cm 827 MeV 20.5 keV 8.93 cm 8.94 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -2.76 um -3.9 mm 5.92 mm 88.9 MeV 1.33 keV 7.38 mm 7.38 mm World eIoni - 2 35.5 um -3.76 cm 1.43 cm 426 MeV 10 keV 3.49 cm 4.23 cm World eIoni - 3 47.1 um -5.77 cm 1.62 cm 627 MeV 2.3 keV 2.02 cm 6.25 cm World eIoni - 4 87.1 um -20 cm 2.22 cm 2.05 GeV 34.6 keV 14.2 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 47.1 um -5.77 cm 1.62 cm 1.85 keV 0 eV 0 fm 0 fm World initStep - 1 48.2 um -5.77 cm 1.62 cm 559 keV 1.85 keV 134 um 134 um World eIoni - 2 54.4 um -20 cm 1.62 cm 1.42 GeV 20.7 keV 14.8 cm 14.8 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 35.5 um -3.76 cm 1.43 cm 1.79 keV 0 eV 0 fm 0 fm World initStep - 1 41.2 um -3.76 cm 1.43 cm 525 keV 1.79 keV 126 um 126 um World eIoni - 2 72.9 um -20 cm 1.42 cm 1.62 GeV 30.1 keV 17 cm 17.1 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -2.76 um -3.9 mm 5.92 mm 1.4 keV 0 eV 0 fm 0 fm World initStep - 1 -6.86 um -3.93 mm 5.92 mm 350 keV 1.4 keV 87.2 um 87.2 um World eIoni - 2 -35.3 um -20 cm 5.93 mm 1.96 GeV 39 keV 22.1 cm 22.1 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -42.3 um -8.58 cm 1.78 cm 907 MeV 17 keV 9.07 cm 9.07 cm World eIoni - 2 -431 um -20 cm 2.18 cm 2.05 GeV 26.1 keV 11.4 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -42.3 um -8.58 cm 1.78 cm 1.69 keV 0 eV 0 fm 0 fm World initStep - 1 -40.5 um -8.58 cm 1.78 cm 480 keV 1.69 keV 116 um 116 um World eIoni - 2 -30.5 um -20 cm 1.78 cm 1.14 GeV 22.8 keV 11.9 cm 11.9 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 54.4 um -3.69 cm 1.41 cm 419 MeV 6.96 keV 4.17 cm 4.17 cm World eIoni - 2 55.5 um -4.81 cm 1.53 cm 530 MeV 1.98 keV 1.12 cm 5.29 cm World eIoni - 3 90.2 um -13.4 cm 2.01 cm 1.39 GeV 20.3 keV 8.57 cm 13.9 cm World eIoni - 4 96.5 um -14.5 cm 2.05 cm 1.5 GeV 3.25 keV 1.12 cm 15 cm World eIoni - 5 100 um -15.1 cm 2.07 cm 1.56 GeV 785 eV 6.59 mm 15.6 cm World eIoni - 6 124 um -20 cm 2.21 cm 2.05 GeV 9.23 keV 4.87 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 100 um -15.1 cm 2.07 cm 1.23 keV 0 eV 0 fm 0 fm World initStep - 1 104 um -15.1 cm 2.07 cm 282 keV 1.23 keV 72 um 72 um World eIoni - 2 127 um -20 cm 2.07 cm 487 MeV 10.5 keV 5.05 cm 5.06 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 96.5 um -14.5 cm 2.05 cm 1.79 keV 0 eV 0 fm 0 fm World initStep - 1 91.2 um -14.5 cm 2.05 cm 526 keV 1.79 keV 126 um 126 um World eIoni - 2 65.7 um -20 cm 2.05 cm 553 MeV 7.22 keV 5.61 cm 5.62 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 90.2 um -13.4 cm 2.01 cm 1.39 keV 0 eV 0 fm 0 fm World initStep - 1 86.3 um -13.4 cm 2.01 cm 345 keV 1.39 keV 86.3 um 86.3 um World eIoni - 2 63.1 um -20 cm 2.01 cm 664 MeV 13.5 keV 6.89 cm 6.9 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 55.5 um -4.81 cm 1.53 cm 1.05 keV 0 eV 0 fm 0 fm World initStep - 1 58.1 um -4.81 cm 1.53 cm 217 keV 1.05 keV 57.1 um 57.1 um World eIoni - 2 3.69 cm -15.3 cm 4.04 cm 1.05 GeV 32.9 keV 12.2 cm 12.2 cm World eIoni - 3 4.39 cm -19.5 cm 4.12 cm 1.47 GeV 8.45 keV 4.24 cm 16.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 54.4 um -3.69 cm 1.41 cm 3.83 keV 0 eV 0 fm 0 fm World initStep - 1 54.2 um -3.71 cm 1.41 cm 1.99 MeV 3.83 keV 448 um 448 um World eIoni - 2 72.1 um -4.16 cm 1.42 cm 46.7 MeV 569 eV 4.47 mm 4.92 mm World eIoni - 3 123 um -5.64 cm 1.43 cm 195 MeV 3.12 keV 1.48 cm 1.97 cm World eIoni - 4 134 um -15.5 cm 1.46 cm 1.18 GeV 18.8 keV 9.82 cm 11.8 cm World eIoni - 5 90.3 um -20 cm 1.46 cm 1.63 GeV 10.4 keV 4.55 cm 16.3 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 134 um -15.5 cm 1.46 cm 2.33 keV 0 eV 0 fm 0 fm World initStep - 1 127 um -15.5 cm 1.46 cm 829 keV 2.33 keV 192 um 192 um World eIoni - 2 -300 um -16.6 cm 1.48 cm 111 MeV 1.05 keV 1.11 cm 1.13 cm World eIoni - 3 -503 um -20 cm 1.5 cm 455 MeV 4.9 keV 3.43 cm 4.56 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 123 um -5.64 cm 1.43 cm 2.15 keV 0 eV 0 fm 0 fm World initStep - 1 117 um -5.64 cm 1.43 cm 725 keV 2.15 keV 170 um 170 um World eIoni - 2 -69.6 um -8.07 cm 1.27 cm 243 MeV 3.84 keV 2.44 cm 2.45 cm World eIoni - 3 954 um -10.7 cm 1.18 cm 503 MeV 6.07 keV 2.6 cm 5.06 cm World eIoni - 4 2.43 mm -20 cm 1.05 cm 1.44 GeV 19.1 keV 9.33 cm 14.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 954 um -10.7 cm 1.18 cm 1.44 keV 0 eV 0 fm 0 fm World initStep - 1 951 um -10.7 cm 1.18 cm 367 keV 1.44 keV 91.1 um 91.1 um World eIoni - 2 928 um -20 cm 1.18 cm 933 MeV 19.4 keV 9.79 cm 9.8 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -41.9 um -1.91 cm 1.13 cm 241 MeV 5.69 keV 2.36 cm 2.36 cm World eIoni - 2 -103 um -20 cm 2.22 cm 2.05 GeV 35.6 keV 18.1 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -41.9 um -1.91 cm 1.13 cm 6.19 keV 0 eV 0 fm 0 fm World initStep - 1 -58.7 um -1.95 cm 1.13 cm 4.67 MeV 4.73 keV 1.04 mm 1.04 mm World eIoni - 2 -1.13 mm -2.1 cm 1.17 cm 19.2 MeV 400 eV 1.99 mm 3.03 mm World eIoni - 3 -2.32 mm -4.06 cm 1.22 cm 216 MeV 2.77 keV 1.97 cm 2.27 cm World eIoni - 4 -3.14 mm -17.4 cm 1.27 cm 1.55 GeV 22.6 keV 13.4 cm 15.7 cm World eIoni - 5 -3.18 mm -20 cm 1.28 cm 1.81 GeV 5.33 keV 2.56 cm 18.2 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -3.14 mm -17.4 cm 1.27 cm 2.22 keV 0 eV 0 fm 0 fm World initStep - 1 -3.14 mm -17.4 cm 1.27 cm 763 keV 2.22 keV 178 um 178 um World eIoni - 2 -3.15 mm -17.6 cm 1.28 cm 15.5 MeV 30.8 eV 1.48 mm 1.65 mm World eIoni - 3 -3.23 mm -20 cm 1.28 cm 256 MeV 3.82 keV 2.4 cm 2.57 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -3.15 mm -17.6 cm 1.28 cm 1.67 keV 0 eV 0 fm 0 fm World initStep - 1 -3.15 mm -17.6 cm 1.28 cm 468 keV 1.67 keV 114 um 114 um World eIoni - 2 -3.13 mm -20 cm 1.28 cm 240 MeV 4.24 keV 2.42 cm 2.43 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -2.32 mm -4.06 cm 1.22 cm 8.31 keV 0 eV 0 fm 0 fm World initStep - 1 -2.33 mm -4.08 cm 1.22 cm 2.14 MeV 261 eV 229 um 229 um World eIoni - 2 -784 um -20 cm 1.21 cm 1.59 GeV 23.5 keV 16 cm 16.1 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 73.9 um -19.6 cm 2.11 cm 2.01 GeV 36.3 keV 20.1 cm 20.1 cm World eIoni - 2 65.4 um -20 cm 2.11 cm 2.05 GeV 596 eV 3.58 mm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 73.9 um -19.6 cm 2.11 cm 1.68 keV 0 eV 0 fm 0 fm World initStep - 1 72.5 um -19.6 cm 2.11 cm 475 keV 1.68 keV 115 um 115 um World eIoni - 2 68.4 um -20 cm 2.11 cm 35.8 MeV 228 eV 3.54 mm 3.66 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 1.44 um -6.9 mm 7.62 mm 119 MeV 1.14 keV 1.08 cm 1.08 cm World eIoni - 2 62.4 um -20 cm 2.23 cm 2.05 GeV 40.6 keV 19.4 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 1.44 um -6.9 mm 7.62 mm 1.15 keV 0 eV 0 fm 0 fm World initStep - 1 -1.8 um -6.92 mm 7.62 mm 250 keV 1.15 keV 64.8 um 64.8 um World eIoni - 2 -3.03 cm -13.9 cm -3.94 cm 1.33 GeV 29.8 keV 15.3 cm 15.3 cm World eIoni - 3 -3.99 cm -19.6 cm -5.47 cm 1.89 GeV 13.5 keV 5.94 cm 21.3 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 0 fm -20 cm 2.22 cm 2.05 GeV 42.7 keV 20.5 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 610 um -14.8 cm 2.11 cm 1.53 GeV 28.2 keV 15.3 cm 15.3 cm World eIoni - 2 940 um -19.2 cm 2.24 cm 1.97 GeV 8.24 keV 4.34 cm 19.7 cm World eIoni - 3 996 um -20 cm 2.26 cm 2.05 GeV 1.05 keV 8.48 mm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 940 um -19.2 cm 2.24 cm 1.01 keV 0 eV 0 fm 0 fm World initStep - 1 942 um -19.2 cm 2.24 cm 202 keV 1.01 keV 53.7 um 53.7 um World eIoni - 2 956 um -20 cm 2.24 cm 84.8 MeV 1.29 keV 8.55 mm 8.6 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 610 um -14.8 cm 2.11 cm 4.29 keV 0 eV 0 fm 0 fm World initStep - 1 593 um -14.8 cm 2.11 cm 2.43 MeV 4.29 keV 545 um 545 um World eIoni - 2 574 um -15.2 cm 2.1 cm 34.6 MeV 282 eV 3.22 mm 3.77 mm World eIoni - 3 610 um -17.5 cm 2.1 cm 269 MeV 6.78 keV 2.34 cm 2.72 cm World eIoni - 4 631 um -20 cm 2.1 cm 519 MeV 4.39 keV 2.5 cm 5.22 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 610 um -17.5 cm 2.1 cm 13.8 keV 0 eV 0 fm 0 fm World initStep - 1 586 um -17.6 cm 2.09 cm 13.5 MeV 4.1 keV 1.73 mm 1.73 mm World eIoni - 2 -894 um -20 cm 2.02 cm 251 MeV 2.88 keV 2.39 cm 2.56 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 465 um -15.2 cm 2.03 cm 1.57 GeV 32.2 keV 15.7 cm 15.7 cm World eIoni - 2 525 um -16.9 cm 2.08 cm 1.74 GeV 2.32 keV 1.68 cm 17.4 cm World eIoni - 3 623 um -20 cm 2.15 cm 2.05 GeV 6.45 keV 3.12 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 525 um -16.9 cm 2.08 cm 2.74 keV 0 eV 0 fm 0 fm World initStep - 1 520 um -16.9 cm 2.08 cm 1.1 MeV 2.74 keV 252 um 252 um World eIoni - 2 559 um -17.2 cm 2.08 cm 31.8 MeV 296 eV 3.07 mm 3.32 mm WorldTransportation - 3 559 um -17.2 cm 2.08 cm 31.8 MeV 0 eV 0 fm 3.32 mm World eIoni - 4 667 um -18.2 cm 2.08 cm 127 MeV 1.94 keV 9.55 mm 1.29 cm World eIoni - 5 732 um -20 cm 2.08 cm 312 MeV 4.57 keV 1.85 cm 3.13 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 667 um -18.2 cm 2.08 cm 1.81 keV 0 eV 0 fm 0 fm World initStep - 1 670 um -18.2 cm 2.08 cm 540 keV 1.81 keV 129 um 129 um World eIoni - 2 682 um -20 cm 2.08 cm 185 MeV 2.8 keV 1.85 cm 1.86 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 465 um -15.2 cm 2.03 cm 4.65 keV 0 eV 0 fm 0 fm World initStep - 1 478 um -15.2 cm 2.03 cm 2.81 MeV 4.65 keV 629 um 629 um World eIoni - 2 464 um -15.5 cm 2.03 cm 33.2 MeV 1.5 keV 3.04 mm 3.67 mm World eIoni - 3 446 um -20 cm 2.04 cm 480 MeV 9.26 keV 4.46 cm 4.83 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 0 fm -20 cm 2.22 cm 2.05 GeV 36.6 keV 20.5 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -8.92 um -2.64 cm 1.26 cm 314 MeV 5.67 keV 3.1 cm 3.1 cm World eIoni - 2 -12.9 um -5.86 cm 1.62 cm 636 MeV 4.36 keV 3.24 cm 6.34 cm World eIoni - 3 -14 um -20 cm 2.22 cm 2.05 GeV 34.4 keV 14.2 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -12.9 um -5.86 cm 1.62 cm 1.47 keV 0 eV 0 fm 0 fm World initStep - 1 -8.44 um -5.86 cm 1.62 cm 376 keV 1.47 keV 93.2 um 93.2 um World eIoni - 2 20.8 um -20 cm 1.62 cm 1.41 GeV 27.4 keV 15.2 cm 15.2 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -8.92 um -2.64 cm 1.26 cm 1.66 keV 0 eV 0 fm 0 fm World initStep - 1 -5.62 um -2.64 cm 1.26 cm 465 keV 1.66 keV 113 um 113 um World eIoni - 2 14.5 um -20 cm 1.26 cm 1.74 GeV 29.6 keV 18.5 cm 18.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 0 fm -20 cm 2.22 cm 2.05 GeV 34.2 keV 20.5 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 0 fm -20 cm 2.22 cm 2.05 GeV 38.3 keV 20.5 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 340 um -9.08 cm 1.83 cm 958 MeV 20 keV 9.57 cm 9.57 cm World eIoni - 2 642 um -15.1 cm 2.08 cm 1.56 GeV 12.6 keV 6.05 cm 15.6 cm World eIoni - 3 699 um -16.6 cm 2.12 cm 1.71 GeV 2.76 keV 1.5 cm 17.1 cm World eIoni - 4 812 um -20 cm 2.21 cm 2.05 GeV 7.93 keV 3.37 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 699 um -16.6 cm 2.12 cm 4.51 keV 0 eV 0 fm 0 fm World initStep - 1 682 um -16.7 cm 2.12 cm 2.65 MeV 4.51 keV 594 um 594 um World eIoni - 2 665 um -16.8 cm 2.13 cm 20.7 MeV 219 eV 1.81 mm 2.4 mm World eIoni - 3 639 um -20 cm 2.13 cm 337 MeV 8.65 keV 3.16 cm 3.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 642 um -15.1 cm 2.08 cm 3.66 keV 0 eV 0 fm 0 fm World initStep - 1 632 um -15.1 cm 2.08 cm 1.83 MeV 3.66 keV 413 um 413 um World eIoni - 2 655 um -16 cm 2.09 cm 87.7 MeV 895 eV 8.59 mm 9 mm World eIoni - 3 805 um -20 cm 2.1 cm 487 MeV 7.18 keV 4 cm 4.9 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 340 um -9.08 cm 1.83 cm 1.67 keV 0 eV 0 fm 0 fm World initStep - 1 344 um -9.09 cm 1.83 cm 468 keV 1.67 keV 114 um 114 um World eIoni - 2 370 um -20 cm 1.83 cm 1.09 GeV 17.9 keV 11.3 cm 11.3 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 4.34 um -2.2 mm 4.56 mm 72 MeV 534 eV 5.21 mm 5.21 mm World eIoni - 2 97.7 um -20 cm 2.22 cm 2.05 GeV 35.1 keV 20 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 4.34 um -2.2 mm 4.56 mm 993 eV 0 eV 0 fm 0 fm World initStep - 1 1.76 um -2.22 mm 4.56 mm 197 keV 993 eV 52.7 um 52.7 um World eIoni - 2 -3.01 cm -9.29 cm -1.95 cm 907 MeV 28.2 keV 10.5 cm 10.5 cm World eIoni - 3 -3.79 cm -19.6 cm -2.04 cm 1.94 GeV 21.5 keV 10.4 cm 20.9 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 0 fm -20 cm 2.22 cm 2.05 GeV 41.3 keV 20.5 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 5.9 um -4.08 mm 6.06 mm 90.8 MeV 555 eV 7.61 mm 7.61 mm World eIoni - 2 -45.5 um -4.85 cm 1.54 cm 535 MeV 8.81 keV 4.57 cm 5.33 cm World eIoni - 3 -119 um -15.1 cm 2.08 cm 1.56 GeV 20.1 keV 10.2 cm 15.6 cm World eIoni - 4 -120 um -20 cm 2.22 cm 2.05 GeV 9.25 keV 4.94 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -119 um -15.1 cm 2.08 cm 1.83 keV 0 eV 0 fm 0 fm World initStep - 1 -117 um -15.1 cm 2.08 cm 548 keV 1.83 keV 131 um 131 um World eIoni - 2 -110 um -20 cm 2.08 cm 494 MeV 9.99 keV 5 cm 5.02 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -45.5 um -4.85 cm 1.54 cm 1.41 keV 0 eV 0 fm 0 fm World initStep - 1 -46.8 um -4.85 cm 1.54 cm 353 keV 1.41 keV 88 um 88 um World eIoni - 2 -55.2 um -20 cm 1.54 cm 1.51 GeV 32.9 keV 16.5 cm 16.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 5.9 um -4.08 mm 6.06 mm 1.04 keV 0 eV 0 fm 0 fm World initStep - 1 7.72 um -4.1 mm 6.05 mm 212 keV 1.04 keV 55.9 um 55.9 um World eIoni - 2 2.62 cm -10.6 cm -2.83 cm 1.02 GeV 32.7 keV 11.8 cm 11.8 cm World eIoni - 3 7.23 cm -18.6 cm -9.76 cm 1.82 GeV 23.6 keV 11.8 cm 23.6 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 89.8 um -3.57 cm 1.4 cm 407 MeV 7.45 keV 4.05 cm 4.05 cm World eIoni - 2 209 um -7.78 cm 1.76 cm 828 MeV 9.87 keV 4.23 cm 8.27 cm World eIoni - 3 355 um -20 cm 2.21 cm 2.05 GeV 24.9 keV 12.2 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 209 um -7.78 cm 1.76 cm 7.2 keV 0 eV 0 fm 0 fm World initStep - 1 218 um -7.84 cm 1.75 cm 6.11 MeV 5.73 keV 1.29 mm 1.29 mm World eIoni - 2 -2.03 mm -8.62 cm 1.77 cm 84.1 MeV 2.45 keV 8.57 mm 9.87 mm World eIoni - 3 -3.29 mm -13.4 cm 1.79 cm 562 MeV 9.41 keV 4.78 cm 5.77 cm World eIoni - 4 -3.87 mm -20 cm 1.79 cm 1.22 GeV 13.7 keV 6.6 cm 12.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -3.29 mm -13.4 cm 1.79 cm 1.1 keV 0 eV 0 fm 0 fm World initStep - 1 -3.29 mm -13.4 cm 1.79 cm 233 keV 1.1 keV 61 um 61 um World eIoni - 2 -3.28 mm -20 cm 1.79 cm 660 MeV 17.2 keV 7.1 cm 7.1 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 89.8 um -3.57 cm 1.4 cm 12.6 keV 0 eV 0 fm 0 fm World initStep - 1 56.5 um -3.69 cm 1.4 cm 12.1 MeV 2.99 keV 1.59 mm 1.59 mm World eIoni - 2 1.96 mm -9.55 cm 1.46 cm 598 MeV 8.14 keV 5.86 cm 6.02 cm World eIoni - 3 3.43 mm -20 cm 1.52 cm 1.64 GeV 23.1 keV 10.5 cm 16.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 1.96 mm -9.55 cm 1.46 cm 26.9 keV 0 eV 0 fm 0 fm World initStep - 1 1.96 mm -9.91 cm 1.47 cm 38.1 MeV 4.2 keV 4.6 mm 4.6 mm World eIoni - 2 2.53 mm -10.4 cm 1.5 cm 88.1 MeV 829 eV 5.05 mm 9.64 mm World eIoni - 3 3.98 mm -18.8 cm 1.6 cm 931 MeV 15.7 keV 8.43 cm 9.4 cm World eIoni - 4 4.01 mm -19.3 cm 1.6 cm 973 MeV 964 eV 4.2 mm 9.82 cm World eIoni - 5 4.07 mm -20 cm 1.6 cm 1.05 GeV 1.42 keV 7.38 mm 10.6 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 5 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 4.01 mm -19.3 cm 1.6 cm 37.6 keV 0 eV 0 fm 0 fm World initStep - 1 3.03 mm -19.8 cm 1.48 cm 61.3 MeV 8.88 keV 7.2 mm 7.2 mm World eIoni - 2 2.3 mm -20 cm 1.47 cm 76.4 MeV 483 eV 1.68 mm 8.88 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 5 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 3.98 mm -18.8 cm 1.6 cm 1.16 keV 0 eV 0 fm 0 fm World initStep - 1 3.98 mm -18.8 cm 1.6 cm 254 keV 1.16 keV 65.7 um 65.7 um World eIoni - 2 3.98 mm -20 cm 1.59 cm 116 MeV 4.31 keV 1.17 cm 1.17 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 3.69 um -1.89 mm 4.24 mm 68.9 MeV 882 eV 4.76 mm 4.76 mm World eIoni - 2 -475 um -19.9 cm 2.27 cm 2.04 GeV 40 keV 19.9 cm 20.4 cm World eIoni - 3 -478 um -20 cm 2.28 cm 2.05 GeV 0 eV 1.05 mm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -475 um -19.9 cm 2.27 cm 9.44 keV 0 eV 0 fm 0 fm World initStep - 1 -683 um -19.9 cm 2.29 cm 5.31 MeV 1.38 keV 628 um 628 um World msc - 2 -736 um -20 cm 2.31 cm 8.26 MeV 98.9 eV 335 um 963 um World msc - 3 -752 um -20 cm 2.31 cm 9.53 MeV 0 eV 135 um 1.1 mm World msc - 4 -764 um -20 cm 2.32 cm 10.6 MeV 102 eV 112 um 1.21 mm World msc - 5 -766 um -20 cm 2.32 cm 10.8 MeV 3.79 eV 22.5 um 1.23 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 3.69 um -1.89 mm 4.24 mm 1.71 keV 0 eV 0 fm 0 fm World initStep - 1 -1.61 um -1.94 mm 4.25 mm 490 keV 1.71 keV 118 um 118 um World eIoni - 2 -32.9 um -20 cm 4.25 mm 1.98 GeV 36.6 keV 21.2 cm 21.2 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 449 um -11 cm 1.92 cm 1.15 GeV 21 keV 11.5 cm 11.5 cm World eIoni - 2 977 um -15.8 cm 2.08 cm 1.63 GeV 12.5 keV 4.79 cm 16.3 cm World eIoni - 3 1.32 mm -20 cm 2.19 cm 2.05 GeV 9.09 keV 4.18 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 977 um -15.8 cm 2.08 cm 3.73 keV 0 eV 0 fm 0 fm World initStep - 1 991 um -15.8 cm 2.08 cm 1.89 MeV 3.73 keV 427 um 427 um World eIoni - 2 1.01 mm -15.9 cm 2.08 cm 12.2 MeV 0 eV 1.03 mm 1.46 mm World eIoni - 3 985 um -18.7 cm 2.1 cm 291 MeV 4.4 keV 2.79 cm 2.93 cm World eIoni - 4 954 um -20 cm 2.11 cm 418 MeV 2.57 keV 1.27 cm 4.2 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 985 um -18.7 cm 2.1 cm 4.12 keV 0 eV 0 fm 0 fm World initStep - 1 970 um -18.8 cm 2.1 cm 2.26 MeV 3.12 keV 500 um 500 um World eIoni - 2 -11.2 um -20 cm 2.07 cm 127 MeV 2.31 keV 1.29 cm 1.34 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 449 um -11 cm 1.92 cm 1.12 keV 0 eV 0 fm 0 fm World initStep - 1 449 um -11 cm 1.92 cm 240 keV 1.12 keV 62.5 um 62.5 um World eIoni - 2 450 um -20 cm 1.92 cm 896 MeV 26.7 keV 9.88 cm 9.89 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -368 um -14.6 cm 2.12 cm 1.51 GeV 27.5 keV 15.1 cm 15.1 cm World eIoni - 2 -373 um -15.3 cm 2.15 cm 1.58 GeV 638 eV 6.65 mm 15.8 cm World eIoni - 3 -395 um -20 cm 2.32 cm 2.05 GeV 7.67 keV 4.7 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -373 um -15.3 cm 2.15 cm 48.2 keV 0 eV 0 fm 0 fm World initStep - 1 -1.5 mm -15.8 cm 2.29 cm 52.8 MeV 3.83 keV 5.65 mm 5.65 mm World eIoni - 2 -3.32 mm -17.8 cm 2.35 cm 252 MeV 4.59 keV 2 cm 2.56 cm World msc - 3 -3.82 mm -19.2 cm 2.37 cm 387 MeV 2.96 keV 1.36 cm 3.92 cm World eIoni - 4 -4.04 mm -20 cm 2.37 cm 472 MeV 1.83 keV 8.46 mm 4.77 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -3.82 mm -19.2 cm 2.37 cm 3.17 keV 0 eV 0 fm 0 fm World initStep - 1 -3.82 mm -19.2 cm 2.36 cm 1.42 MeV 3.17 keV 322 um 322 um World eIoni - 2 -3.82 mm -19.2 cm 2.36 cm 4.47 MeV 0 eV 305 um 627 um World eIoni - 3 -3.84 mm -20 cm 2.36 cm 84.7 MeV 1.27 keV 8.02 mm 8.65 mm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -368 um -14.6 cm 2.12 cm 1.21 keV 0 eV 0 fm 0 fm World initStep - 1 -365 um -14.6 cm 2.12 cm 272 keV 1.21 keV 69.8 um 69.8 um World eIoni - 2 -342 um -20 cm 2.13 cm 536 MeV 12.1 keV 5.61 cm 5.61 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 12.7 um -7.37 cm 1.76 cm 787 MeV 17.6 keV 7.86 cm 7.86 cm World eIoni - 2 4.3 um -8.99 cm 1.86 cm 949 MeV 2.42 keV 1.63 cm 9.48 cm World eIoni - 3 -19.9 um -16.7 cm 2.17 cm 1.72 GeV 16.5 keV 7.76 cm 17.2 cm World eIoni - 4 -21.9 um -18.6 cm 2.22 cm 1.91 GeV 3.02 keV 1.91 cm 19.1 cm World eIoni - 5 -23.7 um -20 cm 2.26 cm 2.05 GeV 4.04 keV 1.36 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -21.9 um -18.6 cm 2.22 cm 3.76 keV 0 eV 0 fm 0 fm World initStep - 1 -15.5 um -18.7 cm 2.22 cm 1.92 MeV 3.76 keV 433 um 433 um World eIoni - 2 2.96 um -18.8 cm 2.22 cm 20.5 MeV 80.9 eV 1.86 mm 2.29 mm World eIoni - 3 110 um -20 cm 2.2 cm 136 MeV 1.16 keV 1.15 cm 1.38 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -19.9 um -16.7 cm 2.17 cm 2.91 keV 0 eV 0 fm 0 fm World initStep - 1 -30.2 um -16.7 cm 2.17 cm 1.22 MeV 2.91 keV 279 um 279 um World eIoni - 2 -21.8 um -17.1 cm 2.16 cm 40.2 MeV 163 eV 3.9 mm 4.18 mm World eIoni - 3 6.03 um -18.2 cm 2.15 cm 146 MeV 1.83 keV 1.05 cm 1.47 cm World eIoni - 4 9.82 um -18.5 cm 2.15 cm 173 MeV 71 eV 2.76 mm 1.75 cm World eIoni - 5 20.3 um -20 cm 2.15 cm 326 MeV 3.03 keV 1.53 cm 3.28 cm OutOfWorldTransportation + 0 -1.85 mm -15.8 cm 1.75 cm 1.01 keV 0 eV 0 fm 0 fm World initStep + 1 -1.85 mm -15.8 cm 1.75 cm 201 keV 1.01 keV 53.6 um 53.6 um World eIoni + 2 -1.83 mm -20 cm 1.75 cm 423 MeV 11 keV 4.48 cm 4.48 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 9.82 um -18.5 cm 2.15 cm 1.43 keV 0 eV 0 fm 0 fm World initStep - 1 13.5 um -18.5 cm 2.15 cm 363 keV 1.43 keV 90.2 um 90.2 um World eIoni - 2 30.6 um -20 cm 2.15 cm 153 MeV 2.53 keV 1.54 cm 1.55 cm OutOfWorldTransportation + 0 -1.5 mm -12.7 cm 1.71 cm 26.7 keV 0 eV 0 fm 0 fm World initStep + 1 -1.53 mm -13 cm 1.72 cm 37.7 MeV 3.48 keV 4.55 mm 4.55 mm World eIoni + 2 -1.47 mm -13.1 cm 1.72 cm 38 MeV 16.2 eV 73.7 um 4.62 mm World eIoni + 3 926 um -13.4 cm 1.62 cm 68.6 MeV 368 eV 4.05 mm 8.67 mm World eIoni + 4 3.59 mm -14.3 cm 1.51 cm 158 MeV 1.85 keV 9.44 mm 1.81 cm World eIoni + 5 8.23 mm -20 cm 1.32 cm 731 MeV 15.5 keV 5.76 cm 7.57 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 7 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.03 um -18.2 cm 2.15 cm 1.16 keV 0 eV 0 fm 0 fm World initStep - 1 7.6 um -18.2 cm 2.15 cm 253 keV 1.16 keV 65.5 um 65.5 um World eIoni - 2 16.9 um -20 cm 2.16 cm 181 MeV 3.19 keV 1.83 cm 1.84 cm OutOfWorldTransportation + 0 3.59 mm -14.3 cm 1.51 cm 1.17 keV 0 eV 0 fm 0 fm World initStep + 1 3.6 mm -14.3 cm 1.51 cm 258 keV 1.17 keV 66.6 um 66.6 um World eIoni + 2 3.62 mm -20 cm 1.51 cm 574 MeV 12.3 keV 6.05 cm 6.06 cm OutOfWorldTransportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 7 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 4.3 um -8.99 cm 1.86 cm 1.13 keV 0 eV 0 fm 0 fm World initStep - 1 7.4 um -8.99 cm 1.86 cm 243 keV 1.13 keV 63.2 um 63.2 um World eIoni - 2 32 um -20 cm 1.86 cm 1.1 GeV 29.5 keV 12.4 cm 12.4 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 12.7 um -7.37 cm 1.76 cm 1.12 keV 0 eV 0 fm 0 fm World initStep - 1 9.97 um -7.37 cm 1.76 cm 241 keV 1.12 keV 62.7 um 62.7 um World eIoni - 2 1.23 mm -19.9 cm 1.69 cm 1.25 GeV 26.9 keV 14.4 cm 14.4 cm World eIoni - 3 1.41 mm -20 cm 1.67 cm 1.26 GeV 400 eV 1.49 mm 14.6 cm OutOfWorldTransportation + 0 926 um -13.4 cm 1.62 cm 2.82 keV 0 eV 0 fm 0 fm World initStep + 1 917 um -13.4 cm 1.62 cm 1.16 MeV 2.82 keV 264 um 264 um World eIoni + 2 915 um -13.4 cm 1.62 cm 9.22 MeV 43.2 eV 806 um 1.07 mm World eIoni + 3 925 um -20 cm 1.62 cm 664 MeV 7.7 keV 6.55 cm 6.66 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -5549,27 +3667,17 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 13.5 um -8.75 mm 8.41 mm 138 MeV 2.52 keV 1.28 cm 1.28 cm World eIoni - 2 38.7 um -20 cm 2.22 cm 2.05 GeV 32 keV 19.2 cm 20.5 cm OutOfWorldTransportation + 1 -531 um -13.3 cm 2.05 cm 1.38 GeV 24.8 keV 13.8 cm 13.8 cm World eIoni + 2 -670 um -20 cm 2.26 cm 2.05 GeV 19.4 keV 6.66 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 13.5 um -8.75 mm 8.41 mm 1.16 keV 0 eV 0 fm 0 fm World initStep - 1 12 um -8.77 mm 8.41 mm 255 keV 1.16 keV 65.7 um 65.7 um World eIoni - 2 2.56 cm -14.6 cm -3.87 cm 1.37 GeV 33.9 keV 15.8 cm 15.8 cm World eIoni - 3 2.61 cm -14.8 cm -4 cm 1.39 GeV 781 eV 2.92 mm 16.1 cm World eBrem - 4 3.29 cm -19.7 cm -6 cm 1.88 GeV 10.1 keV 5.33 cm 21.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 2.61 cm -14.8 cm -4 cm 1.72 MeV 0 eV 0 fm 0 fm World initStep - 1 3.42 cm -19.7 cm -6.4 cm 1.72 MeV 0 eV 5.49 cm 5.49 cm OutOfWorldTransportation + 0 -531 um -13.3 cm 2.05 cm 1.56 keV 0 eV 0 fm 0 fm World initStep + 1 -527 um -13.3 cm 2.05 cm 417 keV 1.56 keV 102 um 102 um World eIoni + 2 -503 um -20 cm 2.05 cm 666 MeV 10.6 keV 6.84 cm 6.85 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -5577,53 +3685,1913 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Ne Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 -65.9 um -3.08 cm 1.34 cm 359 MeV 10.1 keV 3.55 cm 3.55 cm World eIoni - 2 -136 um -17.1 cm 2.17 cm 1.76 GeV 25.8 keV 14.1 cm 17.6 cm World eIoni - 3 -133 um -20 cm 2.25 cm 2.05 GeV 4.49 keV 2.86 cm 20.5 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -136 um -17.1 cm 2.17 cm 1.36 keV 0 eV 0 fm 0 fm World initStep - 1 -139 um -17.1 cm 2.17 cm 334 keV 1.36 keV 83.7 um 83.7 um World eIoni - 2 -153 um -20 cm 2.18 cm 286 MeV 3.59 keV 2.9 cm 2.91 cm OutOfWorldTransportation + 1 341 um -14.9 cm 2.02 cm 1.54 GeV 35.2 keV 15.4 cm 15.4 cm World eIoni + 2 524 um -20 cm 2.13 cm 2.05 GeV 12.6 keV 5.07 cm 20.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 -65.9 um -3.08 cm 1.34 cm 2.99 keV 0 eV 0 fm 0 fm World initStep - 1 -70.6 um -3.1 cm 1.34 cm 1.28 MeV 2.99 keV 292 um 292 um World eIoni - 2 -72.6 um -3.11 cm 1.34 cm 2.84 MeV 0 eV 156 um 448 um World eIoni - 3 4.98 mm -15.7 cm 9.28 mm 1.26 GeV 22.9 keV 12.6 cm 12.6 cm World eIoni - 4 6.61 mm -20 cm 7.09 mm 1.69 GeV 10.9 keV 4.32 cm 17 cm OutOfWorldTransportation + 0 341 um -14.9 cm 2.02 cm 16.2 keV 0 eV 0 fm 0 fm World initStep + 1 313 um -15.1 cm 2.01 cm 16 MeV 2.12 keV 1.96 mm 1.96 mm World eIoni + 2 -1.74 mm -20 cm 2.24 cm 508 MeV 10.7 keV 4.94 cm 5.14 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 253 um -8.32 cm 1.78 cm 882 MeV 14.8 keV 8.81 cm 8.81 cm World eIoni + 2 500 um -15.2 cm 2.06 cm 1.57 GeV 17.1 keV 6.91 cm 15.7 cm World eIoni + 3 612 um -20 cm 2.18 cm 2.05 GeV 16.6 keV 4.77 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 500 um -15.2 cm 2.06 cm 7.48 keV 0 eV 0 fm 0 fm World initStep + 1 522 um -15.3 cm 2.05 cm 5.69 MeV 4.03 keV 857 um 857 um World eIoni + 2 2.97 mm -17.1 cm 1.94 cm 187 MeV 3.67 keV 1.87 cm 1.96 cm World eIoni + 3 3.31 mm -18.4 cm 1.91 cm 318 MeV 1.93 keV 1.31 cm 3.27 cm World eIoni + 4 3.57 mm -20 cm 1.89 cm 477 MeV 2.48 keV 1.59 cm 4.86 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 3.31 mm -18.4 cm 1.91 cm 57 keV 0 eV 0 fm 0 fm World initStep + 1 5.89 mm -19.5 cm 2.29 cm 116 MeV 10.6 keV 1.35 cm 1.35 cm World eIoni + 2 6.81 mm -20 cm 2.41 cm 160 MeV 1.08 keV 4.69 mm 1.82 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 2.97 mm -17.1 cm 1.94 cm 1.05 keV 0 eV 0 fm 0 fm World initStep + 1 2.97 mm -17.1 cm 1.94 cm 214 keV 1.05 keV 56.7 um 56.7 um World eIoni + 2 2.98 mm -20 cm 1.93 cm 290 MeV 6.14 keV 3 cm 3.01 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 253 um -8.32 cm 1.78 cm 3.28 keV 0 eV 0 fm 0 fm World initStep + 1 246 um -8.34 cm 1.78 cm 1.52 MeV 3.28 keV 343 um 343 um World eIoni + 2 237 um -8.41 cm 1.78 cm 9.07 MeV 92.6 eV 756 um 1.1 mm World eIoni + 3 70.2 um -11.7 cm 1.81 cm 339 MeV 5.08 keV 3.3 cm 3.41 cm World eIoni + 4 -1.3 mm -20 cm 1.83 cm 1.17 GeV 18.1 keV 8.29 cm 11.7 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 70.2 um -11.7 cm 1.81 cm 1.65 keV 0 eV 0 fm 0 fm World initStep + 1 65.4 um -11.7 cm 1.81 cm 458 keV 1.65 keV 111 um 111 um World eIoni + 2 39.8 um -20 cm 1.81 cm 829 MeV 12.6 keV 8.53 cm 8.54 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 5.03 um -7.97 cm 1.8 cm 847 MeV 16.7 keV 8.47 cm 8.47 cm World eIoni + 2 -73 um -14.4 cm 2.1 cm 1.49 GeV 12.3 keV 6.4 cm 14.9 cm World eIoni + 3 -103 um -17.4 cm 2.2 cm 1.79 GeV 6 keV 3.06 cm 17.9 cm World eIoni + 4 -115 um -18.8 cm 2.23 cm 1.93 GeV 1.64 keV 1.36 cm 19.3 cm World eIoni + 5 -125 um -20 cm 2.27 cm 2.05 GeV 1.97 keV 1.22 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -115 um -18.8 cm 2.23 cm 3.55 keV 0 eV 0 fm 0 fm World initStep + 1 -115 um -18.8 cm 2.23 cm 1.73 MeV 3.55 keV 391 um 391 um World eIoni + 2 -138 um -19 cm 2.23 cm 24.1 MeV 17.8 eV 2.24 mm 2.63 mm World eIoni + 3 -172 um -20 cm 2.23 cm 122 MeV 1.59 keV 9.77 mm 1.24 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -103 um -17.4 cm 2.2 cm 9.34 keV 0 eV 0 fm 0 fm World initStep + 1 -109 um -17.5 cm 2.2 cm 9.43 MeV 4.78 keV 1.67 mm 1.67 mm World eIoni + 2 628 um -17.5 cm 2.29 cm 9.01 MeV 1.18 keV 1.32 mm 2.99 mm World eIoni + 3 2.18 mm -20 cm 2.48 cm 258 MeV 3.35 keV 2.52 cm 2.82 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -73 um -14.4 cm 2.1 cm 2.76 keV 0 eV 0 fm 0 fm World initStep + 1 -67.1 um -14.4 cm 2.1 cm 549 keV 525 eV 65.5 um 65.5 um World eIoni + 2 117 um -20 cm 2.1 cm 563 MeV 12.1 keV 5.71 cm 5.72 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 5.03 um -7.97 cm 1.8 cm 25 keV 0 eV 0 fm 0 fm World initStep + 1 -54.6 um -8.3 cm 1.81 cm 34.4 MeV 7.02 keV 4.2 mm 4.2 mm World eIoni + 2 6 um -8.58 cm 1.79 cm 61.9 MeV 478 eV 2.75 mm 6.95 mm World eIoni + 3 311 um -20 cm 1.69 cm 1.2 GeV 33.6 keV 11.4 cm 12.1 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -82.4 um -3.28 cm 1.37 cm 378 MeV 6.49 keV 3.75 cm 3.75 cm World eIoni + 2 -128 um -20 cm 2.2 cm 2.05 GeV 39.7 keV 16.7 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -82.4 um -3.28 cm 1.37 cm 2.95 keV 0 eV 0 fm 0 fm World initStep + 1 -71.7 um -3.29 cm 1.37 cm 1.26 MeV 2.95 keV 286 um 286 um World eIoni + 2 -109 um -3.7 cm 1.37 cm 41.7 MeV 277 eV 4.04 mm 4.33 mm World eIoni + 3 -225 um -4.23 cm 1.38 cm 94.5 MeV 949 eV 5.29 mm 9.61 mm World eIoni + 4 -274 um -4.61 cm 1.38 cm 133 MeV 1.75 keV 3.87 mm 1.35 cm World eIoni + 5 -493 um -8.91 cm 1.39 cm 563 MeV 8.74 keV 4.3 cm 5.64 cm World eIoni + 6 -650 um -17.5 cm 1.39 cm 1.42 GeV 17 keV 8.56 cm 14.2 cm World eIoni + 7 -667 um -20 cm 1.39 cm 1.67 GeV 6.54 keV 2.53 cm 16.7 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -650 um -17.5 cm 1.39 cm 4.15 keV 0 eV 0 fm 0 fm World initStep + 1 -665 um -17.5 cm 1.39 cm 2.29 MeV 4.15 keV 514 um 514 um World eIoni + 2 -682 um -17.7 cm 1.39 cm 18.6 MeV 271 eV 1.63 mm 2.15 mm World eIoni + 3 -722 um -20 cm 1.39 cm 253 MeV 5.25 keV 2.34 cm 2.56 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -493 um -8.91 cm 1.39 cm 2.14 keV 0 eV 0 fm 0 fm World initStep + 1 -496 um -8.91 cm 1.39 cm 714 keV 2.14 keV 168 um 168 um World eIoni + 2 3.65 mm -13.5 cm 1.34 cm 455 MeV 8.42 keV 4.58 cm 4.6 cm World eIoni + 3 4.81 mm -15.2 cm 1.34 cm 629 MeV 2.63 keV 1.74 cm 6.34 cm World eIoni + 4 6.84 mm -20 cm 1.34 cm 1.11 GeV 12.8 keV 4.79 cm 11.1 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 5 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 4.81 mm -15.2 cm 1.34 cm 2.28 keV 0 eV 0 fm 0 fm World initStep + 1 4.81 mm -15.2 cm 1.34 cm 801 keV 2.28 keV 186 um 186 um World eIoni + 2 4.72 mm -15.6 cm 1.34 cm 39.8 MeV 443 eV 3.9 mm 4.09 mm World eIoni + 3 4.55 mm -19.5 cm 1.32 cm 427 MeV 7.69 keV 3.87 cm 4.28 cm World eIoni + 4 4.54 mm -20 cm 1.32 cm 479 MeV 564 eV 5.26 mm 4.81 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 7 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 4.55 mm -19.5 cm 1.32 cm 2.24 keV 0 eV 0 fm 0 fm World initStep + 1 4.54 mm -19.5 cm 1.32 cm 774 keV 2.24 keV 181 um 181 um World eIoni + 2 4.54 mm -19.5 cm 1.32 cm 2.71 MeV 0 eV 194 um 375 um World eIoni + 3 4.53 mm -20 cm 1.32 cm 52.7 MeV 366 eV 5 mm 5.37 mm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 4.98 mm -15.7 cm 9.28 mm 2.81 keV 0 eV 0 fm 0 fm World initStep - 1 4.98 mm -15.7 cm 9.29 mm 1.15 MeV 2.81 keV 263 um 263 um World eIoni - 2 5 mm -15.8 cm 9.3 mm 11.2 MeV 271 eV 1 mm 1.27 mm World eIoni - 3 5.01 mm -16.6 cm 9.26 mm 87.9 MeV 799 eV 7.67 mm 8.94 mm World eIoni - 4 5 mm -20 cm 9.21 mm 432 MeV 4.33 keV 3.44 cm 4.34 cm OutOfWorldTransportation + 0 -274 um -4.61 cm 1.38 cm 1.23 keV 0 eV 0 fm 0 fm World initStep + 1 -277 um -4.61 cm 1.38 cm 280 keV 1.23 keV 71.7 um 71.7 um World eIoni + 2 -305 um -20 cm 1.38 cm 1.54 GeV 35 keV 17.7 cm 17.7 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -225 um -4.23 cm 1.38 cm 2.71 keV 0 eV 0 fm 0 fm World initStep + 1 -227 um -4.24 cm 1.38 cm 1.08 MeV 2.71 keV 247 um 247 um World eIoni + 2 -237 um -4.32 cm 1.38 cm 9.7 MeV 32 eV 862 um 1.11 mm World eIoni + 3 -399 um -13.8 cm 1.53 cm 958 MeV 13.7 keV 9.48 cm 9.6 cm World eIoni + 4 -431 um -15.8 cm 1.54 cm 1.16 GeV 2.9 keV 2.01 cm 11.6 cm World eIoni + 5 -483 um -20 cm 1.56 cm 1.58 GeV 10.9 keV 4.19 cm 15.8 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -431 um -15.8 cm 1.54 cm 1.71 keV 0 eV 0 fm 0 fm World initStep + 1 -433 um -15.8 cm 1.54 cm 487 keV 1.71 keV 118 um 118 um World eIoni + 2 -445 um -20 cm 1.55 cm 419 MeV 11.9 keV 4.24 cm 4.25 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -399 um -13.8 cm 1.53 cm 23.8 keV 0 eV 0 fm 0 fm World initStep + 1 -488 um -14.1 cm 1.53 cm 32.3 MeV 5.31 keV 3.96 mm 3.96 mm World eIoni + 2 238 um -14.3 cm 1.53 cm 51.8 MeV 271 eV 2.09 mm 6.05 mm World eIoni + 3 626 um -14.5 cm 1.54 cm 67.4 MeV 148 eV 1.6 mm 7.66 mm World eIoni + 4 997 um -14.7 cm 1.54 cm 87 MeV 556 eV 1.99 mm 9.65 mm World eIoni + 5 2.09 mm -15.7 cm 1.54 cm 187 MeV 1.58 keV 1 cm 1.97 cm World eIoni + 6 2.16 mm -15.7 cm 1.54 cm 196 MeV 19.1 eV 888 um 2.06 cm World eIoni + 7 3.14 mm -17.7 cm 1.55 cm 391 MeV 3.57 keV 1.96 cm 4.01 cm World eIoni + 8 3.78 mm -20 cm 1.56 cm 621 MeV 3.98 keV 2.3 cm 6.31 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 9 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 3.14 mm -17.7 cm 1.55 cm 1.97 keV 0 eV 0 fm 0 fm World initStep + 1 3.14 mm -17.7 cm 1.55 cm 623 keV 1.97 keV 148 um 148 um World eIoni + 2 3.17 mm -20 cm 1.55 cm 230 MeV 2.26 keV 2.3 cm 2.32 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 9 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 2.16 mm -15.7 cm 1.54 cm 2.29 keV 0 eV 0 fm 0 fm World initStep + 1 2.16 mm -15.8 cm 1.54 cm 806 keV 2.29 keV 187 um 187 um World eIoni + 2 2.15 mm -16 cm 1.55 cm 25.8 MeV 103 eV 2.5 mm 2.69 mm World eIoni + 3 2.13 mm -16.1 cm 1.55 cm 39.2 MeV 82.5 eV 1.34 mm 4.03 mm World eIoni + 4 2 mm -20 cm 1.58 cm 426 MeV 5.07 keV 3.86 cm 4.27 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 14 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 2.13 mm -16.1 cm 1.55 cm 2.06 keV 0 eV 0 fm 0 fm World initStep + 1 2.13 mm -16.1 cm 1.55 cm 670 keV 2.06 keV 158 um 158 um World eIoni + 2 1.75 mm -18.3 cm 1.69 cm 213 MeV 2.03 keV 2.14 cm 2.15 cm World eIoni + 3 787 um -20 cm 1.87 cm 387 MeV 4.5 keV 1.74 cm 3.9 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 16 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 1.75 mm -18.3 cm 1.69 cm 2.45 keV 0 eV 0 fm 0 fm World initStep + 1 1.75 mm -18.3 cm 1.69 cm 908 keV 2.45 keV 209 um 209 um World eIoni + 2 1.72 mm -18.5 cm 1.69 cm 22.2 MeV 133 eV 2.13 mm 2.34 mm World eIoni + 3 1.67 mm -20 cm 1.69 cm 173 MeV 2.36 keV 1.51 cm 1.74 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 9 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 2.09 mm -15.7 cm 1.54 cm 1.52 keV 0 eV 0 fm 0 fm World initStep + 1 2.09 mm -15.7 cm 1.54 cm 399 keV 1.52 keV 98.2 um 98.2 um World eIoni + 2 2.1 mm -20 cm 1.55 cm 434 MeV 7.73 keV 4.42 cm 4.43 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 9 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 997 um -14.7 cm 1.54 cm 1.03 keV 0 eV 0 fm 0 fm World initStep + 1 996 um -14.7 cm 1.54 cm 208 keV 1.03 keV 55.2 um 55.2 um World eIoni + 2 989 um -20 cm 1.54 cm 534 MeV 14.6 keV 5.74 cm 5.74 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 9 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 626 um -14.5 cm 1.54 cm 1.24 keV 0 eV 0 fm 0 fm World initStep + 1 630 um -14.5 cm 1.54 cm 285 keV 1.24 keV 72.5 um 72.5 um World eIoni + 2 652 um -20 cm 1.53 cm 554 MeV 15.7 keV 5.78 cm 5.78 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 424 um -13.8 cm 1.99 cm 1.43 GeV 26.5 keV 14.3 cm 14.3 cm World eIoni + 2 598 um -18.3 cm 2.13 cm 1.88 GeV 8.46 keV 4.5 cm 18.8 cm World eIoni + 3 653 um -20 cm 2.17 cm 2.05 GeV 3.83 keV 1.73 cm 20.5 cm World eIoni + 4 653 um -20 cm 2.17 cm 2.05 GeV 107 eV 135 um 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 653 um -20 cm 2.17 cm 1.07 keV 0 eV 0 fm 0 fm World initStep + 1 654 um -20 cm 2.17 cm 221 keV 1.07 keV 58.2 um 58.2 um World eIoni + 2 656 um -20 cm 2.17 cm 1.36 MeV 0 eV 114 um 172 um OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 598 um -18.3 cm 2.13 cm 1.58 keV 0 eV 0 fm 0 fm World initStep + 1 602 um -18.3 cm 2.13 cm 429 keV 1.58 keV 105 um 105 um World eIoni + 2 623 um -20 cm 2.13 cm 174 MeV 2.86 keV 1.75 cm 1.76 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 424 um -13.8 cm 1.99 cm 3 keV 0 eV 0 fm 0 fm World initStep + 1 414 um -13.8 cm 1.99 cm 1.29 MeV 3 keV 294 um 294 um World eIoni + 2 409 um -13.8 cm 1.99 cm 4.34 MeV 80.2 eV 305 um 599 um World eIoni + 3 381 um -20 cm 1.99 cm 624 MeV 7.92 keV 6.2 cm 6.26 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 340 um -19.9 cm 2.15 cm 2.04 GeV 34.7 keV 20.4 cm 20.4 cm World eIoni + 2 344 um -20 cm 2.15 cm 2.05 GeV 0 eV 793 um 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 340 um -19.9 cm 2.15 cm 1.54 keV 0 eV 0 fm 0 fm World initStep + 1 339 um -19.9 cm 2.15 cm 407 keV 1.54 keV 100 um 100 um World eIoni + 2 337 um -20 cm 2.14 cm 7.95 MeV 38.8 eV 755 um 855 um OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 0 fm -20 cm 2.22 cm 2.05 GeV 33.5 keV 20.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 207 um -7.32 cm 1.75 cm 782 MeV 13.3 keV 7.81 cm 7.81 cm World eIoni + 2 454 um -20 cm 2.25 cm 2.05 GeV 26.8 keV 12.7 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 207 um -7.32 cm 1.75 cm 15.4 keV 0 eV 0 fm 0 fm World initStep + 1 152 um -7.5 cm 1.75 cm 18.6 MeV 3.92 keV 2.54 mm 2.54 mm World eIoni + 2 373 um -7.51 cm 1.75 cm 20.4 MeV 0 eV 286 um 2.83 mm World eIoni + 3 6.99 mm -20 cm 1.71 cm 1.27 GeV 24.1 keV 12.5 cm 12.8 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 42.3 um -6.03 cm 1.66 cm 653 MeV 13.1 keV 6.52 cm 6.52 cm World eIoni + 2 -16.1 um -8.51 cm 1.83 cm 901 MeV 4.24 keV 2.49 cm 9 cm World eIoni + 3 -107 um -14.4 cm 2.09 cm 1.49 GeV 15 keV 5.93 cm 14.9 cm World eIoni + 4 -121 um -15.9 cm 2.13 cm 1.64 GeV 3.55 keV 1.46 cm 16.4 cm World eIoni + 5 -151 um -20 cm 2.25 cm 2.05 GeV 7.37 keV 4.1 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -121 um -15.9 cm 2.13 cm 1.43 keV 0 eV 0 fm 0 fm World initStep + 1 -125 um -15.9 cm 2.13 cm 360 keV 1.43 keV 89.7 um 89.7 um World eIoni + 2 -149 um -20 cm 2.13 cm 410 MeV 5.73 keV 4.18 cm 4.19 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -107 um -14.4 cm 2.09 cm 2.33 keV 0 eV 0 fm 0 fm World initStep + 1 -112 um -14.4 cm 2.08 cm 828 keV 2.33 keV 192 um 192 um World eIoni + 2 -202 um -15.3 cm 2.05 cm 86 MeV 1.68 keV 8.53 mm 8.72 mm World eIoni + 3 -335 um -16.4 cm 1.99 cm 197 MeV 1.14 keV 1.12 cm 1.99 cm World eIoni + 4 -488 um -20 cm 1.92 cm 556 MeV 7.58 keV 3.59 cm 5.57 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -335 um -16.4 cm 1.99 cm 3.1 keV 0 eV 0 fm 0 fm World initStep + 1 -346 um -16.4 cm 1.99 cm 1.37 MeV 3.1 keV 310 um 310 um World eIoni + 2 -347 um -16.4 cm 1.99 cm 1.77 MeV 5.92 eV 41.2 um 352 um World eIoni + 3 -1.07 mm -18.9 cm 1.95 cm 251 MeV 4.57 keV 2.5 cm 2.53 cm World eIoni + 4 -1.72 mm -20 cm 1.95 cm 359 MeV 1.45 keV 1.07 cm 3.61 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 6 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -1.07 mm -18.9 cm 1.95 cm 1.3 keV 0 eV 0 fm 0 fm World initStep + 1 -1.07 mm -18.9 cm 1.95 cm 308 keV 1.3 keV 77.9 um 77.9 um World eIoni + 2 -1.07 mm -20 cm 1.95 cm 107 MeV 891 eV 1.08 cm 1.09 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 6 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -347 um -16.4 cm 1.99 cm 8.77 keV 0 eV 0 fm 0 fm World initStep + 1 -385 um -16.5 cm 1.99 cm 8.53 MeV 4.67 keV 1.58 mm 1.58 mm World eIoni + 2 505 um -17.2 cm 2.26 cm 80.4 MeV 4.02 keV 8.34 mm 9.92 mm World eIoni + 3 703 um -18.2 cm 2.33 cm 173 MeV 1.86 keV 9.26 mm 1.92 cm World eIoni + 4 898 um -20 cm 2.39 cm 357 MeV 3.5 keV 1.85 cm 3.77 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 7 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 703 um -18.2 cm 2.33 cm 3 keV 0 eV 0 fm 0 fm World initStep + 1 703 um -18.2 cm 2.33 cm 316 keV 128 eV 34.8 um 34.8 um World eIoni + 2 668 um -20 cm 2.31 cm 185 MeV 4.53 keV 1.86 cm 1.87 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -16.1 um -8.51 cm 1.83 cm 1.85 keV 0 eV 0 fm 0 fm World initStep + 1 -11.9 um -8.52 cm 1.83 cm 558 keV 1.85 keV 133 um 133 um World eIoni + 2 10.2 um -20 cm 1.83 cm 1.15 GeV 17.4 keV 11.8 cm 11.8 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 42.3 um -6.03 cm 1.66 cm 1.45 keV 0 eV 0 fm 0 fm World initStep + 1 45.3 um -6.03 cm 1.66 cm 370 keV 1.45 keV 91.7 um 91.7 um World eIoni + 2 65.3 um -20 cm 1.66 cm 1.4 GeV 26 keV 15 cm 15.1 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -90.9 um -3.5 cm 1.39 cm 400 MeV 6.91 keV 3.98 cm 3.98 cm World eIoni + 2 -161 um -9.3 cm 1.85 cm 980 MeV 10.4 keV 5.82 cm 9.8 cm World eIoni + 3 -193 um -16 cm 2.11 cm 1.65 GeV 18.9 keV 6.74 cm 16.5 cm World eIoni + 4 -202 um -20 cm 2.22 cm 2.05 GeV 10.7 keV 3.96 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -193 um -16 cm 2.11 cm 2.16 keV 0 eV 0 fm 0 fm World initStep + 1 -194 um -16 cm 2.11 cm 729 keV 2.16 keV 171 um 171 um World eIoni + 2 286 um -17.2 cm 2.1 cm 112 MeV 2.6 keV 1.11 cm 1.13 cm World eIoni + 3 1.02 mm -20 cm 1.93 cm 396 MeV 6.08 keV 2.85 cm 3.98 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -161 um -9.3 cm 1.85 cm 1.29 keV 0 eV 0 fm 0 fm World initStep + 1 -164 um -9.31 cm 1.85 cm 303 keV 1.29 keV 76.8 um 76.8 um World eIoni + 2 -183 um -20 cm 1.85 cm 1.07 GeV 23.4 keV 11.6 cm 11.6 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -90.9 um -3.5 cm 1.39 cm 2.13 keV 0 eV 0 fm 0 fm World initStep + 1 -87.7 um -3.51 cm 1.39 cm 710 keV 2.13 keV 167 um 167 um World eIoni + 2 -3.37 mm -7.58 cm 1.52 cm 408 MeV 8.36 keV 4.1 cm 4.12 cm World eIoni + 3 -3.42 mm -16.1 cm 1.54 cm 1.26 GeV 17.2 keV 8.51 cm 12.6 cm World eIoni + 4 -3.44 mm -20 cm 1.55 cm 1.65 GeV 9.1 keV 3.9 cm 16.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -3.42 mm -16.1 cm 1.54 cm 1.23 keV 0 eV 0 fm 0 fm World initStep + 1 -3.42 mm -16.1 cm 1.54 cm 282 keV 1.23 keV 72.1 um 72.1 um World eIoni + 2 -3.42 mm -20 cm 1.54 cm 390 MeV 9.24 keV 4.02 cm 4.03 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 56.5 um -6.69 cm 1.71 cm 719 MeV 11.3 keV 7.17 cm 7.17 cm World eIoni + 2 288 um -20 cm 2.3 cm 2.05 GeV 29 keV 13.3 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 56.5 um -6.69 cm 1.71 cm 2.83 keV 0 eV 0 fm 0 fm World initStep + 1 46.6 um -6.7 cm 1.71 cm 1.17 MeV 2.83 keV 266 um 266 um World eIoni + 2 65.6 um -6.93 cm 1.71 cm 24.8 MeV 439 eV 2.36 mm 2.63 mm World eIoni + 3 172 um -7.61 cm 1.71 cm 92.9 MeV 2.03 keV 6.82 mm 9.45 mm World eIoni + 4 405 um -20 cm 1.72 cm 1.33 GeV 21 keV 12.4 cm 13.3 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 172 um -7.61 cm 1.71 cm 5.2 keV 0 eV 0 fm 0 fm World initStep + 1 157 um -7.65 cm 1.71 cm 3.41 MeV 5.2 keV 765 um 765 um World eIoni + 2 151 um -7.76 cm 1.71 cm 14.8 MeV 365 eV 1.14 mm 1.9 mm World eIoni + 3 831 um -15.7 cm 1.67 cm 812 MeV 14.5 keV 7.97 cm 8.16 cm World eIoni + 4 1.08 mm -20 cm 1.67 cm 1.24 GeV 9.74 keV 4.27 cm 12.4 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 831 um -15.7 cm 1.67 cm 7.83 keV 0 eV 0 fm 0 fm World initStep + 1 850 um -15.8 cm 1.67 cm 6.94 MeV 4.66 keV 1.28 mm 1.28 mm World eIoni + 2 561 um -16.3 cm 1.89 cm 53.8 MeV 820 eV 5.65 mm 6.92 mm World eIoni + 3 371 um -19.3 cm 2.02 cm 354 MeV 7.66 keV 3.01 cm 3.7 cm World eIoni + 4 370 um -19.3 cm 2.02 cm 360 MeV 0 eV 559 um 3.76 cm World eIoni + 5 353 um -20 cm 2.03 cm 428 MeV 390 eV 6.77 mm 4.43 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 370 um -19.3 cm 2.02 cm 1.51 keV 0 eV 0 fm 0 fm World initStep + 1 372 um -19.3 cm 2.02 cm 398 keV 1.51 keV 98 um 98 um World eIoni + 2 381 um -20 cm 2.02 cm 67.7 MeV 1.92 keV 6.75 mm 6.84 mm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 371 um -19.3 cm 2.02 cm 3.96 keV 0 eV 0 fm 0 fm World initStep + 1 357 um -19.3 cm 2.02 cm 2.1 MeV 3.96 keV 473 um 473 um World eIoni + 2 328 um -19.5 cm 2.02 cm 23 MeV 119 eV 2.09 mm 2.56 mm World eIoni + 3 306 um -20 cm 2.02 cm 73.4 MeV 1.71 keV 5.04 mm 7.6 mm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 5.01 mm -16.6 cm 9.26 mm 1.22 keV 0 eV 0 fm 0 fm World initStep - 1 5 mm -16.6 cm 9.25 mm 278 keV 1.22 keV 71.2 um 71.2 um World eIoni - 2 4.99 mm -20 cm 9.23 mm 344 MeV 4.53 keV 3.53 cm 3.54 cm OutOfWorldTransportation + 0 561 um -16.3 cm 1.89 cm 20.7 keV 0 eV 0 fm 0 fm World initStep + 1 613 um -16.5 cm 1.88 cm 27.1 MeV 2.93 keV 3.41 mm 3.41 mm World eIoni + 2 485 um -19.3 cm 1.81 cm 305 MeV 5.16 keV 2.78 cm 3.12 cm World eIoni + 3 497 um -20 cm 1.81 cm 375 MeV 1.08 keV 7.05 mm 3.82 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -262 um -16.5 cm 2.05 cm 1.7 GeV 36.6 keV 17 cm 17 cm World eIoni + 2 -281 um -20 cm 2.14 cm 2.05 GeV 8.54 keV 3.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -262 um -16.5 cm 2.05 cm 1.58 keV 0 eV 0 fm 0 fm World initStep + 1 -261 um -16.5 cm 2.05 cm 430 keV 1.58 keV 105 um 105 um World eIoni + 2 -256 um -20 cm 2.05 cm 350 MeV 5.39 keV 3.54 cm 3.55 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -463 um -11.8 cm 1.98 cm 1.23 GeV 25.1 keV 12.3 cm 12.3 cm World eIoni + 2 -500 um -13.7 cm 2.05 cm 1.42 GeV 3.65 keV 1.87 cm 14.2 cm World eIoni + 3 -593 um -20 cm 2.24 cm 2.05 GeV 15.7 keV 6.32 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -500 um -13.7 cm 2.05 cm 1.62 keV 0 eV 0 fm 0 fm World initStep + 1 -505 um -13.7 cm 2.05 cm 444 keV 1.62 keV 108 um 108 um World eIoni + 2 -531 um -20 cm 2.05 cm 632 MeV 8.55 keV 6.47 cm 6.48 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -463 um -11.8 cm 1.98 cm 28.6 keV 0 eV 0 fm 0 fm World initStep + 1 -349 um -12.2 cm 1.99 cm 41.4 MeV 4.62 keV 4.96 mm 4.96 mm World eIoni + 2 -1.4 mm -12.9 cm 1.9 cm 114 MeV 1.56 keV 7.37 mm 1.23 cm World eIoni + 3 -3.46 mm -20 cm 1.72 cm 820 MeV 12.2 keV 7.08 cm 8.31 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -4.61 um -7.71 mm 7.96 mm 127 MeV 3.24 keV 1.17 cm 1.17 cm World eIoni + 2 12.1 um -10.2 cm 1.89 cm 1.07 GeV 22.2 keV 9.48 cm 10.7 cm World eIoni + 3 91.5 um -20 cm 2.22 cm 2.05 GeV 15 keV 9.84 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 12.1 um -10.2 cm 1.89 cm 1.17 keV 0 eV 0 fm 0 fm World initStep + 1 14.8 um -10.2 cm 1.89 cm 259 keV 1.17 keV 66.9 um 66.9 um World eIoni + 2 35 um -20 cm 1.89 cm 984 MeV 25.8 keV 10.8 cm 10.8 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -4.61 um -7.71 mm 7.96 mm 9.38 keV 0 eV 0 fm 0 fm World initStep + 1 -44.9 um -8.61 mm 7.97 mm 9.49 MeV 4.41 keV 1.68 mm 1.68 mm World eIoni + 2 -791 um -1.4 cm 8.45 mm 63.9 MeV 763 eV 7.39 mm 9.08 mm World eIoni + 3 -952 um -6.81 cm 8.67 mm 604 MeV 8.69 keV 5.4 cm 6.31 cm World eIoni + 4 -958 um -7.12 cm 8.67 mm 636 MeV 539 eV 3.19 mm 6.63 cm World eIoni + 5 -1.07 mm -18.3 cm 8.77 mm 1.75 GeV 30.2 keV 11.1 cm 17.8 cm World eIoni + 6 -1.08 mm -19.3 cm 8.77 mm 1.86 GeV 3.03 keV 1.07 cm 18.8 cm World eIoni + 7 -1.08 mm -20 cm 8.77 mm 1.92 GeV 1.52 keV 6.64 mm 19.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -1.08 mm -19.3 cm 8.77 mm 6.03 keV 0 eV 0 fm 0 fm World initStep + 1 -1.1 mm -19.4 cm 8.76 mm 4.44 MeV 6.03 keV 996 um 996 um World eIoni + 2 -1.11 mm -19.5 cm 8.77 mm 20.6 MeV 147 eV 1.62 mm 2.62 mm World eIoni + 3 -1.13 mm -20 cm 8.78 mm 66.7 MeV 491 eV 4.6 mm 7.22 mm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -1.07 mm -18.3 cm 8.77 mm 1.14 keV 0 eV 0 fm 0 fm World initStep + 1 -1.07 mm -18.3 cm 8.77 mm 246 keV 1.14 keV 64.1 um 64.1 um World eIoni + 2 -1.05 mm -20 cm 8.78 mm 174 MeV 4.16 keV 1.76 cm 1.77 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -958 um -7.12 cm 8.67 mm 1.77 keV 0 eV 0 fm 0 fm World initStep + 1 -962 um -7.13 cm 8.68 mm 516 keV 1.77 keV 124 um 124 um World eIoni + 2 -985 um -20 cm 8.7 mm 1.29 GeV 20.5 keV 13.4 cm 13.4 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -952 um -6.81 cm 8.67 mm 1.22 keV 0 eV 0 fm 0 fm World initStep + 1 -955 um -6.81 cm 8.67 mm 277 keV 1.22 keV 70.9 um 70.9 um World eIoni + 2 -978 um -20 cm 8.69 mm 1.32 GeV 30.9 keV 14.8 cm 14.8 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -121 um -11.1 cm 1.89 cm 1.16 GeV 25.3 keV 11.6 cm 11.6 cm World eIoni + 2 -127 um -18.5 cm 2.12 cm 1.9 GeV 15.7 keV 7.42 cm 19 cm World eIoni + 3 -126 um -19.2 cm 2.14 cm 1.97 GeV 976 eV 6.74 mm 19.7 cm World eIoni + 4 -125 um -20 cm 2.15 cm 2.05 GeV 1.32 keV 7.93 mm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -126 um -19.2 cm 2.14 cm 1.27 keV 0 eV 0 fm 0 fm World initStep + 1 -126 um -19.2 cm 2.14 cm 298 keV 1.27 keV 75.6 um 75.6 um World eIoni + 2 -128 um -20 cm 2.13 cm 79.3 MeV 285 eV 7.94 mm 8.01 mm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -127 um -18.5 cm 2.12 cm 13.4 keV 0 eV 0 fm 0 fm World initStep + 1 -178 um -18.7 cm 2.12 cm 15.6 MeV 4.58 keV 2.26 mm 2.26 mm World eIoni + 2 -46.1 um -19 cm 2.11 cm 43.3 MeV 703 eV 2.77 mm 5.03 mm World eIoni + 3 93 um -20 cm 2.11 cm 147 MeV 2.45 keV 1.04 cm 1.54 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -121 um -11.1 cm 1.89 cm 4.49 keV 0 eV 0 fm 0 fm World initStep + 1 -132 um -11.1 cm 1.89 cm 2.63 MeV 4.49 keV 590 um 590 um World eIoni + 2 -108 um -11.5 cm 1.89 cm 42.2 MeV 1.08 keV 3.95 mm 4.54 mm World eIoni + 3 43.7 um -14.6 cm 1.89 cm 348 MeV 5.65 keV 3.06 cm 3.51 cm World eIoni + 4 73.6 um -20 cm 1.89 cm 889 MeV 9.68 keV 5.41 cm 8.92 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 43.7 um -14.6 cm 1.89 cm 2.6 keV 0 eV 0 fm 0 fm World initStep + 1 38.4 um -14.6 cm 1.89 cm 1.01 MeV 2.6 keV 231 um 231 um World eIoni + 2 -85.6 um -15.3 cm 1.88 cm 69.3 MeV 1.09 keV 6.83 mm 7.06 mm World eIoni + 3 -308 um -20 cm 1.86 cm 541 MeV 11.2 keV 4.72 cm 5.42 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -442 um -10.9 cm 1.92 cm 1.14 GeV 18.1 keV 11.4 cm 11.4 cm World eIoni + 2 -689 um -20 cm 2.24 cm 2.05 GeV 24.2 keV 9.13 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -442 um -10.9 cm 1.92 cm 4.79 keV 0 eV 0 fm 0 fm World initStep + 1 -426 um -10.9 cm 1.92 cm 2.95 MeV 4.79 keV 661 um 661 um World eIoni + 2 -427 um -11.1 cm 1.92 cm 22.9 MeV 144 eV 1.99 mm 2.65 mm World eIoni + 3 -218 um -18.7 cm 1.97 cm 779 MeV 13.3 keV 7.56 cm 7.83 cm World eBrem + 4 -220 um -20 cm 1.97 cm 912 MeV 4.27 keV 1.33 cm 9.16 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -70.2 um -5.3 cm 1.57 cm 580 MeV 14.3 keV 5.78 cm 5.78 cm World eIoni + 2 -70.6 um -10.2 cm 1.86 cm 1.07 GeV 11.9 keV 4.95 cm 10.7 cm World eIoni + 3 -68.3 um -12 cm 1.94 cm 1.25 GeV 4.3 keV 1.78 cm 12.5 cm World eIoni + 4 -70.4 um -14 cm 2.01 cm 1.45 GeV 4.49 keV 2 cm 14.5 cm World eIoni + 5 -73.1 um -16.7 cm 2.09 cm 1.72 GeV 3.41 keV 2.72 cm 17.2 cm World eIoni + 6 -73.4 um -20 cm 2.18 cm 2.05 GeV 4.73 keV 3.27 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -73.1 um -16.7 cm 2.09 cm 2.66 keV 0 eV 0 fm 0 fm World initStep + 1 -81.5 um -16.7 cm 2.09 cm 1.05 MeV 2.66 keV 240 um 240 um World eIoni + 2 -149 um -17.1 cm 2.09 cm 34.3 MeV 522 eV 3.32 mm 3.56 mm World eIoni + 3 -282 um -20 cm 2.08 cm 327 MeV 5.96 keV 2.93 cm 3.28 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -70.4 um -14 cm 2.01 cm 1.15 keV 0 eV 0 fm 0 fm World initStep + 1 -69.4 um -14 cm 2.01 cm 249 keV 1.15 keV 64.7 um 64.7 um World eIoni + 2 -62.3 um -20 cm 2.01 cm 599 MeV 14.5 keV 6.34 cm 6.35 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -68.3 um -12 cm 1.94 cm 1.11 keV 0 eV 0 fm 0 fm World initStep + 1 -68.4 um -12 cm 1.94 cm 236 keV 1.11 keV 61.7 um 61.7 um World eIoni + 2 -69.4 um -20 cm 1.94 cm 798 MeV 21 keV 8.72 cm 8.73 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -70.6 um -10.2 cm 1.86 cm 1.24 keV 0 eV 0 fm 0 fm World initStep + 1 -69 um -10.2 cm 1.87 cm 286 keV 1.24 keV 73 um 73 um World eIoni + 2 -57.6 um -20 cm 1.87 cm 976 MeV 17.3 keV 10.5 cm 10.6 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -70.2 um -5.3 cm 1.57 cm 1.29 keV 0 eV 0 fm 0 fm World initStep + 1 -72.7 um -5.3 cm 1.57 cm 303 keV 1.29 keV 76.7 um 76.7 um World eIoni + 2 -90.7 um -20 cm 1.57 cm 1.47 GeV 37.7 keV 16.5 cm 16.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 33.1 um -1.98 cm 1.15 cm 248 MeV 4.85 keV 2.43 cm 2.43 cm World eIoni + 2 53 um -11.6 cm 1.96 cm 1.21 GeV 21.8 keV 9.64 cm 12.1 cm World eIoni + 3 20.5 um -20 cm 2.23 cm 2.05 GeV 16.5 keV 8.42 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 53 um -11.6 cm 1.96 cm 2.65 keV 0 eV 0 fm 0 fm World initStep + 1 45.2 um -11.6 cm 1.96 cm 1.04 MeV 2.65 keV 238 um 238 um World eIoni + 2 47.3 um -12 cm 1.95 cm 43.5 MeV 788 eV 4.25 mm 4.49 mm World eIoni + 3 103 um -12.9 cm 1.94 cm 129 MeV 1.56 keV 8.54 mm 1.3 cm World eIoni + 4 185 um -15.2 cm 1.93 cm 366 MeV 4.11 keV 2.38 cm 3.68 cm World eIoni + 5 245 um -17.9 cm 1.92 cm 637 MeV 6.22 keV 2.7 cm 6.38 cm World eIoni + 6 280 um -20 cm 1.91 cm 842 MeV 3.79 keV 2.05 cm 8.43 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 245 um -17.9 cm 1.92 cm 25.5 keV 0 eV 0 fm 0 fm World initStep + 1 185 um -18.1 cm 1.92 cm 12.8 MeV 547 eV 1.34 mm 1.34 mm World eIoni + 2 173 um -20 cm 1.83 cm 206 MeV 2.65 keV 1.93 cm 2.07 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 185 um -15.2 cm 1.93 cm 2.23 keV 0 eV 0 fm 0 fm World initStep + 1 178 um -15.3 cm 1.93 cm 769 keV 2.23 keV 179 um 179 um World eIoni + 2 858 um -16.8 cm 1.97 cm 160 MeV 2.39 keV 1.6 cm 1.61 cm World eIoni + 3 1.12 mm -20 cm 2.02 cm 476 MeV 7.58 keV 3.16 cm 4.77 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 103 um -12.9 cm 1.94 cm 4.36 keV 0 eV 0 fm 0 fm World initStep + 1 99.6 um -12.9 cm 1.94 cm 2.5 MeV 4.36 keV 562 um 562 um World eIoni + 2 98.3 um -13 cm 1.94 cm 9.8 MeV 357 eV 730 um 1.29 mm World eIoni + 3 81.3 um -15.9 cm 1.96 cm 301 MeV 6.08 keV 2.91 cm 3.04 cm WorldTransportation + 4 81.3 um -15.9 cm 1.96 cm 301 MeV 0 eV 0 fm 3.04 cm World eIoni + 5 1.36 mm -20 cm 2.15 cm 713 MeV 6.46 keV 4.13 cm 7.17 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 81.3 um -15.9 cm 1.96 cm 3.29 keV 0 eV 0 fm 0 fm World initStep + 1 73.3 um -15.9 cm 1.96 cm 1.52 MeV 3.29 keV 343 um 343 um World eIoni + 2 71.9 um -15.9 cm 1.96 cm 2.29 MeV 0 eV 77.3 um 421 um World eIoni + 3 52.4 um -20 cm 1.96 cm 412 MeV 5.21 keV 4.11 cm 4.15 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 33.1 um -1.98 cm 1.15 cm 8.31 keV 0 eV 0 fm 0 fm World initStep + 1 19 um -1.99 cm 1.15 cm 1.37 MeV 484 eV 144 um 144 um World eIoni + 2 1.23 cm -14.7 cm 1.28 cm 1.27 GeV 19.3 keV 12.8 cm 12.8 cm World eIoni + 3 1.65 cm -19.9 cm 2.13 cm 1.8 GeV 8.23 keV 5.35 cm 18.1 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 1.23 cm -14.7 cm 1.28 cm 3.36 keV 0 eV 0 fm 0 fm World initStep + 1 1.23 cm -14.7 cm 1.28 cm 1.57 MeV 3.36 keV 356 um 356 um World eIoni + 2 1.23 cm -15 cm 1.28 cm 37.5 MeV 1.39 keV 3.6 mm 3.95 mm WorldTransportation + 3 1.23 cm -15 cm 1.28 cm 37.5 MeV2.97e-11 eV 0.156 fm 3.95 mm World eIoni + 4 1.22 cm -20 cm 1.29 cm 530 MeV 5.55 keV 4.92 cm 5.32 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 0 fm -20 cm 2.22 cm 2.05 GeV 41.9 keV 20.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 0 fm -20 cm 2.22 cm 2.05 GeV 40.6 keV 20.5 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 467 um -13.4 cm 1.99 cm 1.39 GeV 24.9 keV 13.9 cm 13.9 cm World eIoni + 2 869 um -20 cm 2.15 cm 2.05 GeV 12.1 keV 6.58 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 467 um -13.4 cm 1.99 cm 1.93 keV 0 eV 0 fm 0 fm World initStep + 1 461 um -13.4 cm 1.99 cm 600 keV 1.93 keV 143 um 143 um World eIoni + 2 433 um -20 cm 1.99 cm 658 MeV 11.4 keV 6.67 cm 6.69 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 335 um -8.96 cm 1.83 cm 946 MeV 19.6 keV 9.45 cm 9.45 cm World eIoni + 2 535 um -20 cm 2.22 cm 2.05 GeV 27.1 keV 11 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 335 um -8.96 cm 1.83 cm 1.12 keV 0 eV 0 fm 0 fm World initStep + 1 339 um -8.96 cm 1.83 cm 241 keV 1.12 keV 62.7 um 62.7 um World eIoni + 2 364 um -20 cm 1.83 cm 1.1 GeV 26.6 keV 12.5 cm 12.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 32.2 um -1.62 cm 1.07 cm 212 MeV 3.23 keV 2.06 cm 2.06 cm World eIoni + 2 121 um -11.2 cm 1.94 cm 1.17 GeV 21.3 keV 9.68 cm 11.7 cm World eIoni + 3 183 um -20 cm 2.23 cm 2.05 GeV 14.8 keV 8.76 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 121 um -11.2 cm 1.94 cm 1.23 keV 0 eV 0 fm 0 fm World initStep + 1 124 um -11.2 cm 1.94 cm 279 keV 1.23 keV 71.4 um 71.4 um World eIoni + 2 148 um -20 cm 1.94 cm 876 MeV 18.8 keV 9.42 cm 9.42 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 32.2 um -1.62 cm 1.07 cm 2.57 keV 0 eV 0 fm 0 fm World initStep + 1 39.9 um -1.63 cm 1.07 cm 988 keV 2.57 keV 226 um 226 um World eIoni + 2 92.3 um -2.18 cm 1.05 cm 56 MeV 1.03 keV 5.51 mm 5.73 mm World eIoni + 3 244 um -3.49 cm 1.03 cm 187 MeV 2.23 keV 1.31 cm 1.88 cm World eIoni + 4 496 um -15.7 cm 9.92 mm 1.41 GeV 24.4 keV 12.2 cm 14.1 cm World eIoni + 5 538 um -20 cm 9.85 mm 1.84 GeV 11.4 keV 4.29 cm 18.4 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 496 um -15.7 cm 9.92 mm 1.39 keV 0 eV 0 fm 0 fm World initStep + 1 499 um -15.7 cm 9.92 mm 344 keV 1.39 keV 86.1 um 86.1 um World eIoni + 2 516 um -20 cm 9.9 mm 429 MeV 9.02 keV 4.39 cm 4.4 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 244 um -3.49 cm 1.03 cm 2.07 keV 0 eV 0 fm 0 fm World initStep + 1 248 um -3.49 cm 1.03 cm 676 keV 2.07 keV 159 um 159 um World eIoni + 2 -6.64 mm -10.3 cm 1.45 cm 683 MeV 10.6 keV 6.92 cm 6.93 cm World eIoni + 3 -6.22 mm -20 cm 1.91 cm 1.65 GeV 17.2 keV 9.68 cm 16.6 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 92.3 um -2.18 cm 1.05 cm 2.37 keV 0 eV 0 fm 0 fm World initStep + 1 86.1 um -2.18 cm 1.05 cm 856 keV 2.37 keV 198 um 198 um World eIoni + 2 264 um -3.01 cm 1.07 cm 83.1 MeV 958 eV 8.24 mm 8.43 mm World eIoni + 3 651 um -20 cm 1.08 cm 1.78 GeV 33.1 keV 17 cm 17.8 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 1.98 um -873 um 2.93 mm 58.7 MeV 660 eV 3.1 mm 3.1 mm World eIoni + 2 -2.72 um -1.14 cm 9.35 mm 164 MeV 3.34 keV 1.26 cm 1.57 cm World eIoni + 3 -110 nm -8.26 cm 1.79 cm 876 MeV 18.4 keV 7.18 cm 8.75 cm World eIoni + 4 -47.4 um -20 cm 2.21 cm 2.05 GeV 26.7 keV 11.7 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -110 nm -8.26 cm 1.79 cm 6.8 keV 0 eV 0 fm 0 fm World initStep + 1 12.4 um -8.31 cm 1.79 cm 5.51 MeV 6.8 keV 1.2 mm 1.2 mm World eIoni + 2 1.57 mm -12.6 cm 1.63 cm 431 MeV 8.01 keV 4.35 cm 4.47 cm World eIoni + 3 1.59 mm -16.9 cm 1.59 cm 869 MeV 7.25 keV 4.38 cm 8.85 cm World eIoni + 4 1.6 mm -20 cm 1.58 cm 1.17 GeV 9.76 keV 3.05 cm 11.9 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 1.59 mm -16.9 cm 1.59 cm 12.5 keV 0 eV 0 fm 0 fm World initStep + 1 1.64 mm -17.1 cm 1.59 cm 14.2 MeV 3.19 keV 2.13 mm 2.13 mm World eIoni + 2 2.38 mm -17.1 cm 1.55 cm 15.6 MeV 0 eV 847 um 2.98 mm World eIoni + 3 6.7 mm -20 cm 1.34 cm 305 MeV 5.64 keV 2.98 cm 3.28 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 1.57 mm -12.6 cm 1.63 cm 31.6 keV 0 eV 0 fm 0 fm World initStep + 1 1.63 mm -13 cm 1.64 cm 47.8 MeV 3.38 keV 5.66 mm 5.66 mm World eIoni + 2 1.35 mm -14.2 cm 1.4 cm 167 MeV 1.2 keV 1.22 cm 1.78 cm World eIoni + 3 1.04 mm -20 cm 1.13 cm 745 MeV 8.37 keV 5.79 cm 7.58 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -2.72 um -1.14 cm 9.35 mm 22 keV 0 eV 0 fm 0 fm World initStep + 1 -84.6 um -1.35 cm 9.36 mm 22.1 MeV 3.92 keV 2.55 mm 2.55 mm World eIoni + 2 -3.5 mm -7.46 cm 2.75 mm 633 MeV 8.22 keV 6.23 cm 6.48 cm World eIoni + 3 -4.92 mm -20 cm 844 um 1.89 GeV 22.1 keV 12.5 cm 19 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -3.5 mm -7.46 cm 2.75 mm 1.09 keV 0 eV 0 fm 0 fm World initStep + 1 -3.51 mm -7.46 cm 2.75 mm 228 keV 1.09 keV 59.8 um 59.8 um World eIoni + 2 -1.45 cm -18.9 cm 2.16 mm 1.14 GeV 27.7 keV 13.2 cm 13.2 cm World eIoni + 3 -1.62 cm -19.9 cm 2.23 mm 1.25 GeV 1.11 keV 1.06 cm 14.3 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 1.98 um -873 um 2.93 mm 3.86 keV 0 eV 0 fm 0 fm World initStep + 1 -12.7 um -1.06 mm 2.93 mm 2.01 MeV 3.86 keV 453 um 453 um World eIoni + 2 -18.3 um -1.8 mm 2.93 mm 9.46 MeV 184 eV 745 um 1.2 mm World eIoni + 3 -379 um -19.2 cm 7.23 mm 1.91 GeV 29.7 keV 19 cm 19.1 cm World eIoni + 4 -369 um -20 cm 7.54 mm 1.99 GeV 937 eV 8.48 mm 19.9 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -379 um -19.2 cm 7.23 mm 1.11 keV 0 eV 0 fm 0 fm World initStep + 1 -380 um -19.2 cm 7.23 mm 236 keV 1.11 keV 61.7 um 61.7 um World eIoni + 2 -388 um -20 cm 7.25 mm 84.7 MeV 1.39 keV 8.52 mm 8.58 mm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 78.9 um -17.4 cm 2.24 cm 1.79 GeV 40 keV 17.9 cm 17.9 cm World eIoni + 2 82.4 um -17.8 cm 2.26 cm 1.83 GeV 607 eV 4.41 mm 18.3 cm World eIoni + 3 97.8 um -20 cm 2.33 cm 2.05 GeV 3.6 keV 2.16 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 82.4 um -17.8 cm 2.26 cm 2.72 keV 0 eV 0 fm 0 fm World initStep + 1 89.9 um -17.9 cm 2.26 cm 816 keV 669 eV 111 um 111 um World eIoni + 2 461 um -20 cm 2.23 cm 216 MeV 2.63 keV 2.16 cm 2.17 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 78.9 um -17.4 cm 2.24 cm 1.38 keV 0 eV 0 fm 0 fm World initStep + 1 79.6 um -17.4 cm 2.24 cm 341 keV 1.38 keV 85.3 um 85.3 um World eIoni + 2 83.4 um -20 cm 2.24 cm 260 MeV 2.24 keV 2.63 cm 2.64 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -191 um -6.42 cm 1.66 cm 692 MeV 9 keV 6.91 cm 6.91 cm World eIoni + 2 -271 um -8.31 cm 1.79 cm 881 MeV 5.98 keV 1.89 cm 8.8 cm World eIoni + 3 -560 um -20 cm 2.21 cm 2.05 GeV 23.2 keV 11.7 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -271 um -8.31 cm 1.79 cm 15 keV 0 eV 0 fm 0 fm World initStep + 1 -224 um -8.42 cm 1.79 cm 12 MeV 1.72 keV 1.41 mm 1.41 mm World eIoni + 2 -559 um -10.1 cm 1.91 cm 176 MeV 3.44 keV 1.65 cm 1.79 cm World eIoni + 3 -571 um -10.2 cm 1.91 cm 187 MeV 107 eV 1.13 mm 1.9 cm World eIoni + 4 -744 um -13.1 cm 1.97 cm 478 MeV 5.09 keV 2.91 cm 4.81 cm World eIoni + 5 -914 um -20 cm 2.02 cm 1.17 GeV 16.4 keV 6.92 cm 11.7 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -744 um -13.1 cm 1.97 cm 1.01 keV 0 eV 0 fm 0 fm World initStep + 1 -746 um -13.1 cm 1.97 cm 202 keV 1.01 keV 53.8 um 53.8 um World eIoni + 2 -759 um -20 cm 1.97 cm 692 MeV 18.6 keV 7.65 cm 7.65 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -571 um -10.2 cm 1.91 cm 16.7 keV 0 eV 0 fm 0 fm World initStep + 1 -613 um -10.2 cm 1.91 cm 5.67 MeV 857 eV 594 um 594 um World eIoni + 2 -1.85 mm -20 cm 1.86 cm 983 MeV 16.8 keV 9.78 cm 9.84 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -559 um -10.1 cm 1.91 cm 2.01 keV 0 eV 0 fm 0 fm World initStep + 1 -553 um -10.1 cm 1.91 cm 645 keV 2.01 keV 153 um 153 um World eIoni + 2 8.34 mm -19.1 cm 1.94 cm 904 MeV 15.1 keV 9.21 cm 9.22 cm World eIoni + 3 9.01 mm -20 cm 1.95 cm 992 MeV 3.09 keV 8.78 mm 10.1 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 8.34 mm -19.1 cm 1.94 cm 2.94 keV 0 eV 0 fm 0 fm World initStep + 1 8.33 mm -19.1 cm 1.94 cm 1.25 MeV 2.94 keV 284 um 284 um World eIoni + 2 8.3 mm -19.3 cm 1.94 cm 19.3 MeV 102 eV 1.81 mm 2.09 mm World eIoni + 3 8.3 mm -20 cm 1.93 cm 88 MeV 2.15 keV 6.86 mm 8.96 mm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -191 um -6.42 cm 1.66 cm 6.1 keV 0 eV 0 fm 0 fm World initStep + 1 -206 um -6.44 cm 1.66 cm 2.11 MeV 580 eV 241 um 241 um World eIoni + 2 1.32 mm -13.8 cm 1.39 cm 741 MeV 13.6 keV 7.41 cm 7.44 cm World eIoni + 3 1.97 mm -18.6 cm 1.24 cm 1.21 GeV 10.4 keV 4.72 cm 12.2 cm World eIoni + 4 2.12 mm -20 cm 1.21 cm 1.36 GeV 2.48 keV 1.45 cm 13.6 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 1.97 mm -18.6 cm 1.24 cm 1.68 keV 0 eV 0 fm 0 fm World initStep + 1 1.97 mm -18.6 cm 1.24 cm 475 keV 1.68 keV 115 um 115 um World eIoni + 2 1.99 mm -20 cm 1.24 cm 145 MeV 3.04 keV 1.45 cm 1.46 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 1.32 mm -13.8 cm 1.39 cm 2.7 keV 0 eV 0 fm 0 fm World initStep + 1 1.32 mm -13.8 cm 1.39 cm 1.08 MeV 2.7 keV 246 um 246 um World eIoni + 2 1.32 mm -13.9 cm 1.39 cm 4.44 MeV 0 eV 336 um 582 um World eIoni + 3 2.04 mm -18 cm 1.43 cm 416 MeV 7.89 keV 4.12 cm 4.18 cm World eIoni + 4 2.81 mm -20 cm 1.41 cm 616 MeV 3.89 keV 2 cm 6.18 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 8 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 2.04 mm -18 cm 1.43 cm 1.73 keV 0 eV 0 fm 0 fm World initStep + 1 2.04 mm -18 cm 1.43 cm 496 keV 1.73 keV 120 um 120 um World eIoni + 2 2.03 mm -20 cm 1.43 cm 200 MeV 3.12 keV 2.01 cm 2.02 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -15.3 um -1.22 cm 9.58 mm 172 MeV 2.47 keV 1.65 cm 1.65 cm World eIoni + 2 -21.9 um -4.59 cm 1.51 cm 509 MeV 4.36 keV 3.42 cm 5.07 cm World eIoni + 3 -31.5 um -14.3 cm 2.05 cm 1.48 GeV 21.7 keV 9.71 cm 14.8 cm World eIoni + 4 -37.9 um -20 cm 2.22 cm 2.05 GeV 13.3 keV 5.72 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -31.5 um -14.3 cm 2.05 cm 1.18 keV 0 eV 0 fm 0 fm World initStep + 1 -30.6 um -14.3 cm 2.05 cm 260 keV 1.18 keV 67.1 um 67.1 um World eIoni + 2 -24 um -20 cm 2.05 cm 572 MeV 12.4 keV 6.02 cm 6.02 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -21.9 um -4.59 cm 1.51 cm 1.85 keV 0 eV 0 fm 0 fm World initStep + 1 -16 um -4.6 cm 1.51 cm 556 keV 1.85 keV 133 um 133 um World eIoni + 2 15.7 um -20 cm 1.51 cm 1.54 GeV 24.8 keV 16.1 cm 16.1 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -15.3 um -1.22 cm 9.58 mm 2.08 keV 0 eV 0 fm 0 fm World initStep + 1 -14.6 um -1.23 cm 9.58 mm 690 keV 2.08 keV 161 um 161 um World eIoni + 2 -4.16 mm -5.9 cm 7.87 mm 468 MeV 5.84 keV 4.72 cm 4.73 cm World eIoni + 3 -5.32 mm -7.33 cm 8.02 mm 611 MeV 4.28 keV 1.43 cm 6.16 cm World eIoni + 4 -6.86 mm -9.89 cm 8.22 mm 867 MeV 3.61 keV 2.57 cm 8.73 cm World eIoni + 5 -8.74 mm -14.5 cm 8.46 mm 1.33 GeV 9.86 keV 4.63 cm 13.4 cm World eIoni + 6 -9.7 mm -17.8 cm 8.58 mm 1.65 GeV 7.57 keV 3.25 cm 16.6 cm World eIoni + 7 -1.02 cm -20 cm 8.65 mm 1.88 GeV 3.7 keV 2.21 cm 18.8 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -9.7 mm -17.8 cm 8.58 mm 7.9 keV 0 eV 0 fm 0 fm World initStep + 1 -9.7 mm -17.8 cm 8.56 mm 4.41 MeV 2.77 keV 542 um 542 um World eIoni + 2 -1.14 cm -20 cm 7.38 mm 220 MeV 2.91 keV 2.2 cm 2.25 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -8.74 mm -14.5 cm 8.46 mm 1.08 keV 0 eV 0 fm 0 fm World initStep + 1 -8.74 mm -14.5 cm 8.47 mm 225 keV 1.08 keV 59.2 um 59.2 um World eIoni + 2 -8.76 mm -20 cm 8.48 mm 546 MeV 13.8 keV 5.82 cm 5.83 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -6.86 mm -9.89 cm 8.22 mm 1.43 keV 0 eV 0 fm 0 fm World initStep + 1 -6.86 mm -9.89 cm 8.22 mm 363 keV 1.43 keV 90.1 um 90.1 um World eIoni + 2 -6.89 mm -20 cm 8.23 mm 1.01 GeV 20.4 keV 10.7 cm 10.7 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -5.32 mm -7.33 cm 8.02 mm 1.91 keV 0 eV 0 fm 0 fm World initStep + 1 -5.32 mm -7.34 cm 8.03 mm 589 keV 1.91 keV 140 um 140 um World eIoni + 2 -5.33 mm -20 cm 8.06 mm 1.27 GeV 19.9 keV 13.1 cm 13.1 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 231 um -7.33 cm 1.72 cm 783 MeV 14.5 keV 7.82 cm 7.82 cm World eIoni + 2 257 um -8.31 cm 1.78 cm 881 MeV 2.31 keV 9.78 mm 8.8 cm World eIoni + 3 442 um -20 cm 2.19 cm 2.05 GeV 30.3 keV 11.7 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 257 um -8.31 cm 1.78 cm 7.37 keV 0 eV 0 fm 0 fm World initStep + 1 288 um -8.37 cm 1.78 cm 6.36 MeV 7.37 keV 1.33 mm 1.33 mm World eIoni + 2 -1.29 mm -8.6 cm 1.77 cm 29.5 MeV 349 eV 3.03 mm 4.36 mm World eIoni + 3 -3.17 mm -12.8 cm 1.77 cm 453 MeV 6.66 keV 4.24 cm 4.68 cm World eIoni + 4 -3.22 mm -13.2 cm 1.77 cm 490 MeV 678 eV 3.74 mm 5.05 cm World eIoni + 5 -3.86 mm -20 cm 1.77 cm 1.17 GeV 14.6 keV 6.79 cm 11.8 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -3.22 mm -13.2 cm 1.77 cm 13.4 keV 0 eV 0 fm 0 fm World initStep + 1 -3.17 mm -13.4 cm 1.77 cm 15.7 MeV 3.07 keV 2.27 mm 2.27 mm World eIoni + 2 -1.15 mm -13.5 cm 1.85 cm 29.7 MeV 1.08 keV 2.74 mm 5.01 mm World eIoni + 3 2.9 mm -17.1 cm 2.02 cm 386 MeV 5.62 keV 3.61 cm 4.11 cm World eIoni + 4 3.68 mm -20 cm 2.06 cm 680 MeV 4.28 keV 2.93 cm 7.05 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 5 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 2.9 mm -17.1 cm 2.02 cm 15.1 keV 0 eV 0 fm 0 fm World initStep + 1 2.92 mm -17.1 cm 2.02 cm 6.67 MeV 1.53 keV 716 um 716 um World eIoni + 2 5.9 mm -20 cm 1.94 cm 293 MeV 4.18 keV 2.98 cm 3.05 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -3.17 mm -12.8 cm 1.77 cm 1.13 keV 0 eV 0 fm 0 fm World initStep + 1 -3.17 mm -12.8 cm 1.77 cm 242 keV 1.13 keV 63 um 63 um World eIoni + 2 -3.19 mm -20 cm 1.77 cm 716 MeV 16.9 keV 7.72 cm 7.73 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 231 um -7.33 cm 1.72 cm 1.04 keV 0 eV 0 fm 0 fm World initStep + 1 229 um -7.33 cm 1.72 cm 213 keV 1.04 keV 56.4 um 56.4 um World eIoni + 2 -2.35 cm -17.6 cm 1.45 cm 1.03 GeV 35.2 keV 11.9 cm 11.9 cm World eIoni + 3 -7.92 cm -18.4 cm 2.31 cm 1.1 GeV 10.6 keV 5.76 cm 17.6 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -183 um -5.94 cm 1.63 cm 644 MeV 13.9 keV 6.42 cm 6.42 cm World eIoni + 2 -469 um -20 cm 2.22 cm 2.05 GeV 24.3 keV 14.1 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -183 um -5.94 cm 1.63 cm 1.33 keV 0 eV 0 fm 0 fm World initStep + 1 -183 um -5.94 cm 1.63 cm 320 keV 1.33 keV 80.6 um 80.6 um World eIoni + 2 -185 um -20 cm 1.63 cm 1.41 GeV 28.4 keV 15.5 cm 15.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 24.8 um -1.72 cm 1.1 cm 222 MeV 4.55 keV 2.17 cm 2.17 cm World eIoni + 2 61 um -7.85 cm 1.77 cm 835 MeV 10.8 keV 6.17 cm 8.34 cm World eIoni + 3 140 um -19.8 cm 2.22 cm 2.03 GeV 24.7 keV 12 cm 20.3 cm World eIoni + 4 141 um -20 cm 2.23 cm 2.05 GeV 555 eV 1.83 mm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 140 um -19.8 cm 2.22 cm 1.51 keV 0 eV 0 fm 0 fm World initStep + 1 142 um -19.8 cm 2.22 cm 396 keV 1.51 keV 97.5 um 97.5 um World eIoni + 2 146 um -20 cm 2.22 cm 18.4 MeV 320 eV 1.8 mm 1.9 mm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 61 um -7.85 cm 1.77 cm 2.99 keV 0 eV 0 fm 0 fm World initStep + 1 71.6 um -7.86 cm 1.77 cm 1.28 MeV 2.99 keV 292 um 292 um World eIoni + 2 183 um -8.6 cm 1.79 cm 75.7 MeV 1.38 keV 7.45 mm 7.74 mm World eIoni + 3 440 um -11 cm 1.82 cm 317 MeV 3.41 keV 2.42 cm 3.19 cm World eIoni + 4 549 um -13.8 cm 1.84 cm 594 MeV 5.19 keV 2.77 cm 5.96 cm World eIoni + 5 679 um -20 cm 1.86 cm 1.22 GeV 12.3 keV 6.21 cm 12.2 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 549 um -13.8 cm 1.84 cm 1.75 keV 0 eV 0 fm 0 fm World initStep + 1 546 um -13.8 cm 1.84 cm 505 keV 1.75 keV 122 um 122 um World eIoni + 2 529 um -20 cm 1.84 cm 621 MeV 10.9 keV 6.32 cm 6.33 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 440 um -11 cm 1.82 cm 9.15 keV 0 eV 0 fm 0 fm World initStep + 1 448 um -11.1 cm 1.83 cm 9.13 MeV 3.31 keV 1.65 mm 1.65 mm World eIoni + 2 1.79 mm -11.6 cm 1.99 cm 63 MeV 517 eV 6.01 mm 7.65 mm World eIoni + 3 3.31 mm -20 cm 2.18 cm 898 MeV 18.7 keV 8.36 cm 9.13 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 24.8 um -1.72 cm 1.1 cm 5.14 keV 0 eV 0 fm 0 fm World initStep + 1 42.9 um -1.75 cm 1.09 cm 3.34 MeV 5.14 keV 748 um 748 um World eIoni + 2 46.2 um -1.78 cm 1.09 cm 5.85 MeV 0 eV 252 um 1e+03 um World eIoni + 3 82.8 um -20 cm 1.09 cm 1.83 GeV 22.6 keV 18.2 cm 18.3 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 538 um -12.8 cm 1.99 cm 1.33 GeV 25.9 keV 13.3 cm 13.3 cm World eIoni + 2 805 um -20 cm 2.21 cm 2.05 GeV 16 keV 7.2 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 538 um -12.8 cm 1.99 cm 1.9 keV 0 eV 0 fm 0 fm World initStep + 1 544 um -12.8 cm 1.99 cm 584 keV 1.9 keV 139 um 139 um World eIoni + 2 568 um -20 cm 1.99 cm 720 MeV 10.6 keV 7.32 cm 7.33 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -66.8 um -4.75 cm 1.52 cm 525 MeV 7.79 keV 5.23 cm 5.23 cm World eIoni + 2 -113 um -12.1 cm 1.96 cm 1.26 GeV 11.6 keV 7.4 cm 12.6 cm World eIoni + 3 -143 um -20 cm 2.21 cm 2.05 GeV 17.3 keV 7.87 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -113 um -12.1 cm 1.96 cm 1.02 keV 0 eV 0 fm 0 fm World initStep + 1 -111 um -12.1 cm 1.96 cm 204 keV 1.02 keV 54.3 um 54.3 um World eIoni + 2 -96.2 um -20 cm 1.97 cm 787 MeV 20.5 keV 8.82 cm 8.83 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -66.8 um -4.75 cm 1.52 cm 3.6 keV 0 eV 0 fm 0 fm World initStep + 1 -57.1 um -4.76 cm 1.52 cm 1.78 MeV 3.6 keV 401 um 401 um World eIoni + 2 -34.8 um -5.18 cm 1.52 cm 42.9 MeV 1.44 keV 4.11 mm 4.51 mm World eIoni + 3 -24.2 um -5.59 cm 1.51 cm 84.2 MeV 456 eV 4.13 mm 8.65 mm World eIoni + 4 -35.8 um -9.9 cm 1.5 cm 515 MeV 5.95 keV 4.31 cm 5.17 cm World eIoni + 5 -64.8 um -18.9 cm 1.5 cm 1.42 GeV 16.5 keV 9.04 cm 14.2 cm World eIoni + 6 -66.7 um -20 cm 1.5 cm 1.53 GeV 1.46 keV 1.06 cm 15.3 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -64.8 um -18.9 cm 1.5 cm 2.36 keV 0 eV 0 fm 0 fm World initStep + 1 -68.3 um -18.9 cm 1.5 cm 849 keV 2.36 keV 197 um 197 um World eIoni + 2 -72.8 um -19 cm 1.5 cm 6.43 MeV 208 eV 558 um 755 um World eIoni + 3 -87.8 um -19.6 cm 1.49 cm 71.2 MeV 293 eV 6.48 mm 7.23 mm World eIoni + 4 -76.4 um -20 cm 1.49 cm 106 MeV 452 eV 3.51 mm 1.07 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 6 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -87.8 um -19.6 cm 1.49 cm 1.08 keV 0 eV 0 fm 0 fm World initStep + 1 -87.1 um -19.7 cm 1.49 cm 224 keV 1.08 keV 59 um 59 um World eIoni + 2 -84.1 um -20 cm 1.49 cm 35.1 MeV 662 eV 3.5 mm 3.56 mm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -35.8 um -9.9 cm 1.5 cm 2.74 keV 0 eV 0 fm 0 fm World initStep + 1 -43.7 um -9.91 cm 1.5 cm 1.11 MeV 2.74 keV 253 um 253 um World eIoni + 2 -249 um -10.8 cm 1.48 cm 89.1 MeV 1.15 keV 8.8 mm 9.06 mm World eIoni + 3 -606 um -13.5 cm 1.46 cm 358 MeV 6.89 keV 2.69 cm 3.6 cm World eIoni + 4 -751 um -16.6 cm 1.45 cm 668 MeV 4.73 keV 3.1 cm 6.7 cm World eIoni + 5 -847 um -20 cm 1.44 cm 1.01 GeV 6.59 keV 3.42 cm 10.1 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 5 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -751 um -16.6 cm 1.45 cm 1.23 keV 0 eV 0 fm 0 fm World initStep + 1 -752 um -16.6 cm 1.45 cm 282 keV 1.23 keV 72.1 um 72.1 um World eIoni + 2 -758 um -20 cm 1.45 cm 342 MeV 7.08 keV 3.51 cm 3.52 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 5 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -606 um -13.5 cm 1.46 cm 174 keV 0 eV 0 fm 0 fm World initStep + 1 -6.48 mm -16 cm 1.51 cm 257 MeV 8.53 keV 2.68 cm 2.68 cm World eIoni + 2 -1.56 cm -19.9 cm 1.43 cm 647 MeV 7.24 keV 4.01 cm 6.7 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 8 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -6.48 mm -16 cm 1.51 cm 1.62 keV 0 eV 0 fm 0 fm World initStep + 1 -6.48 mm -16 cm 1.51 cm 443 keV 1.62 keV 108 um 108 um World eIoni + 2 -6.46 mm -20 cm 1.51 cm 395 MeV 6.1 keV 4 cm 4.01 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -24.2 um -5.59 cm 1.51 cm 6.66 keV 0 eV 0 fm 0 fm World initStep + 1 -5.17 um -5.63 cm 1.51 cm 4.91 MeV 3.21 keV 794 um 794 um World eIoni + 2 1.89 mm -20 cm 1.33 cm 1.44 GeV 21.3 keV 14.4 cm 14.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 13.8 um -2.36 cm 1.23 cm 286 MeV 4.89 keV 2.82 cm 2.82 cm World eIoni + 2 16.4 um -4.72 cm 1.54 cm 522 MeV 4.88 keV 2.38 cm 5.2 cm World eIoni + 3 18.2 um -5.45 cm 1.6 cm 595 MeV 1.11 keV 7.38 mm 5.94 cm World eIoni + 4 37.2 um -20 cm 2.23 cm 2.05 GeV 28.9 keV 14.6 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 18.2 um -5.45 cm 1.6 cm 2.64 keV 0 eV 0 fm 0 fm World initStep + 1 14.2 um -5.46 cm 1.6 cm 1.03 MeV 2.64 keV 236 um 236 um World eIoni + 2 15 um -5.59 cm 1.6 cm 13.4 MeV 58.8 eV 1.24 mm 1.47 mm World eIoni + 3 26.3 um -6.12 cm 1.6 cm 66.5 MeV 408 eV 5.32 mm 6.79 mm World eIoni + 4 -146 um -17.4 cm 1.64 cm 1.2 GeV 20.7 keV 11.3 cm 12 cm World eIoni + 5 -211 um -20 cm 1.64 cm 1.45 GeV 6.12 keV 2.57 cm 14.6 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -146 um -17.4 cm 1.64 cm 1.13 keV 0 eV 0 fm 0 fm World initStep + 1 -149 um -17.4 cm 1.64 cm 245 keV 1.13 keV 63.6 um 63.6 um World eIoni + 2 -165 um -20 cm 1.64 cm 257 MeV 3.75 keV 2.63 cm 2.64 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 26.3 um -6.12 cm 1.6 cm 38.7 keV 0 eV 0 fm 0 fm World initStep + 1 138 um -6.73 cm 1.59 cm 63.8 MeV 5.59 keV 7.49 mm 7.49 mm World eIoni + 2 -398 um -7.07 cm 1.53 cm 97.5 MeV 203 eV 3.46 mm 1.1 cm World eIoni + 3 -2.16 mm -10.1 cm 1.35 cm 397 MeV 3.99 keV 3.01 cm 4.1 cm World eIoni + 4 -2.51 mm -11.3 cm 1.31 cm 525 MeV 2.2 keV 1.28 cm 5.38 cm World eIoni + 5 -3.49 mm -17.8 cm 1.2 cm 1.17 GeV 14.1 keV 6.42 cm 11.8 cm World eIoni + 6 -3.71 mm -20 cm 1.18 cm 1.39 GeV 3.91 keV 2.23 cm 14 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 6 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -3.49 mm -17.8 cm 1.2 cm 1.66 keV 0 eV 0 fm 0 fm World initStep + 1 -3.49 mm -17.8 cm 1.2 cm 465 keV 1.66 keV 113 um 113 um World eIoni + 2 -3.47 mm -20 cm 1.2 cm 223 MeV 2.69 keV 2.25 cm 2.26 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 6 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -2.51 mm -11.3 cm 1.31 cm 1.32 keV 0 eV 0 fm 0 fm World initStep + 1 -2.5 mm -11.3 cm 1.31 cm 314 keV 1.32 keV 79.4 um 79.4 um World eIoni + 2 -2.49 mm -20 cm 1.31 cm 865 MeV 16.3 keV 9.17 cm 9.18 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 6 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -2.16 mm -10.1 cm 1.35 cm 3.62 keV 0 eV 0 fm 0 fm World initStep + 1 -2.17 mm -10.1 cm 1.35 cm 1.8 MeV 3.62 keV 405 um 405 um World eIoni + 2 -2.24 mm -10.5 cm 1.35 cm 43.7 MeV 325 eV 4.2 mm 4.6 mm World eIoni + 3 -2.6 mm -15.4 cm 1.36 cm 530 MeV 8.64 keV 4.87 cm 5.33 cm World eIoni + 4 -2.67 mm -20 cm 1.36 cm 993 MeV 9.78 keV 4.63 cm 9.96 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 8 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -2.6 mm -15.4 cm 1.36 cm 12.8 keV 0 eV 0 fm 0 fm World initStep + 1 -2.56 mm -15.5 cm 1.36 cm 13.2 MeV 3.25 keV 1.8 mm 1.8 mm World eIoni + 2 75.6 um -17.4 cm 1.73 cm 207 MeV 2.56 keV 2.06 cm 2.24 cm World eIoni + 3 931 um -20 cm 1.81 cm 464 MeV 5.56 keV 2.57 cm 4.81 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 11 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 75.6 um -17.4 cm 1.73 cm 1.67 keV 0 eV 0 fm 0 fm World initStep + 1 80.2 um -17.4 cm 1.73 cm 468 keV 1.67 keV 114 um 114 um World eIoni + 2 101 um -20 cm 1.73 cm 257 MeV 3.65 keV 2.58 cm 2.6 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 15 um -5.59 cm 1.6 cm 22.9 keV 0 eV 0 fm 0 fm World initStep + 1 -56.1 um -5.88 cm 1.61 cm 30.7 MeV 3.62 keV 3.8 mm 3.8 mm World eIoni + 2 -1.39 mm -7.02 cm 1.77 cm 145 MeV 722 eV 1.17 cm 1.55 cm World eIoni + 3 -2.87 mm -15.2 cm 1.96 cm 965 MeV 18.6 keV 8.2 cm 9.75 cm World eIoni + 4 -3.01 mm -17.4 cm 1.97 cm 1.18 GeV 4.45 keV 2.19 cm 11.9 cm World eIoni + 5 -3.14 mm -20 cm 1.99 cm 1.44 GeV 3.55 keV 2.59 cm 14.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 5 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -3.01 mm -17.4 cm 1.97 cm 1.46 keV 0 eV 0 fm 0 fm World initStep + 1 -3.01 mm -17.4 cm 1.98 cm 373 keV 1.46 keV 92.5 um 92.5 um World eIoni + 2 -3.03 mm -20 cm 1.98 cm 259 MeV 5.49 keV 2.62 cm 2.63 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 5 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -2.87 mm -15.2 cm 1.96 cm 4.65 keV 0 eV 0 fm 0 fm World initStep + 1 -2.85 mm -15.2 cm 1.96 cm 2.8 MeV 4.65 keV 629 um 629 um World eIoni + 2 -2.85 mm -16.4 cm 1.94 cm 114 MeV 490 eV 1.11 cm 1.18 cm World eIoni + 3 -2.75 mm -18.9 cm 1.89 cm 363 MeV 7.74 keV 2.49 cm 3.67 cm World eIoni + 4 -2.73 mm -20 cm 1.88 cm 478 MeV 2.16 keV 1.15 cm 4.81 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 13 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -2.75 mm -18.9 cm 1.89 cm 1.53 keV 0 eV 0 fm 0 fm World initStep + 1 -2.75 mm -18.9 cm 1.89 cm 404 keV 1.53 keV 99.4 um 99.4 um World eIoni + 2 -2.75 mm -20 cm 1.89 cm 115 MeV 5.6 keV 1.15 cm 1.16 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 16.4 um -4.72 cm 1.54 cm 13.8 keV 0 eV 0 fm 0 fm World initStep + 1 -10 um -4.87 cm 1.53 cm 16.3 MeV 4.95 keV 2.32 mm 2.32 mm World eIoni + 2 -1.04 mm -5.06 cm 1.46 cm 34.9 MeV 289 eV 2.28 mm 4.6 mm World eIoni + 3 -4.22 mm -13.9 cm 1.2 cm 917 MeV 15 keV 8.85 cm 9.31 cm World eIoni + 4 -4.37 mm -20 cm 1.15 cm 1.53 GeV 12.1 keV 6.11 cm 15.4 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -4.22 mm -13.9 cm 1.2 cm 1.04 keV 0 eV 0 fm 0 fm World initStep + 1 -4.22 mm -13.9 cm 1.2 cm 211 keV 1.04 keV 55.9 um 55.9 um World eIoni + 2 -4.2 mm -20 cm 1.2 cm 611 MeV 12.8 keV 6.63 cm 6.63 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 13.8 um -2.36 cm 1.23 cm 2.35 keV 0 eV 0 fm 0 fm World initStep + 1 21.4 um -2.37 cm 1.23 cm 841 keV 2.35 keV 195 um 195 um World eIoni + 2 167 um -3.4 cm 1.19 cm 104 MeV 1.04 keV 1.03 cm 1.05 cm World eIoni + 3 157 um -4.51 cm 1.16 cm 214 MeV 2.66 keV 1.11 cm 2.16 cm World eIoni + 4 146 um -7.93 cm 1.11 cm 557 MeV 7.21 keV 3.42 cm 5.58 cm World eIoni + 5 109 um -19.3 cm 1.06 cm 1.69 GeV 23.9 keV 11.4 cm 16.9 cm World eIoni + 6 106 um -20 cm 1.06 cm 1.76 GeV 1.13 keV 7.07 mm 17.7 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 109 um -19.3 cm 1.06 cm 23.2 keV 0 eV 0 fm 0 fm World initStep + 1 -41.1 um -19.6 cm 1.22 cm 31.2 MeV 3.89 keV 3.85 mm 3.85 mm World eIoni + 2 -103 um -19.8 cm 1.29 cm 54.8 MeV 200 eV 2.46 mm 6.31 mm World msc + 3 -128 um -20 cm 1.32 cm 68.7 MeV 44.6 eV 1.42 mm 7.73 mm World msc + 4 -133 um -20 cm 1.32 cm 72.2 MeV 69.8 eV 348 um 8.07 mm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 146 um -7.93 cm 1.11 cm 1.16 keV 0 eV 0 fm 0 fm World initStep + 1 149 um -7.93 cm 1.11 cm 254 keV 1.16 keV 65.8 um 65.8 um World eIoni + 2 168 um -20 cm 1.11 cm 1.21 GeV 23.2 keV 13.7 cm 13.7 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 157 um -4.51 cm 1.16 cm 2.78 keV 0 eV 0 fm 0 fm World initStep + 1 151 um -4.52 cm 1.16 cm 1.13 MeV 2.78 keV 258 um 258 um World eIoni + 2 155 um -4.67 cm 1.15 cm 16.1 MeV 132 eV 1.5 mm 1.76 mm World eIoni + 3 -172 um -9.98 cm 1.15 cm 548 MeV 12.1 keV 5.32 cm 5.49 cm World eIoni + 4 -386 um -14 cm 1.16 cm 948 MeV 6.06 keV 4.01 cm 9.5 cm World eIoni + 5 -575 um -20 cm 1.17 cm 1.55 GeV 11.7 keV 6.01 cm 15.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 17 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -386 um -14 cm 1.16 cm 2.24 keV 0 eV 0 fm 0 fm World initStep + 1 -393 um -14 cm 1.16 cm 772 keV 2.24 keV 180 um 180 um World eIoni + 2 868 um -16.7 cm 1.04 cm 268 MeV 2.12 keV 2.69 cm 2.71 cm World eIoni + 3 1.63 mm -20 cm 9.7 mm 601 MeV 8.38 keV 3.33 cm 6.03 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 21 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 868 um -16.7 cm 1.04 cm 1.32 keV 0 eV 0 fm 0 fm World initStep + 1 867 um -16.7 cm 1.04 cm 316 keV 1.32 keV 79.7 um 79.7 um World eIoni + 2 858 um -20 cm 1.04 cm 333 MeV 4.96 keV 3.39 cm 3.4 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 17 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -172 um -9.98 cm 1.15 cm 1.03 keV 0 eV 0 fm 0 fm World initStep + 1 -169 um -9.99 cm 1.16 cm 209 keV 1.03 keV 55.4 um 55.4 um World eIoni + 2 -673 um -19.9 cm 1.08 cm 992 MeV 27 keV 11.5 cm 11.5 cm World eIoni + 3 -852 um -20 cm 1.05 cm 1 GeV 202 eV 992 um 11.6 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 -50.2 um -3.33 cm 1.38 cm 383 MeV 9.59 keV 3.8 cm 3.8 cm World eIoni + 2 -71 um -6.33 cm 1.67 cm 683 MeV 7.08 keV 3.01 cm 6.81 cm World eBrem + 3 -76.6 um -13 cm 2.02 cm 1.35 GeV 13.5 keV 6.66 cm 13.5 cm World eIoni + 4 -82.1 um -20 cm 2.23 cm 2.05 GeV 11.4 keV 7.03 cm 20.5 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -76.6 um -13 cm 2.02 cm 14.1 keV 0 eV 0 fm 0 fm World initStep + 1 -29.4 um -13.1 cm 2.02 cm 11 MeV 4.2 keV 1.31 mm 1.31 mm World eIoni + 2 -646 um -13.5 cm 2.25 cm 52.9 MeV 863 eV 5.08 mm 6.39 mm World eIoni + 3 -885 um -14.2 cm 2.34 cm 119 MeV 2.31 keV 6.73 mm 1.31 cm World eIoni + 4 -1.34 mm -20 cm 2.54 cm 703 MeV 13.6 keV 5.84 cm 7.15 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -885 um -14.2 cm 2.34 cm 1.04 keV 0 eV 0 fm 0 fm World initStep + 1 -886 um -14.2 cm 2.34 cm 211 keV 1.04 keV 56 um 56 um World eIoni + 2 -889 um -20 cm 2.34 cm 584 MeV 16.5 keV 6.3 cm 6.3 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -646 um -13.5 cm 2.25 cm 2.43 keV 0 eV 0 fm 0 fm World initStep + 1 -644 um -13.5 cm 2.25 cm 899 keV 2.43 keV 207 um 207 um World eIoni + 2 115 um -15.2 cm 2.23 cm 170 MeV 1.15 keV 1.69 cm 1.71 cm World eIoni + 3 1.15 mm -20 cm 2.21 cm 650 MeV 10.3 keV 4.81 cm 6.52 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -29.4 um -13.1 cm 2.02 cm 20.1 keV 0 eV 0 fm 0 fm World initStep + 1 -57.2 um -13.3 cm 2.02 cm 25.8 MeV 4.4 keV 3.29 mm 3.29 mm World eIoni + 2 -1.24 mm -13.5 cm 2.21 cm 44.4 MeV 1.34 keV 2.96 mm 6.26 mm World eIoni + 3 -3.27 mm -14.9 cm 2.54 cm 187 MeV 2.44 keV 1.49 cm 2.11 cm World eIoni + 4 -5.03 mm -20 cm 2.82 cm 693 MeV 9.81 keV 5.07 cm 7.19 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 5 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -3.27 mm -14.9 cm 2.54 cm 1.06 keV 0 eV 0 fm 0 fm World initStep + 1 -3.27 mm -14.9 cm 2.54 cm 219 keV 1.06 keV 57.7 um 57.7 um World eIoni + 2 -3.25 mm -20 cm 2.54 cm 507 MeV 7.58 keV 5.38 cm 5.39 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -71 um -6.33 cm 1.67 cm 102 keV 0 eV 0 fm 0 fm World initStep + 1 -197 um -20 cm 2.71 cm 102 keV 0 eV 13.7 cm 13.7 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 -50.2 um -3.33 cm 1.38 cm 1.07 keV 0 eV 0 fm 0 fm World initStep + 1 -51.5 um -3.33 cm 1.38 cm 221 keV 1.07 keV 58.2 um 58.2 um World eIoni + 2 4.13 cm -14.2 cm -6.55 mm 1.09 GeV 29.1 keV 12.6 cm 12.6 cm World eIoni + 3 8.57 cm -18.1 cm -1.92 cm 1.47 GeV 14.2 keV 6.06 cm 18.6 cm OutOfWorldTransportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process + 0 0 fm 0 fm 0 fm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 0 fm -20 cm 2.22 cm 2.05 GeV 42.5 keV 20.5 cm 20.5 cm OutOfWorldTransportation Run terminated. Run Summary Number of events processed : 100 - User=0.050000s Real=0.061151s Sys=0.010000s + User=0.020000s Real=0.043931s Sys=0.020000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # /calor/setAbsMat Air /calor/setWorldMat Xe20CO2 @@ -5681,10 +5649,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -5708,10 +5677,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -5739,9 +5709,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -5755,14 +5725,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -5771,9 +5741,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -5785,9 +5755,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -5798,9 +5768,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -5814,14 +5784,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -5830,9 +5800,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -5846,14 +5816,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -5862,9 +5832,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -5878,14 +5848,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -5894,9 +5864,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -5911,14 +5881,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -5927,9 +5897,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -5944,14 +5914,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -5960,9 +5930,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -5976,14 +5946,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -5992,9 +5962,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -6008,14 +5978,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -6040,7 +6010,7 @@ Index : 1 used in the geometry : No Index : 2 used in the geometry : Yes Material : Xe20CO2 Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 990 eV e- 1.27787 keV e+ 1.25587 keV proton 70 keV + Energy thresholds : gamma 990 eV e- 1.28943 keV e+ 1.26711 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -6054,178 +6024,37 @@ Index : 2 used in the geometry : Yes ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.65 cm -9.64 cm 1 cm 50 MeV 0 eV 0 fm 0 fm World initStep - 1 6.66 cm -11.6 cm 2.13 cm 249 MeV 10.6 keV 2.45 cm 2.45 cm World eIoni - 2 6.66 cm -12.7 cm 2.31 cm 357 MeV 5.14 keV 1.09 cm 3.54 cm World eIoni - 3 6.66 cm -12.9 cm 2.34 cm 378 MeV 1.9 keV 2.17 mm 3.75 cm World eIoni - 4 6.68 cm -17.5 cm 2.72 cm 840 MeV 26 keV 4.63 cm 8.38 cm World eIoni - 5 6.68 cm -17.7 cm 2.73 cm 855 MeV 1.15 keV 1.57 mm 8.54 cm World eIoni - 6 6.68 cm -20.8 cm 2.87 cm 1.16 GeV 20 keV 3.08 cm 11.6 cm World eIoni - 7 6.68 cm -23.1 cm 2.96 cm 1.39 GeV 20 keV 2.32 cm 13.9 cm World eIoni - 8 6.68 cm -24.1 cm 2.99 cm 1.49 GeV 13.3 keV 1 cm 14.9 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.68 cm -23.1 cm 2.96 cm 1.84 keV 0 eV 0 fm 0 fm World initStep - 1 6.68 cm -23.1 cm 2.96 cm 115 keV 1.84 keV 90.1 um 90.1 um World eIoni - 2 7.12 cm -23.6 cm 2.79 cm 50 MeV 9.13 keV 8.08 mm 8.17 mm World msc - 3 7.36 cm -23.9 cm 2.7 cm 80.2 MeV 1.58 keV 3.99 mm 1.22 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.68 cm -20.8 cm 2.87 cm 4.53 keV 0 eV 0 fm 0 fm World initStep - 1 6.68 cm -20.8 cm 2.87 cm 409 keV 4.53 keV 333 um 333 um World eIoni - 2 6.68 cm -21 cm 2.89 cm 19.1 MeV 2.17 keV 1.9 mm 2.23 mm World eIoni - 3 6.68 cm -21.1 cm 2.89 cm 34 MeV 1.01 keV 1.49 mm 3.72 mm World eIoni - 4 6.65 cm -24 cm 2.91 cm 324 MeV 14.2 keV 2.9 cm 3.27 cm World eIoni - 5 6.65 cm -24.1 cm 2.91 cm 333 MeV 684 eV 867 um 3.36 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.65 cm -24 cm 2.91 cm 196 keV 0 eV 0 fm 0 fm World initStep - 1 6.65 cm -24.1 cm 2.92 cm 9.21 MeV 825 eV 936 um 936 um OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.68 cm -21.1 cm 2.89 cm 1.48 keV 0 eV 0 fm 0 fm World initStep - 1 6.68 cm -21.1 cm 2.89 cm 87.5 keV 1.48 keV 67.1 um 67.1 um World eIoni - 2 6.64 cm -21.6 cm 2.03 cm 44.3 MeV 8.67 keV 1.26 cm 1.26 cm World eIoni - 3 6.84 cm -22.4 cm 1.18 cm 131 MeV 7.35 keV 1.36 cm 2.62 cm World msc - 4 6.92 cm -24 cm 8.35 mm 291 MeV 11.3 keV 1.64 cm 4.26 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.68 cm -17.7 cm 2.73 cm 95.5 keV 0 eV 0 fm 0 fm World initStep - 1 6.67 cm -18.2 cm 2.75 cm 51.5 MeV 12.2 keV 1.44 cm 1.44 cm World eIoni - 2 6.69 cm -18.6 cm 3.11 cm 88.8 MeV 854 eV 5.27 mm 1.96 cm World eIoni - 3 6.75 cm -21.3 cm 3.8 cm 360 MeV 48.9 keV 2.81 cm 4.78 cm World eIoni - 4 6.75 cm -22 cm 3.89 cm 433 MeV 5.18 keV 7.33 mm 5.51 cm World eIoni - 5 6.76 cm -22.5 cm 3.94 cm 485 MeV 3.18 keV 5.29 mm 6.04 cm World eIoni - 6 6.77 cm -24.1 cm 4.07 cm 639 MeV 13.4 keV 1.54 cm 7.58 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 6 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.76 cm -22.5 cm 3.94 cm 2.43 keV 0 eV 0 fm 0 fm World initStep - 1 6.76 cm -22.5 cm 3.94 cm 167 keV 2.43 keV 132 um 132 um World eIoni - 2 7.11 cm -23.7 cm 3.91 cm 117 MeV 14.5 keV 2.58 cm 2.59 cm World msc - 3 7.26 cm -23.9 cm 3.88 cm 139 MeV 1.52 keV 2.72 mm 2.86 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 6 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.75 cm -22 cm 3.89 cm 1.84 keV 0 eV 0 fm 0 fm World initStep - 1 6.75 cm -22 cm 3.89 cm 114 keV 1.84 keV 90 um 90 um World eIoni - 2 6.78 cm -22.6 cm 3.16 cm 59.1 MeV 7.21 keV 1.16 cm 1.17 cm World msc - 3 6.8 cm -23.3 cm 2.42 cm 129 MeV 6.35 keV 1.06 cm 2.23 cm World msc - 4 6.81 cm -24.1 cm 2.13 cm 205 MeV 6.89 keV 8.06 mm 3.03 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 6 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.75 cm -21.3 cm 3.8 cm 2.37 keV 0 eV 0 fm 0 fm World initStep - 1 6.75 cm -21.3 cm 3.8 cm 162 keV 2.37 keV 127 um 127 um World eIoni - 2 5.43 cm -22.4 cm 4.34 cm 108 MeV 19.4 keV 2.23 cm 2.24 cm World msc - 3 3.88 cm -24.7 cm 5.44 cm 342 MeV 18 keV 3.18 cm 5.43 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 6 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.69 cm -18.6 cm 3.11 cm 2.22 keV 0 eV 0 fm 0 fm World initStep - 1 6.69 cm -18.6 cm 3.11 cm 150 keV 2.22 keV 116 um 116 um World eIoni - 2 4.73 cm -19.6 cm 3.14 cm 105 MeV 22.7 keV 2.89 cm 2.9 cm World eIoni - 3 4.32 cm -24.6 cm 3.92 cm 605 MeV 32.9 keV 5.1 cm 8 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.68 cm -17.5 cm 2.72 cm 3.8 keV 0 eV 0 fm 0 fm World initStep - 1 6.68 cm -17.5 cm 2.72 cm 315 keV 3.8 keV 252 um 252 um World eIoni - 2 6.65 cm -17.7 cm 2.71 cm 17.1 MeV 834 eV 1.72 mm 1.97 mm World eIoni - 3 6.64 cm -18.1 cm 2.72 cm 57.8 MeV 1.08 keV 4.07 mm 6.04 mm World eIoni - 4 6.61 cm -21.5 cm 2.74 cm 401 MeV 27.3 keV 3.43 cm 4.04 cm World eBrem - 5 6.61 cm -22.9 cm 2.75 cm 531 MeV 8 keV 1.3 cm 5.34 cm World eIoni - 6 6.6 cm -24.1 cm 2.75 cm 657 MeV 8.74 keV 1.26 cm 6.6 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 5 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.61 cm -22.9 cm 2.75 cm 1.81 keV 0 eV 0 fm 0 fm World initStep - 1 6.61 cm -22.9 cm 2.75 cm 112 keV 1.81 keV 88 um 88 um World eIoni - 2 6.58 cm -23.4 cm 2.15 cm 54.2 MeV 6.49 keV 9.84 mm 9.92 mm World msc - 3 6.44 cm -24.1 cm 1.85 cm 121 MeV 4.32 keV 7.46 mm 1.74 cm World msc - 4 6.43 cm -24.2 cm 1.82 cm 131 MeV 643 eV 1.02 mm 1.84 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 5 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.64 cm -18.1 cm 2.72 cm 1.69 keV 0 eV 0 fm 0 fm World initStep - 1 6.64 cm -18.1 cm 2.72 cm 103 keV 1.69 keV 80.3 um 80.3 um World eIoni - 2 6.64 cm -18.7 cm 2.71 cm 57.7 MeV 9.06 keV 1.61 cm 1.62 cm World eIoni - 3 5.66 cm -24.4 cm 1.94 cm 623 MeV 38 keV 5.89 cm 7.51 cm OutOfWorldTransportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.66 cm -12.9 cm 2.34 cm 2.2 keV 0 eV 0 fm 0 fm World initStep - 1 6.66 cm -12.9 cm 2.34 cm 146 keV 2.2 keV 115 um 115 um World eIoni - 2 6.66 cm -13.9 cm 2.34 cm 101 MeV 20.3 keV 2.76 cm 2.78 cm World eIoni - 3 9.36 cm -23.2 cm 1.78 cm 1.03 GeV 56.3 keV 9.98 cm 12.8 cm OutOfWorldTransportation + 0 7.35 cm -6.85 cm 1 cm 50 MeV 0 eV 0 fm 0 fm World initStep + 1 7.35 cm -8.37 cm 2.06 cm 202 MeV 9.89 keV 1.96 cm 1.96 cm World eIoni + 2 7.35 cm -9.23 cm 2.24 cm 289 MeV 2.64 keV 8.86 mm 2.85 cm World eIoni + 3 7.37 cm -23.9 cm 3.18 cm 1.75 GeV 91.3 keV 14.7 cm 17.5 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.66 cm -12.7 cm 2.31 cm 1.73 keV 0 eV 0 fm 0 fm World initStep - 1 6.66 cm -12.7 cm 2.31 cm 106 keV 1.73 keV 83 um 83 um World eIoni - 2 6.66 cm -13.3 cm 2.31 cm 60.4 MeV 15.8 keV 1.68 cm 1.69 cm World eIoni - 3 5.64 cm -24.4 cm 1.24 cm 1.16 GeV 67.1 keV 11.3 cm 12.9 cm OutOfWorldTransportation + 0 7.35 cm -9.23 cm 2.24 cm 1.49 keV 0 eV 0 fm 0 fm World initStep + 1 7.35 cm -9.23 cm 2.24 cm 88.6 keV 1.49 keV 67.9 um 67.9 um World eIoni + 2 7.35 cm -9.68 cm 2.24 cm 45.1 MeV 15.8 keV 1.28 cm 1.29 cm World eIoni + 3 8.37 cm -23.6 cm 1.89 cm 1.43 GeV 67 keV 14 cm 15.3 cm OutOfWorldTransportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng NextVolu Process - 0 6.66 cm -11.6 cm 2.13 cm 1.46 keV 0 eV 0 fm 0 fm World initStep - 1 6.66 cm -11.6 cm 2.13 cm 86.6 keV 1.46 keV 66 um 66 um World eIoni - 2 6.66 cm -12.1 cm 2.13 cm 43.6 MeV 10 keV 1.24 cm 1.24 cm World eIoni - 3 5.46 cm -24.4 cm 9.5 mm 1.28 GeV 65.9 keV 13.1 cm 14.3 cm OutOfWorldTransportation + 0 7.35 cm -8.37 cm 2.06 cm 1.39 keV 0 eV 0 fm 0 fm World initStep + 1 7.35 cm -8.37 cm 2.06 cm 81.8 keV 1.39 keV 61.5 um 61.5 um World eIoni + 2 7.35 cm -8.76 cm 2.06 cm 39.6 MeV 8.75 keV 1.13 cm 1.14 cm World eIoni + 3 8.48 cm -23.5 cm 1.1 cm 1.52 GeV 93.9 keV 15 cm 16.1 cm OutOfWorldTransportation Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.002262s Sys=0.000000s + User=0.000000s Real=0.000504s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. diff --git a/examples/extended/field/field03/CMakeLists.txt b/examples/extended/field/field03/CMakeLists.txt index 38dbaa9fb5..3052517e41 100644 --- a/examples/extended/field/field03/CMakeLists.txt +++ b/examples/extended/field/field03/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(field03) #---------------------------------------------------------------------------- diff --git a/examples/extended/field/field03/field03.out b/examples/extended/field/field03/field03.out index 0090ed3239..3add484708 100644 --- a/examples/extended/field/field03/field03.out +++ b/examples/extended/field/field03/field03.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -91,7 +91,7 @@ ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: Air density: 0.000 kg/m3 RadL: 28329263.098 km Nucl.Int.Length: 66178552.901 km + Material: Air density: 0.000 mg/cm3 RadL: 28329262.634 km Nucl.Int.Length: 66178558.148 km Imean: 85.664 eV temperature: 273.15 K pressure: 0.00 atm ---> Element: Nitrogen (N) Z = 7.0 N = 14 A = 14.010 g/mole @@ -121,7 +121,7 @@ ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -152,7 +152,7 @@ ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -215,10 +215,8 @@ Checking overlaps for volume Absorber (G4Tubs) ... OK! F03FieldSetup::UpdateField> The minimal step is equal to 0.25 mm Stepper Type chosen = 4 G4ClassicalRK4 (default) is called - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 0.25 numVar= 6 - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 0.25 numVar= 6 - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -239,10 +237,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -279,8 +279,6 @@ Some /vis commands (optionally) take a string to specify colour. F03FieldSetup::UpdateField> The minimal step is equal to 10 mm Stepper Type chosen = 4 G4ClassicalRK4 (default) is called - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 10 numVar= 6 - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 10 numVar= 6 phot: for gamma SubType=12 BuildTable=0 LambdaPrime table from 200 keV to 100 TeV in 61 bins @@ -305,10 +303,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -332,10 +331,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -363,9 +363,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -379,14 +379,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -395,9 +395,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -409,9 +409,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -422,9 +422,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -438,14 +438,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -454,9 +454,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -470,14 +470,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -486,9 +486,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -502,14 +502,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -518,9 +518,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -535,14 +535,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -551,9 +551,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -568,14 +568,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -584,9 +584,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -600,14 +600,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -616,9 +616,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -632,14 +632,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -668,6 +668,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -742,6 +764,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -853,8 +888,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -919,8 +954,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -961,7 +996,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -985,23 +1019,26 @@ See commands in /vis/modeling/trajectories/ for other options. Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process 0 0 fm 0 fm 22 m 500 MeV 0 eV 0 fm 0 fm Radiator initStep - 1 0 fm 2.4772565 mm 21.9395 m 500 MeV0.00012209697 eV 5.0081793 cm 5.0081793 cm Radiator Transportation 0 fm 98.830631 um -995.10427 um - 2 0 fm 2.2749136 cm 21.8395 m 500 MeV0.00024917769 eV 10.220782 cm 15.228961 cm RadSlice Transportation 0 fm 296.49196 um -955.03535 um - 3 0 fm 6.6086173 cm 21.7395 m 500 MeV0.00026622073 eV 10.919854 cm 26.148815 cm Radiator Transportation 0 fm 494.15309 um -869.3749 um - 4 0 fm 14.060739 cm 21.6395 m 500 MeV0.00030482015 eV 12.503127 cm 38.651942 cm RadSlice Transportation 0 fm 691.81427 um -722.0755 um - 5 0 fm 19.745298 cm 21.5885 m 500 MeV0.00018636429 eV 7.6442989 cm 46.296241 cm Radiator Transportation 0 fm 792.62153 um -609.71395 um - 6 0 fm 81.438088 cm 21.5885 m 500 MeV0.001617478 eV 66.345788 cm 1.1264203 m World Transportation 0 fm 792.62217 um 609.71312 um - 7 0 fm 87.122639 cm 21.6395 m 500 MeV0.00018636415 eV 7.6442933 cm 1.2028632 m Radiator Transportation 0 fm 691.8151 um 722.07469 um - 8 0 fm 94.574764 cm 21.7395 m 500 MeV0.00030482021 eV 12.503129 cm 1.3278945 m RadSlice Transportation 0 fm 494.15406 um 869.37435 um - 9 0 fm 98.908478 cm 21.8395 m 500 MeV0.00026622083 eV 10.919858 cm 1.4370931 m Radiator Transportation 0 fm 296.49295 um 955.03504 um - 10 0 fm 1.009356 m 21.9395 m 500 MeV0.0002491774 eV 10.22077 cm 1.5393008 m RadSlice Transportation 0 fm 98.83189 um 995.10414 um - 11 0 fm 1.0118329 m 21.9895 m 500 MeV0.00012209689 eV 5.0081759 cm 1.5893826 m Radiator Transportation 0 fm 1.3322291 nm 1000 um - 12 0 fm 1.0118319 m 21.9905 m 500 MeV2.4379529e-06 eV 1.0000007 mm 1.5903826 m Absorber Transportation 0 fm -1.9752789 um 999.99805 um - 13 0 fm 1.0117239 m 22 m 500 MeV2.3162376e-05 eV 9.500754 mm 1.5998833 m OutOfWorld Transportation 0 fm -20.753087 um 999.78463 um + 1 0 fm 2.4772565 mm 21.9395 m 500 MeV0.00012209589 eV 5.0081793 cm 5.0081793 cm Radiator Transportation 0 fm 98.830631 um -995.10427 um + 2 0 fm 2.2749136 cm 21.8395 m 500 MeV0.00024917548 eV 10.220782 cm 15.228961 cm RadSlice Transportation 0 fm 296.49196 um -955.03535 um + 3 0 fm 6.6086173 cm 21.7395 m 500 MeV0.00026621837 eV 10.919854 cm 26.148815 cm Radiator Transportation 0 fm 494.15309 um -869.3749 um + 4 0 fm 14.060739 cm 21.6395 m 500 MeV0.00030481745 eV 12.503127 cm 38.651942 cm RadSlice Transportation 0 fm 691.81427 um -722.0755 um + 5 0 fm 19.745298 cm 21.5885 m 500 MeV0.00018636264 eV 7.6442989 cm 46.296241 cm Radiator Transportation 0 fm 792.62153 um -609.71395 um + 6 0 fm 81.438088 cm 21.5885 m 500 MeV0.0016174637 eV 66.345788 cm 1.1264203 m World Transportation 0 fm 792.62217 um 609.71312 um + 7 0 fm 87.122639 cm 21.6395 m 500 MeV0.0001863625 eV 7.6442933 cm 1.2028632 m Radiator Transportation 0 fm 691.8151 um 722.07469 um + 8 0 fm 94.574764 cm 21.7395 m 500 MeV0.00030481751 eV 12.503129 cm 1.3278945 m RadSlice Transportation 0 fm 494.15406 um 869.37435 um + 9 0 fm 98.908478 cm 21.8395 m 500 MeV0.00026621847 eV 10.919858 cm 1.4370931 m Radiator Transportation 0 fm 296.49295 um 955.03504 um + 10 0 fm 1.009356 m 21.9395 m 500 MeV0.00024917519 eV 10.22077 cm 1.5393008 m RadSlice Transportation 0 fm 98.83189 um 995.10414 um + 11 0 fm 1.0118329 m 21.9895 m 500 MeV0.00012209581 eV 5.0081759 cm 1.5893826 m Radiator Transportation 0 fm 1.3322291 nm 1000 um + 12 0 fm 1.0118319 m 21.9905 m 500 MeV2.4379313e-06 eV 1.0000007 mm 1.5903826 m Absorber Transportation 0 fm -1.9752789 um 999.99805 um + 13 0 fm 1.0117239 m 22 m 500 MeV2.316217e-05 eV 9.500754 mm 1.5998833 m OutOfWorld Transportation 0 fm -20.753087 um 999.78463 um Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.001284s Sys=0.000000s + User=0.000000s Real=0.001946s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ========= Table of registered couples ============================ @@ -1020,7 +1057,10 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 100 - User=0.020000s Real=0.012491s Sys=0.000000s + User=0.010000s Real=0.009951s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Set global field value to (0,0,1000) Gauss ========= Table of registered couples ============================ @@ -1039,13 +1079,14 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 10 - User=0.000000s Real=0.001552s Sys=0.000000s + User=0.000000s Real=0.001373s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Set global field value to (33000,0,0) Gauss F03FieldSetup::UpdateField> The minimal step is equal to 10 mm Stepper Type chosen = 4 G4ClassicalRK4 (default) is called - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 10 numVar= 6 - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 10 numVar= 6 Set local field value to (0,0,0) Gauss ========= Table of registered couples ============================ @@ -1068,23 +1109,26 @@ Index : 0 used in the geometry : Yes Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process 0 0 fm 0 fm 22 m 500 MeV 0 eV 0 fm 0 fm Radiator initStep - 1 0 fm 0 fm 21.9395 m 500 MeV0.00012189757 eV 5 cm 5 cm Radiator Transportation 0 fm 0 fm -1 mm - 2 0 fm 0 fm 21.8395 m 500 MeV0.00024379513 eV 10 cm 15 cm RadSlice Transportation 0 fm 0 fm -1 mm - 3 0 fm 0 fm 21.7395 m 500 MeV0.00024379513 eV 10 cm 25 cm Radiator Transportation 0 fm 0 fm -1 mm - 4 0 fm 0 fm 21.6395 m 500 MeV0.00024379513 eV 10 cm 35 cm RadSlice Transportation 0 fm 0 fm -1 mm - 5 0 fm 0 fm 21.5885 m 500 MeV0.00012433552 eV 5.1 cm 40.1 cm Radiator Transportation 0 fm 0 fm -1 mm - 6 0 fm 1.0118328 m 21.5885 m 500 MeV0.003874839 eV 1.5893832 m 1.9903832 m World Transportation 0 fm 0.87087764 fm 1 mm - 7 0 fm 1.0118328 m 21.6395 m 500 MeV0.00012433552 eV 5.1 cm 2.0413832 m Radiator Transportation 0 fm 0.87087764 fm 1 mm - 8 0 fm 1.0118328 m 21.7395 m 500 MeV0.00024379513 eV 10 cm 2.1413832 m RadSlice Transportation 0 fm 0.87087764 fm 1 mm - 9 0 fm 1.0118328 m 21.8395 m 500 MeV0.00024379513 eV 10 cm 2.2413832 m Radiator Transportation 0 fm 0.87087764 fm 1 mm - 10 0 fm 1.0118328 m 21.9395 m 500 MeV0.00024379513 eV 10 cm 2.3413832 m RadSlice Transportation 0 fm 0.87087764 fm 1 mm - 11 0 fm 1.0118328 m 21.9895 m 500 MeV0.00012189757 eV 5 cm 2.3913832 m Radiator Transportation 0 fm 0.87087764 fm 1 mm - 12 0 fm 1.0118318 m 21.9905 m 500 MeV2.4379529e-06 eV 1.0000007 mm 2.3923832 m Absorber Transportation 0 fm -1.9766112 um 999.99805 um - 13 0 fm 1.0117238 m 22 m 500 MeV2.3162376e-05 eV 9.5007541 mm 2.401884 m OutOfWorld Transportation 0 fm -20.754419 um 999.7846 um + 1 0 fm 0 fm 21.9395 m 500 MeV0.00012189649 eV 5 cm 5 cm Radiator Transportation 0 fm 0 fm -1 mm + 2 0 fm 0 fm 21.8395 m 500 MeV0.00024379297 eV 10 cm 15 cm RadSlice Transportation 0 fm 0 fm -1 mm + 3 0 fm 0 fm 21.7395 m 500 MeV0.00024379297 eV 10 cm 25 cm Radiator Transportation 0 fm 0 fm -1 mm + 4 0 fm 0 fm 21.6395 m 500 MeV0.00024379297 eV 10 cm 35 cm RadSlice Transportation 0 fm 0 fm -1 mm + 5 0 fm 0 fm 21.5885 m 500 MeV0.00012433442 eV 5.1 cm 40.1 cm Radiator Transportation 0 fm 0 fm -1 mm + 6 0 fm 1.0118328 m 21.5885 m 500 MeV0.0038748046 eV 1.5893832 m 1.9903832 m World Transportation 0 fm 0.87087764 fm 1 mm + 7 0 fm 1.0118328 m 21.6395 m 500 MeV0.00012433442 eV 5.1 cm 2.0413832 m Radiator Transportation 0 fm 0.87087764 fm 1 mm + 8 0 fm 1.0118328 m 21.7395 m 500 MeV0.00024379297 eV 10 cm 2.1413832 m RadSlice Transportation 0 fm 0.87087764 fm 1 mm + 9 0 fm 1.0118328 m 21.8395 m 500 MeV0.00024379297 eV 10 cm 2.2413832 m Radiator Transportation 0 fm 0.87087764 fm 1 mm + 10 0 fm 1.0118328 m 21.9395 m 500 MeV0.00024379297 eV 10 cm 2.3413832 m RadSlice Transportation 0 fm 0.87087764 fm 1 mm + 11 0 fm 1.0118328 m 21.9895 m 500 MeV0.00012189649 eV 5 cm 2.3913832 m Radiator Transportation 0 fm 0.87087764 fm 1 mm + 12 0 fm 1.0118318 m 21.9905 m 500 MeV2.4379313e-06 eV 1.0000007 mm 2.3923832 m Absorber Transportation 0 fm -1.9766112 um 999.99805 um + 13 0 fm 1.0117238 m 22 m 500 MeV2.3162171e-05 eV 9.5007541 mm 2.401884 m OutOfWorld Transportation 0 fm -20.754419 um 999.7846 um Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000415s Sys=0.000000s + User=0.000000s Real=0.000285s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /tracking/verbose 0 # /calor/setAbsMat Xe20CO2 @@ -1150,10 +1194,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1177,10 +1222,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1208,9 +1254,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1224,14 +1270,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1240,9 +1286,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1254,9 +1300,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1267,9 +1313,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1283,14 +1329,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1299,9 +1345,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1315,14 +1361,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1331,9 +1377,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1347,14 +1393,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -1363,9 +1409,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1380,14 +1426,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1396,9 +1442,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1413,14 +1459,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -1429,9 +1475,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1445,14 +1491,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1461,9 +1507,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1477,14 +1523,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1511,7 +1557,7 @@ Index : 1 used in the geometry : Yes Index : 2 used in the geometry : Yes Material : Xe20CO2 Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 990 eV e- 1.27787 keV e+ 1.25587 keV proton 70 keV + Energy thresholds : gamma 990 eV e- 1.28943 keV e+ 1.26711 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -1522,12 +1568,15 @@ Index : 2 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1 - User=0.340000s Real=0.343445s Sys=0.010000s + User=0.270000s Real=0.347599s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 12 of which, static: 0 -Dynamic pools deleted: 12 / Total memory freed: 2 MB +Dynamic pools deleted: 12 / Total memory freed: 2.2 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/field/field04/CMakeLists.txt b/examples/extended/field/field04/CMakeLists.txt index cbe3e44ec4..140e12d4ca 100644 --- a/examples/extended/field/field04/CMakeLists.txt +++ b/examples/extended/field/field04/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(field04) #---------------------------------------------------------------------------- diff --git a/examples/extended/field/field04/field04.out b/examples/extended/field/field04/field04.out index 63deacad04..7b67690f10 100644 --- a/examples/extended/field/field04/field04.out +++ b/examples/extended/field/field04/field04.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -36,10 +36,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -116,8 +118,8 @@ G4NistMaterialBuilder: BuildMaterial #116 New material nComponents= 2 G4NistElementBuilder: Build Element Z= 4 Aeff= 9.01218 with natural isotope composition G4NistMaterialBuilder::FindOrBuildMaterial Scintillator -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -New material Scintillator is prepeared nMaterials= 309 nComponents= 777 nCurrent= 2 +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +New material Scintillator is prepared nMaterials= 309 nComponents= 777 nCurrent= 2 G4NistMaterialBuilder: BuildMaterial #308 New material nComponents= 2 @@ -175,7 +177,7 @@ The materials defined are: ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: G4_Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: G4_Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 21.800 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -218,9 +220,13 @@ G4NistMaterialBuilder::FindOrBuildMaterial G4_AIR G4NistMaterialBuilder::FindOrBuildMaterial G4_Pb G4NistMaterialBuilder::FindOrBuildMaterial G4_W G4ClassicalRK4 (default) is called - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 0.01 numVar= 12 Accuracy Parameters: MinStep=0.01 DeltaChord=3 DeltaOneStep=0.01 DeltaIntersection=0.1 EpsMin=2.5e-07 EpsMax=0.05 + + hInelastic QGSP_BERT Thresholds: + 1) between BERT and FTF/P over the interval 3 to 6 GeV. + 2) between FTF/P and QGS/P over the interval 12 to 25 GeV. + -- quasiElastic: 1 for QGS and 0 for FTF ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 ### Birks coefficients used in run time # @@ -283,10 +289,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -310,10 +317,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -341,9 +349,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -357,14 +365,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -373,9 +381,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -387,9 +395,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -400,9 +408,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -416,14 +424,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -432,9 +440,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -448,14 +456,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -464,9 +472,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -480,14 +488,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -496,9 +504,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -513,14 +521,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -529,9 +537,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -546,14 +554,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -562,9 +570,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -578,14 +586,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -594,9 +602,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -610,14 +618,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -647,6 +655,30 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -688,9 +720,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_He3Inelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -704,9 +734,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_alphaInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -720,13 +748,25 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_deuteronInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -736,9 +776,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_neutronInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -752,9 +790,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_protonInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -768,9 +804,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_tritonInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -846,10 +880,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -917,10 +950,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -961,7 +993,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. @@ -1091,7 +1122,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.693109(mm),-2.6018458(mm),78.46701(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.291657(mm),0.86450953(mm),78.36147(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -1100,7 +1131,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.928071(mm),-1.0084631(mm),79.130888(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.07084(mm),-2.9679987(mm),79.105714(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -1109,7 +1140,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.057933(mm),-1.7213775(mm),78.226355(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.091911(mm),3.2539116(mm),79.101999(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -1118,7 +1149,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.131026(mm),-3.4412733(mm),78.566121(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.555415(mm),0.9077737(mm),78.843944(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -1127,7 +1158,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.335058(mm),-1.9290109(mm),78.530144(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.097074(mm),-2.2854112(mm),78.39578(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -1136,7 +1167,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.832113(mm),-0.80406027(mm),78.4425(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.682151(mm),0.6532071(mm),78.997924(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -1145,7 +1176,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.018001(mm),-0.28368428(mm),78.409723(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.509551(mm),-2.9228503(mm),78.32305(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -1154,7 +1185,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.094253(mm),-0.020909868(mm),78.748932(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.855485(mm),0.24908767(mm),79.143687(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -1163,7 +1194,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.736865(mm),-0.055875818(mm),78.635622(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.059389(mm),2.190033(mm),78.931406(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -1172,1825 +1203,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.28133(mm),1.1657443(mm),79.068599(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.218658(mm),2.4955451(mm),78.903323(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.041979(mm),1.2683882(mm),78.581822(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.079571(mm),0.081766872(mm),78.575194(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.649142(mm),-0.13004027(mm),78.298436(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.594494(mm),-3.3237621(mm),78.660726(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.606321(mm),-1.8791532(mm),78.482313(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.67746(mm),0.037292522(mm),78.822424(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.783(mm),0.51821647(mm),78.627487(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.888552(mm),3.0253105(mm),78.961529(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.24636(mm),0.55732015(mm),79.074765(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.877178(mm),0.72065327(mm),78.258227(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.149935(mm),3.3022324(mm),79.091768(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.180005(mm),-0.79531827(mm),78.733812(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.337982(mm),1.2910961(mm),78.176975(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.244397(mm),-3.6037096(mm),79.075111(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.303826(mm),-2.0887354(mm),78.888305(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.705986(mm),-2.863649(mm),78.993721(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.026054(mm),2.3095616(mm),78.231976(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.026705(mm),-1.3819317(mm),78.760842(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.807473(mm),-0.88962821(mm),78.799499(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.131311(mm),-0.004413238(mm),79.271378(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.890407(mm),1.611355(mm),78.784875(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.852807(mm),-0.027180201(mm),78.438851(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.056305(mm),1.4826452(mm),78.226642(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.1037(mm),2.0947412(mm),79.09992(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.108407(mm),-0.49289775(mm),78.393782(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.10766(mm),3.7121918(mm),78.746568(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.550995(mm),3.1069302(mm),78.668396(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.492358(mm),-1.9191546(mm),78.855062(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.382989(mm),-2.6122966(mm),78.874347(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.670135(mm),-0.90816881(mm),78.294734(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.850083(mm),-1.9060009(mm),78.615659(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.936035(mm),-0.16222674(mm),78.953157(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.101426(mm),-3.635499(mm),78.57134(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.509774(mm),-2.5456453(mm),78.32301(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.499215(mm),-1.0030099(mm),78.501199(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.013823(mm),-1.9368771(mm),79.115768(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.361177(mm),-0.4776584(mm),78.701866(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.346985(mm),-0.51788156(mm),78.351714(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.321799(mm),-1.5596191(mm),79.414117(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.470153(mm),1.3641901(mm),78.15367(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.917476(mm),-1.5002648(mm),78.427448(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.767174(mm),-2.4107707(mm),78.453951(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.744681(mm),-1.105(mm),78.986898(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.54212(mm),1.1842187(mm),79.375269(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.504032(mm),-3.0512113(mm),78.676677(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.122379(mm),3.1003522(mm),79.096626(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.105661(mm),-0.95495103(mm),78.923247(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.050627(mm),2.5836038(mm),79.109278(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.435081(mm),-1.9984513(mm),78.865162(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.556593(mm),0.64031162(mm),79.372717(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.994438(mm),-1.4597717(mm),78.237551(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.508017(mm),2.4787938(mm),79.028628(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.738929(mm),2.9111651(mm),78.987912(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.755512(mm),1.4643244(mm),79.161315(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.946235(mm),-0.24343901(mm),79.127685(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.653749(mm),-2.5504095(mm),79.002932(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.969189(mm),1.3390425(mm),78.242003(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.987292(mm),1.6954968(mm),79.120446(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.154413(mm),-1.5648156(mm),78.38567(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.917549(mm),-0.27201846(mm),78.251109(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.435359(mm),-2.127526(mm),78.512459(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.743634(mm),-2.9000098(mm),78.987082(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.992451(mm),1.5365818(mm),79.119536(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.758969(mm),0.1033563(mm),78.455398(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.395195(mm),1.8168863(mm),78.343214(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.318799(mm),1.2148977(mm),78.533011(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.207021(mm),0.018554176(mm),78.729048(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.041553(mm),0.50217715(mm),78.229243(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.585379(mm),3.3323209(mm),78.486006(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.574863(mm),-0.57273196(mm),79.016841(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.331883(mm),-1.3230843(mm),78.354377(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.80529(mm),-0.11181604(mm),78.799884(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.281031(mm),2.339139(mm),78.715998(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.701334(mm),-1.2135297(mm),78.818214(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.092438(mm),0.57735379(mm),78.925579(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.700786(mm),-0.044487572(mm),78.28933(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.134746(mm),2.7207779(mm),78.918119(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.875477(mm),-3.2680002(mm),78.963835(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.927448(mm),1.6146545(mm),79.307325(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.544953(mm),-2.8731795(mm),78.845788(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.173538(mm),-2.325167(mm),79.263933(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.663322(mm),1.752287(mm),79.001244(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.422844(mm),-1.80006(mm),78.338338(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.100958(mm),2.9205712(mm),78.924077(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.373655(mm),-1.1544165(mm),79.404974(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.438307(mm),-2.531415(mm),78.688266(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.132032(mm),-2.0102193(mm),78.74227(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.473293(mm),1.6174594(mm),79.387405(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.276225(mm),3.4968748(mm),78.540518(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.030395(mm),-2.4986275(mm),78.936519(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.758657(mm),1.6309564(mm),78.808106(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.867139(mm),0.47120456(mm),78.788978(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.247594(mm),-1.6810498(mm),79.250875(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.539236(mm),-3.1115219(mm),78.846796(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.59567(mm),-3.4146513(mm),78.836846(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.33146(mm),-3.274138(mm),79.05976(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.821032(mm),1.5190895(mm),79.326089(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.509381(mm),3.0500731(mm),78.852061(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.756755(mm),1.4701354(mm),79.161096(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.594071(mm),0.83603947(mm),79.189781(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.709204(mm),0.43969871(mm),78.464172(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.806625(mm),-0.58252036(mm),78.446994(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.330306(mm),-1.0720133(mm),78.178328(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.351157(mm),-0.7692903(mm),78.703633(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.766476(mm),1.0772541(mm),78.454074(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.537559(mm),1.4031675(mm),79.376073(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.223806(mm),-2.3585206(mm),78.373434(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.033389(mm),0.44924698(mm),79.288645(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.176965(mm),-1.0635143(mm),78.734348(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.663349(mm),1.0649942(mm),79.353893(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.776956(mm),1.7910236(mm),78.80488(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.378994(mm),0.57273554(mm),79.227705(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.097856(mm),3.7961134(mm),78.924624(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.638553(mm),-0.91060942(mm),78.652957(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.723358(mm),-0.36962909(mm),79.343312(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.10789(mm),-1.2052587(mm),78.5702(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.425375(mm),2.7423114(mm),78.514219(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.336049(mm),-0.11536678(mm),79.058951(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.086555(mm),0.8644611(mm),78.750289(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.759972(mm),-1.7744177(mm),79.336856(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.693005(mm),-1.8530396(mm),78.643356(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.327322(mm),1.9391568(mm),79.236817(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.759462(mm),2.5820088(mm),79.160619(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.034866(mm),-1.4791502(mm),78.230423(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.86513(mm),-2.9899652(mm),78.789333(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.749758(mm),-2.5880044(mm),78.280695(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.387531(mm),2.6473738(mm),79.2262(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.450816(mm),2.5417894(mm),78.333406(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.161836(mm),-0.70839393(mm),78.384361(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.290571(mm),3.837715(mm),78.714316(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.224466(mm),-1.4565181(mm),78.725972(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.343085(mm),3.3989745(mm),78.528729(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.577741(mm),-3.2030907(mm),79.192661(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.376568(mm),2.6214824(mm),78.875479(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.279846(mm),-1.6490268(mm),78.53988(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.76159(mm),-1.6751134(mm),78.983916(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.973944(mm),-2.2240011(mm),78.770146(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.615475(mm),-0.58899691(mm),79.362334(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.18707(mm),-0.30076916(mm),79.437874(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.725064(mm),0.7912433(mm),79.166684(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.035689(mm),-2.2147907(mm),79.288239(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.303692(mm),-2.1792902(mm),79.240983(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.256951(mm),-3.9293573(mm),78.720244(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.133358(mm),2.3656837(mm),78.389383(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.702282(mm),0.9543401(mm),78.818047(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.976178(mm),1.9979253(mm),78.593425(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.750011(mm),-1.8404234(mm),79.162285(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.864185(mm),2.0976767(mm),79.31848(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.158905(mm),-3.6027941(mm),78.561205(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.342802(mm),0.20936553(mm),78.881433(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.014476(mm),3.131862(mm),78.939326(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.403386(mm),-3.5861792(mm),78.694423(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.725643(mm),2.3448843(mm),78.637601(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.446225(mm),-1.2250335(mm),79.392178(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.481538(mm),0.65761545(mm),78.327989(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.915901(mm),-3.6881719(mm),78.956707(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.289559(mm),0.23808617(mm),78.538167(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.676745(mm),3.4030379(mm),78.646223(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.678692(mm),-1.5724774(mm),78.998534(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.292492(mm),2.5716689(mm),78.361323(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.86047(mm),1.5155509(mm),79.319135(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.001395(mm),1.4509284(mm),78.941632(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.83584(mm),-1.612792(mm),78.970824(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.767358(mm),-0.01481809(mm),78.453918(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.399737(mm),2.754745(mm),78.871394(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.919555(mm),3.6394314(mm),78.603409(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.33397(mm),0.80841663(mm),78.354009(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.018588(mm),-0.30418815(mm),79.467582(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.611653(mm),-2.273175(mm),79.186681(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.288297(mm),1.835537(mm),78.891044(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.100114(mm),-3.4236193(mm),78.747898(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.105255(mm),-0.85271193(mm),79.275973(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.644712(mm),0.15790655(mm),79.357179(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.532365(mm),-2.670456(mm),78.848008(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.440883(mm),0.71181827(mm),79.040466(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.741958(mm),0.41398757(mm),79.340032(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.440455(mm),3.8286442(mm),78.687887(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.729989(mm),-0.033849016(mm),78.636835(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.93377(mm),-3.5171104(mm),78.600902(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.218716(mm),2.9971764(mm),78.903313(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.283913(mm),-0.37333459(mm),78.71549(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.252776(mm),2.8809109(mm),78.544653(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.407362(mm),1.7707702(mm),79.39903(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.330097(mm),0.99591267(mm),79.06(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.556645(mm),1.8392452(mm),78.491073(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.385174(mm),1.6392389(mm),79.050289(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.583852(mm),3.7196631(mm),78.838929(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.090821(mm),-0.080178185(mm),78.749537(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.944213(mm),0.47846094(mm),78.422734(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.158314(mm),-0.18613937(mm),79.266617(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.91541(mm),0.74834278(mm),79.309448(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.849253(mm),-1.9844956(mm),78.792132(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.195216(mm),-2.7564344(mm),79.083783(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.159008(mm),-1.0032698(mm),78.208533(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.029725(mm),-0.86329852(mm),78.936637(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.75093(mm),-0.052208007(mm),78.280488(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.102024(mm),-0.84541248(mm),79.100216(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.248055(mm),-2.087181(mm),78.369159(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.048934(mm),-1.9876366(mm),78.93325(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.035921(mm),0.49641091(mm),79.288198(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.707855(mm),-0.95376712(mm),79.169718(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.024053(mm),2.2725508(mm),78.937637(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3000,34 +1213,242 @@ Track (trackID 1, parentID 0) is processed with stopping code 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.04 cm -957 um 7.2 cm 13 MeV 0 eV 0 fm 0 fm Target initStep - 1 -1.0279034 cm -762.97919 um 7.173606 cm 10.50029 MeV 2.477915 MeV 346.60112 um 346.60112 um Target hIoni - 2 -1.0129387 cm -650.27987 um 7.1529071 cm 7.7471617 MeV 2.7531285 MeV 283.7808 um 630.38192 um Target hIoni - 3 -1.0048033 cm -549.66159 um 7.1356556 cm 4.8128464 MeV 2.9343152 MeV 220.52327 um 850.90519 um Target hIoni - 4 -1.0034775 cm -493.95595 um 7.1222935 cm 1.5315751 MeV 3.2812713 MeV 150.88904 um 1.0017942 mm Target hIoni - 5 -1.0034301 cm -496.07251 um 7.1202679 cm 117.706 keV 1.4138691 MeV 26.65474 um 1.028449 mm Target hIoni - 6 -1.0034397 cm -496.26036 um 7.1202419 cm 0 eV 117.706 keV 696.91633 nm 1.0291459 mm Target hIoni - 7 -1.0034397 cm -496.26036 um 7.1202419 cm 0 eV 0 eV 0 fm 1.0291459 mm Target Scintillation + 0 -1.21 cm 2.27 mm 7.4 cm 66.9 MeV 0 eV 0 fm 0 fm Target initStep + 1 -1.5095745 cm 2.2385785 mm 7.4733532 cm 58.397296 MeV 8.5410516 MeV 3.0732981 mm 3.0732981 mm Target hIoni + 2 -1.6553994 cm 2.2932208 mm 7.5008755 cm 53.858277 MeV 4.5390189 MeV 1.4910723 mm 4.5643704 mm Target Transportation + 3 3.4833513 cm 2.9266987 mm 27.396831 cm 53.858302 MeV9.7785279e-17 eV 2.1936296 m 2.1981939 m CaptureMgnt Decay Track (trackID 4, parentID 1) is processed with stopping code 2 ********************************************************************************************************* -* G4Track Information: Particle = mu+, Track ID = 26, Parent ID = 4 +* G4Track Information: Particle = mu+, Track ID = 11, Parent ID = 4 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1 cm -496 um 7.12 cm 4.12 MeV 0 eV 0 fm 0 fm Target initStep - 1 -9.9300235 mm -567.86448 um 7.1191166 cm 1.2684003 MeV 2.8514123 MeV 143.95492 um 143.95492 um Target muIoni - 2 -9.9163212 mm -574.04487 um 7.1194367 cm 124.56026 keV 1.1438401 MeV 23.260214 um 167.21514 um Target muIoni - 3 -9.9161613 mm -574.26768 um 7.1194535 cm 67.166904 keV 57.393359 keV 808.84382 nm 168.02398 um Target muIoni - 4 -9.9161522 mm -574.15814 um 7.1194636 cm 0 eV 67.166904 keV 377.30741 nm 168.40129 um Target muIoni - 5 -9.9161522 mm -574.15814 um 7.1194636 cm 0 eV 0 eV 0 fm 168.40129 um Target Scintillation -Track (trackID 26, parentID 4) is processed with stopping code 2 + 0 3.48 cm 2.93 mm 27.4 cm 18.2 MeV 0 eV 0 fm 0 fm CaptureMgnt initStep + 1 3.3665425 cm 2.7541408 mm 2 m 18.21887 MeV8.0801997e-16 eV 10.843833 m 10.843833 m CaptureMgnt Transportation + 2 1.5833046 cm 212.03044 um 2.002899 m 18.212225 MeV 6.6493057 keV 1.8244611 cm 10.862077 m World muIoni + 3 -1.5173001 mm -2.3763007 mm 2.0056852 m 18.204659 MeV 6.3401403 keV 1.776227 cm 10.879839 m World muIoni + 4 -4.4927631 cm -8.8553537 mm 2.0126469 m 18.187736 MeV 15.47131 keV 4.4440034 cm 10.924279 m World muIoni + 5 -6.2433117 cm -1.1497631 cm 2.0156327 m 18.177891 MeV 8.5860362 keV 1.7953816 cm 10.942233 m World muIoni + 6 -7.9820111 cm -1.4122649 cm 2.0186098 m 18.155005 MeV 6.1039455 keV 1.7834319 cm 10.960068 m World muIoni + 7 -8.4205473 cm -1.4797335 cm 2.019367 m 18.152679 MeV 2.3264168 keV 4.5011049 mm 10.964569 m World muIoni + 8 -9.8060156 cm -1.6917703 cm 2.0217445 m 18.147577 MeV 5.1015713 keV 1.4216224 cm 10.978785 m World muIoni + 9 -10.884453 cm -1.857397 cm 2.0235938 m 18.142767 MeV 3.2087223 keV 1.1066434 cm 10.989851 m World muIoni + 10 -11.332542 cm -1.9257071 cm 2.024354 m 18.138853 MeV 1.0271922 keV 4.5959797 mm 10.994447 m World muIoni + 11 -15.237391 cm -2.5226613 cm 2.0309572 m 18.117027 MeV 19.367488 keV 4.0050404 cm 11.034498 m World muIoni + 12 -17.576088 cm -2.8775831 cm 2.0349633 m 18.10838 MeV 7.4601954 keV 2.3991626 cm 11.058489 m World muIoni + 13 -18.362104 cm -2.994612 cm 2.0363206 m 18.104548 MeV 2.5950193 keV 8.0618911 mm 11.066551 m World muIoni + 14 -21.089025 cm -3.3979478 cm 2.0410662 m 18.094134 MeV 8.2053533 keV 2.7971454 cm 11.094523 m World muIoni + 15 -25.587607 cm -4.0484351 cm 2.0485896 m 18.075676 MeV 15.256651 keV 4.6072949 cm 11.140596 m World muIoni + 16 -27.189093 cm -4.2816267 cm 2.0512433 m 18.070084 MeV 4.3402795 keV 1.6399893 cm 11.156996 m World muIoni + 17 -27.237488 cm -4.288611 cm 2.0513235 m 18.068288 MeV 219.59683 eV 495.49745 um 11.157491 m World muIoni + 18 -27.266666 cm -4.292804 cm 2.0513718 m 18.066594 MeV 117.39777 eV 298.7036 um 11.15779 m World muIoni + 19 -28.163523 cm -4.4214752 cm 2.0528616 m 18.06188 MeV 3.362399 keV 9.1820797 mm 11.166972 m World muIoni + 20 -28.843534 cm -4.5193176 cm 2.0539956 m 18.049515 MeV 1.7398112 keV 6.9631097 mm 11.173935 m World muIoni + 21 -31.592319 cm -4.9163147 cm 2.0585543 m 18.036004 MeV 10.411923 keV 2.8144779 cm 11.20208 m World muIoni + 22 -31.84351 cm -4.952789 cm 2.0589718 m 18.032887 MeV 1.1014406 keV 2.5723427 mm 11.204652 m World muIoni + 23 -41.729309 cm -6.391106 cm 2.0753364 m 17.986326 MeV 35.165888 keV 10.12315 cm 11.305884 m World muIoni + 24 -45.565423 cm -6.9521856 cm 2.0816349 m 17.972275 MeV 12.856942 keV 3.9277742 cm 11.345161 m World muIoni + 25 -49.730237 cm -7.5609537 cm 2.0883662 m 17.95069 MeV 20.203315 keV 4.2625728 cm 11.387787 m World muIoni + 26 -52.837978 cm -8.0103617 cm 2.0932164 m 17.941855 MeV 7.8386476 keV 3.1773161 cm 11.41956 m World muIoni + 27 -52.990785 cm -8.0325921 cm 2.093461 m 17.93956 MeV 253.29968 eV 1.5634015 mm 11.421124 m World muIoni + 28 -55.331105 cm -8.3744105 cm 2.0972155 m 17.928397 MeV 9.6900684 keV 2.3947698 cm 11.445071 m World muIoni + 29 -55.763797 cm -8.4376574 cm 2.0979241 m 17.924914 MeV 2.0794763 keV 4.4299537 mm 11.449501 m World muIoni + 30 -56.143685 cm -8.4927855 cm 2.0985509 m 17.923306 MeV 419.49983 eV 3.8895119 mm 11.453391 m World muIoni + 31 -56.203254 cm -8.5014531 cm 2.0986489 m 17.863623 MeV 244.08474 eV 609.887 um 11.454001 m World muIoni + 32 -65.082789 cm -9.7724097 cm 2.1129995 m 17.833971 MeV 29.651839 keV 9.0841924 cm 11.544843 m World muIoni + 33 -66.314401 cm -9.9521434 cm 2.1149415 m 17.828401 MeV 2.8933403 keV 1.2597187 cm 11.55744 m World muIoni + 34 -66.651702 cm -10.001529 cm 2.115483 m 17.813334 MeV 1.2167897 keV 3.4517089 mm 11.560891 m World muIoni + 35 -67.247791 cm -10.088844 cm 2.1164304 m 17.811366 MeV 1.9677591 keV 6.0985409 mm 11.56699 m World muIoni + 36 -70.289639 cm -10.530137 cm 2.1212718 m 17.799724 MeV 11.641984 keV 3.1115964 cm 11.598106 m World muIoni + 37 -82.688712 cm -12.245697 cm 2.1409301 m 17.754476 MeV 44.250363 keV 12.670815 cm 11.724814 m World muIoni + 38 -84.613866 cm -12.512277 cm 2.1438433 m 17.744221 MeV 9.0516509 keV 1.965239 cm 11.744467 m World muIoni + 39 -88.177918 cm -12.99566 cm 2.1492879 m 17.73112 MeV 11.383195 keV 3.6376725 cm 11.780843 m World muIoni + 40 -96.804109 cm -14.152723 cm 2.1625001 m 17.698227 MeV 31.133029 keV 8.8032459 cm 11.868876 m World muIoni + 41 -98.983834 cm -14.447679 cm 2.1656721 m 17.689737 MeV 8.4898692 keV 2.2223656 cm 11.891099 m World muIoni + 42 -99.951979 cm -14.578348 cm 2.1670706 m 17.682637 MeV 6.0661938 keV 9.8688304 mm 11.900968 m World muIoni + 43 -1.0286386 m -14.968947 cm 2.171242 m 17.675056 MeV 7.5817238 keV 2.9674368 cm 11.930643 m World muIoni + 44 -1.0753726 m -15.609002 cm 2.1778648 m 17.652304 MeV 20.768788 keV 4.7633112 cm 11.978276 m World muIoni + 45 -1.1004536 m -15.947071 cm 2.1812963 m 17.642518 MeV 8.7536866 keV 2.553947 cm 12.003815 m World muIoni + 46 -1.1059434 m -16.019239 cm 2.1820236 m 17.63851 MeV 2.7547708 keV 5.5846277 mm 12.0094 m World muIoni + 47 -1.2017023 m -17.28613 cm 2.1946395 m 17.530749 MeV 41.666126 keV 9.7414787 cm 12.106815 m World muIoni + 48 -1.2031794 m -17.306342 cm 2.1948307 m 17.530506 MeV 243.33903 eV 1.5031339 mm 12.108318 m World muIoni + 49 -1.2225254 m -17.570307 cm 2.1973329 m 17.522101 MeV 7.1203975 keV 1.9684938 cm 12.128003 m World muIoni + 50 -1.2352358 m -17.743769 cm 2.1989609 m 17.518205 MeV 2.8475867 keV 1.2931143 cm 12.140934 m World muIoni + 51 -1.2429692 m -17.852112 cm 2.1999616 m 17.510349 MeV 5.8502674 keV 7.8728107 mm 12.148807 m World muIoni + 52 -1.2858824 m -18.454492 cm 2.2054217 m 17.492784 MeV 15.95293 keV 4.3676691 cm 12.192483 m World muIoni + 53 -1.2859093 m -18.454847 cm 2.2054252 m 17.491457 MeV 0 eV 27.397136 um 12.192511 m World muIoni + 54 -1.2898269 m -18.506324 cm 2.2059221 m 17.488526 MeV 1.6336983 keV 3.982424 mm 12.196493 m World muIoni + 55 -1.3292945 m -19.02235 cm 2.21091 m 17.468104 MeV 12.645619 keV 4.011499 cm 12.236608 m World muIoni + 56 -1.3371785 m -19.124282 cm 2.2118768 m 17.464567 MeV 2.4636924 keV 8.0081968 mm 12.244616 m World muIoni + 57 -1.3428449 m -19.197658 cm 2.2125535 m 17.459136 MeV 1.2908583 keV 5.7536507 mm 12.25037 m World muIoni + 58 -1.3536231 m -19.3377 cm 2.2138473 m 17.452918 MeV 2.2404903 keV 1.0945564 cm 12.261316 m World muIoni + 59 -1.3627312 m -19.453953 cm 2.2149384 m 17.448066 MeV 3.5255989 keV 9.246564 mm 12.270562 m World muIoni + 60 -1.440638 m -20.440186 cm 2.2242387 m 17.414698 MeV 26.923315 keV 7.9078085 cm 12.34964 m World muIoni + 61 -1.4539239 m -20.600166 cm 2.225912 m 17.408033 MeV 5.5370194 keV 1.3486126 cm 12.363126 m World muIoni + 62 -1.4772994 m -20.883156 cm 2.2289141 m 17.39792 MeV 8.7397411 keV 2.3736827 cm 12.386863 m World muIoni + 63 -1.4886742 m -21.022429 cm 2.2303839 m 17.392581 MeV 3.8124443 keV 1.1553617 cm 12.398417 m World muIoni + 64 -1.4935653 m -21.08232 cm 2.2310136 m 17.390433 MeV 2.1484745 keV 4.9677524 mm 12.403384 m World muIoni + 65 -1.4977665 m -21.134216 cm 2.2315557 m 17.387164 MeV 2.1257995 keV 4.2676318 mm 12.407652 m World muIoni + 66 -1.5761625 m -22.106495 cm 2.2417216 m 17.342101 MeV 32.420181 keV 7.9648837 cm 12.487301 m World muIoni + 67 -1.580707 m -22.161894 cm 2.2423117 m 17.340405 MeV 1.6963356 keV 4.6160341 mm 12.491917 m World muIoni + 68 -1.6243586 m -22.694527 cm 2.2479719 m 17.324471 MeV 14.205289 keV 4.4338337 cm 12.536255 m World muIoni + 69 -1.6519238 m -23.037007 cm 2.2514913 m 17.312566 MeV 10.493517 keV 2.7999286 cm 12.564255 m World muIoni + 70 -1.6748404 m -23.317573 cm 2.2544543 m 17.303544 MeV 7.291069 keV 2.3277392 cm 12.587532 m World muIoni + 71 -1.6836291 m -23.437098 cm 2.2557144 m 17.300187 MeV 2.3618254 keV 8.9586398 mm 12.596491 m World muIoni + 72 -1.6866951 m -23.478052 cm 2.2561596 m 17.297901 MeV 1.2361193 keV 3.1251074 mm 12.599616 m World muIoni + 73 -1.6990451 m -23.64159 cm 2.2579687 m 17.287835 MeV 5.5743968 keV 1.2588566 cm 12.612204 m World muIoni + 74 -1.7036276 m -23.69643 cm 2.2586826 m 17.285022 MeV 1.6411122 keV 4.670088 mm 12.616874 m World muIoni + 75 -1.7144753 m -23.826475 cm 2.2603812 m 17.278194 MeV 5.453449 keV 1.1056635 cm 12.627931 m World muIoni + 76 -1.7433361 m -24.173409 cm 2.2649106 m 17.266781 MeV 11.412991 keV 2.9419389 cm 12.65735 m World muIoni + 77 -1.7502915 m -24.249883 cm 2.265998 m 17.259441 MeV 4.3067075 keV 7.0813332 mm 12.664432 m World muIoni + 78 -1.771948 m -24.484688 cm 2.2693371 m 17.249323 MeV 8.8675948 keV 2.2037872 cm 12.68647 m World muIoni + 79 -1.7730259 m -24.496019 cm 2.2695024 m 17.247275 MeV 210.89506 eV 1.096377 mm 12.687566 m World muIoni + 80 -1.8653612 m -25.462802 cm 2.283609 m 17.203018 MeV 34.792284 keV 9.3906757 cm 12.781473 m World muIoni + 81 -1.8684715 m -25.495417 cm 2.2840957 m 17.197471 MeV 1.4590901 keV 3.1650202 mm 12.784638 m World muIoni + 82 -1.9102442 m -25.933124 cm 2.2906689 m 17.182621 MeV 14.849879 keV 4.251279 cm 12.827151 m World muIoni + 83 -1.9107463 m -25.938265 cm 2.2907473 m 17.134623 MeV 217.79668 eV 510.81063 um 12.827661 m World muIoni + 84 -1.9164845 m -25.996455 cm 2.2916242 m 17.128891 MeV 2.202384 keV 5.8338819 mm 12.833495 m World muIoni + 85 -1.978903 m -26.622327 cm 2.3011889 m 17.100063 MeV 22.989614 keV 6.3456923 cm 12.896952 m World muIoni + 86 -1.9901182 m -26.744528 cm 2.3030031 m 17.091759 MeV 4.9427513 keV 1.1426606 cm 12.908379 m World muIoni + 87 -1.9931535 m -26.777315 cm 2.303496 m 17.090593 MeV 1.1662758 keV 3.0924924 mm 12.911471 m World muIoni + 88 -2.0399301 m -27.285022 cm 2.3110531 m 17.069379 MeV 17.744365 keV 4.7654587 cm 12.959126 m World muIoni + 89 -2.0924434 m -27.891422 cm 2.3196933 m 17.048807 MeV 20.572343 keV 5.3563977 cm 13.01269 m World muIoni + 90 -2.0944304 m -27.914248 cm 2.320026 m 17.046435 MeV 636.6812 eV 2.0275527 mm 13.014717 m World muIoni + 91 -2.1635822 m -28.704673 cm 2.3315727 m 17.020964 MeV 25.471038 keV 7.0553992 cm 13.085271 m World muIoni + 92 -2.17877 m -28.878419 cm 2.3341549 m 17.016207 MeV 4.7573647 keV 1.5503394 cm 13.100775 m World muIoni + 93 -2.2030482 m -29.157295 cm 2.3382879 m 17.00239 MeV 9.6034453 keV 2.4785001 cm 13.12556 m World muIoni + 94 -2.2315803 m -29.489077 cm 2.3430738 m 16.988551 MeV 10.713279 keV 2.9120349 cm 13.15468 m World muIoni + 95 -2.2784518 m -30.023364 cm 2.3510224 m 16.968661 MeV 18.525778 keV 4.7840258 cm 13.20252 m World muIoni + 96 -2.2814545 m -30.058081 cm 2.3515349 m 16.967785 MeV 876.42209 eV 3.0658915 mm 13.205586 m World muIoni + 97 -2.3181243 m -30.4873 cm 2.3577831 m 16.954592 MeV 11.245463 keV 3.744525 cm 13.243032 m World muIoni + 98 -2.370894 m -31.057758 cm 2.3667596 m 16.932483 MeV 20.876403 keV 5.3831738 cm 13.296863 m World muIoni + 99 -2.4034293 m -31.388133 cm 2.3721843 m 16.917343 MeV 13.279478 keV 3.3149599 cm 13.330013 m World muIoni + 100 -2.4214999 m -31.577722 cm 2.37518 m 16.910663 MeV 4.969595 keV 1.8415076 cm 13.348428 m World muIoni + 101 -2.4247445 m -31.611825 cm 2.3757164 m 16.902913 MeV 1.2694586 keV 3.3062622 mm 13.351734 m World muIoni + 102 -2.4309428 m -31.676387 cm 2.3767395 m 16.898841 MeV 3.003196 keV 6.3152933 mm 13.35805 m World muIoni + 103 -2.4315648 m -31.682838 cm 2.3768424 m 16.897672 MeV 33.034364 eV 633.71685 um 13.358683 m World muIoni + 104 -2.4440195 m -31.81167 cm 2.3788972 m 16.8908 MeV 5.7911119 keV 1.2688697 cm 13.371372 m World muIoni + 105 -2.4997949 m -32.400241 cm 2.3882069 m 16.866717 MeV 19.482756 keV 5.6852878 cm 13.428225 m World muIoni + 106 -2.5156156 m -32.577242 cm 2.3908064 m 16.858614 MeV 6.8711779 keV 1.6130274 cm 13.444355 m World muIoni + 107 -2.5570969 m -33.035802 cm 2.3977056 m 16.843904 MeV 14.71044 keV 4.230059 cm 13.486656 m World muIoni + 108 -2.6087006 m -33.590187 cm 2.4059912 m 16.816777 MeV 17.912808 keV 5.2558151 cm 13.539214 m World muIoni + 109 -2.6146146 m -33.651861 cm 2.406907 m 16.813127 MeV 2.2812247 keV 6.0162592 mm 13.54523 m World muIoni + 110 -2.6961674 m -34.489002 cm 2.4195437 m 16.768098 MeV 31.787835 keV 8.2950372 cm 13.62818 m World muIoni + 111 -2.7575414 m -35.149051 cm 2.4291926 m 16.706315 MeV 21.708819 keV 6.2477949 cm 13.690658 m World muIoni + 112 -2.7699024 m -35.28398 cm 2.4311768 m 16.673517 MeV 3.7565332 keV 1.2591779 cm 13.70325 m World muIoni + 113 -2.7723513 m -35.310969 cm 2.4315618 m 16.670907 MeV 485.10029 eV 2.493636 mm 13.705744 m World muIoni + 114 -2.7884284 m -35.488858 cm 2.4340749 m 16.662459 MeV 6.9506113 keV 1.6369309 cm 13.722113 m World muIoni + 115 -2.793918 m -35.549145 cm 2.4349259 m 16.659986 MeV 1.168241 keV 5.5878194 mm 13.727701 m World muIoni + 116 -2.8092794 m -35.713103 cm 2.4373984 m 16.652756 MeV 5.2242479 keV 1.5645222 cm 13.743346 m World muIoni + 117 -2.8457971 m -36.104601 cm 2.4431892 m 16.638212 MeV 12.009417 keV 3.7180848 cm 13.780527 m World muIoni + 118 -2.8646371 m -36.303935 cm 2.4461697 m 16.62482 MeV 9.5702698 keV 1.9178219 cm 13.799705 m World muIoni + 119 -2.8679566 m -36.339752 cm 2.4467025 m 16.622749 MeV 736.00084 eV 3.3809752 mm 13.803086 m World muIoni + 120 -2.8831158 m -36.504166 cm 2.4491203 m 16.614055 MeV 8.693972 keV 1.5438659 cm 13.818525 m World muIoni + 121 -2.8844337 m -36.518301 cm 2.4493283 m 16.611606 MeV 63.395864 eV 1.3416944 mm 13.819867 m World muIoni + 122 -2.9343772 m -37.050507 cm 2.4572087 m 16.589652 MeV 20.73917 keV 5.0841013 cm 13.870708 m World muIoni + 123 -2.9543595 m -37.25868 cm 2.4604257 m 16.575643 MeV 12.058988 keV 2.0346396 cm 13.891054 m World muIoni + 124 -2.9716565 m -37.444023 cm 2.4632584 m 16.561191 MeV 5.9493429 keV 1.7625165 cm 13.908679 m World muIoni + 125 -2.9819064 m -37.552756 cm 2.4649353 m 16.554969 MeV 4.8914387 keV 1.0442987 cm 13.919122 m World muIoni + 126 -2.9923487 m -37.663514 cm 2.4666337 m 16.54792 MeV 3.4013317 keV 1.0637365 cm 13.929759 m World muIoni + 127 -3.0473827 m -38.24352 cm 2.4755711 m 16.524525 MeV 21.889654 keV 5.6056228 cm 13.985816 m World muIoni + 128 -3.0698722 m -38.474507 cm 2.4792528 m 16.513457 MeV 11.067792 keV 2.2905707 cm 14.008721 m World muIoni + 129 -3.1076422 m -38.865119 cm 2.4856799 m 16.50025 MeV 13.20732 keV 3.8511723 cm 14.047233 m World muIoni + 130 -3.1107528 m -38.896696 cm 2.4862171 m 16.447713 MeV 666.16089 eV 3.1723794 mm 14.050406 m World muIoni + 131 -3.1295943 m -39.092754 cm 2.4894521 m 16.434747 MeV 8.9262711 keV 1.9217535 cm 14.069623 m World muIoni + 132 -3.1367284 m -39.166994 cm 2.4906741 m 16.432106 MeV 2.6410112 keV 7.2759665 mm 14.076899 m World muIoni + 133 -3.1501171 m -39.309686 cm 2.4929448 m 16.425348 MeV 5.0130286 keV 1.3654636 cm 14.090554 m World muIoni + 134 -3.1629305 m -39.445809 cm 2.4951447 m 16.419239 MeV 4.467117 keV 1.307196 cm 14.103626 m World muIoni + 135 -3.1679037 m -39.496965 cm 2.4959949 m 16.415976 MeV 1.8091147 keV 5.071252 mm 14.108697 m World muIoni + 136 -3.1783144 m -39.603668 cm 2.497787 m 16.411027 MeV 4.9488488 keV 1.0617568 cm 14.119314 m World muIoni + 137 -3.1796639 m -39.617519 cm 2.4980197 m 16.405492 MeV 1.5077976 keV 1.376424 mm 14.120691 m World muIoni + 138 -3.2249609 m -40.094537 cm 2.5059028 m 16.386268 MeV 16.957168 keV 4.6224876 cm 14.166916 m World muIoni + 139 -3.2410092 m -40.25896 cm 2.508644 m 16.376662 MeV 3.3932054 keV 1.6363524 cm 14.183279 m World muIoni + 140 -3.3033069 m -40.891902 cm 2.5192918 m 16.348373 MeV 28.28868 keV 6.3517811 cm 14.246797 m World muIoni + 141 -3.3312977 m -41.162681 cm 2.524196 m 16.335065 MeV 10.017503 keV 2.8545946 cm 14.275343 m World muIoni + 142 -3.3322788 m -41.172349 cm 2.5243662 m 16.329748 MeV 147.32119 eV 1.0004146 mm 14.276343 m World muIoni + 143 -3.3745 m -41.585518 cm 2.5317343 m 16.303322 MeV 21.712749 keV 4.3058271 cm 14.319402 m World muIoni + 144 -3.4070392 m -41.879175 cm 2.5374465 m 16.285856 MeV 15.096166 keV 3.3167101 cm 14.352569 m World muIoni + 145 -3.4263226 m -42.051842 cm 2.5408412 m 16.277443 MeV 8.4129314 keV 1.965602 cm 14.372225 m World muIoni + 146 -3.5174715 m -42.884869 cm 2.5570332 m 16.235382 MeV 38.535506 keV 9.295112 cm 14.465176 m World muIoni + 147 -3.5271066 m -42.97107 cm 2.558797 m 16.229966 MeV 3.1338008 keV 9.8330502 mm 14.475009 m World muIoni + 148 -3.5410329 m -43.093169 cm 2.5614034 m 16.219471 MeV 5.5926055 keV 1.4220718 cm 14.48923 m World muIoni + 149 -3.556408 m -43.228934 cm 2.5642814 m 16.212719 MeV 6.7526097 keV 1.5700953 cm 14.504931 m World muIoni + 150 -3.5955086 m -43.564314 cm 2.5716224 m 16.195211 MeV 14.442619 keV 3.9924996 cm 14.544856 m World muIoni + 151 -3.610522 m -43.700795 cm 2.5744357 m 16.184736 MeV 4.4447899 keV 1.5335599 cm 14.560191 m World muIoni + 152 -3.6376025 m -43.939877 cm 2.5794811 m 16.174907 MeV 8.5448548 keV 2.7650205 cm 14.587841 m World muIoni + 153 -3.6463166 m -44.017102 cm 2.5810935 m 16.16876 MeV 4.6848267 keV 8.8955682 mm 14.596737 m World muIoni + 154 -3.6761747 m -44.283041 cm 2.58662 m 16.158834 MeV 8.4872544 keV 3.0481606 cm 14.627219 m World muIoni + 155 -3.700219 m -44.500578 cm 2.5910743 m 16.150912 MeV 6.8424405 keV 2.4550048 cm 14.651769 m World muIoni + 156 -3.7236899 m -44.710277 cm 2.5954686 m 16.136923 MeV 10.376656 keV 2.3970643 cm 14.675739 m World muIoni + 157 -3.777636 m -45.214056 cm 2.6054843 m 16.104031 MeV 21.928651 keV 5.5099239 cm 14.730839 m World muIoni + 158 -3.7955765 m -45.394689 cm 2.608801 m 16.095521 MeV 7.1374083 keV 1.833367 cm 14.749172 m World muIoni + 159 -3.8514631 m -45.939527 cm 2.6192486 m 16.07007 MeV 22.173326 keV 5.7115682 cm 14.806288 m World muIoni + 160 -3.8690694 m -46.117252 cm 2.622614 m 16.062495 MeV 7.5744309 keV 1.8012983 cm 14.824301 m World muIoni + 161 -3.899286 m -46.427676 cm 2.6283668 m 16.045433 MeV 14.568043 keV 3.0915756 cm 14.855217 m World muIoni + 162 -3.9187594 m -46.638461 cm 2.632065 m 16.037799 MeV 7.6337236 keV 1.993322 cm 14.87515 m World muIoni + 163 -3.9271817 m -46.730742 cm 2.6336597 m 16.030871 MeV 2.2650504 keV 8.6214975 mm 14.883771 m World muIoni + 164 -3.9291332 m -46.751877 cm 2.6340321 m 16.030124 MeV 746.84065 eV 1.9979509 mm 14.885769 m World muIoni + 165 -3.9308085 m -46.770151 cm 2.6343528 m 16.014535 MeV 732.63633 eV 1.7154081 mm 14.887485 m World muIoni + 166 -3.9557125 m -47.040007 cm 2.6391677 m 15.998594 MeV 12.055994 keV 2.5508477 cm 14.912993 m World muIoni + 167 -3.9989065 m -47.528886 cm 2.6473514 m 15.982158 MeV 13.642746 keV 4.4233658 cm 14.957227 m World muIoni + 168 -4.0174869 m -47.736116 cm 2.6507971 m 15.971227 MeV 7.7940021 keV 1.901049 cm 14.976237 m World muIoni + 169 -4.027045 m -47.841914 cm 2.6525784 m 15.966121 MeV 3.9033427 keV 9.780057 mm 14.986017 m World muIoni + 170 -4.0477564 m -48.075534 cm 2.6564202 m 15.958661 MeV 6.1485764 keV 2.1193924 cm 15.007211 m World muIoni + 171 -4.0928648 m -48.592998 cm 2.6643789 m 15.937691 MeV 20.969645 keV 4.6096817 cm 15.053308 m World muIoni + 172 -4.1339327 m -49.071954 cm 2.671629 m 15.917224 MeV 18.549362 keV 4.197734 cm 15.095285 m World muIoni + 173 -4.1613025 m -49.383267 cm 2.6764674 m 15.904531 MeV 10.787209 keV 2.7967986 cm 15.123253 m World muIoni + 174 -4.2081785 m -49.913473 cm 2.6846284 m 15.881122 MeV 22.214433 keV 4.787592 cm 15.171129 m World muIoni + 175 -4.2151594 m -49.997609 cm 2.6858466 m 15.876621 MeV 2.3885684 keV 7.1361784 mm 15.178266 m World muIoni + 176 -4.2233555 m -50.096156 cm 2.6872906 m 15.871426 MeV 3.9766152 keV 8.3805268 mm 15.186646 m World muIoni + 177 -4.2424221 m -50.319127 cm 2.6906528 m 15.8603 MeV 8.4840471 keV 1.948876 cm 15.206135 m World muIoni + 178 -4.2824811 m -50.78604 cm 2.6978102 m 15.843721 MeV 14.9254 keV 4.0960627 cm 15.247095 m World muIoni + 179 -4.283701 m -50.800243 cm 2.6980294 m 15.841934 MeV 435.67722 eV 1.2475445 mm 15.248343 m World muIoni + 180 -4.2873559 m -50.842673 cm 2.6986842 m 15.837354 MeV 756.21571 eV 3.7372379 mm 15.25208 m World muIoni + 181 -4.3134968 m -51.149426 cm 2.7033499 m 15.826006 MeV 10.300371 keV 2.673064 cm 15.278811 m World muIoni + 182 -4.3320041 m -51.366502 cm 2.7066002 m 15.818181 MeV 7.8245851 keV 1.8915633 cm 15.297727 m World muIoni + 183 -4.3718509 m -51.825323 cm 2.7134849 m 15.794324 MeV 16.028765 keV 4.0696895 cm 15.338423 m World muIoni + 184 -4.3737158 m -51.845665 cm 2.7138034 m 15.788811 MeV 922.23035 eV 1.9027794 mm 15.340326 m World muIoni + 185 -4.3891447 m -52.013089 cm 2.7164536 m 15.777639 MeV 9.30307 keV 1.5744146 cm 15.35607 m World muIoni + 186 -4.4154614 m -52.304344 cm 2.7209491 m 15.764368 MeV 12.126478 keV 2.6856327 cm 15.382927 m World muIoni + 187 -4.4580609 m -52.761208 cm 2.7280395 m 15.742465 MeV 15.166034 keV 4.3429375 cm 15.426356 m World muIoni + 188 -4.4640338 m -52.817899 cm 2.7289577 m 15.73762 MeV 1.8921629 keV 6.0695733 mm 15.432426 m World muIoni + 189 -4.5212218 m -53.358974 cm 2.7376585 m 15.707924 MeV 27.543146 keV 5.8099052 cm 15.490525 m World muIoni + 190 -4.5260818 m -53.401596 cm 2.7384058 m 15.703533 MeV 994.22477 eV 4.93557 mm 15.49546 m World muIoni + 191 -4.5284286 m -53.422285 cm 2.7387708 m 15.699337 MeV 1.5321332 keV 2.3840565 mm 15.497844 m World muIoni + 192 -4.528773 m -53.425356 cm 2.7388247 m 15.690914 MeV 35.196046 eV 349.93149 um 15.498194 m World muIoni + 193 -4.5372428 m -53.499761 cm 2.7401332 m 15.679601 MeV 2.4523257 keV 8.6024483 mm 15.506797 m World muIoni + 194 -4.5416984 m -53.540094 cm 2.7408073 m 15.676494 MeV 1.1775367 keV 4.5244208 mm 15.511321 m World muIoni + 195 -4.5672816 m -53.769967 cm 2.7446357 m 15.665917 MeV 10.576579 keV 2.5970048 cm 15.537291 m World muIoni + 196 -4.5709151 m -53.803006 cm 2.7451781 m 15.662903 MeV 3.0142683 keV 3.6885657 mm 15.54098 m World muIoni + 197 -4.5806709 m -53.892373 cm 2.7466389 m 15.655857 MeV 5.9519275 keV 9.9049784 mm 15.550885 m World muIoni + 198 -4.5833358 m -53.91716 cm 2.7470375 m 15.655258 MeV 598.88801 eV 2.7059123 mm 15.553591 m World muIoni + 199 -4.6314046 m -54.351543 cm 2.7542388 m 15.633312 MeV 21.946331 keV 4.8799815 cm 15.60239 m World muIoni + 200 -4.6430385 m -54.453175 cm 2.7560247 m 15.621034 MeV 7.254615 keV 1.1814006 cm 15.614204 m World muIoni + 201 -4.7112898 m -55.052959 cm 2.7665868 m 15.59113 MeV 26.169026 keV 6.9324385 cm 15.683529 m World muIoni + 202 -4.7323651 m -55.232649 cm 2.7700054 m 15.583256 MeV 7.8735302 keV 2.1426257 cm 15.704955 m World muIoni + 203 -4.7777587 m -55.595664 cm 2.777048 m 15.56037 MeV 21.774357 keV 4.608045 cm 15.751036 m World muIoni + 204 -4.781277 m -55.623977 cm 2.7775852 m 15.557571 MeV 572.06954 eV 3.5703764 mm 15.754606 m World muIoni + 205 -4.7839779 m -55.645397 cm 2.7779959 m 15.552372 MeV 838.21758 eV 2.7403325 mm 15.757346 m World muIoni + 206 -4.7898355 m -55.691724 cm 2.7788924 m 15.550119 MeV 1.0911758 keV 5.9438542 mm 15.76329 m World muIoni + 207 -4.8082825 m -55.836665 cm 2.7816949 m 15.537809 MeV 7.977731 keV 1.8714934 cm 15.782005 m World muIoni + 208 -4.82834 m -55.995352 cm 2.7847611 m 15.5262 MeV 10.430478 keV 2.0352557 cm 15.802358 m World muIoni + 209 -4.8316573 m -56.021606 cm 2.7852702 m 15.523697 MeV 675.12921 eV 3.3663398 mm 15.805724 m World muIoni + 210 -4.8447549 m -56.123825 cm 2.7872832 m 15.512495 MeV 5.5968304 keV 1.3290811 cm 15.819015 m World muIoni + 211 -4.8534828 m -56.191061 cm 2.7886085 m 15.50338 MeV 3.531377 keV 8.8535064 mm 15.827868 m World muIoni + 212 -4.87511 m -56.350823 cm 2.7919056 m 15.495213 MeV 7.1579685 keV 2.1935348 cm 15.849804 m World muIoni + 213 -4.8815981 m -56.397132 cm 2.7929022 m 15.48733 MeV 2.5997341 keV 6.5805172 mm 15.856384 m World muIoni + 214 -4.9058661 m -56.571764 cm 2.7966614 m 15.477522 MeV 8.0540556 keV 2.4619608 cm 15.881004 m World muIoni + 215 -4.9150727 m -56.63878 cm 2.7980607 m 15.472882 MeV 3.3969103 keV 9.336375 mm 15.89034 m World muIoni + 216 -4.961541 m -56.982909 cm 2.8050526 m 15.451969 MeV 19.389244 keV 4.7117525 cm 15.937458 m World muIoni + 217 -4.9673684 m -57.03083 cm 2.8059358 m 15.449436 MeV 2.5328877 keV 5.9133586 mm 15.943371 m OutOfWorld Transportation +Track (trackID 11, parentID 4) is processed with stopping code 2 NULL returned from G4StackManager. Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.03101(mm),1.1412578(mm),79.112737(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.19738688921(mm),2.4021066215094(mm),79.083400548152(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3036,7 +1457,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.652933(mm),-2.2427926(mm),78.297767(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.141368(mm),-0.95309374(mm),78.211643(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3045,7 +1466,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.743087(mm),-3.2486179(mm),78.987179(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.084175(mm),2.6958051(mm),78.398055(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3054,7 +1475,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.552079(mm),0.55377145(mm),79.197186(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.455735(mm),-0.68986223(mm),78.508866(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3063,7 +1484,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.653666(mm),1.2494883(mm),78.473965(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.82163(mm),3.3731817(mm),78.97333(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3072,7 +1493,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.748885(mm),1.7541646(mm),78.457176(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.174986(mm),2.8086845(mm),79.08735(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3081,7 +1502,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.153885(mm),-1.6840836(mm),79.267398(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.658111(mm),-1.7947277(mm),78.825835(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3090,7 +1511,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.483642(mm),-1.380793(mm),79.209253(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.707564(mm),-2.3792161(mm),78.288135(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3099,7 +1520,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.355575(mm),-0.89556916(mm),79.231835(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.1564(mm),0.77273062(mm),78.208993(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3108,7 +1529,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.513189(mm),-1.9705052(mm),79.027716(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.327176(mm),1.5511178(mm),79.413169(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3117,7 +1538,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.026905(mm),1.2367035(mm),79.113461(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.699254(mm),2.5118615(mm),78.818581(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3126,7 +1547,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.32479(mm),-0.90449136(mm),78.179301(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.629801(mm),2.9320185(mm),78.830827(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3135,7 +1556,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.98809(mm),-0.59800577(mm),78.943978(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.338963(mm),2.1125182(mm),78.529456(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3144,7 +1565,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.652938(mm),-0.55242542(mm),79.003075(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.867409(mm),-0.43923487(mm),79.317912(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3153,7 +1574,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.329653(mm),-0.30705036(mm),78.531097(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.077803(mm),2.5402915(mm),78.928159(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3162,7 +1583,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.740021(mm),1.8312554(mm),78.98772(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.770354(mm),3.0940321(mm),79.158698(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3171,7 +1592,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.865623(mm),-0.99730205(mm),78.612919(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.979422(mm),2.5660137(mm),78.416526(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3180,7 +1601,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.492002(mm),3.2318948(mm),79.031452(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.853163(mm),1.3112075(mm),78.967769(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3189,7 +1610,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.521055(mm),0.63813763(mm),79.202656(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.864153(mm),-1.3055087(mm),78.789505(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3198,7 +1619,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.606936(mm),-1.026257(mm),78.658532(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.072088(mm),-1.1864349(mm),78.929167(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3207,7 +1628,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.867214(mm),2.9507798(mm),78.612638(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.367043(mm),0.26686804(mm),78.348178(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3216,7 +1637,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.532716(mm),-2.0097542(mm),78.318965(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.910124(mm),1.366897(mm),79.31038(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3225,7 +1646,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.484741(mm),0.10399032(mm),78.151097(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.481357(mm),2.8419889(mm),79.033329(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3234,7 +1655,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.096554(mm),-1.0407638(mm),78.924853(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.426207(mm),2.4094806(mm),79.21938(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3243,7 +1664,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.034426(mm),-3.2367399(mm),79.112135(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.71839(mm),1.885693(mm),78.63888(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3252,7 +1673,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.305532(mm),-1.298043(mm),79.416986(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.505355(mm),-2.6876148(mm),78.676444(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3261,7 +1682,1723 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.935535(mm),-1.5814412(mm),78.776918(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.785079(mm),-2.2957328(mm),78.627121(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.172366(mm),-0.67593445(mm),79.264139(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.683753(mm),0.73161667(mm),78.644987(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.559295(mm),1.8649594(mm),79.37224(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.219889(mm),1.5353022(mm),78.726779(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.741583(mm),2.8462796(mm),78.458463(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.556732(mm),3.5052938(mm),78.491057(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.160873(mm),-3.2741343(mm),78.913512(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.487911(mm),-0.82561706(mm),79.032173(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.765201(mm),-1.8864091(mm),79.335934(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.445094(mm),-2.1386603(mm),79.039723(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.801979(mm),0.83862531(mm),78.800468(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.64326(mm),-1.585801(mm),79.181108(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.253334(mm),1.6699819(mm),78.191901(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.914377(mm),-2.6805052(mm),79.133303(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.558112(mm),-1.7734477(mm),79.019795(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.405939(mm),3.5840566(mm),78.693973(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.42578(mm),1.7730191(mm),78.690475(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.998948(mm),1.1462971(mm),79.294718(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.283586(mm),-1.4090293(mm),78.891874(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.473496(mm),1.2482484(mm),78.858388(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.561229(mm),-3.4921007(mm),78.666591(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.991958(mm),-3.8718007(mm),78.766969(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.905734(mm),2.9365773(mm),78.782173(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.505267(mm),1.5375123(mm),78.676459(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.526043(mm),1.6294506(mm),78.496469(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.568605(mm),0.37778932(mm),79.370599(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.088441(mm),-1.7125683(mm),78.926284(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.402971(mm),0.74293207(mm),78.51817(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.692011(mm),0.25459442(mm),78.996185(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.748753(mm),2.1762653(mm),79.162507(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.177099(mm),-1.9145351(mm),78.910651(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.545554(mm),-0.33499536(mm),79.198336(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.060474(mm),-2.3833525(mm),78.931215(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.255418(mm),-0.30476164(mm),78.720514(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.31742(mm),3.5270944(mm),78.709581(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.756099(mm),0.82568925(mm),78.455904(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.560865(mm),-0.8423289(mm),78.842983(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.39223(mm),2.8738916(mm),78.343737(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.067706(mm),-2.6008898(mm),79.106267(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.797033(mm),0.56534293(mm),79.330321(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.02916(mm),-3.1881829(mm),78.407756(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.08673(mm),1.4384553(mm),78.397604(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.359008(mm),-1.526025(mm),79.231229(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.95259(mm),-1.8405948(mm),78.24493(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.280103(mm),0.17945199(mm),78.716162(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.560405(mm),-3.3058811(mm),78.49041(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.818894(mm),-3.2997822(mm),78.973812(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.718846(mm),-0.14822658(mm),78.991453(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.103286(mm),-2.9235638(mm),78.923666(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.852322(mm),1.2420481(mm),79.144245(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.091344(mm),0.062552934(mm),79.278426(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.582064(mm),-0.56444192(mm),79.015572(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.614127(mm),-2.0319042(mm),79.186245(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.902039(mm),2.4878216(mm),79.311805(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.373189(mm),-1.6857534(mm),78.876075(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.953201(mm),-0.026612146(mm),79.126457(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.373713(mm),-0.03645428(mm),79.404963(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.946201(mm),0.039979552(mm),78.422383(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.046007(mm),-0.10569494(mm),78.228458(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.96012(mm),0.44485469(mm),79.125237(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.944151(mm),3.432724(mm),78.951726(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.944064(mm),-2.7807444(mm),79.128068(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.986429(mm),0.83358678(mm),78.238963(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.118688(mm),3.4290387(mm),78.92095(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.548547(mm),2.7348619(mm),78.845155(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.960524(mm),-3.0324926(mm),78.948839(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.047128(mm),0.031330716(mm),78.580914(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.411702(mm),-1.3935945(mm),78.869284(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.058523(mm),-2.527542(mm),78.578905(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 + +********************************************************************************************************* +* G4Track Information: Particle = pi+, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -1.35 cm -2.53 mm 7 cm 86.2 MeV 0 eV 0 fm 0 fm Target initStep + 1 -1.4637692 cm -2.9861237 mm 6.7688066 cm 79.436785 MeV 6.8108731 MeV 2.5664454 mm 2.5664454 mm Target Transportation + 2 1.18203 cm 17.227838 cm -2 m 79.436791 MeV9.2257026e-17 eV 2.5021177 m 2.5046841 m CaptureMgnt Transportation + 3 2.5595244 cm 15.960713 cm -2.0274664 m 79.428195 MeV 6.9733772 keV 3.3237262 cm 2.5379214 m World hIoni + 4 6.5885602 cm 12.259085 cm -2.1079853 m 79.40638 MeV 18.847152 keV 9.7348975 cm 2.6352704 m World hIoni + 5 7.7101418 cm 11.237004 cm -2.1302459 m 79.402391 MeV 2.8772053 keV 2.694054 cm 2.6622109 m World hIoni + 6 9.9854677 cm 9.1676058 cm -2.1753776 m 79.379729 MeV 11.129053 keV 5.4615259 cm 2.7168262 m World hIoni + 7 10.164919 cm 9.0046212 cm -2.1789216 m 79.377849 MeV 565.79577 eV 4.2937421 mm 2.7211199 m World hIoni + 8 12.941053 cm 6.4820139 cm -2.2337341 m 79.344651 MeV 12.772671 keV 6.6418862 cm 2.7875388 m World hIoni + 9 13.857119 cm 5.6575521 cm -2.2517266 m 79.342301 MeV 2.3499622 keV 2.1808741 cm 2.8093475 m World hIoni + 10 17.561267 cm 2.3189856 cm -2.3244644 m 79.327042 MeV 14.238845 keV 8.8189923 cm 2.8975374 m World hIoni + 11 19.570191 cm 5.0462504 mm -2.3639524 m 79.318668 MeV 8.3740526 keV 4.7875653 cm 2.9454131 m World hIoni + 12 19.676015 cm 4.0912809 mm -2.3660317 m 79.314997 MeV 2.0190736 keV 2.5209187 mm 2.947934 m World hIoni + 13 23.226367 cm -2.7923105 cm -2.4357424 m 79.296212 MeV 17.024411 keV 8.4528222 cm 3.0324622 m World hIoni + 14 24.04544 cm -3.5303215 cm -2.4518723 m 79.291305 MeV 3.6093897 keV 1.9537808 cm 3.052 m World hIoni + 15 24.726326 cm -4.143856 cm -2.4652966 m 79.283322 MeV 2.9224751 keV 1.6254688 cm 3.0682547 m World hIoni + 16 28.159739 cm -7.2358753 cm -2.5329482 m 79.271355 MeV 11.967036 keV 8.1924556 cm 3.1501793 m World hIoni + 17 28.942081 cm -7.9447197 cm -2.5483994 m 79.267382 MeV 2.3406529 keV 1.8713469 cm 3.1688928 m World hIoni + 18 30.105614 cm -8.999041 cm -2.5713747 m 79.253549 MeV 6.208565 keV 2.7828078 cm 3.1967208 m World hIoni + 19 30.207414 cm -9.0915967 cm -2.573393 m 79.252289 MeV 165.4238 eV 2.44267 mm 3.1991635 m World hIoni + 20 30.572289 cm -9.4234423 cm -2.5806278 m 79.249152 MeV 1.9593399 keV 8.7560296 mm 3.2079195 m World hIoni + 21 32.721101 cm -11.378275 cm -2.6232569 m 79.241224 MeV 6.8847922 keV 5.1585985 cm 3.2595055 m World hIoni + 22 33.874654 cm -12.426553 cm -2.6461108 m 79.23608 MeV 4.0856457 keV 2.7663326 cm 3.2871688 m World hIoni + 23 36.66242 cm -14.952413 cm -2.7012657 m 79.219221 MeV 12.887198 keV 6.6762481 cm 3.3539313 m World hIoni + 24 37.347648 cm -15.568651 cm -2.7147814 m 79.213252 MeV 4.3332535 keV 1.6358549 cm 3.3702899 m World hIoni + 25 38.146553 cm -16.287412 cm -2.7305553 m 79.209368 MeV 3.8835347 keV 1.9086716 cm 3.3893766 m World hIoni + 26 39.140732 cm -17.179698 cm -2.7501523 m 79.203889 MeV 4.1056216 keV 2.3717122 cm 3.4130937 m World hIoni + 27 39.536559 cm -17.534786 cm -2.7579624 m 79.189062 MeV 1.7966859 keV 9.4484376 mm 3.4225422 m World hIoni + 28 41.223188 cm -19.044375 cm -2.7912586 m 79.184492 MeV 4.5701733 keV 4.0261621 cm 3.4628038 m World hIoni + 29 41.937682 cm -19.684785 cm -2.805388 m 79.180502 MeV 2.8498066 keV 1.7079282 cm 3.4798831 m World hIoni + 30 46.494469 cm -23.760499 cm -2.8955357 m 79.156288 MeV 22.339851 keV 10.892297 cm 3.588806 m World hIoni + 31 49.961756 cm -26.848232 cm -2.9640006 m 79.137861 MeV 18.426664 keV 8.2722922 cm 3.6715289 m World hIoni + 32 51.177098 cm -27.924171 cm -2.9879825 m 79.132357 MeV 4.4367808 keV 2.8958596 cm 3.7004875 m World hIoni + 33 51.864674 cm -28.531088 cm -3.0015515 m 79.128757 MeV 2.2260566 keV 1.6377669 cm 3.7168652 m World hIoni + 34 53.197355 cm -29.707481 cm -3.0278374 m 79.121851 MeV 5.8978953 keV 3.1732379 cm 3.7485976 m World hIoni + 35 54.199807 cm -30.589376 cm -3.0475214 m 79.115942 MeV 4.4199449 keV 2.3784952 cm 3.7723825 m World hIoni + 36 58.413114 cm -34.30809 cm -3.1303461 m 79.099474 MeV 15.380918 keV 10.009013 cm 3.8724727 m World hIoni + 37 62.588814 cm -38.002771 cm -3.2127344 m 79.082453 MeV 15.205428 keV 9.9481433 cm 3.9719541 m World hIoni + 38 64.497555 cm -39.68948 cm -3.250327 m 79.073707 MeV 6.4977677 keV 4.5409604 cm 4.0173637 m World hIoni + 39 65.708396 cm -40.763429 cm -3.2742246 m 79.066849 MeV 5.621295 keV 2.8862514 cm 4.0462262 m World hIoni + 40 66.781663 cm -41.714286 cm -3.295443 m 79.064532 MeV 2.3163718 keV 2.5609116 cm 4.0718353 m World hIoni + 41 66.859652 cm -41.783174 cm -3.2969832 m 79.058004 MeV 291.62444 eV 1.8587053 mm 4.073694 m World hIoni + 42 68.934647 cm -43.614467 cm -3.3378974 m 79.049205 MeV 7.3462231 keV 4.9395293 cm 4.1230893 m World hIoni + 43 70.286989 cm -44.809426 cm -3.3645441 m 79.042818 MeV 6.3864207 keV 3.2182678 cm 4.155272 m World hIoni + 44 72.369679 cm -46.647953 cm -3.4056696 m 79.030165 MeV 10.596484 keV 4.9629541 cm 4.2049016 m World hIoni + 45 75.097016 cm -49.054365 cm -3.4595384 m 79.015881 MeV 10.634555 keV 6.4998209 cm 4.2698998 m World hIoni + 46 78.409294 cm -51.985567 cm -3.5252431 m 78.93932 MeV 13.941744 keV 7.920498 cm 4.3491047 m World hIoni + 47 78.815869 cm -52.343727 cm -3.5332616 m 78.936905 MeV 2.4155454 keV 9.6775411 mm 4.3587823 m World hIoni + 48 82.268251 cm -55.382671 cm -3.6012909 m 78.920566 MeV 16.339164 keV 8.2118175 cm 4.4409005 m World hIoni + 49 84.556421 cm -57.394145 cm -3.6463716 m 78.906497 MeV 12.658399 keV 5.4410027 cm 4.4953105 m World hIoni + 50 93.777774 cm -65.492231 cm -3.8279657 m 78.864038 MeV 39.342936 keV 21.917532 cm 4.7144858 m World hIoni + 51 96.970066 cm -68.297014 cm -3.8909822 m 78.846855 MeV 14.812598 keV 7.6005468 cm 4.7904913 m World hIoni + 52 99.674104 cm -70.688537 cm -3.9442869 m 78.833159 MeV 7.6228294 keV 6.4377948 cm 4.8548692 m World hIoni + 53 1.0060889 m -71.517968 cm -3.9626964 m 78.826409 MeV 4.8021905 keV 2.2250533 cm 4.8771198 m World hIoni + 54 1.0089626 m -71.7733 cm -3.9683584 m 78.814683 MeV 1.0517007 keV 6.8436866 mm 4.8839634 m World hIoni + 55 1.0110859 m -71.962384 cm -3.9725487 m 78.811724 MeV 960.23597 eV 5.0638613 mm 4.8890273 m World hIoni + 56 1.0167858 m -72.469734 cm -3.9837903 m 78.807676 MeV 2.5776264 keV 1.3586836 cm 4.9026141 m World hIoni + 57 1.0219216 m -72.927747 cm -3.9939328 m 78.805989 MeV 1.6874375 keV 1.2256648 cm 4.9148708 m World Decay +Track (trackID 3, parentID 1) is processed with stopping code 2 + +********************************************************************************************************* +* G4Track Information: Particle = mu+, Track ID = 58, Parent ID = 3 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 1.02 m -72.9 cm -3.99 m 65.1 MeV 0 eV 0 fm 0 fm World initStep + 1 1.0381994 m -73.873929 cm -4.0393669 m 65.111957 MeV 7.8587522 keV 4.9180732 cm 4.9180732 cm World muIoni + 2 1.0486845 m -74.487257 cm -4.068728 m 65.09594 MeV 7.5903224 keV 3.1774735 cm 8.0955467 cm World muIoni + 3 1.0789445 m -76.239306 cm -4.1531376 m 65.080748 MeV 13.531933 keV 9.1365291 cm 17.232076 cm World muIoni + 4 1.0957914 m -77.204438 cm -4.200172 m 65.066236 MeV 10.839704 keV 5.088429 cm 22.320505 cm World muIoni + 5 1.0974896 m -77.302612 cm -4.204933 m 65.063155 MeV 900.70267 eV 5.1492516 mm 22.83543 cm World muIoni + 6 1.1094585 m -77.993359 cm -4.2384824 m 65.055138 MeV 5.6276956 keV 3.6283966 cm 26.463827 cm World muIoni + 7 1.1163322 m -78.391969 cm -4.2577311 m 65.050088 MeV 3.2064062 keV 2.0824242 cm 28.546251 cm World muIoni + 8 1.1193661 m -78.568746 cm -4.2662363 m 65.04687 MeV 2.0727817 keV 9.2015081 mm 29.466402 cm World muIoni + 9 1.1281006 m -79.077571 cm -4.2907679 m 65.034722 MeV 5.1252331 keV 2.6532685 cm 32.11967 cm World muIoni + 10 1.149197 m -80.307123 cm -4.3502519 m 65.028139 MeV 6.5833268 keV 6.430082 cm 38.549752 cm World muIoni + 11 1.154516 m -80.613828 cm -4.3652546 m 65.025256 MeV 1.7532571 keV 1.621041 cm 40.170793 cm World muIoni + 12 1.1754496 m -81.833606 cm -4.4249625 m 65.015289 MeV 8.3532343 keV 6.4436361 cm 46.614429 cm World muIoni + 13 1.2177448 m -84.29755 cm -4.545516 m 64.990962 MeV 23.290192 keV 13.01122 cm 59.62565 cm World muIoni + 14 1.2501677 m -86.171368 cm -4.6378052 m 64.968108 MeV 17.956087 keV 9.9597596 cm 69.585409 cm World muIoni + 15 1.2592611 m -86.698251 cm -4.6637869 m 64.949559 MeV 5.3153905 keV 2.8026776 cm 72.388087 cm World muIoni + 16 1.2742175 m -87.568652 cm -4.7068976 m 64.931193 MeV 6.4686979 keV 4.6454127 cm 77.0335 cm World muIoni + 17 1.286421 m -88.272054 cm -4.7419128 m 64.922337 MeV 5.9437383 keV 3.7742121 cm 80.807712 cm World muIoni + 18 1.3088532 m -89.575229 cm -4.8060855 m 64.90391 MeV 14.677457 keV 6.9218333 cm 87.729545 cm World muIoni + 19 1.3380513 m -91.294641 cm -4.8900016 m 64.888688 MeV 13.29471 keV 9.049912 cm 96.779457 cm World muIoni + 20 1.3632994 m -92.780579 cm -4.9625045 m 64.875987 MeV 12.700341 keV 7.8198084 cm 1.0459927 m World muIoni + 21 1.36975 m -93.156812 cm -4.9809767 m 64.870477 MeV 1.8195304 keV 1.9924616 cm 1.0659173 m World muIoni + 22 1.4105169 m -95.531776 cm -5.0977531 m 64.849799 MeV 20.678221 keV 12.59474 cm 1.1918647 m World muIoni + 23 1.5142943 m -1.0161832 m -5.3943583 m 64.79613 MeV 53.66868 keV 32.007778 cm 1.5119425 m World muIoni + 24 1.5369057 m -1.0293145 m -5.4581847 m 64.770212 MeV 12.998127 keV 6.8974767 cm 1.5809172 m World muIoni + 25 1.5463829 m -1.0348563 m -5.4852127 m 64.763814 MeV 5.0114277 keV 2.9172638 cm 1.6100899 m World muIoni + 26 1.5565464 m -1.0407915 m -5.5141748 m 64.758819 MeV 3.9719871 keV 3.1262212 cm 1.6413521 m World muIoni + 27 1.6075808 m -1.0707064 m -5.6599935 m 64.734902 MeV 22.083921 keV 15.736176 cm 1.7987138 m World muIoni + 28 1.6294751 m -1.0838401 m -5.7234607 m 64.719604 MeV 13.840448 keV 6.841012 cm 1.8671239 m World muIoni + 29 1.6522746 m -1.0977312 m -5.7900219 m 64.707948 MeV 8.6414215 keV 7.171597 cm 1.9388399 m World muIoni + 30 1.6990095 m -1.1266811 m -5.9273487 m 64.684355 MeV 20.837475 keV 14.792222 cm 2.0867621 m World muIoni + 31 1.7466815 m -1.1564068 m -6.0667523 m 64.657926 MeV 24.115272 keV 15.029859 cm 2.2370607 m World muIoni + 32 1.831704 m -1.2101732 m -6.3173063 m 64.618091 MeV 38.637174 keV 26.999525 cm 2.507056 m World muIoni + 33 1.8376795 m -1.2139096 m -6.3348117 m 64.583568 MeV 3.257284 keV 1.8870744 cm 2.5259267 m World muIoni + 34 1.8549927 m -1.2246403 m -6.385441 m 64.575026 MeV 8.5416119 keV 5.4573145 cm 2.5804999 m World muIoni + 35 1.8843628 m -1.2428829 m -6.4717296 m 64.55888 MeV 16.146041 keV 9.2957636 cm 2.6734575 m World muIoni + 36 1.8890069 m -1.2457959 m -6.4854202 m 64.548771 MeV 2.1825427 keV 1.4747396 cm 2.6882049 m World muIoni + 37 1.9362591 m -1.2755403 m -6.6243248 m 64.523299 MeV 23.910653 keV 14.970663 cm 2.8379115 m World muIoni + 38 1.950199 m -1.2843435 m -6.6653499 m 64.513459 MeV 7.511599 keV 4.4214034 cm 2.8821256 m World muIoni + 39 1.9540053 m -1.2867533 m -6.6766005 m 64.509231 MeV 1.1934461 keV 1.2119 cm 2.8942446 m World muIoni + 40 1.9668178 m -1.294889 m -6.7145293 m 64.500541 MeV 7.4810457 keV 4.0852684 cm 2.9350972 m World muIoni + 41 1.9806247 m -1.3036192 m -6.7553293 m 64.489714 MeV 9.6303401 keV 4.3948685 cm 2.9790459 m World muIoni + 42 1.9958406 m -1.3132699 m -6.8003719 m 64.479866 MeV 8.6095727 keV 4.8512938 cm 3.0275589 m World muIoni + 43 2.0095375 m -1.3218651 m -6.8408799 m 64.472247 MeV 6.3605551 keV 4.3616266 cm 3.0711751 m World muIoni + 44 2.0235987 m -1.3307314 m -6.8825318 m 64.462829 MeV 7.6857292 keV 4.4846512 cm 3.1160216 m World muIoni + 45 2.0320149 m -1.3360508 m -6.9074582 m 64.455594 MeV 4.5556431 keV 2.6841352 cm 3.142863 m World muIoni + 46 2.0422051 m -1.3424966 m -6.9376654 m 64.449164 MeV 5.31972 keV 3.252481 cm 3.1753878 m World muIoni + 47 2.0550455 m -1.3506055 m -6.9756635 m 64.428646 MeV 10.099151 keV 4.0920493 cm 3.2163083 m World muIoni + 48 2.0578076 m -1.3523441 m -6.9838179 m 64.424059 MeV 1.0989249 keV 8.7832643 mm 3.2250916 m World muIoni + 49 2.058926 m -1.3530503 m -6.9871185 m 64.422042 MeV 819.08468 eV 3.5557494 mm 3.2286473 m World muIoni + 50 2.0887698 m -1.3719242 m -7.0752141 m 64.402696 MeV 17.917325 keV 9.4909073 cm 3.3235564 m World muIoni + 51 2.0953919 m -1.3760985 m -7.094735 m 64.398398 MeV 2.945617 keV 2.1031971 cm 3.3445884 m World muIoni + 52 2.096372 m -1.3767125 m -7.0976232 m 64.395663 MeV 994.07773 eV 3.1111324 mm 3.3476995 m World muIoni + 53 2.0989404 m -1.3783219 m -7.1051908 m 64.394606 MeV 1.0572637 keV 8.1520365 mm 3.3558515 m World muIoni + 54 2.1035365 m -1.3812012 m -7.1187318 m 64.384962 MeV 4.2425965 keV 1.4586691 cm 3.3704382 m World muIoni + 55 2.1303696 m -1.3981599 m -7.1980683 m 64.364119 MeV 19.524724 keV 8.5451222 cm 3.4558894 m World muIoni + 56 2.1430766 m -1.4061974 m -7.2353154 m 64.35585 MeV 7.0681529 keV 4.016733 cm 3.4960568 m World muIoni + 57 2.1671993 m -1.4214722 m -7.3062033 m 64.338632 MeV 14.610875 keV 7.6422073 cm 3.5724788 m World muIoni + 58 2.1719804 m -1.4244988 m -7.3203118 m 64.335688 MeV 1.8989926 keV 1.5200925 cm 3.5876798 m World muIoni + 59 2.1818526 m -1.4307382 m -7.3493848 m 64.325055 MeV 9.0470507 keV 3.1331032 cm 3.6190108 m World muIoni + 60 2.1900147 m -1.4359031 m -7.373373 m 64.306847 MeV 6.4248159 keV 2.5859761 cm 3.6448706 m World muIoni + 61 2.2146565 m -1.4516665 m -7.4463191 m 64.289871 MeV 15.717791 keV 7.8592963 cm 3.7234635 m World muIoni + 62 2.2388149 m -1.467046 m -7.5180805 m 64.27736 MeV 11.312656 keV 7.7264884 cm 3.8007284 m World muIoni + 63 2.2841188 m -1.496249 m -7.6532571 m 64.252034 MeV 23.174935 keV 14.552674 cm 3.9462551 m World muIoni + 64 2.3014635 m -1.5073055 m -7.7051411 m 64.241178 MeV 9.8594306 keV 5.5812535 cm 4.0020677 m World muIoni + 65 2.3057456 m -1.5100386 m -7.7179309 m 64.237699 MeV 1.3830664 keV 1.3761766 cm 4.0158294 m World muIoni + 66 2.3073043 m -1.5110308 m -7.7225851 m 64.23541 MeV 357.74774 eV 5.0075396 mm 4.020837 m World muIoni + 67 2.3106825 m -1.5131784 m -7.7326638 m 64.234581 MeV 829.09629 eV 1.0844575 cm 4.0316816 m World muIoni + 68 2.3124953 m -1.5143327 m -7.7380775 m 64.233385 MeV 1.1965106 keV 5.8246577 mm 4.0375062 m World muIoni + 69 2.3506385 m -1.5386278 m -7.8520104 m 64.211121 MeV 20.852496 keV 12.25802 cm 4.1600864 m World muIoni + 70 2.3750047 m -1.5539766 m -7.9244787 m 64.193597 MeV 15.889351 keV 7.7980525 cm 4.2380669 m World muIoni + 71 2.3763301 m -1.5548004 m -7.9284062 m 64.191166 MeV 1.0297845 keV 4.2261522 mm 4.2422931 m World muIoni + 72 2.3857148 m -1.560639 m -7.9562246 m 64.050125 MeV 5.7538758 keV 2.9933713 cm 4.2722268 m World muIoni + 73 2.420704 m -1.5826373 m -8.0596027 m 64.02913 MeV 20.995254 keV 11.133386 cm 4.3835607 m World muIoni + 74 2.4425388 m -1.5964558 m -8.1242751 m 64.012999 MeV 14.183145 keV 6.9643599 cm 4.4532043 m World muIoni + 75 2.4535597 m -1.6034143 m -8.1567113 m 64.000447 MeV 7.0881553 keV 3.4956998 cm 4.4881613 m World muIoni + 76 2.4581317 m -1.6063127 m -8.1701411 m 63.997053 MeV 1.8810597 keV 1.447968 cm 4.5026409 m World muIoni + 77 2.4639141 m -1.6099874 m -8.1871824 m 63.99404 MeV 3.0130502 keV 1.8367026 cm 4.521008 m World muIoni + 78 2.4704544 m -1.6141446 m -8.2064078 m 63.990535 MeV 2.1342116 keV 2.0728544 cm 4.5417365 m World muIoni + 79 2.497009 m -1.6309584 m -8.2841015 m 63.976465 MeV 14.070167 keV 8.381034 cm 4.6255469 m World muIoni + 80 2.5002336 m -1.6330038 m -8.2935606 m 63.970515 MeV 2.0751264 keV 1.0200828 cm 4.6357477 m World muIoni + 81 2.5104244 m -1.6396055 m -8.3237225 m 63.966389 MeV 2.3104339 keV 3.2514326 cm 4.668262 m World muIoni + 82 2.5557859 m -1.6690311 m -8.4581562 m 63.941916 MeV 23.071892 keV 14.489995 cm 4.813162 m World muIoni + 83 2.568951 m -1.6775245 m -8.4972334 m 63.929573 MeV 9.78873 keV 4.2100941 cm 4.8552629 m World muIoni + 84 2.5893496 m -1.6906352 m -8.5578265 m 63.913309 MeV 11.304015 keV 6.5265027 cm 4.9205279 m World muIoni + 85 2.5950977 m -1.6942483 m -8.5745394 m 63.908364 MeV 3.5197321 keV 1.8039759 cm 4.9385677 m World muIoni + 86 2.5957572 m -1.6946493 m -8.5763927 m 63.871511 MeV 99.877613 eV 2.0075354 mm 4.9405752 m World muIoni + 87 2.6213323 m -1.7102991 m -8.6481962 m 63.854526 MeV 12.305078 keV 7.781235 cm 5.0183876 m World muIoni + 88 2.7535101 m -1.7907724 m -9.0187695 m 63.790341 MeV 63.079862 keV 40.158831 cm 5.4199759 m World muIoni + 89 2.7667277 m -1.7987856 m -9.0553095 m 63.781392 MeV 7.1341569 keV 3.9674786 cm 5.4596507 m World muIoni + 90 2.7882168 m -1.8118319 m -9.1147496 m 63.769025 MeV 11.325803 keV 6.45377 cm 5.5241884 m World muIoni + 91 2.8284485 m -1.8356255 m -9.2220894 m 63.745301 MeV 22.513228 keV 11.707519 cm 5.6412636 m World muIoni + 92 2.835378 m -1.8397448 m -9.240585 m 63.74199 MeV 3.3101881 keV 2.0176048 cm 5.6614396 m World muIoni + 93 2.8387684 m -1.8417621 m -9.2496274 m 63.73591 MeV 2.8412998 keV 9.8655399 mm 5.6713051 m World muIoni + 94 2.8475969 m -1.8470066 m -9.2731528 m 63.728288 MeV 5.3819905 keV 2.5668934 cm 5.6969741 m World muIoni + 95 2.8754006 m -1.8634536 m -9.3471571 m 63.710311 MeV 16.860224 keV 8.0747741 cm 5.7777218 m World muIoni + 96 2.8775839 m -1.8647409 m -9.3529564 m 63.706685 MeV 1.672528 keV 6.3288885 mm 5.7840507 m World muIoni + 97 2.8865556 m -1.8700367 m -9.3767859 m 63.702427 MeV 2.6686372 keV 2.6007428 cm 5.8100581 m World muIoni + 98 2.900711 m -1.8784099 m -9.4143545 m 63.69508 MeV 6.2661621 keV 4.1010782 cm 5.8510689 m World muIoni + 99 2.9216383 m -1.8907495 m -9.4697786 m 63.685066 MeV 8.9406522 keV 6.051494 cm 5.9115839 m World muIoni + 100 2.9416835 m -1.9025857 m -9.5227936 m 63.667616 MeV 11.441091 keV 5.7900761 cm 5.9694846 m World muIoni + 101 2.9828121 m -1.9271184 m -9.6320655 m 63.651919 MeV 15.696247 keV 11.930544 cm 6.0887901 m World muIoni + 102 3.0241874 m -1.951957 m -9.7420713 m 63.631662 MeV 18.906598 keV 12.012575 cm 6.2089158 m World muIoni + 103 3.0364778 m -1.9594439 m -9.7748139 m 63.62068 MeV 7.1789748 keV 3.5765733 cm 6.2446815 m World muIoni + 104 3.0614658 m -1.9746335 m -9.8414241 m 63.592953 MeV 14.97274 keV 7.274648 cm 6.317428 m World muIoni + 105 3.0837872 m -1.9882301 m -9.900775 m 63.578322 MeV 13.568834 keV 6.4850926 cm 6.3822789 m World muIoni + 106 3.0966192 m -1.9960272 m -9.9347105 m 63.570226 MeV 6.3258626 keV 3.7108973 cm 6.4193879 m World muIoni + 107 3.1153744 m -2.0074221 m -9.9842319 m 63.549567 MeV 9.3995631 keV 5.416619 cm 6.4735541 m World muIoni + 108 3.1684056 m -2.0394559 m -10.123631 m 63.519003 MeV 29.316352 keV 15.254751 cm 6.6261016 m World muIoni + 109 3.2103521 m -2.0643801 m -10.23461 m 63.492002 MeV 25.001214 keV 12.123133 cm 6.747333 m World muIoni + 110 3.2191799 m -2.0695697 m -10.257918 m 63.4868 MeV 3.776912 keV 2.545794 cm 6.7727909 m World muIoni + 111 3.2331232 m -2.0777772 m -10.294736 m 63.476978 MeV 7.2342153 keV 4.0216899 cm 6.8130078 m World muIoni + 112 3.2333085 m -2.0778869 m -10.295226 m 63.456567 MeV 43.379101 eV 535.15704 um 6.8135429 m World muIoni + 113 3.3077709 m -2.1221682 m -10.491954 m 63.41649 MeV 38.78804 keV 21.49596 cm 7.0285025 m World muIoni + 114 3.3354033 m -2.1387275 m -10.565093 m 63.365137 MeV 12.487974 keV 7.991929 cm 7.1084218 m World muIoni + 115 3.3578152 m -2.1522019 m -10.624735 m 63.350926 MeV 11.671137 keV 6.5123203 cm 7.173545 m World muIoni + 116 3.3832851 m -2.1673002 m -10.692111 m 63.334811 MeV 14.778053 keV 7.3594566 cm 7.2471396 m World muIoni + 117 3.3891166 m -2.1707595 m -10.707506 m 63.330122 MeV 1.4873012 keV 1.6821682 cm 7.2639613 m World muIoni + 118 3.396492 m -2.1751219 m -10.726924 m 63.327191 MeV 2.9304792 keV 2.122494 cm 7.2851862 m World muIoni + 119 3.4151775 m -2.1861703 m -10.776122 m 63.316174 MeV 9.8705561 keV 5.3774376 cm 7.3389606 m World muIoni + 120 3.4299068 m -2.1949296 m -10.814888 m 63.306906 MeV 7.3932119 keV 4.2384804 cm 7.3813454 m World muIoni + 121 3.430939 m -2.1955391 m -10.817599 m 63.305308 MeV 281.95834 eV 2.9643335 mm 7.3843097 m World muIoni + 122 3.4336598 m -2.1971428 m -10.82474 m 63.301916 MeV 1.1565775 keV 7.8079369 mm 7.3921177 m World muIoni + 123 3.4567013 m -2.2106682 m -10.885209 m 63.282815 MeV 13.399952 keV 6.6108458 cm 7.4582261 m World muIoni + 124 3.457722 m -2.2112672 m -10.887885 m 63.280745 MeV 683.62027 eV 2.9259482 mm 7.4611521 m World muIoni + 125 3.4835423 m -2.226417 m -10.955521 m 63.267348 MeV 11.861122 keV 7.3965779 cm 7.5351179 m World muIoni + 126 3.4921667 m -2.2315168 m -10.978164 m 63.26246 MeV 3.6395472 keV 2.476081 cm 7.5598787 m World muIoni + 127 3.5151352 m -2.2452301 m -11.038666 m 63.245171 MeV 16.114456 keV 6.6151719 cm 7.6260304 m World muIoni + 128 3.5313262 m -2.254794 m -11.081278 m 63.238862 MeV 5.2357021 keV 4.6576662 cm 7.6726071 m World muIoni + 129 3.5401653 m -2.2599891 m -11.104535 m 63.233399 MeV 4.0917027 keV 2.541671 cm 7.6980238 m World muIoni + 130 3.5550765 m -2.2687708 m -11.143815 m 63.219467 MeV 8.6479744 keV 4.2923105 cm 7.7409469 m World muIoni + 131 3.5654749 m -2.2748671 m -11.171067 m 63.210094 MeV 6.3724116 keV 2.9798983 cm 7.7707459 m World muIoni + 132 3.6177862 m -2.305729 m -11.308438 m 63.185587 MeV 24.506538 keV 15.019857 cm 7.9209444 m World muIoni + 133 3.6224253 m -2.3084506 m -11.320564 m 63.156012 MeV 1.98029 keV 1.3265916 cm 7.9342103 m World muIoni + 134 3.6453171 m -2.3219505 m -11.380603 m 63.134686 MeV 9.6606325 keV 6.5657292 cm 7.9998676 m World muIoni + 135 3.6905212 m -2.3487685 m -11.498919 m 63.045066 MeV 18.014115 keV 12.946571 cm 8.1293333 m World muIoni + 136 3.6989848 m -2.3538866 m -11.521086 m 63.037765 MeV 5.9733979 keV 2.4273622 cm 8.153607 m World muIoni + 137 3.7206864 m -2.3669822 m -11.577745 m 63.02777 MeV 8.0299236 keV 6.207 cm 8.215677 m World muIoni + 138 3.7406533 m -2.3790962 m -11.62993 m 63.015447 MeV 9.4593796 keV 5.7172583 cm 8.2728495 m World muIoni + 139 3.7680681 m -2.395658 m -11.701895 m 63.000519 MeV 13.937327 keV 7.8770862 cm 8.3516204 m World muIoni + 140 3.7837692 m -2.4051057 m -11.742999 m 62.985376 MeV 11.341394 keV 4.5004075 cm 8.3966245 m World muIoni + 141 3.8503392 m -2.4451431 m -11.9174 m 62.946357 MeV 35.081932 keV 19.091977 cm 8.5875443 m World muIoni + 142 3.8551379 m -2.4480291 m -11.93 m 62.942582 MeV 1.9871447 keV 1.3788651 cm 8.6013329 m World muIoni + 143 3.8562937 m -2.4487205 m -11.933028 m 62.940107 MeV 623.91636 eV 3.3138486 mm 8.6046468 m World muIoni + 144 3.8696801 m -2.456735 m -11.968136 m 62.927767 MeV 6.1217834 keV 3.8418516 cm 8.6430653 m World muIoni + 145 3.8807404 m -2.4633945 m -11.997226 m 62.92147 MeV 6.2967726 keV 3.182623 cm 8.6748915 m World muIoni + 146 3.889164 m -2.4684224 m -12.019351 m 62.91623 MeV 5.2406441 keV 2.4202142 cm 8.6990936 m World muIoni + 147 3.8948034 m -2.4717881 m -12.034159 m 62.910317 MeV 4.5084223 keV 1.6199478 cm 8.7152931 m World muIoni + 148 3.8984372 m -2.4739551 m -12.043691 m 62.907036 MeV 938.3031 eV 1.042873 cm 8.7257218 m World muIoni + 149 3.9361765 m -2.4965257 m -12.142717 m 62.884133 MeV 21.090739 keV 10.835058 cm 8.8340724 m World muIoni + 150 3.9366712 m -2.4968185 m -12.14401 m 62.882113 MeV 49.053225 eV 1.4149262 mm 8.8354873 m World muIoni + 151 3.9432326 m -2.5007001 m -12.16115 m 62.875947 MeV 3.013899 keV 1.8758935 cm 8.8542463 m World muIoni + 152 3.9668434 m -2.5146589 m -12.22287 m 62.859908 MeV 14.501321 keV 6.754019 cm 8.9217865 m World muIoni + 153 3.9859767 m -2.5259901 m -12.272905 m 62.84831 MeV 11.597573 keV 5.4753981 cm 8.9765405 m World muIoni + 154 3.9861733 m -2.5261059 m -12.273419 m 62.846758 MeV 0 eV 562.41012 um 8.9771029 m World muIoni + 155 4.0427975 m -2.5594451 m -12.42111 m 62.816427 MeV 29.334545 keV 16.164981 cm 9.1387527 m World muIoni + 156 4.0430763 m -2.5596098 m -12.421831 m 62.814698 MeV 328.78334 eV 789.88379 um 9.1395426 m World muIoni + 157 4.0623551 m -2.571017 m -12.471724 m 62.798899 MeV 9.1999947 keV 5.4691597 cm 9.1942342 m World muIoni + 158 4.0751776 m -2.5785878 m -12.504958 m 62.790445 MeV 6.0264846 keV 3.6416933 cm 9.2306511 m World muIoni + 159 4.0799565 m -2.5814108 m -12.517344 m 62.786244 MeV 2.630841 keV 1.3573483 cm 9.2442246 m World muIoni + 160 4.0915774 m -2.5882903 m -12.547414 m 62.780791 MeV 5.4527895 keV 3.2963277 cm 9.2771879 m World muIoni + 161 4.1046254 m -2.5959934 m -12.581018 m 62.775948 MeV 4.8426735 keV 3.6861352 cm 9.3140492 m World muIoni + 162 4.1275282 m -2.6095453 m -12.640237 m 62.762942 MeV 10.735499 keV 6.492384 cm 9.378973 m World muIoni + 163 4.1339023 m -2.6132757 m -12.656668 m 62.757978 MeV 2.3100289 keV 1.8015119 cm 9.3969882 m World muIoni + 164 4.1589857 m -2.6279906 m -12.721422 m 62.743735 MeV 12.408884 keV 7.0984411 cm 9.4679726 m World muIoni + 165 4.1861911 m -2.6438366 m -12.791167 m 62.728325 MeV 13.53442 keV 7.6521212 cm 9.5444938 m World muIoni + 166 4.2041824 m -2.6543944 m -12.837205 m 62.706625 MeV 7.29769 keV 5.0544375 cm 9.5950382 m World muIoni + 167 4.2283694 m -2.6685 m -12.898875 m 62.691456 MeV 15.168827 keV 6.7728171 cm 9.6627663 m OutOfWorld Transportation +Track (trackID 58, parentID 3) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.389140990644(mm),-3.6015874925038(mm),78.696935164991(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.355895(mm),-2.8854243(mm),78.702797(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.03037(mm),-0.27515912(mm),78.231215(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.741159(mm),1.082828(mm),78.634865(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.893051(mm),1.0949859(mm),78.431755(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.339326(mm),2.9534021(mm),78.353065(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.946922(mm),3.7694133(mm),78.598583(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.95953(mm),0.020890476(mm),78.59636(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.398341(mm),0.63094048(mm),78.166332(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.878872(mm),2.187628(mm),79.139563(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.835454(mm),-2.2428303(mm),79.323546(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.532635(mm),2.0908738(mm),78.671633(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.481234(mm),2.2237483(mm),78.328043(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.168975(mm),-3.5646547(mm),78.912083(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.623651(mm),2.9656623(mm),78.831912(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.242138(mm),1.8045639(mm),78.899183(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.498701(mm),3.5684394(mm),79.030271(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.238807(mm),-2.6651704(mm),79.252424(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.368207(mm),-1.0818319(mm),78.347972(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.392493(mm),-0.98453949(mm),78.167363(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.986007(mm),-3.4475815(mm),78.591692(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.072358(mm),-0.10205508(mm),78.752792(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.157603(mm),2.7309308(mm),78.385108(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.612365(mm),2.1933684(mm),79.010229(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.495507(mm),-1.718933(mm),79.030834(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.433387(mm),3.9512053(mm),78.86546(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.048843(mm),3.3970184(mm),78.756939(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.728804(mm),1.891193(mm),78.81337(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.747183(mm),-0.37730854(mm),79.162784(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.800408(mm),1.9541099(mm),79.329726(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.165856(mm),-1.0493614(mm),78.559979(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.317521(mm),-1.5290068(mm),79.414872(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.667503(mm),-2.7593877(mm),78.295199(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.27324(mm),-2.794512(mm),79.246353(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.913651(mm),-0.49272981(mm),78.428123(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.138379(mm),0.076577711(mm),79.446459(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.609728(mm),2.1403533(mm),79.363348(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.987391(mm),-3.6588247(mm),78.944101(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.515289(mm),-1.4436814(mm),78.145711(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.317843(mm),-2.5857171(mm),78.709507(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.578006(mm),-0.13251095(mm),79.016287(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.997402(mm),-0.41890754(mm),79.29499(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.364729(mm),-1.0477185(mm),78.348586(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.101586(mm),-0.27456149(mm),78.394985(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.818086(mm),-2.1586679(mm),79.150282(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.924474(mm),-1.9144418(mm),78.426214(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.536058(mm),3.5406161(mm),78.494703(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.832085(mm),-2.6696517(mm),78.442505(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.375993(mm),-0.40792702(mm),79.404561(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.652132(mm),-3.2447948(mm),78.82689(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.028592(mm),0.57606029(mm),78.407856(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.771213(mm),1.3890911(mm),79.158547(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.051216(mm),-2.8895476(mm),78.932847(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.082284(mm),1.520679(mm),78.927369(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.673998(mm),-0.12652053(mm),78.646707(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.503569(mm),1.0472665(mm),78.147777(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.323735(mm),-0.03333885(mm),78.708468(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.987428(mm),1.4114762(mm),78.591441(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.538204(mm),-1.678653(mm),78.494324(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.476185(mm),-3.1379843(mm),79.034241(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.517596(mm),2.9678553(mm),78.850612(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.585072(mm),0.066657409(mm),78.838714(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.228059(mm),3.2526695(mm),78.549011(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.941183(mm),-1.612803(mm),78.246941(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.933122(mm),-2.0334509(mm),78.248363(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.29864(mm),1.0066878(mm),79.065547(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.879566(mm),-1.1843341(mm),78.786787(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.602184(mm),-2.2774102(mm),78.835697(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.83472(mm),-0.05308545(mm),78.618368(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.616152(mm),-1.635258(mm),79.362215(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.154111(mm),1.8304197(mm),78.385723(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.098112(mm),3.0796742(mm),78.924578(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.119894(mm),-1.0245308(mm),79.449719(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.674296(mm),3.0536369(mm),78.999309(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.405184(mm),-2.3705365(mm),78.517779(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.418348(mm),-0.37297076(mm),78.162804(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.927831(mm),-1.8752995(mm),79.130931(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.075214(mm),-3.7154665(mm),78.575962(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.474357(mm),0.94209851(mm),78.505582(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.000842(mm),-0.49415777(mm),79.294384(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.876865(mm),-3.3568204(mm),78.610936(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.949777(mm),2.7609054(mm),78.421753(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.87836(mm),1.5865581(mm),78.434346(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.474301(mm),1.3689821(mm),78.329265(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.463211(mm),-3.4314394(mm),78.683875(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.127214(mm),-3.574926(mm),78.919447(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.151291(mm),-1.0697457(mm),79.444183(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.24454(mm),0.81640445(mm),79.075086(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.903948(mm),-0.19337305(mm),79.311469(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.962098(mm),-2.4465769(mm),79.124888(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.417425(mm),1.4438933(mm),78.691948(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.971922(mm),1.2797811(mm),78.946829(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.390916(mm),-0.075298038(mm),79.049276(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.349437(mm),-0.90862489(mm),79.232917(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.604289(mm),0.40968787(mm),78.306345(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3387,7 +3524,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.373033(mm),-0.38050055(mm),79.052429(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.129576(mm),-1.6258045(mm),78.39005(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3396,7 +3533,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.904921(mm),-1.742613(mm),78.253335(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.517903(mm),-0.85794001(mm),79.026885(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3405,363 +3542,739 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.706491(mm),0.075055981(mm),78.288324(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.822215(mm),1.31838(mm),79.325881(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.375883(mm),3.0288144(mm),78.346619(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.617972(mm),-0.93645384(mm),79.00924(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.779186(mm),-0.96074465(mm),78.275506(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.224143(mm),2.4539229(mm),79.25501(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.014346(mm),1.0189764(mm),78.939349(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.035856(mm),2.1965648(mm),78.406575(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.24835(mm),-1.8487689(mm),79.074414(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.047479(mm),-1.3462161(mm),79.28616(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.638935(mm),-0.34236477(mm),78.476563(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.141654(mm),3.7766718(mm),78.916901(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.975956(mm),2.8785098(mm),78.593464(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.681853(mm),1.0760206(mm),78.116341(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.924697(mm),0.32108102(mm),78.778829(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.871178(mm),-1.2019743(mm),79.317247(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.648555(mm),-1.1631884(mm),78.122213(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.110069(mm),3.5630743(mm),78.746143(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.951926(mm),-0.90726762(mm),78.950355(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.758014(mm),2.3130624(mm),79.160874(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.43137(mm),-1.4386841(mm),79.042143(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.610519(mm),-1.9245886(mm),78.305246(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.150236(mm),-0.40173533(mm),79.444369(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.518983(mm),1.1592386(mm),78.850368(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.33247(mm),-3.6991536(mm),78.706928(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.350866(mm),3.7582482(mm),78.880011(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.117901(mm),-3.0396403(mm),78.744762(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 ********************************************************************************************************* -* G4Track Information: Particle = pi+, Track ID = 3, Parent ID = 1 +* G4Track Information: Particle = pi+, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.32 cm 3.76 mm 7.83 cm 73.9 MeV 0 eV 0 fm 0 fm Target initStep - 1 -1.301248 cm 3.1067962 mm 7.8939678 cm 71.562662 MeV 2.300154 MeV 953.24685 um 953.24685 um Target Transportation - 2 -1.164053 mm -7.408665 cm 2 m 71.562672 MeV1.0684308e-16 eV 2.7659871 m 2.7669403 m CaptureMgnt Transportation - 3 -3.0778402 mm -9.1761597 cm 2.0171621 m 71.556806 MeV 4.221891 keV 2.4710417 cm 2.7916508 m World hIoni - 4 -4.526053 mm -10.506582 cm 2.0300916 m 71.551003 MeV 3.3764205 keV 1.8608399 cm 2.8102592 m World hIoni - 5 -1.0924269 cm -16.41151 cm 2.0873787 m 71.534172 MeV 15.772955 keV 8.2520216 cm 2.8927794 m World hIoni - 6 -1.4674019 cm -19.983733 cm 2.1219124 m 71.527205 MeV 5.696275 keV 4.9826823 cm 2.9426062 m World hIoni - 7 -1.5185893 cm -20.474047 cm 2.1266606 m 71.526297 MeV 907.91365 eV 6.844561 mm 2.9494508 m World Decay -Track (trackID 3, parentID 1) is processed with stopping code 2 + 0 -8.19 mm -2.7 mm 4.18 cm 33.7 MeV 0 eV 0 fm 0 fm Target initStep + 1 -8.4747761 mm -3.7675499 mm 4.1965047 cm 28.530549 MeV 5.1903102 MeV 1.1303736 mm 1.1303736 mm Target hIoni + 2 -8.5017875 mm -3.8500743 mm 4.1968556 cm 28.122492 MeV 408.05747 keV 86.961642 um 1.2173352 mm Target Transportation + 3 -4.1888064 cm -6.3075961 cm 15.174854 cm 28.122507 MeV2.1272867e-16 eV 3.1860851 m 3.1873024 m CaptureMgnt Decay +Track (trackID 2, parentID 1) is processed with stopping code 2 ********************************************************************************************************* -* G4Track Information: Particle = mu+, Track ID = 23, Parent ID = 3 +* G4Track Information: Particle = mu+, Track ID = 24, Parent ID = 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.52 cm -20.5 cm 2.13 m 69.8 MeV 0 eV 0 fm 0 fm World initStep - 1 -1.2051531 cm -22.384138 cm 2.149188 m 69.802978 MeV 3.1793561 keV 2.9701108 cm 2.9701108 cm World muIoni - 2 7.0998478 mm -34.017509 cm 2.2862001 m 69.779708 MeV 22.007672 keV 18.075602 cm 21.045713 cm World muIoni - 3 2.3602092 cm -43.92778 cm 2.4030501 m 69.756342 MeV 21.849095 keV 15.410277 cm 36.455991 cm World muIoni - 4 2.4145305 cm -44.25877 cm 2.4069501 m 69.753195 MeV 2.0706173 keV 5.1439314 mm 36.970384 cm World muIoni - 5 3.0988434 cm -48.434357 cm 2.4561266 m 69.744549 MeV 7.5651675 keV 6.4874615 cm 43.457845 cm World muIoni - 6 3.8462812 cm -53.00013 cm 2.5098537 m 69.72541 MeV 10.252016 keV 7.0902073 cm 50.548053 cm World muIoni - 7 4.3424642 cm -56.03121 cm 2.5455342 m 69.71588 MeV 6.8950886 keV 4.707934 cm 55.255987 cm World muIoni - 8 5.0218002 cm -60.123276 cm 2.5936871 m 69.70006 MeV 13.716826 keV 6.3555889 cm 61.611575 cm World muIoni - 9 5.680137 cm -64.08189 cm 2.6403664 m 69.683331 MeV 14.776169 keV 6.1557862 cm 67.767362 cm World muIoni - 10 7.8111038 cm -76.866669 cm 2.791049 m 69.65317 MeV 30.160963 keV 19.875755 cm 87.643116 cm World muIoni - 11 7.9447493 cm -77.660574 cm 2.8004094 m 69.649503 MeV 2.5896011 keV 1.2346278 cm 88.877744 cm World muIoni - 12 9.3377606 cm -85.869727 cm 2.8973206 m 69.628933 MeV 19.505247 keV 12.776892 cm 1.0165464 m World muIoni - 13 9.662897 cm -87.788769 cm 2.9199026 m 69.621357 MeV 5.7840142 keV 2.9812616 cm 1.046359 m World muIoni - 14 11.853741 cm -1.0079822 m 3.0727909 m 69.531787 MeV 38.666296 keV 20.19394 cm 1.2482984 m World muIoni - 15 12.717584 cm -1.0612871 m 3.1351171 m 69.515962 MeV 13.857588 keV 8.2465786 cm 1.3307642 m World muIoni - 16 12.991144 cm -1.0783988 m 3.1553072 m 69.512042 MeV 3.9202286 keV 2.6607041 cm 1.3573712 m World muIoni - 17 12.991389 cm -1.078414 m 3.1553253 m 69.509719 MeV 4.0605589 eV 23.769925 um 1.357395 m World muIoni - 18 13.651757 cm -1.1195515 m 3.2039471 m 69.501072 MeV 6.8086643 keV 6.4031157 cm 1.4214261 m World muIoni - 19 14.131012 cm -1.14972 m 3.2396077 m 69.490908 MeV 8.7934595 keV 4.6955125 cm 1.4683813 m World muIoni - 20 17.263006 cm -1.3485782 m 3.4745281 m 69.43991 MeV 49.354551 keV 30.937645 cm 1.7777577 m World muIoni - 21 17.90645 cm -1.3882781 m 3.5217246 m 69.420913 MeV 10.990384 keV 6.2008045 cm 1.8397658 m World muIoni - 22 18.04104 cm -1.3967081 m 3.5317509 m 69.413346 MeV 2.201982 keV 1.3168229 cm 1.852934 m World muIoni - 23 18.103846 cm -1.4006571 m 3.5364383 m 69.410742 MeV 1.2189333 keV 6.1612704 mm 1.8590953 m World muIoni - 24 18.613028 cm -1.4325891 m 3.5743391 m 69.392269 MeV 9.7366429 keV 4.9820118 cm 1.9089154 m World muIoni - 25 20.184256 cm -1.5308297 m 3.6909066 m 69.35913 MeV 31.990756 keV 15.325192 cm 2.0621673 m World muIoni - 26 20.737527 cm -1.5653657 m 3.7320294 m 69.35124 MeV 7.8897523 keV 5.3985499 cm 2.1161528 m World muIoni - 27 21.203966 cm -1.5940908 m 3.7662811 m 69.34469 MeV 6.5506288 keV 4.4945166 cm 2.161098 m World muIoni - 28 23.469819 cm -1.7325207 m 3.931227 m 69.296547 MeV 39.148028 keV 21.652622 cm 2.3776242 m World muIoni - 29 23.569906 cm -1.7388252 m 3.9387852 m 69.294055 MeV 1.4629821 keV 9.8932226 mm 2.3875174 m World muIoni - 30 23.96452 cm -1.7637725 m 3.9686751 m 69.254537 MeV 6.4478352 keV 3.9132401 cm 2.4266498 m World muIoni - 31 24.105909 cm -1.7728321 m 3.9795045 m 69.250042 MeV 3.484932 keV 1.4189788 cm 2.4408396 m World muIoni - 32 24.780451 cm -1.8160352 m 4.0311399 m 69.236776 MeV 12.014822 keV 6.7662576 cm 2.5085022 m World muIoni - 33 27.054706 cm -1.9602501 m 4.2035366 m 69.194023 MeV 40.952557 keV 22.59119 cm 2.7344141 m World muIoni - 34 27.369431 cm -1.9793884 m 4.2259012 m 69.186206 MeV 4.9211759 keV 2.9603245 cm 2.7640173 m World muIoni - 35 27.575852 cm -1.9922598 m 4.2409617 m 69.180111 MeV 4.6225733 keV 1.9918666 cm 2.783936 m World muIoni - 36 27.752126 cm -2.003246 m 4.2538374 m 69.175092 MeV 3.8320162 keV 1.7017321 cm 2.8009533 m World muIoni - 37 27.898988 cm -2.0124206 m 4.2646142 m 69.170814 MeV 2.5314025 keV 1.4229163 cm 2.8151825 m World muIoni - 38 28.870436 cm -2.0734264 m 4.3362664 m 69.153032 MeV 16.638761 keV 9.4605092 cm 2.9097876 m World muIoni - 39 29.671453 cm -2.123415 m 4.394672 m 69.142721 MeV 10.311164 keV 7.7293233 cm 2.9870808 m World muIoni - 40 29.924766 cm -2.1391424 m 4.4130106 m 69.137138 MeV 3.6974758 keV 2.4291455 cm 3.0113722 m World muIoni - 41 30.222486 cm -2.1576895 m 4.4346095 m 69.123427 MeV 3.7374804 keV 2.8624649 cm 3.0399969 m World muIoni - 42 31.147109 cm -2.2143559 m 4.500578 m 69.107755 MeV 13.880679 keV 8.745536 cm 3.1274523 m World muIoni - 43 32.555263 cm -2.3000129 m 4.6002779 m 69.083822 MeV 22.913774 keV 13.219493 cm 3.2596472 m World muIoni - 44 33.226386 cm -2.3408031 m 4.6477576 m 69.073476 MeV 9.0287234 keV 6.295402 cm 3.3226012 m World muIoni - 45 33.543004 cm -2.3596621 m 4.6697204 m 69.067739 MeV 3.997671 keV 2.912135 cm 3.3517225 m World muIoni - 46 34.278177 cm -2.403459 m 4.7207614 m 69.054645 MeV 11.783389 keV 6.7656541 cm 3.4193791 m World muIoni - 47 34.754295 cm -2.4317824 m 4.7537673 m 69.035733 MeV 5.3422181 keV 4.3752449 cm 3.4631315 m World muIoni - 48 36.612296 cm -2.5440225 m 4.8848217 m 69.001181 MeV 31.494904 keV 17.354655 cm 3.6366781 m World muIoni - 49 36.841862 cm -2.5579168 m 4.9010526 m 68.99213 MeV 3.5319368 keV 2.1488727 cm 3.6581668 m World muIoni - 50 37.440828 cm -2.5942281 m 4.9434987 m 68.969362 MeV 10.883482 keV 5.6178823 cm 3.7143456 m World muIoni - 51 37.461756 cm -2.5954959 m 4.9449778 m 68.968074 MeV 223.42564 eV 1.9593299 mm 3.716305 m World muIoni - 52 37.73654 cm -2.6121838 m 4.9644477 m 68.964169 MeV 2.1999221 keV 2.5789763 cm 3.7420947 m World muIoni - 53 39.498137 cm -2.7198906 m 5.0901394 m 68.935174 MeV 26.709942 keV 16.646195 cm 3.9085567 m World muIoni - 54 41.14819 cm -2.8176676 m 5.2041771 m 68.896137 MeV 31.447876 keV 15.112006 cm 4.0596767 m World muIoni - 55 43.645444 cm -2.9684683 m 5.3799893 m 68.852385 MeV 40.917019 keV 23.296919 cm 4.2926459 m World muIoni - 56 44.728713 cm -3.0339647 m 5.4561149 m 68.834827 MeV 17.558354 keV 10.100621 cm 4.3936521 m World muIoni - 57 45.457612 cm -3.0781115 m 5.5074394 m 68.820413 MeV 11.091922 keV 6.8090235 cm 4.4617424 m World muIoni - 58 45.656002 cm -3.0899516 m 5.521228 m 68.81736 MeV 1.8771517 keV 1.8282484 cm 4.4800249 m World muIoni - 59 46.650227 cm -3.1492489 m 5.590338 m 68.800119 MeV 12.774442 keV 9.160363 cm 4.5716285 m World muIoni - 60 46.699788 cm -3.1521485 m 5.593715 m 68.798505 MeV 331.48653 eV 4.4785086 mm 4.576107 m World muIoni - 61 46.865703 cm -3.1618204 m 5.6049784 m 68.792105 MeV 4.6535533 keV 1.4938668 cm 4.5910457 m World muIoni - 62 48.720129 cm -3.269438 m 5.7304099 m 68.760054 MeV 29.535332 keV 16.630871 cm 4.7573544 m World muIoni - 63 49.738096 cm -3.3287875 m 5.7997122 m 68.738631 MeV 15.861606 keV 9.1808558 cm 4.8491629 m World muIoni - 64 51.25319 cm -3.4176309 m 5.9028293 m 68.711646 MeV 24.907995 keV 13.695213 cm 4.9861151 m World muIoni - 65 51.447434 cm -3.4289485 m 5.9159001 m 68.707967 MeV 2.3298987 keV 1.7398477 cm 5.0035135 m World muIoni - 66 51.582867 cm -3.4368647 m 5.9250516 m 68.704733 MeV 1.8651334 keV 1.2175873 cm 5.0156894 m World muIoni - 67 53.013895 cm -3.5204735 m 6.021706 m 68.681209 MeV 21.44831 keV 12.859755 cm 5.144287 m World muIoni - 68 53.394325 cm -3.5429111 m 6.0476607 m 68.671199 MeV 7.1161065 keV 3.4519035 cm 5.178806 m World muIoni - 69 54.108781 cm -3.5849291 m 6.0962245 m 68.659792 MeV 9.9134437 keV 6.461422 cm 5.2434202 m World muIoni - 70 54.199326 cm -3.5902895 m 6.1024268 m 68.64585 MeV 863.28198 eV 8.2476086 mm 5.2516678 m World muIoni - 71 54.895005 cm -3.631253 m 6.1497745 m 68.634696 MeV 10.080185 keV 6.2993785 cm 5.3146616 m World muIoni - 72 55.209455 cm -3.6499637 m 6.1713375 m 68.627706 MeV 4.5526387 keV 2.872176 cm 5.3433834 m World muIoni - 73 55.615382 cm -3.6741059 m 6.1991689 m 68.610131 MeV 6.7630434 keV 3.7066335 cm 5.3804497 m World muIoni - 74 56.607452 cm -3.7331384 m 6.2670498 m 68.586674 MeV 16.558858 keV 9.0504636 cm 5.4709543 m World muIoni - 75 57.159846 cm -3.766287 m 6.3050067 m 68.572717 MeV 12.411059 keV 5.0695847 cm 5.5216502 m World muIoni - 76 59.862856 cm -3.9288095 m 6.4913695 m 68.534322 MeV 37.116318 keV 24.874811 cm 5.7703983 m World muIoni - 77 61.568472 cm -4.0320171 m 6.6099722 m 68.497025 MeV 30.272609 keV 15.814357 cm 5.9285419 m World muIoni - 78 61.659231 cm -4.0375407 m 6.616321 m 68.494445 MeV 429.95642 eV 8.4640881 mm 5.9370059 m World muIoni - 79 62.70435 cm -4.1013346 m 6.6896373 m 68.458642 MeV 17.108657 keV 9.774555 cm 6.0347515 m World muIoni - 80 63.241078 cm -4.1332904 m 6.7263883 m 68.45121 MeV 6.1991525 keV 4.8996145 cm 6.0837476 m World muIoni - 81 63.367048 cm -4.1408098 m 6.7350439 m 68.444951 MeV 3.2046867 keV 1.1534649 cm 6.0952823 m World muIoni - 82 64.581332 cm -4.2130388 m 6.8182032 m 67.923723 MeV 15.895904 keV 11.081497 cm 6.2060973 m World muIoni - 83 65.108525 cm -4.2443204 m 6.8546805 m 67.91373 MeV 7.910813 keV 4.8341733 cm 6.254439 m World muIoni - 84 65.92993 cm -4.2927639 m 6.9110948 m 67.900556 MeV 10.480905 keV 7.4811969 cm 6.329251 m World muIoni - 85 67.149393 cm -4.3649126 m 6.994735 m 67.877752 MeV 20.682388 keV 11.112989 cm 6.4403809 m World muIoni - 86 67.356131 cm -4.3771404 m 7.0089047 m 67.874517 MeV 1.7491078 keV 1.8830106 cm 6.459211 m World muIoni - 87 67.570843 cm -4.389776 m 7.0235206 m 67.868871 MeV 4.4078245 keV 1.9439501 cm 6.4786505 m World muIoni - 88 67.737012 cm -4.3995711 m 7.0348588 m 67.866198 MeV 1.217525 keV 1.5075143 cm 6.4937256 m World muIoni - 89 67.992378 cm -4.414643 m 7.0523062 m 67.860795 MeV 4.3555246 keV 2.3196831 cm 6.5169224 m World muIoni - 90 68.20951 cm -4.4274263 m 7.0671004 m 67.856987 MeV 2.5802353 keV 1.9672246 cm 6.5365947 m World muIoni - 91 72.146536 cm -4.6567206 m 7.3329399 m 67.789093 MeV 66.242302 keV 35.3267 cm 6.8898617 m World muIoni - 92 73.293001 cm -4.7246558 m 7.4115599 m 67.772033 MeV 15.672336 keV 10.453581 cm 6.9943975 m World muIoni - 93 74.96445 cm -4.8220824 m 7.5235014 m 67.744244 MeV 25.733968 keV 14.933955 cm 7.143737 m World muIoni - 94 75.026027 cm -4.825791 m 7.5277653 m 67.742804 MeV 391.19112 eV 5.6845083 mm 7.1494216 m World muIoni - 95 75.086758 cm -4.8294567 m 7.5319803 m 67.734057 MeV 1.0223744 keV 5.6189171 mm 7.1550405 m World muIoni - 96 75.573628 cm -4.8587341 m 7.5656115 m 67.724395 MeV 7.7530726 keV 4.4854522 cm 7.199895 m World muIoni - 97 75.710132 cm -4.866931 m 7.5750255 m 67.720868 MeV 1.9951817 keV 1.2556965 cm 7.212452 m World muIoni - 98 76.493595 cm -4.9140419 m 7.6290911 m 67.708189 MeV 11.575717 keV 7.213811 cm 7.2845901 m World muIoni - 99 76.934203 cm -4.9404567 m 7.659348 m 67.701704 MeV 6.4854073 keV 4.0405956 cm 7.324996 m OutOfWorld Transportation -Track (trackID 23, parentID 3) is processed with stopping code 2 + 0 -4.19 cm -6.31 cm 15.2 cm 9.06 MeV 0 eV 0 fm 0 fm CaptureMgnt initStep + 1 -9.7932036 cm 2.3584842 cm 2 m 9.0580447 MeV8.9151566e-16 eV 6.9837141 m 6.9837141 m CaptureMgnt Transportation + 2 -9.1629787 cm 2.4320499 cm 2.0017413 m 9.0540178 MeV 4.0433514 keV 6.5796566 mm 6.9902937 m World muIoni + 3 -8.6079664 cm 2.498816 cm 2.0033005 m 9.0488725 MeV 2.8978342 keV 5.8035307 mm 6.9960973 m World muIoni + 4 -6.7649094 cm 2.7126202 cm 2.0084809 m 9.031954 MeV 13.404866 keV 1.9263917 cm 7.0153612 m World muIoni + 5 -5.4975496 cm 2.8610556 cm 2.0120414 m 9.0245477 MeV 7.4063535 keV 1.3247707 cm 7.0286089 m World muIoni + 6 -3.6788293 cm 3.0731116 cm 2.0171272 m 9.005274 MeV 7.887184 keV 1.900374 cm 7.0476126 m World muIoni + 7 -2.4823545 cm 3.2083295 cm 2.0205133 m 8.9965378 MeV 8.7361721 keV 1.2508021 cm 7.0601207 m World muIoni + 8 -1.6664099 cm 3.305045 cm 2.0228771 m 8.9788376 MeV 6.5274996 keV 8.5498479 mm 7.0686705 m World muIoni + 9 -1.914953 mm 3.4877972 cm 2.0271846 m 8.9664115 MeV 11.386263 keV 1.5473641 cm 7.0841441 m World muIoni + 10 1.9464098 cm 3.7415825 cm 2.0334318 m 8.9518335 MeV 13.560342 keV 2.2417416 cm 7.1065616 m World muIoni + 11 2.6729955 cm 3.8300667 cm 2.0355728 m 8.9446877 MeV 5.2948077 keV 7.6262497 mm 7.1141878 m World muIoni + 12 3.5012061 cm 3.9340965 cm 2.0379967 m 8.9375275 MeV 7.1602418 keV 8.6920213 mm 7.1228798 m World muIoni + 13 3.6584077 cm 3.9542123 cm 2.0384617 m 8.9365201 MeV 1.0073644 keV 1.6516492 mm 7.1245315 m World muIoni + 14 4.1696044 cm 4.020178 cm 2.0399744 m 8.9294873 MeV 2.6792637 keV 5.3717442 mm 7.1299032 m World muIoni + 15 6.7700023 cm 4.3501987 cm 2.0477251 m 8.9139896 MeV 15.497604 keV 2.7334745 cm 7.157238 m World muIoni + 16 7.5641902 cm 4.4488983 cm 2.0501326 m 8.907745 MeV 5.2493181 keV 8.3572666 mm 7.1655952 m World muIoni + 17 8.3164649 cm 4.5442985 cm 2.0524359 m 8.9030697 MeV 4.6753152 keV 7.9251105 mm 7.1735203 m World muIoni + 18 8.3475001 cm 4.5481458 cm 2.0525314 m 8.9030402 MeV 29.505074 eV 326.99152 um 7.1738473 m World muIoni + 19 8.7235135 cm 4.5948234 cm 2.0536899 m 8.8970971 MeV 3.865217 keV 3.9621408 mm 7.1778095 m World muIoni + 20 9.1796719 cm 4.6525619 cm 2.0550698 m 8.8913183 MeV 3.0081468 keV 4.8006371 mm 7.1826101 m World muIoni + 21 11.898954 cm 4.9998285 cm 2.0632895 m 8.8671306 MeV 22.144422 keV 2.8619761 cm 7.2112299 m World muIoni + 22 12.578112 cm 5.0844849 cm 2.0653321 m 8.8642931 MeV 2.8374835 keV 7.1424581 mm 7.2183723 m World muIoni + 23 12.785656 cm 5.109693 cm 2.0659548 m 8.8610918 MeV 1.2891753 keV 2.1814496 mm 7.2205538 m World muIoni + 24 14.105587 cm 5.2694698 cm 2.0699283 m 8.8516065 MeV 8.2977589 keV 1.3876804 cm 7.2344306 m World muIoni + 25 14.825513 cm 5.3581865 cm 2.0721149 m 8.8465416 MeV 5.0649128 keV 7.5761463 mm 7.2420067 m World muIoni + 26 17.160046 cm 5.6493083 cm 2.0792605 m 8.828256 MeV 15.576632 keV 2.4587603 cm 7.2665943 m World muIoni + 27 17.356196 cm 5.673594 cm 2.0798634 m 8.8240086 MeV 875.7319 eV 2.0663924 mm 7.2686607 m World muIoni + 28 19.714176 cm 5.9659959 cm 2.0870764 m 8.8088454 MeV 13.953107 keV 2.4831338 cm 7.2934921 m World muIoni + 29 19.720393 cm 5.9667952 cm 2.087096 m 8.8011764 MeV 0 eV 65.684036 um 7.2935577 m World muIoni + 30 19.970082 cm 5.9984034 cm 2.0878876 m 8.7982487 MeV 1.6422183 keV 2.6383574 mm 7.2961961 m World muIoni + 31 20.060169 cm 6.0098047 cm 2.0881749 m 8.7946891 MeV 998.73269 eV 952.44654 um 7.2971486 m World muIoni + 32 20.439316 cm 6.0578948 cm 2.089381 m 8.7913769 MeV 1.213247 keV 4.0076328 mm 7.3011562 m World muIoni + 33 21.57337 cm 6.1981256 cm 2.0929937 m 8.7807947 MeV 6.1736335 keV 1.1984442 cm 7.3131406 m World muIoni + 34 22.214324 cm 6.2750828 cm 2.0950267 m 8.7766096 MeV 2.4509369 keV 6.7681477 mm 7.3199088 m World muIoni + 35 28.77074 cm 7.0687961 cm 2.1158969 m 8.7267495 MeV 47.054644 keV 6.9264188 cm 7.389173 m World muIoni + 36 32.658758 cm 7.4918478 cm 2.1277169 m 8.6900208 MeV 26.424238 keV 4.0857519 cm 7.4300305 m World muIoni + 37 33.673191 cm 7.5943329 cm 2.1308447 m 8.678011 MeV 10.90233 keV 1.0664984 cm 7.4406955 m World muIoni + 38 35.224724 cm 7.7513984 cm 2.1356461 m 8.6673996 MeV 8.6661098 keV 1.6317143 cm 7.4570126 m World muIoni + 39 36.166388 cm 7.8465109 cm 2.1385525 m 8.6585393 MeV 4.7867339 keV 9.9007746 mm 7.4669134 m World muIoni + 40 36.471898 cm 7.8786181 cm 2.1395031 m 8.6543035 MeV 4.2357555 keV 3.2156504 mm 7.470129 m World muIoni + 41 36.535491 cm 7.8852252 cm 2.1397005 m 8.6527591 MeV 533.23113 eV 669.11985 um 7.4707982 m World muIoni + 42 39.802563 cm 8.1906069 cm 2.1497948 m 8.6278988 MeV 23.481405 keV 3.433183 cm 7.50513 m World muIoni + 43 41.876939 cm 8.3872382 cm 2.1559818 m 8.6123855 MeV 14.251563 keV 2.1736094 cm 7.5268661 m World muIoni + 44 42.003536 cm 8.3990892 cm 2.1563559 m 8.6095334 MeV 775.16714 eV 1.3253976 mm 7.5281915 m World muIoni + 45 43.890585 cm 8.5751418 cm 2.1619172 m 8.5929854 MeV 14.452914 keV 1.9751688 cm 7.5479432 m World muIoni + 46 45.66275 cm 8.7509448 cm 2.1671032 m 8.5815705 MeV 11.414988 keV 1.8548517 cm 7.5664917 m World muIoni + 47 47.793298 cm 8.9592271 cm 2.1731761 m 8.5675602 MeV 12.20617 keV 2.2251976 cm 7.5887437 m World muIoni + 48 50.502887 cm 9.2318631 cm 2.1811528 m 8.5456072 MeV 18.657981 keV 2.8377215 cm 7.6171209 m World muIoni + 49 51.650125 cm 9.3490975 cm 2.1846062 m 8.5295828 MeV 8.2912539 keV 1.2038164 cm 7.629159 m World muIoni + 50 54.270113 cm 9.6342736 cm 2.1925727 m 8.5047619 MeV 14.129578 keV 2.7532704 cm 7.6566917 m World muIoni + 51 55.702898 cm 9.7911509 cm 2.1969534 m 8.4935665 MeV 11.195468 keV 1.5064559 cm 7.6717563 m World muIoni + 52 55.731721 cm 9.7942913 cm 2.1970408 m 8.4913804 MeV 266.34363 eV 302.81882 um 7.6720591 m World muIoni + 53 56.954258 cm 9.926175 cm 2.200746 m 8.4795809 MeV 8.1032136 keV 1.2842476 cm 7.6849016 m World muIoni + 54 60.353985 cm 10.277322 cm 2.2108972 m 8.4576621 MeV 18.606546 keV 3.5654343 cm 7.7205559 m World muIoni + 55 62.43653 cm 10.490668 cm 2.2171479 m 8.440311 MeV 14.3078 keV 2.184791 cm 7.7424038 m World muIoni + 56 63.316568 cm 10.575449 cm 2.2197409 m 8.4347808 MeV 4.5021906 keV 9.2137044 mm 7.7516176 m World muIoni + 57 63.680623 cm 10.609708 cm 2.2208144 m 8.4293913 MeV 3.9018774 keV 3.810932 mm 7.7554285 m World muIoni + 58 63.721694 cm 10.613572 cm 2.220935 m 8.4264391 MeV 374.53915 eV 429.79756 um 7.7558583 m World muIoni + 59 66.959037 cm 10.917115 cm 2.2304833 m 8.4014994 MeV 20.559938 keV 3.38889 cm 7.7897472 m World muIoni + 60 66.966914 cm 10.917851 cm 2.2305065 m 8.4003677 MeV 40.144967 eV 82.449654 um 7.7898296 m World muIoni + 61 69.20537 cm 11.128747 cm 2.2371008 m 8.3858024 MeV 12.759435 keV 2.3431013 cm 7.8132606 m World muIoni + 62 70.090066 cm 11.215165 cm 2.2397211 m 8.3685548 MeV 9.4792901 keV 9.2672423 mm 7.8225279 m World muIoni + 63 70.213394 cm 11.227013 cm 2.2400863 m 8.3663663 MeV 791.41424 eV 1.2916731 mm 7.8238196 m World muIoni + 64 70.706792 cm 11.273295 cm 2.241546 m 8.3548615 MeV 3.1850144 keV 5.1661531 mm 7.8289857 m World muIoni + 65 72.372156 cm 11.427736 cm 2.2464799 m 8.3382833 MeV 13.736829 keV 1.7437789 cm 7.8464235 m World muIoni + 66 72.664496 cm 11.454815 cm 2.2473442 m 8.33607 MeV 561.02532 eV 3.0605027 mm 7.849484 m World muIoni + 67 75.010655 cm 11.676829 cm 2.2542606 m 8.3151794 MeV 20.890568 keV 2.4560635 cm 7.8740446 m World muIoni + 68 75.261918 cm 11.700466 cm 2.2550032 m 8.3102414 MeV 1.6832889 keV 2.6307202 mm 7.8766754 m World muIoni + 69 77.305859 cm 11.891056 cm 2.2610615 m 8.2713446 MeV 18.360632 keV 2.1403592 cm 7.898079 m World muIoni + 70 79.210726 cm 12.073274 cm 2.2666791 m 8.2503332 MeV 18.006368 keV 1.9943309 cm 7.9180223 m World muIoni + 71 80.809616 cm 12.229237 cm 2.2713487 m 8.2414949 MeV 7.7986373 keV 1.6729818 cm 7.9347521 m World muIoni + 72 81.794207 cm 12.329197 cm 2.2742583 m 8.2336433 MeV 6.3576017 keV 1.0315397 cm 7.9450675 m World muIoni + 73 84.34301 cm 12.583474 cm 2.2818957 m 8.2150133 MeV 18.630047 keV 2.6729259 cm 7.9717967 m World muIoni + 74 84.423098 cm 12.590992 cm 2.2821377 m 8.2123392 MeV 586.79243 eV 840.02403 um 7.9726368 m World muIoni + 75 86.112428 cm 12.744177 cm 2.2872453 m 8.1994555 MeV 11.854739 keV 1.7715032 cm 7.9903518 m World muIoni + 76 89.553689 cm 13.078438 cm 2.2975607 m 8.1589314 MeV 22.437358 keV 3.6082219 cm 8.026434 m World muIoni + 77 89.98907 cm 13.13136 cm 2.2988798 m 8.1538717 MeV 2.2102932 keV 4.5799352 mm 8.0310139 m World muIoni + 78 90.379249 cm 13.178204 cm 2.3000576 m 8.1511819 MeV 2.689752 keV 4.1025342 mm 8.0351165 m World muIoni + 79 90.863357 cm 13.236489 cm 2.3015133 m 8.1442456 MeV 3.9144067 keV 5.0887171 mm 8.0402052 m World muIoni + 80 90.882743 cm 13.238869 cm 2.301572 m 8.1442032 MeV 42.382555 eV 203.93702 um 8.0404091 m World muIoni + 81 91.530526 cm 13.318401 cm 2.3035327 m 8.1409236 MeV 2.2092295 keV 6.814645 mm 8.0472238 m World muIoni + 82 91.798883 cm 13.351705 cm 2.3043482 m 8.1373691 MeV 1.4509898 keV 2.8244565 mm 8.0500482 m World muIoni + 83 92.957042 cm 13.492832 cm 2.3078436 m 8.1286823 MeV 7.4208177 keV 1.2179645 cm 8.0622279 m World muIoni + 84 93.153048 cm 13.517046 cm 2.3084388 m 8.1017868 MeV 909.50886 eV 2.0626939 mm 8.0642906 m World muIoni + 85 93.685553 cm 13.580948 cm 2.3100467 m 8.0967405 MeV 3.9880084 keV 5.5990987 mm 8.0698897 m World muIoni + 86 93.981641 cm 13.617387 cm 2.3109437 m 8.0902089 MeV 1.734044 keV 3.1151791 mm 8.0730049 m World muIoni + 87 96.36073 cm 13.905825 cm 2.3180649 m 8.0733317 MeV 16.877167 keV 2.5001026 cm 8.0980059 m World muIoni + 88 96.664642 cm 13.939977 cm 2.3189357 m 8.0676889 MeV 2.806591 keV 3.1798514 mm 8.1011857 m World muIoni + 89 96.898044 cm 13.966016 cm 2.319588 m 8.0606205 MeV 2.1366344 keV 2.4374169 mm 8.1036231 m World muIoni + 90 98.00444 cm 14.092506 cm 2.3226884 m 8.0470757 MeV 6.6151731 keV 1.1559612 cm 8.1151828 m World muIoni + 91 98.455705 cm 14.141915 cm 2.3239557 m 8.0304366 MeV 5.6325355 keV 4.7132192 mm 8.119896 m World muIoni + 92 98.609652 cm 14.159194 cm 2.3243889 m 8.0299854 MeV 451.19386 eV 1.6085585 mm 8.1215045 m World muIoni + 93 99.471988 cm 14.255876 cm 2.326812 m 8.0226642 MeV 5.836576 keV 9.0093957 mm 8.1305139 m World muIoni + 94 1.0003742 m 14.319955 cm 2.3284545 m 8.0164867 MeV 4.3569338 keV 5.9228896 mm 8.1364368 m World muIoni + 95 1.0120917 m 14.458214 cm 2.3318716 m 8.0036837 MeV 8.0180647 keV 1.2283651 cm 8.1487205 m World muIoni + 96 1.0148755 m 14.490904 cm 2.3326896 m 8.0000945 MeV 2.3178854 keV 2.9198704 mm 8.1516403 m World muIoni + 97 1.0190525 m 14.538923 cm 2.3339149 m 7.9950859 MeV 2.4120559 keV 4.3794256 mm 8.1560198 m World muIoni + 98 1.0269927 m 14.628885 cm 2.3362498 m 7.9891806 MeV 4.8370471 keV 8.3251896 mm 8.164345 m World muIoni + 99 1.033461 m 14.702884 cm 2.3381323 m 7.9846401 MeV 4.5405703 keV 6.7772138 mm 8.1711222 m World muIoni + 100 1.0465674 m 14.857447 cm 2.3419227 m 7.9760079 MeV 7.1531574 keV 1.3730877 cm 8.184853 m World muIoni + 101 1.0609432 m 15.026825 cm 2.3460865 m 7.9617053 MeV 13.267175 keV 1.5062212 cm 8.1999153 m World muIoni + 102 1.0823551 m 15.276604 cm 2.3522776 m 7.9472126 MeV 14.492694 keV 2.242883 cm 8.2223441 m World muIoni + 103 1.0844408 m 15.299766 cm 2.3528809 m 7.9420923 MeV 1.0740408 keV 2.1834657 mm 8.2245276 m World muIoni + 104 1.090604 m 15.370883 cm 2.3546663 m 7.9369912 MeV 5.1011298 keV 6.4559306 mm 8.2309835 m World muIoni + 105 1.0959825 m 15.431818 cm 2.3562265 m 7.9335931 MeV 3.3980671 keV 5.6332569 mm 8.2366167 m World muIoni + 106 1.105659 m 15.544164 cm 2.3590195 m 7.9266815 MeV 5.7395746 keV 1.013403 cm 8.2467508 m World muIoni + 107 1.112037 m 15.617408 cm 2.3608288 m 7.9215605 MeV 3.9707707 keV 6.6700388 mm 8.2534208 m World muIoni + 108 1.1130732 m 15.629443 cm 2.3611281 m 7.9182695 MeV 1.2717944 keV 1.0853153 mm 8.2545061 m World muIoni + 109 1.1230597 m 15.746581 cm 2.3640092 m 7.90942 MeV 7.0879402 keV 1.0459584 cm 8.2649657 m World muIoni + 110 1.1248905 m 15.767975 cm 2.3645285 m 7.9028624 MeV 597.96496 eV 1.9150392 mm 8.2668807 m World muIoni + 111 1.126329 m 15.785043 cm 2.3649286 m 7.8892866 MeV 467.83459 eV 1.5028001 mm 8.2683835 m World muIoni + 112 1.1277128 m 15.80132 cm 2.3653103 m 7.8874151 MeV 651.4065 eV 1.4446594 mm 8.2698282 m World muIoni + 113 1.1285188 m 15.810737 cm 2.3655325 m 7.8854436 MeV 864.13092 eV 841.33498 um 8.2706695 m World muIoni + 114 1.1748824 m 16.349115 cm 2.3783438 m 7.8472342 MeV 33.819539 keV 4.8402739 cm 8.3190723 m World muIoni + 115 1.1948178 m 16.576866 cm 2.3837416 m 7.8322041 MeV 15.030124 keV 2.0778679 cm 8.339851 m World muIoni + 116 1.1989146 m 16.622205 cm 2.3848492 m 7.8273219 MeV 1.7145475 keV 4.2680302 mm 8.344119 m World muIoni + 117 1.2000775 m 16.635004 cm 2.3851653 m 7.8209946 MeV 409.34859 eV 1.2118136 mm 8.3453308 m World muIoni + 118 1.2011157 m 16.646391 cm 2.3854457 m 7.8168113 MeV 167.46084 eV 1.0814487 mm 8.3464123 m World muIoni + 119 1.201835 m 16.654223 cm 2.385639 m 7.8166443 MeV 166.96519 eV 748.89908 um 8.3471612 m World muIoni + 120 1.2023578 m 16.659664 cm 2.3857769 m 7.8143784 MeV 258.48957 eV 543.40938 um 8.3477046 m World muIoni + 121 1.2027334 m 16.663553 cm 2.3858757 m 7.8128909 MeV 82.856258 eV 390.36403 um 8.3480949 m World muIoni + 122 1.2073345 m 16.711381 cm 2.3870894 m 7.8061523 MeV 5.241173 keV 4.7825087 mm 8.3528774 m World muIoni + 123 1.2457426 m 17.105865 cm 2.3973072 m 7.7743324 MeV 25.748076 keV 3.9940126 cm 8.3928176 m World muIoni + 124 1.2499682 m 17.154006 cm 2.3984761 m 7.768647 MeV 3.5955798 keV 4.4106563 mm 8.3972282 m World muIoni + 125 1.2548228 m 17.210222 cm 2.3998209 m 7.7646949 MeV 2.7956001 keV 5.0686385 mm 8.4022969 m World muIoni + 126 1.2642988 m 17.318105 cm 2.402484 m 7.7551586 MeV 7.6932031 keV 9.9021899 mm 8.412199 m World muIoni + 127 1.2689601 m 17.372356 cm 2.4038298 m 7.7498242 MeV 3.3096792 keV 4.8818539 mm 8.4170809 m World muIoni + 128 1.2866927 m 17.580007 cm 2.4089376 m 7.7295659 MeV 16.292022 keV 1.8570252 cm 8.4356512 m World muIoni + 129 1.3008411 m 17.740151 cm 2.4129954 m 7.7175944 MeV 10.105209 keV 1.4805754 cm 8.4504569 m World muIoni + 130 1.311263 m 17.856085 cm 2.4161036 m 7.7093849 MeV 8.2094558 keV 1.0937583 cm 8.4613945 m World muIoni + 131 1.3222489 m 17.985952 cm 2.4196469 m 7.7014513 MeV 6.7360633 keV 1.1616073 cm 8.4730106 m World muIoni + 132 1.3328287 m 18.111257 cm 2.4230486 m 7.6883206 MeV 11.716914 keV 1.1183697 cm 8.4841943 m World muIoni + 133 1.3401796 m 18.195715 cm 2.4253938 m 7.6812436 MeV 4.0707685 keV 7.7620397 mm 8.4919563 m World muIoni + 134 1.3548414 m 18.371909 cm 2.4299806 m 7.6616174 MeV 10.31497 keV 1.5463378 cm 8.5074197 m World muIoni + 135 1.3562626 m 18.388836 cm 2.4304451 m 7.6592151 MeV 802.89492 eV 1.5047817 mm 8.5089245 m World muIoni + 136 1.3745548 m 18.608356 cm 2.4364218 m 7.6447019 MeV 13.263864 keV 1.9368849 cm 8.5282933 m World muIoni + 137 1.3796983 m 18.675015 cm 2.4380676 m 7.6380254 MeV 5.6623057 keV 5.4413574 mm 8.5337347 m World muIoni + 138 1.3878211 m 18.779115 cm 2.4406313 m 7.6296504 MeV 7.2446084 keV 8.5811973 mm 8.5423159 m World muIoni + 139 1.3895128 m 18.800503 cm 2.4411643 m 7.6263976 MeV 1.9891379 keV 1.7864721 mm 8.5441023 m World muIoni + 140 1.4056482 m 19.003416 cm 2.4462498 m 7.6142767 MeV 10.776007 keV 1.7039291 cm 8.5611416 m World muIoni + 141 1.4223818 m 19.213337 cm 2.4515982 m 7.6044935 MeV 8.1889417 keV 1.7692687 cm 8.5788343 m World muIoni + 142 1.4330491 m 19.347844 cm 2.4550645 m 7.5959719 MeV 8.5215895 keV 1.1296802 cm 8.5901311 m World muIoni + 143 1.455772 m 19.648159 cm 2.4623747 m 7.5830612 MeV 12.910707 keV 2.405831 cm 8.6141894 m World muIoni + 144 1.4652199 m 19.776806 cm 2.4654448 m 7.5765633 MeV 5.1787545 keV 1.0017129 cm 8.6242066 m World muIoni + 145 1.4696008 m 19.834453 cm 2.4668592 m 7.5744741 MeV 2.0891978 keV 4.6395414 mm 8.6288461 m World muIoni + 146 1.4908995 m 20.109798 cm 2.4737255 m 7.5517756 MeV 18.756993 keV 2.2547193 cm 8.6513933 m World muIoni + 147 1.4919316 m 20.122602 cm 2.4740595 m 7.5490945 MeV 866.28121 eV 1.0923386 mm 8.6524856 m World muIoni + 148 1.5027397 m 20.255946 cm 2.4775706 m 7.5418469 MeV 5.4145269 keV 1.1442146 cm 8.6639278 m World muIoni + 149 1.5140604 m 20.386902 cm 2.4812399 m 7.5097409 MeV 6.9353101 keV 1.1972371 cm 8.6759001 m World muIoni + 150 1.5238522 m 20.498409 cm 2.4843769 m 7.4996306 MeV 8.5856359 keV 1.0342338 cm 8.6862425 m World muIoni + 151 1.5297427 m 20.569126 cm 2.486234 m 7.4965767 MeV 3.0538565 keV 6.2166485 mm 8.6924591 m World muIoni + 152 1.5343376 m 20.622699 cm 2.4876727 m 7.4914326 MeV 3.8321369 keV 4.8446429 mm 8.6973038 m World muIoni + 153 1.5465795 m 20.768836 cm 2.4915335 m 7.4784095 MeV 12.016132 keV 1.2919274 cm 8.710223 m World muIoni + 154 1.5529098 m 20.844559 cm 2.493536 m 7.466174 MeV 4.3624282 keV 6.6825358 mm 8.7169056 m World muIoni + 155 1.5635591 m 20.96878 cm 2.4969759 m 7.4498131 MeV 6.4142077 keV 1.1259857 cm 8.7281654 m World muIoni + 156 1.5687862 m 21.03057 cm 2.4986719 m 7.4441825 MeV 4.0793446 keV 5.5300173 mm 8.7336955 m World muIoni + 157 1.5816106 m 21.178393 cm 2.502839 m 7.432067 MeV 10.544547 keV 1.3565282 cm 8.7472607 m World muIoni + 158 1.604443 m 21.437885 cm 2.5103125 m 7.4191825 MeV 12.884468 keV 2.4164464 cm 8.7714252 m World muIoni + 159 1.6054528 m 21.449642 cm 2.5106518 m 7.4147474 MeV 931.16507 eV 1.0717791 mm 8.772497 m World muIoni + 160 1.6167622 m 21.579566 cm 2.5144534 m 7.4049045 MeV 8.1886046 keV 1.2001891 cm 8.7844989 m World muIoni + 161 1.6210301 m 21.628622 cm 2.5159057 m 7.3998302 MeV 2.7743853 keV 4.5347689 mm 8.7890336 m World muIoni + 162 1.6292079 m 21.72539 cm 2.5186508 m 7.3904006 MeV 7.7085227 keV 8.6804157 mm 8.7977141 m World muIoni + 163 1.6501993 m 21.964865 cm 2.5257353 m 7.3724909 MeV 16.905295 keV 2.2283938 cm 8.819998 m World muIoni + 164 1.6694836 m 22.190652 cm 2.5322343 m 7.3582932 MeV 14.197761 keV 2.0475119 cm 8.8404731 m World muIoni + 165 1.6724961 m 22.223123 cm 2.5332328 m 7.3558891 MeV 2.4041004 keV 3.1902799 mm 8.8436634 m World muIoni + 166 1.6805317 m 22.308102 cm 2.5358703 m 7.3491473 MeV 5.2098132 keV 8.4999919 mm 8.8521634 m World muIoni + 167 1.6887024 m 22.394682 cm 2.5385621 m 7.3444945 MeV 4.6527544 keV 8.6461044 mm 8.8608095 m World muIoni + 168 1.6895956 m 22.404287 cm 2.5388568 m 7.3412222 MeV 416.37442 eV 945.53821 um 8.861755 m World muIoni + 169 1.694908 m 22.461074 cm 2.5406033 m 7.3373981 MeV 2.7677962 keV 5.6208629 mm 8.8673759 m World muIoni + 170 1.7176115 m 22.723875 cm 2.5478214 m 7.321235 MeV 15.038155 keV 2.3968479 cm 8.8913444 m World muIoni + 171 1.7277725 m 22.837019 cm 2.5510276 m 7.3090914 MeV 9.1337223 keV 1.0714763 cm 8.9020591 m World muIoni + 172 1.7301247 m 22.864563 cm 2.5517669 m 7.3025539 MeV 803.25784 eV 2.4809795 mm 8.9045401 m World muIoni + 173 1.7422641 m 23.008339 cm 2.5555544 m 7.2906485 MeV 10.659137 keV 1.2797629 cm 8.9173377 m World muIoni + 174 1.745259 m 23.043236 cm 2.5564908 m 7.2877891 MeV 2.859367 keV 3.1572722 mm 8.920495 m World muIoni + 175 1.7490007 m 23.087188 cm 2.5576601 m 7.2847291 MeV 3.0599764 keV 3.9447668 mm 8.9244398 m World muIoni + 176 1.7588828 m 23.199071 cm 2.5607088 m 7.2732547 MeV 8.6150565 keV 1.0402037 cm 8.9348418 m World muIoni + 177 1.7728838 m 23.354132 cm 2.5649798 m 7.2651767 MeV 8.0779731 keV 1.4719925 cm 8.9495617 m World muIoni + 178 1.7782874 m 23.417184 cm 2.566705 m 7.2606169 MeV 3.0478792 keV 5.7072969 mm 8.955269 m World muIoni + 179 1.7979281 m 23.648582 cm 2.5730013 m 7.2190629 MeV 12.423317 keV 2.075486 cm 8.9760239 m World muIoni + 180 1.8039969 m 23.718848 cm 2.5749347 m 7.2121726 MeV 6.8903753 keV 6.4079915 mm 8.9824319 m World muIoni + 181 1.8327213 m 24.039629 cm 2.5841225 m 7.1849 MeV 20.932346 keV 3.0328796 cm 9.0127607 m World muIoni + 182 1.8427663 m 24.141276 cm 2.5873451 m 7.1685224 MeV 9.5836549 keV 1.0598101 cm 9.0233588 m World muIoni + 183 1.8449553 m 24.164305 cm 2.5880448 m 7.1627878 MeV 3.2810299 keV 2.3096295 mm 9.0256684 m World muIoni + 184 1.862966 m 24.354043 cm 2.59381 m 7.1408552 MeV 20.675544 keV 1.9006055 cm 9.0446745 m World muIoni + 185 1.8679087 m 24.403887 cm 2.5953856 m 7.1341584 MeV 3.2262442 keV 5.2117362 mm 9.0498862 m World muIoni + 186 1.8709095 m 24.434872 cm 2.5963227 m 7.1303015 MeV 2.1309688 keV 3.1591918 mm 9.0530454 m World muIoni + 187 1.8714754 m 24.440954 cm 2.5964873 m 7.1144162 MeV 310.16035 eV 592.43598 um 9.0536378 m World muIoni + 188 1.8952287 m 24.687702 cm 2.6033506 m 7.0967595 MeV 16.29228 keV 2.4848233 cm 9.0784861 m World muIoni + 189 1.8961845 m 24.698371 cm 2.6036277 m 7.0951062 MeV 137.80761 eV 1.0008458 mm 9.0794869 m World muIoni + 190 1.9051912 m 24.798458 cm 2.6062291 m 7.0880756 MeV 5.5843288 keV 9.4281604 mm 9.0889151 m World muIoni + 191 1.9152882 m 24.912983 cm 2.6091769 m 7.077728 MeV 6.5404663 keV 1.0580755 cm 9.0994958 m World muIoni + 192 1.9176418 m 24.93607 cm 2.6098658 m 7.07286 MeV 3.027745 keV 2.4631739 mm 9.101959 m World muIoni + 193 1.9263195 m 25.019321 cm 2.6124206 m 7.0541373 MeV 7.2902084 keV 9.0842557 mm 9.1110433 m World muIoni + 194 1.9284274 m 25.038949 cm 2.6130477 m 7.053583 MeV 554.35433 eV 2.2079563 mm 9.1132512 m World muIoni + 195 1.9317626 m 25.07062 cm 2.6140371 m 7.0494396 MeV 2.1187545 keV 3.4932072 mm 9.1167444 m World muIoni + 196 1.9431796 m 25.179697 cm 2.6173983 m 7.0414948 MeV 7.9447613 keV 1.1951487 cm 9.1286959 m World muIoni + 197 1.943183 m 25.179729 cm 2.6173993 m 7.0376421 MeV 2.6323995 eV 3.5493925 um 9.1286995 m World muIoni + 198 1.9484609 m 25.229458 cm 2.6189174 m 7.0324555 MeV 5.1866009 keV 5.5143723 mm 9.1342138 m World muIoni + 199 1.9488644 m 25.233193 cm 2.6190339 m 7.0313302 MeV 124.08635 eV 421.63468 um 9.1346355 m World muIoni + 200 1.9497515 m 25.241321 cm 2.6192901 m 7.0298628 MeV 445.51714 eV 926.92496 um 9.1355624 m World muIoni + 201 1.9606364 m 25.340489 cm 2.6224455 m 7.02119 MeV 6.9795833 keV 1.1376382 cm 9.1469388 m World muIoni + 202 1.9626451 m 25.358705 cm 2.6230272 m 7.0181371 MeV 1.8936776 keV 2.0992101 mm 9.149038 m World muIoni + 203 2.0006563 m 25.707462 cm 2.634029 m 6.9878975 MeV 28.005432 keV 3.9725818 cm 9.1887638 m World muIoni + 204 2.0180336 m 25.849573 cm 2.6390975 m 6.9731429 MeV 13.739892 keV 1.8157267 cm 9.2069211 m World muIoni + 205 2.0190297 m 25.856881 cm 2.6393891 m 6.9711215 MeV 552.66964 eV 1.0404864 mm 9.2079616 m World muIoni + 206 2.0379715 m 25.99622 cm 2.6449429 m 6.9550819 MeV 13.650721 keV 1.9788533 cm 9.2277501 m World muIoni + 207 2.0383758 m 25.999729 cm 2.6450596 m 6.9550269 MeV 54.953354 eV 422.22466 um 9.2281723 m World muIoni + 208 2.0427958 m 26.038226 cm 2.6463343 m 6.9357949 MeV 4.0396688 keV 4.616298 mm 9.2327886 m World muIoni + 209 2.0503909 m 26.105914 cm 2.6485468 m 6.9296014 MeV 5.0397015 keV 7.9397094 mm 9.2407283 m World muIoni + 210 2.0524834 m 26.124116 cm 2.6491526 m 6.9254709 MeV 1.2833266 keV 2.1860343 mm 9.2429144 m World muIoni + 211 2.0589758 m 26.181544 cm 2.6510307 m 6.9147452 MeV 6.2223555 keV 6.7828989 mm 9.2496973 m World muIoni + 212 2.1048087 m 26.601589 cm 2.6645152 m 6.8780605 MeV 33.283868 keV 4.7961365 cm 9.2976586 m World muIoni + 213 2.1106135 m 26.648102 cm 2.6662557 m 6.8738127 MeV 3.2408412 keV 6.07796 mm 9.3037366 m World muIoni + 214 2.1172609 m 26.700745 cm 2.6682337 m 6.8658219 MeV 5.2505091 keV 6.9554411 mm 9.310692 m World muIoni + 215 2.1401146 m 26.873412 cm 2.6751357 m 6.8461098 MeV 17.182176 keV 2.3936064 cm 9.3346281 m World muIoni + 216 2.1519375 m 26.974658 cm 2.6789587 m 6.8330793 MeV 11.762155 keV 1.2466832 cm 9.3470949 m World muIoni + 217 2.1520625 m 26.975765 cm 2.6790002 m 6.829498 MeV 0 eV 132.18377 um 9.3472271 m World muIoni + 218 2.1632378 m 27.07611 cm 2.6826969 m 6.8213132 MeV 8.1848227 keV 1.181364 cm 9.3590407 m World muIoni + 219 2.1671067 m 27.112492 cm 2.6839582 m 6.8185567 MeV 2.7565104 keV 4.0855844 mm 9.3631263 m World muIoni + 220 2.1674713 m 27.115935 cm 2.6840751 m 6.8144512 MeV 322.31238 eV 384.40666 um 9.3635107 m World muIoni + 221 2.169889 m 27.138854 cm 2.6848543 m 6.810806 MeV 2.546317 keV 2.5504397 mm 9.3660612 m World muIoni + 222 2.1825676 m 27.25821 cm 2.6889446 m 6.8012774 MeV 8.1031307 keV 1.337556 cm 9.3794367 m World muIoni + 223 2.1974292 m 27.396503 cm 2.693718 m 6.7830875 MeV 12.476717 keV 1.5670654 cm 9.3951074 m World muIoni + 224 2.2006851 m 27.425222 cm 2.694754 m 6.7326005 MeV 2.5664643 keV 3.4288548 mm 9.3985362 m World muIoni + 225 2.2154368 m 27.556503 cm 2.699537 m 6.7105954 MeV 11.001874 keV 1.5563321 cm 9.4140996 m World muIoni + 226 2.2268004 m 27.653943 cm 2.7032816 m 6.6997612 MeV 10.834175 keV 1.2004376 cm 9.4261039 m World muIoni + 227 2.2321779 m 27.701186 cm 2.7050169 m 6.6958735 MeV 3.887719 keV 5.6702528 mm 9.4317742 m World muIoni + 228 2.2389278 m 27.758504 cm 2.7072231 m 6.6889415 MeV 5.8825052 keV 7.1244945 mm 9.4388987 m World muIoni + 229 2.2452259 m 27.810049 cm 2.7093014 m 6.6820734 MeV 5.8131515 keV 6.6521098 mm 9.4455508 m World muIoni + 230 2.2487254 m 27.839207 cm 2.71046 m 6.6749033 MeV 2.1582041 keV 3.6978666 mm 9.4492487 m World muIoni + 231 2.2528004 m 27.873935 cm 2.7118112 m 6.669196 MeV 3.6058972 keV 4.3071784 mm 9.4535558 m World muIoni + 232 2.258882 m 27.924035 cm 2.7138252 m 6.6478361 MeV 5.174488 keV 6.4260658 mm 9.4599819 m World muIoni + 233 2.2616029 m 27.947175 cm 2.7147261 m 6.641719 MeV 3.6006606 keV 2.8754599 mm 9.4628574 m World muIoni + 234 2.2674118 m 27.998146 cm 2.7166557 m 6.6369932 MeV 4.7258857 keV 6.142186 mm 9.4689996 m World muIoni + 235 2.2828458 m 28.130248 cm 2.7217727 m 6.6210997 MeV 14.134385 keV 1.6313923 cm 9.4853135 m World muIoni + 236 2.2867209 m 28.164004 cm 2.7230532 m 6.6176512 MeV 2.1364188 keV 4.0950702 mm 9.4894085 m World muIoni + 237 2.2924098 m 28.213265 cm 2.7249356 m 6.6113068 MeV 5.1803952 keV 6.0125454 mm 9.4954211 m World muIoni + 238 2.2927397 m 28.216317 cm 2.7250475 m 6.6111636 MeV 143.14231 eV 349.64262 um 9.4957707 m World muIoni + 239 2.2960721 m 28.247137 cm 2.7261783 m 6.6076519 MeV 3.5117179 keV 3.5325824 mm 9.4993033 m World muIoni + 240 2.3142757 m 28.41202 cm 2.7323553 m 6.5912984 MeV 15.283364 keV 1.9293834 cm 9.5185971 m World muIoni + 241 2.3202493 m 28.468532 cm 2.7344391 m 6.5863839 MeV 4.9145661 keV 6.3518442 mm 9.524949 m World muIoni + 242 2.3260227 m 28.525841 cm 2.7364679 m 6.5675334 MeV 4.8276195 keV 6.1462797 mm 9.5310953 m World muIoni + 243 2.3261636 m 28.52726 cm 2.7365165 m 6.5664677 MeV 23.306628 eV 149.75701 um 9.531245 m World muIoni + 244 2.3290897 m 28.556761 cm 2.7375221 m 6.5639448 MeV 1.49151 keV 3.1080542 mm 9.5343531 m World muIoni + 245 2.3307811 m 28.573894 cm 2.7381033 m 6.561715 MeV 986.44555 eV 1.7967026 mm 9.5361498 m World muIoni + 246 2.3320738 m 28.587054 cm 2.7385486 m 6.5602177 MeV 391.05111 eV 1.3735082 mm 9.5375233 m World muIoni + 247 2.3343564 m 28.610674 cm 2.7393356 m 6.5475942 MeV 2.3099462 keV 2.4260581 mm 9.5399494 m World muIoni + 248 2.3384515 m 28.652351 cm 2.7407364 m 6.5313634 MeV 4.0247874 keV 4.3481041 mm 9.5442975 m World muIoni + 249 2.3399868 m 28.66785 cm 2.7412611 m 6.5274745 MeV 853.802 eV 1.6298588 mm 9.5459273 m World muIoni + 250 2.3543513 m 28.809984 cm 2.7461814 m 6.5133522 MeV 12.899601 keV 1.5250346 cm 9.5611777 m World muIoni + 251 2.3610142 m 28.877453 cm 2.7484301 m 6.5004823 MeV 5.8015439 keV 7.0643807 mm 9.568242 m World muIoni + 252 2.3629151 m 28.896866 cm 2.7490767 m 6.4993656 MeV 1.1167663 keV 2.0172683 mm 9.5702593 m World muIoni + 253 2.3747239 m 29.032736 cm 2.7538051 m 6.4874757 MeV 11.88991 keV 1.2798695 cm 9.583058 m World muIoni + 254 2.3791878 m 29.083762 cm 2.7556678 m 6.4807044 MeV 5.4305836 keV 4.8638647 mm 9.5879219 m World muIoni + 255 2.3896917 m 29.198723 cm 2.7600978 m 6.4702474 MeV 9.3812598 keV 1.1457716 cm 9.5993796 m World muIoni + 256 2.3981491 m 29.289618 cm 2.7636842 m 6.4615337 MeV 6.5356717 keV 9.231294 mm 9.6086109 m World muIoni + 257 2.4030602 m 29.341356 cm 2.7657759 m 6.4547414 MeV 5.3101714 keV 5.3630256 mm 9.6139739 m World muIoni + 258 2.4078334 m 29.39161 cm 2.767794 m 6.4495439 MeV 4.1163871 keV 5.2066362 mm 9.6191805 m World muIoni + 259 2.4166087 m 29.481902 cm 2.7714798 m 6.4399483 MeV 6.1921039 keV 9.5607046 mm 9.6287412 m World muIoni + 260 2.423911 m 29.55565 cm 2.7745412 m 6.4324245 MeV 6.4072272 keV 7.9523913 mm 9.6366936 m World muIoni + 261 2.4322483 m 29.642887 cm 2.7780283 m 6.418338 MeV 8.6977262 keV 9.0792088 mm 9.6457728 m World muIoni + 262 2.4509534 m 29.837668 cm 2.7859074 m 6.4005994 MeV 15.834616 keV 2.039041 cm 9.6661633 m World muIoni + 263 2.4523798 m 29.853441 cm 2.7865314 m 6.3972401 MeV 2.3249991 keV 1.5648975 mm 9.6677282 m World muIoni + 264 2.4537879 m 29.868824 cm 2.7871464 m 6.3954081 MeV 818.97875 eV 1.5442063 mm 9.6692724 m World muIoni + 265 2.480205 m 30.156916 cm 2.7987207 m 6.3683759 MeV 27.032227 keV 2.8985568 cm 9.6982579 m World muIoni + 266 2.4813284 m 30.168915 cm 2.7992098 m 6.3665061 MeV 610.3648 eV 1.2311661 mm 9.6994891 m World muIoni + 267 2.4814792 m 30.170502 cm 2.7992753 m 6.364067 MeV 216.28684 eV 165.20848 um 9.6996543 m World muIoni + 268 2.4920623 m 30.280652 cm 2.8038661 m 6.3488308 MeV 10.953517 keV 1.1588411 cm 9.7112427 m World muIoni + 269 2.517576 m 30.567861 cm 2.8147472 m 6.3277814 MeV 18.266494 keV 2.7886001 cm 9.7391287 m World muIoni + 270 2.5195987 m 30.587286 cm 2.815605 m 6.325334 MeV 2.4474911 keV 2.2056771 mm 9.7413344 m World muIoni + 271 2.5200368 m 30.5915 cm 2.8157898 m 6.2684812 MeV 138.13274 eV 477.3241 um 9.7418117 m World muIoni + 272 2.5374367 m 30.755652 cm 2.8232225 m 6.2531062 MeV 15.37495 keV 1.8992272 cm 9.760804 m World muIoni + 273 2.5420717 m 30.802502 cm 2.8251725 m 6.2444047 MeV 7.3766274 keV 5.0503137 mm 9.7658543 m World muIoni + 274 2.5468857 m 30.85322 cm 2.8272082 m 6.2378058 MeV 4.5531496 keV 5.2512467 mm 9.7711055 m World muIoni + 275 2.5662969 m 31.055194 cm 2.8354219 m 6.2182876 MeV 18.469588 keV 2.1174385 cm 9.7922799 m World muIoni + 276 2.58033 m 31.206978 cm 2.84135 m 6.2018919 MeV 14.752142 keV 1.5309437 cm 9.8075894 m World muIoni + 277 2.6054551 m 31.48648 cm 2.8519729 m 6.1755422 MeV 22.403992 keV 2.7421993 cm 9.8350114 m World muIoni + 278 2.6183656 m 31.641123 cm 2.8573705 m 6.1636775 MeV 10.285504 keV 1.4078737 cm 9.8490901 m World muIoni + 279 2.6263056 m 31.740254 cm 2.8607141 m 6.1569733 MeV 6.7042885 keV 8.6721461 mm 9.8577622 m World muIoni + 280 2.6492042 m 32.030094 cm 2.8704324 m 6.1330464 MeV 20.911502 keV 2.5044323 cm 9.8828066 m World muIoni + 281 2.6627097 m 32.210946 cm 2.8762466 m 6.1195183 MeV 12.232488 keV 1.4814876 cm 9.8976214 m World muIoni + 282 2.6643487 m 32.232402 cm 2.8769585 m 6.1156179 MeV 2.2125689 keV 1.7997283 mm 9.8994212 m World muIoni + 283 2.6669513 m 32.266074 cm 2.878089 m 6.1120994 MeV 2.5221474 keV 2.8574941 mm 9.9022787 m World muIoni + 284 2.6770803 m 32.394915 cm 2.8824818 m 6.1040436 MeV 6.9741524 keV 1.1115506 cm 9.9133942 m World muIoni + 285 2.6991679 m 32.641358 cm 2.8920311 m 6.083458 MeV 20.585617 keV 2.4189824 cm 9.937584 m World muIoni + 286 2.7049007 m 32.716768 cm 2.8944836 m 6.0770012 MeV 4.0960373 keV 6.2807981 mm 9.9438648 m World muIoni + 287 2.708403 m 32.761329 cm 2.8959837 m 6.0662624 MeV 2.4538782 keV 3.8360471 mm 9.9477008 m World muIoni + 288 2.7129764 m 32.81958 cm 2.8979647 m 6.0606784 MeV 4.5067025 keV 5.0179251 mm 9.9527188 m World muIoni + 289 2.7135129 m 32.826317 cm 2.8982002 m 6.057426 MeV 508.30942 eV 589.78374 um 9.9533086 m World muIoni + 290 2.7352195 m 33.095731 cm 2.9077443 m 6.0339196 MeV 22.445013 keV 2.3865169 cm 9.9771737 m World muIoni + 291 2.7383361 m 33.13617 cm 2.9091259 m 6.0288907 MeV 4.0349127 keV 3.4330674 mm 9.9806068 m World muIoni + 292 2.7391122 m 33.146119 cm 2.9094664 m 6.0262093 MeV 285.81279 eV 853.33999 um 9.9814601 m World muIoni + 293 2.7430456 m 33.196474 cm 2.9111986 m 6.0153627 MeV 2.6643946 keV 4.3273089 mm 9.9857874 m World muIoni + 294 2.7584783 m 33.395715 cm 2.9179684 m 5.9971688 MeV 17.160815 keV 1.6969837 cm 10.002757 m World muIoni + 295 2.7747197 m 33.601211 cm 2.9250877 m 5.9827015 MeV 12.922937 keV 1.7852202 cm 10.020609 m World muIoni + 296 2.7796624 m 33.66498 cm 2.9273 m 5.9750748 MeV 6.5476501 keV 5.4526551 mm 10.026062 m World muIoni + 297 2.7912488 m 33.818431 cm 2.9325014 m 5.9567065 MeV 12.026166 keV 1.2792854 cm 10.038855 m World muIoni + 298 2.8032859 m 33.96988 cm 2.9380973 m 5.9427408 MeV 11.027231 keV 1.3360445 cm 10.052215 m World muIoni + 299 2.8300263 m 34.291999 cm 2.9501253 m 5.9125498 MeV 28.926169 keV 2.9498296 cm 10.081714 m World muIoni + 300 2.8323549 m 34.319779 cm 2.9511863 m 5.9079932 MeV 2.4342575 keV 2.5739384 mm 10.084288 m World muIoni + 301 2.8387594 m 34.395751 cm 2.9541051 m 5.9024745 MeV 4.4437844 keV 7.0791294 mm 10.091367 m World muIoni + 302 2.8401187 m 34.411753 cm 2.9547281 m 5.9001876 MeV 886.24676 eV 1.5038117 mm 10.092871 m World muIoni + 303 2.8468231 m 34.491461 cm 2.9577912 m 5.8862811 MeV 6.5176072 keV 7.4140503 mm 10.100285 m World muIoni + 304 2.8477963 m 34.502665 cm 2.9582321 m 5.8785555 MeV 2.6673805 keV 1.074222 mm 10.101359 m World muIoni + 305 2.8687665 m 34.743246 cm 2.9677877 m 5.8604878 MeV 16.805853 keV 2.3170507 cm 10.124529 m World muIoni + 306 2.8740024 m 34.804475 cm 2.9701786 m 5.8537583 MeV 5.3061508 keV 5.7884436 mm 10.130318 m World muIoni + 307 2.8833624 m 34.911756 cm 2.9744499 m 5.8220136 MeV 7.5478765 keV 1.034439 cm 10.140662 m World muIoni + 308 2.8859319 m 34.942787 cm 2.9756287 m 5.8176746 MeV 2.0702468 keV 2.843928 mm 10.143506 m World muIoni + 309 2.8958199 m 35.063198 cm 2.9801888 m 5.8075883 MeV 8.7645469 keV 1.0955392 cm 10.154462 m World muIoni + 310 2.9013713 m 35.130719 cm 2.9827255 m 5.7964981 MeV 5.0531469 keV 6.1407678 mm 10.160602 m World muIoni + 311 2.9025145 m 35.14367 cm 2.983249 m 5.794263 MeV 542.28528 eV 1.2640063 mm 10.161866 m World muIoni + 312 2.9092137 m 35.219685 cm 2.9863252 m 5.7846704 MeV 8.4339676 keV 7.4108316 mm 10.169277 m World muIoni + 313 2.9165681 m 35.303728 cm 2.9896722 m 5.7715099 MeV 7.1436519 keV 8.123868 mm 10.177401 m World muIoni + 314 2.9191164 m 35.332959 cm 2.9908199 m 5.7671442 MeV 3.0932052 keV 2.8100046 mm 10.180211 m World muIoni + 315 2.9265774 m 35.419177 cm 2.9941714 m 5.7594561 MeV 4.9527908 keV 8.224574 mm 10.188436 m World muIoni + 316 2.9415512 m 35.585862 cm 3.0008958 m 5.7401559 MeV 17.221465 keV 1.6499017 cm 10.204935 m World muIoni + 317 2.9531014 m 35.720242 cm 3.00613 m 5.7195637 MeV 12.160772 keV 1.2752037 cm 10.217687 m World muIoni + 318 2.9553721 m 35.744426 cm 3.0071535 m 5.7148605 MeV 3.620658 keV 2.5024001 mm 10.220189 m World muIoni + 319 2.97538 m 35.962164 cm 3.016159 m 5.6983088 MeV 15.01632 keV 2.204944 cm 10.242238 m World muIoni + 320 2.9760918 m 35.969314 cm 3.0164804 m 5.6942463 MeV 816.53879 eV 784.21854 um 10.243023 m World muIoni + 321 2.9796034 m 36.004198 cm 3.0180702 m 5.690293 MeV 2.7512282 keV 3.8705269 mm 10.246893 m World muIoni + 322 2.9803239 m 36.011537 cm 3.0183955 m 5.6864013 MeV 449.64554 eV 793.8715 um 10.247687 m World muIoni + 323 2.9901194 m 36.112424 cm 3.0228191 m 5.6750911 MeV 9.2757867 keV 1.0795423 cm 10.258483 m World muIoni + 324 3.0000476 m 36.219592 cm 3.0273586 m 5.6656649 MeV 8.2422367 keV 1.0969341 cm 10.269452 m World muIoni + 325 3.0058514 m 36.282598 cm 3.0300544 m 5.6547466 MeV 5.9217564 keV 6.4302782 mm 10.275882 m World muIoni + 326 3.0088174 m 36.315471 cm 3.0314533 m 5.6498844 MeV 3.5029237 keV 3.295795 mm 10.279178 m World muIoni + 327 3.0102173 m 36.330693 cm 3.0321178 m 5.6459924 MeV 918.81927 eV 1.5571178 mm 10.280735 m World muIoni + 328 3.0111674 m 36.340754 cm 3.0325681 m 5.6455349 MeV 457.50867 eV 1.0561391 mm 10.281791 m World muIoni + 329 3.0172195 m 36.404694 cm 3.035436 m 5.6381764 MeV 4.3490179 keV 6.7277645 mm 10.288519 m World muIoni + 330 3.0184519 m 36.417289 cm 3.0360174 m 5.6294352 MeV 599.21091 eV 1.3684345 mm 10.289887 m World muIoni + 331 3.0193495 m 36.426571 cm 3.0364413 m 5.6290992 MeV 336.00481 eV 997.00977 um 10.290884 m World muIoni + 332 3.0199366 m 36.432451 cm 3.0367207 m 5.6265134 MeV 510.97702 eV 652.84694 um 10.291537 m World muIoni + 333 3.022394 m 36.456651 cm 3.0378907 m 5.6174626 MeV 3.9696021 keV 2.7324665 mm 10.29427 m World muIoni + 334 3.0283143 m 36.517593 cm 3.0406943 m 5.6032969 MeV 7.0282645 keV 6.5789306 mm 10.300849 m World muIoni + 335 3.0285769 m 36.520401 cm 3.0408192 m 5.5993047 MeV 215.94036 eV 292.09869 um 10.301141 m World muIoni + 336 3.0303463 m 36.539096 cm 3.0416652 m 5.5964481 MeV 1.6669626 keV 1.9701881 mm 10.303111 m World muIoni + 337 3.0341229 m 36.578422 cm 3.0434742 m 5.5861329 MeV 3.6787489 keV 4.2059137 mm 10.307317 m World muIoni + 338 3.04183 m 36.65838 cm 3.0471686 m 5.5730019 MeV 12.137061 keV 8.5841836 mm 10.315901 m World muIoni + 339 3.0477148 m 36.723903 cm 3.0499646 m 5.5694028 MeV 3.5990627 keV 6.5481026 mm 10.322449 m World muIoni + 340 3.0522715 m 36.774551 cm 3.0521086 m 5.5615218 MeV 6.6033111 keV 5.0614036 mm 10.327511 m World muIoni + 341 3.0550309 m 36.804553 cm 3.0533993 m 5.5588074 MeV 2.7144434 keV 3.0610065 mm 10.330572 m World muIoni + 342 3.0572989 m 36.828814 cm 3.054458 m 5.5562607 MeV 1.2232142 keV 2.514765 mm 10.333086 m World muIoni + 343 3.06174 m 36.875887 cm 3.056501 m 5.5502045 MeV 3.5751551 keV 4.9110338 mm 10.337997 m World muIoni + 344 3.066664 m 36.927447 cm 3.0587752 m 5.5451558 MeV 5.0486778 keV 5.4482962 mm 10.343446 m World muIoni + 345 3.0793415 m 37.05705 cm 3.0645819 m 5.5147417 MeV 13.665853 keV 1.4004391 cm 10.35745 m World muIoni + 346 3.079481 m 37.058421 cm 3.0646461 m 5.5131169 MeV 429.09497 eV 154.17116 um 10.357604 m World muIoni + 347 3.0833533 m 37.096143 cm 3.066425 m 5.5056366 MeV 5.4657591 keV 4.2780161 mm 10.361882 m World muIoni + 348 3.0871499 m 37.133726 cm 3.0681494 m 5.4995407 MeV 5.0031765 keV 4.1867474 mm 10.366069 m World muIoni + 349 3.0911746 m 37.172455 cm 3.0699881 m 5.4933673 MeV 4.527474 keV 4.4417757 mm 10.370511 m World muIoni + 350 3.1053647 m 37.306238 cm 3.0764764 m 5.4741191 MeV 11.665045 keV 1.5660622 cm 10.386171 m World muIoni + 351 3.1152923 m 37.394926 cm 3.0810971 m 5.4639667 MeV 8.8310822 keV 1.0986144 cm 10.397158 m World muIoni + 352 3.1199004 m 37.434381 cm 3.0832379 m 5.4577961 MeV 5.0670027 keV 5.0964582 mm 10.402254 m World muIoni + 353 3.1207406 m 37.441826 cm 3.0836285 m 5.4560914 MeV 640.68418 eV 929.52852 um 10.403183 m World muIoni + 354 3.1222533 m 37.456502 cm 3.0843274 m 5.4533858 MeV 1.5755326 keV 1.6728255 mm 10.404856 m World muIoni + 355 3.1410433 m 37.638481 cm 3.0930145 m 5.4311879 MeV 17.431645 keV 2.0781265 cm 10.425638 m World muIoni + 356 3.1412786 m 37.640582 cm 3.0931232 m 5.4006552 MeV 172.155 eV 260.01233 um 10.425898 m World muIoni + 357 3.1451508 m 37.673493 cm 3.0949094 m 5.3969206 MeV 2.5618141 keV 4.2770649 mm 10.430175 m World muIoni + 358 3.1599446 m 37.789302 cm 3.1017405 m 5.3760009 MeV 14.680924 keV 1.6336148 cm 10.446511 m World muIoni + 359 3.1629819 m 37.811502 cm 3.1031476 m 5.3682051 MeV 1.4822344 keV 3.3547137 mm 10.449866 m World muIoni + 360 3.1636944 m 37.816497 cm 3.1034795 m 5.3637978 MeV 524.45045 eV 787.63217 um 10.450653 m World muIoni + 361 3.2109605 m 38.149706 cm 3.1253936 m 5.3138356 MeV 48.335488 keV 5.2208801 cm 10.502862 m World muIoni + 362 3.2130037 m 38.165487 cm 3.126294 m 5.3115881 MeV 2.2475502 keV 2.2383073 mm 10.5051 m World muIoni + 363 3.2178107 m 38.204335 cm 3.1284114 m 5.3042201 MeV 5.0590716 keV 5.2671239 mm 10.510367 m World muIoni + 364 3.2194756 m 38.218523 cm 3.1291475 m 5.3015128 MeV 1.5446301 keV 1.8258232 mm 10.512193 m World muIoni + 365 3.2375654 m 38.372406 cm 3.1371765 m 5.2840822 MeV 17.43055 keV 1.9851762 cm 10.532045 m World muIoni + 366 3.2429862 m 38.42016 cm 3.1395806 m 5.2768679 MeV 5.9050209 keV 5.9491714 mm 10.537994 m World muIoni + 367 3.2484839 m 38.46599 cm 3.1420257 m 5.2702696 MeV 6.5982727 keV 6.0343809 mm 10.544029 m World muIoni + 368 3.258712 m 38.547517 cm 3.1465209 m 5.2578523 MeV 9.0555291 keV 1.1202168 cm 10.555231 m World muIoni + 369 3.2629644 m 38.579426 cm 3.1483777 m 5.2514649 MeV 5.0867991 keV 4.6510697 mm 10.559882 m World muIoni + 370 3.3037948 m 38.856651 cm 3.1664756 m 5.2128441 MeV 37.039204 keV 4.4750038 cm 10.604632 m World muIoni + 371 3.3062746 m 38.875242 cm 3.1676113 m 5.2114352 MeV 1.4088286 keV 2.7338242 mm 10.607366 m World muIoni + 372 3.3130779 m 38.926037 cm 3.1707285 m 5.2016916 MeV 4.8868358 keV 7.5007297 mm 10.614866 m World muIoni + 373 3.3158416 m 38.944056 cm 3.1719878 m 5.1985539 MeV 3.1377087 keV 3.0423903 mm 10.617909 m World muIoni + 374 3.3176997 m 38.956712 cm 3.1728279 m 5.1937653 MeV 4.788581 keV 2.0431732 mm 10.619952 m World muIoni + 375 3.3225624 m 38.990458 cm 3.1750407 m 5.1563102 MeV 3.8374847 keV 5.3531385 mm 10.625305 m World muIoni + 376 3.3244402 m 39.003807 cm 3.1758987 m 5.1531845 MeV 2.0680754 keV 2.0688711 mm 10.627374 m World muIoni + 377 3.3463022 m 39.16031 cm 3.1859421 m 5.1291648 MeV 22.54036 keV 2.4110121 cm 10.651484 m World muIoni + 378 3.3626846 m 39.279537 cm 3.1933858 m 5.1135074 MeV 15.657407 keV 1.8034022 cm 10.669518 m World muIoni + 379 3.3707106 m 39.337517 cm 3.1969919 m 5.1004943 MeV 11.908042 keV 8.8180484 mm 10.678336 m World muIoni + 380 3.3790136 m 39.398435 cm 3.2007882 m 5.0877267 MeV 10.757313 keV 9.1501315 mm 10.687486 m World muIoni + 381 3.3812975 m 39.414672 cm 3.2018258 m 5.0786134 MeV 1.8346962 keV 2.513771 mm 10.69 m World muIoni + 382 3.3815942 m 39.416746 cm 3.2019608 m 5.0756393 MeV 268.28061 eV 326.6952 um 10.690327 m World muIoni + 383 3.3844749 m 39.436806 cm 3.2032769 m 5.0706189 MeV 1.8446259 keV 3.1734058 mm 10.6935 m World muIoni + 384 3.3857072 m 39.444967 cm 3.2038328 m 5.0672838 MeV 1.0071226 keV 1.3543534 mm 10.694854 m World muIoni + 385 3.3917635 m 39.486527 cm 3.2065554 m 5.0567174 MeV 7.9963352 keV 6.6531321 mm 10.701508 m World muIoni + 386 3.3955171 m 39.514757 cm 3.2082425 m 5.0533213 MeV 2.1697498 keV 4.1250402 mm 10.705633 m World muIoni + 387 3.408575 m 39.604742 cm 3.2141388 m 5.0271239 MeV 15.986029 keV 1.435589 cm 10.719989 m World muIoni + 388 3.4245835 m 39.711765 cm 3.2214408 m 5.0051946 MeV 19.848505 keV 1.7628043 cm 10.737617 m World muIoni + 389 3.4291399 m 39.746308 cm 3.2235262 m 4.9925449 MeV 7.9818848 keV 5.0229126 mm 10.742639 m World muIoni + 390 3.4458935 m 39.872774 cm 3.2311979 m 4.9724258 MeV 18.904007 keV 1.847031 cm 10.76111 m World muIoni + 391 3.4535504 m 39.926261 cm 3.2345379 m 4.9430752 MeV 8.8130371 keV 8.3708537 mm 10.769481 m World muIoni + 392 3.4715122 m 40.053863 cm 3.2424806 m 4.9238246 MeV 16.96779 keV 1.9681514 cm 10.789162 m World muIoni + 393 3.4746079 m 40.076389 cm 3.2438502 m 4.919138 MeV 2.7520181 keV 3.3925857 mm 10.792555 m World muIoni + 394 3.5110477 m 40.356061 cm 3.2600041 m 4.8769546 MeV 37.774488 keV 3.9960094 cm 10.832515 m World muIoni + 395 3.5156196 m 40.385188 cm 3.2620045 m 4.865691 MeV 9.0098558 keV 4.9989244 mm 10.837514 m World muIoni + 396 3.5156324 m 40.385267 cm 3.2620101 m 4.8569208 MeV 0 eV 13.968523 um 10.837528 m World muIoni + 397 3.5228899 m 40.428897 cm 3.2651348 m 4.8470928 MeV 6.1652966 keV 7.9136518 mm 10.845441 m World muIoni + 398 3.5304947 m 40.471176 cm 3.2683301 m 4.8316508 MeV 8.4347543 keV 8.2597287 mm 10.853701 m World muIoni + 399 3.5467961 m 40.550338 cm 3.2752939 m 4.8130872 MeV 18.563572 keV 1.7744624 cm 10.871446 m World muIoni + 400 3.5536741 m 40.586905 cm 3.2782671 m 4.8023199 MeV 8.0714401 keV 7.5020956 mm 10.878948 m World muIoni + 401 3.5581574 m 40.609452 cm 3.2802162 m 4.7920604 MeV 6.3123977 keV 4.8938504 mm 10.883842 m World muIoni + 402 3.5632371 m 40.637203 cm 3.2824227 m 4.7878723 MeV 4.1880955 keV 5.5452063 mm 10.889387 m World muIoni + 403 3.5787679 m 40.720862 cm 3.2892253 m 4.7663022 MeV 17.739432 keV 1.6976252 cm 10.906363 m World muIoni + 404 3.587883 m 40.775429 cm 3.2931302 m 4.7578739 MeV 7.0656669 keV 9.9314426 mm 10.916295 m World muIoni + 405 3.5888996 m 40.78051 cm 3.2935732 m 4.7562822 MeV 1.5916745 keV 1.110075 mm 10.917405 m World muIoni + 406 3.5892637 m 40.782323 cm 3.293732 m 4.7535346 MeV 1.6840019 keV 397.72458 um 10.917802 m World muIoni + 407 3.5903961 m 40.787974 cm 3.2942236 m 4.7440149 MeV 1.6865014 keV 1.2357743 mm 10.919038 m World muIoni + 408 3.5926921 m 40.798905 cm 3.2952255 m 4.7411026 MeV 2.9123128 keV 2.5075 mm 10.921546 m World muIoni + 409 3.6026266 m 40.850736 cm 3.2994106 m 4.7286161 MeV 11.34474 keV 1.0793029 cm 10.932339 m World muIoni + 410 3.6137434 m 40.90664 cm 3.3040616 m 4.7179103 MeV 10.705808 keV 1.2063633 cm 10.944402 m World muIoni + 411 3.6218305 m 40.943792 cm 3.3074152 m 4.7067563 MeV 10.080411 keV 8.762875 mm 10.953165 m World muIoni + 412 3.6280699 m 40.973449 cm 3.3099329 m 4.6926817 MeV 6.6837506 keV 6.7347801 mm 10.9599 m World muIoni + 413 3.6297574 m 40.980537 cm 3.3106137 m 4.6903404 MeV 848.28513 eV 1.8210266 mm 10.961721 m World muIoni + 414 3.6460492 m 41.04788 cm 3.3172044 m 4.672006 MeV 18.334404 keV 1.7587751 cm 10.979309 m World muIoni + 415 3.6512531 m 41.072248 cm 3.319347 m 4.6653537 MeV 5.2983141 keV 5.6330675 mm 10.984942 m World muIoni + 416 3.66681 m 41.154649 cm 3.3257482 m 4.6468195 MeV 17.22907 keV 1.6842928 cm 11.001785 m World muIoni + 417 3.6830878 m 41.219204 cm 3.3324836 m 4.6294394 MeV 16.024204 keV 1.762919 cm 11.019414 m World muIoni + 418 3.6922126 m 41.252267 cm 3.336162 m 4.6203321 MeV 9.1072544 keV 9.8439753 mm 11.029258 m World muIoni + 419 3.7000926 m 41.284413 cm 3.3393246 m 4.6093172 MeV 6.9177178 keV 8.4971882 mm 11.037755 m World muIoni + 420 3.7158198 m 41.362564 cm 3.345691 m 4.5924843 MeV 15.596595 keV 1.698527 cm 11.05474 m World muIoni + 421 3.7180725 m 41.374816 cm 3.3466184 m 4.588952 MeV 2.3049161 keV 2.4391957 mm 11.05718 m World muIoni + 422 3.7370356 m 41.470684 cm 3.3544675 m 4.5585673 MeV 23.879862 keV 2.0546402 cm 11.077726 m World muIoni + 423 3.7408099 m 41.488802 cm 3.3560252 m 4.5537779 MeV 3.502262 keV 4.0871451 mm 11.081813 m World muIoni + 424 3.7538567 m 41.542476 cm 3.3614515 m 4.5348367 MeV 16.948352 keV 1.4140626 cm 11.095954 m World muIoni + 425 3.7557129 m 41.549495 cm 3.3622256 m 4.530918 MeV 1.9085209 keV 2.0124299 mm 11.097966 m World muIoni + 426 3.7673259 m 41.59229 cm 3.3670079 m 4.5170734 MeV 13.844594 keV 1.2566662 cm 11.110533 m World muIoni + 427 3.7711833 m 41.612762 cm 3.3686193 m 4.50951 MeV 4.7065415 keV 4.1854321 mm 11.114718 m World muIoni + 428 3.7722174 m 41.618209 cm 3.3690505 m 4.5082522 MeV 1.2578182 keV 1.1217238 mm 11.11584 m World muIoni + 429 3.7758185 m 41.637135 cm 3.3705525 m 4.5019073 MeV 5.2202117 keV 3.9064527 mm 11.119746 m World muIoni + 430 3.7768216 m 41.642035 cm 3.3709695 m 4.4996635 MeV 681.99726 eV 1.0874256 mm 11.120834 m World muIoni + 431 3.7823736 m 41.66949 cm 3.3732812 m 4.4916878 MeV 7.9756882 keV 6.0203445 mm 11.126854 m World muIoni + 432 3.7834421 m 41.674181 cm 3.3737295 m 4.4900245 MeV 649.23473 eV 1.1596681 mm 11.128014 m World muIoni + 433 3.7836185 m 41.674959 cm 3.3738037 m 4.4181611 MeV 125.9102 eV 191.50975 um 11.128205 m World muIoni + 434 3.7903845 m 41.705034 cm 3.3766806 m 4.4115395 MeV 6.6215194 keV 7.3584108 mm 11.135564 m World muIoni + 435 3.7929557 m 41.716942 cm 3.3777828 m 4.3910402 MeV 4.4259603 keV 2.8000423 mm 11.138364 m World muIoni + 436 3.7942041 m 41.72252 cm 3.378319 m 4.3833369 MeV 309.21945 eV 1.3598977 mm 11.139724 m World muIoni + 437 3.7994417 m 41.743892 cm 3.3805704 m 4.3752264 MeV 6.696321 keV 5.7051144 mm 11.145429 m World muIoni + 438 3.8130814 m 41.791623 cm 3.3863077 m 4.3556183 MeV 18.327759 keV 1.4805272 cm 11.160234 m World muIoni + 439 3.8152159 m 41.799251 cm 3.3871945 m 4.3506415 MeV 2.8953972 keV 2.3126304 mm 11.162547 m World muIoni + 440 3.8201426 m 41.817016 cm 3.3892144 m 4.3437277 MeV 5.2214079 keV 5.3277195 mm 11.167874 m World muIoni + 441 3.8278794 m 41.843019 cm 3.3923659 m 4.3350539 MeV 7.5165172 keV 8.3581717 mm 11.176233 m World muIoni + 442 3.8302063 m 41.852798 cm 3.3933172 m 4.3306126 MeV 2.1562245 keV 2.5157861 mm 11.178748 m World muIoni + 443 3.8355375 m 41.876551 cm 3.3954765 m 4.3242043 MeV 6.4082534 keV 5.7568285 mm 11.184505 m World muIoni + 444 3.8378392 m 41.888183 cm 3.3964259 m 4.3230702 MeV 1.1341562 keV 2.4924519 mm 11.186998 m World muIoni + 445 3.8382215 m 41.890332 cm 3.3965843 m 4.3200699 MeV 157.82052 eV 414.41148 um 11.187412 m World muIoni + 446 3.8482957 m 41.945333 cm 3.4007767 m 4.306219 MeV 12.737434 keV 1.0925762 cm 11.198338 m World muIoni + 447 3.8521055 m 41.965814 cm 3.4023608 m 4.3000377 MeV 4.1292045 keV 4.131116 mm 11.202469 m World muIoni + 448 3.8528969 m 41.970465 cm 3.4026862 m 4.2983985 MeV 469.90163 eV 856.94023 um 11.203326 m World muIoni + 449 3.8555825 m 41.986381 cm 3.403784 m 4.2956685 MeV 2.7300147 keV 2.9056581 mm 11.206232 m World muIoni + 450 3.8811509 m 42.137745 cm 3.4141985 m 4.2670092 MeV 26.042872 keV 2.765087 cm 11.233882 m World muIoni + 451 3.8830853 m 42.149747 cm 3.4149959 m 4.2636117 MeV 1.2492664 keV 2.0957355 mm 11.235978 m World muIoni + 452 3.8851881 m 42.162789 cm 3.4158611 m 4.2582538 MeV 3.799036 keV 2.2775661 mm 11.238256 m World muIoni + 453 3.886953 m 42.173486 cm 3.4165902 m 4.2547044 MeV 1.454447 keV 1.9125791 mm 11.240168 m World muIoni + 454 3.8897626 m 42.191367 cm 3.4177572 m 4.2477313 MeV 2.6055336 keV 3.0476135 mm 11.243216 m World muIoni + 455 3.9039445 m 42.279767 cm 3.4236931 m 4.2295737 MeV 15.121206 keV 1.5399803 cm 11.258616 m World muIoni + 456 3.9127629 m 42.353116 cm 3.427505 m 4.2189702 MeV 9.5472288 keV 9.6353785 mm 11.268251 m World muIoni + 457 3.9160379 m 42.383041 cm 3.4289148 m 4.2105293 MeV 4.8068027 keV 3.5780946 mm 11.271829 m World muIoni + 458 3.916429 m 42.386675 cm 3.4290835 m 4.2082212 MeV 234.77541 eV 427.57296 um 11.272257 m World muIoni + 459 3.9230165 m 42.448196 cm 3.4319357 m 4.1973664 MeV 8.5640257 keV 7.2047478 mm 11.279462 m World muIoni + 460 3.9266253 m 42.481506 cm 3.4335131 m 4.1934514 MeV 2.6640429 keV 3.952651 mm 11.283414 m World muIoni + 461 3.9333293 m 42.538891 cm 3.4364329 m 4.181881 MeV 9.5313049 keV 7.3347941 mm 11.290749 m World muIoni + 462 3.9472703 m 42.65804 cm 3.4424224 m 4.1631642 MeV 13.940084 keV 1.5220231 cm 11.305969 m World muIoni + 463 3.9504384 m 42.684536 cm 3.4437766 m 4.1596039 MeV 2.173793 keV 3.4555642 mm 11.309425 m World muIoni + 464 3.9563785 m 42.73546 cm 3.4462981 m 4.1517158 MeV 6.7887118 keV 6.4732861 mm 11.315898 m World muIoni + 465 3.9598256 m 42.768414 cm 3.4477563 m 4.1432715 MeV 4.7953593 keV 3.7573753 mm 11.319655 m World muIoni + 466 3.9603889 m 42.773269 cm 3.4479941 m 4.1410203 MeV 935.5287 eV 613.34136 um 11.320269 m World muIoni + 467 3.9693714 m 42.848967 cm 3.4518045 m 4.1303351 MeV 6.4587207 keV 9.7867721 mm 11.330056 m World muIoni + 468 3.9717009 m 42.869457 cm 3.4528015 m 4.1276849 MeV 1.4944037 keV 2.5421597 mm 11.332598 m World muIoni + 469 3.9717644 m 42.870023 cm 3.4528284 m 4.1275179 MeV 166.9782 eV 69.137284 um 11.332667 m World muIoni + 470 3.974206 m 42.891802 cm 3.453863 m 4.1236015 MeV 2.7127722 keV 2.6607326 mm 11.335328 m World muIoni + 471 3.9766197 m 42.913939 cm 3.4548866 m 4.1134326 MeV 2.6600461 keV 2.6310602 mm 11.337959 m World muIoni + 472 3.9804685 m 42.948446 cm 3.4565099 m 4.1050333 MeV 3.133294 keV 4.1913936 mm 11.34215 m World muIoni + 473 3.9806543 m 42.950155 cm 3.4565887 m 4.1019583 MeV 187.06852 eV 202.58142 um 11.342353 m World muIoni + 474 3.9834511 m 42.975572 cm 3.4577699 m 4.0951704 MeV 3.0832501 keV 3.0466318 mm 11.345399 m World muIoni + 475 3.9887003 m 43.024902 cm 3.4599827 m 4.0869225 MeV 5.8787999 keV 5.7178619 mm 11.351117 m World muIoni + 476 3.9906591 m 43.045301 cm 3.4608007 m 4.0789498 MeV 1.8881829 keV 2.132568 mm 11.35325 m World muIoni + 477 4.0019714 m 43.163469 cm 3.4654702 m 4.0541446 MeV 13.333452 keV 1.2295374 cm 11.365545 m World muIoni + 478 4.0157523 m 43.29201 cm 3.4710088 m 4.0377247 MeV 14.293837 keV 1.4908103 cm 11.380453 m World muIoni + 479 4.0171723 m 43.304235 cm 3.4715746 m 3.9822737 MeV 1.7663965 keV 1.5334613 mm 11.381987 m World muIoni + 480 4.0308255 m 43.423364 cm 3.4769148 m 3.9611563 MeV 17.0646 keV 1.4709116 cm 11.396696 m World muIoni + 481 4.0325164 m 43.439772 cm 3.4775634 m 3.9538177 MeV 3.0738381 keV 1.8184597 mm 11.398514 m World muIoni + 482 4.0507352 m 43.611104 cm 3.4845591 m 3.9232819 MeV 27.180011 keV 1.9591566 cm 11.418106 m World muIoni + 483 4.0508858 m 43.612569 cm 3.4846156 m 3.9220662 MeV 15.856937 eV 161.49757 um 11.418267 m World muIoni + 484 4.0560773 m 43.662352 cm 3.4865618 m 3.9131387 MeV 7.6204373 keV 5.5667253 mm 11.423834 m World muIoni + 485 4.0625093 m 43.720268 cm 3.4889516 m 3.9002484 MeV 8.16902 keV 6.8860709 mm 11.43072 m World muIoni + 486 4.0669202 m 43.759835 cm 3.4905812 m 3.8919059 MeV 7.2781071 keV 4.718978 mm 11.435439 m World muIoni + 487 4.069029 m 43.778038 cm 3.4913533 m 3.8820207 MeV 3.8556715 keV 2.2530414 mm 11.437692 m World muIoni + 488 4.0698471 m 43.785208 cm 3.4916554 m 3.8793827 MeV 1.1360841 keV 875.01042 um 11.438567 m World muIoni + 489 4.0741631 m 43.823013 cm 3.4932561 m 3.8683184 MeV 3.3904 keV 4.6188306 mm 11.443186 m World muIoni + 490 4.0789261 m 43.866046 cm 3.4950135 m 3.8622266 MeV 4.768914 keV 5.095139 mm 11.448281 m World muIoni + 491 4.0871989 m 43.937447 cm 3.4980579 m 3.8435387 MeV 9.0208459 keV 8.8442296 mm 11.457125 m World muIoni + 492 4.087402 m 43.9393 cm 3.4981325 m 3.8417365 MeV 150.157 eV 217.12371 um 11.457342 m World muIoni + 493 4.0888219 m 43.952075 cm 3.498654 m 3.8387826 MeV 2.9539309 keV 1.5180125 mm 11.45886 m World muIoni + 494 4.1094335 m 44.139226 cm 3.5061416 m 3.8135935 MeV 23.391492 keV 2.2010221 cm 11.480871 m World muIoni + 495 4.1143047 m 44.176549 cm 3.5078874 m 3.7578239 MeV 7.1456582 keV 5.1880581 mm 11.486059 m World muIoni + 496 4.1146265 m 44.17899 cm 3.5080025 m 3.7576727 MeV 151.23505 eV 342.65006 um 11.486401 m World muIoni + 497 4.1212648 m 44.229204 cm 3.5103794 m 3.7418687 MeV 8.8481155 keV 7.0689622 mm 11.49347 m World muIoni + 498 4.1307717 m 44.308638 cm 3.5138458 m 3.7242589 MeV 13.125597 keV 1.0150542 cm 11.503621 m World muIoni + 499 4.1338581 m 44.335238 cm 3.5149856 m 3.7140784 MeV 4.1077308 keV 3.3008787 mm 11.506922 m World muIoni + 500 4.1427246 m 44.415714 cm 3.5183115 m 3.6996139 MeV 13.364782 keV 9.5040089 mm 11.516426 m World muIoni + 501 4.1470801 m 44.456316 cm 3.5199901 m 3.6928018 MeV 6.8120626 keV 4.6854538 mm 11.521111 m World muIoni + 502 4.1512837 m 44.496062 cm 3.5216011 m 3.6860549 MeV 5.6017694 keV 4.5193462 mm 11.525631 m World muIoni + 503 4.1526862 m 44.50928 cm 3.5221341 m 3.6818172 MeV 2.3975647 keV 1.5061314 mm 11.527137 m World muIoni + 504 4.159368 m 44.564142 cm 3.5246663 m 3.6704445 MeV 9.484328 keV 7.166718 mm 11.534303 m World muIoni + 505 4.1614413 m 44.580729 cm 3.5254458 m 3.6646766 MeV 3.5459471 keV 2.2211704 mm 11.536525 m World muIoni + 506 4.1689756 m 44.639968 cm 3.5282742 m 3.6504445 MeV 10.906742 keV 8.0695756 mm 11.544594 m World muIoni + 507 4.1712917 m 44.663753 cm 3.5291497 m 3.6456469 MeV 3.1828199 keV 2.4875302 mm 11.547082 m World muIoni + 508 4.1740545 m 44.692244 cm 3.5301807 m 3.6412866 MeV 3.1575134 keV 2.9625485 mm 11.550044 m World muIoni + 509 4.1903047 m 44.85989 cm 3.5361684 m 3.624717 MeV 15.397789 keV 1.7399907 cm 11.567444 m World muIoni + 510 4.2033203 m 44.974844 cm 3.5407713 m 3.6047321 MeV 19.984975 keV 1.385381 cm 11.581298 m World muIoni + 511 4.2035975 m 44.977505 cm 3.5408673 m 3.6021354 MeV 151.81149 eV 294.48463 um 11.581592 m World muIoni + 512 4.2120109 m 45.05686 cm 3.5437915 m 3.5916538 MeV 10.481642 keV 8.9426159 mm 11.590535 m World muIoni + 513 4.2316305 m 45.246998 cm 3.5505476 m 3.5696817 MeV 21.972132 keV 2.0838201 cm 11.611373 m World muIoni + 514 4.2317779 m 45.248276 cm 3.5505986 m 3.565964 MeV 173.37815 eV 156.4635 um 11.61153 m World muIoni + 515 4.2331877 m 45.260725 cm 3.5510837 m 3.5621279 MeV 2.8139816 keV 1.4961648 mm 11.613026 m World muIoni + 516 4.2431227 m 45.347514 cm 3.5545258 m 3.5456778 MeV 12.302669 keV 1.0550377 cm 11.623576 m World muIoni + 517 4.2524636 m 45.432775 cm 3.5577273 m 3.5290806 MeV 15.49384 keV 9.9112791 mm 11.633488 m World muIoni + 518 4.2528686 m 45.436457 cm 3.5578657 m 3.5264651 MeV 121.3072 eV 429.54409 um 11.633917 m World muIoni + 519 4.2544788 m 45.451127 cm 3.5584192 m 3.5215073 MeV 3.2079293 keV 1.709069 mm 11.635626 m World muIoni + 520 4.258309 m 45.48723 cm 3.5597222 m 3.5159892 MeV 5.5181771 keV 4.0618797 mm 11.639688 m World muIoni + 521 4.2627949 m 45.5319 cm 3.5612257 m 3.5066921 MeV 6.5744253 keV 4.7521869 mm 11.64444 m World muIoni + 522 4.2864776 m 45.76963 cm 3.5688039 m 3.4704429 MeV 34.020241 keV 2.4985141 cm 11.669425 m World muIoni + 523 4.2959076 m 45.892052 cm 3.5718835 m 3.4532474 MeV 15.965936 keV 9.9956327 mm 11.679421 m World muIoni + 524 4.302249 m 45.970103 cm 3.5739517 m 3.4458527 MeV 7.3947407 keV 6.7157755 mm 11.686137 m World muIoni + 525 4.3075645 m 46.033605 cm 3.5757204 m 3.4398677 MeV 4.9230931 keV 5.637891 mm 11.691775 m World muIoni + 526 4.315454 m 46.129322 cm 3.5783452 m 3.425843 MeV 12.403354 keV 8.3697893 mm 11.700144 m World muIoni + 527 4.3175664 m 46.15502 cm 3.5790405 m 3.4231672 MeV 2.6758252 keV 2.2387277 mm 11.702383 m World muIoni + 528 4.3219808 m 46.210794 cm 3.5804942 m 3.4163204 MeV 5.0523643 keV 4.6809385 mm 11.707064 m World muIoni + 529 4.3307281 m 46.32151 cm 3.5834697 m 3.4018904 MeV 13.393516 keV 9.3058898 mm 11.71637 m World muIoni + 530 4.3384153 m 46.422925 cm 3.5860604 m 3.3865174 MeV 12.619029 keV 8.1753329 mm 11.724545 m World muIoni + 531 4.3398175 m 46.441355 cm 3.5865332 m 3.3843268 MeV 811.12199 eV 1.4911735 mm 11.726037 m World muIoni + 532 4.3399869 m 46.443588 cm 3.5865906 m 3.3841316 MeV 195.21454 eV 180.24382 um 11.726217 m World muIoni + 533 4.3562892 m 46.653736 cm 3.5920916 m 3.3548803 MeV 28.047143 keV 1.7334084 cm 11.743551 m World muIoni + 534 4.3571674 m 46.665032 cm 3.5923902 m 3.3349766 MeV 1.1625368 keV 934.38189 um 11.744485 m World muIoni + 535 4.3639484 m 46.74951 cm 3.5946897 m 3.3229007 MeV 10.142674 keV 7.2101029 mm 11.751695 m World muIoni + 536 4.3652898 m 46.764345 cm 3.5951404 m 3.3205732 MeV 1.0503562 keV 1.4228447 mm 11.753118 m World muIoni + 537 4.3682814 m 46.787496 cm 3.5964574 m 3.3123771 MeV 4.2157526 keV 3.2874891 mm 11.756406 m World muIoni + 538 4.3696474 m 46.79405 cm 3.5971803 m 3.3060447 MeV 3.8108417 keV 1.5468404 mm 11.757953 m World muIoni + 539 4.3717839 m 46.806988 cm 3.5982981 m 3.3000025 MeV 4.962318 keV 2.4148878 mm 11.760367 m World muIoni + 540 4.3811973 m 46.882266 cm 3.603163 m 3.2874629 MeV 11.148502 keV 1.0623197 cm 11.770991 m World muIoni + 541 4.3817992 m 46.887069 cm 3.6034763 m 3.2847629 MeV 1.509905 keV 680.2565 um 11.771671 m World muIoni + 542 4.3853626 m 46.917097 cm 3.6053149 m 3.2811642 MeV 3.5986875 keV 4.0210622 mm 11.775692 m World muIoni + 543 4.3862084 m 46.923766 cm 3.6057607 m 3.2809038 MeV 260.37053 eV 958.40756 um 11.77665 m World muIoni + 544 4.3870115 m 46.930211 cm 3.606184 m 3.2751621 MeV 1.9640664 keV 910.07426 um 11.77756 m World muIoni + 545 4.3877373 m 46.9363 cm 3.6065683 m 3.2710203 MeV 1.1490406 keV 823.47562 um 11.778384 m World muIoni + 546 4.3894434 m 46.951172 cm 3.6074737 m 3.2651826 MeV 4.446999 keV 1.9372102 mm 11.780321 m World muIoni + 547 4.3953684 m 47.000472 cm 3.6106572 m 3.2516301 MeV 9.9264175 keV 6.7443132 mm 11.787065 m World muIoni + 548 4.408714 m 47.0989 cm 3.6176552 m 3.2176434 MeV 20.566727 keV 1.5101732 cm 11.802167 m World muIoni + 549 4.4243121 m 47.219641 cm 3.6260915 m 3.1677818 MeV 25.291347 keV 1.7775419 cm 11.819943 m World muIoni + 550 4.4247008 m 47.222982 cm 3.6263055 m 3.1658446 MeV 458.66953 eV 444.90857 um 11.820387 m World muIoni + 551 4.4257615 m 47.232246 cm 3.6268911 m 3.1626956 MeV 2.0329097 keV 1.2151687 mm 11.821603 m World muIoni + 552 4.4288129 m 47.259521 cm 3.628572 m 3.1551399 MeV 6.4967841 keV 3.4944979 mm 11.825097 m World muIoni + 553 4.4414794 m 47.371402 cm 3.6354488 m 3.1278291 MeV 24.757691 keV 1.4456842 cm 11.839554 m World muIoni + 554 4.4432192 m 47.386189 cm 3.6363754 m 3.1154205 MeV 3.2056518 keV 1.9766642 mm 11.841531 m World muIoni + 555 4.4460018 m 47.410142 cm 3.637875 m 3.1094035 MeV 4.5826012 keV 3.1701111 mm 11.844701 m World muIoni + 556 4.4505663 m 47.449421 cm 3.640353 m 3.0975959 MeV 8.7919001 keV 5.2086524 mm 11.849909 m World muIoni + 557 4.4524219 m 47.466943 cm 3.6413482 m 3.0942747 MeV 2.1701421 keV 2.1129093 mm 11.852022 m World muIoni + 558 4.4632797 m 47.574373 cm 3.6472407 m 3.0729198 MeV 19.130332 keV 1.2400763 cm 11.864423 m World muIoni + 559 4.4637491 m 47.578846 cm 3.6474956 m 3.0655056 MeV 540.67705 eV 536.03094 um 11.864959 m World muIoni + 560 4.4684441 m 47.623121 cm 3.6500609 m 3.0469031 MeV 9.372531 keV 5.3684803 mm 11.870328 m World muIoni + 561 4.4728073 m 47.668899 cm 3.6524415 m 3.0394172 MeV 7.4859865 keV 4.9915216 mm 11.875319 m World muIoni + 562 4.4786178 m 47.711155 cm 3.6557566 m 3.0263414 MeV 12.082847 keV 6.7051926 mm 11.882024 m World muIoni + 563 4.4900869 m 47.767422 cm 3.6625037 m 3.0002754 MeV 24.518905 keV 1.3318991 cm 11.895343 m World muIoni + 564 4.4930034 m 47.783707 cm 3.6642571 m 2.9938552 MeV 5.3772488 keV 3.4069114 mm 11.89875 m World muIoni + 565 4.5010662 m 47.83387 cm 3.6690833 m 2.9780065 MeV 14.496148 keV 9.4105437 mm 11.908161 m World muIoni + 566 4.5041597 m 47.855373 cm 3.6709116 m 2.9707916 MeV 5.2589622 keV 3.5998361 mm 11.911761 m World muIoni + 567 4.5049698 m 47.861 cm 3.6713865 m 2.9688585 MeV 848.65481 eV 940.73725 um 11.912701 m World muIoni + 568 4.5053902 m 47.864035 cm 3.6716323 m 2.9645263 MeV 314.39101 eV 487.88045 um 11.913189 m World muIoni + 569 4.5110375 m 47.903448 cm 3.6749301 m 2.9538361 MeV 10.690154 keV 6.5516652 mm 11.919741 m World muIoni + 570 4.5144172 m 47.92524 cm 3.6769074 m 2.9429666 MeV 8.602874 keV 3.9217104 mm 11.923663 m World muIoni + 571 4.5151107 m 47.929816 cm 3.677317 m 2.9402669 MeV 918.29059 eV 806.79583 um 11.924469 m World muIoni + 572 4.51971 m 47.959333 cm 3.6800278 m 2.9281584 MeV 10.969532 keV 5.3469538 mm 11.929816 m World muIoni + 573 4.5259586 m 48.002631 cm 3.6837681 m 2.9133186 MeV 13.122837 keV 7.2955128 mm 11.937112 m World muIoni + 574 4.5282857 m 48.018803 cm 3.6851663 m 2.9066924 MeV 4.19755 keV 2.7197109 mm 11.939832 m World muIoni + 575 4.5296584 m 48.026928 cm 3.685997 m 2.903278 MeV 2.1818261 keV 1.6065305 mm 11.941438 m World muIoni + 576 4.5343296 m 48.05395 cm 3.6887823 m 2.8910135 MeV 10.715646 keV 5.4454137 mm 11.946883 m World muIoni + 577 4.5358017 m 48.062962 cm 3.6896766 m 2.8786822 MeV 2.4644955 keV 1.7247437 mm 11.948608 m World muIoni + 578 4.5442117 m 48.082395 cm 3.6949539 m 2.8613686 MeV 17.31363 keV 9.9330246 mm 11.958541 m World muIoni + 579 4.5528762 m 48.085203 cm 3.7005633 m 2.8424351 MeV 15.688559 keV 1.0322101 cm 11.968863 m World muIoni + 580 4.5548681 m 48.086534 cm 3.7018838 m 2.8397247 MeV 2.7103872 keV 2.389958 mm 11.971253 m World muIoni + 581 4.5783583 m 48.098142 cm 3.717446 m 2.7926875 MeV 45.86912 keV 2.8180968 cm 11.999434 m World muIoni + 582 4.5899862 m 48.115289 cm 3.7249368 m 2.7683974 MeV 23.266031 keV 1.3833624 cm 12.013268 m World muIoni + 583 4.5905344 m 48.114797 cm 3.7252817 m 2.7666324 MeV 662.01112 eV 647.76374 um 12.013916 m World muIoni + 584 4.5916657 m 48.114034 cm 3.7259948 m 2.7620993 MeV 2.9163963 keV 1.3372823 mm 12.015253 m World muIoni + 585 4.5930359 m 48.11282 cm 3.7268571 m 2.7575025 MeV 2.2850253 keV 1.6190492 mm 12.016872 m World muIoni + 586 4.5954082 m 48.111956 cm 3.7283585 m 2.7479382 MeV 3.9811715 keV 2.8075083 mm 12.01968 m World muIoni + 587 4.5975507 m 48.109259 cm 3.7297087 m 2.7447714 MeV 3.1668173 keV 2.5326225 mm 12.022212 m World muIoni + 588 4.5991718 m 48.107141 cm 3.7307317 m 2.7381257 MeV 4.9978354 keV 1.9170186 mm 12.024129 m World muIoni + 589 4.6049561 m 48.101092 cm 3.7343636 m 2.7225966 MeV 12.194414 keV 6.8304222 mm 12.03096 m World muIoni + 590 4.613588 m 48.097441 cm 3.739673 m 2.7030905 MeV 15.061776 keV 1.0134561 cm 12.041094 m World muIoni + 591 4.613694 m 48.097322 cm 3.7397374 m 2.6728034 MeV 93.381055 eV 124.03198 um 12.041218 m World muIoni + 592 4.6159197 m 48.093599 cm 3.7410878 m 2.6691792 MeV 3.6241758 keV 2.6035885 mm 12.043822 m World muIoni + 593 4.6221869 m 48.079243 cm 3.7448255 m 2.6562584 MeV 10.787423 keV 7.2987835 mm 12.051121 m World muIoni + 594 4.6233629 m 48.076069 cm 3.7455521 m 2.6506873 MeV 2.1340626 keV 1.3827265 mm 12.052503 m World muIoni + 595 4.6261979 m 48.068564 cm 3.747285 m 2.6365257 MeV 8.5826805 keV 3.3235755 mm 12.055827 m World muIoni + 596 4.6304029 m 48.053083 cm 3.7499153 m 2.6226888 MeV 6.6983873 keV 4.9623889 mm 12.060789 m World muIoni + 597 4.6323736 m 48.048918 cm 3.7511617 m 2.6135848 MeV 5.0428122 keV 2.3321875 mm 12.063121 m World muIoni + 598 4.6349738 m 48.043551 cm 3.7527976 m 2.6051484 MeV 5.4442347 keV 3.0724779 mm 12.066194 m World muIoni + 599 4.6406081 m 48.030709 cm 3.7562767 m 2.586241 MeV 11.026121 keV 6.6232997 mm 12.072817 m World muIoni + 600 4.6481929 m 48.015752 cm 3.7611116 m 2.5703729 MeV 14.845026 keV 8.9963208 mm 12.081814 m World muIoni + 601 4.6577064 m 48.019932 cm 3.7671519 m 2.5483157 MeV 18.651357 keV 1.1269717 cm 12.093083 m World muIoni + 602 4.6637614 m 48.023548 cm 3.7710473 m 2.538795 MeV 9.5206636 keV 7.20009 mm 12.100283 m World muIoni + 603 4.6708662 m 48.030443 cm 3.7756377 m 2.524564 MeV 14.231029 keV 8.4593486 mm 12.108743 m World muIoni + 604 4.6768674 m 48.029816 cm 3.7796588 m 2.5104521 MeV 14.111897 keV 7.2241018 mm 12.115967 m World muIoni + 605 4.6790507 m 48.030697 cm 3.7811189 m 2.5049097 MeV 5.5423794 keV 2.6265184 mm 12.118593 m World muIoni + 606 4.682389 m 48.031864 cm 3.7833745 m 2.4951632 MeV 8.7102116 keV 4.028956 mm 12.122622 m World muIoni + 607 4.6901172 m 48.038619 cm 3.7886437 m 2.4755115 MeV 17.753646 keV 9.3542469 mm 12.131976 m World muIoni + 608 4.6901362 m 48.038639 cm 3.7886568 m 2.4739725 MeV 0 eV 23.079355 um 12.132 m World muIoni + 609 4.6913306 m 48.040155 cm 3.7894869 m 2.4705456 MeV 2.1692489 keV 1.4546072 mm 12.133454 m World muIoni + 610 4.6913861 m 48.040233 cm 3.7895255 m 2.4694432 MeV 0 eV 67.627879 um 12.133522 m World muIoni + 611 4.6925607 m 48.042089 cm 3.7903408 m 2.4641174 MeV 4.1007991 keV 1.4299634 mm 12.134952 m World muIoni + 612 4.6930165 m 48.042976 cm 3.7906556 m 2.4600786 MeV 349.50412 eV 553.98994 um 12.135506 m World muIoni + 613 4.6986464 m 48.053332 cm 3.7945191 m 2.4412983 MeV 15.317297 keV 6.8290595 mm 12.142335 m World muIoni + 614 4.7061706 m 48.07864 cm 3.7996315 m 2.424754 MeV 16.544282 keV 9.1006041 mm 12.151435 m World muIoni + 615 4.7068815 m 48.081512 cm 3.8001138 m 2.4197306 MeV 2.0009606 keV 859.58308 um 12.152295 m World muIoni + 616 4.7082797 m 48.087016 cm 3.8010559 m 2.4153192 MeV 4.411329 keV 1.6869071 mm 12.153982 m World muIoni + 617 4.7141738 m 48.10673 cm 3.8050271 m 2.4051761 MeV 7.7714004 keV 7.1100127 mm 12.161092 m World muIoni + 618 4.7302235 m 48.190817 cm 3.8157899 m 2.3373739 MeV 37.430691 keV 1.9344754 cm 12.180437 m World muIoni + 619 4.7310519 m 48.193863 cm 3.8163133 m 2.33469 MeV 1.2401803 keV 980.33678 um 12.181417 m World muIoni + 620 4.7417542 m 48.238002 cm 3.8231191 m 2.3058055 MeV 22.17308 keV 1.2691539 cm 12.194109 m World muIoni + 621 4.7530439 m 48.30542 cm 3.830604 m 2.2823004 MeV 22.504385 keV 1.3563404 cm 12.207672 m World muIoni + 622 4.7607726 m 48.364535 cm 3.8355959 m 2.2609955 MeV 19.608253 keV 9.2200494 mm 12.216892 m World muIoni + 623 4.7730649 m 48.408183 cm 3.8436296 m 2.236447 MeV 24.548496 keV 1.4698828 cm 12.231591 m World muIoni + 624 4.7745282 m 48.401844 cm 3.8445988 m 2.2317536 MeV 3.6991622 keV 1.7562966 mm 12.233347 m World muIoni + 625 4.7798338 m 48.379926 cm 3.848086 m 2.2164225 MeV 13.76587 keV 6.3530062 mm 12.2397 m World muIoni + 626 4.7808704 m 48.373376 cm 3.8487659 m 2.2110289 MeV 1.5984755 keV 1.2413999 mm 12.240942 m World muIoni + 627 4.7816437 m 48.368582 cm 3.8492733 m 2.2080075 MeV 1.2928615 keV 926.14054 um 12.241868 m World muIoni + 628 4.7842637 m 48.353303 cm 3.850998 m 2.1989106 MeV 9.096867 keV 3.1404656 mm 12.245008 m World muIoni + 629 4.7868155 m 48.338275 cm 3.8526917 m 2.1907965 MeV 6.7239113 keV 3.0664731 mm 12.248075 m World muIoni + 630 4.7884647 m 48.328226 cm 3.8537972 m 2.1858376 MeV 3.5052585 keV 1.9879876 mm 12.250063 m World muIoni + 631 4.7898257 m 48.319297 cm 3.8547042 m 2.1828718 MeV 2.965807 keV 1.63797 mm 12.251701 m World muIoni + 632 4.7929934 m 48.298932 cm 3.8567857 m 2.1653275 MeV 7.665272 keV 3.7959812 mm 12.255497 m World muIoni + 633 4.7978089 m 48.267571 cm 3.8598961 m 2.1412264 MeV 11.606154 keV 5.7414386 mm 12.261238 m World muIoni + 634 4.7993712 m 48.254094 cm 3.8608764 m 2.1337674 MeV 4.4578529 keV 1.8492662 mm 12.263087 m World muIoni + 635 4.7998193 m 48.25012 cm 3.8611595 m 2.1327914 MeV 976.01551 eV 531.55692 um 12.263619 m World muIoni + 636 4.8027138 m 48.224716 cm 3.862994 m 2.1255812 MeV 4.8872611 keV 3.4363532 mm 12.267055 m World muIoni + 637 4.8040411 m 48.214306 cm 3.8638659 m 2.1192239 MeV 3.3042887 keV 1.5914584 mm 12.268647 m World muIoni + 638 4.8127575 m 48.152542 cm 3.8695609 m 2.0976879 MeV 21.536024 keV 1.0431012 cm 12.279078 m World muIoni + 639 4.8191909 m 48.102437 cm 3.8736228 m 2.0752707 MeV 16.671446 keV 7.6252685 mm 12.286703 m World muIoni + 640 4.8233239 m 48.065878 cm 3.876255 m 2.0659079 MeV 7.291121 keV 4.91374 mm 12.291617 m World muIoni + 641 4.8241213 m 48.058002 cm 3.8767585 m 2.0598813 MeV 4.3121961 keV 946.30424 um 12.292563 m World muIoni + 642 4.8259107 m 48.039532 cm 3.877899 m 2.0541678 MeV 4.4098113 keV 2.1300728 mm 12.294693 m World muIoni + 643 4.8269685 m 48.030122 cm 3.878574 m 2.0499794 MeV 2.9787624 keV 1.2583439 mm 12.295951 m World muIoni + 644 4.8285322 m 48.016018 cm 3.8795685 m 2.044355 MeV 3.2671244 keV 1.8585062 mm 12.29781 m World muIoni + 645 4.8348291 m 47.954937 cm 3.8835563 m 2.0294154 MeV 13.72185 keV 7.478809 mm 12.305289 m World muIoni + 646 4.8400591 m 47.908888 cm 3.8867258 m 2.0177603 MeV 10.537933 keV 6.1329487 mm 12.311422 m World muIoni + 647 4.8422774 m 47.88863 cm 3.8880721 m 2.0112398 MeV 5.1275433 keV 2.6028763 mm 12.314025 m World muIoni + 648 4.8500187 m 47.816325 cm 3.8927212 m 1.9878666 MeV 23.373196 keV 9.0594948 mm 12.323084 m World muIoni + 649 4.8505281 m 47.811448 cm 3.893029 m 1.9852723 MeV 2.5943204 keV 597.16617 um 12.323681 m World muIoni + 650 4.8515763 m 47.801645 cm 3.8936613 m 1.9813491 MeV 2.0764416 keV 1.228116 mm 12.324909 m World muIoni + 651 4.8593573 m 47.728468 cm 3.8983058 m 1.9514842 MeV 23.218097 keV 9.0919056 mm 12.334001 m World muIoni + 652 4.860714 m 47.714796 cm 3.8990797 m 1.943359 MeV 3.2187444 keV 1.567877 mm 12.335569 m World muIoni + 653 4.8685782 m 47.637239 cm 3.9035741 m 1.9258221 MeV 16.431904 keV 9.0915579 mm 12.344661 m World muIoni + 654 4.8694416 m 47.628991 cm 3.9040614 m 1.916534 MeV 3.2671501 keV 994.92108 um 12.345656 m World muIoni + 655 4.8703399 m 47.620196 cm 3.9045609 m 1.9148404 MeV 1.6935856 keV 1.0315917 mm 12.346687 m World muIoni + 656 4.8752755 m 47.574368 cm 3.9072961 m 1.901807 MeV 13.033459 keV 5.6616727 mm 12.352349 m World muIoni + 657 4.8797253 m 47.535546 cm 3.9097265 m 1.8849895 MeV 11.712602 keV 5.0852877 mm 12.357434 m World muIoni + 658 4.8801092 m 47.531731 cm 3.9099384 m 1.8819665 MeV 1.4763244 keV 440.12394 um 12.357874 m World muIoni + 659 4.8802595 m 47.530234 cm 3.9100218 m 1.8804942 MeV 467.00127 eV 172.53488 um 12.358047 m World muIoni + 660 4.8853048 m 47.479263 cm 3.9128201 m 1.8618803 MeV 17.177627 keV 5.7921357 mm 12.363839 m World muIoni + 661 4.8857202 m 47.475344 cm 3.9130509 m 1.857117 MeV 2.1744996 keV 476.77576 um 12.364316 m World muIoni + 662 4.8959649 m 47.378139 cm 3.9187253 m 1.8277883 MeV 28.097399 keV 1.1752695 cm 12.376068 m World muIoni + 663 4.8981608 m 47.361106 cm 3.9199364 m 1.8199791 MeV 7.8092034 keV 2.5136216 mm 12.378582 m World muIoni + 664 4.9012084 m 47.335296 cm 3.9216195 m 1.8110921 MeV 8.8870004 keV 3.4911163 mm 12.382073 m World muIoni + 665 4.9097206 m 47.271829 cm 3.9263834 m 1.7877213 MeV 21.412866 keV 9.7760577 mm 12.391849 m World muIoni + 666 4.9107418 m 47.263844 cm 3.9269454 m 1.7796705 MeV 4.5239559 keV 1.1683761 mm 12.393018 m World muIoni + 667 4.911461 m 47.258609 cm 3.9273449 m 1.7756975 MeV 2.1934737 keV 824.33688 um 12.393842 m World muIoni + 668 4.9118286 m 47.25596 cm 3.9275487 m 1.768035 MeV 1.7731546 keV 421.17695 um 12.394263 m World muIoni + 669 4.9125344 m 47.251034 cm 3.9279398 m 1.7598287 MeV 3.0179015 keV 808.44794 um 12.395072 m World muIoni + 670 4.9129994 m 47.24762 cm 3.9281971 m 1.7586414 MeV 1.187242 keV 532.53378 um 12.395604 m World muIoni + 671 4.9133172 m 47.24536 cm 3.9283725 m 1.7552307 MeV 589.79545 eV 363.67329 um 12.395968 m World muIoni + 672 4.9163004 m 47.223629 cm 3.9300291 m 1.7451956 MeV 8.1884728 keV 3.419326 mm 12.399387 m World muIoni + 673 4.9167033 m 47.220557 cm 3.930249 m 1.7401674 MeV 2.7299981 keV 460.05659 um 12.399847 m World muIoni + 674 4.9192784 m 47.200951 cm 3.9316488 m 1.7326718 MeV 6.489749 keV 2.9375551 mm 12.402785 m World muIoni + 675 4.9234816 m 47.168948 cm 3.9339165 m 1.7197472 MeV 11.907815 keV 4.786814 mm 12.407571 m World muIoni + 676 4.924771 m 47.161319 cm 3.9346076 m 1.7137815 MeV 1.871348 keV 1.464938 mm 12.409036 m World muIoni + 677 4.9274321 m 47.146914 cm 3.9360766 m 1.7031258 MeV 9.4408604 keV 3.043094 mm 12.412079 m World muIoni + 678 4.9284647 m 47.140554 cm 3.9366267 m 1.698945 MeV 1.9652474 keV 1.1718185 mm 12.413251 m World muIoni + 679 4.9314729 m 47.121891 cm 3.9382493 m 1.6900855 MeV 7.2445331 keV 3.4230696 mm 12.416674 m World muIoni + 680 4.9326032 m 47.115441 cm 3.9388528 m 1.6851411 MeV 3.814979 keV 1.282925 mm 12.417957 m World muIoni + 681 4.9397806 m 47.069108 cm 3.942609 m 1.6674219 MeV 14.388794 keV 8.1148394 mm 12.426072 m World muIoni + 682 4.9417399 m 47.058986 cm 3.9436221 m 1.656809 MeV 6.107984 keV 2.20802 mm 12.42828 m World muIoni + 683 4.9421357 m 47.056978 cm 3.9438241 m 1.6545145 MeV 1.2279277 keV 444.82493 um 12.428725 m World muIoni + 684 4.9426318 m 47.05465 cm 3.9440779 m 1.6517684 MeV 1.2263219 keV 557.82929 um 12.429283 m World muIoni + 685 4.9464051 m 47.025584 cm 3.9460595 m 1.6418107 MeV 8.7333318 keV 4.273192 mm 12.433556 m World muIoni + 686 4.9502284 m 46.98514 cm 3.9481143 m 1.6238423 MeV 13.690687 keV 4.3595153 mm 12.437916 m World muIoni + 687 4.9503931 m 46.983704 cm 3.9482024 m 1.6211575 MeV 260.83924 eV 187.27703 um 12.438103 m World muIoni + 688 4.9505091 m 46.98265 cm 3.9482641 m 1.6192495 MeV 56.262622 eV 131.78074 um 12.438235 m World muIoni + 689 4.9531564 m 46.958215 cm 3.9496649 m 1.6113361 MeV 6.6410956 keV 3.0051022 mm 12.44124 m World muIoni + 690 4.9534677 m 46.95567 cm 3.9498314 m 1.6095888 MeV 713.51447 eV 353.94792 um 12.441594 m World muIoni + 691 4.9541253 m 46.950308 cm 3.950189 m 1.6075856 MeV 864.58621 eV 750.46927 um 12.442344 m World muIoni + 692 4.9543534 m 46.948526 cm 3.950313 m 1.604896 MeV 258.45017 eV 260.31412 um 12.442604 m World muIoni + 693 4.9631471 m 46.881912 cm 3.9550666 m 1.5771491 MeV 23.026965 keV 1.0019599 cm 12.452624 m World muIoni + 694 4.9640827 m 46.872308 cm 3.9555891 m 1.5732322 MeV 2.5791614 keV 1.0759495 mm 12.4537 m World muIoni + 695 4.964331 m 46.869792 cm 3.9557277 m 1.5696161 MeV 501.66566 eV 285.41913 um 12.453985 m World muIoni + 696 4.9644237 m 46.868854 cm 3.9557792 m 1.5694436 MeV 172.51036 eV 106.51996 um 12.454092 m World muIoni + 697 4.9655859 m 46.85705 cm 3.9564261 m 1.5576663 MeV 3.0494523 keV 1.3352913 mm 12.455427 m World muIoni + 698 4.967616 m 46.836451 cm 3.9575705 m 1.5499411 MeV 6.5349998 keV 2.339612 mm 12.457767 m World muIoni + 699 4.9695367 m 46.81609 cm 3.9586582 m 1.5439151 MeV 4.2810467 keV 2.2167208 mm 12.459984 m World muIoni + 700 4.9728664 m 46.77664 cm 3.9605707 m 1.5381722 MeV 5.7429241 keV 3.8602349 mm 12.463844 m World muIoni + 701 4.973532 m 46.769449 cm 3.9609627 m 1.5371706 MeV 1.0016278 keV 775.81719 um 12.46462 m World muIoni + 702 4.9753779 m 46.750676 cm 3.9620549 m 1.5323595 MeV 4.8110722 keV 2.1530292 mm 12.466773 m World muIoni + 703 4.9780992 m 46.723186 cm 3.9636652 m 1.523703 MeV 7.0519085 keV 3.1741102 mm 12.469947 m World muIoni + 704 4.9781218 m 46.722949 cm 3.9636789 m 1.5236143 MeV 88.681376 eV 26.503711 um 12.469973 m OutOfWorld Transportation +Track (trackID 24, parentID 2) is processed with stopping code 2 NULL returned from G4StackManager. Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.217510879295(mm),3.4031038413288(mm),78.727198184324(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.759151162058(mm),0.92266678303658(mm),78.279038427217(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3770,7 +4283,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.8867(mm),-2.1977602(mm),78.785529(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.960299(mm),-0.88826347(mm),79.301532(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3779,7 +4292,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.729743(mm),-2.8009454(mm),78.989532(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.614606(mm),1.9270826(mm),79.362488(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3788,7 +4301,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.98477(mm),1.3346499(mm),79.120891(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.014315(mm),2.167731(mm),78.234046(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3797,7 +4310,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.682594(mm),2.1259195(mm),78.292538(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.493072(mm),-3.3010068(mm),78.502282(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3806,7 +4319,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.279881(mm),2.2431237(mm),78.539874(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.527683(mm),2.0448646(mm),79.201487(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3815,7 +4328,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.192545(mm),1.6391326(mm),79.084254(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.256643(mm),0.85210384(mm),79.425606(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -3824,1583 +4337,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.429623(mm),-3.7293209(mm),78.866124(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.30367(mm),-2.0429895(mm),78.712006(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.690748(mm),-1.3919352(mm),79.172735(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.105407(mm),2.447396(mm),78.923292(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.827007(mm),3.0719469(mm),78.796055(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.70748(mm),-3.9935737(mm),78.81713(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.879919(mm),0.22097048(mm),78.434071(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.975105(mm),-3.0011563(mm),79.122595(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 - -********************************************************************************************************* -* G4Track Information: Particle = pi+, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.1 cm -3.07 mm 7.22 cm 15.6 MeV 0 eV 0 fm 0 fm Target initStep - 1 -1.1084274 cm -2.719417 mm 7.237438 cm 12.589891 MeV 2.971894 MeV 419.40103 um 419.40103 um Target hIoni - 2 -1.1240376 cm -2.4493303 mm 7.2487058 cm 9.5092417 MeV 3.0806488 MeV 336.3167 um 755.71772 um Target hIoni - 3 -1.1407109 cm -2.2654139 mm 7.2548498 cm 6.6538693 MeV 2.8553724 MeV 260.38679 um 1.0161045 mm Target hIoni - 4 -1.1496637 cm -2.1079321 mm 7.2608989 cm 3.6990518 MeV 2.9548175 MeV 196.09672 um 1.2122012 mm Target hIoni - 5 -1.1542341 cm -2.0270307 mm 7.26213 cm 303.68354 keV 3.3953682 MeV 112.36935 um 1.3245706 mm Target hIoni - 6 -1.1543239 cm -2.0261033 mm 7.2620872 cm 28.679794 keV 275.00375 keV 2.3579486 um 1.3269285 mm Target hIoni - 7 -1.1543268 cm -2.0260956 mm 7.2620857 cm 0 eV 28.679794 keV 171.09532 nm 1.3270996 mm Target hIoni - 8 -1.1543268 cm -2.0260956 mm 7.2620857 cm 0 eV 0 eV 0 fm 1.3270996 mm Target Scintillation -Track (trackID 6, parentID 1) is processed with stopping code 2 - -********************************************************************************************************* -* G4Track Information: Particle = mu+, Track ID = 25, Parent ID = 6 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.15 cm -2.03 mm 7.26 cm 4.12 MeV 0 eV 0 fm 0 fm Target initStep - 1 -1.1450681 cm -2.1032877 mm 7.2612374 cm 1.0615497 MeV 3.0582629 MeV 143.95492 um 143.95492 um Target muIoni - 2 -1.1449695 cm -2.1143727 mm 7.2606134 cm 77.221458 keV 984.32828 keV 17.525543 um 161.48047 um Target muIoni - 3 -1.1449781 cm -2.1145374 mm 7.2606166 cm 0 eV 77.221458 keV 445.27844 nm 161.92575 um Target muIoni - 4 -1.1449781 cm -2.1145374 mm 7.2606166 cm 0 eV 0 eV 0 fm 161.92575 um Target Scintillation -Track (trackID 25, parentID 6) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.90563(mm),-2.5981564(mm),78.605864(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.559297(mm),-0.8294419(mm),79.195913(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.670124(mm),-0.45491993(mm),78.118409(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.856948(mm),-2.556187(mm),78.261794(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.798673(mm),-0.91710474(mm),78.977378(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.681518(mm),0.39382673(mm),78.645381(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.692416(mm),2.8700118(mm),78.996114(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.20893(mm),-2.1218689(mm),79.257692(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.400121(mm),0.86695154(mm),79.047653(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.776695(mm),-2.3290159(mm),78.804926(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.323897(mm),-2.3696326(mm),79.061093(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.354078(mm),1.4569996(mm),78.174137(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.775151(mm),2.3429605(mm),78.628871(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.052809(mm),-2.2286464(mm),79.285221(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.433352(mm),0.15492335(mm),78.160159(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.827907(mm),-3.4539658(mm),78.795896(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.452621(mm),-2.5502172(mm),78.333088(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.799173(mm),0.17010351(mm),78.095655(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.57423(mm),0.48254016(mm),79.016953(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.768742(mm),-2.1779586(mm),78.630001(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.208732(mm),-1.5934589(mm),78.552419(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.180937(mm),-0.25839372(mm),78.733647(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.627387(mm),0.30201768(mm),78.654926(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.492359(mm),1.3284161(mm),79.384043(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.933168(mm),1.9841806(mm),78.953662(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.619947(mm),0.19685591(mm),79.008892(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.206951(mm),1.9144475(mm),78.200079(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.752008(mm),1.9672159(mm),79.161933(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.854088(mm),-0.209539(mm),78.967606(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.412839(mm),-1.5473302(mm),78.163776(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.475729(mm),0.37484708(mm),78.152687(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.13758(mm),-2.3248345(mm),78.388638(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.89927(mm),0.34945185(mm),78.95964(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.796196(mm),-0.65463164(mm),78.62516(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.541034(mm),-1.6751735(mm),79.37546(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.890987(mm),-2.046968(mm),78.432119(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.864173(mm),1.3036876(mm),78.789501(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.794972(mm),0.26739503(mm),78.801703(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.377025(mm),-1.3228371(mm),78.875399(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.95304(mm),1.0871511(mm),78.597504(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.385272(mm),-1.4617143(mm),78.697617(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.024798(mm),0.642156(mm),79.29016(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.332934(mm),-2.1196563(mm),79.0595(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.823743(mm),-0.57547404(mm),78.620303(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.695257(mm),-2.5383139(mm),78.995613(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.312639(mm),0.3225224(mm),79.063078(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.972136(mm),-2.0530898(mm),79.123118(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.22615(mm),1.1258414(mm),78.725675(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.365612(mm),1.6962502(mm),78.877411(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.659827(mm),0.93636274(mm),78.472879(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.789003(mm),-1.3061499(mm),79.15541(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.278449(mm),-1.9494439(mm),79.069107(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.90227(mm),0.23395257(mm),78.43013(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.862598(mm),0.73077275(mm),78.789779(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.434162(mm),3.2630775(mm),78.688997(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.777755(mm),2.5939286(mm),78.452085(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.201725(mm),0.067863458(mm),78.377328(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.012875(mm),-2.5842095(mm),78.763281(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.126357(mm),1.3261741(mm),79.095925(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.395864(mm),1.2438986(mm),78.343096(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.94083(mm),2.9519506(mm),78.599657(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.704085(mm),2.0695971(mm),78.994056(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.264255(mm),0.7156411(mm),79.07161(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.401611(mm),-0.64862957(mm),78.342082(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.321273(mm),-3.2560704(mm),79.061556(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.52246(mm),1.4865039(mm),78.849754(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.168722(mm),-3.5120065(mm),78.735801(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.003209(mm),-2.2682943(mm),78.941312(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.745272(mm),-1.5871464(mm),78.281486(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.757864(mm),-1.4444014(mm),78.455592(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.758014(mm),2.9191094(mm),78.984547(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.197385(mm),0.9500464(mm),79.259728(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.987502(mm),1.5314658(mm),79.120409(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.244315(mm),3.6958855(mm),78.546145(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.317312(mm),1.49436(mm),78.885928(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.509876(mm),3.0989705(mm),79.0283(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.903361(mm),0.94330107(mm),78.429937(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.006701(mm),-2.4552211(mm),78.588043(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.269982(mm),-2.3716399(mm),78.717946(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.113554(mm),2.4535339(mm),78.745529(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.943389(mm),2.5183835(mm),78.599206(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.111952(mm),-0.60215166(mm),79.451119(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.898831(mm),0.14294377(mm),79.312371(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.758371(mm),-0.90109611(mm),78.984484(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.610273(mm),-1.1568299(mm),79.186925(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.499142(mm),-0.86191624(mm),79.030193(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.280659(mm),2.6771411(mm),78.363409(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.970528(mm),3.0361183(mm),78.770748(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.733662(mm),-3.3113086(mm),79.165168(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.179169(mm),-2.0447568(mm),79.086613(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.135444(mm),0.5742337(mm),79.446977(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.887295(mm),-0.74066014(mm),79.314405(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.473577(mm),0.74286458(mm),79.034701(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.449931(mm),-0.56173516(mm),78.686216(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.462399(mm),2.2391413(mm),79.036672(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.99116(mm),3.698829(mm),78.590783(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.689444(mm),-0.75903047(mm),79.349292(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.783013(mm),-1.9212199(mm),79.332793(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.430397(mm),0.51338612(mm),79.394969(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.740967(mm),-2.7991752(mm),78.987553(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.62819(mm),0.27598716(mm),78.478457(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.100075(mm),0.06245085(mm),79.276886(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.633216(mm),-1.1279628(mm),78.653898(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.548217(mm),-1.1297944(mm),78.139905(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.251022(mm),-1.2952901(mm),79.426597(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.143005(mm),-0.8910901(mm),78.740336(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.782216(mm),2.3395651(mm),78.451298(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.761418(mm),-2.0548024(mm),78.983947(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.619214(mm),-1.3939674(mm),79.009021(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.970517(mm),0.21820542(mm),78.77075(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.926962(mm),-2.7406332(mm),78.425776(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.188657(mm),-2.0772905(mm),78.732286(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.556293(mm),-0.45371222(mm),78.491135(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.647716(mm),-3.3595532(mm),78.827668(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.516956(mm),-3.5485345(mm),78.674398(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.317635(mm),-0.80897499(mm),79.238525(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.508568(mm),-1.0358523(mm),78.146896(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.213162(mm),-3.0529419(mm),78.375311(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.210351(mm),1.0312102(mm),79.433769(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.132202(mm),0.18878357(mm),78.21326(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.964336(mm),3.4416683(mm),78.77184(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.226374(mm),-2.6569496(mm),78.372981(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.625572(mm),-1.7475084(mm),78.655246(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.120216(mm),2.6002031(mm),79.273335(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.968263(mm),1.5219839(mm),78.418493(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.860415(mm),-2.5569653(mm),78.43751(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.395167(mm),-1.2906951(mm),78.8722(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.474264(mm),1.6090722(mm),79.03458(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.389303(mm),-0.96156261(mm),79.049561(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.305029(mm),1.6794452(mm),79.06442(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.112016(mm),-0.044393993(mm),79.098454(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.451644(mm),-0.35890909(mm),78.156933(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.313951(mm),-2.4526268(mm),79.239174(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.419991(mm),2.3425384(mm),78.691495(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.239811(mm),-3.7324413(mm),78.546939(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.378197(mm),-1.8236997(mm),78.169884(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.22189(mm),3.544218(mm),78.902753(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.915441(mm),-0.21996593(mm),78.956788(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.647289(mm),-0.38093091(mm),79.356725(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.361723(mm),3.7991074(mm),78.878097(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.729144(mm),3.4596393(mm),78.636984(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.615259(mm),-0.48083999(mm),79.362372(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.715183(mm),-0.75572286(mm),79.168426(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.076309(mm),3.0703332(mm),78.399442(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.876164(mm),1.8769474(mm),79.140041(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.692648(mm),0.535676(mm),79.348727(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.120471(mm),-2.1547512(mm),78.391655(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.643844(mm),0.39329809(mm),78.29937(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.944684(mm),3.3199322(mm),78.951632(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.469828(mm),0.55518956(mm),78.859035(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.704501(mm),-1.3103786(mm),79.17031(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.594762(mm),2.4366363(mm),78.660679(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.034699(mm),-1.3950935(mm),79.112087(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.75751(mm),-1.4949608(mm),78.631982(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.660622(mm),-3.9638094(mm),78.825393(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.010984(mm),2.4070267(mm),78.41096(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.643048(mm),-0.81388508(mm),78.652164(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.012804(mm),-3.1594928(mm),78.586967(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.484463(mm),2.1405361(mm),78.5038(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.50288(mm),-3.0683899(mm),78.853207(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.241536(mm),-0.32251074(mm),79.251943(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.299597(mm),3.5159649(mm),78.889051(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.714024(mm),1.7632373(mm),78.815976(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.823012(mm),-0.72133623(mm),78.796759(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.067455(mm),0.36448381(mm),78.401003(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.803717(mm),-1.4820351(mm),79.329142(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -5410,584 +4347,796 @@ Track (trackID 1, parentID 0) is processed with stopping code 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.59 cm 364 um 7.72 cm 51.8 MeV 0 eV 0 fm 0 fm Target initStep - 1 -1.5136502 cm 706.15625 um 7.5299558 cm 43.813325 MeV 7.983611 MeV 2.1082987 mm 2.1082987 mm Target hIoni - 2 -1.4341608 cm 1.1246742 mm 7.3931182 cm 37.360304 MeV 6.4530212 MeV 1.6493794 mm 3.7576782 mm Target hIoni - 3 -1.3678565 cm 1.2866889 mm 7.2826536 cm 32.551841 MeV 4.8084633 MeV 1.3087916 mm 5.0664697 mm Target hIoni - 4 -1.29377 cm 1.3428336 mm 7.2061432 cm 28.31427 MeV 4.2375705 MeV 1.0752866 mm 6.1417564 mm Target hIoni - 5 -1.2380188 cm 1.4875192 mm 7.1398909 cm 24.164137 MeV 4.1501336 MeV 885.47353 um 7.0272299 mm Target hIoni - 6 -1.1911739 cm 1.6655194 mm 7.0897397 cm 20.081795 MeV 4.0823415 MeV 715.50333 um 7.7427332 mm Target hIoni - 7 -1.1631386 cm 1.7646055 mm 7.0423607 cm 16.496597 MeV 3.5851983 MeV 565.0135 um 8.3077467 mm Target hIoni - 8 -1.1397468 cm 1.8067258 mm 7.0050246 cm 13.327336 MeV 3.169261 MeV 447.62936 um 8.7553761 mm Target hIoni - 9 -1.1205078 cm 1.878073 mm 6.9765091 cm 10.196249 MeV 3.1310863 MeV 355.99271 um 9.1113688 mm Target hIoni - 10 -1.1025557 cm 1.8875767 mm 6.9561108 cm 7.4404478 MeV 2.7558016 MeV 276.50906 um 9.3878779 mm Target hIoni - 11 -1.0906039 cm 1.8799977 mm 6.939011 cm 4.547379 MeV 2.8930688 MeV 213.69797 um 9.6015758 mm Target hIoni - 12 -1.0828287 cm 1.8955813 mm 6.927761 cm 1.4831431 MeV 3.0642359 MeV 143.15058 um 9.7447264 mm Target hIoni - 13 -1.0821849 cm 1.9043902 mm 6.9260602 cm 132.57163 keV 1.3505715 MeV 25.325847 um 9.7700523 mm Target hIoni - 14 -1.0821956 cm 1.904502 mm 6.9260685 cm 27.59318 keV 104.97845 keV 799.22027 nm 9.7708515 mm Target hIoni - 15 -1.082198 cm 1.9044903 mm 6.9260701 cm 0 eV 27.59318 keV 166.38206 nm 9.7710179 mm Target hIoni - 16 -1.082198 cm 1.9044903 mm 6.9260701 cm 0 eV 0 eV 0 fm 9.7710179 mm Target Scintillation + 0 -6.74 mm -1.52 mm 5.63 cm 68 MeV 0 eV 0 fm 0 fm Target initStep + 1 -7.5518304 mm 980.58429 um 5.5022572 cm 0 eV 7.7779449 MeV 2.9594407 mm 2.9594407 mm Target pi+Inelastic Track (trackID 4, parentID 1) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.06586(mm),-3.7483666(mm),78.753938(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.399322(mm),3.2480695(mm),78.871467(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.007579(mm),0.23828337(mm),79.116869(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.659661(mm),2.1039428(mm),78.649235(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.665451(mm),-2.3781389(mm),78.648214(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.561399(mm),-1.2979397(mm),78.490234(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.747922(mm),-2.6205231(mm),78.809999(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.753895(mm),-2.9803988(mm),78.985273(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.472679(mm),0.28280236(mm),78.858532(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.409828(mm),2.4335952(mm),78.340633(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.331387(mm),1.8248127(mm),78.354465(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.802271(mm),1.1782495(mm),78.447762(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.064291(mm),0.19383883(mm),78.754215(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.807498(mm),-0.10106173(mm),78.623168(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.053633(mm),-2.0324027(mm),78.756094(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.893211(mm),0.6919311(mm),78.431727(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.561145(mm),-2.3974793(mm),79.01926(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.827775(mm),-1.3510922(mm),78.795919(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.872245(mm),-0.46537893(mm),79.140732(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.765879(mm),-3.2588917(mm),78.454179(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.351786(mm),0.95821198(mm),78.527195(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.090417(mm),0.32073145(mm),78.925935(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.229937(mm),0.65796654(mm),79.253988(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.369935(mm),2.6748425(mm),78.347668(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.835507(mm),0.44146002(mm),78.441902(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.817063(mm),0.83613665(mm),78.621481(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.033546(mm),1.5170245(mm),79.288617(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.324438(mm),1.621489(mm),79.413652(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.87837(mm),3.0157734(mm),78.434344(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.170851(mm),-0.49984784(mm),78.382772(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.504194(mm),2.1855576(mm),79.205629(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.300486(mm),1.4083493(mm),78.712567(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.471999(mm),-3.3786115(mm),78.682325(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.570599(mm),0.70231247(mm),78.488612(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.479247(mm),2.7050272(mm),78.857374(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.685507(mm),0.22007582(mm),78.115697(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.657499(mm),3.910728(mm),78.649616(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.778874(mm),1.0017993(mm),78.804542(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.537298(mm),1.8282407(mm),79.199792(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.269066(mm),1.0831772(mm),79.247089(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.288895(mm),2.8397776(mm),79.243592(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.744456(mm),3.851386(mm),78.634284(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.380345(mm),2.8974113(mm),79.227467(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.309989(mm),-2.1848392(mm),78.534565(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.943305(mm),1.9377555(mm),78.599221(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.702267(mm),0.53002473(mm),78.81805(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.308687(mm),-2.9418527(mm),79.063775(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.436689(mm),-2.8641953(mm),78.335897(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.520382(mm),0.25879268(mm),79.202775(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.135518(mm),-3.5551105(mm),78.741656(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.131638(mm),-0.74087718(mm),78.213359(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.549084(mm),-1.7722946(mm),78.316079(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.506234(mm),0.4878844(mm),79.205269(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.110012(mm),1.825563(mm),79.275134(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.140203(mm),1.5553977(mm),78.388176(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.371884(mm),-2.5262292(mm),78.876305(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.16724(mm),-1.8009227(mm),78.736062(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.244425(mm),0.0058917026(mm),78.722453(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.623197(mm),-0.56441215(mm),79.008319(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.268447(mm),-3.8575022(mm),78.894544(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.858837(mm),2.7616112(mm),78.790442(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.936762(mm),0.86799433(mm),79.129356(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.966929(mm),1.0288238(mm),78.771382(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.392164(mm),0.11490142(mm),78.872729(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.499183(mm),0.038030987(mm),78.677532(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.009226(mm),-0.012897823(mm),79.116578(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.984955(mm),-0.78761478(mm),78.239223(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.871368(mm),1.4859541(mm),79.317213(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.248236(mm),2.9815664(mm),79.074435(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.215228(mm),1.7384761(mm),78.551274(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.214831(mm),0.8915235(mm),78.903998(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 ********************************************************************************************************* -* G4Track Information: Particle = mu+, Track ID = 10, Parent ID = 4 +* G4Track Information: Particle = pi+, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.08 cm 1.9 mm 6.93 cm 4.12 MeV 0 eV 0 fm 0 fm Target initStep - 1 -1.0824572 cm 1.7970207 mm 6.931773 cm 1.3349198 MeV 2.7848929 MeV 143.95492 um 143.95492 um Target muIoni - 2 -1.0835647 cm 1.7810113 mm 6.9315233 cm 205.36887 keV 1.1295509 MeV 25.234727 um 169.18965 um Target muIoni - 3 -1.0835319 cm 1.7808276 mm 6.9316027 cm 6.2932697 keV 199.0756 keV 1.5387558 um 170.72841 um Target muIoni - 4 -1.0835319 cm 1.7808284 mm 6.9316025 cm 0 eV 6.2932697 keV 60.580824 nm 170.78899 um Target muIoni - 5 -1.0835319 cm 1.7808284 mm 6.9316025 cm 0 eV 0 eV 0 fm 170.78899 um Target Scintillation -Track (trackID 10, parentID 4) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.215525(mm),3.4706945(mm),79.080202(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.228444(mm),0.85433251(mm),78.196289(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.614689(mm),-1.2489172(mm),79.362473(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.565095(mm),-1.9934405(mm),79.194891(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.773979(mm),-2.2553536(mm),78.629078(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.098806(mm),-0.8133588(mm),78.219148(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.815627(mm),-1.9154339(mm),78.621734(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.703353(mm),-0.38188553(mm),79.170512(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.151492(mm),-1.6888103(mm),78.562512(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.464897(mm),-0.47697295(mm),78.859904(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.106069(mm),0.15934542(mm),78.570521(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.840554(mm),-1.1371065(mm),79.14632(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.186149(mm),-1.5544065(mm),78.909055(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.147026(mm),-1.2351868(mm),78.739627(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.369(mm),-1.2932212(mm),79.05314(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.838181(mm),-3.2815593(mm),78.617757(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.630015(mm),-3.8900389(mm),78.654463(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.788738(mm),-1.8584568(mm),78.450148(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.692238(mm),-2.1482959(mm),79.172472(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.938129(mm),3.6566937(mm),78.776461(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.942858(mm),2.16765(mm),78.951954(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.961381(mm),-1.3702224(mm),78.596034(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.241049(mm),3.4814306(mm),78.723048(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.940195(mm),-2.3612835(mm),78.952423(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.214962(mm),0.74645825(mm),79.432955(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.59755(mm),-0.8227634(mm),78.131206(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.337585(mm),-0.12745831(mm),78.353372(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.486163(mm),-0.75267695(mm),78.150847(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.568303(mm),-1.4310226(mm),79.370652(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.077817(mm),1.582643(mm),78.928157(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.432026(mm),1.184657(mm),78.513046(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.968218(mm),-0.21834442(mm),79.300136(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.206067(mm),-0.4945632(mm),79.08187(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.073977(mm),0.32440739(mm),79.105161(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.262788(mm),0.72568592(mm),78.190234(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.638476(mm),0.44815437(mm),78.829298(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.824434(mm),-1.7171464(mm),78.620181(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.084367(mm),-3.5280783(mm),78.927002(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.948478(mm),0.11451226(mm),78.598309(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.372642(mm),3.0409876(mm),78.876171(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.727464(mm),-0.38995673(mm),79.166261(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.084095(mm),-2.9566532(mm),78.92705(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.146814(mm),3.6114603(mm),78.739664(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.190256(mm),1.3407155(mm),79.437312(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.571054(mm),-3.6515711(mm),79.017513(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.96138(mm),-1.805936(mm),78.419707(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.34327(mm),-2.5211718(mm),78.528697(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.408325(mm),3.326439(mm),78.517226(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.607294(mm),-3.4717922(mm),79.011123(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.137344(mm),0.13851918(mm),78.741334(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.421752(mm),1.5216518(mm),78.514858(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.300742(mm),1.9722837(mm),78.536195(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.975556(mm),-2.9779323(mm),78.593534(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.844524(mm),2.3364129(mm),78.792966(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.501991(mm),3.592251(mm),79.029691(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-12.250422(mm),-0.66733787(mm),79.074049(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.993177(mm),-3.4850428(mm),78.590427(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 + 0 -8.26 mm 915 um 4.9 cm 54.9 MeV 0 eV 0 fm 0 fm Target initStep + 1 -7.5417379 mm 639.48177 um 4.6864017 cm 47.032351 MeV 7.8183464 MeV 2.294056 mm 2.294056 mm Target hIoni + 2 -6.8279391 mm 781.86322 um 4.519997 cm 40.924575 MeV 6.1077763 MeV 1.829897 mm 4.123953 mm Target hIoni + 3 -6.2621488 mm 888.48251 um 4.3834537 cm 34.784474 MeV 6.1401014 MeV 1.4933252 mm 5.6172782 mm Target hIoni + 4 -5.7569787 mm 890.43306 um 4.2777022 cm 29.283063 MeV 5.5014109 MeV 1.1814486 mm 6.7987268 mm Target hIoni + 5 -5.2391097 mm 764.19435 um 4.2027583 cm 24.919134 MeV 4.3639291 MeV 927.51358 um 7.7262404 mm Target hIoni + 6 -4.9074567 mm 555.36282 um 4.1401588 cm 20.89547 MeV 4.0236633 MeV 745.27496 um 8.4715153 mm Target hIoni + 7 -4.6838221 mm 425.40183 um 4.0873601 cm 17.433894 MeV 3.461576 MeV 593.74931 um 9.0652646 mm Target hIoni + 8 -4.4760079 mm 336.3901 um 4.0459442 cm 14.052086 MeV 3.3818085 MeV 477.02321 um 9.5422878 mm Target hIoni + 9 -4.3661279 mm 229.87775 um 4.0121232 cm 10.684107 MeV 3.3679785 MeV 375.96557 um 9.9182534 mm Target hIoni + 10 -4.3333496 mm 192.56578 um 3.9841925 cm 7.5452031 MeV 3.1389044 MeV 288.28963 um 1.0206543 cm Target hIoni + 11 -4.3311793 mm 232.26941 um 3.963461 cm 4.539266 MeV 3.0059371 MeV 216.00681 um 1.042255 cm Target hIoni + 12 -4.3903851 mm 229.52676 um 3.9510652 cm 1.2029128 MeV 3.3363532 MeV 142.90937 um 1.0565459 cm Target hIoni + 13 -4.3881262 mm 222.83225 um 3.9498361 cm 93.271278 keV 1.1096416 MeV 18.187521 um 1.0583647 cm Target hIoni + 14 -4.3882141 mm 222.80221 um 3.9498134 cm 0 eV 93.271278 keV 528.65772 nm 1.0584175 cm Target hIoni + 15 -4.3882141 mm 222.80221 um 3.9498134 cm 0 eV 0 eV 0 fm 1.0584175 cm Target Scintillation +Track (trackID 3, parentID 1) is processed with stopping code 2 ********************************************************************************************************* -* G4Track Information: Particle = pi+, Track ID = 7, Parent ID = 1 +* G4Track Information: Particle = mu+, Track ID = 14, Parent ID = 3 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.38 cm -3.49 mm 7.19 cm 12.1 MeV 0 eV 0 fm 0 fm Target initStep - 1 -1.3811889 cm -3.1912735 mm 7.2064888 cm 8.8723096 MeV 3.2468271 MeV 324.07362 um 324.07362 um Target hIoni - 2 -1.3862743 cm -2.980235 mm 7.2169718 cm 5.910672 MeV 2.9616377 MeV 245.77713 um 569.85075 um Target hIoni - 3 -1.3882618 cm -2.8227655 mm 7.2240146 cm 2.8349755 MeV 3.0756965 MeV 178.94708 um 748.79783 um Target hIoni - 4 -1.389413 cm -2.7667474 mm 7.2246087 cm 381.71207 keV 2.4532634 MeV 72.838297 um 821.63612 um Target hIoni - 5 -1.3893811 cm -2.7657964 mm 7.2245912 cm 7.8406042 keV 373.87147 keV 3.2493288 um 824.88545 um Target hIoni - 6 -1.3893809 cm -2.7657966 mm 7.2245914 cm 0 eV 7.8406042 keV 77.496303 nm 824.96295 um Target hIoni - 7 -1.3893809 cm -2.7657966 mm 7.2245914 cm 0 eV 0 eV 0 fm 824.96295 um Target Scintillation -Track (trackID 7, parentID 1) is processed with stopping code 2 + 0 -4.39 mm 223 um 3.95 cm 4.12 MeV 0 eV 0 fm 0 fm Target initStep + 1 -4.3731553 mm 339.55399 um 3.9451403 cm 1.4016435 MeV 2.7181691 MeV 143.92583 um 143.92583 um Target muIoni + 2 -4.3747093 mm 357.70753 um 3.9461009 cm 222.51355 keV 1.17913 MeV 27.298789 um 171.22462 um Target muIoni + 3 -4.3753087 mm 358.12672 um 3.9461435 cm 0 eV 222.51355 keV 1.7162008 um 172.94082 um Target muIoni + 4 -4.3753087 mm 358.12672 um 3.9461435 cm 0 eV 0 eV 0 fm 172.94082 um Target Scintillation +Track (trackID 14, parentID 3) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.792516(mm),-1.5385634(mm),78.802136(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 ********************************************************************************************************* -* G4Track Information: Particle = mu+, Track ID = 25, Parent ID = 7 +* G4Track Information: Particle = pi+, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.39 cm -2.77 mm 7.22 cm 4.12 MeV 0 eV 0 fm 0 fm Target initStep - 1 -1.3946467 cm -2.8057554 mm 7.2136674 cm 1.2164379 MeV 2.9033747 MeV 143.95492 um 143.95492 um Target muIoni - 2 -1.3961706 cm -2.807764 mm 7.2132381 cm 220.62674 keV 995.81119 keV 21.760321 um 165.71524 um Target muIoni - 3 -1.3962391 cm -2.8083264 mm 7.2132105 cm 9.3803991 keV 211.24634 keV 1.6964757 um 167.41172 um Target muIoni - 4 -1.3962396 cm -2.8083257 mm 7.2132105 cm 0 eV 9.3803991 keV 75.822939 nm 167.48754 um Target muIoni - 5 -1.3962396 cm -2.8083257 mm 7.2132105 cm 0 eV 0 eV 0 fm 167.48754 um Target Scintillation -Track (trackID 25, parentID 7) is processed with stopping code 2 + 0 -1.05 cm -1.56 mm 6.01 cm 97.2 MeV 0 eV 0 fm 0 fm Target initStep + 1 -1.0718769 cm -3.9966902 mm 5.9852284 cm 90.833488 MeV 6.3642387 MeV 2.4661059 mm 2.4661059 mm Target Transportation + 2 -44.13069 cm 11.146336 cm -14.129563 cm 90.833514 MeV1.3630955e-16 eV 3.906885 m 3.9093511 m CaptureMgnt Decay +Track (trackID 2, parentID 1) is processed with stopping code 2 + +********************************************************************************************************* +* G4Track Information: Particle = mu+, Track ID = 22, Parent ID = 2 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -44.1 cm 11.1 cm -14.1 cm 64.5 MeV 0 eV 0 fm 0 fm CaptureMgnt initStep + 1 -32.218634 cm -5.8816156 cm -2 m 64.493911 MeV2.5253544e-16 eV 7.054928 m 7.054928 m CaptureMgnt Transportation + 2 -42.885611 cm -3.7879366 cm -2.0296885 m 64.470431 MeV 18.811843 keV 11.268642 cm 7.1676144 m World muIoni + 3 -50.330594 cm -2.3191361 cm -2.0503531 m 64.443224 MeV 14.453107 keV 7.8648237 cm 7.2462626 m World muIoni + 4 -55.150279 cm -1.3804672 cm -2.0636928 m 64.434567 MeV 7.129599 keV 5.088219 cm 7.2971448 m World muIoni + 5 -56.769224 cm -1.0660933 cm -2.0681792 m 64.431474 MeV 1.9980688 keV 1.7091205 cm 7.314236 m World muIoni + 6 -71.82641 cm 1.8622742 cm -2.109871 m 64.398327 MeV 31.717056 keV 15.895823 cm 7.4731942 m World muIoni + 7 -79.516324 cm 3.3359312 cm -2.1313447 m 64.379543 MeV 18.784016 keV 8.1189745 cm 7.554384 m World muIoni + 8 -84.973702 cm 4.3837741 cm -2.1464268 m 64.362086 MeV 8.7983857 keV 5.7580966 cm 7.6119649 m World muIoni + 9 -89.016149 cm 5.156386 cm -2.1576906 m 64.352451 MeV 8.1663843 keV 4.2669723 cm 7.6546347 m World muIoni + 10 -89.58265 cm 5.2646353 cm -2.1592747 m 64.349554 MeV 1.6679327 keV 5.9811072 mm 7.6606158 m World muIoni + 11 -98.646082 cm 6.9939363 cm -2.1846316 m 64.331139 MeV 17.359134 keV 9.5690215 cm 7.756306 m World muIoni + 12 -1.0010092 m 7.2737277 cm -2.1887055 m 64.328086 MeV 1.9417575 keV 1.5364901 cm 7.7716709 m World muIoni + 13 -1.1355374 m 9.8549104 cm -2.2263863 m 64.30098 MeV 25.305393 keV 14.207039 cm 7.9137413 m World muIoni + 14 -1.1358467 m 9.8607829 cm -2.2264727 m 64.245352 MeV 139.16919 eV 326.44434 um 7.9140677 m World muIoni + 15 -1.2030245 m 11.1427 cm -2.2451217 m 64.229725 MeV 13.041571 keV 7.0887145 cm 7.9849549 m World muIoni + 16 -1.280087 m 12.600762 cm -2.2663171 m 64.210745 MeV 17.033799 keV 8.1243277 cm 8.0661981 m World muIoni + 17 -1.4412987 m 15.654443 cm -2.3109251 m 64.179563 MeV 29.140091 keV 17.003436 cm 8.2362325 m World muIoni + 18 -1.504616 m 16.878178 cm -2.3285659 m 64.157056 MeV 15.632147 keV 6.6858403 cm 8.3030909 m World muIoni + 19 -1.5303518 m 17.375651 cm -2.3356988 m 64.152296 MeV 3.3494595 keV 2.7165397 cm 8.3302563 m World muIoni + 20 -1.5853047 m 18.431932 cm -2.3509456 m 64.140465 MeV 11.830993 keV 5.7998802 cm 8.3882551 m World muIoni + 21 -1.608832 m 18.883242 cm -2.3574524 m 64.132674 MeV 5.423996 keV 2.4824219 cm 8.4130793 m World muIoni + 22 -1.6125736 m 18.955304 cm -2.3584894 m 64.130991 MeV 686.46749 eV 3.9489209 mm 8.4170282 m World muIoni + 23 -1.6656817 m 19.978156 cm -2.3732098 m 64.119519 MeV 11.472219 keV 5.6051581 cm 8.4730798 m World muIoni + 24 -1.7849822 m 22.289969 cm -2.406408 m 64.100163 MeV 19.35523 keV 12.597316 cm 8.599053 m World muIoni + 25 -1.8741907 m 24.026036 cm -2.4311729 m 64.085132 MeV 12.887829 keV 9.41959 cm 8.6932489 m World muIoni + 26 -1.9010921 m 24.540549 cm -2.4386317 m 64.079292 MeV 4.6170322 keV 2.8386454 cm 8.7216353 m World muIoni + 27 -1.9424482 m 25.336003 cm -2.450074 m 64.068299 MeV 6.5434029 keV 4.3640877 cm 8.7652762 m World muIoni + 28 -1.9939777 m 26.328014 cm -2.4642786 m 64.055494 MeV 11.222959 keV 5.4364303 cm 8.8196405 m World muIoni + 29 -2.0418646 m 27.249245 cm -2.4775259 m 64.045317 MeV 7.9752638 keV 5.0532336 cm 8.8701729 m World muIoni + 30 -2.057235 m 27.545134 cm -2.4817629 m 64.041216 MeV 2.7119925 keV 1.6215933 cm 8.8863888 m World muIoni + 31 -2.1435147 m 29.213309 cm -2.5055376 m 64.023263 MeV 16.841718 keV 9.1036924 cm 8.9774257 m World muIoni + 32 -2.2284215 m 30.83984 cm -2.5290745 m 64.004527 MeV 17.47801 keV 8.9597476 cm 9.0670232 m World muIoni + 33 -2.2879047 m 31.975969 cm -2.5454399 m 63.994486 MeV 9.0251845 keV 6.2730873 cm 9.1297541 m World muIoni + 34 -2.3726996 m 33.59544 cm -2.5688824 m 63.91621 MeV 14.352951 keV 8.9454006 cm 9.2192081 m World muIoni + 35 -2.4198558 m 34.486803 cm -2.5819439 m 63.90829 MeV 6.2347257 keV 4.9736968 cm 9.268945 m World muIoni + 36 -2.5070971 m 36.150918 cm -2.606099 m 63.895981 MeV 10.777107 keV 9.2040513 cm 9.3609856 m World muIoni + 37 -2.5093595 m 36.194558 cm -2.6067297 m 63.893928 MeV 130.91771 eV 2.3888341 mm 9.3633744 m World muIoni + 38 -2.5929616 m 37.808288 cm -2.6300656 m 63.876866 MeV 17.062185 keV 8.8285406 cm 9.4516598 m World muIoni + 39 -2.6186986 m 38.30815 cm -2.6371885 m 63.870261 MeV 5.2491057 keV 2.716824 cm 9.478828 m World muIoni + 40 -2.6503367 m 38.925297 cm -2.6459418 m 63.858852 MeV 10.286093 keV 3.3401695 cm 9.5122297 m World muIoni + 41 -2.803671 m 41.916628 cm -2.6884509 m 63.825829 MeV 33.022885 keV 16.190535 cm 9.6741351 m World muIoni + 42 -2.8167783 m 42.165527 cm -2.6920365 m 63.821252 MeV 2.5008701 keV 1.3814961 cm 9.68795 m World muIoni + 43 -2.9573059 m 44.829162 cm -2.7303819 m 63.795287 MeV 24.728124 keV 14.808091 cm 9.836031 m World muIoni + 44 -3.0473426 m 46.534632 cm -2.7551302 m 63.769679 MeV 13.618488 keV 9.4920852 cm 9.9309518 m World muIoni + 45 -3.1178565 m 47.882044 cm -2.7743907 m 63.757619 MeV 10.769733 keV 7.4328495 cm 10.00528 m World muIoni + 46 -3.1286821 m 48.08798 cm -2.7773566 m 63.754605 MeV 1.9309517 keV 1.1411965 cm 10.016692 m World muIoni + 47 -3.1489827 m 48.473891 cm -2.7829196 m 63.748215 MeV 5.0934972 keV 2.1399838 cm 10.038092 m World muIoni + 48 -3.1959773 m 49.367089 cm -2.7957696 m 63.738566 MeV 8.2095461 keV 4.9531776 cm 10.087624 m World muIoni + 49 -3.2308131 m 50.034021 cm -2.8052556 m 63.727056 MeV 6.5333183 keV 3.6715095 cm 10.124339 m World muIoni + 50 -3.3106216 m 51.556805 cm -2.8269842 m 63.714672 MeV 10.968173 keV 8.4103678 cm 10.208443 m World muIoni + 51 -3.5480774 m 56.153092 cm -2.8916165 m 63.664015 MeV 45.854597 keV 25.035088 cm 10.458794 m World muIoni + 52 -3.6456763 m 58.037994 cm -2.9186742 m 63.634193 MeV 18.26651 keV 10.301972 cm 10.561813 m World muIoni + 53 -3.6685357 m 58.476927 cm -2.9250667 m 63.629249 MeV 3.8644319 keV 2.4138843 cm 10.585952 m World muIoni + 54 -3.6723348 m 58.549392 cm -2.9261314 m 63.626698 MeV 1.2071989 keV 4.0114358 mm 10.589964 m World muIoni + 55 -3.7279961 m 59.613769 cm -2.9417302 m 63.604719 MeV 16.890675 keV 5.8777578 cm 10.648741 m World muIoni + 56 -3.7863604 m 60.721424 cm -2.957991 m 63.587677 MeV 13.067533 keV 6.159131 cm 10.710332 m World muIoni + 57 -3.7948358 m 60.883128 cm -2.960356 m 63.584861 MeV 1.2801116 keV 8.9465674 mm 10.719279 m World muIoni + 58 -3.8889511 m 62.675616 cm -2.9866304 m 63.570052 MeV 13.412105 keV 9.9344676 cm 10.818624 m World muIoni + 59 -3.9703523 m 64.220245 cm -3.0094762 m 63.556027 MeV 14.025676 keV 8.5945785 cm 10.904569 m World muIoni + 60 -4.1544466 m 67.675583 cm -3.0615566 m 63.523113 MeV 31.547754 keV 19.441499 cm 11.098984 m World muIoni + 61 -4.163637 m 67.850631 cm -3.0641563 m 63.520434 MeV 1.2411362 keV 9.7101083 mm 11.108695 m World muIoni + 62 -4.1875784 m 68.305833 cm -3.0709075 m 63.514759 MeV 4.6230495 keV 2.5288164 cm 11.133983 m World muIoni + 63 -4.2287652 m 69.090842 cm -3.0825253 m 63.482761 MeV 8.3971276 keV 4.3508041 cm 11.177491 m World muIoni + 64 -4.2641129 m 69.762633 cm -3.0924933 m 63.464327 MeV 5.1403124 keV 3.7335724 cm 11.214826 m World muIoni + 65 -4.3013734 m 70.474753 cm -3.1029952 m 63.401635 MeV 5.9959469 keV 3.9361673 cm 11.254188 m World muIoni + 66 -4.367197 m 71.739312 cm -3.1216193 m 63.383912 MeV 16.368257 keV 6.9566649 cm 11.323755 m World muIoni + 67 -4.3958415 m 72.295255 cm -3.1297744 m 63.377066 MeV 6.8459367 keV 3.0297287 cm 11.354052 m World muIoni + 68 -4.4509827 m 73.368429 cm -3.1453887 m 63.301203 MeV 9.7069192 keV 5.8305488 cm 11.412358 m World muIoni + 69 -4.4520422 m 73.388746 cm -3.1456925 m 63.279181 MeV 124.90555 eV 1.1207952 mm 11.413478 m World muIoni + 70 -4.4759448 m 73.849554 cm -3.1525611 m 63.274328 MeV 4.8527389 keV 2.529319 cm 11.438772 m World muIoni + 71 -4.4820833 m 73.968135 cm -3.154325 m 63.270154 MeV 666.78721 eV 6.4960242 mm 11.445268 m World muIoni + 72 -4.5540106 m 75.360524 cm -3.1749888 m 63.252728 MeV 14.79107 keV 7.6121037 cm 11.521389 m World muIoni + 73 -4.5602465 m 75.481792 cm -3.1767809 m 63.227981 MeV 635.39558 eV 6.6007254 mm 11.527989 m World muIoni + 74 -4.6357971 m 76.96181 cm -3.1984821 m 63.209427 MeV 15.686272 keV 7.9986725 cm 11.607976 m World muIoni + 75 -4.6631289 m 77.492987 cm -3.2063389 m 63.203753 MeV 5.6740602 keV 2.8930483 cm 11.636907 m World muIoni + 76 -4.7635062 m 79.447473 cm -3.2352851 m 63.181841 MeV 20.534114 keV 10.62804 cm 11.743187 m World muIoni + 77 -4.7898095 m 79.9558 cm -3.2428755 m 63.177092 MeV 4.7491545 keV 2.7844503 cm 11.771031 m World muIoni + 78 -4.894482 m 81.97812 cm -3.2730297 m 63.156698 MeV 18.919655 keV 11.079084 cm 11.881822 m World muIoni + 79 -4.9069459 m 82.220168 cm -3.2766007 m 63.150534 MeV 4.9420023 keV 1.3189352 cm 11.895012 m World muIoni + 80 -4.9311529 m 82.688046 cm -3.2835334 m 63.146788 MeV 3.7465231 keV 2.5611191 cm 11.920623 m OutOfWorld Transportation +Track (trackID 22, parentID 2) is processed with stopping code 2 NULL returned from G4StackManager. Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.709312(mm),0.63291213(mm),78.464153(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.314131090395(mm),-0.13453265730461(mm),78.710161434225(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -5996,7 +5145,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.441693(mm),-3.9059924(mm),78.687669(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.382332(mm),1.5748407(mm),78.874463(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6005,7 +5154,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.406317(mm),-3.3472211(mm),78.870234(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.535008(mm),2.6700738(mm),78.847542(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6014,7 +5163,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.787002(mm),-1.2167896(mm),78.803109(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.46677(mm),1.3030832(mm),78.50692(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6023,7 +5172,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.625738(mm),2.7879152(mm),78.831544(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.549606(mm),1.714956(mm),79.021295(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6032,7 +5181,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.840384(mm),-1.1209895(mm),78.264715(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.601533(mm),2.5587983(mm),79.188466(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6041,7 +5190,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.337955(mm),1.1405557(mm),78.353307(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.097808(mm),1.0084445(mm),79.453613(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6050,7 +5199,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.18141(mm),-1.4764082(mm),78.38091(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.34013(mm),-2.7462627(mm),78.352923(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6059,7 +5208,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.768992(mm),1.9843613(mm),78.277303(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.899381(mm),-3.1372493(mm),78.95962(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6068,7 +5217,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.054055(mm),-0.10681026(mm),78.75602(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.34712(mm),-1.2836852(mm),79.409652(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6077,7 +5226,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.433851(mm),1.4671069(mm),78.689052(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.537798(mm),-3.8757553(mm),78.670723(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6086,7 +5235,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.226754(mm),0.026487159(mm),78.901895(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.421251(mm),2.0160312(mm),79.043927(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6095,7 +5244,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.111344(mm),-3.6460836(mm),78.569591(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.920435(mm),-1.1883645(mm),78.955908(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6104,7 +5253,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.489642(mm),-2.1654167(mm),78.855541(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.809276(mm),0.088341779(mm),78.975508(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6113,7 +5262,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.314858(mm),-0.65109814(mm),78.533706(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.62175(mm),-0.8250048(mm),79.008574(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6122,7 +5271,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.982283(mm),0.47148566(mm),79.121329(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.272824(mm),-1.8404058(mm),79.246426(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6131,7 +5280,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.213547(mm),-1.8520123(mm),79.080551(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.518965(mm),-1.9815176(mm),79.379352(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6140,7 +5289,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.128265(mm),1.8919615(mm),78.566608(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.628262(mm),-0.48071462(mm),78.478445(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6149,7 +5298,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.741491(mm),-3.2695821(mm),78.458479(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.047938(mm),-2.0093783(mm),78.404445(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6158,7 +5307,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.172295(mm),-0.66350397(mm),78.382517(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.589077(mm),0.018533252(mm),78.838008(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6167,7 +5316,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.506474(mm),-3.4062396(mm),79.0289(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.296512(mm),1.3408827(mm),78.713268(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6176,7 +5325,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.002356(mm),1.8742042(mm),78.588809(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.77128(mm),2.4618357(mm),79.158535(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6185,7 +5334,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.200791(mm),-3.4095872(mm),78.730146(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.59438(mm),3.598487(mm),79.0134(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6194,7 +5343,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.555833(mm),1.2193333(mm),78.491216(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.341311(mm),-1.6491923(mm),78.881696(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6203,7 +5352,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.958794(mm),-2.8377887(mm),78.949144(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.949973(mm),-2.0440747(mm),78.421718(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6212,7 +5361,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.487997(mm),0.55175579(mm),79.032158(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.290243(mm),0.68987215(mm),78.538047(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6221,7 +5370,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.19438(mm),-2.5170038(mm),78.907604(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.584446(mm),-3.3373362(mm),78.486171(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6230,7 +5379,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.011686(mm),0.36872627(mm),78.763491(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.067523(mm),3.5251941(mm),78.577318(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6239,7 +5388,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.875058(mm),-2.4354498(mm),78.611255(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.403026(mm),1.7941649(mm),78.870814(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6248,7 +5397,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.409732(mm),-2.7045898(mm),78.34065(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.362087(mm),-0.72280059(mm),78.525378(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6257,7 +5406,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.239431(mm),1.0080773(mm),79.252314(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-9.9861192(mm),0.40926812(mm),79.473307(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6266,7 +5415,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.526623(mm),-2.5342548(mm),79.201674(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.705704(mm),0.1605081(mm),78.817444(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6275,7 +5424,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.051513(mm),1.457419(mm),78.227487(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.679104(mm),-0.523755(mm),78.46948(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6284,7 +5433,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.344765(mm),-2.9349679(mm),79.233741(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.556902(mm),3.5632267(mm),78.843681(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6293,7 +5442,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.804484(mm),2.4596015(mm),78.271045(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.700739(mm),-2.1981146(mm),78.641992(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6302,7 +5451,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.245657(mm),3.3873312(mm),78.545908(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.846698(mm),-0.95728294(mm),78.616256(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6311,7 +5460,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.500769(mm),1.6952091(mm),78.500925(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.824489(mm),0.6349523(mm),79.32548(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6320,7 +5469,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.143412(mm),3.2762274(mm),78.916591(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.751703(mm),2.1814865(mm),78.280352(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6329,7 +5478,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.422945(mm),1.3170637(mm),78.690975(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.976843(mm),0.2877846(mm),78.240654(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6338,7 +5487,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.586789(mm),2.8628611(mm),79.014738(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.475433(mm),-0.3126641(mm),79.034373(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6347,7 +5496,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.80265(mm),1.0645085(mm),79.153003(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.905193(mm),-1.7623395(mm),78.605941(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6356,7 +5505,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.308705(mm),2.9175764(mm),79.063772(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.003652(mm),-1.9055578(mm),78.941234(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6365,7 +5514,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.525628(mm),-3.2822584(mm),78.496542(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.943696(mm),3.6767329(mm),78.951806(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6374,7 +5523,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.092615(mm),-2.2795878(mm),78.749221(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.750925(mm),0.14565358(mm),78.80947(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6383,7 +5532,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.818081(mm),-3.8089546(mm),78.621302(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.832876(mm),-2.7129009(mm),78.618693(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6392,7 +5541,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.747157(mm),1.2563887(mm),78.633807(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.053282(mm),-2.6934371(mm),78.756156(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6401,7 +5550,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.947116(mm),-1.4004846(mm),78.598549(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.694921(mm),-0.8248177(mm),78.995672(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6410,7 +5559,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.437952(mm),-0.34495966(mm),78.335675(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.799644(mm),1.4124886(mm),78.624552(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6419,7 +5568,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.071274(mm),-3.4580969(mm),79.105638(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.417697(mm),0.6955704(mm),78.162919(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6428,7 +5577,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.614003(mm),2.9629325(mm),79.00994(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.187977(mm),-1.5730795(mm),78.732406(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6437,7 +5586,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.963635(mm),-2.1850718(mm),78.419309(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.550171(mm),0.65988431(mm),79.021195(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6446,7 +5595,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.457809(mm),3.1376992(mm),79.037481(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.642307(mm),1.5922089(mm),79.181276(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6455,7 +5604,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.308311(mm),-3.0713781(mm),78.887515(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.758156(mm),2.6350637(mm),78.984522(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6464,7 +5613,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.655609(mm),0.24460309(mm),79.178931(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.463491(mm),0.45906252(mm),78.331171(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6473,7 +5622,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.015349(mm),-0.92674565(mm),79.115499(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.722885(mm),-1.5816478(mm),79.167068(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6482,7 +5631,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.993762(mm),2.7695118(mm),78.590324(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.775647(mm),2.514974(mm),78.805111(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6491,7 +5640,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.30213(mm),-1.3071395(mm),78.183297(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.264349(mm),0.66817634(mm),78.718939(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6500,7 +5649,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.024308(mm),0.7037642(mm),78.232284(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.859684(mm),3.8168625(mm),78.613966(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6509,7 +5658,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.691418(mm),-1.3974073(mm),78.290982(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.965018(mm),-0.7818795(mm),78.595393(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6518,7 +5667,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.330415(mm),-3.9540005(mm),78.70729(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.297578(mm),-2.2641489(mm),78.889407(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6527,7 +5676,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.759746(mm),-0.81459567(mm),79.160568(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.5406(mm),-1.4734586(mm),78.670229(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6536,7 +5685,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.885814(mm),-1.8287374(mm),78.785685(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.660016(mm),0.55422493(mm),79.35448(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6545,7 +5694,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.326514(mm),1.0645753(mm),78.707978(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.096463(mm),-0.93733467(mm),78.219561(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6554,7 +5703,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.566135(mm),-1.0654679(mm),79.371034(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.072797(mm),-1.6876458(mm),78.223734(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6563,7 +5712,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.719835(mm),0.98522209(mm),79.343933(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.744868(mm),1.576362(mm),78.634211(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6572,7 +5721,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.34476(mm),-0.33444052(mm),78.17578(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.761906(mm),-1.447257(mm),78.631207(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6581,7 +5730,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.575087(mm),3.6808695(mm),78.840475(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.62116(mm),-1.9813701(mm),79.008678(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6590,7 +5739,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.726135(mm),-3.5245893(mm),78.990168(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.438618(mm),-1.0840651(mm),79.393519(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6599,7 +5748,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.868498(mm),-1.9143482(mm),78.612412(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.748531(mm),-1.061693(mm),78.280911(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6608,7 +5757,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.272106(mm),3.143961(mm),79.070226(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.959027(mm),0.25368826(mm),78.772776(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6617,7 +5766,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.00118(mm),2.1050387(mm),78.765343(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.17619(mm),1.1263593(mm),78.910811(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6626,7 +5775,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.180792(mm),-1.207902(mm),78.557346(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.573601(mm),2.9165316(mm),78.311756(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6635,7 +5784,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.441265(mm),1.3255499(mm),78.687744(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.613066(mm),-1.3481943(mm),78.657451(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6644,7 +5793,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.075238(mm),2.1293579(mm),78.399631(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.794288(mm),-3.116087(mm),78.978151(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6653,7 +5802,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.408008(mm),1.0681757(mm),79.222589(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.011563(mm),3.0011225(mm),78.587185(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6662,7 +5811,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.703913(mm),2.8087211(mm),78.641432(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.955836(mm),1.4492651(mm),78.420685(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6671,7 +5820,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.448788(mm),2.2705978(mm),78.333764(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.822018(mm),-1.0000311(mm),78.44428(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6680,7 +5829,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.495063(mm),-0.17010932(mm),78.149277(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.171669(mm),1.9030915(mm),79.087935(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6689,7 +5838,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.228434(mm),3.2408173(mm),79.077926(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.535398(mm),-1.9019255(mm),78.318492(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6698,7 +5847,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.394702(mm),0.22949558(mm),78.695955(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.370076(mm),2.9939944(mm),78.52397(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6707,7 +5856,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.693191(mm),3.7927216(mm),78.995977(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.972415(mm),0.91113791(mm),78.770415(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6716,7 +5865,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.307764(mm),1.3803593(mm),79.063938(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.919025(mm),-0.49201844(mm),78.250848(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6725,7 +5874,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.82275(mm),-2.4105787(mm),78.267824(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.359431(mm),2.7628057(mm),78.34952(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6734,7 +5883,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.464647(mm),-1.3904738(mm),78.683621(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.342165(mm),1.0840907(mm),79.234199(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6743,7 +5892,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.385769(mm),-0.9832047(mm),78.168549(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.342593(mm),-2.2070767(mm),79.057797(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6752,7 +5901,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.850305(mm),3.3680964(mm),78.439293(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.09358(mm),-1.0810134(mm),79.101705(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6761,7 +5910,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.611699(mm),0.86275845(mm),79.010346(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.837866(mm),-3.3579032(mm),78.617813(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6770,7 +5919,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.743611(mm),3.6365206(mm),78.987087(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.117962(mm),-0.62169787(mm),79.097405(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6779,7 +5928,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.737462(mm),1.7621985(mm),78.988171(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.244313(mm),-2.9574149(mm),78.546145(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6788,7 +5937,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.83273(mm),-2.5093842(mm),79.147699(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.649845(mm),2.2371002(mm),78.298312(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6797,7 +5946,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.607327(mm),-2.4726147(mm),78.83479(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.242515(mm),-1.516944(mm),79.25177(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6806,7 +5955,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.091326(mm),-2.4091721(mm),78.749448(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.199425(mm),-1.726743(mm),78.377733(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6815,7 +5964,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.155679(mm),0.65432289(mm),79.090755(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.893963(mm),1.1112246(mm),79.136902(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6824,7 +5973,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.930398(mm),0.27891804(mm),78.954151(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.744411(mm),-0.33666473(mm),78.105311(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6833,7 +5982,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.577242(mm),1.3704725(mm),78.840095(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.509064(mm),2.5880277(mm),78.499463(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6842,7 +5991,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.899899(mm),1.1712598(mm),79.135856(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.322003(mm),-1.433716(mm),79.237754(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6851,7 +6000,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.328514(mm),0.48933985(mm),79.412933(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.909008(mm),3.9154392(mm),78.781596(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6860,7 +6009,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.232861(mm),-0.95505346(mm),78.724492(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.832861(mm),0.029340424(mm),78.971349(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6869,7 +6018,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.02558(mm),-1.7356283(mm),78.937368(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.17134(mm),-0.21706043(mm),78.911666(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6878,7 +6027,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.154097(mm),-1.6201338(mm),78.914707(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.053268(mm),-2.6708006(mm),79.108813(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6887,7 +6036,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.981822(mm),-0.80179424(mm),78.59243(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.396492(mm),-1.4796221(mm),78.519312(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6896,7 +6045,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.205195(mm),2.5772521(mm),78.905697(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.051844(mm),0.7181524(mm),78.227429(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6905,7 +6054,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.467465(mm),1.7868458(mm),79.035778(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.826811(mm),-3.3479221(mm),78.796089(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6914,7 +6063,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.59662(mm),3.1910418(mm),79.013005(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.038942(mm),3.741546(mm),78.582358(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6923,7 +6072,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.64505(mm),0.20423039(mm),78.122831(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.108336(mm),-0.39452335(mm),78.217468(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6932,7 +6081,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.266144(mm),-2.5792351(mm),78.718623(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.135956(mm),2.4224311(mm),78.917905(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6941,7 +6090,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.807657(mm),-0.069832371(mm),78.446813(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.932389(mm),-2.8420041(mm),79.130127(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6950,7 +6099,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.652699(mm),1.9794038(mm),78.297809(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.881355(mm),-0.16383564(mm),78.257491(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6959,7 +6108,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.534191(mm),2.1388401(mm),78.671359(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.270915(mm),-0.70348232(mm),79.42309(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6968,7 +6117,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.333458(mm),-0.50140623(mm),78.883081(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.045442(mm),3.0552899(mm),78.404885(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6977,7 +6126,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.188338(mm),1.6328293(mm),79.261323(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.28407(mm),0.58934747(mm),78.362808(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6986,7 +6135,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.184077(mm),1.9339529(mm),79.262074(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.590004(mm),-0.69008895(mm),79.366825(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -6995,7 +6144,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.110904(mm),-2.4918489(mm),78.922323(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.866766(mm),2.0063808(mm),78.789044(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7004,7 +6153,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.797221(mm),-1.916691(mm),78.272326(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.97463(mm),-2.0219061(mm),78.593698(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7013,7 +6162,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.787284(mm),-2.0829722(mm),78.626732(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.672906(mm),1.4072656(mm),78.823227(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7022,7 +6171,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.443168(mm),1.5145109(mm),78.863736(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.453042(mm),-0.62495652(mm),78.685668(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7031,7 +6180,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.272829(mm),-0.92714231(mm),78.717444(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.439953(mm),-3.7882207(mm),78.864303(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7040,7 +6189,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.550175(mm),-1.9609932(mm),78.844868(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.384435(mm),3.3242665(mm),78.521438(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7049,7 +6198,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.487355(mm),-2.2659073(mm),79.208598(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.604298(mm),-2.3636408(mm),78.658997(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7058,7 +6207,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.847494(mm),-1.0681628(mm),78.439788(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.486817(mm),-2.8360261(mm),78.327058(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7067,7 +6216,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.417573(mm),2.9227731(mm),79.220903(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.22883(mm),0.68493482(mm),78.725202(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7076,7 +6225,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.652817(mm),-1.335508(mm),79.35575(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.406948(mm),1.2245966(mm),78.693795(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7085,7 +6234,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.092681(mm),-0.99530742(mm),78.220228(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.131995(mm),-0.78851076(mm),79.271258(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7094,7 +6243,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.673373(mm),1.2458715(mm),78.47049(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.210173(mm),2.2879325(mm),78.552165(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7103,7 +6252,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.736711(mm),-0.094489013(mm),78.106668(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.653261(mm),-2.5058122(mm),79.179345(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7112,7 +6261,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.109794(mm),0.26052078(mm),79.451499(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.863804(mm),2.5758085(mm),78.260585(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7121,7 +6270,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.841538(mm),1.744188(mm),79.146146(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.093243(mm),3.7760338(mm),78.572783(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7130,7 +6279,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.818841(mm),1.9684827(mm),78.621167(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.623501(mm),-2.1865499(mm),79.184592(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7139,7 +6288,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.312567(mm),2.8640656(mm),79.063091(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.356812(mm),3.2734294(mm),78.878963(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7148,7 +6297,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.146153(mm),3.1975971(mm),78.563453(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.971348(mm),-1.4628496(mm),78.94693(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7157,7 +6306,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.582254(mm),-0.89453162(mm),79.015538(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.512905(mm),-3.7992002(mm),78.851439(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7166,7 +6315,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.075635(mm),-3.7214097(mm),78.752215(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.234104(mm),-1.4446091(mm),78.371618(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7175,7 +6324,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.199093(mm),3.4939888(mm),78.730446(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.237073(mm),1.7265503(mm),79.25273(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7184,7 +6333,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.554943(mm),-0.42164749(mm),79.196681(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.154366(mm),-2.7304723(mm),79.090986(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7193,7 +6342,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.731739(mm),-2.2173504(mm),78.460199(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.731778(mm),0.48084317(mm),78.989173(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7202,7 +6351,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.214822(mm),-2.0954547(mm),78.903999(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.433539(mm),1.9880342(mm),78.336453(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7211,7 +6360,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.27829(mm),-2.2782707(mm),78.363827(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.412795(mm),1.1663043(mm),78.869091(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7220,7 +6369,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.367733(mm),-2.1442765(mm),79.229691(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.673687(mm),-0.96436544(mm),78.117781(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7229,7 +6378,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.910693(mm),-3.3520699(mm),78.781298(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.762819(mm),-2.9134981(mm),78.807373(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7238,7 +6387,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.132543(mm),-0.23855887(mm),78.213199(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.124813(mm),-3.5675921(mm),78.91987(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7247,7 +6396,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.595188(mm),3.0383546(mm),78.836931(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.52746(mm),3.5439451(mm),78.672546(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7256,7 +6405,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.353814(mm),-0.66487405(mm),78.35051(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.273859(mm),-2.3234723(mm),78.540936(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7265,7 +6414,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.2957(mm),-1.2182202(mm),79.242392(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.499166(mm),3.8982857(mm),78.677535(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7274,7 +6423,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.061931(mm),2.245353(mm),78.930958(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.421242(mm),-2.9021007(mm),79.043929(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7283,7 +6432,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.416106(mm),-1.5553963(mm),79.397488(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.533206(mm),-3.3955587(mm),78.495206(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7292,7 +6441,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.523256(mm),-2.353964(mm),78.320633(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.917798(mm),-1.0713809(mm),79.1327(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7301,7 +6450,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.467924(mm),0.6187815(mm),78.33039(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.462696(mm),-2.4356139(mm),78.507638(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7310,7 +6459,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.212307(mm),-1.3069283(mm),79.08077(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.320048(mm),-1.6734259(mm),79.061772(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7319,7 +6468,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.197039(mm),-0.91353575(mm),78.201827(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.649066(mm),-0.22915956(mm),78.122122(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7328,7 +6477,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.294882(mm),0.22076178(mm),78.537229(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.366754(mm),3.9553398(mm),78.700883(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7337,7 +6486,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.14862(mm),-2.0500139(mm),78.210364(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.631056(mm),-1.0868579(mm),78.654279(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7346,7 +6495,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.228284(mm),-0.63715694(mm),78.725299(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.05996(mm),3.9546351(mm),78.754979(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7355,7 +6504,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.728882(mm),0.44752365(mm),79.342338(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.767519(mm),0.84033552(mm),78.630217(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7364,7 +6513,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.219275(mm),3.4996708(mm),79.079541(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.820095(mm),-0.96955465(mm),78.797273(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7373,7 +6522,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.77267(mm),1.6829197(mm),79.334617(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.243937(mm),-1.7414964(mm),78.369885(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7382,7 +6531,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.572(mm),1.0838087(mm),78.135711(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.073854(mm),0.12882028(mm),79.105183(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7391,7 +6540,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.921865(mm),-0.16943045(mm),78.955655(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.79955(mm),1.4637913(mm),79.15355(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7400,7 +6549,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.501165(mm),-0.436651(mm),78.677182(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.501233(mm),-1.7555163(mm),79.029824(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7409,7 +6558,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.807637(mm),-2.764955(mm),78.975797(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.106024(mm),-1.8158088(mm),78.394202(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7418,7 +6567,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.41426(mm),3.0993307(mm),78.516179(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.953279(mm),-1.7130555(mm),78.244808(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7427,7 +6576,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.588015(mm),0.47943438(mm),79.367176(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.587165(mm),-1.8767038(mm),78.838345(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7436,7 +6585,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.841625(mm),-3.0986825(mm),78.969804(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.59549(mm),2.713254(mm),79.013204(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7445,7 +6594,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.59375(mm),-1.8988197(mm),79.366165(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.564248(mm),-1.2720321(mm),78.489732(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7454,7 +6603,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.669491(mm),-0.44476425(mm),78.823829(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.642451(mm),-1.4111562(mm),78.828597(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7463,7 +6612,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.475402(mm),1.6861619(mm),78.329071(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.087141(mm),-0.65685404(mm),79.455494(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7472,7 +6621,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.49698(mm),-2.1629066(mm),78.325266(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.551093(mm),-0.55958918(mm),78.668379(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7481,7 +6630,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.089625(mm),0.95606476(mm),79.278729(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.988545(mm),-2.0583309(mm),78.591244(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7490,7 +6639,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.069254(mm),-0.14786746(mm),78.400686(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.491081(mm),1.4824202(mm),78.14998(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7499,7 +6648,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.090511(mm),2.3159237(mm),78.925919(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.231324(mm),-0.83460396(mm),78.195782(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7508,7 +6657,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.940455(mm),0.69856157(mm),79.305032(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.883558(mm),-0.97847412(mm),79.315064(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7517,7 +6666,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.155228(mm),-0.35095892(mm),78.73818(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.193352(mm),1.8916744(mm),78.731458(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7526,7 +6675,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.766011(mm),-3.3791402(mm),78.983137(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.252008(mm),-1.9425879(mm),78.368462(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7535,7 +6684,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.024655(mm),1.0286461(mm),78.584877(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.755282(mm),-3.3480701(mm),78.808702(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7544,7 +6693,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.178287(mm),2.1039731(mm),78.734114(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.210243(mm),-1.6997887(mm),78.375826(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7553,7 +6702,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.228651(mm),1.4287196(mm),78.725234(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.271534(mm),-0.32921761(mm),79.246653(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7562,7 +6711,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.112883(mm),-0.39652766(mm),78.216666(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.140928(mm),-0.97233837(mm),78.388048(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7571,7 +6720,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.182846(mm),-0.32669554(mm),79.438618(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.526114(mm),2.8511548(mm),79.201764(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7580,7 +6729,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.119226(mm),-2.0786691(mm),78.744529(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.583723(mm),0.09667269(mm),78.838952(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7589,7 +6738,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.357394(mm),-1.5027695(mm),78.526206(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.562989(mm),-1.524337(mm),78.313627(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7598,7 +6747,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.286348(mm),1.3292865(mm),78.186079(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.57052(mm),0.44379602(mm),79.370261(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7607,7 +6756,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.017282(mm),0.76960484(mm),79.115158(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.048232(mm),-2.1678424(mm),79.286028(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7616,7 +6765,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.077782(mm),1.5674149(mm),79.10449(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.802191(mm),-2.0979664(mm),78.447776(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7625,7 +6774,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.529722(mm),2.7083542(mm),78.848474(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.243766(mm),-0.1511274(mm),78.193588(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7634,7 +6783,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.978161(mm),0.66647582(mm),78.945729(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.329207(mm),1.8036923(mm),78.354849(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7643,7 +6792,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.487924(mm),0.30625723(mm),78.50319(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.763759(mm),-2.7884587(mm),78.983534(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7652,7 +6801,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.516642(mm),1.9750148(mm),79.203434(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.746818(mm),1.3523366(mm),79.162848(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7661,7 +6810,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.50664(mm),-3.6970965(mm),79.028871(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.686331(mm),1.0409812(mm),78.644533(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7670,7 +6819,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.853252(mm),-3.6613289(mm),78.791427(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.314315(mm),-2.3448334(mm),78.357475(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7679,7 +6828,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.551577(mm),-0.17156585(mm),78.668293(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.443296(mm),-0.50182677(mm),79.216367(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7688,7 +6837,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.68091(mm),0.32102041(mm),79.350796(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.304949(mm),-0.70917868(mm),79.240761(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7697,7 +6846,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.793243(mm),-1.1529065(mm),79.154662(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.33875(mm),-2.5209828(mm),79.058474(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7706,7 +6855,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.921062(mm),-1.7458399(mm),79.132124(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.138558(mm),2.2509262(mm),78.74112(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7715,7 +6864,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.637084(mm),-1.5264357(mm),78.653216(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.79099(mm),-0.059976193(mm),78.273424(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7724,7 +6873,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.312917(mm),1.2940135(mm),78.534049(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.869923(mm),-1.0475896(mm),78.788487(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7733,7 +6882,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.653168(mm),-0.86600223(mm),79.179361(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.347398(mm),-2.4247897(mm),78.880622(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7742,7 +6891,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.485496(mm),1.5622416(mm),78.150964(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.73522(mm),0.30752907(mm),78.988566(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7751,7 +6900,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.61691(mm),2.1349285(mm),78.656773(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.260765(mm),0.99621766(mm),78.719571(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7760,7 +6909,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.26948(mm),-1.1069697(mm),78.718035(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.286128(mm),1.8297277(mm),78.186118(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7769,7 +6918,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.083637(mm),3.0965403(mm),78.574477(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.788589(mm),1.2281294(mm),78.450175(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7778,7 +6927,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.848438(mm),3.1735293(mm),78.792276(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.688914(mm),3.6773581(mm),78.644077(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7787,7 +6936,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.56057(mm),3.2373137(mm),79.019361(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.443153(mm),0.24539601(mm),78.687411(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7796,7 +6945,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.584759(mm),2.9039338(mm),78.309789(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.847734(mm),-1.283463(mm),79.145054(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7805,7 +6954,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.64265(mm),0.93765616(mm),78.828562(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.73519(mm),0.49005956(mm),79.164898(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7814,7 +6963,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.790622(mm),0.10386189(mm),78.273489(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.739411(mm),1.7208999(mm),79.164154(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7823,7 +6972,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.380541(mm),-0.77161743(mm),78.522125(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.683843(mm),1.6127694(mm),78.821298(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7832,7 +6981,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.323558(mm),2.7895082(mm),79.23748(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.299872(mm),1.5375306(mm),79.241657(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7841,7 +6990,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.424184(mm),-2.3356901(mm),78.338102(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.101735(mm),-0.00089343049(mm),78.218632(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7850,7 +6999,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.600823(mm),-3.4498051(mm),79.012264(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.522011(mm),-3.447531(mm),78.849834(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7859,7 +7008,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.267598(mm),-1.4692751(mm),79.07102(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.638264(mm),-0.12673162(mm),78.124027(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7868,7 +7017,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.7622(mm),-1.1242659(mm),78.807482(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.59277(mm),0.69157577(mm),79.190011(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7877,7 +7026,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.396782(mm),1.2321318(mm),78.519261(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.312079(mm),2.5963703(mm),78.357869(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7886,7 +7035,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.36617(mm),-3.6396744(mm),79.05364(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.317277(mm),-0.72484375(mm),78.180626(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7895,7 +7044,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.805071(mm),-1.2815903(mm),78.270941(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.134682(mm),1.5068181(mm),79.094457(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7904,7 +7053,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.924484(mm),-0.52391179(mm),78.955194(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.304527(mm),-3.2782963(mm),79.064509(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7913,7 +7062,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.800346(mm),-2.4119695(mm),79.15341(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.075637(mm),2.7786004(mm),79.104868(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7922,7 +7071,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.293101(mm),0.52328561(mm),79.419178(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.890649(mm),-1.297384(mm),79.313814(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7931,7 +7080,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.740133(mm),1.6781296(mm),78.458719(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.242138(mm),-0.13261947(mm),78.546529(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7940,7 +7089,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.376645(mm),-2.6305493(mm),79.22812(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.181577(mm),2.6315787(mm),78.38088(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7949,7 +7098,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.375256(mm),-1.9735712(mm),78.523056(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.376943(mm),2.2199804(mm),78.522759(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7958,7 +7107,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.113513(mm),-0.59594643(mm),78.392882(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.377672(mm),-2.3766569(mm),78.346304(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7967,7 +7116,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.652832(mm),2.0310593(mm),78.650439(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.743282(mm),-1.1678404(mm),79.163472(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7976,7 +7125,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.267021(mm),2.6928795(mm),78.718468(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.864728(mm),1.3579714(mm),78.789403(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7985,7 +7134,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.712527(mm),-2.3231478(mm),79.345221(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.431652(mm),0.35820737(mm),78.689439(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -7994,7 +7143,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.010044(mm),-2.4388088(mm),79.116434(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.069359(mm),-0.58022941(mm),78.753321(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8003,7 +7152,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.292936(mm),0.46877417(mm),78.890226(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.951932(mm),-1.3662595(mm),78.421373(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8012,7 +7161,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.960787(mm),2.1049425(mm),78.419812(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.953678(mm),-1.3004638(mm),78.244738(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8021,7 +7170,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.40743(mm),-0.44895649(mm),78.870037(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.475732(mm),0.60382012(mm),78.50534(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8030,7 +7179,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.566692(mm),-1.5095634(mm),78.312974(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.323009(mm),0.5021523(mm),78.884923(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8039,7 +7188,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.069453(mm),-1.5149112(mm),79.105959(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.803367(mm),-0.98659878(mm),79.152877(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8048,7 +7197,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.669811(mm),-1.214061(mm),79.176426(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.798187(mm),-1.1262646(mm),78.624809(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8057,7 +7206,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.127324(mm),-0.58334813(mm),78.390447(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.398528(mm),0.76924657(mm),79.224261(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8066,7 +7215,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.41764(mm),-1.2073058(mm),79.044564(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.908349(mm),3.2300972(mm),78.605385(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8075,7 +7224,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.228024(mm),-1.0079549(mm),78.37269(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.155111(mm),-2.6686471(mm),78.914528(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8084,7 +7233,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.249541(mm),0.34512719(mm),78.72155(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.170579(mm),0.60712447(mm),78.735474(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8093,7 +7242,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.894232(mm),2.6293292(mm),78.431547(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.451474(mm),0.020859928(mm),79.214925(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8102,7 +7251,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.614696(mm),-1.3088072(mm),79.186145(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.485352(mm),1.0913211(mm),78.15099(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8111,7 +7260,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.355628(mm),0.85975763(mm),79.055498(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.742255(mm),1.1206333(mm),79.163653(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8120,7 +7269,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.786246(mm),-3.4544662(mm),78.450588(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.319973(mm),-1.6991935(mm),78.356477(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8129,7 +7278,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.673258(mm),1.0841166(mm),78.646838(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.064385(mm),3.1193235(mm),78.754198(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8138,7 +7287,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.99255(mm),3.0322658(mm),79.119519(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.92555(mm),-3.7867926(mm),78.778679(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8147,7 +7296,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.992056(mm),3.379989(mm),78.414298(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.181393(mm),-1.1529288(mm),79.086221(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8156,7 +7305,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.752586(mm),-0.54613357(mm),78.456523(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.98696(mm),2.7408068(mm),78.76785(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8165,7 +7314,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.243232(mm),-0.72460951(mm),78.89899(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.262229(mm),-1.4385824(mm),79.248294(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8174,7 +7323,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.93611(mm),2.38735(mm),78.60049(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.739381(mm),3.3242861(mm),78.811505(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8183,7 +7332,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.210858(mm),-1.3747303(mm),78.19939(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.208577(mm),1.3591507(mm),78.728773(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8192,7 +7341,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.511897(mm),0.20096249(mm),79.204271(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.763877(mm),-2.381463(mm),78.807186(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8201,7 +7350,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.151534(mm),-1.2202961(mm),78.209851(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.463065(mm),0.78252353(mm),79.036554(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8210,7 +7359,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.479925(mm),-0.46201454(mm),78.680927(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.474257(mm),-2.4910869(mm),79.210908(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8219,7 +7368,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.24988(mm),1.0932603(mm),78.545164(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.521447(mm),1.348393(mm),78.673606(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8228,7 +7377,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.019979(mm),-0.82517855(mm),78.233048(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.624861(mm),-3.5532976(mm),78.831698(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8237,7 +7386,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.026684(mm),2.063027(mm),78.408192(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.629965(mm),3.3051847(mm),78.478144(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8246,7 +7395,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.129704(mm),-1.0917678(mm),79.271662(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.146659(mm),0.16874827(mm),78.916018(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8255,7 +7404,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.204268(mm),-1.3513318(mm),78.729533(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.13931(mm),2.7160365(mm),78.917314(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8264,7 +7413,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.133763(mm),0.81601285(mm),79.270946(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.070718(mm),-0.59766801(mm),78.400428(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8273,7 +7422,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-17.803042(mm),-0.41928491(mm),78.094972(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.718026(mm),1.915349(mm),79.344252(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8282,7 +7431,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.712949(mm),-2.5542059(mm),78.816166(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.440832(mm),2.7576044(mm),78.335167(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8291,7 +7440,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.256496(mm),3.0722595(mm),79.072978(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.847767(mm),0.44896209(mm),78.968721(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8300,7 +7449,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.103399(mm),-2.5739863(mm),78.570992(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.735427(mm),1.5944858(mm),78.635876(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8309,7 +7458,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.76193(mm),1.022512(mm),78.631202(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.19041(mm),-1.2703275(mm),78.731977(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8318,7 +7467,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.443228(mm),1.5186978(mm),79.216379(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.780716(mm),-1.8968592(mm),78.451563(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8327,7 +7476,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.931511(mm),-1.6927679(mm),78.248647(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.958723(mm),-0.51745836(mm),78.243849(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8336,7 +7485,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.561366(mm),-0.9761181(mm),79.019221(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.440826(mm),0.56135738(mm),78.511495(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8345,7 +7494,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.572922(mm),-3.4421108(mm),78.840857(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.220202(mm),0.90830064(mm),78.903051(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8354,7 +7503,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.270584(mm),1.1859334(mm),78.541513(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.003563(mm),1.6676248(mm),78.412269(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8363,7 +7512,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.505516(mm),1.973268(mm),79.381723(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.795151(mm),-3.47977(mm),78.449018(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8372,7 +7521,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.401269(mm),-1.1576314(mm),79.047451(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.1757(mm),-0.82366443(mm),78.558244(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8381,7 +7530,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.306403(mm),-0.9193554(mm),79.416832(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.882484(mm),0.33125654(mm),78.786273(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8390,7 +7539,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.084944(mm),1.5193912(mm),78.397919(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.526712(mm),3.3154699(mm),78.849005(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8399,7 +7548,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.646468(mm),1.4056942(mm),79.180542(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.388361(mm),-3.0474762(mm),79.049727(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8408,7 +7557,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.157384(mm),1.7903776(mm),78.385146(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.352775(mm),2.1386036(mm),78.527021(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8417,7 +7566,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.472186(mm),-1.5248896(mm),78.505965(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.619295(mm),0.96967958(mm),78.656353(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8426,7 +7575,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.990374(mm),1.4932354(mm),78.590922(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.902487(mm),-0.05743494(mm),78.253764(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8435,7 +7584,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.624004(mm),0.70667936(mm),78.302868(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.438317(mm),-1.4977719(mm),78.511937(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8444,7 +7593,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.391309(mm),2.8393529(mm),78.520226(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.658791(mm),0.83914373(mm),78.120408(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8453,7 +7602,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.507018(mm),2.1410734(mm),79.028804(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.018309(mm),2.6563632(mm),79.114977(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8462,7 +7611,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.926198(mm),3.555336(mm),78.778565(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.0555(mm),1.0828933(mm),78.755765(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8471,7 +7620,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.996513(mm),-0.10353392(mm),78.589839(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.373434(mm),-1.6907399(mm),79.052359(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8480,7 +7629,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.033073(mm),-0.23722378(mm),79.112373(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.026401(mm),0.0080432124(mm),79.466204(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8489,7 +7638,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.798478(mm),-1.0835361(mm),79.330066(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.886939(mm),-2.9603217(mm),78.785487(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8498,7 +7647,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.30726(mm),3.5380059(mm),79.064027(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.40411(mm),2.6930169(mm),78.341642(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8507,7 +7656,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.422449(mm),3.4607123(mm),78.867389(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.493025(mm),0.02726229(mm),78.854945(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8516,16 +7665,26 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.333605(mm),-1.7950538(mm),78.883055(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.196947(mm),1.4092663(mm),78.37817(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 + +********************************************************************************************************* +* G4Track Information: Particle = pi+, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -1.11 cm 1.32 mm 5.05 cm 68.8 MeV 0 eV 0 fm 0 fm Target initStep + 1 -1.0654458 cm 1.0169984 mm 4.735204 cm 57.76278 MeV 11.009099 MeV 3.1971428 mm 3.1971428 mm Target hIoni + 2 -1.0589747 cm 974.42867 um 4.6827639 cm 0 eV 2.0947148 MeV 530.80702 um 3.7279498 mm Target pi+Inelastic +Track (trackID 2, parentID 1) is processed with stopping code 2 NULL returned from G4StackManager. Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.458537(mm),-2.5157598(mm),79.21368(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.642136(mm),1.3212123(mm),79.357633(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8534,7 +7693,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.054039(mm),0.58768304(mm),79.108677(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.191217(mm),2.8243236(mm),79.084488(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8543,7 +7702,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.988881(mm),0.25483655(mm),79.296493(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.952131(mm),1.4625029(mm),78.773992(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8552,7 +7711,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.313265(mm),-0.89091429(mm),79.062968(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.655028(mm),3.1707372(mm),79.179033(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8561,7 +7720,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.001368(mm),-1.2974021(mm),78.412656(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.664591(mm),3.1247223(mm),78.824693(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8570,7 +7729,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.442217(mm),0.28766593(mm),79.04023(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.257558(mm),-1.9986145(mm),78.367483(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8579,7 +7738,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.147325(mm),-2.0882593(mm),78.563247(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.241457(mm),0.15592894(mm),78.546649(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8588,7 +7747,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.104195(mm),-2.4802142(mm),79.27616(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-17.64246(mm),1.1975098(mm),78.123287(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8597,7 +7756,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-10.602272(mm),-0.52512354(mm),79.364662(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.274764(mm),2.8518135(mm),78.364449(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8606,7 +7765,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.725081(mm),-0.9228174(mm),79.166681(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.545674(mm),1.1277055(mm),78.669334(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8615,7 +7774,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.365814(mm),3.6194344(mm),79.053702(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.469978(mm),-2.2645513(mm),78.330028(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8624,7 +7783,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.965577(mm),2.2706108(mm),78.24264(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.172537(mm),2.0011(mm),79.087782(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8633,7 +7792,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.500178(mm),2.2846341(mm),78.853683(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.914248(mm),1.467347(mm),78.780672(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8642,7 +7801,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.65166(mm),0.64748652(mm),79.0033(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.393631(mm),0.38087864(mm),78.696144(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8651,7 +7810,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.244436(mm),-0.46201278(mm),78.369797(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.619892(mm),-0.090233712(mm),78.832574(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8660,7 +7819,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.284539(mm),-2.6077919(mm),78.362725(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.855876(mm),-0.077202574(mm),78.43831(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -8669,7 +7828,1087 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.996034(mm),2.1228418(mm),78.413597(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.68031(mm),-3.6256683(mm),78.645594(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.064266(mm),-1.5372256(mm),78.930546(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.093533(mm),2.0633668(mm),79.27804(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.024147(mm),-0.96481361(mm),79.113947(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.394287(mm),-2.2097191(mm),78.519701(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.679689(mm),1.2941285(mm),79.351012(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.50987(mm),0.4162598(mm),78.146666(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.440229(mm),2.658192(mm),78.864254(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.592087(mm),-0.95813757(mm),78.132169(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.434554(mm),0.8595894(mm),79.041582(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.274024(mm),1.7471807(mm),78.36458(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.808442(mm),1.3298922(mm),79.151982(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.033853(mm),-2.5382766(mm),78.583255(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.19012(mm),-1.6836135(mm),78.379374(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.647133(mm),-2.2247646(mm),79.180425(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.394638(mm),-2.7124545(mm),78.343312(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.463734(mm),-1.6632914(mm),78.683782(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.646749(mm),-0.084415706(mm),79.35682(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.569927(mm),-0.02183283(mm),79.370366(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.34612(mm),-1.4624381(mm),79.057175(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.337553(mm),1.8461132(mm),78.882358(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.887935(mm),-2.4900816(mm),78.785311(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.555276(mm),-3.3947805(mm),78.491314(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.519833(mm),-1.3411533(mm),78.673891(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.169753(mm),0.037505702(mm),79.440927(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.064976(mm),1.5319838(mm),78.577767(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.03499(mm),0.69285348(mm),78.230401(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.687652(mm),-2.5555547(mm),78.467973(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.625634(mm),1.7891238(mm),78.478908(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.948895(mm),0.68961428(mm),78.245582(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.030964(mm),2.1108523(mm),78.760091(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.613945(mm),1.45417(mm),78.480969(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.455331(mm),1.3329885(mm),79.390572(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.88676(mm),-3.1647198(mm),78.432865(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.921833(mm),3.5305156(mm),78.603007(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.459731(mm),-2.5975124(mm),78.684488(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.425486(mm),-3.2261041(mm),79.04318(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.240661(mm),1.031918(mm),78.194135(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.423272(mm),-0.1611825(mm),79.396225(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.641165(mm),-1.3968566(mm),78.47617(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.440068(mm),-0.59637035(mm),78.158974(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.048113(mm),-0.81696346(mm),79.462376(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.039221(mm),-1.0925523(mm),78.934962(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.217858(mm),3.57007(mm),78.903464(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.942021(mm),1.5032963(mm),79.304755(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.479863(mm),1.0817094(mm),79.209919(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.293321(mm),-2.8392517(mm),78.537504(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.492452(mm),-0.68119552(mm),79.384027(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.564365(mm),1.8652556(mm),78.842365(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.30375(mm),-2.5468377(mm),78.711992(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.618435(mm),-0.77090018(mm),78.127524(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.816844(mm),-2.4323148(mm),78.268866(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.828714(mm),-0.27156824(mm),79.324735(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.931456(mm),-2.9674126(mm),78.60131(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.043777(mm),-1.9216336(mm),79.286813(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.319131(mm),1.4610569(mm),78.532953(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.67827(mm),0.047244819(mm),79.351262(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.789323(mm),2.7881619(mm),79.155353(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.522249(mm),-2.6074978(mm),79.202446(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.569431(mm),3.879359(mm),78.665145(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.017538(mm),2.5962159(mm),79.115113(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.271836(mm),-0.1423697(mm),78.893946(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.106424(mm),2.5089132(mm),78.923113(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.229136(mm),-1.5408289(mm),79.077802(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.692471(mm),-3.3609731(mm),78.64345(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.02304(mm),1.9096934(mm),78.232508(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.023275(mm),0.5531288(mm),79.466755(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.1056(mm),0.59489873(mm),79.452239(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.276682(mm),1.1734647(mm),79.245746(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.723534(mm),2.0757666(mm),78.990627(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.751693(mm),2.4658645(mm),79.161988(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.567703(mm),1.1017612(mm),78.312796(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.194428(mm),1.9635607(mm),78.907595(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.057131(mm),-1.9336367(mm),78.402824(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.201797(mm),2.0558641(mm),78.906296(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.313694(mm),1.4468867(mm),79.415546(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.881479(mm),-2.2607818(mm),79.139104(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.269742(mm),0.91463449(mm),78.541661(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.038723(mm),0.89037817(mm),79.111377(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.87014(mm),2.3161002(mm),78.612122(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.57699(mm),1.857684(mm),78.840139(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.944395(mm),2.1157988(mm),79.12801(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.814314(mm),2.3612565(mm),78.269312(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.539534(mm),1.0920401(mm),78.317763(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.364583(mm),0.14818711(mm),79.406573(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.430334(mm),0.55838563(mm),79.218653(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.077688(mm),-2.1357313(mm),78.575526(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.325296(mm),-3.3377964(mm),78.708193(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.773092(mm),-2.17536(mm),78.805561(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.664234(mm),2.636588(mm),79.001083(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.25296(mm),-2.7032709(mm),78.720948(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.040512(mm),2.3152379(mm),79.287389(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.247058(mm),1.8997265(mm),78.369334(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.141168(mm),2.0448483(mm),78.211679(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.977924(mm),2.8940868(mm),78.945771(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.376488(mm),-0.25597633(mm),78.170185(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.514529(mm),-2.3023748(mm),79.02748(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.264503(mm),-3.067572(mm),78.366258(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.917657(mm),3.2518022(mm),78.780071(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.348347(mm),3.6067624(mm),78.704128(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.927179(mm),-2.7755492(mm),78.425738(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.322863(mm),2.4371313(mm),78.355968(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.167226(mm),-2.4812441(mm),78.383411(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.653648(mm),0.055668361(mm),79.355603(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.389(mm),0.34838732(mm),79.225941(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.697617(mm),3.1320503(mm),78.642543(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.031355(mm),-0.5834927(mm),79.112676(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.157027(mm),-0.32925654(mm),79.443171(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.206007(mm),-0.56682289(mm),78.729227(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.228356(mm),-0.14025776(mm),79.07794(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.934311(mm),-1.8003726(mm),78.600807(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.437269(mm),0.18291853(mm),79.041103(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.031316(mm),1.5546308(mm),78.231048(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.689976(mm),2.7222234(mm),78.820217(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.128068(mm),-0.23588163(mm),78.390315(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.345771(mm),-1.8408093(mm),78.175602(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.716928(mm),-3.2710326(mm),78.815464(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.837686(mm),2.8066181(mm),79.146826(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.184165(mm),-3.0639696(mm),78.556751(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.441298(mm),-0.32000622(mm),78.158758(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.629302(mm),-1.0980042(mm),78.301934(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -9794,7 +10033,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.593698(mm),-1.6251642(mm),78.308212(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.490186(mm),-1.9386158(mm),79.208099(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -9803,7 +10042,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.137766(mm),-0.05827868(mm),78.564932(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.944756(mm),-0.69529348(mm),79.127946(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -9812,7 +10051,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.442134(mm),0.62046922(mm),79.040245(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.00224(mm),-2.6721028(mm),78.412502(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -9821,7 +10060,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.158378(mm),2.825236(mm),79.090279(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.279128(mm),-1.4648817(mm),79.245314(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -9830,381 +10069,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.185361(mm),-1.3608858(mm),78.55654(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.879291(mm),-2.739248(mm),79.139489(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.787871(mm),-0.37114075(mm),79.155609(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.790693(mm),1.2614225(mm),78.802458(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.955076(mm),-2.5136835(mm),78.420819(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.822566(mm),-0.72034944(mm),79.149492(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 - -********************************************************************************************************* -* G4Track Information: Particle = pi+, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -3.72 mm -1.44 mm 3.63 cm 83.7 MeV 0 eV 0 fm 0 fm Target initStep - 1 -7.3778922 mm -3.4281138 mm 3.6978952 cm 70.510518 MeV 13.181737 MeV 4.2497235 mm 4.2497235 mm Target hIoni - 2 -7.919326 mm -3.7602424 mm 3.7057596 cm 68.839285 MeV 1.6712325 MeV 640.79053 um 4.890514 mm Target Transportation - 3 7.4518468 cm 22.199367 cm 42.900891 cm 68.839312 MeV9.1826946e-17 eV 2.3342585 m 2.339149 m CaptureMgnt Decay -Track (trackID 2, parentID 1) is processed with stopping code 2 - -********************************************************************************************************* -* G4Track Information: Particle = mu+, Track ID = 22, Parent ID = 2 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 7.45 cm 22.2 cm 42.9 cm 70.5 MeV 0 eV 0 fm 0 fm CaptureMgnt initStep - 1 8.1858208 cm 6.5907823 cm 2 m 70.494439 MeV3.323064e-16 eV 9.6163991 m 9.6163991 m CaptureMgnt Transportation - 2 7.0236399 cm 3.7470827 cm 2.005087 m 70.482307 MeV 5.5231623 keV 3.1138511 cm 9.6475376 m World muIoni - 3 -2.959604 cm -20.613431 cm 2.0488692 m 70.441376 MeV 39.598586 keV 26.688434 cm 9.9144219 m World muIoni - 4 -2.9880976 cm -20.682455 cm 2.0489965 m 70.439895 MeV 135.91355 eV 757.50561 um 9.9151794 m World muIoni - 5 -4.5044791 cm -24.353451 cm 2.0557706 m 70.432451 MeV 6.3151238 keV 4.0292099 cm 9.9554715 m World muIoni - 6 -6.3578033 cm -28.847632 cm 2.0640611 m 70.424288 MeV 6.9109979 keV 4.9315118 cm 10.004787 m World muIoni - 7 -6.4198768 cm -28.997335 cm 2.0643379 m 70.416903 MeV 185.51236 eV 1.6440851 mm 10.006431 m World muIoni - 8 -9.0019004 cm -35.215472 cm 2.0758122 m 70.401343 MeV 12.582105 keV 6.8299866 cm 10.074731 m World muIoni - 9 -15.832751 cm -51.698452 cm 2.1062568 m 70.357932 MeV 25.953347 keV 18.10025 cm 10.255733 m World muIoni - 10 -20.956717 cm -64.061114 cm 2.1289078 m 70.327401 MeV 27.616301 keV 13.572825 cm 10.391461 m World muIoni - 11 -21.118595 cm -64.452115 cm 2.1296282 m 70.322854 MeV 492.04753 eV 4.2927338 mm 10.395754 m World muIoni - 12 -22.550892 cm -67.91529 cm 2.1360114 m 70.311808 MeV 9.5718046 keV 3.8016469 cm 10.433771 m World muIoni - 13 -25.028689 cm -73.896024 cm 2.1470419 m 70.29637 MeV 11.495248 keV 6.5669954 cm 10.49944 m World muIoni - 14 -25.796879 cm -75.752194 cm 2.1504645 m 70.281533 MeV 3.7619171 keV 2.0377988 cm 10.519818 m World muIoni - 15 -26.725418 cm -78.000241 cm 2.1546275 m 70.276114 MeV 4.2826855 keV 2.4676326 cm 10.544495 m World muIoni - 16 -28.751984 cm -82.914275 cm 2.1637627 m 70.254769 MeV 13.487022 keV 5.3934439 cm 10.598429 m World muIoni - 17 -33.855067 cm -95.251343 cm 2.1868296 m 70.227327 MeV 25.102854 keV 13.548653 cm 10.733916 m World muIoni - 18 -34.826471 cm -97.600621 cm 2.1912916 m 70.222505 MeV 3.4903263 keV 2.5810526 cm 10.759726 m World muIoni - 19 -34.863725 cm -97.69075 cm 2.1914618 m 70.220244 MeV 31.10492 eV 989.98788 um 10.760716 m World muIoni - 20 -35.170155 cm -98.432021 cm 2.1928621 m 70.216935 MeV 893.9996 eV 8.1424179 mm 10.768859 m World muIoni - 21 -36.633555 cm -1.019696 m 2.1995494 m 70.203031 MeV 6.1418944 keV 3.8862842 cm 10.807722 m World muIoni - 22 -37.816317 cm -1.0482272 m 2.2049615 m 70.194144 MeV 7.5499559 keV 3.1356252 cm 10.839078 m World muIoni - 23 -39.614473 cm -1.0915406 m 2.2131129 m 70.185757 MeV 5.5302819 keV 4.7600778 cm 10.886679 m World muIoni - 24 -47.429197 cm -1.2799007 m 2.2486965 m 70.146948 MeV 37.78101 keV 20.70094 cm 11.093688 m World muIoni - 25 -53.046184 cm -1.4140448 m 2.2740856 m 70.120642 MeV 24.052909 keV 14.762913 cm 11.241317 m World muIoni - 26 -56.292852 cm -1.4912927 m 2.2887272 m 70.107605 MeV 9.4587951 keV 8.5062979 cm 11.32638 m World muIoni - 27 -62.235687 cm -1.6331245 m 2.3152608 m 70.082229 MeV 24.131177 keV 15.605156 cm 11.482432 m World muIoni - 28 -62.253681 cm -1.6335546 m 2.3153414 m 70.078888 MeV 17.166524 eV 473.15411 um 11.482905 m World muIoni - 29 -65.151583 cm -1.7028525 m 2.3283704 m 69.759634 MeV 12.385258 keV 7.6234788 cm 11.55914 m World muIoni - 30 -68.503173 cm -1.7832798 m 2.3432075 m 69.743034 MeV 13.428742 keV 8.8385586 cm 11.647525 m World muIoni - 31 -68.630605 cm -1.7863212 m 2.3437636 m 69.741824 MeV 185.84918 eV 3.3442082 mm 11.650869 m World muIoni - 32 -74.119256 cm -1.9173646 m 2.367747 m 69.713232 MeV 26.888641 keV 14.40838 cm 11.794953 m World muIoni - 33 -74.44159 cm -1.924977 m 2.3691496 m 69.71188 MeV 1.3514511 keV 8.3848758 mm 11.803338 m World muIoni - 34 -76.239712 cm -1.967982 m 2.3770434 m 69.704014 MeV 7.8665318 keV 4.7276587 cm 11.850615 m World muIoni - 35 -78.273362 cm -2.0166446 m 2.38598 m 69.694371 MeV 8.2908293 keV 5.349287 cm 11.904108 m World muIoni - 36 -86.813691 cm -2.221268 m 2.4234957 m 69.645192 MeV 46.801164 keV 22.488306 cm 12.128991 m World muIoni - 37 -86.930307 cm -2.224055 m 2.4240147 m 69.643012 MeV 1.0015847 keV 3.065412 mm 12.132056 m World muIoni - 38 -91.028254 cm -2.3219511 m 2.4422252 m 69.622446 MeV 15.935784 keV 10.767825 cm 12.239734 m World muIoni - 39 -94.774011 cm -2.4118505 m 2.4587244 m 69.605454 MeV 15.593924 keV 9.8778641 cm 12.338513 m World muIoni - 40 -96.373187 cm -2.4502115 m 2.4658216 m 69.595362 MeV 8.710748 keV 4.2162401 cm 12.380675 m World muIoni - 41 -1.0411456 m -2.6357047 m 2.5001374 m 69.56116 MeV 32.987171 keV 20.390775 cm 12.584583 m World muIoni - 42 -1.0516214 m -2.6606526 m 2.5048638 m 69.552447 MeV 5.479472 keV 2.7467821 cm 12.612051 m World muIoni - 43 -1.0685324 m -2.7008947 m 2.5124978 m 69.543087 MeV 7.9709716 keV 4.4313522 cm 12.656364 m World muIoni - 44 -1.0850499 m -2.7402286 m 2.5199774 m 69.51661 MeV 9.1632703 keV 4.331199 cm 12.699676 m World muIoni - 45 -1.1376203 m -2.8654457 m 2.5437806 m 69.498157 MeV 17.28088 keV 13.787568 cm 12.837552 m World muIoni - 46 -1.1465168 m -2.886597 m 2.5477413 m 69.495263 MeV 2.8936217 keV 2.3285501 cm 12.860838 m World muIoni - 47 -1.1881205 m -2.9853078 m 2.5662722 m 69.47957 MeV 14.449313 keV 10.871107 cm 12.969549 m World muIoni - 48 -1.190802 m -2.9917004 m 2.5674646 m 69.476024 MeV 846.8426 eV 7.0340658 mm 12.976583 m World muIoni - 49 -1.240157 m -3.1092893 m 2.5894479 m 69.451868 MeV 17.191714 keV 12.940779 cm 13.10599 m World muIoni - 50 -1.2722358 m -3.1855617 m 2.6037267 m 69.434258 MeV 16.582294 keV 8.396673 cm 13.189957 m World muIoni - 51 -1.2753698 m -3.1930231 m 2.60513 m 69.431472 MeV 1.2622285 keV 8.2137124 mm 13.198171 m World muIoni - 52 -1.3182819 m -3.2952602 m 2.6243468 m 69.408866 MeV 18.188346 keV 11.253082 cm 13.310702 m World muIoni - 53 -1.3238473 m -3.3085028 m 2.6268294 m 69.40556 MeV 1.6720559 keV 1.4577469 cm 13.325279 m World muIoni - 54 -1.329254 m -3.3213808 m 2.6292332 m 69.399868 MeV 3.874377 keV 1.41723 cm 13.339451 m World muIoni - 55 -1.3296605 m -3.3223482 m 2.6294145 m 69.398277 MeV 0 eV 1.0649052 mm 13.340516 m World muIoni - 56 -1.3956842 m -3.4793984 m 2.6589042 m 69.368828 MeV 25.718212 keV 17.289775 cm 13.513414 m World muIoni - 57 -1.396195 m -3.4806112 m 2.6591312 m 69.367294 MeV 250.9208 eV 1.3353368 mm 13.514749 m World muIoni - 58 -1.4250184 m -3.5490981 m 2.6719437 m 69.349001 MeV 15.331526 keV 7.5401727 cm 13.590151 m World muIoni - 59 -1.4758586 m -3.6699396 m 2.6943759 m 69.324861 MeV 22.420058 keV 13.300612 cm 13.723157 m World muIoni - 60 -1.4980097 m -3.7219722 m 2.7040433 m 69.311817 MeV 12.02443 keV 5.7371883 cm 13.780529 m World muIoni - 61 -1.4984124 m -3.7229175 m 2.7042171 m 69.308333 MeV 361.95458 eV 1.0420514 mm 13.781571 m World muIoni - 62 -1.5492028 m -3.8421931 m 2.7260918 m 69.28496 MeV 21.984251 keV 13.147196 cm 13.913043 m World muIoni - 63 -1.5725094 m -3.896974 m 2.7360827 m 69.26542 MeV 9.5743211 keV 6.0365305 cm 13.973409 m World muIoni - 64 -1.6062581 m -3.9762462 m 2.7506775 m 69.250213 MeV 14.020311 keV 8.7384637 cm 14.060793 m World muIoni - 65 -1.634395 m -4.0425943 m 2.7627846 m 69.188637 MeV 15.337604 keV 7.3077683 cm 14.133871 m World muIoni - 66 -1.6403722 m -4.0566785 m 2.7653433 m 69.183677 MeV 3.3248388 keV 1.5512524 cm 14.149383 m World muIoni - 67 -1.6928809 m -4.180748 m 2.7878295 m 69.145745 MeV 22.063399 keV 13.658726 cm 14.285971 m World muIoni - 68 -1.6969697 m -4.190401 m 2.789596 m 69.140546 MeV 1.7028968 keV 1.0631069 cm 14.296602 m World muIoni - 69 -1.7068826 m -4.2138851 m 2.7938923 m 69.137306 MeV 3.2393959 keV 2.5850047 cm 14.322452 m World muIoni - 70 -1.7097872 m -4.220793 m 2.7951532 m 69.134444 MeV 745.09013 eV 7.5990919 mm 14.330051 m World muIoni - 71 -1.7225159 m -4.2510755 m 2.8006796 m 69.125791 MeV 5.0020916 keV 3.3310507 cm 14.363361 m World muIoni - 72 -1.7268034 m -4.2612457 m 2.8025429 m 69.122134 MeV 2.0730892 keV 1.1193215 cm 14.374555 m World muIoni - 73 -1.7439886 m -4.3020447 m 2.8100263 m 69.102935 MeV 7.9818642 keV 4.4898658 cm 14.419453 m World muIoni - 74 -1.7514172 m -4.3196972 m 2.8132572 m 69.097245 MeV 5.6905277 keV 1.9422556 cm 14.438876 m World muIoni - 75 -1.7648681 m -4.3516751 m 2.8191102 m 69.088282 MeV 6.3596047 keV 3.5181935 cm 14.474058 m World muIoni - 76 -1.7808122 m -4.3894777 m 2.8260745 m 69.081526 MeV 5.388305 keV 4.1614307 cm 14.515672 m World muIoni - 77 -1.7822632 m -4.3928972 m 2.8267049 m 69.078773 MeV 294.46675 eV 3.7677595 mm 14.51944 m World muIoni - 78 -1.8091857 m -4.4563851 m 2.8384295 m 69.063636 MeV 14.003398 keV 6.9950032 cm 14.58939 m World muIoni - 79 -1.8121186 m -4.463315 m 2.8397086 m 69.059971 MeV 1.5676184 keV 7.6329295 mm 14.597023 m World muIoni - 80 -1.8194491 m -4.4806285 m 2.8428975 m 69.05556 MeV 2.0938192 keV 1.9069922 cm 14.616093 m World muIoni - 81 -1.8268343 m -4.4980822 m 2.8460999 m 69.048532 MeV 4.9752068 keV 1.9220516 cm 14.635313 m World muIoni - 82 -1.8293381 m -4.5039881 m 2.8471841 m 69.046732 MeV 599.64732 eV 6.5056695 mm 14.641819 m World muIoni - 83 -1.87041 m -4.6007969 m 2.8649734 m 69.029119 MeV 15.985941 keV 10.66552 cm 14.748474 m World muIoni - 84 -1.8793289 m -4.6218668 m 2.8688282 m 69.019449 MeV 5.0318246 keV 2.3202367 cm 14.771676 m World muIoni - 85 -1.8834712 m -4.6316883 m 2.870632 m 69.01878 MeV 668.94907 eV 1.081077 cm 14.782487 m OutOfWorld Transportation -Track (trackID 22, parentID 2) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.596366923211(mm),0.039133090150963(mm),78.131414699852(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.490646(mm),3.5152873(mm),78.50271(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-16.814373(mm),1.2381035(mm),78.269301(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.990233(mm),1.2853055(mm),78.414619(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.973619(mm),-1.3191354(mm),79.299184(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.298392(mm),3.7881285(mm),78.712937(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.340155(mm),2.3619007(mm),78.8819(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.956179(mm),3.1548763(mm),78.596951(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.793125(mm),-0.17552058(mm),78.625702(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.472754(mm),0.59013334(mm),79.3875(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.423628(mm),1.9452322(mm),78.867181(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.339724(mm),-1.1958918(mm),78.881976(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.144349(mm),3.2038874(mm),78.740099(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.944779(mm),-0.1366441(mm),78.598961(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.756085(mm),-0.60391935(mm),78.632233(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.494551(mm),0.5480388(mm),78.149368(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-17.207142(mm),-1.7028839(mm),78.200046(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-15.205069(mm),3.3741061(mm),78.553065(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-10.813273(mm),1.1796687(mm),79.327457(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.853478(mm),1.5676579(mm),78.61506(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.089533(mm),3.4999921(mm),78.926091(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.878666(mm),3.5875427(mm),78.786946(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-13.658093(mm),2.3956655(mm),78.825839(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-14.040504(mm),0.98686571(mm),78.758409(mm),0(nsec)) -1 primaries are passed from G4EventTransformer. -!!!!!!! Now start processing an event !!!!!!! -Track (trackID 1, parentID 0) is processed with stopping code 2 -NULL returned from G4StackManager. -Terminate current event processing. -===================================== - G4EventManager::ProcessOneEvent() -===================================== -G4PrimaryTransformer::PrimaryVertex (-11.03877(mm),1.8603161(mm),79.287696(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.348074(mm),-1.5181606(mm),78.704176(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10214,174 +10079,440 @@ Track (trackID 1, parentID 0) is processed with stopping code 2 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -9.66 mm 1.86 mm 7.15 cm 73.5 MeV 0 eV 0 fm 0 fm Target initStep - 1 -1.2131946 cm 3.8618094 mm 7.2913247 cm 63.05318 MeV 10.398563 MeV 3.5181268 mm 3.5181268 mm Target hIoni - 2 -1.2234838 cm 3.9512454 mm 7.2972759 cm 62.692601 MeV 360.57902 keV 148.79633 um 3.6669232 mm Target Transportation - 3 24.115176 cm 25.005527 cm 1.3759276 m 62.692618 MeV1.2770688e-16 eV 3.1011077 m 3.1047747 m CaptureMgnt Decay + 0 -1.05 cm -1.21 mm 5.9 cm 41.1 MeV 0 eV 0 fm 0 fm Target initStep + 1 -9.4921321 mm -1.6797779 mm 5.8027912 cm 34.833618 MeV 6.276751 MeV 1.5031921 mm 1.5031921 mm Target hIoni + 2 -8.5009046 mm -1.8491708 mm 5.7421397 cm 29.77624 MeV 5.0573781 MeV 1.1838305 mm 2.6870226 mm Target hIoni + 3 -7.7249186 mm -2.0457544 mm 5.6926316 cm 25.462608 MeV 4.3136319 MeV 949.21211 um 3.6362348 mm Target hIoni + 4 -7.1021975 mm -2.3033719 mm 5.6574656 cm 21.214245 MeV 4.2483633 MeV 766.98673 um 4.4032215 mm Target hIoni + 5 -6.7603097 mm -2.4772862 mm 5.6425327 cm 18.440862 MeV 2.7733832 MeV 414.28954 um 4.817511 mm Target Transportation + 6 -8.2970816 cm -13.231733 cm -1.4884618 m 18.440877 MeV5.5889047e-16 eV 6.1555998 m 6.1604173 m CaptureMgnt Decay Track (trackID 3, parentID 1) is processed with stopping code 2 ********************************************************************************************************* -* G4Track Information: Particle = mu+, Track ID = 16, Parent ID = 3 +* G4Track Information: Particle = mu+, Track ID = 21, Parent ID = 3 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 24.1 cm 25 cm 1.38 m 46.6 MeV 0 eV 0 fm 0 fm CaptureMgnt initStep - 1 24.217047 cm 14.390009 cm 2 m 46.551622 MeV4.3872061e-17 eV 1.0550876 m 1.0550876 m CaptureMgnt Transportation - 2 23.96483 cm 13.879614 cm 2.0041747 m 46.551005 MeV 683.09689 eV 7.0597362 mm 1.0621474 m World muIoni - 3 22.991326 cm 11.909634 cm 2.0202803 m 46.356299 MeV 4.917524 keV 2.7244143 cm 1.0893915 m World muIoni - 4 21.567274 cm 9.0318675 cm 2.0439147 m 46.349143 MeV 5.5574056 keV 3.9868955 cm 1.1292605 m World muIoni - 5 21.463308 cm 8.8219219 cm 2.0456404 m 46.343566 MeV 110.33329 eV 2.9097515 mm 1.1321702 m World muIoni - 6 21.196145 cm 8.2816779 cm 2.0500803 m 46.340851 MeV 2.715375 keV 7.4857743 mm 1.139656 m World muIoni - 7 20.284976 cm 6.4392048 cm 2.0652191 m 46.333773 MeV 6.0614475 keV 2.5527965 cm 1.165184 m World muIoni - 8 19.396207 cm 4.6420791 cm 2.0800084 m 46.318887 MeV 5.204685 keV 2.4913481 cm 1.1900974 m World muIoni - 9 17.290154 cm 3.6948222 mm 2.1151194 m 46.304298 MeV 14.589139 keV 5.9176354 cm 1.2492738 m World muIoni - 10 16.397835 cm -1.4371829 cm 2.1299275 m 46.297096 MeV 5.4469683 keV 2.5006159 cm 1.27428 m World muIoni - 11 16.30154 cm -1.6327317 cm 2.1315281 m 46.289481 MeV 879.33717 eV 2.704301 mm 1.2769843 m World muIoni - 12 14.32893 cm -5.644243 cm 2.1643155 m 46.269991 MeV 10.964312 keV 5.5437865 cm 1.3324221 m World muIoni - 13 8.9889329 cm -16.560911 cm 2.2539579 m 46.237109 MeV 30.914731 keV 15.101268 cm 1.4834348 m World muIoni - 14 7.5326198 cm -19.492633 cm 2.2779827 m 46.230394 MeV 5.3324572 keV 4.0605099 cm 1.5240399 m World muIoni - 15 6.1570904 cm -22.267347 cm 2.300736 m 46.218363 MeV 9.3889184 keV 3.8429506 cm 1.5624694 m World muIoni - 16 3.5772 cm -27.416907 cm 2.3433931 m 46.194306 MeV 17.475294 keV 7.1673852 cm 1.6341433 m World muIoni - 17 3.1861783 cm -28.186805 cm 2.3497999 m 46.190968 MeV 2.1130285 keV 1.0752293 cm 1.6448955 m World muIoni - 18 3.0479181 cm -28.459278 cm 2.3520652 m 46.189547 MeV 342.12921 eV 3.8035711 mm 1.6486991 m World muIoni - 19 1.97359 cm -30.575707 cm 2.3696692 m 46.17731 MeV 4.9869253 keV 2.9550748 cm 1.6782499 m World muIoni - 20 -3.0094578 cm -40.428362 cm 2.4514832 m 46.072732 MeV 29.797403 keV 13.741975 cm 1.8156696 m World muIoni - 21 -3.3828113 cm -41.166735 cm 2.4575859 m 46.068667 MeV 2.2971999 keV 1.0281149 cm 1.8259508 m World muIoni - 22 -3.8339371 cm -42.05798 cm 2.4649445 m 46.064482 MeV 2.8043129 keV 1.2406946 cm 1.8383577 m World muIoni - 23 -4.7635825 cm -43.898619 cm 2.4801366 m 46.059347 MeV 5.1345569 keV 2.5612854 cm 1.8639706 m World muIoni - 24 -4.9932549 cm -44.354517 cm 2.4838915 m 46.056265 MeV 837.02737 eV 6.3371267 mm 1.8703077 m World muIoni - 25 -5.9881375 cm -46.327444 cm 2.5001414 m 46.04842 MeV 6.726 keV 2.7427773 cm 1.8977355 m World muIoni - 26 -9.7090946 cm -53.713153 cm 2.5608879 m 46.012271 MeV 22.332529 keV 10.261383 cm 2.0003493 m World muIoni - 27 -13.168248 cm -60.513499 cm 2.6172078 m 45.988682 MeV 22.347702 keV 9.4831441 cm 2.0951807 m World muIoni - 28 -13.864691 cm -61.899677 cm 2.6286681 m 45.98388 MeV 3.7129604 keV 1.9287071 cm 2.1144678 m World muIoni - 29 -14.48775 cm -63.138981 cm 2.6389344 m 45.981385 MeV 2.4947483 keV 1.7257059 cm 2.1317249 m World muIoni - 30 -14.64838 cm -63.458717 cm 2.6415773 m 45.979496 MeV 583.16843 eV 4.4483684 mm 2.1361732 m World muIoni - 31 -14.808619 cm -63.777672 cm 2.6442128 m 45.977435 MeV 449.82939 eV 4.4369988 mm 2.1406102 m World muIoni - 32 -17.58839 cm -69.307354 cm 2.6899163 m 45.9605 MeV 15.748151 keV 7.6936829 cm 2.2175471 m World muIoni - 33 -18.017712 cm -70.165819 cm 2.6970245 m 45.947577 MeV 1.7026152 keV 1.1943801 cm 2.2294909 m World muIoni - 34 -21.58644 cm -77.272823 cm 2.7559928 m 45.922566 MeV 22.043531 keV 9.9004224 cm 2.3284951 m World muIoni - 35 -22.998121 cm -80.102208 cm 2.7793989 m 45.91493 MeV 7.6360162 keV 3.9340466 cm 2.3678355 m World muIoni - 36 -23.94767 cm -82.005394 cm 2.7951274 m 45.903515 MeV 4.7267796 keV 2.6452987 cm 2.3942885 m World muIoni - 37 -24.8977 cm -83.906831 cm 2.8108891 m 45.894237 MeV 6.0380488 keV 2.6461951 cm 2.4207505 m World muIoni - 38 -28.85265 cm -91.845845 cm 2.8768412 m 45.868107 MeV 24.446679 keV 11.052913 cm 2.5312796 m World muIoni - 39 -30.74477 cm -95.650816 cm 2.9084451 m 45.852604 MeV 7.4909369 keV 5.2958512 cm 2.5842381 m World muIoni - 40 -32.169708 cm -98.492247 cm 2.9320673 m 45.84224 MeV 8.9424304 keV 3.9603374 cm 2.6238415 m World muIoni - 41 -33.450518 cm -1.0104066 m 2.9531913 m 45.831015 MeV 8.1560742 keV 3.5492427 cm 2.6593339 m World muIoni - 42 -34.673072 cm -1.0347627 m 2.9733555 m 45.826759 MeV 3.2127336 keV 3.3901047 cm 2.693235 m World muIoni - 43 -35.879879 cm -1.0589549 m 2.993374 m 45.814997 MeV 9.4220766 keV 3.3639922 cm 2.7268749 m World muIoni - 44 -37.796471 cm -1.0973147 m 3.0250764 m 45.79898 MeV 10.353142 keV 5.3327728 cm 2.7802026 m World muIoni - 45 -41.359564 cm -1.1669697 m 3.0822289 m 45.776636 MeV 19.708477 keV 9.6891789 cm 2.8770944 m World muIoni - 46 -41.396483 cm -1.1676897 m 3.0828206 m 45.770858 MeV 57.421002 eV 1.0023877 mm 2.8780968 m World muIoni - 47 -42.222006 cm -1.1837795 m 3.0960254 m 45.766227 MeV 2.9478622 keV 2.2391886 cm 2.9004887 m World muIoni - 48 -44.883779 cm -1.2357603 m 3.1387512 m 45.747255 MeV 17.446474 keV 7.2360274 cm 2.972849 m World muIoni - 49 -45.929366 cm -1.2561601 m 3.1555236 m 45.741868 MeV 5.387344 keV 2.8404084 cm 3.0012531 m World muIoni - 50 -46.885985 cm -1.2747371 m 3.1708464 m 45.736841 MeV 5.0267294 keV 2.5911518 cm 3.0271646 m World muIoni - 51 -47.881316 cm -1.2940934 m 3.1868272 m 45.729525 MeV 5.9690898 keV 2.7002297 cm 3.0541669 m World muIoni - 52 -48.421878 cm -1.3046109 m 3.1955098 m 45.724667 MeV 3.8539641 keV 1.4670582 cm 3.0688374 m World muIoni - 53 -49.14625 cm -1.3187318 m 3.207211 m 45.71372 MeV 3.3277506 keV 1.9717726 cm 3.0885552 m World muIoni - 54 -49.348883 cm -1.3226939 m 3.2105068 m 45.71198 MeV 689.8441 eV 5.5377964 mm 3.094093 m World muIoni - 55 -51.70199 cm -1.3687966 m 3.2487769 m 45.694091 MeV 14.098041 keV 6.4372183 cm 3.1584652 m World muIoni - 56 -52.255552 cm -1.3796424 m 3.2577971 m 45.685099 MeV 3.2394352 keV 1.5153792 cm 3.1736189 m World muIoni - 57 -56.795392 cm -1.4689285 m 3.3318909 m 45.657342 MeV 25.930923 keV 12.459131 cm 3.2982103 m World muIoni - 58 -57.470422 cm -1.4821764 m 3.3429221 m 45.655561 MeV 1.7807655 keV 1.8513794 cm 3.316724 m World muIoni - 59 -62.622197 cm -1.5833046 m 3.4272694 m 45.628365 MeV 27.195621 keV 14.140569 cm 3.4581297 m World muIoni - 60 -62.875546 cm -1.5882368 m 3.4313648 m 45.625779 MeV 979.76922 eV 6.8933131 mm 3.465023 m World muIoni - 61 -63.937865 cm -1.6089566 m 3.4485445 m 45.619807 MeV 4.796479 keV 2.8936235 cm 3.4939593 m World muIoni - 62 -64.474551 cm -1.6193687 m 3.4571962 m 45.616095 MeV 2.4488978 keV 1.4562531 cm 3.5085218 m World muIoni - 63 -65.515881 cm -1.6395679 m 3.4739828 m 45.604105 MeV 3.649834 keV 2.8252973 cm 3.5367748 m World muIoni - 64 -72.677618 cm -1.7798572 m 3.5900582 m 45.560886 MeV 42.034744 keV 19.566419 cm 3.732439 m World muIoni - 65 -76.475584 cm -1.8548086 m 3.6514779 m 45.536423 MeV 23.268185 keV 10.40797 cm 3.8365187 m World muIoni - 66 -77.847538 cm -1.88193 m 3.6735548 m 45.5289 MeV 7.5229405 keV 3.7565727 cm 3.8740844 m World muIoni - 67 -80.379768 cm -1.9317823 m 3.7141106 m 45.506765 MeV 8.4149054 keV 6.9074335 cm 3.9431587 m World muIoni - 68 -81.603492 cm -1.9558689 m 3.7337153 m 45.499135 MeV 6.6395952 keV 3.338048 cm 3.9765392 m World muIoni - 69 -82.06543 cm -1.9649471 m 3.7411083 m 45.496679 MeV 2.4567058 keV 1.2586059 cm 3.9891253 m World muIoni - 70 -82.620244 cm -1.9758616 m 3.7499919 m 45.492778 MeV 2.7201718 keV 1.5127073 cm 4.0042523 m World muIoni - 71 -86.898967 cm -2.0602951 m 3.8186622 m 45.471524 MeV 19.998758 keV 11.694202 cm 4.1211944 m World muIoni - 72 -87.950831 cm -2.0814105 m 3.8358274 m 45.462367 MeV 8.0051288 keV 2.9174407 cm 4.1503688 m World muIoni - 73 -88.457612 cm -2.0915416 m 3.8440324 m 45.459008 MeV 1.7941409 keV 1.398727 cm 4.164356 m World muIoni - 74 -88.639254 cm -2.0951842 m 3.8469902 m 45.457322 MeV 1.6864559 keV 5.0315675 mm 4.1693876 m World muIoni - 75 -88.706007 cm -2.0965241 m 3.8480783 m 45.45519 MeV 499.82775 eV 1.8506395 mm 4.1712382 m World muIoni - 76 -98.626421 cm -2.295742 m 4.0097719 m 45.398364 MeV 54.795205 keV 27.509085 cm 4.4463291 m World muIoni - 77 -1.0031115 m -2.3288829 m 4.0364642 m 45.389804 MeV 6.4869059 keV 4.5767136 cm 4.4920962 m World muIoni - 78 -1.0203268 m -2.362642 m 4.0635829 m 45.378623 MeV 11.180722 keV 4.6599042 cm 4.5386953 m World muIoni - 79 -1.0581509 m -2.4367093 m 4.1231926 m 45.359288 MeV 17.564251 keV 10.232292 cm 4.6410182 m World muIoni - 80 -1.0616308 m -2.443536 m 4.1286527 m 45.355575 MeV 2.3964313 keV 9.4089073 mm 4.6504271 m World muIoni - 81 -1.0739377 m -2.4673577 m 4.1475492 m 45.348171 MeV 6.3380194 keV 3.2802585 cm 4.6832297 m World muIoni - 82 -1.0891253 m -2.4967929 m 4.1708614 m 45.340443 MeV 7.7273079 keV 4.0503777 cm 4.7237335 m World muIoni - 83 -1.1346724 m -2.585432 m 4.2410626 m 45.315676 MeV 23.558 keV 12.190046 cm 4.8456339 m World muIoni - 84 -1.148408 m -2.6118165 m 4.2620817 m 45.296691 MeV 11.338319 keV 3.6422667 cm 4.8820566 m World muIoni - 85 -1.1703585 m -2.6537042 m 4.295527 m 45.278286 MeV 12.512422 keV 5.7922369 cm 4.939979 m World muIoni - 86 -1.1777783 m -2.6678917 m 4.3068928 m 45.273308 MeV 3.8219165 keV 1.9634688 cm 4.9596136 m World muIoni - 87 -1.2063242 m -2.7223509 m 4.3505464 m 45.260247 MeV 13.06187 keV 7.5407763 cm 5.0350214 m World muIoni - 88 -1.2063771 m -2.7224523 m 4.3506274 m 45.258484 MeV 63.801145 eV 140.15592 um 5.0351616 m World muIoni - 89 -1.2309812 m -2.769653 m 4.3883032 m 45.246832 MeV 10.457848 keV 6.5213 cm 5.1003746 m World muIoni - 90 -1.2343777 m -2.7761406 m 4.3934664 m 45.243131 MeV 1.9358868 keV 8.9601288 mm 5.1093347 m World muIoni - 91 -1.2613293 m -2.8277585 m 4.4345411 m 45.230861 MeV 10.736819 keV 7.1259704 cm 5.1805944 m World muIoni - 92 -1.2680168 m -2.8405857 m 4.4447479 m 45.225081 MeV 4.1178528 keV 1.7704109 cm 5.1982985 m World muIoni - 93 -1.2711556 m -2.8466101 m 4.4495485 m 45.222523 MeV 2.558065 keV 8.3181908 mm 5.2066167 m World muIoni - 94 -1.2846169 m -2.8724384 m 4.4701358 m 45.213133 MeV 7.337216 keV 3.5667205 cm 5.2422839 m World muIoni - 95 -1.2977241 m -2.8975514 m 4.4901694 m 45.200497 MeV 7.3876916 keV 3.4695922 cm 5.2769798 m World muIoni - 96 -1.306225 m -2.9138979 m 4.5031737 m 45.192379 MeV 5.0074304 keV 2.2551775 cm 5.2995316 m World muIoni - 97 -1.3213861 m -2.9431227 m 4.5264662 m 45.179845 MeV 10.674733 keV 4.0329753 cm 5.3398613 m World muIoni - 98 -1.3236638 m -2.9475077 m 4.5299593 m 45.176506 MeV 957.91639 eV 6.0513087 mm 5.3459127 m World muIoni - 99 -1.3480078 m -2.9943507 m 4.5672917 m 45.161892 MeV 13.595135 keV 6.4657669 cm 5.4105703 m World muIoni - 100 -1.3583176 m -3.0141531 m 4.5830043 m 45.155894 MeV 3.6961684 keV 2.7300467 cm 5.4378708 m World muIoni - 101 -1.3690674 m -3.0347842 m 4.5993493 m 45.148365 MeV 7.528702 keV 2.8431634 cm 5.4663024 m World muIoni - 102 -1.3732883 m -3.0428735 m 4.6057595 m 45.144006 MeV 2.1938169 keV 1.1150905 cm 5.4774533 m World muIoni - 103 -1.3771208 m -3.050212 m 4.6115748 m 45.135064 MeV 917.69341 eV 1.0117289 cm 5.4875706 m World muIoni - 104 -1.4049905 m -3.1036862 m 4.6539195 m 45.116357 MeV 15.511334 keV 7.3683785 cm 5.5612544 m World muIoni - 105 -1.4072302 m -3.1079883 m 4.6573038 m 45.11607 MeV 287.64959 eV 5.9141883 mm 5.5671686 m World muIoni - 106 -1.4144816 m -3.1219238 m 4.6682615 m 45.111737 MeV 3.1855453 keV 1.9153456 cm 5.586322 m World muIoni - 107 -1.4171191 m -3.1269979 m 4.6722511 m 45.109644 MeV 899.25943 eV 6.972746 mm 5.5932948 m World muIoni - 108 -1.4254631 m -3.1430654 m 4.6848813 m 45.10326 MeV 4.9649858 keV 2.2075092 cm 5.6153699 m World muIoni - 109 -1.4304903 m -3.1527331 m 4.6924653 m 45.099476 MeV 3.7840996 keV 1.327607 cm 5.628646 m World muIoni - 110 -1.4531624 m -3.1963262 m 4.7266446 m 45.087876 MeV 10.409335 keV 5.9854983 cm 5.6885009 m World muIoni - 111 -1.4718824 m -3.2323988 m 4.754998 m 45.073004 MeV 8.347131 keV 4.9553886 cm 5.7380548 m World muIoni - 112 -1.4938681 m -3.2745654 m 4.7883473 m 45.061065 MeV 11.938575 keV 5.8082468 cm 5.7961373 m World muIoni - 113 -1.4959556 m -3.2785886 m 4.7915282 m 45.057294 MeV 1.6194464 keV 5.5374104 mm 5.8016747 m World muIoni - 114 -1.4961367 m -3.278938 m 4.7918054 m 45.054701 MeV 90.611828 eV 481.34767 um 5.8021561 m World muIoni - 115 -1.529785 m -3.3437779 m 4.8432354 m 45.032961 MeV 20.483851 keV 8.933917 cm 5.8914952 m World muIoni - 116 -1.5361207 m -3.3561132 m 4.8530316 m 45.020539 MeV 4.5991051 keV 1.6978436 cm 5.9084737 m World muIoni - 117 -1.5614838 m -3.4060085 m 4.8926469 m 45.004413 MeV 12.453053 keV 6.8573518 cm 5.9770472 m World muIoni - 118 -1.5859507 m -3.4554276 m 4.9317892 m 44.988758 MeV 13.523158 keV 6.7624075 cm 6.0446712 m World muIoni - 119 -1.6044681 m -3.4928112 m 4.9611328 m 44.977593 MeV 9.6237146 keV 5.100467 cm 6.0956759 m World muIoni - 120 -1.6332389 m -3.5499305 m 5.0060225 m 44.96199 MeV 15.602525 keV 7.8137614 cm 6.1738135 m World muIoni - 121 -1.6372182 m -3.5578021 m 5.0122373 m 44.95235 MeV 1.331946 keV 1.0789868 cm 6.1846034 m World muIoni - 122 -1.6602585 m -3.6033604 m 5.0482606 m 44.940442 MeV 11.907251 keV 6.2482783 cm 6.2470862 m World muIoni - 123 -1.6746976 m -3.6317081 m 5.0708224 m 44.932325 MeV 6.800282 keV 3.9001506 cm 6.2860877 m World muIoni - 124 -1.7104758 m -3.7017827 m 5.1265245 m 44.891417 MeV 19.054098 keV 9.6401693 cm 6.3824894 m World muIoni - 125 -1.7125481 m -3.7058022 m 5.1297346 m 44.888707 MeV 967.42373 eV 5.5457803 mm 6.3880352 m World muIoni - 126 -1.7191916 m -3.7186842 m 5.1400173 m 44.880047 MeV 3.4957569 keV 1.7771226 cm 6.4058064 m World muIoni - 127 -1.7535401 m -3.7850638 m 5.1930594 m 44.859109 MeV 16.323615 keV 9.1649162 cm 6.4974556 m World muIoni - 128 -1.7747922 m -3.8261976 m 5.2259339 m 44.846897 MeV 9.1804347 keV 5.6783621 cm 6.5542392 m World muIoni - 129 -1.79533 m -3.8657896 m 5.2578169 m 44.835032 MeV 10.846945 keV 5.4825723 cm 6.6090649 m World muIoni - 130 -1.8404496 m -3.9532253 m 5.3284685 m 44.809762 MeV 21.059647 keV 12.113013 cm 6.730195 m World muIoni - 131 -1.8543279 m -3.9802241 m 5.3503546 m 44.791014 MeV 8.9877208 keV 3.7423807 cm 6.7676188 m World muIoni - 132 -1.8827023 m -4.0350198 m 5.3949385 m 44.775524 MeV 14.403667 keV 7.6127625 cm 6.8437465 m World muIoni - 133 -1.895371 m -4.0594236 m 5.4149395 m 44.768191 MeV 5.8879513 keV 3.4001212 cm 6.8777477 m World muIoni - 134 -1.9023637 m -4.0729516 m 5.4259917 m 44.763294 MeV 3.2771822 keV 1.8816447 cm 6.8965641 m World muIoni - 135 -1.9050326 m -4.0781136 m 5.4302195 m 44.757348 MeV 2.4754009 keV 7.1863292 mm 6.9037504 m World muIoni - 136 -1.9119617 m -4.0915341 m 5.4411966 m 44.749321 MeV 4.9478232 keV 1.8671261 cm 6.9224217 m World muIoni - 137 -1.9137305 m -4.0949521 m 5.4440008 m 44.747595 MeV 536.4133 eV 4.7619124 mm 6.9271836 m World muIoni - 138 -1.9205341 m -4.1081159 m 5.4547901 m 44.741361 MeV 4.6626782 keV 1.8329847 cm 6.9455135 m World muIoni - 139 -2.0014415 m -4.2641097 m 5.5822349 m 44.649835 MeV 49.765771 keV 21.707763 cm 7.1625911 m World muIoni - 140 -2.00502 m -4.270916 m 5.5878075 m 44.646459 MeV 1.2507549 keV 9.4965923 mm 7.1720877 m World muIoni - 141 -2.0244372 m -4.3078686 m 5.6180772 m 44.639947 MeV 6.512182 keV 5.1563439 cm 7.2236511 m World muIoni - 142 -2.0700296 m -4.3951397 m 5.6893249 m 44.607437 MeV 27.584226 keV 12.153683 cm 7.345188 m World muIoni - 143 -2.0853881 m -4.4246658 m 5.7136604 m 44.594089 MeV 9.0050194 keV 4.1229774 cm 7.3864177 m World muIoni - 144 -2.0933021 m -4.4399004 m 5.726206 m 44.589471 MeV 2.8731942 keV 2.1263091 cm 7.4076808 m World muIoni - 145 -2.1086629 m -4.469431 m 5.7504946 m 44.580474 MeV 7.5841422 keV 4.1206149 cm 7.448887 m World muIoni - 146 -2.1165186 m -4.4845237 m 5.7628785 m 44.565874 MeV 3.1700861 keV 2.104425 cm 7.4699312 m World muIoni - 147 -2.1321146 m -4.5144353 m 5.7874264 m 44.552683 MeV 8.9637966 keV 4.1719823 cm 7.511651 m World muIoni - 148 -2.1348624 m -4.5196734 m 5.79176 m 44.536532 MeV 1.0988896 keV 7.332691 mm 7.5189837 m World muIoni - 149 -2.1355559 m -4.5209956 m 5.7928563 m 44.536383 MeV 149.12375 eV 1.8522534 mm 7.520836 m OutOfWorld Transportation -Track (trackID 16, parentID 3) is processed with stopping code 2 + 0 -8.3 cm -13.2 cm -1.49 m 3.72 MeV 0 eV 0 fm 0 fm CaptureMgnt initStep + 1 -8.1682524 cm -10.498863 cm -2 m 3.7150459 MeV3.8669002e-16 eV 1.4247637 m 1.4247637 m CaptureMgnt Transportation + 2 -8.0544616 cm -10.3876 cm -2.0006122 m 3.7127008 MeV 2.4379356 keV 1.7051674 mm 1.4264688 m World muIoni + 3 -8.0138158 cm -10.348003 cm -2.0008298 m 3.7099044 MeV 360.20096 eV 607.74282 um 1.4270766 m World muIoni + 4 -7.9639547 cm -10.299285 cm -2.0010992 m 3.7091447 MeV 759.73373 eV 747.3555 um 1.4278239 m World muIoni + 5 -7.8444127 cm -10.182446 cm -2.0017463 m 3.7063985 MeV 1.7173091 keV 1.7924762 mm 1.4296164 m World muIoni + 6 -7.7720242 cm -10.112454 cm -2.0021337 m 3.7019278 MeV 1.2651697 keV 1.0788559 mm 1.4306952 m World muIoni + 7 -7.4796825 cm -9.8280888 cm -2.003707 m 3.6959685 MeV 4.8546351 keV 4.3712997 mm 1.4350665 m World muIoni + 8 -7.4469028 cm -9.7966183 cm -2.0038821 m 3.6953479 MeV 620.66711 eV 486.98887 um 1.4355535 m World muIoni + 9 -7.2196395 cm -9.5786233 cm -2.0050966 m 3.6897265 MeV 4.577555 keV 3.3752279 mm 1.4389288 m World muIoni + 10 -6.9581265 cm -9.3247177 cm -2.0065088 m 3.6816235 MeV 5.2998732 keV 3.9090046 mm 1.4428378 m World muIoni + 11 -6.9558845 cm -9.3225186 cm -2.0065211 m 3.6789532 MeV 25.446803 eV 33.718004 um 1.4428715 m World muIoni + 12 -6.891027 cm -9.2587169 cm -2.0068774 m 3.6777791 MeV 1.1741137 keV 977.05525 um 1.4438485 m World muIoni + 13 -5.6113552 cm -7.9992559 cm -2.0138811 m 3.6489709 MeV 27.116344 keV 1.9273453 cm 1.463122 m World muIoni + 14 -5.4721233 cm -7.8595434 cm -2.0146164 m 3.6449309 MeV 2.7330692 keV 2.1050138 mm 1.465227 m World muIoni + 15 -5.3108384 cm -7.6963774 cm -2.0154629 m 3.6405661 MeV 3.2262837 keV 2.445451 mm 1.4676725 m World muIoni + 16 -4.6640278 cm -7.0468407 cm -2.0187849 m 3.6267107 MeV 13.855393 keV 9.7501873 mm 1.4774226 m World muIoni + 17 -4.6340062 cm -7.0167247 cm -2.0189413 m 3.6249138 MeV 359.48442 eV 453.08861 um 1.4778757 m World muIoni + 18 -3.7018238 cm -6.079649 cm -2.0237888 m 3.6082753 MeV 14.310901 keV 1.4078992 cm 1.4919547 m World muIoni + 19 -3.6353143 cm -6.0124239 cm -2.0241329 m 3.605203 MeV 1.5242099 keV 1.0063176 mm 1.492961 m World muIoni + 20 -3.2273817 cm -5.6043127 cm -2.0262056 m 3.5974368 MeV 6.315592 keV 6.13147 mm 1.4990925 m World muIoni + 21 -3.1080889 cm -5.4881047 cm -2.0268028 m 3.5950448 MeV 1.0088632 keV 1.7692443 mm 1.5008618 m World muIoni + 22 -2.727323 cm -5.1216569 cm -2.0286978 m 3.5823066 MeV 8.5658857 keV 5.6141358 mm 1.5064759 m World muIoni + 23 -2.6925032 cm -5.0876619 cm -2.0288759 m 3.5818361 MeV 470.45681 eV 518.17068 um 1.5069941 m World muIoni + 24 -2.5388778 cm -4.9378137 cm -2.0296628 m 3.5779729 MeV 2.4524441 keV 2.2857923 mm 1.5092799 m World muIoni + 25 -2.0907715 cm -4.5000995 cm -2.03196 m 3.5677711 MeV 7.2592291 keV 6.6721621 mm 1.515952 m World muIoni + 26 -1.8419161 cm -4.2516694 cm -2.0332481 m 3.5608984 MeV 5.6121863 keV 3.7448602 mm 1.5196969 m World muIoni + 27 -1.0670932 cm -3.4705106 cm -2.0372658 m 3.5433407 MeV 17.557664 keV 1.1713462 cm 1.5314103 m World muIoni + 28 -4.4207656 mm -2.8230145 cm -2.0404261 m 3.5313191 MeV 10.910371 keV 9.538832 mm 1.5409492 m World muIoni + 29 -4.1425665 mm -2.7935965 cm -2.040566 m 3.5241486 MeV 313.47434 eV 428.36414 um 1.5413775 m World muIoni + 30 -769.42558 um -2.4373444 cm -2.042257 m 3.5148928 MeV 8.015851 keV 5.1893815 mm 1.5465669 m World muIoni + 31 1.959008 mm -2.1528596 cm -2.0436211 m 3.5070135 MeV 6.305648 keV 4.1711713 mm 1.5507381 m World muIoni + 32 9.9190659 mm -1.311861 cm -2.0475363 m 3.4896006 MeV 15.127853 keV 1.2224075 cm 1.5629622 m World muIoni + 33 1.0334546 cm -1.26697 cm -2.0477422 m 3.4802761 MeV 2.5759899 keV 645.38866 um 1.5636076 m World muIoni + 34 2.0567029 cm -1.5820051 mm -2.0527895 m 3.4577953 MeV 18.764969 keV 1.5910238 cm 1.5795178 m World muIoni + 35 2.2629862 cm 650.50232 um -2.0538498 m 3.4516155 MeV 4.8792905 keV 3.2192914 mm 1.5827371 m World muIoni + 36 2.6841434 cm 5.2100392 mm -2.0560127 m 3.4436923 MeV 7.9232119 keV 6.5731136 mm 1.5893102 m World muIoni + 37 2.7667985 cm 6.1042268 mm -2.0564373 m 3.4420224 MeV 1.6699212 keV 1.2896179 mm 1.5905998 m World muIoni + 38 3.1692884 cm 1.0436931 cm -2.0585015 m 3.4305589 MeV 9.1578187 keV 6.2637193 mm 1.5968635 m World muIoni + 39 3.224672 cm 1.1041324 cm -2.0587828 m 3.4279286 MeV 1.3605391 keV 866.66329 um 1.5977302 m World muIoni + 40 3.4311078 cm 1.3288729 cm -2.0598282 m 3.4218925 MeV 4.6410494 keV 3.2257575 mm 1.600956 m World muIoni + 41 3.8558903 cm 1.7908495 cm -2.0619992 m 3.406149 MeV 10.047529 keV 6.6408292 mm 1.6075968 m World muIoni + 42 3.8914971 cm 1.8298811 cm -2.0621849 m 3.4034547 MeV 833.16664 eV 560.0386 um 1.6081568 m World muIoni + 43 4.3602279 cm 2.3432143 cm -2.0646186 m 3.3932989 MeV 9.070658 keV 7.3652283 mm 1.6155221 m World muIoni + 44 4.3806635 cm 2.3659519 cm -2.0647253 m 3.3930511 MeV 247.85861 eV 323.79932 um 1.6158459 m World muIoni + 45 4.5547646 cm 2.5593418 cm -2.0656334 m 3.3879506 MeV 5.1004105 keV 2.7560486 mm 1.6186019 m World muIoni + 46 4.6726718 cm 2.6896766 cm -2.0662553 m 3.3844969 MeV 2.1286145 keV 1.8643292 mm 1.6204662 m World muIoni + 47 4.9735349 cm 3.0215998 cm -2.0678536 m 3.378086 MeV 5.1588308 keV 4.7564679 mm 1.6252227 m World muIoni + 48 4.9827845 cm 3.0319984 cm -2.067904 m 3.3769967 MeV 96.515335 eV 148.02958 um 1.6253707 m World muIoni + 49 5.0716001 cm 3.131533 cm -2.068389 m 3.3736559 MeV 1.9840039 keV 1.4194105 mm 1.6267901 m World muIoni + 50 5.1486389 cm 3.2176264 cm -2.0688001 m 3.3722075 MeV 1.4483527 keV 1.2262729 mm 1.6280164 m World muIoni + 51 5.2025002 cm 3.2775896 cm -2.0690866 m 3.3694728 MeV 712.81142 eV 855.41379 um 1.6288718 m World muIoni + 52 5.7643749 cm 3.9004416 cm -2.0720851 m 3.3556981 MeV 13.774704 keV 8.9083806 mm 1.6377802 m World muIoni + 53 6.3806694 cm 4.6037307 cm -2.0753824 m 3.3382226 MeV 11.974605 keV 9.9156621 mm 1.6476959 m World muIoni + 54 6.7207528 cm 4.9830038 cm -2.0772038 m 3.3235596 MeV 13.488907 keV 5.4100861 mm 1.653106 m World muIoni + 55 6.7240215 cm 4.9866709 cm -2.0772212 m 3.3207057 MeV 0 eV 52.092292 um 1.653158 m World muIoni + 56 7.3698801 cm 5.7114105 cm -2.0806248 m 3.3023292 MeV 17.356344 keV 1.0287286 cm 1.6634453 m World muIoni + 57 7.5032747 cm 5.8581194 cm -2.0813243 m 3.2991068 MeV 2.1107993 keV 2.10265 mm 1.665548 m World muIoni + 58 7.5189151 cm 5.8754222 cm -2.0814064 m 3.2955221 MeV 105.95795 eV 247.27968 um 1.6657953 m World muIoni + 59 7.6619482 cm 6.0334735 cm -2.0821522 m 3.2914462 MeV 2.6145486 keV 2.2583324 mm 1.6680536 m World muIoni + 60 8.4247855 cm 6.872445 cm -2.0861486 m 3.2677918 MeV 18.660691 keV 1.2023293 cm 1.6800769 m World muIoni + 61 8.4705574 cm 6.9233379 cm -2.0863959 m 3.2666859 MeV 1.1058588 keV 727.79777 um 1.6808047 m World muIoni + 62 8.9554312 cm 7.4614082 cm -2.0890178 m 3.2536136 MeV 13.072378 keV 7.7031682 mm 1.6885079 m World muIoni + 63 9.0984688 cm 7.6168972 cm -2.0897521 m 3.2114709 MeV 2.630725 keV 2.2367376 mm 1.6907446 m World muIoni + 64 9.8057968 cm 8.3887136 cm -2.093325 m 3.1865863 MeV 15.088236 keV 1.1062281 cm 1.7018069 m World muIoni + 65 10.000576 cm 8.6048041 cm -2.0943056 m 3.1805364 MeV 4.9653468 keV 3.0700474 mm 1.7048769 m World muIoni + 66 10.128841 cm 8.7482689 cm -2.0949468 m 3.1733624 MeV 4.6029466 keV 2.0284289 mm 1.7069054 m World muIoni + 67 10.478506 cm 9.1372135 cm -2.0966968 m 3.1682017 MeV 5.1606835 keV 5.5152458 mm 1.7124206 m World muIoni + 68 10.479666 cm 9.1384973 cm -2.0967028 m 3.166469 MeV 0 eV 18.292829 um 1.7124389 m World muIoni + 69 10.489846 cm 9.1497904 cm -2.0967547 m 3.1619791 MeV 0 eV 160.65604 um 1.7125995 m World muIoni + 70 10.822787 cm 9.5188235 cm -2.0984651 m 3.1540955 MeV 6.6448559 keV 5.2564103 mm 1.717856 m World muIoni + 71 11.023222 cm 9.7449366 cm -2.0994824 m 3.1377235 MeV 2.9236713 keV 3.1882933 mm 1.7210442 m World muIoni + 72 11.44723 cm 10.2239 cm -2.1016308 m 3.119675 MeV 8.2970645 keV 6.7480517 mm 1.7277923 m World muIoni + 73 11.473584 cm 10.253921 cm -2.1017686 m 3.1173485 MeV 1.1520533 keV 422.56344 um 1.7282149 m World muIoni + 74 11.542049 cm 10.331351 cm -2.1021266 m 3.1121125 MeV 1.2433585 keV 1.0938211 mm 1.7293087 m World muIoni + 75 11.791086 cm 10.611801 cm -2.1034218 m 3.1045155 MeV 5.0879843 keV 3.967996 mm 1.7332767 m World muIoni + 76 11.851666 cm 10.680341 cm -2.103735 m 3.1016968 MeV 2.8186995 keV 966.87526 um 1.7342436 m World muIoni + 77 12.195932 cm 11.070585 cm -2.105516 m 3.0922107 MeV 7.5939186 keV 5.5003601 mm 1.7397439 m World muIoni + 78 12.326273 cm 11.218438 cm -2.1061761 m 3.0719403 MeV 2.8623083 keV 2.0786397 mm 1.7418226 m World muIoni + 79 12.886713 cm 11.857659 cm -2.108983 m 3.0552608 MeV 14.389343 keV 8.9528011 mm 1.7507754 m World muIoni + 80 13.181425 cm 12.203151 cm -2.1104389 m 3.0457896 MeV 7.8837275 keV 4.7691686 mm 1.7555445 m World muIoni + 81 13.233404 cm 12.26291 cm -2.1107039 m 3.0415871 MeV 2.4796257 keV 835.18061 um 1.7563797 m World muIoni + 82 13.321698 cm 12.364906 cm -2.1111583 m 2.995353 MeV 3.4037728 keV 1.4235064 mm 1.7578032 m World muIoni + 83 13.589996 cm 12.677687 cm -2.1125791 m 2.9877577 MeV 6.5409416 keV 4.3589997 mm 1.7621622 m World muIoni + 84 13.638877 cm 12.735171 cm -2.112866 m 2.9827335 MeV 885.55591 eV 807.25854 um 1.7629695 m World muIoni + 85 14.104154 cm 13.284739 cm -2.1155909 m 2.9697567 MeV 11.369496 keV 7.6992585 mm 1.7706687 m World muIoni + 86 14.578162 cm 13.846806 cm -2.118542 m 2.9568723 MeV 12.88435 keV 7.922911 mm 1.7785916 m World muIoni + 87 14.649172 cm 13.932069 cm -2.1189935 m 2.9553291 MeV 1.5431669 keV 1.1979526 mm 1.7797896 m World muIoni + 88 14.662451 cm 13.948024 cm -2.1190778 m 2.9536953 MeV 512.19702 eV 224.04959 um 1.7800136 m World muIoni + 89 15.689533 cm 15.183552 cm -2.1255816 m 2.9315645 MeV 22.130856 keV 1.7334319 cm 1.797348 m World muIoni + 90 15.830027 cm 15.35313 cm -2.1265092 m 2.9275375 MeV 2.0650457 keV 2.389565 mm 1.7997375 m World muIoni + 91 16.211642 cm 15.812496 cm -2.1290424 m 2.914829 MeV 10.779445 keV 6.4871931 mm 1.8062247 m World muIoni + 92 16.397053 cm 16.038262 cm -2.1302675 m 2.9067954 MeV 4.8651286 keV 3.1679404 mm 1.8093927 m World muIoni + 93 17.072888 cm 16.848571 cm -2.1347102 m 2.8829829 MeV 16.817397 keV 1.1449161 cm 1.8208418 m World muIoni + 94 17.140487 cm 16.932201 cm -2.1351546 m 2.8756806 MeV 972.99209 eV 1.1635409 mm 1.8220054 m World muIoni + 95 17.557413 cm 17.444043 cm -2.1378586 m 2.8607526 MeV 11.760151 keV 7.1340698 mm 1.8291394 m World muIoni + 96 18.217318 cm 18.259948 cm -2.1422313 m 2.8378384 MeV 22.914168 keV 1.136876 cm 1.8405082 m World muIoni + 97 18.236181 cm 18.284007 cm -2.1423598 m 2.8361854 MeV 189.07279 eV 331.62989 um 1.8408398 m World muIoni + 98 18.598158 cm 18.746658 cm -2.1448351 m 2.8170194 MeV 11.871286 keV 6.3746365 mm 1.8472145 m World muIoni + 99 18.613534 cm 18.766198 cm -2.1449407 m 2.8051865 MeV 109.8914 eV 270.1575 um 1.8474846 m World muIoni + 100 18.729537 cm 18.914038 cm -2.1457476 m 2.8008168 MeV 4.3697056 keV 2.0450921 mm 1.8495297 m World muIoni + 101 18.974801 cm 19.223647 cm -2.1474378 m 2.7910587 MeV 6.3537102 keV 4.2963282 mm 1.853826 m World muIoni + 102 19.464622 cm 19.851741 cm -2.1508529 m 2.768517 MeV 13.133636 keV 8.6666321 mm 1.8624927 m World muIoni + 103 19.953903 cm 20.460922 cm -2.1541412 m 2.7544014 MeV 13.027932 keV 8.4774228 mm 1.8709701 m World muIoni + 104 20.012034 cm 20.533297 cm -2.1545176 m 2.7515572 MeV 1.4550276 keV 1.0017095 mm 1.8719718 m World muIoni + 105 20.156314 cm 20.712511 cm -2.1554517 m 2.7453199 MeV 2.6116648 keV 2.4831843 mm 1.874455 m World muIoni + 106 20.201719 cm 20.768965 cm -2.1557395 m 2.7432819 MeV 360.60061 eV 779.51909 um 1.8752345 m World muIoni + 107 20.232933 cm 20.807748 cm -2.1559379 m 2.7353053 MeV 918.75055 eV 535.94708 um 1.8757705 m World muIoni + 108 20.373822 cm 20.98419 cm -2.1568377 m 2.7291965 MeV 4.8560516 keV 2.4305989 mm 1.878201 m World muIoni + 109 21.694673 cm 22.614023 cm -2.165215 m 2.6907081 MeV 34.014258 keV 2.2591585 cm 1.9007926 m World muIoni + 110 22.285806 cm 23.336031 cm -2.1691713 m 2.6747779 MeV 14.65829 keV 1.0135766 cm 1.9109284 m World muIoni + 111 22.570478 cm 23.678664 cm -2.1711117 m 2.6661025 MeV 7.1405788 keV 4.8589675 mm 1.9157874 m World muIoni + 112 22.641546 cm 23.764054 cm -2.1715945 m 2.6644837 MeV 1.618775 keV 1.2113289 mm 1.9169987 m World muIoni + 113 22.668168 cm 23.796279 cm -2.1717774 m 2.6621446 MeV 147.39953 eV 456.24558 um 1.9174549 m World muIoni + 114 22.766284 cm 23.917454 cm -2.1724566 m 2.654168 MeV 1.9988289 keV 1.7007633 mm 1.9191557 m World muIoni + 115 22.782202 cm 23.937719 cm -2.1725662 m 2.65181 MeV 195.19486 eV 280.05497 um 1.9194358 m World muIoni + 116 22.949378 cm 24.149904 cm -2.173719 m 2.6473772 MeV 4.4328077 keV 2.9370403 mm 1.9223728 m World muIoni + 117 23.124937 cm 24.373896 cm -2.1749412 m 2.6408888 MeV 5.2025247 keV 3.0972786 mm 1.9254701 m World muIoni + 118 23.231392 cm 24.508769 cm -2.1756807 m 2.6379001 MeV 2.9887095 keV 1.8706555 mm 1.9273407 m World muIoni + 119 23.648251 cm 25.035301 cm -2.1786066 m 2.6233177 MeV 13.182466 keV 7.3256101 mm 1.9346663 m World muIoni + 120 23.790822 cm 25.210046 cm -2.1795941 m 2.6174374 MeV 4.194439 keV 2.4620002 mm 1.9371283 m World muIoni + 121 23.978205 cm 25.441357 cm -2.1809001 m 2.612254 MeV 5.1834444 keV 3.250766 mm 1.9403791 m World muIoni + 122 24.447097 cm 26.016284 cm -2.1841737 m 2.6010942 MeV 11.159777 keV 8.1093413 mm 1.9484885 m World muIoni + 123 24.506757 cm 26.088428 cm -2.1845931 m 2.5980791 MeV 1.5274271 keV 1.0258048 mm 1.9495143 m World muIoni + 124 24.969073 cm 26.646441 cm -2.1878303 m 2.572801 MeV 13.005975 keV 7.9369289 mm 1.9574512 m World muIoni + 125 25.028484 cm 26.716884 cm -2.18823 m 2.5681988 MeV 1.6392922 keV 1.0044874 mm 1.9584557 m World muIoni + 126 25.124531 cm 26.83134 cm -2.1888744 m 2.5652758 MeV 1.8091326 keV 1.6271954 mm 1.9600829 m World muIoni + 127 25.357357 cm 27.103854 cm -2.1904335 m 2.5554226 MeV 6.5131522 keV 3.9087517 mm 1.9639916 m World muIoni + 128 25.528323 cm 27.298429 cm -2.1915732 m 2.534721 MeV 4.4625279 keV 2.8298545 mm 1.9668215 m World muIoni + 129 26.283235 cm 28.124517 cm -2.1966987 m 2.5163294 MeV 15.705256 keV 1.2310229 cm 1.9791317 m World muIoni + 130 26.418374 cm 28.268989 cm -2.1976194 m 2.506165 MeV 4.7104402 keV 2.182005 mm 1.9813137 m World muIoni + 131 26.613855 cm 28.47911 cm -2.1989342 m 2.4926618 MeV 5.2442455 keV 3.1567952 mm 1.9844705 m World muIoni + 132 26.873489 cm 28.754739 cm -2.2006388 m 2.4848879 MeV 6.78319 keV 4.1526481 mm 1.9886232 m World muIoni + 133 26.997835 cm 28.885201 cm -2.2014593 m 2.4795249 MeV 4.0192913 keV 1.9802748 mm 1.9906034 m World muIoni + 134 27.25839 cm 29.156826 cm -2.2031739 m 2.4726417 MeV 6.8832311 keV 4.1360893 mm 1.9947395 m World muIoni + 135 27.456845 cm 29.363665 cm -2.204478 m 2.4673844 MeV 4.0373209 keV 3.1492147 mm 1.9978887 m World muIoni + 136 27.632005 cm 29.544007 cm -2.2056189 m 2.4554726 MeV 3.2423644 keV 2.7608753 mm 2.0006496 m World muIoni + 137 28.023948 cm 29.956309 cm -2.2082642 m 2.442701 MeV 12.771591 keV 6.2738323 mm 2.0069234 m World muIoni + 138 28.038454 cm 29.971539 cm -2.2083623 m 2.4409789 MeV 165.366 eV 232.07319 um 2.0071555 m World muIoni + 139 28.275974 cm 30.221017 cm -2.2099742 m 2.4313217 MeV 7.8182415 keV 3.8032016 mm 2.0109587 m World muIoni + 140 28.954351 cm 30.919849 cm -2.2144404 m 2.4063171 MeV 19.498657 keV 1.0715159 cm 2.0216739 m World muIoni + 141 29.253631 cm 31.231698 cm -2.21635 m 2.3957737 MeV 9.17935 keV 4.7254163 mm 2.0263993 m World muIoni + 142 29.29755 cm 31.27829 cm -2.2166283 m 2.3858547 MeV 1.0492845 keV 698.13923 um 2.0270974 m World muIoni + 143 29.840488 cm 31.852575 cm -2.2200815 m 2.3642449 MeV 15.485875 keV 8.6249529 mm 2.0357224 m World muIoni + 144 29.995857 cm 32.022935 cm -2.2210891 m 2.3562945 MeV 6.3995265 keV 2.5162775 mm 2.0382387 m World muIoni + 145 30.168781 cm 32.212897 cm -2.2222112 m 2.3418503 MeV 6.1486186 keV 2.8032237 mm 2.0410419 m World muIoni + 146 30.354974 cm 32.415625 cm -2.2233913 m 2.3340061 MeV 6.1824779 keV 2.9949096 mm 2.0440368 m World muIoni + 147 30.380586 cm 32.443897 cm -2.2235574 m 2.3320126 MeV 278.93858 eV 416.08576 um 2.0444529 m World muIoni + 148 30.478989 cm 32.552127 cm -2.2241989 m 2.3289914 MeV 3.0212859 keV 1.5972506 mm 2.0460501 m World muIoni + 149 30.785613 cm 32.887008 cm -2.2261672 m 2.3201243 MeV 8.8670079 keV 4.9489041 mm 2.050999 m World muIoni + 150 31.149145 cm 33.296583 cm -2.2285872 m 2.3060119 MeV 13.048825 keV 5.98742 mm 2.0569865 m World muIoni + 151 31.460692 cm 33.647002 cm -2.2306577 m 2.2949534 MeV 7.8139467 keV 5.1260153 mm 2.0621125 m World muIoni + 152 32.158332 cm 34.411513 cm -2.2355408 m 2.2735887 MeV 21.364701 keV 1.1444614 cm 2.0735571 m World muIoni + 153 32.209121 cm 34.466536 cm -2.2359016 m 2.2693211 MeV 905.05312 eV 831.20576 um 2.0743883 m World muIoni + 154 32.434441 cm 34.711526 cm -2.2375122 m 2.260795 MeV 6.6702421 keV 3.6977846 mm 2.0780861 m World muIoni + 155 32.953735 cm 35.281365 cm -2.2413521 m 2.2387662 MeV 15.092729 keV 8.6144213 mm 2.0867005 m World muIoni + 156 33.177465 cm 35.528924 cm -2.2430302 m 2.223113 MeV 8.5723804 keV 3.7352801 mm 2.0904358 m World muIoni + 157 33.647026 cm 36.036585 cm -2.2464326 m 2.2058246 MeV 15.684888 keV 7.7072842 mm 2.0981431 m World muIoni + 158 33.653367 cm 36.043259 cm -2.2464779 m 2.2036663 MeV 1.1608473 keV 102.61886 um 2.0982457 m World muIoni + 159 34.08977 cm 36.503872 cm -2.2496071 m 2.1882434 MeV 13.989791 keV 7.0750889 mm 2.1053208 m World muIoni + 160 34.463071 cm 36.905509 cm -2.2522934 m 2.1762503 MeV 11.993053 keV 6.1061668 mm 2.1114269 m World muIoni + 161 34.953979 cm 37.448649 cm -2.2558756 m 2.1564293 MeV 17.980898 keV 8.1509456 mm 2.1195779 m World muIoni + 162 35.210141 cm 37.725053 cm -2.257695 m 2.1383292 MeV 11.095909 keV 4.1848639 mm 2.1237627 m World muIoni + 163 35.278516 cm 37.798237 cm -2.2581946 m 2.133119 MeV 3.2597004 keV 1.1192267 mm 2.124882 m World muIoni + 164 35.379295 cm 37.906024 cm -2.258926 m 2.1266504 MeV 3.7774758 keV 1.6469622 mm 2.1265289 m World muIoni + 165 35.453774 cm 37.985323 cm -2.259472 m 2.118257 MeV 1.6055449 keV 1.2172281 mm 2.1277462 m World muIoni + 166 35.73767 cm 38.286656 cm -2.2615751 m 2.111378 MeV 6.8789483 keV 4.643852 mm 2.13239 m World muIoni + 167 36.21864 cm 38.80596 cm -2.2654415 m 2.0941221 MeV 15.519314 keV 8.0669513 mm 2.140457 m World muIoni + 168 36.715381 cm 39.350391 cm -2.2692309 m 2.0734012 MeV 20.720867 keV 8.2874682 mm 2.1487444 m World muIoni + 169 36.747546 cm 39.385882 cm -2.2694767 m 2.0652228 MeV 657.91104 eV 538.38144 um 2.1492828 m World muIoni + 170 37.217788 cm 39.906424 cm -2.2731137 m 2.0462909 MeV 15.89283 keV 7.9021222 mm 2.1571849 m World muIoni + 171 37.379586 cm 40.08451 cm -2.274417 m 2.0411151 MeV 3.7556434 keV 2.7364357 mm 2.1599214 m World muIoni + 172 37.637344 cm 40.371162 cm -2.276489 m 2.0288273 MeV 9.1940845 keV 4.3766529 mm 2.164298 m World muIoni + 173 37.76349 cm 40.508009 cm -2.2774929 m 2.0231839 MeV 4.1000055 keV 2.1147208 mm 2.1664127 m World muIoni + 174 37.766488 cm 40.511242 cm -2.2775169 m 2.0210815 MeV 0 eV 50.166167 um 2.1664629 m World muIoni + 175 37.854981 cm 40.606341 cm -2.2782187 m 2.0156112 MeV 2.8991037 keV 1.4764993 mm 2.1679394 m World muIoni + 176 37.934469 cm 40.691939 cm -2.2788411 m 2.0116336 MeV 2.7728069 keV 1.3236061 mm 2.169263 m World muIoni + 177 37.957475 cm 40.717111 cm -2.2790229 m 2.0100577 MeV 226.12026 eV 386.43901 um 2.1696495 m World muIoni + 178 38.051116 cm 40.820224 cm -2.2797683 m 2.0045964 MeV 3.7212209 keV 1.5798267 mm 2.1712293 m World muIoni + 179 38.443857 cm 41.244387 cm -2.2828647 m 1.9864698 MeV 12.522213 keV 6.5579937 mm 2.1777873 m World muIoni + 180 38.718037 cm 41.538393 cm -2.285103 m 1.9749087 MeV 7.4321546 keV 4.6013848 mm 2.1823887 m World muIoni + 181 38.821918 cm 41.647336 cm -2.2859299 m 1.9701231 MeV 3.5959958 keV 1.7175094 mm 2.1841062 m World muIoni + 182 38.929353 cm 41.760571 cm -2.286772 m 1.963638 MeV 4.6646792 keV 1.7735823 mm 2.1858798 m World muIoni + 183 38.941002 cm 41.772882 cm -2.2868641 m 1.9595625 MeV 318.02572 eV 192.90128 um 2.1860727 m World muIoni + 184 39.060061 cm 41.900144 cm -2.2878168 m 1.9535768 MeV 5.9857526 keV 1.9861556 mm 2.1880588 m World muIoni + 185 39.137211 cm 41.982215 cm -2.2884317 m 1.9457744 MeV 5.0245416 keV 1.2833075 mm 2.1893421 m World muIoni + 186 39.16329 cm 42.010419 cm -2.2886435 m 1.9448903 MeV 884.11171 eV 438.67069 um 2.1897808 m World muIoni + 187 39.32973 cm 42.190357 cm -2.2899942 m 1.92877 MeV 10.290447 keV 2.7986714 mm 2.1925795 m World muIoni + 188 39.484624 cm 42.357897 cm -2.2912262 m 1.9177303 MeV 6.4957941 keV 2.5931191 mm 2.1951726 m World muIoni + 189 39.559301 cm 42.440768 cm -2.2918315 m 1.9137623 MeV 2.7102799 keV 1.2691762 mm 2.1964418 m World muIoni + 190 39.710675 cm 42.60948 cm -2.2930294 m 1.9065033 MeV 5.9099199 keV 2.5637789 mm 2.1990055 m World muIoni + 191 39.957846 cm 42.880051 cm -2.2949978 m 1.8977895 MeV 8.7138258 keV 4.1600543 mm 2.2031656 m World muIoni + 192 40.214641 cm 43.162299 cm -2.2970003 m 1.8813139 MeV 9.1851889 keV 4.3094825 mm 2.2074751 m World muIoni + 193 40.342586 cm 43.303506 cm -2.2980366 m 1.8762802 MeV 5.033725 keV 2.169097 mm 2.2096442 m World muIoni + 194 40.452611 cm 43.427169 cm -2.2989455 m 1.8733259 MeV 2.9542821 keV 1.8884148 mm 2.2115326 m World muIoni + 195 40.475504 cm 43.452691 cm -2.299137 m 1.8727794 MeV 546.52893 eV 392.68167 um 2.2119253 m World muIoni + 196 40.569806 cm 43.557837 cm -2.2999254 m 1.8645191 MeV 3.7513619 keV 1.6175519 mm 2.2135428 m World muIoni + 197 40.895014 cm 43.924931 cm -2.3026409 m 1.8459852 MeV 13.682582 keV 5.6061411 mm 2.219149 m World muIoni + 198 41.203199 cm 44.266869 cm -2.3052051 m 1.829304 MeV 12.367381 keV 5.269454 mm 2.2244184 m World muIoni + 199 41.665437 cm 44.796813 cm -2.3091068 m 1.8075129 MeV 19.025884 keV 8.0425713 mm 2.232461 m World muIoni + 200 41.740993 cm 44.883394 cm -2.3097479 m 1.8043246 MeV 1.9154038 keV 1.3158632 mm 2.2337768 m World muIoni + 201 41.809287 cm 44.9624 cm -2.3103283 m 1.7903137 MeV 2.1418801 keV 1.1947676 mm 2.2349716 m World muIoni + 202 42.002055 cm 45.185083 cm -2.3119419 m 1.7810556 MeV 7.8628681 keV 3.3584233 mm 2.23833 m World muIoni + 203 42.071779 cm 45.265672 cm -2.312537 m 1.7600416 MeV 3.7751739 keV 1.2205676 mm 2.2395506 m World muIoni + 204 42.160317 cm 45.371885 cm -2.3133105 m 1.7529836 MeV 5.9934121 keV 1.5844545 mm 2.2411351 m World muIoni + 205 42.406939 cm 45.670411 cm -2.3155086 m 1.7446446 MeV 8.3389766 keV 4.452739 mm 2.2455878 m World muIoni + 206 42.580174 cm 45.886326 cm -2.3171016 m 1.7204779 MeV 7.2288499 keV 3.1946035 mm 2.2487824 m World muIoni + 207 42.762132 cm 46.112438 cm -2.3187907 m 1.7124431 MeV 5.9394685 keV 3.3581416 mm 2.2521405 m World muIoni + 208 43.183004 cm 46.654897 cm -2.3228127 m 1.6940611 MeV 17.334072 keV 7.9577804 mm 2.2600983 m World muIoni + 209 43.409743 cm 46.922873 cm -2.3247962 m 1.6829445 MeV 9.2589016 keV 4.0323029 mm 2.2641306 m World muIoni + 210 43.528096 cm 47.06273 cm -2.3258161 m 1.6762989 MeV 5.0766302 keV 2.0969212 mm 2.2662275 m World muIoni + 211 43.584867 cm 47.130086 cm -2.3263171 m 1.6642213 MeV 1.5207497 keV 1.0133811 mm 2.2672409 m World muIoni + 212 43.599858 cm 47.148016 cm -2.3264513 m 1.6602529 MeV 1.4129045 keV 269.52498 um 2.2675105 m World muIoni + 213 43.673181 cm 47.232599 cm -2.327129 m 1.6546132 MeV 1.9226039 keV 1.3086451 mm 2.2688191 m World muIoni + 214 43.695731 cm 47.258794 cm -2.3273414 m 1.6461622 MeV 2.6723667 keV 405.68469 um 2.2692248 m World muIoni + 215 43.767811 cm 47.342103 cm -2.3280123 m 1.6422675 MeV 3.8947107 keV 1.2898533 mm 2.2705146 m World muIoni + 216 43.79339 cm 47.37196 cm -2.3282537 m 1.6401017 MeV 1.0429354 keV 461.38858 um 2.270976 m World muIoni + 217 43.827286 cm 47.411244 cm -2.3285734 m 1.637527 MeV 1.1759419 keV 609.42228 um 2.2715854 m World muIoni + 218 43.913435 cm 47.511167 cm -2.329379 m 1.630871 MeV 4.0445687 keV 1.5458735 mm 2.2731313 m World muIoni + 219 43.96432 cm 47.57027 cm -2.3298497 m 1.6281702 MeV 1.439715 keV 910.94536 um 2.2740423 m World muIoni + 220 44.309891 cm 47.970206 cm -2.3330511 m 1.6017635 MeV 15.861509 keV 6.1798272 mm 2.2802221 m World muIoni + 221 44.539757 cm 48.221761 cm -2.3350834 m 1.5876711 MeV 12.939786 keV 3.9678884 mm 2.28419 m World muIoni + 222 44.630229 cm 48.322471 cm -2.3358527 m 1.5808627 MeV 2.1512483 keV 1.55712 mm 2.2857471 m World muIoni + 223 44.636064 cm 48.328957 cm -2.3359018 m 1.5787 MeV 11.122625 eV 100.11957 um 2.2858472 m World muIoni + 224 44.700174 cm 48.400523 cm -2.3364448 m 1.5696425 MeV 4.9556665 keV 1.1036598 mm 2.2869509 m World muIoni + 225 44.787889 cm 48.499624 cm -2.3371899 m 1.5653563 MeV 3.2613644 keV 1.5188066 mm 2.2884697 m World muIoni + 226 45.784944 cm 49.635619 cm -2.345606 m 1.5174791 MeV 45.480634 keV 1.7303974 cm 2.3057737 m World muIoni + 227 45.800482 cm 49.653638 cm -2.3457337 m 1.51629 MeV 193.53903 eV 270.02289 um 2.3060437 m World muIoni + 228 45.850025 cm 49.710982 cm -2.34614 m 1.5136581 MeV 1.5799451 keV 859.89827 um 2.3069036 m World muIoni + 229 46.190012 cm 50.102075 cm -2.3488744 m 1.4994574 MeV 12.842316 keV 5.85972 mm 2.3127633 m World muIoni + 230 46.250937 cm 50.175637 cm -2.3493708 m 1.4934458 MeV 1.9887769 keV 1.0764491 mm 2.3138398 m World muIoni + 231 46.33515 cm 50.277082 cm -2.3500569 m 1.4812893 MeV 5.4126192 keV 1.4862744 mm 2.315326 m World muIoni + 232 46.43685 cm 50.399448 cm -2.3509032 m 1.4658161 MeV 4.993539 keV 1.8022289 mm 2.3171283 m World muIoni + 233 46.460714 cm 50.428508 cm -2.3511039 m 1.4628664 MeV 1.4457994 keV 426.2505 um 2.3175545 m World muIoni + 234 46.799535 cm 50.838486 cm -2.3539541 m 1.4459017 MeV 15.288957 keV 6.0347011 mm 2.3235892 m World muIoni + 235 47.008005 cm 51.088926 cm -2.3557135 m 1.4376996 MeV 8.2021225 keV 3.7033317 mm 2.3272925 m World muIoni + 236 47.073512 cm 51.171613 cm -2.3562853 m 1.4337674 MeV 3.9322034 keV 1.1999213 mm 2.3284925 m World muIoni + 237 47.459039 cm 51.656698 cm -2.3595987 m 1.4120034 MeV 20.301333 keV 7.027248 mm 2.3355197 m World muIoni + 238 47.493593 cm 51.698961 cm -2.3598888 m 1.4056763 MeV 3.0822869 keV 618.1888 um 2.3361379 m World muIoni + 239 47.570574 cm 51.793116 cm -2.3605303 m 1.4004104 MeV 3.2425232 keV 1.3750276 mm 2.3375129 m World muIoni + 240 47.632438 cm 51.868656 cm -2.3610522 m 1.3963863 MeV 2.8292837 keV 1.1071346 mm 2.3386201 m World muIoni + 241 47.951659 cm 52.25968 cm -2.363722 m 1.3767939 MeV 18.59966 keV 5.7108359 mm 2.3443309 m World muIoni + 242 48.372372 cm 52.766333 cm -2.3671587 m 1.3471211 MeV 27.642711 keV 7.4291994 mm 2.3517601 m World muIoni + 243 48.407875 cm 52.809496 cm -2.367439 m 1.3364099 MeV 2.0519787 keV 625.24186 um 2.3523853 m World muIoni + 244 48.599438 cm 53.039901 cm -2.368928 m 1.317948 MeV 14.432465 keV 3.3461073 mm 2.3557314 m World muIoni + 245 48.761926 cm 53.237448 cm -2.3702532 m 1.3052322 MeV 9.1820558 keV 2.8809079 mm 2.3586123 m World muIoni + 246 48.767094 cm 53.243786 cm -2.3702943 m 1.3023998 MeV 346.95933 eV 91.523012 um 2.3587039 m World muIoni + 247 48.860678 cm 53.357821 cm -2.3710358 m 1.2974721 MeV 4.9277411 keV 1.6510894 mm 2.360355 m World muIoni + 248 49.17185 cm 53.737273 cm -2.3735365 m 1.2819994 MeV 14.169296 keV 5.5082108 mm 2.3658632 m World muIoni + 249 49.202431 cm 53.775987 cm -2.3737817 m 1.2805176 MeV 1.4817428 keV 550.9097 um 2.3664141 m World muIoni + 250 49.376812 cm 53.996449 cm -2.3751799 m 1.2702544 MeV 10.263244 keV 3.1396009 mm 2.3695537 m World muIoni + 251 49.46318 cm 54.108768 cm -2.3758856 m 1.2540053 MeV 5.3753254 keV 1.582936 mm 2.3711366 m World muIoni + 252 49.505368 cm 54.164068 cm -2.3762223 m 1.2481573 MeV 1.7036435 keV 772.73352 um 2.3719094 m World muIoni + 253 49.584962 cm 54.270409 cm -2.3768517 m 1.2429857 MeV 5.1716093 keV 1.469983 mm 2.3733793 m World muIoni + 254 50.405624 cm 55.347291 cm -2.383088 m 1.1965819 MeV 46.403867 keV 1.4911289 cm 2.3882906 m World muIoni + 255 50.410258 cm 55.353375 cm -2.3831243 m 1.1963403 MeV 241.55726 eV 84.675643 um 2.3883753 m World muIoni + 256 50.434768 cm 55.385858 cm -2.383316 m 1.195284 MeV 1.0562661 keV 449.79417 um 2.3888251 m World muIoni + 257 50.45951 cm 55.418643 cm -2.3835091 m 1.194238 MeV 1.0460136 keV 453.85969 um 2.389279 m World muIoni + 258 50.510225 cm 55.485864 cm -2.3839046 m 1.1897236 MeV 2.2837788 keV 930.35568 um 2.3902093 m World muIoni + 259 50.582587 cm 55.582808 cm -2.3844659 m 1.1829163 MeV 5.7772741 keV 1.3336118 mm 2.3915429 m World muIoni + 260 50.794 cm 55.865636 cm -2.3860948 m 1.162464 MeV 19.077482 keV 3.889003 mm 2.3954319 m World muIoni + 261 50.879816 cm 55.982689 cm -2.3867805 m 1.1544207 MeV 6.5554416 keV 1.6052544 mm 2.3970372 m World muIoni + 262 50.945956 cm 56.074245 cm -2.3873468 m 1.1511241 MeV 3.2966558 keV 1.2636197 mm 2.3983008 m World muIoni + 263 50.992199 cm 56.138753 cm -2.3877586 m 1.1478879 MeV 3.2361391 keV 894.16827 um 2.399195 m World muIoni + 264 51.056471 cm 56.228194 cm -2.3883417 m 1.1412686 MeV 5.2494099 keV 1.2462391 mm 2.4004412 m World muIoni + 265 51.114623 cm 56.309296 cm -2.3888698 m 1.1345636 MeV 4.0717036 keV 1.1290957 mm 2.4015703 m World muIoni + 266 51.150849 cm 56.359273 cm -2.3891949 m 1.1307262 MeV 3.8374217 keV 697.63644 um 2.4022679 m World muIoni + 267 51.182895 cm 56.403497 cm -2.3894777 m 1.129346 MeV 1.3801662 keV 615.04322 um 2.402883 m World muIoni + 268 51.255478 cm 56.503652 cm -2.3901197 m 1.1126459 MeV 3.9603735 keV 1.3936311 mm 2.4042766 m World muIoni + 269 51.278698 cm 56.534859 cm -2.3903308 m 1.1112174 MeV 1.4284327 keV 442.58577 um 2.4047192 m World muIoni + 270 51.360582 cm 56.644465 cm -2.3910756 m 1.1053178 MeV 5.8996093 keV 1.5577841 mm 2.406277 m World muIoni + 271 51.430885 cm 56.738247 cm -2.3917006 m 1.0970882 MeV 6.1320263 keV 1.3283113 mm 2.4076053 m World muIoni + 272 51.439099 cm 56.749092 cm -2.3917698 m 1.0947526 MeV 255.81974 eV 152.62594 um 2.4077579 m World muIoni + 273 51.589502 cm 56.946336 cm -2.393033 m 1.0824344 MeV 8.9057484 keV 2.7837727 mm 2.4105417 m World muIoni + 274 51.727007 cm 57.132579 cm -2.3941836 m 1.074014 MeV 8.4203903 keV 2.5853417 mm 2.413127 m World muIoni + 275 51.782808 cm 57.208233 cm -2.3946386 m 1.0691599 MeV 3.7936551 keV 1.044404 mm 2.4141714 m World muIoni + 276 51.986212 cm 57.481179 cm -2.3963074 m 1.0531605 MeV 13.378731 keV 3.7914074 mm 2.4179628 m World muIoni + 277 52.003798 cm 57.503044 cm -2.396447 m 1.0499244 MeV 1.6032604 keV 313.39922 um 2.4182762 m World muIoni + 278 52.181287 cm 57.722716 cm -2.3978556 m 1.0380554 MeV 8.4892652 keV 3.1561795 mm 2.4214324 m World muIoni + 279 52.25969 cm 57.819638 cm -2.3984711 m 1.0329526 MeV 5.1028001 keV 1.3903378 mm 2.4228228 m World muIoni + 280 52.281544 cm 57.846189 cm -2.3986426 m 1.0311543 MeV 794.71688 eV 384.25484 um 2.423207 m World muIoni + 281 52.415864 cm 58.009841 cm -2.3996963 m 1.0200236 MeV 8.6480431 keV 2.3650349 mm 2.4255721 m World muIoni + 282 52.503455 cm 58.116615 cm -2.4003193 m 1.0097218 MeV 7.6272211 keV 1.5164114 mm 2.4270885 m World muIoni + 283 52.524218 cm 58.142616 cm -2.400445 m 1.0073882 MeV 637.16534 eV 355.67785 um 2.4274441 m World muIoni + 284 52.699062 cm 58.361321 cm -2.4014996 m 994.99199 keV 11.361536 keV 2.9922937 mm 2.4304364 m World muIoni + 285 53.000356 cm 58.741348 cm -2.4033702 m 971.25976 keV 18.364008 keV 5.1987501 mm 2.4356352 m World muIoni + 286 53.073401 cm 58.829409 cm -2.4038309 m 956.29531 keV 6.7132503 keV 1.2334427 mm 2.4368686 m World muIoni + 287 53.093451 cm 58.853191 cm -2.4039556 m 953.59304 keV 1.2667669 keV 335.1155 um 2.4372037 m World muIoni + 288 53.108602 cm 58.871371 cm -2.4040502 m 948.37215 keV 875.28519 eV 254.86398 um 2.4374586 m World muIoni + 289 53.130892 cm 58.898071 cm -2.4041906 m 945.2901 keV 1.6540287 keV 375.08066 um 2.4378337 m World muIoni + 290 53.242068 cm 59.031379 cm -2.4048845 m 938.87972 keV 6.4103808 keV 1.8694883 mm 2.4397032 m World muIoni + 291 53.248877 cm 59.039448 cm -2.4049253 m 937.71357 keV 142.10189 eV 113.20807 um 2.4398164 m World muIoni + 292 53.308554 cm 59.110365 cm -2.4052772 m 928.78612 keV 5.2657139 keV 991.41954 um 2.4408078 m World muIoni + 293 53.347874 cm 59.15812 cm -2.4055187 m 923.60456 keV 3.4315848 keV 664.06299 um 2.4414719 m World muIoni + 294 53.385801 cm 59.203664 cm -2.4057515 m 919.56413 keV 1.9642513 keV 636.77822 um 2.4421086 m World muIoni + 295 53.416905 cm 59.241711 cm -2.4059442 m 916.12667 keV 2.0000813 keV 527.85158 um 2.4426365 m World muIoni + 296 53.433051 cm 59.260937 cm -2.406044 m 911.38495 keV 1.1207593 keV 270.19574 um 2.4429067 m World muIoni + 297 53.454034 cm 59.286327 cm -2.4061742 m 909.03128 keV 1.3526992 keV 354.18307 um 2.4432609 m World muIoni + 298 53.487351 cm 59.326796 cm -2.4063805 m 906.44316 keV 2.5881224 keV 563.33798 um 2.4438242 m World muIoni + 299 53.554344 cm 59.407955 cm -2.4067907 m 899.73243 keV 4.7412912 keV 1.1295134 mm 2.4449537 m World muIoni + 300 53.67337 cm 59.55245 cm -2.4075114 m 884.20387 keV 5.8306628 keV 2.0060964 mm 2.4469598 m World muIoni + 301 53.886813 cm 59.81905 cm -2.4088495 m 865.64287 keV 17.373486 keV 3.6684228 mm 2.4506282 m World muIoni + 302 53.930694 cm 59.872459 cm -2.4091226 m 860.77819 keV 4.8646771 keV 743.23615 um 2.4513715 m World muIoni + 303 54.294187 cm 60.316829 cm -2.4113687 m 836.35227 keV 23.17425 keV 6.1662727 mm 2.4575378 m World muIoni + 304 54.312168 cm 60.339589 cm -2.4114762 m 833.55442 keV 1.5922753 keV 309.32269 um 2.4578471 m World muIoni + 305 54.314761 cm 60.342824 cm -2.4114916 m 832.28665 keV 118.93579 eV 44.234272 um 2.4578913 m World muIoni + 306 54.444798 cm 60.501827 cm -2.4124085 m 818.9763 keV 11.116972 keV 2.2516464 mm 2.460143 m World muIoni + 307 54.556091 cm 60.634727 cm -2.4132576 m 808.83824 keV 8.6759795 keV 1.9303575 mm 2.4620733 m World muIoni + 308 54.573798 cm 60.655717 cm -2.4133943 m 806.51754 keV 1.0334306 keV 306.75732 um 2.4623801 m World muIoni + 309 54.597487 cm 60.683855 cm -2.4135757 m 805.03856 keV 1.478977 keV 410.12709 um 2.4627902 m World muIoni + 310 54.752691 cm 60.867958 cm -2.4147642 m 791.68763 keV 11.001782 keV 2.6856038 mm 2.4654758 m World muIoni + 311 54.771799 cm 60.891056 cm -2.4149138 m 786.05733 keV 2.4422959 keV 335.00893 um 2.4658108 m World muIoni + 312 54.933009 cm 61.086081 cm -2.4161666 m 776.44041 keV 9.6169171 keV 2.8237847 mm 2.4686346 m World muIoni + 313 54.961731 cm 61.119801 cm -2.4163809 m 770.94278 keV 1.7401935 keV 492.06687 um 2.4691267 m World muIoni + 314 55.286274 cm 61.492574 cm -2.4187269 m 742.90339 keV 25.436058 keV 5.4724972 mm 2.4745992 m World muIoni + 315 55.385117 cm 61.604945 cm -2.4194351 m 735.05651 keV 7.8468872 keV 1.6558084 mm 2.476255 m World muIoni + 316 55.625911 cm 61.877653 cm -2.4211853 m 707.12211 keV 26.541668 keV 4.0379352 mm 2.4802929 m World muIoni + 317 55.644255 cm 61.898943 cm -2.4213259 m 706.31927 keV 802.84315 eV 314.24474 um 2.4806072 m World muIoni + 318 55.794564 cm 62.073547 cm -2.4224856 m 693.7606 keV 12.558665 keV 2.5796765 mm 2.4831868 m World muIoni + 319 55.83781 cm 62.123945 cm -2.4228059 m 690.74674 keV 3.0138567 keV 737.30881 um 2.4839241 m World muIoni + 320 55.865662 cm 62.15627 cm -2.4230167 m 686.98726 keV 2.1291579 keV 475.95239 um 2.4844001 m World muIoni + 321 55.911273 cm 62.209659 cm -2.4233689 m 680.96567 keV 4.2682112 keV 785.57624 um 2.4851857 m World muIoni + 322 55.961978 cm 62.268364 cm -2.4237545 m 675.61002 keV 3.2067009 keV 866.30996 um 2.486052 m World muIoni + 323 55.98911 cm 62.29902 cm -2.4239586 m 672.88729 keV 1.6557508 keV 457.42553 um 2.4865094 m World muIoni + 324 56.044145 cm 62.360831 cm -2.4243713 m 666.53054 keV 4.0673165 keV 924.85 um 2.4874342 m World muIoni + 325 56.053285 cm 62.371116 cm -2.4244405 m 664.86306 keV 503.75905 eV 154.02421 um 2.4875883 m World muIoni + 326 56.207046 cm 62.543129 cm -2.4256023 m 646.75049 keV 16.051501 keV 2.5835878 mm 2.4901719 m World muIoni + 327 56.270897 cm 62.616196 cm -2.4260772 m 639.87329 keV 5.3721401 keV 1.0803919 mm 2.4912523 m World muIoni + 328 56.284897 cm 62.632264 cm -2.4261802 m 639.66154 keV 211.75164 eV 236.6895 um 2.4914889 m World muIoni + 329 56.28905 cm 62.637057 cm -2.4262112 m 638.31926 keV 265.23182 eV 70.57172 um 2.4915595 m World muIoni + 330 56.351866 cm 62.709596 cm -2.4266808 m 623.33353 keV 4.9376715 keV 1.0684107 mm 2.4926279 m World muIoni + 331 56.393145 cm 62.757675 cm -2.4269802 m 617.18044 keV 4.647359 keV 700.8449 um 2.4933288 m World muIoni + 332 56.401809 cm 62.767323 cm -2.4270456 m 610.99329 keV 730.739 eV 145.41651 um 2.4934742 m World muIoni + 333 56.407107 cm 62.772591 cm -2.4270877 m 609.20139 keV 321.3322 eV 85.727437 um 2.4935599 m World muIoni + 334 56.454556 cm 62.819443 cm -2.4274634 m 601.15298 keV 6.7915724 keV 765.42755 um 2.4943253 m World muIoni + 335 56.472986 cm 62.83753 cm -2.4276068 m 597.94072 keV 1.9361264 keV 295.35598 um 2.4946207 m World muIoni + 336 56.473915 cm 62.838451 cm -2.427614 m 597.94072 keV 0 eV 14.941436 um 2.4946356 m World muIoni + 337 56.475829 cm 62.840348 cm -2.4276288 m 596.44414 keV 152.8833 eV 30.777444 um 2.4946664 m World muIoni + 338 56.633801 cm 62.998 cm -2.4288566 m 574.7121 keV 19.122397 keV 2.5476974 mm 2.4972141 m World muIoni + 339 56.672986 cm 63.037712 cm -2.4291542 m 568.45524 keV 3.4966343 keV 632.3366 um 2.4978465 m World muIoni + 340 56.698537 cm 63.064242 cm -2.4293483 m 565.02874 keV 2.289638 keV 416.32372 um 2.4982628 m World muIoni + 341 56.714658 cm 63.080582 cm -2.4294718 m 561.69918 keV 2.2005929 keV 260.66775 um 2.4985234 m World muIoni + 342 56.752355 cm 63.118626 cm -2.4297601 m 559.05239 keV 2.646782 keV 608.27226 um 2.4991317 m World muIoni + 343 56.809432 cm 63.175126 cm -2.4301921 m 543.23816 keV 5.8403494 keV 911.97732 um 2.5000437 m World muIoni + 344 56.839683 cm 63.204221 cm -2.4304305 m 538.0977 keV 3.3464408 keV 482.74813 um 2.5005264 m World muIoni + 345 56.945816 cm 63.309875 cm -2.4312881 m 524.20263 keV 10.080473 keV 1.7259597 mm 2.5022524 m World muIoni + 346 56.958952 cm 63.323429 cm -2.431395 m 520.18052 keV 2.0350438 keV 216.93465 um 2.5024693 m World muIoni + 347 56.986521 cm 63.351736 cm -2.4316197 m 516.81649 keV 1.7534603 keV 454.58063 um 2.5029239 m World muIoni + 348 57.062991 cm 63.427135 cm -2.4322505 m 507.01763 keV 7.7751223 keV 1.2455812 mm 2.5041695 m World muIoni + 349 57.208604 cm 63.568466 cm -2.4334629 m 489.92195 keV 16.069088 keV 2.3643715 mm 2.5065339 m World muIoni + 350 57.311933 cm 63.667703 cm -2.4343465 m 473.96803 keV 12.154614 keV 1.6835431 mm 2.5082174 m World muIoni + 351 57.511428 cm 63.870237 cm -2.4361509 m 446.63608 keV 27.331955 keV 3.3685293 mm 2.5115859 m World muIoni + 352 57.614789 cm 63.974005 cm -2.4370187 m 432.45388 keV 13.026057 keV 1.7027893 mm 2.5132887 m World muIoni + 353 57.651209 cm 64.012536 cm -2.437302 m 429.45206 keV 3.0018213 keV 601.17737 um 2.5138899 m World muIoni + 354 57.65252 cm 64.013929 cm -2.437312 m 428.02744 keV 68.507578 eV 21.560263 um 2.5139115 m World muIoni + 355 57.657151 cm 64.018803 cm -2.437347 m 425.20996 keV 683.09991 eV 75.794912 um 2.5139873 m World muIoni + 356 57.672394 cm 64.035105 cm -2.4374645 m 422.02012 keV 939.27424 eV 252.22583 um 2.5142395 m World muIoni + 357 57.719912 cm 64.085458 cm -2.4378339 m 418.79006 keV 3.2300625 keV 784.79515 um 2.5150243 m World muIoni + 358 57.744967 cm 64.112231 cm -2.4380493 m 412.33425 keV 3.9052121 keV 425.32299 um 2.5154496 m World muIoni + 359 57.795579 cm 64.16398 cm -2.4384681 m 401.41599 keV 9.3630595 keV 836.35207 um 2.516286 m World muIoni + 360 57.827542 cm 64.196712 cm -2.4387295 m 394.21811 keV 2.996335 keV 526.94361 um 2.5168129 m World muIoni + 361 57.909623 cm 64.28326 cm -2.4393957 m 383.04667 keV 9.7642031 keV 1.3665246 mm 2.5181794 m World muIoni + 362 57.99182 cm 64.36601 cm -2.44002 m 366.13553 keV 11.340465 keV 1.3231902 mm 2.5195026 m World muIoni + 363 58.062895 cm 64.435311 cm -2.4405798 m 355.87184 keV 10.263692 keV 1.13986 mm 2.5206425 m World muIoni + 364 58.064518 cm 64.436782 cm -2.4405915 m 355.74836 keV 123.47127 eV 24.836555 um 2.5206673 m World muIoni + 365 58.171322 cm 64.533436 cm -2.4413618 m 336.68725 keV 17.583338 keV 1.6340121 mm 2.5223013 m World muIoni + 366 58.17773 cm 64.539372 cm -2.4414106 m 333.55571 keV 1.3422973 keV 100.08509 um 2.5224014 m World muIoni + 367 58.196465 cm 64.557045 cm -2.4415525 m 330.15528 keV 2.2934785 keV 294.06961 um 2.5226955 m World muIoni + 368 58.203405 cm 64.5636 cm -2.4416037 m 328.46517 keV 242.28053 eV 108.29619 um 2.5228038 m World muIoni + 369 58.250011 cm 64.607613 cm -2.441946 m 322.61058 keV 4.1580054 keV 726.81971 um 2.5235306 m World muIoni + 370 58.304404 cm 64.660989 cm -2.4423469 m 313.05286 keV 7.9930998 keV 861.26542 um 2.5243919 m World muIoni + 371 58.404749 cm 64.756457 cm -2.4431024 m 293.66789 keV 17.832343 keV 1.5782804 mm 2.5259701 m World muIoni + 372 58.439463 cm 64.79055 cm -2.4433296 m 286.64702 keV 4.9678771 keV 537.06279 um 2.5265072 m World muIoni + 373 58.470956 cm 64.822985 cm -2.4435387 m 280.88711 keV 4.6894011 keV 498.15386 um 2.5270054 m World muIoni + 374 58.488916 cm 64.842633 cm -2.4436726 m 276.07425 keV 3.6915983 keV 298.01687 um 2.5273034 m World muIoni + 375 58.511994 cm 64.867668 cm -2.4438431 m 272.52793 keV 1.8709963 keV 380.80946 um 2.5276842 m World muIoni + 376 58.541316 cm 64.89834 cm -2.4440566 m 265.02052 keV 6.1476955 keV 475.07151 um 2.5281593 m World muIoni + 377 58.566228 cm 64.924505 cm -2.4442399 m 260.2935 keV 3.3200003 keV 405.19178 um 2.5285644 m World muIoni + 378 58.571901 cm 64.930408 cm -2.4442837 m 256.62162 keV 512.19994 eV 92.856088 um 2.5286573 m World muIoni + 379 58.575719 cm 64.934395 cm -2.4443126 m 254.90202 keV 662.79131 eV 62.27067 um 2.5287196 m World muIoni + 380 58.593629 cm 64.953025 cm -2.4444465 m 247.32871 keV 2.9546122 keV 291.11256 um 2.5290107 m World muIoni + 381 58.609756 cm 64.970386 cm -2.4445703 m 242.44315 keV 3.8904312 keV 267.32782 um 2.529278 m World muIoni + 382 58.630672 cm 64.993926 cm -2.4447362 m 232.76732 keV 6.5578008 keV 355.99981 um 2.529634 m World muIoni + 383 58.652314 cm 65.019321 cm -2.4449026 m 224.80929 keV 6.6169711 keV 372.85984 um 2.5300069 m World muIoni + 384 58.660359 cm 65.028832 cm -2.4449645 m 222.41188 keV 1.2221626 keV 139.12066 um 2.530146 m World muIoni + 385 58.661929 cm 65.030699 cm -2.4449765 m 221.25228 keV 23.835666 eV 27.188989 um 2.5301732 m World muIoni + 386 58.679574 cm 65.051526 cm -2.4451099 m 216.69313 keV 3.1500759 keV 303.88231 um 2.5304771 m World muIoni + 387 58.747514 cm 65.137094 cm -2.445692 m 203.5798 keV 11.675231 keV 1.2387204 mm 2.5317158 m World muIoni + 388 58.76281 cm 65.156534 cm -2.4458113 m 196.59669 keV 4.0064226 keV 274.67367 um 2.5319905 m World muIoni + 389 58.770678 cm 65.166992 cm -2.4458786 m 193.89779 keV 1.564926 keV 147.15579 um 2.5321376 m World muIoni + 390 58.778824 cm 65.177934 cm -2.445949 m 191.48797 keV 1.1701751 keV 153.55721 um 2.5322912 m World muIoni + 391 58.78602 cm 65.187254 cm -2.4460111 m 187.08849 keV 2.9155534 keV 133.08495 um 2.5324243 m World muIoni + 392 58.786853 cm 65.188319 cm -2.4460182 m 181.16452 keV 3.2371464 keV 15.26821 um 2.5324395 m World muIoni + 393 58.798669 cm 65.203518 cm -2.4461184 m 177.64879 keV 2.1689627 keV 217.04814 um 2.5326566 m World muIoni + 394 58.806922 cm 65.214201 cm -2.4461905 m 173.94786 keV 2.4530858 keV 153.05644 um 2.5328096 m World muIoni + 395 58.879833 cm 65.309336 cm -2.4468382 m 153.51607 keV 20.431793 keV 1.3639045 mm 2.5341735 m World muIoni + 396 58.88644 cm 65.317589 cm -2.4468942 m 150.29224 keV 1.8924879 keV 119.6528 um 2.5342932 m World muIoni + 397 58.910078 cm 65.349767 cm -2.4470872 m 141.04426 keV 6.7143966 keV 443.65751 um 2.5347368 m World muIoni + 398 58.953942 cm 65.410946 cm -2.447394 m 126.06285 keV 13.987047 keV 813.6505 um 2.5355505 m World muIoni + 399 58.989168 cm 65.467051 cm -2.4476417 m 104.8349 keV 19.768605 keV 707.94281 um 2.5362584 m World muIoni + 400 58.989907 cm 65.468291 cm -2.4476462 m 103.63789 keV 129.54901 eV 15.118104 um 2.5362736 m World muIoni + 401 58.992334 cm 65.472409 cm -2.4476612 m 100.81673 keV 1.3094983 keV 50.10119 um 2.5363237 m World muIoni + 402 58.993371 cm 65.474151 cm -2.4476675 m 99.596536 keV 150.5293 eV 21.225395 um 2.5363449 m World muIoni + 403 58.998703 cm 65.482734 cm -2.4476978 m 94.885483 keV 3.0273503 keV 105.48263 um 2.5364504 m World muIoni + 404 59.004101 cm 65.491156 cm -2.4477275 m 90.058768 keV 3.6507529 keV 104.36196 um 2.5365547 m World muIoni + 405 59.032813 cm 65.535053 cm -2.4478891 m 74.747961 keV 15.310806 keV 549.61696 um 2.5371043 m World muIoni + 406 59.050221 cm 65.564912 cm -2.4479595 m 60.741554 keV 13.003458 keV 353.14098 um 2.5374575 m World muIoni + 407 59.066734 cm 65.596039 cm -2.4480581 m 49.335945 keV 11.405608 keV 366.61183 um 2.5378241 m World muIoni + 408 59.082458 cm 65.621694 cm -2.4481299 m 30.930861 keV 18.405085 keV 310.14337 um 2.5381342 m World muIoni + 409 59.092657 cm 65.64158 cm -2.448185 m 10.73507 keV 20.19579 keV 231.29464 um 2.5383655 m World muIoni + 410 59.100784 cm 65.652809 cm -2.4482191 m 8.9016834 keV 1.833387 keV 146.86238 um 2.5385124 m World muIoni + 411 59.101394 cm 65.651498 cm -2.4481892 m 0 eV 8.9016834 keV 133.04419 um 2.5386454 m World muIoni + 412 59.101394 cm 65.651498 cm -2.4481892 m 0 eV 0 eV 0 fm 2.5386454 m World Scintillation +Track (trackID 21, parentID 3) is processed with stopping code 2 NULL returned from G4StackManager. Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.067303267021(mm),0.92704034266933(mm),79.106337800492(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.965274353883(mm),0.013195021819665(mm),78.771674289274(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10390,7 +10521,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.021654(mm),0.82906858(mm),79.114387(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.548292(mm),-2.7078566(mm),78.845199(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10399,7 +10530,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.591704(mm),-2.0778164(mm),78.661218(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.679166(mm),-2.668149(mm),79.174777(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10408,7 +10539,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-11.932847(mm),0.42018631(mm),79.130046(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.977082(mm),-0.50529085(mm),78.240611(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10417,7 +10548,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.664602(mm),-2.1539318(mm),79.001018(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-10.973501(mm),-0.50218864(mm),79.299205(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10426,7 +10557,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.961199(mm),1.3948111(mm),78.243412(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.530258(mm),0.084162658(mm),78.319399(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10435,7 +10566,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.065784(mm),2.64495(mm),78.401298(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.609123(mm),-0.14278104(mm),78.305492(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10444,7 +10575,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.684334(mm),0.57514363(mm),78.468558(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.845498(mm),-0.67101518(mm),78.44014(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10453,7 +10584,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.974378(mm),-3.8038149(mm),78.593742(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.413563(mm),2.3347325(mm),78.516302(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10462,7 +10593,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.710568(mm),2.9880188(mm),78.816586(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.096302(mm),-0.04654138(mm),79.277552(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10471,7 +10602,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-16.594086(mm),-1.7331193(mm),78.308144(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-13.970916(mm),2.6262428(mm),78.77068(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10480,12 +10611,1219 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.854854(mm),-2.8777166(mm),78.614817(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.811286(mm),2.7957821(mm),78.446173(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 NULL returned from G4StackManager. Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.522753(mm),3.1017037(mm),78.673376(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.488532(mm),1.0799684(mm),78.326756(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.480831(mm),-1.3308495(mm),79.386076(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.798036(mm),-2.2954243(mm),78.272182(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.743896(mm),-1.7574935(mm),78.634382(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.585831(mm),-1.3191226(mm),78.662253(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.872164(mm),3.756722(mm),78.964419(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.669154(mm),-2.424493(mm),79.000215(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.848837(mm),-2.4596935(mm),78.792205(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.382785(mm),2.2759842(mm),78.874383(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.694923(mm),1.7703225(mm),78.290364(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.393104(mm),3.6024688(mm),78.519909(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.993035(mm),3.6838632(mm),78.943106(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.305302(mm),2.3189984(mm),79.064372(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.803653(mm),1.8391495(mm),78.623846(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.91016(mm),-0.38299468(mm),78.781392(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.562955(mm),-1.5993899(mm),79.195268(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.760742(mm),-0.18673352(mm),78.807739(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.219419(mm),1.6932993(mm),78.550535(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.572249(mm),1.7138775(mm),79.369956(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.504247(mm),-0.33314679(mm),78.323985(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.664228(mm),3.9186532(mm),78.824757(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.198105(mm),3.6797884(mm),78.73062(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.235238(mm),3.3743249(mm),78.547745(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.473294(mm),-1.9602098(mm),78.50577(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.384617(mm),3.4903049(mm),78.697733(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.277723(mm),1.2948928(mm),78.716581(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.690327(mm),2.2722809(mm),78.996482(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.017579(mm),2.2185253(mm),78.938779(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.633084(mm),-1.0641751(mm),78.830248(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.673734(mm),-3.0467015(mm),78.999408(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 + +********************************************************************************************************* +* G4Track Information: Particle = pi+, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -8.54 mm -2.51 mm 5.53 cm 36.9 MeV 0 eV 0 fm 0 fm Target initStep + 1 -8.7404981 mm -2.4575918 mm 5.409135 cm 31.236979 MeV 5.6610319 MeV 1.2856033 mm 1.2856033 mm Target hIoni + 2 -8.9152916 mm -2.2731251 mm 5.3117625 cm 26.638279 MeV 4.5987006 MeV 1.0147425 mm 2.3003458 mm Target hIoni + 3 -8.9310173 mm -2.1030535 mm 5.23281 cm 22.406477 MeV 4.2318013 MeV 814.92992 um 3.1152757 mm Target hIoni + 4 -8.9023072 mm -1.9470457 mm 5.1705408 cm 18.481537 MeV 3.92494 MeV 648.70971 um 3.7639854 mm Target hIoni + 5 -8.9309315 mm -1.8654264 mm 5.1207243 cm 15.686682 MeV 2.7948556 MeV 510.97046 um 4.2749559 mm Target hIoni + 6 -8.924491 mm -1.899156 mm 5.0790416 cm 12.682446 MeV 3.0042355 MeV 423.16608 um 4.698122 mm Target hIoni + 7 -8.8994975 mm -1.9030502 mm 5.0457223 cm 9.6987621 MeV 2.9836841 MeV 338.79469 um 5.0369167 mm Target hIoni + 8 -8.869121 mm -1.8259478 mm 5.0210565 cm 6.9351584 MeV 2.7636037 MeV 264.84786 um 5.3017645 mm Target hIoni + 9 -8.8968644 mm -1.7942043 mm 5.0017767 cm 3.8783938 MeV 3.0567646 MeV 202.39727 um 5.5041618 mm Target hIoni + 10 -8.9710806 mm -1.7666786 mm 4.9954988 cm 647.44061 keV 3.2309532 MeV 119.63784 um 5.6237996 mm Target hIoni + 11 -8.9756015 mm -1.7686542 mm 4.9955191 cm 21.504313 keV 625.9363 keV 7.0242198 um 5.6308238 mm Target hIoni + 12 -8.9756179 mm -1.7686656 mm 4.995519 cm 0 eV 21.504313 keV 140.27023 nm 5.6309641 mm Target hIoni + 13 -8.9756179 mm -1.7686656 mm 4.995519 cm 0 eV 0 eV 0 fm 5.6309641 mm Target Scintillation +Track (trackID 4, parentID 1) is processed with stopping code 2 + +********************************************************************************************************* +* G4Track Information: Particle = mu+, Track ID = 14, Parent ID = 4 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -8.98 mm -1.77 mm 5 cm 4.12 MeV 0 eV 0 fm 0 fm Target initStep + 1 -9.0479146 mm -1.8203102 mm 4.9871153 cm 1.3380193 MeV 2.7817934 MeV 143.92583 um 143.92583 um Target muIoni + 2 -9.0519297 mm -1.8288461 mm 4.9854451 cm 170.92377 keV 1.1670955 MeV 25.343099 um 169.26893 um Target muIoni + 3 -9.0515555 mm -1.8286609 mm 4.9853943 cm 59.77007 keV 111.1537 keV 1.2049432 um 170.47388 um Target muIoni + 4 -9.0515672 mm -1.8286384 mm 4.9854063 cm 0 eV 59.77007 keV 329.78151 nm 170.80366 um Target muIoni + 5 -9.0515672 mm -1.8286384 mm 4.9854063 cm 0 eV 0 eV 0 fm 170.80366 um Target Scintillation +Track (trackID 14, parentID 4) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.072752(mm),-0.29256147(mm),78.92905(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.414432(mm),1.3275452(mm),79.221457(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.13121(mm),2.5871755(mm),78.566088(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.593034(mm),-1.7874549(mm),79.366291(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.233108(mm),2.9203675(mm),79.077102(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.641149(mm),2.7523365(mm),78.828826(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.143596(mm),-2.5827279(mm),78.563904(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.712656(mm),3.3847476(mm),78.816218(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.026955(mm),-2.9457872(mm),78.408144(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.536365(mm),2.6266546(mm),78.847303(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.854144(mm),1.1615607(mm),78.79127(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.772247(mm),3.8773224(mm),78.80571(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.173042(mm),0.65289694(mm),79.26402(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.417724(mm),3.7081672(mm),78.868222(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.525952(mm),2.5373495(mm),78.320158(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.289108(mm),-2.6469304(mm),78.714574(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.581152(mm),0.68358039(mm),78.663078(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.972996(mm),3.7008711(mm),78.770313(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.775672(mm),-1.6822439(mm),78.452452(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.78745(mm),3.4775766(mm),78.626702(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.922292(mm),-0.077092729(mm),78.426599(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.189106(mm),-0.8212496(mm),78.908534(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.013586(mm),-0.96443897(mm),78.234175(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.200353(mm),1.6333208(mm),79.082877(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.219835(mm),1.27052(mm),79.079442(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.858407(mm),-3.0715204(mm),78.437864(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.595182(mm),-0.12963233(mm),78.307951(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.477016(mm),0.80208276(mm),78.857767(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.305375(mm),0.16748161(mm),79.064359(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.508828(mm),-0.73399319(mm),79.028485(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.115163(mm),0.020875302(mm),79.450553(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.030051(mm),-1.6081948(mm),78.936579(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.158712(mm),-0.33329605(mm),79.442874(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.610776(mm),-0.030900473(mm),78.657855(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.768868(mm),-2.5477119(mm),79.15896(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.77807(mm),-1.3279079(mm),78.628356(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.203306(mm),-1.8266238(mm),78.90603(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.192895(mm),-0.58941077(mm),79.26052(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.09426(mm),0.66482957(mm),78.572604(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.477162(mm),1.9152729(mm),79.034069(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.771564(mm),-1.9926635(mm),79.334812(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.443072(mm),1.8764076(mm),79.04008(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.165336(mm),1.4440512(mm),78.207417(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.869864(mm),0.68583484(mm),78.612171(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.153876(mm),1.6189739(mm),79.2674(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.376853(mm),2.8721347(mm),79.051756(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.656087(mm),0.30040814(mm),78.826192(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.844499(mm),2.7487402(mm),78.969297(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.84511(mm),3.8706915(mm),78.616535(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.462462(mm),3.0480705(mm),78.860334(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.327211(mm),2.7113676(mm),78.707855(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.12014(mm),0.052629459(mm),79.273348(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.714894(mm),2.6516551(mm),78.639496(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.286213(mm),3.6413535(mm),79.067738(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.422689(mm),-1.92076(mm),79.220001(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.293319(mm),1.6628257(mm),78.18485(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.509669(mm),1.6417559(mm),78.675683(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.041622(mm),2.7975207(mm),78.934539(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.264092(mm),1.1647678(mm),78.895312(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.016998(mm),-2.8781828(mm),79.115208(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.836386(mm),1.2935776(mm),78.794401(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.453999(mm),0.042698779(mm),78.509172(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.139682(mm),-2.2307999(mm),79.093575(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.303175(mm),-1.5904387(mm),79.417401(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.377446(mm),-3.1597978(mm),78.52267(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.524905(mm),-1.8921253(mm),78.672996(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.470369(mm),-1.7204414(mm),79.035266(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.102891(mm),-0.76355409(mm),78.571082(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.383581(mm),-0.87138832(mm),78.697916(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.822941(mm),1.0119295(mm),79.149425(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.866035(mm),-3.9170498(mm),78.789173(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.797902(mm),2.734906(mm),79.153841(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.898416(mm),1.6378892(mm),78.95979(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.325229(mm),-2.4780797(mm),78.708205(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.263629(mm),0.039295956(mm),78.895393(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.5559(mm),-2.2005523(mm),78.314877(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.160938(mm),-3.5334512(mm),78.737173(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.716967(mm),-2.2000698(mm),78.991785(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.653883(mm),-0.54241835(mm),78.826581(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.521119(mm),-2.5101898(mm),79.202645(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.100457(mm),-3.4479538(mm),78.571511(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.389814(mm),-0.81751274(mm),78.167836(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.380012(mm),2.3685077(mm),79.051199(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.065993(mm),-1.7519456(mm),78.753915(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-16.517833(mm),2.0157877(mm),78.321589(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.430524(mm),1.2195142(mm),79.218619(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.490187(mm),-0.0031981606(mm),79.031772(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.898211(mm),0.6754146(mm),78.430845(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.276395(mm),3.3490865(mm),79.069469(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-17.204175(mm),-1.2093995(mm),78.200569(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.967453(mm),-1.1144073(mm),78.594963(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-15.832952(mm),1.2158094(mm),78.442352(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.767628(mm),-0.87957225(mm),78.806525(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.847201(mm),0.87500687(mm),78.792494(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-10.363438(mm),-1.2796408(mm),79.406775(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-14.059215(mm),1.667111(mm),78.75511(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-13.567822(mm),3.7157656(mm),78.841756(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-12.231003(mm),3.4720719(mm),79.077473(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +===================================== + G4EventManager::ProcessOneEvent() +===================================== +G4PrimaryTransformer::PrimaryVertex (-11.165785(mm),2.2632905(mm),79.2653(mm),0(nsec)) +1 primaries are passed from G4EventTransformer. +!!!!!!! Now start processing an event !!!!!!! +Track (trackID 1, parentID 0) is processed with stopping code 2 +NULL returned from G4StackManager. +Terminate current event processing. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # #/event/setverbose 1 #/run/printProgress 1 @@ -10510,12 +11848,12 @@ G4NistMaterialBuilder::FindOrBuildMaterial G4_W --------- Ranecu engine status --------- Initial seed (index) = 159 - Current couple of seeds = 1470346283, 497449377 + Current couple of seeds = 1417739634, 1460231576 ---------------------------------------- ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.683751(mm),3.3436886(mm),78.468661(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.695409(mm),1.712103(mm),78.642932(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10524,7 +11862,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-13.46875(mm),-0.98551448(mm),78.859225(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-14.460996(mm),3.5866278(mm),78.684265(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10533,7 +11871,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.095383(mm),0.22218726(mm),78.572406(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.696462(mm),1.1513798(mm),79.171727(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10542,7 +11880,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.608452(mm),-2.3649593(mm),79.010919(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-15.95294(mm),-0.13038013(mm),78.421195(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10551,7 +11889,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.203989(mm),-0.64045269(mm),79.082236(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.869851(mm),1.9699848(mm),79.141154(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10560,7 +11898,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.529966(mm),2.4391583(mm),79.024758(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.684148(mm),1.5570836(mm),78.997571(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10569,7 +11907,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.541351(mm),1.4360066(mm),79.02275(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-16.458924(mm),0.50100558(mm),78.331977(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10578,7 +11916,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.272797(mm),1.2176265(mm),78.71745(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.768572(mm),0.11747809(mm),79.159012(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10587,7 +11925,7 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-15.81817(mm),2.4627417(mm),78.444959(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-11.268771(mm),-1.5264145(mm),79.24714(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 @@ -10596,12 +11934,15 @@ Terminate current event processing. ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-14.744984(mm),3.2710923(mm),78.63419(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.947293(mm),1.4673667(mm),78.951172(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 NULL returned from G4StackManager. Terminate current event processing. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # /field04/SetTransferR 0.3 m /run/reinitializeGeometry @@ -10619,17 +11960,20 @@ G4NistMaterialBuilder::FindOrBuildMaterial G4_W --------- Ranecu engine status --------- Initial seed (index) = 159 - Current couple of seeds = 1333619589, 1792742923 + Current couple of seeds = 802353168, 138311351 ---------------------------------------- ===================================== G4EventManager::ProcessOneEvent() ===================================== -G4PrimaryTransformer::PrimaryVertex (-12.570183(mm),-0.90313721(mm),79.017667(mm),0(nsec)) +G4PrimaryTransformer::PrimaryVertex (-12.877889(mm),-2.3267264(mm),78.96341(mm),0(nsec)) 1 primaries are passed from G4EventTransformer. !!!!!!! Now start processing an event !!!!!!! Track (trackID 1, parentID 0) is processed with stopping code 2 NULL returned from G4StackManager. Terminate current event processing. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ diff --git a/examples/extended/field/field05/CMakeLists.txt b/examples/extended/field/field05/CMakeLists.txt index b8f07ff751..49ccfb411e 100644 --- a/examples/extended/field/field05/CMakeLists.txt +++ b/examples/extended/field/field05/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(field05) #---------------------------------------------------------------------------- diff --git a/examples/extended/field/field05/field05.out b/examples/extended/field/field05/field05.out index d7f51093d8..627f81bff2 100644 --- a/examples/extended/field/field05/field05.out +++ b/examples/extended/field/field05/field05.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,7 +15,7 @@ ***** Table : Nb of materials = 1 ***** - Material: G4_Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: G4_Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 21.800 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -39,10 +39,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -81,11 +83,13 @@ Some /vis commands (optionally) take a string to specify colour. # # Initialize G4 kernel /run/initialize - G4ChordFinder: Creating G4MagInt_Driver with stepMinimum = 0.01 numVar= 12 # # Run one event /run/beamOn 1 G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/field/field06/CMakeLists.txt b/examples/extended/field/field06/CMakeLists.txt index b6e9403ec1..bc7795e929 100644 --- a/examples/extended/field/field06/CMakeLists.txt +++ b/examples/extended/field/field06/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(field06) #---------------------------------------------------------------------------- diff --git a/examples/extended/field/field06/History b/examples/extended/field/field06/History index 41259c8204..53033b220a 100644 --- a/examples/extended/field/field06/History +++ b/examples/extended/field/field06/History @@ -14,13 +14,16 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10, 2020 B. Morgan - fieldex06-V10-06-00 +- Migration to G4RunManagerFactory. + Nov 1, 2019 J.Apostolakis - fieldex06-V10-05-01 - Adjusted for change in G4Transportation (need to inform of use of gravity) - and corrected creation of G4ChordFinder. + and corrected creation of G4ChordFinder. July 27, 2018 I.Hrivnacova - fieldex06-V10-04-01 - Macro review and code clean-up: - - Separated other than visualization settings from vis.mac in a + - Separated other than visualization settings from vis.mac in a new init_vis.mac - Added "beamOn 10" button in gui.mac - Updated README files @@ -39,7 +42,7 @@ July 18, 2016 I. Hrivnacova - fieldex06-V10-02-01 by calling the new G4StepLimiterPhysics::SetApplyToAll() function July 01, 2016 I. Hrivnacova - fieldex06-V10-02-00 -- Replaced F06ExtraPhysics with use of G4StepLimiterPhysics, +- Replaced F06ExtraPhysics with use of G4StepLimiterPhysics, code clean-up June 26, 2015 P. Gumplinger - fieldex06-V10-01-01/02/03 @@ -85,7 +88,7 @@ May 06th, 2013 P. Gumplinger - fieldex06-V09-06-02 April 1st, 2013 Andrea Dotti - fieldex06-V09-06-01 ------------------------------------ -- Update to new G4VUserPhysicsList interface +- Update to new G4VUserPhysicsList interface December 2nd, 2012 John Allison - fieldex06-V09-06-00 ------------------------------------ diff --git a/examples/extended/field/field06/field06.cc b/examples/extended/field/field06/field06.cc index 38320fde49..c879d2486a 100644 --- a/examples/extended/field/field06/field06.cc +++ b/examples/extended/field/field06/field06.cc @@ -45,11 +45,7 @@ #include "F06DetectorConstruction.hh" #include "F06ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIcommand.hh" @@ -83,20 +79,16 @@ int main(int argc,char** argv) G4String macro; G4String session; -#ifdef G4MULTITHREADED G4int nThreads = 0; -#endif G4long randomSeed = 1234; for ( G4int i=1; i 0 ) runManager->SetNumberOfThreads(nThreads); -#else - G4RunManager * runManager = new G4RunManager; -#endif // Seed the random number generator manually G4Random::setTheSeed(randomSeed); @@ -148,11 +136,11 @@ int main(int argc,char** argv) // Get the pointer to the User Interface manager // G4UImanager* UImanager = G4UImanager::GetUIpointer(); - + if ( !ui ) { // batch mode G4String command = "/control/execute "; - UImanager->ApplyCommand(command+macro); + UImanager->ApplyCommand(command+macro); } else { @@ -167,7 +155,7 @@ int main(int argc,char** argv) // Free the store: user actions, physics_list and detector_description are // owned and deleted by the run manager, so they should not // be deleted in the main() program ! - + delete visManager; delete runManager; diff --git a/examples/extended/field/field06/field06.out b/examples/extended/field/field06/field06.out index 1f1e445d46..ba380cfbcb 100644 --- a/examples/extended/field/field06/field06.out +++ b/examples/extended/field/field06/field06.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,7 +16,7 @@ ***** Table : Nb of materials = 1 ***** - Material: G4_Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: G4_Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 21.800 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -51,10 +52,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -2311,7 +2314,10 @@ Terminate current event processing. Run terminated. Run Summary Number of events processed : 1 - User=0.020000s Real=0.025219s Sys=0.000000s + User=0.010000s Real=0.018566s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. diff --git a/examples/extended/g3tog4/CMakeLists.txt b/examples/extended/g3tog4/CMakeLists.txt index a5c723689e..6e12a409da 100644 --- a/examples/extended/g3tog4/CMakeLists.txt +++ b/examples/extended/g3tog4/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all g3tog4 examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() #---------------------------------------------------------------------------- # g3tog4 examples require Geant4 build with g3tog4 diff --git a/examples/extended/g3tog4/History b/examples/extended/g3tog4/History index 934a4efd15..3e5e049915 100644 --- a/examples/extended/g3tog4/History +++ b/examples/extended/g3tog4/History @@ -14,6 +14,14 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10, 2020 B. Morgan (g3tog4Tests-V10-06-01) +--------------------------- +- Migrate to G4RunManagerFactory. + +November 03, 2020 B. Morgan (g3tog4Tests-V10-06-00) +--------------------------- +- Support same CMake version range as core Geant4 + September 29, 2017 I.Hrivnacova (g3tog4Tests-V10-03-02,03) --------------------------- - Updated for changes in common classes @@ -22,14 +30,14 @@ September 29, 2017 I.Hrivnacova (g3tog4Tests-V10-03-02,03) March 16, 2017 Gunter Folger (g3tog4Tests-V10-03-01) --------------------------- -- Re-tag, using procedure from Ivana, +- Re-tag, using procedure from Ivana, using excommon-V10-02-01 as tag for common See https://jira-geant4.kek.jp/browse/DEV-131 March 15, 2017 Gunter Folger (g3tog4Tests-V10-03-00) --------------------------- -- Fix link error for static build, i.e. - CMakeLists.txt: remove extra G3toG4 from target_link_libraries() +- Fix link error for static build, i.e. + CMakeLists.txt: remove extra G3toG4 from target_link_libraries() July 20, 2016 I.Hrivnacova (g3tog4Tests-V10-02-01) --------------------------- @@ -41,7 +49,7 @@ July 04, 2016 I.Hrivnacova (g3tog4Tests-V10-02-00) June 9th, 2014 I.Hrivnacova (g3tog4Tests-V10-01-00) --------------------------- -- Set a specific prefix to common library and test +- Set a specific prefix to common library and test to avoid name clashes when building all extended examples at once November 7th, 2014 I.Hrivnacova (g3tog4Tests-V10-00-05) @@ -66,7 +74,7 @@ June 12th, 2014 I.Hrivnacova (g3tog4Tests-V10-00-01) --------------------------- - Moved data directory in clGeometry and added copying data files in CMake build directory - + June 11th, 2014 I.Hrivnacova (g3tog4Tests-V10-00-00) --------------------------- - Fixed path to copy_files.sh, clean_files.sh in GNUmakefile @@ -79,8 +87,8 @@ August 30th, 2013 I.Hrivnacova (g3tog4Tests-V09-06-00) October 22nd, 2012 I.Hrivnacova (g3tog4Tests-V09-05-04) --------------------------- -- Added the "g3tog4" component to find_package call in - clGeometry/CMakeLists.txt and the check on existence of Geant4_g3tog4_FOUND +- Added the "g3tog4" component to find_package call in + clGeometry/CMakeLists.txt and the check on existence of Geant4_g3tog4_FOUND in g3tog4//CMakeLists.txt October 14th, 2012 A. Dotti (g3tog4Tests-V09-05-03) @@ -90,8 +98,8 @@ October 14th, 2012 A. Dotti (g3tog4Tests-V09-05-03) September 4th, 2012 I.Hrivnacova (g3tog4Tests-V09-05-02) --------------------------- - Updated CMakeLists.txt: - adding visualization, copying macros, install target and comment lines -- Added .README + adding visualization, copying macros, install target and comment lines +- Added .README July 2nd, 2012 I.Hrivnacova (g3tog4Tests-V09-05-01) --------------------------- @@ -102,7 +110,7 @@ June 5th, 2012 I.Hrivnacova (g3tog4Tests-V09-05-00) - Removed cltog4 example as it was just a duplication of clGeometry. - Restructured clGeometry for use of classes from common. - Applied coding guidelines, code clean-up. -- Changed gun particle position & direction in test macros +- Changed gun particle position & direction in test macros to get particles to go through volumes inside HALL November 23rd, 2011 G.Cosmo (g3tog4Tests-V09-04-01) diff --git a/examples/extended/g3tog4/clGeometry/CMakeLists.txt b/examples/extended/g3tog4/clGeometry/CMakeLists.txt index 701a0b6160..ad9572dac3 100644 --- a/examples/extended/g3tog4/clGeometry/CMakeLists.txt +++ b/examples/extended/g3tog4/clGeometry/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(clGeometry) #---------------------------------------------------------------------------- diff --git a/examples/extended/g3tog4/clGeometry/clGeometry.cc b/examples/extended/g3tog4/clGeometry/clGeometry.cc index 1839354d92..a75a4f9fe6 100644 --- a/examples/extended/g3tog4/clGeometry/clGeometry.cc +++ b/examples/extended/g3tog4/clGeometry/clGeometry.cc @@ -28,18 +28,14 @@ // // // -// +// // package includes #include "G3toG4DetectorConstruction.hh" #include "G3toG4ActionInitialization.hh" // geant4 includes -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "FTFP_BERT.hh" #include "G3VolTable.hh" @@ -54,11 +50,11 @@ namespace { void PrintUsage() { G4cerr << " Usage: " << G4endl; - G4cerr - << "clGeometry [-m macro ] [-u UIsession] [-t nThreads]" + G4cerr + << "clGeometry [-m macro ] [-u UIsession] [-t nThreads]" << G4endl; - G4cerr - << " note: -t option is available only for multi-threaded mode." + G4cerr + << " note: -t option is relevant only for multi-threaded mode." << G4endl; } } @@ -74,13 +70,11 @@ int main(int argc, char** argv) PrintUsage(); return 1; } - + G4String inFile; G4String macro = ""; G4String session; -#ifdef G4MULTITHREADED - G4int nofThreads = 4; -#endif + G4int nofThreads = 0; // First argument is mandatory inFile = argv[1]; @@ -96,17 +90,15 @@ int main(int argc, char** argv) G4cout << "evaluating " << argv[i] << G4endl; if ( G4String(argv[i]) == "-m" ) macro = argv[i+1]; else if ( G4String(argv[i]) == "-u" ) session = argv[i+1]; -#ifdef G4MULTITHREADED else if ( G4String(argv[i]) == "-t" ) { nofThreads = G4UIcommand::ConvertToInt(argv[i+1]); } -#endif else { PrintUsage(); return 1; } - } - + } + // Detect interactive mode (if no macro provided) and define UI session // G4UIExecutive* ui = nullptr; @@ -115,13 +107,9 @@ int main(int argc, char** argv) } // Construct the default run manager -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; - runManager->SetNumberOfThreads(nofThreads); -#else - G4RunManager* runManager = new G4RunManager; -#endif - + auto* runManager = G4RunManagerFactory::CreateRunManager(); + if (nofThreads > 0) runManager->SetNumberOfThreads(nofThreads); + // Set mandatory initialization classes // // Detector construction @@ -129,10 +117,10 @@ int main(int argc, char** argv) // Physics list runManager->SetUserInitialization(new FTFP_BERT); - + // User action initialization runManager->SetUserInitialization(new G3toG4ActionInitialization()); - + // Initialize visualization // auto visManager = new G4VisExecutive; @@ -150,7 +138,7 @@ int main(int argc, char** argv) G4String command = "/control/execute "; UImanager->ApplyCommand(command+macro); } - else { + else { // interactive mode : define UI session UImanager->ApplyCommand("/control/execute init_vis.mac"); ui->SessionStart(); @@ -159,7 +147,7 @@ int main(int argc, char** argv) // Job termination // Free the store: user actions, physics_list and detector_description are - // owned and deleted by the run manager, so they should not be deleted + // owned and deleted by the run manager, so they should not be deleted // in the main() program ! delete visManager; diff --git a/examples/extended/g3tog4/clGeometry/clGeometry.out b/examples/extended/g3tog4/clGeometry/clGeometry.out index a8b0049eb4..956f5d08f8 100644 --- a/examples/extended/g3tog4/clGeometry/clGeometry.out +++ b/examples/extended/g3tog4/clGeometry/clGeometry.out @@ -1,13 +1,14 @@ argc 4 Geometry data file: /mnt/build/jenkins/workspace/g4n-centos7/COMPILER/gcc9/LABEL/centos7/THREAD/Seq/geant4/examples/extended/g3tog4/clGeometry/data/testmodel.dat evaluating -m +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -32,10 +33,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -119,7 +122,7 @@ Top-level G3toG4 logical volume HALL G4VisAttributes: invisible, daughters visib HALL is registered to the default region. physicsList->Construct() start. - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -152,10 +155,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -179,10 +183,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -210,9 +215,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -226,14 +231,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -242,9 +247,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -256,9 +261,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -269,9 +274,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -285,14 +290,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -301,9 +306,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -317,14 +322,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -333,9 +338,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -349,14 +354,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -365,9 +370,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -382,14 +387,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -398,9 +403,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -415,14 +420,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -431,9 +436,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -447,14 +452,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -463,9 +468,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -479,14 +484,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -515,6 +520,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -589,6 +616,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -700,8 +740,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -766,8 +806,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -785,6 +825,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV ================================================================ +### G4LevelReader: broken transition 0 from level 24 to 24 for isotope Z= 89 A= 219 - use ground level ======================================================================= ====== Pre-compound/De-excitation Physics Parameters ======== ======================================================================= @@ -808,7 +849,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= Region -- -- appears in world volume @@ -838,15 +878,15 @@ Index : 0 used in the geometry : Yes Start closing geometry. G4GeometryManager::ReportVoxelStats -- Voxel Statistics - Total memory consumed for geometry optimisation: 8 kByte + Total memory consumed for geometry optimisation: 5 kByte Total CPU time elapsed for geometry optimisation: 0 seconds Voxelisation: top CPU users: Percent Total CPU System CPU Memory Volume ------- ---------- ---------- -------- ---------- 0.00 0.00 0.00 1k HALL - 0.00 0.00 0.00 5k TUB1 - 0.00 0.00 0.00 1k TUB2 + 0.00 0.00 0.00 3k TUB1 + 0.00 0.00 0.00 0k TUB2 0.00 0.00 0.00 0k BXD1_2_ENV 0.00 0.00 0.00 0k BXD1_3_ENV 0.00 0.00 0.00 0k BXD1_4_ENV @@ -855,20 +895,23 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume ------- -------- ------ ------ -------- ---------- ---------- - 61.57 5k 1 60 60 0.00 TUB1 - 11.34 0k 2 8 18 0.00 HALL - 6.22 0k 1 5 5 0.00 TUB2 - 5.22 0k 1 4 4 0.00 BXD1_2_ENV - 5.22 0k 1 4 4 0.00 BXD1_3_ENV - 5.22 0k 1 4 4 0.00 BXD1_4_ENV - 5.22 0k 1 4 4 0.00 BXD1_5_ENV + 60.85 3k 1 60 60 0.00 TUB1 + 11.91 0k 2 8 18 0.00 HALL + 6.24 0k 1 5 5 0.00 TUB2 + 5.25 0k 1 4 4 0.00 BXD1_2_ENV + 5.25 0k 1 4 4 0.00 BXD1_3_ENV + 5.25 0k 1 4 4 0.00 BXD1_4_ENV + 5.25 0k 1 4 4 0.00 BXD1_5_ENV G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000509s Sys=0.000000s + User=0.000000s Real=0.000510s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Region -- -- appears in world volume This region is in the mass world. @@ -898,7 +941,10 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000063s Sys=0.000000s + User=0.000000s Real=0.000047s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Region -- -- appears in world volume This region is in the mass world. @@ -928,7 +974,10 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000091s Sys=0.000000s + User=0.000000s Real=0.000077s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Region -- -- appears in world volume This region is in the mass world. @@ -958,7 +1007,10 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000042s Sys=0.000000s + User=0.000000s Real=0.000030s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Region -- -- appears in world volume This region is in the mass world. @@ -988,7 +1040,10 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000131s Sys=0.000000s + User=0.000000s Real=0.000093s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Region -- -- appears in world volume This region is in the mass world. @@ -1018,7 +1073,10 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000066s Sys=0.000000s + User=0.000000s Real=0.000049s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Region -- -- appears in world volume This region is in the mass world. @@ -1048,7 +1106,10 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000061s Sys=0.000000s + User=0.000000s Real=0.000046s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Region -- -- appears in world volume This region is in the mass world. @@ -1078,7 +1139,10 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000058s Sys=0.000000s + User=0.000000s Real=0.000043s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. diff --git a/examples/extended/g3tog4/clGeometry/common/CMakeLists.txt b/examples/extended/g3tog4/clGeometry/common/CMakeLists.txt index 55135c5aab..f10c63fcba 100644 --- a/examples/extended/g3tog4/clGeometry/common/CMakeLists.txt +++ b/examples/extended/g3tog4/clGeometry/common/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(${common_prefix}common) #---------------------------------------------------------------------------- diff --git a/examples/extended/geometry/CMakeLists.txt b/examples/extended/geometry/CMakeLists.txt index 727ce16ac3..0ffee10293 100644 --- a/examples/extended/geometry/CMakeLists.txt +++ b/examples/extended/geometry/CMakeLists.txt @@ -1,5 +1,8 @@ #---Adding all geometry examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(transforms) diff --git a/examples/extended/geometry/History b/examples/extended/geometry/History index 1437365ff1..caa3d711d4 100644 --- a/examples/extended/geometry/History +++ b/examples/extended/geometry/History @@ -15,6 +15,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +03/11/2020 B. Morgan (exGeometry-V10-06-00) +- Support same CMake version range as core Geant4 + 24/02/2018 I. Hrivnacova (exGeometry-V10-04-01) - Removed example rotations (its new features will be integrated in the transforms example) @@ -27,7 +30,7 @@ track of all tags. - Applied coding guidelines (data member initialization) in transforms 26/11/2012 I. Hrivnacova (exGeometry-V09-05-02) -- Fixed .README files (the transforms example page name) +- Fixed .README files (the transforms example page name) 17/11/2012 I. Hrivnacova (exGeometry-V09-05-01) - Removed obsolete instructions (how to compile & link) @@ -36,4 +39,4 @@ track of all tags. 06/09/2012 I. Hrivnacova (exGeometry-V09-05-00) - Adding explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh where needed -- Replaced tabulators with space characters +- Replaced tabulators with space characters diff --git a/examples/extended/geometry/transforms/CMakeLists.txt b/examples/extended/geometry/transforms/CMakeLists.txt index 1eef8a9ccf..4c87b91de1 100644 --- a/examples/extended/geometry/transforms/CMakeLists.txt +++ b/examples/extended/geometry/transforms/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(transforms) #---------------------------------------------------------------------------- diff --git a/examples/extended/geometry/transforms/batch.out b/examples/extended/geometry/transforms/batch.out index cf9cb8ac65..77e04dd71f 100644 --- a/examples/extended/geometry/transforms/batch.out +++ b/examples/extended/geometry/transforms/batch.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -31,10 +31,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -144,7 +146,10 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Run terminated. Run Summary Number of events processed : 1 - User=0.000000s Real=0.000449s Sys=0.000000s + User=0.000000s Real=0.000440s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. diff --git a/examples/extended/hadronic/.README.txt b/examples/extended/hadronic/.README.txt index c34e2e6733..92abcb157c 100644 --- a/examples/extended/hadronic/.README.txt +++ b/examples/extended/hadronic/.README.txt @@ -49,6 +49,21 @@ Survey energy deposition and particle's flux from an hadronic cascade. Use PhysicsConstructor objects rather than predefined G4 PhysicsLists. Show how to plot a depth dose profile in a rectangular box. +\link ExampleHadr08 Hadr08 \endlink + +This example shows how to get "hadronic model per region" using generic +biasing: in particular, it is shown how to use "FTFP+INCLXX" in one region, +while using the default "FTFP+BERT" in all other regions. +Notice that we use the generic biasing machinery, but the actual weights +of all tracks remain to the usual value (1.0) as in the normal (unbiased) +case. + +\link ExampleHadr09 Hadr09 \endlink + +This example shows how to use Geant4 as a generator for simulating +inelastic hadron-nuclear interactions. +Notice that the Geant4 run-manager is not used. + \link ExampleFissionFragment FissionFragment \endlink This example demonstrates the Fission Fragment model as used within the diff --git a/examples/extended/hadronic/CMakeLists.txt b/examples/extended/hadronic/CMakeLists.txt index b8537d6373..a2fca8801f 100644 --- a/examples/extended/hadronic/CMakeLists.txt +++ b/examples/extended/hadronic/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all hadronic examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(Hadr00) add_subdirectory(Hadr01) @@ -10,5 +13,6 @@ add_subdirectory(Hadr04) add_subdirectory(Hadr06) add_subdirectory(Hadr07) add_subdirectory(Hadr08) +add_subdirectory(Hadr09) add_subdirectory(FissionFragment) add_subdirectory(NeutronSource) diff --git a/examples/extended/hadronic/FissionFragment/CMakeLists.txt b/examples/extended/hadronic/FissionFragment/CMakeLists.txt index 49baa57f15..53f1c9bbf5 100644 --- a/examples/extended/hadronic/FissionFragment/CMakeLists.txt +++ b/examples/extended/hadronic/FissionFragment/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(FissionFragment) #---------------------------------------------------------------------------- diff --git a/examples/extended/hadronic/FissionFragment/FissionFragment.cc b/examples/extended/hadronic/FissionFragment/FissionFragment.cc index 9495327cb1..d72a81d48e 100644 --- a/examples/extended/hadronic/FissionFragment/FissionFragment.cc +++ b/examples/extended/hadronic/FissionFragment/FissionFragment.cc @@ -54,6 +54,8 @@ // // Modified: // +// ??-??-20 ARibon +// Replaced deprecated HP environmental variables with UI commands // 23-06-14 BWendt // Added check for NeutronHP fission generator environment variable // @@ -61,11 +63,7 @@ #include "globals.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif // G4MULTITHREADED +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "QGSP_BIC_HP.hh" @@ -77,6 +75,7 @@ #include "G4VisExecutive.hh" #include "G4UIExecutive.hh" +#include "G4ParticleHPManager.hh" // Entry point //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -84,50 +83,23 @@ int main(int argc, char* argv[]) { int result; unsigned int numberOfThreads = 1; - + G4String scriptFileName = ""; G4String outputFileName = "FF_Neutron_HP.out"; G4UImanager* UIManager = NULL; - - char makeFissionFragments[] = "G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS"; - char useWendtFission[] = "G4NEUTRON_HP_USE_WENDT_FISSION_MODEL"; + + // Activate production of fission fragments in neutronHP + G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( true ); char Force[] = "G4FORCENUMBEROFTHREADS"; if(std::getenv(Force) != NULL) { char doNotForce[]="G4FORCENUMBEROFTHREADS=1"; putenv(doNotForce); } - + // Indicate the example is starting G4cout << "#### Starting: " << argv[0] << " ####" << G4endl; - - // Verify that NeutronHP is going to create fission fragments - // Throw and error if it isn't. - if(std::getenv(makeFissionFragments) == NULL) - { - G4cerr << G4endl << "!!!!" << G4endl; - G4cerr << "!!!! Error in example" << argv[0] << G4endl; - G4cerr << "!!!! The \"" << makeFissionFragments << "\" " - "environment variable is not set!" << G4endl; - G4cerr << "!!!! Please set it in order to use this example." << G4endl; - G4cerr << "!!!!" << G4endl << G4endl; - - return EXIT_FAILURE; - } - - // We are trying to use the Wendt fission model in Neutron_HP - // Warn the user if the appropriate environment variable is not set up - if(std::getenv(useWendtFission) == NULL) - { - G4cout << G4endl << "!!!!" << G4endl; - G4cout << "!!!! Warning in example" << argv[0] << G4endl; - G4cout << "!!!! The \"" << useWendtFission << "\" " - "environment variable is not set!" << G4endl; - G4cout << "!!!! Please set it if you wish to use this fission model, " - "otherwise the default fission model will be used" << G4endl; - G4cout << "!!!!" << G4endl << G4endl; - } - + // Parse the command line arguments, if any for(int i = 1; i < argc; @@ -142,10 +114,10 @@ int main(int argc, char* argv[]) << argv[i] << "\" was found" << G4endl; G4cerr << "!!!! " << argv[0] << " will now terminate" << G4endl; G4cerr << "!!!!" << G4endl << G4endl; - + return EXIT_FAILURE; } - + // Ensure that the command-line option has an associated argument if(!(i + 1 < argc)) { @@ -157,10 +129,10 @@ int main(int argc, char* argv[]) "option and argument" << G4endl; G4cerr << "!!!! " << argv[0] << " will now terminate" << G4endl; G4cerr << "!!!!" << G4endl << G4endl; - + return EXIT_FAILURE; } - + switch(argv[i][1]) { case 'i': @@ -171,7 +143,7 @@ int main(int argc, char* argv[]) case 'o': outputFileName = argv[i + 1]; break; - + case 'n': result = sscanf(argv[i + 1], "%u", @@ -185,11 +157,11 @@ int main(int argc, char* argv[]) G4cerr << "!!!! " << argv[0] << " will now terminate" << G4endl; G4cerr << "!!!!" << G4endl << G4endl; - + return EXIT_FAILURE; } break; - + default: G4cout << G4endl << "!!!!" << G4endl; G4cout << "!!!! Warning for command " << i + 1 << G4endl; @@ -200,7 +172,7 @@ int main(int argc, char* argv[]) G4cout << "!!!!" << G4endl << G4endl; } } - + // Instantiate G4UIExecutive if interactive mode G4UIExecutive* ui = nullptr; if (scriptFileName.length() == 0) { @@ -216,27 +188,17 @@ int main(int argc, char* argv[]) #endif // NDEBUG G4Random::setTheEngine(new CLHEP::MTwistEngine(seed)); -// The 'runManger' type must be declared here at initialization to provide for -// 'SetNumberOfThreads()' method required for multithreading -#ifdef G4MULTITHREADED // Initialize the multithreaded run manager - G4MTRunManager* const runManager = new G4MTRunManager(); + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(numberOfThreads); - - G4cout << "Multithreading enabled" << G4endl; G4cout << " Threads requested: " << numberOfThreads << G4endl; - G4cout << " Threads started: " << runManager->GetNumberOfThreads() - << G4endl; -#else - // Multithreading not available - G4RunManager* const runManager = new G4RunManager(); -#endif // G4MULTITHREADED + G4cout << " Threads started: " << runManager->GetNumberOfThreads() << G4endl; // Set mandatory initialization classes runManager->SetUserInitialization(new FFDetectorConstruction()); runManager->SetUserInitialization(new QGSP_BIC_HP()); runManager->SetUserInitialization(new FFActionInitialization()); - + // Initialize the Geant4 kernel runManager->Initialize(); @@ -246,7 +208,7 @@ int main(int argc, char* argv[]) // Get the pointer to the User Interface manager UIManager = G4UImanager::GetUIpointer(); - + if(!ui) { // Batch mode @@ -260,11 +222,11 @@ int main(int argc, char* argv[]) // Job termination // Free the store: user actions, physics_list and detector_description are - // owned and deleted by the run manager, so they should not be deleted + // owned and deleted by the run manager, so they should not be deleted // in the main() program ! delete visManager; delete runManager; - + return 0; } diff --git a/examples/extended/hadronic/FissionFragment/FissionFragment.out b/examples/extended/hadronic/FissionFragment/FissionFragment.out index 516ab86298..01d5653948 100644 --- a/examples/extended/hadronic/FissionFragment/FissionFragment.out +++ b/examples/extended/hadronic/FissionFragment/FissionFragment.out @@ -1,11 +1,12 @@ #### Starting: /mnt/build/jenkins/workspace/g4n-centos7/COMPILER/gcc9/LABEL/centos7/THREAD/Seq/build/examples/extended/hadronic/FissionFragment/FissionFragment #### +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -13,6 +14,8 @@ WWW : http://geant4.org/ ************************************************************** + Threads requested: 1 + Threads started: 1 <<< Geant4 Physics List simulation engine: QGSP_BIC_HP Checking overlaps for volume Plate@Location X:0.00 Y:1.20 (G4Box) ... OK! @@ -348,10 +351,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -415,10 +420,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -441,7 +447,7 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 @@ -450,10 +456,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -476,7 +483,7 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -489,9 +496,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -505,14 +512,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -525,9 +532,9 @@ nuclearStopping: for proton SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -555,9 +562,9 @@ Use Bearden atomic level energies 0 ====================================================================== msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -572,9 +579,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -588,14 +595,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -604,9 +611,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -620,14 +627,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -636,9 +643,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -652,14 +659,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -668,9 +675,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -685,14 +692,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -701,9 +708,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -718,14 +725,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -736,6 +743,19 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + UseOnlyPhotoEvaporation ? 0 + SkipMissingIsotopes ? 0 + NeglectDoppler ? 0 + DoNotAdjustFinalState ? 0 + ProduceFissionFragments ? 1 + UseWendtFissionModel ? 0 + UseNRESP71Model ? 0 +======================================================= + @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon Fission fragment production is now activated in HP package for Z = 92, A = 235 @@ -744,9 +764,9 @@ Fission fragment production is now activated in HP package for Z = 92, A = 238 As currently modeled this option precludes production of delayed neutrons from fission fragments. msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -760,14 +780,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -776,9 +796,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -792,14 +812,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -857,9 +877,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_He3Inelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -873,9 +891,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_alphaInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -889,13 +905,25 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_deuteronInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -905,9 +933,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_neutronInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -921,9 +947,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_protonInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -937,9 +961,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_tritonInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -1015,10 +1037,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -1115,10 +1136,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -1136,6 +1156,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV ================================================================ +### G4LevelReader: broken transition 0 from level 24 to 24 for isotope Z= 89 A= 219 - use ground level ======================================================================= ====== Pre-compound/De-excitation Physics Parameters ======== ======================================================================= @@ -1159,7 +1180,11 @@ Store e- internal conversion data 1 Electron internal conversion ID 0 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. +Graphics systems deleted. +Visualization Manager deleting... diff --git a/examples/extended/hadronic/FissionFragment/History b/examples/extended/hadronic/FissionFragment/History index 1ea3d11240..572a02a74f 100644 --- a/examples/extended/hadronic/FissionFragment/History +++ b/examples/extended/hadronic/FissionFragment/History @@ -14,18 +14,26 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- -08-05-18 J. Allison (exExtHadFissFrag-V10-04-01) -- FissionFragment.cc: - o Move instantiation of G4UIExecutive beyond the point where the main - program could exit, for example, if environment variables are incorrectly - set. The problem was that if G4UIExecutive invokes G4UIQt, and if the - program exits after instantiation but before SessionStart, all output - is lost. - -03-05-18 J. Allison (exExtHadFissFrag-V10-04-00) -- FissionFragment.cc: - o Remove G4_VIS_USE and G4UI_USE. - o Move instantiation of G4UIExecutive to start of main. +10-11-20 B, Morgan (exExtHadFissFrag-V10-06-01) +- Migration to G4RunManagerFactory. + +05-08-20 A. Ribon (exExtHadFissFrag-V10-06-00) +- FissionFragment.cc , batch.in , README , .README.txt : + o Replaced deprecated HP environmental variables with corresponding + UI commands. + +08-05-18 J. Allison (exExtHadFissFrag-V10-04-01) +- FissionFragment.cc: + o Move instantiation of G4UIExecutive beyond the point where the main + program could exit, for example, if environment variables are incorrectly + set. The problem was that if G4UIExecutive invokes G4UIQt, and if the + program exits after instantiation but before SessionStart, all output + is lost. + +03-05-18 J. Allison (exExtHadFissFrag-V10-04-00) +- FissionFragment.cc: + o Remove G4_VIS_USE and G4UI_USE. + o Move instantiation of G4UIExecutive to start of main. 26-10-15 T. Koi (exExtHadFissFrag-V10-01-01) - Fix compiler waring message in previous tag @@ -57,17 +65,17 @@ track of all tags. - Fixed fuel plate placement issue. Removed need for tag "exExtHadFissFrag-V10-00-08" - Fixed sampling location for neutron source - - + + 23-06-14 B. Wendt (exExtHadFissFrag-V10-00-08) - Attempt to correct compilation warnings on gcc-4.1 regarding a call to "int abs(int)" in FFDetectorConstruction.cc - - + + 13-06-14 Gunter Folger (exExtHadFissFrag-V10-00-07) - correct compilation warning on unused variable run in FFRunAction - add input file for testing: batch.in - - + + 06-06-13 B. Wendt (exExtHadFissFrag-V10-00-06) - First release diff --git a/examples/extended/hadronic/FissionFragment/README b/examples/extended/hadronic/FissionFragment/README index 22625a6ef8..d2555eb52d 100644 --- a/examples/extended/hadronic/FissionFragment/README +++ b/examples/extended/hadronic/FissionFragment/README @@ -17,18 +17,14 @@ 1 - EXECUTION - A - ENVIRONMENT - G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS - REQUIRED - The example requires this enviroment variable to be set. An error will be - displayed and the example will terminate if this environment variable is - not set. - - G4NEUTRON_HP_USE_WENDT_FISSION_MODEL - OPTIONAL - This environment variable enables the Wendt fission model contained - within the NeutronHP model for simulating fission events. The default model - will be used otherwise. A warning will be displayed if this environment - variable is not set. + A - Enable the following UI command : + /process/had/particle_hp/use_Wendt_fission_model true + + to use the alternative Wendt fission model contained within the + NeutronHP model for simulating fission events + (else, the default fission model will be used). + B - COMMAND LINE ARGUMENTS The example can be run without any input arguments. However, a few options are available: @@ -46,7 +42,9 @@ C - INTERACTIVE No specialized UI commands are currently provided. - To run the simulation, use the standard UI command: + To run the simulation, use the standard UI command (after eventually + the above UI command to use the alternative Wendt fission model): + /run/beamOn diff --git a/examples/extended/hadronic/FissionFragment/batch.in b/examples/extended/hadronic/FissionFragment/batch.in index 7423888390..12d8c49b1c 100644 --- a/examples/extended/hadronic/FissionFragment/batch.in +++ b/examples/extended/hadronic/FissionFragment/batch.in @@ -1,2 +1,6 @@ +# To use the alternative Wendt fission model enable the following UI command +# (else, the default one will be used): +#/process/had/particle_hp/use_Wendt_fission_model true +# /run/beamOn 50 exit diff --git a/examples/extended/hadronic/Hadr00/CMakeLists.txt b/examples/extended/hadronic/Hadr00/CMakeLists.txt index fc5dc07914..07dcd2cea6 100644 --- a/examples/extended/hadronic/Hadr00/CMakeLists.txt +++ b/examples/extended/hadronic/Hadr00/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(Hadr00) #---------------------------------------------------------------------------- diff --git a/examples/extended/hadronic/Hadr00/Hadr00.cc b/examples/extended/hadronic/Hadr00/Hadr00.cc index 435e002083..aa314b2a7d 100644 --- a/examples/extended/hadronic/Hadr00/Hadr00.cc +++ b/examples/extended/hadronic/Hadr00/Hadr00.cc @@ -35,7 +35,7 @@ // // Author: V.Ivanchenko 20 June 2008 // -// Modified: +// Modified: // // ------------------------------------------------------------- // @@ -43,8 +43,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#include "G4RunManager.hh" -#include "G4MTRunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "Randomize.hh" @@ -65,8 +64,7 @@ int main(int argc,char** argv) { G4UIExecutive* ui = nullptr; if (argc == 1) { ui = new G4UIExecutive(argc,argv); } -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager(); + auto* runManager = G4RunManagerFactory::CreateRunManager(); // Number of threads can be defined via 3rd argument if (argc==4) { @@ -75,11 +73,6 @@ int main(int argc,char** argv) { } G4cout << "##### Hadr00 started for " << runManager->GetNumberOfThreads() << " threads" << " #####" << G4endl; -#else - G4RunManager * runManager = new G4RunManager(); - G4cout << "##### Hadr00 started in sequential mode" - << " #####" << G4endl; -#endif //set mandatory initialization classes DetectorConstruction* det = new DetectorConstruction(); @@ -116,7 +109,7 @@ int main(int argc,char** argv) { G4VisManager* visManager = nullptr; //get the pointer to the User Interface manager - G4UImanager* UImanager = G4UImanager::GetUIpointer(); + G4UImanager* UImanager = G4UImanager::GetUIpointer(); if (ui) { //interactive mode @@ -125,13 +118,13 @@ int main(int argc,char** argv) { ui->SessionStart(); delete ui; } else { - //batch mode + //batch mode G4String command = "/control/execute "; G4String fileName = argv[1]; UImanager->ApplyCommand(command+fileName); } - //job termination + //job termination delete visManager; delete runManager; } diff --git a/examples/extended/hadronic/Hadr00/History b/examples/extended/hadronic/Hadr00/History index 087c4236d1..37ff80b5d2 100644 --- a/examples/extended/hadronic/Hadr00/History +++ b/examples/extended/hadronic/Hadr00/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-20 B, Morgan (exhadr00-V10-06-01) +- Migration to G4RunManagerFactory. + 13-02-20 V.Ivanchenko (exhadr00-V10-06-00) - HistoManagerMessenger - fixed destructor @@ -32,7 +35,7 @@ track of all tags. 29-03-18 V.Ivanchenko (exhadr00-V10-04-02) - DetectorConstruction - cleanup geometry - Hadr00.cc - more cleanup visualisation - + 24-03-18 M.Maire (exhadr00-V10-04-01) - Hadr00.cc : come back to FTFP_BERT @@ -53,15 +56,15 @@ track of all tags. 27-11-13 I. Hrivnacova (exhadr00-V09-06-06) - Removed #ifdef G4MULTITHREADED from RunAction (not needed) -- Fixed .README +- Fixed .README 21-11-13 A. Dotti (exhadr00-V09-06-05) - USe G4RunManager::ReinitializeGeometry() to trigger geometry - rebuilds. + rebuilds. - Remove ui command /testhadr/Update and corresponding DetectorConstruction::Update method - Mark UI command to change detector as ToBeBroadcasted(false) -- Update README file for change in ui command +- Update README file for change in ui command 06-11-13 V.Ivanchenko (exhadr00-V09-06-04) - Fixed for MT @@ -70,11 +73,11 @@ track of all tags. - Fixed for sequential 05-11-13 V.Ivanchenko (exhadr00-V09-06-02) -- Appling review recommendations, migration to MT, simplified access +- Appling review recommendations, migration to MT, simplified access to histograms 05-06-13 I. Hrivnacova (exhadr00-V09-06-01) -- Applied coding guidelines (data members names and initialization, +- Applied coding guidelines (data members names and initialization, tabulations, separators) 05-04-13 V.Ivanchenko (exhadr00-V09-06-00) @@ -111,10 +114,10 @@ track of all tags. - Cleanup AIDA interface 06-06-10 J.Perl (exhadr00-V09-03-03) -- Remove unused variable in EventAction +- Remove unused variable in EventAction 03-06-10 J.Perl (exhadr00-V09-03-02) -- Updated vis usage +- Updated vis usage 27-05-10 V.Ivant (exhadr00-V09-03-01) - Improved printout @@ -123,8 +126,8 @@ track of all tags. - Introduced G4UIExecutive. 26-06-09 V.Ivant (exhadr00-V09-02-00) -- added a possibility to define Physics List as a job parameter -- added script for the test run of all Physics Lists +- added a possibility to define Physics List as a job parameter +- added script for the test run of all Physics Lists 20-11-08 V.Ivant (exhadr00-V09-01-02) - added charge exchange cross section @@ -134,4 +137,4 @@ track of all tags. 07-07-08 V.Ivant (exhadr00-V09-01-00) - first release - + diff --git a/examples/extended/hadronic/Hadr00/hadr00.out b/examples/extended/hadronic/Hadr00/hadr00.out index a03d5fe375..05ee9c4730 100644 --- a/examples/extended/hadronic/Hadr00/hadr00.out +++ b/examples/extended/hadronic/Hadr00/hadr00.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,7 +13,7 @@ WWW : http://geant4.org/ ************************************************************** -##### Hadr00 started in sequential mode ##### +##### Hadr00 started for 1 threads ##### G4PhysListFactory::GetReferencePhysList EMoption= 0 <<< Geant4 Physics List simulation engine: FTFP_BERT @@ -39,7 +40,7 @@ G4PhysListFactory::GetReferencePhysList EMoption= 0 ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: G4_Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: G4_Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 21.800 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -50,7 +51,7 @@ G4PhysListFactory::GetReferencePhysList EMoption= 0 - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -92,10 +93,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -119,10 +121,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -150,9 +153,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -166,14 +169,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -182,9 +185,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -210,9 +213,9 @@ Use Bearden atomic level energies 0 ====================================================================== msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -223,9 +226,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -239,14 +242,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -255,9 +258,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -271,14 +274,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -287,9 +290,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -303,14 +306,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -319,9 +322,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -336,14 +339,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -352,9 +355,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -369,14 +372,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -385,9 +388,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -401,14 +404,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -417,9 +420,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -433,14 +436,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -469,6 +472,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -545,6 +570,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -656,8 +694,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -722,8 +760,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -764,7 +802,6 @@ Store e- internal conversion data 1 Electron internal conversion ID 0 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -792,7 +829,7 @@ EventAction: Event # 0 started Run terminated. Run Summary Number of events processed : 10 - User=0.030000s Real=0.122365s Sys=0.010000s + User=0.010000s Real=0.032741s Sys=0.000000s RunAction: End of run actions are started HistoManager: End of run actions are started ### Fill Cross Sections for proton off Al diff --git a/examples/extended/hadronic/Hadr00/include/EventAction.hh b/examples/extended/hadronic/Hadr00/include/EventAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr00/include/RunAction.hh b/examples/extended/hadronic/Hadr00/include/RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr00/src/EventAction.cc b/examples/extended/hadronic/Hadr00/src/EventAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr00/src/RunAction.cc b/examples/extended/hadronic/Hadr00/src/RunAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr01/CMakeLists.txt b/examples/extended/hadronic/Hadr01/CMakeLists.txt index 6f5f67e0ce..784b902dca 100644 --- a/examples/extended/hadronic/Hadr01/CMakeLists.txt +++ b/examples/extended/hadronic/Hadr01/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(Hadr01) #---------------------------------------------------------------------------- diff --git a/examples/extended/hadronic/Hadr01/Hadr01.cc b/examples/extended/hadronic/Hadr01/Hadr01.cc index edb235486e..23a4b78c19 100644 --- a/examples/extended/hadronic/Hadr01/Hadr01.cc +++ b/examples/extended/hadronic/Hadr01/Hadr01.cc @@ -36,7 +36,7 @@ // // Authors: A.Bagulya, I.Gudowska, V.Ivanchenko, N.Starkov // -// Modified: +// Modified: // 29.12.2009 V.Ivanchenko introduced access to reference PhysLists // // ------------------------------------------------------------- @@ -45,7 +45,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "Randomize.hh" @@ -71,8 +71,8 @@ int main(int argc,char** argv) { G4UIExecutive* ui = nullptr; if (argc == 1) { ui = new G4UIExecutive(argc,argv); } - //Construct the default run manager - G4RunManager * runManager = new G4RunManager(); + //Construct a serial run manager + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); //set mandatory initialization classes runManager->SetUserInitialization(new DetectorConstruction()); @@ -97,7 +97,7 @@ int main(int argc,char** argv) { // instantiated messenger mess = new PhysicsListMessenger(); - } + } //local Physics List if(!phys) { phys = new PhysicsList(); } @@ -115,7 +115,7 @@ int main(int argc,char** argv) { G4VisManager* visManager = nullptr; //get the pointer to the User Interface manager - G4UImanager* UImanager = G4UImanager::GetUIpointer(); + G4UImanager* UImanager = G4UImanager::GetUIpointer(); if (ui) { //interactive mode @@ -124,13 +124,13 @@ int main(int argc,char** argv) { ui->SessionStart(); delete ui; } else { - //batch mode + //batch mode G4String command = "/control/execute "; G4String fileName = argv[1]; UImanager->ApplyCommand(command+fileName); } - //job termination + //job termination delete mess; delete visManager; delete runManager; diff --git a/examples/extended/hadronic/Hadr01/History b/examples/extended/hadronic/Hadr01/History index 3f26bb3a11..9c83c1dcc4 100644 --- a/examples/extended/hadronic/Hadr01/History +++ b/examples/extended/hadronic/Hadr01/History @@ -14,19 +14,27 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-20 B. Morgan (exhadr01-V10-06-02) +- Migration to G4RunManagerFactory. + +22-07-20 V.Ivanchenko (exhadr01-V10-06-01) +- PhysicsList - make it coherent with current reference lists +- RunAction - improved pritouts +- hadr01.in - switched from Al to W + 18-01-20 V.Ivanchenko (exhadr01-V10-06-00) - HistoManager - removed FPE error (happens if check volume material is not vacuum) 21-08-19 V.Ivanchenko (exhadr01-V10-05-01) -- DetectorConstruction - added "Battery" material from problem +- DetectorConstruction - added "Battery" material from problem report 2175 and new macro test_battery.in 17-12-18 V.Ivanchenko (exhadr01-V10-05-00) - HistoManager - added linear histogram for pion energy at production 08-11-18 V.Ivanchenko (exhadr01-V10-04-05) -- PhysicsList - make local PhysicsList to be coherent with +- PhysicsList - make local PhysicsList to be coherent with physics_list library 14-08-18 V.Ivanchenko (exhadr01-V10-04-04) @@ -51,7 +59,7 @@ track of all tags. - Hadr01.cc : remove G4UI_USE and G4VIS_USE 21-11-17 V.Ivanchenko (exhadr01-V10-03-00) -- Fixed histograms and radioactive decay +- Fixed histograms and radioactive decay 09-11-16 V.Ivanchenko (exhadr01-V10-02-03) - PhysicsList - synchronisation with physics_list library of 10.3 @@ -63,7 +71,7 @@ track of all tags. 30-08-16 I. Hrivnacova (exhadr01-V10-02-00) - Removed data. functions and commands to define cuts from PhysicsList and PhysicsListMessenger; - using Geant4 commands + using Geant4 commands 31-08-15 V.Ivanchenko (exhadr01-V10-01-00) - PhysicsList - syncronisation with physics_list library @@ -73,18 +81,18 @@ track of all tags. 21-11-13 A. Dotti (exhadr01-V09-06-06) - USe G4RunManager::ReinitializeGeometry() to trigger geometry - rebuilds. + rebuilds. - Remove ui command /testhadr/Update and corresponding DetectorConstruction::Update method - Mark UI command to change detector as ToBeBroadcasted(false) -- Update README file for change in ui command -- Start migration to MT: added CreateSDandField method +- Update README file for change in ui command +- Start migration to MT: added CreateSDandField method 29-07-13 P. Gumplinger (exhadr01-V09-06-05) - fix MAC/clang32 compilation warnings 05-06-13 I. Hrivnacova (exhadr01-V09-06-04) -- Applied coding guidelines (data members names and initialization, +- Applied coding guidelines (data members names and initialization, tabulations, separators) 05-04-13 V.Ivanchenko (exhadr01-V09-06-03) @@ -129,7 +137,7 @@ track of all tags. - Applied code convension 06-01-12 V.Ivant (exhadr01-V09-05-00) -- DetectorMessenger - fixed deletion of objects +- DetectorMessenger - fixed deletion of objects 21-04-11 V.Ivant (exhadr01-V09-04-01) - Added new builders for ions @@ -141,11 +149,11 @@ track of all tags. - PhysicsList - update according to Physics List library 25-10-10 V.Ivant (exhadr01-V09-03-09) -- PhysicsList - removed unused headers and double definition of - QGSP_BIC_EMY +- PhysicsList - removed unused headers and double definition of + QGSP_BIC_EMY 11-10-10 V.Ivant (exhadr01-V09-03-08) -- PhysicsList - removed TRV physics lists and cleanup elastic +- PhysicsList - removed TRV physics lists and cleanup elastic - Histo - use default options for AIDA 17-08-10 V.Ivant (exhadr01-V09-03-07) @@ -156,10 +164,10 @@ track of all tags. - Cleanup PhysList according to update of physics_list library 06-06-10 J.Perl (exhadr01-V09-03-05) -- Remove unused variable in EventAction +- Remove unused variable in EventAction 04-06-10 J.Perl (exhadr01-V09-03-04) -- Updated vis usage +- Updated vis usage 26-05-10 J.Allsion (exhadr01-V09-03-03) - Introduced G4UIExecutive. @@ -227,7 +235,7 @@ track of all tags. 16-05-07 V.Ivant (exhadr01-V08-03-00) - Added histogram on total energy deposit in the target -- Use renamed EM builders G4EmStandardPhysics_option1 and +- Use renamed EM builders G4EmStandardPhysics_option1 and G4EmStandardPhysics_option2 26-04-07 V.Ivant (exhadr01-V08-02-01) @@ -270,7 +278,7 @@ track of all tags. 07-06-06 V.Ivant (exhadr01-V08-00-01) - cleanup output, README, visulisation, and histograms - + 06-06-06 V.Ivant (exhadr01-V08-00-00) - first release - + diff --git a/examples/extended/hadronic/Hadr01/hadr01.in b/examples/extended/hadronic/Hadr01/hadr01.in index fdeccae490..d8aaf1784a 100644 --- a/examples/extended/hadronic/Hadr01/hadr01.in +++ b/examples/extended/hadronic/Hadr01/hadr01.in @@ -6,7 +6,7 @@ /run/verbose 2 /tracking/verbose 0 # -/testhadr/TargetMat G4_Al +/testhadr/TargetMat G4_W /testhadr/TargetRadius 1 cm /testhadr/TargetLength 10 cm /testhadr/NumberDivZ 100 diff --git a/examples/extended/hadronic/Hadr01/hadr01.out b/examples/extended/hadronic/Hadr01/hadr01.out index 80cc1ad912..71b82bf9fd 100644 --- a/examples/extended/hadronic/Hadr01/hadr01.out +++ b/examples/extended/hadronic/Hadr01/hadr01.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,7 +15,7 @@ /run/verbose 2 /tracking/verbose 0 # -/testhadr/TargetMat G4_Al +/testhadr/TargetMat G4_W /testhadr/TargetRadius 1 cm /testhadr/TargetLength 10 cm /testhadr/NumberDivZ 100 @@ -28,9 +28,9 @@ PhysicsList::AddPhysicsList: # /run/initialize userDetector->Construct() start. -### Target consist of 100 disks of G4_Al with R(mm)= 10 Width(mm)= 1 Total Length(mm)= 100 ### +### Target consist of 100 disks of G4_W with R(mm)= 10 Width(mm)= 1 Total Length(mm)= 100 ### -***** Table : Nb of materials = 3 ***** +***** Table : Nb of materials = 4 ***** Material: G4_Al density: 2.699 g/cm3 RadL: 8.896 cm Nucl.Int.Length: 38.894 cm Imean: 166.000 eV temperature: 293.15 K pressure: 1.00 atm @@ -40,7 +40,7 @@ userDetector->Construct() start. ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: G4_Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: G4_Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 21.800 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -95,10 +95,26 @@ userDetector->Construct() start. ElmMassFraction: 0.70 % ElmAbundance 13.16 % + Material: G4_W density: 19.300 g/cm3 RadL: 3.504 mm Nucl.Int.Length: 10.312 cm + Imean: 727.000 eV temperature: 293.15 K pressure: 1.00 atm + + ---> Element: W (W) Z = 74.0 N = 184 A = 183.842 g/mole + ---> Isotope: W180 Z = 74 N = 180 A = 179.95 g/mole abundance: 0.120 % + ---> Isotope: W182 Z = 74 N = 182 A = 181.95 g/mole abundance: 26.500 % + ---> Isotope: W183 Z = 74 N = 183 A = 182.95 g/mole abundance: 14.310 % + ---> Isotope: W184 Z = 74 N = 184 A = 183.95 g/mole abundance: 30.640 % + ---> Isotope: W186 Z = 74 N = 186 A = 185.95 g/mole abundance: 28.430 % + ElmMassFraction: 100.00 % ElmAbundance 100.00 % + + World is registered to the default region. physicsList->Construct() start. ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 +### HadronInelasticQBBC Construct Process: + Emin(FTFP)= 3 GeV Emax(FTFP)= 100000 GeV + Emin(BERT)= 1 GeV Emax(BERT)= 6 GeV Emax(BERTpions)= 12 GeV + Emin(BIC) = 0 GeV Emax(BIC)= 1.5 GeV. physicsList->CheckParticleList() start. physicsList->setCut() start. # @@ -129,10 +145,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -156,10 +173,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -187,9 +205,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -203,14 +221,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -219,9 +237,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -233,9 +251,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -246,9 +264,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -262,14 +280,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -278,9 +296,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -294,14 +312,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -310,9 +328,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -326,14 +344,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -342,9 +360,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -359,14 +377,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -375,9 +393,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -392,14 +410,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -408,9 +426,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -424,14 +442,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -440,9 +458,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -456,14 +474,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -493,6 +511,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -571,6 +611,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -711,7 +764,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi+Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -723,7 +777,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi-Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -791,14 +846,13 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= Region -- -- appears in world volume This region is in the mass world. Root logical volume(s) : World Pointers : G4VUserRegionInformation[0], G4UserLimits[0], G4FastSimulationManager[0], G4UserSteppingAction[0] - Materials : G4_Galactic G4_Al + Materials : G4_Galactic G4_W Production cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm Region -- -- is not associated to any world. @@ -817,9 +871,9 @@ Index : 0 used in the geometry : Yes DefaultRegionForTheWorld Index : 1 used in the geometry : Yes - Material : G4_Al + Material : G4_W Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.90532 keV e- 597.637 keV e+ 574.097 keV proton 100 keV + Energy thresholds : gamma 106.569 keV e- 2.30976 MeV e+ 2.13081 MeV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -828,22 +882,21 @@ Index : 1 used in the geometry : Yes Start closing geometry. G4GeometryManager::ReportVoxelStats -- Voxel Statistics - Total memory consumed for geometry optimisation: 17 kByte + Total memory consumed for geometry optimisation: 10 kByte Total CPU time elapsed for geometry optimisation: 0 seconds Voxelisation: top CPU users: Percent Total CPU System CPU Memory Volume ------- ---------- ---------- -------- ---------- - 0.00 0.00 0.00 17k Check + 0.00 0.00 0.00 11k Check Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume ------- -------- ------ ------ -------- ---------- ---------- - 100.00 17k 1 197 200 0.00 Check + 100.00 10k 1 197 200 0.00 Check ### Run 0 starts. ### Run 0 start -RunAction::BeginOfRunAction: User=1.010000s Real=1.034615s Sys=0.010000s -NuclearData: User=0.000000s Real=0.000004s Sys=0.000000s +Initialisation time: User=1.710000s Real=6.139790s Sys=0.210000s EventAction: Event # 0 started EventAction: Event # 10 started EventAction: Event # 20 started @@ -857,33 +910,34 @@ EventAction: Event # 90 started Run terminated. Run Summary Number of events processed : 100 - User=0.300000s Real=0.312422s Sys=0.010000s + User=1.050000s Real=1.065735s Sys=0.000000s +RunAction::EndOfRunAction: User=1.050000s Real=1.065825s Sys=0.000000s RunAction: End of run actions are started HistoManager: End of run actions are started ======================================================== Beam particle proton Beam Energy(MeV) 3000 Number of events 100 -Average energy deposit (MeV) 62.25 RMS(MeV) 57.77 -Average number of steps 187.1 -Average number of gamma 1.11 -Average number of e- 3.58 -Average number of e+ 0.03 -Average number of neutrons 0.7 -Average number of protons 0.78 +Average energy deposit (MeV) 609.9 RMS(MeV) 347.3 +Average number of steps 1038 +Average number of gamma 71.42 +Average number of e- 92.88 +Average number of e+ 4.79 +Average number of neutrons 23.78 +Average number of protons 4.84 Average number of antiprotons 0 -Average number of pi+ & pi- 0.18 -Average number of pi0 0.06 -Average number of kaons 0 -Average number of muons 0 -Average number of deuterons+tritons 0.16 -Average number of He3+alpha 0.31 -Average number of ions 0.42 +Average number of pi+ & pi- 0.75 +Average number of pi0 0.34 +Average number of kaons 0.01 +Average number of muons 0.12 +Average number of deuterons+tritons 2.31 +Average number of He3+alpha 0.52 +Average number of ions 6.12 Average number of forward neutrons 0 -Average number of reflected neutrons 0.66 +Average number of reflected neutrons 19.33 Average number of leaked neutrons 0 -Average number of proton leak 0.48 -Average number of pion leak 0.17 +Average number of proton leak 1.14 +Average number of pion leak 0.42 ======================================================== # @@ -897,22 +951,22 @@ G4SDManager deleted. EventManager deleted. Units table cleared. TransportationManager deleted. -Total navigation history collections cleaned: 13 +Total navigation history collections cleaned: 26 ================== Deleting memory pools =================== -Pool ID '20G4NavigationLevelRep', size : 0.0183 MB +Pool ID '20G4NavigationLevelRep', size : 0.0375 MB Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB Pool ID '7G4Event', size : 0.000961 MB Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.000961 MB Pool ID '15G4HCofThisEvent', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.00385 MB -Pool ID '7G4Track', size : 0.00769 MB -Pool ID '18G4TouchableHistory', size : 0.00192 MB +Pool ID '17G4DynamicParticle', size : 0.0125 MB +Pool ID '7G4Track', size : 0.024 MB +Pool ID '18G4TouchableHistory', size : 0.00288 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB -Pool ID '10G4Fragment', size : 0.00192 MB -Pool ID '17G4ReactionProduct', size : 0.00192 MB +Pool ID '10G4Fragment', size : 0.00673 MB +Pool ID '17G4ReactionProduct', size : 0.00673 MB Number of memory pools allocated: 12 of which, static: 0 -Dynamic pools deleted: 12 / Total memory freed: 0.041 MB +Dynamic pools deleted: 12 / Total memory freed: 0.096 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/extended/hadronic/Hadr01/include/CheckVolumeSD.hh b/examples/extended/hadronic/Hadr01/include/CheckVolumeSD.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr01/include/EventAction.hh b/examples/extended/hadronic/Hadr01/include/EventAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr01/include/PhysicsList.hh b/examples/extended/hadronic/Hadr01/include/PhysicsList.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr01/include/PhysicsListMessenger.hh b/examples/extended/hadronic/Hadr01/include/PhysicsListMessenger.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr01/include/RunAction.hh b/examples/extended/hadronic/Hadr01/include/RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr01/include/TargetSD.hh b/examples/extended/hadronic/Hadr01/include/TargetSD.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr01/src/CheckVolumeSD.cc b/examples/extended/hadronic/Hadr01/src/CheckVolumeSD.cc old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr01/src/EventAction.cc b/examples/extended/hadronic/Hadr01/src/EventAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr01/src/PhysicsList.cc b/examples/extended/hadronic/Hadr01/src/PhysicsList.cc old mode 100755 new mode 100644 index b5cecb8eee..8221e00a3e --- a/examples/extended/hadronic/Hadr01/src/PhysicsList.cc +++ b/examples/extended/hadronic/Hadr01/src/PhysicsList.cc @@ -207,8 +207,6 @@ void PhysicsList::AddPhysicsList(const G4String& name) } else if (name == "FTFP_BERT_TRV") { AddPhysicsList("emstandardGS"); - G4EmParameters::Instance()->SetMscStepLimitType( fUseSafety ); - SetBuilderList1(false); fHadronPhys.push_back( new G4HadronPhysicsFTFP_BERT_TRV(verboseLevel)); @@ -252,6 +250,7 @@ void PhysicsList::AddPhysicsList(const G4String& name) SetBuilderList0(true); fHadronPhys.push_back( new G4HadronPhysicsQGSP_BERT_HP(verboseLevel)); + AddPhysicsList("RadioactiveDecay"); } else if (name == "QGSP_BIC") { @@ -273,6 +272,7 @@ void PhysicsList::AddPhysicsList(const G4String& name) SetBuilderList0(true); fHadronPhys.push_back( new G4HadronPhysicsQGSP_BIC_HP(verboseLevel)); + AddPhysicsList("RadioactiveDecay"); } else if (name == "RadioactiveDecay") { @@ -298,7 +298,9 @@ void PhysicsList::SetBuilderList0(G4bool flagHP) } fHadronPhys.push_back( new G4StoppingPhysics(verboseLevel)); fHadronPhys.push_back( new G4IonPhysics(verboseLevel)); - fHadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel)); + if(!flagHP) { + fHadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel)); + } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo..... @@ -313,7 +315,9 @@ void PhysicsList::SetBuilderList1(G4bool flagHP) } fHadronPhys.push_back( new G4StoppingPhysics(verboseLevel)); fHadronPhys.push_back( new G4IonPhysics(verboseLevel)); - fHadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel)); + if(!flagHP) { + fHadronPhys.push_back( new G4NeutronTrackingCut(verboseLevel)); + } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo..... diff --git a/examples/extended/hadronic/Hadr01/src/RunAction.cc b/examples/extended/hadronic/Hadr01/src/RunAction.cc old mode 100755 new mode 100644 index 668e240048..247c345dc2 --- a/examples/extended/hadronic/Hadr01/src/RunAction.cc +++ b/examples/extended/hadronic/Hadr01/src/RunAction.cc @@ -65,14 +65,11 @@ void RunAction::BeginOfRunAction(const G4Run* aRun) G4int id = aRun->GetRunID(); G4cout << "### Run " << id << " start" << G4endl; fTimer->Stop(); - G4cout << "RunAction::BeginOfRunAction: " << *fTimer << G4endl; + G4cout << "Initialisation time: " << *fTimer << G4endl; delete fTimer; fTimer = new G4Timer(); fTimer->Start(); - G4NuclearLevelData::GetInstance(); - fTimer->Stop(); - G4cout << "NuclearData: " << *fTimer << G4endl; (HistoManager::GetPointer())->BeginOfRun(); } @@ -82,6 +79,8 @@ void RunAction::BeginOfRunAction(const G4Run* aRun) void RunAction::EndOfRunAction(const G4Run*) { + fTimer->Stop(); + G4cout << "RunAction::EndOfRunAction: " << *fTimer << G4endl; G4cout << "RunAction: End of run actions are started" << G4endl; (HistoManager::GetPointer())->EndOfRun(); } diff --git a/examples/extended/hadronic/Hadr02/CMakeLists.txt b/examples/extended/hadronic/Hadr02/CMakeLists.txt index 955c457b14..14f266fc69 100644 --- a/examples/extended/hadronic/Hadr02/CMakeLists.txt +++ b/examples/extended/hadronic/Hadr02/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(Hadr02) #---------------------------------------------------------------------------- diff --git a/examples/extended/hadronic/Hadr02/Hadr02.cc b/examples/extended/hadronic/Hadr02/Hadr02.cc index f38671b19a..6233c29e7c 100644 --- a/examples/extended/hadronic/Hadr02/Hadr02.cc +++ b/examples/extended/hadronic/Hadr02/Hadr02.cc @@ -34,12 +34,12 @@ // // Author: V.Ivanchenko 20 June 2008 // -// Modified: +// Modified: // // ------------------------------------------------------------- // // -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "Randomize.hh" #include "DetectorConstruction.hh" @@ -65,8 +65,8 @@ int main(int argc,char** argv) { //choose the Random engine CLHEP::HepRandom::setTheEngine(new CLHEP::RanecuEngine()); - //Construct the default run manager - G4RunManager * runManager = new G4RunManager(); + //Construct a serial run manager + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); //set mandatory initialization classes runManager->SetUserInitialization(new DetectorConstruction()); @@ -83,12 +83,12 @@ int main(int argc,char** argv) { char* path = std::getenv("PHYSLIST"); if (path) { physName = G4String(path); } } - if ( physName == "UrQMD" ) { - phys = new UrQMD; + if ( physName == "UrQMD" ) { + phys = new UrQMD; } else if ( physName == "CRMC_FTFP_BERT" ) { phys = new CRMC_FTFP_BERT; - } else { - phys = factory.GetReferencePhysList( physName ); + } else { + phys = factory.GetReferencePhysList( physName ); } // Physics List is defined via environment variable PHYSLIST @@ -112,7 +112,7 @@ int main(int argc,char** argv) { visManager->Initialize(); //get the pointer to the User Interface manager - G4UImanager* UImanager = G4UImanager::GetUIpointer(); + G4UImanager* UImanager = G4UImanager::GetUIpointer(); if (ui) { //interactive mode @@ -120,13 +120,13 @@ int main(int argc,char** argv) { delete ui; } else { - //batch mode + //batch mode G4String command = "/control/execute "; G4String fileName = argv[1]; UImanager->ApplyCommand(command+fileName); } - //job termination + //job termination delete visManager; delete runManager; } diff --git a/examples/extended/hadronic/Hadr02/History b/examples/extended/hadronic/Hadr02/History index 860b1dbc2c..ca653e15cd 100644 --- a/examples/extended/hadronic/Hadr02/History +++ b/examples/extended/hadronic/Hadr02/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-20 B. Morgan (exhadr02-V10-06-01) +- Migration to G4RunManagerFactory. + 07-05-20 A. Ribon (exhadr02-V10-06-00) - HadronPhysicsCRMC_FTFP_BERT , HadronPhysicsHIJING , HadronPhysicsUrQMD : introduced the new class G4HyperonBuilder which is now needed when @@ -26,7 +29,7 @@ track of all tags. 02-08-19 G. Folger (exhadr02-V10-05-02) - remove use of G4DataQuestionaire, following cleanup in physicslists, see phys-lists-V10-05-02 and phys-util-V10-04-02 - + 12-06-19 A. Ribon (exhadr02-V10-05-01) - G4CRMCModel : some improvements (e.g. considered the energy-per-nucleon, instead of the whole projectile, in the case of nucleus projectile) and @@ -43,8 +46,8 @@ track of all tags. See the README file for more information. 09-08-18 A. Ribon (exhadr02-V10-04-02) -- UrQMDProtonBuilder, IonUrQMDPhysics, UrQMDPiKBuilder, - UrQMDAntiBarionBuilder, UrQMDNeutronBuilder, +- UrQMDProtonBuilder, IonUrQMDPhysics, UrQMDPiKBuilder, + UrQMDAntiBarionBuilder, UrQMDNeutronBuilder, HIJINGProtonBuilder, IonHIJINGPhysics, HIJINGNeutronBuilder : replaced the explicit high-energy limit of hadronic physics with the one from G4HadronicParameters . @@ -143,7 +146,7 @@ track of all tags. 17-05-11 G.Folger (exhadr02-V09-04-04) - Allow to build without reference to DPMJET; all .cc files linking to DPMJet are pretected by #ifdef G4_USE_DPMJET - + 21-04-11 V.Ivant (exhadr02-V09-04-03) - Fixed problems of energy intervals for models for ions allowing to work with different reference Physics Lists diff --git a/examples/extended/hadronic/Hadr02/hadr02.out b/examples/extended/hadronic/Hadr02/hadr02.out index 093bb1f307..ddae2c5002 100644 --- a/examples/extended/hadronic/Hadr02/hadr02.out +++ b/examples/extended/hadronic/Hadr02/hadr02.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -30,10 +30,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -89,7 +91,7 @@ Some /vis commands (optionally) take a string to specify colour. ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: G4_Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: G4_Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 21.800 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -99,6 +101,10 @@ Some /vis commands (optionally) take a string to specify colour. +### HadronInelasticQBBC Construct Process: + Emin(FTFP)= 3 GeV Emax(FTFP)= 100000 GeV + Emin(BERT)= 1 GeV Emax(BERT)= 6 GeV Emax(BERTpions)= 12 GeV + Emin(BIC) = 0 GeV Emax(BIC)= 1.5 GeV. ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 /run/setCut 1 km /gun/particle ion @@ -131,10 +137,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -158,10 +165,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -189,9 +197,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -205,14 +213,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -221,9 +229,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -235,9 +243,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -248,9 +256,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -264,14 +272,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -280,9 +288,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -296,14 +304,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -312,9 +320,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -328,14 +336,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -344,9 +352,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -361,14 +369,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -377,9 +385,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -394,14 +402,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -410,9 +418,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -426,14 +434,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -442,9 +450,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -458,14 +466,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -495,6 +503,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -573,6 +603,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -713,7 +756,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi+Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -725,7 +769,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi-Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -793,7 +838,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -832,30 +876,33 @@ See commands in /vis/modeling/trajectories/ for other options. Run terminated. Run Summary Number of events processed : 100 - User=0.180000s Real=0.210899s Sys=0.010000s + User=0.090000s Real=0.143179s Sys=0.000000s RunAction: End of run action is starting HistoManager: End of run actions are started ======================================================== Beam particle S32 Beam Energy(GeV) 200 Number of events 100 -Average energy deposit (GeV) 6.353 RMS(GeV) 4.036 -Average number of steps 54.7 -Average number of gamma 0.97 +Average energy deposit (GeV) 6.672 RMS(GeV) 4.317 +Average number of steps 57.1 +Average number of gamma 0.85 Average number of e- 0 Average number of e+ 0 -Average number of neutrons 11.42 -Average number of protons 12.73 +Average number of neutrons 9.96 +Average number of protons 11.06 Average number of antiprotons 0 -Average number of pi+ & pi- 8.11 -Average number of pi0 3.87 -Average number of kaons 0.12 +Average number of pi+ & pi- 6.76 +Average number of pi0 3.44 +Average number of kaons 0.1 Average number of muons 0 -Average number of deuterons+tritons 2.76 -Average number of He3+alpha 1.17 -Average number of ions 1.11 +Average number of deuterons+tritons 2.61 +Average number of He3+alpha 0.98 +Average number of ions 1.05 ======================================================== +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. diff --git a/examples/extended/hadronic/Hadr02/hijing1_383/Main_HIJING.f b/examples/extended/hadronic/Hadr02/hijing1_383/Main_HIJING.f old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr02/hijing1_383/hijing1.383.f b/examples/extended/hadronic/Hadr02/hijing1_383/hijing1.383.f old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr02/hijing1_383/hipyset1.35.f b/examples/extended/hadronic/Hadr02/hijing1_383/hipyset1.35.f old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr02/include/EventAction.hh b/examples/extended/hadronic/Hadr02/include/EventAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr02/include/G4CRMCModel.hh b/examples/extended/hadronic/Hadr02/include/G4CRMCModel.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr02/include/G4UrQMD1_3Interface.hh b/examples/extended/hadronic/Hadr02/include/G4UrQMD1_3Interface.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr02/include/G4UrQMD1_3Model.hh b/examples/extended/hadronic/Hadr02/include/G4UrQMD1_3Model.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr02/include/RunAction.hh b/examples/extended/hadronic/Hadr02/include/RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr02/include/TargetSD.hh b/examples/extended/hadronic/Hadr02/include/TargetSD.hh old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr02/src/EventAction.cc b/examples/extended/hadronic/Hadr02/src/EventAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr02/src/RunAction.cc b/examples/extended/hadronic/Hadr02/src/RunAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/hadronic/Hadr03/.README.txt b/examples/extended/hadronic/Hadr03/.README.txt index 69777a8e3f..d8d185b934 100644 --- a/examples/extended/hadronic/Hadr03/.README.txt +++ b/examples/extended/hadronic/Hadr03/.README.txt @@ -31,11 +31,7 @@ loss. Several hadronic physics options are controlled by environment variables. - To trigger them, an envHadronic.csh has been added in this example. - One must select the options wished, and do -\verbatim - source envHadronic.csh (or sh) -\endverbatim + To select them, see Hadr03.cc \section Hadr03_s3 AN EVENT : THE PRIMARY GENERATOR @@ -144,5 +140,19 @@ Idle> type your commands .... Idle> exit \endverbatim - + + Macros provided in this example: + - Au196.mac: neutron (1 MeV) on Au195 + - elastic.mac: proton (10 MeV) on Mo100. Elastic collisions alone + - fusion.mac: deuteron (400 keV) on tritium + - gamma.mac: gamma (10 MeV) on Au196 + - inelastic.mac: proton (10 MaV) on Mo98. Inelastic interactions alone + - ion.mac: Li7 (140 MeV) on Be9 + - nCapture.mac: neutron (1 eV) on Boron. Capture process alone + - nFission.mac: neutron (1 eV) on U235. Fission process alone + - neutron.mac: neutron (1 MeV) on Boron + + Macros to be run interactively: + - debug.mac: proton (10 MeV) on Boron + - vis.mac: To activate visualization */ diff --git a/examples/extended/hadronic/Hadr03/CMakeLists.txt b/examples/extended/hadronic/Hadr03/CMakeLists.txt index e9f689b023..a90cfde4aa 100644 --- a/examples/extended/hadronic/Hadr03/CMakeLists.txt +++ b/examples/extended/hadronic/Hadr03/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(Hadr03) #---------------------------------------------------------------------------- @@ -40,7 +43,7 @@ target_link_libraries(Hadr03 ${Geant4_LIBRARIES} ) # relies on these scripts being in the current working directory. # set(Hadr03_SCRIPTS - debug.mac envHadronic.csh envHadronic.sh elastic.mac gamma.mac hadr03.in inelastic.mac ion.mac nCapture.mac neutron.mac nFission.mac vis.mac + debug.mac envHadronic.csh envHadronic.sh elastic.mac gamma.mac hadr03.in inelastic.mac ion.mac nCapture.mac neutron.mac nFission.mac fusion.mac vis.mac ) foreach(_script ${Hadr03_SCRIPTS}) diff --git a/examples/extended/hadronic/Hadr03/Hadr03.cc b/examples/extended/hadronic/Hadr03/Hadr03.cc index 77eea09788..50738253bc 100644 --- a/examples/extended/hadronic/Hadr03/Hadr03.cc +++ b/examples/extended/hadronic/Hadr03/Hadr03.cc @@ -50,6 +50,8 @@ #include "G4UIExecutive.hh" #include "G4VisExecutive.hh" +#include "G4ParticleHPManager.hh" + //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) { @@ -82,6 +84,22 @@ int main(int argc,char** argv) { runManager->SetUserInitialization(new ActionInitialization(det)); + // Replaced HP environmental variables with C++ calls + G4ParticleHPManager::GetInstance()->SetSkipMissingIsotopes( false ); + G4ParticleHPManager::GetInstance()->SetDoNotAdjustFinalState( false ); + G4ParticleHPManager::GetInstance()->SetUseOnlyPhotoEvaporation( false ); + G4ParticleHPManager::GetInstance()->SetNeglectDoppler( false ); + G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( false ); + G4ParticleHPManager::GetInstance()->SetUseWendtFissionModel( false ); + G4ParticleHPManager::GetInstance()->SetUseNRESP71Model( false ); + //G4ParticleHPManager::GetInstance()->SetSkipMissingIsotopes( true ); + //G4ParticleHPManager::GetInstance()->SetDoNotAdjustFinalState( true ); + //G4ParticleHPManager::GetInstance()->SetUseOnlyPhotoEvaporation( true ); + //G4ParticleHPManager::GetInstance()->SetNeglectDoppler( true ); + //G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( true ); + //G4ParticleHPManager::GetInstance()->SetUseWendtFissionModel( true ); + //G4ParticleHPManager::GetInstance()->SetUseNRESP71Model( true ); + //initialize visualization G4VisManager* visManager = nullptr; diff --git a/examples/extended/hadronic/Hadr03/History b/examples/extended/hadronic/Hadr03/History index 0e99ae67ef..4ec265aec3 100644 --- a/examples/extended/hadronic/Hadr03/History +++ b/examples/extended/hadronic/Hadr03/History @@ -13,6 +13,16 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +22-10-20 mma (exhadr03-V10-06-04) +- add fusion.mac +- README : add macros descrption + +05-08-20 A. Ribon (exhadr03-V10-06-03) +- envHadronic.(c)sh , nFission.mac , Hadr03.cc : removed deprecated + HP environmental variables and replaced them with corresponding + C++ calls in the main, and UI commands in the macros. + (The two shell-script files will be removed in G4 11.0.) + 04-06-20 mma (exhadr03-V10-06-02) - HistoManager, SteppingAction : add plot of e- diff --git a/examples/extended/hadronic/Hadr03/README b/examples/extended/hadronic/Hadr03/README index 696fb73483..7b46f5368e 100644 --- a/examples/extended/hadronic/Hadr03/README +++ b/examples/extended/hadronic/Hadr03/README @@ -33,9 +33,7 @@ loss. Several hadronic physics options are controlled by environment variables. - To trigger them, an envHadronic.csh has been added in this example. - One must select the options wished, and do - source envHadronic.csh (or sh) + To select them, see Hadr03.cc. 3- AN EVENT : THE PRIMARY GENERATOR @@ -130,3 +128,18 @@ Idle> type your commands .... Idle> exit + + Macros provided in this example: + - Au196.mac: neutron (1 MeV) on Au195 + - elastic.mac: proton (10 MeV) on Mo100. Elastic collisions alone + - fusion.mac: deuteron (400 keV) on tritium + - gamma.mac: gamma (10 MeV) on Au196 + - inelastic.mac: proton (10 MaV) on Mo98. Inelastic interactions alone + - ion.mac: Li7 (140 MeV) on Be9 + - nCapture.mac: neutron (1 eV) on Boron. Capture process alone + - nFission.mac: neutron (1 eV) on U235. Fission process alone + - neutron.mac: neutron (1 MeV) on Boron + + Macros to be run interactively: + - debug.mac: proton (10 MeV) on Boron + - vis.mac: To activate visualization diff --git a/examples/extended/hadronic/Hadr03/envHadronic.csh b/examples/extended/hadronic/Hadr03/envHadronic.csh old mode 100755 new mode 100644 index 70075091c0..f5bd45f799 --- a/examples/extended/hadronic/Hadr03/envHadronic.csh +++ b/examples/extended/hadronic/Hadr03/envHadronic.csh @@ -1,3 +1,4 @@ +# === FILE TO BE REMOVED IN G4 11.0 === # # for neutronHP and particleHP # @@ -10,19 +11,10 @@ unsetenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS unsetenv G4PHP_DO_NOT_ADJUST_FINAL_STATE unsetenv G4PHP_NELECT_DOPPLER -#### setenv G4NEUTRONHP_SKIP_MISSING_ISOTOPES 1 -#### setenv G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE 1 -#### setenv G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION 1 -#### setenv G4NEUTRONHP_NELECT_DOPPLER 1 -#### setenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS 1 -# -#### setenv G4PHP_DO_NOT_ADJUST_FINAL_STATE 1 -#### setenv G4PHP_NELECT_DOPPLER 1 # # for Bertini cascade # unsetenv G4CASCADE_USE_PRECOMPOUND -#### setenv G4CASCADE_USE_PRECOMPOUND 1 env |grep G4NEUTRONHP env |grep G4PHP diff --git a/examples/extended/hadronic/Hadr03/envHadronic.sh b/examples/extended/hadronic/Hadr03/envHadronic.sh old mode 100755 new mode 100644 index 3bc63c27fc..19c87ea1ca --- a/examples/extended/hadronic/Hadr03/envHadronic.sh +++ b/examples/extended/hadronic/Hadr03/envHadronic.sh @@ -1,3 +1,4 @@ +# === FILE TO BE REMOVED IN G4 11.0 === # # for neutronHP and particleHP # @@ -10,34 +11,11 @@ unset G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS unset G4PHP_DO_NOT_ADJUST_FINAL_STATE unset G4PHP_NELECT_DOPPLER -#### G4NEUTRONHP_SKIP_MISSING_ISOTOPES=1 -#### export G4NEUTRONHP_SKIP_MISSING_ISOTOPES - -#### G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE=1 -#### export G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE - -#### G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION=1 -#### export G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION - -#### G4NEUTRONHP_NELECT_DOPPLER=1 -#### export G4NEUTRONHP_NELECT_DOPPLER - -#### G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS=1 -#### export G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS - -#### G4PHP_DO_NOT_ADJUST_FINAL_STATE=1 -#### export G4PHP_DO_NOT_ADJUST_FINAL_STATE - -#### G4PHP_NELECT_DOPPLER=1 -#### export G4PHP_NELECT_DOPPLER # # for Bertini cascade # unset G4CASCADE_USE_PRECOMPOUND -#### G4CASCADE_USE_PRECOMPOUND=1 -#### export G4CASCADE_USE_PRECOMPOUND - env |grep G4NEUTRONHP env |grep G4PHP env |grep G4CASCADE diff --git a/examples/extended/hadronic/Hadr03/fusion.mac b/examples/extended/hadronic/Hadr03/fusion.mac new file mode 100644 index 0000000000..c77ee6fd9a --- /dev/null +++ b/examples/extended/hadronic/Hadr03/fusion.mac @@ -0,0 +1,18 @@ +# +# Macro file for "Hadr03.cc" +# +/control/verbose 1 +/run/verbose 1 +# +/testhadr/det/setIsotopeMat tritium 1 3 0.1 g/cm3 +/testhadr/det/setSize 100 m +# +/run/initialize +# +/process/inactivate hadElastic +# +/gun/particle deuteron +/gun/energy 400 keV +# +/run/printProgress 10000 +/run/beamOn 100000 diff --git a/examples/extended/hadronic/Hadr03/hadr03.out b/examples/extended/hadronic/Hadr03/hadr03.out index ec05d7daff..e27e6e8210 100644 --- a/examples/extended/hadronic/Hadr03/hadr03.out +++ b/examples/extended/hadronic/Hadr03/hadr03.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -40,7 +40,7 @@ NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use ### === Deexcitation model UAtomDeexcitation is activated for 1 region: ### === Auger cascade flag: 1 -### === Ignore cuts flag: 0 +### === Ignore cuts flag: 1 # /process/list Transportation, hadElastic, hadElastic, hadElastic @@ -50,17 +50,16 @@ NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, neutronInelastic, nCapture, nFission - protonInelastic, pi+Inelastic, pi-Inelastic, kaon+Inelastic - kaon-Inelastic, kaon0LInelastic, kaon0SInelastic, lambdaInelastic -anti-lambdaInelastic, sigma-Inelastic,anti_sigma-Inelastic, sigma+Inelastic -anti_sigma+Inelastic, xi-Inelastic, anti_xi-Inelastic, xi0Inelastic - anti_xi0Inelastic, omega-Inelastic,anti_omega-Inelastic,anti_protonInelastic -anti_neutronInelastic,anti_deuteronInelastic,anti_tritonInelastic, anti_He3Inelastic -anti_alphaInelastic, ionElastic, dInelastic, tInelastic - He3Inelastic, alphaInelastic, ionInelastic, photonNuclear -RadioactiveDecayBase + hadElastic, hadElastic, hadElastic, neutronInelastic + nCapture, nFission, protonInelastic, pi+Inelastic + pi-Inelastic, kaon+Inelastic, kaon-Inelastic, kaon0LInelastic + kaon0SInelastic,anti_protonInelastic,anti_neutronInelastic,anti_deuteronInelastic +anti_tritonInelastic, anti_He3Inelastic,anti_alphaInelastic, lambdaInelastic + sigma+Inelastic, sigma-Inelastic, xi0Inelastic, xi-Inelastic + omega-Inelastic,anti_lambdaInelastic,anti_sigma+Inelastic,anti_sigma-Inelastic + anti_xi0Inelastic, anti_xi-Inelastic,anti_omega-Inelastic, ionElastic + dInelastic, tInelastic, He3Inelastic, alphaInelastic + ionInelastic, photonNuclear,RadioactiveDecayBase # /gun/particle proton /gun/energy 10 MeV @@ -79,13 +78,26 @@ Max 2J for sampling of angular correlations 10 Atomic de-excitation enabled 1 Auger electron emission enabled 1 Auger cascade enabled 1 -Check EM cuts disabled for atomic de-excitation 0 +Check EM cuts disabled for atomic de-excitation 1 Use Bearden atomic level energies 0 ====================================================================== NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + UseOnlyPhotoEvaporation ? 0 + SkipMissingIsotopes ? 0 + NeglectDoppler ? 0 + DoNotAdjustFinalState ? 0 + ProduceFissionFragments ? 0 + UseWendtFissionModel ? 0 + UseNRESP71Model ? 0 +======================================================= + @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon @@ -139,9 +151,7 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_He3Inelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV --------------------------------------------------- @@ -153,9 +163,7 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_alphaInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV --------------------------------------------------- @@ -167,11 +175,21 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_deuteronInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -181,9 +199,7 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_neutronInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV --------------------------------------------------- @@ -195,9 +211,7 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_protonInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV --------------------------------------------------- @@ -209,9 +223,7 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_tritonInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV --------------------------------------------------- @@ -268,10 +280,9 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -350,10 +361,9 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -392,7 +402,6 @@ Store e- internal conversion data 1 Electron internal conversion ID 0 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -400,7 +409,7 @@ Upload data before 1st event for Z < 9 Index : 0 used in the geometry : Yes Material : Molybdenum98 Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 0 fm - Energy thresholds : gamma 42.9817 keV e- 1.43711 MeV e+ 1.35304 MeV proton 0 eV + Energy thresholds : gamma 42.9443 keV e- 1.44302 MeV e+ 1.36749 MeV proton 0 eV Region(s) which use this couple : DefaultRegionForTheWorld @@ -425,7 +434,7 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 10000 - User=0.280000s Real=0.299211s Sys=0.010000s + User=0.100000s Real=0.117273s Sys=0.000000s The run is 10000 proton of 10 MeV through 10 m of Molybdenum98 (density: 10.28 g/cm3 ) @@ -447,7 +456,7 @@ Run Summary proton + Mo98 --> N gamma or e- + Tc99: 1 Q = 6.4945 MeV proton + Mo98 --> N gamma or e- + Tc99[142.683]: 1 Q = 6.3518 MeV proton + Mo98 --> N gamma or e- + neutron + Tc98: 1873 Q = -2.4771 MeV - proton + Mo98 --> N gamma or e- + proton + Mo98: 13 Q = -9.3784e-06 eV + proton + Mo98 --> N gamma or e- + proton + Mo98: 13 Q = -8.6404e-06 eV proton + Mo98 --> proton + Mo98: 8112 Q = -5.6975e-06 eV number of gamma or e- (ic): N = 1 --> 10 diff --git a/examples/extended/hadronic/Hadr03/ion.mac b/examples/extended/hadronic/Hadr03/ion.mac index 1125368e3c..815f554747 100644 --- a/examples/extended/hadronic/Hadr03/ion.mac +++ b/examples/extended/hadronic/Hadr03/ion.mac @@ -1,7 +1,5 @@ # # Macro file for "Hadr03.cc" -# (can be run in batch, without graphic) -# # /control/verbose 2 /run/verbose 2 @@ -19,5 +17,4 @@ /gun/energy 140 MeV # /run/printProgress 10000 -# /run/beamOn 100000 diff --git a/examples/extended/hadronic/Hadr03/nFission.mac b/examples/extended/hadronic/Hadr03/nFission.mac index 8dc64a3401..4a743bd8f7 100644 --- a/examples/extended/hadronic/Hadr03/nFission.mac +++ b/examples/extended/hadronic/Hadr03/nFission.mac @@ -1,8 +1,13 @@ # # Macro file for "Hadr03.cc" # -# NB. for neutronHP, do not forget to activate -# G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS +# NB. for neutronHP, do not forget to activate the fission fragment model +# via one, and only one, of the following two UI commands: +# - To use the default fission model: +#/process/had/particle_hp/produce_fission_fragment true +# +# - To use the alternative Wendt fission model: +#/process/had/particle_hp/use_Wendt_fission_model true # /control/verbose 2 /run/verbose 2 diff --git a/examples/extended/hadronic/Hadr04/.README.txt b/examples/extended/hadronic/Hadr04/.README.txt index 7e6bfefe11..0f13cc0e6b 100644 --- a/examples/extended/hadronic/Hadr04/.README.txt +++ b/examples/extended/hadronic/Hadr04/.README.txt @@ -36,11 +36,7 @@ A command allows to select or not ThermalScattering model. Several hadronic physics options are controlled by environment variables. - To trigger them, an envHadronic.csh has been added in this example. - One must select the options wished, and do -\verbatim - source envHadronic.csh (or sh) -\endverbatim + To select them, see Hadr04.cc NB. class NeutronHPphysics can be reused with other physicsConstructors, as neutron processes are deleted before to be re-created. @@ -125,5 +121,12 @@ Idle> control/execute vis.mac .... Idle> exit \endverbatim - + + Macros provided in this example: + - graphite.mac: neutron (2 MeV) in graphite + - run01.mac: neutron (2 MeV) in Water_ts + + Macros to be run interactively: + - debug.mac: neutron (2 MeV) in Water_ts + - vis.mac: To activate visualization */ diff --git a/examples/extended/hadronic/Hadr04/CMakeLists.txt b/examples/extended/hadronic/Hadr04/CMakeLists.txt index ff032b291a..f71ffb067e 100644 --- a/examples/extended/hadronic/Hadr04/CMakeLists.txt +++ b/examples/extended/hadronic/Hadr04/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(Hadr04) #---------------------------------------------------------------------------- diff --git a/examples/extended/hadronic/Hadr04/Hadr04.cc b/examples/extended/hadronic/Hadr04/Hadr04.cc index 1b69ee052d..2dfd321202 100644 --- a/examples/extended/hadronic/Hadr04/Hadr04.cc +++ b/examples/extended/hadronic/Hadr04/Hadr04.cc @@ -49,6 +49,8 @@ #include "G4UIExecutive.hh" #include "G4VisExecutive.hh" +#include "G4ParticleHPManager.hh" + //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) { @@ -81,6 +83,22 @@ int main(int argc,char** argv) { //initialize visualization G4VisManager* visManager = nullptr; + // Replaced HP environmental variables with C++ calls + G4ParticleHPManager::GetInstance()->SetSkipMissingIsotopes( false ); + G4ParticleHPManager::GetInstance()->SetDoNotAdjustFinalState( false ); + G4ParticleHPManager::GetInstance()->SetUseOnlyPhotoEvaporation( false ); + G4ParticleHPManager::GetInstance()->SetNeglectDoppler( false ); + G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( false ); + G4ParticleHPManager::GetInstance()->SetUseWendtFissionModel( false ); + G4ParticleHPManager::GetInstance()->SetUseNRESP71Model( false ); + //G4ParticleHPManager::GetInstance()->SetSkipMissingIsotopes( true ); + //G4ParticleHPManager::GetInstance()->SetDoNotAdjustFinalState( true ); + //G4ParticleHPManager::GetInstance()->SetUseOnlyPhotoEvaporation( true ); + //G4ParticleHPManager::GetInstance()->SetNeglectDoppler( true ); + //G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( true ); + //G4ParticleHPManager::GetInstance()->SetUseWendtFissionModel( true ); + //G4ParticleHPManager::GetInstance()->SetUseNRESP71Model( true ); + //get the pointer to the User Interface manager G4UImanager* UImanager = G4UImanager::GetUIpointer(); diff --git a/examples/extended/hadronic/Hadr04/History b/examples/extended/hadronic/Hadr04/History index b21b8b0191..bfe8ac6ba0 100644 --- a/examples/extended/hadronic/Hadr04/History +++ b/examples/extended/hadronic/Hadr04/History @@ -12,6 +12,14 @@ track of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- + +22-10-20 mma (exhadr04-V10-06-01) +- README : add macros descrption + +05-08-20 A. Ribon (exhadr04-V10-06-00) +- envHadronic.(c)sh , Hadr04.cc : removed deprecated HP environmental + variables and replaced them with corresponding C++ calls in the main. + (These two shell-script files will be removed in G4 11.0.) 25-06-18 mma (exhadr04-V10-04-04) - envHadronic : add env variables for particleHP (PHP) diff --git a/examples/extended/hadronic/Hadr04/README b/examples/extended/hadronic/Hadr04/README index 5da5fa1ef3..4799e55080 100644 --- a/examples/extended/hadronic/Hadr04/README +++ b/examples/extended/hadronic/Hadr04/README @@ -39,9 +39,7 @@ A command allows to select or not ThermalScattering model. Several hadronic physics options are controlled by environment variables. - To trigger them, an envHadronic.csh has been added in this example. - One must select the options wished, and do - source envHadronic.csh (or sh) + To select them, see Hadr04.cc NB. class NeutronHPphysics can be reused with other physicsConstructors, as neutron processes are deleted before to be re-created. @@ -116,3 +114,11 @@ Idle> type your commands .... Idle> exit + + Macros provided in this example: + - graphite.mac: neutron (2 MeV) in graphite + - run01.mac: neutron (2 MeV) in Water_ts + + Macros to be run interactively: + - debug.mac: neutron (2 MeV) in Water_ts + - vis.mac: To activate visualization diff --git a/examples/extended/hadronic/Hadr04/envHadronic.csh b/examples/extended/hadronic/Hadr04/envHadronic.csh old mode 100755 new mode 100644 index 70075091c0..f5bd45f799 --- a/examples/extended/hadronic/Hadr04/envHadronic.csh +++ b/examples/extended/hadronic/Hadr04/envHadronic.csh @@ -1,3 +1,4 @@ +# === FILE TO BE REMOVED IN G4 11.0 === # # for neutronHP and particleHP # @@ -10,19 +11,10 @@ unsetenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS unsetenv G4PHP_DO_NOT_ADJUST_FINAL_STATE unsetenv G4PHP_NELECT_DOPPLER -#### setenv G4NEUTRONHP_SKIP_MISSING_ISOTOPES 1 -#### setenv G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE 1 -#### setenv G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION 1 -#### setenv G4NEUTRONHP_NELECT_DOPPLER 1 -#### setenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS 1 -# -#### setenv G4PHP_DO_NOT_ADJUST_FINAL_STATE 1 -#### setenv G4PHP_NELECT_DOPPLER 1 # # for Bertini cascade # unsetenv G4CASCADE_USE_PRECOMPOUND -#### setenv G4CASCADE_USE_PRECOMPOUND 1 env |grep G4NEUTRONHP env |grep G4PHP diff --git a/examples/extended/hadronic/Hadr04/envHadronic.sh b/examples/extended/hadronic/Hadr04/envHadronic.sh old mode 100755 new mode 100644 index 3bc63c27fc..19c87ea1ca --- a/examples/extended/hadronic/Hadr04/envHadronic.sh +++ b/examples/extended/hadronic/Hadr04/envHadronic.sh @@ -1,3 +1,4 @@ +# === FILE TO BE REMOVED IN G4 11.0 === # # for neutronHP and particleHP # @@ -10,34 +11,11 @@ unset G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS unset G4PHP_DO_NOT_ADJUST_FINAL_STATE unset G4PHP_NELECT_DOPPLER -#### G4NEUTRONHP_SKIP_MISSING_ISOTOPES=1 -#### export G4NEUTRONHP_SKIP_MISSING_ISOTOPES - -#### G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE=1 -#### export G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE - -#### G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION=1 -#### export G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION - -#### G4NEUTRONHP_NELECT_DOPPLER=1 -#### export G4NEUTRONHP_NELECT_DOPPLER - -#### G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS=1 -#### export G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS - -#### G4PHP_DO_NOT_ADJUST_FINAL_STATE=1 -#### export G4PHP_DO_NOT_ADJUST_FINAL_STATE - -#### G4PHP_NELECT_DOPPLER=1 -#### export G4PHP_NELECT_DOPPLER # # for Bertini cascade # unset G4CASCADE_USE_PRECOMPOUND -#### G4CASCADE_USE_PRECOMPOUND=1 -#### export G4CASCADE_USE_PRECOMPOUND - env |grep G4NEUTRONHP env |grep G4PHP env |grep G4CASCADE diff --git a/examples/extended/hadronic/Hadr04/graphite.mac b/examples/extended/hadronic/Hadr04/graphite.mac index 51a5bec79d..13e5082170 100644 --- a/examples/extended/hadronic/Hadr04/graphite.mac +++ b/examples/extended/hadronic/Hadr04/graphite.mac @@ -1,6 +1,5 @@ # # Macro file for "Hadr04.cc" -# (can be run in batch, without graphic) # # neutron 2 MeV; all processes # @@ -14,8 +13,6 @@ # /run/initialize # -/process/list -# /particle/createAllIsomer /gun/particle neutron /gun/energy 2 MeV @@ -30,5 +27,4 @@ /analysis/h1/set 7 100 0. 500. meV #energy dist <1eV # /run/printProgress 200 -# /run/beamOn 2000 diff --git a/examples/extended/hadronic/Hadr04/hadr04.in b/examples/extended/hadronic/Hadr04/hadr04.in index d6eed479e9..098bc01064 100644 --- a/examples/extended/hadronic/Hadr04/hadr04.in +++ b/examples/extended/hadronic/Hadr04/hadr04.in @@ -1,6 +1,5 @@ # # Macro file for "Hadr04.cc" -# (can be run in batch, without graphic) # # neutron 2 MeV; all processes # @@ -12,11 +11,8 @@ # /run/initialize # -/process/list -# /gun/particle neutron /gun/energy 2 MeV # /run/printProgress 100 -# /run/beamOn 1000 diff --git a/examples/extended/hadronic/Hadr04/hadr04.out b/examples/extended/hadronic/Hadr04/hadr04.out index 90712da274..7cd6af523a 100644 --- a/examples/extended/hadronic/Hadr04/hadr04.out +++ b/examples/extended/hadronic/Hadr04/hadr04.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -48,15 +48,10 @@ NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use physicsList->CheckParticleList() start. physicsList->setCut() start. # -/process/list - Transportation, hadElastic, neutronInelastic, nCapture - nFission -# /gun/particle neutron /gun/energy 2 MeV # /run/printProgress 100 -# /run/beamOn 1000 NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon @@ -108,6 +103,19 @@ Element TS_C_of_Graphite, internal thermal scattering id 2 Cr_sctns: GheishaFissionXS: 0 meV ---> 100 TeV ================================================================ + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + UseOnlyPhotoEvaporation ? 0 + SkipMissingIsotopes ? 0 + NeglectDoppler ? 0 + DoNotAdjustFinalState ? 0 + ProduceFissionFragments ? 0 + UseWendtFissionModel ? 0 + UseNRESP71Model ? 0 +======================================================= + @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon @@ -129,7 +137,7 @@ Region -- -- is not associated to any world. Index : 0 used in the geometry : Yes Material : Water_ts Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 0 fm - Energy thresholds : gamma 2.92994 keV e- 349.731 keV e+ 342.774 keV proton 0 meV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 0 meV Region(s) which use this couple : DefaultRegionForTheWorld @@ -159,31 +167,29 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Run terminated. Run Summary Number of events processed : 1000 - User=233.840000s Real=236.697636s Sys=0.090000s + User=14.100000s Real=15.692123s Sys=0.000000s The run is 1000 neutron of 2 MeV through 50 cm of Water_ts (density: 1 g/cm3 ) Process calls frequency : - hadElastic= 215165 nCapture= 999 neutronInelastic= 1 + hadElastic= 212297 nCapture= 1000 Parcours of incident neutron: - nb of collisions E>1*eV= 16.626 E<1*eV= 199.54 total= 216.16 - track length E>1*eV= 20.325 cm E<1*eV= 75.019 cm total= 95.344 cm - time of flight E>1*eV= 730.97 ns E<1*eV= 205.37 us total= 206.11 us + nb of collisions E>1*eV= 16.632 E<1*eV= 196.66 total= 213.3 + track length E>1*eV= 20.575 cm E<1*eV= 73.951 cm total= 94.526 cm + time of flight E>1*eV= 757.71 ns E<1*eV= 202.38 us total= 203.14 us List of generated particles: - C14: 1 Emean = 11.075 keV ( 11.075 keV --> 11.075 keV) - O16: 3020 Emean = 38.678 keV ( 0.12198 meV --> 446.24 keV) - O17: 1 Emean = 76.431 meV ( 76.431 meV --> 76.431 meV) - O18: 14 Emean = 7.4688 keV ( 24.186 meV --> 54.352 keV) - alpha: 1 Emean = 38.761 keV ( 38.761 keV --> 38.761 keV) - deuteron: 1000 Emean = 3.0191 keV ( 1.2807 keV --> 1.6989 MeV) - gamma: 1001 Emean = 2.2217 MeV ( 884.49 keV --> 2.2244 MeV) - proton: 22943 Emean = 82.049 keV ( 0.20372 meV --> 1.9976 MeV) + O16: 3011 Emean = 36.952 keV ( 1.3171 meV --> 446.18 keV) + O17: 1 Emean = 50.919 eV ( 50.919 eV --> 50.919 eV ) + O18: 10 Emean = 9.8299 keV ( 68.413 meV --> 43.242 keV) + deuteron: 1001 Emean = 3.0171 keV ( 1.2773 keV --> 1.6989 MeV) + gamma: 1000 Emean = 2.2244 MeV ( 2.2243 MeV --> 2.2244 MeV) + proton: 22869 Emean = 82.557 keV ( 0.13519 meV --> 1.9968 MeV) --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 75733026, 627368862 + Current couple of seeds = 1917736028, 4820262 ---------------------------------------- G4 kernel has come to Quit state. UserDetectorConstruction deleted. @@ -203,12 +209,12 @@ Pool ID '7G4Event', size : 0.000961 MB Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.000961 MB Pool ID '17G4DynamicParticle', size : 0.0125 MB -Pool ID '7G4Track', size : 0.025 MB +Pool ID '7G4Track', size : 0.024 MB Pool ID '18G4TouchableHistory', size : 0.000961 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Pool ID '17G4ReactionProduct', size : 0.000961 MB Number of memory pools allocated: 10 of which, static: 0 -Dynamic pools deleted: 10 / Total memory freed: 0.048 MB +Dynamic pools deleted: 10 / Total memory freed: 0.047 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/extended/hadronic/Hadr04/run01.mac b/examples/extended/hadronic/Hadr04/run01.mac index a8dbd44f8b..4127e8de25 100644 --- a/examples/extended/hadronic/Hadr04/run01.mac +++ b/examples/extended/hadronic/Hadr04/run01.mac @@ -1,6 +1,5 @@ # # Macro file for "Hadr04.cc" -# (can be run in batch, without graphic) # # neutron 2 MeV; all processes # @@ -29,5 +28,4 @@ /analysis/h1/set 7 100 0. 500. meV #energy dist <1eV # /run/printProgress 200 -# /run/beamOn 2000 diff --git a/examples/extended/hadronic/Hadr06/.README.txt b/examples/extended/hadronic/Hadr06/.README.txt index dbda16031e..ae6dc255a0 100644 --- a/examples/extended/hadronic/Hadr06/.README.txt +++ b/examples/extended/hadronic/Hadr06/.README.txt @@ -50,11 +50,7 @@ to be accurate (see param->SetStepFunction(1., 1*mm)). Several hadronic physics options are controlled by environment variables. - To trigger them, an envHadronic.csh has been added in this example. - One must select the options wished, and do -\verbatim - source envHadronic.csh (or sh) -\endverbatim + To trigger them, see Hadr06.cc \section Hadr06_s3 AN EVENT : THE PRIMARY GENERATOR @@ -156,5 +152,14 @@ Idle> control/execute vis.mac .... Idle> exit \endverbatim - + + Macros provided in this example: + - graphite.mac: neutron,14 MeV, in graphite + - run1.mac: neutron,14 MeV, in Li7 + - singleFission.mac: single fission in U235 + + Macros to be run interactively: + - debug.mac: water with thermal scattering + - fission.mac: U235 + - vis.mac: To activate visualization */ diff --git a/examples/extended/hadronic/Hadr06/CMakeLists.txt b/examples/extended/hadronic/Hadr06/CMakeLists.txt index 3eb0ab11a1..9296c84110 100644 --- a/examples/extended/hadronic/Hadr06/CMakeLists.txt +++ b/examples/extended/hadronic/Hadr06/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(Hadr06) #---------------------------------------------------------------------------- @@ -43,10 +46,12 @@ set(Hadr04_SCRIPTS debug.mac envHadronic.csh envHadronic.sh - fission.mac + fission.mac graphite.mac hadr06.in - run1.mac + plotHisto.C + run1.mac + singleFission.mac vis.mac ) diff --git a/examples/extended/hadronic/Hadr06/Hadr06.cc b/examples/extended/hadronic/Hadr06/Hadr06.cc index 912163fcfe..ccf773a384 100644 --- a/examples/extended/hadronic/Hadr06/Hadr06.cc +++ b/examples/extended/hadronic/Hadr06/Hadr06.cc @@ -49,6 +49,8 @@ #include "G4UIExecutive.hh" #include "G4VisExecutive.hh" +#include "G4ParticleHPManager.hh" + //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) { @@ -80,6 +82,22 @@ int main(int argc,char** argv) { runManager->SetUserInitialization(phys); runManager->SetUserInitialization(new ActionInitialization(det)); + // Replaced HP environmental variables with C++ calls + G4ParticleHPManager::GetInstance()->SetSkipMissingIsotopes( false ); + G4ParticleHPManager::GetInstance()->SetDoNotAdjustFinalState( false ); + G4ParticleHPManager::GetInstance()->SetUseOnlyPhotoEvaporation( false ); + G4ParticleHPManager::GetInstance()->SetNeglectDoppler( false ); + G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( false ); + G4ParticleHPManager::GetInstance()->SetUseWendtFissionModel( false ); + G4ParticleHPManager::GetInstance()->SetUseNRESP71Model( false ); + //G4ParticleHPManager::GetInstance()->SetSkipMissingIsotopes( true ); + //G4ParticleHPManager::GetInstance()->SetDoNotAdjustFinalState( true ); + //G4ParticleHPManager::GetInstance()->SetUseOnlyPhotoEvaporation( true ); + //G4ParticleHPManager::GetInstance()->SetNeglectDoppler( true ); + //G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( true ); + //G4ParticleHPManager::GetInstance()->SetUseWendtFissionModel( true ); + //G4ParticleHPManager::GetInstance()->SetUseNRESP71Model( true ); + //initialize visualization G4VisManager* visManager = nullptr; diff --git a/examples/extended/hadronic/Hadr06/History b/examples/extended/hadronic/Hadr06/History index 5fd4c54a52..ee96689836 100644 --- a/examples/extended/hadronic/Hadr06/History +++ b/examples/extended/hadronic/Hadr06/History @@ -13,6 +13,16 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +16-10-20 mma (exhadr06-V10-06-03) +- add macro singleFission.mac +- TrackingAction : add commented code for singleFission + +05-08-20 A. Ribon (exhadr06-V10-06-02) +- Hadr06.cc , fission.mac , envHadronic.(c)sh : removed deprecated + HP environmental variables and replaced them with corresponding + C++ calls in the main, and UI commands in the macros. + (The two shell-script files will be removed in G4 11.0.) + 10-06-20 mma (exhadr06-V10-06-01) - HistoManager, TrackingAction : plot particle energy at creation diff --git a/examples/extended/hadronic/Hadr06/README b/examples/extended/hadronic/Hadr06/README index 595c786358..5690660b59 100644 --- a/examples/extended/hadronic/Hadr06/README +++ b/examples/extended/hadronic/Hadr06/README @@ -53,9 +53,7 @@ to be accurate (see param->SetStepFunction(1., 1*mm)). Several hadronic physics options are controlled by environment variables. - To trigger them, an envHadronic.csh has been added in this example. - One must select the options wished, and do - source envHadronic.csh (or sh) + To trigger them, see Hadr06.cc 3- AN EVENT : THE PRIMARY GENERATOR @@ -144,3 +142,14 @@ Idle> type your commands .... Idle> exit + + Macros provided in this example: + - graphite.mac: neutron,14 MeV, in graphite + - run1.mac: neutron,14 MeV, in Li7 + - singleFission.mac: single fission in U235 + + Macros to be run interactively: + - debug.mac: water with thermal scattering + - fission.mac: U235 + - vis.mac: To activate visualization + diff --git a/examples/extended/hadronic/Hadr06/envHadronic.csh b/examples/extended/hadronic/Hadr06/envHadronic.csh old mode 100755 new mode 100644 index 70075091c0..f5bd45f799 --- a/examples/extended/hadronic/Hadr06/envHadronic.csh +++ b/examples/extended/hadronic/Hadr06/envHadronic.csh @@ -1,3 +1,4 @@ +# === FILE TO BE REMOVED IN G4 11.0 === # # for neutronHP and particleHP # @@ -10,19 +11,10 @@ unsetenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS unsetenv G4PHP_DO_NOT_ADJUST_FINAL_STATE unsetenv G4PHP_NELECT_DOPPLER -#### setenv G4NEUTRONHP_SKIP_MISSING_ISOTOPES 1 -#### setenv G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE 1 -#### setenv G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION 1 -#### setenv G4NEUTRONHP_NELECT_DOPPLER 1 -#### setenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS 1 -# -#### setenv G4PHP_DO_NOT_ADJUST_FINAL_STATE 1 -#### setenv G4PHP_NELECT_DOPPLER 1 # # for Bertini cascade # unsetenv G4CASCADE_USE_PRECOMPOUND -#### setenv G4CASCADE_USE_PRECOMPOUND 1 env |grep G4NEUTRONHP env |grep G4PHP diff --git a/examples/extended/hadronic/Hadr06/envHadronic.sh b/examples/extended/hadronic/Hadr06/envHadronic.sh old mode 100755 new mode 100644 index 3bc63c27fc..19c87ea1ca --- a/examples/extended/hadronic/Hadr06/envHadronic.sh +++ b/examples/extended/hadronic/Hadr06/envHadronic.sh @@ -1,3 +1,4 @@ +# === FILE TO BE REMOVED IN G4 11.0 === # # for neutronHP and particleHP # @@ -10,34 +11,11 @@ unset G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS unset G4PHP_DO_NOT_ADJUST_FINAL_STATE unset G4PHP_NELECT_DOPPLER -#### G4NEUTRONHP_SKIP_MISSING_ISOTOPES=1 -#### export G4NEUTRONHP_SKIP_MISSING_ISOTOPES - -#### G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE=1 -#### export G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE - -#### G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION=1 -#### export G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION - -#### G4NEUTRONHP_NELECT_DOPPLER=1 -#### export G4NEUTRONHP_NELECT_DOPPLER - -#### G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS=1 -#### export G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS - -#### G4PHP_DO_NOT_ADJUST_FINAL_STATE=1 -#### export G4PHP_DO_NOT_ADJUST_FINAL_STATE - -#### G4PHP_NELECT_DOPPLER=1 -#### export G4PHP_NELECT_DOPPLER # # for Bertini cascade # unset G4CASCADE_USE_PRECOMPOUND -#### G4CASCADE_USE_PRECOMPOUND=1 -#### export G4CASCADE_USE_PRECOMPOUND - env |grep G4NEUTRONHP env |grep G4PHP env |grep G4CASCADE diff --git a/examples/extended/hadronic/Hadr06/fission.mac b/examples/extended/hadronic/Hadr06/fission.mac index 972e162c41..5284a29300 100644 --- a/examples/extended/hadronic/Hadr06/fission.mac +++ b/examples/extended/hadronic/Hadr06/fission.mac @@ -1,8 +1,13 @@ # # Macro file for "Hadr06.cc" # -# NB. for neutronHP, do not forget to activate -# G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS +# NB. for neutronHP, do not forget to activate the fission fragment model +# via one, and only one, of the following two UI commands: +# - To use the default fission model: +#/process/had/particle_hp/produce_fission_fragment true +# +# - To use the alternative Wendt fission model: +#/process/had/particle_hp/use_Wendt_fission_model true # /control/verbose 2 /run/verbose 2 diff --git a/examples/extended/hadronic/Hadr06/hadr06.out b/examples/extended/hadronic/Hadr06/hadr06.out index e46dcfcee4..c2ef139730 100644 --- a/examples/extended/hadronic/Hadr06/hadr06.out +++ b/examples/extended/hadronic/Hadr06/hadr06.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -46,23 +46,23 @@ NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, neutronInelastic, nCapture, nFission - protonInelastic, pi+Inelastic, pi-Inelastic, kaon+Inelastic - kaon-Inelastic, kaon0LInelastic, kaon0SInelastic, lambdaInelastic -anti-lambdaInelastic, sigma-Inelastic,anti_sigma-Inelastic, sigma+Inelastic -anti_sigma+Inelastic, xi-Inelastic, anti_xi-Inelastic, xi0Inelastic - anti_xi0Inelastic, omega-Inelastic,anti_omega-Inelastic,anti_protonInelastic -anti_neutronInelastic,anti_deuteronInelastic,anti_tritonInelastic, anti_He3Inelastic -anti_alphaInelastic, ionElastic, dInelastic, tInelastic - He3Inelastic, alphaInelastic, ionInelastic,hFritiofCaptureAtRest -hBertiniCaptureAtRest,muMinusCaptureAtRest, photonNuclear, msc + hadElastic, hadElastic, hadElastic, neutronInelastic + nCapture, nFission, protonInelastic, pi+Inelastic + pi-Inelastic, kaon+Inelastic, kaon-Inelastic, kaon0LInelastic + kaon0SInelastic,anti_protonInelastic,anti_neutronInelastic,anti_deuteronInelastic +anti_tritonInelastic, anti_He3Inelastic,anti_alphaInelastic, lambdaInelastic + sigma+Inelastic, sigma-Inelastic, xi0Inelastic, xi-Inelastic + omega-Inelastic,anti_lambdaInelastic,anti_sigma+Inelastic,anti_sigma-Inelastic + anti_xi0Inelastic, anti_xi-Inelastic,anti_omega-Inelastic, ionElastic + dInelastic, tInelastic, He3Inelastic, alphaInelastic + ionInelastic,hFritiofCaptureAtRest,hBertiniCaptureAtRest,muMinusCaptureAtRest + photonNuclear, msc, hIoni, msc hIoni, msc, hIoni, msc hIoni, msc, hIoni, msc hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - ionIoni, nuclearStopping, msc, ionIoni - nuclearStopping, msc, ionIoni, nuclearStopping + hIoni, msc, ionIoni, nuclearStopping + msc, ionIoni, nuclearStopping, msc + ionIoni, nuclearStopping, msc, hIoni msc, hIoni, msc, hIoni msc, hIoni, msc, hIoni msc, hIoni, msc, hIoni @@ -71,13 +71,13 @@ hBertiniCaptureAtRest,muMinusCaptureAtRest, photonNuclear, m msc, hIoni, msc, hIoni msc, hIoni, msc, hIoni msc, hIoni, msc, hIoni + msc, hIoni, msc, eIoni + eBrem, annihil, msc, eIoni + eBrem, phot, compt, conv msc, hIoni, msc, hIoni - msc, eIoni, eBrem, annihil - msc, eIoni, eBrem, phot - compt, conv, msc, hIoni - msc, hIoni, msc, hIoni - msc, muIoni, muBrems, muPairProd - msc, muIoni, muBrems, muPairProd + msc, hIoni, msc, muIoni + muBrems, muPairProd, msc, muIoni + muBrems, muPairProd, msc, hIoni msc, hIoni, msc, hIoni msc, hIoni, msc, hIoni msc, hIoni, msc, hIoni @@ -86,8 +86,7 @@ hBertiniCaptureAtRest,muMinusCaptureAtRest, photonNuclear, m msc, hIoni, msc, hIoni msc, hIoni, msc, hIoni msc, hIoni, msc, hIoni - msc, hIoni, Decay,RadioactiveDecayBase - + Decay,RadioactiveDecayBase # /gun/particle neutron /gun/energy 14.1 MeV @@ -106,13 +105,26 @@ Max 2J for sampling of angular correlations 10 Atomic de-excitation enabled 1 Auger electron emission enabled 1 Auger cascade enabled 1 -Check EM cuts disabled for atomic de-excitation 0 +Check EM cuts disabled for atomic de-excitation 1 Use Bearden atomic level energies 0 ====================================================================== NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + UseOnlyPhotoEvaporation ? 0 + SkipMissingIsotopes ? 0 + NeglectDoppler ? 0 + DoNotAdjustFinalState ? 0 + ProduceFissionFragments ? 0 + UseWendtFissionModel ? 0 + UseNRESP71Model ? 0 +======================================================= + @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon @@ -166,9 +178,7 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: anti_He3Inelastic - Model: FTFP: 0 meV/n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV + Model: FTFP: 0 meV/n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -182,9 +192,7 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: anti_alphaInelastic - Model: FTFP: 0 meV/n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV + Model: FTFP: 0 meV/n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -198,13 +206,25 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: anti_deuteronInelastic - Model: FTFP: 0 meV/n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV + Model: FTFP: 0 meV/n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 meV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -214,9 +234,7 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: anti_neutronInelastic - Model: FTFP: 0 meV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV + Model: FTFP: 0 meV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -230,9 +248,7 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: anti_protonInelastic - Model: FTFP: 0 meV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV + Model: FTFP: 0 meV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -246,9 +262,7 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: anti_tritonInelastic - Model: FTFP: 0 meV/n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV + Model: FTFP: 0 meV/n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -309,10 +323,9 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 meV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 meV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV --------------------------------------------------- @@ -398,10 +411,9 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 meV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 meV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -442,7 +454,6 @@ Store e- internal conversion data 1 Electron internal conversion ID 0 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -482,51 +493,49 @@ Index : 1 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 10000 - User=54.000000s Real=54.565888s Sys=0.030000s + User=7.670000s Real=7.998703s Sys=0.000000s The run is 10000 neutron of 14.1 MeV through 30 cm of Li7 (density: 1.85 g/cm3 ) Process calls frequency : - Decay= 1 RadioactiveDecayBase= 198252 Transportation= 72882 - annihil= 203 compt= 402743 conv= 203 - dInelastic= 1 eIoni= 412404 hIoni= 675 - hadElastic= 181910 ionInelastic= 2 ionIoni= 198574 - msc= 221 nCapture= 31 neutronInelastic= 16416 - phot= 20816 + RadioactiveDecayBase= 195865 Transportation= 73025 annihil= 205 + compt= 400940 conv= 206 dInelastic= 3 + eIoni= 410692 hIoni= 672 hadElastic= 179590 + ionIoni= 196197 msc= 139 nCapture= 25 + neutronInelastic= 16399 phot= 20719 List of generated particles: - Be8: 1 Emean = 3.4584 MeV ( 3.4584 MeV --> 3.4584 MeV) - Be8[3030.000]: 31 Emean = 7.0394 keV ( 203.12 eV --> 11.806 keV) - He6: 152 Emean = 1.2903 MeV ( 917.53 keV --> 1.3378 MeV) - Li6: 708 Emean = 1.571 MeV ( 70.683 eV --> 9.2585 MeV) - Li7: 197330 Emean = 330.52 keV ( 0.83469 meV --> 6.221 MeV) - Li8: 31 Emean = 524.43 eV ( 99.228 eV --> 5.5222 keV) - alpha: 354 Emean = 1.26 MeV ( 93.121 keV --> 4.2344 MeV) - anti_nu_e: 183 Emean = 2.917 MeV ( 491.85 keV --> 12.106 MeV) - deuteron: 441 Emean = 3.5402 MeV ( 124.39 keV --> 23.77 MeV) - e+: 203 Emean = 1.4242 MeV ( 75.805 keV --> 4.0804 MeV) - e-: 412369 Emean = 87.508 keV ( 100 eV --> 9.9872 MeV) - gamma: 46448 Emean = 1.2054 MeV ( 1.0009 keV --> 5.8834 MeV) - neutron: 17110 Emean = 3.3564 MeV ( 4.8097 keV --> 13.639 MeV) - triton: 1 Emean = 3.216 MeV ( 3.216 MeV --> 3.216 MeV) + Be8[3030.000]: 25 Emean = 6.5066 keV ( 576 eV --> 12.036 keV) + He6: 130 Emean = 1.2825 MeV ( 899.67 keV --> 1.338 MeV) + Li6: 707 Emean = 1.6492 MeV ( 6.5416 eV --> 8.294 MeV) + Li7: 194979 Emean = 332.68 keV ( 0.69805 meV --> 6.2218 MeV) + Li8: 25 Emean = 1.539 keV ( 98.565 eV --> 15.763 keV) + alpha: 357 Emean = 1.2613 MeV ( 82.823 keV --> 7.8307 MeV) + anti_nu_e: 155 Emean = 2.7609 MeV ( 355.17 keV --> 12.413 MeV) + deuteron: 433 Emean = 3.7046 MeV ( 163.79 keV --> 21.188 MeV) + e+: 206 Emean = 1.4766 MeV ( 81.659 keV --> 3.9235 MeV) + e-: 410656 Emean = 87.612 keV ( 100 eV --> 10.101 MeV) + gamma: 46386 Emean = 1.209 MeV ( 1.0003 keV --> 5.8821 MeV) + neutron: 17151 Emean = 3.3665 MeV ( 2.7041 keV --> 13.636 MeV) - Mean energy deposit per event = 10.468 MeV rms = 3.4678 MeV - Mean energy flow per event = 3.099 MeV rms = 3.2613 MeV + Mean energy deposit per event = 10.43 MeV rms = 3.4782 MeV + Mean energy flow per event = 3.1161 MeV rms = 3.2596 MeV List of particles emerging from the absorber : - anti_nu_e: 183 Emean = 2.917 MeV ( 491.85 keV --> 12.106 MeV) Eflow/event = 53.381 keV - e+: 1 Emean = 563.32 keV ( 563.32 keV --> 563.32 keV) Eflow/event = 56.332 eV - e-: 154 Emean = 1.4173 MeV ( 40.303 keV --> 4.9832 MeV) Eflow/event = 21.826 keV - gamma: 25429 Emean = 778.78 keV ( 1.5781 keV --> 5.8811 MeV) Eflow/event = 1.9804 MeV - neutron: 10663 Emean = 978.49 keV ( 1.9386 meV --> 14.1 MeV) Eflow/event = 1.0434 MeV + Li7: 1 Emean = 1.8227 MeV ( 1.8227 MeV --> 1.8227 MeV) Eflow/event = 182.27 eV + anti_nu_e: 155 Emean = 2.7609 MeV ( 355.17 keV --> 12.413 MeV) Eflow/event = 42.794 keV + e+: 1 Emean = 2.5051 MeV ( 2.5051 MeV --> 2.5051 MeV) Eflow/event = 250.51 eV + e-: 160 Emean = 1.3423 MeV ( 6.0695 keV --> 4.9835 MeV) Eflow/event = 21.477 keV + gamma: 25461 Emean = 783.03 keV ( 3.4138 keV --> 5.8811 MeV) Eflow/event = 1.9937 MeV + neutron: 10727 Emean = 986.05 keV ( 2.7097 meV --> 14.1 MeV) Eflow/event = 1.0577 MeV --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1555750344, 1318550293 + Current couple of seeds = 186864717, 1230361718 ---------------------------------------- G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 11 of which, static: 0 -Dynamic pools deleted: 11 / Total memory freed: 0.062 MB +Dynamic pools deleted: 11 / Total memory freed: 0.07 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/hadronic/Hadr06/singleFission.mac b/examples/extended/hadronic/Hadr06/singleFission.mac new file mode 100644 index 0000000000..724098cdab --- /dev/null +++ b/examples/extended/hadronic/Hadr06/singleFission.mac @@ -0,0 +1,28 @@ +# +# Macro file for "Hadr06.cc" +# +# To "force" primary fission only, kill secondary neutrons: +# in TrackingAction.cc,uncomment lines below "to force only 1 fission ..." +# ( ~ end of PreUserTrackingAction() ) +# Also, to limit the printout, do not fill ParticleCount() +# ( ~ begin of PreUserTrackingAction() ) +# +/run/verbose 2 +# +/testhadr/det/setIsotopeMat U235 92 235 19.05 g/cm3 +/testhadr/det/setRadius 10 cm +# +/run/initialize +# +/process/inactivate nCapture +/process/had/particle_hp/produce_fission_fragment true +# +/gun/particle neutron +/gun/energy 0.025 eV +# +/analysis/setFileName singleFission +/analysis/h1/set 1 100 100. 300. MeV #Edep +/analysis/h1/set 3 100 0. 20. MeV #Eflow +# +/run/printProgress 10000 +/run/beamOn 100000 diff --git a/examples/extended/hadronic/Hadr06/src/TrackingAction.cc b/examples/extended/hadronic/Hadr06/src/TrackingAction.cc index 03fcceca7f..7e692517f7 100644 --- a/examples/extended/hadronic/Hadr06/src/TrackingAction.cc +++ b/examples/extended/hadronic/Hadr06/src/TrackingAction.cc @@ -61,28 +61,35 @@ void TrackingAction::PreUserTrackingAction(const G4Track* track) Run* run = static_cast( G4RunManager::GetRunManager()->GetNonConstCurrentRun()); run->ParticleCount(name,energy); - - // histograms: energy at creation - // - G4AnalysisManager* analysis = G4AnalysisManager::Instance(); + + // histograms: energy at creation + // + G4AnalysisManager* analysis = G4AnalysisManager::Instance(); - G4int ih = 0; - const G4ParticleDefinition* particle = track->GetParticleDefinition(); - G4String type = particle->GetParticleType(); - G4double charge = particle->GetPDGCharge(); - if (charge > 3.) ih = 10; - else if (particle == G4Gamma::Gamma()) ih = 4; - else if (particle == G4Electron::Electron()) ih = 5; - else if (particle == G4Positron::Positron()) ih = 5; - else if (particle == G4Neutron::Neutron()) ih = 6; - else if (particle == G4Proton::Proton()) ih = 7; - else if (particle == G4Deuteron::Deuteron()) ih = 8; - else if (particle == G4Alpha::Alpha()) ih = 9; - else if (type == "nucleus") ih = 10; - else if (type == "baryon") ih = 11; - else if (type == "meson") ih = 12; - else if (type == "lepton") ih = 13; - if (ih > 0) analysis->FillH1(ih,energy); + G4int ih = 0; + const G4ParticleDefinition* particle = track->GetParticleDefinition(); + G4String type = particle->GetParticleType(); + G4double charge = particle->GetPDGCharge(); + if (charge > 3.) ih = 10; + else if (particle == G4Gamma::Gamma()) ih = 4; + else if (particle == G4Electron::Electron()) ih = 5; + else if (particle == G4Positron::Positron()) ih = 5; + else if (particle == G4Neutron::Neutron()) ih = 6; + else if (particle == G4Proton::Proton()) ih = 7; + else if (particle == G4Deuteron::Deuteron()) ih = 8; + else if (particle == G4Alpha::Alpha()) ih = 9; + else if (type == "nucleus") ih = 10; + else if (type == "baryon") ih = 11; + else if (type == "meson") ih = 12; + else if (type == "lepton") ih = 13; + if (ih > 0) analysis->FillH1(ih,energy); + + //to force only 1 fission : kill secondary neutrons + ///if (particle == G4Neutron::Neutron()) { + /// fEventAction->AddEdep(energy); + /// G4Track* aTrack = (G4Track*)track; + /// aTrack->SetTrackStatus(fStopAndKill); + ///} } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/hadronic/Hadr07/.README.txt b/examples/extended/hadronic/Hadr07/.README.txt index 1dba8abb31..08cb30ebf0 100644 --- a/examples/extended/hadronic/Hadr07/.README.txt +++ b/examples/extended/hadronic/Hadr07/.README.txt @@ -56,11 +56,7 @@ to be accurate (see param->SetStepFunction(1., 1*mm)). Several hadronic physics options are controlled by environment variables. - To trigger them, an envHadronic.csh has been added in this example. - One must select the options wished, and do -\verbatim - source envHadronic.csh (or sh) -\endverbatim + To select them, see Hadr07.cc \section Hadr07_s3 AN EVENT : THE PRIMARY GENERATOR @@ -164,5 +160,14 @@ .... Idle> exit \endverbatim - + + Macros provided in this example: + - Na22.mac: multilayers. Radioactive source + - alpha.mac: alpha (400 MeV). Limit the step size from histo 10 + - ionC12.mac: C12 (2.4 GeV). Limit the step size from histo 10 + - water.mac: e- (4 MeV) in Water + + Macros to be run interactively: + - proton.mac: proton (1 GeV). Multilayers + - vis.mac: To activate visualization */ diff --git a/examples/extended/hadronic/Hadr07/CMakeLists.txt b/examples/extended/hadronic/Hadr07/CMakeLists.txt index 981730ffd8..8c6d75bce6 100644 --- a/examples/extended/hadronic/Hadr07/CMakeLists.txt +++ b/examples/extended/hadronic/Hadr07/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(Hadr07) #---------------------------------------------------------------------------- diff --git a/examples/extended/hadronic/Hadr07/Hadr07.cc b/examples/extended/hadronic/Hadr07/Hadr07.cc index 9d31da91cb..5417f5df9b 100644 --- a/examples/extended/hadronic/Hadr07/Hadr07.cc +++ b/examples/extended/hadronic/Hadr07/Hadr07.cc @@ -49,6 +49,8 @@ #include "G4UIExecutive.hh" #include "G4VisExecutive.hh" +#include "G4ParticleHPManager.hh" + //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) { @@ -80,6 +82,22 @@ int main(int argc,char** argv) { runManager->SetUserInitialization(phys); runManager->SetUserInitialization(new ActionInitialization(det)); + // Replaced HP environmental variables with C++ calls + G4ParticleHPManager::GetInstance()->SetSkipMissingIsotopes( false ); + G4ParticleHPManager::GetInstance()->SetDoNotAdjustFinalState( false ); + G4ParticleHPManager::GetInstance()->SetUseOnlyPhotoEvaporation( false ); + G4ParticleHPManager::GetInstance()->SetNeglectDoppler( false ); + G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( false ); + G4ParticleHPManager::GetInstance()->SetUseWendtFissionModel( false ); + G4ParticleHPManager::GetInstance()->SetUseNRESP71Model( false ); + //G4ParticleHPManager::GetInstance()->SetSkipMissingIsotopes( true ); + //G4ParticleHPManager::GetInstance()->SetDoNotAdjustFinalState( true ); + //G4ParticleHPManager::GetInstance()->SetUseOnlyPhotoEvaporation( true ); + //G4ParticleHPManager::GetInstance()->SetNeglectDoppler( true ); + //G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( true ); + //G4ParticleHPManager::GetInstance()->SetUseWendtFissionModel( true ); + //G4ParticleHPManager::GetInstance()->SetUseNRESP71Model( true ); + //initialize visualization G4VisManager* visManager = nullptr; diff --git a/examples/extended/hadronic/Hadr07/History b/examples/extended/hadronic/Hadr07/History index f80aae7de1..44799531b8 100644 --- a/examples/extended/hadronic/Hadr07/History +++ b/examples/extended/hadronic/Hadr07/History @@ -14,6 +14,14 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +25-10-20 mma (exhadr07-V10-06-02) +- README : add macros descrption + +05-08-20 A. Ribon (exhadr07-V10-06-01) +- Hadr07.cc , envHadronic.(c)sh : removed deprecated HP environmental + variables and replaced them with corresponding C++ calls in the main. + (These two shell-script files will be removed in G4 11.0.) + 13-05-20 mma (exhadr07-V10-06-00) - GammaNuclearPhysics : add G4LowEGammaNuclearModel diff --git a/examples/extended/hadronic/Hadr07/Na22.mac b/examples/extended/hadronic/Hadr07/Na22.mac index 6a1ef618ca..86c83e41e2 100644 --- a/examples/extended/hadronic/Hadr07/Na22.mac +++ b/examples/extended/hadronic/Hadr07/Na22.mac @@ -1,7 +1,8 @@ # +# Macro file for "Hadr07.cc" # /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testhadr/det/setNbOfAbsor 4 /testhadr/det/setAbsor 1 G4_PLEXIGLASS 5 mm @@ -23,5 +24,4 @@ /analysis/h1/setAscii 4 # /run/printProgress 10000 -# /run/beamOn 100000 diff --git a/examples/extended/hadronic/Hadr07/README b/examples/extended/hadronic/Hadr07/README index e3cff3a983..44a03a0a14 100644 --- a/examples/extended/hadronic/Hadr07/README +++ b/examples/extended/hadronic/Hadr07/README @@ -59,9 +59,7 @@ to be accurate (see param->SetStepFunction(1., 1*mm)). Several hadronic physics options are controlled by environment variables. - To trigger them, an envHadronic.csh has been added in this example. - One must select the options wished, and do - source envHadronic.csh (or sh) + To select them, see Hadr07.cc 3- AN EVENT : THE PRIMARY GENERATOR @@ -154,3 +152,13 @@ Idle> type your commands .... Idle> exit + + Macros provided in this example: + - Na22.mac: multilayers. Radioactive source + - alpha.mac: alpha (400 MeV). Limit the step size from histo 10 + - ionC12.mac: C12 (2.4 GeV). Limit the step size from histo 10 + - water.mac: e- (4 MeV) in Water + + Macros to be run interactively: + - proton.mac: proton (1 GeV). Multilayers + - vis.mac: To activate visualization diff --git a/examples/extended/hadronic/Hadr07/alpha.mac b/examples/extended/hadronic/Hadr07/alpha.mac index 1f07e75696..2d6b95590e 100644 --- a/examples/extended/hadronic/Hadr07/alpha.mac +++ b/examples/extended/hadronic/Hadr07/alpha.mac @@ -1,8 +1,10 @@ # +# Macro file for "Hadr07.cc" +# # limit the step size from histo 10 # /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testhadr/det/setNbOfAbsor 1 /testhadr/det/setAbsor 1 Water 10 cm diff --git a/examples/extended/hadronic/Hadr07/envHadronic.csh b/examples/extended/hadronic/Hadr07/envHadronic.csh old mode 100755 new mode 100644 index 70075091c0..f5bd45f799 --- a/examples/extended/hadronic/Hadr07/envHadronic.csh +++ b/examples/extended/hadronic/Hadr07/envHadronic.csh @@ -1,3 +1,4 @@ +# === FILE TO BE REMOVED IN G4 11.0 === # # for neutronHP and particleHP # @@ -10,19 +11,10 @@ unsetenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS unsetenv G4PHP_DO_NOT_ADJUST_FINAL_STATE unsetenv G4PHP_NELECT_DOPPLER -#### setenv G4NEUTRONHP_SKIP_MISSING_ISOTOPES 1 -#### setenv G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE 1 -#### setenv G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION 1 -#### setenv G4NEUTRONHP_NELECT_DOPPLER 1 -#### setenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS 1 -# -#### setenv G4PHP_DO_NOT_ADJUST_FINAL_STATE 1 -#### setenv G4PHP_NELECT_DOPPLER 1 # # for Bertini cascade # unsetenv G4CASCADE_USE_PRECOMPOUND -#### setenv G4CASCADE_USE_PRECOMPOUND 1 env |grep G4NEUTRONHP env |grep G4PHP diff --git a/examples/extended/hadronic/Hadr07/envHadronic.sh b/examples/extended/hadronic/Hadr07/envHadronic.sh old mode 100755 new mode 100644 index 3bc63c27fc..19c87ea1ca --- a/examples/extended/hadronic/Hadr07/envHadronic.sh +++ b/examples/extended/hadronic/Hadr07/envHadronic.sh @@ -1,3 +1,4 @@ +# === FILE TO BE REMOVED IN G4 11.0 === # # for neutronHP and particleHP # @@ -10,34 +11,11 @@ unset G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS unset G4PHP_DO_NOT_ADJUST_FINAL_STATE unset G4PHP_NELECT_DOPPLER -#### G4NEUTRONHP_SKIP_MISSING_ISOTOPES=1 -#### export G4NEUTRONHP_SKIP_MISSING_ISOTOPES - -#### G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE=1 -#### export G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE - -#### G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION=1 -#### export G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION - -#### G4NEUTRONHP_NELECT_DOPPLER=1 -#### export G4NEUTRONHP_NELECT_DOPPLER - -#### G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS=1 -#### export G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS - -#### G4PHP_DO_NOT_ADJUST_FINAL_STATE=1 -#### export G4PHP_DO_NOT_ADJUST_FINAL_STATE - -#### G4PHP_NELECT_DOPPLER=1 -#### export G4PHP_NELECT_DOPPLER # # for Bertini cascade # unset G4CASCADE_USE_PRECOMPOUND -#### G4CASCADE_USE_PRECOMPOUND=1 -#### export G4CASCADE_USE_PRECOMPOUND - env |grep G4NEUTRONHP env |grep G4PHP env |grep G4CASCADE diff --git a/examples/extended/hadronic/Hadr07/hadr07.in b/examples/extended/hadronic/Hadr07/hadr07.in index 77fbf056ca..a40d34e04f 100644 --- a/examples/extended/hadronic/Hadr07/hadr07.in +++ b/examples/extended/hadronic/Hadr07/hadr07.in @@ -12,12 +12,9 @@ # /run/initialize # -/process/list -# /testhadr/gun/setDefault /gun/particle neutron /gun/energy 14.1 MeV # /run/printProgress 1000 -# /run/beamOn 10000 diff --git a/examples/extended/hadronic/Hadr07/hadr07.out b/examples/extended/hadronic/Hadr07/hadr07.out index 13c3b97007..84a38ad12d 100644 --- a/examples/extended/hadronic/Hadr07/hadr07.out +++ b/examples/extended/hadronic/Hadr07/hadr07.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -31,7 +31,7 @@ ------------------------------------------------------------- - FTFP_BERT_HP : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT_HP : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -44,62 +44,11 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic/CrossSection/6_nat_Carbon # -/process/list - Transportation, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, neutronInelastic, nCapture, nFission - protonInelastic, pi+Inelastic, pi-Inelastic, kaon+Inelastic - kaon-Inelastic, kaon0LInelastic, kaon0SInelastic, lambdaInelastic -anti-lambdaInelastic, sigma-Inelastic,anti_sigma-Inelastic, sigma+Inelastic -anti_sigma+Inelastic, xi-Inelastic, anti_xi-Inelastic, xi0Inelastic - anti_xi0Inelastic, omega-Inelastic,anti_omega-Inelastic,anti_protonInelastic -anti_neutronInelastic,anti_deuteronInelastic,anti_tritonInelastic, anti_He3Inelastic -anti_alphaInelastic, ionElastic, dInelastic, tInelastic - He3Inelastic, alphaInelastic, ionInelastic, photonNuclear - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, ionIoni, nuclearStopping, msc - ionIoni, nuclearStopping, msc, ionIoni - nuclearStopping, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, eIoni, eBrem - annihil, msc, eIoni, eBrem - phot, compt, conv, msc - hIoni, msc, hIoni, msc - hIoni, msc, muIoni, muBrems - muPairProd, msc, muIoni, muBrems - muPairProd, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, Decay -RadioactiveDecayBase, UserMaxStep -# /testhadr/gun/setDefault /gun/particle neutron /gun/energy 14.1 MeV # /run/printProgress 1000 -# /run/beamOn 10000 ====================================================================== ====== Radioactive Decay Physics Parameters ======= @@ -112,19 +61,54 @@ Max 2J for sampling of angular correlations 10 Atomic de-excitation enabled 1 Auger electron emission enabled 1 Auger cascade enabled 1 -Check EM cuts disabled for atomic de-excitation 0 +Check EM cuts disabled for atomic de-excitation 1 Use Bearden atomic level energies 0 ====================================================================== NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + UseOnlyPhotoEvaporation ? 0 + SkipMissingIsotopes ? 0 + NeglectDoppler ? 0 + DoNotAdjustFinalState ? 0 + ProduceFissionFragments ? 0 + UseWendtFissionModel ? 0 + UseNRESP71Model ? 0 +======================================================= + @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon ==================================================================== HADRONIC PROCESSES SUMMARY (verbose level 1) +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -199,6 +183,17 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Model: FTFP: 0 meV/n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -287,8 +282,8 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 meV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 meV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV --------------------------------------------------- @@ -363,8 +358,8 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 meV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 meV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV --------------------------------------------------- @@ -403,7 +398,6 @@ Store e- internal conversion data 1 Electron internal conversion ID 0 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -418,7 +412,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Li7 Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 0 fm - Energy thresholds : gamma 1.50969 keV e- 463.344 keV e+ 451.096 keV proton 0 meV + Energy thresholds : gamma 1.50675 keV e- 466.625 keV e+ 451.206 keV proton 0 meV Region(s) which use this couple : DefaultRegionForTheWorld @@ -443,7 +437,7 @@ Index : 1 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 10000 - User=34.500000s Real=34.978304s Sys=0.000000s + User=5.020000s Real=5.440239s Sys=0.000000s ======================== run summary ===================== @@ -451,44 +445,46 @@ Run Summary 1 30 cm of Li7 (density: 1.85 g/cm3 ) Process calls frequency : - RadioactiveDecayBase= 99521 Transportation= 90342 annihil= 119 - compt= 128938 conv= 119 dInelastic= 3 - eBrem= 1008 eIoni= 141018 hIoni= 639 - hadElastic= 85541 ionElastic= 1 ionIoni= 99820 - msc= 358 nCapture= 2 neutronInelastic= 14096 - phot= 12827 + RadioactiveDecayBase= 100357 Transportation= 91939 annihil= 135 + compt= 131007 conv= 138 dInelastic= 1 + eBrem= 1043 eIoni= 143253 hIoni= 666 + hadElastic= 86026 ionIoni= 100641 msc= 248 + nCapture= 1 neutronInelastic= 14446 phot= 13036 - Edep in absorber 1 = 7.99 MeV (41.8 keV-->31.3 MeV) + + Edep in absorber 1 = 7.99 MeV (12.8 keV-->21.9 MeV) List of generated particles in absorber 1: - Be8[3030.000]: 2 Emean = 6.83 keV ( 5.85 keV --> 7.82 keV) - He6: 168 Emean = 1.29 MeV ( 878 keV --> 1.34 MeV) - Li6: 722 Emean = 1.61 MeV ( 37.3 eV --> 8.19 MeV) - Li7: 98627 Emean = 560 keV ( 66.3 meV --> 6.22 MeV) - Li8: 2 Emean = 22.9 keV ( 952 eV --> 44.9 keV) - alpha: 299 Emean = 1.36 MeV ( 23.1 keV --> 15.1 MeV) - anti_nu_e: 170 Emean = 1.97 MeV ( 241 keV --> 11.7 MeV) - deuteron: 457 Emean = 3.1 MeV ( 25.4 keV --> 25.8 MeV) - e+: 119 Emean = 1.4 MeV ( 62.7 keV --> 4.03 MeV) - e-: 140358 Emean = 157 keV ( 100 eV --> 6.94 MeV) - gamma: 42054 Emean = 1.26 MeV ( 1 keV --> 5.88 MeV) - neutron: 14774 Emean = 3.61 MeV ( 4.19 keV --> 13.6 MeV) + Be8[3030.000]: 1 Emean = 7.91 keV ( 7.91 keV --> 7.91 keV) + He6: 164 Emean = 1.28 MeV ( 884 keV --> 1.34 MeV) + Li6: 725 Emean = 1.58 MeV ( 30.9 eV --> 8.62 MeV) + Li7: 99466 Emean = 554 keV ( 14.7 meV --> 6.21 MeV) + Li8: 1 Emean = 277 eV ( 277 eV --> 277 eV ) + alpha: 285 Emean = 1.22 MeV ( 25.5 keV --> 9.19 MeV) + anti_nu_e: 165 Emean = 2.01 MeV ( 116 keV --> 7.41 MeV) + deuteron: 444 Emean = 3.39 MeV ( 163 keV --> 18.4 MeV) + e+: 138 Emean = 1.44 MeV ( 98.5 keV --> 4.15 MeV) + e-: 142607 Emean = 155 keV ( 100 eV --> 5.56 MeV) + gamma: 43054 Emean = 1.25 MeV ( 1 keV --> 5.88 MeV) + neutron: 15126 Emean = 3.63 MeV ( 3.24 keV --> 13.6 MeV) + proton: 1 Emean = 2.09 MeV ( 2.09 MeV --> 2.09 MeV) List of particles emerging from absorbers : - anti_nu_e: 170 Emean = 1.97 MeV ( 241 keV --> 11.7 MeV) - e-: 204 Emean = 1.34 MeV ( 46.2 keV --> 4.81 MeV) - gamma: 29108 Emean = 1.07 MeV ( 3.08 keV --> 5.88 MeV) - neutron: 10676 Emean = 2.19 MeV ( 2.64 eV --> 14.1 MeV) + anti_nu_e: 165 Emean = 2.01 MeV ( 116 keV --> 7.41 MeV) + e+: 3 Emean = 1.8 MeV ( 1.11 MeV --> 2.22 MeV) + e-: 232 Emean = 1.3 MeV ( 7.77 keV --> 4.46 MeV) + gamma: 29880 Emean = 1.06 MeV ( 1.64 keV --> 5.88 MeV) + neutron: 10679 Emean = 2.13 MeV ( 8.58 eV --> 14.1 MeV) - Nb of events with primary absorbed = 87 %, transmit = 6.7 %, reflected = 6.2 % + Nb of events with primary absorbed = 88 %, transmit = 6.5 %, reflected = 6 % --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 2006293019, 1502676364 + Current couple of seeds = 1162030075, 1151422799 ---------------------------------------- G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 11 of which, static: 0 -Dynamic pools deleted: 11 / Total memory freed: 0.043 MB +Dynamic pools deleted: 11 / Total memory freed: 0.046 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/hadronic/Hadr07/water.mac b/examples/extended/hadronic/Hadr07/water.mac index 4a4373cb56..f20b3fe991 100644 --- a/examples/extended/hadronic/Hadr07/water.mac +++ b/examples/extended/hadronic/Hadr07/water.mac @@ -1,4 +1,5 @@ # +# Macro file for "Hadr07.cc" # /control/verbose 2 /run/verbose 2 @@ -19,5 +20,4 @@ /analysis/h1/set 10 120 0. 24. mm #edep profile # /run/printProgress 10000 -# /run/beamOn 100000 diff --git a/examples/extended/hadronic/Hadr08/CMakeLists.txt b/examples/extended/hadronic/Hadr08/CMakeLists.txt index e0de485bbd..0b567fc248 100644 --- a/examples/extended/hadronic/Hadr08/CMakeLists.txt +++ b/examples/extended/hadronic/Hadr08/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(Hadr08) #---------------------------------------------------------------------------- diff --git a/examples/extended/hadronic/Hadr08/Hadr08.cc b/examples/extended/hadronic/Hadr08/Hadr08.cc index 00ad93c241..f3111840da 100644 --- a/examples/extended/hadronic/Hadr08/Hadr08.cc +++ b/examples/extended/hadronic/Hadr08/Hadr08.cc @@ -36,11 +36,7 @@ #include "FTFP_BERT.hh" #include "FTFP_INCLXX.hh" #include "G4UImanager.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "ActionInitialization.hh" #include "G4UIExecutive.hh" #include "G4GenericBiasingPhysics.hh" @@ -54,18 +50,8 @@ int main( int argc, char** argv ) { ui = new G4UIExecutive(argc, argv); } - #ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(4); - G4cout<<"+-------------------------------------------------------+"<SetUserInitialization( detector ); diff --git a/examples/extended/hadronic/Hadr08/History b/examples/extended/hadronic/Hadr08/History index 11cf1ad70d..34013b2db4 100644 --- a/examples/extended/hadronic/Hadr08/History +++ b/examples/extended/hadronic/Hadr08/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-20 B, Morgan (exhadr08-V10-06-00) +- Migration to G4RunManagerFactory. + 26-11-19 I. Hrivnacova (exhadr08-V10-05-01) - Fixed formatting in .README.txt diff --git a/examples/extended/hadronic/Hadr09/.README.txt b/examples/extended/hadronic/Hadr09/.README.txt new file mode 100644 index 0000000000..26526a93fa --- /dev/null +++ b/examples/extended/hadronic/Hadr09/.README.txt @@ -0,0 +1,53 @@ + +///\file "hadronic/Hadr09/.README.txt" +///\brief Example Hadr09 README page + +/*! \page ExampleHadr09 Example Hadr09 + +This example shows how to use Geant4 as a generator for simulating +inelastic hadron-nuclear interactions. + +The class HadronicGenerator is the "generator". +The main hadronic models (FTFP, QGSP, BERT, BIC, IonBIC, INCL) +and some combinations of two of them - in a transition energy region, +similarly to what happens in physics lists - are available. +See include/HadronicGenerator.hh for more detailed information. + +The main, Hadr09.cc, shows an example of how to use it. +It samples randomly the projectile hadron, its energy, its direction +and the target material, and then it calls the generator. +Some information regarding the secondaries which are produced can be +printed out. +See the comments in Hadr09.cc for more information and how eventually +to change some of its configurations. +Notice that Hadr09.cc does nothing really useful: users should consider +to use eventually only the class HadronicGenerator. + +Notice that the Geant4 run-manager is not used. + +\section Hadr09_s1 HOW TO START ? + +To build it: +\verbatim + mkdir Build; cd Build + cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DGeant4_DIR=/path-to-geant4-libraries ../. + make +\endverbatim + +To run it: +\verbatim + ./Hadr09 [Hadr09.in] +\endverbatim + +which simulates 1000 hadron-nucleus collisions, randomnly selected, and +prints out some information about the secondaries produced in these +interactions. It takes only a few seconds to run. +Notice that the input file, Hadr09.in, which is empty, is not needed +by Hadr09, and can be omitted; however, it has been created because +is expected by system testing. + +Note: this example has been included in Geant4 10.7, but it should work + also for early versions of Geant4, in particular 10.6, 10.5 and 10.4. + +*/ diff --git a/examples/extended/hadronic/Hadr09/CMakeLists.txt b/examples/extended/hadronic/Hadr09/CMakeLists.txt new file mode 100644 index 0000000000..5405e0ae83 --- /dev/null +++ b/examples/extended/hadronic/Hadr09/CMakeLists.txt @@ -0,0 +1,60 @@ +#---------------------------------------------------------------------------- +# Setup the project +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() +project(Hadr09) + +#---------------------------------------------------------------------------- +# Find Geant4 package, activating all available UI and Vis drivers by default +# You can set WITH_GEANT4_UIVIS to OFF via the command line or ccmake/cmake-gui +# to build a batch mode only executable +# +option(WITH_GEANT4_UIVIS "Build example with Geant4 UI and Vis drivers" ON) +if(WITH_GEANT4_UIVIS) + find_package(Geant4 REQUIRED ui_all vis_all) +else() + find_package(Geant4 REQUIRED) +endif() + +#---------------------------------------------------------------------------- +# Setup Geant4 include directories and compile definitions +# +include(${Geant4_USE_FILE}) + +#---------------------------------------------------------------------------- +# Locate sources and headers for this project +# +include_directories(${PROJECT_SOURCE_DIR}/include + ${Geant4_INCLUDE_DIR}) +file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) +file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) + +#---------------------------------------------------------------------------- +# Add the executable, and link it to the Geant4 libraries +# +add_executable(Hadr09 Hadr09.cc ${sources} ${headers}) +target_link_libraries(Hadr09 ${Geant4_LIBRARIES} ) + +#---------------------------------------------------------------------------- +# Copy all scripts to the build directory, i.e. the directory in which we +# build Hadr09. This is so that we can run the executable directly because it +# relies on these scripts being in the current working directory. +# +set(Hadr09_SCRIPTS + hadr09.in + ) + +foreach(_script ${Hadr09_SCRIPTS}) + configure_file( + ${PROJECT_SOURCE_DIR}/${_script} + ${PROJECT_BINARY_DIR}/${_script} + COPYONLY + ) +endforeach() + +#---------------------------------------------------------------------------- +# Install the executable to 'bin' directory under CMAKE_INSTALL_PREFIX +# +install(TARGETS Hadr09 DESTINATION bin) diff --git a/examples/extended/hadronic/Hadr09/GNUmakefile b/examples/extended/hadronic/Hadr09/GNUmakefile new file mode 100644 index 0000000000..6a86ce743e --- /dev/null +++ b/examples/extended/hadronic/Hadr09/GNUmakefile @@ -0,0 +1,12 @@ +name := Hadr09 +G4TARGET := $(name) +G4EXLIB := true + +ifndef G4INSTALL + G4INSTALL = ../../.. +endif + +.PHONY: all +all: lib bin + +include $(G4INSTALL)/config/binmake.gmk diff --git a/examples/extended/hadronic/Hadr09/Hadr09.cc b/examples/extended/hadronic/Hadr09/Hadr09.cc new file mode 100644 index 0000000000..6dc061cfa7 --- /dev/null +++ b/examples/extended/hadronic/Hadr09/Hadr09.cc @@ -0,0 +1,268 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +/// \file Hadr09.cc +/// \brief Main program of the hadronic/Hadr09 example +// +//------------------------------------------------------------------------ +// This program shows how to use the class Hadronic Generator. +// The class HadronicGenerator is a kind of "hadronic generator", i.e. +// provides Geant4 final states (i.e. secondary particles) produced by +// hadron-nuclear inelastic collisions. +// Please see the class itself for more information. +// +// The use of the class Hadronic Generator is very simple: +// the constructor needs to be invoked only once - specifying the name +// of the Geant4 "physics case" to consider ("FTFP_BERT_ATL" will be +// considered as default is the name is not specified) - and then one +// method needs to be called at each collision, specifying the type of +// collision (hadron, energy, direction, material) to be simulated. +// The class HadronicGenerator is expected to work also in a +// multi-threaded environment with "external" threads (i.e. threads +// that are not necessarily managed by Geant4 run-manager): +// each thread should have its own instance of the class. +// +// See the string "***LOOKHERE***" below for the setting of parameters +// of this example: the "physics case", the set of possibilities from +// which to sample the collision, i.e. the type of projectile hadron, +// its kinetic energy, its direction and the target material (from the +// latter, the target nucleus will be chosen randomly by Geant4 itself), +// and whether to print out some information or not and how frequently. +// Once a well-defined type of hadron-nuclear inelastic collisions has +// been chosen, the method HadronicGenerator::GenerateInteraction +// returns the secondaries produced by that interaction (in the form +// of a G4VParticleChange object). +// Some information about this final-state is printed out as an example. +// +// Usage: Hadr09 +//------------------------------------------------------------------------ + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include +#include "globals.hh" +#include "G4ios.hh" +#include "G4PhysicalConstants.hh" +#include "G4SystemOfUnits.hh" +#include "G4Material.hh" +#include "G4NistManager.hh" +#include "G4VParticleChange.hh" +#include "G4UnitsTable.hh" +#include "G4SystemOfUnits.hh" +#include "HadronicGenerator.hh" +#include "CLHEP/Random/Randomize.h" +#include "CLHEP/Random/Ranlux64Engine.h" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +int main( int , char** ) { + + G4cout << "=== Test of the HadronicGenerator ===" << G4endl; + + // See the HadronicGenerator class for the possibilities and meaning of the "physics cases". + // ( In short, it is the name of the Geant4 hadronic model used for the simulation of + // the collision, with the possibility of having a transition between two models in + // a given energy interval, as in physics lists. ) + const G4String namePhysics = "FTFP_BERT_ATL"; //***LOOKHERE*** PHYSICS CASE + //const G4String namePhysics = "FTFP_BERT"; + //const G4String namePhysics = "QGSP_BERT"; + //const G4String namePhysics = "QGSP_BIC"; + //const G4String namePhysics = "FTFP_INCLXX"; + //const G4String namePhysics = "FTFP"; + //const G4String namePhysics = "QGSP"; + //const G4String namePhysics = "BERT"; + //const G4String namePhysics = "BIC"; + //const G4String namePhysics = "IonBIC"; + //const G4String namePhysics = "INCL"; + + // The kinetic energy of the projectile will be sampled randomly, with flat probability + // in the interval [minEnergy, maxEnergy]. + const G4double minEnergy = 1.0*CLHEP::GeV; //***LOOKHERE*** PROJECTILE MIN Ekin + const G4double maxEnergy = 30.0*CLHEP::GeV; //***LOOKHERE*** PROJECTILE MAX Ekin + + const G4int numCollisions = 1000; //***LOOKHERE*** NUMBER OF COLLISIONS + + // Enable or disable the print out of this program: if enabled, the number of secondaries + // produced in each collisions is printed out; moreover, once every "printingGap" + // collisions, the list of secondaries is printed out. + const G4bool isPrintingEnabled = true; //***LOOKHERE*** PRINT OUT ON/OFF + const G4int printingGap = 100; //***LOOKHERE*** GAP IN PRINTING + + // Vector of Geant4 names of hadron projectiles: one of this will be sampled randomly + // (with uniform probability) for each collision. + // Note: comment out the corresponding line in order to exclude a particle. + std::vector< G4String > vecProjectiles; //***LOOKHERE*** : possible hadron projectiles + vecProjectiles.push_back( "pi-" ); + //Note: vecProjectiles.push_back( "pi0" ); // Excluded because too short-lived + vecProjectiles.push_back( "pi+" ); + vecProjectiles.push_back( "kaon-" ); + vecProjectiles.push_back( "kaon+" ); + vecProjectiles.push_back( "kaon0L" ); + vecProjectiles.push_back( "kaon0S" ); + vecProjectiles.push_back( "proton" ); + vecProjectiles.push_back( "neutron" ); + vecProjectiles.push_back( "deuteron" ); + vecProjectiles.push_back( "triton" ); + vecProjectiles.push_back( "He3" ); + vecProjectiles.push_back( "alpha" ); + vecProjectiles.push_back( "lambda" ); + vecProjectiles.push_back( "sigma-" ); + //Note: vecProjectiles.push_back( "sigma0" ); // Excluded because too short-lived + vecProjectiles.push_back( "sigma+" ); + vecProjectiles.push_back( "xi-" ); + vecProjectiles.push_back( "xi0" ); + vecProjectiles.push_back( "omega-" ); + vecProjectiles.push_back( "anti_proton" ); + vecProjectiles.push_back( "anti_neutron" ); + vecProjectiles.push_back( "anti_lambda" ); + vecProjectiles.push_back( "anti_sigma-" ); + //Note: vecProjectiles.push_back( "anti_sigma0" ); // Excluded because too short-lived + vecProjectiles.push_back( "anti_sigma+" ); + vecProjectiles.push_back( "anti_xi-" ); + vecProjectiles.push_back( "anti_xi0" ); + vecProjectiles.push_back( "anti_omega-" ); + vecProjectiles.push_back( "anti_deuteron" ); + vecProjectiles.push_back( "anti_triton" ); + vecProjectiles.push_back( "anti_He3" ); + vecProjectiles.push_back( "anti_alpha" ); + + // Vector of Geant4 NIST names of materials: one of this will be sampled randomly + // (with uniform probability) for each collision and used as target material. + // Note: comment out the corresponding line in order to exclude a material; + // or, vice versa, add a new line to extend the list with another material. + std::vector< G4String > vecMaterials; //***LOOKHERE*** : possible NIST materials + vecMaterials.push_back( "G4_H" ); + vecMaterials.push_back( "G4_He" ); + vecMaterials.push_back( "G4_Be" ); + vecMaterials.push_back( "G4_C" ); + vecMaterials.push_back( "G4_Al" ); + vecMaterials.push_back( "G4_Si" ); + vecMaterials.push_back( "G4_Ar" ); + vecMaterials.push_back( "G4_Fe" ); + vecMaterials.push_back( "G4_Cu" ); + vecMaterials.push_back( "G4_W" ); + vecMaterials.push_back( "G4_Pb" ); + + const G4int numProjectiles = vecProjectiles.size(); + const G4int numMaterials = vecMaterials.size(); + + G4cout << G4endl + << "================= Configuration ==================" << G4endl + << "Model: " << namePhysics << G4endl + << "Ekin: [ " << minEnergy/CLHEP::GeV << " , " << maxEnergy/CLHEP::GeV + << " ] GeV" << G4endl + << "Number of collisions: " << numCollisions << G4endl + << "Number of projectiles: " << numProjectiles << G4endl + << "Number of materials: " << numMaterials << G4endl + << "===================================================" << G4endl + << G4endl; + + CLHEP::Ranlux64Engine defaultEngine( 1234567, 4 ); + CLHEP::HepRandom::setTheEngine( &defaultEngine ); + G4int seed = time( NULL ); + CLHEP::HepRandom::setTheSeed( seed ); + G4cout << G4endl << " Initial seed = " << seed << G4endl << G4endl; + + // Instanciate the HadronicGenerator providing the name of the "physics case" + HadronicGenerator* theHadronicGenerator = new HadronicGenerator( namePhysics ); + //**************************************************************************** + + if ( theHadronicGenerator == nullptr ) { + G4cerr << "ERROR: theHadronicGenerator is NULL !" << G4endl; + return 1; + } else if ( ! theHadronicGenerator->IsPhysicsCaseSupported() ) { + G4cerr << "ERROR: this physics case is NOT supported !" << G4endl; + return 2; + } + + // Loop over the collisions + G4double rnd1, rnd2, rnd3, rnd4, rnd5, rnd6, normalization, projectileEnergy; + G4VParticleChange* aChange = nullptr; + for ( G4int i = 0; i < numCollisions; ++i ) { + // Draw some random numbers to select the hadron-nucleus interaction: + // projectile hadron, projectile kinetic energy, projectile direction, and target material. + rnd1 = CLHEP::HepRandom::getTheEngine()->flat(); + rnd2 = CLHEP::HepRandom::getTheEngine()->flat(); + rnd3 = CLHEP::HepRandom::getTheEngine()->flat(); + rnd4 = CLHEP::HepRandom::getTheEngine()->flat(); + rnd5 = CLHEP::HepRandom::getTheEngine()->flat(); + rnd6 = CLHEP::HepRandom::getTheEngine()->flat(); + // Sample the projectile kinetic energy + projectileEnergy = minEnergy + rnd1*( maxEnergy - minEnergy ); + if ( projectileEnergy <= 0.0 ) projectileEnergy = minEnergy; + // Sample the projectile direction + normalization = 1.0 / std::sqrt( rnd2*rnd2 + rnd3*rnd3 + rnd4*rnd4 ); + G4ThreeVector aDirection = + G4ThreeVector( normalization*rnd2, normalization*rnd3, normalization*rnd4 ); + // Sample the projectile hadron from the vector vecProjectiles + G4int index_projectile = std::trunc( rnd5*numProjectiles ); + G4String nameProjectile = vecProjectiles[ index_projectile ]; + // Sample the target material from the vector vecMaterials + // (Note: the target nucleus will be sampled by Geant4) + G4int index_material = std::trunc( rnd6*numMaterials ); + G4String nameMaterial = vecMaterials[ index_material ]; + G4Material* material = G4NistManager::Instance()->FindOrBuildMaterial( nameMaterial ); + if ( material == nullptr ) { + G4cerr << "ERROR: Material " << nameMaterial << " is not found !" << G4endl; + return 3; + } + if ( isPrintingEnabled ) { + G4cout << "\t Collision " << i << " ; projectile=" << nameProjectile + << " ; Ekin(MeV)=" << projectileEnergy /* << " ; direction=" << aDirection */ + << " ; material=" << nameMaterial; + } + + // Call here the "hadronic generator" to get the secondaries produced by the hadronic collision + aChange = theHadronicGenerator->GenerateInteraction( nameProjectile, projectileEnergy, + /* ********************************************** */ aDirection, material ); + + G4int nsec = aChange ? aChange->GetNumberOfSecondaries() : 0; + G4bool isPrintingOfSecondariesEnabled = false; + if ( isPrintingEnabled ) { + G4cout << " ---> #secondaries=" << nsec << G4endl; + if ( i % printingGap == 0 ) { + isPrintingOfSecondariesEnabled = true; + G4cout << "\t \t List of produced secondaries: " << G4endl; + } + } + // Loop over produced secondaries and eventually print out some information. + for ( G4int j = 0; j < nsec; ++j ) { + const G4DynamicParticle* sec = aChange->GetSecondary(j)->GetDynamicParticle(); + if ( isPrintingOfSecondariesEnabled ) { + G4cout << "\t \t \t j=" << j << "\t" << sec->GetDefinition()->GetParticleName() + << "\t p=" << sec->Get4Momentum() << " MeV" << G4endl; + } + delete aChange->GetSecondary(j); + } + if ( aChange ) aChange->Clear(); + } + + G4cout << G4endl << " Final random number = " << CLHEP::HepRandom::getTheEngine()->flat() + << G4endl << "=== End of test ===" << G4endl; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/hadronic/Hadr09/History b/examples/extended/hadronic/Hadr09/History new file mode 100644 index 0000000000..a3aab51a40 --- /dev/null +++ b/examples/extended/hadronic/Hadr09/History @@ -0,0 +1,19 @@ +------------------------------------------------------------------- + + ========================================================= + Geant4 - an Object-Oriented Toolkit for Simulation in HEP + ========================================================= + + Hadr08 History file + ------------------- +This file should be used by the G4 example coordinator to briefly +summarize all major modifications introduced in the code and keep +track of all tags. + + ---------------------------------------------------------- + * Reverse chronological order (last date on top), please * + ---------------------------------------------------------- + +08-11-20 Alberto Ribon (exhadr09-V10-06-00) +- Created this example. + diff --git a/examples/extended/hadronic/Hadr09/README b/examples/extended/hadronic/Hadr09/README new file mode 100644 index 0000000000..f1d63dcd9e --- /dev/null +++ b/examples/extended/hadronic/Hadr09/README @@ -0,0 +1,39 @@ +This example shows how to use Geant4 as a generator for simulating +inelastic hadron-nuclear interactions. + +The class HadronicGenerator is the "generator". +The main hadronic models (FTFP, QGSP, BERT, BIC, IonBIC, INCL) +and some combinations of two of them - in a transition energy region, +similarly to what happens in physics lists - are available. +See include/HadronicGenerator.hh for more detailed information. + +The main, Hadr09.cc, shows an example of how to use it. +It samples randomly the projectile hadron, its energy, its direction +and the target material, and then it calls the generator. +Some information regarding the secondaries which are produced can be +printed out. +See the comments in Hadr09.cc for more information and how eventually +to change some of its configurations. +Notice that Hadr09.cc does nothing really useful: users should consider +to use eventually only the class HadronicGenerator. + +Notice that the Geant4 run-manager is not used. + +To build this example: + mkdir Build; cd Build + cmake -DCMAKE_BUILD_TYPE=RelWithDebInfo \ + -DGeant4_DIR=/path-to-geant4-libraries ../. + make + +To run it: + ./Hadr09 [Hadr09.in] + +which simulates 1000 hadron-nucleus collisions, randomnly selected, and +prints out some information about the secondaries produced in these +interactions. It takes only a few seconds to run. +Notice that the input file, Hadr09.in, which is empty, is not needed +by Hadr09, and can be omitted; however, it has been created because +is expected by system testing. + +Note: this example has been included in Geant4 10.7, but it should work + also for early versions of Geant4, in particular 10.6, 10.5 and 10.4. diff --git a/examples/extended/hadronic/Hadr09/hadr09.in b/examples/extended/hadronic/Hadr09/hadr09.in new file mode 100644 index 0000000000..e287a5d7d9 --- /dev/null +++ b/examples/extended/hadronic/Hadr09/hadr09.in @@ -0,0 +1 @@ +# Empty: no input is needed for Hadr09, but is expected by system testing. diff --git a/examples/extended/hadronic/Hadr09/include/HadronicGenerator.hh b/examples/extended/hadronic/Hadr09/include/HadronicGenerator.hh new file mode 100644 index 0000000000..d151e8814b --- /dev/null +++ b/examples/extended/hadronic/Hadr09/include/HadronicGenerator.hh @@ -0,0 +1,154 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file HadronicGenerator.hh +/// \brief Definition of the HadronicGenerator class +// +//------------------------------------------------------------------------ +// Class: HadronicGenerator +// Author: Alberto Ribon (CERN EP/SFT) +// Date: May 2020 +// +// This class shows how to use Geant4 as a generator for simulating +// inelastic hadron-nuclear interactions. +// Some of the most used hadronic models are currently supported in +// this class: +// - the hadronic string models Fritiof (FTF) and Quark-Gluon-String (QGS) +// coupled with Precompound/de-excitation +// - the intranuclear cascade models: Bertini (BERT), Binary Cascade (BIC), +// and Liege (INCL) +// Combinations of two models - in a transition energy interval, with a +// linear probability as a function of the energy - are also available to +// "mimic" the transition between hadronic models as in the most common +// Geant4 reference physics lists. +// +// The current version of this class does NOT support: +// - hadron elastic interactions +// - neutron capture and fission +// - precise low-energy inelastic interactions of neutrons and +// charged particles (i.e. ParticleHP) +// - gamma/lepton-nuclear inelastic interactions +// - inelastic nuclear interactions of generic-ions (i.e. projectile ions +// heavier than deuterium, triton, He3 and alpha) +// +// This class does NOT use the Geant4 run-manager, and therefore should +// be usable in a multi-threaded application, with one instance of this +// class in each thread. +// +// This class has been inspired by test30 (whose author is Vladimir +// Ivanchenko), with various simplifications and restricted to hadronic +// inelastic interactions. +//------------------------------------------------------------------------ + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef HadronicGenerator_h +#define HadronicGenerator_h 1 + +#include +#include "globals.hh" +#include "G4ios.hh" +#include "G4ThreeVector.hh" +#include + +class G4ParticleDefinition; +class G4VParticleChange; +class G4ParticleTable; +class G4Material; +class G4HadronicProcess; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +class HadronicGenerator { + // This class provides the functionality of a "hadronic generator" + // for Geant4 final-state inelastic hadronic collisions. + // Only a few of the available Geant4 final-state hadronic inelastic + // "physics cases" are currently available in this class - but it can + // be extended to other cases if needed. + // It is important to notice that this class does NOT use the Geant4 + // run-manager, so it should work fine in a multi-threaded environment, + // with a separate instance of this class in each thread. + public: + + explicit HadronicGenerator( const G4String physicsCase = "FTFP_BERT_ATL" ); + // Currently supported final-state hadronic inelastic "physics cases": + // - Hadronic models : BERT, BIC, IonBIC, INCL, FTFP, QGSP + // - "Physics-list proxies" : FTFP_BERT_ATL (default), FTFP_BERT, + // QGSP_BERT, QGSP_BIC, FTFP_INCLXX + // (i.e. they are not real, complete physics lists - for instance + // they do not have: transportation, electromagnetic physics, + // hadron elastic scattering, neutron fission and capture, etc. - + // however, they cover all hadron types and all energies by + // combining different hadronic models, i.e. there are transitions + // between two hadronic models in well-defined energy intervals, + // e.g. "FTFP_BERT" has the transition between BERT and FTFP + // hadronic models; moreover, the transition intervals used in + // our "physics cases"might not be the same as in the corresponding + // physics lists). + + ~HadronicGenerator(); + + G4bool IsPhysicsCaseSupported(); + // Returns "true" if the physicsCase is supported; "false" otherwise. + + G4bool IsApplicable( const G4String &nameProjectile, const G4double projectileEnergy ); + G4bool IsApplicable( G4ParticleDefinition* projectileDefinition, + const G4double projectileEnergy ); + // Returns "true" if the specified projectile (either by name or particle definition) + // of given energy is applicable, "false" otherwise. + + G4VParticleChange* GenerateInteraction( const G4String &nameProjectile, + const G4double projectileEnergy, + const G4ThreeVector &projectileDirection , + G4Material* targetMaterial ); + G4VParticleChange* GenerateInteraction( G4ParticleDefinition* projectileDefinition, + const G4double projectileEnergy, + const G4ThreeVector &projectileDirection , + G4Material* targetMaterial ); + // This is the main method provided by the class: + // in input it receives the projectile (either by name or particle definition), + // its energy, its direction and the target material, and it returns one sampled + // final-state of the inelastic hadron-nuclear collision as modelled by the + // final-state hadronic inelastic "physics case" specified in the constructor. + // If the required hadronic collision is not possible, then the method returns + // immediately an empty "G4VParticleChange", i.e. without secondaries produced. + + private: + + G4String fPhysicsCase; + G4bool fPhysicsCaseIsSupported; + G4ParticleTable* fPartTable; + std::map< G4ParticleDefinition*, G4HadronicProcess* > fProcessMap; +}; + + +inline G4bool HadronicGenerator::IsPhysicsCaseSupported() { + return fPhysicsCaseIsSupported; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif diff --git a/examples/extended/hadronic/Hadr09/src/HadronicGenerator.cc b/examples/extended/hadronic/Hadr09/src/HadronicGenerator.cc new file mode 100644 index 0000000000..3d12bcb71e --- /dev/null +++ b/examples/extended/hadronic/Hadr09/src/HadronicGenerator.cc @@ -0,0 +1,756 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file HadronicGenerator.cc +/// \brief Implementation of the HadronicGenerator class +// +//------------------------------------------------------------------------ +// Class: HadronicGenerator +// Author: Alberto Ribon (CERN EP/SFT) +// Date: May 2020 +//------------------------------------------------------------------------ + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "HadronicGenerator.hh" +#include +#include "globals.hh" +#include "G4ios.hh" +#include "G4PhysicalConstants.hh" +#include "G4Material.hh" +#include "G4ProcessManager.hh" +#include "G4VParticleChange.hh" +#include "G4ParticleTable.hh" +#include "G4IonTable.hh" +#include "G4DynamicParticle.hh" +#include "G4DecayPhysics.hh" +#include "G4Box.hh" +#include "G4PVPlacement.hh" +#include "G4Step.hh" +#include "G4UnitsTable.hh" +#include "G4SystemOfUnits.hh" +#include "G4StateManager.hh" +#include "G4TouchableHistory.hh" +#include "G4TransportationManager.hh" + +#include "G4PionMinus.hh" +#include "G4PionPlus.hh" +#include "G4KaonMinus.hh" +#include "G4KaonPlus.hh" +#include "G4KaonZeroLong.hh" +#include "G4KaonZeroShort.hh" +#include "G4Proton.hh" +#include "G4Neutron.hh" +#include "G4Deuteron.hh" +#include "G4Triton.hh" +#include "G4He3.hh" +#include "G4Alpha.hh" +#include "G4Lambda.hh" +#include "G4SigmaPlus.hh" +#include "G4SigmaZero.hh" +#include "G4SigmaMinus.hh" +#include "G4XiMinus.hh" +#include "G4XiZero.hh" +#include "G4OmegaMinus.hh" +#include "G4AntiProton.hh" +#include "G4AntiNeutron.hh" +#include "G4AntiDeuteron.hh" +#include "G4AntiTriton.hh" +#include "G4AntiHe3.hh" +#include "G4AntiAlpha.hh" +#include "G4AntiLambda.hh" +#include "G4AntiSigmaPlus.hh" +#include "G4AntiSigmaZero.hh" +#include "G4AntiSigmaMinus.hh" +#include "G4AntiXiMinus.hh" +#include "G4AntiXiZero.hh" +#include "G4AntiOmegaMinus.hh" +#include "G4GenericIon.hh" + +#include "G4HadronicProcess.hh" +#include "G4PionMinusInelasticProcess.hh" +#include "G4PionPlusInelasticProcess.hh" +#include "G4KaonMinusInelasticProcess.hh" +#include "G4KaonPlusInelasticProcess.hh" +#include "G4KaonZeroSInelasticProcess.hh" +#include "G4KaonZeroLInelasticProcess.hh" +#include "G4ProtonInelasticProcess.hh" +#include "G4NeutronInelasticProcess.hh" +#include "G4DeuteronInelasticProcess.hh" +#include "G4TritonInelasticProcess.hh" +#include "G4He3InelasticProcess.hh" +#include "G4AlphaInelasticProcess.hh" +#include "G4IonInelasticProcess.hh" +#include "G4LambdaInelasticProcess.hh" +#include "G4SigmaMinusInelasticProcess.hh" +#include "G4SigmaPlusInelasticProcess.hh" +#include "G4XiMinusInelasticProcess.hh" +#include "G4XiZeroInelasticProcess.hh" +#include "G4OmegaMinusInelasticProcess.hh" +#include "G4AntiProtonInelasticProcess.hh" +#include "G4AntiNeutronInelasticProcess.hh" +#include "G4AntiDeuteronInelasticProcess.hh" +#include "G4AntiTritonInelasticProcess.hh" +#include "G4AntiHe3InelasticProcess.hh" +#include "G4AntiAlphaInelasticProcess.hh" +#include "G4AntiLambdaInelasticProcess.hh" +#include "G4AntiSigmaMinusInelasticProcess.hh" +#include "G4AntiSigmaPlusInelasticProcess.hh" +#include "G4AntiXiMinusInelasticProcess.hh" +#include "G4AntiXiZeroInelasticProcess.hh" +#include "G4AntiOmegaMinusInelasticProcess.hh" + +#include "G4CascadeInterface.hh" +#include "G4TheoFSGenerator.hh" +#include "G4GeneratorPrecompoundInterface.hh" +#include "G4ExcitationHandler.hh" +#include "G4PreCompoundModel.hh" +#include "G4LundStringFragmentation.hh" +#include "G4ExcitedStringDecay.hh" +#include "G4FTFModel.hh" +#include "G4BinaryCascade.hh" +#include "G4BinaryLightIonReaction.hh" +#include "G4INCLXXInterface.hh" +#include "G4AblaInterface.hh" +#include "G4QuasiElasticChannel.hh" +#include "G4QGSMFragmentation.hh" +#include "G4QGSModel.hh" +#include "G4QGSParticipants.hh" + +#include "G4VCrossSectionDataSet.hh" +#include "G4CrossSectionInelastic.hh" +#include "G4BGGNucleonInelasticXS.hh" +#include "G4NeutronInelasticXS.hh" +#include "G4BGGPionInelasticXS.hh" +#include "G4ComponentGGHadronNucleusXsc.hh" +#include "G4ChipsHyperonInelasticXS.hh" +#include "G4ComponentAntiNuclNuclearXS.hh" +#include "G4ComponentGGNuclNuclXsc.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +HadronicGenerator::HadronicGenerator( const G4String physicsCase ) : + fPhysicsCase( physicsCase ), fPhysicsCaseIsSupported( false ), fPartTable( nullptr ) +{ + // The constructor set-ups all the particles, models, cross sections and + // hadronic inelastic processes. + // This should be done only once for each application. + // In the case of a multi-threaded application using this class, + // the constructor should be invoked for each thread, + // i.e. one instance of the class should be kept per thread. + // The particles and processes that are created in this constructor + // will then be used by the method GenerateInteraction at each interaction. + // Notes: + // - Neither the hadronic models nor the cross sections are used directly + // by the method GenerateInteraction, but they are associated to the + // hadronic processes and used by Geant4 to simulate the collision; + // - Although the class generates only final states, but not free mean paths, + // inelastic hadron-nuclear cross sections are needed by Geant4 to sample + // the target nucleus from the target material. + + // Definition of particles + G4GenericIon* gion = G4GenericIon::GenericIon(); + gion->SetProcessManager( new G4ProcessManager( gion ) ); + G4DecayPhysics* decays = new G4DecayPhysics; + decays->ConstructParticle(); + fPartTable = G4ParticleTable::GetParticleTable(); + fPartTable->SetReadiness(); + G4IonTable* ions = fPartTable->GetIonTable(); + ions->CreateAllIon(); + ions->CreateAllIsomer(); + + // Build BERT model + G4CascadeInterface* theBERTmodel = new G4CascadeInterface; + + // Build BIC model + G4BinaryCascade* theBICmodel = new G4BinaryCascade; + G4PreCompoundModel* thePreEquilib = new G4PreCompoundModel( new G4ExcitationHandler ); + theBICmodel->SetDeExcitation( thePreEquilib ); + + // Build BinaryLightIon model + G4PreCompoundModel* thePreEquilibBis = new G4PreCompoundModel( new G4ExcitationHandler ); + G4BinaryLightIonReaction* theIonBICmodel = new G4BinaryLightIonReaction( thePreEquilibBis ); + + // Build the INCL model + G4INCLXXInterface* theINCLmodel = new G4INCLXXInterface; + const G4bool useAblaDeExcitation = false; // By default INCL uses Preco: set "true" to use + // ABLA DeExcitation + if ( theINCLmodel && useAblaDeExcitation ) { + G4AblaInterface* theAblaInterface = new G4AblaInterface; + theINCLmodel->SetDeExcitation( theAblaInterface ); + } + + // Build the FTFP model (FTF/Preco) : 3 instances with different energy intervals + G4TheoFSGenerator* theFTFPmodel = new G4TheoFSGenerator; + theFTFPmodel->SetMaxEnergy( 100.0*TeV ); // Needed to run above 25 GeV + G4GeneratorPrecompoundInterface* theCascade = new G4GeneratorPrecompoundInterface; + theCascade->SetDeExcitation( thePreEquilib ); + theFTFPmodel->SetTransport( theCascade ); + G4LundStringFragmentation* theLundFragmentation = new G4LundStringFragmentation; + G4ExcitedStringDecay* theStringDecay = new G4ExcitedStringDecay( theLundFragmentation ); + G4FTFModel* theStringModel = new G4FTFModel; + theStringModel->SetFragmentationModel( theStringDecay ); + theFTFPmodel->SetHighEnergyGenerator( theStringModel ); + + G4TheoFSGenerator* theFTFPmodel_constrained = new G4TheoFSGenerator; + theFTFPmodel_constrained->SetMaxEnergy( 100.0*TeV ); // Needed to run above 25 GeV + theFTFPmodel_constrained->SetTransport( theCascade ); + theFTFPmodel_constrained->SetHighEnergyGenerator( theStringModel ); + + G4TheoFSGenerator* theFTFPmodel_halfConstrained = new G4TheoFSGenerator; + theFTFPmodel_halfConstrained->SetMaxEnergy( 100.0*TeV ); // Needed to run above 25 GeV + theFTFPmodel_halfConstrained->SetTransport( theCascade ); + theFTFPmodel_halfConstrained->SetHighEnergyGenerator( theStringModel ); + + // Build the QGSP model (QGS/Preco) + G4TheoFSGenerator* theQGSPmodel = new G4TheoFSGenerator; + theQGSPmodel->SetMaxEnergy( 100.0*TeV ); // Needed to run above 25 GeV + theQGSPmodel->SetTransport( theCascade ); + G4QGSMFragmentation* theQgsmFragmentation = new G4QGSMFragmentation; + G4ExcitedStringDecay* theQgsmStringDecay = new G4ExcitedStringDecay( theQgsmFragmentation ); + G4VPartonStringModel* theQgsmStringModel = new G4QGSModel< G4QGSParticipants >; + theQgsmStringModel->SetFragmentationModel( theQgsmStringDecay ); + theQGSPmodel->SetHighEnergyGenerator( theQgsmStringModel ); + G4QuasiElasticChannel* theQuasiElastic = new G4QuasiElasticChannel; // QGSP uses quasi-elastic + theQGSPmodel->SetQuasiElasticChannel( theQuasiElastic ); + + // Cross sections (needed by Geant4 to sample the target nucleus from the target material) + G4VCrossSectionDataSet* thePionMinusXSdata = + new G4BGGPionInelasticXS( G4PionMinus::Definition() ); + thePionMinusXSdata->BuildPhysicsTable( *(G4PionMinus::Definition()) ); + G4VCrossSectionDataSet* thePionPlusXSdata = + new G4BGGPionInelasticXS( G4PionPlus::Definition() ); + thePionPlusXSdata->BuildPhysicsTable( *(G4PionPlus::Definition()) ); + G4VCrossSectionDataSet* theKaonXSdata = + new G4CrossSectionInelastic( new G4ComponentGGHadronNucleusXsc ); + theKaonXSdata->BuildPhysicsTable( *(G4KaonMinus::Definition()) ); + theKaonXSdata->BuildPhysicsTable( *(G4KaonPlus::Definition()) ); + theKaonXSdata->BuildPhysicsTable( *(G4KaonZeroLong::Definition()) ); + theKaonXSdata->BuildPhysicsTable( *(G4KaonZeroShort::Definition()) ); + G4VCrossSectionDataSet* theProtonXSdata = new G4BGGNucleonInelasticXS( G4Proton::Proton() ); + theProtonXSdata->BuildPhysicsTable( *(G4Proton::Definition()) ); + G4VCrossSectionDataSet* theNeutronXSdata = new G4NeutronInelasticXS; + theNeutronXSdata->BuildPhysicsTable( *(G4Neutron::Definition()) ); + // For hyperon and anti-hyperons we can use either Chips or, for G4 >= 10.5, + // Glauber-Gribov cross sections + //G4VCrossSectionDataSet* theHyperonsXSdata = new G4ChipsHyperonInelasticXS; + G4VCrossSectionDataSet* theHyperonsXSdata = + new G4CrossSectionInelastic( new G4ComponentGGHadronNucleusXsc ); + G4VCrossSectionDataSet* theAntibaryonsXSdata = + new G4CrossSectionInelastic( new G4ComponentAntiNuclNuclearXS ); + G4VCrossSectionDataSet* theNuclNuclXSdata = + new G4CrossSectionInelastic( new G4ComponentGGNuclNuclXsc ); + + // Set up inelastic processes : store them in a map (with particle definition as key) + // for convenience + typedef std::pair< G4ParticleDefinition*, G4HadronicProcess* > ProcessPair; + G4HadronicProcess* thePionMinusInelasticProcess = new G4PionMinusInelasticProcess; + fProcessMap.insert( ProcessPair( G4PionMinus::Definition(), thePionMinusInelasticProcess ) ); + G4HadronicProcess* thePionPlusInelasticProcess = new G4PionPlusInelasticProcess; + fProcessMap.insert( ProcessPair( G4PionPlus::Definition(), thePionPlusInelasticProcess ) ); + G4HadronicProcess* theKaonMinusInelasticProcess = new G4KaonMinusInelasticProcess; + fProcessMap.insert( ProcessPair( G4KaonMinus::Definition(), theKaonMinusInelasticProcess ) ); + G4HadronicProcess* theKaonPlusInelasticProcess = new G4KaonPlusInelasticProcess; + fProcessMap.insert( ProcessPair( G4KaonPlus::Definition(), theKaonPlusInelasticProcess ) ); + G4HadronicProcess* theKaonZeroLInelasticProcess = new G4KaonZeroLInelasticProcess; + fProcessMap.insert( ProcessPair( G4KaonZeroLong::Definition(), theKaonZeroLInelasticProcess ) ); + G4HadronicProcess* theKaonZeroSInelasticProcess = new G4KaonZeroSInelasticProcess; + fProcessMap.insert( ProcessPair( G4KaonZeroShort::Definition(), theKaonZeroSInelasticProcess ) ); + G4HadronicProcess* theProtonInelasticProcess = new G4ProtonInelasticProcess; + fProcessMap.insert( ProcessPair( G4Proton::Definition(), theProtonInelasticProcess ) ); + G4HadronicProcess* theNeutronInelasticProcess = new G4NeutronInelasticProcess; + fProcessMap.insert( ProcessPair( G4Neutron::Definition(), theNeutronInelasticProcess ) ); + G4HadronicProcess* theDeuteronInelasticProcess = new G4DeuteronInelasticProcess; + fProcessMap.insert( ProcessPair( G4Deuteron::Definition(), theDeuteronInelasticProcess ) ); + G4HadronicProcess* theTritonInelasticProcess = new G4TritonInelasticProcess; + fProcessMap.insert( ProcessPair( G4Triton::Definition(), theTritonInelasticProcess ) ); + G4HadronicProcess* theHe3InelasticProcess = new G4He3InelasticProcess; + fProcessMap.insert( ProcessPair( G4He3::Definition(), theHe3InelasticProcess ) ); + G4HadronicProcess* theAlphaInelasticProcess = new G4AlphaInelasticProcess; + fProcessMap.insert( ProcessPair( G4Alpha::Definition(), theAlphaInelasticProcess ) ); + G4HadronicProcess* theIonInelasticProcess = new G4IonInelasticProcess; + fProcessMap.insert( ProcessPair( G4GenericIon::Definition(), theIonInelasticProcess ) ); + G4HadronicProcess* theLambdaInelasticProcess = new G4LambdaInelasticProcess; + fProcessMap.insert( ProcessPair( G4Lambda::Definition(), theLambdaInelasticProcess ) ); + G4HadronicProcess* theSigmaMinusInelasticProcess = new G4SigmaMinusInelasticProcess; + fProcessMap.insert( ProcessPair( G4SigmaMinus::Definition(), theSigmaMinusInelasticProcess ) ); + G4HadronicProcess* theSigmaPlusInelasticProcess = new G4SigmaPlusInelasticProcess; + fProcessMap.insert( ProcessPair( G4SigmaPlus::Definition(), theSigmaPlusInelasticProcess ) ); + G4HadronicProcess* theXiMinusInelasticProcess = new G4XiMinusInelasticProcess; + fProcessMap.insert( ProcessPair( G4XiMinus::Definition(), theXiMinusInelasticProcess ) ); + G4HadronicProcess* theXiZeroInelasticProcess = new G4XiZeroInelasticProcess; + fProcessMap.insert( ProcessPair( G4XiZero::Definition(), theXiZeroInelasticProcess ) ); + G4HadronicProcess* theOmegaMinusInelasticProcess = new G4OmegaMinusInelasticProcess; + fProcessMap.insert( ProcessPair( G4OmegaMinus::Definition(), theOmegaMinusInelasticProcess ) ); + G4HadronicProcess* theAntiProtonInelasticProcess = new G4AntiProtonInelasticProcess; + fProcessMap.insert( ProcessPair( G4AntiProton::Definition(), theAntiProtonInelasticProcess ) ); + G4HadronicProcess* theAntiNeutronInelasticProcess = new G4AntiNeutronInelasticProcess; + fProcessMap.insert( ProcessPair( G4AntiNeutron::Definition(), theAntiNeutronInelasticProcess ) ); + G4HadronicProcess* theAntiDeuteronInelasticProcess = new G4AntiDeuteronInelasticProcess; + fProcessMap.insert( ProcessPair( G4AntiDeuteron::Definition(), + theAntiDeuteronInelasticProcess ) ); + G4HadronicProcess* theAntiTritonInelasticProcess = new G4AntiTritonInelasticProcess; + fProcessMap.insert( ProcessPair( G4AntiTriton::Definition(), theAntiTritonInelasticProcess ) ); + G4HadronicProcess* theAntiHe3InelasticProcess = new G4AntiHe3InelasticProcess; + fProcessMap.insert( ProcessPair( G4AntiHe3::Definition(), theAntiHe3InelasticProcess ) ); + G4HadronicProcess* theAntiAlphaInelasticProcess = new G4AntiAlphaInelasticProcess; + fProcessMap.insert( ProcessPair( G4AntiAlpha::Definition(), theAntiAlphaInelasticProcess ) ); + G4HadronicProcess* theAntiLambdaInelasticProcess = new G4AntiLambdaInelasticProcess; + fProcessMap.insert( ProcessPair( G4AntiLambda::Definition(), theAntiLambdaInelasticProcess ) ); + G4HadronicProcess* theAntiSigmaMinusInelasticProcess = new G4AntiSigmaMinusInelasticProcess; + fProcessMap.insert( ProcessPair( G4AntiSigmaMinus::Definition(), + theAntiSigmaMinusInelasticProcess ) ); + G4HadronicProcess* theAntiSigmaPlusInelasticProcess = new G4AntiSigmaPlusInelasticProcess; + fProcessMap.insert( ProcessPair( G4AntiSigmaPlus::Definition(), + theAntiSigmaPlusInelasticProcess ) ); + G4HadronicProcess* theAntiXiMinusInelasticProcess = new G4AntiXiMinusInelasticProcess; + fProcessMap.insert( ProcessPair( G4AntiXiMinus::Definition(), theAntiXiMinusInelasticProcess ) ); + G4HadronicProcess* theAntiXiZeroInelasticProcess = new G4AntiXiZeroInelasticProcess; + fProcessMap.insert( ProcessPair( G4AntiXiZero::Definition(), theAntiXiZeroInelasticProcess ) ); + G4HadronicProcess* theAntiOmegaMinusInelasticProcess = new G4AntiOmegaMinusInelasticProcess; + fProcessMap.insert( ProcessPair( G4AntiOmegaMinus::Definition(), + theAntiOmegaMinusInelasticProcess ) ); + + // Add the cross sections to the corresponding hadronic processes + thePionMinusInelasticProcess->AddDataSet( thePionMinusXSdata ); + thePionPlusInelasticProcess->AddDataSet( thePionPlusXSdata ); + theKaonMinusInelasticProcess->AddDataSet( theKaonXSdata ); + theKaonPlusInelasticProcess->AddDataSet( theKaonXSdata ); + theKaonZeroLInelasticProcess->AddDataSet( theKaonXSdata ); + theKaonZeroSInelasticProcess->AddDataSet( theKaonXSdata ); + theProtonInelasticProcess->AddDataSet( theProtonXSdata ); + theNeutronInelasticProcess->AddDataSet( theNeutronXSdata ); + theDeuteronInelasticProcess->AddDataSet( theNuclNuclXSdata ); + theTritonInelasticProcess->AddDataSet( theNuclNuclXSdata ); + theHe3InelasticProcess->AddDataSet( theNuclNuclXSdata ); + theAlphaInelasticProcess->AddDataSet( theNuclNuclXSdata ); + theIonInelasticProcess->AddDataSet( theNuclNuclXSdata ); + theLambdaInelasticProcess->AddDataSet( theHyperonsXSdata ); + theSigmaMinusInelasticProcess->AddDataSet( theHyperonsXSdata ); + theSigmaPlusInelasticProcess->AddDataSet( theHyperonsXSdata ); + theXiMinusInelasticProcess->AddDataSet( theHyperonsXSdata ); + theXiZeroInelasticProcess->AddDataSet( theHyperonsXSdata ); + theOmegaMinusInelasticProcess->AddDataSet( theHyperonsXSdata ); + theAntiProtonInelasticProcess->AddDataSet( theAntibaryonsXSdata ); + theAntiNeutronInelasticProcess->AddDataSet( theAntibaryonsXSdata ); + theAntiDeuteronInelasticProcess->AddDataSet( theAntibaryonsXSdata ); + theAntiTritonInelasticProcess->AddDataSet( theAntibaryonsXSdata ); + theAntiHe3InelasticProcess->AddDataSet( theAntibaryonsXSdata ); + theAntiAlphaInelasticProcess->AddDataSet( theHyperonsXSdata ); + theAntiLambdaInelasticProcess->AddDataSet( theHyperonsXSdata ); + theAntiSigmaMinusInelasticProcess->AddDataSet( theHyperonsXSdata ); + theAntiSigmaPlusInelasticProcess->AddDataSet( theHyperonsXSdata ); + theAntiXiMinusInelasticProcess->AddDataSet( theHyperonsXSdata ); + theAntiXiZeroInelasticProcess->AddDataSet( theHyperonsXSdata ); + theAntiOmegaMinusInelasticProcess->AddDataSet( theHyperonsXSdata ); + + // Register the proper hadronic model(s) to the corresponding hadronic processes. + // Note: hadronic models ("BERT", "BIC", "IonBIC", "INCL", "FTFP", "QGSP") are + // used for the hadrons and energies they are applicable + // (exception for INCL, which in recent versions of Geant4 can handle + // more hadron types and higher energies than considered here). + // For "physics-list proxies" ("FTFP_BERT", "FTFP_BERT_ATL", "QGSP_BERT", + // "QGSP_BIC", "FTFP_INCLXX"), all hadron types and all energies are covered + // by combining different hadronic models - similarly (but not identically) + // to the corresponding physics lists. + if ( fPhysicsCase == "BIC" || + fPhysicsCase == "QGSP_BIC" ) { + // The BIC model is applicable to nucleons and pions, + // whereas in the physics list QGSP_BIC it is used only for nucleons + fPhysicsCaseIsSupported = true; + theProtonInelasticProcess->RegisterMe( theBICmodel ); + theNeutronInelasticProcess->RegisterMe( theBICmodel ); + if ( fPhysicsCase == "BIC" ) { + thePionMinusInelasticProcess->RegisterMe( theBICmodel ); + thePionPlusInelasticProcess->RegisterMe( theBICmodel ); + } else { + thePionMinusInelasticProcess->RegisterMe( theBERTmodel ); + thePionPlusInelasticProcess->RegisterMe( theBERTmodel ); + } + } else if ( fPhysicsCase == "INCL" || + fPhysicsCase == "FTFP_INCLXX" ) { + // We consider here for simplicity only nucleons and pions + // (although recent versions of INCL can handle others particles as well) + fPhysicsCaseIsSupported = true; + thePionMinusInelasticProcess->RegisterMe( theINCLmodel ); + thePionPlusInelasticProcess->RegisterMe( theINCLmodel ); + theProtonInelasticProcess->RegisterMe( theINCLmodel ); + theNeutronInelasticProcess->RegisterMe( theINCLmodel ); + } + if ( fPhysicsCase == "IonBIC" || + fPhysicsCase == "FTFP_BERT_ATL" || + fPhysicsCase == "FTFP_BERT" || + fPhysicsCase == "FTFP_INCLXX" || + fPhysicsCase == "QGSP_BERT" || + fPhysicsCase == "QGSP_BIC" ) { + // The Binary Light Ion model is used for light ions in all physics lists + fPhysicsCaseIsSupported = true; + theDeuteronInelasticProcess->RegisterMe( theIonBICmodel ); + theTritonInelasticProcess->RegisterMe( theIonBICmodel ); + theHe3InelasticProcess->RegisterMe( theIonBICmodel ); + theAlphaInelasticProcess->RegisterMe( theIonBICmodel ); + } + if ( fPhysicsCase == "QGSP" || + fPhysicsCase == "QGSP_BERT" || + fPhysicsCase == "QGSP_BIC" ) { + // Although the QGSP model can handle also hyperons and anti-baryons, + // in the physics lists it is used only for pions, kaons and nucleons + fPhysicsCaseIsSupported = true; + thePionMinusInelasticProcess->RegisterMe( theQGSPmodel ); + thePionPlusInelasticProcess->RegisterMe( theQGSPmodel ); + theKaonMinusInelasticProcess->RegisterMe( theQGSPmodel ); + theKaonPlusInelasticProcess->RegisterMe( theQGSPmodel ); + theKaonZeroLInelasticProcess->RegisterMe( theQGSPmodel ); + theKaonZeroSInelasticProcess->RegisterMe( theQGSPmodel ); + theProtonInelasticProcess->RegisterMe( theQGSPmodel ); + theNeutronInelasticProcess->RegisterMe( theQGSPmodel ); + if ( fPhysicsCase == "QGSP" ) { + theLambdaInelasticProcess->RegisterMe( theQGSPmodel ); + theSigmaMinusInelasticProcess->RegisterMe( theQGSPmodel ); + theSigmaPlusInelasticProcess->RegisterMe( theQGSPmodel ); + theXiMinusInelasticProcess->RegisterMe( theQGSPmodel ); + theXiZeroInelasticProcess->RegisterMe( theQGSPmodel ); + theOmegaMinusInelasticProcess->RegisterMe( theQGSPmodel ); + theAntiProtonInelasticProcess->RegisterMe( theQGSPmodel ); + theAntiNeutronInelasticProcess->RegisterMe( theQGSPmodel ); + theAntiDeuteronInelasticProcess->RegisterMe( theQGSPmodel ); + theAntiTritonInelasticProcess->RegisterMe( theQGSPmodel ); + theAntiHe3InelasticProcess->RegisterMe( theQGSPmodel ); + theAntiAlphaInelasticProcess->RegisterMe( theQGSPmodel ); + theAntiLambdaInelasticProcess->RegisterMe( theQGSPmodel ); + theAntiSigmaMinusInelasticProcess->RegisterMe( theQGSPmodel ); + theAntiSigmaPlusInelasticProcess->RegisterMe( theQGSPmodel ); + theAntiXiMinusInelasticProcess->RegisterMe( theQGSPmodel ); + theAntiXiZeroInelasticProcess->RegisterMe( theQGSPmodel ); + theAntiOmegaMinusInelasticProcess->RegisterMe( theQGSPmodel ); + } + } + if ( fPhysicsCase == "BERT" || + fPhysicsCase == "FTFP_BERT_ATL" || + fPhysicsCase == "FTFP_BERT" || + fPhysicsCase == "QGSP_BERT" ) { + // The BERT model is used for pions and nucleons in all Bertini-based physics lists + fPhysicsCaseIsSupported = true; + thePionMinusInelasticProcess->RegisterMe( theBERTmodel ); + thePionPlusInelasticProcess->RegisterMe( theBERTmodel ); + theProtonInelasticProcess->RegisterMe( theBERTmodel ); + theNeutronInelasticProcess->RegisterMe( theBERTmodel ); + } + if ( fPhysicsCase == "BERT" || + fPhysicsCase == "FTFP_BERT_ATL" || + fPhysicsCase == "FTFP_BERT" || + fPhysicsCase == "FTFP_INCLXX" || + fPhysicsCase == "QGSP_BERT" || + fPhysicsCase == "QGSP_BIC" ) { + // The BERT model is used for kaons and hyperons in all physics lists, but not for light ions + fPhysicsCaseIsSupported = true; + theKaonMinusInelasticProcess->RegisterMe( theBERTmodel ); + theKaonPlusInelasticProcess->RegisterMe( theBERTmodel ); + theKaonZeroLInelasticProcess->RegisterMe( theBERTmodel ); + theKaonZeroSInelasticProcess->RegisterMe( theBERTmodel ); + theLambdaInelasticProcess->RegisterMe( theBERTmodel ); + theSigmaMinusInelasticProcess->RegisterMe( theBERTmodel ); + theSigmaPlusInelasticProcess->RegisterMe( theBERTmodel ); + theXiMinusInelasticProcess->RegisterMe( theBERTmodel ); + theXiZeroInelasticProcess->RegisterMe( theBERTmodel ); + theOmegaMinusInelasticProcess->RegisterMe( theBERTmodel ); + if ( fPhysicsCase == "BERT" ) { + theDeuteronInelasticProcess->RegisterMe( theBERTmodel ); + theTritonInelasticProcess->RegisterMe( theBERTmodel ); + theHe3InelasticProcess->RegisterMe( theBERTmodel ); + theAlphaInelasticProcess->RegisterMe( theBERTmodel ); + } + } + if ( fPhysicsCase == "FTFP" || + fPhysicsCase == "FTFP_BERT_ATL" || + fPhysicsCase == "FTFP_BERT" || + fPhysicsCase == "FTFP_INCLXX" || + fPhysicsCase == "QGSP_BERT" || + fPhysicsCase == "QGSP_BIC" ) { + // The FTFP model is applied for all hadrons, but in different energy intervals according + // whether it is consider as a stand-alone hadronic model, or within physics lists + fPhysicsCaseIsSupported = true; + theAntiProtonInelasticProcess->RegisterMe( theFTFPmodel ); + theAntiNeutronInelasticProcess->RegisterMe( theFTFPmodel ); + theAntiDeuteronInelasticProcess->RegisterMe( theFTFPmodel ); + theAntiTritonInelasticProcess->RegisterMe( theFTFPmodel ); + theAntiHe3InelasticProcess->RegisterMe( theFTFPmodel ); + theAntiAlphaInelasticProcess->RegisterMe( theFTFPmodel ); + theAntiLambdaInelasticProcess->RegisterMe( theFTFPmodel ); + theAntiSigmaMinusInelasticProcess->RegisterMe( theFTFPmodel ); + theAntiSigmaPlusInelasticProcess->RegisterMe( theFTFPmodel ); + theAntiXiMinusInelasticProcess->RegisterMe( theFTFPmodel ); + theAntiXiZeroInelasticProcess->RegisterMe( theFTFPmodel ); + theAntiOmegaMinusInelasticProcess->RegisterMe( theFTFPmodel ); + G4TheoFSGenerator* theFTFPmodelToBeUsed = theFTFPmodel_constrained; + if ( fPhysicsCase == "FTFP" ) theFTFPmodelToBeUsed = theFTFPmodel; + thePionMinusInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + thePionPlusInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theKaonMinusInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theKaonPlusInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theKaonZeroLInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theKaonZeroSInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theProtonInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theNeutronInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theFTFPmodelToBeUsed = theFTFPmodel_halfConstrained; + if ( fPhysicsCase == "FTFP" ) theFTFPmodelToBeUsed = theFTFPmodel; + theDeuteronInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theTritonInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theHe3InelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theAlphaInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theIonInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theLambdaInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theSigmaMinusInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theSigmaPlusInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theXiMinusInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theXiZeroInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + theOmegaMinusInelasticProcess->RegisterMe( theFTFPmodelToBeUsed ); + } + + if ( ! fPhysicsCaseIsSupported ) { + G4cerr << "ERROR: Not supported final-state hadronic inelastic physics case !" + << fPhysicsCase << G4endl + << "\t Re-try by choosing one of the following:" << G4endl + << "\t - Hadronic models : BERT, BIC, IonBIC, INCL, FTFP, QGSP" << G4endl + << "\t - \"Physics-list proxies\" : FTFP_BERT_ATL (default), FTFP_BERT, \ + QGSP_BERT, QGSP_BIC, FTFP_INCLXX" + << G4endl; + } + + // For the case of "physics-list proxies", select the energy range for each hadronic model. + // Note: the transition energy between hadronic models vary between physics lists, + // type of hadrons, and version of Geant4. Here, for simplicity, we use an uniform + // energy transition for all types of hadrons and regarless of the Geant4 version; + // moreover, for "FTFP_INCLXX" we use a different energy transition range + // between FTFP and INCL than in the real physics list. + if ( fPhysicsCase == "FTFP_BERT_ATL" || + fPhysicsCase == "FTFP_BERT" || + fPhysicsCase == "FTFP_INCLXX" || + fPhysicsCase == "QGSP_BERT" || + fPhysicsCase == "QGSP_BIC" ) { + const G4double ftfpMinE = 3.0*CLHEP::GeV; + const G4double bertMaxE = 6.0*CLHEP::GeV; + const G4double ftfpMinE_ATL = 9.0*CLHEP::GeV; + const G4double bertMaxE_ATL = 12.0*CLHEP::GeV; + const G4double ftfpMaxE = 25.0*CLHEP::GeV; + const G4double qgspMinE = 12.0*CLHEP::GeV; + theFTFPmodel->SetMinEnergy( 0.0 ); + theIonBICmodel->SetMaxEnergy( bertMaxE ); + theFTFPmodel_halfConstrained->SetMinEnergy( ftfpMinE ); + if ( fPhysicsCase == "FTFP_BERT_ATL" ) { + theBERTmodel->SetMaxEnergy( bertMaxE_ATL ); + theFTFPmodel_constrained->SetMinEnergy( ftfpMinE_ATL ); + } else { + theBERTmodel->SetMaxEnergy( bertMaxE ); + theFTFPmodel_constrained->SetMinEnergy( ftfpMinE ); + } + if ( fPhysicsCase == "FTFP_INCLXX" ) { + theINCLmodel->SetMaxEnergy( bertMaxE ); + } + if ( fPhysicsCase == "QGSP_BERT" || + fPhysicsCase == "QGSP_BIC" ) { + theFTFPmodel_constrained->SetMaxEnergy( ftfpMaxE ); + theQGSPmodel->SetMinEnergy( qgspMinE ); + theBICmodel->SetMaxEnergy( bertMaxE ); + } + } + +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +HadronicGenerator::~HadronicGenerator() { + fPartTable->DeleteAllParticles(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4bool HadronicGenerator::IsApplicable( const G4String &nameProjectile, + const G4double projectileEnergy ) { + G4ParticleDefinition* projectileDefinition = fPartTable->FindParticle( nameProjectile ); + return IsApplicable( projectileDefinition, projectileEnergy ); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4bool HadronicGenerator::IsApplicable( G4ParticleDefinition* projectileDefinition, + const G4double projectileEnergy ) { + G4bool isApplicable = true; + // No restrictions for "physics list proxies" because they cover all hadron types and energies. + // For the individual models, instead, we need to consider their limitations. + if ( fPhysicsCase == "BERT" ) { + // We consider BERT model below 15 GeV and not for antibaryons + if ( projectileEnergy > 15.0*CLHEP::GeV || + projectileDefinition == G4AntiProton::Definition() || + projectileDefinition == G4AntiNeutron::Definition() || + projectileDefinition == G4AntiDeuteron::Definition() || + projectileDefinition == G4AntiTriton::Definition() || + projectileDefinition == G4AntiHe3::Definition() || + projectileDefinition == G4AntiAlpha::Definition() || + projectileDefinition == G4AntiLambda::Definition() || + projectileDefinition == G4AntiSigmaMinus::Definition() || + projectileDefinition == G4AntiSigmaPlus::Definition() || + projectileDefinition == G4AntiXiMinus::Definition() || + projectileDefinition == G4AntiXiZero::Definition() || + projectileDefinition == G4AntiOmegaMinus::Definition() ) { + isApplicable = false; + } + } else if ( fPhysicsCase == "QGSP" ) { + // We consider QGSP above 2 GeV and not for light ions or anti-ions + if ( projectileEnergy < 2.0*CLHEP::GeV || + projectileDefinition == G4Deuteron::Definition() || + projectileDefinition == G4Triton::Definition() || + projectileDefinition == G4He3::Definition() || + projectileDefinition == G4Alpha::Definition() || + projectileDefinition == G4AntiDeuteron::Definition() || + projectileDefinition == G4AntiTriton::Definition() || + projectileDefinition == G4AntiHe3::Definition() || + projectileDefinition == G4AntiAlpha::Definition() ) { + isApplicable = false; + } + } else if ( fPhysicsCase == "BIC" || fPhysicsCase == "INCL" ) { + // We consider BIC and INCL models only for pions and nucleons below 10 GeV + // (although in recent versions INCL is capable of handling more hadrons + // and up to higher energies) + if ( ( ( projectileDefinition != G4PionMinus::Definition() ) && + ( projectileDefinition != G4PionPlus::Definition() ) && + ( projectileDefinition != G4Proton::Definition() ) && + ( projectileDefinition != G4Neutron::Definition() ) ) || + ( projectileEnergy > 10.0*CLHEP::GeV ) ) { + isApplicable = false; + } + } else if ( fPhysicsCase == "IonBIC" ) { + // We consider IonBIC models only for deuteron, triton, He3, alpha + // with energies below 10 GeV / nucleon + if ( ! ( ( projectileDefinition == G4Deuteron::Definition() && + projectileEnergy < 2*10.0*CLHEP::GeV ) || + ( projectileDefinition == G4Triton::Definition() && + projectileEnergy < 3*10.0*CLHEP::GeV ) || + ( projectileDefinition == G4He3::Definition() && + projectileEnergy < 3*10.0*CLHEP::GeV ) || + ( projectileDefinition == G4Alpha::Definition() && + projectileEnergy < 4*10.0*CLHEP::GeV ) ) ) { + isApplicable = false; + } + } + return isApplicable; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4VParticleChange* HadronicGenerator:: +GenerateInteraction( const G4String &nameProjectile, const G4double projectileEnergy, + const G4ThreeVector &projectileDirection, G4Material* targetMaterial ) { + G4ParticleDefinition* projectileDefinition = fPartTable->FindParticle( nameProjectile ); + return GenerateInteraction( projectileDefinition, projectileEnergy, + projectileDirection, targetMaterial ); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4VParticleChange* HadronicGenerator:: +GenerateInteraction( G4ParticleDefinition* projectileDefinition, const G4double projectileEnergy, + const G4ThreeVector &projectileDirection, G4Material* targetMaterial ) { + // This is the most important method of the HadronicGenerator class: + // the method performs the specified hadronic interaction + // (by invoking the "PostStepDoIt" method of the corresponding hadronic process) + // and returns the final state, i.e. the secondaries produced by the collision. + // It is a relatively short method because the heavy load of setting up all + // possible hadronic processes - with their hadronic models, transition regions, + // and cross sections (the latter is needed for sampling the target nucleus from + // the target material) - was already done by the constructor of the class. + G4VParticleChange* aChange = nullptr; + + if ( projectileDefinition == nullptr ) { + G4cerr << "ERROR: projectileDefinition is NULL !" << G4endl; + return aChange; + } + + // Debugging print-out + //G4cout << "\t" << projectileDefinition->GetParticleName() + // << "\t" << projectileEnergy/CLHEP::GeV + // << " GeV \t" << projectileDirection + // << "\t" << ( targetMaterial ? targetMaterial->GetName() : "NULL" ); + + if ( ! IsApplicable( projectileDefinition, projectileEnergy ) ) { + //G4cout << " -> NOT applicable !" ; //<< G4endl; // Debugging print-out + return aChange; + } + //G4cout << G4endl; + + // Check Geant4 state (not strictly needed) + //if ( ! G4StateManager::GetStateManager()->SetNewState( G4State_PreInit ) ) { + // G4cerr << "ERROR: No possible to set G4State_PreInit !" << G4endl; + // return aChange; + //} + + // Geometry definition (not strictly needed) + //const G4double dimX = 1.0*mm; + //const G4double dimY = 1.0*mm; + //const G4double dimZ = 1.0*mm; + //G4Box* sFrame = new G4Box( "Box", dimX, dimY, dimZ ); + //G4LogicalVolume* lFrame = new G4LogicalVolume( sFrame, targetMaterial, "Box", 0, 0, 0 ); + //G4PVPlacement* pFrame = new G4PVPlacement( 0, G4ThreeVector(), "Box", lFrame, 0, false, 0 ); + //G4TransportationManager::GetTransportationManager()->SetWorldForTracking( pFrame ); + + // Projectile track & step + G4DynamicParticle dParticle( projectileDefinition, projectileDirection, projectileEnergy ); + const G4double aTime = 0.0; + const G4ThreeVector aPosition = G4ThreeVector( 0.0, 0.0, 0.0 ); + G4Track* gTrack = new G4Track( &dParticle, aTime, aPosition ); + G4TouchableHandle fpTouchable( new G4TouchableHistory ); // Not strictly needed + gTrack->SetTouchableHandle( fpTouchable ); // Not strictly needed + G4Step* step = new G4Step; + step->SetTrack( gTrack ); + gTrack->SetStep( step ); + G4StepPoint* aPoint = new G4StepPoint; + aPoint->SetPosition( aPosition ); + aPoint->SetMaterial( targetMaterial ); + step->SetPreStepPoint( aPoint ); + dParticle.SetKineticEnergy( projectileEnergy ); + gTrack->SetStep( step ); + gTrack->SetKineticEnergy( projectileEnergy ); + + // Change Geant4 state: from "PreInit" to "Idle" (not strictly needed) + //if ( ! G4StateManager::GetStateManager()->SetNewState( G4State_Idle ) ) { + // G4cerr << "ERROR: No possible to set G4State_Idle !" << G4endl; + // return aChange; + //} + + // Finally, the hadronic interaction + G4HadronicProcess* theProcess = nullptr; + auto mapIndex = fProcessMap.find( projectileDefinition ); + if ( mapIndex != fProcessMap.end() ) theProcess = mapIndex->second; + if ( theProcess ) aChange = theProcess->PostStepDoIt( *gTrack, *step ); + //************************************************** + //delete pFrame; + //delete lFrame; + //delete sFrame; + + return aChange; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/hadronic/History b/examples/extended/hadronic/History index 2d80c017af..7d4ebae938 100644 --- a/examples/extended/hadronic/History +++ b/examples/extended/hadronic/History @@ -14,6 +14,25 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +13-11-20 B. Morgan (exHadronic-V10-06-03) +- Enforce use of Serial RunManager for serial-only examples. + +10-11-20 B. Morgan (exHadronic-V10-06-02) +- Migration to G4RunManagerFactory for: + - FissionFragment + - Hadr00 + - Hadr01 + - Hadr02 + - Hadr08 + - Remainder use G4SteppingVerbose which requires further checks + for compatibility with G4RunManagerFactory. + +06-11-20 A. Ribon (exHadronic-V10-06-01) +- Created new test: Hadr09. + +03-11-20 B. Morgan (exHadronic-V10-06-00) +- Support same CMake version range as core Geant4 + 25-10-19 A. Ribon (exHadronic-V10-05-01) - Created new test: Hadr08. @@ -30,7 +49,7 @@ track of all tags. - Added newly created example NeutronSource 04-07-16 I. Hrivnacova (exHadronic-V10-02-01) -- Fixes for Doxygen documentation in Hadr03 - Hadr07 +- Fixes for Doxygen documentation in Hadr03 - Hadr07 03-04-16 M. Maire (exHadronic-V10-02-00) - Added newly created example Hadr07 @@ -66,4 +85,4 @@ track of all tags. - Updated CMakeLists.txt files: adding visualization, copying macros, install target and comment lines - Adding explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh -- Replaced tabulators with space characters +- Replaced tabulators with space characters diff --git a/examples/extended/hadronic/NeutronSource/.README.txt b/examples/extended/hadronic/NeutronSource/.README.txt index e44166573e..dbb238e423 100644 --- a/examples/extended/hadronic/NeutronSource/.README.txt +++ b/examples/extended/hadronic/NeutronSource/.README.txt @@ -57,12 +57,7 @@ In PhysicsList::ConstructProcess() we give an example of how to access hadronic models. Several hadronic physics options are controlled by environment variables. - To trigger them, an envHadronic.csh has been added in this example. - One must select the options wished, and do - -\verbatim -source envHadronic.[c]sh -\endverbatim + To select them, see NeutronSource.cc \section NeutronSource_s3 AN EVENT : THE PRIMARY GENERATOR @@ -151,5 +146,12 @@ Idle> type your commands .... Idle> exit \endverbatim + + Macros provided in this example: + - run1.mac: Am-Be system (default configuration) + + Macros to be run interactively: + - debug.mac: Am-Be + - vis.mac: To activate visualization */ diff --git a/examples/extended/hadronic/NeutronSource/CMakeLists.txt b/examples/extended/hadronic/NeutronSource/CMakeLists.txt index 61be5a66ff..7f64108be8 100644 --- a/examples/extended/hadronic/NeutronSource/CMakeLists.txt +++ b/examples/extended/hadronic/NeutronSource/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(NeutronSource) #---------------------------------------------------------------------------- diff --git a/examples/extended/hadronic/NeutronSource/History b/examples/extended/hadronic/NeutronSource/History index c42ffeea65..845a9ae97f 100644 --- a/examples/extended/hadronic/NeutronSource/History +++ b/examples/extended/hadronic/NeutronSource/History @@ -13,6 +13,15 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +25-10-20 mma (NeutronSource-V10-06-02) +- README : add macros descrption + +05-08-20 A. Ribon (NeutronSource-V10-06-01) +- envHadronic.(c)sh , NeutronSource.cc : removed deprecated HP + environmental variables and replaced them with corresponding + C++ calls in the main. + (These two shell-script files will be removed in G4 11.0.) + 13-05-20 mma (NeutronSource-V10-06-00) - GammaNuclearPhysics : add G4LowEGammaNuclearModel diff --git a/examples/extended/hadronic/NeutronSource/NeutronSource.cc b/examples/extended/hadronic/NeutronSource/NeutronSource.cc index 96c403e500..3667c54701 100644 --- a/examples/extended/hadronic/NeutronSource/NeutronSource.cc +++ b/examples/extended/hadronic/NeutronSource/NeutronSource.cc @@ -49,6 +49,8 @@ #include "G4UIExecutive.hh" #include "G4VisExecutive.hh" +#include "G4ParticleHPManager.hh" + //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) { @@ -80,6 +82,22 @@ int main(int argc,char** argv) { runManager->SetUserInitialization(phys); runManager->SetUserInitialization(new ActionInitialization(det)); + // Replaced HP environmental variables with C++ calls + G4ParticleHPManager::GetInstance()->SetSkipMissingIsotopes( false ); + G4ParticleHPManager::GetInstance()->SetDoNotAdjustFinalState( false ); + G4ParticleHPManager::GetInstance()->SetUseOnlyPhotoEvaporation( false ); + G4ParticleHPManager::GetInstance()->SetNeglectDoppler( false ); + G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( false ); + G4ParticleHPManager::GetInstance()->SetUseWendtFissionModel( false ); + G4ParticleHPManager::GetInstance()->SetUseNRESP71Model( false ); + //G4ParticleHPManager::GetInstance()->SetSkipMissingIsotopes( true ); + //G4ParticleHPManager::GetInstance()->SetDoNotAdjustFinalState( true ); + //G4ParticleHPManager::GetInstance()->SetUseOnlyPhotoEvaporation( true ); + //G4ParticleHPManager::GetInstance()->SetNeglectDoppler( true ); + //G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( true ); + //G4ParticleHPManager::GetInstance()->SetUseWendtFissionModel( true ); + //G4ParticleHPManager::GetInstance()->SetUseNRESP71Model( true ); + //initialize visualization G4VisManager* visManager = nullptr; diff --git a/examples/extended/hadronic/NeutronSource/NeutronSource.out b/examples/extended/hadronic/NeutronSource/NeutronSource.out index 6225740618..863a2afbbc 100644 --- a/examples/extended/hadronic/NeutronSource/NeutronSource.out +++ b/examples/extended/hadronic/NeutronSource/NeutronSource.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -68,55 +68,6 @@ @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic @@@ G4ParticleHPInelasticData instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6 # -/process/list - Transportation, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, neutronInelastic, nCapture, nFission - protonInelastic, pi+Inelastic, pi-Inelastic, kaon+Inelastic - kaon-Inelastic, kaon0LInelastic, kaon0SInelastic, lambdaInelastic -anti-lambdaInelastic, sigma-Inelastic,anti_sigma-Inelastic, sigma+Inelastic -anti_sigma+Inelastic, xi-Inelastic, anti_xi-Inelastic, xi0Inelastic - anti_xi0Inelastic, omega-Inelastic,anti_omega-Inelastic,anti_protonInelastic -anti_neutronInelastic,anti_deuteronInelastic,anti_tritonInelastic, anti_He3Inelastic -anti_alphaInelastic, ionElastic, dInelastic, tInelastic - He3Inelastic, alphaInelastic, ionInelastic, photonNuclear - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, ionIoni, nuclearStopping, msc - ionIoni, nuclearStopping, msc, ionIoni - nuclearStopping, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, eIoni, eBrem - annihil, msc, eIoni, eBrem - phot, compt, conv, msc - hIoni, msc, hIoni, msc - hIoni, msc, muIoni, muBrems - muPairProd, msc, muIoni, muBrems - muPairProd, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, Decay -RadioactiveDecayBase /process/inactivate hadElastic /run/physicsModified # @@ -128,7 +79,6 @@ RadioactiveDecayBase ##/analysis/h1/set 6 60 0. 12. MeV #neutrons # /run/printProgress 1000 -# /run/beamOn 10000 ====================================================================== ====== Radioactive Decay Physics Parameters ======= @@ -141,9 +91,22 @@ Max 2J for sampling of angular correlations 10 Atomic de-excitation enabled 1 Auger electron emission enabled 1 Auger cascade enabled 1 -Check EM cuts disabled for atomic de-excitation 0 +Check EM cuts disabled for atomic de-excitation 1 Use Bearden atomic level energies 0 ====================================================================== + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + UseOnlyPhotoEvaporation ? 0 + SkipMissingIsotopes ? 0 + NeglectDoppler ? 0 + DoNotAdjustFinalState ? 0 + ProduceFissionFragments ? 0 + UseWendtFissionModel ? 0 + UseNRESP71Model ? 0 +======================================================= + @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic ==================================================================== @@ -196,9 +159,7 @@ Use Bearden atomic level energies 0 Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: anti_He3Inelastic - Model: FTFP: 0 meV/n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV + Model: FTFP: 0 meV/n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV --------------------------------------------------- @@ -210,9 +171,7 @@ Use Bearden atomic level energies 0 Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: anti_alphaInelastic - Model: FTFP: 0 meV/n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV + Model: FTFP: 0 meV/n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV --------------------------------------------------- @@ -224,11 +183,21 @@ Use Bearden atomic level energies 0 Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: anti_deuteronInelastic - Model: FTFP: 0 meV/n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV + Model: FTFP: 0 meV/n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 meV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -238,9 +207,7 @@ Use Bearden atomic level energies 0 Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: anti_neutronInelastic - Model: FTFP: 0 meV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV + Model: FTFP: 0 meV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV --------------------------------------------------- @@ -252,9 +219,7 @@ Use Bearden atomic level energies 0 Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: anti_protonInelastic - Model: FTFP: 0 meV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV + Model: FTFP: 0 meV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV --------------------------------------------------- @@ -266,9 +231,7 @@ Use Bearden atomic level energies 0 Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV Process: anti_tritonInelastic - Model: FTFP: 0 meV/n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV + Model: FTFP: 0 meV/n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV --------------------------------------------------- @@ -325,10 +288,9 @@ Use Bearden atomic level energies 0 Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 meV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 meV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV --------------------------------------------------- @@ -407,10 +369,9 @@ Use Bearden atomic level energies 0 Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 meV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 meV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV --------------------------------------------------- @@ -449,7 +410,6 @@ Store e- internal conversion data 1 Electron internal conversion ID 0 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -496,207 +456,210 @@ Index : 2 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 10000 - User=40.730000s Real=41.838488s Sys=0.020000s + User=9.480000s Real=11.101290s Sys=0.000000s The run is 10000 Am241 of 0 meV within BeO (D = 3 cm L = 6 cm ) Process calls frequency : - RadioactiveDecayBase= 235176 Transportation= 188370 alphaInelastic= 17 - annihil= 1 compt= 34549 conv= 1 - eIoni= 617954 ionIoni= 198783 msc= 13983 - neutronInelastic= 1 phot= 49267 + RadioactiveDecayBase= 234968 Transportation= 190593 alphaInelastic= 13 + annihil= 1 compt= 35785 conv= 1 + eIoni=1276609 ionIoni= 198777 msc= 12689 + neutronInelastic= 1 phot= 60029 List of generated particles: - Ac225: 9998 Emean = 161.33 meV ( 0.43656 meV --> 1.1419 eV ) - Ac225[120.800]: 2 Emean = 533.68 meV ( 488.92 meV --> 578.44 meV) - Ac225[155.650]: 2 Emean = 276.36 meV ( 141.85 meV --> 410.86 meV) - Ac225[40.090]: 6947 Emean = 374.19 meV ( 2.1828 meV --> 992.24 meV) - At217: 9989 Emean = 116.36 keV ( 104.85 keV --> 117.05 keV) - At217[100.250]: 165 Emean = 114.52 keV ( 109.12 keV --> 115.23 keV) - At217[218.120]: 1564 Emean = 113 keV ( 106.32 keV --> 113.09 keV) - At217[272.070]: 23 Emean = 111.58 keV ( 110.18 keV --> 112.11 keV) - At217[368.230]: 51 Emean = 110.14 keV ( 106.33 keV --> 110.37 keV) + Ac225: 9999 Emean = 162.92 meV ( 3.5216 meV --> 1.1268 eV ) + Ac225[40.090]: 7016 Emean = 376.25 meV ( 0.37835 meV --> 973.58 meV) + At217: 9991 Emean = 116.38 keV ( 105.89 keV --> 117.05 keV) + At217[100.250]: 148 Emean = 114.57 keV ( 106.48 keV --> 115.23 keV) + At217[218.120]: 1533 Emean = 112.98 keV ( 105.83 keV --> 113.09 keV) + At217[272.070]: 23 Emean = 111.65 keV ( 110.22 keV --> 112.11 keV) + At217[368.230]: 51 Emean = 109.98 keV ( 106.14 keV --> 110.37 keV) At217[382.340]: 5 Emean = 110.11 keV ( 110.11 keV --> 110.11 keV) - At217[410.640]: 18 Emean = 109.6 keV ( 109.6 keV --> 109.6 keV) - At217[424.350]: 3 Emean = 109.35 keV ( 109.35 keV --> 109.35 keV) - At217[577.000]: 3 Emean = 106.58 keV ( 106.58 keV --> 106.58 keV) - At217[664.400]: 1 Emean = 104.99 keV ( 104.99 keV --> 104.99 keV) - Be9: 2 Emean = 2.2262 MeV ( 1.5283 MeV --> 2.924 MeV) - Bi209: 10000 Emean = 1.2199 eV ( 2.9395 meV --> 2.7255 eV ) - Bi213: 9989 Emean = 132.94 keV ( 122.18 keV --> 132.95 keV) - Bi213[257.870]: 4 Emean = 128.18 keV ( 128.18 keV --> 128.18 keV) - Bi213[593.180]: 1 Emean = 121.99 keV ( 121.99 keV --> 121.99 keV) - C12: 8 Emean = 1.6088 MeV ( 237.18 keV --> 3.25 MeV) - Fe56: 1 Emean = 229.07 keV ( 229.07 keV --> 229.07 keV) - Fr221: 10000 Emean = 104.85 keV ( 18.19 meV --> 105.65 keV) - Fr221[100.890]: 198 Emean = 102.94 keV ( 95.812 keV --> 103.85 keV) - Fr221[108.410]: 463 Emean = 102.86 keV ( 84.285 meV --> 103.72 keV) - Fr221[145.910]: 11 Emean = 101.03 keV ( 95.452 keV --> 103.05 keV) - Fr221[150.070]: 134 Emean = 102.91 keV ( 100.64 keV --> 102.97 keV) - Fr221[195.770]: 465 Emean = 102.1 keV ( 98.493 keV --> 102.16 keV) - Fr221[224.640]: 113 Emean = 101.57 keV ( 98.564 keV --> 101.65 keV) - Fr221[234.510]: 6 Emean = 101.47 keV ( 101.47 keV --> 101.47 keV) - Fr221[253.560]: 106 Emean = 101.13 keV ( 101.13 keV --> 101.13 keV) - Fr221[26.000]: 305 Emean = 102.96 keV ( 95.506 keV --> 105.18 keV) - Fr221[272.600]: 6 Emean = 100.79 keV ( 100.79 keV --> 100.79 keV) - Fr221[279.210]: 12 Emean = 100.19 keV ( 98.647 keV --> 100.67 keV) - Fr221[288.080]: 7 Emean = 99.075 keV ( 98.456 keV --> 100.52 keV) - Fr221[294.660]: 3 Emean = 66.933 keV ( 2.7063 eV --> 100.4 keV) - Fr221[36.640]: 2622 Emean = 104.45 keV ( 95.434 keV --> 105 keV) - Fr221[38.540]: 1031 Emean = 104.44 keV ( 98.264 keV --> 104.96 keV) - Fr221[393.350]: 13 Emean = 98.641 keV ( 98.641 keV --> 98.641 keV) + At217[410.640]: 14 Emean = 109.6 keV ( 109.6 keV --> 109.6 keV) + At217[424.350]: 4 Emean = 109.35 keV ( 109.35 keV --> 109.35 keV) + At217[537.500]: 1 Emean = 107.3 keV ( 107.3 keV --> 107.3 keV) + At217[568.500]: 1 Emean = 106.73 keV ( 106.73 keV --> 106.73 keV) + At217[577.000]: 6 Emean = 106.58 keV ( 106.58 keV --> 106.58 keV) + Be9: 1 Emean = 1.2601 MeV ( 1.2601 MeV --> 1.2601 MeV) + Bi209: 10000 Emean = 1.2274 eV ( 4.482 meV --> 2.7334 eV ) + Bi213: 9991 Emean = 132.94 keV ( 112.64 keV --> 132.95 keV) + Bi213[1050.000]: 1 Emean = 113.55 keV ( 113.55 keV --> 113.55 keV) + Bi213[257.870]: 7 Emean = 127.24 keV ( 121.63 keV --> 128.18 keV) + Bi213[593.180]: 3 Emean = 121.99 keV ( 121.99 keV --> 121.99 keV) + Bi213[758.900]: 1 Emean = 113.26 keV ( 113.26 keV --> 113.26 keV) + C12: 8 Emean = 1.1498 MeV ( 192.86 keV --> 2.4915 MeV) + Fr221: 10000 Emean = 104.86 keV ( 47.352 meV --> 105.65 keV) + Fr221[100.890]: 183 Emean = 102.67 keV ( 94.115 keV --> 103.85 keV) + Fr221[108.410]: 442 Emean = 102.94 keV ( 84.285 meV --> 103.72 keV) + Fr221[145.910]: 9 Emean = 100.26 keV ( 92.232 keV --> 103.05 keV) + Fr221[150.070]: 150 Emean = 102.89 keV ( 100.29 keV --> 102.97 keV) + Fr221[195.770]: 433 Emean = 102.13 keV ( 95.327 keV --> 102.16 keV) + Fr221[224.640]: 119 Emean = 101.47 keV ( 98.479 keV --> 101.65 keV) + Fr221[234.510]: 2 Emean = 101.47 keV ( 101.47 keV --> 101.47 keV) + Fr221[253.560]: 118 Emean = 101.11 keV ( 98.603 keV --> 101.13 keV) + Fr221[26.000]: 307 Emean = 102.82 keV ( 94.558 keV --> 105.18 keV) + Fr221[272.600]: 2 Emean = 100.79 keV ( 100.79 keV --> 100.79 keV) + Fr221[279.210]: 12 Emean = 100.51 keV ( 98.682 keV --> 100.67 keV) + Fr221[288.080]: 9 Emean = 99.16 keV ( 98.336 keV --> 100.52 keV) + Fr221[294.660]: 3 Emean = 66.933 keV ( 1.3718 eV --> 100.4 keV) + Fr221[36.640]: 2630 Emean = 104.38 keV ( 148.63 meV --> 105 keV) + Fr221[38.540]: 1080 Emean = 104.45 keV ( 98.523 keV --> 104.96 keV) + Fr221[393.350]: 11 Emean = 98.641 keV ( 98.641 keV --> 98.641 keV) Fr221[400.750]: 8 Emean = 98.509 keV ( 98.509 keV --> 98.509 keV) Fr221[517.810]: 6 Emean = 96.424 keV ( 96.424 keV --> 96.424 keV) - Fr221[552.050]: 25 Emean = 95.814 keV ( 95.814 keV --> 95.814 keV) + Fr221[552.050]: 18 Emean = 95.814 keV ( 95.814 keV --> 95.814 keV) Fr221[570.810]: 2 Emean = 95.48 keV ( 95.48 keV --> 95.48 keV) Fr221[602.200]: 1 Emean = 94.921 keV ( 94.921 keV --> 94.921 keV) - Fr221[630.710]: 1 Emean = 94.413 keV ( 94.413 keV --> 94.413 keV) - Fr221[99.620]: 911 Emean = 103.55 keV ( 94.761 keV --> 103.87 keV) - Fr221[99.850]: 167 Emean = 103.52 keV ( 98.453 keV --> 103.87 keV) - Ne20: 2 Emean = 897.4 keV ( 839.45 keV --> 955.34 keV) - Np237: 10000 Emean = 92.568 keV ( 87.705 keV --> 93.678 keV) - Np237[102.959]: 1453 Emean = 91.876 keV ( 89.929 keV --> 91.966 keV) - Np237[129.990]: 1 Emean = 91.516 keV ( 91.516 keV --> 91.516 keV) - Np237[158.497]: 178 Emean = 91.042 keV ( 91.042 keV --> 91.042 keV) - Np237[225.957]: 1 Emean = 89.92 keV ( 89.92 keV --> 89.92 keV) - Np237[33.196]: 2242 Emean = 92.571 keV ( 90.043 keV --> 93.126 keV) - Np237[359.700]: 1 Emean = 87.697 keV ( 87.697 keV --> 87.697 keV) - Np237[370.928]: 1 Emean = 87.51 keV ( 87.51 keV --> 87.51 keV) - Np237[59.541]: 9929 Emean = 92.562 keV ( 87.874 keV --> 92.688 keV) - Np237[75.899]: 1 Emean = 92.416 keV ( 92.416 keV --> 92.416 keV) - Pa233: 10000 Emean = 81.95 keV ( 77.449 keV --> 83.776 keV) - Pa233[103.635]: 3439 Emean = 81.877 keV ( 77.28 keV --> 82.024 keV) - Pa233[109.070]: 938 Emean = 81.846 keV ( 77.31 keV --> 81.932 keV) - Pa233[133.200]: 2 Emean = 81.524 keV ( 81.524 keV --> 81.524 keV) - Pa233[163.510]: 123 Emean = 80.992 keV ( 78.587 keV --> 81.011 keV) - Pa233[169.166]: 119 Emean = 80.916 keV ( 80.916 keV --> 80.916 keV) - Pa233[179.000]: 73 Emean = 80.749 keV ( 80.749 keV --> 80.749 keV) - Pa233[201.634]: 119 Emean = 79.739 keV ( 78.593 keV --> 79.916 keV) - Pa233[212.341]: 313 Emean = 80.161 keV ( 77.389 keV --> 80.186 keV) - Pa233[218.000]: 50 Emean = 80.09 keV ( 80.09 keV --> 80.09 keV) - Pa233[237.890]: 649 Emean = 79.724 keV ( 78.487 keV --> 79.754 keV) - Pa233[257.183]: 2 Emean = 79.428 keV ( 79.428 keV --> 79.428 keV) - Pa233[279.720]: 31 Emean = 79.047 keV ( 79.047 keV --> 79.047 keV) - Pa233[283.000]: 11 Emean = 78.991 keV ( 78.991 keV --> 78.991 keV) + Fr221[630.710]: 4 Emean = 94.413 keV ( 94.413 keV --> 94.413 keV) + Fr221[749.160]: 1 Emean = 92.303 keV ( 92.303 keV --> 92.303 keV) + Fr221[824.200]: 1 Emean = 90.967 keV ( 90.967 keV --> 90.967 keV) + Fr221[99.620]: 913 Emean = 103.64 keV ( 92.388 keV --> 103.87 keV) + Fr221[99.850]: 158 Emean = 103.47 keV ( 96.549 keV --> 103.87 keV) + Np237: 10000 Emean = 92.568 keV ( 86.705 keV --> 93.678 keV) + Np237[102.959]: 1469 Emean = 91.871 keV ( 86.836 keV --> 91.966 keV) + Np237[158.497]: 168 Emean = 91.028 keV ( 88.733 keV --> 91.042 keV) + Np237[225.957]: 2 Emean = 88.458 keV ( 86.996 keV --> 89.92 keV) + Np237[305.050]: 1 Emean = 88.605 keV ( 88.605 keV --> 88.605 keV) + Np237[33.196]: 2163 Emean = 92.556 keV ( 86.752 keV --> 93.126 keV) + Np237[395.530]: 1 Emean = 87.101 keV ( 87.101 keV --> 87.101 keV) + Np237[59.541]: 9942 Emean = 92.563 keV ( 86.732 keV --> 92.688 keV) + Np237[75.899]: 4 Emean = 92.416 keV ( 92.416 keV --> 92.416 keV) + Pa233: 10000 Emean = 81.95 keV ( 77.276 keV --> 83.776 keV) + Pa233[103.635]: 3357 Emean = 81.895 keV ( 77.175 keV --> 82.024 keV) + Pa233[109.070]: 1023 Emean = 81.885 keV ( 78.494 keV --> 81.932 keV) + Pa233[133.200]: 1 Emean = 81.524 keV ( 81.524 keV --> 81.524 keV) + Pa233[163.510]: 119 Emean = 81.011 keV ( 81.011 keV --> 81.011 keV) + Pa233[169.166]: 107 Emean = 80.916 keV ( 80.916 keV --> 80.916 keV) + Pa233[179.000]: 51 Emean = 80.749 keV ( 80.749 keV --> 80.749 keV) + Pa233[201.634]: 103 Emean = 79.719 keV ( 78.597 keV --> 79.881 keV) + Pa233[212.341]: 331 Emean = 80.186 keV ( 80.186 keV --> 80.186 keV) + Pa233[218.000]: 57 Emean = 80.09 keV ( 80.09 keV --> 80.09 keV) + Pa233[237.890]: 646 Emean = 79.726 keV ( 78.543 keV --> 79.754 keV) + Pa233[257.183]: 1 Emean = 79.428 keV ( 79.428 keV --> 79.428 keV) + Pa233[279.720]: 36 Emean = 79.047 keV ( 79.047 keV --> 79.047 keV) + Pa233[283.000]: 9 Emean = 78.991 keV ( 78.991 keV --> 78.991 keV) Pa233[300.500]: 37 Emean = 78.695 keV ( 78.695 keV --> 78.695 keV) - Pa233[303.590]: 9 Emean = 78.643 keV ( 78.643 keV --> 78.643 keV) - Pa233[365.840]: 6 Emean = 77.591 keV ( 77.591 keV --> 77.591 keV) - Pa233[57.100]: 7458 Emean = 81.926 keV ( 77.312 keV --> 82.81 keV) - Pa233[6.671]: 335 Emean = 81.697 keV ( 79.431 keV --> 83.663 keV) - Pa233[70.544]: 278 Emean = 81.813 keV ( 78.503 keV --> 82.583 keV) - Pa233[86.468]: 5467 Emean = 81.954 keV ( 77.455 keV --> 82.314 keV) - Pa233[94.646]: 654 Emean = 80.013 keV ( 77.412 keV --> 81.12 keV) - Pb209: 10000 Emean = 157.33 keV ( 5.2021 eV --> 160.59 keV) - Pb209[1423.000]: 1 Emean = 6.8173 eV ( 6.8173 eV --> 6.8173 eV ) - Pb209[1567.090]: 202 Emean = 644.15 meV ( 555.82 meV --> 8.2859 eV ) - Pb209[2032.220]: 200 Emean = 76.167 meV ( 35.303 meV --> 4.0064 eV ) - Pb209[2149.430]: 197 Emean = 6.8889 eV ( 463.3 meV --> 12.823 eV ) - Pb209[2315.900]: 2 Emean = 3.3911 eV ( 1.5778 eV --> 5.2045 eV ) - Pb209[2738.000]: 1 Emean = 70.81 meV ( 70.81 meV --> 70.81 meV) - Pb209[2904.000]: 1 Emean = 3.2479 eV ( 3.2479 eV --> 3.2479 eV ) - Pb209[3052.000]: 1 Emean = 0.81491 meV ( 0.81491 meV --> 0.81491 meV) - Pb209[3069.920]: 1 Emean = 1.6126 eV ( 1.6126 eV --> 1.6126 eV ) - Pb209[3363.000]: 1 Emean = 890.02 meV ( 890.02 meV --> 890.02 meV) - Pb209[3389.090]: 1 Emean = 318.63 meV ( 318.63 meV --> 318.63 meV) - Po213: 9797 Emean = 166.77 eV ( 9.0804 meV --> 145.62 keV) - Po213[1003.553]: 2 Emean = 278.49 meV ( 109.49 meV --> 447.5 meV) - Po213[1045.670]: 1 Emean = 245.55 meV ( 245.55 meV --> 245.55 meV) - Po213[1100.167]: 69 Emean = 420.95 meV ( 83.033 meV --> 972.91 meV) - Po213[1119.291]: 6 Emean = 540.49 meV ( 255.5 meV --> 689.27 meV) - Po213[292.800]: 61 Emean = 2.1713 eV ( 54.948 meV --> 5.8588 eV ) - Po213[440.450]: 3088 Emean = 2.409 eV ( 23.778 meV --> 4.9061 eV ) - Ra221: 11 Emean = 343.78 meV ( 170.64 meV --> 602.27 meV) - Ra225: 10000 Emean = 96.659 keV ( 16.997 meV --> 342.88 keV) - Ra225[100.500]: 2871 Emean = 96.921 keV ( 15.396 meV --> 340.18 keV) - Ra225[111.600]: 2256 Emean = 96.875 keV ( 51.572 meV --> 340.27 keV) - Ra225[120.360]: 26 Emean = 109.78 keV ( 28.122 keV --> 320.9 keV) - Ra225[149.960]: 2470 Emean = 96.736 keV ( 27.881 meV --> 336.52 keV) - Ra225[179.750]: 1628 Emean = 95.798 keV ( 94.18 meV --> 337.95 keV) - Ra225[203.500]: 4 Emean = 86.805 keV ( 86.805 keV --> 86.805 keV) - Ra225[215.800]: 5 Emean = 86.59 keV ( 86.59 keV --> 86.59 keV) - Ra225[220.550]: 92 Emean = 93.704 keV ( 34.902 keV --> 292.68 keV) - Ra225[225.200]: 4 Emean = 68.111 keV ( 21.377 keV --> 84.716 keV) - Ra225[226.900]: 18 Emean = 110.07 keV ( 81.747 keV --> 326.26 keV) - Ra225[236.250]: 5982 Emean = 95.871 keV ( 30.705 meV --> 336.4 keV) - Ra225[243.560]: 559 Emean = 98.433 keV ( 4.3921 keV --> 324.79 keV) - Ra225[248.500]: 30 Emean = 104.59 keV ( 86.018 keV --> 295.47 keV) - Ra225[25.410]: 8135 Emean = 96.694 keV ( 30.937 meV --> 342.74 keV) - Ra225[267.920]: 907 Emean = 94.511 keV ( 903.09 eV --> 334.42 keV) - Ra225[272.150]: 56 Emean = 106.15 keV ( 64.304 keV --> 320.19 keV) - Ra225[284.490]: 140 Emean = 98.633 keV ( 25.707 keV --> 316.16 keV) - Ra225[31.560]: 503 Emean = 96.815 keV ( 55.705 meV --> 337.94 keV) - Ra225[321.760]: 105 Emean = 100.05 keV ( 11.08 keV --> 320.11 keV) - Ra225[328.000]: 3 Emean = 63.532 keV ( 21.344 keV --> 84.627 keV) - Ra225[335.000]: 1 Emean = 84.504 keV ( 84.504 keV --> 84.504 keV) - Ra225[390.000]: 15 Emean = 96.24 keV ( 81.631 keV --> 205.49 keV) - Ra225[394.720]: 17 Emean = 90.001 keV ( 83.459 keV --> 194.66 keV) - Ra225[42.770]: 3922 Emean = 96.14 keV ( 7.9744 meV --> 336.49 keV) - Ra225[478.400]: 3 Emean = 81.995 keV ( 81.995 keV --> 81.995 keV) - Ra225[487.000]: 4 Emean = 81.845 keV ( 81.845 keV --> 81.845 keV) - Ra225[55.160]: 61 Emean = 103.26 keV ( 28.215 keV --> 320.65 keV) - Ra225[603.000]: 2 Emean = 90.17 keV ( 79.815 keV --> 100.52 keV) - Ra225[69.360]: 391 Emean = 96.883 keV ( 29.366 meV --> 337.14 keV) - Rn217: 11 Emean = 121.97 keV ( 121.58 keV --> 122.97 keV) - Rn217[149.180]: 7 Emean = 122.01 keV ( 122.01 keV --> 122.01 keV) - Rn217[174.300]: 1 Emean = 121.55 keV ( 121.55 keV --> 121.55 keV) - Rn217[184.000]: 2 Emean = 121.37 keV ( 121.37 keV --> 121.37 keV) - Rn217[93.020]: 1 Emean = 123.03 keV ( 123.03 keV --> 123.03 keV) - Rn221: 2 Emean = 90.714 keV ( 90.714 keV --> 90.714 keV) - Th229: 8780 Emean = 84.326 keV ( 78.888 keV --> 84.358 keV) - Th229[0.008]: 1220 Emean = 83.503 keV ( 78.387 keV --> 83.959 keV) - Th229[125.439]: 9 Emean = 81.704 keV ( 80.891 keV --> 82.201 keV) - Th229[146.357]: 1 Emean = 81.441 keV ( 81.441 keV --> 81.441 keV) - Th229[148.173]: 1 Emean = 80.06 keV ( 80.06 keV --> 80.06 keV) - Th229[163.254]: 7 Emean = 81.551 keV ( 81.551 keV --> 81.551 keV) - Th229[173.484]: 1 Emean = 81.375 keV ( 81.375 keV --> 81.375 keV) - Th229[195.719]: 3 Emean = 80.992 keV ( 80.992 keV --> 80.992 keV) - Th229[212.382]: 1 Emean = 80.706 keV ( 80.706 keV --> 80.706 keV) + Pa233[303.590]: 4 Emean = 78.643 keV ( 78.643 keV --> 78.643 keV) + Pa233[365.840]: 4 Emean = 77.591 keV ( 77.591 keV --> 77.591 keV) + Pa233[57.100]: 7380 Emean = 81.916 keV ( 77.258 keV --> 82.81 keV) + Pa233[6.671]: 317 Emean = 81.681 keV ( 78.419 keV --> 83.663 keV) + Pa233[70.544]: 265 Emean = 81.863 keV ( 78.597 keV --> 82.583 keV) + Pa233[86.468]: 5624 Emean = 81.937 keV ( 78.415 keV --> 82.314 keV) + Pa233[94.646]: 717 Emean = 80.016 keV ( 78.572 keV --> 81.13 keV) + Pb209: 10000 Emean = 157.13 keV ( 5.2021 eV --> 160.59 keV) + Pb209[1423.000]: 4 Emean = 6.8173 eV ( 6.8173 eV --> 6.8173 eV ) + Pb209[1567.090]: 211 Emean = 601.02 meV ( 555.82 meV --> 3.5222 eV ) + Pb209[2032.220]: 209 Emean = 55.102 meV ( 35.303 meV --> 340.14 meV) + Pb209[2149.430]: 208 Emean = 7.4452 eV ( 333.38 meV --> 12.997 eV ) + Pb209[2315.900]: 1 Emean = 10.779 eV ( 10.779 eV --> 10.779 eV ) + Pb209[2738.000]: 2 Emean = 70.81 meV ( 70.81 meV --> 70.81 meV) + Pb209[2904.000]: 2 Emean = 2.4778 eV ( 2.4179 eV --> 2.5377 eV ) + Pb209[3052.000]: 4 Emean = 0.81491 meV ( 0.81491 meV --> 0.81491 meV) + Pb209[3069.920]: 4 Emean = 2.1772 eV ( 116.15 meV --> 4.097 eV ) + Pb209[3389.090]: 1 Emean = 1.5249 eV ( 1.5249 eV --> 1.5249 eV ) + Pb209[778.800]: 1 Emean = 145.92 keV ( 145.92 keV --> 145.92 keV) + Po213: 9785 Emean = 137.24 eV ( 26.63 meV --> 145.62 keV) + Po213[1003.553]: 8 Emean = 528.27 meV ( 156.43 meV --> 1.117 eV ) + Po213[1045.670]: 3 Emean = 615.11 meV ( 291.33 meV --> 948.29 meV) + Po213[1100.167]: 70 Emean = 379.4 meV ( 61.555 meV --> 907.25 meV) + Po213[1119.291]: 6 Emean = 433.91 meV ( 117.38 meV --> 927.36 meV) + Po213[292.800]: 78 Emean = 2.185 eV ( 54.948 meV --> 5.6422 eV ) + Po213[440.450]: 3058 Emean = 2.4247 eV ( 12.515 meV --> 4.9019 eV ) + Po213[600.730]: 1 Emean = 893.6 meV ( 893.6 meV --> 893.6 meV) + Po213[867.980]: 1 Emean = 1.1183 eV ( 1.1183 eV --> 1.1183 eV ) + Ra221: 9 Emean = 335.41 meV ( 39.261 meV --> 630.91 meV) + Ra225: 10000 Emean = 96.712 keV ( 16.997 meV --> 338.53 keV) + Ra225[100.500]: 2822 Emean = 96.92 keV ( 15.396 meV --> 338.98 keV) + Ra225[111.600]: 2217 Emean = 96.354 keV ( 51.572 meV --> 336.16 keV) + Ra225[120.360]: 32 Emean = 90.956 keV ( 14.096 keV --> 315.09 keV) + Ra225[149.960]: 2404 Emean = 95.943 keV ( 35.478 meV --> 334.76 keV) + Ra225[179.750]: 1671 Emean = 96.803 keV ( 421.17 eV --> 337.22 keV) + Ra225[203.500]: 3 Emean = 86.805 keV ( 86.805 keV --> 86.805 keV) + Ra225[215.800]: 1 Emean = 86.59 keV ( 86.59 keV --> 86.59 keV) + Ra225[220.550]: 79 Emean = 108.32 keV ( 30.514 keV --> 323.92 keV) + Ra225[225.200]: 3 Emean = 83.034 keV ( 79.862 keV --> 84.623 keV) + Ra225[226.900]: 19 Emean = 87.121 keV ( 50.231 keV --> 175.22 keV) + Ra225[236.250]: 5989 Emean = 95.765 keV ( 563.47 eV --> 335.84 keV) + Ra225[243.560]: 540 Emean = 98.523 keV ( 2.9721 keV --> 335.86 keV) + Ra225[248.500]: 22 Emean = 91.537 keV ( 86.018 keV --> 207.43 keV) + Ra225[25.410]: 8057 Emean = 96.511 keV ( 30.937 meV --> 338.67 keV) + Ra225[267.920]: 898 Emean = 95.498 keV ( 1.3699 keV --> 333.26 keV) + Ra225[272.150]: 41 Emean = 90.157 keV ( 6.0311 keV --> 311.56 keV) + Ra225[284.490]: 126 Emean = 95.313 keV ( 577.21 eV --> 315.22 keV) + Ra225[293.000]: 2 Emean = 83.469 keV ( 83.467 keV --> 83.47 keV) + Ra225[31.560]: 506 Emean = 97.977 keV ( 9.7645 keV --> 331.37 keV) + Ra225[321.760]: 104 Emean = 96.256 keV ( 6.0268 keV --> 311.28 keV) + Ra225[328.000]: 7 Emean = 83.264 keV ( 79.844 keV --> 84.627 keV) + Ra225[390.000]: 15 Emean = 87.409 keV ( 50.137 keV --> 174.96 keV) + Ra225[394.720]: 18 Emean = 103.41 keV ( 83.459 keV --> 271.49 keV) + Ra225[42.770]: 3985 Emean = 96.312 keV ( 7.9744 meV --> 337.06 keV) + Ra225[478.400]: 2 Emean = 81.995 keV ( 81.995 keV --> 81.995 keV) + Ra225[487.000]: 1 Emean = 81.845 keV ( 81.845 keV --> 81.845 keV) + Ra225[55.160]: 69 Emean = 89.741 keV ( 14.079 keV --> 327.19 keV) + Ra225[603.000]: 2 Emean = 79.815 keV ( 79.815 keV --> 79.815 keV) + Ra225[609.000]: 2 Emean = 79.71 keV ( 79.71 keV --> 79.71 keV) + Ra225[69.360]: 382 Emean = 96.735 keV ( 4.1939 keV --> 323.89 keV) + Rn217: 9 Emean = 123.09 keV ( 121.85 keV --> 124.71 keV) + Rn217[149.180]: 3 Emean = 122.01 keV ( 122.01 keV --> 122.01 keV) + Rn217[184.000]: 1 Emean = 121.37 keV ( 121.37 keV --> 121.37 keV) + Rn217[93.020]: 3 Emean = 122.72 keV ( 122.11 keV --> 123.03 keV) + Rn221: 1 Emean = 90.201 keV ( 90.201 keV --> 90.201 keV) + Rn221[30.000]: 1 Emean = 90.179 keV ( 90.179 keV --> 90.179 keV) + Th229: 8777 Emean = 84.321 keV ( 77.469 keV --> 84.358 keV) + Th229[0.008]: 1223 Emean = 83.518 keV ( 78.654 keV --> 83.962 keV) + Th229[125.439]: 9 Emean = 82.057 keV ( 81.445 keV --> 82.201 keV) + Th229[146.357]: 4 Emean = 81.841 keV ( 81.841 keV --> 81.841 keV) + Th229[163.254]: 4 Emean = 81.551 keV ( 81.551 keV --> 81.551 keV) + Th229[189.990]: 2 Emean = 81.091 keV ( 81.091 keV --> 81.091 keV) Th229[217.160]: 1 Emean = 80.624 keV ( 80.624 keV --> 80.624 keV) - Th229[237.366]: 1 Emean = 80.276 keV ( 80.276 keV --> 80.276 keV) - Th229[29.193]: 1463 Emean = 83.521 keV ( 78.373 keV --> 83.856 keV) - Th229[317.173]: 1 Emean = 78.904 keV ( 78.904 keV --> 78.904 keV) - Th229[320.548]: 2 Emean = 78.846 keV ( 78.846 keV --> 78.846 keV) - Th229[42.435]: 1416 Emean = 83.562 keV ( 80.711 keV --> 83.628 keV) - Th229[71.826]: 70 Emean = 82.561 keV ( 78.41 keV --> 83.123 keV) - Th229[75.100]: 2 Emean = 83.067 keV ( 83.067 keV --> 83.067 keV) - Th229[97.136]: 153 Emean = 82.672 keV ( 81.365 keV --> 82.688 keV) - Tl209: 203 Emean = 112.09 keV ( 106.16 keV --> 112.51 keV) - Tl209[323.810]: 14 Emean = 106.41 keV ( 106.41 keV --> 106.41 keV) - U233: 10000 Emean = 358.99 meV ( 3.7544 meV --> 2.0323 eV ) - U233[155.230]: 51 Emean = 108.12 meV ( 90.833 meV --> 490.87 meV) - U233[298.810]: 2271 Emean = 96.638 meV ( 3.9872 meV --> 551.69 meV) - U233[301.940]: 20 Emean = 3.4925 meV ( 0.7858 meV --> 6.1991 meV) - U233[311.904]: 5234 Emean = 169.09 meV ( 1.8626 meV --> 740.84 meV) - U233[320.830]: 30 Emean = 67.125 meV ( 0.90222 meV --> 228.84 meV) - U233[340.477]: 2635 Emean = 224.33 meV ( 0.98953 meV --> 611.47 meV) - U233[353.790]: 2592 Emean = 117.42 meV ( 98.4 meV --> 150.93 meV) - U233[398.496]: 1558 Emean = 152.72 meV ( 1.1059 meV --> 449.54 meV) - U233[40.350]: 1472 Emean = 268.32 meV ( 6.17 meV --> 908.77 meV) - U233[415.758]: 2606 Emean = 133.74 meV ( 0.20373 meV --> 381.17 meV) - U233[92.160]: 167 Emean = 153.71 meV ( 9.1677 meV --> 713.28 meV) - alpha: 80002 Emean = 5.9274 MeV ( 4.4847 MeV --> 8.3755 MeV) - anti_nu_e: 40000 Emean = 425.53 keV ( 6.6581 keV --> 1.8029 MeV) - e+: 1 Emean = 30.281 keV ( 30.281 keV --> 30.281 keV) - e-: 617988 Emean = 23.433 keV ( 4.2958 eV --> 3.5873 MeV) - gamma: 64066 Emean = 95.882 keV ( 215.69 eV --> 8.7823 MeV) - neutron: 9 Emean = 4.5308 MeV ( 2.3408 MeV --> 9.0727 MeV) + Th229[287.895]: 1 Emean = 78.756 keV ( 78.756 keV --> 78.756 keV) + Th229[288.491]: 1 Emean = 77.668 keV ( 77.668 keV --> 77.668 keV) + Th229[29.193]: 1473 Emean = 83.523 keV ( 78.673 keV --> 83.856 keV) + Th229[317.173]: 3 Emean = 78.904 keV ( 78.904 keV --> 78.904 keV) + Th229[320.548]: 1 Emean = 78.846 keV ( 78.846 keV --> 78.846 keV) + Th229[374.815]: 1 Emean = 77.913 keV ( 77.913 keV --> 77.913 keV) + Th229[42.435]: 1436 Emean = 83.561 keV ( 81.089 keV --> 83.628 keV) + Th229[67.800]: 2 Emean = 83.192 keV ( 83.192 keV --> 83.192 keV) + Th229[71.826]: 59 Emean = 82.532 keV ( 78.667 keV --> 83.123 keV) + Th229[75.100]: 1 Emean = 83.067 keV ( 83.067 keV --> 83.067 keV) + Th229[97.136]: 157 Emean = 82.66 keV ( 81.078 keV --> 82.688 keV) + Tl209: 215 Emean = 112.02 keV ( 106.09 keV --> 112.51 keV) + Tl209[323.810]: 17 Emean = 106.41 keV ( 106.41 keV --> 106.41 keV) + U233: 10000 Emean = 362.44 meV ( 3.7544 meV --> 2.019 eV ) + U233[155.230]: 46 Emean = 111.36 meV ( 90.833 meV --> 553.61 meV) + U233[298.810]: 2232 Emean = 98.522 meV ( 3.9872 meV --> 571.51 meV) + U233[301.940]: 28 Emean = 4.0725 meV ( 0.7858 meV --> 6.1991 meV) + U233[311.904]: 5272 Emean = 173.44 meV ( 1.8626 meV --> 717.15 meV) + U233[320.830]: 33 Emean = 95.947 meV ( 0.90222 meV --> 240.25 meV) + U233[340.477]: 2592 Emean = 225.21 meV ( 0.40745 meV --> 617.5 meV) + U233[353.790]: 2561 Emean = 116.76 meV ( 98.4 meV --> 150.93 meV) + U233[398.496]: 1554 Emean = 154.6 meV ( 1.2224 meV --> 452.62 meV) + U233[40.350]: 1456 Emean = 287.4 meV ( 6.17 meV --> 908.77 meV) + U233[415.758]: 2585 Emean = 130.86 meV ( 1.4261 meV --> 395.9 meV) + U233[92.160]: 154 Emean = 161.54 meV ( 9.1677 meV --> 768.57 meV) + alpha: 80001 Emean = 5.9271 MeV ( 4.2731 MeV --> 8.3755 MeV) + anti_nu_e: 40000 Emean = 425 keV ( 10.667 keV --> 1.8259 MeV) + e+: 1 Emean = 255.46 keV ( 255.46 keV --> 255.46 keV) + e-: 1276636 Emean = 11.534 keV ( 1.3878e-05 meV --> 1.6129 MeV) + gamma: 75206 Emean = 83.965 keV ( 34.16 eV --> 4.4696 MeV) + neutron: 10 Emean = 4.8532 MeV ( 1.2557 MeV --> 10.866 MeV) - Mean energy deposit per event = 49.739 MeV rms = 475.85 keV - Mean energy flow per event = 2.0619 MeV rms = 525.07 keV + Mean energy deposit per event = 49.746 MeV rms = 478.88 keV + Mean energy flow per event = 2.0664 MeV rms = 524.66 keV List of particles emerging from the container : - anti_nu_e: 40000 Emean = 425.53 keV ( 6.6581 keV --> 1.8029 MeV) Eflow/event = 1.7021 MeV - e-: 23 Emean = 197.54 keV ( 16.517 keV --> 1.2051 MeV) Eflow/event = 454.33 eV - gamma: 14798 Emean = 240.4 keV ( 40.09 keV --> 8.7823 MeV) Eflow/event = 355.74 keV - neutron: 8 Emean = 4.5154 MeV ( 2.3408 MeV --> 9.0727 MeV) Eflow/event = 3.6123 keV + anti_nu_e: 40000 Emean = 425 keV ( 10.667 keV --> 1.8259 MeV) Eflow/event = 1.7 MeV + e-: 14 Emean = 266.67 keV ( 10.041 keV --> 1.0454 MeV) Eflow/event = 373.33 eV + gamma: 15176 Emean = 238.33 keV ( 5.3768 keV --> 4.4696 MeV) Eflow/event = 361.68 keV + neutron: 9 Emean = 4.8317 MeV ( 1.2557 MeV --> 10.866 MeV) Eflow/event = 4.3486 keV --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 2009867855, 1802017276 + Current couple of seeds = 1631299237, 47044555 ---------------------------------------- G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 11 of which, static: 0 -Dynamic pools deleted: 11 / Total memory freed: 0.037 MB +Dynamic pools deleted: 11 / Total memory freed: 0.061 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/hadronic/NeutronSource/README b/examples/extended/hadronic/NeutronSource/README index 4cffcf55e7..79a812d6f4 100644 --- a/examples/extended/hadronic/NeutronSource/README +++ b/examples/extended/hadronic/NeutronSource/README @@ -59,9 +59,7 @@ In PhysicsList::ConstructProcess() we give an example of how to access hadronic models. Several hadronic physics options are controlled by environment variables. - To trigger them, an envHadronic.csh has been added in this example. - One must select the options wished, and do - source envHadronic.csh (or sh) + To select them, see NeutronSource.cc 3- AN EVENT : THE PRIMARY GENERATOR @@ -139,3 +137,10 @@ Idle> type your commands .... Idle> exit + + Macros provided in this example: + - run1.mac: Am-Be system (default configuration) + + Macros to be run interactively: + - debug.mac: Am-Be + - vis.mac: To activate visualization diff --git a/examples/extended/hadronic/NeutronSource/envHadronic.csh b/examples/extended/hadronic/NeutronSource/envHadronic.csh old mode 100755 new mode 100644 index 70075091c0..f5bd45f799 --- a/examples/extended/hadronic/NeutronSource/envHadronic.csh +++ b/examples/extended/hadronic/NeutronSource/envHadronic.csh @@ -1,3 +1,4 @@ +# === FILE TO BE REMOVED IN G4 11.0 === # # for neutronHP and particleHP # @@ -10,19 +11,10 @@ unsetenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS unsetenv G4PHP_DO_NOT_ADJUST_FINAL_STATE unsetenv G4PHP_NELECT_DOPPLER -#### setenv G4NEUTRONHP_SKIP_MISSING_ISOTOPES 1 -#### setenv G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE 1 -#### setenv G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION 1 -#### setenv G4NEUTRONHP_NELECT_DOPPLER 1 -#### setenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS 1 -# -#### setenv G4PHP_DO_NOT_ADJUST_FINAL_STATE 1 -#### setenv G4PHP_NELECT_DOPPLER 1 # # for Bertini cascade # unsetenv G4CASCADE_USE_PRECOMPOUND -#### setenv G4CASCADE_USE_PRECOMPOUND 1 env |grep G4NEUTRONHP env |grep G4PHP diff --git a/examples/extended/hadronic/NeutronSource/envHadronic.sh b/examples/extended/hadronic/NeutronSource/envHadronic.sh old mode 100755 new mode 100644 index 3bc63c27fc..19c87ea1ca --- a/examples/extended/hadronic/NeutronSource/envHadronic.sh +++ b/examples/extended/hadronic/NeutronSource/envHadronic.sh @@ -1,3 +1,4 @@ +# === FILE TO BE REMOVED IN G4 11.0 === # # for neutronHP and particleHP # @@ -10,34 +11,11 @@ unset G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS unset G4PHP_DO_NOT_ADJUST_FINAL_STATE unset G4PHP_NELECT_DOPPLER -#### G4NEUTRONHP_SKIP_MISSING_ISOTOPES=1 -#### export G4NEUTRONHP_SKIP_MISSING_ISOTOPES - -#### G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE=1 -#### export G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE - -#### G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION=1 -#### export G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION - -#### G4NEUTRONHP_NELECT_DOPPLER=1 -#### export G4NEUTRONHP_NELECT_DOPPLER - -#### G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS=1 -#### export G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS - -#### G4PHP_DO_NOT_ADJUST_FINAL_STATE=1 -#### export G4PHP_DO_NOT_ADJUST_FINAL_STATE - -#### G4PHP_NELECT_DOPPLER=1 -#### export G4PHP_NELECT_DOPPLER # # for Bertini cascade # unset G4CASCADE_USE_PRECOMPOUND -#### G4CASCADE_USE_PRECOMPOUND=1 -#### export G4CASCADE_USE_PRECOMPOUND - env |grep G4NEUTRONHP env |grep G4PHP env |grep G4CASCADE diff --git a/examples/extended/hadronic/NeutronSource/neutronSource.in b/examples/extended/hadronic/NeutronSource/neutronSource.in index ba6888104d..6bc5e0d596 100644 --- a/examples/extended/hadronic/NeutronSource/neutronSource.in +++ b/examples/extended/hadronic/NeutronSource/neutronSource.in @@ -12,7 +12,6 @@ # /run/initialize # -/process/list /process/inactivate hadElastic # /gun/particle ion @@ -23,5 +22,4 @@ ##/analysis/h1/set 6 60 0. 12. MeV #neutrons # /run/printProgress 1000 -# /run/beamOn 10000 diff --git a/examples/extended/hadronic/NeutronSource/run1.mac b/examples/extended/hadronic/NeutronSource/run1.mac index 3e3e688e3f..2311ffc261 100644 --- a/examples/extended/hadronic/NeutronSource/run1.mac +++ b/examples/extended/hadronic/NeutronSource/run1.mac @@ -1,5 +1,5 @@ # -# Macro file for "AmBe.cc" +# Macro file for "NeutronSource.cc" # /control/verbose 2 /run/verbose 1 @@ -12,8 +12,6 @@ # /run/initialize # -/process/list -# /gun/particle ion /gun/ion 95 241 /gun/energy 0. eV @@ -23,5 +21,4 @@ /analysis/h1/set 6 60 0. 12. MeV #neutrons # /run/printProgress 10000 -# /run/beamOn 100000 diff --git a/examples/extended/hadronic/README b/examples/extended/hadronic/README index 1cf77aacc4..fbf6d68b2b 100644 --- a/examples/extended/hadronic/README +++ b/examples/extended/hadronic/README @@ -66,6 +66,13 @@ Notice that we use the generic biasing machinery, but the actual weights of all tracks remain to the usual value (1.0) as in the normal (unbiased) case. +Hadr09 +------ + +This example shows how to use Geant4 as a generator for simulating +inelastic hadron-nuclear interactions. +Notice that the Geant4 run-manager is not used. + FissionFragment --------------- This example demonstrates the Fission Fragment model as used within the diff --git a/examples/extended/medical/CMakeLists.txt b/examples/extended/medical/CMakeLists.txt index 00bce3498f..80e0c6269d 100644 --- a/examples/extended/medical/CMakeLists.txt +++ b/examples/extended/medical/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all medical examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(DICOM) message("-- G4 Examples : The DICOM2 example requires DICOM built first.") diff --git a/examples/extended/medical/DICOM/CMakeLists.txt b/examples/extended/medical/DICOM/CMakeLists.txt index 4948912a7e..bcec75da57 100644 --- a/examples/extended/medical/DICOM/CMakeLists.txt +++ b/examples/extended/medical/DICOM/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 3.0 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(DICOM) option(WITH_GEANT4_UIVIS "Build example with Geant4 UI and Vis drivers" ON) @@ -74,7 +77,7 @@ include_directories(${PROJECT_SOURCE_DIR}/include ${PROJECT_SOURCE_DIR}/dicomReader/include ${Geant4_INCLUDE_DIR} ${DCMTK_INCLUDE_DIRS}) - + file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) @@ -116,7 +119,7 @@ set(DICOM_SCRIPTS Data.dat.new Data.dat.old Data.dat.new_dens Data.partial.dat ) - + # new DICOM data (in share directory) set(DICOM_SHARE AltData.dat SixSlice.dat diff --git a/examples/extended/medical/DICOM/DICOM.cc b/examples/extended/medical/DICOM/DICOM.cc index 098ff8c130..2d3982c4a1 100644 --- a/examples/extended/medical/DICOM/DICOM.cc +++ b/examples/extended/medical/DICOM/DICOM.cc @@ -43,11 +43,7 @@ // ******************************************************* #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "globals.hh" #include "G4UImanager.hh" @@ -101,7 +97,6 @@ int main(int argc,char** argv) CLHEP::HepRandom::setTheSeeds(seeds); // Construct the default run manager -#ifdef G4MULTITHREADED char* nthread_c = std::getenv("DICOM_NTHREADS"); unsigned nthreads = 4; @@ -110,19 +105,9 @@ int main(int argc,char** argv) if(nthread_c) {env_threads=unsigned(G4UIcommand::ConvertToDouble(nthread_c));} if(env_threads > 0) {nthreads=env_threads;} - G4MTRunManager* runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(nthreads); - G4cout << "\n\n\tDICOM running in multithreaded mode with " << nthreads - << " threads\n\n" << G4endl; - - -#else - G4RunManager* runManager = new G4RunManager; - G4cout << "\n\n\tDICOM running in serial mode\n\n" << G4endl; - -#endif - DicomDetectorConstruction* theGeometry = 0; #ifdef G4_DCMTK diff --git a/examples/extended/medical/DICOM/History b/examples/extended/medical/DICOM/History index 6247f066e6..70f6b361e0 100644 --- a/examples/extended/medical/DICOM/History +++ b/examples/extended/medical/DICOM/History @@ -5,6 +5,14 @@ ========================================================= Category History file +10.11.2020 - Ben Morgan (DICOM-V10-06-01) + Migration to G4RunManagerFactory. + +21.10.2020 - Ben Morgan (DICOM-V10-06-00) + Distinguish output names of archive lib from DLL and application to + fix Windows LNK1149 errors for static libs. + Modernize cmake version detection and policy setting to follow main + Geant4 usage. 19.11.2019 - Gabriele Cosmo (DICOM-V10-05-03) Fixed more cases of implicit type conversions. @@ -15,8 +23,8 @@ 12.11.2019 - Gunter Folger (DICOM-V10-05-01) Correct DicomHandler singleton for use on Windows. - DICOM2 was crashing - + DICOM2 was crashing + 08.06.2019 - Gabriele Cosmo (DICOM-V10-05-00) Defaulted copy-ctr in DicomPhantomZSliceHeader, to fix deprecation compilation warnings on gcc-9.1. diff --git a/examples/extended/medical/DICOM/README b/examples/extended/medical/DICOM/README index a1b74043b0..0f3fbb1a85 100644 --- a/examples/extended/medical/DICOM/README +++ b/examples/extended/medical/DICOM/README @@ -14,7 +14,7 @@ tel (418) 525-4444 #6720 fax (418) 691 5268 web : thomson.phy.ulaval.ca/phys_med -++ Université Laval, Québec (QC) Canada +++ Université Laval, Québec (QC) Canada And it has been deeply reviewed by Pedro Arce in December 2007. diff --git a/examples/extended/medical/DICOM/dicomReader/CMakeLists.txt b/examples/extended/medical/DICOM/dicomReader/CMakeLists.txt index 5dad1e2cae..48275718c5 100644 --- a/examples/extended/medical/DICOM/dicomReader/CMakeLists.txt +++ b/examples/extended/medical/DICOM/dicomReader/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 3.0 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(dicomReader) # for shared library set(CMAKE_POSITION_INDEPENDENT_CODE ON) @@ -26,7 +29,7 @@ add_definitions(-DG4_DCMTK) #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR} ${DCMTK_INCLUDE_DIRS}) diff --git a/examples/extended/medical/DICOM/dicomReader/cmake/DICOMUtilities.cmake b/examples/extended/medical/DICOM/dicomReader/cmake/DICOMUtilities.cmake index f87bd4ad3f..c145c4d102 100644 --- a/examples/extended/medical/DICOM/dicomReader/cmake/DICOMUtilities.cmake +++ b/examples/extended/medical/DICOM/dicomReader/cmake/DICOMUtilities.cmake @@ -35,38 +35,29 @@ macro(DICOM_BUILD_LIBRARY) set_target_properties(${LIBRARY_TARGET_NAME}-static PROPERTIES OUTPUT_NAME ${LIBRARY_OUTPUT_NAME} POSITION_INDEPENDENT_CODE OFF) + # On Windows, *must distinguish archive from DLL import lib (and other outputs) + if(WIN32) + set_target_properties(${LIBRARY_TARGET_NAME}-static PROPERTIES + OUTPUT_NAME ${LIBRARY_OUTPUT_NAME}-static) + endif() # append this to list of libraries to install list(APPEND ${PROJECT_NAME}_INSTALL_LIBRARIES ${LIBRARY_TARGET_NAME}-static) endif(LIBRARY_BUILD_STATIC) # shared library if(LIBRARY_BUILD_SHARED) - #################################################### - # This handles Windows issues - set(_TYPE SHARED ) - set(_EXTRA_PROPS ) - # CMake >= 3.4 has WINDOWS_EXPORT_ALL_SYMBOLS - if(WIN32 AND (CMAKE_VERSION VERSION_LESS 3.4)) - # don't bother with dll - set(_TYPE STATIC) - elseif(WIN32) - set(_EXTRA_PROPS WINDOWS_EXPORT_ALL_SYMBOLS ON) - endif() - #################################################### - # add shared (or static if Windows and CMake < 3.4) - add_library(${LIBRARY_TARGET_NAME} ${_TYPE} ${LIBRARY_SOURCES}) + # add shared + add_library(${LIBRARY_TARGET_NAME} SHARED ${LIBRARY_SOURCES}) # link target_link_libraries(${LIBRARY_TARGET_NAME} ${LIBRARY_LINK_LIBRARIES}) # properties set_target_properties(${LIBRARY_TARGET_NAME} PROPERTIES OUTPUT_NAME ${LIBRARY_OUTPUT_NAME} POSITION_INDEPENDENT_CODE ON - ${_EXTRA_PROPS}) + WINDOWS_EXPORT_ALL_SYMBOLS ON) # append this to list of libraries to install list(APPEND ${PROJECT_NAME}_INSTALL_LIBRARIES ${LIBRARY_TARGET_NAME}) # cleanup - unset(_TYPE) - unset(_EXTRA_PROPS) endif(LIBRARY_BUILD_SHARED) add_library(${PROJECT_NAME}::library ALIAS ${LIBRARY_TARGET_NAME}${_geant4_lib_use_suffix}) diff --git a/examples/extended/medical/DICOM/include/DicomEventAction.hh b/examples/extended/medical/DICOM/include/DicomEventAction.hh index fd45b8c59a..ea15cb8d77 100644 --- a/examples/extended/medical/DICOM/include/DicomEventAction.hh +++ b/examples/extended/medical/DICOM/include/DicomEventAction.hh @@ -39,7 +39,7 @@ // tel (418) 525-4444 #6720 // fax (418) 691 5268 // -// + Université Laval, Québec (QC) Canada +// + Université Laval, Québec (QC) Canada //******************************************************* #ifndef DicomEventAction_h diff --git a/examples/extended/medical/DICOM/include/DicomHandler.hh b/examples/extended/medical/DICOM/include/DicomHandler.hh index caca5a1663..9f0fad7b09 100644 --- a/examples/extended/medical/DICOM/include/DicomHandler.hh +++ b/examples/extended/medical/DICOM/include/DicomHandler.hh @@ -39,7 +39,7 @@ // tel (418) 525-4444 #6720 // fax (418) 691 5268 // -// + Université Laval, Québec (QC) Canada +// + Université Laval, Québec (QC) Canada //*******************************************************// #ifndef DicomHandler_h diff --git a/examples/extended/medical/DICOM/include/DicomPhantomParameterisationColour.hh b/examples/extended/medical/DICOM/include/DicomPhantomParameterisationColour.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/DICOM/include/DicomPrimaryGeneratorAction.hh b/examples/extended/medical/DICOM/include/DicomPrimaryGeneratorAction.hh index 0d5a60416b..f0a27c385e 100644 --- a/examples/extended/medical/DICOM/include/DicomPrimaryGeneratorAction.hh +++ b/examples/extended/medical/DICOM/include/DicomPrimaryGeneratorAction.hh @@ -39,7 +39,7 @@ // tel (418) 525-4444 #6720 // fax (418) 691 5268 // -// + Université Laval, Québec (QC) Canada +// + Université Laval, Québec (QC) Canada // // History: 30.11.07 P.Arce modified so that some particles reach phantom voxels // diff --git a/examples/extended/medical/DICOM/include/DicomRun.hh b/examples/extended/medical/DICOM/include/DicomRun.hh index a275a0e529..48311dc15f 100644 --- a/examples/extended/medical/DICOM/include/DicomRun.hh +++ b/examples/extended/medical/DICOM/include/DicomRun.hh @@ -40,7 +40,7 @@ //--------------------------------------------------------------------- /// DicomRun class /// -/// Example implementation for multi-functional-detector and +/// Example implementation for multi-functional-detector and /// primitive scorer. /// This DicomRun class has collections which accumulate /// a event information into a run information. @@ -57,19 +57,19 @@ class DicomRun : public G4Run DicomRun(const std::vector mfdName); virtual ~DicomRun(); - // virtual method from G4Run. + // virtual method from G4Run. // The method is overriden in this class for scoring. virtual void RecordEvent(const G4Event*); // Access methods for scoring information. - // - Number of HitsMap for this RUN. + // - Number of HitsMap for this RUN. // This is equal to number of collections. size_t GetNumberOfHitsMap() const {return fRunMap.size();} // - Get HitsMap of this RUN. // by sequential number, by multifucntional name and collection name, // and by collection name with full path. G4THitsMap* GetHitsMap(G4int i) const {return fRunMap[i];} - G4THitsMap* GetHitsMap(const G4String& detName, + G4THitsMap* GetHitsMap(const G4String& detName, const G4String& colName) const; G4THitsMap* GetHitsMap(const G4String& fullName) const; diff --git a/examples/extended/medical/DICOM/run.out b/examples/extended/medical/DICOM/run.out index 84c4c3a548..6868565345 100644 --- a/examples/extended/medical/DICOM/run.out +++ b/examples/extended/medical/DICOM/run.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,11 +13,6 @@ WWW : http://geant4.org/ ************************************************************** - - - DICOM running in serial mode - - 3 test file 1.g4dcm 3 test file 2.g4dcm 3 test file 3.g4dcm @@ -53,7 +49,11 @@ DicomRegularDetectorConstruction::ConstructPhantom SET SCORER : VoxelLogical CONSTRUCT SD AND FIELD - Shielding : threshold between BERT and FTFP is over the interval : 3 to 6 GeV + hInelastic Shielding : threshold between BERT and FTFP is over the interval + for pions : 3 to 6 GeV + for kaons : 3 to 6 GeV + for proton : 3 to 6 GeV + for neutron : 3 to 6 GeV /cvmfs/geant4.cern.ch/share/data/G4NDL4.6 @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic @@ -75,10 +75,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -149,10 +151,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -176,10 +179,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -207,9 +211,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -223,14 +227,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -239,9 +243,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -267,9 +271,9 @@ Use Bearden atomic level energies 0 ====================================================================== msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -280,9 +284,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -296,14 +300,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -312,9 +316,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -328,14 +332,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -344,9 +348,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -360,14 +364,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -376,9 +380,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -393,14 +397,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -409,9 +413,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -426,14 +430,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -444,13 +448,26 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + UseOnlyPhotoEvaporation ? 0 + SkipMissingIsotopes ? 0 + NeglectDoppler ? 0 + DoNotAdjustFinalState ? 0 + ProduceFissionFragments ? 1 + UseWendtFissionModel ? 0 + UseNRESP71Model ? 0 +======================================================= + @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -464,14 +481,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -480,9 +497,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -496,14 +513,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -514,6 +531,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 ==================================================================== HADRONIC PROCESSES SUMMARY (verbose level 1) +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -597,6 +636,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -686,7 +738,6 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Model: FTFP: 3 GeV ---> 100 TeV Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- Hadronic Processes for kaon- @@ -699,7 +750,6 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Model: FTFP: 3 GeV ---> 100 TeV Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -711,8 +761,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -806,8 +856,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -849,7 +899,6 @@ Store e- internal conversion data 1 Electron internal conversion ID 0 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -864,56 +913,56 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : LungInhale Range cuts : gamma 700 um e- 700 um e+ 700 um proton 0 fm - Energy thresholds : gamma 1.31161 keV e- 107.594 keV e+ 106.162 keV proton 0 eV + Energy thresholds : gamma 1.31284 keV e- 107.83 keV e+ 106.748 keV proton 0 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : LungExhale Range cuts : gamma 700 um e- 700 um e+ 700 um proton 0 fm - Energy thresholds : gamma 1.87683 keV e- 180.204 keV e+ 176.619 keV proton 0 eV + Energy thresholds : gamma 1.87453 keV e- 179.698 keV e+ 177.299 keV proton 0 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 3 used in the geometry : Yes Material : AdiposeTissue Range cuts : gamma 700 um e- 700 um e+ 700 um proton 0 fm - Energy thresholds : gamma 2.18209 keV e- 272.967 keV e+ 267.537 keV proton 0 eV + Energy thresholds : gamma 2.18784 keV e- 276.265 keV e+ 268.938 keV proton 0 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 4 used in the geometry : Yes Material : Breast Range cuts : gamma 700 um e- 700 um e+ 700 um proton 0 fm - Energy thresholds : gamma 2.2564 keV e- 278.507 keV e+ 271.144 keV proton 0 eV + Energy thresholds : gamma 2.24745 keV e- 276.265 keV e+ 272.577 keV proton 0 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 5 used in the geometry : Yes Material : Water Range cuts : gamma 700 um e- 700 um e+ 700 um proton 0 fm - Energy thresholds : gamma 2.52852 keV e- 278.507 keV e+ 271.144 keV proton 0 eV + Energy thresholds : gamma 2.51944 keV e- 276.265 keV e+ 270.751 keV proton 0 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 6 used in the geometry : Yes Material : Muscle Range cuts : gamma 700 um e- 700 um e+ 700 um proton 0 fm - Energy thresholds : gamma 2.54551 keV e- 286.069 keV e+ 278.507 keV proton 0 eV + Energy thresholds : gamma 2.53643 keV e- 287.632 keV e+ 278.128 keV proton 0 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 7 used in the geometry : Yes Material : TrabecularBone Range cuts : gamma 700 um e- 700 um e+ 700 um proton 0 fm - Energy thresholds : gamma 2.70367 keV e- 297.799 keV e+ 291.875 keV proton 0 eV + Energy thresholds : gamma 2.71274 keV e- 299.466 keV e+ 291.524 keV proton 0 eV Region(s) which use this couple : DefaultRegionForTheWorld Index : 8 used in the geometry : Yes Material : Liver Range cuts : gamma 700 um e- 700 um e+ 700 um proton 0 fm - Energy thresholds : gamma 2.56261 keV e- 287.992 keV e+ 282.263 keV proton 0 eV + Energy thresholds : gamma 2.55353 keV e- 287.632 keV e+ 281.891 keV proton 0 eV Region(s) which use this couple : DefaultRegionForTheWorld @@ -1027,11 +1076,11 @@ See commands in /vis/modeling/trajectories/ for other options. Run terminated. Run Summary Number of events processed : 100 - User=0.040000s Real=0.168334s Sys=0.000000s + User=0.020000s Real=11.252373s Sys=0.010000s --------------------End of Global Run----------------------- The run was 100 events LOCAL TOTAL DOSE : 0 Gy - TOTAL DOSE : 1.02264e-06 Gy + TOTAL DOSE : 1.02134e-06 Gy ###### EndOfRunAction ###### ============================================================= Number of event processed : 100 @@ -1041,11 +1090,14 @@ LOCAL TOTAL DOSE : 0 Gy ============================================= closed file dicom.out for dose output Finished : End of Run Action 0 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 11 of which, static: 0 -Dynamic pools deleted: 11 / Total memory freed: 0.033 MB +Dynamic pools deleted: 11 / Total memory freed: 0.034 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/medical/DICOM/share/IM-0003-0001.dcm b/examples/extended/medical/DICOM/share/IM-0003-0001.dcm old mode 100755 new mode 100644 diff --git a/examples/extended/medical/DICOM/share/IM-0003-0002.dcm b/examples/extended/medical/DICOM/share/IM-0003-0002.dcm old mode 100755 new mode 100644 diff --git a/examples/extended/medical/DICOM/share/IM-0003-0003.dcm b/examples/extended/medical/DICOM/share/IM-0003-0003.dcm old mode 100755 new mode 100644 diff --git a/examples/extended/medical/DICOM/share/IM-0003-0004.dcm b/examples/extended/medical/DICOM/share/IM-0003-0004.dcm old mode 100755 new mode 100644 diff --git a/examples/extended/medical/DICOM/share/IM-0003-0005.dcm b/examples/extended/medical/DICOM/share/IM-0003-0005.dcm old mode 100755 new mode 100644 diff --git a/examples/extended/medical/DICOM/share/IM-0003-0006.dcm b/examples/extended/medical/DICOM/share/IM-0003-0006.dcm old mode 100755 new mode 100644 diff --git a/examples/extended/medical/DICOM/share/IM-0003-0007.dcm b/examples/extended/medical/DICOM/share/IM-0003-0007.dcm old mode 100755 new mode 100644 diff --git a/examples/extended/medical/DICOM/share/IM-0003-0008.dcm b/examples/extended/medical/DICOM/share/IM-0003-0008.dcm old mode 100755 new mode 100644 diff --git a/examples/extended/medical/DICOM/share/IM-0003-0009.dcm b/examples/extended/medical/DICOM/share/IM-0003-0009.dcm old mode 100755 new mode 100644 diff --git a/examples/extended/medical/DICOM/share/IM-0003-0010.dcm b/examples/extended/medical/DICOM/share/IM-0003-0010.dcm old mode 100755 new mode 100644 diff --git a/examples/extended/medical/DICOM/src/DicomEventAction.cc b/examples/extended/medical/DICOM/src/DicomEventAction.cc index 69a0b4c2c6..3442adf7eb 100644 --- a/examples/extended/medical/DICOM/src/DicomEventAction.cc +++ b/examples/extended/medical/DICOM/src/DicomEventAction.cc @@ -40,7 +40,7 @@ // tel (418) 525-4444 #6720 // fax (418) 691 5268 // -// + Université Laval, Québec (QC) Canada +// + Université Laval, Québec (QC) Canada //******************************************************* #include "DicomEventAction.hh" diff --git a/examples/extended/medical/DICOM/src/DicomPhantomParameterisationColour.cc b/examples/extended/medical/DICOM/src/DicomPhantomParameterisationColour.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/DICOM/src/DicomPrimaryGeneratorAction.cc b/examples/extended/medical/DICOM/src/DicomPrimaryGeneratorAction.cc index 3229757405..b546d97c93 100644 --- a/examples/extended/medical/DICOM/src/DicomPrimaryGeneratorAction.cc +++ b/examples/extended/medical/DICOM/src/DicomPrimaryGeneratorAction.cc @@ -39,7 +39,7 @@ // tel (418) 525-4444 #6720 // fax (418) 691 5268 // -// + Université Laval, Québec (QC) Canada +// + Université Laval, Québec (QC) Canada //******************************************************* #include "DicomPrimaryGeneratorAction.hh" diff --git a/examples/extended/medical/DICOM2/CMakeLists.txt b/examples/extended/medical/DICOM2/CMakeLists.txt index f20dff6d50..a6e37d0319 100644 --- a/examples/extended/medical/DICOM2/CMakeLists.txt +++ b/examples/extended/medical/DICOM2/CMakeLists.txt @@ -1,7 +1,10 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(DICOM2) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/DICOM2/History b/examples/extended/medical/DICOM2/History index 82676d08e0..7a4f6e00e2 100644 --- a/examples/extended/medical/DICOM2/History +++ b/examples/extended/medical/DICOM2/History @@ -6,6 +6,12 @@ Category History file +10.11.2020 - Ben Morgan (DICOM2-V10-06-01) + Migration to G4RunManagerFactory. + +20.10.2020 - B. Morgan (DICOM2-V10-06-00) + Fix compiler warning on Windows + 26.11.2019 - I. Hrivnacova (DICOM2-V10-05-04) Fixed Doxygen warnings diff --git a/examples/extended/medical/DICOM2/dicom2.cc b/examples/extended/medical/DICOM2/dicom2.cc index 068e9ff8d3..8faba663fe 100644 --- a/examples/extended/medical/DICOM2/dicom2.cc +++ b/examples/extended/medical/DICOM2/dicom2.cc @@ -28,11 +28,7 @@ /// \brief Main program of the Dicom2 example #include "G4Types.hh" -#ifdef G4MULTITHREADED -# include "G4MTRunManager.hh" -#else -# include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4GenericPhysicsList.hh" #include "G4tgrMessenger.hh" @@ -79,18 +75,13 @@ int main(int argc,char** argv) CLHEP::HepRandom::setTheSeeds(seeds); // Construct the default run manager -#ifdef G4MULTITHREADED G4int nthreads = G4GetEnv("DICOM_NTHREADS", G4Thread::hardware_concurrency()); - G4MTRunManager* runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(nthreads); - G4cout << "\n\n\tDICOM2 running in multithreaded mode with " + G4cout << "\n\n\tDICOM2 running with " << runManager->GetNumberOfThreads() << " threads\n\n" << G4endl; -#else - G4RunManager* runManager = new G4RunManager; - G4cout << "\n\n\tDICOM running in serial mode\n\n" << G4endl; -#endif DicomDetectorConstruction* theGeometry = 0; diff --git a/examples/extended/medical/DICOM2/src/Dicom2Run.cc b/examples/extended/medical/DICOM2/src/Dicom2Run.cc index 15f260d804..a3d5fcf4e8 100644 --- a/examples/extended/medical/DICOM2/src/Dicom2Run.cc +++ b/examples/extended/medical/DICOM2/src/Dicom2Run.cc @@ -213,10 +213,10 @@ void Dicom2Run::Merge(const G4Run* aRun) Copy(fCollName, localRun->fCollName); Copy(fCollID, localRun->fCollID); - G4int ncopies = G4int(Copy(fRunMap, localRun->fRunMap)); + std::size_t ncopies = Copy(fRunMap, localRun->fRunMap); // copy function returns the fRunMap size if all data is copied // so this loop isn't executed the first time around - for(G4int i = ncopies; i < G4int(fRunMap.size()); ++i) + for(std::size_t i = ncopies; i < fRunMap.size(); ++i) *fRunMap[i] += *localRun->fRunMap[i]; } diff --git a/examples/extended/medical/GammaTherapy/CMakeLists.txt b/examples/extended/medical/GammaTherapy/CMakeLists.txt index de772cd0fb..7568b6f3b4 100644 --- a/examples/extended/medical/GammaTherapy/CMakeLists.txt +++ b/examples/extended/medical/GammaTherapy/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(GammaTherapy) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/GammaTherapy/GammaTherapy.cc b/examples/extended/medical/GammaTherapy/GammaTherapy.cc index 0163237b86..ec04c9fd7c 100644 --- a/examples/extended/medical/GammaTherapy/GammaTherapy.cc +++ b/examples/extended/medical/GammaTherapy/GammaTherapy.cc @@ -43,11 +43,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "Randomize.hh" @@ -72,16 +68,12 @@ int main(int argc,char** argv) { G4Random::setTheEngine(new CLHEP::RanecuEngine); // Construct the default run manager -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); G4int nThreads = std::min(G4Threading::G4GetNumberOfCores(),2); if (argc==3) nThreads = G4UIcommand::ConvertToInt(argv[2]); runManager->SetNumberOfThreads(nThreads); G4cout << "===== GammaTherapy is started with " << runManager->GetNumberOfThreads() << " threads =====" << G4endl; -#else - G4RunManager* runManager = new G4RunManager(); -#endif //set mandatory initialization classes DetectorConstruction* det = new DetectorConstruction(); diff --git a/examples/extended/medical/GammaTherapy/GammaTherapy.out b/examples/extended/medical/GammaTherapy/GammaTherapy.out index 64ed42ac0c..134110bd5c 100644 --- a/examples/extended/medical/GammaTherapy/GammaTherapy.out +++ b/examples/extended/medical/GammaTherapy/GammaTherapy.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,6 +13,7 @@ WWW : http://geant4.org/ ************************************************************** +===== GammaTherapy is started with 1 threads ===== ***** Table : Nb of materials = 6 ***** @@ -35,7 +37,7 @@ ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: G4_He density: 0.166 kg/m3 RadL: 5.671 km Nucl.Int.Length: 3.341 km + Material: G4_He density: 0.166 mg/cm3 RadL: 5.671 km Nucl.Int.Length: 3.341 km Imean: 41.800 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: He (He) Z = 2.0 N = 4 A = 4.003 g/mole @@ -182,10 +184,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 10 GeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=60 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 10 GeV Nbins=20 100 MeV - 10 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 90 bins @@ -209,10 +212,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 10 GeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=60 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 10 GeV Nbins=20 100 MeV - 10 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 90 bins @@ -240,9 +244,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 10 GeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 10 GeV Nbins=80 100 eV - 10 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 90 bins @@ -256,14 +260,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 10 GeV + hBrem : Emin= 0 eV Emax= 10 GeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 Sampling table 4x1001 from 7.50618 GeV to 0.0150124 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 10 GeV + hPairProd : Emin= 0 eV Emax= 10 GeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 10 GeV, 10 bins/decade, spline: 1 @@ -272,9 +276,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 10 GeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 10 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 90 bins @@ -286,9 +290,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 10 GeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 10 GeV Nbins=80 100 eV - 10 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 90 bins @@ -299,9 +303,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 10 GeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 10 GeV Nbins=80 100 eV - 10 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 90 bins @@ -315,14 +319,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 10 GeV + hBrem : Emin= 0 eV Emax= 10 GeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 Sampling table 4x1001 from 7.50618 GeV to 0.0150124 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 10 GeV + hPairProd : Emin= 0 eV Emax= 10 GeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 10 GeV, 10 bins/decade, spline: 1 @@ -331,9 +335,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 10 GeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 10 GeV Nbins=80 100 eV - 10 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 90 bins @@ -347,14 +351,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 10 GeV + hBrem : Emin= 0 eV Emax= 10 GeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 Sampling table 4x1001 from 3.94942 GeV to 0.01 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 10 GeV + hPairProd : Emin= 0 eV Emax= 10 GeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 10 GeV, 10 bins/decade, spline: 1 @@ -363,9 +367,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 10 GeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 10 GeV Nbins=80 100 eV - 10 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 90 bins @@ -379,14 +383,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 10 GeV + hBrem : Emin= 0 eV Emax= 10 GeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 Sampling table 4x1001 from 3.94942 GeV to 0.01 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 10 GeV + hPairProd : Emin= 0 eV Emax= 10 GeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -395,9 +399,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 10 GeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 10 GeV Nbins=80 100 eV - 10 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 90 bins @@ -412,14 +416,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 10 GeV + MuBrem : Emin= 0 eV Emax= 10 GeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 Sampling table 5x1001 from 1 GeV to 0.01 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 10 GeV + muPairProd : Emin= 0 eV Emax= 10 GeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 10 GeV, 10 bins/decade, spline: 1 @@ -428,9 +432,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 10 GeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 10 GeV Nbins=80 100 eV - 10 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 90 bins @@ -445,14 +449,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 10 GeV + MuBrem : Emin= 0 eV Emax= 10 GeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 Sampling table 5x1001 from 1 GeV to 0.01 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 10 GeV + muPairProd : Emin= 0 eV Emax= 10 GeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -461,9 +465,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 10 GeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 10 GeV Nbins=80 100 eV - 10 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 90 bins @@ -477,14 +481,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 10 GeV + hBrem : Emin= 0 eV Emax= 10 GeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 Sampling table 4x1001 from 1.11656 GeV to 0.01 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 10 GeV + hPairProd : Emin= 0 eV Emax= 10 GeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 10 GeV, 10 bins/decade, spline: 1 @@ -493,9 +497,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 10 GeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 10 GeV Nbins=80 100 eV - 10 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 90 bins @@ -509,14 +513,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 10 GeV + hBrem : Emin= 0 eV Emax= 10 GeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 10 eV to 10 GeV in 90 bins Lambda tables from threshold to 10 GeV, 10 bins/decade, spline: 1 Sampling table 4x1001 from 1.11656 GeV to 0.01 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 10 GeV + hPairProd : Emin= 0 eV Emax= 10 GeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -536,7 +540,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_Be Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 1.05151 keV e- 109.045 keV e+ 107.594 keV proton 10 keV + Energy thresholds : gamma 1.05172 keV e- 109.289 keV e+ 107.83 keV proton 10 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -550,21 +554,21 @@ Index : 2 used in the geometry : Yes Index : 3 used in the geometry : Yes Material : G4_W Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 36.355 keV e- 349.731 keV e+ 335.956 keV proton 10 keV + Energy thresholds : gamma 36.0599 keV e- 351.877 keV e+ 337.972 keV proton 10 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 4 used in the geometry : Yes Material : G4_MYLAR Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 1.21032 keV e- 98.6219 keV e+ 97.9636 keV proton 10 keV + Energy thresholds : gamma 1.21113 keV e- 99.4755 keV e+ 98.1475 keV proton 10 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 5 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 1.10939 keV e- 85.1099 keV e+ 83.4168 keV proton 10 keV + Energy thresholds : gamma 1.10981 keV e- 84.6589 keV e+ 83.5287 keV proton 10 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -583,32 +587,32 @@ Index : 5 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 10000 - User=10.350000s Real=10.423109s Sys=0.010000s + User=3.320000s Real=3.382272s Sys=0.000000s Histo: End of run actions are started ======================================================== Number of events 10000 -Average number of e- 32.85 -Average number of gamma 19.45 -Average number of e+ 0.7534 -Average number of steps in the phantom 11.32 -Average number of e- steps in the target 18.07 -Average number of g produced in the target 18.61 -Average number of e- produced in the target 20.83 -Average number of g produced in the phantom 0.4888 -Average number of e- produced in the phantom 5.776 -Total fGamma fluence in front of the phantom 8.01 MeV +Average number of e- 33.31 +Average number of gamma 19.58 +Average number of e+ 0.7636 +Average number of steps in the phantom 11.81 +Average number of e- steps in the target 18.04 +Average number of g produced in the target 18.72 +Average number of e- produced in the target 20.87 +Average number of g produced in the phantom 0.4977 +Average number of e- produced in the phantom 6.027 +Total fGamma fluence in front of the phantom 8.121 MeV ======================================================== --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 165034343, 198826946 + Current couple of seeds = 303801085, 5678945 ---------------------------------------- # G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 10 of which, static: 0 -Dynamic pools deleted: 10 / Total memory freed: 0.058 MB +Dynamic pools deleted: 10 / Total memory freed: 0.055 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/medical/GammaTherapy/History b/examples/extended/medical/GammaTherapy/History index f40c11f299..5fa8b3bb85 100644 --- a/examples/extended/medical/GammaTherapy/History +++ b/examples/extended/medical/GammaTherapy/History @@ -13,6 +13,11 @@ track of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-20 B. Morgan (gtherapy-V10-06-00) +- Migration to G4RunManagerFactory. +- Remove PrimaryGeneratorAction as data member of RunAction as + it is not used by generated Run objects. + 09-05-18 B.Morgan (gtherapy-V10-04-02) - Include G4Types before use of G4MULTITHREADED. For forward compatibility with move to #defines over -D for G4 preprocessor @@ -48,7 +53,7 @@ track of all tags. 10-04-17 S.Elles (gtherapy-V10-03-01) - Fix gcc warnings -- Fix package memory leaks +- Fix package memory leaks 06-04-17 S.Elles (gtherapy-V10-03-00) - Porting to MT @@ -69,21 +74,21 @@ track of all tags. - Cleanup README 01-04-13 A.Dotti (gtherapy-V09-06-02) -- Changes for MT physics list implemented - +- Changes for MT physics list implemented + 15-03-13 mma (gtherapy-V09-06-01) - G4 coding conventions 28-02-13 I. Hrivnacova (gtherapy-V09-06-00) - When building materials with NistManager - do not set fromIsotopes argument (which was set to false), + do not set fromIsotopes argument (which was set to false), as since 9.6 all materials have to be built from isotopes. (Thanks to V. Ivantchenko for pointing at this.) 14-11-12 I. Hrivnacova (gtherapy-V09-05-06) - Fixed order of instatiating G4VisExecutive and G4UIExecutive (required when Qt driver is activated). -- Added compilations options G4VIS_USE, G4UI_USE in main +- Added compilations options G4VIS_USE, G4UI_USE in main 24-10-12 A. Ribon (gtherapy-V09-05-05) - Migrated to the new stopping physics. @@ -96,9 +101,9 @@ track of all tags. 04-09-12 I. Hrivnacova (gtherapy-V09-05-02) - Updated CMakeLists.txt: - adding visualization, copying macros, install target and comment lines -- Added .README - + adding visualization, copying macros, install target and comment lines +- Added .README + 14-08-12 V.Ivant (gtherapy-V09-05-01) - Added forgoten class @@ -112,20 +117,20 @@ track of all tags. - Introduced G4UIExecutive. 26-10-10 V.Ivant (gtherapy-V09-03-04) -- in PrimaryGeneratorAction.hh remove unused methods +- in PrimaryGeneratorAction.hh remove unused methods 25-10-10 G.Folger (gtherapy-V09-03-03) -- in PrimaryGeneratorAction.hh, comment unused definition of +- in PrimaryGeneratorAction.hh, comment unused definition of G4ThreeVector GetBeamEnergy() 21-10-10 V.Ivant (gtherapy-V09-03-02) - Cleanup AIDA histograms and analysis 06-06-10 J.Perl (gtherapy-V09-03-01) -- Remove unused variable in EventAction +- Remove unused variable in EventAction 04-06-10 J.Perl (gtherapy-V09-03-00) -- Updated vis usage +- Updated vis usage 21-11-09 V.Ivant (gtherapy-V09-02-00) - update EM physics according to 9.3 @@ -138,7 +143,7 @@ track of all tags. - Provide a possibility to change cuts between runs 25-05-07 V.Ivant (gtherapy-V08-03-02) -- Fixed singleton GetPointer method +- Fixed singleton GetPointer method 24-05-07 V.Ivant (gtherapy-V08-03-01) - substitute autoptr by normal pointers in Histo to avoid crash @@ -160,15 +165,15 @@ track of all tags. - Fix crash connected with non-static hadrons 23 August 05: V.Ivant (gtherapy-V07-01-01) -- Add g4v71 builder +- Add g4v71 builder 23 August 05: V.Ivant (gtherapy-V07-01-00) -- Add vis.mac; -- Use standard angular distribution for lowenergy PhotoElectric +- Add vis.mac; +- Use standard angular distribution for lowenergy PhotoElectric - Add histogram type (aida, root, hbook) 7 June 05: V.Ivant (gtherapy-V07-00-04) -- Fix step limiter UI +- Fix step limiter UI 6 June 05: V.Ivant (gtherapy-V07-00-03) - Use "ApplyCuts" option @@ -188,7 +193,7 @@ track of all tags. 15 Dec 04: V.Ivant (gtherapy-V06-02-07) - Uncomment out the StepFunction in GammaTherapy.in -- Uncommnet line in PhysicsList constructor,w hich is needed to +- Uncommnet line in PhysicsList constructor,w hich is needed to get UI command 13 Dec 04: S.Sadilov (gtherapy-V06-02-06) @@ -206,12 +211,12 @@ track of all tags. 01-11-04 V.Ivan. (gtherapy-V06-02-02) - cleanup for the release - + 13-09-04 V.Ivan. (gtherapy-V06-02-01) -- fix normalisation of histograms; -- change position of plane for scoring radial distribution - from 10 cm to 7 cm; +- fix normalisation of histograms; +- change position of plane for scoring radial distribution + from 10 cm to 7 cm; 03-08-04 V.Ivan. (gtherapy-V06-02-00) - created; - + diff --git a/examples/extended/medical/GammaTherapy/include/ActionInitialization.hh b/examples/extended/medical/GammaTherapy/include/ActionInitialization.hh index ed9bf1cdc3..8995211afe 100644 --- a/examples/extended/medical/GammaTherapy/include/ActionInitialization.hh +++ b/examples/extended/medical/GammaTherapy/include/ActionInitialization.hh @@ -41,16 +41,15 @@ class DetectorConstruction; class ActionInitialization : public G4VUserActionInitialization { - public: + public: ActionInitialization(DetectorConstruction*); - virtual ~ActionInitialization(); + virtual ~ActionInitialization(); - virtual void BuildForMaster() const; - virtual void Build() const; + virtual void BuildForMaster() const; + virtual void Build() const; - private: - DetectorConstruction* fDetector; + private: + DetectorConstruction* fDetector; }; #endif - diff --git a/examples/extended/medical/GammaTherapy/include/Run.hh b/examples/extended/medical/GammaTherapy/include/Run.hh index 8cff653607..01ca4a6a1a 100644 --- a/examples/extended/medical/GammaTherapy/include/Run.hh +++ b/examples/extended/medical/GammaTherapy/include/Run.hh @@ -46,7 +46,6 @@ #include "globals.hh" class DetectorConstruction; -class PrimaryGeneratorAction; class HistoManager; class G4ParticleDefinition; class G4Track; @@ -56,28 +55,25 @@ class G4Track; class Run : public G4Run { public: - Run(DetectorConstruction*, PrimaryGeneratorAction*, HistoManager*); + Run(DetectorConstruction*, HistoManager*); ~Run(); public: - - virtual void Merge(const G4Run*); - void EndOfRun(); - + virtual void Merge(const G4Run*); + void EndOfRun(); + void ScoreNewTrack(const G4Track* aTrack); - - void AddPhantomStep(G4double e, G4double r1, G4double z1, - G4double r2, G4double z2, - G4double r0, G4double z0); - + + void AddPhantomStep(G4double e, G4double r1, G4double z1, G4double r2, + G4double z2, G4double r0, G4double z0); + void AddPhantomGamma(G4double e, G4double r); - - bool GetVerbose() const { return fVerbose; } - inline void AddStepInTarget() { ++fNstepTarget;}; - -private: - - DetectorConstruction* fDetector; + + bool GetVerbose() const { return fVerbose; } + inline void AddStepInTarget() { ++fNstepTarget; }; + + private: + DetectorConstruction* fDetector; HistoManager* fHistoMgr; G4AnalysisManager* fAnalysisManager; @@ -89,9 +85,9 @@ private: void AddPhantomElectron(const G4DynamicParticle*); void AddTargetElectron(const G4DynamicParticle*); - inline void AddPhoton() { ++fNgam; }; - inline void AddElectron(){ ++fNelec; }; - inline void AddPositron(){ ++fNposit; }; + inline void AddPhoton() { ++fNgam; }; + inline void AddElectron() { ++fNelec; }; + inline void AddPositron() { ++fNposit; }; // Parameters retrived from DetectorConstructor const G4ParticleDefinition* fGamma; @@ -137,11 +133,8 @@ private: G4DataVector fVolumeR; G4DataVector fGammaE; G4DataVector fEdep; - - }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #endif - diff --git a/examples/extended/medical/GammaTherapy/include/RunAction.hh b/examples/extended/medical/GammaTherapy/include/RunAction.hh index 73f1a25464..779db65c54 100644 --- a/examples/extended/medical/GammaTherapy/include/RunAction.hh +++ b/examples/extended/medical/GammaTherapy/include/RunAction.hh @@ -40,32 +40,25 @@ class Run; class DetectorConstruction; -class PrimaryGeneratorAction; class HistoManager; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - class RunAction : public G4UserRunAction { -public: + public: + RunAction(DetectorConstruction*); + virtual ~RunAction(); - RunAction(DetectorConstruction*, PrimaryGeneratorAction* prim); - virtual ~RunAction(); - - virtual G4Run* GenerateRun(); + virtual G4Run* GenerateRun(); void BeginOfRunAction(const G4Run*); void EndOfRunAction(const G4Run*); -private: - - DetectorConstruction* fDetector; - PrimaryGeneratorAction* fPrimary; - Run* fRun; - HistoManager* fHistoManager; - + private: + DetectorConstruction* fDetector; + Run* fRun; + HistoManager* fHistoManager; }; #endif - diff --git a/examples/extended/medical/GammaTherapy/src/ActionInitialization.cc b/examples/extended/medical/GammaTherapy/src/ActionInitialization.cc index bc9f60d3e7..b548ea8a19 100644 --- a/examples/extended/medical/GammaTherapy/src/ActionInitialization.cc +++ b/examples/extended/medical/GammaTherapy/src/ActionInitialization.cc @@ -27,7 +27,7 @@ /// \file ActionInitialization.cc /// \brief Implementation of the ActionInitialization class -//fanoCavity +// fanoCavity #include "ActionInitialization.hh" #include "DetectorConstruction.hh" @@ -38,21 +38,19 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... ActionInitialization::ActionInitialization(DetectorConstruction* det) - : G4VUserActionInitialization(),fDetector(det) -{ -} + : G4VUserActionInitialization() + , fDetector(det) +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -ActionInitialization::~ActionInitialization() -{ } +ActionInitialization::~ActionInitialization() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void ActionInitialization::BuildForMaster() const { - RunAction* runAct = new RunAction(fDetector, - new PrimaryGeneratorAction(fDetector)); + RunAction* runAct = new RunAction(fDetector); SetUserAction(runAct); } @@ -63,12 +61,11 @@ void ActionInitialization::Build() const PrimaryGeneratorAction* prim = new PrimaryGeneratorAction(fDetector); SetUserAction(prim); - RunAction* runAct = new RunAction(fDetector, prim); + RunAction* runAct = new RunAction(fDetector); SetUserAction(runAct); - TrackingAction *track = new TrackingAction(); + TrackingAction* track = new TrackingAction(); SetUserAction(track); } - //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/medical/GammaTherapy/src/Run.cc b/examples/extended/medical/GammaTherapy/src/Run.cc index 378672b7fe..4ce34c2e62 100644 --- a/examples/extended/medical/GammaTherapy/src/Run.cc +++ b/examples/extended/medical/GammaTherapy/src/Run.cc @@ -26,7 +26,7 @@ /// \file medical/GammaTherapy/src/Run.cc /// \brief Implementation of the Run class // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -45,114 +45,111 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -Run::Run(DetectorConstruction* det, PrimaryGeneratorAction* /*prim*/, - HistoManager* histoMgr) -: G4Run(), - fDetector(det), - fHistoMgr(histoMgr) +Run::Run(DetectorConstruction* det, HistoManager* histoMgr) + : G4Run() + , fDetector(det) + , fHistoMgr(histoMgr) { - - fSumR=0; - fNevt = fNelec = fNposit = fNgam = fNstep = fNgamPh = - fNgamTar = fNeTar = fNePh = fNstepTarget = 0; + fSumR = 0; + fNevt = fNelec = fNposit = fNgam = fNstep = fNgamPh = fNgamTar = fNeTar = + fNePh = fNstepTarget = 0; fAnalysisManager = G4AnalysisManager::Instance(); fHistoId = fHistoMgr->GetHistoIdentifiers(); - fNHisto = fHistoId.size(); - + fNHisto = fHistoId.size(); + fCheckVolume = fDetector->GetCheckVolume(); - fGasVolume = fDetector->GetGasVolume(); - fPhantom = fDetector->GetPhantom(); - fTarget1 = fDetector->GetTarget1(); - fTarget2 = fDetector->GetTarget2(); + fGasVolume = fDetector->GetGasVolume(); + fPhantom = fDetector->GetPhantom(); + fTarget1 = fDetector->GetTarget1(); + fTarget2 = fDetector->GetTarget2(); fNBinsR = fDetector->GetNumberDivR(); fNBinsZ = fDetector->GetNumberDivZ(); - fScoreZ = fDetector->GetScoreZ(); + fScoreZ = fDetector->GetScoreZ(); fAbsorberZ = fDetector->GetAbsorberZ(); fAbsorberR = fDetector->GetAbsorberR(); fMaxEnergy = fDetector->GetMaxEnergy(); - fNBinsE = fDetector->GetNumberDivE(); + fNBinsE = fDetector->GetNumberDivE(); fMaxEnergy = fDetector->GetMaxEnergy(); - fStepZ = fAbsorberZ/(G4double)fNBinsZ; - fStepR = fAbsorberR/(G4double)fNBinsR; - fStepE = fMaxEnergy/(G4double)fNBinsE; - fScoreBin = (G4int)(fScoreZ/fStepZ + 0.5); + fStepZ = fAbsorberZ / (G4double) fNBinsZ; + fStepR = fAbsorberR / (G4double) fNBinsR; + fStepE = fMaxEnergy / (G4double) fNBinsE; + fScoreBin = (G4int)(fScoreZ / fStepZ + 0.5); fVerbose = fDetector->GetVerbose(); fGamma = G4Gamma::Gamma(); fElectron = G4Electron::Electron(); fPositron = G4Positron::Positron(); - - G4cout << " "<< fNBinsR << " bins R stepR= " << fStepR/mm << " mm " + + G4cout << " " << fNBinsR << " bins R stepR= " << fStepR / mm << " mm " << G4endl; - G4cout << " "<< fNBinsZ << " bins Z stepZ= " << fStepZ/mm << " mm " + G4cout << " " << fNBinsZ << " bins Z stepZ= " << fStepZ / mm << " mm " << G4endl; - G4cout << " "<< fNBinsE << " bins E stepE= " << fStepE/MeV << " MeV " + G4cout << " " << fNBinsE << " bins E stepE= " << fStepE / MeV << " MeV " << G4endl; - G4cout << " "<< fScoreBin << "-th bin in Z is used for R distribution" + G4cout << " " << fScoreBin << "-th bin in Z is used for R distribution" << G4endl; fVolumeR.clear(); fEdep.clear(); fGammaE.clear(); - fVolumeR.resize(fNBinsR,0.0); + fVolumeR.resize(fNBinsR, 0.0); fEdep.resize(fNBinsR, 0.0); fGammaE.resize(fNBinsE, 0.0); G4double r1 = 0.0; G4double r2 = fStepR; - for(G4int i=0; iGetFileName()!="")fHistoMgr->Update(det, true); + if(fAnalysisManager->GetFileName() != "") + fHistoMgr->Update(det, true); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -Run::~Run() -{ +Run::~Run() {} -} - - //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void Run::Merge(const G4Run* run) { const Run* localRun = static_cast(run); - fNevt += localRun->fNevt; + fNevt += localRun->fNevt; - fNelec += localRun->fNelec; - fNgam += localRun->fNgam; - fNposit += localRun->fNposit; + fNelec += localRun->fNelec; + fNgam += localRun->fNgam; + fNposit += localRun->fNposit; - fNgamTar+= localRun->fNgamTar; + fNgamTar += localRun->fNgamTar; fNgamPh += localRun->fNgamPh; - fNeTar += localRun->fNeTar; - fNePh += localRun->fNePh; + fNeTar += localRun->fNeTar; + fNePh += localRun->fNePh; - fNstep += localRun->fNstep; - fNstepTarget += localRun->fNstepTarget; + fNstep += localRun->fNstep; + fNstepTarget += localRun->fNstepTarget; - fSumR += localRun->fSumR; + fSumR += localRun->fSumR; - for(int i=0; i<(int)fEdep.size(); i++) fEdep[i] += localRun->fEdep[i]; - for(int i=0; i<(int)fGammaE.size(); i++) fGammaE[i] += localRun->fGammaE[i]; - - G4Run::Merge(run); -} + for(int i = 0; i < (int) fEdep.size(); i++) + fEdep[i] += localRun->fEdep[i]; + for(int i = 0; i < (int) fGammaE.size(); i++) + fGammaE[i] += localRun->fGammaE[i]; + + G4Run::Merge(run); +} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -161,90 +158,95 @@ void Run::EndOfRun() G4cout << "Histo: End of run actions are started" << G4endl; // average - G4cout<<"========================================================"< 0) { x = 1.0/x; } - G4double xe = x*(G4double)fNelec; - G4double xg = x*(G4double)fNgam; - G4double xp = x*(G4double)fNposit; - G4double xs = x*(G4double)fNstep; - G4double xph= x*(G4double)fNgamPh; - G4double xes= x*(G4double)fNstepTarget; - G4double xgt= x*(G4double)fNgamTar; - G4double xet= x*(G4double)fNeTar; - G4double xphe= x*(G4double)fNePh; + G4cout << "========================================================" + << G4endl; + G4double x = (G4double) fNevt; + if(fNevt > 0) + { + x = 1.0 / x; + } + G4double xe = x * (G4double) fNelec; + G4double xg = x * (G4double) fNgam; + G4double xp = x * (G4double) fNposit; + G4double xs = x * (G4double) fNstep; + G4double xph = x * (G4double) fNgamPh; + G4double xes = x * (G4double) fNstepTarget; + G4double xgt = x * (G4double) fNgamTar; + G4double xet = x * (G4double) fNeTar; + G4double xphe = x * (G4double) fNePh; - G4cout << "Number of events " - << std::setprecision(8) << fNevt <IsActive()) { - + if(fAnalysisManager) + { + if(fAnalysisManager->IsActive()) + { // normalise histograms - for(G4int i=0; iGetH1(fHistoId[i])->scale(x); } G4double nr = fEdep[0]; - if(nr > 0.0) { nr = 1./nr; } + if(nr > 0.0) + { + nr = 1. / nr; + } fAnalysisManager->GetH1(fHistoId[0])->scale(nr); - - nr = sum*fStepR; - if(nr > 0.0) { nr = 1./nr; } + + nr = sum * fStepR; + if(nr > 0.0) + { + nr = 1. / nr; + } fAnalysisManager->GetH1(fHistoId[1])->scale(nr); - + fAnalysisManager->GetH1(fHistoId[3]) - ->scale(1000.0*cm3/(CLHEP::pi*fAbsorberR*fAbsorberR*fStepZ)); + ->scale(1000.0 * cm3 / (CLHEP::pi * fAbsorberR * fAbsorberR * fStepZ)); fAnalysisManager->GetH1(fHistoId[4]) - ->scale(1000.0*cm3*fVolumeR[0]/fStepZ); - + ->scale(1000.0 * cm3 * fVolumeR[0] / fStepZ); + // Write histogram file - if(!fAnalysisManager->Write()) { - G4Exception ("Histo::Save()", "hist01", FatalException, - "Cannot write ROOT file."); + if(!fAnalysisManager->Write()) + { + G4Exception("Histo::Save()", "hist01", FatalException, + "Cannot write ROOT file."); } G4cout << "### Histo::Save: Histograms are saved" << G4endl; - if(fAnalysisManager->CloseFile() && fVerbose) { + if(fAnalysisManager->CloseFile() && fVerbose) + { G4cout << " File is closed" << G4endl; } } @@ -252,35 +254,31 @@ void Run::EndOfRun() delete fAnalysisManager; fAnalysisManager = 0; } - - -} - +} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void Run::AddTargetPhoton(const G4DynamicParticle* p) { - ++fNgamTar; - if(fAnalysisManager) { - fAnalysisManager->FillH1(fHistoId[5],p->GetKineticEnergy()/MeV,1.0); + ++fNgamTar; + if(fAnalysisManager) + { + fAnalysisManager->FillH1(fHistoId[5], p->GetKineticEnergy() / MeV, 1.0); } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void Run::AddPhantomPhoton(const G4DynamicParticle*) -{ - ++fNgamPh; -} +void Run::AddPhantomPhoton(const G4DynamicParticle*) { ++fNgamPh; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void Run::AddTargetElectron(const G4DynamicParticle* p) { - ++fNeTar; - if(fAnalysisManager) { - fAnalysisManager->FillH1(fHistoId[8],p->GetKineticEnergy()/MeV,1.0); + ++fNeTar; + if(fAnalysisManager) + { + fAnalysisManager->FillH1(fHistoId[8], p->GetKineticEnergy() / MeV, 1.0); } } @@ -289,8 +287,9 @@ void Run::AddTargetElectron(const G4DynamicParticle* p) void Run::AddPhantomElectron(const G4DynamicParticle* p) { ++fNePh; - if(fAnalysisManager) { - fAnalysisManager->FillH1(fHistoId[7],p->GetKineticEnergy()/MeV,1.0); + if(fAnalysisManager) + { + fAnalysisManager->FillH1(fHistoId[7], p->GetKineticEnergy() / MeV, 1.0); } } @@ -298,57 +297,70 @@ void Run::AddPhantomElectron(const G4DynamicParticle* p) void Run::ScoreNewTrack(const G4Track* aTrack) { - - //Save primary parameters + // Save primary parameters const G4ParticleDefinition* particle = aTrack->GetParticleDefinition(); - G4int pid = aTrack->GetParentID(); - G4VPhysicalVolume* pv = aTrack->GetVolume(); - const G4DynamicParticle* dp = aTrack->GetDynamicParticle(); + G4int pid = aTrack->GetParentID(); + G4VPhysicalVolume* pv = aTrack->GetVolume(); + const G4DynamicParticle* dp = aTrack->GetDynamicParticle(); - //primary particle - if(0 == pid) { - - ++fNevt; - if(fVerbose) - { - G4ThreeVector pos = aTrack->GetVertexPosition(); - G4ThreeVector dir = aTrack->GetMomentumDirection(); - G4cout << "TrackingAction: Primary " - << particle->GetParticleName() - << " Ekin(MeV)= " - << aTrack->GetKineticEnergy()/MeV - << "; pos= " << pos << "; dir= " << dir << G4endl; - } - // secondary electron - } - else if (0 < pid && particle == fElectron) + // primary particle + if(0 == pid) + { + ++fNevt; + if(fVerbose) + { + G4ThreeVector pos = aTrack->GetVertexPosition(); + G4ThreeVector dir = aTrack->GetMomentumDirection(); + G4cout << "TrackingAction: Primary " << particle->GetParticleName() + << " Ekin(MeV)= " << aTrack->GetKineticEnergy() / MeV + << "; pos= " << pos << "; dir= " << dir << G4endl; + } + // secondary electron + } + else if(0 < pid && particle == fElectron) + { + if(fVerbose) + { + G4cout << "TrackingAction: Secondary electron " << G4endl; + } + AddElectron(); + if(pv == fPhantom) + { + AddPhantomElectron(dp); + } + else if(pv == fTarget1 || pv == fTarget2) + { + AddTargetElectron(dp); + } + + // secondary positron + } + else if(0 < pid && particle == fPositron) + { + if(fVerbose) { - if(fVerbose) { - G4cout << "TrackingAction: Secondary electron " << G4endl; - } - AddElectron(); - if(pv == fPhantom) { AddPhantomElectron(dp); } - else if(pv == fTarget1 || pv == fTarget2) { AddTargetElectron(dp); } - - // secondary positron - } - else if (0 < pid && particle == fPositron) { - if(fVerbose) { G4cout << "TrackingAction: Secondary positron " << G4endl; } AddPositron(); - + // secondary gamma - } - else if (0 < pid && particle == fGamma) { - if(fVerbose) { + } + else if(0 < pid && particle == fGamma) + { + if(fVerbose) + { G4cout << "TrackingAction: Secondary gamma; parentID= " << pid << " E= " << aTrack->GetKineticEnergy() << G4endl; } AddPhoton(); - if(pv == fPhantom) { AddPhantomPhoton(dp); } - else if(pv == fTarget1 || pv == fTarget2) { AddTargetPhoton(dp); } - + if(pv == fPhantom) + { + AddPhantomPhoton(dp); + } + else if(pv == fTarget1 || pv == fTarget2) + { + AddTargetPhoton(dp); + } } } @@ -358,89 +370,122 @@ void Run::AddPhantomGamma(G4double e, G4double r) { e /= MeV; fSumR += e; - G4int bin = (G4int)(e/fStepE); - if(bin >= fNBinsE) { bin = fNBinsE-1; } + G4int bin = (G4int)(e / fStepE); + if(bin >= fNBinsE) + { + bin = fNBinsE - 1; + } fGammaE[bin] += e; - G4int bin1 = (G4int)(r/fStepR); - if(bin1 >= fNBinsR) { bin1 = fNBinsR-1; } - if(fAnalysisManager) { - G4AnalysisManager::Instance()->FillH1(fHistoId[6],e,1.0); - G4AnalysisManager::Instance()->FillH1(fHistoId[9],r,e*fVolumeR[bin1]); + G4int bin1 = (G4int)(r / fStepR); + if(bin1 >= fNBinsR) + { + bin1 = fNBinsR - 1; + } + if(fAnalysisManager) + { + G4AnalysisManager::Instance()->FillH1(fHistoId[6], e, 1.0); + G4AnalysisManager::Instance()->FillH1(fHistoId[9], r, e * fVolumeR[bin1]); } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void Run::AddPhantomStep(G4double edep, G4double r1, G4double z1, - G4double r2, G4double z2, - G4double r0, G4double z0) +void Run::AddPhantomStep(G4double edep, G4double r1, G4double z1, G4double r2, + G4double z2, G4double r0, G4double z0) { ++fNstep; - G4int nzbin = (G4int)(z0/fStepZ); - if(fVerbose) { - G4cout << "Histo: edep(MeV)= " << edep/MeV << " at binz= " << nzbin - << " r1= " << r1 << " z1= " << z1 - << " r2= " << r2 << " z2= " << z2 - << " r0= " << r0 << " z0= " << z0 - << G4endl; + G4int nzbin = (G4int)(z0 / fStepZ); + if(fVerbose) + { + G4cout << "Histo: edep(MeV)= " << edep / MeV << " at binz= " << nzbin + << " r1= " << r1 << " z1= " << z1 << " r2= " << r2 << " z2= " << z2 + << " r0= " << r0 << " z0= " << z0 << G4endl; } - if(nzbin == fScoreBin) { - G4int bin = (G4int)(r0/fStepR); - if(bin >= fNBinsR) { bin = fNBinsR-1; } - double w = edep*fVolumeR[bin]; + if(nzbin == fScoreBin) + { + G4int bin = (G4int)(r0 / fStepR); + if(bin >= fNBinsR) + { + bin = fNBinsR - 1; + } + double w = edep * fVolumeR[bin]; fEdep[bin] += w; - if(fAnalysisManager) { - G4AnalysisManager::Instance()->FillH1(fHistoId[0],r0,w); - G4AnalysisManager::Instance()->FillH1(fHistoId[1],r0,w); - G4AnalysisManager::Instance()->FillH1(fHistoId[2],r0,w); + if(fAnalysisManager) + { + G4AnalysisManager::Instance()->FillH1(fHistoId[0], r0, w); + G4AnalysisManager::Instance()->FillH1(fHistoId[1], r0, w); + G4AnalysisManager::Instance()->FillH1(fHistoId[2], r0, w); } } - G4int bin1 = (G4int)(z1/fStepZ); - if(bin1 >= fNBinsZ) { bin1 = fNBinsZ-1; } - G4int bin2 = (G4int)(z2/fStepZ); - if(bin2 >= fNBinsZ) { bin2 = fNBinsZ-1; } - if(bin1 == bin2) { - if(fAnalysisManager) { - G4AnalysisManager::Instance()->FillH1(fHistoId[3],z0,edep); - if(r1 < fStepR) { + G4int bin1 = (G4int)(z1 / fStepZ); + if(bin1 >= fNBinsZ) + { + bin1 = fNBinsZ - 1; + } + G4int bin2 = (G4int)(z2 / fStepZ); + if(bin2 >= fNBinsZ) + { + bin2 = fNBinsZ - 1; + } + if(bin1 == bin2) + { + if(fAnalysisManager) + { + G4AnalysisManager::Instance()->FillH1(fHistoId[3], z0, edep); + if(r1 < fStepR) + { G4double w = edep; - if(r2 > fStepR) { w *= (fStepR - r1)/(r2 - r1); } - G4AnalysisManager::Instance()->FillH1(fHistoId[4],z0,w); + if(r2 > fStepR) + { + w *= (fStepR - r1) / (r2 - r1); + } + G4AnalysisManager::Instance()->FillH1(fHistoId[4], z0, w); } } - } else { + } + else + { G4int bin; - if(bin2 < bin1) { - bin = bin2; + if(bin2 < bin1) + { + bin = bin2; G4double z = z2; - bin2 = bin1; - z2 = z1; - bin1 = bin; - z1 = z; + bin2 = bin1; + z2 = z1; + bin1 = bin; + z1 = z; } G4double zz1 = z1; - G4double zz2 = (bin1+1)*fStepZ; + G4double zz2 = (bin1 + 1) * fStepZ; G4double rr1 = r1; G4double dz = z2 - z1; G4double dr = r2 - r1; - G4double rr2 = r1 + dr*(zz2-zz1)/dz; - for(bin=bin1; bin<=bin2; bin++) { - if(fAnalysisManager) { - G4double de = edep*(zz2 - zz1)/dz; - G4double zf = (zz1+zz2)*0.5; - { G4AnalysisManager::Instance()->FillH1(fHistoId[3],zf,de); } - if(rr1 < fStepR) { + G4double rr2 = r1 + dr * (zz2 - zz1) / dz; + for(bin = bin1; bin <= bin2; bin++) + { + if(fAnalysisManager) + { + G4double de = edep * (zz2 - zz1) / dz; + G4double zf = (zz1 + zz2) * 0.5; + { + G4AnalysisManager::Instance()->FillH1(fHistoId[3], zf, de); + } + if(rr1 < fStepR) + { G4double w = de; - if(rr2 > fStepR) w *= (fStepR - rr1)/(rr2 - rr1); - { G4AnalysisManager::Instance()->FillH1(fHistoId[4],zf,w); } + if(rr2 > fStepR) + w *= (fStepR - rr1) / (rr2 - rr1); + { + G4AnalysisManager::Instance()->FillH1(fHistoId[4], zf, w); + } } } zz1 = zz2; - zz2 = std::min(z2, zz1+fStepZ); + zz2 = std::min(z2, zz1 + fStepZ); rr1 = rr2; - rr2 = rr1 + dr*(zz2 - zz1)/dz; + rr2 = rr1 + dr * (zz2 - zz1) / dz; } } } diff --git a/examples/extended/medical/GammaTherapy/src/RunAction.cc b/examples/extended/medical/GammaTherapy/src/RunAction.cc index 89018f1b49..836d903915 100644 --- a/examples/extended/medical/GammaTherapy/src/RunAction.cc +++ b/examples/extended/medical/GammaTherapy/src/RunAction.cc @@ -29,7 +29,7 @@ // // ------------------------------------------------------------- // -// GEANT4 +// GEANT4 // // ------------------------------------------------------------- @@ -47,8 +47,11 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -RunAction::RunAction(DetectorConstruction* det, PrimaryGeneratorAction* kin) - :G4UserRunAction(),fDetector(det), fPrimary(kin), fRun(0), fHistoManager(0) +RunAction::RunAction(DetectorConstruction* det) + : G4UserRunAction() + , fDetector(det) + , fRun(0) + , fHistoManager(0) { // Book predefined histograms fHistoManager = new HistoManager(); @@ -57,23 +60,16 @@ RunAction::RunAction(DetectorConstruction* det, PrimaryGeneratorAction* kin) //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -RunAction::~RunAction() -{ -#ifdef G4MULTITHREADED - if (isMaster) delete fPrimary; -#endif - delete fHistoManager; -} +RunAction::~RunAction() { delete fHistoManager; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4Run* RunAction::GenerateRun() -{ - fRun = new Run(fDetector,fPrimary,fHistoManager); +{ + fRun = new Run(fDetector, fHistoManager); return fRun; } - void RunAction::BeginOfRunAction(const G4Run*) { // save Rndm status @@ -81,33 +77,36 @@ void RunAction::BeginOfRunAction(const G4Run*) // if (isMaster) G4Random::showEngineStatus(); CLHEP::HepRandom::showEngineStatus(); - - //histograms - // + + // histograms + // G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); - if ( analysisManager->IsActive() ) { + if(analysisManager->IsActive()) + { analysisManager->OpenFile(); - } + } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void RunAction::EndOfRunAction(const G4Run*) -{ +{ // print Run summary // - if (isMaster) fRun->EndOfRun(); - + if(isMaster) + fRun->EndOfRun(); + // save histograms - G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); - if ( analysisManager->IsActive() ) { + G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); + if(analysisManager->IsActive()) + { analysisManager->Write(); analysisManager->CloseFile(); - } + } // show Rndm status - if (isMaster) G4Random::showEngineStatus(); + if(isMaster) + G4Random::showEngineStatus(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - diff --git a/examples/extended/medical/History b/examples/extended/medical/History index d87e2903d7..afa2625f1a 100644 --- a/examples/extended/medical/History +++ b/examples/extended/medical/History @@ -14,6 +14,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-2020 B. Morgan (exMedical-V10-06-01) +- Migration to G4RunManagerFactory. + +03-11-2020 B. Morgan (exMedical-V10-06-00) +- Support same CMake version range as core Geant4 + 19-11-2018 I. Hrivnacova (exMedical-V10-04-00) - Updated README, CMake - new DICOM2 example @@ -31,4 +37,4 @@ track of all tags. 21-09-12 I. Hrivnacova (exMedical-V09-05-00) - Adding explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh -- Replaced tabulators with space characters +- Replaced tabulators with space characters diff --git a/examples/extended/medical/dna/CMakeLists.txt b/examples/extended/medical/dna/CMakeLists.txt index f6bc84b776..296e1d1626 100644 --- a/examples/extended/medical/dna/CMakeLists.txt +++ b/examples/extended/medical/dna/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all dna examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() ## chem4/plot requires ROOT built with GUI #option(BUILD_CHEM4_PLOT "Build chem4/plot" OFF) diff --git a/examples/extended/medical/dna/History b/examples/extended/medical/dna/History index 34fc0d1e27..46195efd9a 100644 --- a/examples/extended/medical/dna/History +++ b/examples/extended/medical/dna/History @@ -14,6 +14,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +06-11-2020 I. Hrivnacova (exdna-V10-06-04) +- Added new chem6 example in the category README + 29-04-2020 W. G. Shin (exdna-V10-06-03) - Fixed warning message on chem6 example diff --git a/examples/extended/medical/dna/README b/examples/extended/medical/dna/README index 8919821ec4..8c848eafa5 100644 --- a/examples/extended/medical/dna/README +++ b/examples/extended/medical/dna/README @@ -61,7 +61,9 @@ This directory contains a set of Geant4-DNA examples. - chem3 Activate the full interactivity with the chemistry module. - chem4 Simulation of radiochemical yields with the chemistry module. - chem5 Variation of chem4, using the contructors G4EmDNAPhysics_option8 and - G4EmDNAChemistry_option1 + G4EmDNAChemistry_option1. + - chem6 Scoring of the radiochemical yield G defined as a function of time + and LET. Geometry and other diff --git a/examples/extended/medical/dna/chem1/CMakeLists.txt b/examples/extended/medical/dna/chem1/CMakeLists.txt index 0cde6a0dc3..b418e7604b 100644 --- a/examples/extended/medical/dna/chem1/CMakeLists.txt +++ b/examples/extended/medical/dna/chem1/CMakeLists.txt @@ -1,6 +1,9 @@ #------------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(chem1) #------------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/chem1/History b/examples/extended/medical/dna/chem1/History index 630e86456a..362787311d 100644 --- a/examples/extended/medical/dna/chem1/History +++ b/examples/extended/medical/dna/chem1/History @@ -14,6 +14,10 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10.11.2020 Ben Morgan tag chem1-V10-06-00 +----------------------------------------------------- +- Migration to G4RunManagerFactory. + 08.02.2019 VI, WGS, SI tag chem1-V10-05-00 ----------------------------------------------------- - Fixed PhysicsList diff --git a/examples/extended/medical/dna/chem1/chem1.cc b/examples/extended/medical/dna/chem1/chem1.cc index 23ea2cd4ea..44371987e7 100644 --- a/examples/extended/medical/dna/chem1/chem1.cc +++ b/examples/extended/medical/dna/chem1/chem1.cc @@ -38,11 +38,7 @@ #include "PhysicsList.hh" #include "ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4DNAChemistryManager.hh" #include "G4UImanager.hh" @@ -79,8 +75,7 @@ int main(int argc, char** argv) // Command* commandLine(nullptr); -#ifdef G4MULTITHREADED - G4MTRunManager* runManager= new G4MTRunManager; + auto* runManager= G4RunManagerFactory::CreateRunManager(); if ((commandLine = parser->GetCommandIfActive("-mt"))) { int nThreads = 2; @@ -92,14 +87,10 @@ int main(int argc, char** argv) { nThreads = G4UIcommand::ConvertToInt(commandLine->GetOption()); } - G4cout << "===== Chem1 is started with " << nThreads - << " threads =====" << G4endl; - runManager->SetNumberOfThreads(nThreads); + G4cout << "===== Chem1 is started with " << runManager->GetNumberOfThreads() + << " threads =====" << G4endl; } -#else - G4RunManager* runManager = new G4RunManager(); -#endif ////////// @@ -142,7 +133,7 @@ int main(int argc, char** argv) UImanager->ApplyCommand("/control/execute vis.mac"); } - if(ui->IsGUI()) + if(ui->IsGUI()) { UImanager->ApplyCommand("/control/execute gui.mac"); } @@ -159,7 +150,7 @@ int main(int argc, char** argv) UImanager->ApplyCommand(G4String("/vis/open ")+commandLine->GetOption()); UImanager->ApplyCommand("/control/execute vis.mac"); } - + if ((commandLine = parser->GetCommandIfActive("-mac"))) { G4String command = "/control/execute "; @@ -204,17 +195,15 @@ void Parse(int& argc, char** argv) "macFile.mac"); // You cann your own command, as for instance: -// parser->AddCommand("-seed", +// parser->AddCommand("-seed", // Command::WithOption, // "Give a seed value in argument to be tested", "seed"); // it is then up to you to manage this option -#ifdef G4MULTITHREADED parser->AddCommand("-mt", Command::WithOption, "Launch in MT mode (events computed in parallel," " NOT RECOMMANDED WITH CHEMISTRY)", "2"); -#endif parser->AddCommand("-chemOFF", Command::WithoutOption, "Deactivate chemistry"); diff --git a/examples/extended/medical/dna/chem1/chem1.out b/examples/extended/medical/dna/chem1/chem1.out index 5503f7ad31..0f829ba247 100644 --- a/examples/extended/medical/dna/chem1/chem1.out +++ b/examples/extended/medical/dna/chem1/chem1.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -72,9 +73,9 @@ e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -304,213 +305,220 @@ At time : 559.14 ps Reaction : OH^0 (-1089) + OH^0 (-642) -> H2O2^0 (-1178) At time : 588.29 ps Reaction : OH^0 (-836) + OH^0 (-838) -> H2O2^0 (-1179) At time : 607.52 ps Reaction : e_aq^-1 (-440) + OH^0 (-716) -> OH^-1 (-1180) At time : 608.52 ps Reaction : OH^0 (-1009) + e_aq^-1 (-952) -> OH^-1 (-1181) -At time : 618.36 ps Reaction : OH^0 (-1051) + OH^0 (-710) -> H2O2^0 (-1182) +At time : 618.37 ps Reaction : OH^0 (-1051) + OH^0 (-710) -> H2O2^0 (-1182) At time : 627.64 ps Reaction : OH^0 (-1007) + H^0 (-1005) -> No product -At time : 678.82 ps Reaction : OH^-1 (-1181) + H3O^1 (-751) -> No product -At time : 707.51 ps Reaction : e_aq^-1 (-527) + OH^0 (-896) -> OH^-1 (-1183) -At time : 757.57 ps Reaction : H3O^1 (-791) + OH^-1 (-1175) -> No product -At time : 825.65 ps Reaction : OH^0 (-1083) + OH^0 (-790) -> H2O2^0 (-1184) -At time : 884.35 ps Reaction : e_aq^-1 (-326) + OH^0 (-748) -> OH^-1 (-1185) -At time : 925.89 ps Reaction : OH^0 (-932) + e_aq^-1 (-934) -> OH^-1 (-1186) -At time : 989.43 ps Reaction : H3O^1 (-957) + e_aq^-1 (-958) -> H^0 (-1187) -At time : 995.45 ps Reaction : OH^0 (-576) + H^0 (-1163) -> No product -At time : 1.0549 ns Reaction : OH^0 (-1099) + OH^0 (-1023) -> H2O2^0 (-1188) -At time : 1.0724 ns Reaction : e_aq^-1 (-340) + H3O^1 (-757) -> H^0 (-1189) -At time : 1.1935 ns Reaction : e_aq^-1 (-174) + H3O^1 (-817) -> H^0 (-1190) -At time : 1.2218 ns Reaction : H3O^1 (-915) + e_aq^-1 (-916) -> H^0 (-1191) -At time : 1.2469 ns Reaction : OH^0 (-672) + OH^0 (-704) -> H2O2^0 (-1192) -At time : 1.2509 ns Reaction : e_aq^-1 (-91) + H3O^1 (-847) -> H^0 (-1193) -At time : 1.3623 ns Reaction : e_aq^-1 (-208) + e_aq^-1 (-347) -> OH^-1 (-1194) + OH^-1 (-1195) + H_2^0 (-1196) -At time : 1.3803 ns Reaction : e_aq^-1 (-472) + OH^0 (-568) -> OH^-1 (-1197) -At time : 1.3844 ns Reaction : e_aq^-1 (-281) + OH^0 (-586) -> OH^-1 (-1198) -At time : 1.4039 ns Reaction : e_aq^-1 (-483) + OH^0 (-698) -> OH^-1 (-1199) -At time : 1.4226 ns Reaction : OH^0 (-738) + H^0 (-972) -> No product -At time : 1.428 ns Reaction : OH^0 (-650) + OH^0 (-1140) -> H2O2^0 (-1200) -At time : 1.5272 ns Reaction : OH^0 (-570) + OH^0 (-700) -> H2O2^0 (-1201) -At time : 1.5972 ns Reaction : H^0 (-1001) + OH^0 (-622) -> No product -At time : 1.6465 ns Reaction : OH^0 (-602) + OH^0 (-884) -> H2O2^0 (-1202) -At time : 1.6857 ns Reaction : e_aq^-1 (-247) + H3O^1 (-954) -> H^0 (-1203) -At time : 1.7414 ns Reaction : e_aq^-1 (-466) + OH^0 (-712) -> OH^-1 (-1204) -At time : 1.8053 ns Reaction : OH^-1 (-1170) + H3O^1 (-813) -> No product -At time : 1.9063 ns Reaction : OH^-1 (-1166) + H3O^1 (-933) -> No product -At time : 1.9841 ns Reaction : H^0 (-1054) + e_aq^-1 (-431) -> OH^-1 (-1205) + H_2^0 (-1206) -At time : 2.0478 ns Reaction : H3O^1 (-845) + OH^-1 (-1150) -> No product -At time : 2.0891 ns Reaction : OH^0 (-846) + OH^0 (-929) -> H2O2^0 (-1207) -At time : 2.1991 ns Reaction : H3O^1 (-633) + OH^-1 (-1185) -> No product -At time : 2.2374 ns Reaction : e_aq^-1 (-207) + OH^0 (-870) -> OH^-1 (-1208) -At time : 2.2705 ns Reaction : e_aq^-1 (-102) + OH^0 (-852) -> OH^-1 (-1209) -At time : 2.3352 ns Reaction : e_aq^-1 (-423) + OH^0 (-718) -> OH^-1 (-1210) -At time : 2.3475 ns Reaction : H3O^1 (-655) + OH^-1 (-1209) -> No product -At time : 2.3783 ns Reaction : e_aq^-1 (-245) + H3O^1 (-771) -> H^0 (-1211) -At time : 2.5101 ns Reaction : OH^-1 (-1199) + H3O^1 (-705) -> No product -At time : 2.5613 ns Reaction : e_aq^-1 (-496) + OH^0 (-604) -> OH^-1 (-1212) -At time : 2.788 ns Reaction : OH^0 (-1065) + OH^0 (-588) -> H2O2^0 (-1213) -At time : 3.0001 ns Reaction : e_aq^-1 (-497) + OH^0 (-616) -> OH^-1 (-1214) -At time : 3.4579 ns Reaction : OH^0 (-1059) + OH^0 (-941) -> H2O2^0 (-1215) -At time : 3.4987 ns Reaction : e_aq^-1 (-461) + H3O^1 (-715) -> H^0 (-1216) -At time : 3.5248 ns Reaction : e_aq^-1 (-151) + H2O2^0 (-1156) -> OH^-1 (-1217) + OH^0 (-1218) -At time : 3.6396 ns Reaction : H^0 (-1028) + OH^0 (-890) -> No product -At time : 3.6954 ns Reaction : OH^-1 (-1197) + H3O^1 (-569) -> No product -At time : 3.9555 ns Reaction : OH^-1 (-1174) + H3O^1 (-927) -> No product -At time : 4.0469 ns Reaction : e_aq^-1 (-306) + OH^0 (-758) -> OH^-1 (-1219) -At time : 4.0921 ns Reaction : H^0 (-1191) + e_aq^-1 (-955) -> OH^-1 (-1220) + H_2^0 (-1221) -At time : 4.1062 ns Reaction : OH^-1 (-1214) + H3O^1 (-709) -> No product -At time : 4.1219 ns Reaction : OH^0 (-628) + OH^0 (-946) -> H2O2^0 (-1222) -At time : 4.1611 ns Reaction : H3O^1 (-697) + OH^-1 (-1204) -> No product -At time : 4.2106 ns Reaction : e_aq^-1 (-283) + H^0 (-1203) -> OH^-1 (-1223) + H_2^0 (-1224) -At time : 4.2162 ns Reaction : e_aq^-1 (-131) + H3O^1 (-827) -> H^0 (-1225) -At time : 4.5643 ns Reaction : OH^0 (-1122) + OH^0 (-1127) -> H2O2^0 (-1226) -At time : 4.6292 ns Reaction : H3O^1 (-647) + OH^-1 (-1217) -> No product -At time : 4.6719 ns Reaction : e_aq^-1 (-371) + OH^0 (-744) -> OH^-1 (-1227) -At time : 4.759 ns Reaction : e_aq^-1 (-158) + OH^0 (-830) -> OH^-1 (-1228) -At time : 4.7976 ns Reaction : e_aq^-1 (-554) + OH^0 (-906) -> OH^-1 (-1229) -At time : 4.8342 ns Reaction : e_aq^-1 (-273) + H3O^1 (-787) -> H^0 (-1230) -At time : 4.9217 ns Reaction : e_aq^-1 (-190) + OH^0 (-956) -> OH^-1 (-1231) -At time : 5.2113 ns Reaction : OH^0 (-1069) + e_aq^-1 (-913) -> OH^-1 (-1232) -At time : 5.2133 ns Reaction : e_aq^-1 (-344) + H^0 (-1157) -> OH^-1 (-1233) + H_2^0 (-1234) -At time : 5.3147 ns Reaction : e_aq^-1 (-558) + H3O^1 (-907) -> H^0 (-1235) -At time : 5.4149 ns Reaction : OH^0 (-1055) + OH^0 (-582) -> H2O2^0 (-1236) -At time : 5.5166 ns Reaction : H3O^1 (-1008) + OH^-1 (-1186) -> No product -At time : 5.6629 ns Reaction : H3O^1 (-615) + OH^-1 (-1180) -> No product -At time : 6.0192 ns Reaction : e_aq^-1 (-274) + OH^0 (-973) -> OH^-1 (-1237) -At time : 6.1152 ns Reaction : e_aq^-1 (-492) + H3O^1 (-711) -> H^0 (-1238) -At time : 6.275 ns Reaction : OH^-1 (-1227) + H3O^1 (-743) -> No product -At time : 6.8891 ns Reaction : e_aq^-1 (-467) + OH^0 (-1052) -> OH^-1 (-1239) -At time : 6.9107 ns Reaction : OH^0 (-1101) + e_aq^-1 (-171) -> OH^-1 (-1240) -At time : 6.9943 ns Reaction : H3O^1 (-1019) + OH^-1 (-1223) -> No product -At time : 7.0189 ns Reaction : e_aq^-1 (-425) + H3O^1 (-879) -> H^0 (-1241) -At time : 7.0239 ns Reaction : H3O^1 (-643) + OH^-1 (-1219) -> No product -At time : 7.0626 ns Reaction : OH^-1 (-1198) + H3O^1 (-773) -> No product -At time : 7.3937 ns Reaction : OH^0 (-784) + H^0 (-1165) -> No product -At time : 7.5037 ns Reaction : e_aq^-1 (-487) + OH^0 (-624) -> OH^-1 (-1242) -At time : 7.799 ns Reaction : e_aq^-1 (-140) + H3O^1 (-855) -> H^0 (-1243) -At time : 7.8757 ns Reaction : H3O^1 (-1029) + e_aq^-1 (-556) -> H^0 (-1244) -At time : 7.9577 ns Reaction : OH^-1 (-1210) + H3O^1 (-883) -> No product -At time : 8.1748 ns Reaction : H3O^1 (-869) + OH^-1 (-1233) -> No product -At time : 8.5898 ns Reaction : e_aq^-1 (-173) + H3O^1 (-805) -> H^0 (-1245) -At time : 8.9676 ns Reaction : OH^0 (-1014) + OH^0 (-764) -> H2O2^0 (-1246) -At time : 9.6139 ns Reaction : H3O^1 (-645) + OH^-1 (-1231) -> No product -At time : 9.6558 ns Reaction : H3O^1 (-781) + OH^-1 (-1237) -> No product -At time : 10.282 ns Reaction : OH^0 (-1073) + e_aq^-1 (-264) -> OH^-1 (-1247) -At time : 10.371 ns Reaction : OH^0 (-776) + OH^0 (-780) -> H2O2^0 (-1248) -At time : 10.477 ns Reaction : e_aq^-1 (-476) + H2O2^0 (-1145) -> OH^-1 (-1249) + OH^0 (-1250) -At time : 10.915 ns Reaction : e_aq^-1 (-116) + OH^0 (-860) -> OH^-1 (-1251) -At time : 11.494 ns Reaction : OH^-1 (-1240) + H3O^1 (-829) -> No product -At time : 11.613 ns Reaction : e_aq^-1 (-145) + H^0 (-1243) -> OH^-1 (-1252) + H_2^0 (-1253) -At time : 11.697 ns Reaction : e_aq^-1 (-464) + OH^0 (-882) -> OH^-1 (-1254) -At time : 11.948 ns Reaction : e_aq^-1 (-304) + H3O^1 (-763) -> H^0 (-1255) -At time : 12.472 ns Reaction : H^0 (-1011) + H^0 (-1143) -> H_2^0 (-1256) -At time : 12.676 ns Reaction : OH^0 (-590) + OH^0 (-950) -> H2O2^0 (-1257) -At time : 12.925 ns Reaction : e_aq^-1 (-463) + OH^0 (-584) -> OH^-1 (-1258) -At time : 13.376 ns Reaction : e_aq^-1 (-120) + H^0 (-978) -> OH^-1 (-1259) + H_2^0 (-1260) -At time : 14.168 ns Reaction : e_aq^-1 (-561) + OH^0 (-935) -> OH^-1 (-1261) -At time : 15.17 ns Reaction : e_aq^-1 (-520) + H3O^1 (-607) -> H^0 (-1262) -At time : 16.161 ns Reaction : e_aq^-1 (-275) + OH^0 (-770) -> OH^-1 (-1263) -At time : 18.477 ns Reaction : OH^0 (-996) + e_aq^-1 (-176) -> OH^-1 (-1264) -At time : 18.979 ns Reaction : e_aq^-1 (-209) + H2O2^0 (-1257) -> OH^-1 (-1265) + OH^0 (-1266) -At time : 19.025 ns Reaction : e_aq^-1 (-150) + H2O2^0 (-1173) -> OH^-1 (-1267) + OH^0 (-1268) -At time : 19.358 ns Reaction : e_aq^-1 (-404) + OH^0 (-670) -> OH^-1 (-1269) -At time : 20.29 ns Reaction : OH^0 (-982) + e_aq^-1 (-109) -> OH^-1 (-1270) -At time : 22.037 ns Reaction : OH^0 (-646) + OH^0 (-816) -> H2O2^0 (-1271) -At time : 23.107 ns Reaction : OH^-1 (-1269) + H3O^1 (-942) -> No product -At time : 23.236 ns Reaction : e_aq^-1 (-374) + H3O^1 (-873) -> H^0 (-1272) -At time : 23.27 ns Reaction : H^0 (-1084) + OH^0 (-794) -> No product -At time : 24.166 ns Reaction : H3O^1 (-681) + OH^-1 (-1229) -> No product -At time : 24.236 ns Reaction : e_aq^-1 (-460) + H2O2^0 (-1215) -> OH^-1 (-1273) + OH^0 (-1274) -At time : 24.586 ns Reaction : e_aq^-1 (-378) + H3O^1 (-571) -> H^0 (-1275) -At time : 26.051 ns Reaction : e_aq^-1 (-114) + OH^0 (-854) -> OH^-1 (-1276) -At time : 26.365 ns Reaction : e_aq^-1 (-250) + OH^0 (-778) -> OH^-1 (-1277) -At time : 27.318 ns Reaction : e_aq^-1 (-422) + OH^0 (-722) -> OH^-1 (-1278) -At time : 30.13 ns Reaction : OH^0 (-660) + OH^0 (-826) -> H2O2^0 (-1279) -At time : 30.899 ns Reaction : e_aq^-1 (-484) + OH^0 (-706) -> OH^-1 (-1280) -At time : 31.416 ns Reaction : H^0 (-1142) + OH^0 (-858) -> No product -At time : 35.628 ns Reaction : e_aq^-1 (-394) + H3O^1 (-579) -> H^0 (-1281) -At time : 38.336 ns Reaction : H3O^1 (-745) + OH^-1 (-1194) -> No product -At time : 38.607 ns Reaction : e_aq^-1 (-406) + OH^0 (-598) -> OH^-1 (-1282) -At time : 39.458 ns Reaction : OH^-1 (-1265) + H3O^1 (-871) -> No product -At time : 39.539 ns Reaction : H3O^1 (-1046) + OH^-1 (-1249) -> No product -At time : 41.551 ns Reaction : e_aq^-1 (-386) + OH^0 (-724) -> OH^-1 (-1283) -At time : 41.882 ns Reaction : e_aq^-1 (-199) + OH^0 (-872) -> OH^-1 (-1284) -At time : 41.889 ns Reaction : H3O^1 (-1063) + OH^-1 (-1283) -> No product -At time : 44.641 ns Reaction : OH^0 (-1025) + e_aq^-1 (-111) -> OH^-1 (-1285) -At time : 46.12 ns Reaction : H^0 (-1071) + e_aq^-1 (-307) -> OH^-1 (-1286) + H_2^0 (-1287) -At time : 47.378 ns Reaction : e_aq^-1 (-384) + H^0 (-1281) -> OH^-1 (-1288) + H_2^0 (-1289) -At time : 48.01 ns Reaction : e_aq^-1 (-925) + OH^0 (-945) -> OH^-1 (-1290) -At time : 49.872 ns Reaction : e_aq^-1 (-372) + OH^0 (-726) -> OH^-1 (-1291) -At time : 51.31 ns Reaction : e_aq^-1 (-169) + H^0 (-976) -> OH^-1 (-1292) + H_2^0 (-1293) -At time : 55.453 ns Reaction : OH^0 (-750) + H^0 (-1225) -> No product -At time : 56.175 ns Reaction : e_aq^-1 (-188) + H^0 (-1190) -> OH^-1 (-1294) + H_2^0 (-1295) -At time : 57.628 ns Reaction : OH^0 (-824) + e_aq^-1 (-928) -> OH^-1 (-1296) -At time : 58.639 ns Reaction : e_aq^-1 (-128) + OH^0 (-654) -> OH^-1 (-1297) -At time : 62.15 ns Reaction : e_aq^-1 (-493) + H3O^1 (-617) -> H^0 (-1298) -At time : 64.123 ns Reaction : e_aq^-1 (-335) + OH^0 (-634) -> OH^-1 (-1299) -At time : 65.788 ns Reaction : OH^0 (-1013) + e_aq^-1 (-922) -> OH^-1 (-1300) -At time : 68.046 ns Reaction : H3O^1 (-659) + OH^-1 (-1296) -> No product -At time : 75.826 ns Reaction : H3O^1 (-789) + OH^-1 (-1247) -> No product -At time : 84.424 ns Reaction : OH^0 (-1116) + e_aq^-1 (-515) -> OH^-1 (-1301) -At time : 88.748 ns Reaction : e_aq^-1 (-313) + H3O^1 (-755) -> H^0 (-1302) -At time : 100.84 ns Reaction : OH^-1 (-1299) + H3O^1 (-841) -> No product -At time : 102.81 ns Reaction : H3O^1 (-587) + OH^-1 (-1232) -> No product -At time : 108.62 ns Reaction : OH^0 (-991) + OH^0 (-971) -> H2O2^0 (-1303) -At time : 116.91 ns Reaction : e_aq^-1 (-413) + H3O^1 (-713) -> H^0 (-1304) -At time : 117.06 ns Reaction : OH^0 (-762) + OH^0 (-798) -> H2O2^0 (-1305) -At time : 123.16 ns Reaction : OH^-1 (-1267) + H3O^1 (-759) -> No product -At time : 127.27 ns Reaction : e_aq^-1 (-480) + OH^0 (-618) -> OH^-1 (-1306) -At time : 128.8 ns Reaction : e_aq^-1 (-303) + OH^0 (-768) -> OH^-1 (-1307) -At time : 134.46 ns Reaction : H3O^1 (-727) + OH^-1 (-1291) -> No product -At time : 141.3 ns Reaction : H^0 (-1096) + e_aq^-1 (-357) -> OH^-1 (-1308) + H_2^0 (-1309) -At time : 141.85 ns Reaction : e_aq^-1 (-196) + OH^0 (-782) -> OH^-1 (-1310) -At time : 148.75 ns Reaction : H^0 (-1114) + e_aq^-1 (-358) -> OH^-1 (-1311) + H_2^0 (-1312) -At time : 156.42 ns Reaction : H^0 (-1211) + H^0 (-1255) -> H_2^0 (-1313) -At time : 157.36 ns Reaction : OH^-1 (-1284) + H3O^1 (-729) -> No product -At time : 168.37 ns Reaction : H3O^1 (-581) + OH^-1 (-1280) -> No product -At time : 169.44 ns Reaction : H3O^1 (-1078) + OH^-1 (-1277) -> No product -At time : 174.74 ns Reaction : e_aq^-1 (-505) + H3O^1 (-671) -> H^0 (-1314) -At time : 184.78 ns Reaction : H3O^1 (-605) + OH^-1 (-1212) -> No product -At time : 184.8 ns Reaction : e_aq^-1 (-507) + OH^0 (-962) -> OH^-1 (-1315) -At time : 196.96 ns Reaction : OH^-1 (-1286) + H3O^1 (-1006) -> No product -At time : 199.98 ns Reaction : e_aq^-1 (-392) + H2O2^0 (-1161) -> OH^-1 (-1316) + OH^0 (-1317) -At time : 231.57 ns Reaction : H3O^1 (-601) + OH^-1 (-1273) -> No product -At time : 250.08 ns Reaction : H^0 (-1058) + OH^0 (-596) -> No product -At time : 258.67 ns Reaction : H3O^1 (-741) + OH^-1 (-1252) -> No product -At time : 261.37 ns Reaction : e_aq^-1 (-334) + OH^0 (-1218) -> OH^-1 (-1318) -At time : 265.44 ns Reaction : OH^0 (-1119) + e_aq^-1 (-548) -> OH^-1 (-1319) -At time : 266.7 ns Reaction : OH^-1 (-1259) + H3O^1 (-930) -> No product -At time : 304.53 ns Reaction : OH^0 (-1044) + e_aq^-1 (-439) -> OH^-1 (-1320) -At time : 309.25 ns Reaction : OH^0 (-600) + H^0 (-968) -> No product -At time : 320.07 ns Reaction : e_aq^-1 (-352) + H3O^1 (-921) -> H^0 (-1321) -At time : 330.95 ns Reaction : H3O^1 (-603) + OH^-1 (-1297) -> No product -At time : 354.14 ns Reaction : H3O^1 (-893) + OH^-1 (-1258) -> No product -At time : 354.33 ns Reaction : e_aq^-1 (-537) + OH^0 (-894) -> OH^-1 (-1322) -At time : 359.17 ns Reaction : e_aq^-1 (-93) + H2O2^0 (-1179) -> OH^-1 (-1323) + OH^0 (-1324) -At time : 375.64 ns Reaction : e_aq^-1 (-327) + OH^0 (-911) -> OH^-1 (-1325) -At time : 377.71 ns Reaction : H3O^1 (-701) + OH^-1 (-1242) -> No product -At time : 457.56 ns Reaction : OH^0 (-678) + OH^0 (-898) -> H2O2^0 (-1326) -At time : 457.81 ns Reaction : e_aq^-1 (-516) + OH^0 (-969) -> OH^-1 (-1327) -At time : 508.67 ns Reaction : H3O^1 (-1088) + OH^-1 (-1205) -> No product -At time : 542.73 ns Reaction : e_aq^-1 (-563) + H^0 (-1244) -> OH^-1 (-1328) + H_2^0 (-1329) -At time : 555.38 ns Reaction : e_aq^-1 (-388) + OH^0 (-886) -> OH^-1 (-1330) -At time : 560.62 ns Reaction : e_aq^-1 (-270) + H3O^1 (-699) -> H^0 (-1331) -At time : 587.55 ns Reaction : H^0 (-1262) + e_aq^-1 (-943) -> OH^-1 (-1332) + H_2^0 (-1333) -At time : 596.46 ns Reaction : OH^-1 (-1276) + H3O^1 (-657) -> No product -At time : 612.23 ns Reaction : H3O^1 (-895) + e_aq^-1 (-937) -> H^0 (-1334) -At time : 613.23 ns Reaction : e_aq^-1 (-510) + H^0 (-1314) -> OH^-1 (-1335) + H_2^0 (-1336) -At time : 613.24 ns Reaction : OH^-1 (-1288) + H3O^1 (-725) -> No product -At time : 628.99 ns Reaction : OH^-1 (-1310) + H3O^1 (-811) -> No product -At time : 698.65 ns Reaction : e_aq^-1 (-252) + H3O^1 (-599) -> H^0 (-1337) -At time : 703.16 ns Reaction : e_aq^-1 (-88) + OH^0 (-1324) -> OH^-1 (-1338) -At time : 746.9 ns Reaction : H3O^1 (-1041) + e_aq^-1 (-964) -> H^0 (-1339) -At time : 750.97 ns Reaction : OH^0 (-1000) + OH^0 (-1064) -> H2O2^0 (-1340) -At time : 860.47 ns Reaction : e_aq^-1 (-292) + OH^0 (-766) -> OH^-1 (-1341) -At time : 928.18 ns Reaction : OH^0 (-1010) + OH^0 (-732) -> H2O2^0 (-1342) -At time : 969.2 ns Reaction : H3O^1 (-619) + OH^-1 (-1254) -> No product -At time : 999.31 ns Reaction : e_aq^-1 (-130) + OH^0 (-850) -> OH^-1 (-1343) +At time : 678.81 ps Reaction : OH^-1 (-1181) + H3O^1 (-751) -> No product +At time : 707.47 ps Reaction : e_aq^-1 (-527) + OH^0 (-896) -> OH^-1 (-1183) +At time : 757.72 ps Reaction : H3O^1 (-791) + OH^-1 (-1175) -> No product +At time : 833.48 ps Reaction : OH^0 (-776) + OH^0 (-782) -> H2O2^0 (-1184) +At time : 961.84 ps Reaction : H3O^1 (-711) + OH^-1 (-1180) -> No product +At time : 980.06 ps Reaction : H^0 (-1001) + OH^0 (-700) -> No product +At time : 997.75 ps Reaction : OH^-1 (-1170) + H3O^1 (-871) -> No product +At time : 1.0626 ns Reaction : OH^0 (-720) + OH^0 (-941) -> H2O2^0 (-1185) +At time : 1.1028 ns Reaction : OH^0 (-810) + e_aq^-1 (-928) -> OH^-1 (-1186) +At time : 1.1556 ns Reaction : OH^0 (-1105) + e_aq^-1 (-145) -> OH^-1 (-1187) +At time : 1.1636 ns Reaction : e_aq^-1 (-493) + OH^0 (-969) -> OH^-1 (-1188) +At time : 1.3056 ns Reaction : H^0 (-1102) + e_aq^-1 (-140) -> OH^-1 (-1189) + H_2^0 (-1190) +At time : 1.3076 ns Reaction : H3O^1 (-845) + OH^-1 (-1150) -> No product +At time : 1.4319 ns Reaction : H^0 (-980) + e_aq^-1 (-306) -> OH^-1 (-1191) + H_2^0 (-1192) +At time : 1.4592 ns Reaction : OH^0 (-956) + e_aq^-1 (-958) -> OH^-1 (-1193) +At time : 1.4592 ns Reaction : e_aq^-1 (-152) + OH^0 (-576) -> OH^-1 (-1194) +At time : 1.4644 ns Reaction : OH^-1 (-1194) + H3O^1 (-839) -> No product +At time : 1.5263 ns Reaction : H3O^1 (-817) + OH^-1 (-1186) -> No product +At time : 1.5413 ns Reaction : H3O^1 (-1006) + OH^-1 (-1191) -> No product +At time : 1.644 ns Reaction : e_aq^-1 (-538) + H3O^1 (-901) -> H^0 (-1195) +At time : 1.7223 ns Reaction : OH^0 (-1042) + OH^0 (-704) -> H2O2^0 (-1196) +At time : 1.7359 ns Reaction : OH^0 (-616) + H^0 (-970) -> No product +At time : 1.7916 ns Reaction : OH^0 (-1023) + OH^0 (-830) -> H2O2^0 (-1197) +At time : 1.8308 ns Reaction : H3O^1 (-1078) + e_aq^-1 (-922) -> H^0 (-1198) +At time : 1.8637 ns Reaction : OH^0 (-911) + e_aq^-1 (-913) -> OH^-1 (-1199) +At time : 1.8686 ns Reaction : OH^0 (-991) + OH^0 (-962) -> H2O2^0 (-1200) +At time : 2.2161 ns Reaction : OH^0 (-572) + OH^0 (-742) -> H2O2^0 (-1201) +At time : 2.3634 ns Reaction : e_aq^-1 (-283) + OH^0 (-768) -> OH^-1 (-1202) +At time : 2.372 ns Reaction : OH^0 (-1069) + OH^0 (-804) -> H2O2^0 (-1203) +At time : 2.4727 ns Reaction : e_aq^-1 (-461) + H3O^1 (-717) -> H^0 (-1204) +At time : 2.5306 ns Reaction : e_aq^-1 (-487) + H3O^1 (-601) -> H^0 (-1205) +At time : 2.6731 ns Reaction : OH^0 (-880) + e_aq^-1 (-964) -> OH^-1 (-1206) +At time : 2.6779 ns Reaction : H3O^1 (-918) + e_aq^-1 (-919) -> H^0 (-1207) +At time : 2.7382 ns Reaction : OH^0 (-654) + OH^0 (-852) -> H2O2^0 (-1208) +At time : 2.7842 ns Reaction : e_aq^-1 (-209) + H^0 (-1071) -> OH^-1 (-1209) + H_2^0 (-1210) +At time : 2.8246 ns Reaction : OH^0 (-1119) + H^0 (-1195) -> No product +At time : 2.8276 ns Reaction : e_aq^-1 (-326) + OH^0 (-590) -> OH^-1 (-1211) +At time : 2.8374 ns Reaction : H3O^1 (-759) + OH^-1 (-1199) -> No product +At time : 2.8635 ns Reaction : e_aq^-1 (-472) + OH^0 (-698) -> OH^-1 (-1212) +At time : 2.9018 ns Reaction : e_aq^-1 (-196) + OH^0 (-870) -> OH^-1 (-1213) +At time : 3.0164 ns Reaction : H3O^1 (-731) + e_aq^-1 (-925) -> H^0 (-1214) +At time : 3.2075 ns Reaction : e_aq^-1 (-131) + OH^0 (-828) -> OH^-1 (-1215) +At time : 3.2181 ns Reaction : e_aq^-1 (-427) + OH^0 (-722) -> OH^-1 (-1216) +At time : 3.2924 ns Reaction : e_aq^-1 (-303) + H3O^1 (-954) -> H^0 (-1217) +At time : 3.4005 ns Reaction : OH^-1 (-1188) + H3O^1 (-703) -> No product +At time : 3.5551 ns Reaction : H3O^1 (-821) + OH^-1 (-1215) -> No product +At time : 3.5871 ns Reaction : OH^0 (-1064) + OH^0 (-632) -> H2O2^0 (-1218) +At time : 3.8087 ns Reaction : OH^0 (-1048) + OH^0 (-1052) -> H2O2^0 (-1219) +At time : 4.1287 ns Reaction : e_aq^-1 (-497) + OH^0 (-584) -> OH^-1 (-1220) +At time : 4.2173 ns Reaction : e_aq^-1 (-252) + e_aq^-1 (-273) -> OH^-1 (-1221) + OH^-1 (-1222) + H_2^0 (-1223) +At time : 4.2662 ns Reaction : OH^0 (-1053) + e_aq^-1 (-943) -> OH^-1 (-1224) +At time : 4.3029 ns Reaction : H3O^1 (-715) + OH^-1 (-1216) -> No product +At time : 4.3314 ns Reaction : e_aq^-1 (-378) + H3O^1 (-571) -> H^0 (-1225) +At time : 4.6346 ns Reaction : e_aq^-1 (-188) + OH^0 (-812) -> OH^-1 (-1226) +At time : 4.8444 ns Reaction : e_aq^-1 (-340) + H^0 (-1066) -> OH^-1 (-1227) + H_2^0 (-1228) +At time : 5.1302 ns Reaction : e_aq^-1 (-151) + OH^0 (-842) -> OH^-1 (-1229) +At time : 5.1851 ns Reaction : OH^0 (-1104) + OH^0 (-983) -> H2O2^0 (-1230) +At time : 5.3149 ns Reaction : H^0 (-1143) + OH^0 (-794) -> No product +At time : 6.2943 ns Reaction : OH^-1 (-1206) + H3O^1 (-942) -> No product +At time : 6.3739 ns Reaction : H^0 (-1084) + OH^0 (-973) -> No product +At time : 6.5348 ns Reaction : e_aq^-1 (-250) + e_aq^-1 (-916) -> OH^-1 (-1231) + OH^-1 (-1232) + H_2^0 (-1233) +At time : 6.6346 ns Reaction : H3O^1 (-861) + OH^-1 (-1189) -> No product +At time : 6.9987 ns Reaction : H3O^1 (-621) + OH^-1 (-1212) -> No product +At time : 7.057 ns Reaction : H3O^1 (-587) + OH^-1 (-1213) -> No product +At time : 7.2818 ns Reaction : OH^-1 (-1193) + H3O^1 (-957) -> No product +At time : 8.5359 ns Reaction : e_aq^-1 (-563) + OH^0 (-910) -> OH^-1 (-1234) +At time : 8.688 ns Reaction : OH^0 (-658) + OH^0 (-660) -> H2O2^0 (-1235) +At time : 8.7518 ns Reaction : H3O^1 (-819) + OH^-1 (-1174) -> No product +At time : 8.8479 ns Reaction : e_aq^-1 (-344) + OH^0 (-634) -> OH^-1 (-1236) +At time : 9.0123 ns Reaction : H3O^1 (-789) + OH^-1 (-1231) -> No product +At time : 9.1185 ns Reaction : e_aq^-1 (-91) + OH^0 (-650) -> OH^-1 (-1237) +At time : 9.2036 ns Reaction : H3O^1 (-1115) + OH^-1 (-1183) -> No product +At time : 9.6362 ns Reaction : OH^-1 (-1226) + H3O^1 (-837) -> No product +At time : 9.9444 ns Reaction : e_aq^-1 (-381) + H3O^1 (-729) -> H^0 (-1238) +At time : 9.9977 ns Reaction : e_aq^-1 (-313) + H3O^1 (-665) -> H^0 (-1239) +At time : 11.099 ns Reaction : H3O^1 (-757) + OH^-1 (-1209) -> No product +At time : 11.154 ns Reaction : e_aq^-1 (-556) + OH^0 (-906) -> OH^-1 (-1240) +At time : 11.291 ns Reaction : e_aq^-1 (-111) + H3O^1 (-853) -> H^0 (-1241) +At time : 11.693 ns Reaction : OH^0 (-1065) + H^0 (-1239) -> No product +At time : 11.714 ns Reaction : OH^-1 (-1232) + H3O^1 (-765) -> No product +At time : 12.03 ns Reaction : H3O^1 (-1029) + OH^-1 (-1240) -> No product +At time : 12.166 ns Reaction : e_aq^-1 (-207) + H3O^1 (-869) -> H^0 (-1242) +At time : 12.236 ns Reaction : e_aq^-1 (-372) + H^0 (-972) -> OH^-1 (-1243) + H_2^0 (-1244) +At time : 12.556 ns Reaction : H3O^1 (-743) + OH^-1 (-1243) -> No product +At time : 12.688 ns Reaction : OH^0 (-1004) + OH^0 (-750) -> H2O2^0 (-1245) +At time : 13.096 ns Reaction : H3O^1 (-795) + OH^-1 (-1236) -> No product +At time : 13.106 ns Reaction : OH^0 (-1148) + H^0 (-1217) -> No product +At time : 13.389 ns Reaction : e_aq^-1 (-208) + H3O^1 (-643) -> H^0 (-1246) +At time : 13.671 ns Reaction : e_aq^-1 (-390) + H^0 (-1214) -> OH^-1 (-1247) + H_2^0 (-1248) +At time : 13.708 ns Reaction : e_aq^-1 (-394) + OH^0 (-917) -> OH^-1 (-1249) +At time : 14.633 ns Reaction : OH^0 (-588) + H^0 (-1246) -> No product +At time : 15.248 ns Reaction : OH^0 (-1025) + OH^0 (-846) -> H2O2^0 (-1250) +At time : 15.267 ns Reaction : e_aq^-1 (-443) + H3O^1 (-721) -> H^0 (-1251) +At time : 15.72 ns Reaction : e_aq^-1 (-422) + OH^0 (-712) -> OH^-1 (-1252) +At time : 16.065 ns Reaction : e_aq^-1 (-102) + H2O2^0 (-1171) -> OH^-1 (-1253) + OH^0 (-1254) +At time : 16.676 ns Reaction : OH^-1 (-1253) + H3O^1 (-831) -> No product +At time : 17.452 ns Reaction : e_aq^-1 (-386) + OH^0 (-596) -> OH^-1 (-1255) +At time : 17.682 ns Reaction : e_aq^-1 (-544) + H3O^1 (-683) -> H^0 (-1256) +At time : 17.851 ns Reaction : e_aq^-1 (-376) + OH^0 (-738) -> OH^-1 (-1257) +At time : 18.307 ns Reaction : H3O^1 (-579) + OH^-1 (-1249) -> No product +At time : 18.334 ns Reaction : H3O^1 (-635) + OH^-1 (-1202) -> No product +At time : 18.774 ns Reaction : OH^0 (-1020) + OH^0 (-1010) -> H2O2^0 (-1258) +At time : 18.786 ns Reaction : OH^0 (-756) + OH^0 (-798) -> H2O2^0 (-1259) +At time : 20.709 ns Reaction : OH^0 (-989) + OH^0 (-682) -> H2O2^0 (-1260) +At time : 23.195 ns Reaction : H3O^1 (-803) + OH^-1 (-1211) -> No product +At time : 23.925 ns Reaction : OH^-1 (-1220) + H3O^1 (-619) -> No product +At time : 24.894 ns Reaction : OH^0 (-1122) + e_aq^-1 (-186) -> OH^-1 (-1261) +At time : 26.463 ns Reaction : e_aq^-1 (-298) + e_aq^-1 (-251) -> OH^-1 (-1262) + OH^-1 (-1263) + H_2^0 (-1264) +At time : 29.615 ns Reaction : e_aq^-1 (-435) + e_aq^-1 (-501) -> OH^-1 (-1265) + OH^-1 (-1266) + H_2^0 (-1267) +At time : 31.198 ns Reaction : OH^-1 (-1229) + H3O^1 (-645) -> No product +At time : 35.151 ns Reaction : OH^0 (-1013) + e_aq^-1 (-275) -> OH^-1 (-1268) +At time : 36.849 ns Reaction : e_aq^-1 (-423) + H^0 (-1205) -> OH^-1 (-1269) + H_2^0 (-1270) +At time : 37.332 ns Reaction : e_aq^-1 (-305) + OH^0 (-826) -> OH^-1 (-1271) +At time : 37.532 ns Reaction : OH^-1 (-1247) + H3O^1 (-737) -> No product +At time : 38.211 ns Reaction : e_aq^-1 (-292) + OH^0 (-766) -> OH^-1 (-1272) +At time : 39.234 ns Reaction : e_aq^-1 (-164) + OH^0 (-814) -> OH^-1 (-1273) +At time : 40.069 ns Reaction : e_aq^-1 (-93) + H2O2^0 (-1250) -> OH^-1 (-1274) + OH^0 (-1275) +At time : 40.189 ns Reaction : e_aq^-1 (-467) + H3O^1 (-883) -> H^0 (-1276) +At time : 40.825 ns Reaction : OH^0 (-1111) + e_aq^-1 (-156) -> OH^-1 (-1277) +At time : 40.856 ns Reaction : e_aq^-1 (-173) + H3O^1 (-927) -> H^0 (-1278) +At time : 43.843 ns Reaction : e_aq^-1 (-385) + OH^0 (-732) -> OH^-1 (-1279) +At time : 48.817 ns Reaction : OH^-1 (-1221) + H3O^1 (-763) -> No product +At time : 51.828 ns Reaction : e_aq^-1 (-459) + H2O2^0 (-1182) -> OH^-1 (-1280) + OH^0 (-1281) +At time : 52.484 ns Reaction : e_aq^-1 (-304) + OH^0 (-780) -> OH^-1 (-1282) +At time : 61.506 ns Reaction : OH^0 (-748) + OH^0 (-816) -> H2O2^0 (-1283) +At time : 61.955 ns Reaction : e_aq^-1 (-393) + H2O2^0 (-1161) -> OH^-1 (-1284) + OH^0 (-1285) +At time : 67.183 ns Reaction : H3O^1 (-585) + OH^-1 (-1227) -> No product +At time : 67.39 ns Reaction : e_aq^-1 (-374) + OH^0 (-734) -> OH^-1 (-1286) +At time : 68.659 ns Reaction : OH^0 (-628) + OH^0 (-744) -> H2O2^0 (-1287) +At time : 69.162 ns Reaction : H3O^1 (-1126) + OH^-1 (-1273) -> No product +At time : 69.534 ns Reaction : OH^-1 (-1261) + H3O^1 (-855) -> No product +At time : 70.405 ns Reaction : e_aq^-1 (-534) + OH^0 (-894) -> OH^-1 (-1288) +At time : 72.513 ns Reaction : OH^-1 (-1272) + H3O^1 (-912) -> No product +At time : 76.083 ns Reaction : e_aq^-1 (-82) + H3O^1 (-847) -> H^0 (-1289) +At time : 76.483 ns Reaction : e_aq^-1 (-327) + OH^0 (-758) -> OH^-1 (-1290) +At time : 76.648 ns Reaction : H3O^1 (-713) + OH^-1 (-1280) -> No product +At time : 79.228 ns Reaction : H3O^1 (-633) + OH^-1 (-1166) -> No product +At time : 84.679 ns Reaction : H3O^1 (-1063) + OH^-1 (-1286) -> No product +At time : 84.722 ns Reaction : e_aq^-1 (-334) + H^0 (-1157) -> OH^-1 (-1291) + H_2^0 (-1292) +At time : 85.853 ns Reaction : H^0 (-1114) + OH^0 (-1285) -> No product +At time : 89.46 ns Reaction : e_aq^-1 (-200) + H3O^1 (-577) -> H^0 (-1293) +At time : 95.914 ns Reaction : e_aq^-1 (-120) + OH^0 (-656) -> OH^-1 (-1294) +At time : 100.57 ns Reaction : H3O^1 (-637) + OH^-1 (-1290) -> No product +At time : 105.14 ns Reaction : e_aq^-1 (-176) + H3O^1 (-835) -> H^0 (-1295) +At time : 107.12 ns Reaction : OH^-1 (-1268) + H3O^1 (-767) -> No product +At time : 111.6 ns Reaction : e_aq^-1 (-158) + OH^0 (-752) -> OH^-1 (-1296) +At time : 114.64 ns Reaction : e_aq^-1 (-558) + H3O^1 (-905) -> H^0 (-1297) +At time : 115.34 ns Reaction : OH^0 (-1059) + e_aq^-1 (-464) -> OH^-1 (-1298) +At time : 117.12 ns Reaction : OH^0 (-778) + OH^0 (-792) -> H2O2^0 (-1299) +At time : 117.9 ns Reaction : e_aq^-1 (-130) + H^0 (-1295) -> OH^-1 (-1300) + H_2^0 (-1301) +At time : 121.49 ns Reaction : e_aq^-1 (-431) + OH^0 (-668) -> OH^-1 (-1302) +At time : 132.41 ns Reaction : OH^-1 (-1271) + H3O^1 (-825) -> No product +At time : 132.96 ns Reaction : H3O^1 (-843) + OH^-1 (-1187) -> No product +At time : 147.61 ns Reaction : OH^0 (-644) + OH^0 (-923) -> H2O2^0 (-1303) +At time : 148.29 ns Reaction : e_aq^-1 (-484) + OH^0 (-622) -> OH^-1 (-1304) +At time : 155.09 ns Reaction : e_aq^-1 (-392) + H^0 (-1241) -> OH^-1 (-1305) + H_2^0 (-1306) +At time : 156.69 ns Reaction : e_aq^-1 (-416) + OH^0 (-624) -> OH^-1 (-1307) +At time : 160.54 ns Reaction : H3O^1 (-725) + OH^-1 (-1302) -> No product +At time : 161.49 ns Reaction : OH^-1 (-1263) + H3O^1 (-1072) -> No product +At time : 166.85 ns Reaction : e_aq^-1 (-117) + OH^0 (-652) -> OH^-1 (-1308) +At time : 172.95 ns Reaction : H3O^1 (-661) + OH^-1 (-1277) -> No product +At time : 175.4 ns Reaction : H3O^1 (-827) + e_aq^-1 (-955) -> H^0 (-1309) +At time : 176.73 ns Reaction : e_aq^-1 (-471) + H2O2^0 (-1160) -> OH^-1 (-1310) + OH^0 (-1311) +At time : 193.02 ns Reaction : e_aq^-1 (-384) + OH^0 (-670) -> OH^-1 (-1312) +At time : 194.4 ns Reaction : H3O^1 (-597) + OH^-1 (-1307) -> No product +At time : 198.82 ns Reaction : H3O^1 (-733) + OH^-1 (-1284) -> No product +At time : 208.09 ns Reaction : H3O^1 (-1076) + OH^-1 (-1296) -> No product +At time : 220.7 ns Reaction : e_aq^-1 (-516) + OH^0 (-606) -> OH^-1 (-1313) +At time : 222.61 ns Reaction : OH^0 (-718) + H^0 (-1225) -> No product +At time : 227.22 ns Reaction : H^0 (-1003) + H^0 (-1293) -> H_2^0 (-1314) +At time : 233.4 ns Reaction : e_aq^-1 (-387) + e_aq^-1 (-463) -> OH^-1 (-1315) + OH^-1 (-1316) + H_2^0 (-1317) +At time : 237.97 ns Reaction : OH^0 (-1057) + H^0 (-1062) -> No product +At time : 243.4 ns Reaction : e_aq^-1 (-246) + H2O2^0 (-1184) -> OH^-1 (-1318) + OH^0 (-1319) +At time : 246.74 ns Reaction : OH^-1 (-1274) + H3O^1 (-815) -> No product +At time : 252.23 ns Reaction : e_aq^-1 (-528) + OH^0 (-676) -> OH^-1 (-1320) +At time : 253.15 ns Reaction : e_aq^-1 (-483) + e_aq^-1 (-505) -> OH^-1 (-1321) + OH^-1 (-1322) + H_2^0 (-1323) +At time : 256.05 ns Reaction : OH^0 (-724) + OH^0 (-740) -> H2O2^0 (-1324) +At time : 261.18 ns Reaction : e_aq^-1 (-197) + H2O2^0 (-1258) -> OH^-1 (-1325) + OH^0 (-1326) +At time : 284.35 ns Reaction : e_aq^-1 (-425) + H^0 (-1028) -> OH^-1 (-1327) + H_2^0 (-1328) +At time : 311.87 ns Reaction : e_aq^-1 (-270) + H3O^1 (-629) -> H^0 (-1329) +At time : 318.7 ns Reaction : e_aq^-1 (-274) + OH^0 (-1014) -> OH^-1 (-1330) +At time : 333.19 ns Reaction : H3O^1 (-1046) + OH^-1 (-1327) -> No product +At time : 345.75 ns Reaction : e_aq^-1 (-329) + H3O^1 (-745) -> H^0 (-1331) +At time : 384.43 ns Reaction : e_aq^-1 (-109) + e_aq^-1 (-119) -> OH^-1 (-1332) + OH^-1 (-1333) + H_2^0 (-1334) +At time : 395.07 ns Reaction : e_aq^-1 (-404) + OH^0 (-646) -> OH^-1 (-1335) +At time : 443.9 ns Reaction : OH^-1 (-1262) + H3O^1 (-593) -> No product +At time : 444.6 ns Reaction : OH^0 (-1281) + OH^0 (-600) -> H2O2^0 (-1336) +At time : 507.22 ns Reaction : e_aq^-1 (-503) + H3O^1 (-887) -> H^0 (-1337) +At time : 524.84 ns Reaction : e_aq^-1 (-474) + H3O^1 (-599) -> H^0 (-1338) +At time : 550.08 ns Reaction : e_aq^-1 (-548) + OH^0 (-614) -> OH^-1 (-1339) +At time : 582.13 ns Reaction : OH^0 (-706) + H^0 (-1338) -> No product +At time : 633 ns Reaction : H^0 (-999) + e_aq^-1 (-554) -> OH^-1 (-1340) + H_2^0 (-1341) +At time : 639.52 ns Reaction : e_aq^-1 (-203) + H3O^1 (-753) -> H^0 (-1342) +At time : 642.92 ns Reaction : e_aq^-1 (-264) + OH^0 (-640) -> OH^-1 (-1343) +At time : 643.69 ns Reaction : e_aq^-1 (-248) + H2O2^0 (-1208) -> OH^-1 (-1344) + OH^0 (-1345) +At time : 646.59 ns Reaction : e_aq^-1 (-515) + OH^0 (-1311) -> OH^-1 (-1346) +At time : 660.2 ns Reaction : e_aq^-1 (-480) + H3O^1 (-939) -> H^0 (-1347) +At time : 665.58 ns Reaction : OH^0 (-1275) + e_aq^-1 (-412) -> OH^-1 (-1348) +At time : 701.13 ns Reaction : OH^-1 (-1294) + H3O^1 (-769) -> No product +At time : 789.05 ns Reaction : e_aq^-1 (-307) + OH^0 (-872) -> OH^-1 (-1349) +At time : 819.6 ns Reaction : e_aq^-1 (-413) + OH^0 (-876) -> OH^-1 (-1350) +At time : 825.26 ns Reaction : OH^-1 (-1333) + H3O^1 (-799) -> No product +At time : 829.87 ns Reaction : OH^0 (-1092) + OH^0 (-796) -> H2O2^0 (-1351) +At time : 886.28 ns Reaction : OH^0 (-1099) + OH^0 (-1113) -> H2O2^0 (-1352) +At time : 907.02 ns Reaction : e_aq^-1 (-371) + OH^0 (-568) -> OH^-1 (-1353) +At time : 997.7 ns Reaction : OH^-1 (-1224) + H3O^1 (-921) -> No product *** G4Scheduler ends at time : 1 us ___________________________________ Run terminated. Run Summary Number of events processed : 1 - User=146.320000s Real=148.647425s Sys=0.030000s + User=98.550000s Real=110.275073s Sys=0.040000s G4 kernel has come to Quit state. UserDetectorConstruction deleted. UserPhysicsList deleted. diff --git a/examples/extended/medical/dna/chem1/include/CommandLineParser.hh b/examples/extended/medical/dna/chem1/include/CommandLineParser.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem1/src/CommandLineParser.cc b/examples/extended/medical/dna/chem1/src/CommandLineParser.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem2/CMakeLists.txt b/examples/extended/medical/dna/chem2/CMakeLists.txt index 72686acb8e..85f9dff705 100644 --- a/examples/extended/medical/dna/chem2/CMakeLists.txt +++ b/examples/extended/medical/dna/chem2/CMakeLists.txt @@ -1,6 +1,9 @@ #------------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(chem2) #------------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/chem2/History b/examples/extended/medical/dna/chem2/History index 155281f53a..cebf15250f 100644 --- a/examples/extended/medical/dna/chem2/History +++ b/examples/extended/medical/dna/chem2/History @@ -14,6 +14,10 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10.11.2020 Ben Morgan tag chem2-V10-06-00 +----------------------------------------------------- +- Migration to G4RunManagerFactory. + 08.02.2019 VI, WGS, SI tag chem2-V10-05-01 ----------------------------------------------------- - Fixed PhysicsList diff --git a/examples/extended/medical/dna/chem2/chem2.cc b/examples/extended/medical/dna/chem2/chem2.cc index 5eea448d13..ced60141d4 100644 --- a/examples/extended/medical/dna/chem2/chem2.cc +++ b/examples/extended/medical/dna/chem2/chem2.cc @@ -38,11 +38,7 @@ #include "PhysicsList.hh" #include "ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4DNAChemistryManager.hh" #include "G4UImanager.hh" @@ -79,11 +75,10 @@ int main(int argc, char** argv) // Command* commandLine(nullptr); -#ifdef G4MULTITHREADED - G4RunManager* runManager(nullptr); + auto* runManager = G4RunManagerFactory::CreateRunManager(); + if ((commandLine = parser->GetCommandIfActive("-mt"))) { - runManager = new G4MTRunManager(); int nThreads = 2; const G4String& option = commandLine->GetOption(); if(option == "") @@ -99,18 +94,11 @@ int main(int argc, char** argv) nThreads = G4UIcommand::ConvertToInt(option); } - G4cout << "===== Chem2 is started with " << nThreads - << " threads =====" << G4endl; + runManager->SetNumberOfThreads(nThreads); - ((G4MTRunManager*) runManager)->SetNumberOfThreads(nThreads); + G4cout << "===== Chem2 is started with " << runManager->GetNumberOfThreads() + << " threads =====" << G4endl; } - else - { - runManager = new G4RunManager(); - } -#else - G4RunManager* runManager = new G4RunManager(); -#endif ////////// // Set mandatory user initialization classes @@ -152,7 +140,7 @@ int main(int argc, char** argv) UImanager->ApplyCommand("/control/execute vis.mac"); } - if(ui->IsGUI()) + if(ui->IsGUI()) { UImanager->ApplyCommand("/control/execute gui.mac"); } @@ -169,7 +157,7 @@ int main(int argc, char** argv) UImanager->ApplyCommand(G4String("/vis/open ")+commandLine->GetOption()); UImanager->ApplyCommand("/control/execute vis.mac"); } - + if ((commandLine = parser->GetCommandIfActive("-mac"))) { G4String command = "/control/execute "; @@ -204,31 +192,29 @@ void Parse(int& argc, char** argv) // Parse options given in commandLine // parser = CommandLineParser::GetParser(); - - parser->AddCommand("-gui", + + parser->AddCommand("-gui", Command::OptionNotCompulsory, "Select geant4 UI or just launch a geant4 terminal session", "qt"); - - parser->AddCommand("-mac", - Command::WithOption, + + parser->AddCommand("-mac", + Command::WithOption, "Give a mac file to execute", "macFile.mac"); // You cann your own command, as for instance: -// parser->AddCommand("-seed", +// parser->AddCommand("-seed", // Command::WithOption, // "Give a seed value in argument to be tested", "seed"); // it is then up to you to manage this option -#ifdef G4MULTITHREADED parser->AddCommand("-mt", Command::OptionNotCompulsory, "Launch in MT mode (events computed in parallel," " NOT RECOMMANDED WITH CHEMISTRY)", "2"); -#endif - parser->AddCommand("-chemOFF", + parser->AddCommand("-chemOFF", Command::WithoutOption, "Deactivate chemistry"); diff --git a/examples/extended/medical/dna/chem2/chem2.out b/examples/extended/medical/dna/chem2/chem2.out index 36bb1eef5c..530dbefdbc 100644 --- a/examples/extended/medical/dna/chem2/chem2.out +++ b/examples/extended/medical/dna/chem2/chem2.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -67,9 +68,9 @@ e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -4251,88 +4252,89 @@ At time : 658.22 ns Reaction : OH^-1 (-13764) + H3O^1 (-6823) -> No product At time : 660.22 ns Reaction : H3O^1 (-6795) + OH^-1 (-13634) -> No product At time : 660.22 ns Reaction : e_aq^-1 (-2098) + H2O2^0 (-12123) -> OH^-1 (-14641) + OH^0 (-14642) At time : 661.22 ns Reaction : OH^0 (-14587) + OH^0 (-9061) -> H2O2^0 (-14643) -At time : 669.89 ns Reaction : e_aq^-1 (-3719) + H3O^1 (-8529) -> H^0 (-14644) -At time : 675.89 ns Reaction : e_aq^-1 (-3893) + H^0 (-12409) -> OH^-1 (-14645) + H_2^0 (-14646) -At time : 681.89 ns Reaction : H^0 (-9924) + H^0 (-14424) -> H_2^0 (-14647) -At time : 681.89 ns Reaction : H^0 (-14389) + e_aq^-1 (-2518) -> OH^-1 (-14648) + H_2^0 (-14649) -At time : 682.89 ns Reaction : OH^0 (-5793) + OH^0 (-6836) -> H2O2^0 (-14650) -At time : 686.89 ns Reaction : OH^0 (-14071) + H^0 (-12751) -> No product -At time : 690.95 ns Reaction : H3O^1 (-6427) + OH^-1 (-12832) -> No product -At time : 694.95 ns Reaction : e_aq^-1 (-3716) + H^0 (-14537) -> OH^-1 (-14651) + H_2^0 (-14652) -At time : 698.95 ns Reaction : H^0 (-13304) + OH^0 (-7848) -> No product -At time : 700.95 ns Reaction : H3O^1 (-6207) + OH^-1 (-14532) -> No product -At time : 705.95 ns Reaction : H^0 (-10032) + H^0 (-14051) -> H_2^0 (-14653) -At time : 706.95 ns Reaction : H3O^1 (-6203) + OH^-1 (-14638) -> No product -At time : 710.95 ns Reaction : OH^0 (-9200) + e_aq^-1 (-2312) -> OH^-1 (-14654) -At time : 713.95 ns Reaction : OH^-1 (-14599) + H3O^1 (-7359) -> No product -At time : 722.95 ns Reaction : e_aq^-1 (-1998) + H2O2^0 (-11504) -> OH^-1 (-14655) + OH^0 (-14656) -At time : 725.95 ns Reaction : H^0 (-13264) + H^0 (-14581) -> H_2^0 (-14657) -At time : 725.95 ns Reaction : H3O^1 (-7471) + OH^-1 (-14400) -> No product -At time : 726.95 ns Reaction : OH^0 (-9900) + H^0 (-14368) -> No product -At time : 726.95 ns Reaction : OH^0 (-14178) + H^0 (-9048) -> No product -At time : 728.95 ns Reaction : H^0 (-11006) + OH^0 (-14417) -> No product -At time : 731.95 ns Reaction : H^0 (-14644) + OH^0 (-6422) -> No product -At time : 731.95 ns Reaction : H^0 (-9182) + e_aq^-1 (-2937) -> OH^-1 (-14658) + H_2^0 (-14659) -At time : 731.95 ns Reaction : H3O^1 (-6637) + e_aq^-1 (-8734) -> H^0 (-14660) -At time : 736.95 ns Reaction : OH^0 (-10569) + OH^0 (-7864) -> H2O2^0 (-14661) -At time : 739.95 ns Reaction : OH^-1 (-13229) + H3O^1 (-7133) -> No product -At time : 748.95 ns Reaction : e_aq^-1 (-3141) + H2O2^0 (-14595) -> OH^-1 (-14662) + OH^0 (-14663) -At time : 754.95 ns Reaction : OH^0 (-7484) + OH^0 (-8100) -> H2O2^0 (-14664) -At time : 759.15 ns Reaction : H3O^1 (-6965) + OH^-1 (-14589) -> No product -At time : 775.15 ns Reaction : e_aq^-1 (-4619) + H3O^1 (-8397) -> H^0 (-14665) -At time : 778.15 ns Reaction : H3O^1 (-11044) + OH^-1 (-14369) -> No product -At time : 785.15 ns Reaction : OH^-1 (-14319) + H3O^1 (-7895) -> No product -At time : 785.15 ns Reaction : H^0 (-9544) + e_aq^-1 (-3656) -> OH^-1 (-14666) + H_2^0 (-14667) -At time : 789.15 ns Reaction : H2O2^0 (-11819) + e_aq^-1 (-3947) -> OH^-1 (-14668) + OH^0 (-14669) -At time : 791.15 ns Reaction : H3O^1 (-9655) + e_aq^-1 (-3124) -> H^0 (-14670) -At time : 794.15 ns Reaction : OH^0 (-10522) + e_aq^-1 (-4650) -> OH^-1 (-14671) -At time : 796.15 ns Reaction : OH^-1 (-14366) + H3O^1 (-6911) -> No product -At time : 797.15 ns Reaction : H3O^1 (-10431) + OH^-1 (-14493) -> No product -At time : 797.15 ns Reaction : e_aq^-1 (-3950) + H2O2^0 (-13083) -> OH^-1 (-14672) + OH^0 (-14673) -At time : 801.15 ns Reaction : e_aq^-1 (-619) + H2O2^0 (-12339) -> OH^-1 (-14674) + OH^0 (-14675) -At time : 806.15 ns Reaction : H^0 (-13367) + OH^0 (-14510) -> No product -At time : 806.15 ns Reaction : H^0 (-12893) + H^0 (-14432) -> H_2^0 (-14676) -At time : 807.15 ns Reaction : e_aq^-1 (-2747) + OH^0 (-8537) -> OH^-1 (-14677) -At time : 809.15 ns Reaction : OH^-1 (-14002) + H3O^1 (-6785) -> No product -At time : 811.15 ns Reaction : e_aq^-1 (-266) + H2O2^0 (-14610) -> OH^-1 (-14678) + OH^0 (-14679) -At time : 814.15 ns Reaction : e_aq^-1 (-791) + H2O2^0 (-11428) -> OH^-1 (-14680) + OH^0 (-14681) -At time : 817.15 ns Reaction : H3O^1 (-6775) + OH^-1 (-14160) -> No product -At time : 819.15 ns Reaction : e_aq^-1 (-5416) + H^0 (-14578) -> OH^-1 (-14682) + H_2^0 (-14683) -At time : 819.15 ns Reaction : OH^-1 (-14165) + H3O^1 (-8550) -> No product -At time : 819.15 ns Reaction : H3O^1 (-10669) + e_aq^-1 (-8713) -> H^0 (-14684) -At time : 829.15 ns Reaction : OH^0 (-14294) + H^0 (-13978) -> No product -At time : 831.15 ns Reaction : OH^-1 (-14158) + H3O^1 (-6837) -> No product -At time : 834.15 ns Reaction : OH^0 (-14584) + H^0 (-11257) -> No product -At time : 839.15 ns Reaction : OH^0 (-10923) + OH^0 (-14497) -> H2O2^0 (-14685) -At time : 842.15 ns Reaction : e_aq^-1 (-3700) + H^0 (-13213) -> OH^-1 (-14686) + H_2^0 (-14687) -At time : 844.15 ns Reaction : OH^-1 (-14431) + H3O^1 (-6405) -> No product -At time : 849.15 ns Reaction : e_aq^-1 (-3898) + H2O2^0 (-13891) -> OH^-1 (-14688) + OH^0 (-14689) -At time : 851.15 ns Reaction : OH^-1 (-13740) + H3O^1 (-7273) -> No product -At time : 854.15 ns Reaction : H3O^1 (-10190) + OH^-1 (-14004) -> No product -At time : 856.15 ns Reaction : H3O^1 (-7441) + OH^-1 (-14227) -> No product -At time : 859.15 ns Reaction : H2O2^0 (-11884) + e_aq^-1 (-2049) -> OH^-1 (-14690) + OH^0 (-14691) -At time : 863.15 ns Reaction : H3O^1 (-7479) + OH^-1 (-14512) -> No product -At time : 872.15 ns Reaction : OH^-1 (-14119) + H3O^1 (-6473) -> No product -At time : 875.15 ns Reaction : H3O^1 (-10169) + OH^-1 (-13870) -> No product -At time : 880.15 ns Reaction : e_aq^-1 (-3499) + H3O^1 (-7667) -> H^0 (-14692) -At time : 886.15 ns Reaction : e_aq^-1 (-12) + e_aq^-1 (-5433) -> OH^-1 (-14693) + OH^-1 (-14694) + H_2^0 (-14695) -At time : 891.15 ns Reaction : H^0 (-12182) + H^0 (-13989) -> H_2^0 (-14696) -At time : 898.15 ns Reaction : H3O^1 (-8083) + OH^-1 (-14583) -> No product -At time : 903.15 ns Reaction : OH^-1 (-14416) + H3O^1 (-7463) -> No product -At time : 918.16 ns Reaction : OH^0 (-8194) + OH^0 (-8333) -> H2O2^0 (-14697) -At time : 919.16 ns Reaction : OH^-1 (-14445) + H3O^1 (-8055) -> No product -At time : 920.16 ns Reaction : e_aq^-1 (-1365) + H3O^1 (-6205) -> H^0 (-14698) -At time : 923.16 ns Reaction : H2O2^0 (-11789) + e_aq^-1 (-8470) -> OH^-1 (-14699) + OH^0 (-14700) -At time : 930.17 ns Reaction : e_aq^-1 (-821) + H2O2^0 (-12478) -> OH^-1 (-14701) + OH^0 (-14702) -At time : 949.17 ns Reaction : H3O^1 (-10349) + OH^-1 (-14558) -> No product -At time : 953.17 ns Reaction : H3O^1 (-7083) + OH^-1 (-14682) -> No product -At time : 955.17 ns Reaction : OH^0 (-5948) + OH^0 (-13364) -> H2O2^0 (-14703) -At time : 957.17 ns Reaction : OH^-1 (-14690) + H3O^1 (-8694) -> No product -At time : 959.17 ns Reaction : H3O^1 (-7245) + OH^-1 (-13748) -> No product -At time : 962.17 ns Reaction : H3O^1 (-9792) + OH^-1 (-14147) -> No product -At time : 967.17 ns Reaction : e_aq^-1 (-3609) + H2O2^0 (-12455) -> OH^-1 (-14704) + OH^0 (-14705) -At time : 977.17 ns Reaction : OH^-1 (-14623) + H3O^1 (-7345) -> No product -At time : 979.17 ns Reaction : OH^-1 (-14480) + H3O^1 (-8583) -> No product -At time : 980.17 ns Reaction : H3O^1 (-6733) + OH^-1 (-14140) -> No product +At time : 665.35 ns Reaction : OH^-1 (-14319) + H3O^1 (-7895) -> No product +At time : 666.35 ns Reaction : OH^-1 (-13950) + H3O^1 (-5925) -> No product +At time : 673.35 ns Reaction : H3O^1 (-6543) + OH^-1 (-14271) -> No product +At time : 677.35 ns Reaction : e_aq^-1 (-5657) + OH^0 (-14494) -> OH^-1 (-14644) +At time : 682.35 ns Reaction : e_aq^-1 (-2937) + OH^0 (-8714) -> OH^-1 (-14645) +At time : 689.35 ns Reaction : OH^-1 (-14385) + H3O^1 (-7463) -> No product +At time : 689.35 ns Reaction : OH^0 (-13381) + OH^0 (-5918) -> H2O2^0 (-14646) +At time : 689.35 ns Reaction : H2O2^0 (-11814) + e_aq^-1 (-4155) -> OH^-1 (-14647) + OH^0 (-14648) +At time : 697.35 ns Reaction : e_aq^-1 (-3744) + H2O2^0 (-11469) -> OH^-1 (-14649) + OH^0 (-14650) +At time : 703.35 ns Reaction : OH^-1 (-14392) + H3O^1 (-7479) -> No product +At time : 704.35 ns Reaction : H^0 (-12866) + OH^0 (-13948) -> No product +At time : 710.35 ns Reaction : H3O^1 (-10469) + OH^-1 (-14493) -> No product +At time : 710.35 ns Reaction : OH^-1 (-14478) + H3O^1 (-10709) -> No product +At time : 712.35 ns Reaction : H3O^1 (-6109) + OH^-1 (-14425) -> No product +At time : 714.35 ns Reaction : H3O^1 (-5937) + OH^-1 (-14514) -> No product +At time : 721.35 ns Reaction : e_aq^-1 (-5206) + OH^0 (-12697) -> OH^-1 (-14651) +At time : 722.35 ns Reaction : e_aq^-1 (-5637) + H^0 (-14124) -> OH^-1 (-14652) + H_2^0 (-14653) +At time : 724.35 ns Reaction : H^0 (-11006) + OH^0 (-9849) -> No product +At time : 725.35 ns Reaction : H3O^1 (-10669) + OH^-1 (-14532) -> No product +At time : 728.35 ns Reaction : e_aq^-1 (-2747) + H3O^1 (-7819) -> H^0 (-14654) +At time : 732.35 ns Reaction : H2O2^0 (-12959) + e_aq^-1 (-821) -> OH^-1 (-14655) + OH^0 (-14656) +At time : 738.35 ns Reaction : H^0 (-14432) + H^0 (-13606) -> H_2^0 (-14657) +At time : 744.35 ns Reaction : H^0 (-13304) + OH^0 (-7868) -> No product +At time : 744.35 ns Reaction : e_aq^-1 (-1998) + H2O2^0 (-11841) -> OH^-1 (-14658) + OH^0 (-14659) +At time : 749.35 ns Reaction : H^0 (-14654) + OH^0 (-6356) -> No product +At time : 749.35 ns Reaction : OH^-1 (-13237) + H3O^1 (-7659) -> No product +At time : 752.35 ns Reaction : H3O^1 (-10445) + OH^-1 (-14518) -> No product +At time : 752.35 ns Reaction : H3O^1 (-6209) + OH^-1 (-13729) -> No product +At time : 754.35 ns Reaction : OH^-1 (-14649) + H3O^1 (-6955) -> No product +At time : 758.35 ns Reaction : H^0 (-12305) + OH^0 (-7930) -> No product +At time : 759.35 ns Reaction : OH^0 (-14417) + OH^0 (-5793) -> H2O2^0 (-14660) +At time : 759.35 ns Reaction : OH^-1 (-13514) + H3O^1 (-8013) -> No product +At time : 759.35 ns Reaction : OH^0 (-10463) + H^0 (-12609) -> No product +At time : 760.35 ns Reaction : H^0 (-13780) + e_aq^-1 (-2049) -> OH^-1 (-14661) + H_2^0 (-14662) +At time : 762.75 ns Reaction : OH^-1 (-14645) + H3O^1 (-6313) -> No product +At time : 765.75 ns Reaction : OH^0 (-9361) + OH^0 (-7098) -> H2O2^0 (-14663) +At time : 766.75 ns Reaction : OH^0 (-14467) + OH^0 (-10365) -> H2O2^0 (-14664) +At time : 766.75 ns Reaction : OH^-1 (-14362) + H3O^1 (-8397) -> No product +At time : 768.75 ns Reaction : e_aq^-1 (-3722) + H2O2^0 (-11680) -> OH^-1 (-14665) + OH^0 (-14666) +At time : 770.75 ns Reaction : OH^0 (-14648) + H^0 (-9008) -> No product +At time : 783.75 ns Reaction : OH^0 (-10414) + H^0 (-14048) -> No product +At time : 784.75 ns Reaction : e_aq^-1 (-5613) + H2O2^0 (-14627) -> OH^-1 (-14667) + OH^0 (-14668) +At time : 791.75 ns Reaction : OH^0 (-9704) + e_aq^-1 (-1941) -> OH^-1 (-14669) +At time : 794.75 ns Reaction : H3O^1 (-7477) + OH^-1 (-14655) -> No product +At time : 794.75 ns Reaction : OH^0 (-9138) + e_aq^-1 (-3656) -> OH^-1 (-14670) +At time : 796.75 ns Reaction : H^0 (-14498) + OH^0 (-6184) -> No product +At time : 801.75 ns Reaction : OH^-1 (-14436) + H3O^1 (-8001) -> No product +At time : 806.75 ns Reaction : e_aq^-1 (-4116) + H2O2^0 (-11629) -> OH^-1 (-14671) + OH^0 (-14672) +At time : 809.75 ns Reaction : e_aq^-1 (-3297) + OH^0 (-6304) -> OH^-1 (-14673) +At time : 814.75 ns Reaction : OH^-1 (-13991) + H3O^1 (-6723) -> No product +At time : 815.75 ns Reaction : OH^0 (-9224) + OH^0 (-6590) -> H2O2^0 (-14674) +At time : 815.75 ns Reaction : e_aq^-1 (-3124) + H3O^1 (-6509) -> H^0 (-14675) +At time : 850.88 ns Reaction : OH^-1 (-14242) + H3O^1 (-8559) -> No product +At time : 856.88 ns Reaction : OH^-1 (-14036) + H3O^1 (-6089) -> No product +At time : 859.88 ns Reaction : OH^0 (-10110) + OH^0 (-8254) -> H2O2^0 (-14676) +At time : 861.88 ns Reaction : OH^-1 (-14002) + H3O^1 (-6639) -> No product +At time : 864.88 ns Reaction : OH^-1 (-13142) + H3O^1 (-6855) -> No product +At time : 864.88 ns Reaction : H3O^1 (-10601) + OH^-1 (-13089) -> No product +At time : 869.88 ns Reaction : H3O^1 (-9655) + OH^-1 (-13931) -> No product +At time : 872.88 ns Reaction : H^0 (-9764) + e_aq^-1 (-4619) -> OH^-1 (-14677) + H_2^0 (-14678) +At time : 873.88 ns Reaction : OH^-1 (-14614) + H3O^1 (-6041) -> No product +At time : 876.88 ns Reaction : H3O^1 (-6775) + OH^-1 (-14506) -> No product +At time : 877.88 ns Reaction : OH^-1 (-13141) + H3O^1 (-10786) -> No product +At time : 879.88 ns Reaction : H^0 (-12290) + OH^0 (-10305) -> No product +At time : 883.88 ns Reaction : H^0 (-12767) + OH^0 (-6728) -> No product +At time : 884.88 ns Reaction : H^0 (-14097) + H^0 (-10714) -> H_2^0 (-14679) +At time : 886.88 ns Reaction : H^0 (-12533) + e_aq^-1 (-3719) -> OH^-1 (-14680) + H_2^0 (-14681) +At time : 890.88 ns Reaction : H^0 (-13242) + OH^0 (-5934) -> No product +At time : 901.88 ns Reaction : e_aq^-1 (-4029) + H2O2^0 (-12645) -> OH^-1 (-14682) + OH^0 (-14683) +At time : 905.88 ns Reaction : OH^-1 (-14328) + H3O^1 (-6143) -> No product +At time : 906.88 ns Reaction : OH^-1 (-14621) + H3O^1 (-6085) -> No product +At time : 910.88 ns Reaction : OH^-1 (-13775) + H3O^1 (-6837) -> No product +At time : 911.88 ns Reaction : OH^-1 (-14194) + H3O^1 (-8077) -> No product +At time : 914.88 ns Reaction : OH^-1 (-13365) + H3O^1 (-7237) -> No product +At time : 929.88 ns Reaction : e_aq^-1 (-2432) + H^0 (-14380) -> OH^-1 (-14684) + H_2^0 (-14685) +At time : 939.88 ns Reaction : H^0 (-14368) + OH^0 (-9027) -> No product +At time : 942.88 ns Reaction : OH^0 (-6836) + OH^0 (-14462) -> H2O2^0 (-14686) +At time : 947.88 ns Reaction : e_aq^-1 (-229) + H2O2^0 (-14577) -> OH^-1 (-14687) + OH^0 (-14688) +At time : 949.88 ns Reaction : H^0 (-11237) + OH^0 (-9071) -> No product +At time : 953.88 ns Reaction : OH^-1 (-14431) + H3O^1 (-6377) -> No product +At time : 964.88 ns Reaction : e_aq^-1 (-3147) + OH^0 (-7704) -> OH^-1 (-14689) +At time : 969.88 ns Reaction : OH^0 (-7418) + OH^0 (-8174) -> H2O2^0 (-14690) +At time : 981.88 ns Reaction : OH^0 (-9681) + OH^0 (-6596) -> H2O2^0 (-14691) +At time : 999.88 ns Reaction : e_aq^-1 (-4258) + e_aq^-1 (-4106) -> OH^-1 (-14692) + OH^-1 (-14693) + H_2^0 (-14694) *** G4Scheduler ends at time : 1 us ___________________________________ diff --git a/examples/extended/medical/dna/chem2/include/CommandLineParser.hh b/examples/extended/medical/dna/chem2/include/CommandLineParser.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem2/src/CommandLineParser.cc b/examples/extended/medical/dna/chem2/src/CommandLineParser.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem3/CMakeLists.txt b/examples/extended/medical/dna/chem3/CMakeLists.txt index af3ff8605c..e658095d55 100644 --- a/examples/extended/medical/dna/chem3/CMakeLists.txt +++ b/examples/extended/medical/dna/chem3/CMakeLists.txt @@ -1,6 +1,9 @@ #------------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(chem3) #------------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/chem3/History b/examples/extended/medical/dna/chem3/History index 5e47f4d391..d20f685129 100644 --- a/examples/extended/medical/dna/chem3/History +++ b/examples/extended/medical/dna/chem3/History @@ -14,6 +14,10 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10.11.2020 Ben Morgan tag chem3-V10-06-00 +----------------------------------------------------- +- Migration to G4RunManagerFactory. + 08.02.2019 VI, WGS, SI tag chem3-V10-05-01 ----------------------------------------------------- - Fixed PhysicsList diff --git a/examples/extended/medical/dna/chem3/chem3.cc b/examples/extended/medical/dna/chem3/chem3.cc index 3505343ec1..e710bdadc6 100644 --- a/examples/extended/medical/dna/chem3/chem3.cc +++ b/examples/extended/medical/dna/chem3/chem3.cc @@ -38,11 +38,7 @@ #include "PhysicsList.hh" #include "ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4DNAChemistryManager.hh" #include "G4UImanager.hh" @@ -81,11 +77,10 @@ int main(int argc, char** argv) // Command* commandLine(0); -#ifdef G4MULTITHREADED - G4RunManager* runManager(0); + auto* runManager = G4RunManagerFactory::CreateRunManager(); + if ((commandLine = parser->GetCommandIfActive("-mt"))) { - runManager = new G4MTRunManager; int nThreads = 2; const G4String& option = commandLine->GetOption(); if(option == "") @@ -101,19 +96,12 @@ int main(int argc, char** argv) nThreads = G4UIcommand::ConvertToInt(option); } - G4cout << "===== Chem3 is started with " - << ((G4MTRunManager*) runManager)->GetNumberOfThreads() - << " threads =====" << G4endl; + runManager->SetNumberOfThreads(nThreads); - ((G4MTRunManager*) runManager)->SetNumberOfThreads(nThreads); + G4cout << "===== Chem3 is started with " + << runManager->GetNumberOfThreads() + << " threads =====" << G4endl; } - else - { - runManager = new G4RunManager(); - } -#else - G4RunManager* runManager = new G4RunManager(); -#endif ////////// // Set mandatory user initialization classes @@ -223,17 +211,15 @@ void Parse(int& argc, char** argv) "macFile.mac"); // You cann your own command, as for instance: -// parser->AddCommand("-seed", +// parser->AddCommand("-seed", // Command::WithOption, // "Give a seed value in argument to be tested", "seed"); // it is then up to you to manage this option -#ifdef G4MULTITHREADED parser->AddCommand("-mt", Command::OptionNotCompulsory, - "Launch in MT mode (events computed in parallel," - " NOT RECOMMANDED WITH CHEMISTRY)", + "Launch in MT mode if available (events computed in parallel," + " NOT RECOMMENDED WITH CHEMISTRY)", "2"); -#endif parser->AddCommand("-chemOFF", Command::WithoutOption, "Deactivate chemistry"); diff --git a/examples/extended/medical/dna/chem3/chem3.out b/examples/extended/medical/dna/chem3/chem3.out index e951dbc562..2c3b9ff1a6 100644 --- a/examples/extended/medical/dna/chem3/chem3.out +++ b/examples/extended/medical/dna/chem3/chem3.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -28,10 +29,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -118,9 +121,9 @@ e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -276,28 +279,35 @@ At time : 830.01 ps Reaction : OH^0 (-188) + OH^0 (-140) -> H2O2^0 (-226) At time : 1.1157 ns Reaction : OH^0 (-196) + OH^0 (-189) -> H2O2^0 (-227) At time : 1.3961 ns Reaction : H3O^1 (-129) + OH^-1 (-223) -> No product At time : 1.4661 ns Reaction : e_aq^-1 (-73) + OH^0 (-112) -> OH^-1 (-228) -At time : 1.6213 ns Reaction : H3O^1 (-141) + OH^-1 (-228) -> No product -At time : 1.6613 ns Reaction : H3O^1 (-159) + OH^-1 (-220) -> No product +At time : 1.6212 ns Reaction : H3O^1 (-141) + OH^-1 (-228) -> No product +At time : 1.6612 ns Reaction : H3O^1 (-159) + OH^-1 (-220) -> No product At time : 2.5623 ns Reaction : OH^0 (-207) + e_aq^-1 (-48) -> OH^-1 (-229) -At time : 3.1785 ns Reaction : e_aq^-1 (-39) + H3O^1 (-172) -> H^0 (-230) -At time : 3.1885 ns Reaction : OH^0 (-208) + OH^0 (-152) -> H2O2^0 (-231) -At time : 3.2285 ns Reaction : H3O^1 (-211) + e_aq^-1 (-71) -> H^0 (-232) +At time : 3.1786 ns Reaction : e_aq^-1 (-39) + H3O^1 (-172) -> H^0 (-230) +At time : 3.1886 ns Reaction : OH^0 (-208) + OH^0 (-152) -> H2O2^0 (-231) +At time : 3.2286 ns Reaction : H3O^1 (-211) + e_aq^-1 (-71) -> H^0 (-232) At time : 4.1871 ns Reaction : H3O^1 (-151) + OH^-1 (-229) -> No product -At time : 6.3147 ns Reaction : e_aq^-1 (-60) + OH^0 (-154) -> OH^-1 (-233) -At time : 7.6272 ns Reaction : OH^0 (-176) + e_aq^-1 (-93) -> OH^-1 (-234) -At time : 8.5793 ns Reaction : e_aq^-1 (-70) + H^0 (-184) -> OH^-1 (-235) + H_2^0 (-236) -At time : 11.003 ns Reaction : OH^-1 (-234) + H3O^1 (-163) -> No product -At time : 19.706 ns Reaction : e_aq^-1 (-94) + H3O^1 (-133) -> H^0 (-237) -At time : 24.18 ns Reaction : OH^0 (-205) + OH^0 (-110) -> H2O2^0 (-238) -At time : 29.985 ns Reaction : OH^0 (-185) + e_aq^-1 (-37) -> OH^-1 (-239) -At time : 37.594 ns Reaction : H3O^1 (-149) + OH^-1 (-233) -> No product -At time : 56.585 ns Reaction : OH^0 (-198) + e_aq^-1 (-88) -> OH^-1 (-240) -At time : 63.291 ns Reaction : e_aq^-1 (-65) + OH^0 (-164) -> OH^-1 (-241) -At time : 63.991 ns Reaction : OH^0 (-214) + OH^0 (-160) -> H2O2^0 (-242) -At time : 74.462 ns Reaction : OH^0 (-183) + H^0 (-199) -> No product -At time : 96.001 ns Reaction : OH^-1 (-235) + H3O^1 (-121) -> No product +At time : 6.3079 ns Reaction : e_aq^-1 (-60) + OH^0 (-154) -> OH^-1 (-233) +At time : 10.504 ns Reaction : e_aq^-1 (-81) + H3O^1 (-157) -> H^0 (-234) +At time : 10.904 ns Reaction : OH^0 (-116) + H^0 (-232) -> No product +At time : 10.904 ns Reaction : e_aq^-1 (-86) + H3O^1 (-163) -> H^0 (-235) +At time : 11.004 ns Reaction : OH^0 (-176) + OH^0 (-160) -> H2O2^0 (-236) +At time : 13.404 ns Reaction : H^0 (-201) + OH^0 (-124) -> No product +At time : 13.904 ns Reaction : e_aq^-1 (-55) + OH^0 (-165) -> OH^-1 (-237) +At time : 14.004 ns Reaction : e_aq^-1 (-75) + H3O^1 (-143) -> H^0 (-238) +At time : 16.415 ns Reaction : e_aq^-1 (-41) + OH^0 (-181) -> OH^-1 (-239) +At time : 16.915 ns Reaction : e_aq^-1 (-91) + e_aq^-1 (-88) -> OH^-1 (-240) + OH^-1 (-241) + H_2^0 (-242) +At time : 17.215 ns Reaction : e_aq^-1 (-94) + H3O^1 (-215) -> H^0 (-243) +At time : 19.36 ns Reaction : OH^-1 (-241) + H3O^1 (-213) -> No product +At time : 24.681 ns Reaction : H3O^1 (-123) + OH^-1 (-237) -> No product +At time : 27.939 ns Reaction : e_aq^-1 (-93) + H3O^1 (-166) -> H^0 (-244) +At time : 37.221 ns Reaction : OH^-1 (-239) + H3O^1 (-153) -> No product +At time : 56.658 ns Reaction : OH^0 (-185) + e_aq^-1 (-95) -> OH^-1 (-245) +At time : 80.73 ns Reaction : e_aq^-1 (-90) + OH^0 (-164) -> OH^-1 (-246) *** G4Scheduler ends at time : 100 ns ___________________________________ Seed used :1 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/medical/dna/chem3/include/CommandLineParser.hh b/examples/extended/medical/dna/chem3/include/CommandLineParser.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem3/src/CommandLineParser.cc b/examples/extended/medical/dna/chem3/src/CommandLineParser.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/CMakeLists.txt b/examples/extended/medical/dna/chem4/CMakeLists.txt index 7305d3598d..efa61deac6 100644 --- a/examples/extended/medical/dna/chem4/CMakeLists.txt +++ b/examples/extended/medical/dna/chem4/CMakeLists.txt @@ -1,4 +1,7 @@ -cmake_minimum_required(VERSION 2.8) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/chem4/GNUmakefile b/examples/extended/medical/dna/chem4/GNUmakefile old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/History b/examples/extended/medical/dna/chem4/History old mode 100755 new mode 100644 index a5c781c039..9bc020f54a --- a/examples/extended/medical/dna/chem4/History +++ b/examples/extended/medical/dna/chem4/History @@ -14,6 +14,13 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10.11.2020 - Ben Morgan - chem4-V10-06-01 +- Migration to G4RunManagerFactory. + +19.10.2020 - Ben Morgan - chem4-V10-06-00 +- Call rootcint via full path and remove obsolete '-c' flag that + creates warnings and CTest failures with latest ROOT versions. + 11.09.2019 - Ivana Hrivnacova - chem4-V10-05-03 - Create the analysis manager (in ScoreSpecies) via the new factory function. @@ -59,19 +66,19 @@ beam.in 21 Oct 2016 - Mathieu Karamitros - chem4-V10-02-03 -- General info -- - The G-values are computing for a range of deposited energy [A;B]. - We are in an infinite volume. Therefore the energy lost by the - primary equals the deposited energy since all secondary particles - will finally slow down to the thermal energy. - The primary is killed once it has deposited more energy than the - minimum threshold A. - However, when the particle looses more energy in few interaction - steps than the maximum allowed thresold B, the event is + The G-values are computing for a range of deposited energy [A;B]. + We are in an infinite volume. Therefore the energy lost by the + primary equals the deposited energy since all secondary particles + will finally slow down to the thermal energy. + The primary is killed once it has deposited more energy than the + minimum threshold A. + However, when the particle looses more energy in few interaction + steps than the maximum allowed thresold B, the event is disregarded (=aborted). - - Note that if the upper boundary of the energy lost by the primary is - not set, the chemistry may take a lot of time to compute. - + + Note that if the upper boundary of the energy lost by the primary is + not set, the chemistry may take a lot of time to compute. + - Abort event if the energy lost by the primary is larger than a user chosen threshold - Update README and .README.txt for new UI commands diff --git a/examples/extended/medical/dna/chem4/README b/examples/extended/medical/dna/chem4/README old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/beam.in b/examples/extended/medical/dna/chem4/beam.in old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/chem4.cc b/examples/extended/medical/dna/chem4/chem4.cc index eb6a76b47d..892f7109fb 100644 --- a/examples/extended/medical/dna/chem4/chem4.cc +++ b/examples/extended/medical/dna/chem4/chem4.cc @@ -38,11 +38,7 @@ #include "PhysicsList.hh" #include "ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4DNAChemistryManager.hh" #include "G4UImanager.hh" @@ -53,7 +49,7 @@ /* * WARNING : Geant4 was initially not intended for this kind of application - * This code is delivered as a prototype + * This code is delivered as a prototype * We will be happy to hear from you, do not hesitate to send your feedback and * communicate on the difficulties you may encounter * The user interface may change in the next releases since a reiteration of the @@ -79,12 +75,11 @@ int main(int argc, char** argv) Parse(argc, argv); Command* commandLine(0); SetSeed(); - + // Construct the run manager according to whether MT is activated or not // -#ifdef G4MULTITHREADED - G4MTRunManager* runManager= new G4MTRunManager(); - + auto* runManager= G4RunManagerFactory::CreateRunManager(); + if((commandLine = parser->GetCommandIfActive("-mt"))) { int nThreads = 2; @@ -96,21 +91,18 @@ int main(int argc, char** argv) { nThreads = G4UIcommand::ConvertToInt(commandLine->GetOption()); } - + runManager->SetNumberOfThreads(nThreads); } - + G4cout << "**************************************************************" << "******\n===== Chem4 is started with " << runManager->GetNumberOfThreads() << " of " << G4Threading::G4GetNumberOfCores() << " available threads =====\n\n*************************************" - <<"*******************************" + <<"*******************************" << G4endl; -#else - G4RunManager* runManager = new G4RunManager(); -#endif - + // Set mandatory initialization classes runManager->SetUserInitialization(new PhysicsList()); runManager->SetUserInitialization(new DetectorConstruction()); @@ -125,14 +117,14 @@ int main(int argc, char** argv) // Get the pointer to the User Interface manager G4UImanager* UImanager = G4UImanager::GetUIpointer(); G4UIExecutive* ui(0); - + // interactive mode : define UI session if((commandLine = parser->GetCommandIfActive("-gui"))) { ui = new G4UIExecutive(argc, argv, commandLine->GetOption()); - + if (ui->IsGUI()) UImanager->ApplyCommand("/control/execute gui.mac"); - + if (parser->GetCommandIfActive("-novis") == 0) { // visualization is used by default @@ -162,7 +154,7 @@ int main(int argc, char** argv) UImanager->ApplyCommand("/control/execute vis.mac"); } } - + if((commandLine = parser->GetCommandIfActive("-mac"))) { G4String command = "/control/execute "; @@ -172,13 +164,13 @@ int main(int argc, char** argv) { UImanager->ApplyCommand("/control/execute beam.in"); } - + if((commandLine = parser->GetCommandIfActive("-gui"))) { ui->SessionStart(); delete ui; } - + // Job termination // Free the store: user actions, physics_list and detector_description are // owned and deleted by the run manager, so they should not be deleted @@ -206,25 +198,25 @@ bool IsBracket(char c) //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void SetSeed() -{ +{ Command* commandLine(0); - + if((commandLine = parser->GetCommandIfActive("-seed"))) { seed = atoi(commandLine->GetOption().c_str()); } - + if(seed == 0) // If no seed given in argument, setup the seed { long jobID_int = 0; long noice = 0; - + //____________________________________ // In case on cluster if((commandLine = parser->GetCommandIfActive("-cluster"))) { noice = labs((long) noise()); - + const char * env = std::getenv("PBS_JOBID"); if(env) @@ -243,11 +235,11 @@ void SetSeed() if(env) jobID_int = atoi(env); } } // end cluster - + //____________________________________ seed = ((long) time(NULL)) + jobID_int + noice; } - + G4cout << "Seed used : " << seed << G4endl; G4Random::setTheEngine(new CLHEP::MixMaxRng()); G4Random::setTheSeed(seed); @@ -294,37 +286,35 @@ void Parse(int& argc, char** argv) // Parse options given in commandLine // parser = CommandLineParser::GetParser(); - + parser->AddCommand("-gui", Command::OptionNotCompulsory, "Select geant4 UI or just launch a geant4 terminal" "session", "qt"); - + parser->AddCommand("-mac", Command::WithOption, "Give a mac file to execute", "macFile.mac"); parser->AddCommand("-seed", Command::WithOption, "Give a seed value in argument to be tested", "seed"); - -#ifdef G4MULTITHREADED + parser->AddCommand("-mt",Command::WithOption, "Launch in MT mode (events computed in parallel," " NOT RECOMMANDED WITH CHEMISTRY)", "2"); -#endif - + parser->AddCommand("-chemOFF", Command::WithoutOption, "Deactivate chemistry"); - + parser->AddCommand("-vis", Command::WithOption, "Select a visualization driver", "OGL 600x600-0+0"); - + parser->AddCommand("-novis", Command::WithoutOption, "Deactivate visualization when using GUI"); - + parser->AddCommand("-cluster", Command::WithoutOption, "Launch the code on a cluster, avoid dupplicated seeds"); - + ////////// // If -h or --help is given in option : print help and exit // @@ -335,7 +325,7 @@ void Parse(int& argc, char** argv) CommandLineParser::DeleteInstance(); std::exit(0); } - + /////////// // Kill application if wrong argument in command line // diff --git a/examples/extended/medical/dna/chem4/chem4.out b/examples/extended/medical/dna/chem4/chem4.out index 9dae4dbbc0..1f73823cdc 100644 --- a/examples/extended/medical/dna/chem4/chem4.out +++ b/examples/extended/medical/dna/chem4/chem4.out @@ -1,11 +1,12 @@ -Seed used : 1593046047 +Seed used : 1606871288 +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -13,6 +14,10 @@ Seed used : 1593046047 WWW : http://geant4.org/ ************************************************************** +******************************************************************** +===== Chem4 is started with 1 of 1 available threads ===== + +******************************************************************** ===== Register constructor ==== G4EmDNAPhysics ===== Register constructor ==== G4EmDNAChemistry Visualization Manager instantiating with verbosity "warnings (3)"... @@ -29,10 +34,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -122,9 +129,9 @@ e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -266,16 +273,23 @@ Start event 2 Start event 3 Start event 4 Start event 5 + * PrimaryKiller: aborts event 5, energy loss is too large. + * Energy loss by primary is: 4.0459 keV. Event is aborted if the Eloss is > 2 keV Start event 6 Start event 7 Start event 8 + * PrimaryKiller: aborts event 8, energy loss is too large. + * Energy loss by primary is: 5.0182 keV. Event is aborted if the Eloss is > 2 keV Start event 9 --------------------End of Global Run----------------------- - The run has 10 events -Number of events recorded by the species scorer = 10 - Total energy deposited in the world volume : 11439 eV + The run has 8 events +Number of events recorded by the species scorer = 8 + Total energy deposited in the world volume : 8373.7 eV ------------------------------------------------------------ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/medical/dna/chem4/include/ActionInitialization.hh b/examples/extended/medical/dna/chem4/include/ActionInitialization.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/include/CommandLineParser.hh b/examples/extended/medical/dna/chem4/include/CommandLineParser.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/include/DetectorConstruction.hh b/examples/extended/medical/dna/chem4/include/DetectorConstruction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/include/PhysicsList.hh b/examples/extended/medical/dna/chem4/include/PhysicsList.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/include/PrimaryGeneratorAction.hh b/examples/extended/medical/dna/chem4/include/PrimaryGeneratorAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/include/PrimaryKiller.hh b/examples/extended/medical/dna/chem4/include/PrimaryKiller.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/include/Run.hh b/examples/extended/medical/dna/chem4/include/Run.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/include/RunAction.hh b/examples/extended/medical/dna/chem4/include/RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/include/ScoreSpecies.hh b/examples/extended/medical/dna/chem4/include/ScoreSpecies.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/include/StackingAction.hh b/examples/extended/medical/dna/chem4/include/StackingAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/plot/CMakeLists.txt b/examples/extended/medical/dna/chem4/plot/CMakeLists.txt old mode 100755 new mode 100644 index 7c57290a80..0cd1d769d9 --- a/examples/extended/medical/dna/chem4/plot/CMakeLists.txt +++ b/examples/extended/medical/dna/chem4/plot/CMakeLists.txt @@ -2,7 +2,10 @@ #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.8 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(plotG) #---------------------------------------------------------------------------- @@ -14,7 +17,7 @@ add_definitions(-DUSE_ROOT) # Define useful ROOT functions and macros (e.g. ROOT_GENERATE_DICTIONARY) include(${ROOT_USE_FILE}) - + include_directories(${CMAKE_SOURCE_DIR} ${ROOT_INCLUDE_DIRS}) add_definitions(${ROOT_CXX_FLAGS}) @@ -28,12 +31,12 @@ include_directories(${PROJECT_SOURCE_DIR}/include) # NB: headers are included so they will show up in IDEs # -EXECUTE_PROCESS(COMMAND rootcint -f ${PROJECT_BINARY_DIR}/CanvasInTab_Dict.cc - -c ${PROJECT_SOURCE_DIR}/include/CanvasInTab.hh - ${PROJECT_SOURCE_DIR}/include/CanvasInTab_LinkDef.hh) +EXECUTE_PROCESS(COMMAND ${ROOT_rootcint_CMD} -f ${PROJECT_BINARY_DIR}/CanvasInTab_Dict.cc + ${PROJECT_SOURCE_DIR}/include/CanvasInTab.hh + ${PROJECT_SOURCE_DIR}/include/CanvasInTab_LinkDef.hh) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) -file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc +file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc ${PROJECT_BINARY_DIR}/CanvasInTab_Dict.cc) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/chem4/src/ActionInitialization.cc b/examples/extended/medical/dna/chem4/src/ActionInitialization.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/src/CommandLineParser.cc b/examples/extended/medical/dna/chem4/src/CommandLineParser.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/src/DetectorConstruction.cc b/examples/extended/medical/dna/chem4/src/DetectorConstruction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/src/PrimaryGeneratorAction.cc b/examples/extended/medical/dna/chem4/src/PrimaryGeneratorAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/src/PrimaryKiller.cc b/examples/extended/medical/dna/chem4/src/PrimaryKiller.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/src/Run.cc b/examples/extended/medical/dna/chem4/src/Run.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/src/RunAction.cc b/examples/extended/medical/dna/chem4/src/RunAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/src/ScoreSpecies.cc b/examples/extended/medical/dna/chem4/src/ScoreSpecies.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/src/StackingAction.cc b/examples/extended/medical/dna/chem4/src/StackingAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem4/vis.mac b/examples/extended/medical/dna/chem4/vis.mac old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/CMakeLists.txt b/examples/extended/medical/dna/chem5/CMakeLists.txt index ad7450df86..0276448703 100644 --- a/examples/extended/medical/dna/chem5/CMakeLists.txt +++ b/examples/extended/medical/dna/chem5/CMakeLists.txt @@ -1,4 +1,7 @@ -cmake_minimum_required(VERSION 2.8) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/chem5/GNUmakefile b/examples/extended/medical/dna/chem5/GNUmakefile old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/History b/examples/extended/medical/dna/chem5/History old mode 100755 new mode 100644 index bde5a8a224..263749ca52 --- a/examples/extended/medical/dna/chem5/History +++ b/examples/extended/medical/dna/chem5/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10.11.2020 - B. Morgan - chem5-V10-06-00 +- Migration to G4RunManagerFactory. + 26.11.2019 - I. Hrivnacova - chem5-V10-05-03 - Fixed formatting in .README.txt @@ -30,7 +33,7 @@ track of all tags. - Fixed nightly problem 08 Nov 2018 - I. Hrivnacova - chem5-V10-04-02 -- Updated History +- Updated History 07 Nov 2018 - Jose Ramos-Mendez - chem5-V10-04-01 - Fix missing header @@ -38,5 +41,5 @@ track of all tags. 07 Nov 2018 - Jose Ramos-Mendez - chem5-V10-04-00 - First version -26 Sept 2018 - Jose Ramos-Mendez +26 Sept 2018 - Jose Ramos-Mendez - created diff --git a/examples/extended/medical/dna/chem5/README b/examples/extended/medical/dna/chem5/README old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/beam.in b/examples/extended/medical/dna/chem5/beam.in old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/chem5.cc b/examples/extended/medical/dna/chem5/chem5.cc index 6409e4b443..bcd018310d 100644 --- a/examples/extended/medical/dna/chem5/chem5.cc +++ b/examples/extended/medical/dna/chem5/chem5.cc @@ -28,7 +28,7 @@ // shall cite the following Geant4-DNA collaboration publication: // Med. Phys. 37 (2010) 4692-4708 // J. Comput. Phys. 274 (2014) 841-882 -// Phys. Med. Biol. 63(10) (2018) 105014-12pp +// Phys. Med. Biol. 63(10) (2018) 105014-12pp // The Geant4-DNA web site is available at http://geant4-dna.org // // @@ -39,11 +39,7 @@ #include "PhysicsList.hh" #include "ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4DNAChemistryManager.hh" #include "G4UImanager.hh" @@ -80,12 +76,11 @@ int main(int argc, char** argv) Parse(argc, argv); Command* commandLine(0); SetSeed(); - + // Construct the run manager according to whether MT is activated or not // -#ifdef G4MULTITHREADED - G4MTRunManager* runManager= new G4MTRunManager(); - + auto* runManager= G4RunManagerFactory::CreateRunManager(); + if((commandLine = parser->GetCommandIfActive("-mt"))) { int nThreads = 2; @@ -97,29 +92,26 @@ int main(int argc, char** argv) { nThreads = G4UIcommand::ConvertToInt(commandLine->GetOption()); } - + runManager->SetNumberOfThreads(nThreads); } - + G4cout << "**************************************************************" << "******\n===== Chem5 is started with " << runManager->GetNumberOfThreads() << " of " << G4Threading::G4GetNumberOfCores() << " available threads =====\n\n*************************************" - <<"*******************************" + <<"*******************************" << G4endl; -#else - G4RunManager* runManager = new G4RunManager(); -#endif - + // Set mandatory initialization classes runManager->SetUserInitialization(new PhysicsList()); runManager->SetUserInitialization(new DetectorConstruction()); runManager->SetUserInitialization(new ActionInitialization()); - + // Initialize G4 kernel runManager->Initialize(); - + // Initialize visualization G4VisManager* visManager = new G4VisExecutive(); // G4VisExecutive can take a verbosity argument - see /vis/verbose guidance. @@ -129,14 +121,14 @@ int main(int argc, char** argv) // Get the pointer to the User Interface manager G4UImanager* UImanager = G4UImanager::GetUIpointer(); G4UIExecutive* ui(0); - + // interactive mode : define UI session if((commandLine = parser->GetCommandIfActive("-gui"))) { ui = new G4UIExecutive(argc, argv, commandLine->GetOption()); - + if (ui->IsGUI()) UImanager->ApplyCommand("/control/execute gui.mac"); - + if (parser->GetCommandIfActive("-novis") == 0) { // visualization is used by default @@ -166,7 +158,7 @@ int main(int argc, char** argv) UImanager->ApplyCommand("/control/execute vis.mac"); } } - + if((commandLine = parser->GetCommandIfActive("-mac"))) { G4String command = "/control/execute "; @@ -182,7 +174,7 @@ int main(int argc, char** argv) ui->SessionStart(); delete ui; } - + // Job termination // Free the store: user actions, physics_list and detector_description are // owned and deleted by the run manager, so they should not be deleted @@ -210,25 +202,25 @@ bool IsBracket(char c) //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void SetSeed() -{ +{ Command* commandLine(0); - + if((commandLine = parser->GetCommandIfActive("-seed"))) { seed = atoi(commandLine->GetOption().c_str()); } - + if(seed == 0) // If no seed given in argument, setup the seed { long jobID_int = 0; long noice = 0; - + //____________________________________ // In case on cluster if((commandLine = parser->GetCommandIfActive("-cluster"))) { noice = labs((long) noise()); - + const char * env = std::getenv("PBS_JOBID"); if(env) @@ -247,11 +239,11 @@ void SetSeed() if(env) jobID_int = atoi(env); } } // end cluster - + //____________________________________ seed = ((long) time(NULL)) + jobID_int + noice; } - + G4cout << "Seed used : " << seed << G4endl; G4Random::setTheEngine(new CLHEP::MixMaxRng()); G4Random::setTheSeed(seed); @@ -298,37 +290,35 @@ void Parse(int& argc, char** argv) // Parse options given in commandLine // parser = CommandLineParser::GetParser(); - + parser->AddCommand("-gui", Command::OptionNotCompulsory, "Select geant4 UI or just launch a geant4 terminal" "session", "qt"); - + parser->AddCommand("-mac", Command::WithOption, "Give a mac file to execute", "macFile.mac"); parser->AddCommand("-seed", Command::WithOption, "Give a seed value in argument to be tested", "seed"); - -#ifdef G4MULTITHREADED + parser->AddCommand("-mt",Command::WithOption, "Launch in MT mode (events computed in parallel," " NOT RECOMMANDED WITH CHEMISTRY)", "2"); -#endif - + parser->AddCommand("-chemOFF", Command::WithoutOption, "Deactivate chemistry"); - + parser->AddCommand("-vis", Command::WithOption, "Select a visualization driver", "OGL 600x600-0+0"); - + parser->AddCommand("-novis", Command::WithoutOption, "Deactivate visualization when using GUI"); - + parser->AddCommand("-cluster", Command::WithoutOption, "Launch the code on a cluster, avoid dupplicated seeds"); - + ////////// // If -h or --help is given in option : print help and exit // @@ -339,7 +329,7 @@ void Parse(int& argc, char** argv) CommandLineParser::DeleteInstance(); std::exit(0); } - + /////////// // Kill application if wrong argument in command line // diff --git a/examples/extended/medical/dna/chem5/include/ActionInitialization.hh b/examples/extended/medical/dna/chem5/include/ActionInitialization.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/include/CommandLineParser.hh b/examples/extended/medical/dna/chem5/include/CommandLineParser.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/include/DetectorConstruction.hh b/examples/extended/medical/dna/chem5/include/DetectorConstruction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/include/PhysicsList.hh b/examples/extended/medical/dna/chem5/include/PhysicsList.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/include/PrimaryGeneratorAction.hh b/examples/extended/medical/dna/chem5/include/PrimaryGeneratorAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/include/PrimaryKiller.hh b/examples/extended/medical/dna/chem5/include/PrimaryKiller.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/include/Run.hh b/examples/extended/medical/dna/chem5/include/Run.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/include/RunAction.hh b/examples/extended/medical/dna/chem5/include/RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/include/ScoreSpecies.hh b/examples/extended/medical/dna/chem5/include/ScoreSpecies.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/include/StackingAction.hh b/examples/extended/medical/dna/chem5/include/StackingAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/src/ActionInitialization.cc b/examples/extended/medical/dna/chem5/src/ActionInitialization.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/src/CommandLineParser.cc b/examples/extended/medical/dna/chem5/src/CommandLineParser.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/src/DetectorConstruction.cc b/examples/extended/medical/dna/chem5/src/DetectorConstruction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/src/PrimaryGeneratorAction.cc b/examples/extended/medical/dna/chem5/src/PrimaryGeneratorAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/src/PrimaryKiller.cc b/examples/extended/medical/dna/chem5/src/PrimaryKiller.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/src/Run.cc b/examples/extended/medical/dna/chem5/src/Run.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/src/RunAction.cc b/examples/extended/medical/dna/chem5/src/RunAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/src/ScoreSpecies.cc b/examples/extended/medical/dna/chem5/src/ScoreSpecies.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/src/StackingAction.cc b/examples/extended/medical/dna/chem5/src/StackingAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem5/vis.mac b/examples/extended/medical/dna/chem5/vis.mac old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/.README.txt b/examples/extended/medical/dna/chem6/.README.txt index 1a7b97fceb..66541a217c 100644 --- a/examples/extended/medical/dna/chem6/.README.txt +++ b/examples/extended/medical/dna/chem6/.README.txt @@ -35,20 +35,20 @@ Int. J. Model. Simul. Sci . Comput. 1 (2010) 157-178 \n The default geometry is constructed in DetectorConstruction class. - The size of detector can be controlled by PrimaryKiller class (see section 5.2) + The size of detector can be controlled by PrimaryKiller class (see section \ref CHEM6_s5) in order to prevent crash. \section CHEM6_s3 PHYSICS LIST PhysicsList is Geant4 modular physics list using: - G4EmDNAPhysics_option2 constructor - # the accelerated physics constructor based on G4EmDNAPhysics constructor. + G4EmDNAPhysics_option2 constructor: + - the accelerated physics constructor based on G4EmDNAPhysics constructor. - G4EmDNAChemistry_option3 constructor. - # the chemistry constructor is based on the pre-chemical stage of PARTRAC + G4EmDNAChemistry_option3 constructor: + - the chemistry constructor is based on the pre-chemical stage of PARTRAC and chemical parameters of RITRACKS. - # this chemistry constructor uses independent reaction time method as a + - this chemistry constructor uses independent reaction time method as a default. \section CHEM6_s4 ACTION INITALIZATION @@ -58,13 +58,13 @@ Int. J. Model. Simul. Sci . Comput. 1 (2010) 157-178 \n While in sequential mode the action classes are instantiated just once, via invoking the method - ActionInitialization::Build() + ActionInitialization::Build() in multi-threading mode the same method is invoked for each thread worker and so all user action classes are defined thread-local. A run action class is instantiated both thread-local and global that's why its instance is created also in the method - ActionInitialization::BuildForMaster() + ActionInitialization::BuildForMaster() which is invoked only in multi-threading mode. \section CHEM6_s5 AN EVENT: PRIMARY GENERATOR @@ -73,6 +73,7 @@ Int. J. Model. Simul. Sci . Comput. 1 (2010) 157-178 \n of the box. The type of the particle and its energy are set in the PrimaryGeneratorAction class, and can be changed via the G4 build-in commands of G4ParticleGun class. + The chemistry module is triggered in the StackingAction class when all physical tracks have been processed. @@ -141,8 +142,8 @@ Int. J. Model. Simul. Sci . Comput. 1 (2010) 157-178 \n The size of detector can be controlled by this class using user macro command: \verbatim - /primaryKiller/setSize 5 5 5 um - # kill the particles (primary and secondary) outside of the virtual volume +/primaryKiller/setSize 5 5 5 um +# kill the particles (primary and secondary) outside of the virtual volume \endverbatim \subsection CHEM6_s6_sub3 LET scorer @@ -161,15 +162,14 @@ Int. J. Model. Simul. Sci . Comput. 1 (2010) 157-178 \n This method is not recommended for IRT method. These two method are called before and after every time steps: - - TimeStepAction::UserPreTimeStepAction() - TimeStepAction::UserPostTimeStepAction() + - TimeStepAction::UserPreTimeStepAction() + - TimeStepAction::UserPostTimeStepAction() This method is called when a chemical reaction is occurred: + - TimeStepAction::UserReactionAction(const G4Track&, const G4Track&, const std::vector*) - TimeStepAction::UserReactionAction(const G4Track&, const G4Track&, const std::vector*) +In order to access to molecular information: \verbatim -In order to access to molecular information, #include "G4Molecule.hh" G4Molecule* thisIsMyMolecule = GetMolecule(thisIsMyTrack); const G4String& moleculeName = thisIsMyMolecule->GetName(); @@ -187,8 +187,9 @@ const G4String& moleculeName = thisIsMyMolecule->GetName(); Physics initialization and the defined reaction table are printed. G4Scheduler processes the chemical stage time step after time step. Chemical reactions are printed. - The molecular reaction as a function of the elapsed time can be displayed - setting the macro command /scheduler/verbose 1 + + The molecular reaction as a function of the elapsed time can be displayed + setting the macro command /scheduler/verbose 1 \section CHEM6_s10 RELEVANT MACRO FILES @@ -208,10 +209,10 @@ const G4String& moleculeName = thisIsMyMolecule->GetName(); Two root macros can be used: \verbatim - root plotG_time.root - # plot G values as a function of time according to the molecular species by importing Species0.root. +root plotG_time.root +# plot G values as a function of time according to the molecular species by importing Species0.root. - root plotG_LET.root - # plot G values as a function of LET according to the molecular species by importing Species.txt. +root plotG_LET.root +# plot G values as a function of LET according to the molecular species by importing Species.txt. \endverbatim */ diff --git a/examples/extended/medical/dna/chem6/CMakeLists.txt b/examples/extended/medical/dna/chem6/CMakeLists.txt old mode 100755 new mode 100644 index e26cc0c94a..fc8f5a09d5 --- a/examples/extended/medical/dna/chem6/CMakeLists.txt +++ b/examples/extended/medical/dna/chem6/CMakeLists.txt @@ -1,4 +1,7 @@ -cmake_minimum_required(VERSION 2.8) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/chem6/GNUmakefile b/examples/extended/medical/dna/chem6/GNUmakefile old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/History b/examples/extended/medical/dna/chem6/History old mode 100755 new mode 100644 index 03e0f1708a..e030b33dcb --- a/examples/extended/medical/dna/chem6/History +++ b/examples/extended/medical/dna/chem6/History @@ -15,6 +15,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-2020: B. Morgan chem6-V10-06-03 +- Migration to G4RunManagerFactory. + +06-11-20: I. Hrivnacova chem6-V10-06-02 +- Fixed doxygen documentation + 19-02-20: W. G. Shin chem6-V10-06-01 - fixed memory issue diff --git a/examples/extended/medical/dna/chem6/README b/examples/extended/medical/dna/chem6/README old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/beam.in b/examples/extended/medical/dna/chem6/beam.in old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/beam_HCP.in b/examples/extended/medical/dna/chem6/beam_HCP.in old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/chem6.cc b/examples/extended/medical/dna/chem6/chem6.cc old mode 100755 new mode 100644 index 10616e4102..1a92ccebf3 --- a/examples/extended/medical/dna/chem6/chem6.cc +++ b/examples/extended/medical/dna/chem6/chem6.cc @@ -44,11 +44,7 @@ #include "PhysicsList.hh" #include "ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4DNAChemistryManager.hh" #include "G4UImanager.hh" @@ -57,7 +53,7 @@ /* * WARNING : Geant4 was initially not intended for this kind of application - * This code is delivered as a prototype + * This code is delivered as a prototype * We will be happy to hear from you, do not hesitate to send your feedback * and communicate on the difficulties you may encounter * The user interface may change in the next releases since a reiteration of @@ -82,11 +78,7 @@ int main(int argc, char** argv) G4Random::setTheEngine(new CLHEP::RanecuEngine); -#ifdef G4MULTITHREADED - G4MTRunManager* runManager= new G4MTRunManager(); -#else - G4RunManager* runManager = new G4RunManager(); -#endif + auto* runManager= G4RunManagerFactory::CreateRunManager(); // Set mandatory initialization classes runManager->SetUserInitialization(new PhysicsList()); diff --git a/examples/extended/medical/dna/chem6/include/ActionInitialization.hh b/examples/extended/medical/dna/chem6/include/ActionInitialization.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/include/DetectorConstruction.hh b/examples/extended/medical/dna/chem6/include/DetectorConstruction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/include/PhysicsList.hh b/examples/extended/medical/dna/chem6/include/PhysicsList.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/include/PrimaryGeneratorAction.hh b/examples/extended/medical/dna/chem6/include/PrimaryGeneratorAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/include/PrimaryKiller.hh b/examples/extended/medical/dna/chem6/include/PrimaryKiller.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/include/Run.hh b/examples/extended/medical/dna/chem6/include/Run.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/include/RunAction.hh b/examples/extended/medical/dna/chem6/include/RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/include/ScoreLET.hh b/examples/extended/medical/dna/chem6/include/ScoreLET.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/include/ScoreSpecies.hh b/examples/extended/medical/dna/chem6/include/ScoreSpecies.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/include/StackingAction.hh b/examples/extended/medical/dna/chem6/include/StackingAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/include/TimeStepAction.hh b/examples/extended/medical/dna/chem6/include/TimeStepAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/plotG_LET.C b/examples/extended/medical/dna/chem6/plotG_LET.C old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/plotG_time.C b/examples/extended/medical/dna/chem6/plotG_time.C old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/src/ActionInitialization.cc b/examples/extended/medical/dna/chem6/src/ActionInitialization.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/src/DetectorConstruction.cc b/examples/extended/medical/dna/chem6/src/DetectorConstruction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/src/PhysicsList.cc b/examples/extended/medical/dna/chem6/src/PhysicsList.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/src/PrimaryGeneratorAction.cc b/examples/extended/medical/dna/chem6/src/PrimaryGeneratorAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/src/PrimaryKiller.cc b/examples/extended/medical/dna/chem6/src/PrimaryKiller.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/src/Run.cc b/examples/extended/medical/dna/chem6/src/Run.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/src/ScoreLET.cc b/examples/extended/medical/dna/chem6/src/ScoreLET.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/src/StackingAction.cc b/examples/extended/medical/dna/chem6/src/StackingAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/chem6/src/TimeStepAction.cc b/examples/extended/medical/dna/chem6/src/TimeStepAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/clustering/CMakeLists.txt b/examples/extended/medical/dna/clustering/CMakeLists.txt index c9e21f82ba..dd356aa962 100644 --- a/examples/extended/medical/dna/clustering/CMakeLists.txt +++ b/examples/extended/medical/dna/clustering/CMakeLists.txt @@ -1,7 +1,10 @@ #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(CLUSTERING) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/clustering/History b/examples/extended/medical/dna/clustering/History index da291236dc..7b892da67c 100644 --- a/examples/extended/medical/dna/clustering/History +++ b/examples/extended/medical/dna/clustering/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-2020 B. Morgan (clustering-V10-06-00) +- Migration to G4RunManagerFactory. + 28-11-2017 I.Hrivnacova (clustering-V10-03-01) - Fixed Doxygen warnings @@ -31,6 +34,6 @@ track of all tags. 15-06-16 Gunter Folger (clustering-V10-02-00) - add GNUmakefile and reference output (clustering.out) - + 22-10-15 SI (clustering-V10-01-00) - created diff --git a/examples/extended/medical/dna/clustering/clustering.cc b/examples/extended/medical/dna/clustering/clustering.cc index 1b1345129d..8febe7cfe3 100644 --- a/examples/extended/medical/dna/clustering/clustering.cc +++ b/examples/extended/medical/dna/clustering/clustering.cc @@ -37,11 +37,7 @@ #include "PhysicsList.hh" #include "ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4DNAChemistryManager.hh" #include "G4UImanager.hh" @@ -71,8 +67,7 @@ int main(int argc, char** argv) // Command* commandLine(0); -#ifdef G4MULTITHREADED - G4MTRunManager* runManager= new G4MTRunManager; + auto* runManager= G4RunManagerFactory::CreateRunManager(); if ((commandLine = parser->GetCommandIfActive("-mt"))) { int nThreads = 2; @@ -84,15 +79,12 @@ int main(int argc, char** argv) { nThreads = G4UIcommand::ConvertToInt(commandLine->GetOption()); } + runManager->SetNumberOfThreads(nThreads); + G4cout << "===== clustering is started with " << runManager->GetNumberOfThreads() << " threads =====" << G4endl; - - runManager->SetNumberOfThreads(nThreads); } -#else - G4RunManager* runManager = new G4RunManager(); -#endif ////////// // Set mandatory user initialization classes @@ -196,17 +188,15 @@ void Parse(int& argc, char** argv) "macFile.mac"); // You cann your own command, as for instance: -// parser->AddCommand("-seed", +// parser->AddCommand("-seed", // Command::WithOption, // "Give a seed value in argument to be tested", "seed"); // it is then up to you to manage this option -#ifdef G4MULTITHREADED parser->AddCommand("-mt", Command::WithOption, "Launch in MT mode (events computed in parallel," " NOT RECOMMENDED WITH CHEMISTRY)", "2"); -#endif parser->AddCommand("-vis", Command::WithOption, "Select a visualization driver", "OGL 600x600-0+0"); diff --git a/examples/extended/medical/dna/clustering/clustering.out b/examples/extended/medical/dna/clustering/clustering.out index 60132fe711..f4b7e0edf8 100644 --- a/examples/extended/medical/dna/clustering/clustering.out +++ b/examples/extended/medical/dna/clustering/clustering.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +27,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -116,9 +119,9 @@ e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -232,5 +235,8 @@ G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ----> Histogram file is opened in test.root +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/medical/dna/dnadamage1/.README.txt b/examples/extended/medical/dna/dnadamage1/.README.txt old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/CMakeLists.txt b/examples/extended/medical/dna/dnadamage1/CMakeLists.txt old mode 100755 new mode 100644 index cce22011dd..d31d1433ad --- a/examples/extended/medical/dna/dnadamage1/CMakeLists.txt +++ b/examples/extended/medical/dna/dnadamage1/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(dnadamage1) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/dnadamage1/GNUmakefile b/examples/extended/medical/dna/dnadamage1/GNUmakefile old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/History b/examples/extended/medical/dna/dnadamage1/History old mode 100755 new mode 100644 index ae434fbbd5..1b77a65e0d --- a/examples/extended/medical/dna/dnadamage1/History +++ b/examples/extended/medical/dna/dnadamage1/History @@ -5,6 +5,9 @@ Package History file -------------------- +10-11-2020 - tag dnadamage1-V10-06-00 - B. Morgan +- Migration to G4RunManagerFactory. + 28-11-2019 - tag dnadamage1-V10-05-02 - I. Hrivnacova - Fixed .README.txt label diff --git a/examples/extended/medical/dna/dnadamage1/README.txt b/examples/extended/medical/dna/dnadamage1/README.txt old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/analysis.C b/examples/extended/medical/dna/dnadamage1/analysis.C old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/dnadamage1.cc b/examples/extended/medical/dna/dnadamage1/dnadamage1.cc old mode 100755 new mode 100644 index 8f0a56d701..30844c2b51 --- a/examples/extended/medical/dna/dnadamage1/dnadamage1.cc +++ b/examples/extended/medical/dna/dnadamage1/dnadamage1.cc @@ -27,11 +27,7 @@ /// \file dnadamage1.cc /// \brief Implementation of the dnadamage1 example #include "G4Types.hh" -#ifdef G4MULTITHREADED - #include "G4MTRunManager.hh" -#else - #include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIExecutive.hh" #include "G4VisExecutive.hh" @@ -43,43 +39,39 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -int main(int argc,char** argv) +int main(int argc,char** argv) { //long seed = ((long) time(NULL)); //long enterseed = ((long) time(NULL)) + seed; //G4Random::setTheSeed(enterseed); //G4Random::showEngineStatus(); - -#ifdef G4MULTITHREADED - std::unique_ptr pRunManager(new G4MTRunManager); + + std::unique_ptr pRunManager(G4RunManagerFactory::CreateRunManager()); pRunManager->SetNumberOfThreads(2);//by default -#else - std::unique_ptr pRunManager(new G4RunManager); -#endif - + DetectorConstruction* pDetector = new DetectorConstruction(); pDetector->RegisterParallelWorld(new ParallelWorld("ChemistryWorld")); pRunManager->SetUserInitialization(pDetector); - + PhysicsList* pPhysList = new PhysicsList; pRunManager->SetUserInitialization(pPhysList); pRunManager->SetUserInitialization(new ActionInitialization(pDetector)); - + std::unique_ptr pVisuManager(new G4VisExecutive); pVisuManager->Initialize(); - + G4UImanager* pUImanager = G4UImanager::GetUIpointer(); - if (argc > 1) - { + if (argc > 1) + { // batch mode G4String command = "/control/execute "; G4String fileName = argv[1]; pUImanager->ApplyCommand(command+fileName); } - else - { + else + { // interactive mode std::unique_ptr pUi(new G4UIExecutive(argc, argv)); pUImanager->ApplyCommand("/control/execute vis.mac"); diff --git a/examples/extended/medical/dna/dnadamage1/dnadamage1.in b/examples/extended/medical/dna/dnadamage1/dnadamage1.in old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/include/ActionInitialization.hh b/examples/extended/medical/dna/dnadamage1/include/ActionInitialization.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/include/DNAParser.hh b/examples/extended/medical/dna/dnadamage1/include/DNAParser.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/include/DNAVolumeType.hh b/examples/extended/medical/dna/dnadamage1/include/DNAVolumeType.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/include/DetectorConstruction.hh b/examples/extended/medical/dna/dnadamage1/include/DetectorConstruction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/include/ITTrackingInteractivity.hh b/examples/extended/medical/dna/dnadamage1/include/ITTrackingInteractivity.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/include/ParallelWorld.hh b/examples/extended/medical/dna/dnadamage1/include/ParallelWorld.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/include/PhysicsList.hh b/examples/extended/medical/dna/dnadamage1/include/PhysicsList.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/include/PrimaryGeneratorAction.hh b/examples/extended/medical/dna/dnadamage1/include/PrimaryGeneratorAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/include/RunAction.hh b/examples/extended/medical/dna/dnadamage1/include/RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/include/StackingAction.hh b/examples/extended/medical/dna/dnadamage1/include/StackingAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/include/SteppingAction.hh b/examples/extended/medical/dna/dnadamage1/include/SteppingAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/include/TimeStepAction.hh b/examples/extended/medical/dna/dnadamage1/include/TimeStepAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/molecule.C b/examples/extended/medical/dna/dnadamage1/molecule.C old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/plot.C b/examples/extended/medical/dna/dnadamage1/plot.C old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/src/ActionInitialization.cc b/examples/extended/medical/dna/dnadamage1/src/ActionInitialization.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/src/DetectorConstruction.cc b/examples/extended/medical/dna/dnadamage1/src/DetectorConstruction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/src/ITTrackingInteractivity.cc b/examples/extended/medical/dna/dnadamage1/src/ITTrackingInteractivity.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/src/ParallelWorld.cc b/examples/extended/medical/dna/dnadamage1/src/ParallelWorld.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/src/PhysicsList.cc b/examples/extended/medical/dna/dnadamage1/src/PhysicsList.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/src/PrimaryGeneratorAction.cc b/examples/extended/medical/dna/dnadamage1/src/PrimaryGeneratorAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/src/RunAction.cc b/examples/extended/medical/dna/dnadamage1/src/RunAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/src/StackingAction.cc b/examples/extended/medical/dna/dnadamage1/src/StackingAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/src/SteppingAction.cc b/examples/extended/medical/dna/dnadamage1/src/SteppingAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/src/TimeStepAction.cc b/examples/extended/medical/dna/dnadamage1/src/TimeStepAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnadamage1/vis.mac b/examples/extended/medical/dna/dnadamage1/vis.mac old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/CMakeLists.txt b/examples/extended/medical/dna/dnaphysics/CMakeLists.txt index 70a2a6efa9..e137f4acdc 100644 --- a/examples/extended/medical/dna/dnaphysics/CMakeLists.txt +++ b/examples/extended/medical/dna/dnaphysics/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(dnaphysics) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/dnaphysics/GNUmakefile b/examples/extended/medical/dna/dnaphysics/GNUmakefile old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/History b/examples/extended/medical/dna/dnaphysics/History index 454c4c1f57..0c447d3436 100644 --- a/examples/extended/medical/dna/dnaphysics/History +++ b/examples/extended/medical/dna/dnaphysics/History @@ -5,6 +5,9 @@ Package History file -------------------- +10 Nov 20 B. Morgan - tag dnaphysics-V10-06-00 +- Migration to G4RunManagerFactory. + 12 Jan 19 S. Incerti - tag dnaphysics-V10-05-00 - Updated README (test) @@ -41,13 +44,13 @@ 16 Aug 2017 - tag dnaphysics-V10-03-11 - SI - updated numbering scheme -12 Aug 2017 - tag dnaphysics-V10-03-10 - SI, VI +12 Aug 2017 - tag dnaphysics-V10-03-10 - SI, VI - updated plot.C with numbering -11 Aug 2017 - tag dnaphysics-V10-03-09 - SI, VI +11 Aug 2017 - tag dnaphysics-V10-03-09 - SI, VI - retag -10 Aug 2017 - tag dnaphysics-V10-03-08 - SI, VI +10 Aug 2017 - tag dnaphysics-V10-03-08 - SI, VI - fixed FPE, improved SteppingAction 09 Aug 2017 - tag dnaphysics-V10-03-07 - S. Incerti @@ -88,7 +91,7 @@ - dnaphysics.cc: second arg is nb of threads 02 June 2016 - tag dnaphysics-V10-02-01 - V. Ivanchenko -- DetectorConstructor, DetectorMessenger - ensure that geometry +- DetectorConstructor, DetectorMessenger - ensure that geometry is created once, material may be changed for next runs - /run/initialise moved from the code to macro - DNA physics configuration is moved from the code to macro @@ -151,30 +154,30 @@ 30 July 2013 - tag dnaphysics-V09-06-05 - A.Dotti - Bug fix for compilation warning with clang32 -10 June 2013 - tag dnaphysics-V09-06-04 - S. Incerti +10 June 2013 - tag dnaphysics-V09-06-04 - S. Incerti - Withdraw RunAction from ActionInitialization for master -28 May 2013 - tag dnaphysics-V09-06-03 - S. Incerti +28 May 2013 - tag dnaphysics-V09-06-03 - S. Incerti - changed modified density - removed standard process tagging in SteppingAction - updated plot.C -22 May 2013 - tag dnaphysics-V09-06-02 - M. Karamitros +22 May 2013 - tag dnaphysics-V09-06-02 - M. Karamitros - Migrated to MT 13 April 2013 - tag dnaphysics-V09-06-01 - S. Incerti - Removed unused electron capture process -- Changed process naming scheme as in the "microdosimetry" -advanced example +- Changed process naming scheme as in the "microdosimetry" +advanced example 15 February 2013 - tag dnaphysics-V09-06-00 - S. Incerti -- Changed default water definition +- Changed default water definition 3 November 2012 - tag dnaphysics-V09-05-07 - S. Incerti -- Removed shadowing in SteppingAction +- Removed shadowing in SteppingAction 26 October 2012 - tag dnaphysics-V09-05-06 - L. Pandola -- Changed CMakeLists.txt to deal with VIS +- Changed CMakeLists.txt to deal with VIS 26 October 2012 - tag dnaphysics-V09-05-05 - S. Incerti - Renamed executable. @@ -182,20 +185,20 @@ advanced example 11 October 2012 - tag dnaphysics-V09-05-04 - G. Cosmo - Explicit inclusion of units and constants headers -09 October 2012- tag dnaphysics-V09-05-03 - S. Incerti +09 October 2012- tag dnaphysics-V09-05-03 - S. Incerti - cleaned main -09 October 2012- tag dnaphysics-V09-05-02 - S. Incerti +09 October 2012- tag dnaphysics-V09-05-02 - S. Incerti - added more histogram variables -15 August 2012- tag dnaphysics-V09-05-01 - S. Incerti +15 August 2012- tag dnaphysics-V09-05-01 - S. Incerti - added messenger for material change - switched to new analysis interface from Guy Barrand -11 August 2012- tag dnaphysics-V09-05-00 - S. Incerti +11 August 2012- tag dnaphysics-V09-05-00 - S. Incerti - updated README and SteppingAction.cc files -05 November 2011- tag dnaphysics-V09-04-08 - S. Incerti +05 November 2011- tag dnaphysics-V09-04-08 - S. Incerti - removed export=root option in HistoManager.cc 24 August2011 - tag dnaphysics-V09-04-07 - S. Incerti @@ -209,7 +212,7 @@ advanced example 02 August 2011 - tag dnaphysics-V09-04-04 - S. Incerti - increased statistics in dna.mac as suggested by Gunter -- added total energy deposits in ntuple +- added total energy deposits in ntuple 05 April 2011 - tag dnaphysics-V09-04-03 - S. Incerti - added comment for use of variable density material diff --git a/examples/extended/medical/dna/dnaphysics/dnaphysics.cc b/examples/extended/medical/dna/dnaphysics/dnaphysics.cc old mode 100755 new mode 100644 index ce14cb036d..383dd8d35a --- a/examples/extended/medical/dna/dnaphysics/dnaphysics.cc +++ b/examples/extended/medical/dna/dnaphysics/dnaphysics.cc @@ -34,11 +34,7 @@ /// \brief Implementation of the dnaphysics example #include "G4Types.hh" -#ifdef G4MULTITHREADED - #include "G4MTRunManager.hh" -#else - #include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIExecutive.hh" @@ -61,13 +57,9 @@ int main(int argc,char** argv) // Construct the default run manager -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); if(argc==3) runManager->SetNumberOfThreads(atoi(argv[2])); else runManager->SetNumberOfThreads(2); -#else - G4RunManager* runManager = new G4RunManager; -#endif // Set mandatory user initialization classes runManager->SetUserInitialization(new DetectorConstruction); diff --git a/examples/extended/medical/dna/dnaphysics/dnaphysics.in b/examples/extended/medical/dna/dnaphysics/dnaphysics.in old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/dnaphysics.out b/examples/extended/medical/dna/dnaphysics/dnaphysics.out index ace54c3b0a..b10d1f7a41 100644 --- a/examples/extended/medical/dna/dnaphysics/dnaphysics.out +++ b/examples/extended/medical/dna/dnaphysics/dnaphysics.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,7 +13,16 @@ WWW : http://geant4.org/ ************************************************************** -##### Create analysis manager 0x1074b60 +##### Create analysis manager 0x1155750 + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : Analysis_W013 + issued by : G4RootNtupleFileManager::SetNtupleMergingMode +Merging ntuples is not applicable in sequential application. +Setting was ignored. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + Using Root analysis manager Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... @@ -28,10 +38,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -159,10 +171,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 1 GeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 1 MeV Emax= 100 MeV Nbins=40 1 MeV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 1 GeV Nbins=20 100 MeV - 1 GeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 1 GeV in 140 bins @@ -183,7 +196,7 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 1 GeV, 20 bins/decade, spline: 1 Sampling table 5x1001 from 0.1 GeV to 0.001 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 1 GeV + ePairProd : Emin= 0 eV Emax= 1 GeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 1 GeV, 20 bins/decade, spline: 1 @@ -195,28 +208,33 @@ e-_G4DNAElastic: for e- SubType=51 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAChampionElasticModel : Emin= 0 eV Emax= 1 MeV DummyModel : Emin= 1 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 e-_G4DNAExcitation: for e- SubType=52 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAEmfietzoglouExcitationModel : Emin= 0 eV Emax= 10 keV DNABornExcitationModel : Emin= 10 keV Emax= 1 MeV DummyModel : Emin= 1 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 e-_G4DNAVibExcitation: for e- SubType=54 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNASancheExcitationModel : Emin= 0 eV Emax= 100 eV DummyModel : Emin= 100 eV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 e-_G4DNAIonisation: for e- SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAEmfietzoglouIonisationModel : Emin= 0 eV Emax= 10 keV deltaBorn Fluo DNABornIonisationModel : Emin= 10 keV Emax= 1 MeV deltaBorn Fluo DummyModel : Emin= 1 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV DummyModel : Emin= 13 eV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 e-_G4DNAElectronSolvation: for e- SubType=58 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -224,10 +242,11 @@ DNAOneStepThermalizationModel : Emin= 0 eV Emax= 7.4 eV DNAOneStepThermalizationModel_Meesungnoen2002 : Emin= 7.4 eV Emax= 8.22 eV msc: for e+ SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 1 GeV Nbins=20 100 MeV - 1 GeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 1 GeV in 140 bins @@ -249,7 +268,7 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 1 GeV, 20 bins/decade, spline: 1 Sampling table 5x1001 from 0.1 GeV to 0.001 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 1 GeV + ePairProd : Emin= 0 eV Emax= 1 GeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -262,9 +281,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 1 GeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 1 MeV Emax= 1 GeV Nbins=60 1 MeV - 1 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 1 GeV in 140 bins @@ -286,28 +305,32 @@ proton_G4DNAElastic: for proton SubType=51 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAIonElasticModel : Emin= 0 eV Emax= 1 MeV DummyModel : Emin= 1 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 proton_G4DNAExcitation: for proton SubType=52 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAMillerGreenExcitationModel : Emin= 0 eV Emax= 500 keV DNABornExcitationModel : Emin= 500 keV Emax= 100 MeV DummyModel : Emin= 100 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 proton_G4DNAIonisation: for proton SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNARuddIonisationModel : Emin= 0 eV Emax= 500 keV deltaRudd Fluo DNABornIonisationModel : Emin= 500 keV Emax= 100 MeV deltaBorn Fluo DummyModel : Emin= 100 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 proton_G4DNAChargeDecrease: for proton SubType=56 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNADingfelderChargeDecreaseModel : Emin= 0 eV Emax= 100 MeV DummyModel : Emin= 100 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 1 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 1 GeV in 140 bins @@ -323,11 +346,12 @@ GenericIon_G4DNAIonisation: for GenericIon SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNARuddIonisationExtendedModel : Emin= 0 eV Emax= 10 MeV deltaRudd Fluo DummyModel : Emin= 10 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 1 MeV Emax= 1 GeV Nbins=60 1 MeV - 1 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 1 GeV in 140 bins @@ -343,26 +367,30 @@ alpha_G4DNAElastic: for alpha SubType=51 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAIonElasticModel : Emin= 0 eV Emax= 1 MeV DummyModel : Emin= 1 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 alpha_G4DNAExcitation: for alpha SubType=52 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAMillerGreenExcitationModel : Emin= 0 eV Emax= 400 MeV DummyModel : Emin= 400 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 alpha_G4DNAIonisation: for alpha SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNARuddIonisationModel : Emin= 0 eV Emax= 400 MeV deltaRudd Fluo DummyModel : Emin= 400 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 alpha_G4DNAChargeDecrease: for alpha SubType=56 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNADingfelderChargeDecreaseModel : Emin= 0 eV Emax= 400 MeV DummyModel : Emin= 400 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 msc: for alpha+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 1 MeV Emax= 1 GeV Nbins=60 1 MeV - 1 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for alpha+ SubType=2 dE/dx and range tables from 100 eV to 1 GeV in 140 bins @@ -375,31 +403,36 @@ alpha+_G4DNAElastic: for alpha+ SubType=51 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAIonElasticModel : Emin= 0 eV Emax= 1 MeV DummyModel : Emin= 1 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 alpha+_G4DNAExcitation: for alpha+ SubType=52 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAMillerGreenExcitationModel : Emin= 0 eV Emax= 400 MeV DummyModel : Emin= 400 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 alpha+_G4DNAIonisation: for alpha+ SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNARuddIonisationModel : Emin= 0 eV Emax= 400 MeV deltaRudd Fluo DummyModel : Emin= 400 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 alpha+_G4DNAChargeDecrease: for alpha+ SubType=56 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNADingfelderChargeDecreaseModel : Emin= 0 eV Emax= 400 MeV DummyModel : Emin= 400 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 alpha+_G4DNAChargeIncrease: for alpha+ SubType=57 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNADingfelderChargeIncreaseModel : Emin= 0 eV Emax= 400 MeV DummyModel : Emin= 400 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 1 GeV Nbins=140 100 eV - 1 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 1 GeV in 140 bins @@ -419,46 +452,54 @@ helium_G4DNAElastic: for helium SubType=51 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAIonElasticModel : Emin= 0 eV Emax= 1 MeV DummyModel : Emin= 1 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 helium_G4DNAExcitation: for helium SubType=52 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAMillerGreenExcitationModel : Emin= 0 eV Emax= 400 MeV DummyModel : Emin= 400 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 helium_G4DNAIonisation: for helium SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNARuddIonisationModel : Emin= 0 eV Emax= 400 MeV deltaRudd Fluo DummyModel : Emin= 400 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 helium_G4DNAChargeIncrease: for helium SubType=57 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNADingfelderChargeIncreaseModel : Emin= 0 eV Emax= 400 MeV DummyModel : Emin= 400 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hydrogen_G4DNAElastic: for hydrogen SubType=51 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAIonElasticModel : Emin= 0 eV Emax= 1 MeV DummyModel : Emin= 1 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hydrogen_G4DNAExcitation: for hydrogen SubType=52 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNAMillerGreenExcitationModel : Emin= 0 eV Emax= 500 keV DummyModel : Emin= 500 keV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hydrogen_G4DNAIonisation: for hydrogen SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNARuddIonisationModel : Emin= 0 eV Emax= 100 MeV deltaRudd Fluo DummyModel : Emin= 100 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 hydrogen_G4DNAChargeIncrease: for hydrogen SubType=57 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DNADingfelderChargeIncreaseModel : Emin= 0 eV Emax= 100 MeV DummyModel : Emin= 100 MeV Emax= 1 GeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 1 GeV Nbins=140 100 eV - 1 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 1 GeV in 140 bins @@ -475,9 +516,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 1 GeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 1 GeV Nbins=140 100 eV - 1 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 1 GeV in 140 bins @@ -494,9 +535,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 1 GeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 1 GeV Nbins=140 100 eV - 1 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 1 GeV in 140 bins @@ -513,9 +554,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 1 GeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 1 GeV Nbins=140 100 eV - 1 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 1 GeV in 140 bins @@ -532,9 +573,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 1 GeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 1 GeV Nbins=140 100 eV - 1 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 1 GeV in 140 bins @@ -551,9 +592,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 1 GeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 1 GeV Nbins=140 100 eV - 1 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 1 GeV in 140 bins @@ -587,7 +628,7 @@ Region -- -- is not associated to any world. Index : 0 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 1 um e- 1 um e+ 1 um proton 1 um - Energy thresholds : gamma 100 eV e- 243.293 eV e+ 238.864 eV proton 100 eV + Energy thresholds : gamma 100 eV e- 242.668 eV e+ 240.44 eV proton 100 eV Region(s) which use this couple : DefaultRegionForTheWorld @@ -601,13 +642,17 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -... open Root analysis file : dna.root - done +... create file : dna.root - done +... open analysis file : dna.root - done Run terminated. Run Summary Number of events processed : 2 - User=27.900000s Real=28.477168s Sys=0.050000s -... write Root file : dna.root - done -... close Root file : dna.root - done + User=4.720000s Real=5.139732s Sys=0.030000s +... write file : dna.root - done +... close file : dna.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. diff --git a/examples/extended/medical/dna/dnaphysics/include/DetectorConstruction.hh b/examples/extended/medical/dna/dnaphysics/include/DetectorConstruction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/include/PhysicsList.hh b/examples/extended/medical/dna/dnaphysics/include/PhysicsList.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/include/PrimaryGeneratorAction.hh b/examples/extended/medical/dna/dnaphysics/include/PrimaryGeneratorAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/include/RunAction.hh b/examples/extended/medical/dna/dnaphysics/include/RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/include/SteppingAction.hh b/examples/extended/medical/dna/dnaphysics/include/SteppingAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/plot.C b/examples/extended/medical/dna/dnaphysics/plot.C old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/src/DetectorConstruction.cc b/examples/extended/medical/dna/dnaphysics/src/DetectorConstruction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/src/PhysicsList.cc b/examples/extended/medical/dna/dnaphysics/src/PhysicsList.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/src/PrimaryGeneratorAction.cc b/examples/extended/medical/dna/dnaphysics/src/PrimaryGeneratorAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/src/RunAction.cc b/examples/extended/medical/dna/dnaphysics/src/RunAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/src/SteppingAction.cc b/examples/extended/medical/dna/dnaphysics/src/SteppingAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/dnaphysics/vis.mac b/examples/extended/medical/dna/dnaphysics/vis.mac old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/icsd/CMakeLists.txt b/examples/extended/medical/dna/icsd/CMakeLists.txt index f084d1261a..08f62803fb 100644 --- a/examples/extended/medical/dna/icsd/CMakeLists.txt +++ b/examples/extended/medical/dna/icsd/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(icsd) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/icsd/History b/examples/extended/medical/dna/icsd/History index 3949fbe94c..0a6302829a 100644 --- a/examples/extended/medical/dna/icsd/History +++ b/examples/extended/medical/dna/icsd/History @@ -14,11 +14,14 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-2020 B. Morgan - tag exicsd-V10-06-00 +- Migration to G4RunManagerFactory. + 26-11-19 I. Hrivnacova - tag exicsd-V10-05-01 - Fixed formatting in .README.txt and Doxygen warnings 01-11-19 V. Ivanchenko - tag exicsd-V10-05-00 -- icsd.mac - reduce statistics to 75 in order not to hit time +- icsd.mac - reduce statistics to 75 in order not to hit time limit nightly 07-11-18 I. Hrivnacova - tag exicsd-V10-04-04 diff --git a/examples/extended/medical/dna/icsd/icsd.cc b/examples/extended/medical/dna/icsd/icsd.cc index 21ed95b9e2..828545daf3 100644 --- a/examples/extended/medical/dna/icsd/icsd.cc +++ b/examples/extended/medical/dna/icsd/icsd.cc @@ -37,11 +37,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... #include "G4Types.hh" -#ifdef G4MULTITHREADED - #include "G4MTRunManager.hh" -#else - #include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIterminal.hh" @@ -80,12 +76,8 @@ int main(int argc,char** argv) // Construct the default run manager -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(2); // Is equal to 2 by default -#else - G4RunManager* runManager = new G4RunManager; -#endif // Set mandatory user initialization classes DetectorConstruction* detector = new DetectorConstruction; diff --git a/examples/extended/medical/dna/icsd/icsd.out b/examples/extended/medical/dna/icsd/icsd.out index 98ae8392c7..1e6d1765d0 100644 --- a/examples/extended/medical/dna/icsd/icsd.out +++ b/examples/extended/medical/dna/icsd/icsd.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,7 +13,16 @@ WWW : http://geant4.org/ ************************************************************** -##### Create analysis manager 0x11e4680 +##### Create analysis manager 0x20e76b0 + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : Analysis_W013 + issued by : G4RootNtupleFileManager::SetNtupleMergingMode +Merging ntuples is not applicable in sequential application. +Setting was ignored. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + Using Root analysis manager e-_G4DNAPTBAugerModel is constructed @@ -35,6 +45,7 @@ e-_excitation_interaction : Emin= 0 eV Emax= 100 TeV e-_G4DNAIonisation: for e- SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== e-_ionisation_interaction : Emin= 0 eV Emax= 100 TeV -... open Root analysis file : ICSD.root - done -... write Root file : ICSD.root - done -... close Root file : ICSD.root - done +... create file : ICSD.root - done +... open analysis file : ICSD.root - done +... write file : ICSD.root - done +... close file : ICSD.root - done diff --git a/examples/extended/medical/dna/mfp/CMakeLists.txt b/examples/extended/medical/dna/mfp/CMakeLists.txt index 12237a075b..f7adc52676 100644 --- a/examples/extended/medical/dna/mfp/CMakeLists.txt +++ b/examples/extended/medical/dna/mfp/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(mfp) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/mfp/mfp.out b/examples/extended/medical/dna/mfp/mfp.out index aa44eb064a..5298536a65 100644 --- a/examples/extended/medical/dna/mfp/mfp.out +++ b/examples/extended/medical/dna/mfp/mfp.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +26,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -140,9 +142,9 @@ e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -262,9 +264,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAAttachment = 1 e-_G4DNAElastic = 8998 e-_G4DNAExcitation = 12 e-_G4DNAVibExcitation = 989 MeanFreePath: 2.19 Ang +- 2.16 Ang massic: 0.00 mg/cm2 - CrossSection: 45756518.22 cm^-1 massic: 45756518.22 cm2/g + CrossSection: 45756510.39 cm^-1 massic: 45756510.39 cm2/g mean energy of charged secondaries: 0.00 eV mass_energy_transfer coef: 0.00 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -273,9 +278,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 8413 e-_G4DNAExcitation = 87 e-_G4DNAIonisation = 452 e-_G4DNAVibExcitation = 1048 MeanFreePath: 2.95 Ang +- 2.96 Ang massic: 0.00 mg/cm2 - CrossSection: 33852720.96 cm^-1 massic: 33852720.96 cm2/g + CrossSection: 33852715.17 cm^-1 massic: 33852715.17 cm2/g - mean energy of charged secondaries: 0.11 eV mass_energy_transfer coef: 187674.03 cm2/g + mean energy of charged secondaries: 0.11 eV mass_energy_transfer coef: 187674.00 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -284,9 +292,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 7493 e-_G4DNAExcitation = 153 e-_G4DNAIonisation = 1318 e-_G4DNAVibExcitation = 1036 MeanFreePath: 3.46 Ang +- 3.44 Ang massic: 0.00 mg/cm2 - CrossSection: 28934283.45 cm^-1 massic: 28934283.45 cm2/g + CrossSection: 28934278.50 cm^-1 massic: 28934278.50 cm2/g - mean energy of charged secondaries: 0.64 eV mass_energy_transfer coef: 617546.41 cm2/g + mean energy of charged secondaries: 0.64 eV mass_energy_transfer coef: 617546.31 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -295,9 +306,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 6520 e-_G4DNAExcitation = 123 e-_G4DNAIonisation = 2110 e-_G4DNAVibExcitation = 1247 MeanFreePath: 3.92 Ang +- 3.92 Ang massic: 0.00 mg/cm2 - CrossSection: 25529450.98 cm^-1 massic: 25529450.98 cm2/g + CrossSection: 25529446.62 cm^-1 massic: 25529446.62 cm2/g - mean energy of charged secondaries: 1.54 eV mass_energy_transfer coef: 982549.57 cm2/g + mean energy of charged secondaries: 1.54 eV mass_energy_transfer coef: 982549.40 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -306,9 +320,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 5975 e-_G4DNAExcitation = 126 e-_G4DNAIonisation = 2682 e-_G4DNAVibExcitation = 1217 MeanFreePath: 4.21 Ang +- 4.22 Ang massic: 0.00 mg/cm2 - CrossSection: 23743723.63 cm^-1 massic: 23743723.63 cm2/g + CrossSection: 23743719.57 cm^-1 massic: 23743719.57 cm2/g - mean energy of charged secondaries: 2.45 eV mass_energy_transfer coef: 1161723.39 cm2/g + mean energy of charged secondaries: 2.45 eV mass_energy_transfer coef: 1161723.19 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -317,9 +334,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 5385 e-_G4DNAExcitation = 155 e-_G4DNAIonisation = 3231 e-_G4DNAVibExcitation = 1229 MeanFreePath: 4.51 Ang +- 4.47 Ang massic: 0.00 mg/cm2 - CrossSection: 22182247.06 cm^-1 massic: 22182247.06 cm2/g + CrossSection: 22182243.27 cm^-1 massic: 22182243.27 cm2/g - mean energy of charged secondaries: 3.31 eV mass_energy_transfer coef: 1223217.68 cm2/g + mean energy of charged secondaries: 3.31 eV mass_energy_transfer coef: 1223217.47 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -328,9 +348,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 4979 e-_G4DNAExcitation = 122 e-_G4DNAIonisation = 3495 e-_G4DNAVibExcitation = 1404 MeanFreePath: 4.67 Ang +- 4.63 Ang massic: 0.00 mg/cm2 - CrossSection: 21404238.22 cm^-1 massic: 21404238.22 cm2/g + CrossSection: 21404234.56 cm^-1 massic: 21404234.56 cm2/g - mean energy of charged secondaries: 3.93 eV mass_energy_transfer coef: 1202032.70 cm2/g + mean energy of charged secondaries: 3.93 eV mass_energy_transfer coef: 1202032.50 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -339,9 +362,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 4494 e-_G4DNAExcitation = 115 e-_G4DNAIonisation = 3809 e-_G4DNAVibExcitation = 1582 MeanFreePath: 4.77 Ang +- 4.71 Ang massic: 0.00 mg/cm2 - CrossSection: 20979406.62 cm^-1 massic: 20979406.62 cm2/g + CrossSection: 20979403.03 cm^-1 massic: 20979403.03 cm2/g - mean energy of charged secondaries: 4.67 eV mass_energy_transfer coef: 1225412.55 cm2/g + mean energy of charged secondaries: 4.67 eV mass_energy_transfer coef: 1225412.34 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -350,9 +376,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 4440 e-_G4DNAExcitation = 105 e-_G4DNAIonisation = 4026 e-_G4DNAVibExcitation = 1429 MeanFreePath: 4.98 Ang +- 4.98 Ang massic: 0.00 mg/cm2 - CrossSection: 20065025.76 cm^-1 massic: 20065025.76 cm2/g + CrossSection: 20065022.32 cm^-1 massic: 20065022.32 cm2/g - mean energy of charged secondaries: 5.21 eV mass_energy_transfer coef: 1160670.54 cm2/g + mean energy of charged secondaries: 5.21 eV mass_energy_transfer coef: 1160670.34 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -361,9 +390,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 4225 e-_G4DNAExcitation = 126 e-_G4DNAIonisation = 4139 e-_G4DNAVibExcitation = 1510 MeanFreePath: 5.20 Ang +- 5.14 Ang massic: 0.00 mg/cm2 - CrossSection: 19240811.79 cm^-1 massic: 19240811.79 cm2/g + CrossSection: 19240808.50 cm^-1 massic: 19240808.50 cm2/g - mean energy of charged secondaries: 5.66 eV mass_energy_transfer coef: 1088598.88 cm2/g + mean energy of charged secondaries: 5.66 eV mass_energy_transfer coef: 1088598.69 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -372,9 +404,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 4216 e-_G4DNAExcitation = 128 e-_G4DNAIonisation = 5656 MeanFreePath: 8.48 Ang +- 8.48 Ang massic: 0.00 mg/cm2 - CrossSection: 11794399.23 cm^-1 massic: 11794399.23 cm2/g + CrossSection: 11794397.22 cm^-1 massic: 11794397.22 cm2/g - mean energy of charged secondaries: 10.62 eV mass_energy_transfer coef: 626275.24 cm2/g + mean energy of charged secondaries: 10.62 eV mass_energy_transfer coef: 626275.13 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -383,9 +418,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3999 e-_G4DNAExcitation = 128 e-_G4DNAIonisation = 5873 MeanFreePath: 1.08 nm +- 1.08 nm massic: 0.00 mg/cm2 - CrossSection: 9275774.10 cm^-1 massic: 9275774.10 cm2/g + CrossSection: 9275772.51 cm^-1 massic: 9275772.51 cm2/g - mean energy of charged secondaries: 12.60 eV mass_energy_transfer coef: 389559.52 cm2/g + mean energy of charged secondaries: 12.60 eV mass_energy_transfer coef: 389559.45 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -394,9 +432,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 4016 e-_G4DNAExcitation = 109 e-_G4DNAIonisation = 5875 MeanFreePath: 1.29 nm +- 1.29 nm massic: 0.00 mg/cm2 - CrossSection: 7752712.27 cm^-1 massic: 7752712.27 cm2/g + CrossSection: 7752710.95 cm^-1 massic: 7752710.95 cm2/g - mean energy of charged secondaries: 13.37 eV mass_energy_transfer coef: 259209.32 cm2/g + mean energy of charged secondaries: 13.37 eV mass_energy_transfer coef: 259209.28 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -405,9 +446,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3958 e-_G4DNAExcitation = 106 e-_G4DNAIonisation = 5936 MeanFreePath: 1.50 nm +- 1.52 nm massic: 0.00 mg/cm2 - CrossSection: 6649475.49 cm^-1 massic: 6649475.49 cm2/g + CrossSection: 6649474.36 cm^-1 massic: 6649474.36 cm2/g - mean energy of charged secondaries: 14.59 eV mass_energy_transfer coef: 194080.54 cm2/g + mean energy of charged secondaries: 14.59 eV mass_energy_transfer coef: 194080.51 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -416,9 +460,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3953 e-_G4DNAExcitation = 103 e-_G4DNAIonisation = 5944 MeanFreePath: 1.71 nm +- 1.74 nm massic: 0.00 mg/cm2 - CrossSection: 5840394.38 cm^-1 massic: 5840394.38 cm2/g + CrossSection: 5840393.38 cm^-1 massic: 5840393.38 cm2/g - mean energy of charged secondaries: 15.04 eV mass_energy_transfer coef: 146371.91 cm2/g + mean energy of charged secondaries: 15.04 eV mass_energy_transfer coef: 146371.88 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -427,9 +474,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3996 e-_G4DNAExcitation = 91 e-_G4DNAIonisation = 5913 MeanFreePath: 1.90 nm +- 1.90 nm massic: 0.00 mg/cm2 - CrossSection: 5252511.80 cm^-1 massic: 5252511.80 cm2/g + CrossSection: 5252510.90 cm^-1 massic: 5252510.90 cm2/g - mean energy of charged secondaries: 15.88 eV mass_energy_transfer coef: 119173.09 cm2/g + mean energy of charged secondaries: 15.88 eV mass_energy_transfer coef: 119173.07 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -438,9 +488,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3974 e-_G4DNAExcitation = 112 e-_G4DNAIonisation = 5914 MeanFreePath: 2.09 nm +- 2.09 nm massic: 0.00 mg/cm2 - CrossSection: 4791411.14 cm^-1 massic: 4791411.14 cm2/g + CrossSection: 4791410.32 cm^-1 massic: 4791410.32 cm2/g - mean energy of charged secondaries: 16.29 eV mass_energy_transfer coef: 97570.43 cm2/g + mean energy of charged secondaries: 16.29 eV mass_energy_transfer coef: 97570.41 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -449,9 +502,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3848 e-_G4DNAExcitation = 85 e-_G4DNAIonisation = 6067 MeanFreePath: 2.27 nm +- 2.28 nm massic: 0.00 mg/cm2 - CrossSection: 4404031.08 cm^-1 massic: 4404031.08 cm2/g + CrossSection: 4404030.33 cm^-1 massic: 4404030.33 cm2/g - mean energy of charged secondaries: 16.38 eV mass_energy_transfer coef: 80133.05 cm2/g + mean energy of charged secondaries: 16.38 eV mass_energy_transfer coef: 80133.04 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -460,9 +516,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3853 e-_G4DNAExcitation = 98 e-_G4DNAIonisation = 6049 MeanFreePath: 2.45 nm +- 2.44 nm massic: 0.00 mg/cm2 - CrossSection: 4087224.14 cm^-1 massic: 4087224.14 cm2/g + CrossSection: 4087223.44 cm^-1 massic: 4087223.44 cm2/g - mean energy of charged secondaries: 17.74 eV mass_energy_transfer coef: 72510.38 cm2/g + mean energy of charged secondaries: 17.74 eV mass_energy_transfer coef: 72510.37 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -471,9 +530,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3833 e-_G4DNAExcitation = 81 e-_G4DNAIonisation = 6086 MeanFreePath: 4.28 nm +- 4.24 nm massic: 0.00 mg/cm2 - CrossSection: 2338485.76 cm^-1 massic: 2338485.76 cm2/g + CrossSection: 2338485.36 cm^-1 massic: 2338485.36 cm2/g - mean energy of charged secondaries: 20.28 eV mass_energy_transfer coef: 23709.54 cm2/g + mean energy of charged secondaries: 20.28 eV mass_energy_transfer coef: 23709.53 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -482,9 +544,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3837 e-_G4DNAExcitation = 87 e-_G4DNAIonisation = 6076 MeanFreePath: 5.93 nm +- 5.91 nm massic: 0.00 mg/cm2 - CrossSection: 1685255.53 cm^-1 massic: 1685255.53 cm2/g + CrossSection: 1685255.24 cm^-1 massic: 1685255.24 cm2/g mean energy of charged secondaries: 22.94 eV mass_energy_transfer coef: 12888.63 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -493,9 +558,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3948 e-_G4DNAExcitation = 90 e-_G4DNAIonisation = 5962 MeanFreePath: 7.53 nm +- 7.47 nm massic: 0.00 mg/cm2 - CrossSection: 1327179.03 cm^-1 massic: 1327179.03 cm2/g + CrossSection: 1327178.80 cm^-1 massic: 1327178.80 cm2/g mean energy of charged secondaries: 21.95 eV mass_energy_transfer coef: 7283.50 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -504,9 +572,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3781 e-_G4DNAExcitation = 89 e-_G4DNAIonisation = 6130 MeanFreePath: 9.06 nm +- 9.06 nm massic: 0.00 mg/cm2 - CrossSection: 1103224.89 cm^-1 massic: 1103224.89 cm2/g + CrossSection: 1103224.70 cm^-1 massic: 1103224.70 cm2/g mean energy of charged secondaries: 23.00 eV mass_energy_transfer coef: 5075.28 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -515,9 +586,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3735 e-_G4DNAExcitation = 112 e-_G4DNAIonisation = 6153 MeanFreePath: 10.59 nm +- 10.55 nm massic: 0.00 mg/cm2 - CrossSection: 944104.06 cm^-1 massic: 944104.06 cm2/g + CrossSection: 944103.90 cm^-1 massic: 944103.90 cm2/g mean energy of charged secondaries: 24.51 eV mass_energy_transfer coef: 3856.45 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -526,9 +600,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3669 e-_G4DNAExcitation = 91 e-_G4DNAIonisation = 6240 MeanFreePath: 12.33 nm +- 12.22 nm massic: 0.00 mg/cm2 - CrossSection: 810987.39 cm^-1 massic: 810987.39 cm2/g + CrossSection: 810987.25 cm^-1 massic: 810987.25 cm2/g mean energy of charged secondaries: 24.57 eV mass_energy_transfer coef: 2846.37 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -537,9 +614,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3600 e-_G4DNAExcitation = 102 e-_G4DNAIonisation = 6298 MeanFreePath: 13.83 nm +- 13.53 nm massic: 0.00 mg/cm2 - CrossSection: 722866.49 cm^-1 massic: 722866.49 cm2/g + CrossSection: 722866.36 cm^-1 massic: 722866.36 cm2/g mean energy of charged secondaries: 25.43 eV mass_energy_transfer coef: 2297.50 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -548,9 +628,12 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3550 e-_G4DNAExcitation = 98 e-_G4DNAIonisation = 6352 MeanFreePath: 15.26 nm +- 15.11 nm massic: 0.00 mg/cm2 - CrossSection: 655182.91 cm^-1 massic: 655182.91 cm2/g + CrossSection: 655182.80 cm^-1 massic: 655182.80 cm2/g mean energy of charged secondaries: 28.13 eV mass_energy_transfer coef: 2047.73 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -559,6 +642,9 @@ See commands in /vis/modeling/trajectories/ for other options. Process calls frequency ---> e-_G4DNAElastic = 3484 e-_G4DNAExcitation = 84 e-_G4DNAIonisation = 6432 MeanFreePath: 16.99 nm +- 17.28 nm massic: 0.00 mg/cm2 - CrossSection: 588506.89 cm^-1 massic: 588506.89 cm2/g + CrossSection: 588506.79 cm^-1 massic: 588506.79 cm2/g mean energy of charged secondaries: 26.29 eV mass_energy_transfer coef: 1547.32 cm2/g +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. diff --git a/examples/extended/medical/dna/microdosimetry/CMakeLists.txt b/examples/extended/medical/dna/microdosimetry/CMakeLists.txt index 02f34123ad..70f5578e9e 100644 --- a/examples/extended/medical/dna/microdosimetry/CMakeLists.txt +++ b/examples/extended/medical/dna/microdosimetry/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(microdosimetry) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/microdosimetry/GNUmakefile b/examples/extended/medical/dna/microdosimetry/GNUmakefile old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/History b/examples/extended/medical/dna/microdosimetry/History index 28977878b1..4fbdfc5e9b 100644 --- a/examples/extended/medical/dna/microdosimetry/History +++ b/examples/extended/medical/dna/microdosimetry/History @@ -8,6 +8,9 @@ Package History file -------------------- +10-11-20 B. Morgan - microdosimetry-V10-06-00 +- Migration to G4RunManagerFactory. + 03-03-19 S. Incerti - microdosimetry-V10-05-00 - updated plot.C. @@ -78,7 +81,7 @@ - Correct the check on the output file command line option 10 Nov 2014 - M. Karamitros - microdosimetry-V10-00-05 -- Following Laurent's development: add a tab in the Qt interface +- Following Laurent's development: add a tab in the Qt interface displaying the README 10 Nov 2014 - M. Karamitros - microdosimetry-V10-00-04 @@ -91,7 +94,7 @@ displaying the README 06 Nov 2014 - M.Karamitros - microdosimetry-V10-00-02 - Check analysis manager is actived removed -- Select gui + vis from command line option +- Select gui + vis from command line option 23 Oct 2013 - V.Ivanchenko - microdosimetry-V10-00-01 - Fixed user actions and enter flexible number of threads @@ -171,7 +174,7 @@ displaying the README "target" region) + Modified related classes (RunAct and main) 18 August 2011 - S. Incerti - microdosimetry-V09-04-06 -- Added scoring of msc +- Added scoring of msc 18 August 2011 - S. Incerti - microdosimetry-V09-04-05 - Removed initStep test in SteppingAction @@ -230,8 +233,8 @@ displaying the README (to be used with emlowen-V09-02-50 and above) 13 August 2009 - S. Incerti - microdosimetry-V09-02-03 -- replaced H2O material by NIST G4_WATER - (to be used with emlowen-V09-02-50 and above) +- replaced H2O material by NIST G4_WATER + (to be used with emlowen-V09-02-50 and above) 10 August 2009 - S. Incerti - microdosimetry-V09-02-02 - added GenericIon definition to PhysicsList (required by rules of G4VUserPhysicsList) diff --git a/examples/extended/medical/dna/microdosimetry/include/CommandLineParser.hh b/examples/extended/medical/dna/microdosimetry/include/CommandLineParser.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/include/DetectorConstruction.hh b/examples/extended/medical/dna/microdosimetry/include/DetectorConstruction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/include/PhysicsList.hh b/examples/extended/medical/dna/microdosimetry/include/PhysicsList.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/include/PrimaryGeneratorAction.hh b/examples/extended/medical/dna/microdosimetry/include/PrimaryGeneratorAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/include/RunAction.hh b/examples/extended/medical/dna/microdosimetry/include/RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/include/SteppingAction.hh b/examples/extended/medical/dna/microdosimetry/include/SteppingAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/microdosimetry.cc b/examples/extended/medical/dna/microdosimetry/microdosimetry.cc old mode 100755 new mode 100644 index 9d94e7a7c2..4986d32bea --- a/examples/extended/medical/dna/microdosimetry/microdosimetry.cc +++ b/examples/extended/medical/dna/microdosimetry/microdosimetry.cc @@ -35,11 +35,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... #include "G4Types.hh" -#ifdef G4MULTITHREADED - #include "G4MTRunManager.hh" -#else - #include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIExecutive.hh" @@ -74,8 +70,7 @@ int main(int argc,char** argv) // Command* commandLine(0); -#ifdef G4MULTITHREADED - G4MTRunManager* runManager= new G4MTRunManager; + auto* runManager= G4RunManagerFactory::CreateRunManager(); if ((commandLine = parser->GetCommandIfActive("-mt"))) { int nThreads = 2; @@ -87,15 +82,13 @@ int main(int argc,char** argv) { nThreads = G4UIcommand::ConvertToInt(commandLine->GetOption()); } + + runManager->SetNumberOfThreads(nThreads); + G4cout << "===== Microdosimetry is started with " << runManager->GetNumberOfThreads() << " threads =====" << G4endl; - - runManager->SetNumberOfThreads(nThreads); } -#else - G4RunManager* runManager = new G4RunManager(); -#endif // Set mandatory user initialization classes @@ -235,12 +228,10 @@ void Parse(int& argc, char** argv) // "Give a seed value in argument to be tested", "seed"); // it is then up to you to manage this option -#ifdef G4MULTITHREADED parser->AddCommand("-mt", Command::WithOption, "Launch in MT mode (events computed in parallel)", "2"); -#endif parser->AddCommand("-vis", Command::WithOption, diff --git a/examples/extended/medical/dna/microdosimetry/microdosimetry.in b/examples/extended/medical/dna/microdosimetry/microdosimetry.in old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/microdosimetry.out b/examples/extended/medical/dna/microdosimetry/microdosimetry.out index 69ade3dc90..23c61d4295 100644 --- a/examples/extended/medical/dna/microdosimetry/microdosimetry.out +++ b/examples/extended/medical/dna/microdosimetry/microdosimetry.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -27,10 +28,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -66,11 +69,12 @@ Some /vis commands (optionally) take a string to specify colour. "/vis/list" to see available colours. msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== UrbanMsc : Emin= 1 MeV Emax= 100 TeV Nbins=56 1 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -84,39 +88,45 @@ eIoni: for e- SubType=2 e-_G4DNAElastic: for e- SubType=51 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNAChampionElasticModel : Emin= 0 eV Emax= 1 MeV e-_G4DNAExcitation: for e- SubType=52 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNABornExcitationModel : Emin= 0 eV Emax= 1 MeV e-_G4DNAIonisation: for e- SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNABornIonisationModel : Emin= 0 eV Emax= 1 MeV deltaBorn e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV e-_G4DNAVibExcitation: for e- SubType=54 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNASancheExcitationModel : Emin= 0 eV Emax= 100 eV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== WentzelVIUni : Emin= 1 MeV Emax= 100 TeV Nbins=56 1 MeV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -139,6 +149,7 @@ hIoni: for proton SubType=2 proton_G4DNAExcitation: for proton SubType=52 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNAMillerGreenExcitationModel : Emin= 0 eV Emax= 500 keV DNABornExcitationModel : Emin= 500 keV Emax= 10 MeV @@ -146,6 +157,7 @@ DNABornExcitationModel : Emin= 500 keV Emax= 10 MeV proton_G4DNAIonisation: for proton SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNARuddIonisationModel : Emin= 0 eV Emax= 500 keV deltaRudd DNABornIonisationModel : Emin= 500 keV Emax= 10 MeV deltaBorn @@ -153,19 +165,21 @@ DNABornIonisationModel : Emin= 500 keV Emax= 10 MeV deltaBorn proton_G4DNAElastic: for proton SubType=51 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNAIonElasticModel : Emin= 0 eV Emax= 1 MeV proton_G4DNAChargeDecrease: for proton SubType=56 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNADingfelderChargeDecreaseModel : Emin= 0 eV Emax= 10 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -177,11 +191,12 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== UrbanMsc : Emin= 1 MeV Emax= 100 TeV Nbins=56 1 MeV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -196,109 +211,127 @@ ionIoni: for alpha SubType=2 alpha_G4DNAExcitation: for alpha SubType=52 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNAMillerGreenExcitationModel : Emin= 0 eV Emax= 10 MeV alpha_G4DNAIonisation: for alpha SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNARuddIonisationModel : Emin= 0 eV Emax= 10 MeV deltaRudd alpha_G4DNAElastic: for alpha SubType=51 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNAIonElasticModel : Emin= 0 eV Emax= 1 MeV alpha_G4DNAChargeDecrease: for alpha SubType=56 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNADingfelderChargeDecreaseModel : Emin= 0 eV Emax= 10 MeV msc: for alpha+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== UrbanMsc : Emin= 1 MeV Emax= 100 TeV Nbins=56 1 MeV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 alpha+_G4DNAExcitation: for alpha+ SubType=52 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNAMillerGreenExcitationModel : Emin= 0 eV Emax= 10 MeV alpha+_G4DNAIonisation: for alpha+ SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNARuddIonisationModel : Emin= 0 eV Emax= 10 MeV deltaRudd alpha+_G4DNAElastic: for alpha+ SubType=51 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNAIonElasticModel : Emin= 0 eV Emax= 1 MeV alpha+_G4DNAChargeDecrease: for alpha+ SubType=56 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNADingfelderChargeDecreaseModel : Emin= 0 eV Emax= 10 MeV alpha+_G4DNAChargeIncrease: for alpha+ SubType=57 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNADingfelderChargeIncreaseModel : Emin= 0 eV Emax= 10 MeV helium_G4DNAExcitation: for helium SubType=52 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNAMillerGreenExcitationModel : Emin= 0 eV Emax= 10 MeV helium_G4DNAIonisation: for helium SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNARuddIonisationModel : Emin= 0 eV Emax= 10 MeV deltaRudd helium_G4DNAElastic: for helium SubType=51 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNAIonElasticModel : Emin= 0 eV Emax= 1 MeV helium_G4DNAChargeIncrease: for helium SubType=57 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNADingfelderChargeIncreaseModel : Emin= 0 eV Emax= 10 MeV hydrogen_G4DNAExcitation: for hydrogen SubType=52 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNAMillerGreenExcitationModel : Emin= 0 eV Emax= 500 keV hydrogen_G4DNAIonisation: for hydrogen SubType=53 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNARuddIonisationModel : Emin= 0 eV Emax= 10 MeV deltaRudd hydrogen_G4DNAElastic: for hydrogen SubType=51 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNAIonElasticModel : Emin= 0 eV Emax= 1 MeV hydrogen_G4DNAChargeIncrease: for hydrogen SubType=57 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== DummyModel : Emin= 0 eV Emax= 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 ===== EM models for the G4Region Target ====== DNADingfelderChargeIncreaseModel : Emin= 0 eV Emax= 10 MeV @@ -351,12 +384,15 @@ See commands in /vis/modeling/trajectories/ for other options. Run terminated. Run Summary Number of events processed : 2 - User=1131.270000s Real=1147.938105s Sys=0.280000s + User=28.400000s Real=30.006842s Sys=0.000000s Number and type of particles created outside region "Target" : -N e- : 714 +N e- : 745 _______________________ Number and type of particles created in region "Target" : -N e- : 46337 +N e- : 46184 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. @@ -377,11 +413,11 @@ Pool ID '7G4Event', size : 0.000961 MB Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.000961 MB Pool ID '17G4DynamicParticle', size : 1.08 MB -Pool ID '7G4Track', size : 2.17 MB +Pool ID '7G4Track', size : 2.15 MB Pool ID '18G4TouchableHistory', size : 0.000961 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Number of memory pools allocated: 9 of which, static: 0 -Dynamic pools deleted: 9 / Total memory freed: 3.3 MB +Dynamic pools deleted: 9 / Total memory freed: 3.2 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/extended/medical/dna/microdosimetry/plot.C b/examples/extended/medical/dna/microdosimetry/plot.C old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/src/CommandLineParser.cc b/examples/extended/medical/dna/microdosimetry/src/CommandLineParser.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/src/DetectorConstruction.cc b/examples/extended/medical/dna/microdosimetry/src/DetectorConstruction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/src/PhysicsList.cc b/examples/extended/medical/dna/microdosimetry/src/PhysicsList.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/src/PrimaryGeneratorAction.cc b/examples/extended/medical/dna/microdosimetry/src/PrimaryGeneratorAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/src/RunAction.cc b/examples/extended/medical/dna/microdosimetry/src/RunAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microdosimetry/src/SteppingAction.cc b/examples/extended/medical/dna/microdosimetry/src/SteppingAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microprox/CMakeLists.txt b/examples/extended/medical/dna/microprox/CMakeLists.txt index ba1421cfec..fb778b9b9c 100644 --- a/examples/extended/medical/dna/microprox/CMakeLists.txt +++ b/examples/extended/medical/dna/microprox/CMakeLists.txt @@ -1,7 +1,10 @@ #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(microprox) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/microprox/History b/examples/extended/medical/dna/microprox/History index c6c42d41bf..d03d401721 100644 --- a/examples/extended/medical/dna/microprox/History +++ b/examples/extended/medical/dna/microprox/History @@ -5,6 +5,9 @@ Package History file -------------------- +10/11/2020 - tag microprox-V10-06-00 - B. Morgan +- Migration to G4RunManagerFactory. + 26/11/2019 - tag microprox-V10-05-01 - I. Hrivnacova - Fixed formatting in .README.txt and Doxygen warnings diff --git a/examples/extended/medical/dna/microprox/microprox.cc b/examples/extended/medical/dna/microprox/microprox.cc index e0b8817201..649a8a2516 100644 --- a/examples/extended/medical/dna/microprox/microprox.cc +++ b/examples/extended/medical/dna/microprox/microprox.cc @@ -24,7 +24,7 @@ // ******************************************************************** // // This example is provided by the Geant4-DNA collaboration -// Any report or published results obtained using the Geant4-DNA software +// Any report or published results obtained using the Geant4-DNA software // shall cite the following Geant4-DNA collaboration publications: // Med. Phys. 45 (2018) e722-e739 // Phys. Med. 31 (2015) 861-874 @@ -39,11 +39,7 @@ #include "DetectorConstruction.hh" #include "ActionInitialization.hh" -#ifdef G4MULTITHREADED - #include "G4MTRunManager.hh" -#else - #include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIExecutive.hh" @@ -63,21 +59,16 @@ int main(int argc,char** argv) } // Construct the default run manager - -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = G4RunManagerFactory::CreateRunManager(); // Set mandatory initialization classes runManager->SetUserInitialization(new DetectorConstruction()); runManager->SetUserInitialization(new PhysicsList); - + // Set user action classes runManager->SetUserInitialization(new ActionInitialization()); - + // Initialize visualization G4VisManager* visManager = new G4VisExecutive; visManager->Initialize(); @@ -86,13 +77,13 @@ int main(int argc,char** argv) G4UImanager* UImanager = G4UImanager::GetUIpointer(); // Process macro or start UI session - if ( ! ui ) { + if ( ! ui ) { // batch mode G4String command = "/control/execute "; G4String fileName = argv[1]; UImanager->ApplyCommand(command+fileName); } - else { + else { // interactive mode UImanager->ApplyCommand("/control/execute init_vis.mac"); ui->SessionStart(); diff --git a/examples/extended/medical/dna/microprox/plot.C b/examples/extended/medical/dna/microprox/plot.C old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/microyz/CMakeLists.txt b/examples/extended/medical/dna/microyz/CMakeLists.txt index 6c44a824a5..e21be3a6df 100644 --- a/examples/extended/medical/dna/microyz/CMakeLists.txt +++ b/examples/extended/medical/dna/microyz/CMakeLists.txt @@ -2,7 +2,10 @@ #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(microyz) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/microyz/History b/examples/extended/medical/dna/microyz/History index dea17aaa0c..691fc2c408 100644 --- a/examples/extended/medical/dna/microyz/History +++ b/examples/extended/medical/dna/microyz/History @@ -5,16 +5,19 @@ Package History file -------------------- +10/11/20 - tag microyz-V10-06-00 - B. Morgan +- Migration to G4RunManagerFactory. + 11/02/19 - tag microyz-V10-05-02 - S. Incerti added EM UI commands in microyz.in 09/02/19 - tag microyz-V10-05-01 - S. Incerti added condensed history models including step size control -31/01/19 - tag microyz-V10-05-00 - I. Hrivnacova +31/01/19 - tag microyz-V10-05-00 - I. Hrivnacova Merged GitHub PR #4: all Boolean operators now return G4bool. -07/11/18 - tag microyz-V10-04-03 - I. Hrivnacova +07/11/18 - tag microyz-V10-04-03 - I. Hrivnacova updated plot.C for reading ntuples merged with row-wise mode (now default) diff --git a/examples/extended/medical/dna/microyz/microyz.cc b/examples/extended/medical/dna/microyz/microyz.cc index af54e74f8b..fbc49da811 100644 --- a/examples/extended/medical/dna/microyz/microyz.cc +++ b/examples/extended/medical/dna/microyz/microyz.cc @@ -24,7 +24,7 @@ // ******************************************************************** // // This example is provided by the Geant4-DNA collaboration -// Any report or published results obtained using the Geant4-DNA software +// Any report or published results obtained using the Geant4-DNA software // shall cite the following Geant4-DNA collaboration publications: // Phys. Med. 31 (2015) 861-874 // Med. Phys. 37 (2010) 4692-4708 @@ -38,11 +38,7 @@ #include "DetectorConstruction.hh" #include "ActionInitialization.hh" -#ifdef G4MULTITHREADED - #include "G4MTRunManager.hh" -#else - #include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIExecutive.hh" @@ -62,21 +58,16 @@ int main(int argc,char** argv) } // Construct the default run manager - -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = G4RunManagerFactory::CreateRunManager(); // Set mandatory initialization classes runManager->SetUserInitialization(new DetectorConstruction()); runManager->SetUserInitialization(new PhysicsList); - + // Set user action classes runManager->SetUserInitialization(new ActionInitialization()); - + // Initialize visualization G4VisManager* visManager = new G4VisExecutive; // G4VisExecutive can take a verbosity argument - see /vis/verbose guidance. @@ -87,13 +78,13 @@ int main(int argc,char** argv) G4UImanager* UImanager = G4UImanager::GetUIpointer(); // Process macro or start UI session - if ( ! ui ) { + if ( ! ui ) { // batch mode G4String command = "/control/execute "; G4String fileName = argv[1]; UImanager->ApplyCommand(command+fileName); } - else { + else { // interactive mode UImanager->ApplyCommand("/control/execute init_vis.mac"); ui->SessionStart(); diff --git a/examples/extended/medical/dna/microyz/microyz.out b/examples/extended/medical/dna/microyz/microyz.out index 5508c1ba32..d9039984ec 100644 --- a/examples/extended/medical/dna/microyz/microyz.out +++ b/examples/extended/medical/dna/microyz/microyz.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,7 +13,16 @@ WWW : http://geant4.org/ ************************************************************** -##### Create analysis manager 0x1d400f0 +##### Create analysis manager 0x2033b30 + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : Analysis_W013 + issued by : G4RootNtupleFileManager::SetNtupleMergingMode +Merging ntuples is not applicable in sequential application. +Setting was ignored. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + Using Root analysis manager Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... @@ -28,10 +38,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -151,9 +163,9 @@ e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -266,7 +278,8 @@ DNADingfelderChargeIncreaseModel : Emin= 0 eV Emax= 100 MeV G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -... open Root analysis file : yz.root - done +... create file : yz.root - done +... open analysis file : yz.root - done --> Event 0 starts. --> Event 100 starts. --> Event 200 starts. @@ -277,7 +290,10 @@ See commands in /vis/modeling/trajectories/ for other options. --> Event 700 starts. --> Event 800 starts. --> Event 900 starts. -... write Root file : yz.root - done -... close Root file : yz.root - done +... write file : yz.root - done +... close file : yz.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/medical/dna/microyz/plot.C b/examples/extended/medical/dna/microyz/plot.C old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/neuron/CMakeLists.txt b/examples/extended/medical/dna/neuron/CMakeLists.txt index c703ca56bb..31f90b3254 100644 --- a/examples/extended/medical/dna/neuron/CMakeLists.txt +++ b/examples/extended/medical/dna/neuron/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(neuron) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/neuron/History b/examples/extended/medical/dna/neuron/History index d4a8adeba8..6babea702b 100644 --- a/examples/extended/medical/dna/neuron/History +++ b/examples/extended/medical/dna/neuron/History @@ -6,6 +6,9 @@ Package History file -------------------- +26 Nov 2020 B. Morgan - tag neuron-V10-06-00 +- Migration to G4RunManagerFactory. + 26 Nov 2019 I. Hrivnacova - tag neuron-V10-05-00 - Fixed Doxygen warnings diff --git a/examples/extended/medical/dna/neuron/neuron.cc b/examples/extended/medical/dna/neuron/neuron.cc index abd9158463..5237d211bb 100644 --- a/examples/extended/medical/dna/neuron/neuron.cc +++ b/examples/extended/medical/dna/neuron/neuron.cc @@ -41,11 +41,7 @@ // //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... #include "G4Types.hh" -#ifdef G4MULTITHREADED - #include "G4MTRunManager.hh" -#else - #include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4DNAChemistryManager.hh" #include "G4Timer.hh" #include "G4UImanager.hh" @@ -81,8 +77,7 @@ int main(int argc,char** argv) // Command* commandLine(0); -#ifdef G4MULTITHREADED - G4MTRunManager* runManager= new G4MTRunManager; + auto* runManager= G4RunManagerFactory::CreateRunManager(); if ((commandLine = parser->GetCommandIfActive("-mt"))) { int nThreads = 2; @@ -94,17 +89,12 @@ int main(int argc,char** argv) { nThreads = G4UIcommand::ConvertToInt(commandLine->GetOption()); } + runManager->SetNumberOfThreads(nThreads); + G4cout << "===== neuron is started with " << runManager->GetNumberOfThreads() << " threads of MT MODE =====" << G4endl; - - runManager->SetNumberOfThreads(nThreads); } -#else - G4RunManager* runManager = new G4RunManager(); - G4cout << "===== neuron is started with " - << " SEQUENTIAL MODE =====" << G4endl; -#endif // Set mandatory user initialization classes DetectorConstruction* detector = new DetectorConstruction; @@ -236,13 +226,11 @@ void Parse(int& argc, char** argv) // "Give a seed value in argument to be tested", "seed"); // it is then up to you to manage this option -#ifdef G4MULTITHREADED parser->AddCommand("-mt", Command::WithOption, "Launch in MT mode (events computed in parallel)", " NOT RECOMMANDED WITH CHEMISTRY)", "2"); -#endif parser->AddCommand("-sXY", Command::OptionNotCompulsory, "Initial beam position uniformly spread on a square!"); diff --git a/examples/extended/medical/dna/neuron/neuron.out b/examples/extended/medical/dna/neuron/neuron.out index 0a6cd93a60..045f1e9f72 100644 --- a/examples/extended/medical/dna/neuron/neuron.out +++ b/examples/extended/medical/dna/neuron/neuron.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,7 +13,6 @@ WWW : http://geant4.org/ ************************************************************** -===== neuron is started with SEQUENTIAL MODE ===== Livermore + DNAphysics is activated! NeuronLoadDataFile::SingleNeuronSWCfile >> opening filename: @@ -61,10 +61,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -131,10 +133,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -157,7 +160,7 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 @@ -166,10 +169,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -191,7 +195,7 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -204,9 +208,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -220,7 +224,7 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for proton SubType=4 @@ -228,7 +232,7 @@ hPairProd: for proton SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -241,9 +245,9 @@ nuclearStopping: for proton SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -257,9 +261,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -274,9 +278,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -290,7 +294,7 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for anti_proton SubType=4 @@ -298,7 +302,7 @@ hPairProd: for anti_proton SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -307,9 +311,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -323,7 +327,7 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for kaon+ SubType=4 @@ -331,7 +335,7 @@ hPairProd: for kaon+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -340,9 +344,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -356,7 +360,7 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for kaon- SubType=4 @@ -364,7 +368,7 @@ hPairProd: for kaon- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -373,9 +377,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -390,7 +394,7 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied muPairProd: for mu+ SubType=4 @@ -398,7 +402,7 @@ muPairProd: for mu+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -407,9 +411,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -424,7 +428,7 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied muPairProd: for mu- SubType=4 @@ -432,7 +436,7 @@ muPairProd: for mu- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -441,9 +445,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -457,7 +461,7 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for pi+ SubType=4 @@ -465,7 +469,7 @@ hPairProd: for pi+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -474,9 +478,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -490,7 +494,7 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi ===== Limit on energy threshold has been applied hPairProd: for pi- SubType=4 @@ -498,7 +502,7 @@ hPairProd: for pi- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -507,9 +511,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. -End of tracking primary particle, its final energy is :3.47559 GeV +End of tracking primary particle, its final energy is :3.47556 GeV Physics stage ends -End of tracking primary particle, its final energy is :3.47619 GeV +End of tracking primary particle, its final energy is :3.47587 GeV Physics stage ends ======= The summary of simulation results 'neuron' ======== @@ -518,20 +522,20 @@ Physics stage ends Kinetic energy of beam = 3480 A*MeV Particle traversals the neuron = 0 of 2 Full LET of beam as formulas = 12.865 keV/um - Mean LET of beam as simulation = 10.882 +- 1.0638 keV/um - Mean track length of beam = 364.14 +- 0.032029 um + Mean LET of beam as simulation = 11.542 +- 0.55992 keV/um + Mean track length of beam = 362.54 +- 0.033628 um Particle fluence = 383.66 particles/cm^2 Fluence dose (full) = 7.9081e-06 Gy Fluence dose ber beam = 3.954e-06 Gy List of generated physical process: - eIoni= 3641 - ionIoni= 2376 - msc= 5345 + eIoni= 3913 + ionIoni= 2452 + msc= 5233 List of generated particles outside neuron structure: - e- : 2799 Emean = 1.3778 keV ( 243.31 eV --> 149.33 keV) Eflow/event = 1.9283 MeV + e- : 2948 Emean = 1.3963 keV ( 242.7 eV --> 149.02 keV) Eflow/event = 2.0581 MeV Number of secondary particles inside neuron structure: @@ -539,8 +543,8 @@ Physics stage ends time: 1 ps - 10 ps Total energy (MeV) deposition : - All volume: 7.9254 - Bounding slice: 2.0993 + All volume: 8.3686 + Bounding slice: 2.7129 Neuron: 0 Soma: 0 Dendrites: 0 @@ -558,7 +562,10 @@ Physics stage ends Outputs of energy deposition per event written in data file: OutputPerEvent.out - Calculation time = 4.82292 s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. + Calculation time = 6.4737 s Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/medical/dna/pdb4dna/CMakeLists.txt b/examples/extended/medical/dna/pdb4dna/CMakeLists.txt index 88af9933c4..617f3b360c 100644 --- a/examples/extended/medical/dna/pdb4dna/CMakeLists.txt +++ b/examples/extended/medical/dna/pdb4dna/CMakeLists.txt @@ -1,7 +1,10 @@ #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(pdb4dna) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/pdb4dna/History b/examples/extended/medical/dna/pdb4dna/History index e58d621bb0..6cb83188a5 100644 --- a/examples/extended/medical/dna/pdb4dna/History +++ b/examples/extended/medical/dna/pdb4dna/History @@ -15,7 +15,14 @@ committal in the CVS repository ! ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- - + +16-11-20 B.Morgan tag pdb4dna-V10-06-01 +- Revert migration to G4RunManagerFactory due to current incompatibility + with Tasking system identified in testing. + +10-11-20 B. Morgan tag pdb4dna-V10-06-00 +- Migration to G4RunManagerFactory. + 22-07-18 S. Incerti tag pdb4dna-V10-04-01 - removed obsolete RanecuEngine @@ -48,15 +55,15 @@ committal in the CVS repository ! 24.11.2014 M.K tag pdb4dna-V10-00-06 ----------------------------------------------------- - Retag before release - -06.11.2014 I.Hrivnacova + +06.11.2014 I.Hrivnacova ----------------------------------------------------- - Fixes in README files 05.11.2014 M.K tag pdb4dna-V10-00-05 ----------------------------------------------------- -- order of parsing changed. The goal: one can both -select a macro, mt, gui or choose a visualization +- order of parsing changed. The goal: one can both +select a macro, mt, gui or choose a visualization driver 05.11.2014 M.K tag pdb4dna-V10-00-04 diff --git a/examples/extended/medical/dna/pdb4dna/include/CommandLineParser.hh b/examples/extended/medical/dna/pdb4dna/include/CommandLineParser.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/pdb4dna/pdb4dna.out b/examples/extended/medical/dna/pdb4dna/pdb4dna.out index 120882a546..b412d04960 100644 --- a/examples/extended/medical/dna/pdb4dna/pdb4dna.out +++ b/examples/extended/medical/dna/pdb4dna/pdb4dna.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -28,10 +28,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -149,9 +151,9 @@ e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -364,5 +366,8 @@ See commands in /vis/modeling/trajectories/ for other options. --> Event 9700 starts. --> Event 9800 starts. --> Event 9900 starts. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/medical/dna/pdb4dna/src/CommandLineParser.cc b/examples/extended/medical/dna/pdb4dna/src/CommandLineParser.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/range/CMakeLists.txt b/examples/extended/medical/dna/range/CMakeLists.txt index 1355cfc618..c4b5726a4b 100644 --- a/examples/extended/medical/dna/range/CMakeLists.txt +++ b/examples/extended/medical/dna/range/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(range) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/range/range.out b/examples/extended/medical/dna/range/range.out index 8eee0af121..4f3bd15ec5 100644 --- a/examples/extended/medical/dna/range/range.out +++ b/examples/extended/medical/dna/range/range.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +26,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -142,9 +144,9 @@ e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -264,6 +266,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 29.002 nm +- 17.889 nm Projected range = 3.820 Ang +- 2.748 nm Penetration = 4.224 nm +- 2.525 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -272,6 +277,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 21.951 nm +- 23.987 nm Projected range = 4.067 Ang +- 2.479 nm Penetration = 3.440 nm +- 2.612 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -280,6 +288,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 11.147 nm +- 14.647 nm Projected range = 5.337 Ang +- 1.882 nm Penetration = 2.419 nm +- 1.932 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -288,6 +299,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 7.016 nm +- 7.440 nm Projected range = 3.868 Ang +- 1.448 nm Penetration = 1.972 nm +- 1.518 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -296,6 +310,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 6.373 nm +- 8.381 nm Projected range = 5.391 Ang +- 1.496 nm Penetration = 1.861 nm +- 1.630 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -304,6 +321,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 15.038 nm +- 18.804 nm Projected range = 5.255 Ang +- 2.146 nm Penetration = 2.780 nm +- 2.277 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -312,6 +332,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 17.395 nm +- 18.125 nm Projected range = 5.239 Ang +- 2.353 nm Penetration = 3.293 nm +- 2.397 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -320,6 +343,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 15.580 nm +- 17.445 nm Projected range = 5.842 Ang +- 2.199 nm Penetration = 3.042 nm +- 2.142 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -328,6 +354,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 12.725 nm +- 13.684 nm Projected range = 6.585 Ang +- 1.986 nm Penetration = 2.914 nm +- 2.017 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -336,6 +365,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 13.662 nm +- 14.860 nm Projected range = 8.018 Ang +- 2.132 nm Penetration = 3.023 nm +- 2.007 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -344,6 +376,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 15.223 nm +- 17.136 nm Projected range = 7.398 Ang +- 2.380 nm Penetration = 3.215 nm +- 2.278 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -352,6 +387,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 15.509 nm +- 15.605 nm Projected range = 9.015 Ang +- 2.487 nm Penetration = 3.394 nm +- 2.132 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -360,6 +398,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 16.108 nm +- 16.355 nm Projected range = 9.540 Ang +- 2.513 nm Penetration = 3.558 nm +- 2.205 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -368,6 +409,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 16.193 nm +- 14.905 nm Projected range = 1.294 nm +- 2.449 nm Penetration = 3.695 nm +- 2.120 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -376,6 +420,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 17.086 nm +- 15.614 nm Projected range = 1.441 nm +- 2.641 nm Penetration = 3.832 nm +- 2.185 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -384,6 +431,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 18.346 nm +- 17.721 nm Projected range = 1.347 nm +- 2.760 nm Penetration = 3.990 nm +- 2.241 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -392,6 +442,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 20.729 nm +- 17.414 nm Projected range = 2.042 nm +- 3.359 nm Penetration = 4.955 nm +- 2.598 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -400,6 +453,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 22.820 nm +- 17.248 nm Projected range = 2.869 nm +- 3.882 nm Penetration = 5.923 nm +- 2.897 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -408,6 +464,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 24.655 nm +- 16.269 nm Projected range = 3.955 nm +- 4.253 nm Penetration = 6.973 nm +- 3.187 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -416,6 +475,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 27.959 nm +- 17.884 nm Projected range = 4.542 nm +- 5.080 nm Penetration = 8.393 nm +- 3.677 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -424,6 +486,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 30.216 nm +- 17.613 nm Projected range = 6.020 nm +- 5.880 nm Penetration = 10.092 nm +- 4.375 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -432,6 +497,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 32.679 nm +- 18.083 nm Projected range = 6.712 nm +- 6.739 nm Penetration = 11.690 nm +- 5.089 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -440,6 +508,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 36.117 nm +- 18.561 nm Projected range = 8.213 nm +- 7.413 nm Penetration = 13.440 nm +- 5.834 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -448,6 +519,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 39.325 nm +- 18.495 nm Projected range = 9.566 nm +- 8.304 nm Penetration = 15.494 nm +- 6.215 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -456,6 +530,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 47.208 nm +- 20.676 nm Projected range = 12.115 nm +- 10.540 nm Penetration = 19.354 nm +- 7.964 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -464,6 +541,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 53.861 nm +- 20.324 nm Projected range = 15.223 nm +- 12.696 nm Penetration = 23.771 nm +- 9.860 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -472,6 +552,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 63.082 nm +- 21.675 nm Projected range = 19.698 nm +- 15.607 nm Penetration = 29.837 nm +- 11.756 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -480,6 +563,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 71.176 nm +- 23.369 nm Projected range = 23.688 nm +- 17.909 nm Penetration = 35.120 nm +- 13.668 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -488,6 +574,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 80.835 nm +- 26.248 nm Projected range = 27.336 nm +- 19.412 nm Penetration = 40.156 nm +- 15.309 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -495,7 +584,10 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 205.471 nm +- 53.650 nm Projected range = 83.424 nm +- 54.462 nm - Penetration = 122.232 nm +- 43.688 nm + Penetration = 122.233 nm +- 43.688 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -504,6 +596,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 379.112 nm +- 97.994 nm Projected range = 157.614 nm +- 106.343 nm Penetration = 230.086 nm +- 81.104 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -512,6 +607,9 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 595.181 nm +- 142.317 nm Projected range = 265.667 nm +- 164.188 nm Penetration = 379.507 nm +- 121.351 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================= run summary ==================== @@ -520,5 +618,8 @@ See commands in /vis/modeling/trajectories/ for other options. Track length of primary track = 862.628 nm +- 202.525 nm Projected range = 396.862 nm +- 238.211 nm Penetration = 559.410 nm +- 183.300 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/medical/dna/slowing/CMakeLists.txt b/examples/extended/medical/dna/slowing/CMakeLists.txt index ccb6e68107..ab748a2bbf 100644 --- a/examples/extended/medical/dna/slowing/CMakeLists.txt +++ b/examples/extended/medical/dna/slowing/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(slowing) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/slowing/History b/examples/extended/medical/dna/slowing/History index c7ddec3660..a745e8d184 100644 --- a/examples/extended/medical/dna/slowing/History +++ b/examples/extended/medical/dna/slowing/History @@ -5,10 +5,13 @@ Package History file -------------------- +10 Nov 20 - tag slowing-V10-06-00 - B. Morgan +- Migration to G4RunManagerFactory. + 26 Nov 19 - tag slowing-V10-05-00 - I. Hrivnacova - Fixed Doxygen warnings -22 Jul 18 - tag slowing-V10-04-02 - S. Incerti +22 Jul 18 - tag slowing-V10-04-02 - S. Incerti - removed obsolete RanecuEngine 13 June 2018 - tag slowing-V10-04-01 - S. Incerti diff --git a/examples/extended/medical/dna/slowing/slowing.cc b/examples/extended/medical/dna/slowing/slowing.cc index 0f868e01c5..84c9926441 100644 --- a/examples/extended/medical/dna/slowing/slowing.cc +++ b/examples/extended/medical/dna/slowing/slowing.cc @@ -34,11 +34,7 @@ /// \brief Implementation of the slowing example #include "G4Types.hh" -#ifdef G4MULTITHREADED - #include "G4MTRunManager.hh" -#else - #include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIExecutive.hh" @@ -59,16 +55,12 @@ int main(int argc,char** argv) } // Construct the default run manager -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); G4int nThreads = std::min(G4Threading::G4GetNumberOfCores(),4); if (argc==3) nThreads = G4UIcommand::ConvertToInt(argv[2]); runManager->SetNumberOfThreads(nThreads); G4cout << "===== slowing is started with " << runManager->GetNumberOfThreads() << " threads =====" << G4endl; -#else - G4RunManager* runManager = new G4RunManager; -#endif // Set mandatory user initialization classes runManager->SetUserInitialization(new DetectorConstruction); diff --git a/examples/extended/medical/dna/slowing/slowing.out b/examples/extended/medical/dna/slowing/slowing.out index c922a42475..90c979c542 100644 --- a/examples/extended/medical/dna/slowing/slowing.out +++ b/examples/extended/medical/dna/slowing/slowing.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,6 +13,7 @@ WWW : http://geant4.org/ ************************************************************** +===== slowing is started with 1 threads ===== Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... @@ -26,10 +28,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -146,9 +150,9 @@ e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -261,7 +265,8 @@ DNADingfelderChargeIncreaseModel : Emin= 0 eV Emax= 100 MeV G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -... open Root analysis file : slowing.root - done +... create file : slowing.root - done +... open analysis file : slowing.root - done --> Event 0 starts. --> Event 100 starts. --> Event 200 starts. @@ -277,7 +282,10 @@ See commands in /vis/modeling/trajectories/ for other options. Total Energy deposited = 8.000 MeV -... write Root file : slowing.root - done -... close Root file : slowing.root - done +... write file : slowing.root - done +... close file : slowing.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/medical/dna/splitting/CMakeLists.txt b/examples/extended/medical/dna/splitting/CMakeLists.txt index adb1da0a54..ba9163ebef 100644 --- a/examples/extended/medical/dna/splitting/CMakeLists.txt +++ b/examples/extended/medical/dna/splitting/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(splitting) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/splitting/History b/examples/extended/medical/dna/splitting/History index cc6f4ac288..917030f9c5 100644 --- a/examples/extended/medical/dna/splitting/History +++ b/examples/extended/medical/dna/splitting/History @@ -5,10 +5,13 @@ Package History file -------------------- +26 Nov 20 - tag splitting-V10-06-00 - B. Morgan +- Migration to G4RunManagerFactory. + 26 Nov 19 - tag splitting-V10-05-00 - I. Hrivnacova - Fixed formatting in .README.txt -22 Jul 18 - tag splitting-V10-04-02 - S. Incerti +22 Jul 18 - tag splitting-V10-04-02 - S. Incerti - removed obsolete RanecuEngine. 20 May 2018 - tag splitting-V10-04-01 - J. Allison diff --git a/examples/extended/medical/dna/splitting/include/PhysicsList.hh b/examples/extended/medical/dna/splitting/include/PhysicsList.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/splitting/include/PrimaryGeneratorAction.hh b/examples/extended/medical/dna/splitting/include/PrimaryGeneratorAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/splitting/splitting.cc b/examples/extended/medical/dna/splitting/splitting.cc index 363eb78ccb..5d90ab93ae 100644 --- a/examples/extended/medical/dna/splitting/splitting.cc +++ b/examples/extended/medical/dna/splitting/splitting.cc @@ -27,9 +27,9 @@ // Any report or published results obtained using the Geant4-DNA software // shall cite the following Geant4-DNA collaboration publication: // Med. Phys. 37 (2010) 4692-4708 -// Ramos-Mendez, et. Al. Flagged uniform particle splitting for track -// structure of proton and light ions -// (accepted in Phys. Med. Biol) +// Ramos-Mendez, et. Al. Flagged uniform particle splitting for track +// structure of proton and light ions +// (accepted in Phys. Med. Biol) // The Geant4-DNA web site is available at http://geant4-dna.org // // @@ -42,11 +42,7 @@ #include "PhysicsList.hh" #include "ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4VisExecutive.hh" #include "G4UIExecutive.hh" @@ -65,14 +61,10 @@ int main(int argc,char** argv) ui = new G4UIExecutive(argc, argv); } -#ifdef G4MULTITHREADED - G4MTRunManager* runManager= new G4MTRunManager; + auto* runManager= G4RunManagerFactory::CreateRunManager(); G4int nThreads = 2; runManager->SetNumberOfThreads(nThreads); -#else - G4RunManager* runManager = new G4RunManager(); -#endif - + // Set user classes // runManager->SetUserInitialization(new DetectorConstruction()); diff --git a/examples/extended/medical/dna/splitting/src/DetectorConstruction.cc b/examples/extended/medical/dna/splitting/src/DetectorConstruction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/splitting/src/PrimaryGeneratorAction.cc b/examples/extended/medical/dna/splitting/src/PrimaryGeneratorAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/splitting/src/SplitProcess.cc b/examples/extended/medical/dna/splitting/src/SplitProcess.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/splitting/src/SteppingAction.cc b/examples/extended/medical/dna/splitting/src/SteppingAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/splitting/src/TrackingAction.cc b/examples/extended/medical/dna/splitting/src/TrackingAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/spower/CMakeLists.txt b/examples/extended/medical/dna/spower/CMakeLists.txt index a83a2f8930..bda1b4758b 100644 --- a/examples/extended/medical/dna/spower/CMakeLists.txt +++ b/examples/extended/medical/dna/spower/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(spower) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/spower/spower.out b/examples/extended/medical/dna/spower/spower.out index f9a27deea0..b68798f569 100644 --- a/examples/extended/medical/dna/spower/spower.out +++ b/examples/extended/medical/dna/spower/spower.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +26,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -136,9 +138,9 @@ e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -256,27 +258,42 @@ See commands in /vis/modeling/trajectories/ for other options. The run is 10000 e- of 50.00 eV through a sphere of radius 1.00 m of G4_WATER (density: 1.00 g/cm3 ) total Stopping Power (keV/um) = 14.26 +- 0.86 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== The run is 10000 e- of 100.00 eV through a sphere of radius 1.00 m of G4_WATER (density: 1.00 g/cm3 ) total Stopping Power (keV/um) = 21.95 +- 1.15 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== The run is 10000 e- of 200.00 eV through a sphere of radius 1.00 m of G4_WATER (density: 1.00 g/cm3 ) total Stopping Power (keV/um) = 21.68 +- 1.07 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== The run is 10000 e- of 500.00 eV through a sphere of radius 1.00 m of G4_WATER (density: 1.00 g/cm3 ) total Stopping Power (keV/um) = 15.39 +- 0.84 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== The run is 10000 e- of 1.00 keV through a sphere of radius 1.00 m of G4_WATER (density: 1.00 g/cm3 ) total Stopping Power (keV/um) = 10.50 +- 0.68 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. diff --git a/examples/extended/medical/dna/svalue/CMakeLists.txt b/examples/extended/medical/dna/svalue/CMakeLists.txt index 5032dedb86..565917a8ea 100644 --- a/examples/extended/medical/dna/svalue/CMakeLists.txt +++ b/examples/extended/medical/dna/svalue/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(svalue) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/svalue/svalue.out b/examples/extended/medical/dna/svalue/svalue.out index a84cb1e75c..6af25b6d4f 100644 --- a/examples/extended/medical/dna/svalue/svalue.out +++ b/examples/extended/medical/dna/svalue/svalue.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +26,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -135,9 +137,9 @@ e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -289,11 +291,14 @@ See commands in /vis/modeling/trajectories/ for other options. S value for nucleus (N<-C) = 5.758 Gy/Bq.s +- 8.772 Gy/Bq.s Track length of primary track = 12.844 nm +- 10.693 nm - Projected range = 24155.325 fm +- 30.009 nm + Projected range = 24155.558 fm +- 30.009 nm Nb of steps of primary track = 43.48 +- 42.08 - Step size = 3.201 Ang +- 83299.663 fm + Step size = 3.201 Ang +- 83299.677 fm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -313,6 +318,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 50.72 +- 45.14 Step size = 3.961 Ang +- 1.121 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -332,6 +340,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 53.30 +- 39.45 Step size = 4.700 Ang +- 1.313 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -351,6 +362,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 58.72 +- 40.37 Step size = 5.482 Ang +- 1.675 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -370,6 +384,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 60.09 +- 37.44 Step size = 6.220 Ang +- 1.880 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -389,6 +406,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 68.03 +- 41.33 Step size = 6.926 Ang +- 2.131 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -396,7 +416,7 @@ See commands in /vis/modeling/trajectories/ for other options. Total Energy deposited in cytoplasm = 103.413 eV +- 119.158 eV - S value for cytoplasm (C<-C) = 165.660 Gy/Bq.s +- 190.882 Gy/Bq.s + S value for cytoplasm (C<-C) = 165.660 Gy/Bq.s +- 190.883 Gy/Bq.s Total Energy deposited in nucleus = 243.686 eV +- 280.069 eV @@ -408,6 +428,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 69.85 +- 37.85 Step size = 7.780 Ang +- 2.314 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -427,6 +450,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 75.25 +- 40.33 Step size = 8.558 Ang +- 2.628 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -446,6 +472,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 77.65 +- 39.50 Step size = 9.337 Ang +- 2.703 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -465,6 +494,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 80.54 +- 37.61 Step size = 1.016 nm +- 2.826 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -484,6 +516,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 121.71 +- 45.00 Step size = 1.787 nm +- 4.505 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -491,7 +526,7 @@ See commands in /vis/modeling/trajectories/ for other options. Total Energy deposited in cytoplasm = 37.121 eV +- 73.144 eV - S value for cytoplasm (C<-C) = 59.466 Gy/Bq.s +- 117.171 Gy/Bq.s + S value for cytoplasm (C<-C) = 59.466 Gy/Bq.s +- 117.170 Gy/Bq.s Total Energy deposited in nucleus = 120.594 eV +- 244.212 eV @@ -503,6 +538,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 152.22 +- 44.44 Step size = 2.550 nm +- 5.611 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -522,6 +560,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 182.61 +- 45.23 Step size = 3.319 nm +- 6.720 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -541,6 +582,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 216.94 +- 53.92 Step size = 4.062 nm +- 7.889 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -560,6 +604,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 242.22 +- 53.16 Step size = 4.773 nm +- 8.351 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -579,6 +626,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 270.23 +- 56.23 Step size = 5.554 nm +- 8.792 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -598,6 +648,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 296.47 +- 60.79 Step size = 6.234 nm +- 1.000 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -611,12 +664,15 @@ See commands in /vis/modeling/trajectories/ for other options. S value for nucleus (N<-C) = 14.056 Gy/Bq.s +- 33.526 Gy/Bq.s - Track length of primary track = 2.279 um +- 496.899 nm + Track length of primary track = 2.279 um +- 496.900 nm Projected range = 1.127 um +- 601.529 nm Nb of steps of primary track = 327.70 +- 60.61 Step size = 6.975 nm +- 1.059 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -631,10 +687,13 @@ See commands in /vis/modeling/trajectories/ for other options. S value for nucleus (N<-C) = 11.912 Gy/Bq.s +- 28.815 Gy/Bq.s Track length of primary track = 2.737 um +- 576.239 nm - Projected range = 1.377 um +- 745.672 nm + Projected range = 1.377 um +- 745.673 nm Nb of steps of primary track = 354.98 +- 65.42 Step size = 7.732 nm +- 1.094 nm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/medical/dna/wholeNuclearDNA/.README.txt b/examples/extended/medical/dna/wholeNuclearDNA/.README.txt old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/CMakeLists.txt b/examples/extended/medical/dna/wholeNuclearDNA/CMakeLists.txt old mode 100755 new mode 100644 index 2f1897fe18..7ef6c58be4 --- a/examples/extended/medical/dna/wholeNuclearDNA/CMakeLists.txt +++ b/examples/extended/medical/dna/wholeNuclearDNA/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(wholeNuclearDNA) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/wholeNuclearDNA/History b/examples/extended/medical/dna/wholeNuclearDNA/History old mode 100755 new mode 100644 index f1cee4d21e..59af24ee7e --- a/examples/extended/medical/dna/wholeNuclearDNA/History +++ b/examples/extended/medical/dna/wholeNuclearDNA/History @@ -5,6 +5,9 @@ Package History file -------------------- +10 Nov 2020 B. Morgan - wholeNuclearDNA-V10-06-00 +- Migration to G4RunManagerFactory. + 22 Jul 2018 S. Incerti - wholeNuclearDNA-V10-04-01 - removed obsolete RanecuEngine @@ -32,7 +35,7 @@ 10 Nov 2014 - M. Karamitros - tag wholeNuclearDNA-V10-00-06 - Copy missing plot.C in the bin directory - Create histogram only if needed -- Add GUI+vis selection via command line +- Add GUI+vis selection via command line (just as other dna examples) 06 Nov 2014 - I. Hrivnacova diff --git a/examples/extended/medical/dna/wholeNuclearDNA/README b/examples/extended/medical/dna/wholeNuclearDNA/README old mode 100755 new mode 100644 index e4c82d7b5a..0f20a71303 --- a/examples/extended/medical/dna/wholeNuclearDNA/README +++ b/examples/extended/medical/dna/wholeNuclearDNA/README @@ -24,7 +24,7 @@ shall cite the following Geant4-DNA collaboration publications: The wholenucleardna example offers the basic tools to simulate the track structure of different charge particles within a simplified geometrical model of the DNA molecule contained in a cell nucleus. In this example, the DetectorConstruction file contains the placement of the 6 Gbp (base-pairs) of a human cell respecting five compaction levels in the structure of the DNA molecule: double helix, nucleosome, chromatin fiber, simple chromatin fiber loop and complex chromatin fiber loops. -These complex chromatin fiber loops are then used to fill the chromosome territories using a constant density (~30-31 kbp/µm3. +These complex chromatin fiber loops are then used to fill the chromosome territories using a constant density (~30-31 kbp/µm3. Even though this geometry defines different volumes for the DNA base, the back-bone region or the histone proteins, the material filling all these volumes in the simulation is liquid water ("G4_WATER") In order to simulate all the energy transfer points of the track at nanometric level, the Geant4-DNA physics processes and models are used. @@ -36,7 +36,7 @@ http://geant4-dna.org As indicated in the introduction, the whole DNA molecule contained in a human cell with 5 different compaction levels is described in this geometry. In order to place the complex chromatin loops in each of the 43 chromosome territories, the files called "chromo-number.dat" are needed. These 43 chromosome territories are then placed in an ellipsoid that has the typical dimensions of a human fibroblast cell nucleus. All the volumes in the geometry are made of liquid water (G4_WATER material) despite of what they geometrically represent. -Particles are shot from a random (x,y)position covering the main central part of the cell nucleus and at z=2.99 µm from the center of the nucleus. This value allows the primary particle to be either inside the cell nucleus, either not far from the entrance surface so its energy loss before the cell nucleus entrance is negligible. +Particles are shot from a random (x,y)position covering the main central part of the cell nucleus and at z=2.99 µm from the center of the nucleus. This value allows the primary particle to be either inside the cell nucleus, either not far from the entrance surface so its energy loss before the cell nucleus entrance is negligible. WARNING: By default, the bases are not built. To build the whole geometry, set the flag fBuildBases in DetectorConstruction to true. diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo1.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo1.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo10.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo10.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo11.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo11.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo12.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo12.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo13.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo13.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo14.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo14.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo15.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo15.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo16.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo16.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo17.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo17.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo18.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo18.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo19.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo19.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo2.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo2.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo20.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo20.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo21.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo21.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo22.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo22.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo3.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo3.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo4.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo4.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo5.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo5.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo6.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo6.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo7.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo7.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo8.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo8.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromo9.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromo9.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromoX.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromoX.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/chromoY.dat b/examples/extended/medical/dna/wholeNuclearDNA/chromoY.dat old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/include/ActionInitialization.hh b/examples/extended/medical/dna/wholeNuclearDNA/include/ActionInitialization.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/include/Analysis.hh b/examples/extended/medical/dna/wholeNuclearDNA/include/Analysis.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/include/ChromosomeParameterisation.hh b/examples/extended/medical/dna/wholeNuclearDNA/include/ChromosomeParameterisation.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/include/CommandLineParser.hh b/examples/extended/medical/dna/wholeNuclearDNA/include/CommandLineParser.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/include/DetectorConstruction.hh b/examples/extended/medical/dna/wholeNuclearDNA/include/DetectorConstruction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/include/G4ElectronCapture.hh b/examples/extended/medical/dna/wholeNuclearDNA/include/G4ElectronCapture.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/include/PhysicsList.hh b/examples/extended/medical/dna/wholeNuclearDNA/include/PhysicsList.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/include/PrimaryGeneratorAction.hh b/examples/extended/medical/dna/wholeNuclearDNA/include/PrimaryGeneratorAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/include/RunAction.hh b/examples/extended/medical/dna/wholeNuclearDNA/include/RunAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/include/SteppingAction.hh b/examples/extended/medical/dna/wholeNuclearDNA/include/SteppingAction.hh old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/plot.C b/examples/extended/medical/dna/wholeNuclearDNA/plot.C old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/src/ActionInitialization.cc b/examples/extended/medical/dna/wholeNuclearDNA/src/ActionInitialization.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/src/ChromosomeParameterisation.cc b/examples/extended/medical/dna/wholeNuclearDNA/src/ChromosomeParameterisation.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/src/CommandLineParser.cc b/examples/extended/medical/dna/wholeNuclearDNA/src/CommandLineParser.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/src/DetectorConstruction.cc b/examples/extended/medical/dna/wholeNuclearDNA/src/DetectorConstruction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/src/G4ElectronCapture.cc b/examples/extended/medical/dna/wholeNuclearDNA/src/G4ElectronCapture.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/src/PhysicsList.cc b/examples/extended/medical/dna/wholeNuclearDNA/src/PhysicsList.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/src/PrimaryGeneratorAction.cc b/examples/extended/medical/dna/wholeNuclearDNA/src/PrimaryGeneratorAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/src/RunAction.cc b/examples/extended/medical/dna/wholeNuclearDNA/src/RunAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/src/SteppingAction.cc b/examples/extended/medical/dna/wholeNuclearDNA/src/SteppingAction.cc old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/vis.mac b/examples/extended/medical/dna/wholeNuclearDNA/vis.mac old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/wholeNuclearDNA.cc b/examples/extended/medical/dna/wholeNuclearDNA/wholeNuclearDNA.cc old mode 100755 new mode 100644 index 4ac0dc7517..5cc6b707b9 --- a/examples/extended/medical/dna/wholeNuclearDNA/wholeNuclearDNA.cc +++ b/examples/extended/medical/dna/wholeNuclearDNA/wholeNuclearDNA.cc @@ -35,11 +35,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... #include "G4Types.hh" -#ifdef G4MULTITHREADED - #include "G4MTRunManager.hh" -#else - #include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4UIExecutive.hh" @@ -74,8 +70,7 @@ int main(int argc,char** argv) // Command* commandLine(0); -#ifdef G4MULTITHREADED - G4MTRunManager* runManager= new G4MTRunManager; + auto* runManager= G4RunManagerFactory::CreateRunManager(); if ((commandLine = parser->GetCommandIfActive("-mt"))) { int nThreads = 2; @@ -87,15 +82,13 @@ int main(int argc,char** argv) { nThreads = G4UIcommand::ConvertToInt(commandLine->GetOption()); } + + runManager->SetNumberOfThreads(nThreads); + G4cout << "===== WholeNuclearDNA is started with " << runManager->GetNumberOfThreads() << " threads =====" << G4endl; - - runManager->SetNumberOfThreads(nThreads); } -#else - G4RunManager* runManager = new G4RunManager(); -#endif // Set mandatory user initialization classes DetectorConstruction* detector = new DetectorConstruction; @@ -228,12 +221,10 @@ void Parse(int& argc, char** argv) // "Give a seed value in argument to be tested", "seed"); // it is then up to you to manage this option -#ifdef G4MULTITHREADED parser->AddCommand("-mt", Command::WithOption, "Launch in MT mode (events computed in parallel)", "2"); -#endif parser->AddCommand("-vis", Command::WithOption, diff --git a/examples/extended/medical/dna/wholeNuclearDNA/wholeNuclearDNA.in b/examples/extended/medical/dna/wholeNuclearDNA/wholeNuclearDNA.in old mode 100755 new mode 100644 diff --git a/examples/extended/medical/dna/wholeNuclearDNA/wholeNuclearDNA.out b/examples/extended/medical/dna/wholeNuclearDNA/wholeNuclearDNA.out index d14b41290e..2400defddc 100644 --- a/examples/extended/medical/dna/wholeNuclearDNA/wholeNuclearDNA.out +++ b/examples/extended/medical/dna/wholeNuclearDNA/wholeNuclearDNA.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -73,10 +74,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -163,9 +166,9 @@ e-_G4DNAAttachment: for e- SubType=55 BuildTable=0 DNAMeltonAttachmentModel : Emin= 0 eV Emax= 13 eV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -277,5 +280,8 @@ hydrogen_G4DNAChargeIncrease: for hydrogen SubType=57 BuildTable=0 DNADingfelderChargeIncreaseModel : Emin= 0 eV Emax= 100 MeV G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/medical/dna/wvalue/CMakeLists.txt b/examples/extended/medical/dna/wvalue/CMakeLists.txt index 9cab8936c3..a1e059db37 100644 --- a/examples/extended/medical/dna/wvalue/CMakeLists.txt +++ b/examples/extended/medical/dna/wvalue/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(wvalue) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/dna/wvalue/wvalue.out b/examples/extended/medical/dna/wvalue/wvalue.out index fada96fcc4..3dcf986431 100644 --- a/examples/extended/medical/dna/wvalue/wvalue.out +++ b/examples/extended/medical/dna/wvalue/wvalue.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +26,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -142,9 +144,9 @@ e-_G4DNAIonisation: for e- SubType=53 BuildTable=0 DNAEmfietzoglouIonisationModel : Emin= 0 eV Emax= 10 keV deltaBorn Fluo msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -272,7 +274,10 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 61.37 +- 58.20 - Step size = 1.724 Ang +- 40341.767 fm + Step size = 1.724 Ang +- 40341.774 fm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -289,7 +294,10 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 43.57 +- 38.47 - Step size = 1.837 Ang +- 48581.138 fm + Step size = 1.837 Ang +- 48581.147 fm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -306,7 +314,10 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 59.45 +- 72.51 - Step size = 1.965 Ang +- 56108.183 fm + Step size = 1.965 Ang +- 56108.192 fm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -323,7 +334,10 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 58.53 +- 58.36 - Step size = 2.116 Ang +- 53906.854 fm + Step size = 2.116 Ang +- 53906.863 fm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -340,7 +354,10 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 56.44 +- 53.88 - Step size = 2.204 Ang +- 52897.101 fm + Step size = 2.204 Ang +- 52897.110 fm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -357,7 +374,10 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 62.05 +- 52.75 - Step size = 2.250 Ang +- 53177.352 fm + Step size = 2.250 Ang +- 53177.361 fm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -374,7 +394,10 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 61.94 +- 59.52 - Step size = 2.304 Ang +- 51042.109 fm + Step size = 2.304 Ang +- 51042.118 fm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -391,7 +414,10 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 66.01 +- 61.06 - Step size = 2.382 Ang +- 55677.687 fm + Step size = 2.382 Ang +- 55677.696 fm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -408,7 +434,10 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 62.66 +- 55.90 - Step size = 2.437 Ang +- 58312.927 fm + Step size = 2.437 Ang +- 58312.937 fm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -425,7 +454,10 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 63.68 +- 51.82 - Step size = 2.473 Ang +- 56051.374 fm + Step size = 2.473 Ang +- 56051.383 fm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -442,7 +474,10 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 64.01 +- 51.58 - Step size = 2.512 Ang +- 57595.334 fm + Step size = 2.512 Ang +- 57595.343 fm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -459,7 +494,10 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 75.74 +- 57.75 - Step size = 3.092 Ang +- 83363.142 fm + Step size = 3.092 Ang +- 83363.156 fm +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -477,6 +515,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 81.20 +- 56.38 Step size = 3.658 Ang +- 1.108 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -494,6 +535,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 84.70 +- 54.16 Step size = 4.183 Ang +- 1.291 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -511,6 +555,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 92.55 +- 56.43 Step size = 4.725 Ang +- 1.495 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -528,6 +575,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 95.59 +- 58.09 Step size = 5.400 Ang +- 1.723 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -545,6 +595,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 99.69 +- 56.05 Step size = 5.995 Ang +- 1.914 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -562,6 +615,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 105.95 +- 58.60 Step size = 6.558 Ang +- 2.086 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -579,6 +635,9 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 107.18 +- 55.92 Step size = 7.187 Ang +- 2.324 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ======================== run summary ===================== @@ -596,5 +655,8 @@ See commands in /vis/modeling/trajectories/ for other options. Nb of steps of primary track = 108.75 +- 53.70 Step size = 8.021 Ang +- 2.473 Ang +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/medical/electronScattering/CMakeLists.txt b/examples/extended/medical/electronScattering/CMakeLists.txt index b3e8b40057..e8c922fa9c 100644 --- a/examples/extended/medical/electronScattering/CMakeLists.txt +++ b/examples/extended/medical/electronScattering/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(electronScattering) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/electronScattering/electronScattering.out b/examples/extended/medical/electronScattering/electronScattering.out index c58a21461c..021c4b2146 100644 --- a/examples/extended/medical/electronScattering/electronScattering.out +++ b/examples/extended/medical/electronScattering/electronScattering.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -56,7 +56,7 @@ ---> Isotope: Al27 Z = 13 N = 27 A = 26.98 g/mole abundance: 100.000 % ElmMassFraction: 6.00 % ElmAbundance 10.20 % - ---> Element: Vanadium (Va) Z = 23.0 N = 51 A = 50.941 g/mole + ---> Element: Vanadium (Va) Z = 23.0 N = 51 A = 50.942 g/mole ---> Isotope: Va50 Z = 23 N = 50 A = 49.95 g/mole abundance: 0.250 % ---> Isotope: Va51 Z = 23 N = 51 A = 50.94 g/mole abundance: 99.750 % ElmMassFraction: 4.00 % ElmAbundance 3.60 % @@ -82,7 +82,7 @@ ElmMassFraction: 33.30 % ElmAbundance 18.18 % - Material: Helium density: 0.166 kg/m3 RadL: 5.682 km Nucl.Int.Length: 3.348 km + Material: Helium density: 0.166 mg/cm3 RadL: 5.682 km Nucl.Int.Length: 3.348 km Imean: 41.800 eV temperature: 293.00 K pressure: 1.00 atm ---> Element: Helium (He) Z = 2.0 N = 4 A = 4.003 g/mole @@ -142,7 +142,7 @@ ElmMassFraction: 100.00 % ElmAbundance 100.00 % - Material: Galactic density: 0.000 kg/m3 RadL: 204310101.835 pc Nucl.Int.Length: 113427275.267 pc + Material: Galactic density: 0.000 mg/cm3 RadL: 204310098.490 pc Nucl.Int.Length: 113427284.261 pc Imean: 19.200 eV temperature: 2.73 K pressure: 0.00 atm ---> Element: H (H) Z = 1.0 N = 1 A = 1.008 g/mole @@ -226,14 +226,14 @@ Index : 1 used in the geometry : Yes Index : 2 used in the geometry : Yes Material : Titanium Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 12.7877 keV e- 807.855 keV e+ 770.853 keV proton 100 keV + Energy thresholds : gamma 12.8972 keV e- 809.624 keV e+ 767.248 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 3 used in the geometry : Yes Material : Mylar Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 3.0095 keV e- 419.056 keV e+ 405.255 keV proton 100 keV + Energy thresholds : gamma 3.02067 keV e- 419.056 keV e+ 405.209 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -247,7 +247,7 @@ Index : 4 used in the geometry : Yes Index : 5 used in the geometry : Yes Material : Aluminium Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.90532 keV e- 597.637 keV e+ 574.097 keV proton 100 keV + Energy thresholds : gamma 6.90363 keV e- 598.345 keV e+ 570.85 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -268,15 +268,16 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume ------- -------- ------ ------ -------- ---------- ---------- - 53.92 0k 2 2 9 0.00 Frame - 46.08 0k 1 3 4 0.00 Gas + 55.71 0k 2 2 9 0.00 Frame + 44.29 0k 1 3 4 0.00 Gas ### Run 0 starts. --------- Ranecu engine status --------- Initial seed (index) = 0 Current couple of seeds = 9876, 54321 ---------------------------------------- -... open Root analysis file : eScattering.root - done +... create file : eScattering.root - done +... open analysis file : eScattering.root - done --> Event 0 starts. --> Event 10000 starts. --> Event 20000 starts. @@ -290,17 +291,17 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Run terminated. Run Summary Number of events processed : 100000 - User=8.460000s Real=8.765988s Sys=0.010000s + User=5.040000s Real=5.153386s Sys=0.000000s ======================== run summary ====================== The run was 100000 e- of 13 MeV through 0 fm of Air (density: 1.21 mg/cm3) -... write Root file : eScattering.root - done -... close Root file : eScattering.root - done +... write file : eScattering.root - done +... close file : eScattering.root - done --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 2070692869, 1954342156 + Current couple of seeds = 1313997431, 573874287 ---------------------------------------- G4 kernel has come to Quit state. UserDetectorConstruction deleted. diff --git a/examples/extended/medical/electronScattering2/.README.txt b/examples/extended/medical/electronScattering2/.README.txt index 26ecf6fbe0..08aa677316 100644 --- a/examples/extended/medical/electronScattering2/.README.txt +++ b/examples/extended/medical/electronScattering2/.README.txt @@ -35,7 +35,7 @@ publshed as: "The accuracy of EGSnrc, Geant4 and PENELOPE Monte Carlo systems for the simulation of electron scatter in external beam radiotherapy," by Bruce A Faddegon, Iwan Kawrakow, Yuri Kubyshin, Joseph Perl, Josep Sempau and Laszlo Urban, -Phys. Med. Biol. 54 (2009) 6151Ð6163, DOI:10.1088/0031-9155/54/20/008 +Phys. Med. Biol. 54 (2009) 6151-6163, DOI:10.1088/0031-9155/54/20/008 This present example, electronScattering2, was the Geant4 code used for this publication. diff --git a/examples/extended/medical/electronScattering2/CMakeLists.txt b/examples/extended/medical/electronScattering2/CMakeLists.txt index 76927de297..682de106c3 100644 --- a/examples/extended/medical/electronScattering2/CMakeLists.txt +++ b/examples/extended/medical/electronScattering2/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(electronScattering2) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/electronScattering2/History b/examples/extended/medical/electronScattering2/History index 3693842f8d..7a5debc94b 100644 --- a/examples/extended/medical/electronScattering2/History +++ b/examples/extended/medical/electronScattering2/History @@ -13,6 +13,9 @@ track of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-20 B. Morgan (exampleES2-V10-06-00) +- Migration to G4RunManagerFactory. + 07-05-19 I. Hrivnacova (exampleES2-V10-05-00) - Fixed warning about "Attempting to add multiple times the same sensitive detector". @@ -45,7 +48,7 @@ track of all tags. 19 October 2015 Daren Sawkey (exampleES2-V10-01-04) - Modify primary foil parameters by setting class variables and calling - G4RunManager [Physics/Geometry]HasBeenModified. + G4RunManager [Physics/Geometry]HasBeenModified. 21 July 2015 Daren Sawkey (exampleES2-V10-01-03) - add physics list G4EmStandardGS to PhysicsList.cc @@ -59,9 +62,9 @@ track of all tags. 13 February 2015 Daren Sawkey (exampleES2-V10-01-00) - Add macro commands to use more physics list constructors in Geant4 source -- Rename local physics lists -- Add G4LossTableManager - +- Rename local physics lists +- Add G4LossTableManager + 06 June 2014 Daren Sawkey (exampleES2-V10-00-02) - extended example coding guidelines: - set cuts using G4UserPhysicsListMessenger command @@ -125,19 +128,19 @@ track of all tags. 4 September 2012, Ivana Hrivnacova (exampleES2-V09-05-05) - Added CMakeLists.txt: - - Added .README - + - Added .README + 20 April 2012, Joseph Perl - Apply coding guideline 2.1 - + 19 April 2012, Joseph Perl - Correct area calculation in ElectronRun - Apply new examples coding guidelines 09-02-12 V.Ivanchenko (exampleES2-V09-05-04) - PhysListEmStandardSS, PhysListEmStandardWVI - more correct order - and fixed initialisation - + and fixed initialisation + 29 October 2011, Joseph Perl (exampleES2-V09-04-03) - Updated PhysListEmStandard.cc to match version in electronScattering @@ -158,9 +161,9 @@ track of all tags. 4th June 2010, Joseph Perl (exampleES2-V09-03-00) - Updated vis usage. - + 9th December 2009, Joseph Perl (exampleES2-V09-02-01) - Correct density for C, Cu and Au. - + 3rd December 2009, Joseph Perl (exampleES2-V09-02-00) - Introducing this example. diff --git a/examples/extended/medical/electronScattering2/README b/examples/extended/medical/electronScattering2/README index 23b07fff5a..603ecacbb0 100644 --- a/examples/extended/medical/electronScattering2/README +++ b/examples/extended/medical/electronScattering2/README @@ -36,7 +36,7 @@ published as: "The accuracy of EGSnrc, Geant4 and PENELOPE Monte Carlo systems for the simulation of electron scatter in external beam radiotherapy," by Bruce A Faddegon, Iwan Kawrakow, Yuri Kubyshin, Joseph Perl, Josep Sempau and Laszlo Urban, -Phys. Med. Biol. 54 (2009) 6151Ð6163, DOI:10.1088/0031-9155/54/20/008 +Phys. Med. Biol. 54 (2009) 6151-6163, DOI:10.1088/0031-9155/54/20/008 This present example, electronScattering2, was the Geant4 code used for this publication. diff --git a/examples/extended/medical/electronScattering2/electronScattering2.cc b/examples/extended/medical/electronScattering2/electronScattering2.cc index 52ef60c35a..cc4780c797 100644 --- a/examples/extended/medical/electronScattering2/electronScattering2.cc +++ b/examples/extended/medical/electronScattering2/electronScattering2.cc @@ -28,11 +28,7 @@ /// \brief Main program of the medical/electronScattering2 example #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "Randomize.hh" @@ -65,11 +61,7 @@ int main(int argc,char** argv) { G4cout << "Output File : " << outputFile << G4endl; // Instantiate the run manager -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = G4RunManagerFactory::CreateRunManager(); // Instantiate the random engine G4Random::setTheEngine(new CLHEP::MTwistEngine); diff --git a/examples/extended/medical/electronScattering2/electronScattering2.out b/examples/extended/medical/electronScattering2/electronScattering2.out index 2075465a87..f7f9d051eb 100644 --- a/examples/extended/medical/electronScattering2/electronScattering2.out +++ b/examples/extended/medical/electronScattering2/electronScattering2.out @@ -2,13 +2,14 @@ Starting run with Macro File : /mnt/build/jenkins/workspace/g4n-centos7/COMPILER/gcc9/LABEL/centos7/THREAD/Seq/geant4/examples/extended/medical/electronScattering2/electronScattering2.in Starting Seed : 1 Output File : output.csv +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -19,7 +20,7 @@ Output File : output.csv ***** Table : Nb of materials = 11 ***** - Material: G4_He density: 0.166 kg/m3 RadL: 5.671 km Nucl.Int.Length: 3.341 km + Material: G4_He density: 0.166 mg/cm3 RadL: 5.671 km Nucl.Int.Length: 3.341 km Imean: 41.800 eV temperature: 293.15 K pressure: 1.00 atm ---> Element: He (He) Z = 2.0 N = 4 A = 4.003 g/mole @@ -191,10 +192,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -218,10 +220,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -249,9 +252,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -265,14 +268,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -281,9 +284,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -295,9 +298,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -308,9 +311,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -324,14 +327,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -340,9 +343,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -356,14 +359,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -372,9 +375,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -388,14 +391,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -404,9 +407,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -421,14 +424,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -437,9 +440,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -454,14 +457,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -470,9 +473,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -486,14 +489,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -502,9 +505,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -518,14 +521,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -536,237 +539,237 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 --> Event 0 starts. Number of Events Processed:20000 Radius cell flux e cell flux population e population - 0 0 0 0 0 - 1 1.698 1.4858 16 14 - 2 0.70038 0.70038 11 11 - 3 0.86405 0.77311 19 17 - 4 1.1495 1.0434 33 30 - 5 1.1149 1.0859 39 38 - 6 0.68569 0.66121 28 27 - 7 0.95468 0.8698 43 39 - 8 1.1123 1.0561 59 56 - 9 0.86938 0.81912 51 48 - 10 0.75802 0.71255 50 47 - 11 0.85672 0.82903 61 59 - 12 0.79842 0.78568 62 61 - 13 0.89647 0.82573 76 70 - 14 0.80145 0.77949 73 71 - 15 0.90398 0.86279 88 84 - 16 0.8909 0.85229 92 88 - 17 0.82946 0.78398 90 85 - 18 0.86916 0.80893 101 94 - 19 0.91928 0.87847 112 107 - 20 0.76884 0.72225 99 93 - 21 0.79234 0.77753 107 105 - 22 0.93071 0.88119 123 116 - 23 0.86805 0.82063 125 118 - 24 0.9106 0.87161 140 134 - 25 0.9042 0.8605 144 137 - 26 0.65436 0.62433 108 103 - 27 0.74063 0.70589 125 119 - 28 0.75419 0.73184 135 131 - 29 0.76394 0.73695 137 132 - 30 0.83022 0.7989 159 153 - 31 0.75832 0.72799 150 144 - 32 0.7464 0.7072 150 142 - 33 0.81924 0.76695 155 144 - 34 0.78655 0.75424 169 162 - 35 0.67492 0.63903 149 141 - 36 0.76354 0.72427 175 166 - 37 0.74532 0.72815 172 168 - 38 0.7489 0.71565 181 173 - 39 0.6899 0.65765 164 156 - 40 0.62667 0.60308 157 151 - 41 0.81774 0.77937 205 195 - 42 0.72726 0.70477 193 187 - 43 0.7376 0.71197 201 194 - 44 0.72244 0.69023 201 192 - 45 0.64808 0.62008 183 175 - 46 0.69374 0.64578 202 188 - 47 0.63992 0.61643 190 183 - 48 0.55944 0.53645 170 163 - 49 0.61541 0.59288 191 184 - 50 0.62663 0.59193 198 187 - 51 0.67139 0.64355 217 208 - 52 0.59759 0.58242 186 181 - 53 0.56465 0.55572 184 181 - 54 0.58086 0.56917 197 193 - 55 0.60849 0.57117 211 198 - 56 0.63347 0.61373 225 218 - 57 0.46718 0.45056 168 162 - 58 0.46796 0.44616 168 160 - 59 0.55232 0.53358 206 199 - 60 0.50349 0.47188 189 177 - 61 0.5194 0.4883 200 188 - 62 0.45326 0.4303 171 162 - 63 0.55671 0.53663 217 209 - 64 0.5416 0.52429 219 212 - 65 0.4868 0.47707 190 186 - 66 0.49677 0.48478 207 202 - 67 0.43851 0.42434 183 177 - 68 0.45419 0.42626 194 182 - 69 0.42044 0.3998 179 170 - 70 0.37067 0.36163 162 158 - 71 0.41263 0.40148 185 180 - 72 0.39905 0.36826 182 168 - 73 0.46411 0.44892 211 204 - 74 0.37898 0.37041 177 173 - 75 0.343 0.33666 153 150 - 76 0.35788 0.3412 172 164 - 77 0.39804 0.37952 189 180 - 78 0.3397 0.32344 163 155 - 79 0.37354 0.34946 185 173 - 80 0.36208 0.35019 179 173 - 81 0.31727 0.30748 162 157 - 82 0.30567 0.29214 157 150 - 83 0.30073 0.28541 157 149 - 84 0.3327 0.31948 172 165 - 85 0.31565 0.30818 167 163 - 86 0.31925 0.30817 173 167 - 87 0.33025 0.31018 181 170 - 88 0.30748 0.29846 163 158 - 89 0.32641 0.31749 163 158 - 90 0.37979 0.37979 166 166 - 91 0.26266 0.24696 149 140 - 92 0.26755 0.25374 155 147 - 93 0.25341 0.24486 144 139 - 94 0.2543 0.2374 151 141 - 95 0.26705 0.25869 158 153 - 96 0.24281 0.23619 141 137 - 97 0.26052 0.25889 154 153 - 98 0.23489 0.22354 143 136 - 99 0.20488 0.19846 128 124 - 100 0.2247 0.21993 139 136 - 101 0.20575 0.19932 129 125 - 102 0.23104 0.21182 140 133 - 103 0.21621 0.21004 140 136 - 104 0.14031 0.13572 90 87 - 105 0.18822 0.17913 123 117 - 106 0.18311 0.17711 122 118 - 107 0.17252 0.16806 116 113 - 108 0.15042 0.14158 102 96 - 109 0.18122 0.171 123 116 - 110 0.16298 0.15574 111 106 - 111 0.16501 0.15784 115 110 - 112 0.13191 0.1248 93 88 - 113 0.16097 0.15252 114 108 - 114 0.1762 0.16921 124 119 - 115 0.14974 0.14559 108 105 - 116 0.13727 0.13178 100 96 - 117 0.13076 0.13076 96 96 - 118 0.10612 0.10342 78 76 - 119 0.12335 0.11934 91 88 - 120 0.11052 0.10654 79 76 - 121 0.13089 0.12957 99 98 - 122 0.097022 0.093102 71 68 - 123 0.10978 0.10848 80 79 - 124 0.12125 0.11739 93 90 - 125 0.079106 0.072728 62 57 - 126 0.10894 0.10514 86 83 - 127 0.11806 0.11178 94 89 - 128 0.089762 0.08727 72 70 - 129 0.10018 0.095232 81 77 - 130 0.087181 0.082272 71 67 - 131 0.09843 0.088683 80 72 - 132 0.072553 0.067716 60 56 - 133 0.088734 0.085133 73 70 - 134 0.084126 0.079361 70 66 - 135 0.084316 0.080756 70 67 - 136 0.079817 0.077468 68 66 - 137 0.059789 0.057458 51 49 - 138 0.063716 0.060244 55 52 - 139 0.065921 0.062475 57 54 - 140 0.06918 0.068039 59 58 - 141 0.064503 0.06337 56 55 - 142 0.050139 0.049014 44 43 - 143 0.068045 0.064692 59 56 - 144 0.064458 0.061128 57 54 - 145 0.061754 0.057344 56 52 - 146 0.069196 0.067006 63 61 - 147 0.055493 0.051141 51 47 - 148 0.054646 0.049241 51 46 - 149 0.063835 0.058468 60 55 - 150 0.044374 0.043308 41 40 - 151 0.069726 0.068666 39 38 - 152 0.034531 0.033478 33 32 - 153 0.043371 0.043371 40 40 - 154 0.053746 0.052707 50 49 - 155 0.036546 0.033448 35 32 - 156 0.028741 0.028741 28 28 - 157 0.041348 0.037264 37 33 - 158 0.04709 0.042018 45 40 - 159 0.041764 0.040756 41 40 - 160 0.04634 0.043336 44 41 - 161 0.02388 0.022885 24 23 - 162 0.028691 0.027702 29 28 - 163 0.035403 0.035403 36 36 - 164 0.043702 0.041748 43 41 - 165 0.030106 0.030106 31 31 - 166 0.026084 0.024153 27 25 - 167 0.031117 0.029197 32 30 - 168 0.022932 0.021978 24 23 - 169 0.025663 0.025663 27 27 - 170 0.024212 0.023268 25 24 - 171 0.018763 0.017825 20 19 - 172 0.022795 0.022795 24 24 - 173 0.025066 0.024139 27 26 - 174 0.026713 0.025371 28 27 - 175 0.02043 0.019513 22 21 - 176 0.019406 0.019406 20 20 - 177 0.026323 0.025416 29 28 - 178 0.032127 0.032127 33 33 - 179 0.017941 0.016147 20 18 - 180 0.026661 0.026661 29 29 - 181 0.017057 0.017057 16 16 - 182 0.018549 0.018549 21 21 - 183 0.024322 0.021689 25 22 - 184 0.013518 0.012644 15 14 - 185 0.023659 0.019308 26 21 - 186 0.020671 0.018247 23 21 - 187 0.02418 0.0201 25 22 - 188 0.012732 0.0086784 14 10 - 189 0.020432 0.019581 24 23 - 190 0.01339 0.011194 15 13 - 191 0.021664 0.019757 22 20 - 192 0.0084709 0.0066918 10 8 - 193 0.011998 0.011998 14 14 - 194 0.02861 0.023045 26 23 - 195 0.023918 0.017212 22 20 - 196 0.025358 0.021902 26 22 - 197 0.016349 0.014711 19 17 - 198 0.012455 0.012455 13 13 - 199 0.013246 0.0099204 16 12 - 200 0.021577 0.012888 26 16 - 201 0.017238 0.015503 21 19 - 202 0.023567 0.015752 26 18 - 203 0.012474 0.0052821 14 6 - 204 0.014096 0.010138 12 7 - 205 0.011996 0.0069786 14 8 - 206 0.0065195 0.0024518 8 3 - 207 0.017155 0.0080095 16 5 - 208 0.011141 0.0042123 12 4 - 209 0.012306 0.0096406 14 11 - 210 0.01724 0.0092282 18 9 - 211 0.01113 0.0069292 11 6 - 212 0.01792 0.0089213 20 9 - 213 0.01319 0.0053721 16 6 - 214 0.017898 0.0071812 16 8 - 215 0.010394 0.002614 12 3 - 216 0.01298 0.0056649 13 5 - 217 0.015843 0.0075102 15 6 - 218 0.0090372 0.003908 10 4 - 219 0.013429 0.0076623 15 9 - 220 0.012674 0.0053898 15 6 - 221 0.0061605 0.0045648 7 5 - 222 0.014017 0.0086192 16 9 - 223 0.016887 0.0103 20 12 - 224 0.0076 0.0027208 9 3 - 225 0.014244 0.0045097 18 6 - 226 0.010307 0.0032736 13 4 - 227 0.0084708 0.0033839 11 4 - 228 0.011458 0.0047702 14 5 - 229 0.0076236 0.0050789 7 4 - 230 0.017105 0.012566 16 10 - 231 0.005103 0.0026056 6 3 - 232 0.01395 0.006701 15 7 -### deleting electronFilter 0xf523e0 + 0 1.5917 1.5917 5 5 + 1 1.1672 1.1672 11 11 + 2 0.82771 0.70038 13 11 + 3 1.0005 0.95501 22 21 + 4 0.99863 0.9279 27 25 + 5 0.86826 0.86826 30 30 + 6 0.88161 0.80815 36 33 + 7 0.9551 0.93388 45 44 + 8 0.74913 0.7304 40 39 + 9 1.0891 1.0221 65 61 + 10 0.86415 0.83383 57 55 + 11 1.0127 0.99882 72 71 + 12 0.84049 0.81502 66 64 + 13 0.91973 0.80183 78 68 + 14 0.77945 0.75749 71 69 + 15 0.9705 0.91915 93 88 + 16 0.99754 0.94931 101 96 + 17 0.89157 0.87338 98 96 + 18 0.85426 0.82845 99 96 + 19 0.88184 0.84919 108 104 + 20 0.93992 0.84674 121 109 + 21 0.81452 0.74049 110 100 + 22 0.88578 0.84333 124 118 + 23 0.81978 0.7385 121 109 + 24 0.91518 0.84365 140 129 + 25 0.87411 0.81169 140 130 + 26 0.85319 0.83516 142 139 + 27 0.94415 0.87468 163 151 + 28 0.72425 0.68515 129 122 + 29 0.79598 0.74201 147 137 + 30 0.70389 0.65691 131 122 + 31 0.73575 0.69024 145 136 + 32 0.71552 0.69102 146 141 + 33 0.67165 0.64788 141 136 + 34 0.709 0.67208 153 145 + 35 0.69361 0.67565 154 150 + 36 0.71059 0.67133 162 153 + 37 0.67523 0.654 159 154 + 38 0.78089 0.75191 187 180 + 39 0.7203 0.69606 178 172 + 40 0.77351 0.74599 185 178 + 41 0.80629 0.77943 210 203 + 42 0.70085 0.67087 187 179 + 43 0.66453 0.6279 182 172 + 44 0.66362 0.63499 185 177 + 45 0.60359 0.59659 170 168 + 46 0.59195 0.56797 172 165 + 47 0.68965 0.65276 205 194 + 48 0.64717 0.61761 197 188 + 49 0.58666 0.56736 180 174 + 50 0.61178 0.60863 184 183 + 51 0.55587 0.54349 179 175 + 52 0.58996 0.56872 194 187 + 53 0.58366 0.55388 196 186 + 54 0.61625 0.58993 211 202 + 55 0.5934 0.55895 205 193 + 56 0.53164 0.51189 180 173 + 57 0.50157 0.4794 179 171 + 58 0.62549 0.6037 204 196 + 59 0.52809 0.51202 177 171 + 60 0.51419 0.48522 194 183 + 61 0.5182 0.50006 196 189 + 62 0.48201 0.46416 189 182 + 63 0.48638 0.47132 187 181 + 64 0.51962 0.49985 208 200 + 65 0.47955 0.46008 197 189 + 66 0.48198 0.47239 201 197 + 67 0.46875 0.44986 198 190 + 68 0.45123 0.43261 190 182 + 69 0.47254 0.45648 205 198 + 70 0.3921 0.37174 166 157 + 71 0.43145 0.41361 192 184 + 72 0.37218 0.36778 168 166 + 73 0.40738 0.3987 174 170 + 74 0.39668 0.38812 183 179 + 75 0.365 0.35232 167 161 + 76 0.41643 0.39975 197 189 + 77 0.36718 0.35689 171 166 + 78 0.37122 0.36309 181 177 + 79 0.36674 0.3547 179 173 + 80 0.30326 0.28938 153 146 + 81 0.37443 0.36073 190 183 + 82 0.35551 0.3381 180 171 + 83 0.33674 0.33101 176 173 + 84 0.32245 0.31112 166 160 + 85 0.30615 0.29682 164 159 + 86 0.29817 0.29079 160 156 + 87 0.27455 0.26543 150 145 + 88 0.27242 0.26881 151 149 + 89 0.28715 0.27462 157 150 + 90 0.44608 0.43197 157 149 + 91 0.31261 0.29516 159 149 + 92 0.24291 0.23255 141 135 + 93 0.26908 0.25542 152 144 + 94 0.26086 0.2541 154 150 + 95 0.23757 0.22921 142 137 + 96 0.23203 0.22375 139 134 + 97 0.23429 0.22773 143 139 + 98 0.26031 0.25058 160 154 + 99 0.20043 0.19722 123 121 + 100 0.22042 0.2077 139 131 + 101 0.22435 0.21648 138 133 + 102 0.19416 0.19416 119 119 + 103 0.19001 0.18538 123 120 + 104 0.20036 0.18966 131 124 + 105 0.19448 0.18388 128 121 + 106 0.19005 0.18705 127 125 + 107 0.1874 0.18294 126 123 + 108 0.18666 0.17193 126 116 + 109 0.17099 0.15478 114 106 + 110 0.15503 0.14778 107 102 + 111 0.16803 0.1623 116 112 + 112 0.15495 0.15495 109 109 + 113 0.15722 0.15158 108 104 + 114 0.15082 0.14942 107 106 + 115 0.13238 0.12269 95 88 + 116 0.14646 0.13959 104 99 + 117 0.11439 0.11031 84 81 + 118 0.12479 0.12074 84 81 + 119 0.23898 0.23497 83 80 + 120 0.16275 0.16009 108 106 + 121 0.10143 0.098795 77 75 + 122 0.13058 0.12666 99 96 + 123 0.11667 0.11278 89 86 + 124 0.10291 0.099057 80 77 + 125 0.086751 0.0842 68 66 + 126 0.11936 0.11429 93 89 + 127 0.10928 0.10928 85 85 + 128 0.081848 0.079356 64 62 + 129 0.084081 0.081608 68 66 + 130 0.097015 0.092106 79 75 + 131 0.090141 0.086487 74 71 + 132 0.082791 0.077954 68 64 + 133 0.074699 0.071099 61 58 + 134 0.09617 0.094979 79 78 + 135 0.095217 0.086926 78 71 + 136 0.061009 0.059835 52 51 + 137 0.084374 0.077381 70 64 + 138 0.063671 0.059041 55 51 + 139 0.093558 0.09011 78 75 + 140 0.088646 0.088646 57 57 + 141 0.072414 0.067882 62 58 + 142 0.064104 0.060729 54 51 + 143 0.054789 0.053671 49 48 + 144 0.054088 0.052978 48 47 + 145 0.061423 0.058115 52 49 + 146 0.047102 0.047102 43 43 + 147 0.046777 0.044602 43 41 + 148 0.048639 0.044317 45 41 + 149 0.061059 0.057838 51 48 + 150 0.038632 0.036499 36 34 + 151 0.047314 0.046254 42 41 + 152 0.078311 0.078311 50 50 + 153 0.16759 0.16759 46 46 + 154 0.039867 0.037788 31 29 + 155 0.041317 0.038221 40 37 + 156 0.036944 0.035917 36 35 + 157 0.042852 0.038772 42 38 + 158 0.028389 0.027376 28 27 + 159 0.03526 0.033245 35 33 + 160 0.029067 0.028066 29 28 + 161 0.048332 0.037486 41 36 + 162 0.031595 0.028628 30 27 + 163 0.036375 0.033426 37 34 + 164 0.030987 0.027687 27 25 + 165 0.033242 0.030321 32 30 + 166 0.031055 0.028157 26 23 + 167 0.024966 0.024966 26 26 + 168 0.025784 0.025784 27 27 + 169 0.037335 0.034987 38 36 + 170 0.02392 0.02109 26 23 + 171 0.034875 0.032163 31 29 + 172 0.02146 0.02146 23 23 + 173 0.035654 0.029227 34 31 + 174 0.037349 0.021215 26 23 + 175 0.042952 0.039283 37 33 + 176 0.028832 0.025174 31 27 + 177 0.027551 0.026644 27 26 + 178 0.034232 0.033329 36 35 + 179 0.017946 0.017048 20 19 + 180 0.027159 0.024478 29 26 + 181 0.028166 0.024592 25 23 + 182 0.023076 0.017632 21 19 + 183 0.022092 0.019458 20 17 + 184 0.019218 0.018344 22 21 + 185 0.023191 0.021989 26 25 + 186 0.020512 0.019363 23 22 + 187 0.021799 0.017499 24 19 + 188 0.014398 0.014398 16 16 + 189 0.019577 0.018726 23 22 + 190 0.022923 0.01931 25 22 + 191 0.01695 0.014832 17 15 + 192 0.022524 0.018134 25 21 + 193 0.014272 0.012433 17 15 + 194 0.023124 0.020635 27 24 + 195 0.021949 0.021123 25 24 + 196 0.013782 0.010824 15 12 + 197 0.019466 0.019466 22 22 + 198 0.02087 0.017537 24 20 + 199 0.019007 0.015441 23 19 + 200 0.014334 0.01158 17 14 + 201 0.01925 0.013504 23 16 + 202 0.017961 0.013058 22 16 + 203 0.019234 0.012151 16 8 + 204 0.011685 0.0025005 14 3 + 205 0.012364 0.0065539 13 6 + 206 0.0090099 0.0034646 11 4 + 207 0.014156 0.0083874 16 9 + 208 0.011821 0.0059787 12 5 + 209 0.016579 0.0081981 19 9 + 210 0.013435 0.0061656 16 7 + 211 0.008907 0.0064495 10 7 + 212 0.0096319 0.0064328 10 6 + 213 0.01499 0.0069177 18 8 + 214 0.009123 0.0044882 11 5 + 215 0.012344 0.0026814 14 3 + 216 0.0084021 0.0026277 10 3 + 217 0.011242 0.0053033 12 6 + 218 0.016704 0.00716 17 8 + 219 0.014415 0.0061456 17 7 + 220 0.012131 0.0048716 13 6 + 221 0.015305 0.0066052 19 8 + 222 0.0079078 0.0034545 9 4 + 223 0.0055434 0.0040467 7 5 + 224 0.0078674 0.0033073 10 4 + 225 0.010162 0.0031554 11 4 + 226 0.010905 0.0063567 13 8 + 227 0.011291 0.0037078 13 4 + 228 0.011222 0.0037287 13 3 + 229 0.014662 0.0055688 18 6 + 230 0.0094012 0.0054497 12 7 + 231 0.0033159 0.0025909 4 3 + 232 0.0056869 0.0014459 7 2 +### deleting electronFilter 0x17d95b0 diff --git a/examples/extended/medical/fanoCavity/CMakeLists.txt b/examples/extended/medical/fanoCavity/CMakeLists.txt index 5b042be2e6..17ab853e83 100644 --- a/examples/extended/medical/fanoCavity/CMakeLists.txt +++ b/examples/extended/medical/fanoCavity/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(fanoCavity) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/fanoCavity/fanoCavity.out b/examples/extended/medical/fanoCavity/fanoCavity.out index 2b34205881..ed3e76c88b 100644 --- a/examples/extended/medical/fanoCavity/fanoCavity.out +++ b/examples/extended/medical/fanoCavity/fanoCavity.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -144,9 +144,9 @@ conv: for gamma SubType=14 BuildTable=1 BetheHeitlerLPM : Emin= 0 eV Emax= 10 GeV ModifiedTsai msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 10 GeV Nbins=160 100 eV - 10 GeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 180 bins @@ -157,9 +157,9 @@ eIoni: for e- SubType=2 CSDA range table up to 10 GeV in 180 bins msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 10 GeV Nbins=160 100 eV - 10 GeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 180 bins @@ -174,9 +174,9 @@ annihil: for e+, integral:1 SubType=5 BuildTable=0 eplus2gg : Emin= 0 eV Emax= 10 GeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 10 GeV Nbins=160 100 eV - 10 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 180 bins @@ -209,18 +209,18 @@ Index : 1 used in the geometry : Yes ### Run 0 start. --> Event 0 starts. --> Event 1000 starts. - ---> NbofEvents= 1000 NbOfelectr= 70726 Tkin= 589.139 keV (0.000 %) NbOfelec in cav= 4785 Dose/EnFluence= 29.592 cm2/g (0.000 %) + ---> NbofEvents= 1000 NbOfelectr= 70758 Tkin= 588.474 keV (0.000 %) NbOfelec in cav= 4567 Dose/EnFluence= 28.072 cm2/g (0.000 %) --> Event 2000 starts. - ---> NbofEvents= 2000 NbOfelectr= 140567 Tkin= 587.699 keV (-0.244 %) NbOfelec in cav= 9836 Dose/EnFluence= 30.158 cm2/g (1.910 %) + ---> NbofEvents= 2000 NbOfelectr= 141208 Tkin= 588.377 keV (-0.016 %) NbOfelec in cav= 9408 Dose/EnFluence= 28.958 cm2/g (3.154 %) --> Event 3000 starts. - ---> NbofEvents= 3000 NbOfelectr= 211774 Tkin= 589.440 keV (0.296 %) NbOfelec in cav= 14357 Dose/EnFluence= 30.536 cm2/g (1.254 %) + ---> NbofEvents= 3000 NbOfelectr= 211737 Tkin= 588.491 keV (0.019 %) NbOfelec in cav= 13787 Dose/EnFluence= 29.055 cm2/g (0.336 %) Run terminated. Run Summary Number of events processed : 4000 - User=42.410000s Real=43.102396s Sys=0.030000s + User=7.270000s Real=7.680537s Sys=0.000000s ======================== run summary ====================== @@ -230,31 +230,31 @@ Run Summary ============================================================ - Process calls frequency ---> compt= 281945 Transportation= 78940 msc= 2584067 eIoni= 1716147 + Process calls frequency ---> compt= 281455 Transportation= 76810 msc= 638362 eIoni= 2197055 Gamma crossSections in wall material : compt= 63.464 cm2/g --> total= 63.464 cm2/g - Mean energy of secondary e- = 589.2619 keV +- 0.1027 % (--> range in wall material = 2.2263 mm ) - Mass_energy_transfer coef: 29.9174 cm2/g + Mean energy of secondary e- = 588.5850 keV +- 0.1030 % (--> range in wall material = 2.2229 mm ) + Mass_energy_transfer coef: 29.8830 cm2/g - StoppingPower in wall = 1.9638 MeV*cm2/g - in cavity = 1.9638 MeV*cm2/g + StoppingPower in wall = 1.9642 MeV*cm2/g + in cavity = 1.9642 MeV*cm2/g Charged particle flow in cavity : - Enter --> nbParticles = 19434 Energy = 9.8009 GeV - Exit --> nbParticles = 19434 Energy = 9.8017 GeV + Enter --> nbParticles = 18773 Energy = 9.5461 GeV + Exit --> nbParticles = 18788 Energy = 9.5512 GeV - Total edep in cavity = 13.5332 MeV +- 3.1102 % Total charged trackLength = 54.6531 m (mean value = 2.8122 mm ) - Total dose in cavity = 21.5387 MeV/mg - Dose/EnergyFluence = 30.4496 cm2/g + Total edep in cavity = 13.6012 MeV +- 3.4449 % Total charged trackLength = 52.6135 m (mean value = 2.8026 mm ) + Total dose in cavity = 21.6470 MeV/mg + Dose/EnergyFluence = 30.6027 cm2/g - (Dose/EnergyFluence)/Mass_energy_transfer = 1.01779 +- 0.03167 + (Dose/EnergyFluence)/Mass_energy_transfer = 1.02408 +- 0.03529 - StepSize of ch. tracks in wall = 110.2904 um +- 70.5163 um (nbSteps/track = 15.2240) - StepSize of ch. tracks in cavity = 689.7601 um +- 763.7022 um (nbSteps/track = 4.0771) + StepSize of ch. tracks in wall = 167.5592 um +- 186.2897 um (nbSteps/track = 10.0496) + StepSize of ch. tracks in cavity = 691.0377 um +- 756.9987 um (nbSteps/track = 4.0557) G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 9 of which, static: 0 -Dynamic pools deleted: 9 / Total memory freed: 0.07 MB +Dynamic pools deleted: 9 / Total memory freed: 0.067 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/medical/fanoCavity2/CMakeLists.txt b/examples/extended/medical/fanoCavity2/CMakeLists.txt index 6867872cba..4c60d1f79b 100644 --- a/examples/extended/medical/fanoCavity2/CMakeLists.txt +++ b/examples/extended/medical/fanoCavity2/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(fanoCavity2) #---------------------------------------------------------------------------- diff --git a/examples/extended/medical/fanoCavity2/fanoCavity2.out b/examples/extended/medical/fanoCavity2/fanoCavity2.out index ba4c136a8c..665ef43237 100644 --- a/examples/extended/medical/fanoCavity2/fanoCavity2.out +++ b/examples/extended/medical/fanoCavity2/fanoCavity2.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -142,9 +142,9 @@ conv: for gamma SubType=14 BuildTable=1 BetheHeitlerLPM : Emin= 0 eV Emax= 10 GeV ModifiedTsai msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 10 GeV Nbins=160 100 eV - 10 GeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 180 bins @@ -155,9 +155,9 @@ eIoni: for e- SubType=2 CSDA range table up to 10 GeV in 180 bins msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 3, latDisp: 1, skin= 1, geomFactor= 2.5 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 10 GeV Nbins=160 100 eV - 10 GeV + StepLim=DistanceToBoundary Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 180 bins @@ -172,9 +172,9 @@ annihil: for e+, integral:1 SubType=5 BuildTable=0 eplus2gg : Emin= 0 eV Emax= 10 GeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 10 GeV Nbins=160 100 eV - 10 GeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 10 eV to 10 GeV in 180 bins @@ -225,45 +225,45 @@ Index : 1 used in the geometry : Yes ### Run 0 start. --> Event 0 starts. --> Event 10000 starts. ---->evntNb= 10000 Nwall= 9999 Ncav= 2 Ic/Iw= 1.05363 Ne-_cav= 2852 doseCavity/Ebeam= 1.01564 (100*(ratio-1) = 1.56371 %) +--->evntNb= 10000 Nwall= 9998 Ncav= 3 Ic/Iw= 1.58060 Ne-_cav= 2775 doseCavity/Ebeam= 0.90414 (100*(ratio-1) = -9.58554 %) --> Event 20000 starts. ---->evntNb= 20000 Nwall= 19997 Ncav= 4 Ic/Iw= 1.05368 Ne-_cav= 5712 doseCavity/Ebeam= 1.01999 (100*(ratio-1) = 1.99866 %) +--->evntNb= 20000 Nwall= 19993 Ncav= 8 Ic/Iw= 2.10778 Ne-_cav= 5547 doseCavity/Ebeam= 0.93881 (100*(ratio-1) = -6.11936 %) --> Event 30000 starts. ---->evntNb= 30000 Nwall= 29996 Ncav= 5 Ic/Iw= 0.87805 Ne-_cav= 8505 doseCavity/Ebeam= 0.99900 (100*(ratio-1) = -0.09999 %) +--->evntNb= 30000 Nwall= 29991 Ncav= 10 Ic/Iw= 1.75640 Ne-_cav= 8292 doseCavity/Ebeam= 0.94645 (100*(ratio-1) = -5.35549 %) Run terminated. Run Summary Number of events processed : 40000 - User=7.590000s Real=7.635075s Sys=0.000000s + User=1.320000s Real=1.544311s Sys=0.000000s - Process calls frequency ---> msc= 640840 eIoni= 259324 Transportation= 22730 + Process calls frequency ---> eIoni= 329042 msc= 202513 Transportation= 22126 Charged particle flow in cavity : - Enter --> nbParticles = 11366 Energy = 7.229 GeV - Exit --> nbParticles = 11364 Energy = 7.227 GeV + Enter --> nbParticles = 11059 Energy = 7.060 GeV + Exit --> nbParticles = 11067 Energy = 7.067 GeV - beamFluence in wall = 39995 in cavity = 5 Icav/Iwall = 0.65853 energyFluence = 37.96068 MeV*cm2/mg + beamFluence in wall = 39986 in cavity = 14 Icav/Iwall = 1.84431 energyFluence = 37.96066 MeV*cm2/mg - Total edep in cavity = 7.56685 MeV +- 3.36433 % - Total dose in cavity = 37.83424 MeV*cm2/mg +- 3.36433 % + Total edep in cavity = 7.38382 MeV +- 3.11135 % + Total dose in cavity = 36.91911 MeV*cm2/mg +- 3.11135 % - DoseCavity/EnergyFluence = 0.99667 +- 0.03353 + DoseCavity/EnergyFluence = 0.97256 +- 0.03026 - Total charged trackLength in cavity = 35.4115 m (mean value = 3.1156 mm ) + Total charged trackLength in cavity = 34.4350 m (mean value = 3.1138 mm ) - StepSize of ch. tracks in wall = 201.4959 um +- 162.1213 um (nbSteps/track = 21.9002) - StepSize of ch. tracks in cavity = 753.5164 um +- 1.3530 mm (nbSteps/track = 4.1347) + StepSize of ch. tracks in wall = 347.4684 um +- 288.5382 um (nbSteps/track = 12.7050) + StepSize of ch. tracks in cavity = 754.2116 um +- 1.1491 mm (nbSteps/track = 4.1285) --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1612056410, 405244496 + Current couple of seeds = 2111279859, 49470008 ---------------------------------------- --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1612056410, 405244496 + Current couple of seeds = 2111279859, 49470008 ---------------------------------------- G4 kernel has come to Quit state. ================== Deleting memory pools =================== diff --git a/examples/extended/optical/CMakeLists.txt b/examples/extended/optical/CMakeLists.txt index afc1a7b331..b13e17d77d 100644 --- a/examples/extended/optical/CMakeLists.txt +++ b/examples/extended/optical/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all optical examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(OpNovice) add_subdirectory(OpNovice2) diff --git a/examples/extended/optical/History b/examples/extended/optical/History index 18ec1f2b95..d6f022bb8b 100644 --- a/examples/extended/optical/History +++ b/examples/extended/optical/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +03 November 2020: B. Morgan (exOptical-V10-06-00) +- Support same CMake version range as core Geant4 + 31 January 2019: I. Hrivnacova (exOptical-V10-05-00) - Merged GitHub PR #4: all Boolean operators now return G4bool. @@ -43,4 +46,4 @@ track of all tags. adding visualization, copying macros, install target and comment lines - Added explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh where needed -- Replaced tabulators with space characters +- Replaced tabulators with space characters diff --git a/examples/extended/optical/LXe/.README.txt b/examples/extended/optical/LXe/.README.txt index e886f3a70f..162014605b 100644 --- a/examples/extended/optical/LXe/.README.txt +++ b/examples/extended/optical/LXe/.README.txt @@ -52,7 +52,21 @@ wls.mac implements a scintillating slab and wavelength shifting fibers. Then type commands, for instance Session: /run/beamOn 1 -\section LXe_s7 Detailed Explanation of Geometry Implementation +\section LXe_s7 Macros included + +Several macros are include in the distribution: + +cerenkov.mac: Shoot a 200 MeV mu+ and only allow it to take one step. The + Cerenkov cone and PMTs hit are visible. (Reduce the number + of particles for visualization.) +LXe.mac: Shoot a 511 keV gamma with the default geometry. +photon.mac: Primary beam is an optical photon, with the default geometry. +wls.mac: Geometry includes 15 WLS fibers. A 511 keV electron is the + primary. + +- + +\section LXe_s8 Detailed Explanation of Geometry Implementation The way the geometry is constructed is an experiment for a new, more object oriented, way to construct geometry. It separates the concept of how a volume @@ -100,7 +114,7 @@ and defined only once. The updated variable is to signal that the volume needs to be updated and a new logical volume made. -\section LXe_s8 Modifying the geometry at runtime +\section LXe_s9 Modifying the geometry at runtime This example allows the user to modify the geometry definition at runtime. This is accomplished through LXeDetectorMessenger, a derived class of G4UImessenger. @@ -120,7 +134,7 @@ are used when constructing the geometry. } \endverbatim -\section LXe_s9 PMT sensitive detector +\section LXe_s10 PMT sensitive detector The PMT sensitive detector cannot be triggered like a normal sensitive detector because the sensitive volume does not allow photons to pass through it. Rather, @@ -173,7 +187,7 @@ from G4SDManager and call its ProcessHits function. } \endverbatim -\section LXe_s10 Selectively drawing trajectories or highlighting volumes +\section LXe_s11 Selectively drawing trajectories or highlighting volumes In a simulation such as this one, where an average of 6000 trajectories are generated in a small space, there is little use in drawing all of them. There @@ -219,7 +233,7 @@ the logic used in choosing which trajectories to draw. See /LXe/detector/volumes/sphere in "UI commands" below for info on what trajectories are drawn in this simulation. -\section LXe_s11 Saving random engine seeds +\section LXe_s12 Saving random engine seeds At times it may be necessary to review a particular event of interest. To do this without redoing an entire run, which may take a long time, you must store @@ -252,7 +266,7 @@ directory to save in must exist first. GEANT4 will not create it for you. G4RunManager::SetRandomNumberStoreDir(G4String) \endverbatim -\section LXe_s12 UI commands +\section LXe_s13 UI commands Directories: \verbatim diff --git a/examples/extended/optical/LXe/CMakeLists.txt b/examples/extended/optical/LXe/CMakeLists.txt index 662635daef..0a132324ac 100644 --- a/examples/extended/optical/LXe/CMakeLists.txt +++ b/examples/extended/optical/LXe/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(LXe) #---------------------------------------------------------------------------- @@ -41,11 +44,10 @@ target_link_libraries(LXe ${Geant4_LIBRARIES} ) # set(LXe_SCRIPTS LXe.out - LXe.in + LXe.mac cerenkov.mac wls.mac photon.mac - reviewEvent.mac gui.mac vis.mac ) diff --git a/examples/extended/optical/LXe/History b/examples/extended/optical/LXe/History index 663d606e58..35b33652b9 100644 --- a/examples/extended/optical/LXe/History +++ b/examples/extended/optical/LXe/History @@ -14,6 +14,24 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 5, 2020 D. Sawkey (LXe-V10-06-03) +- Apply clang-format style +- update macros +- Rename ProcessHits_constStep to ProcessHits_boundary +- remove unused #includes, empty methods + +October 16, 2020 D. Sawkey (LXe-V10-06-02) +- fix valgrind errors: add 'delete's, fix initialization of hits counters + +October 8, 2020 D. Sawkey (LXe-V10-06-01) +- macros: rename LXe.in to LXe.mac; store random seed in LXe.mac; set + optical verbosity to 1 + +September 24, 2020 D. Sawkey (LXe-V10-06-00) +- Set optical parameters in G4OpticalParameters class +- use new scintillation material property names +- use std::vector to specify material property names + November 28, 2019 I. Hrivnacova (LXe-V10-05-05) - Fixed Doxygen warnings in .README.txt diff --git a/examples/extended/optical/LXe/LXe.cc b/examples/extended/optical/LXe/LXe.cc index 7dcbfe6af6..a7b4efecc2 100644 --- a/examples/extended/optical/LXe/LXe.cc +++ b/examples/extended/optical/LXe/LXe.cc @@ -29,86 +29,82 @@ // //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#include "G4Types.hh" - -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif - -#include "G4UImanager.hh" -#include "G4String.hh" +#include "LXeActionInitialization.hh" +#include "LXeDetectorConstruction.hh" #include "FTFP_BERT.hh" -#include "G4OpticalPhysics.hh" #include "G4EmStandardPhysics_option4.hh" - -#include "LXeDetectorConstruction.hh" -#include "LXeActionInitialization.hh" - -#include "G4VisExecutive.hh" +#include "G4OpticalParameters.hh" +#include "G4OpticalPhysics.hh" +#include "G4RunManagerFactory.hh" +#include "G4String.hh" +#include "G4Types.hh" #include "G4UIExecutive.hh" +#include "G4UImanager.hh" +#include "G4VisExecutive.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc, char** argv) { - //detect interactive mode (if no arguments) and define UI session + // detect interactive mode (if no arguments) and define UI session G4UIExecutive* ui = nullptr; - if (argc == 1) { ui = new G4UIExecutive(argc,argv); } + if(argc == 1) + { + ui = new G4UIExecutive(argc, argv); + } + + auto runManager = G4RunManagerFactory::CreateRunManager(); -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - G4int nThreads = std::min(G4Threading::G4GetNumberOfCores(), 4); - runManager->SetNumberOfThreads(nThreads); - G4cout << "===== LXe is started with " - << runManager->GetNumberOfThreads() << " threads =====" << G4endl; -#else - G4RunManager * runManager = new G4RunManager; -#endif LXeDetectorConstruction* det = new LXeDetectorConstruction(); runManager->SetUserInitialization(det); G4VModularPhysicsList* physicsList = new FTFP_BERT; physicsList->ReplacePhysics(new G4EmStandardPhysics_option4()); + G4OpticalPhysics* opticalPhysics = new G4OpticalPhysics(); - opticalPhysics->SetWLSTimeProfile("delta"); + auto opticalParams = G4OpticalParameters::Instance(); - opticalPhysics->SetScintillationYieldFactor(1.0); - opticalPhysics->SetScintillationExcitationRatio(0.0); + opticalParams->SetWLSTimeProfile("delta"); - opticalPhysics->SetMaxNumPhotonsPerStep(100); - opticalPhysics->SetMaxBetaChangePerStep(10.0); + opticalParams->SetScintYieldFactor(1.0); + opticalParams->SetScintExcitationRatio(0.0); + opticalParams->SetScintTrackSecondariesFirst(true); + opticalParams->SetScintEnhancedTimeConstants(true); - opticalPhysics->SetTrackSecondariesFirst(kCerenkov, true); - opticalPhysics->SetTrackSecondariesFirst(kScintillation, true); + opticalParams->SetCerenkovMaxPhotonsPerStep(100); + opticalParams->SetCerenkovMaxBetaChange(10.0); + opticalParams->SetCerenkovTrackSecondariesFirst(true); physicsList->RegisterPhysics(opticalPhysics); runManager->SetUserInitialization(physicsList); runManager->SetUserInitialization(new LXeActionInitialization(det)); - //initialize visualization + // initialize visualization G4VisManager* visManager = new G4VisExecutive; visManager->Initialize(); - //get the pointer to the User Interface manager + // get the pointer to the User Interface manager G4UImanager* UImanager = G4UImanager::GetUIpointer(); - if (ui) { - //interactive mode + if(ui) + { + // interactive mode UImanager->ApplyCommand("/control/execute vis.mac"); - if (ui->IsGUI()) { + if(ui->IsGUI()) + { UImanager->ApplyCommand("/control/execute gui.mac"); } ui->SessionStart(); delete ui; - } else { - //batch mode - G4String command = "/control/execute "; + } + else + { + // batch mode + G4String command = "/control/execute "; G4String fileName = argv[1]; - UImanager->ApplyCommand(command+fileName); + UImanager->ApplyCommand(command + fileName); } // job termination diff --git a/examples/extended/optical/LXe/LXe.in b/examples/extended/optical/LXe/LXe.in deleted file mode 100644 index faeffb062d..0000000000 --- a/examples/extended/optical/LXe/LXe.in +++ /dev/null @@ -1,20 +0,0 @@ -#************** -#** -#** Demonstrates the basic functionality of this example by running a -#** a single event with the default configuration -#** -#************** -/run/verbose 1 -#/control/verbose 1 -#/tracking/verbose 1 -#/LXe/detector/MainScintYield 100 -#/process/optical/verbose 1 -/process/optical/processActivation Cerenkov false -/run/initialize -/LXe/saveThreshold 1000 -/LXe/pmtThreshold 2 -/LXe/eventVerbose 1 -#/LXe/forceDrawPhotons true #/LXe/forceDrawNoPhotons false -/run/beamOn 1 -/process/optical/scintillation/setTrackSecondariesFirst false -/run/beamOn 10 diff --git a/examples/extended/optical/LXe/LXe.mac b/examples/extended/optical/LXe/LXe.mac new file mode 100644 index 0000000000..99afab4e39 --- /dev/null +++ b/examples/extended/optical/LXe/LXe.mac @@ -0,0 +1,37 @@ +#************** +#** +#** Demonstrates the basic functionality of this example +#** +#************** + +/run/verbose 1 +/control/verbose 1 +/tracking/verbose 0 +/process/optical/verbose 1 +/LXe/detector/MainScintYield 10000 +#/process/optical/processActivation Cerenkov false + +/run/initialize + +/gun/particle gamma +/gun/energy 511 keV + +/run/printProgress 10 + +/vis/disable +/random/setSavingFlag true +/LXe/saveThreshold 1400 +/LXe/pmtThreshold 4 +/LXe/forceDrawNoPhotons true +/run/beamOn 200 + +/vis/enable +/LXe/eventVerbose 1 +/process/optical/scintillation/setTrackSecondariesFirst false +/run/beamOn 5 +# +/tracking/verbose 1 +/LXe/forceDrawPhotons true +/LXe/detector/MainScintYield 100 +/process/optical/scintillation/setTrackSecondariesFirst true +/run/beamOn 1 diff --git a/examples/extended/optical/LXe/LXe.out b/examples/extended/optical/LXe/LXe.out index 07a771378c..0e63f338c2 100644 --- a/examples/extended/optical/LXe/LXe.out +++ b/examples/extended/optical/LXe/LXe.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -14,7 +15,7 @@ <<< Geant4 Physics List simulation engine: FTFP_BERT -G4VModularPhysicsList::ReplacePhysics: G4EmStandardwith type : 2 is replaces with G4EmStandard_opt4 +G4VModularPhysicsList::ReplacePhysics: G4EmStandard with type : 2 is replaced with G4EmStandard_opt4 Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... @@ -29,10 +30,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -66,19 +69,39 @@ End of Run User Vis Actions: none Some /vis commands (optionally) take a string to specify colour. "/vis/list" to see available colours. +/tracking/verbose 0 +/process/optical/verbose 1 +/run/physicsModified +/LXe/detector/MainScintYield 10000 +/run/initialize Construction /LXeDet/pmtSD Construction /LXeDet/scintSD - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV for neutron : 3 to 6 GeV ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 +OpAbsorption is created +OpRayleigh is created +OpMieHG is created +OpBoundary is created +OpWLS is created +OpWLS2 is created ### Birks coefficients used in run time LXe 0.126 mm/MeV 0.038052 g/cm^2/MeV massFactor= 7.14643 effCharge= 2916 Polystyrene 0.126 mm/MeV 0.012978 g/cm^2/MeV massFactor= 101.167 effCharge= 0.027027 +/gun/particle gamma +/gun/energy 511 keV +/run/printProgress 10 +/vis/disable +/random/setSavingFlag true +/LXe/saveThreshold 1400 +/LXe/pmtThreshold 4 +/LXe/forceDrawNoPhotons true +/run/beamOn 200 ### === Deexcitation model UAtomDeexcitation is activated for 1 region: DefaultRegionForTheWorld 1 0 0 @@ -108,10 +131,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -134,7 +158,7 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 @@ -143,10 +167,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -169,7 +194,7 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -182,9 +207,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -198,14 +223,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -218,9 +243,9 @@ nuclearStopping: for proton SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -234,9 +259,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -251,9 +276,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -267,14 +292,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -283,9 +308,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -299,14 +324,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -315,9 +340,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -331,14 +356,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -347,9 +372,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -364,14 +389,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -380,9 +405,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -397,14 +422,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -413,9 +438,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -429,14 +454,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -445,9 +470,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -461,14 +486,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -497,6 +522,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -571,6 +618,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -682,8 +742,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -748,8 +808,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -790,7 +850,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -805,21 +864,21 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Al Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 5.84069 keV e- 457.179 keV e+ 442.122 keV proton 70 keV + Energy thresholds : gamma 5.87535 keV e- 460.395 keV e+ 442.201 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : LXe Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 24.0004 keV e- 389.292 keV e+ 376.471 keV proton 70 keV + Energy thresholds : gamma 23.933 keV e- 391.82 keV e+ 376.336 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 3 used in the geometry : Yes Material : Glass Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.10317 keV e- 282.263 keV e+ 272.967 keV proton 70 keV + Energy thresholds : gamma 2.09434 keV e- 281.891 keV e+ 276.265 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -828,36 +887,458 @@ Index : 3 used in the geometry : Yes G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. - Energy weighted position of hits in LXe : (6.53947,-10.787,-101.039) - Total energy deposition in scintillator : 398.194 (keV) - Reconstructed position of hits in LXe : (0.614728,0.999265,-16.5361) +--> Event 0 starts. +--> Event 10 starts. +--> Event 20 starts. +--> Event 30 starts. +--> Event 40 starts. +--> Event 50 starts. +/control/shell cp ./currentEvent.rndm ./run0evt55.rndm +./currentEvent.rndm is copied to ./run0evt55.rndm--> Event 60 starts. +/control/shell cp ./currentEvent.rndm ./run0evt66.rndm +./currentEvent.rndm is copied to ./run0evt66.rndm--> Event 70 starts. +--> Event 80 starts. +--> Event 90 starts. +--> Event 100 starts. +--> Event 110 starts. +--> Event 120 starts. +--> Event 130 starts. +--> Event 140 starts. +--> Event 150 starts. +--> Event 160 starts. +/control/shell cp ./currentEvent.rndm ./run0evt169.rndm +./currentEvent.rndm is copied to ./run0evt169.rndm--> Event 170 starts. +--> Event 180 starts. +--> Event 190 starts. + Run terminated. +Run Summary + Number of events processed : 200 + User=8.490000s Real=9.083991s Sys=0.040000s + + ======================== run summary ====================== +The run was 200 events. +Number of hits per event: 1162 +- 14.13 +Number of hits per event above threshold: 31.63 +- 0.2258 +Number of scintillation photons per event : 4063 +- 0 +Number of Cerenkov photons per event: 0.54 +- 0.06958 +Number of absorbed photons per event : 2902 +- 33.48 +Number of photons absorbed at boundary per event: 0 +- 0 +Total energy deposition in scintillator per event: 512.4 +- 5.598 keV. + +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. +/vis/enable WARNING: G4VisManager::IsValidView(): Attempt to draw when no graphics system has been instantiated. Use "/vis/open" or "/vis/sceneHandler/create". Alternatively, to avoid this message, suppress instantiation of vis manager (G4VisExecutive) and ensure drawing code is executed only if G4VVisManager::GetConcreteInstance() is non-zero. - Number of photons that hit PMTs in this event : 939 - Number of PMTs above threshold(2) : 32 - Number of photons produced by scintillation in this event : 3430 - Number of photons produced by cerenkov in this event : 0 - Number of photons absorbed (OpAbsorption) in this event : 2491 - Number of photons absorbed at boundaries (OpBoundary) in this event : 0 -Unaccounted for photons in this event : 0 - Run terminated. -Run Summary - Number of events processed : 1 - User=0.140000s Real=0.141855s Sys=0.000000s +G4VisManager::Enable: WARNING: visualization remains disabled for + above reasons. Rectifying with valid vis commands will + automatically enable. +/LXe/eventVerbose 1 +/process/optical/scintillation/setTrackSecondariesFirst false +/run/physicsModified +/run/beamOn 5 - ======================== run summary ====================== -The run was 1 events. -Number of hits per event: 939 +- 0 -Number of hits per event above threshold: 32 +- 0 -Number of scintillation photons per event : 3430 +- 0 -Number of Cerenkov photons per event: 0 +- 0 -Number of absorbed photons per event : 2491 +- 0 -Number of photons absorbed at boundary per event: 0 +- 0 -Total energy deposition in scintillator per event: 398.2 +- 0 keV. +### === Deexcitation model UAtomDeexcitation is activated for 1 region: + DefaultRegionForTheWorld 1 0 0 +### === Ignore cuts flag: 0 +phot: for gamma SubType=12 BuildTable=0 + LambdaPrime table from 200 keV to 100 TeV in 174 bins + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + LivermorePhElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila Fluo + +compt: for gamma SubType=13 BuildTable=1 + Lambda table from 100 eV to 1 MeV, 20 bins/decade, spline: 1 + LambdaPrime table from 1 MeV to 100 TeV in 160 bins + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + LowEPComptonModel : Emin= 0 eV Emax= 20 MeV Fluo + KleinNishina : Emin= 20 MeV Emax= 100 TeV Fluo + +conv: for gamma SubType=14 BuildTable=1 + Lambda table from 1.022 MeV to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + BetheHeitler5D : Emin= 0 eV Emax= 100 TeV ModifiedTsai + +Rayl: for gamma SubType=11 BuildTable=1 + Lambda table from 100 eV to 100 keV, 20 bins/decade, spline: 0 + LambdaPrime table from 100 keV to 100 TeV in 180 bins + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator + +msc: for e- SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +eIoni: for e- SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.2, 0.01 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + LowEnergyIoni : Emin= 0 eV Emax= 100 keV deltaVI + MollerBhabha : Emin= 100 keV Emax= 100 TeV deltaVI + +eBrem: for e- SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS + eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS + +ePairProd: for e- SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 25x1001 from 0.1 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 + Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 100 MeV Emax= 100 TeV + +msc: for e+ SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +eIoni: for e+ SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.2, 0.01 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + PenIoni : Emin= 0 eV Emax= 100 keV + MollerBhabha : Emin= 100 keV Emax= 100 TeV deltaVI + +eBrem: for e+ SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS + eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS + +ePairProd: for e+ SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 25x1001 from 0.1 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +annihil: for e+, integral:1 SubType=5 BuildTable=0 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eplus2gg : Emin= 0 eV Emax= 100 TeV + +CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 + Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 100 MeV Emax= 100 TeV + +msc: for proton SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +hIoni: for proton SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + Bragg : Emin= 0 eV Emax= 2 MeV deltaVI + BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI + +hBrems: for proton SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +hPairProd: for proton SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 17x1001 from 7.50618 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 + Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +nuclearStopping: for proton SubType=8 BuildTable=0 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV + +msc: for GenericIon SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +ionIoni: for GenericIon SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ParamICRU73 : Emin= 0 eV Emax= 100 TeV deltaVI + +nuclearStopping: for GenericIon SubType=8 BuildTable=0 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV + +msc: for alpha SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +ionIoni: for alpha SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + BraggIon : Emin= 0 eV Emax=7.9452 MeV deltaVI + BetheBloch : Emin=7.9452 MeV Emax= 100 TeV deltaVI + +nuclearStopping: for alpha SubType=8 BuildTable=0 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV + +msc: for anti_proton SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +hIoni: for anti_proton SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU73QO : Emin= 0 eV Emax= 2 MeV deltaVI + BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI + +hBrems: for anti_proton SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +hPairProd: for anti_proton SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 17x1001 from 7.50618 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 + Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +msc: for kaon+ SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +hIoni: for kaon+ SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + Bragg : Emin= 0 eV Emax=1.05231 MeV deltaVI + BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI + +hBrems: for kaon+ SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +hPairProd: for kaon+ SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 18x1001 from 3.94942 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 + Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +msc: for kaon- SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +hIoni: for kaon- SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU73QO : Emin= 0 eV Emax=1.05231 MeV deltaVI + BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI + +hBrems: for kaon- SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +hPairProd: for kaon- SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 18x1001 from 3.94942 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 + Used Lambda table of kaon+ + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +msc: for mu+ SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +muIoni: for mu+ SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + Bragg : Emin= 0 eV Emax= 200 keV deltaVI + BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI + MuBetheBloch : Emin= 1 GeV Emax= 100 TeV + +muBrems: for mu+ SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +muPairProd: for mu+ SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 21x1001 from 1 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 + Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +msc: for mu- SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +muIoni: for mu- SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU73QO : Emin= 0 eV Emax= 200 keV deltaVI + BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI + MuBetheBloch : Emin= 1 GeV Emax= 100 TeV + +muBrems: for mu- SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +muPairProd: for mu- SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 21x1001 from 1 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 + Used Lambda table of mu+ + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +msc: for pi+ SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +hIoni: for pi+ SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + Bragg : Emin= 0 eV Emax=297.505 keV deltaVI + BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI + +hBrems: for pi+ SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +hPairProd: for pi+ SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 20x1001 from 1.11656 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 + Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +msc: for pi- SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +hIoni: for pi- SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU73QO : Emin= 0 eV Emax=297.505 keV deltaVI + BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI + +hBrems: for pi- SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +hPairProd: for pi- SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 20x1001 from 1.11656 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 + Used Lambda table of pi+ + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV ========= Table of registered couples ============================ @@ -871,147 +1352,1310 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Al Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 5.84069 keV e- 457.179 keV e+ 442.122 keV proton 70 keV + Energy thresholds : gamma 5.87535 keV e- 460.395 keV e+ 442.201 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : LXe Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 24.0004 keV e- 389.292 keV e+ 376.471 keV proton 70 keV + Energy thresholds : gamma 23.933 keV e- 391.82 keV e+ 376.336 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 3 used in the geometry : Yes Material : Glass Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.10317 keV e- 282.263 keV e+ 272.967 keV proton 70 keV + Energy thresholds : gamma 2.09434 keV e- 281.891 keV e+ 276.265 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld ================================================================== ### Run 1 starts. - Energy weighted position of hits in LXe : (25.3778,-32.1105,47.6532) - Total energy deposition in scintillator : 538.298 (keV) - Reconstructed position of hits in LXe : (11.7926,-13.1687,23.7348) - Number of photons that hit PMTs in this event : 1655 - Number of PMTs above threshold(2) : 32 - Number of photons produced by scintillation in this event : 5516 +--> Event 0 starts. + Energy weighted position of hits in LXe : (45.7342,20.8017,86.8147) + Total energy deposition in scintillator : 531.282 (keV) + Reconstructed position of hits in LXe : (16.4186,11.7785,43.9191) + Number of photons that hit PMTs in this event : 1416 + Number of PMTs above threshold(4) : 32 + Number of photons produced by scintillation in this event : 4286 Number of photons produced by cerenkov in this event : 0 - Number of photons absorbed (OpAbsorption) in this event : 3861 + Number of photons absorbed (OpAbsorption) in this event : 2870 Number of photons absorbed at boundaries (OpBoundary) in this event : 0 Unaccounted for photons in this event : 0 - Energy weighted position of hits in LXe : (0.0333297,-0.0547412,-106.041) - Total energy deposition in scintillator : 358.566 (keV) - Reconstructed position of hits in LXe : (2.0696,-0.00153382,-20.3176) - Number of photons that hit PMTs in this event : 1035 - Number of PMTs above threshold(2) : 32 - Number of photons produced by scintillation in this event : 3725 - Number of photons produced by cerenkov in this event : 0 - Number of photons absorbed (OpAbsorption) in this event : 2690 + Energy weighted position of hits in LXe : (0.102746,-0.109166,-40.7566) + Total energy deposition in scintillator : 533.458 (keV) + Reconstructed position of hits in LXe : (-0.00120174,-2.80176,-16.7196) + Number of photons that hit PMTs in this event : 1321 + Number of PMTs above threshold(4) : 32 + Number of photons produced by scintillation in this event : 4498 + Number of photons produced by cerenkov in this event : 1 + Number of photons absorbed (OpAbsorption) in this event : 3178 Number of photons absorbed at boundaries (OpBoundary) in this event : 0 Unaccounted for photons in this event : 0 - Energy weighted position of hits in LXe : (0.913543,-0.459931,-69.3678) - Total energy deposition in scintillator : 536.332 (keV) - Reconstructed position of hits in LXe : (1.63991,-0.846683,-24.961) - Number of photons that hit PMTs in this event : 1469 - Number of PMTs above threshold(2) : 32 - Number of photons produced by scintillation in this event : 5053 - Number of photons produced by cerenkov in this event : 0 - Number of photons absorbed (OpAbsorption) in this event : 3584 + Energy weighted position of hits in LXe : (0.0038986,0.0181847,-109.224) + Total energy deposition in scintillator : 534.162 (keV) + Reconstructed position of hits in LXe : (-3.60742,-4.00494,-20.011) + Number of photons that hit PMTs in this event : 1237 + Number of PMTs above threshold(4) : 32 + Number of photons produced by scintillation in this event : 4511 + Number of photons produced by cerenkov in this event : 2 + Number of photons absorbed (OpAbsorption) in this event : 3276 Number of photons absorbed at boundaries (OpBoundary) in this event : 0 Unaccounted for photons in this event : 0 - Energy weighted position of hits in LXe : (-0.398866,0.976295,-72.6524) - Total energy deposition in scintillator : 537.405 (keV) - Reconstructed position of hits in LXe : (-2.05763,2.48297,-23.4178) - Number of photons that hit PMTs in this event : 1582 - Number of PMTs above threshold(2) : 32 - Number of photons produced by scintillation in this event : 5317 + Energy weighted position of hits in LXe : (9.43458,-4.22331,-91.9352) + Total energy deposition in scintillator : 533.323 (keV) + Reconstructed position of hits in LXe : (0.271296,-1.87591,-23.2914) + Number of photons that hit PMTs in this event : 1140 + Number of PMTs above threshold(4) : 32 + Number of photons produced by scintillation in this event : 4297 Number of photons produced by cerenkov in this event : 0 - Number of photons absorbed (OpAbsorption) in this event : 3735 + Number of photons absorbed (OpAbsorption) in this event : 3157 Number of photons absorbed at boundaries (OpBoundary) in this event : 0 Unaccounted for photons in this event : 0 - Energy weighted position of hits in LXe : (-0.0550395,-0.00151261,-85.4005) - Total energy deposition in scintillator : 537.913 (keV) - Reconstructed position of hits in LXe : (-0.151561,0.57039,-24.7703) - Number of photons that hit PMTs in this event : 1489 - Number of PMTs above threshold(2) : 32 - Number of photons produced by scintillation in this event : 5296 + Energy weighted position of hits in LXe : (9.95538,-2.27041,-99.2514) + Total energy deposition in scintillator : 533.465 (keV) + Reconstructed position of hits in LXe : (0.326985,-0.51394,-19.2553) + Number of photons that hit PMTs in this event : 1219 + Number of PMTs above threshold(4) : 32 + Number of photons produced by scintillation in this event : 4397 Number of photons produced by cerenkov in this event : 0 - Number of photons absorbed (OpAbsorption) in this event : 3807 - Number of photons absorbed at boundaries (OpBoundary) in this event : 0 -Unaccounted for photons in this event : 0 - Energy weighted position of hits in LXe : (0.0738991,-0.0121195,-98.9945) - Total energy deposition in scintillator : 539.066 (keV) - Reconstructed position of hits in LXe : (0.0831341,-1.08319,-17.5878) - Number of photons that hit PMTs in this event : 1518 - Number of PMTs above threshold(2) : 32 - Number of photons produced by scintillation in this event : 5489 - Number of photons produced by cerenkov in this event : 0 - Number of photons absorbed (OpAbsorption) in this event : 3971 - Number of photons absorbed at boundaries (OpBoundary) in this event : 0 -Unaccounted for photons in this event : 0 - Energy weighted position of hits in LXe : (0.396793,-0.608062,-105.507) - Total energy deposition in scintillator : 537.927 (keV) - Reconstructed position of hits in LXe : (-0.274503,-1.38035,-16.6277) - Number of photons that hit PMTs in this event : 1459 - Number of PMTs above threshold(2) : 32 - Number of photons produced by scintillation in this event : 5268 - Number of photons produced by cerenkov in this event : 0 - Number of photons absorbed (OpAbsorption) in this event : 3809 - Number of photons absorbed at boundaries (OpBoundary) in this event : 0 -Unaccounted for photons in this event : 0 - Energy weighted position of hits in LXe : (-6.93916,1.70443,-90.5821) - Total energy deposition in scintillator : 537.774 (keV) - Reconstructed position of hits in LXe : (-4.76374,2.8512,-20.8279) - Number of photons that hit PMTs in this event : 1471 - Number of PMTs above threshold(2) : 32 - Number of photons produced by scintillation in this event : 5258 - Number of photons produced by cerenkov in this event : 0 - Number of photons absorbed (OpAbsorption) in this event : 3787 - Number of photons absorbed at boundaries (OpBoundary) in this event : 0 -Unaccounted for photons in this event : 0 - Energy weighted position of hits in LXe : (3.62478,-28.3945,-70.1812) - Total energy deposition in scintillator : 536.861 (keV) - Reconstructed position of hits in LXe : (2.90479,-10.1954,-23.7412) - Number of photons that hit PMTs in this event : 1500 - Number of PMTs above threshold(2) : 32 - Number of photons produced by scintillation in this event : 5158 - Number of photons produced by cerenkov in this event : 0 - Number of photons absorbed (OpAbsorption) in this event : 3658 - Number of photons absorbed at boundaries (OpBoundary) in this event : 0 -Unaccounted for photons in this event : 0 - Energy weighted position of hits in LXe : (-0.0497453,0.972606,-84.4793) - Total energy deposition in scintillator : 536.328 (keV) - Reconstructed position of hits in LXe : (-0.82084,-0.515543,-20.3176) - Number of photons that hit PMTs in this event : 1468 - Number of PMTs above threshold(2) : 32 - Number of photons produced by scintillation in this event : 5051 - Number of photons produced by cerenkov in this event : 0 - Number of photons absorbed (OpAbsorption) in this event : 3583 + Number of photons absorbed (OpAbsorption) in this event : 3178 Number of photons absorbed at boundaries (OpBoundary) in this event : 0 Unaccounted for photons in this event : 0 Run terminated. Run Summary - Number of events processed : 10 - User=1.920000s Real=1.943148s Sys=0.010000s + Number of events processed : 5 + User=0.230000s Real=0.232047s Sys=0.000000s ======================== run summary ====================== -The run was 10 events. -Number of hits per event: 1465 +- 48.93 +The run was 5 events. +Number of hits per event: 1267 +- 42.17 Number of hits per event above threshold: 32 +- 0 -Number of scintillation photons per event : 5113 +- 153.6 -Number of Cerenkov photons per event: 0 +- 0 -Number of absorbed photons per event : 3648 +- 107.4 +Number of scintillation photons per event : 4398 +- 42.67 +Number of Cerenkov photons per event: 0.6 +- 0.3578 +Number of absorbed photons per event : 3132 +- 61.4 Number of photons absorbed at boundary per event: 0 +- 0 -Total energy deposition in scintillator per event: 519.6 +- 16.98 keV. +Total energy deposition in scintillator per event: 533.1 +- 0.4353 keV. +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. +/tracking/verbose 1 +/LXe/forceDrawPhotons true +/LXe/detector/MainScintYield 100 +/process/optical/scintillation/setTrackSecondariesFirst true +/run/physicsModified +/run/beamOn 1 + +### === Deexcitation model UAtomDeexcitation is activated for 1 region: + DefaultRegionForTheWorld 1 0 0 +### === Ignore cuts flag: 0 + +phot: for gamma SubType=12 BuildTable=0 + LambdaPrime table from 200 keV to 100 TeV in 174 bins + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + LivermorePhElectric : Emin= 0 eV Emax= 100 TeV SauterGavrila Fluo + +compt: for gamma SubType=13 BuildTable=1 + Lambda table from 100 eV to 1 MeV, 20 bins/decade, spline: 1 + LambdaPrime table from 1 MeV to 100 TeV in 160 bins + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + LowEPComptonModel : Emin= 0 eV Emax= 20 MeV Fluo + KleinNishina : Emin= 20 MeV Emax= 100 TeV Fluo + +conv: for gamma SubType=14 BuildTable=1 + Lambda table from 1.022 MeV to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + BetheHeitler5D : Emin= 0 eV Emax= 100 TeV ModifiedTsai + +Rayl: for gamma SubType=11 BuildTable=1 + Lambda table from 100 eV to 100 keV, 20 bins/decade, spline: 0 + LambdaPrime table from 100 keV to 100 TeV in 180 bins + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator + +msc: for e- SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +eIoni: for e- SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.2, 0.01 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + LowEnergyIoni : Emin= 0 eV Emax= 100 keV deltaVI + MollerBhabha : Emin= 100 keV Emax= 100 TeV deltaVI + +eBrem: for e- SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS + eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS + +ePairProd: for e- SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 25x1001 from 0.1 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 + Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 100 MeV Emax= 100 TeV + +msc: for e+ SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +eIoni: for e+ SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.2, 0.01 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + PenIoni : Emin= 0 eV Emax= 100 keV + MollerBhabha : Emin= 100 keV Emax= 100 TeV deltaVI + +eBrem: for e+ SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + LPM flag: 1 for E > 1 GeV, VertexHighEnergyTh(GeV)= 100000 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eBremSB : Emin= 0 eV Emax= 1 GeV AngularGen2BS + eBremLPM : Emin= 1 GeV Emax= 100 TeV AngularGen2BS + +ePairProd: for e+ SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 25x1001 from 0.1 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +annihil: for e+, integral:1 SubType=5 BuildTable=0 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eplus2gg : Emin= 0 eV Emax= 100 TeV + +CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 + Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 100 MeV Emax= 100 TeV + +msc: for proton SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +hIoni: for proton SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + Bragg : Emin= 0 eV Emax= 2 MeV deltaVI + BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI + +hBrems: for proton SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +hPairProd: for proton SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 17x1001 from 7.50618 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 + Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +nuclearStopping: for proton SubType=8 BuildTable=0 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV + +msc: for GenericIon SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +ionIoni: for GenericIon SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ParamICRU73 : Emin= 0 eV Emax= 100 TeV deltaVI + +nuclearStopping: for GenericIon SubType=8 BuildTable=0 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV + +msc: for alpha SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +ionIoni: for alpha SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + BraggIon : Emin= 0 eV Emax=7.9452 MeV deltaVI + BetheBloch : Emin=7.9452 MeV Emax= 100 TeV deltaVI + +nuclearStopping: for alpha SubType=8 BuildTable=0 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV + +msc: for anti_proton SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +hIoni: for anti_proton SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU73QO : Emin= 0 eV Emax= 2 MeV deltaVI + BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI + +hBrems: for anti_proton SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +hPairProd: for anti_proton SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 17x1001 from 7.50618 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 + Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +msc: for kaon+ SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +hIoni: for kaon+ SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + Bragg : Emin= 0 eV Emax=1.05231 MeV deltaVI + BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI + +hBrems: for kaon+ SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +hPairProd: for kaon+ SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 18x1001 from 3.94942 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 + Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +msc: for kaon- SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +hIoni: for kaon- SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU73QO : Emin= 0 eV Emax=1.05231 MeV deltaVI + BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI + +hBrems: for kaon- SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +hPairProd: for kaon- SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 18x1001 from 3.94942 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 + Used Lambda table of kaon+ + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +msc: for mu+ SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +muIoni: for mu+ SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + Bragg : Emin= 0 eV Emax= 200 keV deltaVI + BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI + MuBetheBloch : Emin= 1 GeV Emax= 100 TeV + +muBrems: for mu+ SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +muPairProd: for mu+ SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 21x1001 from 1 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 + Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +msc: for mu- SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +muIoni: for mu- SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU73QO : Emin= 0 eV Emax= 200 keV deltaVI + BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI + MuBetheBloch : Emin= 1 GeV Emax= 100 TeV + +muBrems: for mu- SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +muPairProd: for mu- SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 21x1001 from 1 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 + Used Lambda table of mu+ + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +msc: for pi+ SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +hIoni: for pi+ SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + Bragg : Emin= 0 eV Emax=297.505 keV deltaVI + BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI + +hBrems: for pi+ SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +hPairProd: for pi+ SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 20x1001 from 1.11656 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 + Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +msc: for pi- SubType= 10 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 + +hIoni: for pi- SubType=2 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU73QO : Emin= 0 eV Emax=297.505 keV deltaVI + BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI + +hBrems: for pi- SubType=3 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +hPairProd: for pi- SubType=4 + dE/dx and range tables from 100 eV to 100 TeV in 240 bins + Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 + Sampling table 20x1001 from 1.11656 GeV to 100 TeV + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi + +CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 + Used Lambda table of pi+ + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +========= Table of registered couples ============================ + +Index : 0 used in the geometry : Yes + Material : Vacuum + Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um + Energy thresholds : gamma 990 eV e- 990 eV e+ 990 eV proton 70 keV + Region(s) which use this couple : + DefaultRegionForTheWorld + +Index : 1 used in the geometry : Yes + Material : Al + Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um + Energy thresholds : gamma 5.87535 keV e- 460.395 keV e+ 442.201 keV proton 70 keV + Region(s) which use this couple : + DefaultRegionForTheWorld + +Index : 2 used in the geometry : Yes + Material : LXe + Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um + Energy thresholds : gamma 23.933 keV e- 391.82 keV e+ 376.336 keV proton 70 keV + Region(s) which use this couple : + DefaultRegionForTheWorld + +Index : 3 used in the geometry : Yes + Material : Glass + Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um + Energy thresholds : gamma 2.09434 keV e- 281.891 keV e+ 276.265 keV proton 70 keV + Region(s) which use this couple : + DefaultRegionForTheWorld + +================================================================== + +### Run 2 starts. +--> Event 0 starts. + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 -200 0.511 0 0 0 expHall initStep + 1 0 0 -114 0.511 0 86.4 86.4 housing Transportation + 2 0 0 -113 0.511 0 0.635 87 scintillator Transportation + 3 0 0 -98.5 0.511 0 14.5 102 scintillator Rayl + 4 -6.71 -2.05 -63 0.32 0.00477 36.1 138 scintillator compt + 5 -8.51 -3.03 -62.5 0.248 0.0051 2.12 140 scintillator compt + 6 -8.56 -6.72 -59.9 0.138 2.36e-05 4.5 144 scintillator compt + 7 -8.99 -5.55 -59.6 0 0.0346 1.28 146 scintillator phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.99 -5.55 -59.6 0.104 0 0 0 scintillator initStep + 1 -8.99 -5.56 -59.6 0.101 0.00286 0.00592 0.00592 scintillator msc + 2 -9 -5.56 -59.6 0.0774 0.0236 0.0333 0.0393 scintillator eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 9, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.99 -5.56 -59.6 7.01e-06 0 0 0 scintillator initStep + 1 -89 20.3 -62 7.01e-06 0 84.1 84.1 housing Transportation + 2 -89 20.3 -62 7.01e-06 0 0 84.1 scintillator Transportation + 3 89 78 -67.3 7.01e-06 0 187 271 housing Transportation + 4 89 78 -67.3 7.01e-06 0 0 271 scintillator Transportation + 5 54.9 89 -68.3 7.01e-06 0 35.8 307 pmt Transportation + 6 54.9 89 -68.3 7.01e-06 0 0 307 scintillator Transportation + 7 -89 42.4 -72.6 7.01e-06 0 151 458 pmt Transportation + 8 -89.3 42.3 -72.6 7.01e-06 7.01e-06 0.336 459 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 8, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9 -5.56 -59.6 7.12e-06 0 0 0 scintillator initStep + 1 -4.77 44.3 -113 7.12e-06 0 73.2 73.2 housing Transportation + 2 -4.77 44.3 -113 7.12e-06 0 0 73.2 scintillator Transportation + 3 -0.985 89 -65.1 7.12e-06 0 65.7 139 housing Transportation + 4 -0.985 89 -65.1 7.12e-06 0 0 139 scintillator Transportation + 5 11.6 -59.1 93.7 7.12e-06 7.12e-06 217 356 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 7, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9 -5.56 -59.6 7.07e-06 0 0 0 scintillator initStep + 1 -7.78 -5.27 -59.1 7.07e-06 7.07e-06 1.35 1.35 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 6, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9 -5.56 -59.6 7.09e-06 0 0 0 scintillator initStep + 1 -19.1 -12.8 -113 7.09e-06 0 54.8 54.8 housing Transportation + 2 -19.1 -12.8 -113 7.09e-06 0 0 54.8 scintillator Transportation + 3 -61.7 -43.5 113 7.09e-06 0 232 287 pmt Transportation + 4 -61.8 -43.5 113 7.09e-06 7.09e-06 0.327 287 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -9 -5.56 -59.6 0.0774 0 0 0.0393 scintillator initStep + 3 -9 -5.55 -59.6 0.0755 0.00188 0.00367 0.0429 scintillator msc + 4 -9 -5.55 -59.6 0.0389 0.0366 0.0258 0.0688 scintillator eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 12, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9 -5.55 -59.6 7.05e-06 0 0 0 scintillator initStep + 1 -76.6 -89 -99.7 7.05e-06 0 115 115 housing Transportation + 2 -76.6 -89 -99.7 7.05e-06 0 0 115 scintillator Transportation + 3 -89 -73.6 -107 7.05e-06 0 21.1 136 housing Transportation + 4 -89 -73.6 -107 7.05e-06 0 0 136 scintillator Transportation + 5 -85.1 -68.8 -109 7.05e-06 7.05e-06 6.6 142 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 11, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9 -5.55 -59.6 7.11e-06 0 0 0 scintillator initStep + 1 -89 -53.7 -76.4 7.11e-06 0 94.9 94.9 pmt Transportation + 2 -89.3 -53.9 -76.4 7.11e-06 7.11e-06 0.383 95.2 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 10, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9 -5.55 -59.6 7.12e-06 0 0 0 scintillator initStep + 1 -9.22 -89 -26.1 7.12e-06 0 89.9 89.9 housing Transportation + 2 -9.22 -89 -26.1 7.12e-06 0 0 89.9 scintillator Transportation + 3 -9.69 89 45.3 7.12e-06 0 192 282 housing Transportation + 4 -9.69 89 45.3 7.12e-06 0 0 282 scintillator Transportation + 5 -10.1 -79.6 113 7.12e-06 0 182 463 housing Transportation + 6 -10.1 -79.6 113 7.12e-06 0 0 463 scintillator Transportation + 7 -10.2 -89 109 7.12e-06 0 10.1 474 housing Transportation + 8 -10.2 -89 109 7.12e-06 0 0 474 scintillator Transportation + 9 -10.6 89 37.8 7.12e-06 0 192 665 housing Transportation + 10 -10.6 89 37.8 7.12e-06 0 0 665 scintillator Transportation + 11 -10.6 84.1 35.8 7.12e-06 7.12e-06 5.31 671 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 -9 -5.55 -59.6 0.0389 0 0 0.0688 scintillator initStep + 5 -9 -5.55 -59.6 0.0377 0.00124 0.00119 0.07 scintillator msc + 6 -9 -5.55 -59.6 0 0.0377 0.0149 0.0848 scintillator eIoni + 7 -9 -5.55 -59.6 0 0 0 0.0848 scintillator Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 18, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9 -5.55 -59.6 7.1e-06 0 0 0 scintillator initStep + 1 15.4 76.4 -51.6 7.1e-06 7.1e-06 85.9 85.9 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 17, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9 -5.55 -59.6 7.06e-06 0 0 0 scintillator initStep + 1 -3.59 -41.1 8.65 7.06e-06 7.06e-06 77.1 77.1 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 16, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9 -5.55 -59.6 7.12e-06 0 0 0 scintillator initStep + 1 -89 -21.3 -22.7 7.12e-06 0 89.5 89.5 housing Transportation + 2 -89 -21.3 -22.7 7.12e-06 0 0 89.5 scintillator Transportation + 3 -15.4 -35.8 11.3 7.12e-06 7.12e-06 82.3 172 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 15, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9 -5.55 -59.6 7.05e-06 0 0 0 scintillator initStep + 1 -20.7 -42.3 -113 7.05e-06 0 65.9 65.9 housing Transportation + 2 -20.7 -42.3 -113 7.05e-06 0 0 65.9 scintillator Transportation + 3 -35.6 -89 -45.2 7.05e-06 0 83.6 150 housing Transportation + 4 -35.6 -89 -45.2 7.05e-06 0 0 150 scintillator Transportation + 5 -63.6 -1.3 82.2 7.05e-06 7.05e-06 157 307 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 14, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9 -5.55 -59.6 7.13e-06 0 0 0 scintillator initStep + 1 -13.9 -89 -43.2 7.13e-06 0 85.2 85.2 housing Transportation + 2 -13.9 -89 -43.2 7.13e-06 0 0 85.2 scintillator Transportation + 3 -21.3 38.8 -18.1 7.13e-06 7.13e-06 130 216 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 13, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9 -5.55 -59.6 7.12e-06 0 0 0 scintillator initStep + 1 -14.2 47 113 7.12e-06 0 180 180 housing Transportation + 2 -14.2 47 113 7.12e-06 0 0 180 scintillator Transportation + 3 -18.4 89 -25.2 7.12e-06 0 145 325 housing Transportation + 4 -18.4 89 -25.2 7.12e-06 0 0 325 scintillator Transportation + 5 -20.3 70.9 -84.7 7.12e-06 7.12e-06 62.2 387 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.56 -6.72 -59.9 0.11 0 0 0 scintillator initStep + 1 -8.56 -6.72 -59.9 0.0994 0.0104 0.00649 0.00649 scintillator msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 19, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.56 -6.72 -59.9 7.08e-06 0 0 0 scintillator initStep + 1 -79 -89 -14.3 7.08e-06 0 118 118 housing Transportation + 2 -79 -89 -14.3 7.08e-06 0 0 118 scintillator Transportation + 3 -89 -77.3 -7.79 7.08e-06 0 16.7 134 housing Transportation + 4 -89 -77.3 -7.79 7.08e-06 0 0 134 scintillator Transportation + 5 53.3 89 84.4 7.08e-06 0 237 372 pmt Transportation + 6 53.6 89.3 84.6 7.08e-06 7.08e-06 0.48 372 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 -8.56 -6.72 -59.9 0.0994 0 0 0.00649 scintillator initStep + 2 -8.56 -6.73 -59.9 0.0987 0.000732 0.00552 0.012 scintillator msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 20, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.56 -6.73 -59.9 7.03e-06 0 0 0 scintillator initStep + 1 46.8 -56.8 -113 7.03e-06 0 91.7 91.7 pmt Transportation + 2 47.2 -57.2 -113 7.03e-06 7.03e-06 0.632 92.3 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -8.56 -6.73 -59.9 0.0987 0 0 0.012 scintillator initStep + 3 -8.57 -6.73 -59.9 0.0976 0.00107 0.00545 0.0175 scintillator msc + 4 -8.57 -6.74 -59.9 0.0783 0.0194 0.0323 0.0498 scintillator eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 21, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.57 -6.73 -59.9 7.07e-06 0 0 0 scintillator initStep + 1 24.4 -7.68 -33 7.07e-06 7.07e-06 42.6 42.6 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 -8.57 -6.74 -59.9 0.0783 0 0 0.0498 scintillator initStep + 5 -8.57 -6.74 -59.9 0.0754 0.00283 0.00374 0.0535 scintillator msc + 6 -8.57 -6.73 -59.9 0.0572 0.0183 0.0258 0.0793 scintillator eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 23, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.57 -6.73 -59.9 7.03e-06 0 0 0 scintillator initStep + 1 -29.2 9.37 -113 7.03e-06 0 59.2 59.2 housing Transportation + 2 -29.2 9.37 -113 7.03e-06 0 0 59.2 scintillator Transportation + 3 -89 55.9 40.6 7.03e-06 0 171 231 housing Transportation + 4 -89 55.9 40.6 7.03e-06 0 0 231 scintillator Transportation + 5 -60.9 77.9 113 7.03e-06 0 80.7 311 housing Transportation + 6 -60.9 77.9 113 7.03e-06 0 0 311 scintillator Transportation + 7 -46.6 89 76.3 7.03e-06 0 40.9 352 pmt Transportation + 8 -46.6 89 76.3 7.03e-06 0 0 352 scintillator Transportation + 9 -19 67.5 5.49 7.03e-06 7.03e-06 79 431 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 22, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.57 -6.73 -59.9 7.09e-06 0 0 0 scintillator initStep + 1 -85.4 -89 -82.6 7.09e-06 0 115 115 housing Transportation + 2 -85.4 -89 -82.6 7.09e-06 0 0 115 scintillator Transportation + 3 -89 -85.1 -83.6 7.09e-06 0 5.38 120 housing Transportation + 4 -89 -85.1 -83.6 7.09e-06 0 0 120 scintillator Transportation + 5 -63.8 -58.2 -91.1 7.09e-06 7.09e-06 37.7 158 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 -8.57 -6.73 -59.9 0.0572 0 0 0.0793 scintillator initStep + 7 -8.57 -6.73 -59.9 0.0567 0.000463 0.00224 0.0816 scintillator msc + 8 -8.57 -6.73 -59.9 0.0225 0.0342 0.0206 0.102 scintillator eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 29, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.57 -6.73 -59.9 7.11e-06 0 0 0 scintillator initStep + 1 11.2 -89 41.8 7.11e-06 0 132 132 housing Transportation + 2 11.2 -89 41.8 7.11e-06 0 0 132 scintillator Transportation + 3 13.4 -79.6 53.3 7.11e-06 7.11e-06 15.1 147 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 28, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.57 -6.73 -59.9 7.08e-06 0 0 0 scintillator initStep + 1 -12.6 -1.75 -12.2 7.08e-06 7.08e-06 48.1 48.1 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 27, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.57 -6.73 -59.9 7e-06 0 0 0 scintillator initStep + 1 55.2 89 -64.2 7e-06 0 115 115 pmt Transportation + 2 55.4 89.3 -64.2 7e-06 0 0.394 115 photocath Transportation + 3 55.4 89.3 -64.2 7e-06 0 0 115 pmt Transportation + 4 55.6 89 -64.2 7e-06 0 0.394 116 scintillator Transportation + 5 89 38.9 -66.5 7e-06 0 60.3 176 pmt Transportation + 6 89.3 38.2 -66.5 7e-06 0 0.691 177 photocath Transportation + 7 89.3 38.2 -66.5 7e-06 0 0 177 pmt Transportation + 8 89 37.6 -66.6 7e-06 0 0.691 178 scintillator Transportation + 9 4.71 -89 -72.3 7e-06 0 152 330 housing Transportation + 10 4.71 -89 -72.3 7e-06 0 0 330 scintillator Transportation + 11 -89 51.8 -78.6 7e-06 0 169 499 pmt Transportation + 12 -89.3 52.4 -78.6 7e-06 7e-06 0.691 500 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 26, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.57 -6.73 -59.9 7.01e-06 0 0 0 scintillator initStep + 1 13.9 -31.7 -113 7.01e-06 0 62.8 62.8 housing Transportation + 2 13.9 -31.7 -113 7.01e-06 0 0 62.8 scintillator Transportation + 3 36.8 -57.2 -58.7 7.01e-06 7.01e-06 64.2 127 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 25, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.57 -6.73 -59.9 7.03e-06 0 0 0 scintillator initStep + 1 -12.8 89 90.9 7.03e-06 0 179 179 housing Transportation + 2 -12.8 89 90.9 7.03e-06 0 0 179 scintillator Transportation + 3 -13.4 75.2 113 7.03e-06 7.03e-06 25.8 205 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 24, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.57 -6.73 -59.9 7.04e-06 0 0 0 scintillator initStep + 1 -26.1 -89 5.65 7.04e-06 0 107 107 pmt Transportation + 2 -26.2 -89.3 5.93 7.04e-06 7.04e-06 0.43 107 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 -8.57 -6.73 -59.9 0.0225 0 0 0.102 scintillator initStep + 9 -8.57 -6.73 -59.9 0.0219 0.000581 0.000492 0.103 scintillator msc + 10 -8.57 -6.73 -59.9 0 0.0219 0.00694 0.11 scintillator eIoni + 11 -8.57 -6.73 -59.9 0 0 0 0.11 scintillator Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.51 -3.03 -62.5 0.067 0 0 0 scintillator initStep + 1 -8.52 -3.02 -62.5 0.0659 0.00109 0.0029 0.0029 scintillator msc + 2 -8.52 -3.03 -62.5 0.0428 0.0231 0.0232 0.0261 scintillator eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 30, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.52 -3.03 -62.5 7.12e-06 0 0 0 scintillator initStep + 1 59.1 89 10.7 7.12e-06 0 136 136 pmt Transportation + 2 59.4 89.3 11 7.12e-06 7.12e-06 0.492 136 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -8.52 -3.03 -62.5 0.0428 0 0 0.0261 scintillator initStep + 3 -8.52 -3.03 -62.5 0.0421 0.00072 0.00139 0.0275 scintillator msc + 4 -8.52 -3.03 -62.5 0.00898 0.0331 0.0164 0.0439 scintillator eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 34, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.52 -3.03 -62.5 7.06e-06 0 0 0 scintillator initStep + 1 23.6 14.7 -42 7.06e-06 7.06e-06 42 42 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 33, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.52 -3.03 -62.5 7.06e-06 0 0 0 scintillator initStep + 1 -37.1 -89 -54.5 7.06e-06 0 90.9 90.9 pmt Transportation + 2 -37.2 -89.3 -54.5 7.06e-06 7.06e-06 0.338 91.3 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 32, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.52 -3.03 -62.5 7.06e-06 0 0 0 scintillator initStep + 1 -86.1 89 -13.2 7.06e-06 0 130 130 housing Transportation + 2 -86.1 89 -13.2 7.06e-06 0 0 130 scintillator Transportation + 3 -89 85.6 -11.4 7.06e-06 0 4.81 135 housing Transportation + 4 -89 85.6 -11.4 7.06e-06 0 0 135 scintillator Transportation + 5 58.3 -89 82 7.06e-06 0 247 382 pmt Transportation + 6 58.6 -89.3 82.2 7.06e-06 0 0.476 382 photocath Transportation + 7 58.6 -89.3 82.2 7.06e-06 0 0 382 pmt Transportation + 8 58.9 -89 82.3 7.06e-06 0 0.476 383 scintillator Transportation + 9 87.7 -54.8 101 7.06e-06 7.06e-06 48.3 431 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 31, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -8.52 -3.03 -62.5 7.1e-06 0 0 0 scintillator initStep + 1 89 19.1 -82.9 7.1e-06 0 102 102 housing Transportation + 2 89 19.1 -82.9 7.1e-06 0 0 102 scintillator Transportation + 3 -54.6 51.6 -113 7.1e-06 0 150 252 pmt Transportation + 4 -54.6 51.6 -113 7.1e-06 0 0 252 scintillator Transportation + 5 -89 59.4 -106 7.1e-06 0 36 288 housing Transportation + 6 -89 59.4 -106 7.1e-06 0 0 288 scintillator Transportation + 7 -68.4 64 -101 7.1e-06 7.1e-06 21.5 310 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 -8.52 -3.03 -62.5 0.00898 0 0 0.0439 scintillator initStep + 5 -8.52 -3.03 -62.5 0.00858 0.000405 0.000117 0.044 scintillator msc + 6 -8.52 -3.03 -62.5 0 0.00858 0.00144 0.0454 scintillator eIoni + 7 -8.52 -3.03 -62.5 0 0 0 0.0454 scintillator Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.71 -2.05 -63 0.186 0 0 0 scintillator initStep + 1 -6.71 -2.04 -63 0.181 0.0054 0.015 0.015 scintillator msc + 2 -6.7 -2.04 -63 0.166 0.0144 0.0382 0.0532 scintillator Cerenkov + 3 -6.71 -2.05 -63 0.163 0.00335 0.00998 0.0632 scintillator Cerenkov + 4 -6.71 -2.05 -63 0.161 0.00134 0.00356 0.0668 scintillator Cerenkov + 5 -6.71 -2.05 -63 0.161 0.000607 0.00101 0.0678 scintillator Cerenkov + 6 -6.7 -2.07 -63 0.109 0.0519 0.0542 0.122 scintillator eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 39, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.71 -2.05 -63 7.05e-06 0 0 0 scintillator initStep + 1 71.6 -60.6 -77 7.05e-06 7.05e-06 98.7 98.7 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 38, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.07 -63 7.04e-06 0 0 0 scintillator initStep + 1 8.98 -4.88 -113 7.04e-06 0 52.5 52.5 housing Transportation + 2 8.98 -4.88 -113 7.04e-06 0 0 52.5 scintillator Transportation + 3 24.6 -7.68 -63.2 7.04e-06 7.04e-06 52.3 105 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 37, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.06 -63 7.12e-06 0 0 0 scintillator initStep + 1 -46.4 25.4 -113 7.12e-06 0 69.5 69.5 pmt Transportation + 2 -46.7 25.5 -113 7.12e-06 0 0.459 70 photocath Transportation + 3 -46.7 25.5 -113 7.12e-06 0 0 70 pmt Transportation + 4 -47 25.7 -113 7.12e-06 0 0.459 70.4 scintillator Transportation + 5 -89 54.8 -60 7.12e-06 0 73.6 144 pmt Transportation + 6 -89.3 55 -59.6 7.12e-06 7.12e-06 0.609 145 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 36, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.06 -63 7.01e-06 0 0 0 scintillator initStep + 1 11.8 6.74 -99 7.01e-06 7.01e-06 41.4 41.4 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 35, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.71 -2.05 -63 7.08e-06 0 0 0 scintillator initStep + 1 50 -89 -71.8 7.08e-06 0 104 104 pmt Transportation + 2 50.3 -89.3 -71.8 7.08e-06 7.08e-06 0.389 105 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 -6.7 -2.07 -63 0.109 0 0 0.122 scintillator initStep + 7 -6.7 -2.07 -63 0.106 0.0029 0.00641 0.128 scintillator msc + 8 -6.7 -2.08 -63 0.0811 0.025 0.035 0.163 scintillator eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 42, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.08 -63 7.09e-06 0 0 0 scintillator initStep + 1 10.9 19.8 -54.7 7.09e-06 7.09e-06 29.3 29.3 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 41, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.07 -63 7.13e-06 0 0 0 scintillator initStep + 1 57.6 -40.9 -57.8 7.13e-06 7.13e-06 75.3 75.3 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 40, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.08 -63 7.06e-06 0 0 0 scintillator initStep + 1 -39.9 27.3 -113 7.06e-06 0 66.8 66.8 pmt Transportation + 2 -40.1 27.5 -113 7.06e-06 7.06e-06 0.444 67.3 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 -6.7 -2.08 -63 0.0811 0 0 0.163 scintillator initStep + 9 -6.7 -2.08 -63 0.0781 0.00301 0.00396 0.167 scintillator msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 43, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.08 -63 7.01e-06 0 0 0 scintillator initStep + 1 31.3 18.6 -113 7.01e-06 0 66.1 66.1 housing Transportation + 2 31.3 18.6 -113 7.01e-06 0 0 66.1 scintillator Transportation + 3 89 50 -36.9 7.01e-06 0 101 167 housing Transportation + 4 89 50 -36.9 7.01e-06 0 0 167 scintillator Transportation + 5 64.9 63.2 -5.14 7.01e-06 7.01e-06 42 209 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 -6.7 -2.08 -63 0.0781 0 0 0.167 scintillator initStep + 10 -6.7 -2.08 -63 0.0762 0.0019 0.00373 0.171 scintillator msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 44, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.08 -63 7.01e-06 0 0 0 scintillator initStep + 1 22.8 34.3 -113 7.01e-06 0 68.5 68.5 housing Transportation + 2 22.8 34.3 -113 7.01e-06 0 0 68.5 scintillator Transportation + 3 67.2 89 -37.8 7.01e-06 0 103 172 housing Transportation + 4 67.2 89 -37.8 7.01e-06 0 0 172 scintillator Transportation + 5 89 62.1 -0.798 7.01e-06 0 50.7 222 pmt Transportation + 6 89.3 61.5 0.1 7.01e-06 7.01e-06 1.16 223 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 10 -6.7 -2.08 -63 0.0762 0 0 0.171 scintillator initStep + 11 -6.7 -2.09 -63 0.0758 0.000408 0.00358 0.175 scintillator msc + 12 -6.71 -2.09 -63 0.0589 0.0169 0.0259 0.201 scintillator eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 46, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.71 -2.09 -63 7.07e-06 0 0 0 scintillator initStep + 1 -89 37.7 -45 7.07e-06 0 93.2 93.2 housing Transportation + 2 -89 37.7 -45 7.07e-06 0 0 93.2 scintillator Transportation + 3 -16.9 72.6 -29.2 7.07e-06 7.07e-06 81.6 175 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 45, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.09 -63 7.05e-06 0 0 0 scintillator initStep + 1 -38 89 -50.4 7.05e-06 0 97.1 97.1 housing Transportation + 2 -38 89 -50.4 7.05e-06 0 0 97.1 scintillator Transportation + 3 -89 -59.5 -30 7.05e-06 0 158 255 housing Transportation + 4 -89 -59.5 -30 7.05e-06 0 0 255 scintillator Transportation + 5 -78.9 -89 -26 7.05e-06 0 31.4 287 housing Transportation + 6 -78.9 -89 -26 7.05e-06 0 0 287 scintillator Transportation + 7 -17.7 89 -1.53 7.05e-06 0 190 477 housing Transportation + 8 -17.7 89 -1.53 7.05e-06 0 0 477 scintillator Transportation + 9 43.4 -89 22.9 7.05e-06 0 190 666 pmt Transportation + 10 43.5 -89.3 23 7.05e-06 7.05e-06 0.341 667 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 12 -6.71 -2.09 -63 0.0589 0 0 0.201 scintillator initStep + 13 -6.71 -2.09 -63 0.0573 0.00165 0.00235 0.203 scintillator msc + 14 -6.7 -2.09 -63 0.034 0.0233 0.0208 0.224 scintillator eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 48, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.09 -63 7.13e-06 0 0 0 scintillator initStep + 1 -14.9 89 -63.2 7.13e-06 0 91.5 91.5 housing Transportation + 2 -14.9 89 -63.2 7.13e-06 0 0 91.5 scintillator Transportation + 3 -30.9 -89 -63.6 7.13e-06 0 179 270 pmt Transportation + 4 -30.9 -89.3 -63.6 7.13e-06 7.13e-06 0.319 270 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 47, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.09 -63 7.05e-06 0 0 0 scintillator initStep + 1 -43.1 23.2 -112 7.05e-06 7.05e-06 65.8 65.8 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 14 -6.7 -2.09 -63 0.034 0 0 0.224 scintillator initStep + 15 -6.7 -2.09 -63 0.033 0.000948 0.000959 0.225 scintillator msc + 16 -6.7 -2.09 -63 0 0.033 0.013 0.238 scintillator eIoni + 17 -6.7 -2.09 -63 0 0 0 0.238 scintillator Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 54, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.09 -63 7e-06 0 0 0 scintillator initStep + 1 -29.1 89 -13.2 7e-06 0 106 106 pmt Transportation + 2 -29.2 89.3 -13 7e-06 7e-06 0.38 107 photocath Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 53, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.09 -63 7.13e-06 0 0 0 scintillator initStep + 1 89 30.2 -22.4 7.13e-06 0 109 109 housing Transportation + 2 89 30.2 -22.4 7.13e-06 0 0 109 scintillator Transportation + 3 -85.6 89 51.7 7.13e-06 0 199 307 housing Transportation + 4 -85.6 89 51.7 7.13e-06 0 0 307 scintillator Transportation + 5 -89 87.9 53.1 7.13e-06 0 3.82 311 housing Transportation + 6 -89 87.9 53.1 7.13e-06 0 0 311 scintillator Transportation + 7 -19.2 64.3 82.7 7.13e-06 7.13e-06 79.4 391 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 52, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.09 -63 7.05e-06 0 0 0 scintillator initStep + 1 73.6 7.16 -113 7.05e-06 0 95.1 95.1 housing Transportation + 2 73.6 7.16 -113 7.05e-06 0 0 95.1 scintillator Transportation + 3 89 8.94 -103 7.05e-06 0 18.2 113 housing Transportation + 4 89 8.94 -103 7.05e-06 0 0 113 scintillator Transportation + 5 -24.6 22 -32.6 7.05e-06 7.05e-06 135 248 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 51, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.09 -63 7.05e-06 0 0 0 scintillator initStep + 1 -89 -79.9 21.2 7.05e-06 0 141 141 housing Transportation + 2 -89 -79.9 21.2 7.05e-06 0 0 141 scintillator Transportation + 3 -79.4 -89 31 7.05e-06 0 16.5 158 housing Transportation + 4 -79.4 -89 31 7.05e-06 0 0 158 scintillator Transportation + 5 0.83 -13.1 113 7.05e-06 0 138 295 housing Transportation + 6 0.83 -13.1 113 7.05e-06 0 0 295 scintillator Transportation + 7 50.7 34 62 7.05e-06 0 85.5 381 sphere Transportation + 8 50.7 34 62 7.05e-06 0 0 381 scintillator Transportation + 9 89 -7.52 82.4 7.05e-06 0 60.1 441 housing Transportation + 10 89 -7.52 82.4 7.05e-06 0 0 441 scintillator Transportation + 11 53.5 -46 101 7.05e-06 7.05e-06 55.6 496 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 50, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.09 -63 7.06e-06 0 0 0 scintillator initStep + 1 -24.4 89 -22.8 7.06e-06 0 101 101 housing Transportation + 2 -24.4 89 -22.8 7.06e-06 0 0 101 scintillator Transportation + 3 -38.2 18.1 8.44 7.06e-06 7.06e-06 78.7 180 scintillator OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 49, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.7 -2.09 -63 7.11e-06 0 0 0 scintillator initStep + 1 9.72 -89 -77.2 7.11e-06 0 89.6 89.6 housing Transportation + 2 9.72 -89 -77.2 7.11e-06 0 0 89.6 scintillator Transportation + 3 43.3 89 -106 7.11e-06 0 183 273 housing Transportation + 4 43.3 89 -106 7.11e-06 0 0 273 scintillator Transportation + 5 50.9 49.3 -113 7.11e-06 0 41 314 pmt Transportation + 6 50.9 49.3 -113 7.11e-06 0 0 314 scintillator Transportation + 7 77 -89 -90.3 7.11e-06 0 143 457 housing Transportation + 8 77 -89 -90.3 7.11e-06 0 0 457 scintillator Transportation + 9 89 -25.3 -79.8 7.11e-06 0 65.6 522 pmt Transportation + 10 89 -25.3 -79.8 7.11e-06 0 0 522 scintillator Transportation + 11 67.4 89 -61.1 7.11e-06 0 118 640 housing Transportation + 12 67.4 89 -61.1 7.11e-06 0 0 640 scintillator Transportation + 13 34.2 -86.6 -32.2 7.11e-06 7.11e-06 181 821 scintillator OpAbsorption + Energy weighted position of hits in LXe : (-7.925245680422417,-4.171930975806958,-61.48119711863245) + Total energy deposition in scintillator : 511.23343224576 (keV) + Reconstructed position of hits in LXe : (-19.52828125,-5.602187499999999,-35.33234374999999) + Number of photons that hit PMTs in this event : 16 + Number of PMTs above threshold(4) : 0 + Number of photons produced by scintillation in this event : 49 + Number of photons produced by cerenkov in this event : 0 + Number of photons absorbed (OpAbsorption) in this event : 33 + Number of photons absorbed at boundaries (OpBoundary) in this event : 0 +Unaccounted for photons in this event : 0 +/control/shell cp ./currentEvent.rndm ./run2evt0.rndm +./currentEvent.rndm is copied to ./run2evt0.rndm Run terminated. +Run Summary + Number of events processed : 1 + User=0.000000s Real=0.083158s Sys=0.040000s + + ======================== run summary ====================== +The run was 1 events. +Number of hits per event: 16 +- 0 +Number of hits per event above threshold: 0 +- 0 +Number of scintillation photons per event : 49 +- 0 +Number of Cerenkov photons per event: 0 +- 0 +Number of absorbed photons per event : 33 +- 0 +Number of photons absorbed at boundary per event: 0 +- 0 +Total energy deposition in scintillator per event: 511.2 +- 0 keV. + +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 15 of which, static: 0 -Dynamic pools deleted: 15 / Total memory freed: 2.7 MB +Dynamic pools deleted: 15 / Total memory freed: 1.3 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/optical/LXe/README b/examples/extended/optical/LXe/README index f41232f05f..d3252bdace 100644 --- a/examples/extended/optical/LXe/README +++ b/examples/extended/optical/LXe/README @@ -64,6 +64,19 @@ How to start? Then type commands, for instance Session: /run/beamOn 1 +--------------- +Macros included +--------------- + +Several macros are include in the distribution: + +cerenkov.mac: Shoot a 200 MeV mu+ and only allow it to take one step. The + Cerenkov cone and PMTs hit are visible. (Reduce the number + of particles for visualization.) +LXe.mac: Shoot a 511 keV gamma with the default geometry. +photon.mac: Primary beam is an optical photon, with the default geometry. +wls.mac: Geometry includes 15 WLS fibers. A 511 keV electron is the + primary. ----------------------------------------------- Detailed Explanation of Geometry Implementation diff --git a/examples/extended/optical/LXe/cerenkov.mac b/examples/extended/optical/LXe/cerenkov.mac index 3c607d5dc2..1c3f6599dc 100644 --- a/examples/extended/optical/LXe/cerenkov.mac +++ b/examples/extended/optical/LXe/cerenkov.mac @@ -9,13 +9,14 @@ /control/verbose 1 /tracking/verbose 0 /run/verbose 1 -/process/optical/processActivation Scintillation false +/control/cout/ignoreThreadsExcept 0 +/process/optical/verbose 1 +#/process/optical/processActivation Scintillation false /run/initialize /LXe/eventVerbose 0 /LXe/detector/defaults -/LXe/oneStepPrimaries false /LXe/detector/MainScintYield 0 @@ -39,11 +40,11 @@ #/random/resetEngineFrom random/goodCerenkov.rndm /analysis/setFileName cerenkov -/analysis/h1/set 1 100 -1 50 -/analysis/h1/set 2 100 -1 50 -/analysis/h1/set 4 100 -1 200 -/analysis/h1/set 5 100 -1 200 -/analysis/h1/set 6 100 -1 50 +/analysis/h1/set 1 50 0 50 +/analysis/h1/set 2 50 0 50 +/analysis/h1/set 4 100 0 200 +/analysis/h1/set 5 100 0 200 +/analysis/h1/set 6 50 0 50 /analysis/h1/set 7 100 0 20 MeV /run/printProgress 1000 diff --git a/examples/extended/optical/LXe/gui.mac b/examples/extended/optical/LXe/gui.mac index 96857526a1..0b9fb1827b 100644 --- a/examples/extended/optical/LXe/gui.mac +++ b/examples/extended/optical/LXe/gui.mac @@ -14,14 +14,12 @@ # Run menu : /gui/addMenu run Run /gui/addButton run "beamOn 1" "/run/beamOn 1" -#/gui/addButton run run1 "/control/execute run1.mac" -#/gui/addButton run run2 "/control/execute run2.mac" # # Gun menu : /gui/addMenu gun Gun -/gui/addButton gun "50 MeV" "/gun/energy 50 MeV" -/gui/addButton gun "1 GeV" "/gun/energy 1 GeV" -/gui/addButton gun "10 GeV" "/gun/energy 10 GeV" +/gui/addButton gun "511 keV" "/gun/energy 511 keV" +/gui/addButton gun "5 MeV" "/gun/energy 5 MeV" +/gui/addButton gun "50 MeV" "/gun/energy 50 MeV" /gui/addButton gun "e-" "/gun/particle e-" /gui/addButton gun "pi0" "/gun/particle pi0" /gui/addButton gun "pi+" "/gun/particle pi+" diff --git a/examples/extended/optical/LXe/include/LXeActionInitialization.hh b/examples/extended/optical/LXe/include/LXeActionInitialization.hh index 7bed3d74e9..8e3615c95a 100644 --- a/examples/extended/optical/LXe/include/LXeActionInitialization.hh +++ b/examples/extended/optical/LXe/include/LXeActionInitialization.hh @@ -34,21 +34,17 @@ class LXeDetectorConstruction; -/// Action initialization class. -/// - class LXeActionInitialization : public G4VUserActionInitialization { - public: - LXeActionInitialization(const LXeDetectorConstruction* det); - virtual ~LXeActionInitialization(); + public: + LXeActionInitialization(const LXeDetectorConstruction* det); + ~LXeActionInitialization(); - virtual void BuildForMaster() const; - virtual void Build() const; + void BuildForMaster() const override; + void Build() const override; - private: - - const LXeDetectorConstruction* fDetector; + private: + const LXeDetectorConstruction* fDetector; }; #endif diff --git a/examples/extended/optical/LXe/include/LXeDetectorConstruction.hh b/examples/extended/optical/LXe/include/LXeDetectorConstruction.hh index ccd1b06ff3..0f189e1b06 100644 --- a/examples/extended/optical/LXe/include/LXeDetectorConstruction.hh +++ b/examples/extended/optical/LXe/include/LXeDetectorConstruction.hh @@ -28,128 +28,125 @@ /// \brief Definition of the LXeDetectorConstruction class // // -#ifndef LXeDetectorConstruction_H -#define LXeDetectorConstruction_H 1 +#ifndef LXeDetectorConstruction_h +#define LXeDetectorConstruction_h 1 -class G4LogicalVolume; -class G4VPhysicalVolume; -class G4Box; -class G4Tubs; -class LXeMainVolume; -class G4Sphere; - -#include "G4Material.hh" #include "LXeDetectorMessenger.hh" -#include "G4VisAttributes.hh" -#include "G4RotationMatrix.hh" -#include "LXeScintSD.hh" -#include "LXePMTSD.hh" - -#include "G4VUserDetectorConstruction.hh" #include "G4Cache.hh" +#include "G4VUserDetectorConstruction.hh" + +class LXeMainVolume; +class LXePMTSD; +class LXeScintSD; + +class G4Box; +class G4Element; +class G4LogicalVolume; +class G4Material; +class G4MaterialPropertiesTable; +class G4Sphere; +class G4Tubs; +class G4VPhysicalVolume; class LXeDetectorConstruction : public G4VUserDetectorConstruction { - public: + public: + LXeDetectorConstruction(); + ~LXeDetectorConstruction(); - LXeDetectorConstruction(); - virtual ~LXeDetectorConstruction(); + G4VPhysicalVolume* Construct() override; + void ConstructSDandField() override; - virtual G4VPhysicalVolume* Construct(); - virtual void ConstructSDandField(); + // Functions to modify the geometry + void SetDimensions(G4ThreeVector); + void SetHousingThickness(G4double); + void SetNX(G4int); + void SetNY(G4int); + void SetNZ(G4int); + void SetPMTRadius(G4double); + void SetDefaults(); + void SetSaveThreshold(G4int); - //Functions to modify the geometry - void SetDimensions(G4ThreeVector ); - void SetHousingThickness(G4double ); - void SetNX(G4int ); - void SetNY(G4int ); - void SetNZ(G4int ); - void SetPMTRadius(G4double ); - void SetDefaults(); - void SetSaveThreshold(G4int ); + // Get values + G4int GetNX() const { return fNx; }; + G4int GetNY() const { return fNy; }; + G4int GetNZ() const { return fNz; }; + G4int GetSaveThreshold() const { return fSaveThreshold; }; + G4double GetScintX() const { return fScint_x; } + G4double GetScintY() const { return fScint_y; } + G4double GetScintZ() const { return fScint_z; } + G4double GetHousingThickness() const { return fD_mtl; } + G4double GetPMTRadius() const { return fOuterRadius_pmt; } + G4double GetSlabZ() const { return fSlab_z; } - //Get values - G4int GetNX() const {return fNx;}; - G4int GetNY() const {return fNy;}; - G4int GetNZ() const {return fNz;}; - G4int GetSaveThreshold() const {return fSaveThreshold;}; - G4double GetScintX() const {return fScint_x;} - G4double GetScintY() const {return fScint_y;} - G4double GetScintZ() const {return fScint_z;} - G4double GetHousingThickness() const {return fD_mtl;} - G4double GetPMTRadius() const {return fOuterRadius_pmt;} - G4double GetSlabZ() const {return fSlab_z;} - - void SetSphereOn(G4bool ); - static G4bool GetSphereOn(){return fSphereOn;} + void SetSphereOn(G4bool); + static G4bool GetSphereOn() { return fSphereOn; } - void SetHousingReflectivity(G4double ); - G4double GetHousingReflectivity() const {return fRefl;} + void SetHousingReflectivity(G4double); + G4double GetHousingReflectivity() const { return fRefl; } - void SetWLSSlabOn(G4bool b); - G4bool GetWLSSlabOn() const {return fWLSslab;} + void SetWLSSlabOn(G4bool b); + G4bool GetWLSSlabOn() const { return fWLSslab; } - void SetMainVolumeOn(G4bool b); - G4bool GetMainVolumeOn() const {return fMainVolumeOn;} + void SetMainVolumeOn(G4bool b); + G4bool GetMainVolumeOn() const { return fMainVolumeOn; } - void SetNFibers(G4int n); - G4int GetNFibers() const {return fNfibers;} + void SetNFibers(G4int n); + G4int GetNFibers() const { return fNfibers; } - void SetMainScintYield(G4double ); - void SetWLSScintYield(G4double ); + void SetMainScintYield(G4double); + void SetWLSScintYield(G4double); - private: + private: + void DefineMaterials(); - void DefineMaterials(); + LXeDetectorMessenger* fDetectorMessenger; - LXeDetectorMessenger* fDetectorMessenger; + G4Box* fExperimentalHall_box; + G4LogicalVolume* fExperimentalHall_log; + G4VPhysicalVolume* fExperimentalHall_phys; - G4Box* fExperimentalHall_box; - G4LogicalVolume* fExperimentalHall_log; - G4VPhysicalVolume* fExperimentalHall_phys; + // Materials & Elements + G4Material* fLXe; + G4Material* fAl; + G4Element* fN; + G4Element* fO; + G4Material* fAir; + G4Material* fVacuum; + G4Element* fC; + G4Element* fH; + G4Material* fGlass; + G4Material* fPstyrene; + G4Material* fPMMA; + G4Material* fPethylene1; + G4Material* fPethylene2; - //Materials & Elements - G4Material* fLXe; - G4Material* fAl; - G4Element* fN; - G4Element* fO; - G4Material* fAir; - G4Material* fVacuum; - G4Element* fC; - G4Element* fH; - G4Material* fGlass; - G4Material* fPstyrene; - G4Material* fPMMA; - G4Material* fPethylene1; - G4Material* fPethylene2; + // Geometry + G4double fScint_x; + G4double fScint_y; + G4double fScint_z; + G4double fD_mtl; + G4int fNx; + G4int fNy; + G4int fNz; + G4int fSaveThreshold; + G4double fOuterRadius_pmt; + G4int fNfibers; + static G4bool fSphereOn; + G4double fRefl; + G4bool fWLSslab; + G4bool fMainVolumeOn; + G4double fSlab_z; - //Geometry - G4double fScint_x; - G4double fScint_y; - G4double fScint_z; - G4double fD_mtl; - G4int fNx; - G4int fNy; - G4int fNz; - G4int fSaveThreshold; - G4double fOuterRadius_pmt; - G4int fNfibers; - static G4bool fSphereOn; - G4double fRefl; - G4bool fWLSslab; - G4bool fMainVolumeOn; - G4double fSlab_z; + LXeMainVolume* fMainVolume; - LXeMainVolume* fMainVolume; - - G4MaterialPropertiesTable* fLXe_mt; - G4MaterialPropertiesTable* fMPTPStyrene; - - //Sensitive Detectors - G4Cache fScint_SD; - G4Cache fPmt_SD; + G4MaterialPropertiesTable* fLXe_mt; + G4MaterialPropertiesTable* fMPTPStyrene; + // Sensitive Detectors + G4Cache fScint_SD; + G4Cache fPmt_SD; }; #endif diff --git a/examples/extended/optical/LXe/include/LXeDetectorMessenger.hh b/examples/extended/optical/LXe/include/LXeDetectorMessenger.hh index 5b6ddc9657..d2861c6a56 100644 --- a/examples/extended/optical/LXe/include/LXeDetectorMessenger.hh +++ b/examples/extended/optical/LXe/include/LXeDetectorMessenger.hh @@ -31,47 +31,46 @@ #ifndef LXeDetectorMessenger_h #define LXeDetectorMessenger_h 1 -#include "G4UImessenger.hh" #include "globals.hh" +#include "G4UImessenger.hh" class LXeDetectorConstruction; -class G4UIdirectory; -class G4UIcmdWithADoubleAndUnit; -class G4UIcmdWith3VectorAndUnit; -class G4UIcmdWithAnInteger; -class G4UIcommand; + class G4UIcmdWithABool; class G4UIcmdWithADouble; +class G4UIcmdWithADoubleAndUnit; +class G4UIcmdWithAnInteger; +class G4UIcmdWith3VectorAndUnit; +class G4UIcommand; +class G4UIdirectory; -class LXeDetectorMessenger: public G4UImessenger +class LXeDetectorMessenger : public G4UImessenger { - public: + public: + LXeDetectorMessenger(LXeDetectorConstruction*); + ~LXeDetectorMessenger(); - LXeDetectorMessenger(LXeDetectorConstruction*); - virtual ~LXeDetectorMessenger(); - - virtual void SetNewValue(G4UIcommand*, G4String); - - private: + void SetNewValue(G4UIcommand*, G4String) override; - LXeDetectorConstruction* fLXeDetector; - G4UIdirectory* fDetectorDir; - G4UIdirectory* fVolumesDir; - G4UIcmdWith3VectorAndUnit* fDimensionsCmd; - G4UIcmdWithADoubleAndUnit* fHousingThicknessCmd; - G4UIcmdWithADoubleAndUnit* fPmtRadiusCmd; - G4UIcmdWithAnInteger* fNxCmd; - G4UIcmdWithAnInteger* fNyCmd; - G4UIcmdWithAnInteger* fNzCmd; - G4UIcmdWithABool* fSphereCmd; - G4UIcmdWithADouble* fReflectivityCmd; - G4UIcmdWithABool* fWlsCmd; - G4UIcmdWithABool* fLxeCmd; - G4UIcmdWithAnInteger* fNFibersCmd; - G4UIcommand* fDefaultsCmd; - G4UIcmdWithADouble* fMainScintYield; - G4UIcmdWithADouble* fWLSScintYield; - G4UIcmdWithAnInteger* fSaveThresholdCmd; + private: + LXeDetectorConstruction* fLXeDetector; + G4UIdirectory* fDetectorDir; + G4UIdirectory* fVolumesDir; + G4UIcmdWith3VectorAndUnit* fDimensionsCmd; + G4UIcmdWithADoubleAndUnit* fHousingThicknessCmd; + G4UIcmdWithADoubleAndUnit* fPmtRadiusCmd; + G4UIcmdWithAnInteger* fNxCmd; + G4UIcmdWithAnInteger* fNyCmd; + G4UIcmdWithAnInteger* fNzCmd; + G4UIcmdWithABool* fSphereCmd; + G4UIcmdWithADouble* fReflectivityCmd; + G4UIcmdWithABool* fWlsCmd; + G4UIcmdWithABool* fLxeCmd; + G4UIcmdWithAnInteger* fNFibersCmd; + G4UIcommand* fDefaultsCmd; + G4UIcmdWithADouble* fMainScintYield; + G4UIcmdWithADouble* fWLSScintYield; + G4UIcmdWithAnInteger* fSaveThresholdCmd; }; #endif diff --git a/examples/extended/optical/LXe/include/LXeEventAction.hh b/examples/extended/optical/LXe/include/LXeEventAction.hh index 1a5c2a5116..8771a62239 100644 --- a/examples/extended/optical/LXe/include/LXeEventAction.hh +++ b/examples/extended/optical/LXe/include/LXeEventAction.hh @@ -32,100 +32,103 @@ #define LXeEventAction_h 1 #include "LXeEventMessenger.hh" -#include "G4UserEventAction.hh" + #include "globals.hh" #include "G4ThreeVector.hh" +#include "G4UserEventAction.hh" class G4Event; class LXeDetectorConstruction; class LXeEventAction : public G4UserEventAction { - public: + public: + LXeEventAction(const LXeDetectorConstruction*); + ~LXeEventAction(); - LXeEventAction(const LXeDetectorConstruction*); - virtual ~LXeEventAction(); + public: + void BeginOfEventAction(const G4Event*) override; + void EndOfEventAction(const G4Event*) override; - public: + void SetEventVerbose(G4int v) { fVerbose = v; } - virtual void BeginOfEventAction(const G4Event*); - virtual void EndOfEventAction(const G4Event*); + void SetPMTThreshold(G4int t) { fPMTThreshold = t; } - void SetEventVerbose(G4int v){fVerbose=v;} + void SetForceDrawPhotons(G4bool b) { fForcedrawphotons = b; } + void SetForceDrawNoPhotons(G4bool b) { fForcenophotons = b; } - void SetPMTThreshold(G4int t){fPMTThreshold=t;} + void IncPhotonCount_Scint() { ++fPhotonCount_Scint; } + void IncPhotonCount_Ceren() { ++fPhotonCount_Ceren; } + void IncEDep(G4double dep) { fTotE += dep; } + void IncAbsorption() { ++fAbsorptionCount; } + void IncBoundaryAbsorption() { ++fBoundaryAbsorptionCount; } + void IncHitCount(G4int i = 1) { fHitCount += i; } - void SetForceDrawPhotons(G4bool b){fForcedrawphotons=b;} - void SetForceDrawNoPhotons(G4bool b){fForcenophotons=b;} + void SetEWeightPos(const G4ThreeVector& p) { fEWeightPos = p; } + void SetReconPos(const G4ThreeVector& p) { fReconPos = p; } + void SetConvPos(const G4ThreeVector& p) + { + fConvPos = p; + fConvPosSet = true; + } + void SetPosMax(const G4ThreeVector& p, G4double edep) + { + fPosMax = p; + fEdepMax = edep; + } - void IncPhotonCount_Scint(){fPhotonCount_Scint++;} - void IncPhotonCount_Ceren(){fPhotonCount_Ceren++;} - void IncEDep(G4double dep){fTotE+=dep;} - void IncAbsorption(){fAbsorptionCount++;} - void IncBoundaryAbsorption(){fBoundaryAbsorptionCount++;} - void IncHitCount(G4int i=1){fHitCount+=i;} + G4int GetPhotonCount_Scint() const { return fPhotonCount_Scint; } + G4int GetPhotonCount_Ceren() const { return fPhotonCount_Ceren; } + G4int GetHitCount() const { return fHitCount; } + G4double GetEDep() const { return fTotE; } + G4int GetAbsorptionCount() const { return fAbsorptionCount; } + G4int GetBoundaryAbsorptionCount() const { return fBoundaryAbsorptionCount; } - void SetEWeightPos(const G4ThreeVector& p){fEWeightPos=p;} - void SetReconPos(const G4ThreeVector& p){fReconPos=p;} - void SetConvPos(const G4ThreeVector& p){fConvPos=p;fConvPosSet=true;} - void SetPosMax(const G4ThreeVector& p,G4double edep) { - fPosMax = p; - fEdepMax = edep; - } + G4ThreeVector GetEWeightPos() { return fEWeightPos; } + G4ThreeVector GetReconPos() { return fReconPos; } + G4ThreeVector GetConvPos() { return fConvPos; } + G4ThreeVector GetPosMax() { return fPosMax; } + G4double GetEDepMax() { return fEdepMax; } + G4double IsConvPosSet() { return fConvPosSet; } - G4int GetPhotonCount_Scint()const {return fPhotonCount_Scint;} - G4int GetPhotonCount_Ceren()const {return fPhotonCount_Ceren;} - G4int GetHitCount()const {return fHitCount;} - G4double GetEDep()const {return fTotE;} - G4int GetAbsorptionCount()const {return fAbsorptionCount;} - G4int GetBoundaryAbsorptionCount() const {return fBoundaryAbsorptionCount;} + // Gets the total photon count produced + G4int GetPhotonCount() { return fPhotonCount_Scint + fPhotonCount_Ceren; } - G4ThreeVector GetEWeightPos(){return fEWeightPos;} - G4ThreeVector GetReconPos(){return fReconPos;} - G4ThreeVector GetConvPos(){return fConvPos;} - G4ThreeVector GetPosMax(){return fPosMax;} - G4double GetEDepMax(){return fEdepMax;} - G4double IsConvPosSet(){return fConvPosSet;} + void IncPMTSAboveThreshold() { ++fPMTsAboveThreshold; } + G4int GetPMTSAboveThreshold() { return fPMTsAboveThreshold; } - //Gets the total photon count produced - G4int GetPhotonCount(){return fPhotonCount_Scint+fPhotonCount_Ceren;} + private: + LXeEventMessenger* fEventMessenger; + const LXeDetectorConstruction* fDetector; - void IncPMTSAboveThreshold(){fPMTsAboveThreshold++;} - G4int GetPMTSAboveThreshold(){return fPMTsAboveThreshold;} + G4int fScintCollID; + G4int fPMTCollID; - private: + G4int fVerbose; - LXeEventMessenger* fEventMessenger; - const LXeDetectorConstruction* fDetector; + G4int fPMTThreshold; - G4int fScintCollID; - G4int fPMTCollID; + G4bool fForcedrawphotons; + G4bool fForcenophotons; - G4int fVerbose; + G4int fHitCount; + G4int fPhotonCount_Scint; + G4int fPhotonCount_Ceren; + G4int fAbsorptionCount; + G4int fBoundaryAbsorptionCount; - G4int fPMTThreshold; + G4double fTotE; - G4bool fForcedrawphotons; - G4bool fForcenophotons; + // These only have meaning if totE > 0 + // If totE = 0 then these won't be set by EndOfEventAction + G4ThreeVector fEWeightPos; + G4ThreeVector fReconPos; // Also relies on hitCount>0 + G4ThreeVector fConvPos; // true (initial) converstion position + G4bool fConvPosSet; + G4ThreeVector fPosMax; + G4double fEdepMax; - G4int fHitCount; - G4int fPhotonCount_Scint; - G4int fPhotonCount_Ceren; - G4int fAbsorptionCount; - G4int fBoundaryAbsorptionCount; - - G4double fTotE; - - //These only have meaning if totE > 0 - //If totE = 0 then these wont be set by EndOfEventAction - G4ThreeVector fEWeightPos; - G4ThreeVector fReconPos; //Also relies on hitCount>0 - G4ThreeVector fConvPos;//true (initial) converstion position - G4bool fConvPosSet; - G4ThreeVector fPosMax; - G4double fEdepMax; - - G4int fPMTsAboveThreshold; + G4int fPMTsAboveThreshold; }; #endif diff --git a/examples/extended/optical/LXe/include/LXeEventMessenger.hh b/examples/extended/optical/LXe/include/LXeEventMessenger.hh index e09502c42b..5250a7f8e6 100644 --- a/examples/extended/optical/LXe/include/LXeEventMessenger.hh +++ b/examples/extended/optical/LXe/include/LXeEventMessenger.hh @@ -31,29 +31,27 @@ #ifndef LXeEventMessenger_h #define LXeEventMessenger_h 1 -#include "G4UImessenger.hh" #include "globals.hh" +#include "G4UImessenger.hh" class LXeEventAction; -class G4UIcmdWithAnInteger; class G4UIcmdWithABool; +class G4UIcmdWithAnInteger; -class LXeEventMessenger: public G4UImessenger +class LXeEventMessenger : public G4UImessenger { - public: + public: + LXeEventMessenger(LXeEventAction*); + ~LXeEventMessenger(); - LXeEventMessenger(LXeEventAction*); - virtual ~LXeEventMessenger(); - - virtual void SetNewValue(G4UIcommand*, G4String); - - private: + void SetNewValue(G4UIcommand*, G4String) override; - LXeEventAction* fLXeEvent; - G4UIcmdWithAnInteger* fVerboseCmd; - G4UIcmdWithAnInteger* fPmtThresholdCmd; - G4UIcmdWithABool* fForceDrawPhotonsCmd; - G4UIcmdWithABool* fForceDrawNoPhotonsCmd; + private: + LXeEventAction* fLXeEvent; + G4UIcmdWithAnInteger* fVerboseCmd; + G4UIcmdWithAnInteger* fPmtThresholdCmd; + G4UIcmdWithABool* fForceDrawPhotonsCmd; + G4UIcmdWithABool* fForceDrawNoPhotonsCmd; }; #endif diff --git a/examples/extended/optical/LXe/include/LXeHistoManager.hh b/examples/extended/optical/LXe/include/LXeHistoManager.hh index 54839caeda..cb98148709 100644 --- a/examples/extended/optical/LXe/include/LXeHistoManager.hh +++ b/examples/extended/optical/LXe/include/LXeHistoManager.hh @@ -27,7 +27,7 @@ /// \brief Definition of the LXeHistoManager class // // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -38,21 +38,21 @@ #include "g4root.hh" //#include "g4xml.hh" +//#include "g4csv.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... class LXeHistoManager { - public: - LXeHistoManager(); - ~LXeHistoManager(); + public: + LXeHistoManager(); + ~LXeHistoManager(); - private: - void Book(); - G4String fFileName; + private: + void Book(); + G4String fFileName; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #endif - diff --git a/examples/extended/optical/LXe/include/LXeMainVolume.hh b/examples/extended/optical/LXe/include/LXeMainVolume.hh index 93130cfd46..df9b4741c5 100644 --- a/examples/extended/optical/LXe/include/LXeMainVolume.hh +++ b/examples/extended/optical/LXe/include/LXeMainVolume.hh @@ -27,81 +27,72 @@ /// \file optical/LXe/include/LXeMainVolume.hh /// \brief Definition of the LXeMainVolume class // -#ifndef LXeMainVolume_H -#define LXeMainVolume_H 1 - -#include "G4PVPlacement.hh" -#include "G4Box.hh" -#include "G4Tubs.hh" -#include "G4Sphere.hh" -#include "G4Material.hh" -#include "G4LogicalVolume.hh" -#include "G4OpticalSurface.hh" +#ifndef LXeMainVolume_h +#define LXeMainVolume_h 1 #include "LXeDetectorConstruction.hh" +#include "G4PVPlacement.hh" + +class G4Box; +class G4LogicalVolume; +class G4Sphere; +class G4Tubs; + class LXeMainVolume : public G4PVPlacement { - public: + public: + LXeMainVolume(G4RotationMatrix* pRot, const G4ThreeVector& tlate, + G4LogicalVolume* pMotherLogical, G4bool pMany, G4int pCopyNo, + LXeDetectorConstruction* c); - LXeMainVolume(G4RotationMatrix *pRot, - const G4ThreeVector &tlate, - G4LogicalVolume *pMotherLogical, - G4bool pMany, - G4int pCopyNo, - LXeDetectorConstruction* c); + G4LogicalVolume* GetLogPhotoCath() { return fPhotocath_log; } + G4LogicalVolume* GetLogScint() { return fScint_log; } - G4LogicalVolume* GetLogPhotoCath() {return fPhotocath_log;} - G4LogicalVolume* GetLogScint() {return fScint_log;} + std::vector GetPmtPositions() { return fPmtPositions; } - std::vector GetPmtPositions() {return fPmtPositions;} + private: + void VisAttributes(); + void SurfaceProperties(); - private: + void PlacePMTs(G4LogicalVolume* pmt_Log, G4RotationMatrix* rot, G4double& a, + G4double& b, G4double da, G4double db, G4double amin, + G4double bmin, G4int na, G4int nb, G4double& x, G4double& y, + G4double& z, G4int& k); - void VisAttributes(); - void SurfaceProperties(); + void CopyValues(); - void PlacePMTs(G4LogicalVolume* pmt_Log, - G4RotationMatrix* rot, - G4double &a, G4double &b, G4double da, - G4double db, G4double amin, G4double bmin, - G4int na, G4int nb, - G4double &x, G4double &y, G4double &z, G4int &k); + LXeDetectorConstruction* fConstructor; - void CopyValues(); + G4double fScint_x; + G4double fScint_y; + G4double fScint_z; + G4double fD_mtl; + G4int fNx; + G4int fNy; + G4int fNz; + G4double fOuterRadius_pmt; + G4bool fSphereOn; + G4double fRefl; - LXeDetectorConstruction* fConstructor; + // Basic Volumes + // + G4Box* fScint_box; + G4Box* fHousing_box; + G4Tubs* fPmt; + G4Tubs* fPhotocath; + G4Sphere* fSphere; - G4double fScint_x; - G4double fScint_y; - G4double fScint_z; - G4double fD_mtl; - G4int fNx; - G4int fNy; - G4int fNz; - G4double fOuterRadius_pmt; - G4bool fSphereOn; - G4double fRefl; - - //Basic Volumes - // - G4Box* fScint_box; - G4Box* fHousing_box; - G4Tubs* fPmt; - G4Tubs* fPhotocath; - G4Sphere* fSphere; - - // Logical volumes - // - G4LogicalVolume* fScint_log; - G4LogicalVolume* fHousing_log; - G4LogicalVolume* fPmt_log; - G4LogicalVolume* fPhotocath_log; - G4LogicalVolume* fSphere_log; - - // Sensitive Detectors positions - std::vector fPmtPositions; + // Logical volumes + // + G4LogicalVolume* fScint_log; + G4LogicalVolume* fHousing_log; + G4LogicalVolume* fPmt_log; + G4LogicalVolume* fPhotocath_log; + G4LogicalVolume* fSphere_log; + // Sensitive Detectors positions + std::vector fPmtPositions; }; #endif diff --git a/examples/extended/optical/LXe/include/LXePMTHit.hh b/examples/extended/optical/LXe/include/LXePMTHit.hh index 8d11612a2c..6b988d2494 100644 --- a/examples/extended/optical/LXe/include/LXePMTHit.hh +++ b/examples/extended/optical/LXe/include/LXePMTHit.hh @@ -31,75 +31,71 @@ #ifndef LXePMTHit_h #define LXePMTHit_h 1 -#include "G4VHit.hh" -#include "G4THitsCollection.hh" #include "G4Allocator.hh" -#include "G4ThreeVector.hh" #include "G4LogicalVolume.hh" -#include "G4Transform3D.hh" -#include "G4RotationMatrix.hh" +#include "G4THitsCollection.hh" +#include "G4VHit.hh" #include "G4VPhysicalVolume.hh" -#include "tls.hh" - -class G4VTouchable; - class LXePMTHit : public G4VHit { - public: - - LXePMTHit(); - virtual ~LXePMTHit(); - LXePMTHit(const LXePMTHit &right); + public: + LXePMTHit(); + LXePMTHit(const LXePMTHit& right); + ~LXePMTHit(); - const LXePMTHit& operator=(const LXePMTHit &right); - G4bool operator==(const LXePMTHit &right) const; + const LXePMTHit& operator=(const LXePMTHit& right); + G4bool operator==(const LXePMTHit& right) const; - inline void *operator new(size_t); - inline void operator delete(void *aHit); - - virtual void Draw(); - virtual void Print(); + inline void* operator new(size_t); + inline void operator delete(void* aHit); - inline void SetDrawit(G4bool b){fDrawit=b;} - inline G4bool GetDrawit(){return fDrawit;} + virtual void Draw(); + virtual void Print(); - inline void IncPhotonCount(){fPhotons++;} - inline G4int GetPhotonCount(){return fPhotons;} + inline void SetDrawit(G4bool b) { fDrawit = b; } + inline G4bool GetDrawit() { return fDrawit; } - inline void SetPMTNumber(G4int n) { fPmtNumber = n; } - inline G4int GetPMTNumber() { return fPmtNumber; } + inline void IncPhotonCount() { ++fPhotons; } + inline G4int GetPhotonCount() { return fPhotons; } - inline void SetPMTPhysVol(G4VPhysicalVolume* physVol){this->fPhysVol=physVol;} - inline G4VPhysicalVolume* GetPMTPhysVol(){return fPhysVol;} + inline void SetPMTNumber(G4int n) { fPmtNumber = n; } + inline G4int GetPMTNumber() { return fPmtNumber; } - inline void SetPMTPos(G4double x,G4double y,G4double z){ - fPos=G4ThreeVector(x,y,z); - } - - inline G4ThreeVector GetPMTPos(){return fPos;} + inline void SetPMTPhysVol(G4VPhysicalVolume* physVol) + { + this->fPhysVol = physVol; + } + inline G4VPhysicalVolume* GetPMTPhysVol() { return fPhysVol; } - private: + inline void SetPMTPos(G4double x, G4double y, G4double z) + { + fPos = G4ThreeVector(x, y, z); + } - G4int fPmtNumber; - G4int fPhotons; - G4ThreeVector fPos; - G4VPhysicalVolume* fPhysVol; - G4bool fDrawit; + inline G4ThreeVector GetPMTPos() { return fPos; } + private: + G4int fPmtNumber; + G4int fPhotons; + G4ThreeVector fPos; + G4VPhysicalVolume* fPhysVol; + G4bool fDrawit; }; typedef G4THitsCollection LXePMTHitsCollection; extern G4ThreadLocal G4Allocator* LXePMTHitAllocator; -inline void* LXePMTHit::operator new(size_t){ +inline void* LXePMTHit::operator new(size_t) +{ if(!LXePMTHitAllocator) - LXePMTHitAllocator = new G4Allocator; - return (void *) LXePMTHitAllocator->MallocSingle(); + LXePMTHitAllocator = new G4Allocator; + return (void*) LXePMTHitAllocator->MallocSingle(); } -inline void LXePMTHit::operator delete(void *aHit){ +inline void LXePMTHit::operator delete(void* aHit) +{ LXePMTHitAllocator->FreeSingle((LXePMTHit*) aHit); } diff --git a/examples/extended/optical/LXe/include/LXePMTSD.hh b/examples/extended/optical/LXe/include/LXePMTSD.hh index 57b754eaf8..283f846714 100644 --- a/examples/extended/optical/LXe/include/LXePMTSD.hh +++ b/examples/extended/optical/LXe/include/LXePMTSD.hh @@ -31,54 +31,53 @@ #ifndef LXePMTSD_h #define LXePMTSD_h 1 -#include "G4DataVector.hh" -#include "G4VSensitiveDetector.hh" #include "LXePMTHit.hh" +#include "G4VSensitiveDetector.hh" + #include -class G4Step; +class G4DataVector; class G4HCofThisEvent; +class G4Step; class LXePMTSD : public G4VSensitiveDetector { + public: + LXePMTSD(G4String name); + ~LXePMTSD(); - public: + void Initialize(G4HCofThisEvent*) override; + G4bool ProcessHits(G4Step* aStep, G4TouchableHistory*) override; - LXePMTSD(G4String name); - virtual ~LXePMTSD(); - - virtual void Initialize(G4HCofThisEvent* ); - virtual G4bool ProcessHits(G4Step* aStep, G4TouchableHistory* ); - - //A version of processHits that keeps aStep constant - G4bool ProcessHits_constStep(const G4Step* , - G4TouchableHistory* ); - virtual void EndOfEvent(G4HCofThisEvent* ); - virtual void clear(); - void DrawAll(); - void PrintAll(); - - //Initialize the arrays to store pmt possitions - inline void InitPMTs(){ - if(fPMTPositionsX)delete fPMTPositionsX; - if(fPMTPositionsY)delete fPMTPositionsY; - if(fPMTPositionsZ)delete fPMTPositionsZ; - fPMTPositionsX = new G4DataVector(); - fPMTPositionsY = new G4DataVector(); - fPMTPositionsZ = new G4DataVector(); - } + // A version of processHits active on boundary + G4bool ProcessHits_boundary(const G4Step*, G4TouchableHistory*); - //Store a pmt position - void SetPmtPositions(const std::vector& positions); + // Initialize the arrays to store pmt possitions + inline void InitPMTs() + { + if(fPMTPositionsX) + delete fPMTPositionsX; + if(fPMTPositionsY) + delete fPMTPositionsY; + if(fPMTPositionsZ) + delete fPMTPositionsZ; + fPMTPositionsX = new G4DataVector(); + fPMTPositionsY = new G4DataVector(); + fPMTPositionsZ = new G4DataVector(); + } - private: + // Store a pmt position + void SetPmtPositions(const std::vector& positions); - LXePMTHitsCollection* fPMTHitCollection; + private: + LXePMTHitsCollection* fPMTHitCollection; - G4DataVector* fPMTPositionsX; - G4DataVector* fPMTPositionsY; - G4DataVector* fPMTPositionsZ; + G4DataVector* fPMTPositionsX; + G4DataVector* fPMTPositionsY; + G4DataVector* fPMTPositionsZ; + + G4int fHitCID; }; #endif diff --git a/examples/extended/optical/LXe/include/LXePrimaryGeneratorAction.hh b/examples/extended/optical/LXe/include/LXePrimaryGeneratorAction.hh index 94b5fb666a..de5859c933 100644 --- a/examples/extended/optical/LXe/include/LXePrimaryGeneratorAction.hh +++ b/examples/extended/optical/LXe/include/LXePrimaryGeneratorAction.hh @@ -38,18 +38,14 @@ class G4Event; class LXePrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction { - public: + public: + LXePrimaryGeneratorAction(); + ~LXePrimaryGeneratorAction(); - LXePrimaryGeneratorAction(); - virtual ~LXePrimaryGeneratorAction(); - - public: + void GeneratePrimaries(G4Event* anEvent) override; - virtual void GeneratePrimaries(G4Event* anEvent); - - private: - - G4ParticleGun* fParticleGun; + private: + G4ParticleGun* fParticleGun; }; #endif diff --git a/examples/extended/optical/LXe/include/LXeRun.hh b/examples/extended/optical/LXe/include/LXeRun.hh index 80c9edc64f..6c6833c4fb 100644 --- a/examples/extended/optical/LXe/include/LXeRun.hh +++ b/examples/extended/optical/LXe/include/LXeRun.hh @@ -33,60 +33,73 @@ #ifndef LXeRun_h #define LXeRun_h 1 -#include "G4Run.hh" #include "globals.hh" +#include "G4Run.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... class LXeRun : public G4Run { - public: - LXeRun(); - ~LXeRun(); + public: + LXeRun(); + ~LXeRun(); - void IncPhotonCount_Scint(G4int count) { - fPhotonCount_Scint += count; - fPhotonCount_Scint2 += count*count; - } - void IncPhotonCount_Ceren(G4int count) { - fPhotonCount_Ceren += count; - fPhotonCount_Ceren2 += count*count; - } - void IncEDep(G4double dep) { - fTotE += dep; - fTotE2 += dep*dep; - } - void IncAbsorption(G4int count) { - fAbsorptionCount += count; - fAbsorptionCount2 += count*count; - } - void IncBoundaryAbsorption(G4int count) { - fBoundaryAbsorptionCount += count; - fBoundaryAbsorptionCount2 += count*count; - } - void IncHitCount(G4int count) { - fHitCount += count; - fHitCount2 += count*count; - } - void IncHitsAboveThreshold(G4int count) { - fPMTsAboveThreshold += count; - fPMTsAboveThreshold2 += count*count; - } + void IncPhotonCount_Scint(G4int count) + { + fPhotonCount_Scint += count; + fPhotonCount_Scint2 += count * count; + } + void IncPhotonCount_Ceren(G4int count) + { + fPhotonCount_Ceren += count; + fPhotonCount_Ceren2 += count * count; + } + void IncEDep(G4double dep) + { + fTotE += dep; + fTotE2 += dep * dep; + } + void IncAbsorption(G4int count) + { + fAbsorptionCount += count; + fAbsorptionCount2 += count * count; + } + void IncBoundaryAbsorption(G4int count) + { + fBoundaryAbsorptionCount += count; + fBoundaryAbsorptionCount2 += count * count; + } + void IncHitCount(G4int count) + { + fHitCount += count; + fHitCount2 += count * count; + } + void IncHitsAboveThreshold(G4int count) + { + fPMTsAboveThreshold += count; + fPMTsAboveThreshold2 += count * count; + } - virtual void Merge(const G4Run* run); + void Merge(const G4Run* run) override; - void EndOfRun(); + void EndOfRun(); + private: + G4int fHitCount; + G4int fHitCount2; + G4int fPhotonCount_Scint; + G4int fPhotonCount_Scint2; + G4int fPhotonCount_Ceren; + G4int fPhotonCount_Ceren2; + G4int fAbsorptionCount; + G4int fAbsorptionCount2; + G4int fBoundaryAbsorptionCount; + G4int fBoundaryAbsorptionCount2; + G4int fPMTsAboveThreshold; + G4int fPMTsAboveThreshold2; - private: - G4int fHitCount, fHitCount2; - G4int fPhotonCount_Scint, fPhotonCount_Scint2; - G4int fPhotonCount_Ceren, fPhotonCount_Ceren2; - G4int fAbsorptionCount, fAbsorptionCount2; - G4int fBoundaryAbsorptionCount, fBoundaryAbsorptionCount2; - G4int fPMTsAboveThreshold, fPMTsAboveThreshold2; - - G4double fTotE, fTotE2; + G4double fTotE; + G4double fTotE2; }; -#endif // LXeRun_h +#endif // LXeRun_h diff --git a/examples/extended/optical/LXe/include/LXeRunAction.hh b/examples/extended/optical/LXe/include/LXeRunAction.hh index 63119a2491..a4f14e85d0 100644 --- a/examples/extended/optical/LXe/include/LXeRunAction.hh +++ b/examples/extended/optical/LXe/include/LXeRunAction.hh @@ -31,27 +31,26 @@ #include "G4UserRunAction.hh" #ifndef LXeRunAction_h -#define LXeRunAction_h 1 +# define LXeRunAction_h 1 class LXeRun; class LXeHistoManager; + class G4Run; class LXeRunAction : public G4UserRunAction { - public: + public: + LXeRunAction(); + ~LXeRunAction(); - LXeRunAction(); - virtual ~LXeRunAction(); + G4Run* GenerateRun() override; + void BeginOfRunAction(const G4Run*) override; + void EndOfRunAction(const G4Run*) override; - virtual G4Run* GenerateRun(); - virtual void BeginOfRunAction(const G4Run*); - virtual void EndOfRunAction(const G4Run*); - - private: - - LXeRun* fRun; - LXeHistoManager* fHistoManager; + private: + LXeRun* fRun; + LXeHistoManager* fHistoManager; }; #endif diff --git a/examples/extended/optical/LXe/include/LXeScintHit.hh b/examples/extended/optical/LXe/include/LXeScintHit.hh index 7932a33543..beb0fb3107 100644 --- a/examples/extended/optical/LXe/include/LXeScintHit.hh +++ b/examples/extended/optical/LXe/include/LXeScintHit.hh @@ -35,44 +35,35 @@ #include "G4THitsCollection.hh" #include "G4Allocator.hh" #include "G4ThreeVector.hh" -#include "G4LogicalVolume.hh" -#include "G4Transform3D.hh" -#include "G4RotationMatrix.hh" #include "G4VPhysicalVolume.hh" -#include "tls.hh" - class LXeScintHit : public G4VHit { - public: - - LXeScintHit(); - LXeScintHit(G4VPhysicalVolume* pVol); - virtual ~LXeScintHit(); - LXeScintHit(const LXeScintHit &right); - const LXeScintHit& operator=(const LXeScintHit &right); - G4bool operator==(const LXeScintHit &right) const; + public: + LXeScintHit(); + LXeScintHit(G4VPhysicalVolume* pVol); + ~LXeScintHit(); - inline void *operator new(size_t); - inline void operator delete(void *aHit); - - virtual void Draw(); - virtual void Print(); + LXeScintHit(const LXeScintHit& right); + const LXeScintHit& operator=(const LXeScintHit& right); + G4bool operator==(const LXeScintHit& right) const; - inline void SetEdep(G4double de) { fEdep = de; } - inline void AddEdep(G4double de) { fEdep += de; } - inline G4double GetEdep() { return fEdep; } + inline void* operator new(size_t); + inline void operator delete(void* aHit); - inline void SetPos(G4ThreeVector xyz) { fPos = xyz; } - inline G4ThreeVector GetPos() { return fPos; } + inline void SetEdep(G4double de) { fEdep = de; } + inline void AddEdep(G4double de) { fEdep += de; } + inline G4double GetEdep() { return fEdep; } - inline const G4VPhysicalVolume * GetPhysV() { return fPhysVol; } + inline void SetPos(G4ThreeVector xyz) { fPos = xyz; } + inline G4ThreeVector GetPos() { return fPos; } - private: - G4double fEdep; - G4ThreeVector fPos; - const G4VPhysicalVolume* fPhysVol; + inline const G4VPhysicalVolume* GetPhysV() { return fPhysVol; } + private: + G4double fEdep; + G4ThreeVector fPos; + const G4VPhysicalVolume* fPhysVol; }; typedef G4THitsCollection LXeScintHitsCollection; @@ -82,11 +73,11 @@ extern G4ThreadLocal G4Allocator* LXeScintHitAllocator; inline void* LXeScintHit::operator new(size_t) { if(!LXeScintHitAllocator) - LXeScintHitAllocator = new G4Allocator; - return (void *) LXeScintHitAllocator->MallocSingle(); + LXeScintHitAllocator = new G4Allocator; + return (void*) LXeScintHitAllocator->MallocSingle(); } -inline void LXeScintHit::operator delete(void *aHit) +inline void LXeScintHit::operator delete(void* aHit) { LXeScintHitAllocator->FreeSingle((LXeScintHit*) aHit); } diff --git a/examples/extended/optical/LXe/include/LXeScintSD.hh b/examples/extended/optical/LXe/include/LXeScintSD.hh index ca526ebbf8..096bc151c0 100644 --- a/examples/extended/optical/LXe/include/LXeScintSD.hh +++ b/examples/extended/optical/LXe/include/LXeScintSD.hh @@ -40,22 +40,16 @@ class G4HCofThisEvent; class LXeScintSD : public G4VSensitiveDetector { - public: + public: + LXeScintSD(G4String name); + ~LXeScintSD(); - LXeScintSD(G4String name); - virtual ~LXeScintSD(); + void Initialize(G4HCofThisEvent*) override; + G4bool ProcessHits(G4Step* aStep, G4TouchableHistory*) override; - virtual void Initialize(G4HCofThisEvent* ); - virtual G4bool ProcessHits(G4Step* aStep, G4TouchableHistory* ); - virtual void EndOfEvent(G4HCofThisEvent* ); - virtual void clear(); - virtual void DrawAll(); - virtual void PrintAll(); - - private: - - LXeScintHitsCollection* fScintCollection; - + private: + LXeScintHitsCollection* fScintCollection; + G4int fHitsCID; }; #endif diff --git a/examples/extended/optical/LXe/include/LXeStackingAction.hh b/examples/extended/optical/LXe/include/LXeStackingAction.hh index 166b4f6afe..245a93e1be 100644 --- a/examples/extended/optical/LXe/include/LXeStackingAction.hh +++ b/examples/extended/optical/LXe/include/LXeStackingAction.hh @@ -28,27 +28,23 @@ /// \brief Definition of the LXeStackingAction class // // -#ifndef LXeStackingAction_H -#define LXeStackingAction_H 1 +#ifndef LXeStackingAction_h +#define LXeStackingAction_h 1 -#include "globals.hh" #include "G4UserStackingAction.hh" class LXeEventAction; class LXeStackingAction : public G4UserStackingAction { - public: + public: + LXeStackingAction(LXeEventAction*); + ~LXeStackingAction(); - LXeStackingAction(LXeEventAction*); - virtual ~LXeStackingAction(); - - virtual G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track* aTrack); - virtual void NewStage(); - virtual void PrepareNewEvent(); - - private: - LXeEventAction* fEventAction; + G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track* aTrack) override; + + private: + LXeEventAction* fEventAction; }; #endif diff --git a/examples/extended/optical/LXe/include/LXeSteppingAction.hh b/examples/extended/optical/LXe/include/LXeSteppingAction.hh index 9e5ed3b10b..c0a44bf248 100644 --- a/examples/extended/optical/LXe/include/LXeSteppingAction.hh +++ b/examples/extended/optical/LXe/include/LXeSteppingAction.hh @@ -27,13 +27,12 @@ /// \file optical/LXe/include/LXeSteppingAction.hh /// \brief Definition of the LXeSteppingAction class // -#ifndef LXeSteppingAction_H -#define LXeSteppingACtion_H 1 +#ifndef LXeSteppingAction_h +#define LXeSteppingACtion_h 1 #include "globals.hh" -#include "G4UserSteppingAction.hh" - #include "G4OpBoundaryProcess.hh" +#include "G4UserSteppingAction.hh" class LXeEventAction; class LXeTrackingAction; @@ -41,22 +40,21 @@ class LXeSteppingMessenger; class LXeSteppingAction : public G4UserSteppingAction { - public: + public: + LXeSteppingAction(LXeEventAction*); + ~LXeSteppingAction(); - LXeSteppingAction(LXeEventAction*); - virtual ~LXeSteppingAction(); - virtual void UserSteppingAction(const G4Step*); + void UserSteppingAction(const G4Step*) override; - void SetOneStepPrimaries(G4bool b){fOneStepPrimaries=b;} - G4bool GetOneStepPrimaries(){return fOneStepPrimaries;} - - private: + void SetOneStepPrimaries(G4bool b) { fOneStepPrimaries = b; } + G4bool GetOneStepPrimaries() { return fOneStepPrimaries; } - G4bool fOneStepPrimaries; - LXeSteppingMessenger* fSteppingMessenger; - LXeEventAction* fEventAction; + private: + G4bool fOneStepPrimaries; + LXeSteppingMessenger* fSteppingMessenger; + LXeEventAction* fEventAction; - G4OpBoundaryProcessStatus fExpectedNextStatus; + G4OpBoundaryProcessStatus fExpectedNextStatus; }; #endif diff --git a/examples/extended/optical/LXe/include/LXeSteppingMessenger.hh b/examples/extended/optical/LXe/include/LXeSteppingMessenger.hh index c20bf1da2e..fd53afeace 100644 --- a/examples/extended/optical/LXe/include/LXeSteppingMessenger.hh +++ b/examples/extended/optical/LXe/include/LXeSteppingMessenger.hh @@ -32,24 +32,22 @@ #define LXeSteppingMessenger_h 1 #include "G4UImessenger.hh" -#include "globals.hh" class LXeSteppingAction; + class G4UIcmdWithABool; -class LXeSteppingMessenger: public G4UImessenger +class LXeSteppingMessenger : public G4UImessenger { - public: - LXeSteppingMessenger(LXeSteppingAction*); - virtual ~LXeSteppingMessenger(); - - virtual void SetNewValue(G4UIcommand*, G4String); + public: + LXeSteppingMessenger(LXeSteppingAction*); + ~LXeSteppingMessenger(); - private: + void SetNewValue(G4UIcommand*, G4String) override; - LXeSteppingAction* fStepping; - G4UIcmdWithABool* fOneStepPrimariesCmd; - + private: + LXeSteppingAction* fStepping; + G4UIcmdWithABool* fOneStepPrimariesCmd; }; #endif diff --git a/examples/extended/optical/LXe/include/LXeTrackingAction.hh b/examples/extended/optical/LXe/include/LXeTrackingAction.hh index 45951360bb..3272da07f9 100644 --- a/examples/extended/optical/LXe/include/LXeTrackingAction.hh +++ b/examples/extended/optical/LXe/include/LXeTrackingAction.hh @@ -31,21 +31,19 @@ #ifndef LXeTrackingAction_h #define LXeTrackingAction_h 1 -#include "G4UserTrackingAction.hh" #include "globals.hh" +#include "G4UserTrackingAction.hh" -class LXeTrackingAction : public G4UserTrackingAction { +class LXeTrackingAction : public G4UserTrackingAction +{ + public: + LXeTrackingAction(); + ~LXeTrackingAction(){}; - public: - - LXeTrackingAction(); - virtual ~LXeTrackingAction() {}; - - virtual void PreUserTrackingAction(const G4Track*); - virtual void PostUserTrackingAction(const G4Track*); - - private: + void PreUserTrackingAction(const G4Track*) override; + void PostUserTrackingAction(const G4Track*) override; + private: }; #endif diff --git a/examples/extended/optical/LXe/include/LXeTrajectory.hh b/examples/extended/optical/LXe/include/LXeTrajectory.hh index ddd2d64aeb..bff40ade54 100644 --- a/examples/extended/optical/LXe/include/LXeTrajectory.hh +++ b/examples/extended/optical/LXe/include/LXeTrajectory.hh @@ -30,43 +30,37 @@ #ifndef LXeTrajectory_h #define LXeTrajectory_h 1 -#include "G4Trajectory.hh" #include "G4Allocator.hh" -#include "G4ios.hh" -#include "globals.hh" -#include "G4ParticleDefinition.hh" -#include "G4TrajectoryPoint.hh" #include "G4Track.hh" -#include "G4Step.hh" +#include "G4Trajectory.hh" -class G4Polyline; // Forward declaration. +class G4Polyline; +class G4ParticleDefinition; class LXeTrajectory : public G4Trajectory { - public: + public: + LXeTrajectory(); + LXeTrajectory(const G4Track* aTrack); + LXeTrajectory(LXeTrajectory&); + ~LXeTrajectory(); - LXeTrajectory(); - LXeTrajectory(const G4Track* aTrack); - LXeTrajectory(LXeTrajectory &); - virtual ~LXeTrajectory(); - - virtual void DrawTrajectory() const; - - inline void* operator new(size_t); - inline void operator delete(void*); + void DrawTrajectory() const override; - void SetDrawTrajectory(G4bool b){fDrawit=b;} - void WLS(){fWls=true;} - void SetForceDrawTrajectory(G4bool b){fForceDraw=b;} - void SetForceNoDrawTrajectory(G4bool b){fForceNoDraw=b;} + inline void* operator new(size_t); + inline void operator delete(void*); - private: + void SetDrawTrajectory(G4bool b) { fDrawit = b; } + void WLS() { fWls = true; } + void SetForceDrawTrajectory(G4bool b) { fForceDraw = b; } + void SetForceNoDrawTrajectory(G4bool b) { fForceNoDraw = b; } - G4bool fWls; - G4bool fDrawit; - G4bool fForceNoDraw; - G4bool fForceDraw; - G4ParticleDefinition* fParticleDefinition; + private: + G4bool fWls; + G4bool fDrawit; + G4bool fForceNoDraw; + G4bool fForceDraw; + G4ParticleDefinition* fParticleDefinition; }; extern G4ThreadLocal G4Allocator* LXeTrajectoryAllocator; @@ -74,13 +68,13 @@ extern G4ThreadLocal G4Allocator* LXeTrajectoryAllocator; inline void* LXeTrajectory::operator new(size_t) { if(!LXeTrajectoryAllocator) - LXeTrajectoryAllocator = new G4Allocator; - return (void*)LXeTrajectoryAllocator->MallocSingle(); + LXeTrajectoryAllocator = new G4Allocator; + return (void*) LXeTrajectoryAllocator->MallocSingle(); } inline void LXeTrajectory::operator delete(void* aTrajectory) { - LXeTrajectoryAllocator->FreeSingle((LXeTrajectory*)aTrajectory); + LXeTrajectoryAllocator->FreeSingle((LXeTrajectory*) aTrajectory); } #endif diff --git a/examples/extended/optical/LXe/include/LXeUserTrackInformation.hh b/examples/extended/optical/LXe/include/LXeUserTrackInformation.hh index cac4a66d03..be5703da65 100644 --- a/examples/extended/optical/LXe/include/LXeUserTrackInformation.hh +++ b/examples/extended/optical/LXe/include/LXeUserTrackInformation.hh @@ -31,10 +31,17 @@ #include "globals.hh" #ifndef LXeUserTrackInformation_h -#define LXeUserTrackInformation_h 1 +# define LXeUserTrackInformation_h 1 -enum LXeTrackStatus { active=1, hitPMT=2, absorbed=4, boundaryAbsorbed=8, - hitSphere=16, inactive=14}; +enum LXeTrackStatus +{ + active = 1, + hitPMT = 2, + absorbed = 4, + boundaryAbsorbed = 8, + hitSphere = 16, + inactive = 14 +}; /*LXeTrackStatus: active: still being tracked @@ -44,37 +51,35 @@ enum LXeTrackStatus { active=1, hitPMT=2, absorbed=4, boundaryAbsorbed=8, hitSphere: track hit the sphere at some point inactive: track is stopped for some reason -This is the sum of all stopped flags so can be used to remove stopped flags - + */ class LXeUserTrackInformation : public G4VUserTrackInformation { - public: + public: + LXeUserTrackInformation(); + ~LXeUserTrackInformation(); - LXeUserTrackInformation(); - virtual ~LXeUserTrackInformation(); + // Sets the track status to s (does not check validity of flags) + void SetTrackStatusFlags(int s) { fStatus = s; } + // Does a smart add of track status flags (disabling old flags that conflict) + // If s conflicts with itself it will not be detected + void AddTrackStatusFlag(int s); - //Sets the track status to s (does not check validity of flags) - void SetTrackStatusFlags(int s){fStatus=s;} - //Does a smart add of track status flags (disabling old flags that conflict) - //If s conflicts with itself it will not be detected - void AddTrackStatusFlag(int s); - - int GetTrackStatus()const {return fStatus;} - - void IncReflections(){fReflections++;} - G4int GetReflectionCount()const {return fReflections;} + int GetTrackStatus() const { return fStatus; } - void SetForceDrawTrajectory(G4bool b){fForcedraw=b;} - G4bool GetForceDrawTrajectory(){return fForcedraw;} + void IncReflections() { ++fReflections; } + G4int GetReflectionCount() const { return fReflections; } - inline virtual void Print() const{}; + void SetForceDrawTrajectory(G4bool b) { fForcedraw = b; } + G4bool GetForceDrawTrajectory() { return fForcedraw; } - private: + inline virtual void Print() const {}; - int fStatus; - G4int fReflections; - G4bool fForcedraw; + private: + int fStatus; + G4int fReflections; + G4bool fForcedraw; }; #endif diff --git a/examples/extended/optical/LXe/include/LXeWLSFiber.hh b/examples/extended/optical/LXe/include/LXeWLSFiber.hh index 5bb4f49c66..f267265dc8 100644 --- a/examples/extended/optical/LXe/include/LXeWLSFiber.hh +++ b/examples/extended/optical/LXe/include/LXeWLSFiber.hh @@ -27,55 +27,46 @@ /// \file optical/LXe/include/LXeWLSFiber.hh /// \brief Definition of the LXeWLSFiber class // -#ifndef LXeWLSFiber_H -#define LXeWLSFiber_H 1 - -#include "G4PVPlacement.hh" -#include "G4Box.hh" -#include "G4Tubs.hh" -#include "G4Sphere.hh" -#include "G4Material.hh" -#include "G4LogicalVolume.hh" -#include "G4OpticalSurface.hh" +#ifndef LXeWLSFiber_h +#define LXeWLSFiber_h 1 #include "LXeDetectorConstruction.hh" +#include "G4PVPlacement.hh" + +class G4LogicalVolume; + class LXeWLSFiber : public G4PVPlacement { - public: + public: + LXeWLSFiber(G4RotationMatrix* pRot, const G4ThreeVector& tlate, + G4LogicalVolume* pMotherLogical, G4bool pMany, G4int pCopyNo, + LXeDetectorConstruction* c); - LXeWLSFiber(G4RotationMatrix *pRot, - const G4ThreeVector &tlate, - G4LogicalVolume *pMotherLogical, - G4bool pMany, - G4int pCopyNo, - LXeDetectorConstruction* c); + private: + void CopyValues(); - private: + static G4LogicalVolume* fClad2_log; - void CopyValues(); + G4double fFiber_rmin; + G4double fFiber_rmax; + G4double fFiber_z; + G4double fFiber_sphi; + G4double fFiber_ephi; - static G4LogicalVolume* fClad2_log; + G4double fClad1_rmin; + G4double fClad1_rmax; + G4double fClad1_z; + G4double fClad1_sphi; + G4double fClad1_ephi; - G4double fFiber_rmin; - G4double fFiber_rmax; - G4double fFiber_z; - G4double fFiber_sphi; - G4double fFiber_ephi; + G4double fClad2_rmin; + G4double fClad2_rmax; + G4double fClad2_z; + G4double fClad2_sphi; + G4double fClad2_ephi; - G4double fClad1_rmin; - G4double fClad1_rmax; - G4double fClad1_z; - G4double fClad1_sphi; - G4double fClad1_ephi; - - G4double fClad2_rmin; - G4double fClad2_rmax; - G4double fClad2_z; - G4double fClad2_sphi; - G4double fClad2_ephi; - - LXeDetectorConstruction* fConstructor; + LXeDetectorConstruction* fConstructor; }; #endif diff --git a/examples/extended/optical/LXe/include/LXeWLSSlab.hh b/examples/extended/optical/LXe/include/LXeWLSSlab.hh index 3a807c5b4c..f6dc0ead05 100644 --- a/examples/extended/optical/LXe/include/LXeWLSSlab.hh +++ b/examples/extended/optical/LXe/include/LXeWLSSlab.hh @@ -28,42 +28,32 @@ /// \brief Definition of the LXeWLSSlab class // // -#ifndef LXeWLSSlab_H -#define LXeWLSSlab_H 1 +#ifndef LXeWLSSlab_h +#define LXeWLSSlab_h 1 #include "G4PVPlacement.hh" -#include "G4Box.hh" -#include "G4Tubs.hh" -#include "G4Material.hh" -#include "G4LogicalVolume.hh" -#include "G4OpticalSurface.hh" #include "LXeDetectorConstruction.hh" class LXeWLSSlab : public G4PVPlacement { - public: + public: + LXeWLSSlab(G4RotationMatrix* pRot, const G4ThreeVector& tlate, + G4LogicalVolume* pMotherLogical, G4bool pMany, G4int pCopyNo, + LXeDetectorConstruction* c); - LXeWLSSlab(G4RotationMatrix *pRot, - const G4ThreeVector &tlate, - G4LogicalVolume *pMotherLogical, - G4bool pMany, - G4int pCopyNo, - LXeDetectorConstruction* c); + private: + void CopyValues(); - private: + LXeDetectorConstruction* fConstructor; - void CopyValues(); + static G4LogicalVolume* fScintSlab_log; - LXeDetectorConstruction* fConstructor; - - static G4LogicalVolume* fScintSlab_log; - - G4int fNfibers; - G4double fScint_x; - G4double fScint_y; - G4double fScint_z; - G4double fSlab_z; + G4int fNfibers; + G4double fScint_x; + G4double fScint_y; + G4double fScint_z; + G4double fSlab_z; }; #endif diff --git a/examples/extended/optical/LXe/photon.mac b/examples/extended/optical/LXe/photon.mac index c96074f3d1..ea8ef81368 100644 --- a/examples/extended/optical/LXe/photon.mac +++ b/examples/extended/optical/LXe/photon.mac @@ -1,4 +1,4 @@ -#This sets the gun up to shoot an optical photon +# shoot optical photons /run/initialize /gun/particle opticalphoton @@ -7,5 +7,5 @@ /gun/direction 0 0 1 /gun/polarization 0 1 0 /tracking/verbose 1 -/run/beamOn 1 +/run/beamOn 10 diff --git a/examples/extended/optical/LXe/reviewEvent.mac b/examples/extended/optical/LXe/reviewEvent.mac deleted file mode 100644 index 8c57b5fcc9..0000000000 --- a/examples/extended/optical/LXe/reviewEvent.mac +++ /dev/null @@ -1,7 +0,0 @@ -#quickly review a particular event -#replace file name with that of the correct event - -/run/initialize -/random/resetEngineFrom random/run0.rndm -/tracking/verbose 1 -/run/beamOn diff --git a/examples/extended/optical/LXe/src/LXeActionInitialization.cc b/examples/extended/optical/LXe/src/LXeActionInitialization.cc index 69ff0755a3..a6e5b4e154 100644 --- a/examples/extended/optical/LXe/src/LXeActionInitialization.cc +++ b/examples/extended/optical/LXe/src/LXeActionInitialization.cc @@ -29,26 +29,25 @@ #include "LXeActionInitialization.hh" -#include "LXePrimaryGeneratorAction.hh" #include "LXeDetectorConstruction.hh" - -#include "LXeRunAction.hh" #include "LXeEventAction.hh" -#include "LXeTrackingAction.hh" -#include "LXeSteppingAction.hh" +#include "LXePrimaryGeneratorAction.hh" +#include "LXeRunAction.hh" #include "LXeStackingAction.hh" +#include "LXeSteppingAction.hh" +#include "LXeTrackingAction.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXeActionInitialization::LXeActionInitialization( - const LXeDetectorConstruction* det) - : G4VUserActionInitialization(), fDetector(det) + const LXeDetectorConstruction* det) + : G4VUserActionInitialization() + , fDetector(det) {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeActionInitialization::~LXeActionInitialization() -{} +LXeActionInitialization::~LXeActionInitialization() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/LXe/src/LXeDetectorConstruction.cc b/examples/extended/optical/LXe/src/LXeDetectorConstruction.cc index 67b1d7ffa7..1197d9a73e 100644 --- a/examples/extended/optical/LXe/src/LXeDetectorConstruction.cc +++ b/examples/extended/optical/LXe/src/LXeDetectorConstruction.cc @@ -29,46 +29,46 @@ // // #include "LXeDetectorConstruction.hh" -#include "LXePMTSD.hh" -#include "LXeScintSD.hh" + #include "LXeDetectorMessenger.hh" #include "LXeMainVolume.hh" +#include "LXePMTSD.hh" +#include "LXeScintSD.hh" #include "LXeWLSSlab.hh" -#include "G4SDManager.hh" -#include "G4RunManager.hh" - +#include "globals.hh" +#include "G4Box.hh" #include "G4GeometryManager.hh" -#include "G4SolidStore.hh" -#include "G4LogicalVolumeStore.hh" -#include "G4PhysicalVolumeStore.hh" #include "G4LogicalBorderSurface.hh" #include "G4LogicalSkinSurface.hh" - -#include "G4OpticalSurface.hh" -#include "G4MaterialTable.hh" -#include "G4VisAttributes.hh" -#include "G4Material.hh" -#include "G4Box.hh" -#include "G4Tubs.hh" -#include "G4Sphere.hh" #include "G4LogicalVolume.hh" -#include "G4ThreeVector.hh" -#include "G4PVPlacement.hh" -#include "globals.hh" -#include "G4UImanager.hh" +#include "G4LogicalVolumeStore.hh" +#include "G4Material.hh" +#include "G4MaterialTable.hh" +#include "G4OpticalSurface.hh" #include "G4PhysicalConstants.hh" +#include "G4PhysicalVolumeStore.hh" +#include "G4PVPlacement.hh" +#include "G4RunManager.hh" +#include "G4SDManager.hh" +#include "G4SolidStore.hh" +#include "G4Sphere.hh" #include "G4SystemOfUnits.hh" +#include "G4ThreeVector.hh" +#include "G4Tubs.hh" +#include "G4UImanager.hh" +#include "G4VisAttributes.hh" G4bool LXeDetectorConstruction::fSphereOn = true; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXeDetectorConstruction::LXeDetectorConstruction() -: fLXe_mt(nullptr), fMPTPStyrene(nullptr) + : fLXe_mt(nullptr) + , fMPTPStyrene(nullptr) { - fExperimentalHall_box = nullptr; - fExperimentalHall_log = nullptr; + fExperimentalHall_box = nullptr; + fExperimentalHall_log = nullptr; fExperimentalHall_phys = nullptr; fLXe = fAl = fAir = fVacuum = fGlass = nullptr; @@ -85,214 +85,206 @@ LXeDetectorConstruction::LXeDetectorConstruction() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeDetectorConstruction::~LXeDetectorConstruction() {} +LXeDetectorConstruction::~LXeDetectorConstruction() +{ + if(fMainVolume) + { + delete fMainVolume; + } + delete fLXe_mt; + delete fDetectorMessenger; + delete fMPTPStyrene; +} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::DefineMaterials(){ +void LXeDetectorConstruction::DefineMaterials() +{ G4double a; // atomic mass G4double z; // atomic number G4double density; G4int polyPMMA = 1; - G4int nC_PMMA = 3+2*polyPMMA; - G4int nH_PMMA = 6+2*polyPMMA; + G4int nC_PMMA = 3 + 2 * polyPMMA; + G4int nH_PMMA = 6 + 2 * polyPMMA; G4int polyeth = 1; - G4int nC_eth = 2*polyeth; - G4int nH_eth = 4*polyeth; + G4int nC_eth = 2 * polyeth; + G4int nH_eth = 4 * polyeth; //***Elements - fH = new G4Element("H", "H", z=1., a=1.01*g/mole); - fC = new G4Element("C", "C", z=6., a=12.01*g/mole); - fN = new G4Element("N", "N", z=7., a= 14.01*g/mole); - fO = new G4Element("O" , "O", z=8., a= 16.00*g/mole); + fH = new G4Element("H", "H", z = 1., a = 1.01 * g / mole); + fC = new G4Element("C", "C", z = 6., a = 12.01 * g / mole); + fN = new G4Element("N", "N", z = 7., a = 14.01 * g / mole); + fO = new G4Element("O", "O", z = 8., a = 16.00 * g / mole); //***Materials - //Liquid Xenon - fLXe = new G4Material("LXe",z=54.,a=131.29*g/mole,density=3.020*g/cm3); - //Aluminum - fAl = new G4Material("Al",z=13.,a=26.98*g/mole,density=2.7*g/cm3); - //Vacuum - fVacuum = new G4Material("Vacuum",z=1.,a=1.01*g/mole, - density=universe_mean_density,kStateGas,0.1*kelvin, - 1.e-19*pascal); - //Air - fAir = new G4Material("Air", density= 1.29*mg/cm3, 2); - fAir->AddElement(fN, 70*perCent); - fAir->AddElement(fO, 30*perCent); - //Glass - fGlass = new G4Material("Glass", density=1.032*g/cm3,2); - fGlass->AddElement(fC,91.533*perCent); - fGlass->AddElement(fH,8.467*perCent); - //Polystyrene - fPstyrene = new G4Material("Polystyrene", density= 1.03*g/cm3, 2); + // Liquid Xenon + fLXe = new G4Material("LXe", z = 54., a = 131.29 * g / mole, + density = 3.020 * g / cm3); + // Aluminum + fAl = new G4Material("Al", z = 13., a = 26.98 * g / mole, + density = 2.7 * g / cm3); + // Vacuum + fVacuum = new G4Material("Vacuum", z = 1., a = 1.01 * g / mole, + density = universe_mean_density, kStateGas, + 0.1 * kelvin, 1.e-19 * pascal); + // Air + fAir = new G4Material("Air", density = 1.29 * mg / cm3, 2); + fAir->AddElement(fN, 70 * perCent); + fAir->AddElement(fO, 30 * perCent); + // Glass + fGlass = new G4Material("Glass", density = 1.032 * g / cm3, 2); + fGlass->AddElement(fC, 91.533 * perCent); + fGlass->AddElement(fH, 8.467 * perCent); + // Polystyrene + fPstyrene = new G4Material("Polystyrene", density = 1.03 * g / cm3, 2); fPstyrene->AddElement(fC, 8); fPstyrene->AddElement(fH, 8); - //Fiber(PMMA) - fPMMA = new G4Material("PMMA", density=1190*kg/m3,3); - fPMMA->AddElement(fH,nH_PMMA); - fPMMA->AddElement(fC,nC_PMMA); - fPMMA->AddElement(fO,2); - //Cladding(polyethylene) - fPethylene1 = new G4Material("Pethylene1", density=1200*kg/m3,2); - fPethylene1->AddElement(fH,nH_eth); - fPethylene1->AddElement(fC,nC_eth); - //Double cladding(flourinated polyethylene) - fPethylene2 = new G4Material("Pethylene2", density=1400*kg/m3,2); - fPethylene2->AddElement(fH,nH_eth); - fPethylene2->AddElement(fC,nC_eth); - + // Fiber(PMMA) + fPMMA = new G4Material("PMMA", density = 1190. * kg / m3, 3); + fPMMA->AddElement(fH, nH_PMMA); + fPMMA->AddElement(fC, nC_PMMA); + fPMMA->AddElement(fO, 2); + // Cladding(polyethylene) + fPethylene1 = new G4Material("Pethylene1", density = 1200. * kg / m3, 2); + fPethylene1->AddElement(fH, nH_eth); + fPethylene1->AddElement(fC, nC_eth); + // Double cladding(flourinated polyethylene) + fPethylene2 = new G4Material("Pethylene2", density = 1400. * kg / m3, 2); + fPethylene2->AddElement(fH, nH_eth); + fPethylene2->AddElement(fC, nC_eth); + //***Material properties tables - G4double lxe_Energy[] = { 7.0*eV , 7.07*eV, 7.14*eV }; - const G4int lxenum = sizeof(lxe_Energy)/sizeof(G4double); + std::vector lxe_Energy = { 7.0 * eV, 7.07 * eV, 7.14 * eV }; - G4double lxe_SCINT[] = { 0.1, 1.0, 0.1 }; - assert(sizeof(lxe_SCINT) == sizeof(lxe_Energy)); - G4double lxe_RIND[] = { 1.59 , 1.57, 1.54 }; - assert(sizeof(lxe_RIND) == sizeof(lxe_Energy)); - G4double lxe_ABSL[] = { 35.*cm, 35.*cm, 35.*cm}; - assert(sizeof(lxe_ABSL) == sizeof(lxe_Energy)); + std::vector lxe_SCINT = { 0.1, 1.0, 0.1 }; + std::vector lxe_RIND = { 1.59, 1.57, 1.54 }; + std::vector lxe_ABSL = { 35. * cm, 35. * cm, 35. * cm }; fLXe_mt = new G4MaterialPropertiesTable(); - fLXe_mt->AddProperty("FASTCOMPONENT", lxe_Energy, lxe_SCINT, lxenum); - fLXe_mt->AddProperty("SLOWCOMPONENT", lxe_Energy, lxe_SCINT, lxenum); - fLXe_mt->AddProperty("RINDEX", lxe_Energy, lxe_RIND, lxenum); - fLXe_mt->AddProperty("ABSLENGTH", lxe_Energy, lxe_ABSL, lxenum); - fLXe_mt->AddConstProperty("SCINTILLATIONYIELD",12000./MeV); - fLXe_mt->AddConstProperty("RESOLUTIONSCALE",1.0); - fLXe_mt->AddConstProperty("FASTTIMECONSTANT",20.*ns); - fLXe_mt->AddConstProperty("SLOWTIMECONSTANT",45.*ns); - fLXe_mt->AddConstProperty("YIELDRATIO",1.0); + fLXe_mt->AddProperty("SCINTILLATIONCOMPONENT1", lxe_Energy, lxe_SCINT); + fLXe_mt->AddProperty("SCINTILLATIONCOMPONENT2", lxe_Energy, lxe_SCINT); + fLXe_mt->AddProperty("RINDEX", lxe_Energy, lxe_RIND); + fLXe_mt->AddProperty("ABSLENGTH", lxe_Energy, lxe_ABSL); + fLXe_mt->AddConstProperty("SCINTILLATIONYIELD", 12000. / MeV); + fLXe_mt->AddConstProperty("RESOLUTIONSCALE", 1.0); + fLXe_mt->AddConstProperty("SCINTILLATIONTIMECONSTANT1", 20. * ns); + fLXe_mt->AddConstProperty("SCINTILLATIONTIMECONSTANT2", 45. * ns); + fLXe_mt->AddConstProperty("SCINTILLATIONYIELD1", 1.0); + fLXe_mt->AddConstProperty("SCINTILLATIONYIELD2", 0.0); fLXe->SetMaterialPropertiesTable(fLXe_mt); // Set the Birks Constant for the LXe scintillator + fLXe->GetIonisation()->SetBirksConstant(0.126 * mm / MeV); - fLXe->GetIonisation()->SetBirksConstant(0.126*mm/MeV); - - G4double glass_RIND[]={1.49,1.49,1.49}; - assert(sizeof(glass_RIND) == sizeof(lxe_Energy)); - G4double glass_AbsLength[]={420.*cm,420.*cm,420.*cm}; - assert(sizeof(glass_AbsLength) == sizeof(lxe_Energy)); - G4MaterialPropertiesTable *glass_mt = new G4MaterialPropertiesTable(); - glass_mt->AddProperty("ABSLENGTH",lxe_Energy,glass_AbsLength,lxenum); - glass_mt->AddProperty("RINDEX",lxe_Energy,glass_RIND,lxenum); + std::vector glass_RIND = { 1.49, 1.49, 1.49 }; + std::vector glass_AbsLength = { 420. * cm, 420. * cm, 420. * cm }; + G4MaterialPropertiesTable* glass_mt = new G4MaterialPropertiesTable(); + glass_mt->AddProperty("ABSLENGTH", lxe_Energy, glass_AbsLength); + glass_mt->AddProperty("RINDEX", lxe_Energy, glass_RIND); fGlass->SetMaterialPropertiesTable(glass_mt); - G4double vacuum_Energy[]={2.0*eV,7.0*eV,7.14*eV}; - const G4int vacnum = sizeof(vacuum_Energy)/sizeof(G4double); - G4double vacuum_RIND[]={1.,1.,1.}; - assert(sizeof(vacuum_RIND) == sizeof(vacuum_Energy)); - G4MaterialPropertiesTable *vacuum_mt = new G4MaterialPropertiesTable(); - vacuum_mt->AddProperty("RINDEX", vacuum_Energy, vacuum_RIND,vacnum); + std::vector vacuum_Energy = { 2.0 * eV, 7.0 * eV, 7.14 * eV }; + std::vector vacuum_RIND = { 1., 1., 1. }; + G4MaterialPropertiesTable* vacuum_mt = new G4MaterialPropertiesTable(); + vacuum_mt->AddProperty("RINDEX", vacuum_Energy, vacuum_RIND); fVacuum->SetMaterialPropertiesTable(vacuum_mt); - fAir->SetMaterialPropertiesTable(vacuum_mt);//Give air the same rindex + fAir->SetMaterialPropertiesTable(vacuum_mt); // Give air the same rindex - G4double wls_Energy[] = {2.00*eV,2.87*eV,2.90*eV,3.47*eV}; - const G4int wlsnum = sizeof(wls_Energy)/sizeof(G4double); - - G4double rIndexPstyrene[]={ 1.5, 1.5, 1.5, 1.5}; - assert(sizeof(rIndexPstyrene) == sizeof(wls_Energy)); - G4double absorption1[]={2.*cm, 2.*cm, 2.*cm, 2.*cm}; - assert(sizeof(absorption1) == sizeof(wls_Energy)); - G4double scintilFast[]={0.00, 0.00, 1.00, 1.00}; - assert(sizeof(scintilFast) == sizeof(wls_Energy)); + std::vector wls_Energy = { 2.00 * eV, 2.87 * eV, 2.90 * eV, + 3.47 * eV }; + + std::vector rIndexPstyrene = { 1.5, 1.5, 1.5, 1.5 }; + std::vector absorption1 = { 2. * cm, 2. * cm, 2. * cm, 2. * cm }; + std::vector scintilFast = { 0.0, 0.0, 1.0, 1.0 }; fMPTPStyrene = new G4MaterialPropertiesTable(); - fMPTPStyrene->AddProperty("RINDEX",wls_Energy,rIndexPstyrene,wlsnum); - fMPTPStyrene->AddProperty("ABSLENGTH",wls_Energy,absorption1,wlsnum); - fMPTPStyrene->AddProperty("FASTCOMPONENT",wls_Energy, scintilFast,wlsnum); - fMPTPStyrene->AddConstProperty("SCINTILLATIONYIELD",10./keV); - fMPTPStyrene->AddConstProperty("RESOLUTIONSCALE",1.0); - fMPTPStyrene->AddConstProperty("FASTTIMECONSTANT", 10.*ns); + fMPTPStyrene->AddProperty("RINDEX", wls_Energy, rIndexPstyrene); + fMPTPStyrene->AddProperty("ABSLENGTH", wls_Energy, absorption1); + fMPTPStyrene->AddProperty("SCINTILLATIONCOMPONENT1", wls_Energy, scintilFast); + fMPTPStyrene->AddConstProperty("SCINTILLATIONYIELD", 10. / keV); + fMPTPStyrene->AddConstProperty("RESOLUTIONSCALE", 1.0); + fMPTPStyrene->AddConstProperty("SCINTILLATIONTIMECONSTANT1", 10. * ns); fPstyrene->SetMaterialPropertiesTable(fMPTPStyrene); // Set the Birks Constant for the Polystyrene scintillator + fPstyrene->GetIonisation()->SetBirksConstant(0.126 * mm / MeV); - fPstyrene->GetIonisation()->SetBirksConstant(0.126*mm/MeV); - - G4double RefractiveIndexFiber[]={ 1.60, 1.60, 1.60, 1.60}; - assert(sizeof(RefractiveIndexFiber) == sizeof(wls_Energy)); - G4double AbsFiber[]={9.00*m,9.00*m,0.1*mm,0.1*mm}; - assert(sizeof(AbsFiber) == sizeof(wls_Energy)); - G4double EmissionFib[]={1.0, 1.0, 0.0, 0.0}; - assert(sizeof(EmissionFib) == sizeof(wls_Energy)); + std::vector RefractiveIndexFiber = { 1.6, 1.6, 1.6, 1.6 }; + std::vector AbsFiber = { 9.0 * m, 9.0 * m, 0.1 * mm, 0.1 * mm }; + std::vector EmissionFib = { 1.0, 1.0, 0.0, 0.0 }; G4MaterialPropertiesTable* fiberProperty = new G4MaterialPropertiesTable(); - fiberProperty->AddProperty("RINDEX",wls_Energy,RefractiveIndexFiber,wlsnum); - fiberProperty->AddProperty("WLSABSLENGTH",wls_Energy,AbsFiber,wlsnum); - fiberProperty->AddProperty("WLSCOMPONENT",wls_Energy,EmissionFib,wlsnum); - fiberProperty->AddConstProperty("WLSTIMECONSTANT", 0.5*ns); + fiberProperty->AddProperty("RINDEX", wls_Energy, RefractiveIndexFiber); + fiberProperty->AddProperty("WLSABSLENGTH", wls_Energy, AbsFiber); + fiberProperty->AddProperty("WLSCOMPONENT", wls_Energy, EmissionFib); + fiberProperty->AddConstProperty("WLSTIMECONSTANT", 0.5 * ns); fPMMA->SetMaterialPropertiesTable(fiberProperty); - G4double RefractiveIndexClad1[]={ 1.49, 1.49, 1.49, 1.49}; - assert(sizeof(RefractiveIndexClad1) == sizeof(wls_Energy)); - G4MaterialPropertiesTable* clad1Property = new G4MaterialPropertiesTable(); - clad1Property->AddProperty("RINDEX",wls_Energy,RefractiveIndexClad1,wlsnum); - clad1Property->AddProperty("ABSLENGTH",wls_Energy,AbsFiber,wlsnum); + std::vector RefractiveIndexClad1 = { 1.49, 1.49, 1.49, 1.49 }; + G4MaterialPropertiesTable* clad1Property = new G4MaterialPropertiesTable(); + clad1Property->AddProperty("RINDEX", wls_Energy, RefractiveIndexClad1); + clad1Property->AddProperty("ABSLENGTH", wls_Energy, AbsFiber); fPethylene1->SetMaterialPropertiesTable(clad1Property); - G4double RefractiveIndexClad2[]={ 1.42, 1.42, 1.42, 1.42}; - assert(sizeof(RefractiveIndexClad2) == sizeof(wls_Energy)); - G4MaterialPropertiesTable* clad2Property = new G4MaterialPropertiesTable(); - clad2Property->AddProperty("RINDEX",wls_Energy,RefractiveIndexClad2,wlsnum); - clad2Property->AddProperty("ABSLENGTH",wls_Energy,AbsFiber,wlsnum); + std::vector RefractiveIndexClad2 = { 1.42, 1.42, 1.42, 1.42 }; + G4MaterialPropertiesTable* clad2Property = new G4MaterialPropertiesTable(); + clad2Property->AddProperty("RINDEX", wls_Energy, RefractiveIndexClad2); + clad2Property->AddProperty("ABSLENGTH", wls_Energy, AbsFiber); fPethylene2->SetMaterialPropertiesTable(clad2Property); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4VPhysicalVolume* LXeDetectorConstruction::Construct(){ +G4VPhysicalVolume* LXeDetectorConstruction::Construct() +{ + // The experimental hall walls are all 1m away from housing walls + G4double expHall_x = fScint_x + fD_mtl + 1. * m; + G4double expHall_y = fScint_y + fD_mtl + 1. * m; + G4double expHall_z = fScint_z + fD_mtl + 1. * m; - //The experimental hall walls are all 1m away from housing walls - G4double expHall_x = fScint_x+fD_mtl+1.*m; - G4double expHall_y = fScint_y+fD_mtl+1.*m; - G4double expHall_z = fScint_z+fD_mtl+1.*m; - - //Create experimental hall - fExperimentalHall_box - = new G4Box("expHall_box",expHall_x,expHall_y,expHall_z); - fExperimentalHall_log = new G4LogicalVolume(fExperimentalHall_box, - fVacuum,"expHall_log",0,0,0); - fExperimentalHall_phys = new G4PVPlacement(0,G4ThreeVector(), - fExperimentalHall_log,"expHall",0,false,0); + // Create experimental hall + fExperimentalHall_box = + new G4Box("expHall_box", expHall_x, expHall_y, expHall_z); + fExperimentalHall_log = + new G4LogicalVolume(fExperimentalHall_box, fVacuum, "expHall_log", 0, 0, 0); + fExperimentalHall_phys = new G4PVPlacement( + 0, G4ThreeVector(), fExperimentalHall_log, "expHall", 0, false, 0); fExperimentalHall_log->SetVisAttributes(G4VisAttributes::GetInvisible()); - //Place the main volume - if(fMainVolumeOn){ - fMainVolume - = new LXeMainVolume(0,G4ThreeVector(),fExperimentalHall_log,false,0,this); + // Place the main volume + if(fMainVolumeOn) + { + fMainVolume = new LXeMainVolume(0, G4ThreeVector(), fExperimentalHall_log, + false, 0, this); } - //Place the WLS slab - if(fWLSslab){ - G4VPhysicalVolume* slab = new LXeWLSSlab(0,G4ThreeVector(0.,0., - -fScint_z/2.-fSlab_z-1.*cm), - fExperimentalHall_log,false,0, - this); + // Place the WLS slab + if(fWLSslab) + { + G4VPhysicalVolume* slab = new LXeWLSSlab( + 0, G4ThreeVector(0., 0., -fScint_z / 2. - fSlab_z - 1. * cm), + fExperimentalHall_log, false, 0, this); - //Surface properties for the WLS slab + // Surface properties for the WLS slab G4OpticalSurface* scintWrap = new G4OpticalSurface("ScintWrap"); - - new G4LogicalBorderSurface("ScintWrap", slab, - fExperimentalHall_phys, + + new G4LogicalBorderSurface("ScintWrap", slab, fExperimentalHall_phys, scintWrap); - + scintWrap->SetType(dielectric_metal); scintWrap->SetFinish(polished); scintWrap->SetModel(glisur); - G4double pp[] = {2.0*eV, 3.5*eV}; - const G4int num = sizeof(pp)/sizeof(G4double); - G4double reflectivity[] = {1., 1.}; - assert(sizeof(reflectivity) == sizeof(pp)); - G4double efficiency[] = {0.0, 0.0}; - assert(sizeof(efficiency) == sizeof(pp)); - - G4MaterialPropertiesTable* scintWrapProperty - = new G4MaterialPropertiesTable(); + std::vector pp = { 2.0 * eV, 3.5 * eV }; + std::vector reflectivity = { 1.0, 1.0 }; + std::vector efficiency = { 0.0, 0.0 }; - scintWrapProperty->AddProperty("REFLECTIVITY",pp,reflectivity,num); - scintWrapProperty->AddProperty("EFFICIENCY",pp,efficiency,num); + G4MaterialPropertiesTable* scintWrapProperty = + new G4MaterialPropertiesTable(); + + scintWrapProperty->AddProperty("REFLECTIVITY", pp, reflectivity); + scintWrapProperty->AddProperty("EFFICIENCY", pp, efficiency); scintWrap->SetMaterialPropertiesTable(scintWrapProperty); } @@ -301,15 +293,17 @@ G4VPhysicalVolume* LXeDetectorConstruction::Construct(){ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::ConstructSDandField() { - - if (!fMainVolume) return; +void LXeDetectorConstruction::ConstructSDandField() +{ + if(!fMainVolume) + return; // PMT SD LXePMTSD* pmt = fPmt_SD.Get(); - if (!pmt) { - //Created here so it exists as pmts are being placed + if(!pmt) + { + // Created here so it exists as pmts are being placed G4cout << "Construction /LXeDet/pmtSD" << G4endl; LXePMTSD* pmt_SD = new LXePMTSD("/LXeDet/pmtSD"); fPmt_SD.Put(pmt_SD); @@ -317,24 +311,26 @@ void LXeDetectorConstruction::ConstructSDandField() { pmt_SD->InitPMTs(); pmt_SD->SetPmtPositions(fMainVolume->GetPmtPositions()); } - else { + else + { pmt->InitPMTs(); pmt->SetPmtPositions(fMainVolume->GetPmtPositions()); } G4SDManager::GetSDMpointer()->AddNewDetector(fPmt_SD.Get()); - //sensitive detector is not actually on the photocathode. - //processHits gets done manually by the stepping action. - //It is used to detect when photons hit and get absorbed&detected at the - //boundary to the photocathode (which doesnt get done by attaching it to a - //logical volume. - //It does however need to be attached to something or else it doesnt get - //reset at the begining of events + // sensitive detector is not actually on the photocathode. + // processHits gets done manually by the stepping action. + // It is used to detect when photons hit and get absorbed & detected at the + // boundary to the photocathode (which doesn't get done by attaching it to a + // logical volume. + // It does however need to be attached to something or else it doesn't get + // reset at the begining of events SetSensitiveDetector(fMainVolume->GetLogPhotoCath(), fPmt_SD.Get()); // Scint SD - if (!fScint_SD.Get()) { + if(!fScint_SD.Get()) + { G4cout << "Construction /LXeDet/scintSD" << G4endl; LXeScintSD* scint_SD = new LXeScintSD("/LXeDet/scintSD"); fScint_SD.Put(scint_SD); @@ -345,137 +341,152 @@ void LXeDetectorConstruction::ConstructSDandField() { //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::SetDimensions(G4ThreeVector dims) { - fScint_x=dims[0]; - fScint_y=dims[1]; - fScint_z=dims[2]; - G4RunManager::GetRunManager()->ReinitializeGeometry(); -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXeDetectorConstruction::SetHousingThickness(G4double d_mtl) { - fD_mtl=d_mtl; +void LXeDetectorConstruction::SetDimensions(G4ThreeVector dims) +{ + fScint_x = dims[0]; + fScint_y = dims[1]; + fScint_z = dims[2]; G4RunManager::GetRunManager()->ReinitializeGeometry(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::SetNX(G4int nx) { - fNx=nx; +void LXeDetectorConstruction::SetHousingThickness(G4double d_mtl) +{ + fD_mtl = d_mtl; G4RunManager::GetRunManager()->ReinitializeGeometry(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::SetNY(G4int ny) { - fNy=ny; +void LXeDetectorConstruction::SetNX(G4int nx) +{ + fNx = nx; G4RunManager::GetRunManager()->ReinitializeGeometry(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::SetNZ(G4int nz) { - fNz=nz; +void LXeDetectorConstruction::SetNY(G4int ny) +{ + fNy = ny; G4RunManager::GetRunManager()->ReinitializeGeometry(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::SetPMTRadius(G4double outerRadius_pmt) { - fOuterRadius_pmt=outerRadius_pmt; +void LXeDetectorConstruction::SetNZ(G4int nz) +{ + fNz = nz; G4RunManager::GetRunManager()->ReinitializeGeometry(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::SetDefaults() { +void LXeDetectorConstruction::SetPMTRadius(G4double outerRadius_pmt) +{ + fOuterRadius_pmt = outerRadius_pmt; + G4RunManager::GetRunManager()->ReinitializeGeometry(); +} - //Resets to default values - fD_mtl=0.0635*cm; +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - fScint_x = 17.8*cm; - fScint_y = 17.8*cm; - fScint_z = 22.6*cm; +void LXeDetectorConstruction::SetDefaults() +{ + // Resets to default values + fD_mtl = 0.0635 * cm; + + fScint_x = 17.8 * cm; + fScint_y = 17.8 * cm; + fScint_z = 22.6 * cm; fNx = 2; fNy = 2; fNz = 3; - fOuterRadius_pmt = 2.3*cm; + fOuterRadius_pmt = 2.3 * cm; fSphereOn = true; - fRefl = 1.0; + fRefl = 1.0; - fNfibers = 15; - fWLSslab = false; + fNfibers = 15; + fWLSslab = false; fMainVolumeOn = true; - fMainVolume = nullptr; - fSlab_z = 2.5*mm; + fMainVolume = nullptr; + fSlab_z = 2.5 * mm; - G4UImanager::GetUIpointer() - ->ApplyCommand("/LXe/detector/scintYieldFactor 1."); - - if(fLXe_mt)fLXe_mt->AddConstProperty("SCINTILLATIONYIELD",12000./MeV); - if(fMPTPStyrene)fMPTPStyrene->AddConstProperty("SCINTILLATIONYIELD",10./keV); + G4UImanager::GetUIpointer()->ApplyCommand( + "/LXe/detector/scintYieldFactor 1."); + if(fLXe_mt) + fLXe_mt->AddConstProperty("SCINTILLATIONYIELD", 12000. / MeV); + if(fMPTPStyrene) + fMPTPStyrene->AddConstProperty("SCINTILLATIONYIELD", 10. / keV); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::SetSphereOn(G4bool b) { - fSphereOn=b; +void LXeDetectorConstruction::SetSphereOn(G4bool b) +{ + fSphereOn = b; G4RunManager::GetRunManager()->ReinitializeGeometry(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::SetHousingReflectivity(G4double r) { - fRefl=r; +void LXeDetectorConstruction::SetHousingReflectivity(G4double r) +{ + fRefl = r; G4RunManager::GetRunManager()->ReinitializeGeometry(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::SetWLSSlabOn(G4bool b) { - fWLSslab=b; +void LXeDetectorConstruction::SetWLSSlabOn(G4bool b) +{ + fWLSslab = b; G4RunManager::GetRunManager()->ReinitializeGeometry(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::SetMainVolumeOn(G4bool b) { - fMainVolumeOn=b; +void LXeDetectorConstruction::SetMainVolumeOn(G4bool b) +{ + fMainVolumeOn = b; G4RunManager::GetRunManager()->ReinitializeGeometry(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::SetNFibers(G4int n) { - fNfibers=n; +void LXeDetectorConstruction::SetNFibers(G4int n) +{ + fNfibers = n; G4RunManager::GetRunManager()->ReinitializeGeometry(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::SetMainScintYield(G4double y) { - fLXe_mt->AddConstProperty("SCINTILLATIONYIELD",y/MeV); -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXeDetectorConstruction::SetWLSScintYield(G4double y) { - fMPTPStyrene->AddConstProperty("SCINTILLATIONYIELD",y/MeV); +void LXeDetectorConstruction::SetMainScintYield(G4double y) +{ + fLXe_mt->AddConstProperty("SCINTILLATIONYIELD", y / MeV); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeDetectorConstruction::SetSaveThreshold(G4int save){ -/*Sets the save threshold for the random number seed. If the number of photons -generated in an event is lower than this, then save the seed for this event -in a file called run###evt###.rndm -*/ - fSaveThreshold=save; +void LXeDetectorConstruction::SetWLSScintYield(G4double y) +{ + fMPTPStyrene->AddConstProperty("SCINTILLATIONYIELD", y / MeV); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void LXeDetectorConstruction::SetSaveThreshold(G4int save) +{ + // Sets the save threshold for the random number seed. If the number of + // photons generated in an event is lower than this, then save the seed for + // this event in a file called run###evt###.rndm + + fSaveThreshold = save; G4RunManager::GetRunManager()->SetRandomNumberStore(true); } diff --git a/examples/extended/optical/LXe/src/LXeDetectorMessenger.cc b/examples/extended/optical/LXe/src/LXeDetectorMessenger.cc index b14b0195d1..f36367124e 100644 --- a/examples/extended/optical/LXe/src/LXeDetectorMessenger.cc +++ b/examples/extended/optical/LXe/src/LXeDetectorMessenger.cc @@ -29,121 +29,122 @@ // // #include "LXeDetectorMessenger.hh" + #include "LXeDetectorConstruction.hh" -#include "G4UIcmdWithADoubleAndUnit.hh" -#include "G4UIcmdWith3VectorAndUnit.hh" -#include "G4UIcmdWithAnInteger.hh" -#include "G4UIcommand.hh" -#include "G4UIdirectory.hh" +#include "G4RunManager.hh" +#include "G4Scintillation.hh" #include "G4UIcmdWithABool.hh" #include "G4UIcmdWithADouble.hh" -#include "G4Scintillation.hh" - -#include "G4RunManager.hh" +#include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIcmdWithAnInteger.hh" +#include "G4UIcmdWith3VectorAndUnit.hh" +#include "G4UIcommand.hh" +#include "G4UIdirectory.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXeDetectorMessenger::LXeDetectorMessenger(LXeDetectorConstruction* detector) - : fLXeDetector(detector) + : fLXeDetector(detector) { - //Setup a command directory for detector controls with guidance + // Setup a command directory for detector controls with guidance fDetectorDir = new G4UIdirectory("/LXe/detector/"); fDetectorDir->SetGuidance("Detector geometry control"); fVolumesDir = new G4UIdirectory("/LXe/detector/volumes/"); fVolumesDir->SetGuidance("Enable/disable volumes"); - - //Various commands for modifying detector geometry + + // Various commands for modifying detector geometry fDimensionsCmd = - new G4UIcmdWith3VectorAndUnit("/LXe/detector/dimensions",this); + new G4UIcmdWith3VectorAndUnit("/LXe/detector/dimensions", this); fDimensionsCmd->SetGuidance("Set the dimensions of the detector volume."); - fDimensionsCmd->SetParameterName("scint_x","scint_y","scint_z",false); + fDimensionsCmd->SetParameterName("scint_x", "scint_y", "scint_z", false); fDimensionsCmd->SetDefaultUnit("cm"); - fDimensionsCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fDimensionsCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fDimensionsCmd->SetToBeBroadcasted(false); - fHousingThicknessCmd = new G4UIcmdWithADoubleAndUnit - ("/LXe/detector/housingThickness",this); + fHousingThicknessCmd = + new G4UIcmdWithADoubleAndUnit("/LXe/detector/housingThickness", this); fHousingThicknessCmd->SetGuidance("Set the thickness of the housing."); - fHousingThicknessCmd->SetParameterName("d_mtl",false); + fHousingThicknessCmd->SetParameterName("d_mtl", false); fHousingThicknessCmd->SetDefaultUnit("cm"); - fHousingThicknessCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fHousingThicknessCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fHousingThicknessCmd->SetToBeBroadcasted(false); - fPmtRadiusCmd = new G4UIcmdWithADoubleAndUnit - ("/LXe/detector/pmtRadius",this); + fPmtRadiusCmd = + new G4UIcmdWithADoubleAndUnit("/LXe/detector/pmtRadius", this); fPmtRadiusCmd->SetGuidance("Set the radius of the PMTs."); - fPmtRadiusCmd->SetParameterName("radius",false); + fPmtRadiusCmd->SetParameterName("radius", false); fPmtRadiusCmd->SetDefaultUnit("cm"); - fPmtRadiusCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fPmtRadiusCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fPmtRadiusCmd->SetToBeBroadcasted(false); - fNxCmd = new G4UIcmdWithAnInteger("/LXe/detector/nx",this); + fNxCmd = new G4UIcmdWithAnInteger("/LXe/detector/nx", this); fNxCmd->SetGuidance("Set the number of PMTs along the x-dimension."); - fNxCmd->SetParameterName("nx",false); - fNxCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fNxCmd->SetParameterName("nx", false); + fNxCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fNxCmd->SetToBeBroadcasted(false); - fNyCmd = new G4UIcmdWithAnInteger("/LXe/detector/ny",this); + fNyCmd = new G4UIcmdWithAnInteger("/LXe/detector/ny", this); fNyCmd->SetGuidance("Set the number of PMTs along the y-dimension."); - fNyCmd->SetParameterName("ny",false); - fNyCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fNyCmd->SetParameterName("ny", false); + fNyCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fNyCmd->SetToBeBroadcasted(false); - fNzCmd = new G4UIcmdWithAnInteger("/LXe/detector/nz",this); + fNzCmd = new G4UIcmdWithAnInteger("/LXe/detector/nz", this); fNzCmd->SetGuidance("Set the number of PMTs along the z-dimension."); - fNzCmd->SetParameterName("nz",false); - fNzCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fNzCmd->SetParameterName("nz", false); + fNzCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fNzCmd->SetToBeBroadcasted(false); - fSphereCmd = new G4UIcmdWithABool("/LXe/detector/volumes/sphere",this); + fSphereCmd = new G4UIcmdWithABool("/LXe/detector/volumes/sphere", this); fSphereCmd->SetGuidance("Enable/Disable the sphere."); - fSphereCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSphereCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSphereCmd->SetToBeBroadcasted(false); - fReflectivityCmd = new G4UIcmdWithADouble("/LXe/detector/reflectivity",this); + fReflectivityCmd = new G4UIcmdWithADouble("/LXe/detector/reflectivity", this); fReflectivityCmd->SetGuidance("Set the reflectivity of the housing."); - fReflectivityCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fReflectivityCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fReflectivityCmd->SetToBeBroadcasted(false); - fWlsCmd = new G4UIcmdWithABool("/LXe/detector/volumes/wls",this); + fWlsCmd = new G4UIcmdWithABool("/LXe/detector/volumes/wls", this); fWlsCmd->SetGuidance("Enable/Disable the WLS slab"); - fWlsCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fWlsCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fWlsCmd->SetToBeBroadcasted(false); - fLxeCmd = new G4UIcmdWithABool("/LXe/detector/volumes/lxe",this); + fLxeCmd = new G4UIcmdWithABool("/LXe/detector/volumes/lxe", this); fLxeCmd->SetGuidance("Enable/Disable the main detector volume."); - fLxeCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fLxeCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fLxeCmd->SetToBeBroadcasted(false); - fNFibersCmd = new G4UIcmdWithAnInteger("/LXe/detector/nfibers",this); + fNFibersCmd = new G4UIcmdWithAnInteger("/LXe/detector/nfibers", this); fNFibersCmd->SetGuidance("Set the number of WLS fibers in the WLS slab."); - fNFibersCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fNFibersCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fNFibersCmd->SetToBeBroadcasted(false); - fMainScintYield=new G4UIcmdWithADouble("/LXe/detector/MainScintYield",this); + fMainScintYield = + new G4UIcmdWithADouble("/LXe/detector/MainScintYield", this); fMainScintYield->SetGuidance("Set scinitillation yield of main volume."); fMainScintYield->SetGuidance("Specified in photons/MeV"); - fMainScintYield->AvailableForStates(G4State_PreInit,G4State_Idle); + fMainScintYield->AvailableForStates(G4State_PreInit, G4State_Idle); fMainScintYield->SetToBeBroadcasted(false); - fWLSScintYield = new G4UIcmdWithADouble("/LXe/detector/WLSScintYield",this); + fWLSScintYield = new G4UIcmdWithADouble("/LXe/detector/WLSScintYield", this); fWLSScintYield->SetGuidance("Set scintillation yield of WLS Slab"); fWLSScintYield->SetGuidance("Specified in photons/MeV"); - fWLSScintYield->AvailableForStates(G4State_PreInit,G4State_Idle); + fWLSScintYield->AvailableForStates(G4State_PreInit, G4State_Idle); fWLSScintYield->SetToBeBroadcasted(false); - fSaveThresholdCmd = new G4UIcmdWithAnInteger("/LXe/saveThreshold",this); - fSaveThresholdCmd-> -SetGuidance("Set the photon count threshold for saving the random number seed"); - fSaveThresholdCmd->SetParameterName("photons",true); + fSaveThresholdCmd = new G4UIcmdWithAnInteger("/LXe/saveThreshold", this); + fSaveThresholdCmd->SetGuidance( + "Set the photon count threshold for saving the random number seed"); + fSaveThresholdCmd->SetParameterName("photons", true); fSaveThresholdCmd->SetDefaultValue(4500); - fSaveThresholdCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSaveThresholdCmd->AvailableForStates(G4State_PreInit, G4State_Idle); - fDefaultsCmd = new G4UIcommand("/LXe/detector/defaults",this); + fDefaultsCmd = new G4UIcommand("/LXe/detector/defaults", this); fDefaultsCmd->SetGuidance("Set all detector geometry values to defaults."); - fDefaultsCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fDefaultsCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fDefaultsCmd->SetToBeBroadcasted(false); } @@ -157,8 +158,6 @@ LXeDetectorMessenger::~LXeDetectorMessenger() delete fNxCmd; delete fNyCmd; delete fNzCmd; - delete fDetectorDir; - delete fVolumesDir; delete fSphereCmd; delete fWlsCmd; delete fLxeCmd; @@ -168,60 +167,76 @@ LXeDetectorMessenger::~LXeDetectorMessenger() delete fWLSScintYield; delete fSaveThresholdCmd; delete fDefaultsCmd; + delete fDetectorDir; + delete fVolumesDir; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void LXeDetectorMessenger::SetNewValue(G4UIcommand* command, G4String newValue) { - if( command == fDimensionsCmd ){ + if(command == fDimensionsCmd) + { fLXeDetector->SetDimensions(fDimensionsCmd->GetNew3VectorValue(newValue)); } - else if (command == fHousingThicknessCmd){ - fLXeDetector->SetHousingThickness(fHousingThicknessCmd - ->GetNewDoubleValue(newValue)); + else if(command == fHousingThicknessCmd) + { + fLXeDetector->SetHousingThickness( + fHousingThicknessCmd->GetNewDoubleValue(newValue)); } - else if (command == fPmtRadiusCmd){ + else if(command == fPmtRadiusCmd) + { fLXeDetector->SetPMTRadius(fPmtRadiusCmd->GetNewDoubleValue(newValue)); } - else if (command == fNxCmd){ + else if(command == fNxCmd) + { fLXeDetector->SetNX(fNxCmd->GetNewIntValue(newValue)); } - else if (command == fNyCmd){ + else if(command == fNyCmd) + { fLXeDetector->SetNY(fNyCmd->GetNewIntValue(newValue)); } - else if (command == fNzCmd){ + else if(command == fNzCmd) + { fLXeDetector->SetNZ(fNzCmd->GetNewIntValue(newValue)); } - else if (command == fSphereCmd){ + else if(command == fSphereCmd) + { fLXeDetector->SetSphereOn(fSphereCmd->GetNewBoolValue(newValue)); } - else if (command == fReflectivityCmd){ - fLXeDetector - ->SetHousingReflectivity(fReflectivityCmd->GetNewDoubleValue(newValue)); + else if(command == fReflectivityCmd) + { + fLXeDetector->SetHousingReflectivity( + fReflectivityCmd->GetNewDoubleValue(newValue)); } - else if (command == fWlsCmd){ + else if(command == fWlsCmd) + { fLXeDetector->SetWLSSlabOn(fWlsCmd->GetNewBoolValue(newValue)); } - else if (command == fLxeCmd){ + else if(command == fLxeCmd) + { fLXeDetector->SetMainVolumeOn(fLxeCmd->GetNewBoolValue(newValue)); } - else if (command == fNFibersCmd){ + else if(command == fNFibersCmd) + { fLXeDetector->SetNFibers(fNFibersCmd->GetNewIntValue(newValue)); } - else if (command == fMainScintYield){ - fLXeDetector-> - SetMainScintYield(fMainScintYield->GetNewDoubleValue(newValue)); + else if(command == fMainScintYield) + { + fLXeDetector->SetMainScintYield( + fMainScintYield->GetNewDoubleValue(newValue)); } - else if (command == fWLSScintYield){ + else if(command == fWLSScintYield) + { fLXeDetector->SetWLSScintYield(fWLSScintYield->GetNewDoubleValue(newValue)); } - else if( command == fSaveThresholdCmd ){ + else if(command == fSaveThresholdCmd) + { fLXeDetector->SetSaveThreshold(fSaveThresholdCmd->GetNewIntValue(newValue)); } - else if (command == fDefaultsCmd){ + else if(command == fDefaultsCmd) + { fLXeDetector->SetDefaults(); - - G4RunManager::GetRunManager()->ReinitializeGeometry(); //Add here this line + G4RunManager::GetRunManager()->ReinitializeGeometry(); } } diff --git a/examples/extended/optical/LXe/src/LXeEventAction.cc b/examples/extended/optical/LXe/src/LXeEventAction.cc index 932aad1e96..5d75a3dd90 100644 --- a/examples/extended/optical/LXe/src/LXeEventAction.cc +++ b/examples/extended/optical/LXe/src/LXeEventAction.cc @@ -29,159 +29,185 @@ // // #include "LXeEventAction.hh" -#include "LXeScintHit.hh" -#include "LXePMTHit.hh" -#include "LXeTrajectory.hh" -#include "LXeRun.hh" -#include "LXeHistoManager.hh" -#include "LXeDetectorConstruction.hh" -#include "G4EventManager.hh" -#include "G4SDManager.hh" -#include "G4RunManager.hh" +#include "LXeDetectorConstruction.hh" +#include "LXeHistoManager.hh" +#include "LXePMTHit.hh" +#include "LXeRun.hh" +#include "LXeScintHit.hh" +#include "LXeTrajectory.hh" + #include "G4Event.hh" #include "G4EventManager.hh" -#include "G4TrajectoryContainer.hh" -#include "G4Trajectory.hh" -#include "G4VVisManager.hh" #include "G4ios.hh" -#include "G4UImanager.hh" +#include "G4RunManager.hh" +#include "G4SDManager.hh" #include "G4SystemOfUnits.hh" +#include "G4Trajectory.hh" +#include "G4TrajectoryContainer.hh" +#include "G4UImanager.hh" +#include "G4VVisManager.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXeEventAction::LXeEventAction(const LXeDetectorConstruction* det) - : fDetector(det),fScintCollID(-1),fPMTCollID(-1),fVerbose(0), - fPMTThreshold(1),fForcedrawphotons(false),fForcenophotons(false) + : fDetector(det) + , fScintCollID(-1) + , fPMTCollID(-1) + , fVerbose(0) + , fPMTThreshold(1) + , fForcedrawphotons(false) + , fForcenophotons(false) { fEventMessenger = new LXeEventMessenger(this); - fHitCount = 0; - fPhotonCount_Scint = 0; - fPhotonCount_Ceren = 0; - fAbsorptionCount = 0; + fHitCount = 0; + fPhotonCount_Scint = 0; + fPhotonCount_Ceren = 0; + fAbsorptionCount = 0; fBoundaryAbsorptionCount = 0; - fTotE = 0.0; + fTotE = 0.0; fConvPosSet = false; - fEdepMax = 0.0; + fEdepMax = 0.0; fPMTsAboveThreshold = 0; } - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -LXeEventAction::~LXeEventAction(){} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeEventAction::BeginOfEventAction(const G4Event*) { - - fHitCount = 0; - fPhotonCount_Scint = 0; - fPhotonCount_Ceren = 0; - fAbsorptionCount = 0; +LXeEventAction::~LXeEventAction() { delete fEventMessenger; } + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void LXeEventAction::BeginOfEventAction(const G4Event*) +{ + fHitCount = 0; + fPhotonCount_Scint = 0; + fPhotonCount_Ceren = 0; + fAbsorptionCount = 0; fBoundaryAbsorptionCount = 0; - fTotE = 0.0; + fTotE = 0.0; fConvPosSet = false; - fEdepMax = 0.0; + fEdepMax = 0.0; fPMTsAboveThreshold = 0; G4SDManager* SDman = G4SDManager::GetSDMpointer(); - if(fScintCollID<0) - fScintCollID=SDman->GetCollectionID("scintCollection"); - if(fPMTCollID<0) - fPMTCollID=SDman->GetCollectionID("pmtHitCollection"); + if(fScintCollID < 0) + fScintCollID = SDman->GetCollectionID("scintCollection"); + if(fPMTCollID < 0) + fPMTCollID = SDman->GetCollectionID("pmtHitCollection"); } - + //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeEventAction::EndOfEventAction(const G4Event* anEvent){ +void LXeEventAction::EndOfEventAction(const G4Event* anEvent) +{ + G4TrajectoryContainer* trajectoryContainer = + anEvent->GetTrajectoryContainer(); - G4TrajectoryContainer* trajectoryContainer=anEvent->GetTrajectoryContainer(); - G4int n_trajectories = 0; - if (trajectoryContainer) n_trajectories = trajectoryContainer->entries(); + if(trajectoryContainer) + n_trajectories = trajectoryContainer->entries(); // extract the trajectories and draw them - if (G4VVisManager::GetConcreteInstance()){ - for (G4int i=0; iGetTrajectoryContainer()))[i]); - if(trj->GetParticleName()=="opticalphoton"){ + if(G4VVisManager::GetConcreteInstance()) + { + for(G4int i = 0; i < n_trajectories; ++i) + { + LXeTrajectory* trj = + (LXeTrajectory*) ((*(anEvent->GetTrajectoryContainer()))[i]); + if(trj->GetParticleName() == "opticalphoton") + { trj->SetForceDrawTrajectory(fForcedrawphotons); trj->SetForceNoDrawTrajectory(fForcenophotons); } trj->DrawTrajectory(); } } - + LXeScintHitsCollection* scintHC = nullptr; - LXePMTHitsCollection* pmtHC = nullptr; - G4HCofThisEvent* hitsCE = anEvent->GetHCofThisEvent(); - - //Get the hit collections - if(hitsCE){ - if(fScintCollID>=0) { - scintHC = (LXeScintHitsCollection*)(hitsCE->GetHC(fScintCollID)); + LXePMTHitsCollection* pmtHC = nullptr; + G4HCofThisEvent* hitsCE = anEvent->GetHCofThisEvent(); + + // Get the hit collections + if(hitsCE) + { + if(fScintCollID >= 0) + { + scintHC = (LXeScintHitsCollection*) (hitsCE->GetHC(fScintCollID)); } - if(fPMTCollID>=0) { - pmtHC = (LXePMTHitsCollection*)(hitsCE->GetHC(fPMTCollID)); + if(fPMTCollID >= 0) + { + pmtHC = (LXePMTHitsCollection*) (hitsCE->GetHC(fPMTCollID)); } } - //Hits in scintillator - if(scintHC){ - int n_hit = scintHC->entries(); - G4ThreeVector eWeightPos(0.); + // Hits in scintillator + if(scintHC) + { + size_t n_hit = scintHC->entries(); + G4ThreeVector eWeightPos(0.); G4double edep; - G4double edepMax=0; + G4double edepMax = 0; - for(int i=0;iGetEdep(); + for(size_t i = 0; i < n_hit; ++i) + { // gather info on hits in scintillator + edep = (*scintHC)[i]->GetEdep(); fTotE += edep; - eWeightPos += (*scintHC)[i]->GetPos()*edep;//calculate energy weighted pos - if(edep>edepMax){ - edepMax=edep;//store max energy deposit - G4ThreeVector posMax=(*scintHC)[i]->GetPos(); - fPosMax = posMax; - fEdepMax = edep; + eWeightPos += + (*scintHC)[i]->GetPos() * edep; // calculate energy weighted pos + if(edep > edepMax) + { + edepMax = edep; // store max energy deposit + G4ThreeVector posMax = (*scintHC)[i]->GetPos(); + fPosMax = posMax; + fEdepMax = edep; } } - + G4AnalysisManager::Instance()->FillH1(7, fTotE); - - if(fTotE == 0.){ - if(fVerbose>0)G4cout<<"No hits in the scintillator this event."< 0) + G4cout << "No hits in the scintillator this event." << G4endl; } - else{ - //Finish calculation of energy weighted position + else + { + // Finish calculation of energy weighted position eWeightPos /= fTotE; - fEWeightPos = eWeightPos; - if(fVerbose>0){ + fEWeightPos = eWeightPos; + if(fVerbose > 0) + { G4cout << "\tEnergy weighted position of hits in LXe : " - << eWeightPos/mm << G4endl; + << eWeightPos / mm << G4endl; } } - if(fVerbose>0){ - G4cout << "\tTotal energy deposition in scintillator : " - << fTotE / keV << " (keV)" << G4endl; + if(fVerbose > 0) + { + G4cout << "\tTotal energy deposition in scintillator : " << fTotE / keV + << " (keV)" << G4endl; } } - - if(pmtHC){ - G4ThreeVector reconPos(0.,0.,0.); - G4int pmts=pmtHC->entries(); - //Gather info from all PMTs - for(G4int i=0;ientries(); + // Gather info from all PMTs + for(size_t i = 0; i < pmts; ++i) + { fHitCount += (*pmtHC)[i]->GetPhotonCount(); - reconPos+=(*pmtHC)[i]->GetPMTPos()*(*pmtHC)[i]->GetPhotonCount(); - if((*pmtHC)[i]->GetPhotonCount()>=fPMTThreshold){ - fPMTsAboveThreshold++; + reconPos += (*pmtHC)[i]->GetPMTPos() * (*pmtHC)[i]->GetPhotonCount(); + if((*pmtHC)[i]->GetPhotonCount() >= fPMTThreshold) + { + ++fPMTsAboveThreshold; } - else{//wasnt above the threshold, turn it back off + else + { // wasn't above the threshold, turn it back off (*pmtHC)[i]->SetDrawit(false); } } @@ -189,11 +215,13 @@ void LXeEventAction::EndOfEventAction(const G4Event* anEvent){ G4AnalysisManager::Instance()->FillH1(1, fHitCount); G4AnalysisManager::Instance()->FillH1(2, fPMTsAboveThreshold); - if(fHitCount > 0) {//dont bother unless there were hits - reconPos/=fHitCount; - if(fVerbose>0){ - G4cout << "\tReconstructed position of hits in LXe : " - << reconPos/mm << G4endl; + if(fHitCount > 0) + { // don't bother unless there were hits + reconPos /= fHitCount; + if(fVerbose > 0) + { + G4cout << "\tReconstructed position of hits in LXe : " << reconPos / mm + << G4endl; } fReconPos = reconPos; } @@ -205,12 +233,13 @@ void LXeEventAction::EndOfEventAction(const G4Event* anEvent){ G4AnalysisManager::Instance()->FillH1(5, fAbsorptionCount); G4AnalysisManager::Instance()->FillH1(6, fBoundaryAbsorptionCount); - if(fVerbose>0){ - //End of event output. later to be controlled by a verbose level - G4cout << "\tNumber of photons that hit PMTs in this event : " - << fHitCount << G4endl; - G4cout << "\tNumber of PMTs above threshold("< 0) + { + // End of event output. later to be controlled by a verbose level + G4cout << "\tNumber of photons that hit PMTs in this event : " << fHitCount + << G4endl; + G4cout << "\tNumber of PMTs above threshold(" << fPMTThreshold + << ") : " << fPMTsAboveThreshold << G4endl; G4cout << "\tNumber of photons produced by scintillation in this event : " << fPhotonCount_Scint << G4endl; G4cout << "\tNumber of photons produced by cerenkov in this event : " @@ -220,8 +249,8 @@ void LXeEventAction::EndOfEventAction(const G4Event* anEvent){ G4cout << "\tNumber of photons absorbed at boundaries (OpBoundary) in " << "this event : " << fBoundaryAbsorptionCount << G4endl; G4cout << "Unaccounted for photons in this event : " - << (fPhotonCount_Scint + fPhotonCount_Ceren - - fAbsorptionCount - fHitCount - fBoundaryAbsorptionCount) + << (fPhotonCount_Scint + fPhotonCount_Ceren - fAbsorptionCount - + fHitCount - fBoundaryAbsorptionCount) << G4endl; } @@ -237,7 +266,7 @@ void LXeEventAction::EndOfEventAction(const G4Event* anEvent){ run->IncBoundaryAbsorption(fBoundaryAbsorptionCount); run->IncHitsAboveThreshold(fPMTsAboveThreshold); - //If we have set the flag to save 'special' events, save here + // If we have set the flag to save 'special' events, save here if(fPhotonCount_Scint + fPhotonCount_Ceren < fDetector->GetSaveThreshold()) { G4RunManager::GetRunManager()->rndmSaveThisEvent(); diff --git a/examples/extended/optical/LXe/src/LXeEventMessenger.cc b/examples/extended/optical/LXe/src/LXeEventMessenger.cc index 926a2fbeb6..e3780ea17d 100644 --- a/examples/extended/optical/LXe/src/LXeEventMessenger.cc +++ b/examples/extended/optical/LXe/src/LXeEventMessenger.cc @@ -29,6 +29,7 @@ // // #include "LXeEventMessenger.hh" + #include "LXeEventAction.hh" #include "G4UIcmdWithABool.hh" @@ -37,30 +38,32 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXeEventMessenger::LXeEventMessenger(LXeEventAction* event) - : fLXeEvent(event) + : fLXeEvent(event) { - fVerboseCmd = new G4UIcmdWithAnInteger("/LXe/eventVerbose",this); + fVerboseCmd = new G4UIcmdWithAnInteger("/LXe/eventVerbose", this); fVerboseCmd->SetGuidance("Set the verbosity of event data."); - fVerboseCmd->SetParameterName("verbose",true); + fVerboseCmd->SetParameterName("verbose", true); fVerboseCmd->SetDefaultValue(1); - fPmtThresholdCmd = new G4UIcmdWithAnInteger("/LXe/pmtThreshold",this); + fPmtThresholdCmd = new G4UIcmdWithAnInteger("/LXe/pmtThreshold", this); fPmtThresholdCmd->SetGuidance("Set the pmtThreshold (in # of photons)"); - fForceDrawPhotonsCmd=new G4UIcmdWithABool("/LXe/forceDrawPhotons",this); + fForceDrawPhotonsCmd = new G4UIcmdWithABool("/LXe/forceDrawPhotons", this); fForceDrawPhotonsCmd->SetGuidance("Force drawing of photons."); - fForceDrawPhotonsCmd - ->SetGuidance("(Higher priority than /LXe/forceDrawNoPhotons)"); + fForceDrawPhotonsCmd->SetGuidance( + "(Higher priority than /LXe/forceDrawNoPhotons)"); - fForceDrawNoPhotonsCmd=new G4UIcmdWithABool("/LXe/forceDrawNoPhotons",this); + fForceDrawNoPhotonsCmd = + new G4UIcmdWithABool("/LXe/forceDrawNoPhotons", this); fForceDrawNoPhotonsCmd->SetGuidance("Force no drawing of photons."); - fForceDrawNoPhotonsCmd - ->SetGuidance("(Lower priority than /LXe/forceDrawPhotons)"); + fForceDrawNoPhotonsCmd->SetGuidance( + "(Lower priority than /LXe/forceDrawPhotons)"); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeEventMessenger::~LXeEventMessenger(){ +LXeEventMessenger::~LXeEventMessenger() +{ delete fVerboseCmd; delete fPmtThresholdCmd; delete fForceDrawPhotonsCmd; @@ -69,19 +72,24 @@ LXeEventMessenger::~LXeEventMessenger(){ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeEventMessenger::SetNewValue(G4UIcommand* command, G4String newValue){ - if( command == fVerboseCmd ){ +void LXeEventMessenger::SetNewValue(G4UIcommand* command, G4String newValue) +{ + if(command == fVerboseCmd) + { fLXeEvent->SetEventVerbose(fVerboseCmd->GetNewIntValue(newValue)); } - else if( command == fPmtThresholdCmd ){ + else if(command == fPmtThresholdCmd) + { fLXeEvent->SetPMTThreshold(fPmtThresholdCmd->GetNewIntValue(newValue)); } - else if(command == fForceDrawPhotonsCmd){ - fLXeEvent->SetForceDrawPhotons(fForceDrawPhotonsCmd - ->GetNewBoolValue(newValue)); + else if(command == fForceDrawPhotonsCmd) + { + fLXeEvent->SetForceDrawPhotons( + fForceDrawPhotonsCmd->GetNewBoolValue(newValue)); } - else if(command == fForceDrawNoPhotonsCmd){ - fLXeEvent->SetForceDrawNoPhotons(fForceDrawNoPhotonsCmd - ->GetNewBoolValue(newValue)); + else if(command == fForceDrawNoPhotonsCmd) + { + fLXeEvent->SetForceDrawNoPhotons( + fForceDrawNoPhotonsCmd->GetNewBoolValue(newValue)); } } diff --git a/examples/extended/optical/LXe/src/LXeHistoManager.cc b/examples/extended/optical/LXe/src/LXeHistoManager.cc index 7f2c92af47..db1e1f90f7 100644 --- a/examples/extended/optical/LXe/src/LXeHistoManager.cc +++ b/examples/extended/optical/LXe/src/LXeHistoManager.cc @@ -27,14 +27,11 @@ /// \brief Implementation of the LXeHistoManager class // // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #include "LXeHistoManager.hh" -#include "G4UnitsTable.hh" - -//#include //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -46,10 +43,7 @@ LXeHistoManager::LXeHistoManager() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeHistoManager::~LXeHistoManager() -{ - delete G4AnalysisManager::Instance(); -} +LXeHistoManager::~LXeHistoManager() { delete G4AnalysisManager::Instance(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -61,32 +55,44 @@ void LXeHistoManager::Book() G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); analysisManager->SetFileName(fFileName); analysisManager->SetVerboseLevel(1); - analysisManager->SetActivation(true); // enable inactivation of histograms + analysisManager->SetActivation(true); // enable inactivation of histograms // Define histogram indices, titles - std::vector > histograms = - { std::pair("0", "dummy"), - std::pair("1", "hits per event"), - std::pair("2", "hits per event above threshold"), - std::pair("3", "scintillation photons per event"), - std::pair("4", "Cerenkov photons per event"), - std::pair("5", "absorbed photons per event"), - std::pair - ("6", "photons absorbed at boundary per event"), - std::pair - ("7", "energy deposition in scintillator per event"), - }; // Default values (to be reset via /analysis/h1/set command) - G4int nbins = 100; + G4int nbins = 100; G4double vmin = 0.; G4double vmax = 100.; - // Create all histograms as inactivated - // as we have not yet set nbins, vmin, vmax - for (auto histogram : histograms) { - G4int ih = analysisManager-> - CreateH1("h" + histogram.first, histogram.second, nbins, vmin, vmax); - analysisManager->SetH1Activation(ih, false); + // 0 + analysisManager->CreateH1("0", "dummy", nbins, vmin, vmax); + // 1 + analysisManager->CreateH1("hits per event", "hits per event", nbins, vmin, + vmax); + // 2 + analysisManager->CreateH1("hits above threshold", + "hits per event above threshold", nbins, vmin, + vmax); + // 3 + analysisManager->CreateH1("scintillation", "scintillation photons per event", + nbins, vmin, vmax); + // 4 + analysisManager->CreateH1("Cerenkov", "Cerenkov photons per event", nbins, + vmin, vmax); + // 5 + analysisManager->CreateH1("absorbed", "absorbed photons per event", nbins, + vmin, vmax); + // 6 + analysisManager->CreateH1("boundary absorbed", + "photons absorbed at boundary per event", nbins, + vmin, vmax); + // 7 + analysisManager->CreateH1( + "E dep", "energy deposition in scintillator per event", nbins, vmin, vmax); + + // Create all histograms as inactivated + for(G4int i = 0; i < analysisManager->GetNofH1s(); ++i) + { + analysisManager->SetH1Activation(i, false); } } diff --git a/examples/extended/optical/LXe/src/LXeMainVolume.cc b/examples/extended/optical/LXe/src/LXeMainVolume.cc index fd8cdb911d..78346ee206 100644 --- a/examples/extended/optical/LXe/src/LXeMainVolume.cc +++ b/examples/extended/optical/LXe/src/LXeMainVolume.cc @@ -28,124 +28,128 @@ /// \brief Implementation of the LXeMainVolume class // // -#include "globals.hh" - #include "LXeMainVolume.hh" +#include "globals.hh" +#include "G4Box.hh" +#include "G4Colour.hh" #include "G4LogicalSkinSurface.hh" #include "G4LogicalBorderSurface.hh" - +#include "G4LogicalVolume.hh" +#include "G4Material.hh" +#include "G4MaterialPropertiesTable.hh" +#include "G4OpticalSurface.hh" +#include "G4Sphere.hh" #include "G4SystemOfUnits.hh" +#include "G4Tubs.hh" +#include "G4VisAttributes.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeMainVolume::LXeMainVolume(G4RotationMatrix *pRot, - const G4ThreeVector &tlate, - G4LogicalVolume *pMotherLogical, - G4bool pMany, - G4int pCopyNo, - LXeDetectorConstruction* c) - //Pass info to the G4PVPlacement constructor - :G4PVPlacement(pRot,tlate, - //Temp logical volume must be created here - new G4LogicalVolume(new G4Box("temp",1,1,1), - G4Material::GetMaterial("Vacuum"), - "temp",0,0,0), - "housing",pMotherLogical,pMany,pCopyNo),fConstructor(c) +LXeMainVolume::LXeMainVolume(G4RotationMatrix* pRot, const G4ThreeVector& tlate, + G4LogicalVolume* pMotherLogical, G4bool pMany, + G4int pCopyNo, LXeDetectorConstruction* c) + // Pass info to the G4PVPlacement constructor + : G4PVPlacement(pRot, tlate, + // Temp logical volume must be created here + new G4LogicalVolume(new G4Box("temp", 1, 1, 1), + G4Material::GetMaterial("Vacuum"), "temp", + 0, 0, 0), + "housing", pMotherLogical, pMany, pCopyNo) + , fConstructor(c) { CopyValues(); - G4double housing_x=fScint_x+2.*fD_mtl; - G4double housing_y=fScint_y+2.*fD_mtl; - G4double housing_z=fScint_z+2.*fD_mtl; - + G4double housing_x = fScint_x + 2. * fD_mtl; + G4double housing_y = fScint_y + 2. * fD_mtl; + G4double housing_z = fScint_z + 2. * fD_mtl; + //*************************** housing and scintillator - fScint_box = new G4Box("scint_box",fScint_x/2.,fScint_y/2.,fScint_z/2.); - fHousing_box = new G4Box("housing_box",housing_x/2.,housing_y/2., - housing_z/2.); - - fScint_log = new G4LogicalVolume(fScint_box,G4Material::GetMaterial("LXe"), - "scint_log",0,0,0); - fHousing_log = new G4LogicalVolume(fHousing_box, - G4Material::GetMaterial("Al"), - "housing_log",0,0,0); - - new G4PVPlacement(0,G4ThreeVector(),fScint_log,"scintillator", - fHousing_log,false,0); - + fScint_box = + new G4Box("scint_box", fScint_x / 2., fScint_y / 2., fScint_z / 2.); + fHousing_box = + new G4Box("housing_box", housing_x / 2., housing_y / 2., housing_z / 2.); + + fScint_log = new G4LogicalVolume(fScint_box, G4Material::GetMaterial("LXe"), + "scint_log", 0, 0, 0); + fHousing_log = new G4LogicalVolume( + fHousing_box, G4Material::GetMaterial("Al"), "housing_log", 0, 0, 0); + + new G4PVPlacement(0, G4ThreeVector(), fScint_log, "scintillator", + fHousing_log, false, 0); + //*************** Miscellaneous sphere to demonstrate skin surfaces - fSphere = new G4Sphere("sphere",0.*mm,2.*cm,0.*deg,360.*deg,0.*deg,360.*deg); - fSphere_log = new G4LogicalVolume(fSphere,G4Material::GetMaterial("Al"), - "sphere_log"); + fSphere = new G4Sphere("sphere", 0., 2. * cm, 0. * deg, 360. * deg, 0. * deg, + 360. * deg); + fSphere_log = + new G4LogicalVolume(fSphere, G4Material::GetMaterial("Al"), "sphere_log"); if(fSphereOn) - new G4PVPlacement(0,G4ThreeVector(5.*cm,5.*cm,5.*cm), - fSphere_log,"sphere",fScint_log,false,0); - + new G4PVPlacement(0, G4ThreeVector(5. * cm, 5. * cm, 5. * cm), fSphere_log, + "sphere", fScint_log, false, 0); + //****************** Build PMTs - G4double innerRadius_pmt = 0.*cm; - G4double height_pmt = fD_mtl/2.; - G4double startAngle_pmt = 0.*deg; - G4double spanningAngle_pmt = 360.*deg; - - fPmt = new G4Tubs("pmt_tube",innerRadius_pmt,fOuterRadius_pmt, - height_pmt,startAngle_pmt,spanningAngle_pmt); - - //the "photocathode" is a metal slab at the back of the glass that - //is only a very rough approximation of the real thing since it only - //absorbs or detects the photons based on the efficiency set below - fPhotocath = new G4Tubs("photocath_tube",innerRadius_pmt,fOuterRadius_pmt, - height_pmt/2,startAngle_pmt,spanningAngle_pmt); - - fPmt_log = new G4LogicalVolume(fPmt,G4Material::GetMaterial("Glass"), - "pmt_log"); - fPhotocath_log = new G4LogicalVolume(fPhotocath, - G4Material::GetMaterial("Al"), - "photocath_log"); - - new G4PVPlacement(0,G4ThreeVector(0,0,-height_pmt/2), - fPhotocath_log,"photocath", - fPmt_log,false,0); - + G4double innerRadius_pmt = 0.; + G4double height_pmt = fD_mtl / 2.; + G4double startAngle_pmt = 0.; + G4double spanningAngle_pmt = 360. * deg; + + fPmt = new G4Tubs("pmt_tube", innerRadius_pmt, fOuterRadius_pmt, height_pmt, + startAngle_pmt, spanningAngle_pmt); + + // the "photocathode" is a metal slab at the back of the glass that + // is only a very rough approximation of the real thing since it only + // absorbs or detects the photons based on the efficiency set below + fPhotocath = new G4Tubs("photocath_tube", innerRadius_pmt, fOuterRadius_pmt, + height_pmt / 2., startAngle_pmt, spanningAngle_pmt); + + fPmt_log = + new G4LogicalVolume(fPmt, G4Material::GetMaterial("Glass"), "pmt_log"); + fPhotocath_log = new G4LogicalVolume( + fPhotocath, G4Material::GetMaterial("Al"), "photocath_log"); + + new G4PVPlacement(0, G4ThreeVector(0., 0., -height_pmt / 2.), fPhotocath_log, + "photocath", fPmt_log, false, 0); + //***********Arrange pmts around the outside of housing********** - G4double dx = fScint_x/fNx; - G4double dy = fScint_y/fNy; - G4double dz = fScint_z/fNz; - - G4double x,y,z; - G4double xmin = -fScint_x/2. - dx/2.; - G4double ymin = -fScint_y/2. - dy/2.; - G4double zmin = -fScint_z/2. - dz/2.; - G4int k=0; - - z = -fScint_z/2. - height_pmt; //front - PlacePMTs(fPmt_log,0,x,y,dx,dy,xmin,ymin,fNx,fNy,x,y,z,k); + G4double dx = fScint_x / fNx; + G4double dy = fScint_y / fNy; + G4double dz = fScint_z / fNz; + + G4double x, y, z; + G4double xmin = -fScint_x / 2. - dx / 2.; + G4double ymin = -fScint_y / 2. - dy / 2.; + G4double zmin = -fScint_z / 2. - dz / 2.; + G4int k = 0; + + z = -fScint_z / 2. - height_pmt; // front + PlacePMTs(fPmt_log, nullptr, x, y, dx, dy, xmin, ymin, fNx, fNy, x, y, z, k); G4RotationMatrix* rm_z = new G4RotationMatrix(); - rm_z->rotateY(180*deg); - z = fScint_z/2. + height_pmt; //back - PlacePMTs(fPmt_log,rm_z,x,y,dx,dy,xmin,ymin,fNx,fNy,x,y,z,k); - + rm_z->rotateY(180. * deg); + z = fScint_z / 2. + height_pmt; // back + PlacePMTs(fPmt_log, rm_z, x, y, dx, dy, xmin, ymin, fNx, fNy, x, y, z, k); + G4RotationMatrix* rm_y1 = new G4RotationMatrix(); - rm_y1->rotateY(-90*deg); - x = -fScint_x/2. - height_pmt; //left - PlacePMTs(fPmt_log,rm_y1,y,z,dy,dz,ymin,zmin,fNy,fNz,x,y,z,k); + rm_y1->rotateY(-90. * deg); + x = -fScint_x / 2. - height_pmt; // left + PlacePMTs(fPmt_log, rm_y1, y, z, dy, dz, ymin, zmin, fNy, fNz, x, y, z, k); G4RotationMatrix* rm_y2 = new G4RotationMatrix(); - rm_y2->rotateY(90*deg); - x = fScint_x/2. + height_pmt; //right - PlacePMTs(fPmt_log,rm_y2,y,z,dy,dz,ymin,zmin,fNy,fNz,x,y,z,k); - + rm_y2->rotateY(90. * deg); + x = fScint_x / 2. + height_pmt; // right + PlacePMTs(fPmt_log, rm_y2, y, z, dy, dz, ymin, zmin, fNy, fNz, x, y, z, k); + G4RotationMatrix* rm_x1 = new G4RotationMatrix(); - rm_x1->rotateX(90*deg); - y = -fScint_y/2. - height_pmt; //bottom - PlacePMTs(fPmt_log,rm_x1,x,z,dx,dz,xmin,zmin,fNx,fNz,x,y,z,k); + rm_x1->rotateX(90. * deg); + y = -fScint_y / 2. - height_pmt; // bottom + PlacePMTs(fPmt_log, rm_x1, x, z, dx, dz, xmin, zmin, fNx, fNz, x, y, z, k); G4RotationMatrix* rm_x2 = new G4RotationMatrix(); - rm_x2->rotateX(-90*deg); - y = fScint_y/2. + height_pmt; //top - PlacePMTs(fPmt_log,rm_x2,x,z,dx,dz,xmin,zmin,fNx,fNz,x,y,z,k); - + rm_x2->rotateX(-90. * deg); + y = fScint_y / 2. + height_pmt; // top + PlacePMTs(fPmt_log, rm_x2, x, z, dx, dz, xmin, zmin, fNx, fNz, x, y, z, k); + VisAttributes(); SurfaceProperties(); @@ -154,59 +158,62 @@ LXeMainVolume::LXeMainVolume(G4RotationMatrix *pRot, //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeMainVolume::CopyValues(){ - fScint_x=fConstructor->GetScintX(); - fScint_y=fConstructor->GetScintY(); - fScint_z=fConstructor->GetScintZ(); - fD_mtl=fConstructor->GetHousingThickness(); - fNx=fConstructor->GetNX(); - fNy=fConstructor->GetNY(); - fNz=fConstructor->GetNZ(); - fOuterRadius_pmt=fConstructor->GetPMTRadius(); - fSphereOn=fConstructor->GetSphereOn(); - fRefl=fConstructor->GetHousingReflectivity(); +void LXeMainVolume::CopyValues() +{ + fScint_x = fConstructor->GetScintX(); + fScint_y = fConstructor->GetScintY(); + fScint_z = fConstructor->GetScintZ(); + fD_mtl = fConstructor->GetHousingThickness(); + fNx = fConstructor->GetNX(); + fNy = fConstructor->GetNY(); + fNz = fConstructor->GetNZ(); + fOuterRadius_pmt = fConstructor->GetPMTRadius(); + fSphereOn = fConstructor->GetSphereOn(); + fRefl = fConstructor->GetHousingReflectivity(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeMainVolume::PlacePMTs(G4LogicalVolume* pmt_log, - G4RotationMatrix *rot, - G4double &a, G4double &b, G4double da, - G4double db, G4double amin, - G4double bmin, G4int na, G4int nb, - G4double &x, G4double &y, G4double &z, - G4int &k){ -/*PlacePMTs : a different way to parameterize placement that does not depend on - calculating the position from the copy number - - pmt_log = logical volume for pmts to be placed - rot = rotation matrix to apply - a,b = coordinates to vary(ie. if varying in the xy plane then pass x,y) - da,db = value to increment a,b by - amin,bmin = start values for a,b - na,nb = number of repitions in a and b - x,y,z = just pass x,y, and z by reference (the same ones passed for a,b) - k = copy number to start with - sd = sensitive detector for pmts -*/ - a=amin; - for(G4int j=1;j<=na;j++){ - a+=da; - b=bmin; - for(G4int i=1;i<=nb;i++){ - b+=db; - new G4PVPlacement(rot,G4ThreeVector(x,y,z),pmt_log,"pmt", - fHousing_log,false,k); - fPmtPositions.push_back(G4ThreeVector(x,y,z)); - k++; +void LXeMainVolume::PlacePMTs(G4LogicalVolume* pmt_log, G4RotationMatrix* rot, + G4double& a, G4double& b, G4double da, + G4double db, G4double amin, G4double bmin, + G4int na, G4int nb, G4double& x, G4double& y, + G4double& z, G4int& k) +{ + /* PlacePMTs : a different way to parameterize placement that does not depend + * on calculating the position from the copy number + * + * pmt_log = logical volume for pmts to be placed + * rot = rotation matrix to apply + * a,b = coordinates to vary(ie. if varying in the xy plane then pass x,y) + * da,db = value to increment a,b by + * amin,bmin = start values for a,b + * na,nb = number of repitions in a and b + * x,y,z = just pass x,y, and z by reference (the same ones passed for a,b) + * k = copy number to start with + * sd = sensitive detector for pmts + */ + a = amin; + for(G4int j = 1; j <= na; ++j) + { + a += da; + b = bmin; + for(G4int i = 1; i <= nb; ++i) + { + b += db; + new G4PVPlacement(rot, G4ThreeVector(x, y, z), pmt_log, "pmt", + fHousing_log, false, k); + fPmtPositions.push_back(G4ThreeVector(x, y, z)); + ++k; } } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeMainVolume::VisAttributes(){ - G4VisAttributes* housing_va = new G4VisAttributes(G4Colour(0.8,0.8,0.8)); +void LXeMainVolume::VisAttributes() +{ + G4VisAttributes* housing_va = new G4VisAttributes(G4Colour(0.8, 0.8, 0.8)); fHousing_log->SetVisAttributes(housing_va); G4VisAttributes* sphere_va = new G4VisAttributes(); @@ -216,53 +223,45 @@ void LXeMainVolume::VisAttributes(){ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeMainVolume::SurfaceProperties(){ - G4double ephoton[] = {7.0*eV, 7.14*eV}; - const G4int num = sizeof(ephoton)/sizeof(G4double); +void LXeMainVolume::SurfaceProperties() +{ + std::vector ephoton = { 7.0 * eV, 7.14 * eV }; //**Scintillator housing properties - G4double reflectivity[] = {fRefl, fRefl}; - assert(sizeof(reflectivity) == sizeof(ephoton)); - G4double efficiency[] = {0.0, 0.0}; - assert(sizeof(efficiency) == sizeof(ephoton)); + std::vector reflectivity = { fRefl, fRefl }; + std::vector efficiency = { 0.0, 0.0 }; G4MaterialPropertiesTable* scintHsngPT = new G4MaterialPropertiesTable(); - scintHsngPT->AddProperty("REFLECTIVITY", ephoton, reflectivity, num); - scintHsngPT->AddProperty("EFFICIENCY", ephoton, efficiency, num); + scintHsngPT->AddProperty("REFLECTIVITY", ephoton, reflectivity); + scintHsngPT->AddProperty("EFFICIENCY", ephoton, efficiency); G4OpticalSurface* OpScintHousingSurface = - new G4OpticalSurface("HousingSurface",unified,polished,dielectric_metal); + new G4OpticalSurface("HousingSurface", unified, polished, dielectric_metal); OpScintHousingSurface->SetMaterialPropertiesTable(scintHsngPT); - + //**Sphere surface properties - G4double sphereReflectivity[] = {1.0, 1.0}; - assert(sizeof(sphereReflectivity) == sizeof(ephoton)); - G4double sphereEfficiency[] = {0.0, 0.0}; - assert(sizeof(sphereEfficiency) == sizeof(ephoton)); - G4MaterialPropertiesTable* spherePT = new G4MaterialPropertiesTable(); - spherePT->AddProperty("REFLECTIVITY", ephoton, sphereReflectivity, num); - spherePT->AddProperty("EFFICIENCY", ephoton, sphereEfficiency, num); + std::vector sphereReflectivity = { 1.0, 1.0 }; + std::vector sphereEfficiency = { 0.0, 0.0 }; + G4MaterialPropertiesTable* spherePT = new G4MaterialPropertiesTable(); + spherePT->AddProperty("REFLECTIVITY", ephoton, sphereReflectivity); + spherePT->AddProperty("EFFICIENCY", ephoton, sphereEfficiency); G4OpticalSurface* OpSphereSurface = - new G4OpticalSurface("SphereSurface",unified,polished,dielectric_metal); + new G4OpticalSurface("SphereSurface", unified, polished, dielectric_metal); OpSphereSurface->SetMaterialPropertiesTable(spherePT); - + //**Photocathode surface properties - G4double photocath_EFF[]={1.,1.}; //Enables 'detection' of photons - assert(sizeof(photocath_EFF) == sizeof(ephoton)); - G4double photocath_ReR[]={1.92,1.92}; - assert(sizeof(photocath_ReR) == sizeof(ephoton)); - G4double photocath_ImR[]={1.69,1.69}; - assert(sizeof(photocath_ImR) == sizeof(ephoton)); + std::vector photocath_EFF = { 1., 1. }; + std::vector photocath_ReR = { 1.92, 1.92 }; + std::vector photocath_ImR = { 1.69, 1.69 }; G4MaterialPropertiesTable* photocath_mt = new G4MaterialPropertiesTable(); - photocath_mt->AddProperty("EFFICIENCY",ephoton,photocath_EFF,num); - photocath_mt->AddProperty("REALRINDEX",ephoton,photocath_ReR,num); - photocath_mt->AddProperty("IMAGINARYRINDEX",ephoton,photocath_ImR,num); - G4OpticalSurface* photocath_opsurf= - new G4OpticalSurface("photocath_opsurf",glisur,polished, - dielectric_metal); + photocath_mt->AddProperty("EFFICIENCY", ephoton, photocath_EFF); + photocath_mt->AddProperty("REALRINDEX", ephoton, photocath_ReR); + photocath_mt->AddProperty("IMAGINARYRINDEX", ephoton, photocath_ImR); + G4OpticalSurface* photocath_opsurf = new G4OpticalSurface( + "photocath_opsurf", glisur, polished, dielectric_metal); photocath_opsurf->SetMaterialPropertiesTable(photocath_mt); //**Create logical skin surfaces - new G4LogicalSkinSurface("photocath_surf",fHousing_log, + new G4LogicalSkinSurface("photocath_surf", fHousing_log, OpScintHousingSurface); - new G4LogicalSkinSurface("sphere_surface",fSphere_log,OpSphereSurface); - new G4LogicalSkinSurface("photocath_surf",fPhotocath_log,photocath_opsurf); + new G4LogicalSkinSurface("sphere_surface", fSphere_log, OpSphereSurface); + new G4LogicalSkinSurface("photocath_surf", fPhotocath_log, photocath_opsurf); } diff --git a/examples/extended/optical/LXe/src/LXePMTHit.cc b/examples/extended/optical/LXe/src/LXePMTHit.cc index 3f94e51a83..e499949f7f 100644 --- a/examples/extended/optical/LXe/src/LXePMTHit.cc +++ b/examples/extended/optical/LXe/src/LXePMTHit.cc @@ -29,19 +29,24 @@ // // #include "LXePMTHit.hh" -#include "G4ios.hh" -#include "G4VVisManager.hh" -#include "G4Colour.hh" -#include "G4VisAttributes.hh" -#include "G4LogicalVolume.hh" -#include "G4VPhysicalVolume.hh" -G4ThreadLocal G4Allocator* LXePMTHitAllocator=0; +#include "G4Colour.hh" +#include "G4ios.hh" +#include "G4LogicalVolume.hh" +#include "G4VisAttributes.hh" +#include "G4VPhysicalVolume.hh" +#include "G4VVisManager.hh" + +G4ThreadLocal G4Allocator* LXePMTHitAllocator = nullptr; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXePMTHit::LXePMTHit() - : fPmtNumber(-1),fPhotons(0),fPhysVol(nullptr),fDrawit(false) {} + : fPmtNumber(-1) + , fPhotons(0) + , fPhysVol(nullptr) + , fDrawit(false) +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -49,44 +54,50 @@ LXePMTHit::~LXePMTHit() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXePMTHit::LXePMTHit(const LXePMTHit &right) : G4VHit() +LXePMTHit::LXePMTHit(const LXePMTHit& right) + : G4VHit() { - fPmtNumber=right.fPmtNumber; - fPhotons=right.fPhotons; - fPhysVol=right.fPhysVol; - fDrawit=right.fDrawit; + fPmtNumber = right.fPmtNumber; + fPhotons = right.fPhotons; + fPhysVol = right.fPhysVol; + fDrawit = right.fDrawit; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -const LXePMTHit& LXePMTHit::operator=(const LXePMTHit &right){ +const LXePMTHit& LXePMTHit::operator=(const LXePMTHit& right) +{ fPmtNumber = right.fPmtNumber; - fPhotons=right.fPhotons; - fPhysVol=right.fPhysVol; - fDrawit=right.fDrawit; + fPhotons = right.fPhotons; + fPhysVol = right.fPhysVol; + fDrawit = right.fDrawit; return *this; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4bool LXePMTHit::operator==(const LXePMTHit &right) const{ - return (fPmtNumber==right.fPmtNumber); +G4bool LXePMTHit::operator==(const LXePMTHit& right) const +{ + return (fPmtNumber == right.fPmtNumber); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXePMTHit::Draw(){ - if(fDrawit&&fPhysVol){ //ReDraw only the PMTs that have hit counts > 0 - //Also need a physical volume to be able to draw anything +void LXePMTHit::Draw() +{ + if(fDrawit && fPhysVol) + { // Redraw only the PMTs that have hit counts > 0 + // Also need a physical volume to be able to draw anything G4VVisManager* pVVisManager = G4VVisManager::GetConcreteInstance(); - if(pVVisManager){//Make sure that the VisManager exists - G4VisAttributes attribs(G4Colour(1.,0.,0.)); + if(pVVisManager) + { // Make sure that the VisManager exists + G4VisAttributes attribs(G4Colour(1., 0., 0.)); attribs.SetForceSolid(true); G4RotationMatrix rot; - if(fPhysVol->GetRotation())//If a rotation is defined use it - rot=*(fPhysVol->GetRotation()); - G4Transform3D trans(rot,fPhysVol->GetTranslation());//Create transform - pVVisManager->Draw(*fPhysVol,attribs,trans);//Draw it + if(fPhysVol->GetRotation()) // If a rotation is defined use it + rot = *(fPhysVol->GetRotation()); + G4Transform3D trans(rot, fPhysVol->GetTranslation()); // Create transform + pVVisManager->Draw(*fPhysVol, attribs, trans); // Draw it } } } diff --git a/examples/extended/optical/LXe/src/LXePMTSD.cc b/examples/extended/optical/LXe/src/LXePMTSD.cc index 963989145a..b2323cdaf3 100644 --- a/examples/extended/optical/LXe/src/LXePMTSD.cc +++ b/examples/extended/optical/LXe/src/LXePMTSD.cc @@ -29,131 +29,134 @@ // // #include "LXePMTSD.hh" -#include "LXePMTHit.hh" + #include "LXeDetectorConstruction.hh" +#include "LXePMTHit.hh" #include "LXeUserTrackInformation.hh" -#include "G4VPhysicalVolume.hh" -#include "G4LogicalVolume.hh" -#include "G4Track.hh" -#include "G4Step.hh" -#include "G4VTouchable.hh" -#include "G4TouchableHistory.hh" #include "G4ios.hh" -#include "G4ParticleTypes.hh" +#include "G4LogicalVolume.hh" #include "G4ParticleDefinition.hh" +#include "G4ParticleTypes.hh" +#include "G4SDManager.hh" +#include "G4Step.hh" +#include "G4TouchableHistory.hh" +#include "G4Track.hh" +#include "G4VPhysicalVolume.hh" +#include "G4VTouchable.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXePMTSD::LXePMTSD(G4String name) - : G4VSensitiveDetector(name),fPMTHitCollection(nullptr), - fPMTPositionsX(nullptr),fPMTPositionsY(nullptr),fPMTPositionsZ(nullptr) + : G4VSensitiveDetector(name) + , fPMTHitCollection(nullptr) + , fPMTPositionsX(nullptr) + , fPMTPositionsY(nullptr) + , fPMTPositionsZ(nullptr) + , fHitCID(-1) { collectionName.insert("pmtHitCollection"); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXePMTSD::~LXePMTSD() {} +LXePMTSD::~LXePMTSD() +{ + delete fPMTPositionsX; + delete fPMTPositionsY; + delete fPMTPositionsZ; +} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void LXePMTSD::SetPmtPositions(const std::vector& positions) { - for (G4int i=0; ipush_back(positions[i].x()); - if(fPMTPositionsY)fPMTPositionsY->push_back(positions[i].y()); - if(fPMTPositionsZ)fPMTPositionsZ->push_back(positions[i].z()); + for(size_t i = 0; i < positions.size(); ++i) + { + if(fPMTPositionsX) + fPMTPositionsX->push_back(positions[i].x()); + if(fPMTPositionsY) + fPMTPositionsY->push_back(positions[i].y()); + if(fPMTPositionsZ) + fPMTPositionsZ->push_back(positions[i].z()); } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXePMTSD::Initialize(G4HCofThisEvent* hitsCE){ - fPMTHitCollection = new LXePMTHitsCollection - (SensitiveDetectorName,collectionName[0]); - //Store collection with event and keep ID - static G4int hitCID = -1; - if(hitCID<0){ - hitCID = GetCollectionID(0); +void LXePMTSD::Initialize(G4HCofThisEvent* hitsCE) +{ + fPMTHitCollection = + new LXePMTHitsCollection(SensitiveDetectorName, collectionName[0]); + + if(fHitCID < 0) + { + fHitCID = G4SDManager::GetSDMpointer()->GetCollectionID(fPMTHitCollection); } - hitsCE->AddHitsCollection( hitCID, fPMTHitCollection ); + hitsCE->AddHitsCollection(fHitCID, fPMTHitCollection); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4bool LXePMTSD::ProcessHits(G4Step* ,G4TouchableHistory* ){ - return false; -} +G4bool LXePMTSD::ProcessHits(G4Step*, G4TouchableHistory*) { return false; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -//Generates a hit and uses the postStepPoint's mother volume replica number -//PostStepPoint because the hit is generated manually when the photon is -//absorbed by the photocathode +// Generates a hit and uses the postStepPoint's mother volume replica number +// PostStepPoint because the hit is generated manually when the photon is +// absorbed by the photocathode -G4bool LXePMTSD::ProcessHits_constStep(const G4Step* aStep, - G4TouchableHistory* ){ +G4bool LXePMTSD::ProcessHits_boundary(const G4Step* aStep, G4TouchableHistory*) +{ + // need to know if this is an optical photon + if(aStep->GetTrack()->GetDefinition() != + G4OpticalPhoton::OpticalPhotonDefinition()) + return false; - //need to know if this is an optical photon - if(aStep->GetTrack()->GetDefinition() - != G4OpticalPhoton::OpticalPhotonDefinition()) return false; - - //User replica number 1 since photocathode is a daughter volume - //to the pmt which was replicated - G4int pmtNumber= + // User replica number 1 since photocathode is a daughter volume + // to the pmt which was replicated + G4int pmtNumber = aStep->GetPostStepPoint()->GetTouchable()->GetReplicaNumber(1); - G4VPhysicalVolume* physVol= + G4VPhysicalVolume* physVol = aStep->GetPostStepPoint()->GetTouchable()->GetVolume(1); - //Find the correct hit collection - G4int n=fPMTHitCollection->entries(); + // Find the correct hit collection + size_t n = fPMTHitCollection->entries(); LXePMTHit* hit = nullptr; - for(G4int i=0;iGetPMTNumber()==pmtNumber){ - hit=(*fPMTHitCollection)[i]; + for(size_t i = 0; i < n; ++i) + { + if((*fPMTHitCollection)[i]->GetPMTNumber() == pmtNumber) + { + hit = (*fPMTHitCollection)[i]; break; } } - - if (hit == nullptr) {//this pmt wasnt previously hit in this event - hit = new LXePMTHit(); //so create new hit + + if(hit == nullptr) + { // this pmt wasn't previously hit in this event + hit = new LXePMTHit(); // so create new hit hit->SetPMTNumber(pmtNumber); hit->SetPMTPhysVol(physVol); fPMTHitCollection->insert(hit); - hit->SetPMTPos((*fPMTPositionsX)[pmtNumber],(*fPMTPositionsY)[pmtNumber], + hit->SetPMTPos((*fPMTPositionsX)[pmtNumber], (*fPMTPositionsY)[pmtNumber], (*fPMTPositionsZ)[pmtNumber]); } - hit->IncPhotonCount(); //increment hit for the selected pmt - - if(!LXeDetectorConstruction::GetSphereOn()){ + hit->IncPhotonCount(); // increment hit for the selected pmt + + if(!LXeDetectorConstruction::GetSphereOn()) + { hit->SetDrawit(true); - //If the sphere is disabled then this hit is automaticaly drawn + // If the sphere is disabled then this hit is automaticaly drawn } - else{//sphere enabled - LXeUserTrackInformation* trackInfo= - (LXeUserTrackInformation*)aStep->GetTrack()->GetUserInformation(); - if(trackInfo->GetTrackStatus()&hitSphere) - //only draw this hit if the photon has hit the sphere first + else + { // sphere enabled + LXeUserTrackInformation* trackInfo = + (LXeUserTrackInformation*) aStep->GetTrack()->GetUserInformation(); + if(trackInfo->GetTrackStatus() & hitSphere) + // only draw this hit if the photon has hit the sphere first hit->SetDrawit(true); } return true; } - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXePMTSD::EndOfEvent(G4HCofThisEvent* ) {} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXePMTSD::clear() {} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXePMTSD::DrawAll() {} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXePMTSD::PrintAll() {} diff --git a/examples/extended/optical/LXe/src/LXePrimaryGeneratorAction.cc b/examples/extended/optical/LXe/src/LXePrimaryGeneratorAction.cc index cd2b000d25..0958247122 100644 --- a/examples/extended/optical/LXe/src/LXePrimaryGeneratorAction.cc +++ b/examples/extended/optical/LXe/src/LXePrimaryGeneratorAction.cc @@ -30,38 +30,38 @@ // #include "LXePrimaryGeneratorAction.hh" +#include "globals.hh" #include "G4Event.hh" +#include "G4ParticleDefinition.hh" #include "G4ParticleGun.hh" #include "G4ParticleTable.hh" -#include "G4ParticleDefinition.hh" #include "G4SystemOfUnits.hh" -#include "globals.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXePrimaryGeneratorAction::LXePrimaryGeneratorAction(){ +LXePrimaryGeneratorAction::LXePrimaryGeneratorAction() +{ G4int n_particle = 1; - fParticleGun = new G4ParticleGun(n_particle); - + fParticleGun = new G4ParticleGun(n_particle); + G4ParticleTable* particleTable = G4ParticleTable::GetParticleTable(); - + G4String particleName; - fParticleGun->SetParticleDefinition(particleTable-> - FindParticle(particleName="gamma")); - //Default energy,position,momentum - fParticleGun->SetParticleEnergy(511.*keV); - fParticleGun->SetParticlePosition(G4ThreeVector(0.0 , 0.0, -20.0*cm)); - fParticleGun->SetParticleMomentumDirection(G4ThreeVector(0.,0.,1.)); + fParticleGun->SetParticleDefinition( + particleTable->FindParticle(particleName = "gamma")); + // Default energy,position,momentum + fParticleGun->SetParticleEnergy(511. * keV); + fParticleGun->SetParticlePosition(G4ThreeVector(0., 0., -20. * cm)); + fParticleGun->SetParticleMomentumDirection(G4ThreeVector(0., 0., 1.)); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXePrimaryGeneratorAction::~LXePrimaryGeneratorAction(){ - delete fParticleGun; -} +LXePrimaryGeneratorAction::~LXePrimaryGeneratorAction() { delete fParticleGun; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXePrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent){ +void LXePrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) +{ fParticleGun->GeneratePrimaryVertex(anEvent); } diff --git a/examples/extended/optical/LXe/src/LXeRun.cc b/examples/extended/optical/LXe/src/LXeRun.cc index b39bb2abe7..e6e1398891 100644 --- a/examples/extended/optical/LXe/src/LXeRun.cc +++ b/examples/extended/optical/LXe/src/LXeRun.cc @@ -31,26 +31,27 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #include "LXeRun.hh" + #include "G4SystemOfUnits.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeRun::LXeRun() : G4Run() +LXeRun::LXeRun() + : G4Run() { - fHitCount = fHitCount2 = 0; - fPhotonCount_Scint = fPhotonCount_Scint2 = 0; - fPhotonCount_Ceren = fPhotonCount_Ceren2 = 0; - fAbsorptionCount = fAbsorptionCount2 = 0; + fHitCount = fHitCount2 = 0; + fPhotonCount_Scint = fPhotonCount_Scint2 = 0; + fPhotonCount_Ceren = fPhotonCount_Ceren2 = 0; + fAbsorptionCount = fAbsorptionCount2 = 0; fBoundaryAbsorptionCount = fBoundaryAbsorptionCount2 = 0; - fPMTsAboveThreshold = fPMTsAboveThreshold2 = 0; + fPMTsAboveThreshold = fPMTsAboveThreshold2 = 0; fTotE = fTotE2 = 0.0; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeRun::~LXeRun() -{} +LXeRun::~LXeRun() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -58,20 +59,20 @@ void LXeRun::Merge(const G4Run* run) { const LXeRun* localRun = static_cast(run); - fHitCount += localRun->fHitCount; - fHitCount2 += localRun->fHitCount2; - fPMTsAboveThreshold += localRun->fPMTsAboveThreshold; - fPMTsAboveThreshold2 += localRun->fPMTsAboveThreshold2; - fPhotonCount_Scint += localRun->fPhotonCount_Scint; - fPhotonCount_Scint2 += localRun->fPhotonCount_Scint2; - fPhotonCount_Ceren += localRun->fPhotonCount_Ceren; - fPhotonCount_Ceren2 += localRun->fPhotonCount_Ceren2; - fAbsorptionCount += localRun->fAbsorptionCount; - fAbsorptionCount2 += localRun->fAbsorptionCount2; - fBoundaryAbsorptionCount += localRun->fBoundaryAbsorptionCount; + fHitCount += localRun->fHitCount; + fHitCount2 += localRun->fHitCount2; + fPMTsAboveThreshold += localRun->fPMTsAboveThreshold; + fPMTsAboveThreshold2 += localRun->fPMTsAboveThreshold2; + fPhotonCount_Scint += localRun->fPhotonCount_Scint; + fPhotonCount_Scint2 += localRun->fPhotonCount_Scint2; + fPhotonCount_Ceren += localRun->fPhotonCount_Ceren; + fPhotonCount_Ceren2 += localRun->fPhotonCount_Ceren2; + fAbsorptionCount += localRun->fAbsorptionCount; + fAbsorptionCount2 += localRun->fAbsorptionCount2; + fBoundaryAbsorptionCount += localRun->fBoundaryAbsorptionCount; fBoundaryAbsorptionCount2 += localRun->fBoundaryAbsorptionCount2; - fTotE += localRun->fTotE; - fTotE2 += localRun->fTotE2; + fTotE += localRun->fTotE; + fTotE2 += localRun->fTotE2; G4Run::Merge(run); } @@ -84,72 +85,85 @@ void LXeRun::EndOfRun() G4int prec = G4cout.precision(); - G4int n_evt = numberOfEvent; - G4cout << "The run was " << n_evt << " events." << G4endl; - + G4double n_evt = (G4double) numberOfEvent; + G4cout << "The run was " << numberOfEvent << " events." << G4endl; + G4cout.precision(4); - G4double hits = G4double(fHitCount)/n_evt; - G4double hits2 = G4double(fHitCount2)/n_evt; - G4double rms_hits = hits2 - hits*hits; - if (rms_hits > 0.) rms_hits = std::sqrt(rms_hits/n_evt); - else rms_hits = 0.; - G4cout << "Number of hits per event:\t " << hits << " +- " << rms_hits + G4double hits = G4double(fHitCount) / n_evt; + G4double hits2 = G4double(fHitCount2) / n_evt; + G4double rms_hits = hits2 - hits * hits; + if(rms_hits > 0.) + rms_hits = std::sqrt(rms_hits / n_evt); + else + rms_hits = 0.; + G4cout << "Number of hits per event:\t " << hits << " +- " << rms_hits << G4endl; - G4double hitsAbove = G4double(fPMTsAboveThreshold)/n_evt; - G4double hitsAbove2 = G4double(fPMTsAboveThreshold2)/n_evt; - G4double rms_hitsAbove = hitsAbove2 - hitsAbove*hitsAbove; - if (rms_hitsAbove > 0.) rms_hitsAbove = std::sqrt(rms_hitsAbove/n_evt); - else rms_hitsAbove = 0.; + G4double hitsAbove = G4double(fPMTsAboveThreshold) / n_evt; + G4double hitsAbove2 = G4double(fPMTsAboveThreshold2) / n_evt; + G4double rms_hitsAbove = hitsAbove2 - hitsAbove * hitsAbove; + if(rms_hitsAbove > 0.) + rms_hitsAbove = std::sqrt(rms_hitsAbove / n_evt); + else + rms_hitsAbove = 0.; - G4cout << "Number of hits per event above threshold:\t " << hitsAbove + G4cout << "Number of hits per event above threshold:\t " << hitsAbove << " +- " << rms_hitsAbove << G4endl; - G4double scint = G4double(fPhotonCount_Scint)/n_evt; - G4double scint2 = G4double(fPhotonCount_Scint2)/n_evt; - G4double rms_scint = scint2 - scint*scint; - if (rms_scint > 0.) rms_scint = std::sqrt(rms_scint/n_evt); - else rms_scint = 0.; + G4double scint = G4double(fPhotonCount_Scint) / n_evt; + G4double scint2 = G4double(fPhotonCount_Scint2) / n_evt; + G4double rms_scint = scint2 - scint * scint; + if(rms_scint > 0.) + rms_scint = std::sqrt(rms_scint / n_evt); + else + rms_scint = 0.; G4cout << "Number of scintillation photons per event :\t " << scint << " +- " << rms_scint << G4endl; - G4double ceren = G4double(fPhotonCount_Ceren)/n_evt; - G4double ceren2 = G4double(fPhotonCount_Ceren2)/n_evt; - G4double rms_ceren = ceren2 - ceren*ceren; - if (rms_ceren > 0.) rms_ceren = std::sqrt(rms_ceren/n_evt); - else rms_ceren = 0.; + G4double ceren = G4double(fPhotonCount_Ceren) / n_evt; + G4double ceren2 = G4double(fPhotonCount_Ceren2) / n_evt; + G4double rms_ceren = ceren2 - ceren * ceren; + if(rms_ceren > 0.) + rms_ceren = std::sqrt(rms_ceren / n_evt); + else + rms_ceren = 0.; - G4cout << "Number of Cerenkov photons per event:\t " << ceren << " +- " + G4cout << "Number of Cerenkov photons per event:\t " << ceren << " +- " << rms_ceren << G4endl; - G4double absorb = G4double(fAbsorptionCount)/n_evt; - G4double absorb2 = G4double(fAbsorptionCount2)/n_evt; - G4double rms_absorb = absorb2 - absorb*absorb; - if (rms_absorb > 0.) rms_absorb = std::sqrt(rms_absorb/n_evt); - else rms_absorb = 0.; + G4double absorb = G4double(fAbsorptionCount) / n_evt; + G4double absorb2 = G4double(fAbsorptionCount2) / n_evt; + G4double rms_absorb = absorb2 - absorb * absorb; + if(rms_absorb > 0.) + rms_absorb = std::sqrt(rms_absorb / n_evt); + else + rms_absorb = 0.; - G4cout << "Number of absorbed photons per event :\t " << absorb << " +- " + G4cout << "Number of absorbed photons per event :\t " << absorb << " +- " << rms_absorb << G4endl; - G4double bdry = G4double(fBoundaryAbsorptionCount)/n_evt; - G4double bdry2 = G4double(fBoundaryAbsorptionCount2)/n_evt; - G4double rms_bdry = bdry2 - bdry*bdry; - if (rms_bdry > 0.) rms_bdry = std::sqrt(rms_bdry/n_evt); - else rms_bdry = 0.; + G4double bdry = G4double(fBoundaryAbsorptionCount) / n_evt; + G4double bdry2 = G4double(fBoundaryAbsorptionCount2) / n_evt; + G4double rms_bdry = bdry2 - bdry * bdry; + if(rms_bdry > 0.) + rms_bdry = std::sqrt(rms_bdry / n_evt); + else + rms_bdry = 0.; - G4cout << "Number of photons absorbed at boundary per event:\t " << bdry + G4cout << "Number of photons absorbed at boundary per event:\t " << bdry << " +- " << rms_bdry << G4endl; - //G4cout << "Number of unaccounted for photons: " << G4endl; - G4double en = fTotE/n_evt; - G4double en2 = fTotE2/n_evt; - G4double rms_en = en2 - en*en; - if (rms_en > 0.) rms_en = std::sqrt(rms_en/n_evt); - else rms_en = 0.; + G4double en = fTotE / n_evt; + G4double en2 = fTotE2 / n_evt; + G4double rms_en = en2 - en * en; + if(rms_en > 0.) + rms_en = std::sqrt(rms_en / n_evt); + else + rms_en = 0.; - G4cout << "Total energy deposition in scintillator per event:\t " << en/keV - << " +- " << rms_en/keV << " keV." << G4endl; + G4cout << "Total energy deposition in scintillator per event:\t " << en / keV + << " +- " << rms_en / keV << " keV." << G4endl; G4cout << G4endl; G4cout.precision(prec); diff --git a/examples/extended/optical/LXe/src/LXeRunAction.cc b/examples/extended/optical/LXe/src/LXeRunAction.cc index 9666a483a3..40c9fa614a 100644 --- a/examples/extended/optical/LXe/src/LXeRunAction.cc +++ b/examples/extended/optical/LXe/src/LXeRunAction.cc @@ -29,12 +29,15 @@ // // #include "LXeRunAction.hh" -#include "LXeRun.hh" + #include "LXeHistoManager.hh" +#include "LXeRun.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeRunAction::LXeRunAction() : fRun(nullptr), fHistoManager(nullptr) +LXeRunAction::LXeRunAction() + : fRun(nullptr) + , fHistoManager(nullptr) { // Book predefined histograms fHistoManager = new LXeHistoManager(); @@ -42,10 +45,7 @@ LXeRunAction::LXeRunAction() : fRun(nullptr), fHistoManager(nullptr) //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeRunAction::~LXeRunAction() -{ - delete fHistoManager; -} +LXeRunAction::~LXeRunAction() { delete fHistoManager; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4Run* LXeRunAction::GenerateRun() @@ -59,19 +59,23 @@ G4Run* LXeRunAction::GenerateRun() void LXeRunAction::BeginOfRunAction(const G4Run*) { G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); - if (analysisManager->IsActive()) { + if(analysisManager->IsActive()) + { analysisManager->OpenFile(); } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeRunAction::EndOfRunAction(const G4Run*){ - if (isMaster) fRun->EndOfRun(); +void LXeRunAction::EndOfRunAction(const G4Run*) +{ + if(isMaster) + fRun->EndOfRun(); // save histograms G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); - if (analysisManager->IsActive()) { + if(analysisManager->IsActive()) + { analysisManager->Write(); analysisManager->CloseFile(); } diff --git a/examples/extended/optical/LXe/src/LXeScintHit.cc b/examples/extended/optical/LXe/src/LXeScintHit.cc index 98b3b7678b..8c7282c4d5 100644 --- a/examples/extended/optical/LXe/src/LXeScintHit.cc +++ b/examples/extended/optical/LXe/src/LXeScintHit.cc @@ -29,22 +29,29 @@ // // #include "LXeScintHit.hh" + #include "G4ios.hh" -#include "G4VVisManager.hh" #include "G4Colour.hh" -#include "G4VisAttributes.hh" #include "G4LogicalVolume.hh" +#include "G4VisAttributes.hh" #include "G4VPhysicalVolume.hh" +#include "G4VVisManager.hh" G4ThreadLocal G4Allocator* LXeScintHitAllocator = nullptr; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeScintHit::LXeScintHit() : fEdep(0.), fPos(0.), fPhysVol(nullptr) {} +LXeScintHit::LXeScintHit() + : fEdep(0.) + , fPos(0.) + , fPhysVol(nullptr) +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeScintHit::LXeScintHit(G4VPhysicalVolume* pVol) : fPhysVol(pVol) {} +LXeScintHit::LXeScintHit(G4VPhysicalVolume* pVol) + : fPhysVol(pVol) +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -52,33 +59,28 @@ LXeScintHit::~LXeScintHit() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeScintHit::LXeScintHit(const LXeScintHit &right) : G4VHit() +LXeScintHit::LXeScintHit(const LXeScintHit& right) + : G4VHit() { - fEdep = right.fEdep; - fPos = right.fPos; + fEdep = right.fEdep; + fPos = right.fPos; fPhysVol = right.fPhysVol; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -const LXeScintHit& LXeScintHit::operator=(const LXeScintHit &right){ - fEdep = right.fEdep; - fPos = right.fPos; +const LXeScintHit& LXeScintHit::operator=(const LXeScintHit& right) +{ + fEdep = right.fEdep; + fPos = right.fPos; fPhysVol = right.fPhysVol; return *this; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4bool LXeScintHit::operator==(const LXeScintHit&) const{ +G4bool LXeScintHit::operator==(const LXeScintHit&) const +{ return false; - //returns false because there currently isnt need to check for equality yet + // returns false because there currently isn't need to check for equality } - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXeScintHit::Draw() {} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXeScintHit::Print() {} diff --git a/examples/extended/optical/LXe/src/LXeScintSD.cc b/examples/extended/optical/LXe/src/LXeScintSD.cc index eeacb4d4e2..b5567dda0d 100644 --- a/examples/extended/optical/LXe/src/LXeScintSD.cc +++ b/examples/extended/optical/LXe/src/LXeScintSD.cc @@ -29,21 +29,25 @@ // // #include "LXeScintSD.hh" + #include "LXeScintHit.hh" -#include "G4VPhysicalVolume.hh" -#include "G4LogicalVolume.hh" -#include "G4Track.hh" -#include "G4Step.hh" -#include "G4ParticleDefinition.hh" -#include "G4VTouchable.hh" -#include "G4TouchableHistory.hh" + #include "G4ios.hh" +#include "G4LogicalVolume.hh" +#include "G4ParticleDefinition.hh" +#include "G4SDManager.hh" +#include "G4Step.hh" +#include "G4TouchableHistory.hh" +#include "G4Track.hh" +#include "G4VPhysicalVolume.hh" #include "G4VProcess.hh" +#include "G4VTouchable.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXeScintSD::LXeScintSD(G4String name) : G4VSensitiveDetector(name) + , fHitsCID(-1) { fScintCollection = nullptr; collectionName.insert("scintCollection"); @@ -55,33 +59,36 @@ LXeScintSD::~LXeScintSD() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeScintSD::Initialize(G4HCofThisEvent* hitsCE){ - fScintCollection = new LXeScintHitsCollection - (SensitiveDetectorName,collectionName[0]); - //A way to keep all the hits of this event in one place if needed - static G4int hitsCID = -1; - if(hitsCID<0){ - hitsCID = GetCollectionID(0); +void LXeScintSD::Initialize(G4HCofThisEvent* hitsCE) +{ + fScintCollection = + new LXeScintHitsCollection(SensitiveDetectorName, collectionName[0]); + + if(fHitsCID < 0) + { + fHitsCID = G4SDManager::GetSDMpointer()->GetCollectionID(fScintCollection); } - hitsCE->AddHitsCollection( hitsCID, fScintCollection ); + hitsCE->AddHitsCollection(fHitsCID, fScintCollection); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4bool LXeScintSD::ProcessHits(G4Step* aStep,G4TouchableHistory* ){ +G4bool LXeScintSD::ProcessHits(G4Step* aStep, G4TouchableHistory*) +{ G4double edep = aStep->GetTotalEnergyDeposit(); - if(edep==0.) return false; //No edep so dont count as hit + if(edep == 0.) + return false; // No edep so don't count as hit G4StepPoint* thePrePoint = aStep->GetPreStepPoint(); G4TouchableHistory* theTouchable = - (G4TouchableHistory*)(aStep->GetPreStepPoint()->GetTouchable()); + (G4TouchableHistory*) (aStep->GetPreStepPoint()->GetTouchable()); G4VPhysicalVolume* thePrePV = theTouchable->GetVolume(); - + G4StepPoint* thePostPoint = aStep->GetPostStepPoint(); - //Get the average position of the hit + // Get the average position of the hit G4ThreeVector pos = thePrePoint->GetPosition() + thePostPoint->GetPosition(); - pos/=2.; + pos /= 2.; LXeScintHit* scintHit = new LXeScintHit(thePrePV); @@ -94,17 +101,3 @@ G4bool LXeScintSD::ProcessHits(G4Step* aStep,G4TouchableHistory* ){ } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXeScintSD::EndOfEvent(G4HCofThisEvent* ) {} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXeScintSD::clear() {} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXeScintSD::DrawAll() {} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXeScintSD::PrintAll() {} diff --git a/examples/extended/optical/LXe/src/LXeStackingAction.cc b/examples/extended/optical/LXe/src/LXeStackingAction.cc index 31013efd6d..a7cebd4a8d 100644 --- a/examples/extended/optical/LXe/src/LXeStackingAction.cc +++ b/examples/extended/optical/LXe/src/LXeStackingAction.cc @@ -29,21 +29,17 @@ // // #include "LXeStackingAction.hh" -#include "LXeEventAction.hh" -#include "LXeSteppingAction.hh" -#include "G4ios.hh" -#include "G4ParticleDefinition.hh" -#include "G4ParticleTypes.hh" +#include "LXeEventAction.hh" + +#include "G4OpticalPhoton.hh" #include "G4Track.hh" -#include "G4RunManager.hh" -#include "G4Event.hh" -#include "G4EventManager.hh" +#include "G4VProcess.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXeStackingAction::LXeStackingAction(LXeEventAction* ea) - : fEventAction(ea) + : fEventAction(ea) {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -52,29 +48,21 @@ LXeStackingAction::~LXeStackingAction() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4ClassificationOfNewTrack -LXeStackingAction::ClassifyNewTrack(const G4Track * aTrack){ - - //Count what process generated the optical photons - if(aTrack->GetDefinition()==G4OpticalPhoton::OpticalPhotonDefinition()){ +G4ClassificationOfNewTrack LXeStackingAction::ClassifyNewTrack( + const G4Track* aTrack) +{ + // Count what process generated the optical photons + if(aTrack->GetDefinition() == G4OpticalPhoton::OpticalPhotonDefinition()) + { // particle is optical photon - if(aTrack->GetParentID()>0){ + if(aTrack->GetParentID() > 0) + { // particle is secondary - if(aTrack->GetCreatorProcess()->GetProcessName()=="Scintillation") + if(aTrack->GetCreatorProcess()->GetProcessName() == "Scintillation") fEventAction->IncPhotonCount_Scint(); - else if(aTrack->GetCreatorProcess()->GetProcessName()=="Cerenkov") + else if(aTrack->GetCreatorProcess()->GetProcessName() == "Cerenkov") fEventAction->IncPhotonCount_Ceren(); } } - else{ - } return fUrgent; } - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXeStackingAction::NewStage() {} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void LXeStackingAction::PrepareNewEvent() {} diff --git a/examples/extended/optical/LXe/src/LXeSteppingAction.cc b/examples/extended/optical/LXe/src/LXeSteppingAction.cc index dedfb5fb96..06afcc1048 100644 --- a/examples/extended/optical/LXe/src/LXeSteppingAction.cc +++ b/examples/extended/optical/LXe/src/LXeSteppingAction.cc @@ -29,31 +29,28 @@ // // #include "LXeSteppingAction.hh" -#include "LXeEventAction.hh" -#include "LXeTrackingAction.hh" -#include "LXeTrajectory.hh" -#include "LXePMTSD.hh" -#include "LXeUserTrackInformation.hh" -#include "LXeSteppingMessenger.hh" -#include "G4SteppingManager.hh" -#include "G4SDManager.hh" -#include "G4EventManager.hh" +#include "LXeEventAction.hh" +#include "LXePMTSD.hh" +#include "LXeSteppingMessenger.hh" +#include "LXeTrajectory.hh" +#include "LXeUserTrackInformation.hh" + +#include "G4OpticalPhoton.hh" #include "G4ProcessManager.hh" -#include "G4Track.hh" +#include "G4SDManager.hh" #include "G4Step.hh" -#include "G4Event.hh" +#include "G4SteppingManager.hh" #include "G4StepPoint.hh" +#include "G4Track.hh" #include "G4TrackStatus.hh" #include "G4VPhysicalVolume.hh" -#include "G4ParticleDefinition.hh" -#include "G4ParticleTypes.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXeSteppingAction::LXeSteppingAction(LXeEventAction* ea) - : fOneStepPrimaries(false), - fEventAction(ea) + : fOneStepPrimaries(false) + , fEventAction(ea) { fSteppingMessenger = new LXeSteppingMessenger(this); @@ -62,144 +59,158 @@ LXeSteppingAction::LXeSteppingAction(LXeEventAction* ea) //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeSteppingAction::~LXeSteppingAction() {} +LXeSteppingAction::~LXeSteppingAction() { delete fSteppingMessenger; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeSteppingAction::UserSteppingAction(const G4Step * theStep){ - +void LXeSteppingAction::UserSteppingAction(const G4Step* theStep) +{ G4Track* theTrack = theStep->GetTrack(); - if ( theTrack->GetCurrentStepNumber() == 1 ) fExpectedNextStatus = Undefined; - - LXeUserTrackInformation* trackInformation - =(LXeUserTrackInformation*)theTrack->GetUserInformation(); + if(theTrack->GetCurrentStepNumber() == 1) + fExpectedNextStatus = Undefined; - G4StepPoint* thePrePoint = theStep->GetPreStepPoint(); + LXeUserTrackInformation* trackInformation = + (LXeUserTrackInformation*) theTrack->GetUserInformation(); + + G4StepPoint* thePrePoint = theStep->GetPreStepPoint(); G4VPhysicalVolume* thePrePV = thePrePoint->GetPhysicalVolume(); - G4StepPoint* thePostPoint = theStep->GetPostStepPoint(); + G4StepPoint* thePostPoint = theStep->GetPostStepPoint(); G4VPhysicalVolume* thePostPV = thePostPoint->GetPhysicalVolume(); - G4OpBoundaryProcessStatus boundaryStatus=Undefined; + G4OpBoundaryProcessStatus boundaryStatus = Undefined; static G4ThreadLocal G4OpBoundaryProcess* boundary = nullptr; - //find the boundary process only once - if(!boundary){ - G4ProcessManager* pm - = theStep->GetTrack()->GetDefinition()->GetProcessManager(); - G4int nprocesses = pm->GetProcessListLength(); + // find the boundary process only once + if(!boundary) + { + G4ProcessManager* pm = + theStep->GetTrack()->GetDefinition()->GetProcessManager(); + G4int nprocesses = pm->GetProcessListLength(); G4ProcessVector* pv = pm->GetProcessList(); - G4int i; - for( i=0;iGetProcessName()=="OpBoundary"){ - boundary = (G4OpBoundaryProcess*)(*pv)[i]; + for(G4int i = 0; i < nprocesses; ++i) + { + if((*pv)[i]->GetProcessName() == "OpBoundary") + { + boundary = (G4OpBoundaryProcess*) (*pv)[i]; break; } } } - if(theTrack->GetParentID()==0){ - //This is a primary track - - G4TrackVector* fSecondary=fpSteppingManager->GetfSecondary(); - G4int tN2ndariesTot = fpSteppingManager->GetfN2ndariesAtRestDoIt() - + fpSteppingManager->GetfN2ndariesAlongStepDoIt() - + fpSteppingManager->GetfN2ndariesPostStepDoIt(); + if(theTrack->GetParentID() == 0) + { + // This is a primary track - //If we havent already found the conversion position and there were - //secondaries generated, then search for it - if(!fEventAction->IsConvPosSet() && tN2ndariesTot>0 ){ - for(size_t lp1=(*fSecondary).size()-tN2ndariesTot; - lp1<(*fSecondary).size(); lp1++){ - const G4VProcess* creator=(*fSecondary)[lp1]->GetCreatorProcess(); - if(creator){ - G4String creatorName=creator->GetProcessName(); - if(creatorName=="phot"||creatorName=="compt"||creatorName=="conv"){ - //since this is happening before the secondary is being tracked - //the Vertex position has not been set yet(set in initial step) + G4TrackVector* fSecondary = fpSteppingManager->GetfSecondary(); + G4int tN2ndariesTot = fpSteppingManager->GetfN2ndariesAtRestDoIt() + + fpSteppingManager->GetfN2ndariesAlongStepDoIt() + + fpSteppingManager->GetfN2ndariesPostStepDoIt(); + + // If we haven't already found the conversion position and there were + // secondaries generated, then search for it + if(!fEventAction->IsConvPosSet() && tN2ndariesTot > 0) + { + for(size_t lp1 = (*fSecondary).size() - tN2ndariesTot; + lp1 < (*fSecondary).size(); ++lp1) + { + const G4VProcess* creator = (*fSecondary)[lp1]->GetCreatorProcess(); + if(creator) + { + G4String creatorName = creator->GetProcessName(); + if(creatorName == "phot" || creatorName == "compt" || + creatorName == "conv") + { + // since this is happening before the secondary is being tracked, + // the vertex position has not been set yet (set in initial step) fEventAction->SetConvPos((*fSecondary)[lp1]->GetPosition()); } } } } - if(fOneStepPrimaries&&thePrePV->GetName()=="scintillator") + if(fOneStepPrimaries && thePrePV->GetName() == "scintillator") theTrack->SetTrackStatus(fStopAndKill); } - if(!thePostPV){//out of world - fExpectedNextStatus=Undefined; + if(!thePostPV) + { // out of world + fExpectedNextStatus = Undefined; return; } - G4ParticleDefinition* particleType = theTrack->GetDefinition(); - if(particleType==G4OpticalPhoton::OpticalPhotonDefinition()){ - //Optical photon only + if(theTrack->GetDefinition() == G4OpticalPhoton::OpticalPhotonDefinition()) + { + // Optical photon only - if(thePrePV->GetName()=="Slab") - //force drawing of photons in WLS slab + if(thePrePV->GetName() == "Slab") + // force drawing of photons in WLS slab trackInformation->SetForceDrawTrajectory(true); - else if(thePostPV->GetName()=="expHall") - //Kill photons entering expHall from something other than Slab + else if(thePostPV->GetName() == "expHall") + // Kill photons entering expHall from something other than Slab theTrack->SetTrackStatus(fStopAndKill); - //Was the photon absorbed by the absorption process - if(thePostPoint->GetProcessDefinedStep()->GetProcessName() - =="OpAbsorption"){ + // Was the photon absorbed by the absorption process + if(thePostPoint->GetProcessDefinedStep()->GetProcessName() == + "OpAbsorption") + { fEventAction->IncAbsorption(); trackInformation->AddTrackStatusFlag(absorbed); } - boundaryStatus=boundary->GetStatus(); + boundaryStatus = boundary->GetStatus(); - //Check to see if the partcile was actually at a boundary - //Otherwise the boundary status may not be valid - //Prior to Geant4.6.0-p1 this would not have been enough to check - if(thePostPoint->GetStepStatus()==fGeomBoundary){ - if(fExpectedNextStatus==StepTooSmall){ - if(boundaryStatus!=StepTooSmall){ + if(thePostPoint->GetStepStatus() == fGeomBoundary) + { + // Check to see if the particle was actually at a boundary + // Otherwise the boundary status may not be valid + if(fExpectedNextStatus == StepTooSmall) + { + if(boundaryStatus != StepTooSmall) + { G4ExceptionDescription ed; ed << "LXeSteppingAction::UserSteppingAction(): " - << "No reallocation step after reflection!" - << G4endl; + << "No reallocation step after reflection!" << G4endl; G4Exception("LXeSteppingAction::UserSteppingAction()", "LXeExpl01", - FatalException,ed, - "Something is wrong with the surface normal or geometry"); + FatalException, ed, + "Something is wrong with the surface normal or geometry"); } } - fExpectedNextStatus=Undefined; - switch(boundaryStatus){ - case Absorption: - trackInformation->AddTrackStatusFlag(boundaryAbsorbed); - fEventAction->IncBoundaryAbsorption(); - break; - case Detection: //Note, this assumes that the volume causing detection - //is the photocathode because it is the only one with - //non-zero efficiency + fExpectedNextStatus = Undefined; + switch(boundaryStatus) + { + case Absorption: + trackInformation->AddTrackStatusFlag(boundaryAbsorbed); + fEventAction->IncBoundaryAbsorption(); + break; + case Detection: // Note, this assumes that the volume causing detection + // is the photocathode because it is the only one with + // non-zero efficiency { - //Triger sensitive detector manually since photon is - //absorbed but status was Detection - G4SDManager* SDman = G4SDManager::GetSDMpointer(); - G4String sdName="/LXeDet/pmtSD"; - LXePMTSD* pmtSD = (LXePMTSD*)SDman->FindSensitiveDetector(sdName); - if(pmtSD)pmtSD->ProcessHits_constStep(theStep, nullptr); - trackInformation->AddTrackStatusFlag(hitPMT); - break; + // Trigger sensitive detector manually since photon is + // absorbed but status was Detection + G4SDManager* SDman = G4SDManager::GetSDMpointer(); + G4String sdName = "/LXeDet/pmtSD"; + LXePMTSD* pmtSD = (LXePMTSD*) SDman->FindSensitiveDetector(sdName); + if(pmtSD) + pmtSD->ProcessHits_boundary(theStep, nullptr); + trackInformation->AddTrackStatusFlag(hitPMT); + break; } - case FresnelReflection: - case TotalInternalReflection: - case LambertianReflection: - case LobeReflection: - case SpikeReflection: - case BackScattering: - trackInformation->IncReflections(); - fExpectedNextStatus=StepTooSmall; - break; - default: - break; + case FresnelReflection: + case TotalInternalReflection: + case LambertianReflection: + case LobeReflection: + case SpikeReflection: + case BackScattering: + trackInformation->IncReflections(); + fExpectedNextStatus = StepTooSmall; + break; + default: + break; } - if(thePostPV->GetName()=="sphere") + if(thePostPV->GetName() == "sphere") trackInformation->AddTrackStatusFlag(hitSphere); } } diff --git a/examples/extended/optical/LXe/src/LXeSteppingMessenger.cc b/examples/extended/optical/LXe/src/LXeSteppingMessenger.cc index 5765abe62a..15d89a63f6 100644 --- a/examples/extended/optical/LXe/src/LXeSteppingMessenger.cc +++ b/examples/extended/optical/LXe/src/LXeSteppingMessenger.cc @@ -29,34 +29,33 @@ // // #include "LXeSteppingMessenger.hh" + #include "LXeSteppingAction.hh" -#include "G4UIdirectory.hh" #include "G4UIcmdWithABool.hh" +#include "G4UIdirectory.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXeSteppingMessenger::LXeSteppingMessenger(LXeSteppingAction* step) - : fStepping(step) + : fStepping(step) { - fOneStepPrimariesCmd = new G4UIcmdWithABool("/LXe/oneStepPrimaries",this); - fOneStepPrimariesCmd-> - SetGuidance("Only allows primaries to go one step before being killed."); - + fOneStepPrimariesCmd = new G4UIcmdWithABool("/LXe/oneStepPrimaries", this); + fOneStepPrimariesCmd->SetGuidance( + "Only allows primaries to go one step before being killed."); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeSteppingMessenger::~LXeSteppingMessenger(){ - delete fOneStepPrimariesCmd; -} +LXeSteppingMessenger::~LXeSteppingMessenger() { delete fOneStepPrimariesCmd; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void -LXeSteppingMessenger::SetNewValue(G4UIcommand* command,G4String newValue){ - if( command == fOneStepPrimariesCmd ){ - fStepping->SetOneStepPrimaries(fOneStepPrimariesCmd - ->GetNewBoolValue(newValue)); +void LXeSteppingMessenger::SetNewValue(G4UIcommand* command, G4String newValue) +{ + if(command == fOneStepPrimariesCmd) + { + fStepping->SetOneStepPrimaries( + fOneStepPrimariesCmd->GetNewBoolValue(newValue)); } } diff --git a/examples/extended/optical/LXe/src/LXeTrackingAction.cc b/examples/extended/optical/LXe/src/LXeTrackingAction.cc index d317006aff..ba8a183a49 100644 --- a/examples/extended/optical/LXe/src/LXeTrackingAction.cc +++ b/examples/extended/optical/LXe/src/LXeTrackingAction.cc @@ -28,68 +28,69 @@ /// \brief Implementation of the LXeTrackingAction class // // -#include "LXeTrajectory.hh" #include "LXeTrackingAction.hh" -#include "LXeUserTrackInformation.hh" -#include "LXeDetectorConstruction.hh" -#include "G4TrackingManager.hh" +#include "LXeDetectorConstruction.hh" +#include "LXeTrajectory.hh" +#include "LXeUserTrackInformation.hh" + +#include "G4OpticalPhoton.hh" #include "G4Track.hh" -#include "G4ParticleTypes.hh" +#include "G4TrackingManager.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeTrackingAction::LXeTrackingAction() -{} +LXeTrackingAction::LXeTrackingAction() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void LXeTrackingAction::PreUserTrackingAction(const G4Track* aTrack) { - //Let this be up to the user via vis.mac + // Let this be up to the user via vis.mac // fpTrackingManager->SetStoreTrajectory(true); - //Use custom trajectory class + // Use custom trajectory class fpTrackingManager->SetTrajectory(new LXeTrajectory(aTrack)); - //This user track information is only relevant to the photons + // This user track information is only relevant to the photons fpTrackingManager->SetUserTrackInformation(new LXeUserTrackInformation); - - /* const G4VProcess* creator = aTrack->GetCreatorProcess(); - if(creator) - G4cout<GetProcessName()<GimmeTrajectory(); - LXeUserTrackInformation* - trackInformation=(LXeUserTrackInformation*)aTrack->GetUserInformation(); + (LXeTrajectory*) fpTrackingManager->GimmeTrajectory(); + LXeUserTrackInformation* trackInformation = + (LXeUserTrackInformation*) aTrack->GetUserInformation(); - //Lets choose to draw only the photons that hit the sphere and a pmt - if(aTrack->GetDefinition()==G4OpticalPhoton::OpticalPhotonDefinition()){ - - const G4VProcess* creator=aTrack->GetCreatorProcess(); - if(creator && creator->GetProcessName()=="OpWLS"){ + // Let's choose to draw only the photons that hit the sphere and a pmt + if(aTrack->GetDefinition() == G4OpticalPhoton::OpticalPhotonDefinition()) + { + const G4VProcess* creator = aTrack->GetCreatorProcess(); + if(creator && creator->GetProcessName() == "OpWLS") + { trajectory->WLS(); trajectory->SetDrawTrajectory(true); } - if(LXeDetectorConstruction::GetSphereOn()){ - if((trackInformation->GetTrackStatus()&hitPMT)&& - (trackInformation->GetTrackStatus()&hitSphere)){ + if(LXeDetectorConstruction::GetSphereOn()) + { + if((trackInformation->GetTrackStatus() & hitPMT) && + (trackInformation->GetTrackStatus() & hitSphere)) + { trajectory->SetDrawTrajectory(true); } } - else{ - if(trackInformation->GetTrackStatus()&hitPMT) + else + { + if(trackInformation->GetTrackStatus() & hitPMT) trajectory->SetDrawTrajectory(true); } } - else //draw all other trajectories + // draw all other (not optical photon) trajectories + else trajectory->SetDrawTrajectory(true); if(trackInformation->GetForceDrawTrajectory()) diff --git a/examples/extended/optical/LXe/src/LXeTrajectory.cc b/examples/extended/optical/LXe/src/LXeTrajectory.cc index e4ea942dc5..4729102cc2 100644 --- a/examples/extended/optical/LXe/src/LXeTrajectory.cc +++ b/examples/extended/optical/LXe/src/LXeTrajectory.cc @@ -29,25 +29,29 @@ // // #include "LXeTrajectory.hh" -#include "G4TrajectoryPoint.hh" -#include "G4Trajectory.hh" -#include "G4ParticleTable.hh" -#include "G4ParticleTypes.hh" -#include "G4ThreeVector.hh" -#include "G4Polyline.hh" + #include "G4Circle.hh" #include "G4Colour.hh" +#include "G4ParticleTable.hh" +#include "G4ParticleTypes.hh" +#include "G4Polyline.hh" +#include "G4Polymarker.hh" +#include "G4ThreeVector.hh" +#include "G4Trajectory.hh" +#include "G4TrajectoryPoint.hh" #include "G4VisAttributes.hh" #include "G4VVisManager.hh" -#include "G4Polymarker.hh" G4ThreadLocal G4Allocator* LXeTrajectoryAllocator = nullptr; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXeTrajectory::LXeTrajectory() - :G4Trajectory(),fWls(false),fDrawit(false), - fForceNoDraw(false),fForceDraw(false) + : G4Trajectory() + , fWls(false) + , fDrawit(false) + , fForceNoDraw(false) + , fForceDraw(false) { fParticleDefinition = nullptr; } @@ -55,17 +59,21 @@ LXeTrajectory::LXeTrajectory() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXeTrajectory::LXeTrajectory(const G4Track* aTrack) - :G4Trajectory(aTrack),fWls(false),fDrawit(false) + : G4Trajectory(aTrack) + , fWls(false) + , fDrawit(false) { - fParticleDefinition=aTrack->GetDefinition(); + fParticleDefinition = aTrack->GetDefinition(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeTrajectory::LXeTrajectory(LXeTrajectory &right) - :G4Trajectory(right),fWls(right.fWls),fDrawit(right.fDrawit) +LXeTrajectory::LXeTrajectory(LXeTrajectory& right) + : G4Trajectory(right) + , fWls(right.fWls) + , fDrawit(right.fDrawit) { - fParticleDefinition=right.fParticleDefinition; + fParticleDefinition = right.fParticleDefinition; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -76,87 +84,88 @@ LXeTrajectory::~LXeTrajectory() {} void LXeTrajectory::DrawTrajectory() const { - // i_mode is no longer available as an argument of G4VTrajectory. - // In this exampple it was always called with an argument of 50. - const G4int i_mode = 50; - // Consider using commands /vis/modeling/trajectories. - - //Taken from G4VTrajectory and modified to select colours based on particle - //type and to selectively eliminate drawing of certain trajectories. + // Taken from G4VTrajectory and modified to select colours based on particle + // type and to selectively eliminate drawing of certain trajectories. if(!fForceDraw && (!fDrawit || fForceNoDraw)) return; - // If i_mode>=0, draws a trajectory as a polyline and, if i_mode!=0, - // adds markers - yellow circles for step points and magenta squares - // for auxiliary points, if any - whose screen size in pixels is - // given by std::abs(i_mode)/1000. E.g: i_mode = 5000 gives easily - // visible markers. - G4VVisManager* pVVisManager = G4VVisManager::GetConcreteInstance(); - if (!pVVisManager) return; - - const G4double markerSize = std::abs(i_mode)/1000; - G4bool lineRequired (i_mode >= 0); - G4bool markersRequired (markerSize > 0.); - + if(!pVVisManager) + return; + + const G4double markerSize = 0.05; + G4bool lineRequired = true; + G4bool markersRequired = true; + G4Polyline trajectoryLine; G4Polymarker stepPoints; G4Polymarker auxiliaryPoints; - - for (G4int i = 0; i < GetPointEntries() ; i++) { + + for(G4int i = 0; i < GetPointEntries(); ++i) + { G4VTrajectoryPoint* aTrajectoryPoint = GetPoint(i); - const std::vector* auxiliaries - = aTrajectoryPoint->GetAuxiliaryPoints(); - if (auxiliaries) { - for (size_t iAux = 0; iAux < auxiliaries->size(); ++iAux) { + const std::vector* auxiliaries = + aTrajectoryPoint->GetAuxiliaryPoints(); + if(auxiliaries) + { + for(size_t iAux = 0; iAux < auxiliaries->size(); ++iAux) + { const G4ThreeVector pos((*auxiliaries)[iAux]); - if (lineRequired) { + if(lineRequired) + { trajectoryLine.push_back(pos); } - if (markersRequired) { + if(markersRequired) + { auxiliaryPoints.push_back(pos); } } } const G4ThreeVector pos(aTrajectoryPoint->GetPosition()); - if (lineRequired) { + if(lineRequired) + { trajectoryLine.push_back(pos); } - if (markersRequired) { + if(markersRequired) + { stepPoints.push_back(pos); } } - - if (lineRequired) { + + if(lineRequired) + { G4Colour colour; - - if(fParticleDefinition==G4OpticalPhoton::OpticalPhotonDefinition()){ - if(fWls) //WLS photons are red - colour = G4Colour(1.,0.,0.); - else{ //Scintillation and Cerenkov photons are green - colour = G4Colour(0.,1.,0.); + + if(fParticleDefinition == G4OpticalPhoton::OpticalPhotonDefinition()) + { + if(fWls) // WLS photons are red + colour = G4Colour(1., 0., 0.); + else + { // Scintillation and Cerenkov photons are green + colour = G4Colour(0., 1., 0.); } } - else //All other particles are blue - colour = G4Colour(0.,0.,1.); - + else // All other particles are blue + colour = G4Colour(0., 0., 1.); + G4VisAttributes trajectoryLineAttribs(colour); trajectoryLine.SetVisAttributes(&trajectoryLineAttribs); pVVisManager->Draw(trajectoryLine); } - if (markersRequired) { + if(markersRequired) + { auxiliaryPoints.SetMarkerType(G4Polymarker::squares); auxiliaryPoints.SetScreenSize(markerSize); auxiliaryPoints.SetFillStyle(G4VMarker::filled); - G4VisAttributes auxiliaryPointsAttribs(G4Colour(0.,1.,1.)); // Magenta + G4VisAttributes auxiliaryPointsAttribs(G4Colour(0., 1., 1.)); // Magenta auxiliaryPoints.SetVisAttributes(&auxiliaryPointsAttribs); pVVisManager->Draw(auxiliaryPoints); stepPoints.SetMarkerType(G4Polymarker::circles); stepPoints.SetScreenSize(markerSize); stepPoints.SetFillStyle(G4VMarker::filled); - G4VisAttributes stepPointsAttribs(G4Colour(1.,1.,0.)); // Yellow + G4VisAttributes stepPointsAttribs(G4Colour(1., 1., 0.)); // Yellow stepPoints.SetVisAttributes(&stepPointsAttribs); pVVisManager->Draw(stepPoints); } diff --git a/examples/extended/optical/LXe/src/LXeUserTrackInformation.cc b/examples/extended/optical/LXe/src/LXeUserTrackInformation.cc index 56e6d98866..d0494d278d 100644 --- a/examples/extended/optical/LXe/src/LXeUserTrackInformation.cc +++ b/examples/extended/optical/LXe/src/LXeUserTrackInformation.cc @@ -33,7 +33,10 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... LXeUserTrackInformation::LXeUserTrackInformation() - : fStatus(active),fReflections(0),fForcedraw(false) {} + : fStatus(active) + , fReflections(0) + , fForcedraw(false) +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -43,9 +46,9 @@ LXeUserTrackInformation::~LXeUserTrackInformation() {} void LXeUserTrackInformation::AddTrackStatusFlag(int s) { - if(s&active) //track is now active - fStatus&=~inactive; //remove any flags indicating it is inactive - else if(s&inactive) //track is now inactive - fStatus&=~active; //remove any flags indicating it is active - fStatus|=s; //add new flags + if(s & active) // track is now active + fStatus &= ~inactive; // remove any flags indicating it is inactive + else if(s & inactive) // track is now inactive + fStatus &= ~active; // remove any flags indicating it is active + fStatus |= s; // add new flags } diff --git a/examples/extended/optical/LXe/src/LXeWLSFiber.cc b/examples/extended/optical/LXe/src/LXeWLSFiber.cc index 2cde4542ef..d4246b4165 100644 --- a/examples/extended/optical/LXe/src/LXeWLSFiber.cc +++ b/examples/extended/optical/LXe/src/LXeWLSFiber.cc @@ -29,88 +29,83 @@ // // #include "LXeWLSFiber.hh" + #include "globals.hh" -#include "G4LogicalSkinSurface.hh" -#include "G4LogicalBorderSurface.hh" +#include "G4Box.hh" +#include "G4LogicalVolume.hh" +#include "G4Material.hh" #include "G4SystemOfUnits.hh" +#include "G4Tubs.hh" G4LogicalVolume* LXeWLSFiber::fClad2_log = nullptr; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeWLSFiber::LXeWLSFiber(G4RotationMatrix *pRot, - const G4ThreeVector &tlate, - G4LogicalVolume *pMotherLogical, - G4bool pMany, - G4int pCopyNo, - LXeDetectorConstruction* c) - :G4PVPlacement(pRot,tlate, - new G4LogicalVolume(new G4Box("temp",1,1,1), - G4Material::GetMaterial("Vacuum"), - "temp",0,0,0), - "Cladding2",pMotherLogical,pMany,pCopyNo),fConstructor(c) +LXeWLSFiber::LXeWLSFiber(G4RotationMatrix* pRot, const G4ThreeVector& tlate, + G4LogicalVolume* pMotherLogical, G4bool pMany, + G4int pCopyNo, LXeDetectorConstruction* c) + : G4PVPlacement(pRot, tlate, + new G4LogicalVolume(new G4Box("temp", 1., 1., 1.), + G4Material::GetMaterial("Vacuum"), "temp", + 0, 0, 0), + "Cladding2", pMotherLogical, pMany, pCopyNo) + , fConstructor(c) { CopyValues(); // The Fiber // - G4Tubs* fiber_tube = - new G4Tubs("Fiber",fFiber_rmin,fFiber_rmax,fFiber_z,fFiber_sphi,fFiber_ephi); - - G4LogicalVolume* fiber_log = - new G4LogicalVolume(fiber_tube,G4Material::GetMaterial("PMMA"), - "Fiber",0,0,0); - + G4Tubs* fiber_tube = new G4Tubs("Fiber", fFiber_rmin, fFiber_rmax, fFiber_z, + fFiber_sphi, fFiber_ephi); + + G4LogicalVolume* fiber_log = new G4LogicalVolume( + fiber_tube, G4Material::GetMaterial("PMMA"), "Fiber", 0, 0, 0); + // Cladding (first layer) // - G4Tubs* clad1_tube = - new G4Tubs("Cladding1",fClad1_rmin,fClad1_rmax,fClad1_z,fClad1_sphi, - fClad1_ephi); - - G4LogicalVolume* clad1_log = - new G4LogicalVolume(clad1_tube,G4Material::GetMaterial("Pethylene1"), - "Cladding1",0,0,0); - + G4Tubs* clad1_tube = new G4Tubs("Cladding1", fClad1_rmin, fClad1_rmax, + fClad1_z, fClad1_sphi, fClad1_ephi); + + G4LogicalVolume* clad1_log = new G4LogicalVolume( + clad1_tube, G4Material::GetMaterial("Pethylene1"), "Cladding1", 0, 0, 0); + // Cladding (second layer) // - G4Tubs* clad2_tube = - new G4Tubs("Cladding2",fClad2_rmin,fClad2_rmax,fClad2_z,fClad2_sphi, - fClad2_ephi); - - fClad2_log = - new G4LogicalVolume(clad2_tube,G4Material::GetMaterial("Pethylene2"), - "Cladding2",0,0,0); - - new G4PVPlacement(0,G4ThreeVector(0.,0.,0.),fiber_log, - "Fiber", clad1_log,false,0); - new G4PVPlacement(0,G4ThreeVector(0.,0.,0.),clad1_log, - "Cladding1",fClad2_log,false,0); + G4Tubs* clad2_tube = new G4Tubs("Cladding2", fClad2_rmin, fClad2_rmax, + fClad2_z, fClad2_sphi, fClad2_ephi); + + fClad2_log = new G4LogicalVolume( + clad2_tube, G4Material::GetMaterial("Pethylene2"), "Cladding2", 0, 0, 0); + + new G4PVPlacement(0, G4ThreeVector(0., 0., 0.), fiber_log, "Fiber", clad1_log, + false, 0); + new G4PVPlacement(0, G4ThreeVector(0., 0., 0.), clad1_log, "Cladding1", + fClad2_log, false, 0); SetLogicalVolume(fClad2_log); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeWLSFiber::CopyValues(){ +void LXeWLSFiber::CopyValues() +{ + fFiber_rmin = 0.0 * cm; + fFiber_rmax = 0.1 * cm; + fFiber_z = fConstructor->GetScintX() / 2.; + fFiber_sphi = 0.0 * deg; + fFiber_ephi = 360. * deg; - fFiber_rmin = 0.00*cm; - fFiber_rmax = 0.10*cm; - fFiber_z = fConstructor->GetScintX()/2; - fFiber_sphi = 0.00*deg; - fFiber_ephi = 360.*deg; - - fClad1_rmin = 0.;// fFiber_rmax; - fClad1_rmax = fFiber_rmax + 0.015*fFiber_rmax; + fClad1_rmin = 0.; // fFiber_rmax; + fClad1_rmax = fFiber_rmax + 0.015 * fFiber_rmax; fClad1_z = fFiber_z; fClad1_sphi = fFiber_sphi; fClad1_ephi = fFiber_ephi; - fClad2_rmin = 0.;//fClad1_rmax; - fClad2_rmax = fClad1_rmax + 0.015*fFiber_rmax; + fClad2_rmin = 0.; // fClad1_rmax; + fClad2_rmax = fClad1_rmax + 0.015 * fFiber_rmax; fClad2_z = fFiber_z; fClad2_sphi = fFiber_sphi; fClad2_ephi = fFiber_ephi; - } diff --git a/examples/extended/optical/LXe/src/LXeWLSSlab.cc b/examples/extended/optical/LXe/src/LXeWLSSlab.cc index eeccd49cd4..3967b50ca8 100644 --- a/examples/extended/optical/LXe/src/LXeWLSSlab.cc +++ b/examples/extended/optical/LXe/src/LXeWLSSlab.cc @@ -29,63 +29,62 @@ // // #include "LXeWLSSlab.hh" + #include "LXeWLSFiber.hh" #include "globals.hh" -#include "G4LogicalSkinSurface.hh" -#include "G4LogicalBorderSurface.hh" +#include "G4Box.hh" +#include "G4LogicalVolume.hh" +#include "G4Material.hh" #include "G4SystemOfUnits.hh" G4LogicalVolume* LXeWLSSlab::fScintSlab_log = nullptr; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -LXeWLSSlab::LXeWLSSlab(G4RotationMatrix *pRot, - const G4ThreeVector &tlate, - G4LogicalVolume *pMotherLogical, - G4bool pMany, - G4int pCopyNo, - LXeDetectorConstruction* c) - :G4PVPlacement(pRot,tlate, - new G4LogicalVolume(new G4Box("temp",1,1,1), - G4Material::GetMaterial("Vacuum"), - "temp",0,0,0), - "Slab",pMotherLogical,pMany,pCopyNo),fConstructor(c) +LXeWLSSlab::LXeWLSSlab(G4RotationMatrix* pRot, const G4ThreeVector& tlate, + G4LogicalVolume* pMotherLogical, G4bool pMany, + G4int pCopyNo, LXeDetectorConstruction* c) + : G4PVPlacement(pRot, tlate, + new G4LogicalVolume(new G4Box("temp", 1., 1., 1.), + G4Material::GetMaterial("Vacuum"), "temp", + 0, 0, 0), + "Slab", pMotherLogical, pMany, pCopyNo) + , fConstructor(c) { CopyValues(); - - G4double slab_x = fScint_x/2.; - G4double slab_y = fScint_y/2.; - - G4Box* ScintSlab_box = new G4Box("Slab",slab_x,slab_y,fSlab_z); - - fScintSlab_log - = new G4LogicalVolume(ScintSlab_box, - G4Material::GetMaterial("Polystyrene"), - "Slab",0,0,0); - - G4double spacing = 2*slab_y/fNfibers; - + + G4double slab_x = fScint_x / 2.; + G4double slab_y = fScint_y / 2.; + + G4Box* ScintSlab_box = new G4Box("Slab", slab_x, slab_y, fSlab_z); + + fScintSlab_log = new G4LogicalVolume( + ScintSlab_box, G4Material::GetMaterial("Polystyrene"), "Slab", 0, 0, 0); + + G4double spacing = 2. * slab_y / fNfibers; + G4RotationMatrix* rm = new G4RotationMatrix(); - rm->rotateY(90*deg); - - //Place fibers - for(G4int i=0;irotateY(90. * deg); + + // Place fibers + for(G4int i = 0; i < fNfibers; ++i) + { + G4double Y = -(spacing) * (fNfibers - 1) * 0.5 + i * spacing; + new LXeWLSFiber(rm, G4ThreeVector(0., Y, 0.), fScintSlab_log, false, 0, + fConstructor); } - + SetLogicalVolume(fScintSlab_log); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void LXeWLSSlab::CopyValues(){ - - fScint_x=fConstructor->GetScintX(); - fScint_y=fConstructor->GetScintY(); - fScint_z=fConstructor->GetScintZ(); - fNfibers=fConstructor->GetNFibers(); - fSlab_z=fConstructor->GetSlabZ(); +void LXeWLSSlab::CopyValues() +{ + fScint_x = fConstructor->GetScintX(); + fScint_y = fConstructor->GetScintY(); + fScint_z = fConstructor->GetScintZ(); + fNfibers = fConstructor->GetNFibers(); + fSlab_z = fConstructor->GetSlabZ(); } diff --git a/examples/extended/optical/LXe/vis.mac b/examples/extended/optical/LXe/vis.mac index a92196637b..daf39ffbe5 100644 --- a/examples/extended/optical/LXe/vis.mac +++ b/examples/extended/optical/LXe/vis.mac @@ -1,5 +1,5 @@ # -# Macro file for the initialization phase of "TestEm5.cc" +# Macro file for the initialization phase of "LXe" # Sets some default verbose # and initializes the graphic. # diff --git a/examples/extended/optical/LXe/wls.mac b/examples/extended/optical/LXe/wls.mac index e4d7dae3eb..d3f239ffcc 100644 --- a/examples/extended/optical/LXe/wls.mac +++ b/examples/extended/optical/LXe/wls.mac @@ -1,9 +1,12 @@ -/run/initialize /control/verbose 2 /run/verbose 2 /tracking/verbose 0 -/LXe/eventVerbose 0 +/process/optical/verbose 1 +/process/optical/processActivation OpWLS2 false +/run/initialize + +/LXe/eventVerbose 0 /LXe/detector/defaults /LXe/oneStepPrimaries false @@ -15,9 +18,9 @@ /gun/energy 511 keV /analysis/setFileName wls -/analysis/h1/set 3 100 -1 10000 -/analysis/h1/set 4 100 -1 100 -/analysis/h1/set 5 100 -1 10000 +/analysis/h1/set 3 100 0 10000 +/analysis/h1/set 4 100 0 100 +/analysis/h1/set 5 100 0 10000 /run/printProgress 10 /run/beamOn 100 diff --git a/examples/extended/optical/OpNovice/.README.txt b/examples/extended/optical/OpNovice/.README.txt index 16af5aa062..f0c90b970b 100644 --- a/examples/extended/optical/OpNovice/.README.txt +++ b/examples/extended/optical/OpNovice/.README.txt @@ -12,10 +12,13 @@ examples/extended/optical/LXe and wls \section ExampleOpNovice_s1 main() - Define Random Number Engine and initial seed + Define Random Number generator initial seed \section ExampleOpNovice_s2 G4OpticalPhysics + The G4OpticalPhysics physics class is used. The messenger is the + G4OpticalParametersMessenger class. + - Define particles; including - *** G4OpticalPhoton *** - Define processes; including - *** G4Cerenkov *** @@ -44,12 +47,11 @@ examples/extended/optical/LXe and wls A messenger command allows to define interactively the polarization of an primary optical photon (see for instance optPhoton.mac) -\section ExampleOpNovice_s5 G4UserRunAction +\section ExampleOpNovice_s5 G4UserRunAction and G4Run - - Define G4Timer (start/stop) - - Set verbose levels + - Used to accumulate statistics. -\section ExampleOpNovice_s6 G4UserStackingAction +\section ExampleOpNovice_s6 G4UserStackingAction and G4UserEventAction Show how to count the number of secondary particles in an event @@ -70,7 +72,7 @@ examples/extended/optical/LXe and wls This example handles the program arguments in a new way. It can be run with the following optional arguments: \verbatim - % OpNovice [-m macro ] [-u UIsession] [-t nThreads] + $ OpNovice [-m macro ] [-u UIsession] [-t nThreads] \endverbatim The -t option is available only in multi-threading mode @@ -80,12 +82,12 @@ examples/extended/optical/LXe and wls - execute OpNovice in 'batch' mode from macro files \verbatim - % OpNovice -m OpNovice.in + $ OpNovice -m OpNovice.in \endverbatim - execute OpNovice in 'interactive mode' with visualization \verbatim -% OpNovice +$ OpNovice .... Idle> type your commands. For instance: Idle> /control/execute optPhoton.mac @@ -93,4 +95,14 @@ Idle> /control/execute optPhoton.mac Idle> exit \endverbatim +Macros +------ + + The following macros are provided: + + optPhoton.mac: Shoot optical photons with energy 3 eV + OpNovice.in: Shoot positrons with energy 500 keV. + gui.mac: Configure the graphical user interface. + vis.mac: Configure visualization. + */ diff --git a/examples/extended/optical/OpNovice/CMakeLists.txt b/examples/extended/optical/OpNovice/CMakeLists.txt index a85c4d88d9..0d4c99ba5d 100644 --- a/examples/extended/optical/OpNovice/CMakeLists.txt +++ b/examples/extended/optical/OpNovice/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(OpNovice) #---------------------------------------------------------------------------- diff --git a/examples/extended/optical/OpNovice/History b/examples/extended/optical/OpNovice/History index f3f9a60b38..d7e025895e 100644 --- a/examples/extended/optical/OpNovice/History +++ b/examples/extended/optical/OpNovice/History @@ -14,6 +14,18 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 1, 2020 D. Sawkey (OpNovice-V10-06-01) +- Print out process statistics at end of run. Added EventAction and Run + classes for this. +- Update macros, especially to run more particles. Update gui.mac +- Migrate to new G4RunManagerFactory +- Remove G4Timer +- Use default random number generator +- Apply clang-format style + +August 4, 2020 D. Sawkey (OpNovice-V10-06-00) +- Add material properties using new interface with std::vectors + October 29, 2019 D. Sawkey (OpNovice-V10-05-00) - Use G4OpticalPhysics and G4SteppingVerbose - remove unused surface parameters diff --git a/examples/extended/optical/OpNovice/OpNovice.cc b/examples/extended/optical/OpNovice/OpNovice.cc index 4165fd1e5a..ae837eec3a 100644 --- a/examples/extended/optical/OpNovice/OpNovice.cc +++ b/examples/extended/optical/OpNovice/OpNovice.cc @@ -39,48 +39,42 @@ // Version: 5.0 // Created: 1996-04-30 // Author: Juliet Armstrong -// mail: gum@triumf.ca // //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#include "G4Types.hh" - -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif - -#include "G4UImanager.hh" - -#include "FTFP_BERT.hh" -#include "G4OpticalPhysics.hh" -#include "G4EmStandardPhysics_option4.hh" - #include "OpNoviceDetectorConstruction.hh" #include "OpNoviceActionInitialization.hh" -#include "G4VisExecutive.hh" +#include "FTFP_BERT.hh" +#include "G4EmStandardPhysics_option4.hh" +#include "G4OpticalPhysics.hh" +#include "G4RunManagerFactory.hh" +#include "G4Types.hh" #include "G4UIExecutive.hh" +#include "G4UImanager.hh" +#include "G4VisExecutive.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -namespace { - void PrintUsage() { +namespace +{ + void PrintUsage() + { G4cerr << " Usage: " << G4endl; G4cerr << " OpNovice [-m macro ] [-u UIsession] [-t nThreads] [-r seed] " << G4endl; G4cerr << " note: -t option is available only for multi-threaded mode." << G4endl; } -} +} // namespace //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -int main(int argc,char** argv) +int main(int argc, char** argv) { // Evaluate arguments // - if ( argc > 9 ) { + if(argc > 9) + { PrintUsage(); return 1; } @@ -92,16 +86,22 @@ int main(int argc,char** argv) #endif G4long myseed = 345354; - for ( G4int i=1; i 0 ) runManager->SetNumberOfThreads(nThreads); -#else - G4RunManager * runManager = new G4RunManager; + if(nThreads > 0) + runManager->SetNumberOfThreads(nThreads); #endif // Seed the random number generator manually @@ -132,43 +127,34 @@ int main(int argc,char** argv) // Set mandatory initialization classes // // Detector construction - runManager-> SetUserInitialization(new OpNoviceDetectorConstruction()); + runManager->SetUserInitialization(new OpNoviceDetectorConstruction()); // Physics list G4VModularPhysicsList* physicsList = new FTFP_BERT; physicsList->ReplacePhysics(new G4EmStandardPhysics_option4()); G4OpticalPhysics* opticalPhysics = new G4OpticalPhysics(); physicsList->RegisterPhysics(opticalPhysics); - runManager-> SetUserInitialization(physicsList); + runManager->SetUserInitialization(physicsList); - // User action initialization runManager->SetUserInitialization(new OpNoviceActionInitialization()); - // Initialize visualization - // G4VisExecutive can take a verbosity argument - see /vis/verbose guidance. G4VisManager* visManager = new G4VisExecutive("Quiet"); visManager->Initialize(); - // Get the pointer to the User Interface manager G4UImanager* UImanager = G4UImanager::GetUIpointer(); - if ( macro.size() ) { - // Batch mode - G4String command = "/control/execute "; - UImanager->ApplyCommand(command+macro); - } - else // Define UI session for interactive mode + if(macro.size()) { - UImanager->ApplyCommand("/control/execute vis.mac"); - if (ui->IsGUI()) - UImanager->ApplyCommand("/control/execute gui.mac"); - ui->SessionStart(); - delete ui; + G4String command = "/control/execute "; + UImanager->ApplyCommand(command + macro); + } + else // Define UI session for interactive mode + { + UImanager->ApplyCommand("/control/execute vis.mac"); + if(ui->IsGUI()) + UImanager->ApplyCommand("/control/execute gui.mac"); + ui->SessionStart(); + delete ui; } - - // Job termination - // Free the store: user actions, physics_list and detector_description are - // owned and deleted by the run manager, so they should not - // be deleted in the main() program ! delete visManager; delete runManager; diff --git a/examples/extended/optical/OpNovice/OpNovice.err b/examples/extended/optical/OpNovice/OpNovice.err deleted file mode 100644 index e69de29bb2..0000000000 diff --git a/examples/extended/optical/OpNovice/OpNovice.in b/examples/extended/optical/OpNovice/OpNovice.in index 86f92066bb..85bcbdd823 100644 --- a/examples/extended/optical/OpNovice/OpNovice.in +++ b/examples/extended/optical/OpNovice/OpNovice.in @@ -1,15 +1,21 @@ /control/verbose 2 -/tracking/verbose 0 +/tracking/verbose 1 +/process/optical/verbose 1 +/run/verbose 1 +/control/cout/ignoreThreadsExcept 0 # -/process/optical/verbose 0 /run/initialize # /gun/particle e+ /gun/energy 500 keV # -/run/beamOn 1 +/process/optical/cerenkov/setMaxBetaChange 1 +/run/beamOn 10 # +/tracking/verbose 0 /process/optical/cerenkov/setMaxPhotons 15 +/process/optical/cerenkov/setTrackSecondariesFirst false +/process/optical/scintillation/setYieldFactor 0.3 # -/run/beamOn 1 +/run/beamOn 1000 diff --git a/examples/extended/optical/OpNovice/OpNovice.out b/examples/extended/optical/OpNovice/OpNovice.out index ef7fd62552..968ee3b640 100644 --- a/examples/extended/optical/OpNovice/OpNovice.out +++ b/examples/extended/optical/OpNovice/OpNovice.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -14,12 +15,15 @@ <<< Geant4 Physics List simulation engine: FTFP_BERT -G4VModularPhysicsList::ReplacePhysics: G4EmStandardwith type : 2 is replaces with G4EmStandard_opt4 -/tracking/verbose 0 +G4VModularPhysicsList::ReplacePhysics: G4EmStandard with type : 2 is replaced with G4EmStandard_opt4 +/tracking/verbose 1 +/process/optical/verbose 1 +/run/physicsModified +/run/verbose 1 +/control/cout/ignoreThreadsExcept 0 # -/process/optical/verbose 0 /run/initialize -Water G4MaterialPropertiesTable +Water G4MaterialPropertiesTable: 0: RINDEX 2.034e-06 1.3435 2.068e-06 1.344 @@ -262,7 +266,7 @@ Water G4MaterialPropertiesTable 10 16: YIELDRATIO 0.8 -Air G4MaterialPropertiesTable +Air G4MaterialPropertiesTable: 0: RINDEX 2.034e-06 1 2.068e-06 1 @@ -329,15 +333,17 @@ Air G4MaterialPropertiesTable 3.8185e-06 299.792 3.9395e-06 299.792 4.136e-06 299.792 -LUT DAVIS - data file: /cvmfs/geant4.cern.ch/share/data/RealSurface2.1.1/Rough_LUT.dat read in! -Reflectivity LUT DAVIS - data file: /cvmfs/geant4.cern.ch/share/data/RealSurface2.1.1/Rough_LUTR.dat read in! +G4OpticalSurface: data file /cvmfs/geant4.cern.ch/share/data/RealSurface2.2/Rough_LUT.z successfully read in. +LUT DAVIS - data file: Rough_LUT.z read in! +G4OpticalSurface: data file /cvmfs/geant4.cern.ch/share/data/RealSurface2.2/Rough_LUTR.z successfully read in. +LUT DAVIS - reflectivity data file: Rough_LUTR.z read in! Surface type = 3 Surface finish = 30 Surface model = 3 Surface parameter ----------------- -0 + sigma_alpha: 0 Surface type = 1 Surface finish = 0 @@ -345,9 +351,9 @@ Reflectivity LUT DAVIS - data file: /cvmfs/geant4.cern.ch/share/data/RealSurface Surface parameter ----------------- -1 + polish: 1 -Air Surface G4MaterialPropertiesTable +Air Surface G4MaterialPropertiesTable: 1: REFLECTIVITY 2.034e-06 0.3 4.136e-06 0.5 @@ -355,20 +361,28 @@ Air Surface G4MaterialPropertiesTable 2.034e-06 0.8 4.136e-06 1 - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV for neutron : 3 to 6 GeV ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 +OpAbsorption is created +OpRayleigh is created +OpMieHG is created +OpBoundary is created +OpWLS is created +OpWLS2 is created ### Birks coefficients used in run time Water 0.126 mm/MeV 0.0126 g/cm^2/MeV massFactor= 85.0756 effCharge= 62.0606 # /gun/particle e+ /gun/energy 500 keV # -/run/beamOn 1 +/process/optical/cerenkov/setMaxBetaChange 1 +/run/physicsModified +/run/beamOn 10 ### === Deexcitation model UAtomDeexcitation is activated for 1 region: DefaultRegionForTheWorld 1 0 0 @@ -398,10 +412,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -424,7 +439,7 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 @@ -433,10 +448,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -459,7 +475,7 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -472,9 +488,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -488,14 +504,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -508,9 +524,9 @@ nuclearStopping: for proton SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -524,9 +540,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -541,9 +557,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -557,14 +573,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -573,9 +589,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -589,14 +605,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -605,9 +621,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -621,14 +637,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -637,9 +653,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -654,14 +670,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -670,9 +686,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -687,25 +703,57 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV +2.034e-06MeV 857215mm +2.068e-06MeV 798981mm +2.103e-06MeV 744094mm +2.139e-06MeV 692453mm +2.177e-06MeV 642761mm +2.216e-06MeV 596288mm +2.256e-06MeV 552883mm +2.298e-06MeV 511499mm +2.341e-06MeV 473039mm +2.386e-06MeV 436597mm +2.433e-06MeV 402212mm +2.481e-06MeV 369901mm +2.532e-06MeV 338815mm +2.585e-06MeV 310631mm +2.64e-06MeV 284407mm +2.697e-06MeV 259459mm +2.757e-06MeV 236846mm +2.82e-06MeV 215010mm +2.885e-06MeV 195502mm +2.954e-06MeV 177163mm +3.026e-06MeV 160259mm +3.102e-06MeV 144549mm +3.181e-06MeV 130201mm +3.265e-06MeV 116849mm +3.353e-06MeV 104397mm +3.446e-06MeV 93281.4mm +3.545e-06MeV 82768mm +3.649e-06MeV 73439.3mm +3.76e-06MeV 64889mm +3.877e-06MeV 57179.4mm +4.002e-06MeV 50166.8mm +4.136e-06MeV 43700.8mm msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -719,14 +767,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -735,9 +783,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -751,14 +799,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -787,6 +835,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -861,6 +931,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -972,8 +1055,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -1038,8 +1121,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -1080,17 +1163,12773 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= -### Run 0 start. -Number of Scintillation photons produced in this event : 64 -Number of Cerenkov photons produced in this event : 23 -number of event = 1 User=0.000000s Real=0.008677s Sys=0.000000s -# -/process/optical/cerenkov/setMaxPhotons 15 -# -/run/beamOn 1 -### Run 1 start. -Number of Scintillation photons produced in this event : 66 -Number of Cerenkov photons produced in this event : 27 -number of event = 1 User=0.010000s Real=0.008849s Sys=0.000000s + +========= Table of registered couples ============================ + +Index : 0 used in the geometry : Yes + Material : Air + Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um + Energy thresholds : gamma 990 eV e- 990 eV e+ 990 eV proton 70 keV + Region(s) which use this couple : + DefaultRegionForTheWorld + +Index : 1 used in the geometry : Yes + Material : Water + Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um + Energy thresholds : gamma 2.51944 keV e- 276.265 keV e+ 270.751 keV proton 70 keV + Region(s) which use this couple : + DefaultRegionForTheWorld + +================================================================== + +### Run 0 starts. + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 0.5 0 0 0 Tank initStep + 1 0.00612 0 0 0.499 0.000597 0.00612 0.00612 Tank msc + 2 0.14 0.000316 -0.00161 0.475 0.0244 0.14 0.146 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0985 0.000217 -0.00111 3.03e-06 0 0 0 Tank initStep + 1 5e+03 2.46e+03 -1.77e+03 3.03e-06 0 5.85e+03 5.85e+03 World Transportation + 2 1e+04 9.15e+03 -9.73e+03 3.03e-06 0 1.15e+04 1.74e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.109 0.000242 -0.00124 3.3e-06 0 0 0 Tank initStep + 1 4.11e+03 -2.03e+03 -1.43e+03 3.3e-06 3.3e-06 4.8e+03 4.8e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 0.14 0.000316 -0.00161 0.475 0 0 0.146 Tank initStep + 3 0.254 -0.0478 -0.0136 0.453 0.0215 0.126 0.272 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 9, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.185 -0.0184 -0.00628 3.31e-06 0 0 0 Tank initStep + 1 2.3e+03 -2.73e+03 -5e+03 3.31e-06 0 6.14e+03 6.14e+03 World Transportation + 2 5.72e+03 -5.52e+03 -1e+04 3.31e-06 0 6.67e+03 1.28e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 8, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.149 -0.00325 -0.0025 4.06e-06 0 0 0 Tank initStep + 1 3.18e+03 613 -5e+03 4.06e-06 0 5.96e+03 5.96e+03 World Transportation + 2 3.18e+03 613 -5e+03 4.06e-06 0 0 5.96e+03 Tank Transportation + 3 5e+03 2.43e+03 -1.58e+03 4.06e-06 0 4.28e+03 1.02e+04 World Transportation + 4 5e+03 2.43e+03 -1.58e+03 4.06e-06 0 0 1.02e+04 Tank Transportation + 5 3.6e+03 3.99e+03 2.01e+03 4.06e-06 4.06e-06 4.16e+03 1.44e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.21 -0.0289 -0.00889 3.99e-06 0 0 0 Tank initStep + 1 5e+03 415 -1.78e+03 3.99e-06 0 5.32e+03 5.32e+03 World Transportation + 2 5e+03 415 -1.78e+03 3.99e-06 0 0 5.32e+03 Tank Transportation + 3 2.34e+03 3.16e+03 -5e+03 3.99e-06 0 5e+03 1.03e+04 World Transportation + 4 2.34e+03 3.16e+03 -5e+03 3.99e-06 0 0 1.03e+04 Tank Transportation + 5 1.08e+03 5e+03 -3.96e+03 3.99e-06 0 2.46e+03 1.28e+04 World Transportation + 6 -1e+04 8.67e+03 6.04e+03 3.99e-06 0 1.54e+04 2.81e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.153 -0.00496 -0.00293 2.48e-06 0 0 0 Tank initStep + 1 5e+03 -4.56e+03 -3.68e+03 2.48e-06 0 7.7e+03 7.7e+03 World Transportation + 2 5e+03 -4.56e+03 -3.68e+03 2.48e-06 0 0 7.7e+03 Tank Transportation + 3 4.62e+03 -5e+03 -4.13e+03 2.48e-06 0 731 8.44e+03 World Transportation + 4 4.62e+03 -5e+03 -4.13e+03 2.48e-06 0 0 8.44e+03 Tank Transportation + 5 3.74e+03 -3.75e+03 -5e+03 2.48e-06 0 1.76e+03 1.02e+04 World Transportation + 6 3.74e+03 -3.75e+03 -5e+03 2.48e-06 0 0 1.02e+04 Tank Transportation + 7 -5e+03 1.81e+03 3.49e+03 2.48e-06 0 1.34e+04 2.36e+04 World Transportation + 8 -5e+03 1.81e+03 3.49e+03 2.48e-06 0 0 2.36e+04 Tank Transportation + 9 -3.1e+03 2.19e+03 5e+03 2.48e-06 0 2.46e+03 2.6e+04 World Transportation + 10 -3.1e+03 2.19e+03 5e+03 2.48e-06 0 0 2.6e+04 Tank Transportation + 11 -239 2.05e+03 1.19e+03 2.48e-06 2.48e-06 4.77e+03 3.08e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.191 -0.0211 -0.00696 3.27e-06 0 0 0 Tank initStep + 1 3.95e+03 -5e+03 -1.76e+03 3.27e-06 0 6.61e+03 6.61e+03 World Transportation + 2 3.95e+03 -5e+03 -1.76e+03 3.27e-06 0 0 6.61e+03 Tank Transportation + 3 5e+03 -4.7e+03 -2.01e+03 3.27e-06 0 1.12e+03 7.73e+03 World Transportation + 4 1e+04 -2.35e+03 -4.26e+03 3.27e-06 0 5.97e+03 1.37e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.178 -0.0155 -0.00556 3.78e-06 0 0 0 Tank initStep + 1 5e+03 -2.81e+03 -4.04e+03 3.78e-06 0 7.02e+03 7.02e+03 World Transportation + 2 5e+03 -2.81e+03 -4.04e+03 3.78e-06 0 0 7.02e+03 Tank Transportation + 3 3.28e+03 -4.48e+03 -5e+03 3.78e-06 0 2.58e+03 9.6e+03 World Transportation + 4 3.28e+03 -4.48e+03 -5e+03 3.78e-06 0 0 9.6e+03 Tank Transportation + 5 2.16e+03 -5e+03 -4.11e+03 3.78e-06 0 1.52e+03 1.11e+04 World Transportation + 6 2.16e+03 -5e+03 -4.11e+03 3.78e-06 0 0 1.11e+04 Tank Transportation + 7 -2.11e+03 -3.24e+03 -194 3.78e-06 3.78e-06 6.06e+03 1.72e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 0.254 -0.0478 -0.0136 0.453 0 0 0.272 Tank initStep + 4 0.367 -0.0585 -0.00603 0.431 0.0221 0.115 0.387 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 13, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.285 -0.0507 -0.0116 3.47e-06 0 0 0 Tank initStep + 1 1.88 1.89e+03 -5e+03 3.47e-06 0 5.35e+03 5.35e+03 World Transportation + 2 1.88 1.89e+03 -5e+03 3.47e-06 0 0 5.35e+03 Tank Transportation + 3 -35.6 5e+03 -2.48e+03 3.47e-06 0 4e+03 9.35e+03 World Transportation + 4 -35.6 5e+03 -2.48e+03 3.47e-06 0 0 9.35e+03 Tank Transportation + 5 1.82e+03 2.76e+03 2.32e+03 3.47e-06 3.47e-06 5.62e+03 1.5e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 12, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.353 -0.0573 -0.00693 2.69e-06 0 0 0 Tank initStep + 1 5e+03 -3.39e+03 -926 2.69e-06 0 6.11e+03 6.11e+03 World Transportation + 2 5e+03 -3.39e+03 -926 2.69e-06 0 0 6.11e+03 Tank Transportation + 3 2.34e+03 -3.82e+03 -2.51e+03 2.69e-06 2.69e-06 3.12e+03 9.24e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 11, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.336 -0.0556 -0.0081 4.04e-06 0 0 0 Tank initStep + 1 1.78e+03 -661 215 4.04e-06 4.04e-06 1.91e+03 1.91e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 10, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.337 -0.0557 -0.00806 2.06e-06 0 0 0 Tank initStep + 1 4.84e+03 644 -1.9e+03 2.06e-06 2.06e-06 5.24e+03 5.24e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 0.367 -0.0585 -0.00603 0.431 0 0 0.387 Tank initStep + 5 0.465 -0.0384 0.0195 0.416 0.0156 0.104 0.49 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 15, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.415 -0.0486 0.00661 3.92e-06 0 0 0 Tank initStep + 1 3.21e+03 5e+03 1.41e+03 3.92e-06 0 6.1e+03 6.1e+03 World Transportation + 2 3.21e+03 5e+03 1.41e+03 3.92e-06 0 0 6.1e+03 Tank Transportation + 3 5e+03 1.32e+03 3.76e+03 3.92e-06 0 4.72e+03 1.08e+04 World Transportation + 4 5e+03 1.32e+03 3.76e+03 3.92e-06 0 0 1.08e+04 Tank Transportation + 5 484 -2.15e+03 5e+03 3.92e-06 0 5.83e+03 1.67e+04 World Transportation + 6 484 -2.15e+03 5e+03 3.92e-06 0 0 1.67e+04 Tank Transportation + 7 -4.85e+03 -5e+03 -475 3.92e-06 0 8.16e+03 2.48e+04 World Transportation + 8 -1e+04 -6.46e+03 -9.5e+03 3.92e-06 0 1.05e+04 3.53e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 14, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.434 -0.0447 0.0115 3.33e-06 0 0 0 Tank initStep + 1 5e+03 428 -1.18e+03 3.33e-06 0 5.15e+03 5.15e+03 World Transportation + 2 1e+04 3.05e+03 -3.45e+03 3.33e-06 0 6.09e+03 1.12e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 0.465 -0.0384 0.0195 0.416 0 0 0.49 Tank initStep + 6 0.545 0.000228 0.0533 0.4 0.0153 0.0964 0.587 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 17, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.492 -0.0254 0.0309 3.54e-06 0 0 0 Tank initStep + 1 -4.89e+03 2.21e+03 -2.63e+03 3.54e-06 3.54e-06 5.98e+03 5.98e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 16, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.504 -0.0196 0.036 3.67e-06 0 0 0 Tank initStep + 1 1.2e+03 1.43e+03 1.5e+03 3.67e-06 3.67e-06 2.39e+03 2.39e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 0.545 0.000228 0.0533 0.4 0 0 0.587 Tank initStep + 7 0.62 0.0363 0.084 0.385 0.0157 0.0894 0.676 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 18, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.597 0.0254 0.0747 3.59e-06 0 0 0 Tank initStep + 1 4.24e+03 1.92e+03 5e+03 3.59e-06 0 6.83e+03 6.83e+03 World Transportation + 2 4.24e+03 1.92e+03 5e+03 3.59e-06 0 0 6.83e+03 Tank Transportation + 3 5e+03 2.7e+03 3.39e+03 3.59e-06 0 1.94e+03 8.77e+03 World Transportation + 4 5e+03 2.7e+03 3.39e+03 3.59e-06 0 0 8.77e+03 Tank Transportation + 5 -4.21e+03 3.88e+03 980 3.59e-06 3.59e-06 9.59e+03 1.84e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 0.62 0.0363 0.084 0.385 0 0 0.676 Tank initStep + 8 0.687 0.0543 0.128 0.366 0.019 0.0826 0.759 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 21, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.675 0.0513 0.121 2.29e-06 0 0 0 Tank initStep + 1 -2.89e+03 -1.85e+03 154 2.29e-06 2.29e-06 3.43e+03 3.43e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 20, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.665 0.0486 0.114 3.52e-06 0 0 0 Tank initStep + 1 4.92e+03 2.61e+03 -1.2e+03 3.52e-06 3.52e-06 5.7e+03 5.7e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 19, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.642 0.0423 0.0987 2.21e-06 0 0 0 Tank initStep + 1 3.44e+03 169 5e+03 2.21e-06 0 6.07e+03 6.07e+03 World Transportation + 2 7.59e+03 674 1e+04 2.21e-06 0 6.52e+03 1.26e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 0.687 0.0543 0.128 0.366 0 0 0.759 Tank initStep + 9 0.752 0.0634 0.164 0.349 0.017 0.0746 0.833 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 24, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.726 0.0598 0.15 2.22e-06 0 0 0 Tank initStep + 1 5e+03 1.22e+03 -1.35e+03 2.22e-06 0 5.32e+03 5.32e+03 World Transportation + 2 5e+03 1.22e+03 -1.35e+03 2.22e-06 0 0 5.32e+03 Tank Transportation + 3 221 5e+03 8.85 2.22e-06 0 6.24e+03 1.16e+04 World Transportation + 4 221 5e+03 8.85 2.22e-06 0 0 1.16e+04 Tank Transportation + 5 -5e+03 1.9e+03 534 2.22e-06 0 6.09e+03 1.77e+04 World Transportation + 6 -1e+04 -2.85e+03 395 2.22e-06 0 6.89e+03 2.46e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 23, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.697 0.0558 0.134 2.56e-06 0 0 0 Tank initStep + 1 -895 5e+03 -1.94e+03 2.56e-06 0 5.44e+03 5.44e+03 World Transportation + 2 -3.03e+03 9.16e+03 -1e+04 2.56e-06 0 9.32e+03 1.48e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 22, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.703 0.0566 0.137 3.64e-06 0 0 0 Tank initStep + 1 5e+03 -1.78e+03 2.67e+03 3.64e-06 0 5.94e+03 5.94e+03 World Transportation + 2 5e+03 -1.78e+03 2.67e+03 3.64e-06 0 0 5.94e+03 Tank Transportation + 3 2.93e+03 -1.76e+03 5e+03 3.64e-06 0 3.12e+03 9.06e+03 World Transportation + 4 2.93e+03 -1.76e+03 5e+03 3.64e-06 0 0 9.06e+03 Tank Transportation + 5 -2.38e+03 -612 -5e+03 3.64e-06 0 1.14e+04 2.04e+04 World Transportation + 6 -6.42e+03 -477 -1e+04 3.64e-06 0 6.43e+03 2.69e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 0.752 0.0634 0.164 0.349 0 0 0.833 Tank initStep + 10 0.792 0.0585 0.215 0.334 0.015 0.0678 0.901 Tank Cerenkov + 11 0.816 0.0566 0.269 0.323 0.0106 0.0622 0.964 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 26, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.792 0.0585 0.215 3.03e-06 0 0 0 Tank initStep + 1 1.17e+03 1.53e+03 5e+03 3.03e-06 0 5.36e+03 5.36e+03 World Transportation + 2 1.17e+03 1.53e+03 5e+03 3.03e-06 0 0 5.36e+03 Tank Transportation + 3 1.66e+03 3.65e+03 3.61e+03 3.03e-06 0 2.59e+03 7.95e+03 Tank OpRayleigh + 4 1.79e+03 5e+03 3.55e+03 3.03e-06 0 1.35e+03 9.3e+03 World Transportation + 5 1.79e+03 5e+03 3.55e+03 3.03e-06 0 0 9.3e+03 Tank Transportation + 6 -2.41e+03 2.29e+03 -5e+03 3.03e-06 0 9.91e+03 1.92e+04 World Transportation + 7 -2.41e+03 2.29e+03 -5e+03 3.03e-06 0 0 1.92e+04 Tank Transportation + 8 -5e+03 -613 42.6 3.03e-06 0 6.37e+03 2.56e+04 World Transportation + 9 -5e+03 -613 42.6 3.03e-06 0 0 2.56e+04 Tank Transportation + 10 -156 -3.36e+03 5e+03 3.03e-06 0 7.46e+03 3.3e+04 World Transportation + 11 -156 -3.36e+03 5e+03 3.03e-06 0 0 3.3e+04 Tank Transportation + 12 2.58e+03 -5e+03 3.63e+03 3.03e-06 0 3.47e+03 3.65e+04 World Transportation + 13 2.58e+03 -5e+03 3.63e+03 3.03e-06 0 0 3.65e+04 Tank Transportation + 14 5e+03 -3.2e+03 3.16e+03 3.03e-06 0 3.05e+03 3.96e+04 World Transportation + 15 5e+03 -3.2e+03 3.16e+03 3.03e-06 0 0 3.96e+04 Tank Transportation + 16 3.65e+03 -2.26e+03 1.16e+03 3.03e-06 0 2.59e+03 4.21e+04 Tank OpRayleigh + 17 1.04e+03 -2.49e+03 -5e+03 3.03e-06 0 6.7e+03 4.88e+04 World Transportation + 18 1.04e+03 -2.49e+03 -5e+03 3.03e-06 0 0 4.88e+04 Tank Transportation + 19 -2.34e+03 994 -1.29e+03 3.03e-06 3.03e-06 6.11e+03 5.49e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 25, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.804 0.0576 0.242 2.31e-06 0 0 0 Tank initStep + 1 705 969 5e+03 2.31e-06 0 5.14e+03 5.14e+03 World Transportation + 2 2.35e+03 84.3 1e+04 2.31e-06 0 5.34e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 11 0.816 0.0566 0.269 0.323 0 0 0.964 Tank initStep + 12 0.853 0.0525 0.315 0.313 0.01 0.0583 1.02 Tank Cerenkov + 13 0.876 0.0441 0.362 0.302 0.0113 0.0548 1.08 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 28, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.869 0.0468 0.346 2.38e-06 0 0 0 Tank initStep + 1 5e+03 1.08e+03 -304 2.38e-06 0 5.12e+03 5.12e+03 World Transportation + 2 1e+04 1.07e+03 -913 2.38e-06 0 5.04e+03 1.02e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 27, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.861 0.0497 0.331 2.26e-06 0 0 0 Tank initStep + 1 692 154 2.95e+03 2.26e-06 2.26e-06 3.03e+03 3.03e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 13 0.876 0.0441 0.362 0.302 0 0 1.08 Tank initStep + 14 0.9 0.0728 0.395 0.292 0.00977 0.0509 1.13 Tank Cerenkov + 15 0.925 0.1 0.423 0.268 0.0245 0.0477 1.18 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 29, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.924 0.0988 0.421 3.68e-06 0 0 0 Tank initStep + 1 2.15e+03 4.14e+03 5e+03 3.68e-06 0 6.83e+03 6.83e+03 World Transportation + 2 2.15e+03 4.14e+03 5e+03 3.68e-06 0 0 6.83e+03 Tank Transportation + 3 2.87e+03 5e+03 3.49e+03 3.68e-06 0 1.89e+03 8.72e+03 World Transportation + 4 2.87e+03 5e+03 3.49e+03 3.68e-06 0 0 8.72e+03 Tank Transportation + 5 5e+03 2.89e+03 -962 3.68e-06 0 5.36e+03 1.41e+04 World Transportation + 6 5e+03 2.89e+03 -962 3.68e-06 0 0 1.41e+04 Tank Transportation + 7 3.37e+03 1.31e+03 -5e+03 3.68e-06 0 4.63e+03 1.87e+04 World Transportation + 8 3.37e+03 1.31e+03 -5e+03 3.68e-06 0 0 1.87e+04 Tank Transportation + 9 -5e+03 -4.57e+03 260 3.68e-06 0 1.15e+04 3.02e+04 World Transportation + 10 -5e+03 -4.57e+03 260 3.68e-06 0 0 3.02e+04 Tank Transportation + 11 -4.82e+03 -5e+03 -0.17 3.68e-06 0 535 3.08e+04 World Transportation + 12 -4.82e+03 -5e+03 -0.17 3.68e-06 0 0 3.08e+04 Tank Transportation + 13 -65.1 -898 -5e+03 3.68e-06 0 8.02e+03 3.88e+04 World Transportation + 14 -65.1 -898 -5e+03 3.68e-06 0 0 3.88e+04 Tank Transportation + 15 3.8e+03 1.39e+03 1.41e+03 3.68e-06 0 7.83e+03 4.66e+04 Tank OpRayleigh + 16 3.32e+03 1.86e+03 747 3.68e-06 0 943 4.76e+04 Tank OpRayleigh + 17 3.91e+03 1.51e+03 972 3.68e-06 3.68e-06 720 4.83e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 15 0.925 0.1 0.423 0.268 0 0 1.18 Tank initStep + 16 0.926 0.128 0.452 0.262 0.00541 0.0402 1.22 Tank Cerenkov + 17 0.922 0.154 0.478 0.253 0.00878 0.0386 1.25 Tank Cerenkov + 18 0.931 0.181 0.499 0.247 0.00661 0.0361 1.29 Tank Cerenkov + 19 0.932 0.195 0.507 0.241 0.00575 0.0166 1.31 Tank Cerenkov + 20 0.91 0.304 0.544 0.213 0.0278 0.132 1.44 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 32, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.928 0.214 0.514 3.28e-06 0 0 0 Tank initStep + 1 192 2e+03 -2.55 3.28e-06 3.28e-06 2.01e+03 2.01e+03 Bubble Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 31, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.923 0.241 0.522 2.46e-06 0 0 0 Tank initStep + 1 -1.96e+03 -5e+03 4.85e+03 2.46e-06 0 7.23e+03 7.23e+03 World Transportation + 2 -1.96e+03 -5e+03 4.85e+03 2.46e-06 0 0 7.23e+03 Tank Transportation + 3 -2.06e+03 -4.89e+03 5e+03 2.46e-06 0 210 7.44e+03 World Transportation + 4 -2.06e+03 -4.89e+03 5e+03 2.46e-06 0 0 7.44e+03 Tank Transportation + 5 -4.68e+03 -583 -1.09e+03 2.46e-06 2.46e-06 7.91e+03 1.54e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 30, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.918 0.267 0.531 3.74e-06 0 0 0 Tank initStep + 1 2.06e+03 -5e+03 -1.63e+03 3.74e-06 0 5.65e+03 5.65e+03 World Transportation + 2 4.61e+03 -1e+04 -3.46e+03 3.74e-06 0 5.9e+03 1.16e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 20 0.91 0.304 0.544 0.213 0 0 1.44 Tank initStep + 21 0.894 0.336 0.553 0.204 0.00938 0.0381 1.48 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 35, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.903 0.317 0.547 3.61e-06 0 0 0 Tank initStep + 1 -3.71e+03 -4.68e+03 -5e+03 3.61e-06 0 7.79e+03 7.79e+03 World Transportation + 2 -3.71e+03 -4.68e+03 -5e+03 3.61e-06 0 0 7.79e+03 Tank Transportation + 3 -3.77e+03 -5e+03 -4.54e+03 3.61e-06 0 559 8.35e+03 World Transportation + 4 -3.77e+03 -5e+03 -4.54e+03 3.61e-06 0 0 8.35e+03 Tank Transportation + 5 -5e+03 -1.88e+03 -1.56e+03 3.61e-06 0 4.49e+03 1.28e+04 World Transportation + 6 -5e+03 -1.88e+03 -1.56e+03 3.61e-06 0 0 1.28e+04 Tank Transportation + 7 -4.15e+03 -1.07e+03 -736 3.61e-06 3.61e-06 1.43e+03 1.43e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 34, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.895 0.333 0.552 2.86e-06 0 0 0 Tank initStep + 1 -1.22e+03 -5e+03 -1.71e+03 2.86e-06 0 5.43e+03 5.43e+03 World Transportation + 2 -1.22e+03 -5e+03 -1.71e+03 2.86e-06 0 0 5.43e+03 Tank Transportation + 3 -1.07e+03 -3.57e+03 -5e+03 2.86e-06 0 3.59e+03 9.02e+03 World Transportation + 4 -2.06e+03 512 -1e+04 2.86e-06 0 6.53e+03 1.55e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 33, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.906 0.313 0.546 2.42e-06 0 0 0 Tank initStep + 1 -1.98e+03 -5e+03 -2.5e+03 2.42e-06 0 5.93e+03 5.93e+03 World Transportation + 2 -1.98e+03 -5e+03 -2.5e+03 2.42e-06 0 0 5.93e+03 Tank Transportation + 3 -3.08e+03 -1.82e+03 -5e+03 2.42e-06 0 4.19e+03 1.01e+04 World Transportation + 4 -3.08e+03 -1.82e+03 -5e+03 2.42e-06 0 0 1.01e+04 Tank Transportation + 5 -395 4.19e+03 -1.29e+03 2.42e-06 2.42e-06 7.55e+03 1.77e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 21 0.894 0.336 0.553 0.204 0 0 1.48 Tank initStep + 22 0.878 0.368 0.555 0.198 0.00613 0.0354 1.51 Tank msc + 23 0.844 0.449 0.564 0.176 0.022 0.1 1.61 Tank eIoni + 24 0.801 0.473 0.62 0.154 0.0218 0.0853 1.7 Tank eIoni + 25 0.766 0.518 0.645 0.122 0.0321 0.0715 1.77 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 36, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.77 0.513 0.642 3.05e-06 0 0 0 Tank initStep + 1 5e+03 -1.02e+03 -1.56e+03 3.05e-06 0 5.33e+03 5.33e+03 World Transportation + 2 1e+04 -2.64e+03 -2.83e+03 3.05e-06 0 5.41e+03 1.07e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 25 0.766 0.518 0.645 0.122 0 0 1.77 Tank initStep + 26 0.76 0.523 0.658 0.119 0.00299 0.015 1.78 Tank msc + 27 0.738 0.539 0.693 0.104 0.0151 0.0516 1.84 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 37, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.751 0.529 0.672 2.38e-06 0 0 0 Tank initStep + 1 -4.45e+03 2.3e+03 -1.08e+03 2.38e-06 2.38e-06 5.13e+03 5.13e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 27 0.738 0.539 0.693 0.104 0 0 1.84 Tank initStep + 28 0.728 0.541 0.698 0.099 0.0047 0.0114 1.85 Tank msc + 29 0.702 0.554 0.716 0.0801 0.0189 0.0417 1.89 Tank eIoni + 30 0.682 0.569 0.729 0.0597 0.0203 0.0334 1.92 Tank eIoni + 31 0.673 0.586 0.73 0.0461 0.0136 0.0254 1.95 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 39, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.68 0.573 0.729 4.04e-06 0 0 0 Tank initStep + 1 -439 -179 -980 4.04e-06 0 1.09e+03 1.09e+03 Tank OpRayleigh + 2 5e+03 3.74e+03 -1.58e+03 4.04e-06 0 6.73e+03 7.82e+03 World Transportation + 3 7.63e+03 1e+04 -4.25e+03 4.04e-06 0 7.29e+03 1.51e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 38, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.681 0.57 0.729 3.23e-06 0 0 0 Tank initStep + 1 -4.32e+03 5e+03 533 3.23e-06 0 6.63e+03 6.63e+03 World Transportation + 2 -1e+04 8.54e+03 400 3.23e-06 0 6.7e+03 1.33e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 31 0.673 0.586 0.73 0.0461 0 0 1.95 Tank initStep + 32 0.672 0.586 0.733 0.0306 0.0155 0.00275 1.95 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 40, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.672 0.586 0.731 2.4e-06 0 0 0 Tank initStep + 1 -2.87e+03 4.65e+03 -3.15 2.4e-06 2.4e-06 5.46e+03 5.46e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 32 0.672 0.586 0.733 0.0306 0 0 1.95 Tank initStep + 33 0.672 0.585 0.734 0.0295 0.00107 0.00132 1.95 Tank msc + 34 0.672 0.581 0.741 0 0.0295 0.0139 1.97 Tank eIoni + 35 0.672 0.581 0.741 0 0 0 1.97 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 44, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.672 0.581 0.741 0.511 0 0 0 Tank initStep + 1 43.2 37.5 -35.5 0.443 1.42e-05 67 67 Tank compt + 2 68.9 64.1 -35.6 0.201 1.42e-05 37 104 Tank compt + 3 64.6 53 -62 0.12 1.42e-05 28.9 133 Tank compt + 4 42.1 73.3 -28.6 0.108 1.36e-05 45.1 178 Tank compt + 5 29.2 83.5 -31.2 0.0804 1.42e-05 16.7 195 Tank compt + 6 31.7 66 -43.5 0.0631 1.42e-05 21.6 216 Tank compt + 7 34.5 69.4 -43 0.0524 1.42e-05 4.52 221 Tank compt + 8 -6.57 69.5 -43.7 0.0498 1.42e-05 41.1 262 Tank compt + 9 -9.69 66.7 -39.9 0.0481 1.42e-05 5.64 268 Tank compt + 10 -103 111 46.8 0.0415 2.92e-05 135 402 Tank compt + 11 -103 107 40.4 0.04 1.42e-05 7.48 410 Tank compt + 12 -122 97.5 41.5 0.0394 2.92e-05 21.4 431 Tank compt + 13 -146 85.4 24 0.0363 0.000537 32.3 463 Tank compt + 14 -146 86.1 24 0.0363 0 0.718 464 Tank Rayl + 15 -145 120 18.3 0.0363 0 34.5 498 Tank Rayl + 16 -144 128 14.8 0.0359 2.92e-05 8.47 507 Tank compt + 17 -150 142 13.4 0.0359 0 14.9 522 Tank Rayl + 18 -201 263 -0.999 0.0316 2.92e-05 132 654 Tank compt + 19 -196 259 -1.04 0.0316 0 6.4 660 Tank Rayl + 20 -172 246 11.9 0.0309 2.92e-05 30.1 691 Tank compt + 21 -170 236 38.4 0.0288 2.92e-05 28.2 719 Tank compt + 22 -168 233 35.6 0 0.000537 4.75 724 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 62, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -168 233 35.6 0.0283 0 0 0 Tank initStep + 1 -168 233 35.6 0.0271 0.00116 0.00124 0.00124 Tank msc + 2 -168 233 35.6 0.00881 0.0183 0.0134 0.0146 Tank eIoni + 3 -168 233 35.6 0 0.00881 0.00198 0.0166 Tank eIoni + 4 -168 233 35.6 0 0 0 0.0166 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 61, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -170 236 38.4 0.002 0 0 0 Tank initStep + 1 -170 236 38.4 0.00197 2.75e-05 1.26e-05 1.26e-05 Tank msc + 2 -170 236 38.4 0 0.00197 0.000153 0.000166 Tank eIoni + 3 -170 236 38.4 0 0 0 0.000166 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 60, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -172 246 11.9 0.000731 0 0 0 Tank initStep + 1 -172 246 11.9 0.000639 9.2e-05 2.69e-06 2.69e-06 Tank msc + 2 -172 246 11.9 0 0.000639 2.81e-05 3.07e-05 Tank eIoni + 3 -172 246 11.9 0 0 0 3.07e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 59, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -201 263 -0.999 0.00421 0 0 0 Tank initStep + 1 -201 263 -0.999 0.00409 0.000123 4.4e-05 4.4e-05 Tank msc + 2 -201 263 -0.999 0 0.00409 0.000523 0.000566 Tank eIoni + 3 -201 263 -0.999 0 0 0 0.000566 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 58, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -144 128 14.8 0.000348 0 0 0 Tank initStep + 1 -144 128 14.8 0.000218 0.00013 1.09e-06 1.09e-06 Tank msc + 2 -144 128 14.8 0 0.000218 8.84e-06 9.93e-06 Tank eIoni + 3 -144 128 14.8 0 0 0 9.93e-06 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 57, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -146 85.4 24 0.00263 0 0 0 Tank initStep + 1 -146 85.4 24 0.00259 4.06e-05 1.98e-05 1.98e-05 Tank msc + 2 -146 85.4 24 0 0.00259 0.000241 0.000261 Tank eIoni + 3 -146 85.4 24 0 0 0 0.000261 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 56, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -122 97.5 41.5 0.000502 0 0 0 Tank initStep + 1 -122 97.5 41.5 0.000502 0 1.65e-06 1.65e-06 Tank msc + 2 -122 97.5 41.5 0 0.000502 2.06e-05 2.22e-05 Tank eIoni + 3 -122 97.5 41.5 0 0 0 2.22e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 55, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -103 107 40.4 0.00151 0 0 0 Tank initStep + 1 -103 107 40.4 0.00151 0 7.93e-06 7.93e-06 Tank msc + 2 -103 107 40.4 0 0.00151 9.91e-05 0.000107 Tank eIoni + 3 -103 107 40.4 0 0 0 0.000107 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 54, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -103 111 46.8 0.00659 0 0 0 Tank initStep + 1 -103 111 46.8 0.00652 6.77e-05 9.54e-05 9.54e-05 Tank msc + 2 -103 111 46.8 0 0.00652 0.00117 0.00127 Tank eIoni + 3 -103 111 46.8 0 0 0 0.00127 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 53, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -9.69 66.7 -39.9 0.00173 0 0 0 Tank initStep + 1 -9.69 66.7 -39.9 0.00173 0 9.89e-06 9.89e-06 Tank msc + 2 -9.69 66.7 -39.9 0 0.00173 0.000124 0.000134 Tank eIoni + 3 -9.69 66.7 -39.9 0 0 0 0.000134 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 52, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.57 69.5 -43.7 0.00251 0 0 0 Tank initStep + 1 -6.57 69.5 -43.7 0.00249 1.82e-05 1.82e-05 1.82e-05 Tank msc + 2 -6.57 69.5 -43.7 0 0.00249 0.000225 0.000243 Tank eIoni + 3 -6.57 69.5 -43.7 0 0 0 0.000243 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 34.5 69.4 -43 0.0107 0 0 0 Tank initStep + 1 34.5 69.4 -43 0.0102 0.000552 0.000225 0.000225 Tank msc + 2 34.5 69.4 -43 0 0.0102 0.00256 0.00278 Tank eIoni + 3 34.5 69.4 -43 0 0 0 0.00278 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 63, Parent ID = 51 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 34.5 69.4 -43 2.46e-06 0 0 0 Tank initStep + 1 506 791 5e+03 2.46e-06 0 5.12e+03 5.12e+03 World Transportation + 2 216 598 1e+04 2.46e-06 0 5.01e+03 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 50, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 31.7 66 -43.5 0.0173 0 0 0 Tank initStep + 1 31.7 66 -43.5 0.0166 0.000684 0.000521 0.000521 Tank msc + 2 31.7 66 -43.5 0 0.0166 0.00606 0.00659 Tank eIoni + 3 31.7 66 -43.5 0 0 0 0.00659 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 29.2 83.5 -31.2 0.0279 0 0 0 Tank initStep + 1 29.2 83.5 -31.2 0.0273 0.000626 0.00122 0.00122 Tank msc + 2 29.2 83.5 -31.2 0.00859 0.0187 0.0134 0.0146 Tank eIoni + 3 29.2 83.5 -31.2 0 0.00859 0.0019 0.0165 Tank eIoni + 4 29.2 83.5 -31.2 0 0 0 0.0165 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 42.1 73.3 -28.6 0.0117 0 0 0 Tank initStep + 1 42.1 73.3 -28.6 0.0113 0.000347 0.000261 0.000261 Tank msc + 2 42.1 73.3 -28.6 0 0.0113 0.0031 0.00336 Tank eIoni + 3 42.1 73.3 -28.6 0 0 0 0.00336 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 65, Parent ID = 48 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 42.1 73.3 -28.6 3.53e-06 0 0 0 Tank initStep + 1 2.01e+03 -5e+03 5e+03 3.53e-06 0 7.41e+03 7.41e+03 World Transportation + 2 2.01e+03 -5e+03 5e+03 3.53e-06 0 0 7.41e+03 Tank Transportation + 3 2.01e+03 -5e+03 5e+03 3.53e-06 0 0.126 7.41e+03 World Transportation + 4 2.01e+03 -5e+03 5e+03 3.53e-06 0 0 7.41e+03 Tank Transportation + 5 1.55e+03 -4.7e+03 4e+03 3.53e-06 0 1.13e+03 8.54e+03 Tank OpRayleigh + 6 1.98e+03 -5e+03 4.27e+03 3.53e-06 0 583 9.13e+03 World Transportation + 7 1.98e+03 -5e+03 4.27e+03 3.53e-06 0 0 9.13e+03 Tank Transportation + 8 2.4e+03 -4.05e+03 4.61e+03 3.53e-06 3.53e-06 1.1e+03 1.02e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 64, Parent ID = 48 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 42.1 73.3 -28.6 2.6e-06 0 0 0 Tank initStep + 1 5e+03 -3.82e+03 1.72e+03 2.6e-06 0 6.54e+03 6.54e+03 World Transportation + 2 5e+03 -3.82e+03 1.72e+03 2.6e-06 0 0 6.54e+03 Tank Transportation + 3 2.79e+03 -5e+03 2.26e+03 2.6e-06 0 2.57e+03 9.11e+03 World Transportation + 4 2.79e+03 -5e+03 2.26e+03 2.6e-06 0 0 9.11e+03 Tank Transportation + 5 1.4e+03 -1.85e+03 3.21e+03 2.6e-06 2.6e-06 3.57e+03 1.27e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 47, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 64.6 53 -62 0.0808 0 0 0 Tank initStep + 1 64.6 53 -62 0.0775 0.00332 0.00787 0.00787 Tank msc + 2 64.6 53 -62.1 0.0663 0.0112 0.0334 0.0413 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 66, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 64.6 53 -62 2.15e-06 0 0 0 Tank initStep + 1 5e+03 447 -954 2.15e-06 0 5.03e+03 5.03e+03 World Transportation + 2 1e+04 1.7e+03 -2.24e+03 2.15e-06 0 5.31e+03 1.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 47, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 64.6 53 -62.1 0.0663 0 0 0.0413 Tank initStep + 3 64.6 53 -62.1 0.0648 0.00148 0.00558 0.0469 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 67, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 64.6 53 -62.1 3.3e-06 0 0 0 Tank initStep + 1 -1.29e+03 -251 1.39e+03 3.3e-06 3.3e-06 2.01e+03 2.01e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 47, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 64.6 53 -62.1 0.0648 0 0 0.0469 Tank initStep + 4 64.6 53 -62.1 0.0602 0.00457 0.00536 0.0522 Tank msc + 5 64.6 53 -62.1 0.0484 0.0118 0.0264 0.0787 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 68, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 64.6 53 -62.1 3.45e-06 0 0 0 Tank initStep + 1 923 833 -3.27e+03 3.45e-06 3.45e-06 3.41e+03 3.41e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 47, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 64.6 53 -62.1 0.0484 0 0 0.0787 Tank initStep + 6 64.6 53 -62.1 0.0466 0.00179 0.00321 0.0819 Tank msc + 7 64.6 53 -62.1 0.0329 0.0138 0.0214 0.103 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 69, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 64.6 53 -62.1 3.64e-06 0 0 0 Tank initStep + 1 1.13e+03 -5e+03 -111 3.64e-06 0 5.16e+03 5.16e+03 World Transportation + 2 2.68e+03 -1e+04 230 3.64e-06 0 5.25e+03 1.04e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 47, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 64.6 53 -62.1 0.0329 0 0 0.103 Tank initStep + 8 64.6 53 -62.1 0.0308 0.00205 0.00162 0.105 Tank msc + 9 64.6 53 -62.1 0.0139 0.017 0.0152 0.12 Tank eIoni + 10 64.6 53 -62.1 0 0.0139 0.00441 0.124 Tank eIoni + 11 64.6 53 -62.1 0 0 0 0.124 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 70, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 64.6 53 -62.1 3.06e-06 0 0 0 Tank initStep + 1 -811 -306 1.05e+03 3.06e-06 0 1.46e+03 1.46e+03 Tank OpRayleigh + 2 -2.51e+03 169 5e+03 3.06e-06 0 4.33e+03 5.79e+03 World Transportation + 3 -1e+04 -537 9.5e+03 3.06e-06 0 8.76e+03 1.45e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.1 -35.6 0.242 0 0 0 Tank initStep + 1 68.9 64.2 -35.6 0.219 0.0227 0.0481 0.0481 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 71, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.1 -35.6 2.59e-06 0 0 0 Tank initStep + 1 4.03e+03 5e+03 358 2.59e-06 0 6.34e+03 6.34e+03 World Transportation + 2 4.03e+03 5e+03 358 2.59e-06 0 0 6.34e+03 Tank Transportation + 3 5e+03 871 3.49e+03 2.59e-06 0 5.27e+03 1.16e+04 World Transportation + 4 5e+03 871 3.49e+03 2.59e-06 0 0 1.16e+04 Tank Transportation + 5 3.86e+03 -1.2e+03 5e+03 2.59e-06 0 2.8e+03 1.44e+04 World Transportation + 6 3.86e+03 -1.2e+03 5e+03 2.59e-06 0 0 1.44e+04 Tank Transportation + 7 3.43e+03 -5e+03 3.72e+03 2.59e-06 0 4.03e+03 1.85e+04 World Transportation + 8 2.42e+03 -1e+04 1.28e+03 2.59e-06 0 5.65e+03 2.41e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 68.9 64.2 -35.6 0.219 0 0 0.0481 Tank initStep + 2 68.9 64.2 -35.6 0.21 0.00884 0.0412 0.0893 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 72, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.2 -35.6 2.61e-06 0 0 0 Tank initStep + 1 1.51e+03 5e+03 -425 2.61e-06 0 5.16e+03 5.16e+03 World Transportation + 2 4.34e+03 1e+04 -2.23e+03 2.61e-06 0 6.02e+03 1.12e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 68.9 64.2 -35.6 0.21 0 0 0.0893 Tank initStep + 3 68.9 64.2 -35.6 0.201 0.00933 0.0386 0.128 Tank msc + 4 68.9 64.3 -35.6 0.178 0.0231 0.106 0.234 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 73, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.3 -35.6 3.81e-06 0 0 0 Tank initStep + 1 -5e+03 -957 2.99e+03 3.81e-06 0 5.99e+03 5.99e+03 World Transportation + 2 -5e+03 -957 2.99e+03 3.81e-06 0 0 5.99e+03 Tank Transportation + 3 -4.87e+03 -684 5e+03 3.81e-06 0 2.04e+03 8.03e+03 World Transportation + 4 -4.03e+03 275 1e+04 3.81e-06 0 5.16e+03 1.32e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 68.9 64.3 -35.6 0.178 0 0 0.234 Tank initStep + 5 68.9 64.3 -35.6 0.17 0.00772 0.0295 0.263 Tank msc + 6 68.9 64.4 -35.6 0.146 0.0238 0.0845 0.347 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 77, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.4 -35.6 3.85e-06 0 0 0 Tank initStep + 1 1.07e+03 -5e+03 4.7e+03 3.85e-06 0 7e+03 7e+03 World Transportation + 2 1.07e+03 -5e+03 4.7e+03 3.85e-06 0 0 7e+03 Tank Transportation + 3 1.05e+03 -4.6e+03 5e+03 3.85e-06 0 506 7.51e+03 World Transportation + 4 1.05e+03 -4.6e+03 5e+03 3.85e-06 0 0 7.51e+03 Tank Transportation + 5 2.23e+03 5e+03 4.08e+03 3.85e-06 0 9.71e+03 1.72e+04 World Transportation + 6 2.93e+03 1e+04 2.48e+03 3.85e-06 0 5.3e+03 2.25e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 76, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.4 -35.6 2.53e-06 0 0 0 Tank initStep + 1 4.5e+03 -219 5e+03 2.53e-06 0 6.71e+03 6.71e+03 World Transportation + 2 4.5e+03 -219 5e+03 2.53e-06 0 0 6.71e+03 Tank Transportation + 3 5e+03 227 4.34e+03 2.53e-06 0 943 7.66e+03 World Transportation + 4 5e+03 227 4.34e+03 2.53e-06 0 0 7.66e+03 Tank Transportation + 5 -2.09e+03 2.31e+03 -5e+03 2.53e-06 0 1.19e+04 1.96e+04 World Transportation + 6 -2.09e+03 2.31e+03 -5e+03 2.53e-06 0 0 1.96e+04 Tank Transportation + 7 -5e+03 2.77e+03 -707 2.53e-06 0 5.21e+03 2.48e+04 World Transportation + 8 -5e+03 2.77e+03 -707 2.53e-06 0 0 2.48e+04 Tank Transportation + 9 -3.68e+03 5e+03 3.15e+03 2.53e-06 0 4.65e+03 2.94e+04 World Transportation + 10 -3.68e+03 5e+03 3.15e+03 2.53e-06 0 0 2.94e+04 Tank Transportation + 11 -1.62e+03 2.48e+03 5e+03 2.53e-06 0 3.75e+03 3.32e+04 World Transportation + 12 -1.62e+03 2.48e+03 5e+03 2.53e-06 0 0 3.32e+04 Tank Transportation + 13 1.02e+03 -862 -5e+03 2.53e-06 0 1.09e+04 4.4e+04 World Transportation + 14 2.92e+03 -3.66e+03 -1e+04 2.53e-06 0 6.03e+03 5.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 75, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.3 -35.6 3.8e-06 0 0 0 Tank initStep + 1 4.66e+03 -4.38e+03 -373 3.8e-06 3.8e-06 6.41e+03 6.41e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 74, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.4 -35.6 3.8e-06 0 0 0 Tank initStep + 1 -560 2.93e+03 -2.39e+03 3.8e-06 3.8e-06 3.77e+03 3.77e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 68.9 64.4 -35.6 0.146 0 0 0.347 Tank initStep + 7 68.9 64.4 -35.5 0.141 0.00567 0.0215 0.369 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 78, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.4 -35.5 3.71e-06 0 0 0 Tank initStep + 1 -1.17e+03 -2.13e+03 717 3.71e-06 3.71e-06 2.63e+03 2.63e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 68.9 64.4 -35.5 0.141 0 0 0.369 Tank initStep + 8 68.9 64.4 -35.5 0.137 0.00405 0.0201 0.389 Tank msc + 9 69 64.5 -35.5 0.116 0.0211 0.0636 0.453 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 79, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 69 64.4 -35.5 2.56e-06 0 0 0 Tank initStep + 1 4.39e+03 -602 2.47e+03 2.56e-06 2.56e-06 5.04e+03 5.04e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 69 64.5 -35.5 0.116 0 0 0.453 Tank initStep + 10 68.9 64.5 -35.5 0.112 0.00405 0.0145 0.467 Tank msc + 11 68.9 64.5 -35.5 0.0715 0.04 0.0497 0.517 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 81, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.5 -35.5 3.33e-06 0 0 0 Tank initStep + 1 -5e+03 -3.31e+03 1.42e+03 3.33e-06 0 6.26e+03 6.26e+03 World Transportation + 2 -9.26e+03 -1e+04 4.03e+03 3.33e-06 0 8.35e+03 1.46e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 80, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.5 -35.5 3.65e-06 0 0 0 Tank initStep + 1 914 951 -273 3.65e-06 3.65e-06 1.25e+03 1.25e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 11 68.9 64.5 -35.5 0.0715 0 0 0.517 Tank initStep + 12 68.9 64.5 -35.5 0.0681 0.00342 0.00637 0.523 Tank msc + 13 68.9 64.5 -35.5 0.0518 0.0163 0.0295 0.553 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 82, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.5 -35.5 3.38e-06 0 0 0 Tank initStep + 1 3e+03 426 5e+03 3.38e-06 0 5.84e+03 5.84e+03 World Transportation + 2 7.94e+03 2.61e+03 1e+04 3.38e-06 0 7.36e+03 1.32e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 13 68.9 64.5 -35.5 0.0518 0 0 0.553 Tank initStep + 14 68.9 64.5 -35.5 0.0504 0.00145 0.00362 0.556 Tank msc + 15 68.9 64.5 -35.5 0.0351 0.0153 0.0227 0.579 Tank eIoni + 16 68.9 64.5 -35.5 0.0196 0.0155 0.017 0.596 Tank eIoni + 17 68.9 64.5 -35.5 0 0.0196 0.00812 0.604 Tank eIoni + 18 68.9 64.5 -35.5 0 0 0 0.604 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 84, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.5 -35.5 3.76e-06 0 0 0 Tank initStep + 1 -1.12e+03 819 5e+03 3.76e-06 0 5.23e+03 5.23e+03 World Transportation + 2 -3.97e+03 2.29e+03 1e+04 3.76e-06 0 5.94e+03 1.12e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 83, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 68.9 64.5 -35.5 3.63e-06 0 0 0 Tank initStep + 1 5e+03 -764 -1.41e+03 3.63e-06 0 5.19e+03 5.19e+03 World Transportation + 2 1e+04 -2.15e+03 -9.45e+03 3.63e-06 0 9.57e+03 1.48e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 45, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 43.2 37.5 -35.5 0.0682 0 0 0 Tank initStep + 1 43.2 37.5 -35.5 0.0663 0.00188 0.00586 0.00586 Tank msc + 2 43.2 37.5 -35.5 0.0262 0.0401 0.0288 0.0347 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 87, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 43.2 37.5 -35.5 2.74e-06 0 0 0 Tank initStep + 1 3.27e+03 1.47e+03 5e+03 2.74e-06 0 6.15e+03 6.15e+03 World Transportation + 2 3.27e+03 1.47e+03 5e+03 2.74e-06 0 0 6.15e+03 Tank Transportation + 3 5e+03 1.99e+03 3.92e+03 2.74e-06 0 2.11e+03 8.26e+03 World Transportation + 4 5e+03 1.99e+03 3.92e+03 2.74e-06 0 0 8.26e+03 Tank Transportation + 5 2.56e+03 5e+03 2.46e+03 2.74e-06 0 4.14e+03 1.24e+04 World Transportation + 6 2.56e+03 5e+03 2.46e+03 2.74e-06 0 0 1.24e+04 Tank Transportation + 7 -5e+03 3.24e+03 -3.02e+03 2.74e-06 0 9.5e+03 2.19e+04 World Transportation + 8 -5e+03 3.24e+03 -3.02e+03 2.74e-06 0 0 2.19e+04 Tank Transportation + 9 -4.06e+03 2.54e+03 -5e+03 2.74e-06 0 2.3e+03 2.42e+04 World Transportation + 10 -4.06e+03 2.54e+03 -5e+03 2.74e-06 0 0 2.42e+04 Tank Transportation + 11 -1.46e+03 -5e+03 3.06e+03 2.74e-06 0 1.13e+04 3.55e+04 World Transportation + 12 -1.46e+03 -5e+03 3.06e+03 2.74e-06 0 0 3.55e+04 Tank Transportation + 13 -744 -3.63e+03 5e+03 2.74e-06 0 2.48e+03 3.8e+04 World Transportation + 14 -744 -3.63e+03 5e+03 2.74e-06 0 0 3.8e+04 Tank Transportation + 15 5e+03 2.96e+03 -3.13e+03 2.74e-06 0 1.19e+04 5e+04 World Transportation + 16 5e+03 2.96e+03 -3.13e+03 2.74e-06 0 0 5e+04 Tank Transportation + 17 1.72e+03 5e+03 -2.4e+03 2.74e-06 0 3.93e+03 5.39e+04 World Transportation + 18 1.72e+03 5e+03 -2.4e+03 2.74e-06 0 0 5.39e+04 Tank Transportation + 19 -5e+03 -49.6 879 2.74e-06 0 9.02e+03 6.29e+04 World Transportation + 20 -5e+03 -49.6 879 2.74e-06 0 0 6.29e+04 Tank Transportation + 21 2.32e+03 -2.11e+03 5e+03 2.74e-06 0 8.65e+03 7.16e+04 World Transportation + 22 2.32e+03 -2.11e+03 5e+03 2.74e-06 0 0 7.16e+04 Tank Transportation + 23 5e+03 -2.01e+03 3.58e+03 2.74e-06 0 3.04e+03 7.46e+04 World Transportation + 24 1e+04 2.71e+03 -8.56e+03 2.74e-06 0 1.39e+04 8.85e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 86, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 43.2 37.5 -35.5 2.96e-06 0 0 0 Tank initStep + 1 -5e+03 2.1e+03 -604 2.96e-06 0 5.48e+03 5.48e+03 World Transportation + 2 -5e+03 2.1e+03 -604 2.96e-06 0 0 5.48e+03 Tank Transportation + 3 -637 5e+03 -1.89e+03 2.96e-06 0 5.39e+03 1.09e+04 World Transportation + 4 -637 5e+03 -1.89e+03 2.96e-06 0 0 1.09e+04 Tank Transportation + 5 3.2e+03 3.22e+03 -3.56e+03 2.96e-06 2.96e-06 4.55e+03 1.54e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 85, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 43.2 37.5 -35.5 2.51e-06 0 0 0 Tank initStep + 1 2.4e+03 -5e+03 828 2.51e-06 0 5.63e+03 5.63e+03 World Transportation + 2 9.07e+03 -1e+04 760 2.51e-06 0 8.34e+03 1.4e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 45, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 43.2 37.5 -35.5 0.0262 0 0 0.0347 Tank initStep + 3 43.2 37.5 -35.5 0.0256 0.000662 0.00109 0.0358 Tank msc + 4 43.2 37.5 -35.5 0 0.0256 0.0124 0.0482 Tank eIoni + 5 43.2 37.5 -35.5 0 0 0 0.0482 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 88, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 43.2 37.5 -35.5 3.51e-06 0 0 0 Tank initStep + 1 -1.92e+03 -704 1.84e+03 3.51e-06 3.51e-06 2.81e+03 2.81e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 43, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.672 0.581 0.741 0.511 0 0 0 Tank initStep + 1 -31.4 -27.3 28.1 0.453 0.000537 50.5 50.5 Tank compt + 2 -116 -35.5 115 0.194 1.42e-05 121 172 Tank compt + 3 -115 -35.6 115 0.178 1.42e-05 0.163 172 Tank compt + 4 -84.2 -60.9 73.7 0.168 1.42e-05 57.4 229 Tank compt + 5 114 -23.1 -165 0.118 1.42e-05 313 542 Tank compt + 6 72.2 11.1 -180 0.089 2.92e-05 56.4 598 Tank compt + 7 64.8 -13 -175 0.0823 1.36e-05 25.8 624 Tank compt + 8 64.1 -14.4 -171 0.0806 1.42e-05 4.16 628 Tank compt + 9 67.1 -25.9 -158 0.069 1.42e-05 17.1 645 Tank compt + 10 22 -55.3 -176 0.0585 1.42e-05 56.8 702 Tank compt + 11 28.6 -43 -191 0.0576 2.92e-05 20.5 723 Tank compt + 12 33.5 -19.1 -202 0.0564 1.42e-05 26.6 749 Tank compt + 13 25.3 -0.435 -206 0.047 1.42e-05 20.7 770 Tank compt + 14 25.8 -1.46 -204 0.0408 1.36e-05 1.95 772 Tank compt + 15 2.85 -4.27 -220 0 0.000537 28 800 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 103, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.85 -4.27 -220 0.0403 0 0 0 Tank initStep + 1 2.85 -4.28 -220 0.0393 0.00093 0.00232 0.00232 Tank msc + 2 2.85 -4.29 -220 0.0285 0.0109 0.0187 0.021 Tank eIoni + 3 2.85 -4.29 -220 0.00317 0.0253 0.0141 0.035 Tank eIoni + 4 2.85 -4.29 -220 0 0.00317 0.000337 0.0354 Tank eIoni + 5 2.85 -4.29 -220 0 0 0 0.0354 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 102, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 25.8 -1.46 -204 0.00617 0 0 0 Tank initStep + 1 25.8 -1.46 -204 0.00573 0.000432 8.48e-05 8.48e-05 Tank msc + 2 25.8 -1.46 -204 0 0.00573 0.000934 0.00102 Tank eIoni + 3 25.8 -1.46 -204 0 0 0 0.00102 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 101, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 25.3 -0.435 -206 0.00942 0 0 0 Tank initStep + 1 25.3 -0.434 -206 0.00917 0.000249 0.000179 0.000179 Tank msc + 2 25.3 -0.434 -206 0 0.00917 0.00213 0.00231 Tank eIoni + 3 25.3 -0.434 -206 0 0 0 0.00231 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 100, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 33.5 -19.1 -202 0.0012 0 0 0 Tank initStep + 1 33.5 -19.1 -202 0.0012 0 5.55e-06 5.55e-06 Tank msc + 2 33.5 -19.1 -202 0 0.0012 6.94e-05 7.5e-05 Tank eIoni + 3 33.5 -19.1 -202 0 0 0 7.5e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 99, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 28.6 -43 -191 0.000819 0 0 0 Tank initStep + 1 28.6 -43 -191 0.000589 0.000229 3.16e-06 3.16e-06 Tank msc + 2 28.6 -43 -191 0 0.000589 2.52e-05 2.84e-05 Tank eIoni + 3 28.6 -43 -191 0 0 0 2.84e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 98, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 22 -55.3 -176 0.0105 0 0 0 Tank initStep + 1 22 -55.3 -176 0.0101 0.000454 0.000217 0.000217 Tank msc + 2 22 -55.3 -176 0 0.0101 0.00251 0.00273 Tank eIoni + 3 22 -55.3 -176 0 0 0 0.00273 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 97, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 67.1 -25.9 -158 0.0115 0 0 0 Tank initStep + 1 67.1 -25.9 -158 0.011 0.000497 0.000255 0.000255 Tank msc + 2 67.1 -25.9 -158 0 0.011 0.00295 0.00321 Tank eIoni + 3 67.1 -25.9 -158 0 0 0 0.00321 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 104, Parent ID = 97 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 67.1 -25.9 -158 3.52e-06 0 0 0 Tank initStep + 1 -5e+03 1.19e+03 -797 3.52e-06 0 5.25e+03 5.25e+03 World Transportation + 2 -1e+04 3.47e+03 -1.35e+03 3.52e-06 0 5.52e+03 1.08e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 96, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 64.1 -14.4 -171 0.00169 0 0 0 Tank initStep + 1 64.1 -14.4 -171 0.0016 9.13e-05 9.55e-06 9.55e-06 Tank msc + 2 64.1 -14.4 -171 0 0.0016 0.000109 0.000119 Tank eIoni + 3 64.1 -14.4 -171 0 0 0 0.000119 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 95, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 64.8 -13 -175 0.00675 0 0 0 Tank initStep + 1 64.8 -13 -175 0.00664 0.000102 9.93e-05 9.93e-05 Tank msc + 2 64.8 -13 -175 0 0.00664 0.00121 0.00131 Tank eIoni + 3 64.8 -13 -175 0 0 0 0.00131 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 94, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 72.2 11.1 -180 0.0287 0 0 0 Tank initStep + 1 72.2 11.1 -180 0.0281 0.000552 0.00127 0.00127 Tank msc + 2 72.2 11.1 -180 0.0099 0.0182 0.0139 0.0151 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 105, Parent ID = 94 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 72.2 11.1 -180 3.06e-06 0 0 0 Tank initStep + 1 2.09e+03 -1.63e+03 5e+03 3.06e-06 0 5.8e+03 5.8e+03 World Transportation + 2 2.09e+03 -1.63e+03 5e+03 3.06e-06 0 0 5.8e+03 Tank Transportation + 3 5e+03 -4.98e+03 1.19e+03 3.06e-06 0 5.85e+03 1.16e+04 World Transportation + 4 5e+03 -4.98e+03 1.19e+03 3.06e-06 0 0 1.16e+04 Tank Transportation + 5 4.98e+03 -5e+03 1.18e+03 3.06e-06 0 28.6 1.17e+04 World Transportation + 6 4.98e+03 -5e+03 1.18e+03 3.06e-06 0 0 1.17e+04 Tank Transportation + 7 -1.26e+03 4.2e+03 -5e+03 3.06e-06 0 1.27e+04 2.44e+04 World Transportation + 8 -1.26e+03 4.2e+03 -5e+03 3.06e-06 0 0 2.44e+04 Tank Transportation + 9 -2.01e+03 5e+03 -3.73e+03 3.06e-06 0 1.68e+03 2.61e+04 World Transportation + 10 -2.01e+03 5e+03 -3.73e+03 3.06e-06 0 0 2.61e+04 Tank Transportation + 11 -5e+03 484 1.73e+03 3.06e-06 0 7.69e+03 3.38e+04 World Transportation + 12 -5e+03 484 1.73e+03 3.06e-06 0 0 3.38e+04 Tank Transportation + 13 -3.46e+03 -2.56e+03 5e+03 3.06e-06 0 4.73e+03 3.85e+04 World Transportation + 14 -3.46e+03 -2.56e+03 5e+03 3.06e-06 0 0 3.85e+04 Tank Transportation + 15 -2.14e+03 -5e+03 2.91e+03 3.06e-06 0 3.47e+03 4.2e+04 World Transportation + 16 -2.14e+03 -5e+03 2.91e+03 3.06e-06 0 0 4.2e+04 Tank Transportation + 17 528 1.07e+03 -5e+03 3.06e-06 0 1.03e+04 5.23e+04 World Transportation + 18 7.17e+03 1e+04 -8.09e+03 3.06e-06 0 1.16e+04 6.38e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 94, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 72.2 11.1 -180 0.0099 0 0 0.0151 Tank initStep + 3 72.2 11.1 -180 0.00961 0.000296 0.000195 0.0153 Tank msc + 4 72.2 11.1 -180 0 0.00961 0.00231 0.0177 Tank eIoni + 5 72.2 11.1 -180 0 0 0 0.0177 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 107, Parent ID = 94 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 72.2 11.1 -180 2.27e-06 0 0 0 Tank initStep + 1 -1.89e+03 -3.13e+03 -5e+03 2.27e-06 0 6.08e+03 6.08e+03 World Transportation + 2 -4.12e+03 -1e+04 -9.66e+03 2.27e-06 0 8.59e+03 1.47e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 106, Parent ID = 94 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 72.2 11.1 -180 2.93e-06 0 0 0 Tank initStep + 1 464 -1.25e+03 5e+03 2.93e-06 0 5.35e+03 5.35e+03 World Transportation + 2 2.26e+03 -4.25e+03 1e+04 2.93e-06 0 6.1e+03 1.14e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 93, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 114 -23.1 -165 0.0501 0 0 0 Tank initStep + 1 114 -23.1 -165 0.0474 0.00275 0.00341 0.00341 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 108, Parent ID = 93 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 114 -23.1 -165 2.18e-06 0 0 0 Tank initStep + 1 -1.3e+03 591 -1.6e+03 2.18e-06 2.18e-06 2.11e+03 2.11e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 93, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 114 -23.1 -165 0.0474 0 0 0.00341 Tank initStep + 2 114 -23.1 -165 0.0462 0.00114 0.00309 0.0065 Tank msc + 3 114 -23.1 -165 0.032 0.0142 0.0212 0.0277 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 109, Parent ID = 93 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 114 -23.1 -165 3.88e-06 0 0 0 Tank initStep + 1 -5e+03 -2.1e+03 -675 3.88e-06 0 5.55e+03 5.55e+03 World Transportation + 2 -1e+04 -6.67e+03 -703 3.88e-06 0 6.77e+03 1.23e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 93, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 114 -23.1 -165 0.032 0 0 0.0277 Tank initStep + 4 114 -23.1 -165 0.0311 0.000869 0.00154 0.0293 Tank msc + 5 114 -23.1 -165 0.0128 0.0183 0.0153 0.0446 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 110, Parent ID = 93 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 114 -23.1 -165 2.44e-06 0 0 0 Tank initStep + 1 98.4 -37.6 -205 2.44e-06 2.44e-06 45.5 45.5 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 93, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 114 -23.1 -165 0.0128 0 0 0.0446 Tank initStep + 6 114 -23.1 -165 0.0127 8.67e-05 0.000307 0.0449 Tank msc + 7 114 -23.1 -165 0 0.0127 0.00379 0.0487 Tank eIoni + 8 114 -23.1 -165 0 0 0 0.0487 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 92, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -84.2 -60.9 73.7 0.00967 0 0 0 Tank initStep + 1 -84.2 -60.9 73.7 0.0093 0.00037 0.000187 0.000187 Tank msc + 2 -84.2 -60.9 73.7 0 0.0093 0.00218 0.00237 Tank eIoni + 3 -84.2 -60.9 73.7 0 0 0 0.00237 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 91, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -115 -35.6 115 0.0165 0 0 0 Tank initStep + 1 -115 -35.6 115 0.016 0.000472 0.000477 0.000477 Tank msc + 2 -115 -35.6 115 0 0.016 0.00566 0.00614 Tank eIoni + 3 -115 -35.6 115 0 0 0 0.00614 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.5 115 0.259 0 0 0 Tank initStep + 1 -116 -35.5 115 0.251 0.00787 0.038 0.038 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 111, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.5 115 3.11e-06 0 0 0 Tank initStep + 1 -1.51e+03 -1.1e+03 -5e+03 3.11e-06 0 5.41e+03 5.41e+03 World Transportation + 2 -1.51e+03 -1.1e+03 -5e+03 3.11e-06 0 0 5.41e+03 Tank Transportation + 3 5e+03 -4.79e+03 -3.91e+03 3.11e-06 0 7.57e+03 1.3e+04 World Transportation + 4 1e+04 -9.09e+03 -2.55e+03 3.11e-06 0 6.74e+03 1.97e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 -116 -35.5 115 0.251 0 0 0.038 Tank initStep + 2 -116 -35.5 115 0.233 0.0182 0.0332 0.0712 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 116, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.5 115 4.05e-06 0 0 0 Tank initStep + 1 -5e+03 570 -3.84e+03 4.05e-06 0 6.31e+03 6.31e+03 World Transportation + 2 -1e+04 551 -9.9e+03 4.05e-06 0 7.86e+03 1.42e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 115, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.5 115 2.86e-06 0 0 0 Tank initStep + 1 5e+03 -4.21e+03 -1.76e+03 2.86e-06 0 6.86e+03 6.86e+03 World Transportation + 2 5e+03 -4.21e+03 -1.76e+03 2.86e-06 0 0 6.86e+03 Tank Transportation + 3 3.83e+03 -5e+03 -727 2.86e-06 0 1.75e+03 8.61e+03 World Transportation + 4 3.83e+03 -5e+03 -727 2.86e-06 0 0 8.61e+03 Tank Transportation + 5 2.51e+03 4.56e+03 5e+03 2.86e-06 0 1.12e+04 1.98e+04 World Transportation + 6 2.51e+03 4.56e+03 5e+03 2.86e-06 0 0 1.98e+04 Tank Transportation + 7 2.53e+03 5e+03 4.76e+03 2.86e-06 0 505 2.03e+04 World Transportation + 8 3.1e+03 1e+04 -1.41e+03 2.86e-06 0 7.96e+03 2.83e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 114, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.5 115 3.83e-06 0 0 0 Tank initStep + 1 -4.66e+03 4.24e+03 -5e+03 3.83e-06 0 8.07e+03 8.07e+03 World Transportation + 2 -4.66e+03 4.24e+03 -5e+03 3.83e-06 0 0 8.07e+03 Tank Transportation + 3 -5e+03 4.43e+03 -4.86e+03 3.83e-06 0 413 8.48e+03 World Transportation + 4 -7.34e+03 1e+04 -376 3.83e-06 0 7.52e+03 1.6e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 113, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.5 115 3.6e-06 0 0 0 Tank initStep + 1 -178 456 -3.5e+03 3.6e-06 3.6e-06 3.65e+03 3.65e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 112, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.5 115 3.65e-06 0 0 0 Tank initStep + 1 -207 -56.6 187 3.65e-06 3.65e-06 118 118 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -116 -35.5 115 0.233 0 0 0.0712 Tank initStep + 3 -116 -35.5 115 0.222 0.0107 0.0453 0.116 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 117, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.5 115 3.36e-06 0 0 0 Tank initStep + 1 2.74e+03 -1.46e+03 -4.53e+03 3.36e-06 3.36e-06 5.64e+03 5.64e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 -116 -35.5 115 0.222 0 0 0.116 Tank initStep + 4 -116 -35.5 115 0.211 0.0107 0.0421 0.159 Tank msc + 5 -116 -35.4 115 0.177 0.0345 0.113 0.272 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 118, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.4 115 3.57e-06 0 0 0 Tank initStep + 1 1.23e+03 -12.2 5e+03 3.57e-06 0 5.07e+03 5.07e+03 World Transportation + 2 6.03e+03 -2.45e+03 1e+04 3.57e-06 0 7.35e+03 1.24e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 -116 -35.4 115 0.177 0 0 0.272 Tank initStep + 6 -116 -35.4 115 0.171 0.0059 0.0293 0.301 Tank msc + 7 -116 -35.4 115 0.145 0.026 0.085 0.386 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 120, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.4 115 3.14e-06 0 0 0 Tank initStep + 1 -4.99e+03 -3.71e+03 3.55e+03 3.14e-06 3.14e-06 7e+03 7e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 119, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.4 115 2.23e-06 0 0 0 Tank initStep + 1 -719 5e+03 1.65e+03 2.23e-06 0 5.3e+03 5.3e+03 World Transportation + 2 -2.46e+03 1e+04 5.1e+03 2.23e-06 0 6.32e+03 1.16e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 -116 -35.4 115 0.145 0 0 0.386 Tank initStep + 8 -116 -35.4 115 0.138 0.00691 0.0212 0.407 Tank msc + 9 -116 -35.4 115 0.118 0.0206 0.0645 0.472 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 122, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.4 115 3.97e-06 0 0 0 Tank initStep + 1 3.11e+03 -5e+03 93.4 3.97e-06 0 5.92e+03 5.92e+03 World Transportation + 2 3.11e+03 -5e+03 93.4 3.97e-06 0 0 5.92e+03 Tank Transportation + 3 -896 -669 5e+03 3.97e-06 0 7.67e+03 1.36e+04 World Transportation + 4 -896 -669 5e+03 3.97e-06 0 0 1.36e+04 Tank Transportation + 5 -2.5e+03 1.53e+03 3.22e+03 3.97e-06 3.97e-06 3.25e+03 1.68e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 121, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.4 115 2.79e-06 0 0 0 Tank initStep + 1 -2.98e+03 -3.28e+03 5e+03 2.79e-06 0 6.53e+03 6.53e+03 World Transportation + 2 -2.98e+03 -3.28e+03 5e+03 2.79e-06 0 0 6.53e+03 Tank Transportation + 3 -4.7e+03 -3.22e+03 4.07e+03 2.79e-06 2.79e-06 1.95e+03 8.48e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 -116 -35.4 115 0.118 0 0 0.472 Tank initStep + 10 -116 -35.3 115 0.114 0.00323 0.0149 0.487 Tank msc + 11 -116 -35.3 115 0.0965 0.0178 0.0512 0.538 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 123, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.3 115 4.1e-06 0 0 0 Tank initStep + 1 977 634 5e+03 4.1e-06 0 5.05e+03 5.05e+03 World Transportation + 2 977 634 5e+03 4.1e-06 0 0 5.05e+03 Tank Transportation + 3 -2.27e+03 2.88e+03 -1.47e+03 4.1e-06 4.1e-06 7.57e+03 1.26e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 11 -116 -35.3 115 0.0965 0 0 0.538 Tank initStep + 12 -116 -35.3 115 0.0916 0.00486 0.0107 0.548 Tank msc + 13 -116 -35.3 115 0.0749 0.0167 0.0398 0.588 Tank eIoni + 14 -116 -35.3 115 0.0632 0.0117 0.0323 0.621 Tank eIoni + 15 -116 -35.2 115 0.0501 0.0131 0.0276 0.648 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 124, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.3 115 2.27e-06 0 0 0 Tank initStep + 1 5e+03 1.37e+03 1.81e+03 2.27e-06 0 5.57e+03 5.57e+03 World Transportation + 2 1e+04 3.46e+03 5.7e+03 2.27e-06 0 6.67e+03 1.22e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 15 -116 -35.2 115 0.0501 0 0 0.648 Tank initStep + 16 -116 -35.2 115 0.0477 0.00237 0.00341 0.652 Tank msc + 17 -116 -35.3 115 0.0352 0.0125 0.0218 0.673 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 126, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.3 115 2.33e-06 0 0 0 Tank initStep + 1 1.93e+03 5e+03 -443 2.33e-06 0 5.47e+03 5.47e+03 World Transportation + 2 7.7e+03 1e+04 -2.21e+03 2.33e-06 0 7.83e+03 1.33e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 125, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.2 115 3.69e-06 0 0 0 Tank initStep + 1 690 721 5e+03 3.69e-06 0 5.01e+03 5.01e+03 World Transportation + 2 1.74e+03 2.21e+03 1e+04 3.69e-06 0 5.32e+03 1.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 17 -116 -35.3 115 0.0352 0 0 0.673 Tank initStep + 18 -116 -35.3 115 0.0339 0.00134 0.00183 0.675 Tank msc + 19 -116 -35.3 115 0.0184 0.0155 0.0165 0.692 Tank eIoni + 20 -116 -35.3 115 0 0.0184 0.00726 0.699 Tank eIoni + 21 -116 -35.3 115 0 0 0 0.699 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 127, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -35.3 115 3.3e-06 0 0 0 Tank initStep + 1 -4.32e+03 5e+03 -2.13e+03 3.3e-06 0 6.94e+03 6.94e+03 World Transportation + 2 -4.32e+03 5e+03 -2.13e+03 3.3e-06 0 0 6.94e+03 Tank Transportation + 3 -5e+03 4.61e+03 -2.62e+03 3.3e-06 0 920 7.86e+03 World Transportation + 4 -1e+04 -388 -6.65e+03 3.3e-06 0 8.14e+03 1.6e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 89, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -31.4 -27.3 28.1 0.0576 0 0 0 Tank initStep + 1 -31.4 -27.3 28.1 0.0513 0.00635 0.00436 0.00436 Tank msc + 2 -31.4 -27.3 28.1 0.0385 0.0127 0.0231 0.0274 Tank eIoni + 3 -31.4 -27.3 28 0.0221 0.0164 0.0184 0.0458 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 128, Parent ID = 89 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -31.4 -27.3 28.1 3.76e-06 0 0 0 Tank initStep + 1 -2.88e+03 -739 47.9 3.76e-06 3.76e-06 2.94e+03 2.94e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 89, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 -31.4 -27.3 28 0.0221 0 0 0.0458 Tank initStep + 4 -31.4 -27.3 28 0.0216 0.000541 0.000803 0.0466 Tank msc + 5 -31.4 -27.3 28 0 0.0216 0.00961 0.0562 Tank eIoni + 6 -31.4 -27.3 28 0 0 0 0.0562 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 129, Parent ID = 89 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -31.4 -27.3 28 2.51e-06 0 0 0 Tank initStep + 1 -1.9e+03 -2.14e+03 5e+03 2.51e-06 0 5.71e+03 5.71e+03 World Transportation + 2 -4.1e+03 -5.16e+03 1e+04 2.51e-06 0 6.24e+03 1.2e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 42, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.672 0.583 0.737 3.94e-06 0 0 0 Tank initStep + 1 -2.12e+03 -4.19e+03 5e+03 3.94e-06 0 6.86e+03 6.86e+03 World Transportation + 2 -2.12e+03 -4.19e+03 5e+03 3.94e-06 0 0 6.86e+03 Tank Transportation + 3 -2.23e+03 -4.94e+03 4.2e+03 3.94e-06 3.94e-06 1.1e+03 7.96e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 41, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.672 0.585 0.734 4.02e-06 0 0 0 Tank initStep + 1 985 -1.4e+03 1.01e+03 4.02e-06 4.02e-06 1.99e+03 1.99e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 0.5 0 0 0 Tank initStep + 1 0.132 -0.0389 0.0199 0.48 0.0195 0.14 0.14 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0102 -0.003 0.00154 3.62e-06 0 0 0 Tank initStep + 1 5e+03 -3.16e+03 4.26e+03 3.62e-06 0 7.29e+03 7.29e+03 World Transportation + 2 5e+03 -3.16e+03 4.26e+03 3.62e-06 0 0 7.29e+03 Tank Transportation + 3 -944 -4.83e+03 5e+03 3.62e-06 0 6.22e+03 1.35e+04 World Transportation + 4 -944 -4.83e+03 5e+03 3.62e-06 0 0 1.35e+04 Tank Transportation + 5 -1.73e+03 -5e+03 4.26e+03 3.62e-06 0 1.1e+03 1.46e+04 World Transportation + 6 -1.73e+03 -5e+03 4.26e+03 3.62e-06 0 0 1.46e+04 Tank Transportation + 7 -2.78e+03 -3.67e+03 461 3.62e-06 3.62e-06 4.16e+03 1.88e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 0.132 -0.0389 0.0199 0.48 0 0 0.14 Tank initStep + 2 0.215 -0.113 0.0822 0.463 0.0177 0.129 0.269 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 8, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.134 -0.0408 0.0215 4.1e-06 0 0 0 Tank initStep + 1 5e+03 -3.55e+03 677 4.1e-06 0 6.17e+03 6.17e+03 World Transportation + 2 5e+03 -3.55e+03 677 4.1e-06 0 0 6.17e+03 Tank Transportation + 3 4.42e+03 -4.06e+03 840 4.1e-06 4.1e-06 790 6.96e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.14 -0.046 0.0258 3.93e-06 0 0 0 Tank initStep + 1 -3.7e+03 -5e+03 -4.52e+03 3.93e-06 0 7.69e+03 7.69e+03 World Transportation + 2 -8.52e+03 -1e+04 -5.63e+03 3.93e-06 0 7.03e+03 1.47e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.178 -0.08 0.0543 3.96e-06 0 0 0 Tank initStep + 1 1.13e+03 -5e+03 3.05e+03 3.96e-06 0 5.97e+03 5.97e+03 World Transportation + 2 4.55e+03 -9.38e+03 1e+04 3.96e-06 0 8.9e+03 1.49e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.186 -0.0873 0.0604 2.26e-06 0 0 0 Tank initStep + 1 2.35e+03 -1.92e+03 5e+03 2.26e-06 0 5.85e+03 5.85e+03 World Transportation + 2 2.35e+03 -1.92e+03 5e+03 2.26e-06 0 0 5.85e+03 Tank Transportation + 3 1.93e+03 -5e+03 2.88e+03 2.26e-06 0 3.76e+03 9.61e+03 World Transportation + 4 1.93e+03 -5e+03 2.88e+03 2.26e-06 0 0 9.61e+03 Tank Transportation + 5 4.31e+03 1.66e+03 -5e+03 2.26e-06 0 1.06e+04 2.02e+04 World Transportation + 6 4.32e+03 4.1e+03 -1e+04 2.26e-06 0 5.57e+03 2.58e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.191 -0.0914 0.0638 2.96e-06 0 0 0 Tank initStep + 1 712 -1.01e+03 36 2.96e-06 2.96e-06 1.24e+03 1.24e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.166 -0.0694 0.0454 3.19e-06 0 0 0 Tank initStep + 1 1.9e+03 -5e+03 1.2e+03 3.19e-06 0 5.48e+03 5.48e+03 World Transportation + 2 5.38e+03 -1e+04 4e+03 3.19e-06 0 6.71e+03 1.22e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 0.215 -0.113 0.0822 0.463 0 0 0.269 Tank initStep + 3 0.262 -0.187 0.163 0.446 0.0171 0.12 0.388 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 15, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.243 -0.158 0.132 3.18e-06 0 0 0 Tank initStep + 1 -134 -89.7 -634 3.18e-06 3.18e-06 654 654 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 14, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.254 -0.175 0.151 2.05e-06 0 0 0 Tank initStep + 1 -242 -172 838 2.05e-06 2.05e-06 889 889 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 13, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.229 -0.135 0.107 2.29e-06 0 0 0 Tank initStep + 1 1.02e+03 -1.7e+03 501 2.29e-06 2.29e-06 2.04e+03 2.04e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 12, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.225 -0.13 0.1 3.92e-06 0 0 0 Tank initStep + 1 1.06e+03 -313 1.93e+03 3.92e-06 3.92e-06 2.22e+03 2.22e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 11, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.262 -0.186 0.163 2.98e-06 0 0 0 Tank initStep + 1 565 -1.52e+03 5e+03 2.98e-06 0 5.26e+03 5.26e+03 World Transportation + 2 945 -3.7e+03 1e+04 2.98e-06 0 5.47e+03 1.07e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 10, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.236 -0.146 0.118 2.58e-06 0 0 0 Tank initStep + 1 5e+03 -3.51e+03 2.31e+03 2.58e-06 0 6.53e+03 6.53e+03 World Transportation + 2 5e+03 -3.51e+03 2.31e+03 2.58e-06 0 0 6.53e+03 Tank Transportation + 3 2.97e+03 -5e+03 3.85e+03 2.58e-06 0 2.96e+03 9.48e+03 World Transportation + 4 2.97e+03 -5e+03 3.85e+03 2.58e-06 0 0 9.48e+03 Tank Transportation + 5 2.31e+03 -3.08e+03 5e+03 2.58e-06 0 2.34e+03 1.18e+04 World Transportation + 6 2.31e+03 -3.08e+03 5e+03 2.58e-06 0 0 1.18e+04 Tank Transportation + 7 2.5e+03 3.84e+03 -1.85e+03 2.58e-06 2.58e-06 9.73e+03 2.16e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 9, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.23 -0.137 0.108 2.85e-06 0 0 0 Tank initStep + 1 1.53e+03 -5e+03 1.58e+03 2.85e-06 0 5.46e+03 5.46e+03 World Transportation + 2 3.87e+03 -1e+04 4.39e+03 2.85e-06 0 6.19e+03 1.17e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 0.262 -0.187 0.163 0.446 0 0 0.388 Tank initStep + 4 0.297 -0.252 0.245 0.418 0.0274 0.111 0.499 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 19, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.286 -0.232 0.22 3.84e-06 0 0 0 Tank initStep + 1 380 3.75e+03 -1.61e+03 3.84e-06 0 4.1e+03 4.1e+03 Tank OpRayleigh + 2 -1.66e+03 2.94e+03 -3.9e+03 3.84e-06 0 3.17e+03 7.27e+03 Tank OpRayleigh + 3 -5e+03 -2.63e+03 2.85e+03 3.84e-06 0 9.36e+03 1.66e+04 World Transportation + 4 -5e+03 -2.63e+03 2.85e+03 3.84e-06 0 0 1.66e+04 Tank Transportation + 5 -3.86e+03 -4.24e+03 5e+03 3.84e-06 0 2.92e+03 1.96e+04 World Transportation + 6 -3.86e+03 -4.24e+03 5e+03 3.84e-06 0 0 1.96e+04 Tank Transportation + 7 -3.06e+03 -5e+03 3.68e+03 3.84e-06 0 1.72e+03 2.13e+04 World Transportation + 8 -3.06e+03 -5e+03 3.68e+03 3.84e-06 0 0 2.13e+04 Tank Transportation + 9 2.47e+03 2.11e+03 -5e+03 3.84e-06 0 1.25e+04 3.38e+04 World Transportation + 10 2.47e+03 2.11e+03 -5e+03 3.84e-06 0 0 3.38e+04 Tank Transportation + 11 3.06e+03 2.66e+03 -3.8e+03 3.84e-06 3.84e-06 1.45e+03 3.52e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 18, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.294 -0.246 0.237 3.09e-06 0 0 0 Tank initStep + 1 719 -3.18e+03 -5e+03 3.09e-06 0 5.97e+03 5.97e+03 World Transportation + 2 2.05e+03 -1e+04 -8.15e+03 3.09e-06 0 7.62e+03 1.36e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 17, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.289 -0.236 0.225 2.2e-06 0 0 0 Tank initStep + 1 1.66e+03 -5e+03 2.02e+03 2.2e-06 0 5.64e+03 5.64e+03 World Transportation + 2 5.24e+03 -1e+04 6e+03 2.2e-06 0 7.32e+03 1.3e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 16, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.296 -0.249 0.242 2.89e-06 0 0 0 Tank initStep + 1 767 -5e+03 2.25e+03 2.89e-06 0 5.53e+03 5.53e+03 World Transportation + 2 2.88e+03 -1e+04 6.54e+03 2.89e-06 0 6.92e+03 1.25e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 0.297 -0.252 0.245 0.418 0 0 0.499 Tank initStep + 5 0.345 -0.317 0.299 0.186 0.233 0.0976 0.597 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 26, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.314 -0.275 0.264 3.33e-06 0 0 0 Tank initStep + 1 524 850 5e+03 3.33e-06 0 5.1e+03 5.1e+03 World Transportation + 2 1.9e+03 3.22e+03 1e+04 3.33e-06 0 5.7e+03 1.08e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 25, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.324 -0.289 0.275 3.53e-06 0 0 0 Tank initStep + 1 -2.23e+03 -1.58e+03 5e+03 3.53e-06 0 5.7e+03 5.7e+03 World Transportation + 2 -6.16e+03 -3.55e+03 1e+04 3.53e-06 0 6.66e+03 1.24e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 24, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.315 -0.277 0.265 4.07e-06 0 0 0 Tank initStep + 1 -1.67e+03 -3.18e+03 1.88e+03 4.07e-06 4.07e-06 4.06e+03 4.06e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 23, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.329 -0.295 0.281 3.65e-06 0 0 0 Tank initStep + 1 4.77e+03 -407 -5e+03 3.65e-06 0 6.92e+03 6.92e+03 World Transportation + 2 4.77e+03 -407 -5e+03 3.65e-06 0 0 6.92e+03 Tank Transportation + 3 5e+03 -281 -4.77e+03 3.65e-06 0 348 7.27e+03 World Transportation + 4 5e+03 -281 -4.77e+03 3.65e-06 0 0 7.27e+03 Tank Transportation + 5 3.89e+03 -226 -4.04e+03 3.65e-06 3.65e-06 1.33e+03 8.6e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 22, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.338 -0.308 0.292 3.92e-06 0 0 0 Tank initStep + 1 -3.91e+03 -5e+03 2.29e+03 3.92e-06 0 6.75e+03 6.75e+03 World Transportation + 2 -3.91e+03 -5e+03 2.29e+03 3.92e-06 0 0 6.75e+03 Tank Transportation + 3 -5e+03 -2.59e+03 4.44e+03 3.92e-06 0 3.41e+03 1.02e+04 World Transportation + 4 -5e+03 -2.59e+03 4.44e+03 3.92e-06 0 0 1.02e+04 Tank Transportation + 5 -4.51e+03 -2.14e+03 4.76e+03 3.92e-06 3.92e-06 737 1.09e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 21, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.306 -0.264 0.255 2.64e-06 0 0 0 Tank initStep + 1 -5e+03 313 -162 2.64e-06 0 5.01e+03 5.01e+03 World Transportation + 2 -1e+04 792 1.06e+03 2.64e-06 0 5.17e+03 1.02e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 20, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.329 -0.295 0.28 3.93e-06 0 0 0 Tank initStep + 1 -2.18e+03 -5e+03 -2.6e+03 3.93e-06 0 6.04e+03 6.04e+03 World Transportation + 2 -2.18e+03 -5e+03 -2.6e+03 3.93e-06 0 0 6.04e+03 Tank Transportation + 3 -3.91e+03 -2.09e+03 -5e+03 3.93e-06 0 4.15e+03 1.02e+04 World Transportation + 4 -3.91e+03 -2.09e+03 -5e+03 3.93e-06 0 0 1.02e+04 Tank Transportation + 5 -5e+03 -240 -1.7e+03 3.93e-06 0 3.94e+03 1.41e+04 World Transportation + 6 -5e+03 -240 -1.7e+03 3.93e-06 0 0 1.41e+04 Tank Transportation + 7 -1.86e+03 822 3.2e+03 3.93e-06 3.93e-06 5.91e+03 2e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 0.345 -0.317 0.299 0.186 0 0 0.597 Tank initStep + 6 0.362 -0.337 0.315 0.169 0.0164 0.0304 0.627 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 27, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.351 -0.324 0.305 3.69e-06 0 0 0 Tank initStep + 1 299 -95.1 222 3.69e-06 3.69e-06 384 384 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 0.362 -0.337 0.315 0.169 0 0 0.627 Tank initStep + 7 0.376 -0.355 0.327 0.163 0.00652 0.0261 0.653 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 28, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.367 -0.344 0.319 4.11e-06 0 0 0 Tank initStep + 1 -1.36e+03 5e+03 838 4.11e-06 0 5.25e+03 5.25e+03 World Transportation + 2 -3.22e+03 1e+04 1.33e+03 4.11e-06 0 5.36e+03 1.06e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 0.376 -0.355 0.327 0.163 0 0 0.653 Tank initStep + 8 0.379 -0.375 0.34 0.158 0.00492 0.0245 0.678 Tank msc + 9 0.374 -0.426 0.379 0.143 0.0144 0.0739 0.752 Tank eIoni + 10 0.363 -0.48 0.389 0.122 0.0215 0.0652 0.817 Tank eIoni + 11 0.39 -0.513 0.405 0.107 0.0147 0.0532 0.87 Tank eIoni + 12 0.417 -0.498 0.383 0.0925 0.0147 0.0457 0.916 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 29, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.403 -0.506 0.395 3.42e-06 0 0 0 Tank initStep + 1 4.19e+03 5e+03 -4.19e+03 3.42e-06 0 7.75e+03 7.75e+03 World Transportation + 2 4.19e+03 5e+03 -4.19e+03 3.42e-06 0 0 7.75e+03 Tank Transportation + 3 5e+03 4.88e+03 -4.98e+03 3.42e-06 0 1.14e+03 8.89e+03 World Transportation + 4 5e+03 4.88e+03 -4.98e+03 3.42e-06 0 0 8.89e+03 Tank Transportation + 5 4.99e+03 4.88e+03 -5e+03 3.42e-06 0 24 8.91e+03 World Transportation + 6 4.99e+03 4.88e+03 -5e+03 3.42e-06 0 0 8.91e+03 Tank Transportation + 7 -1.14e+03 2.95e+03 -3.72e+03 3.42e-06 3.42e-06 6.55e+03 1.55e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 12 0.417 -0.498 0.383 0.0925 0 0 0.916 Tank initStep + 13 0.418 -0.492 0.376 0.0897 0.0028 0.00938 0.925 Tank msc + 14 0.414 -0.469 0.355 0.075 0.0147 0.0375 0.963 Tank eIoni + 15 0.41 -0.448 0.341 0.0543 0.0208 0.0313 0.994 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 31, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.411 -0.451 0.343 3.67e-06 0 0 0 Tank initStep + 1 3.12e+03 617 -5e+03 3.67e-06 0 5.93e+03 5.93e+03 World Transportation + 2 3.12e+03 617 -5e+03 3.67e-06 0 0 5.93e+03 Tank Transportation + 3 5e+03 312 -3.65e+03 3.67e-06 0 2.33e+03 8.26e+03 World Transportation + 4 5e+03 312 -3.65e+03 3.67e-06 0 0 8.26e+03 Tank Transportation + 5 1.33e+03 -1.83e+03 -278 3.67e-06 3.67e-06 5.43e+03 1.37e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 30, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.412 -0.457 0.347 2.67e-06 0 0 0 Tank initStep + 1 -1.38e+03 -5e+03 -3.64e+03 2.67e-06 0 6.34e+03 6.34e+03 World Transportation + 2 -3.68e+03 -8.82e+03 -1e+04 2.67e-06 0 7.76e+03 1.41e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 15 0.41 -0.448 0.341 0.0543 0 0 0.994 Tank initStep + 16 0.408 -0.445 0.339 0.0527 0.00159 0.00368 0.998 Tank msc + 17 0.402 -0.432 0.331 0.032 0.0207 0.0229 1.02 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 32, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.404 -0.436 0.333 2.28e-06 0 0 0 Tank initStep + 1 -5e+03 -1.68e+03 2.7e+03 2.28e-06 0 5.92e+03 5.92e+03 World Transportation + 2 -1e+04 -4e+03 7.77e+03 2.28e-06 0 7.49e+03 1.34e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 17 0.402 -0.432 0.331 0.032 0 0 1.02 Tank initStep + 18 0.401 -0.431 0.33 0.0311 0.000905 0.00144 1.02 Tank msc + 19 0.397 -0.426 0.324 0.0115 0.0196 0.0147 1.04 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 34, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.399 -0.428 0.326 3.04e-06 0 0 0 Tank initStep + 1 -367 5e+03 -2.77e+03 3.04e-06 0 5.73e+03 5.73e+03 World Transportation + 2 -367 5e+03 -2.77e+03 3.04e-06 0 0 5.73e+03 Tank Transportation + 3 -489 2.85e+03 -5e+03 3.04e-06 0 3.1e+03 8.83e+03 World Transportation + 4 -489 2.85e+03 -5e+03 3.04e-06 0 0 8.83e+03 Tank Transportation + 5 1.15e+03 -5e+03 1.43e+03 3.04e-06 0 1.03e+04 1.91e+04 World Transportation + 6 4.64e+03 -1e+04 7.63e+03 3.04e-06 0 8.7e+03 2.78e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 33, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.398 -0.427 0.324 2.98e-06 0 0 0 Tank initStep + 1 5e+03 498 1.95e+03 2.98e-06 0 5.39e+03 5.39e+03 World Transportation + 2 1e+04 3.9e+03 7.32e+03 2.98e-06 0 8.08e+03 1.35e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 19 0.397 -0.426 0.324 0.0115 0 0 1.04 Tank initStep + 20 0.397 -0.426 0.323 0.0111 0.000424 0.00023 1.04 Tank msc + 21 0.397 -0.428 0.323 0 0.0111 0.00269 1.04 Tank eIoni + 22 0.397 -0.428 0.323 0 0 0 1.04 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 36, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.397 -0.428 0.323 0.511 0 0 0 Tank initStep + 1 -1.83 2.83 5.03 0.415 1.42e-05 6.14 6.14 Tank compt + 2 -70.2 31.7 30.7 0.319 1.36e-05 78.5 84.7 Tank compt + 3 -92.7 39.8 16.2 0.19 1.42e-05 28 113 Tank compt + 4 -118 42.6 66.6 0.117 1.42e-05 56.3 169 Tank compt + 5 -91.1 53.4 55.4 0.115 1.42e-05 30.7 200 Tank compt + 6 47.5 167 29.5 0.0956 1.36e-05 181 381 Tank compt + 7 70 147 40.3 0.0929 0.000537 31.7 412 Tank compt + 8 86.1 144 40.5 0.068 1.42e-05 16.6 429 Tank compt + 9 65 143 41 0 0.000537 21.1 450 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 45, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 65 143 41 0.0675 0 0 0 Tank initStep + 1 65 143 41 0.0574 0.0101 0.00575 0.00575 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 46, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 65 143 41 2.71e-06 0 0 0 Tank initStep + 1 -5e+03 -3.67e+03 -2.5e+03 2.71e-06 0 6.83e+03 6.83e+03 World Transportation + 2 -5e+03 -3.67e+03 -2.5e+03 2.71e-06 0 0 6.83e+03 Tank Transportation + 3 -3.73e+03 -5e+03 -2.75e+03 2.71e-06 0 1.85e+03 8.68e+03 World Transportation + 4 1e+04 -8.74e+03 -3.4e+03 2.71e-06 0 1.42e+04 2.29e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 45, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 65 143 41 0.0574 0 0 0.00575 Tank initStep + 2 65 143 41 0.0556 0.00182 0.00433 0.0101 Tank msc + 3 65 143 41 0.0373 0.0183 0.0247 0.0347 Tank eIoni + 4 65 143 41 0.0228 0.0145 0.0179 0.0526 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 47, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 65 143 41 3.85e-06 0 0 0 Tank initStep + 1 -4.21e+03 -1.82e+03 -938 3.85e-06 3.85e-06 4.8e+03 4.8e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 45, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 65 143 41 0.0228 0 0 0.0526 Tank initStep + 5 65 143 41 0.0222 0.000597 0.000846 0.0535 Tank msc + 6 65 143 41 0.000703 0.0215 0.0101 0.0636 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 48, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 65 143 41 3.47e-06 0 0 0 Tank initStep + 1 -680 -1.12e+03 -141 3.47e-06 0 1.48e+03 1.48e+03 Tank OpRayleigh + 2 5e+03 2.81e+03 437 3.47e-06 0 6.93e+03 8.41e+03 World Transportation + 3 5e+03 2.81e+03 437 3.47e-06 0 0 8.41e+03 Tank Transportation + 4 4.49e+03 5e+03 595 3.47e-06 0 2.25e+03 1.07e+04 World Transportation + 5 1.8e+03 1e+04 2.37e+03 3.47e-06 0 5.95e+03 1.66e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 45, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 65 143 41 0.000703 0 0 0.0636 Tank initStep + 7 65 143 41 0.000703 0 2.55e-06 0.0636 Tank msc + 8 65 143 41 0 0.000703 3.19e-05 0.0636 Tank eIoni + 9 65 143 41 0 0 0 0.0636 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 44, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 86.1 144 40.5 0.0248 0 0 0 Tank initStep + 1 86.1 144 40.5 0.0242 0.000639 0.000984 0.000984 Tank msc + 2 86.1 144 40.5 0 0.0242 0.0115 0.0125 Tank eIoni + 3 86.1 144 40.5 0 0 0 0.0125 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 50, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 86.1 144 40.5 3.99e-06 0 0 0 Tank initStep + 1 -3.47e+03 2.4e+03 1.52e+03 3.99e-06 3.99e-06 4.47e+03 4.47e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 49, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 86.1 144 40.5 3.2e-06 0 0 0 Tank initStep + 1 -870 5e+03 -3.85e+03 3.2e-06 0 6.29e+03 6.29e+03 World Transportation + 2 -870 5e+03 -3.85e+03 3.2e-06 0 0 6.29e+03 Tank Transportation + 3 -1.09e+03 4.22e+03 -5e+03 3.2e-06 0 1.41e+03 7.7e+03 World Transportation + 4 -3.1e+03 -4.37e+03 -1e+04 3.2e-06 0 1.01e+04 1.78e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 43, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 70 147 40.3 0.00226 0 0 0 Tank initStep + 1 70 147 40.3 0.00226 0 1.53e-05 1.53e-05 Tank msc + 2 70 147 40.3 0 0.00226 0.000191 0.000206 Tank eIoni + 3 70 147 40.3 0 0 0 0.000206 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 42, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 47.5 167 29.5 0.0196 0 0 0 Tank initStep + 1 47.5 167 29.5 0.0186 0.00104 0.000649 0.000649 Tank msc + 2 47.5 167 29.5 0 0.0186 0.00738 0.00803 Tank eIoni + 3 47.5 167 29.5 0 0 0 0.00803 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -91.1 53.4 55.4 0.00175 0 0 0 Tank initStep + 1 -91.1 53.4 55.4 0.00169 6.81e-05 1.01e-05 1.01e-05 Tank msc + 2 -91.1 53.4 55.4 0 0.00169 0.000119 0.000129 Tank eIoni + 3 -91.1 53.4 55.4 0 0 0 0.000129 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 40, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -118 42.6 66.6 0.073 0 0 0 Tank initStep + 1 -118 42.6 66.6 0.0689 0.00416 0.00661 0.00661 Tank msc + 2 -118 42.6 66.6 0.0497 0.0192 0.0298 0.0364 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 52, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -118 42.6 66.6 3.49e-06 0 0 0 Tank initStep + 1 1.63e+03 -4.87e+03 -5e+03 3.49e-06 0 7.27e+03 7.27e+03 World Transportation + 2 1.63e+03 -4.87e+03 -5e+03 3.49e-06 0 0 7.27e+03 Tank Transportation + 3 1.65e+03 -5e+03 -4.79e+03 3.49e-06 0 247 7.51e+03 World Transportation + 4 1.65e+03 -5e+03 -4.79e+03 3.49e-06 0 0 7.51e+03 Tank Transportation + 5 2.07e+03 -1.46e+03 -3.57e+03 3.49e-06 3.49e-06 3.77e+03 1.13e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 51, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -118 42.6 66.6 4.02e-06 0 0 0 Tank initStep + 1 2.04e+03 -5e+03 1.12e+03 4.02e-06 0 5.59e+03 5.59e+03 World Transportation + 2 2.04e+03 -5e+03 1.12e+03 4.02e-06 0 0 5.59e+03 Tank Transportation + 3 4.05e+03 -1.09e+03 4.7e+03 4.02e-06 4.02e-06 5.67e+03 1.13e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 40, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -118 42.6 66.6 0.0497 0 0 0.0364 Tank initStep + 3 -118 42.6 66.6 0.0476 0.00206 0.00336 0.0398 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 54, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -118 42.6 66.6 3.2e-06 0 0 0 Tank initStep + 1 969 -1.67e+03 386 3.2e-06 3.2e-06 2.05e+03 2.05e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 53, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -118 42.6 66.6 3.76e-06 0 0 0 Tank initStep + 1 253 2e+03 -118 3.76e-06 3.76e-06 2e+03 2e+03 Bubble Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 40, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 -118 42.6 66.6 0.0476 0 0 0.0398 Tank initStep + 4 -118 42.6 66.6 0.0445 0.00317 0.00312 0.0429 Tank msc + 5 -118 42.5 66.6 0.0247 0.0197 0.0206 0.0635 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 55, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -118 42.5 66.6 3.95e-06 0 0 0 Tank initStep + 1 -5e+03 -1.43e+03 -4.1e+03 3.95e-06 0 6.59e+03 6.59e+03 World Transportation + 2 -5e+03 -1.43e+03 -4.1e+03 3.95e-06 0 0 6.59e+03 Tank Transportation + 3 2.51e+03 -162 5e+03 3.95e-06 0 1.19e+04 1.85e+04 World Transportation + 4 2.51e+03 -162 5e+03 3.95e-06 0 0 1.85e+04 Tank Transportation + 5 5e+03 1.78e+03 730 3.95e-06 0 5.31e+03 2.38e+04 World Transportation + 6 5e+03 1.78e+03 730 3.95e-06 0 0 2.38e+04 Tank Transportation + 7 3.06e+03 5e+03 -3.12e+03 3.95e-06 0 5.38e+03 2.92e+04 World Transportation + 8 3.06e+03 5e+03 -3.12e+03 3.95e-06 0 0 2.92e+04 Tank Transportation + 9 3.44e+03 4.48e+03 -5e+03 3.95e-06 0 1.98e+03 3.11e+04 World Transportation + 10 5.22e+03 -162 -1e+04 3.95e-06 0 7.05e+03 3.82e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 40, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 -118 42.5 66.6 0.0247 0 0 0.0635 Tank initStep + 6 -118 42.5 66.6 0.0241 0.000614 0.000979 0.0645 Tank msc + 7 -118 42.5 66.6 0.000509 0.0236 0.0115 0.076 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 56, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -118 42.5 66.6 3.71e-06 0 0 0 Tank initStep + 1 4.06e+03 1.33e+03 -5e+03 3.71e-06 0 6.69e+03 6.69e+03 World Transportation + 2 4.06e+03 1.33e+03 -5e+03 3.71e-06 0 0 6.69e+03 Tank Transportation + 3 5e+03 1.09e+03 -3.19e+03 3.71e-06 0 2.05e+03 8.74e+03 World Transportation + 4 5e+03 1.09e+03 -3.19e+03 3.71e-06 0 0 8.74e+03 Tank Transportation + 5 -617 905 5e+03 3.71e-06 0 9.93e+03 1.87e+04 World Transportation + 6 -617 905 5e+03 3.71e-06 0 0 1.87e+04 Tank Transportation + 7 -2.9e+03 49.8 4.41e+03 3.71e-06 3.71e-06 2.51e+03 2.12e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 40, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 -118 42.5 66.6 0.000509 0 0 0.076 Tank initStep + 8 -118 42.5 66.6 0.000407 0.000102 1.68e-06 0.076 Tank msc + 9 -118 42.5 66.6 0 0.000407 1.61e-05 0.076 Tank eIoni + 10 -118 42.5 66.6 0 0 0 0.076 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 39, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.7 39.8 16.2 0.129 0 0 0 Tank initStep + 1 -92.7 39.8 16.2 0.124 0.00487 0.0175 0.0175 Tank msc + 2 -92.7 39.9 16.1 0.102 0.0227 0.0566 0.074 Tank eIoni + 3 -92.7 39.9 16.1 0.0786 0.0229 0.0446 0.119 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 58, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.7 39.9 16.1 2.07e-06 0 0 0 Tank initStep + 1 -5e+03 1.52e+03 4.03e+03 2.07e-06 0 6.51e+03 6.51e+03 World Transportation + 2 -5e+03 1.52e+03 4.03e+03 2.07e-06 0 0 6.51e+03 Tank Transportation + 3 -3.55e+03 1.15e+03 5e+03 2.07e-06 0 1.79e+03 8.3e+03 World Transportation + 4 -3.55e+03 1.15e+03 5e+03 2.07e-06 0 0 8.3e+03 Tank Transportation + 5 -285 1.32e+03 1.77e+03 2.07e-06 2.07e-06 4.59e+03 1.29e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 57, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.7 39.9 16.1 2.51e-06 0 0 0 Tank initStep + 1 -916 -5e+03 1.19e+03 2.51e-06 0 5.24e+03 5.24e+03 World Transportation + 2 -3.33e+03 -1e+04 4.54e+03 2.51e-06 0 6.48e+03 1.17e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 39, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 -92.7 39.9 16.1 0.0786 0 0 0.119 Tank initStep + 4 -92.7 39.9 16.1 0.0767 0.00195 0.00752 0.126 Tank msc + 5 -92.7 39.9 16.1 0.0491 0.0276 0.0331 0.159 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 59, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.7 39.9 16.1 3.43e-06 0 0 0 Tank initStep + 1 -888 5e+03 -4.02e+03 3.43e-06 0 6.45e+03 6.45e+03 World Transportation + 2 -2.53e+03 6.8e+03 -1e+04 3.43e-06 0 6.45e+03 1.29e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 39, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 -92.7 39.9 16.1 0.0491 0 0 0.159 Tank initStep + 6 -92.7 39.9 16.1 0.0483 0.000749 0.00329 0.163 Tank msc + 7 -92.7 39.9 16.1 0.0325 0.0158 0.022 0.185 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 60, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.7 39.9 16.1 3.19e-06 0 0 0 Tank initStep + 1 5e+03 1.37e+03 -1.92e+03 3.19e-06 0 5.61e+03 5.61e+03 World Transportation + 2 1e+04 5.11e+03 -7.85e+03 3.19e-06 0 8.61e+03 1.42e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 39, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 -92.7 39.9 16.1 0.0325 0 0 0.185 Tank initStep + 8 -92.7 39.9 16.1 0.0317 0.000828 0.00159 0.186 Tank msc + 9 -92.7 39.9 16.1 0.0187 0.013 0.0156 0.202 Tank eIoni + 10 -92.7 39.9 16.1 0 0.0187 0.0075 0.209 Tank eIoni + 11 -92.7 39.9 16.1 0 0 0 0.209 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 38, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -70.2 31.7 30.7 0.096 0 0 0 Tank initStep + 1 -70.2 31.7 30.7 0.0918 0.00425 0.0106 0.0106 Tank msc + 2 -70.2 31.7 30.8 0.075 0.0168 0.0399 0.0505 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 63, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -70.2 31.7 30.8 3.98e-06 0 0 0 Tank initStep + 1 -2.1e+03 5e+03 641 3.98e-06 0 5.4e+03 5.4e+03 World Transportation + 2 -5.94e+03 1e+04 2.14e+03 3.98e-06 0 6.48e+03 1.19e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 62, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -70.2 31.7 30.8 3.36e-06 0 0 0 Tank initStep + 1 708 -229 1.51e+03 3.36e-06 3.36e-06 1.69e+03 1.69e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 61, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -70.2 31.7 30.8 2.24e-06 0 0 0 Tank initStep + 1 3.05e+03 2.82e+03 -5e+03 2.24e-06 0 6.54e+03 6.54e+03 World Transportation + 2 3.05e+03 2.82e+03 -5e+03 2.24e-06 0 0 6.54e+03 Tank Transportation + 3 4.33e+03 5e+03 -3.3e+03 2.24e-06 0 3.05e+03 9.59e+03 World Transportation + 4 4.33e+03 5e+03 -3.3e+03 2.24e-06 0 0 9.59e+03 Tank Transportation + 5 5e+03 3.61e+03 -1.99e+03 2.24e-06 0 2.03e+03 1.16e+04 World Transportation + 6 5e+03 3.61e+03 -1.99e+03 2.24e-06 0 0 1.16e+04 Tank Transportation + 7 3.23e+03 -2.31e+03 1.05e+03 2.24e-06 2.24e-06 6.89e+03 1.85e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 38, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -70.2 31.7 30.8 0.075 0 0 0.0505 Tank initStep + 3 -70.2 31.7 30.8 0.0709 0.00415 0.00693 0.0574 Tank msc + 4 -70.2 31.7 30.8 0.055 0.0159 0.0307 0.0881 Tank eIoni + 5 -70.2 31.7 30.8 0.0384 0.0166 0.0244 0.113 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 65, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -70.2 31.7 30.8 4.03e-06 0 0 0 Tank initStep + 1 3.18e+03 -5e+03 -4.48e+03 4.03e-06 0 7.5e+03 7.5e+03 World Transportation + 2 3.18e+03 -5e+03 -4.48e+03 4.03e-06 0 0 7.5e+03 Tank Transportation + 3 3.69e+03 -4.47e+03 -5e+03 4.03e-06 0 901 8.4e+03 World Transportation + 4 3.69e+03 -4.47e+03 -5e+03 4.03e-06 0 0 8.4e+03 Tank Transportation + 5 5e+03 -3.11e+03 -3.54e+03 4.03e-06 0 2.39e+03 1.08e+04 World Transportation + 6 5e+03 -3.11e+03 -3.54e+03 4.03e-06 0 0 1.08e+04 Tank Transportation + 7 4.72e+03 -2.7e+03 -2.98e+03 4.03e-06 4.03e-06 749 1.15e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 64, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -70.2 31.7 30.8 2.56e-06 0 0 0 Tank initStep + 1 -5e+03 -2.28e+03 -3.78e+03 2.56e-06 0 6.65e+03 6.65e+03 World Transportation + 2 -5.12e+03 -5.64e+03 -1e+04 2.56e-06 0 7.07e+03 1.37e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 38, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 -70.2 31.7 30.8 0.0384 0 0 0.113 Tank initStep + 6 -70.2 31.7 30.8 0.0374 0.00106 0.00213 0.115 Tank msc + 7 -70.2 31.7 30.8 0.0199 0.0175 0.0179 0.133 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 67, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -70.2 31.7 30.8 2.63e-06 0 0 0 Tank initStep + 1 951 -1.35e+03 957 2.63e-06 0 1.95e+03 1.95e+03 Tank OpRayleigh + 2 -3.81e+03 -2.1e+03 5e+03 2.63e-06 0 6.29e+03 8.24e+03 World Transportation + 3 -1e+04 -2.83e+03 5.67e+03 2.63e-06 0 6.26e+03 1.45e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 66, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -70.2 31.7 30.8 2.81e-06 0 0 0 Tank initStep + 1 1.76e+03 -5e+03 -3.52e+03 2.81e-06 0 6.43e+03 6.43e+03 World Transportation + 2 1.76e+03 -5e+03 -3.52e+03 2.81e-06 0 0 6.43e+03 Tank Transportation + 3 1.32e+03 -3.74e+03 -5e+03 2.81e-06 0 2e+03 8.42e+03 World Transportation + 4 1.32e+03 -3.74e+03 -5e+03 2.81e-06 0 0 8.42e+03 Tank Transportation + 5 -2.48e+03 -2.67e+03 5e+03 2.81e-06 0 1.08e+04 1.92e+04 World Transportation + 6 -2.48e+03 -2.67e+03 5e+03 2.81e-06 0 0 1.92e+04 Tank Transportation + 7 -5e+03 -3.64e+03 703 2.81e-06 0 5.08e+03 2.42e+04 World Transportation + 8 -5e+03 -3.64e+03 703 2.81e-06 0 0 2.42e+04 Tank Transportation + 9 -2.85e+03 -5e+03 -1.84e+03 2.81e-06 0 3.59e+03 2.78e+04 World Transportation + 10 -2.85e+03 -5e+03 -1.84e+03 2.81e-06 0 0 2.78e+04 Tank Transportation + 11 -2.28e+03 -4.02e+03 -5e+03 2.81e-06 0 3.36e+03 3.12e+04 World Transportation + 12 -869 -615 -1e+04 2.81e-06 0 6.21e+03 3.74e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 38, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 -70.2 31.7 30.8 0.0199 0 0 0.133 Tank initStep + 8 -70.2 31.7 30.8 0.0193 0.000619 0.000665 0.133 Tank msc + 9 -70.2 31.7 30.8 0 0.0193 0.00786 0.141 Tank eIoni + 10 -70.2 31.7 30.8 0 0 0 0.141 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 37, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.83 2.83 5.03 0.0957 0 0 0 Tank initStep + 1 -1.82 2.83 5.04 0.0911 0.00456 0.0105 0.0105 Tank msc + 2 -1.8 2.83 5.06 0.078 0.0132 0.0396 0.0501 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 68, Parent ID = 37 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.81 2.83 5.05 3.94e-06 0 0 0 Tank initStep + 1 -2.58e+03 -5e+03 4.01e+03 3.94e-06 0 6.91e+03 6.91e+03 World Transportation + 2 -6.15e+03 -7.93e+03 1e+04 3.94e-06 0 7.56e+03 1.45e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 37, Parent ID = 36 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -1.8 2.83 5.06 0.078 0 0 0.0501 Tank initStep + 3 -1.79 2.84 5.06 0.0759 0.00202 0.0074 0.0575 Tank msc + 4 -1.79 2.87 5.06 0.0592 0.0168 0.0328 0.0903 Tank eIoni + 5 -1.78 2.88 5.05 0.0451 0.0141 0.026 0.116 Tank eIoni + 6 -1.76 2.89 5.05 0.0313 0.0138 0.0208 0.137 Tank eIoni + 7 -1.76 2.89 5.05 0.0159 0.0154 0.0154 0.153 Tank eIoni + 8 -1.76 2.89 5.05 0 0.0159 0.00558 0.158 Tank eIoni + 9 -1.76 2.89 5.05 0 0 0 0.158 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 69, Parent ID = 37 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.76 2.89 5.05 3.46e-06 0 0 0 Tank initStep + 1 1.62e+03 214 -5e+03 3.46e-06 0 5.27e+03 5.27e+03 World Transportation + 2 9.16e+03 553 -1e+04 3.46e-06 0 9.05e+03 1.43e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 35, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.397 -0.428 0.323 0.511 0 0 0 Tank initStep + 1 89.2 -130 -187 0.34 2.92e-05 245 245 Tank compt + 2 104 -139 -185 0.329 2.92e-05 17.5 262 Tank compt + 3 106 -140 -185 0.214 1.42e-05 1.94 264 Tank compt + 4 112 -182 -215 0.17 1.42e-05 52.2 317 Tank compt + 5 98.3 -169 -288 0.154 1.42e-05 75.6 392 Tank compt + 6 37 -171 -330 0.132 2.92e-05 74.1 466 Tank compt + 7 37.6 -172 -333 0.123 2.92e-05 3.58 470 Tank compt + 8 84 -174 -369 0.104 1.42e-05 58.7 529 Tank compt + 9 58.5 -228 -431 0.101 1.42e-05 86.4 615 Tank compt + 10 58.6 -230 -436 0.097 2.92e-05 5.27 620 Tank compt + 11 39.9 -194 -551 0.0814 2.92e-05 122 742 Tank compt + 12 -38.8 -263 -563 0.0682 1.42e-05 105 848 Tank compt + 13 -42.7 -251 -580 0.0587 1.42e-05 21 869 Tank compt + 14 -66 -287 -588 0.0551 1.42e-05 43.8 912 Tank compt + 15 -40.5 -316 -600 0.0532 2.92e-05 40.4 953 Tank compt + 16 -28.2 -352 -581 0.0468 1.42e-05 42.7 995 Tank compt + 17 -69.5 -356 -592 0.0468 0 42.9 1.04e+03 Tank Rayl + 18 -77.6 -358 -594 0.046 1.42e-05 8.62 1.05e+03 Tank compt + 19 -78.2 -358 -594 0.0457 1.42e-05 0.609 1.05e+03 Tank compt + 20 -101 -356 -579 0.0424 2.92e-05 27.5 1.08e+03 Tank compt + 21 -122 -353 -602 0.0401 1.42e-05 30.7 1.11e+03 Tank compt + 22 -125 -376 -611 0 0.000537 25.2 1.13e+03 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -125 -376 -611 0.0396 0 0 0 Tank initStep + 1 -125 -376 -611 0.0381 0.00147 0.00225 0.00225 Tank msc + 2 -125 -376 -611 0.0246 0.0135 0.0182 0.0205 Tank eIoni + 3 -125 -376 -611 0.00186 0.0227 0.0118 0.0323 Tank eIoni + 4 -125 -376 -611 0 0.00186 0.000139 0.0324 Tank eIoni + 5 -125 -376 -611 0 0 0 0.0324 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 89, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -122 -353 -602 0.00227 0 0 0 Tank initStep + 1 -122 -353 -602 0.00203 0.000231 1.54e-05 1.54e-05 Tank msc + 2 -122 -353 -602 0 0.00203 0.000161 0.000177 Tank eIoni + 3 -122 -353 -602 0 0 0 0.000177 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 88, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -101 -356 -579 0.0033 0 0 0 Tank initStep + 1 -101 -356 -579 0.00329 1.95e-05 2.9e-05 2.9e-05 Tank msc + 2 -101 -356 -579 0 0.00329 0.000359 0.000388 Tank eIoni + 3 -101 -356 -579 0 0 0 0.000388 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 87, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -78.2 -358 -594 0.000278 0 0 0 Tank initStep + 1 -78.2 -358 -594 0.000278 0 8.7e-07 8.7e-07 Tank msc + 2 -78.2 -358 -594 0 0.000278 1.09e-05 1.17e-05 Tank eIoni + 3 -78.2 -358 -594 0 0 0 1.17e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -77.6 -358 -594 0.000783 0 0 0 Tank initStep + 1 -77.6 -358 -594 0.000783 0 2.97e-06 2.97e-06 Tank msc + 2 -77.6 -358 -594 0 0.000783 3.71e-05 4e-05 Tank eIoni + 3 -77.6 -358 -594 0 0 0 4e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 85, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -28.2 -352 -581 0.00637 0 0 0 Tank initStep + 1 -28.2 -352 -581 0.00628 8.67e-05 8.98e-05 8.98e-05 Tank msc + 2 -28.2 -352 -581 0 0.00628 0.0011 0.00119 Tank eIoni + 3 -28.2 -352 -581 0 0 0 0.00119 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 84, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -40.5 -316 -600 0.0019 0 0 0 Tank initStep + 1 -40.5 -316 -600 0.00179 0.000101 1.15e-05 1.15e-05 Tank msc + 2 -40.5 -316 -600 0 0.00179 0.000131 0.000143 Tank eIoni + 3 -40.5 -316 -600 0 0 0 0.000143 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -66 -287 -588 0.00349 0 0 0 Tank initStep + 1 -66 -287 -588 0.00323 0.000259 3.19e-05 3.19e-05 Tank msc + 2 -66 -287 -588 0 0.00323 0.00035 0.000382 Tank eIoni + 3 -66 -287 -588 0 0 0 0.000382 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -42.7 -251 -580 0.00957 0 0 0 Tank initStep + 1 -42.7 -251 -580 0.00937 0.000194 0.000184 0.000184 Tank msc + 2 -42.7 -251 -580 0 0.00937 0.00221 0.0024 Tank eIoni + 3 -42.7 -251 -580 0 0 0 0.0024 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 81, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -38.8 -263 -563 0.0132 0 0 0 Tank initStep + 1 -38.8 -263 -563 0.0126 0.000555 0.000322 0.000322 Tank msc + 2 -38.8 -263 -563 0 0.0126 0.00374 0.00406 Tank eIoni + 3 -38.8 -263 -563 0 0 0 0.00406 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 80, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 39.9 -194 -551 0.0155 0 0 0 Tank initStep + 1 39.9 -194 -551 0.0153 0.00019 0.000429 0.000429 Tank msc + 2 39.9 -194 -551 0 0.0153 0.00525 0.00568 Tank eIoni + 3 39.9 -194 -551 0 0 0 0.00568 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 91, Parent ID = 80 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 39.9 -194 -551 2.15e-06 0 0 0 Tank initStep + 1 316 -812 -486 2.15e-06 2.15e-06 680 680 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 79, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 58.6 -230 -436 0.00409 0 0 0 Tank initStep + 1 58.6 -230 -436 0.00401 8.19e-05 4.19e-05 4.19e-05 Tank msc + 2 58.6 -230 -436 0 0.00401 0.000505 0.000547 Tank eIoni + 3 58.6 -230 -436 0 0 0 0.000547 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 78, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 58.5 -228 -431 0.00277 0 0 0 Tank initStep + 1 58.5 -228 -431 0.00277 0 2.16e-05 2.16e-05 Tank msc + 2 58.5 -228 -431 0 0.00277 0.00027 0.000292 Tank eIoni + 3 58.5 -228 -431 0 0 0 0.000292 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 77, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 84 -174 -369 0.0191 0 0 0 Tank initStep + 1 84 -174 -369 0.0188 0.000318 0.000622 0.000622 Tank msc + 2 84 -174 -369 0 0.0188 0.00755 0.00818 Tank eIoni + 3 84 -174 -369 0 0 0 0.00818 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 37.6 -172 -333 0.00869 0 0 0 Tank initStep + 1 37.6 -172 -333 0.00841 0.000277 0.000155 0.000155 Tank msc + 2 37.6 -172 -333 0 0.00841 0.00183 0.00198 Tank eIoni + 3 37.6 -172 -333 0 0 0 0.00198 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 75, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 37 -171 -330 0.0224 0 0 0 Tank initStep + 1 37 -171 -330 0.021 0.00134 0.000818 0.000818 Tank msc + 2 37 -171 -330 0 0.021 0.00917 0.00998 Tank eIoni + 3 37 -171 -330 0 0 0 0.00998 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 92, Parent ID = 75 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 37 -171 -330 3.48e-06 0 0 0 Tank initStep + 1 3.19e+03 -3.38e+03 4.73e+03 3.48e-06 3.48e-06 6.77e+03 6.77e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 74, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 98.3 -169 -288 0.016 0 0 0 Tank initStep + 1 98.3 -169 -288 0.0154 0.00057 0.000454 0.000454 Tank msc + 2 98.3 -169 -288 0 0.0154 0.00532 0.00578 Tank eIoni + 3 98.3 -169 -288 0 0 0 0.00578 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 93, Parent ID = 74 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 98.3 -169 -288 3.71e-06 0 0 0 Tank initStep + 1 2.74e+03 1.02e+03 5e+03 3.71e-06 0 6.03e+03 6.03e+03 World Transportation + 2 2.74e+03 1.02e+03 5e+03 3.71e-06 0 0 6.03e+03 Tank Transportation + 3 5e+03 1.43e+03 3.26e+03 3.71e-06 0 2.88e+03 8.91e+03 World Transportation + 4 1e+04 2.4e+03 -7.82e+03 3.71e-06 0 1.22e+04 2.11e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 73, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 112 -182 -215 0.0433 0 0 0 Tank initStep + 1 112 -182 -215 0.0404 0.00294 0.00264 0.00264 Tank msc + 2 112 -182 -215 0.0162 0.0241 0.0191 0.0217 Tank eIoni + 3 112 -182 -215 0 0.0162 0.00582 0.0275 Tank eIoni + 4 112 -182 -215 0 0 0 0.0275 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 72, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 106 -140 -185 0.115 0 0 0 Tank initStep + 1 106 -140 -185 0.108 0.00705 0.0144 0.0144 Tank msc + 2 106 -140 -185 0.0857 0.0225 0.048 0.0624 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 94, Parent ID = 72 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 106 -140 -185 4.11e-06 0 0 0 Tank initStep + 1 -5e+03 -3.52e+03 3.64e+03 4.11e-06 0 7.22e+03 7.22e+03 World Transportation + 2 -5e+03 -3.52e+03 3.64e+03 4.11e-06 0 0 7.22e+03 Tank Transportation + 3 -3.49e+03 -5e+03 4.08e+03 4.11e-06 0 2.16e+03 9.38e+03 World Transportation + 4 -3.49e+03 -5e+03 4.08e+03 4.11e-06 0 0 9.38e+03 Tank Transportation + 5 2.48e+03 -1.09e+03 5e+03 4.11e-06 0 7.2e+03 1.66e+04 World Transportation + 6 2.48e+03 -1.09e+03 5e+03 4.11e-06 0 0 1.66e+04 Tank Transportation + 7 5e+03 530 3.08e+03 4.11e-06 0 3.56e+03 2.01e+04 World Transportation + 8 5e+03 530 3.08e+03 4.11e-06 0 0 2.01e+04 Tank Transportation + 9 -5e+03 4.93e+03 527 4.11e-06 0 1.12e+04 3.14e+04 World Transportation + 10 -5e+03 4.93e+03 527 4.11e-06 0 0 3.14e+04 Tank Transportation + 11 -4.93e+03 5e+03 562 4.11e-06 0 106 3.15e+04 World Transportation + 12 -4.93e+03 5e+03 562 4.11e-06 0 0 3.15e+04 Tank Transportation + 13 1.1e+03 120 5e+03 4.11e-06 0 8.93e+03 4.04e+04 World Transportation + 14 1.1e+03 120 5e+03 4.11e-06 0 0 4.04e+04 Tank Transportation + 15 5e+03 434 -1.76e+03 4.11e-06 0 7.81e+03 4.82e+04 World Transportation + 16 5e+03 434 -1.76e+03 4.11e-06 0 0 4.82e+04 Tank Transportation + 17 4.72e+03 663 -5e+03 4.11e-06 0 3.26e+03 5.15e+04 World Transportation + 18 4.72e+03 663 -5e+03 4.11e-06 0 0 5.15e+04 Tank Transportation + 19 4.24e+03 5e+03 -3.47e+03 4.11e-06 0 4.62e+03 5.61e+04 World Transportation + 20 2.9e+03 1e+04 -492 4.11e-06 0 5.97e+03 6.21e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 72, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 106 -140 -185 0.0857 0 0 0.0624 Tank initStep + 3 106 -140 -185 0.0793 0.00636 0.00872 0.0711 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 95, Parent ID = 72 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 106 -140 -185 3.19e-06 0 0 0 Tank initStep + 1 5e+03 -3.32e+03 110 3.19e-06 0 5.85e+03 5.85e+03 World Transportation + 2 5e+03 -3.32e+03 110 3.19e-06 0 0 5.85e+03 Tank Transportation + 3 3.46e+03 -5e+03 1.32e+03 3.19e-06 0 2.58e+03 8.42e+03 World Transportation + 4 3.46e+03 -5e+03 1.32e+03 3.19e-06 0 0 8.42e+03 Tank Transportation + 5 -5e+03 1.32e+03 2.06e+03 3.19e-06 0 1.06e+04 1.9e+04 World Transportation + 6 -5e+03 1.32e+03 2.06e+03 3.19e-06 0 0 1.9e+04 Tank Transportation + 7 -4.37e+03 3.72e+03 1.42e+03 3.19e-06 0 2.56e+03 2.16e+04 Tank OpRayleigh + 8 -3.74e+03 5e+03 1.96e+03 3.19e-06 0 1.53e+03 2.31e+04 World Transportation + 9 2.83e+03 1e+04 7.74e+03 3.19e-06 0 1.01e+04 3.32e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 72, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 106 -140 -185 0.0793 0 0 0.0711 Tank initStep + 4 106 -140 -185 0.0777 0.0016 0.00763 0.0788 Tank msc + 5 106 -140 -185 0.0689 0.00875 0.0335 0.112 Tank eIoni + 6 106 -140 -185 0.0553 0.0137 0.0299 0.142 Tank eIoni + 7 106 -140 -185 0.0406 0.0147 0.0245 0.167 Tank eIoni + 8 106 -140 -185 0.0206 0.0199 0.0192 0.186 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 97, Parent ID = 72 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 106 -140 -185 3.08e-06 0 0 0 Tank initStep + 1 -2.75e+03 4.34e+03 5e+03 3.08e-06 0 7.42e+03 7.42e+03 World Transportation + 2 -2.75e+03 4.34e+03 5e+03 3.08e-06 0 0 7.42e+03 Tank Transportation + 3 -2.89e+03 5e+03 4.49e+03 3.08e-06 0 845 8.27e+03 World Transportation + 4 -2.89e+03 5e+03 4.49e+03 3.08e-06 0 0 8.27e+03 Tank Transportation + 5 -3.14e+03 3.79e+03 3.19e+03 3.08e-06 3.08e-06 1.79e+03 1.01e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 96, Parent ID = 72 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 106 -140 -185 2.23e-06 0 0 0 Tank initStep + 1 -2.02e+03 5e+03 4.1e+03 2.23e-06 0 7.02e+03 7.02e+03 World Transportation + 2 -2.02e+03 5e+03 4.1e+03 2.23e-06 0 0 7.02e+03 Tank Transportation + 3 -3.34e+03 3.95e+03 5e+03 2.23e-06 0 1.91e+03 8.93e+03 World Transportation + 4 -3.34e+03 3.95e+03 5e+03 2.23e-06 0 0 8.93e+03 Tank Transportation + 5 -5e+03 1.41e+03 3.02e+03 2.23e-06 0 3.63e+03 1.26e+04 World Transportation + 6 -5e+03 1.41e+03 3.02e+03 2.23e-06 0 0 1.26e+04 Tank Transportation + 7 881 -5e+03 4.26e+03 2.23e-06 0 8.78e+03 2.13e+04 World Transportation + 8 1e+04 -8.45e+03 7.65e+03 2.23e-06 0 1.03e+04 3.17e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 72, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 106 -140 -185 0.0206 0 0 0.186 Tank initStep + 9 106 -140 -185 0.0199 0.000761 0.000711 0.187 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 98, Parent ID = 72 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 106 -140 -185 3.51e-06 0 0 0 Tank initStep + 1 -1.05e+03 3.92e+03 -2e+03 3.51e-06 3.51e-06 4.6e+03 4.6e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 72, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 106 -140 -185 0.0199 0 0 0.187 Tank initStep + 10 106 -140 -185 0.018 0.0019 0.000666 0.187 Tank msc + 11 106 -140 -185 0 0.018 0.00698 0.194 Tank eIoni + 12 106 -140 -185 0 0 0 0.194 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 99, Parent ID = 72 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 106 -140 -185 2.45e-06 0 0 0 Tank initStep + 1 -1.25e+03 5e+03 -2.03e+03 2.45e-06 0 5.63e+03 5.63e+03 World Transportation + 2 -6.08e+03 1e+04 -5.91e+03 2.45e-06 0 7.96e+03 1.36e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 71, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 104 -139 -185 0.0107 0 0 0 Tank initStep + 1 104 -139 -185 0.0105 0.000272 0.000225 0.000225 Tank msc + 2 104 -139 -185 0 0.0105 0.00268 0.00291 Tank eIoni + 3 104 -139 -185 0 0 0 0.00291 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 70, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 89.2 -130 -187 0.171 0 0 0 Tank initStep + 1 89.2 -130 -187 0.167 0.00468 0.0278 0.0278 Tank msc + 2 89.2 -130 -187 0.122 0.0443 0.0823 0.11 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 100, Parent ID = 70 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 89.2 -130 -187 3.77e-06 0 0 0 Tank initStep + 1 5e+03 1.37e+03 3.56e+03 3.77e-06 0 6.36e+03 6.36e+03 World Transportation + 2 1e+04 2.43e+03 9.72e+03 3.77e-06 0 8e+03 1.44e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 70, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 89.2 -130 -187 0.122 0 0 0.11 Tank initStep + 3 89.2 -130 -187 0.115 0.00712 0.016 0.126 Tank msc + 4 89.2 -130 -188 0.0978 0.0175 0.0517 0.178 Tank eIoni + 5 89.2 -130 -188 0.0752 0.0227 0.0428 0.221 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 101, Parent ID = 70 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 89.2 -130 -188 3.47e-06 0 0 0 Tank initStep + 1 -710 504 5e+03 3.47e-06 0 5.29e+03 5.29e+03 World Transportation + 2 -771 741 1e+04 3.47e-06 0 5.01e+03 1.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 70, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 89.2 -130 -188 0.0752 0 0 0.221 Tank initStep + 6 89.2 -130 -188 0.0713 0.00383 0.00695 0.227 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 102, Parent ID = 70 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 89.2 -130 -188 2.61e-06 0 0 0 Tank initStep + 1 -889 -2.84e+03 5e+03 2.61e-06 0 5.94e+03 5.94e+03 World Transportation + 2 -889 -2.84e+03 5e+03 2.61e-06 0 0 5.94e+03 Tank Transportation + 3 -927 -5e+03 2.46e+03 2.61e-06 0 3.33e+03 9.26e+03 World Transportation + 4 -927 -5e+03 2.46e+03 2.61e-06 0 0 9.26e+03 Tank Transportation + 5 -812 -4.91e+03 2.09e+03 2.61e-06 0 401 9.67e+03 Tank OpRayleigh + 6 -652 -5e+03 2.17e+03 2.61e-06 0 200 9.86e+03 World Transportation + 7 -652 -5e+03 2.17e+03 2.61e-06 0 0 9.86e+03 Tank Transportation + 8 -3.74e+03 -3.98e+03 5e+03 2.61e-06 0 4.31e+03 1.42e+04 World Transportation + 9 -1e+04 -2.58e+03 5.89e+03 2.61e-06 0 6.47e+03 2.07e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 70, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 89.2 -130 -188 0.0713 0 0 0.227 Tank initStep + 7 89.1 -130 -188 0.0675 0.0038 0.00634 0.234 Tank msc + 8 89.1 -130 -188 0.0514 0.0161 0.0293 0.263 Tank eIoni + 9 89.1 -130 -188 0.0381 0.0133 0.0231 0.286 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 103, Parent ID = 70 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 89.1 -130 -188 4.1e-06 0 0 0 Tank initStep + 1 2.67e+03 -740 -5e+03 4.1e-06 0 5.5e+03 5.5e+03 World Transportation + 2 2.67e+03 -740 -5e+03 4.1e-06 0 0 5.5e+03 Tank Transportation + 3 2.78e+03 -732 -4.95e+03 4.1e-06 4.1e-06 115 5.61e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 70, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 89.1 -130 -188 0.0381 0 0 0.286 Tank initStep + 10 89.1 -130 -188 0.0365 0.00159 0.0021 0.288 Tank msc + 11 89.1 -130 -188 0.0135 0.0231 0.0176 0.306 Tank eIoni + 12 89.1 -130 -188 0 0.0135 0.00418 0.31 Tank eIoni + 13 89.1 -130 -188 0 0 0 0.31 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 105, Parent ID = 70 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 89.1 -130 -188 3.97e-06 0 0 0 Tank initStep + 1 -819 2.1e+03 5e+03 3.97e-06 0 5.72e+03 5.72e+03 World Transportation + 2 -2.28e+03 7.19e+03 1e+04 3.97e-06 0 7.28e+03 1.3e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 104, Parent ID = 70 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 89.1 -130 -188 2.73e-06 0 0 0 Tank initStep + 1 2.44e+03 -3.51e+03 -5e+03 2.73e-06 0 6.34e+03 6.34e+03 World Transportation + 2 7.07e+03 -1e+04 -8.07e+03 2.73e-06 0 8.54e+03 1.49e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 0.5 0 0 0 Tank initStep + 1 0.134 0.0292 -0.0112 0.479 0.0208 0.14 0.14 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0404 0.0088 -0.00338 3.75e-06 0 0 0 Tank initStep + 1 3.93e+03 -105 -2.56e+03 3.75e-06 0 4.69e+03 4.69e+03 Tank OpRayleigh + 2 -1.5e+03 -998 5e+03 3.75e-06 0 9.35e+03 1.4e+04 World Transportation + 3 -1.5e+03 -998 5e+03 3.75e-06 0 0 1.4e+04 Tank Transportation + 4 -5e+03 -1.69e+03 2.77e+03 3.75e-06 0 4.21e+03 1.83e+04 World Transportation + 5 -5e+03 -1.69e+03 2.77e+03 3.75e-06 0 0 1.83e+04 Tank Transportation + 6 1.66e+03 -3.22e+03 -5e+03 3.75e-06 0 1.03e+04 2.86e+04 World Transportation + 7 1.66e+03 -3.22e+03 -5e+03 3.75e-06 0 0 2.86e+04 Tank Transportation + 8 3.36e+03 -4.06e+03 -2.38e+03 3.75e-06 3.75e-06 3.24e+03 3.18e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0271 0.00589 -0.00226 3.33e-06 0 0 0 Tank initStep + 1 5e+03 3.42e+03 1.89e+03 3.33e-06 0 6.34e+03 6.34e+03 World Transportation + 2 5e+03 3.42e+03 1.89e+03 3.33e-06 0 0 6.34e+03 Tank Transportation + 3 3.57e+03 5e+03 1.06e+03 3.33e-06 0 2.29e+03 8.63e+03 World Transportation + 4 3.57e+03 5e+03 1.06e+03 3.33e-06 0 0 8.63e+03 Tank Transportation + 5 3.65e+03 4.36e+03 958 3.33e-06 0 653 9.28e+03 Tank OpRayleigh + 6 5e+03 3.29e+03 1.44e+03 3.33e-06 0 1.78e+03 1.11e+04 World Transportation + 7 5e+03 3.29e+03 1.44e+03 3.33e-06 0 0 1.11e+04 Tank Transportation + 8 -4.98e+03 -5e+03 2.17e+03 3.33e-06 0 1.3e+04 2.41e+04 World Transportation + 9 -4.98e+03 -5e+03 2.17e+03 3.33e-06 0 0 2.41e+04 Tank Transportation + 10 -5e+03 -4.98e+03 2.17e+03 3.33e-06 0 24.4 2.41e+04 World Transportation + 11 -5e+03 -4.98e+03 2.17e+03 3.33e-06 0 0 2.41e+04 Tank Transportation + 12 5e+03 -1e+03 -2.12e+03 3.33e-06 0 1.16e+04 3.57e+04 World Transportation + 13 1e+04 1.43e+03 -5.54e+03 3.33e-06 0 6.53e+03 4.22e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0877 0.0191 -0.00733 4.02e-06 0 0 0 Tank initStep + 1 5e+03 -1.35e+03 -1.99e+03 4.02e-06 0 5.55e+03 5.55e+03 World Transportation + 2 1e+04 -2.51e+03 -5.53e+03 4.02e-06 0 6.23e+03 1.18e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0821 0.0179 -0.00687 2.58e-06 0 0 0 Tank initStep + 1 5e+03 1.93e+03 -3.63e+03 2.58e-06 0 6.47e+03 6.47e+03 World Transportation + 2 5e+03 1.93e+03 -3.63e+03 2.58e-06 0 0 6.47e+03 Tank Transportation + 3 3.76e+03 2.62e+03 -5e+03 2.58e-06 0 1.98e+03 8.45e+03 World Transportation + 4 3.76e+03 2.62e+03 -5e+03 2.58e-06 0 0 8.45e+03 Tank Transportation + 5 -117 5e+03 -2.16e+03 2.58e-06 0 5.36e+03 1.38e+04 World Transportation + 6 -117 5e+03 -2.16e+03 2.58e-06 0 0 1.38e+04 Tank Transportation + 7 -5e+03 443 -2.42e+03 2.58e-06 0 6.68e+03 2.05e+04 World Transportation + 8 -5e+03 443 -2.42e+03 2.58e-06 0 0 2.05e+04 Tank Transportation + 9 -93.8 -5e+03 -4.02e+03 2.58e-06 0 7.5e+03 2.8e+04 World Transportation + 10 -93.8 -5e+03 -4.02e+03 2.58e-06 0 0 2.8e+04 Tank Transportation + 11 -237 -4.3e+03 5e+03 2.58e-06 0 9.05e+03 3.7e+04 World Transportation + 12 -562 -4.42e+03 1e+04 2.58e-06 0 5.01e+03 4.21e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0599 0.013 -0.00501 3.34e-06 0 0 0 Tank initStep + 1 5e+03 4.59e+03 224 3.34e-06 0 6.79e+03 6.79e+03 World Transportation + 2 5e+03 4.59e+03 224 3.34e-06 0 0 6.79e+03 Tank Transportation + 3 4.83e+03 5e+03 322 3.34e-06 0 454 7.25e+03 World Transportation + 4 309 1e+04 3.38e+03 3.34e-06 0 7.4e+03 1.46e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0534 0.0116 -0.00447 4.04e-06 0 0 0 Tank initStep + 1 5e+03 3.92e+03 1.48e+03 4.04e-06 0 6.53e+03 6.53e+03 World Transportation + 2 5e+03 3.92e+03 1.48e+03 4.04e-06 0 0 6.53e+03 Tank Transportation + 3 4.09e+03 5e+03 1.96e+03 4.04e-06 0 1.49e+03 8.01e+03 World Transportation + 4 4.09e+03 5e+03 1.96e+03 4.04e-06 0 0 8.01e+03 Tank Transportation + 5 -1.39e+03 2.66e+03 5e+03 4.04e-06 0 6.7e+03 1.47e+04 World Transportation + 6 -1.39e+03 2.66e+03 5e+03 4.04e-06 0 0 1.47e+04 Tank Transportation + 7 -5e+03 342 3.82e+03 4.04e-06 0 4.45e+03 1.92e+04 World Transportation + 8 -1e+04 -7.03e+03 369 4.04e-06 0 9.55e+03 2.87e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 0.134 0.0292 -0.0112 0.479 0 0 0.14 Tank initStep + 2 0.237 0.0904 -0.0582 0.461 0.0177 0.128 0.268 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 13, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.188 0.0615 -0.036 2.36e-06 0 0 0 Tank initStep + 1 5e+03 617 -261 2.36e-06 0 5.04e+03 5.04e+03 World Transportation + 2 1e+04 794 -512 2.36e-06 0 5.01e+03 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 12, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.214 0.0768 -0.0478 3.47e-06 0 0 0 Tank initStep + 1 427 862 -485 3.47e-06 3.47e-06 1.08e+03 1.08e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 11, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.14 0.0328 -0.014 3.11e-06 0 0 0 Tank initStep + 1 3.69e+03 5e+03 -106 3.11e-06 0 6.22e+03 6.22e+03 World Transportation + 2 3.69e+03 5e+03 -106 3.11e-06 0 0 6.22e+03 Tank Transportation + 3 5e+03 3.01e+03 -5.55 3.11e-06 0 2.39e+03 8.6e+03 World Transportation + 4 5e+03 3.01e+03 -5.55 3.11e-06 0 0 8.6e+03 Tank Transportation + 5 4.32e+03 5e+03 1.8e+03 3.11e-06 0 2.78e+03 1.14e+04 World Transportation + 6 4.32e+03 5e+03 1.8e+03 3.11e-06 0 0 1.14e+04 Tank Transportation + 7 4.32e+03 -259 5e+03 3.11e-06 0 6.16e+03 1.75e+04 World Transportation + 8 4.32e+03 -259 5e+03 3.11e-06 0 0 1.75e+04 Tank Transportation + 9 3.02e+03 -1.43e+03 -719 3.11e-06 0 5.98e+03 2.35e+04 Tank OpRayleigh + 10 5e+03 -4.23e+03 809 3.11e-06 0 3.75e+03 2.73e+04 World Transportation + 11 5e+03 -4.23e+03 809 3.11e-06 0 0 2.73e+04 Tank Transportation + 12 3.25e+03 -5e+03 1.64e+03 3.11e-06 0 2.09e+03 2.94e+04 World Transportation + 13 3.25e+03 -5e+03 1.64e+03 3.11e-06 0 0 2.94e+04 Tank Transportation + 14 -76.6 3.65e+03 2.91e+03 3.11e-06 3.11e-06 9.35e+03 3.87e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 10, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.218 0.0794 -0.0498 3.48e-06 0 0 0 Tank initStep + 1 2.87e+03 5e+03 -1.03e+03 3.48e-06 0 5.85e+03 5.85e+03 World Transportation + 2 2.87e+03 5e+03 -1.03e+03 3.48e-06 0 0 5.85e+03 Tank Transportation + 3 5e+03 3.1e+03 -2.23e+03 3.48e-06 0 3.1e+03 8.95e+03 World Transportation + 4 5e+03 3.1e+03 -2.23e+03 3.48e-06 0 0 8.95e+03 Tank Transportation + 5 192 -3.96e+03 -5e+03 3.48e-06 0 8.98e+03 1.79e+04 World Transportation + 6 192 -3.96e+03 -5e+03 3.48e-06 0 0 1.79e+04 Tank Transportation + 7 364 -4.99e+03 -4.24e+03 3.48e-06 0 1.29e+03 1.92e+04 Tank OpRayleigh + 8 365 -5e+03 -4.25e+03 3.48e-06 0 14.7 1.92e+04 World Transportation + 9 365 -5e+03 -4.25e+03 3.48e-06 0 0 1.92e+04 Tank Transportation + 10 154 -4.61e+03 -5e+03 3.48e-06 0 870 2.01e+04 World Transportation + 11 154 -4.61e+03 -5e+03 3.48e-06 0 0 2.01e+04 Tank Transportation + 12 -1.78e+03 -1.84e+03 -3.6e+03 3.48e-06 3.48e-06 3.66e+03 2.38e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 9, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.169 0.05 -0.0272 3.95e-06 0 0 0 Tank initStep + 1 3.9e+03 1.33e+03 -5e+03 3.95e-06 0 6.48e+03 6.48e+03 World Transportation + 2 3.9e+03 1.33e+03 -5e+03 3.95e-06 0 0 6.48e+03 Tank Transportation + 3 5e+03 1.48e+03 -4.58e+03 3.95e-06 0 1.19e+03 7.67e+03 World Transportation + 4 1e+04 6.7e+03 1.75e+03 3.95e-06 0 9.61e+03 1.73e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 8, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.183 0.0582 -0.0335 4.09e-06 0 0 0 Tank initStep + 1 4.78e+03 704 -5e+03 4.09e-06 0 6.96e+03 6.96e+03 World Transportation + 2 4.78e+03 704 -5e+03 4.09e-06 0 0 6.96e+03 Tank Transportation + 3 5e+03 980 -4.4e+03 4.09e-06 0 693 7.65e+03 World Transportation + 4 5e+03 980 -4.4e+03 4.09e-06 0 0 7.65e+03 Tank Transportation + 5 3.39e+03 3.87e+03 3.06e+03 4.09e-06 4.09e-06 8.16e+03 1.58e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 0.237 0.0904 -0.0582 0.461 0 0 0.268 Tank initStep + 3 0.309 0.166 -0.114 0.446 0.0152 0.119 0.387 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 14, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.266 0.122 -0.0814 3.61e-06 0 0 0 Tank initStep + 1 2.35e+03 2.09e+03 -5e+03 3.61e-06 0 5.91e+03 5.91e+03 World Transportation + 2 2.35e+03 2.09e+03 -5e+03 3.61e-06 0 0 5.91e+03 Tank Transportation + 3 4.56e+03 -5e+03 -2.38e+03 3.61e-06 0 7.87e+03 1.38e+04 World Transportation + 4 5.81e+03 -1e+04 940 3.61e-06 0 6.13e+03 1.99e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 0.309 0.166 -0.114 0.446 0 0 0.387 Tank initStep + 4 0.361 0.24 -0.17 0.433 0.0129 0.111 0.498 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 16, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.338 0.208 -0.146 3.5e-06 0 0 0 Tank initStep + 1 41 5e+03 -4.22e+03 3.5e-06 0 6.54e+03 6.54e+03 World Transportation + 2 41 5e+03 -4.22e+03 3.5e-06 0 0 6.54e+03 Tank Transportation + 3 -216 4.27e+03 -5e+03 3.5e-06 0 1.1e+03 7.64e+03 World Transportation + 4 -216 4.27e+03 -5e+03 3.5e-06 0 0 7.64e+03 Tank Transportation + 5 -638 3.35e+03 -4.66e+03 3.5e-06 0 1.07e+03 8.71e+03 Tank OpRayleigh + 6 -2.51e+03 -2.89e+03 1.73e+03 3.5e-06 3.5e-06 9.12e+03 1.78e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 15, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.326 0.19 -0.132 3.75e-06 0 0 0 Tank initStep + 1 124 5e+03 -2.72e+03 3.75e-06 0 5.69e+03 5.69e+03 World Transportation + 2 2.25e+03 1e+04 -7.25e+03 3.75e-06 0 7.07e+03 1.28e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 0.361 0.24 -0.17 0.433 0 0 0.498 Tank initStep + 5 0.321 0.334 -0.163 0.417 0.0162 0.105 0.603 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 18, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.349 0.266 -0.168 3.73e-06 0 0 0 Tank initStep + 1 -3.46e+03 -91.9 -5e+03 3.73e-06 0 6.08e+03 6.08e+03 World Transportation + 2 -3.46e+03 -91.9 -5e+03 3.73e-06 0 0 6.08e+03 Tank Transportation + 3 -5e+03 28.3 -3.55e+03 3.73e-06 0 2.11e+03 8.2e+03 World Transportation + 4 -1e+04 -549 2.96e+03 3.73e-06 0 8.23e+03 1.64e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 17, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.355 0.253 -0.169 2.98e-06 0 0 0 Tank initStep + 1 -3.47e+03 5e+03 -2.43e+03 2.98e-06 0 6.55e+03 6.55e+03 World Transportation + 2 -3.47e+03 5e+03 -2.43e+03 2.98e-06 0 0 6.55e+03 Tank Transportation + 3 -5e+03 3.94e+03 -2.9e+03 2.98e-06 0 1.92e+03 8.47e+03 World Transportation + 4 -5e+03 3.94e+03 -2.9e+03 2.98e-06 0 0 8.47e+03 Tank Transportation + 5 -1.81e+03 2.2e+03 -5e+03 2.98e-06 0 4.2e+03 1.27e+04 World Transportation + 6 -1.81e+03 2.2e+03 -5e+03 2.98e-06 0 0 1.27e+04 Tank Transportation + 7 5e+03 1.08e+03 2.82e+03 2.98e-06 0 1.04e+04 2.31e+04 World Transportation + 8 5e+03 1.08e+03 2.82e+03 2.98e-06 0 0 2.31e+04 Tank Transportation + 9 4.38e+03 1.18e+03 5e+03 2.98e-06 0 2.27e+03 2.54e+04 World Transportation + 10 3.05e+03 1.16e+03 1e+04 2.98e-06 0 5.18e+03 3.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 0.321 0.334 -0.163 0.417 0 0 0.603 Tank initStep + 6 0.272 0.416 -0.179 0.343 0.074 0.0971 0.7 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 23, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.309 0.355 -0.167 3.28e-06 0 0 0 Tank initStep + 1 2.42e+03 -5e+03 1.36e+03 3.28e-06 0 5.72e+03 5.72e+03 World Transportation + 2 7.54e+03 -1e+04 5.09e+03 3.28e-06 0 8.07e+03 1.38e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 22, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.289 0.388 -0.174 3.69e-06 0 0 0 Tank initStep + 1 4.5e+03 5e+03 -753 3.69e-06 0 6.77e+03 6.77e+03 World Transportation + 2 4.5e+03 5e+03 -753 3.69e-06 0 0 6.77e+03 Tank Transportation + 3 3.78e+03 1.77e+03 -5e+03 3.69e-06 0 5.39e+03 1.22e+04 World Transportation + 4 687 -8.5e+03 -1e+04 3.69e-06 0 1.18e+04 2.4e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 21, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.312 0.35 -0.166 3.39e-06 0 0 0 Tank initStep + 1 5e+03 3.31e+03 2.17e+03 3.39e-06 0 6.37e+03 6.37e+03 World Transportation + 2 5e+03 3.31e+03 2.17e+03 3.39e-06 0 0 6.37e+03 Tank Transportation + 3 3.78e+03 5e+03 3.64e+03 3.39e-06 0 2.55e+03 8.93e+03 World Transportation + 4 3.78e+03 5e+03 3.64e+03 3.39e-06 0 0 8.93e+03 Tank Transportation + 5 2.1e+03 2.87e+03 5e+03 3.39e-06 0 3.03e+03 1.2e+04 World Transportation + 6 2.1e+03 2.87e+03 5e+03 3.39e-06 0 0 1.2e+04 Tank Transportation + 7 -4.07e+03 -413 -5e+03 3.39e-06 0 1.22e+04 2.42e+04 World Transportation + 8 -8.86e+03 -2.69e+03 -1e+04 3.39e-06 0 7.29e+03 3.14e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 20, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.273 0.415 -0.179 3.23e-06 0 0 0 Tank initStep + 1 5e+03 699 -1.69e+03 3.23e-06 0 5.32e+03 5.32e+03 World Transportation + 2 5e+03 699 -1.69e+03 3.23e-06 0 0 5.32e+03 Tank Transportation + 3 3.84e+03 371 -5e+03 3.23e-06 0 3.52e+03 8.85e+03 World Transportation + 4 1.14e+03 -154 -1e+04 3.23e-06 0 5.71e+03 1.46e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 19, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.319 0.338 -0.164 3.45e-06 0 0 0 Tank initStep + 1 5e+03 720 -910 3.45e-06 0 5.13e+03 5.13e+03 World Transportation + 2 1e+04 2.29e+03 -3.87e+03 3.45e-06 0 6.02e+03 1.12e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 0.272 0.416 -0.179 0.343 0 0 0.7 Tank initStep + 7 0.252 0.472 -0.172 0.301 0.0424 0.0657 0.766 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 28, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.262 0.445 -0.175 3.73e-06 0 0 0 Tank initStep + 1 5e+03 -3.56e+03 2.39e+03 3.73e-06 0 6.59e+03 6.59e+03 World Transportation + 2 5e+03 -3.56e+03 2.39e+03 3.73e-06 0 0 6.59e+03 Tank Transportation + 3 1.96e+03 -5e+03 3.76e+03 3.73e-06 0 3.64e+03 1.02e+04 World Transportation + 4 1.96e+03 -5e+03 3.76e+03 3.73e-06 0 0 1.02e+04 Tank Transportation + 5 -5e+03 -2.44e+03 4.07e+03 3.73e-06 0 7.42e+03 1.76e+04 World Transportation + 6 -1e+04 -464 5.55e+03 3.73e-06 0 5.57e+03 2.32e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 27, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.267 0.43 -0.177 3.34e-06 0 0 0 Tank initStep + 1 5e+03 -1.88e+03 -4.32e+03 3.34e-06 0 6.87e+03 6.87e+03 World Transportation + 2 5e+03 -1.88e+03 -4.32e+03 3.34e-06 0 0 6.87e+03 Tank Transportation + 3 4.25e+03 -1.94e+03 -5e+03 3.34e-06 0 1.01e+03 7.88e+03 World Transportation + 4 4.25e+03 -1.94e+03 -5e+03 3.34e-06 0 0 7.88e+03 Tank Transportation + 5 -1.46e+03 -1.48e+03 1.21e+03 3.34e-06 0 8.45e+03 1.63e+04 Tank OpRayleigh + 6 -3.42e+03 -5e+03 1.28e+03 3.34e-06 0 4.03e+03 2.04e+04 World Transportation + 7 -1e+04 -8.98e+03 2.06e+03 3.34e-06 0 7.73e+03 2.81e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 26, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.261 0.448 -0.175 3.06e-06 0 0 0 Tank initStep + 1 5e+03 -2.46e+03 4.32e+03 3.06e-06 0 7.05e+03 7.05e+03 World Transportation + 2 5e+03 -2.46e+03 4.32e+03 3.06e-06 0 0 7.05e+03 Tank Transportation + 3 4.28e+03 -2.93e+03 5e+03 3.06e-06 0 1.1e+03 8.15e+03 World Transportation + 4 -1e+04 -8.31e+03 7.6e+03 3.06e-06 0 1.55e+04 2.36e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 25, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.27 0.423 -0.178 3.51e-06 0 0 0 Tank initStep + 1 -1.46e+03 5e+03 149 3.51e-06 0 5.21e+03 5.21e+03 World Transportation + 2 -1.46e+03 5e+03 149 3.51e-06 0 0 5.21e+03 Tank Transportation + 3 -5e+03 -4.34e+03 323 3.51e-06 0 9.99e+03 1.52e+04 World Transportation + 4 -5e+03 -4.34e+03 323 3.51e-06 0 0 1.52e+04 Tank Transportation + 5 -4.73e+03 -5e+03 301 3.51e-06 0 710 1.59e+04 World Transportation + 6 7.35e+03 -1e+04 6.86e+03 3.51e-06 0 1.46e+04 3.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 24, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.254 0.466 -0.173 3.87e-06 0 0 0 Tank initStep + 1 -5e+03 4.29e+03 4.08e+03 3.87e-06 0 7.75e+03 7.75e+03 World Transportation + 2 -5e+03 4.29e+03 4.08e+03 3.87e-06 0 0 7.75e+03 Tank Transportation + 3 -3.94e+03 5e+03 4.68e+03 3.87e-06 0 1.41e+03 9.16e+03 World Transportation + 4 -3.94e+03 5e+03 4.68e+03 3.87e-06 0 0 9.16e+03 Tank Transportation + 5 -3.3e+03 4.46e+03 5e+03 3.87e-06 0 897 1.01e+04 World Transportation + 6 -3.3e+03 4.46e+03 5e+03 3.87e-06 0 0 1.01e+04 Tank Transportation + 7 4.83e+03 -3.12e+03 -5e+03 3.87e-06 0 1.5e+04 2.5e+04 World Transportation + 8 4.83e+03 -3.12e+03 -5e+03 3.87e-06 0 0 2.5e+04 Tank Transportation + 9 5e+03 -3.26e+03 -4.71e+03 3.87e-06 0 357 2.54e+04 World Transportation + 10 5e+03 -3.26e+03 -4.71e+03 3.87e-06 0 0 2.54e+04 Tank Transportation + 11 597 -4.93e+03 5e+03 3.87e-06 0 1.08e+04 3.62e+04 World Transportation + 12 597 -4.93e+03 5e+03 3.87e-06 0 0 3.62e+04 Tank Transportation + 13 333 -5e+03 4.83e+03 3.87e-06 0 324 3.65e+04 World Transportation + 14 333 -5e+03 4.83e+03 3.87e-06 0 0 3.65e+04 Tank Transportation + 15 -5e+03 -3.76e+03 1.69e+03 3.87e-06 0 6.31e+03 4.28e+04 World Transportation + 16 -1e+04 -574 -2.38e+03 3.87e-06 0 7.19e+03 5e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 0.252 0.472 -0.172 0.301 0 0 0.766 Tank initStep + 8 0.295 0.497 -0.164 0.289 0.0114 0.0506 0.816 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 32, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.26 0.477 -0.17 3.81e-06 0 0 0 Tank initStep + 1 5e+03 -1.27e+03 -1.46e+03 3.81e-06 0 5.36e+03 5.36e+03 World Transportation + 2 1e+04 -3.34e+03 -3.34e+03 3.81e-06 0 5.73e+03 1.11e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 31, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.265 0.48 -0.169 3.36e-06 0 0 0 Tank initStep + 1 -2.24e+03 5e+03 1.64e+03 3.36e-06 0 5.72e+03 5.72e+03 World Transportation + 2 -6.61e+03 1e+04 5.49e+03 3.36e-06 0 7.67e+03 1.34e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 30, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.266 0.48 -0.169 2.63e-06 0 0 0 Tank initStep + 1 5e+03 4.9e+03 49.9 2.63e-06 0 7e+03 7e+03 World Transportation + 2 5e+03 4.9e+03 49.9 2.63e-06 0 0 7e+03 Tank Transportation + 3 4.91e+03 5e+03 72.9 2.63e-06 0 136 7.14e+03 World Transportation + 4 4.91e+03 5e+03 72.9 2.63e-06 0 0 7.14e+03 Tank Transportation + 5 500 2.36e+03 -330 2.63e-06 2.63e-06 5.15e+03 1.23e+04 Bubble Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 29, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.281 0.489 -0.167 3.39e-06 0 0 0 Tank initStep + 1 5e+03 2.19e+03 -751 3.39e-06 0 5.51e+03 5.51e+03 World Transportation + 2 1e+04 8.93e+03 -308 3.39e-06 0 8.41e+03 1.39e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 0.295 0.497 -0.164 0.289 0 0 0.816 Tank initStep + 9 0.337 0.516 -0.165 0.283 0.00621 0.0468 0.863 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 33, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.303 0.5 -0.164 2.95e-06 0 0 0 Tank initStep + 1 -274 716 2.83e+03 2.95e-06 2.95e-06 2.94e+03 2.94e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 0.337 0.516 -0.165 0.283 0 0 0.863 Tank initStep + 10 0.38 0.527 -0.172 0.271 0.0119 0.0449 0.908 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 34, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.363 0.523 -0.169 3.77e-06 0 0 0 Tank initStep + 1 1.3e+03 598 -494 3.77e-06 3.77e-06 1.51e+03 1.51e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 10 0.38 0.527 -0.172 0.271 0 0 0.908 Tank initStep + 11 0.421 0.529 -0.17 0.264 0.00722 0.0412 0.949 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 35, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.403 0.528 -0.171 2.82e-06 0 0 0 Tank initStep + 1 5e+03 295 1.25e+03 2.82e-06 0 5.16e+03 5.16e+03 World Transportation + 2 1e+04 2.49e+03 5.79e+03 2.82e-06 0 7.1e+03 1.23e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 11 0.421 0.529 -0.17 0.264 0 0 0.949 Tank initStep + 12 0.459 0.521 -0.164 0.258 0.00634 0.0391 0.988 Tank Cerenkov + 13 0.493 0.514 -0.155 0.251 0.00621 0.0373 1.03 Tank Cerenkov + 14 0.525 0.512 -0.144 0.244 0.00751 0.0347 1.06 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 37, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.5 0.513 -0.152 3.24e-06 0 0 0 Tank initStep + 1 2.23e+03 -5e+03 2.55e+03 3.24e-06 0 6.04e+03 6.04e+03 World Transportation + 2 2.23e+03 -5e+03 2.55e+03 3.24e-06 0 0 6.04e+03 Tank Transportation + 3 5e+03 -1.07e+03 4.35e+03 3.24e-06 0 5.14e+03 1.12e+04 World Transportation + 4 5e+03 -1.07e+03 4.35e+03 3.24e-06 0 0 1.12e+04 Tank Transportation + 5 -1.65e+03 5e+03 4.77e+03 3.24e-06 0 9.01e+03 2.02e+04 World Transportation + 6 -1.65e+03 5e+03 4.77e+03 3.24e-06 0 0 2.02e+04 Tank Transportation + 7 -1.98e+03 4.45e+03 4.51e+03 3.24e-06 3.24e-06 691 2.09e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 36, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.495 0.514 -0.154 3.52e-06 0 0 0 Tank initStep + 1 442 5e+03 4.65e+03 3.52e-06 0 6.84e+03 6.84e+03 World Transportation + 2 442 5e+03 4.65e+03 3.52e-06 0 0 6.84e+03 Tank Transportation + 3 639 4.6e+03 5e+03 3.52e-06 0 562 7.41e+03 World Transportation + 4 639 4.6e+03 5e+03 3.52e-06 0 0 7.41e+03 Tank Transportation + 5 5e+03 -2.5e+03 -1.4e+03 3.52e-06 0 1.05e+04 1.79e+04 World Transportation + 6 5e+03 -2.5e+03 -1.4e+03 3.52e-06 0 0 1.79e+04 Tank Transportation + 7 3.25e+03 -5e+03 -3.8e+03 3.52e-06 0 3.88e+03 2.18e+04 World Transportation + 8 3.25e+03 -5e+03 -3.8e+03 3.52e-06 0 0 2.18e+04 Tank Transportation + 9 1.23e+03 -2.56e+03 -5e+03 3.52e-06 0 3.38e+03 2.52e+04 World Transportation + 10 1.23e+03 -2.56e+03 -5e+03 3.52e-06 0 0 2.52e+04 Tank Transportation + 11 -4.55e+03 5e+03 234 3.52e-06 0 1.09e+04 3.6e+04 World Transportation + 12 -4.55e+03 5e+03 234 3.52e-06 0 0 3.6e+04 Tank Transportation + 13 -5e+03 4.15e+03 1.08e+03 3.52e-06 0 1.28e+03 3.73e+04 World Transportation + 14 -5e+03 4.15e+03 1.08e+03 3.52e-06 0 0 3.73e+04 Tank Transportation + 15 -2.68e+03 -1.66e+03 5e+03 3.52e-06 0 7.38e+03 4.47e+04 World Transportation + 16 -2.68e+03 -1.66e+03 5e+03 3.52e-06 0 0 4.47e+04 Tank Transportation + 17 -2.03e+03 -4.66e+03 2.63e+03 3.52e-06 0 3.89e+03 4.86e+04 Tank OpRayleigh + 18 266 -5e+03 2.81e+03 3.52e-06 0 2.33e+03 5.09e+04 World Transportation + 19 266 -5e+03 2.81e+03 3.52e-06 0 0 5.09e+04 Tank Transportation + 20 5e+03 -2.55e+03 2.92e+03 3.52e-06 0 5.33e+03 5.63e+04 World Transportation + 21 1e+04 1.12e+03 2.23e+03 3.52e-06 0 6.24e+03 6.25e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 14 0.525 0.512 -0.144 0.244 0 0 1.06 Tank initStep + 15 0.53 0.514 -0.144 0.243 0.00128 0.0057 1.07 Tank Cerenkov + 16 0.531 0.514 -0.144 0.243 0.000131 0.0008 1.07 Tank Cerenkov + 17 0.531 0.514 -0.143 0.242 5.97e-05 0.000298 1.07 Tank Cerenkov + 18 0.531 0.514 -0.143 0.242 0 6.96e-05 1.07 Tank Cerenkov + 19 0.531 0.514 -0.143 0.242 0 6.96e-05 1.07 Tank Cerenkov + 20 0.531 0.514 -0.143 0.242 0 6.96e-05 1.07 Tank Cerenkov + 21 0.532 0.514 -0.143 0.242 0 6.96e-05 1.07 Tank Cerenkov + 22 0.532 0.514 -0.143 0.242 0 6.96e-05 1.07 Tank Cerenkov + 23 0.532 0.514 -0.143 0.242 0 6.96e-05 1.07 Tank Cerenkov + 24 0.532 0.514 -0.143 0.242 1.07e-05 6.96e-05 1.07 Tank Cerenkov + 25 0.532 0.514 -0.143 0.242 7.44e-06 2.85e-05 1.07 Tank Cerenkov + 26 0.532 0.514 -0.143 0.242 5.28e-11 2.02e-10 1.07 Tank Cerenkov + 27 0.641 0.545 -0.113 0.22 0.0228 0.133 1.2 Tank eIoni + 28 0.732 0.587 -0.0896 0.164 0.0559 0.116 1.32 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 41, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.698 0.571 -0.0981 3.05e-06 0 0 0 Tank initStep + 1 -3.02e+03 -5e+03 -1.16e+03 3.05e-06 0 5.96e+03 5.96e+03 World Transportation + 2 -1e+04 -8.66e+03 -4.25e+03 3.05e-06 0 8.47e+03 1.44e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 40, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.644 0.546 -0.112 3.1e-06 0 0 0 Tank initStep + 1 -996 554 -5e+03 3.1e-06 0 5.13e+03 5.13e+03 World Transportation + 2 -2.27e+03 1.27e+03 -1e+04 3.1e-06 0 5.21e+03 1.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 39, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.671 0.559 -0.105 2.53e-06 0 0 0 Tank initStep + 1 4.54e+03 5e+03 3.16e+03 2.53e-06 0 7.45e+03 7.45e+03 World Transportation + 2 4.54e+03 5e+03 3.16e+03 2.53e-06 0 0 7.45e+03 Tank Transportation + 3 5e+03 4.32e+03 3.58e+03 2.53e-06 0 925 8.38e+03 World Transportation + 4 5e+03 4.32e+03 3.58e+03 2.53e-06 0 0 8.38e+03 Tank Transportation + 5 3.57e+03 1.79e+03 5e+03 2.53e-06 0 3.23e+03 1.16e+04 World Transportation + 6 3.57e+03 1.79e+03 5e+03 2.53e-06 0 0 1.16e+04 Tank Transportation + 7 292 -5e+03 1.32e+03 2.53e-06 0 8.39e+03 2e+04 World Transportation + 8 -9.07e+03 -7.4e+03 -1e+04 2.53e-06 0 1.49e+04 3.49e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 38, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.702 0.573 -0.0972 3.34e-06 0 0 0 Tank initStep + 1 222 -1.19e+03 -679 3.34e-06 0 1.39e+03 1.39e+03 Tank OpRayleigh + 2 932 -5e+03 -1.29e+03 3.34e-06 0 3.93e+03 5.31e+03 World Transportation + 3 1.88e+03 -1e+04 -2.29e+03 3.34e-06 0 5.19e+03 1.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 28 0.732 0.587 -0.0896 0.164 0 0 1.32 Tank initStep + 29 0.74 0.606 -0.077 0.155 0.00833 0.0247 1.34 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 42, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.734 0.593 -0.0856 2.67e-06 0 0 0 Tank initStep + 1 5e+03 2.99e+03 1.63e+03 2.67e-06 0 6.05e+03 6.05e+03 World Transportation + 2 5e+03 2.99e+03 1.63e+03 2.67e-06 0 0 6.05e+03 Tank Transportation + 3 -5e+03 4e+03 -1.24e+03 2.67e-06 0 1.05e+04 1.65e+04 World Transportation + 4 -1e+04 5.81e+03 -3.73e+03 2.67e-06 0 5.87e+03 2.24e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 29 0.74 0.606 -0.077 0.155 0 0 1.34 Tank initStep + 30 0.746 0.624 -0.0655 0.151 0.00414 0.0227 1.36 Tank msc + 31 0.753 0.678 -0.0391 0.132 0.0195 0.0699 1.43 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 43, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.749 0.647 -0.0543 2.94e-06 0 0 0 Tank initStep + 1 2.29e+03 -5e+03 3.19e+03 2.94e-06 0 6.35e+03 6.35e+03 World Transportation + 2 6.34e+03 -7.74e+03 1e+04 2.94e-06 0 8.39e+03 1.47e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 31 0.753 0.678 -0.0391 0.132 0 0 1.43 Tank initStep + 32 0.766 0.675 -0.0279 0.128 0.00377 0.0172 1.45 Tank msc + 33 0.802 0.666 0.00371 0.108 0.0203 0.0565 1.51 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 45, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.792 0.669 -0.00478 2.98e-06 0 0 0 Tank initStep + 1 5e+03 864 1.78e+03 2.98e-06 0 5.38e+03 5.38e+03 World Transportation + 2 5e+03 864 1.78e+03 2.98e-06 0 0 5.38e+03 Tank Transportation + 3 -5e+03 2.61e+03 415 2.98e-06 0 1.02e+04 1.56e+04 World Transportation + 4 -1e+04 6.88e+03 -1.78e+03 2.98e-06 0 6.93e+03 2.26e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 44, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.789 0.669 -0.0079 3.96e-06 0 0 0 Tank initStep + 1 3.59e+03 -2.89e+03 428 3.96e-06 3.96e-06 4.63e+03 4.63e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 33 0.802 0.666 0.00371 0.108 0 0 1.51 Tank initStep + 34 0.798 0.655 0.00263 0.105 0.00277 0.0122 1.52 Tank msc + 35 0.782 0.621 -0.00456 0.0878 0.0171 0.0446 1.56 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 46, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.795 0.649 0.00133 2.44e-06 0 0 0 Tank initStep + 1 5e+03 -2.26e+03 -801 2.44e-06 0 5.55e+03 5.55e+03 World Transportation + 2 1e+04 -5.61e+03 -928 2.44e-06 0 6.02e+03 1.16e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 35 0.782 0.621 -0.00456 0.0878 0 0 1.56 Tank initStep + 36 0.777 0.614 -0.00334 0.0856 0.00218 0.00857 1.57 Tank msc + 37 0.757 0.593 -0.000214 0.0684 0.0172 0.0357 1.61 Tank eIoni + 38 0.758 0.582 0.0197 0.0419 0.0265 0.0287 1.64 Tank eIoni + 39 0.751 0.581 0.0308 0.0244 0.0175 0.0191 1.66 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 47, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.756 0.582 0.0219 2.31e-06 0 0 0 Tank initStep + 1 -5e+03 -2.94e+03 -3.7e+03 2.31e-06 0 6.88e+03 6.88e+03 World Transportation + 2 -5e+03 -2.94e+03 -3.7e+03 2.31e-06 0 0 6.88e+03 Tank Transportation + 3 -3.49e+03 -2.91e+03 -5e+03 2.31e-06 0 2e+03 8.88e+03 World Transportation + 4 5.19e+03 -1e+04 -9.58e+03 2.31e-06 0 1.21e+04 2.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 39 0.751 0.581 0.0308 0.0244 0 0 1.66 Tank initStep + 40 0.751 0.582 0.0315 0.0231 0.00131 0.000881 1.66 Tank msc + 41 0.751 0.584 0.0362 0 0.0231 0.00997 1.67 Tank eIoni + 42 0.751 0.584 0.0362 0 0 0 1.67 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 50, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.751 0.584 0.0362 0.511 0 0 0 Tank initStep + 1 37 7.32 -2.54 0.293 1.42e-05 37 37 Tank compt + 2 41.6 30.3 -47.2 0.263 0.000537 50.5 87.4 Tank compt + 3 17.2 28.4 -105 0.221 0.000537 62.7 150 Tank compt + 4 -63.5 26.5 -129 0.191 1.36e-05 84.3 234 Tank compt + 5 -85.5 4.56 -170 0.134 2.92e-05 51.4 286 Tank compt + 6 -193 8.76 -91.3 0.0908 2.92e-05 133 419 Tank compt + 7 -162 -47 -173 0.0828 1.36e-05 104 523 Tank compt + 8 -155 -25 -211 0.0798 0.000537 44.8 568 Tank compt + 9 -168 -1.64 -230 0.0641 1.36e-05 32.6 600 Tank compt + 10 -156 -0.195 -222 0.0571 2.92e-05 14.3 615 Tank compt + 11 -178 10.1 -188 0.0492 2.92e-05 41.5 656 Tank compt + 12 -137 -25.3 -186 0.0458 2.92e-05 54.1 710 Tank compt + 13 -138 -29.4 -182 0.0458 0 5.42 716 Tank Rayl + 14 -89.8 -101 -94.1 0.0425 0.000537 123 839 Tank compt + 15 -94.9 -107 -94.5 0 0.000537 7.85 847 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 64, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -94.9 -107 -94.5 0.042 0 0 0 Tank initStep + 1 -94.9 -107 -94.5 0.0409 0.00112 0.0025 0.0025 Tank msc + 2 -94.9 -107 -94.5 0.0128 0.028 0.0193 0.0218 Tank eIoni + 3 -94.9 -107 -94.5 0 0.0128 0.00385 0.0256 Tank eIoni + 4 -94.9 -107 -94.5 0 0 0 0.0256 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 63, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -89.8 -101 -94.1 0.00274 0 0 0 Tank initStep + 1 -89.8 -101 -94.1 0.00265 9.14e-05 2.12e-05 2.12e-05 Tank msc + 2 -89.8 -101 -94.1 0 0.00265 0.00025 0.000272 Tank eIoni + 3 -89.8 -101 -94.1 0 0 0 0.000272 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 62, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -137 -25.3 -186 0.00338 0 0 0 Tank initStep + 1 -137 -25.3 -186 0.00306 0.000326 3.02e-05 3.02e-05 Tank msc + 2 -137 -25.3 -186 0 0.00306 0.000318 0.000349 Tank eIoni + 3 -137 -25.3 -186 0 0 0 0.000349 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 61, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -178 10.1 -188 0.00791 0 0 0 Tank initStep + 1 -178 10.1 -188 0.00756 0.000351 0.000131 0.000131 Tank msc + 2 -178 10.1 -188 0 0.00756 0.00151 0.00165 Tank eIoni + 3 -178 10.1 -188 0 0 0 0.00165 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 60, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -156 -0.195 -222 0.00693 0 0 0 Tank initStep + 1 -156 -0.195 -222 0.00659 0.000346 0.000104 0.000104 Tank msc + 2 -156 -0.195 -222 0 0.00659 0.00119 0.0013 Tank eIoni + 3 -156 -0.195 -222 0 0 0 0.0013 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 59, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -168 -1.64 -230 0.0157 0 0 0 Tank initStep + 1 -168 -1.64 -230 0.0152 0.000546 0.000439 0.000439 Tank msc + 2 -168 -1.64 -230 0 0.0152 0.00515 0.00559 Tank eIoni + 3 -168 -1.64 -230 0 0 0 0.00559 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 65, Parent ID = 59 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -168 -1.64 -230 2.41e-06 0 0 0 Tank initStep + 1 267 3e+03 -1.41e+03 2.41e-06 2.41e-06 3.26e+03 3.26e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 58, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -155 -25 -211 0.00244 0 0 0 Tank initStep + 1 -155 -25 -211 0.00242 2.04e-05 1.74e-05 1.74e-05 Tank msc + 2 -155 -25 -211 0 0.00242 0.000214 0.000231 Tank eIoni + 3 -155 -25 -211 0 0 0 0.000231 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 57, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -162 -47 -173 0.00797 0 0 0 Tank initStep + 1 -162 -47 -173 0.00775 0.000221 0.000133 0.000133 Tank msc + 2 -162 -47 -173 0 0.00775 0.00158 0.00172 Tank eIoni + 3 -162 -47 -173 0 0 0 0.00172 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 56, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -193 8.76 -91.3 0.0432 0 0 0 Tank initStep + 1 -193 8.76 -91.3 0.0419 0.00126 0.00262 0.00262 Tank msc + 2 -193 8.76 -91.3 0.0287 0.0132 0.0197 0.0223 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 66, Parent ID = 56 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -193 8.76 -91.3 3.7e-06 0 0 0 Tank initStep + 1 -2.72e+03 5e+03 -2.48e+03 3.7e-06 0 6.09e+03 6.09e+03 World Transportation + 2 -2.72e+03 5e+03 -2.48e+03 3.7e-06 0 0 6.09e+03 Tank Transportation + 3 -5e+03 1.82e+03 -4.27e+03 3.7e-06 0 4.3e+03 1.04e+04 World Transportation + 4 -5e+03 1.82e+03 -4.27e+03 3.7e-06 0 0 1.04e+04 Tank Transportation + 5 -4.88e+03 1.51e+03 -4.47e+03 3.7e-06 3.7e-06 389 1.08e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 56, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -193 8.76 -91.3 0.0287 0 0 0.0223 Tank initStep + 3 -193 8.76 -91.3 0.028 0.000656 0.00127 0.0236 Tank msc + 4 -193 8.77 -91.2 0 0.028 0.0138 0.0374 Tank eIoni + 5 -193 8.77 -91.2 0 0 0 0.0374 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 69, Parent ID = 56 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -193 8.76 -91.2 2.24e-06 0 0 0 Tank initStep + 1 -365 710 -493 2.24e-06 2.24e-06 826 826 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 68, Parent ID = 56 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -193 8.77 -91.2 3.34e-06 0 0 0 Tank initStep + 1 -3.32e+03 799 2.12e+03 3.34e-06 3.34e-06 3.91e+03 3.91e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 67, Parent ID = 56 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -193 8.76 -91.3 2.74e-06 0 0 0 Tank initStep + 1 5e+03 -1.35e+03 2.97e+03 2.74e-06 0 6.18e+03 6.18e+03 World Transportation + 2 5e+03 -1.35e+03 2.97e+03 2.74e-06 0 0 6.18e+03 Tank Transportation + 3 2.66e+03 -1.89e+03 5e+03 2.74e-06 0 3.15e+03 9.33e+03 World Transportation + 4 2.66e+03 -1.89e+03 5e+03 2.74e-06 0 0 9.33e+03 Tank Transportation + 5 -5e+03 -4.46e+03 1.5e+03 2.74e-06 0 8.8e+03 1.81e+04 World Transportation + 6 -5e+03 -4.46e+03 1.5e+03 2.74e-06 0 0 1.81e+04 Tank Transportation + 7 -4.47e+03 -5e+03 1.09e+03 2.74e-06 0 858 1.9e+04 World Transportation + 8 -4.47e+03 -5e+03 1.09e+03 2.74e-06 0 0 1.9e+04 Tank Transportation + 9 -2.82e+03 5e+03 -4.42e+03 2.74e-06 0 1.15e+04 3.05e+04 World Transportation + 10 -2.82e+03 5e+03 -4.42e+03 2.74e-06 0 0 3.05e+04 Tank Transportation + 11 -2.74e+03 4.7e+03 -5e+03 2.74e-06 0 657 3.12e+04 World Transportation + 12 -2.74e+03 4.7e+03 -5e+03 2.74e-06 0 0 3.12e+04 Tank Transportation + 13 -3e+03 -4.44e+03 5e+03 2.74e-06 0 1.35e+04 4.47e+04 World Transportation + 14 -3e+03 -4.44e+03 5e+03 2.74e-06 0 0 4.47e+04 Tank Transportation + 15 -818 -5e+03 -1.62e+03 2.74e-06 0 7e+03 5.17e+04 World Transportation + 16 -818 -5e+03 -1.62e+03 2.74e-06 0 0 5.17e+04 Tank Transportation + 17 -559 5e+03 -2.64e+03 2.74e-06 0 1.01e+04 6.18e+04 World Transportation + 18 -1.26e+03 1e+04 -3.54e+03 2.74e-06 0 5.13e+03 6.69e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 55, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -85.5 4.56 -170 0.0575 0 0 0 Tank initStep + 1 -85.5 4.56 -170 0.056 0.00144 0.00434 0.00434 Tank msc + 2 -85.5 4.55 -170 0.0369 0.0191 0.0248 0.0292 Tank eIoni + 3 -85.5 4.56 -170 0.0246 0.0124 0.0177 0.0469 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 71, Parent ID = 55 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -85.5 4.56 -170 2.35e-06 0 0 0 Tank initStep + 1 3.01e+03 -5e+03 -2.64e+03 2.35e-06 0 6.38e+03 6.38e+03 World Transportation + 2 3.01e+03 -5e+03 -2.64e+03 2.35e-06 0 0 6.38e+03 Tank Transportation + 3 5e+03 -3.28e+03 -3.53e+03 2.35e-06 0 2.78e+03 9.16e+03 World Transportation + 4 5e+03 -3.28e+03 -3.53e+03 2.35e-06 0 0 9.16e+03 Tank Transportation + 5 4.32e+03 -2.18e+03 -5e+03 2.35e-06 0 1.96e+03 1.11e+04 World Transportation + 6 4.32e+03 -2.18e+03 -5e+03 2.35e-06 0 0 1.11e+04 Tank Transportation + 7 3.83e+03 5e+03 4.41e+03 2.35e-06 0 1.18e+04 2.3e+04 World Transportation + 8 3.83e+03 5e+03 4.41e+03 2.35e-06 0 0 2.3e+04 Tank Transportation + 9 3.32e+03 4.63e+03 5e+03 2.35e-06 0 865 2.38e+04 World Transportation + 10 3.32e+03 4.63e+03 5e+03 2.35e-06 0 0 2.38e+04 Tank Transportation + 11 -5e+03 1.76e+03 -795 2.35e-06 0 1.05e+04 3.44e+04 World Transportation + 12 -9.43e+03 -2.1e+03 -1e+04 2.35e-06 0 1.09e+04 4.53e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 70, Parent ID = 55 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -85.5 4.55 -170 2.09e-06 0 0 0 Tank initStep + 1 -5e+03 -863 -595 2.09e-06 0 5.01e+03 5.01e+03 World Transportation + 2 -1e+04 -3.33e+03 -1.51e+03 2.09e-06 0 5.65e+03 1.07e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 55, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 -85.5 4.56 -170 0.0246 0 0 0.0469 Tank initStep + 4 -85.5 4.56 -170 0.0236 0.000924 0.000967 0.0479 Tank msc + 5 -85.5 4.56 -170 0.0044 0.0192 0.0112 0.0591 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 72, Parent ID = 55 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -85.5 4.56 -170 3.74e-06 0 0 0 Tank initStep + 1 -5e+03 -4.54e+03 -971 3.74e-06 0 6.74e+03 6.74e+03 World Transportation + 2 -6.45e+03 -1e+04 -3e+03 3.74e-06 0 6e+03 1.27e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 55, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 -85.5 4.56 -170 0.0044 0 0 0.0591 Tank initStep + 6 -85.5 4.56 -170 0.00414 0.000264 4.74e-05 0.0591 Tank msc + 7 -85.5 4.56 -170 0 0.00414 0.000533 0.0596 Tank eIoni + 8 -85.5 4.56 -170 0 0 0 0.0596 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 54, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -63.5 26.5 -129 0.0298 0 0 0 Tank initStep + 1 -63.5 26.5 -129 0.0286 0.00123 0.00136 0.00136 Tank msc + 2 -63.6 26.5 -129 0.00964 0.019 0.0141 0.0155 Tank eIoni + 3 -63.6 26.5 -129 0 0.00964 0.00232 0.0178 Tank eIoni + 4 -63.6 26.5 -129 0 0 0 0.0178 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 73, Parent ID = 54 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -63.6 26.5 -129 2.31e-06 0 0 0 Tank initStep + 1 -74.4 -295 -465 2.31e-06 2.31e-06 465 465 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 53, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.2 28.4 -105 0.0409 0 0 0 Tank initStep + 1 17.2 28.4 -105 0.0391 0.00172 0.00238 0.00238 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 74, Parent ID = 53 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.2 28.4 -105 3.12e-06 0 0 0 Tank initStep + 1 5e+03 1.2e+03 -1.46e+03 3.12e-06 0 5.29e+03 5.29e+03 World Transportation + 2 5e+03 1.2e+03 -1.46e+03 3.12e-06 0 0 5.29e+03 Tank Transportation + 3 4.54e+03 1.08e+03 -5e+03 3.12e-06 0 3.57e+03 8.87e+03 World Transportation + 4 4.81e+03 -86.5 -1e+04 3.12e-06 0 5.14e+03 1.4e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 53, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 17.2 28.4 -105 0.0391 0 0 0.00238 Tank initStep + 2 17.2 28.4 -105 0.0379 0.00121 0.00221 0.00459 Tank msc + 3 17.2 28.4 -105 0.0213 0.0166 0.0181 0.0227 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 75, Parent ID = 53 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.2 28.4 -105 4.09e-06 0 0 0 Tank initStep + 1 3.47e+03 5e+03 1.01e+03 4.09e-06 0 6.16e+03 6.16e+03 World Transportation + 2 3.47e+03 5e+03 1.01e+03 4.09e-06 0 0 6.16e+03 Tank Transportation + 3 5e+03 4.74e+03 1.49e+03 4.09e-06 0 1.62e+03 7.78e+03 World Transportation + 4 1e+04 3.38e+03 3.36e+03 4.09e-06 0 5.51e+03 1.33e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 53, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 17.2 28.4 -105 0.0213 0 0 0.0227 Tank initStep + 4 17.2 28.4 -105 0.0205 0.000841 0.000753 0.0235 Tank msc + 5 17.2 28.4 -105 0 0.0205 0.00878 0.0323 Tank eIoni + 6 17.2 28.4 -105 0 0 0 0.0323 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 76, Parent ID = 53 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.2 28.4 -105 3.62e-06 0 0 0 Tank initStep + 1 3.65e+03 -5e+03 2.37e+03 3.62e-06 0 6.68e+03 6.68e+03 World Transportation + 2 3.65e+03 -5e+03 2.37e+03 3.62e-06 0 0 6.68e+03 Tank Transportation + 3 5e+03 -3.18e+03 2.74e+03 3.62e-06 0 2.3e+03 8.98e+03 World Transportation + 4 5e+03 -3.18e+03 2.74e+03 3.62e-06 0 0 8.98e+03 Tank Transportation + 5 1.49e+03 3.32e+03 5e+03 3.62e-06 0 7.72e+03 1.67e+04 World Transportation + 6 1.49e+03 3.32e+03 5e+03 3.62e-06 0 0 1.67e+04 Tank Transportation + 7 -267 5e+03 2.13e+03 3.62e-06 0 3.76e+03 2.05e+04 World Transportation + 8 -267 5e+03 2.13e+03 3.62e-06 0 0 2.05e+04 Tank Transportation + 9 -3.96e+03 725 -5e+03 3.62e-06 0 9.1e+03 2.96e+04 World Transportation + 10 -4.71e+03 -9.19e+03 -1e+04 3.62e-06 0 1.11e+04 4.07e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 52, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 41.6 30.3 -47.2 0.0297 0 0 0 Tank initStep + 1 41.6 30.3 -47.2 0.0285 0.00113 0.00135 0.00135 Tank msc + 2 41.6 30.3 -47.2 0.00273 0.0258 0.0141 0.0154 Tank eIoni + 3 41.6 30.3 -47.2 0 0.00273 0.000263 0.0157 Tank eIoni + 4 41.6 30.3 -47.2 0 0 0 0.0157 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 37 7.32 -2.54 0.218 0 0 0 Tank initStep + 1 37.1 7.32 -2.52 0.202 0.016 0.0409 0.0409 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 78, Parent ID = 51 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 37 7.32 -2.54 3.46e-06 0 0 0 Tank initStep + 1 2.83e+03 261 -3.48e+03 3.46e-06 3.46e-06 4.46e+03 4.46e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 77, Parent ID = 51 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 37 7.32 -2.53 3.92e-06 0 0 0 Tank initStep + 1 2.4e+03 -1.74e+03 5e+03 3.92e-06 0 5.8e+03 5.8e+03 World Transportation + 2 5.34e+03 -4.04e+03 1e+04 3.92e-06 0 6.24e+03 1.2e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 37.1 7.32 -2.52 0.202 0 0 0.0409 Tank initStep + 2 37.1 7.33 -2.5 0.193 0.009 0.0362 0.0771 Tank msc + 3 37.2 7.35 -2.46 0.161 0.0324 0.1 0.177 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 79, Parent ID = 51 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 37.1 7.34 -2.48 3.33e-06 0 0 0 Tank initStep + 1 2.48e+03 998 5e+03 3.33e-06 0 5.66e+03 5.66e+03 World Transportation + 2 5.8e+03 2.77e+03 1e+04 3.33e-06 0 6.26e+03 1.19e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 37.2 7.35 -2.46 0.161 0 0 0.177 Tank initStep + 4 37.2 7.36 -2.44 0.154 0.00653 0.025 0.202 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 80, Parent ID = 51 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 37.2 7.36 -2.44 3.97e-06 0 0 0 Tank initStep + 1 812 -1.15e+03 -5e+03 3.97e-06 0 5.19e+03 5.19e+03 World Transportation + 2 889 -3.36e+03 -1e+04 3.97e-06 0 5.47e+03 1.07e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 37.2 7.36 -2.44 0.154 0 0 0.202 Tank initStep + 5 37.2 7.37 -2.42 0.148 0.00627 0.0234 0.225 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 81, Parent ID = 51 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 37.2 7.36 -2.43 3.96e-06 0 0 0 Tank initStep + 1 -5e+03 1.5e+03 -4.78e+03 3.96e-06 0 7.1e+03 7.1e+03 World Transportation + 2 -5e+03 1.5e+03 -4.78e+03 3.96e-06 0 0 7.1e+03 Tank Transportation + 3 -4.7e+03 1.57e+03 -5e+03 3.96e-06 0 378 7.48e+03 World Transportation + 4 -1.54e+03 4.05e+03 -1e+04 3.96e-06 0 6.41e+03 1.39e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 37.2 7.37 -2.42 0.148 0 0 0.225 Tank initStep + 6 37.2 7.37 -2.4 0.143 0.00516 0.0218 0.247 Tank msc + 7 37.2 7.39 -2.34 0.119 0.0238 0.0672 0.314 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 82, Parent ID = 51 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 37.2 7.39 -2.35 3.41e-06 0 0 0 Tank initStep + 1 5e+03 -2.18e+03 -1.52e+03 3.41e-06 0 5.63e+03 5.63e+03 World Transportation + 2 5e+03 -2.18e+03 -1.52e+03 3.41e-06 0 0 5.63e+03 Tank Transportation + 3 -1.2e+03 -2.84e+03 -5e+03 3.41e-06 0 7.14e+03 1.28e+04 World Transportation + 4 -1.2e+03 -2.84e+03 -5e+03 3.41e-06 0 0 1.28e+04 Tank Transportation + 5 -2.74e+03 -3.56e+03 -3.26e+03 3.41e-06 3.41e-06 2.43e+03 1.52e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 37.2 7.39 -2.34 0.119 0 0 0.314 Tank initStep + 8 37.2 7.38 -2.33 0.113 0.00576 0.0152 0.33 Tank msc + 9 37.2 7.36 -2.3 0.0984 0.0147 0.0505 0.38 Tank eIoni + 10 37.2 7.32 -2.29 0.0752 0.0233 0.0431 0.423 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 83, Parent ID = 51 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 37.2 7.33 -2.29 3.51e-06 0 0 0 Tank initStep + 1 -1.26e+03 5e+03 -1.93e+03 3.51e-06 0 5.51e+03 5.51e+03 World Transportation + 2 -1.26e+03 5e+03 -1.93e+03 3.51e-06 0 0 5.51e+03 Tank Transportation + 3 -3.11e+03 1.64e+03 -5e+03 3.51e-06 0 4.91e+03 1.04e+04 World Transportation + 4 -3.11e+03 1.64e+03 -5e+03 3.51e-06 0 0 1.04e+04 Tank Transportation + 5 -5e+03 -350 -4.34e+03 3.51e-06 0 2.83e+03 1.32e+04 World Transportation + 6 -5e+03 -350 -4.34e+03 3.51e-06 0 0 1.32e+04 Tank Transportation + 7 1.87e+03 -5e+03 -2.62e+03 3.51e-06 0 8.48e+03 2.17e+04 World Transportation + 8 1.87e+03 -5e+03 -2.62e+03 3.51e-06 0 0 2.17e+04 Tank Transportation + 9 5e+03 105 -1.68e+03 3.51e-06 0 6.06e+03 2.78e+04 World Transportation + 10 5e+03 105 -1.68e+03 3.51e-06 0 0 2.78e+04 Tank Transportation + 11 2.02e+03 5e+03 -648 3.51e-06 0 5.82e+03 3.36e+04 World Transportation + 12 2.02e+03 5e+03 -648 3.51e-06 0 0 3.36e+04 Tank Transportation + 13 -5e+03 658 -3.7e+03 3.51e-06 0 8.8e+03 4.24e+04 World Transportation + 14 -5e+03 658 -3.7e+03 3.51e-06 0 0 4.24e+04 Tank Transportation + 15 -4.02e+03 -528 -5e+03 3.51e-06 0 2.02e+03 4.44e+04 World Transportation + 16 -4.02e+03 -528 -5e+03 3.51e-06 0 0 4.44e+04 Tank Transportation + 17 -1.09e+03 -1.52e+03 -1.65e+03 3.51e-06 3.51e-06 4.56e+03 4.9e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 10 37.2 7.32 -2.29 0.0752 0 0 0.423 Tank initStep + 11 37.2 7.32 -2.29 0.0693 0.00588 0.00695 0.43 Tank msc + 12 37.2 7.3 -2.28 0.052 0.0173 0.03 0.46 Tank eIoni + 13 37.2 7.29 -2.27 0.0307 0.0213 0.0233 0.484 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 84, Parent ID = 51 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 37.2 7.29 -2.27 2.51e-06 0 0 0 Tank initStep + 1 -2.64e+03 780 -5e+03 2.51e-06 0 5.72e+03 5.72e+03 World Transportation + 2 -2.64e+03 780 -5e+03 2.51e-06 0 0 5.72e+03 Tank Transportation + 3 -5e+03 1.76e+03 -3.61e+03 2.51e-06 0 2.91e+03 8.63e+03 World Transportation + 4 -5e+03 1.76e+03 -3.61e+03 2.51e-06 0 0 8.63e+03 Tank Transportation + 5 -1.73e+03 5e+03 -1.33e+03 2.51e-06 0 5.14e+03 1.38e+04 World Transportation + 6 -1.73e+03 5e+03 -1.33e+03 2.51e-06 0 0 1.38e+04 Tank Transportation + 7 -202 -5e+03 -193 2.51e-06 0 1.02e+04 2.39e+04 World Transportation + 8 356 -1e+04 427 2.51e-06 0 5.07e+03 2.9e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 13 37.2 7.29 -2.27 0.0307 0 0 0.484 Tank initStep + 14 37.2 7.29 -2.27 0.0297 0.00106 0.00144 0.485 Tank msc + 15 37.2 7.28 -2.27 0.0137 0.016 0.0146 0.5 Tank eIoni + 16 37.2 7.28 -2.27 0 0.0137 0.00429 0.504 Tank eIoni + 17 37.2 7.28 -2.27 0 0 0 0.504 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 85, Parent ID = 51 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 37.2 7.28 -2.27 3.62e-06 0 0 0 Tank initStep + 1 -2.22e+03 807 183 3.62e-06 3.62e-06 2.4e+03 2.4e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 49, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.751 0.584 0.0362 0.511 0 0 0 Tank initStep + 1 -0.0674 0.432 0.0943 0.222 1.42e-05 0.834 0.834 Tank compt + 2 74.3 94.6 215 0.195 1.42e-05 246 247 Tank compt + 3 70.3 92.2 228 0.17 0.000537 14.2 261 Tank compt + 4 94.4 29.5 280 0.143 2.92e-05 84.8 346 Tank compt + 5 103 27.1 279 0.0818 0.000537 8.51 354 Tank compt + 6 9.32 71 323 0.076 1.42e-05 112 466 Tank compt + 7 -92.9 -11.6 440 0.0757 2.92e-05 176 642 Tank compt + 8 -135 -31.4 499 0.0738 1.42e-05 75.4 718 Tank compt + 9 -138 -32.9 500 0.0641 0.000537 3.03 721 Tank compt + 10 -135 -45.2 482 0.0518 0.000537 22 742 Tank compt + 11 -141 -40.7 498 0 0.000537 17.6 760 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 96, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -141 -40.7 498 0.0512 0 0 0 Tank initStep + 1 -141 -40.7 498 0.05 0.00127 0.00355 0.00355 Tank msc + 2 -141 -40.7 498 0.034 0.016 0.0226 0.0261 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 97, Parent ID = 96 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -141 -40.7 498 2.3e-06 0 0 0 Tank initStep + 1 2.75e+03 -2.79e+03 -5e+03 2.3e-06 0 6.79e+03 6.79e+03 World Transportation + 2 2.75e+03 -2.79e+03 -5e+03 2.3e-06 0 0 6.79e+03 Tank Transportation + 3 4.72e+03 -5e+03 -1.54e+03 2.3e-06 0 4.56e+03 1.13e+04 World Transportation + 4 4.72e+03 -5e+03 -1.54e+03 2.3e-06 0 0 1.13e+04 Tank Transportation + 5 5e+03 -3.47e+03 -170 2.3e-06 0 2.07e+03 1.34e+04 World Transportation + 6 5e+03 -3.47e+03 -170 2.3e-06 0 0 1.34e+04 Tank Transportation + 7 229 -442 5e+03 2.3e-06 0 7.66e+03 2.11e+04 World Transportation + 8 229 -442 5e+03 2.3e-06 0 0 2.11e+04 Tank Transportation + 9 -258 -346 3.99e+03 2.3e-06 2.3e-06 1.13e+03 2.22e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 96, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -141 -40.7 498 0.034 0 0 0.0261 Tank initStep + 3 -141 -40.7 498 0.0311 0.00296 0.00172 0.0279 Tank msc + 4 -141 -40.7 498 0.00911 0.0219 0.0153 0.0432 Tank eIoni + 5 -141 -40.7 498 0 0.00911 0.00211 0.0453 Tank eIoni + 6 -141 -40.7 498 0 0 0 0.0453 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 95, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -135 -45.2 482 0.0118 0 0 0 Tank initStep + 1 -135 -45.2 482 0.0116 0.000131 0.000265 0.000265 Tank msc + 2 -135 -45.2 482 0 0.0116 0.00324 0.00351 Tank eIoni + 3 -135 -45.2 482 0 0 0 0.00351 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 98, Parent ID = 95 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -135 -45.2 482 2.43e-06 0 0 0 Tank initStep + 1 -2.32e+03 5e+03 2.27e+03 2.43e-06 0 5.78e+03 5.78e+03 World Transportation + 2 -6.69e+03 1e+04 6.63e+03 2.43e-06 0 7.94e+03 1.37e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 94, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -138 -32.9 500 0.00919 0 0 0 Tank initStep + 1 -138 -32.9 500 0.00885 0.000335 0.000171 0.000171 Tank msc + 2 -138 -32.9 500 0 0.00885 0.002 0.00217 Tank eIoni + 3 -138 -32.9 500 0 0 0 0.00217 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 93, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -135 -31.4 499 0.00191 0 0 0 Tank initStep + 1 -135 -31.4 499 0.00176 0.000151 1.16e-05 1.16e-05 Tank msc + 2 -135 -31.4 499 0 0.00176 0.000127 0.000139 Tank eIoni + 3 -135 -31.4 499 0 0 0 0.000139 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 92, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.9 -11.6 440 0.000228 0 0 0 Tank initStep + 1 -92.9 -11.6 440 0.000228 0 7.34e-07 7.34e-07 Tank msc + 2 -92.9 -11.6 440 0 0.000228 9.17e-06 9.9e-06 Tank eIoni + 3 -92.9 -11.6 440 0 0 0 9.9e-06 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 91, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 9.32 71 323 0.00579 0 0 0 Tank initStep + 1 9.32 71 323 0.0056 0.000196 7.6e-05 7.6e-05 Tank msc + 2 9.32 71 323 0 0.0056 0.000895 0.000971 Tank eIoni + 3 9.32 71 323 0 0 0 0.000971 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 103 27.1 279 0.0608 0 0 0 Tank initStep + 1 103 27.1 279 0.0537 0.0071 0.00479 0.00479 Tank msc + 2 103 27.1 279 0 0.0537 0.024 0.0288 Tank eIoni + 3 103 27.1 279 0 0 0 0.0288 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 102, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 103 27.1 279 2.23e-06 0 0 0 Tank initStep + 1 -116 1.63e+03 -5e+03 2.23e-06 0 5.52e+03 5.52e+03 World Transportation + 2 317 3.94e+03 -1e+04 2.23e-06 0 5.52e+03 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 101, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 103 27.1 279 2.32e-06 0 0 0 Tank initStep + 1 -1.15e+03 4.33e+03 -5e+03 2.32e-06 0 6.93e+03 6.93e+03 World Transportation + 2 -1.15e+03 4.33e+03 -5e+03 2.32e-06 0 0 6.93e+03 Tank Transportation + 3 -1.24e+03 5e+03 -4.51e+03 2.32e-06 0 830 7.76e+03 World Transportation + 4 -1.24e+03 5e+03 -4.51e+03 2.32e-06 0 0 7.76e+03 Tank Transportation + 5 88.2 383 502 2.32e-06 2.32e-06 6.95e+03 1.47e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 100, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 103 27.1 279 3.66e-06 0 0 0 Tank initStep + 1 -4.43e+03 5e+03 2.4e+03 3.66e-06 0 7.06e+03 7.06e+03 World Transportation + 2 -4.43e+03 5e+03 2.4e+03 3.66e-06 0 0 7.06e+03 Tank Transportation + 3 -5e+03 4.04e+03 2.84e+03 3.66e-06 0 1.2e+03 8.25e+03 World Transportation + 4 -5e+03 4.04e+03 2.84e+03 3.66e-06 0 0 8.25e+03 Tank Transportation + 5 -2.35e+03 -3.12e+03 5e+03 3.66e-06 0 7.94e+03 1.62e+04 World Transportation + 6 -2.35e+03 -3.12e+03 5e+03 3.66e-06 0 0 1.62e+04 Tank Transportation + 7 -1.52e+03 -5e+03 2.3e+03 3.66e-06 0 3.39e+03 1.96e+04 World Transportation + 8 -1.52e+03 -5e+03 2.3e+03 3.66e-06 0 0 1.96e+04 Tank Transportation + 9 -386 -1.35e+03 174 3.66e-06 3.66e-06 4.38e+03 2.4e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 99, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 103 27.1 279 2.66e-06 0 0 0 Tank initStep + 1 -5e+03 1.9e+03 3.03e+03 2.66e-06 0 6.09e+03 6.09e+03 World Transportation + 2 -5e+03 1.9e+03 3.03e+03 2.66e-06 0 0 6.09e+03 Tank Transportation + 3 -4.04e+03 2.46e+03 5e+03 2.66e-06 0 2.26e+03 8.35e+03 World Transportation + 4 878 4.57e+03 1e+04 2.66e-06 0 7.33e+03 1.57e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 89, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 94.4 29.5 280 0.0269 0 0 0 Tank initStep + 1 94.4 29.5 280 0.0264 0.000455 0.00113 0.00113 Tank msc + 2 94.4 29.5 280 0.0131 0.0133 0.0129 0.0141 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 103, Parent ID = 89 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 94.4 29.5 280 3.88e-06 0 0 0 Tank initStep + 1 -2.41e+03 5e+03 -2.99e+03 3.88e-06 0 6.45e+03 6.45e+03 World Transportation + 2 -2.41e+03 5e+03 -2.99e+03 3.88e-06 0 0 6.45e+03 Tank Transportation + 3 -2.82e+03 -9.38 -5e+03 3.88e-06 0 5.41e+03 1.19e+04 World Transportation + 4 -2.82e+03 -9.38 -5e+03 3.88e-06 0 0 1.19e+04 Tank Transportation + 5 -4.48e+03 -5e+03 -4.36e+03 3.88e-06 0 5.3e+03 1.72e+04 World Transportation + 6 -5.34e+03 -1e+04 -2.11e+03 3.88e-06 0 5.55e+03 2.27e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 89, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 94.4 29.5 280 0.0131 0 0 0.0141 Tank initStep + 3 94.4 29.5 280 0.0129 0.000227 0.000321 0.0144 Tank msc + 4 94.4 29.5 280 0 0.0129 0.00389 0.0183 Tank eIoni + 5 94.4 29.5 280 0 0 0 0.0183 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 88, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 70.3 92.2 228 0.0241 0 0 0 Tank initStep + 1 70.3 92.2 228 0.0236 0.000588 0.000938 0.000938 Tank msc + 2 70.3 92.2 228 0.002 0.0216 0.0111 0.0121 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 104, Parent ID = 88 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 70.3 92.2 228 3.26e-06 0 0 0 Tank initStep + 1 -3.7e+03 5e+03 -622 3.26e-06 0 6.25e+03 6.25e+03 World Transportation + 2 -3.7e+03 5e+03 -622 3.26e-06 0 0 6.25e+03 Tank Transportation + 3 -2.72e+03 2.35e+03 -5e+03 3.26e-06 0 5.21e+03 1.15e+04 World Transportation + 4 -2.72e+03 2.35e+03 -5e+03 3.26e-06 0 0 1.15e+04 Tank Transportation + 5 -3.77e+03 -5e+03 -63.1 3.26e-06 0 8.91e+03 2.04e+04 World Transportation + 6 -6.71e+03 -1e+04 6.91e+03 3.26e-06 0 9.07e+03 2.94e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 88, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 70.3 92.2 228 0.002 0 0 0.0121 Tank initStep + 3 70.3 92.2 228 0.00186 0.000144 1.26e-05 0.0121 Tank msc + 4 70.3 92.2 228 0 0.00186 0.000139 0.0122 Tank eIoni + 5 70.3 92.2 228 0 0 0 0.0122 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 87, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 74.3 94.6 215 0.0271 0 0 0 Tank initStep + 1 74.3 94.6 215 0.026 0.00113 0.00116 0.00116 Tank msc + 2 74.3 94.6 215 0.0131 0.0129 0.0127 0.0139 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 105, Parent ID = 87 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 74.3 94.6 215 2.44e-06 0 0 0 Tank initStep + 1 5e+03 3.07e+03 745 2.44e-06 0 5.78e+03 5.78e+03 World Transportation + 2 5e+03 3.07e+03 745 2.44e-06 0 0 5.78e+03 Tank Transportation + 3 3.31e+03 5e+03 -502 2.44e-06 0 2.85e+03 8.63e+03 World Transportation + 4 -3.48e+03 1e+04 -2.89e+03 2.44e-06 0 8.77e+03 1.74e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 87, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 74.3 94.6 215 0.0131 0 0 0.0139 Tank initStep + 3 74.3 94.6 215 0.0127 0.000393 0.000319 0.0142 Tank msc + 4 74.3 94.6 215 0 0.0127 0.00378 0.018 Tank eIoni + 5 74.3 94.6 215 0 0 0 0.018 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0674 0.432 0.0943 0.289 0 0 0 Tank initStep + 1 -0.113 0.428 0.0881 0.282 0.00721 0.047 0.047 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 106, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.102 0.429 0.0896 3.8e-06 0 0 0 Tank initStep + 1 -739 1.88e+03 -5e+03 3.8e-06 0 5.39e+03 5.39e+03 World Transportation + 2 -5.27e+03 9.51e+03 -1e+04 3.8e-06 0 1.02e+04 1.56e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 -0.113 0.428 0.0881 0.282 0 0 0.047 Tank initStep + 2 -0.157 0.421 0.0863 0.273 0.00865 0.0447 0.0917 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 107, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.139 0.424 0.087 4.11e-06 0 0 0 Tank initStep + 1 -2.67e+03 -661 597 4.11e-06 4.11e-06 2.82e+03 2.82e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -0.157 0.421 0.0863 0.273 0 0 0.0917 Tank initStep + 3 -0.197 0.408 0.0806 0.266 0.00732 0.0421 0.134 Tank Cerenkov + 4 -0.233 0.398 0.0721 0.259 0.0069 0.04 0.174 Tank Cerenkov + 5 -0.268 0.387 0.0678 0.252 0.00735 0.038 0.212 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 108, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.26 0.389 0.0687 3.79e-06 0 0 0 Tank initStep + 1 1.65e+03 3.48e+03 4.81e+03 3.79e-06 3.79e-06 6.16e+03 6.16e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 -0.268 0.387 0.0678 0.252 0 0 0.212 Tank initStep + 6 -0.297 0.366 0.0705 0.245 0.00623 0.0359 0.248 Tank Cerenkov + 7 -0.307 0.36 0.0707 0.242 0.00299 0.0115 0.259 Tank Cerenkov + 8 -0.408 0.295 0.0687 0.213 0.0293 0.136 0.396 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 111, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.327 0.347 0.0703 3.33e-06 0 0 0 Tank initStep + 1 -2.08e+03 604 1.63e+03 3.33e-06 3.33e-06 2.71e+03 2.71e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 110, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.323 0.35 0.0703 2.62e-06 0 0 0 Tank initStep + 1 -5e+03 -1.03e+03 -4.02e+03 2.62e-06 0 6.5e+03 6.5e+03 World Transportation + 2 -5e+03 -1.03e+03 -4.02e+03 2.62e-06 0 0 6.5e+03 Tank Transportation + 3 -4.7e+03 -2.09e+03 -5e+03 2.62e-06 0 1.48e+03 7.97e+03 World Transportation + 4 -4.7e+03 -2.09e+03 -5e+03 2.62e-06 0 0 7.97e+03 Tank Transportation + 5 -4.06e+03 -5e+03 -2.89e+03 2.62e-06 0 3.65e+03 1.16e+04 World Transportation + 6 3.04e+03 -1e+04 9.65e+03 2.62e-06 0 1.53e+04 2.69e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 109, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.349 0.333 0.0698 3.8e-06 0 0 0 Tank initStep + 1 2.42e+03 5e+03 33.9 3.8e-06 0 5.56e+03 5.56e+03 World Transportation + 2 5.41e+03 1e+04 361 3.8e-06 0 5.83e+03 1.14e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 -0.408 0.295 0.0687 0.213 0 0 0.396 Tank initStep + 9 -0.437 0.273 0.0535 0.201 0.0125 0.0394 0.435 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 112, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.409 0.295 0.0685 2.38e-06 0 0 0 Tank initStep + 1 2.98e+03 -2.54e+03 5e+03 2.38e-06 0 6.35e+03 6.35e+03 World Transportation + 2 2.98e+03 -2.54e+03 5e+03 2.38e-06 0 0 6.35e+03 Tank Transportation + 3 5e+03 -3.68e+03 2.81e+03 2.38e-06 0 3.19e+03 9.54e+03 World Transportation + 4 5e+03 -3.68e+03 2.81e+03 2.38e-06 0 0 9.54e+03 Tank Transportation + 5 2.9e+03 -5e+03 1.67e+03 2.38e-06 0 2.73e+03 1.23e+04 World Transportation + 6 2.9e+03 -5e+03 1.67e+03 2.38e-06 0 0 1.23e+04 Tank Transportation + 7 1.38e+03 5e+03 544 2.38e-06 0 1.02e+04 2.24e+04 World Transportation + 8 1.38e+03 5e+03 544 2.38e-06 0 0 2.24e+04 Tank Transportation + 9 880 2.98e+03 -5e+03 2.38e-06 0 5.92e+03 2.84e+04 World Transportation + 10 -1.58e+03 -1.46e+03 -1e+04 2.38e-06 0 7.12e+03 3.55e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 -0.437 0.273 0.0535 0.201 0 0 0.435 Tank initStep + 10 -0.463 0.258 0.0335 0.194 0.00652 0.0358 0.471 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 113, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.458 0.261 0.0368 2.34e-06 0 0 0 Tank initStep + 1 -3.18e+03 5e+03 1.91e+03 2.34e-06 0 6.23e+03 6.23e+03 World Transportation + 2 -3.18e+03 5e+03 1.91e+03 2.34e-06 0 0 6.23e+03 Tank Transportation + 3 -5e+03 3.82e+03 2.86e+03 2.34e-06 0 2.36e+03 8.59e+03 World Transportation + 4 -5e+03 3.82e+03 2.86e+03 2.34e-06 0 0 8.59e+03 Tank Transportation + 5 -4.56e+03 3.02e+03 3.4e+03 2.34e-06 2.34e-06 1.06e+03 9.65e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 10 -0.463 0.258 0.0335 0.194 0 0 0.471 Tank initStep + 11 -0.48 0.249 0.00666 0.186 0.00759 0.034 0.505 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 115, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.467 0.256 0.0275 3.76e-06 0 0 0 Tank initStep + 1 -3.71e+03 -276 5e+03 3.76e-06 0 6.23e+03 6.23e+03 World Transportation + 2 -3.71e+03 -276 5e+03 3.76e-06 0 0 6.23e+03 Tank Transportation + 3 -5e+03 180 3.96e+03 3.76e-06 0 1.72e+03 7.95e+03 World Transportation + 4 -5e+03 180 3.96e+03 3.76e-06 0 0 7.95e+03 Tank Transportation + 5 976 4.82e+03 870 3.76e-06 0 8.17e+03 1.61e+04 Tank OpRayleigh + 6 291 5e+03 768 3.76e-06 0 717 1.68e+04 World Transportation + 7 291 5e+03 768 3.76e-06 0 0 1.68e+04 Tank Transportation + 8 -5e+03 2.65e+03 718 3.76e-06 0 5.79e+03 2.26e+04 World Transportation + 9 -1e+04 -1.38e+03 1.9e+03 3.76e-06 0 6.53e+03 2.92e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 114, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.477 0.251 0.0119 3.42e-06 0 0 0 Tank initStep + 1 2.15e+03 -2.81e+03 5e+03 3.42e-06 0 6.12e+03 6.12e+03 World Transportation + 2 2.15e+03 -2.81e+03 5e+03 3.42e-06 0 0 6.12e+03 Tank Transportation + 3 4.99e+03 -4.49e+03 507 3.42e-06 3.42e-06 5.58e+03 1.17e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 11 -0.48 0.249 0.00666 0.186 0 0 0.505 Tank initStep + 12 -0.497 0.241 -0.0192 0.18 0.00689 0.0319 0.537 Tank msc + 13 -0.541 0.225 -0.0833 0.149 0.0309 0.0908 0.627 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 119, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.526 0.23 -0.0612 2.24e-06 0 0 0 Tank initStep + 1 441 -5e+03 2.76e+03 2.24e-06 0 5.73e+03 5.73e+03 World Transportation + 2 473 -7.8e+03 1e+04 2.24e-06 0 7.76e+03 1.35e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 118, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.534 0.227 -0.0731 3.44e-06 0 0 0 Tank initStep + 1 233 48.8 -2.44e+03 3.44e-06 3.44e-06 2.45e+03 2.45e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 117, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.499 0.241 -0.0212 2.74e-06 0 0 0 Tank initStep + 1 1.2e+03 2.98e+03 5e+03 2.74e-06 0 5.94e+03 5.94e+03 World Transportation + 2 1.2e+03 2.98e+03 5e+03 2.74e-06 0 0 5.94e+03 Tank Transportation + 3 1.98e+03 5e+03 3.9e+03 2.74e-06 0 2.43e+03 8.37e+03 World Transportation + 4 1.98e+03 5e+03 3.9e+03 2.74e-06 0 0 8.37e+03 Tank Transportation + 5 5e+03 2.1e+03 2.04e+03 2.74e-06 0 4.58e+03 1.3e+04 World Transportation + 6 5e+03 2.1e+03 2.04e+03 2.74e-06 0 0 1.3e+04 Tank Transportation + 7 -4.84e+03 -2.97e+03 416 2.74e-06 2.74e-06 1.12e+04 2.41e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 116, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.51 0.236 -0.0378 2.95e-06 0 0 0 Tank initStep + 1 -2.53e+03 168 5e+03 2.95e-06 0 5.61e+03 5.61e+03 World Transportation + 2 -1e+04 -1.73e+03 7.94e+03 2.95e-06 0 8.25e+03 1.39e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 13 -0.541 0.225 -0.0833 0.149 0 0 0.627 Tank initStep + 14 -0.557 0.21 -0.0881 0.139 0.00925 0.022 0.649 Tank msc + 15 -0.595 0.169 -0.093 0.109 0.0303 0.0653 0.715 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 120, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.584 0.181 -0.0916 3.8e-06 0 0 0 Tank initStep + 1 1.95e+03 5e+03 600 3.8e-06 0 5.4e+03 5.4e+03 World Transportation + 2 4.44e+03 1e+04 1.78e+03 3.8e-06 0 5.71e+03 1.11e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 15 -0.595 0.169 -0.093 0.109 0 0 0.715 Tank initStep + 16 -0.603 0.162 -0.101 0.105 0.00447 0.0132 0.728 Tank msc + 17 -0.625 0.136 -0.119 0.0913 0.0133 0.0462 0.774 Tank eIoni + 18 -0.619 0.118 -0.146 0.0793 0.012 0.0397 0.814 Tank eIoni + 19 -0.617 0.106 -0.171 0.0372 0.0422 0.0342 0.848 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 121, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.618 0.115 -0.152 3.65e-06 0 0 0 Tank initStep + 1 5e+03 -1.36e+03 -593 3.65e-06 0 5.22e+03 5.22e+03 World Transportation + 2 5e+03 -1.36e+03 -593 3.65e-06 0 0 5.22e+03 Tank Transportation + 3 2.47e+03 -5e+03 -973 3.65e-06 0 4.45e+03 9.67e+03 World Transportation + 4 -6.23e+03 -1e+04 -1.77e+03 3.65e-06 0 1.01e+04 1.97e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 19 -0.617 0.106 -0.171 0.0372 0 0 0.848 Tank initStep + 20 -0.617 0.107 -0.173 0.0364 0.000791 0.00201 0.85 Tank msc + 21 -0.619 0.111 -0.183 0.0192 0.0172 0.0175 0.868 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 123, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.617 0.108 -0.175 2.62e-06 0 0 0 Tank initStep + 1 -822 5e+03 -3.89e+03 2.62e-06 0 6.39e+03 6.39e+03 World Transportation + 2 -1.54e+03 1e+04 -5.81e+03 2.62e-06 0 5.4e+03 1.18e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 122, Parent ID = 86 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.618 0.109 -0.178 2.54e-06 0 0 0 Tank initStep + 1 3.33e+03 2.18e+03 5e+03 2.54e-06 0 6.39e+03 6.39e+03 World Transportation + 2 3.33e+03 2.18e+03 5e+03 2.54e-06 0 0 6.39e+03 Tank Transportation + 3 3.54e+03 2.43e+03 4.45e+03 2.54e-06 2.54e-06 637 7.03e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 21 -0.619 0.111 -0.183 0.0192 0 0 0.868 Tank initStep + 22 -0.619 0.111 -0.184 0.0176 0.00157 0.000625 0.868 Tank msc + 23 -0.621 0.11 -0.186 0 0.0176 0.00673 0.875 Tank eIoni + 24 -0.621 0.11 -0.186 0 0 0 0.875 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 48, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.751 0.583 0.0352 4e-06 0 0 0 Tank initStep + 1 3.63e+03 -822 4.92e+03 4e-06 4e-06 6.17e+03 6.17e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 0.5 0 0 0 Tank initStep + 1 0.137 -0.021 0.00506 0.481 0.0189 0.14 0.14 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.00847 -0.0013 0.000312 2.21e-06 0 0 0 Tank initStep + 1 -1.95e+03 -939 -5e+03 2.21e-06 0 5.45e+03 5.45e+03 World Transportation + 2 -1.95e+03 -939 -5e+03 2.21e-06 0 0 5.45e+03 Tank Transportation + 3 -5e+03 -1.91e+03 -2.81e+03 2.21e-06 0 3.88e+03 9.33e+03 World Transportation + 4 -5e+03 -1.91e+03 -2.81e+03 2.21e-06 0 0 9.33e+03 Tank Transportation + 5 -3.18e+03 -3.96e+03 -1.89e+03 2.21e-06 2.21e-06 2.89e+03 1.22e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.108 -0.0165 0.00396 4.05e-06 0 0 0 Tank initStep + 1 5e+03 -2.95e+03 -2.19e+03 4.05e-06 0 6.21e+03 6.21e+03 World Transportation + 2 7.34e+03 -1e+04 -8.25e+03 4.05e-06 0 9.58e+03 1.58e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0124 -0.0019 0.000457 3.24e-06 0 0 0 Tank initStep + 1 5e+03 -316 3.21e+03 3.24e-06 0 5.95e+03 5.95e+03 World Transportation + 2 5e+03 -316 3.21e+03 3.24e-06 0 0 5.95e+03 Tank Transportation + 3 -5e+03 4.02e+03 -3.76e+03 3.24e-06 0 1.29e+04 1.89e+04 World Transportation + 4 -8.93e+03 7.5e+03 -1e+04 3.24e-06 0 8.16e+03 2.7e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 0.137 -0.021 0.00506 0.481 0 0 0.14 Tank initStep + 2 0.264 -0.0443 0.0194 0.463 0.0176 0.129 0.269 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 8, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.248 -0.0414 0.0176 3.17e-06 0 0 0 Tank initStep + 1 5e+03 -84.9 -2.07e+03 3.17e-06 0 5.41e+03 5.41e+03 World Transportation + 2 5e+03 -84.9 -2.07e+03 3.17e-06 0 0 5.41e+03 Tank Transportation + 3 2.29e+03 -1.03e+03 -5e+03 3.17e-06 0 4.1e+03 9.51e+03 World Transportation + 4 -1e+04 -5.22e+03 -8.5e+03 3.17e-06 0 1.35e+04 2.3e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.249 -0.0415 0.0177 2.85e-06 0 0 0 Tank initStep + 1 5e+03 -470 -2.17e+03 2.85e-06 0 5.47e+03 5.47e+03 World Transportation + 2 5e+03 -470 -2.17e+03 2.85e-06 0 0 5.47e+03 Tank Transportation + 3 3.64e+03 -2.27e+03 -5e+03 2.85e-06 0 3.62e+03 9.09e+03 World Transportation + 4 3.64e+03 -2.27e+03 -5e+03 2.85e-06 0 0 9.09e+03 Tank Transportation + 5 97.7 -5e+03 -2.95e+03 2.85e-06 0 4.92e+03 1.4e+04 World Transportation + 6 97.7 -5e+03 -2.95e+03 2.85e-06 0 0 1.4e+04 Tank Transportation + 7 -5e+03 624 -2.82e+03 2.85e-06 0 7.59e+03 2.16e+04 World Transportation + 8 -5e+03 624 -2.82e+03 2.85e-06 0 0 2.16e+04 Tank Transportation + 9 -3.99e+03 637 -3.06e+03 2.85e-06 2.85e-06 1.04e+03 2.26e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.222 -0.0366 0.0147 2.4e-06 0 0 0 Tank initStep + 1 5e+03 1.35e+03 -826 2.4e-06 0 5.24e+03 5.24e+03 World Transportation + 2 1e+04 3.2e+03 -2.37e+03 2.4e-06 0 5.55e+03 1.08e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.247 -0.0412 0.0175 2.37e-06 0 0 0 Tank initStep + 1 1.42e+03 -1.01e+03 -294 2.37e-06 2.37e-06 1.77e+03 1.77e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 0.264 -0.0443 0.0194 0.463 0 0 0.269 Tank initStep + 3 0.372 -0.0758 0.0569 0.445 0.018 0.12 0.389 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 13, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.297 -0.0537 0.0307 3.08e-06 0 0 0 Tank initStep + 1 -1.39e+03 -5e+03 4.46e+03 3.08e-06 0 6.84e+03 6.84e+03 World Transportation + 2 -1.39e+03 -5e+03 4.46e+03 3.08e-06 0 0 6.84e+03 Tank Transportation + 3 -955 -4.13e+03 5e+03 3.08e-06 0 1.11e+03 7.95e+03 World Transportation + 4 -955 -4.13e+03 5e+03 3.08e-06 0 0 7.95e+03 Tank Transportation + 5 5e+03 4.67e+03 1.76e+03 3.08e-06 0 1.11e+04 1.91e+04 World Transportation + 6 5e+03 4.67e+03 1.76e+03 3.08e-06 0 0 1.91e+04 Tank Transportation + 7 -2.08e+03 -1.27e+03 5e+03 3.08e-06 0 9.8e+03 2.89e+04 World Transportation + 8 -2.08e+03 -1.27e+03 5e+03 3.08e-06 0 0 2.89e+04 Tank Transportation + 9 -4.39e+03 -3.4e+03 1.17e+03 3.08e-06 3.08e-06 4.95e+03 3.38e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 12, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.357 -0.0713 0.0516 2.46e-06 0 0 0 Tank initStep + 1 5e+03 1.15e+03 3.05e+03 2.46e-06 0 5.97e+03 5.97e+03 World Transportation + 2 5e+03 1.15e+03 3.05e+03 2.46e-06 0 0 5.97e+03 Tank Transportation + 3 2.71e+03 -1.86e+03 5e+03 2.46e-06 0 4.26e+03 1.02e+04 World Transportation + 4 2.71e+03 -1.86e+03 5e+03 2.46e-06 0 0 1.02e+04 Tank Transportation + 5 -5e+03 -1.25e+03 -254 2.46e-06 0 9.35e+03 1.96e+04 World Transportation + 6 -5e+03 -1.25e+03 -254 2.46e-06 0 0 1.96e+04 Tank Transportation + 7 -2.95e+03 -181 -1.57e+03 2.46e-06 2.46e-06 2.66e+03 2.22e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 11, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.271 -0.0464 0.0219 2.95e-06 0 0 0 Tank initStep + 1 5e+03 -4.86e+03 4.71e+03 2.95e-06 0 8.41e+03 8.41e+03 World Transportation + 2 5e+03 -4.86e+03 4.71e+03 2.95e-06 0 0 8.41e+03 Tank Transportation + 3 4.81e+03 -5e+03 4.81e+03 2.95e-06 0 259 8.67e+03 World Transportation + 4 4.81e+03 -5e+03 4.81e+03 2.95e-06 0 0 8.67e+03 Tank Transportation + 5 4.52e+03 -4.76e+03 5e+03 2.95e-06 0 416 9.09e+03 World Transportation + 6 4.52e+03 -4.76e+03 5e+03 2.95e-06 0 0 9.09e+03 Tank Transportation + 7 -5e+03 284 1.67e+03 2.95e-06 0 1.13e+04 2.04e+04 World Transportation + 8 -1e+04 4.93e+03 271 2.95e-06 0 6.97e+03 2.73e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 10, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.306 -0.0564 0.0338 2.83e-06 0 0 0 Tank initStep + 1 5e+03 -4.6e+03 506 2.83e-06 0 6.81e+03 6.81e+03 World Transportation + 2 5e+03 -4.6e+03 506 2.83e-06 0 0 6.81e+03 Tank Transportation + 3 4.69e+03 -5e+03 492 2.83e-06 0 507 7.32e+03 World Transportation + 4 -1e+04 -7.98e+03 1.09e+03 2.83e-06 0 1.5e+04 2.23e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 9, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.372 -0.0757 0.0568 3.57e-06 0 0 0 Tank initStep + 1 5e+03 -2.55e+03 -934 3.57e-06 0 5.69e+03 5.69e+03 World Transportation + 2 5e+03 -2.55e+03 -934 3.57e-06 0 0 5.69e+03 Tank Transportation + 3 4.85e+03 -2.34e+03 -1.7e+03 3.57e-06 0 814 6.51e+03 Tank OpRayleigh + 4 5e+03 -1.97e+03 -1.5e+03 3.57e-06 0 444 6.95e+03 World Transportation + 5 5e+03 -1.97e+03 -1.5e+03 3.57e-06 0 0 6.95e+03 Tank Transportation + 6 218 5e+03 517 3.57e-06 0 8.69e+03 1.56e+04 World Transportation + 7 218 5e+03 517 3.57e-06 0 0 1.56e+04 Tank Transportation + 8 -1.51e+03 2.66e+03 1.93e+03 3.57e-06 3.57e-06 3.23e+03 1.89e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 0.372 -0.0758 0.0569 0.445 0 0 0.389 Tank initStep + 4 0.458 -0.0934 0.124 0.424 0.0209 0.111 0.5 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 16, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.402 -0.0818 0.0802 2.91e-06 0 0 0 Tank initStep + 1 5e+03 1.31e+03 -4.69e+03 2.91e-06 0 6.98e+03 6.98e+03 World Transportation + 2 5e+03 1.31e+03 -4.69e+03 2.91e-06 0 0 6.98e+03 Tank Transportation + 3 4.52e+03 1.66e+03 -5e+03 2.91e-06 0 669 7.65e+03 World Transportation + 4 4.52e+03 1.66e+03 -5e+03 2.91e-06 0 0 7.65e+03 Tank Transportation + 5 1.04e+03 5e+03 -3.89e+03 2.91e-06 0 4.95e+03 1.26e+04 World Transportation + 6 1.04e+03 5e+03 -3.89e+03 2.91e-06 0 0 1.26e+04 Tank Transportation + 7 -5e+03 -2.74e+03 -4.12e+03 2.91e-06 0 9.82e+03 2.24e+04 World Transportation + 8 -5e+03 -2.74e+03 -4.12e+03 2.91e-06 0 0 2.24e+04 Tank Transportation + 9 -4.02e+03 -5e+03 -4.93e+03 2.91e-06 0 2.59e+03 2.5e+04 World Transportation + 10 823 -1e+04 -9.95e+03 2.91e-06 0 8.58e+03 3.36e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 15, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.387 -0.0787 0.068 2.85e-06 0 0 0 Tank initStep + 1 5e+03 -2.75e+03 1.37e+03 2.85e-06 0 5.87e+03 5.87e+03 World Transportation + 2 5e+03 -2.75e+03 1.37e+03 2.85e-06 0 0 5.87e+03 Tank Transportation + 3 2.32e+03 -5e+03 483 2.85e-06 0 3.61e+03 9.48e+03 World Transportation + 4 2.32e+03 -5e+03 483 2.85e-06 0 0 9.48e+03 Tank Transportation + 5 -1.94e+03 2.91e+03 -5e+03 2.85e-06 0 1.05e+04 2e+04 World Transportation + 6 -1.94e+03 2.91e+03 -5e+03 2.85e-06 0 0 2e+04 Tank Transportation + 7 -4.05e+03 5e+03 1.1e+03 2.85e-06 0 6.79e+03 2.68e+04 World Transportation + 8 -4.05e+03 5e+03 1.1e+03 2.85e-06 0 0 2.68e+04 Tank Transportation + 9 -5e+03 4.39e+03 2.34e+03 2.85e-06 0 1.68e+03 2.85e+04 World Transportation + 10 -5e+03 4.39e+03 2.34e+03 2.85e-06 0 0 2.85e+04 Tank Transportation + 11 -4.46e+03 2.6e+03 5e+03 2.85e-06 0 3.25e+03 3.17e+04 World Transportation + 12 670 -5.5e+03 1e+04 2.85e-06 0 1.08e+04 4.25e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 14, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.432 -0.088 0.104 2.21e-06 0 0 0 Tank initStep + 1 4.83e+03 -5e+03 4.67e+03 2.21e-06 0 8.37e+03 8.37e+03 World Transportation + 2 4.83e+03 -5e+03 4.67e+03 2.21e-06 0 0 8.37e+03 Tank Transportation + 3 5e+03 -4.94e+03 4.88e+03 2.21e-06 0 273 8.65e+03 World Transportation + 4 5e+03 -4.94e+03 4.88e+03 2.21e-06 0 0 8.65e+03 Tank Transportation + 5 4.86e+03 -4.85e+03 5e+03 2.21e-06 0 205 8.85e+03 World Transportation + 6 4.86e+03 -4.85e+03 5e+03 2.21e-06 0 0 8.85e+03 Tank Transportation + 7 1.59e+03 -1.61e+03 -5e+03 2.21e-06 0 1.1e+04 1.99e+04 World Transportation + 8 1.59e+03 -1.61e+03 -5e+03 2.21e-06 0 0 1.99e+04 Tank Transportation + 9 -372 5e+03 -3.91e+03 2.21e-06 0 6.98e+03 2.68e+04 World Transportation + 10 -2.93e+03 1e+04 -2.46e+03 2.21e-06 0 5.8e+03 3.26e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 0.458 -0.0934 0.124 0.424 0 0 0.5 Tank initStep + 5 0.527 -0.0967 0.197 0.409 0.0153 0.101 0.6 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 20, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.463 -0.0936 0.13 3.26e-06 0 0 0 Tank initStep + 1 4.02e+03 249 -5e+03 3.26e-06 0 6.42e+03 6.42e+03 World Transportation + 2 4.02e+03 249 -5e+03 3.26e-06 0 0 6.42e+03 Tank Transportation + 3 5e+03 1.36e+03 -3.06e+03 3.26e-06 0 2.44e+03 8.86e+03 World Transportation + 4 5e+03 1.36e+03 -3.06e+03 3.26e-06 0 0 8.86e+03 Tank Transportation + 5 4.45e+03 1.72e+03 -2.32e+03 3.26e-06 3.26e-06 994 9.85e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 19, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.464 -0.0936 0.13 3.62e-06 0 0 0 Tank initStep + 1 1.09e+03 3.34e+03 -5e+03 3.62e-06 0 6.11e+03 6.11e+03 World Transportation + 2 1.09e+03 3.34e+03 -5e+03 3.62e-06 0 0 6.11e+03 Tank Transportation + 3 2.11e+03 5e+03 -3.08e+03 3.62e-06 0 2.74e+03 8.85e+03 World Transportation + 4 2.11e+03 5e+03 -3.08e+03 3.62e-06 0 0 8.85e+03 Tank Transportation + 5 5e+03 -2.21e+03 -1.45e+03 3.62e-06 0 7.94e+03 1.68e+04 World Transportation + 6 5e+03 -2.21e+03 -1.45e+03 3.62e-06 0 0 1.68e+04 Tank Transportation + 7 3.7e+03 -5e+03 -2.18e+03 3.62e-06 0 3.16e+03 1.99e+04 World Transportation + 8 69 -1e+04 -5.46e+03 3.62e-06 0 7e+03 2.69e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 18, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.484 -0.0946 0.151 3.08e-06 0 0 0 Tank initStep + 1 -2.61e+03 -5e+03 -602 3.08e-06 0 5.67e+03 5.67e+03 World Transportation + 2 -6.93e+03 -1e+04 -1.36e+03 3.08e-06 0 6.65e+03 1.23e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 17, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.468 -0.0938 0.134 3.81e-06 0 0 0 Tank initStep + 1 515 -264 280 3.81e-06 3.81e-06 642 642 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 0.527 -0.0967 0.197 0.409 0 0 0.6 Tank initStep + 6 0.567 -0.0809 0.279 0.394 0.0148 0.0934 0.694 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 21, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.566 -0.0816 0.275 3.93e-06 0 0 0 Tank initStep + 1 3.08e+03 4.38e+03 5e+03 3.93e-06 0 7.33e+03 7.33e+03 World Transportation + 2 7.46e+03 1e+04 7.73e+03 3.93e-06 0 7.63e+03 1.5e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 0.567 -0.0809 0.279 0.394 0 0 0.694 Tank initStep + 7 0.593 -0.0634 0.358 0.38 0.0144 0.0867 0.78 Tank Cerenkov + 8 0.619 -0.0294 0.423 0.356 0.0235 0.0805 0.861 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 24, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.597 -0.0582 0.369 4.12e-06 0 0 0 Tank initStep + 1 1.82e+03 5e+03 -1.77e+03 4.12e-06 0 5.61e+03 5.61e+03 World Transportation + 2 8.08e+03 1e+04 -7.1e+03 4.12e-06 0 9.61e+03 1.52e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 23, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.616 -0.0339 0.415 2.62e-06 0 0 0 Tank initStep + 1 1.13e+03 -1.01e+03 5e+03 2.62e-06 0 5.22e+03 5.22e+03 World Transportation + 2 1.13e+03 -1.01e+03 5e+03 2.62e-06 0 0 5.22e+03 Tank Transportation + 3 3.41e+03 -2.18e+03 -5e+03 2.62e-06 0 1.03e+04 1.55e+04 World Transportation + 4 5.95e+03 -3.26e+03 -1e+04 2.62e-06 0 5.71e+03 2.13e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 22, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.612 -0.0383 0.406 2.64e-06 0 0 0 Tank initStep + 1 -4.87e+03 -4.62e+03 -5e+03 2.64e-06 0 8.37e+03 8.37e+03 World Transportation + 2 -4.87e+03 -4.62e+03 -5e+03 2.64e-06 0 0 8.37e+03 Tank Transportation + 3 -5e+03 -4.85e+03 -4.8e+03 2.64e-06 0 332 8.7e+03 World Transportation + 4 -5e+03 -4.85e+03 -4.8e+03 2.64e-06 0 0 8.7e+03 Tank Transportation + 5 -4.76e+03 -5e+03 -4.71e+03 2.64e-06 0 298 9e+03 World Transportation + 6 -4.76e+03 -5e+03 -4.71e+03 2.64e-06 0 0 9e+03 Tank Transportation + 7 -919 1.86e+03 -5e+03 2.64e-06 0 7.86e+03 1.69e+04 World Transportation + 8 -919 1.86e+03 -5e+03 2.64e-06 0 0 1.69e+04 Tank Transportation + 9 1.14e+03 5e+03 -2.99e+03 2.64e-06 0 4.26e+03 2.11e+04 World Transportation + 10 5.96e+03 1e+04 5.22e+03 2.64e-06 0 1.08e+04 3.19e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 0.619 -0.0294 0.423 0.356 0 0 0.861 Tank initStep + 9 0.662 -0.00533 0.474 0.347 0.00927 0.0708 0.932 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 25, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.641 -0.0168 0.45 3.82e-06 0 0 0 Tank initStep + 1 2.98e+03 -266 -314 3.82e-06 3.82e-06 3.01e+03 3.01e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 0.662 -0.00533 0.474 0.347 0 0 0.932 Tank initStep + 10 0.68 0.00594 0.536 0.331 0.0166 0.0672 0.999 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 26, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.677 0.00375 0.524 3.57e-06 0 0 0 Tank initStep + 1 3.91e+03 2.35e+03 5e+03 3.57e-06 0 6.77e+03 6.77e+03 World Transportation + 2 3.91e+03 2.35e+03 5e+03 3.57e-06 0 0 6.77e+03 Tank Transportation + 3 5e+03 -105 4.85e+03 3.57e-06 0 2.69e+03 9.45e+03 World Transportation + 4 5e+03 -105 4.85e+03 3.57e-06 0 0 9.45e+03 Tank Transportation + 5 2.91e+03 -5e+03 4.85e+03 3.57e-06 0 5.32e+03 1.48e+04 World Transportation + 6 2.91e+03 -5e+03 4.85e+03 3.57e-06 0 0 1.48e+04 Tank Transportation + 7 -5e+03 -1.36e+03 3.15e+03 3.57e-06 0 8.87e+03 2.36e+04 World Transportation + 8 -5e+03 -1.36e+03 3.15e+03 3.57e-06 0 0 2.36e+04 Tank Transportation + 9 -2.47e+03 5e+03 -395 3.57e-06 0 7.71e+03 3.14e+04 World Transportation + 10 -2.47e+03 5e+03 -395 3.57e-06 0 0 3.14e+04 Tank Transportation + 11 -593 159 -5e+03 3.57e-06 0 6.94e+03 3.83e+04 World Transportation + 12 -593 159 -5e+03 3.57e-06 0 0 3.83e+04 Tank Transportation + 13 -352 -5e+03 1.03e+03 3.57e-06 0 7.94e+03 4.62e+04 World Transportation + 14 -352 -5e+03 1.03e+03 3.57e-06 0 0 4.62e+04 Tank Transportation + 15 2.64e+03 1.35e+03 5e+03 3.57e-06 0 8.07e+03 5.43e+04 World Transportation + 16 2.64e+03 1.35e+03 5e+03 3.57e-06 0 0 5.43e+04 Tank Transportation + 17 3.78e+03 2.51e+03 3.93e+03 3.57e-06 3.57e-06 1.95e+03 5.62e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 10 0.68 0.00594 0.536 0.331 0 0 0.999 Tank initStep + 11 0.693 0.0217 0.593 0.32 0.0107 0.061 1.06 Tank Cerenkov + 12 0.709 0.0325 0.645 0.306 0.0137 0.0571 1.12 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 27, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.693 0.0219 0.595 3.7e-06 0 0 0 Tank initStep + 1 656 1.02e+03 5e+03 3.7e-06 0 5.14e+03 5.14e+03 World Transportation + 2 422 5.09e+03 1e+04 3.7e-06 0 6.45e+03 1.16e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 12 0.709 0.0325 0.645 0.306 0 0 1.12 Tank initStep + 13 0.726 0.0583 0.687 0.299 0.00716 0.0524 1.17 Tank Cerenkov + 14 0.745 0.0853 0.723 0.287 0.0121 0.05 1.22 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 28, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.73 0.0636 0.694 2.59e-06 0 0 0 Tank initStep + 1 4.47e+03 5e+03 -4.49e+03 2.59e-06 0 8.07e+03 8.07e+03 World Transportation + 2 4.47e+03 5e+03 -4.49e+03 2.59e-06 0 0 8.07e+03 Tank Transportation + 3 4.93e+03 4.57e+03 -5e+03 2.59e-06 0 806 8.88e+03 World Transportation + 4 4.93e+03 4.57e+03 -5e+03 2.59e-06 0 0 8.88e+03 Tank Transportation + 5 5e+03 4.43e+03 -4.75e+03 2.59e-06 0 301 9.18e+03 World Transportation + 6 5e+03 4.43e+03 -4.75e+03 2.59e-06 0 0 9.18e+03 Tank Transportation + 7 2.14e+03 298 5e+03 2.59e-06 0 1.1e+04 2.01e+04 World Transportation + 8 -1.76e+03 -6.43e+03 1e+04 2.59e-06 0 9.25e+03 2.94e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 14 0.745 0.0853 0.723 0.287 0 0 1.22 Tank initStep + 15 0.781 0.095 0.749 0.278 0.00906 0.0461 1.27 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 29, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.759 0.0891 0.733 3.45e-06 0 0 0 Tank initStep + 1 -497 2.2e+03 -3.73e+03 3.45e-06 3.45e-06 4.36e+03 4.36e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 15 0.781 0.095 0.749 0.278 0 0 1.27 Tank initStep + 16 0.814 0.102 0.775 0.268 0.00969 0.0433 1.31 Tank Cerenkov + 17 0.849 0.108 0.793 0.26 0.00835 0.0403 1.35 Tank Cerenkov + 18 0.873 0.116 0.819 0.253 0.00688 0.0379 1.39 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 30, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.858 0.111 0.803 3.41e-06 0 0 0 Tank initStep + 1 1.4e+03 5e+03 -1.99e+03 3.41e-06 0 5.56e+03 5.56e+03 World Transportation + 2 3.32e+03 1e+04 -5.41e+03 3.41e-06 0 6.35e+03 1.19e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 18 0.873 0.116 0.819 0.253 0 0 1.39 Tank initStep + 19 0.903 0.135 0.824 0.242 0.0105 0.036 1.42 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 31, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.9 0.133 0.823 3.73e-06 0 0 0 Tank initStep + 1 13.7 -38.7 -14.5 3.73e-06 3.73e-06 43.6 43.6 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 19 0.903 0.135 0.824 0.242 0 0 1.42 Tank initStep + 20 0.903 0.135 0.824 0.242 0 4.45e-05 1.42 Tank msc + 21 0.903 0.136 0.824 0.242 3.84e-05 0.000168 1.42 Tank Cerenkov + 22 0.903 0.136 0.824 0.242 5.45e-06 2.09e-05 1.42 Tank Cerenkov + 23 0.903 0.136 0.824 0.242 2.84e-11 1.09e-10 1.42 Tank Cerenkov + 24 0.986 0.217 0.844 0.217 0.025 0.133 1.56 Tank eIoni + 25 1.04 0.28 0.785 0.19 0.0271 0.114 1.67 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 34, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 1.03 0.273 0.792 2.44e-06 0 0 0 Tank initStep + 1 458 5e+03 -2.39e+03 2.44e-06 0 5.56e+03 5.56e+03 World Transportation + 2 213 1e+04 -5.48e+03 2.44e-06 0 5.89e+03 1.14e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 33, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 1.02 0.253 0.811 3.4e-06 0 0 0 Tank initStep + 1 1.62e+03 -5e+03 -951 3.4e-06 0 5.34e+03 5.34e+03 World Transportation + 2 5.24e+03 -1e+04 -3.45e+03 3.4e-06 0 6.66e+03 1.2e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 32, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 1.01 0.252 0.812 3.8e-06 0 0 0 Tank initStep + 1 -1.49e+03 -2.24e+03 -1.2e+03 3.8e-06 3.8e-06 2.95e+03 2.95e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 25 1.04 0.28 0.785 0.19 0 0 1.67 Tank initStep + 26 1.06 0.294 0.769 0.182 0.00872 0.0317 1.7 Tank msc + 27 1.13 0.317 0.733 0.161 0.0207 0.0892 1.79 Tank eIoni + 28 1.16 0.354 0.691 0 0.161 0.0759 1.87 Tank eIoni + 29 1.16 0.354 0.691 0 0 0 1.87 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 39, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 1.16 0.354 0.691 0.511 0 0 0 Tank initStep + 1 -2.33 -44.6 14.7 0.492 2.92e-05 47.2 47.2 Tank compt + 2 17 -164 33.2 0.289 0.000537 122 169 Tank compt + 3 39.4 -163 95.9 0.18 1.36e-05 66.6 236 Tank compt + 4 15.4 -150 102 0.169 1.36e-05 28.4 264 Tank compt + 5 -77.6 -38.8 241 0.147 1.42e-05 201 465 Tank compt + 6 -85.2 -15.8 237 0.124 1.42e-05 24.7 490 Tank compt + 7 -71 -1.86 244 0.102 2.92e-05 21.2 511 Tank compt + 8 -57 -43.8 332 0.1 1.36e-05 98.7 609 Tank compt + 9 -37.6 -42.1 565 0.0872 1.42e-05 234 844 Tank compt + 10 14.6 -4.41 577 0.0814 1.42e-05 65.4 909 Tank compt + 11 17.1 -3.69 574 0.0694 1.42e-05 3.69 913 Tank compt + 12 26.8 0.515 586 0.0668 1.42e-05 16 929 Tank compt + 13 28.1 -8.81 624 0.0668 1.42e-05 38.8 967 Tank compt + 14 32.5 -39.9 725 0.0597 1.36e-05 105 1.07e+03 Tank compt + 15 38 -20.7 732 0.0481 2.92e-05 21.4 1.09e+03 Tank compt + 16 23.9 -66.5 713 0.0425 1.42e-05 51.6 1.15e+03 Tank compt + 17 14.5 -8.25 675 0.0377 1.42e-05 70.2 1.22e+03 Tank compt + 18 13.5 -61 671 0.0344 2.92e-05 53 1.27e+03 Tank compt + 19 69.6 -37.1 667 0 0.000537 61.1 1.33e+03 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 58, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 69.6 -37.1 667 0.0339 0 0 0 Tank initStep + 1 69.6 -37.1 667 0.033 0.000875 0.00171 0.00171 Tank msc + 2 69.6 -37.1 667 0 0.033 0.0161 0.0179 Tank eIoni + 3 69.6 -37.1 667 0 0 0 0.0179 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 57, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 13.5 -61 671 0.00326 0 0 0 Tank initStep + 1 13.5 -61 671 0.00302 0.000231 2.83e-05 2.83e-05 Tank msc + 2 13.5 -61 671 0 0.00302 0.000312 0.000341 Tank eIoni + 3 13.5 -61 671 0 0 0 0.000341 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 56, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 14.5 -8.25 675 0.00482 0 0 0 Tank initStep + 1 14.5 -8.25 675 0.00457 0.000245 5.54e-05 5.54e-05 Tank msc + 2 14.5 -8.25 675 0 0.00457 0.000633 0.000689 Tank eIoni + 3 14.5 -8.25 675 0 0 0 0.000689 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 55, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 23.9 -66.5 713 0.00559 0 0 0 Tank initStep + 1 23.9 -66.5 713 0.00544 0.000144 7.15e-05 7.15e-05 Tank msc + 2 23.9 -66.5 713 0 0.00544 0.000854 0.000925 Tank eIoni + 3 23.9 -66.5 713 0 0 0 0.000925 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 54, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 38 -20.7 732 0.0116 0 0 0 Tank initStep + 1 38 -20.7 732 0.0112 0.000376 0.000257 0.000257 Tank msc + 2 38 -20.7 732 0 0.0112 0.00304 0.00329 Tank eIoni + 3 38 -20.7 732 0 0 0 0.00329 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 53, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 32.5 -39.9 725 0.00701 0 0 0 Tank initStep + 1 32.5 -39.9 725 0.00656 0.000451 0.000106 0.000106 Tank msc + 2 32.5 -39.9 725 0 0.00656 0.00118 0.00129 Tank eIoni + 3 32.5 -39.9 725 0 0 0 0.00129 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 52, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 28.1 -8.81 624 6.59e-06 0 0 0 Tank initStep + 1 28.1 -8.81 624 0 6.59e-06 1.38e-06 1.38e-06 Tank eIoni + 2 28.1 -8.81 624 0 0 0 1.38e-06 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 26.8 0.515 586 0.00262 0 0 0 Tank initStep + 1 26.8 0.515 586 0.00253 9.08e-05 1.96e-05 1.96e-05 Tank msc + 2 26.8 0.516 586 0 0.00253 0.000231 0.00025 Tank eIoni + 3 26.8 0.516 586 0 0 0 0.00025 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 50, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.1 -3.69 574 0.0119 0 0 0 Tank initStep + 1 17.1 -3.69 574 0.0112 0.000783 0.000271 0.000271 Tank msc + 2 17.1 -3.69 574 0 0.0112 0.00301 0.00328 Tank eIoni + 3 17.1 -3.69 574 0 0 0 0.00328 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 60, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.1 -3.69 574 2.24e-06 0 0 0 Tank initStep + 1 -1.76e+03 -768 -146 2.24e-06 2.24e-06 2.07e+03 2.07e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 59, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.1 -3.69 574 3.8e-06 0 0 0 Tank initStep + 1 -48.2 -315 998 3.8e-06 0 529 529 Tank OpRayleigh + 2 -645 345 1.76e+03 3.8e-06 3.8e-06 1.17e+03 1.7e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 14.6 -4.41 577 0.00583 0 0 0 Tank initStep + 1 14.6 -4.41 577 0.00557 0.000268 7.7e-05 7.7e-05 Tank msc + 2 14.6 -4.41 577 0 0.00557 0.000887 0.000964 Tank eIoni + 3 14.6 -4.41 577 0 0 0 0.000964 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -37.6 -42.1 565 0.0127 0 0 0 Tank initStep + 1 -37.6 -42.1 565 0.0123 0.000467 0.000303 0.000303 Tank msc + 2 -37.6 -42.1 565 0 0.0123 0.00355 0.00385 Tank eIoni + 3 -37.6 -42.1 565 0 0 0 0.00385 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 47, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -57 -43.8 332 0.002 0 0 0 Tank initStep + 1 -57 -43.8 332 0.00198 1.97e-05 1.25e-05 1.25e-05 Tank msc + 2 -57 -43.8 332 0 0.00198 0.000154 0.000167 Tank eIoni + 3 -57 -43.8 332 0 0 0 0.000167 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -71 -1.86 244 0.0217 0 0 0 Tank initStep + 1 -71 -1.86 244 0.0211 0.000582 0.000774 0.000774 Tank msc + 2 -71 -1.86 244 0 0.0211 0.00922 0.00999 Tank eIoni + 3 -71 -1.86 244 0 0 0 0.00999 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 62, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -71 -1.86 244 3.49e-06 0 0 0 Tank initStep + 1 -2.79e+03 -375 1.07e+03 3.49e-06 3.49e-06 2.86e+03 2.86e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 61, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -71 -1.86 244 3.44e-06 0 0 0 Tank initStep + 1 -5e+03 -3.76e+03 197 3.44e-06 0 6.2e+03 6.2e+03 World Transportation + 2 -6.57e+03 -1e+04 2.64e+03 3.44e-06 0 6.89e+03 1.31e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 45, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -85.2 -15.8 237 0.0234 0 0 0 Tank initStep + 1 -85.2 -15.8 237 0.0225 0.000968 0.00089 0.00089 Tank msc + 2 -85.2 -15.8 237 0 0.0225 0.0103 0.0112 Tank eIoni + 3 -85.2 -15.8 237 0 0 0 0.0112 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 63, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -85.2 -15.8 237 2.62e-06 0 0 0 Tank initStep + 1 699 325 1.95e+03 2.62e-06 2.62e-06 1.91e+03 1.91e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 44, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -77.6 -38.8 241 0.0217 0 0 0 Tank initStep + 1 -77.6 -38.8 241 0.0208 0.000886 0.000777 0.000777 Tank msc + 2 -77.6 -38.8 241 0 0.0208 0.00902 0.0098 Tank eIoni + 3 -77.6 -38.8 241 0 0 0 0.0098 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 65, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -77.6 -38.8 241 3.43e-06 0 0 0 Tank initStep + 1 1.52e+03 447 775 3.43e-06 3.43e-06 1.75e+03 1.75e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 64, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -77.6 -38.8 241 3.15e-06 0 0 0 Tank initStep + 1 -3.99e+03 -1.08e+03 -5e+03 3.15e-06 0 6.62e+03 6.62e+03 World Transportation + 2 -3.99e+03 -1.08e+03 -5e+03 3.15e-06 0 0 6.62e+03 Tank Transportation + 3 -5e+03 -802 -4.25e+03 3.15e-06 0 1.28e+03 7.91e+03 World Transportation + 4 -1e+04 6.42e+03 8.06e+03 3.15e-06 0 1.51e+04 2.3e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 43, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 15.4 -150 102 0.0109 0 0 0 Tank initStep + 1 15.4 -150 102 0.0106 0.000269 0.000231 0.000231 Tank msc + 2 15.4 -150 102 0 0.0106 0.00276 0.00299 Tank eIoni + 3 15.4 -150 102 0 0 0 0.00299 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 66, Parent ID = 43 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 15.4 -150 102 2.23e-06 0 0 0 Tank initStep + 1 -5e+03 3.16e+03 4.15e+03 2.23e-06 0 7.25e+03 7.25e+03 World Transportation + 2 -5e+03 3.16e+03 4.15e+03 2.23e-06 0 0 7.25e+03 Tank Transportation + 3 -3.1e+03 3.87e+03 5e+03 2.23e-06 0 2.2e+03 9.44e+03 World Transportation + 4 -3.1e+03 3.87e+03 5e+03 2.23e-06 0 0 9.44e+03 Tank Transportation + 5 5e+03 -1.18e+03 1.73e+03 2.23e-06 0 1.01e+04 1.95e+04 World Transportation + 6 5e+03 -1.18e+03 1.73e+03 2.23e-06 0 0 1.95e+04 Tank Transportation + 7 -230 -5e+03 -4.84e+03 2.23e-06 0 9.23e+03 2.88e+04 World Transportation + 8 -230 -5e+03 -4.84e+03 2.23e-06 0 0 2.88e+04 Tank Transportation + 9 -457 -4.89e+03 -5e+03 2.23e-06 0 299 2.91e+04 World Transportation + 10 -457 -4.89e+03 -5e+03 2.23e-06 0 0 2.91e+04 Tank Transportation + 11 -4.19e+03 -1.72e+03 5e+03 2.23e-06 0 1.11e+04 4.02e+04 World Transportation + 12 -5.93e+03 852 1e+04 2.23e-06 0 5.89e+03 4.61e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 42, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 39.4 -163 95.9 0.109 0 0 0 Tank initStep + 1 39.4 -163 95.9 0.105 0.00434 0.0132 0.0132 Tank msc + 2 39.4 -163 96 0.0821 0.0227 0.0462 0.0594 Tank eIoni + 3 39.5 -163 96 0.0678 0.0143 0.0354 0.0948 Tank eIoni + 4 39.5 -163 96 0.0502 0.0176 0.0294 0.124 Tank eIoni + 5 39.4 -163 96 0.0353 0.0149 0.0227 0.147 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 67, Parent ID = 42 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 39.4 -163 96 2.58e-06 0 0 0 Tank initStep + 1 5e+03 3.15e+03 1.64e+03 2.58e-06 0 6.16e+03 6.16e+03 World Transportation + 2 5e+03 3.15e+03 1.64e+03 2.58e-06 0 0 6.16e+03 Tank Transportation + 3 3.54e+03 5e+03 2.85e+03 2.58e-06 0 2.65e+03 8.81e+03 World Transportation + 4 3.54e+03 5e+03 2.85e+03 2.58e-06 0 0 8.81e+03 Tank Transportation + 5 -5e+03 -4.56e+03 3.1e+03 2.58e-06 0 1.28e+04 2.16e+04 World Transportation + 6 -5e+03 -4.56e+03 3.1e+03 2.58e-06 0 0 2.16e+04 Tank Transportation + 7 -4.45e+03 -5e+03 3.12e+03 2.58e-06 0 702 2.23e+04 World Transportation + 8 -4.45e+03 -5e+03 3.12e+03 2.58e-06 0 0 2.23e+04 Tank Transportation + 9 4.71e+03 -3.61e+03 5e+03 2.58e-06 0 9.45e+03 3.18e+04 World Transportation + 10 4.71e+03 -3.61e+03 5e+03 2.58e-06 0 0 3.18e+04 Tank Transportation + 11 5e+03 -3.47e+03 4.83e+03 2.58e-06 0 365 3.22e+04 World Transportation + 12 1e+04 2.04e+03 -180 2.58e-06 0 8.97e+03 4.11e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 42, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 39.4 -163 96 0.0353 0 0 0.147 Tank initStep + 6 39.4 -163 96 0.0343 0.00107 0.00184 0.149 Tank msc + 7 39.4 -163 96 0.0201 0.0141 0.0167 0.165 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 68, Parent ID = 42 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 39.4 -163 96 2.99e-06 0 0 0 Tank initStep + 1 -5e+03 895 -3.58e+03 2.99e-06 0 6.33e+03 6.33e+03 World Transportation + 2 -5e+03 895 -3.58e+03 2.99e-06 0 0 6.33e+03 Tank Transportation + 3 -3.7e+03 1.12e+03 -5e+03 2.99e-06 0 1.93e+03 8.26e+03 World Transportation + 4 -3.7e+03 1.12e+03 -5e+03 2.99e-06 0 0 8.26e+03 Tank Transportation + 5 -1.31e+03 1.79e+03 5e+03 2.99e-06 0 1.03e+04 1.86e+04 World Transportation + 6 1.48e+03 2.38e+03 1e+04 2.99e-06 0 5.75e+03 2.43e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 42, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 39.4 -163 96 0.0201 0 0 0.165 Tank initStep + 8 39.4 -163 96 0.0184 0.00169 0.000679 0.166 Tank msc + 9 39.4 -163 96 0 0.0184 0.00728 0.173 Tank eIoni + 10 39.4 -163 96 0 0 0 0.173 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17 -164 33.2 0.203 0 0 0 Tank initStep + 1 17 -164 33.2 0.193 0.00946 0.0365 0.0365 Tank msc + 2 17.1 -164 33.1 0.152 0.041 0.1 0.137 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 70, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.1 -164 33.2 3.1e-06 0 0 0 Tank initStep + 1 1.77e+03 -5e+03 964 3.1e-06 0 5.23e+03 5.23e+03 World Transportation + 2 2.03e+03 -1e+04 3.19e+03 3.1e-06 0 5.48e+03 1.07e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 69, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.1 -164 33.1 3.75e-06 0 0 0 Tank initStep + 1 2.39e+03 -429 -989 3.75e-06 3.75e-06 2.6e+03 2.6e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 17.1 -164 33.1 0.152 0 0 0.137 Tank initStep + 3 17 -164 33.1 0.146 0.00662 0.023 0.16 Tank msc + 4 17 -164 33.1 0.109 0.037 0.0691 0.229 Tank eIoni + 5 17 -164 33 0.0598 0.049 0.0483 0.277 Tank eIoni + 6 17 -164 33 0.0415 0.0183 0.0262 0.303 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 72, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17 -164 33 2.34e-06 0 0 0 Tank initStep + 1 -2.92e+03 -1.06e+03 476 2.34e-06 2.34e-06 3.11e+03 3.11e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 71, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17 -164 33 3.09e-06 0 0 0 Tank initStep + 1 3.16e+03 5e+03 -4.53e+03 3.09e-06 0 7.57e+03 7.57e+03 World Transportation + 2 1e+04 8.22e+03 -9.43e+03 3.09e-06 0 9.01e+03 1.66e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 17 -164 33 0.0415 0 0 0.303 Tank initStep + 7 17 -164 33 0.0407 0.000814 0.00245 0.306 Tank msc + 8 17 -164 33 0.0231 0.0176 0.0192 0.325 Tank eIoni + 9 17 -164 33 0.00335 0.0198 0.0108 0.336 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 74, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17 -164 33 2.96e-06 0 0 0 Tank initStep + 1 -4.71e+03 5e+03 -2.73e+03 2.96e-06 0 7.53e+03 7.53e+03 World Transportation + 2 -4.71e+03 5e+03 -2.73e+03 2.96e-06 0 0 7.53e+03 Tank Transportation + 3 -5e+03 4.69e+03 -2.86e+03 2.96e-06 0 443 7.97e+03 World Transportation + 4 -5e+03 4.69e+03 -2.86e+03 2.96e-06 0 0 7.97e+03 Tank Transportation + 5 224 3.36e+03 -5e+03 2.96e-06 0 5.8e+03 1.38e+04 World Transportation + 6 224 3.36e+03 -5e+03 2.96e-06 0 0 1.38e+04 Tank Transportation + 7 5e+03 1.26e+03 -1.88e+03 2.96e-06 0 6.08e+03 1.98e+04 World Transportation + 8 5e+03 1.26e+03 -1.88e+03 2.96e-06 0 0 1.98e+04 Tank Transportation + 9 3.11e+03 1.29e+03 -543 2.96e-06 0 2.32e+03 2.22e+04 Tank OpMieHG + 10 5e+03 437 443 2.96e-06 0 2.3e+03 2.45e+04 World Transportation + 11 1e+04 -5.58e+03 6.33e+03 2.96e-06 0 9.79e+03 3.43e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 73, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17 -164 33 2.38e-06 0 0 0 Tank initStep + 1 526 -525 175 2.38e-06 0 640 640 Tank OpRayleigh + 2 -1.91e+03 -1.61e+03 -2.34e+03 2.38e-06 2.38e-06 3.66e+03 4.3e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 17 -164 33 0.00335 0 0 0.336 Tank initStep + 10 17 -164 33 0.00321 0.000139 2.96e-05 0.336 Tank msc + 11 17 -164 33 0 0.00321 0.000345 0.336 Tank eIoni + 12 17 -164 33 0 0 0 0.336 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 40, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.33 -44.6 14.7 0.0187 0 0 0 Tank initStep + 1 -2.33 -44.6 14.7 0.0181 0.0006 0.000599 0.000599 Tank msc + 2 -2.33 -44.6 14.7 0 0.0181 0.00707 0.00767 Tank eIoni + 3 -2.33 -44.6 14.7 0 0 0 0.00767 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 75, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.33 -44.6 14.7 3.68e-06 0 0 0 Tank initStep + 1 5e+03 -1.78e+03 1.13e+03 3.68e-06 0 5.41e+03 5.41e+03 World Transportation + 2 5e+03 -1.78e+03 1.13e+03 3.68e-06 0 0 5.41e+03 Tank Transportation + 3 1.3e+03 -4.76e+03 4.22e+03 3.68e-06 3.68e-06 5.67e+03 1.11e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 38, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 1.16 0.354 0.691 0.511 0 0 0 Tank initStep + 1 2.79 21.3 -5.81 0.314 0.000537 22 22 Tank compt + 2 17.4 20.6 -34 0.18 1.36e-05 31.8 53.7 Tank compt + 3 79.1 -7.36 19.4 0.153 0.000537 86.3 140 Tank compt + 4 218 -18.7 2.63 0.122 2.92e-05 141 281 Tank compt + 5 219 -16.8 1.3 0.119 0.000537 2.32 283 Tank compt + 6 268 -40.9 -52.2 0.0968 1.36e-05 76.7 360 Tank compt + 7 268 -37.7 -54.1 0.0692 0.000537 3.76 363 Tank compt + 8 206 -82.3 -34.7 0.0623 0.000537 78.6 442 Tank compt + 9 189 -46.9 25.6 0 0.000537 71.8 514 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 84, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 189 -46.9 25.6 0.0618 0 0 0 Tank initStep + 1 189 -46.9 25.6 0.0603 0.00143 0.00492 0.00492 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 85, Parent ID = 84 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 189 -46.9 25.6 3.76e-06 0 0 0 Tank initStep + 1 3.14e+03 -1.19e+03 -2.18e+03 3.76e-06 0 3.86e+03 3.86e+03 Tank OpRayleigh + 2 3.3e+03 902 2.67e+03 3.76e-06 3.76e-06 5.28e+03 9.14e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 84, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 189 -46.9 25.6 0.0603 0 0 0.00492 Tank initStep + 2 189 -46.9 25.6 0.0581 0.0022 0.00472 0.00965 Tank msc + 3 189 -46.9 25.6 0.0448 0.0133 0.0256 0.0353 Tank eIoni + 4 189 -46.9 25.6 0.0258 0.019 0.0207 0.056 Tank eIoni + 5 189 -46.9 25.6 0 0.0258 0.0126 0.0686 Tank eIoni + 6 189 -46.9 25.6 0 0 0 0.0686 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 206 -82.3 -34.7 0.0063 0 0 0 Tank initStep + 1 206 -82.3 -34.7 0.0062 0.000107 8.82e-05 8.82e-05 Tank msc + 2 206 -82.3 -34.7 0 0.0062 0.00107 0.00116 Tank eIoni + 3 206 -82.3 -34.7 0 0 0 0.00116 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 86, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 206 -82.3 -34.7 3.49e-06 0 0 0 Tank initStep + 1 -5e+03 1.61e+03 -3.55e+03 3.49e-06 0 6.51e+03 6.51e+03 World Transportation + 2 -5e+03 1.61e+03 -3.55e+03 3.49e-06 0 0 6.51e+03 Tank Transportation + 3 -3.4e+03 2.09e+03 -4.51e+03 3.49e-06 3.49e-06 1.92e+03 8.43e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 268 -37.7 -54.1 0.0271 0 0 0 Tank initStep + 1 268 -37.7 -54.1 0.0267 0.00038 0.00115 0.00115 Tank msc + 2 268 -37.7 -54.1 0.0134 0.0133 0.0131 0.0143 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 87, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 268 -37.7 -54.1 3.29e-06 0 0 0 Tank initStep + 1 422 2.9e+03 1.88e+03 3.29e-06 3.29e-06 3.52e+03 3.52e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 268 -37.7 -54.1 0.0134 0 0 0.0143 Tank initStep + 3 268 -37.7 -54.1 0.0127 0.000728 0.000333 0.0146 Tank msc + 4 268 -37.7 -54.1 0 0.0127 0.00377 0.0184 Tank eIoni + 5 268 -37.7 -54.1 0 0 0 0.0184 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 88, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 268 -37.7 -54.1 2.38e-06 0 0 0 Tank initStep + 1 -122 3.42e+03 -1.2e+03 2.38e-06 2.38e-06 3.66e+03 3.66e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 81, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 268 -40.9 -52.2 0.0219 0 0 0 Tank initStep + 1 268 -40.9 -52.2 0.0194 0.00251 0.000791 0.000791 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 89, Parent ID = 81 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 268 -40.9 -52.2 3.8e-06 0 0 0 Tank initStep + 1 3.22e+03 -4.76e+03 2.02e+03 3.8e-06 0 5.94e+03 5.94e+03 Tank OpRayleigh + 2 3.18e+03 1.18e+03 -2.48e+03 3.8e-06 3.8e-06 7.45e+03 1.34e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 81, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 268 -40.9 -52.2 0.0194 0 0 0.000791 Tank initStep + 2 268 -40.9 -52.2 0.0188 0.000571 0.000638 0.00143 Tank msc + 3 268 -40.9 -52.2 0 0.0188 0.00757 0.009 Tank eIoni + 4 268 -40.9 -52.2 0 0 0 0.009 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 90, Parent ID = 81 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 268 -40.9 -52.2 3.9e-06 0 0 0 Tank initStep + 1 -2.94e+03 -5e+03 -617 3.9e-06 0 5.94e+03 5.94e+03 World Transportation + 2 -2.94e+03 -5e+03 -617 3.9e-06 0 0 5.94e+03 Tank Transportation + 3 -5e+03 -4.51e+03 51 3.9e-06 0 2.22e+03 8.15e+03 World Transportation + 4 -5e+03 -4.51e+03 51 3.9e-06 0 0 8.15e+03 Tank Transportation + 5 -3.4e+03 -5e+03 2.14e+03 3.9e-06 0 2.68e+03 1.08e+04 World Transportation + 6 -3.4e+03 -5e+03 2.14e+03 3.9e-06 0 0 1.08e+04 Tank Transportation + 7 -1.43e+03 -3.8e+03 5e+03 3.9e-06 0 3.67e+03 1.45e+04 World Transportation + 8 -1.43e+03 -3.8e+03 5e+03 3.9e-06 0 0 1.45e+04 Tank Transportation + 9 3.24e+03 5e+03 -2.43e+03 3.9e-06 0 1.24e+04 2.69e+04 World Transportation + 10 3.24e+03 5e+03 -2.43e+03 3.9e-06 0 0 2.69e+04 Tank Transportation + 11 5e+03 234 -4.46e+03 3.9e-06 0 5.47e+03 3.24e+04 World Transportation + 12 5e+03 234 -4.46e+03 3.9e-06 0 0 3.24e+04 Tank Transportation + 13 328 -4.2e+03 -5e+03 3.9e-06 0 6.47e+03 3.89e+04 World Transportation + 14 328 -4.2e+03 -5e+03 3.9e-06 0 0 3.89e+04 Tank Transportation + 15 -489 -5e+03 -3.46e+03 3.9e-06 0 1.92e+03 4.08e+04 World Transportation + 16 -489 -5e+03 -3.46e+03 3.9e-06 0 0 4.08e+04 Tank Transportation + 17 -551 -3.82e+03 -2.57e+03 3.9e-06 3.9e-06 1.48e+03 4.23e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 80, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 219 -16.8 1.3 0.00271 0 0 0 Tank initStep + 1 219 -16.8 1.3 0.00265 5.76e-05 2.07e-05 2.07e-05 Tank msc + 2 219 -16.8 1.3 0 0.00265 0.00025 0.000271 Tank eIoni + 3 219 -16.8 1.3 0 0 0 0.000271 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 79, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 218 -18.7 2.63 0.0306 0 0 0 Tank initStep + 1 218 -18.7 2.63 0.0299 0.000715 0.00142 0.00142 Tank msc + 2 218 -18.7 2.64 0.00122 0.0286 0.0147 0.0162 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 92, Parent ID = 79 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 218 -18.7 2.63 2.36e-06 0 0 0 Tank initStep + 1 498 2e+03 373 2.36e-06 0 2.07e+03 2.07e+03 Bubble Transportation + 2 498 2e+03 373 2.36e-06 0 0 2.07e+03 Tank Transportation + 3 1.12e+03 -2.5e+03 1.2e+03 2.36e-06 2.36e-06 4.62e+03 6.69e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 91, Parent ID = 79 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 218 -18.7 2.63 3.23e-06 0 0 0 Tank initStep + 1 611 2.56e+03 5e+03 3.23e-06 0 5.64e+03 5.64e+03 World Transportation + 2 611 2.56e+03 5e+03 3.23e-06 0 0 5.64e+03 Tank Transportation + 3 -331 5e+03 2.85e+03 3.23e-06 0 3.39e+03 9.02e+03 World Transportation + 4 -331 5e+03 2.85e+03 3.23e-06 0 0 9.02e+03 Tank Transportation + 5 -5e+03 -944 -1.36e+03 3.23e-06 0 8.65e+03 1.77e+04 World Transportation + 6 -5e+03 -944 -1.36e+03 3.23e-06 0 0 1.77e+04 Tank Transportation + 7 -2.13e+03 -4.77e+03 -5e+03 3.23e-06 0 6.01e+03 2.37e+04 World Transportation + 8 -2.13e+03 -4.77e+03 -5e+03 3.23e-06 0 0 2.37e+04 Tank Transportation + 9 -1.94e+03 -5e+03 -4.89e+03 3.23e-06 0 321 2.4e+04 World Transportation + 10 4.32e+03 -1e+04 -3.23e+03 3.23e-06 0 8.18e+03 3.22e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 79, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 218 -18.7 2.64 0.00122 0 0 0.0162 Tank initStep + 3 218 -18.7 2.64 0.00122 0 5.73e-06 0.0162 Tank msc + 4 218 -18.7 2.64 0 0.00122 7.17e-05 0.0162 Tank eIoni + 5 218 -18.7 2.64 0 0 0 0.0162 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 78, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 79.1 -7.36 19.4 0.0267 0 0 0 Tank initStep + 1 79.1 -7.36 19.4 0.0261 0.000591 0.00112 0.00112 Tank msc + 2 79.1 -7.36 19.4 0.00676 0.0194 0.0128 0.0139 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 94, Parent ID = 78 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 79.1 -7.36 19.4 4.02e-06 0 0 0 Tank initStep + 1 -4.14e+03 -1.8e+03 3.2e+03 4.02e-06 4.02e-06 5.58e+03 5.58e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 93, Parent ID = 78 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 79.1 -7.36 19.4 2.67e-06 0 0 0 Tank initStep + 1 -1.41e+03 -5e+03 -2.03e+03 2.67e-06 0 5.6e+03 5.6e+03 World Transportation + 2 -4.72e+03 -1e+04 -7.3e+03 2.67e-06 0 7.98e+03 1.36e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 78, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 79.1 -7.36 19.4 0.00676 0 0 0.0139 Tank initStep + 3 79.1 -7.36 19.4 0.0064 0.00036 9.97e-05 0.014 Tank msc + 4 79.1 -7.36 19.4 0 0.0064 0.00113 0.0151 Tank eIoni + 5 79.1 -7.36 19.4 0 0 0 0.0151 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 77, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.4 20.6 -34 0.134 0 0 0 Tank initStep + 1 17.4 20.6 -34 0.13 0.00337 0.0185 0.0185 Tank msc + 2 17.4 20.6 -34.1 0.1 0.0299 0.06 0.0785 Tank eIoni + 3 17.4 20.6 -34.1 0.085 0.0155 0.0441 0.123 Tank eIoni + 4 17.3 20.5 -34.1 0.0704 0.0145 0.0368 0.159 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 96, Parent ID = 77 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.4 20.6 -34.1 3.05e-06 0 0 0 Tank initStep + 1 1.01e+03 -5e+03 -2.09e+03 3.05e-06 0 5.52e+03 5.52e+03 World Transportation + 2 4.65e+03 -1e+04 -6.21e+03 3.05e-06 0 7.43e+03 1.29e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 95, Parent ID = 77 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.3 20.5 -34.1 2.75e-06 0 0 0 Tank initStep + 1 3.01e+03 -5e+03 -3.22e+03 2.75e-06 0 6.65e+03 6.65e+03 World Transportation + 2 3.01e+03 -5e+03 -3.22e+03 2.75e-06 0 0 6.65e+03 Tank Transportation + 3 5e+03 -2.7e+03 -4.77e+03 2.75e-06 0 3.41e+03 1.01e+04 World Transportation + 4 5e+03 -2.7e+03 -4.77e+03 2.75e-06 0 0 1.01e+04 Tank Transportation + 5 4.72e+03 -2.44e+03 -5e+03 2.75e-06 0 450 1.05e+04 World Transportation + 6 4.72e+03 -2.44e+03 -5e+03 2.75e-06 0 0 1.05e+04 Tank Transportation + 7 3.31e+03 436 5e+03 2.75e-06 0 1.05e+04 2.1e+04 World Transportation + 8 -890 579 1e+04 2.75e-06 0 6.53e+03 2.75e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 77, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 17.3 20.5 -34.1 0.0704 0 0 0.159 Tank initStep + 5 17.3 20.5 -34.1 0.0668 0.00363 0.0062 0.166 Tank msc + 6 17.3 20.5 -34.1 0.0553 0.0115 0.029 0.195 Tank eIoni + 7 17.4 20.5 -34.1 0.0417 0.0136 0.0246 0.219 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 97, Parent ID = 77 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.4 20.5 -34.1 2.97e-06 0 0 0 Tank initStep + 1 1.39e+03 5e+03 1.49e+03 2.97e-06 0 5.39e+03 5.39e+03 World Transportation + 2 1.39e+03 5e+03 1.49e+03 2.97e-06 0 0 5.39e+03 Tank Transportation + 3 5e+03 1.64e+03 1.3e+03 2.97e-06 0 4.93e+03 1.03e+04 World Transportation + 4 1e+04 -1.3e+03 3.24e+03 2.97e-06 0 6.12e+03 1.64e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 77, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 17.4 20.5 -34.1 0.0417 0 0 0.219 Tank initStep + 8 17.4 20.5 -34.1 0.0401 0.0016 0.00247 0.222 Tank msc + 9 17.4 20.5 -34.1 0.0258 0.0143 0.019 0.241 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 99, Parent ID = 77 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.4 20.5 -34.1 4.11e-06 0 0 0 Tank initStep + 1 17.7 -2.08 -36.9 4.11e-06 4.11e-06 22.8 22.8 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 98, Parent ID = 77 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.4 20.5 -34.1 4.07e-06 0 0 0 Tank initStep + 1 -457 -1.86e+03 -5e+03 4.07e-06 0 5.33e+03 5.33e+03 World Transportation + 2 -815 -3.73e+03 -1e+04 4.07e-06 0 5.35e+03 1.07e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 77, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 17.4 20.5 -34.1 0.0258 0 0 0.241 Tank initStep + 10 17.4 20.5 -34.1 0.025 0.00075 0.00105 0.242 Tank msc + 11 17.4 20.5 -34.1 0 0.025 0.0121 0.254 Tank eIoni + 12 17.4 20.5 -34.1 0 0 0 0.254 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 101, Parent ID = 77 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.4 20.5 -34.1 2.22e-06 0 0 0 Tank initStep + 1 1.81e+03 -5e+03 4.26e+03 2.22e-06 0 6.84e+03 6.84e+03 World Transportation + 2 1.81e+03 -5e+03 4.26e+03 2.22e-06 0 0 6.84e+03 Tank Transportation + 3 2.38e+03 -3.56e+03 5e+03 2.22e-06 0 1.72e+03 8.56e+03 World Transportation + 4 2.38e+03 -3.56e+03 5e+03 2.22e-06 0 0 8.56e+03 Tank Transportation + 5 2.35e+03 -3.13e+03 4.22e+03 2.22e-06 2.22e-06 885 9.45e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 100, Parent ID = 77 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 17.4 20.5 -34.1 3.34e-06 0 0 0 Tank initStep + 1 -5e+03 1.81e+03 3.46e+03 3.34e-06 0 6.37e+03 6.37e+03 World Transportation + 2 -5e+03 1.81e+03 3.46e+03 3.34e-06 0 0 6.37e+03 Tank Transportation + 3 -1.37e+03 1.94e+03 3.99e+03 3.34e-06 3.34e-06 3.67e+03 1e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.79 21.3 -5.81 0.197 0 0 0 Tank initStep + 1 2.77 21.3 -5.81 0.189 0.00796 0.0348 0.0348 Tank msc + 2 2.74 21.4 -5.82 0.166 0.0226 0.0971 0.132 Tank eIoni + 3 2.71 21.4 -5.85 0.143 0.0229 0.082 0.214 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 103, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.73 21.4 -5.84 2.53e-06 0 0 0 Tank initStep + 1 527 5e+03 2.34e+03 2.53e-06 0 5.53e+03 5.53e+03 World Transportation + 2 527 5e+03 2.34e+03 2.53e-06 0 0 5.53e+03 Tank Transportation + 3 512 3.66e+03 5e+03 2.53e-06 0 2.98e+03 8.51e+03 World Transportation + 4 512 3.66e+03 5e+03 2.53e-06 0 0 8.51e+03 Tank Transportation + 5 4.19e+03 -4.03e+03 -874 2.53e-06 2.53e-06 1.03e+04 1.89e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 102, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.72 21.4 -5.84 2.44e-06 0 0 0 Tank initStep + 1 2.62e+03 158 -5e+03 2.44e-06 0 5.64e+03 5.64e+03 World Transportation + 2 9.73e+03 2.48e+03 -1e+04 2.44e-06 0 9e+03 1.46e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 2.71 21.4 -5.85 0.143 0 0 0.214 Tank initStep + 4 2.7 21.4 -5.84 0.138 0.00589 0.0208 0.235 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 104, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.7 21.4 -5.85 3.53e-06 0 0 0 Tank initStep + 1 5e+03 2.72e+03 1.01e+03 3.53e-06 0 5.77e+03 5.77e+03 World Transportation + 2 9.54e+03 1e+04 4.33e+03 3.53e-06 0 9.2e+03 1.5e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 2.7 21.4 -5.84 0.138 0 0 0.235 Tank initStep + 5 2.69 21.4 -5.83 0.133 0.00499 0.0194 0.254 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 105, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.69 21.4 -5.84 3.69e-06 0 0 0 Tank initStep + 1 -3.06e+03 5e+03 -251 3.69e-06 0 5.85e+03 5.85e+03 World Transportation + 2 -3.06e+03 5e+03 -251 3.69e-06 0 0 5.85e+03 Tank Transportation + 3 -3.3e+03 -692 140 3.69e-06 3.69e-06 5.71e+03 1.16e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 2.69 21.4 -5.83 0.133 0 0 0.254 Tank initStep + 6 2.68 21.4 -5.82 0.127 0.00527 0.0182 0.272 Tank msc + 7 2.68 21.4 -5.78 0.108 0.0195 0.0582 0.33 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 108, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.68 21.4 -5.81 2.46e-06 0 0 0 Tank initStep + 1 -91.9 -5e+03 -3.16e+03 2.46e-06 0 5.93e+03 5.93e+03 World Transportation + 2 -91.9 -5e+03 -3.16e+03 2.46e-06 0 0 5.93e+03 Tank Transportation + 3 -216 -3.47e+03 -5e+03 2.46e-06 0 2.39e+03 8.33e+03 World Transportation + 4 787 1e+04 -6.83e+03 2.46e-06 0 1.36e+04 2.2e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 107, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.68 21.4 -5.78 2.53e-06 0 0 0 Tank initStep + 1 5e+03 1.69e+03 -342 2.53e-06 0 5.28e+03 5.28e+03 World Transportation + 2 5e+03 1.69e+03 -342 2.53e-06 0 0 5.28e+03 Tank Transportation + 3 2.34e+03 2.26e+03 -5e+03 2.53e-06 0 5.39e+03 1.07e+04 World Transportation + 4 -6.05e+03 5.31e+03 -1e+04 2.53e-06 0 1.02e+04 2.09e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 106, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.68 21.4 -5.81 3.04e-06 0 0 0 Tank initStep + 1 -5e+03 -2.97e+03 3.29e+03 3.04e-06 0 6.7e+03 6.7e+03 World Transportation + 2 -5e+03 -2.97e+03 3.29e+03 3.04e-06 0 0 6.7e+03 Tank Transportation + 3 -4.35e+03 -2.65e+03 5e+03 3.04e-06 0 1.86e+03 8.55e+03 World Transportation + 4 -4.35e+03 -2.65e+03 5e+03 3.04e-06 0 0 8.55e+03 Tank Transportation + 5 -3.72e+03 -1.57e+03 4.11e+03 3.04e-06 3.04e-06 1.53e+03 1.01e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 2.68 21.4 -5.78 0.108 0 0 0.33 Tank initStep + 8 2.68 21.4 -5.77 0.104 0.00355 0.0129 0.343 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 109, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.68 21.4 -5.78 3.61e-06 0 0 0 Tank initStep + 1 -4.15e+03 5e+03 1.51e+03 3.61e-06 0 6.66e+03 6.66e+03 World Transportation + 2 -4.15e+03 5e+03 1.51e+03 3.61e-06 0 0 6.66e+03 Tank Transportation + 3 -5e+03 4.1e+03 2.08e+03 3.61e-06 0 1.36e+03 8.02e+03 World Transportation + 4 -1e+04 -8.19e+03 1.95e+03 3.61e-06 0 1.33e+04 2.13e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 2.68 21.4 -5.77 0.104 0 0 0.343 Tank initStep + 9 2.67 21.4 -5.76 0.0995 0.00471 0.0122 0.356 Tank msc + 10 2.65 21.4 -5.74 0.0846 0.0149 0.0436 0.399 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 111, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.66 21.4 -5.75 3.23e-06 0 0 0 Tank initStep + 1 -1.34e+03 5e+03 1.09e+03 3.23e-06 0 5.27e+03 5.27e+03 World Transportation + 2 -2.73e+03 1e+04 3.07e+03 3.23e-06 0 5.55e+03 1.08e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 110, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.65 21.4 -5.74 2.47e-06 0 0 0 Tank initStep + 1 -2.45e+03 -3.81e+03 -4.45e+03 2.47e-06 2.47e-06 6.37e+03 6.37e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 10 2.65 21.4 -5.74 0.0846 0 0 0.399 Tank initStep + 11 2.64 21.4 -5.73 0.0808 0.00374 0.00853 0.408 Tank msc + 12 2.61 21.4 -5.73 0.0626 0.0182 0.0349 0.443 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 112, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.63 21.4 -5.73 3.75e-06 0 0 0 Tank initStep + 1 169 -215 437 3.75e-06 3.75e-06 529 529 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 12 2.61 21.4 -5.73 0.0626 0 0 0.443 Tank initStep + 13 2.61 21.4 -5.73 0.0603 0.00231 0.00504 0.448 Tank msc + 14 2.61 21.4 -5.73 0.0464 0.0139 0.0264 0.474 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 113, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.61 21.4 -5.73 3.12e-06 0 0 0 Tank initStep + 1 -5e+03 4.13e+03 -793 3.12e-06 0 6.52e+03 6.52e+03 World Transportation + 2 -5e+03 4.13e+03 -793 3.12e-06 0 0 6.52e+03 Tank Transportation + 3 5e+03 -485 -2.26e+03 3.12e-06 0 1.11e+04 1.76e+04 World Transportation + 4 5e+03 -485 -2.26e+03 3.12e-06 0 0 1.76e+04 Tank Transportation + 5 3.02e+03 -303 -5e+03 3.12e-06 0 3.39e+03 2.1e+04 World Transportation + 6 3.02e+03 -303 -5e+03 3.12e-06 0 0 2.1e+04 Tank Transportation + 7 -712 444 632 3.12e-06 3.12e-06 6.8e+03 2.78e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 14 2.61 21.4 -5.73 0.0464 0 0 0.474 Tank initStep + 15 2.6 21.4 -5.74 0.0441 0.00235 0.00299 0.477 Tank msc + 16 2.6 21.4 -5.75 0.0251 0.019 0.0205 0.498 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 114, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.6 21.4 -5.74 3.53e-06 0 0 0 Tank initStep + 1 1.5e+03 5e+03 -4.23e+03 3.53e-06 0 6.7e+03 6.7e+03 World Transportation + 2 3.28e+03 9.63e+03 -1e+04 3.53e-06 0 7.61e+03 1.43e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 16 2.6 21.4 -5.75 0.0251 0 0 0.498 Tank initStep + 17 2.6 21.4 -5.75 0.0246 0.000438 0.001 0.499 Tank msc + 18 2.6 21.4 -5.75 0.00143 0.0232 0.0118 0.51 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 115, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.6 21.4 -5.75 3.49e-06 0 0 0 Tank initStep + 1 -403 -1.64e+03 -5e+03 3.49e-06 0 5.28e+03 5.28e+03 World Transportation + 2 -188 -3.41e+03 -1e+04 3.49e-06 0 5.31e+03 1.06e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 38 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 18 2.6 21.4 -5.75 0.00143 0 0 0.51 Tank initStep + 19 2.6 21.4 -5.75 0.0013 0.000129 7.32e-06 0.51 Tank msc + 20 2.6 21.4 -5.75 0 0.0013 7.9e-05 0.51 Tank eIoni + 21 2.6 21.4 -5.75 0 0 0 0.51 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 37, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 1.13 0.322 0.727 3.91e-06 0 0 0 Tank initStep + 1 346 2.81e+03 -5e+03 3.91e-06 0 5.75e+03 5.75e+03 World Transportation + 2 346 2.81e+03 -5e+03 3.91e-06 0 0 5.75e+03 Tank Transportation + 3 54.1 5e+03 -3.07e+03 3.91e-06 0 2.94e+03 8.68e+03 World Transportation + 4 54.1 5e+03 -3.07e+03 3.91e-06 0 0 8.68e+03 Tank Transportation + 5 -148 3.13e+03 -2.79e+03 3.91e-06 3.91e-06 1.9e+03 1.06e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 36, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 1.13 0.321 0.728 2.97e-06 0 0 0 Tank initStep + 1 5e+03 1.81e+03 -2.59e+03 2.97e-06 0 5.91e+03 5.91e+03 World Transportation + 2 9.36e+03 7.56e+03 -1e+04 2.97e-06 0 1.03e+04 1.63e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 35, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 1.14 0.327 0.722 4.05e-06 0 0 0 Tank initStep + 1 -1.09e+03 5e+03 -4.04e+03 4.05e-06 0 6.52e+03 6.52e+03 World Transportation + 2 -1.09e+03 5e+03 -4.04e+03 4.05e-06 0 0 6.52e+03 Tank Transportation + 3 -1.44e+03 4.81e+03 -4.49e+03 4.05e-06 4.05e-06 605 7.12e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 0.5 0 0 0 Tank initStep + 1 0.139 0.00135 0.00259 0.481 0.0195 0.14 0.14 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0693 0.000673 0.00129 2.24e-06 0 0 0 Tank initStep + 1 3.5e+03 -84.2 -1.95e+03 2.24e-06 2.24e-06 4.01e+03 4.01e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.00426 4.13e-05 7.93e-05 3.96e-06 0 0 0 Tank initStep + 1 1.69e+03 273 -948 3.96e-06 3.96e-06 1.95e+03 1.95e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0224 0.000217 0.000417 3.86e-06 0 0 0 Tank initStep + 1 5e+03 3.09e+03 220 3.86e-06 0 5.88e+03 5.88e+03 World Transportation + 2 8.12e+03 1e+04 3.02e+03 3.86e-06 0 8.08e+03 1.4e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.028 0.000272 0.000522 3.45e-06 0 0 0 Tank initStep + 1 5e+03 383 -2.87e+03 3.45e-06 0 5.78e+03 5.78e+03 World Transportation + 2 5e+03 383 -2.87e+03 3.45e-06 0 0 5.78e+03 Tank Transportation + 3 3.44e+03 5e+03 -4.68e+03 3.45e-06 0 5.2e+03 1.1e+04 World Transportation + 4 314 8.73e+03 -1e+04 3.45e-06 0 7.2e+03 1.82e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 0.139 0.00135 0.00259 0.481 0 0 0.14 Tank initStep + 2 0.251 0.00717 -0.0547 0.457 0.023 0.129 0.269 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 10, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.147 0.00177 -0.0015 3.26e-06 0 0 0 Tank initStep + 1 1.54e+03 -931 -975 3.26e-06 3.26e-06 2.04e+03 2.04e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 9, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.171 0.00299 -0.0135 2.89e-06 0 0 0 Tank initStep + 1 5e+03 -1.56e+03 -383 2.89e-06 0 5.25e+03 5.25e+03 World Transportation + 2 1e+04 -3.98e+03 -632 2.89e-06 0 5.56e+03 1.08e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 8, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.163 0.00261 -0.00982 3.6e-06 0 0 0 Tank initStep + 1 5e+03 394 280 3.6e-06 0 5.02e+03 5.02e+03 World Transportation + 2 1e+04 1.07e+03 752 3.6e-06 0 5.07e+03 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.24 0.00662 -0.0492 3.36e-06 0 0 0 Tank initStep + 1 477 348 -499 3.36e-06 0 773 773 Tank OpRayleigh + 2 -2.97e+03 -1.13e+03 5e+03 3.36e-06 0 6.66e+03 7.43e+03 World Transportation + 3 -1e+04 -4.8e+03 8.07e+03 3.36e-06 0 8.51e+03 1.59e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.227 0.00595 -0.0427 2.36e-06 0 0 0 Tank initStep + 1 819 397 -1.13e+03 2.36e-06 2.36e-06 1.45e+03 1.45e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 0.251 0.00717 -0.0547 0.457 0 0 0.269 Tank initStep + 3 0.355 0.0392 -0.0947 0.427 0.0309 0.117 0.386 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 17, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.303 0.0234 -0.0749 2.6e-06 0 0 0 Tank initStep + 1 1.67e+03 1.54e+03 405 2.6e-06 2.6e-06 2.3e+03 2.3e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 16, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.3 0.0224 -0.0736 4.09e-06 0 0 0 Tank initStep + 1 4.14e+03 1.05e+03 -5e+03 4.09e-06 0 6.58e+03 6.58e+03 World Transportation + 2 4.14e+03 1.05e+03 -5e+03 4.09e-06 0 0 6.58e+03 Tank Transportation + 3 5e+03 1.09e+03 -4.49e+03 4.09e-06 0 998 7.57e+03 World Transportation + 4 1e+04 1.13e+03 1.21e+03 4.09e-06 0 7.59e+03 1.52e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 15, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.336 0.0334 -0.0874 2.25e-06 0 0 0 Tank initStep + 1 1.56e+03 -357 -517 2.25e-06 2.25e-06 1.69e+03 1.69e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 14, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.265 0.0117 -0.0603 2.97e-06 0 0 0 Tank initStep + 1 5e+03 -685 -4.2e+03 2.97e-06 0 6.56e+03 6.56e+03 World Transportation + 2 9.37e+03 -2.37e+03 -1e+04 2.97e-06 0 7.46e+03 1.4e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 13, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.302 0.0229 -0.0743 2.29e-06 0 0 0 Tank initStep + 1 2.11e+03 581 315 2.29e-06 2.29e-06 2.21e+03 2.21e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 12, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.256 0.00863 -0.0565 3.71e-06 0 0 0 Tank initStep + 1 2.16e+03 1.26e+03 269 3.71e-06 3.71e-06 2.52e+03 2.52e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 11, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.273 0.0141 -0.0634 2.69e-06 0 0 0 Tank initStep + 1 5e+03 -1.22e+03 -2.01e+03 2.69e-06 0 5.53e+03 5.53e+03 World Transportation + 2 5e+03 -1.22e+03 -2.01e+03 2.69e-06 0 0 5.53e+03 Tank Transportation + 3 -3.67e+03 -3.89e+03 -5e+03 2.69e-06 0 9.55e+03 1.51e+04 World Transportation + 4 -3.67e+03 -3.89e+03 -5e+03 2.69e-06 0 0 1.51e+04 Tank Transportation + 5 -5e+03 -4.46e+03 -4.07e+03 2.69e-06 0 1.73e+03 1.68e+04 World Transportation + 6 -5e+03 -4.46e+03 -4.07e+03 2.69e-06 0 0 1.68e+04 Tank Transportation + 7 3.33e+03 -4.14e+03 5e+03 2.69e-06 0 1.23e+04 2.91e+04 World Transportation + 8 3.33e+03 -4.14e+03 5e+03 2.69e-06 0 0 2.91e+04 Tank Transportation + 9 5e+03 -3.63e+03 1.83e+03 2.69e-06 0 3.61e+03 3.27e+04 World Transportation + 10 5.24e+03 744 -1e+04 2.69e-06 0 1.26e+04 4.53e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 0.355 0.0392 -0.0947 0.427 0 0 0.386 Tank initStep + 4 0.439 0.0765 -0.136 0.335 0.0918 0.101 0.487 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 24, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.4 0.059 -0.117 3.96e-06 0 0 0 Tank initStep + 1 -126 -4.46e+03 3.82e+03 3.96e-06 0 5.87e+03 5.87e+03 Tank OpRayleigh + 2 140 -5e+03 4.17e+03 3.96e-06 0 698 6.57e+03 World Transportation + 3 140 -5e+03 4.17e+03 3.96e-06 0 0 6.57e+03 Tank Transportation + 4 720 -4.47e+03 4.76e+03 3.96e-06 3.96e-06 984 7.55e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 23, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.431 0.073 -0.132 3.07e-06 0 0 0 Tank initStep + 1 3.95e+03 -5e+03 -2.57e+03 3.07e-06 0 6.87e+03 6.87e+03 World Transportation + 2 3.95e+03 -5e+03 -2.57e+03 3.07e-06 0 0 6.87e+03 Tank Transportation + 3 4.93e+03 -3.92e+03 -5e+03 3.07e-06 0 2.83e+03 9.7e+03 World Transportation + 4 4.93e+03 -3.92e+03 -5e+03 3.07e-06 0 0 9.7e+03 Tank Transportation + 5 4.05e+03 -5e+03 -4.93e+03 3.07e-06 0 1.39e+03 1.11e+04 World Transportation + 6 4.05e+03 -5e+03 -4.93e+03 3.07e-06 0 0 1.11e+04 Tank Transportation + 7 558 5e+03 151 3.07e-06 0 1.17e+04 2.28e+04 World Transportation + 8 558 5e+03 151 3.07e-06 0 0 2.28e+04 Tank Transportation + 9 1.04e+03 1.07e+03 5e+03 3.07e-06 0 6.26e+03 2.91e+04 World Transportation + 10 1.04e+03 1.07e+03 5e+03 3.07e-06 0 0 2.91e+04 Tank Transportation + 11 548 -5e+03 3.17e+03 3.07e-06 0 6.36e+03 3.55e+04 World Transportation + 12 -3.39e+03 -1e+04 -6.37e+03 3.07e-06 0 1.15e+04 4.69e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 22, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.405 0.0614 -0.119 2.87e-06 0 0 0 Tank initStep + 1 5e+03 2.51e+03 -4.71e+03 2.87e-06 0 7.31e+03 7.31e+03 World Transportation + 2 5e+03 2.51e+03 -4.71e+03 2.87e-06 0 0 7.31e+03 Tank Transportation + 3 4.69e+03 2.73e+03 -5e+03 2.87e-06 0 477 7.79e+03 World Transportation + 4 4.69e+03 2.73e+03 -5e+03 2.87e-06 0 0 7.79e+03 Tank Transportation + 5 1.57e+03 5e+03 -1.09e+03 2.87e-06 0 5.5e+03 1.33e+04 World Transportation + 6 1.57e+03 5e+03 -1.09e+03 2.87e-06 0 0 1.33e+04 Tank Transportation + 7 -5e+03 2.38e+03 4.89e+03 2.87e-06 0 9.26e+03 2.25e+04 World Transportation + 8 -5e+03 2.38e+03 4.89e+03 2.87e-06 0 0 2.25e+04 Tank Transportation + 9 -4.88e+03 2.38e+03 5e+03 2.87e-06 0 163 2.27e+04 World Transportation + 10 -4.88e+03 2.38e+03 5e+03 2.87e-06 0 0 2.27e+04 Tank Transportation + 11 3.15e+03 5e+03 326 2.87e-06 0 9.66e+03 3.24e+04 World Transportation + 12 3.15e+03 5e+03 326 2.87e-06 0 0 3.24e+04 Tank Transportation + 13 4.3e+03 3.8e+03 -705 2.87e-06 2.87e-06 1.96e+03 3.43e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 21, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.39 0.0549 -0.112 3.33e-06 0 0 0 Tank initStep + 1 5e+03 -734 -606 3.33e-06 0 5.09e+03 5.09e+03 World Transportation + 2 1e+04 -2.2e+03 -896 3.33e-06 0 5.22e+03 1.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 20, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.417 0.0665 -0.125 2.12e-06 0 0 0 Tank initStep + 1 -1.43e+03 991 -5e+03 2.12e-06 0 5.29e+03 5.29e+03 World Transportation + 2 -8.5e+03 2.32e+03 -1e+04 2.12e-06 0 8.76e+03 1.41e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 19, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.428 0.0716 -0.131 3.31e-06 0 0 0 Tank initStep + 1 -4.29e+03 -2.66e+03 -5e+03 3.31e-06 0 7.1e+03 7.1e+03 World Transportation + 2 -4.29e+03 -2.66e+03 -5e+03 3.31e-06 0 0 7.1e+03 Tank Transportation + 3 -5e+03 -2.47e+03 -4.88e+03 3.31e-06 0 746 7.85e+03 World Transportation + 4 -1e+04 14.9 -5.84e+03 3.31e-06 0 5.67e+03 1.35e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 18, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.375 0.0482 -0.105 2.77e-06 0 0 0 Tank initStep + 1 -5e+03 -2.08e+03 696 2.77e-06 0 5.46e+03 5.46e+03 World Transportation + 2 -5e+03 -2.08e+03 696 2.77e-06 0 0 5.46e+03 Tank Transportation + 3 -2.03e+03 -5e+03 2.08e+03 2.77e-06 0 4.39e+03 9.85e+03 World Transportation + 4 -2.03e+03 -5e+03 2.08e+03 2.77e-06 0 0 9.85e+03 Tank Transportation + 5 -1.63e+03 -2.51e+03 5e+03 2.77e-06 0 3.86e+03 1.37e+04 World Transportation + 6 -1.63e+03 -2.51e+03 5e+03 2.77e-06 0 0 1.37e+04 Tank Transportation + 7 4.05e+03 4.48e+03 -69.5 2.77e-06 2.77e-06 1.03e+04 2.4e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 0.439 0.0765 -0.136 0.335 0 0 0.487 Tank initStep + 5 0.491 0.0796 -0.17 0.324 0.0109 0.0625 0.55 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 26, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.455 0.0775 -0.147 4.06e-06 0 0 0 Tank initStep + 1 -3.68e+03 -5e+03 -171 4.06e-06 0 6.21e+03 6.21e+03 World Transportation + 2 -3.68e+03 -5e+03 -171 4.06e-06 0 0 6.21e+03 Tank Transportation + 3 -5e+03 -4.38e+03 -742 4.06e-06 0 1.57e+03 7.78e+03 World Transportation + 4 -5e+03 -4.38e+03 -742 4.06e-06 0 0 7.78e+03 Tank Transportation + 5 -789 1.57e+03 4.2e+03 4.06e-06 4.06e-06 8.8e+03 1.66e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 25, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.49 0.0796 -0.17 2.16e-06 0 0 0 Tank initStep + 1 1.78e+03 -25.7 -417 2.16e-06 2.16e-06 1.83e+03 1.83e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 0.491 0.0796 -0.17 0.324 0 0 0.55 Tank initStep + 6 0.542 0.0787 -0.199 0.314 0.0098 0.0586 0.608 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 27, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.527 0.0789 -0.19 3.68e-06 0 0 0 Tank initStep + 1 2.22e+03 -5e+03 808 3.68e-06 0 5.53e+03 5.53e+03 World Transportation + 2 8.2e+03 -1e+04 1.7e+03 3.68e-06 0 7.84e+03 1.34e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 0.542 0.0787 -0.199 0.314 0 0 0.608 Tank initStep + 7 0.565 0.11 -0.224 0.304 0.0101 0.0551 0.663 Tank Cerenkov + 8 0.579 0.152 -0.246 0.298 0.00647 0.0516 0.715 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 28, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.578 0.15 -0.245 2.53e-06 0 0 0 Tank initStep + 1 219 1.13e+03 -5e+03 2.53e-06 0 5.13e+03 5.13e+03 World Transportation + 2 677 1.25e+03 -1e+04 2.53e-06 0 5.02e+03 1.02e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 0.579 0.152 -0.246 0.298 0 0 0.715 Tank initStep + 9 0.597 0.194 -0.265 0.288 0.00955 0.0495 0.764 Tank Cerenkov + 10 0.621 0.231 -0.272 0.251 0.0374 0.0464 0.811 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 29, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.616 0.224 -0.271 3.64e-06 0 0 0 Tank initStep + 1 3.32e+03 5e+03 -2.83e+03 3.64e-06 0 6.64e+03 6.64e+03 World Transportation + 2 3.32e+03 5e+03 -2.83e+03 3.64e-06 0 0 6.64e+03 Tank Transportation + 3 5e+03 4e+03 -3.5e+03 3.64e-06 0 2.07e+03 8.7e+03 World Transportation + 4 5e+03 4e+03 -3.5e+03 3.64e-06 0 0 8.7e+03 Tank Transportation + 5 -5e+03 -2.02e+03 -4.27e+03 3.64e-06 0 1.17e+04 2.04e+04 World Transportation + 6 -1e+04 -8.87e+03 -9.69e+03 3.64e-06 0 1.01e+04 3.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 10 0.621 0.231 -0.272 0.251 0 0 0.811 Tank initStep + 11 0.641 0.255 -0.27 0.244 0.00674 0.0312 0.842 Tank Cerenkov + 12 0.645 0.259 -0.27 0.243 0.00105 0.0052 0.847 Tank Cerenkov + 13 0.645 0.26 -0.27 0.243 0.000103 0.00119 0.848 Tank Cerenkov + 14 0.646 0.26 -0.27 0.243 0 0.000796 0.849 Tank Cerenkov + 15 0.646 0.261 -0.27 0.242 0.000343 0.000796 0.85 Tank Cerenkov + 16 0.722 0.351 -0.271 0.203 0.0397 0.133 0.983 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 30, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.69 0.313 -0.271 3.76e-06 0 0 0 Tank initStep + 1 -2.61e+03 5e+03 -390 3.76e-06 0 5.65e+03 5.65e+03 World Transportation + 2 -8.06e+03 1e+04 1.93e+03 3.76e-06 0 7.76e+03 1.34e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 16 0.722 0.351 -0.271 0.203 0 0 0.983 Tank initStep + 17 0.729 0.385 -0.273 0.192 0.0109 0.0351 1.02 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 31, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.725 0.366 -0.272 3.44e-06 0 0 0 Tank initStep + 1 -5e+03 1.02e+03 2.31e+03 3.44e-06 0 5.6e+03 5.6e+03 World Transportation + 2 -1e+04 2.66e+03 7.83e+03 3.44e-06 0 7.63e+03 1.32e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 17 0.729 0.385 -0.273 0.192 0 0 1.02 Tank initStep + 18 0.732 0.417 -0.279 0.184 0.00786 0.0321 1.05 Tank msc + 19 0.741 0.496 -0.284 0.16 0.0242 0.0907 1.14 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 32, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.74 0.484 -0.283 3.14e-06 0 0 0 Tank initStep + 1 -5e+03 -1.82e+03 150 3.14e-06 0 5.32e+03 5.32e+03 World Transportation + 2 -5e+03 -1.82e+03 150 3.14e-06 0 0 5.32e+03 Tank Transportation + 3 -2.35e+03 -5e+03 -423 3.14e-06 0 4.18e+03 9.5e+03 World Transportation + 4 -2.35e+03 -5e+03 -423 3.14e-06 0 0 9.5e+03 Tank Transportation + 5 1.45e+03 2.7e+03 -5e+03 3.14e-06 0 9.73e+03 1.92e+04 World Transportation + 6 1.45e+03 2.7e+03 -5e+03 3.14e-06 0 0 1.92e+04 Tank Transportation + 7 2.42e+03 5e+03 -784 3.14e-06 0 4.9e+03 2.41e+04 World Transportation + 8 2.42e+03 5e+03 -784 3.14e-06 0 0 2.41e+04 Tank Transportation + 9 5e+03 -787 2.85e+03 3.14e-06 0 7.31e+03 3.14e+04 World Transportation + 10 5e+03 -787 2.85e+03 3.14e-06 0 0 3.14e+04 Tank Transportation + 11 2.52e+03 -3.44e+03 5e+03 3.14e-06 0 4.22e+03 3.57e+04 World Transportation + 12 2.52e+03 -3.44e+03 5e+03 3.14e-06 0 0 3.57e+04 Tank Transportation + 13 -1.85e+03 -5e+03 1.54e+03 3.14e-06 0 5.79e+03 4.14e+04 World Transportation + 14 -1.85e+03 -5e+03 1.54e+03 3.14e-06 0 0 4.14e+04 Tank Transportation + 15 -5e+03 -2.74e+03 -1.12e+03 3.14e-06 0 4.7e+03 4.61e+04 World Transportation + 16 -5e+03 -2.74e+03 -1.12e+03 3.14e-06 0 0 4.61e+04 Tank Transportation + 17 -3.01e+03 305 -2.75e+03 3.14e-06 3.14e-06 3.99e+03 5.01e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 19 0.741 0.496 -0.284 0.16 0 0 1.14 Tank initStep + 20 0.759 0.511 -0.286 0.153 0.00636 0.0237 1.16 Tank msc + 21 0.813 0.53 -0.31 0.131 0.022 0.0712 1.24 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 33, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.76 0.511 -0.287 2.21e-06 0 0 0 Tank initStep + 1 -5e+03 -3.38e+03 -3.11e+03 2.21e-06 0 6.79e+03 6.79e+03 World Transportation + 2 -5e+03 -3.38e+03 -3.11e+03 2.21e-06 0 0 6.79e+03 Tank Transportation + 3 -4.31e+03 -4.49e+03 -5e+03 2.21e-06 0 2.3e+03 9.09e+03 World Transportation + 4 -4.31e+03 -4.49e+03 -5e+03 2.21e-06 0 0 9.09e+03 Tank Transportation + 5 -4.01e+03 -5e+03 -4.39e+03 2.21e-06 0 844 9.94e+03 World Transportation + 6 -4.01e+03 -5e+03 -4.39e+03 2.21e-06 0 0 9.94e+03 Tank Transportation + 7 -1.32e+03 -375 5e+03 2.21e-06 0 1.08e+04 2.07e+04 World Transportation + 8 2.92e+03 6.59e+03 1e+04 2.21e-06 0 9.56e+03 3.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 21 0.813 0.53 -0.31 0.131 0 0 1.24 Tank initStep + 22 0.824 0.543 -0.309 0.125 0.00597 0.0171 1.25 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 36, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.82 0.538 -0.309 3.88e-06 0 0 0 Tank initStep + 1 -3.06e+03 -5e+03 1.5e+03 3.88e-06 0 6.05e+03 6.05e+03 World Transportation + 2 -1e+04 -8.48e+03 5.16e+03 3.88e-06 0 8.58e+03 1.46e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 35, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.815 0.533 -0.31 3.56e-06 0 0 0 Tank initStep + 1 -356 1.71e+03 5e+03 3.56e-06 0 5.3e+03 5.3e+03 World Transportation + 2 -2.1e+03 3.75e+03 1e+04 3.56e-06 0 5.68e+03 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 34, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.819 0.538 -0.309 4.01e-06 0 0 0 Tank initStep + 1 -2.31e+03 79.5 4.19e+03 4.01e-06 4.01e-06 4.79e+03 4.79e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 22 0.824 0.543 -0.309 0.125 0 0 1.25 Tank initStep + 23 0.831 0.555 -0.317 0.122 0.00339 0.0158 1.27 Tank msc + 24 0.845 0.589 -0.343 0.102 0.0198 0.0533 1.32 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 39, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.835 0.565 -0.324 2.38e-06 0 0 0 Tank initStep + 1 656 231 -463 2.38e-06 2.38e-06 835 835 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 38, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.845 0.588 -0.343 3.5e-06 0 0 0 Tank initStep + 1 838 -759 -1.06e+03 3.5e-06 3.5e-06 1.55e+03 1.55e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 37, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.843 0.585 -0.34 2.15e-06 0 0 0 Tank initStep + 1 1.71e+03 -926 -5e+03 2.15e-06 0 5.37e+03 5.37e+03 World Transportation + 2 5.72e+03 -2.77e+03 -1e+04 2.15e-06 0 6.67e+03 1.2e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 24 0.845 0.589 -0.343 0.102 0 0 1.32 Tank initStep + 25 0.849 0.596 -0.348 0.0979 0.00422 0.0111 1.33 Tank msc + 26 0.875 0.617 -0.337 0.0837 0.0142 0.0412 1.37 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 40, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.864 0.608 -0.342 4.05e-06 0 0 0 Tank initStep + 1 621 -1.54e+03 709 4.05e-06 4.05e-06 1.81e+03 1.81e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 26 0.875 0.617 -0.337 0.0837 0 0 1.37 Tank initStep + 27 0.882 0.614 -0.337 0.0801 0.00362 0.00788 1.38 Tank msc + 28 0.906 0.601 -0.335 0.0515 0.0286 0.0334 1.42 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 41, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.899 0.605 -0.336 3.31e-06 0 0 0 Tank initStep + 1 5e+03 -4.03e+03 -1.17e+03 3.31e-06 0 6.53e+03 6.53e+03 World Transportation + 2 5e+03 -4.03e+03 -1.17e+03 3.31e-06 0 0 6.53e+03 Tank Transportation + 3 4.4e+03 -5e+03 -1.29e+03 3.31e-06 0 1.15e+03 7.68e+03 World Transportation + 4 4.4e+03 -5e+03 -1.29e+03 3.31e-06 0 0 7.68e+03 Tank Transportation + 5 470 618 -5e+03 3.31e-06 0 7.79e+03 1.55e+04 World Transportation + 6 470 618 -5e+03 3.31e-06 0 0 1.55e+04 Tank Transportation + 7 -4.87e+03 5e+03 -545 3.31e-06 0 8.22e+03 2.37e+04 World Transportation + 8 -4.87e+03 5e+03 -545 3.31e-06 0 0 2.37e+04 Tank Transportation + 9 -5e+03 4.86e+03 -543 3.31e-06 0 189 2.39e+04 World Transportation + 10 -5e+03 4.86e+03 -543 3.31e-06 0 0 2.39e+04 Tank Transportation + 11 -4.59e+03 4.01e+03 -531 3.31e-06 3.31e-06 948 2.48e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 28 0.906 0.601 -0.335 0.0515 0 0 1.42 Tank initStep + 29 0.908 0.599 -0.336 0.0496 0.00191 0.00335 1.42 Tank msc + 30 0.918 0.587 -0.339 0.0315 0.0181 0.0218 1.44 Tank eIoni + 31 0.917 0.58 -0.343 0.012 0.0195 0.0149 1.46 Tank eIoni + 32 0.919 0.58 -0.343 0 0.012 0.00308 1.46 Tank eIoni + 33 0.919 0.58 -0.343 0 0 0 1.46 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 45, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.919 0.58 -0.343 0.511 0 0 0 Tank initStep + 1 32.1 4.14 17.1 0.416 1.36e-05 35.9 35.9 Tank compt + 2 39.1 10.3 18.2 0.368 0.000537 9.38 45.3 Tank compt + 3 86.9 158 16.4 0.348 2.92e-05 155 200 Tank compt + 4 111 191 5.45 0.164 1.36e-05 41.9 242 Tank compt + 5 112 187 5.93 0.143 0.000537 3.66 246 Tank compt + 6 121 181 -1.46 0.131 2.92e-05 13.3 259 Tank compt + 7 279 196 -2.75 0.11 1.42e-05 159 418 Tank compt + 8 285 179 -2.91 0.1 2.92e-05 18.3 437 Tank compt + 9 330 149 -61 0.0755 1.42e-05 78.8 515 Tank compt + 10 329 152 -60.4 0.0736 2.92e-05 3.09 518 Tank compt + 11 329 153 -59.8 0.0632 1.42e-05 0.986 519 Tank compt + 12 327 110 -23.8 0.0554 1.42e-05 56.2 576 Tank compt + 13 312 97.9 -36.2 0 0.000537 22.9 598 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 58, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 312 97.9 -36.2 0.0549 0 0 0 Tank initStep + 1 312 97.9 -36.2 0.0528 0.00206 0.004 0.004 Tank msc + 2 312 97.9 -36.2 0.0409 0.012 0.0236 0.0276 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 59, Parent ID = 58 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 312 97.9 -36.2 2.66e-06 0 0 0 Tank initStep + 1 -2.41e+03 5e+03 2.44e+03 2.66e-06 0 6.13e+03 6.13e+03 World Transportation + 2 -2.41e+03 5e+03 2.44e+03 2.66e-06 0 0 6.13e+03 Tank Transportation + 3 -5e+03 3.06e+03 3.86e+03 2.66e-06 0 3.53e+03 9.66e+03 World Transportation + 4 -5e+03 3.06e+03 3.86e+03 2.66e-06 0 0 9.66e+03 Tank Transportation + 5 -2.47e+03 944 5e+03 2.66e-06 0 3.49e+03 1.32e+04 World Transportation + 6 -2.47e+03 944 5e+03 2.66e-06 0 0 1.32e+04 Tank Transportation + 7 -1.7e+03 330 4.52e+03 2.66e-06 2.66e-06 1.1e+03 1.43e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 58, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 312 97.9 -36.2 0.0409 0 0 0.0276 Tank initStep + 3 312 97.9 -36.2 0.0399 0.000955 0.00238 0.03 Tank msc + 4 312 97.9 -36.2 0.0232 0.0167 0.0189 0.0489 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 61, Parent ID = 58 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 312 97.9 -36.2 2.3e-06 0 0 0 Tank initStep + 1 -3.33e+03 -5e+03 943 2.3e-06 0 6.34e+03 6.34e+03 World Transportation + 2 -1e+04 -7.42e+03 2.27e+03 2.3e-06 0 7.22e+03 1.36e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 60, Parent ID = 58 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 312 97.9 -36.2 3.54e-06 0 0 0 Tank initStep + 1 1.9e+03 -4.86e+03 2.97e+03 3.54e-06 3.54e-06 6.01e+03 6.01e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 58, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 312 97.9 -36.2 0.0232 0 0 0.0489 Tank initStep + 5 312 97.9 -36.2 0.0219 0.00127 0.000873 0.0498 Tank msc + 6 312 97.9 -36.2 0 0.0219 0.00988 0.0597 Tank eIoni + 7 312 97.9 -36.2 0 0 0 0.0597 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 57, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 327 110 -23.8 0.00776 0 0 0 Tank initStep + 1 327 110 -23.8 0.00765 0.000108 0.000127 0.000127 Tank msc + 2 327 110 -23.8 0 0.00765 0.00155 0.00168 Tank eIoni + 3 327 110 -23.8 0 0 0 0.00168 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 56, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 329 153 -59.8 0.0104 0 0 0 Tank initStep + 1 329 153 -59.8 0.0101 0.000303 0.000212 0.000212 Tank msc + 2 329 153 -59.8 0 0.0101 0.00251 0.00272 Tank eIoni + 3 329 153 -59.8 0 0 0 0.00272 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 55, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 329 152 -60.4 0.00193 0 0 0 Tank initStep + 1 329 152 -60.4 0.00176 0.000175 1.19e-05 1.19e-05 Tank msc + 2 329 152 -60.4 0 0.00176 0.000127 0.000139 Tank eIoni + 3 329 152 -60.4 0 0 0 0.000139 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 54, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 330 149 -61 0.0245 0 0 0 Tank initStep + 1 330 149 -61 0.0236 0.000918 0.000966 0.000966 Tank msc + 2 330 149 -61 0 0.0236 0.0112 0.0121 Tank eIoni + 3 330 149 -61 0 0 0 0.0121 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 63, Parent ID = 54 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 330 149 -61 3.4e-06 0 0 0 Tank initStep + 1 -382 858 -296 3.4e-06 3.4e-06 1.03e+03 1.03e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 62, Parent ID = 54 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 330 149 -61 3.04e-06 0 0 0 Tank initStep + 1 5e+03 -1.15e+03 -356 3.04e-06 0 4.86e+03 4.86e+03 World Transportation + 2 1e+04 -4.6e+03 -1.95e+03 3.04e-06 0 6.28e+03 1.11e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 53, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 285 179 -2.91 0.00961 0 0 0 Tank initStep + 1 285 179 -2.91 0.00946 0.000158 0.000185 0.000185 Tank msc + 2 285 179 -2.91 0 0.00946 0.00225 0.00243 Tank eIoni + 3 285 179 -2.91 0 0 0 0.00243 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 52, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 279 196 -2.75 0.0209 0 0 0 Tank initStep + 1 279 196 -2.75 0.0201 0.000804 0.000727 0.000727 Tank msc + 2 279 196 -2.75 0 0.0201 0.00848 0.00921 Tank eIoni + 3 279 196 -2.75 0 0 0 0.00921 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 121 181 -1.46 0.0121 0 0 0 Tank initStep + 1 121 181 -1.46 0.0119 0.000264 0.000278 0.000278 Tank msc + 2 121 181 -1.46 0 0.0119 0.00335 0.00363 Tank eIoni + 3 121 181 -1.46 0 0 0 0.00363 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 64, Parent ID = 51 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 121 181 -1.46 2.24e-06 0 0 0 Tank initStep + 1 881 -1.71e+03 -4.28e+03 2.24e-06 2.24e-06 4.74e+03 4.74e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 50, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 112 187 5.93 0.0207 0 0 0 Tank initStep + 1 112 187 5.93 0.0189 0.00181 0.000714 0.000714 Tank msc + 2 112 187 5.93 0 0.0189 0.0076 0.00831 Tank eIoni + 3 112 187 5.93 0 0 0 0.00831 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 65, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 112 187 5.93 3.64e-06 0 0 0 Tank initStep + 1 1.15e+03 -382 5e+03 3.64e-06 0 5.13e+03 5.13e+03 World Transportation + 2 4.05e+03 -1.85e+03 1e+04 3.64e-06 0 5.96e+03 1.11e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 111 191 5.45 0.184 0 0 0 Tank initStep + 1 111 191 5.45 0.176 0.0074 0.0311 0.0311 Tank msc + 2 111 191 5.45 0.155 0.0215 0.0886 0.12 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 67, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 111 191 5.45 2.26e-06 0 0 0 Tank initStep + 1 5e+03 3.81e+03 4.48e+03 2.26e-06 0 7.55e+03 7.55e+03 World Transportation + 2 5e+03 3.81e+03 4.48e+03 2.26e-06 0 0 7.55e+03 Tank Transportation + 3 4.33e+03 4.31e+03 5e+03 2.26e-06 0 986 8.54e+03 World Transportation + 4 4.33e+03 4.31e+03 5e+03 2.26e-06 0 0 8.54e+03 Tank Transportation + 5 4.04e+03 4.61e+03 4.35e+03 2.26e-06 2.26e-06 770 9.31e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 66, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 111 191 5.45 3.65e-06 0 0 0 Tank initStep + 1 -5e+03 631 -3.01e+03 3.65e-06 0 5.95e+03 5.95e+03 World Transportation + 2 -1e+04 2.96e+03 -8.57e+03 3.65e-06 0 7.83e+03 1.38e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 111 191 5.45 0.155 0 0 0.12 Tank initStep + 3 111 191 5.45 0.148 0.00703 0.0236 0.143 Tank msc + 4 111 191 5.45 0.118 0.03 0.0703 0.214 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 68, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 111 191 5.45 3.2e-06 0 0 0 Tank initStep + 1 -902 -66.7 386 3.2e-06 3.2e-06 1.11e+03 1.11e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 111 191 5.45 0.118 0 0 0.214 Tank initStep + 5 111 191 5.44 0.115 0.00298 0.015 0.229 Tank msc + 6 111 191 5.42 0.101 0.0143 0.0515 0.28 Tank eIoni + 7 111 191 5.4 0.0853 0.0153 0.0441 0.324 Tank eIoni + 8 111 191 5.37 0.0619 0.0234 0.0369 0.361 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 69, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 111 191 5.39 2.45e-06 0 0 0 Tank initStep + 1 1.56e+03 128 2.6e+03 2.45e-06 2.45e-06 2.97e+03 2.97e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 111 191 5.37 0.0619 0 0 0.361 Tank initStep + 9 111 191 5.37 0.0595 0.00238 0.00494 0.366 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 70, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 111 191 5.37 3.96e-06 0 0 0 Tank initStep + 1 673 1.57e+03 1.69e+03 3.96e-06 3.96e-06 2.25e+03 2.25e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 111 191 5.37 0.0595 0 0 0.366 Tank initStep + 10 111 191 5.36 0.056 0.0035 0.00461 0.371 Tank msc + 11 111 191 5.36 0.0418 0.0142 0.0248 0.395 Tank eIoni + 12 111 191 5.36 0.0252 0.0165 0.0196 0.415 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 71, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 111 191 5.36 3.91e-06 0 0 0 Tank initStep + 1 567 -3.99e+03 2.6e+03 3.91e-06 3.91e-06 4.94e+03 4.94e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 12 111 191 5.36 0.0252 0 0 0.415 Tank initStep + 13 111 191 5.36 0.0246 0.000688 0.00102 0.416 Tank msc + 14 111 191 5.36 0.0125 0.012 0.0118 0.428 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 75, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 111 191 5.36 3.52e-06 0 0 0 Tank initStep + 1 4.84e+03 -5e+03 -2.31e+03 3.52e-06 0 7.39e+03 7.39e+03 World Transportation + 2 4.84e+03 -5e+03 -2.31e+03 3.52e-06 0 0 7.39e+03 Tank Transportation + 3 5e+03 -4.66e+03 -2.35e+03 3.52e-06 0 381 7.77e+03 World Transportation + 4 5e+03 -4.66e+03 -2.35e+03 3.52e-06 0 0 7.77e+03 Tank Transportation + 5 1.44e+03 4.87e+03 -5e+03 3.52e-06 0 1.05e+04 1.83e+04 World Transportation + 6 1.44e+03 4.87e+03 -5e+03 3.52e-06 0 0 1.83e+04 Tank Transportation + 7 1.22e+03 5e+03 -4.76e+03 3.52e-06 0 348 1.86e+04 World Transportation + 8 1.22e+03 5e+03 -4.76e+03 3.52e-06 0 0 1.86e+04 Tank Transportation + 9 669 -1.4e+03 5e+03 3.52e-06 0 1.17e+04 3.03e+04 World Transportation + 10 1.29e+03 -1e+04 7.82e+03 3.52e-06 0 9.08e+03 3.94e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 74, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 111 191 5.36 2.15e-06 0 0 0 Tank initStep + 1 -794 413 -771 2.15e-06 2.15e-06 1.21e+03 1.21e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 73, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 111 191 5.36 3.73e-06 0 0 0 Tank initStep + 1 4.71e+03 -2.26e+03 -5e+03 3.73e-06 0 7.23e+03 7.23e+03 World Transportation + 2 4.71e+03 -2.26e+03 -5e+03 3.73e-06 0 0 7.23e+03 Tank Transportation + 3 4.45e+03 -3.47e+03 -2.77e+03 3.73e-06 3.73e-06 2.55e+03 9.78e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 72, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 111 191 5.36 3.81e-06 0 0 0 Tank initStep + 1 2.76e+03 -3.35e+03 -2.65e+03 3.81e-06 3.81e-06 5.16e+03 5.16e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 14 111 191 5.36 0.0125 0 0 0.428 Tank initStep + 15 111 191 5.36 0.0123 0.000233 0.000295 0.428 Tank msc + 16 111 191 5.36 0 0.0123 0.00357 0.432 Tank eIoni + 17 111 191 5.36 0 0 0 0.432 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 86.9 158 16.4 0.0205 0 0 0 Tank initStep + 1 86.9 158 16.4 0.019 0.00154 0.000702 0.000702 Tank msc + 2 86.9 158 16.4 0 0.019 0.00765 0.00835 Tank eIoni + 3 86.9 158 16.4 0 0 0 0.00835 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 76, Parent ID = 48 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 86.9 158 16.4 2.79e-06 0 0 0 Tank initStep + 1 711 3.8e+03 5e+03 2.79e-06 0 6.21e+03 6.21e+03 World Transportation + 2 -537 7.85e+03 1e+04 2.79e-06 0 6.55e+03 1.28e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 47, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 39.1 10.3 18.2 0.0471 0 0 0 Tank initStep + 1 39.1 10.3 18.2 0.0461 0.00104 0.00307 0.00307 Tank msc + 2 39.1 10.3 18.2 0.0149 0.0312 0.0212 0.0243 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 78, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 39.1 10.3 18.2 3.48e-06 0 0 0 Tank initStep + 1 3.99e+03 830 5e+03 3.48e-06 0 6.41e+03 6.41e+03 World Transportation + 2 3.99e+03 830 5e+03 3.48e-06 0 0 6.41e+03 Tank Transportation + 3 5e+03 1.6e+03 4.01e+03 3.48e-06 0 1.61e+03 8.02e+03 World Transportation + 4 5e+03 1.6e+03 4.01e+03 3.48e-06 0 0 8.02e+03 Tank Transportation + 5 -3.09e+03 5e+03 -1.29e+03 3.48e-06 0 1.03e+04 1.83e+04 World Transportation + 6 -3.09e+03 5e+03 -1.29e+03 3.48e-06 0 0 1.83e+04 Tank Transportation + 7 -5e+03 -702 -3.92e+03 3.48e-06 0 6.56e+03 2.48e+04 World Transportation + 8 -5e+03 -702 -3.92e+03 3.48e-06 0 0 2.48e+04 Tank Transportation + 9 -2.13e+03 -182 -4.12e+03 3.48e-06 3.48e-06 2.93e+03 2.78e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 77, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 39.1 10.3 18.2 2.32e-06 0 0 0 Tank initStep + 1 2.21e+03 1.6e+03 -5e+03 2.32e-06 0 5.7e+03 5.7e+03 World Transportation + 2 9.49e+03 7.51e+03 -1e+04 2.32e-06 0 1.06e+04 1.63e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 47, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 39.1 10.3 18.2 0.0149 0 0 0.0243 Tank initStep + 3 39.1 10.3 18.2 0.0146 0.000339 0.000399 0.0247 Tank msc + 4 39.1 10.3 18.2 0 0.0146 0.00479 0.0295 Tank eIoni + 5 39.1 10.3 18.2 0 0 0 0.0295 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 32.1 4.14 17.1 0.0949 0 0 0 Tank initStep + 1 32.1 4.14 17.1 0.0909 0.00405 0.0104 0.0104 Tank msc + 2 32.2 4.12 17.1 0.0787 0.0122 0.0395 0.0499 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 79, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 32.1 4.14 17.1 3.5e-06 0 0 0 Tank initStep + 1 -5e+03 -1.43e+03 -2.81e+03 3.5e-06 0 5.95e+03 5.95e+03 World Transportation + 2 -5e+03 -1.43e+03 -2.81e+03 3.5e-06 0 0 5.95e+03 Tank Transportation + 3 -2.72e+03 -4.74e+03 -2.16e+03 3.5e-06 3.5e-06 4.07e+03 1e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 32.2 4.12 17.1 0.0787 0 0 0.0499 Tank initStep + 3 32.2 4.12 17.1 0.0736 0.00511 0.00753 0.0574 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 80, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 32.2 4.12 17.1 2.4e-06 0 0 0 Tank initStep + 1 -4.84e+03 180 5e+03 2.4e-06 0 6.97e+03 6.97e+03 World Transportation + 2 -4.84e+03 180 5e+03 2.4e-06 0 0 6.97e+03 Tank Transportation + 3 -5e+03 147 4.78e+03 2.4e-06 0 274 7.25e+03 World Transportation + 4 -5e+03 147 4.78e+03 2.4e-06 0 0 7.25e+03 Tank Transportation + 5 -121 2.48e+03 500 2.4e-06 0 6.9e+03 1.41e+04 Bubble Transportation + 6 -121 2.48e+03 500 2.4e-06 0 0 1.41e+04 Tank Transportation + 7 5e+03 4.93e+03 4.99e+03 2.4e-06 0 7.24e+03 2.14e+04 World Transportation + 8 7.64e+03 1e+04 8.78e+03 2.4e-06 0 6.86e+03 2.82e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 32.2 4.12 17.1 0.0736 0 0 0.0574 Tank initStep + 4 32.2 4.11 17.1 0.0717 0.0019 0.0067 0.0641 Tank msc + 5 32.2 4.09 17.1 0.0566 0.0151 0.031 0.0951 Tank eIoni + 6 32.1 4.09 17.1 0.0417 0.0149 0.025 0.12 Tank eIoni + 7 32.1 4.09 17.1 0.0278 0.0139 0.0196 0.14 Tank eIoni + 8 32.1 4.1 17.2 0.0121 0.0157 0.0137 0.153 Tank eIoni + 9 32.1 4.1 17.2 0 0.0121 0.00349 0.157 Tank eIoni + 10 32.1 4.1 17.2 0 0 0 0.157 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 44, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.919 0.58 -0.343 0.511 0 0 0 Tank initStep + 1 -13.7 -1.09 -8.51 0.484 0.000537 16.8 16.8 Tank compt + 2 -173 -60 -175 0.323 1.42e-05 238 255 Tank compt + 3 -291 -54.2 -146 0.147 1.42e-05 122 377 Tank compt + 4 -145 -107 -151 0.13 1.36e-05 156 532 Tank compt + 5 -132 -103 -139 0.1 1.36e-05 18.2 550 Tank compt + 6 -176 -155 -95.8 0.0956 1.42e-05 80.7 631 Tank compt + 7 -267 -337 -122 0.081 2.92e-05 205 836 Tank compt + 8 -267 -337 -124 0.0615 1.36e-05 2.58 839 Tank compt + 9 -305 -399 4.67 0.0535 1.42e-05 148 987 Tank compt + 10 -312 -392 3.61 0.0446 1.36e-05 8.97 996 Tank compt + 11 -309 -394 1.72 0.0415 0.000537 3.85 999 Tank compt + 12 -309 -395 2.17 0.0403 1.36e-05 1.03 1e+03 Tank compt + 13 -326 -409 25.6 0 0.000537 32.5 1.03e+03 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 93, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -326 -409 25.6 0.0397 0 0 0 Tank initStep + 1 -326 -409 25.6 0.0357 0.00401 0.00227 0.00227 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 94, Parent ID = 93 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -326 -409 25.6 3.63e-06 0 0 0 Tank initStep + 1 -873 310 1.11e+03 3.63e-06 0 1.41e+03 1.41e+03 Tank OpRayleigh + 2 -5e+03 3.36e+03 -2.09e+03 3.63e-06 0 6.04e+03 7.45e+03 World Transportation + 3 -5e+03 3.36e+03 -2.09e+03 3.63e-06 0 0 7.45e+03 Tank Transportation + 4 -2.23e+03 4.38e+03 -5e+03 3.63e-06 0 4.15e+03 1.16e+04 World Transportation + 5 -2.23e+03 4.38e+03 -5e+03 3.63e-06 0 0 1.16e+04 Tank Transportation + 6 -559 4.01e+03 -3.54e+03 3.63e-06 3.63e-06 2.26e+03 1.39e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 93, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 -326 -409 25.6 0.0357 0 0 0.00227 Tank initStep + 2 -326 -409 25.6 0.0323 0.00339 0.00188 0.00414 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 96, Parent ID = 93 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -326 -409 25.6 3.58e-06 0 0 0 Tank initStep + 1 -5e+03 -2.99e+03 -2.81e+03 3.58e-06 0 6.05e+03 6.05e+03 World Transportation + 2 -1e+04 -5.43e+03 -9.48e+03 3.58e-06 0 8.68e+03 1.47e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 95, Parent ID = 93 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -326 -409 25.6 2.56e-06 0 0 0 Tank initStep + 1 -918 -5e+03 166 2.56e-06 0 4.63e+03 4.63e+03 World Transportation + 2 -1.23e+03 -1e+04 212 2.56e-06 0 5.01e+03 9.64e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 93, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -326 -409 25.6 0.0323 0 0 0.00414 Tank initStep + 3 -326 -409 25.6 0.0312 0.00113 0.00157 0.00572 Tank msc + 4 -326 -409 25.6 0.0121 0.0191 0.0154 0.0211 Tank eIoni + 5 -326 -409 25.6 0 0.0121 0.00346 0.0245 Tank eIoni + 6 -326 -409 25.6 0 0 0 0.0245 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 92, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -309 -395 2.17 0.00121 0 0 0 Tank initStep + 1 -309 -395 2.17 0.00112 8.75e-05 5.62e-06 5.62e-06 Tank msc + 2 -309 -395 2.17 0 0.00112 6.27e-05 6.83e-05 Tank eIoni + 3 -309 -395 2.17 0 0 0 6.83e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 91, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -309 -394 1.72 0.00258 0 0 0 Tank initStep + 1 -309 -394 1.72 0.00251 6.67e-05 1.91e-05 1.91e-05 Tank msc + 2 -309 -394 1.72 0 0.00251 0.000229 0.000248 Tank eIoni + 3 -309 -394 1.72 0 0 0 0.000248 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -312 -392 3.61 0.00884 0 0 0 Tank initStep + 1 -312 -392 3.61 0.00829 0.000555 0.00016 0.00016 Tank msc + 2 -312 -392 3.61 0 0.00829 0.00178 0.00194 Tank eIoni + 3 -312 -392 3.61 0 0 0 0.00194 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 89, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -305 -399 4.67 0.00802 0 0 0 Tank initStep + 1 -305 -399 4.67 0.00791 0.000107 0.000134 0.000134 Tank msc + 2 -305 -399 4.67 0 0.00791 0.00164 0.00178 Tank eIoni + 3 -305 -399 4.67 0 0 0 0.00178 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 88, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -267 -337 -124 0.0195 0 0 0 Tank initStep + 1 -267 -337 -124 0.0191 0.000409 0.000642 0.000642 Tank msc + 2 -267 -337 -124 0 0.0191 0.00774 0.00838 Tank eIoni + 3 -267 -337 -124 0 0 0 0.00838 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 87, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -267 -337 -122 0.0146 0 0 0 Tank initStep + 1 -267 -337 -122 0.0138 0.000794 0.000385 0.000385 Tank msc + 2 -267 -337 -122 0 0.0138 0.00436 0.00475 Tank eIoni + 3 -267 -337 -122 0 0 0 0.00475 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -176 -155 -95.8 0.00461 0 0 0 Tank initStep + 1 -176 -155 -95.8 0.00457 4.22e-05 5.14e-05 5.14e-05 Tank msc + 2 -176 -155 -95.8 0 0.00457 0.000633 0.000684 Tank eIoni + 3 -176 -155 -95.8 0 0 0 0.000684 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 85, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -132 -103 -139 0.03 0 0 0 Tank initStep + 1 -132 -103 -139 0.0292 0.000773 0.00138 0.00138 Tank msc + 2 -132 -103 -139 0.0116 0.0176 0.0144 0.0158 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 97, Parent ID = 85 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -132 -103 -139 3.54e-06 0 0 0 Tank initStep + 1 -2.2e+03 -2.86e+03 1.09e+03 3.54e-06 0 3.66e+03 3.66e+03 Tank OpRayleigh + 2 2.74e+03 135 -5e+03 3.54e-06 0 8.4e+03 1.21e+04 World Transportation + 3 2.74e+03 135 -5e+03 3.54e-06 0 0 1.21e+04 Tank Transportation + 4 5e+03 1.17e+03 -3.09e+03 3.54e-06 0 3.13e+03 1.52e+04 World Transportation + 5 5e+03 1.17e+03 -3.09e+03 3.54e-06 0 0 1.52e+04 Tank Transportation + 6 1.76e+03 5e+03 -160 3.54e-06 0 5.81e+03 2.1e+04 World Transportation + 7 1.76e+03 5e+03 -160 3.54e-06 0 0 2.1e+04 Tank Transportation + 8 59.6 2.32e+03 2.86e+03 3.54e-06 3.54e-06 4.38e+03 2.54e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 85, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -132 -103 -139 0.0116 0 0 0.0158 Tank initStep + 3 -132 -103 -139 0.0114 0.000145 0.000257 0.0161 Tank msc + 4 -132 -103 -139 0 0.0114 0.00314 0.0192 Tank eIoni + 5 -132 -103 -139 0 0 0 0.0192 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 84, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -145 -107 -151 0.0167 0 0 0 Tank initStep + 1 -145 -107 -151 0.0164 0.000237 0.000488 0.000488 Tank msc + 2 -145 -107 -151 0 0.0164 0.00595 0.00644 Tank eIoni + 3 -145 -107 -151 0 0 0 0.00644 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -291 -54.2 -146 0.176 0 0 0 Tank initStep + 1 -291 -54.2 -146 0.172 0.00468 0.0291 0.0291 Tank msc + 2 -291 -54.1 -146 0.118 0.0541 0.0855 0.115 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 100, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -291 -54.1 -146 3.43e-06 0 0 0 Tank initStep + 1 5e+03 -1.2e+03 3.58e+03 3.43e-06 0 6.57e+03 6.57e+03 World Transportation + 2 5e+03 -1.2e+03 3.58e+03 3.43e-06 0 0 6.57e+03 Tank Transportation + 3 4.1e+03 -1.4e+03 5e+03 3.43e-06 0 1.7e+03 8.26e+03 World Transportation + 4 4.1e+03 -1.4e+03 5e+03 3.43e-06 0 0 8.26e+03 Tank Transportation + 5 2.72e+03 -2.11e+03 3.73e+03 3.43e-06 0 2e+03 1.03e+04 Tank OpRayleigh + 6 5e+03 -1.27e+03 3.79e+03 3.43e-06 0 2.43e+03 1.27e+04 World Transportation + 7 1e+04 78 3.15e+03 3.43e-06 0 5.22e+03 1.79e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 99, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -291 -54.1 -146 3.98e-06 0 0 0 Tank initStep + 1 -2.56e+03 -2.54e+03 -5e+03 3.98e-06 0 5.91e+03 5.91e+03 World Transportation + 2 -2.56e+03 -2.54e+03 -5e+03 3.98e-06 0 0 5.91e+03 Tank Transportation + 3 -5e+03 -3.43e+03 -2.86e+03 3.98e-06 0 3.36e+03 9.27e+03 World Transportation + 4 -5e+03 -3.43e+03 -2.86e+03 3.98e-06 0 0 9.27e+03 Tank Transportation + 5 -4.85e+03 -3.67e+03 -2.6e+03 3.98e-06 0 377 9.65e+03 Tank OpRayleigh + 6 -4.85e+03 -3.67e+03 -2.6e+03 3.98e-06 3.98e-06 8.6 9.66e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 98, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -291 -54.1 -146 3.36e-06 0 0 0 Tank initStep + 1 -3.35e+03 5e+03 171 3.36e-06 0 5.92e+03 5.92e+03 World Transportation + 2 -3.35e+03 5e+03 171 3.36e-06 0 0 5.92e+03 Tank Transportation + 3 -5e+03 3.15e+03 264 3.36e-06 0 2.48e+03 8.4e+03 World Transportation + 4 -5e+03 3.15e+03 264 3.36e-06 0 0 8.4e+03 Tank Transportation + 5 5e+03 -2.59e+03 896 3.36e-06 0 1.15e+04 1.99e+04 World Transportation + 6 5e+03 -2.59e+03 896 3.36e-06 0 0 1.99e+04 Tank Transportation + 7 2.34e+03 -5e+03 1.67e+03 3.36e-06 0 3.67e+03 2.36e+04 World Transportation + 8 2.34e+03 -5e+03 1.67e+03 3.36e-06 0 0 2.36e+04 Tank Transportation + 9 2.31e+03 -4.55e+03 1.49e+03 3.36e-06 3.36e-06 485 2.41e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -291 -54.1 -146 0.118 0 0 0.115 Tank initStep + 3 -291 -54.1 -146 0.113 0.00417 0.0149 0.13 Tank msc + 4 -291 -54.1 -146 0.0979 0.0155 0.0507 0.18 Tank eIoni + 5 -291 -54.1 -146 0.0803 0.0176 0.0428 0.223 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 101, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -291 -54.1 -146 2.37e-06 0 0 0 Tank initStep + 1 2.71e+03 5e+03 -1.47e+03 2.37e-06 0 6.02e+03 6.02e+03 World Transportation + 2 1e+04 1e+04 -5.11e+03 2.37e-06 0 9.56e+03 1.56e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 -291 -54.1 -146 0.0803 0 0 0.223 Tank initStep + 6 -291 -54 -146 0.0788 0.00143 0.00779 0.231 Tank msc + 7 -291 -54 -146 0.0641 0.0147 0.034 0.265 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 103, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -291 -54 -146 2.4e-06 0 0 0 Tank initStep + 1 -1.5e+03 1.07e+03 5e+03 2.4e-06 0 5.41e+03 5.41e+03 World Transportation + 2 -1.5e+03 1.07e+03 5e+03 2.4e-06 0 0 5.41e+03 Tank Transportation + 3 -1.7e+03 4.58e+03 931 2.4e-06 2.4e-06 5.38e+03 1.08e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 102, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -291 -54 -146 2.86e-06 0 0 0 Tank initStep + 1 -1.35 422 312 2.86e-06 0 722 722 Tank OpRayleigh + 2 -5e+03 -1.26e+03 -367 2.86e-06 0 5.32e+03 6.04e+03 World Transportation + 3 -5e+03 -1.26e+03 -367 2.86e-06 0 0 6.04e+03 Tank Transportation + 4 688 -1.58e+03 -749 2.86e-06 2.86e-06 5.71e+03 1.17e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 -291 -54 -146 0.0641 0 0 0.265 Tank initStep + 8 -291 -54 -146 0.0618 0.00233 0.00526 0.27 Tank msc + 9 -291 -54 -146 0.0477 0.0142 0.027 0.297 Tank eIoni + 10 -291 -54 -146 0.0321 0.0156 0.0218 0.319 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 104, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -291 -54 -146 3.2e-06 0 0 0 Tank initStep + 1 5e+03 2.26e+03 1.95e+03 3.2e-06 0 6.14e+03 6.14e+03 World Transportation + 2 1e+04 7.29e+03 7.27e+03 3.2e-06 0 8.87e+03 1.5e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 10 -291 -54 -146 0.0321 0 0 0.319 Tank initStep + 11 -291 -54 -146 0.0308 0.00125 0.00155 0.32 Tank msc + 12 -291 -54 -146 0.0126 0.0182 0.0152 0.336 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 105, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -291 -54 -146 3.72e-06 0 0 0 Tank initStep + 1 2.93e+03 -3.69e+03 -5e+03 3.72e-06 0 6.87e+03 6.87e+03 World Transportation + 2 2.93e+03 -3.69e+03 -5e+03 3.72e-06 0 0 6.87e+03 Tank Transportation + 3 3.34e+03 -4.61e+03 -3.61e+03 3.72e-06 3.72e-06 1.72e+03 8.58e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 12 -291 -54 -146 0.0126 0 0 0.336 Tank initStep + 13 -291 -54 -146 0.0123 0.000306 0.0003 0.336 Tank msc + 14 -291 -54 -146 0 0.0123 0.00359 0.339 Tank eIoni + 15 -291 -54 -146 0 0 0 0.339 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -173 -60 -175 0.161 0 0 0 Tank initStep + 1 -173 -60 -175 0.152 0.00899 0.0251 0.0251 Tank msc + 2 -173 -60 -176 0.134 0.0178 0.0728 0.0979 Tank eIoni + 3 -173 -59.9 -176 0.11 0.024 0.0621 0.16 Tank eIoni + 4 -173 -60 -176 0.0965 0.0136 0.0489 0.209 Tank eIoni + 5 -173 -60 -176 0.0801 0.0164 0.0421 0.251 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 107, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -173 -60 -176 3.55e-06 0 0 0 Tank initStep + 1 647 -594 238 3.55e-06 3.55e-06 1.06e+03 1.06e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 106, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -173 -60 -176 3.38e-06 0 0 0 Tank initStep + 1 -5e+03 1.63e+03 2.44e+03 3.38e-06 0 5.75e+03 5.75e+03 World Transportation + 2 -5e+03 1.63e+03 2.44e+03 3.38e-06 0 0 5.75e+03 Tank Transportation + 3 -2e+03 5e+03 3.93e+03 3.38e-06 0 4.75e+03 1.05e+04 World Transportation + 4 -2e+03 5e+03 3.93e+03 3.38e-06 0 0 1.05e+04 Tank Transportation + 5 -552 4.62e+03 5e+03 3.38e-06 0 1.84e+03 1.23e+04 World Transportation + 6 -552 4.62e+03 5e+03 3.38e-06 0 0 1.23e+04 Tank Transportation + 7 5e+03 3.12e+03 3.87e+03 3.38e-06 0 5.86e+03 1.82e+04 World Transportation + 8 5e+03 3.12e+03 3.87e+03 3.38e-06 0 0 1.82e+04 Tank Transportation + 9 -2.01e+03 1.16e+03 5e+03 3.38e-06 0 7.36e+03 2.56e+04 World Transportation + 10 -2.01e+03 1.16e+03 5e+03 3.38e-06 0 0 2.56e+04 Tank Transportation + 11 -5e+03 2.74e+03 -1.09e+03 3.38e-06 0 6.96e+03 3.25e+04 World Transportation + 12 -5e+03 2.74e+03 -1.09e+03 3.38e-06 0 0 3.25e+04 Tank Transportation + 13 145 3.89e+03 -5e+03 3.38e-06 0 6.57e+03 3.91e+04 World Transportation + 14 145 3.89e+03 -5e+03 3.38e-06 0 0 3.91e+04 Tank Transportation + 15 1.85e+03 5e+03 -4.18e+03 3.38e-06 0 2.19e+03 4.13e+04 World Transportation + 16 1e+04 5.72e+03 -1.48e+03 3.38e-06 0 8.62e+03 4.99e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 -173 -60 -176 0.0801 0 0 0.251 Tank initStep + 6 -173 -60 -176 0.0775 0.00251 0.00775 0.259 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 108, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -173 -60 -176 2.08e-06 0 0 0 Tank initStep + 1 -311 160 -702 2.08e-06 2.08e-06 587 587 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 -173 -60 -176 0.0775 0 0 0.259 Tank initStep + 7 -173 -60 -176 0.0751 0.00243 0.00734 0.266 Tank msc + 8 -173 -60 -176 0.0446 0.0305 0.0324 0.299 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 111, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -173 -60 -176 3.63e-06 0 0 0 Tank initStep + 1 -3.57e+03 -5e+03 28.8 3.63e-06 0 6e+03 6e+03 World Transportation + 2 -3.57e+03 -5e+03 28.8 3.63e-06 0 0 6e+03 Tank Transportation + 3 -5e+03 -3.67e+03 -372 3.63e-06 0 1.99e+03 7.99e+03 World Transportation + 4 -5e+03 -3.67e+03 -372 3.63e-06 0 0 7.99e+03 Tank Transportation + 5 5e+03 2.27e+03 775 3.63e-06 0 1.17e+04 1.97e+04 World Transportation + 6 5e+03 2.27e+03 775 3.63e-06 0 0 1.97e+04 Tank Transportation + 7 3.89e+03 5e+03 1.51e+03 3.63e-06 0 3.04e+03 2.27e+04 World Transportation + 8 3.89e+03 5e+03 1.51e+03 3.63e-06 0 0 2.27e+04 Tank Transportation + 9 -5e+03 871 1.67e+03 3.63e-06 0 9.8e+03 3.25e+04 World Transportation + 10 -5e+03 871 1.67e+03 3.63e-06 0 0 3.25e+04 Tank Transportation + 11 -3.55e+03 675 3.24e+03 3.63e-06 0 2.15e+03 3.47e+04 Tank OpMieHG + 12 -1.94e+03 481 5e+03 3.63e-06 0 2.39e+03 3.71e+04 World Transportation + 13 1e+04 -466 7.11e+03 3.63e-06 0 1.22e+04 4.92e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 110, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -173 -60 -176 2.27e-06 0 0 0 Tank initStep + 1 -5e+03 781 -1.57e+03 2.27e-06 0 5.1e+03 5.1e+03 World Transportation + 2 -5e+03 781 -1.57e+03 2.27e-06 0 0 5.1e+03 Tank Transportation + 3 329 66.1 -4.06e+03 2.27e-06 2.27e-06 5.93e+03 1.1e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 109, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -173 -60 -176 2.98e-06 0 0 0 Tank initStep + 1 -1.81e+03 188 65.6 2.98e-06 2.98e-06 1.67e+03 1.67e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 -173 -60 -176 0.0446 0 0 0.299 Tank initStep + 9 -173 -60 -176 0.0427 0.00189 0.00278 0.301 Tank msc + 10 -173 -60 -176 0.00928 0.0334 0.02 0.321 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 113, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -173 -60 -176 2.13e-06 0 0 0 Tank initStep + 1 4.5e+03 -4.31e+03 -3.17e+03 2.13e-06 2.13e-06 6.99e+03 6.99e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 112, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -173 -60 -176 4e-06 0 0 0 Tank initStep + 1 -841 4.49e+03 -5e+03 4e-06 0 6.67e+03 6.67e+03 World Transportation + 2 -841 4.49e+03 -5e+03 4e-06 0 0 6.67e+03 Tank Transportation + 3 -1.21e+03 5e+03 -4.22e+03 4e-06 0 1e+03 7.67e+03 World Transportation + 4 -1.21e+03 5e+03 -4.22e+03 4e-06 0 0 7.67e+03 Tank Transportation + 5 -398 2.06e+03 -1.21e+03 4e-06 4e-06 4.29e+03 1.2e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 10 -173 -60 -176 0.00928 0 0 0.321 Tank initStep + 11 -173 -60 -176 0.00911 0.000169 0.000174 0.321 Tank msc + 12 -173 -60 -176 0 0.00911 0.0021 0.324 Tank eIoni + 13 -173 -60 -176 0 0 0 0.324 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 114, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -173 -60 -176 2.43e-06 0 0 0 Tank initStep + 1 -4.93e+03 -397 5e+03 2.43e-06 0 7.03e+03 7.03e+03 World Transportation + 2 -4.93e+03 -397 5e+03 2.43e-06 0 0 7.03e+03 Tank Transportation + 3 -5e+03 -429 4.97e+03 2.43e-06 0 87.6 7.12e+03 World Transportation + 4 -1e+04 -6.29e+03 2.29e+03 2.43e-06 0 8.16e+03 1.53e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 81, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -13.7 -1.09 -8.51 0.0263 0 0 0 Tank initStep + 1 -13.7 -1.09 -8.51 0.0247 0.00159 0.00109 0.00109 Tank msc + 2 -13.7 -1.09 -8.5 0.00638 0.0183 0.0119 0.013 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 116, Parent ID = 81 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -13.7 -1.09 -8.51 2.24e-06 0 0 0 Tank initStep + 1 4.88e+03 -5e+03 -1.76e+03 2.24e-06 0 7.21e+03 7.21e+03 World Transportation + 2 4.88e+03 -5e+03 -1.76e+03 2.24e-06 0 0 7.21e+03 Tank Transportation + 3 5e+03 -4.92e+03 -1.77e+03 2.24e-06 0 145 7.36e+03 World Transportation + 4 5e+03 -4.92e+03 -1.77e+03 2.24e-06 0 0 7.36e+03 Tank Transportation + 5 837 -1.41e+03 -454 2.24e-06 2.24e-06 5.6e+03 1.3e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 115, Parent ID = 81 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -13.7 -1.09 -8.51 3.59e-06 0 0 0 Tank initStep + 1 -69.7 1.78e+03 -2.73e+03 3.59e-06 0 3.26e+03 3.26e+03 Tank OpRayleigh + 2 5e+03 2.74e+03 4.33e+03 3.59e-06 0 8.75e+03 1.2e+04 World Transportation + 3 7.09e+03 5.51e+03 1e+04 3.59e-06 0 6.65e+03 1.87e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 81, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -13.7 -1.09 -8.5 0.00638 0 0 0.013 Tank initStep + 3 -13.7 -1.09 -8.5 0.0062 0.000181 9e-05 0.0131 Tank msc + 4 -13.7 -1.09 -8.5 0 0.0062 0.00107 0.0141 Tank eIoni + 5 -13.7 -1.09 -8.5 0 0 0 0.0141 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 43, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.918 0.58 -0.343 2.4e-06 0 0 0 Tank initStep + 1 -2.14e+03 -2.69e+03 1.91e+03 2.4e-06 2.4e-06 3.93e+03 3.93e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 42, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.918 0.58 -0.343 3.78e-06 0 0 0 Tank initStep + 1 -3.34e+03 -5e+03 -3.22e+03 3.78e-06 0 6.82e+03 6.82e+03 World Transportation + 2 -3.34e+03 -5e+03 -3.22e+03 3.78e-06 0 0 6.82e+03 Tank Transportation + 3 -3.77e+03 -2.53e+03 -5e+03 3.78e-06 0 3.07e+03 9.89e+03 World Transportation + 4 -3.77e+03 -2.53e+03 -5e+03 3.78e-06 0 0 9.89e+03 Tank Transportation + 5 -1.67e+03 4.58e+03 5e+03 3.78e-06 0 1.24e+04 2.23e+04 World Transportation + 6 -1.67e+03 4.58e+03 5e+03 3.78e-06 0 0 2.23e+04 Tank Transportation + 7 -1.25e+03 5e+03 4.55e+03 3.78e-06 0 749 2.31e+04 World Transportation + 8 -1.25e+03 5e+03 4.55e+03 3.78e-06 0 0 2.31e+04 Tank Transportation + 9 -777 4.63e+03 3.77e+03 3.78e-06 3.78e-06 980 2.41e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 0.5 0 0 0 Tank initStep + 1 0.137 -0.00554 0.016 0.478 0.0216 0.14 0.14 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0623 -0.00252 0.00729 3.76e-06 0 0 0 Tank initStep + 1 128 -5e+03 -3.4e+03 3.76e-06 0 6.05e+03 6.05e+03 World Transportation + 2 128 -5e+03 -3.4e+03 3.76e-06 0 0 6.05e+03 Tank Transportation + 3 32.8 -4.15e+03 -5e+03 3.76e-06 0 1.81e+03 7.86e+03 World Transportation + 4 32.8 -4.15e+03 -5e+03 3.76e-06 0 0 7.86e+03 Tank Transportation + 5 -101 -1.75e+03 5e+03 3.76e-06 0 1.03e+04 1.81e+04 World Transportation + 6 513 747 1e+04 3.76e-06 0 5.62e+03 2.38e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.00605 -0.000244 0.000708 3.75e-06 0 0 0 Tank initStep + 1 1.36e+03 -278 1.03e+03 3.75e-06 3.75e-06 1.73e+03 1.73e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0552 -0.00223 0.00645 2.15e-06 0 0 0 Tank initStep + 1 5e+03 775 -1.99e+03 2.15e-06 0 5.44e+03 5.44e+03 World Transportation + 2 1e+04 1.32e+03 -4.76e+03 2.15e-06 0 5.75e+03 1.12e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 0.137 -0.00554 0.016 0.478 0 0 0.14 Tank initStep + 2 0.249 0.0279 0.0666 0.455 0.0234 0.128 0.268 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.213 0.017 0.0502 2.5e-06 0 0 0 Tank initStep + 1 5e+03 1.03e+03 -555 2.5e-06 0 5.14e+03 5.14e+03 World Transportation + 2 1e+04 3.15e+03 -588 2.5e-06 0 5.43e+03 1.06e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.209 0.016 0.0487 3.21e-06 0 0 0 Tank initStep + 1 4.87e+03 -741 5e+03 3.21e-06 0 7.02e+03 7.02e+03 World Transportation + 2 4.87e+03 -741 5e+03 3.21e-06 0 0 7.02e+03 Tank Transportation + 3 5e+03 -745 4.87e+03 3.21e-06 0 183 7.2e+03 World Transportation + 4 5e+03 -745 4.87e+03 3.21e-06 0 0 7.2e+03 Tank Transportation + 5 -2.74e+03 -5e+03 -574 3.21e-06 0 1.04e+04 1.76e+04 World Transportation + 6 -2.74e+03 -5e+03 -574 3.21e-06 0 0 1.76e+04 Tank Transportation + 7 -5e+03 -3.91e+03 -690 3.21e-06 0 2.51e+03 2.01e+04 World Transportation + 8 -1e+04 9.21e+03 834 3.21e-06 0 1.41e+04 3.42e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 0.249 0.0279 0.0666 0.455 0 0 0.268 Tank initStep + 3 0.34 0.0638 0.127 0.438 0.0173 0.116 0.383 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.339 0.0635 0.126 3.19e-06 0 0 0 Tank initStep + 1 5e+03 683 473 3.19e-06 0 5.07e+03 5.07e+03 World Transportation + 2 1e+04 1.78e+03 1.48e+03 3.19e-06 0 5.22e+03 1.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 0.34 0.0638 0.127 0.438 0 0 0.383 Tank initStep + 4 0.402 0.105 0.202 0.423 0.0148 0.107 0.49 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 8, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.353 0.0729 0.143 2.8e-06 0 0 0 Tank initStep + 1 907 427 322 2.8e-06 2.8e-06 1.05e+03 1.05e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 0.402 0.105 0.202 0.423 0 0 0.49 Tank initStep + 5 0.445 0.173 0.256 0.382 0.0413 0.0997 0.59 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 11, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.441 0.167 0.251 3.5e-06 0 0 0 Tank initStep + 1 1.33e+03 2.41e+03 5e+03 3.5e-06 0 5.71e+03 5.71e+03 World Transportation + 2 2.15e+03 5.57e+03 1e+04 3.5e-06 0 5.97e+03 1.17e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 10, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.414 0.125 0.217 2.59e-06 0 0 0 Tank initStep + 1 38.4 5e+03 4.65e+03 2.59e-06 0 6.83e+03 6.83e+03 World Transportation + 2 38.4 5e+03 4.65e+03 2.59e-06 0 0 6.83e+03 Tank Transportation + 3 231 4.27e+03 5e+03 2.59e-06 0 834 7.66e+03 World Transportation + 4 231 4.27e+03 5e+03 2.59e-06 0 0 7.66e+03 Tank Transportation + 5 -4.26e+03 -1.75e+03 -5e+03 2.59e-06 0 1.25e+04 2.02e+04 World Transportation + 6 -1e+04 -8.86e+03 -6.39e+03 2.59e-06 0 9.24e+03 2.94e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 9, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.431 0.151 0.239 3.31e-06 0 0 0 Tank initStep + 1 657 3.17e+03 5e+03 3.31e-06 0 5.96e+03 5.96e+03 World Transportation + 2 657 3.17e+03 5e+03 3.31e-06 0 0 5.96e+03 Tank Transportation + 3 1.95e+03 5e+03 3.15e+03 3.31e-06 0 2.91e+03 8.86e+03 World Transportation + 4 1.95e+03 5e+03 3.15e+03 3.31e-06 0 0 8.86e+03 Tank Transportation + 5 2.45e+03 4.73e+03 2.23e+03 3.31e-06 3.31e-06 1.09e+03 9.95e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 0.445 0.173 0.256 0.382 0 0 0.59 Tank initStep + 6 0.489 0.23 0.292 0.37 0.0112 0.0812 0.671 Tank Cerenkov + 7 0.531 0.273 0.335 0.352 0.0189 0.0765 0.747 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 13, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.527 0.268 0.33 3.49e-06 0 0 0 Tank initStep + 1 -1.71e+03 -1.3e+03 5e+03 3.49e-06 0 5.44e+03 5.44e+03 World Transportation + 2 -6.86e+03 -8.57e+03 1e+04 3.49e-06 0 1.02e+04 1.57e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 12, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.492 0.234 0.295 3.79e-06 0 0 0 Tank initStep + 1 1.27e+03 4.55e+03 5e+03 3.79e-06 0 6.88e+03 6.88e+03 World Transportation + 2 1.27e+03 4.55e+03 5e+03 3.79e-06 0 0 6.88e+03 Tank Transportation + 3 1.75e+03 5e+03 4.78e+03 3.79e-06 0 695 7.58e+03 World Transportation + 4 1.75e+03 5e+03 4.78e+03 3.79e-06 0 0 7.58e+03 Tank Transportation + 5 1.97e+03 4.41e+03 4.67e+03 3.79e-06 3.79e-06 638 8.21e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 0.531 0.273 0.335 0.352 0 0 0.747 Tank initStep + 8 0.557 0.3 0.392 0.34 0.0113 0.0689 0.816 Tank Cerenkov + 9 0.581 0.34 0.434 0.321 0.0189 0.0646 0.881 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 15, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.563 0.309 0.401 2.35e-06 0 0 0 Tank initStep + 1 3.02e+03 5e+03 1.87e+03 2.35e-06 0 6.13e+03 6.13e+03 World Transportation + 2 1e+04 9.11e+03 -952 2.35e-06 0 8.58e+03 1.47e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 14, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.572 0.324 0.417 3.79e-06 0 0 0 Tank initStep + 1 1.86e+03 997 2.12e+03 3.79e-06 3.79e-06 3e+03 3e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 0.581 0.34 0.434 0.321 0 0 0.881 Tank initStep + 10 0.602 0.362 0.482 0.312 0.00954 0.0576 0.939 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 17, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.593 0.353 0.461 3.3e-06 0 0 0 Tank initStep + 1 5e+03 -2.77e+03 1.71e+03 3.3e-06 0 5.96e+03 5.96e+03 World Transportation + 2 5e+03 -2.77e+03 1.71e+03 3.3e-06 0 0 5.96e+03 Tank Transportation + 3 2.7e+03 -5e+03 4.54e+03 3.3e-06 0 4.28e+03 1.02e+04 World Transportation + 4 2.7e+03 -5e+03 4.54e+03 3.3e-06 0 0 1.02e+04 Tank Transportation + 5 2.41e+03 -4.65e+03 5e+03 3.3e-06 0 648 1.09e+04 World Transportation + 6 2.41e+03 -4.65e+03 5e+03 3.3e-06 0 0 1.09e+04 Tank Transportation + 7 2.23e+03 -1.8e+03 818 3.3e-06 3.3e-06 5.06e+03 1.6e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 16, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.588 0.347 0.449 2.22e-06 0 0 0 Tank initStep + 1 724 1.5e+03 1.49e+03 2.22e-06 2.22e-06 2.23e+03 2.23e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 10 0.602 0.362 0.482 0.312 0 0 0.939 Tank initStep + 11 0.616 0.382 0.53 0.3 0.0114 0.0543 0.993 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 18, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.604 0.366 0.49 2.73e-06 0 0 0 Tank initStep + 1 2.35e+03 4.42e+03 5e+03 2.73e-06 0 7.07e+03 7.07e+03 World Transportation + 2 2.35e+03 4.42e+03 5e+03 2.73e-06 0 0 7.07e+03 Tank Transportation + 3 2.53e+03 5e+03 4.52e+03 2.73e-06 0 771 7.85e+03 World Transportation + 4 2.53e+03 5e+03 4.52e+03 2.73e-06 0 0 7.85e+03 Tank Transportation + 5 -3.62e+03 -5e+03 -1.03e+03 2.73e-06 0 1.3e+04 2.08e+04 World Transportation + 6 -3.62e+03 -5e+03 -1.03e+03 2.73e-06 0 0 2.08e+04 Tank Transportation + 7 -4.06e+03 650 -5e+03 2.73e-06 0 6.92e+03 2.78e+04 World Transportation + 8 -4.06e+03 650 -5e+03 2.73e-06 0 0 2.78e+04 Tank Transportation + 9 -2.82e+03 5e+03 -925 2.73e-06 0 6.09e+03 3.38e+04 World Transportation + 10 -2.82e+03 5e+03 -925 2.73e-06 0 0 3.38e+04 Tank Transportation + 11 3.53e+03 -1.08e+03 5e+03 2.73e-06 0 1.06e+04 4.44e+04 World Transportation + 12 8.73e+03 -1e+04 8.78e+03 2.73e-06 0 1.1e+04 5.54e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 11 0.616 0.382 0.53 0.3 0 0 0.993 Tank initStep + 12 0.628 0.402 0.575 0.291 0.00961 0.0504 1.04 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 19, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.625 0.397 0.563 3.18e-06 0 0 0 Tank initStep + 1 5e+03 -163 -2.75e+03 3.18e-06 0 5.71e+03 5.71e+03 World Transportation + 2 5e+03 -163 -2.75e+03 3.18e-06 0 0 5.71e+03 Tank Transportation + 3 4.11e+03 -344 -5e+03 3.18e-06 0 2.42e+03 8.13e+03 World Transportation + 4 4.11e+03 -344 -5e+03 3.18e-06 0 0 8.13e+03 Tank Transportation + 5 3.16e+03 -5e+03 -2.56e+03 3.18e-06 0 5.34e+03 1.35e+04 World Transportation + 6 3.16e+03 -5e+03 -2.56e+03 3.18e-06 0 0 1.35e+04 Tank Transportation + 7 2.85e+03 -484 5e+03 3.18e-06 0 8.81e+03 2.23e+04 World Transportation + 8 4.39e+03 -179 1e+04 3.18e-06 0 5.24e+03 2.75e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 12 0.628 0.402 0.575 0.291 0 0 1.04 Tank initStep + 13 0.639 0.423 0.616 0.283 0.00789 0.0473 1.09 Tank Cerenkov + 14 0.653 0.444 0.651 0.264 0.019 0.0448 1.14 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 24, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.645 0.432 0.631 2.49e-06 0 0 0 Tank initStep + 1 465 -5e+03 -3.83e+03 2.49e-06 0 6.32e+03 6.32e+03 World Transportation + 2 766 -6.86e+03 -1e+04 2.49e-06 0 6.45e+03 1.28e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 23, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.651 0.44 0.644 2.18e-06 0 0 0 Tank initStep + 1 4.62e+03 -4.47e+03 5e+03 2.18e-06 0 8.14e+03 8.14e+03 World Transportation + 2 4.62e+03 -4.47e+03 5e+03 2.18e-06 0 0 8.14e+03 Tank Transportation + 3 5e+03 -4.64e+03 4.76e+03 2.18e-06 0 483 8.63e+03 World Transportation + 4 5e+03 -4.64e+03 4.76e+03 2.18e-06 0 0 8.63e+03 Tank Transportation + 5 4.91e+03 -5e+03 3.97e+03 2.18e-06 0 867 9.49e+03 World Transportation + 6 4.91e+03 -5e+03 3.97e+03 2.18e-06 0 0 9.49e+03 Tank Transportation + 7 5e+03 -4.4e+03 2.44e+03 2.18e-06 0 1.65e+03 1.11e+04 World Transportation + 8 5e+03 -4.4e+03 2.44e+03 2.18e-06 0 0 1.11e+04 Tank Transportation + 9 3.4e+03 -3.79e+03 636 2.18e-06 2.18e-06 2.49e+03 1.36e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 22, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.645 0.432 0.63 2.6e-06 0 0 0 Tank initStep + 1 -3.61e+03 1.61e+03 -5e+03 2.6e-06 0 6.37e+03 6.37e+03 World Transportation + 2 -3.61e+03 1.61e+03 -5e+03 2.6e-06 0 0 6.37e+03 Tank Transportation + 3 -5e+03 2.16e+03 -4.12e+03 2.6e-06 0 1.73e+03 8.11e+03 World Transportation + 4 -5e+03 2.16e+03 -4.12e+03 2.6e-06 0 0 8.11e+03 Tank Transportation + 5 3.01e+03 5e+03 334 2.6e-06 0 9.6e+03 1.77e+04 World Transportation + 6 3.01e+03 5e+03 334 2.6e-06 0 0 1.77e+04 Tank Transportation + 7 5e+03 2.87e+03 1.02e+03 2.6e-06 0 2.99e+03 2.07e+04 World Transportation + 8 5e+03 2.87e+03 1.02e+03 2.6e-06 0 0 2.07e+04 Tank Transportation + 9 -5e+03 -3.37e+03 884 2.6e-06 0 1.18e+04 3.25e+04 World Transportation + 10 -9.03e+03 -1e+04 532 2.6e-06 0 7.76e+03 4.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 21, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.653 0.444 0.651 3.6e-06 0 0 0 Tank initStep + 1 2.43e+03 -2.46e+03 -2.03e+03 3.6e-06 3.6e-06 4.01e+03 4.01e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 20, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.641 0.426 0.621 3.73e-06 0 0 0 Tank initStep + 1 322 808 2.05e+03 3.73e-06 3.73e-06 2.22e+03 2.22e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 14 0.653 0.444 0.651 0.264 0 0 1.14 Tank initStep + 15 0.66 0.463 0.684 0.257 0.00653 0.0391 1.17 Tank Cerenkov + 16 0.664 0.485 0.713 0.244 0.0131 0.0372 1.21 Tank Cerenkov + 17 0.664 0.49 0.717 0.244 0.000533 0.00698 1.22 Tank Cerenkov + 18 0.664 0.494 0.721 0.243 0.000863 0.00493 1.22 Tank Cerenkov + 19 0.664 0.495 0.722 0.243 0.000141 0.00162 1.23 Tank Cerenkov + 20 0.664 0.496 0.722 0.243 0.000136 0.00108 1.23 Tank Cerenkov + 21 0.664 0.496 0.723 0.242 0.000133 0.000564 1.23 Tank Cerenkov + 22 0.664 0.496 0.723 0.242 3.81e-05 5.46e-05 1.23 Tank Cerenkov + 23 0.674 0.581 0.803 0.189 0.0539 0.133 1.36 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 28, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.671 0.556 0.779 3.8e-06 0 0 0 Tank initStep + 1 5e+03 3.32e+03 3.48e+03 3.8e-06 0 6.93e+03 6.93e+03 World Transportation + 2 5e+03 3.32e+03 3.48e+03 3.8e-06 0 0 6.93e+03 Tank Transportation + 3 3.72e+03 2.88e+03 5e+03 3.8e-06 0 2.03e+03 8.97e+03 World Transportation + 4 -7.71e+03 538 1e+04 3.8e-06 0 1.27e+04 2.17e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 27, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.667 0.518 0.744 3.55e-06 0 0 0 Tank initStep + 1 732 4.21e+03 1.43e+03 3.55e-06 3.55e-06 4.51e+03 4.51e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 26, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.665 0.5 0.727 3.99e-06 0 0 0 Tank initStep + 1 -1.7e+03 -1.09e+03 -5e+03 3.99e-06 0 5.39e+03 5.39e+03 World Transportation + 2 -4.36e+03 -2.7e+03 -1e+04 3.99e-06 0 5.88e+03 1.13e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 25, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.668 0.53 0.755 3.18e-06 0 0 0 Tank initStep + 1 -4.44e+03 -3.74e+03 -3.76e+03 3.18e-06 0 6.92e+03 6.92e+03 Tank OpRayleigh + 2 -4.08e+03 -4.09e+03 -5e+03 3.18e-06 0 1.34e+03 8.26e+03 World Transportation + 3 -1.87e+03 -7.09e+03 -1e+04 3.18e-06 0 6.24e+03 1.45e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 23 0.674 0.581 0.803 0.189 0 0 1.36 Tank initStep + 24 0.69 0.594 0.827 0.181 0.00745 0.0312 1.39 Tank msc + 25 0.734 0.622 0.884 0.16 0.0209 0.0888 1.48 Tank eIoni + 26 0.796 0.627 0.907 0.136 0.0247 0.0754 1.56 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 30, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.761 0.624 0.894 3.71e-06 0 0 0 Tank initStep + 1 -5e+03 1.08e+03 3.19e+03 3.71e-06 0 6.03e+03 6.03e+03 World Transportation + 2 -5e+03 1.08e+03 3.19e+03 3.71e-06 0 0 6.03e+03 Tank Transportation + 3 -3.32e+03 2.19e+03 5e+03 3.71e-06 0 2.7e+03 8.73e+03 World Transportation + 4 -3.32e+03 2.19e+03 5e+03 3.71e-06 0 0 8.73e+03 Tank Transportation + 5 5e+03 2.75e+03 -2.32e+03 3.71e-06 0 1.11e+04 1.98e+04 World Transportation + 6 5e+03 2.75e+03 -2.32e+03 3.71e-06 0 0 1.98e+04 Tank Transportation + 7 2.56e+03 3.03e+03 -5e+03 3.71e-06 0 3.63e+03 2.35e+04 World Transportation + 8 2.56e+03 3.03e+03 -5e+03 3.71e-06 0 0 2.35e+04 Tank Transportation + 9 1.55e+03 5e+03 -2.52e+03 3.71e-06 0 3.33e+03 2.68e+04 World Transportation + 10 1.55e+03 5e+03 -2.52e+03 3.71e-06 0 0 2.68e+04 Tank Transportation + 11 1.2e+03 4.19e+03 -2.28e+03 3.71e-06 3.71e-06 916 2.77e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 29, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.784 0.626 0.903 2.44e-06 0 0 0 Tank initStep + 1 -5e+03 3.87e+03 3.08e+03 2.44e-06 0 7.03e+03 7.03e+03 World Transportation + 2 -5e+03 3.87e+03 3.08e+03 2.44e-06 0 0 7.03e+03 Tank Transportation + 3 -2.39e+03 3.88e+03 5e+03 2.44e-06 0 3.24e+03 1.03e+04 World Transportation + 4 -2.39e+03 3.88e+03 5e+03 2.44e-06 0 0 1.03e+04 Tank Transportation + 5 419 3.31e+03 2.15e+03 2.44e-06 2.44e-06 4.04e+03 1.43e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 26 0.796 0.627 0.907 0.136 0 0 1.56 Tank initStep + 27 0.81 0.632 0.913 0.127 0.0085 0.018 1.57 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 32, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.804 0.63 0.91 3.91e-06 0 0 0 Tank initStep + 1 -5e+03 1.81e+03 646 3.91e-06 0 5.36e+03 5.36e+03 World Transportation + 2 -5e+03 1.81e+03 646 3.91e-06 0 0 5.36e+03 Tank Transportation + 3 -4.6e+03 2.33e+03 519 3.91e-06 3.91e-06 662 6.02e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 31, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.796 0.627 0.907 4.03e-06 0 0 0 Tank initStep + 1 5e+03 3.31e+03 -1.19e+03 4.03e-06 0 6.11e+03 6.11e+03 World Transportation + 2 6.75e+03 1e+04 -3.82e+03 4.03e-06 0 7.4e+03 1.35e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 27 0.81 0.632 0.913 0.127 0 0 1.57 Tank initStep + 28 0.822 0.643 0.917 0.117 0.0102 0.0162 1.59 Tank msc + 29 0.85 0.675 0.92 0.0958 0.021 0.0506 1.64 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 33, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.822 0.643 0.917 3.4e-06 0 0 0 Tank initStep + 1 143 239 839 3.4e-06 3.4e-06 883 883 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 29 0.85 0.675 0.92 0.0958 0 0 1.64 Tank initStep + 30 0.856 0.683 0.917 0.0933 0.00254 0.00997 1.65 Tank msc + 31 0.876 0.707 0.907 0.0409 0.0524 0.0391 1.69 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 36, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.867 0.696 0.912 3.92e-06 0 0 0 Tank initStep + 1 4.33e+03 486 4.01e+03 3.92e-06 3.92e-06 5.92e+03 5.92e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 35, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.856 0.683 0.917 2.43e-06 0 0 0 Tank initStep + 1 5e+03 4.28e+03 -4.78e+03 2.43e-06 0 8.13e+03 8.13e+03 World Transportation + 2 5e+03 4.28e+03 -4.78e+03 2.43e-06 0 0 8.13e+03 Tank Transportation + 3 4.91e+03 4.42e+03 -5e+03 2.43e-06 0 282 8.41e+03 World Transportation + 4 1.28e+03 1e+04 -5.84e+03 2.43e-06 0 6.71e+03 1.51e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 34, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.873 0.703 0.909 3.86e-06 0 0 0 Tank initStep + 1 -1.57e+03 2.18e+03 1.98e+03 3.86e-06 3.86e-06 3.34e+03 3.34e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 31 0.876 0.707 0.907 0.0409 0 0 1.69 Tank initStep + 32 0.876 0.708 0.906 0.0399 0.000991 0.00222 1.69 Tank msc + 33 0.878 0.713 0.895 0.0243 0.0156 0.0183 1.71 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 38, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.877 0.711 0.898 3.2e-06 0 0 0 Tank initStep + 1 -295 2e+03 -52.9 3.2e-06 0 2.02e+03 2.02e+03 Bubble Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 37, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.876 0.709 0.904 2.68e-06 0 0 0 Tank initStep + 1 -5e+03 -1.13e+03 4.75e+03 2.68e-06 0 6.99e+03 6.99e+03 World Transportation + 2 -5e+03 -1.13e+03 4.75e+03 2.68e-06 0 0 6.99e+03 Tank Transportation + 3 -4.57e+03 -1.59e+03 5e+03 2.68e-06 0 682 7.67e+03 World Transportation + 4 -4.57e+03 -1.59e+03 5e+03 2.68e-06 0 0 7.67e+03 Tank Transportation + 5 -382 -5e+03 1.53e+03 2.68e-06 0 6.42e+03 1.41e+04 World Transportation + 6 -382 -5e+03 1.53e+03 2.68e-06 0 0 1.41e+04 Tank Transportation + 7 3.43e+03 1.46e+03 -1.38e+03 2.68e-06 2.68e-06 8.05e+03 2.21e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 33 0.878 0.713 0.895 0.0243 0 0 1.71 Tank initStep + 34 0.878 0.712 0.894 0.0238 0.000509 0.000872 1.71 Tank msc + 35 0.877 0.707 0.893 0.00468 0.0191 0.0105 1.72 Tank eIoni + 36 0.877 0.707 0.893 0 0.00468 0.000584 1.72 Tank eIoni + 37 0.877 0.707 0.893 0 0 0 1.72 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 40, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.877 0.707 0.893 0.511 0 0 0 Tank initStep + 1 3.21 77.2 -20.8 0.206 1.42e-05 79.5 79.5 Tank compt + 2 -7.29 73.5 -6.53 0.139 1.42e-05 18.1 97.6 Tank compt + 3 -10 74.7 -8.98 0.133 2.92e-05 3.85 101 Tank compt + 4 -21.1 91.8 -15 0.113 1.42e-05 21.3 123 Tank compt + 5 -16.9 101 -51.3 0.0718 0.000537 37.7 160 Tank compt + 6 -31.4 88.8 -28.5 0.0712 1.36e-05 29.7 190 Tank compt + 7 -42 85.1 -19.7 0.07 1.42e-05 14.3 204 Tank compt + 8 -59.2 70.6 -13.3 0.0667 1.42e-05 23.4 228 Tank compt + 9 -62.1 71.1 -10.6 0.066 2.92e-05 4.02 232 Tank compt + 10 -85.8 60.8 7.61 0.0561 1.36e-05 31.6 263 Tank compt + 11 -85.7 62.5 7.63 0.049 1.36e-05 1.72 265 Tank compt + 12 70.8 7.49 4.05 0.0419 1.42e-05 166 431 Tank compt + 13 -94.5 18.2 -115 0.0367 1.36e-05 204 635 Tank compt + 14 -54.5 -3.18 -101 0 0.000537 47.5 683 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 54, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -54.5 -3.18 -101 0.0362 0 0 0 Tank initStep + 1 -54.5 -3.19 -101 0.0279 0.0083 0.00192 0.00192 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 55, Parent ID = 54 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -54.5 -3.18 -101 2.12e-06 0 0 0 Tank initStep + 1 3.59e+03 -5e+03 505 2.12e-06 0 6.21e+03 6.21e+03 World Transportation + 2 1e+04 -6.88e+03 1.89e+03 2.12e-06 0 6.82e+03 1.3e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 54, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 -54.5 -3.19 -101 0.0279 0 0 0.00192 Tank initStep + 2 -54.5 -3.19 -101 0.0268 0.00108 0.00121 0.00313 Tank msc + 3 -54.5 -3.19 -101 0.00241 0.0244 0.0132 0.0163 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 57, Parent ID = 54 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -54.5 -3.19 -101 3.25e-06 0 0 0 Tank initStep + 1 -38.5 -1.06e+03 631 3.25e-06 3.25e-06 1.29e+03 1.29e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 56, Parent ID = 54 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -54.5 -3.19 -101 3.64e-06 0 0 0 Tank initStep + 1 586 -3.79e+03 1.42e+03 3.64e-06 3.64e-06 4.13e+03 4.13e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 54, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 -54.5 -3.19 -101 0.00241 0 0 0.0163 Tank initStep + 4 -54.5 -3.19 -101 0.0023 0.000118 1.71e-05 0.0163 Tank msc + 5 -54.5 -3.19 -101 0 0.0023 0.000197 0.0165 Tank eIoni + 6 -54.5 -3.19 -101 0 0 0 0.0165 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 53, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -94.5 18.2 -115 0.00517 0 0 0 Tank initStep + 1 -94.5 18.2 -115 0.00502 0.000153 6.25e-05 6.25e-05 Tank msc + 2 -94.5 18.2 -115 0 0.00502 0.000742 0.000805 Tank eIoni + 3 -94.5 18.2 -115 0 0 0 0.000805 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 52, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 70.8 7.49 4.05 0.00711 0 0 0 Tank initStep + 1 70.8 7.49 4.05 0.00701 0.000101 0.000109 0.000109 Tank msc + 2 70.8 7.49 4.05 0 0.00701 0.00133 0.00144 Tank eIoni + 3 70.8 7.49 4.05 0 0 0 0.00144 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -85.7 62.5 7.63 0.00705 0 0 0 Tank initStep + 1 -85.7 62.5 7.63 0.00685 0.000198 0.000107 0.000107 Tank msc + 2 -85.7 62.5 7.63 0 0.00685 0.00128 0.00138 Tank eIoni + 3 -85.7 62.5 7.63 0 0 0 0.00138 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 50, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -85.8 60.8 7.61 0.00991 0 0 0 Tank initStep + 1 -85.8 60.8 7.61 0.00953 0.000375 0.000195 0.000195 Tank msc + 2 -85.8 60.8 7.61 0 0.00953 0.00228 0.00248 Tank eIoni + 3 -85.8 60.8 7.61 0 0 0 0.00248 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 58, Parent ID = 50 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -85.8 60.8 7.61 3.65e-06 0 0 0 Tank initStep + 1 951 733 997 3.65e-06 3.65e-06 1.58e+03 1.58e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -62.1 71.1 -10.6 0.000675 0 0 0 Tank initStep + 1 -62.1 71.1 -10.6 0.000656 1.84e-05 2.42e-06 2.42e-06 Tank msc + 2 -62.1 71.1 -10.6 0 0.000656 2.91e-05 3.15e-05 Tank eIoni + 3 -62.1 71.1 -10.6 0 0 0 3.15e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -59.2 70.6 -13.3 0.00322 0 0 0 Tank initStep + 1 -59.2 70.6 -13.3 0.00293 0.00029 2.78e-05 2.78e-05 Tank msc + 2 -59.2 70.6 -13.3 0 0.00293 0.000297 0.000324 Tank eIoni + 3 -59.2 70.6 -13.3 0 0 0 0.000324 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 47, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -42 85.1 -19.7 0.00123 0 0 0 Tank initStep + 1 -42 85.1 -19.7 0.00103 0.000199 5.79e-06 5.79e-06 Tank msc + 2 -42 85.1 -19.7 0 0.00103 5.55e-05 6.13e-05 Tank eIoni + 3 -42 85.1 -19.7 0 0 0 6.13e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 46, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -31.4 88.8 -28.5 0.000568 0 0 0 Tank initStep + 1 -31.4 88.8 -28.5 0.00053 3.75e-05 1.92e-06 1.92e-06 Tank msc + 2 -31.4 88.8 -28.5 0 0.00053 2.2e-05 2.4e-05 Tank eIoni + 3 -31.4 88.8 -28.5 0 0 0 2.4e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 45, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -16.9 101 -51.3 0.0411 0 0 0 Tank initStep + 1 -16.9 101 -51.3 0.0392 0.00192 0.0024 0.0024 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 59, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -16.9 101 -51.3 3.52e-06 0 0 0 Tank initStep + 1 12 1.19e+03 -284 3.52e-06 3.52e-06 1.12e+03 1.12e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 45, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 -16.9 101 -51.3 0.0392 0 0 0.0024 Tank initStep + 2 -16.9 101 -51.3 0.0385 0.000667 0.00221 0.00461 Tank msc + 3 -16.9 101 -51.4 0.0213 0.0172 0.0184 0.023 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 60, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -16.9 101 -51.3 3.41e-06 0 0 0 Tank initStep + 1 5e+03 198 1.93e+03 3.41e-06 0 5.4e+03 5.4e+03 World Transportation + 2 1e+04 1.94e+03 7.9e+03 3.41e-06 0 7.98e+03 1.34e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 45, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 -16.9 101 -51.4 0.0213 0 0 0.023 Tank initStep + 4 -16.9 101 -51.4 0.0201 0.0012 0.000752 0.0237 Tank msc + 5 -16.9 101 -51.4 0 0.0201 0.0085 0.0322 Tank eIoni + 6 -16.9 101 -51.4 0 0 0 0.0322 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 61, Parent ID = 45 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -16.9 101 -51.4 2.96e-06 0 0 0 Tank initStep + 1 2.52e+03 5e+03 -4.24e+03 2.96e-06 0 6.93e+03 6.93e+03 World Transportation + 2 2.52e+03 5e+03 -4.24e+03 2.96e-06 0 0 6.93e+03 Tank Transportation + 3 4.11e+03 2.88e+03 -5e+03 2.96e-06 0 2.76e+03 9.69e+03 World Transportation + 4 4.11e+03 2.88e+03 -5e+03 2.96e-06 0 0 9.69e+03 Tank Transportation + 5 5e+03 1.72e+03 -3.97e+03 2.96e-06 0 1.79e+03 1.15e+04 World Transportation + 6 5e+03 1.72e+03 -3.97e+03 2.96e-06 0 0 1.15e+04 Tank Transportation + 7 4.3e+03 -5e+03 464 2.96e-06 0 8.08e+03 1.96e+04 World Transportation + 8 4.3e+03 -5e+03 464 2.96e-06 0 0 1.96e+04 Tank Transportation + 9 4.3e+03 -1.97e+03 5e+03 2.96e-06 0 5.45e+03 2.5e+04 World Transportation + 10 7.25e+03 8.77e+03 1e+04 2.96e-06 0 1.22e+04 3.72e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 44, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -21.1 91.8 -15 0.0193 0 0 0 Tank initStep + 1 -21.1 91.8 -15 0.019 0.000257 0.00063 0.00063 Tank msc + 2 -21.1 91.8 -15 0 0.019 0.00769 0.00832 Tank eIoni + 3 -21.1 91.8 -15 0 0 0 0.00832 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 64, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -21.1 91.8 -15 2.21e-06 0 0 0 Tank initStep + 1 -2.25e+03 -5e+03 220 2.21e-06 0 5.56e+03 5.56e+03 World Transportation + 2 -5.13e+03 -1e+04 781 2.21e-06 0 5.8e+03 1.14e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 63, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -21.1 91.8 -15 3.2e-06 0 0 0 Tank initStep + 1 -4.16e+03 3.36e+03 5e+03 3.2e-06 0 7.28e+03 7.28e+03 World Transportation + 2 -4.16e+03 3.36e+03 5e+03 3.2e-06 0 0 7.28e+03 Tank Transportation + 3 -5e+03 3.18e+03 3.83e+03 3.2e-06 0 1.46e+03 8.74e+03 World Transportation + 4 -5e+03 3.18e+03 3.83e+03 3.2e-06 0 0 8.74e+03 Tank Transportation + 5 -3.58e+03 3.47e+03 2.72e+03 3.2e-06 3.2e-06 1.82e+03 1.06e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 62, Parent ID = 44 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -21.1 91.8 -15 2.47e-06 0 0 0 Tank initStep + 1 619 -5e+03 3e+03 2.47e-06 0 5.95e+03 5.95e+03 World Transportation + 2 619 -5e+03 3e+03 2.47e-06 0 0 5.95e+03 Tank Transportation + 3 -300 -3.92e+03 5e+03 2.47e-06 0 2.45e+03 8.4e+03 World Transportation + 4 -1e+04 6.02e+03 6.81e+03 2.47e-06 0 1.4e+04 2.24e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 43, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -10 74.7 -8.98 0.00678 0 0 0 Tank initStep + 1 -10 74.7 -8.98 0.00654 0.000242 0.0001 0.0001 Tank msc + 2 -10 74.7 -8.98 0 0.00654 0.00117 0.00127 Tank eIoni + 3 -10 74.7 -8.98 0 0 0 0.00127 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 42, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -7.29 73.5 -6.53 0.0664 0 0 0 Tank initStep + 1 -7.29 73.5 -6.52 0.063 0.00333 0.00558 0.00558 Tank msc + 2 -7.29 73.5 -6.5 0.0511 0.0119 0.0275 0.0331 Tank eIoni + 3 -7.31 73.5 -6.51 0.0369 0.0142 0.023 0.0561 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 65, Parent ID = 42 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -7.3 73.5 -6.51 3.59e-06 0 0 0 Tank initStep + 1 -2.65e+03 -763 5e+03 3.59e-06 0 5.72e+03 5.72e+03 World Transportation + 2 -2.65e+03 -763 5e+03 3.59e-06 0 0 5.72e+03 Tank Transportation + 3 -5e+03 561 3.42e+03 3.59e-06 0 3.13e+03 8.85e+03 World Transportation + 4 -5e+03 561 3.42e+03 3.59e-06 0 0 8.85e+03 Tank Transportation + 5 -4.57e+03 2.07e+03 5e+03 3.59e-06 0 2.23e+03 1.11e+04 World Transportation + 6 -4.57e+03 2.07e+03 5e+03 3.59e-06 0 0 1.11e+04 Tank Transportation + 7 -5e+03 3.09e+03 3.15e+03 3.59e-06 0 2.15e+03 1.32e+04 World Transportation + 8 -5e+03 3.09e+03 3.15e+03 3.59e-06 0 0 1.32e+04 Tank Transportation + 9 -3.12e+03 4e+03 648 3.59e-06 3.59e-06 3.26e+03 1.65e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 42, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 -7.31 73.5 -6.51 0.0369 0 0 0.0561 Tank initStep + 4 -7.31 73.5 -6.51 0.0358 0.00113 0.00199 0.0581 Tank msc + 5 -7.32 73.5 -6.51 0.0211 0.0146 0.0173 0.0754 Tank eIoni + 6 -7.32 73.5 -6.51 0 0.0211 0.00926 0.0846 Tank eIoni + 7 -7.32 73.5 -6.51 0 0 0 0.0846 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.21 77.2 -20.8 0.305 0 0 0 Tank initStep + 1 3.22 77.2 -20.8 0.239 0.066 0.0521 0.0521 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 66, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.21 77.2 -20.8 2.25e-06 0 0 0 Tank initStep + 1 5e+03 -2.34e+03 -1.42e+03 2.25e-06 0 5.72e+03 5.72e+03 World Transportation + 2 1e+04 -7.73e+03 -3.56e+03 2.25e-06 0 7.66e+03 1.34e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 3.22 77.2 -20.8 0.239 0 0 0.0521 Tank initStep + 2 3.23 77.2 -20.8 0.228 0.0109 0.0472 0.0994 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 67, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.23 77.2 -20.8 3.51e-06 0 0 0 Tank initStep + 1 -143 325 348 3.51e-06 3.51e-06 468 468 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 3.23 77.2 -20.8 0.228 0 0 0.0994 Tank initStep + 3 3.23 77.3 -20.9 0.215 0.0127 0.0439 0.143 Tank msc + 4 3.23 77.4 -20.9 0.189 0.0269 0.116 0.259 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 69, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.23 77.4 -20.9 4.09e-06 0 0 0 Tank initStep + 1 1.78e+03 -5e+03 -1.12e+03 4.09e-06 0 5.49e+03 5.49e+03 World Transportation + 2 5.01e+03 -1e+04 -2.21e+03 4.09e-06 0 6.05e+03 1.15e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 68, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.23 77.3 -20.9 2.77e-06 0 0 0 Tank initStep + 1 47.7 2e+03 -16.6 2.77e-06 2.77e-06 1.92e+03 1.92e+03 Bubble Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 3.23 77.4 -20.9 0.189 0 0 0.259 Tank initStep + 5 3.24 77.4 -20.9 0.18 0.0083 0.0324 0.292 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 70, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.23 77.4 -20.9 3.22e-06 0 0 0 Tank initStep + 1 -1.23e+03 5e+03 -2.74e+03 3.22e-06 0 5.76e+03 5.76e+03 World Transportation + 2 -1.23e+03 5e+03 -2.74e+03 3.22e-06 0 0 5.76e+03 Tank Transportation + 3 -1.56e+03 2.47e+03 -4.31e+03 3.22e-06 3.22e-06 2.99e+03 8.75e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 3.24 77.4 -20.9 0.18 0 0 0.292 Tank initStep + 6 3.25 77.4 -20.9 0.173 0.00698 0.0302 0.322 Tank msc + 7 3.27 77.5 -20.9 0.156 0.0175 0.0865 0.408 Tank eIoni + 8 3.27 77.6 -20.9 0.132 0.0235 0.0752 0.484 Tank eIoni + 9 3.28 77.6 -21 0.0869 0.0454 0.0611 0.545 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 72, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.28 77.6 -20.9 4e-06 0 0 0 Tank initStep + 1 -209 -2.54e+03 -5e+03 4e-06 0 5.63e+03 5.63e+03 World Transportation + 2 -209 -2.54e+03 -5e+03 4e-06 0 0 5.63e+03 Tank Transportation + 3 -288 -3.35e+03 -4.49e+03 4e-06 4e-06 960 6.59e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 71, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.28 77.6 -20.9 2.06e-06 0 0 0 Tank initStep + 1 642 2.22e+03 4.45e+03 2.06e-06 2.06e-06 5e+03 5e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 3.28 77.6 -21 0.0869 0 0 0.545 Tank initStep + 10 3.29 77.6 -21 0.0832 0.00371 0.00894 0.554 Tank msc + 11 3.3 77.6 -21 0.0668 0.0164 0.036 0.59 Tank eIoni + 12 3.31 77.6 -21 0.0397 0.0272 0.029 0.619 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 73, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.31 77.6 -21 3.36e-06 0 0 0 Tank initStep + 1 -3.18e+03 1.02e+03 -5e+03 3.36e-06 0 5.99e+03 5.99e+03 World Transportation + 2 -3.18e+03 1.02e+03 -5e+03 3.36e-06 0 0 5.99e+03 Tank Transportation + 3 -5e+03 690 -3.18e+03 3.36e-06 0 2.59e+03 8.58e+03 World Transportation + 4 -1e+04 1.07e+03 691 3.36e-06 0 6.34e+03 1.49e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 12 3.31 77.6 -21 0.0397 0 0 0.619 Tank initStep + 13 3.31 77.6 -21 0.0369 0.00281 0.00226 0.621 Tank msc + 14 3.31 77.6 -21 0.018 0.0188 0.0177 0.639 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 74, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.31 77.6 -21 3.15e-06 0 0 0 Tank initStep + 1 -5e+03 -425 3.69e+03 3.15e-06 0 6.25e+03 6.25e+03 World Transportation + 2 -5e+03 -425 3.69e+03 3.15e-06 0 0 6.25e+03 Tank Transportation + 3 -1.09e+03 -1.08e+03 5e+03 3.15e-06 0 4.18e+03 1.04e+04 World Transportation + 4 -1.09e+03 -1.08e+03 5e+03 3.15e-06 0 0 1.04e+04 Tank Transportation + 5 5e+03 -3.12e+03 589 3.15e-06 0 7.79e+03 1.82e+04 World Transportation + 6 5e+03 -3.12e+03 589 3.15e-06 0 0 1.82e+04 Tank Transportation + 7 4.42e+03 -3.85e+03 -79.1 3.15e-06 0 1.15e+03 1.94e+04 Tank OpRayleigh + 8 2.56e+03 -5.95 -5e+03 3.15e-06 0 6.52e+03 2.59e+04 World Transportation + 9 894 1.28e+03 -1e+04 3.15e-06 0 5.42e+03 3.13e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 40 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 14 3.31 77.6 -21 0.018 0 0 0.639 Tank initStep + 15 3.31 77.6 -21 0.0167 0.00133 0.000559 0.639 Tank msc + 16 3.31 77.6 -21 0 0.0167 0.0061 0.645 Tank eIoni + 17 3.31 77.6 -21 0 0 0 0.645 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 39, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.877 0.707 0.893 0.511 0 0 0 Tank initStep + 1 -3.39 -139 40.6 0.435 1.42e-05 146 146 Tank compt + 2 -49.4 -270 193 0.312 1.42e-05 206 352 Tank compt + 3 -54.8 -224 333 0.144 2.92e-05 146 498 Tank compt + 4 -44.5 -237 302 0.0958 1.42e-05 34.2 532 Tank compt + 5 -26.4 -168 378 0.0859 1.42e-05 104 637 Tank compt + 6 10.9 -163 381 0.0631 2.92e-05 37.7 675 Tank compt + 7 -71.5 -183 392 0.0605 1.42e-05 85.4 760 Tank compt + 8 -110 -176 443 0.049 1.36e-05 64.6 825 Tank compt + 9 -107 -176 438 0.0444 1.42e-05 6.35 831 Tank compt + 10 -116 -167 431 0.0388 1.36e-05 15.7 847 Tank compt + 11 -107 -165 436 0 0.000537 10.8 857 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 85, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -107 -165 436 0.0383 0 0 0 Tank initStep + 1 -107 -165 436 0.0368 0.00154 0.00212 0.00212 Tank msc + 2 -107 -165 436 0.0191 0.0177 0.0177 0.0198 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 86, Parent ID = 85 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -107 -165 436 2.11e-06 0 0 0 Tank initStep + 1 2.57e+03 -5e+03 -763 2.11e-06 0 5.65e+03 5.65e+03 World Transportation + 2 2.57e+03 -5e+03 -763 2.11e-06 0 0 5.65e+03 Tank Transportation + 3 2.86e+03 -4.57e+03 -910 2.11e-06 2.11e-06 541 6.19e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 85, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -107 -165 436 0.0191 0 0 0.0198 Tank initStep + 3 -107 -165 436 0.0186 0.000462 0.000619 0.0204 Tank msc + 4 -107 -165 436 0 0.0186 0.00741 0.0278 Tank eIoni + 5 -107 -165 436 0 0 0 0.0278 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 84, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -167 431 0.00552 0 0 0 Tank initStep + 1 -116 -167 431 0.00524 0.000279 7e-05 7e-05 Tank msc + 2 -116 -167 431 0 0.00524 0.000799 0.000869 Tank eIoni + 3 -116 -167 431 0 0 0 0.000869 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 87, Parent ID = 84 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -116 -167 431 2.18e-06 0 0 0 Tank initStep + 1 763 -1.54e+03 -5e+03 2.18e-06 0 5.67e+03 5.67e+03 World Transportation + 2 763 -1.54e+03 -5e+03 2.18e-06 0 0 5.67e+03 Tank Transportation + 3 5e+03 -2.03e+03 1.94e+03 2.18e-06 0 8.14e+03 1.38e+04 World Transportation + 4 5e+03 -2.03e+03 1.94e+03 2.18e-06 0 0 1.38e+04 Tank Transportation + 5 -1.52e+03 -3.44e+03 2.68e+03 2.18e-06 2.18e-06 6.71e+03 2.05e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -107 -176 438 0.00457 0 0 0 Tank initStep + 1 -107 -176 438 0.00443 0.000141 5.06e-05 5.06e-05 Tank msc + 2 -107 -176 438 0 0.00443 0.000599 0.00065 Tank eIoni + 3 -107 -176 438 0 0 0 0.00065 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -110 -176 443 0.0116 0 0 0 Tank initStep + 1 -110 -176 443 0.0105 0.00107 0.000256 0.000256 Tank msc + 2 -110 -176 443 0 0.0105 0.0027 0.00296 Tank eIoni + 3 -110 -176 443 0 0 0 0.00296 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 81, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -71.5 -183 392 0.00258 0 0 0 Tank initStep + 1 -71.5 -183 392 0.00252 5.99e-05 1.91e-05 1.91e-05 Tank msc + 2 -71.5 -183 392 0 0.00252 0.00023 0.000249 Tank eIoni + 3 -71.5 -183 392 0 0 0 0.000249 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 80, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 10.9 -163 381 0.0227 0 0 0 Tank initStep + 1 10.9 -163 381 0.022 0.000747 0.000842 0.000842 Tank msc + 2 10.9 -163 381 0 0.022 0.00992 0.0108 Tank eIoni + 3 10.9 -163 381 0 0 0 0.0108 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 79, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -26.4 -168 378 0.00987 0 0 0 Tank initStep + 1 -26.4 -168 378 0.00953 0.000346 0.000194 0.000194 Tank msc + 2 -26.4 -168 378 0 0.00953 0.00228 0.00247 Tank eIoni + 3 -26.4 -168 378 0 0 0 0.00247 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 88, Parent ID = 79 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -26.4 -168 378 3.42e-06 0 0 0 Tank initStep + 1 -755 -5e+03 -473 3.42e-06 0 4.96e+03 4.96e+03 World Transportation + 2 -1.75e+03 -1e+04 -2.17e+03 3.42e-06 0 5.37e+03 1.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 78, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -44.5 -237 302 0.0479 0 0 0 Tank initStep + 1 -44.5 -237 302 0.0466 0.00134 0.00315 0.00315 Tank msc + 2 -44.5 -237 302 0.0337 0.0129 0.0214 0.0245 Tank eIoni + 3 -44.5 -237 302 0.0112 0.0225 0.0164 0.041 Tank eIoni + 4 -44.5 -237 302 0 0.0112 0.00303 0.044 Tank eIoni + 5 -44.5 -237 302 0 0 0 0.044 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 89, Parent ID = 78 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -44.5 -237 302 3.8e-06 0 0 0 Tank initStep + 1 3.12e+03 -1.09e+03 -282 3.8e-06 3.8e-06 3.33e+03 3.33e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 77, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -54.8 -224 333 0.168 0 0 0 Tank initStep + 1 -54.8 -224 333 0.165 0.00309 0.0269 0.0269 Tank msc + 2 -54.8 -224 333 0.0547 0.11 0.081 0.108 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 92, Parent ID = 77 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -54.8 -224 333 3.21e-06 0 0 0 Tank initStep + 1 4.31e+03 -3.19e+03 -3e+03 3.21e-06 3.21e-06 6.24e+03 6.24e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 91, Parent ID = 77 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -54.8 -224 333 3.97e-06 0 0 0 Tank initStep + 1 -5e+03 1.97e+03 1.1e+03 3.97e-06 0 5.46e+03 5.46e+03 World Transportation + 2 -1e+04 7.83e+03 5.85e+03 3.97e-06 0 9.06e+03 1.45e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 90, Parent ID = 77 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -54.8 -224 333 2.28e-06 0 0 0 Tank initStep + 1 5e+03 3.33e+03 2.74e+03 2.28e-06 0 6.63e+03 6.63e+03 World Transportation + 2 5e+03 3.33e+03 2.74e+03 2.28e-06 0 0 6.63e+03 Tank Transportation + 3 4.66e+03 2.45e+03 4.09e+03 2.28e-06 2.28e-06 1.65e+03 8.28e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 77, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -54.8 -224 333 0.0547 0 0 0.108 Tank initStep + 3 -54.7 -224 333 0.0521 0.00261 0.00398 0.112 Tank msc + 4 -54.7 -224 333 0.0383 0.0138 0.0234 0.135 Tank eIoni + 5 -54.7 -224 333 0.0224 0.0158 0.0183 0.154 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 93, Parent ID = 77 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -54.7 -224 333 2.18e-06 0 0 0 Tank initStep + 1 -1.55e+03 -5e+03 -204 2.18e-06 0 5.03e+03 5.03e+03 World Transportation + 2 -1.55e+03 -5e+03 -204 2.18e-06 0 0 5.03e+03 Tank Transportation + 3 -3.77e+03 -3.69e+03 719 2.18e-06 2.18e-06 2.74e+03 7.77e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 77, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 -54.7 -224 333 0.0224 0 0 0.154 Tank initStep + 6 -54.7 -224 333 0.0219 0.000574 0.000823 0.154 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 94, Parent ID = 77 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -54.7 -224 333 3.61e-06 0 0 0 Tank initStep + 1 -981 -2.89e+03 -5e+03 3.61e-06 0 6.03e+03 6.03e+03 World Transportation + 2 -7.69e+03 -1e+04 -8.96e+03 3.61e-06 0 1.05e+04 1.66e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 77, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 -54.7 -224 333 0.0219 0 0 0.154 Tank initStep + 7 -54.7 -224 333 0.0213 0.00055 0.000786 0.155 Tank msc + 8 -54.7 -224 333 0 0.0213 0.00939 0.165 Tank eIoni + 9 -54.7 -224 333 0 0 0 0.165 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 95, Parent ID = 77 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -54.7 -224 333 3.43e-06 0 0 0 Tank initStep + 1 -2.26e+03 1.29e+03 5e+03 3.43e-06 0 5.38e+03 5.38e+03 World Transportation + 2 -2.26e+03 1.29e+03 5e+03 3.43e-06 0 0 5.38e+03 Tank Transportation + 3 -5e+03 2.92e+03 -876 3.43e-06 0 6.69e+03 1.21e+04 World Transportation + 4 -5e+03 2.92e+03 -876 3.43e-06 0 0 1.21e+04 Tank Transportation + 5 -3.11e+03 4.1e+03 -5e+03 3.43e-06 0 4.69e+03 1.68e+04 World Transportation + 6 -3.11e+03 4.1e+03 -5e+03 3.43e-06 0 0 1.68e+04 Tank Transportation + 7 -1.79e+03 5e+03 -2.04e+03 3.43e-06 0 3.36e+03 2.01e+04 World Transportation + 8 -1.79e+03 5e+03 -2.04e+03 3.43e-06 0 0 2.01e+04 Tank Transportation + 9 -2.71e+03 -308 1.1e+03 3.43e-06 3.43e-06 6.24e+03 2.64e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -49.4 -270 193 0.123 0 0 0 Tank initStep + 1 -49.4 -270 193 0.119 0.00446 0.0162 0.0162 Tank msc + 2 -49.4 -270 193 0.104 0.0149 0.0537 0.0699 Tank eIoni + 3 -49.4 -270 193 0.0854 0.0186 0.0459 0.116 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 96, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -49.4 -270 193 3.87e-06 0 0 0 Tank initStep + 1 110 -246 777 3.87e-06 3.87e-06 606 606 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 -49.4 -270 193 0.0854 0 0 0.116 Tank initStep + 4 -49.4 -270 193 0.0824 0.00302 0.00868 0.124 Tank msc + 5 -49.4 -270 193 0.0653 0.0171 0.0356 0.16 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 97, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -49.4 -270 193 2.21e-06 0 0 0 Tank initStep + 1 -5e+03 -2.25e+03 4.54e+03 2.21e-06 0 6.88e+03 6.88e+03 World Transportation + 2 -5e+03 -2.25e+03 4.54e+03 2.21e-06 0 0 6.88e+03 Tank Transportation + 3 -4.47e+03 -2.87e+03 5e+03 2.21e-06 0 930 7.81e+03 World Transportation + 4 -4.47e+03 -2.87e+03 5e+03 2.21e-06 0 0 7.81e+03 Tank Transportation + 5 -3.04e+03 -5e+03 4.13e+03 2.21e-06 0 2.72e+03 1.05e+04 World Transportation + 6 1.89e+03 -1e+04 1.35e+03 2.21e-06 0 7.55e+03 1.81e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 -49.4 -270 193 0.0653 0 0 0.16 Tank initStep + 6 -49.4 -270 193 0.0629 0.00238 0.00543 0.165 Tank msc + 7 -49.4 -270 193 0.0397 0.0232 0.0275 0.193 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 99, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -49.4 -270 193 3.48e-06 0 0 0 Tank initStep + 1 5e+03 4.76e+03 -2.02e+03 3.48e-06 0 7.46e+03 7.46e+03 World Transportation + 2 6.72e+03 1e+04 -3.16e+03 3.48e-06 0 5.63e+03 1.31e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 98, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -49.4 -270 193 3.59e-06 0 0 0 Tank initStep + 1 860 -267 1.43e+03 3.59e-06 3.59e-06 1.53e+03 1.53e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 -49.4 -270 193 0.0397 0 0 0.193 Tank initStep + 8 -49.4 -270 193 0.039 0.000683 0.00226 0.195 Tank msc + 9 -49.4 -270 193 0 0.039 0.0186 0.214 Tank eIoni + 10 -49.4 -270 193 0 0 0 0.214 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 100, Parent ID = 76 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -49.4 -270 193 4.03e-06 0 0 0 Tank initStep + 1 3.89e+03 -2.59e+03 -1.42e+03 4.03e-06 4.03e-06 4.85e+03 4.85e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 75, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -3.39 -139 40.6 0.0758 0 0 0 Tank initStep + 1 -3.39 -139 40.6 0.0735 0.00232 0.00705 0.00705 Tank msc + 2 -3.4 -139 40.6 0.0637 0.00977 0.0317 0.0388 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 101, Parent ID = 75 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -3.39 -139 40.6 2.68e-06 0 0 0 Tank initStep + 1 -5e+03 -11.7 3.34e+03 2.68e-06 0 5.99e+03 5.99e+03 World Transportation + 2 -5e+03 -11.7 3.34e+03 2.68e-06 0 0 5.99e+03 Tank Transportation + 3 -2.67e+03 174 5e+03 2.68e-06 0 2.87e+03 8.86e+03 World Transportation + 4 -2.67e+03 174 5e+03 2.68e-06 0 0 8.86e+03 Tank Transportation + 5 5e+03 1.46e+03 4.36e+03 2.68e-06 0 7.8e+03 1.67e+04 World Transportation + 6 1e+04 2.33e+03 4.44e+03 2.68e-06 0 5.08e+03 2.17e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 75, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -3.4 -139 40.6 0.0637 0 0 0.0388 Tank initStep + 3 -3.4 -139 40.6 0.0436 0.0201 0.0052 0.044 Tank msc + 4 -3.4 -139 40.6 0.0262 0.0175 0.0203 0.0643 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 104, Parent ID = 75 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -3.4 -139 40.6 2.55e-06 0 0 0 Tank initStep + 1 -1.37e+03 -5e+03 -842 2.55e-06 0 5.13e+03 5.13e+03 World Transportation + 2 -3.95e+03 -1e+04 -3.39e+03 2.55e-06 0 6.18e+03 1.13e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 103, Parent ID = 75 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -3.4 -139 40.6 3.18e-06 0 0 0 Tank initStep + 1 -5e+03 1.19e+03 -4.74e+03 3.18e-06 0 7.04e+03 7.04e+03 World Transportation + 2 -5e+03 1.19e+03 -4.74e+03 3.18e-06 0 0 7.04e+03 Tank Transportation + 3 -4.73e+03 1.38e+03 -5e+03 3.18e-06 0 420 7.46e+03 World Transportation + 4 -4.73e+03 1.38e+03 -5e+03 3.18e-06 0 0 7.46e+03 Tank Transportation + 5 -2.43e+03 5e+03 -133 3.18e-06 0 6.48e+03 1.39e+04 World Transportation + 6 6.65e+03 5.85e+03 1e+04 3.18e-06 0 1.36e+04 2.76e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 102, Parent ID = 75 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -3.4 -139 40.6 3.63e-06 0 0 0 Tank initStep + 1 5e+03 -1.7e+03 -796 3.63e-06 0 5.31e+03 5.31e+03 World Transportation + 2 1e+04 -4.98e+03 -1.54e+03 3.63e-06 0 6.03e+03 1.13e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 75, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 -3.4 -139 40.6 0.0262 0 0 0.0643 Tank initStep + 5 -3.4 -139 40.6 0.0251 0.0011 0.00108 0.0654 Tank msc + 6 -3.4 -139 40.6 0.00321 0.0219 0.0121 0.0775 Tank eIoni + 7 -3.4 -139 40.6 0 0.00321 0.000345 0.0779 Tank eIoni + 8 -3.4 -139 40.6 0 0 0 0.0779 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 105, Parent ID = 75 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -3.4 -139 40.6 3.67e-06 0 0 0 Tank initStep + 1 -2.12e+03 -5e+03 -2.84e+03 3.67e-06 0 6.04e+03 6.04e+03 World Transportation + 2 -8.27e+03 -1e+04 -6.04e+03 3.67e-06 0 8.54e+03 1.46e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 0.5 0 0 0 Tank initStep + 1 0.139 -0.000975 -0.000191 0.468 0.0315 0.14 0.14 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0289 -0.000202 -3.97e-05 3.08e-06 0 0 0 Tank initStep + 1 -4.31e+03 601 -5e+03 3.08e-06 0 6.63e+03 6.63e+03 World Transportation + 2 -4.31e+03 601 -5e+03 3.08e-06 0 0 6.63e+03 Tank Transportation + 3 -5e+03 709 -4.63e+03 3.08e-06 0 785 7.42e+03 World Transportation + 4 -5e+03 709 -4.63e+03 3.08e-06 0 0 7.42e+03 Tank Transportation + 5 -640 1.64e+03 5e+03 3.08e-06 0 1.06e+04 1.8e+04 World Transportation + 6 -640 1.64e+03 5e+03 3.08e-06 0 0 1.8e+04 Tank Transportation + 7 -5e+03 -1.5e+03 1.83e+03 3.08e-06 0 6.24e+03 2.43e+04 World Transportation + 8 -9.29e+03 -1e+04 -122 3.08e-06 0 9.72e+03 3.4e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.00637 -4.46e-05 -8.75e-06 3.3e-06 0 0 0 Tank initStep + 1 5e+03 -3.01e+03 255 3.3e-06 0 5.84e+03 5.84e+03 World Transportation + 2 5e+03 -3.01e+03 255 3.3e-06 0 0 5.84e+03 Tank Transportation + 3 3.77e+03 -5e+03 509 3.3e-06 0 2.35e+03 8.2e+03 World Transportation + 4 -1.57e+03 -1e+04 270 3.3e-06 0 7.31e+03 1.55e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0225 -0.000158 -3.09e-05 2.96e-06 0 0 0 Tank initStep + 1 5e+03 -2.31e+03 1.89e+03 2.96e-06 0 5.82e+03 5.82e+03 World Transportation + 2 1e+04 -4.45e+03 5.73e+03 2.96e-06 0 6.65e+03 1.25e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 0.139 -0.000975 -0.000191 0.468 0 0 0.14 Tank initStep + 2 0.257 -0.0304 -0.0119 0.429 0.0394 0.123 0.262 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 10, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.166 -0.00772 -0.00288 3.34e-06 0 0 0 Tank initStep + 1 5e+03 -700 1.93e+03 3.34e-06 0 5.4e+03 5.4e+03 World Transportation + 2 1e+04 -1.17e+03 5.35e+03 3.34e-06 0 6.07e+03 1.15e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 9, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.226 -0.0226 -0.0088 3.36e-06 0 0 0 Tank initStep + 1 -3.36e+03 4.99e+03 -5e+03 3.36e-06 0 7.82e+03 7.82e+03 World Transportation + 2 -3.36e+03 4.99e+03 -5e+03 3.36e-06 0 0 7.82e+03 Tank Transportation + 3 -3.36e+03 5e+03 -4.99e+03 3.36e-06 0 9.89 7.83e+03 World Transportation + 4 -9.02e+03 1e+04 3.63e+03 3.36e-06 0 1.15e+04 1.93e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 8, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.157 -0.00554 -0.00201 3.61e-06 0 0 0 Tank initStep + 1 5e+03 4.13e+03 -1.2e+03 3.61e-06 0 6.59e+03 6.59e+03 World Transportation + 2 5e+03 4.13e+03 -1.2e+03 3.61e-06 0 0 6.59e+03 Tank Transportation + 3 3.51e+03 5e+03 -1.56e+03 3.61e-06 0 1.77e+03 8.36e+03 World Transportation + 4 3.51e+03 5e+03 -1.56e+03 3.61e-06 0 0 8.36e+03 Tank Transportation + 5 1.55e+03 -5e+03 -4.94e+03 3.61e-06 0 1.07e+04 1.91e+04 World Transportation + 6 -1.77e+03 -9.56e+03 -1e+04 3.61e-06 0 7.58e+03 2.67e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.151 -0.00393 -0.00137 2.53e-06 0 0 0 Tank initStep + 1 -5e+03 3.7e+03 4.67e+03 2.53e-06 0 7.78e+03 7.78e+03 World Transportation + 2 -5e+03 3.7e+03 4.67e+03 2.53e-06 0 0 7.78e+03 Tank Transportation + 3 -4.51e+03 3.84e+03 5e+03 2.53e-06 0 605 8.39e+03 World Transportation + 4 -4.51e+03 3.84e+03 5e+03 2.53e-06 0 0 8.39e+03 Tank Transportation + 5 -3.64e+03 5e+03 3.39e+03 2.53e-06 0 2.17e+03 1.06e+04 World Transportation + 6 -3.64e+03 5e+03 3.39e+03 2.53e-06 0 0 1.06e+04 Tank Transportation + 7 -2.08e+03 113 -2.65e+03 2.53e-06 2.53e-06 7.93e+03 1.85e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.17 -0.00864 -0.00325 2.44e-06 0 0 0 Tank initStep + 1 5e+03 146 1.7e+03 2.44e-06 0 5.28e+03 5.28e+03 World Transportation + 2 5e+03 146 1.7e+03 2.44e-06 0 0 5.28e+03 Tank Transportation + 3 2.56e+03 2.52e+03 5e+03 2.44e-06 0 4.74e+03 1e+04 World Transportation + 4 -509 9.35e+03 1e+04 2.44e-06 0 9.01e+03 1.9e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.169 -0.00853 -0.00321 3.07e-06 0 0 0 Tank initStep + 1 5e+03 486 -2.69e+03 3.07e-06 0 5.7e+03 5.7e+03 World Transportation + 2 1e+04 4.21e+03 -6.55e+03 3.07e-06 0 7.33e+03 1.3e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 0.257 -0.0304 -0.0119 0.429 0 0 0.262 Tank initStep + 3 0.349 -0.0616 0.0159 0.412 0.0168 0.103 0.365 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 14, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.309 -0.0479 0.00364 2.31e-06 0 0 0 Tank initStep + 1 573 5e+03 4.74e+03 2.31e-06 0 6.91e+03 6.91e+03 World Transportation + 2 573 5e+03 4.74e+03 2.31e-06 0 0 6.91e+03 Tank Transportation + 3 633 4.82e+03 5e+03 2.31e-06 0 324 7.24e+03 World Transportation + 4 1.58e+03 -7.25e+03 1e+04 2.31e-06 0 1.31e+04 2.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 13, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.341 -0.059 0.0136 2.25e-06 0 0 0 Tank initStep + 1 3.84e+03 -297 -500 2.25e-06 2.25e-06 3.89e+03 3.89e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 12, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.309 -0.048 0.00377 3.97e-06 0 0 0 Tank initStep + 1 4.66e+03 -5e+03 1.1e+03 3.97e-06 0 6.92e+03 6.92e+03 World Transportation + 2 4.66e+03 -5e+03 1.1e+03 3.97e-06 0 0 6.92e+03 Tank Transportation + 3 5e+03 -4.54e+03 1.03e+03 3.97e-06 0 576 7.5e+03 World Transportation + 4 5e+03 -4.54e+03 1.03e+03 3.97e-06 0 0 7.5e+03 Tank Transportation + 5 3.52e+03 4.47e+03 222 3.97e-06 3.97e-06 9.16e+03 1.67e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 11, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.317 -0.0509 0.00631 2.16e-06 0 0 0 Tank initStep + 1 5e+03 -374 -633 2.16e-06 0 5.05e+03 5.05e+03 World Transportation + 2 5e+03 -374 -633 2.16e-06 0 0 5.05e+03 Tank Transportation + 3 -5e+03 -1.91e+03 -4.5e+03 2.16e-06 0 1.08e+04 1.59e+04 World Transportation + 4 -5e+03 -1.91e+03 -4.5e+03 2.16e-06 0 0 1.59e+04 Tank Transportation + 5 5e+03 -4.94e+03 -326 2.16e-06 0 1.12e+04 2.71e+04 World Transportation + 6 5e+03 -4.94e+03 -326 2.16e-06 0 0 2.71e+04 Tank Transportation + 7 4.99e+03 -5e+03 -297 2.16e-06 0 70.1 2.72e+04 World Transportation + 8 3e+03 -1e+04 4.95e+03 2.16e-06 0 7.51e+03 3.47e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 0.349 -0.0616 0.0159 0.412 0 0 0.365 Tank initStep + 4 0.441 -0.0756 0.0342 0.399 0.0137 0.0948 0.46 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 15, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.415 -0.0716 0.0289 3e-06 0 0 0 Tank initStep + 1 5e+03 1.16e+03 2.87e+03 3e-06 0 5.88e+03 5.88e+03 World Transportation + 2 5e+03 1.16e+03 2.87e+03 3e-06 0 0 5.88e+03 Tank Transportation + 3 1.05e+03 2.97e+03 5e+03 3e-06 0 4.84e+03 1.07e+04 World Transportation + 4 1.05e+03 2.97e+03 5e+03 3e-06 0 0 1.07e+04 Tank Transportation + 5 -1.89e+03 3.48e+03 3.23e+03 3e-06 0 3.47e+03 1.42e+04 Tank OpRayleigh + 6 -421 3.08e+03 5e+03 3e-06 0 2.33e+03 1.65e+04 World Transportation + 7 -421 3.08e+03 5e+03 3e-06 0 0 1.65e+04 Tank Transportation + 8 4.68e+03 3.15e+03 -3.5e+03 3e-06 3e-06 9.91e+03 2.64e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 0.441 -0.0756 0.0342 0.399 0 0 0.46 Tank initStep + 5 0.528 -0.0926 0.0354 0.383 0.0155 0.0886 0.548 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 20, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.499 -0.0871 0.035 2.34e-06 0 0 0 Tank initStep + 1 -2.3e+03 -1.94e+03 5e+03 2.34e-06 0 5.83e+03 5.83e+03 World Transportation + 2 -2.3e+03 -1.94e+03 5e+03 2.34e-06 0 0 5.83e+03 Tank Transportation + 3 -5e+03 -4.04e+03 1.94e+03 2.34e-06 0 4.59e+03 1.04e+04 World Transportation + 4 -5e+03 -4.04e+03 1.94e+03 2.34e-06 0 0 1.04e+04 Tank Transportation + 5 -4.85e+03 -5e+03 1.02e+03 2.34e-06 0 1.33e+03 1.18e+04 World Transportation + 6 -4.85e+03 -5e+03 1.02e+03 2.34e-06 0 0 1.18e+04 Tank Transportation + 7 -4.45e+03 -3.1e+03 -1.17e+03 2.34e-06 2.34e-06 2.92e+03 1.47e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 19, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.46 -0.0794 0.0344 2.65e-06 0 0 0 Tank initStep + 1 5e+03 -3.78e+03 -236 2.65e-06 0 6.27e+03 6.27e+03 World Transportation + 2 8.15e+03 -1e+04 414 2.65e-06 0 7.01e+03 1.33e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 18, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.482 -0.0836 0.0347 2.36e-06 0 0 0 Tank initStep + 1 5e+03 246 -1.93e+03 2.36e-06 0 5.36e+03 5.36e+03 World Transportation + 2 5e+03 246 -1.93e+03 2.36e-06 0 0 5.36e+03 Tank Transportation + 3 -322 3.24e+03 -5e+03 2.36e-06 0 6.84e+03 1.22e+04 World Transportation + 4 -322 3.24e+03 -5e+03 2.36e-06 0 0 1.22e+04 Tank Transportation + 5 -2.8e+03 2.74e+03 5e+03 2.36e-06 0 1.03e+04 2.25e+04 World Transportation + 6 -4.97e+03 4.65e+03 1e+04 2.36e-06 0 5.78e+03 2.83e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 17, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.492 -0.0856 0.0349 2.47e-06 0 0 0 Tank initStep + 1 1.01e+03 -746 -88.2 2.47e-06 2.47e-06 1.25e+03 1.25e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 16, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.477 -0.0826 0.0347 2.1e-06 0 0 0 Tank initStep + 1 3.16e+03 740 497 2.1e-06 2.1e-06 3.28e+03 3.28e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 0.528 -0.0926 0.0354 0.383 0 0 0.548 Tank initStep + 6 0.606 -0.0987 0.0549 0.373 0.00978 0.0818 0.63 Tank Cerenkov + 7 0.662 -0.101 0.0632 0.216 0.0108 0.0577 0.688 Tank eBrem + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 22, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.627 -0.0994 0.058 3.41e-06 0 0 0 Tank initStep + 1 -1.28e+03 -812 -717 3.41e-06 3.41e-06 1.68e+03 1.68e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 21, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.662 -0.101 0.0632 0.147 0 0 0 Tank initStep + 1 -53.4 -67.6 -63.7 0.136 2.92e-05 107 107 Tank compt + 2 -51 -76.8 -70 0.136 1.36e-05 11.4 119 Tank compt + 3 -43.4 -129 -111 0.123 0.000537 67.2 186 Tank compt + 4 -43.9 -156 -110 0.121 2.92e-05 27.3 213 Tank compt + 5 -75.9 -411 -224 0.0828 2.92e-05 281 494 Tank compt + 6 -72.4 -375 -177 0.0662 1.42e-05 59.5 554 Tank compt + 7 -88 -373 -195 0.0599 0.000537 23.8 577 Tank compt + 8 -102 -360 -187 0.0493 2.92e-05 20.8 598 Tank compt + 9 -97.6 -366 -184 0 0.000537 8.28 607 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 31, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -97.6 -366 -184 0.0488 0 0 0 Tank initStep + 1 -97.6 -366 -184 0.0476 0.00115 0.00325 0.00325 Tank msc + 2 -97.6 -366 -184 0.0284 0.0192 0.0218 0.025 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 34, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -97.6 -366 -184 2.83e-06 0 0 0 Tank initStep + 1 2.9e+03 5e+03 893 2.83e-06 0 6.24e+03 6.24e+03 World Transportation + 2 1e+04 8.23e+03 1.6e+03 2.83e-06 0 7.83e+03 1.41e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 33, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -97.6 -366 -184 2.97e-06 0 0 0 Tank initStep + 1 -497 -5e+03 -4.06e+03 2.97e-06 0 6.06e+03 6.06e+03 World Transportation + 2 -497 -5e+03 -4.06e+03 2.97e-06 0 0 6.06e+03 Tank Transportation + 3 -686 -2.15e+03 -5e+03 2.97e-06 0 3.01e+03 9.06e+03 World Transportation + 4 -686 -2.15e+03 -5e+03 2.97e-06 0 0 9.06e+03 Tank Transportation + 5 -4.09e+03 5e+03 -1.83e+03 2.97e-06 0 8.53e+03 1.76e+04 World Transportation + 6 -1e+04 9.15e+03 2.87e+03 2.97e-06 0 8.62e+03 2.62e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 32, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -97.6 -366 -184 3.75e-06 0 0 0 Tank initStep + 1 -1.19e+03 -1.2e+03 1.19e+03 3.75e-06 3.75e-06 1.94e+03 1.94e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 31, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -97.6 -366 -184 0.0284 0 0 0.025 Tank initStep + 3 -97.6 -366 -184 0.00268 0.0257 0.00125 0.0263 Tank msc + 4 -97.6 -366 -184 0 0.00268 0.000254 0.0265 Tank eIoni + 5 -97.6 -366 -184 0 0 0 0.0265 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 30, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -102 -360 -187 0.0105 0 0 0 Tank initStep + 1 -102 -360 -187 0.00995 0.000563 0.000217 0.000217 Tank msc + 2 -102 -360 -187 0 0.00995 0.00246 0.00268 Tank eIoni + 3 -102 -360 -187 0 0 0 0.00268 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 37, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -102 -360 -187 3.43e-06 0 0 0 Tank initStep + 1 5e+03 -1.32e+03 -1.64e+03 3.43e-06 0 5.39e+03 5.39e+03 World Transportation + 2 1e+04 -2.61e+03 -3.56e+03 3.43e-06 0 5.51e+03 1.09e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 36, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -102 -360 -187 2.73e-06 0 0 0 Tank initStep + 1 -3.44e+03 -5e+03 -2.31e+03 2.73e-06 0 6.1e+03 6.1e+03 World Transportation + 2 -3.44e+03 -5e+03 -2.31e+03 2.73e-06 0 0 6.1e+03 Tank Transportation + 3 -5e+03 -3.65e+03 -2.41e+03 2.73e-06 0 2.07e+03 8.16e+03 World Transportation + 4 -5e+03 -3.65e+03 -2.41e+03 2.73e-06 0 0 8.16e+03 Tank Transportation + 5 1.74e+03 5e+03 -994 2.73e-06 0 1.11e+04 1.92e+04 World Transportation + 6 1.74e+03 5e+03 -994 2.73e-06 0 0 1.92e+04 Tank Transportation + 7 5e+03 2.54e+03 -651 2.73e-06 0 4.09e+03 2.33e+04 World Transportation + 8 1e+04 -5.38e+03 -6.04e+03 2.73e-06 0 1.08e+04 3.41e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 35, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -102 -360 -187 3.63e-06 0 0 0 Tank initStep + 1 -4.31e+03 5e+03 1.27e+03 3.63e-06 0 6.97e+03 6.97e+03 World Transportation + 2 -4.31e+03 5e+03 1.27e+03 3.63e-06 0 0 6.97e+03 Tank Transportation + 3 -5e+03 3.94e+03 1.44e+03 3.63e-06 0 1.28e+03 8.25e+03 World Transportation + 4 -5e+03 3.94e+03 1.44e+03 3.63e-06 0 0 8.25e+03 Tank Transportation + 5 -4.3e+03 343 1.35e+03 3.63e-06 0 3.66e+03 1.19e+04 Tank OpRayleigh + 6 -1.59e+03 5e+03 -978 3.63e-06 0 5.87e+03 1.78e+04 World Transportation + 7 -1.59e+03 5e+03 -978 3.63e-06 0 0 1.78e+04 Tank Transportation + 8 5e+03 -617 -4.29e+03 3.63e-06 0 9.27e+03 2.71e+04 World Transportation + 9 5e+03 -617 -4.29e+03 3.63e-06 0 0 2.71e+04 Tank Transportation + 10 2.01e+03 -2.32e+03 -3.89e+03 3.63e-06 3.63e-06 3.47e+03 3.05e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 29, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -88 -373 -195 0.00584 0 0 0 Tank initStep + 1 -88 -373 -195 0.00572 0.000117 7.71e-05 7.71e-05 Tank msc + 2 -88 -373 -195 0 0.00572 0.00093 0.00101 Tank eIoni + 3 -88 -373 -195 0 0 0 0.00101 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 28, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -72.4 -375 -177 0.0166 0 0 0 Tank initStep + 1 -72.4 -375 -177 0.016 0.000535 0.000483 0.000483 Tank msc + 2 -72.4 -375 -177 0 0.016 0.00569 0.00618 Tank eIoni + 3 -72.4 -375 -177 0 0 0 0.00618 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -75.9 -411 -224 0.0377 0 0 0 Tank initStep + 1 -75.9 -411 -224 0.0362 0.00153 0.00207 0.00207 Tank msc + 2 -75.8 -411 -224 0.0149 0.0213 0.0175 0.0195 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 38, Parent ID = 27 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -75.9 -411 -224 2.7e-06 0 0 0 Tank initStep + 1 1.99e+03 3.33e+03 -5e+03 2.7e-06 0 6.41e+03 6.41e+03 World Transportation + 2 6.55e+03 1e+04 -9.33e+03 2.7e-06 0 9.16e+03 1.56e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -75.8 -411 -224 0.0149 0 0 0.0195 Tank initStep + 3 -75.8 -411 -224 0.0137 0.00119 0.000398 0.0199 Tank msc + 4 -75.8 -411 -224 0 0.0137 0.0043 0.0242 Tank eIoni + 5 -75.8 -411 -224 0 0 0 0.0242 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 39, Parent ID = 27 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -75.8 -411 -224 3.61e-06 0 0 0 Tank initStep + 1 107 -1.11e+03 -5e+03 3.61e-06 0 4.83e+03 4.83e+03 World Transportation + 2 -378 -1.51e+03 -1e+04 3.61e-06 0 5.04e+03 9.87e+03 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -43.9 -156 -110 0.00211 0 0 0 Tank initStep + 1 -43.9 -156 -110 0.00209 1.54e-05 1.37e-05 1.37e-05 Tank msc + 2 -43.9 -156 -110 0 0.00209 0.000169 0.000182 Tank eIoni + 3 -43.9 -156 -110 0 0 0 0.000182 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -43.4 -129 -111 0.0123 0 0 0 Tank initStep + 1 -43.4 -129 -111 0.0121 0.000188 0.000284 0.000284 Tank msc + 2 -43.4 -129 -111 0 0.0121 0.00346 0.00375 Tank eIoni + 3 -43.4 -129 -111 0 0 0 0.00375 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -51 -76.8 -70 0.000324 0 0 0 Tank initStep + 1 -51 -76.8 -70 0.000324 0 1.01e-06 1.01e-06 Tank msc + 2 -51 -76.8 -70 0 0.000324 1.26e-05 1.36e-05 Tank eIoni + 3 -51 -76.8 -70 0 0 0 1.36e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 21 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -53.4 -67.6 -63.7 0.0108 0 0 0 Tank initStep + 1 -53.4 -67.6 -63.7 0.00956 0.00121 0.000226 0.000226 Tank msc + 2 -53.4 -67.6 -63.7 0 0.00956 0.00229 0.00252 Tank eIoni + 3 -53.4 -67.6 -63.7 0 0 0 0.00252 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 40, Parent ID = 23 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -53.4 -67.6 -63.7 3.57e-06 0 0 0 Tank initStep + 1 4.05e+03 -2.12e+03 -5e+03 3.57e-06 0 6.74e+03 6.74e+03 World Transportation + 2 4.05e+03 -2.12e+03 -5e+03 3.57e-06 0 0 6.74e+03 Tank Transportation + 3 5e+03 -2.38e+03 -4.72e+03 3.57e-06 0 1.03e+03 7.76e+03 World Transportation + 4 5e+03 -2.38e+03 -4.72e+03 3.57e-06 0 0 7.76e+03 Tank Transportation + 5 1.49e+03 -5e+03 -884 3.57e-06 0 5.82e+03 1.36e+04 World Transportation + 6 1.49e+03 -5e+03 -884 3.57e-06 0 0 1.36e+04 Tank Transportation + 7 -661 -1.46e+03 5e+03 3.57e-06 0 7.2e+03 2.08e+04 World Transportation + 8 -661 -1.46e+03 5e+03 3.57e-06 0 0 2.08e+04 Tank Transportation + 9 2.48e+03 5e+03 3.16e+03 3.57e-06 0 7.42e+03 2.82e+04 World Transportation + 10 6.9e+03 1e+04 -135 3.57e-06 0 7.44e+03 3.56e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 0.662 -0.101 0.0632 0.216 0 0 0.688 Tank initStep + 8 0.7 -0.0983 0.0663 0.208 0.00776 0.0389 0.727 Tank msc + 9 0.792 -0.0786 0.0745 0.183 0.0249 0.107 0.834 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 42, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.78 -0.0812 0.0734 2.45e-06 0 0 0 Tank initStep + 1 -475 2e+03 -326 2.45e-06 2.45e-06 2.08e+03 2.08e+03 Bubble Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 41, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.781 -0.081 0.0735 2.36e-06 0 0 0 Tank initStep + 1 -1.62e+03 1.75e+03 -5e+03 2.36e-06 0 5.54e+03 5.54e+03 World Transportation + 2 -1e+04 3.97e+03 -8.79e+03 2.36e-06 0 9.46e+03 1.5e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 9 0.792 -0.0786 0.0745 0.183 0 0 0.834 Tank initStep + 10 0.82 -0.0815 0.0653 0.174 0.00949 0.0298 0.864 Tank msc + 11 0.883 -0.0953 0.0293 0.153 0.0205 0.0839 0.948 Tank eIoni + 12 0.928 -0.0613 0.00435 0.135 0.0179 0.071 1.02 Tank eIoni + 13 0.948 -0.0181 -0.0174 0.118 0.0172 0.0606 1.08 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 43, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.945 -0.0252 -0.0138 2.22e-06 0 0 0 Tank initStep + 1 4.28e+03 -1.44e+03 402 2.22e-06 2.22e-06 4.53e+03 4.53e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 13 0.948 -0.0181 -0.0174 0.118 0 0 1.08 Tank initStep + 14 0.949 -0.00902 -0.0283 0.111 0.0069 0.0143 1.09 Tank msc + 15 0.952 0.0135 -0.062 0.0642 0.047 0.0477 1.14 Tank eIoni + 16 0.958 0.0273 -0.0771 0.0469 0.0173 0.0271 1.17 Tank eIoni + 17 0.96 0.0351 -0.0895 0.0334 0.0135 0.0208 1.19 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 44, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.959 0.0304 -0.082 3.17e-06 0 0 0 Tank initStep + 1 3.14e+03 3.19e+03 5e+03 3.17e-06 0 6.71e+03 6.71e+03 World Transportation + 2 3.14e+03 3.19e+03 5e+03 3.17e-06 0 0 6.71e+03 Tank Transportation + 3 2.41e+03 5e+03 4.5e+03 3.17e-06 0 2.01e+03 8.73e+03 World Transportation + 4 2.41e+03 5e+03 4.5e+03 3.17e-06 0 0 8.73e+03 Tank Transportation + 5 -921 3.01e+03 4.91e+03 3.17e-06 3.17e-06 3.9e+03 1.26e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 17 0.96 0.0351 -0.0895 0.0334 0 0 1.19 Tank initStep + 18 0.962 0.035 -0.0894 0.0307 0.00273 0.00155 1.19 Tank msc + 19 0.97 0.0327 -0.0884 0.0111 0.0196 0.0145 1.21 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 45, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.969 0.0329 -0.0885 3.96e-06 0 0 0 Tank initStep + 1 2.08e+03 -4.33e+03 -3.53e+03 3.96e-06 3.96e-06 5.96e+03 5.96e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 19 0.97 0.0327 -0.0884 0.0111 0 0 1.21 Tank initStep + 20 0.97 0.0326 -0.0885 0.0107 0.000383 0.000214 1.21 Tank msc + 21 0.971 0.0328 -0.0889 0 0.0107 0.00251 1.21 Tank eIoni + 22 0.971 0.0328 -0.0889 0 0 0 1.21 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 47, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.971 0.0328 -0.0889 0.511 0 0 0 Tank initStep + 1 -92.6 -1.54 -82.7 0.286 1.36e-05 125 125 Tank compt + 2 -77.1 -10.3 -111 0.2 1.36e-05 33.5 158 Tank compt + 3 -121 -46 -141 0.169 2.92e-05 64 222 Tank compt + 4 -199 3.96 -235 0.144 0.000537 132 354 Tank compt + 5 -182 34.4 -256 0.103 0.000537 40.3 395 Tank compt + 6 -181 32.7 -255 0.0928 1.36e-05 2.34 397 Tank compt + 7 -172 35.3 -243 0.0882 1.42e-05 15.5 412 Tank compt + 8 -45.4 37.7 -220 0.088 2.92e-05 128 541 Tank compt + 9 59.4 30.8 -189 0.0707 2.92e-05 110 650 Tank compt + 10 55.2 22.1 -199 0.0566 1.42e-05 14.4 665 Tank compt + 11 54.4 29.2 -196 0.0491 1.42e-05 8.1 673 Tank compt + 12 50.7 42.7 -320 0.0443 1.42e-05 125 798 Tank compt + 13 51.7 35.4 -320 0.0393 2.92e-05 7.32 805 Tank compt + 14 59.8 43.6 -324 0.0377 1.42e-05 12.2 818 Tank compt + 15 63.8 46.2 -321 0.0329 1.42e-05 5.62 823 Tank compt + 16 60.1 45.2 -326 0 0.000537 6.4 830 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 63, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 60.1 45.2 -326 0.0324 0 0 0 Tank initStep + 1 60.1 45.2 -326 0.03 0.00239 0.00158 0.00158 Tank msc + 2 60.1 45.2 -326 0.0139 0.0161 0.0148 0.0164 Tank eIoni + 3 60.1 45.2 -326 0 0.0139 0.00441 0.0208 Tank eIoni + 4 60.1 45.2 -326 0 0 0 0.0208 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 62, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 63.8 46.2 -321 0.00478 0 0 0 Tank initStep + 1 63.8 46.2 -321 0.00471 7.02e-05 5.46e-05 5.46e-05 Tank msc + 2 63.8 46.2 -321 0 0.00471 0.000666 0.000721 Tank eIoni + 3 63.8 46.2 -321 0 0 0 0.000721 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 61, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 59.8 43.6 -324 0.00158 0 0 0 Tank initStep + 1 59.8 43.6 -324 0.00154 3.74e-05 8.56e-06 8.56e-06 Tank msc + 2 59.8 43.6 -324 0 0.00154 0.000103 0.000111 Tank eIoni + 3 59.8 43.6 -324 0 0 0 0.000111 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 64, Parent ID = 61 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 59.8 43.6 -324 3.49e-06 0 0 0 Tank initStep + 1 -11.8 -67.1 -126 3.49e-06 3.49e-06 238 238 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 60, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 51.7 35.4 -320 0.00496 0 0 0 Tank initStep + 1 51.7 35.4 -320 0.00495 1.24e-05 5.83e-05 5.83e-05 Tank msc + 2 51.7 35.4 -320 0 0.00495 0.000725 0.000784 Tank eIoni + 3 51.7 35.4 -320 0 0 0 0.000784 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 59, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 50.7 42.7 -320 0.00481 0 0 0 Tank initStep + 1 50.7 42.7 -320 0.00456 0.000255 5.52e-05 5.52e-05 Tank msc + 2 50.7 42.7 -320 0 0.00456 0.000629 0.000684 Tank eIoni + 3 50.7 42.7 -320 0 0 0 0.000684 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 65, Parent ID = 59 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 50.7 42.7 -320 2.36e-06 0 0 0 Tank initStep + 1 -2.72e+03 -274 -721 2.36e-06 2.36e-06 2.82e+03 2.82e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 58, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 54.4 29.2 -196 0.00742 0 0 0 Tank initStep + 1 54.4 29.2 -196 0.00723 0.000185 0.000117 0.000117 Tank msc + 2 54.4 29.2 -196 0 0.00723 0.0014 0.00152 Tank eIoni + 3 54.4 29.2 -196 0 0 0 0.00152 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 57, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 55.2 22.1 -199 0.0142 0 0 0 Tank initStep + 1 55.2 22.1 -199 0.014 0.00014 0.000365 0.000365 Tank msc + 2 55.2 22.1 -199 0 0.014 0.00449 0.00485 Tank eIoni + 3 55.2 22.1 -199 0 0 0 0.00485 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 67, Parent ID = 57 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 55.2 22.1 -199 3.32e-06 0 0 0 Tank initStep + 1 2.48e+03 5e+03 2.75e+03 3.32e-06 0 6.27e+03 6.27e+03 World Transportation + 2 2.48e+03 5e+03 2.75e+03 3.32e-06 0 0 6.27e+03 Tank Transportation + 3 3.76e+03 1.87e+03 5e+03 3.32e-06 0 4.06e+03 1.03e+04 World Transportation + 4 3.76e+03 1.87e+03 5e+03 3.32e-06 0 0 1.03e+04 Tank Transportation + 5 5e+03 -464 4.08e+03 3.32e-06 0 2.8e+03 1.31e+04 World Transportation + 6 5e+03 -464 4.08e+03 3.32e-06 0 0 1.31e+04 Tank Transportation + 7 1.17e+03 -5e+03 387 3.32e-06 0 6.99e+03 2.01e+04 World Transportation + 8 1.17e+03 -5e+03 387 3.32e-06 0 0 2.01e+04 Tank Transportation + 9 -1.1e+03 1.09e+03 -4.77e+03 3.32e-06 3.32e-06 8.3e+03 2.84e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 66, Parent ID = 57 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 55.2 22.1 -199 2.04e-06 0 0 0 Tank initStep + 1 3.67e+03 -2.88e+03 -469 2.04e-06 2.04e-06 4.64e+03 4.64e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 56, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 59.4 30.8 -189 0.0172 0 0 0 Tank initStep + 1 59.4 30.8 -189 0.0164 0.000843 0.000518 0.000518 Tank msc + 2 59.4 30.8 -189 0 0.0164 0.00593 0.00645 Tank eIoni + 3 59.4 30.8 -189 0 0 0 0.00645 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 68, Parent ID = 56 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 59.4 30.8 -189 2.33e-06 0 0 0 Tank initStep + 1 -3.03e+03 1.67e+03 -5e+03 2.33e-06 0 5.95e+03 5.95e+03 World Transportation + 2 -3.03e+03 1.67e+03 -5e+03 2.33e-06 0 0 5.95e+03 Tank Transportation + 3 -5e+03 1.91e+03 -2.72e+03 2.33e-06 0 3.03e+03 8.97e+03 World Transportation + 4 -5e+03 1.91e+03 -2.72e+03 2.33e-06 0 0 8.97e+03 Tank Transportation + 5 -3.25e+03 4.26e+03 163 2.33e-06 2.33e-06 4.11e+03 1.31e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 55, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -45.4 37.7 -220 0.000124 0 0 0 Tank initStep + 1 -45.4 37.7 -220 0.000124 0 4.82e-07 4.82e-07 Tank msc + 2 -45.4 37.7 -220 0 0.000124 6.03e-06 6.51e-06 Tank eIoni + 3 -45.4 37.7 -220 0 0 0 6.51e-06 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 54, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -172 35.3 -243 0.00462 0 0 0 Tank initStep + 1 -172 35.3 -243 0.00454 7.95e-05 5.15e-05 5.15e-05 Tank msc + 2 -172 35.3 -243 0 0.00454 0.000625 0.000676 Tank eIoni + 3 -172 35.3 -243 0 0 0 0.000676 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 53, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -181 32.7 -255 0.01 0 0 0 Tank initStep + 1 -181 32.7 -255 0.00983 0.000207 0.0002 0.0002 Tank msc + 2 -181 32.7 -255 0 0.00983 0.00241 0.00261 Tank eIoni + 3 -181 32.7 -255 0 0 0 0.00261 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 52, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -182 34.4 -256 0.041 0 0 0 Tank initStep + 1 -182 34.4 -256 0.0405 0.000523 0.00239 0.00239 Tank msc + 2 -182 34.4 -256 0.025 0.0155 0.0191 0.0215 Tank eIoni + 3 -182 34.4 -256 0.00583 0.0191 0.0121 0.0336 Tank eIoni + 4 -182 34.4 -256 0 0.00583 0.000961 0.0345 Tank eIoni + 5 -182 34.4 -256 0 0 0 0.0345 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 51, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -199 3.96 -235 0.0241 0 0 0 Tank initStep + 1 -199 3.96 -235 0.0233 0.000788 0.000935 0.000935 Tank msc + 2 -199 3.96 -235 0.00628 0.017 0.0109 0.0119 Tank eIoni + 3 -199 3.96 -235 0 0.00628 0.0011 0.013 Tank eIoni + 4 -199 3.96 -235 0 0 0 0.013 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 69, Parent ID = 51 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -199 3.96 -235 3.57e-06 0 0 0 Tank initStep + 1 -4.9e+03 4.11e+03 -5e+03 3.57e-06 0 7.85e+03 7.85e+03 World Transportation + 2 -4.9e+03 4.11e+03 -5e+03 3.57e-06 0 0 7.85e+03 Tank Transportation + 3 -5e+03 4.22e+03 -4.77e+03 3.57e-06 0 281 8.13e+03 World Transportation + 4 -5e+03 4.22e+03 -4.77e+03 3.57e-06 0 0 8.13e+03 Tank Transportation + 5 -3.5e+03 5e+03 -2.94e+03 3.57e-06 0 2.49e+03 1.06e+04 World Transportation + 6 -3.5e+03 5e+03 -2.94e+03 3.57e-06 0 0 1.06e+04 Tank Transportation + 7 5e+03 2.09e+03 3.95e+03 3.57e-06 0 1.13e+04 2.19e+04 World Transportation + 8 5e+03 2.09e+03 3.95e+03 3.57e-06 0 0 2.19e+04 Tank Transportation + 9 2.65e+03 1.35e+03 5e+03 3.57e-06 0 2.68e+03 2.46e+04 World Transportation + 10 2.65e+03 1.35e+03 5e+03 3.57e-06 0 0 2.46e+04 Tank Transportation + 11 -4.03e+03 2.29e+03 -2.76e+03 3.57e-06 3.57e-06 1.03e+04 3.49e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 50, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -121 -46 -141 0.0311 0 0 0 Tank initStep + 1 -121 -46 -141 0.0296 0.00151 0.00147 0.00147 Tank msc + 2 -121 -46 -141 0.00625 0.0233 0.0146 0.0161 Tank eIoni + 3 -121 -46 -141 0 0.00625 0.00109 0.0171 Tank eIoni + 4 -121 -46 -141 0 0 0 0.0171 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -77.1 -10.3 -111 0.0862 0 0 0 Tank initStep + 1 -77.1 -10.3 -111 0.0813 0.00487 0.00881 0.00881 Tank msc + 2 -77.1 -10.3 -111 0.0697 0.0116 0.0351 0.0439 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 71, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -77.1 -10.3 -111 2.41e-06 0 0 0 Tank initStep + 1 -533 -750 -2.57e+03 2.41e-06 2.41e-06 2.61e+03 2.61e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 70, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -77.1 -10.3 -111 3.57e-06 0 0 0 Tank initStep + 1 4.27e+03 -2.32e+03 -4.77e+03 3.57e-06 0 6.78e+03 6.78e+03 Tank OpRayleigh + 2 2.35e+03 -5e+03 -4.17e+03 3.57e-06 0 3.36e+03 1.01e+04 World Transportation + 3 -4.29e+03 -1e+04 -612 3.57e-06 0 9.04e+03 1.92e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -77.1 -10.3 -111 0.0697 0 0 0.0439 Tank initStep + 3 -77.1 -10.3 -111 0.0663 0.00332 0.00608 0.05 Tank msc + 4 -77 -10.3 -111 0.0496 0.0168 0.0288 0.0788 Tank eIoni + 5 -77 -10.3 -111 0.0349 0.0147 0.0225 0.101 Tank eIoni + 6 -77 -10.3 -111 0.00871 0.0262 0.0169 0.118 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 73, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -77 -10.3 -111 3.45e-06 0 0 0 Tank initStep + 1 918 1.96e+03 -5e+03 3.45e-06 0 5.37e+03 5.37e+03 World Transportation + 2 918 1.96e+03 -5e+03 3.45e-06 0 0 5.37e+03 Tank Transportation + 3 2.39e+03 5e+03 -1.97e+03 3.45e-06 0 4.54e+03 9.9e+03 World Transportation + 4 1e+04 7.45e+03 2.41e+03 3.45e-06 0 9.11e+03 1.9e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 72, Parent ID = 49 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -77 -10.3 -111 3.85e-06 0 0 0 Tank initStep + 1 -5e+03 -1.07e+03 -765 3.85e-06 0 5.08e+03 5.08e+03 World Transportation + 2 -1e+04 -2.24e+03 -613 3.85e-06 0 5.14e+03 1.02e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 49, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 -77 -10.3 -111 0.00871 0 0 0.118 Tank initStep + 7 -77 -10.3 -111 0.00825 0.000462 0.000156 0.118 Tank msc + 8 -77 -10.3 -111 0 0.00825 0.00177 0.12 Tank eIoni + 9 -77 -10.3 -111 0 0 0 0.12 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.6 -1.54 -82.7 0.225 0 0 0 Tank initStep + 1 -92.7 -1.54 -82.7 0.217 0.00778 0.0428 0.0428 Tank msc + 2 -92.8 -1.52 -82.8 0.185 0.0322 0.117 0.16 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 75, Parent ID = 48 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.7 -1.52 -82.7 3.63e-06 0 0 0 Tank initStep + 1 -3.87e+03 5e+03 -1.35e+03 3.63e-06 0 6.4e+03 6.4e+03 World Transportation + 2 -3.87e+03 5e+03 -1.35e+03 3.63e-06 0 0 6.4e+03 Tank Transportation + 3 -5e+03 -589 -31.3 3.63e-06 0 5.85e+03 1.22e+04 World Transportation + 4 -5e+03 -589 -31.3 3.63e-06 0 0 1.22e+04 Tank Transportation + 5 -3.91e+03 886 4.08e+03 3.63e-06 0 4.5e+03 1.67e+04 Tank OpRayleigh + 6 -5e+03 2.02e+03 3.69e+03 3.63e-06 0 1.62e+03 1.84e+04 World Transportation + 7 -5e+03 2.02e+03 3.69e+03 3.63e-06 0 0 1.84e+04 Tank Transportation + 8 -3.59e+03 2.13e+03 2.96e+03 3.63e-06 3.63e-06 1.59e+03 2e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 74, Parent ID = 48 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.7 -1.53 -82.7 3.53e-06 0 0 0 Tank initStep + 1 957 -5e+03 2.21e+03 3.53e-06 0 5.6e+03 5.6e+03 World Transportation + 2 957 -5e+03 2.21e+03 3.53e-06 0 0 5.6e+03 Tank Transportation + 3 1.46e+03 -3.73e+03 5e+03 3.53e-06 0 3.11e+03 8.71e+03 World Transportation + 4 1.46e+03 -3.73e+03 5e+03 3.53e-06 0 0 8.71e+03 Tank Transportation + 5 2.95e+03 -1.03e+03 -5e+03 3.53e-06 0 1.05e+04 1.92e+04 World Transportation + 6 4.46e+03 1.64e+03 -1e+04 3.53e-06 0 5.86e+03 2.5e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -92.8 -1.52 -82.8 0.185 0 0 0.16 Tank initStep + 3 -92.8 -1.51 -82.8 0.157 0.0279 0.0314 0.191 Tank msc + 4 -92.8 -1.49 -82.8 0.141 0.0159 0.0759 0.267 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 76, Parent ID = 48 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.8 -1.51 -82.8 3.46e-06 0 0 0 Tank initStep + 1 3.13e+03 680 5e+03 3.46e-06 0 6.06e+03 6.06e+03 World Transportation + 2 3.13e+03 680 5e+03 3.46e-06 0 0 6.06e+03 Tank Transportation + 3 5e+03 108 3.06e+03 3.46e-06 0 2.75e+03 8.81e+03 World Transportation + 4 6.86e+03 214 -1e+04 3.46e-06 0 1.32e+04 2.2e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 -92.8 -1.49 -82.8 0.141 0 0 0.267 Tank initStep + 5 -92.8 -1.49 -82.8 0.132 0.00849 0.0202 0.287 Tank msc + 6 -92.8 -1.5 -82.9 0.111 0.0214 0.0612 0.349 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 77, Parent ID = 48 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.8 -1.5 -82.9 3e-06 0 0 0 Tank initStep + 1 -1.47e+03 -130 1.83e+03 3e-06 3e-06 2.36e+03 2.36e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 -92.8 -1.5 -82.9 0.111 0 0 0.349 Tank initStep + 7 -92.8 -1.51 -82.9 0.105 0.00606 0.0136 0.362 Tank msc + 8 -92.8 -1.52 -82.9 0.0882 0.0168 0.0463 0.409 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 78, Parent ID = 48 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.8 -1.51 -82.9 3.04e-06 0 0 0 Tank initStep + 1 -81.3 14 -83.1 3.04e-06 3.04e-06 19.3 19.3 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 -92.8 -1.52 -82.9 0.0882 0 0 0.409 Tank initStep + 9 -92.8 -1.53 -82.9 0.0833 0.00492 0.00917 0.418 Tank msc + 10 -92.8 -1.54 -83 0.0693 0.014 0.036 0.454 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 79, Parent ID = 48 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.8 -1.54 -83 3.86e-06 0 0 0 Tank initStep + 1 340 2e+03 100 3.86e-06 3.86e-06 2.06e+03 2.06e+03 Bubble Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 10 -92.8 -1.54 -83 0.0693 0 0 0.454 Tank initStep + 11 -92.8 -1.54 -83 0.0676 0.00165 0.00603 0.46 Tank msc + 12 -92.8 -1.56 -83 0.0542 0.0135 0.0293 0.489 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 80, Parent ID = 48 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -92.8 -1.55 -83 3.77e-06 0 0 0 Tank initStep + 1 5e+03 1.72e+03 -846 3.77e-06 0 5.43e+03 5.43e+03 World Transportation + 2 5e+03 1.72e+03 -846 3.77e-06 0 0 5.43e+03 Tank Transportation + 3 2.56e+03 1.38e+03 -1.23e+03 3.77e-06 3.77e-06 2.5e+03 7.93e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 48, Parent ID = 47 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 12 -92.8 -1.56 -83 0.0542 0 0 0.489 Tank initStep + 13 -92.8 -1.56 -83 0.011 0.0431 0.00391 0.493 Tank msc + 14 -92.8 -1.56 -83 0 0.011 0.00295 0.496 Tank eIoni + 15 -92.8 -1.56 -83 0 0 0 0.496 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 46, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.971 0.0328 -0.0889 0.511 0 0 0 Tank initStep + 1 125 2.12 110 0.397 1.42e-05 166 166 Tank compt + 2 248 -20.6 106 0.319 1.36e-05 125 291 Tank compt + 3 287 -81.5 105 0.181 1.42e-05 72.4 363 Tank compt + 4 271 -87.8 107 0.123 2.92e-05 17.9 381 Tank compt + 5 280 -97.3 112 0.116 1.36e-05 13.7 395 Tank compt + 6 284 -98.4 117 0.0909 0.000537 7.53 402 Tank compt + 7 278 -90.4 117 0.0828 1.42e-05 10.2 413 Tank compt + 8 180 -113 144 0.078 0.000537 104 517 Tank compt + 9 171 -132 153 0.0755 0.000537 22.5 539 Tank compt + 10 171 -137 152 0 0.000537 5.37 545 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 171 -137 152 0.075 0 0 0 Tank initStep + 1 171 -137 152 0.0726 0.00234 0.00692 0.00692 Tank msc + 2 171 -137 152 0.0594 0.0133 0.0314 0.0383 Tank eIoni + 3 171 -137 152 0.0442 0.0152 0.0261 0.0644 Tank eIoni + 4 171 -137 152 0.0278 0.0164 0.0205 0.0849 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 91, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 171 -137 152 3.1e-06 0 0 0 Tank initStep + 1 -2.28e+03 -5e+03 2.21e+03 3.1e-06 0 5.82e+03 5.82e+03 World Transportation + 2 -5.51e+03 -1e+04 9.1e+03 3.1e-06 0 9.11e+03 1.49e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 171 -137 152 0.0278 0 0 0.0849 Tank initStep + 5 171 -137 152 0.0251 0.00276 0.00121 0.0861 Tank msc + 6 171 -137 152 0.00445 0.0206 0.0121 0.0982 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 92, Parent ID = 90 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 171 -137 152 2.48e-06 0 0 0 Tank initStep + 1 -317 -1.82e+03 1.21e+03 2.48e-06 2.48e-06 2.05e+03 2.05e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 171 -137 152 0.00445 0 0 0.0982 Tank initStep + 7 171 -137 152 0.00439 5.58e-05 4.83e-05 0.0983 Tank msc + 8 171 -137 152 0 0.00439 0.000591 0.0989 Tank eIoni + 9 171 -137 152 0 0 0 0.0989 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 89, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 171 -132 153 0.00192 0 0 0 Tank initStep + 1 171 -132 153 0.00176 0.000159 1.17e-05 1.17e-05 Tank msc + 2 171 -132 153 0 0.00176 0.000127 0.000139 Tank eIoni + 3 171 -132 153 0 0 0 0.000139 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 88, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 180 -113 144 0.00432 0 0 0 Tank initStep + 1 180 -113 144 0.00418 0.000134 4.59e-05 4.59e-05 Tank msc + 2 180 -113 144 0 0.00418 0.000543 0.000589 Tank eIoni + 3 180 -113 144 0 0 0 0.000589 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 87, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 278 -90.4 117 0.00811 0 0 0 Tank initStep + 1 278 -90.4 117 0.00807 3.49e-05 0.000137 0.000137 Tank msc + 2 278 -90.4 117 0 0.00807 0.0017 0.00184 Tank eIoni + 3 278 -90.4 117 0 0 0 0.00184 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 284 -98.4 117 0.0246 0 0 0 Tank initStep + 1 284 -98.4 117 0.0241 0.000524 0.000973 0.000973 Tank msc + 2 284 -98.4 117 0 0.0241 0.0115 0.0125 Tank eIoni + 3 284 -98.4 117 0 0 0 0.0125 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 85, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 280 -97.3 112 0.00661 0 0 0 Tank initStep + 1 280 -97.3 112 0.0062 0.00041 9.59e-05 9.59e-05 Tank msc + 2 280 -97.3 112 0 0.0062 0.00107 0.00117 Tank eIoni + 3 280 -97.3 112 0 0 0 0.00117 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 84, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 271 -87.8 107 0.0586 0 0 0 Tank initStep + 1 271 -87.8 107 0.0567 0.00188 0.00448 0.00448 Tank msc + 2 271 -87.8 107 0.0452 0.0115 0.0251 0.0296 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 94, Parent ID = 84 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 271 -87.8 107 2.24e-06 0 0 0 Tank initStep + 1 4.82e+03 2.07e+03 130 2.24e-06 2.24e-06 5.03e+03 5.03e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 93, Parent ID = 84 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 271 -87.8 107 3.03e-06 0 0 0 Tank initStep + 1 2.28e+03 2.72e+03 -3.29e+03 3.03e-06 3.03e-06 4.84e+03 4.84e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 84, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 271 -87.8 107 0.0452 0 0 0.0296 Tank initStep + 3 271 -87.8 107 0.043 0.00223 0.00285 0.0324 Tank msc + 4 271 -87.8 107 0.0186 0.0243 0.0201 0.0525 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 95, Parent ID = 84 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 271 -87.8 107 2.09e-06 0 0 0 Tank initStep + 1 5e+03 -1.86e+03 -1.7e+03 2.09e-06 0 5.36e+03 5.36e+03 World Transportation + 2 5e+03 -1.86e+03 -1.7e+03 2.09e-06 0 0 5.36e+03 Tank Transportation + 3 4.38e+03 -2.46e+03 -2.25e+03 2.09e-06 2.09e-06 1.03e+03 6.39e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 84, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 271 -87.8 107 0.0186 0 0 0.0525 Tank initStep + 5 271 -87.8 107 0.0179 0.000754 0.000595 0.0531 Tank msc + 6 271 -87.8 107 0 0.0179 0.00691 0.06 Tank eIoni + 7 271 -87.8 107 0 0 0 0.06 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 287 -81.5 105 0.137 0 0 0 Tank initStep + 1 287 -81.5 105 0.122 0.0153 0.0193 0.0193 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 96, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 287 -81.5 105 2.2e-06 0 0 0 Tank initStep + 1 5e+03 3.71e+03 2.89e+03 2.2e-06 0 6.66e+03 6.66e+03 World Transportation + 2 5e+03 3.71e+03 2.89e+03 2.2e-06 0 0 6.66e+03 Tank Transportation + 3 4.75e+03 3.82e+03 3.13e+03 2.2e-06 2.2e-06 362 7.02e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 287 -81.5 105 0.122 0 0 0.0193 Tank initStep + 2 287 -81.5 105 0.117 0.0048 0.0159 0.0352 Tank msc + 3 288 -81.5 105 0.101 0.0161 0.0527 0.0879 Tank eIoni + 4 288 -81.5 105 0.089 0.0121 0.0444 0.132 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 99, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 288 -81.5 105 2.52e-06 0 0 0 Tank initStep + 1 2.52e+03 -5e+03 -4.78e+03 2.52e-06 0 7.28e+03 7.28e+03 World Transportation + 2 2.52e+03 -5e+03 -4.78e+03 2.52e-06 0 0 7.28e+03 Tank Transportation + 3 2.55e+03 -4.84e+03 -5e+03 2.52e-06 0 268 7.55e+03 World Transportation + 4 2.55e+03 -4.84e+03 -5e+03 2.52e-06 0 0 7.55e+03 Tank Transportation + 5 5e+03 -1.41e+03 -2.96e+03 2.52e-06 0 4.69e+03 1.22e+04 World Transportation + 6 5e+03 -1.41e+03 -2.96e+03 2.52e-06 0 0 1.22e+04 Tank Transportation + 7 -499 5e+03 -2.06e+03 2.52e-06 0 8.49e+03 2.07e+04 World Transportation + 8 -499 5e+03 -2.06e+03 2.52e-06 0 0 2.07e+04 Tank Transportation + 9 -5e+03 2.57e+03 -2.44e+03 2.52e-06 0 5.13e+03 2.59e+04 World Transportation + 10 -1e+04 -6.43e+03 -4.6e+03 2.52e-06 0 1.05e+04 3.64e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 98, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 288 -81.5 105 2.09e-06 0 0 0 Tank initStep + 1 933 -1.78e+03 225 2.09e-06 2.09e-06 1.82e+03 1.82e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 97, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 288 -81.5 105 3.85e-06 0 0 0 Tank initStep + 1 436 -976 915 3.85e-06 3.85e-06 1.22e+03 1.22e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 288 -81.5 105 0.089 0 0 0.132 Tank initStep + 5 288 -81.5 105 0.086 0.00303 0.00931 0.142 Tank msc + 6 288 -81.5 105 0.0694 0.0166 0.0372 0.179 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 100, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 288 -81.5 105 2.42e-06 0 0 0 Tank initStep + 1 5e+03 4.31e+03 -3.97e+03 2.42e-06 0 7.62e+03 7.62e+03 World Transportation + 2 5e+03 4.31e+03 -3.97e+03 2.42e-06 0 0 7.62e+03 Tank Transportation + 3 4.34e+03 5e+03 -4.68e+03 2.42e-06 0 1.19e+03 8.81e+03 World Transportation + 4 4.34e+03 5e+03 -4.68e+03 2.42e-06 0 0 8.81e+03 Tank Transportation + 5 4.48e+03 -5e+03 -4.94e+03 2.42e-06 0 1e+04 1.88e+04 World Transportation + 6 4.6e+03 -1e+04 -4.54e+03 2.42e-06 0 5.02e+03 2.38e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 288 -81.5 105 0.0694 0 0 0.179 Tank initStep + 7 288 -81.4 105 0.0659 0.00354 0.00604 0.185 Tank msc + 8 288 -81.4 105 0.0407 0.0251 0.0286 0.213 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 101, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 288 -81.4 105 2.16e-06 0 0 0 Tank initStep + 1 1.92e+03 1.78e+03 5e+03 2.16e-06 0 5.49e+03 5.49e+03 World Transportation + 2 3.16e+03 2.04e+03 1e+04 2.16e-06 0 5.16e+03 1.06e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 288 -81.4 105 0.0407 0 0 0.213 Tank initStep + 9 288 -81.4 105 0.0394 0.00133 0.00236 0.216 Tank msc + 10 288 -81.4 105 0.0159 0.0235 0.0187 0.234 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 102, Parent ID = 83 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 288 -81.4 105 2.66e-06 0 0 0 Tank initStep + 1 4.67e+03 593 -5e+03 2.66e-06 0 6.76e+03 6.76e+03 World Transportation + 2 4.67e+03 593 -5e+03 2.66e-06 0 0 6.76e+03 Tank Transportation + 3 5e+03 605 -4.71e+03 2.66e-06 0 439 7.2e+03 World Transportation + 4 5e+03 605 -4.71e+03 2.66e-06 0 0 7.2e+03 Tank Transportation + 5 -1.68e+03 1.51e+03 5e+03 2.66e-06 0 1.18e+04 1.9e+04 World Transportation + 6 -1e+04 4.42e+03 8.86e+03 2.66e-06 0 9.62e+03 2.86e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 10 288 -81.4 105 0.0159 0 0 0.234 Tank initStep + 11 288 -81.4 105 0.0136 0.00233 0.000448 0.235 Tank msc + 12 288 -81.4 105 0 0.0136 0.00423 0.239 Tank eIoni + 13 288 -81.4 105 0 0 0 0.239 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 248 -20.6 106 0.0779 0 0 0 Tank initStep + 1 248 -20.6 106 0.0757 0.00227 0.0074 0.0074 Tank msc + 2 248 -20.6 106 0.0634 0.0123 0.0327 0.0401 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 103, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 248 -20.6 106 3.48e-06 0 0 0 Tank initStep + 1 -3.93e+03 -204 2.58e+03 3.48e-06 0 4.86e+03 4.86e+03 Tank OpRayleigh + 2 -116 -2.7e+03 5e+03 3.48e-06 0 5.16e+03 1e+04 World Transportation + 3 -116 -2.7e+03 5e+03 3.48e-06 0 0 1e+04 Tank Transportation + 4 1.18e+03 -4.69e+03 2.73e+03 3.48e-06 3.48e-06 3.28e+03 1.33e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 248 -20.6 106 0.0634 0 0 0.0401 Tank initStep + 3 248 -20.6 106 0.0611 0.00231 0.00515 0.0452 Tank msc + 4 248 -20.6 106 0.0468 0.0143 0.0267 0.0719 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 104, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 248 -20.6 106 2.19e-06 0 0 0 Tank initStep + 1 -5e+03 -1.69e+03 462 2.19e-06 0 5.52e+03 5.52e+03 World Transportation + 2 -5e+03 -1.69e+03 462 2.19e-06 0 0 5.52e+03 Tank Transportation + 3 -2.67e+03 2.51e+03 -5e+03 2.19e-06 0 7.27e+03 1.28e+04 World Transportation + 4 -852 1e+04 -8.31e+03 2.19e-06 0 8.39e+03 2.12e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 248 -20.6 106 0.0468 0 0 0.0719 Tank initStep + 5 248 -20.6 106 0.0449 0.00187 0.00302 0.075 Tank msc + 6 248 -20.6 106 0.031 0.0139 0.0208 0.0957 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 105, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 248 -20.6 106 2.49e-06 0 0 0 Tank initStep + 1 2.02e+03 3.91e+03 -5e+03 2.49e-06 0 6.68e+03 6.68e+03 World Transportation + 2 4.18e+03 1e+04 -6.56e+03 2.49e-06 0 6.64e+03 1.33e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 248 -20.6 106 0.031 0 0 0.0957 Tank initStep + 7 248 -20.6 106 0.0301 0.000907 0.00146 0.0972 Tank msc + 8 248 -20.6 106 0.0109 0.0192 0.0148 0.112 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 108, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 248 -20.6 106 2.45e-06 0 0 0 Tank initStep + 1 -4.19e+03 -1.78e+03 -5e+03 2.45e-06 0 6.99e+03 6.99e+03 World Transportation + 2 -4.19e+03 -1.78e+03 -5e+03 2.45e-06 0 0 6.99e+03 Tank Transportation + 3 -4.88e+03 -5e+03 -1.61e+03 2.45e-06 0 4.73e+03 1.17e+04 World Transportation + 4 -4.88e+03 -5e+03 -1.61e+03 2.45e-06 0 0 1.17e+04 Tank Transportation + 5 -5e+03 -4.8e+03 -1.43e+03 2.45e-06 0 293 1.2e+04 World Transportation + 6 -5e+03 -4.8e+03 -1.43e+03 2.45e-06 0 0 1.2e+04 Tank Transportation + 7 -2.94e+03 -2.59e+03 -695 2.45e-06 2.45e-06 3.1e+03 1.51e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 107, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 248 -20.6 106 3.76e-06 0 0 0 Tank initStep + 1 -100 2e+03 -277 3.76e-06 3.76e-06 2.09e+03 2.09e+03 Bubble Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 106, Parent ID = 82 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 248 -20.6 106 2.4e-06 0 0 0 Tank initStep + 1 -2.36e+03 -1.12e+03 5e+03 2.4e-06 0 5.66e+03 5.66e+03 World Transportation + 2 -2.36e+03 -1.12e+03 5e+03 2.4e-06 0 0 5.66e+03 Tank Transportation + 3 -3.33e+03 -5e+03 3.18e+03 2.4e-06 0 4.39e+03 1e+04 World Transportation + 4 -9.15e+03 -1e+04 -4.96e+03 2.4e-06 0 1.12e+04 2.12e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 248 -20.6 106 0.0109 0 0 0.112 Tank initStep + 9 248 -20.6 106 0.0106 0.00027 0.00023 0.112 Tank msc + 10 248 -20.6 106 0 0.0106 0.00276 0.115 Tank eIoni + 11 248 -20.6 106 0 0 0 0.115 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 81, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 125 2.12 110 0.114 0 0 0 Tank initStep + 1 125 2.13 110 0.109 0.00543 0.0143 0.0143 Tank msc + 2 125 2.13 110 0.0925 0.0165 0.0484 0.0626 Tank eIoni + 3 125 2.13 110 0.0686 0.0239 0.0402 0.103 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 109, Parent ID = 81 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 125 2.13 110 2.27e-06 0 0 0 Tank initStep + 1 538 2.11e+03 -5e+03 2.27e-06 0 5.54e+03 5.54e+03 World Transportation + 2 292 7.58e+03 -1e+04 2.27e-06 0 7.41e+03 1.3e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 81, Parent ID = 46 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 125 2.13 110 0.0686 0 0 0.103 Tank initStep + 4 125 2.12 110 0.0664 0.00216 0.00592 0.109 Tank msc + 5 125 2.11 110 0.0457 0.0207 0.0288 0.138 Tank eIoni + 6 125 2.1 110 0.032 0.0137 0.0211 0.159 Tank eIoni + 7 125 2.1 110 0.00855 0.0235 0.0157 0.174 Tank eIoni + 8 125 2.1 110 0 0.00855 0.00188 0.176 Tank eIoni + 9 125 2.1 110 0 0 0 0.176 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 110, Parent ID = 81 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 125 2.1 110 3.72e-06 0 0 0 Tank initStep + 1 3.53e+03 2.4e+03 4.94e+03 3.72e-06 3.72e-06 6.37e+03 6.37e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 0.5 0 0 0 Tank initStep + 1 0.138 0.0049 -0.00967 0.478 0.0216 0.14 0.14 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0824 0.00292 -0.00576 3.52e-06 0 0 0 Tank initStep + 1 -1.04e+03 -5e+03 4.6e+03 3.52e-06 0 6.87e+03 6.87e+03 World Transportation + 2 -1.04e+03 -5e+03 4.6e+03 3.52e-06 0 0 6.87e+03 Tank Transportation + 3 -1.15e+03 -4.41e+03 5e+03 3.52e-06 0 718 7.59e+03 World Transportation + 4 -1.15e+03 -4.41e+03 5e+03 3.52e-06 0 0 7.59e+03 Tank Transportation + 5 -792 2.51e+03 -3.36e+03 3.52e-06 3.52e-06 1.09e+04 1.85e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0289 0.00103 -0.00202 3.36e-06 0 0 0 Tank initStep + 1 0.0252 -5e+03 -2.87e+03 3.36e-06 0 5.77e+03 5.77e+03 World Transportation + 2 0.0252 -5e+03 -2.87e+03 3.36e-06 0 0 5.77e+03 Tank Transportation + 3 -577 -2.93e+03 -5e+03 3.36e-06 0 3.03e+03 8.79e+03 World Transportation + 4 -577 -2.93e+03 -5e+03 3.36e-06 0 0 8.79e+03 Tank Transportation + 5 -5e+03 -1.31e+03 -4.18e+03 3.36e-06 0 4.78e+03 1.36e+04 World Transportation + 6 -5e+03 -1.31e+03 -4.18e+03 3.36e-06 0 0 1.36e+04 Tank Transportation + 7 -3.37e+03 3.39e+03 -1.99e+03 3.36e-06 3.36e-06 5.44e+03 1.9e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.00992 0.000351 -0.000693 4.03e-06 0 0 0 Tank initStep + 1 -605 666 1.13e+03 4.03e-06 4.03e-06 1.45e+03 1.45e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0787 0.00279 -0.0055 3.66e-06 0 0 0 Tank initStep + 1 351 -5e+03 -1.82e+03 3.66e-06 0 5.33e+03 5.33e+03 World Transportation + 2 351 -5e+03 -1.82e+03 3.66e-06 0 0 5.33e+03 Tank Transportation + 3 1.26e+03 5e+03 -1.14e+03 3.66e-06 0 1.01e+04 1.54e+04 World Transportation + 4 1.26e+03 5e+03 -1.14e+03 3.66e-06 0 0 1.54e+04 Tank Transportation + 5 1.89e+03 -5e+03 -680 3.66e-06 0 1e+04 2.54e+04 World Transportation + 6 1.92e+03 -1e+04 257 3.66e-06 0 5.09e+03 3.05e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.108 0.00383 -0.00755 3.05e-06 0 0 0 Tank initStep + 1 5e+03 2.29e+03 -2.67e+03 3.05e-06 0 6.12e+03 6.12e+03 World Transportation + 2 5e+03 2.29e+03 -2.67e+03 3.05e-06 0 0 6.12e+03 Tank Transportation + 3 4.2e+03 3.85e+03 -5e+03 3.05e-06 0 2.91e+03 9.02e+03 World Transportation + 4 387 1e+04 -7.03e+03 3.05e-06 0 7.52e+03 1.65e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 0.138 0.0049 -0.00967 0.478 0 0 0.14 Tank initStep + 2 0.26 -0.0142 -0.0446 0.459 0.0195 0.128 0.268 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 8, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.247 -0.0121 -0.0409 3.42e-06 0 0 0 Tank initStep + 1 -5e+03 1.63e+03 2.57e+03 3.42e-06 0 5.85e+03 5.85e+03 World Transportation + 2 -1e+04 6.15e+03 5.36e+03 3.42e-06 0 7.3e+03 1.32e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.141 0.00455 -0.0103 2.8e-06 0 0 0 Tank initStep + 1 5e+03 432 950 2.8e-06 0 5.11e+03 5.11e+03 World Transportation + 2 1e+04 1.29e+03 5.82e+03 2.8e-06 0 7.03e+03 1.21e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 0.26 -0.0142 -0.0446 0.459 0 0 0.268 Tank initStep + 3 0.371 -0.0354 -0.0715 0.444 0.0148 0.118 0.385 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 12, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.277 -0.0175 -0.0489 2.96e-06 0 0 0 Tank initStep + 1 4.39e+03 -3.74e+03 -961 2.96e-06 2.96e-06 5.85e+03 5.85e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 11, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.29 -0.02 -0.052 3.04e-06 0 0 0 Tank initStep + 1 5e+03 -873 -4.68e+03 3.04e-06 0 6.9e+03 6.9e+03 World Transportation + 2 5e+03 -873 -4.68e+03 3.04e-06 0 0 6.9e+03 Tank Transportation + 3 4.65e+03 -855 -5e+03 3.04e-06 0 472 7.38e+03 World Transportation + 4 4.65e+03 -855 -5e+03 3.04e-06 0 0 7.38e+03 Tank Transportation + 5 -5e+03 -3.14e+03 4.53e+03 3.04e-06 0 1.38e+04 2.11e+04 World Transportation + 6 -5e+03 -3.14e+03 4.53e+03 3.04e-06 0 0 2.11e+04 Tank Transportation + 7 -4.63e+03 -3.39e+03 5e+03 3.04e-06 0 649 2.18e+04 World Transportation + 8 4.55e+03 -1e+04 6.88e+03 3.04e-06 0 1.15e+04 3.32e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 10, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.313 -0.0243 -0.0574 2.26e-06 0 0 0 Tank initStep + 1 5e+03 1.57e+03 -2.37e+03 2.26e-06 0 5.75e+03 5.75e+03 World Transportation + 2 5e+03 1.57e+03 -2.37e+03 2.26e-06 0 0 5.75e+03 Tank Transportation + 3 4.43e+03 3.53e+03 -5e+03 2.26e-06 0 3.33e+03 9.08e+03 World Transportation + 4 3.65e+03 1e+04 -7.77e+03 2.26e-06 0 7.08e+03 1.62e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 9, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.274 -0.0168 -0.048 2.25e-06 0 0 0 Tank initStep + 1 596 192 -81 2.25e-06 2.25e-06 631 631 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 0.371 -0.0354 -0.0715 0.444 0 0 0.385 Tank initStep + 4 0.471 -0.0436 -0.116 0.283 0.161 0.11 0.495 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 18, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.416 -0.0391 -0.0918 2.49e-06 0 0 0 Tank initStep + 1 326 -4.14e+03 -5e+03 2.49e-06 0 6.5e+03 6.5e+03 World Transportation + 2 326 -4.14e+03 -5e+03 2.49e-06 0 0 6.5e+03 Tank Transportation + 3 111 -5e+03 -4.54e+03 2.49e-06 0 996 7.5e+03 World Transportation + 4 -5.18e+03 -1e+04 2.82e+03 2.49e-06 0 1.04e+04 1.79e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 17, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.42 -0.0394 -0.0936 2.46e-06 0 0 0 Tank initStep + 1 -5e+03 -1.4e+03 -1.02e+03 2.46e-06 0 5.29e+03 5.29e+03 World Transportation + 2 -1e+04 -3.58e+03 -2.65e+03 2.46e-06 0 5.69e+03 1.1e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 16, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.433 -0.0405 -0.0994 3.6e-06 0 0 0 Tank initStep + 1 -1.26e+03 -2.69e+03 -5e+03 3.6e-06 0 5.82e+03 5.82e+03 World Transportation + 2 -1.6e+03 -1e+04 -8.79e+03 3.6e-06 0 8.24e+03 1.41e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 15, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.411 -0.0387 -0.0893 3.13e-06 0 0 0 Tank initStep + 1 2.31e+03 5e+03 -2.21e+03 3.13e-06 0 5.93e+03 5.93e+03 World Transportation + 2 2.31e+03 5e+03 -2.21e+03 3.13e-06 0 0 5.93e+03 Tank Transportation + 3 2.31e+03 4.98e+03 -2.23e+03 3.13e-06 3.13e-06 27.8 5.96e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 14, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.462 -0.0429 -0.113 3.02e-06 0 0 0 Tank initStep + 1 5e+03 -1.95e+03 -656 3.02e-06 0 5.41e+03 5.41e+03 World Transportation + 2 1e+04 -4.74e+03 -1.38e+03 3.02e-06 0 5.77e+03 1.12e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 13, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.372 -0.0354 -0.0716 2.31e-06 0 0 0 Tank initStep + 1 5e+03 1.27e+03 -4.42e+03 2.31e-06 0 6.79e+03 6.79e+03 World Transportation + 2 5e+03 1.27e+03 -4.42e+03 2.31e-06 0 0 6.79e+03 Tank Transportation + 3 4.59e+03 1.33e+03 -5e+03 2.31e-06 0 713 7.51e+03 World Transportation + 4 4.59e+03 1.33e+03 -5e+03 2.31e-06 0 0 7.51e+03 Tank Transportation + 5 30.6 2.49e+03 -500 2.31e-06 0 6.51e+03 1.4e+04 Bubble Transportation + 6 -500 2.63e+03 -371 2.31e-06 2.31e-06 562 1.46e+04 Tank Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 0.471 -0.0436 -0.116 0.283 0 0 0.495 Tank initStep + 5 0.51 -0.0561 -0.132 0.0018 0.281 0.0447 0.54 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 29, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.486 -0.0486 -0.123 3.57e-06 0 0 0 Tank initStep + 1 -1.34e+03 2.35e+03 2.32e+03 3.57e-06 3.57e-06 3.57e+03 3.57e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 28, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.49 -0.0496 -0.124 2.2e-06 0 0 0 Tank initStep + 1 3.37e+03 -1.38e+03 4.81e+03 2.2e-06 2.2e-06 6.04e+03 6.04e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 27, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.493 -0.0508 -0.125 2.48e-06 0 0 0 Tank initStep + 1 -1.25e+03 -1.53e+03 5e+03 2.48e-06 0 5.38e+03 5.38e+03 World Transportation + 2 -1.06e+03 -3.83e+03 1e+04 2.48e-06 0 5.51e+03 1.09e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 26, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.492 -0.0505 -0.125 2.04e-06 0 0 0 Tank initStep + 1 1.97e+03 2.6e+03 -5e+03 2.04e-06 0 5.97e+03 5.97e+03 World Transportation + 2 1.97e+03 2.6e+03 -5e+03 2.04e-06 0 0 5.97e+03 Tank Transportation + 3 2.45e+03 4.66e+03 -2.27e+03 2.04e-06 2.04e-06 3.45e+03 9.42e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 25, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.499 -0.0526 -0.127 3.6e-06 0 0 0 Tank initStep + 1 5e+03 -1.15e+03 1.4e+03 3.6e-06 0 5.32e+03 5.32e+03 World Transportation + 2 1e+04 -3.08e+03 5.15e+03 3.6e-06 0 6.54e+03 1.19e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 24, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.492 -0.0504 -0.125 2.63e-06 0 0 0 Tank initStep + 1 -238 -2.5e+03 5e+03 2.63e-06 0 5.59e+03 5.59e+03 World Transportation + 2 -824 -8.52e+03 1e+04 2.63e-06 0 7.85e+03 1.34e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 23, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.491 -0.0499 -0.124 3.39e-06 0 0 0 Tank initStep + 1 -5e+03 -2.1e+03 1.89e+03 3.39e-06 0 5.75e+03 5.75e+03 World Transportation + 2 -5e+03 -2.1e+03 1.89e+03 3.39e-06 0 0 5.75e+03 Tank Transportation + 3 -1.48e+03 -4.24e+03 3.75e+03 3.39e-06 3.39e-06 4.52e+03 1.03e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 22, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.506 -0.0547 -0.13 3.29e-06 0 0 0 Tank initStep + 1 5e+03 -1.53e+03 -3.39e+03 3.29e-06 0 6.23e+03 6.23e+03 World Transportation + 2 5e+03 -1.53e+03 -3.39e+03 3.29e-06 0 0 6.23e+03 Tank Transportation + 3 2.87e+03 -1.99e+03 -5e+03 3.29e-06 0 2.7e+03 8.94e+03 World Transportation + 4 2.87e+03 -1.99e+03 -5e+03 3.29e-06 0 0 8.94e+03 Tank Transportation + 5 50.2 2e+03 -241 3.29e-06 0 6.82e+03 1.58e+04 Bubble Transportation + 6 50.2 2e+03 -241 3.29e-06 0 0 1.58e+04 Tank Transportation + 7 -2.58e+03 -1.72e+03 4.2e+03 3.29e-06 3.29e-06 6.36e+03 2.21e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 21, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.491 -0.0499 -0.124 2.31e-06 0 0 0 Tank initStep + 1 1.12e+03 -1.07e+03 -1.88e+03 2.31e-06 2.31e-06 2.44e+03 2.44e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 20, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.504 -0.0541 -0.129 3.46e-06 0 0 0 Tank initStep + 1 1.03e+03 1.88e+03 5e+03 3.46e-06 0 5.44e+03 5.44e+03 World Transportation + 2 5.44e+03 3.26e+03 1e+04 3.46e-06 0 6.8e+03 1.22e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 19, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.481 -0.0469 -0.12 3.99e-06 0 0 0 Tank initStep + 1 -3.43e+03 359 -5e+03 3.99e-06 0 6.07e+03 6.07e+03 World Transportation + 2 -3.43e+03 359 -5e+03 3.99e-06 0 0 6.07e+03 Tank Transportation + 3 -5e+03 554 -2.66e+03 3.99e-06 0 2.82e+03 8.9e+03 World Transportation + 4 -5e+03 554 -2.66e+03 3.99e-06 0 0 8.9e+03 Tank Transportation + 5 -1.42e+03 1.28e+03 3.81e+03 3.99e-06 3.99e-06 7.43e+03 1.63e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 0.51 -0.0561 -0.132 0.0018 0 0 0.54 Tank initStep + 6 0.51 -0.0561 -0.132 0.00179 1.3e-05 9.18e-06 0.54 Tank msc + 7 0.51 -0.0562 -0.132 0 0.00179 0.000113 0.54 Tank eIoni + 8 0.51 -0.0562 -0.132 0 0 0 0.54 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 31, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.51 -0.0562 -0.132 0.511 0 0 0 Tank initStep + 1 -2.41 -17.9 -33.5 0.423 2.92e-05 38 38 Tank compt + 2 6.22 -55.8 -53.2 0.226 1.42e-05 43.6 81.6 Tank compt + 3 3 -63.8 -36.8 0.127 1.42e-05 18.5 100 Tank compt + 4 -61.3 -0.874 -134 0.125 2.92e-05 133 233 Tank compt + 5 -65.7 9.97 -157 0.124 2.92e-05 25.9 259 Tank compt + 6 -65.9 13.2 -167 0.119 1.42e-05 10.2 269 Tank compt + 7 -66.5 63.1 -204 0.114 1.36e-05 62 331 Tank compt + 8 -104 102 -270 0.0935 1.42e-05 85.6 416 Tank compt + 9 -101 151 -241 0.0862 2.92e-05 57 473 Tank compt + 10 -318 308 -224 0 2.92e-05 269 742 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -318 308 -224 0.0862 0 0 0 Tank initStep + 1 -318 308 -224 0.0846 0.00162 0.00882 0.00882 Tank msc + 2 -318 308 -224 0.068 0.0166 0.0366 0.0454 Tank eIoni + 3 -319 308 -224 0.0555 0.0125 0.0295 0.0749 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 42, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -319 308 -224 2.32e-06 0 0 0 Tank initStep + 1 -3.37e+03 -3.21e+03 2.13e+03 2.32e-06 2.32e-06 5.22e+03 5.22e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 -319 308 -224 0.0555 0 0 0.0749 Tank initStep + 4 -319 308 -224 0.0533 0.00228 0.00408 0.079 Tank msc + 5 -319 308 -224 0.0409 0.0124 0.0238 0.103 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 43, Parent ID = 41 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -319 308 -224 4.13e-06 0 0 0 Tank initStep + 1 -382 -282 -704 4.13e-06 4.13e-06 764 764 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 41, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 -319 308 -224 0.0409 0 0 0.103 Tank initStep + 6 -319 308 -224 0.0402 0.000702 0.00238 0.105 Tank msc + 7 -319 308 -224 0.0252 0.015 0.019 0.124 Tank eIoni + 8 -319 308 -224 0.00972 0.0155 0.0122 0.136 Tank eIoni + 9 -319 308 -224 0 0.00972 0.00236 0.139 Tank eIoni + 10 -319 308 -224 0 0 0 0.139 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 40, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -101 151 -241 0.00722 0 0 0 Tank initStep + 1 -101 151 -241 0.00715 7.2e-05 0.000112 0.000112 Tank msc + 2 -101 151 -241 0 0.00715 0.00137 0.00149 Tank eIoni + 3 -101 151 -241 0 0 0 0.00149 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 39, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -104 102 -270 0.0209 0 0 0 Tank initStep + 1 -104 102 -270 0.0208 0.000175 0.000728 0.000728 Tank msc + 2 -104 102 -270 0 0.0208 0.00897 0.0097 Tank eIoni + 3 -104 102 -270 0 0 0 0.0097 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 46, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -104 102 -270 2.47e-06 0 0 0 Tank initStep + 1 -5e+03 -1.06e+03 2.12e+03 2.47e-06 0 5.57e+03 5.57e+03 World Transportation + 2 -1e+04 -928 6.64e+03 2.47e-06 0 6.74e+03 1.23e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 45, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -104 102 -270 2.91e-06 0 0 0 Tank initStep + 1 -4.97e+03 -5e+03 3.9e+03 2.91e-06 0 8.19e+03 8.19e+03 World Transportation + 2 -4.97e+03 -5e+03 3.9e+03 2.91e-06 0 0 8.19e+03 Tank Transportation + 3 -5e+03 -4.91e+03 3.96e+03 2.91e-06 0 111 8.3e+03 World Transportation + 4 -5e+03 -4.91e+03 3.96e+03 2.91e-06 0 0 8.3e+03 Tank Transportation + 5 5e+03 2.06e+03 3.81e+03 2.91e-06 0 1.22e+04 2.05e+04 World Transportation + 6 5e+03 2.06e+03 3.81e+03 2.91e-06 0 0 2.05e+04 Tank Transportation + 7 2.69e+03 4.96e+03 5e+03 2.91e-06 0 3.9e+03 2.44e+04 World Transportation + 8 550 1e+04 5.87e+03 2.91e-06 0 5.54e+03 2.99e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 44, Parent ID = 39 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -104 102 -270 3.63e-06 0 0 0 Tank initStep + 1 2.04e+03 1.79e+03 -5e+03 3.63e-06 0 5.46e+03 5.46e+03 World Transportation + 2 6.1e+03 5.42e+03 -1e+04 3.63e-06 0 7.39e+03 1.29e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 38, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -66.5 63.1 -204 0.00446 0 0 0 Tank initStep + 1 -66.5 63.1 -204 0.00433 0.00013 4.85e-05 4.85e-05 Tank msc + 2 -66.5 63.1 -204 0 0.00433 0.000576 0.000625 Tank eIoni + 3 -66.5 63.1 -204 0 0 0 0.000625 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 37, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -65.9 13.2 -167 0.00535 0 0 0 Tank initStep + 1 -65.9 13.2 -167 0.00522 0.000124 6.62e-05 6.62e-05 Tank msc + 2 -65.9 13.2 -167 0 0.00522 0.000795 0.000861 Tank eIoni + 3 -65.9 13.2 -167 0 0 0 0.000861 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 36, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -65.7 9.97 -157 0.000674 0 0 0 Tank initStep + 1 -65.7 9.97 -157 0.000604 7.06e-05 2.41e-06 2.41e-06 Tank msc + 2 -65.7 9.97 -157 0 0.000604 2.6e-05 2.84e-05 Tank eIoni + 3 -65.7 9.97 -157 0 0 0 2.84e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 35, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -61.3 -0.874 -134 0.00161 0 0 0 Tank initStep + 1 -61.3 -0.874 -134 0.00157 3.32e-05 8.79e-06 8.79e-06 Tank msc + 2 -61.3 -0.874 -134 0 0.00157 0.000106 0.000115 Tank eIoni + 3 -61.3 -0.874 -134 0 0 0 0.000115 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 47, Parent ID = 35 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -61.3 -0.874 -134 2.51e-06 0 0 0 Tank initStep + 1 -5e+03 572 -4.58e+03 2.51e-06 0 6.67e+03 6.67e+03 World Transportation + 2 -5e+03 572 -4.58e+03 2.51e-06 0 0 6.67e+03 Tank Transportation + 3 -4.01e+03 582 -5e+03 2.51e-06 0 1.07e+03 7.74e+03 World Transportation + 4 -4.01e+03 582 -5e+03 2.51e-06 0 0 7.74e+03 Tank Transportation + 5 5e+03 -1.91e+03 435 2.51e-06 0 1.08e+04 1.86e+04 World Transportation + 6 5e+03 -1.91e+03 435 2.51e-06 0 0 1.86e+04 Tank Transportation + 7 3.65e+03 -5e+03 2.03e+03 2.51e-06 0 3.73e+03 2.23e+04 World Transportation + 8 -2.17e+03 -9.88e+03 1e+04 2.51e-06 0 1.1e+04 3.33e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3 -63.8 -36.8 0.099 0 0 0 Tank initStep + 1 3 -63.8 -36.8 0.0967 0.00232 0.0112 0.0112 Tank msc + 2 3.02 -63.8 -36.8 0.0816 0.0151 0.0422 0.0534 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 48, Parent ID = 34 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.01 -63.8 -36.8 2.45e-06 0 0 0 Tank initStep + 1 1.77e+03 97.6 2.3e+03 2.45e-06 2.45e-06 2.94e+03 2.94e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 3.02 -63.8 -36.8 0.0816 0 0 0.0534 Tank initStep + 3 3.01 -63.8 -36.8 0.0771 0.0045 0.00802 0.0614 Tank msc + 4 3.01 -63.8 -36.8 0.0647 0.0125 0.0333 0.0947 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 49, Parent ID = 34 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.01 -63.8 -36.8 3.71e-06 0 0 0 Tank initStep + 1 -5e+03 -3.67e+03 1.88e+03 3.71e-06 0 6.46e+03 6.46e+03 World Transportation + 2 -5e+03 -3.67e+03 1.88e+03 3.71e-06 0 0 6.46e+03 Tank Transportation + 3 -4.96e+03 -3.71e+03 1.92e+03 3.71e-06 0 66.7 6.53e+03 Tank OpRayleigh + 4 -5e+03 -3.76e+03 1.92e+03 3.71e-06 0 57.5 6.59e+03 World Transportation + 5 -5e+03 -3.76e+03 1.92e+03 3.71e-06 0 0 6.59e+03 Tank Transportation + 6 -1.19e+03 -5e+03 1.16e+03 3.71e-06 0 4.08e+03 1.07e+04 World Transportation + 7 -1.19e+03 -5e+03 1.16e+03 3.71e-06 0 0 1.07e+04 Tank Transportation + 8 -217 -4.73e+03 709 3.71e-06 3.71e-06 1.11e+03 1.18e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 3.01 -63.8 -36.8 0.0647 0 0 0.0947 Tank initStep + 5 3.01 -63.8 -36.8 0.0631 0.00157 0.00533 0.1 Tank msc + 6 3.02 -63.8 -36.8 0.0517 0.0114 0.0275 0.128 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 51, Parent ID = 34 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.02 -63.8 -36.8 3.9e-06 0 0 0 Tank initStep + 1 -736 -1.51e+03 3.07e+03 3.9e-06 3.9e-06 3.5e+03 3.5e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 50, Parent ID = 34 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.01 -63.8 -36.8 2.4e-06 0 0 0 Tank initStep + 1 5e+03 1.31e+03 -933 2.4e-06 0 5.26e+03 5.26e+03 World Transportation + 2 5e+03 1.31e+03 -933 2.4e-06 0 0 5.26e+03 Tank Transportation + 3 3.7e+03 568 -842 2.4e-06 2.4e-06 1.5e+03 6.76e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 3.02 -63.8 -36.8 0.0517 0 0 0.128 Tank initStep + 7 3.02 -63.8 -36.8 0.0498 0.00196 0.0036 0.131 Tank msc + 8 3.04 -63.8 -36.8 0.0322 0.0175 0.0225 0.154 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 52, Parent ID = 34 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.04 -63.8 -36.8 3.42e-06 0 0 0 Tank initStep + 1 5e+03 3.65e+03 -2.35e+03 3.42e-06 0 6.64e+03 6.64e+03 World Transportation + 2 5e+03 3.65e+03 -2.35e+03 3.42e-06 0 0 6.64e+03 Tank Transportation + 3 3.47e+03 5e+03 -3.03e+03 3.42e-06 0 2.15e+03 8.79e+03 World Transportation + 4 3.47e+03 5e+03 -3.03e+03 3.42e-06 0 0 8.79e+03 Tank Transportation + 5 -1.52e+03 2.37e+03 -5e+03 3.42e-06 0 5.97e+03 1.48e+04 World Transportation + 6 -1.52e+03 2.37e+03 -5e+03 3.42e-06 0 0 1.48e+04 Tank Transportation + 7 -4.18e+03 2.1e+03 -2.49e+03 3.42e-06 3.42e-06 3.67e+03 1.84e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 3.04 -63.8 -36.8 0.0322 0 0 0.154 Tank initStep + 9 3.04 -63.8 -36.8 0.0157 0.0166 0.00156 0.155 Tank msc + 10 3.04 -63.8 -36.8 0 0.0157 0.00545 0.161 Tank eIoni + 11 3.04 -63.8 -36.8 0 0 0 0.161 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.22 -55.8 -53.2 0.197 0 0 0 Tank initStep + 1 6.23 -55.9 -53.2 0.175 0.0223 0.0348 0.0348 Tank msc + 2 6.24 -55.9 -53.3 0.157 0.0178 0.0875 0.122 Tank eIoni + 3 6.3 -56 -53.3 0.138 0.0189 0.076 0.198 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 53, Parent ID = 33 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.3 -56 -53.3 2.22e-06 0 0 0 Tank initStep + 1 -5e+03 748 4.12e+03 2.22e-06 0 6.57e+03 6.57e+03 World Transportation + 2 -5e+03 748 4.12e+03 2.22e-06 0 0 6.57e+03 Tank Transportation + 3 -3.74e+03 1.1e+03 5e+03 2.22e-06 0 1.58e+03 8.15e+03 World Transportation + 4 -3.74e+03 1.1e+03 5e+03 2.22e-06 0 0 8.15e+03 Tank Transportation + 5 -3.51e+03 1.62e+03 4e+03 2.22e-06 2.22e-06 1.15e+03 9.3e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 6.3 -56 -53.3 0.138 0 0 0.198 Tank initStep + 4 6.31 -56 -53.3 0.132 0.00603 0.0195 0.218 Tank msc + 5 6.34 -56 -53.3 0.114 0.0178 0.061 0.279 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 54, Parent ID = 33 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.32 -56 -53.3 3.71e-06 0 0 0 Tank initStep + 1 -5e+03 145 -325 3.71e-06 0 5.02e+03 5.02e+03 World Transportation + 2 -1e+04 -475 -1.05e+03 3.71e-06 0 5.09e+03 1.01e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 6.34 -56 -53.3 0.114 0 0 0.279 Tank initStep + 6 6.35 -56 -53.3 0.111 0.00357 0.0142 0.293 Tank msc + 7 6.37 -56 -53.4 0.0889 0.0219 0.0493 0.342 Tank eIoni + 8 6.4 -56 -53.4 0.0755 0.0134 0.0385 0.381 Tank eIoni + 9 6.42 -56 -53.4 0.0553 0.0202 0.0326 0.414 Tank eIoni + 10 6.44 -56 -53.4 0.0415 0.0138 0.0246 0.438 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 55, Parent ID = 33 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.44 -56 -53.4 3.21e-06 0 0 0 Tank initStep + 1 -132 -3.09e+03 -5e+03 3.21e-06 0 5.81e+03 5.81e+03 World Transportation + 2 1.37e+03 -1e+04 -7.41e+03 3.21e-06 0 7.47e+03 1.33e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 10 6.44 -56 -53.4 0.0415 0 0 0.438 Tank initStep + 11 6.44 -56 -53.4 0.0391 0.00237 0.00245 0.441 Tank msc + 12 6.45 -56 -53.4 0.0169 0.0222 0.0186 0.459 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 57, Parent ID = 33 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.45 -56 -53.4 4.13e-06 0 0 0 Tank initStep + 1 5e+03 1.07e+03 568 4.13e-06 0 5.16e+03 5.16e+03 World Transportation + 2 1e+04 2.08e+03 1.08e+03 4.13e-06 0 5.13e+03 1.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 56, Parent ID = 33 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.44 -56 -53.4 2.55e-06 0 0 0 Tank initStep + 1 -5e+03 3.1e+03 -3.2e+03 2.55e-06 0 6.7e+03 6.7e+03 World Transportation + 2 -5e+03 3.1e+03 -3.2e+03 2.55e-06 0 0 6.7e+03 Tank Transportation + 3 -2.71e+03 3.98e+03 -5e+03 2.55e-06 0 3.05e+03 9.75e+03 World Transportation + 4 -2.71e+03 3.98e+03 -5e+03 2.55e-06 0 0 9.75e+03 Tank Transportation + 5 -42.3 2.41e+03 -500 2.55e-06 0 5.46e+03 1.52e+04 Bubble Transportation + 6 500 2.09e+03 30.3 2.55e-06 2.55e-06 823 1.6e+04 Tank Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 12 6.45 -56 -53.4 0.0169 0 0 0.459 Tank initStep + 13 6.45 -56 -53.4 0.0163 0.000632 0.000501 0.46 Tank msc + 14 6.45 -56 -53.4 0 0.0163 0.00586 0.466 Tank eIoni + 15 6.45 -56 -53.4 0 0 0 0.466 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.41 -17.9 -33.5 0.0882 0 0 0 Tank initStep + 1 -2.42 -17.9 -33.5 0.0844 0.00381 0.00918 0.00918 Tank msc + 2 -2.43 -17.9 -33.5 0.069 0.0155 0.0365 0.0457 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 59, Parent ID = 32 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.42 -17.9 -33.5 3.85e-06 0 0 0 Tank initStep + 1 2.47e+03 5e+03 -327 3.85e-06 0 5.6e+03 5.6e+03 World Transportation + 2 2.47e+03 5e+03 -327 3.85e-06 0 0 5.6e+03 Tank Transportation + 3 5e+03 2.89e+03 -1.04e+03 3.85e-06 0 3.37e+03 8.97e+03 World Transportation + 4 5e+03 2.89e+03 -1.04e+03 3.85e-06 0 0 8.97e+03 Tank Transportation + 5 1.89e+03 990 -992 3.85e-06 3.85e-06 3.64e+03 1.26e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 58, Parent ID = 32 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.42 -17.9 -33.5 3.34e-06 0 0 0 Tank initStep + 1 -3.64e+03 -4.06e+03 5e+03 3.34e-06 0 7.41e+03 7.41e+03 World Transportation + 2 -9.63e+03 -1e+04 6.53e+03 3.34e-06 0 8.57e+03 1.6e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 -2.43 -17.9 -33.5 0.069 0 0 0.0457 Tank initStep + 3 -2.43 -17.9 -33.5 0.0664 0.00257 0.00598 0.0517 Tank msc + 4 -2.41 -17.9 -33.6 0.0557 0.0107 0.0288 0.0805 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 60, Parent ID = 32 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.42 -17.9 -33.5 2.55e-06 0 0 0 Tank initStep + 1 -4.5e+03 2.21e+03 -780 2.55e-06 0 5.07e+03 5.07e+03 Tank OpRayleigh + 2 -5e+03 2.18e+03 -1.07e+03 2.55e-06 0 583 5.66e+03 World Transportation + 3 -5e+03 2.18e+03 -1.07e+03 2.55e-06 0 0 5.66e+03 Tank Transportation + 4 -2.23e+03 5e+03 -1.52e+03 2.55e-06 0 3.98e+03 9.64e+03 World Transportation + 5 -2.23e+03 5e+03 -1.52e+03 2.55e-06 0 0 9.64e+03 Tank Transportation + 6 1.24e+03 2.29e+03 -5e+03 2.55e-06 0 5.61e+03 1.52e+04 World Transportation + 7 1.24e+03 2.29e+03 -5e+03 2.55e-06 0 0 1.52e+04 Tank Transportation + 8 5e+03 477 2.19e+03 2.55e-06 0 8.31e+03 2.36e+04 World Transportation + 9 5e+03 477 2.19e+03 2.55e-06 0 0 2.36e+04 Tank Transportation + 10 -3.73e+03 -2.43e+03 5e+03 2.55e-06 0 9.62e+03 3.32e+04 World Transportation + 11 -3.73e+03 -2.43e+03 5e+03 2.55e-06 0 0 3.32e+04 Tank Transportation + 12 -5e+03 -2.92e+03 3.85e+03 2.55e-06 0 1.78e+03 3.5e+04 World Transportation + 13 -5e+03 -2.92e+03 3.85e+03 2.55e-06 0 0 3.5e+04 Tank Transportation + 14 -1.88e+03 -5e+03 1.75e+03 2.55e-06 0 4.3e+03 3.93e+04 World Transportation + 15 -1.88e+03 -5e+03 1.75e+03 2.55e-06 0 0 3.93e+04 Tank Transportation + 16 4.71e+03 5e+03 -3.35e+03 2.55e-06 0 1.3e+04 5.23e+04 World Transportation + 17 1e+04 8.19e+03 -7.8e+03 2.55e-06 0 7.61e+03 5.99e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 -2.41 -17.9 -33.6 0.0557 0 0 0.0805 Tank initStep + 5 -2.41 -17.9 -33.6 0.0537 0.00193 0.0041 0.0846 Tank msc + 6 -2.4 -17.9 -33.6 0.0406 0.0132 0.024 0.109 Tank eIoni + 7 -2.39 -17.9 -33.6 0.0243 0.0163 0.0192 0.128 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 61, Parent ID = 32 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.4 -17.9 -33.6 3.7e-06 0 0 0 Tank initStep + 1 419 4.16e+03 3.06e+03 3.7e-06 3.7e-06 5.22e+03 5.22e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 -2.39 -17.9 -33.6 0.0243 0 0 0.128 Tank initStep + 8 -2.39 -17.9 -33.6 0.0232 0.00109 0.000946 0.129 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 62, Parent ID = 32 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.39 -17.9 -33.6 2.26e-06 0 0 0 Tank initStep + 1 254 -2.29e+03 -5e+03 2.26e-06 0 5.47e+03 5.47e+03 World Transportation + 2 254 -2.29e+03 -5e+03 2.26e-06 0 0 5.47e+03 Tank Transportation + 3 146 -5e+03 -4.13e+03 2.26e-06 0 2.85e+03 8.32e+03 World Transportation + 4 146 -5e+03 -4.13e+03 2.26e-06 0 0 8.32e+03 Tank Transportation + 5 -712 -3.72e+03 -2.65e+03 2.26e-06 2.26e-06 2.14e+03 1.05e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 31 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 -2.39 -17.9 -33.6 0.0232 0 0 0.129 Tank initStep + 9 -2.39 -17.9 -33.6 0.0184 0.00477 0.000872 0.13 Tank msc + 10 -2.39 -17.9 -33.6 0 0.0184 0.00726 0.137 Tank eIoni + 11 -2.39 -17.9 -33.6 0 0 0 0.137 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 30, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.51 -0.0562 -0.132 0.511 0 0 0 Tank initStep + 1 9.1 52.4 97.9 0.276 1.42e-05 112 112 Tank compt + 2 2.96 31 116 0.204 2.92e-05 28.4 140 Tank compt + 3 6.57 44.1 158 0.125 1.36e-05 44.6 185 Tank compt + 4 4.87 47.6 154 0.0972 0.000537 5.89 190 Tank compt + 5 21.7 62.3 164 0.0892 2.92e-05 24.7 215 Tank compt + 6 252 23.7 136 0.0891 1.36e-05 236 451 Tank compt + 7 281 21.2 134 0.0699 1.42e-05 29.2 480 Tank compt + 8 260 14.8 173 0.0566 2.92e-05 45.6 526 Tank compt + 9 269 65.2 137 0.0499 1.42e-05 62.9 589 Tank compt + 10 289 57.4 142 0.0496 2.92e-05 22.3 611 Tank compt + 11 324 53.1 141 0.0417 1.36e-05 35.2 646 Tank compt + 12 229 45.3 151 0.041 1.42e-05 95.8 742 Tank compt + 13 157 92 144 0.04 2.92e-05 86.1 828 Tank compt + 14 154 97.7 148 0.0362 1.42e-05 8.07 836 Tank compt + 15 124 58.4 154 0.0361 1.42e-05 49.8 886 Tank compt + 16 114 42.6 168 0.0359 2.92e-05 23.4 909 Tank compt + 17 110 40.9 172 0 0.000537 5.61 915 Tank phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 79, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 110 40.9 172 0.0353 0 0 0 Tank initStep + 1 110 40.9 172 0.0335 0.00187 0.00184 0.00184 Tank msc + 2 110 40.9 172 0.0195 0.0139 0.0163 0.0182 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 81, Parent ID = 79 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 110 40.9 172 2.45e-06 0 0 0 Tank initStep + 1 2.42e+03 5e+03 548 2.45e-06 0 5.49e+03 5.49e+03 World Transportation + 2 2.42e+03 5e+03 548 2.45e-06 0 0 5.49e+03 Tank Transportation + 3 5e+03 -2.17e+03 2.62e+03 2.45e-06 0 7.89e+03 1.34e+04 World Transportation + 4 5e+03 -2.17e+03 2.62e+03 2.45e-06 0 0 1.34e+04 Tank Transportation + 5 2.06e+03 -5e+03 2.06e+03 2.45e-06 0 4.12e+03 1.75e+04 World Transportation + 6 2.06e+03 -5e+03 2.06e+03 2.45e-06 0 0 1.75e+04 Tank Transportation + 7 -2.39e+03 2.04e+03 681 2.45e-06 2.45e-06 8.45e+03 2.59e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 80, Parent ID = 79 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 110 40.9 172 2.63e-06 0 0 0 Tank initStep + 1 -2.49e+03 46.5 5e+03 2.63e-06 0 5.49e+03 5.49e+03 World Transportation + 2 -2.49e+03 46.5 5e+03 2.63e-06 0 0 5.49e+03 Tank Transportation + 3 -5e+03 1.01e+03 2.35e+03 2.63e-06 0 3.77e+03 9.26e+03 World Transportation + 4 -5e+03 1.01e+03 2.35e+03 2.63e-06 0 0 9.26e+03 Tank Transportation + 5 3.87e+03 3.97e+03 -5e+03 2.63e-06 0 1.19e+04 2.12e+04 World Transportation + 6 3.87e+03 3.97e+03 -5e+03 2.63e-06 0 0 2.12e+04 Tank Transportation + 7 5e+03 4.5e+03 -4.17e+03 2.63e-06 0 1.5e+03 2.26e+04 World Transportation + 8 5e+03 4.5e+03 -4.17e+03 2.63e-06 0 0 2.26e+04 Tank Transportation + 9 3.99e+03 5e+03 -3.52e+03 2.63e-06 0 1.31e+03 2.4e+04 World Transportation + 10 3.99e+03 5e+03 -3.52e+03 2.63e-06 0 0 2.4e+04 Tank Transportation + 11 500 2.23e+03 -317 2.63e-06 2.63e-06 5.48e+03 2.94e+04 Bubble Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 79, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 110 40.9 172 0.0195 0 0 0.0182 Tank initStep + 3 110 40.9 172 0.0183 0.00124 0.000645 0.0188 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 82, Parent ID = 79 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 110 40.9 172 3.26e-06 0 0 0 Tank initStep + 1 4.4e+03 5e+03 -4.1e+03 3.26e-06 0 7.83e+03 7.83e+03 World Transportation + 2 4.4e+03 5e+03 -4.1e+03 3.26e-06 0 0 7.83e+03 Tank Transportation + 3 4.92e+03 3.88e+03 -5e+03 3.26e-06 0 1.53e+03 9.35e+03 World Transportation + 4 4.92e+03 3.88e+03 -5e+03 3.26e-06 0 0 9.35e+03 Tank Transportation + 5 5e+03 2.56e+03 -3.94e+03 3.26e-06 0 1.69e+03 1.1e+04 World Transportation + 6 5e+03 2.56e+03 -3.94e+03 3.26e-06 0 0 1.1e+04 Tank Transportation + 7 2.75e+03 -5e+03 2.31e+03 3.26e-06 0 1.01e+04 2.11e+04 World Transportation + 8 2.75e+03 -5e+03 2.31e+03 3.26e-06 0 0 2.11e+04 Tank Transportation + 9 520 -3.74e+03 5e+03 3.26e-06 0 3.71e+03 2.48e+04 World Transportation + 10 520 -3.74e+03 5e+03 3.26e-06 0 0 2.48e+04 Tank Transportation + 11 -1.55e+03 -4.21e+03 2.46e+03 3.26e-06 3.26e-06 3.31e+03 2.81e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 79, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 110 40.9 172 0.0183 0 0 0.0188 Tank initStep + 4 110 40.9 172 0.0177 0.00065 0.000575 0.0194 Tank msc + 5 110 40.9 172 0 0.0177 0.00675 0.0261 Tank eIoni + 6 110 40.9 172 0 0 0 0.0261 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 78, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 114 42.6 168 0.000245 0 0 0 Tank initStep + 1 114 42.6 168 0.000101 0.000144 7.78e-07 7.78e-07 Tank msc + 2 114 42.6 168 0 0.000101 5.43e-06 6.2e-06 Tank eIoni + 3 114 42.6 168 0 0 0 6.2e-06 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 77, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 124 58.4 154 8.32e-05 0 0 0 Tank initStep + 1 124 58.4 154 0 8.32e-05 3.93e-07 3.93e-07 Tank msc + 2 124 58.4 154 0 0 0 3.93e-07 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 154 97.7 148 0.00373 0 0 0 Tank initStep + 1 154 97.7 148 0.00357 0.000162 3.57e-05 3.57e-05 Tank msc + 2 154 97.7 148 0 0.00357 0.000413 0.000449 Tank eIoni + 3 154 97.7 148 0 0 0 0.000449 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 75, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 157 92 144 0.000944 0 0 0 Tank initStep + 1 157 92 144 0.000783 0.000161 3.88e-06 3.88e-06 Tank msc + 2 157 92 144 0 0.000783 3.71e-05 4.1e-05 Tank eIoni + 3 157 92 144 0 0 0 4.1e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 74, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 229 45.3 151 0.000761 0 0 0 Tank initStep + 1 229 45.3 151 0.000607 0.000153 2.85e-06 2.85e-06 Tank msc + 2 229 45.3 151 0 0.000607 2.62e-05 2.91e-05 Tank eIoni + 3 229 45.3 151 0 0 0 2.91e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 73, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 324 53.1 141 0.00785 0 0 0 Tank initStep + 1 324 53.1 141 0.00784 1.52e-05 0.00013 0.00013 Tank msc + 2 324 53.1 141 0 0.00784 0.00161 0.00174 Tank eIoni + 3 324 53.1 141 0 0 0 0.00174 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 72, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 289 57.4 142 0.000318 0 0 0 Tank initStep + 1 289 57.4 142 0.000318 0 9.93e-07 9.93e-07 Tank msc + 2 289 57.4 142 0 0.000318 1.24e-05 1.34e-05 Tank eIoni + 3 289 57.4 142 0 0 0 1.34e-05 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 71, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 269 65.2 137 0.00666 0 0 0 Tank initStep + 1 269 65.2 137 0.00637 0.000295 9.71e-05 9.71e-05 Tank msc + 2 269 65.2 137 0 0.00637 0.00112 0.00122 Tank eIoni + 3 269 65.2 137 0 0 0 0.00122 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 70, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 260 14.8 173 0.0132 0 0 0 Tank initStep + 1 260 14.8 173 0.0129 0.000335 0.000324 0.000324 Tank msc + 2 260 14.8 173 0 0.0129 0.00387 0.0042 Tank eIoni + 3 260 14.8 173 0 0 0 0.0042 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 69, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 281 21.2 134 0.0192 0 0 0 Tank initStep + 1 281 21.2 134 0.0187 0.000497 0.000627 0.000627 Tank msc + 2 281 21.2 134 0 0.0187 0.00748 0.00811 Tank eIoni + 3 281 21.2 134 0 0 0 0.00811 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 68, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 252 23.7 136 5.59e-05 0 0 0 Tank initStep + 1 252 23.7 136 0 5.59e-05 3.01e-07 3.01e-07 Tank msc + 2 252 23.7 136 0 0 0 3.01e-07 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 67, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 21.7 62.3 164 0.00797 0 0 0 Tank initStep + 1 21.7 62.3 164 0.00765 0.000315 0.000133 0.000133 Tank msc + 2 21.7 62.3 164 0 0.00765 0.00155 0.00168 Tank eIoni + 3 21.7 62.3 164 0 0 0 0.00168 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 66, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 4.87 47.6 154 0.0272 0 0 0 Tank initStep + 1 4.87 47.6 154 0.0269 0.000379 0.00116 0.00116 Tank msc + 2 4.87 47.6 154 0.0139 0.013 0.0132 0.0144 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 83, Parent ID = 66 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 4.87 47.6 154 2.65e-06 0 0 0 Tank initStep + 1 -4.04e+03 5e+03 -657 2.65e-06 0 6.44e+03 6.44e+03 World Transportation + 2 -4.04e+03 5e+03 -657 2.65e-06 0 0 6.44e+03 Tank Transportation + 3 -5e+03 4.55e+03 -932 2.65e-06 0 1.1e+03 7.54e+03 World Transportation + 4 -1e+04 2.52e+03 -6.82e+03 2.65e-06 0 7.98e+03 1.55e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 66, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 4.87 47.6 154 0.0139 0 0 0.0144 Tank initStep + 3 4.87 47.6 154 0.0133 0.000535 0.000352 0.0147 Tank msc + 4 4.87 47.6 154 0 0.0133 0.00411 0.0188 Tank eIoni + 5 4.87 47.6 154 0 0 0 0.0188 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 65, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.57 44.1 158 0.079 0 0 0 Tank initStep + 1 6.58 44.1 158 0.0748 0.00424 0.00758 0.00758 Tank msc + 2 6.58 44.1 158 0.0621 0.0126 0.0323 0.0399 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 84, Parent ID = 65 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.58 44.1 158 2.37e-06 0 0 0 Tank initStep + 1 -1.51e+03 -5e+03 -851 2.37e-06 0 5.36e+03 5.36e+03 World Transportation + 2 -4.47e+03 -1e+04 -2.2e+03 2.37e-06 0 5.96e+03 1.13e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 65, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 6.58 44.1 158 0.0621 0 0 0.0399 Tank initStep + 3 6.59 44.1 158 0.0609 0.0012 0.00498 0.0448 Tank msc + 4 6.59 44.1 158 0.0504 0.0105 0.0267 0.0715 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 86, Parent ID = 65 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.59 44.1 158 3.19e-06 0 0 0 Tank initStep + 1 5e+03 -2.18e+03 1.92e+03 3.19e-06 0 5.74e+03 5.74e+03 World Transportation + 2 1e+04 -5.79e+03 7.82e+03 3.19e-06 0 8.53e+03 1.43e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 85, Parent ID = 65 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.59 44.1 158 3.16e-06 0 0 0 Tank initStep + 1 3.39e+03 1.04e+03 1.45e+03 3.16e-06 0 3.75e+03 3.75e+03 Tank OpRayleigh + 2 4.21e+03 4.27e+03 5e+03 3.16e-06 0 4.87e+03 8.62e+03 World Transportation + 3 4.21e+03 4.27e+03 5e+03 3.16e-06 0 0 8.62e+03 Tank Transportation + 4 3.89e+03 5e+03 3.82e+03 3.16e-06 0 1.43e+03 1e+04 World Transportation + 5 3.89e+03 5e+03 3.82e+03 3.16e-06 0 0 1e+04 Tank Transportation + 6 -4.15e+03 -5e+03 1.59e+03 3.16e-06 0 1.3e+04 2.31e+04 World Transportation + 7 -4.15e+03 -5e+03 1.59e+03 3.16e-06 0 0 2.31e+04 Tank Transportation + 8 -5e+03 -4.71e+03 1.29e+03 3.16e-06 0 949 2.4e+04 World Transportation + 9 -1e+04 -51.2 -1.86e+03 3.16e-06 0 7.52e+03 3.15e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 65, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 6.59 44.1 158 0.0504 0 0 0.0715 Tank initStep + 5 6.6 44.1 158 0.0487 0.00171 0.00345 0.075 Tank msc + 6 6.6 44.2 158 0.0327 0.016 0.0222 0.0971 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 87, Parent ID = 65 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.6 44.1 158 3.08e-06 0 0 0 Tank initStep + 1 -5e+03 2.58e+03 334 3.08e-06 0 5.61e+03 5.61e+03 World Transportation + 2 -5e+03 2.58e+03 334 3.08e-06 0 0 5.61e+03 Tank Transportation + 3 5e+03 4.84e+03 -4.17e+03 3.08e-06 0 1.12e+04 1.68e+04 World Transportation + 4 5e+03 4.84e+03 -4.17e+03 3.08e-06 0 0 1.68e+04 Tank Transportation + 5 4.82e+03 5e+03 -4.21e+03 3.08e-06 0 243 1.71e+04 World Transportation + 6 4.82e+03 5e+03 -4.21e+03 3.08e-06 0 0 1.71e+04 Tank Transportation + 7 -370 -126 -2.32e+03 3.08e-06 3.08e-06 7.53e+03 2.46e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 65, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 6.6 44.2 158 0.0327 0 0 0.0971 Tank initStep + 7 6.6 44.2 158 0.0292 0.00351 0.00161 0.0987 Tank msc + 8 6.61 44.2 158 0.0122 0.017 0.0144 0.113 Tank eIoni + 9 6.61 44.2 158 0 0.0122 0.00352 0.117 Tank eIoni + 10 6.61 44.2 158 0 0 0 0.117 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 64, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.96 31 116 0.0722 0 0 0 Tank initStep + 1 2.96 31 116 0.0699 0.00221 0.00647 0.00647 Tank msc + 2 2.95 30.9 116 0.0542 0.0157 0.0303 0.0367 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 88, Parent ID = 64 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.96 30.9 116 3.75e-06 0 0 0 Tank initStep + 1 300 1.04e+03 -5e+03 3.75e-06 0 5.22e+03 5.22e+03 World Transportation + 2 465 2.51e+03 -1e+04 3.75e-06 0 5.21e+03 1.04e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 64, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 2.95 30.9 116 0.0542 0 0 0.0367 Tank initStep + 3 2.95 30.9 116 0.0519 0.00232 0.00391 0.0407 Tank msc + 4 2.94 30.9 116 0.0306 0.0213 0.0233 0.064 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 89, Parent ID = 64 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.94 30.9 116 3.75e-06 0 0 0 Tank initStep + 1 -3.84e+03 4.99e+03 5e+03 3.75e-06 0 7.95e+03 7.95e+03 World Transportation + 2 -3.84e+03 4.99e+03 5e+03 3.75e-06 0 0 7.95e+03 Tank Transportation + 3 -3.85e+03 5e+03 4.99e+03 3.75e-06 0 17 7.97e+03 World Transportation + 4 -3.85e+03 5e+03 4.99e+03 3.75e-06 0 0 7.97e+03 Tank Transportation + 5 -2.75e+03 2.51e+03 3.41e+03 3.75e-06 3.75e-06 3.15e+03 1.11e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 64, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 4 2.94 30.9 116 0.0306 0 0 0.064 Tank initStep + 5 2.94 30.9 116 0.0287 0.00195 0.00143 0.0654 Tank msc + 6 2.94 30.9 116 0.0105 0.0182 0.0142 0.0795 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 91, Parent ID = 64 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.94 30.9 116 3.81e-06 0 0 0 Tank initStep + 1 -193 -4.86e+03 2.04e+03 3.81e-06 3.81e-06 5.26e+03 5.26e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 90, Parent ID = 64 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.94 30.9 116 3.59e-06 0 0 0 Tank initStep + 1 1.34e+03 83.6 -5e+03 3.59e-06 0 5.29e+03 5.29e+03 World Transportation + 2 1.34e+03 83.6 -5e+03 3.59e-06 0 0 5.29e+03 Tank Transportation + 3 5e+03 220 -3.73e+03 3.59e-06 0 3.88e+03 9.16e+03 World Transportation + 4 1e+04 2.6e+03 -3.51e+03 3.59e-06 0 5.54e+03 1.47e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 64, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 6 2.94 30.9 116 0.0105 0 0 0.0795 Tank initStep + 7 2.94 30.9 116 0.0102 0.000293 0.000215 0.0797 Tank msc + 8 2.95 30.9 116 0 0.0102 0.00256 0.0823 Tank eIoni + 9 2.95 30.9 116 0 0 0 0.0823 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 92, Parent ID = 64 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.94 30.9 116 4.08e-06 0 0 0 Tank initStep + 1 -5e+03 -1.13e+03 3.13e+03 4.08e-06 0 5.95e+03 5.95e+03 World Transportation + 2 -1e+04 -2.74e+03 9.66e+03 4.08e-06 0 8.39e+03 1.43e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 63, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 9.1 52.4 97.9 0.235 0 0 0 Tank initStep + 1 9.11 52.5 98 0.226 0.00842 0.0459 0.0459 Tank msc + 2 9.11 52.5 98.1 0.203 0.023 0.124 0.17 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 95, Parent ID = 63 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 9.11 52.5 98 2.26e-06 0 0 0 Tank initStep + 1 3.68e+03 5e+03 -1.01e+03 2.26e-06 0 6.26e+03 6.26e+03 World Transportation + 2 3.68e+03 5e+03 -1.01e+03 2.26e-06 0 0 6.26e+03 Tank Transportation + 3 5e+03 3.82e+03 -658 2.26e-06 0 1.8e+03 8.06e+03 World Transportation + 4 1e+04 -5.78e+03 3.64e+03 2.26e-06 0 1.16e+04 1.97e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 94, Parent ID = 63 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 9.11 52.5 98.1 2.06e-06 0 0 0 Tank initStep + 1 -126 -432 -3.19e+03 2.06e-06 2.06e-06 3.33e+03 3.33e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 93, Parent ID = 63 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 9.11 52.5 98 2.9e-06 0 0 0 Tank initStep + 1 5e+03 -1.32e+03 -891 2.9e-06 0 5.27e+03 5.27e+03 World Transportation + 2 1e+04 -5.88e+03 -3.31e+03 2.9e-06 0 7.19e+03 1.25e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 63, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 2 9.11 52.5 98.1 0.203 0 0 0.17 Tank initStep + 3 9.11 52.5 98.1 0.18 0.0233 0.0366 0.207 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 96, Parent ID = 63 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 9.11 52.5 98.1 3.3e-06 0 0 0 Tank initStep + 1 5e+03 38.4 3.08e+03 3.3e-06 0 5.82e+03 5.82e+03 World Transportation + 2 9.1e+03 -1.14e+03 1e+04 3.3e-06 0 8.13e+03 1.39e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 63, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 3 9.11 52.5 98.1 0.18 0 0 0.207 Tank initStep + 4 9.09 52.5 98.1 0.173 0.00723 0.0301 0.237 Tank msc + 5 9.04 52.5 98.2 0.15 0.0225 0.0863 0.323 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 97, Parent ID = 63 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 9.04 52.5 98.1 3.84e-06 0 0 0 Tank initStep + 1 3.34e+03 -3.59e+03 -5e+03 3.84e-06 0 7.09e+03 7.09e+03 World Transportation + 2 1e+04 -6.75e+03 -6.09e+03 3.84e-06 0 7.46e+03 1.45e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 63, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 5 9.04 52.5 98.2 0.15 0 0 0.323 Tank initStep + 6 9.02 52.5 98.2 0.139 0.0115 0.0225 0.346 Tank msc + 7 8.97 52.4 98.2 0.0901 0.0488 0.065 0.411 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 98, Parent ID = 63 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 8.99 52.5 98.2 2.53e-06 0 0 0 Tank initStep + 1 -4.99e+03 -5e+03 -542 2.53e-06 0 7.14e+03 7.14e+03 World Transportation + 2 -4.99e+03 -5e+03 -542 2.53e-06 0 0 7.14e+03 Tank Transportation + 3 -5e+03 -4.98e+03 -546 2.53e-06 0 21.9 7.16e+03 World Transportation + 4 -5e+03 -4.98e+03 -546 2.53e-06 0 0 7.16e+03 Tank Transportation + 5 2.3e+03 5e+03 -971 2.53e-06 0 1.24e+04 1.95e+04 World Transportation + 6 2.3e+03 5e+03 -971 2.53e-06 0 0 1.95e+04 Tank Transportation + 7 5e+03 1.07e+03 -2.18e+03 2.53e-06 0 4.92e+03 2.45e+04 World Transportation + 8 5e+03 1.07e+03 -2.18e+03 2.53e-06 0 0 2.45e+04 Tank Transportation + 9 3.32e+03 -4.02e+03 -5e+03 2.53e-06 0 6.05e+03 3.05e+04 World Transportation + 10 3.32e+03 -4.02e+03 -5e+03 2.53e-06 0 0 3.05e+04 Tank Transportation + 11 3.28e+03 -5e+03 -3.78e+03 2.53e-06 0 1.57e+03 3.21e+04 World Transportation + 12 3.28e+03 -5e+03 -3.78e+03 2.53e-06 0 0 3.21e+04 Tank Transportation + 13 1.56e+03 5e+03 -465 2.53e-06 0 1.07e+04 4.27e+04 World Transportation + 14 9.83 1e+04 2.21e+03 2.53e-06 0 5.88e+03 4.86e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 63, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 7 8.97 52.4 98.2 0.0901 0 0 0.411 Tank initStep + 8 8.96 52.4 98.2 0.0832 0.00686 0.00951 0.42 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 99, Parent ID = 63 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 8.96 52.4 98.2 3.17e-06 0 0 0 Tank initStep + 1 48.8 -3.55e+03 1.97e+03 3.17e-06 0 4.06e+03 4.06e+03 Tank OpRayleigh + 2 758 -2.72e+03 2.2e+03 3.17e-06 3.17e-06 1.12e+03 5.17e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 63, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 8 8.96 52.4 98.2 0.0832 0 0 0.42 Tank initStep + 9 8.96 52.4 98.2 0.0795 0.0037 0.0083 0.429 Tank msc + 10 8.95 52.4 98.1 0.0609 0.0186 0.0343 0.463 Tank eIoni + 11 8.93 52.4 98.1 0.0448 0.0162 0.0267 0.49 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 100, Parent ID = 63 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 8.94 52.4 98.1 3.47e-06 0 0 0 Tank initStep + 1 -1.54e+03 1.27e+03 -920 3.47e-06 3.47e-06 2.22e+03 2.22e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 63, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 11 8.93 52.4 98.1 0.0448 0 0 0.49 Tank initStep + 12 8.93 52.4 98.1 0.0435 0.00131 0.0028 0.492 Tank msc + 13 8.92 52.4 98.1 0.0296 0.0138 0.0202 0.513 Tank eIoni + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 102, Parent ID = 63 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 8.92 52.4 98.1 3.44e-06 0 0 0 Tank initStep + 1 -3.51e+03 -5e+03 -3.97e+03 3.44e-06 0 7.38e+03 7.38e+03 World Transportation + 2 -3.51e+03 -5e+03 -3.97e+03 3.44e-06 0 0 7.38e+03 Tank Transportation + 3 -3.84e+03 -2.9e+03 -5e+03 3.44e-06 0 2.36e+03 9.74e+03 World Transportation + 4 -3.84e+03 -2.9e+03 -5e+03 3.44e-06 0 0 9.74e+03 Tank Transportation + 5 -4.3e+03 3.48e+03 2.26e+03 3.44e-06 0 9.67e+03 1.94e+04 Tank OpRayleigh + 6 -838 1.64e+03 3.79e+03 3.44e-06 3.44e-06 4.2e+03 2.36e+04 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 101, Parent ID = 63 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 8.93 52.4 98.1 3.54e-06 0 0 0 Tank initStep + 1 -870 467 -5e+03 3.54e-06 0 5.19e+03 5.19e+03 World Transportation + 2 -1.67e+03 -211 -1e+04 3.54e-06 0 5.11e+03 1.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 63, Parent ID = 30 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 13 8.92 52.4 98.1 0.0296 0 0 0.513 Tank initStep + 14 8.92 52.4 98.1 0.0275 0.00212 0.00135 0.514 Tank msc + 15 8.91 52.4 98.1 0.00922 0.0183 0.0136 0.527 Tank eIoni + 16 8.91 52.4 98.1 0 0.00922 0.00215 0.53 Tank eIoni + 17 8.91 52.4 98.1 0 0 0 0.53 Tank Scintillation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 0.5 0 0 0 Tank initStep + 1 0.133 0.00821 0.0365 0.475 0.0254 0.14 0.14 Tank msc + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0749 0.00461 0.0205 3.77e-06 0 0 0 Tank initStep + 1 327 -61.7 -308 3.77e-06 3.77e-06 453 453 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0464 0.00285 0.0127 2.37e-06 0 0 0 Tank initStep + 1 5e+03 -2.37e+03 470 2.37e-06 0 5.55e+03 5.55e+03 World Transportation + 2 1e+04 -9.29e+03 3.45e+03 2.37e-06 0 9.04e+03 1.46e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0885 0.00545 0.0243 2.49e-06 0 0 0 Tank initStep + 1 2.45e+03 -1.31e+03 820 2.49e-06 2.49e-06 2.9e+03 2.9e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0218 0.00134 0.00598 3.4e-06 0 0 0 Tank initStep + 1 4.43e+03 3.17e+03 2.08e+03 3.4e-06 3.4e-06 5.83e+03 5.83e+03 Tank OpAbsorption + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.018 0.00111 0.00492 3.99e-06 0 0 0 Tank initStep + 1 5e+03 -2.63e+03 913 3.99e-06 0 5.72e+03 5.72e+03 World Transportation + 2 1e+04 -8.61e+03 1.58e+03 3.99e-06 0 7.82e+03 1.35e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 1 0.133 0.00821 0.0365 0.475 0 0 0.14 Tank initStep + 2 0.251 0.0194 0.0778 0.454 0.0205 0.126 0.265 Tank Cerenkov + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 8, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.168 0.0115 0.0486 2.41e-06 0 0 0 Tank initStep + 1 5e+03 -1.92e+03 4.12e+03 2.41e-06 0 6.76e+03 6.76e+03 World Transportation + 2 5.83e+03 -4.95e+03 1e+04 2.41e-06 0 6.67e+03 1.34e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = opticalphoton, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.191 0.0136 0.0566 4.05e-06 0 0 0 Tank initStep + 1 5e+03 1.02e+03 -947 4.05e-06 0 5.19e+03 5.19e+03 World Transportation + 2 1e+04 1.02e+03 -1.75e+03 4.05e-06 0 5.06e+03 1.03e+04 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e+, Track ID = 1, Pare +============================================================================================ +================= lines above cut to keep file within limits =============================== +============================================================================================ + + +================================================================== + +### Run 1 starts. + Run terminated. +Run Summary + Number of events processed : 1000 + User=1.070000s Real=1.074834s Sys=0.000000s + + ======================== run summary ====================== +Primary particle was: e+ with energy 500 keV. +Number of events: 1000 +Average number of Cerenkov photons created per event: 16.7 +- 5.94 +Average number of scintillation photons created per event: 20.2 +- 4.52 +Average number of optical Rayleigh interactions per event: 3.54 +- 2.17 +Average number of optical absorption interactions per event: 15.2 +- 4.23 +Average number of optical Mie interactions per event: 0.044 +- 0.205 +Average number of optical boundary interactions per event: 62.5 +- 17.3 + +G4 kernel has come to Quit state. +================== Deleting memory pools =================== +Number of memory pools allocated: 9 of which, static: 0 +Dynamic pools deleted: 9 / Total memory freed: 0.041 MB +============================================================ +RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/optical/OpNovice/README b/examples/extended/optical/OpNovice/README index af7013b266..f960ff7e88 100644 --- a/examples/extended/optical/OpNovice/README +++ b/examples/extended/optical/OpNovice/README @@ -16,11 +16,14 @@ examples/extended/optical/LXe and wls. main() ------ - ==> define Random Number Engine and initial seed + ==> define Random Number generator initial seed G4Optical Physics ----------------- + The G4OpticalPhysics physics class is used. The messenger is the + G4OpticalParametersMessenger class. + ==> define particles; including *** G4OpticalPhoton *** define processes; including *** G4Cerenkov *** *** G4Scintillation *** @@ -50,14 +53,13 @@ G4VUserPrimaryGeneratorAction ==> A messenger command allows to define interactively the polarization of an primary optical photon (see for instance optPhoton.mac) -G4UserRunAction ---------------- +G4UserRunAction and G4Run +------------------------- -==> define G4Timer (start/stop) - set verbose levels + Used to accumulate statistics. -G4UserStackingAction --------------------- +G4UserStackingAction and G4UserEventAction +------------------------------------------ ==> show how to count the number of secondary particles in an event @@ -79,7 +81,7 @@ Visualisation This example handles the program arguments in a new way. It can be run with the following optional arguments: - % OpNovice [-m macro ] [-u UIsession] [-t nThreads] + $ OpNovice [-m macro ] [-u UIsession] [-t nThreads] The -t option is available only in multi-threading mode and it allows the user to override the Geant4 default number of @@ -87,13 +89,22 @@ Visualisation environment variable which has the top priority. - execute OpNovice in 'batch' mode from macro files - % OpNovice -m OpNovice.in + $ OpNovice -m OpNovice.in - execute OpNovice in 'interactive mode' with visualization - % OpNovice + $ OpNovice .... Idle> type your commands. For instance: Idle> /control/execute optPhoton.mac .... Idle> exit - + +Macros +------ + + The following macros are provided: + + optPhoton.mac: Shoot optical photons with energy 3 eV + OpNovice.in: Shoot positrons with energy 500 keV. + gui.mac: Configure the graphical user interface. + vis.mac: Configure visualization. diff --git a/examples/extended/optical/OpNovice/gui.mac b/examples/extended/optical/OpNovice/gui.mac index 589ae20e42..02fd21c617 100644 --- a/examples/extended/optical/OpNovice/gui.mac +++ b/examples/extended/optical/OpNovice/gui.mac @@ -10,26 +10,20 @@ # Run menu : /gui/addMenu run Run /gui/addButton run "beamOn 1" "/run/beamOn 1" -#/gui/addButton run run1 "/control/execute run1.mac" -#/gui/addButton run run2 "/control/execute run2.mac" # # Gun menu : /gui/addMenu gun Gun +/gui/addButton gun "500 keV" "/gun/energy 500 keV" +/gui/addButton gun "1 MeV" "/gun/energy 1 MeV" /gui/addButton gun "50 MeV" "/gun/energy 50 MeV" -/gui/addButton gun "1 GeV" "/gun/energy 1 GeV" -/gui/addButton gun "10 GeV" "/gun/energy 10 GeV" +/gui/addButton gun "opticalphoton" "/gun/particle opticalphoton" /gui/addButton gun "e-" "/gun/particle e-" /gui/addButton gun "pi0" "/gun/particle pi0" /gui/addButton gun "pi+" "/gun/particle pi+" /gui/addButton gun "neutron" "/gun/particle neutron" /gui/addButton gun "proton" "/gun/particle proton" # -# Field menu : -#/gui/addMenu field Field -#/gui/addButton field "off" "/B2/det/setField 0.2 tesla" -#/gui/addButton field "0.2 tesla" "/B2/det/setField 0.2 tesla" -#/gui/addButton field "2.0 tesla" "/B2/det/setField 2.0 tesla" -# + # Viewer menu : /gui/addMenu viewer Viewer /gui/addButton viewer "Set style surface" "/vis/viewer/set/style surface" diff --git a/examples/extended/optical/OpNovice/include/OpNoviceActionInitialization.hh b/examples/extended/optical/OpNovice/include/OpNoviceActionInitialization.hh index 77c74a3f84..d8f8fd2136 100644 --- a/examples/extended/optical/OpNovice/include/OpNoviceActionInitialization.hh +++ b/examples/extended/optical/OpNovice/include/OpNoviceActionInitialization.hh @@ -32,19 +32,14 @@ #include "G4VUserActionInitialization.hh" -class B4DetectorConstruction; - -/// Action initialization class. -/// - class OpNoviceActionInitialization : public G4VUserActionInitialization { - public: - OpNoviceActionInitialization(); - virtual ~OpNoviceActionInitialization(); + public: + OpNoviceActionInitialization(); + ~OpNoviceActionInitialization(); - virtual void BuildForMaster() const; - virtual void Build() const; + void BuildForMaster() const override; + void Build() const override; }; #endif diff --git a/examples/extended/optical/OpNovice/include/OpNoviceDetectorConstruction.hh b/examples/extended/optical/OpNovice/include/OpNoviceDetectorConstruction.hh index 3cb8143697..3cd386ab4b 100644 --- a/examples/extended/optical/OpNovice/include/OpNoviceDetectorConstruction.hh +++ b/examples/extended/optical/OpNovice/include/OpNoviceDetectorConstruction.hh @@ -41,25 +41,24 @@ class OpNoviceDetectorConstruction : public G4VUserDetectorConstruction { - public: - OpNoviceDetectorConstruction(); - virtual ~OpNoviceDetectorConstruction(); + public: + OpNoviceDetectorConstruction(); + ~OpNoviceDetectorConstruction(); - public: - virtual G4VPhysicalVolume* Construct(); + G4VPhysicalVolume* Construct() override; - private: - G4double fExpHall_x; - G4double fExpHall_y; - G4double fExpHall_z; + private: + G4double fExpHall_x; + G4double fExpHall_y; + G4double fExpHall_z; - G4double fTank_x; - G4double fTank_y; - G4double fTank_z; + G4double fTank_x; + G4double fTank_y; + G4double fTank_z; - G4double fBubble_x; - G4double fBubble_y; - G4double fBubble_z; + G4double fBubble_x; + G4double fBubble_y; + G4double fBubble_z; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice/include/OpNoviceEventAction.hh b/examples/extended/optical/OpNovice/include/OpNoviceEventAction.hh new file mode 100644 index 0000000000..6ccc163ee4 --- /dev/null +++ b/examples/extended/optical/OpNovice/include/OpNoviceEventAction.hh @@ -0,0 +1,64 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file optical/OpNovice/include/OpNoviceEventAction.hh +/// \brief Definition of the OpNoviceEventAction class +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef OpNoviceEventAction_h +#define OpNoviceEventAction_h 1 + +#include "globals.hh" +#include "G4UserEventAction.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +class OpNoviceEventAction : public G4UserEventAction +{ + public: + OpNoviceEventAction(); + ~OpNoviceEventAction(); + + void BeginOfEventAction(const G4Event*) override; + void EndOfEventAction(const G4Event*) override; + + void AddRayleigh() { ++fRayleigh; } + void AddAbsorption() { ++fAbsorption; } + void AddMie() { ++fMie; } + void AddBoundary() { ++fBoundary; } + + private: + G4int fRayleigh; + G4int fAbsorption; + G4int fMie; + G4int fBoundary; +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif diff --git a/examples/extended/optical/OpNovice/include/OpNovicePrimaryGeneratorAction.hh b/examples/extended/optical/OpNovice/include/OpNovicePrimaryGeneratorAction.hh index b59c67f7b1..2a300fe04f 100644 --- a/examples/extended/optical/OpNovice/include/OpNovicePrimaryGeneratorAction.hh +++ b/examples/extended/optical/OpNovice/include/OpNovicePrimaryGeneratorAction.hh @@ -34,10 +34,10 @@ #ifndef OpNovicePrimaryGeneratorAction_h #define OpNovicePrimaryGeneratorAction_h 1 -#include "G4VUserPrimaryGeneratorAction.hh" #include "globals.hh" +#include "G4ParticleGun.hh" +#include "G4VUserPrimaryGeneratorAction.hh" -class G4ParticleGun; class G4Event; class OpNovicePrimaryGeneratorMessenger; @@ -45,19 +45,20 @@ class OpNovicePrimaryGeneratorMessenger; class OpNovicePrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction { - public: - OpNovicePrimaryGeneratorAction(); - virtual ~OpNovicePrimaryGeneratorAction(); + public: + OpNovicePrimaryGeneratorAction(); + ~OpNovicePrimaryGeneratorAction(); - public: - virtual void GeneratePrimaries(G4Event*); + void GeneratePrimaries(G4Event*) override; - void SetOptPhotonPolar(); - void SetOptPhotonPolar(G4double); + void SetOptPhotonPolar(); + void SetOptPhotonPolar(G4double); - private: - G4ParticleGun* fParticleGun; - OpNovicePrimaryGeneratorMessenger* fGunMessenger; + G4ParticleGun* GetParticleGun() { return fParticleGun; } + + private: + G4ParticleGun* fParticleGun; + OpNovicePrimaryGeneratorMessenger* fGunMessenger; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice/include/OpNovicePrimaryGeneratorMessenger.hh b/examples/extended/optical/OpNovice/include/OpNovicePrimaryGeneratorMessenger.hh index 8dca166f6f..f60951b74e 100644 --- a/examples/extended/optical/OpNovice/include/OpNovicePrimaryGeneratorMessenger.hh +++ b/examples/extended/optical/OpNovice/include/OpNovicePrimaryGeneratorMessenger.hh @@ -28,7 +28,6 @@ // // // -// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -36,8 +35,8 @@ #ifndef OpNovicePrimaryGeneratorMessenger_h #define OpNovicePrimaryGeneratorMessenger_h 1 -#include "G4UImessenger.hh" #include "globals.hh" +#include "G4UImessenger.hh" class OpNovicePrimaryGeneratorAction; class G4UIdirectory; @@ -45,18 +44,18 @@ class G4UIcmdWithADoubleAndUnit; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -class OpNovicePrimaryGeneratorMessenger: public G4UImessenger +class OpNovicePrimaryGeneratorMessenger : public G4UImessenger { - public: - OpNovicePrimaryGeneratorMessenger(OpNovicePrimaryGeneratorAction* ); - virtual ~OpNovicePrimaryGeneratorMessenger(); - - virtual void SetNewValue(G4UIcommand*, G4String); - - private: - OpNovicePrimaryGeneratorAction* fOpNoviceAction; - G4UIdirectory* fGunDir; - G4UIcmdWithADoubleAndUnit* fPolarCmd; + public: + OpNovicePrimaryGeneratorMessenger(OpNovicePrimaryGeneratorAction*); + ~OpNovicePrimaryGeneratorMessenger(); + + void SetNewValue(G4UIcommand*, G4String) override; + + private: + OpNovicePrimaryGeneratorAction* fOpNoviceAction; + G4UIdirectory* fGunDir; + G4UIcmdWithADoubleAndUnit* fPolarCmd; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice/include/OpNoviceRun.hh b/examples/extended/optical/OpNovice/include/OpNoviceRun.hh new file mode 100644 index 0000000000..38ea77a3c4 --- /dev/null +++ b/examples/extended/optical/OpNovice/include/OpNoviceRun.hh @@ -0,0 +1,105 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file OpNovice/include/OpNoviceRun.hh +/// \brief Definition of the OpNoviceRun class +// +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef OpNoviceRun_h +#define OpNoviceRun_h 1 + +#include "G4Run.hh" + +class G4ParticleDefinition; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +class OpNoviceRun : public G4Run +{ + public: + OpNoviceRun(); + ~OpNoviceRun(); + + void SetPrimary(G4ParticleDefinition* particle, G4double energy); + + void AddCerenkov(G4double n) + { + fCerenkovCounter += n; + fCerenkov2 += n * n; + }; + void AddScintillation(G4double n) + { + fScintillationCounter += n; + fScintillation2 += n * n; + }; + void AddRayleigh(G4double n) + { + fRayleighCounter += n; + fRayleigh2 += n * n; + }; + void AddAbsorption(G4double n) + { + fAbsorptionCounter += n; + fAbsorption2 += n * n; + }; + void AddMie(G4double n) + { + fMieCounter += n; + fMie2 += n * n; + }; + void AddBoundary(G4double n) + { + fBoundaryCounter += n; + fBoundary2 += n * n; + }; + + void Merge(const G4Run*) override; + void EndOfRun(); + + private: + G4double fCerenkovCounter; + G4double fCerenkov2; + G4double fScintillationCounter; + G4double fScintillation2; + G4double fRayleighCounter; + G4double fRayleigh2; + G4double fAbsorptionCounter; + G4double fAbsorption2; + G4double fMieCounter; + G4double fMie2; + G4double fBoundaryCounter; + G4double fBoundary2; + + G4ParticleDefinition* fParticle; + G4double fEnergy; +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif diff --git a/examples/extended/optical/OpNovice/include/OpNoviceRunAction.hh b/examples/extended/optical/OpNovice/include/OpNoviceRunAction.hh index b1ac82b2df..eeaf76271b 100644 --- a/examples/extended/optical/OpNovice/include/OpNoviceRunAction.hh +++ b/examples/extended/optical/OpNovice/include/OpNoviceRunAction.hh @@ -27,7 +27,7 @@ /// \brief Definition of the OpNoviceRunAction class // // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -37,25 +37,28 @@ #include "globals.hh" #include "G4UserRunAction.hh" +class OpNovicePrimaryGeneratorAction; +class OpNoviceRun; + //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -class G4Timer; class G4Run; class OpNoviceRunAction : public G4UserRunAction { - public: - OpNoviceRunAction(); - virtual ~OpNoviceRunAction(); + public: + OpNoviceRunAction(OpNovicePrimaryGeneratorAction* = nullptr); + ~OpNoviceRunAction(); - public: - virtual void BeginOfRunAction(const G4Run* aRun); - virtual void EndOfRunAction(const G4Run* aRun); + G4Run* GenerateRun() override; + void BeginOfRunAction(const G4Run*) override; + void EndOfRunAction(const G4Run*) override; - private: - G4Timer* fTimer; + private: + OpNoviceRun* fRun; + OpNovicePrimaryGeneratorAction* fPrimary; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#endif /*OpNoviceRunAction_h*/ +#endif diff --git a/examples/extended/optical/OpNovice/include/OpNoviceStackingAction.hh b/examples/extended/optical/OpNovice/include/OpNoviceStackingAction.hh index b5b6adddbc..773861b024 100644 --- a/examples/extended/optical/OpNovice/include/OpNoviceStackingAction.hh +++ b/examples/extended/optical/OpNovice/include/OpNoviceStackingAction.hh @@ -30,8 +30,8 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#ifndef OpNoviceStackingAction_H -#define OpNoviceStackingAction_H 1 +#ifndef OpNoviceStackingAction_h +#define OpNoviceStackingAction_h 1 #include "globals.hh" #include "G4UserStackingAction.hh" @@ -40,18 +40,17 @@ class OpNoviceStackingAction : public G4UserStackingAction { - public: - OpNoviceStackingAction(); - virtual ~OpNoviceStackingAction(); + public: + OpNoviceStackingAction(); + ~OpNoviceStackingAction(); - public: - virtual G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track* aTrack); - virtual void NewStage(); - virtual void PrepareNewEvent(); + G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track* aTrack) override; + void NewStage() override; + void PrepareNewEvent() override; - private: - G4int fScintillationCounter; - G4int fCerenkovCounter; + private: + G4int fScintillationCounter; + G4int fCerenkovCounter; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice/include/OpNoviceSteppingAction.hh b/examples/extended/optical/OpNovice/include/OpNoviceSteppingAction.hh index 34cbc866ce..88302d0311 100644 --- a/examples/extended/optical/OpNovice/include/OpNoviceSteppingAction.hh +++ b/examples/extended/optical/OpNovice/include/OpNoviceSteppingAction.hh @@ -30,25 +30,21 @@ #ifndef OpNoviceSteppingAction_h #define OpNoviceSteppingAction_h 1 -#include "G4UserSteppingAction.hh" -#include "globals.hh" +#include "OpNoviceEventAction.hh" -/// Stepping action class -/// +#include "globals.hh" +#include "G4UserSteppingAction.hh" class OpNoviceSteppingAction : public G4UserSteppingAction { - public: - OpNoviceSteppingAction(); - virtual ~OpNoviceSteppingAction(); + public: + OpNoviceSteppingAction(OpNoviceEventAction*); + ~OpNoviceSteppingAction(); - // method from the base class - virtual void UserSteppingAction(const G4Step*); + void UserSteppingAction(const G4Step*) override; - private: - G4int fScintillationCounter; - G4int fCerenkovCounter; - G4int fEventNumber; + private: + OpNoviceEventAction* fEventAction; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice/optPhoton.mac b/examples/extended/optical/OpNovice/optPhoton.mac index 4dd0b7297a..dc4168bdf3 100644 --- a/examples/extended/optical/OpNovice/optPhoton.mac +++ b/examples/extended/optical/OpNovice/optPhoton.mac @@ -1,5 +1,8 @@ /control/verbose 2 /tracking/verbose 2 +/run/verbose 1 +/process/optical/verbose 1 +/control/cout/ignoreThreadsExcept 0 # /run/initialize # @@ -8,9 +11,9 @@ # /gun/direction 5 -3 0 /OpNovice/gun/optPhotonPolar -/run/beamOn 1 +/run/beamOn 10 # +/tracking/verbose 0 /gun/position 30 40 50 cm /gun/direction 1 1 1 -/OpNovice/gun/optPhotonPolar -/run/beamOn 1 +/run/beamOn 10000 diff --git a/examples/extended/optical/OpNovice/src/OpNoviceActionInitialization.cc b/examples/extended/optical/OpNovice/src/OpNoviceActionInitialization.cc index 68d2af8f5b..06ff35de5c 100644 --- a/examples/extended/optical/OpNovice/src/OpNoviceActionInitialization.cc +++ b/examples/extended/optical/OpNovice/src/OpNoviceActionInitialization.cc @@ -28,21 +28,22 @@ /// \brief Implementation of the OpNoviceActionInitialization class #include "OpNoviceActionInitialization.hh" + +#include "OpNoviceEventAction.hh" #include "OpNovicePrimaryGeneratorAction.hh" #include "OpNoviceRunAction.hh" -#include "OpNoviceSteppingAction.hh" #include "OpNoviceStackingAction.hh" +#include "OpNoviceSteppingAction.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... OpNoviceActionInitialization::OpNoviceActionInitialization() - : G4VUserActionInitialization() + : G4VUserActionInitialization() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -OpNoviceActionInitialization::~OpNoviceActionInitialization() -{} +OpNoviceActionInitialization::~OpNoviceActionInitialization() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -55,8 +56,12 @@ void OpNoviceActionInitialization::BuildForMaster() const void OpNoviceActionInitialization::Build() const { - SetUserAction(new OpNovicePrimaryGeneratorAction()); - SetUserAction(new OpNoviceRunAction()); - SetUserAction(new OpNoviceSteppingAction()); + OpNovicePrimaryGeneratorAction* primary = + new OpNovicePrimaryGeneratorAction(); + SetUserAction(primary); + SetUserAction(new OpNoviceRunAction(primary)); + OpNoviceEventAction* event = new OpNoviceEventAction(); + SetUserAction(event); + SetUserAction(new OpNoviceSteppingAction(event)); SetUserAction(new OpNoviceStackingAction()); } diff --git a/examples/extended/optical/OpNovice/src/OpNoviceDetectorConstruction.cc b/examples/extended/optical/OpNovice/src/OpNoviceDetectorConstruction.cc index 7af8156935..fba23ee385 100644 --- a/examples/extended/optical/OpNovice/src/OpNoviceDetectorConstruction.cc +++ b/examples/extended/optical/OpNovice/src/OpNoviceDetectorConstruction.cc @@ -33,323 +33,264 @@ #include "OpNoviceDetectorConstruction.hh" -#include "G4Material.hh" +#include "G4Box.hh" #include "G4Element.hh" #include "G4LogicalBorderSurface.hh" #include "G4LogicalSkinSurface.hh" -#include "G4OpticalSurface.hh" -#include "G4Box.hh" #include "G4LogicalVolume.hh" -#include "G4ThreeVector.hh" +#include "G4Material.hh" +#include "G4OpticalSurface.hh" #include "G4PVPlacement.hh" #include "G4SystemOfUnits.hh" +#include "G4ThreeVector.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... OpNoviceDetectorConstruction::OpNoviceDetectorConstruction() - : G4VUserDetectorConstruction() + : G4VUserDetectorConstruction() { - fExpHall_x = fExpHall_y = fExpHall_z = 10.0*m; - fTank_x = fTank_y = fTank_z = 5.0*m; - fBubble_x = fBubble_y = fBubble_z = 0.5*m; + fExpHall_x = fExpHall_y = fExpHall_z = 10.0 * m; + fTank_x = fTank_y = fTank_z = 5.0 * m; + fBubble_x = fBubble_y = fBubble_z = 0.5 * m; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -OpNoviceDetectorConstruction::~OpNoviceDetectorConstruction(){;} +OpNoviceDetectorConstruction::~OpNoviceDetectorConstruction() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4VPhysicalVolume* OpNoviceDetectorConstruction::Construct() { - -// ------------- Materials ------------- + // ------------- Materials ------------- G4double a, z, density; G4int nelements; -// Air -// - G4Element* N = new G4Element("Nitrogen", "N", z=7 , a=14.01*g/mole); - G4Element* O = new G4Element("Oxygen" , "O", z=8 , a=16.00*g/mole); + // Air + // + G4Element* N = new G4Element("Nitrogen", "N", z = 7, a = 14.01 * g / mole); + G4Element* O = new G4Element("Oxygen", "O", z = 8, a = 16.00 * g / mole); - G4Material* air = new G4Material("Air", density=1.29*mg/cm3, nelements=2); - air->AddElement(N, 70.*perCent); - air->AddElement(O, 30.*perCent); + G4Material* air = + new G4Material("Air", density = 1.29 * mg / cm3, nelements = 2); + air->AddElement(N, 70. * perCent); + air->AddElement(O, 30. * perCent); -// Water -// - G4Element* H = new G4Element("Hydrogen", "H", z=1 , a=1.01*g/mole); + // Water + // + G4Element* H = new G4Element("Hydrogen", "H", z = 1, a = 1.01 * g / mole); - G4Material* water = new G4Material("Water", density= 1.0*g/cm3, nelements=2); + G4Material* water = + new G4Material("Water", density = 1.0 * g / cm3, nelements = 2); water->AddElement(H, 2); water->AddElement(O, 1); -// -// ------------ Generate & Add Material Properties Table ------------ -// - G4double photonEnergy[] = - { 2.034*eV, 2.068*eV, 2.103*eV, 2.139*eV, - 2.177*eV, 2.216*eV, 2.256*eV, 2.298*eV, - 2.341*eV, 2.386*eV, 2.433*eV, 2.481*eV, - 2.532*eV, 2.585*eV, 2.640*eV, 2.697*eV, - 2.757*eV, 2.820*eV, 2.885*eV, 2.954*eV, - 3.026*eV, 3.102*eV, 3.181*eV, 3.265*eV, - 3.353*eV, 3.446*eV, 3.545*eV, 3.649*eV, - 3.760*eV, 3.877*eV, 4.002*eV, 4.136*eV }; + // ------------ Generate & Add Material Properties Table ------------ + // + std::vector photonEnergy = { + 2.034 * eV, 2.068 * eV, 2.103 * eV, 2.139 * eV, 2.177 * eV, 2.216 * eV, + 2.256 * eV, 2.298 * eV, 2.341 * eV, 2.386 * eV, 2.433 * eV, 2.481 * eV, + 2.532 * eV, 2.585 * eV, 2.640 * eV, 2.697 * eV, 2.757 * eV, 2.820 * eV, + 2.885 * eV, 2.954 * eV, 3.026 * eV, 3.102 * eV, 3.181 * eV, 3.265 * eV, + 3.353 * eV, 3.446 * eV, 3.545 * eV, 3.649 * eV, 3.760 * eV, 3.877 * eV, + 4.002 * eV, 4.136 * eV + }; - const G4int nEntries = sizeof(photonEnergy)/sizeof(G4double); + // Water + // + std::vector refractiveIndex1 = { + 1.3435, 1.344, 1.3445, 1.345, 1.3455, 1.346, 1.3465, 1.347, + 1.3475, 1.348, 1.3485, 1.3492, 1.35, 1.3505, 1.351, 1.3518, + 1.3522, 1.3530, 1.3535, 1.354, 1.3545, 1.355, 1.3555, 1.356, + 1.3568, 1.3572, 1.358, 1.3585, 1.359, 1.3595, 1.36, 1.3608 + }; -// -// Water -// - G4double refractiveIndex1[] = - { 1.3435, 1.344, 1.3445, 1.345, 1.3455, - 1.346, 1.3465, 1.347, 1.3475, 1.348, - 1.3485, 1.3492, 1.35, 1.3505, 1.351, - 1.3518, 1.3522, 1.3530, 1.3535, 1.354, - 1.3545, 1.355, 1.3555, 1.356, 1.3568, - 1.3572, 1.358, 1.3585, 1.359, 1.3595, - 1.36, 1.3608}; + std::vector absorption = { + 3.448 * m, 4.082 * m, 6.329 * m, 9.174 * m, 12.346 * m, 13.889 * m, + 15.152 * m, 17.241 * m, 18.868 * m, 20.000 * m, 26.316 * m, 35.714 * m, + 45.455 * m, 47.619 * m, 52.632 * m, 52.632 * m, 55.556 * m, 52.632 * m, + 52.632 * m, 47.619 * m, 45.455 * m, 41.667 * m, 37.037 * m, 33.333 * m, + 30.000 * m, 28.500 * m, 27.000 * m, 24.500 * m, 22.000 * m, 19.500 * m, + 17.500 * m, 14.500 * m + }; - assert(sizeof(refractiveIndex1) == sizeof(photonEnergy)); + std::vector scintilFast = { + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 + }; - G4double absorption[] = - {3.448*m, 4.082*m, 6.329*m, 9.174*m, 12.346*m, 13.889*m, - 15.152*m, 17.241*m, 18.868*m, 20.000*m, 26.316*m, 35.714*m, - 45.455*m, 47.619*m, 52.632*m, 52.632*m, 55.556*m, 52.632*m, - 52.632*m, 47.619*m, 45.455*m, 41.667*m, 37.037*m, 33.333*m, - 30.000*m, 28.500*m, 27.000*m, 24.500*m, 22.000*m, 19.500*m, - 17.500*m, 14.500*m }; - - assert(sizeof(absorption) == sizeof(photonEnergy)); - - G4double scintilFast[] = - { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, - 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, - 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, - 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, - 1.00, 1.00, 1.00, 1.00 }; - - assert(sizeof(scintilFast) == sizeof(photonEnergy)); - - G4double scintilSlow[] = - { 0.01, 1.00, 2.00, 3.00, 4.00, 5.00, 6.00, - 7.00, 8.00, 9.00, 8.00, 7.00, 6.00, 4.00, - 3.00, 2.00, 1.00, 0.01, 1.00, 2.00, 3.00, - 4.00, 5.00, 6.00, 7.00, 8.00, 9.00, 8.00, - 7.00, 6.00, 5.00, 4.00 }; - - assert(sizeof(scintilSlow) == sizeof(photonEnergy)); + std::vector scintilSlow = { + 0.01, 1.00, 2.00, 3.00, 4.00, 5.00, 6.00, 7.00, 8.00, 9.00, 8.00, + 7.00, 6.00, 4.00, 3.00, 2.00, 1.00, 0.01, 1.00, 2.00, 3.00, 4.00, + 5.00, 6.00, 7.00, 8.00, 9.00, 8.00, 7.00, 6.00, 5.00, 4.00 + }; G4MaterialPropertiesTable* myMPT1 = new G4MaterialPropertiesTable(); - myMPT1->AddProperty("RINDEX", photonEnergy, refractiveIndex1,nEntries) - ->SetSpline(true); - myMPT1->AddProperty("ABSLENGTH", photonEnergy, absorption, nEntries) - ->SetSpline(true); - myMPT1->AddProperty("FASTCOMPONENT",photonEnergy, scintilFast, nEntries) - ->SetSpline(true); - myMPT1->AddProperty("SLOWCOMPONENT",photonEnergy, scintilSlow, nEntries) - ->SetSpline(true); + myMPT1->AddProperty("RINDEX", photonEnergy, refractiveIndex1) + ->SetSpline(true); + myMPT1->AddProperty("ABSLENGTH", photonEnergy, absorption)->SetSpline(true); + myMPT1->AddProperty("FASTCOMPONENT", photonEnergy, scintilFast) + ->SetSpline(true); + myMPT1->AddProperty("SLOWCOMPONENT", photonEnergy, scintilSlow) + ->SetSpline(true); - myMPT1->AddConstProperty("SCINTILLATIONYIELD",50./MeV); - myMPT1->AddConstProperty("RESOLUTIONSCALE",1.0); - myMPT1->AddConstProperty("FASTTIMECONSTANT", 1.*ns); - myMPT1->AddConstProperty("SLOWTIMECONSTANT",10.*ns); - myMPT1->AddConstProperty("YIELDRATIO",0.8); + myMPT1->AddConstProperty("SCINTILLATIONYIELD", 50. / MeV); + myMPT1->AddConstProperty("RESOLUTIONSCALE", 1.0); + myMPT1->AddConstProperty("FASTTIMECONSTANT", 1. * ns); + myMPT1->AddConstProperty("SLOWTIMECONSTANT", 10. * ns); + myMPT1->AddConstProperty("YIELDRATIO", 0.8); - G4double energy_water[] = { - 1.56962*eV, 1.58974*eV, 1.61039*eV, 1.63157*eV, - 1.65333*eV, 1.67567*eV, 1.69863*eV, 1.72222*eV, - 1.74647*eV, 1.77142*eV, 1.7971 *eV, 1.82352*eV, - 1.85074*eV, 1.87878*eV, 1.90769*eV, 1.93749*eV, - 1.96825*eV, 1.99999*eV, 2.03278*eV, 2.06666*eV, - 2.10169*eV, 2.13793*eV, 2.17543*eV, 2.21428*eV, - 2.25454*eV, 2.29629*eV, 2.33962*eV, 2.38461*eV, - 2.43137*eV, 2.47999*eV, 2.53061*eV, 2.58333*eV, - 2.63829*eV, 2.69565*eV, 2.75555*eV, 2.81817*eV, - 2.88371*eV, 2.95237*eV, 3.02438*eV, 3.09999*eV, - 3.17948*eV, 3.26315*eV, 3.35134*eV, 3.44444*eV, - 3.54285*eV, 3.64705*eV, 3.75757*eV, 3.87499*eV, - 3.99999*eV, 4.13332*eV, 4.27585*eV, 4.42856*eV, - 4.59258*eV, 4.76922*eV, 4.95999*eV, 5.16665*eV, - 5.39129*eV, 5.63635*eV, 5.90475*eV, 6.19998*eV + std::vector energy_water = { + 1.56962 * eV, 1.58974 * eV, 1.61039 * eV, 1.63157 * eV, 1.65333 * eV, + 1.67567 * eV, 1.69863 * eV, 1.72222 * eV, 1.74647 * eV, 1.77142 * eV, + 1.7971 * eV, 1.82352 * eV, 1.85074 * eV, 1.87878 * eV, 1.90769 * eV, + 1.93749 * eV, 1.96825 * eV, 1.99999 * eV, 2.03278 * eV, 2.06666 * eV, + 2.10169 * eV, 2.13793 * eV, 2.17543 * eV, 2.21428 * eV, 2.25454 * eV, + 2.29629 * eV, 2.33962 * eV, 2.38461 * eV, 2.43137 * eV, 2.47999 * eV, + 2.53061 * eV, 2.58333 * eV, 2.63829 * eV, 2.69565 * eV, 2.75555 * eV, + 2.81817 * eV, 2.88371 * eV, 2.95237 * eV, 3.02438 * eV, 3.09999 * eV, + 3.17948 * eV, 3.26315 * eV, 3.35134 * eV, 3.44444 * eV, 3.54285 * eV, + 3.64705 * eV, 3.75757 * eV, 3.87499 * eV, 3.99999 * eV, 4.13332 * eV, + 4.27585 * eV, 4.42856 * eV, 4.59258 * eV, 4.76922 * eV, 4.95999 * eV, + 5.16665 * eV, 5.39129 * eV, 5.63635 * eV, 5.90475 * eV, 6.19998 * eV }; - const G4int numentries_water = sizeof(energy_water)/sizeof(G4double); + // Rayleigh scattering length calculated by G4OpRayleigh - //assume 100 times larger than the rayleigh scattering for now. - G4double mie_water[] = { - 167024.4*m, 158726.7*m, 150742 *m, - 143062.5*m, 135680.2*m, 128587.4*m, - 121776.3*m, 115239.5*m, 108969.5*m, - 102958.8*m, 97200.35*m, 91686.86*m, - 86411.33*m, 81366.79*m, 76546.42*m, - 71943.46*m, 67551.29*m, 63363.36*m, - 59373.25*m, 55574.61*m, 51961.24*m, - 48527.00*m, 45265.87*m, 42171.94*m, - 39239.39*m, 36462.50*m, 33835.68*m, - 31353.41*m, 29010.30*m, 26801.03*m, - 24720.42*m, 22763.36*m, 20924.88*m, - 19200.07*m, 17584.16*m, 16072.45*m, - 14660.38*m, 13343.46*m, 12117.33*m, - 10977.70*m, 9920.416*m, 8941.407*m, - 8036.711*m, 7202.470*m, 6434.927*m, - 5730.429*m, 5085.425*m, 4496.467*m, - 3960.210*m, 3473.413*m, 3032.937*m, - 2635.746*m, 2278.907*m, 1959.588*m, - 1675.064*m, 1422.710*m, 1200.004*m, - 1004.528*m, 833.9666*m, 686.1063*m + // assume 100 times larger than the rayleigh scattering for now. + std::vector mie_water = { + 167024.4 * m, 158726.7 * m, 150742 * m, 143062.5 * m, 135680.2 * m, + 128587.4 * m, 121776.3 * m, 115239.5 * m, 108969.5 * m, 102958.8 * m, + 97200.35 * m, 91686.86 * m, 86411.33 * m, 81366.79 * m, 76546.42 * m, + 71943.46 * m, 67551.29 * m, 63363.36 * m, 59373.25 * m, 55574.61 * m, + 51961.24 * m, 48527.00 * m, 45265.87 * m, 42171.94 * m, 39239.39 * m, + 36462.50 * m, 33835.68 * m, 31353.41 * m, 29010.30 * m, 26801.03 * m, + 24720.42 * m, 22763.36 * m, 20924.88 * m, 19200.07 * m, 17584.16 * m, + 16072.45 * m, 14660.38 * m, 13343.46 * m, 12117.33 * m, 10977.70 * m, + 9920.416 * m, 8941.407 * m, 8036.711 * m, 7202.470 * m, 6434.927 * m, + 5730.429 * m, 5085.425 * m, 4496.467 * m, 3960.210 * m, 3473.413 * m, + 3032.937 * m, 2635.746 * m, 2278.907 * m, 1959.588 * m, 1675.064 * m, + 1422.710 * m, 1200.004 * m, 1004.528 * m, 833.9666 * m, 686.1063 * m }; - assert(sizeof(mie_water) == sizeof(energy_water)); - // gforward, gbackward, forward backward ratio - G4double mie_water_const[3]={0.99,0.99,0.8}; + G4double mie_water_const[3] = { 0.99, 0.99, 0.8 }; - myMPT1->AddProperty("MIEHG",energy_water,mie_water,numentries_water) - ->SetSpline(true); - myMPT1->AddConstProperty("MIEHG_FORWARD",mie_water_const[0]); - myMPT1->AddConstProperty("MIEHG_BACKWARD",mie_water_const[1]); - myMPT1->AddConstProperty("MIEHG_FORWARD_RATIO",mie_water_const[2]); + myMPT1->AddProperty("MIEHG", energy_water, mie_water)->SetSpline(true); + myMPT1->AddConstProperty("MIEHG_FORWARD", mie_water_const[0]); + myMPT1->AddConstProperty("MIEHG_BACKWARD", mie_water_const[1]); + myMPT1->AddConstProperty("MIEHG_FORWARD_RATIO", mie_water_const[2]); - G4cout << "Water G4MaterialPropertiesTable" << G4endl; + G4cout << "Water G4MaterialPropertiesTable:" << G4endl; myMPT1->DumpTable(); water->SetMaterialPropertiesTable(myMPT1); // Set the Birks Constant for the Water scintillator + water->GetIonisation()->SetBirksConstant(0.126 * mm / MeV); - water->GetIonisation()->SetBirksConstant(0.126*mm/MeV); - -// -// Air -// - G4double refractiveIndex2[] = - { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, - 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, - 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, - 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, - 1.00, 1.00, 1.00, 1.00 }; + // Air + // + std::vector refractiveIndex2 = { + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, + 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00 + }; G4MaterialPropertiesTable* myMPT2 = new G4MaterialPropertiesTable(); - myMPT2->AddProperty("RINDEX", photonEnergy, refractiveIndex2, nEntries); + myMPT2->AddProperty("RINDEX", photonEnergy, refractiveIndex2); - G4cout << "Air G4MaterialPropertiesTable" << G4endl; + G4cout << "Air G4MaterialPropertiesTable:" << G4endl; myMPT2->DumpTable(); air->SetMaterialPropertiesTable(myMPT2); -// -// ------------- Volumes -------------- + // ------------- Volumes -------------- -// The experimental Hall -// - G4Box* expHall_box = new G4Box("World",fExpHall_x,fExpHall_y,fExpHall_z); + // The experimental Hall + // + G4Box* expHall_box = new G4Box("World", fExpHall_x, fExpHall_y, fExpHall_z); - G4LogicalVolume* expHall_log - = new G4LogicalVolume(expHall_box,air,"World",0,0,0); + G4LogicalVolume* expHall_log = + new G4LogicalVolume(expHall_box, air, "World", 0, 0, 0); - G4VPhysicalVolume* expHall_phys - = new G4PVPlacement(0,G4ThreeVector(),expHall_log,"World",0,false,0); + G4VPhysicalVolume* expHall_phys = + new G4PVPlacement(0, G4ThreeVector(), expHall_log, "World", 0, false, 0); -// The Water Tank -// - G4Box* waterTank_box = new G4Box("Tank",fTank_x,fTank_y,fTank_z); + // The Water Tank + // + G4Box* waterTank_box = new G4Box("Tank", fTank_x, fTank_y, fTank_z); - G4LogicalVolume* waterTank_log - = new G4LogicalVolume(waterTank_box,water,"Tank",0,0,0); + G4LogicalVolume* waterTank_log = + new G4LogicalVolume(waterTank_box, water, "Tank", 0, 0, 0); - G4VPhysicalVolume* waterTank_phys - = new G4PVPlacement(0,G4ThreeVector(),waterTank_log,"Tank", - expHall_log,false,0); + G4VPhysicalVolume* waterTank_phys = new G4PVPlacement( + 0, G4ThreeVector(), waterTank_log, "Tank", expHall_log, false, 0); -// The Air Bubble -// - G4Box* bubbleAir_box = new G4Box("Bubble",fBubble_x,fBubble_y,fBubble_z); + // The Air Bubble + // + G4Box* bubbleAir_box = new G4Box("Bubble", fBubble_x, fBubble_y, fBubble_z); - G4LogicalVolume* bubbleAir_log - = new G4LogicalVolume(bubbleAir_box,air,"Bubble",0,0,0); + G4LogicalVolume* bubbleAir_log = + new G4LogicalVolume(bubbleAir_box, air, "Bubble", 0, 0, 0); -//G4VPhysicalVolume* bubbleAir_phys = - new G4PVPlacement(0,G4ThreeVector(0,2.5*m,0),bubbleAir_log,"Bubble", - waterTank_log,false,0); + new G4PVPlacement(0, G4ThreeVector(0, 2.5 * m, 0), bubbleAir_log, "Bubble", + waterTank_log, false, 0); -// ------------- Surfaces -------------- -// -// Water Tank -// + // ------------- Surfaces -------------- + + // Water Tank + // G4OpticalSurface* opWaterSurface = new G4OpticalSurface("WaterSurface"); -// opWaterSurface->SetType(dielectric_dielectric); -// opWaterSurface->SetFinish(ground); -// opWaterSurface->SetModel(unified); opWaterSurface->SetType(dielectric_LUTDAVIS); opWaterSurface->SetFinish(Rough_LUT); opWaterSurface->SetModel(DAVIS); - G4LogicalBorderSurface* waterSurface = - new G4LogicalBorderSurface("WaterSurface", - waterTank_phys,expHall_phys,opWaterSurface); + G4LogicalBorderSurface* waterSurface = new G4LogicalBorderSurface( + "WaterSurface", waterTank_phys, expHall_phys, opWaterSurface); - G4OpticalSurface* opticalSurface = dynamic_cast - (waterSurface->GetSurface(waterTank_phys,expHall_phys)-> - GetSurfaceProperty()); - if (opticalSurface) opticalSurface->DumpInfo(); + G4OpticalSurface* opticalSurface = dynamic_cast( + waterSurface->GetSurface(waterTank_phys, expHall_phys) + ->GetSurfaceProperty()); + if(opticalSurface) + opticalSurface->DumpInfo(); -// Air Bubble -// + // Air Bubble + // G4OpticalSurface* opAirSurface = new G4OpticalSurface("AirSurface"); opAirSurface->SetType(dielectric_dielectric); opAirSurface->SetFinish(polished); opAirSurface->SetModel(glisur); G4LogicalSkinSurface* airSurface = - new G4LogicalSkinSurface("AirSurface", bubbleAir_log, opAirSurface); + new G4LogicalSkinSurface("AirSurface", bubbleAir_log, opAirSurface); - opticalSurface = dynamic_cast - (airSurface->GetSurface(bubbleAir_log)->GetSurfaceProperty()); - if (opticalSurface) opticalSurface->DumpInfo(); + opticalSurface = dynamic_cast( + airSurface->GetSurface(bubbleAir_log)->GetSurfaceProperty()); + if(opticalSurface) + opticalSurface->DumpInfo(); -// -// Generate & Add Material Properties Table attached to the optical surfaces -// - const G4int num = 2; - G4double ephoton[num] = {2.034*eV, 4.136*eV}; + // Generate & Add Material Properties Table attached to the optical surfaces + // + std::vector ephoton = { 2.034 * eV, 4.136 * eV }; - //OpticalWaterSurface - // if surface model is unified we can set parameters -// G4double refractiveIndex[num] = {1.35, 1.40}; -// G4double specularLobe[num] = {0.3, 0.3}; -// G4double specularSpike[num] = {0.2, 0.2}; -// G4double backScatter[num] = {0.2, 0.2}; -// -// G4MaterialPropertiesTable* myST1 = new G4MaterialPropertiesTable(); -// myST1->AddProperty("RINDEX", ephoton, refractiveIndex, num); -// myST1->AddProperty("SPECULARLOBECONSTANT", ephoton, specularLobe, num); -// myST1->AddProperty("SPECULARSPIKECONSTANT", ephoton, specularSpike, num); -// myST1->AddProperty("BACKSCATTERCONSTANT", ephoton, backScatter, num); -// -// G4cout << "Water Surface G4MaterialPropertiesTable" << G4endl; -// myST1->DumpTable(); + // OpticalAirSurface + std::vector reflectivity = { 0.3, 0.5 }; + std::vector efficiency = { 0.8, 1.0 }; -// opWaterSurface->SetMaterialPropertiesTable(myST1); + G4MaterialPropertiesTable* myST2 = new G4MaterialPropertiesTable(); - //OpticalAirSurface - G4double reflectivity[num] = {0.3, 0.5}; - G4double efficiency[num] = {0.8, 1.0}; + myST2->AddProperty("REFLECTIVITY", ephoton, reflectivity); + myST2->AddProperty("EFFICIENCY", ephoton, efficiency); - G4MaterialPropertiesTable *myST2 = new G4MaterialPropertiesTable(); - - myST2->AddProperty("REFLECTIVITY", ephoton, reflectivity, num); - myST2->AddProperty("EFFICIENCY", ephoton, efficiency, num); - - G4cout << "Air Surface G4MaterialPropertiesTable" << G4endl; + G4cout << "Air Surface G4MaterialPropertiesTable:" << G4endl; myST2->DumpTable(); opAirSurface->SetMaterialPropertiesTable(myST2); -//always return the physical World return expHall_phys; } diff --git a/examples/extended/optical/OpNovice/src/OpNoviceEventAction.cc b/examples/extended/optical/OpNovice/src/OpNoviceEventAction.cc new file mode 100644 index 0000000000..fbef8efc55 --- /dev/null +++ b/examples/extended/optical/OpNovice/src/OpNoviceEventAction.cc @@ -0,0 +1,78 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file optical/OpNovice/src/OpNoviceEventAction.cc +/// \brief Implementation of the OpNoviceEventAction class +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "OpNoviceEventAction.hh" + +#include "OpNoviceRun.hh" + +#include "G4Event.hh" +#include "G4RunManager.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +OpNoviceEventAction::OpNoviceEventAction() + : G4UserEventAction() +{ + fRayleigh = 0; + fAbsorption = 0; + fMie = 0; + fBoundary = 0; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +OpNoviceEventAction::~OpNoviceEventAction() {} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void OpNoviceEventAction::BeginOfEventAction(const G4Event*) +{ + fRayleigh = 0; + fAbsorption = 0; + fMie = 0; + fBoundary = 0; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void OpNoviceEventAction::EndOfEventAction(const G4Event*) +{ + OpNoviceRun* run = static_cast( + G4RunManager::GetRunManager()->GetNonConstCurrentRun()); + + run->AddRayleigh(fRayleigh); + run->AddAbsorption(fAbsorption); + run->AddMie(fMie); + run->AddBoundary(fBoundary); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice/src/OpNovicePrimaryGeneratorAction.cc b/examples/extended/optical/OpNovice/src/OpNovicePrimaryGeneratorAction.cc index 0ad5d39f7b..6d3902b2d7 100644 --- a/examples/extended/optical/OpNovice/src/OpNovicePrimaryGeneratorAction.cc +++ b/examples/extended/optical/OpNovice/src/OpNovicePrimaryGeneratorAction.cc @@ -32,38 +32,38 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #include "OpNovicePrimaryGeneratorAction.hh" + #include "OpNovicePrimaryGeneratorMessenger.hh" -#include "Randomize.hh" - #include "G4Event.hh" +#include "G4ParticleDefinition.hh" #include "G4ParticleGun.hh" #include "G4ParticleTable.hh" -#include "G4ParticleDefinition.hh" #include "G4SystemOfUnits.hh" +#include "Randomize.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... OpNovicePrimaryGeneratorAction::OpNovicePrimaryGeneratorAction() - : G4VUserPrimaryGeneratorAction(), - fParticleGun(0) + : G4VUserPrimaryGeneratorAction() + , fParticleGun(nullptr) { G4int n_particle = 1; - fParticleGun = new G4ParticleGun(n_particle); + fParticleGun = new G4ParticleGun(n_particle); - //create a messenger for this class + // create a messenger for this class fGunMessenger = new OpNovicePrimaryGeneratorMessenger(this); - //default kinematic + // default kinematic // G4ParticleTable* particleTable = G4ParticleTable::GetParticleTable(); G4ParticleDefinition* particle = particleTable->FindParticle("e+"); fParticleGun->SetParticleDefinition(particle); - fParticleGun->SetParticleTime(0.0*ns); - fParticleGun->SetParticlePosition(G4ThreeVector(0.0*cm,0.0*cm,0.0*cm)); - fParticleGun->SetParticleMomentumDirection(G4ThreeVector(1.,0.,0.)); - fParticleGun->SetParticleEnergy(500.0*keV); + fParticleGun->SetParticleTime(0.0 * ns); + fParticleGun->SetParticlePosition(G4ThreeVector(0., 0., 0.)); + fParticleGun->SetParticleMomentumDirection(G4ThreeVector(1., 0., 0.)); + fParticleGun->SetParticleEnergy(500.0 * keV); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -85,32 +85,37 @@ void OpNovicePrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) void OpNovicePrimaryGeneratorAction::SetOptPhotonPolar() { - G4double angle = G4UniformRand() * 360.0*deg; - SetOptPhotonPolar(angle); + G4double angle = G4UniformRand() * 360.0 * deg; + SetOptPhotonPolar(angle); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void OpNovicePrimaryGeneratorAction::SetOptPhotonPolar(G4double angle) { - if (fParticleGun->GetParticleDefinition()->GetParticleName()!="opticalphoton") - { - G4cout << "--> warning from PrimaryGeneratorAction::SetOptPhotonPolar() :" - "the particleGun is not an opticalphoton" << G4endl; - return; - } + if(fParticleGun->GetParticleDefinition()->GetParticleName() != + "opticalphoton") + { + G4ExceptionDescription ed; + ed << "Warning: the particleGun is not an opticalphoton"; + G4Exception("OpNovicePrimaryGeneratorAction::SetOptPhotonPolar()", + "OpNovice_010", JustWarning, ed); + return; + } - G4ThreeVector normal (1., 0., 0.); - G4ThreeVector kphoton = fParticleGun->GetParticleMomentumDirection(); - G4ThreeVector product = normal.cross(kphoton); - G4double modul2 = product*product; - - G4ThreeVector e_perpend (0., 0., 1.); - if (modul2 > 0.) e_perpend = (1./std::sqrt(modul2))*product; - G4ThreeVector e_paralle = e_perpend.cross(kphoton); - - G4ThreeVector polar = std::cos(angle)*e_paralle + std::sin(angle)*e_perpend; - fParticleGun->SetParticlePolarization(polar); + G4ThreeVector normal(1., 0., 0.); + G4ThreeVector kphoton = fParticleGun->GetParticleMomentumDirection(); + G4ThreeVector product = normal.cross(kphoton); + G4double modul2 = product * product; + + G4ThreeVector e_perpend(0., 0., 1.); + if(modul2 > 0.) + e_perpend = (1. / std::sqrt(modul2)) * product; + G4ThreeVector e_paralle = e_perpend.cross(kphoton); + + G4ThreeVector polar = + std::cos(angle) * e_paralle + std::sin(angle) * e_perpend; + fParticleGun->SetParticlePolarization(polar); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice/src/OpNovicePrimaryGeneratorMessenger.cc b/examples/extended/optical/OpNovice/src/OpNovicePrimaryGeneratorMessenger.cc index 9149fd303e..771235c6bf 100644 --- a/examples/extended/optical/OpNovice/src/OpNovicePrimaryGeneratorMessenger.cc +++ b/examples/extended/optical/OpNovice/src/OpNovicePrimaryGeneratorMessenger.cc @@ -28,33 +28,32 @@ // // // -// - //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #include "OpNovicePrimaryGeneratorMessenger.hh" #include "OpNovicePrimaryGeneratorAction.hh" -#include "G4UIdirectory.hh" -#include "G4UIcmdWithADoubleAndUnit.hh" + #include "G4SystemOfUnits.hh" +#include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIdirectory.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -OpNovicePrimaryGeneratorMessenger:: - OpNovicePrimaryGeneratorMessenger(OpNovicePrimaryGeneratorAction* OpNoviceGun) - : G4UImessenger(), - fOpNoviceAction(OpNoviceGun) +OpNovicePrimaryGeneratorMessenger::OpNovicePrimaryGeneratorMessenger( + OpNovicePrimaryGeneratorAction* OpNoviceGun) + : G4UImessenger() + , fOpNoviceAction(OpNoviceGun) { fGunDir = new G4UIdirectory("/OpNovice/gun/"); fGunDir->SetGuidance("PrimaryGenerator control"); fPolarCmd = - new G4UIcmdWithADoubleAndUnit("/OpNovice/gun/optPhotonPolar",this); + new G4UIcmdWithADoubleAndUnit("/OpNovice/gun/optPhotonPolar", this); fPolarCmd->SetGuidance("Set linear polarization"); fPolarCmd->SetGuidance(" angle w.r.t. (k,n) plane"); - fPolarCmd->SetParameterName("angle",true); + fPolarCmd->SetParameterName("angle", true); fPolarCmd->SetUnitCategory("Angle"); fPolarCmd->SetDefaultValue(-360.0); fPolarCmd->SetDefaultUnit("deg"); @@ -71,16 +70,20 @@ OpNovicePrimaryGeneratorMessenger::~OpNovicePrimaryGeneratorMessenger() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void OpNovicePrimaryGeneratorMessenger::SetNewValue( - G4UIcommand* command, G4String newValue) +void OpNovicePrimaryGeneratorMessenger::SetNewValue(G4UIcommand* command, + G4String newValue) { - if( command == fPolarCmd ) { - G4double angle = fPolarCmd->GetNewDoubleValue(newValue); - if ( angle == -360.0*deg ) { - fOpNoviceAction->SetOptPhotonPolar(); - } else { - fOpNoviceAction->SetOptPhotonPolar(angle); - } + if(command == fPolarCmd) + { + G4double angle = fPolarCmd->GetNewDoubleValue(newValue); + if(angle == -360.0 * deg) + { + fOpNoviceAction->SetOptPhotonPolar(); + } + else + { + fOpNoviceAction->SetOptPhotonPolar(angle); + } } } diff --git a/examples/extended/optical/OpNovice/src/OpNoviceRun.cc b/examples/extended/optical/OpNovice/src/OpNoviceRun.cc new file mode 100644 index 0000000000..23a418e8e2 --- /dev/null +++ b/examples/extended/optical/OpNovice/src/OpNoviceRun.cc @@ -0,0 +1,179 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +/// \file OpNovice/src/OpNoviceRun.cc +/// \brief Implementation of the OpNoviceRun class +// +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "OpNoviceRun.hh" + +#include "G4ParticleDefinition.hh" +#include "G4Run.hh" +#include "G4UnitsTable.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +OpNoviceRun::OpNoviceRun() + : G4Run() +{ + fParticle = nullptr; + fEnergy = -1.; + fCerenkovCounter = 0.; + fCerenkov2 = 0.; + fScintillationCounter = 0.; + fScintillation2 = 0.; + fRayleighCounter = 0.; + fRayleigh2 = 0.; + fAbsorptionCounter = 0.; + fAbsorption2 = 0.; + fMieCounter = 0.; + fMie2 = 0.; + fBoundaryCounter = 0.; + fBoundary2 = 0.; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +OpNoviceRun::~OpNoviceRun() {} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void OpNoviceRun::SetPrimary(G4ParticleDefinition* particle, G4double energy) +{ + fParticle = particle; + fEnergy = energy; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void OpNoviceRun::Merge(const G4Run* run) +{ + const OpNoviceRun* localRun = static_cast(run); + + fParticle = localRun->fParticle; + fEnergy = localRun->fEnergy; + + fCerenkovCounter += localRun->fCerenkovCounter; + fCerenkov2 += localRun->fCerenkov2; + fScintillationCounter += localRun->fScintillationCounter; + fScintillation2 += localRun->fScintillation2; + + fRayleighCounter += localRun->fRayleighCounter; + fRayleigh2 += localRun->fRayleigh2; + fAbsorptionCounter += localRun->fAbsorptionCounter; + fAbsorption2 += localRun->fAbsorption2; + fMieCounter += localRun->fMieCounter; + fMie2 += localRun->fMie2; + fBoundaryCounter += localRun->fBoundaryCounter; + fBoundary2 += localRun->fBoundary2; + + G4Run::Merge(run); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void OpNoviceRun::EndOfRun() +{ + if(numberOfEvent == 0) + return; + G4double TotNbofEvents = G4double(numberOfEvent); + + fCerenkovCounter /= TotNbofEvents; + fCerenkov2 /= TotNbofEvents; + G4double rmsCerenkov = fCerenkov2 - fCerenkovCounter * fCerenkovCounter; + if(rmsCerenkov > 0.) + rmsCerenkov = std::sqrt(rmsCerenkov); + else + rmsCerenkov = 0.; + + fScintillationCounter /= TotNbofEvents; + fScintillation2 /= TotNbofEvents; + G4double rmsScint = + fScintillation2 - fScintillationCounter * fScintillationCounter; + if(rmsScint > 0.) + rmsScint = std::sqrt(rmsScint); + else + rmsScint = 0.; + + fRayleighCounter /= TotNbofEvents; + fRayleigh2 /= TotNbofEvents; + G4double rmsRayleigh = fRayleigh2 - fRayleighCounter * fRayleighCounter; + if(rmsRayleigh > 0.) + rmsRayleigh = std::sqrt(rmsRayleigh); + else + rmsRayleigh = 0.; + + fAbsorptionCounter /= TotNbofEvents; + fAbsorption2 /= TotNbofEvents; + G4double rmsAbsorption = + fAbsorption2 - fAbsorptionCounter * fAbsorptionCounter; + if(rmsAbsorption > 0.) + rmsAbsorption = std::sqrt(rmsAbsorption); + else + rmsAbsorption = 0.; + + fMieCounter /= TotNbofEvents; + fMie2 /= TotNbofEvents; + G4double rmsMie = fMie2 - fMieCounter * fMieCounter; + if(rmsMie > 0.) + rmsMie = std::sqrt(rmsMie); + else + rmsMie = 0.; + + fBoundaryCounter /= TotNbofEvents; + fBoundary2 /= TotNbofEvents; + G4double rmsBoundary = fBoundary2 - fBoundaryCounter * fBoundaryCounter; + if(rmsBoundary > 0.) + rmsBoundary = std::sqrt(rmsBoundary); + else + rmsBoundary = 0.; + + G4int prec = G4cout.precision(3); + G4cout << "\n ======================== run summary ======================\n"; + + G4cout << "Primary particle was: " << fParticle->GetParticleName() + << " with energy " << G4BestUnit(fEnergy, "Energy") << "." << G4endl; + G4cout << "Number of events: " << numberOfEvent << G4endl; + + G4cout << "Average number of Cerenkov photons created per event: " + << fCerenkovCounter << " +- " << rmsCerenkov << G4endl; + G4cout << "Average number of scintillation photons created per event: " + << fScintillationCounter << " +- " << rmsScint << G4endl; + + G4cout << "Average number of optical Rayleigh interactions per event: " + << fRayleighCounter << " +- " << rmsRayleigh << G4endl; + G4cout << "Average number of optical absorption interactions per event: " + << fAbsorptionCounter << " +- " << rmsAbsorption << G4endl; + G4cout << "Average number of optical Mie interactions per event: " + << fMieCounter << " +- " << rmsMie << G4endl; + G4cout << "Average number of optical boundary interactions per event: " + << fBoundaryCounter << " +- " << rmsBoundary << G4endl; + + G4cout << G4endl; + G4cout.precision(prec); +} diff --git a/examples/extended/optical/OpNovice/src/OpNoviceRunAction.cc b/examples/extended/optical/OpNovice/src/OpNoviceRunAction.cc index 1b9ccc2ec8..27a6ab49af 100644 --- a/examples/extended/optical/OpNovice/src/OpNoviceRunAction.cc +++ b/examples/extended/optical/OpNovice/src/OpNoviceRunAction.cc @@ -27,48 +27,55 @@ /// \brief Implementation of the OpNoviceRunAction class // // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -// Make this appear first! -#include "G4Timer.hh" - #include "OpNoviceRunAction.hh" +#include "OpNovicePrimaryGeneratorAction.hh" +#include "OpNoviceRun.hh" + +#include "G4ParticleDefinition.hh" #include "G4Run.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -OpNoviceRunAction::OpNoviceRunAction() - : G4UserRunAction(), - fTimer(0) +OpNoviceRunAction::OpNoviceRunAction(OpNovicePrimaryGeneratorAction* prim) + : G4UserRunAction() + , fRun(nullptr) + , fPrimary(prim) +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +OpNoviceRunAction::~OpNoviceRunAction() {} + +G4Run* OpNoviceRunAction::GenerateRun() { - fTimer = new G4Timer; + fRun = new OpNoviceRun(); + return fRun; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -OpNoviceRunAction::~OpNoviceRunAction() +void OpNoviceRunAction::BeginOfRunAction(const G4Run*) { - delete fTimer; + if(fPrimary) + { + G4ParticleDefinition* particle = + fPrimary->GetParticleGun()->GetParticleDefinition(); + G4double energy = fPrimary->GetParticleGun()->GetParticleEnergy(); + fRun->SetPrimary(particle, energy); + } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void OpNoviceRunAction::BeginOfRunAction(const G4Run* aRun) +void OpNoviceRunAction::EndOfRunAction(const G4Run*) { - G4cout << "### Run " << aRun->GetRunID() << " start." << G4endl; - fTimer->Start(); -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void OpNoviceRunAction::EndOfRunAction(const G4Run* aRun) -{ - fTimer->Stop(); - G4cout << "number of event = " << aRun->GetNumberOfEvent() - << " " << *fTimer << G4endl; + if(isMaster) + fRun->EndOfRun(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice/src/OpNoviceStackingAction.cc b/examples/extended/optical/OpNovice/src/OpNoviceStackingAction.cc index 39b78de0ed..d0e192def9 100644 --- a/examples/extended/optical/OpNovice/src/OpNoviceStackingAction.cc +++ b/examples/extended/optical/OpNovice/src/OpNoviceStackingAction.cc @@ -32,38 +32,40 @@ #include "OpNoviceStackingAction.hh" -#include "G4VProcess.hh" +#include "OpNoviceRun.hh" +#include "G4ios.hh" #include "G4ParticleDefinition.hh" #include "G4ParticleTypes.hh" +#include "G4RunManager.hh" #include "G4Track.hh" -#include "G4ios.hh" +#include "G4VProcess.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... OpNoviceStackingAction::OpNoviceStackingAction() - : G4UserStackingAction(), - fScintillationCounter(0), fCerenkovCounter(0) + : G4UserStackingAction() + , fScintillationCounter(0) + , fCerenkovCounter(0) {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -OpNoviceStackingAction::~OpNoviceStackingAction() -{} +OpNoviceStackingAction::~OpNoviceStackingAction() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4ClassificationOfNewTrack -OpNoviceStackingAction::ClassifyNewTrack(const G4Track * aTrack) +G4ClassificationOfNewTrack OpNoviceStackingAction::ClassifyNewTrack( + const G4Track* aTrack) { if(aTrack->GetDefinition() == G4OpticalPhoton::OpticalPhotonDefinition()) - { // particle is optical photon - if(aTrack->GetParentID()>0) - { // particle is secondary + { // particle is optical photon + if(aTrack->GetParentID() > 0) + { // particle is secondary if(aTrack->GetCreatorProcess()->GetProcessName() == "Scintillation") - fScintillationCounter++; - if(aTrack->GetCreatorProcess()->GetProcessName() == "Cerenkov") - fCerenkovCounter++; + ++fScintillationCounter; + else if(aTrack->GetCreatorProcess()->GetProcessName() == "Cerenkov") + ++fCerenkovCounter; } } return fUrgent; @@ -73,10 +75,15 @@ OpNoviceStackingAction::ClassifyNewTrack(const G4Track * aTrack) void OpNoviceStackingAction::NewStage() { - G4cout << "Number of Scintillation photons produced in this event : " - << fScintillationCounter << G4endl; - G4cout << "Number of Cerenkov photons produced in this event : " - << fCerenkovCounter << G4endl; + // G4cout << "Number of Scintillation photons produced in this event : " + // << fScintillationCounter << G4endl; + // G4cout << "Number of Cerenkov photons produced in this event : " + // << fCerenkovCounter << G4endl; + + OpNoviceRun* run = static_cast( + G4RunManager::GetRunManager()->GetNonConstCurrentRun()); + run->AddScintillation((G4double) fScintillationCounter); + run->AddCerenkov((G4double) fCerenkovCounter); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -84,7 +91,7 @@ void OpNoviceStackingAction::NewStage() void OpNoviceStackingAction::PrepareNewEvent() { fScintillationCounter = 0; - fCerenkovCounter = 0; + fCerenkovCounter = 0; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice/src/OpNoviceSteppingAction.cc b/examples/extended/optical/OpNovice/src/OpNoviceSteppingAction.cc index 88428a56e0..876b2ca041 100644 --- a/examples/extended/optical/OpNovice/src/OpNoviceSteppingAction.cc +++ b/examples/extended/optical/OpNovice/src/OpNoviceSteppingAction.cc @@ -29,63 +29,72 @@ #include "OpNoviceSteppingAction.hh" -#include "G4Step.hh" -#include "G4Track.hh" -#include "G4OpticalPhoton.hh" +#include "OpNoviceRun.hh" #include "G4Event.hh" +#include "G4OpBoundaryProcess.hh" +#include "G4OpticalPhoton.hh" #include "G4RunManager.hh" +#include "G4Step.hh" +#include "G4Track.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -OpNoviceSteppingAction::OpNoviceSteppingAction() -: G4UserSteppingAction() -{ - fScintillationCounter = 0; - fCerenkovCounter = 0; - fEventNumber = -1; -} +OpNoviceSteppingAction::OpNoviceSteppingAction(OpNoviceEventAction* event) + : G4UserSteppingAction() + , fEventAction(event) +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -OpNoviceSteppingAction::~OpNoviceSteppingAction() -{ ; } +OpNoviceSteppingAction::~OpNoviceSteppingAction() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void OpNoviceSteppingAction::UserSteppingAction(const G4Step* step) { - G4int eventNumber = G4RunManager::GetRunManager()-> - GetCurrentEvent()->GetEventID(); + static G4ParticleDefinition* opticalphoton = + G4OpticalPhoton::OpticalPhotonDefinition(); - if (eventNumber != fEventNumber) { - fEventNumber = eventNumber; - fScintillationCounter = 0; - fCerenkovCounter = 0; - } + const G4ParticleDefinition* particleDef = + step->GetTrack()->GetDynamicParticle()->GetParticleDefinition(); - G4Track* track = step->GetTrack(); + if(particleDef == opticalphoton) + { + G4StepPoint* endPoint = step->GetPostStepPoint(); + const G4VProcess* pds = endPoint->GetProcessDefinedStep(); + G4String procname = pds->GetProcessName(); + if(procname.compare("OpRayleigh") == 0) + fEventAction->AddRayleigh(); + else if(procname.compare("OpAbsorption") == 0) + fEventAction->AddAbsorption(); + else if(procname.compare("OpMieHG") == 0) + fEventAction->AddMie(); - G4String ParticleName = track->GetDynamicParticle()-> - GetParticleDefinition()->GetParticleName(); + // for boundary scattering, process name in 'transportation'. + // Need to check differently: + if(endPoint->GetStepStatus() == fGeomBoundary) + { + G4OpBoundaryProcessStatus theStatus = Undefined; + G4ProcessManager* opManager = opticalphoton->GetProcessManager(); + G4int n_proc = opManager->GetPostStepProcessVector(typeDoIt)->entries(); + G4ProcessVector* postStepDoItVector = + opManager->GetPostStepProcessVector(typeDoIt); + for(G4int i = 0; i < n_proc; ++i) + { + G4VProcess* currentProcess = (*postStepDoItVector)[i]; - if (ParticleName == "opticalphoton") return; - - const std::vector* secondaries = - step->GetSecondaryInCurrentStep(); - - if (secondaries->size()>0) { - for(unsigned int i=0; isize(); ++i) { - if (secondaries->at(i)->GetParentID()>0) { - if(secondaries->at(i)->GetDynamicParticle()->GetParticleDefinition() - == G4OpticalPhoton::OpticalPhotonDefinition()){ - if (secondaries->at(i)->GetCreatorProcess()->GetProcessName() - == "Scintillation")fScintillationCounter++; - if (secondaries->at(i)->GetCreatorProcess()->GetProcessName() - == "Cerenkov")fCerenkovCounter++; - } - } - } + G4OpBoundaryProcess* opProc = + dynamic_cast(currentProcess); + if(opProc) + theStatus = opProc->GetStatus(); + } + if(theStatus != Undefined && theStatus != NotAtBoundary && + theStatus != StepTooSmall) + { + fEventAction->AddBoundary(); + } + } } } diff --git a/examples/extended/optical/OpNovice2/.README.txt b/examples/extended/optical/OpNovice2/.README.txt index b4871267d2..f0fcec9ed3 100644 --- a/examples/extended/optical/OpNovice2/.README.txt +++ b/examples/extended/optical/OpNovice2/.README.txt @@ -74,7 +74,7 @@ $ ./OpNovice2 - Execute OpNovice2 in 'batch' mode from macro files \verbatim -% OpNovice2 surface.mac +% OpNovice2 electron.mac \endverbatim - Execute OpNovice2 in 'interactive mode' with visualization @@ -93,28 +93,37 @@ Idle> exit \section OpNovice2_s7 HISTOGRAMS OpNovice2 has several predefined 1D histograms : - - 1 : Cerenkov spectrum - - 2 : scintillation spectrum - - 3 : boundary process status - - 4 : X momentum dir of scattered photons with px < 0 - - 5 : Y momentum dir of scattered photons with px < 0 - - 6 : Z momentum dir of scattered photons with px < 0 - - 7 : X momentum dir of scattered photons with px >= 0 - - 8 : Y momentum dir of scattered photons with px >= 0 - - 9 : Z momentum dir of scattered photons with px >= 0 - - 10 : X momentum dir of Fresnel-refracted photons - - 11 : Y momentum dir of Fresnel-refracted photons - - 12 : Z momentum dir of Fresnel-refracted photons + - 1 : Cerenkov spectrum + - 2 : scintillation spectrum + - 3 : scintillation time (global time) + - 4 : WLS absorption spectrum + - 5 : WLS emission spectrum + - 6 : WLS emission time + - 7 : WLS2 absorption spectrum + - 8 : WLS2 emission spectrum + - 9 : WLS2 emission time + - 10 : boundary process status + - 11 : X momentum dir of scattered photons with px < 0 + - 12 : Y momentum dir of scattered photons with px < 0 + - 13 : Z momentum dir of scattered photons with px < 0 + - 14 : X momentum dir of scattered photons with px >= 0 + - 15 : Y momentum dir of scattered photons with px >= 0 + - 16 : Z momentum dir of scattered photons with px >= 0 + - 17 : X momentum dir of Fresnel-refracted photons + - 18 : Y momentum dir of Fresnel-refracted photons + - 19 : Z momentum dir of Fresnel-refracted photons + - 20 : fraction of photons transmitted at surface + - 21 : fraction of photons reflected at surface - Histograms 4-12 are recorded for photons scattered from the +X + Histograms 11-19 are recorded for photons scattered from the +X surface of the cube. Only the first interaction is recorded. The histograms are managed by G4Analysis classes. The histos can be individually activated with the command : \verbatim -/analysis/h1/set id nbBins valMin valMax unit +/analysis/h1/set id nbBins valMin valMax \endverbatim - where unit is the desired unit for the histo (MeV or keV, deg or mrad, etc..) + The unit is hardcoded to be eV for energy and ns for time. One can control the name of the histograms file with the command: \verbatim @@ -130,4 +139,20 @@ Idle> exit \endverbatim All selected histos will be written on a file name.ascii (default opnovice2) +\section OpNovice2_s8 MACROS + + Several macros are included. + boundary.mac: Set the surface to the various types and configurations of + model, type, etc., shoot optical photons, and record statistics + electron.mac: Shoot electrons and observe Cerenkov and scintillation radiation + fresnel.mac: Shoot optical photons of fixed polarization and random direction + at a surface, and plot reflectance/transmittance vs incident + angle. + OpNovice2.mac: Shoot an optical photon inside a box. + scint_by_particle.mac: Configure scintillation to have particle-specific + yields and yield ratios. Shoot different types of particles. + vis.mac: Configure visualization. + wls.mac: Configure two wavelength-shifting processes, and shoot optical + photons. + */ diff --git a/examples/extended/optical/OpNovice2/CMakeLists.txt b/examples/extended/optical/OpNovice2/CMakeLists.txt index a8c0a48b5c..1474b3a61a 100644 --- a/examples/extended/optical/OpNovice2/CMakeLists.txt +++ b/examples/extended/optical/OpNovice2/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(OpNovice2) #---------------------------------------------------------------------------- @@ -23,7 +26,7 @@ include(${Geant4_USE_FILE}) #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) @@ -41,12 +44,12 @@ target_link_libraries(OpNovice2 ${Geant4_LIBRARIES} ) # set(OpNovice2_SCRIPTS OpNovice2.out - OpNovice2.in - vis.mac - unified.mac - glisur.mac + OpNovice2.mac + boundary.mac electron.mac + fresnel.mac scint_by_particle.mac + vis.mac wls.mac ) diff --git a/examples/extended/optical/OpNovice2/History b/examples/extended/optical/OpNovice2/History index 08d0309f41..e4f4df964d 100644 --- a/examples/extended/optical/OpNovice2/History +++ b/examples/extended/optical/OpNovice2/History @@ -13,6 +13,26 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +October 30, 2020 D.Sawkey (OpNovice2-V10-06-07) +- migration to G4RunManagerFactory, and don't set number of threads in main +- print histogram statistics at end of run +- remove G4Timer +- update macro verbosity, ignore threads except 0 +- apply clang-format style + +October 5, 2020 D.Sawkey (OpNovice2-V10-06-06) +- new macro boundary.mac, exercising all 4 boundary models. Remove + glisur.mac and unified.mac. +- rename OpNovice2.in to OpNovice2.mac + +August 4, 2020 D.Sawkey (OpNovice2-V10-06-05) +- Add material properties using new interface with std::vectors + +July 10, 2020 D.Sawkey (OpNovice2-V10-06-04) +- calculate reflection/transmission probabilities vs. angle + (new macro fresnel.mac) +- histos: add axis labels, id's; refer to them by id in some places + May 29, 2020 D.Sawkey (OpNovice2-V10-06-03) - add code to generate statistics for wavelength shifting - add wls.mac to test WLS and new process WLS2 diff --git a/examples/extended/optical/OpNovice2/OpNovice2.cc b/examples/extended/optical/OpNovice2/OpNovice2.cc index fcac113739..b4e5ddd8e7 100644 --- a/examples/extended/optical/OpNovice2/OpNovice2.cc +++ b/examples/extended/optical/OpNovice2/OpNovice2.cc @@ -29,46 +29,29 @@ // //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#include "G4Types.hh" - -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif - -#include "G4UImanager.hh" -#include "G4String.hh" - -#include "FTFP_BERT.hh" -#include "G4OpticalPhysics.hh" -#include "G4EmStandardPhysics_option4.hh" - +#include "ActionInitialization.hh" #include "DetectorConstruction.hh" -#include "ActionInitialization.hh" - -#include "G4VisExecutive.hh" +#include "FTFP_BERT.hh" +#include "G4EmStandardPhysics_option4.hh" +#include "G4OpticalPhysics.hh" +#include "G4RunManagerFactory.hh" +#include "G4String.hh" +#include "G4Types.hh" #include "G4UIExecutive.hh" +#include "G4UImanager.hh" +#include "G4VisExecutive.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc, char** argv) { - - //detect interactive mode (if no arguments) and define UI session + // detect interactive mode (if no arguments) and define UI session G4UIExecutive* ui = nullptr; - if (argc == 1) ui = new G4UIExecutive(argc,argv); + if(argc == 1) + ui = new G4UIExecutive(argc, argv); -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - G4int nThreads = std::min(G4Threading::G4GetNumberOfCores(), 4); - runManager->SetNumberOfThreads(nThreads); - G4cout << "===== OpNovice2 is started with " - << runManager->GetNumberOfThreads() << " threads =====" << G4endl; -#else - G4RunManager * runManager = new G4RunManager; -#endif + auto runManager = G4RunManagerFactory::CreateRunManager(); DetectorConstruction* detector = new DetectorConstruction(); runManager->SetUserInitialization(detector); @@ -82,24 +65,26 @@ int main(int argc, char** argv) runManager->SetUserInitialization(new ActionInitialization()); - //initialize visualization + // initialize visualization G4VisManager* visManager = new G4VisExecutive; visManager->Initialize(); - //get the pointer to the User Interface manager + // get the pointer to the User Interface manager G4UImanager* UImanager = G4UImanager::GetUIpointer(); - if (ui) { - //interactive mode + if(ui) + { + // interactive mode UImanager->ApplyCommand("/control/execute vis.mac"); ui->SessionStart(); delete ui; } - else { - //batch mode - G4String command = "/control/execute "; + else + { + // batch mode + G4String command = "/control/execute "; G4String fileName = argv[1]; - UImanager->ApplyCommand(command+fileName); + UImanager->ApplyCommand(command + fileName); } // job termination diff --git a/examples/extended/optical/OpNovice2/OpNovice2.in b/examples/extended/optical/OpNovice2/OpNovice2.mac similarity index 94% rename from examples/extended/optical/OpNovice2/OpNovice2.in rename to examples/extended/optical/OpNovice2/OpNovice2.mac index 40e8c3c9e0..2af9ea10d1 100644 --- a/examples/extended/optical/OpNovice2/OpNovice2.in +++ b/examples/extended/optical/OpNovice2/OpNovice2.mac @@ -1,5 +1,8 @@ /control/verbose 2 /tracking/verbose 0 +/run/verbose 1 +/process/optical/verbose 1 +/control/cout/ignoreThreadsExcept 0 /opnovice2/boxProperty RINDEX 0.000002 1.3 0.000008 1.4 /opnovice2/boxProperty ABSLENGTH 0.000002 1000000 0.000005 2000000 0.000008 3000000 diff --git a/examples/extended/optical/OpNovice2/OpNovice2.out b/examples/extended/optical/OpNovice2/OpNovice2.out index af9cbdb637..4becf0af21 100644 --- a/examples/extended/optical/OpNovice2/OpNovice2.out +++ b/examples/extended/optical/OpNovice2/OpNovice2.out @@ -1,7 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... + + ############################################ + !!! WARNING - FPE detection is activated !!! + ############################################ ************************************************************** - Geant4 version Name: geant4-10-05-ref-10 [MT] (31-October-2019) - << in Multi-threaded mode >> + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -9,28 +13,30 @@ WWW : http://geant4.org/ ************************************************************** -===== OpNovice2 is started with 4 threads ===== <<< Geant4 Physics List simulation engine: FTFP_BERT -G4VModularPhysicsList::ReplacePhysics: G4EmStandardwith type : 2 is replaces with G4EmStandard_opt4 +G4VModularPhysicsList::ReplacePhysics: G4EmStandard with type : 2 is replaced with G4EmStandard_opt4 Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... You have successfully registered the following graphics systems. -Current available graphics systems are: -ASCIITree (ATree) -DAWNFILE (DAWNFILE) -G4HepRep (HepRepXML) -G4HepRepFile (HepRepFile) -RayTracer (RayTracer) -VRML1FILE (VRML1FILE) -VRML2FILE (VRML2FILE) -gMocrenFile (gMocrenFile) -OpenGLImmediateQt (OGLIQt, OGLI) -OpenGLStoredQt (OGLSQt, OGL, OGLS) -OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK) -OpenGLStoredX (OGLSX, OGLSQt_FALLBACK) +Registered graphics systems are: + ASCIITree (ATree) + DAWNFILE (DAWNFILE) + G4HepRep (HepRepXML) + G4HepRepFile (HepRepFile) + RayTracer (RayTracer) + VRML1FILE (VRML1FILE) + VRML2FILE (VRML2FILE) + gMocrenFile (gMocrenFile) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) + RayTracerX (RayTracerX) Registering model factories... @@ -43,6 +49,9 @@ Registered model factories: drawByParticleID drawByEncounteredVolume +Registered models: + None + Registered filter factories: attributeFilter chargeFilter @@ -50,6 +59,9 @@ Registered filter factories: particleFilter encounteredVolumeFilter +Registered filters: + None + You have successfully registered the following user vis actions. Run Duration User Vis Actions: none End of Event User Vis Actions: none @@ -58,6 +70,10 @@ End of Run User Vis Actions: none Some /vis commands (optionally) take a string to specify colour. "/vis/list" to see available colours. /tracking/verbose 0 +/run/verbose 1 +/process/optical/verbose 1 +/run/physicsModified +/control/cout/ignoreThreadsExcept 0 /opnovice2/boxProperty RINDEX 0.000002 1.3 0.000008 1.4 The MPT for the box is now: 0: RINDEX @@ -75,7 +91,7 @@ The MPT for the box is now: 9: GROUPVEL 2e-06 218.486 8e-06 203.645 -14: ABSLENGTH +16: ABSLENGTH 2e-06 1e+06 5e-06 2e+06 8e-06 3e+06 @@ -97,7 +113,7 @@ The MPT for the world is now: 9: GROUPVEL 2e-06 296.824 8e-06 296.824 -14: ABSLENGTH +16: ABSLENGTH 2e-06 1e+06 5e-06 2e+06 8e-06 3e+06 @@ -165,20 +181,43 @@ The MPT for the surface is now: Surface parameter ----------------- -1.1 + sigma_alpha: 1.1 ****** end of opticalSurface->DumpInfo - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV for neutron : 3 to 6 GeV ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 +OpAbsorption is created +OpRayleigh is created +OpMieHG is created +OpBoundary is created +OpWLS is created +OpWLS2 is created ### Birks coefficients used in run time G4_WATER 0.126 mm/MeV 0.0126 g/cm^2/MeV massFactor= 85.0756 effCharge= 62.0606 -/run/physicsModified +# +/gun/particle opticalphoton +/gun/energy 3 eV +/gun/position 0 0 0 cm +/gun/direction 1 0 0 +/opnovice2/gun/optPhotonPolar +# +/analysis/h1/set 3 40 -1 39 +/analysis/h1/set 4 100 -1.1 1.1 +/analysis/h1/set 5 100 -1.1 1.1 +/analysis/h1/set 6 100 -1.1 1.1 +/analysis/h1/set 7 100 -1.1 1.1 +/analysis/h1/set 8 100 -1.1 1.1 +/analysis/h1/set 9 100 -1.1 1.1 +/analysis/h1/set 10 100 -1.1 1.1 +/analysis/h1/set 11 100 -1.1 1.1 +/analysis/h1/set 12 100 -1.1 1.1 +/run/beamOn 100000 ### === Deexcitation model UAtomDeexcitation is activated for 1 region: DefaultRegionForTheWorld 1 0 0 @@ -208,10 +247,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -232,21 +272,22 @@ eBrem: for e- SubType=3 ePairProd: for e- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 25x1001; from 0.1 GeV to 100 TeV + Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 - ThetaMin(p) < Theta(degree) < 180; pLimit(GeV^1)= 0.139531 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -267,9 +308,9 @@ eBrem: for e+ SubType=3 ePairProd: for e+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 25x1001; from 0.1 GeV to 100 TeV + Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -277,19 +318,19 @@ annihil: for e+, integral:1 SubType=5 BuildTable=0 CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 - ThetaMin(p) < Theta(degree) < 180; pLimit(GeV^1)= 0.139531 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.01 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 ===== EM models for the G4Region DefaultRegionForTheWorld ====== Bragg : Emin= 0 eV Emax= 2 MeV deltaVI BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI @@ -298,30 +339,34 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 17x1001; from 7.50618 GeV to 100 TeV + Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 - ThetaMin(p) < Theta(degree) < 180; pLimit(GeV^1)= 0.139531 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV +nuclearStopping: for proton SubType=8 BuildTable=0 + ===== EM models for the G4Region DefaultRegionForTheWorld ====== + ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV + msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.001 mm), integ: 1, fluct: 1, linLossLim= 0.02 + StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.02 ===== EM models for the G4Region DefaultRegionForTheWorld ====== ParamICRU73 : Emin= 0 eV Emax= 100 TeV deltaVI @@ -330,9 +375,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -347,14 +392,14 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.01 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 ===== EM models for the G4Region DefaultRegionForTheWorld ====== ICRU73QO : Emin= 0 eV Emax= 2 MeV deltaVI BetheBloch : Emin= 2 MeV Emax= 100 TeV deltaVI @@ -363,30 +408,30 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 17x1001; from 7.50618 GeV to 100 TeV + Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 - ThetaMin(p) < Theta(degree) < 180; pLimit(GeV^1)= 0.139531 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.01 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 ===== EM models for the G4Region DefaultRegionForTheWorld ====== Bragg : Emin= 0 eV Emax=1.05231 MeV deltaVI BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI @@ -395,30 +440,30 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 18x1001; from 3.94942 GeV to 100 TeV + Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 - ThetaMin(p) < Theta(degree) < 180; pLimit(GeV^1)= 0.139531 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.01 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 ===== EM models for the G4Region DefaultRegionForTheWorld ====== ICRU73QO : Emin= 0 eV Emax=1.05231 MeV deltaVI BetheBloch : Emin=1.05231 MeV Emax= 100 TeV deltaVI @@ -427,30 +472,30 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 18x1001; from 3.94942 GeV to 100 TeV + Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ - ThetaMin(p) < Theta(degree) < 180; pLimit(GeV^1)= 0.139531 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.01 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 ===== EM models for the G4Region DefaultRegionForTheWorld ====== Bragg : Emin= 0 eV Emax= 200 keV deltaVI BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI @@ -460,30 +505,30 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 21x1001; from 1 GeV to 100 TeV + Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 - ThetaMin(p) < Theta(degree) < 180; pLimit(GeV^1)= 0.139531 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.01 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 ===== EM models for the G4Region DefaultRegionForTheWorld ====== ICRU73QO : Emin= 0 eV Emax= 200 keV deltaVI BetheBloch : Emin= 200 keV Emax= 1 GeV deltaVI @@ -493,30 +538,30 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 21x1001; from 1 GeV to 100 TeV + Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ - ThetaMin(p) < Theta(degree) < 180; pLimit(GeV^1)= 0.139531 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.01 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 ===== EM models for the G4Region DefaultRegionForTheWorld ====== Bragg : Emin= 0 eV Emax=297.505 keV deltaVI BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI @@ -525,30 +570,30 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 20x1001; from 1.11656 GeV to 100 TeV + Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 - ThetaMin(p) < Theta(degree) < 180; pLimit(GeV^1)= 0.139531 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - StepFunction=(0.1, 0.02 mm), integ: 1, fluct: 1, linLossLim= 0.01 + StepFunction=(0.1, 0.05 mm), integ: 1, fluct: 1, linLossLim= 0.01 ===== EM models for the G4Region DefaultRegionForTheWorld ====== ICRU73QO : Emin= 0 eV Emax=297.505 keV deltaVI BetheBloch : Emin=297.505 keV Emax= 100 TeV deltaVI @@ -557,18 +602,18 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 - Sampling table 20x1001; from 1.11656 GeV to 100 TeV + Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ - ThetaMin(p) < Theta(degree) < 180; pLimit(GeV^1)= 0.139531 + ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV @@ -593,37 +638,59 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon Process: ionInelastic Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n Model: FTFP: 3 GeV/n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV --------------------------------------------------- Hadronic Processes for He3 Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV Process: He3Inelastic Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n Model: FTFP: 3 GeV/n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV --------------------------------------------------- Hadronic Processes for alpha Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV Process: alphaInelastic Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n Model: FTFP: 3 GeV/n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV --------------------------------------------------- Hadronic Processes for anti_He3 @@ -631,11 +698,11 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_He3Inelastic Model: FTFP: 0 eV /n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -645,11 +712,11 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_alphaInelastic Model: FTFP: 0 eV /n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -659,11 +726,24 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_deuteronInelastic Model: FTFP: 0 eV /n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: hFritiofCaptureAtRest + +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hFritiofCaptureAtRest @@ -673,11 +753,11 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV ---> 100.1 MeV Model: AntiAElastic: 100 MeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_neutronInelastic Model: FTFP: 0 eV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -687,11 +767,11 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV ---> 100.1 MeV Model: AntiAElastic: 100 MeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_protonInelastic Model: FTFP: 0 eV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -701,11 +781,11 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_tritonInelastic Model: FTFP: 0 eV /n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -714,17 +794,17 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV Process: dInelastic Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n Model: FTFP: 3 GeV/n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV --------------------------------------------------- Hadronic Processes for e+ - Process: positronNuclear + Process: electronNuclear Model: G4ElectroVDNuclearModel: 0 eV ---> 1 PeV Cr_sctns: ElectroNuclearXS: 0 eV ---> 100 TeV @@ -739,7 +819,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Hadronic Processes for gamma Process: photonNuclear - Model: BertiniCascade: 0 eV ---> 3.5 GeV + Model: GammaNPreco: 0 eV ---> 200 MeV + Model: BertiniCascade: 199 MeV ---> 6 GeV Model: TheoFSGenerator: 3 GeV ---> 100 TeV Cr_sctns: PhotoNuclearXS: 0 eV ---> 100 TeV @@ -777,8 +858,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -835,54 +916,40 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +--------------------------------------------------- + Hadronic Processes for sigma- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: sigma-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hBertiniCaptureAtRest + --------------------------------------------------- Hadronic Processes for triton Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV Process: tInelastic Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n Model: FTFP: 3 GeV/n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV ================================================================ -G4WT3 > /tracking/verbose 0 -G4WT3 > /run/geometryModified -G4WT3 > /run/geometryModified -G4WT3 > /run/geometryModified -G4WT3 > /run/geometryModified -G4WT3 > /run/initialize -G4WT3 > /run/physicsModified -G4WT2 > /tracking/verbose 0 -G4WT1 > /tracking/verbose 0 -G4WT0 > /tracking/verbose 0 -G4WT2 > /run/geometryModified -G4WT1 > /run/geometryModified -G4WT2 > /run/geometryModified -G4WT0 > /run/geometryModified -G4WT1 > /run/geometryModified -G4WT0 > /run/geometryModified -G4WT2 > /run/geometryModified -G4WT1 > /run/geometryModified -G4WT0 > /run/geometryModified -G4WT2 > /run/geometryModified -G4WT1 > /run/geometryModified -G4WT0 > /run/geometryModified -G4WT2 > /run/initialize -G4WT0 > /run/initialize -G4WT2 > /run/physicsModified -G4WT1 > /run/initialize -G4WT0 > /run/physicsModified -G4WT1 > /run/physicsModified ======================================================================= ====== Pre-compound/De-excitation Physics Parameters ======== ======================================================================= Type of pre-compound inverse x-section 3 Pre-compound model active 1 Pre-compound excitation low energy (MeV) 0.1 -Pre-compound excitation high energy (MeV) 100 +Pre-compound excitation high energy (MeV) 30 Type of de-excitation inverse x-section 3 Type of de-excitation factory Evaporation+GEM Number of de-excitation channels 68 @@ -892,152 +959,98 @@ Limit excitation energy for Fermi BreakUp (MeV) 20 Level density (1/MeV) 0.075 Use simple level density model 1 Use discrete excitation energy of the residual 0 -Time limit for long lived isomeres (ns) 1e+12 +Time limit for long lived isomeres (ns) 1000 +Isomer production flag 1 Internal e- conversion flag 1 Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= -# -/gun/particle opticalphoton -/gun/energy 3 eV -/gun/position 0 0 0 cm -/gun/direction 1 0 0 -/opnovice2/gun/optPhotonPolar -# -/analysis/h1/set 3 40 -1 39 -/analysis/h1/set 4 100 -1.1 1.1 -/analysis/h1/set 5 100 -1.1 1.1 -/analysis/h1/set 6 100 -1.1 1.1 -/analysis/h1/set 7 100 -1.1 1.1 -/analysis/h1/set 8 100 -1.1 1.1 -/analysis/h1/set 9 100 -1.1 1.1 -/analysis/h1/set 10 100 -1.1 1.1 -/analysis/h1/set 11 100 -1.1 1.1 -/analysis/h1/set 12 100 -1.1 1.1 -/run/beamOn 100000 + +========= Table of registered couples ============================ + +Index : 0 used in the geometry : Yes + Material : G4_AIR + Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um + Energy thresholds : gamma 990 eV e- 990 eV e+ 990 eV proton 70 keV + Region(s) which use this couple : + DefaultRegionForTheWorld + +Index : 1 used in the geometry : Yes + Material : G4_WATER + Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um + Energy thresholds : gamma 2.51944 keV e- 276.265 keV e+ 270.751 keV proton 70 keV + Region(s) which use this couple : + DefaultRegionForTheWorld + +================================================================== + G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. -### Run 0 start. -... open Root analysis file : opnovice2.root - done -G4WT2 > /gun/particle opticalphoton -G4WT3 > /gun/particle opticalphoton -G4WT0 > /gun/particle opticalphoton -G4WT1 > /gun/particle opticalphoton -G4WT1 > /gun/energy 3 eV -G4WT0 > /gun/energy 3 eV -G4WT3 > /gun/energy 3 eV -G4WT2 > /gun/energy 3 eV -G4WT2 > /gun/position 0 0 0 cm -G4WT3 > /gun/position 0 0 0 cm -G4WT1 > /gun/position 0 0 0 cm -G4WT0 > /gun/position 0 0 0 cm -G4WT2 > /gun/direction 1 0 0 -G4WT3 > /gun/direction 1 0 0 -G4WT0 > /gun/direction 1 0 0 -G4WT1 > /gun/direction 1 0 0 -G4WT2 > /opnovice2/gun/optPhotonPolar -G4WT1 > /opnovice2/gun/optPhotonPolar -G4WT0 > /opnovice2/gun/optPhotonPolar -G4WT3 > /opnovice2/gun/optPhotonPolar -G4WT1 > /analysis/h1/set 3 40 -1 39 -G4WT0 > /analysis/h1/set 3 40 -1 39 -G4WT2 > /analysis/h1/set 3 40 -1 39 -G4WT3 > /analysis/h1/set 3 40 -1 39 -G4WT3 > /analysis/h1/set 4 100 -1.1 1.1 -G4WT2 > /analysis/h1/set 4 100 -1.1 1.1 -G4WT1 > /analysis/h1/set 4 100 -1.1 1.1 -G4WT0 > /analysis/h1/set 4 100 -1.1 1.1 -G4WT3 > /analysis/h1/set 5 100 -1.1 1.1 -G4WT2 > /analysis/h1/set 5 100 -1.1 1.1 -G4WT1 > /analysis/h1/set 5 100 -1.1 1.1 -G4WT0 > /analysis/h1/set 5 100 -1.1 1.1 -G4WT3 > /analysis/h1/set 6 100 -1.1 1.1 -G4WT2 > /analysis/h1/set 6 100 -1.1 1.1 -G4WT1 > /analysis/h1/set 6 100 -1.1 1.1 -G4WT0 > /analysis/h1/set 6 100 -1.1 1.1 -G4WT3 > /analysis/h1/set 7 100 -1.1 1.1 -G4WT2 > /analysis/h1/set 7 100 -1.1 1.1 -G4WT1 > /analysis/h1/set 7 100 -1.1 1.1 -G4WT0 > /analysis/h1/set 7 100 -1.1 1.1 -G4WT3 > /analysis/h1/set 8 100 -1.1 1.1 -G4WT2 > /analysis/h1/set 8 100 -1.1 1.1 -G4WT1 > /analysis/h1/set 8 100 -1.1 1.1 -G4WT0 > /analysis/h1/set 8 100 -1.1 1.1 -G4WT3 > /analysis/h1/set 9 100 -1.1 1.1 -G4WT2 > /analysis/h1/set 9 100 -1.1 1.1 -G4WT1 > /analysis/h1/set 9 100 -1.1 1.1 -G4WT0 > /analysis/h1/set 9 100 -1.1 1.1 -G4WT3 > /analysis/h1/set 10 100 -1.1 1.1 -G4WT2 > /analysis/h1/set 10 100 -1.1 1.1 -G4WT1 > /analysis/h1/set 10 100 -1.1 1.1 -G4WT0 > /analysis/h1/set 10 100 -1.1 1.1 -G4WT3 > /analysis/h1/set 11 100 -1.1 1.1 -G4WT2 > /analysis/h1/set 11 100 -1.1 1.1 -G4WT1 > /analysis/h1/set 11 100 -1.1 1.1 -G4WT0 > /analysis/h1/set 11 100 -1.1 1.1 -G4WT3 > /analysis/h1/set 12 100 -1.1 1.1 -G4WT2 > /analysis/h1/set 12 100 -1.1 1.1 -G4WT1 > /analysis/h1/set 12 100 -1.1 1.1 -G4WT0 > /analysis/h1/set 12 100 -1.1 1.1 -G4WT1 > ### Run 0 start. -G4WT2 > ### Run 0 start. -G4WT0 > ### Run 0 start. -G4WT3 > ### Run 0 start. -G4WT0 > ... open Root analysis file : opnovice2_t0.root - done -G4WT1 > ... open Root analysis file : opnovice2_t1.root - done -G4WT2 > ... open Root analysis file : opnovice2_t2.root - done -G4WT3 > ... open Root analysis file : opnovice2_t3.root - done -G4WT1 > number of event = 24806 User=11.450000s Real=2.877324s Sys=0.000000s [Cpu=397.9%] -G4WT1 > ... merge Root all H1 : - done -G4WT2 > number of event = 24964 User=11.480000s Real=2.886789s Sys=0.000000s [Cpu=397.7%] -G4WT2 > ... merge Root all H1 : - done -G4WT0 > number of event = 25122 User=11.480000s Real=2.886979s Sys=0.000000s [Cpu=397.6%] -G4WT0 > ... merge Root all H1 : - done -G4WT3 > number of event = 25108 User=11.480000s Real=2.886261s Sys=0.000000s [Cpu=397.7%] -G4WT3 > ... merge Root all H1 : - done -G4WT2 > ... write Root file : opnovice2_t2.root - done -G4WT1 > ... write Root file : opnovice2_t1.root - done -G4WT0 > ... write Root file : opnovice2_t0.root - done -G4WT3 > ... write Root file : opnovice2_t3.root - done -G4WT2 > ... close Root file : opnovice2_t2.root - done -G4WT0 > ... close Root file : opnovice2_t0.root - done -G4WT1 > ... close Root file : opnovice2_t1.root - done -G4WT0 > ... delete Root empty file : opnovice2_t0.root - done -G4WT2 > ... delete Root empty file : opnovice2_t2.root - done -G4WT1 > ... delete Root empty file : opnovice2_t1.root - done -G4WT3 > ... close Root file : opnovice2_t3.root - done -G4WT3 > ... delete Root empty file : opnovice2_t3.root - done -number of event = 100000 User=11.510000s Real=2.923037s Sys=0.000000s [Cpu=393.8%] +### Run 0 starts. +... create file : opnovice2.root - done +... open analysis file : opnovice2.root - done + Run terminated. +Run Summary + Number of events processed : 100000 + User=1.080000s Real=1.166882s Sys=0.000000s Run Summary --------------------------------- Primary particle was: opticalphoton with energy 3 eV . +Number of events: 100000 Material of world: G4_AIR Material of tank: G4_WATER +Average number of photons absorbed by WLS per event: 0 +Average number of photons created by WLS per event: 0 +Average energy of WLS photons created per event: 0 eV. +Average number of photons absorbed by WLS2 per event: 0 +Average number of photons created by WLS2 per event: 0 +Average energy of WLS2 photons created per event: 0 eV. Average number of OpRayleigh per event: 0 -Average number of OpAbsorption per event: 0 +Average number of OpAbsorption per event: 0.0091 Surface events (on +X surface, maximum one per photon) this run: -# of primary particles: 100000 -OpAbsorption before surface: 74 -Total # of surface events: 99926 +# of primary particles: 1e+05 +OpAbsorption before surface: 76 +Total # of surface events: 99924 Unaccounted for: 0 Surface events by process: - Fresnel refraction: 45980 - Lambertian reflection: 49333 - Lobe reflection: 232 - Spike reflection: 501 - Backscattering: 2892 - Absorption: 988 - Sum: 99926 + Fresnel refraction: 45872 + Lambertian reflection: 49275 + Lobe reflection: 231 + Spike reflection: 578 + Backscattering: 2932 + Absorption: 1036 + Sum: 99924 Unaccounted for: 0 --------------------------------- -... write Root file : opnovice2.root - done -... close Root file : opnovice2.root - done + + Histogram statistics for the entire run: + + Scintillation time: mean = 0 ns rms = 0 ns. + WLS absorption spectrum: mean = 0 eV rms = 0 eV. + WLS emission spectrum: mean = 0 eV rms = 0 eV. + WLS emission time: mean = 0 ns rms = 0 ns. + WLS emission time: mean = 0 ns rms = 0 ns. + WLS2 emission spectrum: mean = 0 eV rms = 0 eV. + WLS2 emission time: mean = 0 ns rms = 0 ns. + X momentum dir of backward-going photons: mean = -0.684935 rms = 0.243225 + Y momentum dir of backward-going photons: mean = -0.00317783 rms = 0.486876 + +... write file : opnovice2.root - done +... close file : opnovice2.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... +G4 kernel has come to Quit state. +================== Deleting memory pools =================== +Number of memory pools allocated: 10 of which, static: 0 +Dynamic pools deleted: 10 / Total memory freed: 0.016 MB +============================================================ +RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/optical/OpNovice2/README b/examples/extended/optical/OpNovice2/README index f61a92b4db..1bc19f3f22 100644 --- a/examples/extended/optical/OpNovice2/README +++ b/examples/extended/optical/OpNovice2/README @@ -64,7 +64,7 @@ 5- HOW TO START ? - Execute OpNovice2 in 'batch' mode from macro files - % OpNovice2 surface.mac + % OpNovice2 electron.mac - Execute OpNovice2 in 'interactive mode' with visualization % OpNovice2 @@ -79,28 +79,36 @@ 7- HISTOGRAMS - OpNovice2 has several predefined 1D histograms : - 1 : Cerenkov spectrum - 2 : scintillation spectrum - 3 : boundary process status - 4 : X momentum dir of scattered photons with px < 0 - 5 : Y momentum dir of scattered photons with px < 0 - 6 : Z momentum dir of scattered photons with px < 0 - 7 : X momentum dir of scattered photons with px >= 0 - 8 : Y momentum dir of scattered photons with px >= 0 - 9 : Z momentum dir of scattered photons with px >= 0 - 10 : X momentum dir of Fresnel-refracted photons - 11 : Y momentum dir of Fresnel-refracted photons - 12 : Z momentum dir of Fresnel-refracted photons - 13 : creation time of scintillation photons + OpNovice2 has several predefined 1D histograms : + 1 : Cerenkov spectrum + 2 : scintillation spectrum + 3 : scintillation time (global time) + 4 : WLS absorption spectrum + 5 : WLS emission spectrum + 6 : WLS emission time + 7 : WLS2 absorption spectrum + 8 : WLS2 emission spectrum + 9 : WLS2 emission time + 10 : boundary process status + 11 : X momentum dir of scattered photons with px < 0 + 12 : Y momentum dir of scattered photons with px < 0 + 13 : Z momentum dir of scattered photons with px < 0 + 14 : X momentum dir of scattered photons with px >= 0 + 15 : Y momentum dir of scattered photons with px >= 0 + 16 : Z momentum dir of scattered photons with px >= 0 + 17 : X momentum dir of Fresnel-refracted photons + 18 : Y momentum dir of Fresnel-refracted photons + 19 : Z momentum dir of Fresnel-refracted photons + 20 : fraction of photons transmitted at surface + 21 : fraction of photons reflected at surface - Histograms 4-12 are recorded for photons scattered from the +X + Histograms 11-19 are recorded for photons scattered from the +X surface of the cube. Only the first interaction is recorded. The histograms are managed by G4Analysis classes. The histos can be individually activated with the command: - /analysis/h1/set id nbBins valMin valMax unit - where unit is the desired unit for the histo (MeV or keV, deg or mrad, etc..) + /analysis/h1/set id nbBins valMin valMax + The unit is hardcoded to be eV for energy and ns for time. One can control the name of the histograms file with the command: /analysis/setFileName name (default opnovice2) @@ -110,4 +118,20 @@ It is also possible to print selected histograms on an ascii file: /analysis/h1/setAscii id - All selected histos will be written on a file name.ascii (default opnovice2) + All selected histos will be written on a file name.ascii (default opnovice2) + + 8- MACROS + + Several macros are included. + boundary.mac: Set the surface to the various types and configurations of + model, type, etc., shoot optical photons, and record statistics + electron.mac: Shoot electrons and observe Cerenkov and scintillation radiation + fresnel.mac: Shoot optical photons of fixed polarization and random direction + at a surface, and plot reflectance/transmittance vs incident + angle. + OpNovice2.mac: Shoot an optical photon inside a box. + scint_by_particle.mac: Configure scintillation to have particle-specific + yields and yield ratios. Shoot different types of particles. + vis.mac: Configure visualization. + wls.mac: Configure two wavelength-shifting processes, and shoot optical + photons. diff --git a/examples/extended/optical/OpNovice2/boundary.mac b/examples/extended/optical/OpNovice2/boundary.mac new file mode 100644 index 0000000000..ff6e79b879 --- /dev/null +++ b/examples/extended/optical/OpNovice2/boundary.mac @@ -0,0 +1,211 @@ +/control/verbose 2 +/tracking/verbose 0 +/run/verbose 1 +/process/optical/verbose 1 +/control/cout/ignoreThreadsExcept 0 + +/opnovice2/boxProperty RINDEX 0.000002 1.3 0.000008 1.4 +/opnovice2/boxProperty ABSLENGTH 0.000002 1000000 0.000005 2000000 0.000008 3000000 + +/opnovice2/worldProperty RINDEX 0.000002 1.01 0.000008 1.01 +/opnovice2/worldProperty ABSLENGTH 0.000002 1000000 0.000005 2000000 0.000008 3000000 + +/opnovice2/surfaceProperty SPECULARLOBECONSTANT 0.000002 0.1 0.000008 0.1 +/opnovice2/surfaceProperty SPECULARSPIKECONSTANT 0.000002 0.1 0.000008 0.1 +/opnovice2/surfaceProperty BACKSCATTERCONSTANT 0.000002 0.1 0.000008 0.1 + +/opnovice2/surfaceProperty TRANSMITTANCE 0.000002 0.1 0.000008 0.1 +/opnovice2/surfaceProperty REFLECTIVITY 0.000002 0.8 0.000008 0.8 +/opnovice2/surfaceProperty EFFICIENCY 0.000002 0.1 0.000008 0.1 +/opnovice2/surfaceProperty RINDEX 0.000002 1.4 0.000008 1.5 + +/opnovice2/surfaceSigmaAlpha 0.2 + +/run/initialize +# +/gun/particle opticalphoton +/gun/energy 3 eV +/gun/position 0 0 0 cm +# will be normalized +/gun/direction .9 .44 0 +/opnovice2/gun/optPhotonPolar +# +/analysis/setFileName unified +/analysis/h1/set 10 40 -1 39 +/analysis/h1/set 11 100 -1.1 1.1 +/analysis/h1/set 12 100 -1.1 1.1 +/analysis/h1/set 13 100 -1.1 1.1 +/analysis/h1/set 14 100 -1.1 1.1 +/analysis/h1/set 15 100 -1.1 1.1 +/analysis/h1/set 16 100 -1.1 1.1 +/analysis/h1/set 17 100 -1.1 1.1 +/analysis/h1/set 18 100 -1.1 1.1 +/analysis/h1/set 19 100 -1.1 1.1 + + +############################################################################### +################################# UNIFIED ##################################### +############################################################################### + +/opnovice2/surfaceModel unified +/opnovice2/surfaceType dielectric_dielectric +# +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ground ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +/opnovice2/surfaceFinish ground +## unified, davis, lut use sigma_alpha; glisur uses polish +/run/beamOn 10000 +# restore default +#/opnovice2/surfaceSigmaAlpha 0.0 + +# +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ polished ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +/opnovice2/surfaceFinish polished + +/run/initialize +/run/beamOn 10000 + +/opnovice2/surfaceConstProperty SURFACEROUGHNESS 0.01 +/run/initialize +/run/beamOn 10000 +# restore default +/opnovice2/surfaceConstProperty SURFACEROUGHNESS 0.0 + +# +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ painted ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +/opnovice2/surfaceFinish polishedfrontpainted +/run/initialize +/run/beamOn 10000 + +/opnovice2/surfaceFinish groundfrontpainted +/run/initialize +/run/beamOn 10000 + +/opnovice2/surfaceFinish polishedbackpainted +/run/initialize +/run/beamOn 10000 + +/opnovice2/surfaceFinish groundbackpainted +/run/initialize +/run/beamOn 10000 + +# +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ dielectric_metal ~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# +/opnovice2/surfaceType dielectric_metal +/opnovice2/surfaceFinish polished + +/run/initialize +/run/beamOn 10000 + +/opnovice2/surfaceFinish ground + +/run/initialize +/run/beamOn 10000 + +############################################################################### +################################# GLISUR ###################################### +############################################################################### + +/opnovice2/surfaceModel glisur +/opnovice2/surfaceType dielectric_dielectric + +# +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ polished ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# + +/opnovice2/surfaceFinish polished + +/analysis/setFileName glisur +/run/initialize +/run/beamOn 10000 + +/opnovice2/surfaceConstProperty SURFACEROUGHNESS 0.01 +/run/initialize +/run/beamOn 10000 +/opnovice2/surfaceConstProperty SURFACEROUGHNESS 0.0 +# +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ ground ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# + + +/opnovice2/surfaceFinish ground +/run/initialize +/opnovice2/surfacePolish 0.2 +/run/beamOn 10000 +# restore default +/opnovice2/surfacePolish 1.0 + +# +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ painted ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# + +/opnovice2/surfaceFinish polishedfrontpainted +/run/initialize +/run/beamOn 10000 + +/opnovice2/surfaceFinish polishedbackpainted +/run/initialize +/run/beamOn 10000 + +/opnovice2/surfaceFinish groundfrontpainted +/run/initialize +/run/beamOn 10000 + +/opnovice2/surfaceFinish groundbackpainted +/opnovice2/surfacePolish 0.2 +/run/initialize +/run/beamOn 10000 +/opnovice2/surfacePolish 1.0 + +# +#~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ dielectric_metal ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ +# + +/opnovice2/surfaceType dielectric_metal +/opnovice2/surfaceFinish polished + +/run/initialize +/run/beamOn 10000 + +/opnovice2/surfaceFinish ground +/run/initialize +/opnovice2/surfacePolish 0.2 +/run/beamOn 10000 +/opnovice2/surfacePolish 1.0 + + +############################################################################### +################################# DAVIS LUT ################################### +############################################################################### + + +/opnovice2/surfaceModel DAVIS +/opnovice2/surfaceType dielectric_LUTDAVIS +/opnovice2/surfaceFinish RoughTeflon_LUT + +/run/initialize + +/analysis/setFileName davis_roughTeflon + +/run/beamOn 10000 + +/opnovice2/surfaceFinish Detector_LUT +/analysis/setFileName davis_detector +/run/beamOn 10000 + + +############################################################################### +################################# LUT (LBNL) ################################## +############################################################################### + +/opnovice2/surfaceModel LUT +/opnovice2/surfaceType dielectric_LUT + +/opnovice2/surfaceFinish polishedlumirrorair +/analysis/setFileName lbnl_polishedLumirrorAir +/run/beamOn 1000 + + diff --git a/examples/extended/optical/OpNovice2/electron.mac b/examples/extended/optical/OpNovice2/electron.mac index a3e49aa2e4..b0401d6b40 100644 --- a/examples/extended/optical/OpNovice2/electron.mac +++ b/examples/extended/optical/OpNovice2/electron.mac @@ -1,5 +1,7 @@ /control/verbose 2 /tracking/verbose 0 +/run/verbose 1 +/process/optical/verbose 1 /control/cout/ignoreThreadsExcept 0 /opnovice2/boxMaterial G4_BGO @@ -38,9 +40,6 @@ /opnovice2/surfaceProperty REFLECTIVITY 0.000002 0.8 0.000008 0.8 /opnovice2/surfaceProperty EFFICIENCY 0.000002 0.1 0.000008 0.1 - -/process/optical/verbose 0 - /process/optical/cerenkov/setMaxPhotons 3 /process/optical/cerenkov/setMaxBetaChange 10 @@ -53,15 +52,9 @@ /run/initialize /analysis/setFileName electron -/analysis/h1/set 1 100 0 10 -/analysis/h1/setXaxis 1 "Energy [eV]" -/analysis/h1/setYaxis 1 "Number of photons" -/analysis/h1/set 2 100 0 10 -/analysis/h1/setXaxis 2 "Energy [eV]" -/analysis/h1/setYaxis 2 "Number of photons" -/analysis/h1/set 3 400 0 200 -/analysis/h1/setXaxis 3 "Creation time [ns]" -/analysis/h1/setYaxis 3 "Number of photons" +/analysis/h1/set 1 100 0 10 # eV +/analysis/h1/set 2 100 0 10 # eV +/analysis/h1/set 3 400 0 200 # ns /gun/particle e- diff --git a/examples/extended/optical/OpNovice2/fresnel.mac b/examples/extended/optical/OpNovice2/fresnel.mac new file mode 100644 index 0000000000..1fd558de91 --- /dev/null +++ b/examples/extended/optical/OpNovice2/fresnel.mac @@ -0,0 +1,37 @@ +/control/verbose 2 +/tracking/verbose 0 +/run/verbose 1 +/process/optical/verbose 1 +/control/cout/ignoreThreadsExcept 0 + +/opnovice2/boxProperty RINDEX 0.000002 1.4 0.000008 1.41 +/opnovice2/boxProperty ABSLENGTH 0.000002 100 0.000005 200 0.000008 300 + +/opnovice2/worldProperty RINDEX 0.000002 1.01 0.000008 1.01 +/opnovice2/worldProperty ABSLENGTH 0.000002 1000000 0.000005 2000000 0.000008 3000000 + +/opnovice2/surfaceModel unified +/opnovice2/surfaceType dielectric_dielectric + +/opnovice2/surfaceFinish polished + +/opnovice2/surfaceProperty REFLECTIVITY 0.000002 1.0 0.000008 1.0 + +/run/initialize +# +/gun/particle opticalphoton +/gun/energy 5 eV +/gun/position 99.99 0 0 cm +/gun/direction 1 0 0 +/opnovice2/gun/optPhotonPolar 0. deg +/opnovice2/gun/randomDirection true +# +/analysis/setFileName fresnel_0 +/analysis/h1/set 20 90 0 90 # deg +/analysis/h1/set 21 90 0 90 # deg +/run/printProgress 100000 +/run/beamOn 500000 + +/analysis/setFileName fresnel_90 +/opnovice2/gun/optPhotonPolar 90. deg +/run/beamOn 500000 diff --git a/examples/extended/optical/OpNovice2/glisur.mac b/examples/extended/optical/OpNovice2/glisur.mac deleted file mode 100644 index e37811f169..0000000000 --- a/examples/extended/optical/OpNovice2/glisur.mac +++ /dev/null @@ -1,94 +0,0 @@ -/control/verbose 2 -/tracking/verbose 0 -/control/cout/ignoreThreadsExcept 0 - -/opnovice2/boxProperty RINDEX 0.000002 1.3 0.000008 1.4 -/opnovice2/boxProperty ABSLENGTH 0.000002 10000 0.000005 20000 0.000008 30000 - -/opnovice2/worldProperty RINDEX 0.000002 1.01 0.000008 1.01 -/opnovice2/worldProperty ABSLENGTH 0.000002 1000 0.000005 2000 0.000008 3000 - -/opnovice2/surfaceModel glisur -/opnovice2/surfaceType dielectric_dielectric - -/opnovice2/surfaceProperty SPECULARLOBECONSTANT 0.000002 0.1 0.000008 0.1 -/opnovice2/surfaceProperty SPECULARSPIKECONSTANT 0.000002 0.1 0.000008 0.1 -/opnovice2/surfaceProperty BACKSCATTERCONSTANT 0.000002 0.1 0.000008 0.1 - -/opnovice2/surfaceProperty TRANSMITTANCE 0.000002 0.1 0.000008 0.1 -/opnovice2/surfaceProperty REFLECTIVITY 0.000002 0.8 0.000008 0.8 -/opnovice2/surfaceProperty EFFICIENCY 0.000002 0.05 0.000008 0.05 - -/run/initialize -# -/gun/particle opticalphoton -/gun/energy 3 eV -/gun/position 0 0 0 cm -/gun/direction .9 0.1 0.1 -/opnovice2/gun/optPhotonPolar -# -/analysis/setFileName glisur -/analysis/h1/set 10 40 -1 39 -/analysis/h1/set 11 100 -1.1 1.1 -/analysis/h1/set 12 100 -1.1 1.1 -/analysis/h1/set 13 100 -1.1 1.1 -/analysis/h1/set 14 100 -1.1 1.1 -/analysis/h1/set 15 100 -1.1 1.1 -/analysis/h1/set 16 100 -1.1 1.1 -/analysis/h1/set 17 100 -1.1 1.1 -/analysis/h1/set 18 100 -1.1 1.1 -/analysis/h1/set 19 100 -1.1 1.1 - -############################# polished ######################################## - -/opnovice2/surfaceFinish polished - -/run/initialize -/run/beamOn 10000 - -/opnovice2/surfaceConstProperty SURFACEROUGHNESS 0.01 -/run/initialize -/run/beamOn 10000 -/opnovice2/surfaceConstProperty SURFACEROUGHNESS 0.0 - -############################# ground ########################################## - -/opnovice2/surfaceFinish ground -/run/initialize -/opnovice2/surfacePolish 0.2 -/run/beamOn 10000 -/opnovice2/surfacePolish 1.0 - -############################# painted ######################################### - -/opnovice2/surfaceFinish polishedfrontpainted -/run/initialize -/run/beamOn 10000 - -/opnovice2/surfaceFinish polishedbackpainted -/opnovice2/surfaceProperty RINDEX 0.000002 1.4 0.000008 1.5 -/run/initialize -/run/beamOn 10000 - -/opnovice2/surfaceFinish groundfrontpainted -/run/initialize -/run/beamOn 10000 - -/opnovice2/surfaceFinish groundbackpainted -/opnovice2/surfacePolish 0.2 -/run/initialize -/run/beamOn 10000 -/opnovice2/surfacePolish 1.0 - -############################# dielectric_metal ################################ - -/opnovice2/surfaceType dielectric_metal -/opnovice2/surfaceFinish polished - -/run/initialize -/run/beamOn 10000 - -/opnovice2/surfaceFinish ground -/run/initialize -/opnovice2/surfacePolish 0.2 -/run/beamOn 10000 diff --git a/examples/extended/optical/OpNovice2/include/ActionInitialization.hh b/examples/extended/optical/OpNovice2/include/ActionInitialization.hh index c11ace33a0..cd63cc407c 100644 --- a/examples/extended/optical/OpNovice2/include/ActionInitialization.hh +++ b/examples/extended/optical/OpNovice2/include/ActionInitialization.hh @@ -35,13 +35,12 @@ class ActionInitialization : public G4VUserActionInitialization { - public: - ActionInitialization(); - virtual ~ActionInitialization(); - - virtual void BuildForMaster() const; - virtual void Build() const; + public: + ActionInitialization(); + virtual ~ActionInitialization(); + virtual void BuildForMaster() const; + virtual void Build() const; }; #endif diff --git a/examples/extended/optical/OpNovice2/include/DetectorConstruction.hh b/examples/extended/optical/OpNovice2/include/DetectorConstruction.hh index 1a2f42b488..5052e15d04 100644 --- a/examples/extended/optical/OpNovice2/include/DetectorConstruction.hh +++ b/examples/extended/optical/OpNovice2/include/DetectorConstruction.hh @@ -34,12 +34,10 @@ #ifndef DetectorConstruction_h #define DetectorConstruction_h 1 -#include "G4OpticalSurface.hh" - #include "globals.hh" -#include "G4VUserDetectorConstruction.hh" +#include "G4OpticalSurface.hh" #include "G4RunManager.hh" - +#include "G4VUserDetectorConstruction.hh" class DetectorMessenger; @@ -47,83 +45,93 @@ class DetectorMessenger; class DetectorConstruction : public G4VUserDetectorConstruction { - public: - DetectorConstruction(); - virtual ~DetectorConstruction(); + public: + DetectorConstruction(); + virtual ~DetectorConstruction(); - G4VPhysicalVolume* GetTank() {return fTank;} - G4double GetTankXSize() {return fTank_x;} + G4VPhysicalVolume* GetTank() { return fTank; } + G4double GetTankXSize() { return fTank_x; } - G4OpticalSurface* GetSurface(void) {return fSurface;} + G4OpticalSurface* GetSurface(void) { return fSurface; } - void SetSurfaceFinish(const G4OpticalSurfaceFinish finish) { - fSurface->SetFinish(finish); - G4RunManager::GetRunManager()->GeometryHasBeenModified(); - } - G4OpticalSurfaceFinish GetSurfaceFinish(void) - {return fSurface->GetFinish();} + void SetSurfaceFinish(const G4OpticalSurfaceFinish finish) + { + fSurface->SetFinish(finish); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); + } + G4OpticalSurfaceFinish GetSurfaceFinish(void) + { + return fSurface->GetFinish(); + } - void SetSurfaceType(const G4SurfaceType type) { - fSurface->SetType(type); - G4RunManager::GetRunManager()->GeometryHasBeenModified(); - } + void SetSurfaceType(const G4SurfaceType type) + { + fSurface->SetType(type); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); + } - void SetSurfaceModel(const G4OpticalSurfaceModel model) { - fSurface->SetModel(model); - G4RunManager::GetRunManager()->GeometryHasBeenModified(); - } - G4OpticalSurfaceModel GetSurfaceModel(void) - {return fSurface->GetModel();} + void SetSurfaceModel(const G4OpticalSurfaceModel model) + { + fSurface->SetModel(model); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); + } + G4OpticalSurfaceModel GetSurfaceModel(void) { return fSurface->GetModel(); } - void SetSurfaceSigmaAlpha(G4double v); - void SetSurfacePolish(G4double v); + void SetSurfaceSigmaAlpha(G4double v); + void SetSurfacePolish(G4double v); - void AddTankMPV(const char* c, G4MaterialPropertyVector* mpv); - void AddTankMPC(const char* c, G4double v); - G4MaterialPropertiesTable* GetTankMaterialPropertiesTable() - {return fTankMPT;} + void AddTankMPV(const G4String& prop, G4MaterialPropertyVector* mpv); + void AddTankMPC(const G4String& prop, G4double v); + G4MaterialPropertiesTable* GetTankMaterialPropertiesTable() + { + return fTankMPT; + } - void AddWorldMPV(const char* c, G4MaterialPropertyVector* mpv); - void AddWorldMPC(const char* c, G4double v); - G4MaterialPropertiesTable* GetWorldMaterialPropertiesTable() - {return fWorldMPT;} + void AddWorldMPV(const G4String& prop, G4MaterialPropertyVector* mpv); + void AddWorldMPC(const G4String& prop, G4double v); + G4MaterialPropertiesTable* GetWorldMaterialPropertiesTable() + { + return fWorldMPT; + } - void AddSurfaceMPV(const char* c, G4MaterialPropertyVector* mpv); - void AddSurfaceMPC(const char* c, G4double v); - G4MaterialPropertiesTable* GetSurfaceMaterialPropertiesTable() - {return fSurfaceMPT;} + void AddSurfaceMPV(const G4String& prop, G4MaterialPropertyVector* mpv); + void AddSurfaceMPC(const G4String& prop, G4double v); + G4MaterialPropertiesTable* GetSurfaceMaterialPropertiesTable() + { + return fSurfaceMPT; + } - void SetWorldMaterial(const G4String&); - G4Material* GetWorldMaterial() const {return fWorldMaterial;} - void SetTankMaterial(const G4String&); - G4Material* GetTankMaterial() const {return fTankMaterial;} + void SetWorldMaterial(const G4String&); + G4Material* GetWorldMaterial() const { return fWorldMaterial; } + void SetTankMaterial(const G4String&); + G4Material* GetTankMaterial() const { return fTankMaterial; } - virtual G4VPhysicalVolume* Construct(); + virtual G4VPhysicalVolume* Construct(); - private: - G4double fExpHall_x; - G4double fExpHall_y; - G4double fExpHall_z; + private: + G4double fExpHall_x; + G4double fExpHall_y; + G4double fExpHall_z; - G4VPhysicalVolume* fTank; + G4VPhysicalVolume* fTank; - G4double fTank_x; - G4double fTank_y; - G4double fTank_z; + G4double fTank_x; + G4double fTank_y; + G4double fTank_z; - G4LogicalVolume* fWorld_LV; - G4LogicalVolume* fTank_LV; + G4LogicalVolume* fWorld_LV; + G4LogicalVolume* fTank_LV; - G4Material* fWorldMaterial; - G4Material* fTankMaterial; + G4Material* fWorldMaterial; + G4Material* fTankMaterial; - G4OpticalSurface* fSurface; + G4OpticalSurface* fSurface; - DetectorMessenger* fDetectorMessenger; + DetectorMessenger* fDetectorMessenger; - G4MaterialPropertiesTable* fTankMPT; - G4MaterialPropertiesTable* fWorldMPT; - G4MaterialPropertiesTable* fSurfaceMPT; + G4MaterialPropertiesTable* fTankMPT; + G4MaterialPropertiesTable* fWorldMPT; + G4MaterialPropertiesTable* fSurfaceMPT; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice2/include/DetectorMessenger.hh b/examples/extended/optical/OpNovice2/include/DetectorMessenger.hh index 5e7171525c..d486a36c47 100644 --- a/examples/extended/optical/OpNovice2/include/DetectorMessenger.hh +++ b/examples/extended/optical/OpNovice2/include/DetectorMessenger.hh @@ -47,43 +47,39 @@ class G4UIcmdWithoutParameter; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -class DetectorMessenger: public G4UImessenger +class DetectorMessenger : public G4UImessenger { - public: + public: + DetectorMessenger(DetectorConstruction*); + ~DetectorMessenger(); - DetectorMessenger(DetectorConstruction* ); - ~DetectorMessenger(); + virtual void SetNewValue(G4UIcommand*, G4String); - virtual void SetNewValue(G4UIcommand*, G4String); + private: + DetectorConstruction* fDetector; - private: + G4UIdirectory* fOpticalDir; - DetectorConstruction* fDetector; + // the surface + G4UIcmdWithAString* fSurfaceTypeCmd; + G4UIcmdWithAString* fSurfaceFinishCmd; + G4UIcmdWithAString* fSurfaceModelCmd; + G4UIcmdWithADouble* fSurfaceSigmaAlphaCmd; + G4UIcmdWithADouble* fSurfacePolishCmd; + G4UIcmdWithAString* fSurfaceMatPropVectorCmd; + G4UIcmdWithAString* fSurfaceMatPropConstCmd; - G4UIdirectory* fOpticalDir; - - // the surface - G4UIcmdWithAString* fSurfaceTypeCmd; - G4UIcmdWithAString* fSurfaceFinishCmd; - G4UIcmdWithAString* fSurfaceModelCmd; - G4UIcmdWithADouble* fSurfaceSigmaAlphaCmd; - G4UIcmdWithADouble* fSurfacePolishCmd; - G4UIcmdWithAString* fSurfaceMatPropVectorCmd; - G4UIcmdWithAString* fSurfaceMatPropConstCmd; - - // the box - G4UIcmdWithAString* fTankMatPropVectorCmd; - G4UIcmdWithAString* fTankMatPropConstCmd; - G4UIcmdWithAString* fTankMaterialCmd; - - // the world - G4UIcmdWithAString* fWorldMatPropVectorCmd; - G4UIcmdWithAString* fWorldMatPropConstCmd; - G4UIcmdWithAString* fWorldMaterialCmd; + // the box + G4UIcmdWithAString* fTankMatPropVectorCmd; + G4UIcmdWithAString* fTankMatPropConstCmd; + G4UIcmdWithAString* fTankMaterialCmd; + // the world + G4UIcmdWithAString* fWorldMatPropVectorCmd; + G4UIcmdWithAString* fWorldMatPropConstCmd; + G4UIcmdWithAString* fWorldMaterialCmd; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #endif - diff --git a/examples/extended/optical/OpNovice2/include/HistoManager.hh b/examples/extended/optical/OpNovice2/include/HistoManager.hh index d000b87f0a..d3ec036644 100644 --- a/examples/extended/optical/OpNovice2/include/HistoManager.hh +++ b/examples/extended/optical/OpNovice2/include/HistoManager.hh @@ -27,7 +27,7 @@ /// \brief Definition of the HistoManager class // // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -44,16 +44,15 @@ class HistoManager { - public: - HistoManager(); - ~HistoManager(); + public: + HistoManager(); + ~HistoManager(); - private: - void Book(); - G4String fFileName; + private: + void Book(); + G4String fFileName; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #endif - diff --git a/examples/extended/optical/OpNovice2/include/PrimaryGeneratorAction.hh b/examples/extended/optical/OpNovice2/include/PrimaryGeneratorAction.hh index a4a2368476..a7158e85c6 100644 --- a/examples/extended/optical/OpNovice2/include/PrimaryGeneratorAction.hh +++ b/examples/extended/optical/OpNovice2/include/PrimaryGeneratorAction.hh @@ -29,14 +29,13 @@ // // //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #ifndef PrimaryGeneratorAction_h #define PrimaryGeneratorAction_h 1 -#include "G4VUserPrimaryGeneratorAction.hh" -#include "G4ParticleGun.hh" #include "globals.hh" +#include "G4ParticleGun.hh" +#include "G4VUserPrimaryGeneratorAction.hh" class G4Event; class PrimaryGeneratorMessenger; @@ -45,20 +44,26 @@ class PrimaryGeneratorMessenger; class PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction { - public: - PrimaryGeneratorAction(); - virtual ~PrimaryGeneratorAction(); + public: + PrimaryGeneratorAction(); + virtual ~PrimaryGeneratorAction(); - virtual void GeneratePrimaries(G4Event*); + virtual void GeneratePrimaries(G4Event*); - G4ParticleGun* GetParticleGun() {return fParticleGun;}; + G4ParticleGun* GetParticleGun() { return fParticleGun; }; - void SetOptPhotonPolar(); - void SetOptPhotonPolar(G4double); + void SetOptPhotonPolar(); + void SetOptPhotonPolar(G4double); + void SetRandomDirection(G4bool val = true); + G4bool GetPolarized() { return fPolarized; }; + G4double GetPolarization() { return fPolarization; } - private: - G4ParticleGun* fParticleGun; - PrimaryGeneratorMessenger* fGunMessenger; + private: + G4ParticleGun* fParticleGun; + PrimaryGeneratorMessenger* fGunMessenger; + G4bool fRandomDirection; + G4bool fPolarized; + G4double fPolarization; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice2/include/PrimaryGeneratorMessenger.hh b/examples/extended/optical/OpNovice2/include/PrimaryGeneratorMessenger.hh index da00a6392c..9dc9175c26 100644 --- a/examples/extended/optical/OpNovice2/include/PrimaryGeneratorMessenger.hh +++ b/examples/extended/optical/OpNovice2/include/PrimaryGeneratorMessenger.hh @@ -28,7 +28,7 @@ // // // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -36,27 +36,29 @@ #ifndef PrimaryGeneratorMessenger_h #define PrimaryGeneratorMessenger_h 1 -#include "G4UImessenger.hh" #include "globals.hh" +#include "G4UImessenger.hh" class PrimaryGeneratorAction; class G4UIdirectory; class G4UIcmdWithADoubleAndUnit; +class G4UIcmdWithABool; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -class PrimaryGeneratorMessenger: public G4UImessenger +class PrimaryGeneratorMessenger : public G4UImessenger { - public: - PrimaryGeneratorMessenger(PrimaryGeneratorAction* ); - virtual ~PrimaryGeneratorMessenger(); - - virtual void SetNewValue(G4UIcommand*, G4String); - - private: - PrimaryGeneratorAction* fPrimaryAction; - G4UIdirectory* fGunDir; - G4UIcmdWithADoubleAndUnit* fPolarCmd; + public: + PrimaryGeneratorMessenger(PrimaryGeneratorAction*); + virtual ~PrimaryGeneratorMessenger(); + + virtual void SetNewValue(G4UIcommand*, G4String); + + private: + PrimaryGeneratorAction* fPrimaryAction; + G4UIdirectory* fGunDir; + G4UIcmdWithADoubleAndUnit* fPolarCmd; + G4UIcmdWithABool* fRandomDirectionCmd; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice2/include/Run.hh b/examples/extended/optical/OpNovice2/include/Run.hh index c217223343..51b7151cdb 100644 --- a/examples/extended/optical/OpNovice2/include/Run.hh +++ b/examples/extended/optical/OpNovice2/include/Run.hh @@ -29,7 +29,6 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - #ifndef Run_h #define Run_h 1 @@ -41,145 +40,194 @@ class G4ParticleDefinition; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... class Run : public G4Run { - public: - Run(); - ~Run(); + public: + Run(); + ~Run(); - void SetPrimary(G4ParticleDefinition* particle, G4double energy); + void SetPrimary(G4ParticleDefinition* particle, G4double energy, + G4bool polarized, G4double polarization); - // particle energy - void AddCerenkovEnergy(G4double en) {fCerenkovEnergy += en;} - void AddScintillationEnergy(G4double en) {fScintEnergy += en;} - void AddWLSAbsorptionEnergy(G4double en) {fWLSAbsorptionEnergy += en;} - void AddWLSEmissionEnergy(G4double en) {fWLSEmissionEnergy += en;} - void AddWLS2AbsorptionEnergy(G4double en) {fWLS2AbsorptionEnergy += en;} - void AddWLS2EmissionEnergy(G4double en) {fWLS2EmissionEnergy += en;} + // particle energy + void AddCerenkovEnergy(G4double en) { fCerenkovEnergy += en; } + void AddScintillationEnergy(G4double en) { fScintEnergy += en; } + void AddWLSAbsorptionEnergy(G4double en) { fWLSAbsorptionEnergy += en; } + void AddWLSEmissionEnergy(G4double en) { fWLSEmissionEnergy += en; } + void AddWLS2AbsorptionEnergy(G4double en) { fWLS2AbsorptionEnergy += en; } + void AddWLS2EmissionEnergy(G4double en) { fWLS2EmissionEnergy += en; } - // number of particles - void AddCerenkov(void) {fCerenkovCount += 1;} - void AddScintillation(void) {fScintCount += 1;} - void AddRayleigh(void) {fRayleighCount += 1;} - void AddWLSAbsorption(void) {fWLSAbsorptionCount += 1;} - void AddWLSEmission(void) {fWLSEmissionCount += 1;} - void AddWLS2Absorption(void) {fWLS2AbsorptionCount += 1;} - void AddWLS2Emission(void) {fWLS2EmissionCount += 1;} - - void AddOpAbsorption(void) {fOpAbsorption += 1;} - void AddOpAbsorptionPrior(void) {fOpAbsorptionPrior += 1;} + // number of particles + void AddCerenkov(void) { fCerenkovCount += 1; } + void AddScintillation(void) { fScintCount += 1; } + void AddRayleigh(void) { fRayleighCount += 1; } + void AddWLSAbsorption(void) { fWLSAbsorptionCount += 1; } + void AddWLSEmission(void) { fWLSEmissionCount += 1; } + void AddWLS2Absorption(void) { fWLS2AbsorptionCount += 1; } + void AddWLS2Emission(void) { fWLS2EmissionCount += 1; } - void AddFresnelRefraction(void) { - fBoundaryProcs[FresnelRefraction] += 1; - } - void AddFresnelReflection(void) { - fBoundaryProcs[FresnelReflection] += 1; - } - void AddTransmission(void) {fBoundaryProcs[Transmission] += 1;} - void AddTotalInternalReflection(void) - {fBoundaryProcs[TotalInternalReflection] += 1;} - void AddLambertianReflection(void) - {fBoundaryProcs[LambertianReflection] += 1;} - void AddLobeReflection(void) {fBoundaryProcs[LobeReflection] += 1;} - void AddSpikeReflection(void) {fBoundaryProcs[SpikeReflection] += 1;} - void AddBackScattering(void) {fBoundaryProcs[BackScattering] += 1;} - void AddAbsorption(void) {fBoundaryProcs[Absorption] += 1;} - void AddDetection(void) {fBoundaryProcs[Detection] += 1;} - void AddNotAtBoundary(void) {fBoundaryProcs[NotAtBoundary] += 1;} - void AddSameMaterial(void) {fBoundaryProcs[SameMaterial] += 1;} - void AddStepTooSmall(void) {fBoundaryProcs[StepTooSmall] += 1;} - void AddNoRINDEX(void) {fBoundaryProcs[NoRINDEX] += 1;} + void AddOpAbsorption(void) { fOpAbsorption += 1; } + void AddOpAbsorptionPrior(void) { fOpAbsorptionPrior += 1; } - void AddTotalSurface(void) {fTotalSurface += 1;} - void AddPolishedLumirrorAirReflection(void) - {fBoundaryProcs[PolishedLumirrorAirReflection] += 1;} - void AddPolishedLumirrorGlueReflection(void) - {fBoundaryProcs[PolishedLumirrorGlueReflection] += 1;} - void AddPolishedAirReflection(void) - {fBoundaryProcs[PolishedAirReflection] += 1;} - void AddPolishedTeflonAirReflection(void) - {fBoundaryProcs[PolishedTeflonAirReflection] += 1;} - void AddPolishedTiOAirReflection(void) - {fBoundaryProcs[PolishedTiOAirReflection] += 1;} - void AddPolishedTyvekAirReflection(void) - {fBoundaryProcs[PolishedTyvekAirReflection] += 1;} - void AddPolishedVM2000AirReflection(void) - {fBoundaryProcs[PolishedVM2000AirReflection] += 1;} - void AddPolishedVM2000GlueReflection(void) - {fBoundaryProcs[PolishedVM2000GlueReflection] += 1;} + void AddFresnelRefraction(void) { fBoundaryProcs[FresnelRefraction] += 1; } + void AddFresnelReflection(void) { fBoundaryProcs[FresnelReflection] += 1; } + void AddTransmission(void) { fBoundaryProcs[Transmission] += 1; } + void AddTotalInternalReflection(void) + { + fBoundaryProcs[TotalInternalReflection] += 1; + } + void AddLambertianReflection(void) + { + fBoundaryProcs[LambertianReflection] += 1; + } + void AddLobeReflection(void) { fBoundaryProcs[LobeReflection] += 1; } + void AddSpikeReflection(void) { fBoundaryProcs[SpikeReflection] += 1; } + void AddBackScattering(void) { fBoundaryProcs[BackScattering] += 1; } + void AddAbsorption(void) { fBoundaryProcs[Absorption] += 1; } + void AddDetection(void) { fBoundaryProcs[Detection] += 1; } + void AddNotAtBoundary(void) { fBoundaryProcs[NotAtBoundary] += 1; } + void AddSameMaterial(void) { fBoundaryProcs[SameMaterial] += 1; } + void AddStepTooSmall(void) { fBoundaryProcs[StepTooSmall] += 1; } + void AddNoRINDEX(void) { fBoundaryProcs[NoRINDEX] += 1; } - void AddEtchedLumirrorAirReflection(void) - {fBoundaryProcs[EtchedLumirrorAirReflection] += 1;} - void AddEtchedLumirrorGlueReflection(void) - {fBoundaryProcs[EtchedLumirrorGlueReflection] += 1;} - void AddEtchedAirReflection(void) - {fBoundaryProcs[EtchedAirReflection] += 1;} - void AddEtchedTeflonAirReflection(void) - {fBoundaryProcs[EtchedTeflonAirReflection] += 1;} - void AddEtchedTiOAirReflection(void) - {fBoundaryProcs[EtchedTiOAirReflection] += 1;} - void AddEtchedTyvekAirReflection(void) - {fBoundaryProcs[EtchedTyvekAirReflection] += 1;} - void AddEtchedVM2000AirReflection(void) - {fBoundaryProcs[EtchedVM2000AirReflection] += 1;} - void AddEtchedVM2000GlueReflection(void) - {fBoundaryProcs[EtchedVM2000GlueReflection] += 1;} + void AddTotalSurface(void) { fTotalSurface += 1; } + void AddPolishedLumirrorAirReflection(void) + { + fBoundaryProcs[PolishedLumirrorAirReflection] += 1; + } + void AddPolishedLumirrorGlueReflection(void) + { + fBoundaryProcs[PolishedLumirrorGlueReflection] += 1; + } + void AddPolishedAirReflection(void) + { + fBoundaryProcs[PolishedAirReflection] += 1; + } + void AddPolishedTeflonAirReflection(void) + { + fBoundaryProcs[PolishedTeflonAirReflection] += 1; + } + void AddPolishedTiOAirReflection(void) + { + fBoundaryProcs[PolishedTiOAirReflection] += 1; + } + void AddPolishedTyvekAirReflection(void) + { + fBoundaryProcs[PolishedTyvekAirReflection] += 1; + } + void AddPolishedVM2000AirReflection(void) + { + fBoundaryProcs[PolishedVM2000AirReflection] += 1; + } + void AddPolishedVM2000GlueReflection(void) + { + fBoundaryProcs[PolishedVM2000GlueReflection] += 1; + } - void AddGroundLumirrorAirReflection(void) - {fBoundaryProcs[GroundLumirrorAirReflection] += 1;} - void AddGroundLumirrorGlueReflection(void) - {fBoundaryProcs[GroundLumirrorGlueReflection] += 1;} - void AddGroundAirReflection(void) - {fBoundaryProcs[GroundAirReflection] += 1;} - void AddGroundTeflonAirReflection(void) - {fBoundaryProcs[GroundTeflonAirReflection] += 1;} - void AddGroundTiOAirReflection(void) - {fBoundaryProcs[GroundTiOAirReflection] += 1;} - void AddGroundTyvekAirReflection(void) - {fBoundaryProcs[GroundTyvekAirReflection] += 1;} - void AddGroundVM2000AirReflection(void) - {fBoundaryProcs[GroundVM2000AirReflection] += 1;} - void AddGroundVM2000GlueReflection(void) - {fBoundaryProcs[GroundVM2000GlueReflection] += 1;} + void AddEtchedLumirrorAirReflection(void) + { + fBoundaryProcs[EtchedLumirrorAirReflection] += 1; + } + void AddEtchedLumirrorGlueReflection(void) + { + fBoundaryProcs[EtchedLumirrorGlueReflection] += 1; + } + void AddEtchedAirReflection(void) + { + fBoundaryProcs[EtchedAirReflection] += 1; + } + void AddEtchedTeflonAirReflection(void) + { + fBoundaryProcs[EtchedTeflonAirReflection] += 1; + } + void AddEtchedTiOAirReflection(void) + { + fBoundaryProcs[EtchedTiOAirReflection] += 1; + } + void AddEtchedTyvekAirReflection(void) + { + fBoundaryProcs[EtchedTyvekAirReflection] += 1; + } + void AddEtchedVM2000AirReflection(void) + { + fBoundaryProcs[EtchedVM2000AirReflection] += 1; + } + void AddEtchedVM2000GlueReflection(void) + { + fBoundaryProcs[EtchedVM2000GlueReflection] += 1; + } - void AddDichroic(void) {fBoundaryProcs[Dichroic] += 1;} + void AddGroundLumirrorAirReflection(void) + { + fBoundaryProcs[GroundLumirrorAirReflection] += 1; + } + void AddGroundLumirrorGlueReflection(void) + { + fBoundaryProcs[GroundLumirrorGlueReflection] += 1; + } + void AddGroundAirReflection(void) + { + fBoundaryProcs[GroundAirReflection] += 1; + } + void AddGroundTeflonAirReflection(void) + { + fBoundaryProcs[GroundTeflonAirReflection] += 1; + } + void AddGroundTiOAirReflection(void) + { + fBoundaryProcs[GroundTiOAirReflection] += 1; + } + void AddGroundTyvekAirReflection(void) + { + fBoundaryProcs[GroundTyvekAirReflection] += 1; + } + void AddGroundVM2000AirReflection(void) + { + fBoundaryProcs[GroundVM2000AirReflection] += 1; + } + void AddGroundVM2000GlueReflection(void) + { + fBoundaryProcs[GroundVM2000GlueReflection] += 1; + } - virtual void Merge(const G4Run*); + void AddDichroic(void) { fBoundaryProcs[Dichroic] += 1; } - void EndOfRun(); + virtual void Merge(const G4Run*); - private: - // primary particle - G4ParticleDefinition* fParticle; - G4double fEkin; + void EndOfRun(); - G4double fCerenkovEnergy; - G4double fScintEnergy; - G4double fWLSAbsorptionEnergy; - G4double fWLSEmissionEnergy; - G4double fWLS2AbsorptionEnergy; - G4double fWLS2EmissionEnergy; + private: + // primary particle + G4ParticleDefinition* fParticle; + G4double fEkin; + G4bool fPolarized; + G4double fPolarization; - // number of particles - G4int fCerenkovCount; - G4int fScintCount; - G4int fWLSAbsorptionCount; - G4int fWLSEmissionCount; - G4int fWLS2AbsorptionCount; - G4int fWLS2EmissionCount; - // number of events - G4int fRayleighCount; - - // non-boundary processes - G4int fOpAbsorption; + G4double fCerenkovEnergy; + G4double fScintEnergy; + G4double fWLSAbsorptionEnergy; + G4double fWLSEmissionEnergy; + G4double fWLS2AbsorptionEnergy; + G4double fWLS2EmissionEnergy; - // prior to boundary: - G4int fOpAbsorptionPrior; + // number of particles + G4int fCerenkovCount; + G4int fScintCount; + G4int fWLSAbsorptionCount; + G4int fWLSEmissionCount; + G4int fWLS2AbsorptionCount; + G4int fWLS2EmissionCount; + // number of events + G4int fRayleighCount; - // boundary proc - std::vector fBoundaryProcs; + // non-boundary processes + G4int fOpAbsorption; - G4int fTotalSurface; + // prior to boundary: + G4int fOpAbsorptionPrior; + // boundary proc + std::vector fBoundaryProcs; + + G4int fTotalSurface; }; - #endif /* Run_h */ diff --git a/examples/extended/optical/OpNovice2/include/RunAction.hh b/examples/extended/optical/OpNovice2/include/RunAction.hh index f18596e854..3861407ead 100644 --- a/examples/extended/optical/OpNovice2/include/RunAction.hh +++ b/examples/extended/optical/OpNovice2/include/RunAction.hh @@ -27,7 +27,7 @@ /// \brief Definition of the RunAction class // // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -36,31 +36,27 @@ #include "globals.hh" #include "G4UserRunAction.hh" -// #include "Run.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -class G4Timer; class Run; class HistoManager; class PrimaryGeneratorAction; class RunAction : public G4UserRunAction { - public: - RunAction(PrimaryGeneratorAction* = nullptr); - virtual ~RunAction(); + public: + RunAction(PrimaryGeneratorAction* = nullptr); + virtual ~RunAction(); + virtual G4Run* GenerateRun(); + virtual void BeginOfRunAction(const G4Run*); + virtual void EndOfRunAction(const G4Run*); - virtual G4Run* GenerateRun(); - virtual void BeginOfRunAction(const G4Run*); - virtual void EndOfRunAction(const G4Run*); - - private: - G4Timer* fTimer; - Run* fRun; - HistoManager* fHistoManager; - PrimaryGeneratorAction* fPrimary; + private: + Run* fRun; + HistoManager* fHistoManager; + PrimaryGeneratorAction* fPrimary; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice2/include/SteppingAction.hh b/examples/extended/optical/OpNovice2/include/SteppingAction.hh index 16a4085517..3ff2de3517 100644 --- a/examples/extended/optical/OpNovice2/include/SteppingAction.hh +++ b/examples/extended/optical/OpNovice2/include/SteppingAction.hh @@ -32,21 +32,20 @@ #ifndef SteppingAction_h #define SteppingAction_h 1 -#include "G4UserSteppingAction.hh" #include "globals.hh" - +#include "G4UserSteppingAction.hh" class SteppingAction : public G4UserSteppingAction { - public: - SteppingAction(); - virtual ~SteppingAction(); + public: + SteppingAction(); + virtual ~SteppingAction(); - // method from the base class - virtual void UserSteppingAction(const G4Step*); + // method from the base class + virtual void UserSteppingAction(const G4Step*); - private: - G4int fVerbose; + private: + G4int fVerbose; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice2/include/TrackInformation.hh b/examples/extended/optical/OpNovice2/include/TrackInformation.hh index 1824edc536..c916947f2d 100644 --- a/examples/extended/optical/OpNovice2/include/TrackInformation.hh +++ b/examples/extended/optical/OpNovice2/include/TrackInformation.hh @@ -33,48 +33,47 @@ #define TrackInformation_h 1 #include "globals.hh" -#include "G4ThreeVector.hh" -#include "G4ParticleDefinition.hh" -#include "G4Track.hh" #include "G4Allocator.hh" #include "G4VUserTrackInformation.hh" -class TrackInformation : public G4VUserTrackInformation +class G4Track; + +class TrackInformation : public G4VUserTrackInformation { -public: + public: TrackInformation(); TrackInformation(const G4Track* aTrack); TrackInformation(const TrackInformation* aTrackInfo); virtual ~TrackInformation(); - - inline void *operator new(size_t); - inline void operator delete(void *aTrackInfo); - TrackInformation& operator =(const TrackInformation& right); - + inline void* operator new(size_t); + inline void operator delete(void* aTrackInfo); + + TrackInformation& operator=(const TrackInformation& right); + void SetSourceTrackInformation(const G4Track* aTrack); virtual void Print() const; -public: - inline G4bool GetIsFirstTankX() const {return fFirstTankX;} - inline void SetIsFirstTankX(G4bool b) {fFirstTankX = b;} + public: + inline G4bool GetIsFirstTankX() const { return fFirstTankX; } + inline void SetIsFirstTankX(G4bool b) { fFirstTankX = b; } -private: - G4bool fFirstTankX; + private: + G4bool fFirstTankX; }; -extern G4ThreadLocal - G4Allocator * aTrackInformationAllocator; +extern G4ThreadLocal G4Allocator* aTrackInformationAllocator; inline void* TrackInformation::operator new(size_t) { if(!aTrackInformationAllocator) aTrackInformationAllocator = new G4Allocator; - return (void*)aTrackInformationAllocator->MallocSingle(); + return (void*) aTrackInformationAllocator->MallocSingle(); } -inline void TrackInformation::operator delete(void *aTrackInfo) -{ aTrackInformationAllocator->FreeSingle((TrackInformation*)aTrackInfo);} +inline void TrackInformation::operator delete(void* aTrackInfo) +{ + aTrackInformationAllocator->FreeSingle((TrackInformation*) aTrackInfo); +} #endif - diff --git a/examples/extended/optical/OpNovice2/include/TrackingAction.hh b/examples/extended/optical/OpNovice2/include/TrackingAction.hh index 4fd0e5574d..8398af6537 100644 --- a/examples/extended/optical/OpNovice2/include/TrackingAction.hh +++ b/examples/extended/optical/OpNovice2/include/TrackingAction.hh @@ -26,7 +26,7 @@ /// \file optical/OpNovice2/include/TrackingAction.hh /// \brief Definition of the TrackingAction class // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... // @@ -35,15 +35,14 @@ #include "G4UserTrackingAction.hh" -class TrackingAction : public G4UserTrackingAction +class TrackingAction : public G4UserTrackingAction { -public: + public: TrackingAction(); virtual ~TrackingAction(){}; - + virtual void PreUserTrackingAction(const G4Track*); virtual void PostUserTrackingAction(const G4Track*); - }; #endif diff --git a/examples/extended/optical/OpNovice2/scint_by_particle.mac b/examples/extended/optical/OpNovice2/scint_by_particle.mac index afeb9604f7..65d3161e67 100644 --- a/examples/extended/optical/OpNovice2/scint_by_particle.mac +++ b/examples/extended/optical/OpNovice2/scint_by_particle.mac @@ -1,5 +1,7 @@ /control/verbose 2 /tracking/verbose 0 +/process/optical/verbose 1 +/run/verbose 1 /control/cout/ignoreThreadsExcept 0 /opnovice2/boxMaterial G4_BGO @@ -36,6 +38,9 @@ /opnovice2/worldProperty RINDEX 0.000002 1.01 0.000008 1.01 /opnovice2/worldProperty ABSLENGTH 0.000002 100 0.000005 100 0.000008 100 +## no scintillation in the world, but we want to exercise +## this macro command +/opnovice2/worldConstProperty SCINTILLATIONTIMECONSTANT1 1 /process/optical/processActivation Cerenkov false /process/optical/processActivation OpAbsorption true @@ -45,8 +50,6 @@ /process/optical/processActivation OpMieHG false /process/optical/processActivation OpWLS false -/process/optical/verbose 0 - /process/optical/scintillation/setEnhancedTimeConstants true /process/optical/scintillation/setYieldFactor 10 #/process/optical/scintillation/setExcitationRatio .5 @@ -62,12 +65,8 @@ /process/optical/scintillation/verbose 0 /analysis/setFileName scint_by_particle -/analysis/h1/set 2 100 0 10 -/analysis/h1/setXaxis 2 "Energy [eV]" -/analysis/h1/setYaxis 2 "Number of photons" -/analysis/h1/set 3 400 0 200 -/analysis/h1/setXaxis 3 "Creation time [ns]" -/analysis/h1/setYaxis 3 "Number of photons" +/analysis/h1/set 2 100 0 10 # eV +/analysis/h1/set 3 400 0 200 # ns # /gun/particle e- diff --git a/examples/extended/optical/OpNovice2/src/ActionInitialization.cc b/examples/extended/optical/OpNovice2/src/ActionInitialization.cc index 337191b03a..3b88fe3f40 100644 --- a/examples/extended/optical/OpNovice2/src/ActionInitialization.cc +++ b/examples/extended/optical/OpNovice2/src/ActionInitialization.cc @@ -28,6 +28,7 @@ /// \brief Implementation of the ActionInitialization class #include "ActionInitialization.hh" + #include "PrimaryGeneratorAction.hh" #include "RunAction.hh" #include "SteppingAction.hh" @@ -36,13 +37,12 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... ActionInitialization::ActionInitialization() - : G4VUserActionInitialization() + : G4VUserActionInitialization() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -ActionInitialization::~ActionInitialization() -{} +ActionInitialization::~ActionInitialization() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -63,4 +63,3 @@ void ActionInitialization::Build() const } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - diff --git a/examples/extended/optical/OpNovice2/src/DetectorConstruction.cc b/examples/extended/optical/OpNovice2/src/DetectorConstruction.cc index a27b0a29cf..c01f931a64 100644 --- a/examples/extended/optical/OpNovice2/src/DetectorConstruction.cc +++ b/examples/extended/optical/OpNovice2/src/DetectorConstruction.cc @@ -32,6 +32,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #include "DetectorConstruction.hh" + #include "DetectorMessenger.hh" #include "G4NistManager.hh" @@ -49,11 +50,11 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... DetectorConstruction::DetectorConstruction() - : G4VUserDetectorConstruction(), - fDetectorMessenger(nullptr) + : G4VUserDetectorConstruction() + , fDetectorMessenger(nullptr) { - fExpHall_x = fExpHall_y = fExpHall_z = 10.0*m; - fTank_x = fTank_y = fTank_z = 1.0*m; + fExpHall_x = fExpHall_y = fExpHall_z = 10.0 * m; + fTank_x = fTank_y = fTank_z = 1.0 * m; fTank = nullptr; @@ -78,8 +79,11 @@ DetectorConstruction::DetectorConstruction() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -DetectorConstruction::~DetectorConstruction() -{ +DetectorConstruction::~DetectorConstruction() { + delete fTankMPT; + delete fWorldMPT; + delete fSurfaceMPT; + delete fSurface; delete fDetectorMessenger; } @@ -88,7 +92,7 @@ DetectorConstruction::~DetectorConstruction() G4VPhysicalVolume* DetectorConstruction::Construct() { fTankMaterial->SetMaterialPropertiesTable(fTankMPT); - fTankMaterial->GetIonisation()->SetBirksConstant(0.126*mm/MeV); + fTankMaterial->GetIonisation()->SetBirksConstant(0.126 * mm / MeV); fWorldMaterial->SetMaterialPropertiesTable(fWorldMPT); @@ -96,39 +100,39 @@ G4VPhysicalVolume* DetectorConstruction::Construct() // The experimental Hall G4Box* world_box = new G4Box("World", fExpHall_x, fExpHall_y, fExpHall_z); - fWorld_LV - = new G4LogicalVolume(world_box, fWorldMaterial, "World", 0, 0, 0); + fWorld_LV = new G4LogicalVolume(world_box, fWorldMaterial, "World", 0, 0, 0); - G4VPhysicalVolume* world_PV - = new G4PVPlacement(0, G4ThreeVector(), fWorld_LV, "World", 0, false, 0); + G4VPhysicalVolume* world_PV = + new G4PVPlacement(0, G4ThreeVector(), fWorld_LV, "World", 0, false, 0); // The tank G4Box* tank_box = new G4Box("Tank", fTank_x, fTank_y, fTank_z); - fTank_LV - = new G4LogicalVolume(tank_box, fTankMaterial, "Tank", 0, 0, 0); + fTank_LV = new G4LogicalVolume(tank_box, fTankMaterial, "Tank", 0, 0, 0); - fTank - = new G4PVPlacement(0, G4ThreeVector(), fTank_LV, "Tank", - fWorld_LV, false, 0); + fTank = new G4PVPlacement(0, G4ThreeVector(), fTank_LV, "Tank", fWorld_LV, + false, 0); // ------------- Surface -------------- G4LogicalBorderSurface* surface = - new G4LogicalBorderSurface("Surface", - fTank, world_PV, fSurface); + new G4LogicalBorderSurface("Surface", fTank, world_PV, fSurface); - G4OpticalSurface* opticalSurface = dynamic_cast - (surface->GetSurface(fTank,world_PV)->GetSurfaceProperty()); + G4OpticalSurface* opticalSurface = dynamic_cast( + surface->GetSurface(fTank, world_PV)->GetSurfaceProperty()); G4cout << "****** opticalSurface->DumpInfo:" << G4endl; - if (opticalSurface) { opticalSurface->DumpInfo(); } + if(opticalSurface) + { + opticalSurface->DumpInfo(); + } G4cout << "****** end of opticalSurface->DumpInfo" << G4endl; return world_PV; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void DetectorConstruction::SetSurfaceSigmaAlpha(G4double v) { +void DetectorConstruction::SetSurfaceSigmaAlpha(G4double v) +{ fSurface->SetSigmaAlpha(v); G4RunManager::GetRunManager()->GeometryHasBeenModified(); @@ -137,91 +141,101 @@ void DetectorConstruction::SetSurfaceSigmaAlpha(G4double v) { } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void DetectorConstruction::SetSurfacePolish(G4double v) { +void DetectorConstruction::SetSurfacePolish(G4double v) +{ fSurface->SetPolish(v); G4RunManager::GetRunManager()->GeometryHasBeenModified(); - G4cout << "Surface polish set to: " << fSurface->GetPolish() - << G4endl; + G4cout << "Surface polish set to: " << fSurface->GetPolish() << G4endl; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void DetectorConstruction::AddTankMPV(const char* c, - G4MaterialPropertyVector* mpv) { - fTankMPT->AddProperty(c, mpv); +void DetectorConstruction::AddTankMPV(const G4String& prop, + G4MaterialPropertyVector* mpv) +{ + fTankMPT->AddProperty(prop, mpv); G4cout << "The MPT for the box is now: " << G4endl; fTankMPT->DumpTable(); G4cout << "............." << G4endl; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void DetectorConstruction::AddWorldMPV(const char* c, - G4MaterialPropertyVector* mpv) { - fWorldMPT->AddProperty(c, mpv); +void DetectorConstruction::AddWorldMPV(const G4String& prop, + G4MaterialPropertyVector* mpv) +{ + fWorldMPT->AddProperty(prop, mpv); G4cout << "The MPT for the world is now: " << G4endl; fWorldMPT->DumpTable(); G4cout << "............." << G4endl; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void DetectorConstruction::AddSurfaceMPV(const char* c, - G4MaterialPropertyVector* mpv) { - fSurfaceMPT->AddProperty(c, mpv); +void DetectorConstruction::AddSurfaceMPV(const G4String& prop, + G4MaterialPropertyVector* mpv) +{ + fSurfaceMPT->AddProperty(prop, mpv); G4cout << "The MPT for the surface is now: " << G4endl; fSurfaceMPT->DumpTable(); G4cout << "............." << G4endl; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void DetectorConstruction::AddTankMPC(const char* c, G4double v) { - fTankMPT->AddConstProperty(c, v); +void DetectorConstruction::AddTankMPC(const G4String& prop, G4double v) +{ + fTankMPT->AddConstProperty(prop, v); G4cout << "The MPT for the box is now: " << G4endl; fTankMPT->DumpTable(); G4cout << "............." << G4endl; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void DetectorConstruction::AddWorldMPC(const char* c, G4double v) { - fWorldMPT->AddConstProperty(c, v); +void DetectorConstruction::AddWorldMPC(const G4String& prop, G4double v) +{ + fWorldMPT->AddConstProperty(prop, v); G4cout << "The MPT for the world is now: " << G4endl; fWorldMPT->DumpTable(); G4cout << "............." << G4endl; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void DetectorConstruction::AddSurfaceMPC(const char* c, G4double v) { - fSurfaceMPT->AddConstProperty(c, v); +void DetectorConstruction::AddSurfaceMPC(const G4String& prop, G4double v) +{ + fSurfaceMPT->AddConstProperty(prop, v); G4cout << "The MPT for the surface is now: " << G4endl; fSurfaceMPT->DumpTable(); G4cout << "............." << G4endl; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void DetectorConstruction::SetWorldMaterial(const G4String& mat) { +void DetectorConstruction::SetWorldMaterial(const G4String& mat) +{ G4Material* pmat = G4NistManager::Instance()->FindOrBuildMaterial(mat); - if (pmat && fWorldMaterial != pmat) { + if(pmat && fWorldMaterial != pmat) + { fWorldMaterial = pmat; - if (fWorld_LV) { + if(fWorld_LV) + { fWorld_LV->SetMaterial(fWorldMaterial); fWorldMaterial->SetMaterialPropertiesTable(fWorldMPT); } G4RunManager::GetRunManager()->PhysicsHasBeenModified(); - G4cout << "World material set to " << fWorldMaterial->GetName() - << G4endl; + G4cout << "World material set to " << fWorldMaterial->GetName() << G4endl; } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void DetectorConstruction::SetTankMaterial(const G4String& mat) { +void DetectorConstruction::SetTankMaterial(const G4String& mat) +{ G4Material* pmat = G4NistManager::Instance()->FindOrBuildMaterial(mat); - if (pmat && fTankMaterial != pmat) { + if(pmat && fTankMaterial != pmat) + { fTankMaterial = pmat; - if (fTank_LV) { + if(fTank_LV) + { fTank_LV->SetMaterial(fTankMaterial); fTankMaterial->SetMaterialPropertiesTable(fTankMPT); - fTankMaterial->GetIonisation()->SetBirksConstant(0.126*mm/MeV); + fTankMaterial->GetIonisation()->SetBirksConstant(0.126 * mm / MeV); } G4RunManager::GetRunManager()->PhysicsHasBeenModified(); - G4cout << "Tank material set to " << fTankMaterial->GetName() - << G4endl; + G4cout << "Tank material set to " << fTankMaterial->GetName() << G4endl; } } diff --git a/examples/extended/optical/OpNovice2/src/DetectorMessenger.cc b/examples/extended/optical/OpNovice2/src/DetectorMessenger.cc index ce0bd83248..4057dad56b 100644 --- a/examples/extended/optical/OpNovice2/src/DetectorMessenger.cc +++ b/examples/extended/optical/OpNovice2/src/DetectorMessenger.cc @@ -32,25 +32,26 @@ #include "DetectorMessenger.hh" +#include "DetectorConstruction.hh" + +#include "G4OpticalSurface.hh" +#include "G4UIcmdWithADouble.hh" +#include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIcmdWithAnInteger.hh" +#include "G4UIcmdWithAString.hh" +#include "G4UIcmdWithoutParameter.hh" +#include "G4UIcommand.hh" +#include "G4UIdirectory.hh" +#include "G4UIparameter.hh" + #include #include -#include "G4OpticalSurface.hh" - -#include "DetectorConstruction.hh" -#include "G4UIdirectory.hh" -#include "G4UIcommand.hh" -#include "G4UIparameter.hh" -#include "G4UIcmdWithAString.hh" -#include "G4UIcmdWithADouble.hh" -#include "G4UIcmdWithAnInteger.hh" -#include "G4UIcmdWithADoubleAndUnit.hh" -#include "G4UIcmdWithoutParameter.hh" - //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -DetectorMessenger::DetectorMessenger(DetectorConstruction * Det) -:G4UImessenger(),fDetector(Det) +DetectorMessenger::DetectorMessenger(DetectorConstruction* Det) + : G4UImessenger() + , fDetector(Det) { fOpticalDir = new G4UIdirectory("/opnovice2/"); fOpticalDir->SetGuidance("Parameters for optical simulation."); @@ -65,8 +66,7 @@ DetectorMessenger::DetectorMessenger(DetectorConstruction * Det) fSurfaceFinishCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSurfaceFinishCmd->SetToBeBroadcasted(false); - fSurfaceModelCmd = - new G4UIcmdWithAString("/opnovice2/surfaceModel", this); + fSurfaceModelCmd = new G4UIcmdWithAString("/opnovice2/surfaceModel", this); fSurfaceModelCmd->SetGuidance("surface model."); fSurfaceModelCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSurfaceModelCmd->SetToBeBroadcasted(false); @@ -78,8 +78,7 @@ DetectorMessenger::DetectorMessenger(DetectorConstruction * Det) fSurfaceSigmaAlphaCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSurfaceSigmaAlphaCmd->SetToBeBroadcasted(false); - fSurfacePolishCmd = - new G4UIcmdWithADouble("/opnovice2/surfacePolish", this); + fSurfacePolishCmd = new G4UIcmdWithADouble("/opnovice2/surfacePolish", this); fSurfacePolishCmd->SetGuidance("surface polish"); fSurfacePolishCmd->SetGuidance(" parameter (for Glisur model)."); fSurfacePolishCmd->AvailableForStates(G4State_PreInit, G4State_Idle); @@ -129,21 +128,20 @@ DetectorMessenger::DetectorMessenger(DetectorConstruction * Det) new G4UIcmdWithAString("/opnovice2/worldConstProperty", this); fWorldMatPropConstCmd->SetGuidance("Set material constant property"); fWorldMatPropConstCmd->SetGuidance(" for the world."); - fWorldMatPropConstCmd-> - AvailableForStates(G4State_PreInit, G4State_Idle); + fWorldMatPropConstCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fWorldMatPropConstCmd->SetToBeBroadcasted(false); fWorldMaterialCmd = new G4UIcmdWithAString("/opnovice2/worldMaterial", this); fWorldMaterialCmd->SetGuidance("Set material of world."); fWorldMaterialCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fWorldMaterialCmd->SetToBeBroadcasted(false); - } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... DetectorMessenger::~DetectorMessenger() { + delete fOpticalDir; delete fSurfaceFinishCmd; delete fSurfaceTypeCmd; delete fSurfaceModelCmd; @@ -161,189 +159,245 @@ DetectorMessenger::~DetectorMessenger() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void DetectorMessenger::SetNewValue(G4UIcommand* command,G4String newValue) -{ - // FINISH - if (command == fSurfaceFinishCmd) { - if (newValue == "polished") { +void DetectorMessenger::SetNewValue(G4UIcommand* command, G4String newValue) +{ + // FINISH + if(command == fSurfaceFinishCmd) + { + if(newValue == "polished") + { fDetector->SetSurfaceFinish(polished); } - else if (newValue == "polishedfrontpainted") { + else if(newValue == "polishedfrontpainted") + { fDetector->SetSurfaceFinish(polishedfrontpainted); } - else if (newValue == "polishedbackpainted") { + else if(newValue == "polishedbackpainted") + { fDetector->SetSurfaceFinish(polishedbackpainted); } - else if (newValue == "ground") { + else if(newValue == "ground") + { fDetector->SetSurfaceFinish(ground); } - else if (newValue == "groundfrontpainted") { + else if(newValue == "groundfrontpainted") + { fDetector->SetSurfaceFinish(groundfrontpainted); } - else if (newValue == "groundbackpainted") { + else if(newValue == "groundbackpainted") + { fDetector->SetSurfaceFinish(groundbackpainted); } - else if (newValue == "polishedlumirrorair") { + else if(newValue == "polishedlumirrorair") + { fDetector->SetSurfaceFinish(polishedlumirrorair); } - else if (newValue == "polishedlumirrorglue") { + else if(newValue == "polishedlumirrorglue") + { fDetector->SetSurfaceFinish(polishedlumirrorglue); } - else if (newValue == "polishedair") { + else if(newValue == "polishedair") + { fDetector->SetSurfaceFinish(polishedair); } - else if (newValue == "polishedteflonair") { + else if(newValue == "polishedteflonair") + { fDetector->SetSurfaceFinish(polishedteflonair); } - else if (newValue == "polishedtioair") { + else if(newValue == "polishedtioair") + { fDetector->SetSurfaceFinish(polishedtioair); } - else if (newValue == "polishedtyvekair") { + else if(newValue == "polishedtyvekair") + { fDetector->SetSurfaceFinish(polishedtyvekair); } - else if (newValue == "polishedvm2000air") { + else if(newValue == "polishedvm2000air") + { fDetector->SetSurfaceFinish(polishedvm2000air); } - else if (newValue == "polishedvm2000glue") { + else if(newValue == "polishedvm2000glue") + { fDetector->SetSurfaceFinish(polishedvm2000glue); } - else if (newValue == "etchedlumirrorair") { + else if(newValue == "etchedlumirrorair") + { fDetector->SetSurfaceFinish(etchedlumirrorair); } - else if (newValue == "etchedlumirrorglue") { + else if(newValue == "etchedlumirrorglue") + { fDetector->SetSurfaceFinish(etchedlumirrorglue); } - else if (newValue == "etchedair") { + else if(newValue == "etchedair") + { fDetector->SetSurfaceFinish(etchedair); } - else if (newValue == "etchedteflonair") { + else if(newValue == "etchedteflonair") + { fDetector->SetSurfaceFinish(etchedteflonair); } - else if (newValue == "etchedtioair") { + else if(newValue == "etchedtioair") + { fDetector->SetSurfaceFinish(etchedtioair); } - else if (newValue == "etchedtyvekair") { + else if(newValue == "etchedtyvekair") + { fDetector->SetSurfaceFinish(etchedtyvekair); } - else if (newValue == "etchedvm2000air") { + else if(newValue == "etchedvm2000air") + { fDetector->SetSurfaceFinish(etchedvm2000air); } - else if (newValue == "etchedvm2000glue") { + else if(newValue == "etchedvm2000glue") + { fDetector->SetSurfaceFinish(etchedvm2000glue); } - else if (newValue == "groundlumirrorair") { + else if(newValue == "groundlumirrorair") + { fDetector->SetSurfaceFinish(groundlumirrorair); } - else if (newValue == "groundlumirrorglue") { + else if(newValue == "groundlumirrorglue") + { fDetector->SetSurfaceFinish(groundlumirrorglue); } - else if (newValue == "groundair") { + else if(newValue == "groundair") + { fDetector->SetSurfaceFinish(groundair); } - else if (newValue == "groundteflonair") { + else if(newValue == "groundteflonair") + { fDetector->SetSurfaceFinish(groundteflonair); } - else if (newValue == "groundtioair") { + else if(newValue == "groundtioair") + { fDetector->SetSurfaceFinish(groundtioair); } - else if (newValue == "groundtyvekair") { + else if(newValue == "groundtyvekair") + { fDetector->SetSurfaceFinish(groundtyvekair); } - else if (newValue == "groundvm2000air") { + else if(newValue == "groundvm2000air") + { fDetector->SetSurfaceFinish(groundvm2000air); } - else if (newValue == "groundvm2000glue") { + else if(newValue == "groundvm2000glue") + { fDetector->SetSurfaceFinish(groundvm2000glue); } // for Davis model - else if (newValue == "Rough_LUT") { + else if(newValue == "Rough_LUT") + { fDetector->SetSurfaceFinish(Rough_LUT); } - else if (newValue == "RoughTeflon_LUT") { + else if(newValue == "RoughTeflon_LUT") + { fDetector->SetSurfaceFinish(RoughTeflon_LUT); } - else if (newValue == "RoughESR_LUT") { + else if(newValue == "RoughESR_LUT") + { fDetector->SetSurfaceFinish(RoughESR_LUT); } - else if (newValue == "RoughESRGrease_LUT") { + else if(newValue == "RoughESRGrease_LUT") + { fDetector->SetSurfaceFinish(RoughESRGrease_LUT); } - else if (newValue == "Polished_LUT") { + else if(newValue == "Polished_LUT") + { fDetector->SetSurfaceFinish(Polished_LUT); } - else if (newValue == "PolishedTeflon_LUT") { + else if(newValue == "PolishedTeflon_LUT") + { fDetector->SetSurfaceFinish(PolishedTeflon_LUT); } - else if (newValue == "PolishedESR_LUT") { + else if(newValue == "PolishedESR_LUT") + { fDetector->SetSurfaceFinish(PolishedESR_LUT); } - else if (newValue == "PolishedESRGrease_LUT") { + else if(newValue == "PolishedESRGrease_LUT") + { fDetector->SetSurfaceFinish(PolishedESRGrease_LUT); } - else if (newValue == "Detector_LUT") { + else if(newValue == "Detector_LUT") + { fDetector->SetSurfaceFinish(Detector_LUT); } - else { + else + { G4ExceptionDescription ed; ed << "Invalid surface finish: " << newValue; - G4Exception("DetectorMessenger", "OpNovice2_003", FatalException,ed); + G4Exception("DetectorMessenger", "OpNovice2_003", FatalException, ed); } } // MODEL - else if (command == fSurfaceModelCmd) { - if (newValue == "glisur") { + else if(command == fSurfaceModelCmd) + { + if(newValue == "glisur") + { fDetector->SetSurfaceModel(glisur); } - else if (newValue == "unified") { + else if(newValue == "unified") + { fDetector->SetSurfaceModel(unified); } - else if (newValue == "LUT") { + else if(newValue == "LUT") + { fDetector->SetSurfaceModel(LUT); } - else if (newValue == "DAVIS") { + else if(newValue == "DAVIS") + { fDetector->SetSurfaceModel(DAVIS); } - else if (newValue == "dichroic") { + else if(newValue == "dichroic") + { fDetector->SetSurfaceModel(dichroic); } - else { + else + { G4ExceptionDescription ed; ed << "Invalid surface model: " << newValue; - G4Exception("DetectorMessenger", "ONovice2_001", - FatalException,ed); + G4Exception("DetectorMessenger", "ONovice2_001", FatalException, ed); } } // TYPE - else if (command == fSurfaceTypeCmd) { - if (newValue == "dielectric_metal") { + else if(command == fSurfaceTypeCmd) + { + if(newValue == "dielectric_metal") + { fDetector->SetSurfaceType(dielectric_metal); } - else if (newValue == "dielectric_dielectric") { + else if(newValue == "dielectric_dielectric") + { fDetector->SetSurfaceType(dielectric_dielectric); } - else if (newValue == "dielectric_LUT") { + else if(newValue == "dielectric_LUT") + { fDetector->SetSurfaceType(dielectric_LUT); } - else if (newValue == "dielectric_LUTDAVIS") { + else if(newValue == "dielectric_LUTDAVIS") + { fDetector->SetSurfaceType(dielectric_LUTDAVIS); } - else { + else + { G4ExceptionDescription ed; ed << "Invalid surface type: " << newValue; - G4Exception("DetectorMessenger", "OpNovice2_002", FatalException,ed); + G4Exception("DetectorMessenger", "OpNovice2_002", FatalException, ed); } } - else if (command == fSurfaceSigmaAlphaCmd) { + else if(command == fSurfaceSigmaAlphaCmd) + { fDetector->SetSurfaceSigmaAlpha( G4UIcmdWithADouble::GetNewDoubleValue(newValue)); } - else if (command == fSurfacePolishCmd) { + else if(command == fSurfacePolishCmd) + { fDetector->SetSurfacePolish( G4UIcmdWithADouble::GetNewDoubleValue(newValue)); } - else if (command == fTankMatPropVectorCmd) { + else if(command == fTankMatPropVectorCmd) + { // got a string. need to convert it to physics vector. // string format is property name, then pairs of energy, value // specify units for each value, eg 3.0*eV @@ -352,64 +406,73 @@ void DetectorMessenger::SetNewValue(G4UIcommand* command,G4String newValue) std::istringstream instring(newValue); G4String prop; instring >> prop; - while (instring) { + while(instring) + { G4String tmp; instring >> tmp; - if (tmp == "") { break; } + if(tmp == "") + { + break; + } G4double en = G4UIcommand::ConvertToDouble(tmp); instring >> tmp; - G4double val; - val = G4UIcommand::ConvertToDouble(tmp); + G4double val = G4UIcommand::ConvertToDouble(tmp); mpv->InsertValues(en, val); } - const char* c = prop.c_str(); - fDetector->AddTankMPV(c, mpv); + fDetector->AddTankMPV(prop, mpv); } - else if (command == fWorldMatPropVectorCmd) { + else if(command == fWorldMatPropVectorCmd) + { // Convert string to physics vector // string format is property name, then pairs of energy, value G4MaterialPropertyVector* mpv = new G4MaterialPropertyVector(); std::istringstream instring(newValue); G4String prop; instring >> prop; - while (instring) { + while(instring) + { G4String tmp; instring >> tmp; - if (tmp == "") { break; } + if(tmp == "") + { + break; + } G4double en = G4UIcommand::ConvertToDouble(tmp); instring >> tmp; - G4double val; - val = G4UIcommand::ConvertToDouble(tmp); + G4double val = G4UIcommand::ConvertToDouble(tmp); mpv->InsertValues(en, val); - } - const char* c = prop.c_str(); - fDetector->AddWorldMPV(c, mpv); + } + fDetector->AddWorldMPV(prop, mpv); } - else if (command == fSurfaceMatPropVectorCmd) { + else if(command == fSurfaceMatPropVectorCmd) + { // Convert string to physics vector - // string format is property name, then pairs of energy, value + // string format is property name, then pairs of energy, value // space delimited G4MaterialPropertyVector* mpv = new G4MaterialPropertyVector(); G4cout << newValue << G4endl; std::istringstream instring(newValue); G4String prop; instring >> prop; - while (instring) { + while(instring) + { G4String tmp; instring >> tmp; - if (tmp == "") { break; } + if(tmp == "") + { + break; + } G4double en = G4UIcommand::ConvertToDouble(tmp); instring >> tmp; - G4double val; - val = G4UIcommand::ConvertToDouble(tmp); + G4double val = G4UIcommand::ConvertToDouble(tmp); mpv->InsertValues(en, val); - } - const char* c = prop.c_str(); - fDetector->AddSurfaceMPV(c, mpv); + } + fDetector->AddSurfaceMPV(prop, mpv); } - else if (command == fTankMatPropConstCmd) { + else if(command == fTankMatPropConstCmd) + { // Convert string to physics vector // string format is property name, then value // space delimited @@ -419,10 +482,10 @@ void DetectorMessenger::SetNewValue(G4UIcommand* command,G4String newValue) instring >> prop; instring >> tmp; G4double val = G4UIcommand::ConvertToDouble(tmp); - const char* c = prop.c_str(); - fDetector->AddTankMPC(c, val); + fDetector->AddTankMPC(prop, val); } - else if (command == fWorldMatPropConstCmd) { + else if(command == fWorldMatPropConstCmd) + { // Convert string to physics vector // string format is property name, then value // space delimited @@ -432,10 +495,10 @@ void DetectorMessenger::SetNewValue(G4UIcommand* command,G4String newValue) instring >> prop; instring >> tmp; G4double val = G4UIcommand::ConvertToDouble(tmp); - const char* c = prop.c_str(); - fDetector->AddTankMPC(c, val); + fDetector->AddWorldMPC(prop, val); } - else if (command == fSurfaceMatPropConstCmd) { + else if(command == fSurfaceMatPropConstCmd) + { // Convert string to physics vector // string format is property name, then value // space delimited @@ -445,13 +508,14 @@ void DetectorMessenger::SetNewValue(G4UIcommand* command,G4String newValue) instring >> prop; instring >> tmp; G4double val = G4UIcommand::ConvertToDouble(tmp); - const char* c = prop.c_str(); - fDetector->AddSurfaceMPC(c, val); + fDetector->AddSurfaceMPC(prop, val); } - else if (command == fWorldMaterialCmd) { + else if(command == fWorldMaterialCmd) + { fDetector->SetWorldMaterial(newValue); } - else if (command == fTankMaterialCmd) { + else if(command == fTankMaterialCmd) + { fDetector->SetTankMaterial(newValue); } } diff --git a/examples/extended/optical/OpNovice2/src/HistoManager.cc b/examples/extended/optical/OpNovice2/src/HistoManager.cc index 4cc3e5515f..6f7f9e4fc8 100644 --- a/examples/extended/optical/OpNovice2/src/HistoManager.cc +++ b/examples/extended/optical/OpNovice2/src/HistoManager.cc @@ -27,11 +27,12 @@ /// \brief Implementation of the HistoManager class // // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #include "HistoManager.hh" + #include "G4UnitsTable.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -44,10 +45,7 @@ HistoManager::HistoManager() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -HistoManager::~HistoManager() -{ - delete G4AnalysisManager::Instance(); -} +HistoManager::~HistoManager() { delete G4AnalysisManager::Instance(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -56,48 +54,75 @@ void HistoManager::Book() // Create or get analysis manager // The choice of analysis technology is done via selection of a namespace // in HistoManager.hh - G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); - analysisManager->SetFileName(fFileName); - analysisManager->SetVerboseLevel(1); - analysisManager->SetActivation(true); // enable inactivation of histograms + G4AnalysisManager* analysisMan = G4AnalysisManager::Instance(); + analysisMan->SetFileName(fFileName); + analysisMan->SetVerboseLevel(1); + analysisMan->SetActivation(true); // enable inactivation of histograms - // Define histogram indices, titles - G4int maxHisto = 15; - G4String id[] = { "0", "1", "2", "3", "4", "5", "6", "7", "8", "9", - "10","11","12","13","14","15","16","17","18","19" }; - - // TODO change throughout code - G4String title[] = { - "dummy", // 0 - "Cerenkov spectrum", // 1 - "scintillation spectrum", // 2 - "scintillation photons creation time", // 3 - "WLS absorption spectrum", // 4 - "WLS emission spectrum", // 5 - "WLS emission time", // 6 - "WLS2 absorption spectrum", // 7 - "WLS2 emission spectrum", // 8 - "WLS2 emission time", // 9 - "boundary process status", //10 - "X momentum dir of backward-going photons", //11 - "Y momentum dir of backward-going photons", //12 - "Z momentum dir of backward-going photons", //13 - "X momentum dir of forward-going photons", //14 - "Y momentum dir of forward-going photons", //15 - "Z momentum dir of forward-going photons", //16 - "X momentum dir of Fresnel-refracted photons", //17 - "Y momentum dir of Fresnel-refracted photons", //18 - "Z momentum dir of Fresnel-refracted photons", //19 - }; - - // Default values (to be reset via /analysis/h1/set command) - G4int nbins = 100; - G4double vmin = 0.; - G4double vmax = 100.; + // Define histograms + // Default values (to be reset via /analysis/h1/set command) + G4int n = 100; + G4double xmn = 0.; + G4double xmx = 100.; - // Create all histograms as inactivated - for (G4int k=0; k <= maxHisto; ++k) { - G4int ih = analysisManager->CreateH1(id[k], title[k], nbins, vmin, vmax); - analysisManager->SetH1Activation(ih, false); + // 0 + analysisMan->CreateH1("0", "dummy", n, xmn, xmx); + // 1 + analysisMan->CreateH1("Cerenkov spectrum", "Cerenkov spectrum", n, xmn, xmx); + // 2 + analysisMan->CreateH1("Scintillation spectrum", "Scintillation spectrum", n, + xmn, xmx); + // 3 + analysisMan->CreateH1("Scintillation time", + "scintillation photons creation time", n, xmn, xmx); + // 4 + analysisMan->CreateH1("WLS abs", "WLS absorption spectrum", n, xmn, xmx); + // 5 + analysisMan->CreateH1("WLS em", "WLS emission spectrum", n, xmn, xmx); + // 6 + analysisMan->CreateH1("WLS time", "WLS emission time", n, xmn, xmx); + // 7 + analysisMan->CreateH1("WLS2 abs", "WLS2 absorption spectrum", n, xmn, xmx); + // 8 + analysisMan->CreateH1("WLS2 em", "WLS2 emission spectrum", n, xmn, xmx); + // 9 + analysisMan->CreateH1("WLS2 time", "WLS2 emission time", n, xmn, xmx); + // 10 + analysisMan->CreateH1("bdry status", "boundary process status", n, xmn, xmx); + // 11 + analysisMan->CreateH1( + "x_backward", "X momentum dir of backward-going photons", n, xmn, xmx); + // 12 + analysisMan->CreateH1( + "y_backward", "Y momentum dir of backward-going photons", n, xmn, xmx); + // 13 + analysisMan->CreateH1( + "z_backward", "Z momentum dir of backward-going photons", n, xmn, xmx); + // 14 + analysisMan->CreateH1("x_forward", "X momentum dir of forward-going photons", + n, xmn, xmx); + // 15 + analysisMan->CreateH1("y_forward", "Y momentum dir of forward-going photons", + n, xmn, xmx); + // 16 + analysisMan->CreateH1("z_forward", "Z momentum dir of forward-going photons", + n, xmn, xmx); + // 17 + analysisMan->CreateH1( + "x_fresnel", "X momentum dir of Fresnel-refracted photons", n, xmn, xmx); + // 18 + analysisMan->CreateH1( + "y_fresnel", "Y momentum dir of Fresnel-refracted photons", n, xmn, xmx); + // 19 + analysisMan->CreateH1( + "z_fresnel", "Z momentum dir of Fresnel-refracted photons", n, xmn, xmx); + // 20 + analysisMan->CreateH1("Transmitted", "Transmitted photons", n, xmn, xmx); + // 21 + analysisMan->CreateH1("Reflected", "Reflected photons", n, xmn, xmx); + + for(G4int i = 0; i < analysisMan->GetNofH1s(); ++i) + { + analysisMan->SetH1Activation(i, false); } } diff --git a/examples/extended/optical/OpNovice2/src/PrimaryGeneratorAction.cc b/examples/extended/optical/OpNovice2/src/PrimaryGeneratorAction.cc index 7f8f02614f..c2c596b529 100644 --- a/examples/extended/optical/OpNovice2/src/PrimaryGeneratorAction.cc +++ b/examples/extended/optical/OpNovice2/src/PrimaryGeneratorAction.cc @@ -32,38 +32,43 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #include "PrimaryGeneratorAction.hh" + #include "PrimaryGeneratorMessenger.hh" -#include "Randomize.hh" - #include "G4Event.hh" +#include "G4OpticalPhoton.hh" #include "G4ParticleGun.hh" #include "G4ParticleTable.hh" #include "G4ParticleDefinition.hh" #include "G4SystemOfUnits.hh" +#include "Randomize.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... PrimaryGeneratorAction::PrimaryGeneratorAction() - : G4VUserPrimaryGeneratorAction(), - fParticleGun(0) + : G4VUserPrimaryGeneratorAction() + , fParticleGun(0) { G4int n_particle = 1; - fParticleGun = new G4ParticleGun(n_particle); + fParticleGun = new G4ParticleGun(n_particle); - //create a messenger for this class + // create a messenger for this class fGunMessenger = new PrimaryGeneratorMessenger(this); - //default kinematic + fRandomDirection = false; + fPolarized = false; + fPolarization = 0.; + // default kinematic // G4ParticleTable* particleTable = G4ParticleTable::GetParticleTable(); G4ParticleDefinition* particle = particleTable->FindParticle("e+"); fParticleGun->SetParticleDefinition(particle); - fParticleGun->SetParticleTime(0.0*ns); - fParticleGun->SetParticlePosition(G4ThreeVector(0.0*cm,0.0*cm,0.0*cm)); - fParticleGun->SetParticleMomentumDirection(G4ThreeVector(1.,0.,0.)); - fParticleGun->SetParticleEnergy(500.0*keV); + fParticleGun->SetParticleTime(0.0 * ns); + fParticleGun->SetParticlePosition( + G4ThreeVector(0.0 * cm, 0.0 * cm, 0.0 * cm)); + fParticleGun->SetParticleMomentumDirection(G4ThreeVector(1., 0., 0.)); + fParticleGun->SetParticleEnergy(500.0 * keV); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -78,6 +83,24 @@ PrimaryGeneratorAction::~PrimaryGeneratorAction() void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) { + if(fRandomDirection) + { + G4double theta = CLHEP::halfpi * G4UniformRand(); + G4double phi = CLHEP::twopi * G4UniformRand(); + G4double x = std::cos(theta); + G4double y = std::sin(theta) * std::sin(phi); + G4double z = std::sin(theta) * std::cos(phi); + G4ThreeVector dir(x, y, z); + fParticleGun->SetParticleMomentumDirection(dir); + } + if(fParticleGun->GetParticleDefinition() == + G4OpticalPhoton::OpticalPhotonDefinition()) + { + if(fPolarized) + SetOptPhotonPolar(fPolarization); + else + SetOptPhotonPolar(); + } fParticleGun->GeneratePrimaryVertex(anEvent); } @@ -85,32 +108,44 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) void PrimaryGeneratorAction::SetOptPhotonPolar() { - G4double angle = G4UniformRand() * 360.0*deg; - SetOptPhotonPolar(angle); + G4double angle = G4UniformRand() * 360.0 * deg; + SetOptPhotonPolar(angle); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void PrimaryGeneratorAction::SetOptPhotonPolar(G4double angle) { - if (fParticleGun->GetParticleDefinition()->GetParticleName()!="opticalphoton") - { - G4cout << "--> warning from PrimaryGeneratorAction::SetOptPhotonPolar() :" - "the particleGun is not an opticalphoton" << G4endl; - return; - } + if(fParticleGun->GetParticleDefinition() != + G4OpticalPhoton::OpticalPhotonDefinition()) + { + G4ExceptionDescription ed; + ed << "The particleGun is not an opticalphoton."; + G4Exception("PrimaryGeneratorAction::SetOptPhotonPolar", "OpNovice2_004", + JustWarning, ed); + return; + } - G4ThreeVector normal (1., 0., 0.); - G4ThreeVector kphoton = fParticleGun->GetParticleMomentumDirection(); - G4ThreeVector product = normal.cross(kphoton); - G4double modul2 = product*product; - - G4ThreeVector e_perpend (0., 0., 1.); - if (modul2 > 0.) e_perpend = (1./std::sqrt(modul2))*product; - G4ThreeVector e_paralle = e_perpend.cross(kphoton); - - G4ThreeVector polar = std::cos(angle)*e_paralle + std::sin(angle)*e_perpend; - fParticleGun->SetParticlePolarization(polar); + fPolarized = true; + fPolarization = angle; + + G4ThreeVector normal(1., 0., 0.); + G4ThreeVector kphoton = fParticleGun->GetParticleMomentumDirection(); + G4ThreeVector product = normal.cross(kphoton); + G4double modul2 = product * product; + + G4ThreeVector e_perpend(0., 0., 1.); + if(modul2 > 0.) + e_perpend = (1. / std::sqrt(modul2)) * product; + G4ThreeVector e_paralle = e_perpend.cross(kphoton); + + G4ThreeVector polar = + std::cos(angle) * e_paralle + std::sin(angle) * e_perpend; + fParticleGun->SetParticlePolarization(polar); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void PrimaryGeneratorAction::SetRandomDirection(G4bool val) +{ + fRandomDirection = val; +} diff --git a/examples/extended/optical/OpNovice2/src/PrimaryGeneratorMessenger.cc b/examples/extended/optical/OpNovice2/src/PrimaryGeneratorMessenger.cc index 8e2edf4224..5eedd9d440 100644 --- a/examples/extended/optical/OpNovice2/src/PrimaryGeneratorMessenger.cc +++ b/examples/extended/optical/OpNovice2/src/PrimaryGeneratorMessenger.cc @@ -35,27 +35,32 @@ #include "PrimaryGeneratorAction.hh" #include "G4UIdirectory.hh" #include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIcmdWithABool.hh" #include "G4SystemOfUnits.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -PrimaryGeneratorMessenger:: - PrimaryGeneratorMessenger(PrimaryGeneratorAction* Gun) - : G4UImessenger(), - fPrimaryAction(Gun) +PrimaryGeneratorMessenger::PrimaryGeneratorMessenger( + PrimaryGeneratorAction* Gun) + : G4UImessenger() + , fPrimaryAction(Gun) { fGunDir = new G4UIdirectory("/opnovice2/gun/"); fGunDir->SetGuidance("PrimaryGenerator control"); fPolarCmd = - new G4UIcmdWithADoubleAndUnit("/opnovice2/gun/optPhotonPolar",this); + new G4UIcmdWithADoubleAndUnit("/opnovice2/gun/optPhotonPolar", this); fPolarCmd->SetGuidance("Set linear polarization"); fPolarCmd->SetGuidance(" angle w.r.t. (k,n) plane"); - fPolarCmd->SetParameterName("angle",true); + fPolarCmd->SetParameterName("angle", true); fPolarCmd->SetUnitCategory("Angle"); fPolarCmd->SetDefaultValue(-360.0); fPolarCmd->SetDefaultUnit("deg"); fPolarCmd->AvailableForStates(G4State_Idle); + + fRandomDirectionCmd = + new G4UIcmdWithABool("/opnovice2/gun/randomDirection", this); + fRandomDirectionCmd->AvailableForStates(G4State_Idle, G4State_PreInit); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -64,20 +69,29 @@ PrimaryGeneratorMessenger::~PrimaryGeneratorMessenger() { delete fPolarCmd; delete fGunDir; + delete fRandomDirectionCmd; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void PrimaryGeneratorMessenger::SetNewValue( - G4UIcommand* command, G4String newValue) +void PrimaryGeneratorMessenger::SetNewValue(G4UIcommand* command, + G4String newValue) { - if (command == fPolarCmd) { - G4double angle = fPolarCmd->GetNewDoubleValue(newValue); - if (angle == -360.0*deg) { - fPrimaryAction->SetOptPhotonPolar(); - } else { - fPrimaryAction->SetOptPhotonPolar(angle); - } + if(command == fPolarCmd) + { + G4double angle = fPolarCmd->GetNewDoubleValue(newValue); + if(angle == -360.0 * deg) + { + fPrimaryAction->SetOptPhotonPolar(); + } + else + { + fPrimaryAction->SetOptPhotonPolar(angle); + } + } + else if(command == fRandomDirectionCmd) + { + fPrimaryAction->SetRandomDirection(true); } } diff --git a/examples/extended/optical/OpNovice2/src/Run.cc b/examples/extended/optical/OpNovice2/src/Run.cc index 79ba95d93b..613875c2d6 100644 --- a/examples/extended/optical/OpNovice2/src/Run.cc +++ b/examples/extended/optical/OpNovice2/src/Run.cc @@ -26,62 +26,69 @@ /// \file optical/OpNovice2/src/Run.cc /// \brief Implementation of the Run class // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#include - #include "Run.hh" + #include "DetectorConstruction.hh" +#include "HistoManager.hh" #include "G4OpBoundaryProcess.hh" #include "G4SystemOfUnits.hh" #include "G4UnitsTable.hh" +#include + //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -Run::Run() -: G4Run() +Run::Run() + : G4Run() { - fParticle = nullptr; - fEkin = -1.; - - fCerenkovEnergy = 0.0; - fScintEnergy = 0.0; + fParticle = nullptr; + fEkin = -1.; + fPolarized = false; + fPolarization = 0.; + + fCerenkovEnergy = 0.0; + fScintEnergy = 0.0; fWLSAbsorptionEnergy = 0.0; fWLSEmissionEnergy = 0.0; fWLS2AbsorptionEnergy = 0.0; fWLS2EmissionEnergy = 0.0; - - fCerenkovCount = 0; - fScintCount = 0; + + fCerenkovCount = 0; + fScintCount = 0; fWLSAbsorptionCount = 0; fWLSEmissionCount = 0; fWLS2AbsorptionCount = 0; fWLS2EmissionCount = 0; - fRayleighCount = 0; + fRayleighCount = 0; - fOpAbsorption = 0; + fOpAbsorption = 0; fOpAbsorptionPrior = 0; fTotalSurface = 0; fBoundaryProcs.clear(); fBoundaryProcs.resize(40); - for (G4int i = 0; i < 40; ++i) { + for(G4int i = 0; i < 40; ++i) + { fBoundaryProcs[i] = 0; } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -Run::~Run() -{} +Run::~Run() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void Run::SetPrimary(G4ParticleDefinition* particle, G4double energy) +void Run::SetPrimary(G4ParticleDefinition* particle, G4double energy, + G4bool polarized, G4double polarization) { - fParticle = particle; - fEkin = energy; + fParticle = particle; + fEkin = energy; + fPolarized = polarized; + fPolarization = polarization; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -90,30 +97,33 @@ void Run::Merge(const G4Run* run) const Run* localRun = static_cast(run); // pass information about primary particle - fParticle = localRun->fParticle; - fEkin = localRun->fEkin; + fParticle = localRun->fParticle; + fEkin = localRun->fEkin; + fPolarized = localRun->fPolarized; + fPolarization = localRun->fPolarization; fCerenkovEnergy += localRun->fCerenkovEnergy; - fScintEnergy += localRun->fScintEnergy; - fWLSAbsorptionEnergy += localRun->fWLSAbsorptionEnergy; - fWLSEmissionEnergy += localRun->fWLSEmissionEnergy; + fScintEnergy += localRun->fScintEnergy; + fWLSAbsorptionEnergy += localRun->fWLSAbsorptionEnergy; + fWLSEmissionEnergy += localRun->fWLSEmissionEnergy; fWLS2AbsorptionEnergy += localRun->fWLS2AbsorptionEnergy; - fWLS2EmissionEnergy += localRun->fWLS2EmissionEnergy; + fWLS2EmissionEnergy += localRun->fWLS2EmissionEnergy; - fCerenkovCount += localRun->fCerenkovCount; - fScintCount += localRun->fScintCount; - fWLSAbsorptionCount += localRun->fWLSAbsorptionCount; - fWLSEmissionCount += localRun->fWLSEmissionCount; + fCerenkovCount += localRun->fCerenkovCount; + fScintCount += localRun->fScintCount; + fWLSAbsorptionCount += localRun->fWLSAbsorptionCount; + fWLSEmissionCount += localRun->fWLSEmissionCount; fWLS2AbsorptionCount += localRun->fWLS2AbsorptionCount; - fWLS2EmissionCount += localRun->fWLS2EmissionCount; - fRayleighCount += localRun->fRayleighCount; - - fTotalSurface += localRun->fTotalSurface; - - fOpAbsorption += localRun->fOpAbsorption; + fWLS2EmissionCount += localRun->fWLS2EmissionCount; + fRayleighCount += localRun->fRayleighCount; + + fTotalSurface += localRun->fTotalSurface; + + fOpAbsorption += localRun->fOpAbsorption; fOpAbsorptionPrior += localRun->fOpAbsorptionPrior; - for (size_t i = 0; i < fBoundaryProcs.size(); ++i) { + for(size_t i = 0; i < fBoundaryProcs.size(); ++i) + { fBoundaryProcs[i] += localRun->fBoundaryProcs[i]; } @@ -123,82 +133,177 @@ void Run::Merge(const G4Run* run) //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void Run::EndOfRun() { - if (numberOfEvent == 0) return; - G4double TotNbofEvents = (G4double)numberOfEvent; + if(numberOfEvent == 0) + return; + G4double TotNbofEvents = (G4double) numberOfEvent; - const DetectorConstruction* det = (const DetectorConstruction*) - (G4RunManager::GetRunManager()->GetUserDetectorConstruction()); + G4AnalysisManager* analysisMan = G4AnalysisManager::Instance(); + G4int id = analysisMan->GetH1Id("Cerenkov spectrum"); + analysisMan->SetH1XAxisTitle(id, "Energy [eV]"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("Scintillation spectrum"); + analysisMan->SetH1XAxisTitle(id, "Energy [eV]"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("Scintillation time"); + analysisMan->SetH1XAxisTitle(id, "Creation time [ns]"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("WLS abs"); + analysisMan->SetH1XAxisTitle(id, "Energy [eV]"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("WLS em"); + analysisMan->SetH1XAxisTitle(id, "Energy [eV]"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("WLS time"); + analysisMan->SetH1XAxisTitle(id, "Creation time [ns]"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("WLS2 abs"); + analysisMan->SetH1XAxisTitle(id, "Energy [eV]"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("WLS2 em"); + analysisMan->SetH1XAxisTitle(id, "Energy [eV]"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("WLS2 time"); + analysisMan->SetH1XAxisTitle(id, "Creation time [ns]"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("bdry status"); + analysisMan->SetH1XAxisTitle(id, "Status code"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("x_backward"); + analysisMan->SetH1XAxisTitle(id, "Direction cosine"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("y_backward"); + analysisMan->SetH1XAxisTitle(id, "Direction cosine"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("z_backward"); + analysisMan->SetH1XAxisTitle(id, "Direction cosine"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("x_forward"); + analysisMan->SetH1XAxisTitle(id, "Direction cosine"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("y_forward"); + analysisMan->SetH1XAxisTitle(id, "Direction cosine"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("z_forward"); + analysisMan->SetH1XAxisTitle(id, "Direction cosine"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("x_fresnel"); + analysisMan->SetH1XAxisTitle(id, "Direction cosine"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("y_fresnel"); + analysisMan->SetH1XAxisTitle(id, "Direction cosine"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("z_fresnel"); + analysisMan->SetH1XAxisTitle(id, "Direction cosine"); + analysisMan->SetH1YAxisTitle(id, "Number of photons"); + + id = analysisMan->GetH1Id("Transmitted"); + analysisMan->SetH1XAxisTitle(id, "Angle [deg]"); + analysisMan->SetH1YAxisTitle(id, "Fraction of photons"); + + id = analysisMan->GetH1Id("Reflected"); + analysisMan->SetH1XAxisTitle(id, "Angle [deg]"); + analysisMan->SetH1YAxisTitle(id, "Fraction of photons"); + + const DetectorConstruction* det = + (const DetectorConstruction*) (G4RunManager::GetRunManager() + ->GetUserDetectorConstruction()); std::ios::fmtflags mode = G4cout.flags(); - G4int prec = G4cout.precision(2); + G4int prec = G4cout.precision(2); G4cout << "\n Run Summary\n"; - G4cout << "---------------------------------\n"; - G4cout << "Primary particle was: " << fParticle->GetParticleName() + G4cout << "---------------------------------\n"; + G4cout << "Primary particle was: " << fParticle->GetParticleName() << " with energy " << G4BestUnit(fEkin, "Energy") << "." << G4endl; G4cout << "Number of events: " << numberOfEvent << G4endl; G4cout << "Material of world: " << det->GetWorldMaterial()->GetName() << G4endl; - G4cout << "Material of tank: " << det->GetTankMaterial()->GetName() - << G4endl << G4endl; + G4cout << "Material of tank: " << det->GetTankMaterial()->GetName() << G4endl + << G4endl; - if (fParticle->GetParticleName() != "opticalphoton") { - G4cout << "Average energy of Cerenkov photons created per event: " - << (fCerenkovEnergy/eV)/TotNbofEvents << " eV." << G4endl; - G4cout << "Average number of Cerenkov photons created per event: " - << fCerenkovCount/TotNbofEvents << G4endl; - if (fCerenkovCount > 0) { - G4cout << " Average energy per photon: " - << (fCerenkovEnergy/eV)/fCerenkovCount << " eV." << G4endl; + if(fParticle->GetParticleName() != "opticalphoton") + { + G4cout << "Average energy of Cerenkov photons created per event: " + << (fCerenkovEnergy / eV) / TotNbofEvents << " eV." << G4endl; + G4cout << "Average number of Cerenkov photons created per event: " + << fCerenkovCount / TotNbofEvents << G4endl; + if(fCerenkovCount > 0) + { + G4cout << " Average energy per photon: " + << (fCerenkovEnergy / eV) / fCerenkovCount << " eV." << G4endl; } - G4cout << "Average energy of scintillation photons created per event: " - << (fScintEnergy/eV)/TotNbofEvents << " eV." << G4endl; - G4cout << "Average number of scintillation photons created per event: " - << fScintCount/TotNbofEvents << G4endl; - if (fScintCount > 0) { - G4cout << " Average energy per photon: " - << (fScintEnergy/eV)/fScintCount << " eV." << G4endl; + G4cout << "Average energy of scintillation photons created per event: " + << (fScintEnergy / eV) / TotNbofEvents << " eV." << G4endl; + G4cout << "Average number of scintillation photons created per event: " + << fScintCount / TotNbofEvents << G4endl; + if(fScintCount > 0) + { + G4cout << " Average energy per photon: " + << (fScintEnergy / eV) / fScintCount << " eV." << G4endl; } } - G4cout << "Average number of photons absorbed by WLS per event: " - << fWLSAbsorptionCount/G4double(TotNbofEvents) << " " << G4endl; - if (fWLSAbsorptionCount > 0) { - G4cout << " Average energy per photon: " - << (fWLSAbsorptionEnergy/eV)/fWLSAbsorptionCount << " eV." < 0) + { + G4cout << " Average energy per photon: " + << (fWLSAbsorptionEnergy / eV) / fWLSAbsorptionCount << " eV." + << G4endl; } - G4cout << "Average number of photons created by WLS per event: " - << fWLSEmissionCount/TotNbofEvents << G4endl; - if (fWLSEmissionCount > 0) { - G4cout << " Average energy per photon: " - << (fWLSEmissionEnergy/eV)/fWLSEmissionCount << " eV." << G4endl; + G4cout << "Average number of photons created by WLS per event: " + << fWLSEmissionCount / TotNbofEvents << G4endl; + if(fWLSEmissionCount > 0) + { + G4cout << " Average energy per photon: " + << (fWLSEmissionEnergy / eV) / fWLSEmissionCount << " eV." << G4endl; } - G4cout << "Average energy of WLS photons created per event: " - << (fWLSEmissionEnergy/eV)/TotNbofEvents << " eV." << G4endl; + G4cout << "Average energy of WLS photons created per event: " + << (fWLSEmissionEnergy / eV) / TotNbofEvents << " eV." << G4endl; - G4cout << "Average number of photons absorbed by WLS2 per event: " - << fWLS2AbsorptionCount/G4double(TotNbofEvents) << " " << G4endl; - if (fWLS2AbsorptionCount > 0) { - G4cout << " Average energy per photon: " - << (fWLS2AbsorptionEnergy/eV)/fWLS2AbsorptionCount << " eV." < 0) + { + G4cout << " Average energy per photon: " + << (fWLS2AbsorptionEnergy / eV) / fWLS2AbsorptionCount << " eV." + << G4endl; } - G4cout << "Average number of photons created by WLS2 per event: " - << fWLS2EmissionCount/TotNbofEvents << G4endl; - if (fWLS2EmissionCount > 0) { - G4cout << " Average energy per photon: " - << (fWLS2EmissionEnergy/eV)/fWLS2EmissionCount << " eV." << G4endl; + G4cout << "Average number of photons created by WLS2 per event: " + << fWLS2EmissionCount / TotNbofEvents << G4endl; + if(fWLS2EmissionCount > 0) + { + G4cout << " Average energy per photon: " + << (fWLS2EmissionEnergy / eV) / fWLS2EmissionCount << " eV." + << G4endl; } - G4cout << "Average energy of WLS2 photons created per event: " - << (fWLS2EmissionEnergy/eV)/TotNbofEvents << " eV." << G4endl; - + G4cout << "Average energy of WLS2 photons created per event: " + << (fWLS2EmissionEnergy / eV) / TotNbofEvents << " eV." << G4endl; G4cout << "Average number of OpRayleigh per event: " - << fRayleighCount/TotNbofEvents << G4endl; + << fRayleighCount / TotNbofEvents << G4endl; G4cout << "Average number of OpAbsorption per event: " - << fOpAbsorption/TotNbofEvents << G4endl; - G4cout << - "\nSurface events (on +X surface, maximum one per photon) this run:" + << fOpAbsorption / TotNbofEvents << G4endl; + G4cout << "\nSurface events (on +X surface, maximum one per photon) this run:" << G4endl; G4cout << "# of primary particles: " << std::setw(8) << TotNbofEvents << G4endl; @@ -206,163 +311,202 @@ void Run::EndOfRun() << fOpAbsorptionPrior << G4endl; G4cout << "Total # of surface events: " << std::setw(8) << fTotalSurface << G4endl; - if (fParticle->GetParticleName() == "opticalphoton") { + if(fParticle->GetParticleName() == "opticalphoton") + { G4cout << "Unaccounted for: " << std::setw(8) - << fTotalSurface + fOpAbsorptionPrior - TotNbofEvents << G4endl; + << fTotalSurface + fOpAbsorptionPrior - TotNbofEvents << G4endl; } G4cout << "\nSurface events by process:" << G4endl; - if (fBoundaryProcs[Transmission] > 0) { + if(fBoundaryProcs[Transmission] > 0) + { G4cout << " Transmission: " << std::setw(8) << fBoundaryProcs[Transmission] << G4endl; } - if (fBoundaryProcs[FresnelRefraction] > 0) { + if(fBoundaryProcs[FresnelRefraction] > 0) + { G4cout << " Fresnel refraction: " << std::setw(8) << fBoundaryProcs[FresnelRefraction] << G4endl; } - if (fBoundaryProcs[FresnelReflection] > 0) { + if(fBoundaryProcs[FresnelReflection] > 0) + { G4cout << " Fresnel reflection: " << std::setw(8) - << fBoundaryProcs[FresnelReflection] << G4endl; + << fBoundaryProcs[FresnelReflection] << G4endl; } - if (fBoundaryProcs[TotalInternalReflection] > 0) { + if(fBoundaryProcs[TotalInternalReflection] > 0) + { G4cout << " Total internal reflection: " << std::setw(8) << fBoundaryProcs[TotalInternalReflection] << G4endl; } - if (fBoundaryProcs[LambertianReflection] > 0) { + if(fBoundaryProcs[LambertianReflection] > 0) + { G4cout << " Lambertian reflection: " << std::setw(8) << fBoundaryProcs[LambertianReflection] << G4endl; } - if (fBoundaryProcs[LobeReflection] > 0) { + if(fBoundaryProcs[LobeReflection] > 0) + { G4cout << " Lobe reflection: " << std::setw(8) << fBoundaryProcs[LobeReflection] << G4endl; } - if (fBoundaryProcs[SpikeReflection] > 0) { + if(fBoundaryProcs[SpikeReflection] > 0) + { G4cout << " Spike reflection: " << std::setw(8) << fBoundaryProcs[SpikeReflection] << G4endl; } - if (fBoundaryProcs[BackScattering] > 0) { + if(fBoundaryProcs[BackScattering] > 0) + { G4cout << " Backscattering: " << std::setw(8) << fBoundaryProcs[BackScattering] << G4endl; } - if (fBoundaryProcs[Absorption] > 0) { + if(fBoundaryProcs[Absorption] > 0) + { G4cout << " Absorption: " << std::setw(8) << fBoundaryProcs[Absorption] << G4endl; } - if (fBoundaryProcs[Detection] > 0) { + if(fBoundaryProcs[Detection] > 0) + { G4cout << " Detection: " << std::setw(8) << fBoundaryProcs[Detection] << G4endl; } - if (fBoundaryProcs[NotAtBoundary] > 0) { + if(fBoundaryProcs[NotAtBoundary] > 0) + { G4cout << " Not at boundary: " << std::setw(8) << fBoundaryProcs[NotAtBoundary] << G4endl; } - if (fBoundaryProcs[SameMaterial] > 0) { + if(fBoundaryProcs[SameMaterial] > 0) + { G4cout << " Same material: " << std::setw(8) << fBoundaryProcs[SameMaterial] << G4endl; } - if (fBoundaryProcs[StepTooSmall] > 0) { + if(fBoundaryProcs[StepTooSmall] > 0) + { G4cout << " Step too small: " << std::setw(8) << fBoundaryProcs[StepTooSmall] << G4endl; } - if (fBoundaryProcs[NoRINDEX] > 0) { + if(fBoundaryProcs[NoRINDEX] > 0) + { G4cout << " No RINDEX: " << std::setw(8) << fBoundaryProcs[NoRINDEX] << G4endl; } // LBNL polished - if (fBoundaryProcs[PolishedLumirrorAirReflection] > 0) { + if(fBoundaryProcs[PolishedLumirrorAirReflection] > 0) + { G4cout << " Polished Lumirror Air reflection: " << std::setw(8) << fBoundaryProcs[PolishedLumirrorAirReflection] << G4endl; } - if (fBoundaryProcs[PolishedLumirrorGlueReflection] > 0) { + if(fBoundaryProcs[PolishedLumirrorGlueReflection] > 0) + { G4cout << " Polished Lumirror Glue reflection: " << std::setw(8) << fBoundaryProcs[PolishedLumirrorGlueReflection] << G4endl; } - if (fBoundaryProcs[PolishedAirReflection] > 0) { + if(fBoundaryProcs[PolishedAirReflection] > 0) + { G4cout << " Polished Air reflection: " << std::setw(8) << fBoundaryProcs[PolishedAirReflection] << G4endl; } - if (fBoundaryProcs[PolishedTeflonAirReflection] > 0) { + if(fBoundaryProcs[PolishedTeflonAirReflection] > 0) + { G4cout << " Polished Teflon Air reflection: " << std::setw(8) << fBoundaryProcs[PolishedTeflonAirReflection] << G4endl; } - if (fBoundaryProcs[PolishedTiOAirReflection] > 0) { + if(fBoundaryProcs[PolishedTiOAirReflection] > 0) + { G4cout << " Polished TiO Air reflection: " << std::setw(8) << fBoundaryProcs[PolishedTiOAirReflection] << G4endl; } - if (fBoundaryProcs[PolishedTyvekAirReflection] > 0) { + if(fBoundaryProcs[PolishedTyvekAirReflection] > 0) + { G4cout << " Polished Tyvek Air reflection: " << std::setw(8) << fBoundaryProcs[PolishedTyvekAirReflection] << G4endl; } - if (fBoundaryProcs[PolishedVM2000AirReflection] > 0) { + if(fBoundaryProcs[PolishedVM2000AirReflection] > 0) + { G4cout << " Polished VM2000 Air reflection: " << std::setw(8) << fBoundaryProcs[PolishedVM2000AirReflection] << G4endl; } - if (fBoundaryProcs[PolishedVM2000GlueReflection] > 0) { + if(fBoundaryProcs[PolishedVM2000GlueReflection] > 0) + { G4cout << " Polished VM2000 Glue reflection: " << std::setw(8) << fBoundaryProcs[PolishedVM2000GlueReflection] << G4endl; } // LBNL etched - if (fBoundaryProcs[EtchedLumirrorAirReflection] > 0) { + if(fBoundaryProcs[EtchedLumirrorAirReflection] > 0) + { G4cout << " Etched Lumirror Air reflection: " << std::setw(8) << fBoundaryProcs[EtchedLumirrorAirReflection] << G4endl; } - if (fBoundaryProcs[EtchedLumirrorGlueReflection] > 0) { + if(fBoundaryProcs[EtchedLumirrorGlueReflection] > 0) + { G4cout << " Etched Lumirror Glue reflection: " << std::setw(8) << fBoundaryProcs[EtchedLumirrorGlueReflection] << G4endl; } - if (fBoundaryProcs[EtchedAirReflection] > 0) { + if(fBoundaryProcs[EtchedAirReflection] > 0) + { G4cout << " Etched Air reflection: " << std::setw(8) << fBoundaryProcs[EtchedAirReflection] << G4endl; } - if (fBoundaryProcs[EtchedTeflonAirReflection] > 0) { + if(fBoundaryProcs[EtchedTeflonAirReflection] > 0) + { G4cout << " Etched Teflon Air reflection: " << std::setw(8) << fBoundaryProcs[EtchedTeflonAirReflection] << G4endl; } - if (fBoundaryProcs[EtchedTiOAirReflection] > 0) { + if(fBoundaryProcs[EtchedTiOAirReflection] > 0) + { G4cout << " Etched TiO Air reflection: " << std::setw(8) << fBoundaryProcs[EtchedTiOAirReflection] << G4endl; } - if (fBoundaryProcs[EtchedTyvekAirReflection] > 0) { + if(fBoundaryProcs[EtchedTyvekAirReflection] > 0) + { G4cout << " Etched Tyvek Air reflection: " << std::setw(8) << fBoundaryProcs[EtchedTyvekAirReflection] << G4endl; } - if (fBoundaryProcs[EtchedVM2000AirReflection] > 0) { + if(fBoundaryProcs[EtchedVM2000AirReflection] > 0) + { G4cout << " Etched VM2000 Air reflection: " << std::setw(8) << fBoundaryProcs[EtchedVM2000AirReflection] << G4endl; } - if (fBoundaryProcs[EtchedVM2000GlueReflection] > 0) { + if(fBoundaryProcs[EtchedVM2000GlueReflection] > 0) + { G4cout << " Etched VM2000 Glue reflection: " << std::setw(8) << fBoundaryProcs[EtchedVM2000GlueReflection] << G4endl; } // LBNL ground - if (fBoundaryProcs[GroundLumirrorAirReflection] > 0) { + if(fBoundaryProcs[GroundLumirrorAirReflection] > 0) + { G4cout << " Ground Lumirror Air reflection: " << std::setw(8) << fBoundaryProcs[GroundLumirrorAirReflection] << G4endl; } - if (fBoundaryProcs[GroundLumirrorGlueReflection] > 0) { + if(fBoundaryProcs[GroundLumirrorGlueReflection] > 0) + { G4cout << " Ground Lumirror Glue reflection: " << std::setw(8) << fBoundaryProcs[GroundLumirrorGlueReflection] << G4endl; } - if (fBoundaryProcs[GroundAirReflection] > 0) { + if(fBoundaryProcs[GroundAirReflection] > 0) + { G4cout << " Ground Air reflection: " << std::setw(8) << fBoundaryProcs[GroundAirReflection] << G4endl; } - if (fBoundaryProcs[GroundTeflonAirReflection] > 0) { + if(fBoundaryProcs[GroundTeflonAirReflection] > 0) + { G4cout << " Ground Teflon Air reflection: " << std::setw(8) << fBoundaryProcs[GroundTeflonAirReflection] << G4endl; } - if (fBoundaryProcs[GroundTiOAirReflection] > 0) { + if(fBoundaryProcs[GroundTiOAirReflection] > 0) + { G4cout << " Ground TiO Air reflection: " << std::setw(8) << fBoundaryProcs[GroundTiOAirReflection] << G4endl; } - if (fBoundaryProcs[GroundTyvekAirReflection] > 0) { + if(fBoundaryProcs[GroundTyvekAirReflection] > 0) + { G4cout << " Ground Tyvek Air reflection: " << std::setw(8) << fBoundaryProcs[GroundTyvekAirReflection] << G4endl; } - if (fBoundaryProcs[GroundVM2000AirReflection] > 0) { + if(fBoundaryProcs[GroundVM2000AirReflection] > 0) + { G4cout << " Ground VM2000 Air reflection: " << std::setw(8) << fBoundaryProcs[GroundVM2000AirReflection] << G4endl; } - if (fBoundaryProcs[GroundVM2000GlueReflection] > 0) { + if(fBoundaryProcs[GroundVM2000GlueReflection] > 0) + { G4cout << " Ground VM2000 Glue reflection: " << std::setw(8) << fBoundaryProcs[GroundVM2000GlueReflection] << G4endl; } @@ -372,8 +516,134 @@ void Run::EndOfRun() G4cout << " Unaccounted for: " << std::setw(8) << fTotalSurface - sum << G4endl; - G4cout << "---------------------------------\n"; - + G4cout << "---------------------------------\n"; G4cout.setf(mode, std::ios::floatfield); G4cout.precision(prec); + + G4int histo_id_trans = analysisMan->GetH1Id("Transmitted"); + G4int histo_id_refl = analysisMan->GetH1Id("Reflected"); + if(analysisMan->GetH1Activation(histo_id_trans)) + { + if(fPolarized) + { + G4double rindex1 = det->GetTankMaterial() + ->GetMaterialPropertiesTable() + ->GetProperty(kRINDEX) + ->Value(fEkin); + G4double rindex2 = det->GetWorldMaterial() + ->GetMaterialPropertiesTable() + ->GetProperty(kRINDEX) + ->Value(fEkin); + + G4H1* histo_trans = analysisMan->GetH1(histo_id_trans); + G4H1* histo_refl = analysisMan->GetH1(histo_id_refl); + std::vector trans; + std::vector refl; + std::vector tot; + for(size_t i = 0; i < histo_trans->axis().bins(); ++i) + { + trans.push_back(histo_trans->bin_height(i)); + refl.push_back(histo_refl->bin_height(i)); + tot.push_back(histo_trans->bin_height(i) + histo_refl->bin_height(i)); + } + + // find Brewster angle: Rp = 0 + // need enough statistics for this method to work + G4double min_angle = -1.; + G4double min_val = DBL_MAX; + G4double bin_width = 0.; + for(size_t i = 0; i < refl.size(); ++i) + { + if(refl[i] < min_val) + { + min_val = refl[i]; + min_angle = histo_refl->axis().bin_lower_edge(i); + bin_width = histo_refl->axis().bin_upper_edge(i) - + histo_refl->axis().bin_lower_edge(i); + min_angle += bin_width / 2.; + } + } + G4cout << "Polarization of primary optical photons: " + << fPolarization / deg << " deg." << G4endl; + if(fPolarization == 0.0) + { + G4cout << "Reflectance shows a minimum at: " << min_angle << " +/- " + << bin_width / 2; + G4cout << " deg. Expected Brewster angle: " + << (360. / CLHEP::twopi) * std::atan(rindex2 / rindex1) + << " deg. " << G4endl; + } + + // find angle of total internal reflection: T -> 0 + // last bin for T > 0 + min_angle = -1.; + min_val = DBL_MAX; + for(size_t i = 0; i < histo_trans->axis().bins() - 1; ++i) + { + if(histo_trans->bin_height(i) > 0. && + histo_trans->bin_height(i + 1) == 0.) + { + min_angle = histo_trans->axis().bin_lower_edge(i); + bin_width = histo_refl->axis().bin_upper_edge(i) - + histo_refl->axis().bin_lower_edge(i); + min_angle += bin_width / 2.; + break; + } + } + G4cout << "Transmission goes to 0 at: " << min_angle << " +/- " + << bin_width / 2. << " deg." + << " Expected: " + << (360. / CLHEP::twopi) * std::asin(rindex2 / rindex1) << " deg." + << G4endl; + + // Normalize the transmission/reflection histos so that max is 1. + // Only if x values are the same + if((analysisMan->GetH1Nbins(histo_id_trans) == + analysisMan->GetH1Nbins(histo_id_refl)) && + (analysisMan->GetH1Xmin(histo_id_trans) == + analysisMan->GetH1Xmin(histo_id_refl)) && + (analysisMan->GetH1Xmax(histo_id_trans) == + analysisMan->GetH1Xmax(histo_id_refl))) + { + unsigned int ent; + G4double sw; + G4double sw2; + G4double sx2; + G4double sx2w; + for(size_t bin = 0; bin < histo_trans->axis().bins(); ++bin) + { + // "bin+1" below because bin 0 is underflow bin + // NB. We are ignoring underflow/overflow bins + histo_trans->get_bin_content(bin + 1, ent, sw, sw2, sx2, sx2w); + if(tot[bin] > 0) + { + sw /= tot[bin]; + // bin error is sqrt(sw2) + sw2 /= (tot[bin] * tot[bin]); + sx2 /= (tot[bin] * tot[bin]); + sx2w /= (tot[bin] * tot[bin]); + histo_trans->set_bin_content(bin + 1, ent, sw, sw2, sx2, sx2w); + } + } + for(size_t bin = 0; bin < histo_refl->axis().bins(); ++bin) + { + histo_refl->get_bin_content(bin + 1, ent, sw, sw2, sx2, sx2w); + if(tot[bin] > 0) + { + sw /= tot[bin]; + // bin error is sqrt(sw2) + sw2 /= (tot[bin] * tot[bin]); + sx2 /= (tot[bin] * tot[bin]); + sx2w /= (tot[bin] * tot[bin]); + histo_refl->set_bin_content(bin + 1, ent, sw, sw2, sx2, sx2w); + } + } + } + else + { + G4cout << "Not going to normalize transmission and reflection " + << "histograms because bins are not the same." << G4endl; + } + } + } } diff --git a/examples/extended/optical/OpNovice2/src/RunAction.cc b/examples/extended/optical/OpNovice2/src/RunAction.cc index d7a7eaeae4..c3ad31c794 100644 --- a/examples/extended/optical/OpNovice2/src/RunAction.cc +++ b/examples/extended/optical/OpNovice2/src/RunAction.cc @@ -26,40 +26,33 @@ /// \file optical/OpNovice2/src/RunAction.cc /// \brief Implementation of the RunAction class // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -// Make this appear first! -#include "G4Timer.hh" - #include "RunAction.hh" + #include "HistoManager.hh" #include "PrimaryGeneratorAction.hh" - #include "Run.hh" + #include "G4Run.hh" +#include "G4UnitsTable.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... RunAction::RunAction(PrimaryGeneratorAction* prim) - : G4UserRunAction(), - fTimer(nullptr), - fRun(nullptr), - fHistoManager(nullptr), - fPrimary(prim) + : G4UserRunAction() + , fRun(nullptr) + , fHistoManager(nullptr) + , fPrimary(prim) { - fTimer = new G4Timer; fHistoManager = new HistoManager(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -RunAction::~RunAction() -{ - delete fTimer; - delete fHistoManager; -} +RunAction::~RunAction() { delete fHistoManager; } G4Run* RunAction::GenerateRun() { @@ -69,39 +62,198 @@ G4Run* RunAction::GenerateRun() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void RunAction::BeginOfRunAction(const G4Run* aRun) +void RunAction::BeginOfRunAction(const G4Run*) { - G4cout << "### Run " << aRun->GetRunID() << " start." << G4endl; - - if (fPrimary) { - G4ParticleDefinition* particle = + if(fPrimary) + { + G4ParticleDefinition* particle = fPrimary->GetParticleGun()->GetParticleDefinition(); - G4double energy = fPrimary->GetParticleGun()->GetParticleEnergy(); - fRun->SetPrimary(particle, energy); + G4double energy = fPrimary->GetParticleGun()->GetParticleEnergy(); + G4bool polarized = fPrimary->GetPolarized(); + G4double polarization = fPrimary->GetPolarization(); + fRun->SetPrimary(particle, energy, polarized, polarization); } - //histograms + // histograms G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); - if (analysisManager->IsActive()) { + if(analysisManager->IsActive()) + { analysisManager->OpenFile(); } - - fTimer->Start(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void RunAction::EndOfRunAction(const G4Run* aRun) +void RunAction::EndOfRunAction(const G4Run*) { - fTimer->Stop(); - G4cout << "number of event = " << aRun->GetNumberOfEvent() - << " " << *fTimer << G4endl; + if(isMaster) + fRun->EndOfRun(); - if (isMaster) fRun->EndOfRun(); - - // save histograms G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); - if (analysisManager->IsActive()) { + + G4cout << G4endl << " Histogram statistics for the "; + if(isMaster) + { + G4cout << "entire run:" << G4endl << G4endl; + } + else + { + G4cout << "local thread:" << G4endl << G4endl; + } + + G4int id = analysisManager->GetH1Id("Cerenkov spectrum"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " Cerenkov spectrum: mean = " + << analysisManager->GetH1(id)->mean() + << " eV; rms = " << analysisManager->GetH1(id)->rms() << " eV." + << G4endl; + } + id = analysisManager->GetH1Id("Scintillation spectrum"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " Scintillation spectrum: mean = " + << analysisManager->GetH1(id)->mean() + << " eV; rms = " << analysisManager->GetH1(id)->rms() << " eV." + << G4endl; + } + id = analysisManager->GetH1Id("Scintillation time"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " Scintillation time: mean = " + << analysisManager->GetH1(id)->mean() + << " ns; rms = " << analysisManager->GetH1(id)->rms() << " ns." + << G4endl; + } + id = analysisManager->GetH1Id("WLS abs"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " WLS absorption spectrum: mean = " + << analysisManager->GetH1(id)->mean() + << " eV; rms = " << analysisManager->GetH1(id)->rms() << " eV." + << G4endl; + } + id = analysisManager->GetH1Id("WLS em"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " WLS emission spectrum: mean = " + << analysisManager->GetH1(id)->mean() + << " eV; rms = " << analysisManager->GetH1(id)->rms() << " eV." + << G4endl; + } + id = analysisManager->GetH1Id("WLS time"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " WLS emission time: mean = " + << analysisManager->GetH1(id)->mean() + << " ns; rms = " << analysisManager->GetH1(id)->rms() << " ns." + << G4endl; + } + id = analysisManager->GetH1Id("WLS2 abs"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " WLS emission time: mean = " + << analysisManager->GetH1(id)->mean() + << " ns; rms = " << analysisManager->GetH1(id)->rms() << " ns." + << G4endl; + } + id = analysisManager->GetH1Id("WLS2 em"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " WLS2 emission spectrum: mean = " + << analysisManager->GetH1(id)->mean() + << " eV; rms = " << analysisManager->GetH1(id)->rms() << " eV." + << G4endl; + } + id = analysisManager->GetH1Id("WLS2 time"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " WLS2 emission time: mean = " + << analysisManager->GetH1(id)->mean() + << " ns; rms = " << analysisManager->GetH1(id)->rms() << " ns." + << G4endl; + } + id = analysisManager->GetH1Id("x_backward"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " X momentum dir of backward-going photons: mean = " + << analysisManager->GetH1(id)->mean() + << "; rms = " << analysisManager->GetH1(id)->rms() << G4endl; + } + id = analysisManager->GetH1Id("y_backward"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " Y momentum dir of backward-going photons: mean = " + << analysisManager->GetH1(id)->mean() + << "; rms = " << analysisManager->GetH1(id)->rms() << G4endl; + } + id = analysisManager->GetH1Id("z_backward"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " Z momentum dir of backward-going photons: mean = " + << analysisManager->GetH1(id)->mean() + << "; rms = " << analysisManager->GetH1(id)->rms() << G4endl; + } + id = analysisManager->GetH1Id("x_forward"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " X momentum dir of forward-going photons: mean = " + << analysisManager->GetH1(id)->mean() + << "; rms = " << analysisManager->GetH1(id)->rms() << G4endl; + } + id = analysisManager->GetH1Id("y_forward"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " Y momentum dir of forward-going photons: mean = " + << analysisManager->GetH1(id)->mean() + << "; rms = " << analysisManager->GetH1(id)->rms() << G4endl; + } + id = analysisManager->GetH1Id("z_forward"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " Z momentum dir of forward-going photons: mean = " + << analysisManager->GetH1(id)->mean() + << "; rms = " << analysisManager->GetH1(id)->rms() << G4endl; + } + id = analysisManager->GetH1Id("x_fresnel"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " X momentum dir of Fresnel-refracted photons: mean = " + << analysisManager->GetH1(id)->mean() + << "; rms = " << analysisManager->GetH1(id)->rms() << G4endl; + } + id = analysisManager->GetH1Id("y_fresnel"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " Y momentum dir of Fresnel-refracted photons: mean = " + << analysisManager->GetH1(id)->mean() + << "; rms = " << analysisManager->GetH1(id)->rms() << G4endl; + } + id = analysisManager->GetH1Id("z_fresnel"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " Z momentum dir of Fresnel-refracted photons: mean = " + << analysisManager->GetH1(id)->mean() + << "; rms = " << analysisManager->GetH1(id)->rms() << G4endl; + } + id = analysisManager->GetH1Id("Transmitted"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " Angle of transmitted photons: mean = " + << analysisManager->GetH1(id)->mean() + << "; rms = " << analysisManager->GetH1(id)->rms() << G4endl; + } + id = analysisManager->GetH1Id("Reflected"); + if(analysisManager->GetH1Activation(id)) + { + G4cout << " Angle of reflected photons: mean = " + << analysisManager->GetH1(id)->mean() + << "; rms = " << analysisManager->GetH1(id)->rms() << G4endl; + } + G4cout << G4endl; + + if(analysisManager->IsActive()) + { analysisManager->Write(); analysisManager->CloseFile(); } diff --git a/examples/extended/optical/OpNovice2/src/SteppingAction.cc b/examples/extended/optical/OpNovice2/src/SteppingAction.cc index ef3f93c39d..2798d2a855 100644 --- a/examples/extended/optical/OpNovice2/src/SteppingAction.cc +++ b/examples/extended/optical/OpNovice2/src/SteppingAction.cc @@ -30,333 +30,358 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #include "SteppingAction.hh" -//#include "EventAction.hh" + #include "HistoManager.hh" -#include "TrackInformation.hh" #include "Run.hh" +#include "TrackInformation.hh" #include "G4Cerenkov.hh" -#include "G4Scintillation.hh" -#include "G4OpBoundaryProcess.hh" - -#include "G4Step.hh" -#include "G4Track.hh" -#include "G4OpticalPhoton.hh" #include "G4Event.hh" #include "G4EventManager.hh" -#include "G4SteppingManager.hh" -#include "G4RunManager.hh" +#include "G4Scintillation.hh" +#include "G4OpBoundaryProcess.hh" +#include "G4OpticalPhoton.hh" #include "G4ProcessManager.hh" - +#include "G4Step.hh" +#include "G4SteppingManager.hh" #include "G4SystemOfUnits.hh" +#include "G4Track.hh" +#include "G4RunManager.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... SteppingAction::SteppingAction() -: G4UserSteppingAction(), - fVerbose(0) + : G4UserSteppingAction() + , fVerbose(0) {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -SteppingAction::~SteppingAction() -{} +SteppingAction::~SteppingAction() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void SteppingAction::UserSteppingAction(const G4Step* step) { static G4ParticleDefinition* opticalphoton = - G4OpticalPhoton::OpticalPhotonDefinition(); + G4OpticalPhoton::OpticalPhotonDefinition(); G4AnalysisManager* analysisMan = G4AnalysisManager::Instance(); - Run* run = static_cast( - G4RunManager::GetRunManager()->GetNonConstCurrentRun()); + Run* run = + static_cast(G4RunManager::GetRunManager()->GetNonConstCurrentRun()); - G4Track* track = step->GetTrack(); + G4Track* track = step->GetTrack(); G4StepPoint* endPoint = step->GetPostStepPoint(); G4StepPoint* startPoint = step->GetPreStepPoint(); const G4DynamicParticle* theParticle = track->GetDynamicParticle(); - const G4ParticleDefinition* particleDef = theParticle-> - GetParticleDefinition(); + const G4ParticleDefinition* particleDef = + theParticle->GetParticleDefinition(); TrackInformation* trackInfo = - (TrackInformation*)(track->GetUserInformation()); + (TrackInformation*) (track->GetUserInformation()); - if (particleDef == opticalphoton) { + if(particleDef == opticalphoton) + { const G4VProcess* pds = endPoint->GetProcessDefinedStep(); - G4String procname = pds->GetProcessName(); - if (procname.compare("OpAbsorption") == 0) { + G4String procname = pds->GetProcessName(); + if(procname.compare("OpAbsorption") == 0) + { run->AddOpAbsorption(); - if (trackInfo->GetIsFirstTankX()) { + if(trackInfo->GetIsFirstTankX()) + { run->AddOpAbsorptionPrior(); } - } - else if (procname.compare("OpRayleigh") == 0) { + } + else if(procname.compare("OpRayleigh") == 0) + { run->AddRayleigh(); } - else if (procname.compare("OpWLS") == 0) { + else if(procname.compare("OpWLS") == 0) + { G4double en = track->GetKineticEnergy(); run->AddWLSAbsorption(); run->AddWLSAbsorptionEnergy(en); - analysisMan->FillH1(4, en/eV); //absorption energy + analysisMan->FillH1(4, en / eV); // absorption energy // loop over secondaries, create statistics - //const std::vector* secondaries = + // const std::vector* secondaries = auto secondaries = step->GetSecondaryInCurrentStep(); - for (auto sec : *secondaries) { + for(auto sec : *secondaries) + { en = sec->GetKineticEnergy(); run->AddWLSEmission(); run->AddWLSEmissionEnergy(en); - analysisMan->FillH1(5, en/eV); // emission energy + analysisMan->FillH1(5, en / eV); // emission energy G4double time = sec->GetGlobalTime(); - analysisMan->FillH1(6, time/ns); + analysisMan->FillH1(6, time / ns); } } - else if (procname.compare("OpWLS2") == 0) { + else if(procname.compare("OpWLS2") == 0) + { G4double en = track->GetKineticEnergy(); run->AddWLS2Absorption(); run->AddWLS2AbsorptionEnergy(en); - analysisMan->FillH1(7, en/eV); //absorption energy + analysisMan->FillH1(7, en / eV); // absorption energy // loop over secondaries, create statistics - //const std::vector* secondaries = + // const std::vector* secondaries = auto secondaries = step->GetSecondaryInCurrentStep(); - for (auto sec : *secondaries) { + for(auto sec : *secondaries) + { en = sec->GetKineticEnergy(); run->AddWLS2Emission(); run->AddWLS2EmissionEnergy(en); - analysisMan->FillH1(8, en/eV); // emission energy + analysisMan->FillH1(8, en / eV); // emission energy G4double time = sec->GetGlobalTime(); - analysisMan->FillH1(9, time/ns); + analysisMan->FillH1(9, time / ns); } } - // optical process has endpt on bdry, - if (endPoint->GetStepStatus() == fGeomBoundary) { - + // optical process has endpt on bdry, + if(endPoint->GetStepStatus() == fGeomBoundary) + { G4ThreeVector m0 = startPoint->GetMomentumDirection(); G4ThreeVector m1 = endPoint->GetMomentumDirection(); G4OpBoundaryProcessStatus theStatus = Undefined; G4ProcessManager* OpManager = opticalphoton->GetProcessManager(); - G4int MAXofPostStepLoops = - OpManager->GetPostStepProcessVector()->entries(); - G4ProcessVector* postStepDoItVector = + G4ProcessVector* postStepDoItVector = OpManager->GetPostStepProcessVector(typeDoIt); + G4int n_proc = postStepDoItVector->entries(); - if (trackInfo->GetIsFirstTankX()) { + if(trackInfo->GetIsFirstTankX()) + { G4ThreeVector momdir = endPoint->GetMomentumDirection(); - G4double px1 = momdir.x(); - G4double py1 = momdir.y(); - G4double pz1 = momdir.z(); - if (px1 < 0.) { + G4double px1 = momdir.x(); + G4double py1 = momdir.y(); + G4double pz1 = momdir.z(); + if(px1 < 0.) + { analysisMan->FillH1(11, px1); analysisMan->FillH1(12, py1); analysisMan->FillH1(13, pz1); - } else { + } + else + { analysisMan->FillH1(14, px1); analysisMan->FillH1(15, py1); analysisMan->FillH1(16, pz1); } trackInfo->SetIsFirstTankX(false); - run->AddTotalSurface(); + run->AddTotalSurface(); - for (G4int i=0; i(currentProcess); - if (opProc) { - theStatus = opProc->GetStatus(); + if(opProc) + { + G4double angle = std::acos(startPoint->GetMomentumDirection().x()); + theStatus = opProc->GetStatus(); analysisMan->FillH1(10, theStatus); - if (theStatus == Transmission) { - run->AddTransmission(); - } - else if (theStatus == FresnelRefraction) { - run->AddFresnelRefraction(); - analysisMan->FillH1(17, px1); - analysisMan->FillH1(18, py1); - analysisMan->FillH1(19, pz1); - } - else if (theStatus == FresnelReflection) { - run->AddFresnelReflection(); - } - else if (theStatus == TotalInternalReflection) { - run->AddTotalInternalReflection(); - } - else if (theStatus == LambertianReflection) { - run->AddLambertianReflection(); - } - else if (theStatus == LobeReflection) { - run->AddLobeReflection(); - } - else if (theStatus == SpikeReflection) { - run->AddSpikeReflection(); - } - else if (theStatus == BackScattering) { - run->AddBackScattering(); - } - else if (theStatus == Absorption) { - run->AddAbsorption(); - } - else if (theStatus == Detection) { - run->AddDetection(); - } - else if (theStatus == NotAtBoundary) { - run->AddNotAtBoundary(); - } - else if (theStatus == SameMaterial) { - run->AddSameMaterial(); - } - else if (theStatus == StepTooSmall) { - run->AddStepTooSmall(); - } - else if (theStatus == NoRINDEX) { - run->AddNoRINDEX(); - } - else if (theStatus == PolishedLumirrorAirReflection) { - run->AddPolishedLumirrorAirReflection(); - } - else if (theStatus == PolishedLumirrorGlueReflection) { - run->AddPolishedLumirrorGlueReflection(); - } - else if (theStatus == PolishedAirReflection) { - run->AddPolishedAirReflection(); - } - else if (theStatus == PolishedTeflonAirReflection) { - run->AddPolishedTeflonAirReflection(); - } - else if (theStatus == PolishedTiOAirReflection) { - run->AddPolishedTiOAirReflection(); - } - else if (theStatus == PolishedTyvekAirReflection) { - run->AddPolishedTyvekAirReflection(); - } - else if (theStatus == PolishedVM2000AirReflection) { - run->AddPolishedVM2000AirReflection(); - } - else if (theStatus == PolishedVM2000GlueReflection) { - run->AddPolishedVM2000AirReflection(); - } - else if (theStatus == EtchedLumirrorAirReflection) { - run->AddEtchedLumirrorAirReflection(); - } - else if (theStatus == EtchedLumirrorGlueReflection) { - run->AddEtchedLumirrorGlueReflection(); - } - else if (theStatus == EtchedAirReflection) { - run->AddEtchedAirReflection(); - } - else if (theStatus == EtchedTeflonAirReflection) { - run->AddEtchedTeflonAirReflection(); - } - else if (theStatus == EtchedTiOAirReflection) { - run->AddEtchedTiOAirReflection(); - } - else if (theStatus == EtchedTyvekAirReflection) { - run->AddEtchedTyvekAirReflection(); - } - else if (theStatus == EtchedVM2000AirReflection) { - run->AddEtchedVM2000AirReflection(); - } - else if (theStatus == EtchedVM2000GlueReflection) { - run->AddEtchedVM2000AirReflection(); - } - else if (theStatus == GroundLumirrorAirReflection) { - run->AddGroundLumirrorAirReflection(); - } - else if (theStatus == GroundLumirrorGlueReflection) { - run->AddGroundLumirrorGlueReflection(); - } - else if (theStatus == GroundAirReflection) { - run->AddGroundAirReflection(); - } - else if (theStatus == GroundTeflonAirReflection) { - run->AddGroundTeflonAirReflection(); - } - else if (theStatus == GroundTiOAirReflection) { - run->AddGroundTiOAirReflection(); - } - else if (theStatus == GroundTyvekAirReflection) { - run->AddGroundTyvekAirReflection(); - } - else if (theStatus == GroundVM2000AirReflection) { - run->AddGroundVM2000AirReflection(); - } - else if (theStatus == GroundVM2000GlueReflection) { - run->AddGroundVM2000AirReflection(); - } - else if (theStatus == Dichroic) { - run->AddDichroic(); - } - - else { - G4cout << "theStatus: " << theStatus - << " was none of the above." << G4endl; - } + switch(theStatus) + { + case Transmission: + run->AddTransmission(); + break; + case FresnelRefraction: + run->AddFresnelRefraction(); + analysisMan->FillH1(17, px1); + analysisMan->FillH1(18, py1); + analysisMan->FillH1(19, pz1); + // transmission + analysisMan->FillH1(20, angle / deg); + break; + case FresnelReflection: + run->AddFresnelReflection(); + analysisMan->FillH1(21, angle / deg); + break; + case TotalInternalReflection: + run->AddTotalInternalReflection(); + analysisMan->FillH1(21, angle / deg); + break; + case LambertianReflection: + run->AddLambertianReflection(); + break; + case LobeReflection: + run->AddLobeReflection(); + break; + case SpikeReflection: + run->AddSpikeReflection(); + break; + case BackScattering: + run->AddBackScattering(); + break; + case Absorption: + run->AddAbsorption(); + break; + case Detection: + run->AddDetection(); + break; + case NotAtBoundary: + run->AddNotAtBoundary(); + break; + case SameMaterial: + run->AddSameMaterial(); + break; + case StepTooSmall: + run->AddStepTooSmall(); + break; + case NoRINDEX: + run->AddNoRINDEX(); + break; + case PolishedLumirrorAirReflection: + run->AddPolishedLumirrorAirReflection(); + break; + case PolishedLumirrorGlueReflection: + run->AddPolishedLumirrorGlueReflection(); + break; + case PolishedAirReflection: + run->AddPolishedAirReflection(); + break; + case PolishedTeflonAirReflection: + run->AddPolishedTeflonAirReflection(); + break; + case PolishedTiOAirReflection: + run->AddPolishedTiOAirReflection(); + break; + case PolishedTyvekAirReflection: + run->AddPolishedTyvekAirReflection(); + break; + case PolishedVM2000AirReflection: + run->AddPolishedVM2000AirReflection(); + break; + case PolishedVM2000GlueReflection: + run->AddPolishedVM2000AirReflection(); + break; + case EtchedLumirrorAirReflection: + run->AddEtchedLumirrorAirReflection(); + break; + case EtchedLumirrorGlueReflection: + run->AddEtchedLumirrorGlueReflection(); + break; + case EtchedAirReflection: + run->AddEtchedAirReflection(); + break; + case EtchedTeflonAirReflection: + run->AddEtchedTeflonAirReflection(); + break; + case EtchedTiOAirReflection: + run->AddEtchedTiOAirReflection(); + break; + case EtchedTyvekAirReflection: + run->AddEtchedTyvekAirReflection(); + break; + case EtchedVM2000AirReflection: + run->AddEtchedVM2000AirReflection(); + break; + case EtchedVM2000GlueReflection: + run->AddEtchedVM2000AirReflection(); + break; + case GroundLumirrorAirReflection: + run->AddGroundLumirrorAirReflection(); + break; + case GroundLumirrorGlueReflection: + run->AddGroundLumirrorGlueReflection(); + break; + case GroundAirReflection: + run->AddGroundAirReflection(); + break; + case GroundTeflonAirReflection: + run->AddGroundTeflonAirReflection(); + break; + case GroundTiOAirReflection: + run->AddGroundTiOAirReflection(); + break; + case GroundTyvekAirReflection: + run->AddGroundTyvekAirReflection(); + break; + case GroundVM2000AirReflection: + run->AddGroundVM2000AirReflection(); + break; + case GroundVM2000GlueReflection: + run->AddGroundVM2000AirReflection(); + break; + case Dichroic: + run->AddDichroic(); + break; + default: + G4cout << "theStatus: " << theStatus + << " was none of the above." << G4endl; + break; + } } } } } } - else { // particle != opticalphoton + else + { // particle != opticalphoton // print how many Cerenkov and scint photons produced this step // this demonstrates use of GetNumPhotons() - auto proc_man = track->GetDynamicParticle()->GetParticleDefinition() - ->GetProcessManager(); - G4int n_proc = proc_man->GetPostStepProcessVector()->entries(); + auto proc_man = + track->GetDynamicParticle()->GetParticleDefinition()->GetProcessManager(); G4ProcessVector* proc_vec = proc_man->GetPostStepProcessVector(typeDoIt); + G4int n_proc = proc_vec->entries(); G4int n_scint = 0; G4int n_cer = 0; - for (G4int i = 0; i < n_proc; ++i) { + for(G4int i = 0; i < n_proc; ++i) + { G4String proc_name = (*proc_vec)[i]->GetProcessName(); - if (proc_name.compare("Cerenkov") == 0) { - auto cer = (G4Cerenkov*)(*proc_vec)[i]; - n_cer = cer->GetNumPhotons(); + if(proc_name.compare("Cerenkov") == 0) + { + auto cer = (G4Cerenkov*) (*proc_vec)[i]; + n_cer = cer->GetNumPhotons(); } - else if (proc_name.compare("Scintillation") == 0) { - auto scint = (G4Scintillation*)(*proc_vec)[i]; - n_scint = scint->GetNumPhotons(); + else if(proc_name.compare("Scintillation") == 0) + { + auto scint = (G4Scintillation*) (*proc_vec)[i]; + n_scint = scint->GetNumPhotons(); } } - if (fVerbose > 0) { - if (n_cer > 0 || n_scint > 0) { - G4cout << "In this step, " << n_cer - << " Cerenkov and " << n_scint + if(fVerbose > 0) + { + if(n_cer > 0 || n_scint > 0) + { + G4cout << "In this step, " << n_cer << " Cerenkov and " << n_scint << " scintillation photons were produced." << G4endl; } } // loop over secondaries, create statistics const std::vector* secondaries = - step->GetSecondaryInCurrentStep(); + step->GetSecondaryInCurrentStep(); - for (auto sec : *secondaries) { - if (sec->GetDynamicParticle()->GetParticleDefinition() == opticalphoton){ + for(auto sec : *secondaries) + { + if(sec->GetDynamicParticle()->GetParticleDefinition() == opticalphoton) + { G4String creator_process = sec->GetCreatorProcess()->GetProcessName(); - if (creator_process.compare("Cerenkov") == 0){ + if(creator_process.compare("Cerenkov") == 0) + { G4double en = sec->GetKineticEnergy(); run->AddCerenkovEnergy(en); run->AddCerenkov(); - analysisMan->FillH1(1, en/eV); + analysisMan->FillH1(1, en / eV); } - else if (creator_process.compare("Scintillation") == 0) { + else if(creator_process.compare("Scintillation") == 0) + { G4double en = sec->GetKineticEnergy(); run->AddScintillationEnergy(en); run->AddScintillation(); - analysisMan->FillH1(2, en/eV); + analysisMan->FillH1(2, en / eV); G4double time = sec->GetGlobalTime(); - analysisMan->FillH1(3, time/ns); + analysisMan->FillH1(3, time / ns); } } } - } + } return; - } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice2/src/TrackInformation.cc b/examples/extended/optical/OpNovice2/src/TrackInformation.cc index ede3dd0a0e..869abc98eb 100644 --- a/examples/extended/optical/OpNovice2/src/TrackInformation.cc +++ b/examples/extended/optical/OpNovice2/src/TrackInformation.cc @@ -30,11 +30,13 @@ // #include "TrackInformation.hh" -#include "G4ios.hh" -#include "G4SystemOfUnits.hh" -G4ThreadLocal G4Allocator * - aTrackInformationAllocator = 0; +#include "G4ios.hh" +#include "G4SystemOfUnits.hh" +#include "G4Track.hh" + +G4ThreadLocal G4Allocator* aTrackInformationAllocator = + nullptr; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... TrackInformation::TrackInformation() @@ -51,19 +53,18 @@ TrackInformation::TrackInformation(const G4Track*) } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -TrackInformation ::TrackInformation(const TrackInformation* aTrackInfo) +TrackInformation::TrackInformation(const TrackInformation* aTrackInfo) : G4VUserTrackInformation() { fFirstTankX = aTrackInfo->fFirstTankX; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -TrackInformation::~TrackInformation() -{;} +TrackInformation::~TrackInformation() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -TrackInformation& TrackInformation::operator= - (const TrackInformation& aTrackInfo) +TrackInformation& TrackInformation::operator=( + const TrackInformation& aTrackInfo) { fFirstTankX = aTrackInfo.fFirstTankX; @@ -79,8 +80,7 @@ void TrackInformation::SetSourceTrackInformation(const G4Track*) //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void TrackInformation::Print() const { - G4cout - << "first time track incident on X: " << fFirstTankX << G4endl; + G4cout << "first time track incident on X: " << fFirstTankX << G4endl; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/optical/OpNovice2/src/TrackingAction.cc b/examples/extended/optical/OpNovice2/src/TrackingAction.cc index 22a5fc8b45..8faf1a73a5 100644 --- a/examples/extended/optical/OpNovice2/src/TrackingAction.cc +++ b/examples/extended/optical/OpNovice2/src/TrackingAction.cc @@ -29,45 +29,45 @@ // #include "TrackingAction.hh" + #include "TrackInformation.hh" -#include "G4TrackingManager.hh" #include "G4Track.hh" +#include "G4TrackingManager.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... TrackingAction::TrackingAction() -:G4UserTrackingAction() -{;} + : G4UserTrackingAction() +{} void TrackingAction::PreUserTrackingAction(const G4Track* aTrack) { // Create trajectory only for track in tracking region - TrackInformation* trackInfo = - (TrackInformation*)(aTrack->GetUserInformation()); + TrackInformation* trackInfo = + (TrackInformation*) (aTrack->GetUserInformation()); - if (!trackInfo) { - trackInfo = new TrackInformation(aTrack); + if(!trackInfo) + { + trackInfo = new TrackInformation(aTrack); trackInfo->SetIsFirstTankX(true); aTrack->SetUserInformation(trackInfo); } trackInfo->SetIsFirstTankX(true); - } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void TrackingAction::PostUserTrackingAction(const G4Track* aTrack) { G4TrackVector* secondaries = fpTrackingManager->GimmeSecondaries(); - if (secondaries) + if(secondaries) { - TrackInformation* info = - (TrackInformation*)(aTrack->GetUserInformation()); - size_t nSeco = secondaries->size(); - if (nSeco > 0) + TrackInformation* info = (TrackInformation*) (aTrack->GetUserInformation()); + size_t nSeco = secondaries->size(); + if(nSeco > 0) { - for(size_t i=0; i < nSeco; i++) - { + for(size_t i = 0; i < nSeco; ++i) + { TrackInformation* infoNew = new TrackInformation(info); (*secondaries)[i]->SetUserInformation(infoNew); } diff --git a/examples/extended/optical/OpNovice2/unified.mac b/examples/extended/optical/OpNovice2/unified.mac deleted file mode 100644 index 9869d951dc..0000000000 --- a/examples/extended/optical/OpNovice2/unified.mac +++ /dev/null @@ -1,86 +0,0 @@ -/control/verbose 2 -/tracking/verbose 0 - -/opnovice2/boxProperty RINDEX 0.000002 1.3 0.000008 1.4 -/opnovice2/boxProperty ABSLENGTH 0.000002 1000000 0.000005 2000000 0.000008 3000000 - -/opnovice2/worldProperty RINDEX 0.000002 1.01 0.000008 1.01 -/opnovice2/worldProperty ABSLENGTH 0.000002 1000000 0.000005 2000000 0.000008 3000000 - -/opnovice2/surfaceModel unified -/opnovice2/surfaceType dielectric_dielectric - -############################# ground ################################ -/opnovice2/surfaceFinish ground - -/opnovice2/surfaceSigmaAlpha 0.2 -/opnovice2/surfaceProperty SPECULARLOBECONSTANT 0.000002 0.1 0.000008 0.1 -/opnovice2/surfaceProperty SPECULARSPIKECONSTANT 0.000002 0.1 0.000008 0.1 -/opnovice2/surfaceProperty BACKSCATTERCONSTANT 0.000002 0.1 0.000008 0.1 - -/opnovice2/surfaceProperty TRANSMITTANCE 0.000002 0.1 0.000008 0.1 -/opnovice2/surfaceProperty REFLECTIVITY 0.000002 0.8 0.000008 0.8 -/opnovice2/surfaceProperty EFFICIENCY 0.000002 0.1 0.000008 0.1 - -/run/initialize -# -/gun/particle opticalphoton -/gun/energy 3 eV -/gun/position 0 0 0 cm -/gun/direction 1 0 0 -/opnovice2/gun/optPhotonPolar -# -/analysis/setFileName unified -/analysis/h1/set 10 40 -1 39 -/analysis/h1/set 11 100 -1.1 1.1 -/analysis/h1/set 12 100 -1.1 1.1 -/analysis/h1/set 13 100 -1.1 1.1 -/analysis/h1/set 14 100 -1.1 1.1 -/analysis/h1/set 15 100 -1.1 1.1 -/analysis/h1/set 16 100 -1.1 1.1 -/analysis/h1/set 17 100 -1.1 1.1 -/analysis/h1/set 18 100 -1.1 1.1 -/analysis/h1/set 19 100 -1.1 1.1 - -/run/beamOn 10000 - -############################# polished ######################################## -/opnovice2/surfaceFinish polished - -/run/initialize -/run/beamOn 10000 - -/opnovice2/surfaceConstProperty SURFACEROUGHNESS 0.01 -/run/initialize -/run/beamOn 10000 - -############################# painted ######################################### -/opnovice2/surfaceFinish polishedfrontpainted -/run/initialize -/run/beamOn 10000 - -/opnovice2/surfaceFinish polishedbackpainted -/opnovice2/surfaceSigmaAlpha 0.0 -/opnovice2/surfaceProperty RINDEX 0.000002 1.4 0.000008 1.5 -/run/initialize -/run/beamOn 10000 - -/opnovice2/surfaceFinish groundfrontpainted -/run/initialize -/run/beamOn 10000 - -/opnovice2/surfaceFinish groundbackpainted -/run/initialize -/run/beamOn 10000 - -############################# dielectric_metal ################################ -/opnovice2/surfaceType dielectric_metal -/opnovice2/surfaceFinish polished - -/run/initialize -/run/beamOn 10000 - -/opnovice2/surfaceFinish ground - -/run/initialize -/run/beamOn 10000 diff --git a/examples/extended/optical/OpNovice2/wls.mac b/examples/extended/optical/OpNovice2/wls.mac index 5adc093a4f..497dfd8f24 100644 --- a/examples/extended/optical/OpNovice2/wls.mac +++ b/examples/extended/optical/OpNovice2/wls.mac @@ -1,6 +1,7 @@ /control/verbose 2 /tracking/verbose 0 -/process/optical/verbose 0 +/run/verbose 1 +/process/optical/verbose 1 /control/cout/ignoreThreadsExcept 0 /opnovice2/boxMaterial G4_BGO @@ -28,25 +29,13 @@ /analysis/setFileName wls ## WLS process -/analysis/h1/set 4 100 0 10 -/analysis/h1/setXaxis 4 "Energy [eV]" -/analysis/h1/setYaxis 4 "Number of photons" -/analysis/h1/set 5 100 0 10 -/analysis/h1/setXaxis 5 "Energy [eV]" -/analysis/h1/setYaxis 5 "Number of photons" -/analysis/h1/set 6 100 0 10 -/analysis/h1/setXaxis 6 "Creation time [ns]" -/analysis/h1/setYaxis 6 "Number of photons" +/analysis/h1/set 4 100 0 10 # eV +/analysis/h1/set 5 100 0 10 # eV +/analysis/h1/set 6 100 0 10 # ns ## WLS2 process -/analysis/h1/set 7 100 0 10 -/analysis/h1/setXaxis 7 "Energy [eV]" -/analysis/h1/setYaxis 7 "Number of photons" -/analysis/h1/set 8 100 0 10 -/analysis/h1/setXaxis 8 "Energy [eV]" -/analysis/h1/setYaxis 8 "Number of photons" -/analysis/h1/set 9 100 0 50 -/analysis/h1/setXaxis 9 "Creation time [ns]" -/analysis/h1/setYaxis 9 "Number of photons" +/analysis/h1/set 7 100 0 10 # eV +/analysis/h1/set 8 100 0 10 # eV +/analysis/h1/set 9 100 0 50 # ns /gun/particle opticalphoton diff --git a/examples/extended/optical/wls/.README.txt b/examples/extended/optical/wls/.README.txt index f2cdd0f893..a9f993b44e 100644 --- a/examples/extended/optical/wls/.README.txt +++ b/examples/extended/optical/wls/.README.txt @@ -91,5 +91,13 @@ Idle> /run/beamOn 1 .... Idle> exit \endverbatim - + +\section Examplewls_s8 Macros provided + + - wls.in: sets up the default geometry and provides the commands to change it. + Primary particle is an optical photon with energy 2.1 eV. + - Sr90.mac: Default geometry is used. Primary particle is a strontium ion. + - vis.mac: macro for visualization; called automatically when no macro is + given on command line. + */ diff --git a/examples/extended/optical/wls/CMakeLists.txt b/examples/extended/optical/wls/CMakeLists.txt index 42f3d7c3b2..030acadef3 100644 --- a/examples/extended/optical/wls/CMakeLists.txt +++ b/examples/extended/optical/wls/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(wls) #---------------------------------------------------------------------------- @@ -42,7 +45,6 @@ target_link_libraries(wls ${Geant4_LIBRARIES} ) set(wls_SCRIPTS wls.out wls.in - init.in gui.mac Sr90.mac vis.mac diff --git a/examples/extended/optical/wls/History b/examples/extended/optical/wls/History index 28f20f718a..21c4a9396e 100644 --- a/examples/extended/optical/wls/History +++ b/examples/extended/optical/wls/History @@ -15,6 +15,17 @@ track of all tags. ---------------------------------------------------------- +November 5, 2020 D. Sawkey (WLS-V10-06-02) +- Large cleaning including clang-format style guidelines. +- Add counters to record run and event statistics. +- update macros + +November 3, 2020 D. Sawkey (WLS-V10-06-01) +- Add remaining material properties using new interface with sd::vectors + +August 4, 2020 D. Sawkey (WLS-V10-06-00) +- Add material properties using new interface with std::vectors + October 29, 2019 D. Sawkey (WLS-V10-05-01) - Use G4OpticalPhysics - Use G4SteppingVerbose diff --git a/examples/extended/optical/wls/README b/examples/extended/optical/wls/README index 8078046793..2f8bfb5813 100644 --- a/examples/extended/optical/wls/README +++ b/examples/extended/optical/wls/README @@ -85,7 +85,15 @@ They are: - wls in 'interactive mode' with visualization % wls .... - Idle> /control/execute vis.mac + Idle> /control/execute Idle> /run/beamOn 1 .... Idle> exit + +8- Macros provided + + - wls.in: sets up the default geometry and provides the commands to change it. + Primary particle is an optical photon with energy 2.1 eV. + - Sr90.mac: Default geometry is used. Primary particle is a strontium ion. + - vis.mac: macro for visualization; called automatically when no macro is + given on command line. diff --git a/examples/extended/optical/wls/Sr90.mac b/examples/extended/optical/wls/Sr90.mac index 80925ea9d5..cfc567f1f3 100644 --- a/examples/extended/optical/wls/Sr90.mac +++ b/examples/extended/optical/wls/Sr90.mac @@ -1,22 +1,17 @@ -#/control/verbose 1 - -#/run/verbose 1 -#/event/verbose 1 -#/tracking/verbose 1 +/control/verbose 1 +/run/verbose 1 +/event/verbose 1 +/tracking/verbose 0 +/process/optical/verbose 1 /run/initialize -#/WLS/phys/verbose 1 -#/WLS/setAbsorption f /gps/particle ion /gps/ion 38 90 0 0 /gps/energy 0 keV -#/gps/particle e- -#/gps/energy 1 MeV - /gps/pos/type Plane /gps/pos/shape Circle /gps/pos/radius 0.5 mm diff --git a/examples/extended/optical/wls/include/WLSActionInitialization.hh b/examples/extended/optical/wls/include/WLSActionInitialization.hh index ac1b561df8..b40962e71c 100644 --- a/examples/extended/optical/wls/include/WLSActionInitialization.hh +++ b/examples/extended/optical/wls/include/WLSActionInitialization.hh @@ -34,24 +34,17 @@ class WLSDetectorConstruction; -class B4DetectorConstruction; - -class G4GeneralParticleSource; - -/// Action initialization class. -/// - class WLSActionInitialization : public G4VUserActionInitialization { - public: - WLSActionInitialization(WLSDetectorConstruction*); - virtual ~WLSActionInitialization(); + public: + WLSActionInitialization(WLSDetectorConstruction*); + ~WLSActionInitialization(); - virtual void BuildForMaster() const; - virtual void Build() const; + void BuildForMaster() const override; + void Build() const override; - private: - WLSDetectorConstruction* fDetector; + private: + WLSDetectorConstruction* fDetector; }; #endif diff --git a/examples/extended/optical/wls/include/WLSDetectorConstruction.hh b/examples/extended/optical/wls/include/WLSDetectorConstruction.hh index 777b3f694f..4c544afd1c 100644 --- a/examples/extended/optical/wls/include/WLSDetectorConstruction.hh +++ b/examples/extended/optical/wls/include/WLSDetectorConstruction.hh @@ -35,179 +35,168 @@ #define WLSDetectorConstruction_h 1 #include "globals.hh" -#include "G4ios.hh" - +#include "G4Cache.hh" #include "G4RotationMatrix.hh" - -class G4Box; -class G4Tubs; -class G4EllipticalTube; - -class G4LogicalVolume; -class G4VPhysicalVolume; +#include "G4VUserDetectorConstruction.hh" class WLSMaterials; -class G4Material; - class WLSDetectorMessenger; - class WLSPhotonDetSD; -#include "G4VUserDetectorConstruction.hh" -#include "G4Cache.hh" +class G4Box; +class G4EllipticalTube; +class G4LogicalVolume; +class G4Material; +class G4Tubs; +class G4VPhysicalVolume; class WLSDetectorConstruction : public G4VUserDetectorConstruction { - public: + public: + WLSDetectorConstruction(); + ~WLSDetectorConstruction(); - WLSDetectorConstruction(); - virtual ~WLSDetectorConstruction(); + G4VPhysicalVolume* Construct() override; + G4VPhysicalVolume* ConstructDetector(); - virtual G4VPhysicalVolume* Construct(); - G4VPhysicalVolume* ConstructDetector(); + void ConstructSDandField() override; - virtual void ConstructSDandField(); + // Set Material Commands for World and WLSfiber + void SetWorldMaterial(G4String); + void SetWLSFiberMaterial(G4String); + void SetCoupleMaterial(G4String); - // Set Material Commands for World and WLSfiber - void SetWorldMaterial (G4String); - void SetWLSFiberMaterial (G4String); - void SetCoupleMaterial (G4String); + void SetPhotonDetGeometry(G4String); + void SetNumberOfCladding(G4int); // Maximum 2 claddings - void SetPhotonDetGeometry (G4String); - void SetNumberOfCladding (G4int); // Maximum 2 claddings + void SetWLSLength(G4double); // Total length of WLS fiber + void SetWLSRadius(G4double); + void SetClad1Radius(G4double); + void SetClad2Radius(G4double); + void SetPhotonDetHalfLength(G4double); + void SetGap(G4double); + void SetPhotonDetAlignment(G4double); + // Set the ratio of x and y (x/y) radius of the ellipse + void SetXYRatio(G4double); + // Set the Roughness in between each layer + void SetSurfaceRoughness(G4double); + // Set the reflectivity of the mirror + void SetMirrorReflectivity(G4double); + // Set the polish of the mirror + void SetMirrorPolish(G4double); + // Set the reflectivity of the mirror + void SetPhotonDetReflectivity(G4double); + // Set the polish of the mirror + void SetPhotonDetPolish(G4double); - void SetWLSLength (G4double); // Total length of WLS fiber - void SetWLSRadius (G4double); - void SetClad1Radius (G4double); - void SetClad2Radius (G4double); - void SetPhotonDetHalfLength (G4double); - void SetGap (G4double); - void SetPhotonDetAlignment (G4double); - // Set the ratio of x and y (x/y) radius of the ellipse - void SetXYRatio (G4double); - // Set the Roughness in between each layer - void SetSurfaceRoughness (G4double); - // Set the reflectivity of the mirror - void SetMirrorReflectivity (G4double); - // Set the polish of the mirror - void SetMirrorPolish (G4double); - // Set the reflectivity of the mirror - void SetPhotonDetReflectivity (G4double); - // Set the polish of the mirror - void SetPhotonDetPolish (G4double); + void SetMirror(G4bool); - void SetMirror (G4bool); + void SetBarLength(G4double); + void SetBarBase(G4double); + void SetHoleRadius(G4double); + void SetCoatingThickness(G4double); + void SetCoatingRadius(G4double); - void SetBarLength (G4double); - void SetBarBase (G4double); - void SetHoleRadius (G4double); - void SetCoatingThickness (G4double); - void SetCoatingRadius (G4double); + G4double GetWLSFiberLength(); + G4double GetWLSFiberEnd(); + G4double GetWLSFiberRMax(); + G4double GetSurfaceRoughness(); + G4bool IsPerfectFiber(); - G4double GetWLSFiberLength(); - G4double GetWLSFiberEnd(); - G4double GetWLSFiberRMax(); - G4double GetSurfaceRoughness(); - G4bool IsPerfectFiber(); + G4double GetBarLength(); + G4double GetBarBase(); + G4double GetHoleRadius(); + G4double GetHoleLength(); + G4double GetFiberRadius(); - G4double GetBarLength(); - G4double GetBarBase(); - G4double GetHoleRadius(); - G4double GetHoleLength(); - G4double GetFiberRadius(); + G4double GetCoatingThickness(); + G4double GetCoatingRadius(); - G4double GetCoatingThickness(); - G4double GetCoatingRadius(); - - // StringToRotationMatrix() converts a string "X90,Y45" into a - // G4RotationMatrix. - // This is an active rotation, in that the object is first rotated - // around the parent's X axis by 90 degrees, then the object is - // further rotated around the parent's Y axis by 45 degrees. - // The return value points to a G4RotationMatrix on the heap, so - // it is persistent. Angles are in degrees, can have decimals, - // and can be negative. Axes are X, Y, Z. + // StringToRotationMatrix() converts a string "X90,Y45" into a + // G4RotationMatrix. + // This is an active rotation, in that the object is first rotated + // around the parent's X axis by 90 degrees, then the object is + // further rotated around the parent's Y axis by 45 degrees. + // The return value points to a G4RotationMatrix on the heap, so + // it is persistent. Angles are in degrees, can have decimals, + // and can be negative. Axes are X, Y, Z. - static G4RotationMatrix StringToRotationMatrix(G4String rotation); + static G4RotationMatrix StringToRotationMatrix(G4String rotation); - G4Material* FindMaterial(G4String); + G4Material* FindMaterial(G4String); - private: + private: + WLSMaterials* fMaterials; - WLSMaterials* fMaterials; + G4LogicalVolume* fLogicHole; + G4LogicalVolume* fLogicWorld; - G4LogicalVolume* fLogicHole; - G4LogicalVolume* fLogicWorld; + G4VPhysicalVolume* fPhysiWorld; + G4VPhysicalVolume* fPhysiHole; - G4VPhysicalVolume* fPhysiWorld; - G4VPhysicalVolume* fPhysiHole; - - G4double fWorldSizeX; - G4double fWorldSizeY; - G4double fWorldSizeZ; + G4double fWorldSizeX; + G4double fWorldSizeY; + G4double fWorldSizeZ; - G4double fWLSfiberRX; - G4double fWLSfiberRY; - G4double fWLSfiberZ; + G4double fWLSfiberRX; + G4double fWLSfiberRY; + G4double fWLSfiberZ; - G4double fClad1RX; - G4double fClad1RY; - G4double fClad1Z; + G4double fClad1RX; + G4double fClad1RY; + G4double fClad1Z; - G4double fClad2RX; - G4double fClad2RY; - G4double fClad2Z; + G4double fClad2RX; + G4double fClad2RY; + G4double fClad2Z; - G4double fClrfiberHalfL; - G4double fClrfiberZ; + G4double fClrfiberHalfL; + G4double fClrfiberZ; - G4double fCoupleRX; - G4double fCoupleRY; - G4double fCoupleZ; - - G4double fMirrorRmax; - G4double fMirrorZ; - G4bool fMirrorToggle; - - G4String fMPPCShape; - G4double fMPPCHalfL; - G4double fMPPCZ; - G4double fMPPCDist; - G4double fMPPCTheta; + G4double fCoupleRX; + G4double fCoupleRY; + G4double fCoupleZ; - G4double fWLSfiberOrigin; - G4double fCoupleOrigin; - G4double fMirrorOrigin; - G4double fMPPCOriginX; - G4double fMPPCOriginZ; - - G4int fNumOfCladLayers; + G4double fMirrorRmax; + G4double fMirrorZ; + G4bool fMirrorToggle; - G4double fMirrorPolish; - G4double fMirrorReflectivity; - G4double fMPPCPolish; - G4double fMPPCReflectivity; - G4double fExtrusionPolish; - G4double fExtrusionReflectivity; - G4double fSurfaceRoughness; - G4double fXYRatio; + G4String fMPPCShape; + G4double fMPPCHalfL; + G4double fMPPCZ; + G4double fMPPCDist; + G4double fMPPCTheta; - G4double fBarLength; - G4double fBarBase; - G4double fHoleRadius; - G4double fHoleLength; - G4double fCoatingThickness; - G4double fCoatingRadius; + G4double fWLSfiberOrigin; + G4double fCoupleOrigin; + G4double fMirrorOrigin; + G4double fMPPCOriginX; + G4double fMPPCOriginZ; - private: + G4int fNumOfCladLayers; - void ConstructFiber(); + G4double fMirrorPolish; + G4double fMirrorReflectivity; + G4double fMPPCPolish; + G4double fMPPCReflectivity; + G4double fExtrusionPolish; + G4double fExtrusionReflectivity; + G4double fSurfaceRoughness; + G4double fXYRatio; - void UpdateGeometryParameters(); + G4double fBarLength; + G4double fBarBase; + G4double fHoleRadius; + G4double fHoleLength; + G4double fCoatingThickness; + G4double fCoatingRadius; - WLSDetectorMessenger* fDetectorMessenger; - G4Cache fmppcSD; + void ConstructFiber(); + void UpdateGeometryParameters(); + + WLSDetectorMessenger* fDetectorMessenger; + G4Cache fmppcSD; }; #endif diff --git a/examples/extended/optical/wls/include/WLSDetectorMessenger.hh b/examples/extended/optical/wls/include/WLSDetectorMessenger.hh index 35bfaf7c31..db9a311a05 100644 --- a/examples/extended/optical/wls/include/WLSDetectorMessenger.hh +++ b/examples/extended/optical/wls/include/WLSDetectorMessenger.hh @@ -34,11 +34,10 @@ #ifndef WLSDetectorMessenger_h #define WLSDetectorMessenger_h 1 -#include "globals.hh" -#include "G4UImessenger.hh" - #include "WLSDetectorConstruction.hh" +#include "G4UImessenger.hh" + class G4UIdirectory; class G4UIcmdWithABool; class G4UIcmdWithAString; @@ -51,41 +50,38 @@ class G4UIcmdWithoutParameter; class WLSDetectorMessenger : public G4UImessenger { - public: + public: + WLSDetectorMessenger(WLSDetectorConstruction*); + ~WLSDetectorMessenger(); - WLSDetectorMessenger(WLSDetectorConstruction* ); - virtual ~WLSDetectorMessenger(); - - virtual void SetNewValue(G4UIcommand*, G4String); + void SetNewValue(G4UIcommand*, G4String) override; - private: + private: + WLSDetectorConstruction* fDetector; - WLSDetectorConstruction* fDetector; - - G4UIdirectory* fDetDir; - - G4UIcmdWithAString* fSetPhotonDetGeometryCmd; - G4UIcmdWithAnInteger* fSetNumOfCladLayersCmd; - G4UIcmdWithADoubleAndUnit* fSetWLSLengthCmd; - G4UIcmdWithADoubleAndUnit* fSetWLSRadiusCmd; - G4UIcmdWithADoubleAndUnit* fSetClad1RadiusCmd; - G4UIcmdWithADoubleAndUnit* fSetClad2RadiusCmd; - G4UIcmdWithADoubleAndUnit* fSetPhotonDetHalfLengthCmd; - G4UIcmdWithADoubleAndUnit* fSetGapCmd; - G4UIcmdWithADoubleAndUnit* fSetPhotonDetAlignmentCmd; - G4UIcmdWithADouble* fSetXYRatioCmd; - G4UIcmdWithADouble* fSetSurfaceRoughnessCmd; - G4UIcmdWithADouble* fSetMirrorPolishCmd; - G4UIcmdWithADouble* fSetMirrorReflectivityCmd; - G4UIcmdWithADouble* fSetPhotonDetPolishCmd; - G4UIcmdWithADouble* fSetPhotonDetReflectivityCmd; - G4UIcmdWithABool* fSetMirrorCmd; - G4UIcmdWithADoubleAndUnit* fSetBarLengthCmd; - G4UIcmdWithADoubleAndUnit* fSetBarBaseCmd; - G4UIcmdWithADoubleAndUnit* fSetHoleRadiusCmd; - G4UIcmdWithADoubleAndUnit* fSetCoatingThicknessCmd; - G4UIcmdWithADoubleAndUnit* fSetCoatingRadiusCmd; + G4UIdirectory* fDetDir; + G4UIcmdWithAString* fSetPhotonDetGeometryCmd; + G4UIcmdWithAnInteger* fSetNumOfCladLayersCmd; + G4UIcmdWithADoubleAndUnit* fSetWLSLengthCmd; + G4UIcmdWithADoubleAndUnit* fSetWLSRadiusCmd; + G4UIcmdWithADoubleAndUnit* fSetClad1RadiusCmd; + G4UIcmdWithADoubleAndUnit* fSetClad2RadiusCmd; + G4UIcmdWithADoubleAndUnit* fSetPhotonDetHalfLengthCmd; + G4UIcmdWithADoubleAndUnit* fSetGapCmd; + G4UIcmdWithADoubleAndUnit* fSetPhotonDetAlignmentCmd; + G4UIcmdWithADouble* fSetXYRatioCmd; + G4UIcmdWithADouble* fSetSurfaceRoughnessCmd; + G4UIcmdWithADouble* fSetMirrorPolishCmd; + G4UIcmdWithADouble* fSetMirrorReflectivityCmd; + G4UIcmdWithADouble* fSetPhotonDetPolishCmd; + G4UIcmdWithADouble* fSetPhotonDetReflectivityCmd; + G4UIcmdWithABool* fSetMirrorCmd; + G4UIcmdWithADoubleAndUnit* fSetBarLengthCmd; + G4UIcmdWithADoubleAndUnit* fSetBarBaseCmd; + G4UIcmdWithADoubleAndUnit* fSetHoleRadiusCmd; + G4UIcmdWithADoubleAndUnit* fSetCoatingThicknessCmd; + G4UIcmdWithADoubleAndUnit* fSetCoatingRadiusCmd; }; #endif diff --git a/examples/extended/optical/wls/include/WLSEventAction.hh b/examples/extended/optical/wls/include/WLSEventAction.hh index bb06a9bd95..bf5387a0b3 100644 --- a/examples/extended/optical/wls/include/WLSEventAction.hh +++ b/examples/extended/optical/wls/include/WLSEventAction.hh @@ -34,35 +34,55 @@ #ifndef WLSEventAction_h #define WLSEventAction_h 1 -#include "globals.hh" +#include "G4Types.hh" #include "G4UserEventAction.hh" -class WLSRunAction; class WLSEventActionMessenger; class WLSEventAction : public G4UserEventAction { - public: + public: + WLSEventAction(); + ~WLSEventAction(); - WLSEventAction(WLSRunAction*); - virtual ~WLSEventAction(); + void BeginOfEventAction(const G4Event*) override; + void EndOfEventAction(const G4Event*) override; - public: + G4int GetEventNo(); + void SetEventVerbose(G4int); - virtual void BeginOfEventAction(const G4Event*); - virtual void EndOfEventAction(const G4Event*); + void AddTIR() { fNTIR += 1; }; + void AddExiting() { fNExiting += 1; }; + void AddEscapedEnd() { fEscapedEnd += 1; }; + void AddEscapedMid() { fEscapedMid += 1; }; + void AddBounce() { fBounce += 1; }; + void AddWLSBounce() { fWLSBounce += 1; }; + void AddClad1Bounce() { fClad1Bounce += 1; }; + void AddClad2Bounce() { fClad2Bounce += 1; }; + void AddReflected() { fReflected += 1; }; + void AddDetected() { fDetected += 1; }; + void AddEscaped() { fEscaped += 1; }; + void AddMirror() { fMirror += 1; }; - G4int GetEventNo(); - void SetEventVerbose(G4int); + private: + WLSEventActionMessenger* fEventMessenger; - private: + G4int fVerboseLevel; - WLSRunAction* fRunAction; - WLSEventActionMessenger* fEventMessenger; + G4int fMPPCCollID; - G4int fVerboseLevel; - - G4int fMPPCCollID; + G4int fNTIR; + G4int fNExiting; + G4int fEscapedEnd; + G4int fEscapedMid; + G4int fBounce; + G4int fWLSBounce; + G4int fClad1Bounce; + G4int fClad2Bounce; + G4int fReflected; + G4int fDetected; + G4int fEscaped; + G4int fMirror; }; #endif diff --git a/examples/extended/optical/wls/include/WLSEventActionMessenger.hh b/examples/extended/optical/wls/include/WLSEventActionMessenger.hh index b435b23585..0061147427 100644 --- a/examples/extended/optical/wls/include/WLSEventActionMessenger.hh +++ b/examples/extended/optical/wls/include/WLSEventActionMessenger.hh @@ -34,27 +34,24 @@ #ifndef WLSEventActionMessenger_h #define WLSEventActionMessenger_h 1 -#include "globals.hh" #include "G4UImessenger.hh" -class EventAction; -class G4UIcmdWithAString; +class WLSEventAction; + class G4UIcmdWithAnInteger; -class WLSEventActionMessenger: public G4UImessenger +class WLSEventActionMessenger : public G4UImessenger { - public: + public: + WLSEventActionMessenger(WLSEventAction*); + ~WLSEventActionMessenger(); - WLSEventActionMessenger(WLSEventAction*); - virtual ~WLSEventActionMessenger(); + void SetNewValue(G4UIcommand*, G4String) override; - virtual void SetNewValue(G4UIcommand*, G4String); + private: + WLSEventAction* fEventAction; - private: - - WLSEventAction* fEventAction; - - G4UIcmdWithAnInteger* fSetVerboseCmd; + G4UIcmdWithAnInteger* fSetVerboseCmd; }; #endif diff --git a/examples/extended/optical/wls/include/WLSMaterials.hh b/examples/extended/optical/wls/include/WLSMaterials.hh index 51e77a0886..98feb1eab7 100644 --- a/examples/extended/optical/wls/include/WLSMaterials.hh +++ b/examples/extended/optical/wls/include/WLSMaterials.hh @@ -35,40 +35,33 @@ #define WLSMaterials_h 1 #include "globals.hh" -#include "G4Material.hh" -#include "G4NistManager.hh" + +class G4Material; +class G4NistManager; class WLSMaterials { - public: + public: + ~WLSMaterials(); - virtual ~WLSMaterials(); - - static WLSMaterials* GetInstance(); + static WLSMaterials* GetInstance(); + G4Material* GetMaterial(const G4String); - G4Material* GetMaterial(const G4String); - - private: - - WLSMaterials(); + private: + WLSMaterials(); + void CreateMaterials(); - void CreateMaterials(); + static WLSMaterials* fInstance; - private: - - static WLSMaterials* fInstance; - - G4NistManager* fNistMan; - - G4Material* fAir; - - G4Material* fPMMA; - G4Material* fPethylene; - G4Material* fFPethylene; - G4Material* fPolystyrene; - G4Material* fSilicone; - G4Material* fCoating; + G4NistManager* fNistMan; + G4Material* fAir; + G4Material* fPMMA; + G4Material* fPethylene; + G4Material* fFPethylene; + G4Material* fPolystyrene; + G4Material* fSilicone; + G4Material* fCoating; }; #endif /*WLSMaterials_h*/ diff --git a/examples/extended/optical/wls/include/WLSPhotonDetHit.hh b/examples/extended/optical/wls/include/WLSPhotonDetHit.hh index 348ddc07b6..ff173d3f3e 100644 --- a/examples/extended/optical/wls/include/WLSPhotonDetHit.hh +++ b/examples/extended/optical/wls/include/WLSPhotonDetHit.hh @@ -34,59 +34,44 @@ #ifndef WLSPhotonDetHit_h #define WLSPhotonDetHit_h 1 -#include "G4VHit.hh" -#include "G4THitsCollection.hh" #include "G4Allocator.hh" - -#include "G4ThreeVector.hh" -#include "G4Transform3D.hh" -#include "G4RotationMatrix.hh" - #include "G4LogicalVolume.hh" +#include "G4THitsCollection.hh" +#include "G4ThreeVector.hh" +#include "G4VHit.hh" #include "G4VPhysicalVolume.hh" -#include "tls.hh" - -class G4VTouchable; - -//-------------------------------------------------- -// WLSPhotonDetHit Class -//-------------------------------------------------- - class WLSPhotonDetHit : public G4VHit { - public: + public: + WLSPhotonDetHit(); + WLSPhotonDetHit(G4ThreeVector pExit, G4ThreeVector pArrive, G4double pTime); + ~WLSPhotonDetHit(); - WLSPhotonDetHit(); - WLSPhotonDetHit(G4ThreeVector pExit, G4ThreeVector pArrive, G4double pTime); - virtual ~WLSPhotonDetHit(); + WLSPhotonDetHit(const WLSPhotonDetHit& right); + const WLSPhotonDetHit& operator=(const WLSPhotonDetHit& right); - WLSPhotonDetHit(const WLSPhotonDetHit &right); - const WLSPhotonDetHit& operator=(const WLSPhotonDetHit& right); + G4bool operator==(const WLSPhotonDetHit& right) const; - G4bool operator==(const WLSPhotonDetHit& right) const; + inline void* operator new(size_t); + inline void operator delete(void* aHit); - inline void *operator new(size_t); - inline void operator delete(void *aHit); + inline void SetArrivalPos(G4ThreeVector xyz) { fPosArrive = xyz; } + inline G4ThreeVector GetArrivalPos() { return fPosArrive; } - inline void SetArrivalPos(G4ThreeVector xyz) { fPosArrive = xyz; } - inline G4ThreeVector GetArrivalPos() { return fPosArrive; } + inline void SetExitPos(G4ThreeVector xyz) { fPosExit = xyz; } + inline G4ThreeVector GetExitPos() { return fPosExit; } - inline void SetExitPos(G4ThreeVector xyz) { fPosExit = xyz; } - inline G4ThreeVector GetExitPos() { return fPosExit; } - - inline void SetArrivalTime(G4double t) { fArrivalTime = t; } - inline G4double GetArrivalTime() { return fArrivalTime; } - - private: - - // the arrival time of the photon - G4double fArrivalTime; - // where the photon hit the detector (detector's coordinate) - G4ThreeVector fPosArrive; - // where the photon exited the fiber (world's coordinate) - G4ThreeVector fPosExit; + inline void SetArrivalTime(G4double t) { fArrivalTime = t; } + inline G4double GetArrivalTime() { return fArrivalTime; } + private: + // the arrival time of the photon + G4double fArrivalTime; + // where the photon hit the detector (detector's coordinate) + G4ThreeVector fPosArrive; + // where the photon exited the fiber (world's coordinate) + G4ThreeVector fPosExit; }; //-------------------------------------------------- @@ -104,11 +89,11 @@ extern G4ThreadLocal G4Allocator* WLSPhotonDetHitAllocator; inline void* WLSPhotonDetHit::operator new(size_t) { if(!WLSPhotonDetHitAllocator) - WLSPhotonDetHitAllocator = new G4Allocator; - return (void *) WLSPhotonDetHitAllocator->MallocSingle(); + WLSPhotonDetHitAllocator = new G4Allocator; + return (void*) WLSPhotonDetHitAllocator->MallocSingle(); } -inline void WLSPhotonDetHit::operator delete(void *aHit) +inline void WLSPhotonDetHit::operator delete(void* aHit) { WLSPhotonDetHitAllocator->FreeSingle((WLSPhotonDetHit*) aHit); } diff --git a/examples/extended/optical/wls/include/WLSPhotonDetSD.hh b/examples/extended/optical/wls/include/WLSPhotonDetSD.hh index 8e1c7baec7..a626aa86e6 100644 --- a/examples/extended/optical/wls/include/WLSPhotonDetSD.hh +++ b/examples/extended/optical/wls/include/WLSPhotonDetSD.hh @@ -43,21 +43,19 @@ class G4HCofThisEvent; class WLSPhotonDetSD : public G4VSensitiveDetector { - public: + public: + WLSPhotonDetSD(G4String); + ~WLSPhotonDetSD(); - WLSPhotonDetSD(G4String ); - virtual ~WLSPhotonDetSD(); + void Initialize(G4HCofThisEvent*) override; - virtual void Initialize(G4HCofThisEvent* ); + G4bool ProcessHits(G4Step*, G4TouchableHistory*) override; + // A version of processHits, not called automatically by sensitive detector + G4bool ProcessHits_boundary(const G4Step*, G4TouchableHistory*); - virtual G4bool ProcessHits(G4Step* , G4TouchableHistory* ); - //A version of processHits that keeps aStep constant - G4bool ProcessHits_constStep(const G4Step* , - G4TouchableHistory* ); - - private: - - WLSPhotonDetHitsCollection* fPhotonDetHitCollection; + private: + WLSPhotonDetHitsCollection* fPhotonDetHitCollection; + G4int fHCID; }; #endif diff --git a/examples/extended/optical/wls/include/WLSPrimaryGeneratorAction.hh b/examples/extended/optical/wls/include/WLSPrimaryGeneratorAction.hh index c5c76bae88..cdc454c64a 100644 --- a/examples/extended/optical/wls/include/WLSPrimaryGeneratorAction.hh +++ b/examples/extended/optical/wls/include/WLSPrimaryGeneratorAction.hh @@ -37,50 +37,41 @@ #include "globals.hh" #include "G4VUserPrimaryGeneratorAction.hh" -#include "G4AffineTransform.hh" - -class G4GeneralParticleSource; - -class G4Event; -class G4PhysicsTable; - class WLSDetectorConstruction; class WLSPrimaryGeneratorMessenger; +class G4Event; +class G4GeneralParticleSource; +class G4PhysicsTable; + class WLSPrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction { - public: + public: + WLSPrimaryGeneratorAction(WLSDetectorConstruction*); + ~WLSPrimaryGeneratorAction(); - WLSPrimaryGeneratorAction(WLSDetectorConstruction*); - virtual ~WLSPrimaryGeneratorAction(); + void GeneratePrimaries(G4Event*) override; - public: + void BuildEmissionSpectrum(); + void SetOptPhotonPolar(G4double); + void SetDecayTimeConstant(G4double); - virtual void GeneratePrimaries(G4Event*); + void SetUseSampledEnergy(G4bool v) { fUseSampledEnergy = v; } - void BuildEmissionSpectrum(); + protected: + G4PhysicsTable* fIntegralTable; - void SetOptPhotonPolar(G4double); + private: + void SetOptPhotonPolar(); + void SetOptPhotonTime(); - void SetDecayTimeConstant(G4double); - - protected: - - G4PhysicsTable* fIntegralTable; - - private: - - void SetOptPhotonPolar(); - void SetOptPhotonTime(); - - WLSDetectorConstruction* fDetector; - G4GeneralParticleSource* fParticleGun; - WLSPrimaryGeneratorMessenger* fGunMessenger; - - static G4bool fFirst; - - G4double fTimeConstant; + WLSDetectorConstruction* fDetector; + G4GeneralParticleSource* fParticleGun; + WLSPrimaryGeneratorMessenger* fGunMessenger; + static G4bool fFirst; + G4double fTimeConstant; + G4bool fUseSampledEnergy; }; #endif diff --git a/examples/extended/optical/wls/include/WLSPrimaryGeneratorMessenger.hh b/examples/extended/optical/wls/include/WLSPrimaryGeneratorMessenger.hh index b021eeef55..800a9fa69e 100644 --- a/examples/extended/optical/wls/include/WLSPrimaryGeneratorMessenger.hh +++ b/examples/extended/optical/wls/include/WLSPrimaryGeneratorMessenger.hh @@ -34,31 +34,30 @@ #ifndef WLSPrimaryGeneratorMessenger_h #define WLSPrimaryGeneratorMessenger_h 1 -#include "globals.hh" #include "G4UImessenger.hh" -class G4UIdirectory; -class G4UIcmdWithADoubleAndUnit; - class WLSPrimaryGeneratorAction; +class G4UIdirectory; +class G4UIcmdWithABool; +class G4UIcmdWithADoubleAndUnit; + class WLSPrimaryGeneratorMessenger : public G4UImessenger { - public: + public: + WLSPrimaryGeneratorMessenger(WLSPrimaryGeneratorAction*); + ~WLSPrimaryGeneratorMessenger(); - WLSPrimaryGeneratorMessenger(WLSPrimaryGeneratorAction*); - virtual ~WLSPrimaryGeneratorMessenger(); - - virtual void SetNewValue(G4UIcommand*, G4String); - - private: + void SetNewValue(G4UIcommand*, G4String) override; - WLSPrimaryGeneratorAction* fAction; + private: + WLSPrimaryGeneratorAction* fAction; - G4UIdirectory* fGunDir; + G4UIdirectory* fGunDir; - G4UIcmdWithADoubleAndUnit* fSetPolarizationCmd; - G4UIcmdWithADoubleAndUnit* fSetDecayTimeConstantCmd; + G4UIcmdWithADoubleAndUnit* fSetPolarizationCmd; + G4UIcmdWithADoubleAndUnit* fSetDecayTimeConstantCmd; + // G4UIcmdWithABool* fSetUseSampledEnergyCmd; }; #endif diff --git a/examples/extended/optical/wls/include/WLSRun.hh b/examples/extended/optical/wls/include/WLSRun.hh new file mode 100644 index 0000000000..832e7f93c4 --- /dev/null +++ b/examples/extended/optical/wls/include/WLSRun.hh @@ -0,0 +1,156 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +/// \file optical/wls/include/WLSRun.hh +/// \brief Definition of the WLSRun class +// + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +#ifndef WLSRun_h +#define WLSRun_h 1 + +#include "G4Run.hh" + +class WLSRun : public G4Run +{ + public: + WLSRun(); + ~WLSRun(); + + void AddTIR(G4int n) + { + G4double nd(n); + fNTIR += nd; + fNTIR2 += nd * nd; + }; + void AddExiting(G4int n) + { + G4double nd(n); + fNExiting += nd; + fNExiting2 += nd * nd; + }; + void AddEscapedEnd(G4int n) + { + G4double nd(n); + fEscapedEnd += nd; + fEscapedEnd2 += nd * nd; + }; + void AddEscapedMid(G4int n) + { + G4double nd(n); + fEscapedMid += nd; + fEscapedMid2 += nd * nd; + }; + void AddBounce(G4int n) + { + G4double nd(n); + fBounce += nd; + fBounce2 += nd * nd; + }; + void AddWLSBounce(G4int n) + { + G4double nd(n); + fWLSBounce += nd; + fWLSBounce2 += nd * nd; + }; + void AddClad1Bounce(G4int n) + { + G4double nd(n); + fClad1Bounce += nd; + fClad1Bounce2 += nd * nd; + }; + void AddClad2Bounce(G4int n) + { + G4double nd(n); + fClad2Bounce += nd; + fClad2Bounce2 += nd * nd; + }; + void AddReflected(G4int n) + { + G4double nd(n); + fReflected += nd; + fReflected2 += nd * nd; + }; + void AddDetected(G4int n) + { + G4double nd(n); + fDetected += nd; + fDetected2 += nd * nd; + }; + void AddEscaped(G4int n) + { + G4double nd(n); + fEscaped += nd; + fEscaped2 += nd * nd; + }; + void AddMirror(G4int n) + { + G4double nd(n); + fMirror += nd; + fMirror2 += nd * nd; + }; + void AddDetectorHits(G4int n) + { + G4double nd(n); + fDetectorHits += nd; + fDetectorHits2 += nd * nd; + }; + + void EndOfRun(); + void Merge(const G4Run*) override; + + private: + G4double fNTIR; + G4double fNTIR2; + G4double fNExiting; + G4double fNExiting2; + G4double fEscapedEnd; + G4double fEscapedEnd2; + G4double fEscapedMid; + G4double fEscapedMid2; + G4double fBounce; + G4double fBounce2; + G4double fWLSBounce; + G4double fWLSBounce2; + G4double fClad1Bounce; + G4double fClad1Bounce2; + G4double fClad2Bounce; + G4double fClad2Bounce2; + G4double fReflected; + G4double fReflected2; + G4double fDetected; + G4double fDetected2; + G4double fEscaped; + G4double fEscaped2; + G4double fMirror; + G4double fMirror2; + G4double fDetectorHits; + G4double fDetectorHits2; +}; + +#endif diff --git a/examples/extended/optical/wls/include/WLSRunAction.hh b/examples/extended/optical/wls/include/WLSRunAction.hh index d468734ae2..431d0581e0 100644 --- a/examples/extended/optical/wls/include/WLSRunAction.hh +++ b/examples/extended/optical/wls/include/WLSRunAction.hh @@ -34,38 +34,24 @@ #ifndef WLSRunAction_h #define WLSRunAction_h 1 -#include "globals.hh" - #include "G4UserRunAction.hh" +class WLSRun; + class G4Run; -class WLSRunActionMessenger; - class WLSRunAction : public G4UserRunAction { - public: + public: + WLSRunAction(); + ~WLSRunAction(); - WLSRunAction(); - virtual ~WLSRunAction(); - - public: - - virtual void BeginOfRunAction(const G4Run*); - virtual void EndOfRunAction(const G4Run*); - - void SetRndmFreq(G4int val) { fSaveRndm = val; } - G4int GetRndmFreq() { return fSaveRndm; } - - inline void SetAutoSeed (const G4bool val) { fAutoSeed = val; } - - private: - - WLSRunActionMessenger* fRunMessenger; - - G4int fSaveRndm; - G4bool fAutoSeed; + void BeginOfRunAction(const G4Run*) override; + void EndOfRunAction(const G4Run*) override; + G4Run* GenerateRun() override; + private: + WLSRun* fRun; }; #endif diff --git a/examples/extended/optical/wls/include/WLSStackingAction.hh b/examples/extended/optical/wls/include/WLSStackingAction.hh index 2079162dcf..225d29cffc 100644 --- a/examples/extended/optical/wls/include/WLSStackingAction.hh +++ b/examples/extended/optical/wls/include/WLSStackingAction.hh @@ -34,26 +34,21 @@ #ifndef WLSStackingAction_h #define WLSStackingAction_h 1 -#include "globals.hh" +#include "G4Types.hh" #include "G4UserStackingAction.hh" class WLSStackingAction : public G4UserStackingAction { - public: + public: + WLSStackingAction(); + ~WLSStackingAction(); - WLSStackingAction(); - virtual ~WLSStackingAction(); - - public: - - virtual G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track* ); - virtual void NewStage(); - virtual void PrepareNewEvent(); - - private: - - G4int fPhotonCounter; + G4ClassificationOfNewTrack ClassifyNewTrack(const G4Track*) override; + void NewStage() override; + void PrepareNewEvent() override; + private: + G4int fPhotonCounter; }; #endif diff --git a/examples/extended/optical/wls/include/WLSSteppingAction.hh b/examples/extended/optical/wls/include/WLSSteppingAction.hh index f597dda6be..259a9bf63d 100644 --- a/examples/extended/optical/wls/include/WLSSteppingAction.hh +++ b/examples/extended/optical/wls/include/WLSSteppingAction.hh @@ -34,77 +34,71 @@ #ifndef WLSSteppingAction_h #define WLSSteppingAction_h 1 +#include "G4Types.hh" #include "G4UserSteppingAction.hh" class WLSDetectorConstruction; class WLSSteppingActionMessenger; +class WLSEventAction; +class G4OpBoundaryProcess; class G4Track; class G4StepPoint; -class G4OpBoundaryProcess; - class WLSSteppingAction : public G4UserSteppingAction { - public: + public: + WLSSteppingAction(WLSDetectorConstruction*, WLSEventAction*); + ~WLSSteppingAction(); - WLSSteppingAction(WLSDetectorConstruction*); - virtual ~WLSSteppingAction(); + void UserSteppingAction(const G4Step*) override; - virtual void UserSteppingAction(const G4Step*); - - // Set the bounce limit, 0 for no limit - void SetBounceLimit(G4int); - - G4int GetNumberOfBounces(); - G4int GetNumberOfClad1Bounces(); - G4int GetNumberOfClad2Bounces(); - G4int GetNumberOfWLSBounces(); - // return number of successful events and reset the counter - G4int ResetSuccessCounter(); - - private: + // Set the bounce limit, 0 for no limit + void SetBounceLimit(G4int); - // Artificially kill the photon after it has bounced more than this number - G4int fBounceLimit; - // number of photons that reach the end - G4int fCounterEnd; - // number of photons that didn't make it to the end - G4int fCounterMid; - // total number of bounces that a photon been through - G4int fCounterBounce; - // number of bounces that a photon been through within the fibre - G4int fCounterWLSBounce; - // number of bounces that a photon been through from Cladding 1 to 2 - G4int fCounterClad1Bounce; - // number of bounces that a photon been through from Cladding 2 to World - G4int fCounterClad2Bounce; + G4int GetNumberOfBounces(); + G4int GetNumberOfClad1Bounces(); + G4int GetNumberOfClad2Bounces(); + G4int GetNumberOfWLSBounces(); + // return number of successful events and reset the counter + G4int ResetSuccessCounter(); - // initial gamma of the photon - G4double fInitGamma; - // initial theta of the photon - G4double fInitTheta; + private: + // Artificially kill the photon after it has bounced more than this number + G4int fBounceLimit; + // number of photons that reach the end + G4int fCounterEnd; + // number of photons that didn't make it to the end + G4int fCounterMid; + // total number of bounces that a photon been through + G4int fCounterBounce; + // number of bounces that a photon been through within the fibre + G4int fCounterWLSBounce; + // number of bounces that a photon been through from Cladding 1 to 2 + G4int fCounterClad1Bounce; + // number of bounces that a photon been through from Cladding 2 to World + G4int fCounterClad2Bounce; - G4OpBoundaryProcess* fOpProcess; + // initial gamma of the photon + G4double fInitGamma; + // initial theta of the photon + G4double fInitTheta; - // maximum number of save states - static G4int fMaxRndmSave; - - WLSDetectorConstruction* fDetector; + G4OpBoundaryProcess* fOpProcess; - WLSSteppingActionMessenger* fSteppingMessenger; - - inline void ResetCounters() - { - fCounterBounce = fCounterWLSBounce = - fCounterClad1Bounce = fCounterClad2Bounce = 0; - fInitGamma = fInitTheta = -1; - } - - // save the random status into a sub-directory - // Pre: subDir must be empty or ended with "/" - inline void SaveRandomStatus(G4String subDir); + WLSDetectorConstruction* fDetector; + WLSSteppingActionMessenger* fSteppingMessenger; + WLSEventAction* fEventAction; + inline void ResetCounters() + { + fCounterBounce = 0; + fCounterWLSBounce = 0; + fCounterClad1Bounce = 0; + fCounterClad2Bounce = 0; + fInitGamma = -1; + fInitTheta = -1; + } }; #endif diff --git a/examples/extended/optical/wls/include/WLSSteppingActionMessenger.hh b/examples/extended/optical/wls/include/WLSSteppingActionMessenger.hh index 81bd03b464..614e449deb 100644 --- a/examples/extended/optical/wls/include/WLSSteppingActionMessenger.hh +++ b/examples/extended/optical/wls/include/WLSSteppingActionMessenger.hh @@ -43,21 +43,16 @@ class G4UIcmdWithAnInteger; class WLSSteppingActionMessenger : public G4UImessenger { - public: + public: + WLSSteppingActionMessenger(WLSSteppingAction*); + ~WLSSteppingActionMessenger(); - WLSSteppingActionMessenger(WLSSteppingAction* ); - virtual ~WLSSteppingActionMessenger(); - - virtual void SetNewValue(G4UIcommand* ,G4String ); - - private: - - WLSSteppingAction* fSteppingAction; - - G4UIdirectory* fSteppingDir; - - G4UIcmdWithAnInteger* fSetBounceLimitCmd; + void SetNewValue(G4UIcommand*, G4String) override; + private: + WLSSteppingAction* fSteppingAction; + G4UIdirectory* fSteppingDir; + G4UIcmdWithAnInteger* fSetBounceLimitCmd; }; #endif diff --git a/examples/extended/optical/wls/include/WLSTrackingAction.hh b/examples/extended/optical/wls/include/WLSTrackingAction.hh index 5eb136184f..dd4f9aeaac 100644 --- a/examples/extended/optical/wls/include/WLSTrackingAction.hh +++ b/examples/extended/optical/wls/include/WLSTrackingAction.hh @@ -36,15 +36,13 @@ #include "G4UserTrackingAction.hh" -class WLSTrackingAction : public G4UserTrackingAction { - - public: - - WLSTrackingAction() { }; - virtual ~WLSTrackingAction() { }; - - virtual void PreUserTrackingAction(const G4Track*); +class WLSTrackingAction : public G4UserTrackingAction +{ + public: + WLSTrackingAction(){}; + ~WLSTrackingAction(){}; + void PreUserTrackingAction(const G4Track*) override; }; #endif diff --git a/examples/extended/optical/wls/include/WLSTrajectory.hh b/examples/extended/optical/wls/include/WLSTrajectory.hh index 0c377d18e1..9511e27d55 100644 --- a/examples/extended/optical/wls/include/WLSTrajectory.hh +++ b/examples/extended/optical/wls/include/WLSTrajectory.hh @@ -31,100 +31,86 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -#ifndef WLSTrajectory_h_seen -#define WLSTrajectory_h_seen 1 - -#include -#include +#ifndef WLSTrajectory_h +#define WLSTrajectory_h 1 #include "globals.hh" - -#include "G4ios.hh" +#include "G4Allocator.hh" +#include "G4ParticleDefinition.hh" #include "G4Step.hh" #include "G4Track.hh" -#include "G4Allocator.hh" -#include "G4VTrajectory.hh" -#include "G4ParticleDefinition.hh" #include "G4TrajectoryPoint.hh" +#include "G4VTrajectory.hh" + +#include typedef std::vector WLSTrajectoryPointContainer; class WLSTrajectory : public G4VTrajectory { + public: + WLSTrajectory(); + WLSTrajectory(const G4Track*); + WLSTrajectory(WLSTrajectory&); + ~WLSTrajectory(); -//-------- - public: // without description -//-------- + inline void* operator new(size_t); + inline void operator delete(void*); + inline int operator==(const WLSTrajectory& right) const + { + return (this == &right); + } -// Constructor/Destructor + inline virtual G4int GetTrackID() const { return fTrackID; } + inline virtual G4int GetParentID() const { return fParentID; } + inline virtual G4String GetParticleName() const { return fParticleName; } + inline virtual G4double GetCharge() const { return fPDGCharge; } + inline virtual G4int GetPDGEncoding() const { return fPDGEncoding; } + inline virtual G4ThreeVector GetInitialMomentum() const + { + return fInitialMomentum; + } - WLSTrajectory(); - WLSTrajectory(const G4Track* ); - WLSTrajectory(WLSTrajectory &); - virtual ~WLSTrajectory(); + virtual void ShowTrajectory(std::ostream& os = G4cout) const; + virtual void AppendStep(const G4Step* aStep); + virtual void MergeTrajectory(G4VTrajectory* secondTrajectory); -// Operators + G4ParticleDefinition* GetParticleDefinition(); - inline void* operator new(size_t); - inline void operator delete(void*); - inline int operator == (const WLSTrajectory& right) const - { return (this==&right); } + virtual int GetPointEntries() const { return fpPointsContainer->size(); } + virtual G4VTrajectoryPoint* GetPoint(G4int i) const + { + return (*fpPointsContainer)[i]; + } -// Get/Set functions + virtual const std::map* GetAttDefs() const; + virtual std::vector* CreateAttValues() const; - inline virtual G4int GetTrackID() const { return fTrackID; } - inline virtual G4int GetParentID() const { return fParentID; } - inline virtual G4String GetParticleName() const { return fParticleName; } - inline virtual G4double GetCharge() const { return fPDGCharge; } - inline virtual G4int GetPDGEncoding() const { return fPDGEncoding; } - inline virtual G4ThreeVector GetInitialMomentum() const - {return fInitialMomentum;} + private: + WLSTrajectoryPointContainer* fpPointsContainer; -// Other member functions - - virtual void ShowTrajectory(std::ostream& os=G4cout) const; - virtual void AppendStep(const G4Step* aStep); - virtual void MergeTrajectory(G4VTrajectory* secondTrajectory); - - G4ParticleDefinition* GetParticleDefinition(); - - virtual int GetPointEntries() const - { return fpPointsContainer->size(); } - virtual G4VTrajectoryPoint* GetPoint(G4int i) const - { return (*fpPointsContainer)[i]; } - - virtual const std::map* GetAttDefs() const; - virtual std::vector* CreateAttValues() const; - -//--------- - private: -//--------- - -// Member data - - WLSTrajectoryPointContainer* fpPointsContainer; - - G4int fTrackID; - G4int fParentID; - G4double fPDGCharge; - G4int fPDGEncoding; - G4String fParticleName; - G4ThreeVector fInitialMomentum; - - G4ParticleDefinition* fParticleDefinition; + G4int fTrackID; + G4int fParentID; + G4double fPDGCharge; + G4int fPDGEncoding; + G4String fParticleName; + G4ThreeVector fInitialMomentum; + G4ParticleDefinition* fParticleDefinition; }; extern G4ThreadLocal G4Allocator* WLSTrajectoryAllocator; -inline void* WLSTrajectory::operator new(size_t) { - if(!WLSTrajectoryAllocator) - WLSTrajectoryAllocator = new G4Allocator; - return (void*) WLSTrajectoryAllocator->MallocSingle(); +inline void* WLSTrajectory::operator new(size_t) +{ + if(!WLSTrajectoryAllocator) + WLSTrajectoryAllocator = new G4Allocator; + return (void*) WLSTrajectoryAllocator->MallocSingle(); } -inline void WLSTrajectory::operator delete(void* aTrajectory) { - WLSTrajectoryAllocator->FreeSingle((WLSTrajectory*)aTrajectory); +inline void WLSTrajectory::operator delete(void* aTrajectory) +{ + WLSTrajectoryAllocator->FreeSingle((WLSTrajectory*) aTrajectory); } #endif diff --git a/examples/extended/optical/wls/include/WLSTrajectoryPoint.hh b/examples/extended/optical/wls/include/WLSTrajectoryPoint.hh index 848201acbf..2b6ec140d1 100644 --- a/examples/extended/optical/wls/include/WLSTrajectoryPoint.hh +++ b/examples/extended/optical/wls/include/WLSTrajectoryPoint.hh @@ -31,80 +31,62 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -#ifndef WLSTrajectoryPoint_h_seen -#define WLSTrajectoryPoint_h_seen 1 +#ifndef WLSTrajectoryPoint_h +#define WLSTrajectoryPoint_h 1 #include "globals.hh" - #include "G4Allocator.hh" +#include "G4StepStatus.hh" #include "G4ThreeVector.hh" #include "G4TrajectoryPoint.hh" -#include "G4StepStatus.hh" - class G4Track; class G4Step; class G4VProcess; -class WLSTrajectoryPoint : public G4TrajectoryPoint { +class WLSTrajectoryPoint : public G4TrajectoryPoint +{ + public: + WLSTrajectoryPoint(); + WLSTrajectoryPoint(const G4Track*); + WLSTrajectoryPoint(const G4Step*); + WLSTrajectoryPoint(const WLSTrajectoryPoint& right); + ~WLSTrajectoryPoint(); -//-------- - public: // without description -//-------- + inline void* operator new(size_t); + inline void operator delete(void* aTrajectoryPoint); + inline G4bool operator==(const WLSTrajectoryPoint& right) const + { + return (this == &right); + }; -// Constructor/Destructor + inline G4double GetTime() const { return fTime; }; + inline const G4ThreeVector GetMomentum() const { return fMomentum; }; + inline G4StepStatus GetStepStatus() const { return fStepStatus; }; + inline G4String GetVolumeName() const { return fVolumeName; }; - WLSTrajectoryPoint(); - WLSTrajectoryPoint(const G4Track* ); - WLSTrajectoryPoint(const G4Step* ); - WLSTrajectoryPoint(const WLSTrajectoryPoint &right); - virtual ~WLSTrajectoryPoint(); - -// Operators - - inline void *operator new(size_t); - inline void operator delete(void *aTrajectoryPoint); - inline G4bool operator==(const WLSTrajectoryPoint& right) const - { return (this==&right); }; - -// Get/Set functions - - inline G4double GetTime() const { return fTime; }; - inline const G4ThreeVector GetMomentum() const { return fMomentum; }; - inline G4StepStatus GetStepStatus() const { return fStepStatus; }; - inline G4String GetVolumeName() const { return fVolumeName; }; - -// Get method for HEPRep style attributes - - virtual const std::map* GetAttDefs() const; - virtual std::vector* CreateAttValues() const; - -//--------- - private: -//--------- - -// Member data - - G4double fTime; - G4ThreeVector fMomentum; - G4StepStatus fStepStatus; - G4String fVolumeName; + virtual const std::map* GetAttDefs() const; + virtual std::vector* CreateAttValues() const; + private: + G4double fTime; + G4ThreeVector fMomentum; + G4StepStatus fStepStatus; + G4String fVolumeName; }; extern G4ThreadLocal G4Allocator* WLSTrajPointAllocator; inline void* WLSTrajectoryPoint::operator new(size_t) { - if(!WLSTrajPointAllocator) - WLSTrajPointAllocator = new G4Allocator; - return (void *) WLSTrajPointAllocator->MallocSingle(); + if(!WLSTrajPointAllocator) + WLSTrajPointAllocator = new G4Allocator; + return (void*) WLSTrajPointAllocator->MallocSingle(); } -inline void WLSTrajectoryPoint::operator delete(void *aTrajectoryPoint) +inline void WLSTrajectoryPoint::operator delete(void* aTrajectoryPoint) { - WLSTrajPointAllocator->FreeSingle( - (WLSTrajectoryPoint *) aTrajectoryPoint); + WLSTrajPointAllocator->FreeSingle((WLSTrajectoryPoint*) aTrajectoryPoint); } #endif diff --git a/examples/extended/optical/wls/include/WLSUserTrackInformation.hh b/examples/extended/optical/wls/include/WLSUserTrackInformation.hh index e5a91109ae..43b4b5194c 100644 --- a/examples/extended/optical/wls/include/WLSUserTrackInformation.hh +++ b/examples/extended/optical/wls/include/WLSUserTrackInformation.hh @@ -34,15 +34,23 @@ #ifndef WLSUserTrackInformation_h #define WLSUserTrackInformation_h 1 +#include "G4ThreeVector.hh" #include "G4VUserTrackInformation.hh" -#include "G4ThreeVector.hh" - -enum TrackStatus { undefined=0, - left=1, right=2, defined = 3, - EscapedFromSide=4, EscapedFromReadOut=8, - ReflectedAtMirror=16, ReflectedAtReadOut=32, - murderee=64, InsideOfFiber=128, OutsideOfFiber=256}; +enum TrackStatus +{ + undefined = 0, + left = 1, + right = 2, + defined = 3, + EscapedFromSide = 4, + EscapedFromReadOut = 8, + ReflectedAtMirror = 16, + ReflectedAtReadOut = 32, + murderee = 64, + InsideOfFiber = 128, + OutsideOfFiber = 256 +}; /*TrackStatus: undefined: @@ -60,29 +68,27 @@ enum TrackStatus { undefined=0, class WLSUserTrackInformation : public G4VUserTrackInformation { + public: + WLSUserTrackInformation(); + ~WLSUserTrackInformation(); - public: + const G4ThreeVector& GetExitPosition() const { return fExitPosition; } + void SetExitPosition(const G4ThreeVector& pos) { fExitPosition = pos; } - WLSUserTrackInformation(); - virtual ~WLSUserTrackInformation(); - - const G4ThreeVector& GetExitPosition() const { return fExitPosition; } - void SetExitPosition (const G4ThreeVector& pos) { fExitPosition = pos; } + // Try adding a status flag and return if it is successful or not + // Cannot Add Undefine or a flag that conflicts with another flag + // Return true if the addition of flag is successful, false otherwise + G4bool AddStatusFlag(TrackStatus s); - // Try adding a status flag and return if it is successful or not - // Cannot Add Undefine or a flag that conflicts with another flag - // Return true if the addition of flag is successful, false otherwise - G4bool AddStatusFlag(TrackStatus s); - - // Check if a certain flag is on - G4bool IsStatus(TrackStatus s) - { return s == undefined ? !(fStatus &= defined) : fStatus & s; } - - private: - - G4int fStatus; - G4ThreeVector fExitPosition; + // Check if a certain flag is on + G4bool IsStatus(TrackStatus s) + { + return s == undefined ? !(fStatus &= defined) : fStatus & s; + } + private: + G4int fStatus; + G4ThreeVector fExitPosition; }; #endif diff --git a/examples/extended/optical/wls/init.in b/examples/extended/optical/wls/init.in deleted file mode 100644 index 3670571ba3..0000000000 --- a/examples/extended/optical/wls/init.in +++ /dev/null @@ -1,24 +0,0 @@ -# -# Macro file for the initialization phase of wls -# -#/run/verbose 1 -#/control/verbose 1 -#/event/verbose 1 -#/tracking/verbose 1 -# -/run/initialize -# -#/WLS/phys/verbose 1 -# -/gps/particle opticalphoton -/gps/ene/type Mono -/gps/ene/mono 2.10 eV -# -/gps/pos/type Plane -/gps/pos/shape Circle -/gps/pos/radius 0.5 mm -/gps/ang/type iso -/gps/ang/mintheta 180.0 deg -/gps/ang/maxtheta 90.0 deg -/gps/pos/centre 0.0 0.0 0.0 cm -# diff --git a/examples/extended/optical/wls/src/WLSActionInitialization.cc b/examples/extended/optical/wls/src/WLSActionInitialization.cc index 8488e09203..2a8fa1c7c4 100644 --- a/examples/extended/optical/wls/src/WLSActionInitialization.cc +++ b/examples/extended/optical/wls/src/WLSActionInitialization.cc @@ -28,28 +28,25 @@ /// \brief Implementation of the WLSActionInitialization class #include "WLSActionInitialization.hh" + #include "WLSDetectorConstruction.hh" - -#include "WLSPrimaryGeneratorAction.hh" - -#include "WLSRunAction.hh" #include "WLSEventAction.hh" -#include "WLSTrackingAction.hh" -#include "WLSSteppingAction.hh" +#include "WLSPrimaryGeneratorAction.hh" +#include "WLSRunAction.hh" #include "WLSStackingAction.hh" +#include "WLSSteppingAction.hh" +#include "WLSTrackingAction.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSActionInitialization::WLSActionInitialization(WLSDetectorConstruction* det) - : G4VUserActionInitialization(), fDetector(det) -{ -} + : G4VUserActionInitialization() + , fDetector(det) +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSActionInitialization::~WLSActionInitialization() -{ -} +WLSActionInitialization::~WLSActionInitialization() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -63,16 +60,14 @@ void WLSActionInitialization::BuildForMaster() const void WLSActionInitialization::Build() const { SetUserAction(new WLSPrimaryGeneratorAction(fDetector)); + SetUserAction(new WLSRunAction()); - WLSRunAction* runAction = new WLSRunAction(); - WLSEventAction* eventAction = new WLSEventAction(runAction); - - SetUserAction(runAction); + WLSEventAction* eventAction = new WLSEventAction(); SetUserAction(eventAction); + SetUserAction(new WLSTrackingAction()); - SetUserAction(new WLSSteppingAction(fDetector)); + SetUserAction(new WLSSteppingAction(fDetector, eventAction)); SetUserAction(new WLSStackingAction()); -} +} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - diff --git a/examples/extended/optical/wls/src/WLSDetectorConstruction.cc b/examples/extended/optical/wls/src/WLSDetectorConstruction.cc index b47771dd4e..78c2cf947d 100644 --- a/examples/extended/optical/wls/src/WLSDetectorConstruction.cc +++ b/examples/extended/optical/wls/src/WLSDetectorConstruction.cc @@ -28,108 +28,108 @@ /// \brief Implementation of the WLSDetectorConstruction class // // -#include "G4ios.hh" -#include "globals.hh" -#include "G4Box.hh" -#include "G4Tubs.hh" -#include "G4EllipticalTube.hh" - -#include "G4LogicalVolume.hh" -#include "G4PVPlacement.hh" - -#include "G4OpticalSurface.hh" -#include "G4LogicalSkinSurface.hh" -#include "G4LogicalBorderSurface.hh" - -#include "G4Material.hh" -#include "G4NistManager.hh" - -#include "G4GeometryManager.hh" -#include "G4SolidStore.hh" -#include "G4LogicalVolumeStore.hh" -#include "G4PhysicalVolumeStore.hh" - -#include "G4RunManager.hh" - -#include "G4SDManager.hh" #include "WLSDetectorConstruction.hh" + #include "WLSDetectorMessenger.hh" #include "WLSMaterials.hh" #include "WLSPhotonDetSD.hh" -#include "G4UserLimits.hh" +#include "globals.hh" +#include "G4Box.hh" +#include "G4EllipticalTube.hh" +#include "G4ios.hh" +#include "G4GeometryManager.hh" +#include "G4LogicalBorderSurface.hh" +#include "G4LogicalSkinSurface.hh" +#include "G4LogicalVolume.hh" +#include "G4LogicalVolumeStore.hh" +#include "G4Material.hh" +#include "G4NistManager.hh" +#include "G4OpticalSurface.hh" #include "G4PhysicalConstants.hh" +#include "G4PhysicalVolumeStore.hh" +#include "G4PVPlacement.hh" +#include "G4RunManager.hh" +#include "G4SDManager.hh" +#include "G4SolidStore.hh" #include "G4SystemOfUnits.hh" +#include "G4Tubs.hh" +#include "G4UserLimits.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSDetectorConstruction::WLSDetectorConstruction() - : fMaterials(NULL), fLogicHole(NULL), fLogicWorld(NULL), - fPhysiWorld(NULL), fPhysiHole(NULL) + : fMaterials(nullptr) + , fLogicHole(nullptr) + , fLogicWorld(nullptr) + , fPhysiWorld(nullptr) + , fPhysiHole(nullptr) { fDetectorMessenger = new WLSDetectorMessenger(this); fNumOfCladLayers = 0; - + fSurfaceRoughness = 1; - - fMirrorToggle = true; - fMirrorPolish = 1.; + + fMirrorToggle = true; + fMirrorPolish = 1.; fMirrorReflectivity = 1.; - fMPPCPolish = 1.; + fMPPCPolish = 1.; fMPPCReflectivity = 0.; - fExtrusionPolish = 1.; + fExtrusionPolish = 1.; fExtrusionReflectivity = 1.; - + fXYRatio = 1.0; - fWLSfiberZ = 1.*m; - fWLSfiberRY = 0.5*mm; + fWLSfiberZ = 1. * m; + fWLSfiberRY = 0.5 * mm; fWLSfiberOrigin = 0.0; - + fMPPCShape = "Circle"; fMPPCHalfL = fWLSfiberRY; - fMPPCDist = 0.00*mm; - fMPPCTheta = 0.0*deg; - fMPPCZ = 0.05*mm; - - fClrfiberZ = fMPPCZ + 10.*nm; - fMirrorZ = 0.1*mm; + fMPPCDist = 0.00 * mm; + fMPPCTheta = 0.0 * deg; + fMPPCZ = 0.05 * mm; - fBarLength = 1.*m; - fBarBase = 9.6*mm; - fHoleRadius = 0.9*mm; + fClrfiberZ = fMPPCZ + 10. * nm; + fMirrorZ = 0.1 * mm; + + fBarLength = 1. * m; + fBarBase = 9.6 * mm; + fHoleRadius = 0.9 * mm; fHoleLength = fBarLength; - fCoatingThickness = 0.25*mm; - fCoatingRadius = 1.875*mm; + fCoatingThickness = 0.25 * mm; + fCoatingRadius = 1.875 * mm; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSDetectorConstruction::~WLSDetectorConstruction() { - if (fDetectorMessenger) delete fDetectorMessenger; - if (fMaterials) delete fMaterials; + if(fDetectorMessenger) + delete fDetectorMessenger; + if(fMaterials) + delete fMaterials; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4VPhysicalVolume* WLSDetectorConstruction::Construct() { - if (fPhysiWorld) { - G4GeometryManager::GetInstance()->OpenGeometry(); - G4PhysicalVolumeStore::GetInstance()->Clean(); - G4LogicalVolumeStore::GetInstance()->Clean(); - G4SolidStore::GetInstance()->Clean(); - G4LogicalSkinSurface::CleanSurfaceTable(); - G4LogicalBorderSurface::CleanSurfaceTable(); + if(fPhysiWorld) + { + G4GeometryManager::GetInstance()->OpenGeometry(); + G4PhysicalVolumeStore::GetInstance()->Clean(); + G4LogicalVolumeStore::GetInstance()->Clean(); + G4SolidStore::GetInstance()->Clean(); + G4LogicalSkinSurface::CleanSurfaceTable(); + G4LogicalBorderSurface::CleanSurfaceTable(); } fMaterials = WLSMaterials::GetInstance(); - UpdateGeometryParameters(); return ConstructDetector(); @@ -144,214 +144,142 @@ G4VPhysicalVolume* WLSDetectorConstruction::ConstructDetector() //-------------------------------------------------- G4VSolid* solidWorld = - new G4Box("World", fWorldSizeX, fWorldSizeY, fWorldSizeZ); + new G4Box("World", fWorldSizeX, fWorldSizeY, fWorldSizeZ); - fLogicWorld = new G4LogicalVolume(solidWorld, - FindMaterial("G4_AIR"), - "World"); + fLogicWorld = + new G4LogicalVolume(solidWorld, FindMaterial("G4_AIR"), "World"); - fPhysiWorld = new G4PVPlacement(0, - G4ThreeVector(), - fLogicWorld, - "World", - 0, - false, - 0); + fPhysiWorld = + new G4PVPlacement(0, G4ThreeVector(), fLogicWorld, "World", 0, false, 0); //-------------------------------------------------- // Extrusion //-------------------------------------------------- - G4VSolid* solidExtrusion = - new G4Box("Extrusion",GetBarBase()/2,GetBarBase()/2,GetBarLength()/2); + G4VSolid* solidExtrusion = new G4Box("Extrusion", GetBarBase() / 2., + GetBarBase() / 2., GetBarLength() / 2.); G4LogicalVolume* logicExtrusion = - new G4LogicalVolume(solidExtrusion, - FindMaterial("Coating"), - "Extrusion"); + new G4LogicalVolume(solidExtrusion, FindMaterial("Coating"), "Extrusion"); - G4OpticalSurface* TiO2Surface = new G4OpticalSurface("TiO2Surface", - glisur, - ground, - dielectric_metal, - fExtrusionPolish); + G4OpticalSurface* TiO2Surface = new G4OpticalSurface( + "TiO2Surface", glisur, ground, dielectric_metal, fExtrusionPolish); G4MaterialPropertiesTable* TiO2SurfaceProperty = - new G4MaterialPropertiesTable(); + new G4MaterialPropertiesTable(); - G4double p_TiO2[] = {2.00*eV, 3.47*eV}; - const G4int nbins = sizeof(p_TiO2)/sizeof(G4double); + std::vector p_TiO2 = { 2.00 * eV, 3.47 * eV }; - G4double refl_TiO2[] = {fExtrusionReflectivity,fExtrusionReflectivity}; - assert(sizeof(refl_TiO2) == sizeof(p_TiO2)); - G4double effi_TiO2[] = {0, 0}; - assert(sizeof(effi_TiO2) == sizeof(p_TiO2)); + std::vector refl_TiO2 = { fExtrusionReflectivity, + fExtrusionReflectivity }; + std::vector effi_TiO2 = { 0., 0. }; - TiO2SurfaceProperty -> AddProperty("REFLECTIVITY",p_TiO2,refl_TiO2,nbins); - TiO2SurfaceProperty -> AddProperty("EFFICIENCY",p_TiO2,effi_TiO2,nbins); + TiO2SurfaceProperty->AddProperty("REFLECTIVITY", p_TiO2, refl_TiO2); + TiO2SurfaceProperty->AddProperty("EFFICIENCY", p_TiO2, effi_TiO2); - TiO2Surface -> SetMaterialPropertiesTable(TiO2SurfaceProperty); + TiO2Surface->SetMaterialPropertiesTable(TiO2SurfaceProperty); - new G4PVPlacement(0, - G4ThreeVector(), - logicExtrusion, - "Extrusion", - fLogicWorld, - false, - 0); + new G4PVPlacement(0, G4ThreeVector(), logicExtrusion, "Extrusion", + fLogicWorld, false, 0); - new G4LogicalSkinSurface("TiO2Surface",logicExtrusion,TiO2Surface); + new G4LogicalSkinSurface("TiO2Surface", logicExtrusion, TiO2Surface); //-------------------------------------------------- // Scintillator //-------------------------------------------------- - G4VSolid* solidScintillator = new G4Box("Scintillator", - GetBarBase()/2-GetCoatingThickness() - -GetCoatingRadius(), - GetBarBase()/2-GetCoatingThickness() - -GetCoatingRadius(), - GetBarLength()/2); + G4VSolid* solidScintillator = + new G4Box("Scintillator", + GetBarBase() / 2. - GetCoatingThickness() - GetCoatingRadius(), + GetBarBase() / 2. - GetCoatingThickness() - GetCoatingRadius(), + GetBarLength() / 2.); - G4LogicalVolume* logicScintillator = - new G4LogicalVolume(solidScintillator, - FindMaterial("Polystyrene"), - "Scintillator"); + G4LogicalVolume* logicScintillator = new G4LogicalVolume( + solidScintillator, FindMaterial("Polystyrene"), "Scintillator"); - new G4PVPlacement(0, - G4ThreeVector(), - logicScintillator, - "Scintillator", - logicExtrusion, - false, - 0); + new G4PVPlacement(0, G4ThreeVector(), logicScintillator, "Scintillator", + logicExtrusion, false, 0); - if (GetCoatingRadius() > 0.*mm) { - G4VSolid* solidScintside = new G4Box("SideOfBar", - GetBarBase()/2-GetCoatingThickness() - -GetCoatingRadius(), - GetCoatingRadius()/2, - GetBarLength()/2); - G4VSolid* solidScintcrnr = new G4Tubs("CrnrOfBar", - 0.0*cm, - GetCoatingRadius(), - GetBarLength()/2, - 0.*deg, - 90.*deg); - G4LogicalVolume* logicScintSide = - new G4LogicalVolume(solidScintside, - FindMaterial("Polystyrene"), - "SideOfBar"); + if(GetCoatingRadius() > 0.) + { + G4VSolid* solidScintside = + new G4Box("SideOfBar", + GetBarBase() / 2. - GetCoatingThickness() - GetCoatingRadius(), + GetCoatingRadius() / 2., GetBarLength() / 2.); - G4LogicalVolume* logicScintCrnr = - new G4LogicalVolume(solidScintcrnr, - FindMaterial("Polystyrene"), - "CrnrOfBar"); + G4VSolid* solidScintcrnr = + new G4Tubs("CrnrOfBar", 0.0 * cm, GetCoatingRadius(), GetBarLength() / 2., + 0. * deg, 90. * deg); - G4double x = GetBarBase()/2-GetCoatingThickness()-GetCoatingRadius()/2; - G4double y = GetBarBase()/2-GetCoatingThickness()-GetCoatingRadius()/2; + G4LogicalVolume* logicScintSide = new G4LogicalVolume( + solidScintside, FindMaterial("Polystyrene"), "SideOfBar"); - new G4PVPlacement(0, - G4ThreeVector(0,-y,0), - logicScintSide, - "SideOfBar", - logicExtrusion, - false, - 0); - new G4PVPlacement(0, - G4ThreeVector(0, y,0), - logicScintSide, - "SideOfBar", - logicExtrusion, - false, - 1); + G4LogicalVolume* logicScintCrnr = new G4LogicalVolume( + solidScintcrnr, FindMaterial("Polystyrene"), "CrnrOfBar"); - G4RotationMatrix* g4rot = new G4RotationMatrix(); - *g4rot = StringToRotationMatrix("Z90"); - *g4rot = g4rot->inverse(); - if (*g4rot == G4RotationMatrix()) g4rot = NULL; + G4double pos = + GetBarBase() / 2. - GetCoatingThickness() - GetCoatingRadius() / 2.; - new G4PVPlacement(g4rot, - G4ThreeVector(x,0,0), - logicScintSide, - "SideOfBar", - logicExtrusion, - false, - 2); - new G4PVPlacement(g4rot, - G4ThreeVector(-x,0,0), - logicScintSide, - "SideOfBar", - logicExtrusion, - false, - 3); + new G4PVPlacement(nullptr, G4ThreeVector(0., -pos, 0.), logicScintSide, + "SideOfBar", logicExtrusion, false, 0); - x = GetBarBase()/2-GetCoatingThickness()-GetCoatingRadius(); - y = GetBarBase()/2-GetCoatingThickness()-GetCoatingRadius(); + new G4PVPlacement(nullptr, G4ThreeVector(0., pos, 0.), logicScintSide, + "SideOfBar", logicExtrusion, false, 1); - new G4PVPlacement(0, - G4ThreeVector(x,y,0), - logicScintCrnr, - "CrnrOfBar", - logicExtrusion, - false, - 0); + G4RotationMatrix* rot1 = new G4RotationMatrix(); + *rot1 = StringToRotationMatrix("Z90"); + *rot1 = rot1->inverse(); + if(*rot1 == G4RotationMatrix()) + { + rot1 = nullptr; + } - new G4PVPlacement(g4rot, - G4ThreeVector(-x,y,0), - logicScintCrnr, - "CrnrOfBar", - logicExtrusion, - false, - 1); + new G4PVPlacement(rot1, G4ThreeVector(pos, 0., 0.), logicScintSide, + "SideOfBar", logicExtrusion, false, 2); - g4rot = new G4RotationMatrix(); - *g4rot = StringToRotationMatrix("Z180"); - *g4rot = g4rot->inverse(); - if (*g4rot == G4RotationMatrix()) g4rot = NULL; + new G4PVPlacement(rot1, G4ThreeVector(-pos, 0., 0.), logicScintSide, + "SideOfBar", logicExtrusion, false, 3); - new G4PVPlacement(g4rot, - G4ThreeVector(-x,-y,0), - logicScintCrnr, - "CrnrOfBar", - logicExtrusion, - false, - 2); + pos = GetBarBase() / 2. - GetCoatingThickness() - GetCoatingRadius(); - g4rot = new G4RotationMatrix(); - *g4rot = StringToRotationMatrix("Z270"); - *g4rot = g4rot->inverse(); - if (*g4rot == G4RotationMatrix()) g4rot = NULL; + new G4PVPlacement(nullptr, G4ThreeVector(pos, pos, 0.), logicScintCrnr, + "CrnrOfBar", logicExtrusion, false, 0); - new G4PVPlacement(g4rot, - G4ThreeVector(x,-y,0), - logicScintCrnr, - "CrnrOfBar", - logicExtrusion, - false, - 3); + new G4PVPlacement(rot1, G4ThreeVector(-pos, pos, 0.), logicScintCrnr, + "CrnrOfBar", logicExtrusion, false, 1); + G4RotationMatrix* rot2 = new G4RotationMatrix(); + *rot2 = StringToRotationMatrix("Z180"); + *rot2 = rot2->inverse(); + if(*rot2 == G4RotationMatrix()) + { + rot2 = nullptr; + } + + new G4PVPlacement(rot2, G4ThreeVector(-pos, -pos, 0.), logicScintCrnr, + "CrnrOfBar", logicExtrusion, false, 2); + + G4RotationMatrix* rot3 = new G4RotationMatrix(); + *rot3 = StringToRotationMatrix("Z270"); + *rot3 = rot3->inverse(); + if(*rot3 == G4RotationMatrix()) + { + rot3 = nullptr; + } + + new G4PVPlacement(rot3, G4ThreeVector(pos, -pos, 0.), logicScintCrnr, + "CrnrOfBar", logicExtrusion, false, 3); } - if (GetFiberRadius()SetUserLimits(new G4UserLimits(DBL_MAX,DBL_MAX,10*ms)); + logicWLSfiber->SetUserLimits( + new G4UserLimits(DBL_MAX, DBL_MAX, 10. * ms)); - G4VPhysicalVolume* physiWLSfiber = new G4PVPlacement(0, - G4ThreeVector(0.0,0.0,fWLSfiberOrigin), - logicWLSfiber, - "WLSFiber", - logicPlacement, - false, - 0); + G4VPhysicalVolume* physiWLSfiber = + new G4PVPlacement(0, G4ThreeVector(0., 0., fWLSfiberOrigin), + logicWLSfiber, "WLSFiber", logicPlacement, false, 0); - // Place the rough surface only if needed - if (opSurface) { - new G4LogicalBorderSurface("surfaceWLSOut", - physiWLSfiber, - physiPlacement, - opSurface); - new G4LogicalBorderSurface("surfaceWLSIn", - physiPlacement, - physiWLSfiber, - opSurface); - } + // Place the rough surface only if needed + if(opSurface) + { + new G4LogicalBorderSurface("surfaceWLSOut", physiWLSfiber, + physiPlacement, opSurface); + + new G4LogicalBorderSurface("surfaceWLSIn", physiPlacement, + physiWLSfiber, opSurface); + } } //-------------------------------------------------- @@ -532,49 +438,34 @@ void WLSDetectorConstruction::ConstructFiber() //-------------------------------------------------- // Place the mirror only if the user wants the mirror - if (fMirrorToggle) { + if(fMirrorToggle) + { + G4VSolid* solidMirror = + new G4Box("Mirror", fMirrorRmax, fMirrorRmax, fMirrorZ); - G4VSolid* solidMirror = new G4Box("Mirror", - fMirrorRmax, - fMirrorRmax, - fMirrorZ); - - G4LogicalVolume* logicMirror = new G4LogicalVolume(solidMirror, - FindMaterial("G4_Al"), - "Mirror"); + G4LogicalVolume* logicMirror = + new G4LogicalVolume(solidMirror, FindMaterial("G4_Al"), "Mirror"); - G4OpticalSurface* mirrorSurface = new G4OpticalSurface("MirrorSurface", - glisur, - ground, - dielectric_metal, - fMirrorPolish); + G4OpticalSurface* mirrorSurface = new G4OpticalSurface( + "MirrorSurface", glisur, ground, dielectric_metal, fMirrorPolish); - G4MaterialPropertiesTable* mirrorSurfaceProperty = - new G4MaterialPropertiesTable(); + G4MaterialPropertiesTable* mirrorSurfaceProperty = + new G4MaterialPropertiesTable(); - G4double p_mirror[] = {2.00*eV, 3.47*eV}; - const G4int nbins = sizeof(p_mirror)/sizeof(G4double); - G4double refl_mirror[] = {fMirrorReflectivity,fMirrorReflectivity}; - assert(sizeof(refl_mirror) == sizeof(p_mirror)); - G4double effi_mirror[] = {0, 0}; - assert(sizeof(effi_mirror) == sizeof(effi_mirror)); + std::vector p_mirror = { 2.00 * eV, 3.47 * eV }; + std::vector refl_mirror = { fMirrorReflectivity, + fMirrorReflectivity }; + std::vector effi_mirror = { 0., 0. }; - mirrorSurfaceProperty-> - AddProperty("REFLECTIVITY",p_mirror,refl_mirror,nbins); - mirrorSurfaceProperty-> - AddProperty("EFFICIENCY",p_mirror,effi_mirror,nbins); + mirrorSurfaceProperty->AddProperty("REFLECTIVITY", p_mirror, refl_mirror); + mirrorSurfaceProperty->AddProperty("EFFICIENCY", p_mirror, effi_mirror); - mirrorSurface -> SetMaterialPropertiesTable(mirrorSurfaceProperty); + mirrorSurface->SetMaterialPropertiesTable(mirrorSurfaceProperty); - new G4PVPlacement(0, - G4ThreeVector(0.0,0.0,fMirrorOrigin), - logicMirror, - "Mirror", - fLogicWorld, - false, - 0); + new G4PVPlacement(0, G4ThreeVector(0., 0., fMirrorOrigin), logicMirror, + "Mirror", fLogicWorld, false, 0); - new G4LogicalSkinSurface("MirrorSurface",logicMirror,mirrorSurface); + new G4LogicalSkinSurface("MirrorSurface", logicMirror, mirrorSurface); } //-------------------------------------------------- @@ -582,19 +473,13 @@ void WLSDetectorConstruction::ConstructFiber() //-------------------------------------------------- // Clear Fiber (Coupling Layer) - G4VSolid* solidCouple = new G4Box("Couple",fCoupleRX,fCoupleRY,fCoupleZ); + G4VSolid* solidCouple = new G4Box("Couple", fCoupleRX, fCoupleRY, fCoupleZ); - G4LogicalVolume* logicCouple = new G4LogicalVolume(solidCouple, - FindMaterial("G4_AIR"), - "Couple"); + G4LogicalVolume* logicCouple = + new G4LogicalVolume(solidCouple, FindMaterial("G4_AIR"), "Couple"); - new G4PVPlacement(0, - G4ThreeVector(0.0,0.0,fCoupleOrigin), - logicCouple, - "Couple", - fLogicWorld, - false, - 0); + new G4PVPlacement(0, G4ThreeVector(0., 0., fCoupleOrigin), logicCouple, + "Couple", fLogicWorld, false, 0); //-------------------------------------------------- // A logical layer in front of PhotonDet @@ -603,97 +488,83 @@ void WLSDetectorConstruction::ConstructFiber() // Purpose: Preventing direct dielectric to metal contact // Check for valid placement of PhotonDet - if (fMPPCTheta > std::atan(fMPPCDist / fMPPCHalfL)) { - - fMPPCTheta = 0; - fMPPCOriginX = std::sin(fMPPCTheta) * (fMPPCDist + fClrfiberZ); - fMPPCOriginZ = -fCoupleZ+std::cos(fMPPCTheta)*(fMPPCDist+fClrfiberZ); - G4cerr << "Invalid alignment. Alignment Reset to 0" << G4endl; + if(fMPPCTheta > std::atan(fMPPCDist / fMPPCHalfL)) + { + fMPPCTheta = 0.; + fMPPCOriginX = std::sin(fMPPCTheta) * (fMPPCDist + fClrfiberZ); + fMPPCOriginZ = -fCoupleZ + std::cos(fMPPCTheta) * (fMPPCDist + fClrfiberZ); + G4cerr << "Invalid alignment. Alignment Reset to 0" << G4endl; } - + // Clear Fiber (Coupling Layer) G4VSolid* solidClrfiber; - - if ( fMPPCShape == "Square" ) - solidClrfiber = - new G4Box("ClearFiber",fClrfiberHalfL,fClrfiberHalfL,fClrfiberZ); - else - solidClrfiber = - new G4Tubs("ClearFiber",0.,fClrfiberHalfL,fClrfiberZ,0.0*rad,twopi*rad); - G4LogicalVolume* logicClrfiber = - new G4LogicalVolume(solidClrfiber, - FindMaterial("G4_AIR"), - "ClearFiber"); + if(fMPPCShape == "Square") + { + solidClrfiber = + new G4Box("ClearFiber", fClrfiberHalfL, fClrfiberHalfL, fClrfiberZ); + } + else + { + solidClrfiber = + new G4Tubs("ClearFiber", 0., fClrfiberHalfL, fClrfiberZ, 0., twopi); + } + + G4LogicalVolume* logicClrfiber = + new G4LogicalVolume(solidClrfiber, FindMaterial("G4_AIR"), "ClearFiber"); new G4PVPlacement(new G4RotationMatrix(CLHEP::HepRotationY(-fMPPCTheta)), - G4ThreeVector(fMPPCOriginX,0.0,fMPPCOriginZ), - logicClrfiber, - "ClearFiber", - logicCouple, - false, - 0); + G4ThreeVector(fMPPCOriginX, 0.0, fMPPCOriginZ), + logicClrfiber, "ClearFiber", logicCouple, false, 0); //-------------------------------------------------- // PhotonDet (Sensitive Detector) - //-------------------------------------------------- + //-------------------------------------------------- // Physical Construction - G4VSolid* solidPhotonDet; + G4VSolid* solidPhotonDet = nullptr; - if ( fMPPCShape == "Square" ) - solidPhotonDet = new G4Box("PhotonDet",fMPPCHalfL,fMPPCHalfL,fMPPCZ); + if(fMPPCShape == "Square") + solidPhotonDet = new G4Box("PhotonDet", fMPPCHalfL, fMPPCHalfL, fMPPCZ); else - solidPhotonDet = - new G4Tubs("PhotonDet",0.,fMPPCHalfL,fMPPCZ,0.0*rad,twopi*rad); + solidPhotonDet = new G4Tubs("PhotonDet", 0., fMPPCHalfL, fMPPCZ, 0., twopi); - G4LogicalVolume* logicPhotonDet = - new G4LogicalVolume(solidPhotonDet, - FindMaterial("G4_Al"), - "PhotonDet_LV"); + G4LogicalVolume* logicPhotonDet = + new G4LogicalVolume(solidPhotonDet, FindMaterial("G4_Al"), "PhotonDet_LV"); - new G4PVPlacement(0, - G4ThreeVector(0.0,0.0,0.0), - logicPhotonDet, - "PhotonDet", - logicClrfiber, - false, - 0); + new G4PVPlacement(0, G4ThreeVector(0., 0., 0.), logicPhotonDet, "PhotonDet", + logicClrfiber, false, 0); // PhotonDet Surface Properties - G4OpticalSurface* photonDetSurface = new G4OpticalSurface("PhotonDetSurface", - glisur, - ground, - dielectric_metal, - fMPPCPolish); + G4OpticalSurface* photonDetSurface = new G4OpticalSurface( + "PhotonDetSurface", glisur, ground, dielectric_metal, fMPPCPolish); G4MaterialPropertiesTable* photonDetSurfaceProperty = - new G4MaterialPropertiesTable(); + new G4MaterialPropertiesTable(); - G4double p_mppc[] = {2.00*eV, 3.47*eV}; - const G4int nbins = sizeof(p_mppc)/sizeof(G4double); - G4double refl_mppc[] = {fMPPCReflectivity,fMPPCReflectivity}; - assert(sizeof(refl_mppc) == sizeof(p_mppc)); - G4double effi_mppc[] = {1, 1}; - assert(sizeof(effi_mppc) == sizeof(p_mppc)); - - photonDetSurfaceProperty->AddProperty("REFLECTIVITY",p_mppc,refl_mppc,nbins); - photonDetSurfaceProperty->AddProperty("EFFICIENCY",p_mppc,effi_mppc,nbins); + std::vector p_mppc = { 2.00 * eV, 3.47 * eV }; + std::vector refl_mppc = { fMPPCReflectivity, fMPPCReflectivity }; + std::vector effi_mppc = { 1., 1. }; + + photonDetSurfaceProperty->AddProperty("REFLECTIVITY", p_mppc, refl_mppc); + photonDetSurfaceProperty->AddProperty("EFFICIENCY", p_mppc, effi_mppc); photonDetSurface->SetMaterialPropertiesTable(photonDetSurfaceProperty); - new G4LogicalSkinSurface("PhotonDetSurface",logicPhotonDet,photonDetSurface); + new G4LogicalSkinSurface("PhotonDetSurface", logicPhotonDet, + photonDetSurface); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void WLSDetectorConstruction::ConstructSDandField() { - if (!fmppcSD.Get()) { - G4String mppcSDName = "WLS/PhotonDet"; - WLSPhotonDetSD* mppcSD = new WLSPhotonDetSD(mppcSDName); - G4SDManager::GetSDMpointer()->AddNewDetector(mppcSD); - fmppcSD.Put(mppcSD); + if(!fmppcSD.Get()) + { + G4String mppcSDName = "WLS/PhotonDet"; + WLSPhotonDetSD* mppcSD = new WLSPhotonDetSD(mppcSDName); + G4SDManager::GetSDMpointer()->AddNewDetector(mppcSD); + fmppcSD.Put(mppcSD); } SetSensitiveDetector("PhotonDet_LV", fmppcSD.Get(), true); } @@ -702,28 +573,28 @@ void WLSDetectorConstruction::ConstructSDandField() void WLSDetectorConstruction::UpdateGeometryParameters() { - fWLSfiberRX = fXYRatio * fWLSfiberRY; + fWLSfiberRX = fXYRatio * fWLSfiberRY; - fClad1RX = fWLSfiberRX + 0.03*fWLSfiberRX; - fClad1RY = fWLSfiberRY + 0.03*fWLSfiberRY; + fClad1RX = fWLSfiberRX + 0.03 * fWLSfiberRX; + fClad1RY = fWLSfiberRY + 0.03 * fWLSfiberRY; fClad1Z = fWLSfiberZ; - fClad2RX = fClad1RX + 0.03*fWLSfiberRX; - fClad2RY = fClad1RY + 0.03*fWLSfiberRY; + fClad2RX = fClad1RX + 0.03 * fWLSfiberRX; + fClad2RY = fClad1RY + 0.03 * fWLSfiberRY; fClad2Z = fWLSfiberZ; - fWorldSizeX = fClad2RX + fMPPCDist + fMPPCHalfL + 1.*cm; - fWorldSizeY = fClad2RY + fMPPCDist + fMPPCHalfL + 1.*cm; - fWorldSizeZ = fWLSfiberZ + fMPPCDist + fMPPCHalfL + 1.*cm; - + fWorldSizeX = fClad2RX + fMPPCDist + fMPPCHalfL + 1. * cm; + fWorldSizeY = fClad2RY + fMPPCDist + fMPPCHalfL + 1. * cm; + fWorldSizeZ = fWLSfiberZ + fMPPCDist + fMPPCHalfL + 1. * cm; + fCoupleRX = fWorldSizeX; fCoupleRY = fWorldSizeY; - fCoupleZ = (fWorldSizeZ - fWLSfiberZ) / 2; - + fCoupleZ = (fWorldSizeZ - fWLSfiberZ) / 2.; + fClrfiberHalfL = fMPPCHalfL; - + fMirrorRmax = fClad2RY; - + fCoupleOrigin = fWLSfiberOrigin + fWLSfiberZ + fCoupleZ; fMirrorOrigin = fWLSfiberOrigin - fWLSfiberZ - fMirrorZ; fMPPCOriginX = std::sin(fMPPCTheta) * (fMPPCDist + fClrfiberZ); @@ -732,8 +603,8 @@ void WLSDetectorConstruction::UpdateGeometryParameters() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4RotationMatrix - WLSDetectorConstruction::StringToRotationMatrix(G4String rotation) +G4RotationMatrix WLSDetectorConstruction::StringToRotationMatrix( + G4String rotation) { // We apply successive rotations OF THE OBJECT around the FIXED // axes of the parent's local coordinates; rotations are applied @@ -743,56 +614,60 @@ G4RotationMatrix unsigned int place = 0; - while (place < rotation.size()) { + while(place < rotation.size()) + { + G4double angle; + char* p; - G4double angle; - char* p; + const G4String tmpstring = rotation.substr(place + 1); + angle = strtod(tmpstring.c_str(), &p) * deg; - const G4String tmpstring=rotation.substr(place+1); + if(!p || (*p != (char) ',' && *p != (char) '\0')) + { + G4cerr << "Invalid rotation specification: " << rotation.c_str() + << G4endl; + return rot; + } - angle = strtod(tmpstring.c_str(),&p) * deg; - - if (!p || (*p != (char)',' && *p != (char)'\0')) { - G4cerr << "Invalid rotation specification: " << - rotation.c_str() << G4endl; - return rot; - } + G4RotationMatrix thisRotation; - G4RotationMatrix thisRotation; + switch(rotation.substr(place, 1).c_str()[0]) + { + case 'X': + case 'x': + thisRotation = G4RotationMatrix(CLHEP::HepRotationX(angle)); + break; + case 'Y': + case 'y': + thisRotation = G4RotationMatrix(CLHEP::HepRotationY(angle)); + break; + case 'Z': + case 'z': + thisRotation = G4RotationMatrix(CLHEP::HepRotationZ(angle)); + break; + default: + G4cerr << " Invalid rotation specification: " << rotation << G4endl; + return rot; + } - switch(rotation.substr(place,1).c_str()[0]) { - case 'X': case 'x': - thisRotation = G4RotationMatrix(CLHEP::HepRotationX(angle)); - break; - case 'Y': case 'y': - thisRotation = G4RotationMatrix(CLHEP::HepRotationY(angle)); - break; - case 'Z': case 'z': - thisRotation = G4RotationMatrix(CLHEP::HepRotationZ(angle)); - break; - default: - G4cerr << " Invalid rotation specification: " - << rotation << G4endl; - return rot; - } - - rot = thisRotation * rot; - place = rotation.find(',',place); - if (place > rotation.size()) break; - ++place; + rot = thisRotation * rot; + place = rotation.find(',', place); + if(place > rotation.size()) + break; + ++place; } return rot; - } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSDetectorConstruction::SetPhotonDetGeometry (G4String shape) +void WLSDetectorConstruction::SetPhotonDetGeometry(G4String shape) // Set the Geometry of the PhotonDet detector // Pre: shape must be either "Circle" and "Square" { - if (shape == "Circle" || shape == "Square" ) fMPPCShape = shape; + if(shape == "Circle" || shape == "Square") + fMPPCShape = shape; G4RunManager::GetRunManager()->ReinitializeGeometry(); } @@ -803,43 +678,43 @@ void WLSDetectorConstruction::SetNumberOfCladding(G4int num) // Pre: 0 <= num <= 2 { fNumOfCladLayers = num; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSDetectorConstruction::SetWLSLength (G4double length) +void WLSDetectorConstruction::SetWLSLength(G4double length) // Set the TOTAL length of the WLS fiber { fWLSfiberZ = length; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSDetectorConstruction::SetWLSRadius (G4double radius) +void WLSDetectorConstruction::SetWLSRadius(G4double radius) // Set the Y radius of WLS fiber { fWLSfiberRY = radius; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSDetectorConstruction::SetClad1Radius (G4double radius) +void WLSDetectorConstruction::SetClad1Radius(G4double radius) // Set the Y radius of Cladding 1 { fClad1RY = radius; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSDetectorConstruction::SetClad2Radius (G4double radius) +void WLSDetectorConstruction::SetClad2Radius(G4double radius) // Set the Y radius of Cladding 2 { fClad2RY = radius; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -849,16 +724,16 @@ void WLSDetectorConstruction::SetPhotonDetHalfLength(G4double halfL) // The half length will be the radius if PhotonDet is circular { fMPPCHalfL = halfL; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSDetectorConstruction::SetGap (G4double gap) +void WLSDetectorConstruction::SetGap(G4double gap) // Set the distance between fiber end and PhotonDet -{ +{ fMPPCDist = gap; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -870,7 +745,7 @@ void WLSDetectorConstruction::SetPhotonDetAlignment(G4double theta) // facing towards the center of the fiber { fMPPCTheta = theta; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -880,7 +755,7 @@ void WLSDetectorConstruction::SetSurfaceRoughness(G4double roughness) // Pre: 0 < roughness <= 1 { fSurfaceRoughness = roughness; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -890,7 +765,7 @@ void WLSDetectorConstruction::SetMirrorPolish(G4double polish) // Pre: 0 < polish <= 1 { fMirrorPolish = polish; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -900,7 +775,7 @@ void WLSDetectorConstruction::SetMirrorReflectivity(G4double reflectivity) // Pre: 0 < reflectivity <= 1 { fMirrorReflectivity = reflectivity; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -910,7 +785,7 @@ void WLSDetectorConstruction::SetPhotonDetPolish(G4double polish) // Pre: 0 < polish <= 1 { fMPPCPolish = polish; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -920,7 +795,7 @@ void WLSDetectorConstruction::SetPhotonDetReflectivity(G4double reflectivity) // Pre: 0 < reflectivity <= 1 { fMPPCReflectivity = reflectivity; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -930,7 +805,7 @@ void WLSDetectorConstruction::SetMirror(G4bool flag) // True means place the mirror, false means otherwise { fMirrorToggle = flag; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -940,52 +815,52 @@ void WLSDetectorConstruction::SetXYRatio(G4double r) // a ratio of 1 would produce a circle { fXYRatio = r; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSDetectorConstruction::SetBarLength (G4double length) +void WLSDetectorConstruction::SetBarLength(G4double length) // Set the length of the scintillator bar { fBarLength = length; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSDetectorConstruction::SetBarBase (G4double side) +void WLSDetectorConstruction::SetBarBase(G4double side) // Set the side of the scintillator bar { fBarBase = side; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSDetectorConstruction::SetHoleRadius (G4double radius) +void WLSDetectorConstruction::SetHoleRadius(G4double radius) // Set the radius of the fiber hole { fHoleRadius = radius; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSDetectorConstruction::SetCoatingThickness (G4double thick) +void WLSDetectorConstruction::SetCoatingThickness(G4double thick) // Set thickness of the coating on the bars { fCoatingThickness = thick; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSDetectorConstruction::SetCoatingRadius (G4double radius) +void WLSDetectorConstruction::SetCoatingRadius(G4double radius) // Set inner radius of the corner bar coating { fCoatingRadius = radius; - G4RunManager::GetRunManager()->ReinitializeGeometry(); + G4RunManager::GetRunManager()->GeometryHasBeenModified(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -1015,7 +890,9 @@ G4double WLSDetectorConstruction::GetFiberRadius() { return GetWLSFiberRMax(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4double WLSDetectorConstruction::GetCoatingThickness() - { return fCoatingThickness; } +{ + return fCoatingThickness; +} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -1032,8 +909,10 @@ G4double WLSDetectorConstruction::GetWLSFiberEnd() G4double WLSDetectorConstruction::GetWLSFiberRMax() { - if (fNumOfCladLayers == 2) return fClad2RY; - if (fNumOfCladLayers == 1) return fClad1RY; + if(fNumOfCladLayers == 2) + return fClad2RY; + if(fNumOfCladLayers == 1) + return fClad1RY; return fWLSfiberRY; } @@ -1049,14 +928,14 @@ G4double WLSDetectorConstruction::GetSurfaceRoughness() // Return True if the fiber construction is ideal G4bool WLSDetectorConstruction::IsPerfectFiber() { - return fSurfaceRoughness == 1. && fXYRatio == 1. - && (!fMirrorToggle || - (fMirrorPolish == 1. && fMirrorReflectivity == 1.)); + return fSurfaceRoughness == 1. && fXYRatio == 1. && + (!fMirrorToggle || (fMirrorPolish == 1. && fMirrorReflectivity == 1.)); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4Material* WLSDetectorConstruction::FindMaterial(G4String name) { - G4Material* material = G4Material::GetMaterial(name,true); - return material; +G4Material* WLSDetectorConstruction::FindMaterial(G4String name) +{ + G4Material* material = G4Material::GetMaterial(name, true); + return material; } diff --git a/examples/extended/optical/wls/src/WLSDetectorMessenger.cc b/examples/extended/optical/wls/src/WLSDetectorMessenger.cc index e7948113bd..b6534fd510 100644 --- a/examples/extended/optical/wls/src/WLSDetectorMessenger.cc +++ b/examples/extended/optical/wls/src/WLSDetectorMessenger.cc @@ -30,209 +30,209 @@ // #include "WLSDetectorMessenger.hh" -#include "G4UIdirectory.hh" #include "G4UIcmdWithABool.hh" -#include "G4UIcmdWithAString.hh" #include "G4UIcmdWithADouble.hh" -#include "G4UIcmdWithAnInteger.hh" #include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIcmdWithAnInteger.hh" +#include "G4UIcmdWithAString.hh" #include "G4UIcmdWithoutParameter.hh" +#include "G4UIdirectory.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSDetectorMessenger::WLSDetectorMessenger(WLSDetectorConstruction * det) +WLSDetectorMessenger::WLSDetectorMessenger(WLSDetectorConstruction* det) : fDetector(det) { fDetDir = new G4UIdirectory("/WLS/"); fDetDir->SetGuidance(" Geometry Setup "); fSetPhotonDetGeometryCmd = - new G4UIcmdWithAString("/WLS/setPhotonDetGeometry",this); - fSetPhotonDetGeometryCmd-> - SetGuidance("Select the geometry of the PhotonDet detector"); + new G4UIcmdWithAString("/WLS/setPhotonDetGeometry", this); + fSetPhotonDetGeometryCmd->SetGuidance( + "Select the geometry of the PhotonDet detector"); fSetPhotonDetGeometryCmd->SetGuidance("Only Accepts 'Circle' and 'Square'"); fSetPhotonDetGeometryCmd->SetCandidates("Circle Square"); - fSetPhotonDetGeometryCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetPhotonDetGeometryCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetPhotonDetGeometryCmd->SetToBeBroadcasted(false); - + fSetNumOfCladLayersCmd = - new G4UIcmdWithAnInteger("/WLS/setNumOfLayers", this); + new G4UIcmdWithAnInteger("/WLS/setNumOfLayers", this); fSetNumOfCladLayersCmd->SetGuidance("Select the number of cladding layers"); fSetNumOfCladLayersCmd->SetGuidance("Maximum number is 2"); - fSetNumOfCladLayersCmd->SetParameterName("numberOfLayers",false); + fSetNumOfCladLayersCmd->SetParameterName("numberOfLayers", false); fSetNumOfCladLayersCmd->SetRange("numberOfLayers>=0 && numberOfLayers<=2"); - fSetNumOfCladLayersCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetNumOfCladLayersCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetNumOfCladLayersCmd->SetToBeBroadcasted(false); fSetSurfaceRoughnessCmd = - new G4UIcmdWithADouble("/WLS/setSurfaceRoughness", this); - fSetSurfaceRoughnessCmd-> - SetGuidance("Set the roughness between Clad1 and WLS Fiber"); - fSetSurfaceRoughnessCmd->SetParameterName("roughness",false); + new G4UIcmdWithADouble("/WLS/setSurfaceRoughness", this); + fSetSurfaceRoughnessCmd->SetGuidance( + "Set the roughness between Clad1 and WLS Fiber"); + fSetSurfaceRoughnessCmd->SetParameterName("roughness", false); fSetSurfaceRoughnessCmd->SetRange("roughness>0 && roughness<=1"); - fSetSurfaceRoughnessCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetSurfaceRoughnessCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetSurfaceRoughnessCmd->SetToBeBroadcasted(false); fSetXYRatioCmd = new G4UIcmdWithADouble("/WLS/setXYRatio", this); fSetXYRatioCmd->SetGuidance("Set the ratio between x and y axis (x/y)"); - fSetXYRatioCmd->SetParameterName("ratio",false); + fSetXYRatioCmd->SetParameterName("ratio", false); fSetXYRatioCmd->SetRange("ratio>0 && ratio<=1"); - fSetXYRatioCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetXYRatioCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetXYRatioCmd->SetToBeBroadcasted(false); fSetMirrorPolishCmd = new G4UIcmdWithADouble("/WLS/setMirrorPolish", this); fSetMirrorPolishCmd->SetGuidance("Set the polish of the mirror"); - fSetMirrorPolishCmd->SetParameterName("polish",false); + fSetMirrorPolishCmd->SetParameterName("polish", false); fSetMirrorPolishCmd->SetRange("polish>0 && polish<=1"); - fSetMirrorPolishCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetMirrorPolishCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetMirrorPolishCmd->SetToBeBroadcasted(false); fSetMirrorReflectivityCmd = - new G4UIcmdWithADouble("/WLS/setMirrorReflectivity", this); + new G4UIcmdWithADouble("/WLS/setMirrorReflectivity", this); fSetMirrorReflectivityCmd->SetGuidance("Set the reflectivity of the mirror"); - fSetMirrorReflectivityCmd->SetParameterName("reflectivity",false); + fSetMirrorReflectivityCmd->SetParameterName("reflectivity", false); fSetMirrorReflectivityCmd->SetRange("reflectivity>=0 && reflectivity<=1"); - fSetMirrorReflectivityCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetMirrorReflectivityCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetMirrorReflectivityCmd->SetToBeBroadcasted(false); fSetPhotonDetPolishCmd = - new G4UIcmdWithADouble("/WLS/setPhotonDetPolish", this); + new G4UIcmdWithADouble("/WLS/setPhotonDetPolish", this); fSetPhotonDetPolishCmd->SetGuidance("Set the polish of the mirror"); - fSetPhotonDetPolishCmd->SetParameterName("polish",false); + fSetPhotonDetPolishCmd->SetParameterName("polish", false); fSetPhotonDetPolishCmd->SetRange("polish>0 && polish<=1"); - fSetPhotonDetPolishCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetPhotonDetPolishCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetPhotonDetPolishCmd->SetToBeBroadcasted(false); fSetPhotonDetReflectivityCmd = - new G4UIcmdWithADouble("/WLS/setPhotonDetReflectivity", this); - fSetPhotonDetReflectivityCmd-> - SetGuidance("Set the reflectivity of the mirror"); - fSetPhotonDetReflectivityCmd->SetParameterName("reflectivity",false); + new G4UIcmdWithADouble("/WLS/setPhotonDetReflectivity", this); + fSetPhotonDetReflectivityCmd->SetGuidance( + "Set the reflectivity of the mirror"); + fSetPhotonDetReflectivityCmd->SetParameterName("reflectivity", false); fSetPhotonDetReflectivityCmd->SetRange("reflectivity>=0 && reflectivity<=1"); fSetPhotonDetReflectivityCmd->AvailableForStates(G4State_PreInit); fSetPhotonDetReflectivityCmd->SetToBeBroadcasted(false); - fSetWLSLengthCmd = new G4UIcmdWithADoubleAndUnit("/WLS/setWLSLength",this); + fSetWLSLengthCmd = new G4UIcmdWithADoubleAndUnit("/WLS/setWLSLength", this); fSetWLSLengthCmd->SetGuidance("Set the half length of the WLS fiber"); - fSetWLSLengthCmd->SetParameterName("length",false); + fSetWLSLengthCmd->SetParameterName("length", false); fSetWLSLengthCmd->SetRange("length>0."); fSetWLSLengthCmd->SetUnitCategory("Length"); fSetWLSLengthCmd->SetDefaultUnit("mm"); - fSetWLSLengthCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetWLSLengthCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetWLSLengthCmd->SetToBeBroadcasted(false); - fSetWLSRadiusCmd = new G4UIcmdWithADoubleAndUnit("/WLS/setWLSRadius",this); + fSetWLSRadiusCmd = new G4UIcmdWithADoubleAndUnit("/WLS/setWLSRadius", this); fSetWLSRadiusCmd->SetGuidance("Set the radius of the WLS fiber"); - fSetWLSRadiusCmd->SetParameterName("radius",false); + fSetWLSRadiusCmd->SetParameterName("radius", false); fSetWLSRadiusCmd->SetRange("radius>0."); fSetWLSRadiusCmd->SetUnitCategory("Length"); fSetWLSRadiusCmd->SetDefaultUnit("mm"); - fSetWLSRadiusCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetWLSRadiusCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetWLSRadiusCmd->SetToBeBroadcasted(false); fSetClad1RadiusCmd = - new G4UIcmdWithADoubleAndUnit("/WLS/setClad1Radius",this); + new G4UIcmdWithADoubleAndUnit("/WLS/setClad1Radius", this); fSetClad1RadiusCmd->SetGuidance("Set the radius of Cladding 1"); - fSetClad1RadiusCmd->SetParameterName("radius",false); + fSetClad1RadiusCmd->SetParameterName("radius", false); fSetClad1RadiusCmd->SetRange("radius>0."); fSetClad1RadiusCmd->SetUnitCategory("Length"); fSetClad1RadiusCmd->SetDefaultUnit("mm"); - fSetClad1RadiusCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetClad1RadiusCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetClad1RadiusCmd->SetToBeBroadcasted(false); fSetClad2RadiusCmd = - new G4UIcmdWithADoubleAndUnit("/WLS/setClad2Radius",this); + new G4UIcmdWithADoubleAndUnit("/WLS/setClad2Radius", this); fSetClad2RadiusCmd->SetGuidance("Set the radius of Cladding 2"); - fSetClad2RadiusCmd->SetParameterName("radius",false); + fSetClad2RadiusCmd->SetParameterName("radius", false); fSetClad2RadiusCmd->SetRange("radius>0."); fSetClad2RadiusCmd->SetUnitCategory("Length"); fSetClad2RadiusCmd->SetDefaultUnit("mm"); - fSetClad2RadiusCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetClad2RadiusCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetClad2RadiusCmd->SetToBeBroadcasted(false); fSetPhotonDetHalfLengthCmd = - new G4UIcmdWithADoubleAndUnit("/WLS/setPhotonDetHalfLength",this); - fSetPhotonDetHalfLengthCmd-> - SetGuidance("Set the half length of PhotonDet detector"); - fSetPhotonDetHalfLengthCmd->SetParameterName("halfL",false); + new G4UIcmdWithADoubleAndUnit("/WLS/setPhotonDetHalfLength", this); + fSetPhotonDetHalfLengthCmd->SetGuidance( + "Set the half length of PhotonDet detector"); + fSetPhotonDetHalfLengthCmd->SetParameterName("halfL", false); fSetPhotonDetHalfLengthCmd->SetRange("halfL>0."); fSetPhotonDetHalfLengthCmd->SetUnitCategory("Length"); fSetPhotonDetHalfLengthCmd->SetDefaultUnit("mm"); - fSetPhotonDetHalfLengthCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetPhotonDetHalfLengthCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetPhotonDetHalfLengthCmd->SetToBeBroadcasted(false); - fSetGapCmd = new G4UIcmdWithADoubleAndUnit("/WLS/setGap",this); + fSetGapCmd = new G4UIcmdWithADoubleAndUnit("/WLS/setGap", this); fSetGapCmd->SetGuidance("Set the distance between PhotonDet and fiber end"); - fSetGapCmd->SetParameterName("theta",false); + fSetGapCmd->SetParameterName("theta", false); fSetGapCmd->SetUnitCategory("Length"); fSetGapCmd->SetDefaultUnit("mm"); fSetGapCmd->SetRange("theta>=0."); - fSetGapCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetGapCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetGapCmd->SetToBeBroadcasted(false); fSetPhotonDetAlignmentCmd = - new G4UIcmdWithADoubleAndUnit("/WLS/setAlignment",this); - fSetPhotonDetAlignmentCmd-> - SetGuidance("Set the deviation of PhotonDet from z axis"); - fSetPhotonDetAlignmentCmd->SetParameterName("theta",false); + new G4UIcmdWithADoubleAndUnit("/WLS/setAlignment", this); + fSetPhotonDetAlignmentCmd->SetGuidance( + "Set the deviation of PhotonDet from z axis"); + fSetPhotonDetAlignmentCmd->SetParameterName("theta", false); fSetPhotonDetAlignmentCmd->SetUnitCategory("Angle"); fSetPhotonDetAlignmentCmd->SetDefaultUnit("deg"); fSetPhotonDetAlignmentCmd->SetRange("theta>-90. && theta<90."); - fSetPhotonDetAlignmentCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetPhotonDetAlignmentCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetPhotonDetAlignmentCmd->SetToBeBroadcasted(false); fSetMirrorCmd = new G4UIcmdWithABool("/WLS/setMirror", this); fSetMirrorCmd->SetGuidance("Place a mirror at the end of the fiber"); - fSetMirrorCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetMirrorCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetMirrorCmd->SetToBeBroadcasted(false); - fSetBarLengthCmd = new G4UIcmdWithADoubleAndUnit("/WLS/setBarLength",this); + fSetBarLengthCmd = new G4UIcmdWithADoubleAndUnit("/WLS/setBarLength", this); fSetBarLengthCmd->SetGuidance("Set the length of the scintillator bar"); - fSetBarLengthCmd->SetParameterName("length",false); + fSetBarLengthCmd->SetParameterName("length", false); fSetBarLengthCmd->SetRange("length>0."); fSetBarLengthCmd->SetUnitCategory("Length"); fSetBarLengthCmd->SetDefaultUnit("mm"); - fSetBarLengthCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetBarLengthCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetBarLengthCmd->SetToBeBroadcasted(false); - fSetBarBaseCmd = new G4UIcmdWithADoubleAndUnit("/WLS/setBarBase",this); + fSetBarBaseCmd = new G4UIcmdWithADoubleAndUnit("/WLS/setBarBase", this); fSetBarBaseCmd->SetGuidance("Set the side length of the scintillator bar"); - fSetBarBaseCmd->SetParameterName("length",false); + fSetBarBaseCmd->SetParameterName("length", false); fSetBarBaseCmd->SetRange("length>0."); fSetBarBaseCmd->SetUnitCategory("Length"); fSetBarBaseCmd->SetDefaultUnit("mm"); - fSetBarBaseCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetBarBaseCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetBarBaseCmd->SetToBeBroadcasted(false); - fSetHoleRadiusCmd = new G4UIcmdWithADoubleAndUnit("/WLS/setHoleRadius",this); + fSetHoleRadiusCmd = new G4UIcmdWithADoubleAndUnit("/WLS/setHoleRadius", this); fSetHoleRadiusCmd->SetGuidance("Set the radius of the fiber hole"); - fSetHoleRadiusCmd->SetParameterName("radius",false); + fSetHoleRadiusCmd->SetParameterName("radius", false); fSetHoleRadiusCmd->SetRange("radius>0."); fSetHoleRadiusCmd->SetUnitCategory("Length"); fSetHoleRadiusCmd->SetDefaultUnit("mm"); - fSetHoleRadiusCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetHoleRadiusCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetHoleRadiusCmd->SetToBeBroadcasted(false); fSetCoatingThicknessCmd = - new G4UIcmdWithADoubleAndUnit("/WLS/setCoatingThickness",this); - fSetCoatingThicknessCmd-> - SetGuidance("Set thickness of the coating on the bars"); - fSetCoatingThicknessCmd->SetParameterName("thick",false); + new G4UIcmdWithADoubleAndUnit("/WLS/setCoatingThickness", this); + fSetCoatingThicknessCmd->SetGuidance( + "Set thickness of the coating on the bars"); + fSetCoatingThicknessCmd->SetParameterName("thick", false); fSetCoatingThicknessCmd->SetUnitCategory("Length"); fSetCoatingThicknessCmd->SetDefaultUnit("mm"); fSetCoatingThicknessCmd->SetRange("thick>=0."); - fSetCoatingThicknessCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetCoatingThicknessCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetCoatingThicknessCmd->SetToBeBroadcasted(false); fSetCoatingRadiusCmd = - new G4UIcmdWithADoubleAndUnit("/WLS/setCoatingRadius",this); - fSetCoatingRadiusCmd-> - SetGuidance("Set inner radius of the corner bar coating"); - fSetCoatingRadiusCmd->SetParameterName("cradius",false); + new G4UIcmdWithADoubleAndUnit("/WLS/setCoatingRadius", this); + fSetCoatingRadiusCmd->SetGuidance( + "Set inner radius of the corner bar coating"); + fSetCoatingRadiusCmd->SetParameterName("cradius", false); fSetCoatingRadiusCmd->SetUnitCategory("Length"); fSetCoatingRadiusCmd->SetDefaultUnit("mm"); fSetCoatingRadiusCmd->SetRange("cradius>=0."); - fSetCoatingRadiusCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + fSetCoatingRadiusCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fSetCoatingRadiusCmd->SetToBeBroadcasted(false); } @@ -242,119 +242,124 @@ WLSDetectorMessenger::~WLSDetectorMessenger() { delete fDetDir; - delete fSetPhotonDetGeometryCmd; - delete fSetNumOfCladLayersCmd; - delete fSetWLSLengthCmd; - delete fSetWLSRadiusCmd; - delete fSetClad1RadiusCmd; - delete fSetClad2RadiusCmd; - delete fSetPhotonDetHalfLengthCmd; - delete fSetGapCmd; - delete fSetPhotonDetAlignmentCmd; - delete fSetSurfaceRoughnessCmd; - delete fSetMirrorPolishCmd; - delete fSetMirrorReflectivityCmd; - delete fSetXYRatioCmd; - delete fSetMirrorCmd; delete fSetBarLengthCmd; delete fSetBarBaseCmd; - delete fSetHoleRadiusCmd; + delete fSetClad1RadiusCmd; + delete fSetClad2RadiusCmd; delete fSetCoatingThicknessCmd; delete fSetCoatingRadiusCmd; + delete fSetGapCmd; + delete fSetHoleRadiusCmd; + delete fSetMirrorCmd; + delete fSetMirrorPolishCmd; + delete fSetMirrorReflectivityCmd; + delete fSetNumOfCladLayersCmd; + delete fSetPhotonDetAlignmentCmd; + delete fSetPhotonDetGeometryCmd; + delete fSetPhotonDetHalfLengthCmd; + delete fSetPhotonDetPolishCmd; + delete fSetPhotonDetReflectivityCmd; + delete fSetSurfaceRoughnessCmd; + delete fSetWLSLengthCmd; + delete fSetWLSRadiusCmd; + delete fSetXYRatioCmd; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSDetectorMessenger::SetNewValue(G4UIcommand* command,G4String val) +void WLSDetectorMessenger::SetNewValue(G4UIcommand* command, G4String val) { - if( command == fSetPhotonDetGeometryCmd ) { - + if(command == fSetPhotonDetGeometryCmd) + { fDetector->SetPhotonDetGeometry(val); } - else if( command == fSetNumOfCladLayersCmd ) { - + else if(command == fSetNumOfCladLayersCmd) + { fDetector->SetNumberOfCladding(G4UIcmdWithAnInteger::GetNewIntValue(val)); } - else if( command == fSetSurfaceRoughnessCmd ) { - + else if(command == fSetSurfaceRoughnessCmd) + { fDetector->SetSurfaceRoughness(G4UIcmdWithADouble::GetNewDoubleValue(val)); } - else if( command == fSetXYRatioCmd ) { - + else if(command == fSetXYRatioCmd) + { fDetector->SetXYRatio(G4UIcmdWithADouble::GetNewDoubleValue(val)); } - else if( command == fSetMirrorPolishCmd ) { - + else if(command == fSetMirrorPolishCmd) + { fDetector->SetMirrorPolish(G4UIcmdWithADouble::GetNewDoubleValue(val)); } - else if( command == fSetMirrorReflectivityCmd ) { - - fDetector-> - SetMirrorReflectivity(G4UIcmdWithADouble::GetNewDoubleValue(val)); + else if(command == fSetMirrorReflectivityCmd) + { + fDetector->SetMirrorReflectivity( + G4UIcmdWithADouble::GetNewDoubleValue(val)); } - else if( command == fSetPhotonDetPolishCmd ) { - + else if(command == fSetPhotonDetPolishCmd) + { fDetector->SetPhotonDetPolish(G4UIcmdWithADouble::GetNewDoubleValue(val)); } - else if( command == fSetPhotonDetReflectivityCmd ) { - - fDetector-> - SetPhotonDetReflectivity(G4UIcmdWithADouble::GetNewDoubleValue(val)); + else if(command == fSetPhotonDetReflectivityCmd) + { + fDetector->SetPhotonDetReflectivity( + G4UIcmdWithADouble::GetNewDoubleValue(val)); } - else if( command == fSetWLSLengthCmd ) { - + else if(command == fSetWLSLengthCmd) + { fDetector->SetWLSLength(G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); } - else if( command == fSetWLSRadiusCmd ) { - + else if(command == fSetWLSRadiusCmd) + { fDetector->SetWLSRadius(G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); } - else if( command == fSetClad1RadiusCmd ) { - - fDetector-> - SetClad1Radius(G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); + else if(command == fSetClad1RadiusCmd) + { + fDetector->SetClad1Radius( + G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); } - else if( command == fSetClad2RadiusCmd ) { - - fDetector-> - SetClad2Radius(G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); + else if(command == fSetClad2RadiusCmd) + { + fDetector->SetClad2Radius( + G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); } - else if( command == fSetPhotonDetHalfLengthCmd ) { - - fDetector-> - SetPhotonDetHalfLength(G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); + else if(command == fSetPhotonDetHalfLengthCmd) + { + fDetector->SetPhotonDetHalfLength( + G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); } - else if( command == fSetGapCmd ) { - - fDetector->SetGap(G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); + else if(command == fSetGapCmd) + { + fDetector->SetGap(G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); } - else if( command == fSetPhotonDetAlignmentCmd ) { - - fDetector-> - SetPhotonDetAlignment(G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); + else if(command == fSetPhotonDetAlignmentCmd) + { + fDetector->SetPhotonDetAlignment( + G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); } - else if( command == fSetMirrorCmd ) { - - fDetector->SetMirror(G4UIcmdWithABool::GetNewBoolValue(val)); + else if(command == fSetMirrorCmd) + { + fDetector->SetMirror(G4UIcmdWithABool::GetNewBoolValue(val)); } - else if( command == fSetBarLengthCmd ) { - - fDetector->SetBarLength(G4UIcmdWithABool::GetNewBoolValue(val)); + else if(command == fSetBarLengthCmd) + { + fDetector->SetBarLength(G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); } - else if( command == fSetBarBaseCmd ) { - - fDetector->SetBarBase(G4UIcmdWithABool::GetNewBoolValue(val)); + else if(command == fSetBarBaseCmd) + { + fDetector->SetBarBase(G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); } - else if( command == fSetHoleRadiusCmd ) { - - fDetector->SetHoleRadius(G4UIcmdWithABool::GetNewBoolValue(val)); + else if(command == fSetHoleRadiusCmd) + { + fDetector->SetHoleRadius( + G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); } - else if( command == fSetCoatingThicknessCmd ) { - - fDetector->SetCoatingThickness(G4UIcmdWithABool::GetNewBoolValue(val)); + else if(command == fSetCoatingThicknessCmd) + { + fDetector->SetCoatingThickness( + G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); } - else if( command == fSetCoatingRadiusCmd ) { - - fDetector->SetCoatingRadius(G4UIcmdWithABool::GetNewBoolValue(val)); + else if(command == fSetCoatingRadiusCmd) + { + fDetector->SetCoatingRadius( + G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); } } diff --git a/examples/extended/optical/wls/src/WLSEventAction.cc b/examples/extended/optical/wls/src/WLSEventAction.cc index de247b6c22..ea3188b5c3 100644 --- a/examples/extended/optical/wls/src/WLSEventAction.cc +++ b/examples/extended/optical/wls/src/WLSEventAction.cc @@ -28,21 +28,21 @@ /// \brief Implementation of the WLSEventAction class // // + #include "WLSEventAction.hh" -#include "WLSRunAction.hh" - #include "WLSEventActionMessenger.hh" - #include "WLSPhotonDetHit.hh" +#include "WLSRun.hh" +#include "WLSRunAction.hh" +#include "WLSTrajectory.hh" #include "G4Event.hh" #include "G4EventManager.hh" -#include "WLSTrajectory.hh" +#include "G4RunManager.hh" +#include "G4SDManager.hh" #include "G4TrajectoryContainer.hh" #include "G4VVisManager.hh" -#include "G4SDManager.hh" - #include "Randomize.hh" // Purpose: Accumulates statistics regarding hits @@ -50,8 +50,8 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSEventAction::WLSEventAction(WLSRunAction* runaction) - : fRunAction(runaction), fVerboseLevel(0) +WLSEventAction::WLSEventAction() + : fVerboseLevel(0) { fMPPCCollID = 0; @@ -60,57 +60,87 @@ WLSEventAction::WLSEventAction(WLSRunAction* runaction) //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSEventAction::~WLSEventAction() -{ - delete fEventMessenger; -} +WLSEventAction::~WLSEventAction() { delete fEventMessenger; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSEventAction::BeginOfEventAction(const G4Event* evt) +void WLSEventAction::BeginOfEventAction(const G4Event*) { - G4int evtNb = evt->GetEventID(); - - if(fVerboseLevel>0) - G4cout << "<<< Event " << evtNb << " started." << G4endl; + fNTIR = 0; + fNExiting = 0; + fEscapedEnd = 0; + fEscapedMid = 0; + fBounce = 0; + fWLSBounce = 0; + fClad1Bounce = 0; + fClad2Bounce = 0; + fReflected = 0; + fDetected = 0; + fEscaped = 0; + fMirror = 0; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#include "G4Threading.hh" - void WLSEventAction::EndOfEventAction(const G4Event* evt) { - if (fVerboseLevel>0) - G4cout << "<<< Event " << evt->GetEventID() << " ended." << G4endl; - - if (fRunAction->GetRndmFreq() == 2) - { - std::ostringstream os; - os<<"endOfEvent_"<GetCollectionID(colName); + G4SDManager* SDman = G4SDManager::GetSDMpointer(); + G4String colName = "PhotonDetHitCollection"; + fMPPCCollID = SDman->GetCollectionID(colName); - G4HCofThisEvent* HCE = evt->GetHCofThisEvent(); - WLSPhotonDetHitsCollection* mppcHC = 0; + G4HCofThisEvent* HCE = evt->GetHCofThisEvent(); + WLSPhotonDetHitsCollection* mppcHC = nullptr; // Get the hit collections - if (HCE) + if(HCE) { - if (fMPPCCollID>=0) mppcHC = - (WLSPhotonDetHitsCollection*)(HCE->GetHC(fMPPCCollID)); + if(fMPPCCollID >= 0) + { + mppcHC = (WLSPhotonDetHitsCollection*) (HCE->GetHC(fMPPCCollID)); + } } // Get hit information about photons that reached the detector in this event - if (mppcHC) + G4int n_hit = 0; + if(mppcHC) { -// G4int n_hit = mppcHC->entries(); + n_hit = mppcHC->entries(); } + + if(fVerboseLevel > 1) + { + G4cout << "-------------------------------------" << G4endl + << " In this event, number of:" << G4endl + << " TIR: " << fNTIR << G4endl + << " Exiting: " << fNExiting << G4endl + << " Escaped Mid: " << fEscapedMid << G4endl + << " Escaped End: " << fEscapedEnd << G4endl + << " Bounced: " << fBounce << G4endl + << " WLS Bounce: " << fWLSBounce << G4endl + << " Clad1 Bounce: " << fClad1Bounce << G4endl + << " Clad2 Bounce: " << fClad2Bounce << G4endl + << " Reflected: " << fReflected << G4endl + << " Detected: " << fDetected << G4endl + << " Escaped: " << fEscaped << G4endl + << " Mirror: " << fMirror << G4endl + << " Detector hit: " << n_hit << G4endl; + } + + WLSRun* run = static_cast( + G4RunManager::GetRunManager()->GetNonConstCurrentRun()); + + run->AddTIR(fNTIR); + run->AddExiting(fNExiting); + run->AddEscapedEnd(fEscapedEnd); + run->AddEscapedMid(fEscapedMid); + run->AddBounce(fBounce); + run->AddClad1Bounce(fClad1Bounce); + run->AddClad2Bounce(fClad2Bounce); + run->AddReflected(fReflected); + run->AddEscaped(fEscaped); + run->AddMirror(fMirror); + run->AddDetectorHits(n_hit); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -122,7 +152,4 @@ G4int WLSEventAction::GetEventNo() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSEventAction::SetEventVerbose(G4int level) -{ - fVerboseLevel = level; -} +void WLSEventAction::SetEventVerbose(G4int level) { fVerboseLevel = level; } diff --git a/examples/extended/optical/wls/src/WLSEventActionMessenger.cc b/examples/extended/optical/wls/src/WLSEventActionMessenger.cc index 7e144a6d28..be3ad8fcdc 100644 --- a/examples/extended/optical/wls/src/WLSEventActionMessenger.cc +++ b/examples/extended/optical/wls/src/WLSEventActionMessenger.cc @@ -28,36 +28,33 @@ /// \brief Implementation of the WLSEventActionMessenger class // // -#include "globals.hh" -#include "G4UIcmdWithAnInteger.hh" +#include "WLSEventActionMessenger.hh" #include "WLSEventAction.hh" -#include "WLSEventActionMessenger.hh" + +#include "G4UIcmdWithAnInteger.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSEventActionMessenger::WLSEventActionMessenger(WLSEventAction* eventaction) : fEventAction(eventaction) { - fSetVerboseCmd = new G4UIcmdWithAnInteger("/event/setverbose",this); - fSetVerboseCmd->SetGuidance("Set verbose level ." ); - fSetVerboseCmd->SetParameterName("level",true); + fSetVerboseCmd = new G4UIcmdWithAnInteger("/WLS/eventVerbose", this); + fSetVerboseCmd->SetGuidance("Set verbose level ."); + fSetVerboseCmd->SetParameterName("level", true); fSetVerboseCmd->SetDefaultValue(0); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSEventActionMessenger::~WLSEventActionMessenger() -{ - delete fSetVerboseCmd; -} +WLSEventActionMessenger::~WLSEventActionMessenger() { delete fSetVerboseCmd; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void WLSEventActionMessenger::SetNewValue(G4UIcommand* command, G4String newValue) { - if (command == fSetVerboseCmd) + if(command == fSetVerboseCmd) fEventAction->SetEventVerbose(fSetVerboseCmd->GetNewIntValue(newValue)); } diff --git a/examples/extended/optical/wls/src/WLSMaterials.cc b/examples/extended/optical/wls/src/WLSMaterials.cc index 35a8a19894..9c461b44d9 100644 --- a/examples/extended/optical/wls/src/WLSMaterials.cc +++ b/examples/extended/optical/wls/src/WLSMaterials.cc @@ -30,16 +30,16 @@ // #include "WLSMaterials.hh" +#include "G4NistManager.hh" #include "G4SystemOfUnits.hh" -WLSMaterials* WLSMaterials::fInstance = 0; +WLSMaterials* WLSMaterials::fInstance = nullptr; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSMaterials::WLSMaterials() { fNistMan = G4NistManager::Instance(); - fNistMan->SetVerbose(2); CreateMaterials(); @@ -49,21 +49,21 @@ WLSMaterials::WLSMaterials() WLSMaterials::~WLSMaterials() { - delete fPMMA; - delete fPethylene; - delete fFPethylene; - delete fPolystyrene; - delete fSilicone; + delete fPMMA; + delete fPethylene; + delete fFPethylene; + delete fPolystyrene; + delete fSilicone; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSMaterials* WLSMaterials::GetInstance() { - if (fInstance == 0) - { - fInstance = new WLSMaterials(); - } + if(!fInstance) + { + fInstance = new WLSMaterials(); + } return fInstance; } @@ -71,14 +71,15 @@ WLSMaterials* WLSMaterials::GetInstance() G4Material* WLSMaterials::GetMaterial(const G4String material) { - G4Material* mat = fNistMan->FindOrBuildMaterial(material); + G4Material* mat = fNistMan->FindOrBuildMaterial(material); - if (!mat) mat = G4Material::GetMaterial(material); - if (!mat) { - std::ostringstream o; - o << "Material " << material << " not found!"; - G4Exception("WLSMaterials::GetMaterial","", - FatalException,o.str().c_str()); + if(!mat) + mat = G4Material::GetMaterial(material); + if(!mat) + { + G4ExceptionDescription ed; + ed << "Material " << material << " not found!"; + G4Exception("WLSMaterials::GetMaterial", "", FatalException, ed); } return mat; @@ -114,14 +115,16 @@ void WLSMaterials::CreateMaterials() // WLSfiber PMMA //-------------------------------------------------- - elements.push_back("C"); natoms.push_back(5); - elements.push_back("H"); natoms.push_back(8); - elements.push_back("O"); natoms.push_back(2); + elements.push_back("C"); + natoms.push_back(5); + elements.push_back("H"); + natoms.push_back(8); + elements.push_back("O"); + natoms.push_back(2); - density = 1.190*g/cm3; + density = 1.190 * g / cm3; - fPMMA = fNistMan-> - ConstructNewMaterial("PMMA", elements, natoms, density); + fPMMA = fNistMan->ConstructNewMaterial("PMMA", elements, natoms, density); elements.clear(); natoms.clear(); @@ -130,13 +133,15 @@ void WLSMaterials::CreateMaterials() // Cladding (polyethylene) //-------------------------------------------------- - elements.push_back("C"); natoms.push_back(2); - elements.push_back("H"); natoms.push_back(4); + elements.push_back("C"); + natoms.push_back(2); + elements.push_back("H"); + natoms.push_back(4); - density = 1.200*g/cm3; + density = 1.200 * g / cm3; - fPethylene = fNistMan-> - ConstructNewMaterial("Pethylene", elements, natoms, density); + fPethylene = + fNistMan->ConstructNewMaterial("Pethylene", elements, natoms, density); elements.clear(); natoms.clear(); @@ -145,13 +150,15 @@ void WLSMaterials::CreateMaterials() // Double Cladding (fluorinated polyethylene) //-------------------------------------------------- - elements.push_back("C"); natoms.push_back(2); - elements.push_back("H"); natoms.push_back(4); + elements.push_back("C"); + natoms.push_back(2); + elements.push_back("H"); + natoms.push_back(4); - density = 1.400*g/cm3; + density = 1.400 * g / cm3; - fFPethylene = fNistMan-> - ConstructNewMaterial("FPethylene", elements, natoms, density); + fFPethylene = + fNistMan->ConstructNewMaterial("FPethylene", elements, natoms, density); elements.clear(); natoms.clear(); @@ -159,14 +166,16 @@ void WLSMaterials::CreateMaterials() //-------------------------------------------------- // Polystyrene //-------------------------------------------------- - - elements.push_back("C"); natoms.push_back(8); - elements.push_back("H"); natoms.push_back(8); - density = 1.050*g/cm3; + elements.push_back("C"); + natoms.push_back(8); + elements.push_back("H"); + natoms.push_back(8); - fPolystyrene = fNistMan-> - ConstructNewMaterial("Polystyrene", elements, natoms, density); + density = 1.050 * g / cm3; + + fPolystyrene = + fNistMan->ConstructNewMaterial("Polystyrene", elements, natoms, density); elements.clear(); natoms.clear(); @@ -175,13 +184,15 @@ void WLSMaterials::CreateMaterials() // Silicone (Template for Optical Grease) //-------------------------------------------------- - elements.push_back("C"); natoms.push_back(2); - elements.push_back("H"); natoms.push_back(6); - - density = 1.060*g/cm3; + elements.push_back("C"); + natoms.push_back(2); + elements.push_back("H"); + natoms.push_back(6); - fSilicone = fNistMan-> - ConstructNewMaterial("Silicone", elements, natoms, density); + density = 1.060 * g / cm3; + + fSilicone = + fNistMan->ConstructNewMaterial("Silicone", elements, natoms, density); elements.clear(); natoms.clear(); @@ -196,13 +207,15 @@ void WLSMaterials::CreateMaterials() // TiO2 //-------------------------------------------------- - elements.push_back("Ti"); natoms.push_back(1); - elements.push_back("O"); natoms.push_back(2); + elements.push_back("Ti"); + natoms.push_back(1); + elements.push_back("O"); + natoms.push_back(2); - density = 4.26*g/cm3; + density = 4.26 * g / cm3; - G4Material* TiO2 = fNistMan-> - ConstructNewMaterial("TiO2", elements, natoms, density); + G4Material* TiO2 = + fNistMan->ConstructNewMaterial("TiO2", elements, natoms, density); elements.clear(); natoms.clear(); @@ -211,47 +224,38 @@ void WLSMaterials::CreateMaterials() // Scintillator Coating - 15% TiO2 and 85% polystyrene by weight. //-------------------------------------------------- - density = 1.52*g/cm3; + density = 1.52 * g / cm3; - fCoating = - new G4Material("Coating", density, ncomponents=2); + fCoating = new G4Material("Coating", density, ncomponents = 2); - fCoating->AddMaterial(TiO2, fractionmass = 15*perCent); - fCoating->AddMaterial(fPolystyrene, fractionmass = 85*perCent); + fCoating->AddMaterial(TiO2, fractionmass = 15 * perCent); + fCoating->AddMaterial(fPolystyrene, fractionmass = 85 * perCent); // // ------------ Generate & Add Material Properties Table ------------ // - G4double photonEnergy[] = - {2.00*eV,2.03*eV,2.06*eV,2.09*eV,2.12*eV, - 2.15*eV,2.18*eV,2.21*eV,2.24*eV,2.27*eV, - 2.30*eV,2.33*eV,2.36*eV,2.39*eV,2.42*eV, - 2.45*eV,2.48*eV,2.51*eV,2.54*eV,2.57*eV, - 2.60*eV,2.63*eV,2.66*eV,2.69*eV,2.72*eV, - 2.75*eV,2.78*eV,2.81*eV,2.84*eV,2.87*eV, - 2.90*eV,2.93*eV,2.96*eV,2.99*eV,3.02*eV, - 3.05*eV,3.08*eV,3.11*eV,3.14*eV,3.17*eV, - 3.20*eV,3.23*eV,3.26*eV,3.29*eV,3.32*eV, - 3.35*eV,3.38*eV,3.41*eV,3.44*eV,3.47*eV}; + std::vector energy = { + 2.00 * eV, 2.03 * eV, 2.06 * eV, 2.09 * eV, 2.12 * eV, 2.15 * eV, 2.18 * eV, + 2.21 * eV, 2.24 * eV, 2.27 * eV, 2.30 * eV, 2.33 * eV, 2.36 * eV, 2.39 * eV, + 2.42 * eV, 2.45 * eV, 2.48 * eV, 2.51 * eV, 2.54 * eV, 2.57 * eV, 2.60 * eV, + 2.63 * eV, 2.66 * eV, 2.69 * eV, 2.72 * eV, 2.75 * eV, 2.78 * eV, 2.81 * eV, + 2.84 * eV, 2.87 * eV, 2.90 * eV, 2.93 * eV, 2.96 * eV, 2.99 * eV, 3.02 * eV, + 3.05 * eV, 3.08 * eV, 3.11 * eV, 3.14 * eV, 3.17 * eV, 3.20 * eV, 3.23 * eV, + 3.26 * eV, 3.29 * eV, 3.32 * eV, 3.35 * eV, 3.38 * eV, 3.41 * eV, 3.44 * eV, + 3.47 * eV + }; - const G4int nEntries = sizeof(photonEnergy)/sizeof(G4double); + std::vector energySmall = { 2.0 * eV, 3.47 * eV }; //-------------------------------------------------- // Air //-------------------------------------------------- - G4double refractiveIndex[] = - { 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, - 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, - 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, - 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, - 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00, 1.00}; - - assert(sizeof(refractiveIndex) == sizeof(photonEnergy)); + std::vector refractiveIndex = { 1.0, 1.0 }; G4MaterialPropertiesTable* mpt = new G4MaterialPropertiesTable(); - mpt->AddProperty("RINDEX", photonEnergy, refractiveIndex, nEntries); + mpt->AddProperty("RINDEX", energySmall, refractiveIndex); fAir->SetMaterialPropertiesTable(mpt); @@ -259,41 +263,33 @@ void WLSMaterials::CreateMaterials() // PMMA for WLSfibers //-------------------------------------------------- - G4double refractiveIndexWLSfiber[] = - { 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, - 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, - 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, - 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, - 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60, 1.60}; + std::vector refractiveIndexWLSfiber = { 1.60, 1.60 }; - assert(sizeof(refractiveIndexWLSfiber) == sizeof(photonEnergy)); + std::vector absWLSfiber = { + 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, + 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, + 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, + 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, 5.40 * m, + 5.40 * m, 1.10 * m, 1.10 * m, 1.10 * m, 1.10 * m, 1.10 * m, 1.10 * m, + 1.10 * m, 1. * mm, 1. * mm, 1. * mm, 1. * mm, 1. * mm, 1. * mm, + 1. * mm, 1. * mm, 1. * mm, 1. * mm, 1. * mm, 1. * mm, 1. * mm, + 1. * mm + }; - G4double absWLSfiber[] = - {5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m, - 5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m, - 5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,5.40*m,1.10*m, - 1.10*m,1.10*m,1.10*m,1.10*m,1.10*m,1.10*m, 1.*mm, 1.*mm, 1.*mm, 1.*mm, - 1.*mm, 1.*mm, 1.*mm, 1.*mm, 1.*mm, 1.*mm, 1.*mm, 1.*mm, 1.*mm, 1.*mm}; - - assert(sizeof(absWLSfiber) == sizeof(photonEnergy)); - - G4double emissionFib[] = - {0.05, 0.10, 0.30, 0.50, 0.75, 1.00, 1.50, 1.85, 2.30, 2.75, - 3.25, 3.80, 4.50, 5.20, 6.00, 7.00, 8.50, 9.50, 11.1, 12.4, - 12.9, 13.0, 12.8, 12.3, 11.1, 11.0, 12.0, 11.0, 17.0, 16.9, - 15.0, 9.00, 2.50, 1.00, 0.05, 0.00, 0.00, 0.00, 0.00, 0.00, - 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00}; - - assert(sizeof(emissionFib) == sizeof(photonEnergy)); + std::vector emissionFib = { + 0.05, 0.10, 0.30, 0.50, 0.75, 1.00, 1.50, 1.85, 2.30, 2.75, + 3.25, 3.80, 4.50, 5.20, 6.00, 7.00, 8.50, 9.50, 11.1, 12.4, + 12.9, 13.0, 12.8, 12.3, 11.1, 11.0, 12.0, 11.0, 17.0, 16.9, + 15.0, 9.00, 2.50, 1.00, 0.05, 0.00, 0.00, 0.00, 0.00, 0.00, + 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00, 0.00 + }; // Add entries into properties table G4MaterialPropertiesTable* mptWLSfiber = new G4MaterialPropertiesTable(); - mptWLSfiber-> - AddProperty("RINDEX",photonEnergy,refractiveIndexWLSfiber,nEntries); - // mptWLSfiber->AddProperty("ABSLENGTH",photonEnergy,absWLSfiber,nEntries); - mptWLSfiber->AddProperty("WLSABSLENGTH",photonEnergy,absWLSfiber,nEntries); - mptWLSfiber->AddProperty("WLSCOMPONENT",photonEnergy,emissionFib,nEntries); - mptWLSfiber->AddConstProperty("WLSTIMECONSTANT", 0.5*ns); + mptWLSfiber->AddProperty("RINDEX", energySmall, refractiveIndexWLSfiber); + mptWLSfiber->AddProperty("WLSABSLENGTH", energy, absWLSfiber); + mptWLSfiber->AddProperty("WLSCOMPONENT", energy, emissionFib); + mptWLSfiber->AddConstProperty("WLSTIMECONSTANT", 0.5 * ns); fPMMA->SetMaterialPropertiesTable(mptWLSfiber); @@ -301,28 +297,14 @@ void WLSMaterials::CreateMaterials() // Polyethylene //-------------------------------------------------- - G4double refractiveIndexClad1[] = - { 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, - 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, - 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, - 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, - 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49, 1.49}; + std::vector refractiveIndexClad1 = { 1.49, 1.49 }; - assert(sizeof(refractiveIndexClad1) == sizeof(photonEnergy)); - - G4double absClad[] = - {20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m, - 20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m, - 20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m, - 20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m, - 20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m,20.0*m}; - - assert(sizeof(absClad) == sizeof(photonEnergy)); + std::vector absClad = { 20.0 * m, 20.0 * m }; // Add entries into properties table G4MaterialPropertiesTable* mptClad1 = new G4MaterialPropertiesTable(); - mptClad1->AddProperty("RINDEX",photonEnergy,refractiveIndexClad1,nEntries); - mptClad1->AddProperty("ABSLENGTH",photonEnergy,absClad,nEntries); + mptClad1->AddProperty("RINDEX", energySmall, refractiveIndexClad1); + mptClad1->AddProperty("ABSLENGTH", energySmall, absClad); fPethylene->SetMaterialPropertiesTable(mptClad1); @@ -330,19 +312,12 @@ void WLSMaterials::CreateMaterials() // Fluorinated Polyethylene //-------------------------------------------------- - G4double refractiveIndexClad2[] = - { 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, - 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, - 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, - 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, - 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42, 1.42}; - - assert(sizeof(refractiveIndexClad2) == sizeof(photonEnergy)); + std::vector refractiveIndexClad2 = { 1.42, 1.42 }; // Add entries into properties table G4MaterialPropertiesTable* mptClad2 = new G4MaterialPropertiesTable(); - mptClad2->AddProperty("RINDEX",photonEnergy,refractiveIndexClad2,nEntries); - mptClad2->AddProperty("ABSLENGTH",photonEnergy,absClad,nEntries); + mptClad2->AddProperty("RINDEX", energySmall, refractiveIndexClad2); + mptClad2->AddProperty("ABSLENGTH", energySmall, absClad); fFPethylene->SetMaterialPropertiesTable(mptClad2); @@ -350,20 +325,12 @@ void WLSMaterials::CreateMaterials() // Silicone //-------------------------------------------------- - G4double refractiveIndexSilicone[] = - { 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, - 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, - 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, - 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, - 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46, 1.46}; - - assert(sizeof(refractiveIndexSilicone) == sizeof(photonEnergy)); + std::vector refractiveIndexSilicone = { 1.46, 1.46 }; // Add entries into properties table G4MaterialPropertiesTable* mptSilicone = new G4MaterialPropertiesTable(); - mptSilicone-> - AddProperty("RINDEX",photonEnergy,refractiveIndexSilicone,nEntries); - mptSilicone->AddProperty("ABSLENGTH",photonEnergy,absClad,nEntries); + mptSilicone->AddProperty("RINDEX", energySmall, refractiveIndexSilicone); + mptSilicone->AddProperty("ABSLENGTH", energySmall, absClad); fSilicone->SetMaterialPropertiesTable(mptSilicone); @@ -371,47 +338,28 @@ void WLSMaterials::CreateMaterials() // Polystyrene //-------------------------------------------------- - G4double refractiveIndexPS[] = - { 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, - 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, - 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, - 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, - 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50, 1.50}; + std::vector refractiveIndexPS = { 1.50, 1.50 }; - assert(sizeof(refractiveIndexPS) == sizeof(photonEnergy)); + std::vector absPS = { 2. * cm, 2. * cm }; - G4double absPS[] = - {2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm, - 2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm, - 2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm, - 2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm, - 2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm,2.*cm}; - - assert(sizeof(absPS) == sizeof(photonEnergy)); - - G4double scintilFast[] = - {0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, - 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, - 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, - 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, - 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0}; - - assert(sizeof(scintilFast) == sizeof(photonEnergy)); + std::vector scintilFast = { + 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, 0.0, + 0.0, 0.0, 0.0, 0.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, + 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0, 1.0 + }; // Add entries into properties table G4MaterialPropertiesTable* mptPolystyrene = new G4MaterialPropertiesTable(); - mptPolystyrene->AddProperty("RINDEX",photonEnergy,refractiveIndexPS,nEntries); - mptPolystyrene->AddProperty("ABSLENGTH",photonEnergy,absPS,nEntries); - mptPolystyrene-> - AddProperty("FASTCOMPONENT",photonEnergy, scintilFast,nEntries); - mptPolystyrene->AddConstProperty("SCINTILLATIONYIELD",10./keV); - mptPolystyrene->AddConstProperty("RESOLUTIONSCALE",1.0); - mptPolystyrene->AddConstProperty("FASTTIMECONSTANT", 10.*ns); - + mptPolystyrene->AddProperty("RINDEX", energySmall, refractiveIndexPS); + mptPolystyrene->AddProperty("ABSLENGTH", energySmall, absPS); + mptPolystyrene->AddProperty("FASTCOMPONENT", energy, scintilFast); + mptPolystyrene->AddConstProperty("SCINTILLATIONYIELD", 10. / keV); + mptPolystyrene->AddConstProperty("RESOLUTIONSCALE", 1.0); + mptPolystyrene->AddConstProperty("FASTTIMECONSTANT", 10. * ns); + fPolystyrene->SetMaterialPropertiesTable(mptPolystyrene); // Set the Birks Constant for the Polystyrene scintillator - - fPolystyrene->GetIonisation()->SetBirksConstant(0.126*mm/MeV); - + fPolystyrene->GetIonisation()->SetBirksConstant(0.126 * mm / MeV); } diff --git a/examples/extended/optical/wls/src/WLSPhotonDetHit.cc b/examples/extended/optical/wls/src/WLSPhotonDetHit.cc index 8b9360541b..ca6190a178 100644 --- a/examples/extended/optical/wls/src/WLSPhotonDetHit.cc +++ b/examples/extended/optical/wls/src/WLSPhotonDetHit.cc @@ -30,7 +30,7 @@ // #include "WLSPhotonDetHit.hh" -G4ThreadLocal G4Allocator* WLSPhotonDetHitAllocator=0; +G4ThreadLocal G4Allocator* WLSPhotonDetHitAllocator = nullptr; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -43,8 +43,7 @@ WLSPhotonDetHit::WLSPhotonDetHit() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSPhotonDetHit::WLSPhotonDetHit(G4ThreeVector pExit, - G4ThreeVector pArrive, +WLSPhotonDetHit::WLSPhotonDetHit(G4ThreeVector pExit, G4ThreeVector pArrive, G4double pTime) { fPosExit = pExit; @@ -54,11 +53,11 @@ WLSPhotonDetHit::WLSPhotonDetHit(G4ThreeVector pExit, //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSPhotonDetHit::~WLSPhotonDetHit() { } +WLSPhotonDetHit::~WLSPhotonDetHit() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSPhotonDetHit::WLSPhotonDetHit(const WLSPhotonDetHit &right) +WLSPhotonDetHit::WLSPhotonDetHit(const WLSPhotonDetHit& right) : G4VHit() { *this = right; @@ -66,7 +65,7 @@ WLSPhotonDetHit::WLSPhotonDetHit(const WLSPhotonDetHit &right) //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -const WLSPhotonDetHit& WLSPhotonDetHit::operator=(const WLSPhotonDetHit &right) +const WLSPhotonDetHit& WLSPhotonDetHit::operator=(const WLSPhotonDetHit& right) { fPosExit = right.fPosExit; fPosArrive = right.fPosArrive; @@ -79,7 +78,6 @@ const WLSPhotonDetHit& WLSPhotonDetHit::operator=(const WLSPhotonDetHit &right) G4bool WLSPhotonDetHit::operator==(const WLSPhotonDetHit& right) const { - return fPosExit == right.fPosExit && - fPosArrive == right.fPosArrive && - fArrivalTime == right.fArrivalTime; + return fPosExit == right.fPosExit && fPosArrive == right.fPosArrive && + fArrivalTime == right.fArrivalTime; } diff --git a/examples/extended/optical/wls/src/WLSPhotonDetSD.cc b/examples/extended/optical/wls/src/WLSPhotonDetSD.cc index db6093bc2a..ad0acb67df 100644 --- a/examples/extended/optical/wls/src/WLSPhotonDetSD.cc +++ b/examples/extended/optical/wls/src/WLSPhotonDetSD.cc @@ -29,85 +29,92 @@ // // #include "WLSPhotonDetSD.hh" + #include "WLSPhotonDetHit.hh" #include "WLSUserTrackInformation.hh" -#include "G4Track.hh" -#include "G4ThreeVector.hh" +#include "G4OpticalPhoton.hh" +#include "G4SDManager.hh" #include "G4Step.hh" -#include "G4ParticleDefinition.hh" -#include "G4VTouchable.hh" +#include "G4ThreeVector.hh" #include "G4TouchableHistory.hh" -#include "G4ios.hh" -#include "G4ParticleTypes.hh" -#include "G4ParticleDefinition.hh" +#include "G4Track.hh" +#include "G4VTouchable.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSPhotonDetSD::WLSPhotonDetSD(G4String name) - : G4VSensitiveDetector(name), fPhotonDetHitCollection(0) + : G4VSensitiveDetector(name) + , fPhotonDetHitCollection(nullptr) + , fHCID(-1) { collectionName.insert("PhotonDetHitCollection"); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSPhotonDetSD::~WLSPhotonDetSD() { } +WLSPhotonDetSD::~WLSPhotonDetSD() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void WLSPhotonDetSD::Initialize(G4HCofThisEvent* HCE) { fPhotonDetHitCollection = - new WLSPhotonDetHitsCollection(SensitiveDetectorName,collectionName[0]); - //Store collection with event and keep ID - static G4int HCID = -1; - if (HCID<0) HCID = GetCollectionID(0); - HCE->AddHitsCollection( HCID, fPhotonDetHitCollection ); + new WLSPhotonDetHitsCollection(SensitiveDetectorName, collectionName[0]); + + if(fHCID < 0) + { + fHCID = + G4SDManager::GetSDMpointer()->GetCollectionID(fPhotonDetHitCollection); + } + HCE->AddHitsCollection(fHCID, fPhotonDetHitCollection); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4bool WLSPhotonDetSD::ProcessHits(G4Step* , G4TouchableHistory* ) +G4bool WLSPhotonDetSD::ProcessHits(G4Step*, G4TouchableHistory*) { return false; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4bool WLSPhotonDetSD::ProcessHits_constStep(const G4Step* aStep, - G4TouchableHistory* ) -//Generates a hit and uses the postStepPoint; PostStepPoint because the hit -//is generated manually when the photon hits the detector +G4bool WLSPhotonDetSD::ProcessHits_boundary(const G4Step* aStep, + G4TouchableHistory*) +// Generates a hit and uses the postStepPoint; PostStepPoint because the hit +// is generated manually when the photon hits the detector { - if (aStep == NULL) return false; + if(!aStep) + return false; G4Track* theTrack = aStep->GetTrack(); // Need to know if this is an optical photon - if(theTrack->GetDefinition() - != G4OpticalPhoton::OpticalPhotonDefinition()) return false; + if(theTrack->GetDefinition() != G4OpticalPhoton::OpticalPhotonDefinition()) + { + return false; + } // Find out information regarding the hit G4StepPoint* thePostPoint = aStep->GetPostStepPoint(); - - WLSUserTrackInformation* trackInformation - = (WLSUserTrackInformation*)theTrack->GetUserInformation(); - - G4TouchableHistory* theTouchable - = (G4TouchableHistory*)(thePostPoint->GetTouchable()); - - G4ThreeVector photonExit = trackInformation -> GetExitPosition(); - G4ThreeVector photonArrive = thePostPoint -> GetPosition(); - G4double arrivalTime = theTrack -> GetGlobalTime(); + + WLSUserTrackInformation* trackInformation = + (WLSUserTrackInformation*) theTrack->GetUserInformation(); + + G4TouchableHistory* theTouchable = + (G4TouchableHistory*) (thePostPoint->GetTouchable()); + + G4ThreeVector photonExit = trackInformation->GetExitPosition(); + G4ThreeVector photonArrive = thePostPoint->GetPosition(); + G4double arrivalTime = theTrack->GetGlobalTime(); // Convert the global coordinate for arriving photons into // the local coordinate of the detector - photonArrive = theTouchable->GetHistory()-> - GetTopTransform().TransformPoint(photonArrive); + photonArrive = + theTouchable->GetHistory()->GetTopTransform().TransformPoint(photonArrive); // Creating the hit and add it to the collection - fPhotonDetHitCollection-> - insert(new WLSPhotonDetHit(photonExit, photonArrive, arrivalTime)); + fPhotonDetHitCollection->insert( + new WLSPhotonDetHit(photonExit, photonArrive, arrivalTime)); return true; } diff --git a/examples/extended/optical/wls/src/WLSPrimaryGeneratorAction.cc b/examples/extended/optical/wls/src/WLSPrimaryGeneratorAction.cc index ec758d0b8b..edc01638ae 100644 --- a/examples/extended/optical/wls/src/WLSPrimaryGeneratorAction.cc +++ b/examples/extended/optical/wls/src/WLSPrimaryGeneratorAction.cc @@ -28,31 +28,25 @@ /// \brief Implementation of the WLSPrimaryGeneratorAction class // // -#include "G4ios.hh" -#include "G4Event.hh" - -#include "G4GeneralParticleSource.hh" - -#include "G4Material.hh" -#include "G4MaterialPropertiesTable.hh" - -#include "G4ParticleTable.hh" -#include "G4ParticleDefinition.hh" - -#include "G4PhysicsTable.hh" - -#include "Randomize.hh" #include "WLSPrimaryGeneratorAction.hh" #include "WLSDetectorConstruction.hh" #include "WLSPrimaryGeneratorMessenger.hh" -#include "G4SystemOfUnits.hh" - #include "G4AutoLock.hh" +#include "G4Event.hh" +#include "G4GeneralParticleSource.hh" +#include "G4Material.hh" +#include "G4MaterialPropertiesTable.hh" +#include "G4OpticalPhoton.hh" +#include "G4PhysicsTable.hh" +#include "G4SystemOfUnits.hh" +#include "G4UImanager.hh" +#include "Randomize.hh" -namespace { +namespace +{ G4Mutex gen_mutex = G4MUTEX_INITIALIZER; } @@ -60,23 +54,18 @@ namespace { G4bool WLSPrimaryGeneratorAction::fFirst = false; -WLSPrimaryGeneratorAction:: - WLSPrimaryGeneratorAction(WLSDetectorConstruction* dc) +WLSPrimaryGeneratorAction::WLSPrimaryGeneratorAction( + WLSDetectorConstruction* dc) { - fDetector = dc; - fIntegralTable = NULL; + fDetector = dc; + fIntegralTable = nullptr; fParticleGun = new G4GeneralParticleSource(); - + fGunMessenger = new WLSPrimaryGeneratorMessenger(this); - // G4String particleName; - // G4ParticleTable* particleTable = G4ParticleTable::GetParticleTable(); - - fTimeConstant = 0.; - -// fParticleGun->SetParticleDefinition(particleTable-> -// FindParticle(particleName="opticalphoton")); + fTimeConstant = 0.; + fUseSampledEnergy = false; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -85,9 +74,10 @@ WLSPrimaryGeneratorAction::~WLSPrimaryGeneratorAction() { delete fParticleGun; delete fGunMessenger; - if (fIntegralTable) { - fIntegralTable->clearAndDestroy(); - delete fIntegralTable; + if(fIntegralTable) + { + fIntegralTable->clearAndDestroy(); + delete fIntegralTable; } } @@ -102,102 +92,105 @@ void WLSPrimaryGeneratorAction::SetDecayTimeConstant(G4double time) void WLSPrimaryGeneratorAction::BuildEmissionSpectrum() { - if (fIntegralTable) return; + if(fIntegralTable) + return; - const G4MaterialTable* theMaterialTable = G4Material::GetMaterialTable(); + const G4MaterialTable* theMaterialTable = G4Material::GetMaterialTable(); + G4int numOfMaterials = G4Material::GetNumberOfMaterials(); - G4int numOfMaterials = G4Material::GetNumberOfMaterials(); + if(!fIntegralTable) + fIntegralTable = new G4PhysicsTable(numOfMaterials); - if(!fIntegralTable)fIntegralTable = new G4PhysicsTable(numOfMaterials); + for(G4int i = 0; i < numOfMaterials; ++i) + { + G4PhysicsOrderedFreeVector* vec = new G4PhysicsOrderedFreeVector(); - for (G4int i=0 ; i < numOfMaterials; i++) { + G4MaterialPropertiesTable* MPT = + (*theMaterialTable)[i]->GetMaterialPropertiesTable(); - G4PhysicsOrderedFreeVector* aPhysicsOrderedFreeVector = - new G4PhysicsOrderedFreeVector(); + if(MPT) + { + G4MaterialPropertyVector* theWLSVector = MPT->GetProperty("WLSCOMPONENT"); - G4Material* aMaterial = (*theMaterialTable)[i]; + if(theWLSVector) + { + G4double currentIN = (*theWLSVector)[0]; + if(currentIN >= 0.0) + { + G4double currentPM = theWLSVector->Energy(0); + G4double currentCII = 0.0; + vec->InsertValues(currentPM, currentCII); + G4double prevPM = currentPM; + G4double prevCII = currentCII; + G4double prevIN = currentIN; - G4MaterialPropertiesTable* aMaterialPropertiesTable = - aMaterial->GetMaterialPropertiesTable(); - - if (aMaterialPropertiesTable) { - G4MaterialPropertyVector* theWLSVector = - aMaterialPropertiesTable->GetProperty("WLSCOMPONENT"); - - if (theWLSVector) { - G4double currentIN = (*theWLSVector)[0]; - if (currentIN >= 0.0) { - G4double currentPM = theWLSVector->Energy(0); - G4double currentCII = 0.0; - aPhysicsOrderedFreeVector-> - InsertValues(currentPM , currentCII); - G4double prevPM = currentPM; - G4double prevCII = currentCII; - G4double prevIN = currentIN; - - for (size_t j = 1; - j < theWLSVector->GetVectorLength(); - j++) - { - currentPM = theWLSVector->Energy(j); - currentIN = (*theWLSVector)[j]; - currentCII = 0.5 * (prevIN + currentIN); - currentCII = prevCII + (currentPM - prevPM) * currentCII; - aPhysicsOrderedFreeVector-> - InsertValues(currentPM, currentCII); - prevPM = currentPM; - prevCII = currentCII; - prevIN = currentIN; - } - } + for(size_t j = 1; j < theWLSVector->GetVectorLength(); ++j) + { + currentPM = theWLSVector->Energy(j); + currentIN = (*theWLSVector)[j]; + currentCII = 0.5 * (prevIN + currentIN); + currentCII = prevCII + (currentPM - prevPM) * currentCII; + vec->InsertValues(currentPM, currentCII); + prevPM = currentPM; + prevCII = currentCII; + prevIN = currentIN; } - } - fIntegralTable->insertAt(i,aPhysicsOrderedFreeVector); - } + } + } + } + fIntegralTable->insertAt(i, vec); + } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void WLSPrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) { - if (!fFirst) { - fFirst = true; - BuildEmissionSpectrum(); + if(!fFirst) + { + fFirst = true; + BuildEmissionSpectrum(); } -#ifdef use_sampledEnergy - const G4MaterialTable* theMaterialTable = G4Material::GetMaterialTable(); + if(fUseSampledEnergy) + { + const G4MaterialTable* theMaterialTable = G4Material::GetMaterialTable(); - G4double sampledEnergy = 3*eV; + G4double sampledEnergy = 3. * eV; - for (size_t j=0 ; jsize() ; j++) { + for(size_t j = 0; j < theMaterialTable->size(); ++j) + { G4Material* fMaterial = (*theMaterialTable)[j]; - if (fMaterial->GetName() == "PMMA" ) { - G4MaterialPropertiesTable* aMaterialPropertiesTable = - fMaterial->GetMaterialPropertiesTable(); - const G4MaterialPropertyVector* WLSIntensity = - aMaterialPropertiesTable->GetProperty("WLSCOMPONENT"); + if(fMaterial->GetName() == "PMMA") + { + auto WLSIntensity = + fMaterial->GetMaterialPropertiesTable()->GetProperty("WLSCOMPONENT"); - if (WLSIntensity) { - G4int MaterialIndex = fMaterial->GetIndex(); - G4PhysicsOrderedFreeVector* WLSIntegral = - (G4PhysicsOrderedFreeVector*)((*fIntegralTable)(MaterialIndex)); + if(WLSIntensity) + { + G4PhysicsOrderedFreeVector* WLSIntegral = + (G4PhysicsOrderedFreeVector*) ((*fIntegralTable)( + fMaterial->GetIndex())); - G4double CIImax = WLSIntegral->GetMaxValue(); - G4double CIIvalue = G4UniformRand()*CIImax; + G4double CIImax = WLSIntegral->GetMaxValue(); + G4double CIIvalue = G4UniformRand() * CIImax; - sampledEnergy = WLSIntegral->GetEnergy(CIIvalue); - } + sampledEnergy = WLSIntegral->GetEnergy(CIIvalue); + } } + } + + // this does not work. + G4String cmd = "/gun/energy " + G4String(sampledEnergy / eV) + " eV"; + G4UImanager::GetUIpointer()->ApplyCommand(cmd); } - //fParticleGun->SetParticleEnergy(sampledEnergy); -#endif + // The code behind this line is not thread safe because polarization + // and time are randomly selected and GPS properties are global - //The code behing this line is not thread safe because polarization - //and time are randomly selected and GPS properties are global G4AutoLock l(&gen_mutex); - if(fParticleGun->GetParticleDefinition()->GetParticleName()=="opticalphoton"){ + if(fParticleGun->GetParticleDefinition() == G4OpticalPhoton::Definition()) + { SetOptPhotonPolar(); SetOptPhotonTime(); } @@ -209,7 +202,7 @@ void WLSPrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) void WLSPrimaryGeneratorAction::SetOptPhotonPolar() { - G4double angle = G4UniformRand() * 360.0*deg; + G4double angle = G4UniformRand() * 360.0 * deg; SetOptPhotonPolar(angle); } @@ -217,31 +210,33 @@ void WLSPrimaryGeneratorAction::SetOptPhotonPolar() void WLSPrimaryGeneratorAction::SetOptPhotonPolar(G4double angle) { - if (fParticleGun->GetParticleDefinition()->GetParticleName()!="opticalphoton") + if(fParticleGun->GetParticleDefinition()->GetParticleName() != + "opticalphoton") { - G4cout << "-> warning from WLSPrimaryGeneratorAction::SetOptPhotonPolar()" - << ": the ParticleGun is not an opticalphoton" << G4endl; - return; + G4cout << "-> warning from WLSPrimaryGeneratorAction::SetOptPhotonPolar()" + << ": the ParticleGun is not an opticalphoton" << G4endl; + return; } - G4ThreeVector normal (1., 0., 0.); + G4ThreeVector normal(1., 0., 0.); G4ThreeVector kphoton = fParticleGun->GetParticleMomentumDirection(); G4ThreeVector product = normal.cross(kphoton); - G4double modul2 = product*product; + G4double modul2 = product * product; - G4ThreeVector e_perpend (0., 0., 1.); - if (modul2 > 0.) e_perpend = (1./std::sqrt(modul2))*product; - G4ThreeVector e_paralle = e_perpend.cross(kphoton); + G4ThreeVector e_perpend(0., 0., 1.); + if(modul2 > 0.) + e_perpend = (1. / std::sqrt(modul2)) * product; + G4ThreeVector e_paralle = e_perpend.cross(kphoton); - G4ThreeVector polar = std::cos(angle)*e_paralle + std::sin(angle)*e_perpend; + G4ThreeVector polar = + std::cos(angle) * e_paralle + std::sin(angle) * e_perpend; fParticleGun->SetParticlePolarization(polar); - } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void WLSPrimaryGeneratorAction::SetOptPhotonTime() { - G4double time = -std::log(G4UniformRand())*fTimeConstant; - fParticleGun->SetParticleTime(time); + G4double time = -std::log(G4UniformRand()) * fTimeConstant; + fParticleGun->SetParticleTime(time); } diff --git a/examples/extended/optical/wls/src/WLSPrimaryGeneratorMessenger.cc b/examples/extended/optical/wls/src/WLSPrimaryGeneratorMessenger.cc index d55cb27a85..e6fc7417bb 100644 --- a/examples/extended/optical/wls/src/WLSPrimaryGeneratorMessenger.cc +++ b/examples/extended/optical/wls/src/WLSPrimaryGeneratorMessenger.cc @@ -28,39 +28,45 @@ /// \brief Implementation of the WLSPrimaryGeneratorMessenger class // // -#include "G4UIdirectory.hh" - -#include "G4UIcmdWithADoubleAndUnit.hh" +#include "WLSPrimaryGeneratorMessenger.hh" #include "WLSPrimaryGeneratorAction.hh" -#include "WLSPrimaryGeneratorMessenger.hh" + +#include "G4UIcmdWithABool.hh" +#include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIdirectory.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSPrimaryGeneratorMessenger:: - WLSPrimaryGeneratorMessenger(WLSPrimaryGeneratorAction* gun) +WLSPrimaryGeneratorMessenger::WLSPrimaryGeneratorMessenger( + WLSPrimaryGeneratorAction* gun) : fAction(gun) { fGunDir = new G4UIdirectory("/WLS/gun/"); fGunDir->SetGuidance("WLSPrimaryGenerator control"); fSetPolarizationCmd = - new G4UIcmdWithADoubleAndUnit("/WLS/gun/optPhotonPolar",this); + new G4UIcmdWithADoubleAndUnit("/WLS/gun/optPhotonPolar", this); fSetPolarizationCmd->SetGuidance("Set linear polarization"); fSetPolarizationCmd->SetGuidance(" angle w.r.t. (k,n) plane"); - fSetPolarizationCmd->SetParameterName("angle",true); + fSetPolarizationCmd->SetParameterName("angle", true); fSetPolarizationCmd->SetUnitCategory("Angle"); fSetPolarizationCmd->SetDefaultValue(0.); fSetPolarizationCmd->AvailableForStates(G4State_Idle); - + fSetDecayTimeConstantCmd = - new G4UIcmdWithADoubleAndUnit("/WLS/gun/setDecayTimeConstant",this); + new G4UIcmdWithADoubleAndUnit("/WLS/gun/setDecayTimeConstant", this); fSetDecayTimeConstantCmd->SetGuidance("Set the decay time constant"); fSetDecayTimeConstantCmd->SetGuidance("for the starting time of each photon"); - fSetDecayTimeConstantCmd->SetParameterName("time_const",false); + fSetDecayTimeConstantCmd->SetParameterName("time_const", false); fSetDecayTimeConstantCmd->SetUnitCategory("Time"); fSetDecayTimeConstantCmd->SetRange("time_const>=0"); fSetDecayTimeConstantCmd->AvailableForStates(G4State_Idle); + + // fSetUseSampledEnergyCmd = new G4UIcmdWithABool("/WLS/gun/useSampledEnergy", + // this); fSetUseSampledEnergyCmd->SetGuidance("Enable sampling of primary + // energy."); fSetUseSampledEnergyCmd->SetGuidance("This is currently + // disabled."); fSetUseSampledEnergyCmd->AvailableForStates(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -70,17 +76,21 @@ WLSPrimaryGeneratorMessenger::~WLSPrimaryGeneratorMessenger() delete fGunDir; delete fSetPolarizationCmd; delete fSetDecayTimeConstantCmd; + // delete fSetUseSampledEnergyCmd; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSPrimaryGeneratorMessenger:: - SetNewValue(G4UIcommand * command,G4String val) +void WLSPrimaryGeneratorMessenger::SetNewValue(G4UIcommand* command, + G4String val) { - if ( command == fSetPolarizationCmd ) - fAction-> - SetOptPhotonPolar(G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); - else if ( command == fSetDecayTimeConstantCmd ) - fAction-> - SetDecayTimeConstant(G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); + if(command == fSetPolarizationCmd) + fAction->SetOptPhotonPolar( + G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); + else if(command == fSetDecayTimeConstantCmd) + fAction->SetDecayTimeConstant( + G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(val)); + // else if ( command == fSetUseSampledEnergyCmd ) + // fAction-> + // SetUseSampledEnergy(G4UIcmdWithABool::GetNewBoolValue(val)); } diff --git a/examples/extended/optical/wls/src/WLSRun.cc b/examples/extended/optical/wls/src/WLSRun.cc new file mode 100644 index 0000000000..8753e58481 --- /dev/null +++ b/examples/extended/optical/wls/src/WLSRun.cc @@ -0,0 +1,240 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +/// \file optical/wls/src/WLSRun.cc +/// \brief Implementation of the WLSRun class +// +// + +#include "WLSRun.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +WLSRun::WLSRun() + : G4Run() +{ + fNTIR = 0.; + fNTIR2 = 0.; + fNExiting = 0.; + fNExiting2 = 0.; + fEscapedEnd = 0.; + fEscapedEnd2 = 0.; + fEscapedMid = 0.; + fEscapedMid2 = 0.; + fBounce = 0.; + fBounce2 = 0.; + fWLSBounce = 0.; + fWLSBounce2 = 0.; + fClad1Bounce = 0.; + fClad1Bounce2 = 0.; + fClad2Bounce = 0.; + fClad2Bounce2 = 0.; + fReflected = 0.; + fReflected2 = 0.; + fDetected = 0.; + fDetected2 = 0.; + fEscaped = 0.; + fEscaped2 = 0.; + fMirror = 0.; + fMirror2 = 0.; + fDetectorHits = 0.; + fDetectorHits2 = 0.; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +WLSRun::~WLSRun() {} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void WLSRun::Merge(const G4Run* run) +{ + const WLSRun* localRun = static_cast(run); + + fNTIR += localRun->fNTIR; + fNTIR2 += localRun->fNTIR2; + fNExiting += localRun->fNExiting; + fNExiting2 += localRun->fNExiting2; + fEscapedEnd += localRun->fEscapedEnd; + fEscapedEnd2 += localRun->fEscapedEnd2; + fEscapedMid += localRun->fEscapedMid; + fEscapedMid2 += localRun->fEscapedMid2; + fBounce += localRun->fBounce; + fBounce2 += localRun->fBounce2; + fWLSBounce += localRun->fWLSBounce; + fWLSBounce2 += localRun->fWLSBounce2; + fClad1Bounce += localRun->fClad1Bounce; + fClad1Bounce2 += localRun->fClad1Bounce2; + fClad2Bounce += localRun->fClad2Bounce; + fClad2Bounce2 += localRun->fClad2Bounce2; + fReflected += localRun->fReflected; + fReflected2 += localRun->fReflected2; + fDetected += localRun->fDetected; + fDetected2 += localRun->fDetected2; + fEscaped += localRun->fEscaped; + fEscaped2 += localRun->fEscaped2; + fMirror += localRun->fMirror; + fMirror2 += localRun->fMirror2; + fDetectorHits += localRun->fDetectorHits; + fDetectorHits2 += localRun->fDetectorHits2; + + G4Run::Merge(run); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void WLSRun::EndOfRun() +{ + if(numberOfEvent == 0) + return; + G4double TotNbofEvents = G4double(numberOfEvent); + + fNTIR = fNTIR / TotNbofEvents; + fNTIR2 = fNTIR2 / TotNbofEvents; + G4double rmsTIR = fNTIR2 - fNTIR * fNTIR; + if(rmsTIR > 0.) + rmsTIR = std::sqrt(rmsTIR); + else + rmsTIR = 0.; + + fNExiting = fNExiting / TotNbofEvents; + fNExiting2 = fNExiting2 / TotNbofEvents; + G4double rmsExiting = fNExiting2 - fNExiting * fNExiting; + if(rmsExiting > 0.) + rmsExiting = std::sqrt(rmsExiting); + else + rmsExiting = 0.; + + fEscapedEnd = fEscapedEnd / TotNbofEvents; + fEscapedEnd2 = fEscapedEnd2 / TotNbofEvents; + G4double rmsEscapedEnd = fEscapedEnd2 - fEscapedEnd * fEscapedEnd; + if(rmsEscapedEnd > 0.) + rmsEscapedEnd = std::sqrt(rmsEscapedEnd); + else + rmsEscapedEnd = 0.; + + fEscapedMid = fEscapedMid / TotNbofEvents; + fEscapedMid2 = fEscapedMid2 / TotNbofEvents; + G4double rmsEscapedMid = fEscapedMid2 - fEscapedMid * fEscapedMid; + if(rmsEscapedMid > 0.) + rmsEscapedMid = std::sqrt(rmsEscapedMid); + else + rmsEscapedMid = 0.; + + fBounce = fBounce / TotNbofEvents; + fBounce2 = fBounce2 / TotNbofEvents; + G4double rmsBounce = fBounce2 - fBounce * fBounce; + if(rmsBounce > 0.) + rmsBounce = std::sqrt(rmsBounce); + else + rmsBounce = 0.; + + fWLSBounce = fWLSBounce / TotNbofEvents; + fWLSBounce2 = fWLSBounce2 / TotNbofEvents; + G4double rmsWLSBounce = fWLSBounce2 - fWLSBounce * fWLSBounce; + if(rmsWLSBounce > 0.) + rmsWLSBounce = std::sqrt(rmsWLSBounce); + else + rmsWLSBounce = 0.; + + fClad1Bounce = fClad1Bounce / TotNbofEvents; + fClad1Bounce2 = fClad1Bounce2 / TotNbofEvents; + G4double rmsClad1Bounce = fClad1Bounce2 - fClad1Bounce * fClad1Bounce; + if(rmsClad1Bounce > 0.) + rmsClad1Bounce = std::sqrt(rmsClad1Bounce); + else + rmsClad1Bounce = 0.; + + fClad2Bounce = fClad2Bounce / TotNbofEvents; + fClad2Bounce2 = fClad2Bounce2 / TotNbofEvents; + G4double rmsClad2Bounce = fClad2Bounce2 - fClad2Bounce * fClad2Bounce; + if(rmsClad2Bounce > 0.) + rmsClad2Bounce = std::sqrt(rmsClad2Bounce); + else + rmsClad2Bounce = 0.; + + fReflected = fReflected / TotNbofEvents; + fReflected2 = fReflected2 / TotNbofEvents; + G4double rmsReflected = fReflected2 - fReflected * fReflected; + if(rmsReflected > 0.) + rmsReflected = std::sqrt(rmsReflected); + else + rmsReflected = 0.; + + fDetected = fDetected / TotNbofEvents; + fDetected2 = fDetected2 / TotNbofEvents; + G4double rmsDetected = fDetected2 - fDetected * fDetected; + if(rmsDetected > 0.) + rmsDetected = std::sqrt(rmsDetected); + else + rmsDetected = 0.; + + fEscaped = fEscaped / TotNbofEvents; + fEscaped2 = fEscaped2 / TotNbofEvents; + G4double rmsEscaped = fEscaped2 - fEscaped * fEscaped; + if(rmsEscaped > 0.) + rmsEscaped = std::sqrt(rmsEscaped); + else + rmsEscaped = 0.; + + fMirror = fMirror / TotNbofEvents; + fMirror2 = fMirror2 / TotNbofEvents; + G4double rmsMirror = fMirror2 - fMirror * fMirror; + if(rmsMirror > 0.) + rmsMirror = std::sqrt(rmsMirror); + else + rmsMirror = 0.; + + fDetectorHits = fDetectorHits / TotNbofEvents; + fDetectorHits2 = fDetectorHits2 / TotNbofEvents; + G4double rmsDetectorHits = fDetectorHits2 - fDetectorHits * fDetectorHits; + if(rmsDetectorHits > 0.) + rmsDetectorHits = std::sqrt(rmsDetectorHits); + else + rmsDetectorHits = 0.; + + G4int prec = G4cout.precision(3); + G4cout << "\n ======================== run summary =====================\n"; + G4cout << "Average number per event:" << G4endl; + G4cout << " TIR: " << fNTIR << " +- " << rmsTIR << G4endl + << " Exiting: " << fNExiting << " +- " << rmsExiting << G4endl + << " Escaped Mid: " << fEscapedMid << " +- " << rmsEscapedMid + << G4endl << " Escaped End: " << fEscapedEnd << " +- " + << rmsEscapedEnd << G4endl << " Bounced: " << fBounce << " +- " + << rmsBounce << G4endl << " WLS Bounce: " << fWLSBounce << " +- " + << rmsWLSBounce << G4endl << " Clad1 Bounce: " << fClad1Bounce + << " +- " << rmsClad1Bounce << G4endl + << " Clad2 Bounce: " << fClad2Bounce << " +- " << rmsClad2Bounce + << G4endl << " Reflected: " << fReflected << " +- " << rmsReflected + << G4endl << " Detected: " << fDetected << " +- " << rmsDetected + << G4endl << " Escaped: " << fEscaped << " +- " << rmsEscaped + << G4endl << " Mirror: " << fMirror << " +- " << rmsMirror + << G4endl << " Detector hit: " << fDetectorHits << " +- " + << rmsDetectorHits << G4endl; + + G4cout << G4endl; + G4cout.precision(prec); +} diff --git a/examples/extended/optical/wls/src/WLSRunAction.cc b/examples/extended/optical/wls/src/WLSRunAction.cc index faf0aeaf1e..56cfc125ee 100644 --- a/examples/extended/optical/wls/src/WLSRunAction.cc +++ b/examples/extended/optical/wls/src/WLSRunAction.cc @@ -28,68 +28,41 @@ /// \brief Implementation of the WLSRunAction class // // + #include "WLSRunAction.hh" -#include "WLSRunActionMessenger.hh" + +#include "WLSDetectorConstruction.hh" +#include "WLSRun.hh" +#include "WLSSteppingAction.hh" #include "G4Run.hh" #include "G4RunManager.hh" - #include "Randomize.hh" -#include "WLSDetectorConstruction.hh" -#include "WLSSteppingAction.hh" - -#include - //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSRunAction::WLSRunAction() - : fSaveRndm(0), fAutoSeed(false) + : fRun(nullptr) +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +WLSRunAction::~WLSRunAction() {} + +G4Run* WLSRunAction::GenerateRun() { - fRunMessenger = new WLSRunActionMessenger(this); + fRun = new WLSRun(); + return fRun; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSRunAction::~WLSRunAction() -{ - delete fRunMessenger; -} +void WLSRunAction::BeginOfRunAction(const G4Run*) {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSRunAction::BeginOfRunAction(const G4Run* aRun) +void WLSRunAction::EndOfRunAction(const G4Run*) { - G4cout << "### Run " << aRun->GetRunID() << " start." << G4endl; - - G4RunManager::GetRunManager()->SetRandomNumberStore(false); - - if (fAutoSeed) { - // automatic (time-based) random seeds for each run - G4cout << "*******************" << G4endl; - G4cout << "*** AUTOSEED ON ***" << G4endl; - G4cout << "*******************" << G4endl; - long seeds[2]; - time_t systime = time(NULL); - seeds[0] = (long) systime; - seeds[1] = (long) (systime*G4UniformRand()); - G4Random::setTheSeeds(seeds); - G4Random::showEngineStatus(); - } else { - G4Random::showEngineStatus(); - } - - if (fSaveRndm > 0) G4Random::saveEngineStatus("BeginOfRun.rndm"); - -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void WLSRunAction::EndOfRunAction(const G4Run* ) -{ - if (fSaveRndm == 1) - { - G4Random::showEngineStatus(); - G4Random::saveEngineStatus("endOfRun.rndm"); - } + if(isMaster) + fRun->EndOfRun(); } diff --git a/examples/extended/optical/wls/src/WLSRunActionMessenger.cc b/examples/extended/optical/wls/src/WLSRunActionMessenger.cc deleted file mode 100644 index dcefd89a5e..0000000000 --- a/examples/extended/optical/wls/src/WLSRunActionMessenger.cc +++ /dev/null @@ -1,103 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -// -/// \file optical/wls/src/WLSRunActionMessenger.cc -/// \brief Implementation of the WLSRunActionMessenger class -// -// -#include "globals.hh" -#include "Randomize.hh" - -#include "G4UImanager.hh" - -#include "G4UIdirectory.hh" -#include "G4UIcmdWithABool.hh" -#include "G4UIcmdWithAString.hh" -#include "G4UIcmdWithADouble.hh" -#include "G4UIcmdWithAnInteger.hh" -#include "G4UIcmdWithADoubleAndUnit.hh" - -#include "WLSRunAction.hh" -#include "WLSRunActionMessenger.hh" - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -WLSRunActionMessenger::WLSRunActionMessenger(WLSRunAction* runaction) - : fRunAction (runaction) -{ - fRndmDir = new G4UIdirectory("/rndm/"); - fRndmDir->SetGuidance("Rndm status control."); - - fRndmSaveCmd = new G4UIcmdWithAnInteger("/rndm/save",this); - fRndmSaveCmd-> - SetGuidance("set frequency to save rndm status on external files."); - fRndmSaveCmd->SetGuidance("freq = 0 not saved"); - fRndmSaveCmd->SetGuidance("freq > 0 saved on: beginOfRun.rndm"); - fRndmSaveCmd->SetGuidance("freq = 1 saved on: endOfRun.rndm"); - fRndmSaveCmd->SetGuidance("freq = 2 saved on: endOfEvent.rndm"); - fRndmSaveCmd->SetParameterName("frequency",false); - fRndmSaveCmd->SetRange("frequency>=0 && frequency<=2"); - fRndmSaveCmd->AvailableForStates(G4State_PreInit,G4State_Idle); - - fRndmReadCmd = new G4UIcmdWithAString("/rndm/read",this); - fRndmReadCmd->SetGuidance("get rndm status from an external file."); - fRndmReadCmd->SetParameterName("fileName",true); - fRndmReadCmd->SetDefaultValue ("beginOfRun.rndm"); - fRndmReadCmd->AvailableForStates(G4State_PreInit,G4State_Idle); - - fSetAutoSeedCmd = new G4UIcmdWithABool("/rndm/autoSeed",this); - fSetAutoSeedCmd->SetGuidance("Switch on/off time-based random seeds"); - fSetAutoSeedCmd->SetGuidance(" true: run seeds determined by system time"); - fSetAutoSeedCmd->SetGuidance("false: use command 'random/resetEngineFrom'"); - fSetAutoSeedCmd->SetGuidance("Default = false"); - fSetAutoSeedCmd->SetParameterName("autoSeed", false); - fSetAutoSeedCmd->AvailableForStates(G4State_PreInit,G4State_Idle); -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -WLSRunActionMessenger::~WLSRunActionMessenger() -{ - delete fRndmDir; delete fRndmSaveCmd; - delete fRndmReadCmd; delete fSetAutoSeedCmd; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void WLSRunActionMessenger::SetNewValue(G4UIcommand* command,G4String newValue) -{ - if (command == fRndmSaveCmd) - fRunAction->SetRndmFreq(fRndmSaveCmd->GetNewIntValue(newValue)); - - if (command == fRndmReadCmd) - { G4cout << "\n---> rndm status restored from file: " << newValue << G4endl; - G4Random::restoreEngineStatus(newValue); - G4Random::showEngineStatus(); - } - - if(command == fSetAutoSeedCmd) - fRunAction->SetAutoSeed(fSetAutoSeedCmd->GetNewBoolValue(newValue)); -} diff --git a/examples/extended/optical/wls/src/WLSStackingAction.cc b/examples/extended/optical/wls/src/WLSStackingAction.cc index 9e310ffed1..ade11228c6 100644 --- a/examples/extended/optical/wls/src/WLSStackingAction.cc +++ b/examples/extended/optical/wls/src/WLSStackingAction.cc @@ -30,44 +30,49 @@ // #include "WLSStackingAction.hh" +#include "G4OpticalPhoton.hh" #include "G4RunManager.hh" - #include "G4Track.hh" -#include "G4ParticleTypes.hh" -#include "G4ParticleDefinition.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSStackingAction::WLSStackingAction() : fPhotonCounter(0) { } +WLSStackingAction::WLSStackingAction() + : fPhotonCounter(0) +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSStackingAction::~WLSStackingAction() { } +WLSStackingAction::~WLSStackingAction() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4ClassificationOfNewTrack - WLSStackingAction::ClassifyNewTrack(const G4Track * aTrack) +G4ClassificationOfNewTrack WLSStackingAction::ClassifyNewTrack( + const G4Track* aTrack) { G4ParticleDefinition* particleType = aTrack->GetDefinition(); // keep primary particle - if (aTrack->GetParentID() == 0) return fUrgent; + if(aTrack->GetParentID() == 0) + return fUrgent; - if (particleType == G4OpticalPhoton::OpticalPhotonDefinition()) { - // keep optical photon - fPhotonCounter++; - return fUrgent; - } else { - // discard all other secondaries - // return fKill; + if(particleType == G4OpticalPhoton::OpticalPhotonDefinition()) + { + // keep optical photon + ++fPhotonCounter; + return fUrgent; + } + else + { + // discard all other secondaries + // return fKill; } return fUrgent; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSStackingAction::NewStage() { +void WLSStackingAction::NewStage() +{ // G4cout << "Number of optical photons produces in this event : " // << fPhotonCounter << G4endl; } diff --git a/examples/extended/optical/wls/src/WLSSteppingAction.cc b/examples/extended/optical/wls/src/WLSSteppingAction.cc index fcc3b2ad7e..46633320e1 100644 --- a/examples/extended/optical/wls/src/WLSSteppingAction.cc +++ b/examples/extended/optical/wls/src/WLSSteppingAction.cc @@ -28,116 +28,86 @@ /// \brief Implementation of the WLSSteppingAction class // // -#include "G4Run.hh" -#include "G4Step.hh" -#include "G4Track.hh" -#include "G4StepPoint.hh" -#include "G4TrackStatus.hh" -#include "G4VPhysicalVolume.hh" -#include "G4ParticleDefinition.hh" - #include "WLSSteppingAction.hh" + #include "WLSDetectorConstruction.hh" -#include "WLSSteppingActionMessenger.hh" +#include "WLSEventAction.hh" #include "WLSPhotonDetSD.hh" - -#include "G4ParticleTypes.hh" - +#include "WLSSteppingActionMessenger.hh" #include "WLSUserTrackInformation.hh" -#include "G4ProcessManager.hh" -#include "G4OpBoundaryProcess.hh" - -#include "G4RunManager.hh" -#include "G4SDManager.hh" -#include "G4UImanager.hh" - -#include "G4ThreeVector.hh" #include "G4ios.hh" +#include "G4OpBoundaryProcess.hh" +#include "G4OpticalPhoton.hh" +#include "G4ProcessManager.hh" +#include "G4Run.hh" +#include "G4SDManager.hh" +#include "G4Step.hh" +#include "G4StepPoint.hh" #include "G4SystemOfUnits.hh" -#include +#include "G4ThreeVector.hh" +#include "G4Track.hh" +#include "G4TrackStatus.hh" +#include "G4UImanager.hh" +#include "G4VPhysicalVolume.hh" // Purpose: Save relevant information into User Track Information -static const G4ThreeVector ZHat = G4ThreeVector(0.0,0.0,1.0); - -G4int WLSSteppingAction::fMaxRndmSave = 10000; - //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSSteppingAction::WLSSteppingAction(WLSDetectorConstruction* detector) +WLSSteppingAction::WLSSteppingAction(WLSDetectorConstruction* detector, + WLSEventAction* event) : fDetector(detector) + , fEventAction(event) { fSteppingMessenger = new WLSSteppingActionMessenger(this); - fCounterEnd = 0; - fCounterMid = 0; + fCounterEnd = 0; + fCounterMid = 0; fBounceLimit = 100000; - fOpProcess = NULL; - + fOpProcess = nullptr; + ResetCounters(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSSteppingAction::~WLSSteppingAction() +WLSSteppingAction::~WLSSteppingAction() { delete fSteppingMessenger; } + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void WLSSteppingAction::SetBounceLimit(G4int i) { fBounceLimit = i; } + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4int WLSSteppingAction::GetNumberOfBounces() { return fCounterBounce; } + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4int WLSSteppingAction::GetNumberOfClad1Bounces() { - delete fSteppingMessenger; + return fCounterClad1Bounce; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void WLSSteppingAction::SetBounceLimit(G4int i) {fBounceLimit = i;} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -G4int WLSSteppingAction::GetNumberOfBounces() {return fCounterBounce;} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -G4int WLSSteppingAction::GetNumberOfClad1Bounces() {return fCounterClad1Bounce;} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -G4int WLSSteppingAction::GetNumberOfClad2Bounces() {return fCounterClad2Bounce;} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -G4int WLSSteppingAction::GetNumberOfWLSBounces() {return fCounterWLSBounce;} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -G4int WLSSteppingAction::ResetSuccessCounter() { - G4int temp = fCounterEnd; fCounterEnd = 0; return temp; +G4int WLSSteppingAction::GetNumberOfClad2Bounces() +{ + return fCounterClad2Bounce; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -inline void WLSSteppingAction::SaveRandomStatus(G4String subDir) -// save the random status into a sub-directory -// Pre: subDir must be empty or ended with "/" +G4int WLSSteppingAction::GetNumberOfWLSBounces() { return fCounterWLSBounce; } + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4int WLSSteppingAction::ResetSuccessCounter() { - - // don't save if the maximum amount has been reached - if (WLSSteppingAction::fMaxRndmSave == 0) return; - - G4RunManager* theRunManager = G4RunManager::GetRunManager(); - G4String randomNumberStatusDir = theRunManager->GetRandomNumberStoreDir(); - - G4String fileIn = randomNumberStatusDir + "currentEvent.rndm"; - - std::ostringstream os; - - os << "run" << theRunManager->GetCurrentRun()->GetRunID() << "evt" - << theRunManager->GetCurrentEvent()->GetEventID() << ".rndm" << '\0'; - - G4String fileOut = randomNumberStatusDir + subDir + os.str(); - - G4String copCmd = "/control/shell cp "+fileIn+" "+fileOut; - G4UImanager::GetUIpointer()->ApplyCommand(copCmd); - - WLSSteppingAction::fMaxRndmSave--; + G4int temp = fCounterEnd; + fCounterEnd = 0; + return temp; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -145,8 +115,8 @@ inline void WLSSteppingAction::SaveRandomStatus(G4String subDir) void WLSSteppingAction::UserSteppingAction(const G4Step* theStep) { G4Track* theTrack = theStep->GetTrack(); - WLSUserTrackInformation* trackInformation - = (WLSUserTrackInformation*)theTrack->GetUserInformation(); + WLSUserTrackInformation* trackInformation = + (WLSUserTrackInformation*) theTrack->GetUserInformation(); G4StepPoint* thePrePoint = theStep->GetPreStepPoint(); G4StepPoint* thePostPoint = theStep->GetPostStepPoint(); @@ -157,209 +127,238 @@ void WLSSteppingAction::UserSteppingAction(const G4Step* theStep) G4String thePrePVname = " "; G4String thePostPVname = " "; - if (thePostPV) { - thePrePVname = thePrePV->GetName(); - thePostPVname = thePostPV->GetName(); + if(thePostPV) + { + thePrePVname = thePrePV->GetName(); + thePostPVname = thePostPV->GetName(); } - //Recording data for start - if (theTrack->GetParentID()==0) { - //This is a primary track - if ( theTrack->GetCurrentStepNumber() == 1 ) { -// G4double x = theTrack->GetVertexPosition().x(); -// G4double y = theTrack->GetVertexPosition().y(); -// G4double z = theTrack->GetVertexPosition().z(); -// G4double pz = theTrack->GetVertexMomentumDirection().z(); -// G4double fInitTheta = -// theTrack->GetVertexMomentumDirection().angle(ZHat); - } + // Recording data for start + // static const G4ThreeVector ZHat = G4ThreeVector(0.0,0.0,1.0); + if(theTrack->GetParentID() == 0) + { + // This is a primary track + if(theTrack->GetCurrentStepNumber() == 1) + { + // G4double x = theTrack->GetVertexPosition().x(); + // G4double y = theTrack->GetVertexPosition().y(); + // G4double z = theTrack->GetVertexPosition().z(); + // G4double pz = theTrack->GetVertexMomentumDirection().z(); + // G4double fInitTheta = + // theTrack->GetVertexMomentumDirection().angle(ZHat); + } } // Retrieve the status of the photon G4OpBoundaryProcessStatus theStatus = Undefined; - G4ProcessManager* OpManager = - G4OpticalPhoton::OpticalPhoton()->GetProcessManager(); + static G4ThreadLocal G4ProcessManager* OpManager = + G4OpticalPhoton::OpticalPhoton()->GetProcessManager(); - if (OpManager) { - G4int MAXofPostStepLoops = - OpManager->GetPostStepProcessVector()->entries(); - G4ProcessVector* fPostStepDoItVector = - OpManager->GetPostStepProcessVector(typeDoIt); + if(OpManager) + { + G4int nproc = OpManager->GetPostStepProcessVector()->entries(); + G4ProcessVector* fPostStepDoItVector = + OpManager->GetPostStepProcessVector(typeDoIt); - for ( G4int i=0; i(fCurrentProcess); - if (fOpProcess) { theStatus = fOpProcess->GetStatus(); break;} - } + for(G4int i = 0; i < nproc; ++i) + { + G4VProcess* fCurrentProcess = (*fPostStepDoItVector)[i]; + fOpProcess = dynamic_cast(fCurrentProcess); + if(fOpProcess) + { + theStatus = fOpProcess->GetStatus(); + break; + } + } } // Find the skewness of the ray at first change of boundary - if ( fInitGamma == -1 && - (theStatus == TotalInternalReflection - || theStatus == FresnelReflection - || theStatus == FresnelRefraction) - && trackInformation->IsStatus(InsideOfFiber) ) { + if(fInitGamma == -1 && + (theStatus == TotalInternalReflection || theStatus == FresnelReflection || + theStatus == FresnelRefraction) && + trackInformation->IsStatus(InsideOfFiber)) + { + G4double px = theTrack->GetVertexMomentumDirection().x(); + G4double py = theTrack->GetVertexMomentumDirection().y(); + G4double x = theTrack->GetPosition().x(); + G4double y = theTrack->GetPosition().y(); - G4double px = theTrack->GetVertexMomentumDirection().x(); - G4double py = theTrack->GetVertexMomentumDirection().y(); - G4double x = theTrack->GetPosition().x(); - G4double y = theTrack->GetPosition().y(); + fInitGamma = x * px + y * py; - fInitGamma = x * px + y * py; + fInitGamma = + fInitGamma / std::sqrt(px * px + py * py) / std::sqrt(x * x + y * y); - fInitGamma = - fInitGamma / std::sqrt(px*px + py*py) / std::sqrt(x*x + y*y); + fInitGamma = std::acos(fInitGamma * rad); - fInitGamma = std::acos(fInitGamma*rad); - - if ( fInitGamma / deg > 90.0) { fInitGamma = 180 * deg - fInitGamma;} + if(fInitGamma / deg > 90.0) + { + fInitGamma = 180 * deg - fInitGamma; + } } // Record Photons that missed the photon detector but escaped from readout - if ( !thePostPV && trackInformation->IsStatus(EscapedFromReadOut) ) { -// UpdateHistogramSuccess(thePostPoint,theTrack); - ResetCounters(); - - return; + if(!thePostPV && trackInformation->IsStatus(EscapedFromReadOut)) + { + G4cout << "SteppingAction: status = EscapedFromReadOut" << G4endl; + fEventAction->AddEscaped(); + // UpdateHistogramSuccess(thePostPoint,theTrack); + ResetCounters(); + + return; } // Assumed photons are originated at the fiber OR // the fiber is the first material the photon hits - switch (theStatus) { - - // Exiting the fiber - case FresnelRefraction: - case SameMaterial: - - G4bool isFiber; - isFiber = thePostPVname == "WLSFiber" - || thePostPVname == "Clad1" - || thePostPVname == "Clad2"; - - if ( isFiber ) { - - if (trackInformation->IsStatus(OutsideOfFiber)) - trackInformation->AddStatusFlag(InsideOfFiber); - - // Set the Exit flag when the photon refracted out of the fiber - } else if (trackInformation->IsStatus(InsideOfFiber)) { - - // EscapedFromReadOut if the z position is the same as fiber's end - if (theTrack->GetPosition().z() == fDetector->GetWLSFiberEnd()) - { - trackInformation->AddStatusFlag(EscapedFromReadOut); - fCounterEnd++; - } - else // Escaped from side - { - trackInformation->AddStatusFlag(EscapedFromSide); - trackInformation->SetExitPosition(theTrack->GetPosition()); - -// UpdateHistogramEscape(thePostPoint,theTrack); - - fCounterMid++; - ResetCounters(); - } - - trackInformation->AddStatusFlag(OutsideOfFiber); - trackInformation->SetExitPosition(theTrack->GetPosition()); - - } - - return; - - // Internal Reflections - case TotalInternalReflection: - - // Kill the track if it's number of bounces exceeded the limit - if (fBounceLimit > 0 && fCounterBounce >= fBounceLimit) - { - theTrack->SetTrackStatus(fStopAndKill); - trackInformation->AddStatusFlag(murderee); - ResetCounters(); - G4cout << "\n Bounce Limit Exceeded" << G4endl; - return; - } - break; - - case FresnelReflection: - - fCounterBounce++; - - if ( thePrePVname == "WLSFiber") fCounterWLSBounce++; - - else if ( thePrePVname == "Clad1") fCounterClad1Bounce++; - - else if ( thePrePVname == "Clad2") fCounterClad2Bounce++; - - // Determine if the photon has reflected off the read-out end - if (theTrack->GetPosition().z() == fDetector->GetWLSFiberEnd()) - { - if (!trackInformation->IsStatus(ReflectedAtReadOut) && - trackInformation->IsStatus(InsideOfFiber)) - { - trackInformation->AddStatusFlag(ReflectedAtReadOut); - - if (fDetector->IsPerfectFiber() && - theStatus == TotalInternalReflection) - { - theTrack->SetTrackStatus(fStopAndKill); - trackInformation->AddStatusFlag(murderee); -// UpdateHistogramReflect(thePostPoint,theTrack); - ResetCounters(); - return; - } - } - } - return; - - // Reflection of the mirror - case LambertianReflection: - case LobeReflection: - case SpikeReflection: - - // Check if it hits the mirror - if ( thePostPVname == "Mirror" ) - trackInformation->AddStatusFlag(ReflectedAtMirror); - - return; - - // Detected by a detector - case Detection: - - // Check if the photon hits the detector and process the hit if it does - if ( thePostPVname == "PhotonDet" ) { - - G4SDManager* SDman = G4SDManager::GetSDMpointer(); - G4String SDname="WLS/PhotonDet"; - WLSPhotonDetSD* mppcSD = - (WLSPhotonDetSD*)SDman->FindSensitiveDetector(SDname); - - if (mppcSD) mppcSD->ProcessHits_constStep(theStep,NULL); - - // Record Photons that escaped at the end -// if (trackInformation->IsStatus(EscapedFromReadOut)) -// UpdateHistogramSuccess(thePostPoint,theTrack); - - // Stop Tracking when it hits the detector's surface - ResetCounters(); - theTrack->SetTrackStatus(fStopAndKill); - - return; - } - break; - - default: break; - - } - - // Check for absorbed photons - if (theTrack->GetTrackStatus() != fAlive && - trackInformation->IsStatus(InsideOfFiber)) + switch(theStatus) { -// UpdateHistogramAbsorb(thePostPoint,theTrack); - ResetCounters(); - return; + // Exiting the fiber + case FresnelRefraction: + case SameMaterial: + fEventAction->AddExiting(); + + if(thePostPVname == "WLSFiber" || thePostPVname == "Clad1" || + thePostPVname == "Clad2") + { + if(trackInformation->IsStatus(OutsideOfFiber)) + trackInformation->AddStatusFlag(InsideOfFiber); + + // Set the Exit flag when the photon refracted out of the fiber + } + else if(trackInformation->IsStatus(InsideOfFiber)) + { + // EscapedFromReadOut if the z position is the same as fiber's end + if(theTrack->GetPosition().z() == fDetector->GetWLSFiberEnd()) + { + trackInformation->AddStatusFlag(EscapedFromReadOut); + fCounterEnd++; + fEventAction->AddEscapedEnd(); + } + else // Escaped from side + { + trackInformation->AddStatusFlag(EscapedFromSide); + trackInformation->SetExitPosition(theTrack->GetPosition()); + // UpdateHistogramEscape(thePostPoint,theTrack); + + fCounterMid++; + fEventAction->AddEscapedMid(); + ResetCounters(); + } + + trackInformation->AddStatusFlag(OutsideOfFiber); + trackInformation->SetExitPosition(theTrack->GetPosition()); + } + + return; + + // Internal Reflections + case TotalInternalReflection: + + fEventAction->AddTIR(); + + // Kill the track if it's number of bounces exceeded the limit + if(fBounceLimit > 0 && fCounterBounce >= fBounceLimit) + { + theTrack->SetTrackStatus(fStopAndKill); + trackInformation->AddStatusFlag(murderee); + ResetCounters(); + G4cout << "\n Bounce Limit Exceeded" << G4endl; + return; + } + break; + + case FresnelReflection: + + fCounterBounce++; + fEventAction->AddBounce(); + + if(thePrePVname == "WLSFiber") + { + fCounterWLSBounce++; + fEventAction->AddWLSBounce(); + } + else if(thePrePVname == "Clad1") + { + fCounterClad1Bounce++; + fEventAction->AddClad1Bounce(); + } + else if(thePrePVname == "Clad2") + { + fCounterClad2Bounce++; + fEventAction->AddClad1Bounce(); + } + + // Determine if the photon has reflected off the read-out end + if(theTrack->GetPosition().z() == fDetector->GetWLSFiberEnd()) + { + if(!trackInformation->IsStatus(ReflectedAtReadOut) && + trackInformation->IsStatus(InsideOfFiber)) + { + trackInformation->AddStatusFlag(ReflectedAtReadOut); + + if(fDetector->IsPerfectFiber() && + theStatus == TotalInternalReflection) + { + theTrack->SetTrackStatus(fStopAndKill); + trackInformation->AddStatusFlag(murderee); + // UpdateHistogramReflect(thePostPoint,theTrack); + ResetCounters(); + return; + } + } + } + return; + + // Reflection of the mirror + case LambertianReflection: + case LobeReflection: + case SpikeReflection: + + fEventAction->AddReflected(); + // Check if it hits the mirror + if(thePostPVname == "Mirror") + { + trackInformation->AddStatusFlag(ReflectedAtMirror); + fEventAction->AddMirror(); + } + return; + + // Detected by a detector + case Detection: + + // Check if the photon hits the detector and process the hit if it does + if(thePostPVname == "PhotonDet") + { + // G4cout << "Detection" << G4endl; + fEventAction->AddDetected(); + G4SDManager* SDman = G4SDManager::GetSDMpointer(); + G4String SDname = "WLS/PhotonDet"; + WLSPhotonDetSD* mppcSD = + (WLSPhotonDetSD*) SDman->FindSensitiveDetector(SDname); + + if(mppcSD) + mppcSD->ProcessHits_boundary(theStep, nullptr); + + // Record Photons that escaped at the end + // if (trackInformation->IsStatus(EscapedFromReadOut)) + // UpdateHistogramSuccess(thePostPoint,theTrack); + + // Stop Tracking when it hits the detector's surface + ResetCounters(); + theTrack->SetTrackStatus(fStopAndKill); + return; + } + break; + + default: + break; + } + + // Check for absorbed photons + if(theTrack->GetTrackStatus() != fAlive && + trackInformation->IsStatus(InsideOfFiber)) + { + // UpdateHistogramAbsorb(thePostPoint,theTrack); + ResetCounters(); + return; } - } diff --git a/examples/extended/optical/wls/src/WLSSteppingActionMessenger.cc b/examples/extended/optical/wls/src/WLSSteppingActionMessenger.cc index f3afc78651..201bacf253 100644 --- a/examples/extended/optical/wls/src/WLSSteppingActionMessenger.cc +++ b/examples/extended/optical/wls/src/WLSSteppingActionMessenger.cc @@ -37,20 +37,20 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSSteppingActionMessenger:: - WLSSteppingActionMessenger(WLSSteppingAction* steppingaction) - : fSteppingAction (steppingaction) +WLSSteppingActionMessenger::WLSSteppingActionMessenger( + WLSSteppingAction* steppingaction) + : fSteppingAction(steppingaction) { fSteppingDir = new G4UIdirectory("/stepping/"); fSteppingDir->SetGuidance("stepping control"); fSetBounceLimitCmd = - new G4UIcmdWithAnInteger("/stepping/setBounceLimit", this); - fSetBounceLimitCmd-> - SetGuidance("Select the maximum number of allowed bounce"); - fSetBounceLimitCmd-> - SetGuidance("Set this number to zero if you don't want to limit"); - fSetBounceLimitCmd->SetParameterName("limit",false); + new G4UIcmdWithAnInteger("/stepping/setBounceLimit", this); + fSetBounceLimitCmd->SetGuidance( + "Select the maximum number of allowed bounce"); + fSetBounceLimitCmd->SetGuidance( + "Set this number to zero if you don't want to limit"); + fSetBounceLimitCmd->SetParameterName("limit", false); fSetBounceLimitCmd->SetRange("limit>=0"); fSetBounceLimitCmd->AvailableForStates(G4State_Idle); } @@ -68,9 +68,9 @@ WLSSteppingActionMessenger::~WLSSteppingActionMessenger() void WLSSteppingActionMessenger::SetNewValue(G4UIcommand* command, G4String newValue) { - if ( command == fSetBounceLimitCmd ) { - - fSteppingAction-> - SetBounceLimit(G4UIcmdWithAnInteger::GetNewIntValue(newValue)); + if(command == fSetBounceLimitCmd) + { + fSteppingAction->SetBounceLimit( + G4UIcmdWithAnInteger::GetNewIntValue(newValue)); } } diff --git a/examples/extended/optical/wls/src/WLSTrackingAction.cc b/examples/extended/optical/wls/src/WLSTrackingAction.cc index c35d53b53f..8c6df58e62 100644 --- a/examples/extended/optical/wls/src/WLSTrackingAction.cc +++ b/examples/extended/optical/wls/src/WLSTrackingAction.cc @@ -28,41 +28,40 @@ /// \brief Implementation of the WLSTrackingAction class // // -#include "globals.hh" -#include "G4RunManager.hh" + +#include "WLSTrackingAction.hh" #include "WLSTrajectory.hh" - #include "WLSUserTrackInformation.hh" #include "G4Track.hh" -#include "G4ParticleTypes.hh" #include "G4TrackingManager.hh" -#include "WLSTrackingAction.hh" - //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void WLSTrackingAction::PreUserTrackingAction(const G4Track* aTrack) { - //Let this be up to the user via vis.mac + // Let this be up to the user via vis.mac // fpTrackingManager->SetStoreTrajectory(true); - //Use custom trajectory class + // Use custom trajectory class fpTrackingManager->SetTrajectory(new WLSTrajectory(aTrack)); WLSUserTrackInformation* trackInformation = new WLSUserTrackInformation(); - if (aTrack->GetMomentumDirection().z()>0.0) { - trackInformation->AddStatusFlag(right); - } else { - trackInformation->AddStatusFlag(left); + if(aTrack->GetMomentumDirection().z() > 0.0) + { + trackInformation->AddStatusFlag(right); + } + else + { + trackInformation->AddStatusFlag(left); } G4String PVName = aTrack->GetVolume()->GetName(); - if (PVName == "WLSFiber" || PVName == "Clad1" || PVName == "Clad2") - trackInformation->AddStatusFlag(InsideOfFiber); + if(PVName == "WLSFiber" || PVName == "Clad1" || PVName == "Clad2") + trackInformation->AddStatusFlag(InsideOfFiber); fpTrackingManager->SetUserTrackInformation(trackInformation); } diff --git a/examples/extended/optical/wls/src/WLSTrajectory.cc b/examples/extended/optical/wls/src/WLSTrajectory.cc index de5ad29227..c9f81cab48 100644 --- a/examples/extended/optical/wls/src/WLSTrajectory.cc +++ b/examples/extended/optical/wls/src/WLSTrajectory.cc @@ -28,168 +28,169 @@ /// \brief Implementation of the WLSTrajectory class // // -#include "G4AttDef.hh" -#include "G4AttValue.hh" -#include "G4AttDefStore.hh" - -#include "G4UIcommand.hh" -#include "G4UnitsTable.hh" #include "WLSTrajectory.hh" + #include "WLSTrajectoryPoint.hh" + +#include "G4AttDef.hh" +#include "G4AttDefStore.hh" +#include "G4AttValue.hh" +#include "G4Colour.hh" #include "G4ParticleTable.hh" #include "G4ParticleTypes.hh" - #include "G4Polyline.hh" -#include "G4Colour.hh" +#include "G4Polymarker.hh" +#include "G4UIcommand.hh" +#include "G4UnitsTable.hh" #include "G4VisAttributes.hh" #include "G4VVisManager.hh" -#include "G4Polymarker.hh" -//#define G4ATTDEBUG -#ifdef G4ATTDEBUG -#include "G4AttCheck.hh" -#endif - -G4ThreadLocal G4Allocator* WLSTrajectoryAllocator=0; +G4ThreadLocal G4Allocator* WLSTrajectoryAllocator = nullptr; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSTrajectory::WLSTrajectory() - : fpPointsContainer(0), fTrackID(0), fParentID(0), - fPDGCharge(0.0), fPDGEncoding(0), fParticleName(""), - fInitialMomentum(G4ThreeVector()) + : fpPointsContainer(0) + , fTrackID(0) + , fParentID(0) + , fPDGCharge(0.0) + , fPDGEncoding(0) + , fParticleName("") + , fInitialMomentum(G4ThreeVector()) { - fParticleDefinition = NULL; + fParticleDefinition = nullptr; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSTrajectory::WLSTrajectory(const G4Track* aTrack) { - fParticleDefinition = aTrack->GetDefinition(); - fParticleName = fParticleDefinition->GetParticleName(); - fPDGCharge = fParticleDefinition->GetPDGCharge(); - fPDGEncoding = fParticleDefinition->GetPDGEncoding(); - fTrackID = aTrack->GetTrackID(); - fParentID = aTrack->GetParentID(); - fInitialMomentum = aTrack->GetMomentum(); - fpPointsContainer = new WLSTrajectoryPointContainer(); - // Following is for the first trajectory point - fpPointsContainer->push_back(new WLSTrajectoryPoint(aTrack)); + fParticleDefinition = aTrack->GetDefinition(); + fParticleName = fParticleDefinition->GetParticleName(); + fPDGCharge = fParticleDefinition->GetPDGCharge(); + fPDGEncoding = fParticleDefinition->GetPDGEncoding(); + fTrackID = aTrack->GetTrackID(); + fParentID = aTrack->GetParentID(); + fInitialMomentum = aTrack->GetMomentum(); + fpPointsContainer = new WLSTrajectoryPointContainer(); + // Following is for the first trajectory point + fpPointsContainer->push_back(new WLSTrajectoryPoint(aTrack)); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSTrajectory::WLSTrajectory(WLSTrajectory & right) : G4VTrajectory() +WLSTrajectory::WLSTrajectory(WLSTrajectory& right) + : G4VTrajectory() { - fParticleDefinition=right.fParticleDefinition; - fParticleName = right.fParticleName; - fPDGCharge = right.fPDGCharge; - fPDGEncoding = right.fPDGEncoding; - fTrackID = right.fTrackID; - fParentID = right.fParentID; - fInitialMomentum = right.fInitialMomentum; - fpPointsContainer = new WLSTrajectoryPointContainer(); + fParticleDefinition = right.fParticleDefinition; + fParticleName = right.fParticleName; + fPDGCharge = right.fPDGCharge; + fPDGEncoding = right.fPDGEncoding; + fTrackID = right.fTrackID; + fParentID = right.fParentID; + fInitialMomentum = right.fInitialMomentum; + fpPointsContainer = new WLSTrajectoryPointContainer(); - for(size_t i=0;isize();++i) { - WLSTrajectoryPoint* rightPoint - = (WLSTrajectoryPoint*)((*(right.fpPointsContainer))[i]); - fpPointsContainer->push_back(new WLSTrajectoryPoint(*rightPoint)); - } + for(size_t i = 0; i < right.fpPointsContainer->size(); ++i) + { + WLSTrajectoryPoint* rightPoint = + (WLSTrajectoryPoint*) ((*(right.fpPointsContainer))[i]); + fpPointsContainer->push_back(new WLSTrajectoryPoint(*rightPoint)); + } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSTrajectory::~WLSTrajectory() { - for(size_t i=0;isize();++i){ - delete (*fpPointsContainer)[i]; - } - fpPointsContainer->clear(); - - delete fpPointsContainer; + for(size_t i = 0; i < fpPointsContainer->size(); ++i) + { + delete(*fpPointsContainer)[i]; + } + fpPointsContainer->clear(); + delete fpPointsContainer; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void WLSTrajectory::ShowTrajectory(std::ostream& os) const { - // Invoke the default implementation in G4VTrajectory... - G4VTrajectory::ShowTrajectory(os); - // ... or override with your own code here. + // Invoke the default implementation in G4VTrajectory... + G4VTrajectory::ShowTrajectory(os); + // ... or override with your own code here. } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void WLSTrajectory::AppendStep(const G4Step* aStep) { - fpPointsContainer->push_back(new WLSTrajectoryPoint(aStep)); + fpPointsContainer->push_back(new WLSTrajectoryPoint(aStep)); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4ParticleDefinition* WLSTrajectory::GetParticleDefinition() { - return (G4ParticleTable::GetParticleTable()->FindParticle(fParticleName)); + return (G4ParticleTable::GetParticleTable()->FindParticle(fParticleName)); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void WLSTrajectory::MergeTrajectory(G4VTrajectory* secondTrajectory) { - if(!secondTrajectory) return; + if(!secondTrajectory) + return; - WLSTrajectory* second = (WLSTrajectory*)secondTrajectory; - G4int ent = second->GetPointEntries(); - // initial point of the second trajectory should not be merged - for(G4int i=1; ipush_back((*(second->fpPointsContainer))[i]); - } - delete (*second->fpPointsContainer)[0]; - second->fpPointsContainer->clear(); + WLSTrajectory* second = (WLSTrajectory*) secondTrajectory; + G4int ent = second->GetPointEntries(); + // initial point of the second trajectory should not be merged + for(G4int i = 1; i < ent; ++i) + { + fpPointsContainer->push_back((*(second->fpPointsContainer))[i]); + } + delete(*second->fpPointsContainer)[0]; + second->fpPointsContainer->clear(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -const std::map* WLSTrajectory::GetAttDefs() const +const std::map* WLSTrajectory::GetAttDefs() const { - G4bool isNew; - std::map* store - = G4AttDefStore::GetInstance("Trajectory",isNew); + G4bool isNew; + std::map* store = + G4AttDefStore::GetInstance("Trajectory", isNew); - if (isNew) { + if(isNew) + { + G4String ID("ID"); + (*store)[ID] = G4AttDef(ID, "Track ID", "Bookkeeping", "", "G4int"); - G4String ID("ID"); - (*store)[ID] = G4AttDef(ID,"Track ID","Bookkeeping","","G4int"); + G4String PID("PID"); + (*store)[PID] = G4AttDef(PID, "Parent ID", "Bookkeeping", "", "G4int"); - G4String PID("PID"); - (*store)[PID] = G4AttDef(PID,"Parent ID","Bookkeeping","","G4int"); + G4String PN("PN"); + (*store)[PN] = G4AttDef(PN, "Particle Name", "Physics", "", "G4String"); - G4String PN("PN"); - (*store)[PN] = G4AttDef(PN,"Particle Name","Physics","","G4String"); + G4String Ch("Ch"); + (*store)[Ch] = G4AttDef(Ch, "Charge", "Physics", "e+", "G4double"); - G4String Ch("Ch"); - (*store)[Ch] = G4AttDef(Ch,"Charge","Physics","e+","G4double"); + G4String PDG("PDG"); + (*store)[PDG] = G4AttDef(PDG, "PDG Encoding", "Physics", "", "G4int"); - G4String PDG("PDG"); - (*store)[PDG] = G4AttDef(PDG,"PDG Encoding","Physics","","G4int"); + G4String IMom("IMom"); + (*store)[IMom] = G4AttDef(IMom, "Momentum of track at start of trajectory", + "Physics", "G4BestUnit", "G4ThreeVector"); - G4String IMom("IMom"); - (*store)[IMom] = G4AttDef(IMom, - "Momentum of track at start of trajectory", - "Physics","G4BestUnit","G4ThreeVector"); + G4String IMag("IMag"); + (*store)[IMag] = + G4AttDef(IMag, "Magnitude of momentum of track at start of trajectory", + "Physics", "G4BestUnit", "G4double"); - G4String IMag("IMag"); - (*store)[IMag] = G4AttDef(IMag, - "Magnitude of momentum of track at start of trajectory", - "Physics","G4BestUnit","G4double"); - - G4String NTP("NTP"); - (*store)[NTP] = G4AttDef(NTP,"No. of points","Bookkeeping","","G4int"); - - } - return store; + G4String NTP("NTP"); + (*store)[NTP] = G4AttDef(NTP, "No. of points", "Bookkeeping", "", "G4int"); + } + return store; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -198,31 +199,28 @@ std::vector* WLSTrajectory::CreateAttValues() const { std::vector* values = new std::vector; - values->push_back - (G4AttValue("ID",G4UIcommand::ConvertToString(fTrackID),"")); + values->push_back( + G4AttValue("ID", G4UIcommand::ConvertToString(fTrackID), "")); - values->push_back - (G4AttValue("PID",G4UIcommand::ConvertToString(fParentID),"")); + values->push_back( + G4AttValue("PID", G4UIcommand::ConvertToString(fParentID), "")); - values->push_back(G4AttValue("PN",fParticleName,"")); + values->push_back(G4AttValue("PN", fParticleName, "")); - values->push_back - (G4AttValue("Ch",G4UIcommand::ConvertToString(fPDGCharge),"")); + values->push_back( + G4AttValue("Ch", G4UIcommand::ConvertToString(fPDGCharge), "")); - values->push_back - (G4AttValue("PDG",G4UIcommand::ConvertToString(fPDGEncoding),"")); + values->push_back( + G4AttValue("PDG", G4UIcommand::ConvertToString(fPDGEncoding), "")); - values->push_back - (G4AttValue("IMom",G4BestUnit(fInitialMomentum,"Energy"),"")); + values->push_back( + G4AttValue("IMom", G4BestUnit(fInitialMomentum, "Energy"), "")); - values->push_back - (G4AttValue("IMag",G4BestUnit(fInitialMomentum.mag(),"Energy"),"")); + values->push_back( + G4AttValue("IMag", G4BestUnit(fInitialMomentum.mag(), "Energy"), "")); - values->push_back - (G4AttValue("NTP",G4UIcommand::ConvertToString(GetPointEntries()),"")); + values->push_back( + G4AttValue("NTP", G4UIcommand::ConvertToString(GetPointEntries()), "")); -#ifdef G4ATTDEBUG - G4cout << G4AttCheck(values,GetAttDefs()); -#endif - return values; + return values; } diff --git a/examples/extended/optical/wls/src/WLSTrajectoryPoint.cc b/examples/extended/optical/wls/src/WLSTrajectoryPoint.cc index e71d3ed2c5..6ffff054db 100644 --- a/examples/extended/optical/wls/src/WLSTrajectoryPoint.cc +++ b/examples/extended/optical/wls/src/WLSTrajectoryPoint.cc @@ -30,92 +30,91 @@ // #include "WLSTrajectoryPoint.hh" -#include "G4Step.hh" -#include "G4Track.hh" -#include "G4VProcess.hh" -#include "G4StepStatus.hh" - #include "G4AttDef.hh" -#include "G4AttValue.hh" #include "G4AttDefStore.hh" - +#include "G4AttValue.hh" +#include "G4Step.hh" +#include "G4StepStatus.hh" +#include "G4Track.hh" #include "G4UnitsTable.hh" +#include "G4VProcess.hh" -//#define G4ATTDEBUG -#ifdef G4ATTDEBUG -#include "G4AttCheck.hh" -#endif - -G4ThreadLocal G4Allocator* WLSTrajPointAllocator=0; +G4ThreadLocal G4Allocator* WLSTrajPointAllocator = nullptr; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSTrajectoryPoint::WLSTrajectoryPoint() - : fTime(0.), fMomentum(0.,0.,0.), - fStepStatus(fUndefined), fVolumeName("") { } + : fTime(0.) + , fMomentum(0., 0., 0.) + , fStepStatus(fUndefined) + , fVolumeName("") +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSTrajectoryPoint::WLSTrajectoryPoint(const G4Step* aStep) - : G4TrajectoryPoint(aStep->GetPostStepPoint()->GetPosition()) + : G4TrajectoryPoint(aStep->GetPostStepPoint()->GetPosition()) { - fTime = aStep->GetPostStepPoint()->GetGlobalTime(); - fMomentum = aStep->GetPostStepPoint()->GetMomentum(); - fStepStatus = aStep->GetPostStepPoint()->GetStepStatus(); - if (aStep->GetPostStepPoint()->GetPhysicalVolume()) - { - fVolumeName = aStep->GetPostStepPoint()-> - GetPhysicalVolume()->GetName(); - } else { - fVolumeName = " "; - } + auto postStepPoint = aStep->GetPostStepPoint(); + fTime = postStepPoint->GetGlobalTime(); + fMomentum = postStepPoint->GetMomentum(); + fStepStatus = postStepPoint->GetStepStatus(); + if(postStepPoint->GetPhysicalVolume()) + { + fVolumeName = postStepPoint->GetPhysicalVolume()->GetName(); + } + else + { + fVolumeName = " "; + } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... WLSTrajectoryPoint::WLSTrajectoryPoint(const G4Track* aTrack) - : G4TrajectoryPoint(aTrack->GetPosition()) + : G4TrajectoryPoint(aTrack->GetPosition()) { - fTime = aTrack->GetGlobalTime(); - fMomentum = aTrack->GetMomentum(); - fStepStatus = fUndefined; - fVolumeName = aTrack->GetVolume()->GetName(); + fTime = aTrack->GetGlobalTime(); + fMomentum = aTrack->GetMomentum(); + fStepStatus = fUndefined; + fVolumeName = aTrack->GetVolume()->GetName(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSTrajectoryPoint::WLSTrajectoryPoint(const WLSTrajectoryPoint &right) - : G4TrajectoryPoint(right) +WLSTrajectoryPoint::WLSTrajectoryPoint(const WLSTrajectoryPoint& right) + : G4TrajectoryPoint(right) { - fTime = right.fTime; - fMomentum = right.fMomentum; - fStepStatus = right.fStepStatus; - fVolumeName = right.fVolumeName; + fTime = right.fTime; + fMomentum = right.fMomentum; + fStepStatus = right.fStepStatus; + fVolumeName = right.fVolumeName; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSTrajectoryPoint::~WLSTrajectoryPoint() { } +WLSTrajectoryPoint::~WLSTrajectoryPoint() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -const std::map* WLSTrajectoryPoint::GetAttDefs() const +const std::map* WLSTrajectoryPoint::GetAttDefs() const { G4bool isNew; - std::map* store - = G4AttDefStore::GetInstance("TrajectoryPoint",isNew); - if (isNew) { + std::map* store = + G4AttDefStore::GetInstance("TrajectoryPoint", isNew); + if(isNew) + { G4String Pos("Pos"); (*store)[Pos] = - G4AttDef(Pos, "Position", "Physics","G4BestUnit","G4ThreeVector"); + G4AttDef(Pos, "Position", "Physics", "G4BestUnit", "G4ThreeVector"); G4String Time("Time"); (*store)[Time] = - G4AttDef(Time, "Time", "Physics","G4BestUnit","G4double"); + G4AttDef(Time, "Time", "Physics", "G4BestUnit", "G4double"); G4String Momentum("Momentum"); (*store)[Momentum] = - G4AttDef(Momentum, "Momentum", "Physics","G4BestUnit","G4ThreeVector"); + G4AttDef(Momentum, "Momentum", "Physics", "G4BestUnit", "G4ThreeVector"); G4String StepStatus("StepStatus"); (*store)[StepStatus] = @@ -124,7 +123,6 @@ const std::map* WLSTrajectoryPoint::GetAttDefs() const G4String VolumeName("VolumeName"); (*store)[VolumeName] = G4AttDef(VolumeName, "VolumeName", "Physics", "", "G4String"); - } return store; } @@ -135,17 +133,11 @@ std::vector* WLSTrajectoryPoint::CreateAttValues() const { std::vector* values = new std::vector; - values->push_back(G4AttValue("Time",G4BestUnit(fTime,"Time"),"")); - - values->push_back(G4AttValue("Momentum",G4BestUnit(fMomentum,"Momentum"),"")); - - values->push_back(G4AttValue("StepStatus",fStepStatus,"")); - - values->push_back(G4AttValue("VolumeName",fVolumeName,"")); - -#ifdef G4ATTDEBUG - G4cout << G4AttCheck(values,GetAttDefs()); -#endif + values->push_back(G4AttValue("Time", G4BestUnit(fTime, "Time"), "")); + values->push_back( + G4AttValue("Momentum", G4BestUnit(fMomentum, "Momentum"), "")); + values->push_back(G4AttValue("StepStatus", fStepStatus, "")); + values->push_back(G4AttValue("VolumeName", fVolumeName, "")); return values; } diff --git a/examples/extended/optical/wls/src/WLSUserTrackInformation.cc b/examples/extended/optical/wls/src/WLSUserTrackInformation.cc index a8ad7522ee..737e93c3d9 100644 --- a/examples/extended/optical/wls/src/WLSUserTrackInformation.cc +++ b/examples/extended/optical/wls/src/WLSUserTrackInformation.cc @@ -28,22 +28,16 @@ /// \brief Implementation of the WLSUserTrackInformation class // // -#include "G4ios.hh" -#include "G4ThreeVector.hh" #include "WLSUserTrackInformation.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSUserTrackInformation::WLSUserTrackInformation () -{ - fStatus = undefined; - fExitPosition = G4ThreeVector(0.,0.,0.); -} +WLSUserTrackInformation::WLSUserTrackInformation() { fStatus = undefined; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -WLSUserTrackInformation::~WLSUserTrackInformation () { } +WLSUserTrackInformation::~WLSUserTrackInformation() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -52,44 +46,47 @@ G4bool WLSUserTrackInformation::AddStatusFlag(TrackStatus s) // Cannot Add Undefine or a flag that conflicts with another flag // Return true if the addition of flag is successful, false otherwise { - switch (s) { - - case left: - case right: - - // Allow the user to set left or right - // only if the track is undefined - if (fStatus == undefined) return fStatus |= s; - - return false; - - case EscapedFromSide: - case EscapedFromReadOut: - - // Allow the user to set escaped flag - // only if the photon hasn't exited the fiber yet - - if ((fStatus == undefined) || (fStatus & OutsideOfFiber)) return false; - - return fStatus |= s; - - case ReflectedAtMirror: - case ReflectedAtReadOut: - case murderee: + switch(s) + { + case left: + case right: + // Allow the user to set left or right + // only if the track is undefined + if(fStatus == undefined) return fStatus |= s; - case InsideOfFiber: - - return ( fStatus = - (fStatus & ~(EscapedFromSide + EscapedFromReadOut + OutsideOfFiber)) | s); + return false; - case OutsideOfFiber: + case EscapedFromSide: + case EscapedFromReadOut: - return ( fStatus = (fStatus & ~InsideOfFiber) | s ); - - default: - + // Allow the user to set escaped flag + // only if the photon hasn't exited the fiber yet + + if((fStatus == undefined) || (fStatus & OutsideOfFiber)) return false; - } + + return fStatus |= s; + + case ReflectedAtMirror: + case ReflectedAtReadOut: + case murderee: + + return fStatus |= s; + + case InsideOfFiber: + + return (fStatus = (fStatus & ~(EscapedFromSide + EscapedFromReadOut + + OutsideOfFiber)) | + s); + + case OutsideOfFiber: + + return (fStatus = (fStatus & ~InsideOfFiber) | s); + + default: + + return false; + } } diff --git a/examples/extended/optical/wls/vis.mac b/examples/extended/optical/wls/vis.mac index ece2b7320f..4273b88334 100644 --- a/examples/extended/optical/wls/vis.mac +++ b/examples/extended/optical/wls/vis.mac @@ -1,42 +1,77 @@ # -# Create a scene handler/viewer for a specific graphics system -# The compound command "/vis/open " -# is equivalent to the following set of commands: +# Macro file for the initialization phase of "wls" +# Sets some default verbose +# and initializes the graphic. # -# /vis/sceneHandler/create -# /vis/viewer/create -# -# Create a scene handler and a viewer for the OGLIXm driver +/control/verbose 2 +/run/verbose 2 +/run/initialize # +# Use this open statement to create an OpenGL view: /vis/open OGL 600x600-0+0 # -#/vis/viewer/set/style surface -/vis/viewer/set/style wireframe +# Use this open statement to create a .prim file suitable for +# viewing in DAWN: +#/vis/open DAWNFILE # -# Set direction from target to camera. -/vis/viewer/set/viewpointThetaPhi 0 0 -/vis/viewer/zoom 100 +# Use this open statement to create a .heprep file suitable for +# viewing in HepRApp: +#/vis/open HepRepFile # -# The compound command "/vis/drawVolume" -# is equivalent to the following set of commands: +# Use this open statement to create a .wrl file suitable for +# viewing in a VRML viewer: +#/vis/open VRML2FILE # -# /vis/scene/create -# /vis/scene/add/volume -# /vis/sceneHandler/attach -# Create an empty scene and add the detector geometry to it +# Disable auto refresh and quieten vis messages whilst scene and +# trajectories are established: +/vis/viewer/set/autoRefresh false +/vis/verbose errors +# +# Draw geometry: /vis/drawVolume # -/vis/scene/add/axes 0 0 0 0.5 cm +# Specify view angle: +#/vis/viewer/set/viewpointThetaPhi 90. 0. # -# Store particle trajectories for visualization -# (if too many tracks cause core dump => storeTrajectory 0) -/tracking/storeTrajectory 2 +# Specify zoom value: +/vis/viewer/zoom 1.4 # -# Add trajectories to the current scene +# Specify style (surface or wireframe): +#/vis/viewer/set/style wireframe +# +# Draw coordinate axes: +#/vis/scene/add/axes 0 0 0 1 m +# +# Draw smooth trajectories at end of event, showing trajectory points +# as markers 2 pixels wide: /vis/scene/add/trajectories smooth +/vis/modeling/trajectories/create/drawByCharge +/vis/modeling/trajectories/drawByCharge-0/default/setDrawStepPts true +/vis/modeling/trajectories/drawByCharge-0/default/setStepPtsSize 1 +# (if too many tracks cause core dump => /tracking/storeTrajectory 0) # -# Requests viewer to accumulate hits, tracks, etc. at end of event. -# detector remains or is redrawn. -/vis/scene/endOfEventAction refresh -#/vis/scene/endOfEventAction accumulate +# Draw hits at end of event: +#/vis/scene/add/hits # +# To draw only gammas: +#/vis/filtering/trajectories/create/particleFilter +#/vis/filtering/trajectories/particleFilter-0/add gamma +# +# To invert the above, drawing all particles except gammas, +# keep the above two lines but also add: +#/vis/filtering/trajectories/particleFilter-0/invert true +# +# Many other options are available with /vis/modeling and /vis/filtering. +# For example, to select colour by particle ID: +#/vis/modeling/trajectories/create/drawByParticleID +#/vis/modeling/trajectories/drawByParticleID-0/set e- blue +# +# To superimpose all of the events from a given run: +/vis/scene/endOfEventAction accumulate +# +# Re-establish auto refreshing and verbosity: +/vis/viewer/set/autoRefresh true +/vis/verbose warnings +# +# For file-based drivers, use this to create an empty detector view: +#/vis/viewer/flush diff --git a/examples/extended/optical/wls/wls.cc b/examples/extended/optical/wls/wls.cc index 9aa8f4558f..cedd35190b 100644 --- a/examples/extended/optical/wls/wls.cc +++ b/examples/extended/optical/wls/wls.cc @@ -29,67 +29,43 @@ // //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#ifndef WIN32 -#include -#endif - -#include "G4Types.hh" - -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif - -#include "G4UImanager.hh" - -#include "FTFP_BERT.hh" -#include "G4OpticalPhysics.hh" -#include "G4EmStandardPhysics_option4.hh" - +#include "WLSActionInitialization.hh" #include "WLSDetectorConstruction.hh" -#include "WLSActionInitialization.hh" - -#include "G4VisExecutive.hh" +#include "FTFP_BERT.hh" +#include "G4EmStandardPhysics_option4.hh" +#include "G4OpticalPhysics.hh" +#include "G4RunManagerFactory.hh" +#include "G4Types.hh" #include "G4UIExecutive.hh" - -// argc holds the number of arguments (including the name) on the command line -// -> it is ONE when only the name is given !!! -// argv[0] is always the name of the program -// argv[1] points to the first argument, and so on +#include "G4UImanager.hh" +#include "G4VisExecutive.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -int main(int argc,char** argv) +int main(int argc, char** argv) { // Instantiate G4UIExecutive if interactive mode G4UIExecutive* ui = nullptr; - if ( argc == 1 ) { + if(argc == 1) + { ui = new G4UIExecutive(argc, argv); } -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; -#else - G4int seed = 123; - if (argc > 2) seed = atoi(argv[argc-1]); + auto runManager = G4RunManagerFactory::CreateRunManager(); + G4int seed = 123; + if(argc > 2) + seed = atoi(argv[argc - 1]); // Choose the Random engine and set the seed - - G4Random::setTheEngine(new CLHEP::RanecuEngine); + // G4Random::setTheEngine(new CLHEP::RanecuEngine); G4Random::setTheSeed(seed); - G4RunManager * runManager = new G4RunManager; -#endif - - // Set mandatory initialization classes - // // Detector construction WLSDetectorConstruction* detector = new WLSDetectorConstruction(); runManager->SetUserInitialization(detector); - // Physics list + // Physics list G4VModularPhysicsList* physicsList = new FTFP_BERT; physicsList->ReplacePhysics(new G4EmStandardPhysics_option4()); G4OpticalPhysics* opticalPhysics = new G4OpticalPhysics(); @@ -104,44 +80,26 @@ int main(int argc,char** argv) visManager->Initialize(); // Get the pointer to the User Interface manager + G4UImanager* UImanager = G4UImanager::GetUIpointer(); - G4UImanager * UImanager = G4UImanager::GetUIpointer(); - -#ifndef WIN32 - G4int optmax = argc; - if (argc > 2) { optmax = optmax-1; } - - if (optind < optmax) + if(ui) { - G4String command = "/control/execute "; - for ( ; optind < optmax; optind++) - { - G4String macroFilename = argv[optind]; - UImanager->ApplyCommand(command+macroFilename); - } + // Define (G)UI terminal for interactive mode + if(ui->IsGUI()) + UImanager->ApplyCommand("/control/execute gui.mac"); + ui->SessionStart(); + delete ui; } -#else // Simple UI for Windows runs, no possibility of additional arguments - if (argc!=1) + else { - G4String command = "/control/execute "; - G4String fileName = argv[1]; - UImanager->ApplyCommand(command+fileName); - } -#endif - else { - // Define (G)UI terminal for interactive mode - UImanager->ApplyCommand("/control/execute init.in"); - if (ui->IsGUI()) - UImanager->ApplyCommand("/control/execute gui.mac"); - ui->SessionStart(); - delete ui; + G4String command = "/control/execute "; + G4String fileName = argv[1]; + UImanager->ApplyCommand(command + fileName); } // job termination - delete visManager; delete runManager; - return 0; } diff --git a/examples/extended/optical/wls/wls.in b/examples/extended/optical/wls/wls.in index f55f3572c1..aced5dbb4a 100644 --- a/examples/extended/optical/wls/wls.in +++ b/examples/extended/optical/wls/wls.in @@ -5,13 +5,18 @@ /control/verbose 1 /event/verbose 0 /tracking/verbose 0 -# + +/WLS/setMirrorPolish 0.99 +/WLS/setMirrorReflectivity 0.99 +/WLS/setPhotonDetPolish 0.98 +/WLS/setPhotonDetReflectivity 0.98 + /run/initialize -# + /gps/particle opticalphoton /gps/ene/type Mono /gps/ene/mono 2.10 eV -# + /gps/pos/type Plane /gps/pos/shape Circle /gps/pos/radius 0.5 mm @@ -19,6 +24,38 @@ /gps/ang/mintheta 180.0 deg /gps/ang/maxtheta 90.0 deg /gps/pos/centre 0.0 0.0 0.0 cm + +/WLS/setPhotonDetGeometry Circle +/WLS/setNumOfLayers 2 +/WLS/setSurfaceRoughness 0.999 +/WLS/setXYRatio 0.8 +/WLS/setWLSLength 1. m +/WLS/setWLSRadius 0.5 mm +/WLS/setClad1Radius 0.3 mm +/WLS/setClad2Radius 0.1 mm # -/run/beamOn 200 +/WLS/setPhotonDetHalfLength 0.6 mm +/WLS/setGap 0.15 mm +/WLS/setAlignment 0.1 deg +/WLS/setMirror true + +/WLS/setBarLength 1.1 m +/WLS/setBarBase 9.5 mm +/WLS/setHoleRadius 0.9 mm +/WLS/setCoatingThickness 0.3 mm +/WLS/setCoatingRadius 1.775 mm + + +/WLS/eventVerbose 2 +/run/printProgress 1 +/WLS/eventVerbose 2 +/run/beamOn 10 + +/WLS/gun/optPhotonPolar 90. deg +/WLS/gun/setDecayTimeConstant 10. ns +/stepping/setBounceLimit 10000 + +/WLS/eventVerbose 0 +/run/printProgress 1000 +/run/beamOn 10000 # diff --git a/examples/extended/optical/wls/wls.out b/examples/extended/optical/wls/wls.out index 647a5a54a2..26e9786713 100644 --- a/examples/extended/optical/wls/wls.out +++ b/examples/extended/optical/wls/wls.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -14,7 +15,7 @@ <<< Geant4 Physics List simulation engine: FTFP_BERT -G4VModularPhysicsList::ReplacePhysics: G4EmStandardwith type : 2 is replaces with G4EmStandard_opt4 +G4VModularPhysicsList::ReplacePhysics: G4EmStandard with type : 2 is replaced with G4EmStandard_opt4 Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... @@ -29,10 +30,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -68,6 +71,14 @@ Some /vis commands (optionally) take a string to specify colour. "/vis/list" to see available colours. /event/verbose 0 /tracking/verbose 0 +/WLS/setMirrorPolish 0.99 +/run/geometryModified +/WLS/setMirrorReflectivity 0.99 +/run/geometryModified +/WLS/setPhotonDetPolish 0.98 +/run/geometryModified +/WLS/setPhotonDetReflectivity 0.98 +/run/geometryModified /run/initialize G4NistMaterialBuilder::FindOrBuildMaterial G4_Galactic G4NistMaterialBuilder: BuildMaterial #286 @@ -82,28 +93,28 @@ G4NistElementBuilder: Build Element Z= 7 Aeff= 14.0068 with natural isoto G4NistElementBuilder: Build Element Z= 8 Aeff= 15.9994 with natural isotope composition G4NistElementBuilder: Build Element Z= 18 Aeff= 39.9477 with natural isotope composition G4NistMaterialBuilder::FindOrBuildMaterial PMMA -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -New material PMMA is prepeared nMaterials= 309 nComponents= 777 nCurrent= 3 +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +New material PMMA is prepared nMaterials= 309 nComponents= 777 nCurrent= 3 G4NistMaterialBuilder: BuildMaterial #308 New material nComponents= 3 G4NistMaterialBuilder::FindOrBuildMaterial Pethylene -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -New material Pethylene is prepeared nMaterials= 310 nComponents= 780 nCurrent= 2 +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +New material Pethylene is prepared nMaterials= 310 nComponents= 780 nCurrent= 2 G4NistMaterialBuilder: BuildMaterial #309 New material nComponents= 2 G4NistMaterialBuilder::FindOrBuildMaterial FPethylene -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -New material FPethylene is prepeared nMaterials= 311 nComponents= 782 nCurrent= 2 +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +New material FPethylene is prepared nMaterials= 311 nComponents= 782 nCurrent= 2 G4NistMaterialBuilder: BuildMaterial #310 New material nComponents= 2 G4NistMaterialBuilder::FindOrBuildMaterial Polystyrene -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -New material Polystyrene is prepeared nMaterials= 312 nComponents= 784 nCurrent= 2 +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +New material Polystyrene is prepared nMaterials= 312 nComponents= 784 nCurrent= 2 G4NistMaterialBuilder: BuildMaterial #311 New material nComponents= 2 G4NistMaterialBuilder::FindOrBuildMaterial Silicone -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -New material Silicone is prepeared nMaterials= 313 nComponents= 786 nCurrent= 2 +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +New material Silicone is prepared nMaterials= 313 nComponents= 786 nCurrent= 2 G4NistMaterialBuilder: BuildMaterial #312 New material nComponents= 2 G4NistMaterialBuilder::FindOrBuildMaterial G4_Al @@ -111,13 +122,13 @@ G4NistMaterialBuilder: BuildMaterial #13 New material nComponents= 1 G4NistElementBuilder: Build Element Z= 13 Aeff= 26.9815 with natural isotope composition G4NistMaterialBuilder::FindOrBuildMaterial TiO2 -G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found out -New material TiO2 is prepeared nMaterials= 314 nComponents= 788 nCurrent= 2 +G4NistMaterialBuilder::FindOrBuildMaterial WARNING: material is not found. +New material TiO2 is prepared nMaterials= 314 nComponents= 788 nCurrent= 2 G4NistMaterialBuilder: BuildMaterial #313 New material nComponents= 2 G4NistElementBuilder: Build Element Z= 22 Aeff= 47.8667 with natural isotope composition - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -136,7 +147,47 @@ G4NistElementBuilder: Build Element Z= 22 Aeff= 47.8667 with natural iso /gps/ang/mintheta 180.0 deg /gps/ang/maxtheta 90.0 deg /gps/pos/centre 0.0 0.0 0.0 cm -/run/beamOn 200 +/WLS/setPhotonDetGeometry Circle +/run/reinitializeGeometry +/WLS/setNumOfLayers 2 +/run/geometryModified +/WLS/setSurfaceRoughness 0.999 +/run/geometryModified +/WLS/setXYRatio 0.8 +/run/geometryModified +/WLS/setWLSLength 1. m +/run/geometryModified +/WLS/setWLSRadius 0.5 mm +/run/geometryModified +/WLS/setClad1Radius 0.3 mm +/run/geometryModified +/WLS/setClad2Radius 0.1 mm +/run/geometryModified +/WLS/setPhotonDetHalfLength 0.6 mm +/run/geometryModified +/WLS/setGap 0.15 mm +/run/geometryModified +/WLS/setAlignment 0.1 deg +/run/geometryModified +/WLS/setMirror true +/run/geometryModified +/WLS/setBarLength 1.1 m +/run/geometryModified +/WLS/setBarBase 9.5 mm +/run/geometryModified +/WLS/setHoleRadius 0.9 mm +/run/geometryModified +/WLS/setCoatingThickness 0.3 mm +/run/geometryModified +/WLS/setCoatingRadius 1.775 mm +/run/geometryModified +/WLS/eventVerbose 2 +/run/printProgress 1 +/WLS/eventVerbose 2 +/run/beamOn 10 +Start re-initialization because + Geometry +has been modified since last Run. ### === Deexcitation model UAtomDeexcitation is activated for 1 region: DefaultRegionForTheWorld 1 0 0 @@ -166,10 +217,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -192,7 +244,7 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 @@ -201,10 +253,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -227,7 +280,7 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -240,9 +293,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -256,14 +309,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -276,9 +329,9 @@ nuclearStopping: for proton SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -292,9 +345,9 @@ nuclearStopping: for GenericIon SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -309,9 +362,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -325,14 +378,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -341,9 +394,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -357,14 +410,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -373,9 +426,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -389,14 +442,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -405,9 +458,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -422,14 +475,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -438,9 +491,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -455,14 +508,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -471,9 +524,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -487,14 +540,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -503,9 +556,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -519,14 +572,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -555,6 +608,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -629,6 +704,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -740,8 +828,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -806,8 +894,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -848,7 +936,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -863,28 +950,28 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Coating Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.92994 keV e- 354.448 keV e+ 345.078 keV proton 70 keV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : Polystyrene Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.1244 keV e- 282.263 keV e+ 276.648 keV proton 70 keV + Energy thresholds : gamma 2.11555 keV e- 283.792 keV e+ 276.265 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 3 used in the geometry : Yes - Material : PMMA + Material : FPethylene Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.4127 keV e- 303.844 keV e+ 297.799 keV proton 70 keV + Energy thresholds : gamma 2.29322 keV e- 361.464 keV e+ 351.877 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 4 used in the geometry : Yes Material : G4_Al Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 5.84069 keV e- 457.179 keV e+ 442.122 keV proton 70 keV + Energy thresholds : gamma 5.85564 keV e- 460.395 keV e+ 442.201 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -893,16 +980,271 @@ Index : 4 used in the geometry : Yes G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -### Run 0 start. - ---------- Ranecu engine status --------- - Initial seed (index) = 123 - Current couple of seeds = 960416485, 2004255415 ----------------------------------------- +--> Event 0 starts. +------------------------------------- + In this event, number of: + TIR: 0 + Exiting: 6 + Escaped Mid: 1 + Escaped End: 0 + Bounced: 0 + WLS Bounce: 0 + Clad1 Bounce: 0 + Clad2 Bounce: 0 + Reflected: 1 + Detected: 0 + Escaped: 0 + Mirror: 0 + Detector hit: 0 +--> Event 1 starts. +------------------------------------- + In this event, number of: + TIR: 2 + Exiting: 30 + Escaped Mid: 1 + Escaped End: 0 + Bounced: 0 + WLS Bounce: 0 + Clad1 Bounce: 0 + Clad2 Bounce: 0 + Reflected: 12 + Detected: 0 + Escaped: 0 + Mirror: 0 + Detector hit: 0 +--> Event 2 starts. +------------------------------------- + In this event, number of: + TIR: 0 + Exiting: 5 + Escaped Mid: 1 + Escaped End: 0 + Bounced: 0 + WLS Bounce: 0 + Clad1 Bounce: 0 + Clad2 Bounce: 0 + Reflected: 1 + Detected: 0 + Escaped: 0 + Mirror: 0 + Detector hit: 0 +--> Event 3 starts. +------------------------------------- + In this event, number of: + TIR: 0 + Exiting: 15 + Escaped Mid: 2 + Escaped End: 0 + Bounced: 0 + WLS Bounce: 0 + Clad1 Bounce: 0 + Clad2 Bounce: 0 + Reflected: 4 + Detected: 0 + Escaped: 0 + Mirror: 0 + Detector hit: 0 +--> Event 4 starts. +------------------------------------- + In this event, number of: + TIR: 1 + Exiting: 24 + Escaped Mid: 2 + Escaped End: 0 + Bounced: 0 + WLS Bounce: 0 + Clad1 Bounce: 0 + Clad2 Bounce: 0 + Reflected: 8 + Detected: 0 + Escaped: 0 + Mirror: 0 + Detector hit: 0 +--> Event 5 starts. +------------------------------------- + In this event, number of: + TIR: 539 + Exiting: 3 + Escaped Mid: 1 + Escaped End: 0 + Bounced: 0 + WLS Bounce: 0 + Clad1 Bounce: 0 + Clad2 Bounce: 0 + Reflected: 0 + Detected: 0 + Escaped: 0 + Mirror: 0 + Detector hit: 0 +--> Event 6 starts. +------------------------------------- + In this event, number of: + TIR: 0 + Exiting: 5 + Escaped Mid: 0 + Escaped End: 0 + Bounced: 0 + WLS Bounce: 0 + Clad1 Bounce: 0 + Clad2 Bounce: 0 + Reflected: 1 + Detected: 0 + Escaped: 0 + Mirror: 0 + Detector hit: 0 +--> Event 7 starts. +------------------------------------- + In this event, number of: + TIR: 360 + Exiting: 4 + Escaped Mid: 1 + Escaped End: 0 + Bounced: 0 + WLS Bounce: 0 + Clad1 Bounce: 0 + Clad2 Bounce: 0 + Reflected: 2 + Detected: 0 + Escaped: 0 + Mirror: 0 + Detector hit: 0 +--> Event 8 starts. +------------------------------------- + In this event, number of: + TIR: 0 + Exiting: 7 + Escaped Mid: 1 + Escaped End: 0 + Bounced: 0 + WLS Bounce: 0 + Clad1 Bounce: 0 + Clad2 Bounce: 0 + Reflected: 1 + Detected: 0 + Escaped: 0 + Mirror: 0 + Detector hit: 0 +--> Event 9 starts. +------------------------------------- + In this event, number of: + TIR: 397 + Exiting: 5 + Escaped Mid: 1 + Escaped End: 0 + Bounced: 0 + WLS Bounce: 0 + Clad1 Bounce: 0 + Clad2 Bounce: 0 + Reflected: 2 + Detected: 0 + Escaped: 0 + Mirror: 0 + Detector hit: 0 Run terminated. Run Summary - Number of events processed : 200 - User=4.560000s Real=4.579211s Sys=0.000000s + Number of events processed : 10 + User=0.000000s Real=0.005882s Sys=0.000000s + + ======================== run summary ===================== +Average number per event: + TIR: 130 +- 202 + Exiting: 10.4 +- 8.97 + Escaped Mid: 1.1 +- 0.539 + Escaped End: 0 +- 0 + Bounced: 0 +- 0 + WLS Bounce: 0 +- 0 + Clad1 Bounce: 0 +- 0 + Clad2 Bounce: 0 +- 0 + Reflected: 3.2 +- 3.66 + Detected: 0 +- 0 + Escaped: 0 +- 0 + Mirror: 0 +- 0 + Detector hit: 0 +- 0 + +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. +/WLS/gun/optPhotonPolar 90. deg +/WLS/gun/setDecayTimeConstant 10. ns +/stepping/setBounceLimit 10000 +/WLS/eventVerbose 0 +/run/printProgress 1000 +/run/beamOn 10000 + +========= Table of registered couples ============================ + +Index : 0 used in the geometry : Yes + Material : G4_AIR + Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um + Energy thresholds : gamma 990 eV e- 990 eV e+ 990 eV proton 70 keV + Region(s) which use this couple : + DefaultRegionForTheWorld + +Index : 1 used in the geometry : Yes + Material : Coating + Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 70 keV + Region(s) which use this couple : + DefaultRegionForTheWorld + +Index : 2 used in the geometry : Yes + Material : Polystyrene + Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um + Energy thresholds : gamma 2.11555 keV e- 283.792 keV e+ 276.265 keV proton 70 keV + Region(s) which use this couple : + DefaultRegionForTheWorld + +Index : 3 used in the geometry : Yes + Material : FPethylene + Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um + Energy thresholds : gamma 2.29322 keV e- 361.464 keV e+ 351.877 keV proton 70 keV + Region(s) which use this couple : + DefaultRegionForTheWorld + +Index : 4 used in the geometry : Yes + Material : G4_Al + Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um + Energy thresholds : gamma 5.85564 keV e- 460.395 keV e+ 442.201 keV proton 70 keV + Region(s) which use this couple : + DefaultRegionForTheWorld + +================================================================== + +### Run 1 starts. +--> Event 0 starts. +--> Event 1000 starts. +--> Event 2000 starts. +--> Event 3000 starts. +--> Event 4000 starts. +--> Event 5000 starts. +--> Event 6000 starts. +--> Event 7000 starts. +--> Event 8000 starts. +--> Event 9000 starts. + Run terminated. +Run Summary + Number of events processed : 10000 + User=18.700000s Real=21.433475s Sys=0.020000s + + ======================== run summary ===================== +Average number per event: + TIR: 556 +- 4.21e+03 + Exiting: 7.76 +- 6.26 + Escaped Mid: 0.933 +- 0.503 + Escaped End: 0 +- 0 + Bounced: 0.238 +- 0.926 + WLS Bounce: 0 +- 0 + Clad1 Bounce: 0.13 +- 0.612 + Clad2 Bounce: 0 +- 0 + Reflected: 2.14 +- 2.47 + Detected: 0 +- 0 + Escaped: 0 +- 0 + Mirror: 0 +- 0 + Detector hit: 0 +- 0 + +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. diff --git a/examples/extended/parallel/CMakeLists.txt b/examples/extended/parallel/CMakeLists.txt index 15fc6446a9..a7ded9b57b 100644 --- a/examples/extended/parallel/CMakeLists.txt +++ b/examples/extended/parallel/CMakeLists.txt @@ -1,6 +1,9 @@ # - CmakeLists.txt for parallel examples -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() find_package(Geant4) include(${Geant4_USE_FILE}) diff --git a/examples/extended/parallel/History b/examples/extended/parallel/History index 20b04641bd..e490bf3fe3 100644 --- a/examples/extended/parallel/History +++ b/examples/extended/parallel/History @@ -10,6 +10,9 @@ * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +03 November 2020, B. Morgan (exparallel-V10-06-00) +- Support same CMake version range as core Geant4 + 31 January 2019, I. Hrivnacova (exparallel-V10-05-00) - Merged GitHub PR #4: all Boolean operators now return G4bool. @@ -17,11 +20,11 @@ - Fixed file descriptions (for Doxygen) 10 November 2013, I. Hrivnacova (exparallel-V09-06-03) -- Fixed README and CMake files +- Fixed README and CMake files 08 November 2013, I. Hrivnacova (exparallel-V09-06-02) - Moved ParN02, ParN04 and info in a new TopC directory, - and removed ParN02tbb (its is still kept in the branch + and removed ParN02tbb (its is still kept in the branch ParN02tbb_08_11_2013) 27 August 2013, G. Cosmo (exparallel-V09-06-01) diff --git a/examples/extended/parallel/MPI/CMakeLists.txt b/examples/extended/parallel/MPI/CMakeLists.txt index 3f8ddfc4af..255a8f6391 100644 --- a/examples/extended/parallel/MPI/CMakeLists.txt +++ b/examples/extended/parallel/MPI/CMakeLists.txt @@ -5,7 +5,10 @@ # and then examples, see included README files project(G4mpi) -cmake_minimum_required(VERSION 2.8.3 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(source) set(G4mpi_DIR "${PROJECT_BINARY_DIR}/source") diff --git a/examples/extended/parallel/MPI/History b/examples/extended/parallel/MPI/History index 08b7f952fe..00cdfc2def 100644 --- a/examples/extended/parallel/MPI/History +++ b/examples/extended/parallel/MPI/History @@ -9,6 +9,10 @@ * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +4 November 2020 I. Hrivnacova (MPI-V10-06-00) +- Updated analysis classes for the design changes in analysis + tags analysis-V10-06-05,06 + 21 October 2019 I. Hrivnacova (MPI-V10-05-02) - Fixed exMPI03, exMPI04, G4MPIscorerMerger.cc compilation which was broken after changes in scorers diff --git a/examples/extended/parallel/MPI/examples/CMakeLists.txt b/examples/extended/parallel/MPI/examples/CMakeLists.txt index 97ead42fd9..6bd6f4fe47 100644 --- a/examples/extended/parallel/MPI/examples/CMakeLists.txt +++ b/examples/extended/parallel/MPI/examples/CMakeLists.txt @@ -1,6 +1,9 @@ # - CmakeLists.txt for MPI examples -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(exMPI01) add_subdirectory(exMPI02) diff --git a/examples/extended/parallel/MPI/examples/exMPI01/CMakeLists.txt b/examples/extended/parallel/MPI/examples/exMPI01/CMakeLists.txt index 32bb2546f7..3baab99322 100644 --- a/examples/extended/parallel/MPI/examples/exMPI01/CMakeLists.txt +++ b/examples/extended/parallel/MPI/examples/exMPI01/CMakeLists.txt @@ -2,7 +2,10 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(exMPI01) #---------------------------------------------------------------------------- diff --git a/examples/extended/parallel/MPI/examples/exMPI02/CMakeLists.txt b/examples/extended/parallel/MPI/examples/exMPI02/CMakeLists.txt index 2c3f8897c7..003c8621cd 100644 --- a/examples/extended/parallel/MPI/examples/exMPI02/CMakeLists.txt +++ b/examples/extended/parallel/MPI/examples/exMPI02/CMakeLists.txt @@ -2,7 +2,10 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(exMPI02) #------------------------------------------------------------------------------ diff --git a/examples/extended/parallel/MPI/examples/exMPI03/CMakeLists.txt b/examples/extended/parallel/MPI/examples/exMPI03/CMakeLists.txt index 9c46d581ec..e91ed6f172 100644 --- a/examples/extended/parallel/MPI/examples/exMPI03/CMakeLists.txt +++ b/examples/extended/parallel/MPI/examples/exMPI03/CMakeLists.txt @@ -2,7 +2,10 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(exMPI03) #------------------------------------------------------------------------------ diff --git a/examples/extended/parallel/MPI/examples/exMPI04/CMakeLists.txt b/examples/extended/parallel/MPI/examples/exMPI04/CMakeLists.txt index 0af389a295..f3c58b247d 100644 --- a/examples/extended/parallel/MPI/examples/exMPI04/CMakeLists.txt +++ b/examples/extended/parallel/MPI/examples/exMPI04/CMakeLists.txt @@ -2,7 +2,10 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(exMPI04) #------------------------------------------------------------------------------ diff --git a/examples/extended/parallel/MPI/source/CMakeLists.txt b/examples/extended/parallel/MPI/source/CMakeLists.txt index 7d0b0d0ff5..44d88bd766 100644 --- a/examples/extended/parallel/MPI/source/CMakeLists.txt +++ b/examples/extended/parallel/MPI/source/CMakeLists.txt @@ -8,7 +8,10 @@ project(${_projname}) #------------------------------------------------------------------------------ #Manadatory dependencies -cmake_minimum_required(VERSION 3.3 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() find_package(MPI REQUIRED) find_package(Geant4 10.2.0 REQUIRED) include(${Geant4_USE_FILE}) @@ -86,6 +89,7 @@ set(_sources src/G4VUserMPIrunMerger.cc src/G4MPIutils.cc analysis/src/G4RootMpiAnalysisManager.cc + analysis/src/G4RootMpiNtupleFileManager.cc analysis/src/G4RootMpiNtupleManager.cc analysis/src/G4RootMpiPNtupleManager.cc ) @@ -130,6 +134,7 @@ set(HEADERS include/G4VUserMPIrunMerger.hh include/G4MPIutils.hh analysis/include/G4RootMpiAnalysisManager.hh + analysis/include/G4RootMpiNtupleFileManager.hh analysis/include/G4RootMpiNtupleManager.hh analysis/include/G4RootMpiPNtupleDescription.hh analysis/include/G4RootMpiPNtupleManager.hh diff --git a/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiAnalysisManager.hh b/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiAnalysisManager.hh index 44d0ad8e81..9ea7c8e4d7 100644 --- a/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiAnalysisManager.hh +++ b/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiAnalysisManager.hh @@ -35,13 +35,11 @@ #include "G4RootAnalysisManager.hh" -enum class G4MpiNtupleMergeMode { - kNone, - kMain, - kSlave -}; +class G4RootMpiNtupleFileManager; -class G4RootMpiPNtupleManager; +namespace tools { +class impi; +} class G4RootMpiAnalysisManager : public G4RootAnalysisManager { @@ -57,18 +55,8 @@ class G4RootMpiAnalysisManager : public G4RootAnalysisManager protected: // virtual methods from base class virtual G4bool OpenFileImpl(const G4String& fileName) final; + virtual G4bool WriteImpl() final; virtual G4bool CloseFileImpl(G4bool reset) final; - virtual G4bool WriteNtuple() final; - virtual G4bool Reset() final; - - private: - // methods - void SetMpiNtupleMergingMode(G4int mpiRank, G4int mpiSize, G4int nofNtupleFiles); - void CreateMpiNtupleManagers(tools::impi* impi, G4int mpiRank, G4int mpiSize); - - // data members - G4MpiNtupleMergeMode fMpiNtupleMergeMode; - G4RootMpiPNtupleManager* fMpiSlaveNtupleManager; }; #endif diff --git a/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiNtupleFileManager.hh b/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiNtupleFileManager.hh new file mode 100644 index 0000000000..514bc391dd --- /dev/null +++ b/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiNtupleFileManager.hh @@ -0,0 +1,80 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +// The Root analysis manager extension for MPI +// This class is temporarily provided with g4mpi, +// it will be integrated in Geant4 analysis category in future. +// +// Author: Ivana Hrivnacova, 21/11/2018 (ivana@ipno.in2p3.fr) + +#ifndef G4RootMpiNtupleFileManager_h +#define G4RootMpiNtupleFileManager_h 1 + +#include "G4RootNtupleFileManager.hh" + +class G4RootMpiNtupleManager; +class G4RootMpiPNtupleManager; + +namespace tools { +class impi; +} + +class G4RootMpiNtupleFileManager : public G4RootNtupleFileManager +{ + public: + explicit G4RootMpiNtupleFileManager(const G4AnalysisManagerState& state); + virtual ~G4RootMpiNtupleFileManager(); + + // MPI + void SetMpiNtupleMerging(tools::impi* impi, + G4int mpiRank, G4int mpiSize, + G4int nofReducedNtupleFiles = 0); + + // virtual methods from base class + virtual G4bool ActionAtOpenFile(const G4String& fileName) final; + virtual G4bool ActionAtWrite() final; + virtual G4bool ActionAtCloseFile(G4bool reset) final; + virtual G4bool Reset() final; + + virtual std::shared_ptr CreateNtupleManager() override; + + std::shared_ptr GetMpiNtupleManager() const; + + private: + // methods + void SetMpiNtupleMergingMode(G4int nofNtupleFiles); + void CreateMpiNtupleManagers(tools::impi* impi, G4int mpiRank, G4int mpiSize); + + // data members + tools::impi* fImpi; + G4int fMpiRank; + G4int fMpiSize; + // std::shared_ptr fMpiNtupleManager; + std::shared_ptr fMpiSlaveNtupleManager; + G4bool fNtupleBooked; +}; + +#endif diff --git a/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiNtupleManager.hh b/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiNtupleManager.hh index 21f0c7d303..c9aeef0d4c 100644 --- a/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiNtupleManager.hh +++ b/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiNtupleManager.hh @@ -42,21 +42,23 @@ class impi; class G4RootMpiNtupleManager : public G4RootNtupleManager { - friend class G4RootMpiAnalysisManager; - friend class G4RootMpiMainNtupleManager; - public: - G4RootMpiNtupleManager(const G4AnalysisManagerState& state, - G4bool rowWise, G4bool rowMode, - tools::impi* impi, G4int mpiSize); + G4RootMpiNtupleManager(const G4AnalysisManagerState& state, + std::shared_ptr bookingManger, + G4bool rowWise, G4bool rowMode, + tools::impi* impi, G4int mpiSize); virtual ~G4RootMpiNtupleManager(); - virtual void CreateNtuplesFromBooking() final; + virtual void CreateNtuplesFromBooking( + const std::vector& ntupleBookings) final; + + // Methods from the templated base class virtual G4bool Merge() final; private: // MPI - G4bool Send(G4int id, tools::wroot::ntuple* ntuple); + G4RootFile* GetNtupleFile(G4int id); + G4bool Send(G4int id, RootNtupleDescription* ntupleDescription); G4bool InitializeRanks(); G4bool WaitBuffer(); diff --git a/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiPNtupleDescription.hh b/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiPNtupleDescription.hh index a8b267b3a8..4e6f728511 100644 --- a/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiPNtupleDescription.hh +++ b/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiPNtupleDescription.hh @@ -35,6 +35,9 @@ #include "globals.hh" +#include "G4TNtupleDescription.hh" +#include "G4RootFileDef.hh" + #include "tools/ntuple_booking" #include "tools/impi" #include "tools/wroot/impi_ntuple" @@ -43,34 +46,33 @@ namespace tools { namespace wroot { class branch; class base_pntuple; +class ntuple; } } +using RootNtupleDescription = G4TNtupleDescription; + struct G4RootMpiPNtupleDescription { - G4RootMpiPNtupleDescription() - : fNtuple(nullptr), + G4RootMpiPNtupleDescription(G4NtupleBooking* g4NtupleBooking) + : fDescription(g4NtupleBooking), + fNtuple(nullptr), fBasePNtuple(nullptr), fMainBranches(), - fNtupleBooking(), fMainNtupleRank(0), - fImpi(nullptr), - fActivation(true), - fIsNtupleOwner(true) {} + fImpi(nullptr) {} ~G4RootMpiPNtupleDescription() { - if ( fIsNtupleOwner ) delete fNtuple; + if ( fDescription.fIsNtupleOwner ) delete fNtuple; } + RootNtupleDescription fDescription; tools::wroot::impi_ntuple* fNtuple; tools::wroot::base_pntuple* fBasePNtuple; std::vector fMainBranches; - tools::ntuple_booking fNtupleBooking; G4int fMainNtupleRank; tools::impi* fImpi; - G4bool fActivation; - G4bool fIsNtupleOwner; }; #endif diff --git a/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiPNtupleManager.hh b/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiPNtupleManager.hh index 4e068196d0..71c1e063f7 100644 --- a/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiPNtupleManager.hh +++ b/examples/extended/parallel/MPI/source/analysis/include/G4RootMpiPNtupleManager.hh @@ -57,9 +57,7 @@ class impi_ntuple; class G4RootMpiPNtupleManager : public G4BaseNtupleManager { - friend class G4RootMpiAnalysisManager; - friend class G4RootAnalysisManager; - friend class G4RootNtupleManager; + friend class G4RootMpiNtupleFileManager; public: explicit G4RootMpiPNtupleManager(const G4AnalysisManagerState& state, @@ -67,34 +65,25 @@ class G4RootMpiPNtupleManager : public G4BaseNtupleManager ~G4RootMpiPNtupleManager(); private: - enum class G4PNtupleCreateMode { - kSlaveBeforeOpen, - kSlaveAfterOpen, - kUndefined - }; - // Functions specific to the output type - void SetNtupleDirectory(tools::wroot::directory* directory); + // void SetNtupleDirectory(tools::wroot::directory* directory); void SetFileManager(std::shared_ptr fileManager); // Methods to manipulate ntuples void CreateNtuple(G4RootMpiPNtupleDescription* ntupleDescription); - void CreateNtuplesFromBooking(); + void CreateNtuplesFromBooking(const std::vector& ntupleBookings); // Methods to create ntuples // - virtual G4int CreateNtuple(const G4String& name, const G4String& title) final; - // Create columns in the ntuple with given id - virtual G4int CreateNtupleIColumn(G4int ntupleId, - const G4String& name, std::vector* vector) final; - virtual G4int CreateNtupleFColumn(G4int ntupleId, - const G4String& name, std::vector* vector) final; - virtual G4int CreateNtupleDColumn(G4int ntupleId, - const G4String& name, std::vector* vector) final; - virtual G4int CreateNtupleSColumn(G4int ntupleId, const G4String& name) final; - virtual void FinishNtuple(G4int ntupleId) final; + virtual G4int CreateNtuple(G4NtupleBooking* booking) final; // Methods to fill ntuples + // Methods for ntuple with id = FirstNtupleId (from base class) + using G4BaseNtupleManager::FillNtupleIColumn; + using G4BaseNtupleManager::FillNtupleFColumn; + using G4BaseNtupleManager::FillNtupleDColumn; + using G4BaseNtupleManager::FillNtupleSColumn; + using G4BaseNtupleManager::AddNtupleRow; // Methods for ntuple with id > FirstNtupleId (when more ntuples exist) virtual G4bool FillNtupleIColumn(G4int ntupleId, G4int columnId, G4int value) final; virtual G4bool FillNtupleFColumn(G4int ntupleId, G4int columnId, G4float value) final; @@ -112,13 +101,9 @@ class G4RootMpiPNtupleManager : public G4BaseNtupleManager virtual void SetActivation(G4bool activation) final; virtual void SetActivation(G4int ntupleId, G4bool activation) final; virtual G4bool GetActivation(G4int ntupleId) const final; - virtual G4bool IsEmpty() const final; // Access methods virtual G4int GetNofNtuples() const final; - virtual G4int GetNofNtupleBookings() const final; - const std::vector& GetNtupleDescriptionVector() const; - unsigned int GetBasketSize() const; private: G4RootMpiPNtupleDescription* @@ -126,21 +111,12 @@ class G4RootMpiPNtupleManager : public G4BaseNtupleManager tools::wroot::base_pntuple* GetNtupleInFunction(G4int id, G4String function, G4bool warn = true) const; - template - G4int CreateNtupleTColumn(G4int ntupleId, - const G4String& name, std::vector* vector); - - template - G4int CreateNtupleTColumn( - const G4String& name, std::vector* vector); - template G4bool FillNtupleTColumn(G4int ntupleId, G4int columnId, const T& value); // Data members // G4RootMpiMainNtupleManager* fMpiMainNtupleManager; std::shared_ptr fFileManager; - tools::wroot::directory* fNtupleDirectory; std::vector fNtupleDescriptionVector; std::vector fNtupleVector; tools::impi* fImpi; @@ -150,57 +126,10 @@ class G4RootMpiPNtupleManager : public G4BaseNtupleManager // inline functions -inline void -G4RootMpiPNtupleManager::SetNtupleDirectory(tools::wroot::directory* directory) -{ fNtupleDirectory = directory; } - inline void G4RootMpiPNtupleManager::SetFileManager(std::shared_ptr fileManager) { fFileManager = fileManager; } -inline const std::vector& -G4RootMpiPNtupleManager::GetNtupleDescriptionVector() const -{ return fNtupleDescriptionVector; } - - -//_____________________________________________________________________________ -template -G4int G4RootMpiPNtupleManager::CreateNtupleTColumn( - G4int ntupleId, const G4String& name, std::vector* vector) -{ -#ifdef G4VERBOSE - if ( fState.GetVerboseL4() ) { - G4ExceptionDescription description; - description << name << " ntupleId " << ntupleId; - fState.GetVerboseL4()->Message("create", "pntuple T column", description); - } -#endif - - auto ntupleDescription = GetNtupleDescriptionInFunction(ntupleId, "CreateNtupleTColumn"); - if ( ! ntupleDescription ) return G4Analysis::kInvalidId; - - // Save column info in booking - auto& ntupleBooking = ntupleDescription->fNtupleBooking; - auto index = ntupleBooking.columns().size(); - if ( ! vector ) - ntupleBooking.template add_column(name); - else - ntupleBooking.template add_column(name, *vector); - - fLockFirstNtupleColumnId = true; - -#ifdef G4VERBOSE - if ( fState.GetVerboseL2() ) { - G4ExceptionDescription description; - description << name << " ntupleId " << ntupleId; - fState.GetVerboseL2()->Message("create", "pntuple T column", description); - } -#endif - - return index + fFirstNtupleColumnId; - -} - //_____________________________________________________________________________ template <> inline G4bool G4RootMpiPNtupleManager::FillNtupleTColumn( @@ -319,4 +248,3 @@ G4bool G4RootMpiPNtupleManager::FillNtupleTColumn( } #endif - diff --git a/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiAnalysisManager.cc b/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiAnalysisManager.cc index 567c619427..145d70196c 100644 --- a/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiAnalysisManager.cc +++ b/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiAnalysisManager.cc @@ -27,6 +27,7 @@ // Author: Ivana Hrivnacova, 21/11/2018 (ivana@ipno.in2p3.fr) #include "G4RootMpiAnalysisManager.hh" +#include "G4RootMpiNtupleFileManager.hh" #include "G4RootMpiNtupleManager.hh" #include "G4RootMpiPNtupleManager.hh" @@ -34,116 +35,24 @@ //_____________________________________________________________________________ G4RootMpiAnalysisManager::G4RootMpiAnalysisManager(G4bool isMaster) - : G4RootAnalysisManager(isMaster), - fMpiNtupleMergeMode(G4MpiNtupleMergeMode::kNone), - fMpiSlaveNtupleManager(nullptr) -{} + : G4RootAnalysisManager(isMaster) +{ + // Reset the ntuple file manager + fNtupleFileManager.reset(); + + // Ntuple file manager + fNtupleFileManager = std::make_shared(fState); + fNtupleFileManager->SetFileManager(fFileManager); + fNtupleFileManager->SetBookingManager(fNtupleBookingManager); +} //_____________________________________________________________________________ G4RootMpiAnalysisManager::~G4RootMpiAnalysisManager() {} -// -// private methods // - -//_____________________________________________________________________________ -void G4RootMpiAnalysisManager::CreateMpiNtupleManagers( - tools::impi* impi, G4int mpiRank, G4int mpiSize) -{ -#ifdef G4VERBOSE - if ( fState.GetVerboseL4() ) - fState.GetVerboseL4()->Message("create", "mpi ntuple managers", ""); -#endif - - switch ( fMpiNtupleMergeMode ) - { - case G4MpiNtupleMergeMode::kNone: - fNtupleManager - = new G4RootNtupleManager(fState, 0, fNtupleRowWise, fNtupleRowMode); - fNtupleManager->SetFileManager(fFileManager); - SetNtupleManager(fNtupleManager); - break; - - case G4MpiNtupleMergeMode::kMain: { - fNtupleManager - = new G4RootMpiNtupleManager(fState, fNtupleRowWise, fNtupleRowMode, - impi, mpiSize); - fNtupleManager->SetFileManager(fFileManager); - SetNtupleManager(fNtupleManager); - break; - } - - case G4MpiNtupleMergeMode::kSlave: { - auto destinationRank = mpiSize; - fMpiSlaveNtupleManager - = new G4RootMpiPNtupleManager(fState, impi, mpiRank, destinationRank); - SetNtupleManager(fMpiSlaveNtupleManager); - break; - } - } - -#ifdef G4VERBOSE - if ( fState.GetVerboseL3() ) - fState.GetVerboseL3()->Message("create", "mpi ntuple managers", ""); -#endif -} - -//_____________________________________________________________________________ -void G4RootMpiAnalysisManager::SetMpiNtupleMergingMode( - G4int mpiRank, G4int mpiSize, - G4int nofNtupleFiles) -{ -#ifdef G4VERBOSE - if ( fState.GetVerboseL1() ) - fState.GetVerboseL1() - ->Message("set", "mpi ntuple merging mode", ""); -#endif - - auto canMerge = true; - - // Illegal situations - if ( mpiSize < 2 ) { - G4ExceptionDescription description; - description - << " " << "Merging ntuples is not applicable on a single rank." - << G4endl - << " " << "Setting was ignored."; - G4Exception("G4RootMpiAnalysisManager::SetMpiNtupleMergingMode()", - "Analysis_W013", JustWarning, description); - canMerge = false; - } - - G4String mergingMode; - if ( ! canMerge ) { - fMpiNtupleMergeMode = G4MpiNtupleMergeMode::kNone; - mergingMode = "G4MpiNtupleMergeMode::kNone"; - } - else { - // Set the number of reduced ntuple files - // (multiple output files are not yet supported) - fNofNtupleFiles = nofNtupleFiles; - - // Forced merging mode - // MPI - if ( mpiRank >= mpiSize ) { - // the extra worker - fMpiNtupleMergeMode = G4MpiNtupleMergeMode::kMain; - mergingMode = "G4MpiNtupleMergeMode::kMain"; - } else { - // processing worker - fMpiNtupleMergeMode = G4MpiNtupleMergeMode::kSlave; - mergingMode = "G4MpiNtupleMergeMode::kSlave"; - } - } - -#ifdef G4VERBOSE - if ( fState.GetVerboseL2() ) - fState.GetVerboseL2() - ->Message("set", "ntuple merging mode", mergingMode); -#endif -} - +// public methods +// //_____________________________________________________________________________ void G4RootMpiAnalysisManager::SetMpiNtupleMerging(tools::impi* impi, @@ -156,16 +65,8 @@ void G4RootMpiAnalysisManager::SetMpiNtupleMerging(tools::impi* impi, // << mpiSize << "," // << nofNtupleFiles << G4endl; - // fImpi = impi; - - // Set ntuple merging mode - SetMpiNtupleMergingMode(mpiRank, mpiSize, nofNtupleFiles); - - // Clear existing managers - ClearNtupleManagers(); - - // Re-create managers - CreateMpiNtupleManagers(impi, mpiRank, mpiSize); + std::static_pointer_cast(fNtupleFileManager) + ->SetMpiNtupleMerging(impi, mpiRank, mpiSize, nofNtupleFiles); } // @@ -175,154 +76,80 @@ void G4RootMpiAnalysisManager::SetMpiNtupleMerging(tools::impi* impi, //_____________________________________________________________________________ G4bool G4RootMpiAnalysisManager::OpenFileImpl(const G4String& fileName) { - // No MPI merging, call base class - if ( fMpiNtupleMergeMode == G4MpiNtupleMergeMode::kNone ) { + if ( fNtupleFileManager->GetMergeMode() == G4NtupleMergeMode::kNone ) { return G4RootAnalysisManager::OpenFileImpl(fileName); } + // Create ntuple manager(s) + // and set it to base class which takes then their ownership + if ( ! fVNtupleManager ) { + SetNtupleManager(fNtupleFileManager->CreateNtupleManager()); + } + auto finalResult = true; - auto result = fFileManager->SetFileName(fileName); + + // Open file + // In difference from base class a file is open also on slave ranks + auto result = fFileManager->OpenFile(fileName); finalResult = finalResult && result; - if ( fMpiNtupleMergeMode == G4MpiNtupleMergeMode::kMain ) { - -#ifdef G4VERBOSE - G4String name = fFileManager->GetFullFileName(); - if ( fState.GetVerboseL4() ) - fState.GetVerboseL4()->Message("open", "main ntuple file", name); -#endif - - fFileManager->SetNofNtupleFiles(fNofNtupleFiles); - result = fFileManager->OpenFile(fileName); - finalResult = finalResult && result; - - fNtupleManager->SetNtupleDirectory(fFileManager->GetNtupleDirectory()); - - G4cout << "Main: Go to create ntuples from booking " << G4endl; - fNtupleManager->CreateNtuplesFromBooking(); - -#ifdef G4VERBOSE - if ( fState.GetVerboseL1() ) - fState.GetVerboseL1()->Message("open", "main ntuple file", name, finalResult); -#endif - } - - if ( fMpiNtupleMergeMode == G4MpiNtupleMergeMode::kSlave ) { - -#ifdef G4VERBOSE - G4String name = fFileManager->GetFullFileName(); - if ( fState.GetVerboseL4() ) - fState.GetVerboseL4()->Message("open", "file", name); -#endif - result = fFileManager->OpenFile(fileName); - finalResult = finalResult && result; - - // fNtupleManager->SetNtupleDirectory(fFileManager->GetNtupleDirectory()); - - G4cout << "Slave: Go to create ntuples from booking" << G4endl; - // No file is open by Slave manager - fMpiSlaveNtupleManager->CreateNtuplesFromBooking(); - -#ifdef G4VERBOSE - if ( fState.GetVerboseL1() ) - fState.GetVerboseL1()->Message("open", "file", name, finalResult); -#endif - } + // Open ntuple file(s) and create ntuples from bookings + result = fNtupleFileManager->ActionAtOpenFile(fFileManager->GetFullFileName()); + finalResult = finalResult && result; return finalResult; } +//_____________________________________________________________________________ +G4bool G4RootMpiAnalysisManager::WriteImpl() +{ + + auto finalResult = true; + + // Call base class method + auto result = G4RootAnalysisManager::WriteImpl(); + finalResult = finalResult && result; + + // Write file also on Slave + // (skipped in base class) + if ( fNtupleFileManager->GetMergeMode() == G4NtupleMergeMode::kSlave ) { + // write all open files + result = fFileManager->WriteFiles(); + finalResult = finalResult && result; + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL2() ) { + fState.GetVerboseL2()->Message("write", "slave files", "", finalResult); + } +#endif + + return finalResult; +} //_____________________________________________________________________________ G4bool G4RootMpiAnalysisManager::CloseFileImpl(G4bool reset) { - // No MPI merging, call base class - if ( fMpiNtupleMergeMode == G4MpiNtupleMergeMode::kNone ) { - return G4RootAnalysisManager::CloseFileImpl(reset); - } - auto finalResult = true; - // reset data - if ( reset ) { - auto result = Reset(); - if ( ! result ) { - G4ExceptionDescription description; - description << " " << "Resetting data failed"; - G4Exception("G4RootAnalysisManager::Write()", - "Analysis_W021", JustWarning, description); - } + // Call base class method + auto result = G4RootAnalysisManager::CloseFileImpl(reset); + finalResult = finalResult && result; + + // Close file also on Slave + // (skipped in base class) + if ( fNtupleFileManager->GetMergeMode() == G4NtupleMergeMode::kSlave ) { + // close all open files + result = fFileManager->CloseFiles(); finalResult = finalResult && result; } - // close file - fFileManager->CloseFile(); - - // MT not yet supported - no files clean-up - return finalResult; -} - -//_____________________________________________________________________________ -G4bool G4RootMpiAnalysisManager::WriteNtuple() -{ - // No MPI merging, call base class - if ( fMpiNtupleMergeMode == G4MpiNtupleMergeMode::kNone ) { - return G4RootAnalysisManager::WriteNtuple(); - } - - auto finalResult = true; - - G4String ntupleType; - if ( fMpiNtupleMergeMode == G4MpiNtupleMergeMode::kMain ) ntupleType = "main ntuples"; - if ( fMpiNtupleMergeMode == G4MpiNtupleMergeMode::kSlave ) ntupleType = "slave ntuples"; - -#ifdef G4VERBOSE - if ( fState.GetVerboseL4() ) - fState.GetVerboseL4()->Message("merge", ntupleType, ""); -#endif - - if ( fMpiNtupleMergeMode == G4MpiNtupleMergeMode::kMain ) { - auto result = fNtupleManager->Merge(); - finalResult = result && finalResult; - } - - if ( fMpiNtupleMergeMode == G4MpiNtupleMergeMode::kSlave ) { - auto result = fMpiSlaveNtupleManager->Merge(); - finalResult = result && finalResult; - } - #ifdef G4VERBOSE - if ( fState.GetVerboseL1() ) - fState.GetVerboseL1()->Message("merge", ntupleType, ""); + if ( fState.GetVerboseL2() ) { + fState.GetVerboseL2()->Message("close", "slave files", "", finalResult); + } #endif return finalResult; -} - -//_____________________________________________________________________________ -G4bool G4RootMpiAnalysisManager::Reset() -{ -// Reset histograms and ntuple - - // No MPI merging, call base class - if ( fMpiNtupleMergeMode == G4MpiNtupleMergeMode::kNone ) { - return G4RootAnalysisManager::Reset(); - } - - auto finalResult = true; - - auto result = G4ToolsAnalysisManager::Reset(); - finalResult = finalResult && result; - - if ( fMpiNtupleMergeMode == G4MpiNtupleMergeMode::kMain ) { - result = fNtupleManager->Reset(false); - finalResult = result && finalResult; - } - - if ( fMpiNtupleMergeMode == G4MpiNtupleMergeMode::kSlave ) { - result = fMpiSlaveNtupleManager->Reset(false); - finalResult = result && finalResult; - } - - return finalResult; + } diff --git a/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiNtupleFileManager.cc b/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiNtupleFileManager.cc new file mode 100644 index 0000000000..2deebe1157 --- /dev/null +++ b/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiNtupleFileManager.cc @@ -0,0 +1,339 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +// Author: Ivana Hrivnacova, 21/11/2018 (ivana@ipno.in2p3.fr) + +#include "G4RootMpiNtupleFileManager.hh" +#include "G4RootMpiNtupleManager.hh" +#include "G4RootMpiPNtupleManager.hh" + +#include + +using std::make_shared; + +//_____________________________________________________________________________ +G4RootMpiNtupleFileManager::G4RootMpiNtupleFileManager(const G4AnalysisManagerState& state) + : G4RootNtupleFileManager(state), + fImpi(nullptr), + fMpiRank(-1), + fMpiSize(0), + fMpiSlaveNtupleManager(nullptr), + fNtupleBooked(false) +{} + +//_____________________________________________________________________________ +G4RootMpiNtupleFileManager::~G4RootMpiNtupleFileManager() +{} + +// +// private methods +// + +//_____________________________________________________________________________ +void G4RootMpiNtupleFileManager::SetMpiNtupleMergingMode( + G4int nofNtupleFiles) +{ +#ifdef G4VERBOSE + if ( fState.GetVerboseL2() ) { + fState.GetVerboseL2()->Message("set", "mpi ntuple merging mode", ""); + } +#endif + + auto canMerge = true; + + // Illegal situations + if ( fMpiSize < 2 ) { + G4ExceptionDescription description; + description + << "Merging ntuples is not applicable on a single rank." << G4endl + << "Setting was ignored."; + G4Exception("G4RootMpiNtupleFileManager::SetMpiNtupleMergingMode()", + "Analysis_W013", JustWarning, description); + canMerge = false; + } + + G4String mergingMode; + if ( ! canMerge ) { + fNtupleMergeMode = G4NtupleMergeMode::kNone; + mergingMode = "G4NtupleMergeMode::kNone"; + } + else { + // Set the number of reduced ntuple files + // (multiple output files are not yet supported) + fNofNtupleFiles = nofNtupleFiles; + + // Forced merging mode + // MPI + if ( fMpiRank >= fMpiSize ) { + // the extra worker + fNtupleMergeMode = G4NtupleMergeMode::kMain; + mergingMode = "G4NtupleMergeMode::kMain"; + } else { + // processing worker + fNtupleMergeMode = G4NtupleMergeMode::kSlave; + mergingMode = "G4NtupleMergeMode::kSlave"; + } + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL1() ) { + fState.GetVerboseL1()->Message("set", "ntuple merging mode", mergingMode); + } +#endif +} + + +// +// public methods +// + +//_____________________________________________________________________________ +void G4RootMpiNtupleFileManager::SetMpiNtupleMerging(tools::impi* impi, + G4int mpiRank, G4int mpiSize, + G4int nofNtupleFiles) +{ + if ( fIsInitialized ) { + G4ExceptionDescription description; + description + << "Cannot change merging mode." << G4endl + << "The function must be called before OpenFile()."; + G4Exception("G4RootMpiNtupleFileManager::SetMpiNtupleMerging", + "Analysis_W013", JustWarning, description); + return; + } + + // Save MPI merging parameters + fImpi = impi; + fMpiRank = mpiRank; + fMpiSize = mpiSize; + + // Set ntuple merging mode + SetMpiNtupleMergingMode(nofNtupleFiles); +} + +//_____________________________________________________________________________ +std::shared_ptr G4RootMpiNtupleFileManager::CreateNtupleManager() +{ +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("create", "mpi ntuple managers", ""); + } +#endif + + std::shared_ptr activeNtupleManager = nullptr; + switch ( fNtupleMergeMode ) + { + case G4NtupleMergeMode::kNone: + fNtupleManager + = make_shared(fState, fBookingManager, + 0, 0, fNtupleRowWise, fNtupleRowMode); + fNtupleManager->SetFileManager(fFileManager); + activeNtupleManager = fNtupleManager; + break; + + case G4NtupleMergeMode::kMain: { + fNtupleManager + = make_shared(fState, fBookingManager, + fNtupleRowWise, fNtupleRowMode, fImpi, fMpiSize); + fNtupleManager->SetFileManager(fFileManager); + activeNtupleManager = fNtupleManager; + break; + } + + case G4NtupleMergeMode::kSlave: { + auto destinationRank = fMpiSize; + fMpiSlaveNtupleManager + = make_shared(fState, fImpi, fMpiRank, destinationRank); + activeNtupleManager = fMpiSlaveNtupleManager; + break; + } + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL3() ) { + G4String mergeMode; + switch ( fNtupleMergeMode ) { + case G4NtupleMergeMode::kNone: + mergeMode = ""; + break; + case G4NtupleMergeMode::kMain: + mergeMode = "main "; + break; + case G4NtupleMergeMode::kSlave: + mergeMode = "slave "; + break; + } + fState.GetVerboseL3()->Message("create", mergeMode + "mpi ntuple managers", ""); + } +#endif + + fIsInitialized = true; + + return activeNtupleManager; +} + +//_____________________________________________________________________________ +G4bool G4RootMpiNtupleFileManager::ActionAtOpenFile(const G4String& fileName) +{ + auto finalResult = true; + + // No MPI merging, call base class + if ( fNtupleMergeMode == G4NtupleMergeMode::kNone ) { + return G4RootNtupleFileManager::ActionAtOpenFile(fileName); + } + + if ( ! fNtupleBooked ) { + +#ifdef G4VERBOSE + G4String objectType = "analysis file"; + if ( fNtupleMergeMode == G4NtupleMergeMode::kMain ) { + objectType = "main analysis file"; + } + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("open", objectType, fileName); + } +#endif + + if ( fNtupleMergeMode == G4NtupleMergeMode::kMain ) { + // Creating files is triggered from CreateNtuple + fNtupleManager->CreateNtuplesFromBooking( + fBookingManager->GetNtupleBookingVector()); + } + + if ( fNtupleMergeMode == G4NtupleMergeMode::kSlave ) { + // G4cout << "Slave: Go to create ntuples from booking" << G4endl; + // No file is open by Slave manager + fMpiSlaveNtupleManager->CreateNtuplesFromBooking( + fBookingManager->GetNtupleBookingVector()); + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL1() ) { + fState.GetVerboseL1()->Message("open", objectType, fileName, finalResult); + } +#endif + + fNtupleBooked = true; + } + + return finalResult; +} + +//_____________________________________________________________________________ +G4bool G4RootMpiNtupleFileManager::ActionAtWrite() +{ + // No MPI merging, call base class + if ( fNtupleMergeMode == G4NtupleMergeMode::kNone ) { + return G4RootNtupleFileManager::ActionAtWrite(); + } + + auto finalResult = true; + + G4String ntupleType; + if ( fNtupleMergeMode == G4NtupleMergeMode::kMain ) ntupleType = "main ntuples"; + if ( fNtupleMergeMode == G4NtupleMergeMode::kSlave ) ntupleType = "slave ntuples"; + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("merge", ntupleType, ""); + } +#endif + + if ( fNtupleMergeMode == G4NtupleMergeMode::kMain ) { + auto result = fNtupleManager->Merge(); + finalResult = result && finalResult; + } + + if ( fNtupleMergeMode == G4NtupleMergeMode::kSlave ) { + auto result = fMpiSlaveNtupleManager->Merge(); + finalResult = result && finalResult; + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL1() ) { + fState.GetVerboseL1()->Message("merge", ntupleType, ""); + } +#endif + + return finalResult; +} + +//_____________________________________________________________________________ +G4bool G4RootMpiNtupleFileManager::ActionAtCloseFile(G4bool reset) +{ + // No MPI merging, call base class + if ( fNtupleMergeMode == G4NtupleMergeMode::kNone ) { + return G4RootNtupleFileManager::ActionAtCloseFile(reset); + } + + auto finalResult = true; + + // reset data + if ( reset ) { + auto result = Reset(); + if ( ! result ) { + G4ExceptionDescription description; + description << " " << "Resetting data failed"; + G4Exception("G4RootNtupleFileManager::Write()", + "Analysis_W021", JustWarning, description); + } + finalResult = finalResult && result; + } + + // close files + if ( fNtupleMergeMode != G4NtupleMergeMode::kSlave ) { + auto result = CloseNtupleFiles(); + finalResult = finalResult && result; + } + + // MT not yet supported - no files clean-up + return finalResult; +} + +//_____________________________________________________________________________ +G4bool G4RootMpiNtupleFileManager::Reset() +{ +// Reset ntuples + + // No MPI merging, call base class + if ( fNtupleMergeMode == G4NtupleMergeMode::kNone ) { + return G4RootNtupleFileManager::Reset(); + } + + auto finalResult = true; + + if ( fNtupleMergeMode == G4NtupleMergeMode::kMain ) { + auto result = fNtupleManager->Reset(false); + finalResult = result && finalResult; + } + + if ( fNtupleMergeMode == G4NtupleMergeMode::kSlave ) { + auto result = fMpiSlaveNtupleManager->Reset(false); + finalResult = result && finalResult; + } + + return finalResult; +} diff --git a/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiNtupleManager.cc b/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiNtupleManager.cc index 37ff556f8a..dcdc7e2ed6 100644 --- a/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiNtupleManager.cc +++ b/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiNtupleManager.cc @@ -44,9 +44,10 @@ const int kTAG_NTUPLE = 1004; // This constant is defined in G4MPImanager //_____________________________________________________________________________ G4RootMpiNtupleManager::G4RootMpiNtupleManager( const G4AnalysisManagerState& state, + std::shared_ptr bookingManager, G4bool rowWise, G4bool rowMode, tools::impi* impi, G4int mpiSize) - : G4RootNtupleManager(state, 0, rowWise, rowMode), + : G4RootNtupleManager(state, bookingManager, 0, 0, rowWise, rowMode), fImpi(impi), fSlaveRanks(), fMainRank(0) @@ -65,13 +66,17 @@ G4RootMpiNtupleManager::~G4RootMpiNtupleManager() // private methods // - //_____________________________________________________________________________ -G4bool G4RootMpiNtupleManager::Send(G4int id, tools::wroot::ntuple* ntuple) +G4bool G4RootMpiNtupleManager::Send(G4int id, RootNtupleDescription* ntupleDescription) { // Pack and send the main ntuple data to the slave ranks // G4cout << "Going to send main ntuple data " << G4endl; + // G4cout << "ntupleDescription: " << ntupleDescription << G4endl; + // G4cout << "ntuple: " << ntupleDescription->fNtuple << G4endl; + + // Get ntuple + auto ntuple = ntupleDescription->fNtuple; // Get basket sizes std::vector mainBranches; @@ -81,12 +86,14 @@ G4bool G4RootMpiNtupleManager::Send(G4int id, tools::wroot::ntuple* ntuple) basketSizes.push_back((*it)->basket_size()); } - auto ntupleFile = fFileManager->GetNtupleFile(id); + auto g4RootFile = fFileManager->CreateNtupleFile(ntupleDescription); + auto ntupleFile = std::get<0>(*g4RootFile); + tools::uint32 basketSize = fFileManager->GetBasketSize(); unsigned int basketEntries = fFileManager->GetBasketEntries(); for ( auto slaveRank : fSlaveRanks ) { - G4cout << "Going to send main ntuple data to slave rank " << slaveRank << G4endl; + // G4cout << "Going to send main ntuple data to slave rank " << slaveRank << G4endl; fImpi->pack_reset(); if ( ! fImpi->pack(id)) { @@ -161,7 +168,7 @@ G4bool G4RootMpiNtupleManager::InitializeRanks() // Do not create ntuple if it is inactivated if ( fState.GetIsActivation() && ( ! ntupleDescription->fActivation ) ) continue; - auto result = Send(counter++, ntupleDescription->fNtuple); + auto result = Send(counter++, ntupleDescription); finalResult = finalResult && result; } @@ -292,11 +299,14 @@ G4bool G4RootMpiNtupleManager::WaitBuffer() // //_____________________________________________________________________________ -void G4RootMpiNtupleManager::CreateNtuplesFromBooking() +void G4RootMpiNtupleManager::CreateNtuplesFromBooking( + const std::vector& ntupleBookings) { - // Base class actions - // G4cout << "Going to call CreateNtuplesFromBooking from base class" << G4endl; - G4TNtupleManager::CreateNtuplesFromBooking(); + // G4cout << "G4RootMpiNtupleManager::CreateNtuplesFromBooking()" << G4endl; + + // Call base class method + G4TNtupleManager::CreateNtuplesFromBooking( + ntupleBookings); // Initialize ranks if ( ! InitializeRanks() ) { @@ -306,13 +316,13 @@ void G4RootMpiNtupleManager::CreateNtuplesFromBooking() // Go to wait buffer mode if ( ! WaitBuffer() ) { G4cerr << "WaitBuffer failed." << G4endl; - } + } } //_____________________________________________________________________________ G4bool G4RootMpiNtupleManager::Merge() { - G4cout << "G4RootMpiNtupleManager::Merge()" << G4endl; + // G4cout << "G4RootMpiNtupleManager::Merge()" << G4endl; auto finalResult = true; diff --git a/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiPNtupleManager.cc b/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiPNtupleManager.cc index 7abb0aac42..41e276457b 100644 --- a/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiPNtupleManager.cc +++ b/examples/extended/parallel/MPI/source/analysis/src/G4RootMpiPNtupleManager.cc @@ -37,6 +37,20 @@ const int kTAG_NTUPLE = 1004; // This constant is defined in G4MPImanager // (should be passed from the application) +namespace { + +//_____________________________________________________________________________ +void NotExistException(const G4String& what, G4int id, const G4String& functionName) +{ + G4String inFunction = "G4RootMpiPNtupleManager::"; + inFunction += functionName; + G4ExceptionDescription description; + description << what << " id= " << id << " does not exist."; + G4Exception(inFunction, "Analysis_W011", JustWarning, description); +} + +} + //_____________________________________________________________________________ G4RootMpiPNtupleManager::G4RootMpiPNtupleManager( const G4AnalysisManagerState& state, @@ -69,11 +83,7 @@ G4RootMpiPNtupleManager::GetNtupleDescriptionInFunction( auto index = id - fFirstId; if ( index < 0 || index >= G4int(fNtupleDescriptionVector.size()) ) { if ( warn) { - G4String inFunction = "G4RootMpiPNtupleManager::"; - inFunction += functionName; - G4ExceptionDescription description; - description << " " << "ntuple " << id << " does not exist."; - G4Exception(inFunction, "Analysis_W011", JustWarning, description); + NotExistException("ntuple description", id, functionName); } return nullptr; } @@ -90,11 +100,7 @@ tools::wroot::base_pntuple* G4RootMpiPNtupleManager::GetNtupleInFunction( if ( ! ntupleDescription->fBasePNtuple ) { if ( warn ) { - G4String inFunction = "G4RootMpiPNtupleManager::"; - inFunction += functionName; - G4ExceptionDescription description; - description << " " << "ntupleId " << id << " does not exist."; - G4Exception(inFunction, "Analysis_W011", JustWarning, description); + NotExistException("ntuple", id, functionName); } return nullptr; } @@ -109,9 +115,11 @@ tools::wroot::base_pntuple* G4RootMpiPNtupleManager::GetNtupleInFunction( void G4RootMpiPNtupleManager::CreateNtuple(G4RootMpiPNtupleDescription* ntupleDescription) { #ifdef G4VERBOSE - if ( fState.GetVerboseL4() ) + if ( fState.GetVerboseL4() ) { fState.GetVerboseL4() - ->Message("create from booking", "mpi pntuple", ntupleDescription->fNtupleBooking.name()); + ->Message("create from booking", "mpi pntuple", + ntupleDescription->fDescription.fNtupleBooking.name()); + } #endif // Wait for the ntuple data from main @@ -202,34 +210,37 @@ void G4RootMpiPNtupleManager::CreateNtuple(G4RootMpiPNtupleDescription* ntupleDe tools::wroot::mpi_ntuple_row_wise* ntuple = new tools::wroot::mpi_ntuple_row_wise( mainNtupleId, G4cout, byteSwap, compression, seekDirectory, - basketSize, ntupleDescription->fNtupleBooking, verbose); + basketSize, ntupleDescription->fDescription.fNtupleBooking, verbose); ntupleDescription->fNtuple = ntuple; ntupleDescription->fBasePNtuple = ntuple; } else { tools::wroot::mpi_ntuple_column_wise* ntuple = new tools::wroot::mpi_ntuple_column_wise( mainNtupleId, G4cout, byteSwap, compression, seekDirectory, - basketSizes, ntupleDescription->fNtupleBooking, + basketSizes, ntupleDescription->fDescription.fNtupleBooking, rowMode, basketEntries, verbose); ntupleDescription->fNtuple = ntuple; ntupleDescription->fBasePNtuple = ntuple; } - ntupleDescription->fIsNtupleOwner = true; + ntupleDescription->fDescription.fIsNtupleOwner = true; ntupleDescription->fImpi = fImpi; // should be not needed // pntuple object is not deleted automatically fNtupleVector.push_back(ntupleDescription->fNtuple); #ifdef G4VERBOSE - if ( fState.GetVerboseL3() ) + if ( fState.GetVerboseL3() ) { fState.GetVerboseL3() - ->Message("create from booking", "mpi pntuple", ntupleDescription->fNtupleBooking.name()); + ->Message("create from booking", "mpi pntuple", + ntupleDescription->fDescription.fNtupleBooking.name()); + } #endif } //_____________________________________________________________________________ -void G4RootMpiPNtupleManager::CreateNtuplesFromBooking() +void G4RootMpiPNtupleManager::CreateNtuplesFromBooking( + const std::vector& ntupleBookings) { // Create ntuple from ntuple_booking & the buffer from main rank @@ -238,19 +249,29 @@ void G4RootMpiPNtupleManager::CreateNtuplesFromBooking() // Do not create ntuples if NtupleVector is not empty if ( fNtupleVector.size() ) return; + // Create pntuple descriptions from ntuple booking. + // auto g4NtupleBookings = fBookingManager->GetNtupleBookingVector(); + for ( auto g4NtupleBooking : ntupleBookings ) { + auto ntupleDescription = new G4RootMpiPNtupleDescription(g4NtupleBooking); + ntupleDescription->fMainNtupleRank = fDestinationRank; + fNtupleDescriptionVector.push_back(ntupleDescription); + } + + // Create mpi ntuples for ( auto ntupleDescription : fNtupleDescriptionVector ) { // Do not create ntuple if it is inactivated - if ( fState.GetIsActivation() && ( ! ntupleDescription->fActivation ) ) continue; + if ( fState.GetIsActivation() && ( ! ntupleDescription->fDescription.fActivation ) ) continue; // Do not create ntuple if it already exists if ( ntupleDescription->fNtuple ) continue; #ifdef G4VERBOSE - if ( fState.GetVerboseL4() ) + if ( fState.GetVerboseL4() ) { fState.GetVerboseL4() ->Message("create from booking", "mpi pntuple", - ntupleDescription->fNtupleBooking.name()); + ntupleDescription->fDescription.fNtupleBooking.name()); + } #endif // create ntuple @@ -261,82 +282,26 @@ void G4RootMpiPNtupleManager::CreateNtuplesFromBooking() // FinishTNtuple(ntupleDescription); #ifdef G4VERBOSE - if ( fState.GetVerboseL3() ) + if ( fState.GetVerboseL3() ) { fState.GetVerboseL3() ->Message("create from booking", "mpi pntuple", - ntupleDescription->fNtupleBooking.name()); + ntupleDescription->fDescription.fNtupleBooking.name()); + } #endif } } //_____________________________________________________________________________ -G4int G4RootMpiPNtupleManager::CreateNtuple( - const G4String& name, const G4String& title) +G4int G4RootMpiPNtupleManager::CreateNtuple(G4NtupleBooking* /*booking*/) + // const G4String& name, const G4String& title) { -// Create pntuple description with ntuple_booking +// Create pntuple description from g4 ntuple booking +// Nothing to be done here. -#ifdef G4VERBOSE - if ( fState.GetVerboseL4() ) - fState.GetVerboseL4()->Message("create", "pntuple booking", name); -#endif - - // Create ntuple description - auto index = fNtupleDescriptionVector.size(); - auto ntupleDescription = new G4RootMpiPNtupleDescription(); - ntupleDescription->fMainNtupleRank = fDestinationRank; - // make this flexible - fNtupleDescriptionVector.push_back(ntupleDescription); - - // Save name & title in ntuple booking - ntupleDescription->fNtupleBooking.set_name(name); - ntupleDescription->fNtupleBooking.set_title(title); - - fLockFirstId = true; - -#ifdef G4VERBOSE - if ( fState.GetVerboseL2() ) { - G4ExceptionDescription description; - description << name << " ntupleId " << index + fFirstId; - fState.GetVerboseL2()->Message("create", "pntuple booking", description); - } -#endif - - return index + fFirstId; + return G4Analysis::kInvalidId; } -//_____________________________________________________________________________ -G4int G4RootMpiPNtupleManager::CreateNtupleIColumn( - G4int ntupleId, const G4String& name, std::vector* vector) -{ - return CreateNtupleTColumn(ntupleId, name, vector); -} - -//_____________________________________________________________________________ -G4int G4RootMpiPNtupleManager::CreateNtupleFColumn( - G4int ntupleId, const G4String& name, std::vector* vector) -{ - return CreateNtupleTColumn(ntupleId, name, vector); -} - -//_____________________________________________________________________________ -G4int G4RootMpiPNtupleManager::CreateNtupleDColumn( - G4int ntupleId, const G4String& name, std::vector* vector) -{ - return CreateNtupleTColumn(ntupleId, name, vector); -} - -//_____________________________________________________________________________ -G4int G4RootMpiPNtupleManager::CreateNtupleSColumn( - G4int ntupleId, const G4String& name) -{ - return CreateNtupleTColumn(ntupleId, name, nullptr); -} - -//_____________________________________________________________________________ -void G4RootMpiPNtupleManager::FinishNtuple(G4int /*ntupleId*/) -{} - //_____________________________________________________________________________ G4bool G4RootMpiPNtupleManager::FillNtupleIColumn( G4int ntupleId, G4int columnId, G4int value) @@ -419,7 +384,7 @@ G4bool G4RootMpiPNtupleManager::Merge() for ( auto ntupleDescription : fNtupleDescriptionVector) { // skip inactivated ntuples - if ( ! ntupleDescription->fActivation ) continue; + if ( ! ntupleDescription->fDescription.fActivation ) continue; // skip if ntuple was already merged and deleted // (this happend when the main rank re-opens a new file for merged data) @@ -428,21 +393,20 @@ G4bool G4RootMpiPNtupleManager::Merge() #ifdef G4VERBOSE if ( fState.GetVerboseL4() ) { fState.GetVerboseL4() - ->Message("end_fill", "pntuple", ntupleDescription->fNtupleBooking.name()); + ->Message("end_fill", "pntuple", ntupleDescription->fDescription.fNtupleBooking.name()); } #endif - // if(!_ntuple->end_fill(_impi,rank_src,tag)) {} //important. - G4cout << "call end_fill " << fImpi - << " to rank " << ntupleDescription->fMainNtupleRank - << " pntuple: " << ntupleDescription->fNtuple << G4endl; + // G4cout << "call end_fill " << fImpi + // << " to rank " << ntupleDescription->fMainNtupleRank + // << " pntuple: " << ntupleDescription->fNtuple << G4endl; auto result = ntupleDescription->fNtuple ->end_fill(*fImpi, ntupleDescription->fMainNtupleRank, kTAG_NTUPLE); if ( ! result ) { G4ExceptionDescription description; - description << " " << " ntuple " << ntupleDescription->fNtupleBooking.name() + description << " " << " ntuple " << ntupleDescription->fDescription.fNtupleBooking.name() << "end fill has failed."; G4Exception("G4RootMpiPNtupleManager::Merge()", "Analysis_W002", JustWarning, description); @@ -454,7 +418,7 @@ G4bool G4RootMpiPNtupleManager::Merge() #ifdef G4VERBOSE if ( fState.GetVerboseL3() ) { fState.GetVerboseL3() - ->Message("end_fill", "pntuple", ntupleDescription->fNtupleBooking.name()); + ->Message("end_fill", "pntuple", ntupleDescription->fDescription.fNtupleBooking.name()); } #endif } @@ -483,7 +447,7 @@ void G4RootMpiPNtupleManager::SetActivation( G4bool activation) { for ( auto ntupleDescription : fNtupleDescriptionVector ) { - ntupleDescription->fActivation = activation; + ntupleDescription->fDescription.fActivation = activation; } } @@ -495,7 +459,7 @@ void G4RootMpiPNtupleManager::SetActivation( auto ntupleDescription = GetNtupleDescriptionInFunction(ntupleId, "SetActivation"); if ( ! ntupleDescription ) return; - ntupleDescription->fActivation = activation; + ntupleDescription->fDescription.fActivation = activation; } //_____________________________________________________________________________ @@ -505,7 +469,7 @@ G4bool G4RootMpiPNtupleManager::GetActivation( auto ntupleDescription = GetNtupleDescriptionInFunction(ntupleId, "GetActivation"); if ( ! ntupleDescription ) return false; - return ntupleDescription->fActivation; + return ntupleDescription->fDescription.fActivation; } //_____________________________________________________________________________ @@ -513,29 +477,3 @@ G4int G4RootMpiPNtupleManager::GetNofNtuples() const { return fNtupleVector.size(); } - -//_____________________________________________________________________________ -G4int G4RootMpiPNtupleManager::GetNofNtupleBookings() const -{ - return fNtupleDescriptionVector.size(); -} - -//_____________________________________________________________________________ -G4bool G4RootMpiPNtupleManager::IsEmpty() const -{ - return ! fNtupleDescriptionVector.size(); -} - -//_____________________________________________________________________________ -unsigned int G4RootMpiPNtupleManager::GetBasketSize() const -{ - if ( ! fFileManager ) { - G4String inFunction = "G4RootMpiPNtupleManager::::GetBasketSize"; - G4ExceptionDescription description; - description << " " << "File manager must be defined first."; - G4Exception(inFunction, "Analysis_W011", JustWarning, description); - return 0; - } - - return fFileManager->GetBasketSize(); -} diff --git a/examples/extended/parallel/TBB/B2b/CMakeLists.txt b/examples/extended/parallel/TBB/B2b/CMakeLists.txt index 199173a4c9..d85eaa98a7 100644 --- a/examples/extended/parallel/TBB/B2b/CMakeLists.txt +++ b/examples/extended/parallel/TBB/B2b/CMakeLists.txt @@ -2,7 +2,10 @@ #---------------------------------------------------------------------------- # Setup the project # -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(B2bTBB) #---------------------------------------------------------------------------- diff --git a/examples/extended/parallel/TBB/B2b/DevelopmentStatus.txt b/examples/extended/parallel/TBB/B2b/DevelopmentStatus.txt deleted file mode 100644 index 0b8e20b853..0000000000 --- a/examples/extended/parallel/TBB/B2b/DevelopmentStatus.txt +++ /dev/null @@ -1,110 +0,0 @@ -.... Not yet finished ..... - -Status at Nov. 6th: -- Needs tag run-V09-06-115, for virtual keyword dded to barriers and new methods in base classes: - G4WorkerRunManager::MergePartialResults() re-factor reduction of local resutls into global - GMTRunManager::CreateAndStartWorkers() re-factor calls to create a worker threads. -- Tag is not yet in SVN, need some testing of the the above changes. -- With the above changes we reduce a lot the code differences in tbb examples -- Missing: reductions of run and scorers -- First macro tbb.mac created - -======== -Issues to be worked on that differentiate TBB from MT: -- SOLVED w/ run-V09-06-115: Barrier mechanism and synchornization of threads has no sense in TBB -- "Output" (run and scorer) cannot be anymore "thread-private". tbb::task should register (or reuse in - future version) output "containers" for master to use -- /run/beamOn command will create the list of tasks, but how to start them? From main? -- How to make more than one run? Maybe a new command /tbb/beamOn ??? -- One RM per thread. In TBB master thread is "reused" and so crash because more than one RM is created on same thread. - Poor man solution: start work on a separate thread (e.g. explicit invokation of G4THREADCREATE for - tbb::task::spawn_root_and_wait - -======== -Bugs: -- Strangely it seems that two runs are exec, it appeared "Run 1 start" at the end of the job with no events processed -- No delete of objects... - -========== -General design: - -The experience of N02tbb of propototype showed that better design was needed with MT kernel classes. -The 10.beta design of relevant MT classes took into account this experience. The final goal is to have -only few classes that implement the TBB specific parallel execution model. These classes should be -independentent of both G4 kernel and of the specific example. - -========== -Details: - -I think We need only four TBB specific classes: -tbbTask (implements tbb::task) - : it's function is basically to replicate G4MTRunManagerKernel::StartThread, adding check if thread is - already intialized. Some issues are still present. See comments in text - -tbbWorkerRunManager (implements G4WorkerRunManager) - : worker model, re-implements base class methods in order to: - - disable barrier mechanism - - different way of proceeding for RunTermination since there is no guarantee this is executed in thread - where it was started -tbbMasterRunManager (implements G4MTRunManager) - : master model, re-implements base class methods in order to: - - disable barrier mechanism - - instead of starting threads as in MT, created tbbTask objects, configure them (if needed) and creates - a tbb list of tasks - - Need to understnad how to reduce output from tasks -tbbUserWorkerInitialization (implements G4USerWorkerInitialization) - : used by tbbMaster it has the only responsibility to "new" a tbbWorkerRunManager - (the idea being to decouple master and worker, as in MT, so a user can re-implement only one of the two) - -=========== -Even more details: - -List of virtual methods (and motivation) that are needed to implement for TBB: - -tbbMasterRunManager::CreateAndStartWorkers => Create tbb::task instead of pthread. Actual creation of tasks is in ::CreateTask, - this method only calculates number of tasks. -tbbMasterRunManager::TerminateWorkers => Empty in TBB instead of joining pthreads -tbbMasterRunManager::All barriers => are empty in TBB. - -tbbWorkerRunManager::ConstructScoringWolds => is protected in base class, but in tbb is called by tbb::execute, implement proxy here -tbbWorkerRunManager::MergePartialResults => in MT it's done by worker thread at the end of job, "pushing" to master. Needs to implement - the opposite in TBB - -tbbUserWorkerInitialization::CrateWorkerRunManager => Needs to instantiate tbbWorkerRunManager - -tbbTask::execute() => TBB specific method, MT "equivalent" is G4MTRunManagerKernel::StarThread, with the difference that - the same thread can execute more than one events and thus must re-use the "thread" private variables. - For the first example we assume all threads are used for simulation (e.g. no re-use of workspace). - If we get the design right, it will be enough to change this method to re-use workspaces (CMS requirement) - -============ -Some comments/notes: - -1- We could change MT kernel design to make barriers optional, no need to re-implmente tbbWorkerRunManager::RunInitialization -2- tbb::task starts and it can be in a never used thread. In such a case setups the environment. In particular a G4Run object - is created (and scorers). We need to register these objects somewhere so the master can get them at the end and perform - reduction. Note these object cannot contain TLS variables because they will be reduced in a different thread (the master). - Anyway should be noted that since G4Run and scorers are thread private they should NEVER contain TLS variables. If they do - to me is a design flow. -3- How to "delete" stuff that is created in tbb::task? The problem is that in MT StarThread has scope of life-time of thread - so just before returning we can cleanup. tbb::task::execute has not such a concept. - Can we add a "callback" to threads that are executed at exit? (a thread "atexit" function?). Maybe could be useful. - Otherwise we need the master to clean up everything. In MT master has a list of worker run managers, but "delete" is done - in threads to correctly clean up "TLS" stuff. - Alternatively G4AutoDelete can help on that. -4- List of minor things: vector or workers and mutex to manipulate it are private data members in MT ; ConstructScoringWorld - is protected; G4UserWorkerThreadInitialization contains explicitly the word "Thread" , not a big deal but it gives the - wrong impression -5- If in G4MTRunManager we refactor the lines that start threads in a new virtual method in TBB we could re-implement only this - provided that barriers can be disabled - -============ -Current Status (Nov. 1, 2013): - -CMakeLists.txt : prepared, application compiles if TBB is installed in the system -tbbTask : prototype done -tbbWorkerRunManager : prototype done -tbbUserWorkerInitialization : prototype done -tbbMasterRunManager : prototype done - -See "TBB" string in comments in code. diff --git a/examples/extended/parallel/TBB/CMakeLists.txt b/examples/extended/parallel/TBB/CMakeLists.txt index e2ea677c92..18ea13e3dd 100644 --- a/examples/extended/parallel/TBB/CMakeLists.txt +++ b/examples/extended/parallel/TBB/CMakeLists.txt @@ -1,7 +1,10 @@ #---Adding examples subdirectories explicitly # and a custom target to for building all basic examples ------------- -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() if(GEANT4_BUILD_MULTITHREADED) add_subdirectory(B2b) diff --git a/examples/extended/parallel/ThreadsafeScorers/.README.txt b/examples/extended/parallel/ThreadsafeScorers/.README.txt index 08ddab8a7d..9ea7f5f43a 100644 --- a/examples/extended/parallel/ThreadsafeScorers/.README.txt +++ b/examples/extended/parallel/ThreadsafeScorers/.README.txt @@ -5,7 +5,7 @@ /*! \page ExampleThreadsafeScorers Example ThreadsafeScorers This example demonstrates a very simple application where an energy - deposit and # of steps is accounted in thread-local (i.e. one instance per + deposit and # of steps is accounted in thread-local (i.e. one instance per thread) hits maps with underlying types of plain-old data (POD) and global (i.e. one instance) hits maps with underlying types of atomics. The example uses a coarse mesh, extensive physics, and step limiters @@ -14,16 +14,16 @@ classes and maximize the compounding of thread-local round-off error. At the end of the simulation, the scorers are printed to - "mfd__.out", where DATA_TYPE is either + "mfd__.out", where DATA_TYPE is either "tl" (thread-local) or "tg" (thread-global) and SCORER_TYPE is "EnergyDeposit" or "NumberOfSteps". These values are then compared to a thread-global sum of these scorers that were updated via mutex locking. If round-off errors in thread-local EnergyDeposit are present, they can be viewed in "mfd_diff.out" at the end of the simulation - This example also provides a demonstration of the TiMemory (timing and - memory analysis) package provided in Geant4 -- for documentation of TiMemory - see https://github.com/jrmadsen/TiMemory. + This example also provides a demonstration of the timemory (a performance + instrumentation toolkit) package provided in Geant4 -- for documentation of timemory + see https://github.com/NERSC/timemory and https://timemory.readthedocs.io. \section ThreadsafeScorers_s1 ATOMICS and the ATOMIC SCORERS @@ -36,37 +36,37 @@ in atomic.hh has limited copy-construction and still cannot be used in STL containers. Use these copy-constructors with extreme caution. See opening comments of G4atomic.hh for more details. - + The newly provided classes in this example (G4atomic, G4TAtomicHitsMap, and - G4TAtomicHitsCollection) are intended for applications where memory is a + G4TAtomicHitsCollection) are intended for applications where memory is a greater concern than performance. While atomics generally perform better than mutex locking, the synchronization is not without a cost. However, since the memory consumed by thread-local hits maps scales roughly linearly with the number of threads, simulations with a large number of scoring - volumes can decrease simulation time by increasing the number of threads + volumes can decrease simulation time by increasing the number of threads beyond what was previously allowed due to the increase in memory consumption. *************************************************************************** *** These classes are intended to be included in the Geant4 source code *** *** release next year *** *************************************************************************** - + The G4TAtomicHitsMap and G4TAtomicHitsCollection work exactly the same way as the standard G4THitsMap and G4THitsCollection, respectively, with the - exception(s) that you should only implement one instance and provide a + exception(s) that you should only implement one instance and provide a pointer/reference of that instance to the threads instead of having the threads create them. Additionally, there is no need to include them in the G4Run::Merge(). - + \section ThreadsafeScorers_s2 GEOMETRY DEFINITION - + The geometry is constructed in the TSDetectorConstruction class. The setup consists of a box filling the world. The volume is divided into subregions, where the outermost boxes are a different material. The materials - by default are water and boron as these have large scattering cross-sections - for neutrons (the default particle). - + by default are water and boron as these have large scattering cross-sections + for neutrons (the default particle). + \section ThreadsafeScorers_s3 PHYSICS LIST - + The particle's type and the physic processes which will be available in this example are set are built from a variety of physics constructors. The chosen physics lists are extensive, primarily @@ -92,28 +92,28 @@ in multi-threading mode the same method is invoked for each thread worker and so all user action classes are defined thread-local. - A run action class is instantiated both thread-local + A run action class is instantiated both thread-local and global that's why its instance is created also in the method - TSActionInitialization::BuildForMaster() + TSActionInitialization::BuildForMaster() which is invoked only in multi-threading mode. - + \section ThreadsafeScorers_s5 PRIMARY GENERATOR - + The primary generator is defined in the TSPrimaryGeneratorAction class. The default kinematics is a 1 MeV neutron, randomly distributed in front of the target across 100% of the transverse (X,Y) target size. - This default setting can be changed via the Geant4 built-in commands + This default setting can be changed via the Geant4 built-in commands of the G4ParticleGun class. - + \section ThreadsafeScorers_s6 DETECTOR RESPONSE This example demonstrates a scoring implemented in the user action classes and TSRun object. - + The energy deposited is collected per event in the PrimitiveScorer G4PSEnergyDeposit (as part of a MultiFunctionalDetector) and the thread-local version are merged at the end of the run. - + The number of steps is collected per event in the PrimativeScorer G4PSNoOfSteps and the thread-local version are merged at the end of the run. @@ -165,17 +165,17 @@ - Execute ts_scorers in the 'interactive mode' with visualization: % ./ts_scorers - + and type in the commands from run.mac line by line: - + Idle> /control/verbose 2 Idle> /tracking/verbose 1 - Idle> /run/beamOn 10 + Idle> /run/beamOn 10 Idle> ... Idle> exit - + or - + Idle> /control/execute run.mac .... Idle> exit @@ -188,17 +188,15 @@ \section ThreadsafeScorers_s8 TIMEMORY USAGE - This example demonstrates timing and memory analysis with TiMemory - (https://github.com/jrmadsen/TiMemory). + This example demonstrates profiling analysis with timemory + (https://github.com/NERSC/timemory). - - Compile Geant4 with TiMemory (-DGEANT4_USE_TIMEMORY=ON) - - TiMemory auto-timer provide timing within the Geant4 source code + - Compile Geant4 with timemory (-DGEANT4_USE_TIMEMORY=ON) + - timemory provide timing within the Geant4 source code and within the example (TSRun::RecordEvent) - - Analysis is echoed to stdout, recorded in ts_scorers.out, and - serialized in ts_scorers.json - - Generates plots: - "timemory-plotter -f ts_scorers.json -t "ThreadSafe Scorers" -o plots -e" - - Uploads plots to CDash if enabled + - Analysis is echoed to stdout and generates several output + files in a folder based on the name of the executable. In + general that folder will be "timemory-{name of executable}-output" */ - + diff --git a/examples/extended/parallel/ThreadsafeScorers/CMakeLists.txt b/examples/extended/parallel/ThreadsafeScorers/CMakeLists.txt index 8e5944c49b..b606adb8f1 100644 --- a/examples/extended/parallel/ThreadsafeScorers/CMakeLists.txt +++ b/examples/extended/parallel/ThreadsafeScorers/CMakeLists.txt @@ -1,4 +1,7 @@ -cmake_minimum_required(VERSION 3.8 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() set(name ts_scorers) project(ThreadsafeScorers C CXX) diff --git a/examples/extended/parallel/ThreadsafeScorers/History b/examples/extended/parallel/ThreadsafeScorers/History index 4a52540f21..4969827bc8 100644 --- a/examples/extended/parallel/ThreadsafeScorers/History +++ b/examples/extended/parallel/ThreadsafeScorers/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +12/11/20202 Jonathan Madsen (ThreadsafeScorers-V10-06-03) +- Replaced TIMEMORY_AUTO_TIMER usage with G4USER_SCOPED_PROFILE usage + 23/6/2020 Jonathan Madsen (ThreadsafeScores-V10-06-02) - Added example of user code leveraging tasking in TSRunAction.cc - This example leverages tasks on the master thread at the end diff --git a/examples/extended/parallel/ThreadsafeScorers/README b/examples/extended/parallel/ThreadsafeScorers/README index dc7443c951..f66fe2c8d7 100644 --- a/examples/extended/parallel/ThreadsafeScorers/README +++ b/examples/extended/parallel/ThreadsafeScorers/README @@ -9,7 +9,7 @@ ---------------------------- This example demonstrates a very simple application where an energy - deposit and # of steps is accounted in thread-local (i.e. one instance per + deposit and # of steps is accounted in thread-local (i.e. one instance per thread) hits maps with underlying types of plain-old data (POD) and global (i.e. one instance) hits maps with underlying types of atomics. The example uses a coarse mesh, extensive physics, and step limiters @@ -17,15 +17,15 @@ when updating the scorers to test the robustness of the atomics classes and maximize the compounding of thread-local round-off error. At the end of the simulation, the scorers are printed to - "mfd__.out", where DATA_TYPE is either + "mfd__.out", where DATA_TYPE is either "tl" (thread-local) or "tg" (thread-global) and SCORER_TYPE is "EnergyDeposit" or "NumberOfSteps". These values are then compared to a thread-global sum of these scorers that were updated via mutex locking. If round-off errors in thread-local EnergyDeposit are present, they can be viewed in "mfd_diff.out" at the end of the simulation - This example also provides a demonstration of the TiMemory (timing and - memory analysis) package provided in Geant4 -- for documentation of TiMemory - see https://github.com/jrmadsen/TiMemory. + This example also provides a demonstration of the timemory (a performance + instrumentation toolkit) package provided in Geant4 -- for documentation of timemory + see https://github.com/NERSC/timemory and https://timemory.readthedocs.io. 1- ATOMICS and the ATOMIC SCORERS @@ -38,33 +38,33 @@ in atomic.hh has limited copy-construction and still cannot be used in STL containers. Use these copy-constructors with extreme caution. See opening comments of G4atomic.hh for more details. - + The newly provided classes in this example (G4atomic, G4TAtomicHitsMap, and - G4TAtomicHitsCollection) are intended for applications where memory is a + G4TAtomicHitsCollection) are intended for applications where memory is a greater concern than performance. While atomics generally perform better than mutex locking, the synchronization is not without a cost. However, since the memory consumed by thread-local hits maps scales roughly linearly with the number of threads, simulations with a large number of scoring - volumes can decrease simulation time by increasing the number of threads + volumes can decrease simulation time by increasing the number of threads beyond what was previously allowed due to the increase in memory consumption. - + The G4TAtomicHitsMap and G4TAtomicHitsCollection work exactly the same way as the standard G4THitsMap and G4THitsCollection, respectively, with the - exception(s) that you should only implement one instance and provide a + exception(s) that you should only implement one instance and provide a pointer/reference of that instance to the threads instead of having the threads create them. Additionally, there is no need to include them in the G4Run::Merge(). - + 2- GEOMETRY DEFINITION - + The geometry is constructed in the TSDetectorConstruction class. The setup consists of a box filling the world. The volume is divided into subregions, where the outermost boxes are a different material. The materials - by default are water and boron as these have large scattering cross-sections - for neutrons (the default particle). - + by default are water and boron as these have large scattering cross-sections + for neutrons (the default particle). + 3- PHYSICS LIST - + The particle's type and the physic processes which will be available in this example are set are built from a variety of physics constructors. The chosen physics lists are extensive, primarily @@ -90,28 +90,28 @@ in multi-threading mode the same method is invoked for each thread worker and so all user action classes are defined thread-local. - A run action class is instantiated both thread-local + A run action class is instantiated both thread-local and global that's why its instance is created also in the method - TSActionInitialization::BuildForMaster() + TSActionInitialization::BuildForMaster() which is invoked only in multi-threading mode. - + 5- PRIMARY GENERATOR - + The primary generator is defined in the TSPrimaryGeneratorAction class. The default kinematics is a 1 MeV neutron, randomly distributed in front of the target across 100% of the transverse (X,Y) target size. - This default setting can be changed via the Geant4 built-in commands + This default setting can be changed via the Geant4 built-in commands of the G4ParticleGun class. - + 6- DETECTOR RESPONSE This example demonstrates a scoring implemented in the user action classes and TSRun object. - + The energy deposited is collected per event in the PrimitiveScorer G4PSEnergyDeposit (as part of a MultiFunctionalDetector) and the thread-local version are merged at the end of the run. - + The number of steps is collected per event in the PrimativeScorer G4PSNoOfSteps and the thread-local version are merged at the end of the run. @@ -162,7 +162,7 @@ and type in the commands from run.mac line by line: Idle> /control/verbose 2 Idle> /tracking/verbose 1 - Idle> /run/beamOn 10 + Idle> /run/beamOn 10 Idle> ... Idle> exit or @@ -177,14 +177,12 @@ 8- TIMEMORY USAGE - This example demonstrates timing and memory analysis with TiMemory - (https://github.com/jrmadsen/TiMemory). + This example demonstrates profiling analysis with timemory + (https://github.com/NERSC/timemory). - - Compile Geant4 with TiMemory (-DGEANT4_USE_TIMEMORY=ON) - - TiMemory auto-timer provide timing within the Geant4 source code + - Compile Geant4 with timemory (-DGEANT4_USE_TIMEMORY=ON) + - timemory provide timing within the Geant4 source code and within the example (TSRun::RecordEvent) - - Analysis is echoed to stdout, recorded in ts_scorers.out, and - serialized in ts_scorers.json - - Generates plots: - "timemory-plotter -f ts_scorers.json -t "ThreadSafe Scorers" -o plots -e" - - Uploads plots to CDash if enabled + - Analysis is echoed to stdout and generates several output + files in a folder based on the name of the executable. In + general that folder will be "timemory-{name of executable}-output" diff --git a/examples/extended/parallel/ThreadsafeScorers/run.mac b/examples/extended/parallel/ThreadsafeScorers/run.mac index ec5241f803..97b9a31c91 100644 --- a/examples/extended/parallel/ThreadsafeScorers/run.mac +++ b/examples/extended/parallel/ThreadsafeScorers/run.mac @@ -7,6 +7,30 @@ /run/verbose 1 /event/verbose 0 +######################### +# Set profiler +# +/profiler/run/enable true +/profiler/event/enable true +/profiler/track/enable true +/profiler/step/enable false + +/profiler/run/components wall_clock cpu_clock peak_rss +/profiler/event/components wall_clock cpu_clock peak_rss +/profiler/track/components wall_clock +/profiler/step/components wall_clock + +/profiler/per_thread false +/profiler/per_event false + +/profiler/output/dart true +/profiler/output/text true +/profiler/output/json false +/profiler/output/cout false + +/profiler/tree true +/profiler/flat false +/profiler/timeline false ########################## # Random diff --git a/examples/extended/parallel/ThreadsafeScorers/src/TSPrimaryGeneratorAction.cc b/examples/extended/parallel/ThreadsafeScorers/src/TSPrimaryGeneratorAction.cc index 641e1ad8ee..9f5d1ee76f 100644 --- a/examples/extended/parallel/ThreadsafeScorers/src/TSPrimaryGeneratorAction.cc +++ b/examples/extended/parallel/ThreadsafeScorers/src/TSPrimaryGeneratorAction.cc @@ -44,6 +44,7 @@ #include "G4ParticleGun.hh" #include "G4ParticleTable.hh" #include "G4ParticleDefinition.hh" +#include "G4Profiler.hh" #include "G4TiMemory.hh" using namespace CLHEP; @@ -71,7 +72,7 @@ TSPrimaryGeneratorAction::~TSPrimaryGeneratorAction() { delete fGun; } void TSPrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) { - TIMEMORY_AUTO_TIMER(""); + G4USER_SCOPED_PROFILE(__FUNCTION__); static TSDetectorConstruction* detector = TSDetectorConstruction::Instance(); G4ThreeVector dir(0., 0., 1.); diff --git a/examples/extended/parallel/ThreadsafeScorers/src/TSRun.cc b/examples/extended/parallel/ThreadsafeScorers/src/TSRun.cc index 6a6b8d376e..d20a9875bc 100644 --- a/examples/extended/parallel/ThreadsafeScorers/src/TSRun.cc +++ b/examples/extended/parallel/ThreadsafeScorers/src/TSRun.cc @@ -202,43 +202,42 @@ void TSRun::RecordEvent(const G4Event* aEvent) else G4cout << " Error EvtMap Not Found " << G4endl; - TIMEMORY_AUTO_TIMER("[" + fCollNames.at(i) + "]"); - + G4USER_SCOPED_PROFILE(fCollNames.at(i)); if(EvtMap) { //=== Sum up HitsMap of this event to HitsMap of RUN.=== { - TIMEMORY_BASIC_AUTO_TIMER("[standard_run_map]"); + G4USER_SCOPED_PROFILE("ThreadLocal"); *fRunMaps[fCollID] += *EvtMap; } - //=== Sum up HitsMap of this event to atomic HitsMap of RUN.=== - { - TIMEMORY_BASIC_AUTO_TIMER("[atomic_run_map]"); - *fAtomicRunMaps[fCollID] += *EvtMap; - } //=== Sum up HitsMap of this event to StatMap of RUN.=== { - TIMEMORY_BASIC_AUTO_TIMER("[stat_analysis_map]"); + G4USER_SCOPED_PROFILE("ThreadLocal/G4StatAnalysis"); // G4StatAnalysis map *fStatMaps[fCollID] += *EvtMap; } - //=== Sum up HitsMap of this event to MutexMap of RUN.=== + //=== Sum up HitsMap of this event to atomic HitsMap of RUN.=== { - TIMEMORY_BASIC_AUTO_TIMER("[convergence_test_map]"); - // G4ConvergenceTester run map - static G4Mutex mtx = G4MUTEX_INITIALIZER; - G4AutoLock lock(&mtx); - *fConvMaps[fCollID] += *EvtMap; + G4USER_SCOPED_PROFILE("Global/Atomic"); + *fAtomicRunMaps[fCollID] += *EvtMap; } //=== Sum up HitsMap of this event to MutexMap of RUN.=== { - TIMEMORY_BASIC_AUTO_TIMER("[mutex_run_map]"); + G4USER_SCOPED_PROFILE("Global/Mutex"); // mutex run map static G4Mutex mtx = G4MUTEX_INITIALIZER; G4AutoLock lock(&mtx); for(const auto& itr : *EvtMap) fMutexRunMaps[fCollNames[fCollID]][itr.first] += *itr.second; } + //=== Sum up HitsMap of this event to MutexMap of RUN.=== + { + G4USER_SCOPED_PROFILE("Global/Mutex/G4ConvergenceTester"); + // G4ConvergenceTester run map + static G4Mutex mtx = G4MUTEX_INITIALIZER; + G4AutoLock lock(&mtx); + *fConvMaps[fCollID] += *EvtMap; + } } } } diff --git a/examples/extended/parallel/ThreadsafeScorers/src/TSRunAction.cc b/examples/extended/parallel/ThreadsafeScorers/src/TSRunAction.cc index 272c94d220..bb8147a232 100644 --- a/examples/extended/parallel/ThreadsafeScorers/src/TSRunAction.cc +++ b/examples/extended/parallel/ThreadsafeScorers/src/TSRunAction.cc @@ -65,10 +65,10 @@ G4Run* TSRunAction::GenerateRun() { return new TSRun(fName); } void TSRunAction::BeginOfRunAction(const G4Run* aRun) { - G4int evts_to_process = aRun->GetNumberOfEventToBeProcessed(); - G4RunManager::GetRunManager()->SetPrintProgress( - (evts_to_process > 100) ? evts_to_process / 100 : 1); - if(IsMaster()) + // G4int evts_to_process = aRun->GetNumberOfEventToBeProcessed(); + // G4RunManager::GetRunManager()->SetPrintProgress( + // (evts_to_process > 1000) ? evts_to_process / 1000 : 1); + if(IsMaster() && aRun != nullptr) G4PrintEnv(); } diff --git a/examples/extended/parallel/ThreadsafeScorers/threadsafe-scorers.out b/examples/extended/parallel/ThreadsafeScorers/threadsafe-scorers.out index d7a856a2f4..d22bce91d8 100644 --- a/examples/extended/parallel/ThreadsafeScorers/threadsafe-scorers.out +++ b/examples/extended/parallel/ThreadsafeScorers/threadsafe-scorers.out @@ -5,7 +5,7 @@ Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Fo ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -18,6 +18,11 @@ Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Fo --> Running in serial mode + + hInelastic QGSP_BERT_HP Thresholds: + 1) between BERT and FTF/P over the interval 3 to 6 GeV. + 2) between FTF/P and QGS/P over the interval 12 to 25 GeV. + -- quasiElastic: 1 for QGS and 0 for FTF /cvmfs/geant4.cern.ch/share/data/G4NDL4.6 @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic @@@ G4ParticleHPInelasticData instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6 @@ -35,10 +40,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -109,10 +116,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -135,7 +143,7 @@ ePairProd: for e- SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 Lambda table from 100 MeV to 100 TeV, 20 bins/decade, spline: 1 @@ -144,10 +152,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.08, stepLimType: 2, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== GoudsmitSaunderson : Emin= 0 eV Emax= 100 MeV Nbins=120 100 eV - 100 MeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=120 100 MeV - 100 TeV + StepLim=SafetyPlus Rfact=0.08 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -170,7 +179,7 @@ ePairProd: for e+ SubType=4 Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 25x1001 from 0.1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - ePairProd : Emin= 0 eV Emax= 100 TeV + ePairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi annihil: for e+, integral:1 SubType=5 BuildTable=0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== @@ -183,9 +192,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -199,14 +208,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -219,9 +228,9 @@ nuclearStopping: for proton SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -249,9 +258,9 @@ Use Bearden atomic level energies 0 ====================================================================== msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -266,9 +275,9 @@ nuclearStopping: for alpha SubType=8 BuildTable=0 ICRU49NucStopping : Emin= 0 eV Emax= 1 MeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -282,14 +291,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -298,9 +307,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -314,14 +323,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -330,9 +339,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -346,14 +355,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -362,9 +371,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -379,14 +388,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -395,9 +404,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -412,26 +421,39 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ ThetaMin(p) < Theta(degree) < 180 pLimit(GeV^1)= 0.139531 ===== EM models for the G4Region DefaultRegionForTheWorld ====== eCoulombScattering : Emin= 0 eV Emax= 100 TeV + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + UseOnlyPhotoEvaporation ? 0 + SkipMissingIsotopes ? 0 + NeglectDoppler ? 0 + DoNotAdjustFinalState ? 0 + ProduceFissionFragments ? 0 + UseWendtFissionModel ? 0 + UseNRESP71Model ? 0 +======================================================= + @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -445,14 +467,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 20 bins/decade, spline: 1 @@ -461,9 +483,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=240 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=3 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 240 bins @@ -477,14 +499,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 240 bins Lambda tables from threshold to 100 TeV, 20 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -495,6 +517,30 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 ==================================================================== HADRONIC PROCESSES SUMMARY (verbose level 1) +--------------------------------------------------- + Hadronic Processes for B- + + Process: B-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: D-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -537,9 +583,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Hadronic Processes for anti_He3 Process: anti_He3Inelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hadElastic @@ -551,9 +595,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Hadronic Processes for anti_alpha Process: anti_alphaInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hadElastic @@ -565,9 +607,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Hadronic Processes for anti_deuteron Process: anti_deuteronInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hadElastic @@ -575,13 +615,23 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: anti_lambdaInelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for anti_neutron Process: anti_neutronInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hadElastic @@ -593,9 +643,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Hadronic Processes for anti_proton Process: anti_protonInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hadElastic @@ -607,9 +655,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Hadronic Processes for anti_triton Process: anti_tritonInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hadElastic @@ -659,10 +705,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Hadronic Processes for lambda Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hadElastic @@ -741,10 +786,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Hadronic Processes for sigma- Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hadElastic @@ -787,7 +831,6 @@ Store e- internal conversion data 1 Electron internal conversion ID 0 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -802,14 +845,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.92994 keV e- 349.731 keV e+ 342.774 keV proton 100 keV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_B Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.75854 keV e- 566.458 keV e+ 544.145 keV proton 100 keV + Energy thresholds : gamma 2.7587 keV e- 570.85 keV e+ 548.291 keV proton 100 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -825,879 +868,779 @@ See commands in /vis/modeling/trajectories/ for other options. # G4FORCE_RUN_MANAGER_TYPE = Serial # G4RUN_MANAGER_TYPE = Tasking ########################################################################################## ---> Event 0 starts. ---> Event 100 starts. ---> Event 200 starts. ---> Event 300 starts. ---> Event 400 starts. ---> Event 500 starts. ---> Event 600 starts. ---> Event 700 starts. ---> Event 800 starts. ---> Event 900 starts. ---> Event 1000 starts. ---> Event 1100 starts. ---> Event 1200 starts. ---> Event 1300 starts. ---> Event 1400 starts. ---> Event 1500 starts. ---> Event 1600 starts. ---> Event 1700 starts. ---> Event 1800 starts. ---> Event 1900 starts. ---> Event 2000 starts. ---> Event 2100 starts. ---> Event 2200 starts. ---> Event 2300 starts. ---> Event 2400 starts. ---> Event 2500 starts. ---> Event 2600 starts. ---> Event 2700 starts. ---> Event 2800 starts. ---> Event 2900 starts. ---> Event 3000 starts. ---> Event 3100 starts. ---> Event 3200 starts. ---> Event 3300 starts. ---> Event 3400 starts. ---> Event 3500 starts. ---> Event 3600 starts. ---> Event 3700 starts. ---> Event 3800 starts. ---> Event 3900 starts. ---> Event 4000 starts. ---> Event 4100 starts. ---> Event 4200 starts. ---> Event 4300 starts. ---> Event 4400 starts. ---> Event 4500 starts. ---> Event 4600 starts. ---> Event 4700 starts. ---> Event 4800 starts. ---> Event 4900 starts. ---> Event 5000 starts. ---> Event 5100 starts. ---> Event 5200 starts. ---> Event 5300 starts. ---> Event 5400 starts. ---> Event 5500 starts. ---> Event 5600 starts. ---> Event 5700 starts. ---> Event 5800 starts. ---> Event 5900 starts. ---> Event 6000 starts. ---> Event 6100 starts. ---> Event 6200 starts. ---> Event 6300 starts. ---> Event 6400 starts. ---> Event 6500 starts. ---> Event 6600 starts. ---> Event 6700 starts. ---> Event 6800 starts. ---> Event 6900 starts. ---> Event 7000 starts. ---> Event 7100 starts. ---> Event 7200 starts. ---> Event 7300 starts. ---> Event 7400 starts. ---> Event 7500 starts. ---> Event 7600 starts. ---> Event 7700 starts. ---> Event 7800 starts. ---> Event 7900 starts. ---> Event 8000 starts. ---> Event 8100 starts. ---> Event 8200 starts. ---> Event 8300 starts. ---> Event 8400 starts. ---> Event 8500 starts. ---> Event 8600 starts. ---> Event 8700 starts. ---> Event 8800 starts. ---> Event 8900 starts. ---> Event 9000 starts. ---> Event 9100 starts. ---> Event 9200 starts. ---> Event 9300 starts. ---> Event 9400 starts. ---> Event 9500 starts. ---> Event 9600 starts. ---> Event 9700 starts. ---> Event 9800 starts. ---> Event 9900 starts. Run terminated. Run Summary Number of events processed : 10000 - User=262.310000s Real=266.785568s Sys=1.190000s + User=24.210000s Real=35.154388s Sys=1.030000s ###### EndOfTSRunAction ###### ============================================================ opened file mfd_tl_EnergyDeposit.out for output ============================================================ - 0 5.994340 keV - 1 442.644652 keV - 2 4108.357036 keV - 3 459.293296 keV - 4 439.224745 keV - 5 60.112620 keV - 6 1770.995029 keV - 7 2271.617163 keV - 8 1746.451690 keV - 9 308.873010 keV - 10 673.344715 keV - 11 847.057524 keV - 12 631.655778 keV - 13 2627.122941 keV - 14 805.233892 keV - 15 170.809190 keV - 16 2134.630709 keV - 17 860.720114 keV - 18 274.700743 keV - 19 39.571711 keV - 20 5262.006065 keV - 21 549.398145 keV - 22 1028.405935 keV - 23 1221.108829 keV - 24 172.396910 keV - 25 3369.623481 keV - 26 2091.045201 keV - 27 807.785401 keV - 28 1172.319705 keV - 29 3526.023408 keV - 30 1000.165698 keV - 31 8489.035813 keV - 32 1821.234774 keV - 33 9851.727496 keV - 34 5564.866839 keV - 35 697.119398 keV - 36 6619.448938 keV - 37 3738.649419 keV - 38 8569.326565 keV - 39 535.502575 keV - 40 2322.051981 keV - 41 5474.256219 keV - 42 3414.156675 keV - 43 3641.474982 keV - 44 4477.793169 keV - 45 1159.694541 keV - 46 2565.726126 keV - 47 5252.709041 keV - 48 5849.698162 keV - 49 3049.069378 keV - 50 7406.804260 keV - 51 4880.740565 keV - 52 6344.344057 keV - 53 10239.792080 keV - 54 4317.002634 keV - 55 6273.039880 keV - 56 11374.077688 keV - 57 29356.709357 keV - 58 21904.782644 keV - 59 6822.444413 keV - 60 6001.669788 keV - 61 20613.751155 keV - 62 19096.574368 keV - 63 17725.211872 keV - 64 6232.592849 keV - 65 11237.222892 keV - 66 29156.131796 keV - 67 14259.337960 keV - 68 28706.616587 keV - 69 8380.590380 keV - 70 7418.085333 keV - 71 11608.029312 keV - 72 2115.265847 keV - 73 6125.464114 keV - 74 3665.325408 keV - 75 22807.244249 keV - 76 28298.754242 keV - 77 45614.675784 keV - 78 29477.044940 keV - 79 17544.624242 keV - 80 28794.194855 keV - 81 361067.989371 keV - 82 348503.741655 keV - 83 357245.155040 keV - 84 25810.705885 keV - 85 32984.858499 keV - 86 336748.640318 keV - 87 302347.085578 keV - 88 361804.376952 keV - 89 26516.659908 keV - 90 39499.215379 keV - 91 444625.101104 keV - 92 365094.711061 keV - 93 335340.495293 keV - 94 35029.625009 keV - 95 35324.228021 keV - 96 37446.892926 keV - 97 39533.328693 keV - 98 22581.503212 keV - 99 20876.432556 keV - 100 300408.380165 keV - 101 370210.823274 keV - 102 365106.486560 keV - 103 320164.595753 keV - 104 310560.910720 keV - 105 348851.364590 keV - 106 412610.198360 keV - 107 401697.696875 keV - 108 377903.744808 keV - 109 334774.924624 keV - 110 344074.244636 keV - 111 368946.937967 keV - 112 412463.876002 keV - 113 409668.160423 keV - 114 352142.143588 keV - 115 358372.066438 keV - 116 432649.220375 keV - 117 372497.936989 keV - 118 402029.464077 keV - 119 353622.912560 keV - 120 318485.931848 keV - 121 366428.972447 keV - 122 404202.938356 keV - 123 343791.718714 keV - 124 299254.854077 keV - 0 5.99434 [sigma: 0 | error: 0 | coeff: 0 | eff: 1 | fom: 1 | r2int: 0 | r2eff: 0 | hits: 1 ] keV - 1 442.645 [sigma: 113.861 | error: 0.445535 | coeff: 0.445535 | eff: 1 | fom: 0.0191549 | r2int: 0.132334 | r2eff: 0 | hits: 3 ] keV - 2 4108.36 [sigma: 1123.55 | error: 0.546959 | coeff: 0.546959 | eff: 1 | fom: 0.0127097 | r2int: 0.224373 | r2eff: 0 | hits: 4 ] keV - 3 459.293 [sigma: 88.2059 | error: 0.384094 | coeff: 0.384094 | eff: 1 | fom: 0.0257733 | r2int: 0.110646 | r2eff: 0 | hits: 4 ] keV - 4 439.225 [sigma: 57.2431 | error: 0.225734 | coeff: 0.225734 | eff: 1 | fom: 0.074619 | r2int: 0.0339706 | r2eff: 0 | hits: 3 ] keV - 5 60.1126 [sigma: 0 | error: 0 | coeff: 0 | eff: 1 | fom: 1 | r2int: 2.22045e-16 | r2eff: 0 | hits: 1 ] keV - 6 1771 [sigma: 591.385 | error: 0.746686 | coeff: 0.746686 | eff: 1 | fom: 0.00681975 | r2int: 0.446032 | r2eff: 0 | hits: 5 ] keV - 7 2271.62 [sigma: 860.748 | error: 0.847278 | coeff: 0.847278 | eff: 1 | fom: 0.00529654 | r2int: 0.574304 | r2eff: 0 | hits: 5 ] keV - 8 1746.45 [sigma: 355.596 | error: 0.538702 | coeff: 0.538702 | eff: 1 | fom: 0.0131023 | r2int: 0.248743 | r2eff: 0 | hits: 7 ] keV - 9 308.873 [sigma: 40.5295 | error: 0.321416 | coeff: 0.321416 | eff: 1 | fom: 0.0368053 | r2int: 0.08609 | r2eff: 0 | hits: 6 ] keV - 10 673.345 [sigma: 120.325 | error: 0.357394 | coeff: 0.357394 | eff: 1 | fom: 0.029768 | r2int: 0.0957978 | r2eff: 0 | hits: 4 ] keV - 11 847.058 [sigma: 164.723 | error: 0.476341 | coeff: 0.476341 | eff: 1 | fom: 0.0167575 | r2int: 0.189084 | r2eff: 0 | hits: 6 ] keV - 12 631.656 [sigma: 200.528 | error: 0.709871 | coeff: 0.709871 | eff: 1 | fom: 0.00754546 | r2int: 0.403133 | r2eff: 0 | hits: 5 ] keV - 13 2627.12 [sigma: 480.649 | error: 0.578559 | coeff: 0.578559 | eff: 1 | fom: 0.0113592 | r2int: 0.301258 | r2eff: 0 | hits: 10 ] keV - 14 805.234 [sigma: 175.078 | error: 0.486178 | coeff: 0.486178 | eff: 1 | fom: 0.0160862 | r2int: 0.189095 | r2eff: 0 | hits: 5 ] keV - 15 170.809 [sigma: 21.7569 | error: 0.22062 | coeff: 0.22062 | eff: 1 | fom: 0.0781183 | r2int: 0.0324489 | r2eff: 0 | hits: 3 ] keV - 16 2134.63 [sigma: 360.232 | error: 0.413367 | coeff: 0.413367 | eff: 1 | fom: 0.0222522 | r2int: 0.142393 | r2eff: 0 | hits: 6 ] keV - 17 860.72 [sigma: 173.458 | error: 0.60458 | coeff: 0.60458 | eff: 1 | fom: 0.0104025 | r2int: 0.324904 | r2eff: 0 | hits: 9 ] keV - 18 274.701 [sigma: 87.6749 | error: 0.63833 | coeff: 0.63833 | eff: 1 | fom: 0.00933154 | r2int: 0.305599 | r2eff: 0 | hits: 4 ] keV - 19 39.5717 [sigma: 0 | error: 0 | coeff: 0 | eff: 1 | fom: 1 | r2int: 2.22045e-16 | r2eff: 0 | hits: 1 ] keV - 20 5262.01 [sigma: 310.412 | error: 0.102176 | coeff: 0.102176 | eff: 1 | fom: 0.364208 | r2int: 0.00695991 | r2eff: 0 | hits: 3 ] keV - 21 549.398 [sigma: 113.214 | error: 0.460784 | coeff: 0.460784 | eff: 1 | fom: 0.0179081 | r2int: 0.169857 | r2eff: 0 | hits: 5 ] keV - 22 1028.41 [sigma: 181.449 | error: 0.466808 | coeff: 0.466808 | eff: 1 | fom: 0.0174489 | r2int: 0.186779 | r2eff: 0 | hits: 7 ] keV - 23 1221.11 [sigma: 638.986 | error: 0.906354 | coeff: 0.906354 | eff: 1 | fom: 0.00462859 | r2int: 0.547652 | r2eff: 0 | hits: 3 ] keV - 24 172.397 [sigma: 0 | error: 0 | coeff: 0 | eff: 1 | fom: 1 | r2int: 2.22045e-16 | r2eff: 0 | hits: 1 ] keV - 25 3369.62 [sigma: 891.488 | error: 0.591588 | coeff: 0.591588 | eff: 1 | fom: 0.0108644 | r2int: 0.279981 | r2eff: 0 | hits: 5 ] keV - 26 2091.05 [sigma: 320.808 | error: 0.460259 | coeff: 0.460259 | eff: 1 | fom: 0.0179489 | r2int: 0.188301 | r2eff: 0 | hits: 9 ] keV - 27 807.785 [sigma: 56.4676 | error: 0.261558 | coeff: 0.261558 | eff: 1 | fom: 0.0555789 | r2int: 0.0635257 | r2eff: 0 | hits: 14 ] keV - 28 1172.32 [sigma: 154.937 | error: 0.476521 | coeff: 0.476521 | eff: 1 | fom: 0.0167448 | r2int: 0.209605 | r2eff: 0 | hits: 13 ] keV - 29 3526.02 [sigma: 647.372 | error: 0.580589 | coeff: 0.580589 | eff: 1 | fom: 0.0112799 | r2int: 0.303375 | r2eff: 0 | hits: 10 ] keV - 30 1000.17 [sigma: 211.7 | error: 0.560012 | coeff: 0.560012 | eff: 1 | fom: 0.0121241 | r2int: 0.268811 | r2eff: 0 | hits: 7 ] keV - 31 8489.04 [sigma: 773.008 | error: 0.417288 | coeff: 0.417288 | eff: 1 | fom: 0.021836 | r2int: 0.165837 | r2eff: 0 | hits: 21 ] keV - 32 1821.23 [sigma: 100.556 | error: 0.253018 | coeff: 0.253018 | eff: 1 | fom: 0.0593937 | r2int: 0.0609697 | r2eff: 0 | hits: 21 ] keV - 33 9851.73 [sigma: 1001.79 | error: 0.419264 | coeff: 0.419264 | eff: 1 | fom: 0.0216306 | r2int: 0.165442 | r2eff: 0 | hits: 17 ] keV - 34 5564.87 [sigma: 697.41 | error: 0.485377 | coeff: 0.485377 | eff: 1 | fom: 0.0161394 | r2int: 0.219884 | r2eff: 0 | hits: 15 ] keV - 35 697.119 [sigma: 63.6196 | error: 0.329045 | coeff: 0.329045 | eff: 1 | fom: 0.0351183 | r2int: 0.0999422 | r2eff: 0 | hits: 13 ] keV - 36 6619.45 [sigma: 805.208 | error: 0.471121 | coeff: 0.471121 | eff: 1 | fom: 0.0171309 | r2int: 0.207158 | r2eff: 0 | hits: 15 ] keV - 37 3738.65 [sigma: 306.388 | error: 0.433646 | coeff: 0.433646 | eff: 1 | fom: 0.0202196 | r2int: 0.181333 | r2eff: 0 | hits: 28 ] keV - 38 8569.33 [sigma: 678.594 | error: 0.395944 | coeff: 0.395944 | eff: 1 | fom: 0.0242537 | r2int: 0.150501 | r2eff: 0 | hits: 25 ] keV - 39 535.503 [sigma: 53.7877 | error: 0.31763 | coeff: 0.31763 | eff: 1 | fom: 0.0376878 | r2int: 0.0908 | r2eff: 0 | hits: 10 ] keV - 40 2322.05 [sigma: 320.166 | error: 0.457299 | coeff: 0.457299 | eff: 1 | fom: 0.0181821 | r2int: 0.190111 | r2eff: 0 | hits: 11 ] keV - 41 5474.26 [sigma: 462.55 | error: 0.377875 | coeff: 0.377875 | eff: 1 | fom: 0.0266285 | r2int: 0.13565 | r2eff: 0 | hits: 20 ] keV - 42 3414.16 [sigma: 429.406 | error: 0.589923 | coeff: 0.589923 | eff: 1 | fom: 0.0109258 | r2int: 0.332191 | r2eff: 0 | hits: 22 ] keV - 43 3641.47 [sigma: 444.044 | error: 0.558802 | coeff: 0.558802 | eff: 1 | fom: 0.0121767 | r2int: 0.29739 | r2eff: 0 | hits: 21 ] keV - 44 4477.79 [sigma: 522.69 | error: 0.452091 | coeff: 0.452091 | eff: 1 | fom: 0.0186034 | r2int: 0.19076 | r2eff: 0 | hits: 15 ] keV - 45 1159.69 [sigma: 313.189 | error: 0.76385 | coeff: 0.76385 | eff: 1 | fom: 0.00651671 | r2int: 0.510533 | r2eff: 0 | hits: 8 ] keV - 46 2565.73 [sigma: 375.223 | error: 0.584977 | coeff: 0.584977 | eff: 1 | fom: 0.0111113 | r2int: 0.320811 | r2eff: 0 | hits: 16 ] keV - 47 5252.71 [sigma: 461.589 | error: 0.383044 | coeff: 0.383044 | eff: 1 | fom: 0.0259147 | r2int: 0.139001 | r2eff: 0 | hits: 19 ] keV - 48 5849.7 [sigma: 724.67 | error: 0.446662 | coeff: 0.446662 | eff: 1 | fom: 0.0190584 | r2int: 0.18416 | r2eff: 0 | hits: 13 ] keV - 49 3049.07 [sigma: 426.806 | error: 0.442652 | coeff: 0.442652 | eff: 1 | fom: 0.0194052 | r2int: 0.176347 | r2eff: 0 | hits: 10 ] keV - 50 7406.8 [sigma: 608.836 | error: 0.402694 | coeff: 0.402694 | eff: 1 | fom: 0.0234474 | r2int: 0.155406 | r2eff: 0 | hits: 24 ] keV - 51 4880.74 [sigma: 360.868 | error: 0.40497 | coeff: 0.40497 | eff: 1 | fom: 0.0231845 | r2int: 0.158534 | r2eff: 0 | hits: 30 ] keV - 52 6344.34 [sigma: 361.07 | error: 0.364415 | coeff: 0.364415 | eff: 1 | fom: 0.028632 | r2int: 0.129559 | r2eff: 0 | hits: 41 ] keV - 53 10239.8 [sigma: 523.234 | error: 0.302301 | coeff: 0.302301 | eff: 1 | fom: 0.041607 | r2int: 0.0887747 | r2eff: 0 | hits: 35 ] keV - 54 4317 [sigma: 379.921 | error: 0.457291 | coeff: 0.457291 | eff: 1 | fom: 0.0181827 | r2int: 0.20137 | r2eff: 0 | hits: 27 ] keV - 55 6273.04 [sigma: 383.864 | error: 0.346158 | coeff: 0.346158 | eff: 1 | fom: 0.0317319 | r2int: 0.116081 | r2eff: 0 | hits: 32 ] keV - 56 11374.1 [sigma: 321.351 | error: 0.217015 | coeff: 0.217015 | eff: 1 | fom: 0.0807356 | r2int: 0.0462972 | r2eff: 0 | hits: 59 ] keV - 57 29356.7 [sigma: 747.431 | error: 0.227724 | coeff: 0.227724 | eff: 1 | fom: 0.0733206 | r2int: 0.05121 | r2eff: 0 | hits: 80 ] keV - 58 21904.8 [sigma: 754.132 | error: 0.262194 | coeff: 0.262194 | eff: 1 | fom: 0.0553094 | r2int: 0.0675604 | r2eff: 0 | hits: 58 ] keV - 59 6822.44 [sigma: 435.678 | error: 0.361244 | coeff: 0.361244 | eff: 1 | fom: 0.0291369 | r2int: 0.126419 | r2eff: 0 | hits: 32 ] keV - 60 6001.67 [sigma: 454.381 | error: 0.414675 | coeff: 0.414675 | eff: 1 | fom: 0.022112 | r2int: 0.166224 | r2eff: 0 | hits: 30 ] keV - 61 20613.8 [sigma: 538.011 | error: 0.226029 | coeff: 0.226029 | eff: 1 | fom: 0.0744242 | r2int: 0.0504081 | r2eff: 0 | hits: 75 ] keV - 62 19096.6 [sigma: 544.952 | error: 0.250408 | coeff: 0.250408 | eff: 1 | fom: 0.0606384 | r2int: 0.0618898 | r2eff: 0 | hits: 77 ] keV - 63 17725.2 [sigma: 558.141 | error: 0.251908 | coeff: 0.251908 | eff: 1 | fom: 0.0599183 | r2int: 0.0624663 | r2eff: 0 | hits: 64 ] keV - 64 6232.59 [sigma: 445.659 | error: 0.385064 | coeff: 0.385064 | eff: 1 | fom: 0.0256436 | r2int: 0.143161 | r2eff: 0 | hits: 29 ] keV - 65 11237.2 [sigma: 459.645 | error: 0.28339 | coeff: 0.28339 | eff: 1 | fom: 0.0473453 | r2int: 0.0786365 | r2eff: 0 | hits: 48 ] keV - 66 29156.1 [sigma: 697.239 | error: 0.195744 | coeff: 0.195744 | eff: 1 | fom: 0.0992352 | r2int: 0.037744 | r2eff: 0 | hits: 67 ] keV - 67 14259.3 [sigma: 449.431 | error: 0.259907 | coeff: 0.259907 | eff: 1 | fom: 0.056287 | r2int: 0.0665583 | r2eff: 0 | hits: 68 ] keV - 68 28706.6 [sigma: 781.125 | error: 0.229281 | coeff: 0.229281 | eff: 1 | fom: 0.0723285 | r2int: 0.0518292 | r2eff: 0 | hits: 71 ] keV - 69 8380.59 [sigma: 420.085 | error: 0.317024 | coeff: 0.317024 | eff: 1 | fom: 0.0378321 | r2int: 0.0979916 | r2eff: 0 | hits: 40 ] keV - 70 7418.09 [sigma: 472.371 | error: 0.38734 | coeff: 0.38734 | eff: 1 | fom: 0.0253431 | r2int: 0.145977 | r2eff: 0 | hits: 37 ] keV - 71 11608 [sigma: 576.514 | error: 0.310159 | coeff: 0.310159 | eff: 1 | fom: 0.0395254 | r2int: 0.0937317 | r2eff: 0 | hits: 39 ] keV - 72 2115.27 [sigma: 97.9885 | error: 0.257924 | coeff: 0.257924 | eff: 1 | fom: 0.057156 | r2int: 0.0643786 | r2eff: 0 | hits: 31 ] keV - 73 6125.46 [sigma: 339.686 | error: 0.341846 | coeff: 0.341846 | eff: 1 | fom: 0.0325374 | r2int: 0.113784 | r2eff: 0 | hits: 38 ] keV - 74 3665.33 [sigma: 254.563 | error: 0.374008 | coeff: 0.374008 | eff: 1 | fom: 0.0271821 | r2int: 0.135058 | r2eff: 0 | hits: 29 ] keV - 75 22807.2 [sigma: 420.594 | error: 0.189864 | coeff: 0.189864 | eff: 1 | fom: 0.105477 | r2int: 0.0357083 | r2eff: 0 | hits: 106 ] keV - 76 28298.8 [sigma: 386.309 | error: 0.174286 | coeff: 0.174286 | eff: 1 | fom: 0.125176 | r2int: 0.0301891 | r2eff: 0 | hits: 163 ] keV - 77 45614.7 [sigma: 430.213 | error: 0.133047 | coeff: 0.133047 | eff: 1 | fom: 0.214799 | r2int: 0.0176126 | r2eff: 0 | hits: 199 ] keV - 78 29477 [sigma: 402.431 | error: 0.171064 | coeff: 0.171064 | eff: 1 | fom: 0.129936 | r2int: 0.0290763 | r2eff: 0 | hits: 157 ] keV - 79 17544.6 [sigma: 394.493 | error: 0.229304 | coeff: 0.229304 | eff: 1 | fom: 0.0723138 | r2int: 0.0520747 | r2eff: 0 | hits: 104 ] keV - 80 28794.2 [sigma: 406.025 | error: 0.1727 | coeff: 0.1727 | eff: 1 | fom: 0.127485 | r2int: 0.0296266 | r2eff: 0 | hits: 150 ] keV - 81 361068 [sigma: 1134.2 | error: 0.0511355 | coeff: 0.0511355 | eff: 1 | fom: 1.45412 | r2int: 0.00260497 | r2eff: 0 | hits: 265 ] keV - 82 348504 [sigma: 1159.51 | error: 0.0560692 | coeff: 0.0560692 | eff: 1 | fom: 1.20947 | r2int: 0.00313269 | r2eff: 0 | hits: 284 ] keV - 83 357245 [sigma: 1121.44 | error: 0.0503242 | coeff: 0.0503242 | eff: 1 | fom: 1.50138 | r2int: 0.00252267 | r2eff: 0 | hits: 257 ] keV - 84 25810.7 [sigma: 368.251 | error: 0.174739 | coeff: 0.174739 | eff: 1 | fom: 0.124528 | r2int: 0.0303301 | r2eff: 0 | hits: 150 ] keV - 85 32984.9 [sigma: 387.051 | error: 0.154785 | coeff: 0.154785 | eff: 1 | fom: 0.158704 | r2int: 0.0238206 | r2eff: 0 | hits: 174 ] keV - 86 336749 [sigma: 1121.96 | error: 0.0538261 | coeff: 0.0538261 | eff: 1 | fom: 1.31238 | r2int: 0.00288614 | r2eff: 0 | hits: 261 ] keV - 87 302347 [sigma: 1143.93 | error: 0.0629698 | coeff: 0.0629698 | eff: 1 | fom: 0.958914 | r2int: 0.00395088 | r2eff: 0 | hits: 277 ] keV - 88 361804 [sigma: 1119.55 | error: 0.0527858 | coeff: 0.0527858 | eff: 1 | fom: 1.36461 | r2int: 0.00277677 | r2eff: 0 | hits: 291 ] keV - 89 26516.7 [sigma: 352.833 | error: 0.165659 | coeff: 0.165659 | eff: 1 | fom: 0.138552 | r2int: 0.027266 | r2eff: 0 | hits: 155 ] keV - 90 39499.2 [sigma: 428.603 | error: 0.145176 | coeff: 0.145176 | eff: 1 | fom: 0.180409 | r2int: 0.0209582 | r2eff: 0 | hits: 179 ] keV - 91 444625 [sigma: 1108.16 | error: 0.0425892 | coeff: 0.0425892 | eff: 1 | fom: 2.09626 | r2int: 0.00180763 | r2eff: 0 | hits: 292 ] keV - 92 365095 [sigma: 1154.77 | error: 0.0531149 | coeff: 0.0531149 | eff: 1 | fom: 1.34776 | r2int: 0.00281119 | r2eff: 0 | hits: 282 ] keV - 93 335340 [sigma: 1161.91 | error: 0.0537894 | coeff: 0.0537894 | eff: 1 | fom: 1.31417 | r2int: 0.00288129 | r2eff: 0 | hits: 241 ] keV - 94 35029.6 [sigma: 461.284 | error: 0.167606 | coeff: 0.167606 | eff: 1 | fom: 0.135351 | r2int: 0.0279185 | r2eff: 0 | hits: 162 ] keV - 95 35324.2 [sigma: 516.155 | error: 0.166602 | coeff: 0.166602 | eff: 1 | fom: 0.136989 | r2int: 0.0275426 | r2eff: 0 | hits: 130 ] keV - 96 37446.9 [sigma: 416.633 | error: 0.145916 | coeff: 0.145916 | eff: 1 | fom: 0.178583 | r2int: 0.0211676 | r2eff: 0 | hits: 172 ] keV - 97 39533.3 [sigma: 467.418 | error: 0.159068 | coeff: 0.159068 | eff: 1 | fom: 0.150273 | r2int: 0.0251627 | r2eff: 0 | hits: 181 ] keV - 98 22581.5 [sigma: 350.533 | error: 0.192635 | coeff: 0.192635 | eff: 1 | fom: 0.102464 | r2int: 0.0368674 | r2eff: 0 | hits: 154 ] keV - 99 20876.4 [sigma: 394.136 | error: 0.209384 | coeff: 0.209384 | eff: 1 | fom: 0.0867279 | r2int: 0.0434851 | r2eff: 0 | hits: 123 ] keV - 100 300408 [sigma: 492.579 | error: 0.038244 | coeff: 0.038244 | eff: 1 | fom: 2.59967 | r2int: 0.00145991 | r2eff: 0 | hits: 544 ] keV - 101 370211 [sigma: 466.61 | error: 0.0337728 | coeff: 0.0337728 | eff: 1 | fom: 3.33358 | r2int: 0.00113901 | r2eff: 0 | hits: 718 ] keV - 102 365106 [sigma: 474.273 | error: 0.0346129 | coeff: 0.0346129 | eff: 1 | fom: 3.17372 | r2int: 0.00119636 | r2eff: 0 | hits: 710 ] keV - 103 320165 [sigma: 452.38 | error: 0.0367098 | coeff: 0.0367098 | eff: 1 | fom: 2.8215 | r2int: 0.00134561 | r2eff: 0 | hits: 675 ] keV - 104 310561 [sigma: 429.752 | error: 0.0329215 | coeff: 0.0329215 | eff: 1 | fom: 3.50821 | r2int: 0.00108191 | r2eff: 0 | hits: 566 ] keV - 105 348851 [sigma: 471.374 | error: 0.0350796 | coeff: 0.0350796 | eff: 1 | fom: 3.08983 | r2int: 0.00122875 | r2eff: 0 | hits: 674 ] keV - 106 412610 [sigma: 496.344 | error: 0.0355019 | coeff: 0.0355019 | eff: 1 | fom: 3.01676 | r2int: 0.00125894 | r2eff: 0 | hits: 871 ] keV - 107 401698 [sigma: 506.492 | error: 0.036847 | coeff: 0.036847 | eff: 1 | fom: 2.78992 | r2int: 0.00135611 | r2eff: 0 | hits: 854 ] keV - 108 377904 [sigma: 485.343 | error: 0.036597 | coeff: 0.036597 | eff: 1 | fom: 2.82816 | r2int: 0.00133769 | r2eff: 0 | hits: 812 ] keV - 109 334775 [sigma: 467.496 | error: 0.0358754 | coeff: 0.0358754 | eff: 1 | fom: 2.94308 | r2int: 0.0012851 | r2eff: 0 | hits: 660 ] keV - 110 344074 [sigma: 465.104 | error: 0.0355848 | coeff: 0.0355848 | eff: 1 | fom: 2.99134 | r2int: 0.00126445 | r2eff: 0 | hits: 693 ] keV - 111 368947 [sigma: 459.251 | error: 0.0366307 | coeff: 0.0366307 | eff: 1 | fom: 2.82296 | r2int: 0.00134026 | r2eff: 0 | hits: 866 ] keV - 112 412464 [sigma: 481.995 | error: 0.0352902 | coeff: 0.0352902 | eff: 1 | fom: 3.0415 | r2int: 0.00124403 | r2eff: 0 | hits: 912 ] keV - 113 409668 [sigma: 501.438 | error: 0.0356647 | coeff: 0.0356647 | eff: 1 | fom: 2.97796 | r2int: 0.00127047 | r2eff: 0 | hits: 849 ] keV - 114 352142 [sigma: 456.17 | error: 0.0342979 | coeff: 0.0342979 | eff: 1 | fom: 3.22003 | r2int: 0.00117467 | r2eff: 0 | hits: 701 ] keV - 115 358372 [sigma: 478.913 | error: 0.0359577 | coeff: 0.0359577 | eff: 1 | fom: 2.92963 | r2int: 0.00129117 | r2eff: 0 | hits: 724 ] keV - 116 432649 [sigma: 511.514 | error: 0.0352313 | coeff: 0.0352313 | eff: 1 | fom: 3.05168 | r2int: 0.00123984 | r2eff: 0 | hits: 888 ] keV - 117 372498 [sigma: 451.616 | error: 0.0355959 | coeff: 0.0355959 | eff: 1 | fom: 2.98949 | r2int: 0.00126559 | r2eff: 0 | hits: 862 ] keV - 118 402029 [sigma: 488.227 | error: 0.0352596 | coeff: 0.0352596 | eff: 1 | fom: 3.04677 | r2int: 0.00124177 | r2eff: 0 | hits: 843 ] keV - 119 353623 [sigma: 487.134 | error: 0.0358693 | coeff: 0.0358693 | eff: 1 | fom: 2.94409 | r2int: 0.00128471 | r2eff: 0 | hits: 678 ] keV - 120 318486 [sigma: 451.597 | error: 0.0347036 | coeff: 0.0347036 | eff: 1 | fom: 3.13332 | r2int: 0.00120233 | r2eff: 0 | hits: 599 ] keV - 121 366429 [sigma: 481.668 | error: 0.035247 | coeff: 0.035247 | eff: 1 | fom: 3.03745 | r2int: 0.00124062 | r2eff: 0 | hits: 719 ] keV - 122 404203 [sigma: 498.693 | error: 0.0336527 | coeff: 0.0336527 | eff: 1 | fom: 3.33207 | r2int: 0.00113098 | r2eff: 0 | hits: 744 ] keV - 123 343792 [sigma: 466.599 | error: 0.0357027 | coeff: 0.0357027 | eff: 1 | fom: 2.96041 | r2int: 0.00127284 | r2eff: 0 | hits: 692 ] keV - 124 299255 [sigma: 434.148 | error: 0.0347881 | coeff: 0.0347881 | eff: 1 | fom: 3.11812 | r2int: 0.00120811 | r2eff: 0 | hits: 575 ] keV + 0 2010.424728 keV + 1 302.745331 keV + 2 65.506861 keV + 3 91.287950 keV + 4 1513.975090 keV + 5 2082.055988 keV + 6 602.929366 keV + 7 3055.040375 keV + 8 678.495842 keV + 9 336.752931 keV + 10 2702.177786 keV + 11 765.344195 keV + 12 786.561055 keV + 13 78.658123 keV + 14 152.955194 keV + 15 626.693340 keV + 16 332.939777 keV + 17 1498.204311 keV + 18 12.394665 keV + 19 566.410724 keV + 20 22.170859 keV + 21 140.721086 keV + 22 428.074546 keV + 23 690.350387 keV + 24 528.886406 keV + 25 5833.708516 keV + 26 2074.503974 keV + 27 1855.516595 keV + 28 1752.316352 keV + 29 1107.428171 keV + 30 827.701077 keV + 31 4254.405893 keV + 32 2695.620797 keV + 33 9969.241464 keV + 34 5104.550060 keV + 35 1928.744726 keV + 36 1749.711166 keV + 37 1623.966085 keV + 38 4775.009432 keV + 39 580.904098 keV + 40 4523.512863 keV + 41 4812.850670 keV + 42 4736.844709 keV + 43 3806.460795 keV + 44 1746.258139 keV + 45 3565.757853 keV + 46 1428.492404 keV + 47 1937.225534 keV + 48 4553.228756 keV + 49 3446.929236 keV + 50 4096.070551 keV + 51 6323.274496 keV + 52 6148.519167 keV + 53 5155.621345 keV + 54 7044.208205 keV + 55 10448.343721 keV + 56 16757.566783 keV + 57 18256.034242 keV + 58 21231.583075 keV + 59 8032.443081 keV + 60 7403.489004 keV + 61 21470.793969 keV + 62 15653.272191 keV + 63 38036.706118 keV + 64 6445.536351 keV + 65 5415.966539 keV + 66 19960.857294 keV + 67 13396.880748 keV + 68 24997.132281 keV + 69 4345.609004 keV + 70 8729.696242 keV + 71 6285.732029 keV + 72 7739.734227 keV + 73 3436.622115 keV + 74 1662.427524 keV + 75 30212.405379 keV + 76 32844.377809 keV + 77 35141.480066 keV + 78 28088.611078 keV + 79 27250.759191 keV + 80 37811.073622 keV + 81 396040.375397 keV + 82 317047.815541 keV + 83 377670.869726 keV + 84 26668.143687 keV + 85 29697.493485 keV + 86 358827.465447 keV + 87 263436.272152 keV + 88 330957.002482 keV + 89 28024.788938 keV + 90 31361.422726 keV + 91 403972.954059 keV + 92 305974.691867 keV + 93 374539.582702 keV + 94 30891.452482 keV + 95 21486.220915 keV + 96 35896.717520 keV + 97 29387.456311 keV + 98 34730.547486 keV + 99 15827.502422 keV + 100 346733.599849 keV + 101 378267.286185 keV + 102 340631.456086 keV + 103 352735.305973 keV + 104 332198.378871 keV + 105 400838.930484 keV + 106 395486.069982 keV + 107 374576.874170 keV + 108 400908.196510 keV + 109 332800.634902 keV + 110 309168.319116 keV + 111 411555.911225 keV + 112 388669.935058 keV + 113 390532.665398 keV + 114 340765.046640 keV + 115 398478.163046 keV + 116 382285.021393 keV + 117 389503.281140 keV + 118 403725.545866 keV + 119 342097.917665 keV + 120 327133.519328 keV + 121 350735.335445 keV + 122 322646.695865 keV + 123 371804.180883 keV + 124 353100.142376 keV + 0 2010.42 [sigma: 1414.5 | error: 0.995014 | coeff: 0.995014 | eff: 1 | fom: 0.0404019 | r2int: 0.495026 | r2eff: 0 | hits: 2 ] keV + 1 302.745 [sigma: 116.808 | error: 0.668276 | coeff: 0.668276 | eff: 1 | fom: 0.0895669 | r2int: 0.297729 | r2eff: 0 | hits: 3 ] keV + 2 65.5069 [sigma: 0 | error: 0 | coeff: 0 | eff: 1 | fom: 1 | r2int: 0 | r2eff: 0 | hits: 1 ] keV + 3 91.288 [sigma: 32.7684 | error: 0.507641 | coeff: 0.507641 | eff: 1 | fom: 0.155219 | r2int: 0.12885 | r2eff: 0 | hits: 2 ] keV + 4 1513.98 [sigma: 712.886 | error: 0.815572 | coeff: 0.815572 | eff: 1 | fom: 0.0601362 | r2int: 0.443438 | r2eff: 0 | hits: 3 ] keV + 5 2082.06 [sigma: 1142.45 | error: 0.950399 | coeff: 0.950399 | eff: 1 | fom: 0.0442842 | r2int: 0.602172 | r2eff: 0 | hits: 3 ] keV + 6 602.929 [sigma: 52.1305 | error: 0.122276 | coeff: 0.122276 | eff: 1 | fom: 2.67534 | r2int: 0.00747568 | r2eff: 0 | hits: 2 ] keV + 7 3055.04 [sigma: 669.416 | error: 0.619761 | coeff: 0.619761 | eff: 1 | fom: 0.104139 | r2int: 0.336091 | r2eff: 0 | hits: 8 ] keV + 8 678.496 [sigma: 427.836 | error: 0.891754 | coeff: 0.891754 | eff: 1 | fom: 0.0503002 | r2int: 0.397613 | r2eff: 0 | hits: 2 ] keV + 9 336.753 [sigma: 154.362 | error: 0.648251 | coeff: 0.648251 | eff: 1 | fom: 0.095186 | r2int: 0.210115 | r2eff: 0 | hits: 2 ] keV + 10 2702.18 [sigma: 602.91 | error: 0.54653 | coeff: 0.54653 | eff: 1 | fom: 0.133916 | r2int: 0.248913 | r2eff: 0 | hits: 6 ] keV + 11 765.344 [sigma: 177.519 | error: 0.656044 | coeff: 0.656044 | eff: 1 | fom: 0.0929383 | r2int: 0.376594 | r2eff: 0 | hits: 8 ] keV + 12 786.561 [sigma: 182.564 | error: 0.568535 | coeff: 0.568535 | eff: 1 | fom: 0.12375 | r2int: 0.26936 | r2eff: 0 | hits: 6 ] keV + 13 78.6581 [sigma: 17.7411 | error: 0.504337 | coeff: 0.504337 | eff: 1 | fom: 0.15726 | r2int: 0.203485 | r2eff: 0 | hits: 5 ] keV + 14 152.955 [sigma: 29.5807 | error: 0.432444 | coeff: 0.432444 | eff: 1 | fom: 0.213895 | r2int: 0.149606 | r2eff: 0 | hits: 5 ] keV + 15 626.693 [sigma: 348.726 | error: 0.786945 | coeff: 0.786945 | eff: 1 | fom: 0.0645909 | r2int: 0.309641 | r2eff: 0 | hits: 2 ] keV + 16 332.94 [sigma: 44.4828 | error: 0.327267 | coeff: 0.327267 | eff: 1 | fom: 0.37347 | r2int: 0.089253 | r2eff: 0 | hits: 6 ] keV + 17 1498.2 [sigma: 374.736 | error: 0.661764 | coeff: 0.661764 | eff: 1 | fom: 0.0913385 | r2int: 0.37537 | r2eff: 0 | hits: 7 ] keV + 18 12.3947 [sigma: 0.944601 | error: 0.107778 | coeff: 0.107778 | eff: 1 | fom: 3.44352 | r2int: 0.00580801 | r2eff: 0 | hits: 2 ] keV + 19 566.411 [sigma: 96.696 | error: 0.341434 | coeff: 0.341434 | eff: 1 | fom: 0.34312 | r2int: 0.0874329 | r2eff: 0 | hits: 4 ] keV + 20 22.1709 [sigma: 0 | error: 0 | coeff: 0 | eff: 1 | fom: 1 | r2int: 2.22045e-16 | r2eff: 0 | hits: 1 ] keV + 21 140.721 [sigma: 52.0062 | error: 0.52265 | coeff: 0.52265 | eff: 1 | fom: 0.146433 | r2int: 0.136581 | r2eff: 0 | hits: 2 ] keV + 22 428.075 [sigma: 240.833 | error: 0.795631 | coeff: 0.795631 | eff: 1 | fom: 0.0631883 | r2int: 0.316514 | r2eff: 0 | hits: 2 ] keV + 23 690.35 [sigma: 281.942 | error: 0.913218 | coeff: 0.913218 | eff: 1 | fom: 0.0479635 | r2int: 0.667174 | r2eff: 0 | hits: 5 ] keV + 24 528.886 [sigma: 288.508 | error: 0.944835 | coeff: 0.944835 | eff: 1 | fom: 0.0448072 | r2int: 0.595143 | r2eff: 0 | hits: 3 ] keV + 25 5833.71 [sigma: 959.291 | error: 0.465105 | coeff: 0.465105 | eff: 1 | fom: 0.184909 | r2int: 0.189282 | r2eff: 0 | hits: 8 ] keV + 26 2074.5 [sigma: 516.937 | error: 0.747557 | coeff: 0.747557 | eff: 1 | fom: 0.0715767 | r2int: 0.496748 | r2eff: 0 | hits: 9 ] keV + 27 1855.52 [sigma: 372.474 | error: 0.634792 | coeff: 0.634792 | eff: 1 | fom: 0.0992651 | r2int: 0.362665 | r2eff: 0 | hits: 10 ] keV + 28 1752.32 [sigma: 247.748 | error: 0.447092 | coeff: 0.447092 | eff: 1 | fom: 0.200109 | r2int: 0.179902 | r2eff: 0 | hits: 10 ] keV + 29 1107.43 [sigma: 129.721 | error: 0.37042 | coeff: 0.37042 | eff: 1 | fom: 0.291522 | r2int: 0.12349 | r2eff: 0 | hits: 10 ] keV + 30 827.701 [sigma: 138.125 | error: 0.472002 | coeff: 0.472002 | eff: 1 | fom: 0.179545 | r2int: 0.194938 | r2eff: 0 | hits: 8 ] keV + 31 4254.41 [sigma: 409.061 | error: 0.40793 | coeff: 0.40793 | eff: 1 | fom: 0.240375 | r2int: 0.157162 | r2eff: 0 | hits: 18 ] keV + 32 2695.62 [sigma: 204.139 | error: 0.370999 | coeff: 0.370999 | eff: 1 | fom: 0.290612 | r2int: 0.131905 | r2eff: 0 | hits: 24 ] keV + 33 9969.24 [sigma: 832.25 | error: 0.323323 | coeff: 0.323323 | eff: 1 | fom: 0.382636 | r2int: 0.0975688 | r2eff: 0 | hits: 15 ] keV + 34 5104.55 [sigma: 756.329 | error: 0.444503 | coeff: 0.444503 | eff: 1 | fom: 0.202447 | r2int: 0.175629 | r2eff: 0 | hits: 9 ] keV + 35 1928.74 [sigma: 164.075 | error: 0.306719 | coeff: 0.306719 | eff: 1 | fom: 0.425186 | r2int: 0.0868399 | r2eff: 0 | hits: 13 ] keV + 36 1749.71 [sigma: 111.433 | error: 0.284815 | coeff: 0.284815 | eff: 1 | fom: 0.493101 | r2int: 0.0770633 | r2eff: 0 | hits: 20 ] keV + 37 1623.97 [sigma: 139.215 | error: 0.383375 | coeff: 0.383375 | eff: 1 | fom: 0.272153 | r2int: 0.139627 | r2eff: 0 | hits: 20 ] keV + 38 4775.01 [sigma: 445.369 | error: 0.484649 | coeff: 0.484649 | eff: 1 | fom: 0.170296 | r2int: 0.226185 | r2eff: 0 | hits: 27 ] keV + 39 580.904 [sigma: 40.7612 | error: 0.252996 | coeff: 0.252996 | eff: 1 | fom: 0.624931 | r2int: 0.0590834 | r2eff: 0 | hits: 13 ] keV + 40 4523.51 [sigma: 584.097 | error: 0.48314 | coeff: 0.48314 | eff: 1 | fom: 0.171362 | r2int: 0.216751 | r2eff: 0 | hits: 14 ] keV + 41 4812.85 [sigma: 696.817 | error: 0.57913 | coeff: 0.57913 | eff: 1 | fom: 0.119263 | r2int: 0.31443 | r2eff: 0 | hits: 16 ] keV + 42 4736.84 [sigma: 532.745 | error: 0.490238 | coeff: 0.490238 | eff: 1 | fom: 0.166436 | r2int: 0.227684 | r2eff: 0 | hits: 19 ] keV + 43 3806.46 [sigma: 583.462 | error: 0.593659 | coeff: 0.593659 | eff: 1 | fom: 0.113497 | r2int: 0.328936 | r2eff: 0 | hits: 15 ] keV + 44 1746.26 [sigma: 139.823 | error: 0.320281 | coeff: 0.320281 | eff: 1 | fom: 0.38994 | r2int: 0.0961687 | r2eff: 0 | hits: 16 ] keV + 45 3565.76 [sigma: 594.004 | error: 0.499757 | coeff: 0.499757 | eff: 1 | fom: 0.160156 | r2int: 0.222006 | r2eff: 0 | hits: 9 ] keV + 46 1428.49 [sigma: 382.466 | error: 0.757285 | coeff: 0.757285 | eff: 1 | fom: 0.0697495 | r2int: 0.501795 | r2eff: 0 | hits: 8 ] keV + 47 1937.23 [sigma: 220.81 | error: 0.394847 | coeff: 0.394847 | eff: 1 | fom: 0.256567 | r2int: 0.142912 | r2eff: 0 | hits: 12 ] keV + 48 4553.23 [sigma: 721.2 | error: 0.500883 | coeff: 0.500883 | eff: 1 | fom: 0.159436 | r2int: 0.225796 | r2eff: 0 | hits: 10 ] keV + 49 3446.93 [sigma: 745.235 | error: 0.529586 | coeff: 0.529586 | eff: 1 | fom: 0.142622 | r2int: 0.233718 | r2eff: 0 | hits: 6 ] keV + 50 4096.07 [sigma: 295.633 | error: 0.368021 | coeff: 0.368021 | eff: 1 | fom: 0.295335 | r2int: 0.13023 | r2eff: 0 | hits: 26 ] keV + 51 6323.27 [sigma: 326.429 | error: 0.334558 | coeff: 0.334558 | eff: 1 | fom: 0.357369 | r2int: 0.109264 | r2eff: 0 | hits: 42 ] keV + 52 6148.52 [sigma: 272.389 | error: 0.280188 | coeff: 0.280188 | eff: 1 | fom: 0.509521 | r2int: 0.0765425 | r2eff: 0 | hits: 40 ] keV + 53 5155.62 [sigma: 239.529 | error: 0.297488 | coeff: 0.297488 | eff: 1 | fom: 0.451982 | r2int: 0.0863405 | r2eff: 0 | hits: 41 ] keV + 54 7044.21 [sigma: 592.441 | error: 0.403345 | coeff: 0.403345 | eff: 1 | fom: 0.245871 | r2int: 0.155614 | r2eff: 0 | hits: 23 ] keV + 55 10448.3 [sigma: 483.879 | error: 0.289216 | coeff: 0.289216 | eff: 1 | fom: 0.478207 | r2int: 0.081501 | r2eff: 0 | hits: 39 ] keV + 56 16757.6 [sigma: 524.712 | error: 0.254379 | coeff: 0.254379 | eff: 1 | fom: 0.618154 | r2int: 0.0637283 | r2eff: 0 | hits: 66 ] keV + 57 18256 [sigma: 687.163 | error: 0.28666 | coeff: 0.28666 | eff: 1 | fom: 0.486772 | r2int: 0.0807573 | r2eff: 0 | hits: 58 ] keV + 58 21231.6 [sigma: 631.323 | error: 0.222517 | coeff: 0.222517 | eff: 1 | fom: 0.807855 | r2int: 0.0486297 | r2eff: 0 | hits: 56 ] keV + 59 8032.44 [sigma: 551.458 | error: 0.400317 | coeff: 0.400317 | eff: 1 | fom: 0.249604 | r2int: 0.15554 | r2eff: 0 | hits: 34 ] keV + 60 7403.49 [sigma: 335.567 | error: 0.304052 | coeff: 0.304052 | eff: 1 | fom: 0.432676 | r2int: 0.0903935 | r2eff: 0 | hits: 45 ] keV + 61 21470.8 [sigma: 487.993 | error: 0.205813 | coeff: 0.205813 | eff: 1 | fom: 0.94431 | r2int: 0.0418424 | r2eff: 0 | hits: 82 ] keV + 62 15653.3 [sigma: 382.266 | error: 0.218427 | coeff: 0.218427 | eff: 1 | fom: 0.838395 | r2int: 0.0471138 | r2eff: 0 | hits: 80 ] keV + 63 38036.7 [sigma: 797.039 | error: 0.187422 | coeff: 0.187422 | eff: 1 | fom: 1.13872 | r2int: 0.0346881 | r2eff: 0 | hits: 80 ] keV + 64 6445.54 [sigma: 345.67 | error: 0.339181 | coeff: 0.339181 | eff: 1 | fom: 0.347693 | r2int: 0.112168 | r2eff: 0 | hits: 40 ] keV + 65 5415.97 [sigma: 318.49 | error: 0.357702 | coeff: 0.357702 | eff: 1 | fom: 0.312621 | r2int: 0.124492 | r2eff: 0 | hits: 37 ] keV + 66 19960.9 [sigma: 590.151 | error: 0.238364 | coeff: 0.238364 | eff: 1 | fom: 0.704009 | r2int: 0.0559433 | r2eff: 0 | hits: 65 ] keV + 67 13396.9 [sigma: 463.96 | error: 0.295896 | coeff: 0.295896 | eff: 1 | fom: 0.45686 | r2int: 0.0863548 | r2eff: 0 | hits: 73 ] keV + 68 24997.1 [sigma: 633.169 | error: 0.211923 | coeff: 0.211923 | eff: 1 | fom: 0.890641 | r2int: 0.0442699 | r2eff: 0 | hits: 70 ] keV + 69 4345.61 [sigma: 218.123 | error: 0.28394 | coeff: 0.28394 | eff: 1 | fom: 0.496144 | r2int: 0.0781023 | r2eff: 0 | hits: 32 ] keV + 70 8729.7 [sigma: 624.192 | error: 0.342912 | coeff: 0.342912 | eff: 1 | fom: 0.340169 | r2int: 0.112476 | r2eff: 0 | hits: 23 ] keV + 71 6285.73 [sigma: 374.195 | error: 0.352189 | coeff: 0.352189 | eff: 1 | fom: 0.322484 | r2int: 0.120493 | r2eff: 0 | hits: 35 ] keV + 72 7739.73 [sigma: 431.973 | error: 0.352989 | coeff: 0.352989 | eff: 1 | fom: 0.321025 | r2int: 0.121486 | r2eff: 0 | hits: 40 ] keV + 73 3436.62 [sigma: 283.647 | error: 0.452072 | coeff: 0.452072 | eff: 1 | fom: 0.195724 | r2int: 0.197557 | r2eff: 0 | hits: 30 ] keV + 74 1662.43 [sigma: 367.572 | error: 0.827302 | coeff: 0.827302 | eff: 1 | fom: 0.0584429 | r2int: 0.635541 | r2eff: 0 | hits: 14 ] keV + 75 30212.4 [sigma: 455.325 | error: 0.171172 | coeff: 0.171172 | eff: 1 | fom: 1.3652 | r2int: 0.0290726 | r2eff: 0 | hits: 129 ] keV + 76 32844.4 [sigma: 462.508 | error: 0.173612 | coeff: 0.173612 | eff: 1 | fom: 1.32709 | r2int: 0.0299429 | r2eff: 0 | hits: 152 ] keV + 77 35141.5 [sigma: 461.168 | error: 0.161793 | coeff: 0.161793 | eff: 1 | fom: 1.52805 | r2int: 0.0260049 | r2eff: 0 | hits: 152 ] keV + 78 28088.6 [sigma: 339.202 | error: 0.15465 | coeff: 0.15465 | eff: 1 | fom: 1.67247 | r2int: 0.0237708 | r2eff: 0 | hits: 164 ] keV + 79 27250.8 [sigma: 423.501 | error: 0.165202 | coeff: 0.165202 | eff: 1 | fom: 1.46565 | r2int: 0.0270501 | r2eff: 0 | hits: 113 ] keV + 80 37811.1 [sigma: 463.474 | error: 0.15982 | coeff: 0.15982 | eff: 1 | fom: 1.56603 | r2int: 0.0253921 | r2eff: 0 | hits: 170 ] keV + 81 396040 [sigma: 1157.51 | error: 0.0493409 | coeff: 0.0493409 | eff: 1 | fom: 16.4303 | r2int: 0.00242598 | r2eff: 0 | hits: 285 ] keV + 82 317048 [sigma: 1129.87 | error: 0.0571306 | coeff: 0.0571306 | eff: 1 | fom: 12.2552 | r2int: 0.00325121 | r2eff: 0 | hits: 257 ] keV + 83 377671 [sigma: 1107.97 | error: 0.0460134 | coeff: 0.0460134 | eff: 1 | fom: 18.8926 | r2int: 0.00210862 | r2eff: 0 | hits: 246 ] keV + 84 26668.1 [sigma: 386.982 | error: 0.179491 | coeff: 0.179491 | eff: 1 | fom: 1.24158 | r2int: 0.0320065 | r2eff: 0 | hits: 153 ] keV + 85 29697.5 [sigma: 407.589 | error: 0.176297 | coeff: 0.176297 | eff: 1 | fom: 1.28698 | r2int: 0.0308922 | r2eff: 0 | hits: 165 ] keV + 86 358827 [sigma: 1145.8 | error: 0.0528565 | coeff: 0.0528565 | eff: 1 | fom: 14.3174 | r2int: 0.00278361 | r2eff: 0 | hits: 274 ] keV + 87 263436 [sigma: 1110.1 | error: 0.0701334 | coeff: 0.0701334 | eff: 1 | fom: 8.13224 | r2int: 0.00490094 | r2eff: 0 | hits: 277 ] keV + 88 330957 [sigma: 1152.59 | error: 0.0561551 | coeff: 0.0561551 | eff: 1 | fom: 12.6847 | r2int: 0.00314127 | r2eff: 0 | hits: 260 ] keV + 89 28024.8 [sigma: 370.89 | error: 0.176568 | coeff: 0.176568 | eff: 1 | fom: 1.28302 | r2int: 0.0310013 | r2eff: 0 | hits: 178 ] keV + 90 31361.4 [sigma: 398.602 | error: 0.168137 | coeff: 0.168137 | eff: 1 | fom: 1.41493 | r2int: 0.0281084 | r2eff: 0 | hits: 175 ] keV + 91 403973 [sigma: 1106.91 | error: 0.0447729 | coeff: 0.0447729 | eff: 1 | fom: 19.954 | r2int: 0.00199711 | r2eff: 0 | hits: 267 ] keV + 92 305975 [sigma: 1132.47 | error: 0.0591034 | coeff: 0.0591034 | eff: 1 | fom: 11.4508 | r2int: 0.00347951 | r2eff: 0 | hits: 255 ] keV + 93 374540 [sigma: 1128.97 | error: 0.0469879 | coeff: 0.0469879 | eff: 1 | fom: 18.1171 | r2int: 0.00219878 | r2eff: 0 | hits: 243 ] keV + 94 30891.5 [sigma: 439.028 | error: 0.185845 | coeff: 0.185845 | eff: 1 | fom: 1.15813 | r2int: 0.0343365 | r2eff: 0 | hits: 171 ] keV + 95 21486.2 [sigma: 468.676 | error: 0.233917 | coeff: 0.233917 | eff: 1 | fom: 0.731031 | r2int: 0.0542414 | r2eff: 0 | hits: 115 ] keV + 96 35896.7 [sigma: 479.565 | error: 0.166861 | coeff: 0.166861 | eff: 1 | fom: 1.43664 | r2int: 0.0276642 | r2eff: 0 | hits: 156 ] keV + 97 29387.5 [sigma: 364.54 | error: 0.148338 | coeff: 0.148338 | eff: 1 | fom: 1.81785 | r2int: 0.0218502 | r2eff: 0 | hits: 143 ] keV + 98 34730.5 [sigma: 442.984 | error: 0.155693 | coeff: 0.155693 | eff: 1 | fom: 1.65014 | r2int: 0.0240777 | r2eff: 0 | hits: 149 ] keV + 99 15827.5 [sigma: 399 | error: 0.257085 | coeff: 0.257085 | eff: 1 | fom: 0.605209 | r2int: 0.0654573 | r2eff: 0 | hits: 104 ] keV + 100 346734 [sigma: 465.968 | error: 0.0331096 | coeff: 0.0331096 | eff: 1 | fom: 36.4881 | r2int: 0.00109444 | r2eff: 0 | hits: 607 ] keV + 101 378267 [sigma: 469.561 | error: 0.0336082 | coeff: 0.0336082 | eff: 1 | fom: 35.4136 | r2int: 0.00112797 | r2eff: 0 | hits: 733 ] keV + 102 340631 [sigma: 482.204 | error: 0.0370502 | coeff: 0.0370502 | eff: 1 | fom: 29.1392 | r2int: 0.00137072 | r2eff: 0 | hits: 685 ] keV + 103 352735 [sigma: 455.815 | error: 0.034384 | coeff: 0.034384 | eff: 1 | fom: 33.8335 | r2int: 0.00118059 | r2eff: 0 | hits: 708 ] keV + 104 332198 [sigma: 445.799 | error: 0.032679 | coeff: 0.032679 | eff: 1 | fom: 37.4561 | r2int: 0.00106612 | r2eff: 0 | hits: 593 ] keV + 105 400839 [sigma: 497.723 | error: 0.0339828 | coeff: 0.0339828 | eff: 1 | fom: 34.6371 | r2int: 0.00115329 | r2eff: 0 | hits: 749 ] keV + 106 395486 [sigma: 489.601 | error: 0.0370566 | coeff: 0.0370566 | eff: 1 | fom: 29.1293 | r2int: 0.00137166 | r2eff: 0 | hits: 896 ] keV + 107 374577 [sigma: 488.79 | error: 0.038312 | coeff: 0.038312 | eff: 1 | fom: 27.2515 | r2int: 0.00146611 | r2eff: 0 | hits: 862 ] keV + 108 400908 [sigma: 463.252 | error: 0.0340237 | coeff: 0.0340237 | eff: 1 | fom: 34.5538 | r2int: 0.00115628 | r2eff: 0 | hits: 867 ] keV + 109 332801 [sigma: 469.996 | error: 0.0369889 | coeff: 0.0369889 | eff: 1 | fom: 29.2359 | r2int: 0.00136619 | r2eff: 0 | hits: 686 ] keV + 110 309168 [sigma: 462.956 | error: 0.0393626 | coeff: 0.0393626 | eff: 1 | fom: 25.8162 | r2int: 0.00154717 | r2eff: 0 | hits: 691 ] keV + 111 411556 [sigma: 489.836 | error: 0.0354873 | coeff: 0.0354873 | eff: 1 | fom: 31.7625 | r2int: 0.00125793 | r2eff: 0 | hits: 889 ] keV + 112 388670 [sigma: 510.9 | error: 0.0382332 | coeff: 0.0382332 | eff: 1 | fom: 27.364 | r2int: 0.00146005 | r2eff: 0 | hits: 846 ] keV + 113 390533 [sigma: 498.344 | error: 0.0371157 | coeff: 0.0371157 | eff: 1 | fom: 29.0366 | r2int: 0.00137595 | r2eff: 0 | hits: 846 ] keV + 114 340765 [sigma: 469.853 | error: 0.0362186 | coeff: 0.0362186 | eff: 1 | fom: 30.4927 | r2int: 0.00130989 | r2eff: 0 | hits: 690 ] keV + 115 398478 [sigma: 488.134 | error: 0.0334583 | coeff: 0.0334583 | eff: 1 | fom: 35.7315 | r2int: 0.00111796 | r2eff: 0 | hits: 746 ] keV + 116 382285 [sigma: 475.15 | error: 0.0360233 | coeff: 0.0360233 | eff: 1 | fom: 30.8243 | r2int: 0.00129613 | r2eff: 0 | hits: 840 ] keV + 117 389503 [sigma: 534.364 | error: 0.0388035 | coeff: 0.0388035 | eff: 1 | fom: 26.5655 | r2int: 0.00150383 | r2eff: 0 | hits: 800 ] keV + 118 403726 [sigma: 478.488 | error: 0.0351581 | coeff: 0.0351581 | eff: 1 | fom: 31.1154 | r2int: 0.00123469 | r2eff: 0 | hits: 880 ] keV + 119 342098 [sigma: 481.305 | error: 0.0368495 | coeff: 0.0368495 | eff: 1 | fom: 28.3245 | r2int: 0.00135591 | r2eff: 0 | hits: 686 ] keV + 120 327134 [sigma: 452.639 | error: 0.0336657 | coeff: 0.0336657 | eff: 1 | fom: 33.9352 | r2int: 0.00113147 | r2eff: 0 | hits: 592 ] keV + 121 350735 [sigma: 489.192 | error: 0.0362906 | coeff: 0.0362906 | eff: 1 | fom: 29.2037 | r2int: 0.00131506 | r2eff: 0 | hits: 677 ] keV + 122 322647 [sigma: 447.594 | error: 0.0361753 | coeff: 0.0361753 | eff: 1 | fom: 29.3902 | r2int: 0.00130673 | r2eff: 0 | hits: 680 ] keV + 123 371804 [sigma: 483.152 | error: 0.0335356 | coeff: 0.0335356 | eff: 1 | fom: 34.199 | r2int: 0.00112295 | r2eff: 0 | hits: 666 ] keV + 124 353100 [sigma: 467.627 | error: 0.0324667 | coeff: 0.0324667 | eff: 1 | fom: 36.4879 | r2int: 0.00105234 | r2eff: 0 | hits: 601 ] keV ============================================================ closed file mfd_tl_EnergyDeposit.out for output ============================================================ opened file mfd_tg_EnergyDeposit.out for output ============================================================ - 0 5.994340 keV - 1 442.644652 keV - 2 4108.357036 keV - 3 459.293296 keV - 4 439.224745 keV - 5 60.112620 keV - 6 1770.995029 keV - 7 2271.617163 keV - 8 1746.451690 keV - 9 308.873010 keV - 10 673.344715 keV - 11 847.057524 keV - 12 631.655778 keV - 13 2627.122941 keV - 14 805.233892 keV - 15 170.809190 keV - 16 2134.630709 keV - 17 860.720114 keV - 18 274.700743 keV - 19 39.571711 keV - 20 5262.006065 keV - 21 549.398145 keV - 22 1028.405935 keV - 23 1221.108829 keV - 24 172.396910 keV - 25 3369.623481 keV - 26 2091.045201 keV - 27 807.785401 keV - 28 1172.319705 keV - 29 3526.023408 keV - 30 1000.165698 keV - 31 8489.035813 keV - 32 1821.234774 keV - 33 9851.727496 keV - 34 5564.866839 keV - 35 697.119398 keV - 36 6619.448938 keV - 37 3738.649419 keV - 38 8569.326565 keV - 39 535.502575 keV - 40 2322.051981 keV - 41 5474.256219 keV - 42 3414.156675 keV - 43 3641.474982 keV - 44 4477.793169 keV - 45 1159.694541 keV - 46 2565.726126 keV - 47 5252.709041 keV - 48 5849.698162 keV - 49 3049.069378 keV - 50 7406.804260 keV - 51 4880.740565 keV - 52 6344.344057 keV - 53 10239.792080 keV - 54 4317.002634 keV - 55 6273.039880 keV - 56 11374.077688 keV - 57 29356.709357 keV - 58 21904.782644 keV - 59 6822.444413 keV - 60 6001.669788 keV - 61 20613.751155 keV - 62 19096.574368 keV - 63 17725.211872 keV - 64 6232.592849 keV - 65 11237.222892 keV - 66 29156.131796 keV - 67 14259.337960 keV - 68 28706.616587 keV - 69 8380.590380 keV - 70 7418.085333 keV - 71 11608.029312 keV - 72 2115.265847 keV - 73 6125.464114 keV - 74 3665.325408 keV - 75 22807.244249 keV - 76 28298.754242 keV - 77 45614.675784 keV - 78 29477.044940 keV - 79 17544.624242 keV - 80 28794.194855 keV - 81 361067.989371 keV - 82 348503.741655 keV - 83 357245.155040 keV - 84 25810.705885 keV - 85 32984.858499 keV - 86 336748.640318 keV - 87 302347.085578 keV - 88 361804.376952 keV - 89 26516.659908 keV - 90 39499.215379 keV - 91 444625.101104 keV - 92 365094.711061 keV - 93 335340.495293 keV - 94 35029.625009 keV - 95 35324.228021 keV - 96 37446.892926 keV - 97 39533.328693 keV - 98 22581.503212 keV - 99 20876.432556 keV - 100 300408.380165 keV - 101 370210.823274 keV - 102 365106.486560 keV - 103 320164.595753 keV - 104 310560.910720 keV - 105 348851.364590 keV - 106 412610.198360 keV - 107 401697.696875 keV - 108 377903.744808 keV - 109 334774.924624 keV - 110 344074.244636 keV - 111 368946.937967 keV - 112 412463.876002 keV - 113 409668.160423 keV - 114 352142.143588 keV - 115 358372.066438 keV - 116 432649.220375 keV - 117 372497.936989 keV - 118 402029.464077 keV - 119 353622.912560 keV - 120 318485.931848 keV - 121 366428.972447 keV - 122 404202.938356 keV - 123 343791.718714 keV - 124 299254.854077 keV + 0 2010.424728 keV + 1 302.745331 keV + 2 65.506861 keV + 3 91.287950 keV + 4 1513.975090 keV + 5 2082.055988 keV + 6 602.929366 keV + 7 3055.040375 keV + 8 678.495842 keV + 9 336.752931 keV + 10 2702.177786 keV + 11 765.344195 keV + 12 786.561055 keV + 13 78.658123 keV + 14 152.955194 keV + 15 626.693340 keV + 16 332.939777 keV + 17 1498.204311 keV + 18 12.394665 keV + 19 566.410724 keV + 20 22.170859 keV + 21 140.721086 keV + 22 428.074546 keV + 23 690.350387 keV + 24 528.886406 keV + 25 5833.708516 keV + 26 2074.503974 keV + 27 1855.516595 keV + 28 1752.316352 keV + 29 1107.428171 keV + 30 827.701077 keV + 31 4254.405893 keV + 32 2695.620797 keV + 33 9969.241464 keV + 34 5104.550060 keV + 35 1928.744726 keV + 36 1749.711166 keV + 37 1623.966085 keV + 38 4775.009432 keV + 39 580.904098 keV + 40 4523.512863 keV + 41 4812.850670 keV + 42 4736.844709 keV + 43 3806.460795 keV + 44 1746.258139 keV + 45 3565.757853 keV + 46 1428.492404 keV + 47 1937.225534 keV + 48 4553.228756 keV + 49 3446.929236 keV + 50 4096.070551 keV + 51 6323.274496 keV + 52 6148.519167 keV + 53 5155.621345 keV + 54 7044.208205 keV + 55 10448.343721 keV + 56 16757.566783 keV + 57 18256.034242 keV + 58 21231.583075 keV + 59 8032.443081 keV + 60 7403.489004 keV + 61 21470.793969 keV + 62 15653.272191 keV + 63 38036.706118 keV + 64 6445.536351 keV + 65 5415.966539 keV + 66 19960.857294 keV + 67 13396.880748 keV + 68 24997.132281 keV + 69 4345.609004 keV + 70 8729.696242 keV + 71 6285.732029 keV + 72 7739.734227 keV + 73 3436.622115 keV + 74 1662.427524 keV + 75 30212.405379 keV + 76 32844.377809 keV + 77 35141.480066 keV + 78 28088.611078 keV + 79 27250.759191 keV + 80 37811.073622 keV + 81 396040.375397 keV + 82 317047.815541 keV + 83 377670.869726 keV + 84 26668.143687 keV + 85 29697.493485 keV + 86 358827.465447 keV + 87 263436.272152 keV + 88 330957.002482 keV + 89 28024.788938 keV + 90 31361.422726 keV + 91 403972.954059 keV + 92 305974.691867 keV + 93 374539.582702 keV + 94 30891.452482 keV + 95 21486.220915 keV + 96 35896.717520 keV + 97 29387.456311 keV + 98 34730.547486 keV + 99 15827.502422 keV + 100 346733.599849 keV + 101 378267.286185 keV + 102 340631.456086 keV + 103 352735.305973 keV + 104 332198.378871 keV + 105 400838.930484 keV + 106 395486.069982 keV + 107 374576.874170 keV + 108 400908.196510 keV + 109 332800.634902 keV + 110 309168.319116 keV + 111 411555.911225 keV + 112 388669.935058 keV + 113 390532.665398 keV + 114 340765.046640 keV + 115 398478.163046 keV + 116 382285.021393 keV + 117 389503.281140 keV + 118 403725.545866 keV + 119 342097.917665 keV + 120 327133.519328 keV + 121 350735.335445 keV + 122 322646.695865 keV + 123 371804.180883 keV + 124 353100.142376 keV ============================================================ closed file mfd_tg_EnergyDeposit.out for output ============================================================ opened file mfd_tl_NumberOfSteps.out for output ============================================================ - 0 12.000000 steps - 1 57.000000 steps - 2 95.000000 steps - 3 63.000000 steps - 4 53.000000 steps - 5 30.000000 steps - 6 119.000000 steps - 7 91.000000 steps - 8 99.000000 steps - 9 52.000000 steps - 10 63.000000 steps - 11 76.000000 steps - 12 71.000000 steps - 13 136.000000 steps - 14 54.000000 steps - 15 36.000000 steps - 16 94.000000 steps - 17 131.000000 steps - 18 49.000000 steps - 19 12.000000 steps - 20 108.000000 steps - 21 67.000000 steps - 22 157.000000 steps - 23 53.000000 steps - 24 21.000000 steps - 25 118.000000 steps - 26 180.000000 steps - 27 146.000000 steps - 28 158.000000 steps - 29 159.000000 steps - 30 95.000000 steps - 31 329.000000 steps - 32 324.000000 steps - 33 218.000000 steps - 34 250.000000 steps - 35 148.000000 steps - 36 240.000000 steps - 37 293.000000 steps - 38 458.000000 steps - 39 115.000000 steps - 40 191.000000 steps - 41 395.000000 steps - 42 366.000000 steps - 43 329.000000 steps + 0 37.000000 steps + 1 35.000000 steps + 2 12.000000 steps + 3 19.000000 steps + 4 54.000000 steps + 5 64.000000 steps + 6 51.000000 steps + 7 121.000000 steps + 8 36.000000 steps + 9 37.000000 steps + 10 178.000000 steps + 11 167.000000 steps + 12 85.000000 steps + 13 50.000000 steps + 14 41.000000 steps + 15 41.000000 steps + 16 77.000000 steps + 17 87.000000 steps + 18 17.000000 steps + 19 74.000000 steps + 20 16.000000 steps + 21 29.000000 steps + 22 27.000000 steps + 23 63.000000 steps + 24 46.000000 steps + 25 250.000000 steps + 26 158.000000 steps + 27 108.000000 steps + 28 154.000000 steps + 29 139.000000 steps + 30 96.000000 steps + 31 291.000000 steps + 32 315.000000 steps + 33 274.000000 steps + 34 165.000000 steps + 35 272.000000 steps + 36 301.000000 steps + 37 202.000000 steps + 38 412.000000 steps + 39 120.000000 steps + 40 304.000000 steps + 41 200.000000 steps + 42 263.000000 steps + 43 201.000000 steps 44 171.000000 steps - 45 154.000000 steps - 46 337.000000 steps - 47 360.000000 steps - 48 358.000000 steps - 49 164.000000 steps - 50 392.000000 steps - 51 540.000000 steps - 52 627.000000 steps - 53 797.000000 steps - 54 393.000000 steps - 55 517.000000 steps - 56 1002.000000 steps - 57 1057.000000 steps - 58 992.000000 steps - 59 722.000000 steps - 60 540.000000 steps - 61 1098.000000 steps - 62 1220.000000 steps - 63 1059.000000 steps - 64 509.000000 steps - 65 783.000000 steps - 66 1137.000000 steps - 67 1077.000000 steps - 68 1032.000000 steps - 69 524.000000 steps - 70 584.000000 steps - 71 698.000000 steps - 72 603.000000 steps - 73 533.000000 steps - 74 478.000000 steps - 75 2741.000000 steps - 76 3754.000000 steps - 77 4818.000000 steps - 78 3844.000000 steps - 79 2620.000000 steps - 80 3734.000000 steps - 81 3931.000000 steps - 82 4408.000000 steps - 83 3990.000000 steps - 84 3578.000000 steps - 85 3587.000000 steps - 86 4420.000000 steps - 87 4727.000000 steps - 88 4564.000000 steps - 89 3588.000000 steps - 90 4897.000000 steps - 91 4371.000000 steps - 92 4521.000000 steps - 93 4055.000000 steps - 94 4139.000000 steps - 95 3239.000000 steps - 96 4805.000000 steps - 97 4450.000000 steps - 98 3499.000000 steps - 99 3584.000000 steps - 100 13967.000000 steps - 101 19242.000000 steps - 102 20658.000000 steps - 103 17355.000000 steps - 104 14177.000000 steps - 105 16506.000000 steps - 106 24546.000000 steps - 107 22759.000000 steps - 108 22056.000000 steps - 109 17373.000000 steps - 110 16297.000000 steps - 111 23446.000000 steps - 112 24948.000000 steps - 113 23705.000000 steps - 114 17319.000000 steps - 115 18628.000000 steps - 116 26133.000000 steps - 117 22343.000000 steps - 118 22065.000000 steps - 119 17592.000000 steps - 120 13423.000000 steps - 121 19357.000000 steps - 122 19860.000000 steps - 123 17194.000000 steps - 124 13502.000000 steps - 0 12 [sigma: 2.60768 | error: 0.485913 | coeff: 0.485913 | eff: 1 | fom: 0.0159822 | r2int: 0.188889 | r2eff: 0 | hits: 5 ] steps - 1 57 [sigma: 10.1395 | error: 0.470642 | coeff: 0.470642 | eff: 1 | fom: 0.0170362 | r2int: 0.189861 | r2eff: 0 | hits: 7 ] steps - 2 95 [sigma: 16.0477 | error: 0.506769 | coeff: 0.506769 | eff: 1 | fom: 0.0146938 | r2int: 0.228279 | r2eff: 0 | hits: 9 ] steps - 3 63 [sigma: 8.12472 | error: 0.407819 | coeff: 0.407819 | eff: 1 | fom: 0.0226891 | r2int: 0.149685 | r2eff: 0 | hits: 10 ] steps - 4 53 [sigma: 7.76924 | error: 0.439768 | coeff: 0.439768 | eff: 1 | fom: 0.0195122 | r2int: 0.171908 | r2eff: 0 | hits: 9 ] steps - 5 30 [sigma: 9.79796 | error: 0.8 | coeff: 0.8 | eff: 1 | fom: 0.00589623 | r2int: 0.533333 | r2eff: 0 | hits: 6 ] steps - 6 119 [sigma: 17.3234 | error: 0.460348 | coeff: 0.460348 | eff: 1 | fom: 0.0178066 | r2int: 0.190728 | r2eff: 0 | hits: 10 ] steps - 7 91 [sigma: 13.7834 | error: 0.42841 | coeff: 0.42841 | eff: 1 | fom: 0.0205605 | r2int: 0.160594 | r2eff: 0 | hits: 8 ] steps - 8 99 [sigma: 12.6794 | error: 0.405007 | coeff: 0.405007 | eff: 1 | fom: 0.0230053 | r2int: 0.147628 | r2eff: 0 | hits: 10 ] steps - 9 52 [sigma: 4.54117 | error: 0.276162 | coeff: 0.276162 | eff: 1 | fom: 0.0494795 | r2int: 0.0686391 | r2eff: 0 | hits: 10 ] steps - 10 63 [sigma: 7.63217 | error: 0.363437 | coeff: 0.363437 | eff: 1 | fom: 0.0285691 | r2int: 0.11741 | r2eff: 0 | hits: 9 ] steps - 11 76 [sigma: 8.29324 | error: 0.327365 | coeff: 0.327365 | eff: 1 | fom: 0.035212 | r2int: 0.0952601 | r2eff: 0 | hits: 9 ] steps - 12 71 [sigma: 11.1629 | error: 0.471673 | coeff: 0.471673 | eff: 1 | fom: 0.0169618 | r2int: 0.197756 | r2eff: 0 | hits: 9 ] steps - 13 136 [sigma: 10.7441 | error: 0.284841 | coeff: 0.284841 | eff: 1 | fom: 0.0465101 | r2int: 0.0748935 | r2eff: 0 | hits: 13 ] steps - 14 54 [sigma: 6.52468 | error: 0.319679 | coeff: 0.319679 | eff: 1 | fom: 0.0369254 | r2int: 0.0875955 | r2eff: 0 | hits: 7 ] steps - 15 36 [sigma: 5.62139 | error: 0.382487 | coeff: 0.382487 | eff: 1 | fom: 0.0257941 | r2int: 0.121914 | r2eff: 0 | hits: 6 ] steps - 16 94 [sigma: 9.40825 | error: 0.346714 | coeff: 0.346714 | eff: 1 | fom: 0.0313914 | r2int: 0.110193 | r2eff: 0 | hits: 12 ] steps - 17 131 [sigma: 13.3856 | error: 0.353962 | coeff: 0.353962 | eff: 1 | fom: 0.030119 | r2int: 0.114849 | r2eff: 0 | hits: 12 ] steps - 18 49 [sigma: 6.4291 | error: 0.347139 | coeff: 0.347139 | eff: 1 | fom: 0.0313147 | r2int: 0.10329 | r2eff: 0 | hits: 7 ] steps - 19 12 [sigma: 3.1305 | error: 0.583333 | coeff: 0.583333 | eff: 1 | fom: 0.0110897 | r2int: 0.272222 | r2eff: 0 | hits: 5 ] steps - 20 108 [sigma: 20.3306 | error: 0.376493 | coeff: 0.376493 | eff: 1 | fom: 0.026622 | r2int: 0.10631 | r2eff: 0 | hits: 4 ] steps - 21 67 [sigma: 10.5009 | error: 0.443297 | coeff: 0.443297 | eff: 1 | fom: 0.0192028 | r2int: 0.171948 | r2eff: 0 | hits: 8 ] steps - 22 157 [sigma: 18.0484 | error: 0.414486 | coeff: 0.414486 | eff: 1 | fom: 0.0219652 | r2int: 0.158583 | r2eff: 0 | hits: 13 ] steps - 23 53 [sigma: 9.56889 | error: 0.5988 | coeff: 0.5988 | eff: 1 | fom: 0.0105242 | r2int: 0.325965 | r2eff: 0 | hits: 11 ] steps - 24 21 [sigma: 5.2915 | error: 0.666667 | coeff: 0.666667 | eff: 1 | fom: 0.00849057 | r2int: 0.380952 | r2eff: 0 | hits: 7 ] steps - 25 118 [sigma: 15.6834 | error: 0.460415 | coeff: 0.460415 | eff: 1 | fom: 0.0178014 | r2int: 0.194317 | r2eff: 0 | hits: 12 ] steps - 26 180 [sigma: 10.2859 | error: 0.228576 | coeff: 0.228576 | eff: 1 | fom: 0.072226 | r2int: 0.0489815 | r2eff: 0 | hits: 16 ] steps - 27 146 [sigma: 5.67824 | error: 0.18242 | coeff: 0.18242 | eff: 1 | fom: 0.113399 | r2int: 0.0317644 | r2eff: 0 | hits: 22 ] steps - 28 158 [sigma: 9.25633 | error: 0.274785 | coeff: 0.274785 | eff: 1 | fom: 0.0499767 | r2int: 0.0720747 | r2eff: 0 | hits: 22 ] steps - 29 159 [sigma: 11.7386 | error: 0.313224 | coeff: 0.313224 | eff: 1 | fom: 0.0384632 | r2int: 0.0926585 | r2eff: 0 | hits: 18 ] steps - 30 95 [sigma: 7.43388 | error: 0.313005 | coeff: 0.313005 | eff: 1 | fom: 0.0385169 | r2int: 0.091849 | r2eff: 0 | hits: 16 ] steps - 31 329 [sigma: 11.6229 | error: 0.190246 | coeff: 0.190246 | eff: 1 | fom: 0.104261 | r2int: 0.0349456 | r2eff: 0 | hits: 29 ] steps - 32 324 [sigma: 10.5336 | error: 0.159271 | coeff: 0.159271 | eff: 1 | fom: 0.148758 | r2int: 0.0243103 | r2eff: 0 | hits: 24 ] steps - 33 218 [sigma: 8.34245 | error: 0.166807 | coeff: 0.166807 | eff: 1 | fom: 0.135621 | r2int: 0.0263601 | r2eff: 0 | hits: 19 ] steps - 34 250 [sigma: 13.1209 | error: 0.234714 | coeff: 0.234714 | eff: 1 | fom: 0.0684979 | r2int: 0.052336 | r2eff: 0 | hits: 20 ] steps - 35 148 [sigma: 7.02044 | error: 0.206766 | coeff: 0.206766 | eff: 1 | fom: 0.0882664 | r2int: 0.0405021 | r2eff: 0 | hits: 19 ] steps - 36 240 [sigma: 12.3863 | error: 0.24207 | coeff: 0.24207 | eff: 1 | fom: 0.064398 | r2int: 0.0559343 | r2eff: 0 | hits: 22 ] steps - 37 293 [sigma: 6.22746 | error: 0.120232 | coeff: 0.120232 | eff: 1 | fom: 0.261046 | r2int: 0.0140039 | r2eff: 0 | hits: 32 ] steps - 38 458 [sigma: 17.8689 | error: 0.224124 | coeff: 0.224124 | eff: 1 | fom: 0.0751235 | r2int: 0.0487096 | r2eff: 0 | hits: 33 ] steps - 39 115 [sigma: 6.55381 | error: 0.22072 | coeff: 0.22072 | eff: 1 | fom: 0.0774589 | r2int: 0.0454694 | r2eff: 0 | hits: 15 ] steps - 40 191 [sigma: 10.282 | error: 0.23465 | coeff: 0.23465 | eff: 1 | fom: 0.0685351 | r2int: 0.0521627 | r2eff: 0 | hits: 19 ] steps - 41 395 [sigma: 14.148 | error: 0.179089 | coeff: 0.179089 | eff: 1 | fom: 0.117657 | r2int: 0.0307899 | r2eff: 0 | hits: 25 ] steps - 42 366 [sigma: 12.6203 | error: 0.198083 | coeff: 0.198083 | eff: 1 | fom: 0.0961747 | r2int: 0.0380478 | r2eff: 0 | hits: 33 ] steps - 43 329 [sigma: 16.4038 | error: 0.263831 | coeff: 0.263831 | eff: 1 | fom: 0.0542127 | r2int: 0.0671211 | r2eff: 0 | hits: 28 ] steps - 44 171 [sigma: 8.53982 | error: 0.228856 | coeff: 0.228856 | eff: 1 | fom: 0.0720492 | r2int: 0.049881 | r2eff: 0 | hits: 21 ] steps - 45 154 [sigma: 13.7761 | error: 0.346458 | coeff: 0.346458 | eff: 1 | fom: 0.0314378 | r2int: 0.112031 | r2eff: 0 | hits: 15 ] steps - 46 337 [sigma: 16.6886 | error: 0.247606 | coeff: 0.247606 | eff: 1 | fom: 0.0615507 | r2int: 0.0588562 | r2eff: 0 | hits: 25 ] steps - 47 360 [sigma: 13.1851 | error: 0.19031 | coeff: 0.19031 | eff: 1 | fom: 0.104191 | r2int: 0.0348765 | r2eff: 0 | hits: 27 ] steps - 48 358 [sigma: 20.3689 | error: 0.284482 | coeff: 0.284482 | eff: 1 | fom: 0.0466277 | r2int: 0.077693 | r2eff: 0 | hits: 25 ] steps - 49 164 [sigma: 12.3747 | error: 0.301822 | coeff: 0.301822 | eff: 1 | fom: 0.041424 | r2int: 0.085403 | r2eff: 0 | hits: 16 ] steps - 50 392 [sigma: 13.3586 | error: 0.218206 | coeff: 0.218206 | eff: 1 | fom: 0.0792538 | r2int: 0.0464526 | r2eff: 0 | hits: 41 ] steps - 51 540 [sigma: 14.9868 | error: 0.211363 | coeff: 0.211363 | eff: 1 | fom: 0.0844689 | r2int: 0.043904 | r2eff: 0 | hits: 58 ] steps - 52 627 [sigma: 11.1071 | error: 0.153414 | coeff: 0.153414 | eff: 1 | fom: 0.160333 | r2int: 0.0232221 | r2eff: 0 | hits: 75 ] steps - 53 797 [sigma: 20.2238 | error: 0.19325 | coeff: 0.19325 | eff: 1 | fom: 0.101046 | r2int: 0.0367015 | r2eff: 0 | hits: 58 ] steps - 54 393 [sigma: 9.74042 | error: 0.168099 | coeff: 0.168099 | eff: 1 | fom: 0.133544 | r2int: 0.0276429 | r2eff: 0 | hits: 46 ] steps - 55 517 [sigma: 16.4416 | error: 0.242196 | coeff: 0.242196 | eff: 1 | fom: 0.0643309 | r2int: 0.0576476 | r2eff: 0 | hits: 58 ] steps - 56 1002 [sigma: 12.0052 | error: 0.107164 | coeff: 0.107164 | eff: 1 | fom: 0.328592 | r2int: 0.0113405 | r2eff: 0 | hits: 80 ] steps - 57 1057 [sigma: 9.29795 | error: 0.0857382 | coeff: 0.0857382 | eff: 1 | fom: 0.513341 | r2int: 0.00727366 | r2eff: 0 | hits: 95 ] steps - 58 992 [sigma: 15.199 | error: 0.135317 | coeff: 0.135317 | eff: 1 | fom: 0.206087 | r2int: 0.0180759 | r2eff: 0 | hits: 78 ] steps - 59 722 [sigma: 19.7726 | error: 0.215636 | coeff: 0.215636 | eff: 1 | fom: 0.0811542 | r2int: 0.0457489 | r2eff: 0 | hits: 62 ] steps - 60 540 [sigma: 17.0995 | error: 0.241159 | coeff: 0.241159 | eff: 1 | fom: 0.0648853 | r2int: 0.0571551 | r2eff: 0 | hits: 58 ] steps - 61 1098 [sigma: 10.8796 | error: 0.0975879 | coeff: 0.0975879 | eff: 1 | fom: 0.396243 | r2int: 0.00942523 | r2eff: 0 | hits: 97 ] steps - 62 1220 [sigma: 12.7282 | error: 0.101688 | coeff: 0.101688 | eff: 1 | fom: 0.364936 | r2int: 0.0102315 | r2eff: 0 | hits: 95 ] steps - 63 1059 [sigma: 11.9702 | error: 0.0998283 | coeff: 0.0998283 | eff: 1 | fom: 0.378658 | r2int: 0.00983792 | r2eff: 0 | hits: 78 ] steps - 64 509 [sigma: 12.0774 | error: 0.185319 | coeff: 0.185319 | eff: 1 | fom: 0.109879 | r2int: 0.0337801 | r2eff: 0 | hits: 61 ] steps - 65 783 [sigma: 18.5865 | error: 0.208296 | coeff: 0.208296 | eff: 1 | fom: 0.0869745 | r2int: 0.0428238 | r2eff: 0 | hits: 77 ] steps - 66 1137 [sigma: 13.322 | error: 0.111771 | coeff: 0.111771 | eff: 1 | fom: 0.302062 | r2int: 0.0123555 | r2eff: 0 | hits: 91 ] steps - 67 1077 [sigma: 10.7411 | error: 0.0987292 | coeff: 0.0987292 | eff: 1 | fom: 0.387135 | r2int: 0.009648 | r2eff: 0 | hits: 98 ] steps - 68 1032 [sigma: 11.0339 | error: 0.104758 | coeff: 0.104758 | eff: 1 | fom: 0.343861 | r2int: 0.0108598 | r2eff: 0 | hits: 96 ] steps - 69 524 [sigma: 8.45257 | error: 0.128035 | coeff: 0.128035 | eff: 1 | fom: 0.230196 | r2int: 0.0161327 | r2eff: 0 | hits: 63 ] steps - 70 584 [sigma: 15.5674 | error: 0.195884 | coeff: 0.195884 | eff: 1 | fom: 0.098346 | r2int: 0.0376599 | r2eff: 0 | hits: 54 ] steps - 71 698 [sigma: 15.9887 | error: 0.180365 | coeff: 0.180365 | eff: 1 | fom: 0.115998 | r2int: 0.0320069 | r2eff: 0 | hits: 62 ] steps - 72 603 [sigma: 17.56 | error: 0.225571 | coeff: 0.225571 | eff: 1 | fom: 0.0741633 | r2int: 0.0500341 | r2eff: 0 | hits: 60 ] steps - 73 533 [sigma: 9.65719 | error: 0.150504 | coeff: 0.150504 | eff: 1 | fom: 0.166593 | r2int: 0.0223232 | r2eff: 0 | hits: 69 ] steps - 74 478 [sigma: 13.4493 | error: 0.192895 | coeff: 0.192895 | eff: 1 | fom: 0.101418 | r2int: 0.0364167 | r2eff: 0 | hits: 47 ] steps - 75 2741 [sigma: 25.3692 | error: 0.113733 | coeff: 0.113733 | eff: 1 | fom: 0.29173 | r2int: 0.0128495 | r2eff: 0 | hits: 151 ] steps - 76 3754 [sigma: 22.8962 | error: 0.0914871 | coeff: 0.0914871 | eff: 1 | fom: 0.450852 | r2int: 0.00833269 | r2eff: 0 | hits: 225 ] steps - 77 4818 [sigma: 26.2488 | error: 0.0869988 | coeff: 0.0869988 | eff: 1 | fom: 0.498572 | r2int: 0.0075391 | r2eff: 0 | hits: 255 ] steps - 78 3844 [sigma: 23.1894 | error: 0.0894782 | coeff: 0.0894782 | eff: 1 | fom: 0.471324 | r2int: 0.00796996 | r2eff: 0 | hits: 220 ] steps - 79 2620 [sigma: 23.5152 | error: 0.105435 | coeff: 0.105435 | eff: 1 | fom: 0.339454 | r2int: 0.0110361 | r2eff: 0 | hits: 138 ] steps - 80 3734 [sigma: 24.0983 | error: 0.0905826 | coeff: 0.0905826 | eff: 1 | fom: 0.459901 | r2int: 0.00816356 | r2eff: 0 | hits: 197 ] steps - 81 3931 [sigma: 12.2389 | error: 0.0556947 | coeff: 0.0556947 | eff: 1 | fom: 1.21654 | r2int: 0.00309221 | r2eff: 0 | hits: 320 ] steps - 82 4408 [sigma: 12.0959 | error: 0.0505984 | coeff: 0.0505984 | eff: 1 | fom: 1.47394 | r2int: 0.00255267 | r2eff: 0 | hits: 340 ] steps - 83 3990 [sigma: 12.3075 | error: 0.0534267 | coeff: 0.0534267 | eff: 1 | fom: 1.32202 | r2int: 0.00284489 | r2eff: 0 | hits: 300 ] steps - 84 3578 [sigma: 21.1372 | error: 0.0847891 | coeff: 0.0847891 | eff: 1 | fom: 0.524896 | r2int: 0.0071543 | r2eff: 0 | hits: 206 ] steps - 85 3587 [sigma: 19.387 | error: 0.0845982 | coeff: 0.0845982 | eff: 1 | fom: 0.527268 | r2int: 0.00712765 | r2eff: 0 | hits: 245 ] steps - 86 4420 [sigma: 13.6829 | error: 0.0570814 | coeff: 0.0570814 | eff: 1 | fom: 1.15815 | r2int: 0.0032487 | r2eff: 0 | hits: 340 ] steps - 87 4727 [sigma: 14.6591 | error: 0.0580999 | coeff: 0.0580999 | eff: 1 | fom: 1.1179 | r2int: 0.00336599 | r2eff: 0 | hits: 351 ] steps - 88 4564 [sigma: 12.9293 | error: 0.0524657 | coeff: 0.0524657 | eff: 1 | fom: 1.37089 | r2int: 0.00274463 | r2eff: 0 | hits: 343 ] steps - 89 3588 [sigma: 21.3593 | error: 0.088096 | coeff: 0.088096 | eff: 1 | fom: 0.48623 | r2int: 0.00772547 | r2eff: 0 | hits: 219 ] steps - 90 4897 [sigma: 29.3796 | error: 0.0933304 | coeff: 0.0933304 | eff: 1 | fom: 0.433219 | r2int: 0.00867457 | r2eff: 0 | hits: 242 ] steps - 91 4371 [sigma: 12.7932 | error: 0.0550682 | coeff: 0.0550682 | eff: 1 | fom: 1.24438 | r2int: 0.00302394 | r2eff: 0 | hits: 354 ] steps - 92 4521 [sigma: 13.3722 | error: 0.0546192 | coeff: 0.0546192 | eff: 1 | fom: 1.26492 | r2int: 0.00297451 | r2eff: 0 | hits: 341 ] steps - 93 4055 [sigma: 14.1583 | error: 0.0584252 | coeff: 0.0584252 | eff: 1 | fom: 1.10549 | r2int: 0.00340132 | r2eff: 0 | hits: 280 ] steps - 94 4139 [sigma: 23.6114 | error: 0.083646 | coeff: 0.083646 | eff: 1 | fom: 0.539341 | r2int: 0.00696411 | r2eff: 0 | hits: 215 ] steps - 95 3239 [sigma: 28.4226 | error: 0.114749 | coeff: 0.114749 | eff: 1 | fom: 0.286584 | r2int: 0.0130904 | r2eff: 0 | hits: 171 ] steps - 96 4805 [sigma: 28.7611 | error: 0.0913672 | coeff: 0.0913672 | eff: 1 | fom: 0.452037 | r2int: 0.00831213 | r2eff: 0 | hits: 233 ] steps - 97 4450 [sigma: 24.4512 | error: 0.0842316 | coeff: 0.0842316 | eff: 1 | fom: 0.531869 | r2int: 0.00706477 | r2eff: 0 | hits: 235 ] steps - 98 3499 [sigma: 22.6506 | error: 0.0929114 | coeff: 0.0929114 | eff: 1 | fom: 0.437136 | r2int: 0.00859062 | r2eff: 0 | hits: 206 ] steps - 99 3584 [sigma: 28.6717 | error: 0.100239 | coeff: 0.100239 | eff: 1 | fom: 0.375564 | r2int: 0.00998379 | r2eff: 0 | hits: 157 ] steps - 100 13967 [sigma: 29.2542 | error: 0.0507895 | coeff: 0.0507895 | eff: 1 | fom: 1.46287 | r2int: 0.00257518 | r2eff: 0 | hits: 588 ] steps - 101 19242 [sigma: 28.3371 | error: 0.0413922 | coeff: 0.0413922 | eff: 1 | fom: 2.20251 | r2int: 0.00171115 | r2eff: 0 | hits: 790 ] steps - 102 20658 [sigma: 30.6902 | error: 0.0416507 | coeff: 0.0416507 | eff: 1 | fom: 2.17525 | r2int: 0.00173257 | r2eff: 0 | hits: 786 ] steps - 103 17355 [sigma: 27.2701 | error: 0.0426285 | coeff: 0.0426285 | eff: 1 | fom: 2.0766 | r2int: 0.00181472 | r2eff: 0 | hits: 736 ] steps - 104 14177 [sigma: 27.3791 | error: 0.0481261 | coeff: 0.0481261 | eff: 1 | fom: 1.62927 | r2int: 0.00231239 | r2eff: 0 | hits: 621 ] steps - 105 16506 [sigma: 26.7462 | error: 0.0441984 | coeff: 0.0441984 | eff: 1 | fom: 1.93171 | r2int: 0.00195087 | r2eff: 0 | hits: 744 ] steps - 106 24546 [sigma: 28.8013 | error: 0.0363553 | coeff: 0.0363553 | eff: 1 | fom: 2.85508 | r2int: 0.00132033 | r2eff: 0 | hits: 960 ] steps - 107 22759 [sigma: 27.2173 | error: 0.0370148 | coeff: 0.0370148 | eff: 1 | fom: 2.7439 | r2int: 0.00136867 | r2eff: 0 | hits: 958 ] steps - 108 22056 [sigma: 29.2957 | error: 0.0402657 | coeff: 0.0402657 | eff: 1 | fom: 2.31872 | r2int: 0.00161956 | r2eff: 0 | hits: 919 ] steps - 109 17373 [sigma: 26.4673 | error: 0.0413308 | coeff: 0.0413308 | eff: 1 | fom: 2.20075 | r2int: 0.00170592 | r2eff: 0 | hits: 736 ] steps - 110 16297 [sigma: 25.0138 | error: 0.0426462 | coeff: 0.0426462 | eff: 1 | fom: 2.06709 | r2int: 0.00181634 | r2eff: 0 | hits: 772 ] steps - 111 23446 [sigma: 29.3022 | error: 0.0388034 | coeff: 0.0388034 | eff: 1 | fom: 2.49677 | r2int: 0.00150414 | r2eff: 0 | hits: 964 ] steps - 112 24948 [sigma: 27.6482 | error: 0.035791 | coeff: 0.035791 | eff: 1 | fom: 2.93475 | r2int: 0.00127977 | r2eff: 0 | hits: 1043 ] steps - 113 23705 [sigma: 28.8154 | error: 0.0377419 | coeff: 0.0377419 | eff: 1 | fom: 2.63919 | r2int: 0.00142297 | r2eff: 0 | hits: 964 ] steps - 114 17319 [sigma: 24.3655 | error: 0.0392411 | coeff: 0.0392411 | eff: 1 | fom: 2.43223 | r2int: 0.00153789 | r2eff: 0 | hits: 778 ] steps - 115 18628 [sigma: 27.1294 | error: 0.041244 | coeff: 0.041244 | eff: 1 | fom: 2.20175 | r2int: 0.00169895 | r2eff: 0 | hits: 802 ] steps - 116 26133 [sigma: 30.9601 | error: 0.0376135 | coeff: 0.0376135 | eff: 1 | fom: 2.64729 | r2int: 0.00141337 | r2eff: 0 | hits: 1008 ] steps - 117 22343 [sigma: 25.6716 | error: 0.035987 | coeff: 0.035987 | eff: 1 | fom: 2.89199 | r2int: 0.00129375 | r2eff: 0 | hits: 981 ] steps - 118 22065 [sigma: 26.0754 | error: 0.0362512 | coeff: 0.0362512 | eff: 1 | fom: 2.84999 | r2int: 0.00131275 | r2eff: 0 | hits: 941 ] steps - 119 17592 [sigma: 29.4706 | error: 0.0454478 | coeff: 0.0454478 | eff: 1 | fom: 1.81328 | r2int: 0.00206269 | r2eff: 0 | hits: 736 ] steps - 120 13423 [sigma: 23.7382 | error: 0.0446693 | coeff: 0.0446693 | eff: 1 | fom: 1.87703 | r2int: 0.00199222 | r2eff: 0 | hits: 638 ] steps - 121 19357 [sigma: 27.2649 | error: 0.0392371 | coeff: 0.0392371 | eff: 1 | fom: 2.43273 | r2int: 0.00153757 | r2eff: 0 | hits: 776 ] steps - 122 19860 [sigma: 26.9163 | error: 0.0387863 | coeff: 0.0387863 | eff: 1 | fom: 2.48961 | r2int: 0.00150254 | r2eff: 0 | hits: 819 ] steps - 123 17194 [sigma: 26.6276 | error: 0.04244 | coeff: 0.04244 | eff: 1 | fom: 2.0794 | r2int: 0.00179876 | r2eff: 0 | hits: 751 ] steps - 124 13502 [sigma: 25.2997 | error: 0.0462789 | coeff: 0.0462789 | eff: 1 | fom: 1.74873 | r2int: 0.00213822 | r2eff: 0 | hits: 610 ] steps + 45 149.000000 steps + 46 146.000000 steps + 47 227.000000 steps + 48 199.000000 steps + 49 126.000000 steps + 50 356.000000 steps + 51 871.000000 steps + 52 564.000000 steps + 53 723.000000 steps + 54 478.000000 steps + 55 819.000000 steps + 56 896.000000 steps + 57 862.000000 steps + 58 868.000000 steps + 59 457.000000 steps + 60 719.000000 steps + 61 1189.000000 steps + 62 1320.000000 steps + 63 1477.000000 steps + 64 625.000000 steps + 65 689.000000 steps + 66 1165.000000 steps + 67 1130.000000 steps + 68 1264.000000 steps + 69 471.000000 steps + 70 523.000000 steps + 71 623.000000 steps + 72 730.000000 steps + 73 444.000000 steps + 74 455.000000 steps + 75 3763.000000 steps + 76 4088.000000 steps + 77 4426.000000 steps + 78 4253.000000 steps + 79 3392.000000 steps + 80 4460.000000 steps + 81 4029.000000 steps + 82 4007.000000 steps + 83 3861.000000 steps + 84 3796.000000 steps + 85 3772.000000 steps + 86 4343.000000 steps + 87 4357.000000 steps + 88 3538.000000 steps + 89 3953.000000 steps + 90 4614.000000 steps + 91 4239.000000 steps + 92 4133.000000 steps + 93 3860.000000 steps + 94 3825.000000 steps + 95 3163.000000 steps + 96 3830.000000 steps + 97 3555.000000 steps + 98 4316.000000 steps + 99 2999.000000 steps + 100 16049.000000 steps + 101 19261.000000 steps + 102 17554.000000 steps + 103 16954.000000 steps + 104 13107.000000 steps + 105 19716.000000 steps + 106 24782.000000 steps + 107 22492.000000 steps + 108 23125.000000 steps + 109 16404.000000 steps + 110 17972.000000 steps + 111 23343.000000 steps + 112 23157.000000 steps + 113 21845.000000 steps + 114 17672.000000 steps + 115 20310.000000 steps + 116 23612.000000 steps + 117 22294.000000 steps + 118 22415.000000 steps + 119 18272.000000 steps + 120 14129.000000 steps + 121 18014.000000 steps + 122 16135.000000 steps + 123 18069.000000 steps + 124 14403.000000 steps + 0 37 [sigma: 17.0978 | error: 0.800383 | coeff: 0.800383 | eff: 1 | fom: 0.0600386 | r2int: 0.427076 | r2eff: 0 | hits: 3 ] steps + 1 35 [sigma: 5.03598 | error: 0.431656 | coeff: 0.431656 | eff: 1 | fom: 0.20642 | r2int: 0.165624 | r2eff: 0 | hits: 9 ] steps + 2 12 [sigma: 3.1305 | error: 0.583333 | coeff: 0.583333 | eff: 1 | fom: 0.11303 | r2int: 0.272222 | r2eff: 0 | hits: 5 ] steps + 3 19 [sigma: 3.71035 | error: 0.47834 | coeff: 0.47834 | eff: 1 | fom: 0.168095 | r2int: 0.190674 | r2eff: 0 | hits: 6 ] steps + 4 54 [sigma: 11.4018 | error: 0.517194 | coeff: 0.517194 | eff: 1 | fom: 0.143787 | r2int: 0.222908 | r2eff: 0 | hits: 6 ] steps + 5 64 [sigma: 16.1462 | error: 0.564125 | coeff: 0.564125 | eff: 1 | fom: 0.120858 | r2int: 0.25459 | r2eff: 0 | hits: 5 ] steps + 6 51 [sigma: 10.4835 | error: 0.54386 | coeff: 0.54386 | eff: 1 | fom: 0.130033 | r2int: 0.253529 | r2eff: 0 | hits: 7 ] steps + 7 121 [sigma: 12.5079 | error: 0.358087 | coeff: 0.358087 | eff: 1 | fom: 0.29995 | r2int: 0.117541 | r2eff: 0 | hits: 12 ] steps + 8 36 [sigma: 8.49706 | error: 0.527778 | coeff: 0.527778 | eff: 1 | fom: 0.138078 | r2int: 0.22284 | r2eff: 0 | hits: 5 ] steps + 9 37 [sigma: 8.65475 | error: 0.618874 | coeff: 0.618874 | eff: 1 | fom: 0.100421 | r2int: 0.32829 | r2eff: 0 | hits: 7 ] steps + 10 178 [sigma: 27.3756 | error: 0.532764 | coeff: 0.532764 | eff: 1 | fom: 0.135506 | r2int: 0.260184 | r2eff: 0 | hits: 12 ] steps + 11 167 [sigma: 19.7229 | error: 0.441895 | coeff: 0.441895 | eff: 1 | fom: 0.196965 | r2int: 0.181323 | r2eff: 0 | hits: 14 ] steps + 12 85 [sigma: 11.0126 | error: 0.388681 | coeff: 0.388681 | eff: 1 | fom: 0.25459 | r2int: 0.134287 | r2eff: 0 | hits: 9 ] steps + 13 50 [sigma: 5.39135 | error: 0.264121 | coeff: 0.264121 | eff: 1 | fom: 0.551341 | r2int: 0.0581333 | r2eff: 0 | hits: 6 ] steps + 14 41 [sigma: 4.8795 | error: 0.314877 | coeff: 0.314877 | eff: 1 | fom: 0.387923 | r2int: 0.0849834 | r2eff: 0 | hits: 7 ] steps + 15 41 [sigma: 9.47453 | error: 0.566043 | coeff: 0.566043 | eff: 1 | fom: 0.120041 | r2int: 0.267004 | r2eff: 0 | hits: 6 ] steps + 16 77 [sigma: 6.48074 | error: 0.279145 | coeff: 0.279145 | eff: 1 | fom: 0.49359 | r2int: 0.0708383 | r2eff: 0 | hits: 11 ] steps + 17 87 [sigma: 7.56908 | error: 0.288549 | coeff: 0.288549 | eff: 1 | fom: 0.461941 | r2int: 0.0756915 | r2eff: 0 | hits: 11 ] steps + 18 17 [sigma: 4.71699 | error: 0.55494 | coeff: 0.55494 | eff: 1 | fom: 0.124892 | r2int: 0.230969 | r2eff: 0 | hits: 4 ] steps + 19 74 [sigma: 11.4134 | error: 0.377799 | coeff: 0.377799 | eff: 1 | fom: 0.269467 | r2int: 0.118943 | r2eff: 0 | hits: 6 ] steps + 20 16 [sigma: 6 | error: 0.75 | coeff: 0.75 | eff: 1 | fom: 0.0683761 | r2int: 0.421875 | r2eff: 0 | hits: 4 ] steps + 21 29 [sigma: 7.76209 | error: 0.535316 | coeff: 0.535316 | eff: 1 | fom: 0.134216 | r2int: 0.214923 | r2eff: 0 | hits: 4 ] steps + 22 27 [sigma: 4.40576 | error: 0.461532 | coeff: 0.461532 | eff: 1 | fom: 0.18056 | r2int: 0.186385 | r2eff: 0 | hits: 8 ] steps + 23 63 [sigma: 9.32642 | error: 0.418716 | coeff: 0.418716 | eff: 1 | fom: 0.219375 | r2int: 0.153408 | r2eff: 0 | hits: 8 ] steps + 24 46 [sigma: 11.1206 | error: 0.483502 | coeff: 0.483502 | eff: 1 | fom: 0.164524 | r2int: 0.175331 | r2eff: 0 | hits: 4 ] steps + 25 250 [sigma: 20.548 | error: 0.338886 | coeff: 0.338886 | eff: 1 | fom: 0.334902 | r2int: 0.108088 | r2eff: 0 | hits: 17 ] steps + 26 158 [sigma: 10.5827 | error: 0.328128 | coeff: 0.328128 | eff: 1 | fom: 0.357223 | r2int: 0.103182 | r2eff: 0 | hits: 24 ] steps + 27 108 [sigma: 6.82642 | error: 0.244802 | coeff: 0.244802 | eff: 1 | fom: 0.641796 | r2int: 0.0559328 | r2eff: 0 | hits: 15 ] steps + 28 154 [sigma: 11.577 | error: 0.318941 | coeff: 0.318941 | eff: 1 | fom: 0.378099 | r2int: 0.096072 | r2eff: 0 | hits: 18 ] steps + 29 139 [sigma: 8.91664 | error: 0.272159 | coeff: 0.272159 | eff: 1 | fom: 0.519255 | r2int: 0.0699555 | r2eff: 0 | hits: 18 ] steps + 30 96 [sigma: 5.70589 | error: 0.272371 | coeff: 0.272371 | eff: 1 | fom: 0.518446 | r2int: 0.0706535 | r2eff: 0 | hits: 21 ] steps + 31 291 [sigma: 11.6705 | error: 0.196473 | coeff: 0.196473 | eff: 1 | fom: 0.99637 | r2int: 0.0369932 | r2eff: 0 | hits: 24 ] steps + 32 315 [sigma: 11.4427 | error: 0.192219 | coeff: 0.192219 | eff: 1 | fom: 1.04096 | r2int: 0.0356286 | r2eff: 0 | hits: 28 ] steps + 33 274 [sigma: 13.0862 | error: 0.218862 | coeff: 0.218862 | eff: 1 | fom: 0.802942 | r2int: 0.0456198 | r2eff: 0 | hits: 21 ] steps + 34 165 [sigma: 12.2462 | error: 0.306016 | coeff: 0.306016 | eff: 1 | fom: 0.410714 | r2int: 0.088137 | r2eff: 0 | hits: 17 ] steps + 35 272 [sigma: 17.3824 | error: 0.299745 | coeff: 0.299745 | eff: 1 | fom: 0.428078 | r2int: 0.085763 | r2eff: 0 | hits: 22 ] steps + 36 301 [sigma: 12.8468 | error: 0.213402 | coeff: 0.213402 | eff: 1 | fom: 0.84456 | r2int: 0.0437187 | r2eff: 0 | hits: 25 ] steps + 37 202 [sigma: 6.55462 | error: 0.174741 | coeff: 0.174741 | eff: 1 | fom: 1.25961 | r2int: 0.0294816 | r2eff: 0 | hits: 29 ] steps + 38 412 [sigma: 14.1784 | error: 0.182099 | coeff: 0.182099 | eff: 1 | fom: 1.15987 | r2int: 0.0319759 | r2eff: 0 | hits: 28 ] steps + 39 120 [sigma: 6.74168 | error: 0.244886 | coeff: 0.244886 | eff: 1 | fom: 0.641356 | r2int: 0.0568129 | r2eff: 0 | hits: 19 ] steps + 40 304 [sigma: 20.2073 | error: 0.289741 | coeff: 0.289741 | eff: 1 | fom: 0.458148 | r2int: 0.0795317 | r2eff: 0 | hits: 19 ] steps + 41 200 [sigma: 9.93287 | error: 0.227591 | coeff: 0.227591 | eff: 1 | fom: 0.742537 | r2int: 0.049331 | r2eff: 0 | hits: 21 ] steps + 42 263 [sigma: 9.19746 | error: 0.174857 | coeff: 0.174857 | eff: 1 | fom: 1.25795 | r2int: 0.0293519 | r2eff: 0 | hits: 25 ] steps + 43 201 [sigma: 7.80214 | error: 0.194083 | coeff: 0.194083 | eff: 1 | fom: 1.02106 | r2int: 0.0361615 | r2eff: 0 | hits: 25 ] steps + 44 171 [sigma: 6.15138 | error: 0.160876 | coeff: 0.160876 | eff: 1 | fom: 1.48609 | r2int: 0.0245871 | r2eff: 0 | hits: 20 ] steps + 45 149 [sigma: 10.8368 | error: 0.262232 | coeff: 0.262232 | eff: 1 | fom: 0.559313 | r2int: 0.063476 | r2eff: 0 | hits: 13 ] steps + 46 146 [sigma: 9.54461 | error: 0.306631 | coeff: 0.306631 | eff: 1 | fom: 0.409066 | r2int: 0.0897491 | r2eff: 0 | hits: 22 ] steps + 47 227 [sigma: 17.854 | error: 0.351743 | coeff: 0.351743 | eff: 1 | fom: 0.310868 | r2int: 0.117537 | r2eff: 0 | hits: 20 ] steps + 48 199 [sigma: 15.0697 | error: 0.312231 | coeff: 0.312231 | eff: 1 | fom: 0.394526 | r2int: 0.0917535 | r2eff: 0 | hits: 17 ] steps + 49 126 [sigma: 14.1437 | error: 0.354971 | coeff: 0.354971 | eff: 1 | fom: 0.30524 | r2int: 0.113404 | r2eff: 0 | hits: 10 ] steps + 50 356 [sigma: 7.95511 | error: 0.16268 | coeff: 0.16268 | eff: 1 | fom: 1.45331 | r2int: 0.0259654 | r2eff: 0 | hits: 53 ] steps + 51 871 [sigma: 21.8244 | error: 0.205098 | coeff: 0.205098 | eff: 1 | fom: 0.914334 | r2int: 0.0414373 | r2eff: 0 | hits: 67 ] steps + 52 564 [sigma: 12.1267 | error: 0.178603 | coeff: 0.178603 | eff: 1 | fom: 1.20573 | r2int: 0.0314368 | r2eff: 0 | hits: 69 ] steps + 53 723 [sigma: 13.5452 | error: 0.147518 | coeff: 0.147518 | eff: 1 | fom: 1.76741 | r2int: 0.0214105 | r2eff: 0 | hits: 62 ] steps + 54 478 [sigma: 16.8068 | error: 0.208013 | coeff: 0.208013 | eff: 1 | fom: 0.888887 | r2int: 0.0420331 | r2eff: 0 | hits: 35 ] steps + 55 819 [sigma: 15.7735 | error: 0.166792 | coeff: 0.166792 | eff: 1 | fom: 1.38253 | r2int: 0.0274487 | r2eff: 0 | hits: 75 ] steps + 56 896 [sigma: 10.3521 | error: 0.107765 | coeff: 0.107765 | eff: 1 | fom: 3.31183 | r2int: 0.0114799 | r2eff: 0 | hits: 87 ] steps + 57 862 [sigma: 12.4048 | error: 0.122954 | coeff: 0.122954 | eff: 1 | fom: 2.54412 | r2int: 0.0149107 | r2eff: 0 | hits: 73 ] steps + 58 868 [sigma: 9.36413 | error: 0.0940491 | coeff: 0.0940491 | eff: 1 | fom: 4.34828 | r2int: 0.00872885 | r2eff: 0 | hits: 76 ] steps + 59 457 [sigma: 8.89517 | error: 0.156926 | coeff: 0.156926 | eff: 1 | fom: 1.56184 | r2int: 0.0242469 | r2eff: 0 | hits: 65 ] steps + 60 719 [sigma: 13.2612 | error: 0.168033 | coeff: 0.168033 | eff: 1 | fom: 1.36219 | r2int: 0.0278949 | r2eff: 0 | hits: 83 ] steps + 61 1189 [sigma: 15.5955 | error: 0.133762 | coeff: 0.133762 | eff: 1 | fom: 2.14961 | r2int: 0.0177203 | r2eff: 0 | hits: 104 ] steps + 62 1320 [sigma: 12.536 | error: 0.0973149 | coeff: 0.0973149 | eff: 1 | fom: 4.06133 | r2int: 0.00938 | r2eff: 0 | hits: 105 ] steps + 63 1477 [sigma: 17.238 | error: 0.118447 | coeff: 0.118447 | eff: 1 | fom: 2.74143 | r2int: 0.0138935 | r2eff: 0 | hits: 103 ] steps + 64 625 [sigma: 10.8689 | error: 0.142345 | coeff: 0.142345 | eff: 1 | fom: 1.89819 | r2int: 0.0199597 | r2eff: 0 | hits: 67 ] steps + 65 689 [sigma: 14.7111 | error: 0.169471 | coeff: 0.169471 | eff: 1 | fom: 1.33917 | r2int: 0.0282645 | r2eff: 0 | hits: 63 ] steps + 66 1165 [sigma: 16.1797 | error: 0.128042 | coeff: 0.128042 | eff: 1 | fom: 2.34596 | r2int: 0.0162019 | r2eff: 0 | hits: 85 ] steps + 67 1130 [sigma: 11.7384 | error: 0.0974479 | coeff: 0.0974479 | eff: 1 | fom: 4.05025 | r2int: 0.00938818 | r2eff: 0 | hits: 88 ] steps + 68 1264 [sigma: 15.2708 | error: 0.117133 | coeff: 0.117133 | eff: 1 | fom: 2.80331 | r2int: 0.0135741 | r2eff: 0 | hits: 94 ] steps + 69 471 [sigma: 10.5115 | error: 0.148037 | coeff: 0.148037 | eff: 1 | fom: 1.75503 | r2int: 0.021417 | r2eff: 0 | hits: 44 ] steps + 70 523 [sigma: 20.0115 | error: 0.238951 | coeff: 0.238951 | eff: 1 | fom: 0.673608 | r2int: 0.0556337 | r2eff: 0 | hits: 39 ] steps + 71 623 [sigma: 14.1855 | error: 0.179288 | coeff: 0.179288 | eff: 1 | fom: 1.19653 | r2int: 0.0316257 | r2eff: 0 | hits: 62 ] steps + 72 730 [sigma: 14.5414 | error: 0.164262 | coeff: 0.164262 | eff: 1 | fom: 1.42545 | r2int: 0.0265852 | r2eff: 0 | hits: 68 ] steps + 73 444 [sigma: 10.228 | error: 0.16451 | coeff: 0.16451 | eff: 1 | fom: 1.42116 | r2int: 0.0265329 | r2eff: 0 | hits: 51 ] steps + 74 455 [sigma: 35.3443 | error: 0.418319 | coeff: 0.418319 | eff: 1 | fom: 0.219792 | r2int: 0.168956 | r2eff: 0 | hits: 29 ] steps + 75 3763 [sigma: 28.2121 | error: 0.096595 | coeff: 0.096595 | eff: 1 | fom: 4.12209 | r2int: 0.00927438 | r2eff: 0 | hits: 166 ] steps + 76 4088 [sigma: 26.2885 | error: 0.095165 | coeff: 0.095165 | eff: 1 | fom: 4.2469 | r2int: 0.00901502 | r2eff: 0 | hits: 219 ] steps + 77 4426 [sigma: 26.3378 | error: 0.0880624 | coeff: 0.0880624 | eff: 1 | fom: 4.95959 | r2int: 0.00771957 | r2eff: 0 | hits: 219 ] steps + 78 4253 [sigma: 26.1554 | error: 0.0903842 | coeff: 0.0903842 | eff: 1 | fom: 4.70806 | r2int: 0.00813148 | r2eff: 0 | hits: 216 ] steps + 79 3392 [sigma: 32.9606 | error: 0.118214 | coeff: 0.118214 | eff: 1 | fom: 2.75224 | r2int: 0.0138802 | r2eff: 0 | hits: 148 ] steps + 80 4460 [sigma: 27.4472 | error: 0.0933312 | coeff: 0.0933312 | eff: 1 | fom: 4.41543 | r2int: 0.00867285 | r2eff: 0 | hits: 230 ] steps + 81 4029 [sigma: 11.7799 | error: 0.0546989 | coeff: 0.0546989 | eff: 1 | fom: 12.8549 | r2int: 0.00298342 | r2eff: 0 | hits: 350 ] steps + 82 4007 [sigma: 11.9146 | error: 0.0531075 | coeff: 0.0531075 | eff: 1 | fom: 13.6369 | r2int: 0.00281156 | r2eff: 0 | hits: 319 ] steps + 83 3861 [sigma: 12.9308 | error: 0.0586807 | coeff: 0.0586807 | eff: 1 | fom: 11.1696 | r2int: 0.0034322 | r2eff: 0 | hits: 307 ] steps + 84 3796 [sigma: 23.6579 | error: 0.0876966 | coeff: 0.0876966 | eff: 1 | fom: 5.00105 | r2int: 0.00765185 | r2eff: 0 | hits: 198 ] steps + 85 3772 [sigma: 24.8683 | error: 0.100851 | coeff: 0.100851 | eff: 1 | fom: 3.78148 | r2int: 0.0101276 | r2eff: 0 | hits: 234 ] steps + 86 4343 [sigma: 13.3352 | error: 0.055863 | coeff: 0.055863 | eff: 1 | fom: 12.3248 | r2int: 0.00311124 | r2eff: 0 | hits: 331 ] steps + 87 4357 [sigma: 11.6382 | error: 0.0493983 | coeff: 0.0493983 | eff: 1 | fom: 15.7617 | r2int: 0.00243306 | r2eff: 0 | hits: 342 ] steps + 88 3538 [sigma: 11.4702 | error: 0.058536 | coeff: 0.058536 | eff: 1 | fom: 11.2249 | r2int: 0.00341595 | r2eff: 0 | hits: 326 ] steps + 89 3953 [sigma: 24.1233 | error: 0.0933507 | coeff: 0.0933507 | eff: 1 | fom: 4.41359 | r2int: 0.00867711 | r2eff: 0 | hits: 234 ] steps + 90 4614 [sigma: 29.3091 | error: 0.0948589 | coeff: 0.0948589 | eff: 1 | fom: 4.27436 | r2int: 0.00895785 | r2eff: 0 | hits: 223 ] steps + 91 4239 [sigma: 13.4857 | error: 0.0562837 | coeff: 0.0562837 | eff: 1 | fom: 12.1412 | r2int: 0.00315773 | r2eff: 0 | hits: 313 ] steps + 92 4133 [sigma: 12.3034 | error: 0.0524977 | coeff: 0.0524977 | eff: 1 | fom: 13.9555 | r2int: 0.00274715 | r2eff: 0 | hits: 311 ] steps + 93 3860 [sigma: 15.047 | error: 0.067631 | coeff: 0.067631 | eff: 1 | fom: 8.40882 | r2int: 0.00455876 | r2eff: 0 | hits: 301 ] steps + 94 3825 [sigma: 23.2478 | error: 0.0893258 | coeff: 0.0893258 | eff: 1 | fom: 4.82029 | r2int: 0.00794215 | r2eff: 0 | hits: 216 ] steps + 95 3163 [sigma: 25.9776 | error: 0.100923 | coeff: 0.100923 | eff: 1 | fom: 3.77615 | r2int: 0.0101179 | r2eff: 0 | hits: 151 ] steps + 96 3830 [sigma: 22.2014 | error: 0.0851941 | coeff: 0.0851941 | eff: 1 | fom: 5.29917 | r2int: 0.00722443 | r2eff: 0 | hits: 216 ] steps + 97 3555 [sigma: 22.982 | error: 0.0921077 | coeff: 0.0921077 | eff: 1 | fom: 4.53351 | r2int: 0.00844204 | r2eff: 0 | hits: 203 ] steps + 98 4316 [sigma: 28.0499 | error: 0.0919105 | coeff: 0.0919105 | eff: 1 | fom: 4.55299 | r2int: 0.0084053 | r2eff: 0 | hits: 200 ] steps + 99 2999 [sigma: 34.3722 | error: 0.135126 | coeff: 0.135126 | eff: 1 | fom: 2.10644 | r2int: 0.0181276 | r2eff: 0 | hits: 139 ] steps + 100 16049 [sigma: 29.963 | error: 0.0476352 | coeff: 0.0476352 | eff: 1 | fom: 16.95 | r2int: 0.00226563 | r2eff: 0 | hits: 651 ] steps + 101 19261 [sigma: 28.9142 | error: 0.0427242 | coeff: 0.0427242 | eff: 1 | fom: 21.0707 | r2int: 0.00182311 | r2eff: 0 | hits: 810 ] steps + 102 17554 [sigma: 26.1326 | error: 0.0415771 | coeff: 0.0415771 | eff: 1 | fom: 22.2494 | r2int: 0.00172644 | r2eff: 0 | hits: 780 ] steps + 103 16954 [sigma: 25.4861 | error: 0.0421715 | coeff: 0.0421715 | eff: 1 | fom: 21.6266 | r2int: 0.00177618 | r2eff: 0 | hits: 787 ] steps + 104 13107 [sigma: 22.202 | error: 0.0428528 | coeff: 0.0428528 | eff: 1 | fom: 20.9444 | r2int: 0.00183349 | r2eff: 0 | hits: 640 ] steps + 105 19716 [sigma: 27.8433 | error: 0.040563 | coeff: 0.040563 | eff: 1 | fom: 23.3759 | r2int: 0.00164336 | r2eff: 0 | hits: 825 ] steps + 106 24782 [sigma: 28.7905 | error: 0.0367929 | coeff: 0.0367929 | eff: 1 | fom: 28.4119 | r2int: 0.00135236 | r2eff: 0 | hits: 1003 ] steps + 107 22492 [sigma: 27.7134 | error: 0.0383551 | coeff: 0.0383551 | eff: 1 | fom: 26.1445 | r2int: 0.0014696 | r2eff: 0 | hits: 969 ] steps + 108 23125 [sigma: 28.0474 | error: 0.0374614 | coeff: 0.0374614 | eff: 1 | fom: 27.4068 | r2int: 0.00140189 | r2eff: 0 | hits: 954 ] steps + 109 16404 [sigma: 25.3502 | error: 0.0422368 | coeff: 0.0422368 | eff: 1 | fom: 21.5598 | r2int: 0.00178156 | r2eff: 0 | hits: 747 ] steps + 110 17972 [sigma: 27.4511 | error: 0.0420531 | coeff: 0.0420531 | eff: 1 | fom: 21.7485 | r2int: 0.00176613 | r2eff: 0 | hits: 758 ] steps + 111 23343 [sigma: 25.951 | error: 0.0350855 | coeff: 0.0350855 | eff: 1 | fom: 31.2443 | r2int: 0.00122976 | r2eff: 0 | hits: 996 ] steps + 112 23157 [sigma: 28.0715 | error: 0.037579 | coeff: 0.037579 | eff: 1 | fom: 26.2268 | r2int: 0.00141071 | r2eff: 0 | hits: 961 ] steps + 113 21845 [sigma: 26.4885 | error: 0.03757 | coeff: 0.03757 | eff: 1 | fom: 26.2394 | r2int: 0.00141003 | r2eff: 0 | hits: 960 ] steps + 114 17672 [sigma: 29.1951 | error: 0.0455739 | coeff: 0.0455739 | eff: 1 | fom: 17.8322 | r2int: 0.00207425 | r2eff: 0 | hits: 761 ] steps + 115 20310 [sigma: 30.1225 | error: 0.0419757 | coeff: 0.0419757 | eff: 1 | fom: 21.0204 | r2int: 0.00175976 | r2eff: 0 | hits: 801 ] steps + 116 23612 [sigma: 30.383 | error: 0.0393673 | coeff: 0.0393673 | eff: 1 | fom: 23.8982 | r2int: 0.00154813 | r2eff: 0 | hits: 936 ] steps + 117 22294 [sigma: 28.3685 | error: 0.0384068 | coeff: 0.0384068 | eff: 1 | fom: 25.1085 | r2int: 0.00147346 | r2eff: 0 | hits: 911 ] steps + 118 22415 [sigma: 26.3241 | error: 0.0367457 | coeff: 0.0367457 | eff: 1 | fom: 27.4298 | r2int: 0.00134887 | r2eff: 0 | hits: 979 ] steps + 119 18272 [sigma: 26.8738 | error: 0.0404126 | coeff: 0.0404126 | eff: 1 | fom: 22.6779 | r2int: 0.00163102 | r2eff: 0 | hits: 755 ] steps + 120 14129 [sigma: 27.1067 | error: 0.0483831 | coeff: 0.0483831 | eff: 1 | fom: 15.8215 | r2int: 0.00233725 | r2eff: 0 | hits: 636 ] steps + 121 18014 [sigma: 28.396 | error: 0.0431696 | coeff: 0.0431696 | eff: 1 | fom: 19.8738 | r2int: 0.00186113 | r2eff: 0 | hits: 750 ] steps + 122 16135 [sigma: 24.8669 | error: 0.0424034 | coeff: 0.0424034 | eff: 1 | fom: 20.5984 | r2int: 0.00179568 | r2eff: 0 | hits: 757 ] steps + 123 18069 [sigma: 29.9678 | error: 0.0448721 | coeff: 0.0448721 | eff: 1 | fom: 18.3943 | r2int: 0.00201076 | r2eff: 0 | hits: 732 ] steps + 124 14403 [sigma: 26.5478 | error: 0.0468117 | coeff: 0.0468117 | eff: 1 | fom: 16.9016 | r2int: 0.00218794 | r2eff: 0 | hits: 645 ] steps ============================================================ closed file mfd_tl_NumberOfSteps.out for output ============================================================ opened file mfd_tg_NumberOfSteps.out for output ============================================================ - 0 12.000000 steps - 1 57.000000 steps - 2 95.000000 steps - 3 63.000000 steps - 4 53.000000 steps - 5 30.000000 steps - 6 119.000000 steps - 7 91.000000 steps - 8 99.000000 steps - 9 52.000000 steps - 10 63.000000 steps - 11 76.000000 steps - 12 71.000000 steps - 13 136.000000 steps - 14 54.000000 steps - 15 36.000000 steps - 16 94.000000 steps - 17 131.000000 steps - 18 49.000000 steps - 19 12.000000 steps - 20 108.000000 steps - 21 67.000000 steps - 22 157.000000 steps - 23 53.000000 steps - 24 21.000000 steps - 25 118.000000 steps - 26 180.000000 steps - 27 146.000000 steps - 28 158.000000 steps - 29 159.000000 steps - 30 95.000000 steps - 31 329.000000 steps - 32 324.000000 steps - 33 218.000000 steps - 34 250.000000 steps - 35 148.000000 steps - 36 240.000000 steps - 37 293.000000 steps - 38 458.000000 steps - 39 115.000000 steps - 40 191.000000 steps - 41 395.000000 steps - 42 366.000000 steps - 43 329.000000 steps + 0 37.000000 steps + 1 35.000000 steps + 2 12.000000 steps + 3 19.000000 steps + 4 54.000000 steps + 5 64.000000 steps + 6 51.000000 steps + 7 121.000000 steps + 8 36.000000 steps + 9 37.000000 steps + 10 178.000000 steps + 11 167.000000 steps + 12 85.000000 steps + 13 50.000000 steps + 14 41.000000 steps + 15 41.000000 steps + 16 77.000000 steps + 17 87.000000 steps + 18 17.000000 steps + 19 74.000000 steps + 20 16.000000 steps + 21 29.000000 steps + 22 27.000000 steps + 23 63.000000 steps + 24 46.000000 steps + 25 250.000000 steps + 26 158.000000 steps + 27 108.000000 steps + 28 154.000000 steps + 29 139.000000 steps + 30 96.000000 steps + 31 291.000000 steps + 32 315.000000 steps + 33 274.000000 steps + 34 165.000000 steps + 35 272.000000 steps + 36 301.000000 steps + 37 202.000000 steps + 38 412.000000 steps + 39 120.000000 steps + 40 304.000000 steps + 41 200.000000 steps + 42 263.000000 steps + 43 201.000000 steps 44 171.000000 steps - 45 154.000000 steps - 46 337.000000 steps - 47 360.000000 steps - 48 358.000000 steps - 49 164.000000 steps - 50 392.000000 steps - 51 540.000000 steps - 52 627.000000 steps - 53 797.000000 steps - 54 393.000000 steps - 55 517.000000 steps - 56 1002.000000 steps - 57 1057.000000 steps - 58 992.000000 steps - 59 722.000000 steps - 60 540.000000 steps - 61 1098.000000 steps - 62 1220.000000 steps - 63 1059.000000 steps - 64 509.000000 steps - 65 783.000000 steps - 66 1137.000000 steps - 67 1077.000000 steps - 68 1032.000000 steps - 69 524.000000 steps - 70 584.000000 steps - 71 698.000000 steps - 72 603.000000 steps - 73 533.000000 steps - 74 478.000000 steps - 75 2741.000000 steps - 76 3754.000000 steps - 77 4818.000000 steps - 78 3844.000000 steps - 79 2620.000000 steps - 80 3734.000000 steps - 81 3931.000000 steps - 82 4408.000000 steps - 83 3990.000000 steps - 84 3578.000000 steps - 85 3587.000000 steps - 86 4420.000000 steps - 87 4727.000000 steps - 88 4564.000000 steps - 89 3588.000000 steps - 90 4897.000000 steps - 91 4371.000000 steps - 92 4521.000000 steps - 93 4055.000000 steps - 94 4139.000000 steps - 95 3239.000000 steps - 96 4805.000000 steps - 97 4450.000000 steps - 98 3499.000000 steps - 99 3584.000000 steps - 100 13967.000000 steps - 101 19242.000000 steps - 102 20658.000000 steps - 103 17355.000000 steps - 104 14177.000000 steps - 105 16506.000000 steps - 106 24546.000000 steps - 107 22759.000000 steps - 108 22056.000000 steps - 109 17373.000000 steps - 110 16297.000000 steps - 111 23446.000000 steps - 112 24948.000000 steps - 113 23705.000000 steps - 114 17319.000000 steps - 115 18628.000000 steps - 116 26133.000000 steps - 117 22343.000000 steps - 118 22065.000000 steps - 119 17592.000000 steps - 120 13423.000000 steps - 121 19357.000000 steps - 122 19860.000000 steps - 123 17194.000000 steps - 124 13502.000000 steps + 45 149.000000 steps + 46 146.000000 steps + 47 227.000000 steps + 48 199.000000 steps + 49 126.000000 steps + 50 356.000000 steps + 51 871.000000 steps + 52 564.000000 steps + 53 723.000000 steps + 54 478.000000 steps + 55 819.000000 steps + 56 896.000000 steps + 57 862.000000 steps + 58 868.000000 steps + 59 457.000000 steps + 60 719.000000 steps + 61 1189.000000 steps + 62 1320.000000 steps + 63 1477.000000 steps + 64 625.000000 steps + 65 689.000000 steps + 66 1165.000000 steps + 67 1130.000000 steps + 68 1264.000000 steps + 69 471.000000 steps + 70 523.000000 steps + 71 623.000000 steps + 72 730.000000 steps + 73 444.000000 steps + 74 455.000000 steps + 75 3763.000000 steps + 76 4088.000000 steps + 77 4426.000000 steps + 78 4253.000000 steps + 79 3392.000000 steps + 80 4460.000000 steps + 81 4029.000000 steps + 82 4007.000000 steps + 83 3861.000000 steps + 84 3796.000000 steps + 85 3772.000000 steps + 86 4343.000000 steps + 87 4357.000000 steps + 88 3538.000000 steps + 89 3953.000000 steps + 90 4614.000000 steps + 91 4239.000000 steps + 92 4133.000000 steps + 93 3860.000000 steps + 94 3825.000000 steps + 95 3163.000000 steps + 96 3830.000000 steps + 97 3555.000000 steps + 98 4316.000000 steps + 99 2999.000000 steps + 100 16049.000000 steps + 101 19261.000000 steps + 102 17554.000000 steps + 103 16954.000000 steps + 104 13107.000000 steps + 105 19716.000000 steps + 106 24782.000000 steps + 107 22492.000000 steps + 108 23125.000000 steps + 109 16404.000000 steps + 110 17972.000000 steps + 111 23343.000000 steps + 112 23157.000000 steps + 113 21845.000000 steps + 114 17672.000000 steps + 115 20310.000000 steps + 116 23612.000000 steps + 117 22294.000000 steps + 118 22415.000000 steps + 119 18272.000000 steps + 120 14129.000000 steps + 121 18014.000000 steps + 122 16135.000000 steps + 123 18069.000000 steps + 124 14403.000000 steps ============================================================ closed file mfd_tg_NumberOfSteps.out for output ============================================================ @@ -1705,6 +1648,9 @@ Run Summary ============================================================ closed file mfd_diff.out for difference output ============================================================ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. diff --git a/examples/extended/parallel/ThreadsafeScorers/ts_scorers.cc b/examples/extended/parallel/ThreadsafeScorers/ts_scorers.cc index 0d6a97243a..1d4af94fdb 100644 --- a/examples/extended/parallel/ThreadsafeScorers/ts_scorers.cc +++ b/examples/extended/parallel/ThreadsafeScorers/ts_scorers.cc @@ -60,6 +60,8 @@ #include "G4UIExecutive.hh" #include "G4UImanager.hh" #include "G4VisExecutive.hh" +#include "G4Track.hh" +#include "G4Step.hh" // for std::system(const char*) #include @@ -86,25 +88,68 @@ void message(G4RunManager* runmanager) int main(int argc, char** argv) { - TIMEMORY_INIT(argc, argv); + // initialize timemory + G4Profiler::Configure(argc, argv); -#if defined(GEANT4_USE_TIMEMORY) - // override environment settings - tim::settings::json_output() = true; - tim::settings::dart_output() = true; - tim::settings::dart_type() = "peak_rss"; - tim::settings::dart_count() = 1; -#endif + G4String macro; + if(argc > 1) + macro = argv[argc - 1]; // Detect interactive mode (if no arguments) and define UI session // G4UIExecutive* ui = 0; - if(argc == 1) + if(macro.empty()) ui = new G4UIExecutive(argc, argv); // Set the random seed CLHEP::HepRandom::setTheSeed(1245214UL); +#if defined(GEANT4_USE_TIMEMORY) + // The following exists for: + // - G4ProfileType::Run + // - G4ProfileType::Event + // - G4ProfileType::Track + // - G4ProfileType::Step + // - G4ProfileType::User + // + using TrackProfilerConfig = G4ProfilerConfig; + using TrackTool = typename TrackProfilerConfig::type; + + TrackProfilerConfig::GetQueryFunctor() = [](const G4Track* _track) { + // only profile if _track != nullptr and dynamic-profiler != nullptr + // and /profiler/track/enable is true + // + return G4Profiler::GetEnabled(G4ProfileType::Track) && _track && + _track->GetDynamicParticle(); + }; + + TrackProfilerConfig::GetLabelFunctor() = [](const G4Track* _track) { + // create a label for the profiling entry. This can be customized + // to include and information necessary in the returning string + auto pdef = _track->GetDynamicParticle()->GetParticleDefinition(); + static std::string _prefix = "G4Track/"; + return _prefix + pdef->GetParticleName(); + }; + + // env option to display track profiles as a hierarchy + bool track_tree = tim::get_env("G4PROFILER_TRACK_TREE", true); + // env option to enable timeline entries (every entry is unique, HUGE amount + // of data!) + bool track_time = tim::get_env("G4PROFILER_TRACK_TIMELINE", false); + // default scope is tree + auto _scope = tim::scope::config{}; + if(track_tree == false) + _scope += tim::scope::flat{}; + if(track_time == true) + _scope += tim::scope::timeline{}; + TrackProfilerConfig::GetToolFunctor() = [=](const std::string& _label) { + // Configure the profiling tool for a given label. By default, + // G4Track and G4Step tools are "flat profiles" but this can be disabled + // to include tree + return new TrackTool(_label, _scope); + }; +#endif + G4RunManager* runmanager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::Tasking); @@ -133,16 +178,12 @@ int main(int argc, char** argv) if(!ui) { // batch mode - G4String command = "/control/execute "; - G4String fileName = argv[argc - 1]; - UImanager->ApplyCommand(command + fileName); + G4String command = "/control/execute "; + UImanager->ApplyCommand(command + macro); } else { - // interactive mode - UImanager->ApplyCommand("/control/execute vis.mac"); ui->SessionStart(); - delete ui; } // Job termination diff --git a/examples/extended/parallel/TopC/History b/examples/extended/parallel/TopC/History index bb82cc9cc3..c180847978 100644 --- a/examples/extended/parallel/TopC/History +++ b/examples/extended/parallel/TopC/History @@ -10,6 +10,9 @@ * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +30 October 2020, G. Cosmo (exTopC-V10-06-00) +- Fixed README.html. Addressing problem report #2284. + 09 July 2013, I. Hrivnacova (exTopC-V10-05-00) - Removed G4VIS_USE and G4UI_USE from examples - Added info/HowToTest.txt with a short summary of the build diff --git a/examples/extended/parallel/TopC/info/README.html b/examples/extended/parallel/TopC/info/README.html index 583cf1a1c7..fed9e17c38 100644 --- a/examples/extended/parallel/TopC/info/README.html +++ b/examples/extended/parallel/TopC/info/README.html @@ -76,13 +76,9 @@ Some design assumptions of Geant4 used here: -->

    -NEW! -ParGeant4 has now been demonstrated to run over the Computational Grid +ParGeant4 has been demonstrated to run over the Computational Grid using a new TOP-C communication layer, with support for the Grid, -based on Ampic. There is a paper -reporting on this in - -postscript. +based on Ampic. See related paper:
    G. Cooperman, H. Casanova, J. Hayes and T. Witzel, ``Using TOP-C and AMPIC to Port Large Parallel Applications diff --git a/examples/extended/parameterisations/.README.txt b/examples/extended/parameterisations/.README.txt index 5c03b4eadb..5133495a70 100644 --- a/examples/extended/parameterisations/.README.txt +++ b/examples/extended/parameterisations/.README.txt @@ -19,6 +19,12 @@ This example shows how to do "track and energy smearing" in Geant4, in order to have a very fast simulation based on assumed detector resolutions. +\link ExamplePar03 Par03 \endlink + +This example demonstrates how to create multiple energy deposits +from the fast simulation model and store it alongside deposits created +in full/detailed simulation. + \link Examples_gflash gflash \endlink Set of examples demonstrating the use of the GFLASH parameterisation library. diff --git a/examples/extended/parameterisations/CMakeLists.txt b/examples/extended/parameterisations/CMakeLists.txt index 324960c811..49b49af469 100644 --- a/examples/extended/parameterisations/CMakeLists.txt +++ b/examples/extended/parameterisations/CMakeLists.txt @@ -1,12 +1,16 @@ #---Adding all parameterisations examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() find_package(Geant4) include(${Geant4_USE_FILE}) add_subdirectory(gflash) add_subdirectory(Par01) +add_subdirectory(Par03) #---------------------------------------------------------------------------- # Par02 example requires Geant4 build with gdml diff --git a/examples/extended/parameterisations/History b/examples/extended/parameterisations/History index 40ec6997f5..3d461fee3d 100644 --- a/examples/extended/parameterisations/History +++ b/examples/extended/parameterisations/History @@ -16,6 +16,15 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Nov 11th, 2020 B. Morgan (exParameterisations-V10-06-01) +- Migration to G4RunManagerFactory. + +Nov 3rd, 2020 B. Morgan (exParameterisations-V10-06-00) +- Support same CMake version range as core Geant4 + +Oct 5th, 2020 A. Zaborowska (exParameterisations-V10-06-00) +- Add new Par03 example + Nov 28th, 2019 I. Hrivnacova (exParameterisations-V10-05-01) -------------------- - Updated category README files for reorganization of gflash examples. @@ -39,9 +48,9 @@ Dec 13th, 2012 I. Hrivnacova (exParameterisations-V09-06-00) Sep 24th, 2012 I. Hrivnacova (exParameterisations-V09-05-00) -------------------- - Updated CMakeLists.txt: - adding visualization, copying macros, install target and comment lines + adding visualization, copying macros, install target and comment lines - Added explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh -- Replaced tabulators with space characters +- Replaced tabulators with space characters Nov 4th, 2005 J.Weng (exparam-V07-01-01) -------------------- diff --git a/examples/extended/parameterisations/Par01/CMakeLists.txt b/examples/extended/parameterisations/Par01/CMakeLists.txt index 5b34d7b63b..a97ce7a994 100644 --- a/examples/extended/parameterisations/Par01/CMakeLists.txt +++ b/examples/extended/parameterisations/Par01/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(Par01) #---------------------------------------------------------------------------- diff --git a/examples/extended/parameterisations/Par01/History b/examples/extended/parameterisations/Par01/History index 65195b84c7..66e36e235e 100644 --- a/examples/extended/parameterisations/Par01/History +++ b/examples/extended/parameterisations/Par01/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-2020 B. Morgan (expar01-V10-06-00) +- Migration to G4RunManagerFactory. + 17-05-2018 J.Allison (expar01-V10-04-00) - Add #include "G4Types.hh" - Remove G4UI_USE and G4VIS_USE. @@ -204,7 +207,7 @@ June 17, 2000 John Allison (exampleN05-V01-01-00) 11 December 1998 M. Verderi - fix made in ExN05CalorimeterSD to allow several instanciations of this class. The problem was a static variable (HCID) used in EndOfEventAction which made - confusion to get the hits collection. HCID is now put as private (non static!) + confusion to get the hits collection. HCID is now put as private (non static!) member of the class. - the example.in/.out are updated accordingly @@ -239,8 +242,8 @@ June 17, 2000 John Allison (exampleN05-V01-01-00) - Modified ExN05PhysicsList to register above processes. - Modified ExN05DetectorConstruction to attach Userlimits to crystal. - Added ExN05DetectorMessenger to switch on/off UserLimits. -- Modified exampleN05.in - +- Modified exampleN05.in + 9th August 1998 John Allison - Changed G4UIterminal to G4UIGAG. @@ -289,7 +292,7 @@ a private navigator, rather than the one for tracking. May 07, 98 M. Verderi - First commit (many improvements needed): - - main() coded in exampleN05.cc + - main() coded in exampleN05.cc - include: MyCalorimeterHit.hh MyCalorimeterHitsCollection.hh @@ -298,7 +301,7 @@ May 07, 98 M. Verderi MyEMCShower.hh MyEnergySpot.hh MyEventAction.hh - MyEventActionMessenger.hh + MyEventActionMessenger.hh MyPhysicsList.hh MyPiModel.hh MyPrimaryGeneratorAction.hh diff --git a/examples/extended/parameterisations/Par01/examplePar01.cc b/examples/extended/parameterisations/Par01/examplePar01.cc index b177c23777..59f66dcb50 100644 --- a/examples/extended/parameterisations/Par01/examplePar01.cc +++ b/examples/extended/parameterisations/Par01/examplePar01.cc @@ -28,7 +28,7 @@ // // // -// +// // -------------------------------------------------------------- // Geant4 - examplePar01 // -------------------------------------------------------------- @@ -53,11 +53,7 @@ #include "G4FastSimulationPhysics.hh" #include "G4UImanager.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" // ---------------------------------------------------------------- // -- Action initialization (includes the primary generator action: @@ -80,18 +76,8 @@ int main(int argc, char** argv) //------------------------------- // Initialization of Run manager //------------------------------- -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(4); - G4cout<<"+-------------------------------------------------------+"< 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -551,6 +575,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -662,8 +699,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -728,8 +765,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -770,7 +807,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. @@ -782,38 +818,38 @@ See commands in /vis/modeling/trajectories/ for other options. Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep 1 -0.000253 36.2 60.4 997 0.0141 70.4 70.4 WorldPhysical eBrem - 2 -0.000387 38.7 64.5 997 0.000664 4.8 75.2 WorldPhysical eIoni - 3 0.000715 60 100 997 0.00553 41.4 117 DriftChamberPhysical CoupledTransportation - 4 -0.0162 217 362 997 0.0132 306 423 DriftChamberPhysical eIoni - 5 -0.0196 235 393 997 0.000982 35.2 458 DriftChamberPhysical eIoni - 6 -0.0498 540 900 997 0.0166 592 1.05e+03 WorldPhysical CoupledTransportation - 7 -0.0508 600 1e+03 996 0.021 117 1.17e+03 Crystal CoupledTransportation - 8 -0.0508 600 1e+03 0 996 0 1.17e+03 Crystal fastSimProcess_massGeom + 2 -0.000386 38.7 64.5 997 0.000634 4.77 75.2 WorldPhysical eIoni + 3 -0.00356 60 100 997 0.0104 41.4 117 DriftChamberPhysical CoupledTransportation + 4 -0.141 501 836 997 0.0292 858 974 DriftChamberPhysical eIoni + 5 -0.145 519 866 997 0.000982 35.2 1.01e+03 DriftChamberPhysical eIoni + 6 -0.148 540 900 997 0.00105 39.7 1.05e+03 WorldPhysical CoupledTransportation + 7 -0.158 600 1e+03 996 0.0233 117 1.17e+03 Crystal CoupledTransportation + 8 -0.158 600 1e+03 0 996 0 1.17e+03 Crystal fastSimProcess_massGeom ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0196 235 393 0.00196 0 0 0 DriftChamberPhysical initStep - 1 -0.626 235 393 0 0.00196 0.88 0.88 DriftChamberPhysical eIoni + 0 -0.145 519 866 0.00196 0 0 0 DriftChamberPhysical initStep + 1 -0.751 519 866 0 0.00196 0.879 0.879 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0162 217 362 0.00416 0 0 0 DriftChamberPhysical initStep - 1 1.06 216 363 0.00307 0.00109 2.01 2.01 DriftChamberPhysical eIoni - 2 1.99 215 364 0 0.00307 1.56 3.57 DriftChamberPhysical eIoni + 0 -0.141 501 836 0.00416 0 0 0 DriftChamberPhysical initStep + 1 0.932 500 837 0.00178 0.00238 2.01 2.01 DriftChamberPhysical eIoni + 2 0.884 499 837 0 0.00178 0.75 2.76 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000387 38.7 64.5 0.0044 0 0 0 WorldPhysical initStep - 1 -0.201 38.8 64.4 0 0.0044 0.612 0.612 WorldPhysical eIoni + 0 -0.000386 38.7 64.5 0.00255 0 0 0 WorldPhysical initStep + 1 0.0985 38.7 64.5 0 0.00255 0.239 0.239 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 2, Parent ID = 1 @@ -824,73 +860,47 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 1 0.0123 60 100 3.43 0 46.2 46.2 DriftChamberPhysical CoupledTransportation 2 0.267 540 900 3.43 0 933 979 WorldPhysical CoupledTransportation 3 0.299 600 1e+03 3.43 0 117 1.1e+03 Crystal CoupledTransportation - 4 0.314 630 1.05e+03 3.24 0 57.5 1.15e+03 Crystal compt - 5 1.11e-15 631 1.05e+03 3.24 0 2.81 1.16e+03 Crystal CoupledTransportation - 6 -4.24 648 1.09e+03 3.23 0 38 1.19e+03 Crystal compt - 7 -4.55 650 1.09e+03 3.23 0 3.55 1.2e+03 Crystal CoupledTransportation - 8 -5.03 653 1.09e+03 0.411 0 5.63 1.2e+03 Crystal compt - 9 -4.38 654 1.09e+03 0 0.0332 2.1 1.21e+03 Crystal phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.38 654 1.09e+03 0.377 0 0 0 Crystal initStep - 1 -4.34 654 1.09e+03 0 0.377 0.468 0.468 Crystal eIoni + 4 0.325 650 1.08e+03 3.43 0 96.4 1.19e+03 Crystal CoupledTransportation + 5 0.351 700 1.17e+03 3.43 0 97.1 1.29e+03 Crystal CoupledTransportation + 6 0.355 708 1.18e+03 3.34 0 14.7 1.3e+03 Crystal compt + 7 2.45 747 1.26e+03 0.414 0 89.2 1.39e+03 Crystal compt + 8 4.67 750 1.26e+03 0.414 0 4.51 1.4e+03 Crystal CoupledTransportation + 9 22.2 776 1.24e+03 0 0.0332 35.5 1.43e+03 Crystal phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -5.03 653 1.09e+03 2.82 0 0 0 Crystal initStep - 1 -5.34 653 1.09e+03 2.54 0.285 0.577 0.577 Crystal eBrem - 2 -6.3 653 1.09e+03 1.97 0.569 1.42 2 Crystal msc - 3 -6.7 654 1.09e+03 1.03 0.941 2.1 4.09 Crystal eIoni - 4 -6.77 654 1.09e+03 0.493 0.336 0.76 4.85 Crystal eBrem - 5 -6.74 654 1.09e+03 0 0.493 0.677 5.53 Crystal eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 10, Parent ID = 8 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -6.77 654 1.09e+03 0.199 0 0 0 Crystal initStep - 1 -7.27 653 1.09e+03 0.178 0 0.885 0.885 Crystal compt - 2 -6.57 653 1.09e+03 0 0.036 6.46 7.34 Crystal phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 10 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -6.57 653 1.09e+03 0.142 0 0 0 Crystal initStep - 1 -6.58 653 1.09e+03 0 0.142 0.106 0.106 Crystal eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 10 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -7.27 653 1.09e+03 0.0214 0 0 0 Crystal initStep - 1 -7.27 653 1.09e+03 0 0.0214 0.00472 0.00472 Crystal eIoni + 0 22.2 776 1.24e+03 0.381 0 0 0 Crystal initStep + 1 22.2 776 1.24e+03 0 0.381 0.474 0.474 Crystal eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.24 648 1.09e+03 0.00987 0 0 0 Crystal initStep - 1 -4.24 648 1.09e+03 0 0.00987 0.00137 0.00137 Crystal eIoni + 0 2.45 747 1.26e+03 2.93 0 0 0 Crystal initStep + 1 2.18 747 1.26e+03 2.65 0.282 0.571 0.571 Crystal eBrem + 2 1.5 747 1.26e+03 2.19 0.455 1.14 1.71 Crystal msc + 3 0.726 747 1.26e+03 1.61 0.58 1.04 2.75 Crystal msc + 4 0.444 747 1.26e+03 1.45 0.161 0.461 3.21 Crystal msc + 5 0.244 747 1.26e+03 1.32 0.13 0.291 3.5 Crystal msc + 6 0.143 747 1.26e+03 1.25 0.0684 0.217 3.72 Crystal msc + 7 0.248 747 1.26e+03 1.17 0.077 0.23 3.95 Crystal msc + 8 0.321 747 1.26e+03 0.611 0.564 0.261 4.21 Crystal msc + 9 0.277 747 1.26e+03 0.509 0.102 0.194 4.4 Crystal msc + 10 0.203 747 1.26e+03 0.413 0.0965 0.226 4.63 Crystal msc + 11 0.336 747 1.26e+03 0.161 0.252 0.22 4.85 Crystal msc + 12 0.347 747 1.26e+03 0 0.161 0.13 4.98 Crystal eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.314 630 1.05e+03 0.19 0 0 0 Crystal initStep - 1 0.327 630 1.05e+03 0 0.19 0.168 0.168 Crystal eIoni + 0 0.355 708 1.18e+03 0.0906 0 0 0 Crystal initStep + 1 0.354 708 1.18e+03 0 0.0906 0.0515 0.0515 Crystal eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -898,104 +908,66 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0.000115 6.22 10.4 1e+03 0.00187 12.1 12.1 WorldPhysical eIoni - 2 -0.000772 20.6 34.3 1e+03 0.0101 27.9 40 WorldPhysical eIoni - 3 -0.00177 25.3 42.2 1e+03 0.000797 9.24 49.2 WorldPhysical eIoni - 4 -0.0115 59.3 98.9 1e+03 0.0109 66.1 115 WorldPhysical eIoni - 5 -0.0116 60 100 1e+03 0.000137 1.3 117 DriftChamberPhysical CoupledTransportation - 6 -0.0117 60.2 100 1e+03 8.62e-06 0.288 117 DriftChamberPhysical eIoni - 7 -0.0118 73.5 122 1e+03 0.000644 25.9 143 DriftChamberPhysical eIoni - 8 -0.0389 235 391 1e+03 0.0121 314 457 DriftChamberPhysical eIoni - 9 -0.12 500 833 1e+03 0.0144 515 971 DriftChamberPhysical eIoni - 10 -0.125 540 900 1e+03 0.00304 78.2 1.05e+03 WorldPhysical CoupledTransportation - 11 -0.125 558 930 1e+03 0.00714 34.9 1.08e+03 WorldPhysical eIoni - 12 -0.125 586 976 1e+03 0.0108 53.7 1.14e+03 WorldPhysical eIoni - 13 -0.123 600 1e+03 1e+03 0.0054 28 1.17e+03 Crystal CoupledTransportation - 14 -0.123 600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom + 1 0 60 100 1e+03 0.0208 117 117 DriftChamberPhysical CoupledTransportation + 2 0.29 540 900 1e+03 0.031 933 1.05e+03 WorldPhysical CoupledTransportation + 3 0.291 542 902 1e+03 0.000268 2.52 1.05e+03 WorldPhysical eIoni + 4 0.298 566 943 1e+03 0.0107 47.1 1.1e+03 WorldPhysical eIoni + 5 0.304 600 1e+03 1e+03 0.0141 67 1.17e+03 Crystal CoupledTransportation + 6 0.304 600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.125 586 976 0.0032 0 0 0 WorldPhysical initStep - 1 -0.207 586 976 0 0.0032 0.352 0.352 WorldPhysical eIoni + 0 0.298 566 943 0.00136 0 0 0 WorldPhysical initStep + 1 0.332 566 943 0 0.00136 0.0895 0.0895 WorldPhysical eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.125 558 930 0.000995 0 0 0 WorldPhysical initStep - 1 -0.124 558 930 0 0.000995 0.0567 0.0567 WorldPhysical eIoni + 0 0.291 542 902 0.00186 0 0 0 WorldPhysical initStep + 1 0.245 542 902 0 0.00186 0.144 0.144 WorldPhysical eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 1 +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.12 500 833 0.00179 0 0 0 DriftChamberPhysical initStep - 1 -0.43 500 833 0 0.00179 0.757 0.757 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0389 235 391 0.00135 0 0 0 DriftChamberPhysical initStep - 1 0.294 235 391 0 0.00135 0.479 0.479 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0118 73.5 122 0.00601 0 0 0 DriftChamberPhysical initStep - 1 2.35 74.3 122 0.00472 0.00129 2.75 2.75 DriftChamberPhysical eIoni - 2 3.94 73.8 123 0.00325 0.00147 2.23 4.98 DriftChamberPhysical eIoni - 3 4.82 73 124 0 0.00325 1.64 6.62 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0117 60.2 100 0.0046 0 0 0 DriftChamberPhysical initStep - 1 -1.28 59.4 100 0.00235 0.00225 1.55 1.55 DriftChamberPhysical msc - 2 -1.68 58.5 101 0 0.00235 1.17 2.72 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0115 59.3 98.9 0.00288 0 0 0 WorldPhysical initStep - 1 -0.0901 59.4 98.8 0 0.00288 0.293 0.293 WorldPhysical eIoni + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 -0.00247 18.8 31.3 1e+03 0.00826 36.6 36.6 WorldPhysical eIoni + 2 -0.00562 32 53.3 1e+03 0.00621 25.6 62.2 WorldPhysical eIoni + 3 -0.00928 60 100 1e+03 0.00911 54.4 117 DriftChamberPhysical CoupledTransportation + 4 0.038 232 386 1e+03 0.0138 334 451 DriftChamberPhysical eIoni + 5 0.13 540 900 1e+03 0.0172 599 1.05e+03 WorldPhysical CoupledTransportation + 6 0.131 600 1e+03 1e+03 0.0226 117 1.17e+03 Crystal CoupledTransportation + 7 0.131 600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00177 25.3 42.2 0.00289 0 0 0 WorldPhysical initStep - 1 0.0645 25.3 42.2 0.00234 0.000557 0.0819 0.0819 WorldPhysical eIoni - 2 0.141 25.3 42.2 0 0.00234 0.208 0.29 WorldPhysical eIoni + 0 0.038 232 386 0.00123 0 0 0 DriftChamberPhysical initStep + 1 -0.0715 232 386 0 0.00123 0.415 0.415 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000772 20.6 34.3 0.00137 0 0 0 WorldPhysical initStep - 1 -0.000294 20.5 34.3 0 0.00137 0.0903 0.0903 WorldPhysical eIoni + 0 -0.00562 32 53.3 0.00113 0 0 0 WorldPhysical initStep + 1 -0.0309 32 53.3 0 0.00113 0.068 0.068 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000115 6.22 10.4 0.00131 0 0 0 WorldPhysical initStep - 1 0.0326 6.22 10.4 0 0.00131 0.0846 0.0846 WorldPhysical eIoni + 0 -0.00247 18.8 31.3 0.00184 0 0 0 WorldPhysical initStep + 1 0.0456 18.8 31.4 0 0.00184 0.142 0.142 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1003,201 +975,66 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 -0.000705 12.8 21.4 1e+03 0.00431 24.9 24.9 WorldPhysical eIoni - 2 -0.00122 60 100 1e+03 0.0225 91.7 117 DriftChamberPhysical CoupledTransportation - 3 0.00525 330 550 1e+03 0.0148 524 641 DriftChamberPhysical eIoni - 4 -0.00935 457 762 1e+03 0.00659 247 888 DriftChamberPhysical eIoni - 5 -0.0338 540 900 1e+03 0.00643 161 1.05e+03 WorldPhysical CoupledTransportation - 6 -0.0363 552 920 1e+03 0.00362 23.2 1.07e+03 WorldPhysical eIoni - 7 -0.038 585 975 1e+03 0.011 63.8 1.14e+03 WorldPhysical eIoni - 8 -0.0399 600 1e+03 1e+03 0.00794 29.6 1.17e+03 Crystal CoupledTransportation - 9 -0.0399 600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.038 585 975 0.00153 0 0 0 WorldPhysical initStep - 1 -0.000192 585 975 0 0.00153 0.107 0.107 WorldPhysical eIoni + 1 0.0056 23.1 38.4 1e+03 0.00828 44.8 44.8 WorldPhysical eIoni + 2 0.0153 60 100 1e+03 0.0153 71.8 117 DriftChamberPhysical CoupledTransportation + 3 0.0408 94 157 1e+03 0.00175 66.1 183 DriftChamberPhysical eIoni + 4 0.0622 128 213 1e+03 0.00313 65.3 248 DriftChamberPhysical eIoni + 5 0.177 293 488 1e+03 0.00768 321 569 DriftChamberPhysical eIoni + 6 0.378 540 900 1e+03 0.0148 481 1.05e+03 WorldPhysical CoupledTransportation + 7 0.415 600 1e+03 1e+03 0.0236 117 1.17e+03 Crystal CoupledTransportation + 8 0.415 600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0363 552 920 0.00133 0 0 0 WorldPhysical initStep - 1 -0.0209 552 920 0 0.00133 0.0869 0.0869 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00935 457 762 0.0016 0 0 0 DriftChamberPhysical initStep - 1 0.396 457 762 0 0.0016 0.63 0.63 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00525 330 550 0.00103 0 0 0 DriftChamberPhysical initStep - 1 0.221 330 550 0 0.00103 0.315 0.315 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000705 12.8 21.4 0.00143 0 0 0 WorldPhysical initStep - 1 -0.016 12.8 21.4 0 0.00143 0.0967 0.0967 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 60 100 1e+03 0.0215 117 117 DriftChamberPhysical CoupledTransportation - 2 0.0719 531 885 1e+03 0.0276 915 1.03e+03 DriftChamberPhysical eIoni - 3 0.0738 540 900 1e+03 0.000651 18 1.05e+03 WorldPhysical CoupledTransportation - 4 0.0859 600 1e+03 1e+03 0.0203 117 1.17e+03 Crystal CoupledTransportation - 5 0.0859 600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0719 531 885 0.00135 0 0 0 DriftChamberPhysical initStep - 1 -0.0732 531 884 0 0.00135 0.482 0.482 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0.0221 48.8 81.4 1e+03 0.0194 94.9 94.9 WorldPhysical eIoni - 2 0.0294 60 100 1e+03 0.00395 21.7 117 DriftChamberPhysical CoupledTransportation - 3 0.48 540 900 1e+03 0.0285 933 1.05e+03 WorldPhysical CoupledTransportation - 4 0.518 584 974 1e+03 0.0171 86 1.14e+03 WorldPhysical eIoni - 5 0.533 600 1e+03 1e+03 0.00493 30.6 1.17e+03 Crystal CoupledTransportation - 6 0.533 600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.518 584 974 0.00101 0 0 0 WorldPhysical initStep - 1 0.527 584 974 0 0.00101 0.0578 0.0578 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0221 48.8 81.4 0.00142 0 0 0 WorldPhysical initStep - 1 -0.0011 48.9 81.4 0 0.00142 0.0958 0.0958 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0.00115 5.99 20 1e+03 0.00322 20.9 20.9 WorldPhysical eIoni - 2 0.013 26.1 86.9 1e+03 0.0133 69.9 90.7 WorldPhysical eIoni - 3 0.0172 30 100 1e+03 0.00253 13.7 104 DriftChamberPhysical CoupledTransportation - 4 0.208 178 594 1e+03 0.0157 515 620 DriftChamberPhysical eIoni - 5 0.337 270 900 1e+03 0.00862 320 940 WorldPhysical CoupledTransportation - 6 0.388 300 1e+03 1e+03 0.0241 104 1.04e+03 Crystal CoupledTransportation - 7 0.388 300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.208 178 594 0.00179 0 0 0 DriftChamberPhysical initStep - 1 -0.112 179 593 0 0.00179 0.761 0.761 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.013 26.1 86.9 0.00122 0 0 0 WorldPhysical initStep - 1 -1.39e-05 26.1 86.9 0 0.00122 0.0765 0.0765 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00115 5.99 20 0.00112 0 0 0 WorldPhysical initStep - 1 -0.0137 5.97 20 0 0.00112 0.0668 0.0668 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0.00423 25.5 84.8 1e+03 0.0153 88.6 88.6 WorldPhysical eIoni - 2 0.00548 30 100 1e+03 0.00222 15.8 104 DriftChamberPhysical CoupledTransportation - 3 0.00641 33.5 112 1e+03 0.000277 12.3 117 DriftChamberPhysical eIoni - 4 0.0954 270 900 1e+03 0.0232 823 940 WorldPhysical CoupledTransportation - 5 0.0992 277 922 1e+03 0.00449 23.2 963 WorldPhysical eIoni - 6 0.104 286 955 1e+03 0.00742 34.6 997 WorldPhysical eIoni - 7 0.104 300 1e+03 1e+03 0.0119 46.6 1.04e+03 Crystal CoupledTransportation - 8 0.104 300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.104 286 955 0.022 0 0 0 WorldPhysical initStep - 1 2.92 287 956 0.0162 0.00579 3.8 3.8 WorldPhysical eIoni - 2 4.62 288 957 0.0104 0.00583 2.77 6.57 WorldPhysical eIoni - 3 5.35 287 956 0.00714 0.00327 1.9 8.47 WorldPhysical eIoni - 4 5.48 287 956 0.00524 0.000725 0.19 8.66 WorldPhysical eIoni - 5 5.61 287 956 0 0.00524 0.832 9.49 WorldPhysical eIoni + 0 0.177 293 488 0.00257 0 0 0 DriftChamberPhysical initStep + 1 0.0289 292 488 0.00111 0.000362 0.424 0.424 DriftChamberPhysical eIoni + 2 0.037 292 488 0 0.00111 0.35 0.774 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 5 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 5.48 287 956 0.00118 0 0 0 WorldPhysical initStep - 1 5.48 287 956 0 0.00118 0.0721 0.0721 WorldPhysical eIoni + 0 0.0289 292 488 0.0011 0 0 0 DriftChamberPhysical initStep + 1 -0.0958 292 488 0 0.0011 0.349 0.349 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0992 277 922 0.0031 0 0 0 WorldPhysical initStep - 1 0.229 277 922 0 0.0031 0.333 0.333 WorldPhysical eIoni + 0 0.0622 128 213 0.00138 0 0 0 DriftChamberPhysical initStep + 1 -0.0445 128 213 0 0.00138 0.494 0.494 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00641 33.5 112 0.00128 0 0 0 DriftChamberPhysical initStep - 1 -0.272 33.4 112 0 0.00128 0.439 0.439 DriftChamberPhysical eIoni + 0 0.0408 94 157 0.0036 0 0 0 DriftChamberPhysical initStep + 1 1.45 93.6 157 0.00144 0.00216 1.79 1.79 DriftChamberPhysical eIoni + 2 1.74 93.8 157 0 0.00144 0.531 2.32 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00423 25.5 84.8 0.00106 0 0 0 WorldPhysical initStep - 1 -0.0108 25.5 84.8 0 0.00106 0.0621 0.0621 WorldPhysical eIoni + 0 0.0056 23.1 38.4 0.00872 0 0 0 WorldPhysical initStep + 1 0.759 23.5 38.3 0.00571 0.00301 1.63 1.63 WorldPhysical eIoni + 2 0.613 23.2 38.3 0.00219 0.00157 0.395 2.03 WorldPhysical eIoni + 3 0.538 23.2 38.3 0 0.00219 0.188 2.21 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.613 23.2 38.3 0.00195 0 0 0 WorldPhysical initStep + 1 0.617 23.2 38.3 0 0.00195 0.155 0.155 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1205,19 +1042,13 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0.000693 5.86 19.5 1e+03 0.00287 20.4 20.4 WorldPhysical eIoni - 2 0.00517 30 100 1e+03 0.0186 84 104 DriftChamberPhysical CoupledTransportation - 3 0.177 270 900 1e+03 0.0236 835 940 WorldPhysical CoupledTransportation - 4 0.185 300 1e+03 1e+03 0.0193 104 1.04e+03 Crystal CoupledTransportation - 5 0.185 300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000693 5.86 19.5 0.00103 0 0 0 WorldPhysical initStep - 1 -0.00338 5.84 19.5 0 0.00103 0.0596 0.0596 WorldPhysical eIoni + 1 0 60 100 1e+03 0.0235 117 117 DriftChamberPhysical CoupledTransportation + 2 0.152 540 900 1e+03 0.0319 933 1.05e+03 WorldPhysical CoupledTransportation + 3 0.168 600 1e+03 1e+03 0.0217 117 1.17e+03 Crystal CoupledTransportation + 4 0.168 600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1225,29 +1056,19 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 -0.000129 1.89 6.31 1e+03 0.000806 6.59 6.59 WorldPhysical eIoni - 2 -0.00628 30 100 1e+03 0.0197 97.8 104 DriftChamberPhysical CoupledTransportation - 3 -0.0373 270 900 1e+03 0.0282 835 940 WorldPhysical CoupledTransportation - 4 -0.0372 279 929 1e+03 0.00459 30.8 970 WorldPhysical eIoni - 5 -0.0408 300 1e+03 1e+03 0.011 73.6 1.04e+03 Crystal CoupledTransportation - 6 -0.0408 300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0372 279 929 0.0071 0 0 0 WorldPhysical initStep - 1 0.44 279 929 0.00249 0.0046 1.33 1.33 WorldPhysical eIoni - 2 0.446 279 929 0 0.00249 0.231 1.56 WorldPhysical eIoni + 1 -0.00164 3.54 11.8 1e+03 0.00276 12.3 12.3 WorldPhysical eIoni + 2 -0.017 30 100 1e+03 0.0156 92.1 104 DriftChamberPhysical CoupledTransportation + 3 -0.216 270 900 1e+03 0.0261 835 940 WorldPhysical CoupledTransportation + 4 -0.253 300 1e+03 1e+03 0.0198 104 1.04e+03 Crystal CoupledTransportation + 5 -0.253 300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000129 1.89 6.31 0.00185 0 0 0 WorldPhysical initStep - 1 0.0341 1.94 6.3 0 0.00185 0.143 0.143 WorldPhysical eIoni + 0 -0.00164 3.54 11.8 0.00156 0 0 0 WorldPhysical initStep + 1 0.016 3.58 11.8 0 0.00156 0.11 0.11 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1255,34 +1076,290 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0.00249 11.5 38.3 1e+03 0.00461 40 40 WorldPhysical eIoni - 2 -0.000398 30 100 1e+03 0.0102 64.4 104 DriftChamberPhysical CoupledTransportation - 3 -0.0236 91.7 306 1e+03 0.00508 215 319 DriftChamberPhysical eIoni - 4 -0.14 270 900 1e+03 0.0181 621 940 WorldPhysical CoupledTransportation - 5 -0.164 300 1e+03 1e+03 0.0228 104 1.04e+03 Crystal CoupledTransportation - 6 -0.164 300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom + 1 0 30 100 1e+03 0.0184 104 104 DriftChamberPhysical CoupledTransportation + 2 0.179 225 750 1e+03 0.02 679 783 DriftChamberPhysical eIoni + 3 0.235 270 900 1e+03 0.00543 156 940 WorldPhysical CoupledTransportation + 4 0.246 278 928 1e+03 0.00539 28.7 968 WorldPhysical eIoni + 5 0.274 300 1e+03 1e+03 0.012 75.7 1.04e+03 Crystal CoupledTransportation + 6 0.274 300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0236 91.7 306 0.0104 0 0 0 DriftChamberPhysical initStep - 1 3.99 94.3 305 0.00884 0.00156 5.05 5.05 DriftChamberPhysical eIoni - 2 7.45 94.7 307 0.00731 0.00153 4.13 9.18 DriftChamberPhysical eIoni - 3 7.38 91.7 308 0.0059 0.00141 3.34 12.5 DriftChamberPhysical eIoni - 4 7.61 89.2 308 0.0045 0.0014 2.7 15.2 DriftChamberPhysical eIoni - 5 7.31 87.3 308 0.00259 0.00191 2.14 17.4 DriftChamberPhysical eIoni - 6 7.18 86.5 308 0.00101 0.00158 1.32 18.7 DriftChamberPhysical eIoni - 7 7.13 86.4 309 0 0.00101 0.305 19 DriftChamberPhysical eIoni + 0 0.246 278 928 0.00132 0 0 0 WorldPhysical initStep + 1 0.221 278 928 0 0.00132 0.0859 0.0859 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00249 11.5 38.3 0.00147 0 0 0 WorldPhysical initStep - 1 0.0416 11.5 38.3 0 0.00147 0.1 0.1 WorldPhysical eIoni + 0 0.179 225 750 0.00111 0 0 0 DriftChamberPhysical initStep + 1 0.285 225 750 0 0.00111 0.353 0.353 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0.000923 9.24 30.8 1e+03 0.00606 32.2 32.2 WorldPhysical eIoni + 2 0.000359 30 100 1e+03 0.015 72.2 104 DriftChamberPhysical CoupledTransportation + 3 -0.00865 57.5 192 1e+03 0.00254 95.8 200 DriftChamberPhysical eIoni + 4 -0.0572 270 900 1e+03 0.0204 739 940 WorldPhysical CoupledTransportation + 5 -0.0561 289 961 1e+03 0.0117 64.1 1e+03 WorldPhysical eIoni + 6 -0.0586 300 1e+03 1e+03 0.00654 40.3 1.04e+03 Crystal CoupledTransportation + 7 -0.0586 300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0561 289 961 0.00178 0 0 0 WorldPhysical initStep + 1 -0.00223 289 961 0 0.00178 0.134 0.134 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.00865 57.5 192 0.00201 0 0 0 DriftChamberPhysical initStep + 1 -0.582 57.9 192 0 0.00201 0.923 0.923 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.000923 9.24 30.8 0.0016 0 0 0 WorldPhysical initStep + 1 -0.0193 9.21 30.8 0 0.0016 0.114 0.114 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 30 100 1e+03 0.0164 104 104 DriftChamberPhysical CoupledTransportation + 2 -0.0112 85.5 285 1e+03 0.00609 193 298 DriftChamberPhysical eIoni + 3 -0.0156 116 388 1e+03 0.00218 107 405 DriftChamberPhysical eIoni + 4 -0.0665 225 751 1e+03 0.0112 379 784 DriftChamberPhysical eIoni + 5 -0.0863 270 900 1e+03 0.00432 156 940 WorldPhysical CoupledTransportation + 6 -0.0955 300 1e+03 1e+03 0.019 104 1.04e+03 Crystal CoupledTransportation + 7 -0.0955 300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0665 225 751 0.00118 0 0 0 DriftChamberPhysical initStep + 1 -0.256 225 751 0 0.00118 0.387 0.387 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0156 116 388 0.00112 0 0 0 DriftChamberPhysical initStep + 1 0.186 116 388 0 0.00112 0.356 0.356 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0112 85.5 285 0.00139 0 0 0 DriftChamberPhysical initStep + 1 -0.281 85.7 285 0 0.00139 0.505 0.505 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0.0201 22.2 74 1e+03 0.015 77.2 77.2 WorldPhysical eIoni + 2 0.0409 30 100 1e+03 0.00664 27.1 104 DriftChamberPhysical CoupledTransportation + 3 0.514 211 703 1e+03 0.0159 629 733 DriftChamberPhysical eIoni + 4 0.676 270 900 1e+03 0.00626 206 940 WorldPhysical CoupledTransportation + 5 0.718 287 956 1e+03 0.00922 58.7 998 WorldPhysical eIoni + 6 0.746 300 1e+03 1e+03 0.00503 45.7 1.04e+03 Crystal CoupledTransportation + 7 0.746 300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.718 287 956 0.00104 0 0 0 WorldPhysical initStep + 1 0.733 287 956 0 0.00104 0.0603 0.0603 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.514 211 703 0.00215 0 0 0 DriftChamberPhysical initStep + 1 0.917 210 703 0 0.00215 1.03 1.03 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0201 22.2 74 0.0568 0 0 0 WorldPhysical initStep + 1 -2.08 22.8 74.4 0.0541 0.000527 2.24 2.24 WorldPhysical eIoni + 2 -10.7 23.6 83.2 0.0495 0.00462 13.3 15.5 WorldPhysical eIoni + 3 -12.4 15.8 90.4 0.0425 0.00696 11.5 27.1 WorldPhysical eIoni + 4 -7.52 12.1 94.3 0.0363 0.00498 7.65 34.7 WorldPhysical eIoni + 5 -6.65 12.2 95.7 0.0304 0.00277 1.67 36.4 WorldPhysical eIoni + 6 -5.31 15.3 98.1 0.0245 0.00374 4.68 41.1 WorldPhysical eIoni + 7 -4.87 19 96.9 0.0192 0.00525 4.3 45.3 WorldPhysical eIoni + 8 -4.7 20.1 96.8 0.0137 0.00432 1.17 46.5 WorldPhysical eIoni + 9 -4.2 21.6 96.4 0.00759 0.00289 1.87 48.4 WorldPhysical eIoni + 10 -4.5 22.2 96.3 0.00135 0.00624 1.43 49.8 WorldPhysical eIoni + 11 -4.48 22.2 96.3 0 0.00135 0.0882 49.9 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -4.2 21.6 96.4 0.0032 0 0 0 WorldPhysical initStep + 1 -4.09 21.7 96.4 0 0.0032 0.352 0.352 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -4.7 20.1 96.8 0.00124 0 0 0 WorldPhysical initStep + 1 -4.68 20.1 96.8 0 0.00124 0.0783 0.0783 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -5.31 15.3 98.1 0.00215 0 0 0 WorldPhysical initStep + 1 -5.36 15.3 98.1 0 0.00215 0.181 0.181 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -6.65 12.2 95.7 0.00316 0 0 0 WorldPhysical initStep + 1 -6.58 12.1 95.7 0.00129 0.00188 0.332 0.332 WorldPhysical eIoni + 2 -6.6 12.1 95.7 0 0.00129 0.0823 0.415 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -7.52 12.1 94.3 0.00125 0 0 0 WorldPhysical initStep + 1 -7.5 12.1 94.3 0 0.00125 0.0784 0.0784 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.08 22.8 74.4 0.00216 0 0 0 WorldPhysical initStep + 1 -2.09 22.7 74.4 0 0.00216 0.183 0.183 WorldPhysical eIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 -30 100 1e+03 0.0212 104 104 DriftChamberPhysical CoupledTransportation + 2 -0.0073 -235 784 1e+03 0.021 714 819 DriftChamberPhysical eIoni + 3 -0.0229 -257 857 1e+03 0.00355 76.2 895 DriftChamberPhysical eIoni + 4 -0.0326 -270 900 1e+03 0.00204 44.6 940 WorldPhysical CoupledTransportation + 5 -0.0403 -281 936 1e+03 0.00463 37.8 977 WorldPhysical eIoni + 6 -0.0418 -282 941 1e+03 0.000575 5.07 982 WorldPhysical eIoni + 7 -0.0493 -291 970 1e+03 0.00713 30.7 1.01e+03 WorldPhysical eIoni + 8 -0.0543 -300 1e+03 1e+03 0.00668 30.9 1.04e+03 Crystal CoupledTransportation + 9 -0.0543 -300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0493 -291 970 0.00187 0 0 0 WorldPhysical initStep + 1 -0.052 -291 970 0 0.00187 0.146 0.146 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0418 -282 941 0.0115 0 0 0 WorldPhysical initStep + 1 0.0809 -283 941 0.00929 0.000527 0.409 0.409 WorldPhysical eIoni + 2 0.822 -283 941 0.00408 0.00521 1.72 2.13 WorldPhysical eIoni + 3 0.633 -283 941 0 0.00408 0.536 2.67 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0809 -283 941 0.00168 0 0 0 WorldPhysical initStep + 1 0.0551 -283 941 0 0.00168 0.123 0.123 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0403 -281 936 0.00155 0 0 0 WorldPhysical initStep + 1 -0.00387 -281 936 0 0.00155 0.109 0.109 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0229 -257 857 0.00109 0 0 0 DriftChamberPhysical initStep + 1 -0.0437 -257 857 0 0.00109 0.342 0.342 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0073 -235 784 0.00106 0 0 0 DriftChamberPhysical initStep + 1 0.206 -235 784 0 0.00106 0.33 0.33 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 -30 100 1e+03 0.0162 104 104 DriftChamberPhysical CoupledTransportation + 2 0.00232 -270 900 1e+03 0.0246 835 940 WorldPhysical CoupledTransportation + 3 0.00203 -290 965 1e+03 0.0144 67.7 1.01e+03 WorldPhysical eIoni + 4 0.00466 -300 1e+03 1e+03 0.00707 36.7 1.04e+03 Crystal CoupledTransportation + 5 0.00466 -300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.00203 -290 965 0.00227 0 0 0 WorldPhysical initStep + 1 -0.0567 -289 965 0 0.00227 0.198 0.198 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 @@ -1291,1378 +1368,476 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep 1 0 -30 100 1e+03 0.0236 104 104 DriftChamberPhysical CoupledTransportation - 2 0.0682 -172 572 1e+03 0.0127 493 597 DriftChamberPhysical eIoni - 3 0.0875 -208 692 1e+03 0.00405 125 722 DriftChamberPhysical eIoni - 4 0.124 -270 900 1e+03 0.00736 218 940 WorldPhysical CoupledTransportation - 5 0.13 -281 936 1e+03 0.00751 37.5 977 WorldPhysical eIoni - 6 0.132 -285 950 1e+03 0.00157 15.2 992 WorldPhysical eIoni - 7 0.137 -294 980 1e+03 0.00714 30.7 1.02e+03 WorldPhysical eIoni - 8 0.142 -300 1e+03 1e+03 0.00883 21 1.04e+03 Crystal CoupledTransportation - 9 0.142 -300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.137 -294 980 0.00187 0 0 0 WorldPhysical initStep - 1 0.134 -294 980 0 0.00187 0.146 0.146 WorldPhysical eIoni + 2 -0.0123 -61.6 205 1e+03 0.00421 110 214 DriftChamberPhysical eIoni + 3 -0.00711 -147 490 1e+03 0.0131 297 512 DriftChamberPhysical eIoni + 4 -0.00405 -270 900 1e+03 0.00979 428 940 WorldPhysical CoupledTransportation + 5 -0.00363 -274 913 1e+03 0.00289 13.4 953 WorldPhysical eIoni + 6 -0.00323 -277 922 1e+03 0.00363 9.94 963 WorldPhysical eIoni + 7 -0.00686 -300 1e+03 1e+03 0.0179 81.1 1.04e+03 Crystal CoupledTransportation + 8 -0.00686 -300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.132 -285 950 0.0115 0 0 0 WorldPhysical initStep - 1 0.555 -286 950 0.00774 0.00376 2.06 2.06 WorldPhysical eIoni - 2 1.26 -286 950 0.00157 0.00617 1.46 3.52 WorldPhysical eIoni - 3 1.24 -286 950 0 0.00157 0.112 3.63 WorldPhysical eIoni + 0 -0.00323 -277 922 0.00606 0 0 0 WorldPhysical initStep + 1 0.396 -277 922 0 0.00606 1.07 1.07 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.13 -281 936 0.00131 0 0 0 WorldPhysical initStep - 1 0.158 -281 936 0 0.00131 0.0843 0.0843 WorldPhysical eIoni + 0 -0.00363 -274 913 0.00176 0 0 0 WorldPhysical initStep + 1 -0.0231 -274 913 0 0.00176 0.132 0.132 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0875 -208 692 0.00138 0 0 0 DriftChamberPhysical initStep - 1 -0.00632 -207 692 0 0.00138 0.494 0.494 DriftChamberPhysical eIoni + 0 -0.00711 -147 490 0.00146 0 0 0 DriftChamberPhysical initStep + 1 0.369 -147 490 0 0.00146 0.544 0.544 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0682 -172 572 0.0015 0 0 0 DriftChamberPhysical initStep - 1 0.136 -171 572 0 0.0015 0.571 0.571 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 -0.000815 -14.3 47.8 1e+03 0.00874 49.9 49.9 WorldPhysical eIoni - 2 -0.0012 -18.5 61.5 1e+03 0.00354 14.4 64.3 WorldPhysical eIoni - 3 0.00485 -23.3 77.7 1e+03 0.00446 16.9 81.1 WorldPhysical eIoni - 4 0.0148 -30 100 1e+03 0.00661 23.3 104 DriftChamberPhysical CoupledTransportation - 5 0.0947 -76.4 254 1e+03 0.00715 161 265 DriftChamberPhysical eIoni - 6 0.143 -107 356 1e+03 0.00245 106 371 DriftChamberPhysical eIoni - 7 0.415 -270 900 1e+03 0.0184 568 940 WorldPhysical CoupledTransportation - 8 0.424 -276 919 1e+03 0.00369 20 960 WorldPhysical eIoni - 9 0.43 -280 931 1e+03 0.00167 12.7 972 WorldPhysical eIoni - 10 0.432 -282 938 1e+03 0.00117 6.76 979 WorldPhysical eIoni - 11 0.433 -282 940 1e+03 0.000352 2.81 982 WorldPhysical eIoni - 12 0.452 -300 1e+03 1e+03 0.0113 62.1 1.04e+03 Crystal CoupledTransportation - 13 0.452 -300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.433 -282 940 0.00113 0 0 0 WorldPhysical initStep - 1 0.436 -282 940 0 0.00113 0.0679 0.0679 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.432 -282 938 0.0114 0 0 0 WorldPhysical initStep - 1 1.16 -283 938 0.00838 0.00306 2.05 2.05 WorldPhysical eIoni - 2 1.2 -283 938 0.00237 0.00465 1.36 3.41 WorldPhysical eIoni - 3 1.28 -283 938 0 0.00237 0.213 3.62 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 9 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.2 -283 938 0.00136 0 0 0 WorldPhysical initStep - 1 1.19 -283 938 0 0.00136 0.0897 0.0897 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.43 -280 931 0.00356 0 0 0 WorldPhysical initStep - 1 0.586 -280 931 0 0.00356 0.422 0.422 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.424 -276 919 0.00101 0 0 0 WorldPhysical initStep - 1 0.437 -276 919 0 0.00101 0.0577 0.0577 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.143 -107 356 0.00349 0 0 0 DriftChamberPhysical initStep - 1 -0.108 -108 355 0.00231 0.00119 1.74 1.74 DriftChamberPhysical eIoni - 2 0.0158 -109 355 0 0.00231 1.14 2.89 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0947 -76.4 254 0.00107 0 0 0 DriftChamberPhysical initStep - 1 0.317 -76.3 254 0 0.00107 0.335 0.335 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00485 -23.3 77.7 0.00154 0 0 0 WorldPhysical initStep - 1 -0.0308 -23.4 77.7 0 0.00154 0.108 0.108 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0012 -18.5 61.5 0.00168 0 0 0 WorldPhysical initStep - 1 -0.0255 -18.4 61.6 0 0.00168 0.124 0.124 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000815 -14.3 47.8 0.00149 0 0 0 WorldPhysical initStep - 1 0.0325 -14.3 47.8 0 0.00149 0.103 0.103 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 -30 100 1e+03 0.0219 104 104 DriftChamberPhysical CoupledTransportation - 2 0.0416 -172 575 1e+03 0.0142 496 600 DriftChamberPhysical eIoni - 3 0.0537 -222 741 1e+03 0.00444 174 774 DriftChamberPhysical eIoni - 4 0.048 -270 900 1e+03 0.00528 166 940 WorldPhysical CoupledTransportation - 5 0.0413 -300 1e+03 1e+03 0.0224 104 1.04e+03 Crystal CoupledTransportation - 6 0.0413 -300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0537 -222 741 0.00672 0 0 0 DriftChamberPhysical initStep - 1 1.75 -225 741 0.00609 0.000626 3.06 3.06 DriftChamberPhysical eIoni - 2 3.15 -226 740 0.00521 0.000881 2.79 5.85 DriftChamberPhysical eIoni - 3 3.94 -228 740 0.00314 0.00207 2.42 8.27 DriftChamberPhysical eIoni - 4 4.68 -230 740 0.00179 0.00136 1.59 9.87 DriftChamberPhysical eIoni - 5 4.53 -230 740 0 0.00179 0.756 10.6 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0416 -172 575 0.0163 0 0 0 DriftChamberPhysical initStep - 1 -2.28 -164 578 0.0139 0.00244 9.66 9.66 DriftChamberPhysical eIoni - 2 -2.93 -161 579 0.0112 0.00107 2.97 12.6 DriftChamberPhysical eIoni - 3 -5.72 -157 579 0.0101 0.00104 5.56 18.2 DriftChamberPhysical eIoni - 4 -8.03 -153 581 0.00861 0.00152 4.89 23.1 DriftChamberPhysical eIoni - 5 -11.1 -152 582 0.00648 0.00213 4.01 27.1 DriftChamberPhysical eIoni - 6 -11.7 -150 580 0.00495 0.00153 2.96 30 DriftChamberPhysical eIoni - 7 -13.5 -151 581 0.00341 0.00154 2.32 32.4 DriftChamberPhysical eIoni - 8 -14.4 -152 581 0.00204 0.00137 1.71 34.1 DriftChamberPhysical eIoni - 9 -15 -152 581 0 0.00204 0.945 35 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -2.93 -161 579 0.00165 0 0 0 DriftChamberPhysical initStep - 1 -2.62 -161 579 0 0.00165 0.665 0.665 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 1.58e-06 -2.12 7.06 1e+03 0.000854 7.37 7.37 WorldPhysical eIoni - 2 0.000722 -30 100 1e+03 0.0158 97 104 DriftChamberPhysical CoupledTransportation - 3 0.0354 -74.9 250 1e+03 0.00652 156 261 DriftChamberPhysical eIoni - 4 0.202 -270 900 1e+03 0.0196 679 940 WorldPhysical CoupledTransportation - 5 0.232 -300 1e+03 1e+03 0.0166 104 1.04e+03 Crystal CoupledTransportation - 6 0.232 -300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0354 -74.9 250 0.00102 0 0 0 DriftChamberPhysical initStep - 1 -0.151 -74.8 250 0 0.00102 0.31 0.31 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.58e-06 -2.12 7.06 0.00147 0 0 0 WorldPhysical initStep - 1 0.0371 -2.13 7.06 0 0.00147 0.101 0.101 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0.000721 -7.58 25.3 1e+03 0.00433 26.4 26.4 WorldPhysical eIoni - 2 0.000319 -10.4 34.8 1e+03 0.00114 9.89 36.3 WorldPhysical eIoni - 3 -0.0144 -22.7 75.7 1e+03 0.00665 42.7 79 WorldPhysical eIoni - 4 -0.0254 -30 100 1e+03 0.00408 25.4 104 DriftChamberPhysical CoupledTransportation - 5 -0.409 -262 875 1e+03 0.0235 809 914 DriftChamberPhysical eIoni - 6 -0.421 -270 900 1e+03 0.00104 26 940 WorldPhysical CoupledTransportation - 7 -0.466 -300 1e+03 1e+03 0.0143 104 1.04e+03 Crystal CoupledTransportation - 8 -0.466 -300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.409 -262 875 0.00207 0 0 0 DriftChamberPhysical initStep - 1 -1.1 -263 875 0 0.00207 0.969 0.969 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0144 -22.7 75.7 0.00108 0 0 0 WorldPhysical initStep - 1 -0.0241 -22.7 75.7 0 0.00108 0.0636 0.0636 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000319 -10.4 34.8 0.00136 0 0 0 WorldPhysical initStep - 1 0.00488 -10.5 34.7 0 0.00136 0.0891 0.0891 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000721 -7.58 25.3 0.00138 0 0 0 WorldPhysical initStep - 1 0.0321 -7.57 25.3 0 0.00138 0.0915 0.0915 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0.00146 -21.4 35.7 1e+03 0.00765 41.7 41.7 WorldPhysical eIoni - 2 0.00102 -46.4 77.4 1e+03 0.00966 48.6 90.2 WorldPhysical eIoni - 3 -0.000961 -56 93.3 1e+03 0.00525 18.5 109 WorldPhysical eIoni - 4 -0.00243 -60 100 1e+03 0.00186 7.86 117 DriftChamberPhysical CoupledTransportation - 5 -0.0852 -196 327 1e+03 0.00711 265 382 DriftChamberPhysical eIoni - 6 -0.374 -538 897 1e+03 0.0184 664 1.05e+03 DriftChamberPhysical eIoni - 7 -0.376 -540 900 1e+03 1.14e-05 3.49 1.05e+03 WorldPhysical CoupledTransportation - 8 -0.385 -550 917 1e+03 0.00333 19.4 1.07e+03 WorldPhysical eIoni - 9 -0.433 -593 989 1e+03 0.0194 84.6 1.15e+03 WorldPhysical eIoni - 10 -0.442 -600 1e+03 1e+03 0.00115 12.6 1.17e+03 Crystal CoupledTransportation - 11 -0.442 -600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.433 -593 989 0.00301 0 0 0 WorldPhysical initStep - 1 -0.302 -593 989 0 0.00301 0.316 0.316 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.385 -550 917 0.0019 0 0 0 WorldPhysical initStep - 1 -0.446 -550 917 0 0.0019 0.149 0.149 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.374 -538 897 0.00202 0 0 0 DriftChamberPhysical initStep - 1 -0.698 -538 897 0 0.00202 0.924 0.924 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0852 -196 327 0.000998 0 0 0 DriftChamberPhysical initStep - 1 -0.0281 -197 327 0 0.000998 0.299 0.299 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000961 -56 93.3 0.00286 0 0 0 WorldPhysical initStep - 1 0.0564 -56.1 93.2 0 0.00286 0.291 0.291 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00102 -46.4 77.4 0.00145 0 0 0 WorldPhysical initStep - 1 0.0216 -46.4 77.4 0 0.00145 0.098 0.098 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00146 -21.4 35.7 0.0052 0 0 0 WorldPhysical initStep - 1 0.252 -21.2 35.9 0 0.0052 0.821 0.821 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0.000517 -10.8 18.1 1e+03 0.00624 21.1 21.1 WorldPhysical eIoni - 2 0.00166 -60 100 1e+03 0.0203 95.5 117 DriftChamberPhysical CoupledTransportation - 3 -0.112 -540 900 1e+03 0.0242 933 1.05e+03 WorldPhysical CoupledTransportation - 4 -0.155 -600 1e+03 1e+03 0.0233 117 1.17e+03 Crystal CoupledTransportation - 5 -0.155 -600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000517 -10.8 18.1 0.00295 0 0 0 WorldPhysical initStep - 1 0.0611 -10.9 18 0 0.00295 0.307 0.307 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0.00719 -42.3 70.5 1e+03 0.0142 82.2 82.2 WorldPhysical eIoni - 2 0.00682 -60 100 1e+03 0.00677 34.4 117 DriftChamberPhysical CoupledTransportation - 3 -0.0308 -163 273 1e+03 0.00582 201 318 DriftChamberPhysical eIoni - 4 -0.157 -540 900 1e+03 0.0204 732 1.05e+03 WorldPhysical CoupledTransportation - 5 -0.176 -600 1e+03 1e+03 0.0283 117 1.17e+03 Crystal CoupledTransportation - 6 -0.176 -600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0308 -163 273 0.00188 0 0 0 DriftChamberPhysical initStep - 1 -0.392 -163 273 0 0.00188 0.82 0.82 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00719 -42.3 70.5 0.00136 0 0 0 WorldPhysical initStep - 1 0.0329 -42.3 70.5 0 0.00136 0.0893 0.0893 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 -0.00122 -7.49 12.5 1e+03 0.00376 14.6 14.6 WorldPhysical eIoni - 2 -0.0103 -41.8 69.7 1e+03 0.0117 66.7 81.2 WorldPhysical eIoni - 3 -0.0125 -60 100 1e+03 0.008 35.4 117 DriftChamberPhysical CoupledTransportation - 4 -0.000266 -168 280 1e+03 0.00685 209 326 DriftChamberPhysical eIoni - 5 0.0573 -473 788 1e+03 0.0172 593 919 DriftChamberPhysical eIoni - 6 0.0702 -540 900 1e+03 0.00441 130 1.05e+03 WorldPhysical CoupledTransportation - 7 0.0725 -559 931 1e+03 0.00839 36.6 1.09e+03 WorldPhysical eIoni - 8 0.0913 -592 986 1e+03 0.0116 63.9 1.15e+03 WorldPhysical eIoni - 9 0.0965 -600 1e+03 1e+03 0.0019 16.1 1.17e+03 Crystal CoupledTransportation - 10 0.0965 -600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0913 -592 986 0.00114 0 0 0 WorldPhysical initStep - 1 0.0711 -592 986 0 0.00114 0.0686 0.0686 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0725 -559 931 0.064 0 0 0 WorldPhysical initStep - 1 -13 -568 933 0.0561 0.00792 17.4 17.4 WorldPhysical eIoni - 2 -21.5 -578 933 0.046 0.0101 14 31.4 WorldPhysical eIoni - 3 -22.1 -587 929 0.0425 0.0035 10.3 41.7 WorldPhysical eIoni - 4 -25.3 -595 929 0.0356 0.00693 9.12 50.9 WorldPhysical eIoni - 5 -25.7 -601 930 0.0325 0.00307 7.02 57.9 WorldPhysical eIoni - 6 -26.5 -600 925 0.0283 0.00417 6.19 64.1 WorldPhysical eIoni - 7 -25.7 -599 924 0.0257 0.00156 2.15 66.2 WorldPhysical eIoni - 8 -23.5 -597 921 0.0195 0.00616 4.56 70.8 WorldPhysical eIoni - 9 -22.2 -596 921 0.0134 0.00285 1.77 72.5 WorldPhysical eIoni - 10 -21.9 -596 921 0.00966 0.000277 0.262 72.8 WorldPhysical eIoni - 11 -21 -596 922 0.00693 0.00273 1.78 74.6 WorldPhysical eIoni - 12 -20.6 -596 921 0 0.00693 1.29 75.9 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -21.9 -596 921 0.00347 0 0 0 WorldPhysical initStep - 1 -21.9 -597 922 0.00144 0.000918 0.189 0.189 WorldPhysical eIoni - 2 -21.9 -597 922 0 0.00144 0.0976 0.286 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 10 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -21.9 -597 922 0.00111 0 0 0 WorldPhysical initStep - 1 -21.9 -597 922 0 0.00111 0.0662 0.0662 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -22.2 -596 921 0.00328 0 0 0 WorldPhysical initStep - 1 -22.2 -596 921 0 0.00328 0.366 0.366 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -25.7 -599 924 0.00106 0 0 0 WorldPhysical initStep - 1 -25.6 -599 924 0 0.00106 0.0623 0.0623 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0573 -473 788 0.00116 0 0 0 DriftChamberPhysical initStep - 1 0.269 -473 788 0 0.00116 0.379 0.379 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000266 -168 280 0.00148 0 0 0 DriftChamberPhysical initStep - 1 0.385 -168 280 0 0.00148 0.554 0.554 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0103 -41.8 69.7 0.00142 0 0 0 WorldPhysical initStep - 1 -0.0437 -41.8 69.7 0 0.00142 0.0955 0.0955 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00122 -7.49 12.5 0.0019 0 0 0 WorldPhysical initStep - 1 -0.00827 -7.44 12.5 0 0.0019 0.149 0.149 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 -0.0111 -43.9 73.1 1e+03 0.0157 85.3 85.3 WorldPhysical eIoni - 2 -0.017 -60 100 1e+03 0.00694 31.3 117 DriftChamberPhysical CoupledTransportation - 3 -0.115 -540 900 1e+03 0.0276 933 1.05e+03 WorldPhysical CoupledTransportation - 4 -0.116 -552 921 1e+03 0.00403 24.2 1.07e+03 WorldPhysical eIoni - 5 -0.117 -600 1e+03 1e+03 0.0146 92.4 1.17e+03 Crystal CoupledTransportation - 6 -0.117 -600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.116 -552 921 0.00117 0 0 0 WorldPhysical initStep - 1 -0.141 -552 921 0 0.00117 0.0716 0.0716 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0111 -43.9 73.1 0.00103 0 0 0 WorldPhysical initStep - 1 0.00268 -43.9 73.1 0 0.00103 0.0593 0.0593 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 51 84.9 1e+03 0.0128 99.1 99.1 WorldPhysical hIoni - 2 0.00582 60 100 1e+03 0.00179 17.6 117 DriftChamberPhysical CoupledTransportation - 3 0.0821 170 284 1e+03 0.0024 215 331 DriftChamberPhysical hIoni - 4 0.136 250 418 1e+03 0.00244 156 487 DriftChamberPhysical hIoni - 5 0.328 539 900 1e+03 0.0122 562 1.05e+03 WorldPhysical CoupledTransportation - 6 0.344 569 950 1e+03 0.0112 58.3 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - 7 0.344 569 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.136 250 418 0.00172 0 0 0 DriftChamberPhysical initStep - 1 0.362 251 417 0 0.00172 0.707 0.707 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0821 170 284 0.00154 0 0 0 DriftChamberPhysical initStep - 1 -0.282 170 284 0 0.00154 0.592 0.592 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 51 84.9 0.392 0 0 0 WorldPhysical initStep - 1 -12.8 76.5 84.1 0.385 0.0035 28.8 28.8 WorldPhysical eIoni - 2 -17.6 88.5 84.1 0.31 0.00167 12.9 41.7 WorldPhysical eIoni - 3 -28.6 100 79.9 0.304 0.00413 16.9 58.6 WorldPhysical eIoni - 4 -55.5 102 77.7 0.298 0.00433 27.2 85.7 WorldPhysical eIoni - 5 -91.6 104 71.4 0.289 0.00805 37.2 123 WorldPhysical eIoni - 6 -112 107 60.5 0.285 0.00359 23.8 147 WorldPhysical eIoni - 7 -134 107 53.1 0.28 0.00371 22.9 170 WorldPhysical eIoni - 8 -161 110 39.1 0.271 0.00467 30.8 200 WorldPhysical eIoni - 9 -202 142 36.3 0.262 0.00865 53.1 253 WorldPhysical eIoni - 10 -284 184 10.4 0.242 0.0168 99.6 353 WorldPhysical eIoni - 11 -289 189 8.54 0.238 0.00129 6.48 360 WorldPhysical eIoni - 12 -320 225 -1.21 0.225 0.0106 50.1 410 WorldPhysical eIoni - 13 -337 244 -15 0.218 0.00703 29.3 439 WorldPhysical eIoni - 14 -369 268 -66.5 0.207 0.00925 67.7 507 WorldPhysical eIoni - 15 -408 263 -146 0.186 0.02 93.2 600 WorldPhysical eIoni - 16 -407 289 -167 0.174 0.0107 34.2 634 WorldPhysical eIoni - 17 -404 303 -176 0.169 0.00304 17.4 651 WorldPhysical eIoni - 18 -400 317 -189 0.162 0.0045 19 670 WorldPhysical eIoni - 19 -400 319 -190 0.159 0.000321 2.19 673 WorldPhysical eIoni - 20 -395 334 -205 0.153 0.00451 22.1 695 WorldPhysical eIoni - 21 -394 340 -219 0.147 0.00631 15.5 710 WorldPhysical eIoni - 22 -403 339 -236 0.14 0.00492 19.6 730 WorldPhysical eIoni - 23 -417 341 -250 0.135 0.00358 20.2 750 WorldPhysical eIoni - 24 -459 339 -281 0.118 0.0174 60.5 811 WorldPhysical eIoni - 25 -470 358 -299 0.0953 0.00912 31.5 842 WorldPhysical eIoni - 26 -477 385 -292 0.0853 0.0101 33.6 876 WorldPhysical eIoni - 27 -461 386 -274 0.0745 0.0108 27.9 904 WorldPhysical eIoni - 28 -457 380 -263 0.0654 0.00761 15 919 WorldPhysical eIoni - 29 -458 377 -258 0.059 0.00267 5.83 925 WorldPhysical eIoni - 30 -459 376 -245 0.0515 0.00755 15.3 940 WorldPhysical eIoni - 31 -464 378 -241 0.0456 0.00433 6.91 947 WorldPhysical eIoni - 32 -470 378 -236 0.0393 0.00633 10.2 957 WorldPhysical eIoni - 33 -471 377 -235 0.0374 0.00036 1.04 958 WorldPhysical eIoni - 34 -473 374 -230 0.034 0.00342 7.55 965 WorldPhysical eIoni - 35 -472 370 -226 0.0265 0.00742 6.58 972 WorldPhysical eIoni - 36 -473 371 -222 0.0216 0.0049 4.74 977 WorldPhysical eIoni - 37 -473 373 -220 0.0178 0.00386 3.72 981 WorldPhysical eIoni - 38 -473 374 -219 0.0142 0.0024 1.06 982 WorldPhysical eIoni - 39 -472 375 -218 0.00924 0.005 2.46 984 WorldPhysical eIoni - 40 -471 375 -219 0.00344 0.00579 1.72 986 WorldPhysical eIoni - 41 -471 375 -219 0 0.00344 0.399 986 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 29, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -473 374 -219 0.00114 0 0 0 WorldPhysical initStep - 1 -473 374 -219 0 0.00114 0.0691 0.0691 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 28, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -471 377 -235 0.00156 0 0 0 WorldPhysical initStep - 1 -471 377 -235 0 0.00156 0.111 0.111 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 27, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -464 378 -241 0.00149 0 0 0 WorldPhysical initStep - 1 -464 378 -242 0 0.00149 0.102 0.102 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 26, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -458 377 -258 0.00369 0 0 0 WorldPhysical initStep - 1 -458 377 -258 0 0.00369 0.451 0.451 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 25, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -457 380 -263 0.0015 0 0 0 WorldPhysical initStep - 1 -457 380 -263 0 0.0015 0.104 0.104 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 24, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -470 358 -299 0.0136 0 0 0 WorldPhysical initStep - 1 -469 359 -300 0.0103 0.00333 2.37 2.37 WorldPhysical eIoni - 2 -469 358 -300 0.00651 0.000547 0.475 2.85 WorldPhysical eIoni - 3 -469 358 -301 0 0.00651 1.19 4.04 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 30, Parent ID = 24 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -469 358 -300 0.00326 0 0 0 WorldPhysical initStep - 1 -469 358 -300 0 0.00326 0.364 0.364 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 23, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -417 341 -250 0.00109 0 0 0 WorldPhysical initStep - 1 -417 341 -250 0 0.00109 0.0648 0.0648 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 22, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -403 339 -236 0.00179 0 0 0 WorldPhysical initStep - 1 -403 340 -236 0 0.00179 0.136 0.136 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -395 334 -205 0.00138 0 0 0 WorldPhysical initStep - 1 -395 334 -205 0 0.00138 0.0918 0.0918 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -400 319 -190 0.00224 0 0 0 WorldPhysical initStep - 1 -400 319 -190 0 0.00224 0.194 0.194 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -400 317 -189 0.00252 0 0 0 WorldPhysical initStep - 1 -400 317 -189 0 0.00252 0.235 0.235 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -404 303 -176 0.00226 0 0 0 WorldPhysical initStep - 1 -404 303 -176 0 0.00226 0.197 0.197 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -407 289 -167 0.00103 0 0 0 WorldPhysical initStep - 1 -407 289 -167 0 0.00103 0.0595 0.0595 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -408 263 -146 0.0013 0 0 0 WorldPhysical initStep - 1 -408 263 -146 0 0.0013 0.0836 0.0836 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -369 268 -66.5 0.00164 0 0 0 WorldPhysical initStep - 1 -369 268 -66.6 0 0.00164 0.119 0.119 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -320 225 -1.21 0.00278 0 0 0 WorldPhysical initStep - 1 -320 226 -1.11 0 0.00278 0.278 0.278 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -289 189 8.54 0.00295 0 0 0 WorldPhysical initStep - 1 -289 189 8.53 0 0.00295 0.307 0.307 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -284 184 10.4 0.00304 0 0 0 WorldPhysical initStep - 1 -284 184 10.4 0 0.00304 0.322 0.322 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -161 110 39.1 0.00474 0 0 0 WorldPhysical initStep - 1 -161 110 38.9 0 0.00474 0.697 0.697 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -134 107 53.1 0.00101 0 0 0 WorldPhysical initStep - 1 -134 107 53.1 0 0.00101 0.0577 0.0577 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -91.6 104 71.4 0.00138 0 0 0 WorldPhysical initStep - 1 -91.6 104 71.3 0 0.00138 0.091 0.091 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -55.5 102 77.7 0.00188 0 0 0 WorldPhysical initStep - 1 -55.5 102 77.7 0 0.00188 0.147 0.147 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -28.6 100 79.9 0.00137 0 0 0 WorldPhysical initStep - 1 -28.6 100 79.9 0 0.00137 0.0902 0.0902 WorldPhysical eIoni + 0 -0.0123 -61.6 205 0.0827 0 0 0 DriftChamberPhysical initStep + 1 -104 40.5 263 0.0743 0.00841 160 160 DriftChamberPhysical eIoni + 2 -160 141 323 0.0631 0.0112 132 291 DriftChamberPhysical eIoni + 3 -195 227 351 0.0545 0.00857 98.8 390 DriftChamberPhysical eIoni + 4 -240 286 359 0.0491 0.00546 76.2 467 DriftChamberPhysical eIoni + 5 -280 333 353 0.0434 0.00571 63.2 530 DriftChamberPhysical eIoni + 6 -296 379 360 0.0385 0.00486 50.7 580 DriftChamberPhysical eIoni + 7 -321 409 362 0.0346 0.00391 41.1 622 DriftChamberPhysical eIoni + 8 -334 438 371 0.0314 0.0032 34.1 656 DriftChamberPhysical eIoni + 9 -344 452 392 0.0257 0.00571 28.7 684 DriftChamberPhysical eIoni + 10 -359 462 399 0.0227 0.00298 20.3 705 DriftChamberPhysical eIoni + 11 -371 473 401 0.0192 0.0035 16.5 721 DriftChamberPhysical eIoni + 12 -381 478 407 0.0159 0.00327 12.5 734 DriftChamberPhysical eIoni + 13 -387 482 410 0.0139 0.00199 9.31 743 DriftChamberPhysical eIoni + 14 -393 483 415 0.0126 0.00136 7.61 751 DriftChamberPhysical eIoni + 15 -396 485 420 0.0112 0.00136 6.55 757 DriftChamberPhysical eIoni + 16 -400 486 423 0.0107 0.000517 5.59 763 DriftChamberPhysical eIoni + 17 -401 488 424 0.00763 0.000964 2.42 765 DriftChamberPhysical eIoni + 18 -403 488 427 0.00658 0.00104 3.49 769 DriftChamberPhysical eIoni + 19 -405 488 429 0.0053 0.00128 3 772 DriftChamberPhysical eIoni + 20 -406 488 431 0.00394 0.00137 2.46 774 DriftChamberPhysical eIoni + 21 -406 488 433 0.00327 0.000672 1.92 776 DriftChamberPhysical eIoni + 22 -405 489 432 0.0014 0.00187 1.65 778 DriftChamberPhysical eIoni + 23 -405 489 432 0 0.0014 0.508 778 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -17.6 88.5 84.1 0.0737 0 0 0 WorldPhysical initStep - 1 -5.98 97.5 96.7 0.0634 0.0103 21.9 21.9 WorldPhysical eIoni - 2 -5.33 97.4 98.7 0.0564 0.00102 2.16 24.1 WorldPhysical eIoni - 3 -4.98 97.1 100 0.0546 0.00181 1.41 25.5 DriftChamberPhysical CoupledTransportation - 4 12.9 74.4 169 0.0499 0.00468 76.3 102 DriftChamberPhysical eIoni - 5 23.9 34.4 218 0.0441 0.00578 65.1 167 DriftChamberPhysical eIoni - 6 18.4 36 217 0.0419 0.000327 5.72 173 DriftChamberPhysical eIoni - 7 -3.57 37 214 0.0365 0.00261 22.5 195 DriftChamberPhysical eIoni - 8 -30.1 43.1 189 0.0333 0.00317 37.3 232 DriftChamberPhysical eIoni - 9 -49.9 53.7 168 0.0307 0.00255 31.8 264 DriftChamberPhysical eIoni - 10 -65.2 65.7 149 0.0252 0.00554 27.7 292 DriftChamberPhysical eIoni - 11 -65.8 66.2 148 0.0225 0.000178 0.908 293 DriftChamberPhysical eIoni - 12 -74.3 74.3 138 0.0198 0.00272 16.2 309 DriftChamberPhysical eIoni - 13 -80.9 81.7 129 0.0169 0.00285 13.1 322 DriftChamberPhysical eIoni - 14 -83.7 88.1 123 0.0142 0.00108 9.82 332 DriftChamberPhysical eIoni - 15 -84.6 95.7 123 0.0127 0.00156 7.84 340 DriftChamberPhysical eIoni - 16 -84.7 99 123 0.011 0.000363 3.38 343 DriftChamberPhysical eIoni - 17 -86.6 104 125 0.00946 0.00153 5.43 349 DriftChamberPhysical eIoni - 18 -88.2 107 126 0.00749 0.00196 4.48 353 DriftChamberPhysical eIoni - 19 -88.7 109 129 0.00648 0.00102 3.43 356 DriftChamberPhysical eIoni - 20 -90.7 110 130 0.00475 0.00172 2.95 359 DriftChamberPhysical eIoni - 21 -90.8 112 128 0.00337 0.00139 2.24 362 DriftChamberPhysical eIoni - 22 -91 113 128 0.00207 0.0013 1.69 363 DriftChamberPhysical eIoni - 23 -91.1 114 128 0 0.00207 0.963 364 DriftChamberPhysical eIoni + 0 -401 488 424 0.00212 0 0 0 DriftChamberPhysical initStep + 1 -401 488 424 0 0.00212 1 1 DriftChamberPhysical eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 36, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -84.7 99 123 0.00132 0 0 0 DriftChamberPhysical initStep - 1 -84.4 99.2 123 0 0.00132 0.464 0.464 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 35, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -83.7 88.1 123 0.0016 0 0 0 DriftChamberPhysical initStep - 1 -83.8 88.1 122 0 0.0016 0.632 0.632 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 34, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -65.8 66.2 148 0.00252 0 0 0 DriftChamberPhysical initStep - 1 -66 66.9 149 0 0.00252 1.28 1.28 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 33, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.57 37 214 0.00281 0 0 0 DriftChamberPhysical initStep - 1 -4.18 37.1 215 0 0.00281 1.43 1.43 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 32, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 18.4 36 217 0.00192 0 0 0 DriftChamberPhysical initStep - 1 18.5 36.6 217 0 0.00192 0.849 0.849 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 31, Parent ID = 6 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -5.33 97.4 98.7 0.00601 0 0 0 WorldPhysical initStep - 1 -5.16 97.8 98.8 0.00171 0.0043 1.06 1.06 WorldPhysical eIoni - 2 -5.13 97.9 98.8 0 0.00171 0.127 1.19 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -12.8 76.5 84.1 0.00367 0 0 0 WorldPhysical initStep - 1 -13 76.5 84 0 0.00367 0.447 0.447 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 53.3 88.8 1e+03 0.0145 104 104 WorldPhysical hIoni - 2 -0.0025 60 100 1e+03 0.00107 13.1 117 DriftChamberPhysical CoupledTransportation - 3 -0.192 540 900 1e+03 0.021 933 1.05e+03 WorldPhysical CoupledTransportation - 4 -0.206 570 950 1e+03 0.00673 58.3 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - 5 -0.206 570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 53.3 88.8 0.2 0 0 0 WorldPhysical initStep - 1 24.8 127 96 0.173 0.0211 83.6 83.6 WorldPhysical eIoni - 2 24.2 131 100 0.172 0.000983 5.86 89.4 DriftChamberPhysical CoupledTransportation - 3 21.4 150 115 0.168 0.00119 24.7 114 DriftChamberPhysical eIoni - 4 -18.1 362 295 0.157 0.00787 284 398 DriftChamberPhysical eIoni - 5 -206 755 485 0.138 0.0195 484 882 DriftChamberPhysical eIoni - 6 -416 989 614 0.118 0.0152 345 1.23e+03 DriftChamberPhysical eIoni - 7 -599 1.15e+03 776 0.102 0.0163 297 1.52e+03 DriftChamberPhysical eIoni - 8 -783 1.24e+03 862 0.0884 0.0134 230 1.75e+03 DriftChamberPhysical eIoni - 9 -826 1.25e+03 880 0.0864 0.00203 48.6 1.8e+03 WorldPhysical CoupledTransportation - 10 -829 1.25e+03 880 0.0844 0.000357 3.26 1.81e+03 WorldPhysical eIoni - 11 -854 1.26e+03 877 0.0735 0.011 27.5 1.83e+03 WorldPhysical eIoni - 12 -860 1.26e+03 868 0.0665 0.00418 12.7 1.85e+03 WorldPhysical eIoni - 13 -862 1.28e+03 864 0.0576 0.0089 18.5 1.86e+03 WorldPhysical eIoni - 14 -870 1.29e+03 861 0.0514 0.00614 14.7 1.88e+03 WorldPhysical eIoni - 15 -874 1.3e+03 859 0.044 0.00476 10 1.89e+03 WorldPhysical eIoni - 16 -874 1.31e+03 859 0.0391 0.00484 9.61 1.9e+03 WorldPhysical eIoni - 17 -874 1.31e+03 861 0.0355 0.00134 2.46 1.9e+03 WorldPhysical eIoni - 18 -876 1.31e+03 866 0.0299 0.00564 7.02 1.91e+03 WorldPhysical eIoni - 19 -873 1.31e+03 863 0.0259 0.00396 5.53 1.91e+03 WorldPhysical eIoni - 20 -870 1.31e+03 865 0.0224 0.00357 4.61 1.92e+03 WorldPhysical eIoni - 21 -868 1.31e+03 865 0.019 0.0012 1.7 1.92e+03 WorldPhysical eIoni - 22 -868 1.32e+03 863 0.0146 0.00439 3.24 1.92e+03 WorldPhysical eIoni - 23 -869 1.32e+03 862 0.00988 0.00474 2.52 1.93e+03 WorldPhysical eIoni - 24 -869 1.32e+03 861 0.00652 0.00336 1.82 1.93e+03 WorldPhysical eIoni - 25 -869 1.32e+03 861 0.00307 0.00168 0.458 1.93e+03 WorldPhysical eIoni - 26 -869 1.32e+03 861 0 0.00307 0.328 1.93e+03 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 12, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -869 1.32e+03 861 0.00176 0 0 0 WorldPhysical initStep - 1 -869 1.32e+03 861 0 0.00176 0.133 0.133 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -868 1.31e+03 865 0.00215 0 0 0 WorldPhysical initStep - 1 -868 1.31e+03 865 0 0.00215 0.182 0.182 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -874 1.31e+03 861 0.00226 0 0 0 WorldPhysical initStep - 1 -874 1.31e+03 861 0 0.00226 0.198 0.198 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -874 1.3e+03 859 0.00267 0 0 0 WorldPhysical initStep - 1 -874 1.3e+03 859 0 0.00267 0.259 0.259 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -860 1.26e+03 868 0.00284 0 0 0 WorldPhysical initStep - 1 -860 1.26e+03 868 0 0.00284 0.288 0.288 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -829 1.25e+03 880 0.00157 0 0 0 WorldPhysical initStep - 1 -829 1.25e+03 880 0 0.00157 0.111 0.111 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -416 989 614 0.00427 0 0 0 DriftChamberPhysical initStep - 1 -416 990 613 0.0031 0.00116 2.05 2.05 DriftChamberPhysical eIoni - 2 -417 991 612 0 0.0031 1.58 3.63 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -18.1 362 295 0.00353 0 0 0 DriftChamberPhysical initStep - 1 -17.7 362 297 0.00305 0.000488 1.76 1.76 DriftChamberPhysical eIoni - 2 -17 361 297 0.00149 0.00155 1.55 3.31 DriftChamberPhysical eIoni - 3 -17 361 298 0 0.00149 0.563 3.88 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 21.4 150 115 0.00222 0 0 0 DriftChamberPhysical initStep - 1 20.7 150 116 0 0.00222 1.08 1.08 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 24.8 127 96 0.00619 0 0 0 WorldPhysical initStep - 1 24.9 127 95.9 0.00444 0.000483 0.182 0.182 WorldPhysical eIoni - 2 25 127 95.8 0.00178 0.00266 0.544 0.726 WorldPhysical eIoni - 3 25 127 95.8 0 0.00178 0.135 0.861 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 13, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 24.9 127 95.9 0.00126 0 0 0 WorldPhysical initStep - 1 25 127 95.9 0 0.00126 0.0797 0.0797 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 10 16.7 1e+03 0.00296 19.5 19.5 WorldPhysical hIoni - 2 0.00938 60 100 1e+03 0.011 97.2 117 DriftChamberPhysical CoupledTransportation - 3 0.0871 262 437 1e+03 0.00673 393 510 DriftChamberPhysical hIoni - 4 0.217 540 900 1e+03 0.0118 540 1.05e+03 WorldPhysical CoupledTransportation - 5 0.233 570 950 1e+03 0.00724 58.3 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - 6 0.233 570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0871 262 437 0.00112 0 0 0 DriftChamberPhysical initStep - 1 0.291 262 437 0 0.00112 0.358 0.358 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 10 16.7 0.00213 0 0 0 WorldPhysical initStep - 1 -0.0644 10 16.7 0 0.00213 0.179 0.179 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 60 100 1e+03 0.015 117 117 DriftChamberPhysical CoupledTransportation - 2 -0.0321 540 900 1e+03 0.0177 933 1.05e+03 WorldPhysical CoupledTransportation - 3 -0.0335 555 925 1e+03 0.00361 29.5 1.08e+03 WorldPhysical hIoni - 4 -0.0378 570 950 1e+03 0.00281 28.8 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - 5 -0.0378 570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0335 555 925 0.00982 0 0 0 WorldPhysical initStep - 1 0.63 555 926 0.00664 0.00318 1.81 1.81 WorldPhysical eIoni - 2 0.193 554 925 0.00159 0.00505 1.23 3.03 WorldPhysical eIoni - 3 0.214 555 926 0 0.00159 0.114 3.15 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 60 100 1e+03 0.0108 117 117 DriftChamberPhysical CoupledTransportation - 2 7.8e-05 67.8 113 1e+03 0.000396 15.1 132 DriftChamberPhysical hIoni - 3 0.0547 540 900 1e+03 0.0162 918 1.05e+03 WorldPhysical CoupledTransportation - 4 0.0567 556 926 1e+03 0.00453 29.8 1.08e+03 WorldPhysical hIoni - 5 0.0583 570 950 1e+03 0.00284 28.6 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - 6 0.0583 570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0567 556 926 0.00483 0 0 0 WorldPhysical initStep - 1 -0.11 555 926 0 0.00483 0.719 0.719 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 7.8e-05 67.8 113 0.00634 0 0 0 DriftChamberPhysical initStep - 1 -1.99 66.4 114 0.00368 0.00266 2.89 2.89 DriftChamberPhysical eIoni - 2 -3.46 66 114 0.0027 0.000977 1.82 4.71 DriftChamberPhysical eIoni - 3 -3.46 66.2 113 0.00154 0.00117 0.823 5.54 DriftChamberPhysical eIoni - 4 -3.57 66.4 113 0 0.00154 0.59 6.13 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 30 100 1e+03 0.0131 104 104 DriftChamberPhysical CoupledTransportation - 2 0.00537 191 637 1e+03 0.0104 561 666 DriftChamberPhysical hIoni - 3 0.00718 270 900 1e+03 0.00537 274 940 WorldPhysical CoupledTransportation - 4 0.00716 271 905 1e+03 0.000463 4.93 945 WorldPhysical hIoni - 5 0.00715 274 914 1e+03 0.000429 9.32 954 WorldPhysical hIoni - 6 0.0053 285 950 1e+03 0.00608 37.9 992 WorldPhysical fastSimProcess_parallelGeom - 7 0.0053 285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00715 274 914 0.00759 0 0 0 WorldPhysical initStep - 1 0.262 275 914 0.00302 0.00457 1.43 1.43 WorldPhysical eIoni - 2 0.267 275 914 0 0.00302 0.319 1.75 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00716 271 905 0.00208 0 0 0 WorldPhysical initStep - 1 -0.0241 271 905 0 0.00208 0.172 0.172 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00537 191 637 0.00184 0 0 0 DriftChamberPhysical initStep - 1 -0.0116 191 638 0 0.00184 0.792 0.792 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 -6.79e-05 2.83 9.42 1e+03 0.000416 9.83 9.83 WorldPhysical hIoni - 2 -0.00677 30 100 1e+03 0.00876 94.6 104 DriftChamberPhysical CoupledTransportation - 3 -0.022 47.7 159 1e+03 0.00103 61.5 166 DriftChamberPhysical hIoni - 4 -0.171 250 834 1e+03 0.0167 705 871 DriftChamberPhysical hIoni - 5 -0.178 263 875 1e+03 0.000471 42.2 913 DriftChamberPhysical hIoni - 6 -0.184 270 900 1e+03 2.17e-05 26.4 940 WorldPhysical CoupledTransportation - 7 -0.194 285 950 1e+03 0.00841 52.2 992 WorldPhysical fastSimProcess_parallelGeom - 8 -0.194 285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.178 263 875 0.00122 0 0 0 DriftChamberPhysical initStep - 1 0.104 263 875 0 0.00122 0.411 0.411 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.171 250 834 0.00108 0 0 0 DriftChamberPhysical initStep - 1 -0.398 250 834 0 0.00108 0.337 0.337 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.022 47.7 159 0.00146 0 0 0 DriftChamberPhysical initStep - 1 -0.339 47.9 159 0 0.00146 0.545 0.545 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -6.79e-05 2.83 9.42 0.00636 0 0 0 WorldPhysical initStep - 1 0.468 3 9.41 0.00261 0.00375 1.16 1.16 WorldPhysical eIoni - 2 0.371 3.02 9.44 0 0.00261 0.249 1.4 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 -3.39e-06 1.33 4.42 1e+03 0.00131 4.62 4.62 WorldPhysical hIoni - 2 0.00538 30 100 1e+03 0.00961 99.8 104 DriftChamberPhysical CoupledTransportation - 3 -0.011 140 468 1e+03 0.00752 384 488 DriftChamberPhysical hIoni - 4 -0.0353 270 900 1e+03 0.00868 451 940 WorldPhysical CoupledTransportation - 5 -0.0354 272 908 1e+03 0.000999 8.79 948 WorldPhysical hIoni - 6 -0.0356 285 950 1e+03 0.00655 43.4 992 WorldPhysical fastSimProcess_parallelGeom - 7 -0.0356 285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0354 272 908 0.00111 0 0 0 WorldPhysical initStep - 1 -0.0492 272 908 0 0.00111 0.0663 0.0663 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.011 140 468 0.00246 0 0 0 DriftChamberPhysical initStep - 1 0.328 141 468 0 0.00246 1.24 1.24 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -3.39e-06 1.33 4.42 0.00487 0 0 0 WorldPhysical initStep - 1 -0.277 1.47 4.4 0 0.00487 0.732 0.732 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 0.0531 0.177 1e+03 0.000111 0.185 0.185 WorldPhysical hIoni - 2 -0.0048 5.78 19.3 1e+03 0.00242 19.9 20.1 WorldPhysical hIoni - 3 -0.0279 30 100 1e+03 0.0116 84.3 104 DriftChamberPhysical CoupledTransportation - 4 -0.323 230 765 1e+03 0.015 694 799 DriftChamberPhysical hIoni - 5 -0.352 270 900 1e+03 0.00398 141 940 WorldPhysical CoupledTransportation - 6 -0.357 278 926 1e+03 0.00568 27.3 967 WorldPhysical hIoni - 7 -0.361 285 950 1e+03 0.003 24.9 992 WorldPhysical fastSimProcess_parallelGeom - 8 -0.361 285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.357 278 926 0.00746 0 0 0 WorldPhysical initStep - 1 -0.0765 279 926 0 0.00746 1.4 1.4 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.323 230 765 0.00175 0 0 0 DriftChamberPhysical initStep - 1 -0.801 230 765 0 0.00175 0.728 0.728 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0048 5.78 19.3 0.00356 0 0 0 WorldPhysical initStep - 1 -0.137 5.89 19.2 0 0.00356 0.423 0.423 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0.0531 0.177 0.0236 0 0 0 WorldPhysical initStep - 1 3 -0.93 0.987 0.0196 0.00404 4.11 4.11 WorldPhysical eIoni - 2 3.29 -2.89 2.59 0.0156 0.00393 3.34 7.45 WorldPhysical eIoni - 3 3.14 -4.8 2.37 0.0132 0.00243 2.68 10.1 WorldPhysical eIoni - 4 4.32 -5.77 2.07 0.00843 0.00477 2.31 12.4 WorldPhysical eIoni - 5 4.16 -6.4 2.56 0.00346 0.00497 1.58 14 WorldPhysical eIoni - 6 4.11 -6.54 2.65 0 0.00346 0.403 14.4 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 -0.000126 3.87 12.9 1e+03 0.00221 13.5 13.5 WorldPhysical hIoni - 2 0.000576 13.5 44.9 1e+03 0.00423 33.5 46.9 WorldPhysical hIoni - 3 -0.00068 30 100 1e+03 0.00682 57.5 104 DriftChamberPhysical CoupledTransportation - 4 0.00244 89.2 297 1e+03 0.00529 206 311 DriftChamberPhysical hIoni - 5 0.00148 166 554 1e+03 0.00534 268 578 DriftChamberPhysical hIoni - 6 0.0028 219 730 1e+03 0.00299 184 762 DriftChamberPhysical hIoni - 7 0.0096 266 887 1e+03 0.00391 163 926 DriftChamberPhysical hIoni - 8 0.00961 270 900 1e+03 0.000152 13.8 940 WorldPhysical CoupledTransportation - 9 0.00968 281 938 1e+03 0.00565 39.7 979 WorldPhysical hIoni - 10 0.00965 285 950 1e+03 0.000826 12.5 992 WorldPhysical fastSimProcess_parallelGeom - 11 0.00965 285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom + 1 0.000453 -2.2 7.34 1e+03 0.00167 7.66 7.66 WorldPhysical eIoni + 2 0.0131 -30 100 1e+03 0.02 96.7 104 DriftChamberPhysical CoupledTransportation + 3 0.0176 -38 127 1e+03 0.00105 27.7 132 DriftChamberPhysical eIoni + 4 0.0216 -45.8 153 1e+03 0.00106 27.1 159 DriftChamberPhysical eIoni + 5 0.0431 -104 345 1e+03 0.00533 201 360 DriftChamberPhysical eIoni + 6 0.0437 -109 364 1e+03 0.000678 19.2 380 DriftChamberPhysical eIoni + 7 0.0457 -117 388 1e+03 0.000216 25.6 405 DriftChamberPhysical eIoni + 8 0.0992 -270 900 1e+03 0.0143 534 940 WorldPhysical CoupledTransportation + 9 0.0992 -271 902 1e+03 0.000927 1.61 941 WorldPhysical eIoni + 10 0.105 -300 1e+03 1e+03 0.0247 103 1.04e+03 Crystal CoupledTransportation + 11 0.105 -300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 8, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00968 281 938 0.00103 0 0 0 WorldPhysical initStep - 1 -0.0105 281 938 0 0.00103 0.0598 0.0598 WorldPhysical eIoni + 0 0.0992 -271 902 0.000999 0 0 0 WorldPhysical initStep + 1 0.0952 -271 902 0 0.000999 0.057 0.057 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0096 266 887 0.0032 0 0 0 DriftChamberPhysical initStep - 1 0.701 265 887 0.00102 0.00217 1.62 1.62 DriftChamberPhysical eIoni - 2 0.825 265 887 0 0.00102 0.311 1.93 DriftChamberPhysical eIoni + 0 0.0457 -117 388 0.00143 0 0 0 DriftChamberPhysical initStep + 1 0.0256 -117 388 0 0.00143 0.525 0.525 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0028 219 730 0.00211 0 0 0 DriftChamberPhysical initStep - 1 -0.271 219 731 0 0.00211 0.998 0.998 DriftChamberPhysical eIoni + 0 0.0437 -109 364 0.00165 0 0 0 DriftChamberPhysical initStep + 1 -0.426 -109 364 0 0.00165 0.664 0.664 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00148 166 554 0.00337 0 0 0 DriftChamberPhysical initStep - 1 0.475 167 553 0 0.00337 1.69 1.69 DriftChamberPhysical eIoni + 0 0.0431 -104 345 0.00703 0 0 0 DriftChamberPhysical initStep + 1 2.91 -103 346 0.0055 0.00153 3.21 3.21 DriftChamberPhysical eIoni + 2 5.16 -103 345 0.00423 0.00127 2.54 5.74 DriftChamberPhysical eIoni + 3 5.67 -101 345 0.0022 0.00203 2.04 7.78 DriftChamberPhysical eIoni + 4 6.34 -100 345 0 0.0022 1.06 8.85 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00244 89.2 297 0.00158 0 0 0 DriftChamberPhysical initStep - 1 0.00226 88.8 298 0 0.00158 0.618 0.618 DriftChamberPhysical eIoni + 0 0.0216 -45.8 153 0.00343 0 0 0 DriftChamberPhysical initStep + 1 1 -46.8 152 0.00128 0.00215 1.72 1.72 DriftChamberPhysical eIoni + 2 1.25 -47 152 0 0.00128 0.439 2.16 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.000576 13.5 44.9 0.012 0 0 0 WorldPhysical initStep - 1 -0.207 12.2 45.5 0.00703 0.00495 2.13 2.13 WorldPhysical eIoni - 2 0.244 12.2 45.9 0 0.00703 1.31 3.44 WorldPhysical eIoni + 0 0.0176 -38 127 0.00326 0 0 0 DriftChamberPhysical initStep + 1 0.874 -37 127 0 0.00326 1.65 1.65 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.000126 3.87 12.9 0.00176 0 0 0 WorldPhysical initStep - 1 -0.0531 3.87 12.9 0 0.00176 0.132 0.132 WorldPhysical eIoni + 0 0.000453 -2.2 7.34 0.00119 0 0 0 WorldPhysical initStep + 1 -0.0254 -2.21 7.34 0 0.00119 0.0736 0.0736 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 -0.000195 -7.59 25.3 1e+03 0.00551 26.4 26.4 WorldPhysical eIoni + 2 0.00566 -22.4 74.7 1e+03 0.00591 51.6 78 WorldPhysical eIoni + 3 0.0101 -30 100 1e+03 0.00443 26.4 104 DriftChamberPhysical CoupledTransportation + 4 0.0371 -102 341 1e+03 0.00745 252 356 DriftChamberPhysical eIoni + 5 0.113 -209 695 1e+03 0.0118 370 726 DriftChamberPhysical eIoni + 6 0.177 -270 900 1e+03 0.01 214 940 WorldPhysical CoupledTransportation + 7 0.191 -298 993 1e+03 0.0212 97.4 1.04e+03 WorldPhysical eIoni + 8 0.192 -300 1e+03 1e+03 0.00127 7.06 1.04e+03 Crystal CoupledTransportation + 9 0.192 -300 1e+03 0 1e+03 0 1.04e+03 Crystal fastSimProcess_massGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.191 -298 993 0.00242 0 0 0 WorldPhysical initStep + 1 0.251 -298 993 0 0.00242 0.219 0.219 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.113 -209 695 0.00105 0 0 0 DriftChamberPhysical initStep + 1 -0.107 -209 695 0 0.00105 0.322 0.322 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0371 -102 341 0.0026 0 0 0 DriftChamberPhysical initStep + 1 -0.725 -103 341 0.00111 0.0015 1.32 1.32 DriftChamberPhysical eIoni + 2 -0.787 -103 341 0 0.00111 0.351 1.68 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.00566 -22.4 74.7 0.0018 0 0 0 WorldPhysical initStep + 1 -0.0134 -22.4 74.7 0 0.0018 0.137 0.137 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.000195 -7.59 25.3 0.0199 0 0 0 WorldPhysical initStep + 1 -1.86 -5.98 26.2 0.0158 0.00413 3.4 3.4 WorldPhysical eIoni + 2 -1.33 -5.74 25.6 0.0107 0.00212 0.879 4.27 WorldPhysical eIoni + 3 -0.204 -5.44 25.8 0.00748 0.00326 1.94 6.22 WorldPhysical eIoni + 4 -0.0187 -5.74 26.3 0.00218 0.00529 1.41 7.63 WorldPhysical eIoni + 5 -0.0678 -5.7 26.3 0 0.00218 0.186 7.81 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -1.33 -5.74 25.6 0.00291 0 0 0 WorldPhysical initStep + 1 -1.36 -5.62 25.6 0 0.00291 0.3 0.3 WorldPhysical eIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0.0019 -34 56.7 1e+03 0.0113 66.1 66.1 WorldPhysical eIoni + 2 -0.00438 -60 100 1e+03 0.00975 50.5 117 DriftChamberPhysical CoupledTransportation + 3 -0.0317 -165 275 1e+03 0.00561 204 320 DriftChamberPhysical eIoni + 4 -0.043 -203 338 1e+03 0.00288 73.7 394 DriftChamberPhysical eIoni + 5 -0.116 -540 900 1e+03 0.0176 656 1.05e+03 WorldPhysical CoupledTransportation + 6 -0.143 -600 1e+03 1e+03 0.0243 117 1.17e+03 Crystal CoupledTransportation + 7 -0.143 -600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.043 -203 338 0.00268 0 0 0 DriftChamberPhysical initStep + 1 -0.793 -202 338 0.00103 0.00166 1.37 1.37 DriftChamberPhysical eIoni + 2 -0.78 -202 338 0 0.00103 0.312 1.68 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0317 -165 275 0.00152 0 0 0 DriftChamberPhysical initStep + 1 0.316 -165 275 0 0.00152 0.579 0.579 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0019 -34 56.7 0.00568 0 0 0 WorldPhysical initStep + 1 0.338 -34.2 56.6 0 0.00568 0.961 0.961 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 -60 100 1e+03 0.0226 117 117 DriftChamberPhysical CoupledTransportation + 2 -0.000905 -181 301 1e+03 0.00759 235 351 DriftChamberPhysical eIoni + 3 -0.00292 -257 428 1e+03 0.0026 148 499 DriftChamberPhysical eIoni + 4 0.00391 -354 589 1e+03 0.00726 188 687 DriftChamberPhysical eIoni + 5 0.0133 -540 900 1e+03 0.00989 362 1.05e+03 WorldPhysical CoupledTransportation + 6 0.0107 -549 914 1e+03 0.00342 16.6 1.07e+03 WorldPhysical eIoni + 7 -0.00172 -575 959 1e+03 0.00807 52.2 1.12e+03 WorldPhysical eIoni + 8 -0.00648 -587 978 1e+03 0.00451 21.8 1.14e+03 WorldPhysical eIoni + 9 -0.0107 -600 1e+03 1e+03 0.00646 26 1.17e+03 Crystal CoupledTransportation + 10 -0.0107 -600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.00648 -587 978 0.00496 0 0 0 WorldPhysical initStep + 1 -0.317 -587 978 0 0.00496 0.756 0.756 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.00172 -575 959 0.00141 0 0 0 WorldPhysical initStep + 1 0.0329 -575 959 0 0.00141 0.0944 0.0944 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0107 -549 914 0.00157 0 0 0 WorldPhysical initStep + 1 0.00347 -549 914 0 0.00157 0.111 0.111 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.00391 -354 589 0.00156 0 0 0 DriftChamberPhysical initStep + 1 0.297 -354 589 0 0.00156 0.608 0.608 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.00292 -257 428 0.00521 0 0 0 DriftChamberPhysical initStep + 1 -1.36 -258 427 0.00333 0.00188 2.42 2.42 DriftChamberPhysical eIoni + 2 -2.33 -259 427 0.00187 0.00146 1.67 4.09 DriftChamberPhysical eIoni + 3 -2.8 -260 427 0 0.00187 0.815 4.91 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.000905 -181 301 0.00209 0 0 0 DriftChamberPhysical initStep + 1 -0.637 -180 301 0 0.00209 0.982 0.982 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0.00102 -21.3 35.6 1e+03 0.00844 41.5 41.5 WorldPhysical eIoni + 2 -0.00251 -49.3 82.2 1e+03 0.0117 54.4 95.8 WorldPhysical eIoni + 3 -0.00283 -60 100 1e+03 0.00416 20.8 117 DriftChamberPhysical CoupledTransportation + 4 -0.019 -276 461 1e+03 0.0162 420 537 DriftChamberPhysical eIoni + 5 -0.0148 -364 607 1e+03 0.00491 171 708 DriftChamberPhysical eIoni + 6 -0.0193 -540 900 1e+03 0.0109 341 1.05e+03 WorldPhysical CoupledTransportation + 7 -0.00665 -600 1e+03 1e+03 0.023 117 1.17e+03 Crystal CoupledTransportation + 8 -0.00665 -600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0148 -364 607 0.00416 0 0 0 DriftChamberPhysical initStep + 1 1.66 -364 608 0.00229 0.00188 2.01 2.01 DriftChamberPhysical eIoni + 2 2.34 -363 608 0 0.00229 1.13 3.14 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.019 -276 461 0.00483 0 0 0 DriftChamberPhysical initStep + 1 -0.201 -275 461 0.00221 0.00108 1.52 1.52 DriftChamberPhysical eIoni + 2 0.337 -275 462 0 0.00221 1.07 2.59 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.201 -275 461 0.00154 0 0 0 DriftChamberPhysical initStep + 1 -0.491 -275 462 0 0.00154 0.592 0.592 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.00251 -49.3 82.2 0.00126 0 0 0 WorldPhysical initStep + 1 -0.00895 -49.3 82.2 0 0.00126 0.0799 0.0799 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.00102 -21.3 35.6 0.00105 0 0 0 WorldPhysical initStep + 1 -0.0157 -21.3 35.6 0 0.00105 0.0615 0.0615 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 -0.000796 -14.6 24.3 1e+03 0.00609 28.3 28.3 WorldPhysical eIoni + 2 0.00116 -60 100 1e+03 0.0154 88.3 117 DriftChamberPhysical CoupledTransportation + 3 0.0161 -133 222 1e+03 0.00516 143 259 DriftChamberPhysical eIoni + 4 0.0704 -540 900 1e+03 0.0221 790 1.05e+03 WorldPhysical CoupledTransportation + 5 0.0776 -568 947 1e+03 0.0102 54.8 1.1e+03 WorldPhysical eIoni + 6 0.0865 -600 1e+03 1e+03 0.0117 61.9 1.17e+03 Crystal CoupledTransportation + 7 0.0865 -600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0776 -568 947 0.00111 0 0 0 WorldPhysical initStep + 1 0.0602 -568 947 0 0.00111 0.0667 0.0667 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0161 -133 222 0.00127 0 0 0 DriftChamberPhysical initStep + 1 0.0311 -134 222 0 0.00127 0.435 0.435 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.000796 -14.6 24.3 0.00122 0 0 0 WorldPhysical initStep + 1 -0.0294 -14.6 24.3 0 0.00122 0.0765 0.0765 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 -0.00224 -33.2 55.4 1e+03 0.00901 64.6 64.6 WorldPhysical eIoni + 2 -0.00837 -60 100 1e+03 0.01 52 117 DriftChamberPhysical CoupledTransportation + 3 -0.0691 -322 536 1e+03 0.0136 509 625 DriftChamberPhysical eIoni + 4 -0.115 -540 900 1e+03 0.0117 424 1.05e+03 WorldPhysical CoupledTransportation + 5 -0.122 -577 962 1e+03 0.0133 72.3 1.12e+03 WorldPhysical eIoni + 6 -0.123 -582 971 1e+03 0.00191 10.1 1.13e+03 WorldPhysical eIoni + 7 -0.128 -600 1e+03 1e+03 0.00767 34.3 1.17e+03 Crystal CoupledTransportation + 8 -0.128 -600 1e+03 0 1e+03 0 1.17e+03 Crystal fastSimProcess_massGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.123 -582 971 0.00119 0 0 0 WorldPhysical initStep + 1 -0.101 -582 971 0 0.00119 0.0737 0.0737 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.122 -577 962 0.00294 0 0 0 WorldPhysical initStep + 1 -0.248 -577 962 0 0.00294 0.304 0.304 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0691 -322 536 0.0013 0 0 0 DriftChamberPhysical initStep + 1 -0.268 -322 536 0 0.0013 0.45 0.45 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.00224 -33.2 55.4 0.00332 0 0 0 WorldPhysical initStep + 1 0.145 -33.3 55.3 0 0.00332 0.375 0.375 WorldPhysical eIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ********************************************************************************************************* * G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 @@ -2670,19 +1845,653 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 -30 100 1e+03 0.0172 104 104 DriftChamberPhysical CoupledTransportation - 2 0.0727 -270 900 1e+03 0.0169 835 940 WorldPhysical CoupledTransportation - 3 0.0739 -280 934 1e+03 0.00505 35.3 975 WorldPhysical hIoni - 4 0.0755 -285 950 1e+03 0.00104 17 992 WorldPhysical fastSimProcess_parallelGeom - 5 0.0755 -285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom + 1 0 21.8 36.4 1e+03 0.00646 42.5 42.5 WorldPhysical hIoni + 2 -0.000667 31.4 52.3 1e+03 0.00286 18.5 61 WorldPhysical hIoni + 3 -0.00225 60 100 1e+03 0.00735 55.6 117 DriftChamberPhysical CoupledTransportation + 4 0.0366 540 900 1e+03 0.0164 933 1.05e+03 WorldPhysical CoupledTransportation + 5 0.035 555 925 1e+03 0.00646 28.6 1.08e+03 WorldPhysical hIoni + 6 0.0348 565 942 1e+03 0.00247 20 1.1e+03 WorldPhysical hIoni + 7 0.0346 570 950 1e+03 0.00194 9.68 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + 8 0.0346 570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0348 565 942 0.0017 0 0 0 WorldPhysical initStep + 1 -0.0118 565 942 0 0.0017 0.125 0.125 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.035 555 925 0.00117 0 0 0 WorldPhysical initStep + 1 0.0417 555 925 0 0.00117 0.0712 0.0712 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.000667 31.4 52.3 0.00126 0 0 0 WorldPhysical initStep + 1 0.00725 31.4 52.3 0 0.00126 0.0798 0.0798 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0739 -280 934 0.00126 0 0 0 WorldPhysical initStep - 1 0.0677 -280 934 0 0.00126 0.0802 0.0802 WorldPhysical eIoni + 0 0 21.8 36.4 0.00419 0 0 0 WorldPhysical initStep + 1 0.0599 21.7 36.5 0 0.00419 0.562 0.562 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 22.3 37.1 1e+03 0.00343 43.3 43.3 WorldPhysical hIoni + 2 0.0084 60 100 1e+03 0.0101 73.3 117 DriftChamberPhysical CoupledTransportation + 3 0.247 540 900 1e+03 0.0204 933 1.05e+03 WorldPhysical CoupledTransportation + 4 0.255 554 923 1e+03 0.00448 26.6 1.08e+03 WorldPhysical hIoni + 5 0.267 570 950 1e+03 0.00763 31.7 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + 6 0.267 570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.255 554 923 0.00207 0 0 0 WorldPhysical initStep + 1 0.199 554 923 0 0.00207 0.17 0.17 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 22.3 37.1 0.00241 0 0 0 WorldPhysical initStep + 1 0.0792 22.2 37.2 0 0.00241 0.218 0.218 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 -3.17e-05 3.77 6.28 1e+03 0.000727 7.33 7.33 WorldPhysical hIoni + 2 -0.00164 12.1 20.1 1e+03 0.002 16.1 23.4 WorldPhysical hIoni + 3 -0.0132 60 100 1e+03 0.0077 93.2 117 DriftChamberPhysical CoupledTransportation + 4 -0.118 400 666 1e+03 0.015 660 777 DriftChamberPhysical hIoni + 5 -0.171 540 900 1e+03 0.00584 273 1.05e+03 WorldPhysical CoupledTransportation + 6 -0.185 570 950 1e+03 0.00934 58.3 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + 7 -0.185 570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.118 400 666 0.00364 0 0 0 DriftChamberPhysical initStep + 1 0.422 401 666 0 0.00364 1.81 1.81 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.00164 12.1 20.1 0.0012 0 0 0 WorldPhysical initStep + 1 0.0258 12.1 20.1 0 0.0012 0.0738 0.0738 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -3.17e-05 3.77 6.28 0.00346 0 0 0 WorldPhysical initStep + 1 0.107 3.66 6.36 0 0.00346 0.403 0.403 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 22.1 36.8 1e+03 0.00697 43 43 WorldPhysical hIoni + 2 0.00351 60 100 1e+03 0.00906 73.7 117 DriftChamberPhysical CoupledTransportation + 3 -0.024 382 637 1e+03 0.0134 627 743 DriftChamberPhysical hIoni + 4 0.0217 540 900 1e+03 0.00721 306 1.05e+03 WorldPhysical CoupledTransportation + 5 0.0217 540 900 1e+03 0 0.0817 1.05e+03 WorldPhysical hIoni + 6 0.0289 570 950 1e+03 0.00742 58.2 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + 7 0.0289 570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0217 540 900 0.00369 0 0 0 WorldPhysical initStep + 1 0.00405 540 900 0.00353 0.000164 0.042 0.042 WorldPhysical msc + 2 -0.00554 540 900 0.00196 0.00157 0.0346 0.0767 WorldPhysical msc + 3 -0.0171 540 900 0.0018 0.000158 0.0376 0.114 WorldPhysical msc + 4 -0.0239 540 900 0.00138 0.000428 0.0492 0.164 WorldPhysical msc + 5 -0.00823 540 900 0 0.00138 0.0909 0.254 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.024 382 637 0.00122 0 0 0 DriftChamberPhysical initStep + 1 0.184 382 637 0 0.00122 0.41 0.41 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 22.1 36.8 0.00189 0 0 0 WorldPhysical initStep + 1 0.0201 22.2 36.8 0 0.00189 0.149 0.149 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 46.8 78 1e+03 0.0176 91 91 WorldPhysical hIoni + 2 -0.000256 51.7 86.2 1e+03 0.00128 9.55 101 WorldPhysical hIoni + 3 -0.000738 60 100 1e+03 0.00148 16.1 117 DriftChamberPhysical CoupledTransportation + 4 -0.0073 149 248 1e+03 0.00309 173 290 DriftChamberPhysical hIoni + 5 -0.017 213 355 1e+03 0.00296 124 414 DriftChamberPhysical hIoni + 6 -0.0503 540 900 1e+03 0.0123 636 1.05e+03 WorldPhysical CoupledTransportation + 7 -0.0487 570 950 1e+03 0.00723 58.3 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + 8 -0.0487 570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.017 213 355 0.00245 0 0 0 DriftChamberPhysical initStep + 1 -0.546 212 355 0.00103 0.00142 1.23 1.23 DriftChamberPhysical eIoni + 2 -0.701 212 355 0 0.00103 0.312 1.55 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0073 149 248 0.00578 0 0 0 DriftChamberPhysical initStep + 1 1.94 148 249 0.00496 0.000823 2.65 2.65 DriftChamberPhysical eIoni + 2 3.55 147 250 0.00425 0.000713 2.32 4.98 DriftChamberPhysical eIoni + 3 5 146 251 0.00273 0.00151 2.04 7.02 DriftChamberPhysical eIoni + 4 5.82 146 252 0 0.00273 1.4 8.42 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.000256 51.7 86.2 0.00621 0 0 0 WorldPhysical initStep + 1 -0.0361 52.1 86 0 0.00621 1.11 1.11 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 46.8 78 0.0016 0 0 0 WorldPhysical initStep + 1 0.00973 46.8 78 0 0.0016 0.114 0.114 WorldPhysical eIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0.000251 2.27 7.58 1e+03 0.000913 7.91 7.91 WorldPhysical hIoni + 2 0.000441 3.42 11.4 1e+03 0.000295 3.98 11.9 WorldPhysical hIoni + 3 0.00383 30 100 1e+03 0.013 92.5 104 DriftChamberPhysical CoupledTransportation + 4 0.175 270 900 1e+03 0.0143 835 940 WorldPhysical CoupledTransportation + 5 0.177 285 950 1e+03 0.00875 52.2 992 WorldPhysical fastSimProcess_parallelGeom + 6 0.177 285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.000441 3.42 11.4 0.00229 0 0 0 WorldPhysical initStep + 1 0.00115 3.5 11.4 0 0.00229 0.202 0.202 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.000251 2.27 7.58 0.00104 0 0 0 WorldPhysical initStep + 1 -0.0176 2.29 7.57 0 0.00104 0.0606 0.0606 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 30 100 1e+03 0.0159 104 104 DriftChamberPhysical CoupledTransportation + 2 -0.0102 142 473 1e+03 0.00618 390 494 DriftChamberPhysical hIoni + 3 0.0082 270 900 1e+03 0.00843 446 940 WorldPhysical CoupledTransportation + 4 0.0135 285 950 1e+03 0.00778 52.2 992 WorldPhysical fastSimProcess_parallelGeom + 5 0.0135 285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0102 142 473 0.00182 0 0 0 DriftChamberPhysical initStep + 1 0.036 141 473 0 0.00182 0.781 0.781 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 30 100 1e+03 0.0146 104 104 DriftChamberPhysical CoupledTransportation + 2 0.117 140 468 1e+03 0.0102 384 489 DriftChamberPhysical hIoni + 3 0.231 270 900 1e+03 0.00818 451 940 WorldPhysical CoupledTransportation + 4 0.246 285 950 1e+03 0.00734 52.2 992 WorldPhysical fastSimProcess_parallelGeom + 5 0.246 285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.117 140 468 0.0045 0 0 0 DriftChamberPhysical initStep + 1 -0.0578 139 469 0.00315 0.00135 2.14 2.14 DriftChamberPhysical eIoni + 2 0.154 138 469 0.00116 0.00199 1.6 3.74 DriftChamberPhysical eIoni + 3 0.159 137 469 0 0.00116 0.379 4.12 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 30 100 1e+03 0.0158 104 104 DriftChamberPhysical CoupledTransportation + 2 0.248 270 900 1e+03 0.018 835 940 WorldPhysical CoupledTransportation + 3 0.251 273 911 1e+03 0.00129 11.4 951 WorldPhysical hIoni + 4 0.265 285 950 1e+03 0.00458 40.8 992 WorldPhysical fastSimProcess_parallelGeom + 5 0.265 285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.251 273 911 0.00178 0 0 0 WorldPhysical initStep + 1 0.209 273 911 0 0.00178 0.135 0.135 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 13.5 45 1e+03 0.00539 47 47 WorldPhysical hIoni + 2 -0.000467 30 100 1e+03 0.00654 57.4 104 DriftChamberPhysical CoupledTransportation + 3 -0.0497 191 637 1e+03 0.0158 561 665 DriftChamberPhysical hIoni + 4 -0.0552 209 696 1e+03 0.000777 61.3 727 DriftChamberPhysical hIoni + 5 -0.0615 225 751 1e+03 0.000258 57.4 784 DriftChamberPhysical hIoni + 6 -0.0819 270 900 1e+03 0.00256 156 940 WorldPhysical CoupledTransportation + 7 -0.0874 285 950 1e+03 0.00532 52.2 992 WorldPhysical fastSimProcess_parallelGeom + 8 -0.0874 285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0615 225 751 0.0015 0 0 0 DriftChamberPhysical initStep + 1 0.273 225 751 0 0.0015 0.571 0.571 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0552 209 696 0.00146 0 0 0 DriftChamberPhysical initStep + 1 0.25 209 696 0 0.00146 0.543 0.543 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0497 191 637 0.00294 0 0 0 DriftChamberPhysical initStep + 1 0.519 192 637 0.00124 0.0017 1.5 1.5 DriftChamberPhysical eIoni + 2 0.567 192 637 0 0.00124 0.417 1.92 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 13.5 45 0.00118 0 0 0 WorldPhysical initStep + 1 -0.0192 13.5 45 0 0.00118 0.0727 0.0727 WorldPhysical eIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 -7.52 25.1 1e+03 0.00215 26.2 26.2 WorldPhysical hIoni + 2 -0.00571 -30 100 1e+03 0.014 78.2 104 DriftChamberPhysical CoupledTransportation + 3 -0.0636 -199 662 1e+03 0.0103 587 691 DriftChamberPhysical hIoni + 4 -0.0644 -207 689 1e+03 0.000316 28 719 DriftChamberPhysical hIoni + 5 -0.0728 -270 900 1e+03 0.00384 220 940 WorldPhysical CoupledTransportation + 6 -0.0753 -280 933 1e+03 0.00323 34.4 974 WorldPhysical hIoni + 7 -0.0755 -281 935 1e+03 0.000255 1.78 976 WorldPhysical hIoni + 8 -0.0767 -285 950 1e+03 0.00232 16 992 WorldPhysical fastSimProcess_parallelGeom + 9 -0.0767 -285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0755 -281 935 0.00145 0 0 0 WorldPhysical initStep + 1 -0.0702 -281 935 0 0.00145 0.0989 0.0989 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0753 -280 933 0.00352 0 0 0 WorldPhysical initStep + 1 -0.152 -280 933 0 0.00352 0.415 0.415 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0644 -207 689 0.00161 0 0 0 DriftChamberPhysical initStep + 1 0.145 -207 689 0 0.00161 0.636 0.636 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0636 -199 662 0.00148 0 0 0 DriftChamberPhysical initStep + 1 -0.128 -198 662 0 0.00148 0.555 0.555 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 -7.52 25.1 0.0369 0 0 0 WorldPhysical initStep + 1 2.9 -6.19 26.1 0.0333 0.00211 3.67 3.67 WorldPhysical eIoni + 2 3.03 -6.11 26.3 0.0318 0.000471 0.262 3.93 WorldPhysical eIoni + 3 4.95 -5.64 30.1 0.0264 0.00391 4.97 8.9 WorldPhysical eIoni + 4 7.6 -6.58 32.6 0.0215 0.00492 4.72 13.6 WorldPhysical eIoni + 5 6.82 -6.43 32.3 0.0184 0.000765 0.904 14.5 WorldPhysical eIoni + 6 6.92 -5.3 34.4 0.0152 0.00323 3.14 17.7 WorldPhysical eIoni + 7 7.04 -5.62 36.2 0.00929 0.00593 2.61 20.3 WorldPhysical eIoni + 8 7.05 -5.63 36.3 0.00726 1.45e-06 0.0185 20.3 WorldPhysical eIoni + 9 7.35 -5.78 36.8 0.00112 0.00614 1.36 21.7 WorldPhysical eIoni + 10 7.35 -5.76 36.8 0 0.00112 0.0669 21.7 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 11, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 7.05 -5.63 36.3 0.00203 0 0 0 WorldPhysical initStep + 1 7.01 -5.68 36.3 0 0.00203 0.166 0.166 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 6.82 -6.43 32.3 0.00231 0 0 0 WorldPhysical initStep + 1 6.88 -6.48 32.4 0 0.00231 0.204 0.204 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 4.95 -5.64 30.1 0.00146 0 0 0 WorldPhysical initStep + 1 4.96 -5.67 30.1 0 0.00146 0.1 0.1 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 3.03 -6.11 26.3 0.00106 0 0 0 WorldPhysical initStep + 1 3.03 -6.09 26.3 0 0.00106 0.062 0.062 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 2.9 -6.19 26.1 0.00148 0 0 0 WorldPhysical initStep + 1 2.92 -6.16 26.1 0 0.00148 0.101 0.101 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 -2.08e-05 -2.41 8.02 1e+03 0.00211 8.38 8.38 WorldPhysical hIoni + 2 -0.00105 -6.9 23 1e+03 0.00338 15.6 24 WorldPhysical hIoni + 3 -0.0122 -29 96.6 1e+03 0.0108 76.9 101 WorldPhysical hIoni + 4 -0.0123 -30 100 1e+03 0.000463 3.5 104 DriftChamberPhysical CoupledTransportation + 5 -0.00331 -268 894 1e+03 0.02 829 934 DriftChamberPhysical hIoni + 6 -0.00255 -270 900 1e+03 6.74e-05 6.12 940 WorldPhysical CoupledTransportation + 7 0.004 -285 950 1e+03 0.00514 52.2 992 WorldPhysical fastSimProcess_parallelGeom + 8 0.004 -285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.00331 -268 894 0.0359 0 0 0 DriftChamberPhysical initStep + 1 -19.2 -262 900 0.0342 0.00165 21.4 21.4 WorldPhysical CoupledTransportation + 2 -23.6 -261 900 0.0299 0.0043 5.28 26.7 WorldPhysical msc + 3 -23.7 -260 900 0.0295 0.000458 0.466 27.2 DriftChamberPhysical CoupledTransportation + 4 -21.5 -238 889 0.025 0.00451 25.7 52.9 DriftChamberPhysical eIoni + 5 -21.8 -222 878 0.0207 0.00425 19.4 72.3 DriftChamberPhysical eIoni + 6 -24.3 -214 867 0.0181 0.00261 14.2 86.4 DriftChamberPhysical eIoni + 7 -23.5 -210 861 0.0159 0.00123 7.22 93.6 DriftChamberPhysical eIoni + 8 -20.4 -207 857 0.0126 0.00232 6.11 99.7 DriftChamberPhysical eIoni + 9 -20.7 -206 854 0.00814 0.000918 3.74 103 DriftChamberPhysical eIoni + 10 -22.8 -207 851 0.0058 0.00234 3.76 107 DriftChamberPhysical eIoni + 11 -23.8 -208 849 0.00346 0.00234 2.66 110 DriftChamberPhysical eIoni + 12 -24.8 -208 848 0.00229 0.00116 1.73 112 DriftChamberPhysical eIoni + 13 -24.9 -209 848 0.00112 0.00117 1.13 113 DriftChamberPhysical eIoni + 14 -24.7 -208 848 0 0.00112 0.359 113 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -20.7 -206 854 0.00353 0 0 0 DriftChamberPhysical initStep + 1 -20 -205 853 0 0.00353 1.76 1.76 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -20.4 -207 857 0.000992 0 0 0 DriftChamberPhysical initStep + 1 -20.2 -207 857 0 0.000992 0.296 0.296 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -23.5 -210 861 0.000992 0 0 0 DriftChamberPhysical initStep + 1 -23.7 -210 861 0 0.000992 0.296 0.296 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0122 -29 96.6 0.00181 0 0 0 WorldPhysical initStep + 1 -0.0669 -29 96.6 0 0.00181 0.138 0.138 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.00105 -6.9 23 0.00862 0 0 0 WorldPhysical initStep + 1 0.715 -7.25 23 0.00271 0.00392 1.34 1.34 WorldPhysical eIoni + 2 0.678 -7.22 23.1 0 0.00271 0.265 1.6 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.715 -7.25 23 0.00199 0 0 0 WorldPhysical initStep + 1 0.723 -7.19 23 0 0.00199 0.16 0.16 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -2.08e-05 -2.41 8.02 0.00203 0 0 0 WorldPhysical initStep + 1 0.0592 -2.38 8.04 0 0.00203 0.166 0.166 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0.000298 -10.7 35.5 1e+03 0.00432 37.1 37.1 WorldPhysical hIoni + 2 0.000814 -12.7 42.5 1e+03 0.00116 7.24 44.3 WorldPhysical hIoni + 3 0.00216 -17 56.7 1e+03 0.0033 14.9 59.2 WorldPhysical hIoni + 4 0.00639 -30 100 1e+03 0.00754 45.2 104 DriftChamberPhysical CoupledTransportation + 5 0.0394 -239 794 1e+03 0.0111 725 829 DriftChamberPhysical hIoni + 6 0.043 -271 900 1e+03 0.0027 110 940 WorldPhysical CoupledTransportation + 7 0.0456 -286 950 1e+03 0.00634 52.2 992 WorldPhysical fastSimProcess_parallelGeom + 8 0.0456 -286 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0394 -239 794 0.00122 0 0 0 DriftChamberPhysical initStep + 1 0.319 -239 794 0 0.00122 0.408 0.408 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.00216 -17 56.7 0.00343 0 0 0 WorldPhysical initStep + 1 0.109 -16.9 56.8 0 0.00343 0.396 0.396 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.000814 -12.7 42.5 0.00137 0 0 0 WorldPhysical initStep + 1 -0.0269 -12.8 42.5 0 0.00137 0.0902 0.0902 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.000298 -10.7 35.5 0.0011 0 0 0 WorldPhysical initStep + 1 -0.017 -10.7 35.5 0 0.0011 0.0654 0.0654 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 -7.32 24.4 1e+03 0.00342 25.5 25.5 WorldPhysical hIoni + 2 0.00184 -29.9 99.8 1e+03 0.0115 78.8 104 WorldPhysical hIoni + 3 0.00187 -30 100 1e+03 0 0.17 104 DriftChamberPhysical CoupledTransportation + 4 0.0391 -92.7 309 1e+03 0.00517 218 323 DriftChamberPhysical hIoni + 5 0.155 -270 900 1e+03 0.0108 617 940 WorldPhysical CoupledTransportation + 6 0.161 -277 925 1e+03 0.00304 26.3 966 WorldPhysical hIoni + 7 0.167 -285 950 1e+03 0.00365 25.9 992 WorldPhysical fastSimProcess_parallelGeom + 8 0.167 -285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.161 -277 925 0.00868 0 0 0 WorldPhysical initStep + 1 0.176 -278 925 0.00705 0.000533 0.29 0.29 WorldPhysical eIoni + 2 0.366 -278 925 0 0.00705 1.32 1.61 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 5 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.176 -278 925 0.0011 0 0 0 WorldPhysical initStep + 1 0.155 -278 925 0 0.0011 0.0652 0.0652 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0391 -92.7 309 0.00103 0 0 0 DriftChamberPhysical initStep + 1 0.235 -92.8 309 0 0.00103 0.315 0.315 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.00184 -29.9 99.8 0.00147 0 0 0 WorldPhysical initStep + 1 -0.032 -30 99.8 0 0.00147 0.101 0.101 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 -7.32 24.4 0.00517 0 0 0 WorldPhysical initStep + 1 -0.261 -7.45 24.4 0.00206 0.0031 0.444 0.444 WorldPhysical eIoni + 2 -0.271 -7.5 24.4 0 0.00206 0.17 0.614 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 @@ -2691,18 +2500,21 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep 1 0 -30 100 1e+03 0.0143 104 104 DriftChamberPhysical CoupledTransportation - 2 0.0169 -87.3 291 1e+03 0.00401 199 304 DriftChamberPhysical hIoni - 3 0.098 -270 900 1e+03 0.0127 636 940 WorldPhysical CoupledTransportation - 4 0.101 -285 950 1e+03 0.00486 52.2 992 WorldPhysical fastSimProcess_parallelGeom - 5 0.101 -285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom + 2 0.0138 -270 900 1e+03 0.0161 835 940 WorldPhysical CoupledTransportation + 3 0.0126 -283 944 1e+03 0.00789 45.8 985 WorldPhysical hIoni + 4 0.0111 -285 950 1e+03 0.000618 6.38 992 WorldPhysical fastSimProcess_parallelGeom + 5 0.0111 -285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.0169 -87.3 291 0.00153 0 0 0 DriftChamberPhysical initStep - 1 -0.395 -87.3 291 0 0.00153 0.587 0.587 DriftChamberPhysical eIoni + 0 0.0126 -283 944 0.00129 0 0 0 WorldPhysical initStep + 1 0.00826 -283 944 0 0.00129 0.0828 0.0828 WorldPhysical eIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ********************************************************************************************************* * G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 @@ -2710,327 +2522,68 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 -30 100 1e+03 0.0161 104 104 DriftChamberPhysical CoupledTransportation - 2 -0.00797 -62 207 1e+03 0.00333 111 216 DriftChamberPhysical hIoni - 3 -0.0904 -235 784 1e+03 0.0144 602 818 DriftChamberPhysical hIoni - 4 -0.0913 -270 900 1e+03 0.00271 122 940 WorldPhysical CoupledTransportation - 5 -0.0913 -273 910 1e+03 0.00164 9.98 950 WorldPhysical hIoni - 6 -0.0877 -283 943 1e+03 0.004 35.1 985 WorldPhysical hIoni - 7 -0.088 -285 950 1e+03 0.000107 7.15 992 WorldPhysical fastSimProcess_parallelGeom - 8 -0.088 -285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0877 -283 943 0.00172 0 0 0 WorldPhysical initStep - 1 -0.0765 -283 943 0 0.00172 0.128 0.128 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0913 -273 910 0.015 0 0 0 WorldPhysical initStep - 1 -0.846 -273 910 0.0126 0.00111 0.92 0.92 WorldPhysical eIoni - 2 -0.929 -273 910 0.0111 0.000215 0.111 1.03 WorldPhysical eIoni - 3 -2.02 -272 910 0.00856 0.00258 2 3.04 WorldPhysical eIoni - 4 -1.68 -272 910 0.00454 0.00221 0.787 3.82 WorldPhysical eIoni - 5 -1.64 -271 910 0 0.00454 0.646 4.47 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.68 -272 910 0.00181 0 0 0 WorldPhysical initStep - 1 -1.63 -272 910 0 0.00181 0.138 0.138 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.929 -273 910 0.00124 0 0 0 WorldPhysical initStep - 1 -0.922 -273 910 0 0.00124 0.0777 0.0777 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.846 -273 910 0.00125 0 0 0 WorldPhysical initStep - 1 -0.849 -273 910 0 0.00125 0.0786 0.0786 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0904 -235 784 0.0183 0 0 0 DriftChamberPhysical initStep - 1 -3.19 -246 782 0.017 0.0013 11.6 11.6 DriftChamberPhysical eIoni - 2 -5.35 -254 778 0.0156 0.00141 10.3 21.8 DriftChamberPhysical eIoni - 3 -8.72 -262 776 0.0142 0.00134 8.98 30.8 DriftChamberPhysical eIoni - 4 -11.7 -268 772 0.0129 0.00132 7.85 38.7 DriftChamberPhysical eIoni - 5 -15 -272 769 0.011 0.00196 6.8 45.5 DriftChamberPhysical eIoni - 6 -19.1 -275 767 0.00992 0.00104 5.41 50.9 DriftChamberPhysical eIoni - 7 -21.8 -278 765 0.00578 0.00414 4.76 55.6 DriftChamberPhysical eIoni - 8 -23.3 -279 764 0.00317 0.00136 2.54 58.2 DriftChamberPhysical eIoni - 9 -24.4 -279 764 0.00201 0.00116 1.61 59.8 DriftChamberPhysical eIoni - 10 -24.5 -279 763 0 0.00201 0.922 60.7 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -23.3 -279 764 0.00124 0 0 0 DriftChamberPhysical initStep - 1 -23.3 -280 764 0 0.00124 0.419 0.419 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00797 -62 207 0.0068 0 0 0 DriftChamberPhysical initStep - 1 2.46 -60.7 207 0.00549 0.00131 3.1 3.1 DriftChamberPhysical eIoni - 2 4.61 -60.1 207 0.00422 0.00127 2.53 5.63 DriftChamberPhysical eIoni - 3 5.62 -58.9 206 0.00223 0.00199 2.03 7.67 DriftChamberPhysical eIoni - 4 5.16 -59.3 206 0 0.00223 1.09 8.76 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 -30 100 1e+03 0.0156 104 104 DriftChamberPhysical CoupledTransportation - 2 -0.00513 -51.3 171 1e+03 0.00207 74.3 179 DriftChamberPhysical hIoni - 3 -0.0378 -270 900 1e+03 0.0178 761 940 WorldPhysical CoupledTransportation - 4 -0.0421 -285 950 1e+03 0.00793 52.2 992 WorldPhysical fastSimProcess_parallelGeom - 5 -0.0421 -285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00513 -51.3 171 0.00258 0 0 0 DriftChamberPhysical initStep - 1 -0.871 -51.8 171 0 0.00258 1.31 1.31 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 -11.3 37.5 1e+03 0.00671 39.2 39.2 WorldPhysical hIoni - 2 5.91e-05 -27.6 92 1e+03 0.0104 56.9 96 WorldPhysical hIoni - 3 -0.000832 -30 100 1e+03 0.000712 8.37 104 DriftChamberPhysical CoupledTransportation - 4 -0.0654 -202 672 1e+03 0.0129 597 702 DriftChamberPhysical hIoni - 5 -0.0831 -257 856 1e+03 0.00385 192 894 DriftChamberPhysical hIoni - 6 -0.0844 -270 900 1e+03 0.000685 45.7 940 WorldPhysical CoupledTransportation - 7 -0.0867 -284 948 1e+03 0.0076 50.2 990 WorldPhysical hIoni - 8 -0.0869 -285 950 1e+03 0.000207 1.96 992 WorldPhysical fastSimProcess_parallelGeom - 9 -0.0869 -285 950 0 1e+03 0 992 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0867 -284 948 0.00744 0 0 0 WorldPhysical initStep - 1 -0.662 -285 948 0.00392 0.00352 1.4 1.4 WorldPhysical eIoni - 2 -0.827 -285 948 0 0.00392 0.5 1.9 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0831 -257 856 0.00144 0 0 0 DriftChamberPhysical initStep - 1 -0.457 -257 856 0 0.00144 0.535 0.535 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0654 -202 672 0.00153 0 0 0 DriftChamberPhysical initStep - 1 -0.447 -201 672 0 0.00153 0.588 0.588 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 5.91e-05 -27.6 92 0.00406 0 0 0 WorldPhysical initStep - 1 -0.222 -27.6 92 0 0.00406 0.531 0.531 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 -11.3 37.5 0.00435 0 0 0 WorldPhysical initStep - 1 -0.198 -11.1 37.6 0 0.00435 0.598 0.598 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 -25.6 42.7 1e+03 0.00704 49.8 49.8 WorldPhysical hIoni - 2 -0.00881 -60 100 1e+03 0.0114 66.8 117 DriftChamberPhysical CoupledTransportation - 3 -0.101 -540 900 1e+03 0.0185 933 1.05e+03 WorldPhysical CoupledTransportation - 4 -0.106 -558 930 1e+03 0.00524 35.5 1.09e+03 WorldPhysical hIoni - 5 -0.107 -570 950 1e+03 0.00194 22.8 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - 6 -0.107 -570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.106 -558 930 0.00345 0 0 0 WorldPhysical initStep - 1 -0.259 -558 931 0 0.00345 0.4 0.4 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 -25.6 42.7 0.00217 0 0 0 WorldPhysical initStep - 1 0.0331 -25.7 42.7 0 0.00217 0.184 0.184 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 -32.6 54.3 1e+03 0.00831 63.3 63.3 WorldPhysical hIoni - 2 -0.00227 -60 100 1e+03 0.00867 53.3 117 DriftChamberPhysical CoupledTransportation - 3 0.00652 -354 590 1e+03 0.0124 572 688 DriftChamberPhysical hIoni - 4 0.0459 -540 900 1e+03 0.00551 361 1.05e+03 WorldPhysical CoupledTransportation - 5 0.0498 -570 950 1e+03 0.00527 58.3 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - 6 0.0498 -570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.00652 -354 590 0.0011 0 0 0 DriftChamberPhysical initStep - 1 0.234 -354 590 0 0.0011 0.349 0.349 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 -32.6 54.3 0.00282 0 0 0 WorldPhysical initStep - 1 0.104 -32.5 54.3 0 0.00282 0.285 0.285 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 -60 100 1e+03 0.0146 117 117 DriftChamberPhysical CoupledTransportation - 2 0.17 -540 900 1e+03 0.0226 933 1.05e+03 WorldPhysical CoupledTransportation - 3 0.178 -556 927 1e+03 0.00307 31.2 1.08e+03 WorldPhysical hIoni - 4 0.189 -570 950 1e+03 0.00508 27.2 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - 5 0.189 -570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0.178 -556 927 0.0023 0 0 0 WorldPhysical initStep - 1 0.118 -556 927 0 0.0023 0.202 0.202 WorldPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 -1.76 2.94 1e+03 0.00133 3.42 3.42 WorldPhysical hIoni - 2 -0.00297 -57.2 95.3 1e+03 0.012 108 111 WorldPhysical hIoni - 3 -0.00397 -60 100 1e+03 0.000878 5.48 117 DriftChamberPhysical CoupledTransportation - 4 -0.0263 -165 275 1e+03 0.00576 204 321 DriftChamberPhysical hIoni - 5 -0.027 -168 279 1e+03 3.33e-05 4.62 326 DriftChamberPhysical hIoni - 6 -0.0808 -348 580 1e+03 0.00905 351 677 DriftChamberPhysical hIoni - 7 -0.101 -447 745 1e+03 0.00413 192 869 DriftChamberPhysical hIoni - 8 -0.12 -540 900 1e+03 0.00293 181 1.05e+03 WorldPhysical CoupledTransportation - 9 -0.13 -570 950 1e+03 0.00518 58.3 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - 10 -0.13 -570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + 1 0.000184 -9.55 15.9 1e+03 0.00329 18.6 18.6 WorldPhysical hIoni + 2 -0.000431 -38.6 64.2 1e+03 0.00494 56.4 74.9 WorldPhysical hIoni + 3 0.000246 -41.6 69.3 1e+03 0.000796 5.88 80.8 WorldPhysical hIoni + 4 0.000283 -41.7 69.5 1e+03 0 0.265 81.1 WorldPhysical hIoni + 5 0.0076 -60 100 1e+03 0.00529 35.6 117 DriftChamberPhysical CoupledTransportation + 6 0.167 -403 671 1e+03 0.0111 666 782 DriftChamberPhysical hIoni + 7 0.214 -486 810 1e+03 0.00277 162 944 DriftChamberPhysical hIoni + 8 0.25 -540 900 1e+03 0.00238 105 1.05e+03 WorldPhysical CoupledTransportation + 9 0.27 -570 950 1e+03 0.0106 58.3 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + 10 0.27 -570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.101 -447 745 0.0094 0 0 0 DriftChamberPhysical initStep - 1 1.98 -451 744 0.00843 0.000963 4.45 4.45 DriftChamberPhysical eIoni - 2 4.63 -453 742 0.00696 0.00148 3.91 8.36 DriftChamberPhysical eIoni - 3 6.61 -454 741 0.00616 0.000791 3.17 11.5 DriftChamberPhysical eIoni - 4 7.97 -456 740 0.00366 0.0012 2.7 14.2 DriftChamberPhysical eIoni - 5 7.96 -457 739 0.00242 0.00124 1.81 16 DriftChamberPhysical eIoni - 6 8.32 -457 738 0 0.00242 1.22 17.3 DriftChamberPhysical eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 7 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 7.97 -456 740 0.00131 0 0 0 DriftChamberPhysical initStep - 1 8.28 -456 740 0 0.00131 0.456 0.456 DriftChamberPhysical eIoni + 0 0.214 -486 810 0.00184 0 0 0 DriftChamberPhysical initStep + 1 -0.352 -486 810 0 0.00184 0.796 0.796 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0808 -348 580 0.0018 0 0 0 DriftChamberPhysical initStep - 1 -0.541 -348 580 0 0.0018 0.766 0.766 DriftChamberPhysical eIoni + 0 0.167 -403 671 0.00535 0 0 0 DriftChamberPhysical initStep + 1 -0.34 -405 670 0.00394 0.00142 2.48 2.48 DriftChamberPhysical eIoni + 2 -0.506 -406 669 0.00256 0.00137 1.92 4.4 DriftChamberPhysical eIoni + 3 -0.386 -406 668 0.00106 0.00151 1.3 5.7 DriftChamberPhysical eIoni + 4 -0.424 -406 667 0 0.00106 0.326 6.03 DriftChamberPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.027 -168 279 0.00107 0 0 0 DriftChamberPhysical initStep - 1 -0.0504 -167 279 0 0.00107 0.331 0.331 DriftChamberPhysical eIoni + 0 0.000283 -41.7 69.5 0.00749 0 0 0 WorldPhysical initStep + 1 -0.563 -41.4 69.7 0.00409 0.00339 1.41 1.41 WorldPhysical eIoni + 2 -0.592 -41.5 70 0 0.00409 0.539 1.95 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0263 -165 275 0.00166 0 0 0 DriftChamberPhysical initStep - 1 0.127 -166 275 0 0.00166 0.668 0.668 DriftChamberPhysical eIoni + 0 0.000246 -41.6 69.3 0.001 0 0 0 WorldPhysical initStep + 1 -0.0208 -41.6 69.3 0 0.001 0.0571 0.0571 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.00297 -57.2 95.3 0.00261 0 0 0 WorldPhysical initStep - 1 0.0779 -57.1 95.3 0 0.00261 0.249 0.249 WorldPhysical eIoni + 0 -0.000431 -38.6 64.2 0.00109 0 0 0 WorldPhysical initStep + 1 0.00317 -38.5 64.3 0 0.00109 0.0645 0.0645 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 -1.76 2.94 0.00129 0 0 0 WorldPhysical initStep - 1 0.0275 -1.75 2.95 0 0.00129 0.0828 0.0828 WorldPhysical eIoni + 0 0.000184 -9.55 15.9 0.00266 0 0 0 WorldPhysical initStep + 1 0.0782 -9.49 16 0 0.00266 0.257 0.257 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 @@ -3038,36 +2591,229 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep - 1 0 -18.8 31.3 1e+03 0.00454 36.5 36.5 WorldPhysical hIoni - 2 0.0051 -60 100 1e+03 0.0129 80.1 117 DriftChamberPhysical CoupledTransportation - 3 -0.0825 -540 900 1e+03 0.0193 933 1.05e+03 WorldPhysical CoupledTransportation - 4 -0.0845 -566 943 1e+03 0.00575 50.5 1.1e+03 WorldPhysical hIoni - 5 -0.0845 -566 944 1e+03 0.000133 0.44 1.1e+03 WorldPhysical hIoni - 6 -0.085 -570 950 1e+03 0.00231 7.38 1.11e+03 WorldPhysical fastSimProcess_parallelGeom - 7 -0.085 -570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + 1 0 -25.8 42.9 1e+03 0.00771 50.1 50.1 WorldPhysical hIoni + 2 0.0004 -27.4 45.7 1e+03 0.000342 3.18 53.3 WorldPhysical hIoni + 3 0.00123 -31.2 51.9 1e+03 0.00139 7.32 60.6 WorldPhysical hIoni + 4 0.011 -52.1 86.8 1e+03 0.00757 40.7 101 WorldPhysical hIoni + 5 0.0156 -59.4 99 1e+03 0.0024 14.2 115 WorldPhysical hIoni + 6 0.016 -60 100 1e+03 0.000112 1.21 117 DriftChamberPhysical CoupledTransportation + 7 0.333 -540 900 1e+03 0.0194 933 1.05e+03 WorldPhysical CoupledTransportation + 8 0.353 -570 950 1e+03 0.01 58.3 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + 9 0.353 -570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0156 -59.4 99 0.00159 0 0 0 WorldPhysical initStep + 1 -0.0104 -59.4 99 0 0.00159 0.113 0.113 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.011 -52.1 86.8 0.00665 0 0 0 WorldPhysical initStep + 1 -0.269 -52.5 86.6 0 0.00665 1.23 1.23 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0845 -566 944 0.00208 0 0 0 WorldPhysical initStep - 1 -0.0376 -566 944 0 0.00208 0.173 0.173 WorldPhysical eIoni + 0 0.00123 -31.2 51.9 0.00107 0 0 0 WorldPhysical initStep + 1 -0.02 -31.2 52 0 0.00107 0.0632 0.0632 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.0845 -566 943 0.00309 0 0 0 WorldPhysical initStep - 1 -0.209 -566 943 0 0.00309 0.332 0.332 WorldPhysical eIoni + 0 0.0004 -27.4 45.7 0.00927 0 0 0 WorldPhysical initStep + 1 0.906 -27.2 45.9 0.00457 0.00469 1.72 1.72 WorldPhysical eIoni + 2 1.09 -27.4 45.8 0 0.00457 0.654 2.37 WorldPhysical eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 0 -18.8 31.3 0.00215 0 0 0 WorldPhysical initStep - 1 0.0142 -18.7 31.4 0 0.00215 0.182 0.182 WorldPhysical eIoni + 0 0 -25.8 42.9 0.00123 0 0 0 WorldPhysical initStep + 1 0.0195 -25.7 43 0 0.00123 0.077 0.077 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 -59 98.3 1e+03 0.0169 115 115 WorldPhysical hIoni + 2 -0.000153 -60 100 1e+03 5.34e-05 1.95 117 DriftChamberPhysical CoupledTransportation + 3 -0.079 -540 900 1e+03 0.0182 933 1.05e+03 WorldPhysical CoupledTransportation + 4 -0.0887 -570 950 1e+03 0.00635 58.3 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + 5 -0.0887 -570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 -59 98.3 0.0046 0 0 0 WorldPhysical initStep + 1 0.0858 -59.1 98.3 0.00235 0.000645 0.208 0.208 WorldPhysical eIoni + 2 0.032 -59.1 98.3 0 0.00235 0.209 0.417 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0858 -59.1 98.3 0.0016 0 0 0 WorldPhysical initStep + 1 0.115 -59.2 98.3 0 0.0016 0.115 0.115 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0 -51.3 85.5 1e+03 0.0144 99.7 99.7 WorldPhysical hIoni + 2 0.00342 -60 100 1e+03 0.00249 16.9 117 DriftChamberPhysical CoupledTransportation + 3 0.0465 -235 392 1e+03 0.00726 340 457 DriftChamberPhysical hIoni + 4 0.098 -492 820 1e+03 0.0117 500 956 DriftChamberPhysical hIoni + 5 0.111 -540 900 1e+03 0.00168 93.3 1.05e+03 WorldPhysical CoupledTransportation + 6 0.118 -570 950 1e+03 0.0054 58.3 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + 7 0.118 -570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.098 -492 820 0.00128 0 0 0 DriftChamberPhysical initStep + 1 0.225 -492 820 0 0.00128 0.438 0.438 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.0465 -235 392 0.00129 0 0 0 DriftChamberPhysical initStep + 1 0.158 -235 391 0 0.00129 0.446 0.446 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 -51.3 85.5 0.00393 0 0 0 WorldPhysical initStep + 1 -0.134 -51.2 85.6 0.00234 0.00159 0.321 0.321 WorldPhysical eIoni + 2 -0.161 -51.2 85.5 0 0.00234 0.158 0.48 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = pi-, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0 0 0 1e+03 0 0 0 WorldPhysical initStep + 1 0.000732 -7.84 13.1 1e+03 0.000807 15.2 15.2 WorldPhysical hIoni + 2 0.00174 -20.8 34.7 1e+03 0.0034 25.2 40.5 WorldPhysical hIoni + 3 -0.0112 -43.5 72.5 1e+03 0.00574 44.1 84.5 WorldPhysical hIoni + 4 -0.0214 -60 100 1e+03 0.00579 32.1 117 DriftChamberPhysical CoupledTransportation + 5 -0.0617 -126 209 1e+03 0.00221 127 244 DriftChamberPhysical hIoni + 6 -0.264 -540 900 1e+03 0.0157 806 1.05e+03 WorldPhysical CoupledTransportation + 7 -0.274 -570 950 1e+03 0.00802 58.3 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + 8 -0.274 -570 950 0 1e+03 0 1.11e+03 WorldPhysical fastSimProcess_parallelGeom + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0617 -126 209 0.00252 0 0 0 DriftChamberPhysical initStep + 1 0.828 -125 209 0.00103 0.00149 1.27 1.27 DriftChamberPhysical eIoni + 2 1.04 -125 209 0 0.00103 0.312 1.59 DriftChamberPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 -0.0112 -43.5 72.5 0.00489 0 0 0 WorldPhysical initStep + 1 -0.312 -43.6 72.5 0 0.00489 0.735 0.735 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.00174 -20.8 34.7 0.0821 0 0 0 WorldPhysical initStep + 1 19.4 -31.1 45.8 0.0707 0.0114 26.2 26.2 WorldPhysical eIoni + 2 20.4 -31.7 46.2 0.0685 0.000183 1.24 27.5 WorldPhysical eIoni + 3 29.2 -41.2 58.9 0.0601 0.00845 19.5 46.9 WorldPhysical eIoni + 4 33.9 -42.9 62.8 0.0553 0.00328 6.57 53.5 WorldPhysical eIoni + 5 39.3 -41.1 68.1 0.0486 0.00469 8.04 61.5 WorldPhysical eIoni + 6 42.7 -39.7 70.3 0.0443 0.0028 4.42 65.9 WorldPhysical eIoni + 7 50.1 -35.1 72.4 0.0397 0.00466 9.73 75.7 WorldPhysical eIoni + 8 55.2 -32.6 76.3 0.0333 0.00637 8.24 83.9 WorldPhysical eIoni + 9 60.2 -33 78.2 0.029 0.0043 6.41 90.3 WorldPhysical eIoni + 10 63.4 -33.4 81.1 0.0238 0.00523 5.32 95.6 WorldPhysical eIoni + 11 66.4 -33.8 80 0.0196 0.00414 4.15 99.8 WorldPhysical eIoni + 12 67.7 -36 80 0.0152 0.00445 3.35 103 WorldPhysical eIoni + 13 67.4 -37.5 81.1 0.0115 0.00364 2.61 106 WorldPhysical eIoni + 14 67.4 -37.5 81.2 0.01 0.000143 0.0982 106 WorldPhysical eIoni + 15 68 -36.9 81.9 0.00302 0.00698 1.83 108 WorldPhysical eIoni + 16 68.1 -36.9 82 0 0.00302 0.319 108 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 10, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 67.4 -37.5 81.2 0.0014 0 0 0 WorldPhysical initStep + 1 67.4 -37.5 81.2 0 0.0014 0.0937 0.0937 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 42.7 -39.7 70.3 0.00142 0 0 0 WorldPhysical initStep + 1 42.7 -39.7 70.3 0 0.00142 0.0955 0.0955 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 39.3 -41.1 68.1 0.00201 0 0 0 WorldPhysical initStep + 1 39.3 -41.2 68 0 0.00201 0.163 0.163 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 33.9 -42.9 62.8 0.00153 0 0 0 WorldPhysical initStep + 1 33.9 -43 62.8 0 0.00153 0.107 0.107 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 3 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 20.4 -31.7 46.2 0.00197 0 0 0 WorldPhysical initStep + 1 20.4 -31.7 46.1 0 0.00197 0.158 0.158 WorldPhysical eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.000732 -7.84 13.1 0.00197 0 0 0 WorldPhysical initStep + 1 0.0586 -7.82 13.1 0 0.00197 0.158 0.158 WorldPhysical eIoni +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/parameterisations/Par02/CMakeLists.txt b/examples/extended/parameterisations/Par02/CMakeLists.txt index f768ac2917..99f6fe3c4d 100644 --- a/examples/extended/parameterisations/Par02/CMakeLists.txt +++ b/examples/extended/parameterisations/Par02/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(Par02) #---------------------------------------------------------------------------- diff --git a/examples/extended/parameterisations/Par02/History b/examples/extended/parameterisations/Par02/History index c3f4e7f717..22745b50e5 100644 --- a/examples/extended/parameterisations/Par02/History +++ b/examples/extended/parameterisations/Par02/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-11-20 B. Morgan (expar02-V10-06-00) +- Migration to G4RunManagerFactory. + 28-11-19 I. Hrivnacova (expar02-V10-05-00) - Fixed Doxygen warning diff --git a/examples/extended/parameterisations/Par02/examplePar02.cc b/examples/extended/parameterisations/Par02/examplePar02.cc index cfd26c223d..58198074e6 100644 --- a/examples/extended/parameterisations/Par02/examplePar02.cc +++ b/examples/extended/parameterisations/Par02/examplePar02.cc @@ -25,7 +25,7 @@ // // // -// +// // -------------------------------------------------------------- // GEANT 4 - examplePar02 // -------------------------------------------------------------- @@ -42,11 +42,7 @@ #include "G4Types.hh" #include "G4UImanager.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "Par02DetectorConstruction.hh" #include "Par02PhysicsList.hh" @@ -66,23 +62,13 @@ int main( int argc, char** argv ) { //------------------------------- // Initialization of Run manager //------------------------------- - #ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(4); - G4cout<<"+-------------------------------------------------------+"<SetUserInitialization( detector ); - + // PhysicsList (including G4FastSimulationManagerProcess) G4VUserPhysicsList* physicsList = new Par02PhysicsList; runManager->SetUserInitialization( physicsList ); diff --git a/examples/extended/parameterisations/Par02/examplePar02.out b/examples/extended/parameterisations/Par02/examplePar02.out index 8361f68f1a..ca8121215e 100644 --- a/examples/extended/parameterisations/Par02/examplePar02.out +++ b/examples/extended/parameterisations/Par02/examplePar02.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -12,9 +13,6 @@ WWW : http://geant4.org/ ************************************************************** -+-------------------------------------------------------+ -| Constructing sequential run manager | -+-------------------------------------------------------+ G4GDML: Reading 'Par02FullDetector.gdml'... G4GDML: Reading definitions... G4GDML: Reading materials... @@ -31,31 +29,28 @@ hcal !!! hcal !!! +ecal !!! + hcal !!! hcal !!! +ecal !!! + +ecal !!! + +ecal !!! + tracker !!! ecal !!! - -ecal !!! - -ecal !!! - -ecal !!! - -ecal !!! -Warning : Region does not have specific production cuts, +Warning : Region does not have specific production cuts, even though it appears in the current tracking world. Default cuts are used for this region. -Warning : Region does not have specific production cuts, +Warning : Region does not have specific production cuts, even though it appears in the current tracking world. Default cuts are used for this region. -Warning : Region does not have specific production cuts, -even though it appears in the current tracking world. -Default cuts are used for this region. -Warning : Region does not have specific production cuts, +Warning : Region does not have specific production cuts, even though it appears in the current tracking world. Default cuts are used for this region. Warning : Region does not have specific production cuts, @@ -70,18 +65,21 @@ Default cuts are used for this region. Warning : Region does not have specific production cuts, even though it appears in the current tracking world. Default cuts are used for this region. -Warning : Region does not have specific production cuts, -even though it appears in the current tracking world. -Default cuts are used for this region. -Warning : Region does not have specific production cuts, -even though it appears in the current tracking world. -Default cuts are used for this region. -Warning : Region does not have specific production cuts, -even though it appears in the current tracking world. -Default cuts are used for this region. Warning : Region does not have specific production cuts, even though it appears in the current tracking world. Default cuts are used for this region. +Warning : Region does not have specific production cuts, +even though it appears in the current tracking world. +Default cuts are used for this region. +Warning : Region does not have specific production cuts, +even though it appears in the current tracking world. +Default cuts are used for this region. +Warning : Region does not have specific production cuts, +even though it appears in the current tracking world. +Default cuts are used for this region. +Warning : Region does not have specific production cuts, +even though it appears in the current tracking world. +Default cuts are used for this region. Instantiating Visualization Manager....... Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... @@ -97,10 +95,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -137,7 +137,8 @@ Some /vis commands (optionally) take a string to specify colour. Magnetic field is active, fieldValue = (0 0 1 T ). G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. -... open Root analysis file : DefaultOutput.root - done +... create file : DefaultOutput.root - done +... open analysis file : DefaultOutput.root - done ________Tracker model triggered _________ ________Tracker model triggered _________ ________Tracker model triggered _________ @@ -1138,7 +1139,10 @@ See commands in /vis/modeling/trajectories/ for other options. ________Tracker model triggered _________ ________Tracker model triggered _________ ________Tracker model triggered _________ -... write Root file : DefaultOutput.root - done -... close Root file : DefaultOutput.root - done +... write file : DefaultOutput.root - done +... close file : DefaultOutput.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/parameterisations/Par03/.README.txt b/examples/extended/parameterisations/Par03/.README.txt new file mode 100644 index 0000000000..3ffbc7bbb6 --- /dev/null +++ b/examples/extended/parameterisations/Par03/.README.txt @@ -0,0 +1,134 @@ +///\file "parameterisations/Par03/.README.txt" +///\brief Example Par03 README page + +/*! \page ExamplePar03 Example Par03 + + This example demonstrates how to use G4FastSimHitMaker helper class + to create multiple energy deposits from the fast simulation model. + + It requires sensitive detector class to inherit from both base classes: + - G4VSensitiveDetector: for processing of detailed/non-fast simulation hits + - G4VFastSimSensitiveDetector: for processing of fast sim (G4FastSim) hits + Hits are placed in the same hit collection, so they can be used to + compare between the full and the fast simulation. + + The geometry used in the example is a homogeneous cylinder of lead, with + 3D readout geometry (cylindrical). Analysis of energy deposits is done + in the event action. + +\section Par03_s1 Detector description + + The detector is a homogeneous cylinder of lead. It is segmented along + z, R and phi to create a readout geometry in the cylindrical coordinates. + + Fast simulation is attached to the region of the detector. + + +\section Par03_s2 Sensitive detector + + Sensitive detector inherits from both base classes: + - G4VSensitiveDetector: for processing of detailed/non-fast simulation hits + - G4VFastSimSensitiveDetector: for processing of fast sim (G4FastSim) hits. + Hits are placed in the same hit collection, with a different flag to distinguish + between those originated in the full simulation, and those from the fast + simulation. + During visualisation, hits are represented as volumes of different colour: + green for full simulation and red for fast simulation. + +\section Par03_s3 Primary generation + + Particle gun is used as a primary generator. The direction of particles is along + the axis of symmetry of the detector (cylinder). It is positioned 10 cm in front + of the entrance to the detector. 10 GeV electron is used by default. Those values + can be changed using /gun/ UI commands. + +\section Par03_s4 Physics List + + FTFP_BERT modular physics list is used. On top of it, fast simulation physics + is registered for selected particles (electrons, positrons, and photons). + + +\section Par03_s5 User actions + + - Par03RunAction : run action used for initialization and termination + of the run. Histograms for analysis of shower development + in the detector are created. + + - Par03EventAction : event action used for initialization and termination + of the event. Analysis of shower development is performed + on event-by-event basis. + +\section Par03_s6 Output + + The execution of the program (examplePar03) produces an output with histograms. + + The macro file examplePar03.in specifies three runs. Each run is made of 100 + events, for single 10 GeV electron beams. The first run is executed with fast + simulation model activated with defualt parameters. The second run executes fast + simulation with modified parameters. For the third run the fast simulation model + is disactivated. + Three output files are produced: two with shower development from the fast + simulation (with different parameters), and from the full simulation. + +\section Par03_s7 How to build and run the example + +- Compile and link to generate the executable (in your CMAKE build directory): +\verbatim +% cmake +% make +\endverbatim + +- Execute the application (in batch mode): +\verbatim +% ./examplePar03 -m examplePar03.in +\endverbatim + which produces three root files: Par03_fastsim_100events.root, + Par03_fastsimModified_100events.root, and Par03_fullsim_100events.root. + +- Execute the application (in interactive mode): +\verbatim +% ./examplePar03 +\endverbatim + which allows to visualize hits. + +\section Par03_s8 UI commands + +UI commands useful in this example: + +- activation/disactivation of the fast simulation model: +\verbatim +/param/ActivateModel model +/param/InActivateModel model +\endverbatim + +- particle gun commands +\verbatim +/gun/particle e+ +/gun/energy 50 GeV +/gun/direction 0 0.2 1 +/gun/position 0 0 0 +\endverbatim + +UI commands defined in this example: +- detector settings +\verbatim +/Par03/detector/print +/Par03/detector/setDetectorRadius 10 cm +/Par03/detector/setDetectorLength 30 cm +/Par03/detector/setDetectorMaterial G4_Pb +/Par03/detector/setNbOfLayers 100 +/Par03/detector/setNbOfPhiCells 20 +/Par03/detector/setNbOfRhoCells 100 +\endverbatim + +- fast simulation settings +\verbatim +/Par03/fastSim/print +/Par03/fastSim/transverseProfile/sigma 20 mm +/Par03/fastSim/longitudinalProfile/beta 0.6 +/Par03/fastSim/longitudinalProfile/alpha 2. +/Par03/fastSim/longitudinalProfile/maxDepth 20 +/Par03/fastSim/numberOfHits 500 +\endverbatim + +*/ diff --git a/examples/extended/parameterisations/Par03/CMakeLists.txt b/examples/extended/parameterisations/Par03/CMakeLists.txt new file mode 100644 index 0000000000..e3d19214a4 --- /dev/null +++ b/examples/extended/parameterisations/Par03/CMakeLists.txt @@ -0,0 +1,67 @@ +#---------------------------------------------------------------------------- +# Setup the project +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() +project(Par03) + +#---------------------------------------------------------------------------- +# Find Geant4 package, activating all available UI and Vis drivers by default +# You can set WITH_GEANT4_UIVIS to OFF via the command line or ccmake/cmake-gui +# to build a batch mode only executable +# +option(WITH_GEANT4_UIVIS "Build example with Geant4 UI and Vis drivers" ON) +if(WITH_GEANT4_UIVIS) + find_package(Geant4 REQUIRED ui_all vis_all) +else() + find_package(Geant4 REQUIRED) +endif() + +#---------------------------------------------------------------------------- +# Setup Geant4 include directories and compile definitions +# +include(${Geant4_USE_FILE}) + +#---------------------------------------------------------------------------- +# Locate sources and headers for this project +# +include_directories(${PROJECT_SOURCE_DIR}/include + ${Geant4_INCLUDE_DIR}) +file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) +file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) + +#---------------------------------------------------------------------------- +# Add the executable, and link it to the Geant4 libraries +# +add_executable(examplePar03 examplePar03.cc ${sources} ${headers}) +target_link_libraries(examplePar03 ${Geant4_LIBRARIES} ) + +#---------------------------------------------------------------------------- +# Copy all scripts to the build directory, i.e. the directory in which we +# build Par02. This is so that we can run the executable directly because it +# relies on these scripts being in the current working directory. +# +set(Par03_SCRIPTS + examplePar03.in vis.mac + ) + +foreach(_script ${Par03_SCRIPTS}) + configure_file( + ${PROJECT_SOURCE_DIR}/${_script} + ${PROJECT_BINARY_DIR}/${_script} + COPYONLY + ) +endforeach() + +#---------------------------------------------------------------------------- +# Add program to the project targets +# (this avoids the need of typing the program name after make) +# +add_custom_target(Par03 DEPENDS examplePar03) + +#---------------------------------------------------------------------------- +# Install the executable to 'bin' directory under CMAKE_INSTALL_PREFIX +# +install(TARGETS examplePar03 DESTINATION bin) + diff --git a/examples/extended/parameterisations/Par03/GNUmakefile b/examples/extended/parameterisations/Par03/GNUmakefile new file mode 100644 index 0000000000..964fdfa68a --- /dev/null +++ b/examples/extended/parameterisations/Par03/GNUmakefile @@ -0,0 +1,16 @@ +# -------------------------------- +# GNUmakefile for examples module. +# -------------------------------- + +name := examplePar03 +G4TARGET := $(name) +G4EXLIB := true + +ifndef G4INSTALL + G4INSTALL = ../../.. +endif + +.PHONY: all +all: lib bin + +include $(G4INSTALL)/config/binmake.gmk diff --git a/examples/extended/parameterisations/Par03/History b/examples/extended/parameterisations/Par03/History new file mode 100644 index 0000000000..0b524a024f --- /dev/null +++ b/examples/extended/parameterisations/Par03/History @@ -0,0 +1,25 @@ +------------------------------------------------------------------- + + ========================================================= + Geant4 - an Object-Oriented Toolkit for Simulation in HEP + ========================================================= + + Example Par03 History file + --------------------------- +This file should be used by the G4 example coordinator to briefly +summarize all major modifications introduced in the code and keep +track of all tags. + + ---------------------------------------------------------- + * Reverse chronological order (last date on top), please * + ---------------------------------------------------------- + +06-Nov-20 I. Hrivnacova (expar03-V10-06-02) +- Added missing README for Doxygen +- Fixed section numbering in README + +26-Oct-20 A. Zaborowska (expar03-V10-06-01) +- Fix errors from Windows build + +06-Oct-20 A. Zaborowska (expar03-V10-06-00) +- Create Par03 example diff --git a/examples/extended/parameterisations/Par03/README b/examples/extended/parameterisations/Par03/README new file mode 100644 index 0000000000..e304420cca --- /dev/null +++ b/examples/extended/parameterisations/Par03/README @@ -0,0 +1,130 @@ +------------------------------------------------------------------- + + ========================================================= + Geant4 - an Object-Oriented Toolkit for Simulation in HEP + ========================================================= + + Example Par03 + ------------- + + This example demonstrates how to use G4FastSimHitMaker helper class + to create multiple energy deposits from the fast simulation model. + + It requires sensitive detector class to inherit from both base classes: + - G4VSensitiveDetector: for processing of detailed/non-fast simulation hits + - G4VFastSimSensitiveDetector: for processing of fast sim (G4FastSim) hits + Hits are placed in the same hit collection, so they can be used to + compare between the full and the fast simulation. + + The geometry used in the example is a homogeneous cylinder of lead, with + 3D readout geometry (cylindrical). Analysis of energy deposits is done + in the event action. + + 1. Detector description + ----------------------- + + The detector is a homogeneous cylinder of lead. It is segmented along + z, R and phi to create a readout geometry in the cylindrical coordinates. + + Fast simulation is attached to the region of the detector. + + + 2. Sensitive detector + ----------------------- + + Sensitive detector inherits from both base classes: + - G4VSensitiveDetector: for processing of detailed/non-fast simulation hits + - G4VFastSimSensitiveDetector: for processing of fast sim (G4FastSim) hits. + Hits are placed in the same hit collection, with a different flag to distinguish + between those originated in the full simulation, and those from the fast + simulation. + During visualisation, hits are represented as volumes of different colour: + green for full simulation and red for fast simulation. + + 3. Primary generation + --------------------- + + Particle gun is used as a primary generator. The direction of particles is along + the axis of symmetry of the detector (cylinder). It is positioned 10 cm in front + of the entrance to the detector. 10 GeV electron is used by default. Those values + can be changed using /gun/ UI commands. + + 4. Physics List + --------------- + + FTFP_BERT modular physics list is used. On top of it, fast simulation physics + is registered for selected particles (electrons, positrons, and photons). + + + 5. User actions + ---------------------------------------------------------- + + - Par03RunAction : run action used for initialization and termination + of the run. Histograms for analysis of shower development + in the detector are created. + + - Par03EventAction : event action used for initialization and termination + of the event. Analysis of shower development is performed + on event-by-event basis. + + 6. Output + --------- + + The execution of the program (examplePar03) produces an output with histograms. + + The macro file examplePar03.in specifies three runs. Each run is made of 100 + events, for single 10 GeV electron beams. The first run is executed with fast + simulation model activated with defualt parameters. The second run executes fast + simulation with modified parameters. For the third run the fast simulation model + is disactivated. + Three output files are produced: two with shower development from the fast + simulation (with different parameters), and from the full simulation. + + 7. How to build and run the example + ----------------------------------- + +- Compile and link to generate the executable (in your CMAKE build directory): + % cmake + % make + +- Execute the application (in batch mode): + % ./examplePar03 -m examplePar03.in + which produces three root files: Par03_fastsim_100events.root, + Par03_fastsimModified_100events.root, and Par03_fullsim_100events.root. + +- Execute the application (in interactive mode): + % ./examplePar03 + which allows to visualize hits. + + 8. UI commands + -------------- + + UI commands useful in this example: + +- activation/disactivation of the fast simulation model: + /param/ActivateModel model + /param/InActivateModel model + +- particle gun commands + /gun/particle e+ + /gun/energy 50 GeV + /gun/direction 0 0.2 1 + /gun/position 0 0 0 + + UI commands defined in this example: + - detector settings + /Par03/detector/print + /Par03/detector/setDetectorRadius 10 cm + /Par03/detector/setDetectorLength 30 cm + /Par03/detector/setDetectorMaterial G4_Pb + /Par03/detector/setNbOfLayers 100 + /Par03/detector/setNbOfPhiCells 20 + /Par03/detector/setNbOfRhoCells 100 + + - fast simulation settings + /Par03/fastSim/print + /Par03/fastSim/transverseProfile/sigma 20 mm + /Par03/fastSim/longitudinalProfile/beta 0.6 + /Par03/fastSim/longitudinalProfile/alpha 2. + /Par03/fastSim/longitudinalProfile/maxDepth 20 + /Par03/fastSim/numberOfHits 500 \ No newline at end of file diff --git a/examples/extended/parameterisations/Par03/examplePar03.cc b/examples/extended/parameterisations/Par03/examplePar03.cc new file mode 100644 index 0000000000..5d0da76c0d --- /dev/null +++ b/examples/extended/parameterisations/Par03/examplePar03.cc @@ -0,0 +1,142 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// +// +// -------------------------------------------------------------- +// GEANT 4 - examplePar03 +// -------------------------------------------------------------- +// Comments +// +// Example of a main program demonstrating multiple energy deposition +// from fast simulation model. +// +//------------------------------------------------------------------- + +#include "Par03DetectorConstruction.hh" +#include "Par03ActionInitialisation.hh" + +#include "G4RunManagerFactory.hh" +#include "G4Types.hh" +#include "G4UImanager.hh" +#include "FTFP_BERT.hh" +#include "G4HadronicProcessStore.hh" +#include "G4EmParameters.hh" +#include "G4FastSimulationPhysics.hh" +#include "G4VisExecutive.hh" +#include "G4UIExecutive.hh" +#include + +int main(int argc, char** argv) +{ + // Macro name from arguments + G4String batchMacroName; + G4bool useInteractiveMode = true; + G4String helpMsg( + "Usage: " + G4String(argv[0]) + + " [option(s)] \n No additional arguments triggers an interactive mode " + "executing vis.mac macro. \n Options:\n\t-h\t\tdisplay this help " + "message\n\t-m MACRO\ttriggers a batch mode executing MACRO\n"); + for(G4int i = 1; i < argc; ++i) + { + G4String argument(argv[i]); + if(argument == "-h" || argument == "--help") + { + G4cout << helpMsg << G4endl; + return 0; + } + else if(argument == "-m") + { + batchMacroName = G4String(argv[i + 1]); + useInteractiveMode = false; + ++i; + } + else + { + G4Exception("main", "Unknown argument", FatalErrorInArgument, + ("Unknown argument passed to " + G4String(argv[0]) + " : " + + argument + "\n" + helpMsg) + .c_str()); + } + } + + // Initialization of default Run manager + auto* runManager = + G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default); + + // Detector geometry: + auto detector = new Par03DetectorConstruction(); + runManager->SetUserInitialization(detector); + + // Physics list + auto physicsList = new FTFP_BERT(); + // Add fast simulation physics + auto fastSimulationPhysics = new G4FastSimulationPhysics(); + fastSimulationPhysics->BeVerbose(); + fastSimulationPhysics->ActivateFastSimulation("e-"); + fastSimulationPhysics->ActivateFastSimulation("e+"); + fastSimulationPhysics->ActivateFastSimulation("gamma"); + physicsList->RegisterPhysics(fastSimulationPhysics); + // reduce verbosity of physics lists + G4EmParameters::Instance()->SetVerbose(0); + runManager->SetUserInitialization(physicsList); + G4HadronicProcessStore::Instance()->SetVerbose(0); + + //------------------------------- + // UserAction classes + //------------------------------- + runManager->SetUserInitialization(new Par03ActionInitialisation(detector)); + + //---------------- + // Visualization: + //---------------- + G4cout << "Instantiating Visualization Manager......." << G4endl; + G4VisManager* visManager = new G4VisExecutive; + visManager->Initialize(); + G4UImanager* UImanager = G4UImanager::GetUIpointer(); + + if(useInteractiveMode) + { + G4UIExecutive* ui = new G4UIExecutive(argc, argv); + UImanager->ApplyCommand("/control/execute vis.mac"); + ui->SessionStart(); + delete ui; + } + else + { + G4String command = "/control/execute "; + UImanager->ApplyCommand(command + batchMacroName); + } + + // Free the store: user actions, physics_list and detector_description are + // owned and deleted by the run manager, so they should not + // be deleted in the main() program ! + + delete visManager; + delete runManager; + + return 0; +} diff --git a/examples/extended/parameterisations/Par03/examplePar03.in b/examples/extended/parameterisations/Par03/examplePar03.in new file mode 100644 index 0000000000..e324d03ed1 --- /dev/null +++ b/examples/extended/parameterisations/Par03/examplePar03.in @@ -0,0 +1,38 @@ +# examplePar03.in +# + +# setup detector dimensions +/Par03/detector/setDetectorRadius 10 cm +/Par03/detector/setDetectorLength 30 cm +/Par03/detector/setDetectorMaterial G4_Pb +/Par03/detector/setNbOfLayers 100 +/Par03/detector/setNbOfPhiCells 20 +/Par03/detector/setNbOfRhoCells 100 +/Par03/detector/print + +# initialize +/run/initialize + +/gun/energy 10 GeV +/gun/position 0 0 0 + +# run 100 events with parametrised simulation +# by default all created models are active +#/param/ActivateModel model +/analysis/setFileName Par03_fastsim_100events.root +/run/beamOn 100 + +# run 100 events with modified parametrisation +/Par03/fastSim/print +/Par03/fastSim/transverseProfile/sigma 20 mm +/Par03/fastSim/longitudinalProfile/beta 0.6 +/Par03/fastSim/longitudinalProfile/alpha 2. +/Par03/fastSim/longitudinalProfile/maxDepth 20 +/Par03/fastSim/numberOfHits 500 +/analysis/setFileName Par03_fastsimModified_100events.root +/run/beamOn 100 + +# run 100 events with full (detailed) simulation +/param/InActivateModel model +/analysis/setFileName Par03_fullsim_100events.root +/run/beamOn 100 \ No newline at end of file diff --git a/examples/extended/parameterisations/Par03/include/Par03ActionInitialisation.hh b/examples/extended/parameterisations/Par03/include/Par03ActionInitialisation.hh new file mode 100644 index 0000000000..d1fcdc36d2 --- /dev/null +++ b/examples/extended/parameterisations/Par03/include/Par03ActionInitialisation.hh @@ -0,0 +1,57 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#ifndef PAR03ACTIONINITIALISATION_HH +#define PAR03ACTIONINITIALISATION_HH + +#include "G4VUserActionInitialization.hh" + +class Par03DetectorConstruction; + +/** + * @brief Initialization of user actions. + * + * Initialises the primary generator, and user actions (event, run) to perform + * analysis and store histograms. + * + */ + +class Par03ActionInitialisation : public G4VUserActionInitialization +{ + public: + Par03ActionInitialisation(Par03DetectorConstruction* aDetector); + ~Par03ActionInitialisation(); + /// Create all user actions. + virtual void Build() const final; + /// Create run action in the master thread to allow analysis merging. + virtual void BuildForMaster() const final; + + private: + /// Pointer to detector to be passed to event and run actions in order to + /// retrieve detector dimensions + Par03DetectorConstruction* fDetector; +}; + +#endif /* PAR03ACTIONINITIALISATION_HH */ diff --git a/examples/extended/parameterisations/Par03/include/Par03DetectorConstruction.hh b/examples/extended/parameterisations/Par03/include/Par03DetectorConstruction.hh new file mode 100644 index 0000000000..87f56880db --- /dev/null +++ b/examples/extended/parameterisations/Par03/include/Par03DetectorConstruction.hh @@ -0,0 +1,111 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#ifndef PAR03DETECTORCONSTRUCTION_H +#define PAR03DETECTORCONSTRUCTION_H + +#include "G4VUserDetectorConstruction.hh" +#include "G4SystemOfUnits.hh" +#include "G4Material.hh" + +class Par03DetectorMessenger; +class G4LogicalVolume; + +/** + * @brief Detector construction. + * + * Creates a cylindrical detector, with cylinder axis along Z-axis. It is placed + * in the world volume so that its bases are located at z=0 and z=Length. + * Dimensions of the detector (Radius and Length) and material can be set using + * the UI commands. + * Readout geometry of the detector is created, and can be set by UI commands. + * Cells are created along z-axis, azimuthal angle, and radius (cylindrical + * segmentation). + * Sensitive detector Par03SensitiveDetector is attached to the + * cell volume. + * Region for the detector is created as an envelope of the fast simulation. + * + */ + +class Par03DetectorConstruction : public G4VUserDetectorConstruction +{ + public: + Par03DetectorConstruction(); + virtual ~Par03DetectorConstruction(); + + virtual G4VPhysicalVolume* Construct() final; + virtual void ConstructSDandField() final; + + // Set radius of the cylindrical detector + void SetRadius(G4double aRadius); + // Get radius of the cylindrical detector + inline G4double GetRadius() const { return fDetectorRadius; }; + // Set length of the cylindrical detector (along z-axis) + void SetLength(G4double aLength); + // Get length of the cylindrical detector (along z-axis) + inline G4double GetLength() const { return fDetectorLength; }; + // Set material of the detector (from NIST materials) + void SetMaterial(const G4String& aMaterial); + // Get name of the material of the detector + inline G4String GetMaterial() const { return fDetectorMaterial->GetName(); }; + + // Set number of readout cells along z-axis + inline void SetNbOfLayers(G4int aNumber) { fNbOfLayers = aNumber; }; + // Get number of readout cells along z-axis + inline G4int GetNbOfLayers() const { return fNbOfLayers; }; + // Set number of readout cells along radius of cylinder + inline void SetNbOfRhoCells(G4int aNumber) { fNbOfRhoCells = aNumber; }; + // Get number of readout cells along radius of cylinder + inline G4int GetNbOfRhoCells() const { return fNbOfRhoCells; }; + // Set number of readout cells in azimuthal angle + inline void SetNbOfPhiCells(G4int aNumber) { fNbOfPhiCells = aNumber; }; + // Get number of readout cells in azimuthal angle + inline G4int GetNbOfPhiCells() const { return fNbOfPhiCells; }; + + // Print detector information + void Print() const; + + private: + /// Messenger that allows to modify geometry + Par03DetectorMessenger* fDetectorMessenger; + /// Logical volume of replicated cell + G4LogicalVolume* fLogicCell = nullptr; + /// World size (in each X, Y, Z dimension) + G4double fWorldSize = 10 * m; + /// Radius of the cylindrical detector + G4double fDetectorRadius = 10 * cm; + /// Length of the cylindrical detector (along z axis) + G4double fDetectorLength = 30 * cm; + /// Material of the detector + G4Material* fDetectorMaterial = nullptr; + /// Number of layers = slices along z axis + G4int fNbOfLayers = 10; + /// Number of cells along radius + G4int fNbOfRhoCells = 10; + /// Number of cells in azimuthal angle + G4int fNbOfPhiCells = 10; +}; + +#endif /* PAR03DETECTORCONSTRUCTION_H */ diff --git a/examples/extended/parameterisations/Par03/include/Par03DetectorMessenger.hh b/examples/extended/parameterisations/Par03/include/Par03DetectorMessenger.hh new file mode 100644 index 0000000000..8ef079bb38 --- /dev/null +++ b/examples/extended/parameterisations/Par03/include/Par03DetectorMessenger.hh @@ -0,0 +1,83 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +#ifndef PAR03DETECTORMESSENGER_H +#define PAR03DETECTORMESSENGER_H + +#include "G4UImessenger.hh" + +class Par03DetectorConstruction; +class G4UIdirectory; +class G4UIcmdWithoutParameter; +class G4UIcmdWithAnInteger; +class G4UIcmdWithADoubleAndUnit; +class G4UIcmdWithAString; + +/** + * @brief Detector messenger. + * + * Provides UI commands to setup detector and readout geometry (prior to + * initialization). Radius, length, and material of the detector, as well as + * segmentation of the readout geometry can be changed. + * + */ + +class Par03DetectorMessenger : public G4UImessenger +{ + public: + Par03DetectorMessenger(Par03DetectorConstruction*); + ~Par03DetectorMessenger(); + + /// Invokes appropriate methods based on the typed command + virtual void SetNewValue(G4UIcommand*, G4String) final; + /// Retrieves the current settings + virtual G4String GetCurrentValue(G4UIcommand*) final; + + private: + /// Detector construction to setup + Par03DetectorConstruction* fDetector = nullptr; + /// Command to set the directory common to all messengers in this example + /// /Par03 + G4UIdirectory* fExampleDir = nullptr; + /// Command to set the directory for detector settings /Par03/detector + G4UIdirectory* fDetectorDir = nullptr; + /// Command printing current settings + G4UIcmdWithoutParameter* fPrintCmd; + /// Command to set the detector radius + G4UIcmdWithADoubleAndUnit* fDetectorRadiusCmd = nullptr; + /// Command to set the detector length + G4UIcmdWithADoubleAndUnit* fDetectorLengthCmd = nullptr; + /// Command to set the detector material + G4UIcmdWithAString* fDetectorMaterialCmd = nullptr; + /// Command to set the number of layers + G4UIcmdWithAnInteger* fNbLayersCmd = nullptr; + /// Command to set the number of radial cells + G4UIcmdWithAnInteger* fNbRhoCellsCmd = nullptr; + /// Command to set the number of cells in azimuthal angle + G4UIcmdWithAnInteger* fNbPhiCellsCmd = nullptr; +}; + +#endif diff --git a/examples/extended/parameterisations/Par03/include/Par03EMShowerMessenger.hh b/examples/extended/parameterisations/Par03/include/Par03EMShowerMessenger.hh new file mode 100644 index 0000000000..0d79d5232d --- /dev/null +++ b/examples/extended/parameterisations/Par03/include/Par03EMShowerMessenger.hh @@ -0,0 +1,83 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#ifndef PAR03EMSHOWERMESSENGER_HH +#define PAR03EMSHOWERMESSENGER_HH + +class Par03EMShowerModel; +class G4UIcommand; +class G4UIdirectory; +class G4UIcmdWithoutParameter; +class G4UIcmdWithADouble; +class G4UIcmdWithADoubleAndUnit; +class G4UIcmdWithAnInteger; + +#include "G4UImessenger.hh" + +/** + * @brief Messenger for the example fast simulation model. + * + * Allows to set the parameters of the Par03EMShowerModel: parameters of the + * distributions used in the parametrisation, number of created (same) energy + * deposits, as well as the maximum depth of an EM shower. + * + */ + +class Par03EMShowerMessenger : public G4UImessenger +{ + public: + Par03EMShowerMessenger(Par03EMShowerModel* aModel); + ~Par03EMShowerMessenger(); + + public: + /// Invokes appropriate methods based on the typed command + virtual void SetNewValue(G4UIcommand* aCommand, G4String aNewValues) final; + /// Retrieves the current settings + virtual G4String GetCurrentValue(G4UIcommand* aCommand) final; + + private: + /// Model to setup + Par03EMShowerModel* fModel; + /// Command to set the up a directory for model settings /Par03/fastSim + G4UIdirectory* fDirectory; + /// Command printing current settings + G4UIcmdWithoutParameter* fPrintCmd; + /// Command to set the sigma parameter of the Gaussian distribution describing + /// the transverse profile + G4UIcmdWithADoubleAndUnit* fSigmaCmd; + /// Command to set the alpha parameter of the Gamma distribution describing + /// the longitudinal profile + G4UIcmdWithADouble* fAlphaCmd; + /// Command to set the beta parameter of the Gamma distribution describing the + /// longitudinal profile + G4UIcmdWithADouble* fBetaCmd; + /// Command to set the number of (same energy) deposits to be created by + /// fast simulation + G4UIcmdWithAnInteger* fNbOfHitsCmd; + /// Command to set the maximum shower depth + G4UIcmdWithADouble* fLongMaxDepthCmd; +}; + +#endif /* PAR03EMSHOWERMESSENGER_HH */ \ No newline at end of file diff --git a/examples/extended/parameterisations/Par03/include/Par03EMShowerModel.hh b/examples/extended/parameterisations/Par03/include/Par03EMShowerModel.hh new file mode 100644 index 0000000000..5189971142 --- /dev/null +++ b/examples/extended/parameterisations/Par03/include/Par03EMShowerModel.hh @@ -0,0 +1,167 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#ifndef PAR03EMSHOWERMODEL_HH +#define PAR03EMSHOWERMODEL_HH + +#include "G4VFastSimulationModel.hh" + +class Par03EMShowerMessenger; +class G4FastSimHitMaker; + +/** + * @brief Example fast simulation model for EM showers. + * + * Parametrisation of electrons, positrons, and gammas. It is triggered if those + * particles enter the detector so that there is sufficient length for the + * shower development (max depth, controlled by the UI command). + * + * Parametrisation is based on the PDG chapter on the electromagnetic cascades + * (chapter 33.5). Longitudinal profile of the shower is described with Gamma + * distribution, with beta parameter on average equal to 0.5 (default value, + * Fig. 33.21), and alpha parameter calcluated from the incident particle energy + * and material of the detector (critical energy) following Eq.(33.36). + * + * Transverse profile is in this model approximated by the Gaussian + * distribution, with the mean along the shower axis (incident particle momentum + * direction) and the standard deviation calculated from the detector material + * (Moliere radius). This assumes that EM shower is in 90% contained within a + * cylinder of radius equal to Moliere radius, and that area below Gaussian + * distribution from `mean-1.645 sigma` to `mean+1.645 sigma` is also equal to + * 90% of total distribution. + * + * Parameters of both distributions (alpha, beta for Gamma, sigma for Gaussian) + * can be overwritten by UI commands. + * + * Parametrisation creates N hits of same energy (N can be set by UI command), + * using rejection sampling to generate position along shower axis from Gamma + * distribution, and then sampling from uniform and Gaussian distributions to + * sample phi and radius, respectively. Created hits are deposited in the + * detector using its readout geometry, using the helper class G4FastSimHitMaker + * that locates the volume, and calls appropriate sensitive detector class. + * + * PDG Chapter 33: + * https://pdg.lbl.gov/2019/reviews/rpp2018-rev-passage-particles-matter.pdf + * + */ + +class Par03EMShowerModel : public G4VFastSimulationModel +{ + public: + Par03EMShowerModel(G4String, G4Region*); + Par03EMShowerModel(G4String); + ~Par03EMShowerModel(); + + /// There are no kinematics constraints. True is returned. + virtual G4bool ModelTrigger(const G4FastTrack&) final; + /// Model is applicable to electrons, positrons, and photons. + virtual G4bool IsApplicable(const G4ParticleDefinition&) final; + /// Take particle out of the full simulation (kill it at the entrance + /// depositing all the energy). Calculate energy deposited in the detector + /// according to Gamma distribution (along the particle direction) and + /// Gaussian distribution in the transverse direction. Mean of the Gaussian is + /// centred on the shower axis. Create energy deposits on a cylindrical mesh. + /// Parameters of the mesh (size, number of cells) and of the distributions + /// (alpha, beta for Gamma, sigma for Gaussian) can be set with UI commands. + virtual void DoIt(const G4FastTrack&, G4FastStep&) final; + + /// Print current settings. + void Print() const; + /// Set standard deviation of a Gaussian distribution that describes the + /// transverse shower profile. + inline void SetSigma(const G4double aSigma) { fSigma = aSigma; }; + /// Get standard deviation of a Gaussian distribution that describes the + /// transverse shower profile. + inline G4double GetSigma() const { return fSigma; }; + /// Set alpha parameter of a Gamma distribution that describes the + /// longitudinal shower profile. + inline void SetAlpha(const G4double aAlpha) { fAlpha = aAlpha; }; + /// Get alpha parameter of a Gamma distribution that describes the + /// longitudinal shower profile. + inline G4double GetAlpha() const { return fAlpha; }; + /// Set beta parameter of a Gamma distribution that describes the longitudinal + /// shower profile. + inline void SetBeta(const G4double aBeta) { fBeta = aBeta; }; + /// Get beta parameter of a Gamma distribution that describes the longitudinal + /// shower profile. + inline G4double GetBeta() const { return fBeta; }; + /// Set number of (same energy) hits created in the parametrisation. + inline void SetNbOfHits(const G4int aNumber) { fNbOfHits = aNumber; }; + /// Get number of (same energy) hits created in the parametrisation.s + inline G4int GetNbOfHits() const { return fNbOfHits; }; + /// Set maximum depth of shower created in fast simulation. It is expressed in + /// units of radiaton length. + inline void SetLongMaxDepth(const G4double aDepth) + { + fLongMaxDepth = aDepth; + }; + /// Get maximum depth of shower created in fast simulation. It is expressed in + /// units of radiaton length. + inline G4double GetLongMaxDepth() const { return fLongMaxDepth; }; + + private: + /// Gamma distribution + inline G4double gamma(G4double x, G4double alpha, G4double beta) + { + return (std::pow(beta, alpha) / std::tgamma(alpha) * std::pow(x, alpha - 1) * + std::exp(-beta * x)); + } + /// Gaussian distribution + inline G4double gaussian(G4double x, G4double sigma = 1, G4double x0 = 0) + { + G4double tmp = (x - x0) / sigma; + return (1.0 / (std::sqrt(2 * CLHEP::pi) * sigma)) * std::exp(-tmp * tmp / 2); + } + + private: + /// Messenger for configuration + Par03EMShowerMessenger* fMessenger; + /// Helper class for creation of hits within the sensitive detector + std::unique_ptr fHitMaker; + /// Standard deviation of the Gaussian distribution + /// Can be changed with UI command `/Par03/fastSim/transverseProfile/sigma + /// ` + /// If sigma is smaller than 0, it will be estimated from the detector + /// material (Moliere radius). + G4double fSigma = -1; + /// Alpha parameter of the Gamma distribution + /// Can be changed with UI command `/Par03/fastSim/longitudunalProfile/alpha + /// ` + /// If alpha is smaller than 0, it will be estimated from particle energy and + /// the detector material. + G4double fAlpha = -1; + /// Beta parameter of the Gamma distribution + /// Can be changed with UI command `/Par03/fastSim/longitudinalProfile/beta + /// ` + G4double fBeta = 0.5; + /// Number of (same energy) hits created by the parametrisation. Can be + /// changed with UI command `/Par03/fastSim/numberOfHits ` + G4int fNbOfHits = 100; + /// Maximum depth of a shower created in fast simulation. + /// It is expressed in units of radiation length. Can be changed with UI + /// command `/Par03/fastSim/longitudinalProfile/maxDepth ` + G4double fLongMaxDepth = 30; +}; +#endif /* PAR03EMSHOWERMODEL_HH */ \ No newline at end of file diff --git a/examples/extended/parameterisations/Par03/include/Par03EventAction.hh b/examples/extended/parameterisations/Par03/include/Par03EventAction.hh new file mode 100644 index 0000000000..828aa094ae --- /dev/null +++ b/examples/extended/parameterisations/Par03/include/Par03EventAction.hh @@ -0,0 +1,68 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#ifndef PAR03EVENTACTION_HH +#define PAR03EVENTACTION_HH + +#include "G4UserEventAction.hh" +#include "G4Timer.hh" + +class Par03DetectorConstruction; + +/** + * @brief Event action class for hits' analysis. + * + * Analysis of single-particle events and developed showers in the detector. + * At the end of the event basic variables are calculated and saved in the + * histograms. + * + */ + +class Par03EventAction : public G4UserEventAction +{ + public: + Par03EventAction(Par03DetectorConstruction* aDetector); + virtual ~Par03EventAction(); + + /// Timer is started + virtual void BeginOfEventAction(const G4Event* aEvent) final; + /// Hits collection is retrieved, analysed, and histograms are filled. + virtual void EndOfEventAction(const G4Event* aEvent) final; + + private: + /// ID of a hit collection to analyse + G4int fHitCollectionID; + /// Timer measurement + G4Timer fTimer; + /// Pointer to detector construction to retrieve (once) the detector + /// dimensions + Par03DetectorConstruction* fDetector; + /// Size of cell along Z axis + G4double fCellSizeZ = 0; + /// Size of cell along radius of cylinder + G4double fCellSizeRho = 0; +}; + +#endif /* PAR03EVENTACTION_HH */ diff --git a/examples/extended/parameterisations/Par03/include/Par03Hit.hh b/examples/extended/parameterisations/Par03/include/Par03Hit.hh new file mode 100644 index 0000000000..69439883b1 --- /dev/null +++ b/examples/extended/parameterisations/Par03/include/Par03Hit.hh @@ -0,0 +1,148 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#ifndef PAR03HIT_HH +#define PAR03HIT_HH + +#include "G4VHit.hh" +#include "G4THitsCollection.hh" +#include "G4Allocator.hh" +#include "G4ThreeVector.hh" +#include "G4RotationMatrix.hh" + +class G4AttDef; +class G4AttValue; +class G4LogicalVolume; + +/** + * @brief Hit class to store energy deposited in the sensitive detector. + * + * Hit class registers position and energy deposited within the sensitive + * detector. Cell ID is stored using identifiers of readout segmentation (z, + * phi, rho). Additionally, pointer to cell logical volume, its position and + * rotation are saved for visualisation purposes. Time allows to filter hits in + * visualisation. Type of hit allows to distinguish between hits originating + * from full simulation (type 0) and fast simulation (type 1). + * + */ + +class Par03Hit : public G4VHit +{ + public: + Par03Hit(); + Par03Hit(const Par03Hit& aRight); + virtual ~Par03Hit(); + + const Par03Hit& operator=(const Par03Hit& aRight); + int operator==(const Par03Hit& aRight) const; + + inline void* operator new(size_t); + inline void operator delete(void* aHit); + /// Visualise hits. If pointer to the logical volume was set, cell shape is + /// drawn taking into account proper radial position (taken from fRhoId) + virtual void Draw(); + /// Retrieve atributes' names in order to allow filtering + virtual const std::map* GetAttDefs() const; + /// Create attributes for the visualisation. + virtual std::vector* CreateAttValues() const; + /// Print hit properties. + virtual void Print(); + /// Set position + inline void SetPos(G4ThreeVector aXYZ) { fPos = aXYZ; } + /// Get position + inline G4ThreeVector GetPos() const { return fPos; } + /// Set rotation + inline void SetRot(G4RotationMatrix aXYZ) { fRot = aXYZ; } + /// Get rotation + inline G4RotationMatrix GetRot() const { return fRot; } + /// Set energy + inline void SetEdep(G4double aEdep) { fEdep = aEdep; } + /// Add energy to previous value + inline void AddEdep(G4double aEdep) { fEdep += aEdep; } + /// Get energy + inline G4double GetEdep() const { return fEdep; } + /// Set Z id of the cell in the readout segmentation + inline void SetZid(G4int aZ) { fZId = aZ; } + /// Get Z id of the cell in the readout segmentation + inline G4int GetZid() const { return fZId; } + /// Set Rho id of the cell in the readout segmentation + inline void SetRhoId(G4int aRho) { fRhoId = aRho; } + /// Get rho id of the cell in the readout segmentation + inline G4int GetRhoId() const { return fRhoId; } + /// Set phi id of the cell in the readout segmentation + inline void SetPhiId(G4int aPhi) { fPhiId = aPhi; } + /// Get phi id of the cell in the readout segmentation + inline G4int GetPhiId() const { return fPhiId; } + /// Set time + inline void SetTime(G4double aTime) { fTime = aTime; } + /// Get time + inline G4double GetTime() const { return fTime; } + /// Set type (0 = full sim, 1 = fast sim) + inline void SetType(G4int aType) { fType = aType; } + /// Get type (0 = full sim, 1 = fast sim) + inline G4int GetType() const { return fType; } + // Set pointer to cell logical volume + inline void SetLogV(G4LogicalVolume* aLogVol) { fLogVol = aLogVol; } + // Get pointer to cell logical volume + inline const G4LogicalVolume* GetLogVol() { return fLogVol; } + + public: + /// Energy deposit + G4double fEdep = 0; + /// Z ID of readout cell + G4int fZId = -1; + /// Rho ID of readout cell + G4int fRhoId = -1; + /// Phi ID of readout cell + G4int fPhiId = -1; + /// Position + G4ThreeVector fPos; + /// Rotation + G4RotationMatrix fRot; + /// Time + G4double fTime = -1; + /// Type: 0 = full sim, 1 = fast sim + G4int fType = -1; + /// Pointer to logical volume for visualisation + G4LogicalVolume* fLogVol = nullptr; +}; + +typedef G4THitsCollection Par03HitsCollection; + +extern G4ThreadLocal G4Allocator* Par03HitAllocator; + +inline void* Par03Hit::operator new(size_t) +{ + if(!Par03HitAllocator) + Par03HitAllocator = new G4Allocator; + return (void*) Par03HitAllocator->MallocSingle(); +} + +inline void Par03Hit::operator delete(void* aHit) +{ + Par03HitAllocator->FreeSingle((Par03Hit*) aHit); +} + +#endif /* PAR03HIT_HH */ diff --git a/examples/extended/parameterisations/Par03/include/Par03PrimaryGeneratorAction.hh b/examples/extended/parameterisations/Par03/include/Par03PrimaryGeneratorAction.hh new file mode 100644 index 0000000000..6f9cdf6af5 --- /dev/null +++ b/examples/extended/parameterisations/Par03/include/Par03PrimaryGeneratorAction.hh @@ -0,0 +1,55 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#ifndef PAR03PRIMARYGENERATORACTION_HH +#define PAR03PRIMARYGENERATORACTION_HH + +#include "G4VUserPrimaryGeneratorAction.hh" + +class G4ParticleGun; +class G4Event; + +/** + * @brief Generator of particles + * + * Creates single particle events using a particle gun. Particle gun can be + * configured using UI commands /gun/. + * + */ + +class Par03PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction +{ + public: + Par03PrimaryGeneratorAction(); + virtual ~Par03PrimaryGeneratorAction(); + + virtual void GeneratePrimaries(G4Event*) final; + + private: + /// Particle gun + G4ParticleGun* fParticleGun; +}; + +#endif /* PAR03PRIMARYGENERATORACTION_HH */ diff --git a/examples/extended/parameterisations/Par03/include/Par03RunAction.hh b/examples/extended/parameterisations/Par03/include/Par03RunAction.hh new file mode 100644 index 0000000000..78c6f0504c --- /dev/null +++ b/examples/extended/parameterisations/Par03/include/Par03RunAction.hh @@ -0,0 +1,60 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#ifndef PAR03RUNACTION_HH +#define PAR03RUNACTION_HH + +#include "G4UserRunAction.hh" +class G4Run; +class Par03DetectorConstruction; + +/** + * @brief Run action + * + * Create analysis file and define control histograms for showers in detectors. + * Histograms are configured taking into account the dimensions of the detector + * (and number of readout cells). + * + */ + +class Par03RunAction : public G4UserRunAction +{ + public: + /// Constructor. Defines the histograms. + Par03RunAction(Par03DetectorConstruction* aDetector); + virtual ~Par03RunAction(); + + /// Open the file for the analysis + virtual void BeginOfRunAction(const G4Run*) final; + /// Write and close the file + virtual void EndOfRunAction(const G4Run*) final; + + private: + /// Pointer to detector construction to retrieve the detector dimensions to + /// setup the histograms + Par03DetectorConstruction* fDetector; +}; + +#endif /* PAR03RUNACTION_HH */ diff --git a/examples/extended/parameterisations/Par03/include/Par03SensitiveDetector.hh b/examples/extended/parameterisations/Par03/include/Par03SensitiveDetector.hh new file mode 100644 index 0000000000..0cb9d93f21 --- /dev/null +++ b/examples/extended/parameterisations/Par03/include/Par03SensitiveDetector.hh @@ -0,0 +1,85 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#ifndef PAR03SENSITIVEDETECTOR_HH +#define PAR03SENSITIVEDETECTOR_HH + +#include "Par03Hit.hh" + +#include "G4VFastSimSensitiveDetector.hh" +#include "G4VSensitiveDetector.hh" + +class G4HCofThisEvent; +class G4TouchableHistory; + +/** + * @brief Sensitive detector. + * + * Describes how to store the energy deposited within the detector. + * It derives from two classes: G4VSensitiveDetector and + * G4VFastSimSensitiveDetector. Addition of G4VFastSimSensitiveDetector is + * necessary in order to handle the energy deposits from the fast simulation. + * + * Two ProcessHits() methods are introduced to handle energy deposited from full + * (detailed) simulation, and from fast simulation. The common part is handled + * by RetrieveAdnSetupHit() method. + * + */ + +class Par03SensitiveDetector + : public G4VSensitiveDetector + , public G4VFastSimSensitiveDetector +{ + public: + Par03SensitiveDetector(G4String aName); + Par03SensitiveDetector(G4String aName, G4int aNumLayers, G4int aNumPhi, + G4int aNumRho); + virtual ~Par03SensitiveDetector(); + /// Create hit collection + virtual void Initialize(G4HCofThisEvent* HCE) final; + /// Process energy deposit from the full simulation. + virtual G4bool ProcessHits(G4Step* aStep, G4TouchableHistory* aROhist) final; + /// Process energy deposit from the fast simulation. + virtual G4bool ProcessHits(const G4FastHit* aHit, const G4FastTrack* aTrack, + G4TouchableHistory* aROhist) final; + /// Process energy deposit - common part for full and fast simulation + /// It is invoked from ProcessHits() methods, and sets basic hit properties + /// (position, etc.), common for hit from fast and full simulation. + Par03Hit* RetrieveAndSetupHit(G4TouchableHistory* aTouchable); + + private: + /// Collection of hits + Par03HitsCollection* fHitsCollection = nullptr; + /// ID of collection of hits + G4int fHitCollectionID = -1; + /// Number of readout cells along z axis + G4int fCellNoZ = 10; + /// Number of readout cells along radius of cylinder + G4int fCellNoRho = 10; + /// Number of readout cells along azimuthal angle + G4int fCellNoPhi = 10; +}; + +#endif /* PAR03SENSITIVEDETECTOR_HH */ diff --git a/source/processes/hadronic/processes/src/G4AntiLambdabInelasticProcess.cc b/examples/extended/parameterisations/Par03/src/Par03ActionInitialisation.cc similarity index 64% rename from source/processes/hadronic/processes/src/G4AntiLambdabInelasticProcess.cc rename to examples/extended/parameterisations/Par03/src/Par03ActionInitialisation.cc index fc3f161c2d..bc97941bf7 100644 --- a/source/processes/hadronic/processes/src/G4AntiLambdabInelasticProcess.cc +++ b/examples/extended/parameterisations/Par03/src/Par03ActionInitialisation.cc @@ -23,18 +23,33 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -#include "G4AntiLambdabInelasticProcess.hh" -#include "G4AntiLambdab.hh" -#include +#include "Par03ActionInitialisation.hh" +#include "Par03PrimaryGeneratorAction.hh" +#include "Par03EventAction.hh" +#include "Par03RunAction.hh" +Par03ActionInitialisation::Par03ActionInitialisation( + Par03DetectorConstruction* aDetector) + : G4VUserActionInitialization() + , fDetector(aDetector) +{} -G4AntiLambdabInelasticProcess::G4AntiLambdabInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4AntiLambdab::Definition() ) {} +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +Par03ActionInitialisation::~Par03ActionInitialisation() {} -void G4AntiLambdabInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4AntiLambdabInelasticProcess handles the inelastic scattering of\n" - << "anti_lambda_b from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03ActionInitialisation::BuildForMaster() const +{ + SetUserAction(new Par03RunAction(fDetector)); } +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03ActionInitialisation::Build() const +{ + SetUserAction(new Par03PrimaryGeneratorAction()); + SetUserAction(new Par03EventAction(fDetector)); + SetUserAction(new Par03RunAction(fDetector)); +} diff --git a/examples/extended/parameterisations/Par03/src/Par03DetectorConstruction.cc b/examples/extended/parameterisations/Par03/src/Par03DetectorConstruction.cc new file mode 100644 index 0000000000..ad5a1c592d --- /dev/null +++ b/examples/extended/parameterisations/Par03/src/Par03DetectorConstruction.cc @@ -0,0 +1,284 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#include "Par03DetectorConstruction.hh" +#include "Par03DetectorMessenger.hh" +#include "Par03SensitiveDetector.hh" +#include "Par03EMShowerModel.hh" + +#include "G4NistManager.hh" +#include "G4Material.hh" +#include "G4Box.hh" +#include "G4Tubs.hh" +#include "G4LogicalVolume.hh" +#include "G4PVPlacement.hh" +#include "G4PVReplica.hh" +#include "G4VisAttributes.hh" +#include "G4RunManager.hh" + +#include "G4SDManager.hh" + +#include "G4UnitsTable.hh" + +#include "G4Region.hh" +#include "G4RegionStore.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03DetectorConstruction::Par03DetectorConstruction() + : G4VUserDetectorConstruction() +{ + fDetectorMessenger = new Par03DetectorMessenger(this); + + G4NistManager* nistManager = G4NistManager::Instance(); + fDetectorMaterial = nistManager->FindOrBuildMaterial("G4_Fe"); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03DetectorConstruction::~Par03DetectorConstruction() {} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4VPhysicalVolume* Par03DetectorConstruction::Construct() +{ + //--------- Material definition --------- + G4NistManager* nistManager = G4NistManager::Instance(); + G4Material* air = nistManager->FindOrBuildMaterial("G4_AIR"); + + //--------- Derived dimensions --------- + G4double full2Pi = 2. * CLHEP::pi * rad; + G4double layerThickness = fDetectorLength / fNbOfLayers; + G4double cellPhi = full2Pi / fNbOfPhiCells; + G4double cellDR = fDetectorRadius / fNbOfRhoCells; + + //--------- World --------- + auto fSolidWorld = new G4Box("World", // name + fWorldSize / 2., // half-width in X + fWorldSize / 2., // half-width in Y + fWorldSize / 2.); // half-width in Z + auto fLogicWorld = new G4LogicalVolume(fSolidWorld, // solid + air, // material + "World"); // name + auto fPhysicWorld = new G4PVPlacement(0, // no rotation + G4ThreeVector(), // at (0,0,0) + fLogicWorld, // logical volume + "World", // name + 0, // mother volume + false, // not used + 999, // copy number + true); // copy number + + //--------- Detector envelope --------- + auto fSolidDetector = new G4Tubs("Detector", // name + 0, // inner radius + fDetectorRadius, // outer radius + fDetectorLength / 2., // half-width in Z + 0, // start angle + full2Pi); // delta angle + auto fLogicDetector = new G4LogicalVolume(fSolidDetector, // solid + fDetectorMaterial, // material + "Detector"); // name + new G4PVPlacement( + 0, // no rotation + G4ThreeVector(0, 0, + fDetectorLength / 2), // detector face starts at (0,0,0) + fLogicDetector, // logical volume + "Detector", // name + fLogicWorld, // mother volume + false, // not used + 99, // copy number + true); // check overlaps + + // Region for fast simulation + auto detectorRegion = new G4Region("DetectorRegion"); + detectorRegion->AddRootLogicalVolume(fLogicDetector); + + //--------- Readout geometry --------- + // Layers (along z) + auto fSolidLayer = new G4Tubs("Layer", // name + 0, // inner radius + fDetectorRadius, // outer radius + layerThickness / 2., // half-width in Z + 0, // start angle + full2Pi); // delta angle + auto fLogicLayer = new G4LogicalVolume(fSolidLayer, // solid + air, // material + "Layer"); // name + if(fNbOfLayers > 1) + new G4PVReplica("Layer", // name + fLogicLayer, // logical volume + fLogicDetector, // mother volume + kZAxis, // axis of replication + fNbOfLayers, // number of replicas + layerThickness); // width of single replica + else + new G4PVPlacement(0, // no rotation + G4ThreeVector(), // place at centre of mother volume + fLogicLayer, // logical volume + "Layer", // name + fLogicDetector, // mother volume + false, // not used + 0, // copy number + true); // check overlaps + + // Layer segment (division in phi) + auto fSolidRow = new G4Tubs("Row", // name + 0, // inner radius + fDetectorRadius, // outer radius + layerThickness / 2., // half-width in Z + 0, // start angle + cellPhi); // delta angle + + auto fLogicRow = new G4LogicalVolume(fSolidRow, // solid + air, // material + "Segment"); // name + if(fNbOfPhiCells > 1) + new G4PVReplica("Segment", // name + fLogicRow, // logical volume + fLogicLayer, // mother volume + kPhi, // axis of replication + fNbOfPhiCells, // number of replicas + cellPhi); // width of single replica + else + new G4PVPlacement(0, // no rotation + G4ThreeVector(), // place at centre of mother volume + fLogicRow, // logical volume + "Row", // name + fLogicLayer, // mother volume + false, // not used + 0, // copy number + true); // check overlaps + + // Final cells (segment slices in radius) + // No volume can be placed inside a radial replication + auto fSolidCell = new G4Tubs("Cell", // name + 0, // inner radius + cellDR, // outer radius + layerThickness / 2., // half-width in Z + 0, // start angle + cellPhi); // delta angle + + fLogicCell = new G4LogicalVolume(fSolidCell, // solid + fDetectorMaterial, // material + "Cell"); // name + if(fNbOfRhoCells > 1) + new G4PVReplica("Cell", // name + fLogicCell, // logical volume + fLogicRow, // mother volume + kRho, // axis of replication + fNbOfRhoCells, // number of replicas + cellDR); // width of single replica + else + new G4PVPlacement(0, // no rotation + G4ThreeVector(), // place at centre of mother volume + fLogicCell, // logical volume + "Cell", // name + fLogicRow, // mother volume + false, // not used + 0, // copy number + true); // check overlaps + + //--------- Visualisation settings --------- + fLogicWorld->SetVisAttributes(G4VisAttributes::GetInvisible()); + fLogicLayer->SetVisAttributes(G4VisAttributes::GetInvisible()); + fLogicRow->SetVisAttributes(G4VisAttributes::GetInvisible()); + G4VisAttributes attribs; + attribs.SetColour(G4Colour(0, 0, 1, 0.3)); + attribs.SetForceSolid(true); + fLogicCell->SetVisAttributes(attribs); + + Print(); + return fPhysicWorld; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03DetectorConstruction::ConstructSDandField() +{ + Par03SensitiveDetector* caloSD = new Par03SensitiveDetector( + "sensitiveDetector", fNbOfLayers, fNbOfPhiCells, fNbOfRhoCells); + G4SDManager::GetSDMpointer()->AddNewDetector(caloSD); + SetSensitiveDetector(fLogicCell, caloSD); + + auto detectorRegion = + G4RegionStore::GetInstance()->GetRegion("DetectorRegion"); + new Par03EMShowerModel("model", detectorRegion); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03DetectorConstruction::Print() const +{ + G4cout << "\n------------------------------------------------------" + << "\n--- Detector material:\t" << fDetectorMaterial->GetName() + << "\n--- Detector length:\t" << G4BestUnit(fDetectorLength, "Length") + << "\n--- Detector radius:\t" << G4BestUnit(fDetectorRadius, "Length") + << "\n--- Number of layers:\t" << fNbOfLayers + << "\n--- Number of R-cells:\t" << fNbOfRhoCells + << "\n--- Number of phi-cells:\t" << fNbOfPhiCells << G4endl; + G4cout << "-----------------------------------------------------" << G4endl; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03DetectorConstruction::SetMaterial(const G4String& aName) +{ + // search material by its name + G4Material* material = G4NistManager::Instance()->FindOrBuildMaterial(aName); + if(material) + fDetectorMaterial = material; + else + G4Exception("Par03DetectorConstruction::SetMaterial()", "InvalidSetup", + FatalException, ("Unknown material name: " + aName).c_str()); + G4RunManager::GetRunManager()->PhysicsHasBeenModified(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03DetectorConstruction::SetRadius(G4double aRadius) +{ + // check if fits within world volume + if(aRadius >= fWorldSize / 2.) + G4Exception("Par03DetectorConstruction::SetRadius()", "InvalidSetup", + FatalException, + ("Detector radius cannot be larger than the world size (" + + G4String(G4BestUnit(fWorldSize / 2., "Length")) + ")") + .c_str()); + fDetectorRadius = aRadius; +} +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03DetectorConstruction::SetLength(G4double aLength) +{ + // check if fits within world volume + if(aLength >= fWorldSize / 2.) + G4Exception("Par03DetectorConstruction::SetLength()", "InvalidSetup", + FatalException, + ("Detector length cannot be larger than the world size (" + + G4String(G4BestUnit(fWorldSize / 2., "Length")) + ")") + .c_str()); + fDetectorLength = aLength; +} \ No newline at end of file diff --git a/examples/extended/parameterisations/Par03/src/Par03DetectorMessenger.cc b/examples/extended/parameterisations/Par03/src/Par03DetectorMessenger.cc new file mode 100644 index 0000000000..a587042e37 --- /dev/null +++ b/examples/extended/parameterisations/Par03/src/Par03DetectorMessenger.cc @@ -0,0 +1,184 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#include "Par03DetectorMessenger.hh" +#include "Par03DetectorConstruction.hh" + +#include "G4UIdirectory.hh" +#include "G4UIcmdWithoutParameter.hh" +#include "G4UIcmdWithAnInteger.hh" +#include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIcmdWithAString.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03DetectorMessenger::Par03DetectorMessenger( + Par03DetectorConstruction* aDetector) + : G4UImessenger() + , fDetector(aDetector) +{ + fExampleDir = new G4UIdirectory("/Par03/"); + fExampleDir->SetGuidance("UI commands specific to this example"); + + fDetectorDir = new G4UIdirectory("/Par03/detector/"); + fDetectorDir->SetGuidance("Detector construction UI commands"); + + fPrintCmd = new G4UIcmdWithoutParameter("/Par03/detector/print", this); + fPrintCmd->SetGuidance("Print current settings."); + + fDetectorRadiusCmd = + new G4UIcmdWithADoubleAndUnit("/Par03/detector/setDetectorRadius", this); + fDetectorRadiusCmd->SetGuidance( + "Set tranverse size of the detector (cylinder radius)"); + fDetectorRadiusCmd->SetParameterName("Size", false); + fDetectorRadiusCmd->SetRange("Size>0."); + fDetectorRadiusCmd->SetUnitCategory("Length"); + fDetectorRadiusCmd->AvailableForStates(G4State_PreInit); + fDetectorRadiusCmd->SetToBeBroadcasted(false); + + fDetectorLengthCmd = + new G4UIcmdWithADoubleAndUnit("/Par03/detector/setDetectorLength", this); + fDetectorLengthCmd->SetGuidance( + "Set length of the detector (cylinder length)"); + fDetectorLengthCmd->SetParameterName("Size", false); + fDetectorLengthCmd->SetRange("Size>0."); + fDetectorLengthCmd->SetUnitCategory("Length"); + fDetectorLengthCmd->AvailableForStates(G4State_PreInit); + fDetectorLengthCmd->SetToBeBroadcasted(false); + + fDetectorMaterialCmd = + new G4UIcmdWithAString("/Par03/detector/setDetectorMaterial", this); + fDetectorMaterialCmd->SetGuidance("Material of the detector."); + fDetectorMaterialCmd->SetParameterName("Name", false); + fDetectorMaterialCmd->AvailableForStates(G4State_PreInit); + fDetectorMaterialCmd->SetToBeBroadcasted(false); + + fNbLayersCmd = + new G4UIcmdWithAnInteger("/Par03/detector/setNbOfLayers", this); + fNbLayersCmd->SetGuidance("Set number of layers."); + fNbLayersCmd->SetParameterName("NbLayers", false); + fNbLayersCmd->SetRange("NbLayers>0"); + fNbLayersCmd->AvailableForStates(G4State_PreInit); + fNbLayersCmd->SetToBeBroadcasted(false); + + fNbRhoCellsCmd = + new G4UIcmdWithAnInteger("/Par03/detector/setNbOfRhoCells", this); + fNbRhoCellsCmd->SetGuidance("Set number of cells along radius."); + fNbRhoCellsCmd->SetParameterName("NbRhoCells", false); + fNbRhoCellsCmd->SetRange("NbRhoCells>0"); + fNbRhoCellsCmd->AvailableForStates(G4State_PreInit); + fNbRhoCellsCmd->SetToBeBroadcasted(false); + + fNbPhiCellsCmd = + new G4UIcmdWithAnInteger("/Par03/detector/setNbOfPhiCells", this); + fNbPhiCellsCmd->SetGuidance("Set number of cells in azimuthal angle."); + fNbPhiCellsCmd->SetParameterName("NbPhiCells", false); + fNbPhiCellsCmd->SetRange("NbPhiCells>0"); + fNbPhiCellsCmd->AvailableForStates(G4State_PreInit); + fNbPhiCellsCmd->SetToBeBroadcasted(false); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03DetectorMessenger::~Par03DetectorMessenger() +{ + delete fPrintCmd; + delete fDetectorRadiusCmd; + delete fDetectorLengthCmd; + delete fDetectorMaterialCmd; + delete fNbLayersCmd; + delete fNbRhoCellsCmd; + delete fNbPhiCellsCmd; + delete fDetectorDir; + delete fExampleDir; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03DetectorMessenger::SetNewValue(G4UIcommand* aCommand, + G4String aNewValue) +{ + if(aCommand == fPrintCmd) + { + fDetector->Print(); + } + else if(aCommand == fDetectorRadiusCmd) + { + fDetector->SetRadius(fDetectorRadiusCmd->GetNewDoubleValue(aNewValue)); + } + else if(aCommand == fDetectorLengthCmd) + { + fDetector->SetLength(fDetectorRadiusCmd->GetNewDoubleValue(aNewValue)); + } + else if(aCommand == fDetectorMaterialCmd) + { + fDetector->SetMaterial(aNewValue); + } + else if(aCommand == fNbLayersCmd) + { + fDetector->SetNbOfLayers(fNbLayersCmd->GetNewIntValue(aNewValue)); + } + else if(aCommand == fNbRhoCellsCmd) + { + fDetector->SetNbOfRhoCells(fNbRhoCellsCmd->GetNewIntValue(aNewValue)); + } + else if(aCommand == fNbPhiCellsCmd) + { + fDetector->SetNbOfPhiCells(fNbPhiCellsCmd->GetNewIntValue(aNewValue)); + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4String Par03DetectorMessenger::GetCurrentValue(G4UIcommand* aCommand) +{ + G4String cv; + + if(aCommand == fDetectorRadiusCmd) + { + cv = fDetectorRadiusCmd->ConvertToString(fDetector->GetRadius(), "mm"); + } + else if(aCommand == fDetectorLengthCmd) + { + cv = fDetectorLengthCmd->ConvertToString(fDetector->GetLength(), "mm"); + } + else if(aCommand == fDetectorMaterialCmd) + { + cv = fDetector->GetMaterial(); + } + else if(aCommand == fNbLayersCmd) + { + cv = fNbLayersCmd->ConvertToString(fDetector->GetNbOfLayers()); + } + else if(aCommand == fNbPhiCellsCmd) + { + cv = fNbPhiCellsCmd->ConvertToString(fDetector->GetNbOfPhiCells()); + } + else if(aCommand == fNbRhoCellsCmd) + { + cv = fNbRhoCellsCmd->ConvertToString(fDetector->GetNbOfRhoCells()); + } + return cv; +} \ No newline at end of file diff --git a/examples/extended/parameterisations/Par03/src/Par03EMShowerMessenger.cc b/examples/extended/parameterisations/Par03/src/Par03EMShowerMessenger.cc new file mode 100644 index 0000000000..59a8478cd9 --- /dev/null +++ b/examples/extended/parameterisations/Par03/src/Par03EMShowerMessenger.cc @@ -0,0 +1,147 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#include "Par03EMShowerModel.hh" +#include "Par03EMShowerMessenger.hh" + +#include "G4UIdirectory.hh" +#include "G4UIcmdWithoutParameter.hh" +#include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIcmdWithADouble.hh" +#include "G4UIcmdWithAnInteger.hh" + +Par03EMShowerMessenger::Par03EMShowerMessenger(Par03EMShowerModel* aModel) + : fModel(aModel) +{ + fDirectory = new G4UIdirectory("/Par03/fastSim/"); + fDirectory->SetGuidance( + "Set mesh parameters for the example fast sim model."); + + fPrintCmd = new G4UIcmdWithoutParameter("/Par03/fastSim/print", this); + fPrintCmd->SetGuidance("Print current settings."); + + fSigmaCmd = new G4UIcmdWithADoubleAndUnit( + "/Par03/fastSim/transverseProfile/sigma", this); + fSigmaCmd->SetGuidance("Set sigma parameter of 2D Gaussian distribution."); + fSigmaCmd->SetParameterName("Sigma", false); + fSigmaCmd->SetUnitCategory("Length"); + + fAlphaCmd = + new G4UIcmdWithADouble("/Par03/fastSim/longitudinalProfile/alpha", this); + fAlphaCmd->SetGuidance("Set alpha parameter of Gamma distribution."); + fAlphaCmd->SetParameterName("Alpha", false); + + fBetaCmd = + new G4UIcmdWithADouble("/Par03/fastSim/longitudinalProfile/beta", this); + fBetaCmd->SetGuidance("Set beta parameter of Gamma distribution."); + fBetaCmd->SetParameterName("Beta", false); + + fNbOfHitsCmd = new G4UIcmdWithAnInteger("/Par03/fastSim/numberOfHits", this); + fNbOfHitsCmd->SetGuidance( + "Set number of (same energy) energy deposits created in fast simulation. " + "Those deposits will be scored in the detector according to the readout of " + "the sensitive detector."); + fNbOfHitsCmd->SetParameterName("Number", false); + + fLongMaxDepthCmd = + new G4UIcmdWithADouble("/Par03/fastSim/longitudinalProfile/maxDepth", this); + fLongMaxDepthCmd->SetGuidance( + "Set maximum shower depth used in parametrisation."); + fLongMaxDepthCmd->SetGuidance("Expressed in units of radiation length."); + fLongMaxDepthCmd->SetParameterName("Depth", false); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03EMShowerMessenger::~Par03EMShowerMessenger() +{ + delete fPrintCmd; + delete fSigmaCmd; + delete fAlphaCmd; + delete fBetaCmd; + delete fNbOfHitsCmd; + delete fLongMaxDepthCmd; + delete fDirectory; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03EMShowerMessenger::SetNewValue(G4UIcommand* aCommand, + G4String aNewValues) +{ + if(aCommand == fPrintCmd) + { + fModel->Print(); + } + else if(aCommand == fSigmaCmd) + { + fModel->SetSigma(fSigmaCmd->GetNewDoubleValue(aNewValues)); + } + else if(aCommand == fAlphaCmd) + { + fModel->SetAlpha(fAlphaCmd->GetNewDoubleValue(aNewValues)); + } + else if(aCommand == fBetaCmd) + { + fModel->SetBeta(fBetaCmd->GetNewDoubleValue(aNewValues)); + } + else if(aCommand == fNbOfHitsCmd) + { + fModel->SetNbOfHits(fNbOfHitsCmd->GetNewIntValue(aNewValues)); + } + else if(aCommand == fLongMaxDepthCmd) + { + fModel->SetLongMaxDepth(fLongMaxDepthCmd->GetNewDoubleValue(aNewValues)); + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4String Par03EMShowerMessenger::GetCurrentValue(G4UIcommand* aCommand) +{ + G4String cv; + + if(aCommand == fSigmaCmd) + { + cv = fSigmaCmd->ConvertToString(fModel->GetSigma()); + } + else if(aCommand == fAlphaCmd) + { + cv = fAlphaCmd->ConvertToString(fModel->GetAlpha()); + } + else if(aCommand == fBetaCmd) + { + cv = fBetaCmd->ConvertToString(fModel->GetBeta()); + } + else if(aCommand == fNbOfHitsCmd) + { + cv = fNbOfHitsCmd->ConvertToString(fModel->GetNbOfHits()); + } + else if(aCommand == fLongMaxDepthCmd) + { + cv = fLongMaxDepthCmd->ConvertToString(fModel->GetLongMaxDepth()); + } + return cv; +} diff --git a/examples/extended/parameterisations/Par03/src/Par03EMShowerModel.cc b/examples/extended/parameterisations/Par03/src/Par03EMShowerModel.cc new file mode 100644 index 0000000000..702d6d2ef0 --- /dev/null +++ b/examples/extended/parameterisations/Par03/src/Par03EMShowerModel.cc @@ -0,0 +1,212 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#include "Par03EMShowerModel.hh" +#include "Par03EMShowerMessenger.hh" + +#include "G4Electron.hh" +#include "G4Positron.hh" +#include "G4Gamma.hh" +#include "G4SystemOfUnits.hh" +#include "G4UnitsTable.hh" +#include "G4FastHit.hh" +#include "Randomize.hh" +#include "G4FastSimHitMaker.hh" + +Par03EMShowerModel::Par03EMShowerModel(G4String aModelName, G4Region* aEnvelope) + : G4VFastSimulationModel(aModelName, aEnvelope) + , fMessenger(new Par03EMShowerMessenger(this)) + , fHitMaker(new G4FastSimHitMaker) +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03EMShowerModel::Par03EMShowerModel(G4String aModelName) + : G4VFastSimulationModel(aModelName) + , fMessenger(new Par03EMShowerMessenger(this)) + , fHitMaker(new G4FastSimHitMaker) +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03EMShowerModel::~Par03EMShowerModel() {} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4bool Par03EMShowerModel::IsApplicable( + const G4ParticleDefinition& aParticleType) +{ + return &aParticleType == G4Electron::ElectronDefinition() || + &aParticleType == G4Positron::PositronDefinition() || + &aParticleType == G4Gamma::GammaDefinition(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4bool Par03EMShowerModel::ModelTrigger(const G4FastTrack& aFastTrack) +{ + // Check energy + if(aFastTrack.GetPrimaryTrack()->GetKineticEnergy() < 1 * GeV) + { + return false; + } + // Check length of detector + // Calculate depth of the detector along shower axis to verify if shower + // will fit inside. Required max shower depth is defined by fLongMaxDepth, and + // can be changed with UI command `/Par03/fastSim/longitudinalProfile/maxDepth + G4double X0 = aFastTrack.GetPrimaryTrack()->GetMaterial()->GetRadlen(); + auto particleDirection = aFastTrack.GetPrimaryTrackLocalDirection(); + auto particlePosition = aFastTrack.GetPrimaryTrackLocalPosition(); + G4double detectorDepthInMM = aFastTrack.GetEnvelopeSolid()->DistanceToOut( + particlePosition, particleDirection); + G4double detectorDepthInX0 = detectorDepthInMM / X0; + // check if detector depth is sufficient to create showers + if(detectorDepthInX0 < fLongMaxDepth) + { + return false; + } + return true; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03EMShowerModel::DoIt(const G4FastTrack& aFastTrack, + G4FastStep& aFastStep) +{ + // Remove particle from further processing by G4 + aFastStep.KillPrimaryTrack(); + aFastStep.SetPrimaryTrackPathLength(0.0); + G4double energy = aFastTrack.GetPrimaryTrack()->GetKineticEnergy(); + // No need to create any deposit, it will be handled by this model (and + // G4FastSimHitMaker that will call the sensitive detector) + aFastStep.SetTotalEnergyDeposited(0); + auto particlePosition = aFastTrack.GetPrimaryTrackLocalPosition(); + auto particleDirection = aFastTrack.GetPrimaryTrackLocalDirection(); + + // Calculate how to create energy deposits + // Following PDG 33.5 chapter + // material calculation assumes homogeneous detector (true for Par03 example) + auto material = aFastTrack.GetPrimaryTrack()->GetMaterial(); + G4double materialX0 = material->GetRadlen(); + G4double materialZ = material->GetZ(); + // EC estimation follows PDG fit to solids in Fig. 33.14 (rms 2.2%) + G4double materialEc = 610 * MeV / (materialZ + 1.24); + // RM estimation follows PDG Eq. (33.37) (rms 2.2%) + G4double materialRM = 21.2052 * MeV * materialX0 / materialEc; + G4double particleY = energy / materialEc; + // Estimate shower maximum and alpha parameter of Gamma distribution + // that describes the longitudinal profile (PDG Eq. (33.35)) + // unless alpha is specified by UI command + if(fAlpha < 0) + { + // from PDG Eq. (33.36) + G4double particleTmax = std::log(particleY); + if(aFastTrack.GetPrimaryTrack()->GetParticleDefinition() == + G4Gamma::GammaDefinition()) + { + particleTmax += 0.5; + } + else + { + particleTmax -= 0.5; + } + fAlpha = particleTmax * fBeta + 1; + } + // Unless sigma of Gaussian distribution describing the transverse profile + // is specified by UI command, use value calculated from Moliere Radius + if(fSigma < 0) + { + // 90% of shower is contained within 1 * R_M + // 1.645 * std dev of Gaussian contains 90% + fSigma = materialRM / 1.645; + } + + // Calculate rotation matrix along the particle momentum direction + // It will rotate the shower axes to match the incoming particle direction + G4RotationMatrix rotMatrix = G4RotationMatrix(); + double particleTheta = particleDirection.theta(); + double particlePhi = particleDirection.phi(); + double epsilon = 1e-3; + rotMatrix.rotateY(particleTheta); + // do not use (random) phi if x==y==0 + if(!(std::fabs(particleDirection.x()) < epsilon && + std::fabs(particleDirection.y()) < epsilon)) + rotMatrix.rotateZ(particlePhi); + + // Create hits + // First use rejecton sampling to sample from Gamma distribution + // then get random numbers from uniform distribution for azimuthal angle, and + // from Gaussian for radius + G4ThreeVector position; + G4double gammaMax = gamma((fAlpha - 1) / fBeta, fAlpha, fBeta); + G4int generatedHits = 0; + while(generatedHits < fNbOfHits) + { + G4double random1 = G4UniformRand() * fLongMaxDepth; + G4double random2 = G4UniformRand() * gammaMax; + if(gamma(random1, fAlpha, fBeta) >= random2) + { + // Generate corresponding rho (phi) from Gaussian (flat) distribution + G4double phiPosition = G4UniformRand() * 2 * CLHEP::pi; + G4double rhoPosition = G4RandGauss::shoot(0, fSigma); + position = particlePosition + + rotMatrix * G4ThreeVector(rhoPosition * std::sin(phiPosition), + rhoPosition * std::cos(phiPosition), + random1 * materialX0); + // Create energy deposit in the detector + // This will call appropriate sensitive detector class + fHitMaker->make(G4FastHit(position, energy / fNbOfHits), aFastTrack); + generatedHits++; + } + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03EMShowerModel::Print() const +{ + G4cout << "Par03EMShowerModel: " << G4endl; + G4cout << "Gaussian distribution (transverse plane): \tmu = 0, sigma = " + << G4BestUnit(fSigma, "Length") << G4endl; + if(fSigma < 0) + G4cout << "Negative sigma value means that it will be recalculated " + "from the value of the Moliere radius of the detector material, " + "taking into account that 90% of the area below the Gaussian " + "distribution (from mu - 1.645 sigma to mu + 1.645 sigma) " + "corresponds to area within 1 Moliere radius." + << G4endl; + G4cout << "Gamma distribution (along shower axis): \talpha = " << fAlpha + << ", beta = " << fBeta << ", max depth = " << fLongMaxDepth << " X0" + << G4endl; + if(fAlpha < 0) + G4cout << "Negative alpha value means that it will be recalculated " + "from the critical energy of the detector material, particle " + "type, and beta parameter.\n alpha = beta * T_max, where T_max = " + "ln(E/E_C) + C\n where E is particle energy, E_C is critical " + "energy in the material, and constant C = -0.5 for electrons and " + "0.5 for photons (Eq. (33.36) from PDG)." + << G4endl; + G4cout << "Number of created energy deposits: " << fNbOfHits << G4endl; +} \ No newline at end of file diff --git a/examples/extended/parameterisations/Par03/src/Par03EventAction.cc b/examples/extended/parameterisations/Par03/src/Par03EventAction.cc new file mode 100644 index 0000000000..63f6441ae0 --- /dev/null +++ b/examples/extended/parameterisations/Par03/src/Par03EventAction.cc @@ -0,0 +1,159 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#include "Par03EventAction.hh" +#include "Par03Hit.hh" +#include "Par03DetectorConstruction.hh" +#include "g4analysis.hh" + +#include "G4SDManager.hh" +#include "G4HCofThisEvent.hh" +#include "G4Event.hh" +#include "G4EventManager.hh" + +Par03EventAction::Par03EventAction(Par03DetectorConstruction* aDetector) + : G4UserEventAction() + , fHitCollectionID(-1) + , fTimer() + , fDetector(aDetector) +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03EventAction::~Par03EventAction() {} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03EventAction::BeginOfEventAction(const G4Event*) { fTimer.Start(); } + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03EventAction::EndOfEventAction(const G4Event* aEvent) +{ + fTimer.Stop(); + // Get hits collection ID (only once) + if(fHitCollectionID == -1) + { + fHitCollectionID = G4SDManager::GetSDMpointer()->GetCollectionID("hits"); + } + // Get hits collection + auto hitsCollection = static_cast( + aEvent->GetHCofThisEvent()->GetHC(fHitCollectionID)); + + if(hitsCollection == nullptr) + { + G4ExceptionDescription msg; + msg << "Cannot access hitsCollection ID " << fHitCollectionID; + G4Exception("Par03EventAction::GetHitsCollection()", "MyCode0001", + FatalException, msg); + } + // Get analysis manager + auto analysisManager = G4AnalysisManager::Instance(); + // Retrieve only once detector dimensions + if(fCellSizeZ == 0) + { + fCellSizeZ = fDetector->GetLength() / fDetector->GetNbOfLayers(); + fCellSizeRho = fDetector->GetRadius() / fDetector->GetNbOfRhoCells(); + } + + // Retrieve information from primary vertex and primary particle + // To calculate shower axis and entry point to the detector + auto primaryVertex = G4EventManager::GetEventManager() + ->GetConstCurrentEvent() + ->GetPrimaryVertex(); + auto primaryParticle = primaryVertex->GetPrimary(0); + G4double primaryEnergy = primaryParticle->GetTotalEnergy(); + // Estimate from vertex and particle direction the entry point to the detector + // Calculate entrance point to the detector located at z = 0 + auto primaryDirection = primaryParticle->GetMomentumDirection(); + auto primaryEntrance = primaryVertex->GetPosition() - + primaryVertex->GetPosition().z() * primaryDirection; + G4double cosDirection = std::cos(primaryDirection.theta()); + G4double sinDirection = std::sin(primaryDirection.theta()); + + // Fill histograms + Par03Hit* hit = nullptr; + G4double hitEn = 0; + G4double totalEnergy = 0; + G4int hitZ = -1; + G4int hitRho = -1; + G4int hitType = -1; + G4double tDistance = 0., rDistance = 0.; + G4double tFirstMoment = 0., tSecondMoment = 0.; + G4double rFirstMoment = 0., rSecondMoment = 0.; + for(size_t iHit = 0; iHit < hitsCollection->entries(); iHit++) + { + hit = static_cast(hitsCollection->GetHit(iHit)); + hitZ = hit->GetZid(); + hitRho = hit->GetRhoId(); + hitEn = hit->GetEdep(); + hitType = hit->GetType(); + if(hitEn > 0) + { + totalEnergy += hitEn; + tDistance = + hitZ * fCellSizeZ * cosDirection + + (hitRho * fCellSizeRho - primaryEntrance.perp()) * sinDirection; + rDistance = + hitZ * fCellSizeZ * (-sinDirection) + + (hitRho * fCellSizeRho - primaryEntrance.perp()) * cosDirection; + tFirstMoment += hitEn * tDistance; + rFirstMoment += hitEn * rDistance; + analysisManager->FillH1(4, tDistance, hitEn); + analysisManager->FillH1(5, rDistance, hitEn); + analysisManager->FillH1(10, hitType); + } + } + tFirstMoment /= totalEnergy; + rFirstMoment /= totalEnergy; + analysisManager->FillH1(0, primaryEnergy / GeV); + analysisManager->FillH1(1, totalEnergy / GeV); + analysisManager->FillH1(2, totalEnergy / primaryEnergy); + analysisManager->FillH1(3, fTimer.GetRealElapsed()); + analysisManager->FillH1(6, tFirstMoment); + analysisManager->FillH1(7, rFirstMoment); + + // Second loop over hits to calculate second moments + for(size_t iHit = 0; iHit < hitsCollection->entries(); iHit++) + { + hit = static_cast(hitsCollection->GetHit(iHit)); + hitEn = hit->GetEdep(); + hitZ = hit->GetZid(); + hitRho = hit->GetRhoId(); + if(hitEn > 0) + { + tDistance = hitZ * fCellSizeZ * cosDirection + + (hitRho * fCellSizeRho - primaryEntrance.r()) * sinDirection; + rDistance = hitZ * fCellSizeZ * (-sinDirection) + + (hitRho * fCellSizeRho - primaryEntrance.r()) * cosDirection; + tSecondMoment += hitEn * std::pow(tDistance - tFirstMoment, 2); + rSecondMoment += hitEn * std::pow(rDistance - rFirstMoment, 2); + } + } + tSecondMoment /= totalEnergy; + rSecondMoment /= totalEnergy; + analysisManager->FillH1(8, tSecondMoment); + analysisManager->FillH1(9, rSecondMoment); +} \ No newline at end of file diff --git a/examples/extended/parameterisations/Par03/src/Par03Hit.cc b/examples/extended/parameterisations/Par03/src/Par03Hit.cc new file mode 100644 index 0000000000..ee58815ad2 --- /dev/null +++ b/examples/extended/parameterisations/Par03/src/Par03Hit.cc @@ -0,0 +1,169 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#include "Par03Hit.hh" + +#include "G4VisAttributes.hh" +#include "G4Tubs.hh" +#include "G4Colour.hh" +#include "G4AttDefStore.hh" +#include "G4AttDef.hh" +#include "G4AttValue.hh" +#include "G4UnitsTable.hh" +#include "G4SystemOfUnits.hh" +#include "G4VVisManager.hh" +#include "G4LogicalVolume.hh" + +G4ThreadLocal G4Allocator* Par03HitAllocator; + +Par03Hit::Par03Hit() + : G4VHit() +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03Hit::~Par03Hit() {} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03Hit::Par03Hit(const Par03Hit& aRight) + : G4VHit() +{ + fEdep = aRight.fEdep; + fZId = aRight.fZId; + fRhoId = aRight.fRhoId; + fPhiId = aRight.fPhiId; + fTime = aRight.fTime; + fPos = aRight.fPos; + fRot = aRight.fRot; + fType = aRight.fType; + fLogVol = aRight.fLogVol; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +const Par03Hit& Par03Hit::operator=(const Par03Hit& aRight) +{ + fEdep = aRight.fEdep; + fZId = aRight.fZId; + fRhoId = aRight.fRhoId; + fPhiId = aRight.fPhiId; + fTime = aRight.fTime; + fPos = aRight.fPos; + fRot = aRight.fRot; + fType = aRight.fType; + fLogVol = aRight.fLogVol; + return *this; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +int Par03Hit::operator==(const Par03Hit& aRight) const +{ + return (fRhoId == aRight.fRhoId && fPhiId == aRight.fPhiId && + fZId == aRight.fZId); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03Hit::Draw() +{ + G4VVisManager* pVVisManager = G4VVisManager::GetConcreteInstance(); + // Hits can be filtered out in visualisation + if(!pVVisManager->FilterHit(*this)) + return; + // Do not draw empty hits + if(fEdep < 0) + return; + if(pVVisManager) + { + G4Transform3D trans(fRot, fPos); + G4VisAttributes attribs; + // Create default dimensions + G4Tubs solid("draw", 0, 1 * cm, 1 * cm, 0, 0.05 * CLHEP::pi); + if(fLogVol) + { + const G4VisAttributes* pVA = fLogVol->GetVisAttributes(); + if(pVA) + attribs = *pVA; + // Cannot use directly fLogVol due to rho parametrisation (change of + // solid!) Recalculation of radius is needed + solid = *dynamic_cast(fLogVol->GetSolid()); + double dR = solid.GetOuterRadius() - solid.GetInnerRadius(); + solid.SetInnerRadius(solid.GetInnerRadius() + fRhoId * dR); + solid.SetOuterRadius(solid.GetOuterRadius() + fRhoId * dR); + } + // Set colours depending on type of hit (full/fast sim) + G4double colR = fType == 0 ? 0 : 1; + G4double colG = fType == 0 ? 1 : 0; + G4double colB = 0; + G4Colour colour(colR, colG, colB, 0.5); + attribs.SetColour(colour); + attribs.SetForceSolid(true); + pVVisManager->Draw(solid, attribs, trans); + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +const std::map* Par03Hit::GetAttDefs() const +{ + G4bool isNew; + std::map* store = + G4AttDefStore::GetInstance("Par03Hit", isNew); + if(isNew) + { + (*store)["HitType"] = + G4AttDef("HitType", "Hit Type", "Physics", "", "G4String"); + (*store)["Energy"] = G4AttDef("Energy", "Energy Deposited", "Physics", + "G4BestUnit", "G4double"); + (*store)["Time"] = + G4AttDef("Time", "Time", "Physics", "G4BestUnit", "G4double"); + (*store)["Pos"] = + G4AttDef("Pos", "Position", "Physics", "G4BestUnit", "G4ThreeVector"); + } + return store; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +std::vector* Par03Hit::CreateAttValues() const +{ + std::vector* values = new std::vector; + values->push_back(G4AttValue("HitType", "HadPar03Hit", "")); + values->push_back(G4AttValue("Energy", G4BestUnit(fEdep, "Energy"), "")); + values->push_back(G4AttValue("Time", G4BestUnit(fTime, "Time"), "")); + values->push_back(G4AttValue("Pos", G4BestUnit(fPos, "Length"), "")); + return values; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03Hit::Print() +{ + std::cout << "\tHit " << fEdep / MeV << " MeV at " << fPos / cm + << " cm (R,phi,z)= (" << fRhoId << ", " << fPhiId << ", " << fZId + << "), " << fTime << " ns" << std::endl; +} diff --git a/examples/extended/parameterisations/Par03/src/Par03PrimaryGeneratorAction.cc b/examples/extended/parameterisations/Par03/src/Par03PrimaryGeneratorAction.cc new file mode 100644 index 0000000000..ae4ca51d67 --- /dev/null +++ b/examples/extended/parameterisations/Par03/src/Par03PrimaryGeneratorAction.cc @@ -0,0 +1,58 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#include "Par03PrimaryGeneratorAction.hh" + +#include "G4ParticleGun.hh" +#include "G4ParticleTable.hh" +#include "G4SystemOfUnits.hh" + +Par03PrimaryGeneratorAction::Par03PrimaryGeneratorAction() + : G4VUserPrimaryGeneratorAction() + , fParticleGun(nullptr) +{ + G4int n_particle = 1; + fParticleGun = new G4ParticleGun(n_particle); + // Default particle properties + G4ParticleTable* particleTable = G4ParticleTable::GetParticleTable(); + G4String particleName; + G4ParticleDefinition* particle = + particleTable->FindParticle(particleName = "e-"); + fParticleGun->SetParticleDefinition(particle); + fParticleGun->SetParticleMomentumDirection(G4ThreeVector(0., 0., 1.)); + fParticleGun->SetParticleEnergy(10. * GeV); + fParticleGun->SetParticlePosition(G4ThreeVector(0., 0., -10. * cm)); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03PrimaryGeneratorAction::~Par03PrimaryGeneratorAction() { delete fParticleGun; } + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03PrimaryGeneratorAction::GeneratePrimaries(G4Event* aEvent) +{ + fParticleGun->GeneratePrimaryVertex(aEvent); +} diff --git a/examples/extended/parameterisations/Par03/src/Par03RunAction.cc b/examples/extended/parameterisations/Par03/src/Par03RunAction.cc new file mode 100644 index 0000000000..8ce44eecb9 --- /dev/null +++ b/examples/extended/parameterisations/Par03/src/Par03RunAction.cc @@ -0,0 +1,117 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#include "Par03RunAction.hh" +#include "Par03DetectorConstruction.hh" + +#include "g4analysis.hh" + +Par03RunAction::Par03RunAction(Par03DetectorConstruction* aDetector) + : G4UserRunAction() + , fDetector(aDetector) +{ + // Create analysis manager + G4AnalysisManager* analysisManager = G4Analysis::ManagerInstance("root"); + // Default filename, can be overriden with /analysis/setFileName + analysisManager->SetFileName("Par03Output"); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03RunAction::~Par03RunAction() { delete G4AnalysisManager::Instance(); } + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03RunAction::BeginOfRunAction(const G4Run*) +{ + // Get detector dimensions + G4int cellNumZ = fDetector->GetNbOfLayers(); + G4int cellNumRho = fDetector->GetNbOfRhoCells(); + G4double cellSizeZ = fDetector->GetLength() / cellNumZ; + G4double cellSizeRho = fDetector->GetRadius() / cellNumRho; + // Default max value of energy stored in histogram (in GeV) + G4double maxEnergy = 100; + + // Get analysis manager + auto analysisManager = G4AnalysisManager::Instance(); + + // Creating control histograms + analysisManager->CreateH1("energyParticle", + "Primary energy;E_{MC} (GeV);Entries", 256, 0, + 1.1 * maxEnergy); + analysisManager->CreateH1("energyDeposited", + "Deposited energy;E_{MC} (GeV);Entries", 256, 0, + 1.1 * maxEnergy); + analysisManager->CreateH1( + "energyRatio", + "Ratio of energy deposited to primary;E_{dep} / E_{MC};Entries", 1024, 0, + 1); + analysisManager->CreateH1("time", "Simulation time; time (s);Entries", 2048, + 0, 30); + analysisManager->CreateH1( + "longProfile", "Longitudinal profile;t (mm);#LTE#GT (MeV)", cellNumZ, + -0.5 * cellSizeZ, (cellNumZ - 0.5) * cellSizeZ); + analysisManager->CreateH1( + "transProfile", "Transverse profile;r (mm);#LTE#GT (MeV)", cellNumRho, + -0.5 * cellSizeRho, (cellNumRho - 0.5) * cellSizeRho); + analysisManager->CreateH1( + "longFirstMoment", + "First moment of longitudinal distribution;#LT#lambda#GT (mm);Entries", + 1024, -0.5 * cellSizeZ, + cellNumZ * cellSizeZ / 2); // arbitrary scaling of max value on axis + analysisManager->CreateH1("transFirstMoment", + "First moment of transverse distribution;#LTr#GT " + "(mm);Entries", + 1024, -0.5 * cellSizeRho, + cellNumRho * cellSizeRho / + 10); // arbitrary scaling of max value on axis + analysisManager->CreateH1( + "longSecondMoment", + "Second moment of longitudinal distribution;#LT#lambda^{2}#GT " + "(mm^{2});Entries", + 1024, 0, + std::pow(cellNumZ * cellSizeZ, 2) / + 25); // arbitrary scaling of max value on axis + analysisManager->CreateH1( + "transSecondMoment", + "Second moment of transverse distribution;#LTr^{2}#GT (mm^{2});Entries", + 1024, 0, + std::pow(cellNumRho * cellSizeRho, 2) / + 25); // arbitrary scaling of max value on axis + analysisManager->CreateH1( + "hitType", "hit type;type (0=full, 1= fast);Entries", 2, -0.5, 1.5); + + // Open an output file + analysisManager->OpenFile(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03RunAction::EndOfRunAction(const G4Run*) +{ + auto analysisManager = G4AnalysisManager::Instance(); + analysisManager->Write(); + analysisManager->CloseFile(); +} \ No newline at end of file diff --git a/examples/extended/parameterisations/Par03/src/Par03SensitiveDetector.cc b/examples/extended/parameterisations/Par03/src/Par03SensitiveDetector.cc new file mode 100644 index 0000000000..7a26315eb2 --- /dev/null +++ b/examples/extended/parameterisations/Par03/src/Par03SensitiveDetector.cc @@ -0,0 +1,172 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +#include "Par03SensitiveDetector.hh" +#include "Par03Hit.hh" + +#include "G4HCofThisEvent.hh" +#include "G4TouchableHistory.hh" +#include "G4Track.hh" +#include "G4Step.hh" +#include "G4SDManager.hh" + +Par03SensitiveDetector::Par03SensitiveDetector(G4String aName) + : G4VSensitiveDetector(aName) +{ + collectionName.insert("hits"); +} +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03SensitiveDetector::Par03SensitiveDetector(G4String aName, G4int aNumLayers, + G4int aNumRho, G4int aNumPhi) + : G4VSensitiveDetector(aName) + , fCellNoZ(aNumLayers) + , fCellNoRho(aNumRho) + , fCellNoPhi(aNumPhi) +{ + collectionName.insert("hits"); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03SensitiveDetector::~Par03SensitiveDetector() {} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void Par03SensitiveDetector::Initialize(G4HCofThisEvent* aHCE) +{ + fHitsCollection = + new Par03HitsCollection(SensitiveDetectorName, collectionName[0]); + if(fHitCollectionID < 0) + { + fHitCollectionID = + G4SDManager::GetSDMpointer()->GetCollectionID(fHitsCollection); + } + aHCE->AddHitsCollection(fHitCollectionID, fHitsCollection); + + // fill calorimeter hits with zero energy deposition + for(G4int iphi = 0; iphi < fCellNoPhi; iphi++) + for(G4int irho = 0; irho < fCellNoRho; irho++) + for(G4int iz = 0; iz < fCellNoZ; iz++) + { + Par03Hit* hit = new Par03Hit(); + fHitsCollection->insert(hit); + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4bool Par03SensitiveDetector::ProcessHits(G4Step* aStep, G4TouchableHistory*) +{ + G4double edep = aStep->GetTotalEnergyDeposit(); + if(edep == 0.) + return true; + + G4TouchableHistory* aTouchable = + (G4TouchableHistory*) (aStep->GetPreStepPoint()->GetTouchable()); + + auto hit = RetrieveAndSetupHit(aTouchable); + + // Add energy deposit from G4Step + hit->AddEdep(edep); + + // Fill time information from G4Step + // If it's already filled, choose hit with earliest global time + if(hit->GetTime() == -1 || + hit->GetTime() > aStep->GetTrack()->GetGlobalTime()) + hit->SetTime(aStep->GetTrack()->GetGlobalTime()); + + // Set hit type to full simulation (only if hit is not already marked as fast + // sim) + if(hit->GetType() != 1) + hit->SetType(0); + + return true; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4bool Par03SensitiveDetector::ProcessHits(const G4FastHit* aHit, + const G4FastTrack* aTrack, + G4TouchableHistory* aTouchable) +{ + G4double edep = aHit->GetEnergy(); + if(edep == 0.) + return true; + + auto hit = RetrieveAndSetupHit(aTouchable); + + // Add energy deposit from G4FastHit + hit->AddEdep(edep); + + // Fill time information from G4FastTrack + // If it's already filled, choose hit with earliest global time + if(hit->GetTime() == -1 || + hit->GetTime() > aTrack->GetPrimaryTrack()->GetGlobalTime()) + { + hit->SetTime(aTrack->GetPrimaryTrack()->GetGlobalTime()); + } + + // Set hit type to fast simulation (even if hit was already marked as full + // sim, overwrite it) + hit->SetType(1); + + return true; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +Par03Hit* Par03SensitiveDetector::RetrieveAndSetupHit( + G4TouchableHistory* aTouchable) +{ + G4int rhoNo = aTouchable->GetCopyNumber(0); // cell + G4int phiNo = aTouchable->GetCopyNumber(1); // segment + G4int zNo = aTouchable->GetCopyNumber(2); // layer + + std::size_t hitID = fCellNoRho * fCellNoZ * phiNo + fCellNoZ * rhoNo + zNo; + + if(hitID >= fHitsCollection->entries()) + { + G4Exception( + "Par03SensitiveDetector::RetrieveAndSetupHit()", "InvalidSetup", + FatalException, + "Size of hit collection in Par03SensitiveDetector is smaller than the " + "number of cells created in Par03DetectorConstruction!"); + } + Par03Hit* hit = (*fHitsCollection)[hitID]; + + if(hit->GetRhoId() < 0) + { + hit->SetRhoId(rhoNo); + hit->SetPhiId(phiNo); + hit->SetZid(zNo); + hit->SetLogV(aTouchable->GetVolume(0)->GetLogicalVolume()); + G4AffineTransform transform = aTouchable->GetHistory()->GetTopTransform(); + hit->SetRot(transform.NetRotation()); + transform.Invert(); + hit->SetPos(transform.NetTranslation()); + } + return hit; +} \ No newline at end of file diff --git a/examples/extended/parameterisations/Par03/vis.mac b/examples/extended/parameterisations/Par03/vis.mac new file mode 100644 index 0000000000..87a50aedaa --- /dev/null +++ b/examples/extended/parameterisations/Par03/vis.mac @@ -0,0 +1,79 @@ +# Use default detector dimensions and initialize +/run/initialize + +# Use this open statement to create an OpenGL view: +/vis/open OGL 600x600-0+0 +# +# Use this open statement to create a .prim file suitable for +# viewing in DAWN: +#/vis/open DAWNFILE +# +# Use this open statement to create a .heprep file suitable for +# viewing in HepRApp: +#/vis/open HepRepFile +# +# Use this open statement to create a .wrl file suitable for +# viewing in a VRML viewer: +#/vis/open VRML2FILE +# +# Disable auto refresh and quieten vis messages whilst scene and +# trajectories are established: +/vis/viewer/set/autoRefresh false +/vis/verbose errors +# +# Draw geometry: +/vis/drawVolume worlds +# +# Specify view angle: +/vis/viewer/set/viewpointThetaPhi -100 0 deg +# +# Specify zoom value: +/vis/viewer/zoom 2 +# +# Specify style (surface or wireframe): +#/vis/viewer/set/style wireframe +# +# Draw coordinate axes: +#/vis/scene/add/axes 0 0 0 1 m +# +# Draw smooth trajectories at end of event, showing trajectory points +# as markers 2 pixels wide: +#/vis/scene/add/trajectories smooth +/vis/scene/add/trajectories +/vis/modeling/trajectories/create/drawByCharge +/vis/modeling/trajectories/drawByCharge-0/default/setDrawStepPts true +/vis/modeling/trajectories/drawByCharge-0/default/setStepPtsSize 2 +# (if too many tracks cause core dump => /tracking/storeTrajectory 0) +# +# Draw hits at end of event: +/vis/scene/add/hits +# +# To draw only gammas: +#/vis/filtering/trajectories/create/particleFilter +#/vis/filtering/trajectories/particleFilter-0/add gamma +# +# To invert the above, drawing all particles except gammas, +# keep the above two lines but also add: +#/vis/filtering/trajectories/particleFilter-0/invert true +# +# Many other options are available with /vis/modeling and /vis/filtering. +# For example, to select colour by particle ID: +#/vis/modeling/trajectories/create/drawByParticleID +#/vis/modeling/trajectories/drawByParticleID-0/set e- blue +# +# Create an attribute filter to draw only particles with certain (high) momentum +/vis/filtering/trajectories/create/attributeFilter +# Select attribute "IMag" +/vis/filtering/trajectories/attributeFilter-0/setAttribute IMag +# Select trajectories with 25 MeV <= IMag < 1000 GeV +/vis/filtering/trajectories/attributeFilter-0/addInterval 25 MeV 1000 GeV +# +# To superimpose all of the events from a given run: +/vis/scene/endOfEventAction accumulate +# +# Re-establish auto refreshing and verbosity: +/vis/viewer/set/autoRefresh true +/vis/verbose warnings +# +# For file-based drivers, use this to create an empty detector view: +#/vis/viewer/flush \ No newline at end of file diff --git a/examples/extended/parameterisations/README b/examples/extended/parameterisations/README index 996f478a85..5efb61aa64 100644 --- a/examples/extended/parameterisations/README +++ b/examples/extended/parameterisations/README @@ -19,6 +19,13 @@ in order to have a very fast simulation based on assumed detector resolutions. + Par03 + ------- + + This example demonstrates how to create multiple energy deposits + from the fast simulation model and store it alongside deposits created + in full/detailed simulation. + gflash ------- diff --git a/examples/extended/parameterisations/gflash/CMakeLists.txt b/examples/extended/parameterisations/gflash/CMakeLists.txt index e4ca33796b..126320fc32 100644 --- a/examples/extended/parameterisations/gflash/CMakeLists.txt +++ b/examples/extended/parameterisations/gflash/CMakeLists.txt @@ -2,7 +2,10 @@ #---Adding example B2 subdirectories explicitly # and a custom target to for building all example B2 options ---------- -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(gflash1) add_subdirectory(gflash2) diff --git a/examples/extended/parameterisations/gflash/History b/examples/extended/parameterisations/gflash/History index 16d69e6102..ff2443519d 100644 --- a/examples/extended/parameterisations/gflash/History +++ b/examples/extended/parameterisations/gflash/History @@ -16,10 +16,13 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-Nov-2020 B. Morgan (exgflash-V10-06-00) +- Migration to G4RunManagerFactory. + 28-Nov-2019 I. Hrivnacova (exgflash-V10-05-02) - Updated README files: changed text to correspond to a description of a set of examples; - fixed formatting in .README.txt + fixed formatting in .README.txt - Fixed Doxygen warnings 25-Nov-2019 I. Semeniouk (exgflash-V10-05-01) @@ -63,7 +66,7 @@ committal in the CVS repository ! 30-Jul-2013, Peter Gumplinger (exgflash-V09-06-02) - fix MAC/clang32 compilation warnings - + 16-Jul-2013, Marc Verderi (exgflash-V09-06-01) - Migration to MT @@ -82,9 +85,9 @@ committal in the CVS repository ! create/new Collection before adding it to HCE 26-January 2010, Gunter Folger (exgflash-V09-04-00) -- Finnish correcting namepsace problems on Windows, +- Finnish correcting namepsace problems on Windows, removed using namespace, use G4cout,.. and few std:: - + 03-December 2010, Gunter Folger (exgflash-V09-03-04) - Correct use of "using namespace std", needed for Windows VC diff --git a/examples/extended/parameterisations/gflash/gflash1/CMakeLists.txt b/examples/extended/parameterisations/gflash/gflash1/CMakeLists.txt index b7341d9524..45de294bc6 100644 --- a/examples/extended/parameterisations/gflash/gflash1/CMakeLists.txt +++ b/examples/extended/parameterisations/gflash/gflash1/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(gflash1) #---------------------------------------------------------------------------- diff --git a/examples/extended/parameterisations/gflash/gflash1/ExGflash1.cc b/examples/extended/parameterisations/gflash/gflash1/ExGflash1.cc index 45a128d018..6efdd3b809 100644 --- a/examples/extended/parameterisations/gflash/gflash1/ExGflash1.cc +++ b/examples/extended/parameterisations/gflash/gflash1/ExGflash1.cc @@ -29,19 +29,15 @@ // // Created by Joanna Weng 26.11.2004 -// G4 includes +// G4 includes #include "G4Types.hh" #include "G4ios.hh" #include "G4Timer.hh" #include "G4UImanager.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" -// my project +// my project #include "ExGflash1DetectorConstruction.hh" #include "ExGflashActionInitialization.hh" @@ -54,7 +50,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) -{ +{ // Instantiate G4UIExecutive if interactive mode G4UIExecutive* ui = nullptr; if ( argc == 1 ) { @@ -64,30 +60,18 @@ int main(int argc,char** argv) // timer to see GFlash performance G4Timer timer; timer.Start(); - + G4cout<<"+-------------------------------------------------------+"<SetNumberOfThreads(1); - G4cout<<"+-------------------------------------------------------+"<SetUserInitialization(new ExGflash1DetectorConstruction); // G4cout<<"# GFlash Example: Physics "<ApplyCommand("/run/verbose 0"); runManager->Initialize(); UImanager->ApplyCommand("/Step/Verbose 0"); - + if (ui) // Define UI terminal for interactive mode - { + { UImanager->ApplyCommand("/control/execute vis.mac"); ui->SessionStart(); delete ui; } else // Batch mode - { + { G4String s=*(argv+1); UImanager->ApplyCommand("/control/execute "+s); } - + delete visManager; delete runManager; - + timer.Stop(); G4cout << G4endl; G4cout << "******************************************"; @@ -149,7 +133,7 @@ int main(int argc,char** argv) G4cout << G4endl; G4cout << "******************************************"; G4cout << G4endl; - + return 0; } diff --git a/examples/extended/parameterisations/gflash/gflash2/CMakeLists.txt b/examples/extended/parameterisations/gflash/gflash2/CMakeLists.txt index 63313f727c..30d71c7d99 100644 --- a/examples/extended/parameterisations/gflash/gflash2/CMakeLists.txt +++ b/examples/extended/parameterisations/gflash/gflash2/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(gflash2) #---------------------------------------------------------------------------- diff --git a/examples/extended/parameterisations/gflash/gflash2/ExGflash2.cc b/examples/extended/parameterisations/gflash/gflash2/ExGflash2.cc index 04d3c7b0f0..1cf57ac376 100644 --- a/examples/extended/parameterisations/gflash/gflash2/ExGflash2.cc +++ b/examples/extended/parameterisations/gflash/gflash2/ExGflash2.cc @@ -29,19 +29,15 @@ // // Created by Joanna Weng 26.11.2004 -// G4 includes +// G4 includes #include "G4Types.hh" #include "G4ios.hh" #include "G4Timer.hh" #include "G4UImanager.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" -// my project +// my project #include "ExGflash2DetectorConstruction.hh" #include "ExGflash2ParallelWorld.hh" #include "ExGflashActionInitialization.hh" @@ -55,7 +51,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) -{ +{ // Instantiate G4UIExecutive if interactive mode G4UIExecutive* ui = nullptr; if ( argc == 1 ) { @@ -65,30 +61,18 @@ int main(int argc,char** argv) // timer to see GFlash performance G4Timer timer; timer.Start(); - + G4cout<<"+-------------------------------------------------------+"<SetNumberOfThreads(1); - G4cout<<"+-------------------------------------------------------+"<RegisterParallelWorld(new ExGflash2ParallelWorld("parallelWorld")); runManager->SetUserInitialization(detector); @@ -124,22 +108,22 @@ int main(int argc,char** argv) UImanager->ApplyCommand("/run/verbose 0"); runManager->Initialize(); UImanager->ApplyCommand("/Step/Verbose 0"); - + if (ui) // Define UI terminal for interactive mode - { + { UImanager->ApplyCommand("/control/execute vis.mac"); ui->SessionStart(); delete ui; } else // Batch mode - { + { G4String s=*(argv+1); UImanager->ApplyCommand("/control/execute "+s); } - + delete visManager; delete runManager; - + timer.Stop(); G4cout << G4endl; G4cout << "******************************************"; @@ -152,7 +136,7 @@ int main(int argc,char** argv) G4cout << G4endl; G4cout << "******************************************"; G4cout << G4endl; - + return 0; } diff --git a/examples/extended/parameterisations/gflash/gflash3/CMakeLists.txt b/examples/extended/parameterisations/gflash/gflash3/CMakeLists.txt index b57c5eaf04..17b097d9c3 100644 --- a/examples/extended/parameterisations/gflash/gflash3/CMakeLists.txt +++ b/examples/extended/parameterisations/gflash/gflash3/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(gflash3) #---------------------------------------------------------------------------- diff --git a/examples/extended/parameterisations/gflash/gflash3/ExGflash3.cc b/examples/extended/parameterisations/gflash/gflash3/ExGflash3.cc index 8d896c67c0..ca9895190a 100644 --- a/examples/extended/parameterisations/gflash/gflash3/ExGflash3.cc +++ b/examples/extended/parameterisations/gflash/gflash3/ExGflash3.cc @@ -29,19 +29,15 @@ // // Created by Joanna Weng 26.11.2004 -// G4 includes +// G4 includes #include "G4Types.hh" #include "G4ios.hh" #include "G4Timer.hh" #include "G4UImanager.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" -// my project +// my project #include "ExGflash3DetectorConstruction.hh" #include "ExGflash3ParallelWorld.hh" #include "ExGflashActionInitialization.hh" @@ -56,7 +52,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) -{ +{ // Instantiate G4UIExecutive if interactive mode G4UIExecutive* ui = nullptr; if ( argc == 1 ) { @@ -66,30 +62,18 @@ int main(int argc,char** argv) // timer to see GFlash performance G4Timer timer; timer.Start(); - + G4cout<<"+-------------------------------------------------------+"<SetNumberOfThreads(1); - G4cout<<"+-------------------------------------------------------+"<RegisterParallelWorld(new ExGflash3ParallelWorld("parallelWorld")); runManager->SetUserInitialization(detector); @@ -126,22 +110,22 @@ int main(int argc,char** argv) UImanager->ApplyCommand("/run/verbose 0"); runManager->Initialize(); UImanager->ApplyCommand("/Step/Verbose 0"); - + if (ui) // Define UI terminal for interactive mode - { + { UImanager->ApplyCommand("/control/execute vis.mac"); ui->SessionStart(); delete ui; } else // Batch mode - { + { G4String s=*(argv+1); UImanager->ApplyCommand("/control/execute "+s); } - + delete visManager; delete runManager; - + timer.Stop(); G4cout << G4endl; G4cout << "******************************************"; @@ -154,7 +138,7 @@ int main(int argc,char** argv) G4cout << G4endl; G4cout << "******************************************"; G4cout << G4endl; - + return 0; } diff --git a/examples/extended/parameterisations/gflash/gflasha/CMakeLists.txt b/examples/extended/parameterisations/gflash/gflasha/CMakeLists.txt index 7d0d14ba7a..16f72b1872 100644 --- a/examples/extended/parameterisations/gflash/gflasha/CMakeLists.txt +++ b/examples/extended/parameterisations/gflash/gflasha/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(gflasha) #---------------------------------------------------------------------------- diff --git a/examples/extended/parameterisations/gflash/gflasha/ExGflasha.cc b/examples/extended/parameterisations/gflash/gflasha/ExGflasha.cc index 44b0d10f64..3367a49f63 100644 --- a/examples/extended/parameterisations/gflash/gflasha/ExGflasha.cc +++ b/examples/extended/parameterisations/gflash/gflasha/ExGflasha.cc @@ -29,19 +29,15 @@ // // Created by Joanna Weng 26.11.2004 -// G4 includes +// G4 includes #include "G4Types.hh" #include "G4ios.hh" #include "G4Timer.hh" #include "G4UImanager.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" -// my project +// my project #include "ExGflashDetectorConstruction.hh" #include "ExGflashActionInitialization.hh" @@ -54,7 +50,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) -{ +{ // Instantiate G4UIExecutive if interactive mode G4UIExecutive* ui = nullptr; if ( argc == 1 ) { @@ -64,21 +60,15 @@ int main(int argc,char** argv) // timer to see GFlash performance G4Timer timer; timer.Start(); - + G4cout<<"+-------------------------------------------------------+"<SetUserInitialization(detector); @@ -88,7 +78,7 @@ int main(int argc,char** argv) // -- Create a fast simulation physics constructor, used to augment // -- the above physics list to allow for fast simulation: G4FastSimulationPhysics* fastSimulationPhysics = new G4FastSimulationPhysics(); - + // -- We now configure the fastSimulationPhysics object. // -- The gflash model (GFlashShowerModel, see ExGflashDetectorConstruction.cc) // -- is applicable to e+ and e- : we augment the physics list for these @@ -114,22 +104,22 @@ int main(int argc,char** argv) UImanager->ApplyCommand("/run/verbose 0"); runManager->Initialize(); UImanager->ApplyCommand("/Step/Verbose 0"); - + if (ui) // Define UI terminal for interactive mode - { + { UImanager->ApplyCommand("/control/execute vis.mac"); ui->SessionStart(); delete ui; } else // Batch mode - { + { G4String s=*(argv+1); UImanager->ApplyCommand("/control/execute "+s); } - + delete visManager; delete runManager; - + timer.Stop(); G4cout << G4endl; G4cout << "******************************************"; @@ -142,7 +132,7 @@ int main(int argc,char** argv) G4cout << G4endl; G4cout << "******************************************"; G4cout << G4endl; - + return 0; } diff --git a/examples/extended/parameterisations/gflash/gflasha/History b/examples/extended/parameterisations/gflash/gflasha/History index edbe9cb5c4..d01e38ef87 100644 --- a/examples/extended/parameterisations/gflash/gflasha/History +++ b/examples/extended/parameterisations/gflash/gflasha/History @@ -16,6 +16,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10-Nov-2020 B. Morgan (exgflasha-V10-06-00) +- Migration to G4RunManagerFactory. + 28-Oct-2019 I. Hrivnacova (exgflasha-V10-05-01) - Fixed formatting in .README.txt and Doxygen warnings diff --git a/examples/extended/persistency/CMakeLists.txt b/examples/extended/persistency/CMakeLists.txt index bd1bf092fa..9a67a30955 100644 --- a/examples/extended/persistency/CMakeLists.txt +++ b/examples/extended/persistency/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all persistency examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() find_package(Geant4) include(${Geant4_USE_FILE}) diff --git a/examples/extended/persistency/History b/examples/extended/persistency/History index 3c1a916bb3..ddcbf94e01 100644 --- a/examples/extended/persistency/History +++ b/examples/extended/persistency/History @@ -15,6 +15,15 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 13th, 2020 Ben Morgan (exPersistency-V10-06-02) +- Enforce use of Serial RunManager for serial-only examples. + +November 10th, 2020 Ben Morgan (exPersistency-V10-06-01) +- Migration to G4RunManagerFactory. + +November 03, 2020 B. Morgan (exPersistency-V10-06-00) +- Support same CMake version range as core Geant4 + January 31, 2019 I. Hrivnacova (exPersistency-V10-05-00) - Merged GitHub PR #4: all Boolean operators now return G4bool. @@ -64,9 +73,9 @@ September 25th, 2012 I. Hrivnacova (exPersistency-V09-05-01) Sep 24th, 2012 Ivana Hrivnacova (exPersistency-V09-05-00) - Updated CMakeLists.txt files: - adding visualization, copying macros, install target and comment lines + adding visualization, copying macros, install target and comment lines - Added explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh -- Replaced tabulators with space characters +- Replaced tabulators with space characters Aug 27th, 2008 Gabriele Cosmo (persistencyEx-V09-01-00) - Added examples set for GDML plugin module. diff --git a/examples/extended/persistency/P01/CMakeLists.txt b/examples/extended/persistency/P01/CMakeLists.txt index 2b02209c35..afc1a06c07 100644 --- a/examples/extended/persistency/P01/CMakeLists.txt +++ b/examples/extended/persistency/P01/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(P01) #---------------------------------------------------------------------------- diff --git a/examples/extended/persistency/P01/History b/examples/extended/persistency/P01/History index 0ed5af26e4..b4072a5fa3 100644 --- a/examples/extended/persistency/P01/History +++ b/examples/extended/persistency/P01/History @@ -14,9 +14,15 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 13th, 2020 Ben Morgan (exampleP01-V10-06-03) +- Enforce use of Serial RunManager. + +November 10th, 2020 Ben Morgan (exampleP01-V10-06-02) +- Migration to G4RunManagerFactory. + April 3rd, 2020 Gunter Folger (exampleP01-V10-06-01) - Since root6.20 Rootmacros is included by default, reduce check to include - old modules/RootNewMacros.cmake file. + old modules/RootNewMacros.cmake file. March 31st, 2020 Gunter Folger (exampleP01-V10-06-00) - Adapt to root 6.20: modules/RootNewMacros.cmake becomes RootMacros.cmake @@ -42,7 +48,7 @@ November 28th, 2017 B. Morgan (exampleP01-V10-03-00) - Update generated source name July 20th, 2016 I. Hrivnacova (exampleP01-V10-02-00) -- Coding guidelines +- Coding guidelines (redundant empty lines, class member functions names) November 23rd, 2015 I. Hrivnacova (exampleP01-V10-01-02) @@ -84,9 +90,9 @@ October 11th, 2012 A. Dotti (exampleP01-V09-05-07) September 25th, 2012 I. Hrivnacova - Taking into account renaming the dictionary also in macros, code - and GNUmake build + and GNUmake build - Fixes in GNUmakefile (was failing when building with internal - CLHEP and xerces-c) + CLHEP and xerces-c) September 25th, 2012 I. Hrivnacova (exampleP01-V09-05-06) - renamed Classes.hh to ExP01Classes.hh @@ -101,11 +107,11 @@ April 10th, 2012 W.Pokorski (exampleP01-V09-05-03) - removing debug printout, small fix in the iterator type March 29th, 2012 W.Pokorski (exampleP01-V09-05-01) -- fixes in GNUMakefile, CMakeLists.txt, removing G4Exception from the code and +- fixes in GNUMakefile, CMakeLists.txt, removing G4Exception from the code and adding root macro to read the hits. - + December 1th, 2010 W.Pokorski, I.Hrivnacova (exampleP01-V09-03-02) -- Updated setup to use latest version of Root. +- Updated setup to use latest version of Root. November 7th, 2010 J.Allison (exampleP01-V09-03-01) - Introduced G4UIExecutive. diff --git a/examples/extended/persistency/P01/exampleP01.cc b/examples/extended/persistency/P01/exampleP01.cc index 38b59462e4..58c04732e0 100644 --- a/examples/extended/persistency/P01/exampleP01.cc +++ b/examples/extended/persistency/P01/exampleP01.cc @@ -28,7 +28,7 @@ // // // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -43,7 +43,7 @@ #include "FTFP_BERT.hh" -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4VisExecutive.hh" @@ -61,9 +61,9 @@ int main(int argc,char** argv) { //my Verbose output class G4VSteppingVerbose::SetInstance(new ExP01SteppingVerbose); - + // Run manager - G4RunManager * runManager = new G4RunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); // UserInitialization classes (mandatory) ExP01DetectorConstruction* ExP01detector = new ExP01DetectorConstruction; @@ -71,33 +71,33 @@ int main(int argc,char** argv) { G4VModularPhysicsList* physicsList = new FTFP_BERT; runManager->SetUserInitialization(physicsList); - + // Visualization G4VisManager* visManager = new G4VisExecutive; visManager->Initialize(); // UserAction classes runManager->SetUserAction(new ExP01PrimaryGeneratorAction(ExP01detector)); - runManager->SetUserAction(new ExP01RunAction); + runManager->SetUserAction(new ExP01RunAction); runManager->SetUserAction(new ExP01EventAction); runManager->SetUserAction(new ExP01SteppingAction); //Initialize G4 kernel runManager->Initialize(); - - //get the pointer to the User Interface manager - G4UImanager * UImanager = G4UImanager::GetUIpointer(); + + //get the pointer to the User Interface manager + G4UImanager * UImanager = G4UImanager::GetUIpointer(); if(ui) - // Define (G)UI terminal for interactive mode - { + // Define (G)UI terminal for interactive mode + { UImanager->ApplyCommand("/control/execute vis.mac"); ui->SessionStart(); delete ui; } else // Batch mode - { + { G4String command = "/control/execute "; G4String fileName = argv[1]; UImanager->ApplyCommand(command+fileName); diff --git a/examples/extended/persistency/P01/p01-read.out b/examples/extended/persistency/P01/p01-read.out index 7db81cf6a0..bf4ec69478 100644 --- a/examples/extended/persistency/P01/p01-read.out +++ b/examples/extended/persistency/P01/p01-read.out @@ -4,423 +4,421 @@ Collection name='THashList', class='THashList', size=4 TKey Name = Event_3, Title = object title, Cycle = 1 TKey Name = Event_4, Title = object title, Cycle = 1 Collection: Event_1 -Number of hits: 91 - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00667306 position[mm]: (-12.9148,3.04723,-1586.5) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0481105 position[mm]: (-14.9592,3.51644,-1458.91) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00938915 position[mm]: (-15.3851,3.61586,-1432.14) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00126101 position[mm]: (-15.4328,3.62731,-1429.16) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.01314 position[mm]: (-15.9009,3.74115,-1400) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.023705 position[mm]: (-26.6364,6.2596,-734.219) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00131346 position[mm]: (-26.6837,6.27058,-731.273) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00308292 position[mm]: (-26.7972,6.29699,-724.228) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00298862 position[mm]: (-26.9041,6.32257,-717.621) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0258035 position[mm]: (-28.2027,6.64283,-637.321) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00506172 position[mm]: (-28.3614,6.68038,-627.514) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0054168 position[mm]: (-28.6527,6.75069,-609.455) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00169476 position[mm]: (-28.8061,6.78789,-600) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0301886 position[mm]: (-39.8025,9.4365,77.8828) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.000683421 position[mm]: (-39.9355,9.46815,86.0998) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00841855 position[mm]: (-40.3228,9.5621,110.104) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.000294364 position[mm]: (-40.3738,9.57528,113.283) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0047889 position[mm]: (-40.5293,9.61573,123.008) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00133033 position[mm]: (-40.6632,9.64935,131.402) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0280451 position[mm]: (-41.7533,9.92525,200) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0205401 position[mm]: (-52.6844,12.5447,880.198) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0207536 position[mm]: (-53.6174,12.7707,937.813) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0157841 position[mm]: (-54.6362,13.0048,1000) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.022683 position[mm]: (-65.7863,15.6188,1675.79) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0116813 position[mm]: (-66.36,15.7589,1711.09) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0156091 position[mm]: (-67.0165,15.9183,1751.47) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.014034 position[mm]: (-67.609,16.0646,1787.9) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00477247 position[mm]: (-67.8041,16.1154,1800) - trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.00202219 position[mm]: (-67.6187,16.0726,1787.9) - trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.00136897 position[mm]: (-67.012,15.9246,1751.47) - trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00216054 position[mm]: (-66.3565,15.772,1711.09) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00341506 position[mm]: (-65.7701,15.6384,1675.8) - trackID: 53 chamberNb: 3 energy deposit[MeV]: 0.00205146 position[mm]: (-53.63,12.7697,937.814) - trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.00208512 position[mm]: (-52.695,12.5372,880.198) - trackID: 45 chamberNb: 2 energy deposit[MeV]: 0.00234138 position[mm]: (-40.6538,9.63744,131.403) - trackID: 44 chamberNb: 2 energy deposit[MeV]: 0.00152381 position[mm]: (-40.5213,9.61935,123.009) - trackID: 43 chamberNb: 2 energy deposit[MeV]: 0.00219065 position[mm]: (-40.3876,9.57359,113.284) - trackID: 42 chamberNb: 2 energy deposit[MeV]: 0.00140711 position[mm]: (-40.3307,9.56326,110.104) - trackID: 41 chamberNb: 2 energy deposit[MeV]: 0.00479596 position[mm]: (-39.9579,9.50267,86.1022) - trackID: 40 chamberNb: 2 energy deposit[MeV]: 0.00139592 position[mm]: (-39.808,9.44213,77.883) - trackID: 34 chamberNb: 1 energy deposit[MeV]: 0.00802438 position[mm]: (-28.7205,6.69408,-609.448) - trackID: 33 chamberNb: 1 energy deposit[MeV]: 0.00308614 position[mm]: (-28.3631,6.65829,-627.512) - trackID: 32 chamberNb: 1 energy deposit[MeV]: 0.00285324 position[mm]: (-28.2176,6.6297,-637.321) - trackID: 31 chamberNb: 1 energy deposit[MeV]: 0.00674608 position[mm]: (-26.8857,6.25717,-717.615) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0261879 position[mm]: (-48.51,-9.79876,-702.594) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.000560478 position[mm]: (-49.0528,-9.61774,-702.355) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0323182 position[mm]: (-63.9736,-31.2614,-698.443) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 6.02834e-05 position[mm]: (-63.9921,-31.1713,-698.141) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00056786 position[mm]: (-63.7703,-30.883,-697.134) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0062753 position[mm]: (-62.6958,-28.8901,-692.873) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.000156847 position[mm]: (-63.0712,-29.537,-692.528) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0169444 position[mm]: (-66.9504,-35.1678,-692.2) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00419363 position[mm]: (-69.7369,-36.6114,-692.55) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00432606 position[mm]: (-71.595,-39.6658,-690.902) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0121699 position[mm]: (-68.7127,-37.1728,-688.501) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.000300314 position[mm]: (-68.6956,-37.4635,-688.771) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00353502 position[mm]: (-69.1392,-38.5566,-689.469) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00240826 position[mm]: (-68.229,-38.1261,-691.434) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00177939 position[mm]: (-67.6372,-36.6636,-692.44) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0128483 position[mm]: (-65.3381,-36.6551,-692.023) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0083166 position[mm]: (-64.3357,-35.4339,-691.679) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00781309 position[mm]: (-64.4101,-34.2706,-691.344) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00373298 position[mm]: (-65.2198,-34.1357,-691.633) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00516941 position[mm]: (-65.4409,-33.6159,-691.29) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00193338 position[mm]: (-65.371,-34.0491,-691.297) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00253114 position[mm]: (-65.3109,-34.0234,-691.482) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00183442 position[mm]: (-65.2774,-33.9729,-691.557) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.000196373 position[mm]: (-65.2708,-33.9696,-691.576) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00257471 position[mm]: (-65.2544,-33.9699,-691.581) - trackID: 96 chamberNb: 1 energy deposit[MeV]: 0.00164154 position[mm]: (-65.2696,-33.9782,-691.572) - trackID: 95 chamberNb: 1 energy deposit[MeV]: 0.00315381 position[mm]: (-65.2983,-33.9661,-691.564) - trackID: 94 chamberNb: 1 energy deposit[MeV]: 0.00137967 position[mm]: (-65.31,-34.0172,-691.477) - trackID: 93 chamberNb: 1 energy deposit[MeV]: 0.00815573 position[mm]: (-65.3907,-34.1357,-691.316) - trackID: 92 chamberNb: 1 energy deposit[MeV]: 0.0017563 position[mm]: (-65.2101,-34.1337,-691.63) - trackID: 91 chamberNb: 1 energy deposit[MeV]: 0.00200102 position[mm]: (-68.2188,-38.1322,-691.437) - trackID: 90 chamberNb: 1 energy deposit[MeV]: 0.0035636 position[mm]: (-69.1534,-38.5767,-689.481) - trackID: 89 chamberNb: 1 energy deposit[MeV]: 0.00207073 position[mm]: (-68.6497,-37.4611,-688.807) - trackID: 89 chamberNb: 1 energy deposit[MeV]: 0.00397145 position[mm]: (-68.6501,-37.4863,-688.826) - trackID: 88 chamberNb: 1 energy deposit[MeV]: 0.00248393 position[mm]: (-69.7268,-36.6109,-692.537) - trackID: 87 chamberNb: 1 energy deposit[MeV]: 0.00170701 position[mm]: (-63.0781,-29.5321,-692.522) - trackID: 86 chamberNb: 1 energy deposit[MeV]: 0.0018567 position[mm]: (-63.7598,-30.8867,-697.135) - trackID: 85 chamberNb: 1 energy deposit[MeV]: 0.0041999 position[mm]: (-64.0232,-31.181,-698.131) - trackID: 84 chamberNb: 1 energy deposit[MeV]: 0.00139 position[mm]: (-63.9792,-31.2562,-698.445) - trackID: 83 chamberNb: 1 energy deposit[MeV]: 0.00427242 position[mm]: (-49.0462,-9.5836,-702.351) - trackID: 29 chamberNb: 1 energy deposit[MeV]: 0.00147126 position[mm]: (-26.6921,6.2715,-731.273) - trackID: 28 chamberNb: 1 energy deposit[MeV]: 0.00185865 position[mm]: (-26.6303,6.25018,-734.218) - trackID: 21 chamberNb: 0 energy deposit[MeV]: 0.00379806 position[mm]: (-15.435,3.59783,-1429.16) - trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.00105452 position[mm]: (-15.3499,3.57841,-1432.13) - trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.00261031 position[mm]: (-15.3504,3.59549,-1432.14) - trackID: 99 chamberNb: 0 energy deposit[MeV]: 0.00192551 position[mm]: (-15.3389,3.57972,-1432.13) - trackID: 19 chamberNb: 0 energy deposit[MeV]: 0.00154296 position[mm]: (-14.9508,3.51358,-1458.91) +Number of hits: 111 + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00682042 position[mm]: (-12.9639,3.12546,-1586.95) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0481333 position[mm]: (-15.0179,3.60761,-1459.32) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00971991 position[mm]: (-15.4458,3.70972,-1432.54) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00126114 position[mm]: (-15.4937,3.72148,-1429.56) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0138328 position[mm]: (-15.9704,3.83987,-1400) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0242079 position[mm]: (-26.7463,6.42286,-734.583) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0013633 position[mm]: (-26.7938,6.43414,-731.637) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00314885 position[mm]: (-26.9078,6.46124,-724.59) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00302908 position[mm]: (-27.0153,6.48749,-717.98) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0348498 position[mm]: (-28.3197,6.81574,-637.654) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00834508 position[mm]: (-28.7058,6.90917,-613.899) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00486194 position[mm]: (-28.9307,6.96214,-600) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0380076 position[mm]: (-40.1859,9.59475,91.1192) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0158457 position[mm]: (-40.6314,9.7048,118.845) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00943251 position[mm]: (-41.0267,9.79888,143.377) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00856987 position[mm]: (-41.4129,9.89098,167.389) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.000294369 position[mm]: (-41.4638,9.90391,170.569) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00496925 position[mm]: (-41.6188,9.94361,180.297) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00133037 position[mm]: (-41.7523,9.97659,188.693) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00455067 position[mm]: (-41.9314,10.0212,200) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0212337 position[mm]: (-52.1328,12.5506,839.397) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00894669 position[mm]: (-52.4752,12.6382,860.945) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.000720161 position[mm]: (-52.5226,12.6503,863.935) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00114282 position[mm]: (-52.6672,12.687,872.995) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00547329 position[mm]: (-52.9987,12.7692,893.878) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0214695 position[mm]: (-53.9238,12.9952,951.512) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.011689 position[mm]: (-54.7114,13.1776,1000) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.015464 position[mm]: (-65.2978,15.6501,1639.66) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0091362 position[mm]: (-65.5084,15.6995,1652.26) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00171284 position[mm]: (-65.5419,15.7074,1654.27) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00439077 position[mm]: (-65.833,15.7759,1671.68) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0158749 position[mm]: (-66.442,15.9189,1708.22) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.000106384 position[mm]: (-66.4841,15.9291,1710.79) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.013238 position[mm]: (-67.4035,16.1543,1767.05) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00728614 position[mm]: (-67.6746,16.2208,1784.07) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00434105 position[mm]: (-67.7652,16.2433,1789.76) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00342245 position[mm]: (-67.9283,16.2838,1800) + trackID: 71 chamberNb: 4 energy deposit[MeV]: 0.00175444 position[mm]: (-67.7752,16.2407,1789.76) + trackID: 70 chamberNb: 4 energy deposit[MeV]: 0.00438514 position[mm]: (-67.6401,16.2308,1784.07) + trackID: 69 chamberNb: 4 energy deposit[MeV]: 0.00148077 position[mm]: (-67.3973,16.1601,1767.05) + trackID: 68 chamberNb: 4 energy deposit[MeV]: 0.00168017 position[mm]: (-66.4841,15.9193,1710.79) + trackID: 67 chamberNb: 4 energy deposit[MeV]: 0.00366837 position[mm]: (-66.4222,15.9386,1708.22) + trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.00163189 position[mm]: (-65.8258,15.7696,1671.68) + trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.00139921 position[mm]: (-65.5343,15.7095,1654.27) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00138298 position[mm]: (-65.5075,15.7073,1652.26) + trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00143442 position[mm]: (-65.3048,15.6458,1639.66) + trackID: 54 chamberNb: 3 energy deposit[MeV]: 0.00205206 position[mm]: (-53.9363,12.9942,951.512) + trackID: 53 chamberNb: 3 energy deposit[MeV]: 0.00208572 position[mm]: (-53.0091,12.7618,893.878) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.00190785 position[mm]: (-51.7327,13.0964,873.229) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.00502205 position[mm]: (-52.7105,13.8628,873.274) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.0123887 position[mm]: (-52.3921,14.5231,873.981) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.00637197 position[mm]: (-52.3917,14.6835,873.467) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.00812516 position[mm]: (-52.144,14.8818,873.356) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.00644177 position[mm]: (-52.0883,14.7683,873.41) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.00422847 position[mm]: (-52.1213,14.7764,873.406) + trackID: 51 chamberNb: 3 energy deposit[MeV]: 0.00382763 position[mm]: (-52.493,12.6521,863.937) + trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.0066334 position[mm]: (-52.466,12.7038,860.951) + trackID: 49 chamberNb: 3 energy deposit[MeV]: 0.00231235 position[mm]: (-52.1183,12.5538,839.398) + trackID: 45 chamberNb: 2 energy deposit[MeV]: 0.00234206 position[mm]: (-41.743,9.9648,188.694) + trackID: 44 chamberNb: 2 energy deposit[MeV]: 0.00152425 position[mm]: (-41.6108,9.94728,180.298) + trackID: 43 chamberNb: 2 energy deposit[MeV]: 0.00219128 position[mm]: (-41.4774,9.90219,170.57) + trackID: 42 chamberNb: 2 energy deposit[MeV]: 0.00140752 position[mm]: (-41.4209,9.89211,167.389) + trackID: 41 chamberNb: 2 energy deposit[MeV]: 0.00479735 position[mm]: (-41.0493,9.83336,143.379) + trackID: 40 chamberNb: 2 energy deposit[MeV]: 0.00156738 position[mm]: (-40.6404,9.70628,118.845) + trackID: 39 chamberNb: 2 energy deposit[MeV]: 0.00141639 position[mm]: (-40.1926,9.59017,91.1194) + trackID: 33 chamberNb: 1 energy deposit[MeV]: 0.00145009 position[mm]: (-28.7049,6.90092,-613.899) + trackID: 32 chamberNb: 1 energy deposit[MeV]: 0.00428645 position[mm]: (-28.3384,6.78633,-637.652) + trackID: 31 chamberNb: 1 energy deposit[MeV]: 0.00674803 position[mm]: (-26.9971,6.42209,-717.974) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00940007 position[mm]: (-26.4275,0.729221,-713.179) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00632024 position[mm]: (-30.0847,-1.1916,-709.386) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0153657 position[mm]: (-27.6814,-8.84312,-704.97) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00235892 position[mm]: (-27.217,-11.1513,-704.052) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00313032 position[mm]: (-27.536,-11.0085,-705.953) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0058271 position[mm]: (-24.4965,-10.4016,-709.989) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00898024 position[mm]: (-25.4997,-10.838,-714.555) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00715934 position[mm]: (-25.4005,-7.63534,-712.359) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0108958 position[mm]: (-25.7385,-3.88106,-710.972) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00691647 position[mm]: (-28.3501,-2.7617,-711.439) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00278211 position[mm]: (-29.1835,-3.88502,-711.096) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00949554 position[mm]: (-27.3434,-3.53403,-709.739) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0106573 position[mm]: (-27.8161,-1.95905,-710.372) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00474992 position[mm]: (-27.8953,-0.908262,-710.568) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00742017 position[mm]: (-27.6296,-0.311942,-710.326) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00598164 position[mm]: (-27.8285,-0.598233,-710.069) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00710915 position[mm]: (-27.5848,-0.630371,-710.165) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.000151617 position[mm]: (-27.5736,-0.659595,-710.201) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00730601 position[mm]: (-27.5208,-0.709823,-710.224) + trackID: 104 chamberNb: 1 energy deposit[MeV]: 0.00150152 position[mm]: (-27.5793,-0.666065,-710.2) + trackID: 103 chamberNb: 1 energy deposit[MeV]: 0.00148451 position[mm]: (-27.9379,-0.895266,-710.552) + trackID: 103 chamberNb: 1 energy deposit[MeV]: 0.00378726 position[mm]: (-27.9304,-0.875825,-710.573) + trackID: 102 chamberNb: 1 energy deposit[MeV]: 0.00301375 position[mm]: (-27.798,-1.95966,-710.383) + trackID: 101 chamberNb: 1 energy deposit[MeV]: 0.00186015 position[mm]: (-29.177,-3.89042,-711.103) + trackID: 100 chamberNb: 1 energy deposit[MeV]: 0.00196308 position[mm]: (-28.3483,-2.76652,-711.449) + trackID: 99 chamberNb: 1 energy deposit[MeV]: 0.00322685 position[mm]: (-25.7341,-3.86348,-710.957) + trackID: 98 chamberNb: 1 energy deposit[MeV]: 0.00372197 position[mm]: (-25.4045,-7.62539,-712.385) + trackID: 97 chamberNb: 1 energy deposit[MeV]: 0.00180719 position[mm]: (-25.4987,-10.8439,-714.546) + trackID: 96 chamberNb: 1 energy deposit[MeV]: 0.00164632 position[mm]: (-24.5054,-10.3981,-709.987) + trackID: 95 chamberNb: 1 energy deposit[MeV]: 0.00679077 position[mm]: (-27.2295,-11.2187,-704.057) + trackID: 94 chamberNb: 1 energy deposit[MeV]: 0.00149213 position[mm]: (-30.0765,-1.18898,-709.386) + trackID: 93 chamberNb: 1 energy deposit[MeV]: 0.00994574 position[mm]: (-25.7534,0.797719,-712.389) + trackID: 93 chamberNb: 1 energy deposit[MeV]: 0.00991137 position[mm]: (-25.5342,1.40647,-712.389) + trackID: 93 chamberNb: 1 energy deposit[MeV]: 0.00890539 position[mm]: (-25.6344,1.11469,-712.302) + trackID: 93 chamberNb: 1 energy deposit[MeV]: 0.00411864 position[mm]: (-25.6137,1.01385,-712.261) + trackID: 93 chamberNb: 1 energy deposit[MeV]: 0.00298785 position[mm]: (-25.6155,1.01124,-712.282) + trackID: 105 chamberNb: 1 energy deposit[MeV]: 0.00222388 position[mm]: (-25.6223,1.02493,-712.262) + trackID: 29 chamberNb: 1 energy deposit[MeV]: 0.00147168 position[mm]: (-26.8022,6.43509,-731.636) + trackID: 28 chamberNb: 1 energy deposit[MeV]: 0.00185919 position[mm]: (-26.7403,6.4135,-734.582) + trackID: 21 chamberNb: 0 energy deposit[MeV]: 0.00379916 position[mm]: (-15.496,3.69223,-1429.56) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.00422014 position[mm]: (-15.4106,3.6719,-1432.54) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.00137182 position[mm]: (-15.4042,3.67003,-1432.54) + trackID: 19 chamberNb: 0 energy deposit[MeV]: 0.0015434 position[mm]: (-15.0095,3.60469,-1459.32) Collection: Event_2 -Number of hits: 170 - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00894633 position[mm]: (-82.0186,18.4536,-1570.3) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0131067 position[mm]: (-84.9256,18.9974,-1541.99) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0180502 position[mm]: (-92.0924,19.8694,-1472.94) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00205454 position[mm]: (-92.985,19.9705,-1464.26) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.022928 position[mm]: (-99.4411,20.8371,-1400) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00865235 position[mm]: (-162.005,29.0048,-775.269) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00300978 position[mm]: (-163.492,29.1732,-760.741) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00238837 position[mm]: (-164.532,29.2998,-750.607) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0338246 position[mm]: (-172.19,30.1698,-676.244) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0320446 position[mm]: (-179.925,30.8657,-600) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0099075 position[mm]: (-244.622,36.5945,29.0598) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0737354 position[mm]: (-262.416,38.126,200) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00279983 position[mm]: (-328.05,48.7064,807.871) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00661245 position[mm]: (-330.696,49.1124,832.974) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00958847 position[mm]: (-333.253,49.5398,856.941) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00078596 position[mm]: (-333.621,49.6049,860.302) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0681136 position[mm]: (-348.984,52.3362,1000) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.000308422 position[mm]: (-414.337,62.7153,1600.97) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00245055 position[mm]: (-415.043,62.8342,1607.51) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0077822 position[mm]: (-416.511,63.0891,1621.08) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00282895 position[mm]: (-417.631,63.2763,1631.47) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0185639 position[mm]: (-421.247,63.8585,1665.1) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00302232 position[mm]: (-421.698,63.9348,1669.35) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00826672 position[mm]: (-424.265,64.387,1693.59) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00770004 position[mm]: (-426.621,64.7765,1715.68) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.000383516 position[mm]: (-426.998,64.8412,1719.22) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00322892 position[mm]: (-427.667,64.9647,1725.53) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0165625 position[mm]: (-431.835,65.7152,1764.82) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0191797 position[mm]: (-435.537,66.3786,1800) - trackID: 71 chamberNb: 4 energy deposit[MeV]: 0.0023776 position[mm]: (-431.722,65.921,1764.86) - trackID: 71 chamberNb: 4 energy deposit[MeV]: 0.00539896 position[mm]: (-431.598,66.0621,1764.88) - trackID: 71 chamberNb: 4 energy deposit[MeV]: 0.00606959 position[mm]: (-431.64,66.0811,1764.91) - trackID: 82 chamberNb: 4 energy deposit[MeV]: 0.0015216 position[mm]: (-431.603,66.0617,1764.87) - trackID: 81 chamberNb: 4 energy deposit[MeV]: 0.00149845 position[mm]: (-431.728,65.9268,1764.86) - trackID: 70 chamberNb: 4 energy deposit[MeV]: 0.00227495 position[mm]: (-427.666,64.9792,1725.53) - trackID: 69 chamberNb: 4 energy deposit[MeV]: 0.00242109 position[mm]: (-426.985,64.8315,1719.23) - trackID: 68 chamberNb: 4 energy deposit[MeV]: 0.00145317 position[mm]: (-426.614,64.7806,1715.68) - trackID: 67 chamberNb: 4 energy deposit[MeV]: 0.00420818 position[mm]: (-424.294,64.4055,1693.59) - trackID: 66 chamberNb: 4 energy deposit[MeV]: 3.23264e-05 position[mm]: (-421.66,63.8959,1669.36) - trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.000406816 position[mm]: (-421.589,63.905,1669.43) - trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.0019357 position[mm]: (-421.644,63.9419,1669.42) - trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.00276546 position[mm]: (-421.638,63.9549,1669.41) - trackID: 85 chamberNb: 4 energy deposit[MeV]: 0.00195312 position[mm]: (-421.643,63.9334,1669.42) - trackID: 84 chamberNb: 4 energy deposit[MeV]: 0.00179143 position[mm]: (-421.585,63.9129,1669.44) - trackID: 83 chamberNb: 4 energy deposit[MeV]: 0.00199728 position[mm]: (-421.653,63.8878,1669.36) - trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.00366662 position[mm]: (-421.219,63.8583,1665.1) - trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00152095 position[mm]: (-417.636,63.2691,1631.47) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.000574919 position[mm]: (-416.82,63.3525,1621.2) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00726046 position[mm]: (-423.325,68.5461,1615.86) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00114522 position[mm]: (-423.391,67.9791,1613.6) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0083271 position[mm]: (-425.565,59.8574,1611.91) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00964248 position[mm]: (-432.699,57.391,1609.87) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00563981 position[mm]: (-436.056,61.1695,1607.93) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0120003 position[mm]: (-440.615,62.2413,1612.66) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00014891 position[mm]: (-440.73,62.2138,1612.84) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00521451 position[mm]: (-444.995,59.9462,1612.38) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00881492 position[mm]: (-446.047,58.7677,1612.08) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00740744 position[mm]: (-446.643,58.4582,1611.11) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00507741 position[mm]: (-447.353,57.9665,1611.14) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00308098 position[mm]: (-447.614,58.4195,1611.52) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00141697 position[mm]: (-447.701,58.2695,1611.65) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00987656 position[mm]: (-447.911,58.2326,1611.9) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00626515 position[mm]: (-447.883,58.2185,1611.84) - trackID: 92 chamberNb: 4 energy deposit[MeV]: 0.0023031 position[mm]: (-447.912,58.2182,1611.9) - trackID: 91 chamberNb: 4 energy deposit[MeV]: 0.0016256 position[mm]: (-447.694,58.2722,1611.65) - trackID: 90 chamberNb: 4 energy deposit[MeV]: 0.00412857 position[mm]: (-447.639,58.4153,1611.5) - trackID: 89 chamberNb: 4 energy deposit[MeV]: 0.00188 position[mm]: (-440.723,62.2093,1612.85) - trackID: 88 chamberNb: 4 energy deposit[MeV]: 0.00277169 position[mm]: (-435.795,61.2972,1607.74) - trackID: 88 chamberNb: 4 energy deposit[MeV]: 0.000173276 position[mm]: (-435.961,61.3493,1607.76) - trackID: 88 chamberNb: 4 energy deposit[MeV]: 0.00863783 position[mm]: (-436.124,61.2563,1607.82) - trackID: 88 chamberNb: 4 energy deposit[MeV]: 0.00466581 position[mm]: (-436.129,61.2236,1607.84) - trackID: 94 chamberNb: 4 energy deposit[MeV]: 0.00140128 position[mm]: (-435.959,61.3507,1607.76) - trackID: 93 chamberNb: 4 energy deposit[MeV]: 0.00178296 position[mm]: (-435.798,61.2881,1607.74) - trackID: 87 chamberNb: 4 energy deposit[MeV]: 0.00249966 position[mm]: (-423.397,67.9926,1613.59) - trackID: 86 chamberNb: 4 energy deposit[MeV]: 0.00191697 position[mm]: (-416.819,63.3494,1621.21) - trackID: 62 chamberNb: 4 energy deposit[MeV]: 0.00180043 position[mm]: (-415.038,62.825,1607.51) - trackID: 61 chamberNb: 4 energy deposit[MeV]: 0.00166343 position[mm]: (-414.333,62.7244,1600.97) - trackID: 51 chamberNb: 3 energy deposit[MeV]: 0.00190857 position[mm]: (-333.611,49.6088,860.303) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.0129594 position[mm]: (-333.583,46.8922,857.698) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.00615743 position[mm]: (-333.034,46.5657,859.588) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.0023597 position[mm]: (-333.392,47.7851,859.854) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.00556969 position[mm]: (-333.205,47.8329,860.957) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.00489266 position[mm]: (-332.619,48.4256,860.665) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.00914999 position[mm]: (-333.045,48.9615,860.58) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.001669 position[mm]: (-332.755,49.1063,860.484) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.000521495 position[mm]: (-332.891,49.1141,860.548) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.00117382 position[mm]: (-332.819,48.9972,860.534) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.00363343 position[mm]: (-332.792,49.0361,860.407) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.00550536 position[mm]: (-332.809,49.0558,860.45) - trackID: 100 chamberNb: 3 energy deposit[MeV]: 0.00140775 position[mm]: (-332.79,49.0434,860.404) - trackID: 99 chamberNb: 3 energy deposit[MeV]: 0.0025165 position[mm]: (-332.818,48.9812,860.529) - trackID: 98 chamberNb: 3 energy deposit[MeV]: 0.00160588 position[mm]: (-332.883,49.119,860.547) - trackID: 97 chamberNb: 3 energy deposit[MeV]: 0.00216238 position[mm]: (-332.761,49.1058,860.472) - trackID: 96 chamberNb: 3 energy deposit[MeV]: 0.00145698 position[mm]: (-333.477,47.8417,859.868) - trackID: 96 chamberNb: 3 energy deposit[MeV]: 0.00509186 position[mm]: (-333.465,47.8564,859.827) - trackID: 101 chamberNb: 3 energy deposit[MeV]: 0.00229773 position[mm]: (-333.479,47.8556,859.872) - trackID: 49 chamberNb: 3 energy deposit[MeV]: 0.00433965 position[mm]: (-330.415,48.7155,833.091) - trackID: 49 chamberNb: 3 energy deposit[MeV]: 0.000838576 position[mm]: (-330.602,48.4745,833.234) - trackID: 49 chamberNb: 3 energy deposit[MeV]: 0.0110807 position[mm]: (-330.722,48.2845,833.077) - trackID: 49 chamberNb: 3 energy deposit[MeV]: 0.00537948 position[mm]: (-330.769,48.2734,833.08) - trackID: 102 chamberNb: 3 energy deposit[MeV]: 0.00240308 position[mm]: (-330.591,48.4764,833.223) - trackID: 48 chamberNb: 3 energy deposit[MeV]: 0.00550084 position[mm]: (-328.036,48.6582,807.878) - trackID: 44 chamberNb: 2 energy deposit[MeV]: 0.00199747 position[mm]: (-244.619,36.6064,29.0606) - trackID: 35 chamberNb: 1 energy deposit[MeV]: 0.00170503 position[mm]: (-172.183,30.1765,-676.243) - trackID: 34 chamberNb: 1 energy deposit[MeV]: 0.00204639 position[mm]: (-163.479,29.1738,-760.739) - trackID: 33 chamberNb: 1 energy deposit[MeV]: 0.00617879 position[mm]: (-161.959,29.0412,-775.26) - trackID: 26 chamberNb: 0 energy deposit[MeV]: 0.0137188 position[mm]: (-103.066,-0.493241,-1451.42) - trackID: 26 chamberNb: 0 energy deposit[MeV]: 0.000681636 position[mm]: (-105.922,-5.79836,-1448.77) - trackID: 26 chamberNb: 0 energy deposit[MeV]: 0.0102514 position[mm]: (-135.868,-18.1906,-1428.36) - trackID: 26 chamberNb: 0 energy deposit[MeV]: 0.0110792 position[mm]: (-131.882,-3.97091,-1406.8) - trackID: 26 chamberNb: 0 energy deposit[MeV]: 0.010332 position[mm]: (-129.794,-24.6363,-1400) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00409913 position[mm]: (69.2425,-431.575,-795.265) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00902715 position[mm]: (83.5004,-444.267,-800) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00997592 position[mm]: (75.5485,-458.969,-794.402) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0147161 position[mm]: (64.4059,-474.966,-785.907) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00768688 position[mm]: (69.9968,-485.374,-777.402) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0148169 position[mm]: (92.7298,-496.554,-772.692) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00359743 position[mm]: (97.3685,-496.659,-771.013) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.000292185 position[mm]: (100.29,-497.504,-770.085) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.000422 position[mm]: (102.133,-498.483,-769.073) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.000696656 position[mm]: (103.815,-499.598,-768.446) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00982481 position[mm]: (114.168,-500.219,-762.313) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00381316 position[mm]: (120.981,-496.439,-759.72) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0350076 position[mm]: (152.29,-461.144,-776.07) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00431104 position[mm]: (152.055,-455.319,-774.707) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00393334 position[mm]: (156.035,-445.019,-775.997) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0015754 position[mm]: (156.809,-445.253,-777.693) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0274314 position[mm]: (166.468,-444.978,-795.617) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00573402 position[mm]: (163.211,-434.687,-795.451) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00471258 position[mm]: (159.509,-431.753,-800) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 4.32813e-05 position[mm]: (157.506,-429.105,-799.967) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.000266113 position[mm]: (157.453,-429.103,-799.938) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.00041352 position[mm]: (157.415,-429.057,-799.937) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.00013298 position[mm]: (157.385,-429.008,-799.924) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.000202499 position[mm]: (157.34,-428.997,-799.888) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.000146469 position[mm]: (157.286,-429.021,-799.876) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.000262636 position[mm]: (157.226,-429.022,-799.849) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.000858543 position[mm]: (157.149,-429.024,-799.836) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.000835287 position[mm]: (157.135,-429.092,-799.872) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.000192839 position[mm]: (157.132,-429.127,-799.927) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.000369659 position[mm]: (157.1,-429.108,-799.967) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.000745031 position[mm]: (157.087,-429.064,-799.99) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.000471846 position[mm]: (157.09,-429.029,-799.999) - trackID: 137 chamberNb: 1 energy deposit[MeV]: 0.00196557 position[mm]: (163.211,-434.662,-795.435) - trackID: 137 chamberNb: 1 energy deposit[MeV]: 0.00184876 position[mm]: (163.221,-434.664,-795.439) - trackID: 136 chamberNb: 1 energy deposit[MeV]: 0.00145884 position[mm]: (166.475,-444.977,-795.614) - trackID: 135 chamberNb: 1 energy deposit[MeV]: 0.00243476 position[mm]: (156.808,-445.238,-777.698) - trackID: 134 chamberNb: 1 energy deposit[MeV]: 0.00154206 position[mm]: (156.038,-445.028,-775.997) - trackID: 133 chamberNb: 1 energy deposit[MeV]: 0.00764947 position[mm]: (152.136,-455.306,-774.704) - trackID: 132 chamberNb: 1 energy deposit[MeV]: 0.00280246 position[mm]: (152.286,-461.144,-776.089) - trackID: 131 chamberNb: 1 energy deposit[MeV]: 0.00192695 position[mm]: (120.98,-496.449,-759.714) - trackID: 130 chamberNb: 1 energy deposit[MeV]: 0.0017311 position[mm]: (114.166,-500.217,-762.323) - trackID: 129 chamberNb: 1 energy deposit[MeV]: 0.00305044 position[mm]: (103.809,-499.619,-768.445) - trackID: 128 chamberNb: 1 energy deposit[MeV]: 0.00177322 position[mm]: (100.288,-497.514,-770.085) - trackID: 127 chamberNb: 1 energy deposit[MeV]: 0.00180233 position[mm]: (97.3691,-496.65,-771.007) - trackID: 126 chamberNb: 1 energy deposit[MeV]: 0.00159611 position[mm]: (69.9916,-485.372,-777.395) - trackID: 125 chamberNb: 1 energy deposit[MeV]: 0.0034603 position[mm]: (64.3874,-474.952,-785.895) - trackID: 124 chamberNb: 1 energy deposit[MeV]: 0.00137016 position[mm]: (75.5473,-458.971,-794.41) - trackID: 123 chamberNb: 1 energy deposit[MeV]: 0.00182162 position[mm]: (69.2502,-431.568,-795.262) - trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.00264557 position[mm]: (-131.88,-3.9657,-1406.79) - trackID: 105 chamberNb: 0 energy deposit[MeV]: 0.00165862 position[mm]: (-135.865,-18.1827,-1428.37) - trackID: 104 chamberNb: 0 energy deposit[MeV]: 0.00150116 position[mm]: (-105.919,-5.80453,-1448.78) - trackID: 103 chamberNb: 0 energy deposit[MeV]: 0.00303229 position[mm]: (-103.046,-0.500649,-1451.42) - trackID: 25 chamberNb: 0 energy deposit[MeV]: 0.00706361 position[mm]: (-92.0893,19.7967,-1472.93) - trackID: 24 chamberNb: 0 energy deposit[MeV]: 0.00224713 position[mm]: (-84.9245,19.0117,-1541.99) - trackID: 23 chamberNb: 0 energy deposit[MeV]: 0.00505984 position[mm]: (-81.5897,17.6278,-1570.05) - trackID: 23 chamberNb: 0 energy deposit[MeV]: 0.00688779 position[mm]: (-81.3487,18.013,-1570.27) - trackID: 23 chamberNb: 0 energy deposit[MeV]: 0.0140759 position[mm]: (-81.5681,18.203,-1570.22) - trackID: 23 chamberNb: 0 energy deposit[MeV]: 0.00315221 position[mm]: (-81.5778,18.1884,-1570.23) - trackID: 160 chamberNb: 0 energy deposit[MeV]: 0.00832383 position[mm]: (-81.6177,17.5995,-1570.14) +Number of hits: 173 + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0148993 position[mm]: (135.349,102.995,-1552.62) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0135129 position[mm]: (139.63,106.252,-1524.7) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0185424 position[mm]: (149.786,114.56,-1456.6) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00205267 position[mm]: (151.051,115.604,-1448.03) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0176944 position[mm]: (158.13,121.315,-1400) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0105214 position[mm]: (249.824,195.207,-774.656) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00155775 position[mm]: (250.356,195.644,-770.991) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0378151 position[mm]: (263.505,206.505,-680.074) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00815698 position[mm]: (267.15,209.5,-654.751) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0209628 position[mm]: (274.927,216.098,-600) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00237177 position[mm]: (363.447,290.804,16.6596) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0757487 position[mm]: (388.007,311.925,190.591) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00186686 position[mm]: (389.433,313.036,200) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00172711 position[mm]: (480.688,383.055,803.702) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00487296 position[mm]: (482.176,384.211,813.646) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00836253 position[mm]: (485.203,386.634,834.235) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00719186 position[mm]: (488.659,389.361,857.489) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00491667 position[mm]: (492.127,392.127,880.915) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0146109 position[mm]: (497.839,396.641,919.479) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 4.9156e-05 position[mm]: (498.201,396.924,921.909) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.037723 position[mm]: (509.771,405.957,999.347) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.000344709 position[mm]: (509.869,406.032,1000) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.000446753 position[mm]: (600.471,474.497,1601.95) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0248395 position[mm]: (608.469,480.494,1654.87) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00112952 position[mm]: (608.874,480.798,1657.55) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0009694 position[mm]: (609.285,481.104,1660.26) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00348896 position[mm]: (612.414,483.451,1680.96) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0165184 position[mm]: (617.236,487.097,1713.12) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00410693 position[mm]: (618.649,488.184,1722.55) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00755975 position[mm]: (620.625,489.753,1735.82) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0114802 position[mm]: (624.251,492.657,1760.16) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00896045 position[mm]: (629.161,496.465,1792.6) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00352307 position[mm]: (630.293,497.322,1800) + trackID: 72 chamberNb: 4 energy deposit[MeV]: 0.00155601 position[mm]: (629.152,496.463,1792.6) + trackID: 71 chamberNb: 4 energy deposit[MeV]: 0.00189149 position[mm]: (624.257,492.666,1760.16) + trackID: 70 chamberNb: 4 energy deposit[MeV]: 0.0085445 position[mm]: (620.607,489.661,1735.85) + trackID: 69 chamberNb: 4 energy deposit[MeV]: 0.00391104 position[mm]: (618.648,488.154,1722.56) + trackID: 68 chamberNb: 4 energy deposit[MeV]: 0.000386343 position[mm]: (617.241,487.121,1713.12) + trackID: 68 chamberNb: 4 energy deposit[MeV]: 0.00194725 position[mm]: (617.243,487.132,1713.12) + trackID: 86 chamberNb: 4 energy deposit[MeV]: 0.00158667 position[mm]: (617.239,487.12,1713.13) + trackID: 67 chamberNb: 4 energy deposit[MeV]: 0.00196526 position[mm]: (612.41,483.463,1680.96) + trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.00428264 position[mm]: (609.315,481.088,1660.26) + trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.00982997 position[mm]: (608.762,480.832,1657.58) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00328634 position[mm]: (606.871,482.03,1656.94) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0210875 position[mm]: (601.892,496.224,1646.41) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00750864 position[mm]: (596.866,501.694,1648.49) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00410882 position[mm]: (595.91,497.636,1647.42) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00114035 position[mm]: (595.698,497.459,1645.65) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00261604 position[mm]: (596.109,498.09,1643.41) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00705598 position[mm]: (597.291,500.431,1644.52) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00832394 position[mm]: (594.958,499.96,1644.12) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00129662 position[mm]: (595.563,499.498,1643.94) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00774653 position[mm]: (595.46,499.195,1645.59) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00540017 position[mm]: (595.972,499.759,1646.54) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00206053 position[mm]: (596.586,499.729,1646.1) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00741027 position[mm]: (596.893,500.131,1645.5) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.000784341 position[mm]: (596.856,500.375,1645.4) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.000112034 position[mm]: (596.834,500.432,1645.38) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00494319 position[mm]: (596.915,500.706,1645.34) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0100391 position[mm]: (596.833,500.61,1645.23) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00202608 position[mm]: (596.835,500.598,1645.23) + trackID: 95 chamberNb: 4 energy deposit[MeV]: 0.00438188 position[mm]: (596.802,500.443,1645.39) + trackID: 94 chamberNb: 4 energy deposit[MeV]: 0.00211323 position[mm]: (596.858,500.372,1645.38) + trackID: 93 chamberNb: 4 energy deposit[MeV]: 0.00272111 position[mm]: (596.602,499.73,1646.11) + trackID: 92 chamberNb: 4 energy deposit[MeV]: 0.00191964 position[mm]: (595.467,499.202,1645.58) + trackID: 91 chamberNb: 4 energy deposit[MeV]: 0.00307016 position[mm]: (595.584,499.504,1643.94) + trackID: 90 chamberNb: 4 energy deposit[MeV]: 0.00166322 position[mm]: (595.693,497.451,1645.64) + trackID: 89 chamberNb: 4 energy deposit[MeV]: 0.00949315 position[mm]: (596.167,497.258,1647.41) + trackID: 89 chamberNb: 4 energy deposit[MeV]: 0.00887054 position[mm]: (596.023,497.39,1647.4) + trackID: 89 chamberNb: 4 energy deposit[MeV]: 0.00442338 position[mm]: (596.039,497.401,1647.43) + trackID: 88 chamberNb: 4 energy deposit[MeV]: 0.00248657 position[mm]: (596.857,501.699,1648.48) + trackID: 87 chamberNb: 4 energy deposit[MeV]: 0.00197139 position[mm]: (606.87,482.022,1656.95) + trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00209353 position[mm]: (600.479,474.487,1601.95) + trackID: 59 chamberNb: 3 energy deposit[MeV]: 0.00156317 position[mm]: (509.764,405.951,999.349) + trackID: 58 chamberNb: 3 energy deposit[MeV]: 0.00856743 position[mm]: (498.227,396.797,921.934) + trackID: 58 chamberNb: 3 energy deposit[MeV]: 0.00187418 position[mm]: (498.234,396.789,921.936) + trackID: 57 chamberNb: 3 energy deposit[MeV]: 0.00155266 position[mm]: (497.844,396.634,919.48) + trackID: 56 chamberNb: 3 energy deposit[MeV]: 0.00618283 position[mm]: (492.603,392.261,880.909) + trackID: 56 chamberNb: 3 energy deposit[MeV]: 0.00678921 position[mm]: (492.616,392.551,881.006) + trackID: 56 chamberNb: 3 energy deposit[MeV]: 0.00719347 position[mm]: (492.562,392.421,881.028) + trackID: 56 chamberNb: 3 energy deposit[MeV]: 0.000581296 position[mm]: (492.568,392.424,881.055) + trackID: 56 chamberNb: 3 energy deposit[MeV]: 0.00314372 position[mm]: (492.548,392.424,881.066) + trackID: 55 chamberNb: 3 energy deposit[MeV]: 0.00599978 position[mm]: (489.128,389.464,857.485) + trackID: 55 chamberNb: 3 energy deposit[MeV]: 0.0086545 position[mm]: (488.833,389.42,857.446) + trackID: 55 chamberNb: 3 energy deposit[MeV]: 0.00880652 position[mm]: (488.838,389.418,857.548) + trackID: 54 chamberNb: 3 energy deposit[MeV]: 0.00797322 position[mm]: (485.106,386.603,834.263) + trackID: 54 chamberNb: 3 energy deposit[MeV]: 0.00105658 position[mm]: (485.11,386.599,834.262) + trackID: 53 chamberNb: 3 energy deposit[MeV]: 0.00310763 position[mm]: (482.159,384.225,813.648) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.00377593 position[mm]: (480.699,383.082,803.699) + trackID: 39 chamberNb: 2 energy deposit[MeV]: 0.00823807 position[mm]: (388.095,311.9,190.59) + trackID: 38 chamberNb: 2 energy deposit[MeV]: 0.00199805 position[mm]: (363.453,290.793,16.6606) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00912049 position[mm]: (266.743,209.165,-653.616) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 6.00251e-05 position[mm]: (266.727,209.125,-653.796) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00114134 position[mm]: (266.76,209.21,-653.981) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0027535 position[mm]: (266.555,209.282,-654.039) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00903215 position[mm]: (266.597,209.224,-654.116) + trackID: 103 chamberNb: 1 energy deposit[MeV]: 0.00307546 position[mm]: (266.575,209.292,-654.036) + trackID: 102 chamberNb: 1 energy deposit[MeV]: 0.00151847 position[mm]: (266.763,209.214,-653.988) + trackID: 101 chamberNb: 1 energy deposit[MeV]: 0.00385706 position[mm]: (266.716,209.1,-653.81) + trackID: 29 chamberNb: 1 energy deposit[MeV]: 0.00188175 position[mm]: (267.155,209.49,-654.75) + trackID: 28 chamberNb: 1 energy deposit[MeV]: 0.0102542 position[mm]: (263.416,206.66,-680.058) + trackID: 28 chamberNb: 1 energy deposit[MeV]: 0.00231352 position[mm]: (263.428,206.653,-680.063) + trackID: 27 chamberNb: 1 energy deposit[MeV]: 0.00170026 position[mm]: (250.364,195.649,-770.993) + trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0020614 position[mm]: (249.827,195.195,-774.654) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.0141278 position[mm]: (164.411,141.09,-1432.22) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.00700567 position[mm]: (168.185,145.807,-1430.49) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.00452006 position[mm]: (177.964,163.348,-1426.51) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.0142695 position[mm]: (174.711,188.509,-1409.79) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.00114501 position[mm]: (174.806,192.685,-1407.29) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.00892195 position[mm]: (171.066,209.691,-1400) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.00979234 position[mm]: (174.5,489.06,-784.461) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.00308213 position[mm]: (175.584,489.874,-773.585) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.00402469 position[mm]: (174.133,484.667,-761.669) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.0062013 position[mm]: (169.384,477.088,-754.437) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.00299043 position[mm]: (167.62,471.813,-748.473) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.00797967 position[mm]: (161.476,460.659,-744.195) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.00797267 position[mm]: (147.284,447.14,-746.946) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.00531912 position[mm]: (140.558,458.309,-758.397) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.0177577 position[mm]: (147.98,489.398,-774.556) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.00502291 position[mm]: (149.831,497.837,-781.252) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.0234583 position[mm]: (153.929,520.931,-800) + trackID: 123 chamberNb: 1 energy deposit[MeV]: 0.00224636 position[mm]: (149.843,497.84,-781.246) + trackID: 122 chamberNb: 1 energy deposit[MeV]: 0.00203478 position[mm]: (147.97,489.399,-774.562) + trackID: 121 chamberNb: 1 energy deposit[MeV]: 0.000563603 position[mm]: (140.591,458.33,-758.365) + trackID: 121 chamberNb: 1 energy deposit[MeV]: 0.00313242 position[mm]: (140.568,458.328,-758.366) + trackID: 149 chamberNb: 1 energy deposit[MeV]: 0.00185909 position[mm]: (140.591,458.335,-758.375) + trackID: 120 chamberNb: 1 energy deposit[MeV]: 0.00137202 position[mm]: (147.277,447.137,-746.944) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.00529194 position[mm]: (159.418,460.998,-743.542) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.00478545 position[mm]: (160.328,459.723,-743.371) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.00152852 position[mm]: (160.859,458.998,-743.566) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.00502997 position[mm]: (161.064,458.211,-742.842) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.00642863 position[mm]: (161.769,458.847,-742.976) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.00991735 position[mm]: (161.084,458.975,-743.088) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.00631022 position[mm]: (160.893,459.054,-743.389) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.00546197 position[mm]: (160.789,459.197,-743.485) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.00803982 position[mm]: (160.817,459.12,-743.518) + trackID: 152 chamberNb: 1 energy deposit[MeV]: 0.00431298 position[mm]: (160.825,458.998,-743.556) + trackID: 151 chamberNb: 1 energy deposit[MeV]: 0.00729294 position[mm]: (160.368,459.764,-743.421) + trackID: 150 chamberNb: 1 energy deposit[MeV]: 0.00152091 position[mm]: (159.418,460.999,-743.533) + trackID: 118 chamberNb: 1 energy deposit[MeV]: 0.0034227 position[mm]: (167.632,471.823,-748.453) + trackID: 117 chamberNb: 1 energy deposit[MeV]: 0.00176152 position[mm]: (169.377,477.094,-754.433) + trackID: 116 chamberNb: 1 energy deposit[MeV]: 0.0063138 position[mm]: (174.192,484.662,-761.652) + trackID: 115 chamberNb: 1 energy deposit[MeV]: 0.00218228 position[mm]: (175.593,489.884,-773.584) + trackID: 114 chamberNb: 1 energy deposit[MeV]: 0.00373929 position[mm]: (174.478,489.042,-784.46) + trackID: 108 chamberNb: 0 energy deposit[MeV]: 0.00243756 position[mm]: (174.814,192.682,-1407.27) + trackID: 107 chamberNb: 0 energy deposit[MeV]: 0.00147241 position[mm]: (174.718,188.507,-1409.79) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.00137251 position[mm]: (178.513,163.32,-1426.6) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.00635864 position[mm]: (177.056,163.406,-1427.14) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.00267401 position[mm]: (176.427,163.205,-1426.09) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.00117086 position[mm]: (176.96,163.531,-1425.91) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.00888982 position[mm]: (177.798,163.038,-1425.79) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.00708992 position[mm]: (177.743,163.421,-1425.3) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.00175408 position[mm]: (177.837,163.294,-1425.57) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.00639385 position[mm]: (177.736,163.312,-1425.78) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.000981498 position[mm]: (177.794,163.316,-1425.73) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.00548746 position[mm]: (177.806,163.267,-1425.73) + trackID: 157 chamberNb: 0 energy deposit[MeV]: 0.00208773 position[mm]: (177.787,163.315,-1425.72) + trackID: 156 chamberNb: 0 energy deposit[MeV]: 0.00210627 position[mm]: (177.839,163.307,-1425.57) + trackID: 155 chamberNb: 0 energy deposit[MeV]: 0.00185315 position[mm]: (177.753,163.421,-1425.29) + trackID: 154 chamberNb: 0 energy deposit[MeV]: 0.00209016 position[mm]: (176.954,163.52,-1425.91) + trackID: 153 chamberNb: 0 energy deposit[MeV]: 0.0043697 position[mm]: (178.525,163.325,-1426.63) + trackID: 105 chamberNb: 0 energy deposit[MeV]: 0.00137532 position[mm]: (168.19,145.804,-1430.49) + trackID: 104 chamberNb: 0 energy deposit[MeV]: 0.00205139 position[mm]: (164.407,141.098,-1432.23) + trackID: 19 chamberNb: 0 energy deposit[MeV]: 0.00706561 position[mm]: (149.732,114.608,-1456.59) + trackID: 18 chamberNb: 0 energy deposit[MeV]: 0.00224778 position[mm]: (139.64,106.242,-1524.69) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.00662412 position[mm]: (134.421,103.261,-1552.3) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.010996 position[mm]: (133.692,103.161,-1552.45) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.00406265 position[mm]: (133.97,102.929,-1552.51) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.00135125 position[mm]: (134.104,103.108,-1552.4) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.00233596 position[mm]: (134.065,103.072,-1552.57) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.00822764 position[mm]: (134.09,103.002,-1552.62) + trackID: 159 chamberNb: 0 energy deposit[MeV]: 0.00174556 position[mm]: (134.074,103.076,-1552.57) + trackID: 158 chamberNb: 0 energy deposit[MeV]: 0.0021656 position[mm]: (134.112,103.118,-1552.41) Collection: Event_3 -Number of hits: 79 - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00382567 position[mm]: (-99.7258,-82.752,-1594.04) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00237107 position[mm]: (-101.403,-84.1563,-1580.28) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00454725 position[mm]: (-103.47,-85.8952,-1563.29) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00514433 position[mm]: (-105.067,-87.2198,-1550.24) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0102991 position[mm]: (-107.732,-89.4255,-1528.48) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.000248083 position[mm]: (-107.975,-89.6309,-1526.48) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00398981 position[mm]: (-108.776,-90.3089,-1519.88) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0394529 position[mm]: (-118.499,-98.4883,-1440.21) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0164277 position[mm]: (-123.469,-102.623,-1400) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0134707 position[mm]: (-200.028,-166.037,-768.817) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0051423 position[mm]: (-202.896,-168.292,-745.258) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0154381 position[mm]: (-206.422,-171.118,-716.057) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0102165 position[mm]: (-209.278,-173.444,-691.908) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.002184 position[mm]: (-210.047,-174.065,-685.428) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 1.44671e-05 position[mm]: (-210.102,-174.11,-684.963) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00207737 position[mm]: (-211.105,-174.923,-676.502) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00467726 position[mm]: (-212.463,-176.021,-665.055) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0068921 position[mm]: (-214.267,-177.469,-650.01) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.000697917 position[mm]: (-214.33,-177.52,-649.49) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0107026 position[mm]: (-217.06,-179.725,-626.966) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0133523 position[mm]: (-220.353,-182.333,-600) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0138814 position[mm]: (-300.209,-244.826,37.4768) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0109261 position[mm]: (-303.544,-247.407,64.051) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0165352 position[mm]: (-309.069,-251.752,107.808) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0112332 position[mm]: (-312.646,-254.51,135.826) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0221168 position[mm]: (-319.902,-260.189,193.357) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00441626 position[mm]: (-320.742,-260.876,200) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00495446 position[mm]: (-391.123,-319.978,819.479) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.000259163 position[mm]: (-391.176,-320.022,819.944) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0321454 position[mm]: (-401.985,-328.875,913.925) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00637101 position[mm]: (-403.863,-330.434,930.106) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0244715 position[mm]: (-411.886,-337.158,1000) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00161163 position[mm]: (-483.187,-396.199,1613.91) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0451237 position[mm]: (-497.946,-408.607,1742.31) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0113323 position[mm]: (-502.583,-412.67,1782.97) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00531649 position[mm]: (-504.541,-414.35,1800) - trackID: 83 chamberNb: 4 energy deposit[MeV]: 0.00617761 position[mm]: (-502.544,-412.627,1782.98) - trackID: 82 chamberNb: 4 energy deposit[MeV]: 0.00495396 position[mm]: (-497.925,-408.645,1742.31) - trackID: 81 chamberNb: 4 energy deposit[MeV]: 0.00185969 position[mm]: (-483.197,-396.193,1613.91) - trackID: 66 chamberNb: 3 energy deposit[MeV]: 0.00641492 position[mm]: (-403.815,-330.475,930.113) - trackID: 65 chamberNb: 3 energy deposit[MeV]: 0.00278431 position[mm]: (-401.967,-328.87,913.929) - trackID: 64 chamberNb: 3 energy deposit[MeV]: 0.00510821 position[mm]: (-390.658,-320.424,820.084) - trackID: 64 chamberNb: 3 energy deposit[MeV]: 0.00695977 position[mm]: (-390.684,-320.117,819.703) - trackID: 64 chamberNb: 3 energy deposit[MeV]: 0.000586732 position[mm]: (-390.755,-319.957,819.782) - trackID: 64 chamberNb: 3 energy deposit[MeV]: 0.00237323 position[mm]: (-390.71,-319.907,819.695) - trackID: 64 chamberNb: 3 energy deposit[MeV]: 0.00536351 position[mm]: (-390.744,-319.926,819.665) - trackID: 99 chamberNb: 3 energy deposit[MeV]: 0.00174904 position[mm]: (-390.718,-319.906,819.702) - trackID: 98 chamberNb: 3 energy deposit[MeV]: 0.00669238 position[mm]: (-390.7,-319.997,819.786) - trackID: 63 chamberNb: 3 energy deposit[MeV]: 0.00632888 position[mm]: (-391.028,-320.052,819.495) - trackID: 63 chamberNb: 3 energy deposit[MeV]: 0.00349164 position[mm]: (-391.01,-320.071,819.497) - trackID: 56 chamberNb: 2 energy deposit[MeV]: 0.00220674 position[mm]: (-319.908,-260.176,193.358) - trackID: 55 chamberNb: 2 energy deposit[MeV]: 0.00830952 position[mm]: (-312.73,-254.469,135.828) - trackID: 54 chamberNb: 2 energy deposit[MeV]: 0.00153226 position[mm]: (-309.077,-251.751,107.808) - trackID: 53 chamberNb: 2 energy deposit[MeV]: 0.00386143 position[mm]: (-303.553,-247.379,64.0546) - trackID: 52 chamberNb: 2 energy deposit[MeV]: 0.0118371 position[mm]: (-300.298,-244.963,37.4709) - trackID: 43 chamberNb: 1 energy deposit[MeV]: 0.0032801 position[mm]: (-216.889,-180.259,-626.903) - trackID: 43 chamberNb: 1 energy deposit[MeV]: 0.00643571 position[mm]: (-216.948,-180.191,-626.501) - trackID: 43 chamberNb: 1 energy deposit[MeV]: 0.00884041 position[mm]: (-216.76,-180.283,-626.396) - trackID: 43 chamberNb: 1 energy deposit[MeV]: 0.00600931 position[mm]: (-216.74,-180.335,-626.407) - trackID: 113 chamberNb: 1 energy deposit[MeV]: 0.00142614 position[mm]: (-216.888,-180.251,-626.904) - trackID: 42 chamberNb: 1 energy deposit[MeV]: 0.00185996 position[mm]: (-214.32,-177.525,-649.489) - trackID: 41 chamberNb: 1 energy deposit[MeV]: 0.00978587 position[mm]: (-214.418,-177.428,-650.007) - trackID: 41 chamberNb: 1 energy deposit[MeV]: 0.00173668 position[mm]: (-214.422,-177.428,-650.016) - trackID: 40 chamberNb: 1 energy deposit[MeV]: 0.00141418 position[mm]: (-212.462,-176.013,-665.054) - trackID: 39 chamberNb: 1 energy deposit[MeV]: 0.00208104 position[mm]: (-211.092,-174.927,-676.5) - trackID: 38 chamberNb: 1 energy deposit[MeV]: 0.00235854 position[mm]: (-210.115,-174.102,-684.963) - trackID: 37 chamberNb: 1 energy deposit[MeV]: 0.00141432 position[mm]: (-210.054,-174.062,-685.429) - trackID: 36 chamberNb: 1 energy deposit[MeV]: 0.00190749 position[mm]: (-209.268,-173.44,-691.906) - trackID: 35 chamberNb: 1 energy deposit[MeV]: 0.00880155 position[mm]: (-206.348,-171.187,-716.045) - trackID: 34 chamberNb: 1 energy deposit[MeV]: 0.00203792 position[mm]: (-202.885,-168.286,-745.256) - trackID: 33 chamberNb: 1 energy deposit[MeV]: 0.00317758 position[mm]: (-200.049,-166.029,-768.817) - trackID: 23 chamberNb: 0 energy deposit[MeV]: 0.00142826 position[mm]: (-118.505,-98.4928,-1440.22) - trackID: 22 chamberNb: 0 energy deposit[MeV]: 0.00435987 position[mm]: (-108.753,-90.3363,-1519.88) - trackID: 21 chamberNb: 0 energy deposit[MeV]: 0.00153782 position[mm]: (-107.971,-89.639,-1526.48) - trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.00688209 position[mm]: (-107.802,-89.4218,-1528.48) - trackID: 19 chamberNb: 0 energy deposit[MeV]: 0.0019833 position[mm]: (-105.059,-87.2293,-1550.24) - trackID: 18 chamberNb: 0 energy deposit[MeV]: 0.00658637 position[mm]: (-103.423,-85.8513,-1563.28) - trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.00276526 position[mm]: (-101.385,-84.1516,-1580.27) - trackID: 16 chamberNb: 0 energy deposit[MeV]: 0.00184853 position[mm]: (-99.7302,-82.7621,-1594.04) +Number of hits: 76 + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00063983 position[mm]: (-120.414,-14.5461,-1596.08) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.003343 position[mm]: (-121.504,-14.6763,-1588.95) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0136996 position[mm]: (-128.804,-15.5083,-1541.07) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.000561319 position[mm]: (-129.462,-15.5897,-1536.66) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.000300811 position[mm]: (-129.721,-15.621,-1534.93) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00475111 position[mm]: (-132.601,-15.9587,-1515.72) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00115915 position[mm]: (-133.188,-16.0262,-1511.82) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0232518 position[mm]: (-142.001,-17.0145,-1453.49) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.000182924 position[mm]: (-142.506,-17.0746,-1450.14) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00393258 position[mm]: (-144.917,-17.357,-1433.99) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0122384 position[mm]: (-149.19,-17.8685,-1405.37) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 5.2971e-05 position[mm]: (-149.247,-17.8762,-1404.99) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00238304 position[mm]: (-149.98,-17.9789,-1400) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00223906 position[mm]: (-240.747,-30.3059,-782.652) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0141067 position[mm]: (-245.55,-30.8832,-749.607) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0301256 position[mm]: (-254.507,-32.0252,-688.132) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00335689 position[mm]: (-256.376,-32.2476,-675.296) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00821278 position[mm]: (-260.681,-32.7851,-645.381) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0283491 position[mm]: (-267.223,-33.5926,-600) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0134658 position[mm]: (-360.459,-47.2096,44.4019) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0444587 position[mm]: (-375.315,-50.2442,147.519) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0173418 position[mm]: (-382.778,-51.6697,200) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0047276 position[mm]: (-470.9,-67.0462,816.598) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00597354 position[mm]: (-473.691,-67.5205,836.488) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00127731 position[mm]: (-474.1,-67.5987,839.401) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00936616 position[mm]: (-475.866,-67.9395,852.023) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.007708 position[mm]: (-480.549,-68.821,885.697) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00471781 position[mm]: (-483.73,-69.4388,908.415) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0322099 position[mm]: (-496.736,-71.8396,1000) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0119852 position[mm]: (-589.356,-86.3514,1629.67) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00523864 position[mm]: (-590.526,-86.5284,1637.51) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0213505 position[mm]: (-596.849,-87.6815,1680.35) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0144222 position[mm]: (-603.102,-88.9811,1722.89) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00568266 position[mm]: (-605.481,-89.4641,1739.06) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0211737 position[mm]: (-614.371,-91.3148,1800) + trackID: 83 chamberNb: 4 energy deposit[MeV]: 0.00641675 position[mm]: (-605.458,-89.5226,1739.07) + trackID: 82 chamberNb: 4 energy deposit[MeV]: 0.00278511 position[mm]: (-603.084,-88.9849,1722.9) + trackID: 81 chamberNb: 4 energy deposit[MeV]: 0.00706838 position[mm]: (-596.824,-87.7497,1680.36) + trackID: 80 chamberNb: 4 energy deposit[MeV]: 0.0057057 position[mm]: (-590.526,-86.4753,1637.51) + trackID: 79 chamberNb: 4 energy deposit[MeV]: 0.00282705 position[mm]: (-589.369,-86.336,1629.67) + trackID: 71 chamberNb: 3 energy deposit[MeV]: 0.00625426 position[mm]: (-483.789,-69.4533,908.412) + trackID: 70 chamberNb: 3 energy deposit[MeV]: 0.0015216 position[mm]: (-480.763,-68.9434,885.698) + trackID: 70 chamberNb: 3 energy deposit[MeV]: 0.00652652 position[mm]: (-480.806,-68.7632,885.911) + trackID: 70 chamberNb: 3 energy deposit[MeV]: 0.0102554 position[mm]: (-480.697,-68.8324,885.913) + trackID: 69 chamberNb: 3 energy deposit[MeV]: 0.00309535 position[mm]: (-475.853,-67.9212,852.027) + trackID: 68 chamberNb: 3 energy deposit[MeV]: 0.00201194 position[mm]: (-474.093,-67.5889,839.403) + trackID: 67 chamberNb: 3 energy deposit[MeV]: 0.00161498 position[mm]: (-473.697,-67.528,836.487) + trackID: 66 chamberNb: 3 energy deposit[MeV]: 0.00252526 position[mm]: (-470.917,-67.0422,816.597) + trackID: 61 chamberNb: 2 energy deposit[MeV]: 0.00431624 position[mm]: (-375.35,-50.246,147.517) + trackID: 60 chamberNb: 2 energy deposit[MeV]: 0.00227664 position[mm]: (-360.446,-47.2047,44.4046) + trackID: 51 chamberNb: 1 energy deposit[MeV]: 0.00181593 position[mm]: (-260.688,-32.777,-645.382) + trackID: 50 chamberNb: 1 energy deposit[MeV]: 0.00199367 position[mm]: (-256.365,-32.243,-675.294) + trackID: 49 chamberNb: 1 energy deposit[MeV]: 0.00173858 position[mm]: (-254.514,-32.032,-688.133) + trackID: 48 chamberNb: 1 energy deposit[MeV]: 0.0030217 position[mm]: (-245.532,-30.8718,-749.603) + trackID: 47 chamberNb: 1 energy deposit[MeV]: 0.00341512 position[mm]: (-240.748,-30.3314,-782.651) + trackID: 39 chamberNb: 0 energy deposit[MeV]: 0.00266374 position[mm]: (-149.249,-17.8583,-1404.99) + trackID: 38 chamberNb: 0 energy deposit[MeV]: 0.00329233 position[mm]: (-149.211,-17.8811,-1405.37) + trackID: 37 chamberNb: 0 energy deposit[MeV]: 0.00140481 position[mm]: (-144.917,-17.365,-1433.99) + trackID: 36 chamberNb: 0 energy deposit[MeV]: 0.00434684 position[mm]: (-142.819,-17.5898,-1450.1) + trackID: 36 chamberNb: 0 energy deposit[MeV]: 0.00678519 position[mm]: (-142.888,-17.1512,-1450.04) + trackID: 36 chamberNb: 0 energy deposit[MeV]: 0.00140032 position[mm]: (-142.968,-17.1894,-1449.88) + trackID: 36 chamberNb: 0 energy deposit[MeV]: 0.00297275 position[mm]: (-142.847,-17.2738,-1449.87) + trackID: 36 chamberNb: 0 energy deposit[MeV]: 0.000613915 position[mm]: (-142.852,-17.2751,-1449.87) + trackID: 36 chamberNb: 0 energy deposit[MeV]: 0.00440299 position[mm]: (-142.887,-17.27,-1449.88) + trackID: 110 chamberNb: 0 energy deposit[MeV]: 0.00194131 position[mm]: (-142.852,-17.2852,-1449.87) + trackID: 109 chamberNb: 0 energy deposit[MeV]: 0.00140345 position[mm]: (-142.847,-17.2813,-1449.86) + trackID: 108 chamberNb: 0 energy deposit[MeV]: 0.0017504 position[mm]: (-142.962,-17.1813,-1449.89) + trackID: 107 chamberNb: 0 energy deposit[MeV]: 0.00137498 position[mm]: (-142.889,-17.1436,-1450.04) + trackID: 35 chamberNb: 0 energy deposit[MeV]: 0.0018129 position[mm]: (-142.009,-17.0219,-1453.49) + trackID: 34 chamberNb: 0 energy deposit[MeV]: 0.00139165 position[mm]: (-133.193,-16.032,-1511.82) + trackID: 33 chamberNb: 0 energy deposit[MeV]: 0.00144333 position[mm]: (-132.608,-15.955,-1515.72) + trackID: 32 chamberNb: 0 energy deposit[MeV]: 0.00228946 position[mm]: (-129.717,-15.6069,-1534.92) + trackID: 31 chamberNb: 0 energy deposit[MeV]: 0.00347389 position[mm]: (-129.466,-15.5641,-1536.66) + trackID: 30 chamberNb: 0 energy deposit[MeV]: 0.00813198 position[mm]: (-128.948,-15.5162,-1541.08) + trackID: 30 chamberNb: 0 energy deposit[MeV]: 0.00287604 position[mm]: (-128.936,-15.5114,-1541.09) + trackID: 29 chamberNb: 0 energy deposit[MeV]: 0.00207912 position[mm]: (-120.411,-14.5339,-1596.08) Collection: Event_4 -Number of hits: 73 - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00583125 position[mm]: (0.934225,-174.362,-1579.27) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0250634 position[mm]: (0.906608,-186.462,-1521.95) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0109858 position[mm]: (0.928064,-192.897,-1491.67) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00485702 position[mm]: (0.955759,-196.258,-1475.83) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00250786 position[mm]: (0.968209,-197.762,-1468.69) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0150517 position[mm]: (1.04422,-204.042,-1438.65) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0108877 position[mm]: (1.1221,-212.17,-1400) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.014411 position[mm]: (1.36405,-345.964,-771.541) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00100178 position[mm]: (1.37422,-346.723,-768.036) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0250781 position[mm]: (1.5768,-363.236,-691.729) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0130947 position[mm]: (1.70737,-372.479,-648.42) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0161016 position[mm]: (1.84485,-381.151,-607.769) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00278819 position[mm]: (1.88905,-382.816,-600) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00332612 position[mm]: (5.35867,-514.879,15.1132) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00512566 position[mm]: (5.41624,-516.921,24.5723) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00354829 position[mm]: (5.5001,-519.576,36.8395) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0645978 position[mm]: (6.36566,-551.184,183.505) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00135696 position[mm]: (6.39214,-551.869,186.688) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00161013 position[mm]: (6.43667,-553.111,192.452) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00300852 position[mm]: (6.49343,-554.741,200) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00223687 position[mm]: (10.6243,-685.008,805.905) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00332692 position[mm]: (10.6966,-687.088,815.572) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0259686 position[mm]: (11.198,-701.228,881.4) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0113315 position[mm]: (11.513,-707.084,908.725) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0322437 position[mm]: (12.3388,-726.558,1000) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00795127 position[mm]: (19.1951,-855.93,1617.21) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0042716 position[mm]: (19.3036,-857.986,1627.04) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0369122 position[mm]: (20.121,-874.129,1704.48) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00673437 position[mm]: (20.3187,-877.362,1720.07) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0123835 position[mm]: (20.6221,-881.504,1739.96) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.010272 position[mm]: (20.9782,-886.968,1766.28) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0131004 position[mm]: (21.3661,-893.979,1800) - trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.00306822 position[mm]: (20.9965,-886.98,1766.28) - trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.0227679 position[mm]: (55.9051,-880.188,1771.38) - trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.000195108 position[mm]: (54.684,-880.391,1774.09) - trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.0196791 position[mm]: (43.134,-879.032,1799.42) - trackID: 65 chamberNb: 4 energy deposit[MeV]: 1.71746e-05 position[mm]: (43.1464,-879.016,1800) - trackID: 88 chamberNb: 4 energy deposit[MeV]: 0.00246309 position[mm]: (43.1503,-879.032,1799.42) - trackID: 87 chamberNb: 4 energy deposit[MeV]: 0.00358725 position[mm]: (54.7043,-880.405,1774.1) - trackID: 86 chamberNb: 4 energy deposit[MeV]: 0.00304139 position[mm]: (55.8984,-880.168,1771.38) - trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00337623 position[mm]: (20.207,-877.225,1720.12) - trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00713594 position[mm]: (20.1385,-877.218,1720.09) - trackID: 117 chamberNb: 4 energy deposit[MeV]: 0.00255593 position[mm]: (20.2083,-877.208,1720.12) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00304538 position[mm]: (20.1236,-874.15,1704.47) - trackID: 62 chamberNb: 4 energy deposit[MeV]: 0.00102613 position[mm]: (19.3473,-858.02,1627.04) - trackID: 62 chamberNb: 4 energy deposit[MeV]: 0.00341998 position[mm]: (19.3638,-858.037,1627.03) - trackID: 118 chamberNb: 4 energy deposit[MeV]: 0.00185542 position[mm]: (19.3541,-858.018,1627.05) - trackID: 61 chamberNb: 4 energy deposit[MeV]: 0.00185012 position[mm]: (19.2011,-855.94,1617.21) - trackID: 54 chamberNb: 3 energy deposit[MeV]: 0.00172734 position[mm]: (11.5088,-707.075,908.727) - trackID: 53 chamberNb: 3 energy deposit[MeV]: 0.00159936 position[mm]: (11.1924,-701.221,881.402) - trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.00151185 position[mm]: (10.6903,-687.082,815.573) - trackID: 51 chamberNb: 3 energy deposit[MeV]: 0.00204216 position[mm]: (10.6339,-685.016,805.904) - trackID: 44 chamberNb: 2 energy deposit[MeV]: 0.00222782 position[mm]: (6.36728,-553.086,192.465) - trackID: 44 chamberNb: 2 energy deposit[MeV]: 0.00349511 position[mm]: (6.37559,-553.106,192.479) - trackID: 120 chamberNb: 2 energy deposit[MeV]: 0.00146071 position[mm]: (6.36167,-553.091,192.461) - trackID: 43 chamberNb: 2 energy deposit[MeV]: 0.00586975 position[mm]: (6.4474,-551.867,186.692) - trackID: 42 chamberNb: 2 energy deposit[MeV]: 0.00406187 position[mm]: (6.33382,-551.191,183.506) - trackID: 41 chamberNb: 2 energy deposit[MeV]: 0.00332391 position[mm]: (5.49653,-519.553,36.8461) - trackID: 40 chamberNb: 2 energy deposit[MeV]: 0.00307809 position[mm]: (5.41461,-516.942,24.5689) - trackID: 39 chamberNb: 2 energy deposit[MeV]: 0.00174401 position[mm]: (5.3579,-514.889,15.1114) - trackID: 35 chamberNb: 1 energy deposit[MeV]: 0.00230399 position[mm]: (1.83416,-381.142,-607.767) - trackID: 34 chamberNb: 1 energy deposit[MeV]: 0.00142469 position[mm]: (1.71543,-372.478,-648.42) - trackID: 33 chamberNb: 1 energy deposit[MeV]: 0.0110115 position[mm]: (1.47461,-363.139,-691.692) - trackID: 32 chamberNb: 1 energy deposit[MeV]: 0.00249452 position[mm]: (1.35949,-346.731,-768.037) - trackID: 31 chamberNb: 1 energy deposit[MeV]: 0.00147982 position[mm]: (1.36453,-345.972,-771.543) - trackID: 27 chamberNb: 0 energy deposit[MeV]: 0.0020617 position[mm]: (1.05373,-204.051,-1438.65) - trackID: 26 chamberNb: 0 energy deposit[MeV]: 0.00177407 position[mm]: (0.977244,-197.767,-1468.69) - trackID: 25 chamberNb: 0 energy deposit[MeV]: 0.00186448 position[mm]: (0.962875,-196.25,-1475.83) - trackID: 24 chamberNb: 0 energy deposit[MeV]: 0.00271708 position[mm]: (0.913655,-192.886,-1491.67) - trackID: 23 chamberNb: 0 energy deposit[MeV]: 0.00331228 position[mm]: (0.929574,-186.454,-1521.95) - trackID: 22 chamberNb: 0 energy deposit[MeV]: 0.0011459 position[mm]: (0.959409,-174.327,-1579.26) - trackID: 22 chamberNb: 0 energy deposit[MeV]: 0.00269771 position[mm]: (0.954981,-174.331,-1579.25) - trackID: 121 chamberNb: 0 energy deposit[MeV]: 0.0015507 position[mm]: (0.964617,-174.334,-1579.26) +Number of hits: 51 + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00444723 position[mm]: (167.533,-151.88,-1579.39) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0356887 position[mm]: (182.458,-165.151,-1505.08) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0162152 position[mm]: (190.231,-172.42,-1466.12) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0291695 position[mm]: (203.492,-184.774,-1400) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0539454 position[mm]: (345.472,-319.383,-678.362) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00196135 position[mm]: (346.099,-319.995,-675.186) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00925073 position[mm]: (352.249,-326.005,-644.028) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.00569399 position[mm]: (354.617,-328.323,-631.93) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0218921 position[mm]: (360.718,-334.309,-600.641) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 9.87977e-05 position[mm]: (360.843,-334.43,-600) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00150356 position[mm]: (479.09,-449.142,6.59333) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0159262 position[mm]: (483.777,-453.795,30.829) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0256085 position[mm]: (496.937,-466.632,97.8461) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0157697 position[mm]: (503.564,-473.071,131.576) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00278036 position[mm]: (504.611,-474.102,136.883) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00778454 position[mm]: (509.399,-478.825,161.166) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00284306 position[mm]: (510.8,-480.209,168.269) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0104867 position[mm]: (515.782,-485.167,193.628) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00443735 position[mm]: (517.038,-486.431,200) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0337138 position[mm]: (649.941,-619.484,874.597) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0281463 position[mm]: (662.264,-631.752,936.795) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0191905 position[mm]: (674.433,-644.14,1000) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0239221 position[mm]: (799.909,-768.606,1648.97) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00102233 position[mm]: (800.588,-769.272,1652.43) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0258475 position[mm]: (815.343,-783.761,1727.7) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0134244 position[mm]: (823.638,-791.881,1770.43) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0124202 position[mm]: (829.385,-797.492,1800) + trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.0014251 position[mm]: (823.643,-791.875,1770.43) + trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.00671336 position[mm]: (815.205,-783.766,1727.74) + trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.00430128 position[mm]: (815.212,-783.772,1727.78) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00249524 position[mm]: (800.583,-769.287,1652.43) + trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00148025 position[mm]: (799.915,-768.611,1648.97) + trackID: 54 chamberNb: 3 energy deposit[MeV]: 0.00268186 position[mm]: (662.282,-631.753,936.792) + trackID: 53 chamberNb: 3 energy deposit[MeV]: 0.00207626 position[mm]: (649.952,-619.49,874.594) + trackID: 45 chamberNb: 2 energy deposit[MeV]: 0.00209725 position[mm]: (515.775,-485.178,193.628) + trackID: 44 chamberNb: 2 energy deposit[MeV]: 0.00298553 position[mm]: (510.803,-480.188,168.273) + trackID: 43 chamberNb: 2 energy deposit[MeV]: 0.00215999 position[mm]: (509.404,-478.813,161.168) + trackID: 42 chamberNb: 2 energy deposit[MeV]: 0.00178289 position[mm]: (504.601,-474.102,136.886) + trackID: 41 chamberNb: 2 energy deposit[MeV]: 0.00342902 position[mm]: (503.589,-473.068,131.573) + trackID: 40 chamberNb: 2 energy deposit[MeV]: 0.00142142 position[mm]: (496.929,-466.634,97.8476) + trackID: 39 chamberNb: 2 energy deposit[MeV]: 0.00161399 position[mm]: (483.778,-453.804,30.8275) + trackID: 38 chamberNb: 2 energy deposit[MeV]: 0.00180984 position[mm]: (479.091,-449.152,6.59161) + trackID: 31 chamberNb: 1 energy deposit[MeV]: 0.00166916 position[mm]: (360.713,-334.318,-600.641) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0014142 position[mm]: (354.616,-328.315,-631.928) + trackID: 29 chamberNb: 1 energy deposit[MeV]: 0.00176411 position[mm]: (352.246,-326.014,-644.029) + trackID: 28 chamberNb: 1 energy deposit[MeV]: 0.00358304 position[mm]: (346.09,-319.956,-675.173) + trackID: 28 chamberNb: 1 energy deposit[MeV]: 0.00128193 position[mm]: (346.093,-319.952,-675.168) + trackID: 27 chamberNb: 1 energy deposit[MeV]: 0.00691839 position[mm]: (345.534,-319.348,-678.361) + trackID: 19 chamberNb: 0 energy deposit[MeV]: 0.00139477 position[mm]: (190.225,-172.415,-1466.12) + trackID: 18 chamberNb: 0 energy deposit[MeV]: 0.00140429 position[mm]: (182.464,-165.145,-1505.08) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.00230276 position[mm]: (167.519,-151.884,-1579.38) diff --git a/examples/extended/persistency/P01/p01-write.out b/examples/extended/persistency/P01/p01-write.out index 7c84cbd6af..63e2f92a43 100644 --- a/examples/extended/persistency/P01/p01-write.out +++ b/examples/extended/persistency/P01/p01-write.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-04 (30-April-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -28,10 +28,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -106,7 +108,7 @@ The materials defined are : ---> Isotope: Xe128 Z = 54 N = 128 A = 127.90 g/mole abundance: 1.920 % ---> Isotope: Xe129 Z = 54 N = 129 A = 128.91 g/mole abundance: 26.440 % ---> Isotope: Xe130 Z = 54 N = 130 A = 129.90 g/mole abundance: 4.080 % - ---> Isotope: Xe131 Z = 54 N = 131 A = 130.90 g/mole abundance: 21.180 % + ---> Isotope: Xe131 Z = 54 N = 131 A = 130.91 g/mole abundance: 21.180 % ---> Isotope: Xe132 Z = 54 N = 132 A = 131.90 g/mole abundance: 26.890 % ---> Isotope: Xe134 Z = 54 N = 134 A = 133.91 g/mole abundance: 10.440 % ---> Isotope: Xe136 Z = 54 N = 136 A = 135.91 g/mole abundance: 8.870 % @@ -119,7 +121,7 @@ There are 5 chambers in the tracker region. The chambers are 200 mm of XenonGas The distance between chamber is 80 cm 1 CalorimeterSD name: ExP01/TrackerChamberSD collection Name: ExP01/TrackerChamberSD_HC - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -150,10 +152,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -177,10 +180,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -208,9 +212,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -224,14 +228,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -240,9 +244,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -254,9 +258,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -267,9 +271,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -283,14 +287,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -299,9 +303,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -315,14 +319,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -331,9 +335,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -347,14 +351,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -363,9 +367,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -380,14 +384,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -396,9 +400,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -413,14 +417,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -429,9 +433,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -445,14 +449,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -461,9 +465,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -477,14 +481,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -513,37 +517,59 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon Process: ionInelastic Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n Model: FTFP: 3 GeV/n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV --------------------------------------------------- Hadronic Processes for He3 Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV Process: He3Inelastic Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n Model: FTFP: 3 GeV/n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV --------------------------------------------------- Hadronic Processes for alpha Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV Process: alphaInelastic Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n Model: FTFP: 3 GeV/n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV --------------------------------------------------- Hadronic Processes for anti_He3 @@ -551,11 +577,11 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_He3Inelastic Model: FTFP: 0 eV /n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -565,11 +591,11 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_alphaInelastic Model: FTFP: 0 eV /n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -579,11 +605,24 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_deuteronInelastic Model: FTFP: 0 eV /n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + + Process: hFritiofCaptureAtRest + +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hFritiofCaptureAtRest @@ -593,11 +632,11 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV ---> 100.1 MeV Model: AntiAElastic: 100 MeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_neutronInelastic Model: FTFP: 0 eV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -607,11 +646,11 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV ---> 100.1 MeV Model: AntiAElastic: 100 MeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_protonInelastic Model: FTFP: 0 eV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -621,11 +660,11 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100.1 MeV/n Model: AntiAElastic: 100 MeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_tritonInelastic Model: FTFP: 0 eV /n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 100 TeV + Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -634,12 +673,12 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV Process: dInelastic Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n Model: FTFP: 3 GeV/n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV --------------------------------------------------- Hadronic Processes for e+ @@ -698,8 +737,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -756,17 +795,31 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV +--------------------------------------------------- + Hadronic Processes for sigma- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: sigma-Inelastic + Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hBertiniCaptureAtRest + --------------------------------------------------- Hadronic Processes for triton Process: hadElastic Model: hElasticLHEP: 0 eV /n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV Process: tInelastic Model: Binary Light Ion Cascade: 0 eV /n ---> 6 GeV/n Model: FTFP: 3 GeV/n ---> 100 TeV/n - Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV ================================================================ ======================================================================= @@ -792,7 +845,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= Region -- -- appears in world volume @@ -808,7 +860,7 @@ Region -- -- is not associated to any world. Materials : Production cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um -========= Table of registered couples ============================== +========= Table of registered couples ============================ Index : 0 used in the geometry : Yes Material : Air @@ -820,18 +872,18 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Lead Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 94.7372 keV e- 1.00768 MeV e+ 948.734 keV proton 70 keV + Energy thresholds : gamma 94.5861 keV e- 1.00386 MeV e+ 951.321 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : XenonGas Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 990 eV e- 1.36806 keV e+ 1.33293 keV proton 70 keV + Energy thresholds : gamma 990 eV e- 1.36845 keV e+ 1.34483 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld -==================================================================== +================================================================== Start closing geometry. G4GeometryManager::ReportVoxelStats -- Voxel Statistics @@ -865,961 +917,1049 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng 0 0 fm 0 fm -2.91 m 3 GeV 0 eV 0 fm 0 fm World initStep 1 0 fm 0 fm -2.71 m 3 GeV 27.9 keV 20.1 cm 20.1 cm World hIoni 2 3.61 um -4.61 um -2.64 m 3 GeV 11.1 keV 6.92 cm 27 cm World hIoni - 3 4.2 um -5.58 um -2.63 m 3 GeV 789 eV 1.01 cm 28 cm World hIoni - 4 4.37 um -5.95 um -2.63 m 3 GeV 587 eV 3.25 mm 28.4 cm World hIoni + 3 4.2 um -5.58 um -2.63 m 3 GeV 813 eV 1.01 cm 28 cm World hIoni + 4 4.37 um -5.95 um -2.63 m 3 GeV 597 eV 3.25 mm 28.4 cm World hIoni 5 14.1 um -22.6 um -2.45 m 3 GeV 20.6 keV 17.6 cm 46 cm World Transportation - 6 14.2 um -22.7 um -2.45 m 3 GeV 757 keV 719 um 46.1 cm Target CoulombScat - 7 56.2 um -21.7 um -2.45 m 2.99 GeV 3.58 MeV 3.16 mm 46.4 cm Target hIoni - 8 106 um -15 um -2.44 m 2.99 GeV 4 MeV 3.59 mm 46.7 cm Target hIoni - 9 328 um -45.8 um -2.42 m 2.96 GeV 24 MeV 1.9 cm 48.6 cm Target hIoni - 10 326 um -41.3 um -2.42 m 2.96 GeV 1.8 MeV 1.55 mm 48.8 cm Target hIoni - 11 322 um -33.5 um -2.42 m 2.96 GeV 3.85 MeV 3.49 mm 49.1 cm Target hIoni - 12 316 um -24.1 um -2.41 m 2.95 GeV 5.35 MeV 5.54 mm 49.7 cm Target hIoni - 13 285 um -44.7 um -2.4 m 2.93 GeV 15.3 MeV 1.3 cm 51 cm Target Transportation - 14 -83.8 um 41.8 um -2.38 m 2.93 GeV 2.12 keV 2.27 cm 53.3 cm Tracker hIoni - 15 -2.32 mm 568 um -2.24 m 2.93 GeV 19.7 keV 13.8 cm 67 cm Tracker hIoni - 16 -6.57 mm 1.56 mm -1.98 m 2.93 GeV 44.9 keV 26.2 cm 93.2 cm Tracker hIoni - 17 -9.21 mm 2.18 mm -1.82 m 2.93 GeV 26.3 keV 16.3 cm 1.09 m Tracker hIoni - 18 -9.86 mm 2.33 mm -1.78 m 2.93 GeV 3.58 keV 3.98 cm 1.13 m Tracker hIoni - 19 -1.01 cm 2.39 mm -1.76 m 2.93 GeV 1.98 keV 1.6 cm 1.15 m Tracker hIoni - 20 -1.16 cm 2.73 mm -1.67 m 2.93 GeV 16.1 keV 8.89 cm 1.24 m Tracker hIoni - 21 -1.27 cm 3 mm -1.6 m 2.93 GeV 7.35 keV 7.05 cm 1.31 m Tracker Transportation - 22 -1.29 cm 3.05 mm -1.59 m 2.93 GeV 6.67 keV 1.35 cm 1.32 m Chamber hIoni - 23 -1.5 cm 3.52 mm -1.46 m 2.93 GeV 48.1 keV 12.8 cm 1.45 m Chamber hIoni - 24 -1.54 cm 3.62 mm -1.43 m 2.93 GeV 9.39 keV 2.68 cm 1.48 m Chamber hIoni - 25 -1.54 cm 3.63 mm -1.43 m 2.93 GeV 1.26 keV 2.98 mm 1.48 m Chamber hIoni - 26 -1.59 cm 3.74 mm -1.4 m 2.93 GeV 13.1 keV 2.92 cm 1.51 m Chamber Transportation - 27 -1.68 cm 3.95 mm -1.35 m 2.93 GeV 10.2 keV 5.44 cm 1.56 m Tracker hIoni - 28 -1.71 cm 4.01 mm -1.33 m 2.93 GeV 3.57 keV 1.78 cm 1.58 m Tracker hIoni - 29 -2 cm 4.7 mm -1.15 m 2.93 GeV 25.9 keV 18.1 cm 1.76 m Tracker hIoni - 30 -2.3 cm 5.41 mm -96.2 cm 2.93 GeV 29.3 keV 18.5 cm 1.95 m Tracker hIoni - 31 -2.33 cm 5.48 mm -94.3 cm 2.93 GeV 1.92 keV 1.92 cm 1.97 m Tracker hIoni - 32 -2.4 cm 5.65 mm -89.8 cm 2.93 GeV 6.19 keV 4.47 cm 2.01 m Tracker hIoni - 33 -2.56 cm 6.02 mm -80 cm 2.93 GeV 14.8 keV 9.8 cm 2.11 m Tracker Transportation - 34 -2.66 cm 6.26 mm -73.4 cm 2.93 GeV 23.7 keV 6.58 cm 2.18 m Chamber hIoni - 35 -2.67 cm 6.27 mm -73.1 cm 2.93 GeV 1.31 keV 2.95 mm 2.18 m Chamber hIoni - 36 -2.68 cm 6.3 mm -72.4 cm 2.93 GeV 3.08 keV 7.05 mm 2.19 m Chamber hIoni - 37 -2.69 cm 6.32 mm -71.8 cm 2.93 GeV 2.99 keV 6.61 mm 2.19 m Chamber hIoni - 38 -2.82 cm 6.64 mm -63.7 cm 2.93 GeV 25.8 keV 8.03 cm 2.27 m Chamber hIoni - 39 -2.84 cm 6.68 mm -62.8 cm 2.93 GeV 5.06 keV 9.81 mm 2.28 m Chamber hIoni - 40 -2.87 cm 6.75 mm -60.9 cm 2.93 GeV 5.42 keV 1.81 cm 2.3 m Chamber hIoni - 41 -2.88 cm 6.79 mm -60 cm 2.93 GeV 1.69 keV 9.46 mm 2.31 m Chamber Transportation - 42 -3.01 cm 7.11 mm -51.8 cm 2.93 GeV 19.2 keV 8.17 cm 2.39 m Tracker hIoni - 43 -3.12 cm 7.35 mm -45.5 cm 2.93 GeV 7.91 keV 6.33 cm 2.46 m Tracker hIoni - 44 -3.22 cm 7.6 mm -39.2 cm 2.93 GeV 11.6 keV 6.33 cm 2.52 m Tracker hIoni - 45 -3.25 cm 7.67 mm -37.4 cm 2.93 GeV 2.61 keV 1.74 cm 2.54 m Tracker hIoni - 46 -3.27 cm 7.73 mm -36 cm 2.93 GeV 1.5 keV 1.44 cm 2.55 m Tracker hIoni - 47 -3.43 cm 8.12 mm -26 cm 2.93 GeV 15.5 keV 10 cm 2.65 m Tracker hIoni - 48 -3.85 cm 9.13 mm -0.0568 fm 2.93 GeV 34.5 keV 26 cm 2.91 m Tracker Transportation - 49 -3.98 cm 9.44 mm 7.79 cm 2.93 GeV 30.2 keV 7.79 cm 2.99 m Chamber hIoni - 50 -3.99 cm 9.47 mm 8.61 cm 2.93 GeV 683 eV 8.22 mm 3 m Chamber hIoni - 51 -4.03 cm 9.56 mm 11 cm 2.93 GeV 8.42 keV 2.4 cm 3.02 m Chamber hIoni - 52 -4.04 cm 9.58 mm 11.3 cm 2.93 GeV 294 eV 3.18 mm 3.02 m Chamber hIoni - 53 -4.05 cm 9.62 mm 12.3 cm 2.93 GeV 4.79 keV 9.73 mm 3.03 m Chamber hIoni - 54 -4.07 cm 9.65 mm 13.1 cm 2.93 GeV 1.33 keV 8.39 mm 3.04 m Chamber hIoni - 55 -4.18 cm 9.93 mm 20 cm 2.93 GeV 28 keV 6.86 cm 3.11 m Chamber Transportation - 56 -4.26 cm 1.01 cm 25.5 cm 2.93 GeV 7.5 keV 5.48 cm 3.17 m Tracker hIoni - 57 -4.53 cm 1.08 cm 42.3 cm 2.93 GeV 22 keV 16.8 cm 3.33 m Tracker hIoni - 58 -4.87 cm 1.16 cm 63 cm 2.93 GeV 30.8 keV 20.8 cm 3.54 m Tracker hIoni - 59 -5.07 cm 1.21 cm 75.5 cm 2.93 GeV 20.1 keV 12.4 cm 3.67 m Tracker hIoni - 60 -5.13 cm 1.22 cm 79.3 cm 2.93 GeV 7.04 keV 3.78 cm 3.7 m Tracker hIoni - 61 -5.13 cm 1.22 cm 79.6 cm 2.93 GeV 541 eV 3.51 mm 3.71 m Tracker hIoni - 62 -5.14 cm 1.22 cm 80 cm 2.93 GeV 296 eV 3.88 mm 3.71 m Tracker Transportation - 63 -5.27 cm 1.25 cm 88 cm 2.93 GeV 20.5 keV 8.02 cm 3.79 m Chamber hIoni - 64 -5.36 cm 1.28 cm 93.8 cm 2.93 GeV 20.8 keV 5.76 cm 3.85 m Chamber hIoni - 65 -5.46 cm 1.3 cm 1 m 2.93 GeV 15.8 keV 6.22 cm 3.91 m Chamber Transportation - 66 -5.49 cm 1.31 cm 1.02 m 2.93 GeV 1.82 keV 1.66 cm 3.93 m Tracker hIoni - 67 -5.54 cm 1.32 cm 1.05 m 2.93 GeV 3.68 keV 2.84 cm 3.96 m Tracker hIoni - 68 -5.58 cm 1.33 cm 1.07 m 2.93 GeV 4.17 keV 2.41 cm 3.98 m Tracker hIoni - 69 -5.64 cm 1.34 cm 1.1 m 2.93 GeV 4.44 keV 3.54 cm 4.01 m Tracker hIoni - 70 -5.75 cm 1.37 cm 1.17 m 2.93 GeV 10.2 keV 6.52 cm 4.08 m Tracker hIoni - 71 -5.8 cm 1.38 cm 1.2 m 2.93 GeV 6.04 keV 2.99 cm 4.11 m Tracker hIoni - 72 -5.82 cm 1.38 cm 1.22 m 2.93 GeV 2.02 keV 1.64 cm 4.13 m Tracker hIoni - 73 -5.87 cm 1.4 cm 1.25 m 2.93 GeV 4.67 keV 3 cm 4.16 m Tracker hIoni - 74 -5.98 cm 1.42 cm 1.31 m 2.93 GeV 6.09 keV 6.71 cm 4.22 m Tracker hIoni - 75 -6.45 cm 1.53 cm 1.6 m 2.93 GeV 47.8 keV 28.7 cm 4.51 m Tracker Transportation - 76 -6.58 cm 1.56 cm 1.68 m 2.93 GeV 22.7 keV 7.58 cm 4.59 m Chamber hIoni - 77 -6.64 cm 1.58 cm 1.71 m 2.93 GeV 11.7 keV 3.53 cm 4.62 m Chamber hIoni - 78 -6.7 cm 1.59 cm 1.75 m 2.93 GeV 15.6 keV 4.04 cm 4.66 m Chamber hIoni - 79 -6.76 cm 1.61 cm 1.79 m 2.93 GeV 14 keV 3.64 cm 4.7 m Chamber hIoni - 80 -6.78 cm 1.61 cm 1.8 m 2.93 GeV 4.77 keV 1.21 cm 4.71 m Chamber Transportation - 81 -7.16 cm 1.71 cm 2.03 m 2.93 GeV 33.2 keV 23.4 cm 4.95 m Tracker hIoni - 82 -7.32 cm 1.75 cm 2.14 m 2.93 GeV 14.8 keV 10.6 cm 5.05 m Tracker hIoni - 83 -7.42 cm 1.78 cm 2.2 m 2.93 GeV 7.01 keV 6.17 cm 5.11 m Tracker hIoni - 84 -7.65 cm 1.84 cm 2.34 m 2.93 GeV 21.8 keV 14.1 cm 5.25 m Tracker hIoni - 85 -7.68 cm 1.85 cm 2.36 m 2.93 GeV 2.31 keV 1.84 cm 5.27 m Tracker hIoni - 86 -7.74 cm 1.86 cm 2.4 m 2.93 GeV 6.82 keV 3.86 cm 5.31 m Tracker Transportation - 87 -7.77 cm 1.87 cm 2.42 m 2.93 GeV 2.4 keV 2.04 cm 5.33 m World hIoni - 88 -7.89 cm 1.91 cm 2.5 m 2.93 GeV 10.6 keV 7.84 cm 5.41 m World hIoni - 89 -8.1 cm 1.96 cm 2.63 m 2.93 GeV 15.8 keV 13 cm 5.54 m World hIoni - 90 -8.55 cm 2.08 cm 2.91 m 2.93 GeV 37.9 keV 28.2 cm 5.82 m OutOfWorld Transportation + 6 14.2 um -22.8 um -2.45 m 3 GeV 757 keV 719 um 46.1 cm Target CoulombScat + 7 55.9 um -21.7 um -2.45 m 2.99 GeV 3.56 MeV 3.14 mm 46.4 cm Target hIoni + 8 105 um -15 um -2.44 m 2.99 GeV 3.98 MeV 3.57 mm 46.7 cm Target hIoni + 9 326 um -45.6 um -2.42 m 2.96 GeV 23.9 MeV 1.89 cm 48.6 cm Target hIoni + 10 325 um -41.2 um -2.42 m 2.96 GeV 1.79 MeV 1.54 mm 48.8 cm Target hIoni + 11 320 um -33.4 um -2.42 m 2.96 GeV 3.83 MeV 3.48 mm 49.1 cm Target hIoni + 12 315 um -24.1 um -2.41 m 2.95 GeV 5.32 MeV 5.51 mm 49.7 cm Target hIoni + 13 284 um -44.8 um -2.4 m 2.93 GeV 15.5 MeV 1.32 cm 51 cm Target Transportation + 14 -67.4 um 39.3 um -2.38 m 2.93 GeV 2.13 keV 2.15 cm 53.2 cm Tracker hIoni + 15 -2.31 mm 579 um -2.24 m 2.93 GeV 19.7 keV 13.8 cm 66.9 cm Tracker hIoni + 16 -6.58 mm 1.6 mm -1.98 m 2.93 GeV 44.9 keV 26.2 cm 93.1 cm Tracker hIoni + 17 -9.23 mm 2.23 mm -1.82 m 2.93 GeV 26.3 keV 16.3 cm 1.09 m Tracker hIoni + 18 -9.88 mm 2.39 mm -1.78 m 2.93 GeV 3.55 keV 3.98 cm 1.13 m Tracker hIoni + 19 -1.01 cm 2.45 mm -1.76 m 2.93 GeV 2.02 keV 1.6 cm 1.15 m Tracker hIoni + 20 -1.16 cm 2.8 mm -1.67 m 2.93 GeV 16.1 keV 8.89 cm 1.24 m Tracker hIoni + 21 -1.28 cm 3.07 mm -1.6 m 2.93 GeV 7.48 keV 7.17 cm 1.31 m Tracker Transportation + 22 -1.3 cm 3.13 mm -1.59 m 2.93 GeV 6.82 keV 1.3 cm 1.32 m Chamber hIoni + 23 -1.5 cm 3.61 mm -1.46 m 2.93 GeV 48.1 keV 12.8 cm 1.45 m Chamber hIoni + 24 -1.54 cm 3.71 mm -1.43 m 2.93 GeV 9.72 keV 2.68 cm 1.48 m Chamber hIoni + 25 -1.55 cm 3.72 mm -1.43 m 2.93 GeV 1.26 keV 2.98 mm 1.48 m Chamber hIoni + 26 -1.6 cm 3.84 mm -1.4 m 2.93 GeV 13.8 keV 2.96 cm 1.51 m Chamber Transportation + 27 -1.68 cm 4.05 mm -1.35 m 2.93 GeV 10.1 keV 5.34 cm 1.56 m Tracker hIoni + 28 -1.71 cm 4.12 mm -1.33 m 2.93 GeV 3.5 keV 1.78 cm 1.58 m Tracker hIoni + 29 -2.01 cm 4.82 mm -1.15 m 2.93 GeV 25.9 keV 18.1 cm 1.76 m Tracker hIoni + 30 -2.31 cm 5.55 mm -96.3 cm 2.93 GeV 29.3 keV 18.5 cm 1.95 m Tracker hIoni + 31 -2.34 cm 5.62 mm -94.4 cm 2.93 GeV 1.83 keV 1.92 cm 1.97 m Tracker hIoni + 32 -2.41 cm 5.8 mm -89.9 cm 2.93 GeV 6.19 keV 4.47 cm 2.01 m Tracker hIoni + 33 -2.57 cm 6.18 mm -80 cm 2.93 GeV 14.9 keV 9.9 cm 2.11 m Tracker Transportation + 34 -2.67 cm 6.42 mm -73.5 cm 2.93 GeV 24.2 keV 6.54 cm 2.18 m Chamber hIoni + 35 -2.68 cm 6.43 mm -73.2 cm 2.93 GeV 1.36 keV 2.95 mm 2.18 m Chamber hIoni + 36 -2.69 cm 6.46 mm -72.5 cm 2.93 GeV 3.15 keV 7.05 mm 2.19 m Chamber hIoni + 37 -2.7 cm 6.49 mm -71.8 cm 2.93 GeV 3.03 keV 6.61 mm 2.19 m Chamber hIoni + 38 -2.83 cm 6.82 mm -63.8 cm 2.93 GeV 34.8 keV 8.03 cm 2.27 m Chamber hIoni + 39 -2.87 cm 6.91 mm -61.4 cm 2.93 GeV 8.35 keV 2.38 cm 2.3 m Chamber hIoni + 40 -2.89 cm 6.96 mm -60 cm 2.93 GeV 4.86 keV 1.39 cm 2.31 m Chamber Transportation + 41 -3.07 cm 7.37 mm -49.2 cm 2.93 GeV 15.2 keV 10.8 cm 2.42 m Tracker hIoni + 42 -3.54 cm 8.46 mm -20 cm 2.93 GeV 45.9 keV 29.2 cm 2.71 m Tracker hIoni + 43 -3.71 cm 8.85 mm -9.87 cm 2.93 GeV 12.4 keV 10.1 cm 2.81 m Tracker hIoni + 44 -3.71 cm 8.86 mm -9.59 cm 2.93 GeV 0 eV 2.85 mm 2.81 m Tracker hIoni + 45 -3.74 cm 8.92 mm -8.05 cm 2.93 GeV 1.26 keV 1.54 cm 2.83 m Tracker hIoni + 46 -3.87 cm 9.23 mm 0.0142 fm 2.93 GeV 10.9 keV 8.05 cm 2.91 m Tracker Transportation + 47 -4.02 cm 9.59 mm 9.11 cm 2.93 GeV 38 keV 9.11 cm 3 m Chamber hIoni + 48 -4.06 cm 9.7 mm 11.9 cm 2.93 GeV 15.8 keV 2.77 cm 3.03 m Chamber hIoni + 49 -4.1 cm 9.8 mm 14.3 cm 2.93 GeV 9.43 keV 2.45 cm 3.05 m Chamber hIoni + 50 -4.14 cm 9.89 mm 16.7 cm 2.93 GeV 8.57 keV 2.4 cm 3.08 m Chamber hIoni + 51 -4.15 cm 9.9 mm 17.1 cm 2.93 GeV 294 eV 3.18 mm 3.08 m Chamber hIoni + 52 -4.16 cm 9.94 mm 18 cm 2.93 GeV 4.97 keV 9.73 mm 3.09 m Chamber hIoni + 53 -4.18 cm 9.98 mm 18.9 cm 2.93 GeV 1.33 keV 8.4 mm 3.1 m Chamber hIoni + 54 -4.19 cm 1 cm 20 cm 2.93 GeV 4.55 keV 1.13 cm 3.11 m Chamber Transportation + 55 -4.51 cm 1.08 cm 39.9 cm 2.93 GeV 31.7 keV 19.9 cm 3.31 m Tracker hIoni + 56 -4.78 cm 1.15 cm 56.7 cm 2.93 GeV 22 keV 16.8 cm 3.48 m Tracker hIoni + 57 -5.11 cm 1.23 cm 77.5 cm 2.93 GeV 30.8 keV 20.8 cm 3.69 m Tracker hIoni + 58 -5.15 cm 1.24 cm 80 cm 2.93 GeV 4.47 keV 2.52 cm 3.71 m Tracker Transportation + 59 -5.21 cm 1.26 cm 83.9 cm 2.93 GeV 21.2 keV 3.94 cm 3.75 m Chamber hIoni + 60 -5.25 cm 1.26 cm 86.1 cm 2.93 GeV 8.95 keV 2.16 cm 3.77 m Chamber hIoni + 61 -5.25 cm 1.27 cm 86.4 cm 2.93 GeV 720 eV 2.99 mm 3.77 m Chamber hIoni + 62 -5.27 cm 1.27 cm 87.3 cm 2.93 GeV 1.14 keV 9.06 mm 3.78 m Chamber hIoni + 63 -5.3 cm 1.28 cm 89.4 cm 2.93 GeV 5.47 keV 2.09 cm 3.8 m Chamber hIoni + 64 -5.39 cm 1.3 cm 95.2 cm 2.93 GeV 21.5 keV 5.76 cm 3.86 m Chamber hIoni + 65 -5.47 cm 1.32 cm 1 m 2.93 GeV 11.7 keV 4.85 cm 3.91 m Chamber Transportation + 66 -5.56 cm 1.34 cm 1.05 m 2.93 GeV 5.41 keV 5.12 cm 3.96 m Tracker hIoni + 67 -5.59 cm 1.34 cm 1.07 m 2.93 GeV 1.69 keV 1.85 cm 3.98 m Tracker hIoni + 68 -5.92 cm 1.42 cm 1.27 m 2.93 GeV 25 keV 20 cm 4.18 m Tracker hIoni + 69 -6.04 cm 1.45 cm 1.34 m 2.93 GeV 10.3 keV 7.35 cm 4.25 m Tracker hIoni + 70 -6.13 cm 1.47 cm 1.4 m 2.93 GeV 5.99 keV 5.51 cm 4.31 m Tracker hIoni + 71 -6.16 cm 1.48 cm 1.42 m 2.93 GeV 2.02 keV 1.74 cm 4.33 m Tracker hIoni + 72 -6.2 cm 1.49 cm 1.44 m 2.93 GeV 3.97 keV 2.43 cm 4.35 m Tracker hIoni + 73 -6.45 cm 1.55 cm 1.59 m 2.93 GeV 25.4 keV 15.4 cm 4.5 m Tracker hIoni + 74 -6.46 cm 1.55 cm 1.6 m 2.93 GeV 660 eV 6.7 mm 4.51 m Tracker Transportation + 75 -6.53 cm 1.57 cm 1.64 m 2.93 GeV 15.5 keV 3.97 cm 4.55 m Chamber hIoni + 76 -6.55 cm 1.57 cm 1.65 m 2.93 GeV 9.14 keV 1.26 cm 4.56 m Chamber hIoni + 77 -6.55 cm 1.57 cm 1.65 m 2.93 GeV 1.71 keV 2.01 mm 4.56 m Chamber hIoni + 78 -6.58 cm 1.58 cm 1.67 m 2.93 GeV 4.39 keV 1.74 cm 4.58 m Chamber hIoni + 79 -6.64 cm 1.59 cm 1.71 m 2.93 GeV 15.9 keV 3.65 cm 4.62 m Chamber hIoni + 80 -6.65 cm 1.59 cm 1.71 m 2.93 GeV 106 eV 2.57 mm 4.62 m Chamber hIoni + 81 -6.74 cm 1.62 cm 1.77 m 2.93 GeV 13.2 keV 5.63 cm 4.68 m Chamber hIoni + 82 -6.77 cm 1.62 cm 1.78 m 2.93 GeV 7.29 keV 1.7 cm 4.69 m Chamber hIoni + 83 -6.78 cm 1.62 cm 1.79 m 2.93 GeV 4.34 keV 5.69 mm 4.7 m Chamber hIoni + 84 -6.79 cm 1.63 cm 1.8 m 2.93 GeV 3.42 keV 1.02 cm 4.71 m Chamber Transportation + 85 -6.81 cm 1.63 cm 1.81 m 2.93 GeV 2.55 keV 1.34 cm 4.72 m Tracker hIoni + 86 -7.01 cm 1.68 cm 1.94 m 2.93 GeV 17 keV 12.3 cm 4.85 m Tracker hIoni + 87 -7.19 cm 1.72 cm 2.05 m 2.93 GeV 16.7 keV 11.8 cm 4.96 m Tracker hIoni + 88 -7.24 cm 1.73 cm 2.09 m 2.93 GeV 3.27 keV 3.16 cm 5 m Tracker hIoni + 89 -7.37 cm 1.76 cm 2.17 m 2.93 GeV 13.9 keV 8.57 cm 5.08 m Tracker hIoni + 90 -7.67 cm 1.82 cm 2.36 m 2.93 GeV 28.1 keV 19.3 cm 5.27 m Tracker hIoni + 91 -7.67 cm 1.83 cm 2.37 m 2.93 GeV 364 eV 3.23 mm 5.28 m Tracker hIoni + 92 -7.72 cm 1.83 cm 2.4 m 2.93 GeV 1.86 keV 2.93 cm 5.31 m Tracker hIoni + 93 -7.72 cm 1.84 cm 2.4 m 2.93 GeV 501 eV 4.18 mm 5.31 m Tracker Transportation + 94 -7.98 cm 1.89 cm 2.57 m 2.93 GeV 24.1 keV 16.9 cm 5.48 m World hIoni + 95 -8.19 cm 1.94 cm 2.71 m 2.93 GeV 18.5 keV 13.7 cm 5.62 m World hIoni + 96 -8.36 cm 1.98 cm 2.82 m 2.93 GeV 17.6 keV 11 cm 5.73 m World hIoni + 97 -8.51 cm 2.01 cm 2.91 m 2.93 GeV 12.8 keV 9.45 cm 5.82 m OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 81, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -8.36 cm 1.98 cm 2.82 m 24.3 keV 0 eV 0 fm 0 fm World initStep + 1 -8.52 cm 1.87 cm 2.82 m 12.9 keV 1.73 keV 2.14 mm 2.14 mm World eIoni + 2 -8.54 cm 1.98 cm 2.82 m 9.15 keV 3.78 keV 2.2 mm 4.34 mm World eIoni + 3 -8.52 cm 2.06 cm 2.82 m 1.76 keV 7.39 keV 1.65 mm 5.98 mm World eIoni + 4 -8.53 cm 2.06 cm 2.82 m 0 eV 1.76 keV 123 um 6.11 mm World eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 81 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -8.52 cm 1.87 cm 2.82 m 9.64 keV 0 eV 0 fm 0 fm World initStep + 1 -8.53 cm 1.89 cm 2.82 m 5.77 keV 2.52 keV 561 um 561 um World eIoni + 2 -8.56 cm 1.89 cm 2.82 m 0 eV 5.77 keV 922 um 1.48 mm World eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 82 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -8.53 cm 1.89 cm 2.82 m 1.35 keV 0 eV 0 fm 0 fm World initStep + 1 -8.53 cm 1.9 cm 2.82 m 0 eV 1.35 keV 82.3 um 82.3 um World eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 80, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -8.19 cm 1.94 cm 2.71 m 2.19 keV 0 eV 0 fm 0 fm World initStep + 1 -8.19 cm 1.95 cm 2.71 m 0 eV 2.19 keV 174 um 174 um World eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 79, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -7.98 cm 1.89 cm 2.57 m 1.12 keV 0 eV 0 fm 0 fm World initStep + 1 -7.98 cm 1.89 cm 2.57 m 0 eV 1.12 keV 62.6 um 62.6 um World eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 78, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -7.72 cm 1.83 cm 2.4 m 3.03 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -7.72 cm 1.85 cm 2.4 m 0 eV 3.03 keV 299 um 299 um Tracker eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 77, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -7.67 cm 1.83 cm 2.37 m 5.27 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -7.65 cm 1.85 cm 2.37 m 0 eV 5.27 keV 784 um 784 um Tracker eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -7.67 cm 1.82 cm 2.36 m 1.51 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -7.66 cm 1.82 cm 2.36 m 0 eV 1.51 keV 97.4 um 97.4 um Tracker eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 75, Parent ID = 1 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -7.37 cm 1.76 cm 2.17 m 1.31 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -7.37 cm 1.76 cm 2.17 m 0 eV 1.31 keV 79.1 um 79.1 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 74, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -8.1 cm 1.96 cm 2.63 m 2.51 keV 0 eV 0 fm 0 fm World initStep - 1 -8.11 cm 1.96 cm 2.63 m 0 eV 2.51 keV 218 um 218 um World eIoni + 0 -7.24 cm 1.73 cm 2.09 m 2.52 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -7.24 cm 1.72 cm 2.09 m 0 eV 2.52 keV 220 um 220 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 73, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -7.89 cm 1.91 cm 2.5 m 2.37 keV 0 eV 0 fm 0 fm World initStep - 1 -7.89 cm 1.91 cm 2.5 m 0 eV 2.37 keV 198 um 198 um World eIoni + 0 -7.19 cm 1.72 cm 2.05 m 1.28 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -7.19 cm 1.72 cm 2.05 m 0 eV 1.28 keV 76.3 um 76.3 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 72, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -7.77 cm 1.87 cm 2.42 m 2.55 keV 0 eV 0 fm 0 fm World initStep - 1 -7.78 cm 1.88 cm 2.42 m 0 eV 2.55 keV 224 um 224 um World eIoni + 0 -6.81 cm 1.63 cm 1.81 m 2.11 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -6.81 cm 1.64 cm 1.81 m 0 eV 2.11 keV 164 um 164 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 71, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -7.68 cm 1.85 cm 2.36 m 3.44 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -7.69 cm 1.84 cm 2.36 m 0 eV 3.44 keV 372 um 372 um Tracker eIoni + 0 -6.78 cm 1.62 cm 1.79 m 1.75 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -6.78 cm 1.62 cm 1.79 m 0 eV 1.75 keV 87.3 um 87.3 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 70, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -7.65 cm 1.84 cm 2.34 m 3.41 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -7.65 cm 1.86 cm 2.34 m 0 eV 3.41 keV 366 um 366 um Tracker eIoni + 0 -6.77 cm 1.62 cm 1.78 m 4.39 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -6.76 cm 1.62 cm 1.78 m 0 eV 4.39 keV 322 um 322 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 69, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -7.42 cm 1.78 cm 2.2 m 1.43 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -7.42 cm 1.78 cm 2.2 m 0 eV 1.43 keV 90.2 um 90.2 um Tracker eIoni + 0 -6.74 cm 1.62 cm 1.77 m 1.48 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -6.74 cm 1.62 cm 1.77 m 0 eV 1.48 keV 69.4 um 69.4 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 68, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -7.32 cm 1.75 cm 2.14 m 8.23 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -7.37 cm 1.82 cm 2.14 m 3.94 keV 4.28 keV 1.49 mm 1.49 mm Tracker eIoni - 2 -7.38 cm 1.82 cm 2.14 m 0 eV 3.94 keV 471 um 1.96 mm Tracker eIoni + 0 -6.65 cm 1.59 cm 1.71 m 1.68 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -6.65 cm 1.59 cm 1.71 m 0 eV 1.68 keV 82.3 um 82.3 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 67, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -7.16 cm 1.71 cm 2.03 m 2.99 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -7.16 cm 1.72 cm 2.03 m 0 eV 2.99 keV 292 um 292 um Tracker eIoni + 0 -6.64 cm 1.59 cm 1.71 m 3.67 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -6.64 cm 1.59 cm 1.71 m 0 eV 3.67 keV 245 um 245 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 66, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.76 cm 1.61 cm 1.79 m 2.02 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.76 cm 1.61 cm 1.79 m 0 eV 2.02 keV 106 um 106 um Chamber eIoni + 0 -6.58 cm 1.58 cm 1.67 m 1.63 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -6.58 cm 1.58 cm 1.67 m 0 eV 1.63 keV 79.1 um 79.1 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 65, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.7 cm 1.59 cm 1.75 m 1.37 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.7 cm 1.59 cm 1.75 m 0 eV 1.37 keV 62.5 um 62.5 um Chamber eIoni + 0 -6.55 cm 1.57 cm 1.65 m 1.4 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -6.55 cm 1.57 cm 1.65 m 0 eV 1.4 keV 64.4 um 64.4 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 64, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.64 cm 1.58 cm 1.71 m 2.16 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.64 cm 1.58 cm 1.71 m 0 eV 2.16 keV 116 um 116 um Chamber eIoni + 0 -6.55 cm 1.57 cm 1.65 m 1.38 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -6.55 cm 1.57 cm 1.65 m 0 eV 1.38 keV 63.4 um 63.4 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 63, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.58 cm 1.56 cm 1.68 m 3.42 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.58 cm 1.56 cm 1.68 m 0 eV 3.42 keV 221 um 221 um Chamber eIoni + 0 -6.53 cm 1.57 cm 1.64 m 1.43 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -6.53 cm 1.56 cm 1.64 m 0 eV 1.43 keV 66.5 um 66.5 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 62, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.98 cm 1.42 cm 1.31 m 7.53 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.95 cm 1.48 cm 1.31 m 1.94 keV 5.59 keV 1.32 mm 1.32 mm Tracker eIoni - 2 -5.95 cm 1.48 cm 1.31 m 0 eV 1.94 keV 144 um 1.47 mm Tracker eIoni + 0 -6.45 cm 1.55 cm 1.59 m 1.2 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -6.45 cm 1.55 cm 1.59 m 0 eV 1.2 keV 69.7 um 69.7 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 61, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.87 cm 1.4 cm 1.25 m 1.49 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.87 cm 1.39 cm 1.25 m 0 eV 1.49 keV 96.2 um 96.2 um Tracker eIoni + 0 -6.2 cm 1.49 cm 1.44 m 4.07 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -6.18 cm 1.49 cm 1.44 m 0 eV 4.07 keV 429 um 429 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 60, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.82 cm 1.38 cm 1.22 m 2.61 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.82 cm 1.39 cm 1.22 m 0 eV 2.61 keV 232 um 232 um Tracker eIoni + 0 -6.16 cm 1.48 cm 1.42 m 12.7 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -6.24 cm 1.47 cm 1.42 m 7.1 keV 2.89 keV 1.01 mm 1.01 mm Tracker eIoni + 2 -6.28 cm 1.43 cm 1.42 m 0 eV 7.1 keV 1.27 mm 2.28 mm Tracker eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 84, Parent ID = 60 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -6.24 cm 1.47 cm 1.42 m 2.68 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -6.25 cm 1.47 cm 1.42 m 0 eV 2.68 keV 243 um 243 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 59, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.8 cm 1.38 cm 1.2 m 1.34 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.8 cm 1.38 cm 1.2 m 0 eV 1.34 keV 82 um 82 um Tracker eIoni + 0 -6.13 cm 1.47 cm 1.4 m 5.07 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -6.16 cm 1.46 cm 1.4 m 0 eV 5.07 keV 732 um 732 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 58, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.75 cm 1.37 cm 1.17 m 1.4 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.75 cm 1.37 cm 1.17 m 0 eV 1.4 keV 86.9 um 86.9 um Tracker eIoni + 0 -6.04 cm 1.45 cm 1.34 m 2.56 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -6.03 cm 1.45 cm 1.34 m 0 eV 2.56 keV 225 um 225 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 57, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.64 cm 1.34 cm 1.1 m 2.14 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.63 cm 1.35 cm 1.1 m 0 eV 2.14 keV 168 um 168 um Tracker eIoni + 0 -5.92 cm 1.42 cm 1.27 m 4.16 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -5.91 cm 1.44 cm 1.27 m 0 eV 4.16 keV 517 um 517 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 56, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.58 cm 1.33 cm 1.07 m 1.05 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.58 cm 1.33 cm 1.07 m 0 eV 1.05 keV 57.4 um 57.4 um Tracker eIoni + 0 -5.59 cm 1.34 cm 1.07 m 2.75 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -5.58 cm 1.35 cm 1.07 m 0 eV 2.75 keV 254 um 254 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 55, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.54 cm 1.32 cm 1.05 m 3.44 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.52 cm 1.32 cm 1.05 m 0 eV 3.44 keV 371 um 371 um Tracker eIoni + 0 -5.56 cm 1.34 cm 1.05 m 2.39 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -5.55 cm 1.34 cm 1.05 m 0 eV 2.39 keV 201 um 201 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 54, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.49 cm 1.31 cm 1.02 m 1.17 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.49 cm 1.31 cm 1.02 m 0 eV 1.17 keV 66.9 um 66.9 um Tracker eIoni + 0 -5.39 cm 1.3 cm 95.2 cm 2.05 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -5.39 cm 1.3 cm 95.2 cm 0 eV 2.05 keV 108 um 108 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 53, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.36 cm 1.28 cm 93.8 cm 2.05 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -5.36 cm 1.28 cm 93.8 cm 0 eV 2.05 keV 108 um 108 um Chamber eIoni + 0 -5.3 cm 1.28 cm 89.4 cm 2.09 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -5.3 cm 1.28 cm 89.4 cm 0 eV 2.09 keV 111 um 111 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 52, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.27 cm 1.25 cm 88 cm 2.09 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -5.27 cm 1.25 cm 88 cm 0 eV 2.09 keV 111 um 111 um Chamber eIoni + 0 -5.27 cm 1.27 cm 87.3 cm 44.5 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -5.17 cm 1.31 cm 87.3 cm 42.6 keV 1.91 keV 1.89 mm 1.89 mm Chamber eIoni + 2 -5.27 cm 1.39 cm 87.3 cm 37.6 keV 5.02 keV 4.62 mm 6.51 mm Chamber eIoni + 3 -5.24 cm 1.45 cm 87.4 cm 25.2 keV 12.4 keV 4 mm 1.05 cm Chamber eIoni + 4 -5.24 cm 1.47 cm 87.3 cm 18.8 keV 6.37 keV 2.69 mm 1.32 cm Chamber eIoni + 5 -5.21 cm 1.49 cm 87.3 cm 10.7 keV 8.13 keV 2.11 mm 1.53 cm Chamber eIoni + 6 -5.21 cm 1.48 cm 87.3 cm 4.23 keV 6.44 keV 1.29 mm 1.66 cm Chamber eIoni + 7 -5.21 cm 1.48 cm 87.3 cm 0 eV 4.23 keV 304 um 1.69 cm Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 51, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.13 cm 1.22 cm 79.6 cm 1.4 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.14 cm 1.22 cm 79.6 cm 0 eV 1.4 keV 87.6 um 87.6 um Tracker eIoni + 0 -5.25 cm 1.27 cm 86.4 cm 3.83 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -5.25 cm 1.27 cm 86.4 cm 0 eV 3.83 keV 261 um 261 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 50, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.13 cm 1.22 cm 79.3 cm 4.24 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.13 cm 1.2 cm 79.3 cm 0 eV 4.24 keV 534 um 534 um Tracker eIoni + 0 -5.25 cm 1.26 cm 86.1 cm 6.63 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -5.25 cm 1.27 cm 86.1 cm 0 eV 6.63 keV 622 um 622 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 49, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.07 cm 1.21 cm 75.5 cm 1.13 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.07 cm 1.21 cm 75.5 cm 0 eV 1.13 keV 63.6 um 63.6 um Tracker eIoni + 0 -5.21 cm 1.26 cm 83.9 cm 2.31 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -5.21 cm 1.26 cm 83.9 cm 0 eV 2.31 keV 128 um 128 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 48, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -4.87 cm 1.16 cm 63 cm 1.57 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -4.87 cm 1.16 cm 63 cm 0 eV 1.57 keV 103 um 103 um Tracker eIoni + 0 -5.11 cm 1.23 cm 77.5 cm 1.57 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -5.11 cm 1.23 cm 77.5 cm 0 eV 1.57 keV 103 um 103 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 47, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -4.53 cm 1.08 cm 42.3 cm 15.5 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -4.4 cm 1.01 cm 42.3 cm 12 keV 2.22 keV 1.87 mm 1.87 mm Tracker eIoni - 2 -4.38 cm 8.98 mm 42.3 cm 7.58 keV 2.98 keV 1.74 mm 3.61 mm Tracker eIoni - 3 -4.35 cm 8.88 mm 42.3 cm 0 eV 7.58 keV 1.37 mm 4.98 mm Tracker eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 76, Parent ID = 47 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -4.38 cm 8.98 mm 42.3 cm 1.43 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -4.38 cm 8.96 mm 42.3 cm 0 eV 1.43 keV 89.8 um 89.8 um Tracker eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 75, Parent ID = 47 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -4.4 cm 1.01 cm 42.3 cm 1.28 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -4.4 cm 1.01 cm 42.3 cm 0 eV 1.28 keV 76.5 um 76.5 um Tracker eIoni + 0 -4.78 cm 1.15 cm 56.7 cm 15.5 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -4.62 cm 1.07 cm 56.7 cm 11 keV 4.45 keV 2.57 mm 2.57 mm Tracker eIoni + 2 -4.55 cm 1.03 cm 56.8 cm 6.76 keV 4.29 keV 1.93 mm 4.49 mm Tracker eIoni + 3 -4.59 cm 1 cm 56.8 cm 0 eV 6.76 keV 1.19 mm 5.69 mm Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 46, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -4.26 cm 1.01 cm 25.5 cm 87.4 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -4.63 cm 4.92 mm 25.7 cm 80.3 keV 2.39 keV 6.87 mm 6.87 mm Tracker eIoni - 2 -4.84 cm -9.97 mm 25.7 cm 68.9 keV 6.05 keV 1.57 cm 2.26 cm Tracker eIoni - 3 -4.94 cm -1.59 cm 26 cm 63.1 keV 4.12 keV 6.84 mm 2.94 cm Tracker eIoni - 4 -5.04 cm -2.87 cm 25.9 cm 49.9 keV 10.5 keV 1.38 cm 4.32 cm Tracker eIoni - 5 -5.51 cm -3.57 cm 25.5 cm 45.4 keV 4.52 keV 1.1 cm 5.42 cm Tracker eIoni - 6 -5.34 cm -4.31 cm 25.2 cm 37.2 keV 8.15 keV 9.52 mm 6.37 cm Tracker eIoni - 7 -5.28 cm -4.35 cm 25.1 cm 33.6 keV 2.09 keV 1.21 mm 6.49 cm Tracker eIoni - 8 -4.88 cm -4.58 cm 24.9 cm 30.8 keV 2.83 keV 6.16 mm 7.11 cm Tracker eIoni - 9 -4.6 cm -4.93 cm 24.9 cm 26.3 keV 4.52 keV 5.47 mm 7.66 cm Tracker eIoni - 10 -4.36 cm -4.96 cm 24.6 cm 21.4 keV 4.91 keV 4.47 mm 8.1 cm Tracker eIoni - 11 -4.18 cm -5.09 cm 24.5 cm 15.5 keV 5.86 keV 3.52 mm 8.46 cm Tracker eIoni - 12 -4.2 cm -5.15 cm 24.3 cm 11.4 keV 4.14 keV 2.57 mm 8.71 cm Tracker eIoni - 13 -4.23 cm -5.08 cm 24.2 cm 7.3 keV 4.08 keV 1.98 mm 8.91 cm Tracker eIoni - 14 -4.26 cm -5.13 cm 24.2 cm 2.14 keV 5.16 keV 1.31 mm 9.04 cm Tracker eIoni - 15 -4.26 cm -5.13 cm 24.2 cm 0 eV 2.14 keV 168 um 9.06 cm Tracker eIoni + 0 -4.51 cm 1.08 cm 39.9 cm 87.4 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -5.74 cm -3.38 mm 40.1 cm 79 keV 7.11 keV 1.98 cm 1.98 cm Tracker eIoni + 2 -5.79 cm -3.69 mm 40.1 cm 77.3 keV 65.8 eV 644 um 2.04 cm Tracker eIoni + 3 -7.83 cm -5.93 mm 40.5 cm 67.9 keV 9.39 keV 2.22 cm 4.27 cm Tracker eIoni + 4 -9.11 cm -306 um 41.1 cm 58.8 keV 9.09 keV 1.8 cm 6.07 cm Tracker eIoni + 5 -9.58 cm 4.26 mm 42.1 cm 51.6 keV 6.2 keV 1.39 cm 7.45 cm Tracker eIoni + 6 -9.94 cm 7.98 mm 42.5 cm 46.7 keV 3.91 keV 7.18 mm 8.17 cm Tracker eIoni + 7 -9.76 cm 1.1 cm 43.2 cm 40.6 keV 4.87 keV 9.2 mm 9.09 cm Tracker eIoni + 8 -9.14 cm 1.36 cm 43.2 cm 33.4 keV 7.23 keV 8.06 mm 9.9 cm Tracker eIoni + 9 -8.9 cm 1.3 cm 43.3 cm 26.7 keV 2.81 keV 2.74 mm 10.2 cm Tracker eIoni + 10 -8.67 cm 1.1 cm 43.1 cm 23 keV 3.71 keV 4.55 mm 10.6 cm Tracker eIoni + 11 -8.57 cm 8.67 mm 42.9 cm 19.9 keV 3.1 keV 3.81 mm 11 cm Tracker eIoni + 12 -8.53 cm 8.52 mm 42.9 cm 11.9 keV 756 eV 615 um 11.1 cm Tracker eIoni + 13 -8.44 cm 9.01 mm 42.8 cm 6.32 keV 4.56 keV 1.85 mm 11.3 cm Tracker eIoni + 14 -8.42 cm 8.63 mm 42.8 cm 0 eV 6.32 keV 1.08 mm 11.4 cm Tracker eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 81, Parent ID = 46 +* G4Track Information: Particle = e-, Track ID = 92, Parent ID = 46 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.28 cm -4.35 cm 25.1 cm 1.53 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.28 cm -4.35 cm 25.1 cm 0 eV 1.53 keV 99.2 um 99.2 um Tracker eIoni + 0 -8.44 cm 9.01 mm 42.8 cm 1.05 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -8.44 cm 8.99 mm 42.8 cm 0 eV 1.05 keV 56.9 um 56.9 um Tracker eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 80, Parent ID = 46 +* G4Track Information: Particle = e-, Track ID = 91, Parent ID = 46 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.04 cm -2.87 cm 25.9 cm 2.6 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -5.03 cm -2.87 cm 25.9 cm 0 eV 2.6 keV 231 um 231 um Tracker eIoni + 0 -8.53 cm 8.52 mm 42.9 cm 7.16 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -8.52 cm 8.02 mm 42.9 cm 0 eV 7.16 keV 1.28 mm 1.28 mm Tracker eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 79, Parent ID = 46 +* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 46 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -4.94 cm -1.59 cm 26 cm 1.68 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -4.95 cm -1.59 cm 26 cm 0 eV 1.68 keV 115 um 115 um Tracker eIoni + 0 -8.9 cm 1.3 cm 43.3 cm 3.91 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -8.89 cm 1.31 cm 43.3 cm 0 eV 3.91 keV 463 um 463 um Tracker eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 78, Parent ID = 46 +* G4Track Information: Particle = e-, Track ID = 89, Parent ID = 46 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -4.84 cm -9.97 mm 25.7 cm 5.35 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -4.86 cm -1.01 cm 25.7 cm 0 eV 5.35 keV 805 um 805 um Tracker eIoni + 0 -9.76 cm 1.1 cm 43.2 cm 1.19 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -9.76 cm 1.1 cm 43.2 cm 0 eV 1.19 keV 68.4 um 68.4 um Tracker eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 77, Parent ID = 46 +* G4Track Information: Particle = e-, Track ID = 88, Parent ID = 46 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -4.63 cm 4.92 mm 25.7 cm 4.71 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -4.65 cm 5 mm 25.7 cm 0 eV 4.71 keV 642 um 642 um Tracker eIoni + 0 -9.94 cm 7.98 mm 42.5 cm 1.02 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -9.94 cm 8 mm 42.5 cm 0 eV 1.02 keV 54.6 um 54.6 um Tracker eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 87, Parent ID = 46 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -9.58 cm 4.26 mm 42.1 cm 1.03 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -9.58 cm 4.27 mm 42.1 cm 0 eV 1.03 keV 55.9 um 55.9 um Tracker eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 46 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -5.79 cm -3.69 mm 40.1 cm 1.64 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -5.79 cm -3.71 mm 40.1 cm 0 eV 1.64 keV 110 um 110 um Tracker eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 85, Parent ID = 46 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -5.74 cm -3.38 mm 40.1 cm 1.25 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -5.74 cm -3.39 mm 40.1 cm 0 eV 1.25 keV 73.2 um 73.2 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 45, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -4.07 cm 9.65 mm 13.1 cm 2.34 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -4.07 cm 9.64 mm 13.1 cm 0 eV 2.34 keV 130 um 130 um Chamber eIoni + 0 -4.18 cm 9.98 mm 18.9 cm 2.34 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -4.17 cm 9.96 mm 18.9 cm 0 eV 2.34 keV 130 um 130 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 44, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -4.05 cm 9.62 mm 12.3 cm 1.52 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -4.05 cm 9.62 mm 12.3 cm 0 eV 1.52 keV 72.1 um 72.1 um Chamber eIoni + 0 -4.16 cm 9.94 mm 18 cm 1.52 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -4.16 cm 9.95 mm 18 cm 0 eV 1.52 keV 72.2 um 72.2 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 43, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -4.04 cm 9.58 mm 11.3 cm 2.19 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -4.04 cm 9.57 mm 11.3 cm 0 eV 2.19 keV 118 um 118 um Chamber eIoni + 0 -4.15 cm 9.9 mm 17.1 cm 2.19 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -4.15 cm 9.9 mm 17.1 cm 0 eV 2.19 keV 118 um 118 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 42, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -4.03 cm 9.56 mm 11 cm 1.41 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -4.03 cm 9.56 mm 11 cm 0 eV 1.41 keV 64.9 um 64.9 um Chamber eIoni + 0 -4.14 cm 9.89 mm 16.7 cm 1.41 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -4.14 cm 9.89 mm 16.7 cm 0 eV 1.41 keV 64.9 um 64.9 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 41, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -3.99 cm 9.47 mm 8.61 cm 4.8 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -4 cm 9.5 mm 8.61 cm 0 eV 4.8 keV 371 um 371 um Chamber eIoni + 0 -4.1 cm 9.8 mm 14.3 cm 4.8 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -4.1 cm 9.83 mm 14.3 cm 0 eV 4.8 keV 371 um 371 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 40, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -3.98 cm 9.44 mm 7.79 cm 1.4 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -3.98 cm 9.44 mm 7.79 cm 0 eV 1.4 keV 64.2 um 64.2 um Chamber eIoni + 0 -4.06 cm 9.7 mm 11.9 cm 1.57 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -4.06 cm 9.71 mm 11.9 cm 0 eV 1.57 keV 74.9 um 74.9 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 39, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -3.27 cm 7.73 mm -36 cm 1.29 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -3.27 cm 7.7 mm -36 cm 0 eV 1.29 keV 77.1 um 77.1 um Tracker eIoni + 0 -4.02 cm 9.59 mm 9.11 cm 1.42 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -4.02 cm 9.59 mm 9.11 cm 0 eV 1.42 keV 65.4 um 65.4 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 38, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -3.25 cm 7.67 mm -37.4 cm 5.67 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -3.26 cm 7.97 mm -37.4 cm 3.3 keV 1.16 keV 477 um 477 um Tracker eIoni - 2 -3.25 cm 7.85 mm -37.4 cm 0 eV 3.3 keV 345 um 822 um Tracker eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 82, Parent ID = 38 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -3.26 cm 7.97 mm -37.4 cm 1.21 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -3.26 cm 7.98 mm -37.4 cm 0 eV 1.21 keV 70.1 um 70.1 um Tracker eIoni + 0 -3.74 cm 8.92 mm -8.05 cm 2.63 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -3.73 cm 8.92 mm -8.05 cm 0 eV 2.63 keV 236 um 236 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 37, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -3.22 cm 7.6 mm -39.2 cm 1.22 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -3.22 cm 7.59 mm -39.2 cm 0 eV 1.22 keV 70.6 um 70.6 um Tracker eIoni + 0 -3.71 cm 8.86 mm -9.59 cm 10 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -3.81 cm 8.6 mm -9.58 cm 3.98 keV 6.02 keV 1.78 mm 1.78 mm Tracker eIoni + 2 -3.82 cm 8.44 mm -9.58 cm 0 eV 3.98 keV 479 um 2.26 mm Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 36, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -3.12 cm 7.35 mm -45.5 cm 1.39 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -3.12 cm 7.36 mm -45.5 cm 0 eV 1.39 keV 85.8 um 85.8 um Tracker eIoni + 0 -3.71 cm 8.85 mm -9.87 cm 7.46 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -3.71 cm 8.23 mm -9.87 cm 0 eV 7.46 keV 1.35 mm 1.35 mm Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 35, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -3.01 cm 7.11 mm -51.8 cm 1.72 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -3.01 cm 7.06 mm -51.8 cm 0 eV 1.72 keV 119 um 119 um Tracker eIoni + 0 -3.54 cm 8.46 mm -20 cm 4.36 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -3.53 cm 8.25 mm -20 cm 0 eV 4.36 keV 561 um 561 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 34, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2.87 cm 6.75 mm -60.9 cm 8.02 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -2.87 cm 6.69 mm -60.9 cm 0 eV 8.02 keV 852 um 852 um Chamber eIoni + 0 -3.07 cm 7.37 mm -49.2 cm 1.69 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -3.07 cm 7.41 mm -49.2 cm 0 eV 1.69 keV 116 um 116 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 33, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2.84 cm 6.68 mm -62.8 cm 3.09 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -2.84 cm 6.66 mm -62.8 cm 0 eV 3.09 keV 191 um 191 um Chamber eIoni + 0 -2.87 cm 6.91 mm -61.4 cm 1.45 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.87 cm 6.9 mm -61.4 cm 0 eV 1.45 keV 67.5 um 67.5 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 32, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2.82 cm 6.64 mm -63.7 cm 2.85 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -2.82 cm 6.63 mm -63.7 cm 0 eV 2.85 keV 171 um 171 um Chamber eIoni + 0 -2.83 cm 6.82 mm -63.8 cm 4.29 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.83 cm 6.79 mm -63.8 cm 0 eV 4.29 keV 311 um 311 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 31, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2.69 cm 6.32 mm -71.8 cm 6.75 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -2.69 cm 6.26 mm -71.8 cm 0 eV 6.75 keV 640 um 640 um Chamber eIoni + 0 -2.7 cm 6.49 mm -71.8 cm 6.75 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.7 cm 6.42 mm -71.8 cm 0 eV 6.75 keV 640 um 640 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 30, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2.68 cm 6.3 mm -72.4 cm 202 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -4.85 cm -9.8 mm -70.3 cm 176 keV 26.2 keV 4.52 cm 4.52 cm Chamber eIoni - 2 -4.91 cm -9.62 mm -70.2 cm 171 keV 560 eV 627 um 4.59 cm Chamber eIoni - 3 -6.4 cm -3.13 cm -69.8 cm 138 keV 32.3 keV 3.47 cm 8.06 cm Chamber eIoni - 4 -6.4 cm -3.12 cm -69.8 cm 133 keV 60.3 eV 321 um 8.09 cm Chamber eIoni - 5 -6.38 cm -3.09 cm -69.7 cm 131 keV 568 eV 1.14 mm 8.21 cm Chamber eIoni - 6 -6.27 cm -2.89 cm -69.3 cm 125 keV 6.28 keV 7.2 mm 8.93 cm Chamber eIoni - 7 -6.31 cm -2.95 cm -69.3 cm 123 keV 157 eV 870 um 9.01 cm Chamber eIoni - 8 -6.7 cm -3.52 cm -69.2 cm 106 keV 16.9 keV 2.08 cm 11.1 cm Chamber eIoni - 9 -6.97 cm -3.66 cm -69.3 cm 99.2 keV 4.19 keV 4.51 mm 11.5 cm Chamber eIoni - 10 -7.16 cm -3.97 cm -69.1 cm 94.8 keV 4.33 keV 7.28 mm 12.3 cm Chamber eIoni - 11 -6.87 cm -3.72 cm -68.9 cm 82.7 keV 12.2 keV 1.4 cm 13.7 cm Chamber eIoni - 12 -6.87 cm -3.75 cm -68.9 cm 76.3 keV 300 eV 418 um 13.7 cm Chamber eIoni - 13 -6.91 cm -3.86 cm -68.9 cm 69.2 keV 3.54 keV 1.73 mm 13.9 cm Chamber eIoni - 14 -6.82 cm -3.81 cm -69.1 cm 64.8 keV 2.41 keV 4.11 mm 14.3 cm Chamber eIoni - 15 -6.76 cm -3.67 cm -69.2 cm 63 keV 1.78 keV 3.26 mm 14.6 cm Chamber eIoni - 16 -6.53 cm -3.67 cm -69.2 cm 50.2 keV 12.8 keV 7.68 mm 15.4 cm Chamber eIoni - 17 -6.43 cm -3.54 cm -69.2 cm 41.9 keV 8.32 keV 5.66 mm 16 cm Chamber eIoni - 18 -6.44 cm -3.43 cm -69.1 cm 34.1 keV 7.81 keV 4.53 mm 16.4 cm Chamber eIoni - 19 -6.52 cm -3.41 cm -69.2 cm 28.6 keV 3.73 keV 3.2 mm 16.7 cm Chamber eIoni - 20 -6.54 cm -3.36 cm -69.1 cm 23.4 keV 5.17 keV 3.02 mm 17 cm Chamber eIoni - 21 -6.54 cm -3.4 cm -69.1 cm 13.3 keV 1.93 keV 1.06 mm 17.1 cm Chamber eIoni - 22 -6.53 cm -3.4 cm -69.1 cm 9.4 keV 2.53 keV 995 um 17.2 cm Chamber eIoni - 23 -6.53 cm -3.4 cm -69.2 cm 4.41 keV 1.83 keV 200 um 17.3 cm Chamber eIoni - 24 -6.53 cm -3.4 cm -69.2 cm 2.57 keV 196 eV 27.1 um 17.3 cm Chamber eIoni - 25 -6.53 cm -3.4 cm -69.2 cm 0 eV 2.57 keV 148 um 17.3 cm Chamber eIoni + 0 -2.69 cm 6.46 mm -72.5 cm 202 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.64 cm 729 um -71.3 cm 155 keV 9.4 keV 1.49 cm 1.49 cm Chamber eIoni + 2 -3.01 cm -1.19 mm -70.9 cm 147 keV 6.32 keV 7.85 mm 2.27 cm Chamber eIoni + 3 -2.77 cm -8.84 mm -70.5 cm 132 keV 15.4 keV 2.75 cm 5.03 cm Chamber eIoni + 4 -2.72 cm -1.12 cm -70.4 cm 123 keV 2.36 keV 2.99 mm 5.33 cm Chamber eIoni + 5 -2.75 cm -1.1 cm -70.6 cm 119 keV 3.13 keV 2.23 mm 5.55 cm Chamber eIoni + 6 -2.45 cm -1.04 cm -71 cm 112 keV 5.83 keV 8.93 mm 6.44 cm Chamber eIoni + 7 -2.55 cm -1.08 cm -71.5 cm 101 keV 8.98 keV 8.47 mm 7.29 cm Chamber eIoni + 8 -2.54 cm -7.64 mm -71.2 cm 90.3 keV 7.16 keV 6.83 mm 7.97 cm Chamber eIoni + 9 -2.57 cm -3.88 mm -71.1 cm 76.2 keV 10.9 keV 1.07 cm 9.04 cm Chamber eIoni + 10 -2.84 cm -2.76 mm -71.1 cm 67.3 keV 6.92 keV 6.5 mm 9.69 cm Chamber eIoni + 11 -2.92 cm -3.89 mm -71.1 cm 62.7 keV 2.78 keV 2.01 mm 9.89 cm Chamber eIoni + 12 -2.73 cm -3.53 mm -71 cm 53.2 keV 9.5 keV 7.61 mm 10.6 cm Chamber eIoni + 13 -2.78 cm -1.96 mm -71 cm 39.5 keV 10.7 keV 5.56 mm 11.2 cm Chamber eIoni + 14 -2.79 cm -908 um -71.1 cm 29.5 keV 4.75 keV 3.2 mm 11.5 cm Chamber eIoni + 15 -2.76 cm -312 um -71 cm 22 keV 7.42 keV 3.11 mm 11.8 cm Chamber eIoni + 16 -2.78 cm -598 um -71 cm 16.1 keV 5.98 keV 2.4 mm 12.1 cm Chamber eIoni + 17 -2.76 cm -630 um -71 cm 8.96 keV 7.11 keV 1.87 mm 12.3 cm Chamber eIoni + 18 -2.76 cm -660 um -71 cm 7.31 keV 152 eV 61.5 um 12.3 cm Chamber eIoni + 19 -2.75 cm -710 um -71 cm 0 eV 7.31 keV 729 um 12.3 cm Chamber eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 104, Parent ID = 30 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -2.76 cm -660 um -71 cm 1.5 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.76 cm -666 um -71 cm 0 eV 1.5 keV 70.7 um 70.7 um Chamber eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 103, Parent ID = 30 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -2.79 cm -908 um -71.1 cm 5.27 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.79 cm -895 um -71.1 cm 3.79 keV 1.48 keV 199 um 199 um Chamber eIoni + 2 -2.79 cm -876 um -71.1 cm 0 eV 3.79 keV 257 um 456 um Chamber eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 102, Parent ID = 30 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -2.78 cm -1.96 mm -71 cm 3.01 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.78 cm -1.96 mm -71 cm 0 eV 3.01 keV 185 um 185 um Chamber eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 101, Parent ID = 30 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -2.92 cm -3.89 mm -71.1 cm 1.86 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.92 cm -3.89 mm -71.1 cm 0 eV 1.86 keV 94.6 um 94.6 um Chamber eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 100, Parent ID = 30 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -2.84 cm -2.76 mm -71.1 cm 1.96 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.83 cm -2.77 mm -71.1 cm 0 eV 1.96 keV 102 um 102 um Chamber eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 99, Parent ID = 30 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -2.57 cm -3.88 mm -71.1 cm 3.23 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.57 cm -3.86 mm -71.1 cm 0 eV 3.23 keV 203 um 203 um Chamber eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 98, Parent ID = 30 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -2.54 cm -7.64 mm -71.2 cm 3.72 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.54 cm -7.63 mm -71.2 cm 0 eV 3.72 keV 251 um 251 um Chamber eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 97, Parent ID = 30 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -2.55 cm -1.08 cm -71.5 cm 1.81 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.55 cm -1.08 cm -71.5 cm 0 eV 1.81 keV 90.9 um 90.9 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 96, Parent ID = 30 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.53 cm -3.4 cm -69.2 cm 1.64 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.53 cm -3.4 cm -69.2 cm 0 eV 1.64 keV 79.8 um 79.8 um Chamber eIoni + 0 -2.45 cm -1.04 cm -71 cm 1.65 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.45 cm -1.04 cm -71 cm 0 eV 1.65 keV 80.1 um 80.1 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 95, Parent ID = 30 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.53 cm -3.4 cm -69.2 cm 3.15 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.53 cm -3.4 cm -69.2 cm 0 eV 3.15 keV 197 um 197 um Chamber eIoni + 0 -2.72 cm -1.12 cm -70.4 cm 6.79 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.72 cm -1.12 cm -70.4 cm 0 eV 6.79 keV 646 um 646 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 94, Parent ID = 30 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.53 cm -3.4 cm -69.1 cm 1.38 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.53 cm -3.4 cm -69.1 cm 0 eV 1.38 keV 63.2 um 63.2 um Chamber eIoni + 0 -3.01 cm -1.19 mm -70.9 cm 1.49 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -3.01 cm -1.19 mm -70.9 cm 0 eV 1.49 keV 70.1 um 70.1 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 93, Parent ID = 30 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.54 cm -3.4 cm -69.1 cm 8.16 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.54 cm -3.41 cm -69.1 cm 0 eV 8.16 keV 875 um 875 um Chamber eIoni + 0 -2.64 cm 729 um -71.3 cm 38.1 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.58 cm 798 um -71.2 cm 28.1 keV 9.95 keV 4.06 mm 4.06 mm Chamber eIoni + 2 -2.55 cm 1.41 mm -71.2 cm 18.2 keV 9.91 keV 2.97 mm 7.03 mm Chamber eIoni + 3 -2.56 cm 1.11 mm -71.2 cm 9.33 keV 8.91 keV 2.06 mm 9.09 mm Chamber eIoni + 4 -2.56 cm 1.01 mm -71.2 cm 2.99 keV 4.12 keV 483 um 9.58 mm Chamber eIoni + 5 -2.56 cm 1.01 mm -71.2 cm 0 eV 2.99 keV 182 um 9.76 mm Chamber eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 92, Parent ID = 30 +* G4Track Information: Particle = e-, Track ID = 105, Parent ID = 93 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.52 cm -3.41 cm -69.2 cm 1.76 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.52 cm -3.41 cm -69.2 cm 0 eV 1.76 keV 87.5 um 87.5 um Chamber eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 91, Parent ID = 30 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.82 cm -3.81 cm -69.1 cm 2 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.82 cm -3.81 cm -69.1 cm 0 eV 2 keV 105 um 105 um Chamber eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 90, Parent ID = 30 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.91 cm -3.86 cm -68.9 cm 3.56 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.92 cm -3.86 cm -68.9 cm 0 eV 3.56 keV 235 um 235 um Chamber eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 89, Parent ID = 30 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.87 cm -3.75 cm -68.9 cm 6.04 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.86 cm -3.75 cm -68.9 cm 3.97 keV 2.07 keV 286 um 286 um Chamber eIoni - 2 -6.87 cm -3.75 cm -68.9 cm 0 eV 3.97 keV 277 um 563 um Chamber eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 88, Parent ID = 30 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.97 cm -3.66 cm -69.3 cm 2.48 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.97 cm -3.66 cm -69.3 cm 0 eV 2.48 keV 141 um 141 um Chamber eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 87, Parent ID = 30 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.31 cm -2.95 cm -69.3 cm 1.71 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.31 cm -2.95 cm -69.3 cm 0 eV 1.71 keV 84.1 um 84.1 um Chamber eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 86, Parent ID = 30 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.38 cm -3.09 cm -69.7 cm 1.86 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.38 cm -3.09 cm -69.7 cm 0 eV 1.86 keV 94.4 um 94.4 um Chamber eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 85, Parent ID = 30 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.4 cm -3.12 cm -69.8 cm 4.2 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.4 cm -3.12 cm -69.8 cm 0 eV 4.2 keV 261 um 261 um Chamber eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 84, Parent ID = 30 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.4 cm -3.13 cm -69.8 cm 1.39 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -6.4 cm -3.13 cm -69.8 cm 0 eV 1.39 keV 63.8 um 63.8 um Chamber eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 83, Parent ID = 30 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -4.91 cm -9.62 mm -70.2 cm 4.27 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -4.9 cm -9.58 mm -70.2 cm 0 eV 4.27 keV 310 um 310 um Chamber eIoni + 0 -2.56 cm 1.01 mm -71.2 cm 2.22 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.56 cm 1.02 mm -71.2 cm 0 eV 2.22 keV 121 um 121 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 29, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2.67 cm 6.27 mm -73.1 cm 1.47 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -2.67 cm 6.27 mm -73.1 cm 0 eV 1.47 keV 68.8 um 68.8 um Chamber eIoni + 0 -2.68 cm 6.43 mm -73.2 cm 1.47 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.68 cm 6.44 mm -73.2 cm 0 eV 1.47 keV 68.9 um 68.9 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 28, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2.66 cm 6.26 mm -73.4 cm 1.86 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -2.66 cm 6.25 mm -73.4 cm 0 eV 1.86 keV 94.5 um 94.5 um Chamber eIoni + 0 -2.67 cm 6.42 mm -73.5 cm 1.86 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -2.67 cm 6.41 mm -73.5 cm 0 eV 1.86 keV 94.5 um 94.5 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 27, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2.4 cm 5.65 mm -89.8 cm 2.51 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -2.39 cm 5.69 mm -89.8 cm 0 eV 2.51 keV 219 um 219 um Tracker eIoni + 0 -2.41 cm 5.8 mm -89.9 cm 2.51 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -2.4 cm 5.84 mm -89.9 cm 0 eV 2.51 keV 219 um 219 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 26, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2.33 cm 5.48 mm -94.3 cm 1.11 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -2.33 cm 5.46 mm -94.3 cm 0 eV 1.11 keV 61.8 um 61.8 um Tracker eIoni + 0 -2.34 cm 5.62 mm -94.4 cm 1.11 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -2.34 cm 5.61 mm -94.4 cm 0 eV 1.11 keV 61.8 um 61.8 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 25, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2.3 cm 5.41 mm -96.2 cm 1.35 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -2.3 cm 5.43 mm -96.2 cm 0 eV 1.35 keV 82.5 um 82.5 um Tracker eIoni + 0 -2.31 cm 5.55 mm -96.3 cm 1.35 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -2.31 cm 5.57 mm -96.3 cm 0 eV 1.35 keV 82.5 um 82.5 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 24, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2 cm 4.7 mm -1.15 m 13 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -2.08 cm 3.79 mm -1.15 m 5.41 keV 2.65 keV 1.63 mm 1.63 mm Tracker eIoni - 2 -2.1 cm 3.53 mm -1.15 m 0 eV 5.41 keV 821 um 2.45 mm Tracker eIoni + 0 -2.01 cm 4.82 mm -1.15 m 13 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -2.1 cm 3.73 mm -1.15 m 9.29 keV 3.72 keV 2.21 mm 2.21 mm Tracker eIoni + 2 -2.14 cm 3.72 mm -1.15 m 4.76 keV 1.24 keV 517 um 2.72 mm Tracker eIoni + 3 -2.16 cm 3.49 mm -1.15 m 0 eV 4.76 keV 655 um 3.38 mm Tracker eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 97, Parent ID = 24 +* G4Track Information: Particle = e-, Track ID = 106, Parent ID = 24 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2.08 cm 3.79 mm -1.15 m 4.96 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -2.08 cm 3.81 mm -1.15 m 0 eV 4.96 keV 704 um 704 um Tracker eIoni + 0 -2.14 cm 3.72 mm -1.15 m 3.29 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -2.16 cm 3.8 mm -1.15 m 0 eV 3.29 keV 344 um 344 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 23, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.71 cm 4.01 mm -1.33 m 43.3 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -2.02 cm 1.06 cm -1.33 m 33.2 keV 10 keV 8.85 mm 8.85 mm Tracker eIoni - 2 -2.34 cm 8.18 mm -1.33 m 27.4 keV 4.5 keV 4.83 mm 1.37 cm Tracker eIoni - 3 -2.69 cm 7.32 mm -1.33 m 22.4 keV 5.01 keV 4.72 mm 1.84 cm Tracker eIoni - 4 -2.98 cm 7.1 mm -1.33 m 19.5 keV 2.98 keV 3.71 mm 2.21 cm Tracker eIoni - 5 -3.18 cm 7.57 mm -1.33 m 13.3 keV 6.12 keV 3.19 mm 2.53 cm Tracker eIoni - 6 -3.33 cm 7.3 mm -1.33 m 8.35 keV 4.99 keV 2.25 mm 2.76 cm Tracker eIoni - 7 -3.37 cm 7.09 mm -1.33 m 2.11 keV 6.24 keV 1.51 mm 2.91 cm Tracker eIoni - 8 -3.37 cm 7.1 mm -1.33 m 0 eV 2.11 keV 164 um 2.92 cm Tracker eIoni + 0 -1.71 cm 4.12 mm -1.33 m 43.3 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -1.93 cm 8.63 mm -1.33 m 37.6 keV 4.58 keV 5.68 mm 5.68 mm Tracker eIoni + 2 -1.94 cm 1.05 cm -1.33 m 34.7 keV 1.13 keV 2.06 mm 7.73 mm Tracker eIoni + 3 -1.94 cm 1.15 cm -1.33 m 32.8 keV 764 eV 978 um 8.71 mm Tracker eIoni + 4 -1.96 cm 1.62 cm -1.33 m 26.7 keV 6.03 keV 5.94 mm 1.47 cm Tracker eIoni + 5 -1.7 cm 1.87 cm -1.33 m 21.1 keV 5.61 keV 4.57 mm 1.92 cm Tracker eIoni + 6 -1.62 cm 2.03 cm -1.32 m 19 keV 2.18 keV 3.48 mm 2.27 cm Tracker eIoni + 7 -1.63 cm 1.99 cm -1.32 m 14.5 keV 759 eV 641 um 2.33 cm Tracker eIoni + 8 -1.61 cm 1.87 cm -1.32 m 10.1 keV 4.41 keV 2.43 mm 2.58 cm Tracker eIoni + 9 -1.65 cm 1.79 cm -1.32 m 4.51 keV 4.25 keV 1.48 mm 2.72 cm Tracker eIoni + 10 -1.67 cm 1.78 cm -1.32 m 0 eV 4.51 keV 596 um 2.78 cm Tracker eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 98, Parent ID = 23 +* G4Track Information: Particle = e-, Track ID = 111, Parent ID = 23 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2.34 cm 8.18 mm -1.33 m 1.29 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -2.34 cm 8.16 mm -1.33 m 0 eV 1.29 keV 77.3 um 77.3 um Tracker eIoni + 0 -1.65 cm 1.79 cm -1.32 m 1.37 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -1.65 cm 1.79 cm -1.32 m 0 eV 1.37 keV 84.1 um 84.1 um Tracker eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 110, Parent ID = 23 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -1.63 cm 1.99 cm -1.32 m 3.65 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -1.64 cm 2 cm -1.32 m 0 eV 3.65 keV 411 um 411 um Tracker eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 109, Parent ID = 23 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -1.94 cm 1.15 cm -1.33 m 1.2 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -1.94 cm 1.15 cm -1.33 m 0 eV 1.2 keV 69.6 um 69.6 um Tracker eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 108, Parent ID = 23 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -1.94 cm 1.05 cm -1.33 m 1.69 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -1.94 cm 1.05 cm -1.33 m 0 eV 1.69 keV 116 um 116 um Tracker eIoni + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 107, Parent ID = 23 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 -1.93 cm 8.63 mm -1.33 m 1.13 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -1.92 cm 8.63 mm -1.33 m 0 eV 1.13 keV 63.7 um 63.7 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 22, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.68 cm 3.95 mm -1.35 m 1.26 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -1.68 cm 3.94 mm -1.35 m 0 eV 1.26 keV 74.8 um 74.8 um Tracker eIoni + 0 -1.68 cm 4.05 mm -1.35 m 1.26 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -1.69 cm 4.04 mm -1.35 m 0 eV 1.26 keV 74.8 um 74.8 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 21, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.54 cm 3.63 mm -1.43 m 3.8 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -1.54 cm 3.6 mm -1.43 m 0 eV 3.8 keV 259 um 259 um Chamber eIoni + 0 -1.55 cm 3.72 mm -1.43 m 3.8 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -1.55 cm 3.69 mm -1.43 m 0 eV 3.8 keV 258 um 258 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 20, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.54 cm 3.62 mm -1.43 m 5.59 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -1.53 cm 3.58 mm -1.43 m 2.61 keV 1.05 keV 333 um 333 um Chamber eIoni - 2 -1.54 cm 3.6 mm -1.43 m 0 eV 2.61 keV 151 um 484 um Chamber eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 99, Parent ID = 20 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.53 cm 3.58 mm -1.43 m 1.93 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -1.53 cm 3.58 mm -1.43 m 0 eV 1.93 keV 99.2 um 99.2 um Chamber eIoni + 0 -1.54 cm 3.71 mm -1.43 m 5.59 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -1.54 cm 3.67 mm -1.43 m 1.37 keV 4.22 keV 263 um 263 um Chamber eIoni + 2 -1.54 cm 3.67 mm -1.43 m 0 eV 1.37 keV 62.7 um 326 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 19, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.5 cm 3.52 mm -1.46 m 1.54 keV 0 eV 0 fm 0 fm Chamber initStep - 1 -1.5 cm 3.51 mm -1.46 m 0 eV 1.54 keV 73.4 um 73.4 um Chamber eIoni + 0 -1.5 cm 3.61 mm -1.46 m 1.54 keV 0 eV 0 fm 0 fm Chamber initStep + 1 -1.5 cm 3.6 mm -1.46 m 0 eV 1.54 keV 73.4 um 73.4 um Chamber eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 18, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.16 cm 2.73 mm -1.67 m 1.92 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -1.16 cm 2.72 mm -1.67 m 0 eV 1.92 keV 141 um 141 um Tracker eIoni + 0 -1.16 cm 2.8 mm -1.67 m 1.92 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -1.16 cm 2.79 mm -1.67 m 0 eV 1.92 keV 141 um 141 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 17, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -1.01 cm 2.39 mm -1.76 m 1.01 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -1.01 cm 2.41 mm -1.76 m 0 eV 1.01 keV 54.1 um 54.1 um Tracker eIoni + 0 -1.01 cm 2.45 mm -1.76 m 1.01 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -1.01 cm 2.47 mm -1.76 m 0 eV 1.01 keV 54.1 um 54.1 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 16, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -9.86 mm 2.33 mm -1.78 m 2.69 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -9.94 mm 2.27 mm -1.78 m 0 eV 2.69 keV 244 um 244 um Tracker eIoni + 0 -9.88 mm 2.39 mm -1.78 m 2.69 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -9.96 mm 2.33 mm -1.78 m 0 eV 2.69 keV 244 um 244 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 15, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -9.21 mm 2.18 mm -1.82 m 1.04 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -9.2 mm 2.16 mm -1.82 m 0 eV 1.04 keV 56.6 um 56.6 um Tracker eIoni + 0 -9.23 mm 2.23 mm -1.82 m 1.04 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -9.22 mm 2.22 mm -1.82 m 0 eV 1.04 keV 56.6 um 56.6 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 14, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -6.57 mm 1.56 mm -1.98 m 1.46 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -6.55 mm 1.6 mm -1.98 m 0 eV 1.46 keV 93.1 um 93.1 um Tracker eIoni + 0 -6.58 mm 1.6 mm -1.98 m 1.46 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -6.56 mm 1.63 mm -1.98 m 0 eV 1.46 keV 93.1 um 93.1 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 13, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -2.32 mm 568 um -2.24 m 2.57 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -2.34 mm 660 um -2.24 m 0 eV 2.57 keV 226 um 226 um Tracker eIoni + 0 -2.31 mm 579 um -2.24 m 2.57 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -2.33 mm 671 um -2.24 m 0 eV 2.57 keV 226 um 226 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 12, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -83.8 um 41.8 um -2.38 m 1.31 keV 0 eV 0 fm 0 fm Tracker initStep - 1 -105 um 63.6 um -2.38 m 0 eV 1.31 keV 79 um 79 um Tracker eIoni + 0 -67.4 um 39.3 um -2.38 m 1.31 keV 0 eV 0 fm 0 fm Tracker initStep + 1 -88.9 um 61.2 um -2.38 m 0 eV 1.31 keV 79.1 um 79.1 um Tracker eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 11, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 316 um -24.1 um -2.41 m 1.46 MeV 0 eV 0 fm 0 fm Target initStep - 1 321 um 35.9 um -2.41 m 515 keV 941 keV 895 um 895 um Target eBrem - 2 315 um 17.1 um -2.41 m 0 eV 515 keV 317 um 1.21 mm Target eIoni + 0 315 um -24.1 um -2.41 m 1.45 MeV 0 eV 0 fm 0 fm Target initStep + 1 316 um -19 um -2.41 m 1.33 MeV 7.42 keV 8.77 um 8.77 um Target eBrem + 2 317 um 38.7 um -2.41 m 84.5 keV 1.24 MeV 1.02 mm 1.02 mm Target eIoni + 3 317 um 38 um -2.41 m 0 eV 84.5 keV 20.9 um 1.04 mm Target eIoni + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 112, Parent ID = 11 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 316 um -19 um -2.41 m 115 keV 0 eV 0 fm 0 fm Target initStep + 1 342 um 134 um -2.41 m 0 eV 88.3 keV 183 um 183 um Target phot + +********************************************************************************************************* +* G4Track Information: Particle = e-, Track ID = 113, Parent ID = 112 +********************************************************************************************************* + +Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process + 0 342 um 134 um -2.41 m 26.3 keV 0 eV 0 fm 0 fm Target initStep + 1 342 um 134 um -2.41 m 0 eV 26.3 keV 3.14 um 3.14 um Target eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 10, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 322 um -33.5 um -2.42 m 1.1 MeV 0 eV 0 fm 0 fm Target initStep - 1 302 um -72.2 um -2.42 m 721 keV 383 keV 346 um 346 um Target eBrem - 2 298 um -39.7 um -2.42 m 0 eV 721 keV 490 um 836 um Target eIoni + 0 320 um -33.4 um -2.42 m 1.1 MeV 0 eV 0 fm 0 fm Target initStep + 1 301 um -72.4 um -2.42 m 0 eV 1.1 MeV 817 um 817 um Target eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 9, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 326 um -41.3 um -2.42 m 1.03 MeV 0 eV 0 fm 0 fm Target initStep - 1 366 um -37.8 um -2.42 m 0 eV 1.03 MeV 756 um 756 um Target eIoni + 0 325 um -41.2 um -2.42 m 1.03 MeV 0 eV 0 fm 0 fm Target initStep + 1 365 um -38 um -2.42 m 0 eV 1.03 MeV 753 um 753 um Target eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 8, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 328 um -45.8 um -2.42 m 1.18 MeV 0 eV 0 fm 0 fm Target initStep - 1 371 um -27.6 um -2.42 m 0 eV 1.18 MeV 886 um 886 um Target eIoni + 0 326 um -45.6 um -2.42 m 1.18 MeV 0 eV 0 fm 0 fm Target initStep + 1 370 um -27.9 um -2.42 m 0 eV 1.18 MeV 882 um 882 um Target eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 106 um -15 um -2.44 m 1.81 MeV 0 eV 0 fm 0 fm Target initStep - 1 136 um 55.2 um -2.44 m 353 keV 822 keV 720 um 720 um Target eBrem - 2 130 um 62.8 um -2.44 m 0 eV 353 keV 188 um 908 um Target eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 100, Parent ID = 7 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 136 um 55.2 um -2.44 m 633 keV 0 eV 0 fm 0 fm Target initStep - 1 5.88 mm -3.55 mm -2.44 m 215 keV 0 eV 7.02 mm 7.02 mm Target compt - 2 5.78 mm -3.24 mm -2.44 m 0 eV 88.3 keV 363 um 7.38 mm Target phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 102, Parent ID = 100 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 5.78 mm -3.24 mm -2.44 m 127 keV 0 eV 0 fm 0 fm Target initStep - 1 5.78 mm -3.24 mm -2.44 m 0 eV 127 keV 40.2 um 40.2 um Target eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 101, Parent ID = 100 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 5.88 mm -3.55 mm -2.44 m 417 keV 0 eV 0 fm 0 fm Target initStep - 1 5.89 mm -3.56 mm -2.44 m 160 keV 151 keV 96.4 um 96.4 um Target eBrem - 2 5.89 mm -3.56 mm -2.44 m 0 eV 160 keV 57.4 um 154 um Target eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 103, Parent ID = 101 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 5.89 mm -3.56 mm -2.44 m 107 keV 0 eV 0 fm 0 fm Target initStep - 1 5.89 mm -3.46 mm -2.44 m 0 eV 88.3 keV 540 um 540 um Target phot - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 104, Parent ID = 103 -********************************************************************************************************* - -Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 5.89 mm -3.46 mm -2.44 m 18.9 keV 0 eV 0 fm 0 fm Target initStep - 1 5.89 mm -3.46 mm -2.44 m 0 eV 18.9 keV 1.86 um 1.86 um Target eIoni + 0 105 um -15 um -2.44 m 1.8 MeV 0 eV 0 fm 0 fm Target initStep + 1 136 um 56.1 um -2.44 m 556 keV 1.24 MeV 1.32 mm 1.32 mm Target eIoni + 2 136 um 36.5 um -2.44 m 416 keV 140 keV 41.9 um 1.36 mm Target eBrem + 3 128 um 24 um -2.44 m 106 keV 310 keV 151 um 1.51 mm Target eBrem + 4 129 um 23 um -2.44 m 0 eV 106 keV 30.1 um 1.54 mm Target eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 56.2 um -21.7 um -2.45 m 1.55 MeV 0 eV 0 fm 0 fm Target initStep - 1 -5.7 um -20.4 um -2.45 m 895 keV 391 keV 362 um 362 um Target eBrem - 2 7.19 um 11.5 um -2.45 m 0 eV 895 keV 640 um 1 mm Target eIoni + 0 55.9 um -21.7 um -2.45 m 1.55 MeV 0 eV 0 fm 0 fm Target initStep + 1 -5.12 um -20.4 um -2.45 m 739 keV 306 keV 328 um 328 um Target eBrem + 2 -33.7 um -27.8 um -2.45 m 0 eV 739 keV 506 um 834 um Target eIoni ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 105, Parent ID = 6 +* G4Track Information: Particle = gamma, Track ID = 114, Parent ID = 6 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -5.7 um -20.4 um -2.45 m 268 keV 0 eV 0 fm 0 fm Target initStep - 1 -783 um -30.3 um -2.44 m 0 eV 88.3 keV 2.12 mm 2.12 mm Target phot + 0 -5.12 um -20.4 um -2.45 m 503 keV 0 eV 0 fm 0 fm Target initStep + 1 -1.45 mm -565 um -2.45 m 0 eV 88.3 keV 1.62 mm 1.62 mm Target phot ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 106, Parent ID = 105 +* G4Track Information: Particle = e-, Track ID = 115, Parent ID = 114 ********************************************************************************************************* Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process - 0 -783 um -30.3 um -2.44 m 180 keV 0 eV 0 fm 0 fm Target initStep - 1 -781 um -30.2 um -2.44 m 0 eV 180 keV 69 um 69 um Target eIoni + 0 -1.45 mm -565 um -2.45 m 415 keV 0 eV 0 fm 0 fm Target initStep + 1 -1.47 mm -573 um -2.45 m 0 eV 415 keV 236 um 236 um Target eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 @@ -1827,7 +1967,8 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process 0 4.37 um -5.95 um -2.63 m 7.04 keV 0 eV 0 fm 0 fm World initStep - 1 -17.3 um -565 um -2.63 m 0 eV 7.04 keV 1.26 mm 1.26 mm World eIoni + 1 -17.3 um -565 um -2.63 m 1.7 keV 5.34 keV 1.26 mm 1.26 mm World eIoni + 2 160 nm -522 um -2.63 m 0 eV 1.7 keV 117 um 1.37 mm World eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 @@ -1843,7 +1984,7 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process 0 3.61 um -4.61 um -2.64 m 1.07 keV 0 eV 0 fm 0 fm World initStep - 1 14.9 um -23.5 um -2.64 m 0 eV 1.07 keV 58.5 um 58.5 um World eIoni + 1 14.9 um -23.4 um -2.64 m 0 eV 1.07 keV 58.5 um 58.5 um World eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -1851,108 +1992,130 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Step# X Y Z KineE dEStep StepLeng TrakLeng Volume Process 0 0 fm 0 fm -2.71 m 2.67 keV 0 eV 0 fm 0 fm World initStep - 1 -97.5 um 23.7 um -2.71 m 1.37 keV 1.3 keV 226 um 226 um World eIoni - 2 -101 um 22 um -2.71 m 0 eV 1.37 keV 84.6 um 310 um World eIoni + 1 -97.6 um 23.8 um -2.71 m 0 eV 2.67 keV 242 um 242 um World eIoni --------->Storing hits in the ROOT file: in this event there are 91 hits in the tracker chambers: - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0066730556798148 position[mm]: (-12.914798486964,3.047229554638,-1586.497093501) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.048110501252379 position[mm]: (-14.959235061206,3.5164429200242,-1458.9096945532) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.009389153537381 position[mm]: (-15.385132970198,3.6158552198661,-1432.1370416623) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0012610096376031 position[mm]: (-15.432835937947,3.6273125364882,-1429.157103526) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.013139958963771 position[mm]: (-15.900946739928,3.7411543535788,-1400) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.023704990325644 position[mm]: (-26.636359335031,6.2595951176921,-734.2185254721) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.001313460286559 position[mm]: (-26.683715277156,6.2705809545281,-731.2731759165) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0030829164782029 position[mm]: (-26.797166157904,6.2969874616734,-724.22844235907) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0029886175478911 position[mm]: (-26.904147143243,6.3225724478785,-717.62102302352) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.025803451220884 position[mm]: (-28.202664444428,6.6428258054239,-637.32149969681) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0050617207163333 position[mm]: (-28.361388345205,6.6803831157513,-627.51354460025) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0054167999331559 position[mm]: (-28.652698691181,6.7506908274092,-609.45479235866) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.001694760597374 position[mm]: (-28.806054792506,6.7878892878455,-600) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.03018857912592 position[mm]: (-39.802459803312,9.4364976800951,77.882816147004) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00068342117883399 position[mm]: (-39.935481132882,9.4681492432325,86.0997810156) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0084185536235296 position[mm]: (-40.322839668241,9.5621046175324,110.10387453823) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00029436372757099 position[mm]: (-40.373803335167,9.5752789084751,113.28307535487) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0047888991272625 position[mm]: (-40.529278485657,9.6157304536846,123.00832339544) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0013303327699833 position[mm]: (-40.663152211378,9.6493512436451,131.401589216) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.028045074663526 position[mm]: (-41.753321252104,9.9252501709829,200) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.020540060520855 position[mm]: (-52.684370077391,12.544711814761,880.19800133653) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.020753624180843 position[mm]: (-53.617364451595,12.77074218546,937.81322387625) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.015784057981185 position[mm]: (-54.636159222113,13.004823173563,1000) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.022682979789594 position[mm]: (-65.78632282698,15.618832154059,1675.7939956152) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.011681263910751 position[mm]: (-66.360041356655,15.758914995674,1711.0937582198) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.015609128737096 position[mm]: (-67.016489360693,15.918311041243,1751.4677373303) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.01403399240767 position[mm]: (-67.609026468579,16.064649095041,1787.8992960377) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0047724704663479 position[mm]: (-67.804051982195,16.115405913999,1800) - trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.0020221947647156 position[mm]: (-67.61865524286,16.072561917625,1787.8996787992) - trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.0013689718247341 position[mm]: (-67.011991936074,15.924584395806,1751.4680765622) - trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0021605432947511 position[mm]: (-66.356497306285,15.772044510837,1711.0944085805) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0034150604559096 position[mm]: (-65.770051060652,15.638444298836,1675.7957015219) - trackID: 53 chamberNb: 3 energy deposit[MeV]: 0.0020514608625899 position[mm]: (-53.630022059312,12.769691404675,937.81360669407) - trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.0020851165469551 position[mm]: (-52.694950907382,12.537201295103,880.19846333895) - trackID: 45 chamberNb: 2 energy deposit[MeV]: 0.0023413838760652 position[mm]: (-40.653786218264,9.6374364680961,131.40253427816) - trackID: 44 chamberNb: 2 energy deposit[MeV]: 0.0015238116909969 position[mm]: (-40.521280788098,9.6193505606693,123.00878608944) - trackID: 43 chamberNb: 2 energy deposit[MeV]: 0.0021906455702981 position[mm]: (-40.387564357183,9.5735941595891,113.28352360487) - trackID: 42 chamberNb: 2 energy deposit[MeV]: 0.0014071116587782 position[mm]: (-40.330742334269,9.5632632573997,110.10404839754) - trackID: 41 chamberNb: 2 energy deposit[MeV]: 0.0047959572667193 position[mm]: (-39.957948603276,9.502669999953,86.102189789227) - trackID: 40 chamberNb: 2 energy deposit[MeV]: 0.0013959243158207 position[mm]: (-39.808009841097,9.4421334595878,77.883005789315) - trackID: 34 chamberNb: 1 energy deposit[MeV]: 0.0080243762676127 position[mm]: (-28.720548571411,6.6940836157356,-609.44760457024) - trackID: 33 chamberNb: 1 energy deposit[MeV]: 0.0030861381095723 position[mm]: (-28.363149411715,6.6582918062365,-627.5122314396) - trackID: 32 chamberNb: 1 energy deposit[MeV]: 0.0028532358244008 position[mm]: (-28.217632411916,6.6297045298371,-637.32060803536) - trackID: 31 chamberNb: 1 energy deposit[MeV]: 0.0067460773939053 position[mm]: (-26.885653458945,6.2571688407121,-717.61476592418) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.026187856960952 position[mm]: (-48.51004060551,-9.7987620236365,-702.59439516017) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0005604777384907 position[mm]: (-49.052796557482,-9.6177389827484,-702.35479891605) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.032318163670417 position[mm]: (-63.973562398989,-31.261386846173,-698.44277730654) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 6.0283358564179e-05 position[mm]: (-63.992145340469,-31.171297569947,-698.1409227991) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00056786034308397 position[mm]: (-63.770271125839,-30.882970142152,-697.13379325828) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0062752989669465 position[mm]: (-62.69581511729,-28.890067944035,-692.87346575398) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00015684693727897 position[mm]: (-63.071224164004,-29.536975212585,-692.52769254924) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.016944372812072 position[mm]: (-66.950445398261,-35.167791446241,-692.20003911356) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.004193625543716 position[mm]: (-69.736856462319,-36.611448934013,-692.54987250917) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.004326064018105 position[mm]: (-71.594982524572,-39.665848834931,-690.90248985646) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.012169854409054 position[mm]: (-68.712733911309,-37.172760827125,-688.50117911091) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00030031394194475 position[mm]: (-68.695610228799,-37.463467599802,-688.77138257716) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0035350167650678 position[mm]: (-69.139168651734,-38.556638297798,-689.46945833597) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0024082647488538 position[mm]: (-68.228996849181,-38.12607388266,-691.43360021377) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0017793858340945 position[mm]: (-67.637161894658,-36.66364179078,-692.43977129949) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.012848346377773 position[mm]: (-65.338057877355,-36.655074751563,-692.02342817108) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0083165967341736 position[mm]: (-64.335695386014,-35.433911085975,-691.67851077866) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0078130865183255 position[mm]: (-64.410084068735,-34.270594000594,-691.34357537103) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.003732983319249 position[mm]: (-65.219757068227,-34.135740735342,-691.63299350962) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0051694116375778 position[mm]: (-65.440901412556,-33.615851468738,-691.29031903285) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0019333801794985 position[mm]: (-65.370950918156,-34.049134538476,-691.29656989139) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0025311403596877 position[mm]: (-65.31094474074,-34.023448649395,-691.4816869627) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0018344164979684 position[mm]: (-65.277418814048,-33.972934000951,-691.55735426578) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00019637311487425 position[mm]: (-65.270838500716,-33.969599793533,-691.57564782696) - trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0025747077178435 position[mm]: (-65.254393278631,-33.969900035772,-691.58101165521) - trackID: 96 chamberNb: 1 energy deposit[MeV]: 0.0016415400932032 position[mm]: (-65.269632705488,-33.978197163465,-691.57153188851) - trackID: 95 chamberNb: 1 energy deposit[MeV]: 0.0031538056183327 position[mm]: (-65.298304860848,-33.966105738158,-691.56371228557) - trackID: 94 chamberNb: 1 energy deposit[MeV]: 0.0013796727226521 position[mm]: (-65.309994823015,-34.017193288649,-691.47712511042) - trackID: 93 chamberNb: 1 energy deposit[MeV]: 0.0081557326515576 position[mm]: (-65.390733328555,-34.135681658457,-691.31596341103) - trackID: 92 chamberNb: 1 energy deposit[MeV]: 0.0017563036106938 position[mm]: (-65.210087019316,-34.133741723919,-691.62964844997) - trackID: 91 chamberNb: 1 energy deposit[MeV]: 0.00200101659897 position[mm]: (-68.218782435642,-38.132176700416,-691.43670916512) - trackID: 90 chamberNb: 1 energy deposit[MeV]: 0.0035636049673555 position[mm]: (-69.153381224116,-38.576679347818,-689.48088972221) - trackID: 89 chamberNb: 1 energy deposit[MeV]: 0.0020707298997325 position[mm]: (-68.649698649558,-37.46113283902,-688.80650698642) - trackID: 89 chamberNb: 1 energy deposit[MeV]: 0.0039714486701217 position[mm]: (-68.65009674488,-37.486271924238,-688.82554544134) - trackID: 88 chamberNb: 1 energy deposit[MeV]: 0.0024839312457795 position[mm]: (-69.726791701322,-36.610859859198,-692.53685175852) - trackID: 87 chamberNb: 1 energy deposit[MeV]: 0.0017070087565373 position[mm]: (-63.07806832172,-29.53210079105,-692.52214115193) - trackID: 86 chamberNb: 1 energy deposit[MeV]: 0.0018566999068383 position[mm]: (-63.759757148708,-30.886671247422,-697.13453204202) - trackID: 85 chamberNb: 1 energy deposit[MeV]: 0.0041998990154963 position[mm]: (-64.023165508236,-31.181008952323,-698.13052003461) - trackID: 84 chamberNb: 1 energy deposit[MeV]: 0.0013899983850205 position[mm]: (-63.979224186644,-31.256218721988,-698.44456383308) - trackID: 83 chamberNb: 1 energy deposit[MeV]: 0.0042724200828057 position[mm]: (-49.046207230609,-9.5836027691006,-702.3510524377) - trackID: 29 chamberNb: 1 energy deposit[MeV]: 0.0014712580775869 position[mm]: (-26.692093049914,6.2714959005765,-731.27298482837) - trackID: 28 chamberNb: 1 energy deposit[MeV]: 0.0018586514853114 position[mm]: (-26.63034992269,6.2501814228436,-734.21790250356) - trackID: 21 chamberNb: 0 energy deposit[MeV]: 0.0037980601950242 position[mm]: (-15.43497103143,3.5978323910463,-1429.1551649122) - trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.0010545200359888 position[mm]: (-15.34993111495,3.5784070608827,-1432.1324109626) - trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.0026103132598633 position[mm]: (-15.350443436894,3.5954897645548,-1432.1367399524) - trackID: 99 chamberNb: 0 energy deposit[MeV]: 0.0019255054567591 position[mm]: (-15.33893746174,3.5797217463097,-1432.1286284192) - trackID: 19 chamberNb: 0 energy deposit[MeV]: 0.0015429557559719 position[mm]: (-14.950800195049,3.5135758113998,-1458.9091926339) +-------->Storing hits in the ROOT file: in this event there are 111 hits in the tracker chambers: + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0068204199809812 position[mm]: (-12.963914780958,3.1254552051191,-1586.9533937688) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.048133264100824 position[mm]: (-15.017913034807,3.6076068615626,-1459.3245017044) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0097199124706658 position[mm]: (-15.445811106334,3.7097191587408,-1432.5431407451) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0012611368738251 position[mm]: (-15.493734909163,3.7214786644028,-1429.5622333982) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.013832834112869 position[mm]: (-15.970377782502,3.8398692676634,-1400) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.024207887767796 position[mm]: (-26.7462524171,6.4228584542102,-734.58291101042) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0013633047680805 position[mm]: (-26.793828354224,6.4341361607294,-731.63660316323) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0031488498117727 position[mm]: (-26.907804893661,6.4612417173204,-724.58957756849) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0030290799281798 position[mm]: (-27.015275270964,6.4874854786971,-717.98000755113) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.034849845861226 position[mm]: (-28.319694932845,6.8157417559108,-637.65434674081) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0083450762567141 position[mm]: (-28.705799677332,6.9091723241397,-613.89925190543) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0048619382333906 position[mm]: (-28.930679900824,6.9621366524356,-600) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.038007587550651 position[mm]: (-40.185935378308,9.5947516137267,91.119219950151) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.015845718753548 position[mm]: (-40.631425899385,9.7047996762326,118.84475480545) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0094325055201849 position[mm]: (-41.026661516109,9.7988761450369,143.376894829) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0085698723801397 position[mm]: (-41.412935801774,9.8909773079397,167.38882368966) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.00029436874589473 position[mm]: (-41.463758541352,9.9039077123157,170.5690622437) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0049692508478474 position[mm]: (-41.618802957451,9.9436149043415,180.29748474075) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0013303736462268 position[mm]: (-41.752299843263,9.9765938017676,188.69349017614) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0045506740103002 position[mm]: (-41.931417672333,10.021191324606,200) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.021233676182351 position[mm]: (-52.132768937417,12.550614462687,839.39679942755) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0089466911736222 position[mm]: (-52.475158923911,12.638202374308,860.94548246636) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00072016088493063 position[mm]: (-52.522590895914,12.650259809657,863.93510067551) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0011428212008252 position[mm]: (-52.667242322977,12.686966872917,872.99526714574) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0054732897854637 position[mm]: (-52.998663500482,12.76920710998,893.87770373666) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.021469546699291 position[mm]: (-53.923832217776,12.995170651414,951.51170215317) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.011689041235499 position[mm]: (-54.71138384001,13.177585860535,1000) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.015464026133255 position[mm]: (-65.297846706229,15.650123312012,1639.6570249176) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0091362037390035 position[mm]: (-65.508371848424,15.699496843649,1652.257950304) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.001712840932507 position[mm]: (-65.541933419109,15.707423045798,1654.2666620108) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0043907651159793 position[mm]: (-65.832982745974,15.775858992073,1671.6770206697) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.01587491664101 position[mm]: (-66.442045901704,15.918922289464,1708.2214065453) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00010638355477245 position[mm]: (-66.484112431654,15.929111535645,1710.7926737281) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.013238040391837 position[mm]: (-67.403517735773,16.154281999235,1767.0541870823) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0072861421992489 position[mm]: (-67.674642987676,16.22080863547,1784.0681852316) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0043410528825348 position[mm]: (-67.765220159874,16.243337328388,1789.7607098869) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.003422452674319 position[mm]: (-67.928289560595,16.28377495672,1800) + trackID: 71 chamberNb: 4 energy deposit[MeV]: 0.0017544354435003 position[mm]: (-67.775233421049,16.240699420472,1789.7610028596) + trackID: 70 chamberNb: 4 energy deposit[MeV]: 0.0043851378661262 position[mm]: (-67.640056621229,16.230833636478,1784.0711301155) + trackID: 69 chamberNb: 4 energy deposit[MeV]: 0.0014807678740718 position[mm]: (-67.397294228298,16.160089235383,1767.0545976687) + trackID: 68 chamberNb: 4 energy deposit[MeV]: 0.0016801704840053 position[mm]: (-66.484089520676,15.91926197134,1710.7931252666) + trackID: 67 chamberNb: 4 energy deposit[MeV]: 0.0036683684415365 position[mm]: (-66.422213862107,15.938613781258,1708.2233800616) + trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.0016318941406845 position[mm]: (-65.825829576281,15.769572295789,1671.6775570558) + trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.0013992137616139 position[mm]: (-65.534257727136,15.709465525963,1654.2670854558) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0013829796427545 position[mm]: (-65.507544991085,15.707286565829,1652.2582303167) + trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0014344162370926 position[mm]: (-65.304789529442,15.645762461209,1639.6572425073) + trackID: 54 chamberNb: 3 energy deposit[MeV]: 0.002052055612198 position[mm]: (-53.936334255566,12.994154980585,951.51208194099) + trackID: 53 chamberNb: 3 energy deposit[MeV]: 0.0020857210525254 position[mm]: (-53.009128239116,12.761808199313,893.87816131532) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.0019078513705086 position[mm]: (-51.732749157162,13.09641978748,873.22882379442) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.0050220491677765 position[mm]: (-52.710468656547,13.862813416624,873.27438683724) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.012388657608334 position[mm]: (-52.392120521256,14.523130491069,873.98095015111) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.0063719714546899 position[mm]: (-52.391712135912,14.683519164252,873.46650492813) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.0081251636824469 position[mm]: (-52.144027386939,14.881788846652,873.35625795701) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.0064417714347242 position[mm]: (-52.088311787421,14.768318930974,873.41001974243) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.0042284703143921 position[mm]: (-52.121326881781,14.776422456532,873.40586378906) + trackID: 51 chamberNb: 3 energy deposit[MeV]: 0.0038276287114133 position[mm]: (-52.493036844173,12.652118255663,863.9374352538) + trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.0066333977291782 position[mm]: (-52.466047319449,12.70384503347,860.95086591952) + trackID: 49 chamberNb: 3 energy deposit[MeV]: 0.0023123498090334 position[mm]: (-52.118334164647,12.553782152742,839.39774112426) + trackID: 45 chamberNb: 2 energy deposit[MeV]: 0.0023420626690069 position[mm]: (-41.742951205362,9.9647950442132,188.69442819029) + trackID: 44 chamberNb: 2 energy deposit[MeV]: 0.0015242534831396 position[mm]: (-41.610794950556,9.947276948945,180.29794842978) + trackID: 43 chamberNb: 2 energy deposit[MeV]: 0.0021912806684875 position[mm]: (-41.477365294123,9.902188995955,170.56950663452) + trackID: 42 chamberNb: 2 energy deposit[MeV]: 0.0014075196195335 position[mm]: (-41.420866404698,9.892109030114,167.38899864809) + trackID: 41 chamberNb: 2 energy deposit[MeV]: 0.0047973474562899 position[mm]: (-41.049295803638,9.8333591874252,143.37930954589) + trackID: 40 chamberNb: 2 energy deposit[MeV]: 0.0015673770802791 position[mm]: (-40.640410664937,9.7062759139496,118.84497175487) + trackID: 39 chamberNb: 2 energy deposit[MeV]: 0.0014163876149721 position[mm]: (-40.192578378907,9.590165425044,91.119441070902) + trackID: 33 chamberNb: 1 energy deposit[MeV]: 0.0014500923402729 position[mm]: (-28.704911243636,6.9009174948381,-613.89888363273) + trackID: 32 chamberNb: 1 energy deposit[MeV]: 0.0042864524318747 position[mm]: (-28.338423845746,6.7863252178776,-637.65220806905) + trackID: 31 chamberNb: 1 energy deposit[MeV]: 0.0067480326760829 position[mm]: (-26.997117261558,6.4220867966126,-717.97375536574) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0094000687566941 position[mm]: (-26.427512926584,0.72922132538202,-713.17918578205) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0063202423529556 position[mm]: (-30.08467012493,-1.1915994012696,-709.38620361909) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.015365660085133 position[mm]: (-27.681409072332,-8.8431211565465,-704.97020712809) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0023589194611277 position[mm]: (-27.216993403734,-11.151275736929,-704.052307261) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0031303204563987 position[mm]: (-27.536030009075,-11.008535384183,-705.95250459314) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0058271032578538 position[mm]: (-24.496541326167,-10.401646884326,-709.98892583065) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.008980240048591 position[mm]: (-25.499743187778,-10.837953240424,-714.55468379036) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0071593380759825 position[mm]: (-25.400538446401,-7.6353386396503,-712.35853939673) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.010895765541875 position[mm]: (-25.738504773544,-3.8810598299959,-710.97216105726) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0069164672684175 position[mm]: (-28.350148615849,-2.7617005678723,-711.43852527611) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0027821089541097 position[mm]: (-29.183485002223,-3.8850151489143,-711.09554908746) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0094955403441262 position[mm]: (-27.343355960152,-3.5340336420758,-709.73867181959) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.010657276170149 position[mm]: (-27.816088866121,-1.9590520633325,-710.37167569454) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0047499200380943 position[mm]: (-27.895344853108,-0.90826159536839,-710.56837284199) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.007420170922843 position[mm]: (-27.629600016601,-0.31194196665864,-710.32613565982) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0059816376715054 position[mm]: (-27.828535469136,-0.59823276859023,-710.06883946047) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0071091534103871 position[mm]: (-27.584842129052,-0.63037108314735,-710.16541680085) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.00015161653636537 position[mm]: (-27.573614332093,-0.65959460831112,-710.2011152352) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0073060055556294 position[mm]: (-27.520776447115,-0.70982263418008,-710.22441483542) + trackID: 104 chamberNb: 1 energy deposit[MeV]: 0.001501516181599 position[mm]: (-27.579292108908,-0.66606462045591,-710.2001351952) + trackID: 103 chamberNb: 1 energy deposit[MeV]: 0.0014845141004026 position[mm]: (-27.937911873115,-0.89526556089279,-710.55203298327) + trackID: 103 chamberNb: 1 energy deposit[MeV]: 0.003787259335621 position[mm]: (-27.930416927405,-0.87582537268835,-710.57259120266) + trackID: 102 chamberNb: 1 energy deposit[MeV]: 0.0030137544655979 position[mm]: (-27.798038024659,-1.9596638964086,-710.38344632077) + trackID: 101 chamberNb: 1 energy deposit[MeV]: 0.0018601497825857 position[mm]: (-29.177003239078,-3.8904168191414,-711.10274838364) + trackID: 100 chamberNb: 1 energy deposit[MeV]: 0.0019630786292474 position[mm]: (-28.348264814192,-2.7665181970874,-711.44918538098) + trackID: 99 chamberNb: 1 energy deposit[MeV]: 0.0032268525220039 position[mm]: (-25.734058543838,-3.8634841200118,-710.95702945749) + trackID: 98 chamberNb: 1 energy deposit[MeV]: 0.003721968045068 position[mm]: (-25.404537451599,-7.6253916800049,-712.38502943618) + trackID: 97 chamberNb: 1 energy deposit[MeV]: 0.0018071937266118 position[mm]: (-25.498658899272,-10.843895889458,-714.54582755091) + trackID: 96 chamberNb: 1 energy deposit[MeV]: 0.0016463227561404 position[mm]: (-24.505381472662,-10.398113944114,-709.98744590437) + trackID: 95 chamberNb: 1 energy deposit[MeV]: 0.0067907736982102 position[mm]: (-27.229542315825,-11.218736012208,-704.05712740827) + trackID: 94 chamberNb: 1 energy deposit[MeV]: 0.0014921311771583 position[mm]: (-30.076487186866,-1.1889758847006,-709.38586972085) + trackID: 93 chamberNb: 1 energy deposit[MeV]: 0.0099457367119257 position[mm]: (-25.75342184555,0.79771855053516,-712.38867870869) + trackID: 93 chamberNb: 1 energy deposit[MeV]: 0.0099113688702082 position[mm]: (-25.534203361694,1.4064699522663,-712.38890439591) + trackID: 93 chamberNb: 1 energy deposit[MeV]: 0.0089053852769609 position[mm]: (-25.634370037156,1.1146867738464,-712.30179093854) + trackID: 93 chamberNb: 1 energy deposit[MeV]: 0.0041186427890971 position[mm]: (-25.613721217821,1.0138469167975,-712.26123158132) + trackID: 93 chamberNb: 1 energy deposit[MeV]: 0.0029878508321623 position[mm]: (-25.615498669122,1.0112430296095,-712.282305929) + trackID: 105 chamberNb: 1 energy deposit[MeV]: 0.0022238806663674 position[mm]: (-25.622264289235,1.0249284666908,-712.26191588369) + trackID: 29 chamberNb: 1 energy deposit[MeV]: 0.0014716846347016 position[mm]: (-26.802231389891,6.4350946607835,-731.63641210406) + trackID: 28 chamberNb: 1 energy deposit[MeV]: 0.0018591903462923 position[mm]: (-26.740342166336,6.4135012767585,-734.58229288489) + trackID: 21 chamberNb: 0 energy deposit[MeV]: 0.0037991612091951 position[mm]: (-15.495997411458,3.6922315067978,-1429.560308694) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.0042201395653714 position[mm]: (-15.41061215336,3.6719031570577,-1432.5384815097) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.0013718195978259 position[mm]: (-15.404188328271,3.6700281985426,-1432.5424075167) + trackID: 19 chamberNb: 0 energy deposit[MeV]: 0.0015434030983552 position[mm]: (-15.009469873982,3.60469028619,-1459.3239975808) writing Event_1 >>> Event 0 0 trajectories stored in this event. Run terminated. Run Summary Number of events processed : 1 - User=0.380000s Real=9.495708s Sys=0.340000s + User=0.390000s Real=6.145211s Sys=0.450000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Region -- -- appears in world volume This region is in the mass world. @@ -1967,7 +2130,7 @@ Region -- -- is not associated to any world. Materials : Production cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um -========= Table of registered couples ============================== +========= Table of registered couples ============================ Index : 0 used in the geometry : Yes Material : Air @@ -1979,368 +2142,349 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Lead Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 94.737246124257 keV e- 1.0076817756335 MeV e+ 948.7336398037 keV proton 70 keV + Energy thresholds : gamma 94.586138310569 keV e- 1.0038644857808 MeV e+ 951.32127129134 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : XenonGas Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 990 eV e- 1.3680563699252 keV e+ 1.3329299582305 keV proton 70 keV + Energy thresholds : gamma 990 eV e- 1.3684530084265 keV e+ 1.3448250375664 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld -==================================================================== +================================================================== ### Run 1 starts. ### Run 1 start. CalorimeterSD::Initialize: TrackerChamberSD ExP01/TrackerChamberSD_HC is not found. --------->Storing hits in the ROOT file: in this event there are 170 hits in the tracker chambers: - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0089463346335155 position[mm]: (-82.01860846465,18.453597043066,-1570.3024683357) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.013106746784065 position[mm]: (-84.925647927262,18.997377630057,-1541.9885225106) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.018050187745189 position[mm]: (-92.092404697264,19.869354629851,-1472.9370320253) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0020545408166237 position[mm]: (-92.984957122359,19.970458182841,-1464.2551684132) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.022928044630173 position[mm]: (-99.441133142855,20.837066301531,-1400) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0086523517893636 position[mm]: (-162.00525833265,29.004826245044,-775.26907857358) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0030097815952987 position[mm]: (-163.49181560813,29.1731584503,-760.7410291712) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0023883706098311 position[mm]: (-164.53244096596,29.299784566102,-750.60665320483) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.033824632889962 position[mm]: (-172.19045242788,30.169755734342,-676.24382443692) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.032044613175636 position[mm]: (-179.925071504,30.865739181739,-600) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0099075047837999 position[mm]: (-244.62234860302,36.594503573405,29.059797510778) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.073735431848339 position[mm]: (-262.41565431963,38.125953312336,200) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0027998329016653 position[mm]: (-328.04989874914,48.706429214642,807.87149700822) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0066124461051446 position[mm]: (-330.6959870383,49.112427733594,832.97422346406) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0095884732275101 position[mm]: (-333.25264742087,49.53976713055,856.9406275645) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00078596029157625 position[mm]: (-333.62131665168,49.604923799035,860.30151919127) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.068113606398279 position[mm]: (-348.98412112829,52.336187665419,1000) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00030842193291842 position[mm]: (-414.3370167218,62.715309684197,1600.965530636) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0024505535309356 position[mm]: (-415.04324219874,62.834215056633,1607.5113524622) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0077822017972924 position[mm]: (-416.51131791336,63.08914048288,1621.0776661666) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.002828945260702 position[mm]: (-417.63097822407,63.276254083525,1631.4740583126) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.018563856656148 position[mm]: (-421.246921062,63.858482571464,1665.1000846681) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0030223239732425 position[mm]: (-421.69788370946,63.934792311985,1669.3523715854) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0082667189846348 position[mm]: (-424.26500053854,64.386956671702,1693.5937685125) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.007700040333457 position[mm]: (-426.6211760519,64.776468342789,1715.6790122037) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00038351590932839 position[mm]: (-426.99750239221,64.841167377741,1719.2246818254) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0032289245543557 position[mm]: (-427.66738114565,64.964683792794,1725.5301250961) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.016562482858488 position[mm]: (-431.83501299051,65.715238846767,1764.8168750986) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.019179749936055 position[mm]: (-435.53726090863,66.378560761097,1800) - trackID: 71 chamberNb: 4 energy deposit[MeV]: 0.0023775997245385 position[mm]: (-431.7217762007,65.921040111849,1764.8569794718) - trackID: 71 chamberNb: 4 energy deposit[MeV]: 0.0053989564533198 position[mm]: (-431.59757351373,66.062134971598,1764.8761595771) - trackID: 71 chamberNb: 4 energy deposit[MeV]: 0.0060695859887285 position[mm]: (-431.64030317564,66.081057942388,1764.911005648) - trackID: 82 chamberNb: 4 energy deposit[MeV]: 0.001521600486611 position[mm]: (-431.6032446701,66.061717940173,1764.8694753361) - trackID: 81 chamberNb: 4 energy deposit[MeV]: 0.0014984521837645 position[mm]: (-431.72818115142,65.926787297391,1764.8565411451) - trackID: 70 chamberNb: 4 energy deposit[MeV]: 0.0022749541066549 position[mm]: (-427.6656631712,64.979168215817,1725.5307573881) - trackID: 69 chamberNb: 4 energy deposit[MeV]: 0.0024210931252862 position[mm]: (-426.98509082032,64.831508259966,1719.227006) - trackID: 68 chamberNb: 4 energy deposit[MeV]: 0.0014531731564503 position[mm]: (-426.61405533004,64.780622410887,1715.6800227417) - trackID: 67 chamberNb: 4 energy deposit[MeV]: 0.0042081817528704 position[mm]: (-424.29376786987,64.405465418078,1693.592688015) - trackID: 66 chamberNb: 4 energy deposit[MeV]: 3.2326428519605e-05 position[mm]: (-421.65965598117,63.895892447935,1669.3631731424) - trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.00040681573948604 position[mm]: (-421.58912696578,63.904952828845,1669.430796676) - trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.0019356997665722 position[mm]: (-421.64408768168,63.941865731678,1669.4238505001) - trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.0027654606715835 position[mm]: (-421.63753746856,63.954851973778,1669.4114913525) - trackID: 85 chamberNb: 4 energy deposit[MeV]: 0.0019531212310588 position[mm]: (-421.64287162883,63.93339710374,1669.4155549204) - trackID: 84 chamberNb: 4 energy deposit[MeV]: 0.0017914308575749 position[mm]: (-421.58451691478,63.912905801458,1669.4362389528) - trackID: 83 chamberNb: 4 energy deposit[MeV]: 0.001997279790173 position[mm]: (-421.65273675212,63.887770692756,1669.3571176589) - trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.0036666156976554 position[mm]: (-421.21912446185,63.858313915037,1665.1048162612) - trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0015209455990615 position[mm]: (-417.63599583353,63.269059908265,1631.4740004963) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00057491903946806 position[mm]: (-416.82049497637,63.352532745209,1621.1990975885) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0072604648694903 position[mm]: (-423.32532587448,68.546105674866,1615.862830758) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0011452185216378 position[mm]: (-423.39059812212,67.979098573556,1613.5973224063) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.008327101252842 position[mm]: (-425.5646480322,59.857414058167,1611.905769673) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0096424846396158 position[mm]: (-432.69921273575,57.390968081406,1609.8696978171) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0056398135657389 position[mm]: (-436.05596523415,61.169513784219,1607.9256892859) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.012000272718975 position[mm]: (-440.61462325723,62.241307925897,1612.6648046768) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.00014890991618058 position[mm]: (-440.72959502644,62.213753542902,1612.8374069608) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0052145060170474 position[mm]: (-444.99531719594,59.946179957187,1612.3778871142) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0088149174645896 position[mm]: (-446.04734218799,58.767696083433,1612.0823834415) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0074074390003411 position[mm]: (-446.64250834073,58.458223049126,1611.1097251584) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0050774148566002 position[mm]: (-447.35288518397,57.966471716286,1611.1354746088) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0030809830752238 position[mm]: (-447.61377209543,58.419510338179,1611.5163001377) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0014169745188698 position[mm]: (-447.70106322791,58.269460919332,1611.6472744024) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0098765572884632 position[mm]: (-447.91121893349,58.232642615502,1611.8965289739) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0062651455500279 position[mm]: (-447.88291721724,58.218461664865,1611.844252923) - trackID: 92 chamberNb: 4 energy deposit[MeV]: 0.0023031041793832 position[mm]: (-447.91221684566,58.218204738885,1611.8998410431) - trackID: 91 chamberNb: 4 energy deposit[MeV]: 0.0016256049451629 position[mm]: (-447.69433638014,58.272157890703,1611.6534107603) - trackID: 90 chamberNb: 4 energy deposit[MeV]: 0.0041285728115593 position[mm]: (-447.63907974749,58.415255139983,1611.4950617073) - trackID: 89 chamberNb: 4 energy deposit[MeV]: 0.0018800039423149 position[mm]: (-440.72319563215,62.209292476381,1612.8456492048) - trackID: 88 chamberNb: 4 energy deposit[MeV]: 0.002771692333438 position[mm]: (-435.79516306169,61.2972150668,1607.7380008031) - trackID: 88 chamberNb: 4 energy deposit[MeV]: 0.00017327612071831 position[mm]: (-435.96137938499,61.349295379569,1607.7567396082) - trackID: 88 chamberNb: 4 energy deposit[MeV]: 0.0086378281684138 position[mm]: (-436.1239980817,61.256321358302,1607.8153646605) - trackID: 88 chamberNb: 4 energy deposit[MeV]: 0.004665810276073 position[mm]: (-436.1291305252,61.223607537525,1607.83718247) - trackID: 94 chamberNb: 4 energy deposit[MeV]: 0.0014012792877793 position[mm]: (-435.95946324111,61.350661086032,1607.7643322759) - trackID: 93 chamberNb: 4 energy deposit[MeV]: 0.0017829583844171 position[mm]: (-435.79750257517,61.288133548154,1607.7429853235) - trackID: 87 chamberNb: 4 energy deposit[MeV]: 0.0024996605485154 position[mm]: (-423.39732425018,67.992645575764,1613.590454301) - trackID: 86 chamberNb: 4 energy deposit[MeV]: 0.0019169738759531 position[mm]: (-416.8186105018,63.349406330284,1621.2101438566) - trackID: 62 chamberNb: 4 energy deposit[MeV]: 0.0018004260734449 position[mm]: (-415.03791502359,62.824959722603,1607.5125790658) - trackID: 61 chamberNb: 4 energy deposit[MeV]: 0.0016634262701476 position[mm]: (-414.33343779963,62.724369214087,1600.9661678844) - trackID: 51 chamberNb: 3 energy deposit[MeV]: 0.0019085668256767 position[mm]: (-333.61055105279,49.608830112658,860.30315444558) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.01295936376694 position[mm]: (-333.58332500897,46.892239081936,857.69826774603) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.0061574253860346 position[mm]: (-333.03404300069,46.565670432668,859.58833796163) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.0023596997113195 position[mm]: (-333.39169634177,47.785106709549,859.8537470938) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.0055696924761885 position[mm]: (-333.20506283631,47.832888713385,860.95727187494) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.0048926639383201 position[mm]: (-332.61904589327,48.425560259026,860.6648169951) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.0091499874824536 position[mm]: (-333.04534920816,48.961450009232,860.58043701857) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.0016690049168683 position[mm]: (-332.75477108688,49.106279866748,860.48421696801) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.00052149500201121 position[mm]: (-332.8905870167,49.114080903838,860.54839284218) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.0011738216758262 position[mm]: (-332.81877977683,48.997237300604,860.53369244088) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.0036334323362963 position[mm]: (-332.7915519113,49.036063651661,860.40707817066) - trackID: 50 chamberNb: 3 energy deposit[MeV]: 0.0055053559491969 position[mm]: (-332.8085280072,49.055816963728,860.45028829611) - trackID: 100 chamberNb: 3 energy deposit[MeV]: 0.0014077502740401 position[mm]: (-332.79044089517,49.043427392241,860.40417369665) - trackID: 99 chamberNb: 3 energy deposit[MeV]: 0.0025165024378615 position[mm]: (-332.81816231897,48.981207587109,860.5288200284) - trackID: 98 chamberNb: 3 energy deposit[MeV]: 0.0016058798051587 position[mm]: (-332.88285081541,49.119015495064,860.54655254044) - trackID: 97 chamberNb: 3 energy deposit[MeV]: 0.0021623842140407 position[mm]: (-332.76068308552,49.105839788701,860.47194313882) - trackID: 96 chamberNb: 3 energy deposit[MeV]: 0.0014569848339347 position[mm]: (-333.47658499628,47.841670529193,859.86752897177) - trackID: 96 chamberNb: 3 energy deposit[MeV]: 0.0050918573933498 position[mm]: (-333.46490166479,47.856419245584,859.82665033053) - trackID: 101 chamberNb: 3 energy deposit[MeV]: 0.0022977334634056 position[mm]: (-333.47906885473,47.855621272547,859.87179806903) - trackID: 49 chamberNb: 3 energy deposit[MeV]: 0.0043396494800029 position[mm]: (-330.41495833681,48.715479496476,833.09138133097) - trackID: 49 chamberNb: 3 energy deposit[MeV]: 0.00083857620245222 position[mm]: (-330.60176287663,48.47449898182,833.23413904952) - trackID: 49 chamberNb: 3 energy deposit[MeV]: 0.01108071312186 position[mm]: (-330.72182016409,48.284463758435,833.07685231606) - trackID: 49 chamberNb: 3 energy deposit[MeV]: 0.0053794772478426 position[mm]: (-330.76920898601,48.273392461381,833.07999355496) - trackID: 102 chamberNb: 3 energy deposit[MeV]: 0.0024030761497218 position[mm]: (-330.59061827512,48.476381493828,833.22319051772) - trackID: 48 chamberNb: 3 energy deposit[MeV]: 0.0055008410625264 position[mm]: (-328.03648052443,48.658239477198,807.87758428886) - trackID: 44 chamberNb: 2 energy deposit[MeV]: 0.0019974735607632 position[mm]: (-244.6194497275,36.606401200256,29.060564743756) - trackID: 35 chamberNb: 1 energy deposit[MeV]: 0.0017050339444326 position[mm]: (-172.18306822779,30.176490293858,-676.24270367768) - trackID: 34 chamberNb: 1 energy deposit[MeV]: 0.0020463850318471 position[mm]: (-163.47930765808,29.173832851924,-760.73915564443) - trackID: 33 chamberNb: 1 energy deposit[MeV]: 0.0061787885441249 position[mm]: (-161.95859217612,29.041160033496,-775.25982667197) - trackID: 26 chamberNb: 0 energy deposit[MeV]: 0.013718759131562 position[mm]: (-103.06638213865,-0.49324119630679,-1451.4218725987) - trackID: 26 chamberNb: 0 energy deposit[MeV]: 0.00068163633677501 position[mm]: (-105.9220098121,-5.7983553418543,-1448.7716595212) - trackID: 26 chamberNb: 0 energy deposit[MeV]: 0.010251363605859 position[mm]: (-135.8681608612,-18.190641328216,-1428.3621830789) - trackID: 26 chamberNb: 0 energy deposit[MeV]: 0.0110791681584 position[mm]: (-131.88175463864,-3.9709147813379,-1406.8035079715) - trackID: 26 chamberNb: 0 energy deposit[MeV]: 0.010332035645655 position[mm]: (-129.79447007195,-24.636305232997,-1400) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0040991313454719 position[mm]: (69.24250888976,-431.57519551221,-795.26460317121) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0090271470354713 position[mm]: (83.500382846474,-444.26673890599,-800) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0099759187802925 position[mm]: (75.548468715617,-458.96918871927,-794.40208089699) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.014716135910259 position[mm]: (64.405902819773,-474.96600903598,-785.90667633096) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0076868800392185 position[mm]: (69.99681095306,-485.37449445776,-777.40182738397) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.014816871017265 position[mm]: (92.729769684417,-496.55359509307,-772.69241551154) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0035974279078345 position[mm]: (97.368541580247,-496.65863089901,-771.01255339218) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00029218457080505 position[mm]: (100.29049243703,-497.50406790426,-770.08508951753) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00042200007752067 position[mm]: (102.13328835414,-498.48328797238,-769.07317324873) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.00069665566003332 position[mm]: (103.81499074851,-499.59786080893,-768.44618313489) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0098248132457664 position[mm]: (114.16753272308,-500.21903951113,-762.31330691255) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0038131572015027 position[mm]: (120.98064600757,-496.4394308444,-759.72015308159) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.035007628480941 position[mm]: (152.28961015751,-461.14444888629,-776.06975745488) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0043110448443396 position[mm]: (152.05495614545,-455.31873824813,-774.70655582038) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0039333352554308 position[mm]: (156.03526539974,-445.01905746453,-775.9968636957) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0015754037199344 position[mm]: (156.80873202797,-445.25314651,-777.6934869307) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.027431372610978 position[mm]: (166.46802519777,-444.97754895813,-795.61716044248) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0057340233882406 position[mm]: (163.2106197729,-434.68737469093,-795.45063478152) - trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0047125805233807 position[mm]: (159.5088389587,-431.75310135337,-800) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 4.3281315652563e-05 position[mm]: (157.50597991358,-429.10454086665,-799.96710862388) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.00026611335740637 position[mm]: (157.45348287047,-429.10268592102,-799.93838710716) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.00041352011604226 position[mm]: (157.41522260862,-429.05695758462,-799.93682913694) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.00013297970365537 position[mm]: (157.38477872421,-429.00762293881,-799.92448302383) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.00020249879535512 position[mm]: (157.33951664905,-428.99685074727,-799.8879640655) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.0001464687959493 position[mm]: (157.28622229117,-429.02088901018,-799.87593231403) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.00026263568948788 position[mm]: (157.22609593351,-429.02246468301,-799.84866816221) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.00085854345972122 position[mm]: (157.14922170761,-429.02419731821,-799.83585338679) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.00083528731685629 position[mm]: (157.13516165374,-429.09246816522,-799.87190561469) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.00019283948027661 position[mm]: (157.13237170433,-429.12749687063,-799.92652542709) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.00036965871153281 position[mm]: (157.09987811254,-429.10786965387,-799.9670062284) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.00074503056355463 position[mm]: (157.08684382867,-429.06407844635,-799.99043715378) - trackID: 138 chamberNb: 1 energy deposit[MeV]: 0.00047184606221284 position[mm]: (157.09010846884,-429.02929052272,-799.99912888738) - trackID: 137 chamberNb: 1 energy deposit[MeV]: 0.0019655655091285 position[mm]: (163.21066198762,-434.66184648239,-795.43526898181) - trackID: 137 chamberNb: 1 energy deposit[MeV]: 0.0018487633875717 position[mm]: (163.2208252053,-434.66438605324,-795.43897144159) - trackID: 136 chamberNb: 1 energy deposit[MeV]: 0.0014588429961218 position[mm]: (166.47547511064,-444.97666462444,-795.61350705711) - trackID: 135 chamberNb: 1 energy deposit[MeV]: 0.0024347551363478 position[mm]: (156.8080766064,-445.23786484273,-777.69825409021) - trackID: 134 chamberNb: 1 energy deposit[MeV]: 0.001542057825605 position[mm]: (156.03785932579,-445.02758727548,-775.99671336976) - trackID: 133 chamberNb: 1 energy deposit[MeV]: 0.0076494680662403 position[mm]: (152.13635198679,-455.30582383317,-774.70405189397) - trackID: 132 chamberNb: 1 energy deposit[MeV]: 0.0028024599443638 position[mm]: (152.28552436635,-461.14395841967,-776.08875555558) - trackID: 131 chamberNb: 1 energy deposit[MeV]: 0.0019269466815159 position[mm]: (120.97956420632,-496.44910266007,-759.713638062) - trackID: 130 chamberNb: 1 energy deposit[MeV]: 0.0017311025325853 position[mm]: (114.16589252133,-500.2170858541,-762.32322769011) - trackID: 129 chamberNb: 1 energy deposit[MeV]: 0.0030504372323868 position[mm]: (103.80894353119,-499.61882480507,-768.44507881661) - trackID: 128 chamberNb: 1 energy deposit[MeV]: 0.0017732190364058 position[mm]: (100.28794030934,-497.51429968593,-770.08537043739) - trackID: 127 chamberNb: 1 energy deposit[MeV]: 0.001802330691382 position[mm]: (97.36912490854,-496.64970273982,-771.00657044919) - trackID: 126 chamberNb: 1 energy deposit[MeV]: 0.0015961148700113 position[mm]: (69.9915797438,-485.37194572695,-777.3945846058) - trackID: 125 chamberNb: 1 energy deposit[MeV]: 0.0034602963223618 position[mm]: (64.38744606488,-474.95217649167,-785.89465084347) - trackID: 124 chamberNb: 1 energy deposit[MeV]: 0.0013701648836883 position[mm]: (75.547287011076,-458.97085734572,-794.40954034557) - trackID: 123 chamberNb: 1 energy deposit[MeV]: 0.0018216230877548 position[mm]: (69.25018631019,-431.56777062561,-795.26239272092) - trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.0026455673413212 position[mm]: (-131.87960090781,-3.965702637754,-1406.7864582622) - trackID: 105 chamberNb: 0 energy deposit[MeV]: 0.0016586207923515 position[mm]: (-135.86461217645,-18.18268999083,-1428.3665204874) - trackID: 104 chamberNb: 0 energy deposit[MeV]: 0.0015011572239548 position[mm]: (-105.91883611909,-5.8045278872531,-1448.7767970139) - trackID: 103 chamberNb: 0 energy deposit[MeV]: 0.0030322862256654 position[mm]: (-103.04602033812,-0.50064902656783,-1451.421800124) - trackID: 25 chamberNb: 0 energy deposit[MeV]: 0.0070636055882035 position[mm]: (-92.089313000115,19.796684491781,-1472.9294747858) - trackID: 24 chamberNb: 0 energy deposit[MeV]: 0.0022471336247649 position[mm]: (-84.924539847157,19.011680872284,-1541.9879528936) - trackID: 23 chamberNb: 0 energy deposit[MeV]: 0.0050598425143728 position[mm]: (-81.589684100868,17.627785962646,-1570.0512028338) - trackID: 23 chamberNb: 0 energy deposit[MeV]: 0.0068877932535054 position[mm]: (-81.348686543324,18.012976423727,-1570.2664125105) - trackID: 23 chamberNb: 0 energy deposit[MeV]: 0.014075858642315 position[mm]: (-81.568050646376,18.203030013092,-1570.2152821095) - trackID: 23 chamberNb: 0 energy deposit[MeV]: 0.0031522097902957 position[mm]: (-81.577835145066,18.188354156528,-1570.2298226748) - trackID: 160 chamberNb: 0 energy deposit[MeV]: 0.0083238336436313 position[mm]: (-81.617681238601,17.599542081212,-1570.1360954921) +-------->Storing hits in the ROOT file: in this event there are 173 hits in the tracker chambers: + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.014899316555636 position[mm]: (135.34916487525,102.99528107195,-1552.6183701303) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.013512946428453 position[mm]: (139.63008381395,106.25214080329,-1524.6953606198) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.018542442853562 position[mm]: (149.7858702313,114.55983404994,-1456.5970944359) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0020526737707075 position[mm]: (151.05064850161,115.60381249621,-1448.0342136757) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.017694439759102 position[mm]: (158.1301476649,121.31484040843,-1400) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.010521371112665 position[mm]: (249.82353020673,195.20670269911,-774.65579138188) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0015577521356535 position[mm]: (250.35564392143,195.64350406091,-770.99147321718) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.037815140386153 position[mm]: (263.50453597675,206.50494248103,-680.0740336204) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0081569849357089 position[mm]: (267.15039531056,209.50042094216,-654.75080292307) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.020962816396236 position[mm]: (274.92710982768,216.09849079382,-600) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0023717727380777 position[mm]: (363.4466941654,290.80351512509,16.659648344229) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.075748715123095 position[mm]: (388.00735088718,311.92512042929,190.59146632501) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0018668641410254 position[mm]: (389.43342541421,313.03647887156,200) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0017271125868965 position[mm]: (480.68800996228,383.0549404301,803.70188794635) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.004872956354984 position[mm]: (482.17638786066,384.2112308492,813.64578133335) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0083625259686724 position[mm]: (485.20302065488,386.63408189577,834.23492580327) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0071918609700163 position[mm]: (488.65903043601,389.36074386307,857.48944048143) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0049166671653863 position[mm]: (492.12669573683,392.12690407068,880.91507815272) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.014610851877068 position[mm]: (497.83861031684,396.64121516038,919.47938561579) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 4.9155955687818e-05 position[mm]: (498.2011243661,396.92419809306,921.90875737831) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.03772301603933 position[mm]: (509.77070251132,405.95668962647,999.34689515269) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00034470907240335 position[mm]: (509.86864160053,406.03150144038,1000) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00044675321331999 position[mm]: (600.47096615406,474.49714783944,1601.949974201) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0248394698459 position[mm]: (608.46876077252,480.49430151458,1654.8655282028) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0011295168805358 position[mm]: (608.87425220248,480.79760425141,1657.5520975782) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0009694002275958 position[mm]: (609.28457051277,481.1043818819,1660.2623641114) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.00348895738914 position[mm]: (612.41375821898,483.45146196549,1680.9560400721) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.016518392148011 position[mm]: (617.23571375734,487.09687881784,1713.1205927341) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0041069313679291 position[mm]: (618.64890119359,488.18417721209,1722.5543648675) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0075597515314792 position[mm]: (620.62526739366,489.75312013136,1735.8241815493) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.011480162260203 position[mm]: (624.25097319777,492.6569053087,1760.1594754627) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0089604467241982 position[mm]: (629.1605523253,496.46490714712,1792.5998086076) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0035230656090957 position[mm]: (630.2926812663,497.32172284013,1800) + trackID: 72 chamberNb: 4 energy deposit[MeV]: 0.0015560090953756 position[mm]: (629.15183061539,496.46349691425,1792.6016829575) + trackID: 71 chamberNb: 4 energy deposit[MeV]: 0.0018914900014427 position[mm]: (624.25714078069,492.66627204006,1760.1579629092) + trackID: 70 chamberNb: 4 energy deposit[MeV]: 0.0085444990060202 position[mm]: (620.60663772039,489.66096504396,1735.8473862962) + trackID: 69 chamberNb: 4 energy deposit[MeV]: 0.0039110424507272 position[mm]: (618.64805607637,488.15410928709,1722.5600676341) + trackID: 68 chamberNb: 4 energy deposit[MeV]: 0.00038634346827238 position[mm]: (617.24116028842,487.12111357897,1713.1186848694) + trackID: 68 chamberNb: 4 energy deposit[MeV]: 0.001947247830516 position[mm]: (617.24349854894,487.13237536076,1713.1209801178) + trackID: 86 chamberNb: 4 energy deposit[MeV]: 0.0015866655700922 position[mm]: (617.23906054569,487.11975387568,1713.1275764707) + trackID: 67 chamberNb: 4 energy deposit[MeV]: 0.0019652591963255 position[mm]: (612.41021087379,483.46278314918,1680.9558445318) + trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.0042826368407827 position[mm]: (609.31548677184,481.08821121003,1660.2619335155) + trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.0098299661634377 position[mm]: (608.76158493359,480.83168723006,1657.5778737523) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0032863437443644 position[mm]: (606.87126244436,482.02950559381,1656.941499299) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.021087517785139 position[mm]: (601.89165214516,496.22424529256,1646.4126496046) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0075086410751143 position[mm]: (596.86618547696,501.69389831898,1648.4924531427) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0041088221456269 position[mm]: (595.91031369867,497.63645866326,1647.4176266197) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0011403460202088 position[mm]: (595.69823966237,497.45867877815,1645.6480666525) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0026160423449349 position[mm]: (596.10935822347,498.08987600718,1643.4089470882) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0070559799752775 position[mm]: (597.29084999256,500.43085437526,1644.5154747715) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0083239363306785 position[mm]: (594.95803181154,499.95979643458,1644.1180674869) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0012966185792388 position[mm]: (595.56267025994,499.49848713038,1643.9406719391) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0077465331109288 position[mm]: (595.46032457913,499.1953336005,1645.5878646683) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0054001681729656 position[mm]: (595.97216560866,499.75891932664,1646.5357533858) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0020605290917026 position[mm]: (596.58594163361,499.7293114788,1646.09955637) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0074102658823306 position[mm]: (596.89312335119,500.13145038289,1645.4987275673) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00078434066360353 position[mm]: (596.85560694406,500.37497420576,1645.3965332333) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.00011203366761966 position[mm]: (596.83430670361,500.43176101779,1645.3797972418) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0049431948268505 position[mm]: (596.91508880251,500.70567026477,1645.3416441101) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.010039082841076 position[mm]: (596.83307455281,500.61031121215,1645.2308471711) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0020260793976306 position[mm]: (596.83549685811,500.59822214457,1645.2303265978) + trackID: 95 chamberNb: 4 energy deposit[MeV]: 0.0043818816094674 position[mm]: (596.80163244297,500.44314435587,1645.3900606205) + trackID: 94 chamberNb: 4 energy deposit[MeV]: 0.0021132340941923 position[mm]: (596.85828664101,500.37238655725,1645.3840225995) + trackID: 93 chamberNb: 4 energy deposit[MeV]: 0.0027211131059747 position[mm]: (596.60248206285,499.73009037268,1646.1083149309) + trackID: 92 chamberNb: 4 energy deposit[MeV]: 0.0019196405803157 position[mm]: (595.4666344671,499.20181759136,1645.5807293974) + trackID: 91 chamberNb: 4 energy deposit[MeV]: 0.003070163121614 position[mm]: (595.58390948984,499.50401523436,1643.943279282) + trackID: 90 chamberNb: 4 energy deposit[MeV]: 0.0016632245939403 position[mm]: (595.69259548255,497.45140298608,1645.6448716043) + trackID: 89 chamberNb: 4 energy deposit[MeV]: 0.0094931480291148 position[mm]: (596.16734692037,497.25839963897,1647.4067302303) + trackID: 89 chamberNb: 4 energy deposit[MeV]: 0.0088705426494117 position[mm]: (596.02261983502,497.39040222456,1647.3964923806) + trackID: 89 chamberNb: 4 energy deposit[MeV]: 0.004423375171435 position[mm]: (596.03904823569,497.40088681321,1647.4274693741) + trackID: 88 chamberNb: 4 energy deposit[MeV]: 0.0024865714524248 position[mm]: (596.85715224291,501.69913341393,1648.4797389449) + trackID: 87 chamberNb: 4 energy deposit[MeV]: 0.0019713863734291 position[mm]: (606.86971656649,482.02196763264,1656.9505930697) + trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0020935321689592 position[mm]: (600.47879879313,474.48692922876,1601.9505716022) + trackID: 59 chamberNb: 3 energy deposit[MeV]: 0.0015631672658647 position[mm]: (509.7643692201,405.95051063551,999.34893205436) + trackID: 58 chamberNb: 3 energy deposit[MeV]: 0.0085674344833432 position[mm]: (498.22677392551,396.79651778594,921.93408546366) + trackID: 58 chamberNb: 3 energy deposit[MeV]: 0.0018741760393214 position[mm]: (498.23431367487,396.78850327396,921.93612816168) + trackID: 57 chamberNb: 3 energy deposit[MeV]: 0.0015526598785765 position[mm]: (497.8436070029,396.63373539601,919.47988647724) + trackID: 56 chamberNb: 3 energy deposit[MeV]: 0.006182826628425 position[mm]: (492.60259115528,392.26073125093,880.90881649417) + trackID: 56 chamberNb: 3 energy deposit[MeV]: 0.0067892144503128 position[mm]: (492.61644568996,392.55091080097,881.00628782218) + trackID: 56 chamberNb: 3 energy deposit[MeV]: 0.0071934714145645 position[mm]: (492.56181637603,392.42107182432,881.02818439548) + trackID: 56 chamberNb: 3 energy deposit[MeV]: 0.0005812959319287 position[mm]: (492.56824498163,392.42375473372,881.05533693701) + trackID: 56 chamberNb: 3 energy deposit[MeV]: 0.0031437163224394 position[mm]: (492.54824299409,392.42365829748,881.06630133956) + trackID: 55 chamberNb: 3 energy deposit[MeV]: 0.0059997796665022 position[mm]: (489.12757413844,389.46388700728,857.48475596453) + trackID: 55 chamberNb: 3 energy deposit[MeV]: 0.0086544985690095 position[mm]: (488.83337336281,389.42008040138,857.44632880302) + trackID: 55 chamberNb: 3 energy deposit[MeV]: 0.0088065222721457 position[mm]: (488.83782328917,389.41834250068,857.5476652761) + trackID: 54 chamberNb: 3 energy deposit[MeV]: 0.0079732202144124 position[mm]: (485.10636594554,386.60302370375,834.26348530571) + trackID: 54 chamberNb: 3 energy deposit[MeV]: 0.0010565843008117 position[mm]: (485.10973180825,386.59910082838,834.26157438197) + trackID: 53 chamberNb: 3 energy deposit[MeV]: 0.0031076311504377 position[mm]: (482.15879042316,384.22500193218,813.64806982303) + trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.0037759332398081 position[mm]: (480.69873645185,383.08189383546,803.69903818479) + trackID: 39 chamberNb: 2 energy deposit[MeV]: 0.0082380684278241 position[mm]: (388.09542867167,311.90005271782,190.5898387816) + trackID: 38 chamberNb: 2 energy deposit[MeV]: 0.0019980511453675 position[mm]: (363.45314581205,290.79329575521,16.660550366127) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0091204924659456 position[mm]: (266.74348412233,209.16509043026,-653.6164641414) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 6.002505066264e-05 position[mm]: (266.72676133083,209.12476941807,-653.79640864807) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0011413448796649 position[mm]: (266.75964504531,209.21006398217,-653.98098970304) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.002753496409812 position[mm]: (266.55520250868,209.28241629787,-654.03883563228) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0090321547290052 position[mm]: (266.59682762404,209.22410984666,-654.1162894836) + trackID: 103 chamberNb: 1 energy deposit[MeV]: 0.0030754585445163 position[mm]: (266.57475637617,209.29244036627,-654.03602773909) + trackID: 102 chamberNb: 1 energy deposit[MeV]: 0.0015184652564758 position[mm]: (266.7630674438,209.21441058582,-653.98780579023) + trackID: 101 chamberNb: 1 energy deposit[MeV]: 0.0038570605837986 position[mm]: (266.71603347896,209.10020678561,-653.80993690986) + trackID: 29 chamberNb: 1 energy deposit[MeV]: 0.0018817539038815 position[mm]: (267.15533931648,209.49037172901,-654.74978064444) + trackID: 28 chamberNb: 1 energy deposit[MeV]: 0.010254195899456 position[mm]: (263.41582902488,206.65976308983,-680.0584819208) + trackID: 28 chamberNb: 1 energy deposit[MeV]: 0.0023135238410836 position[mm]: (263.42828888603,206.6534873743,-680.06347898749) + trackID: 27 chamberNb: 1 energy deposit[MeV]: 0.0017002641104672 position[mm]: (250.36358915458,195.64939877901,-770.99289118821) + trackID: 26 chamberNb: 1 energy deposit[MeV]: 0.0020613984818157 position[mm]: (249.82738340179,195.19477023575,-774.65432311682) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.01412781733919 position[mm]: (164.41058652032,141.08995384906,-1432.2246581951) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.007005666085753 position[mm]: (168.18454209534,145.80709193852,-1430.4857716659) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.0045200624562434 position[mm]: (177.96441506554,163.34752668855,-1426.5104334155) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.014269463638463 position[mm]: (174.71064383276,188.50910868322,-1409.788368563) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.0011450059797652 position[mm]: (174.80633788088,192.68543770181,-1407.2851085597) + trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.0089219546200588 position[mm]: (171.06626168481,209.6905189605,-1400) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.0097923441025264 position[mm]: (174.50044642188,489.05958806078,-784.46111730043) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.0030821342023519 position[mm]: (175.58446599476,489.87352375209,-773.5848940857) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.0040246850913995 position[mm]: (174.13292677659,484.66737469942,-761.66933999788) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.0062012997452781 position[mm]: (169.38443065623,477.08792111528,-754.43691834091) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.0029904251219835 position[mm]: (167.62004708849,471.81272311534,-748.47315438041) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.0079796676510485 position[mm]: (161.47599313158,460.65874349283,-744.19537727886) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.0079726687004562 position[mm]: (147.28413622556,447.1396804211,-746.94558646463) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.0053191231646053 position[mm]: (140.5576195347,458.30899041825,-758.39652186545) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.017757729110536 position[mm]: (147.98040669286,489.39776558504,-774.55558698283) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.0050229085963032 position[mm]: (149.83076176072,497.83701469126,-781.2522959718) + trackID: 20 chamberNb: 1 energy deposit[MeV]: 0.023458257668226 position[mm]: (153.92931539348,520.93127432366,-800) + trackID: 123 chamberNb: 1 energy deposit[MeV]: 0.0022463558587466 position[mm]: (149.8431036811,497.84031352769,-781.24607504846) + trackID: 122 chamberNb: 1 energy deposit[MeV]: 0.0020347815539577 position[mm]: (147.96972527167,489.39896242909,-774.56179015514) + trackID: 121 chamberNb: 1 energy deposit[MeV]: 0.00056360270085973 position[mm]: (140.5908395769,458.33029790647,-758.36480396042) + trackID: 121 chamberNb: 1 energy deposit[MeV]: 0.0031324218840261 position[mm]: (140.56832919612,458.32762209926,-758.36601618753) + trackID: 149 chamberNb: 1 energy deposit[MeV]: 0.0018590854265516 position[mm]: (140.5907960265,458.33499164529,-758.37484489182) + trackID: 120 chamberNb: 1 energy deposit[MeV]: 0.001372018259451 position[mm]: (147.27687034918,447.13733448962,-746.94420070868) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.0052919414212327 position[mm]: (159.41810985001,460.99788303016,-743.54195273965) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.0047854516217792 position[mm]: (160.32804531454,459.72276336318,-743.37055537448) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.0015285225792396 position[mm]: (160.85861521972,458.99833616904,-743.56603534257) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.0050299710823706 position[mm]: (161.06396089346,458.21081803438,-742.84205808748) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.006428632173473 position[mm]: (161.7692600841,458.84715595859,-742.97623771537) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.0099173547978864 position[mm]: (161.08387690708,458.97485750819,-743.08813671254) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.0063102198580427 position[mm]: (160.89304691521,459.05428617052,-743.38864978154) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.0054619734727283 position[mm]: (160.78933004986,459.1968485539,-743.48541103194) + trackID: 119 chamberNb: 1 energy deposit[MeV]: 0.0080398182551298 position[mm]: (160.81665750203,459.11960880313,-743.51826409123) + trackID: 152 chamberNb: 1 energy deposit[MeV]: 0.0043129824172648 position[mm]: (160.82468807435,458.9976620123,-743.55646889699) + trackID: 151 chamberNb: 1 energy deposit[MeV]: 0.0072929421431946 position[mm]: (160.36813807123,459.76396775679,-743.4207705341) + trackID: 150 chamberNb: 1 energy deposit[MeV]: 0.0015209139792765 position[mm]: (159.41765592353,460.99863741964,-743.53320168949) + trackID: 118 chamberNb: 1 energy deposit[MeV]: 0.0034226953921794 position[mm]: (167.63226203132,471.82292525844,-748.45319051438) + trackID: 117 chamberNb: 1 energy deposit[MeV]: 0.0017615208630362 position[mm]: (169.37653956879,477.09377568254,-754.4334885292) + trackID: 116 chamberNb: 1 energy deposit[MeV]: 0.006313804593863 position[mm]: (174.19219262913,484.66155901536,-761.65240645841) + trackID: 115 chamberNb: 1 energy deposit[MeV]: 0.0021822819691153 position[mm]: (175.59300161822,489.8840962069,-773.58366327473) + trackID: 114 chamberNb: 1 energy deposit[MeV]: 0.0037392893023857 position[mm]: (174.47771273493,489.0420102561,-784.45996436411) + trackID: 108 chamberNb: 0 energy deposit[MeV]: 0.0024375579797475 position[mm]: (174.81422556357,192.6819487361,-1407.2716537451) + trackID: 107 chamberNb: 0 energy deposit[MeV]: 0.0014724085910625 position[mm]: (174.71828826009,188.50682692219,-1409.7855389463) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.0013725120815325 position[mm]: (178.51263368643,163.31977088939,-1426.600750945) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.0063586427033381 position[mm]: (177.05602929735,163.40584383226,-1427.1435115865) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.0026740136818714 position[mm]: (176.42684046879,163.20480289377,-1426.0903448914) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.0011708610132828 position[mm]: (176.96046023875,163.53067288072,-1425.9098160083) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.0088898194998245 position[mm]: (177.79786228672,163.03788276938,-1425.7851995555) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.0070899237743849 position[mm]: (177.74299022988,163.42085592594,-1425.2985237175) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.0017540787605023 position[mm]: (177.83702930825,163.29409534382,-1425.5674945907) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.0063938458488389 position[mm]: (177.73561380284,163.31230257617,-1425.7801029856) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.0009814977295759 position[mm]: (177.79377695546,163.3156300849,-1425.7327887275) + trackID: 106 chamberNb: 0 energy deposit[MeV]: 0.0054874627831563 position[mm]: (177.80643755806,163.2670759125,-1425.727208741) + trackID: 157 chamberNb: 0 energy deposit[MeV]: 0.0020877316943194 position[mm]: (177.78707347852,163.31509525625,-1425.7218494428) + trackID: 156 chamberNb: 0 energy deposit[MeV]: 0.0021062693347469 position[mm]: (177.83902216999,163.30693655535,-1425.5674241466) + trackID: 155 chamberNb: 0 energy deposit[MeV]: 0.0018531488556985 position[mm]: (177.7534518571,163.42097087198,-1425.2949934611) + trackID: 154 chamberNb: 0 energy deposit[MeV]: 0.0020901639543068 position[mm]: (176.95389293552,163.51978111091,-1425.9079060576) + trackID: 153 chamberNb: 0 energy deposit[MeV]: 0.0043696988789103 position[mm]: (178.52484957755,163.32459657044,-1426.6342073747) + trackID: 105 chamberNb: 0 energy deposit[MeV]: 0.0013753167514428 position[mm]: (168.18987397587,145.80360635738,-1430.4902445229) + trackID: 104 chamberNb: 0 energy deposit[MeV]: 0.002051392264427 position[mm]: (164.40705418,141.0979987945,-1432.2336104827) + trackID: 19 chamberNb: 0 energy deposit[MeV]: 0.007065605750878 position[mm]: (149.73222377349,114.6084231759,-1456.588638133) + trackID: 18 chamberNb: 0 energy deposit[MeV]: 0.0022477827879668 position[mm]: (139.63982956741,106.24179239265,-1524.6949141732) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.0066241218562074 position[mm]: (134.42070344523,103.26124883587,-1552.3025827355) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.010996014954223 position[mm]: (133.69198011049,103.1607512862,-1552.4484917649) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.0040626523492689 position[mm]: (133.97027946488,102.92911778771,-1552.5081895226) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.0013512514804432 position[mm]: (134.1042389623,103.10772435302,-1552.403400735) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.0023359609618797 position[mm]: (134.06454958066,103.0724246629,-1552.5673612421) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.0082276376680027 position[mm]: (134.0896300936,103.00226734806,-1552.6203275435) + trackID: 159 chamberNb: 0 energy deposit[MeV]: 0.0017455638225189 position[mm]: (134.07415830795,103.07611016672,-1552.5677586155) + trackID: 158 chamberNb: 0 energy deposit[MeV]: 0.0021655998914293 position[mm]: (134.11242300329,103.11761205474,-1552.4075817624) writing Event_2 >>> Event 0 0 trajectories stored in this event. CalorimeterSD::Initialize: TrackerChamberSD ExP01/TrackerChamberSD_HC is not found. --------->Storing hits in the ROOT file: in this event there are 79 hits in the tracker chambers: - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0038256680594011 position[mm]: (-99.725804542651,-82.751979535565,-1594.0351558999) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0023710741785758 position[mm]: (-101.40320566577,-84.156295951867,-1580.2767531657) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0045472510557289 position[mm]: (-103.46984875125,-85.895212859636,-1563.2938296054) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0051443317309733 position[mm]: (-105.06692360322,-87.219818382151,-1550.2447072358) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.01029914157395 position[mm]: (-107.73209372526,-89.425518689317,-1528.475307278) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00024808326472985 position[mm]: (-107.97473865714,-89.630882737689,-1526.4791914862) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0039898104176092 position[mm]: (-108.77646663177,-90.308941102964,-1519.8849147497) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.039452899186373 position[mm]: (-118.49857101871,-98.488338051983,-1440.2148712397) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.016427676333604 position[mm]: (-123.46850355569,-102.6226000066,-1400) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.013470744963425 position[mm]: (-200.02776478427,-166.03669783046,-768.81691157026) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0051423002186082 position[mm]: (-202.89635212587,-168.29185662068,-745.25824561148) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.015438056101693 position[mm]: (-206.42248645991,-171.11765806724,-716.05707906227) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.010216533314494 position[mm]: (-209.27816312206,-173.44387694325,-691.90821123546) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0021840034766149 position[mm]: (-210.04651669515,-174.06508946523,-685.42835482991) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 1.4467093757137e-05 position[mm]: (-210.10171898308,-174.1097664462,-684.96314977046) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0020773685166426 position[mm]: (-211.10458603318,-174.92311521546,-676.50193659507) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0046772590391334 position[mm]: (-212.46295676744,-176.02127316239,-665.05510342187) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0068921049392707 position[mm]: (-214.26679818504,-177.46879297834,-650.01003714194) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0006979171684055 position[mm]: (-214.32977631087,-177.51968254837,-649.49033289163) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.010702592227678 position[mm]: (-217.06047391488,-179.72492887068,-626.96610388137) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.013352334498165 position[mm]: (-220.35278347839,-182.33284493847,-600) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.013881444277932 position[mm]: (-300.20945294897,-244.82641749233,37.476798117362) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.010926113505139 position[mm]: (-303.54373940086,-247.40731638062,64.050960074723) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.016535244373234 position[mm]: (-309.06853685439,-251.75247408517,107.80809417221) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.011233199226129 position[mm]: (-312.64648711683,-254.51009408283,135.82563972319) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.022116829250145 position[mm]: (-319.90216093965,-260.18901471169,193.35717743064) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0044162614430905 position[mm]: (-320.74225610769,-260.87601558924,200) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0049544631987665 position[mm]: (-391.1228579448,-319.97769957339,819.47856683121) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.00025916310905884 position[mm]: (-391.17626401388,-320.02172234555,819.94440645317) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.032145425764078 position[mm]: (-401.98474144255,-328.87533778131,913.92530617045) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0063710092497099 position[mm]: (-403.86327916317,-330.43421800839,930.10561237407) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.024471541737962 position[mm]: (-411.88630189828,-337.15817388843,1000) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0016116345495367 position[mm]: (-483.18737657406,-396.19860798673,1613.9073303531) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.045123722645794 position[mm]: (-497.94554937876,-408.60730979845,1742.3127457572) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.011332349399396 position[mm]: (-502.58296659148,-412.67045519241,1782.9710170573) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0053164926809746 position[mm]: (-504.54053987438,-414.35011467852,1800) - trackID: 83 chamberNb: 4 energy deposit[MeV]: 0.0061776146863355 position[mm]: (-502.54393901777,-412.62719648281,1782.9846909824) - trackID: 82 chamberNb: 4 energy deposit[MeV]: 0.0049539579369125 position[mm]: (-497.92501608372,-408.64532438545,1742.3144745742) - trackID: 81 chamberNb: 4 energy deposit[MeV]: 0.0018596877360977 position[mm]: (-483.19698204205,-396.19286098519,1613.9072876603) - trackID: 66 chamberNb: 3 energy deposit[MeV]: 0.0064149176128773 position[mm]: (-403.81508985513,-330.47468257917,930.11255320942) - trackID: 65 chamberNb: 3 energy deposit[MeV]: 0.0027843078834828 position[mm]: (-401.96661061781,-328.86996726734,913.92899364873) - trackID: 64 chamberNb: 3 energy deposit[MeV]: 0.0051082058327082 position[mm]: (-390.65785840288,-320.42358579351,820.08394224969) - trackID: 64 chamberNb: 3 energy deposit[MeV]: 0.0069597668159685 position[mm]: (-390.68403518669,-320.11734855509,819.70267091043) - trackID: 64 chamberNb: 3 energy deposit[MeV]: 0.00058673194313584 position[mm]: (-390.75459018898,-319.95701951784,819.78232564523) - trackID: 64 chamberNb: 3 energy deposit[MeV]: 0.0023732327561549 position[mm]: (-390.71047708091,-319.90665086931,819.69506667419) - trackID: 64 chamberNb: 3 energy deposit[MeV]: 0.0053635100513568 position[mm]: (-390.74360011424,-319.92552589324,819.66500553708) - trackID: 99 chamberNb: 3 energy deposit[MeV]: 0.0017490366943023 position[mm]: (-390.717711406,-319.90579644023,819.70245133804) - trackID: 98 chamberNb: 3 energy deposit[MeV]: 0.0066923802815786 position[mm]: (-390.70021262349,-319.99672388327,819.78623964265) - trackID: 63 chamberNb: 3 energy deposit[MeV]: 0.0063288847557179 position[mm]: (-391.02827390786,-320.05159119568,819.49497106645) - trackID: 63 chamberNb: 3 energy deposit[MeV]: 0.0034916360290511 position[mm]: (-391.01021380224,-320.0706415504,819.49713781545) - trackID: 56 chamberNb: 2 energy deposit[MeV]: 0.0022067441901281 position[mm]: (-319.90834002347,-260.17649999645,193.35838116869) - trackID: 55 chamberNb: 2 energy deposit[MeV]: 0.0083095227134422 position[mm]: (-312.73033410758,-254.46878964446,135.82805963289) - trackID: 54 chamberNb: 2 energy deposit[MeV]: 0.0015322573081095 position[mm]: (-309.07718797006,-251.75070045624,107.80752762863) - trackID: 53 chamberNb: 2 energy deposit[MeV]: 0.0038614305271664 position[mm]: (-303.55319364664,-247.37874032724,64.054579395451) - trackID: 52 chamberNb: 2 energy deposit[MeV]: 0.011837052507684 position[mm]: (-300.29778088188,-244.9632983079,37.470940697335) - trackID: 43 chamberNb: 1 energy deposit[MeV]: 0.003280096200031 position[mm]: (-216.88931023275,-180.25873748558,-626.9025463838) - trackID: 43 chamberNb: 1 energy deposit[MeV]: 0.0064357104272708 position[mm]: (-216.94778331493,-180.19137782282,-626.5005626364) - trackID: 43 chamberNb: 1 energy deposit[MeV]: 0.0088404118033255 position[mm]: (-216.76009129889,-180.2827706545,-626.39616154142) - trackID: 43 chamberNb: 1 energy deposit[MeV]: 0.006009308905858 position[mm]: (-216.73990633275,-180.33549020429,-626.40674323793) - trackID: 113 chamberNb: 1 energy deposit[MeV]: 0.0014261357478586 position[mm]: (-216.88849416911,-180.25074486391,-626.9037226385) - trackID: 42 chamberNb: 1 energy deposit[MeV]: 0.0018599607988379 position[mm]: (-214.31988442013,-177.52478522338,-649.48912686336) - trackID: 41 chamberNb: 1 energy deposit[MeV]: 0.0097858738585731 position[mm]: (-214.41755662881,-177.42824693846,-650.00683863255) - trackID: 41 chamberNb: 1 energy deposit[MeV]: 0.0017366751121522 position[mm]: (-214.42164128155,-177.42820633187,-650.01627616284) - trackID: 40 chamberNb: 1 energy deposit[MeV]: 0.0014141834543501 position[mm]: (-212.46217788039,-176.01335959551,-665.05393168899) - trackID: 39 chamberNb: 1 energy deposit[MeV]: 0.0020810431671112 position[mm]: (-211.09233637093,-174.92695486674,-676.50023212439) - trackID: 38 chamberNb: 1 energy deposit[MeV]: 0.0023585398205677 position[mm]: (-210.115003048,-174.10210073353,-684.96320679379) - trackID: 37 chamberNb: 1 energy deposit[MeV]: 0.0014143165765647 position[mm]: (-210.05372637375,-174.06153979393,-685.42855293462) - trackID: 36 chamberNb: 1 energy deposit[MeV]: 0.0019074858557575 position[mm]: (-209.26764322785,-173.43961161636,-691.90602570189) - trackID: 35 chamberNb: 1 energy deposit[MeV]: 0.0088015524191468 position[mm]: (-206.34825625084,-171.186746832,-716.04494666921) - trackID: 34 chamberNb: 1 energy deposit[MeV]: 0.0020379151930511 position[mm]: (-202.88533778439,-168.28626496244,-745.25577828209) - trackID: 33 chamberNb: 1 energy deposit[MeV]: 0.0031775793998992 position[mm]: (-200.04949364004,-166.02883466157,-768.81743929935) - trackID: 23 chamberNb: 0 energy deposit[MeV]: 0.001428262492028 position[mm]: (-118.50528944097,-98.492820687182,-1440.2158396691) - trackID: 22 chamberNb: 0 energy deposit[MeV]: 0.004359871737274 position[mm]: (-108.75323204146,-90.336310266197,-1519.8823989522) - trackID: 21 chamberNb: 0 energy deposit[MeV]: 0.0015378152670532 position[mm]: (-107.97101036709,-89.638950429796,-1526.4792020332) - trackID: 20 chamberNb: 0 energy deposit[MeV]: 0.0068820907601954 position[mm]: (-107.80229031855,-89.421758111082,-1528.4773505841) - trackID: 19 chamberNb: 0 energy deposit[MeV]: 0.0019833023820325 position[mm]: (-105.05934977883,-87.229312042244,-1550.2441739501) - trackID: 18 chamberNb: 0 energy deposit[MeV]: 0.0065863732337248 position[mm]: (-103.42340673991,-85.851259408904,-1563.2780897184) - trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.002765264488898 position[mm]: (-101.38509177502,-84.15159106218,-1580.2730146903) - trackID: 16 chamberNb: 0 energy deposit[MeV]: 0.001848529050682 position[mm]: (-99.730197321555,-82.762126824119,-1594.0362260826) +-------->Storing hits in the ROOT file: in this event there are 76 hits in the tracker chambers: + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00063982958648441 position[mm]: (-120.41446658812,-14.546061682935,-1596.0771304663) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0033429958470246 position[mm]: (-121.50403880368,-14.676266562234,-1588.9462863917) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.013699634791012 position[mm]: (-128.80429515519,-15.50834320968,-1541.0700383467) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00056131864801028 position[mm]: (-129.46178045835,-15.589705786267,-1536.6570380037) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00030081094807829 position[mm]: (-129.72120241733,-15.620970222422,-1534.9252832299) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0047511145251022 position[mm]: (-132.60072347054,-15.958736777457,-1515.7186480009) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0011591458429639 position[mm]: (-133.18769498818,-16.026238117405,-1511.8173344918) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.023251846672156 position[mm]: (-142.0009282714,-17.014549201341,-1453.4935614247) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.00018292396469726 position[mm]: (-142.50647506546,-17.07458443207,-1450.142550053) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0039325833111717 position[mm]: (-144.9165869205,-17.357042026241,-1433.9864056388) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.012238371609444 position[mm]: (-149.19037612096,-17.86845857999,-1405.3699302642) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 5.2971011411196e-05 position[mm]: (-149.24651114481,-17.87624435534,-1404.988082458) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0023830401759253 position[mm]: (-149.97966131186,-17.978948825041,-1400) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0022390620566443 position[mm]: (-240.74704596645,-30.305944989443,-782.65230141905) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.014106675762202 position[mm]: (-245.55008523474,-30.883217202886,-749.60697672833) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.030125582143386 position[mm]: (-254.50657337217,-32.025151759432,-688.13211300453) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0033568933051114 position[mm]: (-256.37572188496,-32.247567272374,-675.29577793059) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0082127794919849 position[mm]: (-260.68129225856,-32.785121067615,-645.38133300672) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.028349097783852 position[mm]: (-267.2227779066,-33.592604434912,-600) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.013465782788158 position[mm]: (-360.45936852519,-47.209611980139,44.401858173309) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.044458712646448 position[mm]: (-375.31473915814,-50.244164474827,147.51949289021) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.017341829721375 position[mm]: (-382.77763176083,-51.669710560234,200) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0047275977876711 position[mm]: (-470.90043647163,-67.046218927153,816.59818817222) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0059735428646412 position[mm]: (-473.69101892802,-67.520506752474,836.48787979317) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0012773071452167 position[mm]: (-474.09966036296,-67.598682566809,839.40085111496) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.009366164430219 position[mm]: (-475.86574662694,-67.939480119135,852.02317376758) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0077079960148065 position[mm]: (-480.54873346938,-68.820992130496,885.69696560671) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0047178136876665 position[mm]: (-483.73019981062,-69.438764593785,908.41543847517) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.032209854392606 position[mm]: (-496.73648446544,-71.839565867422,1000) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.011985188805538 position[mm]: (-589.35613629933,-86.35141554809,1629.6703012719) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0052386418861838 position[mm]: (-590.52623429289,-86.528441571656,1637.5077880411) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.021350505545403 position[mm]: (-596.84878122105,-87.681549463232,1680.3470468888) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.014422150095215 position[mm]: (-603.10220127164,-88.981060329356,1722.8916339882) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0056826560185045 position[mm]: (-605.48108094053,-89.464149485781,1739.0626277061) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.021173675399872 position[mm]: (-614.37059942272,-91.314831788241,1800) + trackID: 83 chamberNb: 4 energy deposit[MeV]: 0.0064167518426812 position[mm]: (-605.4577082566,-89.522646338889,1739.0695704512) + trackID: 82 chamberNb: 4 energy deposit[MeV]: 0.0027851120094695 position[mm]: (-603.08359848274,-88.984914407111,1722.8953257736) + trackID: 81 chamberNb: 4 energy deposit[MeV]: 0.007068375541646 position[mm]: (-596.82398014175,-87.749650322138,1680.3550227243) + trackID: 80 chamberNb: 4 energy deposit[MeV]: 0.0057057041133875 position[mm]: (-590.5256220867,-86.475279168634,1637.5133378951) + trackID: 79 chamberNb: 4 energy deposit[MeV]: 0.0028270505673381 position[mm]: (-589.36854372335,-86.336043305948,1629.6698971581) + trackID: 71 chamberNb: 3 energy deposit[MeV]: 0.0062542599388091 position[mm]: (-483.78938444111,-69.453347935792,908.41169925408) + trackID: 70 chamberNb: 3 energy deposit[MeV]: 0.001521595413749 position[mm]: (-480.76301762799,-68.943397031382,885.69831569701) + trackID: 70 chamberNb: 3 energy deposit[MeV]: 0.0065265191618442 position[mm]: (-480.80616303466,-68.763248245629,885.91129294494) + trackID: 70 chamberNb: 3 energy deposit[MeV]: 0.010255362850569 position[mm]: (-480.69740201583,-68.832404886077,885.91342262534) + trackID: 69 chamberNb: 3 energy deposit[MeV]: 0.0030953523639742 position[mm]: (-475.85334891376,-67.921224320677,852.02667662608) + trackID: 68 chamberNb: 3 energy deposit[MeV]: 0.0020119428402576 position[mm]: (-474.09251665662,-67.588929498307,839.4026883076) + trackID: 67 chamberNb: 3 energy deposit[MeV]: 0.0016149769100776 position[mm]: (-473.69674674842,-67.527967665966,836.48727276794) + trackID: 66 chamberNb: 3 energy deposit[MeV]: 0.0025252586651217 position[mm]: (-470.91672956532,-67.042228623288,816.59688244479) + trackID: 61 chamberNb: 2 energy deposit[MeV]: 0.0043162420515826 position[mm]: (-375.34988931323,-50.246002804074,147.51687054462) + trackID: 60 chamberNb: 2 energy deposit[MeV]: 0.0022766443691075 position[mm]: (-360.44602931635,-47.204711060509,44.404647970816) + trackID: 51 chamberNb: 1 energy deposit[MeV]: 0.0018159289342747 position[mm]: (-260.68839259387,-32.77701843468,-645.38173107763) + trackID: 50 chamberNb: 1 energy deposit[MeV]: 0.001993671545155 position[mm]: (-256.36474074493,-32.243039573278,-675.29355089547) + trackID: 49 chamberNb: 1 energy deposit[MeV]: 0.0017385815849285 position[mm]: (-254.514171098,-32.031990599355,-688.13288996472) + trackID: 48 chamberNb: 1 energy deposit[MeV]: 0.003021699991206 position[mm]: (-245.53218866306,-30.871761099618,-749.60291122065) + trackID: 47 chamberNb: 1 energy deposit[MeV]: 0.0034151193066329 position[mm]: (-240.7480698808,-30.331362365522,-782.65133694395) + trackID: 39 chamberNb: 0 energy deposit[MeV]: 0.002663743187308 position[mm]: (-149.24901700678,-17.85827091138,-1404.9870981762) + trackID: 38 chamberNb: 0 energy deposit[MeV]: 0.0032923268838757 position[mm]: (-149.21100913543,-17.881069204596,-1405.3717633856) + trackID: 37 chamberNb: 0 energy deposit[MeV]: 0.0014048087516777 position[mm]: (-144.91736373151,-17.364997692212,-1433.9863497134) + trackID: 36 chamberNb: 0 energy deposit[MeV]: 0.0043468385931739 position[mm]: (-142.81933667976,-17.589757916351,-1450.0953721087) + trackID: 36 chamberNb: 0 energy deposit[MeV]: 0.006785193696021 position[mm]: (-142.88828615825,-17.151196029983,-1450.0422599267) + trackID: 36 chamberNb: 0 energy deposit[MeV]: 0.0014003234328388 position[mm]: (-142.96795722745,-17.189350957896,-1449.8831062316) + trackID: 36 chamberNb: 0 energy deposit[MeV]: 0.0029727461423438 position[mm]: (-142.84691547598,-17.273829894613,-1449.8651408576) + trackID: 36 chamberNb: 0 energy deposit[MeV]: 0.00061391516255849 position[mm]: (-142.85218567668,-17.275078525367,-1449.8678576767) + trackID: 36 chamberNb: 0 energy deposit[MeV]: 0.0044029943098103 position[mm]: (-142.88736117068,-17.270029283262,-1449.8754981108) + trackID: 110 chamberNb: 0 energy deposit[MeV]: 0.001941314590682 position[mm]: (-142.85238072346,-17.285151479769,-1449.8737750214) + trackID: 109 chamberNb: 0 energy deposit[MeV]: 0.0014034545794727 position[mm]: (-142.84656625378,-17.281329974022,-1449.8624255375) + trackID: 108 chamberNb: 0 energy deposit[MeV]: 0.0017504049135395 position[mm]: (-142.96193905792,-17.1813484638,-1449.8856530459) + trackID: 107 chamberNb: 0 energy deposit[MeV]: 0.0013749829857646 position[mm]: (-142.88891376214,-17.143595891136,-1450.0407135072) + trackID: 35 chamberNb: 0 energy deposit[MeV]: 0.001812900924507 position[mm]: (-142.00878084331,-17.021857397986,-1453.4943983556) + trackID: 34 chamberNb: 0 energy deposit[MeV]: 0.0013916472084826 position[mm]: (-133.19304712423,-16.032018466547,-1511.8179321324) + trackID: 33 chamberNb: 0 energy deposit[MeV]: 0.0014433282413548 position[mm]: (-132.60803633084,-15.954953497435,-1515.7193536075) + trackID: 32 chamberNb: 0 energy deposit[MeV]: 0.0022894620211899 position[mm]: (-129.71748756546,-15.60693577703,-1534.9237473967) + trackID: 31 chamberNb: 0 energy deposit[MeV]: 0.0034738938011233 position[mm]: (-129.46649378737,-15.564132358369,-1536.6556690443) + trackID: 30 chamberNb: 0 energy deposit[MeV]: 0.0081319783180724 position[mm]: (-128.94841457902,-15.516162317039,-1541.0758403891) + trackID: 30 chamberNb: 0 energy deposit[MeV]: 0.0028760392963799 position[mm]: (-128.93632433755,-15.511442545524,-1541.0913605839) + trackID: 29 chamberNb: 0 energy deposit[MeV]: 0.0020791223240614 position[mm]: (-120.41099072063,-14.533850977074,-1596.0757562799) writing Event_3 >>> Event 1 0 trajectories stored in this event. CalorimeterSD::Initialize: TrackerChamberSD ExP01/TrackerChamberSD_HC is not found. --------->Storing hits in the ROOT file: in this event there are 73 hits in the tracker chambers: - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0058312461299051 position[mm]: (0.9342254787052,-174.3615214969,-1579.2738785316) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.025063399300603 position[mm]: (0.90660794702025,-186.46180012423,-1521.9516143101) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.010985796593864 position[mm]: (0.92806381850033,-192.89697349131,-1491.6715229672) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0048570245261156 position[mm]: (0.95575877918654,-196.25798612326,-1475.8292805786) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0025078555841789 position[mm]: (0.96820883569536,-197.76165907295,-1468.6866640176) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.015051739010852 position[mm]: (1.044224061572,-204.04208477738,-1438.6518319053) - trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.010887661763238 position[mm]: (1.1220988733393,-212.16990909257,-1400) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.014410985182789 position[mm]: (1.3640470054124,-345.96351125803,-771.54142811271) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0010017770621021 position[mm]: (1.3742201549038,-346.72332354637,-768.03592455101) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.02507810277068 position[mm]: (1.5767960276428,-363.23584250735,-691.72873751577) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.013094715714873 position[mm]: (1.7073700225123,-372.47897373418,-648.42017200865) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.016101614496535 position[mm]: (1.8448467357421,-381.1514263859,-607.76944378302) - trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0027881916434255 position[mm]: (1.889053725089,-382.81581562123,-600) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0033261171736321 position[mm]: (5.3586731264437,-514.87850364934,15.113154707248) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0051256601262387 position[mm]: (5.4162399238876,-516.92066542279,24.572314509252) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0035482887387228 position[mm]: (5.5001037503255,-519.57593960222,36.839538812185) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.064597815896333 position[mm]: (6.3656630196228,-551.18395564811,183.50498274866) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0013569558651965 position[mm]: (6.3921406507797,-551.86900167321,186.68795258359) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.001610131225962 position[mm]: (6.4366710116762,-553.11127594736,192.45188422742) - trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0030085205904313 position[mm]: (6.4934274050676,-554.74093629176,200) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0022368745773255 position[mm]: (10.624332594352,-685.0075634019,805.90487469306) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.0033269201196427 position[mm]: (10.696622717811,-687.08763452327,815.57156359765) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.025968563270528 position[mm]: (11.197976452368,-701.22815959617,881.39964963178) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.011331537289567 position[mm]: (11.512981585148,-707.083597959,908.72469194377) - trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.032243708305684 position[mm]: (12.338816983101,-726.55787154654,1000) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0079512685838149 position[mm]: (19.195083213113,-855.93027893193,1617.2095048565) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0042715951187304 position[mm]: (19.303647731733,-857.9858431338,1627.0439728778) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.036912162519523 position[mm]: (20.120971740206,-874.12902838493,1704.4755346417) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0067343678187731 position[mm]: (20.318691331053,-877.36159127457,1720.0681039227) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.012383538917735 position[mm]: (20.622089833804,-881.50412245735,1739.9603628471) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.010271995913235 position[mm]: (20.978233986349,-886.96813158871,1766.277922273) - trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.013100407433306 position[mm]: (21.36606130117,-893.97895320435,1800) - trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.0030682193267886 position[mm]: (20.996476942522,-886.98038082058,1766.2764577634) - trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.022767923463222 position[mm]: (55.905133647606,-880.18817824884,1771.3811483174) - trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.00019510752400255 position[mm]: (54.683954353396,-880.39093032894,1774.0923271812) - trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.019679069597756 position[mm]: (43.133977299954,-879.03165670267,1799.4234336412) - trackID: 65 chamberNb: 4 energy deposit[MeV]: 1.7174605687802e-05 position[mm]: (43.146387152351,-879.015940042,1800) - trackID: 88 chamberNb: 4 energy deposit[MeV]: 0.0024630949409544 position[mm]: (43.150255280392,-879.03158930552,1799.423478328) - trackID: 87 chamberNb: 4 energy deposit[MeV]: 0.0035872497677987 position[mm]: (54.704325987671,-880.4047548753,1774.1042374152) - trackID: 86 chamberNb: 4 energy deposit[MeV]: 0.0030413863331992 position[mm]: (55.898386915284,-880.16758654109,1771.3831089489) - trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0033762347982487 position[mm]: (20.206979504999,-877.22517450318,1720.1203733518) - trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0071359422182143 position[mm]: (20.138507116245,-877.21784839995,1720.0925945164) - trackID: 117 chamberNb: 4 energy deposit[MeV]: 0.0025559289165039 position[mm]: (20.208323171669,-877.20812890342,1720.1213663489) - trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0030453762104128 position[mm]: (20.123556674876,-874.15043386186,1704.4723378119) - trackID: 62 chamberNb: 4 energy deposit[MeV]: 0.0010261319869065 position[mm]: (19.347252992217,-858.02007106847,1627.0410360853) - trackID: 62 chamberNb: 4 energy deposit[MeV]: 0.0034199771150227 position[mm]: (19.363841397817,-858.03727342953,1627.0318801354) - trackID: 118 chamberNb: 4 energy deposit[MeV]: 0.0018554199222619 position[mm]: (19.354074693197,-858.01811921409,1627.0496515132) - trackID: 61 chamberNb: 4 energy deposit[MeV]: 0.0018501198248787 position[mm]: (19.20107905501,-855.93952558589,1617.2080129041) - trackID: 54 chamberNb: 3 energy deposit[MeV]: 0.001727339527423 position[mm]: (11.508844717126,-707.07457366793,908.72710515179) - trackID: 53 chamberNb: 3 energy deposit[MeV]: 0.0015993622847837 position[mm]: (11.192427557974,-701.22095298274,881.40165306885) - trackID: 52 chamberNb: 3 energy deposit[MeV]: 0.0015118507199008 position[mm]: (10.690342639095,-687.08183208497,815.57321715416) - trackID: 51 chamberNb: 3 energy deposit[MeV]: 0.0020421584406804 position[mm]: (10.633890189584,-685.01573027395,805.90365143569) - trackID: 44 chamberNb: 2 energy deposit[MeV]: 0.002227818513199 position[mm]: (6.3672837417993,-553.085822038,192.4646292585) - trackID: 44 chamberNb: 2 energy deposit[MeV]: 0.0034951126295573 position[mm]: (6.3755942440166,-553.10634809305,192.47895817498) - trackID: 120 chamberNb: 2 energy deposit[MeV]: 0.0014607124428644 position[mm]: (6.3616716941646,-553.09074266775,192.46086930842) - trackID: 43 chamberNb: 2 energy deposit[MeV]: 0.0058697533452455 position[mm]: (6.4474048486919,-551.8673616514,186.69237909203) - trackID: 42 chamberNb: 2 energy deposit[MeV]: 0.0040618715829414 position[mm]: (6.3338173853766,-551.19063059148,183.50600994156) - trackID: 41 chamberNb: 2 energy deposit[MeV]: 0.0033239099766307 position[mm]: (5.4965297117438,-519.55250569311,36.846113862689) - trackID: 40 chamberNb: 2 energy deposit[MeV]: 0.0030780931809864 position[mm]: (5.4146123703518,-516.94246152144,24.568909401532) - trackID: 39 chamberNb: 2 energy deposit[MeV]: 0.0017440061565644 position[mm]: (5.3579046427405,-514.88866521977,15.111423634486) - trackID: 35 chamberNb: 1 energy deposit[MeV]: 0.0023039864566606 position[mm]: (1.8341627922707,-381.14153294973,-607.7665075002) - trackID: 34 chamberNb: 1 energy deposit[MeV]: 0.0014246859022994 position[mm]: (1.71542666892,-372.47817309011,-648.41970376119) - trackID: 33 chamberNb: 1 energy deposit[MeV]: 0.011011484604156 position[mm]: (1.474611078975,-363.13947408745,-691.69177099525) - trackID: 32 chamberNb: 1 energy deposit[MeV]: 0.0024945167604041 position[mm]: (1.3594865169094,-346.73085913738,-768.03663851327) - trackID: 31 chamberNb: 1 energy deposit[MeV]: 0.001479820106078 position[mm]: (1.3645304057467,-345.97185861975,-771.54289220626) - trackID: 27 chamberNb: 0 energy deposit[MeV]: 0.0020617026427605 position[mm]: (1.0537261761343,-204.05056449761,-1438.6530187743) - trackID: 26 chamberNb: 0 energy deposit[MeV]: 0.0017740745083163 position[mm]: (0.97724359335202,-197.76707376921,-1468.6873480686) - trackID: 25 chamberNb: 0 energy deposit[MeV]: 0.0018644791273259 position[mm]: (0.96287463652262,-196.24959942902,-1475.8270135086) - trackID: 24 chamberNb: 0 energy deposit[MeV]: 0.0027170804011022 position[mm]: (0.91365450234481,-192.8856816267,-1491.6680731423) - trackID: 23 chamberNb: 0 energy deposit[MeV]: 0.0033122809898835 position[mm]: (0.92957370650147,-186.45392866548,-1521.9484650318) - trackID: 22 chamberNb: 0 energy deposit[MeV]: 0.0011459006058244 position[mm]: (0.95940867853847,-174.32666534795,-1579.2630627571) - trackID: 22 chamberNb: 0 energy deposit[MeV]: 0.0026977082550189 position[mm]: (0.95498083937587,-174.33111978818,-1579.245718394) - trackID: 121 chamberNb: 0 energy deposit[MeV]: 0.0015507026033583 position[mm]: (0.9646170536685,-174.33395740847,-1579.2635868182) +-------->Storing hits in the ROOT file: in this event there are 51 hits in the tracker chambers: + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.0044472256781644 position[mm]: (167.5327782081,-151.88001411362,-1579.3870906804) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.03568870425855 position[mm]: (182.45782312744,-165.15071931873,-1505.0764233432) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.016215243761677 position[mm]: (190.23065662266,-172.42025513933,-1466.1177799531) + trackID: 1 chamberNb: 0 energy deposit[MeV]: 0.029169543237957 position[mm]: (203.4918796715,-184.77356736465,-1400) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.053945353174602 position[mm]: (345.472031698,-319.38314797868,-678.36202490633) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.0019613521963977 position[mm]: (346.0985201981,-319.99543806739,-675.1857339829) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.009250726044841 position[mm]: (352.24938533443,-326.00470620587,-644.02793281398) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.005693988400877 position[mm]: (354.61676600235,-328.32255704638,-631.92983285397) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 0.021892064642965 position[mm]: (360.71778223634,-334.30932060759,-600.64073793574) + trackID: 1 chamberNb: 1 energy deposit[MeV]: 9.8797671918369e-05 position[mm]: (360.84267602715,-334.42961082558,-600) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0015035550520298 position[mm]: (479.09037099309,-449.14158970576,6.5933331956175) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0159261923994 position[mm]: (483.77718452113,-453.79463712597,30.828998623726) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.025608532517374 position[mm]: (496.93656050104,-466.63196242042,97.8461285156) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.015769654059891 position[mm]: (503.56396291868,-473.07128443784,131.57556552609) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0027803564557453 position[mm]: (504.61088166692,-474.10161264726,136.88307134184) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0077845376795934 position[mm]: (509.39905568606,-478.82515772281,161.1655247722) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0028430606081014 position[mm]: (510.80030978733,-480.20866398654,168.26881684955) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.010486683550657 position[mm]: (515.78219440967,-485.16733956324,193.62812952374) + trackID: 1 chamberNb: 2 energy deposit[MeV]: 0.0044373484236191 position[mm]: (517.03834591034,-486.4306820044,200) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.033713817317752 position[mm]: (649.94130370023,-619.48443365035,874.59654613281) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.028146287565821 position[mm]: (662.26350452266,-631.75200289143,936.79464799744) + trackID: 1 chamberNb: 3 energy deposit[MeV]: 0.01919047258876 position[mm]: (674.43282527039,-644.1398834777,1000) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.023922138454232 position[mm]: (799.90879839844,-768.60587838825,1648.9683971951) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.0010223263821461 position[mm]: (800.58813501974,-769.27175076809,1652.4263862641) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.025847452953139 position[mm]: (815.34342185818,-783.760548176,1727.7007918472) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.013424372086454 position[mm]: (823.63829101485,-791.88149986982,1770.4302902553) + trackID: 1 chamberNb: 4 energy deposit[MeV]: 0.012420210222934 position[mm]: (829.38452059293,-797.49178945638,1800) + trackID: 66 chamberNb: 4 energy deposit[MeV]: 0.0014250989322536 position[mm]: (823.64348292116,-791.87525559808,1770.4307962666) + trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.0067133602173161 position[mm]: (815.20519210067,-783.76569933932,1727.7428847892) + trackID: 65 chamberNb: 4 energy deposit[MeV]: 0.0043012813443673 position[mm]: (815.21213910094,-783.77180650722,1727.776760603) + trackID: 64 chamberNb: 4 energy deposit[MeV]: 0.0024952390518869 position[mm]: (800.58297085838,-769.28741917938,1652.4252708912) + trackID: 63 chamberNb: 4 energy deposit[MeV]: 0.0014802490927482 position[mm]: (799.91497906099,-768.61141443469,1648.9664695919) + trackID: 54 chamberNb: 3 energy deposit[MeV]: 0.0026818616690197 position[mm]: (662.2816235549,-631.75311467049,936.79196330224) + trackID: 53 chamberNb: 3 energy deposit[MeV]: 0.002076256847487 position[mm]: (649.95249802342,-619.4899120836,874.59387329789) + trackID: 45 chamberNb: 2 energy deposit[MeV]: 0.0020972528109215 position[mm]: (515.77507696678,-485.17812183523,193.62803198384) + trackID: 44 chamberNb: 2 energy deposit[MeV]: 0.0029855312450624 position[mm]: (510.80346086358,-480.18813124916,168.27346379837) + trackID: 43 chamberNb: 2 energy deposit[MeV]: 0.0021599915403287 position[mm]: (509.40440416331,-478.81297749383,161.16751472865) + trackID: 42 chamberNb: 2 energy deposit[MeV]: 0.0017828863812154 position[mm]: (504.60062736597,-474.10166052289,136.88556359156) + trackID: 41 chamberNb: 2 energy deposit[MeV]: 0.003429015643744 position[mm]: (503.58924463062,-473.06847964163,131.57273468945) + trackID: 40 chamberNb: 2 energy deposit[MeV]: 0.0014214216990179 position[mm]: (496.92881413013,-466.63384776642,97.847619541488) + trackID: 39 chamberNb: 2 energy deposit[MeV]: 0.0016139876538032 position[mm]: (483.77804270021,-453.8038906469,30.827464567878) + trackID: 38 chamberNb: 2 energy deposit[MeV]: 0.0018098388850032 position[mm]: (479.09132129767,-449.15214700658,6.5916135896612) + trackID: 31 chamberNb: 1 energy deposit[MeV]: 0.0016691625310606 position[mm]: (360.71280144556,-334.31774287259,-600.64091863161) + trackID: 30 chamberNb: 1 energy deposit[MeV]: 0.0014142001879317 position[mm]: (354.61555731799,-328.31485263743,-631.92779710924) + trackID: 29 chamberNb: 1 energy deposit[MeV]: 0.0017641053182664 position[mm]: (352.24572885729,-326.01444496421,-644.02861231488) + trackID: 28 chamberNb: 1 energy deposit[MeV]: 0.0035830448643872 position[mm]: (346.08967600089,-319.95611503509,-675.17324224606) + trackID: 28 chamberNb: 1 energy deposit[MeV]: 0.0012819276950698 position[mm]: (346.0927137819,-319.95235406835,-675.16803571479) + trackID: 27 chamberNb: 1 energy deposit[MeV]: 0.0069183919033834 position[mm]: (345.53355288443,-319.34838029902,-678.36114908705) + trackID: 19 chamberNb: 0 energy deposit[MeV]: 0.0013947671494781 position[mm]: (190.22480033283,-172.41548193073,-1466.1153953275) + trackID: 18 chamberNb: 0 energy deposit[MeV]: 0.0014042910559086 position[mm]: (182.46365434706,-165.14525982096,-1505.0762460963) + trackID: 17 chamberNb: 0 energy deposit[MeV]: 0.0023027611699513 position[mm]: (167.51894621596,-151.88420849225,-1579.3843032884) writing Event_4 >>> Event 2 0 trajectories stored in this event. Run terminated. Run Summary Number of events processed : 3 - User=0.010000s Real=0.008757s Sys=0.000000s + User=0.010000s Real=0.008973s Sys=0.010000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. @@ -2362,8 +2506,8 @@ Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.000961 MB Pool ID '15G4HCofThisEvent', size : 0.000961 MB Pool ID '16G4HitsCollection', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.0154 MB -Pool ID '7G4Track', size : 0.0308 MB +Pool ID '17G4DynamicParticle', size : 0.0163 MB +Pool ID '7G4Track', size : 0.0327 MB Pool ID '18G4TouchableHistory', size : 0.00192 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Pool ID '15ExP01TrackerHit', size : 0.0192 MB diff --git a/examples/extended/persistency/P02/CMakeLists.txt b/examples/extended/persistency/P02/CMakeLists.txt index 40e9b950fc..e2b1f52bd1 100644 --- a/examples/extended/persistency/P02/CMakeLists.txt +++ b/examples/extended/persistency/P02/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(P02) #---------------------------------------------------------------------------- diff --git a/examples/extended/persistency/P02/History b/examples/extended/persistency/P02/History index eb22525f18..6ebfc00e30 100644 --- a/examples/extended/persistency/P02/History +++ b/examples/extended/persistency/P02/History @@ -14,6 +14,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 13th, 2020 Ben Morgan (exampleP02-V10-06-01) +- Enforce use of Serial RunManager. + +November 10th, 2020 Ben Morgan (exampleP02-V10-06-00) +- Migration to G4RunManagerFactory. + November 28th, 2019 I. Hrivnacova (exampleP02-V10-05-00) - Fixed Doxygen warning in .README.txt diff --git a/examples/extended/persistency/P02/exampleP02.cc b/examples/extended/persistency/P02/exampleP02.cc index 600f71c15f..e04e52f9b6 100644 --- a/examples/extended/persistency/P02/exampleP02.cc +++ b/examples/extended/persistency/P02/exampleP02.cc @@ -28,7 +28,7 @@ // // // -// +// //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -40,7 +40,7 @@ #include "FTFP_BERT.hh" -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4VisExecutive.hh" @@ -49,7 +49,7 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc, char** argv) -{ +{ if(argc==1) { @@ -77,14 +77,14 @@ int main(int argc, char** argv) G4UIExecutive* ui = new G4UIExecutive(argc, argv); // Run manager - G4RunManager * runManager = new G4RunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); // UserInitialization classes (mandatory) runManager->SetUserInitialization(det); G4VModularPhysicsList* physicsList = new FTFP_BERT; runManager->SetUserInitialization(physicsList); - + // Visualization G4VisManager* visManager = new G4VisExecutive; visManager->Initialize(); @@ -94,9 +94,9 @@ int main(int argc, char** argv) //Initialize G4 kernel runManager->Initialize(); - - //get the pointer to the User Interface manager - G4UImanager * UImanager = G4UImanager::GetUIpointer(); + + //get the pointer to the User Interface manager + G4UImanager * UImanager = G4UImanager::GetUIpointer(); UImanager->ApplyCommand("/control/execute vis.mac"); ui->SessionStart(); diff --git a/examples/extended/persistency/P03/CMakeLists.txt b/examples/extended/persistency/P03/CMakeLists.txt index 9b1d4f0e91..3ca00cba57 100644 --- a/examples/extended/persistency/P03/CMakeLists.txt +++ b/examples/extended/persistency/P03/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(P03) #---------------------------------------------------------------------------- diff --git a/examples/extended/persistency/P03/History b/examples/extended/persistency/P03/History index 18c4dde449..60186a649b 100644 --- a/examples/extended/persistency/P03/History +++ b/examples/extended/persistency/P03/History @@ -14,38 +14,42 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 Ben Morgan (exampleP03-V10-06-00) +-------------------------- +- Migration to G4RunManagerFactory. + March 25th 2019 G.Cosmo (exampleP03-V10-05-00) --------------------------- +-------------------------- - Fixed compilation warnings on unused local iterators. May 19th 2018 J.Allison (exampleP03-V10-04-00) --------------------------- +-------------------------- - Add #include "G4Types.hh" - Remove G4UI_USE and G4VIS_USE. - Move instantiation of G4UIExecutive to start of main. 19 November 2016 A. Dotti (exampleP03-V10-02-00) --------------------------- +-------------------------- - Explicit set of SD to manager 17 September 2015 P. Arce (exampleP03-V10-01-01) --------------------------- +-------------------------- - Remove ExTGPhysicsList 29 July 2014 P. Arce (exampleP03-V10-00-03) --------------------------- +-------------------------- - Remove ExTGPhysicsList 25 July 2014 P. Arce (exampleP03-V10-00-02) --------------------------- +-------------------------- - Using G4GenericPhysicsList 18 November 2013 I. Hrivnacova (exampleP03-V09-06-01) --------------------------- +-------------------------- - Fixed files description (only comment lines modified) 8 November 2013 P. Arce (exampleP03-V09-06-00) --------------------------- +-------------------------- - Porting to MT 17 July 2012 I. Hrivnacova (exampleP03-V09-05-02) @@ -104,7 +108,7 @@ May 19th 2018 J.Allison (exampleP03-V10-04-00) 9 December 2008 - P Arce (exampleP03-V09-01-04) -------------------------- - SUBS -> SUBTRACTION, INTERS -> INTERSECTION - + 21 November 2008 - G.Cosmo (exampleP03-V09-01-03) -------------------------- - Replaced VRML with OGLIX as default visualization. diff --git a/examples/extended/persistency/P03/batch.out b/examples/extended/persistency/P03/batch.out index a13102028e..664acfe6a1 100644 --- a/examples/extended/persistency/P03/batch.out +++ b/examples/extended/persistency/P03/batch.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -28,10 +29,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -139,7 +142,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.52852 keV e- 278.507 keV e+ 271.144 keV proton 70 keV + Energy thresholds : gamma 2.51944 keV e- 276.265 keV e+ 270.751 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -162,9 +165,8 @@ G4GeometryManager::ReportVoxelStats -- Voxel Statistics Run terminated. Run Summary Number of events processed : 10 - User=0.010000s Real=0.001558s Sys=0.000000s + User=0.000000s Real=0.001004s Sys=0.000000s 10 events have been kept for refreshing and/or reviewing. - "/vis/reviewKeptEvents" to review them one by one. "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. diff --git a/examples/extended/persistency/P03/runAll.sh b/examples/extended/persistency/P03/runAll.sh old mode 100644 new mode 100755 diff --git a/examples/extended/persistency/P03/textGeom.cc b/examples/extended/persistency/P03/textGeom.cc index b3c3d28f66..f98ee92521 100644 --- a/examples/extended/persistency/P03/textGeom.cc +++ b/examples/extended/persistency/P03/textGeom.cc @@ -39,11 +39,7 @@ #include "ExTGPrimaryGeneratorAction.hh" #include "ExTGActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" @@ -62,12 +58,8 @@ int main(int argc,char** argv) // Run manager // -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(1); -#else - G4RunManager* runManager = new G4RunManager; -#endif // User Initialization classes (mandatory) // @@ -84,17 +76,17 @@ int main(int argc,char** argv) //MT runManager->SetUserAction(new ExTGPrimaryGeneratorAction); runManager->SetUserInitialization(new ExTGActionInitialization); - + // Run action that dumps GEANT4 in-memory geometry to text file //MT runManager->SetUserAction(new ExTGRunAction); // Initialize G4 kernel // // runManager->Initialize(); - + // Get the pointer to the User Interface manager // - G4UImanager * UImanager = G4UImanager::GetUIpointer(); + G4UImanager * UImanager = G4UImanager::GetUIpointer(); G4VisManager* visManager = new G4VisExecutive; visManager->Initialize(); @@ -106,7 +98,7 @@ int main(int argc,char** argv) UImanager->ApplyCommand(command+fileName); } else // interactive mode : define visualization and UI terminal - { + { UImanager->ApplyCommand("/control/execute run.mac"); ui->SessionStart(); delete ui; diff --git a/examples/extended/persistency/gdml/CMakeLists.txt b/examples/extended/persistency/gdml/CMakeLists.txt index eea239537d..cb5ba87291 100644 --- a/examples/extended/persistency/gdml/CMakeLists.txt +++ b/examples/extended/persistency/gdml/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all GDML examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(G01) add_subdirectory(G02) diff --git a/examples/extended/persistency/gdml/G01/CMakeLists.txt b/examples/extended/persistency/gdml/G01/CMakeLists.txt index fd16271199..eac7c552b4 100644 --- a/examples/extended/persistency/gdml/G01/CMakeLists.txt +++ b/examples/extended/persistency/gdml/G01/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(G01) #---------------------------------------------------------------------------- diff --git a/examples/extended/persistency/gdml/G01/History b/examples/extended/persistency/gdml/G01/History index 30e9c100a4..89318346b4 100644 --- a/examples/extended/persistency/gdml/G01/History +++ b/examples/extended/persistency/gdml/G01/History @@ -16,6 +16,13 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 Ben Morgan G01-V10-06-02 +- Migration to G4RunManagerFactory. + +November 5th, 2020 Witek Pokorski G01-V10-06-01 +- Added a line (commented out) indicating the possibility to overwrite +output files. + May 14th, 2020 Gabriele Cosmo G01-V10-06-00 - Use [] brackets in loop.gdml sample to show how to index names and dimensions in loops. @@ -90,10 +97,10 @@ July 25th, 2012 Witek Pokorski G01-V09-05-02 - a few more cosmetic changes to comply to coding convetions July 25th, 2012 Witek Pokorski G01-V09-05-01 -- making a number of cosmetic changes to comply to coding conventions +- making a number of cosmetic changes to comply to coding conventions April 4th, 2012 Witek Pokorski G01-V09-05-00 -- Added missing unit in opticalsurfaces.gdml +- Added missing unit in opticalsurfaces.gdml November 17th, 2010 Gabriele Cosmo G01-V09-03-07 - Added commented command for de-activating names stripping while reading. diff --git a/examples/extended/persistency/gdml/G01/g01.out b/examples/extended/persistency/gdml/G01/g01.out index 87ce6b6fb7..6a2405af17 100644 --- a/examples/extended/persistency/gdml/G01/g01.out +++ b/examples/extended/persistency/gdml/G01/g01.out @@ -35,13 +35,14 @@ Checking overlaps for volume vol1003_PV (G4GenericTrap) ... OK! G4GDML: Reading setup... G4GDML: Reading '/mnt/build/jenkins/workspace/g4n-centos7/COMPILER/gcc9/LABEL/centos7/THREAD/Seq/geant4/examples/extended/persistency/gdml/G01/solids.gdml' done! Stripping off GDML names of materials, solids and volumes ... +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -52,7 +53,7 @@ Stripping off GDML names of materials, solids and volumes ... <<< Geant4 Physics List simulation engine: FTFP_BERT - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -73,10 +74,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -139,10 +142,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -166,10 +170,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -197,9 +202,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -213,14 +218,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -229,9 +234,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -243,9 +248,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -256,9 +261,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -272,14 +277,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -288,9 +293,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -304,14 +309,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -320,9 +325,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -336,14 +341,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -352,9 +357,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -369,14 +374,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -385,9 +390,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -402,14 +407,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -418,9 +423,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -434,14 +439,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -450,9 +455,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -466,14 +471,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -502,6 +507,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -576,6 +603,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -687,8 +727,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -753,8 +793,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -795,7 +835,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4GDML: Writing 'g01.gdml'... G4GDML: Writing definitions... @@ -834,7 +873,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Water Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.52852 keV e- 278.507 keV e+ 271.144 keV proton 70 keV + Energy thresholds : gamma 2.51944 keV e- 276.265 keV e+ 270.751 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -1174,7 +1213,10 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Run terminated. Run Summary Number of events processed : 20 - User=0.010000s Real=0.007578s Sys=0.000000s + User=0.010000s Real=0.005176s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /gun/direction 0 0 -1 /run/beamOn 20 @@ -1203,7 +1245,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Water Range cuts : gamma 699.9999999999999 um e- 699.9999999999999 um e+ 699.9999999999999 um proton 699.9999999999999 um - Energy thresholds : gamma 2.528516002468437 keV e- 278.5068267112636 keV e+ 271.1444301022197 keV proton 69.99999999999999 keV + Energy thresholds : gamma 2.519443689999526 keV e- 276.2650242766716 keV e+ 270.7512371977519 keV proton 69.99999999999999 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -1541,7 +1583,10 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Run terminated. Run Summary Number of events processed : 20 - User=0.010000s Real=0.006703s Sys=0.000000s + User=0.000000s Real=0.004577s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /tracking/verbose 0 /gun/direction 0.3 0.2 1 /run/beamOn 20 @@ -1571,7 +1616,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Water Range cuts : gamma 699.9999999999999 um e- 699.9999999999999 um e+ 699.9999999999999 um proton 699.9999999999999 um - Energy thresholds : gamma 2.528516002468437 keV e- 278.5068267112636 keV e+ 271.1444301022197 keV proton 69.99999999999999 keV + Energy thresholds : gamma 2.519443689999526 keV e- 276.2650242766716 keV e+ 270.7512371977519 keV proton 69.99999999999999 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -1581,7 +1626,10 @@ Index : 1 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 20 - User=0.000000s Real=0.004021s Sys=0.000000s + User=0.000000s Real=0.002280s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /gun/direction 0.3 -0.2 1 /run/beamOn 20 @@ -1610,7 +1658,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Water Range cuts : gamma 699.9999999999999 um e- 699.9999999999999 um e+ 699.9999999999999 um proton 699.9999999999999 um - Energy thresholds : gamma 2.528516002468437 keV e- 278.5068267112636 keV e+ 271.1444301022197 keV proton 69.99999999999999 keV + Energy thresholds : gamma 2.519443689999526 keV e- 276.2650242766716 keV e+ 270.7512371977519 keV proton 69.99999999999999 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -1620,7 +1668,10 @@ Index : 1 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 20 - User=0.000000s Real=0.004021s Sys=0.000000s + User=0.000000s Real=0.002133s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /gun/direction -0.3 0.2 0.6 /run/beamOn 20 @@ -1649,7 +1700,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Water Range cuts : gamma 699.9999999999999 um e- 699.9999999999999 um e+ 699.9999999999999 um proton 699.9999999999999 um - Energy thresholds : gamma 2.528516002468437 keV e- 278.5068267112636 keV e+ 271.1444301022197 keV proton 69.99999999999999 keV + Energy thresholds : gamma 2.519443689999526 keV e- 276.2650242766716 keV e+ 270.7512371977519 keV proton 69.99999999999999 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -1659,7 +1710,10 @@ Index : 1 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 20 - User=0.010000s Real=0.004024s Sys=0.000000s + User=0.010000s Real=0.002101s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. diff --git a/examples/extended/persistency/gdml/G01/load_gdml.cc b/examples/extended/persistency/gdml/G01/load_gdml.cc index d8be5c1782..8db5fde546 100644 --- a/examples/extended/persistency/gdml/G01/load_gdml.cc +++ b/examples/extended/persistency/gdml/G01/load_gdml.cc @@ -38,11 +38,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" @@ -107,11 +103,7 @@ int main(int argc,char **argv) return -1; } -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetUserInitialization(new G01DetectorConstruction( parser.GetWorldVolume())); @@ -163,7 +155,7 @@ int main(int argc,char **argv) runManager->BeamOn(0); - + // example of writing out if (argc>=3) @@ -189,6 +181,7 @@ int main(int argc,char **argv) parser.SetRegionExport(true); // parser.SetEnergyCutsExport(true); + // parser.SetOutputFileOverwrite(true); parser.Write(argv[2], G4TransportationManager::GetTransportationManager() ->GetNavigatorForTracking()->GetWorldVolume()->GetLogicalVolume()); } diff --git a/examples/extended/persistency/gdml/G02/CMakeLists.txt b/examples/extended/persistency/gdml/G02/CMakeLists.txt index 85ed5f9d2a..6798b2d2b9 100644 --- a/examples/extended/persistency/gdml/G02/CMakeLists.txt +++ b/examples/extended/persistency/gdml/G02/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(G02) #---------------------------------------------------------------------------- diff --git a/examples/extended/persistency/gdml/G02/History b/examples/extended/persistency/gdml/G02/History index 2a63e91cdc..b0ffcce120 100644 --- a/examples/extended/persistency/gdml/G02/History +++ b/examples/extended/persistency/gdml/G02/History @@ -16,6 +16,12 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 13th, 2020 Ben Morgan G02-V10-06-01 +- Enforce use of Serial RunManager. + +November 10th, 2020 Ben Morgan G02-V10-06-00 +- Migration to G4RunManagerFactory. + November 28th, 2019 I. Hrivnacova G02-V10-05-00 - Fixed Doxygen warning in .README.txt diff --git a/examples/extended/persistency/gdml/G02/geotest.cc b/examples/extended/persistency/gdml/G02/geotest.cc index 6ffdc939d4..c0cc4cc4a7 100644 --- a/examples/extended/persistency/gdml/G02/geotest.cc +++ b/examples/extended/persistency/gdml/G02/geotest.cc @@ -36,7 +36,7 @@ // Geant4 includes // -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "globals.hh" @@ -57,9 +57,9 @@ int main(int argc, char** argv) { - // Construct the default run manager + // Construct a serial run manager // - G4RunManager* runManager = new G4RunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); // Set mandatory initialization and user action classes // @@ -69,10 +69,10 @@ int main(int argc, char** argv) runManager->SetUserAction(new G02PrimaryGeneratorAction); G02RunAction* runAction = new G02RunAction; runManager->SetUserAction(runAction); - + // Initialisation of runManager via macro for the interactive mode // This gives possibility to give different names for GDML file to READ - + // Initialize visualization // G4VisManager* visManager = new G4VisExecutive; @@ -80,28 +80,28 @@ int main(int argc, char** argv) // Open a UI session: will stay there until the user types "exit" // - G4UImanager* UImanager = G4UImanager::GetUIpointer(); + G4UImanager* UImanager = G4UImanager::GetUIpointer(); - if ( argc==1 ) // Automatically run default macro for writing... + if ( argc==1 ) // Automatically run default macro for writing... { G4UIExecutive* ui = new G4UIExecutive(argc, argv); - UImanager->ApplyCommand("/control/execute vis.mac"); + UImanager->ApplyCommand("/control/execute vis.mac"); ui->SessionStart(); delete ui; } else // Interactive, provides macro in input { G4UIExecutive* ui = new G4UIExecutive(argc, argv); - G4String command = "/control/execute "; - G4String fileName = argv[1]; - UImanager->ApplyCommand(command+fileName); + G4String command = "/control/execute "; + G4String fileName = argv[1]; + UImanager->ApplyCommand(command+fileName); ui->SessionStart(); delete ui; } - + // Job termination // - delete visManager; + delete visManager; delete runManager; return 0; diff --git a/examples/extended/persistency/gdml/G03/CMakeLists.txt b/examples/extended/persistency/gdml/G03/CMakeLists.txt index 80afa73955..0a8c199c03 100644 --- a/examples/extended/persistency/gdml/G03/CMakeLists.txt +++ b/examples/extended/persistency/gdml/G03/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(G03) #---------------------------------------------------------------------------- diff --git a/examples/extended/persistency/gdml/G03/History b/examples/extended/persistency/gdml/G03/History index 40ee84159f..6305799a1b 100644 --- a/examples/extended/persistency/gdml/G03/History +++ b/examples/extended/persistency/gdml/G03/History @@ -16,6 +16,12 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 13th, 2020 Ben Morgan G03-V10-06-01 +- Enforce use of Serial RunManager. + +November 10th, 2020 Ben Morgan G03-V10-06-00 +- Migration to G4RunManagerFactory. + November 28th, 2019 I. Hrivnacova G03-V10-05-00 - Fixed Doxygen warning in .README.txt diff --git a/examples/extended/persistency/gdml/G03/gdml_ext.cc b/examples/extended/persistency/gdml/G03/gdml_ext.cc index 7e838bc1f0..dbf65e66e6 100644 --- a/examples/extended/persistency/gdml/G03/gdml_ext.cc +++ b/examples/extended/persistency/gdml/G03/gdml_ext.cc @@ -36,7 +36,7 @@ // Geant4 includes // -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "globals.hh" @@ -57,10 +57,10 @@ int main(int argc, char** argv) { - - // Construct the default run manager + + // Construct a serial run manager // - G4RunManager* runManager = new G4RunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); // Set mandatory initialization and user action classes // @@ -70,10 +70,10 @@ int main(int argc, char** argv) runManager->SetUserAction(new G03PrimaryGeneratorAction); G03RunAction* runAction = new G03RunAction; runManager->SetUserAction(runAction); - + // Initialisation of runManager via macro for the interactive mode // This gives possibility to give different names for GDML file to READ - + // Initialize visualization // G4VisManager* visManager = new G4VisExecutive; @@ -83,19 +83,19 @@ int main(int argc, char** argv) // G4UImanager* UImanager = G4UImanager::GetUIpointer(); - if ( argc==1 ) // Define UI session for interactive mode. + if ( argc==1 ) // Define UI session for interactive mode. { G4UIExecutive* ui = new G4UIExecutive(argc, argv); - UImanager->ApplyCommand("/control/execute vis.mac"); + UImanager->ApplyCommand("/control/execute vis.mac"); ui->SessionStart(); delete ui; } else // Batch mode - { + { G4UIExecutive* ui = new G4UIExecutive(argc, argv); - G4String command = "/control/execute "; - G4String fileName = argv[1]; - UImanager->ApplyCommand(command+fileName); + G4String command = "/control/execute "; + G4String fileName = argv[1]; + UImanager->ApplyCommand(command+fileName); ui->SessionStart(); delete ui; } diff --git a/examples/extended/persistency/gdml/G04/CMakeLists.txt b/examples/extended/persistency/gdml/G04/CMakeLists.txt index 8098122ce6..3293d79f61 100644 --- a/examples/extended/persistency/gdml/G04/CMakeLists.txt +++ b/examples/extended/persistency/gdml/G04/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(G04) #---------------------------------------------------------------------------- diff --git a/examples/extended/persistency/gdml/G04/History b/examples/extended/persistency/gdml/G04/History index 235f911725..b4df593a90 100644 --- a/examples/extended/persistency/gdml/G04/History +++ b/examples/extended/persistency/gdml/G04/History @@ -16,6 +16,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 Ben Morgan G04-V10-06-00 +- Migration to G4RunManagerFactory. + November 28th, 2019 I. Hrivnacova G04-V10-05-00 - Fixed Doxygen warning in .README.txt diff --git a/examples/extended/persistency/gdml/G04/g04.out b/examples/extended/persistency/gdml/G04/g04.out index 23e6a78b6a..117d5905c2 100644 --- a/examples/extended/persistency/gdml/G04/g04.out +++ b/examples/extended/persistency/gdml/G04/g04.out @@ -9,13 +9,14 @@ G4GDML: Reading structure... G4GDML: Reading setup... G4GDML: Reading '/mnt/build/jenkins/workspace/g4n-centos7/COMPILER/gcc9/LABEL/centos7/THREAD/Seq/geant4/examples/extended/persistency/gdml/G04/auxiliary.gdml' done! Stripping off GDML names of materials, solids and volumes ... +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -37,7 +38,7 @@ Volume Boxvol has the following list of auxiliary information: Attaching sensitive detector Tracker to volume Boxvol - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -58,10 +59,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -121,10 +124,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -148,10 +152,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -179,9 +184,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -195,14 +200,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -211,9 +216,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -225,9 +230,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -238,9 +243,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -254,14 +259,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -270,9 +275,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -286,14 +291,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -302,9 +307,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -318,14 +323,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -334,9 +339,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -351,14 +356,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -367,9 +372,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -384,14 +389,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -400,9 +405,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -416,14 +421,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -432,9 +437,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -448,14 +453,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -484,6 +489,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -558,6 +585,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -669,8 +709,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -735,8 +775,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -777,7 +817,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= Region -- -- appears in world volume @@ -1035,7 +1074,10 @@ Processing hits .... Run terminated. Run Summary Number of events processed : 20 - User=0.000000s Real=0.001658s Sys=0.000000s + User=0.000000s Real=0.001441s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /gun/direction 0 0 -1 /run/beamOn 20 @@ -1287,7 +1329,10 @@ Processing hits .... Run terminated. Run Summary Number of events processed : 20 - User=0.000000s Real=0.001099s Sys=0.000000s + User=0.000000s Real=0.000865s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /tracking/verbose 0 /gun/direction 0.3 0.2 1 /run/beamOn 20 @@ -1340,7 +1385,10 @@ Processing hits .... Run terminated. Run Summary Number of events processed : 20 - User=0.000000s Real=0.000272s Sys=0.000000s + User=0.000000s Real=0.000132s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /gun/direction 0.3 -0.2 1 /run/beamOn 20 @@ -1392,7 +1440,10 @@ Processing hits .... Run terminated. Run Summary Number of events processed : 20 - User=0.000000s Real=0.000206s Sys=0.000000s + User=0.000000s Real=0.000116s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /gun/direction -0.3 0.2 0.6 /run/beamOn 20 @@ -1444,7 +1495,10 @@ Processing hits .... Run terminated. Run Summary Number of events processed : 20 - User=0.000000s Real=0.000315s Sys=0.000000s + User=0.000000s Real=0.000115s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. diff --git a/examples/extended/persistency/gdml/G04/gdml_det.cc b/examples/extended/persistency/gdml/G04/gdml_det.cc index 83b68dfaf7..38fa064975 100644 --- a/examples/extended/persistency/gdml/G04/gdml_det.cc +++ b/examples/extended/persistency/gdml/G04/gdml_det.cc @@ -40,11 +40,7 @@ #include "G04DetectorConstruction.hh" #include "G04SensitiveDetector.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "FTFP_BERT.hh" #include "G4UImanager.hh" @@ -76,11 +72,7 @@ int main(int argc,char **argv) G4GDMLParser parser; parser.Read(argv[1]); -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetUserInitialization(new G04DetectorConstruction(parser)); runManager->SetUserInitialization(new FTFP_BERT); @@ -97,7 +89,7 @@ int main(int argc,char **argv) G4UImanager* UImanager = G4UImanager::GetUIpointer(); // Process macro or start UI session - if ( ! ui ) // batch mode + if ( ! ui ) // batch mode { G4String command = "/control/execute "; G4String fileName = argv[2]; @@ -105,7 +97,7 @@ int main(int argc,char **argv) } else // interactive mode { - UImanager->ApplyCommand("/control/execute vis.mac"); + UImanager->ApplyCommand("/control/execute vis.mac"); ui->SessionStart(); delete ui; } diff --git a/examples/extended/physicslists/CMakeLists.txt b/examples/extended/physicslists/CMakeLists.txt index 7fbddd8280..1b2119ead7 100644 --- a/examples/extended/physicslists/CMakeLists.txt +++ b/examples/extended/physicslists/CMakeLists.txt @@ -1,6 +1,9 @@ -#---Adding all physicslist examples subdirectories explicitly +#---Adding all physicslist examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(factory) add_subdirectory(extensibleFactory) diff --git a/examples/extended/physicslists/History b/examples/extended/physicslists/History index 55ee512619..42e001fbb2 100644 --- a/examples/extended/physicslists/History +++ b/examples/extended/physicslists/History @@ -14,6 +14,13 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10/11/20 I. Hrivnacova (exPhysicslists-V10-06-00) +- Migration to G4RunManagerFactory +- Removed trailing whitespaces + +03/11/20 B. Morgan +- Support same CMake version range as core Geant4 + 24/01/20 A. Zaborowska - Fix suggested in macros command /run/numberOfThreads diff --git a/examples/extended/physicslists/extensibleFactory/CMakeLists.txt b/examples/extended/physicslists/extensibleFactory/CMakeLists.txt index bc333e8330..6a9d4c4bc3 100644 --- a/examples/extended/physicslists/extensibleFactory/CMakeLists.txt +++ b/examples/extended/physicslists/extensibleFactory/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(extensibleFactory) #---------------------------------------------------------------------------- @@ -23,8 +26,8 @@ include(${Geant4_USE_FILE}) #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include - ${PROJECT_SOURCE_DIR}/shared/include +include_directories(${PROJECT_SOURCE_DIR}/include + ${PROJECT_SOURCE_DIR}/shared/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc ${PROJECT_SOURCE_DIR}/shared/src/*.cc) @@ -34,8 +37,8 @@ file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh #---------------------------------------------------------------------------- # Add the executable, and link it to the Geant4 libraries # -add_executable(extensibleFactory extensibleFactory.cc - ${sources} ${add_sources} ${fortran_sources} +add_executable(extensibleFactory extensibleFactory.cc + ${sources} ${add_sources} ${fortran_sources} ${headers} ${add_headers}) target_link_libraries(extensibleFactory ${Geant4_LIBRARIES} ${HBOOK_LIBRARIES}) diff --git a/examples/extended/physicslists/extensibleFactory/History b/examples/extended/physicslists/extensibleFactory/History index f94fa07c87..f9783f5adc 100644 --- a/examples/extended/physicslists/extensibleFactory/History +++ b/examples/extended/physicslists/extensibleFactory/History @@ -14,6 +14,10 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10/11/20 I. Hrivnacova (extFactory-V10-06-00) +- Migration to G4RunManagerFactory +- Removed trailing whitespaces + 26/11/19 I. Hrivnacova (extFactory-V10-05-00) - Fixed Doxygen warnings @@ -25,7 +29,7 @@ track of all tags. 15/1/18 G.Folger (extFactory-V10-04-00) - Correct G4INSTALL in GNUmakefile. - + 06/11/17 I. Hrivnacova (extFactory-V10-03-00) - The first tag diff --git a/examples/extended/physicslists/extensibleFactory/extensibleFactory.cc b/examples/extended/physicslists/extensibleFactory/extensibleFactory.cc index cdb3b4b50e..3742c7e270 100644 --- a/examples/extended/physicslists/extensibleFactory/extensibleFactory.cc +++ b/examples/extended/physicslists/extensibleFactory/extensibleFactory.cc @@ -53,11 +53,7 @@ #include "ActionInitialization.hh" #include "PrimaryGeneratorAction.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" ///////////////////////////////////////////////////////////////////////////// // The following change is the _only_ required changed to move from @@ -188,13 +184,11 @@ int main(int argc,char** argv) G4Random::setTheEngine(new CLHEP::RanecuEngine()); // Construct the run manager + auto* runManager = G4RunManagerFactory::CreateRunManager(); #ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager(); if ( nofThreads > 0 ) { runManager->SetNumberOfThreads(nofThreads); } -#else - G4RunManager * runManager = new G4RunManager(); #endif // g4alt::G4PhysListFactoryAlt is the extensible factory @@ -279,7 +273,7 @@ int main(int argc,char** argv) runManager->SetUserInitialization(physList); // set user action classes - ActionInitialization* actinit = + ActionInitialization* actinit = new ActionInitialization("extensibleFactory"); runManager->SetUserInitialization(actinit); diff --git a/examples/extended/physicslists/extensibleFactory/extensibleFactory.out b/examples/extended/physicslists/extensibleFactory/extensibleFactory.out index e7c7fb7a46..e5625e38f0 100644 --- a/examples/extended/physicslists/extensibleFactory/extensibleFactory.out +++ b/examples/extended/physicslists/extensibleFactory/extensibleFactory.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -17,6 +18,15 @@ G4PhysListRegistry::GetModularPhysicsList , as "MySpecialPhys <<< Reference Physics List MySpecialPhysList is built Using Root + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : Analysis_W013 + issued by : G4RootNtupleFileManager::SetNtupleMergingMode +Merging ntuples is not applicable in sequential application. +Setting was ignored. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... @@ -31,10 +41,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -112,6 +124,10 @@ Some /vis commands (optionally) take a string to specify colour. Checking overlaps for volume Box (G4Box) ... OK! Checking overlaps for volume Screen (G4Box) ... OK! +### HadronInelasticQBBC Construct Process: + Emin(FTFP)= 3 GeV Emax(FTFP)= 100000 GeV + Emin(BERT)= 1 GeV Emax(BERT)= 6 GeV Emax(BERTpions)= 12 GeV + Emin(BIC) = 0 GeV Emax(BIC)= 1.5 GeV. ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 phot: for gamma SubType=12 BuildTable=0 @@ -137,10 +153,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -164,10 +181,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -195,9 +213,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -211,14 +229,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -227,9 +245,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -241,9 +259,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -254,9 +272,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -270,14 +288,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -286,9 +304,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -302,14 +320,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -318,9 +336,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -334,14 +352,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -350,9 +368,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -367,14 +385,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -383,9 +401,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -400,14 +418,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -416,9 +434,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -432,14 +450,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -448,9 +466,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -464,14 +482,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -501,6 +519,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -579,6 +619,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -719,7 +772,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi+Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -731,7 +785,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi-Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -799,12 +854,12 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -... open Root analysis file : extensibleFactory.root - done +... create file : extensibleFactory.root - done +... open analysis file : extensibleFactory.root - done --> Event 0 starts. --> Event 100 starts. --> Event 200 starts. @@ -815,7 +870,10 @@ See commands in /vis/modeling/trajectories/ for other options. --> Event 700 starts. --> Event 800 starts. --> Event 900 starts. -... write Root file : extensibleFactory.root - done -... close Root file : extensibleFactory.root - done +... write file : extensibleFactory.root - done +... close file : extensibleFactory.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/physicslists/extensibleFactory/shared/include/ActionInitialization.hh b/examples/extended/physicslists/extensibleFactory/shared/include/ActionInitialization.hh index e7bccfd252..049e0dadfb 100644 --- a/examples/extended/physicslists/extensibleFactory/shared/include/ActionInitialization.hh +++ b/examples/extended/physicslists/extensibleFactory/shared/include/ActionInitialization.hh @@ -51,4 +51,4 @@ class ActionInitialization : public G4VUserActionInitialization #endif - + diff --git a/examples/extended/physicslists/extensibleFactory/shared/include/DetectorConstruction.hh b/examples/extended/physicslists/extensibleFactory/shared/include/DetectorConstruction.hh index 95aed4c330..623bb4ebca 100644 --- a/examples/extended/physicslists/extensibleFactory/shared/include/DetectorConstruction.hh +++ b/examples/extended/physicslists/extensibleFactory/shared/include/DetectorConstruction.hh @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file DetectorConstruction.hh /// \brief Definition of the DetectorConstruction class @@ -49,7 +49,7 @@ class G4GlobalMagFieldMessenger; /// /// In ConstructSDandField() sensitive detectors of CalorimeterSD type /// are created and associated with the Absorber and Gap volumes. -/// In addition a transverse uniform magnetic field is defined +/// In addition a transverse uniform magnetic field is defined /// via G4GlobalMagFieldMessenger class. class DetectorConstruction : public G4VUserDetectorConstruction @@ -61,11 +61,11 @@ class DetectorConstruction : public G4VUserDetectorConstruction public: virtual G4VPhysicalVolume* Construct(); virtual void ConstructSDandField(); - + private: // data members // - static G4ThreadLocal G4GlobalMagFieldMessenger* fMagFieldMessenger; + static G4ThreadLocal G4GlobalMagFieldMessenger* fMagFieldMessenger; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/physicslists/extensibleFactory/shared/include/PrimaryGeneratorAction.hh b/examples/extended/physicslists/extensibleFactory/shared/include/PrimaryGeneratorAction.hh index 12152fdfe1..ce2062e723 100644 --- a/examples/extended/physicslists/extensibleFactory/shared/include/PrimaryGeneratorAction.hh +++ b/examples/extended/physicslists/extensibleFactory/shared/include/PrimaryGeneratorAction.hh @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file PrimaryGeneratorAction.hh /// \brief Definition of the PrimaryGeneratorAction class @@ -38,19 +38,19 @@ class G4Event; /// The primary generator action class with particle gum. /// -/// It defines a single particle which hits the calorimeter +/// It defines a single particle which hits the calorimeter /// perpendicular to the input face. The type of the particle -/// can be changed via the G4 build-in commands of G4ParticleGun class +/// can be changed via the G4 build-in commands of G4ParticleGun class /// (see the macros provided with this example). class PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction { public: - PrimaryGeneratorAction(); + PrimaryGeneratorAction(); virtual ~PrimaryGeneratorAction(); virtual void GeneratePrimaries(G4Event* event); - + // set methods void SetRandomFlag(G4bool value); diff --git a/examples/extended/physicslists/extensibleFactory/shared/include/RunAction.hh b/examples/extended/physicslists/extensibleFactory/shared/include/RunAction.hh index e2fd9c9f7b..4af3e1fa77 100644 --- a/examples/extended/physicslists/extensibleFactory/shared/include/RunAction.hh +++ b/examples/extended/physicslists/extensibleFactory/shared/include/RunAction.hh @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file RunAction.hh /// \brief Definition of the RunAction class @@ -37,9 +37,9 @@ class G4Run; /// Run action class /// -/// It accumulates statistic and computes dispersion of the energy deposit +/// It accumulates statistic and computes dispersion of the energy deposit /// and track lengths of charged particles with use of analysis tools: -/// H1D histograms are created in BeginOfRunAction() for the following +/// H1D histograms are created in BeginOfRunAction() for the following /// physics quantities: /// - Edep in absorber /// - Edep in gap @@ -49,7 +49,7 @@ class G4Run; /// The histograms and ntuple are saved in the output file in a format /// accoring to a selected technology in Analysis.hh. /// -/// In EndOfRunAction(), the accumulated statistic and computed +/// In EndOfRunAction(), the accumulated statistic and computed /// dispersion is printed. /// diff --git a/examples/extended/physicslists/extensibleFactory/shared/scripts/clean_files.sh b/examples/extended/physicslists/extensibleFactory/shared/scripts/clean_files.sh index b40a301436..062bcece65 100755 --- a/examples/extended/physicslists/extensibleFactory/shared/scripts/clean_files.sh +++ b/examples/extended/physicslists/extensibleFactory/shared/scripts/clean_files.sh @@ -9,10 +9,10 @@ DIRNAME=$1 for FILE in `ls $DIRNAME/include`; do rm -f include/$FILE -done +done for FILE in `ls $DIRNAME/src`; do rm -f src/$FILE -done +done echo "... clean_files.sh from $1 finished" diff --git a/examples/extended/physicslists/extensibleFactory/shared/src/ActionInitialization.cc b/examples/extended/physicslists/extensibleFactory/shared/src/ActionInitialization.cc index 70f6b3a13a..a692173dcc 100644 --- a/examples/extended/physicslists/extensibleFactory/shared/src/ActionInitialization.cc +++ b/examples/extended/physicslists/extensibleFactory/shared/src/ActionInitialization.cc @@ -56,6 +56,6 @@ void ActionInitialization::Build() const { SetUserAction(new PrimaryGeneratorAction); SetUserAction(new RunAction(fFileName)); -} +} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/physicslists/extensibleFactory/shared/src/DetectorConstruction.cc b/examples/extended/physicslists/extensibleFactory/shared/src/DetectorConstruction.cc index 0d66063488..af6b82cd44 100644 --- a/examples/extended/physicslists/extensibleFactory/shared/src/DetectorConstruction.cc +++ b/examples/extended/physicslists/extensibleFactory/shared/src/DetectorConstruction.cc @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file DetectorConstruction.cc /// \brief Implementation of the DetectorConstruction class @@ -45,8 +45,8 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4ThreadLocal -G4GlobalMagFieldMessenger* DetectorConstruction::fMagFieldMessenger = 0; +G4ThreadLocal +G4GlobalMagFieldMessenger* DetectorConstruction::fMagFieldMessenger = 0; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -57,7 +57,7 @@ DetectorConstruction::DetectorConstruction() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... DetectorConstruction::~DetectorConstruction() -{} +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -71,11 +71,11 @@ G4VPhysicalVolume* DetectorConstruction::Construct() G4Material* csi = nistManager->FindOrBuildMaterial("G4_CESIUM_IODIDE"); // There is no need to test if materials were built/found // as G4NistManager would issue an error otherwise - // Try the code with "XYZ". + // Try the code with "XYZ". // Print all materials - G4cout << *(G4Material::GetMaterialTable()) << G4endl; - + G4cout << *(G4Material::GetMaterialTable()) << G4endl; + // Option to switch on/off checking of volumes overlaps G4bool checkOverlaps = true; @@ -85,12 +85,12 @@ G4VPhysicalVolume* DetectorConstruction::Construct() // The world dimensions G4double worldHxyz = 2.*m; - + // world volume - G4Box* worldS = new G4Box("World", worldHxyz, worldHxyz, worldHxyz); + G4Box* worldS = new G4Box("World", worldHxyz, worldHxyz, worldHxyz); G4LogicalVolume* worldLV = new G4LogicalVolume(worldS, air, "World"); - + G4VPhysicalVolume* worldPV = new G4PVPlacement( 0, G4ThreeVector(), worldLV, "World", 0, false, 0, checkOverlaps); @@ -102,12 +102,12 @@ G4VPhysicalVolume* DetectorConstruction::Construct() // The box dimensions G4double boxHxy = 1.*m; G4double boxHz = 10.*cm; - + // box volume - G4Box* boxS = new G4Box("World", boxHxy, boxHxy, boxHz); + G4Box* boxS = new G4Box("World", boxHxy, boxHxy, boxHz); G4LogicalVolume* boxLV = new G4LogicalVolume(boxS, csi, "Box"); - + // The box position G4double posz = 0.*m; @@ -121,12 +121,12 @@ G4VPhysicalVolume* DetectorConstruction::Construct() // The screen dimensions G4double screenHxy = 1.999*m; G4double screenHz = 1.*mm; - + // Screen volume - G4Box* screenS = new G4Box("World", screenHxy, screenHxy, screenHz); - + G4Box* screenS = new G4Box("World", screenHxy, screenHxy, screenHz); + G4LogicalVolume* screenLV = new G4LogicalVolume(screenS, air, "Screen"); - + // The screen position posz += boxHz + screenHz; @@ -134,7 +134,7 @@ G4VPhysicalVolume* DetectorConstruction::Construct() 0, G4ThreeVector(0, 0, posz), screenLV, "Screen", worldLV, false, 0, checkOverlaps); - // + // // Visualization attributes // worldLV->SetVisAttributes(G4VisAttributes::GetInvisible()); @@ -156,14 +156,14 @@ void DetectorConstruction::ConstructSDandField() { // G4SDManager::GetSDMpointer()->SetVerboseLevel(1); - // + // // Sensitive detectors // auto screenSD = new ScreenSD("ScreenSD"); G4SDManager::GetSDMpointer()->AddNewDetector(screenSD); SetSensitiveDetector("Screen", screenSD); - // + // // Magnetic field // // Create global magnetic field messenger. @@ -172,7 +172,7 @@ void DetectorConstruction::ConstructSDandField() G4ThreeVector fieldValue; fMagFieldMessenger = new G4GlobalMagFieldMessenger(fieldValue); fMagFieldMessenger->SetVerboseLevel(1); - + // Register the field messenger for deleting G4AutoDelete::Register(fMagFieldMessenger); } diff --git a/examples/extended/physicslists/extensibleFactory/shared/src/PrimaryGeneratorAction.cc b/examples/extended/physicslists/extensibleFactory/shared/src/PrimaryGeneratorAction.cc index bb993aa58a..1f542017cc 100644 --- a/examples/extended/physicslists/extensibleFactory/shared/src/PrimaryGeneratorAction.cc +++ b/examples/extended/physicslists/extensibleFactory/shared/src/PrimaryGeneratorAction.cc @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file PrimaryGeneratorAction.cc /// \brief Implementation of the PrimaryGeneratorAction class @@ -69,7 +69,7 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) // This function is called at the begining of event // In order to avoid dependence of PrimaryGeneratorAction - // on DetectorConstruction class we get world volume + // on DetectorConstruction class we get world volume // from G4LogicalVolumeStore // G4double worldZHalfLength = 0.; @@ -82,7 +82,7 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) } if ( worldBox ) { - worldZHalfLength = worldBox->GetZHalfLength(); + worldZHalfLength = worldBox->GetZHalfLength(); } else { G4ExceptionDescription msg; @@ -91,8 +91,8 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) msg << "The gun will be place in the center."; G4Exception("PrimaryGeneratorAction::GeneratePrimaries()", "MyCode0002", JustWarning, msg); - } - + } + // Set gun position fParticleGun ->SetParticlePosition(G4ThreeVector(0., 0., -worldZHalfLength)); diff --git a/examples/extended/physicslists/extensibleFactory/shared/src/RunAction.cc b/examples/extended/physicslists/extensibleFactory/shared/src/RunAction.cc index d06a6c154e..83b27dcf0b 100644 --- a/examples/extended/physicslists/extensibleFactory/shared/src/RunAction.cc +++ b/examples/extended/physicslists/extensibleFactory/shared/src/RunAction.cc @@ -40,7 +40,7 @@ RunAction::RunAction(const G4String& fileName) : G4UserRunAction(), fFileName(fileName) -{ +{ // Create analysis manager // The choice of analysis technology is done via selectin of a namespace // in Analysis.hh @@ -59,7 +59,7 @@ RunAction::RunAction(const G4String& fileName) analysisManager->CreateNtupleIColumn("ID"); // column id = 0 analysisManager->CreateNtupleIColumn("PDG"); // column id = 1 analysisManager->CreateNtupleDColumn("Ekin"); // column id = 2 - analysisManager->CreateNtupleDColumn("Xpos"); // column id = 3 + analysisManager->CreateNtupleDColumn("Xpos"); // column id = 3 analysisManager->CreateNtupleDColumn("Ypos"); // column id = 4 analysisManager->CreateNtupleDColumn("time"); // column id = 5 analysisManager->FinishNtuple(); @@ -69,13 +69,13 @@ RunAction::RunAction(const G4String& fileName) RunAction::~RunAction() { - delete G4AnalysisManager::Instance(); + delete G4AnalysisManager::Instance(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void RunAction::BeginOfRunAction(const G4Run* /*run*/) -{ +{ // Get analysis manager auto analysisManager = G4AnalysisManager::Instance(); diff --git a/examples/extended/physicslists/extensibleFactory/shared/src/ScreenSD.cc b/examples/extended/physicslists/extensibleFactory/shared/src/ScreenSD.cc index fcecd53dda..492d80ae7c 100644 --- a/examples/extended/physicslists/extensibleFactory/shared/src/ScreenSD.cc +++ b/examples/extended/physicslists/extensibleFactory/shared/src/ScreenSD.cc @@ -76,16 +76,16 @@ G4bool ScreenSD::ProcessHits(G4Step* step, G4TouchableHistory* /*history*/) // Obtain local coordinates: const G4VTouchable* touchable = preStepPoint->GetTouchable(); G4ThreeVector globalPosition = preStepPoint->GetPosition(); - G4ThreeVector localPosition + G4ThreeVector localPosition = touchable->GetHistory()->GetTopTransform().TransformPoint(globalPosition); // // Example for obtaining the local direction: // G4ThreeVector globalDirection = preStepPoint->GetMomentumDirection(); - // G4ThreeVector localDirection + // G4ThreeVector localDirection // = touchable->GetHistory()->GetTopTransform().TransformAxis(localDirection); // Time G4double time = preStepPoint->GetGlobalTime(); - + // Store hit in the ntuple G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); analysisManager->FillNtupleIColumn(0, ID); @@ -94,7 +94,7 @@ G4bool ScreenSD::ProcessHits(G4Step* step, G4TouchableHistory* /*history*/) analysisManager->FillNtupleDColumn(3, localPosition.x()/cm); analysisManager->FillNtupleDColumn(4, localPosition.y()/cm); analysisManager->FillNtupleDColumn(5, time/ns); - analysisManager->AddNtupleRow(); + analysisManager->AddNtupleRow(); return true; } diff --git a/examples/extended/physicslists/factory/.README.txt b/examples/extended/physicslists/factory/.README.txt index b766c7d4f4..8c06fe0bef 100644 --- a/examples/extended/physicslists/factory/.README.txt +++ b/examples/extended/physicslists/factory/.README.txt @@ -9,17 +9,17 @@ Institut de Physique NucleÌaire (IPNO), UniversiteÌ Paris-Sud, CNRS-IN2P3 \n (Based on Hadr00 by V. Ivantchenko, CERN) Examples in the physicslist category show the possible ways how to define -a physics list from Geant4 physics constructors. This example demonstrates +a physics list from Geant4 physics constructors. This example demonstrates the usage of G4PhysListFactory to build the concrete physics list. -Physics List can be defined by its name given by the -p argument of the of the -run command or by the PHYSLIST environment variable. +Physics List can be defined by its name given by the -p argument of the of the +run command or by the PHYSLIST environment variable. -\verbatim +\verbatim ./factory -m my.macro [ -p QGSP_BERT ] -\endverbatim +\endverbatim -By default, FTFP_BERT Physics List will be instantiated if +By default, FTFP_BERT Physics List will be instantiated if -p argument is not set and the PHYSLIST environment variable is not defined. The same experimental setup is used for all examples in the physicslist category: @@ -27,15 +27,15 @@ The same experimental setup is used for all examples in the physicslist category \section factory_s1 Detector description The geometry (defined in the DetectorConstruction class) consists in a box of scintillator material (CsI) followed by a thin box of air (screen) which is used to simplify scoring. - + \section factory_s2 Primary generator The primary generator is defined with usage of G4ParticleGun. -The default particle is proton which hits the box perpendicular to the input face. +The default particle is proton which hits the box perpendicular to the input face. The type of the particle and its energy are set in the PrimaryGeneratorAction class, and can be changed via the G4 built-in commands of the G4ParticleGun class. - + \section factory_s3 Scoring (ntuples) The screen volume is associated with a sensitive detector, ScreenSD, @@ -53,17 +53,17 @@ example name in main () function. \section factory_s4 How to build An additional step is needed when building the example with GNUmake -due to using the extra shared directory: -\verbatim +due to using the extra shared directory: +\verbatim % cd path_to_example/example % gmake setup % gmake -\endverbatim +\endverbatim This will copy the files from shared in the example include and src; to remove these files: -\verbatim +\verbatim % gmake clean_setup -\endverbatim +\endverbatim */ diff --git a/examples/extended/physicslists/factory/CMakeLists.txt b/examples/extended/physicslists/factory/CMakeLists.txt index 25f6d4167f..25b938a800 100644 --- a/examples/extended/physicslists/factory/CMakeLists.txt +++ b/examples/extended/physicslists/factory/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(factory) #---------------------------------------------------------------------------- @@ -23,8 +26,8 @@ include(${Geant4_USE_FILE}) #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include - ${PROJECT_SOURCE_DIR}/shared/include +include_directories(${PROJECT_SOURCE_DIR}/include + ${PROJECT_SOURCE_DIR}/shared/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc ${PROJECT_SOURCE_DIR}/shared/src/*.cc) @@ -34,8 +37,8 @@ file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh #---------------------------------------------------------------------------- # Add the executable, and link it to the Geant4 libraries # -add_executable(factory factory.cc - ${sources} ${add_sources} ${fortran_sources} +add_executable(factory factory.cc + ${sources} ${add_sources} ${fortran_sources} ${headers} ${add_headers}) target_link_libraries(factory ${Geant4_LIBRARIES} ${HBOOK_LIBRARIES}) diff --git a/examples/extended/physicslists/factory/History b/examples/extended/physicslists/factory/History index 109bcb88a7..66b92229dd 100644 --- a/examples/extended/physicslists/factory/History +++ b/examples/extended/physicslists/factory/History @@ -14,6 +14,10 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10/11/20 I. Hrivnacova (factory-V10-06-00) +- Migration to G4RunManagerFactory +- Removed trailing whitespaces + 26/11/19 I. Hrivnacova (factory-V10-05-00) - Fixed Doxygen warnings @@ -25,7 +29,7 @@ track of all tags. 4/12/17 G.Folger (factory-V10-03-02) - delete extraneous file(!) src - + 28/11/17 I. Hrivnacova (factory-V10-03-01) - Fixed documentation diff --git a/examples/extended/physicslists/factory/README b/examples/extended/physicslists/factory/README index cfbd16fe30..ef56796eec 100644 --- a/examples/extended/physicslists/factory/README +++ b/examples/extended/physicslists/factory/README @@ -11,15 +11,15 @@ Institut de Physique NucleÌaire (IPNO), UniversiteÌ Paris-Sud, CNRS-IN2P3 Examples in the physicslist category show the possible ways how to define -a physics list from Geant4 physics constructors. This example demonstrates +a physics list from Geant4 physics constructors. This example demonstrates the usage of G4PhysListFactory to build the concrete physics list. -Physics List can be defined by its name given by the -p argument of the of the -run command or by the PHYSLIST environment variable. +Physics List can be defined by its name given by the -p argument of the of the +run command or by the PHYSLIST environment variable. -./factory -m my.macro [ -p QGSP_BERT ] +./factory -m my.macro [ -p QGSP_BERT ] -By default, FTFP_BERT Physics List will be instantiated if +By default, FTFP_BERT Physics List will be instantiated if -p argument is not set and the PHYSLIST environment variable is not defined. The same experimental setup is used for all examples in the physicslist category: @@ -29,16 +29,16 @@ The same experimental setup is used for all examples in the physicslist category The geometry (defined in the DetectorConstruction class) consists in a box of scintillator material (CsI) followed by a thin box of air (screen) which is used to simplify scoring. - + 2- Primary generator -------------------- The primary generator is defined with usage of G4ParticleGun. -The default particle is proton which hits the box perpendicular to the input face. +The default particle is proton which hits the box perpendicular to the input face. The type of the particle and its energy are set in the PrimaryGeneratorAction class, and can be changed via the G4 built-in commands of the G4ParticleGun class. - + 3- Scoring (ntuples) -------------------- @@ -55,10 +55,10 @@ in RunAction class. The ntuple is saved in a Root file, which name is set to be example name in main () function. 4- How to build ----------------- +---------------- An additional step is needed when building the example with GNUmake -due to using the extra shared directory: +due to using the extra shared directory: % cd path_to_example/example % gmake setup % gmake diff --git a/examples/extended/physicslists/factory/factory-environment.out b/examples/extended/physicslists/factory/factory-environment.out index 6d64b9383f..501d132bdb 100644 --- a/examples/extended/physicslists/factory/factory-environment.out +++ b/examples/extended/physicslists/factory/factory-environment.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -18,6 +19,15 @@ G4PhysListFactory::GetReferencePhysList EMoption= 1 <<< Reference Physics List FTFP_BERT_EMV is built Using Root + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : Analysis_W013 + issued by : G4RootNtupleFileManager::SetNtupleMergingMode +Merging ntuples is not applicable in sequential application. +Setting was ignored. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... @@ -32,10 +42,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -114,7 +126,7 @@ Some /vis commands (optionally) take a string to specify colour. Checking overlaps for volume Box (G4Box) ... OK! Checking overlaps for volume Screen (G4Box) ... OK! - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -139,10 +151,11 @@ conv: for gamma applyCuts:1 SubType=14 BuildTable=1 BetheHeitlerLPM : Emin= 0 eV Emax= 100 TeV ModifiedTsai msc: for e- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -166,10 +179,11 @@ CoulombScat: for e-, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -197,9 +211,9 @@ CoulombScat: for e+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -213,14 +227,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -229,9 +243,9 @@ CoulombScat: for proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -243,9 +257,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -256,9 +270,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -272,14 +286,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -288,9 +302,9 @@ CoulombScat: for anti_proton, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -304,14 +318,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -320,9 +334,9 @@ CoulombScat: for kaon+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -336,14 +350,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -352,9 +366,9 @@ CoulombScat: for kaon-, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -369,14 +383,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -385,9 +399,9 @@ CoulombScat: for mu+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -402,14 +416,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -418,9 +432,9 @@ CoulombScat: for mu-, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -434,14 +448,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 applyCuts:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -450,9 +464,9 @@ CoulombScat: for pi+, integral:1 applyCuts:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -466,14 +480,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -502,6 +516,28 @@ CoulombScat: for pi-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -576,6 +612,19 @@ CoulombScat: for pi-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -687,8 +736,8 @@ CoulombScat: for pi-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -753,8 +802,8 @@ CoulombScat: for pi-, integral:1 applyCuts:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -795,12 +844,12 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -... open Root analysis file : factory.root - done +... create file : factory.root - done +... open analysis file : factory.root - done --> Event 0 starts. --> Event 100 starts. --> Event 200 starts. @@ -811,7 +860,10 @@ See commands in /vis/modeling/trajectories/ for other options. --> Event 700 starts. --> Event 800 starts. --> Event 900 starts. -... write Root file : factory.root - done -... close Root file : factory.root - done +... write file : factory.root - done +... close file : factory.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/physicslists/factory/factory.cc b/examples/extended/physicslists/factory/factory.cc index ba4afbbd50..b5c35a3368 100644 --- a/examples/extended/physicslists/factory/factory.cc +++ b/examples/extended/physicslists/factory/factory.cc @@ -35,7 +35,7 @@ // // Author: V.Ivanchenko 20 June 2008 // -// Modified: +// Modified: // // ------------------------------------------------------------- // @@ -47,12 +47,7 @@ #include "ActionInitialization.hh" #include "PrimaryGeneratorAction.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif - +#include "G4RunManagerFactory.hh" #include "G4PhysListFactory.hh" #include "G4VModularPhysicsList.hh" #include "G4UImanager.hh" @@ -73,7 +68,7 @@ namespace { //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -int main(int argc,char** argv) +int main(int argc,char** argv) { // Evaluate arguments // @@ -81,7 +76,7 @@ int main(int argc,char** argv) PrintUsage(); return 1; } - + G4String macro; G4String session; G4String physListName; @@ -102,8 +97,8 @@ int main(int argc,char** argv) PrintUsage(); return 1; } - } - + } + // Detect interactive mode (if no arguments) and define UI session // G4UIExecutive* ui = 0; @@ -115,31 +110,29 @@ int main(int argc,char** argv) G4Random::setTheEngine(new CLHEP::RanecuEngine()); // Construct the run manager -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager(); + auto* runManager = G4RunManagerFactory::CreateRunManager(); +#ifdef G4MULTITHREADED if ( nofThreads > 0 ) { runManager->SetNumberOfThreads(nofThreads); } -#else - G4RunManager * runManager = new G4RunManager(); #endif // Physics list factory G4PhysListFactory factory; G4VModularPhysicsList* physList = nullptr; - // Get physics list name + // Get physics list name if ( ! physListName.size() ) { // Physics List is defined via environment variable PHYSLIST char* physListNameEnv = std::getenv("PHYSLIST"); - if ( physListNameEnv ) { - physListName = G4String(physListNameEnv); + if ( physListNameEnv ) { + physListName = G4String(physListNameEnv); } } // Check if the name is known to the factory if ( physListName.size() && (! factory.IsReferencePhysList(physListName) ) ) { - G4cerr << "Physics list " << physListName + G4cerr << "Physics list " << physListName << " is not available in PhysListFactory." << G4endl; physListName.clear(); } @@ -175,16 +168,16 @@ int main(int argc,char** argv) } else { // interactive mode : define UI session - UImanager->ApplyCommand("/control/execute init_vis.mac"); + UImanager->ApplyCommand("/control/execute init_vis.mac"); ui->SessionStart(); delete ui; } // Job termination // Free the store: user actions, physics_list and detector_description are - // owned and deleted by the run manager, so they should not be deleted + // owned and deleted by the run manager, so they should not be deleted // in the main() program ! - + delete visManager; delete runManager; } diff --git a/examples/extended/physicslists/factory/factory.out b/examples/extended/physicslists/factory/factory.out index 0d71a2e635..0b33b6c826 100644 --- a/examples/extended/physicslists/factory/factory.out +++ b/examples/extended/physicslists/factory/factory.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -18,6 +19,15 @@ G4PhysListFactory::GetReferencePhysList EMoption= 0 <<< Reference Physics List QGSP_BERT is built Using Root + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : Analysis_W013 + issued by : G4RootNtupleFileManager::SetNtupleMergingMode +Merging ntuples is not applicable in sequential application. +Setting was ignored. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... @@ -32,10 +42,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -113,6 +125,11 @@ Some /vis commands (optionally) take a string to specify colour. Checking overlaps for volume Box (G4Box) ... OK! Checking overlaps for volume Screen (G4Box) ... OK! + + hInelastic QGSP_BERT Thresholds: + 1) between BERT and FTF/P over the interval 3 to 6 GeV. + 2) between FTF/P and QGS/P over the interval 12 to 25 GeV. + -- quasiElastic: 1 for QGS and 0 for FTF ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 phot: for gamma SubType=12 BuildTable=0 @@ -138,10 +155,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -165,10 +183,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -196,9 +215,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -212,14 +231,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -228,9 +247,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -242,9 +261,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -255,9 +274,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -271,14 +290,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -287,9 +306,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -303,14 +322,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -319,9 +338,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -335,14 +354,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -351,9 +370,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -368,14 +387,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -384,9 +403,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -401,14 +420,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -417,9 +436,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -433,14 +452,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -449,9 +468,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -465,14 +484,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -502,6 +521,30 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -543,9 +586,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_He3Inelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -559,9 +600,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_alphaInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -575,13 +614,25 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_deuteronInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -591,9 +642,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_neutronInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -607,9 +656,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_protonInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -623,9 +670,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_tritonInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -701,10 +746,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -772,10 +816,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -816,12 +859,12 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -... open Root analysis file : factory.root - done +... create file : factory.root - done +... open analysis file : factory.root - done --> Event 0 starts. --> Event 100 starts. --> Event 200 starts. @@ -832,7 +875,10 @@ See commands in /vis/modeling/trajectories/ for other options. --> Event 700 starts. --> Event 800 starts. --> Event 900 starts. -... write Root file : factory.root - done -... close Root file : factory.root - done +... write file : factory.root - done +... close file : factory.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/physicslists/factory/shared/include/ActionInitialization.hh b/examples/extended/physicslists/factory/shared/include/ActionInitialization.hh index e7bccfd252..049e0dadfb 100644 --- a/examples/extended/physicslists/factory/shared/include/ActionInitialization.hh +++ b/examples/extended/physicslists/factory/shared/include/ActionInitialization.hh @@ -51,4 +51,4 @@ class ActionInitialization : public G4VUserActionInitialization #endif - + diff --git a/examples/extended/physicslists/factory/shared/include/DetectorConstruction.hh b/examples/extended/physicslists/factory/shared/include/DetectorConstruction.hh index 95aed4c330..623bb4ebca 100644 --- a/examples/extended/physicslists/factory/shared/include/DetectorConstruction.hh +++ b/examples/extended/physicslists/factory/shared/include/DetectorConstruction.hh @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file DetectorConstruction.hh /// \brief Definition of the DetectorConstruction class @@ -49,7 +49,7 @@ class G4GlobalMagFieldMessenger; /// /// In ConstructSDandField() sensitive detectors of CalorimeterSD type /// are created and associated with the Absorber and Gap volumes. -/// In addition a transverse uniform magnetic field is defined +/// In addition a transverse uniform magnetic field is defined /// via G4GlobalMagFieldMessenger class. class DetectorConstruction : public G4VUserDetectorConstruction @@ -61,11 +61,11 @@ class DetectorConstruction : public G4VUserDetectorConstruction public: virtual G4VPhysicalVolume* Construct(); virtual void ConstructSDandField(); - + private: // data members // - static G4ThreadLocal G4GlobalMagFieldMessenger* fMagFieldMessenger; + static G4ThreadLocal G4GlobalMagFieldMessenger* fMagFieldMessenger; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/physicslists/factory/shared/include/PrimaryGeneratorAction.hh b/examples/extended/physicslists/factory/shared/include/PrimaryGeneratorAction.hh index 12152fdfe1..ce2062e723 100644 --- a/examples/extended/physicslists/factory/shared/include/PrimaryGeneratorAction.hh +++ b/examples/extended/physicslists/factory/shared/include/PrimaryGeneratorAction.hh @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file PrimaryGeneratorAction.hh /// \brief Definition of the PrimaryGeneratorAction class @@ -38,19 +38,19 @@ class G4Event; /// The primary generator action class with particle gum. /// -/// It defines a single particle which hits the calorimeter +/// It defines a single particle which hits the calorimeter /// perpendicular to the input face. The type of the particle -/// can be changed via the G4 build-in commands of G4ParticleGun class +/// can be changed via the G4 build-in commands of G4ParticleGun class /// (see the macros provided with this example). class PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction { public: - PrimaryGeneratorAction(); + PrimaryGeneratorAction(); virtual ~PrimaryGeneratorAction(); virtual void GeneratePrimaries(G4Event* event); - + // set methods void SetRandomFlag(G4bool value); diff --git a/examples/extended/physicslists/factory/shared/include/RunAction.hh b/examples/extended/physicslists/factory/shared/include/RunAction.hh index e2fd9c9f7b..4af3e1fa77 100644 --- a/examples/extended/physicslists/factory/shared/include/RunAction.hh +++ b/examples/extended/physicslists/factory/shared/include/RunAction.hh @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file RunAction.hh /// \brief Definition of the RunAction class @@ -37,9 +37,9 @@ class G4Run; /// Run action class /// -/// It accumulates statistic and computes dispersion of the energy deposit +/// It accumulates statistic and computes dispersion of the energy deposit /// and track lengths of charged particles with use of analysis tools: -/// H1D histograms are created in BeginOfRunAction() for the following +/// H1D histograms are created in BeginOfRunAction() for the following /// physics quantities: /// - Edep in absorber /// - Edep in gap @@ -49,7 +49,7 @@ class G4Run; /// The histograms and ntuple are saved in the output file in a format /// accoring to a selected technology in Analysis.hh. /// -/// In EndOfRunAction(), the accumulated statistic and computed +/// In EndOfRunAction(), the accumulated statistic and computed /// dispersion is printed. /// diff --git a/examples/extended/physicslists/factory/shared/scripts/clean_files.sh b/examples/extended/physicslists/factory/shared/scripts/clean_files.sh index b40a301436..062bcece65 100755 --- a/examples/extended/physicslists/factory/shared/scripts/clean_files.sh +++ b/examples/extended/physicslists/factory/shared/scripts/clean_files.sh @@ -9,10 +9,10 @@ DIRNAME=$1 for FILE in `ls $DIRNAME/include`; do rm -f include/$FILE -done +done for FILE in `ls $DIRNAME/src`; do rm -f src/$FILE -done +done echo "... clean_files.sh from $1 finished" diff --git a/examples/extended/physicslists/factory/shared/src/ActionInitialization.cc b/examples/extended/physicslists/factory/shared/src/ActionInitialization.cc index 70f6b3a13a..a692173dcc 100644 --- a/examples/extended/physicslists/factory/shared/src/ActionInitialization.cc +++ b/examples/extended/physicslists/factory/shared/src/ActionInitialization.cc @@ -56,6 +56,6 @@ void ActionInitialization::Build() const { SetUserAction(new PrimaryGeneratorAction); SetUserAction(new RunAction(fFileName)); -} +} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/physicslists/factory/shared/src/DetectorConstruction.cc b/examples/extended/physicslists/factory/shared/src/DetectorConstruction.cc index 0d66063488..af6b82cd44 100644 --- a/examples/extended/physicslists/factory/shared/src/DetectorConstruction.cc +++ b/examples/extended/physicslists/factory/shared/src/DetectorConstruction.cc @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file DetectorConstruction.cc /// \brief Implementation of the DetectorConstruction class @@ -45,8 +45,8 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4ThreadLocal -G4GlobalMagFieldMessenger* DetectorConstruction::fMagFieldMessenger = 0; +G4ThreadLocal +G4GlobalMagFieldMessenger* DetectorConstruction::fMagFieldMessenger = 0; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -57,7 +57,7 @@ DetectorConstruction::DetectorConstruction() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... DetectorConstruction::~DetectorConstruction() -{} +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -71,11 +71,11 @@ G4VPhysicalVolume* DetectorConstruction::Construct() G4Material* csi = nistManager->FindOrBuildMaterial("G4_CESIUM_IODIDE"); // There is no need to test if materials were built/found // as G4NistManager would issue an error otherwise - // Try the code with "XYZ". + // Try the code with "XYZ". // Print all materials - G4cout << *(G4Material::GetMaterialTable()) << G4endl; - + G4cout << *(G4Material::GetMaterialTable()) << G4endl; + // Option to switch on/off checking of volumes overlaps G4bool checkOverlaps = true; @@ -85,12 +85,12 @@ G4VPhysicalVolume* DetectorConstruction::Construct() // The world dimensions G4double worldHxyz = 2.*m; - + // world volume - G4Box* worldS = new G4Box("World", worldHxyz, worldHxyz, worldHxyz); + G4Box* worldS = new G4Box("World", worldHxyz, worldHxyz, worldHxyz); G4LogicalVolume* worldLV = new G4LogicalVolume(worldS, air, "World"); - + G4VPhysicalVolume* worldPV = new G4PVPlacement( 0, G4ThreeVector(), worldLV, "World", 0, false, 0, checkOverlaps); @@ -102,12 +102,12 @@ G4VPhysicalVolume* DetectorConstruction::Construct() // The box dimensions G4double boxHxy = 1.*m; G4double boxHz = 10.*cm; - + // box volume - G4Box* boxS = new G4Box("World", boxHxy, boxHxy, boxHz); + G4Box* boxS = new G4Box("World", boxHxy, boxHxy, boxHz); G4LogicalVolume* boxLV = new G4LogicalVolume(boxS, csi, "Box"); - + // The box position G4double posz = 0.*m; @@ -121,12 +121,12 @@ G4VPhysicalVolume* DetectorConstruction::Construct() // The screen dimensions G4double screenHxy = 1.999*m; G4double screenHz = 1.*mm; - + // Screen volume - G4Box* screenS = new G4Box("World", screenHxy, screenHxy, screenHz); - + G4Box* screenS = new G4Box("World", screenHxy, screenHxy, screenHz); + G4LogicalVolume* screenLV = new G4LogicalVolume(screenS, air, "Screen"); - + // The screen position posz += boxHz + screenHz; @@ -134,7 +134,7 @@ G4VPhysicalVolume* DetectorConstruction::Construct() 0, G4ThreeVector(0, 0, posz), screenLV, "Screen", worldLV, false, 0, checkOverlaps); - // + // // Visualization attributes // worldLV->SetVisAttributes(G4VisAttributes::GetInvisible()); @@ -156,14 +156,14 @@ void DetectorConstruction::ConstructSDandField() { // G4SDManager::GetSDMpointer()->SetVerboseLevel(1); - // + // // Sensitive detectors // auto screenSD = new ScreenSD("ScreenSD"); G4SDManager::GetSDMpointer()->AddNewDetector(screenSD); SetSensitiveDetector("Screen", screenSD); - // + // // Magnetic field // // Create global magnetic field messenger. @@ -172,7 +172,7 @@ void DetectorConstruction::ConstructSDandField() G4ThreeVector fieldValue; fMagFieldMessenger = new G4GlobalMagFieldMessenger(fieldValue); fMagFieldMessenger->SetVerboseLevel(1); - + // Register the field messenger for deleting G4AutoDelete::Register(fMagFieldMessenger); } diff --git a/examples/extended/physicslists/factory/shared/src/PrimaryGeneratorAction.cc b/examples/extended/physicslists/factory/shared/src/PrimaryGeneratorAction.cc index bb993aa58a..1f542017cc 100644 --- a/examples/extended/physicslists/factory/shared/src/PrimaryGeneratorAction.cc +++ b/examples/extended/physicslists/factory/shared/src/PrimaryGeneratorAction.cc @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file PrimaryGeneratorAction.cc /// \brief Implementation of the PrimaryGeneratorAction class @@ -69,7 +69,7 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) // This function is called at the begining of event // In order to avoid dependence of PrimaryGeneratorAction - // on DetectorConstruction class we get world volume + // on DetectorConstruction class we get world volume // from G4LogicalVolumeStore // G4double worldZHalfLength = 0.; @@ -82,7 +82,7 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) } if ( worldBox ) { - worldZHalfLength = worldBox->GetZHalfLength(); + worldZHalfLength = worldBox->GetZHalfLength(); } else { G4ExceptionDescription msg; @@ -91,8 +91,8 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) msg << "The gun will be place in the center."; G4Exception("PrimaryGeneratorAction::GeneratePrimaries()", "MyCode0002", JustWarning, msg); - } - + } + // Set gun position fParticleGun ->SetParticlePosition(G4ThreeVector(0., 0., -worldZHalfLength)); diff --git a/examples/extended/physicslists/factory/shared/src/RunAction.cc b/examples/extended/physicslists/factory/shared/src/RunAction.cc index d06a6c154e..83b27dcf0b 100644 --- a/examples/extended/physicslists/factory/shared/src/RunAction.cc +++ b/examples/extended/physicslists/factory/shared/src/RunAction.cc @@ -40,7 +40,7 @@ RunAction::RunAction(const G4String& fileName) : G4UserRunAction(), fFileName(fileName) -{ +{ // Create analysis manager // The choice of analysis technology is done via selectin of a namespace // in Analysis.hh @@ -59,7 +59,7 @@ RunAction::RunAction(const G4String& fileName) analysisManager->CreateNtupleIColumn("ID"); // column id = 0 analysisManager->CreateNtupleIColumn("PDG"); // column id = 1 analysisManager->CreateNtupleDColumn("Ekin"); // column id = 2 - analysisManager->CreateNtupleDColumn("Xpos"); // column id = 3 + analysisManager->CreateNtupleDColumn("Xpos"); // column id = 3 analysisManager->CreateNtupleDColumn("Ypos"); // column id = 4 analysisManager->CreateNtupleDColumn("time"); // column id = 5 analysisManager->FinishNtuple(); @@ -69,13 +69,13 @@ RunAction::RunAction(const G4String& fileName) RunAction::~RunAction() { - delete G4AnalysisManager::Instance(); + delete G4AnalysisManager::Instance(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void RunAction::BeginOfRunAction(const G4Run* /*run*/) -{ +{ // Get analysis manager auto analysisManager = G4AnalysisManager::Instance(); diff --git a/examples/extended/physicslists/factory/shared/src/ScreenSD.cc b/examples/extended/physicslists/factory/shared/src/ScreenSD.cc index fcecd53dda..492d80ae7c 100644 --- a/examples/extended/physicslists/factory/shared/src/ScreenSD.cc +++ b/examples/extended/physicslists/factory/shared/src/ScreenSD.cc @@ -76,16 +76,16 @@ G4bool ScreenSD::ProcessHits(G4Step* step, G4TouchableHistory* /*history*/) // Obtain local coordinates: const G4VTouchable* touchable = preStepPoint->GetTouchable(); G4ThreeVector globalPosition = preStepPoint->GetPosition(); - G4ThreeVector localPosition + G4ThreeVector localPosition = touchable->GetHistory()->GetTopTransform().TransformPoint(globalPosition); // // Example for obtaining the local direction: // G4ThreeVector globalDirection = preStepPoint->GetMomentumDirection(); - // G4ThreeVector localDirection + // G4ThreeVector localDirection // = touchable->GetHistory()->GetTopTransform().TransformAxis(localDirection); // Time G4double time = preStepPoint->GetGlobalTime(); - + // Store hit in the ntuple G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); analysisManager->FillNtupleIColumn(0, ID); @@ -94,7 +94,7 @@ G4bool ScreenSD::ProcessHits(G4Step* step, G4TouchableHistory* /*history*/) analysisManager->FillNtupleDColumn(3, localPosition.x()/cm); analysisManager->FillNtupleDColumn(4, localPosition.y()/cm); analysisManager->FillNtupleDColumn(5, time/ns); - analysisManager->AddNtupleRow(); + analysisManager->AddNtupleRow(); return true; } diff --git a/examples/extended/physicslists/genericPL/.README.txt b/examples/extended/physicslists/genericPL/.README.txt index 4f941ba338..681df6bac2 100644 --- a/examples/extended/physicslists/genericPL/.README.txt +++ b/examples/extended/physicslists/genericPL/.README.txt @@ -9,11 +9,11 @@ (2) Institut de Physique NucleÌaire (IPNO), UniversiteÌ Paris-Sud, CNRS-IN2P3 \n Examples in the physicslist category show the possible ways how to define -a physics list from Geant4 physics constructors. This example demonstrates -the usage of G4GenericPhysicsList to build the concrete physics list at -the run time. +a physics list from Geant4 physics constructors. This example demonstrates +the usage of G4GenericPhysicsList to build the concrete physics list at +the run time. -In Geant4 versions < 10.4, the generic physics list was demonstrated in the +In Geant4 versions < 10.4, the generic physics list was demonstrated in the extended/hadronic/Hadr05 example. The G4GenericPhysicsList class allows to build the physics list at the run @@ -27,7 +27,7 @@ To run the example you can call ./genericPL -m run.mac [ -p FTFP_BERT.mac ] \endverbatim -where FTFP_BERT.mac is the macro file containing the 'physics list'. +where FTFP_BERT.mac is the macro file containing the 'physics list'. If you run this example by calling @@ -43,15 +43,15 @@ The same experimental setup is used for all examples in the physicslist category \section genericPL_s1 Detector description The geometry (defined in the DetectorConstruction class) consists in a box of scintillator material (CsI) followed by a thin box of air (screen) which is used to simplify scoring. - + \section genericPL_s2 Primary generator The primary generator is defined with usage of G4ParticleGun. -The default particle is proton which hits the box perpendicular to the input face. +The default particle is proton which hits the box perpendicular to the input face. The type of the particle and its energy are set in the PrimaryGeneratorAction class, and can be changed via the G4 built-in commands of the G4ParticleGun class. - + \section genericPL_s3 Scoring (ntuples) The screen volume is associated with a sensitive detector, ScreenSD, @@ -69,18 +69,18 @@ example name in main () function. \section genericPL_s4 How to build An additional step is needed when building the example with GNUmake -due to using the extra shared directory: -\verbatim +due to using the extra shared directory: +\verbatim % cd path_to_example/example % gmake setup % gmake -\endverbatim +\endverbatim This will copy the files from shared in the example include and src; to remove these files: -\verbatim +\verbatim % gmake clean_setup -\endverbatim +\endverbatim */ diff --git a/examples/extended/physicslists/genericPL/CMakeLists.txt b/examples/extended/physicslists/genericPL/CMakeLists.txt index ba55428962..5baa1e1b2a 100644 --- a/examples/extended/physicslists/genericPL/CMakeLists.txt +++ b/examples/extended/physicslists/genericPL/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(genericPL) #---------------------------------------------------------------------------- @@ -23,8 +26,8 @@ include(${Geant4_USE_FILE}) #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include - ${PROJECT_SOURCE_DIR}/shared/include +include_directories(${PROJECT_SOURCE_DIR}/include + ${PROJECT_SOURCE_DIR}/shared/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc ${PROJECT_SOURCE_DIR}/shared/src/*.cc) @@ -34,8 +37,8 @@ file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh #---------------------------------------------------------------------------- # Add the executable, and link it to the Geant4 libraries # -add_executable(genericPL genericPL.cc - ${sources} ${add_sources} ${fortran_sources} +add_executable(genericPL genericPL.cc + ${sources} ${add_sources} ${fortran_sources} ${headers} ${add_headers}) target_link_libraries(genericPL ${Geant4_LIBRARIES} ${HBOOK_LIBRARIES}) @@ -45,7 +48,7 @@ target_link_libraries(genericPL ${Geant4_LIBRARIES} ${HBOOK_LIBRARIES}) # relies on these scripts being in the current working directory. # set(genericPL_SCRIPTS - FTFP_BERT.mac init_vis.mac run.mac vis.mac + FTFP_BERT.mac init_vis.mac run.mac vis.mac ) foreach(_script ${genericPL_SCRIPTS}) diff --git a/examples/extended/physicslists/genericPL/FTFP_BERT.mac b/examples/extended/physicslists/genericPL/FTFP_BERT.mac old mode 100755 new mode 100644 diff --git a/examples/extended/physicslists/genericPL/History b/examples/extended/physicslists/genericPL/History index eefdf1f577..b668fc1acd 100644 --- a/examples/extended/physicslists/genericPL/History +++ b/examples/extended/physicslists/genericPL/History @@ -13,7 +13,11 @@ track of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- - + +10/11/20 I. Hrivnacova (genericPL-V10-06-00) +- Migration to G4RunManagerFactory +- Removed trailing whitespaces + 26/11/19 I. Hrivnacova (genericPL-V10-05-01) - Fixed Doxygen warnings diff --git a/examples/extended/physicslists/genericPL/README b/examples/extended/physicslists/genericPL/README index 13cace7155..237adf5ef9 100644 --- a/examples/extended/physicslists/genericPL/README +++ b/examples/extended/physicslists/genericPL/README @@ -13,11 +13,11 @@ Examples in the physicslist category show the possible ways how to define -a physics list from Geant4 physics constructors. This example demonstrates -the usage of G4GenericPhysicsList to build the concrete physics list at -the run time. +a physics list from Geant4 physics constructors. This example demonstrates +the usage of G4GenericPhysicsList to build the concrete physics list at +the run time. -In Geant4 versions < 10.4, the generic physics list was demonstrated in the +In Geant4 versions < 10.4, the generic physics list was demonstrated in the extended/hadronic/Hadr05 example. The G4GenericPhysicsList class allows to build the physics list at the run @@ -29,7 +29,7 @@ To run the example you can call ./genericPL -m run.mac [ -p FTFP_BERT.mac ] -where FTFP_BERT.mac is the macro file containing the 'physics list'. +where FTFP_BERT.mac is the macro file containing the 'physics list'. If you run this example by calling @@ -45,16 +45,16 @@ The same experimental setup is used for all examples in the physicslist category The geometry (defined in the DetectorConstruction class) consists in a box of scintillator material (CsI) followed by a thin box of air (screen) which is used to simplify scoring. - + 2- Primary generator -------------------- The primary generator is defined with usage of G4ParticleGun. -The default particle is proton which hits the box perpendicular to the input face. +The default particle is proton which hits the box perpendicular to the input face. The type of the particle and its energy are set in the PrimaryGeneratorAction class, and can be changed via the G4 built-in commands of the G4ParticleGun class. - + 3- Scoring (ntuples) -------------------- @@ -71,10 +71,10 @@ in RunAction class. The ntuple is saved in a Root file, which name is set to be example name in main () function. 4- How to build ----------------- +---------------- An additional step is needed when building the example with GNUmake -due to using the extra shared directory: +due to using the extra shared directory: % cd path_to_example/example % gmake setup % gmake diff --git a/examples/extended/physicslists/genericPL/genericPL.cc b/examples/extended/physicslists/genericPL/genericPL.cc index 073ee1c7f1..cd8af3acc8 100644 --- a/examples/extended/physicslists/genericPL/genericPL.cc +++ b/examples/extended/physicslists/genericPL/genericPL.cc @@ -35,7 +35,7 @@ // // Author: V.Ivanchenko 20 June 2008 // -// Modified: +// Modified: // // ------------------------------------------------------------- // @@ -47,12 +47,7 @@ #include "ActionInitialization.hh" #include "PrimaryGeneratorAction.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif - +#include "G4RunManagerFactory.hh" #include "G4GenericPhysicsList.hh" #include "G4VModularPhysicsList.hh" #include "G4UImanager.hh" @@ -73,7 +68,7 @@ namespace { //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -int main(int argc,char** argv) +int main(int argc,char** argv) { // Evaluate arguments // @@ -81,7 +76,7 @@ int main(int argc,char** argv) PrintUsage(); return 1; } - + G4String macro; G4String session; G4String physListMacro; @@ -102,8 +97,8 @@ int main(int argc,char** argv) PrintUsage(); return 1; } - } - + } + // Detect interactive mode (if no arguments) and define UI session // G4UIExecutive* ui = 0; @@ -115,13 +110,11 @@ int main(int argc,char** argv) G4Random::setTheEngine(new CLHEP::RanecuEngine()); // Construct the run manager -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager(); + auto* runManager = G4RunManagerFactory::CreateRunManager(); +#ifdef G4MULTITHREADED if ( nofThreads > 0 ) { runManager->SetNumberOfThreads(nofThreads); } -#else - G4RunManager * runManager = new G4RunManager(); #endif // Get the pointer to the User Interface manager @@ -133,7 +126,7 @@ int main(int argc,char** argv) // via macro physList = new G4GenericPhysicsList(); UImanager->ApplyCommand("/control/execute "+physListMacro); - } + } else { // from vector of physics cobstructor names std::vector* myConstructors = new std::vector; @@ -170,16 +163,16 @@ int main(int argc,char** argv) } else { // interactive mode : define UI session - UImanager->ApplyCommand("/control/execute init_vis.mac"); + UImanager->ApplyCommand("/control/execute init_vis.mac"); ui->SessionStart(); delete ui; } // Job termination // Free the store: user actions, physics_list and detector_description are - // owned and deleted by the run manager, so they should not be deleted + // owned and deleted by the run manager, so they should not be deleted // in the main() program ! - + delete visManager; delete runManager; } diff --git a/examples/extended/physicslists/genericPL/genericPL.out b/examples/extended/physicslists/genericPL/genericPL.out index bc59c1d576..e3e4f7a56b 100644 --- a/examples/extended/physicslists/genericPL/genericPL.out +++ b/examples/extended/physicslists/genericPL/genericPL.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,6 +16,15 @@ <<< Geant4 Physics List simulation engine: G4GenericPhysicsList Using Root + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : Analysis_W013 + issued by : G4RootNtupleFileManager::SetNtupleMergingMode +Merging ntuples is not applicable in sequential application. +Setting was ignored. +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... Registering graphics systems... @@ -29,10 +39,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -111,7 +123,7 @@ Some /vis commands (optionally) take a string to specify colour. Checking overlaps for volume Box (G4Box) ... OK! Checking overlaps for volume Screen (G4Box) ... OK! - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -139,6 +151,28 @@ Checking overlaps for volume Screen (G4Box) ... OK! Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -213,6 +247,19 @@ Checking overlaps for volume Screen (G4Box) ... OK! Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -324,8 +371,8 @@ Checking overlaps for volume Screen (G4Box) ... OK! Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -390,8 +437,8 @@ Checking overlaps for volume Screen (G4Box) ... OK! Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -432,12 +479,12 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. -... open Root analysis file : genericPL.root - done +... create file : genericPL.root - done +... open analysis file : genericPL.root - done --> Event 0 starts. --> Event 100 starts. --> Event 200 starts. @@ -448,7 +495,10 @@ See commands in /vis/modeling/trajectories/ for other options. --> Event 700 starts. --> Event 800 starts. --> Event 900 starts. -... write Root file : genericPL.root - done -... close Root file : genericPL.root - done +... write file : genericPL.root - done +... close file : genericPL.root - done +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/physicslists/genericPL/shared/include/ActionInitialization.hh b/examples/extended/physicslists/genericPL/shared/include/ActionInitialization.hh index e7bccfd252..049e0dadfb 100644 --- a/examples/extended/physicslists/genericPL/shared/include/ActionInitialization.hh +++ b/examples/extended/physicslists/genericPL/shared/include/ActionInitialization.hh @@ -51,4 +51,4 @@ class ActionInitialization : public G4VUserActionInitialization #endif - + diff --git a/examples/extended/physicslists/genericPL/shared/include/DetectorConstruction.hh b/examples/extended/physicslists/genericPL/shared/include/DetectorConstruction.hh index 95aed4c330..623bb4ebca 100644 --- a/examples/extended/physicslists/genericPL/shared/include/DetectorConstruction.hh +++ b/examples/extended/physicslists/genericPL/shared/include/DetectorConstruction.hh @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file DetectorConstruction.hh /// \brief Definition of the DetectorConstruction class @@ -49,7 +49,7 @@ class G4GlobalMagFieldMessenger; /// /// In ConstructSDandField() sensitive detectors of CalorimeterSD type /// are created and associated with the Absorber and Gap volumes. -/// In addition a transverse uniform magnetic field is defined +/// In addition a transverse uniform magnetic field is defined /// via G4GlobalMagFieldMessenger class. class DetectorConstruction : public G4VUserDetectorConstruction @@ -61,11 +61,11 @@ class DetectorConstruction : public G4VUserDetectorConstruction public: virtual G4VPhysicalVolume* Construct(); virtual void ConstructSDandField(); - + private: // data members // - static G4ThreadLocal G4GlobalMagFieldMessenger* fMagFieldMessenger; + static G4ThreadLocal G4GlobalMagFieldMessenger* fMagFieldMessenger; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/physicslists/genericPL/shared/include/PrimaryGeneratorAction.hh b/examples/extended/physicslists/genericPL/shared/include/PrimaryGeneratorAction.hh index 12152fdfe1..ce2062e723 100644 --- a/examples/extended/physicslists/genericPL/shared/include/PrimaryGeneratorAction.hh +++ b/examples/extended/physicslists/genericPL/shared/include/PrimaryGeneratorAction.hh @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file PrimaryGeneratorAction.hh /// \brief Definition of the PrimaryGeneratorAction class @@ -38,19 +38,19 @@ class G4Event; /// The primary generator action class with particle gum. /// -/// It defines a single particle which hits the calorimeter +/// It defines a single particle which hits the calorimeter /// perpendicular to the input face. The type of the particle -/// can be changed via the G4 build-in commands of G4ParticleGun class +/// can be changed via the G4 build-in commands of G4ParticleGun class /// (see the macros provided with this example). class PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction { public: - PrimaryGeneratorAction(); + PrimaryGeneratorAction(); virtual ~PrimaryGeneratorAction(); virtual void GeneratePrimaries(G4Event* event); - + // set methods void SetRandomFlag(G4bool value); diff --git a/examples/extended/physicslists/genericPL/shared/include/RunAction.hh b/examples/extended/physicslists/genericPL/shared/include/RunAction.hh index e2fd9c9f7b..4af3e1fa77 100644 --- a/examples/extended/physicslists/genericPL/shared/include/RunAction.hh +++ b/examples/extended/physicslists/genericPL/shared/include/RunAction.hh @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file RunAction.hh /// \brief Definition of the RunAction class @@ -37,9 +37,9 @@ class G4Run; /// Run action class /// -/// It accumulates statistic and computes dispersion of the energy deposit +/// It accumulates statistic and computes dispersion of the energy deposit /// and track lengths of charged particles with use of analysis tools: -/// H1D histograms are created in BeginOfRunAction() for the following +/// H1D histograms are created in BeginOfRunAction() for the following /// physics quantities: /// - Edep in absorber /// - Edep in gap @@ -49,7 +49,7 @@ class G4Run; /// The histograms and ntuple are saved in the output file in a format /// accoring to a selected technology in Analysis.hh. /// -/// In EndOfRunAction(), the accumulated statistic and computed +/// In EndOfRunAction(), the accumulated statistic and computed /// dispersion is printed. /// diff --git a/examples/extended/physicslists/genericPL/shared/scripts/clean_files.sh b/examples/extended/physicslists/genericPL/shared/scripts/clean_files.sh index b40a301436..062bcece65 100755 --- a/examples/extended/physicslists/genericPL/shared/scripts/clean_files.sh +++ b/examples/extended/physicslists/genericPL/shared/scripts/clean_files.sh @@ -9,10 +9,10 @@ DIRNAME=$1 for FILE in `ls $DIRNAME/include`; do rm -f include/$FILE -done +done for FILE in `ls $DIRNAME/src`; do rm -f src/$FILE -done +done echo "... clean_files.sh from $1 finished" diff --git a/examples/extended/physicslists/genericPL/shared/src/ActionInitialization.cc b/examples/extended/physicslists/genericPL/shared/src/ActionInitialization.cc index 70f6b3a13a..a692173dcc 100644 --- a/examples/extended/physicslists/genericPL/shared/src/ActionInitialization.cc +++ b/examples/extended/physicslists/genericPL/shared/src/ActionInitialization.cc @@ -56,6 +56,6 @@ void ActionInitialization::Build() const { SetUserAction(new PrimaryGeneratorAction); SetUserAction(new RunAction(fFileName)); -} +} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/physicslists/genericPL/shared/src/DetectorConstruction.cc b/examples/extended/physicslists/genericPL/shared/src/DetectorConstruction.cc index 0d66063488..af6b82cd44 100644 --- a/examples/extended/physicslists/genericPL/shared/src/DetectorConstruction.cc +++ b/examples/extended/physicslists/genericPL/shared/src/DetectorConstruction.cc @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file DetectorConstruction.cc /// \brief Implementation of the DetectorConstruction class @@ -45,8 +45,8 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4ThreadLocal -G4GlobalMagFieldMessenger* DetectorConstruction::fMagFieldMessenger = 0; +G4ThreadLocal +G4GlobalMagFieldMessenger* DetectorConstruction::fMagFieldMessenger = 0; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -57,7 +57,7 @@ DetectorConstruction::DetectorConstruction() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... DetectorConstruction::~DetectorConstruction() -{} +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -71,11 +71,11 @@ G4VPhysicalVolume* DetectorConstruction::Construct() G4Material* csi = nistManager->FindOrBuildMaterial("G4_CESIUM_IODIDE"); // There is no need to test if materials were built/found // as G4NistManager would issue an error otherwise - // Try the code with "XYZ". + // Try the code with "XYZ". // Print all materials - G4cout << *(G4Material::GetMaterialTable()) << G4endl; - + G4cout << *(G4Material::GetMaterialTable()) << G4endl; + // Option to switch on/off checking of volumes overlaps G4bool checkOverlaps = true; @@ -85,12 +85,12 @@ G4VPhysicalVolume* DetectorConstruction::Construct() // The world dimensions G4double worldHxyz = 2.*m; - + // world volume - G4Box* worldS = new G4Box("World", worldHxyz, worldHxyz, worldHxyz); + G4Box* worldS = new G4Box("World", worldHxyz, worldHxyz, worldHxyz); G4LogicalVolume* worldLV = new G4LogicalVolume(worldS, air, "World"); - + G4VPhysicalVolume* worldPV = new G4PVPlacement( 0, G4ThreeVector(), worldLV, "World", 0, false, 0, checkOverlaps); @@ -102,12 +102,12 @@ G4VPhysicalVolume* DetectorConstruction::Construct() // The box dimensions G4double boxHxy = 1.*m; G4double boxHz = 10.*cm; - + // box volume - G4Box* boxS = new G4Box("World", boxHxy, boxHxy, boxHz); + G4Box* boxS = new G4Box("World", boxHxy, boxHxy, boxHz); G4LogicalVolume* boxLV = new G4LogicalVolume(boxS, csi, "Box"); - + // The box position G4double posz = 0.*m; @@ -121,12 +121,12 @@ G4VPhysicalVolume* DetectorConstruction::Construct() // The screen dimensions G4double screenHxy = 1.999*m; G4double screenHz = 1.*mm; - + // Screen volume - G4Box* screenS = new G4Box("World", screenHxy, screenHxy, screenHz); - + G4Box* screenS = new G4Box("World", screenHxy, screenHxy, screenHz); + G4LogicalVolume* screenLV = new G4LogicalVolume(screenS, air, "Screen"); - + // The screen position posz += boxHz + screenHz; @@ -134,7 +134,7 @@ G4VPhysicalVolume* DetectorConstruction::Construct() 0, G4ThreeVector(0, 0, posz), screenLV, "Screen", worldLV, false, 0, checkOverlaps); - // + // // Visualization attributes // worldLV->SetVisAttributes(G4VisAttributes::GetInvisible()); @@ -156,14 +156,14 @@ void DetectorConstruction::ConstructSDandField() { // G4SDManager::GetSDMpointer()->SetVerboseLevel(1); - // + // // Sensitive detectors // auto screenSD = new ScreenSD("ScreenSD"); G4SDManager::GetSDMpointer()->AddNewDetector(screenSD); SetSensitiveDetector("Screen", screenSD); - // + // // Magnetic field // // Create global magnetic field messenger. @@ -172,7 +172,7 @@ void DetectorConstruction::ConstructSDandField() G4ThreeVector fieldValue; fMagFieldMessenger = new G4GlobalMagFieldMessenger(fieldValue); fMagFieldMessenger->SetVerboseLevel(1); - + // Register the field messenger for deleting G4AutoDelete::Register(fMagFieldMessenger); } diff --git a/examples/extended/physicslists/genericPL/shared/src/PrimaryGeneratorAction.cc b/examples/extended/physicslists/genericPL/shared/src/PrimaryGeneratorAction.cc index bb993aa58a..1f542017cc 100644 --- a/examples/extended/physicslists/genericPL/shared/src/PrimaryGeneratorAction.cc +++ b/examples/extended/physicslists/genericPL/shared/src/PrimaryGeneratorAction.cc @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file PrimaryGeneratorAction.cc /// \brief Implementation of the PrimaryGeneratorAction class @@ -69,7 +69,7 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) // This function is called at the begining of event // In order to avoid dependence of PrimaryGeneratorAction - // on DetectorConstruction class we get world volume + // on DetectorConstruction class we get world volume // from G4LogicalVolumeStore // G4double worldZHalfLength = 0.; @@ -82,7 +82,7 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) } if ( worldBox ) { - worldZHalfLength = worldBox->GetZHalfLength(); + worldZHalfLength = worldBox->GetZHalfLength(); } else { G4ExceptionDescription msg; @@ -91,8 +91,8 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) msg << "The gun will be place in the center."; G4Exception("PrimaryGeneratorAction::GeneratePrimaries()", "MyCode0002", JustWarning, msg); - } - + } + // Set gun position fParticleGun ->SetParticlePosition(G4ThreeVector(0., 0., -worldZHalfLength)); diff --git a/examples/extended/physicslists/genericPL/shared/src/RunAction.cc b/examples/extended/physicslists/genericPL/shared/src/RunAction.cc index d06a6c154e..83b27dcf0b 100644 --- a/examples/extended/physicslists/genericPL/shared/src/RunAction.cc +++ b/examples/extended/physicslists/genericPL/shared/src/RunAction.cc @@ -40,7 +40,7 @@ RunAction::RunAction(const G4String& fileName) : G4UserRunAction(), fFileName(fileName) -{ +{ // Create analysis manager // The choice of analysis technology is done via selectin of a namespace // in Analysis.hh @@ -59,7 +59,7 @@ RunAction::RunAction(const G4String& fileName) analysisManager->CreateNtupleIColumn("ID"); // column id = 0 analysisManager->CreateNtupleIColumn("PDG"); // column id = 1 analysisManager->CreateNtupleDColumn("Ekin"); // column id = 2 - analysisManager->CreateNtupleDColumn("Xpos"); // column id = 3 + analysisManager->CreateNtupleDColumn("Xpos"); // column id = 3 analysisManager->CreateNtupleDColumn("Ypos"); // column id = 4 analysisManager->CreateNtupleDColumn("time"); // column id = 5 analysisManager->FinishNtuple(); @@ -69,13 +69,13 @@ RunAction::RunAction(const G4String& fileName) RunAction::~RunAction() { - delete G4AnalysisManager::Instance(); + delete G4AnalysisManager::Instance(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void RunAction::BeginOfRunAction(const G4Run* /*run*/) -{ +{ // Get analysis manager auto analysisManager = G4AnalysisManager::Instance(); diff --git a/examples/extended/physicslists/genericPL/shared/src/ScreenSD.cc b/examples/extended/physicslists/genericPL/shared/src/ScreenSD.cc index fcecd53dda..492d80ae7c 100644 --- a/examples/extended/physicslists/genericPL/shared/src/ScreenSD.cc +++ b/examples/extended/physicslists/genericPL/shared/src/ScreenSD.cc @@ -76,16 +76,16 @@ G4bool ScreenSD::ProcessHits(G4Step* step, G4TouchableHistory* /*history*/) // Obtain local coordinates: const G4VTouchable* touchable = preStepPoint->GetTouchable(); G4ThreeVector globalPosition = preStepPoint->GetPosition(); - G4ThreeVector localPosition + G4ThreeVector localPosition = touchable->GetHistory()->GetTopTransform().TransformPoint(globalPosition); // // Example for obtaining the local direction: // G4ThreeVector globalDirection = preStepPoint->GetMomentumDirection(); - // G4ThreeVector localDirection + // G4ThreeVector localDirection // = touchable->GetHistory()->GetTopTransform().TransformAxis(localDirection); // Time G4double time = preStepPoint->GetGlobalTime(); - + // Store hit in the ntuple G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); analysisManager->FillNtupleIColumn(0, ID); @@ -94,7 +94,7 @@ G4bool ScreenSD::ProcessHits(G4Step* step, G4TouchableHistory* /*history*/) analysisManager->FillNtupleDColumn(3, localPosition.x()/cm); analysisManager->FillNtupleDColumn(4, localPosition.y()/cm); analysisManager->FillNtupleDColumn(5, time/ns); - analysisManager->AddNtupleRow(); + analysisManager->AddNtupleRow(); return true; } diff --git a/examples/extended/physicslists/shared/History b/examples/extended/physicslists/shared/History index 11974ea338..17ac4cb005 100644 --- a/examples/extended/physicslists/shared/History +++ b/examples/extended/physicslists/shared/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +10/11/20 I. Hrivnacova (physicslistsShared-V10-06-00) +- Removed trailing whitespaces + 24/3/19 J.Allison (physicslistsShared-V10-05-00) - Part of Merge Request exampleB4-V10-05-00. - Corrected name of include file: csv.hh diff --git a/examples/extended/physicslists/shared/include/ActionInitialization.hh b/examples/extended/physicslists/shared/include/ActionInitialization.hh index e7bccfd252..049e0dadfb 100644 --- a/examples/extended/physicslists/shared/include/ActionInitialization.hh +++ b/examples/extended/physicslists/shared/include/ActionInitialization.hh @@ -51,4 +51,4 @@ class ActionInitialization : public G4VUserActionInitialization #endif - + diff --git a/examples/extended/physicslists/shared/include/DetectorConstruction.hh b/examples/extended/physicslists/shared/include/DetectorConstruction.hh index 95aed4c330..623bb4ebca 100644 --- a/examples/extended/physicslists/shared/include/DetectorConstruction.hh +++ b/examples/extended/physicslists/shared/include/DetectorConstruction.hh @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file DetectorConstruction.hh /// \brief Definition of the DetectorConstruction class @@ -49,7 +49,7 @@ class G4GlobalMagFieldMessenger; /// /// In ConstructSDandField() sensitive detectors of CalorimeterSD type /// are created and associated with the Absorber and Gap volumes. -/// In addition a transverse uniform magnetic field is defined +/// In addition a transverse uniform magnetic field is defined /// via G4GlobalMagFieldMessenger class. class DetectorConstruction : public G4VUserDetectorConstruction @@ -61,11 +61,11 @@ class DetectorConstruction : public G4VUserDetectorConstruction public: virtual G4VPhysicalVolume* Construct(); virtual void ConstructSDandField(); - + private: // data members // - static G4ThreadLocal G4GlobalMagFieldMessenger* fMagFieldMessenger; + static G4ThreadLocal G4GlobalMagFieldMessenger* fMagFieldMessenger; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/physicslists/shared/include/PrimaryGeneratorAction.hh b/examples/extended/physicslists/shared/include/PrimaryGeneratorAction.hh index 12152fdfe1..ce2062e723 100644 --- a/examples/extended/physicslists/shared/include/PrimaryGeneratorAction.hh +++ b/examples/extended/physicslists/shared/include/PrimaryGeneratorAction.hh @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file PrimaryGeneratorAction.hh /// \brief Definition of the PrimaryGeneratorAction class @@ -38,19 +38,19 @@ class G4Event; /// The primary generator action class with particle gum. /// -/// It defines a single particle which hits the calorimeter +/// It defines a single particle which hits the calorimeter /// perpendicular to the input face. The type of the particle -/// can be changed via the G4 build-in commands of G4ParticleGun class +/// can be changed via the G4 build-in commands of G4ParticleGun class /// (see the macros provided with this example). class PrimaryGeneratorAction : public G4VUserPrimaryGeneratorAction { public: - PrimaryGeneratorAction(); + PrimaryGeneratorAction(); virtual ~PrimaryGeneratorAction(); virtual void GeneratePrimaries(G4Event* event); - + // set methods void SetRandomFlag(G4bool value); diff --git a/examples/extended/physicslists/shared/include/RunAction.hh b/examples/extended/physicslists/shared/include/RunAction.hh index e2fd9c9f7b..4af3e1fa77 100644 --- a/examples/extended/physicslists/shared/include/RunAction.hh +++ b/examples/extended/physicslists/shared/include/RunAction.hh @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file RunAction.hh /// \brief Definition of the RunAction class @@ -37,9 +37,9 @@ class G4Run; /// Run action class /// -/// It accumulates statistic and computes dispersion of the energy deposit +/// It accumulates statistic and computes dispersion of the energy deposit /// and track lengths of charged particles with use of analysis tools: -/// H1D histograms are created in BeginOfRunAction() for the following +/// H1D histograms are created in BeginOfRunAction() for the following /// physics quantities: /// - Edep in absorber /// - Edep in gap @@ -49,7 +49,7 @@ class G4Run; /// The histograms and ntuple are saved in the output file in a format /// accoring to a selected technology in Analysis.hh. /// -/// In EndOfRunAction(), the accumulated statistic and computed +/// In EndOfRunAction(), the accumulated statistic and computed /// dispersion is printed. /// diff --git a/examples/extended/physicslists/shared/scripts/clean_files.sh b/examples/extended/physicslists/shared/scripts/clean_files.sh index b40a301436..062bcece65 100755 --- a/examples/extended/physicslists/shared/scripts/clean_files.sh +++ b/examples/extended/physicslists/shared/scripts/clean_files.sh @@ -9,10 +9,10 @@ DIRNAME=$1 for FILE in `ls $DIRNAME/include`; do rm -f include/$FILE -done +done for FILE in `ls $DIRNAME/src`; do rm -f src/$FILE -done +done echo "... clean_files.sh from $1 finished" diff --git a/examples/extended/physicslists/shared/src/ActionInitialization.cc b/examples/extended/physicslists/shared/src/ActionInitialization.cc index e35968a52a..e91fe4c47c 100644 --- a/examples/extended/physicslists/shared/src/ActionInitialization.cc +++ b/examples/extended/physicslists/shared/src/ActionInitialization.cc @@ -56,6 +56,6 @@ void ActionInitialization::Build() const { SetUserAction(new PrimaryGeneratorAction); SetUserAction(new RunAction(fFileName)); -} +} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/physicslists/shared/src/DetectorConstruction.cc b/examples/extended/physicslists/shared/src/DetectorConstruction.cc index e64f2301b3..d91ca92afb 100644 --- a/examples/extended/physicslists/shared/src/DetectorConstruction.cc +++ b/examples/extended/physicslists/shared/src/DetectorConstruction.cc @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file DetectorConstruction /// \brief Implementation of the DetectorConstruction class @@ -45,8 +45,8 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4ThreadLocal -G4GlobalMagFieldMessenger* DetectorConstruction::fMagFieldMessenger = 0; +G4ThreadLocal +G4GlobalMagFieldMessenger* DetectorConstruction::fMagFieldMessenger = 0; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -57,7 +57,7 @@ DetectorConstruction::DetectorConstruction() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... DetectorConstruction::~DetectorConstruction() -{} +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -71,11 +71,11 @@ G4VPhysicalVolume* DetectorConstruction::Construct() G4Material* csi = nistManager->FindOrBuildMaterial("G4_CESIUM_IODIDE"); // There is no need to test if materials were built/found // as G4NistManager would issue an error otherwise - // Try the code with "XYZ". + // Try the code with "XYZ". // Print all materials - G4cout << *(G4Material::GetMaterialTable()) << G4endl; - + G4cout << *(G4Material::GetMaterialTable()) << G4endl; + // Option to switch on/off checking of volumes overlaps G4bool checkOverlaps = true; @@ -85,12 +85,12 @@ G4VPhysicalVolume* DetectorConstruction::Construct() // The world dimensions G4double worldHxyz = 2.*m; - + // world volume - G4Box* worldS = new G4Box("World", worldHxyz, worldHxyz, worldHxyz); + G4Box* worldS = new G4Box("World", worldHxyz, worldHxyz, worldHxyz); G4LogicalVolume* worldLV = new G4LogicalVolume(worldS, air, "World"); - + G4VPhysicalVolume* worldPV = new G4PVPlacement( 0, G4ThreeVector(), worldLV, "World", 0, false, 0, checkOverlaps); @@ -102,12 +102,12 @@ G4VPhysicalVolume* DetectorConstruction::Construct() // The box dimensions G4double boxHxy = 1.*m; G4double boxHz = 10.*cm; - + // box volume - G4Box* boxS = new G4Box("World", boxHxy, boxHxy, boxHz); + G4Box* boxS = new G4Box("World", boxHxy, boxHxy, boxHz); G4LogicalVolume* boxLV = new G4LogicalVolume(boxS, csi, "Box"); - + // The box position G4double posz = 0.*m; @@ -121,12 +121,12 @@ G4VPhysicalVolume* DetectorConstruction::Construct() // The screen dimensions G4double screenHxy = 1.999*m; G4double screenHz = 1.*mm; - + // Screen volume - G4Box* screenS = new G4Box("World", screenHxy, screenHxy, screenHz); - + G4Box* screenS = new G4Box("World", screenHxy, screenHxy, screenHz); + G4LogicalVolume* screenLV = new G4LogicalVolume(screenS, air, "Screen"); - + // The screen position posz += boxHz + screenHz; @@ -134,7 +134,7 @@ G4VPhysicalVolume* DetectorConstruction::Construct() 0, G4ThreeVector(0, 0, posz), screenLV, "Screen", worldLV, false, 0, checkOverlaps); - // + // // Visualization attributes // worldLV->SetVisAttributes(G4VisAttributes::GetInvisible()); @@ -156,14 +156,14 @@ void DetectorConstruction::ConstructSDandField() { // G4SDManager::GetSDMpointer()->SetVerboseLevel(1); - // + // // Sensitive detectors // auto screenSD = new ScreenSD("ScreenSD"); G4SDManager::GetSDMpointer()->AddNewDetector(screenSD); SetSensitiveDetector("Screen", screenSD); - // + // // Magnetic field // // Create global magnetic field messenger. @@ -172,7 +172,7 @@ void DetectorConstruction::ConstructSDandField() G4ThreeVector fieldValue; fMagFieldMessenger = new G4GlobalMagFieldMessenger(fieldValue); fMagFieldMessenger->SetVerboseLevel(1); - + // Register the field messenger for deleting G4AutoDelete::Register(fMagFieldMessenger); } diff --git a/examples/extended/physicslists/shared/src/PrimaryGeneratorAction.cc b/examples/extended/physicslists/shared/src/PrimaryGeneratorAction.cc index 9abe8833ee..7984ec245a 100644 --- a/examples/extended/physicslists/shared/src/PrimaryGeneratorAction.cc +++ b/examples/extended/physicslists/shared/src/PrimaryGeneratorAction.cc @@ -23,7 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// +// /// \file PrimaryGeneratorAction /// \brief Implementation of the PrimaryGeneratorAction class @@ -69,7 +69,7 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) // This function is called at the begining of event // In order to avoid dependence of PrimaryGeneratorAction - // on DetectorConstruction class we get world volume + // on DetectorConstruction class we get world volume // from G4LogicalVolumeStore // G4double worldZHalfLength = 0.; @@ -82,7 +82,7 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) } if ( worldBox ) { - worldZHalfLength = worldBox->GetZHalfLength(); + worldZHalfLength = worldBox->GetZHalfLength(); } else { G4ExceptionDescription msg; @@ -91,8 +91,8 @@ void PrimaryGeneratorAction::GeneratePrimaries(G4Event* anEvent) msg << "The gun will be place in the center."; G4Exception("PrimaryGeneratorAction::GeneratePrimaries()", "MyCode0002", JustWarning, msg); - } - + } + // Set gun position fParticleGun ->SetParticlePosition(G4ThreeVector(0., 0., -worldZHalfLength)); diff --git a/examples/extended/physicslists/shared/src/RunAction.cc b/examples/extended/physicslists/shared/src/RunAction.cc index 4f6b7ad267..69f145f35c 100644 --- a/examples/extended/physicslists/shared/src/RunAction.cc +++ b/examples/extended/physicslists/shared/src/RunAction.cc @@ -40,7 +40,7 @@ RunAction::RunAction(const G4String& fileName) : G4UserRunAction(), fFileName(fileName) -{ +{ // Create analysis manager // The choice of analysis technology is done via selectin of a namespace // in Analysis.hh @@ -59,7 +59,7 @@ RunAction::RunAction(const G4String& fileName) analysisManager->CreateNtupleIColumn("ID"); // column id = 0 analysisManager->CreateNtupleIColumn("PDG"); // column id = 1 analysisManager->CreateNtupleDColumn("Ekin"); // column id = 2 - analysisManager->CreateNtupleDColumn("Xpos"); // column id = 3 + analysisManager->CreateNtupleDColumn("Xpos"); // column id = 3 analysisManager->CreateNtupleDColumn("Ypos"); // column id = 4 analysisManager->CreateNtupleDColumn("time"); // column id = 5 analysisManager->FinishNtuple(); @@ -69,13 +69,13 @@ RunAction::RunAction(const G4String& fileName) RunAction::~RunAction() { - delete G4AnalysisManager::Instance(); + delete G4AnalysisManager::Instance(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void RunAction::BeginOfRunAction(const G4Run* /*run*/) -{ +{ // Get analysis manager auto analysisManager = G4AnalysisManager::Instance(); diff --git a/examples/extended/physicslists/shared/src/ScreenSD.cc b/examples/extended/physicslists/shared/src/ScreenSD.cc index fcecd53dda..492d80ae7c 100644 --- a/examples/extended/physicslists/shared/src/ScreenSD.cc +++ b/examples/extended/physicslists/shared/src/ScreenSD.cc @@ -76,16 +76,16 @@ G4bool ScreenSD::ProcessHits(G4Step* step, G4TouchableHistory* /*history*/) // Obtain local coordinates: const G4VTouchable* touchable = preStepPoint->GetTouchable(); G4ThreeVector globalPosition = preStepPoint->GetPosition(); - G4ThreeVector localPosition + G4ThreeVector localPosition = touchable->GetHistory()->GetTopTransform().TransformPoint(globalPosition); // // Example for obtaining the local direction: // G4ThreeVector globalDirection = preStepPoint->GetMomentumDirection(); - // G4ThreeVector localDirection + // G4ThreeVector localDirection // = touchable->GetHistory()->GetTopTransform().TransformAxis(localDirection); // Time G4double time = preStepPoint->GetGlobalTime(); - + // Store hit in the ntuple G4AnalysisManager* analysisManager = G4AnalysisManager::Instance(); analysisManager->FillNtupleIColumn(0, ID); @@ -94,7 +94,7 @@ G4bool ScreenSD::ProcessHits(G4Step* step, G4TouchableHistory* /*history*/) analysisManager->FillNtupleDColumn(3, localPosition.x()/cm); analysisManager->FillNtupleDColumn(4, localPosition.y()/cm); analysisManager->FillNtupleDColumn(5, time/ns); - analysisManager->AddNtupleRow(); + analysisManager->AddNtupleRow(); return true; } diff --git a/examples/extended/polarisation/CMakeLists.txt b/examples/extended/polarisation/CMakeLists.txt index 4c4dc27b66..a0eda82fd9 100644 --- a/examples/extended/polarisation/CMakeLists.txt +++ b/examples/extended/polarisation/CMakeLists.txt @@ -1,5 +1,8 @@ #---Adding all polarisation examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(Pol01) diff --git a/examples/extended/polarisation/History b/examples/extended/polarisation/History index acc7b381de..76bc5a2697 100644 --- a/examples/extended/polarisation/History +++ b/examples/extended/polarisation/History @@ -15,11 +15,20 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 10th, 2020 B. Morgan (exPolarisation-V10-06-01) +- Enforce use of Serial RunManager for serial-only examples. + +November 10th, 2020 B. Morgan (exPolarisation-V10-06-00) +- Migrate to G4RunManagerFactory. + +November 3rd, 2020 B. Morgan (exPolarisation-V10-06-00) +- Support same CMake version range as core Geant4 + May 13th, 2015 Ivana Hrivnacova (exPolarisation-V10-01-00) - Fixed README file Apr 1st, 2013 Andrea Dotti (exPolarisation-V09-06-00) -- New interfaces for G4MT +- New interfaces for G4MT Nov 23rd, 2012 Ivana Hrivnacova (exPolarisation-V09-05-02) - Updated documentation: @@ -34,7 +43,7 @@ Sep 29th, 2012 Ivana Hrivnacova (exPolarisation-V09-05-01) Sep 24th, 2012 Ivana Hrivnacova (exPolarisation-V09-05-00) - Updated CMakeLists.txt files: - adding visualization, optional external package (AIDA), copying macros, - install target and comment lines + adding visualization, optional external package (AIDA), copying macros, + install target and comment lines - Added explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh -- Replaced tabulators with space characters +- Replaced tabulators with space characters diff --git a/examples/extended/polarisation/Pol01/CMakeLists.txt b/examples/extended/polarisation/Pol01/CMakeLists.txt index 5c51e0c17b..ebc7062d4d 100644 --- a/examples/extended/polarisation/Pol01/CMakeLists.txt +++ b/examples/extended/polarisation/Pol01/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(Pol01) #---------------------------------------------------------------------------- diff --git a/examples/extended/polarisation/Pol01/History b/examples/extended/polarisation/Pol01/History index edb61d9ac1..9ca1dbe9af 100644 --- a/examples/extended/polarisation/Pol01/History +++ b/examples/extended/polarisation/Pol01/History @@ -15,6 +15,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +13-11-20 B. Morgan (expol01-V10-06-01) +- Enforce use of Serial RunManager. + +10-11-20 B.Morgan (expol01-V10-06-00) +- Migrate to G4RunManagerFactory. + 17-05-18 J.Allison (expol01-V10-04-00) - Add #include "G4Types.hh" - Remove G4UI_USE and G4VIS_USE. @@ -37,8 +43,8 @@ track of all tags. - RunAction - fixed compillation at gcc 4.1 11-11-14 V.Ivanchenko (expol01-V10-00-01) -- Several updates for the unification of the example: use standard - physics builder from physics_list sub-package; removed local +- Several updates for the unification of the example: use standard + physics builder from physics_list sub-package; removed local SetCuts() method; removed AIDA histograms 16-10-14 I.Hrivnacova (expol01-V10-00-00) @@ -60,10 +66,10 @@ track of all tags. - Introduced G4UIExecutive. 06-06-10 J.Perl (expol01-V09-03-01) -- Remove unused variable in EventAction +- Remove unused variable in EventAction 04-06-10 J.Perl (expol01-V09-03-00) -- Updated vis usage +- Updated vis usage 20-11-09 V.Ivanchenko (expol01-V09-02-00) - Update msc processes according to 9.3 scheme @@ -89,7 +95,7 @@ track of all tags. 02-10-06 V.Ivanchenko (expol01-V08-01-00) - first tag - + 11-08-06 Andreas Schaelicke - created from TestEm15 diff --git a/examples/extended/polarisation/Pol01/Pol01.cc b/examples/extended/polarisation/Pol01/Pol01.cc index 528d1e2f80..a2e6a7733f 100644 --- a/examples/extended/polarisation/Pol01/Pol01.cc +++ b/examples/extended/polarisation/Pol01/Pol01.cc @@ -26,13 +26,13 @@ /// \file polarisation/Pol01/Pol01.cc /// \brief Main program of the polarisation/Pol01 example // -// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #include "G4Types.hh" -#include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "Randomize.hh" @@ -48,9 +48,9 @@ #include "G4UIExecutive.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - + int main(int argc,char** argv) { - + // Instantiate G4UIExecutive if interactive mode G4UIExecutive* ui = nullptr; if ( argc == 1 ) { @@ -60,9 +60,9 @@ int main(int argc,char** argv) { //choose the Random engine // CLHEP::HepRandom::setTheEngine(new CLHEP::RanecuEngine); CLHEP::HepRandom::setTheEngine(new CLHEP::RanluxEngine()); - - // Construct the default run manager - G4RunManager * runManager = new G4RunManager; + + // Construct a serial run manager + auto* runManager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); // set mandatory initialization classes DetectorConstruction* det; @@ -75,31 +75,31 @@ int main(int argc,char** argv) { visManager->Initialize(); // set user action classes - RunAction* run; - runManager->SetUserAction(run = new RunAction(det,prim)); + RunAction* run; + runManager->SetUserAction(run = new RunAction(det,prim)); runManager->SetUserAction(new EventAction(run)); runManager->SetUserAction(new SteppingAction(det,prim,run)); - - // get the pointer to the User Interface manager - G4UImanager* UImanager = G4UImanager::GetUIpointer(); + + // get the pointer to the User Interface manager + G4UImanager* UImanager = G4UImanager::GetUIpointer(); if (ui) // Define UI terminal for interactive mode - { + { ui->SessionStart(); delete ui; } else // Batch mode - { + { G4String command = "/control/execute "; G4String fileName = argv[1]; UImanager->ApplyCommand(command+fileName); } - // job termination + // job termination delete visManager; delete runManager; return 0; } -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/examples/extended/polarisation/Pol01/pol01.out b/examples/extended/polarisation/Pol01/pol01.out index f871c2fa47..2d377dae72 100644 --- a/examples/extended/polarisation/Pol01/pol01.out +++ b/examples/extended/polarisation/Pol01/pol01.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +26,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -63,7 +65,8 @@ End of Run User Vis Actions: none Some /vis commands (optionally) take a string to specify colour. "/vis/list" to see available colours. -... open Root analysis file : pol01.root - done +... create file : pol01.root - done +... open analysis file : pol01.root - done /run/verbose 2 # /testem/det/setMat G4_Fe @@ -117,9 +120,9 @@ pol-conv: for gamma SubType=14 BuildTable=1 polConv : Emin= 0 eV Emax= 100 TeV ModifiedTsai msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 pol-eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -135,9 +138,9 @@ pol-eBrem: for e- SubType=3 PolBrem : Emin= 0 eV Emax= 100 TeV ModifiedTsai msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 pol-eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -181,7 +184,7 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_Fe Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 6.28725 keV e- 235.568 keV e+ 227.81 keV proton 10 keV + Energy thresholds : gamma 6.28375 keV e- 235.116 keV e+ 228.88 keV proton 10 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -201,41 +204,44 @@ See commands in /vis/modeling/trajectories/ for other options. Run terminated. Run Summary Number of events processed : 10000 - User=0.130000s Real=0.133702s Sys=0.000000s + User=0.070000s Real=0.069545s Sys=0.000000s The run consists of 10000 gamma of 10 MeV through 1.75 mm of G4_Fe (density: 7.874 g/cm3 ) Process calls frequency ---> - Transportation = 31156 - pol-compt = 287 - pol-eBrem = 331 - msc = 1720 - pol-conv = 222 - pol-eIoni = 677 - pol-annihil = 66 - pol-phot = 166 + Transportation = 31150 + pol-compt = 288 + pol-eBrem = 336 + msc = 1703 + pol-conv = 208 + pol-eIoni = 680 + pol-annihil = 64 + pol-phot = 174 Gamma: -Mean Number per Event :1.0066 -Mean Energy :9.5835 MeV +- 1.8873 MeV -Mean Polarization :-0.9656 +- 0.17926 +Mean Number per Event :1.0075 +Mean Energy :9.5879 MeV +- 1.873 MeV +Mean Polarization :-0.96606 +- 0.17867 Electron: -Mean Number per Event :0.0353 -Mean Energy :5.1761 MeV +- 2.628 MeV -Mean Polarization :-0.70068 +- 0.31751 +Mean Number per Event :0.0351 +Mean Energy :5.0764 MeV +- 2.6308 MeV +Mean Polarization :-0.70158 +- 0.30574 Positron: -Mean Number per Event :0.0159 -Mean Energy :4.4843 MeV +- 2.0721 MeV -Mean Polarization :-0.65478 +- 0.30832 -... write Root file : pol01.root - done -... close Root file : pol01.root - done +Mean Number per Event :0.0149 +Mean Energy :4.2903 MeV +- 2.0442 MeV +Mean Polarization :-0.64106 +- 0.30908 +... write file : pol01.root - done +... close file : pol01.root - done --------- Ranlux engine status --------- Initial seed = 9876 - float_seed_table[] = 0.346031 0.0859698 0.387714 0.673094 0.510114 0.676633 0.621628 0.0509967 0.274995 0.641216 0.225294 0.281374 0.0779726 0.578032 0.769554 0.0366569 0.467441 0.252705 0.206082 0.62185 0.0818613 0.321281 0.408123 0.638862 - i_lag = 3, j_lag = 13 - carry = 0, count24 = 12 + float_seed_table[] = 0.833699 0.78332 0.0652168 0.500713 0.232817 0.0598344 0.0871152 0.627404 0.0401857 0.252922 0.831884 0.0136842 0.406118 0.820797 0.13577 0.449864 0.770882 0.364361 0.729599 0.943753 0.876379 0.253382 0.754363 0.37449 + i_lag = 7, j_lag = 17 + carry = 0, count24 = 2 luxury = 3 nskip = 199 ---------------------------------------- +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/radioactivedecay/Activation/.README.txt b/examples/extended/radioactivedecay/Activation/.README.txt index 90e988376c..c41c4bbebb 100644 --- a/examples/extended/radioactivedecay/Activation/.README.txt +++ b/examples/extended/radioactivedecay/Activation/.README.txt @@ -52,11 +52,7 @@ to be accurate (see param->SetStepFunction(1., 1*mm)). Several hadronic physics options are controlled by environment variables. - To trigger them, the envHadronic.csh script has been added in this example. - One must select the options wished, and do -\verbatim -source envHadronic.csh (or sh) -\endverbatim + To select them, see Activation.cc \section Activation_s3 AN EVENT : THE PRIMARY GENERATOR @@ -179,5 +175,12 @@ Idle> type your commands .... Idle> exit \endverbatim - + + Macros provided in this example: + - Bi209.mac: neutron (25 meV) on 10 cm of Bi209 + - Co60.mac: neutron (25 meV) on 1 cm of Cobalt. + + Macros to be run interactively: + - debug.mac: neutron (25 meV) on Cobalt + - vis.mac: To activate visualization */ diff --git a/examples/extended/radioactivedecay/Activation/Activation.cc b/examples/extended/radioactivedecay/Activation/Activation.cc index d1f70fb448..61c412a8ad 100644 --- a/examples/extended/radioactivedecay/Activation/Activation.cc +++ b/examples/extended/radioactivedecay/Activation/Activation.cc @@ -50,6 +50,8 @@ #include "G4UIExecutive.hh" #include "G4VisExecutive.hh" +#include "G4ParticleHPManager.hh" + //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... int main(int argc,char** argv) { @@ -82,6 +84,22 @@ int main(int argc,char** argv) { runManager->SetUserInitialization(new ActionInitialization(det)); + // Replaced HP environmental variables with C++ calls + G4ParticleHPManager::GetInstance()->SetSkipMissingIsotopes( false ); + G4ParticleHPManager::GetInstance()->SetDoNotAdjustFinalState( false ); + G4ParticleHPManager::GetInstance()->SetUseOnlyPhotoEvaporation( false ); + G4ParticleHPManager::GetInstance()->SetNeglectDoppler( false ); + G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( false ); + G4ParticleHPManager::GetInstance()->SetUseWendtFissionModel( false ); + G4ParticleHPManager::GetInstance()->SetUseNRESP71Model( false ); + //G4ParticleHPManager::GetInstance()->SetSkipMissingIsotopes( true ); + //G4ParticleHPManager::GetInstance()->SetDoNotAdjustFinalState( true ); + //G4ParticleHPManager::GetInstance()->SetUseOnlyPhotoEvaporation( true ); + //G4ParticleHPManager::GetInstance()->SetNeglectDoppler( true ); + //G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( true ); + //G4ParticleHPManager::GetInstance()->SetUseWendtFissionModel( true ); + //G4ParticleHPManager::GetInstance()->SetUseNRESP71Model( true ); + //initialize visualization G4VisManager* visManager = nullptr; diff --git a/examples/extended/radioactivedecay/Activation/Activation.in b/examples/extended/radioactivedecay/Activation/Activation.in index 5c3fcc5166..3ba10b7417 100644 --- a/examples/extended/radioactivedecay/Activation/Activation.in +++ b/examples/extended/radioactivedecay/Activation/Activation.in @@ -10,7 +10,6 @@ ###/testhadr/det/setSizeYZ 1 cm # /run/initialize -/process/list # /gun/particle neutron /gun/energy 25 meV diff --git a/examples/extended/radioactivedecay/Activation/Activation.out b/examples/extended/radioactivedecay/Activation/Activation.out index 5d3b981d68..8039162c94 100644 --- a/examples/extended/radioactivedecay/Activation/Activation.out +++ b/examples/extended/radioactivedecay/Activation/Activation.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -31,7 +31,7 @@ ElmMassFraction: 100.00 % ElmAbundance 100.00 % - FTFP_BERT_HP : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT_HP : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -43,56 +43,6 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic/CrossSection/6_nat_Carbon -/process/list - Transportation, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, hadElastic, hadElastic, hadElastic - hadElastic, neutronInelastic, nCapture, nFission - protonInelastic, pi+Inelastic, pi-Inelastic, kaon+Inelastic - kaon-Inelastic, kaon0LInelastic, kaon0SInelastic, lambdaInelastic -anti-lambdaInelastic, sigma-Inelastic,anti_sigma-Inelastic, sigma+Inelastic -anti_sigma+Inelastic, xi-Inelastic, anti_xi-Inelastic, xi0Inelastic - anti_xi0Inelastic, omega-Inelastic,anti_omega-Inelastic,anti_protonInelastic -anti_neutronInelastic,anti_deuteronInelastic,anti_tritonInelastic, anti_He3Inelastic -anti_alphaInelastic, ionElastic, dInelastic, tInelastic - He3Inelastic, alphaInelastic, ionInelastic,hFritiofCaptureAtRest -hBertiniCaptureAtRest,muMinusCaptureAtRest, photonNuclear, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - hIoni, msc, hIoni, msc - ionIoni, nuclearStopping, msc, ionIoni - nuclearStopping, msc, ionIoni, nuclearStopping - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, eIoni, eBrem, annihil - msc, eIoni, eBrem, phot - compt, conv, msc, hIoni - msc, hIoni, msc, hIoni - msc, muIoni, muBrems, muPairProd - msc, muIoni, muBrems, muPairProd - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, msc, hIoni - msc, hIoni, Decay,RadioactiveDecayBase - # /gun/particle neutron /gun/energy 25 meV @@ -111,19 +61,54 @@ Max 2J for sampling of angular correlations 10 Atomic de-excitation enabled 1 Auger electron emission enabled 1 Auger cascade enabled 1 -Check EM cuts disabled for atomic de-excitation 0 +Check EM cuts disabled for atomic de-excitation 1 Use Bearden atomic level energies 0 ====================================================================== NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon NeutronHP: /Inelastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic/CrossSection/6_nat_Carbon NeutronHP: /Elastic file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Elastic/CrossSection/6_nat_Carbon + +======================================================= +====== ParticleHP Physics Parameters ======== +======================================================= + UseOnlyPhotoEvaporation ? 0 + SkipMissingIsotopes ? 0 + NeglectDoppler ? 0 + DoNotAdjustFinalState ? 0 + ProduceFissionFragments ? 0 + UseWendtFissionModel ? 0 + UseNRESP71Model ? 0 +======================================================= + @@@ G4ParticleHPInelastic instantiated for particle neutron data directory variable is G4NEUTRONHPDATA pointing to /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Inelastic NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use /cvmfs/geant4.cern.ch/share/data/G4NDL4.6/Capture/CrossSection/6_nat_Carbon ==================================================================== HADRONIC PROCESSES SUMMARY (verbose level 1) +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -204,6 +189,19 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -300,8 +298,8 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 meV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 meV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV --------------------------------------------------- @@ -383,8 +381,8 @@ NeutronHP: /Capture file for Z = 6, A = 12 is not found and NeutronHP will use / Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 meV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 meV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -425,7 +423,6 @@ Store e- internal conversion data 1 Electron internal conversion ID 0 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -465,36 +462,36 @@ Index : 1 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1000 - User=6.020000s Real=6.065860s Sys=0.000000s + User=0.210000s Real=0.223482s Sys=0.000000s The run is 1000 neutron of 25 meV through 1 cm of G4_Co (density: 8.9 g/cm3 ) Process calls frequency : - RadioactiveDecayBase= 3931 Transportation= 11106 annihil= 25 - compt= 1291 conv= 29 eIoni= 2570 - hadElastic= 142 ionIoni= 2038 msc= 581 - nCapture= 948 phot= 313 + RadioactiveDecayBase= 3955 Transportation= 11124 annihil= 19 + compt= 1246 conv= 26 eIoni= 4507 + hadElastic= 150 ionIoni= 2054 msc= 695 + nCapture= 952 phot= 438 List of generated particles: - Co59: 142 Emean = 38.818 meV ( 0.25571 meV --> 199.86 meV) stable - Co60: 948 Emean = 258.87 eV ( 213.41 meV --> 516.37 eV ) mean life = 7.6098 y - Ni60: 948 Emean = 15.907 eV ( 15.907 eV --> 15.907 eV ) stable - Ni60[1332.514]: 948 Emean = 12.369 eV ( 12.331 eV --> 31.093 eV ) mean life = 0 ps - Ni60[2505.753]: 945 Emean = 1.5001 eV ( 24.411 meV --> 3.5949 eV ) mean life = 0 ps - anti_nu_e: 948 Emean = 221.28 keV ( 37.028 keV --> 844.87 keV) stable - e+: 29 Emean = 2.7013 MeV ( 286.87 keV --> 6.0593 MeV) stable - e-: 2581 Emean = 308.29 keV ( 40.664 eV --> 7.2245 MeV) stable - gamma: 4354 Emean = 1.7542 MeV ( 1.0951 keV --> 7.4919 MeV) stable + Co59: 150 Emean = 40.858 meV ( 0.25571 meV --> 199.86 meV) stable + Co60: 952 Emean = 255.39 eV ( 74.628 meV --> 520.2 eV ) mean life = 7.6098 y + Ni60: 952 Emean = 15.907 eV ( 15.907 eV --> 15.907 eV ) stable + Ni60[1332.514]: 952 Emean = 12.368 eV ( 12.331 eV --> 24.808 eV ) mean life = 0 ps + Ni60[2505.753]: 949 Emean = 1.458 eV ( 18.554 meV --> 3.6944 eV ) mean life = 0 ps + anti_nu_e: 952 Emean = 224.29 keV ( 21.578 keV --> 1.4516 MeV) stable + e+: 26 Emean = 2.7006 MeV ( 277.83 keV --> 6.4147 MeV) stable + e-: 4539 Emean = 186.45 keV ( 1.6672 eV --> 7.2245 MeV) stable + gamma: 4462 Emean = 1.7004 MeV ( 682.6 eV --> 7.4919 MeV) stable - Mean energy deposit per event = 794.13 keV rms = 1.2575 MeV - Mean energy flow per event = 7.1109 MeV rms = 2.9259 MeV + Mean energy deposit per event = 789.1 keV rms = 1.2313 MeV + Mean energy flow per event = 7.0722 MeV rms = 2.8578 MeV List of particles emerging from the target : - anti_nu_e: 948 Emean = 221.28 keV ( 37.028 keV --> 844.87 keV) Eflow/event = 209.78 keV - e+: 4 Emean = 2.8252 MeV ( 2.3239 MeV --> 3.6016 MeV) Eflow/event = 11.301 keV - e-: 33 Emean = 1.9291 MeV ( 202.55 keV --> 6.878 MeV) Eflow/event = 63.661 keV - gamma: 4012 Emean = 1.7014 MeV ( 46.436 keV --> 7.4919 MeV) Eflow/event = 6.8262 MeV - neutron: 52 Emean = 26.21 meV ( 9.1504 meV --> 46.671 meV) Eflow/event = 1.3629 meV + anti_nu_e: 952 Emean = 224.29 keV ( 21.578 keV --> 1.4516 MeV) Eflow/event = 213.52 keV + e+: 7 Emean = 3.2555 MeV ( 976.04 keV --> 6.0613 MeV) Eflow/event = 22.789 keV + e-: 49 Emean = 2.0359 MeV ( 69.641 keV --> 6.6919 MeV) Eflow/event = 99.76 keV + gamma: 3998 Emean = 1.6849 MeV ( 58.019 keV --> 7.4919 MeV) Eflow/event = 6.7362 MeV + neutron: 48 Emean = 24.729 meV ( 9.1396 meV --> 38.264 meV) Eflow/event = 1.187 meV histo Id for populations : Co59 id = 26 @@ -504,11 +501,11 @@ Run Summary --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 1360211405, 961669395 + Current couple of seeds = 1145399635, 1983120842 ---------------------------------------- G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 11 of which, static: 0 -Dynamic pools deleted: 11 / Total memory freed: 0.024 MB +Dynamic pools deleted: 11 / Total memory freed: 0.027 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/radioactivedecay/Activation/Bi209.mac b/examples/extended/radioactivedecay/Activation/Bi209.mac index 1d9f334ff5..cf32b53389 100644 --- a/examples/extended/radioactivedecay/Activation/Bi209.mac +++ b/examples/extended/radioactivedecay/Activation/Bi209.mac @@ -2,7 +2,7 @@ # Macro file for "Activation.cc" # /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testhadr/det/setIsotopeMat Bi209 83 209 9.78 g/cm3 /testhadr/det/setThickness 10 cm @@ -10,22 +10,19 @@ # /run/initialize # -/process/list -# /gun/particle neutron /gun/energy 25 meV /testhadr/gun/beamSize 25 mm /testhadr/gun/beamTime 3 year # /analysis/setFileName Bi209 -/analysis/h1/set 4 100 0 6 MeV #gamma -/analysis/h1/set 14 100 0 4 year #gamma -/analysis/h1/set 24 100 0 4 year -/analysis/h1/set 25 100 0 4 year -/analysis/h1/set 26 100 0 4 year -/analysis/h1/set 27 100 0 4 year -/analysis/h1/set 28 100 0 4 year +/analysis/h1/set 4 100 0 6 MeV #gamma +/analysis/h1/set 14 100 0 4 year #gamma +/analysis/h1/set 24 100 0 4 year #(Bi209) +/analysis/h1/set 25 100 0 4 year #(Bi210) +/analysis/h1/set 26 100 0 4 year #(Po210) +/analysis/h1/set 27 100 0 4 year #(alpha) +/analysis/h1/set 28 100 0 4 year #(Pb206) # /run/printProgress 100000 -# /run/beamOn 1000000 diff --git a/examples/extended/radioactivedecay/Activation/CMakeLists.txt b/examples/extended/radioactivedecay/Activation/CMakeLists.txt index 5e4e6f6cfe..e9c73ff78b 100644 --- a/examples/extended/radioactivedecay/Activation/CMakeLists.txt +++ b/examples/extended/radioactivedecay/Activation/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(Activation) #---------------------------------------------------------------------------- diff --git a/examples/extended/radioactivedecay/Activation/Co60.mac b/examples/extended/radioactivedecay/Activation/Co60.mac index 7afdb60cd1..9c30f90340 100644 --- a/examples/extended/radioactivedecay/Activation/Co60.mac +++ b/examples/extended/radioactivedecay/Activation/Co60.mac @@ -2,7 +2,7 @@ # Macro file for "Activation.cc" # /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /testhadr/det/setMat G4_Co /testhadr/det/setThickness 1 cm @@ -18,12 +18,11 @@ /testhadr/gun/beamTime 10 year # /analysis/setFileName Co60 -/analysis/h1/set 4 100 0 8 MeV #gamma -/analysis/h1/set 14 100 0 20 year #gamma -/analysis/h1/set 24 100 0 20 year -/analysis/h1/set 25 100 0 20 year -/analysis/h1/set 26 100 0 20 year +/analysis/h1/set 4 100 0 8 MeV #gamma +/analysis/h1/set 14 100 0 20 year #gamma +/analysis/h1/set 24 100 0 20 year #(Co60) +/analysis/h1/set 25 100 0 20 year #(Ni60) +/analysis/h1/set 26 100 0 20 year #(Co59) # /run/printProgress 10000 -# /run/beamOn 100000 diff --git a/examples/extended/radioactivedecay/Activation/History b/examples/extended/radioactivedecay/Activation/History index b6ce55c8e2..f7025b4e53 100644 --- a/examples/extended/radioactivedecay/Activation/History +++ b/examples/extended/radioactivedecay/Activation/History @@ -12,6 +12,14 @@ track of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- + +26-10-20 mma (activation-V10-06-03) +- README : add macros description + +05-08-20 Alberto Ribon (activation-V10-06-02) +- envHadronic.(c)sh : removed deprecated HP environmental variables + and replaced them with corresponding C++ calls in the main. + (These two shell-script files will be removed in G4 11.0.) 21-06-20 mma (activation-V10-06-01) - Run.cc, line 188 : correct a protection on maximum number of histos diff --git a/examples/extended/radioactivedecay/Activation/README b/examples/extended/radioactivedecay/Activation/README index b08a013abb..6ce55ff335 100644 --- a/examples/extended/radioactivedecay/Activation/README +++ b/examples/extended/radioactivedecay/Activation/README @@ -53,9 +53,7 @@ to be accurate (see param->SetStepFunction(1., 1*mm)). Several hadronic physics options are controlled by environment variables. - To trigger them, the envHadronic.csh script has been added in this example. - One must select the options wished, and do - source envHadronic.[c]sh + To select them, see Activation.cc 3- AN EVENT : THE PRIMARY GENERATOR @@ -158,3 +156,11 @@ Idle> type your commands .... Idle> exit + + Macros provided in this example: + - Bi209.mac: neutron (25 meV) on 10 cm of Bi209 + - Co60.mac: neutron (25 meV) on 1 cm of Cobalt. + + Macros to be run interactively: + - debug.mac: neutron (25 meV) on Cobalt + - vis.mac: To activate visualization diff --git a/examples/extended/radioactivedecay/Activation/debug.mac b/examples/extended/radioactivedecay/Activation/debug.mac index e557e6c8ac..7b3e290906 100644 --- a/examples/extended/radioactivedecay/Activation/debug.mac +++ b/examples/extended/radioactivedecay/Activation/debug.mac @@ -9,8 +9,6 @@ # /run/initialize # -/process/list -# /gun/particle neutron /gun/energy 25 meV # diff --git a/examples/extended/radioactivedecay/Activation/envHadronic.csh b/examples/extended/radioactivedecay/Activation/envHadronic.csh old mode 100755 new mode 100644 index 70075091c0..f5bd45f799 --- a/examples/extended/radioactivedecay/Activation/envHadronic.csh +++ b/examples/extended/radioactivedecay/Activation/envHadronic.csh @@ -1,3 +1,4 @@ +# === FILE TO BE REMOVED IN G4 11.0 === # # for neutronHP and particleHP # @@ -10,19 +11,10 @@ unsetenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS unsetenv G4PHP_DO_NOT_ADJUST_FINAL_STATE unsetenv G4PHP_NELECT_DOPPLER -#### setenv G4NEUTRONHP_SKIP_MISSING_ISOTOPES 1 -#### setenv G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE 1 -#### setenv G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION 1 -#### setenv G4NEUTRONHP_NELECT_DOPPLER 1 -#### setenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS 1 -# -#### setenv G4PHP_DO_NOT_ADJUST_FINAL_STATE 1 -#### setenv G4PHP_NELECT_DOPPLER 1 # # for Bertini cascade # unsetenv G4CASCADE_USE_PRECOMPOUND -#### setenv G4CASCADE_USE_PRECOMPOUND 1 env |grep G4NEUTRONHP env |grep G4PHP diff --git a/examples/extended/radioactivedecay/Activation/envHadronic.sh b/examples/extended/radioactivedecay/Activation/envHadronic.sh old mode 100755 new mode 100644 index 3bc63c27fc..19c87ea1ca --- a/examples/extended/radioactivedecay/Activation/envHadronic.sh +++ b/examples/extended/radioactivedecay/Activation/envHadronic.sh @@ -1,3 +1,4 @@ +# === FILE TO BE REMOVED IN G4 11.0 === # # for neutronHP and particleHP # @@ -10,34 +11,11 @@ unset G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS unset G4PHP_DO_NOT_ADJUST_FINAL_STATE unset G4PHP_NELECT_DOPPLER -#### G4NEUTRONHP_SKIP_MISSING_ISOTOPES=1 -#### export G4NEUTRONHP_SKIP_MISSING_ISOTOPES - -#### G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE=1 -#### export G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE - -#### G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION=1 -#### export G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION - -#### G4NEUTRONHP_NELECT_DOPPLER=1 -#### export G4NEUTRONHP_NELECT_DOPPLER - -#### G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS=1 -#### export G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS - -#### G4PHP_DO_NOT_ADJUST_FINAL_STATE=1 -#### export G4PHP_DO_NOT_ADJUST_FINAL_STATE - -#### G4PHP_NELECT_DOPPLER=1 -#### export G4PHP_NELECT_DOPPLER # # for Bertini cascade # unset G4CASCADE_USE_PRECOMPOUND -#### G4CASCADE_USE_PRECOMPOUND=1 -#### export G4CASCADE_USE_PRECOMPOUND - env |grep G4NEUTRONHP env |grep G4PHP env |grep G4CASCADE diff --git a/examples/extended/radioactivedecay/Activation/plot1.C b/examples/extended/radioactivedecay/Activation/plot1.C index 53caee8018..01e1721034 100644 --- a/examples/extended/radioactivedecay/Activation/plot1.C +++ b/examples/extended/radioactivedecay/Activation/plot1.C @@ -5,7 +5,7 @@ // TCanvas* c1 = new TCanvas("c1", " "); - c1->SetLogy(0); + c1->SetLogy(1); c1->cd(); c1->Update(); diff --git a/examples/extended/radioactivedecay/CMakeLists.txt b/examples/extended/radioactivedecay/CMakeLists.txt index c940bfba0c..f842cc8c13 100644 --- a/examples/extended/radioactivedecay/CMakeLists.txt +++ b/examples/extended/radioactivedecay/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all radioactivedecay examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(rdecay01) add_subdirectory(rdecay02) diff --git a/examples/extended/radioactivedecay/History b/examples/extended/radioactivedecay/History index 2dad927b31..1cad7770f1 100644 --- a/examples/extended/radioactivedecay/History +++ b/examples/extended/radioactivedecay/History @@ -15,7 +15,10 @@ committal in the CVS repository ! ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- - + +November 03, 2020 B. Morgan - exRadioactivedecay-V10-06-00 +- Support same CMake version range as core Geant4 + April 14, 2017 M. Maire - Add example Activation @@ -32,14 +35,14 @@ November 25, 2012 I. Hrivnacova - exRadioactivedecay-V09-05-01 September 25, 2012 I. Hrivnacova - exRadioactivedecay-V09-05-00 - Updated CMakeLists.txt files: - adding visualization, optional external packages (rdecay02 ), copying macros, + adding visualization, optional external packages (rdecay02 ), copying macros, install target and comment lines - Added explicit includes of G4SystemOfUnits.hh and G4PhysicalConstants.hh - Replaced tabulators with space characters November 4, 2011 L. Desorgher - exradioactive-V09-04-00 - Create this History file -- Add macro files and user data files in rdecay02 to illustrate the possibility for a user to define its own +- Add macro files and user data files in rdecay02 to illustrate the possibility for a user to define its own radioactive decay data and evaporation data. An example No252.g4mac shows also how to treat nuclei with Z>100. - + diff --git a/examples/extended/radioactivedecay/rdecay01/.README.txt b/examples/extended/radioactivedecay/rdecay01/.README.txt index 0f4565d6a6..886267423a 100644 --- a/examples/extended/radioactivedecay/rdecay01/.README.txt +++ b/examples/extended/radioactivedecay/rdecay01/.README.txt @@ -103,6 +103,27 @@ Idle> /run/beamOn 1 Idle> exit \endverbatim + Macros provided in this example: + - Co60.mac: Co60 + - Gd158.mac: Gd158 excited state + - No158.mac: read user data file + - Po212.mac: Po212 excited state + - Ra228.mac: Ra228 excited state + - alpha.mac: Po212 alpha decay + - atomicDeexcitation.mac: plot Auger cascade + - fullChain.mac: U238 + - neutron.mac: Li10 neutron emission + - proton.mac: Co53 proton emission + - singleDecay.mac: Ne10 + - timeWindow.mac: print activity within a given time window + - timeWindowBiased.mac: force decay within a given time window + + Macros to be run interactively: + - Cf238.mac: read user data file + - debug.mac: Pb210 + - electronicCapture.mac: Fe55 electronic capture + - vis.mac: To activate visualization + \section rdecay01_s9 Histograms rdecay01 produces several 1D histograms which are saved as diff --git a/examples/extended/radioactivedecay/rdecay01/CMakeLists.txt b/examples/extended/radioactivedecay/rdecay01/CMakeLists.txt index e0e52f10e1..14268d05ef 100644 --- a/examples/extended/radioactivedecay/rdecay01/CMakeLists.txt +++ b/examples/extended/radioactivedecay/rdecay01/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(rdecay01) #---------------------------------------------------------------------------- @@ -42,7 +45,7 @@ target_link_libraries(rdecay01 ${Geant4_LIBRARIES} ) set(rdecay01_SCRIPTS alpha.mac Cf238.mac Co60.mac debug.mac Gd158.mac electronicCapture.mac fullChain.mac neutron.mac proton.mac No252.mac Po212.mac Ra228.mac rdecay01.in singleDecay.mac timeWindow.mac - timeWindowBiased.mac timeWindowBiased.data vis.mac + timeWindowBiased.mac timeWindowBiased.data atomicDeexcitation.mac vis.mac ) foreach(_script ${rdecay01_SCRIPTS}) diff --git a/examples/extended/radioactivedecay/rdecay01/Cf238.mac b/examples/extended/radioactivedecay/rdecay01/Cf238.mac index 6786822b44..d570f98dc6 100644 --- a/examples/extended/radioactivedecay/rdecay01/Cf238.mac +++ b/examples/extended/radioactivedecay/rdecay01/Cf238.mac @@ -1,7 +1,10 @@ +# macro for rdecay01 +# # to read user's data file +# /control/cout/ignoreThreadsExcept 0 # -/grdm/setRadioactiveDecayFile 98 238 ../UserData/UserRadData_z98.a238 +/process/had/rdm/setRadioactiveDecayFile 98 238 ../UserData/UserRadData_z98.a238 # /gun/particle ion /gun/ion 98 238 diff --git a/examples/extended/radioactivedecay/rdecay01/Co60.mac b/examples/extended/radioactivedecay/rdecay01/Co60.mac index aa6ec56b03..68a3f43bb1 100644 --- a/examples/extended/radioactivedecay/rdecay01/Co60.mac +++ b/examples/extended/radioactivedecay/rdecay01/Co60.mac @@ -1,3 +1,6 @@ +# macro for rdecay01 +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 /run/verbose 1 # @@ -6,8 +9,6 @@ # /tracking/verbose 2 /run/beamOn 1 -# -/control/cout/ignoreThreadsExcept 0 /tracking/verbose 0 # /analysis/setFileName Co60 @@ -19,6 +20,5 @@ /analysis/h1/set 8 100 0. 100. year #time of life /analysis/h1/set 9 100 1. 3. MeV #EvisTot # -/run/printProgress 100000 -# +/run/printProgress 100000 /run/beamOn 1000000 diff --git a/examples/extended/radioactivedecay/rdecay01/Gd158.mac b/examples/extended/radioactivedecay/rdecay01/Gd158.mac index 1c02d1e781..2a3e440c38 100644 --- a/examples/extended/radioactivedecay/rdecay01/Gd158.mac +++ b/examples/extended/radioactivedecay/rdecay01/Gd158.mac @@ -1,3 +1,6 @@ +# macro for rdecay01 +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 /run/verbose 1 # diff --git a/examples/extended/radioactivedecay/rdecay01/History b/examples/extended/radioactivedecay/rdecay01/History index 6e6f1be7fe..8f645f5cf2 100644 --- a/examples/extended/radioactivedecay/rdecay01/History +++ b/examples/extended/radioactivedecay/rdecay01/History @@ -14,6 +14,24 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +03-11-20 mma (rdecay01-V10-06-04) +- add a comment in atomicDeexcitation.mac + +26-10-20 mma (rdecay01-V10-06-03) +- README : add macros description + +14-10-20 mma (rdecay01-V10-06-02) +- add a comment in atomicDeexcitation.mac + +06-10-20 mma (rdecay01-V10-06-01) +- PhysicsList : add SetDeexcitationIgnoreCut(ARMflag) +- add macro atomicDeexcitation.mac + +05-08-20 A. Ribon (rdecay01-V10-06-00) +- README, .README.txt, fullChain.mac, Cf238.mac, No252.mac, + timeWindowBiased.mac : migrated UI commands from "/grdm/..." + to "/process/had/rdm/..." + 26-11-19 I. Hrivnacova (rdecay01-V10-05-06) - Fixed formatting in .README.txt diff --git a/examples/extended/radioactivedecay/rdecay01/No252.mac b/examples/extended/radioactivedecay/rdecay01/No252.mac index 974042b831..9d641c72e9 100644 --- a/examples/extended/radioactivedecay/rdecay01/No252.mac +++ b/examples/extended/radioactivedecay/rdecay01/No252.mac @@ -1,7 +1,10 @@ +# macro for rdecay01 +# # to read user's data file +# /control/cout/ignoreThreadsExcept 0 # -/grdm/setPhotoEvaporationFile 102 252 ../UserData/UserEvapData_z102.a252 +/process/had/rdm/setPhotoEvaporationFile 102 252 ../UserData/UserEvapData_z102.a252 # /gun/particle ion /gun/ion 102 252 0 3.2070e+02 diff --git a/examples/extended/radioactivedecay/rdecay01/Po212.mac b/examples/extended/radioactivedecay/rdecay01/Po212.mac index bd4f71cd50..b61b823aaf 100644 --- a/examples/extended/radioactivedecay/rdecay01/Po212.mac +++ b/examples/extended/radioactivedecay/rdecay01/Po212.mac @@ -1,3 +1,6 @@ +# macro for rdecay01 +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 /run/verbose 1 # diff --git a/examples/extended/radioactivedecay/rdecay01/README b/examples/extended/radioactivedecay/rdecay01/README index 70b9a0b5fb..54ee42fbaf 100644 --- a/examples/extended/radioactivedecay/rdecay01/README +++ b/examples/extended/radioactivedecay/rdecay01/README @@ -99,6 +99,27 @@ .... Idle> exit + Macros provided in this example: + - Co60.mac: Co60 + - Gd158.mac: Gd158 excited state + - No158.mac: read user data file + - Po212.mac: Po212 excited state + - Ra228.mac: Ra228 excited state + - alpha.mac: Po212 alpha decay + - atomicDeexcitation.mac: plot Auger cascade + - fullChain.mac: U238 + - neutron.mac: Li10 neutron emission + - proton.mac: Co53 proton emission + - singleDecay.mac: Ne10 + - timeWindow.mac: print activity within a given time window + - timeWindowBiased.mac: force decay within a given time window + + Macros to be run interactively: + - Cf238.mac: read user data file + - debug.mac: Pb210 + - electronicCapture.mac: Fe55 electronic capture + - vis.mac: To activate visualization + 7- Histograms ---------- diff --git a/examples/extended/radioactivedecay/rdecay01/Ra228.mac b/examples/extended/radioactivedecay/rdecay01/Ra228.mac index 6fd69c3f4d..9fb6c67114 100644 --- a/examples/extended/radioactivedecay/rdecay01/Ra228.mac +++ b/examples/extended/radioactivedecay/rdecay01/Ra228.mac @@ -1,3 +1,6 @@ +# macro for rdecay01 +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 /run/verbose 1 # diff --git a/examples/extended/radioactivedecay/rdecay01/alpha.mac b/examples/extended/radioactivedecay/rdecay01/alpha.mac index e04657d42d..3d10422731 100644 --- a/examples/extended/radioactivedecay/rdecay01/alpha.mac +++ b/examples/extended/radioactivedecay/rdecay01/alpha.mac @@ -1,3 +1,6 @@ +# macro for rdecay01 +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 /run/verbose 1 # @@ -6,8 +9,7 @@ # /tracking/verbose 2 /run/beamOn 1 -# /tracking/verbose 0 -/run/printProgress 10000 -# +# +/run/printProgress 10000 /run/beamOn 100000 diff --git a/examples/extended/radioactivedecay/rdecay01/atomicDeexcitation.mac b/examples/extended/radioactivedecay/rdecay01/atomicDeexcitation.mac new file mode 100644 index 0000000000..aa468b4539 --- /dev/null +++ b/examples/extended/radioactivedecay/rdecay01/atomicDeexcitation.mac @@ -0,0 +1,24 @@ +# +# macro for rdecay01 +# +# this macro is to survey atomic deexcitation +# do not forget to set ARMflag = true in PhysicsList.cc +# see S.Bakr et al. Geant4 collaboration meeting 2020 +# +/control/verbose 2 +/run/verbose 1 +# +/run/setCut 0.1 um +# +# decay of Iodine 125 is pure electronic carpture +/gun/particle ion +/gun/ion 53 125 +# +/rdecay01/fullChain false +# +/analysis/setFileName atomicDeexc +/analysis/h1/set 1 50000 0.001 50 keV #e- +/analysis/h1/set 3 50000 0.001 50 keV #gamma +# +/run/printProgress 100000 +/run/beamOn 1000000 diff --git a/examples/extended/radioactivedecay/rdecay01/debug.mac b/examples/extended/radioactivedecay/rdecay01/debug.mac index 1e0e2313d6..bcf5dc9723 100644 --- a/examples/extended/radioactivedecay/rdecay01/debug.mac +++ b/examples/extended/radioactivedecay/rdecay01/debug.mac @@ -1,6 +1,8 @@ +# macro for rdecay01 +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 /run/verbose 1 -/tracking/verbose 2 # /gun/particle ion ###/gun/ion 27 60 @@ -8,5 +10,6 @@ ###/gun/ion 43 99 0 142.7 # /rdecay01/fullChain false -# +# +/tracking/verbose 2 /run/beamOn 1 diff --git a/examples/extended/radioactivedecay/rdecay01/electronicCapture.mac b/examples/extended/radioactivedecay/rdecay01/electronicCapture.mac index 64ff8830ac..acc2ba2b74 100644 --- a/examples/extended/radioactivedecay/rdecay01/electronicCapture.mac +++ b/examples/extended/radioactivedecay/rdecay01/electronicCapture.mac @@ -1,12 +1,14 @@ +# macro for rdecay01 +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 /run/verbose 1 -/tracking/verbose 2 # /gun/particle ion /gun/ion 26 55 ###/gun/ion 25 53 ###/gun/ion 55 131 # -/run/printProgress 1 -# +/tracking/verbose 2 +/run/printProgress 1 /run/beamOn 5 diff --git a/examples/extended/radioactivedecay/rdecay01/fullChain.mac b/examples/extended/radioactivedecay/rdecay01/fullChain.mac index 3bfb5212a5..b1af4053c4 100644 --- a/examples/extended/radioactivedecay/rdecay01/fullChain.mac +++ b/examples/extended/radioactivedecay/rdecay01/fullChain.mac @@ -1,3 +1,6 @@ +# macro for rdecay01 +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 /run/verbose 1 # @@ -17,12 +20,11 @@ /analysis/h1/set 8 100 0. 1.e+11 y #time of life /analysis/h1/set 9 100 40. 100. MeV #EvisTot # -/run/printProgress 10000 -# +/run/printProgress 10000 /run/beamOn 100000 #limit the chain # -###/grdm/nucleusLimits 234 238 90 92 +###/process/had/rdm/nucleusLimits 234 238 90 92 # ###/run/beamOn 1 diff --git a/examples/extended/radioactivedecay/rdecay01/neutron.mac b/examples/extended/radioactivedecay/rdecay01/neutron.mac index 973117c8ac..ff39ca225c 100644 --- a/examples/extended/radioactivedecay/rdecay01/neutron.mac +++ b/examples/extended/radioactivedecay/rdecay01/neutron.mac @@ -1,3 +1,6 @@ +# macro for rdecay01 +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 /run/verbose 1 # @@ -8,7 +11,7 @@ # /tracking/verbose 2 /run/beamOn 1 -# /tracking/verbose 0 +# /run/printProgress 10000 -/run/beamOn 100000 \ No newline at end of file +/run/beamOn 100000 diff --git a/examples/extended/radioactivedecay/rdecay01/proton.mac b/examples/extended/radioactivedecay/rdecay01/proton.mac index 248575d7a5..c6510c6c4b 100644 --- a/examples/extended/radioactivedecay/rdecay01/proton.mac +++ b/examples/extended/radioactivedecay/rdecay01/proton.mac @@ -1,3 +1,6 @@ +# macro for rdecay01 +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 /run/verbose 1 # @@ -8,7 +11,7 @@ # /tracking/verbose 2 /run/beamOn 1 -# /tracking/verbose 0 +# /run/printProgress 10000 /run/beamOn 100000 diff --git a/examples/extended/radioactivedecay/rdecay01/rdecay01.out b/examples/extended/radioactivedecay/rdecay01/rdecay01.out index 379076a7ba..fe6bf4aa6f 100644 --- a/examples/extended/radioactivedecay/rdecay01/rdecay01.out +++ b/examples/extended/radioactivedecay/rdecay01/rdecay01.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -95,7 +95,7 @@ Step# X Y Z KineE dEStep StepLeng TrakLeng Run terminated. Run Summary Number of events processed : 1 - User=0.010000s Real=0.004050s Sys=0.000000s + User=0.000000s Real=0.002913s Sys=0.000000s ======================== run summary ====================== The run was 1 Co60 of 0 eV @@ -110,7 +110,7 @@ Run Summary Ekin Total (Q single decay): mean = 317.1 keV ( 317.1 keV --> 317.1 keV) - Momentum balance (excluding gamma desexcitation): mean = 0.5595 eV ( 0.5595 eV --> 0.5595 eV ) + Momentum balance (excluding gamma desexcitation): mean = 0.5596 eV ( 0.5596 eV --> 0.5596 eV ) Total time of life (full chain): mean = 9.982 y half-life = 6.919 y ( 9.982 y --> 9.982 y ) @@ -170,7 +170,7 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 100000 - User=1.490000s Real=1.553451s Sys=0.000000s + User=0.770000s Real=0.828348s Sys=0.000000s ======================== run summary ====================== The run was 100000 Co60 of 0 eV @@ -186,7 +186,7 @@ Run Summary Ekin Total (Q single decay): mean = 318.4 keV ( 317.1 keV --> 1.49 MeV) - Momentum balance (excluding gamma desexcitation): mean = 0.3281 eV ( 1.339e-06 eV --> 15.58 eV ) + Momentum balance (excluding gamma desexcitation): mean = 0.3281 eV ( 4.246e-07 eV --> 15.58 eV ) Total time of life (full chain): mean = 7.607 y half-life = 5.273 y ( 15.92 min --> 94.63 y ) @@ -245,7 +245,7 @@ Index : 0 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 100000 - User=7.010000s Real=7.203773s Sys=0.010000s + User=1.600000s Real=1.693625s Sys=0.000000s ======================== run summary ====================== The run was 100000 Co60 of 0 eV @@ -264,7 +264,7 @@ Run Summary Ekin Total (Q single decay): mean = 941.3 keV ( 317.1 keV --> 2.159 MeV) - Momentum balance (excluding gamma desexcitation): mean = 965.8 keV ( 3.956e-07 eV --> 2.981 MeV) + Momentum balance (excluding gamma desexcitation): mean = 965.8 keV ( 8.172e-06 eV --> 2.981 MeV) Total time of life (full chain): mean = 7.582 y half-life = 5.256 y ( 11.42 min --> 84.33 y ) diff --git a/examples/extended/radioactivedecay/rdecay01/singleDecay.mac b/examples/extended/radioactivedecay/rdecay01/singleDecay.mac index 7958870f39..f2461076ae 100644 --- a/examples/extended/radioactivedecay/rdecay01/singleDecay.mac +++ b/examples/extended/radioactivedecay/rdecay01/singleDecay.mac @@ -1,5 +1,8 @@ +# macro for rdecay01 +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 -/run/verbose 2 +/run/verbose 1 # /gun/particle ion /gun/ion 10 24 @@ -15,6 +18,5 @@ /analysis/h1/set 7 100 0. 1 eV #P balance /analysis/h1/set 8 100 0. 70 min #time of life # -/run/printProgress 10000 -# +/run/printProgress 10000 /run/beamOn 100000 diff --git a/examples/extended/radioactivedecay/rdecay01/src/PhysicsList.cc b/examples/extended/radioactivedecay/rdecay01/src/PhysicsList.cc index 38b1f09069..86cdb96474 100644 --- a/examples/extended/radioactivedecay/rdecay01/src/PhysicsList.cc +++ b/examples/extended/radioactivedecay/rdecay01/src/PhysicsList.cc @@ -69,6 +69,7 @@ PhysicsList::PhysicsList() G4NuclearLevelData::GetInstance()->GetParameters(); deex->SetCorrelatedGamma(false); deex->SetStoreAllLevels(true); + deex->SetIsomerProduction(true); deex->SetMaxLifeTime(G4NuclideTable::GetInstance()->GetThresholdOfHalfLife() /std::log(2.)); } @@ -122,6 +123,7 @@ void PhysicsList::ConstructProcess() if (!deex) { ///G4EmParameters::Instance()->SetFluo(true); G4EmParameters::Instance()->SetAugerCascade(ARMflag); + G4EmParameters::Instance()->SetDeexcitationIgnoreCut(ARMflag); deex = new G4UAtomicDeexcitation(); deex->InitialiseAtomicDeexcitation(); man->SetAtomDeexcitation(deex); diff --git a/examples/extended/radioactivedecay/rdecay01/timeWindow.mac b/examples/extended/radioactivedecay/rdecay01/timeWindow.mac index 0c898138bf..193f294150 100644 --- a/examples/extended/radioactivedecay/rdecay01/timeWindow.mac +++ b/examples/extended/radioactivedecay/rdecay01/timeWindow.mac @@ -1,3 +1,6 @@ +# macro for rdecay01 +# +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 /run/verbose 1 # diff --git a/examples/extended/radioactivedecay/rdecay01/timeWindowBiased.mac b/examples/extended/radioactivedecay/rdecay01/timeWindowBiased.mac index d166f9086e..f3141095b4 100644 --- a/examples/extended/radioactivedecay/rdecay01/timeWindowBiased.mac +++ b/examples/extended/radioactivedecay/rdecay01/timeWindowBiased.mac @@ -1,13 +1,16 @@ +# macro for rdecay01 +# # force Ca47 to decay within a window specified in data file # +/control/cout/ignoreThreadsExcept 0 /control/verbose 2 /run/verbose 1 # /gun/particle ion /gun/ion 20 47 # -/grdm/decayBiasProfile timeWindowBiased.data -/grdm/BRbias 0 +/process/had/rdm/decayBiasProfile timeWindowBiased.data +/process/had/rdm/BRbias 0 # /analysis/setFileName Ca47bias /analysis/h1/set 8 100 0. 30. day #time of life diff --git a/examples/extended/radioactivedecay/rdecay02/.README.txt b/examples/extended/radioactivedecay/rdecay02/.README.txt index cf8388419b..4331d092eb 100644 --- a/examples/extended/radioactivedecay/rdecay02/.README.txt +++ b/examples/extended/radioactivedecay/rdecay02/.README.txt @@ -39,8 +39,8 @@ - Radioactive Decay By default radioactive decay is applied through out the geometry. The user can limit it to just the target by commands : - /grdm/noVolumes - /grdm/selectVolume Target + /process/had/rdm/noVolumes + /process/had/rdm/selectVolume Target - Hadronic processes diff --git a/examples/extended/radioactivedecay/rdecay02/CMakeLists.txt b/examples/extended/radioactivedecay/rdecay02/CMakeLists.txt index a741e6bea8..526ef5f3e2 100644 --- a/examples/extended/radioactivedecay/rdecay02/CMakeLists.txt +++ b/examples/extended/radioactivedecay/rdecay02/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(rdecay02) #---------------------------------------------------------------------------- diff --git a/examples/extended/radioactivedecay/rdecay02/History b/examples/extended/radioactivedecay/rdecay02/History index c110d49481..fa66757948 100644 --- a/examples/extended/radioactivedecay/rdecay02/History +++ b/examples/extended/radioactivedecay/rdecay02/History @@ -15,7 +15,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- -20-06-16 Dennis Wright (rdecay02-V10-05-00) +05-08-20 Alberto Ribon (rdecay02-V10-06-00) +-------------------------------------------- +- README, .README.txt, macros/* : migrated UI commands from "/grdm/..." + to "/process/had/rdm/..." + +20-06-19 Dennis Wright (rdecay02-V10-05-00) -------------------------------------------- - in order to separate biased from unbiased RDM in physics lists, create new class BiasedRDPhysics which uses new G4Radioactivation process with all diff --git a/examples/extended/radioactivedecay/rdecay02/README b/examples/extended/radioactivedecay/rdecay02/README index 628e99eff3..f641f45995 100644 --- a/examples/extended/radioactivedecay/rdecay02/README +++ b/examples/extended/radioactivedecay/rdecay02/README @@ -38,8 +38,8 @@ - Radioactive Decay By default radioactive decay is applied through out the geometry. The user can limit it to just the target by commands : - /grdm/noVolumes - /grdm/selectVolume Target + /process/had/rdm/noVolumes + /process/had/rdm/selectVolume Target - Hadronic processes diff --git a/examples/extended/radioactivedecay/rdecay02/macros/No252Test.mac b/examples/extended/radioactivedecay/rdecay02/macros/No252Test.mac index 86d6441f20..0bd669d3f1 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/No252Test.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/No252Test.mac @@ -18,14 +18,14 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target # # Define user radioactive data # The data files should be defined before definition of the ion source # otherwise the mean life time will not be selected correctly # -/grdm/setPhotoEvaporationFile 102 252 UserEvapData_z102.a252 +/process/had/rdm/setPhotoEvaporationFile 102 252 UserEvapData_z102.a252 # # place the isotopes in the middle of the target, at rest. /gun/particle ion diff --git a/examples/extended/radioactivedecay/rdecay02/macros/UserEvapDataBiTest.mac b/examples/extended/radioactivedecay/rdecay02/macros/UserEvapDataBiTest.mac index f466dde0b0..3465042172 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/UserEvapDataBiTest.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/UserEvapDataBiTest.mac @@ -17,14 +17,14 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target # # Define user radioactive data # The data files should be defined before definition of the ion source # otherwise the mean life time will not be selected correctly # -/grdm/setPhotoEvaporationFile 83 210 UserEvapData_z83.a210 +/process/had/rdm/setPhotoEvaporationFile 83 210 UserEvapData_z83.a210 # # place the isotopes in the middle of the target, at rest. /gun/particle ion diff --git a/examples/extended/radioactivedecay/rdecay02/macros/UserRadDataPb210Test.mac b/examples/extended/radioactivedecay/rdecay02/macros/UserRadDataPb210Test.mac index 1da98c96d7..af0f2b7b67 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/UserRadDataPb210Test.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/UserRadDataPb210Test.mac @@ -18,15 +18,15 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target # # Define user radioactive data # The data files should be defined before definition of the ion source # otherwise the mean life time will not be selected correctly # -/grdm/setRadioactiveDecayFile 82 210 UserRadData_z82.a210 -/grdm/nucleusLimits 210 210 82 82 +/process/had/rdm/setRadioactiveDecayFile 82 210 UserRadData_z82.a210 +/process/had/rdm/nucleusLimits 210 210 82 82 # # place the isotopes in the middle of the target, at rest. /gun/particle ion diff --git a/examples/extended/radioactivedecay/rdecay02/macros/as74.mac b/examples/extended/radioactivedecay/rdecay02/macros/as74.mac index bedb7d88ef..f8c78f90e6 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/as74.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/as74.mac @@ -19,15 +19,15 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target # # place the isotopes in the middle of the target, at rest. /gun/particle ion /gun/ion 33 74 # # limit the decay chain -/grdm/nucleusLimits 74 74 33 33 +/process/had/rdm/nucleusLimits 74 74 33 33 # # Analogue MC /analysis/setFileName as74 @@ -37,7 +37,7 @@ # # VR MC /analysis/setFileName as74-b -/grdm/analogueMC 0 +/process/had/rdm/analogueMC 0 /run/beamOn 10 diff --git a/examples/extended/radioactivedecay/rdecay02/macros/f24.mac b/examples/extended/radioactivedecay/rdecay02/macros/f24.mac index b84c67bf46..248e99799e 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/f24.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/f24.mac @@ -16,8 +16,8 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target # # place the isotopes in the middle of the target, at rest. /gun/particle ion @@ -31,18 +31,18 @@ /run/beamOn 10000 # # complete chain decays in VR mode -/grdm/analogueMC 0 +/process/had/rdm/analogueMC 0 /analysis/setFileName f24c-b #/run/beamOn 10000 # # No daughter decays in analogue MC mode -/grdm/analogueMC 1 -/grdm/nucleusLimits 24 24 9 9 +/process/had/rdm/analogueMC 1 +/process/had/rdm/nucleusLimits 24 24 9 9 /analysis/setFileName f24 #/run/beamOn 10000 # No daughter decays in VR MC mode -/grdm/analogueMC 0 -/grdm/BRbias 0 +/process/had/rdm/analogueMC 0 +/process/had/rdm/BRbias 0 /analysis/setFileName f24-b #/run/beamOn 10000 diff --git a/examples/extended/radioactivedecay/rdecay02/macros/isotopes.mac b/examples/extended/radioactivedecay/rdecay02/macros/isotopes.mac index dc9592d19a..3ce62c98cb 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/isotopes.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/isotopes.mac @@ -17,8 +17,8 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target # /analysis/h1/set 6 100 0. 15. MeV # @@ -35,25 +35,25 @@ # /gun/particle ion /gun/ion 10 24 -/grdm/nucleusLimits 24 24 10 10 +/process/had/rdm/nucleusLimits 24 24 10 10 /analysis/setFileName ne24 /run/beamOn 10000 # # No daughter decays /gun/particle ion /gun/ion 13 24 -/grdm/nucleusLimits 24 24 13 13 +/process/had/rdm/nucleusLimits 24 24 13 13 /analysis/setFileName al24 /run/beamOn 10000 # /gun/particle ion /gun/ion 24 46 -/grdm/nucleusLimits 46 46 24 24 +/process/had/rdm/nucleusLimits 46 46 24 24 /analysis/setFileName cr46 /run/beamOn 10000 # /gun/particle ion /gun/ion 84 215 -/grdm/nucleusLimits 215 215 84 84 +/process/had/rdm/nucleusLimits 215 215 84 84 /analysis/setFileName po215 /run/beamOn 10000 diff --git a/examples/extended/radioactivedecay/rdecay02/macros/ne24.mac b/examples/extended/radioactivedecay/rdecay02/macros/ne24.mac index bd4341193c..e0021ff185 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/ne24.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/ne24.mac @@ -18,21 +18,21 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target # # place the isotopes in the middle of the target, at rest. /gun/particle ion /gun/ion 10 24 # # vr mode -/grdm/analogueMC 0 -/grdm/applyARM false -/grdm/applyICM false -/grdm/verbose 1 +/process/had/rdm/analogueMC 0 +/process/had/rdm/applyARM false +/process/had/rdm/applyICM false +/process/had/rdm/verbose 1 # # Branching ratio biasing on (as default) -/grdm/BRbias 1 +/process/had/rdm/BRbias 1 /analysis/setFileName ne24-br-on /analysis/h1/set 6 100 0. 10. MeV ###/analysis/ntuple/setActivation 3 true @@ -40,7 +40,7 @@ /run/beamOn 10 # # Branching ratio biasing off -/grdm/BRbias 0 +/process/had/rdm/BRbias 0 /analysis/setFileName ne24-br-off ##/run/beamOn 1000 diff --git a/examples/extended/radioactivedecay/rdecay02/macros/neutron.mac b/examples/extended/radioactivedecay/rdecay02/macros/neutron.mac index 28b65225fe..1654d8b9c8 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/neutron.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/neutron.mac @@ -16,8 +16,8 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target /gun/particle neutron /gun/energy 10 eV diff --git a/examples/extended/radioactivedecay/rdecay02/macros/po201m.mac b/examples/extended/radioactivedecay/rdecay02/macros/po201m.mac index afd9c32bc1..0f04a649ac 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/po201m.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/po201m.mac @@ -16,8 +16,8 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target # # place the isotopes in the middle of the target, at rest. @@ -25,12 +25,12 @@ /gun/ion 84 201 0 424.1 # # complete decay chain in VR mode -/grdm/analogueMC false -/grdm/sourceTimeProfile beam.data -/grdm/decayBiasProfile measures.data -#/grdm/nucleusLimits 238 238 90 92 -/grdm/hlThreshold 1e-6 s -/grdm/applyARM false +/process/had/rdm/analogueMC false +/process/had/rdm/sourceTimeProfile beam.data +/process/had/rdm/decayBiasProfile measures.data +#/process/had/rdm/nucleusLimits 238 238 90 92 +/process/had/rdm/hlThreshold 1e-6 s +/process/had/rdm/applyARM false # /analysis/setFileName po201m /analysis/h1/set 6 100 0. 15. MeV diff --git a/examples/extended/radioactivedecay/rdecay02/macros/proton-beam.mac b/examples/extended/radioactivedecay/rdecay02/macros/proton-beam.mac index ee9688ed27..62c1497503 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/proton-beam.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/proton-beam.mac @@ -16,14 +16,14 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target # # rdm in variance mode -/grdm/analogueMC 0 -/grdm/sourceTimeProfile beam.data -/grdm/decayBiasProfile measures.data -#/grdm/BRbias 0 +/process/had/rdm/analogueMC 0 +/process/had/rdm/sourceTimeProfile beam.data +/process/had/rdm/decayBiasProfile measures.data +#/process/had/rdm/BRbias 0 # /gun/particle proton /gun/energy 1 GeV diff --git a/examples/extended/radioactivedecay/rdecay02/macros/proton.mac b/examples/extended/radioactivedecay/rdecay02/macros/proton.mac index a06fe5930a..4105bae42b 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/proton.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/proton.mac @@ -16,8 +16,8 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target /gun/particle proton /gun/energy 1 GeV diff --git a/examples/extended/radioactivedecay/rdecay02/macros/th234c-b.mac b/examples/extended/radioactivedecay/rdecay02/macros/th234c-b.mac index c718753caf..83cbcdb685 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/th234c-b.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/th234c-b.mac @@ -16,15 +16,15 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target # # place the isotopes in the middle of the target, at rest. /gun/particle ion /gun/ion 90 234 # # VR MC -/grdm/analogueMC 0 +/process/had/rdm/analogueMC 0 /analysis/setFileName th234c-b /analysis/h1/set 6 100 0. 15. MeV # diff --git a/examples/extended/radioactivedecay/rdecay02/macros/u238.mac b/examples/extended/radioactivedecay/rdecay02/macros/u238.mac index b37f2237fa..7ebe771519 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/u238.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/u238.mac @@ -16,8 +16,8 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target # # place the isotopes in the middle of the target, at rest. /gun/particle ion @@ -27,9 +27,9 @@ /analysis/setFileName u238 /analysis/h1/set 6 100 0. 15. MeV # -/grdm/applyICM false -/grdm/applyARM false -/grdm/hlThreshold 1e-6 s +/process/had/rdm/applyICM false +/process/had/rdm/applyARM false +/process/had/rdm/hlThreshold 1e-6 s # /tracking/verbose 2 /run/beamOn 2 diff --git a/examples/extended/radioactivedecay/rdecay02/macros/u238b.mac b/examples/extended/radioactivedecay/rdecay02/macros/u238b.mac index 7e8621bce3..bfab7c8dad 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/u238b.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/u238b.mac @@ -14,8 +14,8 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target # Place the isotopes in the middle of the target, at rest. /gun/particle ion @@ -24,14 +24,14 @@ /gun/ion 92 238 0 44.916 # complete chain decays in VR mode -/grdm/sourceTimeProfile beam.data -/grdm/decayBiasProfile measures.data -#/grdm/nucleusLimits 238 238 90 92 +/process/had/rdm/sourceTimeProfile beam.data +/process/had/rdm/decayBiasProfile measures.data +#/process/had/rdm/nucleusLimits 238 238 90 92 # In biased mode the shortest allowed isomer lifetime is # set to 1 usec regardless of this setting -/grdm/hlThreshold 1e-6 s -/grdm/analogueMC 0 +/process/had/rdm/hlThreshold 1e-6 s +/process/had/rdm/analogueMC 0 # /analysis/setFileName u238b diff --git a/examples/extended/radioactivedecay/rdecay02/macros/u238c.mac b/examples/extended/radioactivedecay/rdecay02/macros/u238c.mac index 889b8e2f1a..49d42db86d 100644 --- a/examples/extended/radioactivedecay/rdecay02/macros/u238c.mac +++ b/examples/extended/radioactivedecay/rdecay02/macros/u238c.mac @@ -16,8 +16,8 @@ /process/list # # rdm is applied only to the target volume -/grdm/noVolumes -/grdm/selectVolume Target +/process/had/rdm/noVolumes +/process/had/rdm/selectVolume Target # # place the isotopes in the middle of the target, at rest. /gun/particle ion diff --git a/examples/extended/radioactivedecay/rdecay02/rdecay02.out b/examples/extended/radioactivedecay/rdecay02/rdecay02.out index b1117d233d..61fa860342 100644 --- a/examples/extended/radioactivedecay/rdecay02/rdecay02.out +++ b/examples/extended/radioactivedecay/rdecay02/rdecay02.out @@ -4,7 +4,7 @@ ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -46,7 +46,7 @@ Command is ignored. ElmMassFraction: 100.00 % ElmAbundance 100.00 % - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -69,6 +69,12 @@ Command is ignored. hIoni, hIoni, hIoni, hIoni hIoni, hIoni, hIoni, hIoni hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni + hIoni, hIoni, hIoni, hIoni hIoni, hIoni, Decay, Radioactivation hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic @@ -78,15 +84,30 @@ Command is ignored. hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic + hadElastic, hadElastic, hadElastic, hadElastic neutronInelastic, nCapture, protonInelastic, pi+Inelastic pi-Inelastic, kaon+Inelastic, kaon-Inelastic, kaon0LInelastic - kaon0SInelastic, lambdaInelastic,anti-lambdaInelastic, sigma-Inelastic -anti_sigma-Inelastic, sigma+Inelastic,anti_sigma+Inelastic, xi-Inelastic - anti_xi-Inelastic, xi0Inelastic, anti_xi0Inelastic, omega-Inelastic -anti_omega-Inelastic,anti_protonInelastic,anti_neutronInelastic,anti_deuteronInelastic -anti_tritonInelastic, anti_He3Inelastic,anti_alphaInelastic, ionElastic - dInelastic, tInelastic, He3Inelastic, alphaInelastic - ionInelastic, photonNuclear + kaon0SInelastic,anti_protonInelastic,anti_neutronInelastic,anti_deuteronInelastic +anti_tritonInelastic, anti_He3Inelastic,anti_alphaInelastic, lambdaInelastic + sigma+Inelastic, sigma-Inelastic, xi0Inelastic, xi-Inelastic + omega-Inelastic,anti_lambdaInelastic,anti_sigma+Inelastic,anti_sigma-Inelastic + anti_xi0Inelastic, anti_xi-Inelastic,anti_omega-Inelastic, D+Inelastic + D0Inelastic, D-Inelastic, anti_D0Inelastic, Ds+Inelastic + Ds-Inelastic, B+Inelastic, B0Inelastic, B-Inelastic + anti_B0Inelastic, Bs0Inelastic, anti_Bs0Inelastic, Bc+Inelastic + Bc-Inelastic, lambda_c+Inelastic, xi_c+Inelastic, xi_c0Inelastic + omega_c0Inelastic, lambda_bInelastic, xi_b0Inelastic, xi_b-Inelastic + omega_b-Inelastic,anti_lambda_c+Inelastic,anti_xi_c+Inelastic,anti_xi_c0Inelastic +anti_omega_c0Inelastic,anti_lambda_bInelastic,anti_xi_b0Inelastic,anti_xi_b-Inelastic +anti_omega_b-Inelastic, ionElastic, dInelastic, tInelastic + He3Inelastic, alphaInelastic, ionInelastic, photonNuclear + # /gun/particle ion /gun/ion 10 24 @@ -116,6 +137,28 @@ Use Bearden atomic level energies 0 ==================================================================== HADRONIC PROCESSES SUMMARY (verbose level 1) +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -190,6 +233,17 @@ Use Bearden atomic level energies 0 Model: FTFP: 0 meV/n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 meV ---> 25.6 PeV +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 meV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -279,8 +333,8 @@ Use Bearden atomic level energies 0 Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 meV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 meV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV --------------------------------------------------- @@ -343,8 +397,8 @@ Use Bearden atomic level energies 0 Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 meV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 meV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 meV ---> 100 TeV --------------------------------------------------- @@ -383,7 +437,6 @@ Store e- internal conversion data 1 Electron internal conversion ID 0 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -417,7 +470,8 @@ Index : 2 used in the geometry : Yes Initial seed (index) = 0 Current couple of seeds = 9876, 54321 ---------------------------------------- -... open Root analysis file : rdecay02.root - done +... create file : rdecay02.root - done +... open analysis file : rdecay02.root - done --> Event 0 starts. --> Event 1000 starts. --> Event 2000 starts. @@ -431,52 +485,51 @@ Index : 2 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 10000 - User=1.870000s Real=1.926220s Sys=0.000000s + User=0.950000s Real=1.170520s Sys=0.000000s The run is 10000 Ne24 of 0 meV through : Target : Length = 1 cm Radius = 5 mm Material = G4_CESIUM_IODIDE Detector : Length = 5 cm Thickness = 2 cm Material = Germanium - Mean energy deposit in target, in time window = 805.16 keV rms = 419.73 keV - Mean energy deposit in detector, in time window = 17.671 keV rms = 105.39 keV + Mean energy deposit in target, in time window = 806.45 keV rms = 419.41 keV + Mean energy deposit in detector, in time window = 19.291 keV rms = 109.73 keV Process calls frequency in target : - Radioactivation= 60756 Rayl= 289 Transportation= 50111 - annihil= 167 compt= 4211 conv= 174 - eIoni= 26031 ionIoni= 39552 msc= 3760 - phot= 1600 + Radioactivation= 60828 Rayl= 267 Transportation= 50140 + annihil= 161 compt= 4215 conv= 164 + eIoni= 26028 ionIoni= 39627 msc= 3558 + phot= 1595 Process calls frequency in detector: - Rayl= 1267 Transportation= 45847 annihil= 329 - compt= 22203 conv= 333 eIoni= 27055 - msc= 6715 phot= 4249 + Rayl= 1205 Transportation= 45921 annihil= 347 + compt= 22564 conv= 352 eIoni= 27444 + msc= 5830 phot= 4258 List of generated particles in target: - Mg24: 10000 Emean = 42.199 eV ( 41.932 eV --> 895.3 eV ) - Mg24[1368.672]: 9996 Emean = 169.87 eV ( 85.066 eV --> 408.02 eV ) - Mg24[4122.889]: 9986 Emean = 39.231 eV ( 215.79 meV --> 74.548 eV ) - Mg24[4238.240]: 1 Emean = 22.241 eV ( 22.241 eV --> 22.241 eV ) - Mg24[5235.120]: 4 Emean = 2.5345 eV ( 673.5 meV --> 3.601 eV ) - Na24: 9997 Emean = 4.9978 eV ( 4.9901 eV --> 15.742 eV ) - Na24[1346.621]: 768 Emean = 28.189 eV ( 350.48 meV --> 51.864 eV ) - Na24[472.207]: 9999 Emean = 68.367 eV ( 147.52 meV --> 134.02 eV ) - Na24[563.199]: 5 Emean = 13.735 eV ( 13.735 eV --> 13.735 eV ) - anti_nu_e: 20000 Emean = 984.14 keV ( 57.103 keV --> 3.8769 MeV) - e+: 174 Emean = 787.56 keV ( 66.16 keV --> 1.641 MeV) - e-: 26003 Emean = 636.12 keV ( 36.159 eV --> 3.3549 MeV) - gamma: 31085 Emean = 1.5043 MeV ( 1.0277 keV --> 4.2378 MeV) + Mg24: 10000 Emean = 42.119 eV ( 41.932 eV --> 842.44 eV ) + Mg24[1368.672]: 9997 Emean = 169.94 eV ( 85.066 eV --> 440.38 eV ) + Mg24[4122.889]: 9985 Emean = 39.305 eV ( 141.48 meV --> 75.018 eV ) + Mg24[5235.120]: 4 Emean = 3.0075 eV ( 314.93 meV --> 5.416 eV ) + Na24: 9997 Emean = 4.9965 eV ( 4.9901 eV --> 15.742 eV ) + Na24[1346.621]: 838 Emean = 27.798 eV ( 81.88 meV --> 51.99 eV ) + Na24[472.207]: 10000 Emean = 68.661 eV ( 147.52 meV --> 133.82 eV ) + Na24[563.199]: 7 Emean = 13.735 eV ( 13.735 eV --> 13.735 eV ) + anti_nu_e: 20000 Emean = 980.72 keV ( 35.558 keV --> 4.7316 MeV) + e+: 164 Emean = 807.72 keV ( 3.9611 keV --> 1.6505 MeV) + e-: 25994 Emean = 633.58 keV ( 37.533 eV --> 3.5013 MeV) + gamma: 31143 Emean = 1.5031 MeV ( 90.991 keV --> 3.8661 MeV) List of generated particles in detector: - e+: 333 Emean = 837.12 keV ( 14.733 keV --> 1.7048 MeV) - e-: 26778 Emean = 378.75 keV ( 100.64 eV --> 2.7526 MeV) - gamma: 656 Emean = 521.81 keV ( 330.31 keV --> 1.6294 MeV) + e+: 352 Emean = 868.75 keV ( 14.733 keV --> 1.7001 MeV) + e-: 27157 Emean = 380.69 keV ( 112.2 eV --> 3.4647 MeV) + gamma: 690 Emean = 518.82 keV ( 330.31 keV --> 1.418 MeV) -... write Root file : rdecay02.root - done -... close Root file : rdecay02.root - done +... write file : rdecay02.root - done +... close file : rdecay02.root - done --------- Ranecu engine status --------- Initial seed (index) = 0 - Current couple of seeds = 354922574, 1693501686 + Current couple of seeds = 1362126438, 1599555896 ---------------------------------------- G4 kernel has come to Quit state. ================== Deleting memory pools =================== diff --git a/examples/extended/runAndEvent/CMakeLists.txt b/examples/extended/runAndEvent/CMakeLists.txt index 7169aa1728..f3314474cb 100644 --- a/examples/extended/runAndEvent/CMakeLists.txt +++ b/examples/extended/runAndEvent/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all runAndEvent examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(RE01) add_subdirectory(RE02) diff --git a/examples/extended/runAndEvent/History b/examples/extended/runAndEvent/History index 72d0fdfa68..6250430063 100644 --- a/examples/extended/runAndEvent/History +++ b/examples/extended/runAndEvent/History @@ -15,6 +15,15 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Nov. 11, 2020 M. Asai (exRunAndEvent-V10-06-02) +- RE05 and RE06 : Migration to G4RunManagerFactory. + +Nov. 03, 2020 B. Morgan (exRunAndEvent-V10-06-01) +- Support same CMake version range as core Geant4 + +Oct. 29, 2020 M. Asai (exRunAndEvent-V10-06-00) +- RE01, RE02, RE03 and RE04 : Migration to G4RunManagerFactory. + Jan. 31, 2019 I. Hrivnacova (exRunAndEvent-V10-05-00) - Merged GitHub PR #4: all Boolean operators now return G4bool. @@ -32,7 +41,7 @@ Dec. 19, 2012 I.Hrivnacova (exRunAndEvent-V09-06-00) - Added RE05, RE06 which (moved from /novice/N04 and /novice/N07) Oct. 15, 2012 M.Asai (exRunAndEvent-V09-05-01) -- Update of RE01, RE03 by T.Aso (see RE01,RE03/History) to be compliant to +- Update of RE01, RE03 by T.Aso (see RE01,RE03/History) to be compliant to the example coding rule. Oct. 08, 2012 I.Hrivnacova (exRunAndEvent-V09-05-00) diff --git a/examples/extended/runAndEvent/RE01/CMakeLists.txt b/examples/extended/runAndEvent/RE01/CMakeLists.txt index 6c51d61eac..f8198dc0ad 100644 --- a/examples/extended/runAndEvent/RE01/CMakeLists.txt +++ b/examples/extended/runAndEvent/RE01/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(RE01) #---------------------------------------------------------------------------- @@ -23,7 +26,7 @@ include(${Geant4_USE_FILE}) #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) diff --git a/examples/extended/runAndEvent/RE01/History b/examples/extended/runAndEvent/RE01/History index 7748a80bef..9947ff0a44 100644 --- a/examples/extended/runAndEvent/RE01/History +++ b/examples/extended/runAndEvent/RE01/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Oct. 29, 2020 M. Asai (exampleRE01-V10-06-00) +- Migration to G4RunManagerFactory. + May 14, 2018 J. Allison (exampleRE01-V10-04-01) - Remove G4UI_USE and G4VIS_USE. - Move instantiation of G4UIExecutive to start of main. diff --git a/examples/extended/runAndEvent/RE01/RE01.cc b/examples/extended/runAndEvent/RE01/RE01.cc index 7e3a09c692..794f59eb7c 100644 --- a/examples/extended/runAndEvent/RE01/RE01.cc +++ b/examples/extended/runAndEvent/RE01/RE01.cc @@ -40,11 +40,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "RE01DetectorConstruction.hh" @@ -59,18 +55,13 @@ int main(int argc,char** argv) { - // Instantiate G4UIExecutive if there are no arguments (interactive mode) - G4UIExecutive* ui = nullptr; - if ( argc == 1 ) { + // Instantiate G4UIExecutive if there are no arguments (interactive mode) + G4UIExecutive* ui = nullptr; + if ( argc == 1 ) { ui = new G4UIExecutive(argc, argv); - } + } -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - //runManager->SetNumberOfThreads(4); -#else - G4RunManager * runManager = new G4RunManager; -#endif + auto* runManager = G4RunManagerFactory::CreateRunManager(); // Visualization manager construction G4VisManager* visManager = new G4VisExecutive; diff --git a/examples/extended/runAndEvent/RE01/sample.out b/examples/extended/runAndEvent/RE01/sample.out index 7879ebb301..3bfc7e8ead 100644 --- a/examples/extended/runAndEvent/RE01/sample.out +++ b/examples/extended/runAndEvent/RE01/sample.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -26,10 +27,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -67,6 +70,11 @@ Some /vis commands (optionally) take a string to specify colour. I'm World. --- G4CoupledTransportation is used + + hInelastic QGSP_BERT Thresholds: + 1) between BERT and FTF/P over the interval 3 to 6 GeV. + 2) between FTF/P and QGS/P over the interval 12 to 25 GeV. + -- quasiElastic: 1 for QGS and 0 for FTF ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 Warning : Region does not have specific production cuts, even though it appears in the current tracking world. @@ -100,10 +108,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -127,10 +136,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -158,9 +168,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -174,14 +184,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -190,9 +200,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -204,9 +214,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -217,9 +227,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -233,14 +243,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -249,9 +259,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -265,14 +275,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -281,9 +291,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -297,14 +307,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -313,9 +323,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -330,14 +340,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -346,9 +356,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -363,14 +373,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -379,9 +389,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -395,14 +405,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -411,9 +421,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -427,14 +437,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -464,6 +474,30 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -505,9 +539,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_He3Inelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -521,9 +553,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_alphaInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -537,13 +567,25 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_deuteronInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -553,9 +595,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_neutronInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -569,9 +609,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_protonInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -585,9 +623,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_tritonInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -663,10 +699,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -734,10 +769,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -778,7 +812,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. @@ -786,4103 +819,17559 @@ See commands in /vis/modeling/trajectories/ for other options. Tracks in tracking region have been processed. -- Stage 0 over. -Source track ID 7338 (gamma,0.1856182068138[GeV]) at (140.37004451966,479.89191554094,-280.92981034921) +Source track ID 11878 (gamma,0.26657618279345[GeV]) at (140.5192135829,479.84825790456,-280.93706620667) Original primary track ID 1 (unknown,305.48142430119[GeV]) -Cell[8,9] 0.16488813731878 [GeV] -Cell[8,10] 0.014938959009984 [GeV] -Cell[8,11] 0.0036271709030345 [GeV] -Cell[7,10] 0.0011419417619996 [GeV] -Cell[7,9] 0.00051099891 [GeV] -Cell[8,8] 0.00051099891 [GeV] -### Total energy deposition in calorimeter by a source track in 6 cells : 0.1856182068138 (GeV) +Cell[8,9] 0.25461091202404 [GeV] +Cell[18,46] 0.0010925261114873 [GeV] +Cell[14,25] 0.00038708478115017 [GeV] +Cell[3,28] 0.00056956866685223 [GeV] +Cell[4,45] 0.00081705233730805 [GeV] +Cell[8,10] 0.0072619044016239 [GeV] +Cell[7,39] 0.00084295825344374 [GeV] +Cell[8,8] 0.00099417621754357 [GeV] +### Total energy deposition in calorimeter by a source track in 8 cells : 0.26657618279345 (GeV) -Source track ID 7339 (gamma,1.0594551977156[GeV]) at (140.52277970337,479.84721358411,-280.93467808582) +Source track ID 11879 (gamma,1.0503020882376[GeV]) at (140.52574736237,479.84634449816,-280.94014714607) Original primary track ID 1 (unknown,305.48142430119[GeV]) -Cell[8,9] 0.97857207224598 [GeV] -Cell[8,10] 0.053930462748267 [GeV] -Cell[8,11] 0.0020740510933558 [GeV] -Cell[7,9] 0.0038182127994693 [GeV] -Cell[8,8] 0.015073401499988 [GeV] -Cell[9,9] 0.0012521804439865 [GeV] -Cell[7,11] 0.00048944445624847 [GeV] -Cell[6,46] 0.00022627265448835 [GeV] -Cell[5,27] 0.0011942899955719 [GeV] -Cell[7,8] 0.002792646221303 [GeV] -### Total energy deposition in calorimeter by a source track in 10 cells : 1.0594230341587 (GeV) +Cell[8,9] 0.96482880045643 [GeV] +Cell[8,10] 0.067344972102095 [GeV] +Cell[8,6] 0.00051099891 [GeV] +Cell[8,11] 0.0012964320710642 [GeV] +Cell[7,32] 0.0051091176567852 [GeV] +Cell[7,10] 0.0049291020884142 [GeV] +Cell[8,12] 0.0011482086913555 [GeV] +Cell[7,9] 0.0016325636935053 [GeV] +### Total energy deposition in calorimeter by a source track in 8 cells : 1.0468001956696 (GeV) -Source track ID 7340 (gamma,4.4526500051543[GeV]) at (140.60027627315,479.8245119957,-280.93863579979) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000371690074e-07 mm long + and its vector is (-2.030378709605429e-08,-7.705421012360603e-08,-6.04186425334774e-08) mm + Endpoint of ComputeStep() was (209.9804783876624,701.0251923476893,-465.4933988649195) + and current position to locate is (209.9804783673586,701.0251922706351,-465.4933989253382) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000069882065e-07 mm long + and its vector is (1.095796164918283e-08,2.917204255936667e-09,9.93549917893688e-08) mm + Endpoint of ComputeStep() was (193.7579820887179,508.3791790150025,-235.023626893043) + and current position to locate is (193.7579820996758,508.3791790179197,-235.023626793688) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000232057666e-07 mm long + and its vector is (7.902639254098176e-08,-4.74464059152524e-08,3.877721610479057e-08) mm + Endpoint of ComputeStep() was (226.9791769382735,543.8455522406398,-272.2302599374334) + and current position to locate is (226.9791770172999,543.8455521931934,-272.2302598986562) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999933001278e-08 mm long + and its vector is (-3.979076268478821e-08,6.244397354748799e-08,6.72119426781137e-08) mm + Endpoint of ComputeStep() was (220.3307269394024,679.7099699783161,-465.2009266748529) + and current position to locate is (220.3307268996116,679.70997004076,-465.200926607641) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000000110822e-07 mm long + and its vector is (-7.695581416555797e-08,-1.98341467694263e-08,6.069933533581207e-08) mm + Endpoint of ComputeStep() was (239.8816760201469,696.2185855676609,-427.7715989473514) + and current position to locate is (239.8816759431911,696.2185855478267,-427.7715988866521) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999129574428e-08 mm long + and its vector is (-8.280451169184744e-08,-4.99114776175702e-08,2.553929334681015e-08) mm + Endpoint of ComputeStep() was (29.06875960854775,629.3290135393854,-385.1913338178065) + and current position to locate is (29.06875952574324,629.3290134894739,-385.1913337922672) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996303006929e-08 mm long + and its vector is (-5.669875235980726e-08,-8.229733339248924e-08,-3.520369773468701e-09) mm + Endpoint of ComputeStep() was (179.7286944478622,691.5185147153962,-468.7012906808635) + and current position to locate is (179.7286943911634,691.5185146330989,-468.7012906843838) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000214297198e-07 mm long + and its vector is (7.51404627408192e-08,-6.491336534963921e-08,-1.183934728032909e-08) mm + Endpoint of ComputeStep() was (234.4292736844538,634.9154791397931,-249.2759551406988) + and current position to locate is (234.4292737595943,634.9154790748797,-249.2759551525381) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998044578039e-08 mm long + and its vector is (4.135216613576631e-08,2.336810212000273e-08,-8.799958095551119e-08) mm + Endpoint of ComputeStep() was (431.1036574578873,596.1258364270184,-268.1133391538947) + and current position to locate is (431.1036574992395,596.1258364503865,-268.1133392418943) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000545056065e-07 mm long + and its vector is (1.917328518175054e-09,9.687812507763738e-08,2.471767857059604e-08) mm + Endpoint of ComputeStep() was (227.1706863574826,587.616779155552,-427.4816606449018) + and current position to locate is (227.1706863594,587.6167792524301,-427.4816606201841) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000014429261e-07 mm long + and its vector is (-6.410331820916326e-08,-7.661481049581198e-08,-4.57555415778188e-09) mm + Endpoint of ComputeStep() was (252.0972426649142,522.3475666193028,-362.0698944730931) + and current position to locate is (252.0972426008109,522.347566542688,-362.0698944776687) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000339204021e-07 mm long + and its vector is (-2.523137254684116e-08,8.103620530164335e-08,-5.288211468723603e-08) mm + Endpoint of ComputeStep() was (163.1735372708476,608.9719313703359,-380.8195242939515) + and current position to locate is (163.1735372456162,608.9719314513721,-380.8195243468336) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999813954227e-08 mm long + and its vector is (4.17313117395679e-08,-4.993864877178567e-08,-7.59251292947738e-08) mm + Endpoint of ComputeStep() was (138.5100266228825,737.0974198313888,-496.4552259080656) + and current position to locate is (138.5100266646138,737.0974197814502,-496.4552259839908) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.0000004450999e-07 mm long + and its vector is (1.77629999598139e-08,-9.041571047418984e-08,3.885207888743025e-08) mm + Endpoint of ComputeStep() was (99.10188580518874,579.2860272622289,-281.1779421354533) + and current position to locate is (99.10188582295174,579.2860271718132,-281.1779420966012) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996501907688e-08 mm long + and its vector is (-3.874374954193627e-08,9.179382232105127e-08,-8.532822448614752e-09) mm + Endpoint of ComputeStep() was (18.52436115385451,699.7548484410885,-396.1665766125986) + and current position to locate is (18.52436111511076,699.7548485328823,-396.1665766211314) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998499512107e-08 mm long + and its vector is (-7.51734603454679e-08,6.064260560378898e-08,2.591181669231446e-08) mm + Endpoint of ComputeStep() was (-80.15411840814842,608.83097506091,-253.2499852914367) + and current position to locate is (-80.15411848332188,608.8309751215526,-253.2499852655249) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 11814 (e+,72.255810290137[GeV]) at (140.79574392375,479.76719197227,-280.94615811742) Original primary track ID 1 (unknown,305.48142430119[GeV]) -Cell[8,9] 4.1154951097944 [GeV] -Cell[8,10] 0.24265192473333 [GeV] -Cell[8,11] 0.020879866336189 [GeV] -Cell[7,10] 0.024272593034913 [GeV] -Cell[7,9] 0.014199054092501 [GeV] -Cell[8,8] 0.010636802214626 [GeV] -Cell[7,11] 0.00071599129028519 [GeV] -Cell[7,8] 0.0032470804735313 [GeV] -Cell[8,12] 0.0018299558589242 [GeV] -### Total energy deposition in calorimeter by a source track in 9 cells : 4.4339283778287 (GeV) +Cell[8,9] 65.611112366067 [GeV] +Cell[8,10] 4.7583631397745 [GeV] +Cell[8,8] 0.32275834034329 [GeV] +Cell[8,6] 0.0028535921524822 [GeV] +Cell[8,11] 0.10717187406648 [GeV] +Cell[7,10] 0.3942687761375 [GeV] +Cell[8,12] 0.0051549081545389 [GeV] +Cell[7,9] 0.62157943791579 [GeV] +Cell[8,5] 0.00042321049778126 [GeV] +Cell[8,7] 0.023171188166707 [GeV] +Cell[7,8] 0.056751779270139 [GeV] +Cell[9,8] 0.0062640594576233 [GeV] +Cell[7,11] 0.042602454926637 [GeV] +Cell[9,10] 0.0091798671222188 [GeV] +Cell[9,9] 0.0086776149928938 [GeV] +Cell[10,37] 0.0027228958218327 [GeV] +Cell[9,40] 0.0024924082305875 [GeV] +Cell[8,33] 0.0012067671202466 [GeV] +Cell[7,12] 0.0037923060390808 [GeV] +Cell[9,7] 0.00018831488372826 [GeV] +Cell[12,38] 0.0018226003750866 [GeV] +Cell[10,18] 0.00066403382479258 [GeV] +Cell[2,35] 0.00097858564034273 [GeV] +Cell[2,34] 0.00067664773638735 [GeV] +Cell[8,28] 0.0023476213786448 [GeV] +Cell[6,2] 0.00018926942338716 [GeV] +Cell[9,19] 0.0013190674617178 [GeV] +Cell[10,23] 0.0011432619489019 [GeV] +Cell[10,22] 0.00031038488368971 [GeV] +Cell[7,6] 0.00089289722539579 [GeV] +Cell[7,7] 0.0031320659820326 [GeV] +Cell[7,26] 0.00033020584555129 [GeV] +Cell[7,27] 0.0038278241693177 [GeV] +Cell[8,23] 0.0017644311028213 [GeV] +Cell[0,31] 0.0010480473384733 [GeV] +Cell[7,28] 0.0017813179480177 [GeV] +Cell[7,17] 0.0038327000947318 [GeV] +Cell[7,4] 0.00051099891 [GeV] +Cell[6,18] 0.00045168136355954 [GeV] +Cell[7,18] 5.9317546440462e-05 [GeV] +Cell[6,20] 0.0020099446063895 [GeV] +Cell[7,5] 0.0044584979769684 [GeV] +Cell[7,20] 0.0017952011136173 [GeV] +Cell[9,11] 0.005766839215358 [GeV] +Cell[8,13] 0.0052584943649555 [GeV] +Cell[9,6] 0.0012726358239082 [GeV] +Cell[8,41] 0.00084917242786924 [GeV] +Cell[2,41] 0.0026281691201656 [GeV] +Cell[2,32] 0.00051099891 [GeV] +Cell[12,31] 0.00048267325201026 [GeV] +Cell[8,35] 0.00068347336235401 [GeV] +Cell[7,24] 0.001060477318011 [GeV] +Cell[8,36] 0.0026121977002055 [GeV] +Cell[9,45] 0.0084209729668871 [GeV] +Cell[5,2] 0.00014723741847504 [GeV] +Cell[7,33] 0.0018789631310518 [GeV] +Cell[6,0] 0.004720924307754 [GeV] +Cell[6,24] 0.0041778576152363 [GeV] +Cell[6,25] 0.00051099891 [GeV] +Cell[9,33] 0.00080760071633723 [GeV] +Cell[7,34] 0.0023149654697665 [GeV] +Cell[11,34] 0.0025780102945706 [GeV] +Cell[11,33] 0.00051099891 [GeV] +Cell[8,37] 0.00065796672347966 [GeV] +Cell[9,12] 0.00026982664934913 [GeV] +Cell[8,14] 0.00032780061784005 [GeV] +Cell[8,34] 0.0010666311484156 [GeV] +Cell[4,36] 0.0015969904363845 [GeV] +Cell[7,14] 0.0035021521255846 [GeV] +Cell[8,39] 0.001166165583429 [GeV] +Cell[9,39] 0.0023445670789203 [GeV] +Cell[11,29] 0.00086303299711798 [GeV] +Cell[6,7] 0.00028731549247168 [GeV] +Cell[6,8] 0.0025249924239253 [GeV] +Cell[7,13] 0.00059952207931934 [GeV] +Cell[13,35] 0.0015103305050177 [GeV] +Cell[9,3] 0.00015240489213478 [GeV] +Cell[5,38] 0.00051099891 [GeV] +Cell[9,25] 0.0005378643231967 [GeV] +Cell[7,16] 0.00034532158122805 [GeV] +Cell[5,25] 0.0016031749100627 [GeV] +Cell[7,47] 0.00056756166559477 [GeV] +Cell[4,33] 0.00075651111490636 [GeV] +Cell[11,3] 0.00029881825997429 [GeV] +Cell[8,20] 0.00022174208560048 [GeV] +Cell[6,9] 0.00098961186148585 [GeV] +Cell[13,30] 0.0004237271590308 [GeV] +Cell[10,31] 0.0031644000737949 [GeV] +Cell[8,38] 0.0013172644866235 [GeV] +Cell[9,0] 0.0002523992006866 [GeV] +Cell[6,38] 0.0018710311571625 [GeV] +Cell[10,28] 0.0012258082009869 [GeV] +Cell[1,4] 0.00022191550756966 [GeV] +Cell[2,28] 0.00019246837009617 [GeV] +Cell[8,19] 0.0010439279252939 [GeV] +Cell[7,41] 0.00015091459970194 [GeV] +Cell[10,10] 0.00027386252577007 [GeV] +Cell[10,9] 0.00045775416847829 [GeV] +Cell[14,35] 0.00012766949946408 [GeV] +### Total energy deposition in calorimeter by a source track in 99 cells : 72.096700012613 (GeV) -Source track ID 7341 (gamma,0.21106687216636[GeV]) at (140.73733606398,479.78432887873,-280.92922119484) +Source track ID 11788 (mu+,97.449390334815[GeV]) at (421.36343933682,269.17067446184,1659.1416099654) Original primary track ID 1 (unknown,305.48142430119[GeV]) -Cell[8,9] 0.19372723393012 [GeV] -Cell[8,10] 0.011919970833787 [GeV] -Cell[8,11] 0.0022137005962636 [GeV] -Cell[8,8] 0.0020222746111138 [GeV] -Cell[8,7] 0.0011836921950701 [GeV] -### Total energy deposition in calorimeter by a source track in 5 cells : 0.21106687216636 (GeV) +Cell[18,4] 0.50145260637089 [GeV] +Cell[19,4] 0.24757479382029 [GeV] +Cell[18,24] 0.00051099891 [GeV] +Cell[18,3] 0.0074314095004978 [GeV] +Cell[18,19] 0.00060979663027452 [GeV] +Cell[14,29] 0.0004448864077049 [GeV] +Cell[19,21] 0.00050927425658539 [GeV] +Cell[19,39] 0.001658980773594 [GeV] +Cell[10,25] 0.00051069709077937 [GeV] +Cell[17,25] 0.00070446656124455 [GeV] +Cell[15,29] 0.0026760227448193 [GeV] +Cell[18,5] 0.0065752170427933 [GeV] +Cell[18,21] 0.00044686719138248 [GeV] +Cell[17,21] 0.0002817957587535 [GeV] +Cell[15,31] 0.0012515664641472 [GeV] +### Total energy deposition in calorimeter by a source track in 15 cells : 0.77263937952376 (GeV) -Source track ID 7342 (gamma,1.1056400838682[GeV]) at (140.73825478177,479.78405938608,-280.93030054311) +Source track ID 11789 (mu-,49.169070366622[GeV]) at (-250.07575634119,-432.96895511154,234.2367866328) Original primary track ID 1 (unknown,305.48142430119[GeV]) -Cell[8,9] 1.0387547289248 [GeV] -Cell[8,10] 0.045480555021897 [GeV] -Cell[7,10] 0.0086814764611157 [GeV] -Cell[7,9] 0.0014610630419831 [GeV] -Cell[8,8] 0.0026993060152283 [GeV] -Cell[8,7] 0.0085629544032174 [GeV] -### Total energy deposition in calorimeter by a source track in 6 cells : 1.1056400838682 (GeV) +Cell[12,31] 0.066479177917886 [GeV] +Cell[11,33] 0.0002697423549597 [GeV] +Cell[15,31] 0.051740910408307 [GeV] +Cell[11,31] 0.058917818353732 [GeV] +Cell[11,32] 0.47229540287331 [GeV] +Cell[12,32] 1.1230049240684 [GeV] +Cell[13,32] 1.1328621440266 [GeV] +Cell[14,32] 0.53755592188784 [GeV] +Cell[15,32] 0.80162489011566 [GeV] +Cell[16,32] 0.46988187312979 [GeV] +Cell[17,32] 0.00015128245324669 [GeV] +Cell[16,31] 0.0080262354439092 [GeV] +Cell[14,31] 0.019191809307611 [GeV] +Cell[13,31] 0.94395124651948 [GeV] +Cell[12,33] 0.00028982908274141 [GeV] +Cell[10,36] 0.0008485891755719 [GeV] +Cell[10,35] 9.274726134431e-05 [GeV] +Cell[10,32] 0.00022500841061696 [GeV] +### Total energy deposition in calorimeter by a source track in 18 cells : 5.687409552791 (GeV) -Source track ID 7273 (e+,66.559616545951[GeV]) at (140.75279117364,479.77979509024,-280.92846549265) -Original primary track ID 1 (unknown,305.48142430119[GeV]) -Cell[8,9] 60.658973212295 [GeV] -Cell[8,10] 4.3676831625016 [GeV] -Cell[8,11] 0.10738568730027 [GeV] -Cell[7,10] 0.19456248781911 [GeV] -Cell[7,9] 0.43550765200613 [GeV] -Cell[8,8] 0.28930303777272 [GeV] -Cell[9,9] 0.004553291772993 [GeV] -Cell[7,11] 0.03004862614816 [GeV] -Cell[7,8] 0.0717918752071 [GeV] -Cell[8,12] 0.014496824752736 [GeV] -Cell[8,7] 0.027603239589174 [GeV] -Cell[7,1] 0.00032723130671272 [GeV] -Cell[7,0] 3.226592662395e-05 [GeV] -Cell[6,34] 0.0019515993535782 [GeV] -Cell[7,34] 0.00011311853519874 [GeV] -Cell[7,35] 1.0298628651071e-05 [GeV] -Cell[7,33] 5.342447205976e-07 [GeV] -Cell[7,32] 0.0034453915261365 [GeV] -Cell[6,35] 0.00096725582109161 [GeV] -Cell[17,30] 0.00050444546104085 [GeV] -Cell[9,10] 0.017549330295695 [GeV] -Cell[7,7] 0.0073931697906368 [GeV] -Cell[6,38] 0.00049319488428311 [GeV] -Cell[6,30] 0.0029424225532724 [GeV] -Cell[9,8] 0.0040690294500409 [GeV] -Cell[6,10] 0.0060232359431456 [GeV] -Cell[9,32] 0.0004480479742988 [GeV] -Cell[9,42] 0.0027372670005389 [GeV] -Cell[9,11] 0.002463780770844 [GeV] -Cell[8,35] 0.00076496691396369 [GeV] -Cell[9,39] 0.0030392178395078 [GeV] -Cell[13,26] 0.0012525036192176 [GeV] -Cell[8,5] 0.0037031980513988 [GeV] -Cell[11,7] 0.00012474298050052 [GeV] -Cell[13,33] 0.00018678995636621 [GeV] -Cell[11,30] 0.00036878929961444 [GeV] -Cell[7,30] 0.00077796741059941 [GeV] -Cell[8,6] 0.00034405182702124 [GeV] -Cell[7,17] 0.00072397656635485 [GeV] -Cell[6,25] 0.00081708880551922 [GeV] -Cell[7,43] 0.00072619223546366 [GeV] -Cell[7,5] 0.0021073503224134 [GeV] -Cell[15,30] 0.0050397108504779 [GeV] -Cell[6,31] 0.0019103460451627 [GeV] -Cell[7,22] 0.0025009530434706 [GeV] -Cell[8,44] 0.00068300093289729 [GeV] -Cell[9,43] 0.00094500591865964 [GeV] -Cell[3,39] 0.00181578088696 [GeV] -Cell[7,41] 0.0022891982492804 [GeV] -Cell[8,39] 0.00060375214600914 [GeV] -Cell[12,44] 0.0050252453899231 [GeV] -Cell[12,24] 0.00019794959544428 [GeV] -Cell[9,47] 0.00030437934526211 [GeV] -Cell[16,38] 0.020362910197036 [GeV] -Cell[18,29] 0.00051099891 [GeV] -Cell[14,17] 0.00051099891 [GeV] -Cell[8,13] 0.00056508445758735 [GeV] -Cell[7,12] 0.0032847916638248 [GeV] -Cell[7,13] 0.00057010024226516 [GeV] -Cell[6,4] 0.00086275681864133 [GeV] -Cell[5,45] 0.0026520855849951 [GeV] -Cell[1,43] 0.00025538476106769 [GeV] -Cell[5,36] 0.00051099891 [GeV] -Cell[4,38] 0.002530391248728 [GeV] -Cell[4,46] 0.0032960408906563 [GeV] -Cell[7,23] 0.0019666635600683 [GeV] -Cell[10,6] 0.00013454071448558 [GeV] -Cell[8,20] 0.0020506565677828 [GeV] -Cell[5,37] 0.00051099891 [GeV] -Cell[6,22] 0.00051099891 [GeV] -Cell[6,8] 0.0010466914996813 [GeV] -Cell[5,20] 3.6600412277039e-06 [GeV] -Cell[5,21] 1.7106904124375e-06 [GeV] -Cell[4,33] 3.0821574328002e-06 [GeV] -Cell[5,33] 1.2718628210564e-05 [GeV] -Cell[5,34] 0.0022238093993549 [GeV] -Cell[7,47] 0.00040020183662803 [GeV] -Cell[8,4] 0.00011079707337197 [GeV] -Cell[3,2] 0.00056309899714877 [GeV] -Cell[9,37] 0.0010956916410421 [GeV] -Cell[4,39] 0.0027876708708868 [GeV] -Cell[12,31] 0.00071589231295839 [GeV] -Cell[7,27] 0.0017383782189878 [GeV] -Cell[8,40] 0.0063040225668768 [GeV] -Cell[8,22] 0.0017934019199014 [GeV] -Cell[6,28] 0.00082944132638315 [GeV] -Cell[8,41] 0.00049118934850877 [GeV] -Cell[0,34] 0.00017992585127253 [GeV] -Cell[3,28] 0.00046558227536984 [GeV] -Cell[11,45] 4.3671783837681e-05 [GeV] -Cell[11,44] 1.5651353715953e-05 [GeV] -Cell[8,18] 5.3238472901285e-08 [GeV] -Cell[6,39] 4.7029289268039e-06 [GeV] -Cell[11,21] 0.0010463680700692 [GeV] -Cell[9,26] 0.00085429519396657 [GeV] -Cell[4,44] 0.001252933542344 [GeV] -Cell[8,14] 0.0010340908990641 [GeV] -Cell[8,15] 0.00036037644041643 [GeV] -Cell[9,6] 0.00034358374171131 [GeV] -Cell[7,37] 0.0041974334398026 [GeV] -Cell[7,42] 0.00014403874110943 [GeV] -Cell[6,23] 0.00051099891 [GeV] -Cell[9,34] 0.00016390081565754 [GeV] -Cell[4,32] 0.0022920853784381 [GeV] -Cell[7,6] 0.0016454674005074 [GeV] -Cell[7,21] 0.0033825890245973 [GeV] -Cell[8,16] 0.00037251739795052 [GeV] -Cell[4,42] 0.001037961339165 [GeV] -Cell[6,37] 0.0023890788481999 [GeV] -Cell[9,31] 0.0017647506941806 [GeV] -Cell[9,7] 0.00037729927563427 [GeV] -Cell[9,38] 0.0070299103879855 [GeV] -Cell[2,17] 5.8758685369597e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 113 cells : 66.381808760307 (GeV) -Source track ID 7255 (mu+,97.44939764292[GeV]) at (421.38936448768,269.13008656906,1659.1586571772) -Original primary track ID 1 (unknown,305.48142430119[GeV]) -Cell[18,4] 0.16629061946857 [GeV] -Cell[19,4] 0.19582962520849 [GeV] -Cell[18,3] 0.0012072671528008 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.36332751182987 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000500498841e-07 mm long + and its vector is (-4.11588416682207e-08,2.456920356053161e-08,8.776282811595593e-08) mm + Endpoint of ComputeStep() was (-360.8904139742684,-399.7476041581096,1084.681086469924) + and current position to locate is (-360.8904140154272,-399.7476041335404,1084.681086557687) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 7256 (mu-,49.168013776096[GeV]) at (-250.06058992236,-432.97771463169,234.24396863262) -Original primary track ID 1 (unknown,305.48142430119[GeV]) -Cell[12,31] 0.037140228987602 [GeV] -Cell[11,31] 0.079649014010743 [GeV] -Cell[11,32] 0.37504402856836 [GeV] -Cell[12,32] 0.61773155905058 [GeV] -Cell[13,32] 0.56084698942993 [GeV] -Cell[14,32] 0.54852757845394 [GeV] -Cell[15,32] 1.8235426857749 [GeV] -Cell[16,32] 0.6694389405138 [GeV] -Cell[17,32] 0.06614769956903 [GeV] -Cell[17,31] 0.0044861388532232 [GeV] -Cell[18,32] 0.00044605763226765 [GeV] -Cell[18,31] 0.00021266426328008 [GeV] -Cell[16,31] 0.010691963054766 [GeV] -Cell[15,31] 0.12714703830991 [GeV] -Cell[14,31] 0.0063085563423743 [GeV] -Cell[13,31] 0.0036332278720071 [GeV] -### Total energy deposition in calorimeter by a source track in 16 cells : 4.9309943706867 (GeV) - -Source track ID 7251 (gamma,0.18586941759822[GeV]) at (-308.57128516664,-393.42567528138,1178.6007919153) +Source track ID 11784 (gamma,0.18586941759822[GeV]) at (-308.57128975984,-393.42567167884,1178.600783371) Original primary track ID 2 (unknown,2.8798399642419[GeV]) -Cell[15,30] 0.10428171787902 [GeV] -Cell[16,31] 0.0099272486036537 [GeV] -Cell[15,31] 0.0015688201663602 [GeV] -Cell[16,6] 0.00051099891 [GeV] -Cell[16,30] 0.057745753859766 [GeV] -Cell[17,44] 0.0021611444168677 [GeV] -Cell[18,26] 0.00032505320070805 [GeV] -Cell[17,1] 6.4267992876786e-05 [GeV] -Cell[17,4] 0.00051099891 [GeV] -Cell[19,26] 0.00051099891 [GeV] -Cell[15,41] 0.0034555817582601 [GeV] -Cell[17,0] 0.00040836781606323 [GeV] -### Total energy deposition in calorimeter by a source track in 12 cells : 0.18147095242358 (GeV) +Cell[15,31] 0.00094217743102323 [GeV] +Cell[16,32] 0.00051099891 [GeV] +Cell[16,31] 0.011707657893858 [GeV] +Cell[15,30] 0.093429178212373 [GeV] +Cell[18,35] 0.011566669481967 [GeV] +Cell[16,30] 0.036051906032861 [GeV] +Cell[14,11] 0.0056938651628244 [GeV] +Cell[18,38] 0.0065038657652391 [GeV] +Cell[17,11] 0.00051099891 [GeV] +Cell[16,29] 0.00051099891 [GeV] +Cell[15,6] 0.00051099891 [GeV] +### Total energy deposition in calorimeter by a source track in 11 cells : 0.16793931562015 (GeV) -Source track ID 7252 (gamma,0.79108390679382[GeV]) at (-463.39575598804,-187.78810753684,658.3495232388) +Source track ID 11785 (gamma,0.79108390679382[GeV]) at (-463.39575565542,-187.78810835763,658.34952540182) Original primary track ID 2 (unknown,2.8798399642419[GeV]) -Cell[13,26] 0.69163547759678 [GeV] -Cell[14,17] 0.00070493323127328 [GeV] -Cell[13,27] 0.071148264646082 [GeV] -Cell[17,39] 0.0049962525597486 [GeV] -Cell[9,4] 0.00051099891 [GeV] -Cell[13,28] 0.00075867198173217 [GeV] -Cell[14,25] 0.0030895589366457 [GeV] -Cell[14,26] 0.0048060372366957 [GeV] -Cell[13,25] 0.00038484548615669 [GeV] -Cell[13,4] 0.00034963484917149 [GeV] -Cell[19,5] 0.0014559344818118 [GeV] -Cell[16,39] 0.0015579325894038 [GeV] -Cell[4,5] 0.0004331482044981 [GeV] -Cell[13,41] 0.00051099891 [GeV] -Cell[14,18] 0.00039258810284171 [GeV] -Cell[14,47] 0.0016187703989691 [GeV] -Cell[12,2] 0.0012506300647715 [GeV] -Cell[13,37] 0.00029274581529739 [GeV] -Cell[13,8] 0.0013842858790324 [GeV] -Cell[13,39] 0.00072190335785519 [GeV] -Cell[19,15] 0.00051099891 [GeV] -Cell[15,44] 0.00051099891 [GeV] -### Total energy deposition in calorimeter by a source track in 22 cells : 0.78902561105877 (GeV) +Cell[10,10] 0.00024433861378933 [GeV] +Cell[13,26] 0.68926757585086 [GeV] +Cell[13,27] 0.089859797058989 [GeV] +Cell[13,17] 0.00051099891 [GeV] +Cell[16,10] 0.00093623703606041 [GeV] +Cell[14,8] 0.00063045236962282 [GeV] +Cell[12,7] 0.0028957328551971 [GeV] +Cell[13,25] 0.00051099891 [GeV] +Cell[14,26] 0.00054588236913411 [GeV] +Cell[13,15] 0.00095465407339616 [GeV] +Cell[14,0] 0.00041566122438787 [GeV] +Cell[13,40] 0.0021838957691553 [GeV] +Cell[14,27] 0.00051099891 [GeV] +### Total energy deposition in calorimeter by a source track in 13 cells : 0.78946722395059 (GeV) -Source track ID 6874 (gamma,0.68389327451526[GeV]) at (-406.71456428243,-290.83201887095,428.61115407031) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998245591447e-08 mm long + and its vector is (-9.552900337439496e-08,2.754208594524243e-08,1.07535811366688e-08) mm + Endpoint of ComputeStep() was (-608.4620368324044,-183.9032364278477,352.0381047500543) + and current position to locate is (-608.4620369279334,-183.9032364003056,352.0381047608079) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 11479 (gamma,0.68389327451526[GeV]) at (-406.71457352861,-290.83200594061,428.61115956032) Original primary track ID 2 (unknown,2.8798399642419[GeV]) -Cell[11,7] 0.0021937963072371 [GeV] -Cell[13,28] 0.00088467612755464 [GeV] -Cell[12,28] 0.63223174405038 [GeV] -Cell[12,29] 0.03744087593714 [GeV] -Cell[17,41] 0.0067433996383277 [GeV] -Cell[11,28] 0.0019547705522757 [GeV] -Cell[12,30] 0.00051099891 [GeV] -Cell[12,27] 0.00051099891 [GeV] -Cell[11,29] 0.00051099891 [GeV] -Cell[4,2] 0.00049230905791017 [GeV] -Cell[14,43] 0.00041658518805702 [GeV] -### Total energy deposition in calorimeter by a source track in 11 cells : 0.68389115358889 (GeV) +Cell[11,29] 5.3359430166893e-06 [GeV] +Cell[10,28] 0.00014632734812083 [GeV] +Cell[11,31] 0.00030990424253774 [GeV] +Cell[12,28] 0.62823710588275 [GeV] +Cell[7,46] 0.00051099891 [GeV] +Cell[12,29] 0.020824014864098 [GeV] +Cell[12,27] 0.0061428577573116 [GeV] +Cell[11,28] 0.0070014860022603 [GeV] +Cell[12,30] 0.00098173412997177 [GeV] +Cell[11,0] 0.00068167763475125 [GeV] +Cell[12,41] 0.0010361529089485 [GeV] +Cell[12,45] 0.00067220025212791 [GeV] +Cell[10,47] 0.0017570894319071 [GeV] +Cell[18,12] 0.0069004457910691 [GeV] +Cell[15,47] 0.00017969938414008 [GeV] +Cell[11,27] 6.3877748152663e-06 [GeV] +Cell[11,26] 8.8821419024043e-07 [GeV] +Cell[13,9] 0.00051099891 [GeV] +### Total energy deposition in calorimeter by a source track in 18 cells : 0.67590530538202 (GeV) -Source track ID 6881 (gamma,0.00085587022965446[GeV]) at (110.77464150465,487.57458793452,953.74087328421) +Source track ID 11480 (gamma,0.23519569097121[GeV]) at (-263.70587761613,-424.80490829404,329.32742951014) Original primary track ID 2 (unknown,2.8798399642419[GeV]) -Cell[15,10] 0.00085587022965446 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00085587022965446 (GeV) +Cell[12,31] 0.0016401117023751 [GeV] +Cell[11,34] 0.00038948809279125 [GeV] +Cell[11,33] 1.9089465769953e-05 [GeV] +Cell[11,31] 0.21303797940614 [GeV] +Cell[11,32] 0.014663897831141 [GeV] +Cell[12,32] 0.0040936593379962 [GeV] +Cell[12,44] 0.00048702062534938 [GeV] +Cell[11,40] 0.00034353818285302 [GeV] +Cell[11,30] 0.00052090632678844 [GeV] +### Total energy deposition in calorimeter by a source track in 9 cells : 0.23519569097121 (GeV) -Source track ID 6876 (e-,0.026975571544253[GeV]) at (-266.59408761318,-422.99833622568,1032.3071360832) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999471492466e-08 mm long + and its vector is (1.208229605254019e-08,-9.075953499859679e-08,-4.020850496999628e-08) mm + Endpoint of ComputeStep() was (-606.112280972967,21.50257757287757,234.0372736751208) + and current position to locate is (-606.1122809608847,21.50257748211803,234.0372736349123) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000339419217e-07 mm long + and its vector is (-8.510505722369999e-08,5.2438622333284e-08,2.706826762732817e-09) mm + Endpoint of ComputeStep() was (-611.7908236007975,80.54378988686079,257.5630661398512) + and current position to locate is (-611.7908236859025,80.54378993929942,257.5630661425581) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000108533028e-07 mm long + and its vector is (7.551352609880269e-08,2.43162858737378e-08,-6.08804384683026e-08) mm + Endpoint of ComputeStep() was (-749.1611724194272,-35.46178018680892,468.9724472850292) + and current position to locate is (-749.1611723439137,-35.46178016249263,468.9724472241488) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998718444616e-08 mm long + and its vector is (5.063611752120778e-08,7.392039691467289e-08,-4.440445877662569e-08) mm + Endpoint of ComputeStep() was (-659.6807949556761,23.16081738502739,235.7152299943945) + and current position to locate is (-659.68079490504,23.16081745894779,235.7152299499901) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998727188352e-08 mm long + and its vector is (6.325149115582462e-08,7.253012768160261e-08,-2.717769120863522e-08) mm + Endpoint of ComputeStep() was (-640.5437719011034,110.4702509443748,403.7119383212368) + and current position to locate is (-640.5437718378519,110.4702510169049,403.7119382940591) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994849709827e-08 mm long + and its vector is (5.933168267802102e-08,1.876934163647093e-08,7.827804893167922e-08) mm + Endpoint of ComputeStep() was (-647.8367031998847,34.42220206357158,659.1209026139439) + and current position to locate is (-647.836703140553,34.42220208234092,659.120902692222) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997844866009e-08 mm long + and its vector is (9.59494173002895e-09,2.988424085970109e-08,9.494664254816598e-08) mm + Endpoint of ComputeStep() was (-750.0262320135229,-60.09733917153729,457.5530119196481) + and current position to locate is (-750.0262320039279,-60.09733914165304,457.5530120145947) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998928860123e-08 mm long + and its vector is (-5.444815087685129e-08,-2.309867142002986e-08,8.063403811320313e-08) mm + Endpoint of ComputeStep() was (-626.7375591605029,-27.89536864393315,447.2136196223762) + and current position to locate is (-626.737559214951,-27.89536866703182,447.2136197030102) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000342950778e-07 mm long + and its vector is (-5.881702236365527e-08,6.347498526793061e-08,5.011477810512588e-08) mm + Endpoint of ComputeStep() was (-992.190862483412,112.5099175901272,247.8994315689211) + and current position to locate is (-992.1908625422291,112.5099176536022,247.8994316190359) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999992456424279e-08 mm long + and its vector is (2.268359367008088e-08,-8.284166597150033e-08,-5.121228241478093e-08) mm + Endpoint of ComputeStep() was (608.058069517724,194.9797074673358,1197.924433408926) + and current position to locate is (608.0580695404076,194.9797073844941,1197.924433357714) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000308770771e-07 mm long + and its vector is (-9.772884368430823e-08,-3.890562538799713e-09,-2.083129402308259e-08) mm + Endpoint of ComputeStep() was (589.8672537026513,101.8554668206932,1272.125210865334) + and current position to locate is (589.8672536049224,101.8554668168026,1272.125210844503) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996860652162e-08 mm long + and its vector is (4.144567355979234e-08,1.142295502631896e-08,-9.028713066072669e-08) mm + Endpoint of ComputeStep() was (-1064.757628539907,59.33351992068778,554.4122328600863) + and current position to locate is (-1064.757628498462,59.33351993211073,554.4122327697992) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996455749439e-08 mm long + and its vector is (-2.242200025648344e-08,1.881187472463353e-08,9.562091918269289e-08) mm + Endpoint of ComputeStep() was (-721.4467803791376,71.93148379877405,497.8093429745248) + and current position to locate is (-721.4467804015596,71.93148381758593,497.8093430701458) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995478296614e-08 mm long + and its vector is (8.295342013298068e-08,-3.765367750929727e-08,4.124223096368951e-08) mm + Endpoint of ComputeStep() was (-532.3723652356603,-88.60315763266945,-275.1999469922038) + and current position to locate is (-532.3723651527068,-88.60315767032313,-275.1999469509615) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998677536103e-08 mm long + and its vector is (-9.581412996340077e-08,-1.328021426161285e-08,-2.536307874834165e-08) mm + Endpoint of ComputeStep() was (435.9724787877449,409.1417333826919,1141.665714676644) + and current position to locate is (435.9724786919307,409.1417333694117,1141.66571465128) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000196448195e-07 mm long + and its vector is (-4.579135293170111e-09,-8.545976015739143e-08,-5.172682904230896e-08) mm + Endpoint of ComputeStep() was (443.9234849642197,486.7416976797666,-846.9015487560423) + and current position to locate is (443.9234849596406,486.7416975943068,-846.9015488077691) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000250118475e-07 mm long + and its vector is (4.491857907851227e-08,-8.125061157215896e-08,-3.715729235409526e-08) mm + Endpoint of ComputeStep() was (-614.7162274832394,-39.82386295653799,465.4570960949989) + and current position to locate is (-614.7162274383209,-39.8238630377886,465.4570960578416) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999113511988e-08 mm long + and its vector is (-4.049047674925532e-08,-3.725407893284682e-08,-8.350241387233837e-08) mm + Endpoint of ComputeStep() was (-761.6001223146304,-16.76166968361475,275.1443277633975) + and current position to locate is (-761.6001223551209,-16.76166972086883,275.1443276798951) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000135974072e-07 mm long + and its vector is (-2.108185981342103e-08,9.151656854555767e-08,3.435513917793287e-08) mm + Endpoint of ComputeStep() was (-664.0022555841855,-64.27908652470612,263.3005560731401) + and current position to locate is (-664.0022556052674,-64.27908643318955,263.3005561074952) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999023815131e-08 mm long + and its vector is (6.27096596872434e-10,-8.404502693792892e-08,-5.418522164291062e-08) mm + Endpoint of ComputeStep() was (-722.0330543539005,107.5558851916616,195.9878284592185) + and current position to locate is (-722.0330543532734,107.5558851076166,195.9878284050333) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999220383022e-08 mm long + and its vector is (-3.443827090165996e-08,8.711845111974981e-08,3.499093281789101e-08) mm + Endpoint of ComputeStep() was (14.29703776594087,1199.91482802032,-506.6856009906834) + and current position to locate is (14.29703773150259,1199.914828107439,-506.6856009556925) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000173042906e-07 mm long + and its vector is (9.621373919799225e-09,-3.179729901603423e-08,9.432054071112361e-08) mm + Endpoint of ComputeStep() was (-324.0764133077516,1327.302985919777,-155.917276588601) + and current position to locate is (-324.0764132981302,1327.30298588798,-155.9172764942805) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000465956474e-07 mm long + and its vector is (4.741878001368605e-09,9.379937182529829e-08,3.433950723774615e-08) mm + Endpoint of ComputeStep() was (-211.3579708406504,1252.231789948469,-385.8742492432571) + and current position to locate is (-211.3579708359085,1252.231790042268,-385.8742492089176) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000322023227e-07 mm long + and its vector is (5.387778401200194e-08,-7.426910997310188e-08,-3.976543894168572e-08) mm + Endpoint of ComputeStep() was (-273.6235335288087,1116.973662220648,-127.8304507886481) + and current position to locate is (-273.6235334749309,1116.973662146379,-127.8304508284135) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999791582299e-08 mm long + and its vector is (2.126122922163631e-08,5.260312718746718e-08,8.234601978074352e-08) mm + Endpoint of ComputeStep() was (-141.2017841567443,1368.223235246662,-248.8210968818943) + and current position to locate is (-141.2017841354831,1368.223235299265,-248.8210967995483) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999729174011e-08 mm long + and its vector is (1.974052565856255e-08,5.510378286999185e-08,8.107946314339642e-08) mm + Endpoint of ComputeStep() was (-291.1055433486556,1614.733585586875,-308.9184456769962) + and current position to locate is (-291.1055433289151,1614.733585641978,-308.9184455959168) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995067810869e-08 mm long + and its vector is (8.130564310704358e-08,4.53994744020747e-08,-3.644544221970136e-08) mm + Endpoint of ComputeStep() was (-445.444174537421,1441.433086768094,-450.9332599761993) + and current position to locate is (-445.4441744561154,1441.433086813493,-450.9332600126448) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997483010429e-08 mm long + and its vector is (-5.841759787017509e-08,-4.609569259628188e-08,-6.680244268864044e-08) mm + Endpoint of ComputeStep() was (64.00762858683434,1322.358248089189,-399.9999999331976) + and current position to locate is (64.00762852841675,1322.358248043094,-400) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 11410 (proton,1.6978478999112[GeV]) at (-499.98316783684,4.1026674049973,254.92353191486) Original primary track ID 2 (unknown,2.8798399642419[GeV]) -Cell[15,31] 0.026464572634253 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.026464572634253 (GeV) +Cell[8,12] 0.0013686727710785 [GeV] +Cell[7,11] 2.6665748691812e-08 [GeV] +Cell[7,12] 0.0014543590602658 [GeV] +Cell[10,18] 7.4262093403377e-07 [GeV] +Cell[10,23] 1.2133542079482e-06 [GeV] +Cell[10,22] 0.00035265549419421 [GeV] +Cell[8,13] 0.023838627118296 [GeV] +Cell[9,12] 0.0029538304563422 [GeV] +Cell[8,14] 0.0017531875332597 [GeV] +Cell[7,14] 3.0511081649593e-05 [GeV] +Cell[7,13] 0.0029438881379162 [GeV] +Cell[9,25] 2.3623199740541e-07 [GeV] +Cell[15,6] 9.6570930371399e-05 [GeV] +Cell[13,25] 1.9685523002408e-06 [GeV] +Cell[11,27] 1.5280193852959e-05 [GeV] +Cell[11,26] 0.0018017610751058 [GeV] +Cell[11,23] 0.37981302467679 [GeV] +Cell[11,24] 0.0068020474180617 [GeV] +Cell[11,25] 0.00062538822210843 [GeV] +Cell[11,22] 0.0061987122584837 [GeV] +Cell[14,1] 1.3312154333107e-05 [GeV] +Cell[14,2] 2.2934512526263e-06 [GeV] +Cell[13,4] 1.8637691391632e-05 [GeV] +Cell[16,25] 4.4697335601086e-05 [GeV] +Cell[16,24] 0.0010446353986291 [GeV] +Cell[16,19] 3.5527755971998e-07 [GeV] +Cell[15,20] 2.1071337707099e-05 [GeV] +Cell[17,42] 3.926339559257e-09 [GeV] +Cell[16,34] 5.2311224862933e-09 [GeV] +Cell[16,35] 0.0037644160634619 [GeV] +Cell[16,36] 0.00043079060199591 [GeV] +Cell[14,3] 0.00018352699313152 [GeV] +Cell[12,23] 0.0094782356172324 [GeV] +Cell[12,24] 5.2780864521878e-05 [GeV] +Cell[11,21] 5.7414667971898e-05 [GeV] +Cell[12,22] 0.0036038281739212 [GeV] +Cell[13,23] 0.00026396034020024 [GeV] +Cell[16,0] 0.00042449281471654 [GeV] +Cell[16,47] 1.0622338025996e-06 [GeV] +Cell[16,1] 0.00027532533783938 [GeV] +Cell[15,1] 3.3344117582601e-09 [GeV] +Cell[15,2] 8.9786487933452e-10 [GeV] +Cell[11,4] 0.0024767405675031 [GeV] +Cell[11,5] 0.00020329271284629 [GeV] +Cell[8,25] 5.0487640351093e-08 [GeV] +Cell[12,25] 3.1877169094514e-06 [GeV] +Cell[3,14] 0.0015187304350954 [GeV] +Cell[15,5] 5.3058298590258e-09 [GeV] +Cell[16,37] 1.1094937537564e-05 [GeV] +Cell[16,38] 0.00023885490486134 [GeV] +Cell[12,11] 9.8334108770359e-06 [GeV] +Cell[12,13] 0.00065142563955283 [GeV] +Cell[5,5] 0.00053269803638091 [GeV] +Cell[5,6] 8.570537822834e-07 [GeV] +Cell[16,39] 0.00014394565036673 [GeV] +Cell[13,24] 0.0013868234178684 [GeV] +Cell[18,11] 0.0022767547238236 [GeV] +Cell[10,17] 5.0218734628288e-05 [GeV] +Cell[10,16] 2.0801413978916e-05 [GeV] +Cell[10,15] 6.3617679406889e-06 [GeV] +Cell[10,14] 0.00017891823107311 [GeV] +Cell[9,13] 0.0044687611487783 [GeV] +Cell[9,14] 0.0018210975646284 [GeV] +### Total energy deposition in calorimeter by a source track in 63 cells : 0.46573400745987 (GeV) -Source track ID 6877 (e+,0.20105594296674[GeV]) at (-268.82397237266,-421.584714948,329.69468131676) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999003718336e-08 mm long + and its vector is (8.990491551230662e-08,-4.005755727121141e-08,1.76775643012661e-08) mm + Endpoint of ComputeStep() was (-617.2919691290597,146.6817520696324,-393.0404384658418) + and current position to locate is (-617.2919690391548,146.6817520295749,-393.0404384481642) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999781864038e-08 mm long + and its vector is (-4.221931249048794e-08,9.065028194754632e-08,-2.273168320243713e-10) mm + Endpoint of ComputeStep() was (-520.567847758506,43.19145878147178,-274.3436311570327) + and current position to locate is (-520.5678478007253,43.19145887212206,-274.34363115726) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999166621233e-08 mm long + and its vector is (2.877504812204279e-08,9.434666026209015e-08,1.645304337216658e-08) mm + Endpoint of ComputeStep() was (-580.9928947793921,-544.7809772984851,-409.2784932771961) + and current position to locate is (-580.9928947506171,-544.7809772041385,-409.2784932607431) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000144474281e-07 mm long + and its vector is (-4.388533625387936e-08,7.973443416631198e-08,-4.143066689721309e-08) mm + Endpoint of ComputeStep() was (505.2251244512653,-344.8819872166344,-496.7297175313656) + and current position to locate is (505.22512440738,-344.8819871369,-496.7297175727963) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000040898838e-07 mm long + and its vector is (-1.837310037444695e-08,-9.517611943010706e-08,-2.457511527609313e-08) mm + Endpoint of ComputeStep() was (-488.9219505184385,-251.9034065576113,-831.9502696572803) + and current position to locate is (-488.9219505368116,-251.9034066527874,-831.9502696818554) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999864698373e-08 mm long + and its vector is (9.126324584940448e-09,-7.516422328990302e-08,6.532263796543702e-08) mm + Endpoint of ComputeStep() was (-440.2793224065354,452.2971633606514,-1455.175451545079) + and current position to locate is (-440.2793223974091,452.2971632854872,-1455.175451479756) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000107805466e-07 mm long + and its vector is (-6.538505203934619e-08,-5.897669552723528e-08,-4.739774794870755e-08) mm + Endpoint of ComputeStep() was (-448.2660498644235,-462.7576403708427,-168.1953151090976) + and current position to locate is (-448.2660499298086,-462.7576404298194,-168.1953151564954) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996149907372e-08 mm long + and its vector is (9.229887609762955e-08,2.533505494284327e-08,2.896626938309055e-08) mm + Endpoint of ComputeStep() was (365.2415726565155,418.2351817204398,1047.665808980151) + and current position to locate is (365.2415727488143,418.2351817457748,1047.665809009117) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000256619593e-07 mm long + and its vector is (-7.638209353899583e-08,-6.388756901287707e-08,-9.173845683108084e-09) mm + Endpoint of ComputeStep() was (552.6760981312502,207.6754956010208,-805.4998374523093) + and current position to locate is (552.6760980548681,207.6754955371333,-805.4998374614831) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000097083138e-07 mm long + and its vector is (-6.538027719216188e-08,-7.374217148026219e-08,-1.695622131592245e-08) mm + Endpoint of ComputeStep() was (-352.9113156700595,-571.5987266198164,-313.6750818496466) + and current position to locate is (-352.9113157354398,-571.5987266935585,-313.6750818666029) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000252168975e-07 mm long + and its vector is (6.06527237323462e-08,7.868050033721374e-08,-1.142939254350495e-08) mm + Endpoint of ComputeStep() was (-153.8154033728802,-574.0469002266107,-531.2267938068097) + and current position to locate is (-153.8154033122275,-574.0469001479302,-531.2267938182391) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000104116273e-07 mm long + and its vector is (6.879264446979505e-08,7.033958127067308e-08,1.788623649190413e-08) mm + Endpoint of ComputeStep() was (-492.4220433943539,-416.8088011909255,229.738775037383) + and current position to locate is (-492.4220433255613,-416.8088011205859,229.7387750552692) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996647870281e-08 mm long + and its vector is (7.335324880841654e-08,6.602812163691851e-08,1.611152811165084e-08) mm + Endpoint of ComputeStep() was (-524.8724225601884,-380.1007709125277,213.3165434619353) + and current position to locate is (-524.8724224868351,-380.1007708464995,213.3165434780468) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997692307268e-08 mm long + and its vector is (4.940375220030546e-08,2.022204625973245e-08,8.455964461973053e-08) mm + Endpoint of ComputeStep() was (-439.8428181631348,-420.9873751874057,317.2032523175363) + and current position to locate is (-439.8428181137311,-420.9873751671836,317.203252402096) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998042734655e-08 mm long + and its vector is (-1.852100695032277e-08,3.235663825762458e-08,-9.279017376684351e-08) mm + Endpoint of ComputeStep() was (-479.1546941232281,-515.9830915208643,200.0000000927902) + and current position to locate is (-479.1546941417491,-515.9830914885076,200) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000014782267e-07 mm long + and its vector is (-9.330165084975306e-08,-3.580868224162259e-08,-3.541259729900048e-09) mm + Endpoint of ComputeStep() was (-706.6884651819937,-330.1384755268673,170.3597776671371) + and current position to locate is (-706.6884652752954,-330.138475562676,170.3597776635958) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999587727277e-08 mm long + and its vector is (-5.489988552653813e-08,-4.793105290445965e-08,-6.847346867289161e-08) mm + Endpoint of ComputeStep() was (404.2275028351688,372.9612929404077,-536.1361242702304) + and current position to locate is (404.2275027802689,372.9612928924766,-536.1361243387039) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997815066069e-08 mm long + and its vector is (-2.95437416752975e-08,-7.226628895296017e-08,6.248797035368625e-08) mm + Endpoint of ComputeStep() was (417.919621366277,274.4871402114013,-612.471900979764) + and current position to locate is (417.9196213367333,274.487140139135,-612.471900917276) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996770758341e-08 mm long + and its vector is (-2.914731567216222e-08,-4.873822945228312e-08,-8.231046422224608e-08) mm + Endpoint of ComputeStep() was (-266.5805895402904,566.5196227394243,-482.841228631945) + and current position to locate is (-266.5805895694377,566.5196226906861,-482.8412287142555) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000045773226e-07 mm long + and its vector is (8.34868387755705e-08,5.468768904393073e-08,-6.261416274355724e-09) mm + Endpoint of ComputeStep() was (-489.8055729340674,100.4514847751277,1609.573109497301) + and current position to locate is (-489.8055728505805,100.4514848298154,1609.57310949104) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999377772024e-08 mm long + and its vector is (4.962566890753806e-08,5.124724111738033e-08,-7.007861313468311e-08) mm + Endpoint of ComputeStep() was (-490.8536968601866,-220.363785126578,1523.409306136279) + and current position to locate is (-490.8536968105609,-220.3637850753308,1523.4093060662) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000084227817e-07 mm long + and its vector is (4.311141310608946e-08,-2.507619001335115e-08,-8.667529982631095e-08) mm + Endpoint of ComputeStep() was (-531.6580721081964,-208.731538529138,-1333.215464021739) + and current position to locate is (-531.658072065085,-208.7315385542142,-1333.215464108414) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000050733239e-07 mm long + and its vector is (-9.741535222929087e-08,8.736492418393027e-09,-2.083083927573171e-08) mm + Endpoint of ComputeStep() was (-292.0409688695187,-444.0044327324275,-240.9607093741006) + and current position to locate is (-292.0409689669341,-444.004432723691,-240.9607093949315) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999544272127e-08 mm long + and its vector is (4.596540748025291e-08,-2.965012768640918e-08,-8.371409876417601e-08) mm + Endpoint of ComputeStep() was (-649.6690835667201,-20.73841643117596,-311.666429450944) + and current position to locate is (-649.6690835207547,-20.73841646082608,-311.6664295346581) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999839382849e-08 mm long + and its vector is (-4.92077560920734e-08,-3.110471880063415e-08,8.130862738653377e-08) mm + Endpoint of ComputeStep() was (461.4205907269184,-273.0907210322902,115.2657621499455) + and current position to locate is (461.4205906777107,-273.0907210633949,115.2657622312541) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995557618747e-08 mm long + and its vector is (-2.518737574064289e-08,8.739050372241763e-08,4.157507760282897e-08) mm + Endpoint of ComputeStep() was (-158.0564796661424,526.7999137580697,192.8212728853183) + and current position to locate is (-158.0564796913298,526.7999138454602,192.8212729268934) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999483015011e-08 mm long + and its vector is (-3.556880301402998e-08,-9.083237273443956e-09,9.301803061134706e-08) mm + Endpoint of ComputeStep() was (309.1130325056188,548.9527604149034,34.00760465885129) + and current position to locate is (309.11303247005,548.9527604058202,34.00760475186932) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000045528938e-07 mm long + and its vector is (4.514626139595634e-08,-1.224293555424083e-08,8.838514986564405e-08) mm + Endpoint of ComputeStep() was (2.506614829504767,-569.063628161278,-1840.425167046875) + and current position to locate is (2.506614874651028,-569.0636281735209,-1840.42516695849) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999555887283e-08 mm long + and its vector is (2.066224169539055e-08,1.458596443626448e-08,-9.674874945631018e-08) mm + Endpoint of ComputeStep() was (585.3101192168363,-129.7898137043105,-918.7759496365792) + and current position to locate is (585.3101192374985,-129.7898136897245,-918.7759497333279) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000036113348e-07 mm long + and its vector is (2.578497060312657e-08,-9.639686027185235e-08,6.540744834637735e-09) mm + Endpoint of ComputeStep() was (-526.7823915578919,218.2004110883295,-468.2331856706241) + and current position to locate is (-526.7823915321069,218.2004109919326,-468.2331856640834) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998442817214e-08 mm long + and its vector is (4.273465492588002e-08,-8.264495576781883e-08,3.665456915769028e-08) mm + Endpoint of ComputeStep() was (-498.992206168423,-31.72976868138179,-564.8729055132496) + and current position to locate is (-498.9922061256883,-31.72976876402674,-564.8729054765951) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998291843696e-08 mm long + and its vector is (6.138827757240506e-08,7.702738002990372e-08,1.727016751829069e-08) mm + Endpoint of ComputeStep() was (-565.5596159170585,-321.8275733559735,-1140.096582323438) + and current position to locate is (-565.5596158556702,-321.8275732789461,-1140.096582306168) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998521116549e-08 mm long + and its vector is (4.200518333163927e-08,-7.449568784068106e-08,5.182619133847766e-08) mm + Endpoint of ComputeStep() was (-362.5370925986132,-465.6059587106032,-329.4370681983469) + and current position to locate is (-362.5370925566081,-465.6059587850989,-329.4370681465207) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999853221564e-08 mm long + and its vector is (-7.843351568226353e-08,-1.247559566763812e-08,-6.07662968832301e-08) mm + Endpoint of ComputeStep() was (-475.5963653562036,-486.7758747813836,-522.4961447159847) + and current position to locate is (-475.5963654346371,-486.7758747938592,-522.496144776751) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000275096129e-07 mm long + and its vector is (7.80680693424074e-08,6.189532086864347e-08,8.62272031554312e-09) mm + Endpoint of ComputeStep() was (-405.6255753098604,-606.9331864324196,-142.0161387943552) + and current position to locate is (-405.6255752317923,-606.9331863705243,-142.0161387857325) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000345191425e-07 mm long + and its vector is (9.104201126319822e-08,1.089387069441727e-08,-3.990842856183008e-08) mm + Endpoint of ComputeStep() was (-837.0901846933887,-509.5880913576298,-143.1381122617806) + and current position to locate is (-837.0901846023467,-509.588091346736,-143.1381123016891) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 11411 (anti_proton,1.0354603404155[GeV]) at (-256.00478387639,-429.48987256093,-285.72724259827) Original primary track ID 2 (unknown,2.8798399642419[GeV]) -Cell[13,26] 0.00012420981277237 [GeV] -Cell[12,31] 0.004692793002412 [GeV] -Cell[11,31] 0.192800814983 [GeV] -Cell[11,32] 0.0022570550578526 [GeV] -Cell[15,8] 0.0013052799234736 [GeV] -### Total energy deposition in calorimeter by a source track in 5 cells : 0.20118015277951 (GeV) +Cell[7,32] 0.0059313465436257 [GeV] +Cell[9,8] 1.2289525752749e-05 [GeV] +Cell[10,37] 2.4484179448336e-09 [GeV] +Cell[8,33] 0.0044008723859441 [GeV] +Cell[9,7] 1.849067192552e-06 [GeV] +Cell[10,18] 7.5425873069776e-05 [GeV] +Cell[8,28] 0.0054931637160923 [GeV] +Cell[6,2] 0.00011325946863849 [GeV] +Cell[7,6] 0.00033883649215306 [GeV] +Cell[7,26] 0.0030808760867609 [GeV] +Cell[8,23] 5.4141983810041e-08 [GeV] +Cell[7,5] 4.2042539280374e-07 [GeV] +Cell[7,20] 4.205503500998e-11 [GeV] +Cell[8,35] 0.0002976884968175 [GeV] +Cell[8,36] 0.0013857765721968 [GeV] +Cell[5,2] 0.00029586095298384 [GeV] +Cell[7,33] 0.000356666671982 [GeV] +Cell[7,34] 1.6140472070788e-05 [GeV] +Cell[8,14] 1.9360060656368e-05 [GeV] +Cell[8,34] 0.00088748932590715 [GeV] +Cell[7,14] 0.00020689113105152 [GeV] +Cell[8,39] 1.9906357716536e-05 [GeV] +Cell[11,29] 0.0022954833930063 [GeV] +Cell[9,25] 8.9313451317139e-06 [GeV] +Cell[13,30] 1.5094556147233e-08 [GeV] +Cell[10,31] 1.5334638951572e-06 [GeV] +Cell[10,28] 2.9697765654419e-05 [GeV] +Cell[15,6] 2.8222640469266e-07 [GeV] +Cell[11,28] 0.00067353543829506 [GeV] +Cell[11,27] 7.2373029137452e-05 [GeV] +Cell[11,23] 0.0016319949058276 [GeV] +Cell[8,25] 0.018693149175254 [GeV] +Cell[15,5] 0.0019485369007069 [GeV] +Cell[10,17] 0.0004170205439317 [GeV] +Cell[10,15] 2.9464827239281e-05 [GeV] +Cell[10,14] 2.9748189263046e-05 [GeV] +Cell[8,31] 0.53871973261171 [GeV] +Cell[8,32] 0.42450148918227 [GeV] +Cell[2,10] 4.1488849092275e-06 [GeV] +Cell[6,29] 3.9399652450811e-06 [GeV] +Cell[4,18] 6.7739725927822e-06 [GeV] +Cell[8,26] 0.062232797251615 [GeV] +Cell[8,22] 0.00015749004389022 [GeV] +Cell[8,21] 0.00067997490708547 [GeV] +Cell[8,24] 0.20810495795031 [GeV] +Cell[15,10] 2.5942921638489e-08 [GeV] +Cell[15,21] 1.5183258599336e-06 [GeV] +Cell[15,22] 1.6904571907617e-08 [GeV] +Cell[8,27] 0.00019574408561118 [GeV] +Cell[8,29] 0.0022461801354702 [GeV] +Cell[7,29] 6.1329114942055e-10 [GeV] +Cell[6,12] 0.00098139958205502 [GeV] +Cell[6,11] 0.00082197267298943 [GeV] +Cell[7,42] 0.00052694091243393 [GeV] +Cell[7,43] 0.0020114549169826 [GeV] +Cell[7,44] 2.9161776183173e-08 [GeV] +Cell[9,31] 0.02181945328749 [GeV] +Cell[8,30] 0.037722724699442 [GeV] +Cell[7,31] 0.00038302170563724 [GeV] +Cell[0,0] 1.7703301331494e-05 [GeV] +Cell[5,30] 0.00015540900956148 [GeV] +Cell[5,29] 0.0007642497396522 [GeV] +Cell[5,28] 1.8044809999083e-06 [GeV] +Cell[6,28] 2.7766014682129e-08 [GeV] +Cell[6,27] 1.7773360013962e-08 [GeV] +Cell[5,27] 6.5507462738879e-06 [GeV] +Cell[5,26] 4.356843419373e-10 [GeV] +Cell[5,12] 0.00010311825146414 [GeV] +Cell[5,3] 0.00099491626138888 [GeV] +Cell[6,3] 3.889385896764e-05 [GeV] +Cell[2,19] 9.4846705906093e-08 [GeV] +Cell[2,18] 3.5415415914031e-06 [GeV] +Cell[2,17] 3.8696174863162e-07 [GeV] +Cell[0,6] 8.003445261329e-05 [GeV] +Cell[9,30] 0.0065126057148307 [GeV] +Cell[14,5] 0.00060682502089215 [GeV] +Cell[15,3] 9.6344268822577e-06 [GeV] +Cell[5,1] 1.6127865819726e-08 [GeV] +Cell[7,30] 0.0090511033334256 [GeV] +Cell[6,39] 0.0010666146739886 [GeV] +Cell[3,9] 0.0019395913871447 [GeV] +Cell[10,29] 0.0084340890154859 [GeV] +Cell[10,30] 4.9421626044932e-09 [GeV] +Cell[10,27] 0.0016094075562401 [GeV] +Cell[6,5] 0.0031706744422256 [GeV] +Cell[9,29] 0.0029364335095281 [GeV] +Cell[10,20] 1.0447548411321e-06 [GeV] +Cell[8,15] 6.4182183023149e-05 [GeV] +Cell[7,15] 1.4770318518913e-06 [GeV] +Cell[17,10] 1.9890468684025e-07 [GeV] +Cell[17,9] 3.9633832283243e-06 [GeV] +Cell[19,16] 0.00058410178555073 [GeV] +Cell[13,45] 2.9922841349617e-07 [GeV] +Cell[17,26] 1.273410202316e-05 [GeV] +Cell[17,27] 5.3261265759375e-07 [GeV] +Cell[14,12] 0.00056842430410666 [GeV] +Cell[14,13] 0.0011105523605883 [GeV] +Cell[14,14] 7.8549252293669e-09 [GeV] +Cell[14,15] 1.3991141258884e-09 [GeV] +Cell[6,41] 2.1520267219103e-05 [GeV] +Cell[6,40] 3.0862225779288e-05 [GeV] +Cell[7,36] 0.0018491539412238 [GeV] +Cell[7,37] 0.00022034929125005 [GeV] +Cell[3,27] 6.3286647230143e-07 [GeV] +Cell[3,26] 4.8312358558178e-12 [GeV] +Cell[1,24] 0.00032730903254292 [GeV] +Cell[2,13] 0.0022423522275272 [GeV] +Cell[10,13] 0.0001190696010359 [GeV] +Cell[4,40] 0.00070175393948766 [GeV] +Cell[9,26] 6.7062156740576e-06 [GeV] +Cell[10,44] 0.00029056096242846 [GeV] +Cell[10,43] 1.7632688285403e-06 [GeV] +Cell[6,26] 0.00073783449498018 [GeV] +Cell[10,26] 4.5424868003465e-06 [GeV] +Cell[11,38] 1.6285801248159e-06 [GeV] +Cell[9,37] 1.3793996768072e-06 [GeV] +Cell[11,13] 2.1029969980759e-05 [GeV] +Cell[11,14] 1.2980308383703e-11 [GeV] +Cell[10,7] 0.0031611974711355 [GeV] +Cell[10,8] 0.00022543329010717 [GeV] +Cell[8,17] 0.00086090213865657 [GeV] +Cell[8,16] 0.00048744838885648 [GeV] +Cell[1,35] 2.1028824266978e-07 [GeV] +Cell[0,35] 1.1290578861463e-06 [GeV] +Cell[1,36] 1.9299707491882e-07 [GeV] +Cell[0,36] 9.9153315590002e-06 [GeV] +Cell[6,46] 3.2184593292186e-05 [GeV] +Cell[6,45] 1.4342307433253e-05 [GeV] +Cell[5,46] 0.0045543105308295 [GeV] +Cell[5,47] 2.1661325536229e-05 [GeV] +Cell[11,15] 8.1689999788068e-06 [GeV] +Cell[7,21] 3.3135257808681e-09 [GeV] +Cell[3,43] 1.4831721258815e-05 [GeV] +Cell[3,44] 5.7645159831736e-06 [GeV] +Cell[9,42] 2.4898725561798e-05 [GeV] +Cell[5,16] 1.0752286412753e-05 [GeV] +Cell[4,26] 0.00091246051155974 [GeV] +Cell[4,27] 1.7333480482193e-05 [GeV] +Cell[9,27] 1.2836826499552e-09 [GeV] +Cell[9,28] 0.00037273037191574 [GeV] +### Total energy deposition in calorimeter by a source track in 140 cells : 1.4070533214758 (GeV) -Source track ID 6782 (proton,1.6969542581114[GeV]) at (-499.98847759055,3.3944479210695,256.83354770657) +Source track ID 11434 (gamma,0.37133215847831[GeV]) at (-133.93656835199,-481.72709666168,181.68248152971) Original primary track ID 2 (unknown,2.8798399642419[GeV]) -Cell[12,24] 0.0048122109899531 [GeV] -Cell[12,31] 3.3496879041195e-08 [GeV] -Cell[11,21] 0.0021541275746064 [GeV] -Cell[12,32] 1.1212038867825e-06 [GeV] -Cell[11,23] 0.44868491822595 [GeV] -Cell[11,24] 0.040426620116579 [GeV] -Cell[10,22] 0.0012819733913809 [GeV] -Cell[11,22] 0.010348814388922 [GeV] -Cell[10,21] 0.0005883599220502 [GeV] -Cell[12,25] 0.00053452915489845 [GeV] -Cell[12,23] 0.0038810311154604 [GeV] -Cell[11,20] 4.3686135686926e-05 [GeV] -Cell[11,19] 3.3936886264883e-06 [GeV] -Cell[12,20] 6.3155312091112e-12 [GeV] -Cell[12,11] 0.00028876152736302 [GeV] -Cell[12,10] 2.8712806852127e-09 [GeV] -Cell[12,22] 0.0081741056901195 [GeV] -Cell[11,3] 2.04928801395e-08 [GeV] -Cell[10,23] 0.0014026327291766 [GeV] -Cell[11,25] 0.010062487783982 [GeV] -Cell[11,37] 0.0022248490643656 [GeV] -Cell[11,36] 0.004203924145851 [GeV] -Cell[11,35] 1.1062838893849e-09 [GeV] -Cell[10,25] 4.1841539146844e-05 [GeV] -Cell[10,24] 0.0097438020345901 [GeV] -Cell[10,20] 6.0218250218213e-05 [GeV] -Cell[10,19] 0.0012524153753504 [GeV] -Cell[12,26] 0.0001675710170116 [GeV] -Cell[11,26] 4.8708898248151e-09 [GeV] -Cell[13,22] 0.0015356418536148 [GeV] -Cell[13,21] 0.0047340144068742 [GeV] -Cell[12,21] 0.00075991277469632 [GeV] -Cell[14,22] 0.00021951004550215 [GeV] -Cell[14,21] 1.4056464465284e-08 [GeV] -Cell[9,23] 2.5630627192186e-08 [GeV] -Cell[9,25] 0.0061944391897863 [GeV] -Cell[9,24] 0.0015782640348792 [GeV] -### Total energy deposition in calorimeter by a source track in 37 cells : 0.56540527990215 (GeV) +Cell[11,34] 0.0072815502667066 [GeV] +Cell[11,33] 0.10638216065741 [GeV] +Cell[10,32] 0.0028824739801775 [GeV] +Cell[10,33] 0.23989440847381 [GeV] +Cell[10,34] 0.014891565100211 [GeV] +### Total energy deposition in calorimeter by a source track in 5 cells : 0.37133215847831 (GeV) -Source track ID 6783 (anti_proton,1.035686787016[GeV]) at (-278.02848286974,-415.57209087372,-334.74161876594) +Source track ID 11435 (gamma,0.136782797126[GeV]) at (-378.97237038013,-326.15938203348,68.392649195003) Original primary track ID 2 (unknown,2.8798399642419[GeV]) -Cell[8,10] 6.685944686069e-07 [GeV] -Cell[7,10] 0.0018852284179252 [GeV] -Cell[9,9] 6.926858532097e-08 [GeV] -Cell[7,11] 0.00076395744593083 [GeV] -Cell[6,34] 2.3872462942336e-06 [GeV] -Cell[7,34] 0.010401674373828 [GeV] -Cell[7,35] 0.0012426102848732 [GeV] -Cell[7,33] 0.045283475912496 [GeV] -Cell[7,32] 0.1275760619781 [GeV] -Cell[6,35] 5.038765548079e-06 [GeV] -Cell[9,10] 0.0015049442368199 [GeV] -Cell[7,7] 5.3866066155024e-06 [GeV] -Cell[9,32] 0.003805302689399 [GeV] -Cell[9,11] 4.6179647848476e-05 [GeV] -Cell[8,35] 0.00065009984326105 [GeV] -Cell[11,30] 4.2404207575601e-05 [GeV] -Cell[7,30] 0.19694183149385 [GeV] -Cell[12,24] 0.0050419931472166 [GeV] -Cell[9,47] 0.00081865615625911 [GeV] -Cell[7,13] 0.00011230883930693 [GeV] -Cell[7,47] 0.00037832129317286 [GeV] -Cell[12,31] 0.005745048042694 [GeV] -Cell[7,6] 3.5757434488914e-09 [GeV] -Cell[9,31] 3.3886068819129e-06 [GeV] -Cell[12,32] 0.00075088245461302 [GeV] -Cell[13,31] 0.0047312906512825 [GeV] -Cell[15,41] 0.0014704188588078 [GeV] -Cell[13,27] 0.0014042187172072 [GeV] -Cell[13,28] 0.050837644402415 [GeV] -Cell[14,26] 0.00040573763126629 [GeV] -Cell[13,25] 0.00046071311861817 [GeV] -Cell[13,8] 2.0473917451454e-05 [GeV] -Cell[15,44] 4.2866006260738e-06 [GeV] -Cell[12,28] 0.00053470749288988 [GeV] -Cell[12,29] 8.2779452496993e-05 [GeV] -Cell[11,28] 0.00018506151803558 [GeV] -Cell[12,30] 3.6690409410767e-07 [GeV] -Cell[12,27] 0.00038558399649332 [GeV] -Cell[11,23] 1.3050290552201e-05 [GeV] -Cell[11,24] 0.0034001000077884 [GeV] -Cell[12,25] 0.087993397468343 [GeV] -Cell[12,23] 3.1325513060438e-05 [GeV] -Cell[11,25] 0.0038699100292832 [GeV] -Cell[11,36] 0.00066915714070592 [GeV] -Cell[11,35] 0.00010596858896611 [GeV] -Cell[10,25] 0.0044649878126419 [GeV] -Cell[10,24] 0.00045457281220479 [GeV] -Cell[10,20] 0.0019591699013646 [GeV] -Cell[12,26] 0.0018013335280611 [GeV] -Cell[11,26] 3.4852377188145e-05 [GeV] -Cell[8,31] 0.32925264306951 [GeV] -Cell[7,31] 0.023570298447995 [GeV] -Cell[12,3] 0.00010784859481464 [GeV] -Cell[10,17] 0.00094408003841693 [GeV] -Cell[10,18] 2.2506854293169e-08 [GeV] -Cell[10,26] 0.039858087565602 [GeV] -Cell[15,40] 0.00017098337773712 [GeV] -Cell[15,42] 1.7742771410667e-07 [GeV] -Cell[14,42] 4.642107876407e-08 [GeV] -Cell[10,35] 0.00022309462347096 [GeV] -Cell[10,36] 0.0012508638347264 [GeV] -Cell[9,18] 1.9092720214758e-05 [GeV] -Cell[9,17] 0.00093591879784844 [GeV] -Cell[9,19] 0.00061519101530303 [GeV] -Cell[9,29] 1.1445941344959e-05 [GeV] -Cell[10,29] 4.1748108860702e-06 [GeV] -Cell[10,30] 3.7545146483353e-08 [GeV] -Cell[11,27] 0.0010686519456003 [GeV] -Cell[14,41] 2.7603931957856e-06 [GeV] -Cell[18,16] 0.00023251796195359 [GeV] -Cell[17,16] 1.2193535667393e-08 [GeV] -Cell[17,15] 4.3044565245509e-11 [GeV] -Cell[14,35] 2.5770781183382e-05 [GeV] -Cell[12,37] 9.3628173252e-05 [GeV] -Cell[12,36] 2.7387868613005e-07 [GeV] -Cell[14,3] 0.00044925347661402 [GeV] -Cell[6,6] 0.0083560099346975 [GeV] -Cell[5,9] 0.0019540657950097 [GeV] -Cell[5,8] 0.00064602518973834 [GeV] -Cell[5,7] 3.6290561979513e-08 [GeV] -Cell[5,10] 2.1485473098437e-08 [GeV] -Cell[4,9] 0.0012505263564585 [GeV] -Cell[4,8] 9.7369326149874e-05 [GeV] -Cell[4,7] 3.0016417440493e-10 [GeV] -Cell[6,5] 0.011306603813049 [GeV] -Cell[13,24] 6.9083128960301e-06 [GeV] -Cell[8,32] 0.00917307824845 [GeV] -Cell[13,29] 0.011208276366099 [GeV] -Cell[14,28] 0.12909877390913 [GeV] -Cell[15,23] 6.3038034422789e-06 [GeV] -Cell[15,0] 1.4370865392266e-05 [GeV] -Cell[16,0] 0.00052459402527995 [GeV] -Cell[16,1] 8.3389117173738e-07 [GeV] -Cell[11,11] 3.4347169275861e-06 [GeV] -Cell[10,11] 4.373543174006e-05 [GeV] -Cell[10,9] 6.0676676074422e-05 [GeV] -Cell[10,10] 0.00069555123982173 [GeV] -Cell[0,40] 7.273551034109e-05 [GeV] -Cell[15,12] 0.00030211298422034 [GeV] -Cell[16,12] 2.2249296307564e-09 [GeV] -Cell[15,11] 1.4448963213454e-07 [GeV] -Cell[14,27] 0.0017990840561241 [GeV] -Cell[15,27] 1.6880221664906e-12 [GeV] -Cell[13,30] 0.00051794255023356 [GeV] -Cell[11,2] 0.0011880282549072 [GeV] -Cell[15,7] 0.0019879454989391 [GeV] -Cell[8,33] 0.066037062010644 [GeV] -Cell[7,28] 0.00074619168084882 [GeV] -Cell[8,29] 1.8656641215784e-05 [GeV] -Cell[8,28] 0.0011429139437114 [GeV] -Cell[7,29] 0.001166751314896 [GeV] -Cell[8,30] 0.0056425854756519 [GeV] -Cell[6,33] 2.5952693931686e-09 [GeV] -Cell[6,32] 2.2309833639156e-08 [GeV] -Cell[6,40] 0.00019326442131182 [GeV] -Cell[7,40] 2.6690846907513e-06 [GeV] -Cell[6,19] 1.3715895113364e-07 [GeV] -Cell[3,3] 6.5781534911366e-05 [GeV] -Cell[0,41] 0.0042020691061643 [GeV] -Cell[3,29] 0.00082858772621717 [GeV] -Cell[0,42] 0.00051099891 [GeV] -Cell[8,34] 0.019157170566436 [GeV] -Cell[7,36] 0.00067746645745513 [GeV] -Cell[6,14] 0.00097075440633398 [GeV] -Cell[6,13] 0.0044204777886359 [GeV] -Cell[6,12] 1.6420235187979e-05 [GeV] -Cell[9,21] 0.0073133471096628 [GeV] -Cell[9,20] 0.0024621902334966 [GeV] -### Total energy deposition in calorimeter by a source track in 128 cells : 1.2630566197072 (GeV) +Cell[10,28] 0.007845122713144 [GeV] +Cell[10,29] 0.12700320437129 [GeV] +Cell[10,30] 0.00082079304362834 [GeV] +Cell[10,27] 0.00043432714522072 [GeV] +Cell[9,26] 0.00046957686220735 [GeV] +Cell[10,26] 0.00020977299051096 [GeV] +### Total energy deposition in calorimeter by a source track in 6 cells : 0.136782797126 (GeV) -Source track ID 6816 (gamma,0.37133215847831[GeV]) at (-133.93655784029,-481.72709958429,181.68248477741) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.0000000615128e-07 mm long + and its vector is (3.044345930902637e-08,-9.51126821746584e-08,-5.174427997189923e-09) mm + Endpoint of ComputeStep() was (-361.2084287009616,-447.0724246214083,207.0939818028157) + and current position to locate is (-361.2084286705182,-447.072424716521,207.0939817976413) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000102298617e-07 mm long + and its vector is (-1.995948650801438e-08,-6.34480556982453e-08,7.467238560820988e-08) mm + Endpoint of ComputeStep() was (-411.4142325326449,-424.7758481470177,227.7106073665192) + and current position to locate is (-411.4142325526044,-424.7758482104658,227.7106074411916) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000177947787e-07 mm long + and its vector is (-2.741961679930682e-08,-9.18591922527412e-08,2.846149982360657e-08) mm + Endpoint of ComputeStep() was (401.7867562423299,-554.3517801771794,1082.296647822162) + and current position to locate is (401.7867562149103,-554.3517802690386,1082.296647850624) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000026017668e-07 mm long + and its vector is (1.730313670122996e-09,9.304631731765767e-08,3.659766889541061e-08) mm + Endpoint of ComputeStep() was (-635.8159911850851,-55.82901646499644,96.94847552010732) + and current position to locate is (-635.8159911833548,-55.82901637195012,96.94847555670499) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998843297383e-08 mm long + and its vector is (6.969798960199114e-09,5.021666993343388e-08,8.619574032309174e-08) mm + Endpoint of ComputeStep() was (641.4921758048316,298.9752842292658,253.0091837575356) + and current position to locate is (641.4921758118014,298.9752842794825,253.0091838437313) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999885035e-08 mm long + and its vector is (1.574517227709293e-08,9.831235558976914e-08,9.315044735558331e-09) mm + Endpoint of ComputeStep() was (541.0863987595235,98.61799552323218,-1092.116912625264) + and current position to locate is (541.0863987752687,98.61799562154454,-1092.116912615949) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 11414 (pi+,0.39414948597188[GeV]) at (-475.83484260204,-153.56172233305,236.57774931074) Original primary track ID 2 (unknown,2.8798399642419[GeV]) -Cell[11,45] 0.00042000721720029 [GeV] -Cell[11,21] 0.00010989534631169 [GeV] -Cell[11,32] 0.0027005488986125 [GeV] -Cell[10,25] 0.00013137170608465 [GeV] -Cell[10,24] 0.00060974364385897 [GeV] -Cell[10,33] 0.2883576489161 [GeV] -Cell[10,34] 0.039967490030446 [GeV] -Cell[11,33] 0.013062669813297 [GeV] -Cell[11,34] 0.023518334728897 [GeV] -Cell[12,7] 0.0010825675166469 [GeV] -Cell[10,32] 0.00030494869735458 [GeV] -Cell[9,15] 0.00075853050485438 [GeV] -### Total energy deposition in calorimeter by a source track in 12 cells : 0.37102375701966 (GeV) +Cell[10,23] 1.6903942946556e-07 [GeV] +Cell[11,33] 3.8662659790134e-05 [GeV] +Cell[11,29] 0.00022118426677912 [GeV] +Cell[5,25] 2.1139957010746e-05 [GeV] +Cell[11,3] 0.0004083303766871 [GeV] +Cell[10,31] 6.0883189435117e-06 [GeV] +Cell[10,25] 0.0013652425237922 [GeV] +Cell[11,31] 0.00080393426539206 [GeV] +Cell[11,32] 0.00010346155372099 [GeV] +Cell[14,11] 4.1859171353281e-05 [GeV] +Cell[11,0] 3.6492568906397e-06 [GeV] +Cell[11,27] 0.0013093363323861 [GeV] +Cell[11,26] 0.096598636649517 [GeV] +Cell[11,30] 4.664817050741e-05 [GeV] +Cell[11,25] 0.0010045094903063 [GeV] +Cell[12,13] 1.3554538600147e-07 [GeV] +Cell[10,29] 1.6109774998085e-05 [GeV] +Cell[10,30] 5.4271703850759e-05 [GeV] +Cell[6,5] 8.8195105400928e-06 [GeV] +Cell[10,44] 0.00023413167660059 [GeV] +Cell[10,26] 0.05504512893434 [GeV] +Cell[11,13] 2.5762387667783e-07 [GeV] +Cell[10,33] 0.0025918808621331 [GeV] +Cell[10,34] 0.00028374299370682 [GeV] +Cell[12,19] 5.5103461199906e-06 [GeV] +Cell[9,24] 0.00037946311127836 [GeV] +Cell[15,40] 0.0015977762612851 [GeV] +Cell[15,39] 1.7098901253121e-08 [GeV] +Cell[11,47] 0.00055454007035246 [GeV] +Cell[6,16] 7.9314553033328e-05 [GeV] +Cell[6,34] 4.1790994728217e-05 [GeV] +Cell[12,12] 1.6997012426145e-07 [GeV] +Cell[6,6] 1.6487448010594e-07 [GeV] +Cell[6,4] 2.395868068561e-08 [GeV] +Cell[10,24] 0.00029206860471072 [GeV] +Cell[10,45] 0.0022807502416443 [GeV] +Cell[11,1] 2.0281083270675e-05 [GeV] +Cell[11,2] 0.0011514387132676 [GeV] +Cell[17,46] 3.2112719491124e-05 [GeV] +Cell[4,2] 0.0012369216134868 [GeV] +Cell[4,0] 0.00027168872277798 [GeV] +Cell[4,1] 0.00036292315917785 [GeV] +Cell[4,16] 0.00089865940141082 [GeV] +Cell[4,29] 0.0026952123554746 [GeV] +Cell[4,28] 0.00051099891 [GeV] +Cell[14,37] 0.0016310301149272 [GeV] +### Total energy deposition in calorimeter by a source track in 46 cells : 0.17425018753656 (GeV) -Source track ID 6818 (e-,0.053081687509683[GeV]) at (-357.35981459583,-349.70553743404,66.463196768875) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999083604684e-08 mm long + and its vector is (-8.599073453297024e-09,-7.46915702620754e-08,-6.593347734451527e-08) mm + Endpoint of ComputeStep() was (-160.7358845366519,-814.2874033766057,535.5724817131477) + and current position to locate is (-160.7358845452509,-814.2874034512972,535.5724816472142) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000869592434e-07 mm long + and its vector is (-1.708778540887579e-08,5.631727617583238e-08,-8.084793989837635e-08) mm + Endpoint of ComputeStep() was (-213.9964699439203,-1061.937211232775,885.2113867722874) + and current position to locate is (-213.9964699610081,-1061.937211176458,885.2113866914394) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000114579228e-07 mm long + and its vector is (-9.743503426307143e-08,-1.860064458014676e-08,-1.266619165107841e-08) mm + Endpoint of ComputeStep() was (-113.3714773748398,-772.3341694169392,742.4070652615299) + and current position to locate is (-113.3714774722749,-772.3341694355398,742.4070652488637) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998871699004e-08 mm long + and its vector is (-1.105576075133285e-08,3.334321263537277e-08,-9.36269088924746e-08) mm + Endpoint of ComputeStep() was (-184.3322370684723,-1026.747791103835,696.8408817388566) + and current position to locate is (-184.332237079528,-1026.747791070492,696.8408816452297) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000043960254e-07 mm long + and its vector is (9.978990078707284e-08,4.029061528854072e-10,6.466393642767798e-09) mm + Endpoint of ComputeStep() was (116.3801406462437,-755.7019049846676,537.4599565740577) + and current position to locate is (116.3801407460336,-755.7019049842647,537.4599565805241) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999433443948e-08 mm long + and its vector is (-2.311273306077055e-08,7.664959866815479e-08,-5.992194473947166e-08) mm + Endpoint of ComputeStep() was (-243.5836501897797,-701.9765031211264,742.3364216664983) + and current position to locate is (-243.5836502128924,-701.9765030444768,742.3364216065763) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000289038117e-07 mm long + and its vector is (8.314879096360528e-08,5.388722001953283e-08,-1.350747425021837e-08) mm + Endpoint of ComputeStep() was (-285.7768510995368,-958.2961919607304,843.798632043414) + and current position to locate is (-285.776851016388,-958.2961919068432,843.7986320299066) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000565675469e-07 mm long + and its vector is (3.91707999369828e-08,-7.187998107838212e-08,-5.743629571952624e-08) mm + Endpoint of ComputeStep() was (-35.54685154537828,-628.9963602896055,883.3155672947407) + and current position to locate is (-35.54685150620748,-628.9963603614855,883.3155672373044) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999510743032e-08 mm long + and its vector is (-6.215144310317555e-08,7.732796802883968e-08,-1.255318693438312e-08) mm + Endpoint of ComputeStep() was (-72.78473498596365,-754.0854340474681,708.4261539044747) + and current position to locate is (-72.7847350481151,-754.0854339701401,708.4261538919216) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000234752021e-07 mm long + and its vector is (-3.237536816413922e-08,-7.384358013950987e-08,-5.915205747442087e-08) mm + Endpoint of ComputeStep() was (58.66858659111678,-679.2553251019835,581.4400928988329) + and current position to locate is (58.66858655874141,-679.2553251758271,581.4400928396808) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000043112621e-07 mm long + and its vector is (-6.676510366787625e-08,-3.206127985322382e-08,-6.719005796185229e-08) mm + Endpoint of ComputeStep() was (29.74461238715939,-1136.642069201671,513.763699024243) + and current position to locate is (29.74461232039429,-1136.642069233732,513.763698957053) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996297866229e-08 mm long + and its vector is (5.943822145582089e-08,-7.993742201506393e-08,8.780602911429014e-09) mm + Endpoint of ComputeStep() was (-106.6253627314994,-826.7987862701948,638.3324069535429) + and current position to locate is (-106.6253626720611,-826.7987863501322,638.3324069623235) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995809219087e-08 mm long + and its vector is (3.893629241247254e-08,5.20230969414115e-08,7.601022389280843e-08) mm + Endpoint of ComputeStep() was (197.7055541214952,-1142.81897900136,698.7662368010846) + and current position to locate is (197.7055541604315,-1142.818978949336,698.7662368770948) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998505076998e-08 mm long + and its vector is (7.693927273066947e-09,-9.865266292763408e-08,1.443788733013207e-08) mm + Endpoint of ComputeStep() was (132.2201810840895,-1041.641888321766,619.5513748228855) + and current position to locate is (132.2201810917834,-1041.641888420419,619.5513748373234) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000028479107e-07 mm long + and its vector is (-9.688230662163733e-09,-9.794825928111095e-08,1.767136836861027e-08) mm + Endpoint of ComputeStep() was (-1.986941218703264,-990.828712250491,529.3562331327818) + and current position to locate is (-1.986941228391495,-990.8287123484392,529.3562331504531) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 11415 (pi-,0.89577339971307[GeV]) at (-160.44860757825,-473.55701275158,404.657745409) Original primary track ID 2 (unknown,2.8798399642419[GeV]) -Cell[9,39] 0.00048438910670528 [GeV] -Cell[10,29] 0.014096154761349 [GeV] -Cell[10,30] 0.034642174196172 [GeV] -Cell[10,31] 0.003347970535457 [GeV] -### Total energy deposition in calorimeter by a source track in 4 cells : 0.052570688599683 (GeV) +Cell[12,31] 0.0017891871304028 [GeV] +Cell[11,34] 0.00047318586309838 [GeV] +Cell[13,35] 0.01305494410043 [GeV] +Cell[14,35] 1.0869575210108e-06 [GeV] +Cell[12,32] 0.034344625045338 [GeV] +Cell[12,33] 0.46300985417214 [GeV] +Cell[12,34] 0.12749063339419 [GeV] +Cell[12,35] 0.0047626822074339 [GeV] +Cell[13,36] 0.011777643551284 [GeV] +Cell[13,34] 0.044838843383996 [GeV] +Cell[13,33] 1.363284415288e-05 [GeV] +Cell[14,34] 0.00068753638537555 [GeV] +Cell[12,36] 0.0073549854767604 [GeV] +Cell[12,37] 5.0370136932543e-09 [GeV] +Cell[14,33] 7.6164875508766e-09 [GeV] +Cell[13,37] 5.2609369294032e-06 [GeV] +### Total energy deposition in calorimeter by a source track in 16 cells : 0.70960411410255 (GeV) -Source track ID 6819 (e+,0.082512261582866[GeV]) at (-386.83815124818,-316.79053764102,68.592448319282) -Original primary track ID 2 (unknown,2.8798399642419[GeV]) -Cell[10,29] 0.068402110485701 [GeV] -Cell[12,37] 0.00016154244099139 [GeV] -Cell[15,11] 0.010198379483677 [GeV] -Cell[10,28] 0.0029770833134157 [GeV] -Cell[14,46] 0.00063223605069583 [GeV] -### Total energy deposition in calorimeter by a source track in 5 cells : 0.082371351774481 (GeV) - -Source track ID 6786 (pi+,0.39314448529726[GeV]) at (-477.15733140858,-149.40174390898,242.78317261237) -Original primary track ID 2 (unknown,2.8798399642419[GeV]) -Cell[11,24] 0.00064018883708724 [GeV] -Cell[10,21] 0.0030486666541542 [GeV] -Cell[11,19] 0.00070497312724132 [GeV] -Cell[11,25] 0.26613890579521 [GeV] -Cell[10,25] 3.1722896499105e-06 [GeV] -Cell[10,24] 0.00031280325334649 [GeV] -Cell[10,20] 7.4075981242004e-05 [GeV] -Cell[10,19] 2.8437199591735e-07 [GeV] -Cell[11,26] 0.055880068709695 [GeV] -Cell[10,26] 0.0044051615485311 [GeV] -Cell[11,27] 2.3679019296765e-05 [GeV] -Cell[7,4] 6.249376386404e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 12 cells : 0.33129447335132 (GeV) - -Source track ID 6787 (pi-,0.89638080830722[GeV]) at (-156.71200126051,-474.80664344649,404.63030529788) -Original primary track ID 2 (unknown,2.8798399642419[GeV]) -Cell[13,33] 0.021154472417088 [GeV] -Cell[12,32] 3.3162950456926e-06 [GeV] -Cell[13,32] 0.001689135967135 [GeV] -Cell[14,32] 0.0061367979754796 [GeV] -Cell[15,32] 0.00017493463132485 [GeV] -Cell[15,31] 0.0022231141480426 [GeV] -Cell[14,31] 0.0040036101993032 [GeV] -Cell[13,31] 5.1195817820826e-07 [GeV] -Cell[11,35] 0.00052179731770264 [GeV] -Cell[12,36] 7.8580342233181e-13 [GeV] -Cell[13,30] 1.4144461601973e-11 [GeV] -Cell[11,34] 0.00073082780751284 [GeV] -Cell[12,7] 9.2567917017732e-06 [GeV] -Cell[12,33] 0.12862911973667 [GeV] -Cell[12,34] 0.33131538536242 [GeV] -Cell[12,35] 0.0038864494990433 [GeV] -Cell[13,34] 0.0073491670348511 [GeV] -Cell[13,35] 0.0017386818749821 [GeV] -Cell[13,36] 0.00028666681554432 [GeV] -Cell[14,33] 0.058438643915705 [GeV] -Cell[14,34] 0.0013967147746198 [GeV] -Cell[12,6] 0.0011129630477665 [GeV] -Cell[12,5] 2.2073564173297e-07 [GeV] -Cell[15,33] 0.00028245877998336 [GeV] -### Total energy deposition in calorimeter by a source track in 24 cells : 0.57108424710067 (GeV) - -Source track ID 6776 (gamma,0.032559394638405[GeV]) at (-498.62851788036,-37.008122844003,-1797.0008750584) +Source track ID 11404 (gamma,0.032559394638405[GeV]) at (-498.62850861858,-37.008247632261,-1796.9974894609) Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[0,24] 0.02401501159238 [GeV] -Cell[1,14] 0.0003396630971513 [GeV] -Cell[1,44] 0.0018843423902648 [GeV] -Cell[0,11] 0.00098176645969114 [GeV] -### Total energy deposition in calorimeter by a source track in 4 cells : 0.027220783539487 (GeV) +Cell[0,24] 0.031451982934102 [GeV] +Cell[0,39] 0.00059641279430305 [GeV] +### Total energy deposition in calorimeter by a source track in 2 cells : 0.032048395728405 (GeV) -Source track ID 6748 (mu+,0.50795301578019[GeV]) at (-384.27947655128,319.88948701306,-1981.8295770449) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[0,18] 0.021259563936297 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.021259563936297 (GeV) -Source track ID 6736 (gamma,1.9015972345341[GeV]) at (-363.22356462065,343.61117866605,-955.17209481822) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[6,31] 0.0003565984237707 [GeV] -Cell[5,45] 0.00051099891 [GeV] -Cell[6,8] 0.0022334857298448 [GeV] -Cell[4,33] 0.0018584991256694 [GeV] -Cell[4,32] 0.00051099891 [GeV] -Cell[9,29] 0.00058378602856731 [GeV] -Cell[4,9] 0.00032821008451309 [GeV] -Cell[5,18] 1.2472361518638 [GeV] -Cell[5,19] 0.0059039236290555 [GeV] -Cell[5,17] 0.037980841525009 [GeV] -Cell[5,16] 0.014270471341733 [GeV] -Cell[4,18] 0.50874950323771 [GeV] -Cell[4,17] 0.05810954942188 [GeV] -Cell[3,37] 0.00051099891 [GeV] -Cell[3,18] 0.0015957779056701 [GeV] -Cell[2,37] 0.0011131806546074 [GeV] -Cell[3,23] 0.00087604075029311 [GeV] -Cell[4,19] 0.0079368500320252 [GeV] -Cell[4,20] 0.0028073934244527 [GeV] -Cell[4,16] 0.00055560050747135 [GeV] -Cell[5,31] 0.0013019872694924 [GeV] -Cell[4,43] 7.9696738958591e-05 [GeV] -Cell[4,3] 7.9344661164503e-06 [GeV] -Cell[4,4] 6.9172303217606e-05 [GeV] -Cell[0,7] 0.0027105687081656 [GeV] -Cell[5,38] 0.0010867009458178 [GeV] -### Total energy deposition in calorimeter by a source track in 26 cells : 1.8992849208479 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994883076465e-08 mm long + and its vector is (-2.999809112225194e-08,2.621777639433276e-08,-9.172094905807171e-08) mm + Endpoint of ComputeStep() was (522.4955462950535,-171.7509945886405,-1798.798931118231) + and current position to locate is (522.4955462650554,-171.7509945624227,-1798.798931209952) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 6713 (pi-,4.43328388874[GeV]) at (-407.02855174425,290.39242081187,-1899.6211310676) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[0,24] 0.00017145092992907 [GeV] -Cell[0,19] 0.16028790711111 [GeV] -Cell[0,5] 0.0023114059168384 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.16277076395788 (GeV) -Source track ID 6660 (pi+,1.2123979528848[GeV]) at (-416.73506837492,276.28225202961,-1948.4842182779) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[0,19] 0.073741002738841 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.073741002738841 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995291316551e-08 mm long + and its vector is (3.940613169106655e-08,1.050736386787321e-08,9.130576472671237e-08) mm + Endpoint of ComputeStep() was (-635.484816478889,139.8518982907893,-1890.305269177001) + and current position to locate is (-635.4848164394829,139.8518983012967,-1890.305269085696) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 6661 (anti_proton,5.3584701641736[GeV]) at (-482.4986663386,131.12984779017,-1699.8897695752) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[6,25] 0.00026887508347454 [GeV] -Cell[3,39] 0.0024210586718196 [GeV] -Cell[6,4] 0.00015205058122194 [GeV] -Cell[5,45] 0.0010976244088739 [GeV] -Cell[5,36] 0.0025554150429064 [GeV] -Cell[4,46] 0.0055210450967245 [GeV] -Cell[5,37] 1.0644582302234e-05 [GeV] -Cell[5,34] 2.9033958169748e-05 [GeV] -Cell[6,28] 1.4139349763127e-06 [GeV] -Cell[4,44] 3.475592128234e-05 [GeV] -Cell[9,6] 0.0013606963339818 [GeV] -Cell[6,37] 0.001830009291651 [GeV] -Cell[4,5] 4.3946783989668e-12 [GeV] -Cell[5,9] 0.00013286654795627 [GeV] -Cell[5,8] 0.0025060823666402 [GeV] -Cell[5,10] 7.1624898118898e-06 [GeV] -Cell[4,9] 4.6585688322239e-05 [GeV] -Cell[4,8] 8.9178347960114e-05 [GeV] -Cell[6,5] 0.00051099891 [GeV] -Cell[3,3] 0.00011361237720121 [GeV] -Cell[0,41] 0.00025708045502658 [GeV] -Cell[0,42] 0.0014652968619524 [GeV] -Cell[0,24] 3.238397766836e-08 [GeV] -Cell[1,14] 0.0053205447162271 [GeV] -Cell[3,37] 6.8162919539304e-05 [GeV] -Cell[0,7] 0.0024469032551132 [GeV] -Cell[0,19] 1.9183922859156e-09 [GeV] -Cell[0,5] 0.034223190497554 [GeV] -Cell[1,21] 0.53307982590179 [GeV] -Cell[1,22] 2.6589807032073 [GeV] -Cell[1,23] 0.024392597669648 [GeV] -Cell[1,24] 0.005343655231846 [GeV] -Cell[0,23] 0.012517347324985 [GeV] -Cell[0,15] 0.00093220432353776 [GeV] -Cell[2,41] 0.0015062754302358 [GeV] -Cell[2,5] 0.00041889996134523 [GeV] -Cell[6,3] 0.00052629454178486 [GeV] -Cell[7,3] 5.285822192036e-08 [GeV] -Cell[1,28] 0.00013409752172959 [GeV] -Cell[1,29] 4.7727203309478e-09 [GeV] -Cell[1,40] 0.00098837447682228 [GeV] -Cell[2,40] 0.0015387427037073 [GeV] -Cell[1,41] 0.001886545598367 [GeV] -Cell[0,8] 0.0022008561903971 [GeV] -Cell[1,8] 0.0016970783323674 [GeV] -Cell[1,7] 3.3366119576385e-05 [GeV] -Cell[0,9] 0.00033679053330729 [GeV] -Cell[0,10] 3.2283631257997e-06 [GeV] -Cell[0,44] 5.9127147833351e-06 [GeV] -Cell[3,8] 3.6723569501191e-06 [GeV] -Cell[2,15] 6.4226567330934e-06 [GeV] -Cell[2,14] 4.366499088519e-06 [GeV] -Cell[2,32] 5.2066650969209e-05 [GeV] -Cell[5,44] 0.00030805877161254 [GeV] -Cell[6,44] 5.8053449686213e-07 [GeV] -Cell[6,43] 7.7197124483064e-08 [GeV] -Cell[5,43] 1.5045733675834e-08 [GeV] -Cell[1,20] 0.0086462478224678 [GeV] -Cell[0,25] 0.0010309672127192 [GeV] -Cell[0,26] 0.01489606663616 [GeV] -Cell[8,0] 7.2341926832451e-05 [GeV] -Cell[3,7] 0.00051978599781967 [GeV] -Cell[3,6] 0.0030870543334623 [GeV] -Cell[4,6] 0.00025618824641492 [GeV] -Cell[3,5] 6.2129748289408e-07 [GeV] -Cell[0,21] 0.68000355931303 [GeV] -Cell[0,20] 0.014100080223952 [GeV] -Cell[2,21] 0.0055920743216588 [GeV] -Cell[2,20] 0.00057864708499974 [GeV] -Cell[3,21] 0.0023933269454321 [GeV] -Cell[2,22] 4.7350748762256e-05 [GeV] -Cell[5,46] 0.0011301807194238 [GeV] -Cell[4,45] 0.0020776659295448 [GeV] -Cell[1,19] 0.0031876573673975 [GeV] -Cell[1,18] 0.0067759581003373 [GeV] -Cell[0,30] 0.00042411164326393 [GeV] -Cell[0,31] 0.00051099891165892 [GeV] -Cell[9,44] 0.00017833334298754 [GeV] -Cell[9,45] 0.0015117550339688 [GeV] -Cell[1,17] 2.41122461739e-06 [GeV] -Cell[1,13] 0.0015186976085281 [GeV] -Cell[1,15] 0.0025815372797397 [GeV] -Cell[1,2] 0.00010857279900483 [GeV] -Cell[2,2] 0.0004940712452883 [GeV] -Cell[2,1] 7.124268100597e-06 [GeV] -Cell[2,3] 0.00067789846940226 [GeV] -Cell[1,37] 0.00051232800557148 [GeV] -Cell[1,38] 0.00010294378193066 [GeV] -Cell[1,47] 0.00051099891 [GeV] -Cell[3,36] 0.00022769317766756 [GeV] -Cell[2,25] 0.00016943459267873 [GeV] -Cell[1,25] 1.2548407539725e-09 [GeV] -Cell[2,26] 0.0017594346363583 [GeV] -Cell[4,34] 0.00035908552737931 [GeV] -Cell[3,46] 5.5026947671536e-05 [GeV] -Cell[3,45] 1.452203272072e-05 [GeV] -Cell[3,44] 6.7236053382658e-09 [GeV] -Cell[2,33] 0.0011601210914761 [GeV] -Cell[1,33] 3.7597865377279e-05 [GeV] -Cell[2,34] 1.1991919564025e-09 [GeV] -Cell[3,35] 2.0867446437478e-11 [GeV] -Cell[6,26] 8.1953335902654e-06 [GeV] -Cell[6,27] 0.00082041460385835 [GeV] -Cell[0,6] 0.0012827907075255 [GeV] -Cell[5,25] 2.1812525665155e-07 [GeV] -Cell[5,24] 1.0090469720581e-07 [GeV] -Cell[6,24] 2.1731283368354e-09 [GeV] -Cell[6,7] 0.0003690103576044 [GeV] -Cell[1,5] 1.7116599337896e-10 [GeV] -Cell[0,4] 3.9036727102939e-06 [GeV] -Cell[2,11] 0.0011851310234732 [GeV] -Cell[3,12] 7.0975318376441e-06 [GeV] -Cell[2,12] 0.0020974164223158 [GeV] -Cell[2,13] 0.0022243730303374 [GeV] -Cell[2,45] 0.001017801730145 [GeV] -Cell[2,10] 0.0030612213212683 [GeV] -Cell[2,7] 0.0037120938197733 [GeV] -Cell[3,42] 0.00063552471535867 [GeV] -Cell[1,9] 0.00048391421238203 [GeV] -Cell[0,22] 0.10764956986964 [GeV] -Cell[2,39] 0.0037937497149607 [GeV] -Cell[8,24] 0.00051099891 [GeV] -Cell[3,14] 0.00712954658077 [GeV] -Cell[9,5] 0.0016755595575534 [GeV] -Cell[1,26] 0.0012780295300527 [GeV] -Cell[1,4] 0.000482604528238 [GeV] -Cell[5,35] 0.0018501351415818 [GeV] -Cell[1,30] 0.00077153840487299 [GeV] -Cell[1,36] 0.0057939783633741 [GeV] -Cell[11,13] 0.0003410093473469 [GeV] -Cell[1,35] 0.00051099891 [GeV] -Cell[4,47] 0.00051099891 [GeV] -Cell[1,32] 0.00036278175542006 [GeV] -Cell[2,43] 0.00044433263978563 [GeV] -Cell[2,4] 0.00155363500116 [GeV] -Cell[1,0] 0.00053970537139098 [GeV] -Cell[1,3] 4.4613463978749e-06 [GeV] -Cell[1,27] 0.00058397814173918 [GeV] -Cell[1,42] 8.3265258696997e-05 [GeV] -Cell[3,43] 0.00050090125435315 [GeV] -Cell[3,40] 1.5192967710846e-05 [GeV] -Cell[0,0] 0.0014508170467637 [GeV] -Cell[0,33] 0.0045040435615465 [GeV] -### Total energy deposition in calorimeter by a source track in 143 cells : 4.2259399599293 (GeV) -Source track ID 6656 (gamma,0.3844820986824[GeV]) at (-411.84544862425,283.51953450775,-1146.6497198485) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[4,38] 0.00028722321230702 [GeV] -Cell[5,16] 0.0010903471782197 [GeV] -Cell[4,18] 0.00055161854911049 [GeV] -Cell[3,18] 0.0018666451843349 [GeV] -Cell[4,19] 0.28524596501109 [GeV] -Cell[4,4] 0.00051099891 [GeV] -Cell[3,7] 0.00040628016074544 [GeV] -Cell[2,26] 0.0004106089384929 [GeV] -Cell[2,11] 0.00073961100884492 [GeV] -Cell[2,12] 0.00012922308894877 [GeV] -Cell[1,9] 0.00092382274100214 [GeV] -Cell[2,39] 0.00085495857472732 [GeV] -Cell[1,11] 0.00045000152006561 [GeV] -Cell[1,12] 6.0997389934393e-05 [GeV] -Cell[4,15] 0.001001721999146 [GeV] -Cell[3,19] 0.075745041109582 [GeV] -Cell[5,26] 0.0017465880324293 [GeV] -Cell[3,20] 0.0010178767641483 [GeV] -### Total energy deposition in calorimeter by a source track in 18 cells : 0.37303952937313 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000003400357e-07 mm long + and its vector is (-3.906880152726444e-08,3.573472895368468e-08,-8.483311830786988e-08) mm + Endpoint of ComputeStep() was (-28.68785553683897,-837.6778759303907,-1813.319450169123) + and current position to locate is (-28.68785557590777,-837.6778758946559,-1813.319450253956) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 6496 (proton,2.1151307556556[GeV]) at (-68.949181642785,495.22319246052,-1604.9010305605) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[1,13] 0.095435670741487 [GeV] -Cell[1,12] 0.11306736272909 [GeV] -Cell[0,12] 0.21002534021924 [GeV] -Cell[0,39] 0.0001840724721323 [GeV] -### Total energy deposition in calorimeter by a source track in 4 cells : 0.41871244616194 (GeV) -Source track ID 5864 (pi+,0.78149681086006[GeV]) at (-497.37277243685,51.189112499406,-1146.0750174885) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[4,44] 0.00048168860469372 [GeV] -Cell[8,15] 1.3625268386818e-05 [GeV] -Cell[7,37] 6.7953261896037e-07 [GeV] -Cell[0,42] 3.2572192139924e-07 [GeV] -Cell[7,36] 0.00011406055131147 [GeV] -Cell[1,44] 0.0016435556442076 [GeV] -Cell[3,23] 0.009532220026827 [GeV] -Cell[4,20] 8.2919025317096e-09 [GeV] -Cell[4,3] 0.0039373404743119 [GeV] -Cell[1,28] 1.1485244613141e-09 [GeV] -Cell[1,29] 1.0918575856067e-07 [GeV] -Cell[3,6] 0.0011014673121515 [GeV] -Cell[2,21] 1.0473019268829e-05 [GeV] -Cell[3,21] 0.013383910168719 [GeV] -Cell[2,22] 0.00032979601835336 [GeV] -Cell[4,45] 0.0005300902676826 [GeV] -Cell[1,25] 4.3597958665487e-10 [GeV] -Cell[3,46] 1.5925645129755e-08 [GeV] -Cell[3,45] 1.2086215429008e-07 [GeV] -Cell[3,44] 2.061178077895e-05 [GeV] -Cell[2,33] 9.9099546316893e-05 [GeV] -Cell[2,34] 3.2483967515873e-10 [GeV] -Cell[1,26] 2.744326931861e-06 [GeV] -Cell[3,20] 0.00069226967530477 [GeV] -Cell[4,23] 0.068763025348633 [GeV] -Cell[4,22] 0.015221617107325 [GeV] -Cell[3,22] 0.3688178357104 [GeV] -Cell[3,24] 0.0055456823420186 [GeV] -Cell[4,25] 1.9966245890828e-05 [GeV] -Cell[3,26] 0.0011446071974964 [GeV] -Cell[3,25] 1.6274046146236e-06 [GeV] -Cell[2,9] 5.4100557463244e-07 [GeV] -Cell[0,47] 1.3236814993434e-07 [GeV] -Cell[3,33] 1.6022527473979e-05 [GeV] -Cell[3,15] 5.3355042473413e-07 [GeV] -Cell[2,24] 0.0054570899277798 [GeV] -Cell[2,23] 0.00032137055836665 [GeV] -Cell[4,24] 0.0023439870352466 [GeV] -Cell[6,36] 0.00045580465399041 [GeV] -Cell[1,45] 0.0041408025922556 [GeV] -Cell[0,45] 0.0032184741433951 [GeV] -### Total energy deposition in calorimeter by a source track in 41 cells : 0.50736333383362 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999991841729654e-08 mm long + and its vector is (5.543859415979568e-08,-2.575416147010401e-08,7.914081834314857e-08) mm + Endpoint of ComputeStep() was (5.102746152757643,-749.9826410941153,-1797.960676798323) + and current position to locate is (5.102746208196237,-749.9826411198694,-1797.960676719183) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 5927 (mu+,0.42230494614171[GeV]) at (497.69830733377,47.9207144886,-1081.4755402645) +Source track ID 11375 (pi+,0.77700613087982[GeV]) at (-481.12488002671,136.08398075924,-1801.7741465038) Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[4,47] 0.0096658770700499 [GeV] -Cell[4,0] 0.16541002917143 [GeV] -Cell[3,47] 0.099131225686554 [GeV] -Cell[2,47] 0.064574773380938 [GeV] -### Total energy deposition in calorimeter by a source track in 4 cells : 0.33878190530897 (GeV) +Cell[0,0] 1.8881670024712e-05 [GeV] +Cell[0,35] 0.00026597424020645 [GeV] +Cell[1,36] 5.5887988476456e-05 [GeV] +Cell[0,36] 0.0090912735754364 [GeV] +Cell[0,21] 0.24260718721019 [GeV] +Cell[1,23] 0.00012608303077434 [GeV] +Cell[1,22] 0.0007671401252536 [GeV] +Cell[0,22] 0.0024932438896807 [GeV] +Cell[0,23] 0.00093304041286513 [GeV] +Cell[0,20] 0.00011119746817167 [GeV] +Cell[0,2] 1.0830964165507e-05 [GeV] +Cell[0,46] 0.0012919765406529 [GeV] +Cell[0,45] 1.5335278476414e-08 [GeV] +Cell[0,47] 0.00017379954066564 [GeV] +Cell[0,19] 0.00065551461814755 [GeV] +Cell[1,19] 3.957975708181e-05 [GeV] +Cell[1,17] 0.0023637893473718 [GeV] +Cell[1,18] 0.0060584227371106 [GeV] +Cell[0,17] 9.0132928744424e-06 [GeV] +Cell[0,18] 0.00010383646441369 [GeV] +Cell[0,37] 0.0011830080267755 [GeV] +Cell[0,34] 0.0003828544353928 [GeV] +### Total energy deposition in calorimeter by a source track in 22 cells : 0.26874255067101 (GeV) -Source track ID 5577 (anti_proton,1.69087610727[GeV]) at (-493.92996025291,77.673640088222,-1171.4848695701) +Source track ID 11372 (gamma,1.9015972345341[GeV]) at (-363.22356461718,343.61117866971,-955.17209704341) Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[6,38] 0.0013798940936495 [GeV] -Cell[3,28] 0.00059617713357563 [GeV] -Cell[6,39] 4.2271002461121e-06 [GeV] -Cell[4,44] 1.2305379823374e-07 [GeV] -Cell[4,42] 0.001319106935968 [GeV] -Cell[4,7] 0.00021822244389841 [GeV] -Cell[0,42] 4.4946037523914e-06 [GeV] -Cell[3,18] 7.4818083680839e-07 [GeV] -Cell[3,23] 1.4045398180806 [GeV] -Cell[4,20] 0.0037188634678301 [GeV] -Cell[4,3] 0.0013886843754938 [GeV] -Cell[5,38] 2.5231723473098e-06 [GeV] -Cell[4,6] 0.00090606654868998 [GeV] -Cell[2,21] 0.003631918079998 [GeV] -Cell[2,20] 0.0007760222136855 [GeV] -Cell[3,21] 0.014498268414328 [GeV] -Cell[2,22] 0.025908105108322 [GeV] -Cell[5,46] 0.0068399858726761 [GeV] -Cell[1,37] 7.8367266746682e-07 [GeV] -Cell[1,38] 0.00088764985646799 [GeV] -Cell[1,47] 0.0010434768121719 [GeV] -Cell[2,25] 0.00060667115521989 [GeV] -Cell[2,33] 0.00020666793557096 [GeV] +Cell[8,6] 0.00037888782692143 [GeV] +Cell[8,5] 0.0014941141444217 [GeV] +Cell[7,6] 0.0015069401352532 [GeV] +Cell[9,6] 0.00051099891 [GeV] +Cell[7,33] 0.0018469144450067 [GeV] +Cell[7,34] 0.00051099891 [GeV] +Cell[4,36] 0.001861552957682 [GeV] +Cell[7,41] 0.0026301050716989 [GeV] +Cell[4,18] 0.2942559311102 [GeV] +Cell[7,42] 4.5125970819178e-05 [GeV] +Cell[5,30] 0.0008453199956547 [GeV] +Cell[6,28] 0.00051099891 [GeV] +Cell[6,41] 0.0018902423526548 [GeV] +Cell[3,27] 0.0022869329823612 [GeV] +Cell[3,26] 0.00067400840344598 [GeV] +Cell[1,35] 0.0014664896293516 [GeV] +Cell[0,35] 0.0034838133465186 [GeV] +Cell[0,36] 0.0013991589071321 [GeV] +Cell[5,16] 0.00062910840981983 [GeV] +Cell[4,26] 0.00051099891 [GeV] +Cell[4,27] 0.0046455889438914 [GeV] +Cell[6,16] 7.1435705955483e-05 [GeV] +Cell[4,16] 0.00077071366504939 [GeV] +Cell[5,18] 1.437186389365 [GeV] +Cell[1,38] 0.00013869858690757 [GeV] +Cell[5,20] 0.00056853305058516 [GeV] +Cell[4,19] 0.014470126248854 [GeV] +Cell[5,17] 0.0360021604838 [GeV] +Cell[3,37] 0.00089837814554454 [GeV] +Cell[6,17] 3.603509708392e-05 [GeV] +Cell[5,19] 0.0022726267163911 [GeV] +Cell[4,17] 0.064638995568169 [GeV] +Cell[3,47] 0.00051099891 [GeV] +Cell[8,4] 0.00042837327711593 [GeV] +Cell[2,27] 0.0040477922290572 [GeV] +Cell[2,26] 0.00051099891 [GeV] +Cell[5,24] 0.00078353985399421 [GeV] +Cell[0,5] 0.0008825194539942 [GeV] +Cell[4,12] 0.001610553201386 [GeV] +Cell[1,45] 0.00066559467092786 [GeV] +Cell[3,4] 0.00057349044682164 [GeV] +Cell[6,44] 0.0013436640375034 [GeV] +Cell[4,42] 0.00027710066491316 [GeV] +Cell[2,5] 0.0045244646823658 [GeV] +Cell[8,42] 0.00038780282498386 [GeV] +Cell[2,33] 0.00071305979557014 [GeV] +### Total energy deposition in calorimeter by a source track in 46 cells : 1.8976982758648 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999991285886828e-08 mm long + and its vector is (1.808507477107923e-08,3.337953558002482e-08,-9.251334631699137e-08) mm + Endpoint of ComputeStep() was (-558.7061847317484,334.6746472513747,-1816.792355946778) + and current position to locate is (-558.7061847136633,334.6746472847542,-1816.792356039291) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000038316483e-07 mm long + and its vector is (-2.380096475462778e-08,9.460097771807341e-08,-2.200386006734334e-08) mm + Endpoint of ComputeStep() was (438.3721665589982,379.7760439198119,-1789.208290151756) + and current position to locate is (438.3721665351973,379.7760440144129,-1789.208290173759) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000098665121e-07 mm long + and its vector is (-2.293973011546768e-08,9.658043609306333e-08,1.208263711305335e-08) mm + Endpoint of ComputeStep() was (406.942850883268,-506.8505857070427,-1776.822353980877) + and current position to locate is (406.9428508603283,-506.8505856104623,-1776.822353968794) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999473658741e-08 mm long + and its vector is (-9.628263342165155e-08,-1.091586909751641e-08,-2.470824256306514e-08) mm + Endpoint of ComputeStep() was (396.4424724624437,304.6856841252267,-631.9291161417808) + and current position to locate is (396.442472366161,304.6856841143108,-631.9291161664891) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 11342 (pi-,4.4332197284722[GeV]) at (-407.32902429099,289.97080192694,-1898.9796114474) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[8,9] 0.0029042547620207 [GeV] +Cell[2,35] 0.00044172570800859 [GeV] +Cell[6,20] 3.0140354418108e-05 [GeV] +Cell[2,41] 0.0023439068814046 [GeV] +Cell[5,3] 1.4128567301668e-05 [GeV] +Cell[0,35] 0.0022240634691439 [GeV] +Cell[0,36] 0.00065554465583092 [GeV] +Cell[4,28] 0.0023827218163111 [GeV] +Cell[0,39] 0.00092202726779961 [GeV] +Cell[0,21] 0.0035766986837649 [GeV] +Cell[0,20] 0.011016697118403 [GeV] +Cell[0,19] 3.3243924103841 [GeV] +Cell[0,17] 0.042168354268383 [GeV] +Cell[0,18] 0.15442617342276 [GeV] +Cell[5,20] 0.00042679096395693 [GeV] +Cell[1,45] 3.2032625458669e-06 [GeV] +Cell[2,33] 9.9930330179632e-08 [GeV] +Cell[2,38] 7.1045332588255e-06 [GeV] +Cell[1,5] 0.00012589731352557 [GeV] +Cell[1,6] 5.7160789669069e-05 [GeV] +Cell[0,4] 0.0043908044450049 [GeV] +Cell[3,33] 6.9985224399716e-08 [GeV] +Cell[1,40] 0.00020438930934506 [GeV] +Cell[1,41] 0.0021111341392082 [GeV] +Cell[0,42] 0.0002582555141463 [GeV] +Cell[0,41] 5.8939284538383e-05 [GeV] +Cell[1,42] 0.00054056913995851 [GeV] +Cell[5,21] 1.0657105944119e-05 [GeV] +Cell[0,8] 0.00051099891 [GeV] +Cell[0,25] 0.0015657669121149 [GeV] +Cell[0,3] 0.00027109465483806 [GeV] +Cell[0,16] 0.0016742804643115 [GeV] +Cell[3,10] 0.0023107478739005 [GeV] +Cell[4,44] 0.00088041765471326 [GeV] +Cell[1,27] 0.00048368686731561 [GeV] +### Total energy deposition in calorimeter by a source track in 35 cells : 3.5633909164135 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000090552128e-07 mm long + and its vector is (2.239903551526368e-08,8.75670593813993e-08,4.278194865037221e-08) mm + Endpoint of ComputeStep() was (619.8274882638287,282.7842878249602,-1827.510971006996) + and current position to locate is (619.8274882862278,282.7842879125273,-1827.510970964214) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997650281091e-08 mm long + and its vector is (-8.627874592548324e-08,-4.240666839905316e-08,2.752540240180679e-08) mm + Endpoint of ComputeStep() was (89.819456841302,-586.8036714735075,-1767.285627335719) + and current position to locate is (89.81945675502325,-586.8036715159142,-1767.285627308194) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000931598289e-07 mm long + and its vector is (-3.682848159769492e-08,-1.390719717164757e-08,9.192535799229518e-08) mm + Endpoint of ComputeStep() was (-153.2200443696509,571.8249904768484,-1577.057133042266) + and current position to locate is (-153.2200444064794,571.8249904629412,-1577.057132950341) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000000927759e-07 mm long + and its vector is (-6.544439656863688e-08,-7.498306331399363e-08,-9.724772098707035e-09) mm + Endpoint of ComputeStep() was (-511.7506188328836,265.5907736106369,-1758.426739578195) + and current position to locate is (-511.750618898328,265.5907735356538,-1758.42673958792) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999991834167482e-08 mm long + and its vector is (-5.253644985714345e-08,4.296185807106667e-08,-7.34451077732956e-08) mm + Endpoint of ComputeStep() was (283.463447043341,443.8090161738734,-1170.130523550224) + and current position to locate is (283.4634469908046,443.8090162168353,-1170.130523623669) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999992820735508e-08 mm long + and its vector is (6.174229838507017e-08,2.698327250527655e-08,7.389030542981345e-08) mm + Endpoint of ComputeStep() was (536.6888729317908,120.2707512175788,-1746.176888575342) + and current position to locate is (536.6888729935331,120.2707512445621,-1746.176888501452) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000016203155e-07 mm long + and its vector is (-1.732044552227308e-08,9.848019999481039e-08,-1.28670762933325e-09) mm + Endpoint of ComputeStep() was (195.7226025083429,643.6895273657723,-1592.349326707076) + and current position to locate is (195.7226024910224,643.6895274642525,-1592.349326708362) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999585807958e-08 mm long + and its vector is (4.460622449187213e-08,-7.851326699892525e-08,-4.296452971175313e-08) mm + Endpoint of ComputeStep() was (-209.4982425887338,683.4120476017157,-1536.784752018721) + and current position to locate is (-209.4982425441276,683.4120475232024,-1536.784752061686) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993663212161e-08 mm long + and its vector is (7.173173344199313e-08,-2.259258735648473e-08,-6.590994416910689e-08) mm + Endpoint of ComputeStep() was (-431.270302959904,341.3296439838871,-1941.138219659822) + and current position to locate is (-431.2703028881723,341.3296439612946,-1941.138219725732) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000427722177e-07 mm long + and its vector is (-1.653586423344677e-08,-4.475235471090855e-08,8.788515515334439e-08) mm + Endpoint of ComputeStep() was (-624.2639490353282,84.8205277144835,-1156.506275807976) + and current position to locate is (-624.2639490518641,84.82052766973115,-1156.506275720091) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997010337466e-08 mm long + and its vector is (-2.884380023715494e-08,7.213168373709777e-08,6.296863830357324e-08) mm + Endpoint of ComputeStep() was (253.6454525696301,555.3365591275258,-1498.653763211019) + and current position to locate is (253.6454525407863,555.3365591996575,-1498.65376314805) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000004231573e-07 mm long + and its vector is (1.783939751476282e-08,-9.815605750418399e-08,6.866230251034722e-09) mm + Endpoint of ComputeStep() was (-701.2983785632604,-33.77404946246151,-1728.170107170014) + and current position to locate is (-701.298378545421,-33.77404956061756,-1728.170107163148) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999158403144e-08 mm long + and its vector is (8.162032827385701e-09,4.784541829394584e-08,8.743108992348425e-08) mm + Endpoint of ComputeStep() was (604.3570215761102,150.7799450236135,-1843.440282360848) + and current position to locate is (604.3570215842723,150.7799450714589,-1843.440282273417) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997992763323e-08 mm long + and its vector is (6.902530458319234e-08,6.488639314738975e-08,3.201967047061771e-08) mm + Endpoint of ComputeStep() was (536.7447042026376,249.437618542427,-1830.571153691283) + and current position to locate is (536.744704271663,249.4376186073134,-1830.571153659263) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000279803585e-07 mm long + and its vector is (-3.054555008930038e-08,-9.472097417528857e-08,9.742279871716164e-09) mm + Endpoint of ComputeStep() was (509.630128293311,297.6806104382994,-1852.075417719648) + and current position to locate is (509.6301282627654,297.6806103435785,-1852.075417709905) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999883704867e-08 mm long + and its vector is (2.064984983007889e-08,6.911986361046729e-08,-6.92533603796619e-08) mm + Endpoint of ComputeStep() was (-900.9306874329467,-140.952638787587,-1018.644369182252) + and current position to locate is (-900.9306874122968,-140.9526387184671,-1018.644369251505) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994660862032e-08 mm long + and its vector is (-8.918812000047183e-08,2.674175902939169e-08,3.647392077255063e-08) mm + Endpoint of ComputeStep() was (-951.4779761518541,-348.5712712843271,-1046.699043396374) + and current position to locate is (-951.4779762410423,-348.5712712575854,-1046.6990433599) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000537898533e-07 mm long + and its vector is (8.626932412880706e-08,-3.600945319703897e-08,3.550962901499588e-08) mm + Endpoint of ComputeStep() was (-971.6847836063007,-236.2809375692694,-1183.00780245955) + and current position to locate is (-971.6847835200314,-236.2809376052789,-1183.007802424041) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000231194943e-07 mm long + and its vector is (8.149390851031058e-08,-4.950896936861682e-08,3.012655724887736e-08) mm + Endpoint of ComputeStep() was (-674.9135627147008,-357.0539037610705,-1033.168560497549) + and current position to locate is (-674.9135626332069,-357.0539038105795,-1033.168560467422) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999762095e-08 mm long + and its vector is (-2.035460511251586e-08,-6.978820010772324e-08,-6.86679868522333e-08) mm + Endpoint of ComputeStep() was (-896.6042295079631,-201.2238005934402,-1026.505030721958) + and current position to locate is (-896.6042295283177,-201.2238006632284,-1026.505030790626) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995907408683e-08 mm long + and its vector is (9.729080829856684e-08,5.39775868446668e-09,-2.248009423055919e-08) mm + Endpoint of ComputeStep() was (-698.4751833016339,46.17811653977154,-861.02602973049) + and current position to locate is (-698.4751832043431,46.1781165451693,-861.0260297529701) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999250630155e-08 mm long + and its vector is (9.448729088035179e-08,-2.576223323558224e-08,2.021033651544712e-08) mm + Endpoint of ComputeStep() was (-879.3773051968089,-432.5454372071119,-1037.650627780534) + and current position to locate is (-879.3773051023217,-432.5454372328742,-1037.650627760323) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 11302 (pi+,1.2125030558048[GeV]) at (-456.53464753858,203.90222067655,-1890.6628937637) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[6,24] 1.5629568661097e-06 [GeV] +Cell[5,25] 0.0038699492941777 [GeV] +Cell[4,33] 0.0023051372255183 [GeV] +Cell[1,4] 2.6740948669612e-08 [GeV] +Cell[5,29] 4.1510067530908e-06 [GeV] +Cell[5,26] 0.022803429235 [GeV] +Cell[1,24] 1.2972819439483e-06 [GeV] +Cell[2,13] 0.0015743183034903 [GeV] +Cell[1,36] 0.00038179820118785 [GeV] +Cell[4,26] 0.003030705389036 [GeV] +Cell[4,27] 0.0003216252784453 [GeV] +Cell[0,24] 0.00046059301152637 [GeV] +Cell[0,21] 0.1149036458991 [GeV] +Cell[1,22] 4.4467655243352e-08 [GeV] +Cell[0,22] 3.205291513575e-05 [GeV] +Cell[0,23] 0.013668061965856 [GeV] +Cell[0,20] 0.44589992165376 [GeV] +Cell[0,2] 0.012216610799859 [GeV] +Cell[0,19] 8.837350993997e-05 [GeV] +Cell[0,18] 5.9537142113641e-05 [GeV] +Cell[0,37] 0.00013501948635428 [GeV] +Cell[5,24] 0.0039831235615536 [GeV] +Cell[0,5] 0.0040697124746418 [GeV] +Cell[4,42] 0.0021796345357723 [GeV] +Cell[0,4] 0.0046262886689171 [GeV] +Cell[0,3] 0.013757042093635 [GeV] +Cell[1,37] 3.0914748094801e-11 [GeV] +Cell[2,12] 0.00013343916132033 [GeV] +Cell[2,11] 2.3563615599414e-05 [GeV] +Cell[3,30] 0.00051526015099387 [GeV] +Cell[3,31] 1.4393563906197e-05 [GeV] +Cell[1,14] 0.0006396913179484 [GeV] +Cell[2,15] 1.1824945046101e-05 [GeV] +Cell[2,14] 0.00037602904643825 [GeV] +Cell[1,15] 1.990641546854e-06 [GeV] +Cell[5,37] 0.0018028898787948 [GeV] +Cell[1,20] 8.4114904540002e-05 [GeV] +Cell[4,7] 0.00041489943937927 [GeV] +Cell[4,6] 0.00089140402217199 [GeV] +Cell[4,8] 1.1616188159678e-05 [GeV] +Cell[3,6] 0.0010603539209195 [GeV] +Cell[4,43] 7.2148933832068e-06 [GeV] +Cell[5,42] 0.00027687327474086 [GeV] +Cell[4,41] 0.0008690272530265 [GeV] +Cell[6,23] 2.040286622389e-05 [GeV] +Cell[8,0] 3.3508776978124e-06 [GeV] +Cell[7,1] 2.040387771558e-06 [GeV] +Cell[8,1] 2.5203993136529e-06 [GeV] +Cell[12,2] 5.5237708147615e-07 [GeV] +Cell[1,1] 0.0011055733842385 [GeV] +Cell[0,29] 0.00048006392033921 [GeV] +Cell[1,10] 5.2414686069824e-07 [GeV] +Cell[1,9] 0.00022761743588535 [GeV] +Cell[1,8] 0.0059106618417746 [GeV] +Cell[2,9] 0.0024642450826451 [GeV] +Cell[1,13] 0.0034711152446448 [GeV] +Cell[1,12] 1.5750723832753e-08 [GeV] +Cell[6,31] 0.00095504862840144 [GeV] +Cell[4,32] 0.0047284205235649 [GeV] +Cell[5,22] 0.0017372565206476 [GeV] +Cell[4,22] 0.0011806530944453 [GeV] +Cell[4,21] 0.00012464157361694 [GeV] +Cell[4,23] 1.6376582266275e-08 [GeV] +Cell[2,8] 0.002800027065934 [GeV] +Cell[2,7] 0.00045321625176837 [GeV] +Cell[0,1] 0.0016797196421848 [GeV] +Cell[1,3] 0.001287363587636 [GeV] +Cell[0,38] 4.538655991837e-08 [GeV] +Cell[1,2] 0.00043790326393184 [GeV] +Cell[4,25] 0.0018345503542806 [GeV] +Cell[4,24] 7.9822293901088e-07 [GeV] +Cell[5,23] 0.00099483497010942 [GeV] +Cell[1,21] 0.00012458747532219 [GeV] +### Total energy deposition in calorimeter by a source track in 73 cells : 0.68953601600113 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000729706934e-07 mm long + and its vector is (2.689273514988599e-08,4.067592840328871e-08,8.730557965463959e-08) mm + Endpoint of ComputeStep() was (609.4534246385988,109.5249251522189,-1692.813906122188) + and current position to locate is (609.4534246654915,109.5249251928949,-1692.813906034882) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999570679405e-08 mm long + and its vector is (-5.79415200263611e-08,-6.782354944334656e-08,-4.519665708357934e-08) mm + Endpoint of ComputeStep() was (-753.9303983843117,199.972383922958,-1671.348087335388) + and current position to locate is (-753.9303984422532,199.9723838551345,-1671.348087380585) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000015588194e-07 mm long + and its vector is (8.239908311225008e-08,-4.468881797947688e-08,-3.483251020952594e-08) mm + Endpoint of ComputeStep() was (-597.3152395312197,256.348404998178,-1807.121742418777) + and current position to locate is (-597.3152394488206,256.3484049534891,-1807.12174245361) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995222914176e-08 mm long + and its vector is (1.1257441201451e-08,-6.273486974350817e-08,7.705580173933413e-08) mm + Endpoint of ComputeStep() was (-510.8322512078547,-101.2908998916275,-1784.504514583489) + and current position to locate is (-510.8322511965972,-101.2908999543624,-1784.504514506433) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994245042994e-08 mm long + and its vector is (9.300902092945762e-08,-2.726947007092306e-08,2.461069925629999e-08) mm + Endpoint of ComputeStep() was (-735.7130532832706,0.4326214501381976,-1758.377202289795) + and current position to locate is (-735.7130531902616,0.4326214228687275,-1758.377202265184) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000001061274231e-07 mm long + and its vector is (2.245610630779993e-08,8.122782446662313e-09,9.710697668197099e-08) mm + Endpoint of ComputeStep() was (-746.4489810940056,-172.8125929616067,-1968.037022200954) + and current position to locate is (-746.4489810715495,-172.8125929534839,-1968.037022103847) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995309670841e-08 mm long + and its vector is (-2.454817149555311e-08,9.136914513874217e-08,-3.238915269321296e-08) mm + Endpoint of ComputeStep() was (-525.0564327012863,416.3099566808043,-1949.343616545381) + and current position to locate is (-525.0564327258345,416.3099567721735,-1949.34361657777) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994304008122e-08 mm long + and its vector is (6.865820978418924e-08,-1.383264702781162e-08,7.137714419513941e-08) mm + Endpoint of ComputeStep() was (-554.6276361863615,169.6708144000687,-1679.801901523951) + and current position to locate is (-554.6276361177033,169.670814386236,-1679.801901452574) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000438485043e-07 mm long + and its vector is (-7.189328243839554e-08,-6.948363306946703e-08,1.84104465006385e-09) mm + Endpoint of ComputeStep() was (-525.923544554894,303.6421001329217,-1855.241010054396) + and current position to locate is (-525.9235446267872,303.6421000634381,-1855.241010052555) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999933798974e-08 mm long + and its vector is (8.502718173986068e-08,-3.417483185330639e-09,-5.252331902738661e-08) mm + Endpoint of ComputeStep() was (-667.5371267156654,493.2486032145277,-1649.928292569265) + and current position to locate is (-667.5371266306382,493.2486032111102,-1649.928292621789) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996280314383e-08 mm long + and its vector is (8.421011443715543e-08,3.819104676949792e-08,-3.808008841588162e-08) mm + Endpoint of ComputeStep() was (-503.2088383918958,376.435022499911,-1819.579974432914) + and current position to locate is (-503.2088383076857,376.4350225381021,-1819.579974470994) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000231935528e-07 mm long + and its vector is (8.765414349909406e-08,3.620237976065255e-08,-3.171976459270809e-08) mm + Endpoint of ComputeStep() was (-579.7269900506468,199.2633275773794,-1897.877566098754) + and current position to locate is (-579.7269899629927,199.2633276135818,-1897.877566130474) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999990189735792e-08 mm long + and its vector is (-3.15220631819102e-08,5.938505864833132e-08,7.402536539302673e-08) mm + Endpoint of ComputeStep() was (-653.140190820984,190.6361027512021,-1849.674506175211) + and current position to locate is (-653.1401908525061,190.6361028105872,-1849.674506101186) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999991215617209e-08 mm long + and its vector is (3.769741852011066e-08,1.912022185024398e-08,9.062728167918976e-08) mm + Endpoint of ComputeStep() was (-653.9097777318233,211.4728053856185,-1591.113311543084) + and current position to locate is (-653.9097776941259,211.4728054047388,-1591.113311452457) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000022270976e-07 mm long + and its vector is (2.334263626835309e-08,-5.422859317150142e-08,8.071174306678586e-08) mm + Endpoint of ComputeStep() was (-621.4180913238123,169.0041500630888,-1493.315579824843) + and current position to locate is (-621.4180913004697,169.0041500088602,-1493.315579744132) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000059833356e-07 mm long + and its vector is (8.733229606150417e-08,4.86970748170279e-08,1.290800355491228e-09) mm + Endpoint of ComputeStep() was (-726.3883026532149,186.7084194064949,-1594.708583615256) + and current position to locate is (-726.3883025658826,186.708419455192,-1594.708583613965) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994566731412e-08 mm long + and its vector is (-7.896414899732918e-08,4.183880264463369e-08,4.487947080633603e-08) mm + Endpoint of ComputeStep() was (-821.5803776997545,276.2561168323856,-1837.506482810387) + and current position to locate is (-821.5803777787187,276.2561168742244,-1837.506482765508) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998380166243e-08 mm long + and its vector is (7.862769280109205e-08,-3.561467565305065e-08,5.049037099524867e-08) mm + Endpoint of ComputeStep() was (299.8534774219511,-445.9701941324527,-1442.918774206272) + and current position to locate is (299.8534775005788,-445.9701941680673,-1442.918774155782) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997290762679e-08 mm long + and its vector is (-4.170914280621218e-08,7.812479907443048e-08,-4.644198270398192e-08) mm + Endpoint of ComputeStep() was (425.1275559350496,-556.1173988530189,-1406.226929532566) + and current position to locate is (425.1275558933405,-556.1173987748941,-1406.226929579008) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996326823923e-08 mm long + and its vector is (-2.872127424780047e-08,9.548170964990277e-08,7.637027010787278e-09) mm + Endpoint of ComputeStep() was (784.3537203526599,-522.3978570633941,-330.1692896684318) + and current position to locate is (784.3537203239387,-522.3978569679124,-330.1692896607948) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997663129757e-08 mm long + and its vector is (-9.71454028331209e-10,3.444000640229206e-08,9.38772473091376e-08) mm + Endpoint of ComputeStep() was (891.9945789554814,-180.5705958732656,-782.1455293055322) + and current position to locate is (891.99457895451,-180.5705958388256,-782.145529211655) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000076140372e-07 mm long + and its vector is (8.459733180643525e-08,-3.899947387253633e-08,3.636409928731155e-08) mm + Endpoint of ComputeStep() was (1090.100112218235,-569.7207606476311,-581.8813484036924) + and current position to locate is (1090.100112302832,-569.7207606866306,-581.8813483673283) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999830852144e-08 mm long + and its vector is (6.054085588402813e-08,7.959090453368844e-08,3.038849172298796e-10) mm + Endpoint of ComputeStep() was (1001.443648690202,-452.1477428797039,-716.0688038125134) + and current position to locate is (1001.443648750743,-452.147742800113,-716.0688038122095) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996771737386e-08 mm long + and its vector is (5.326569407770876e-08,3.815443960775156e-08,-7.554467629233841e-08) mm + Endpoint of ComputeStep() was (870.9328231593122,-521.2538761105428,-699.0132112053267) + and current position to locate is (870.9328232125779,-521.2538760723884,-699.0132112808714) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996220054577e-08 mm long + and its vector is (-8.765334769123001e-08,4.76013042316481e-08,-7.141352398321033e-09) mm + Endpoint of ComputeStep() was (859.881162090153,-448.4113755740128,-645.069486812397) + and current position to locate is (859.8811620024997,-448.4113755264115,-645.0694868195384) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998478379417e-08 mm long + and its vector is (2.527269771235297e-08,-9.355085239803884e-08,2.46885747401393e-08) mm + Endpoint of ComputeStep() was (796.2847443679002,-410.2301941226274,-266.9608428753195) + and current position to locate is (796.2847443931729,-410.2301942161783,-266.9608428506309) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997798967143e-08 mm long + and its vector is (-4.771916906065599e-08,3.116304014838533e-08,-8.216898095270153e-08) mm + Endpoint of ComputeStep() was (86.61826636977638,686.3003214749783,-1765.27031806321) + and current position to locate is (86.61826632205721,686.3003215061414,-1765.270318145379) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000084149865e-07 mm long + and its vector is (-5.792401225335198e-08,4.59648390460643e-08,6.73205704515567e-08) mm + Endpoint of ComputeStep() was (-565.4683462089931,375.0458058926624,-1584.862712269628) + and current position to locate is (-565.4683462669171,375.0458059386272,-1584.862712202307) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997130360681e-08 mm long + and its vector is (3.824175109912176e-08,-6.415638154066983e-08,6.649452188867144e-08) mm + Endpoint of ComputeStep() was (-538.0857774159339,447.7317235145332,-1427.722750577991) + and current position to locate is (-538.0857773776921,447.7317234503768,-1427.722750511496) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996033090684e-08 mm long + and its vector is (5.286028681439348e-08,-2.468232196406461e-08,8.121924111037515e-08) mm + Endpoint of ComputeStep() was (-574.290195554279,259.0188629496483,-1623.96431769444) + and current position to locate is (-574.2901955014187,259.018862924966,-1623.96431761322) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000647138008e-07 mm long + and its vector is (5.928802693233592e-08,-6.943338348719408e-08,4.079151949554216e-08) mm + Endpoint of ComputeStep() was (-667.0731243736146,445.1146512599585,-1936.129813089954) + and current position to locate is (-667.0731243143266,445.1146511905251,-1936.129813049162) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000533739852e-07 mm long + and its vector is (6.92491539666662e-08,-7.190851647465024e-08,-5.807805791846476e-09) mm + Endpoint of ComputeStep() was (-894.0295609451402,583.4677638797642,-1799.999999994192) + and current position to locate is (-894.0295608758911,583.4677638078557,-1800) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996881009273e-08 mm long + and its vector is (-9.883740403893171e-08,5.606807462754659e-09,1.413241079717409e-08) mm + Endpoint of ComputeStep() was (-635.7342748353997,534.5225350467581,-1800.000000014132) + and current position to locate is (-635.7342749342371,534.5225350523649,-1800) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000293149462e-07 mm long + and its vector is (4.909054496238241e-09,-9.600739758752752e-08,-2.754063643806148e-08) mm + Endpoint of ComputeStep() was (-388.8665488747799,782.8296147420641,-1908.111414392479) + and current position to locate is (-388.8665488698709,782.8296146460567,-1908.11141442002) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994859647208e-08 mm long + and its vector is (4.969757583239698e-08,-2.26471570385911e-08,-8.376900950679556e-08) mm + Endpoint of ComputeStep() was (483.9525902103088,321.9305922616628,-1272.324842951898) + and current position to locate is (483.9525902600064,321.9305922390157,-1272.324843035667) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000311126297e-07 mm long + and its vector is (6.042816380613658e-08,6.565824151039124e-08,-4.513799467531499e-08) mm + Endpoint of ComputeStep() was (-139.8374939849597,521.8806320637983,-1161.930362840978) + and current position to locate is (-139.8374939245315,521.8806321294566,-1161.930362886116) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995764857872e-08 mm long + and its vector is (7.977416771609569e-08,1.495322976552416e-08,5.841638994752429e-08) mm + Endpoint of ComputeStep() was (406.3137395651106,413.8950893202415,-1659.34131493662) + and current position to locate is (406.3137396448848,413.8950893351947,-1659.341314878204) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000098458154e-07 mm long + and its vector is (-7.580842975585256e-08,3.9113956518122e-10,6.521463546960149e-08) mm + Endpoint of ComputeStep() was (-792.8778894595391,495.7642312662149,-1982.306635589448) + and current position to locate is (-792.8778895353475,495.764231266606,-1982.306635524234) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999718376984e-08 mm long + and its vector is (3.136236159662076e-08,2.447228553137393e-08,-9.174698334390996e-08) mm + Endpoint of ComputeStep() was (-219.2058664161419,-507.0472798992226,-486.3225842676341) + and current position to locate is (-219.2058663847795,-507.0472798747504,-486.3225843593811) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000417234265e-07 mm long + and its vector is (5.126139512867667e-09,8.342834689756273e-08,5.489482646225952e-08) mm + Endpoint of ComputeStep() was (731.8382691798878,-164.0510523698524,-1947.041490004038) + and current position to locate is (731.8382691850139,-164.0510522864241,-1947.041489949143) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995490072634e-08 mm long + and its vector is (-2.801948539854493e-08,-6.154456855256285e-08,7.366929821728263e-08) mm + Endpoint of ComputeStep() was (567.4151963963013,-138.7048405352494,-1800.000000073669) + and current position to locate is (567.4151963682818,-138.7048405967939,-1800) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999861995111e-08 mm long + and its vector is (3.291575012553949e-08,6.78205935855658e-09,9.418363333679736e-08) mm + Endpoint of ComputeStep() was (678.5911401224224,85.69038241834141,-1831.409589873967) + and current position to locate is (678.5911401553382,85.69038242512347,-1831.409589779784) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000207477321e-07 mm long + and its vector is (4.96006578032393e-08,8.079166491370415e-08,-3.181958163622767e-08) mm + Endpoint of ComputeStep() was (-691.01082069196,145.87027962241,-1845.160229731572) + and current position to locate is (-691.0108206423594,145.8702797032016,-1845.160229763391) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996793605981e-08 mm long + and its vector is (-7.385619937849697e-08,-6.546042641275562e-08,1.613034328329377e-08) mm + Endpoint of ComputeStep() was (-566.8725428171413,-318.0495560044927,-1377.051254738257) + and current position to locate is (-566.8725428909975,-318.0495560699531,-1377.051254722127) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000193817787e-07 mm long + and its vector is (-7.057599304971518e-08,4.866917890922196e-08,-5.148149284650572e-08) mm + Endpoint of ComputeStep() was (-517.721408007926,113.4219714436882,-1922.181337432782) + and current position to locate is (-517.721408078502,113.4219714923574,-1922.181337484264) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999305230946e-08 mm long + and its vector is (5.577112460741773e-08,-6.030060717421293e-08,-5.703873284801375e-08) mm + Endpoint of ComputeStep() was (-692.0219435387634,165.0821476542313,-1697.385820344265) + and current position to locate is (-692.0219434829922,165.0821475939307,-1697.385820401304) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000242180933e-07 mm long + and its vector is (-7.702038828938385e-08,4.401863407110795e-08,-4.615435500454623e-08) mm + Endpoint of ComputeStep() was (384.1907901157526,-319.9959950961666,-1270.478184215743) + and current position to locate is (384.1907900387322,-319.995995052148,-1270.478184261897) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000061378504e-07 mm long + and its vector is (-9.544987733534072e-08,-1.989451448025648e-08,2.221554495918099e-08) mm + Endpoint of ComputeStep() was (509.9931841600733,313.7306815744842,-1707.374212472849) + and current position to locate is (509.9931840646234,313.7306815545896,-1707.374212450633) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995982923451e-08 mm long + and its vector is (-9.999200756283244e-08,-4.881712811766192e-10,-1.162788976216689e-09) mm + Endpoint of ComputeStep() was (-529.162891978005,272.2842930418613,-1794.960813328967) + and current position to locate is (-529.162892077997,272.2842930413731,-1794.960813330129) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998922672398e-08 mm long + and its vector is (3.087632194365142e-08,-8.503320714225993e-08,4.2614601625246e-08) mm + Endpoint of ComputeStep() was (800.2188413359543,-340.5113222740814,-1672.12193427583) + and current position to locate is (800.2188413668306,-340.5113223591146,-1672.121934233216) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000001047081272e-07 mm long + and its vector is (-4.384617113828426e-08,-2.920080532931024e-08,-8.499910109094344e-08) mm + Endpoint of ComputeStep() was (-598.0830119112353,363.7261481279288,-1833.52214890212) + and current position to locate is (-598.0830119550815,363.726148098728,-1833.522148987119) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000063736332e-07 mm long + and its vector is (-7.334767815336818e-08,-6.248350814530568e-08,2.675687937880866e-08) mm + Endpoint of ComputeStep() was (-557.4728940474452,177.2977844991832,-1801.344153426263) + and current position to locate is (-557.4728941207928,177.2977844366997,-1801.344153399506) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999990596049177e-08 mm long + and its vector is (2.657657205418218e-09,-9.885255281005811e-09,-9.947461876436137e-08) mm + Endpoint of ComputeStep() was (-528.2805310469732,101.783806554997,-1859.167606086964) + and current position to locate is (-528.2805310443156,101.7838065451117,-1859.167606186439) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000027895411e-07 mm long + and its vector is (-8.931203865358839e-08,4.479227300180355e-08,4.125240593566559e-09) mm + Endpoint of ComputeStep() was (334.316959971079,-371.7958719091973,-1798.729381089038) + and current position to locate is (334.3169598817669,-371.795871864405,-1798.729381084912) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000252287397e-07 mm long + and its vector is (-9.077325557882432e-09,-5.718271722798818e-08,8.153369890351314e-08) mm + Endpoint of ComputeStep() was (-819.9158912370889,123.1015699052205,-1841.512820551972) + and current position to locate is (-819.9158912461662,123.1015698480377,-1841.512820470439) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000031087701e-07 mm long + and its vector is (8.918038929550676e-08,-4.021171662316192e-08,-2.073346649922314e-08) mm + Endpoint of ComputeStep() was (585.2688367454728,357.2774547034115,-365.8815131130666) + and current position to locate is (585.2688368346531,357.2774546631998,-365.8815131338001) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999869835133e-08 mm long + and its vector is (-2.100057372445008e-08,9.316659088653978e-08,2.964725354104303e-08) mm + Endpoint of ComputeStep() was (-776.0351377994162,-172.9578450129381,-1830.673722217033) + and current position to locate is (-776.0351378204168,-172.9578449197715,-1830.673722187386) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000001037108516e-07 mm long + and its vector is (-5.036713446315844e-08,4.430346223216475e-08,7.416451808239799e-08) mm + Endpoint of ComputeStep() was (-540.0547141461053,-104.1196700119252,-1881.980403176072) + and current position to locate is (-540.0547141964724,-104.1196699676217,-1881.980403101908) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999992522319509e-08 mm long + and its vector is (2.371211849094834e-08,9.828248437315779e-09,-9.664950084697921e-08) mm + Endpoint of ComputeStep() was (-706.4143980088126,11.28814156050733,-1727.338214775198) + and current position to locate is (-706.4143979851004,11.28814157033558,-1727.338214871847) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000359037163e-07 mm long + and its vector is (5.003960268368246e-08,-6.560853194059746e-08,-5.649394552165177e-08) mm + Endpoint of ComputeStep() was (-582.9564333395551,-96.49703438371178,-1634.722944948493) + and current position to locate is (-582.9564332895155,-96.49703444932031,-1634.722945004987) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000279919948e-07 mm long + and its vector is (1.761631551744358e-08,8.64225739860558e-08,-4.712546797236428e-08) mm + Endpoint of ComputeStep() was (-192.7992703283345,-515.1004188084953,-1232.290932178284) + and current position to locate is (-192.7992703107182,-515.1004187220727,-1232.29093222541) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000363662266e-07 mm long + and its vector is (-5.11495272803586e-08,7.499910825714551e-08,-4.193884706182871e-08) mm + Endpoint of ComputeStep() was (-571.9551493612616,-5.528103685832389,-1715.906233630083) + and current position to locate is (-571.9551494124112,-5.528103610833281,-1715.906233672022) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000074099646e-07 mm long + and its vector is (8.506555104759173e-08,-4.054517432905413e-08,3.346553967276122e-08) mm + Endpoint of ComputeStep() was (-505.3241569768131,93.62371827436611,-1768.749721964113) + and current position to locate is (-505.3241568917476,93.62371823382094,-1768.749721930647) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000190478763e-07 mm long + and its vector is (-5.842946393386228e-08,-7.412359082081821e-08,3.304080564703327e-08) mm + Endpoint of ComputeStep() was (745.6206824794609,289.9134318878212,-1168.977911036635) + and current position to locate is (745.6206824210315,289.9134318136976,-1168.977911003594) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.9999949585221e-08 mm long + and its vector is (4.478761184145696e-08,-7.800754531217535e-08,-4.369076123111881e-08) mm + Endpoint of ComputeStep() was (-493.751046099562,78.80294748364732,-1515.923261311936) + and current position to locate is (-493.7510460547744,78.80294740563977,-1515.923261355626) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997151848905e-08 mm long + and its vector is (-5.696949756384129e-08,-5.824669813137007e-08,5.79809693590505e-08) mm + Endpoint of ComputeStep() was (-616.0646957316302,-81.10645581774146,-1963.824190290792) + and current position to locate is (-616.0646957885997,-81.10645587598816,-1963.824190232811) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000005613758e-07 mm long + and its vector is (-5.133949798619142e-08,-4.680325105255179e-08,7.192852535808925e-08) mm + Endpoint of ComputeStep() was (527.7769137841046,-225.7336281948361,-1103.988313905757) + and current position to locate is (527.7769137327651,-225.7336282416393,-1103.988313833829) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999148799689e-08 mm long + and its vector is (-4.077747917108354e-08,-9.020703828355181e-08,-1.413809513906017e-08) mm + Endpoint of ComputeStep() was (-430.6665844905061,-388.4923331264973,-1156.759244000299) + and current position to locate is (-430.6665845312835,-388.4923332167043,-1156.759244014437) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999715305484e-08 mm long + and its vector is (9.878374385152711e-08,-1.545743089081952e-08,1.68347469298169e-09) mm + Endpoint of ComputeStep() was (-469.6978377138238,-171.4174475788744,-1671.606608079209) + and current position to locate is (-469.6978376150401,-171.4174475943318,-1671.606608077526) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998972899393e-08 mm long + and its vector is (-5.931667601544177e-08,-6.70289068693819e-08,-4.459434421733022e-08) mm + Endpoint of ComputeStep() was (-151.4819627630371,476.501012594271,-1546.655254878622) + and current position to locate is (-151.4819628223538,476.5010125272421,-1546.655254923216) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000526547424e-07 mm long + and its vector is (-1.486068867961876e-08,-8.388980177187477e-08,-5.236097422312014e-08) mm + Endpoint of ComputeStep() was (-732.2791896280296,298.7371796194909,-1948.164014639581) + and current position to locate is (-732.2791896428903,298.7371795356011,-1948.164014691941) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997557649664e-08 mm long + and its vector is (-6.257721452129772e-08,2.996068815264152e-08,7.201697371783666e-08) mm + Endpoint of ComputeStep() was (-153.1096104277878,-523.9166571086299,-1800.000000072017) + and current position to locate is (-153.109610490365,-523.9166570786692,-1800) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998266226999e-08 mm long + and its vector is (-4.745459136756836e-08,-3.887063027008253e-08,7.897551768110134e-08) mm + Endpoint of ComputeStep() was (-579.9672730100905,6.161345849239361,-1959.462452273076) + and current position to locate is (-579.9672730575451,6.161345810368731,-1959.4624521941) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000268631198e-07 mm long + and its vector is (9.738232620293275e-08,1.397012283632648e-09,-2.268780008307658e-08) mm + Endpoint of ComputeStep() was (-796.9571344335483,-73.01443544349389,-1752.544894837165) + and current position to locate is (-796.957134336166,-73.01443544209688,-1752.544894859853) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000425698746e-07 mm long + and its vector is (-5.164292815607041e-08,8.424375351340632e-08,1.536250238132197e-08) mm + Endpoint of ComputeStep() was (-659.5360173936726,-8.424342666374787e-08,-1948.652666689266) + and current position to locate is (-659.5360174453156,3.268496584496461e-13,-1948.652666673904) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995076972868e-08 mm long + and its vector is (-2.13367457035929e-09,-5.682431947207078e-08,-8.225833880715072e-08) mm + Endpoint of ComputeStep() was (-567.9496390351524,245.3388273744004,-1748.601620936359) + and current position to locate is (-567.949639037286,245.3388273175761,-1748.601621018618) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000670465495e-07 mm long + and its vector is (2.510148533474421e-09,7.189728989942523e-08,6.945856512174942e-08) mm + Endpoint of ComputeStep() was (-491.5056882600784,201.1317904243734,-1898.413421617655) + and current position to locate is (-491.5056882575682,201.1317904962707,-1898.413421548196) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000067485408e-07 mm long + and its vector is (-1.534169769001892e-08,7.34418570402795e-08,6.61129888612777e-08) mm + Endpoint of ComputeStep() was (-983.5014495713981,-9.555568318016466,-1691.49138501328) + and current position to locate is (-983.5014495867398,-9.555568244574609,-1691.491384947167) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999990422340579e-08 mm long + and its vector is (1.291198259423254e-08,1.882241917883221e-08,-9.736004358273931e-08) mm + Endpoint of ComputeStep() was (-683.2731274349787,183.0824826838081,-1901.280628721521) + and current position to locate is (-683.2731274220668,183.0824827026305,-1901.280628818881) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000288098694e-07 mm long + and its vector is (-5.586832685366971e-08,-8.213433488890587e-08,1.151897777162958e-08) mm + Endpoint of ComputeStep() was (-634.3401570783478,141.8187754503412,-1745.220740055704) + and current position to locate is (-634.3401571342162,141.8187753682069,-1745.220740044185) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000519631061e-07 mm long + and its vector is (-9.125983524427284e-08,2.017309697066594e-08,-3.556260708137415e-08) mm + Endpoint of ComputeStep() was (-579.8965617827048,-10.95342536364622,-1783.036033891444) + and current position to locate is (-579.8965618739646,-10.95342534347312,-1783.036033927007) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000210812413e-07 mm long + and its vector is (1.512626113253646e-08,6.344619762899129e-08,7.580092642456293e-08) mm + Endpoint of ComputeStep() was (-626.4577032663343,14.4725962439852,-1648.635516180072) + and current position to locate is (-626.457703251208,14.4725963074314,-1648.635516104271) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000391584406e-07 mm long + and its vector is (9.418636182090268e-08,9.807877177081537e-09,-3.213631316612009e-08) mm + Endpoint of ComputeStep() was (-1008.548480064296,-272.2592063394882,-1817.719091343467) + and current position to locate is (-1008.548479970109,-272.2592063296803,-1817.719091375603) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996232759559e-08 mm long + and its vector is (-3.445109086896991e-08,6.320027523543104e-08,6.941786523384508e-08) mm + Endpoint of ComputeStep() was (-883.8504998026467,-314.764486004734,-1840.882642162087) + and current position to locate is (-883.8504998370978,-314.7644859415337,-1840.882642092669) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999785361237e-08 mm long + and its vector is (-7.806420398992486e-08,5.800256985821761e-08,-2.327396941836923e-08) mm + Endpoint of ComputeStep() was (-891.3980345323329,-294.7538608672206,-1661.367333302463) + and current position to locate is (-891.3980346103971,-294.7538608092181,-1661.367333325737) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997934548455e-08 mm long + and its vector is (3.196919351466931e-08,5.954922244200134e-08,-7.370113053184468e-08) mm + Endpoint of ComputeStep() was (-946.2341253718166,-285.5365136378312,-1585.669350382584) + and current position to locate is (-946.2341253398474,-285.536513578282,-1585.669350456285) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996666893825e-08 mm long + and its vector is (7.926837497507222e-08,6.268635388551047e-09,-6.06401044933591e-08) mm + Endpoint of ComputeStep() was (-652.4287189880596,408.5059663246969,-1844.166291422422) + and current position to locate is (-652.4287189087912,408.5059663309656,-1844.166291483062) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000055418828e-07 mm long + and its vector is (-9.434711500944104e-08,2.025372936031999e-08,-2.623755790409632e-08) mm + Endpoint of ComputeStep() was (497.3170665695986,51.72751096229917,-1091.303445831272) + and current position to locate is (497.3170664752515,51.7275109825529,-1091.30344585751) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000355759098e-07 mm long + and its vector is (-1.924718162626959e-08,-2.786123332043644e-08,-9.409200174559373e-08) mm + Endpoint of ComputeStep() was (536.1274336549022,-433.426562364876,-1473.994843143594) + and current position to locate is (536.1274336356551,-433.4265623927373,-1473.994843237686) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999396491833e-08 mm long + and its vector is (2.25611529458547e-09,-2.997217052325141e-08,9.537598089082167e-08) mm + Endpoint of ComputeStep() was (-564.1345356731156,146.642003843601,-1771.43269678886) + and current position to locate is (-564.1345356708595,146.6420038136288,-1771.432696693484) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999936499596e-08 mm long + and its vector is (-7.711946636845823e-09,-9.904243825076264e-08,-1.145076566899661e-08) mm + Endpoint of ComputeStep() was (567.0132904615352,390.0660378661087,-1151.129304213174) + and current position to locate is (567.0132904538233,390.0660377670663,-1151.129304224625) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996506170315e-08 mm long + and its vector is (-2.957398237413145e-08,6.452006573454128e-08,-7.044525318633532e-08) mm + Endpoint of ComputeStep() was (367.2606516247282,432.2338379296128,-1019.717441273592) + and current position to locate is (367.2606515951542,432.2338379941328,-1019.717441344037) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000020315078e-07 mm long + and its vector is (7.14186398909078e-08,6.193715762492502e-08,-3.260629455326125e-08) mm + Endpoint of ComputeStep() was (-671.4096062912627,86.86293062683718,-1727.042517144337) + and current position to locate is (-671.409606219844,86.86293068877434,-1727.042517176943) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000205063483e-07 mm long + and its vector is (-2.075432803394506e-08,7.406752899896674e-08,6.390041562553961e-08) mm + Endpoint of ComputeStep() was (-588.4667673196271,-111.1133406393276,-1839.0169301075) + and current position to locate is (-588.4667673403815,-111.11334056526,-1839.0169300436) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999990489419626e-08 mm long + and its vector is (-4.374476247903658e-08,3.2156489027102e-08,8.397819328820333e-08) mm + Endpoint of ComputeStep() was (549.8271626432028,13.78735895458031,-1186.988565275754) + and current position to locate is (549.827162599458,13.7873589867368,-1186.988565191775) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000144789967e-07 mm long + and its vector is (2.675221821846208e-08,-9.451969162910245e-08,-1.871762833616231e-08) mm + Endpoint of ComputeStep() was (647.7631772845438,-206.888535401226,-1277.520034932472) + and current position to locate is (647.763177311296,-206.8885354957457,-1277.520034951189) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998642350326e-08 mm long + and its vector is (-7.691109260576923e-08,-6.291350018727826e-08,-1.125044946093112e-08) mm + Endpoint of ComputeStep() was (-74.45147892397461,-565.5151277565324,-1706.284519941576) + and current position to locate is (-74.4514790008857,-565.5151278194459,-1706.284519952826) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000216298587e-07 mm long + and its vector is (-7.258233836182626e-08,-6.587680445591104e-08,1.980038177862298e-08) mm + Endpoint of ComputeStep() was (507.1308013877807,-507.1308012493222,-1799.274589378231) + and current position to locate is (507.1308013151983,-507.130801315199,-1799.274589358431) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000040473302e-07 mm long + and its vector is (8.614756552560721e-08,4.258900787590392e-08,2.765455064945854e-08) mm + Endpoint of ComputeStep() was (-586.8837752082495,102.1430071516476,-1659.204791849806) + and current position to locate is (-586.883775122102,102.1430071942366,-1659.204791822151) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000007578538e-07 mm long + and its vector is (-3.964260031352751e-10,-8.606721735304745e-08,-5.09144228999503e-08) mm + Endpoint of ComputeStep() was (-599.578049238241,199.1101055248391,-1703.13360677651) + and current position to locate is (-599.5780492386374,199.1101054387719,-1703.133606827425) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994199547025e-08 mm long + and its vector is (4.193816494080238e-08,-7.514961453125579e-08,-5.092852006782778e-08) mm + Endpoint of ComputeStep() was (222.2002936139286,-481.1725568098483,-1465.658898199891) + and current position to locate is (222.2002936558668,-481.1725568849979,-1465.658898250819) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999412980517e-08 mm long + and its vector is (-2.592292958070175e-08,9.463468586545787e-08,1.929447535076179e-08) mm + Endpoint of ComputeStep() was (-180.438136805395,498.3393208272072,-1964.99436925732) + and current position to locate is (-180.4381368313179,498.3393209218419,-1964.994369238026) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.9999992551539e-08 mm long + and its vector is (4.40483063357533e-08,1.550007766581984e-08,-8.842789611662738e-08) mm + Endpoint of ComputeStep() was (-645.5608592961887,120.4132047636576,-1661.096980619184) + and current position to locate is (-645.5608592521404,120.4132047791577,-1661.096980707612) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000146441281e-07 mm long + and its vector is (-8.231938863900723e-08,-5.537388148013633e-08,-1.254011294804513e-08) mm + Endpoint of ComputeStep() was (496.3941717904476,-59.94018925197994,-1699.615830469829) + and current position to locate is (496.3941717081282,-59.94018930735382,-1699.615830482369) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996862289458e-08 mm long + and its vector is (4.461884373085923e-08,-4.127377906115726e-08,-7.940798241179436e-08) mm + Endpoint of ComputeStep() was (-440.6931104399495,411.4551168189411,-1971.816661056732) + and current position to locate is (-440.6931103953307,411.4551167776673,-1971.81666113614) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 11303 (anti_proton,5.3585489827578[GeV]) at (-477.47618121629,148.37956857705,-1705.9070356484) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[8,10] 1.105232804548e-07 [GeV] +Cell[8,6] 8.7844421025466e-05 [GeV] +Cell[7,32] 1.0477378964424e-12 [GeV] +Cell[7,10] 0.00019914934804297 [GeV] +Cell[8,5] 4.8659883323126e-06 [GeV] +Cell[8,7] 6.4275352274308e-06 [GeV] +Cell[7,8] 0.0014157393806566 [GeV] +Cell[2,34] 0.00093870906211873 [GeV] +Cell[6,2] 0.0017794551248912 [GeV] +Cell[7,27] 4.590857133735e-07 [GeV] +Cell[0,31] 0.00047408302687802 [GeV] +Cell[2,41] 8.2603844904156e-05 [GeV] +Cell[2,32] 2.352192212129e-06 [GeV] +Cell[7,33] 1.4187772199534e-05 [GeV] +Cell[6,25] 0.00013052718343749 [GeV] +Cell[9,33] 2.0730450976771e-05 [GeV] +Cell[8,34] 2.9854426975362e-07 [GeV] +Cell[8,39] 6.0124553336875e-05 [GeV] +Cell[9,39] 0.00046655767966193 [GeV] +Cell[5,25] 2.4266584019642e-05 [GeV] +Cell[1,4] 0.0020356967151216 [GeV] +Cell[2,28] 0.024179700484496 [GeV] +Cell[2,10] 0.00013569744809502 [GeV] +Cell[6,29] 7.4490782862995e-06 [GeV] +Cell[7,43] 1.476857776197e-07 [GeV] +Cell[7,44] 0.0012370693515683 [GeV] +Cell[0,0] 0.0017244154524383 [GeV] +Cell[6,28] 0.00067803536919052 [GeV] +Cell[6,27] 0.0014309700967525 [GeV] +Cell[6,3] 0.00046540153715705 [GeV] +Cell[2,19] 0.006024338862683 [GeV] +Cell[2,18] 0.00066258993461656 [GeV] +Cell[7,30] 0.0015086912704601 [GeV] +Cell[6,5] 1.4897901564837e-08 [GeV] +Cell[6,41] 0.00013987633287798 [GeV] +Cell[6,40] 3.6447747261263e-06 [GeV] +Cell[3,27] 0.00080140069699075 [GeV] +Cell[1,24] 0.0094117860653351 [GeV] +Cell[2,13] 0.00029712360212261 [GeV] +Cell[6,46] 3.9464794099331e-11 [GeV] +Cell[6,45] 0.0020192900997926 [GeV] +Cell[5,46] 5.1098522753477e-05 [GeV] +Cell[5,47] 7.0378616056814e-06 [GeV] +Cell[3,44] 0.0022663963321884 [GeV] +Cell[6,4] 4.1804773209151e-06 [GeV] +Cell[4,2] 7.0972557068671e-08 [GeV] +Cell[4,0] 2.2310219614383e-05 [GeV] +Cell[4,29] 1.098620873563e-08 [GeV] +Cell[4,28] 2.8692830230739e-06 [GeV] +Cell[12,34] 1.5117845418899e-07 [GeV] +Cell[0,24] 0.026846692072677 [GeV] +Cell[0,39] 2.5992985453058e-06 [GeV] +Cell[0,21] 1.2908256105461 [GeV] +Cell[1,23] 0.0620867584832 [GeV] +Cell[1,22] 0.25492743723132 [GeV] +Cell[0,22] 0.63370535684611 [GeV] +Cell[0,23] 0.08251791215998 [GeV] +Cell[0,20] 0.082121093084054 [GeV] +Cell[0,2] 0.00047629555187143 [GeV] +Cell[0,46] 0.0038693927869552 [GeV] +Cell[0,45] 0.0045889971813442 [GeV] +Cell[0,47] 0.0036671920703762 [GeV] +Cell[0,19] 0.2163394467482 [GeV] +Cell[1,19] 0.0043574605818321 [GeV] +Cell[1,17] 7.7964902156964e-06 [GeV] +Cell[1,18] 0.00027885320225107 [GeV] +Cell[0,17] 0.0024071659960304 [GeV] +Cell[0,18] 0.024462514235632 [GeV] +Cell[3,37] 0.0022279320636188 [GeV] +Cell[3,47] 0.00079885046548736 [GeV] +Cell[8,4] 3.4880287898886e-08 [GeV] +Cell[2,27] 0.11158514106181 [GeV] +Cell[2,26] 0.00034505592511039 [GeV] +Cell[1,45] 0.0044099160905224 [GeV] +Cell[3,4] 1.5561818188417e-06 [GeV] +Cell[6,44] 0.023807625587356 [GeV] +Cell[4,42] 9.0541696408764e-08 [GeV] +Cell[2,5] 0.00078996354896295 [GeV] +Cell[2,33] 0.0030184064111147 [GeV] +Cell[2,38] 0.00028932564402521 [GeV] +Cell[1,5] 2.0444545118607e-05 [GeV] +Cell[1,6] 4.5550196205113e-08 [GeV] +Cell[3,33] 5.7950192964427e-06 [GeV] +Cell[1,40] 0.00070612387760013 [GeV] +Cell[1,41] 0.00025937607368644 [GeV] +Cell[0,42] 0.0011336536029073 [GeV] +Cell[1,42] 0.00073138259735697 [GeV] +Cell[0,8] 0.00048865231305695 [GeV] +Cell[0,25] 0.064210198295902 [GeV] +Cell[0,3] 2.1011292076309e-06 [GeV] +Cell[0,16] 0.0014983500186186 [GeV] +Cell[4,44] 1.2137167670289e-05 [GeV] +Cell[1,27] 0.0047585565059359 [GeV] +Cell[2,12] 1.8847452389309e-05 [GeV] +Cell[3,30] 3.0437080713455e-06 [GeV] +Cell[2,14] 2.2738393658074e-05 [GeV] +Cell[1,15] 2.5525514502078e-09 [GeV] +Cell[1,20] 0.026011548571799 [GeV] +Cell[4,6] 4.1590080199967e-06 [GeV] +Cell[4,43] 0.00038897368824291 [GeV] +Cell[4,41] 4.3759646359831e-09 [GeV] +Cell[7,1] 0.0024519111739171 [GeV] +Cell[1,1] 1.9149248072381e-06 [GeV] +Cell[1,10] 0.00035600021755819 [GeV] +Cell[1,8] 3.0154175474308e-05 [GeV] +Cell[2,9] 0.00099239483302517 [GeV] +Cell[1,12] 0.00042944890486012 [GeV] +Cell[4,32] 1.902692715521e-05 [GeV] +Cell[2,7] 0.00030534762842808 [GeV] +Cell[0,1] 1.5420035264697e-05 [GeV] +Cell[0,38] 0.0055333806433627 [GeV] +Cell[1,21] 0.52391590277754 [GeV] +Cell[1,11] 1.4012786690955e-05 [GeV] +Cell[3,13] 1.7714466346661e-05 [GeV] +Cell[1,33] 3.3524932436535e-05 [GeV] +Cell[2,46] 8.0533757572994e-06 [GeV] +Cell[1,46] 0.00034568030945127 [GeV] +Cell[2,0] 2.4284511746373e-06 [GeV] +Cell[2,1] 0.00054563845410996 [GeV] +Cell[2,21] 0.0067575611769319 [GeV] +Cell[1,30] 3.0848277150653e-05 [GeV] +Cell[1,25] 0.0024747843146137 [GeV] +Cell[2,22] 0.0016856342576771 [GeV] +Cell[2,23] 2.1595427758712e-06 [GeV] +Cell[1,29] 0.00052257160939513 [GeV] +Cell[5,15] 1.5655736206099e-08 [GeV] +Cell[5,14] 1.1630615335889e-07 [GeV] +Cell[2,40] 0.0022288108046132 [GeV] +Cell[2,39] 0.0082402056417734 [GeV] +Cell[5,44] 6.222419324331e-08 [GeV] +Cell[8,43] 0.0006098940540943 [GeV] +Cell[5,45] 0.00084017992624217 [GeV] +Cell[6,43] 5.3501759912251e-06 [GeV] +Cell[7,45] 0.00012571898043814 [GeV] +Cell[8,44] 0.00080459658121811 [GeV] +Cell[1,16] 0.0003789870009175 [GeV] +Cell[0,12] 0.00011453897324827 [GeV] +Cell[2,20] 0.0090313769146382 [GeV] +Cell[0,15] 1.2499482950261e-06 [GeV] +Cell[4,46] 9.9942367523909e-07 [GeV] +Cell[3,5] 7.4989792935867e-06 [GeV] +Cell[4,13] 1.1112247824599e-05 [GeV] +Cell[1,26] 0.0013314057281486 [GeV] +Cell[2,31] 7.2062501567416e-07 [GeV] +Cell[3,29] 3.3020268892869e-07 [GeV] +Cell[4,3] 0.0016219904295929 [GeV] +Cell[0,10] 0.00062569788110682 [GeV] +Cell[0,26] 0.0026675554994111 [GeV] +Cell[1,44] 0.0017093293704821 [GeV] +Cell[2,44] 0.0019739892099803 [GeV] +Cell[2,6] 0.0025112479131178 [GeV] +Cell[6,19] 4.0485241340056e-05 [GeV] +Cell[6,21] 0.00030531445794668 [GeV] +Cell[7,3] 0.00029845837370874 [GeV] +Cell[7,2] 5.6773874796363e-05 [GeV] +Cell[8,3] 6.1609398471774e-11 [GeV] +Cell[9,34] 0.00023422258259131 [GeV] +Cell[5,10] 1.0411944822408e-07 [GeV] +Cell[5,0] 1.7947854939848e-07 [GeV] +Cell[2,4] 3.5779117759375e-05 [GeV] +Cell[3,3] 0.00034099760734193 [GeV] +Cell[3,2] 0.00064008880947279 [GeV] +Cell[2,3] 0.00057741631592262 [GeV] +Cell[0,33] 0.0015026668228365 [GeV] +Cell[0,9] 2.0821500620514e-06 [GeV] +Cell[1,43] 5.4570254246755e-07 [GeV] +Cell[1,7] 0.00033206712061838 [GeV] +Cell[1,34] 0.0010032788793353 [GeV] +Cell[0,32] 0.0012614796077446 [GeV] +Cell[2,25] 8.2930605537967e-07 [GeV] +Cell[0,28] 0.0034474751787978 [GeV] +Cell[3,0] 1.4165834534538e-05 [GeV] +Cell[5,41] 1.763048931025e-08 [GeV] +Cell[3,20] 8.8220841382736e-07 [GeV] +Cell[2,42] 0.0017915636182141 [GeV] +Cell[2,43] 4.3903806317758e-07 [GeV] +Cell[1,32] 1.5379443386337e-05 [GeV] +Cell[0,30] 0.00010074534418004 [GeV] +Cell[4,4] 0.004949589278425 [GeV] +Cell[4,5] 0.00082085503154678 [GeV] +Cell[0,40] 0.00038746381181909 [GeV] +Cell[4,47] 0.00015747187529973 [GeV] +Cell[3,45] 0.0015401622336161 [GeV] +Cell[4,39] 0.00055308252544138 [GeV] +Cell[3,39] 0.00043020553027401 [GeV] +Cell[3,40] 1.5606053406373e-05 [GeV] +Cell[3,41] 1.0464167135069e-05 [GeV] +Cell[4,30] 0.00036014331651813 [GeV] +Cell[4,31] 0.0014413760323455 [GeV] +Cell[3,36] 8.349120998173e-05 [GeV] +Cell[3,38] 0.00032130740389459 [GeV] +Cell[0,44] 1.9107479602098e-06 [GeV] +Cell[0,43] 0.0016812802536665 [GeV] +Cell[0,14] 0.00040339322941793 [GeV] +### Total energy deposition in calorimeter by a source track in 194 cells : 3.6083603008679 (GeV) + +Source track ID 11298 (gamma,0.3844820986824[GeV]) at (-394.438084838,307.27609283726,-1252.6820773003) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[4,33] 0.00051099891 [GeV] +Cell[7,31] 0.00093954349678508 [GeV] +Cell[6,44] 0.00049402361049639 [GeV] +Cell[1,33] 0.010844046426713 [GeV] +Cell[3,5] 0.00051099891 [GeV] +Cell[3,2] 0.00084313674729515 [GeV] +Cell[1,34] 0.0020344828167929 [GeV] +Cell[2,25] 0.0065525388431178 [GeV] +Cell[3,20] 0.0070430545646317 [GeV] +Cell[3,18] 0.21450405959854 [GeV] +Cell[3,19] 0.13151955495106 [GeV] Cell[3,42] 0.00051099891 [GeV] -Cell[3,19] 0.00014869221136166 [GeV] -Cell[3,20] 0.00088414691578049 [GeV] -Cell[4,23] 0.0064202689126977 [GeV] -Cell[4,22] 0.051076511122362 [GeV] -Cell[3,22] 0.70759018790867 [GeV] -Cell[3,24] 0.099757008267306 [GeV] -Cell[3,26] 0.00030128888728575 [GeV] -Cell[3,25] 0.0029659258885867 [GeV] -Cell[3,15] 1.206052128282e-06 [GeV] -Cell[2,24] 0.0048008890372961 [GeV] -Cell[2,23] 0.054220261420984 [GeV] -Cell[4,24] 3.3406196295118e-06 [GeV] -Cell[1,39] 0.00065936525113746 [GeV] -Cell[7,45] 6.290258104741e-06 [GeV] -Cell[7,46] 2.4578184820712e-10 [GeV] -Cell[0,36] 3.4739151597023e-06 [GeV] -Cell[4,21] 0.010926003739233 [GeV] -Cell[5,6] 0.00047749847355615 [GeV] -Cell[5,5] 9.1007660570995e-05 [GeV] -Cell[2,27] 1.3331268011825e-05 [GeV] -Cell[4,40] 5.4349518322852e-06 [GeV] -Cell[4,26] 0.0056545130598532 [GeV] -Cell[4,27] 0.0026029894547728 [GeV] -Cell[4,28] 0.0072811453541676 [GeV] -Cell[3,27] 0.0022269462879388 [GeV] -Cell[4,29] 0.0017591785594901 [GeV] -Cell[5,29] 0.0010204577051558 [GeV] -Cell[5,30] 3.9047547033988e-08 [GeV] -Cell[4,30] 0.00030834011197089 [GeV] -Cell[0,1] 0.0010138516158416 [GeV] -Cell[3,16] 7.7091011079347e-06 [GeV] -Cell[5,39] 3.4635537303984e-08 [GeV] -Cell[5,40] 0.00051099891 [GeV] -Cell[4,41] 0.00038185625965792 [GeV] -Cell[3,41] 0.0053283801405315 [GeV] -Cell[11,43] 0.0003920162656208 [GeV] -### Total energy deposition in calorimeter by a source track in 60 cells : 2.4378300867384 (GeV) +Cell[3,17] 3.5742589431038e-06 [GeV] +### Total energy deposition in calorimeter by a source track in 13 cells : 0.37631101204437 (GeV) -Source track ID 5578 (neutron,1.4783692592721[GeV]) at (458.5309876774,199.3723484829,-606.56000985403) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[9,10] 5.2211124500445e-06 [GeV] -Cell[6,4] 0.0063538679440116 [GeV] -Cell[5,45] 0.0025252400091133 [GeV] -Cell[5,36] 1.4483540435322e-05 [GeV] -Cell[4,46] 0.001968366096149 [GeV] -Cell[5,37] 1.8912231780632e-09 [GeV] -Cell[4,44] 0.0064665215588769 [GeV] -Cell[10,24] 2.2221325401915e-05 [GeV] -Cell[10,29] 0.0021319861359659 [GeV] -Cell[10,30] 0.00038188743141893 [GeV] -Cell[6,6] 6.8704774021171e-06 [GeV] -Cell[6,5] 0.00023897171531553 [GeV] -Cell[10,11] 5.5246006995958e-05 [GeV] -Cell[10,10] 0.00015138854472389 [GeV] -Cell[9,21] 0.00030427949838685 [GeV] -Cell[6,3] 0.32751154214873 [GeV] -Cell[7,3] 2.254539882756e-06 [GeV] -Cell[5,44] 0.001786968863294 [GeV] -Cell[6,44] 0.00088997764201429 [GeV] -Cell[6,43] 4.2919624763726e-06 [GeV] -Cell[5,43] 0.0020603597163386 [GeV] -Cell[5,46] 0.0010170696063659 [GeV] -Cell[4,45] 2.9562207831987e-05 [GeV] -Cell[5,35] 0.00080907455526244 [GeV] -Cell[4,47] 0.00027647424617089 [GeV] -Cell[4,27] 3.2289675882566e-05 [GeV] -Cell[4,28] 0.0006140395501692 [GeV] -Cell[4,29] 8.7455562436958e-05 [GeV] -Cell[6,2] 0.0050091618568279 [GeV] -Cell[6,47] 3.1590276630595e-06 [GeV] -Cell[4,36] 6.0967687722496e-05 [GeV] -Cell[5,4] 2.1721719356719e-05 [GeV] -Cell[5,3] 0.0001948206498372 [GeV] -Cell[5,2] 0.0015409033068357 [GeV] -Cell[6,1] 0.0028135434139959 [GeV] -Cell[6,0] 3.6832424706176e-05 [GeV] -Cell[5,0] 3.8562992292555e-06 [GeV] -Cell[5,1] 3.1773541604707e-07 [GeV] -Cell[7,18] 3.1548184924759e-06 [GeV] -Cell[2,16] 0.00049319073184372 [GeV] -Cell[5,47] 0.0016189546079908 [GeV] -Cell[5,28] 2.6096256595338e-05 [GeV] -Cell[6,42] 4.3845636412243e-07 [GeV] -Cell[6,41] 2.6659108698368e-11 [GeV] -### Total energy deposition in calorimeter by a source track in 44 cells : 0.36757503258426 (GeV) -Source track ID 5579 (pi+,0.53432334127533[GeV]) at (105.77489815794,488.68361024254,291.60627591477) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[12,10] 0.0013614257788034 [GeV] -Cell[12,7] 1.2240390367424e-07 [GeV] -Cell[11,10] 0.065139217747733 [GeV] -Cell[11,9] 0.26672970508186 [GeV] -Cell[12,9] 0.063086728810175 [GeV] -Cell[10,8] 0.0016122477704294 [GeV] -Cell[12,8] 0.0010796846362138 [GeV] -Cell[11,8] 0.001075660302197 [GeV] -### Total energy deposition in calorimeter by a source track in 8 cells : 0.40008479253132 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999083854521e-08 mm long + and its vector is (6.947709607629804e-08,-4.765691308250553e-08,-5.386789325712016e-08) mm + Endpoint of ComputeStep() was (785.60223985201,12.21636420095886,-750.7758224149786) + and current position to locate is (785.6022399214871,12.21636415330194,-750.7758224688465) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 5580 (kaon-,1.5174608392598[GeV]) at (463.70720734527,-187.01771535352,442.36746255727) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[12,44] 0.021433825383555 [GeV] -Cell[16,38] 0.00075815185784927 [GeV] -Cell[8,20] 3.964722721139e-05 [GeV] -Cell[12,31] 5.0322560127825e-09 [GeV] -Cell[11,45] 2.8953071591786e-08 [GeV] -Cell[11,44] 0.0047882980690281 [GeV] -Cell[9,34] 0.0035875297560704 [GeV] -Cell[11,32] 0.00087847067403674 [GeV] -Cell[13,31] 7.7921386225739e-05 [GeV] -Cell[17,39] 0.0013066931399069 [GeV] -Cell[16,39] 0.0020476952062627 [GeV] -Cell[13,41] 0.0052378002771337 [GeV] -Cell[14,47] 0.030806243812577 [GeV] -Cell[13,39] 0.0021288504392695 [GeV] -Cell[12,29] 2.1419284224976e-05 [GeV] -Cell[17,41] 0.0015754360561501 [GeV] -Cell[12,30] 0.0016977841503793 [GeV] -Cell[14,43] 4.5359424214439e-05 [GeV] -Cell[10,22] 1.3977495755057e-05 [GeV] -Cell[10,21] 6.8284862209111e-09 [GeV] -Cell[11,20] 1.5506533964071e-06 [GeV] -Cell[12,20] 0.00030776571383456 [GeV] -Cell[10,23] 7.0072929665912e-06 [GeV] -Cell[13,21] 0.0001190713193979 [GeV] -Cell[12,21] 9.4356742920354e-07 [GeV] -Cell[9,23] 0.00072294955889582 [GeV] -Cell[14,42] 5.4427082432085e-09 [GeV] -Cell[14,41] 1.1557679991938e-05 [GeV] -Cell[6,5] 0.00012557740827598 [GeV] -Cell[13,29] 1.1571682989597e-10 [GeV] -Cell[13,30] 0.00011210022563102 [GeV] -Cell[14,46] 0.00018183392297942 [GeV] -Cell[3,18] 3.8361070929113e-05 [GeV] -Cell[4,16] 0.0012119965005735 [GeV] -Cell[3,44] 3.3983290486503e-05 [GeV] -Cell[6,36] 0.00066406347795546 [GeV] -Cell[4,28] 1.883460087015e-05 [GeV] -Cell[4,29] 0.00038171043267869 [GeV] -Cell[11,43] 0.00076069844824023 [GeV] -Cell[12,45] 0.63221862895942 [GeV] -Cell[13,45] 0.017956864815867 [GeV] -Cell[13,44] 0.014400971966504 [GeV] -Cell[12,46] 0.032238176866106 [GeV] -Cell[13,43] 0.016082781196653 [GeV] -Cell[11,47] 0.0010019079218969 [GeV] -Cell[11,46] 0.00035333294424242 [GeV] -Cell[12,43] 0.0038329790857631 [GeV] -Cell[13,1] 0.00018510834400377 [GeV] -Cell[13,0] 0.00034745327880069 [GeV] -Cell[13,46] 0.010812007496559 [GeV] -Cell[9,36] 0.00062590129338611 [GeV] -Cell[10,0] 0.0013947840666699 [GeV] -Cell[10,1] 6.7119573941454e-08 [GeV] -Cell[10,47] 5.5081272876123e-12 [GeV] -Cell[13,17] 8.4838727896567e-05 [GeV] -Cell[16,14] 3.2998434528508e-07 [GeV] -Cell[16,15] 7.5146637186663e-07 [GeV] -Cell[15,15] 1.2473901733756e-10 [GeV] -Cell[10,45] 1.2184940032967e-08 [GeV] -Cell[9,22] 0.0058937122338214 [GeV] -Cell[12,19] 3.0987319769338e-06 [GeV] -Cell[12,47] 0.00079551155452123 [GeV] -Cell[13,47] 0.001141897140351 [GeV] -Cell[12,1] 0.003854365619716 [GeV] -Cell[12,0] 4.7957470604956e-05 [GeV] -Cell[10,37] 3.3955195947783e-05 [GeV] -Cell[3,17] 7.6059979619458e-08 [GeV] -Cell[13,42] 0.0064931879863071 [GeV] -Cell[13,38] 1.0011244961447e-05 [GeV] -Cell[13,40] 0.0012039983205976 [GeV] -Cell[14,40] 0.003514121324181 [GeV] -Cell[14,39] 0.0033735897638785 [GeV] -Cell[17,38] 0.0055049171062773 [GeV] -Cell[16,37] 0.00037689751071412 [GeV] -Cell[17,37] 0.0003230157261429 [GeV] -Cell[16,40] 1.4067179677113e-08 [GeV] -Cell[18,38] 0.006846350756282 [GeV] -Cell[18,39] 0.0078731586207913 [GeV] -Cell[15,39] 7.1159248489721e-05 [GeV] -Cell[18,40] 0.0022950518546857 [GeV] -Cell[19,39] 0.00067210262889614 [GeV] -Cell[19,38] 7.4584670528566e-10 [GeV] -Cell[19,40] 0.0061031834486107 [GeV] -Cell[18,41] 0.0024127820423104 [GeV] -Cell[18,42] 0.00033120423596279 [GeV] -Cell[17,42] 6.1969986290933e-08 [GeV] -Cell[17,40] 0.00019947162858625 [GeV] -Cell[14,45] 2.2576537219265e-07 [GeV] -Cell[14,44] 2.5455410262794e-06 [GeV] -### Total energy deposition in calorimeter by a source track in 89 cells : 0.87205967856988 (GeV) -Source track ID 5812 (gamma,0.23378010273678[GeV]) at (499.39194060811,24.651362146254,861.27116699261) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[13,26] 0.0037228892133307 [GeV] -Cell[15,30] 0.0006731690992039 [GeV] -Cell[14,47] 0.010608146978509 [GeV] -Cell[13,39] 0.00094501134217361 [GeV] -Cell[13,29] 0.00089295962816417 [GeV] -Cell[14,28] 0.00048955981530316 [GeV] -Cell[12,7] 0.00017390074596138 [GeV] -Cell[14,46] 0.00039006803865026 [GeV] -Cell[14,39] 0.00092901552623511 [GeV] -Cell[16,40] 0.00033709816403862 [GeV] -Cell[14,0] 0.20828123056457 [GeV] -Cell[14,6] 0.00051099891 [GeV] -Cell[11,42] 0.00024605624646967 [GeV] -Cell[16,4] 0.00051099891 [GeV] -Cell[16,17] 0.00051099891 [GeV] -Cell[16,22] 0.0021784495970452 [GeV] -Cell[14,29] 0.0018412971095275 [GeV] -Cell[15,25] 0.00053825393759457 [GeV] -### Total energy deposition in calorimeter by a source track in 18 cells : 0.23378010273678 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998996367515e-08 mm long + and its vector is (-6.848176781204529e-08,7.036386762138136e-08,1.895182322186884e-08) mm + Endpoint of ComputeStep() was (495.2253043929683,-68.93401168088873,-1866.840044366838) + and current position to locate is (495.2253043244866,-68.93401161052486,-1866.840044347887) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 5813 (gamma,0.24889356279397[GeV]) at (220.292444424,-448.85547666225,830.38548697904) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[17,16] 0.0013650644305148 [GeV] -Cell[14,40] 0.0031478376308462 [GeV] -Cell[14,39] 0.2317121503588 [GeV] -Cell[15,39] 0.0016401833553719 [GeV] -Cell[14,38] 0.0018720213732044 [GeV] -Cell[14,12] 0.00040582763312191 [GeV] -Cell[15,14] 0.0087504780121028 [GeV] -### Total energy deposition in calorimeter by a source track in 7 cells : 0.24889356279397 (GeV) -Source track ID 5799 (kaon+,0.66761555298092[GeV]) at (296.4212738642,402.65919634441,378.24722952103) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[11,7] 0.04506865064065 [GeV] -Cell[12,6] 0.39051798356065 [GeV] -Cell[12,5] 0.056373059484302 [GeV] -Cell[11,6] 0.048611754653969 [GeV] -Cell[13,6] 0.0020458871800063 [GeV] -Cell[11,5] 0.0030791070916801 [GeV] -Cell[12,4] 0.0018222638163029 [GeV] -### Total energy deposition in calorimeter by a source track in 7 cells : 0.54751870642756 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999990777348e-08 mm long + and its vector is (-5.730487373512005e-08,5.208050879446091e-08,6.327536539174616e-08) mm + Endpoint of ComputeStep() was (-171.773816348976,-567.1671101367052,-1906.911543200356) + and current position to locate is (-171.7738164062809,-567.1671100846247,-1906.91154313708) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 5582 (pi-,1.1892086184819[GeV]) at (42.799119349843,-498.16486767222,1040.0400669348) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[16,38] 0.019113681916915 [GeV] -Cell[11,32] 0.00051099891 [GeV] -Cell[17,44] 4.8655236469131e-08 [GeV] -Cell[17,1] 0.0012634490365088 [GeV] -Cell[17,0] 0.00051345471978835 [GeV] -Cell[17,38] 0.19679899333297 [GeV] -Cell[16,37] 0.25481727484126 [GeV] -Cell[17,37] 0.00044918290017426 [GeV] -Cell[18,38] 0.00051679411208613 [GeV] -Cell[19,39] 4.5076229900928e-05 [GeV] -Cell[19,38] 0.00024146658828238 [GeV] -Cell[15,36] 0.20359526681028 [GeV] -Cell[16,36] 0.1912446677063 [GeV] -Cell[16,35] 0.0013065761200606 [GeV] -Cell[15,37] 0.023783431739506 [GeV] -Cell[15,38] 0.00072920036809284 [GeV] -Cell[15,35] 0.0049595837788303 [GeV] -Cell[15,13] 0.00051099891 [GeV] -Cell[17,36] 0.1687153140154 [GeV] -Cell[17,35] 0.0057825788034722 [GeV] -Cell[18,35] 1.2319460324761e-08 [GeV] -Cell[18,36] 0.00010081081972407 [GeV] -Cell[19,28] 0.00031404244893997 [GeV] -Cell[19,6] 1.3464386574924e-07 [GeV] -Cell[19,7] 1.9875977886841e-07 [GeV] -Cell[17,43] 2.2483291104436e-09 [GeV] -Cell[17,34] 9.1983261654605e-08 [GeV] -### Total energy deposition in calorimeter by a source track in 27 cells : 1.0753133327184 (GeV) -Source track ID 5784 (gamma,1.5351207931195[GeV]) at (395.55062756678,-305.84260826694,318.34458185319) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[11,44] 0.0034907779146959 [GeV] -Cell[10,21] 0.00041501684710425 [GeV] -Cell[12,22] 0.0025513562892139 [GeV] -Cell[10,11] 0.0031538885116423 [GeV] -Cell[10,10] 3.7202049952612e-08 [GeV] -Cell[11,43] 0.38630447324117 [GeV] -Cell[12,43] 0.018012323298542 [GeV] -Cell[11,42] 1.0680951224621 [GeV] -Cell[13,6] 0.0004422077204082 [GeV] -Cell[12,42] 0.026929491494839 [GeV] -Cell[16,16] 0.0025846342730854 [GeV] -Cell[11,41] 0.0027394093490519 [GeV] -Cell[12,41] 0.0034851054311883 [GeV] -Cell[10,42] 1.1651221966872e-05 [GeV] -Cell[10,43] 0.00051796574919808 [GeV] -Cell[10,12] 6.634172778206e-05 [GeV] -Cell[11,40] 0.00093116421240383 [GeV] -### Total energy deposition in calorimeter by a source track in 17 cells : 1.5197309669464 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998013451179e-08 mm long + and its vector is (7.57180949051417e-08,6.436880539695267e-08,1.110959146899404e-08) mm + Endpoint of ComputeStep() was (15.10430594498269,-679.8322293236421,-263.1000309433729) + and current position to locate is (15.10430602070079,-679.8322292592733,-263.1000309322633) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 5785 (gamma,0.1244455075516[GeV]) at (447.26696301103,-223.50003087,557.8546195273) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995402352675e-08 mm long + and its vector is (-4.455131374925259e-09,9.679001777840313e-08,2.473530003044289e-08) mm + Endpoint of ComputeStep() was (185.9367532519242,-529.9411004615887,-1691.754130089789) + and current position to locate is (185.9367532474691,-529.9411003647987,-1691.754130065054) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995466987196e-08 mm long + and its vector is (-5.127448332586937e-08,6.750838110747281e-09,-8.558822628401686e-08) mm + Endpoint of ComputeStep() was (-104.1821045170732,532.4154206969437,-1554.097842900926) + and current position to locate is (-104.1821045683477,532.4154207036945,-1554.097842986514) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000084437464e-07 mm long + and its vector is (8.817779928449454e-08,4.179094048595289e-08,-2.186766323575284e-08) mm + Endpoint of ComputeStep() was (-109.0153658120449,598.1457461583841,-1556.712560486464) + and current position to locate is (-109.0153657238671,598.145746200175,-1556.712560508332) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998499279059e-08 mm long + and its vector is (2.180351543756842e-08,-8.983590760180959e-08,3.813283910858445e-08) mm + Endpoint of ComputeStep() was (155.0611392844281,-480.1538889297051,-1657.374153200918) + and current position to locate is (155.0611393062316,-480.153889019541,-1657.374153162785) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000054533746e-07 mm long + and its vector is (3.874896492561675e-08,3.931336323148571e-08,-8.338452062162105e-08) mm + Endpoint of ComputeStep() was (-116.4438409360156,524.5420153912943,-1669.533256510205) + and current position to locate is (-116.4438408972666,524.5420154306076,-1669.533256593589) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000040594184e-07 mm long + and its vector is (5.558172233577352e-08,-6.130497354206454e-08,5.614606379822362e-08) mm + Endpoint of ComputeStep() was (598.5126462780479,253.540158968559,-1828.103795055524) + and current position to locate is (598.5126463336296,253.540158907254,-1828.103794999378) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000193984586e-07 mm long + and its vector is (-2.965327894344227e-08,3.554248451109743e-08,-8.86420821188949e-08) mm + Endpoint of ComputeStep() was (-200.6856871234705,508.4550716604439,-1751.942655504856) + and current position to locate is (-200.6856871531238,508.4550716959864,-1751.942655593498) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998048306342e-08 mm long + and its vector is (1.580065145390108e-08,-9.237864522696561e-08,3.487866706564091e-08) mm + Endpoint of ComputeStep() was (-637.9673115318913,9.237876779558753e-08,-1822.273295071084) + and current position to locate is (-637.9673115160906,1.225686219186173e-13,-1822.273295036206) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997997472356e-08 mm long + and its vector is (-2.056356152024819e-08,-6.60680257169588e-08,-7.219523467938416e-08) mm + Endpoint of ComputeStep() was (-514.4215319824427,274.9650187841583,-1915.240410780902) + and current position to locate is (-514.4215320030063,274.9650187180903,-1915.240410853097) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998569578617e-08 mm long + and its vector is (5.255553503502597e-08,7.936330348456977e-08,-3.064928932872135e-08) mm + Endpoint of ComputeStep() was (-83.3146814022231,-541.8739974337722,-1497.068470040597) + and current position to locate is (-83.31468134966757,-541.8739973544089,-1497.068470071246) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998937135136e-08 mm long + and its vector is (9.207599305227632e-08,2.795343334582867e-08,2.721424152696272e-08) mm + Endpoint of ComputeStep() was (-278.0258137227105,-451.2739028089117,-746.2367239721826) + and current position to locate is (-278.0258136306345,-451.2739027809583,-746.2367239449684) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000320183235e-07 mm long + and its vector is (-1.997830167965731e-08,-8.403549145441502e-08,-5.038759809394833e-08) mm + Endpoint of ComputeStep() was (508.3321659039824,423.0891871187725,-1799.999999949612) + and current position to locate is (508.3321658840041,423.089187034737,-1800) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000314810281e-07 mm long + and its vector is (8.764936865190975e-08,-4.11953422485567e-08,2.491060513420962e-08) mm + Endpoint of ComputeStep() was (-579.37800939722,-26.85372090170387,-1806.272780861861) + and current position to locate is (-579.3780093095706,-26.85372094289921,-1806.27278083695) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000006416313e-07 mm long + and its vector is (-1.333057753072353e-08,9.907853382173926e-08,2.396063791820779e-09) mm + Endpoint of ComputeStep() was (-521.0898374962734,189.9525737132897,-1108.365106851803) + and current position to locate is (-521.089837509604,189.9525738123683,-1108.365106849407) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000020155559e-07 mm long + and its vector is (-6.013681641547919e-08,7.267794899235014e-08,-3.318859853607137e-08) mm + Endpoint of ComputeStep() was (-29.8950355381495,699.3613420435254,-1605.580196459924) + and current position to locate is (-29.89503559828632,699.3613421162033,-1605.580196493113) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000015693296e-07 mm long + and its vector is (-1.517750547463947e-08,-6.564982868439984e-08,7.389007805613801e-08) mm + Endpoint of ComputeStep() was (214.4114008712538,1272.080250424522,-1726.768170239425) + and current position to locate is (214.4114008560763,1272.080250358872,-1726.768170165535) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000123543878e-07 mm long + and its vector is (7.365848375684436e-08,2.869455784093589e-09,6.757363735232502e-08) mm + Endpoint of ComputeStep() was (80.05258209513472,1270.824404205694,-1792.938722313473) + and current position to locate is (80.05258216879321,1270.824404208564,-1792.938722245899) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995538585506e-08 mm long + and its vector is (2.321229430890526e-09,9.98934410745278e-08,-3.987906893598847e-09) mm + Endpoint of ComputeStep() was (-91.29456558666257,1205.900867223416,-1798.018849595295) + and current position to locate is (-91.29456558434134,1205.90086732331,-1798.018849599283) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000199110995e-07 mm long + and its vector is (7.412194413802808e-08,5.727542884415016e-09,6.688151188427582e-08) mm + Endpoint of ComputeStep() was (11.45312324536463,1183.000094786304,-1700.20828442052) + and current position to locate is (11.45312331948657,1183.000094792032,-1700.208284353638) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000295491783e-07 mm long + and its vector is (-6.618990511242373e-08,-3.411560101085342e-08,-6.674599717371166e-08) mm + Endpoint of ComputeStep() was (53.73301932565635,1248.844571084197,-1683.200500116913) + and current position to locate is (53.73301925946645,1248.844571050081,-1683.200500183659) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999815260051e-08 mm long + and its vector is (-1.845038077874506e-08,5.162860361451749e-08,8.363053893845063e-08) mm + Endpoint of ComputeStep() was (-12.08139896881682,1251.978014023931,-1567.633347657064) + and current position to locate is (-12.0813989872672,1251.97801407556,-1567.633347573434) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998916261849e-08 mm long + and its vector is (-6.334583702027885e-08,-7.456605999323074e-08,-2.066894921881612e-08) mm + Endpoint of ComputeStep() was (107.1849051036297,1295.573771085505,-1433.736676327538) + and current position to locate is (107.1849050402838,1295.573771010939,-1433.736676348207) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994688620888e-08 mm long + and its vector is (-5.45470228985323e-08,-7.857624950702302e-08,2.916135599662084e-08) mm + Endpoint of ComputeStep() was (44.90309628029079,1432.983101190094,-1933.695221943792) + and current position to locate is (44.90309622574377,1432.983101111518,-1933.695221914631) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.0000006847062e-07 mm long + and its vector is (2.377925056862296e-08,-3.849947916023666e-08,-8.917595550883561e-08) mm + Endpoint of ComputeStep() was (-201.5382108893638,529.3110708500911,-1695.521532992873) + and current position to locate is (-201.5382108655845,529.3110708115917,-1695.521533082049) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000294231905e-07 mm long + and its vector is (-1.217733824887546e-08,-6.394367346729268e-08,7.591393114125822e-08) mm + Endpoint of ComputeStep() was (-260.5151952996178,475.3455135750643,-1687.446299285521) + and current position to locate is (-260.5151953117951,475.3455135111207,-1687.446299209607) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994429666944e-08 mm long + and its vector is (6.366005322888668e-08,3.707492624016595e-08,-6.762275006622076e-08) mm + Endpoint of ComputeStep() was (-179.4785166688106,498.6857347470822,-1723.531129268535) + and current position to locate is (-179.4785166051505,498.6857347841571,-1723.531129336158) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999565344734e-08 mm long + and its vector is (-9.089745844903518e-09,9.690006663731765e-08,2.297269929840695e-08) mm + Endpoint of ComputeStep() was (-232.3898728521536,639.0578587793798,-1946.890666967354) + and current position to locate is (-232.3898728612433,639.0578588762799,-1946.890666944382) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000107100424e-07 mm long + and its vector is (-4.807708364751306e-08,-7.080836894601816e-08,-5.171818884264212e-08) mm + Endpoint of ComputeStep() was (-289.8008127588059,572.612434607684,-1666.927008555535) + and current position to locate is (-289.800812806883,572.6124345368756,-1666.927008607253) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000592094221e-07 mm long + and its vector is (2.114504127348482e-08,6.371078598021995e-08,-7.4120407589362e-08) mm + Endpoint of ComputeStep() was (121.0500208245292,727.7542989408619,-1738.44754053054) + and current position to locate is (121.0500208456742,727.7542990045727,-1738.44754060466) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000435156379e-07 mm long + and its vector is (5.609952324903134e-08,7.616029051860096e-08,-3.244167601224035e-08) mm + Endpoint of ComputeStep() was (-88.91987576338634,872.0299174331979,-1693.23032048714) + and current position to locate is (-88.91987570728682,872.0299175093581,-1693.230320519582) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 11119 (proton,2.1151536860247[GeV]) at (-105.63918498463,488.71296544678,-1633.3339812601) Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[12,44] 0.11553817255793 [GeV] -Cell[8,40] 0.00073524840585101 [GeV] -Cell[14,21] 0.00044149252645003 [GeV] -Cell[12,45] 0.00068794331278716 [GeV] -Cell[13,44] 0.00704265074858 [GeV] +Cell[2,35] 0.00032673705451407 [GeV] +Cell[2,34] 1.9041229961658e-09 [GeV] +Cell[8,28] 3.5278657451272e-06 [GeV] +Cell[8,36] 7.2325794349126e-08 [GeV] +Cell[6,0] 5.6594405863279e-06 [GeV] +Cell[8,37] 0.0014124625285232 [GeV] +Cell[8,39] 1.9139342475682e-07 [GeV] +Cell[6,29] 0.00033075136798931 [GeV] +Cell[5,29] 0.0013270255758633 [GeV] +Cell[0,6] 0.0029722296361547 [GeV] +Cell[3,27] 0.0012673469995837 [GeV] +Cell[1,24] 2.7878676854016e-05 [GeV] +Cell[2,13] 0.0063297383543812 [GeV] +Cell[1,35] 0.0024842418907051 [GeV] +Cell[0,24] 0.0015728272291776 [GeV] +Cell[0,39] 0.00090953870955525 [GeV] +Cell[0,21] 1.1629479445219e-08 [GeV] +Cell[1,23] 0.00054625092648826 [GeV] +Cell[0,22] 5.4446178057788e-07 [GeV] +Cell[0,23] 0.00056227332839205 [GeV] +Cell[0,20] 0.0016276411516081 [GeV] +Cell[0,2] 5.8207660913467e-14 [GeV] +Cell[0,19] 8.5346522295367e-05 [GeV] +Cell[0,37] 0.0022750962288633 [GeV] +Cell[1,38] 0.0003402357974287 [GeV] +Cell[4,19] 4.6163566148607e-05 [GeV] +Cell[0,5] 0.00089710940488902 [GeV] +Cell[1,5] 2.7297573979013e-10 [GeV] +Cell[0,4] 1.2712553143501e-10 [GeV] +Cell[1,40] 7.8337241429836e-06 [GeV] +Cell[1,42] 4.6246859710664e-09 [GeV] +Cell[0,25] 2.0425650291145e-09 [GeV] +Cell[1,37] 0.0027980785232727 [GeV] +Cell[2,12] 1.7240313914954e-05 [GeV] +Cell[2,11] 0.00035920942638256 [GeV] +Cell[1,14] 0.14763748528002 [GeV] +Cell[2,15] 1.1052167188609e-05 [GeV] +Cell[1,15] 0.034444038725874 [GeV] +Cell[0,29] 5.005719375913e-05 [GeV] +Cell[1,10] 1.1473036061034e-05 [GeV] +Cell[1,9] 0.0017424486191278 [GeV] +Cell[1,8] 0.0016196451982823 [GeV] +Cell[1,13] 0.42604712408769 [GeV] +Cell[1,12] 0.019191138427926 [GeV] +Cell[6,31] 4.757475835504e-10 [GeV] +Cell[4,32] 6.6144857555628e-09 [GeV] +Cell[4,22] 1.4083343558013e-09 [GeV] +Cell[4,21] 4.0800622936104e-06 [GeV] +Cell[1,3] 0.0035243723774177 [GeV] +Cell[0,38] 0.001078198031886 [GeV] +Cell[1,2] 2.4418879443147e-06 [GeV] +Cell[1,11] 0.03130904855301 [GeV] +Cell[2,23] 0.0011965349977116 [GeV] +Cell[1,16] 7.1588354509231e-06 [GeV] +Cell[0,12] 1.3326663076896e-05 [GeV] +Cell[0,15] 0.0011389054549968 [GeV] +Cell[0,10] 6.010286626406e-06 [GeV] +Cell[5,10] 1.2442926527001e-07 [GeV] +Cell[0,33] 0.00092737881411415 [GeV] +Cell[1,34] 0.0009832252058859 [GeV] +Cell[0,28] 0.00017644578492582 [GeV] +Cell[0,40] 2.3763361095916e-05 [GeV] +Cell[0,14] 0.0013168961518413 [GeV] +Cell[3,42] 0.0017062906364586 [GeV] +Cell[6,1] 0.0001755300562005 [GeV] +Cell[6,47] 1.8891003264798e-08 [GeV] +Cell[1,39] 0.00017699653984312 [GeV] +Cell[6,22] 0.00062770818238355 [GeV] +Cell[2,24] 8.9245008215585e-05 [GeV] +Cell[3,24] 9.3293900965818e-06 [GeV] +Cell[4,37] 1.0189259774052e-07 [GeV] +Cell[8,45] 1.6488099936396e-07 [GeV] +Cell[6,32] 6.5847882721073e-06 [GeV] +Cell[0,11] 7.5493346719213e-07 [GeV] +Cell[0,13] 0.0011751109513936 [GeV] +### Total energy deposition in calorimeter by a source track in 75 cells : 0.70496349130845 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000501525425e-07 mm long + and its vector is (6.302764177235076e-08,7.569011017949379e-08,1.72781255969312e-08) mm + Endpoint of ComputeStep() was (-512.4229849385184,184.9640498727605,-1422.079807407556) + and current position to locate is (-512.4229848754908,184.9640499484507,-1422.079807390278) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995637749689e-08 mm long + and its vector is (8.86851694303914e-08,-3.126973879830075e-08,3.401669346203562e-08) mm + Endpoint of ComputeStep() was (608.9813786577681,-23.55722645974237,-1174.743746404101) + and current position to locate is (608.9813787464533,-23.55722649101211,-1174.743746370085) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999989600890846e-08 mm long + and its vector is (-1.33735511553823e-08,-5.736103503295453e-08,8.081360647338443e-08) mm + Endpoint of ComputeStep() was (-566.5710205874481,151.8122474822284,-1327.04202378254) + and current position to locate is (-566.5710206008216,151.8122474248673,-1327.042023701727) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000572169842e-07 mm long + and its vector is (8.715005606063642e-09,4.400257580527978e-08,8.9374680101173e-08) mm + Endpoint of ComputeStep() was (-798.1035114554583,-146.0182440461054,-1437.21873675947) + and current position to locate is (-798.1035114467433,-146.0182440021028,-1437.218736670096) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999786681991e-08 mm long + and its vector is (-7.528478818130679e-08,6.546747499669436e-08,6.797790774726309e-09) mm + Endpoint of ComputeStep() was (239.0959739232198,-439.1276754512343,-1594.766792944097) + and current position to locate is (239.0959738479351,-439.1276753857668,-1594.766792937299) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997573094681e-08 mm long + and its vector is (2.84321686194744e-08,-8.025835995795205e-08,5.244237399892882e-08) mm + Endpoint of ComputeStep() was (-597.7750879868636,198.9093870289127,-1351.539452439995) + and current position to locate is (-597.7750879584314,198.9093869486543,-1351.539452387552) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000206811376e-07 mm long + and its vector is (-9.097902875510044e-09,1.977622332560713e-08,-9.760191232999205e-08) mm + Endpoint of ComputeStep() was (648.0778219421671,-350.5364584149078,-357.1517301695902) + and current position to locate is (648.0778219330692,-350.5364583951316,-357.1517302671921) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000011723391e-07 mm long + and its vector is (-9.840471193456324e-08,1.759488554853306e-08,2.633441908983514e-09) mm + Endpoint of ComputeStep() was (-645.2254517100204,116.6153673109154,-1219.475334194093) + and current position to locate is (-645.2254518084251,116.6153673285103,-1219.47533419146) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995513370623e-08 mm long + and its vector is (-8.177505605999613e-08,5.315490625434904e-08,-2.207684701716062e-08) mm + Endpoint of ComputeStep() was (-516.3055655880346,317.4478182109593,-1275.936031445375) + and current position to locate is (-516.3055656698097,317.4478182641142,-1275.936031467452) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998439840489e-08 mm long + and its vector is (4.035314304928761e-09,8.237346094119857e-08,-5.655374479829334e-08) mm + Endpoint of ComputeStep() was (-558.5270617175655,125.5050751313007,-1574.43866793224) + and current position to locate is (-558.5270617135302,125.5050752136741,-1574.438667988793) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000234884297e-07 mm long + and its vector is (-3.871627995977178e-08,4.487753813009476e-08,-8.054229283516179e-08) mm + Endpoint of ComputeStep() was (-91.36722689760204,-511.0261854875695,-270.8534165116581) + and current position to locate is (-91.36722693631832,-511.026185442692,-270.8534165922003) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000462679267e-07 mm long + and its vector is (-2.142085975265218e-08,-5.286051418806892e-08,8.213964974856935e-08) mm + Endpoint of ComputeStep() was (126.4146350072759,-566.0559512994708,-1496.305881408626) + and current position to locate is (126.4146349858551,-566.0559513523314,-1496.305881326486) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998754821498e-08 mm long + and its vector is (-7.297626325453166e-08,6.732813950804939e-08,-1.189050635730382e-08) mm + Endpoint of ComputeStep() was (-605.6110138453888,-10.76072243745419,-1334.819655116988) + and current position to locate is (-605.6110139183651,-10.76072237012605,-1334.819655128878) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997646877175e-08 mm long + and its vector is (3.44883801517426e-08,-9.132893552532551e-08,-2.166962076444179e-08) mm + Endpoint of ComputeStep() was (-667.4253459493162,-33.22686717806333,-1440.444889738442) + and current position to locate is (-667.4253459148279,-33.22686726939227,-1440.444889760112) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998255990581e-08 mm long + and its vector is (7.642142918484751e-09,-7.863536666263826e-08,-6.130312613095157e-08) mm + Endpoint of ComputeStep() was (-536.4670693075788,524.1212489864973,-1262.895260554269) + and current position to locate is (-536.4670692999366,524.121248907862,-1262.895260615572) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996895253909e-08 mm long + and its vector is (2.179706370952772e-08,6.806243391110911e-08,-6.994559953454882e-08) mm + Endpoint of ComputeStep() was (457.9021237112391,387.7185126196544,858.1686823129742) + and current position to locate is (457.9021237330361,387.7185126877168,858.1686822430286) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997549652506e-08 mm long + and its vector is (8.599846523793531e-08,8.281233476736816e-09,-5.035553840571083e-08) mm + Endpoint of ComputeStep() was (-374.5878120624798,-331.1857048910143,-1210.183052371543) + and current position to locate is (-374.5878119764814,-331.185704882733,-1210.183052421899) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997172702001e-08 mm long + and its vector is (-8.884899216354825e-08,4.582608426062507e-08,-2.412662070128135e-09) mm + Endpoint of ComputeStep() was (402.3864873338185,-296.7913659624472,-1423.286599278685) + and current position to locate is (402.3864872449695,-296.7913659166211,-1423.286599281098) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000165929315e-07 mm long + and its vector is (6.507605121441884e-08,-7.455886930074485e-08,-1.435569174645934e-08) mm + Endpoint of ComputeStep() was (-713.0424616414181,213.7289704457343,-1419.326192146848) + and current position to locate is (-713.042461576342,213.7289703711755,-1419.326192161204) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999355705994e-08 mm long + and its vector is (1.174623776023509e-08,-9.811174095375463e-09,9.882182894216385e-08) mm + Endpoint of ComputeStep() was (-643.6559198121319,246.402968934109,-1425.578515234652) + and current position to locate is (-643.6559198003856,246.4029689242979,-1425.57851513583) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999593464226e-08 mm long + and its vector is (-3.228683453926351e-08,9.063626293936977e-08,-2.725118974922225e-08) mm + Endpoint of ComputeStep() was (-588.4123267457531,73.70699157505925,-1464.302067049932) + and current position to locate is (-588.41232677804,73.70699166569551,-1464.302067077184) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998131236535e-08 mm long + and its vector is (4.676394382840954e-09,-5.048883622293943e-08,8.619167601864319e-08) mm + Endpoint of ComputeStep() was (-761.0762515337726,239.7661966572387,-1351.764513702699) + and current position to locate is (-761.0762515290962,239.7661966067499,-1351.764513616507) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000201313545e-07 mm long + and its vector is (-7.766821852328576e-08,3.794593794737011e-08,-5.027681027058861e-08) mm + Endpoint of ComputeStep() was (-54.62518305398357,527.1774742226995,-487.9177257679475) + and current position to locate is (-54.62518313165179,527.1774742606455,-487.9177258182243) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998539251922e-08 mm long + and its vector is (3.422849204071099e-08,8.503585036123695e-08,3.996638042735867e-08) mm + Endpoint of ComputeStep() was (-982.3971979266454,-129.1512107023682,-1438.327657482072) + and current position to locate is (-982.3971978924169,-129.1512106173323,-1438.327657442106) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994217294487e-08 mm long + and its vector is (-6.469531399488915e-08,-6.040520617034417e-08,-4.653725227399264e-08) mm + Endpoint of ComputeStep() was (-1129.386770862926,37.22259606983292,-1402.815820766244) + and current position to locate is (-1129.386770927621,37.22259600942771,-1402.815820812781) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999199632931e-08 mm long + and its vector is (2.022136413870612e-08,-9.624531571716943e-08,-1.810894900700077e-08) mm + Endpoint of ComputeStep() was (-883.3878588379763,-244.9102137513639,-1497.666110896378) + and current position to locate is (-883.3878588177549,-244.9102138476092,-1497.666110914487) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000444419032e-07 mm long + and its vector is (-8.335678103321698e-08,-5.393014035348642e-08,1.196644916490186e-08) mm + Endpoint of ComputeStep() was (-899.6556567368336,-24.89375722438959,-1563.193885953156) + and current position to locate is (-899.6556568201904,-24.89375727831973,-1563.193885941189) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000296332168e-07 mm long + and its vector is (-4.323089797253488e-08,9.002354772746912e-08,-5.182300810702145e-09) mm + Endpoint of ComputeStep() was (-999.5217030810414,-375.5823177511017,-1519.344990135611) + and current position to locate is (-999.5217031242723,-375.5823176610782,-1519.344990140793) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998259850219e-08 mm long + and its vector is (2.697834133869037e-08,8.459636546831462e-08,4.59958755527623e-08) mm + Endpoint of ComputeStep() was (-934.9674914807795,-119.145949203809,-1586.472277203161) + and current position to locate is (-934.9674914538011,-119.1459491192126,-1586.472277157166) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999874886588e-08 mm long + and its vector is (-7.685162017878611e-08,5.080448772787349e-08,-3.889385880029295e-08) mm + Endpoint of ComputeStep() was (-980.5580599773535,-24.55215700985849,-1509.149064373167) + and current position to locate is (-980.5580600542052,-24.552156959054,-1509.149064412061) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 10475 (pi+,0.78123448338814[GeV]) at (-497.5774550318,49.159701423755,-1145.3375621818) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[7,12] 1.0044271011225e-05 [GeV] +Cell[8,35] 0.0013911263623804 [GeV] +Cell[8,34] 9.3822701561066e-05 [GeV] +Cell[7,13] 0.0001397888944789 [GeV] +Cell[2,10] 2.1642754407367e-05 [GeV] +Cell[14,5] 0.00087219956934018 [GeV] +Cell[4,40] 2.2524991974933e-05 [GeV] +Cell[4,28] 5.8148905809503e-06 [GeV] +Cell[2,26] 1.3794112210007e-05 [GeV] +Cell[8,42] 0.00028700708242832 [GeV] +Cell[4,7] 7.2670743293202e-08 [GeV] +Cell[4,6] 2.4650140014273e-05 [GeV] +Cell[6,23] 0.00086155802459527 [GeV] +Cell[5,22] 0.00010664910946923 [GeV] +Cell[4,22] 1.8047223774602e-05 [GeV] +Cell[4,23] 0.070943363811916 [GeV] +Cell[2,21] 0.025769392882619 [GeV] +Cell[2,22] 0.097031587960948 [GeV] +Cell[2,23] 0.0012016909110964 [GeV] +Cell[8,43] 0.00034718403880402 [GeV] +Cell[8,44] 0.00064344879144835 [GeV] +Cell[2,20] 0.01414924658783 [GeV] +Cell[4,46] 5.7252132278336e-06 [GeV] +Cell[1,44] 0.00014094822794539 [GeV] +Cell[2,25] 0.013925818674483 [GeV] +Cell[3,20] 0.003108543324543 [GeV] +Cell[4,47] 4.3207146655163e-05 [GeV] +Cell[3,18] 4.239961087228e-05 [GeV] +Cell[3,19] 0.0012127886939494 [GeV] +Cell[3,17] 1.9966496142843e-07 [GeV] +Cell[6,22] 0.0012548481445984 [GeV] +Cell[2,24] 0.011371074158864 [GeV] +Cell[3,24] 0.00077763137270199 [GeV] +Cell[3,23] 0.010112860589823 [GeV] +Cell[3,22] 0.19396200860227 [GeV] +Cell[3,21] 0.0053663712385715 [GeV] +Cell[3,25] 0.00051100694743853 [GeV] +Cell[2,36] 0.00020332205492332 [GeV] +Cell[2,37] 0.00038143805778839 [GeV] +Cell[14,4] 0.0012096411484335 [GeV] +Cell[7,38] 2.5721361744218e-06 [GeV] +### Total energy deposition in calorimeter by a source track in 41 cells : 0.45758706279186 (GeV) + +Source track ID 10478 (pi+,0.50625067362263[GeV]) at (459.36831570015,197.4354338279,-1225.0361217903) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[1,2] 0.006068808459179 [GeV] +Cell[2,1] 0.010863569266545 [GeV] +Cell[3,3] 0.023778197860473 [GeV] +Cell[3,2] 0.15283026119219 [GeV] +Cell[3,1] 0.20202384258712 [GeV] +Cell[2,2] 0.024570845295984 [GeV] +### Total energy deposition in calorimeter by a source track in 6 cells : 0.42013552466148 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997238170457e-08 mm long + and its vector is (2.663307441252982e-08,-7.548169378424063e-08,-5.99432041781256e-08) mm + Endpoint of ComputeStep() was (-864.7795944680478,342.1348463535865,-1532.437856594217) + and current position to locate is (-864.7795944414147,342.1348462781048,-1532.43785665416) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000639399189e-07 mm long + and its vector is (9.553400559525471e-08,-1.95864231500309e-08,-2.21277787204599e-08) mm + Endpoint of ComputeStep() was (-645.6314246247587,75.23339460180651,-1579.764246373037) + and current position to locate is (-645.6314245292247,75.23339458222009,-1579.764246395165) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999482492772e-08 mm long + and its vector is (1.7139768715424e-08,-9.378618415212259e-08,-3.017248673131689e-08) mm + Endpoint of ComputeStep() was (591.9005363137186,334.7443131018525,-1207.01659075929) + and current position to locate is (591.9005363308584,334.7443130080663,-1207.016590789462) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000201080567e-07 mm long + and its vector is (5.646001000059186e-08,-7.109400712579372e-08,4.192747837805655e-08) mm + Endpoint of ComputeStep() was (297.6305038707532,-447.1051243168758,-937.0500964186798) + and current position to locate is (297.6305039272132,-447.1051243879699,-937.0500963767523) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000049063815e-07 mm long + and its vector is (-3.98358110942354e-08,-6.150256126602471e-08,6.804816621297505e-08) mm + Endpoint of ComputeStep() was (-492.0062114354412,-252.479354187073,-1760.050972794094) + and current position to locate is (-492.006211475277,-252.4793542485756,-1760.050972726046) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000098393702e-07 mm long + and its vector is (6.688333087367937e-08,1.089966872314108e-08,-7.353787623287644e-08) mm + Endpoint of ComputeStep() was (-794.7449292781351,334.1982597572221,-1134.21172209331) + and current position to locate is (-794.7449292112518,334.1982597681218,-1134.211722166848) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000527130489e-07 mm long + and its vector is (-1.526410642327392e-08,-2.118537167916656e-08,9.653081178839784e-08) mm + Endpoint of ComputeStep() was (494.3485369468596,-338.1269218441305,-1591.657210270565) + and current position to locate is (494.3485369315954,-338.1269218653159,-1591.657210174035) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998165176796e-08 mm long + and its vector is (-9.66502398114244e-08,-2.117894837283529e-08,1.449757291993592e-08) mm + Endpoint of ComputeStep() was (241.7794823371929,-587.2212027659114,-1725.614954797009) + and current position to locate is (241.7794822405427,-587.2212027870903,-1725.614954782511) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999328708659e-08 mm long + and its vector is (2.876402049878379e-08,-6.062165880393877e-08,7.414610081468709e-08) mm + Endpoint of ComputeStep() was (-772.4459553819572,172.7442453246754,-1641.453292114368) + and current position to locate is (-772.4459553531932,172.7442452640537,-1641.453292040222) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000380882276e-07 mm long + and its vector is (3.373907020431943e-08,5.496264066096046e-08,7.64250671636546e-08) mm + Endpoint of ComputeStep() was (-371.0026863165911,-335.1969671816174,-1281.652076037266) + and current position to locate is (-371.002686282852,-335.1969671266547,-1281.652075960841) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000198822148e-07 mm long + and its vector is (-4.207799975119997e-08,6.887911752073705e-08,5.903484634472989e-08) mm + Endpoint of ComputeStep() was (-879.1031319969848,-76.1876498894008,-1504.770101776308) + and current position to locate is (-879.1031320390628,-76.18764982052168,-1504.770101717273) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000116111521e-07 mm long + and its vector is (-3.686011496029096e-08,-1.409887318004621e-09,-9.294808478443883e-08) mm + Endpoint of ComputeStep() was (-593.9849327261567,69.2429342452579,-1564.178779118493) + and current position to locate is (-593.9849327630168,69.24293424384801,-1564.178779211441) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000233001744e-07 mm long + and its vector is (7.271557933563599e-08,6.249179307360464e-08,-2.841170498868451e-08) mm + Endpoint of ComputeStep() was (-849.32573835433,33.84952419399469,-1621.762980703663) + and current position to locate is (-849.3257382816145,33.84952425648648,-1621.762980732075) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999807781559e-08 mm long + and its vector is (-8.343079116457375e-08,4.883099791186396e-08,-2.558977030275855e-08) mm + Endpoint of ComputeStep() was (-584.8045682180971,-48.75149314327983,-1710.444733996296) + and current position to locate is (-584.8045683015279,-48.75149309444883,-1710.444734021885) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994662993102e-08 mm long + and its vector is (-2.69722022494534e-09,-5.680472536795378e-09,-9.980203685699962e-08) mm + Endpoint of ComputeStep() was (-718.3701674519476,-3.902536548403179,-1478.901187138821) + and current position to locate is (-718.3701674546448,-3.902536554083652,-1478.901187238623) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996153271026e-08 mm long + and its vector is (1.851071829150897e-08,-9.205007245327579e-08,-3.441118678892963e-08) mm + Endpoint of ComputeStep() was (-722.1582218769532,144.851764431012,-1437.01571749184) + and current position to locate is (-722.1582218584425,144.8517643389619,-1437.015717526252) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000174339091e-07 mm long + and its vector is (1.639352831261931e-08,7.155929893087887e-08,6.790082807128783e-08) mm + Endpoint of ComputeStep() was (-924.785622524229,-46.01828434464055,-1488.388128979386) + and current position to locate is (-924.7856225078355,-46.01828427308125,-1488.388128911485) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995761931697e-08 mm long + and its vector is (8.961342246038839e-08,-5.411369130570165e-09,-4.404705578053836e-08) mm + Endpoint of ComputeStep() was (-1046.423862920616,13.61599180806942,-1340.264501007888) + and current position to locate is (-1046.423862831003,13.61599180265805,-1340.264501051935) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994505774898e-08 mm long + and its vector is (4.775120032718405e-08,-7.171438909381322e-08,-5.076276465842966e-08) mm + Endpoint of ComputeStep() was (-748.9480784160514,39.70863777726118,-1419.047006717464) + and current position to locate is (-748.9480783683002,39.70863770554679,-1419.047006768227) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995363878763e-08 mm long + and its vector is (-5.949175374553306e-08,-2.8410482855179e-09,8.032839104998857e-08) mm + Endpoint of ComputeStep() was (-637.2344086021267,-58.77892945640319,-1433.336459017273) + and current position to locate is (-637.2344086616184,-58.77892945924424,-1433.336458936945) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000289604302e-07 mm long + and its vector is (-1.939929461514112e-08,9.241431797590849e-08,3.291302164143417e-08) mm + Endpoint of ComputeStep() was (-772.8618523902768,-18.33878213200851,-1655.472306921503) + and current position to locate is (-772.8618524096761,-18.3387820395942,-1655.47230688859) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000059645989e-07 mm long + and its vector is (-1.732064447423909e-08,9.765628306013241e-08,-1.277680894418154e-08) mm + Endpoint of ComputeStep() was (-770.3771111303172,-45.28199998645535,-1540.864772920645) + and current position to locate is (-770.3771111476378,-45.28199988879906,-1540.864772933422) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997696073203e-08 mm long + and its vector is (3.767047473957064e-08,-9.149778179562418e-08,-1.445982888981234e-08) mm + Endpoint of ComputeStep() was (542.2192327825802,-254.371860013918,-772.2784312920751) + and current position to locate is (542.2192328202507,-254.3718601054157,-772.2784313065349) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000262671621e-07 mm long + and its vector is (2.544163635320729e-08,-3.354645627950958e-08,9.070481610251591e-08) mm + Endpoint of ComputeStep() was (-673.389190709955,-104.5866734826032,-1586.996853419561) + and current position to locate is (-673.3891906845133,-104.5866735161497,-1586.996853328857) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000077459088e-07 mm long + and its vector is (1.958704842763836e-08,8.960938657764927e-08,-3.983097940363223e-08) mm + Endpoint of ComputeStep() was (267.8340246209958,-422.2143239167715,-625.9546926727472) + and current position to locate is (267.8340246405828,-422.2143238271622,-625.9546927125782) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.9999992497642e-08 mm long + and its vector is (9.827658686845098e-08,-2.66413735516835e-09,1.829243956308346e-08) mm + Endpoint of ComputeStep() was (-869.193322561606,-211.3819233602531,-1634.431353714219) + and current position to locate is (-869.1933224633294,-211.3819233629172,-1634.431353695927) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000005272025e-07 mm long + and its vector is (8.555559816159075e-08,-1.506691660324577e-09,-5.17491116625024e-08) mm + Endpoint of ComputeStep() was (-804.6846262738491,-101.3385950087379,-1446.974270440788) + and current position to locate is (-804.6846261882935,-101.3385950102446,-1446.974270492537) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998761914998e-08 mm long + and its vector is (6.243192274268949e-08,-6.685422704322264e-08,4.040748535771854e-08) mm + Endpoint of ComputeStep() was (-716.696232780006,138.7317916952943,-1542.174830359379) + and current position to locate is (-716.696232717574,138.7317916284401,-1542.174830318971) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000119194829e-07 mm long + and its vector is (-5.75822696191608e-08,8.081486058131304e-08,-1.237913238583133e-08) mm + Endpoint of ComputeStep() was (-719.0806370069951,21.84927938752155,-1578.506548138717) + and current position to locate is (-719.0806370645773,21.84927946833641,-1578.506548151096) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994816304618e-08 mm long + and its vector is (-5.780793799203821e-08,5.977349815111666e-08,5.554602466872893e-08) mm + Endpoint of ComputeStep() was (-674.3385776232075,146.1557969042052,-1553.609989951761) + and current position to locate is (-674.3385776810154,146.1557969639787,-1553.609989896215) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.0000000528768e-07 mm long + and its vector is (9.295354175264947e-08,-3.22901883009763e-08,1.78040409082314e-08) mm + Endpoint of ComputeStep() was (-836.8953326487375,83.34952082919817,-1524.337172630739) + and current position to locate is (-836.895332555784,83.34952079690798,-1524.337172612935) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996335808207e-08 mm long + and its vector is (8.034805887291441e-08,-1.45876697388303e-08,-5.771812539023813e-08) mm + Endpoint of ComputeStep() was (-789.1579561566269,184.8019477028687,-1458.159768882151) + and current position to locate is (-789.1579560762789,184.801947688281,-1458.159768939869) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995463750695e-08 mm long + and its vector is (9.549137303110911e-08,2.666246956550822e-08,1.305761543335393e-08) mm + Endpoint of ComputeStep() was (-664.6467611238993,47.99277924149104,-1840.532328166218) + and current position to locate is (-664.6467610284079,47.99277926815351,-1840.532328153161) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993168899122e-08 mm long + and its vector is (1.745047484291717e-08,1.368701418869023e-08,9.750965546118096e-08) mm + Endpoint of ComputeStep() was (-523.1148686998483,-53.54493546771515,-1854.877381521789) + and current position to locate is (-523.1148686823979,-53.54493545402813,-1854.877381424279) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994123679413e-08 mm long + and its vector is (8.488507319270866e-08,-5.091621346764441e-08,1.42144926940091e-08) mm + Endpoint of ComputeStep() was (-692.6186380115149,230.606640017462,-1936.396226212787) + and current position to locate is (-692.6186379266298,230.6066399665458,-1936.396226198573) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000055350239e-07 mm long + and its vector is (5.840809080837062e-08,6.997836976552207e-08,4.112825990887359e-08) mm + Endpoint of ComputeStep() was (-862.2199865703918,-200.6125368597339,-1780.801879287576) + and current position to locate is (-862.2199865119837,-200.6125367897556,-1780.801879246447) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998042579558e-08 mm long + and its vector is (1.34492665893049e-08,-8.93018636816123e-08,4.294520294934046e-08) mm + Endpoint of ComputeStep() was (-650.6178628278259,499.2366450879662,-1418.007158393049) + and current position to locate is (-650.6178628143766,499.2366449986644,-1418.007158350104) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000029069914e-07 mm long + and its vector is (-9.5115296971926e-08,-2.764640072427937e-09,-3.074796950386371e-08) mm + Endpoint of ComputeStep() was (-549.5300628822266,22.73125346839232,-1511.212879681193) + and current position to locate is (-549.5300629773419,22.73125346562768,-1511.212879711941) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997410222278e-08 mm long + and its vector is (6.814616426709108e-09,-8.842395260444391e-08,-4.620346771844197e-08) mm + Endpoint of ComputeStep() was (-731.3950250618096,-63.76168513826413,-1567.715628052957) + and current position to locate is (-731.395025054995,-63.76168522668809,-1567.715628099161) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000009734014e-07 mm long + and its vector is (2.137051069439622e-08,4.030852881239884e-08,-8.898609848984051e-08) mm + Endpoint of ComputeStep() was (-778.2258493205208,-4.030813446118049e-08,-1318.403533267111) + and current position to locate is (-778.2258492991502,3.943512183468556e-13,-1318.403533356097) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998722928048e-08 mm long + and its vector is (-1.632176349630754e-08,3.409058990655467e-08,9.258201316697523e-08) mm + Endpoint of ComputeStep() was (151.7905555422779,-642.5071355970463,-903.344800666608) + and current position to locate is (151.7905555259562,-642.5071355629557,-903.344800574026) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997493249518e-08 mm long + and its vector is (-5.69464191357838e-08,-7.194640261332097e-08,-3.975947038270533e-08) mm + Endpoint of ComputeStep() was (-768.4202846227397,-133.9039434576977,-1635.635202178467) + and current position to locate is (-768.4202846796861,-133.9039435296441,-1635.635202218227) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000577614651e-07 mm long + and its vector is (9.334689821116626e-08,-1.22564642879297e-08,-3.370678314240649e-08) mm + Endpoint of ComputeStep() was (-669.1850524810412,176.7079195087485,-1629.067156744986) + and current position to locate is (-669.1850523876943,176.7079194964921,-1629.067156778693) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000247971075e-07 mm long + and its vector is (-1.905800672830082e-08,-8.352569125236187e-08,-5.15776719112182e-08) mm + Endpoint of ComputeStep() was (-560.1111290132122,232.0056261647988,-1371.451136629976) + and current position to locate is (-560.1111290322702,232.0056260812731,-1371.451136681554) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000525645364e-07 mm long + and its vector is (2.661477083165664e-08,-8.553377739417556e-08,4.444814294402022e-08) mm + Endpoint of ComputeStep() was (-775.9878942977838,46.53969740704645,-1633.950030785878) + and current position to locate is (-775.987894271169,46.53969732151268,-1633.95003074143) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 10282 (anti_proton,1.6910087598226[GeV]) at (-493.84033111503,78.241468315682,-1172.8178461673) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[8,7] 0.0014834677109645 [GeV] +Cell[9,10] 1.3989571016282e-08 [GeV] +Cell[9,9] 5.5138953030109e-09 [GeV] +Cell[7,27] 2.0756182493642e-08 [GeV] +Cell[5,38] 0.001015368789173 [GeV] +Cell[5,5] 2.4860759890544e-07 [GeV] +Cell[5,6] 2.6155321393162e-09 [GeV] +Cell[6,27] 1.3499575701417e-06 [GeV] +Cell[2,19] 0.00045568459982928 [GeV] +Cell[2,18] 2.036859752252e-05 [GeV] +Cell[2,17] 4.3894397094846e-08 [GeV] +Cell[1,24] 0.016434441739528 [GeV] +Cell[0,36] 0.0012647122050366 [GeV] +Cell[0,24] 0.0005232045656948 [GeV] +Cell[0,21] 3.0525064304356e-05 [GeV] +Cell[1,23] 0.31159625948518 [GeV] +Cell[1,22] 0.36002565266547 [GeV] +Cell[0,22] 0.0024795780365118 [GeV] +Cell[0,23] 0.01024426627242 [GeV] +Cell[1,19] 0.00050696457072252 [GeV] +Cell[1,17] 0.0012445276864657 [GeV] +Cell[0,37] 0.001744653881862 [GeV] +Cell[1,38] 1.0350398197261e-06 [GeV] +Cell[2,27] 0.00048913137276292 [GeV] +Cell[2,26] 0.0046263979211575 [GeV] +Cell[3,4] 0.00011100403370187 [GeV] +Cell[6,44] 1.1144701261401e-08 [GeV] +Cell[2,5] 0.0023656831162631 [GeV] +Cell[0,25] 1.5675180520702e-08 [GeV] +Cell[1,27] 4.8584502110316e-09 [GeV] +Cell[1,37] 2.6510724296713e-08 [GeV] +Cell[5,37] 7.3050614446402e-12 [GeV] +Cell[1,20] 1.9883936503902e-05 [GeV] +Cell[4,22] 0.041745108190428 [GeV] +Cell[0,38] 8.6937650943355e-06 [GeV] +Cell[1,21] 0.017401386814571 [GeV] +Cell[2,21] 0.003868929203205 [GeV] +Cell[1,25] 0.017363849217606 [GeV] +Cell[2,22] 0.17440707022669 [GeV] +Cell[2,23] 0.92940055454857 [GeV] +Cell[5,44] 8.0313089420088e-06 [GeV] +Cell[5,45] 2.5473825429799e-05 [GeV] +Cell[6,43] 0.00093337579172214 [GeV] +Cell[2,20] 0.00056925176872642 [GeV] +Cell[3,5] 0.0019494293670973 [GeV] +Cell[1,26] 0.0005569548277175 [GeV] +Cell[1,44] 7.214731303975e-07 [GeV] +Cell[2,44] 0.00016366958297522 [GeV] +Cell[2,6] 0.0011560944219452 [GeV] +Cell[2,4] 0.0067473310544476 [GeV] +Cell[3,3] 2.7329054577194e-06 [GeV] +Cell[3,2] 2.6955909561366e-08 [GeV] +Cell[1,43] 4.9818480647446e-08 [GeV] +Cell[2,25] 0.010274591398915 [GeV] +Cell[3,20] 0.00048703382308179 [GeV] +Cell[2,43] 4.518730025211e-05 [GeV] +Cell[4,39] 7.9452114587184e-06 [GeV] +Cell[3,19] 3.2138086680789e-10 [GeV] +Cell[3,17] 8.9438347786199e-06 [GeV] +Cell[1,39] 9.9739872894133e-10 [GeV] +Cell[2,24] 0.01027789149398 [GeV] +Cell[3,24] 0.0017750933872436 [GeV] +Cell[3,23] 0.0081616632592969 [GeV] +Cell[3,22] 0.21541002047869 [GeV] +Cell[3,21] 0.0034965891622996 [GeV] +Cell[3,25] 0.0044567708346436 [GeV] +Cell[5,40] 1.9857193759663e-06 [GeV] +Cell[1,28] 1.8472207034392e-07 [GeV] +Cell[4,20] 3.7573045119643e-11 [GeV] +Cell[2,45] 5.5523535702378e-06 [GeV] +Cell[2,30] 7.8003213275224e-09 [GeV] +Cell[3,16] 4.5266577391885e-05 [GeV] +Cell[5,43] 8.4678418055773e-05 [GeV] +Cell[5,7] 1.9923318177462e-09 [GeV] +Cell[5,4] 1.4845013674858e-07 [GeV] +Cell[4,38] 0.0001205106594133 [GeV] +### Total energy deposition in calorimeter by a source track in 76 cells : 2.1676533581238 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000346942519e-07 mm long + and its vector is (-7.727282991254469e-08,-5.785454959550407e-08,-2.6110683393199e-08) mm + Endpoint of ComputeStep() was (587.4305461264952,171.6262237901344,-737.343902248054) + and current position to locate is (587.4305460492224,171.6262237322799,-737.3439022741646) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000028802886e-07 mm long + and its vector is (-7.711446414759848e-08,-1.123459014706896e-08,6.266697027967894e-08) mm + Endpoint of ComputeStep() was (843.9953731158606,421.3972016553797,-320.4892176015623) + and current position to locate is (843.9953730387462,421.3972016441451,-320.4892175388953) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997972585848e-08 mm long + and its vector is (1.41461669045384e-08,1.451923026252189e-08,9.79238166110008e-08) mm + Endpoint of ComputeStep() was (532.3111794565784,444.0544412916463,-766.3942510168704) + and current position to locate is (532.3111794707246,444.0544413061655,-766.3942509189466) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995394674998e-08 mm long + and its vector is (-1.819580575102009e-08,-1.587193310115254e-08,-9.704115200293018e-08) mm + Endpoint of ComputeStep() was (536.6909238948422,260.1915952803753,-599.9999999029588) + and current position to locate is (536.6909238766464,260.1915952645034,-600) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998024851717e-08 mm long + and its vector is (-6.867935553600546e-09,-9.764369224285474e-08,2.045817382168025e-08) mm + Endpoint of ComputeStep() was (514.8395620832173,528.7054531557071,-1696.988721623074) + and current position to locate is (514.8395620763494,528.7054530580634,-1696.988721602616) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999694866557e-08 mm long + and its vector is (-7.707177474003402e-08,-3.70954467143747e-08,-5.180606876820093e-08) mm + Endpoint of ComputeStep() was (470.342756801931,372.5287790548512,-586.0249841236736) + and current position to locate is (470.3427567248592,372.5287790177557,-586.0249841754796) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994405056692e-08 mm long + and its vector is (5.661331670125946e-08,-4.636356720766344e-08,6.815673714299919e-08) mm + Endpoint of ComputeStep() was (488.1022736750216,225.6393039035198,-686.1703889025356) + and current position to locate is (488.1022737316349,225.6393038571562,-686.1703888343789) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999012176339e-08 mm long + and its vector is (4.329649527790025e-09,-9.544825729790318e-08,2.951071564893937e-08) mm + Endpoint of ComputeStep() was (582.2034369146888,188.6797900101934,-729.7827282865745) + and current position to locate is (582.2034369190185,188.6797899147451,-729.7827282570638) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996261749666e-08 mm long + and its vector is (2.470267190801678e-08,-7.022589443295146e-08,6.676896191493142e-08) mm + Endpoint of ComputeStep() was (690.6374269474333,399.9693449899265,-806.7739841240765) + and current position to locate is (690.6374269721359,399.9693449197006,-806.7739840573075) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994841181038e-08 mm long + and its vector is (8.410665941482875e-08,5.278809567244025e-08,-1.181001607619692e-08) mm + Endpoint of ComputeStep() was (661.2506208760725,361.7736044360913,-833.885968657477) + and current position to locate is (661.2506209601792,361.7736044888794,-833.885968669287) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000247602842e-07 mm long + and its vector is (-9.877749107545242e-08,-7.687560810154537e-09,1.356147549813613e-08) mm + Endpoint of ComputeStep() was (630.0843210642231,411.8319259842166,-806.5333100317454) + and current position to locate is (630.0843209654456,411.8319259765291,-806.5333100181839) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 10283 (neutron,1.4783692592721[GeV]) at (458.5309876774,199.3723484829,-606.56000985403) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[6,2] 0.0062340945369321 [GeV] +Cell[7,5] 1.5746002191008e-09 [GeV] +Cell[5,2] 0.00012770937601272 [GeV] +Cell[5,3] 0.3006651292064 [GeV] +Cell[6,3] 0.073854032571379 [GeV] +Cell[6,5] 0.0010930782053869 [GeV] +Cell[6,4] 0.0036872579626404 [GeV] +Cell[10,24] 0.00037307831377507 [GeV] +Cell[1,5] 0.00015188436863093 [GeV] +Cell[1,6] 0.0022502194083617 [GeV] +Cell[7,3] 0.00095428433281802 [GeV] +Cell[7,2] 0.001017889855564 [GeV] +Cell[8,3] 2.6058341611588e-06 [GeV] +Cell[6,1] 1.8277053808561e-05 [GeV] +Cell[5,4] 2.5422332328162e-10 [GeV] +Cell[4,34] 0.00095254455707072 [GeV] +### Total energy deposition in calorimeter by a source track in 16 cells : 0.39138208741176 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000039544792e-07 mm long + and its vector is (-6.412795983123942e-08,7.500682386307744e-08,1.617371481188457e-08) mm + Endpoint of ComputeStep() was (271.4395554048537,685.7053019774252,392.3676921213462) + and current position to locate is (271.4395553407257,685.705302052432,392.36769213752) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000223428333e-07 mm long + and its vector is (8.417373464908451e-09,-2.337242221983615e-08,-9.686527846497484e-08) mm + Endpoint of ComputeStep() was (312.7395573087355,725.2511514113769,400.0000000968653) + and current position to locate is (312.7395573171529,725.2511513880045,400) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998258640144e-08 mm long + and its vector is (-9.434529602003749e-09,-5.093056643090677e-09,9.942357337422436e-08) mm + Endpoint of ComputeStep() was (250.8409743671241,696.4998275495941,538.0721515538014) + and current position to locate is (250.8409743576895,696.499827544501,538.072151653225) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000268306465e-07 mm long + and its vector is (8.507080906383635e-08,2.281137767567998e-08,-4.735613856610144e-08) mm + Endpoint of ComputeStep() was (218.8558524027311,805.245995086396,718.5640638676145) + and current position to locate is (218.8558524878019,805.2459951092073,718.5640638202584) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000378655998e-07 mm long + and its vector is (3.382774593774229e-08,-6.802099505875958e-08,6.502949645437184e-08) mm + Endpoint of ComputeStep() was (389.7510863729105,814.1789685150617,335.8632014090606) + and current position to locate is (389.7510864067382,814.1789684470407,335.8632014740901) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 10284 (pi+,0.53446218630656[GeV]) at (100.49603699762,489.79643378425,289.44269148862) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[13,9] 0.00040368939527878 [GeV] +Cell[11,10] 0.098717439766866 [GeV] +Cell[11,9] 0.10960189010235 [GeV] +Cell[12,9] 0.089920041971808 [GeV] +Cell[12,8] 0.10095188403399 [GeV] +Cell[11,8] 0.0046907248646385 [GeV] +Cell[13,10] 1.9292876140753e-07 [GeV] +### Total energy deposition in calorimeter by a source track in 7 cells : 0.40428586306368 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997536429326e-08 mm long + and its vector is (-7.084634034981718e-08,6.629099402744032e-08,-2.421353428871953e-08) mm + Endpoint of ComputeStep() was (609.021019726606,-200.5251217756872,493.0388938131177) + and current position to locate is (609.0210196557597,-200.5251217093962,493.0388937889041) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000843407343e-07 mm long + and its vector is (-1.37594327043189e-08,6.38956407783553e-08,-7.568382898170967e-08) mm + Endpoint of ComputeStep() was (248.2639360853466,-707.7181770568586,1194.404439348374) + and current position to locate is (248.2639360715872,-707.718176992963,1194.40443927269) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000009369703e-07 mm long + and its vector is (-8.382721716770902e-08,2.883820116039715e-08,4.627480620911228e-08) mm + Endpoint of ComputeStep() was (723.2386318415323,-292.1059423395736,405.3847599405726) + and current position to locate is (723.2386317577051,-292.1059423107354,405.3847599868474) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000073634996e-07 mm long + and its vector is (2.21135678657447e-08,9.711219917107883e-08,-8.956135388871189e-09) mm + Endpoint of ComputeStep() was (-546.5961104409402,61.09576141716988,784.5951166114963) + and current position to locate is (-546.5961104188266,61.09576151428207,784.5951166025402) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998840977399e-08 mm long + and its vector is (1.64970970217837e-09,5.652421464219515e-08,8.247599225796876e-08) mm + Endpoint of ComputeStep() was (841.4585117385684,-241.1274511725096,429.0946138624436) + and current position to locate is (841.4585117402181,-241.1274511159854,429.0946139449196) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999467624781e-08 mm long + and its vector is (2.940294052677928e-08,-8.26806392240087e-08,4.795182917405327e-08) mm + Endpoint of ComputeStep() was (584.1415165439936,23.81934225755347,199.9999999520482) + and current position to locate is (584.1415165733965,23.81934217487283,200) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000088232145e-07 mm long + and its vector is (9.871303063846426e-08,-2.875594873330556e-09,-1.573118879605317e-08) mm + Endpoint of ComputeStep() was (717.9112686119556,-314.297811000599,352.9456934469648) + and current position to locate is (717.9112687106687,-314.2978110034746,352.9456934312336) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000128978702e-07 mm long + and its vector is (-8.465030987281352e-08,-2.845519020411302e-08,4.499588612816297e-08) mm + Endpoint of ComputeStep() was (-624.8988163461737,-462.2108181675479,1405.80736189506) + and current position to locate is (-624.898816430824,-462.2108181960031,1405.807361940056) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000059998308e-07 mm long + and its vector is (-7.054228490233072e-08,6.203777047630865e-08,3.427976480452344e-08) mm + Endpoint of ComputeStep() was (484.6031133166849,-142.7095850173357,514.2053145962277) + and current position to locate is (484.6031132461426,-142.7095849552979,514.2053146305075) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000364940315e-07 mm long + and its vector is (7.114238087524427e-09,-9.816187684918987e-08,-1.77099082065979e-08) mm + Endpoint of ComputeStep() was (438.5265287567789,-561.3158105161079,428.9497876733088) + and current position to locate is (438.5265287638932,-561.3158106142698,428.9497876555989) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000045484076e-07 mm long + and its vector is (7.649634881090606e-08,-1.915631742122059e-08,6.14926420894335e-08) mm + Endpoint of ComputeStep() was (533.016841806834,-180.8666388621372,532.0512285519095) + and current position to locate is (533.0168418833304,-180.8666388812935,532.0512286134021) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999043422302e-08 mm long + and its vector is (4.842218004341703e-08,4.911230178095138e-08,7.241044386319118e-08) mm + Endpoint of ComputeStep() was (558.5912617214233,-92.19388078916377,670.366178240287) + and current position to locate is (558.5912617698455,-92.19388074005147,670.3661783126975) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997149133809e-08 mm long + and its vector is (-8.656456884637009e-08,3.269786930104601e-08,-3.791330982494401e-08) mm + Endpoint of ComputeStep() was (952.9949074753712,-302.9863140651967,740.3380101678604) + and current position to locate is (952.9949073888066,-302.9863140324989,740.3380101299471) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000035478603e-07 mm long + and its vector is (-7.923426892375574e-08,5.153589199835551e-08,-3.264949555159546e-08) mm + Endpoint of ComputeStep() was (914.8730383054371,-226.1600954901951,578.0646110781372) + and current position to locate is (914.8730382262029,-226.1600954386593,578.0646110454877) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997987043739e-08 mm long + and its vector is (-5.666845481755445e-08,-2.375503527218825e-08,7.889474318290013e-08) mm + Endpoint of ComputeStep() was (919.0026541914174,-108.1775802918466,291.4405988226599) + and current position to locate is (919.0026541347489,-108.1775803156016,291.4405989015547) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000022283513e-07 mm long + and its vector is (8.197935130738188e-08,-5.615814302473154e-08,1.120952219935134e-08) mm + Endpoint of ComputeStep() was (889.3674522398816,-193.3808140943298,566.8753416853225) + and current position to locate is (889.3674523218609,-193.3808141504879,566.875341696532) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000228452161e-07 mm long + and its vector is (-8.179870292224223e-08,-5.417223292170092e-08,-1.934802185132867e-08) mm + Endpoint of ComputeStep() was (801.9343627024481,-281.7823238205037,512.5369275646161) + and current position to locate is (801.9343626206494,-281.7823238746759,512.5369275452681) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000058028423e-07 mm long + and its vector is (-6.162986210256349e-08,-5.555762072617654e-08,-5.581318873737473e-08) mm + Endpoint of ComputeStep() was (1328.181060509921,-311.0205934823963,800.0000000558132) + and current position to locate is (1328.181060448291,-311.0205935379539,800) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998243771892e-08 mm long + and its vector is (8.950132723839488e-08,1.80575625563506e-08,4.078520987604861e-08) mm + Endpoint of ComputeStep() was (682.3837401666125,-156.052654702547,450.350573591818) + and current position to locate is (682.3837402561138,-156.0526546844895,450.3505736326032) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000002094374e-07 mm long + and its vector is (6.78475089443964e-08,7.2396630912408e-08,-1.246769443241647e-08) mm + Endpoint of ComputeStep() was (799.6127182321159,-237.2756844337225,754.5254997813994) + and current position to locate is (799.6127182999634,-237.2756843613258,754.5254997689317) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000015231118e-07 mm long + and its vector is (3.246282176405657e-08,4.234358641497238e-08,8.457652711513219e-08) mm + Endpoint of ComputeStep() was (631.496869743646,22.10188393666241,607.4768732413451) + and current position to locate is (631.4968697761088,22.101883979006,607.4768733259216) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000190303563e-07 mm long + and its vector is (-5.296476501825964e-08,8.07147699788402e-08,-2.607418991829036e-08) mm + Endpoint of ComputeStep() was (783.6857136991204,-104.3483008437964,673.1187108001966) + and current position to locate is (783.6857136461556,-104.3483007630817,673.1187107741224) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 10285 (kaon-,1.5177867746549[GeV]) at (462.53000840154,-189.91048240704,444.14716929379) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[6,18] 3.9000294054858e-07 [GeV] +Cell[9,0] 0.0095183420919003 [GeV] +Cell[15,29] 1.2374113514056e-05 [GeV] +Cell[16,29] 1.2023908350329e-05 [GeV] +Cell[14,26] 0.0008897130695932 [GeV] +Cell[11,0] 0.00023614872568783 [GeV] +Cell[12,41] 1.4067860536215e-07 [GeV] +Cell[12,45] 0.97164370087054 [GeV] +Cell[12,44] 0.22628220427969 [GeV] +Cell[16,35] 0.00079746608511677 [GeV] +Cell[16,36] 0.00022394085653877 [GeV] +Cell[13,23] 0.00016382729848328 [GeV] +Cell[11,5] 0.0033822055504495 [GeV] +Cell[16,37] 0.00071845427686878 [GeV] +Cell[8,21] 0.0016563088996684 [GeV] +Cell[13,45] 0.0091642376631407 [GeV] +Cell[7,21] 2.9135579825379e-07 [GeV] +Cell[11,47] 3.626337274909e-11 [GeV] +Cell[6,17] 6.8906870092178e-06 [GeV] +Cell[5,14] 4.0329436887987e-07 [GeV] +Cell[10,40] 3.9155417471193e-07 [GeV] +Cell[12,46] 0.025857889655608 [GeV] +Cell[11,45] 0.0040246323673597 [GeV] +Cell[11,43] 6.8065939201801e-05 [GeV] +Cell[12,43] 0.0061967300659604 [GeV] +Cell[11,44] 0.00093976407723815 [GeV] +Cell[12,42] 0.00085890536477623 [GeV] +Cell[11,42] 0.00018025974534203 [GeV] +Cell[15,37] 0.00014253524932246 [GeV] +Cell[15,38] 7.7217727898642e-06 [GeV] +Cell[13,22] 0.002116001122162 [GeV] +Cell[11,46] 0.00030720294321156 [GeV] +Cell[13,19] 0.0017076238006314 [GeV] +Cell[11,20] 0.0021570926357912 [GeV] +Cell[13,44] 7.6065803824349e-05 [GeV] +Cell[13,43] 9.4439630711349e-05 [GeV] +Cell[11,6] 0.0021620722613075 [GeV] +Cell[15,26] 0.00010228999593528 [GeV] +Cell[15,27] 0.0020360614005215 [GeV] +Cell[16,28] 8.3515143666432e-05 [GeV] +Cell[15,28] 0.00034223487573036 [GeV] +Cell[17,28] 5.7864863265422e-09 [GeV] +Cell[11,41] 0.00039941548925003 [GeV] +Cell[12,40] 2.7705050342774e-10 [GeV] +Cell[13,46] 0.0051781203524254 [GeV] +Cell[13,47] 0.0056512107783765 [GeV] +Cell[14,45] 0.0004951238875318 [GeV] +Cell[12,47] 3.6360650278766e-06 [GeV] +Cell[13,0] 1.7197476608999e-08 [GeV] +Cell[10,1] 0.0051715454688568 [GeV] +Cell[10,3] 0.00223489095444 [GeV] +Cell[10,2] 0.00011986318392457 [GeV] +### Total energy deposition in calorimeter by a source track in 52 cells : 1.2934243885906 (GeV) + +Source track ID 10444 (gamma,0.23378010273678[GeV]) at (499.39193999298,24.651374607672,861.27115369182) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[14,0] 0.22711066501101 [GeV] +Cell[11,23] 0.00055091929083074 [GeV] +Cell[14,1] 0.0026560608215696 [GeV] +Cell[15,1] 0.0012621389484136 [GeV] +Cell[15,12] 0.0011100835544411 [GeV] +Cell[14,47] 0.0010902351105137 [GeV] +### Total energy deposition in calorimeter by a source track in 6 cells : 0.23378010273678 (GeV) + +Source track ID 10445 (gamma,0.24889356279397[GeV]) at (220.2924341846,-448.85548168762,830.38547374856) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[15,40] 0.00051099891 [GeV] +Cell[14,37] 0.00034442346295735 [GeV] +Cell[14,39] 0.24437562685686 [GeV] +Cell[14,41] 0.0010539756044872 [GeV] +Cell[14,40] 0.00092019781642832 [GeV] +Cell[14,38] 0.0016883401432287 [GeV] +### Total energy deposition in calorimeter by a source track in 6 cells : 0.24889356279397 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000132247358e-07 mm long + and its vector is (-8.042945864872308e-08,-5.382406698117848e-08,-2.51808387474739e-08) mm + Endpoint of ComputeStep() was (482.5756600600232,-328.1330758822129,819.2112211632552) + and current position to locate is (482.5756599795937,-328.133075936037,819.2112211380744) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999647718368e-08 mm long + and its vector is (-5.884389953081381e-08,4.422531674208585e-08,6.768689786440518e-08) mm + Endpoint of ComputeStep() was (2.89046668681976,566.0709399282021,176.1088652185798) + and current position to locate is (2.89046662797586,566.0709399724274,176.1088652862667) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 10426 (kaon+,0.60212717022977[GeV]) at (325.24309417332,379.75904162055,508.0683575442) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[12,34] 0.00030981541606991 [GeV] +Cell[12,35] 0.0016600056768786 [GeV] +Cell[13,43] 5.7564329182469e-06 [GeV] +Cell[12,6] 0.056585743467099 [GeV] +Cell[13,42] 0.00039312164494208 [GeV] +Cell[14,43] 9.0452965650911e-10 [GeV] +Cell[10,11] 0.001317750657208 [GeV] +Cell[10,12] 2.3865140974522e-12 [GeV] +Cell[14,16] 0.089806019052677 [GeV] +Cell[15,16] 0.067341456027731 [GeV] +Cell[15,15] 0.005995492143159 [GeV] +Cell[15,17] 0.00048404452730916 [GeV] +### Total energy deposition in calorimeter by a source track in 12 cells : 0.22389920595291 (GeV) + +Source track ID 10429 (gamma,0.0027517259304135[GeV]) at (406.27556381119,-291.44496264286,341.73320116138) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[11,43] 0.00024453450404598 [GeV] +Cell[11,42] 0.0025071914263675 [GeV] +### Total energy deposition in calorimeter by a source track in 2 cells : 0.0027517259304135 (GeV) + +Source track ID 10430 (gamma,0.0010635807642458[GeV]) at (-418.79967066995,-273.14251929486,-734.96458155085) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[6,28] 0.0010635807642458 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0010635807642458 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999982866375e-08 mm long + and its vector is (-2.676677013369044e-08,3.636435508269642e-08,-8.922540928324452e-08) mm + Endpoint of ComputeStep() was (551.405562008775,212.8157651762575,432.0170426483137) + and current position to locate is (551.4055619820082,212.8157652126218,432.0170425590883) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 10431 (neutron,0.94030684760222[GeV]) at (386.5172096379,317.18204024461,336.58191766405) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[11,3] 1.907265919499e-06 [GeV] +Cell[11,4] 0.00070563081468481 [GeV] +Cell[11,5] 2.4048105406109e-06 [GeV] +Cell[12,2] 1.456271547795e-11 [GeV] +Cell[12,3] 3.1544668694664e-05 [GeV] +### Total energy deposition in calorimeter by a source track in 5 cells : 0.0007414875744023 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000208302725e-07 mm long + and its vector is (-8.709622534297523e-08,3.370382728462573e-08,3.575337359507103e-08) mm + Endpoint of ComputeStep() was (88.39631485749157,-671.4366715006848,1242.105134870553) + and current position to locate is (88.39631477039535,-671.436671466981,1242.105134906307) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997790908189e-08 mm long + and its vector is (-5.938318281550892e-09,9.727148153615417e-08,2.242745722469408e-08) mm + Endpoint of ComputeStep() was (402.3516581230571,-296.8385811651731,944.6495241308505) + and current position to locate is (402.3516581171187,-296.8385810679016,944.649524153278) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997440396783e-08 mm long + and its vector is (-4.089304184162756e-08,8.991071354103042e-08,-1.561465978738852e-08) mm + Endpoint of ComputeStep() was (-35.89253959109131,705.026098529941,1293.144154407119) + and current position to locate is (-35.89253963198435,705.0260986198517,1293.144154391505) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000656899904e-07 mm long + and its vector is (4.417026389091916e-08,5.577339834417216e-08,-7.027324500086252e-08) mm + Endpoint of ComputeStep() was (199.6802262655093,-557.5011286764711,1366.082297110844) + and current position to locate is (199.6802263096796,-557.5011286206977,1366.082297040571) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000292962579e-07 mm long + and its vector is (8.259604555860278e-09,-9.787470389710506e-08,1.877037902886514e-08) mm + Endpoint of ComputeStep() was (-125.7728483936581,483.9227114981805,1262.200831525238) + and current position to locate is (-125.7728483853985,483.9227114003058,1262.200831544008) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000005398687e-07 mm long + and its vector is (-9.201619377563475e-08,-3.833667960861931e-08,7.957396519486792e-09) mm + Endpoint of ComputeStep() was (430.9790861610392,-609.3389751236697,1295.108211938312) + and current position to locate is (430.979086069023,-609.3389751620064,1295.10821194627) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000728746599e-07 mm long + and its vector is (3.897436329225457e-08,4.90557567900396e-08,7.793937584210653e-08) mm + Endpoint of ComputeStep() was (-97.04116514165139,-579.64911201312,1501.857352499102) + and current position to locate is (-97.04116510267703,-579.6491119640642,1501.857352577042) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999855539164e-08 mm long + and its vector is (-5.116200441079854e-08,8.117785910144448e-08,2.815318111970555e-08) mm + Endpoint of ComputeStep() was (239.9887792158173,-636.2431814788714,1632.156732835026) + and current position to locate is (239.9887791646553,-636.2431813976935,1632.156732863179) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000001118313724e-07 mm long + and its vector is (4.075218384969048e-09,4.10683469453943e-08,9.108680387726054e-08) mm + Endpoint of ComputeStep() was (-597.7738872074033,-845.7686519018193,1554.120914693345) + and current position to locate is (-597.7738872033281,-845.768651860751,1554.120914784432) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000042763872e-07 mm long + and its vector is (-4.176024503976805e-08,7.063346174618346e-08,-5.715764928027056e-08) mm + Endpoint of ComputeStep() was (140.2564429593761,-479.9251298774578,1983.280130483954) + and current position to locate is (140.2564429176159,-479.9251298068244,1983.280130426797) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 10287 (pi-,1.1891762906296[GeV]) at (44.097536211652,-498.05161108068,1037.4679317175) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[16,32] 0.019744045094395 [GeV] +Cell[17,32] 0.0012181530113237 [GeV] +Cell[18,35] 4.8461182159372e-06 [GeV] +Cell[18,38] 0.00012752050069787 [GeV] +Cell[16,35] 2.1438843046781e-05 [GeV] +Cell[16,36] 0.069238296255087 [GeV] +Cell[15,5] 2.4746695999056e-09 [GeV] +Cell[16,37] 0.75127322569511 [GeV] +Cell[16,38] 0.0062456974490498 [GeV] +Cell[16,39] 3.6094587703701e-06 [GeV] +Cell[15,36] 0.1619775929727 [GeV] +Cell[17,36] 0.0081859389215428 [GeV] +Cell[15,11] 0.0011813829780864 [GeV] +Cell[16,12] 0.0017260861083291 [GeV] +Cell[17,37] 0.045070349590134 [GeV] +Cell[17,35] 0.0016435746254523 [GeV] +Cell[17,34] 0.0019443735213981 [GeV] +Cell[16,40] 0.00111757975669 [GeV] +Cell[16,41] 0.00043403972080705 [GeV] +Cell[17,38] 0.0059860258954582 [GeV] +Cell[16,33] 7.4261671397835e-06 [GeV] +Cell[17,31] 0.022027682695121 [GeV] +Cell[17,30] 1.024454832077e-10 [GeV] +Cell[16,18] 2.8556011024193e-05 [GeV] +Cell[16,17] 5.5723832929289e-08 [GeV] +### Total energy deposition in calorimeter by a source track in 25 cells : 1.0992074996905 (GeV) + +Source track ID 10390 (e-,1.1408017967313[GeV]) at (396.13972960664,-305.07919402539,318.25767239226) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[10,22] 0.00057136689298802 [GeV] +Cell[13,27] 0.00051099891 [GeV] +Cell[12,44] 0.00032591750036859 [GeV] +Cell[2,22] 0.0017461629744481 [GeV] +Cell[11,43] 0.4896132283545 [GeV] +Cell[12,43] 0.012292265400933 [GeV] +Cell[11,44] 0.00012083168254214 [GeV] +Cell[12,42] 0.0072576346904105 [GeV] +Cell[11,42] 0.61595195994579 [GeV] +Cell[11,41] 0.00092989054617147 [GeV] +Cell[13,38] 0.0036067427612394 [GeV] +Cell[17,24] 0.00594437392538 [GeV] +### Total energy deposition in calorimeter by a source track in 12 cells : 1.1388713735848 (GeV) + +Source track ID 10391 (e+,0.39281757359285[GeV]) at (393.76150658682,-308.14262270981,318.63775388985) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[11,43] 0.028226478137106 [GeV] +Cell[11,44] 0.00040082080519303 [GeV] +Cell[11,42] 0.36434896017024 [GeV] +Cell[11,39] 0.00035231339031463 [GeV] +### Total energy deposition in calorimeter by a source track in 4 cells : 0.39332857250285 (GeV) + +Source track ID 10389 (gamma,0.1244455075516[GeV]) at (447.26695613527,-223.50004462972,557.854583135) +Original primary track ID 8 (unknown,11.672977589613[GeV]) +Cell[12,44] 0.092934009962843 [GeV] +Cell[12,46] 0.015851787808346 [GeV] +Cell[13,44] 0.013899824213159 [GeV] +Cell[13,43] 0.00047436363243872 [GeV] +Cell[16,15] 0.0012855219348136 [GeV] ### Total energy deposition in calorimeter by a source track in 5 cells : 0.1244455075516 (GeV) -Source track ID 5751 (pi+,0.37512742418192[GeV]) at (185.48506599244,464.32239908686,1260.419132328) +Source track ID 10364 (pi+,0.37517742434982[GeV]) at (184.42882478579,464.74294893858,1254.3016586426) Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[16,6] 0.0010264538099133 [GeV] -Cell[16,9] 0.01287363362507 [GeV] -Cell[16,8] 0.13964159088518 [GeV] -Cell[16,7] 0.13401476598235 [GeV] -Cell[16,5] 0.0016165399449658 [GeV] -Cell[17,7] 0.00051091383125188 [GeV] -### Total energy deposition in calorimeter by a source track in 6 cells : 0.28968389807873 (GeV) +Cell[16,9] 0.015864694028203 [GeV] +Cell[16,8] 0.1514124453606 [GeV] +Cell[16,7] 0.090466207938622 [GeV] +Cell[18,16] 0.0020596683100121 [GeV] +### Total energy deposition in calorimeter by a source track in 4 cells : 0.25980301563744 (GeV) -Source track ID 5633 (neutron,1.115511606375[GeV]) at (-221.17460775242,-448.4214456129,-407.89962317143) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997679115997e-08 mm long + and its vector is (5.376466560846893e-08,7.921448741399217e-08,2.888634753617225e-08) mm + Endpoint of ComputeStep() was (385.7642658994636,-528.0710142826421,65.23393806794665) + and current position to locate is (385.7642659532282,-528.0710142034276,65.233938096833) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999033645475e-08 mm long + and its vector is (-7.665789780730847e-09,-2.577758095867466e-08,9.631588682168513e-08) mm + Endpoint of ComputeStep() was (531.5569135712929,-35.65344014681547,155.4648289237765) + and current position to locate is (531.5569135636271,-35.65344017259305,155.4648290200924) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000028270873e-07 mm long + and its vector is (-6.620492776221454e-08,-6.772938832000364e-08,3.208805310350726e-08) mm + Endpoint of ComputeStep() was (11.8842829783041,-649.9776392435737,-124.2253408121159) + and current position to locate is (11.88428291209917,-649.9776393113031,-124.2253407800278) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999659006983e-08 mm long + and its vector is (-2.777579766188865e-08,-7.319658834603615e-08,-6.221546300366754e-08) mm + Endpoint of ComputeStep() was (132.8714679005348,-507.0794939444754,1000.000000062215) + and current position to locate is (132.871467872759,-507.079494017672,1000) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000357530467e-07 mm long + and its vector is (-2.533462861720182e-08,-9.39151050260989e-08,-2.319734448974486e-08) mm + Endpoint of ComputeStep() was (174.1967164599614,-512.6937339974737,208.5075406379492) + and current position to locate is (174.1967164346268,-512.6937340913888,208.5075406147519) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994535549352e-08 mm long + and its vector is (-2.598829951239168e-08,-9.60199031396769e-08,-1.023599338623171e-08) mm + Endpoint of ComputeStep() was (358.1693906943005,-541.538114851408,-57.61464828328793) + and current position to locate is (358.1693906683122,-541.5381149474279,-57.61464829352393) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999255174802e-08 mm long + and its vector is (4.636660833057249e-08,-7.767084753140807e-08,4.26306883127836e-08) mm + Endpoint of ComputeStep() was (246.4819982392196,-491.6773580761741,98.09817068584557) + and current position to locate is (246.4819982855862,-491.677358153845,98.09817072847626) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000009800967e-07 mm long + and its vector is (2.357276684961107e-08,-4.458820512809325e-08,8.63493880842725e-08) mm + Endpoint of ComputeStep() was (193.5086681445399,-672.7216328347204,215.433858242993) + and current position to locate is (193.5086681681127,-672.7216328793086,215.4338583293424) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000012229922e-07 mm long + and its vector is (1.259763848793227e-09,2.159265477530425e-08,-9.763283514985233e-08) mm + Endpoint of ComputeStep() was (363.0479999084339,-530.4621279632917,185.6288372148236) + and current position to locate is (363.0479999096937,-530.462127941699,185.6288371171908) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000490939255e-07 mm long + and its vector is (-8.736151357879862e-09,-7.921551059553167e-08,-6.040357902747928e-08) mm + Endpoint of ComputeStep() was (547.5975405091193,-557.3666279394164,414.996809456122) + and current position to locate is (547.5975405003832,-557.3666280186319,414.9968093957185) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000212061064e-07 mm long + and its vector is (-3.251864200137788e-08,-6.716413736285176e-08,-6.656966888840543e-08) mm + Endpoint of ComputeStep() was (679.1841228451129,-411.9953042454107,600.0000000665697) + and current position to locate is (679.1841228125943,-411.9953043125748,600) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999311592724e-08 mm long + and its vector is (-7.134769930416951e-08,-5.331179409040487e-08,4.546819809547742e-08) mm + Endpoint of ComputeStep() was (378.0834900128394,-400.7567332774298,399.9999999545318) + and current position to locate is (378.0834899414917,-400.7567333307416,400) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999057413995e-08 mm long + and its vector is (5.306105776980985e-09,3.983967644671793e-08,9.156769920082297e-08) mm + Endpoint of ComputeStep() was (383.8394694539007,-441.4166847334351,534.1372126236472) + and current position to locate is (383.8394694592068,-441.4166846935954,534.1372127152149) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999122638484e-08 mm long + and its vector is (-6.209791081346339e-08,6.843208666396094e-08,3.822168537226389e-08) mm + Endpoint of ComputeStep() was (424.9874177100532,-489.0255463674633,473.0012818256687) + and current position to locate is (424.9874176479553,-489.0255462990312,473.0012818638904) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996037260516e-08 mm long + and its vector is (4.360447292128811e-08,-6.388194151440985e-08,-6.338564162433613e-08) mm + Endpoint of ComputeStep() was (463.2407932524286,-342.8224786602806,567.5083442554567) + and current position to locate is (463.2407932960331,-342.8224787241626,567.508344192071) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000025547368e-07 mm long + and its vector is (6.38199253444327e-08,-3.097659373452188e-08,7.048026873235358e-08) mm + Endpoint of ComputeStep() was (908.3476847912035,-486.7755794223008,512.1237900377934) + and current position to locate is (908.3476848550234,-486.7755794532774,512.1237901082736) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000030403338e-07 mm long + and its vector is (-3.849254426313564e-08,-4.554067345452495e-09,9.218234708896489e-08) mm + Endpoint of ComputeStep() was (572.9314386810336,-287.6636233044092,399.9999999078177) + and current position to locate is (572.931438642541,-287.6636233089633,400) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000107036446e-07 mm long + and its vector is (1.555952167109353e-08,3.228313971703756e-08,9.335792583442526e-08) mm + Endpoint of ComputeStep() was (392.6812783309385,-379.0057070476998,526.4846698719219) + and current position to locate is (392.6812783464981,-379.0057070154167,526.4846699652799) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998175471319e-08 mm long + and its vector is (-9.516554655419895e-08,-2.681196065168479e-08,-1.498779056419153e-08) mm + Endpoint of ComputeStep() was (719.8869298235534,-121.0900838208558,636.4038755369367) + and current position to locate is (719.8869297283878,-121.0900838476678,636.4038755219489) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997551428037e-08 mm long + and its vector is (8.456470368400915e-08,1.630041879252531e-09,5.334931074685301e-08) mm + Endpoint of ComputeStep() was (524.8827087348558,-217.4135366497623,256.4791903428081) + and current position to locate is (524.8827088194205,-217.4135366481323,256.4791903961574) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 10348 (pi-,0.48292274792302[GeV]) at (170.68063103971,-469.96608621036,102.57466955383) Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[6,46] 6.903564379968e-05 [GeV] -Cell[7,1] 4.0653063129866e-05 [GeV] -Cell[6,34] 1.8278774117562e-06 [GeV] -Cell[7,34] 0.00065565825381873 [GeV] -Cell[7,35] 0.00030118994241116 [GeV] -Cell[7,33] 0.00066087046452628 [GeV] -Cell[7,32] 0.0084762425935573 [GeV] -Cell[6,35] 2.3672329284636e-06 [GeV] -Cell[7,30] 0.0052907027751694 [GeV] -Cell[6,31] 0.00067414248611033 [GeV] -Cell[3,2] 4.5881031546742e-06 [GeV] -Cell[7,37] 2.2881619748659e-05 [GeV] -Cell[6,23] 6.5893345454242e-06 [GeV] -Cell[7,31] 0.033564413965269 [GeV] -Cell[8,32] 2.2187264895365e-05 [GeV] -Cell[7,29] 3.8692447936e-05 [GeV] -Cell[6,33] 0.00015095100988458 [GeV] -Cell[6,32] 0.0017856677770249 [GeV] -Cell[7,3] 2.1551467565587e-05 [GeV] -Cell[5,46] 1.9395101821829e-06 [GeV] -Cell[6,24] 2.3049208684824e-05 [GeV] -Cell[6,47] 6.8052621918469e-07 [GeV] -Cell[6,1] 0.0043280839565788 [GeV] -Cell[6,0] 6.6777794098016e-05 [GeV] -Cell[5,47] 0.00026118735658235 [GeV] -Cell[7,2] 0.00081661397372454 [GeV] -Cell[8,2] 1.0681105777621e-11 [GeV] -Cell[3,10] 0.0006682537848942 [GeV] -Cell[7,20] 6.9247434148565e-06 [GeV] -### Total energy deposition in calorimeter by a source track in 29 cells : 0.057963724187947 (GeV) +Cell[10,37] 0.0018644435944854 [GeV] +Cell[9,40] 1.2352352202925e-05 [GeV] +Cell[8,14] 0.0022230708607212 [GeV] +Cell[9,39] 0.0018289223398737 [GeV] +Cell[13,35] 7.257586187734e-06 [GeV] +Cell[17,25] 1.0564344702289e-06 [GeV] +Cell[12,41] 0.0074200178741614 [GeV] +Cell[12,45] 0.01434765428061 [GeV] +Cell[10,47] 3.2214301086242e-08 [GeV] +Cell[12,44] 0.015004485071325 [GeV] +Cell[11,40] 2.4619808186799e-08 [GeV] +Cell[12,13] 6.3418299832847e-06 [GeV] +Cell[11,38] 6.5481011292832e-06 [GeV] +Cell[9,37] 2.6819368358701e-06 [GeV] +Cell[12,12] 4.1417012136662e-05 [GeV] +Cell[14,37] 1.2786453566605e-05 [GeV] +Cell[12,35] 0.00052930312049409 [GeV] +Cell[13,36] 1.0389974272584e-07 [GeV] +Cell[12,36] 0.00013246010144815 [GeV] +Cell[10,40] 0.0027310256883361 [GeV] +Cell[11,45] 4.6078455898169e-07 [GeV] +Cell[12,43] 0.008442471649385 [GeV] +Cell[11,44] 5.5070104167498e-08 [GeV] +Cell[12,42] 0.015516830426093 [GeV] +Cell[11,42] 6.1079065182071e-05 [GeV] +Cell[15,37] 1.1510462627484e-10 [GeV] +Cell[15,38] 0.00028818647290348 [GeV] +Cell[11,46] 0.00028960276145028 [GeV] +Cell[11,41] 1.3829855026188e-05 [GeV] +Cell[13,46] 7.178604125329e-06 [GeV] +Cell[14,38] 1.6783842170298e-08 [GeV] +Cell[13,42] 0.00055762058777116 [GeV] +Cell[17,24] 1.0609941091388e-07 [GeV] +Cell[11,39] 0.00095122831949104 [GeV] +Cell[10,38] 0.050830043986291 [GeV] +Cell[10,39] 0.14981344605694 [GeV] +Cell[10,46] 1.656737367739e-09 [GeV] +Cell[11,37] 8.428979839664e-06 [GeV] +Cell[11,36] 4.3466228627949e-05 [GeV] +Cell[9,36] 0.00027559250362276 [GeV] +Cell[9,38] 5.4395059123635e-11 [GeV] +Cell[10,41] 9.4109658093657e-06 [GeV] +Cell[9,17] 0.00094782961126475 [GeV] +### Total energy deposition in calorimeter by a source track in 43 cells : 0.2742288720098 (GeV) -Source track ID 5634 (neutron,1.0734277081812[GeV]) at (221.91485641867,-448.05557300482,160.67848886338) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000994649152e-07 mm long + and its vector is (-4.974849332484155e-08,1.696491835900815e-08,-8.507231541443616e-08) mm + Endpoint of ComputeStep() was (-28.86521894216249,-649.3587599737002,1176.112240589372) + and current position to locate is (-28.86521899191098,-649.3587599567353,1176.112240504299) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998204933171e-08 mm long + and its vector is (-6.654062190136756e-08,-5.816957582283067e-08,-4.678292953030905e-08) mm + Endpoint of ComputeStep() was (479.2063586666299,269.9282606705825,574.3467001685586) + and current position to locate is (479.2063586000892,269.9282606124129,574.3467001217757) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000199276989e-07 mm long + and its vector is (9.379940735243508e-08,-3.042737262148876e-08,1.660873749642633e-08) mm + Endpoint of ComputeStep() was (36.77995761528526,-704.7774998286301,-1532.525013909394) + and current position to locate is (36.77995770908466,-704.7774998590575,-1532.525013892785) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000058457612e-07 mm long + and its vector is (-2.479377236852542e-08,4.303171863284661e-08,8.67960352479713e-08) mm + Endpoint of ComputeStep() was (13.58903282005003,549.8320999544943,1330.144900361345) + and current position to locate is (13.58903279525626,549.832099997526,1330.144900448141) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996152503722e-08 mm long + and its vector is (-4.73106780418675e-08,-7.886319508543238e-08,-3.927198122255504e-08) mm + Endpoint of ComputeStep() was (-45.53794637046156,-723.4214854628524,1693.355005970045) + and current position to locate is (-45.53794641777224,-723.4214855417156,1693.355005930773) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000210876516e-07 mm long + and its vector is (-7.023925263638375e-08,4.930279828840867e-08,-5.133892955200281e-08) mm + Endpoint of ComputeStep() was (-153.2180522202195,-745.8784426973324,1699.662262277346) + and current position to locate is (-153.2180522904588,-745.8784426480296,1699.662262226007) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995459791267e-08 mm long + and its vector is (-5.44224576515262e-09,-6.933623808436096e-08,7.185303729784209e-08) mm + Endpoint of ComputeStep() was (-166.6292127008185,-813.1019034291685,1702.67943118619) + and current position to locate is (-166.6292127062607,-813.1019034985047,1702.679431258043) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999945079312e-08 mm long + and its vector is (-7.13758048220825e-08,6.99276370141888e-08,-3.95220922655426e-09) mm + Endpoint of ComputeStep() was (-3.351986276302582,-932.8078633293056,1706.822432390904) + and current position to locate is (-3.351986347678387,-932.807863259378,1706.822432386952) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996165782138e-08 mm long + and its vector is (-7.077153441059636e-08,5.355013854568824e-08,-4.608432391250972e-08) mm + Endpoint of ComputeStep() was (-535.9790196680093,-1071.517073313251,1649.405095071853) + and current position to locate is (-535.9790197387808,-1071.517073259701,1649.405095025769) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000203101828e-07 mm long + and its vector is (2.003281451834482e-08,-5.370429789763875e-08,8.194228939828463e-08) mm + Endpoint of ComputeStep() was (-418.5030341151996,-1010.355700753137,1841.613915478403) + and current position to locate is (-418.5030340951668,-1010.355700806841,1841.613915560346) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 10312 (pi+,0.96800120819826[GeV]) at (-68.904699746255,-495.22938357177,1186.1293778256) Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[12,44] 0.00059281740879032 [GeV] -Cell[11,44] 7.5929331160296e-09 [GeV] -Cell[13,41] 5.0626339600512e-07 [GeV] -Cell[11,43] 0.0032367317863959 [GeV] -Cell[13,43] 0.0021388874190243 [GeV] -Cell[12,43] 0.043659502012302 [GeV] -Cell[13,42] 0.0044351877286529 [GeV] -Cell[12,42] 0.0055072867106153 [GeV] -Cell[11,41] 2.1695793395793e-06 [GeV] -Cell[12,41] 1.2754159700989e-06 [GeV] -### Total energy deposition in calorimeter by a source track in 10 cells : 0.05957437191742 (GeV) +Cell[8,7] 7.0229612174444e-06 [GeV] +Cell[18,35] 0.27007263111343 [GeV] +Cell[16,34] 0.1326134425959 [GeV] +Cell[16,35] 0.07872690267839 [GeV] +Cell[1,36] 1.720344639034e-05 [GeV] +Cell[1,38] 0.00074907668084791 [GeV] +Cell[1,37] 0.00025862280151171 [GeV] +Cell[2,36] 6.2177645789347e-05 [GeV] +Cell[2,37] 7.226232848268e-05 [GeV] +Cell[12,3] 0.00065754677367534 [GeV] +Cell[16,12] 0.0015711760365955 [GeV] +Cell[17,35] 0.20647643090434 [GeV] +Cell[17,34] 0.0059428305201386 [GeV] +Cell[15,34] 0.017272987088513 [GeV] +Cell[15,35] 0.00053829469542745 [GeV] +Cell[12,4] 1.4432209744996e-05 [GeV] +Cell[1,31] 1.4939539105399e-05 [GeV] +Cell[16,11] 7.9900022456059e-09 [GeV] +Cell[18,34] 0.003928550034797 [GeV] +Cell[19,33] 0.022619323513777 [GeV] +Cell[18,33] 3.4761256535376e-05 [GeV] +Cell[19,32] 0.00021772160715318 [GeV] +Cell[18,32] 2.5296566934685e-07 [GeV] +### Total energy deposition in calorimeter by a source track in 23 cells : 0.74186859738742 (GeV) -Source track ID 5635 (neutron,0.99208049339426[GeV]) at (152.29550182527,-476.2416194788,133.94404149633) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000140083439e-07 mm long + and its vector is (-3.251500402257079e-08,-7.493883913411992e-08,-5.767969923908822e-08) mm + Endpoint of ComputeStep() was (534.0491695972387,-534.0491694897855,771.9170570803176) + and current position to locate is (534.0491695647237,-534.0491695647244,771.9170570226379) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000137939393e-07 mm long + and its vector is (-1.764163926054607e-08,9.740767836774467e-08,1.416049144609133e-08) mm + Endpoint of ComputeStep() was (370.0365314747629,-629.2638282229268,843.4037374833674) + and current position to locate is (370.0365314571213,-629.2638281255191,843.4037374975279) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999305665135e-08 mm long + and its vector is (-5.804616876048385e-08,7.604137408634415e-08,-2.912645413744031e-08) mm + Endpoint of ComputeStep() was (498.5746436987013,-663.5686285679207,863.1453058342136) + and current position to locate is (498.5746436406551,-663.5686284918793,863.1453058050871) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000615981591e-07 mm long + and its vector is (1.893147327791667e-08,-2.804210907925153e-08,9.41023472478264e-08) mm + Endpoint of ComputeStep() was (445.9458746642551,-519.7859666718601,883.9158726273125) + and current position to locate is (445.9458746831866,-519.7859666999022,883.9158727214149) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998930485378e-08 mm long + and its vector is (-8.775066362431971e-08,2.512410901545081e-08,-4.084847660124069e-08) mm + Endpoint of ComputeStep() was (445.9633566015714,-540.4096453523046,812.8336304853572) + and current position to locate is (445.9633565138207,-540.4096453271804,812.8336304445087) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000326606807e-07 mm long + and its vector is (2.281694833072834e-08,8.374308890779503e-08,4.96637539981748e-08) mm + Endpoint of ComputeStep() was (313.240913448147,-569.5437913130709,475.3699879159371) + and current position to locate is (313.240913470964,-569.5437912293278,475.3699879656009) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999992221472493e-08 mm long + and its vector is (-6.145080533315195e-08,-7.884364094934426e-08,2.731894710450433e-09) mm + Endpoint of ComputeStep() was (690.7871594295171,-690.7871592892236,570.8617719113892) + and current position to locate is (690.7871593680663,-690.7871593680673,570.8617719141211) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997927767835e-08 mm long + and its vector is (-7.962512427184265e-09,-9.805069112189813e-08,1.796263404685305e-08) mm + Endpoint of ComputeStep() was (458.0189592608223,-369.1198945560463,877.9363550007838) + and current position to locate is (458.0189592528598,-369.119894654097,877.9363550187464) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998966500051e-08 mm long + and its vector is (-2.410240540484665e-08,-9.582515758665977e-08,1.538217020424781e-08) mm + Endpoint of ComputeStep() was (524.4785144966893,-463.597117945938,952.7579566992689) + and current position to locate is (524.4785144725869,-463.5971180417631,952.7579567146511) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998627635456e-08 mm long + and its vector is (3.717025265359553e-08,-2.496068418622599e-08,8.941663054429227e-08) mm + Endpoint of ComputeStep() was (579.9572580339174,-497.1221782835279,706.5253670536492) + and current position to locate is (579.9572580710876,-497.1221783084886,706.5253671430659) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999662916704e-08 mm long + and its vector is (7.224787168524927e-08,4.734164349429193e-08,-5.038862127548782e-08) mm + Endpoint of ComputeStep() was (531.200464797697,-407.6044527690207,929.792850001848) + and current position to locate is (531.2004648699449,-407.6044527216791,929.7928499514594) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000326909891e-07 mm long + and its vector is (1.855357822933001e-08,9.775533271749737e-08,9.98329596768599e-09) mm + Endpoint of ComputeStep() was (611.7235279472168,-700.4957712007017,905.0449982255814) + and current position to locate is (611.7235279657704,-700.4957711029464,905.0449982355647) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996414873454e-08 mm long + and its vector is (6.907725946803112e-08,2.989156655530678e-08,6.583934464288177e-08) mm + Endpoint of ComputeStep() was (380.8410798430564,-701.6587567498876,697.2998257685011) + and current position to locate is (380.8410799121337,-701.6587567199961,697.2998258343405) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998068230241e-08 mm long + and its vector is (6.272324526435114e-08,-5.811324399473961e-08,5.185211193747818e-08) mm + Endpoint of ComputeStep() was (457.9835167743245,-397.9035275701621,833.5662440939752) + and current position to locate is (457.9835168370478,-397.9035276282753,833.5662441458273) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000091760587e-07 mm long + and its vector is (-6.488414783234475e-08,1.340413291472942e-08,7.4902459346049e-08) mm + Endpoint of ComputeStep() was (611.032910921647,-298.393669265805,661.6288126373513) + and current position to locate is (611.0329108567629,-298.3936692524009,661.6288127122538) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998743324434e-08 mm long + and its vector is (-9.04257717593282e-08,-2.191848125221441e-08,3.6643655221269e-08) mm + Endpoint of ComputeStep() was (444.5596143601721,-525.8988424483379,821.2557279632642) + and current position to locate is (444.5596142697463,-525.8988424702563,821.2557279999079) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999197044356e-08 mm long + and its vector is (-8.038352916628355e-08,-6.17319528828375e-10,5.9481976677489e-08) mm + Endpoint of ComputeStep() was (587.9467395899738,-660.5519480377429,905.9242596941307) + and current position to locate is (587.9467395095903,-660.5519480383603,905.9242597536127) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996751684712e-08 mm long + and its vector is (9.675204637460411e-08,3.234504220017698e-09,2.507135832274798e-08) mm + Endpoint of ComputeStep() was (665.1895873841256,-512.5281483755521,835.0644824527785) + and current position to locate is (665.1895874808777,-512.5281483723176,835.0644824778499) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999749702151e-08 mm long + and its vector is (6.251701734072412e-08,7.803407697792863e-08,-1.516696102044079e-09) mm + Endpoint of ComputeStep() was (509.8655775786886,-733.3625789360864,884.4969069657928) + and current position to locate is (509.8655776412056,-733.3625788580523,884.4969069642761) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000106661146e-07 mm long + and its vector is (1.465042487325263e-08,-9.527724387226044e-08,2.660101472429233e-08) mm + Endpoint of ComputeStep() was (501.666587145715,-471.5836049109008,781.849362558271) + and current position to locate is (501.6665871603654,-471.5836050061781,781.849362584872) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000152838982e-07 mm long + and its vector is (3.501440914988052e-08,9.090803132494329e-08,2.257706910313573e-08) mm + Endpoint of ComputeStep() was (419.4280209078981,-404.8126609216667,962.0768226962364) + and current position to locate is (419.4280209429126,-404.8126608307587,962.0768227188134) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998277918948e-08 mm long + and its vector is (4.138382792007178e-08,2.032282964137266e-08,-8.873757906258106e-08) mm + Endpoint of ComputeStep() was (561.1401965312136,-474.0933764262651,852.1771374969419) + and current position to locate is (561.1401965725975,-474.0933764059423,852.1771374082043) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000435160327e-07 mm long + and its vector is (-6.018916565153631e-08,-4.426641453392222e-08,-6.646621386607876e-08) mm + Endpoint of ComputeStep() was (476.9202422678144,-420.0005742748318,803.0033290731604) + and current position to locate is (476.9202422076252,-420.0005743190982,803.0033290066942) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000016926223e-07 mm long + and its vector is (8.106974291877123e-08,-5.405706815508893e-08,-2.248407326987945e-08) mm + Endpoint of ComputeStep() was (575.3807391565061,-575.3807391835196,726.1756314369858) + and current position to locate is (575.3807392375759,-575.3807392375767,726.1756314145017) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998862018404e-08 mm long + and its vector is (6.734563839927432e-08,-7.389860456896713e-08,1.886519385152496e-09) mm + Endpoint of ComputeStep() was (436.0120137338126,-478.2784502249144,581.5217997348153) + and current position to locate is (436.0120138011583,-478.278450298813,581.5217997367018) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999601871742e-08 mm long + and its vector is (-4.828928013012046e-08,8.70001031216816e-08,-9.956238500308245e-09) mm + Endpoint of ComputeStep() was (767.5761004678948,-856.2075051057931,683.2906492773531) + and current position to locate is (767.5761004196055,-856.207505018793,683.2906492673968) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999125785649e-08 mm long + and its vector is (-9.580281812304747e-08,2.638000751176151e-08,1.122111825679895e-08) mm + Endpoint of ComputeStep() was (471.3579078049557,-683.1703468946041,1048.583729119074) + and current position to locate is (471.3579077091529,-683.1703468682241,1048.583729130295) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000503458595e-07 mm long + and its vector is (2.070680693577742e-08,-3.085585831286153e-08,9.283940016757697e-08) mm + Endpoint of ComputeStep() was (574.2344049929075,-524.7924693729622,792.6771659875398) + and current position to locate is (574.2344050136143,-524.792469403818,792.6771660803792) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000247358404e-07 mm long + and its vector is (-8.103506843326613e-08,3.406660198379541e-08,4.767377959069563e-08) mm + Endpoint of ComputeStep() was (537.0624176018309,-417.0898700701516,614.7281860515993) + and current position to locate is (537.0624175207959,-417.089870036085,614.7281860992731) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998049197004e-08 mm long + and its vector is (4.884628879153752e-08,-7.180551619967446e-08,4.957826149620814e-08) mm + Endpoint of ComputeStep() was (370.7356910465606,-459.081733060572,927.1163221822321) + and current position to locate is (370.7356910954069,-459.0817331323776,927.1163222318104) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000221051481e-07 mm long + and its vector is (5.858760232513305e-08,4.193918812234187e-08,6.934408247616375e-08) mm + Endpoint of ComputeStep() was (565.6503136550588,-758.0184444246097,650.9255472023148) + and current position to locate is (565.6503137136464,-758.0184443826705,650.9255472716588) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999713854848e-08 mm long + and its vector is (-2.032442125710077e-08,-9.703103387437295e-08,1.311070718656993e-08) mm + Endpoint of ComputeStep() was (399.6487945031609,-612.478151496612,341.2940916288181) + and current position to locate is (399.6487944828365,-612.478151593643,341.2940916419288) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000090397678e-07 mm long + and its vector is (6.112941264291294e-10,-7.268999979714863e-08,-6.867162483104039e-08) mm + Endpoint of ComputeStep() was (528.091391710312,-576.8998883785358,627.8465790939176) + and current position to locate is (528.0913917109233,-576.8998884512258,627.846579025246) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000097012052e-07 mm long + and its vector is (-2.69693032350915e-08,8.990741662273649e-08,3.448644747550134e-08) mm + Endpoint of ComputeStep() was (440.4088300291951,-536.5444976869339,875.0376083858787) + and current position to locate is (440.4088300022258,-536.5444975970265,875.0376084203651) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000111839748e-07 mm long + and its vector is (-8.946119578467915e-08,-3.386662683624309e-08,2.915044206019957e-08) mm + Endpoint of ComputeStep() was (483.5217912002352,-592.366681112076,770.0719259288184) + and current position to locate is (483.521791110774,-592.3666811459426,770.0719259579688) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000403385847e-07 mm long + and its vector is (-7.220864972623531e-08,6.21957276791818e-08,3.029208528460003e-08) mm + Endpoint of ComputeStep() was (-579.4004822873877,-26.36438970935052,1478.509813852069) + and current position to locate is (-579.4004823595964,-26.36438964715479,1478.509813882361) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997518159858e-08 mm long + and its vector is (5.045353645982686e-08,4.482052418097737e-08,-7.379401267826324e-08) mm + Endpoint of ComputeStep() was (798.0313600206714,-266.0392322069293,958.0201316617122) + and current position to locate is (798.0313600711249,-266.0392321621088,958.0201315879182) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999918837021e-08 mm long + and its vector is (3.194111286575207e-08,8.801225703791715e-08,-3.512275270622922e-08) mm + Endpoint of ComputeStep() was (503.8242529717485,-668.5251442797547,692.2649224290373) + and current position to locate is (503.8242530036896,-668.5251441917425,692.2649223939145) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000332356357e-07 mm long + and its vector is (7.928974810056388e-08,-6.292907528404612e-09,-6.060975010768743e-08) mm + Endpoint of ComputeStep() was (563.5350241679618,-563.5350242409594,683.7130026892499) + and current position to locate is (563.5350242472515,-563.5350242472523,683.7130026286402) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999932311186e-08 mm long + and its vector is (5.719550699723186e-08,5.936169600317953e-08,-5.661149771185592e-08) mm + Endpoint of ComputeStep() was (591.328460010241,-680.062047703459,807.3582278638345) + and current position to locate is (591.3284600674365,-680.0620476440973,807.358227807223) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998027489971e-08 mm long + and its vector is (-5.712468009733129e-08,5.311966333465534e-08,-6.257050699787214e-08) mm + Endpoint of ComputeStep() was (469.4764051324762,-506.5837376968248,673.117338568056) + and current position to locate is (469.4764050753515,-506.5837376437051,673.1173385054855) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000253122171e-07 mm long + and its vector is (3.309605745016597e-08,-8.662345862830989e-08,-3.743036813830258e-08) mm + Endpoint of ComputeStep() was (982.9697638064536,-750.9096882713479,970.853563461509) + and current position to locate is (982.9697638395496,-750.9096883579714,970.8535634240786) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000164671379e-07 mm long + and its vector is (7.131154688977404e-08,-6.909431249368936e-09,-6.976335953368107e-08) mm + Endpoint of ComputeStep() was (1009.774171952798,-762.9043075974822,917.5179435501982) + and current position to locate is (1009.774172024109,-762.9043076043916,917.5179434804348) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000338622248e-07 mm long + and its vector is (8.279823759949068e-08,-5.332788077794248e-08,1.733769749989733e-08) mm + Endpoint of ComputeStep() was (907.1406900044402,-879.7765620558374,857.3820000655311) + and current position to locate is (907.1406900872385,-879.7765621091653,857.3820000828688) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999577281949e-08 mm long + and its vector is (-5.881838660570793e-08,4.92730123369256e-09,8.072242962953169e-08) mm + Endpoint of ComputeStep() was (961.0447222194313,-786.6430072120745,764.6777840361979) + and current position to locate is (961.0447221606129,-786.6430072071472,764.6777841169203) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999511657352e-08 mm long + and its vector is (-8.538097517885035e-08,-5.012213932786835e-08,-1.406624505762011e-08) mm + Endpoint of ComputeStep() was (1012.32030284789,-847.0144292998741,694.6847116504472) + and current position to locate is (1012.320302762509,-847.0144293499962,694.6847116363809) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000834810771e-07 mm long + and its vector is (-5.595256880042143e-08,7.000562618486583e-08,4.436822109710192e-08) mm + Endpoint of ComputeStep() was (1075.903260378185,-667.6375016063939,999.9999999556318) + and current position to locate is (1075.903260322232,-667.6375015363883,1000) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000287768751e-07 mm long + and its vector is (5.481274456542451e-08,-6.70275994707481e-08,5.002868874726119e-08) mm + Endpoint of ComputeStep() was (635.4459540754639,-674.0905531882805,999.9999999499713) + and current position to locate is (635.4459541302766,-674.0905532553081,1000) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000413032932e-07 mm long + and its vector is (6.104153271735413e-08,-7.103483312675962e-08,-3.50427171724732e-08) mm + Endpoint of ComputeStep() was (765.264617381585,-612.1846659329336,853.3688234727288) + and current position to locate is (765.2646174426266,-612.1846660039685,853.368823437686) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999804687711e-08 mm long + and its vector is (-5.669562597176991e-10,-4.16190459873178e-09,9.991174465540098e-08) mm + Endpoint of ComputeStep() was (581.6076126153298,-507.1354702313944,809.7994885691152) + and current position to locate is (581.6076126147628,-507.1354702355563,809.7994886690269) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997961141026e-08 mm long + and its vector is (5.861255658601294e-08,4.698244993051048e-08,-6.600919277843786e-08) mm + Endpoint of ComputeStep() was (500.1232006813904,-642.467761457247,692.7938672787471) + and current position to locate is (500.123200740003,-642.4677614102645,692.793867212738) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999801836198e-08 mm long + and its vector is (-4.635899131244514e-08,-7.732273843430448e-08,4.326705038693035e-08) mm + Endpoint of ComputeStep() was (800.539892385971,-462.1919222619872,944.875683177945) + and current position to locate is (800.539892339612,-462.1919223393099,944.8756832212121) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995816718242e-08 mm long + and its vector is (8.841732324071927e-08,4.457808699953603e-08,-1.397006599290762e-08) mm + Endpoint of ComputeStep() was (737.8237381989064,-422.038068493052,1035.41884078257) + and current position to locate is (737.8237382873237,-422.0380684484739,1035.4188407686) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000416736664e-07 mm long + and its vector is (-3.143486537737772e-08,-4.82808104607102e-08,-8.173628884833306e-08) mm + Endpoint of ComputeStep() was (475.900641865791,-475.9006417860759,1087.001296668187) + and current position to locate is (475.9006418343562,-475.9006418343567,1087.001296586451) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000272953821e-07 mm long + and its vector is (5.727451934944838e-08,-3.021432348759845e-08,-7.620189990120707e-08) mm + Endpoint of ComputeStep() was (532.253170383092,-570.1811664039096,894.8813363963808) + and current position to locate is (532.2531704403665,-570.181166434124,894.8813363201789) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000480712432e-07 mm long + and its vector is (6.821392162237316e-08,-5.047695594839752e-08,5.290507942845579e-08) mm + Endpoint of ComputeStep() was (852.303619204608,-376.8733294590354,849.3383881565251) + and current position to locate is (852.3036192728219,-376.8733295095124,849.3383882094301) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000206182913e-07 mm long + and its vector is (2.802232756948797e-08,9.044913440447999e-08,3.215131982869934e-08) mm + Endpoint of ComputeStep() was (960.2769042478767,-632.7466058611129,1150.329642730172) + and current position to locate is (960.276904275899,-632.7466057706638,1150.329642762323) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999792578884e-08 mm long + and its vector is (7.518059419453493e-08,4.602554781740764e-09,6.577761268999893e-08) mm + Endpoint of ComputeStep() was (460.9931945354953,-460.9931946152791,851.178392418796) + and current position to locate is (460.9931946106759,-460.9931946106765,851.1783924845736) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000207071486e-07 mm long + and its vector is (-3.291927441750886e-08,-8.224742487072945e-08,-4.638627615349833e-08) mm + Endpoint of ComputeStep() was (770.7988168019065,-628.9377861969876,1048.784989899703) + and current position to locate is (770.7988167689872,-628.9377862792351,1048.784989853317) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000054090268e-07 mm long + and its vector is (9.431232683709823e-09,4.914716100756777e-08,-8.657718808535719e-08) mm + Endpoint of ComputeStep() was (575.845363466199,-833.3879636402925,709.3382808327744) + and current position to locate is (575.8453634756303,-833.3879635911453,709.3382807461973) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000738315058e-07 mm long + and its vector is (8.815493401925778e-08,-1.851799424912315e-08,4.342587089922745e-08) mm + Endpoint of ComputeStep() was (682.1094832481509,-393.9478457582639,1078.634951063451) + and current position to locate is (682.1094833363059,-393.9478457767819,1078.634951106877) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000098101443e-07 mm long + and its vector is (-4.023183919343865e-08,-2.087438133457908e-08,8.913843885238748e-08) mm + Endpoint of ComputeStep() was (717.830846283116,-986.3580970050157,1019.296792513204) + and current position to locate is (717.8308462428841,-986.3580970258901,1019.296792602342) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000412618696e-07 mm long + and its vector is (-2.342642346775392e-08,-1.365776824968634e-08,9.625318853068165e-08) mm + Endpoint of ComputeStep() was (874.4714153148366,-880.6532762951614,672.2686772553359) + and current position to locate is (874.4714152914102,-880.6532763088192,672.2686773515891) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000231279438e-07 mm long + and its vector is (9.213408702635206e-09,9.938605671777623e-08,6.126128937467001e-09) mm + Endpoint of ComputeStep() was (734.720202105001,-850.3612154082359,786.263144190784) + and current position to locate is (734.7202021142144,-850.3612153088499,786.2631441969102) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000015200502e-07 mm long + and its vector is (4.58607019027113e-08,-8.205859103327384e-08,3.41054828822962e-08) mm + Endpoint of ComputeStep() was (812.0993129661414,-896.9887509063008,721.1855930918123) + and current position to locate is (812.0993130120021,-896.9887509883594,721.1855931259178) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993661982698e-08 mm long + and its vector is (5.798790425615152e-08,6.783716344216373e-08,4.511662154982332e-08) mm + Endpoint of ComputeStep() was (772.3045883414788,-844.4188216019345,633.0299527380614) + and current position to locate is (772.3045883994668,-844.4188215340973,633.029952783178) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000429089277e-07 mm long + and its vector is (-8.783786142885219e-08,3.679349447338609e-08,-3.050831764994655e-08) mm + Endpoint of ComputeStep() was (437.4513240729988,-876.9471701352149,1133.162004370087) + and current position to locate is (437.451323985161,-876.9471700984215,1133.162004339579) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000613503928e-07 mm long + and its vector is (2.912611307692714e-08,-8.232575510191964e-08,4.872526915278286e-08) mm + Endpoint of ComputeStep() was (716.9363377541254,-821.5917536308319,986.4272184194513) + and current position to locate is (716.9363377832515,-821.5917537131577,986.4272184681765) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993034462388e-08 mm long + and its vector is (1.844352937041549e-08,7.721610018052161e-10,9.828136171563528e-08) mm + Endpoint of ComputeStep() was (662.6384296066489,-839.4757973194571,1193.091118778004) + and current position to locate is (662.6384296250924,-839.475797318685,1193.091118876285) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998425562634e-08 mm long + and its vector is (3.553475380613236e-08,9.306018000643235e-08,8.77957972988952e-09) mm + Endpoint of ComputeStep() was (592.2216763077006,-771.7983150501182,1159.358800235342) + and current position to locate is (592.2216763432353,-771.798314957058,1159.358800244121) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996509863549e-08 mm long + and its vector is (-1.951161721081007e-08,4.289051958039636e-08,8.820256880426314e-08) mm + Endpoint of ComputeStep() was (607.0415027276524,-856.7383579969641,1076.070945096392) + and current position to locate is (607.0415027081408,-856.7383579540735,1076.070945184594) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999992780911964e-08 mm long + and its vector is (-3.392131020518718e-08,-9.307564141636249e-08,-1.36475364342914e-08) mm + Endpoint of ComputeStep() was (566.8135072336886,-762.379464514871,1020.924459066998) + and current position to locate is (566.8135071997673,-762.3794646079466,1020.924459053351) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000957780752e-07 mm long + and its vector is (-1.060038812283892e-08,-9.703626346890815e-08,-2.171668711525854e-08) mm + Endpoint of ComputeStep() was (572.9352711226069,-1086.774732527033,1373.366505054424) + and current position to locate is (572.9352711120065,-1086.774732624069,1373.366505032708) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999991949194148e-08 mm long + and its vector is (-3.239847501390614e-08,4.827415978070349e-08,8.136294127325527e-08) mm + Endpoint of ComputeStep() was (558.3989803778886,-980.4560294962549,1235.16851251917) + and current position to locate is (558.3989803454901,-980.4560294479808,1235.168512600533) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000187117696e-07 mm long + and its vector is (-8.099209480860736e-08,5.837841854372527e-08,-5.678430170519277e-09) mm + Endpoint of ComputeStep() was (565.3325700305329,-1035.760148622827,1157.592773697893) + and current position to locate is (565.3325699495408,-1035.760148564448,1157.592773692215) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000085028759e-07 mm long + and its vector is (-4.188109414826613e-09,9.283985491492786e-08,-3.692184691317379e-08) mm + Endpoint of ComputeStep() was (523.9696287601541,-627.1890677624334,1258.613117810378) + and current position to locate is (523.969628755966,-627.1890676695936,1258.613117773456) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000430555583e-07 mm long + and its vector is (-8.974791398941306e-08,-2.825004230544437e-09,4.401522346597631e-08) mm + Endpoint of ComputeStep() was (827.144901898898,-646.7853673418077,900.8081992803625) + and current position to locate is (827.14490180915,-646.7853673446327,900.8081993243777) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994198028372e-08 mm long + and its vector is (-4.889420779363718e-08,7.835899396013701e-08,-3.83303131457069e-08) mm + Endpoint of ComputeStep() was (832.0377568325093,-554.7190021744559,760.290953282675) + and current position to locate is (832.0377567836151,-554.7190020960969,760.2909532443447) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000006287792e-07 mm long + and its vector is (-1.516775682830485e-08,8.053683586695115e-08,5.7304077927256e-08) mm + Endpoint of ComputeStep() was (745.1996342552312,-482.244618556943,1017.043783867801) + and current position to locate is (745.1996342400635,-482.2446184764061,1017.043783925105) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000206672113e-07 mm long + and its vector is (-6.091624982218491e-08,7.426967840729048e-08,-2.780700469884323e-08) mm + Endpoint of ComputeStep() was (551.4277543033879,-592.3553175972133,788.4578843491936) + and current position to locate is (551.4277542424717,-592.3553175229437,788.4578843213866) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000035866446e-07 mm long + and its vector is (-3.306956841697684e-08,-6.501215921161929e-08,-6.84092356095789e-08) mm + Endpoint of ComputeStep() was (572.1022205480958,-553.8456941742191,919.2977257986772) + and current position to locate is (572.1022205150263,-553.8456942392313,919.297725730268) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996945975282e-08 mm long + and its vector is (5.322942797647556e-08,6.589402801182587e-09,-8.439906196144875e-08) mm + Endpoint of ComputeStep() was (767.2219118287236,-573.8422707773652,777.3150863252807) + and current position to locate is (767.221911881953,-573.8422707707758,777.3150862408817) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000125328607e-07 mm long + and its vector is (7.52316964280908e-08,8.233996595663484e-09,-6.536356522701681e-08) mm + Endpoint of ComputeStep() was (752.4322731336511,-658.6696245042428,1042.461026423631) + and current position to locate is (752.4322732088827,-658.6696244960089,1042.461026358267) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000436748449e-07 mm long + and its vector is (2.375804797338787e-08,9.713482995721279e-08,-6.234586180653423e-10) mm + Endpoint of ComputeStep() was (524.5946547810501,-714.1288369415389,875.1014630107459) + and current position to locate is (524.5946548048081,-714.1288368444041,875.1014630101224) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000038649779e-07 mm long + and its vector is (4.082676241523586e-08,6.750940428901231e-08,-6.14463715464808e-08) mm + Endpoint of ComputeStep() was (635.012445928969,-609.2283591115195,1008.081602415448) + and current position to locate is (635.0124459697957,-609.2283590440101,1008.081602354001) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995339454204e-08 mm long + and its vector is (9.670122835814254e-08,-2.464980752847623e-08,6.422624210244976e-09) mm + Endpoint of ComputeStep() was (869.5459389160254,-382.6092784128648,628.2896951607859) + and current position to locate is (869.5459390127266,-382.6092784375146,628.2896951672085) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998138278881e-08 mm long + and its vector is (5.321305707184365e-08,-8.413326213485561e-08,-9.484779184276704e-09) mm + Endpoint of ComputeStep() was (661.0249598322896,-723.4956822861001,1016.095897610563) + and current position to locate is (661.0249598855027,-723.4956823702333,1016.095897601079) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000121013697e-07 mm long + and its vector is (1.543969574413495e-08,-5.938250069448259e-08,7.896414899732918e-08) mm + Endpoint of ComputeStep() was (736.0251240316444,-857.4188105410582,1025.574078256807) + and current position to locate is (736.0251240470841,-857.4188106004407,1025.574078335771) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994373739729e-08 mm long + and its vector is (-5.753577170253266e-08,-1.075545696949121e-08,-8.107986104732845e-08) mm + Endpoint of ComputeStep() was (571.5795313564852,-752.2218412595967,1162.322603192106) + and current position to locate is (571.5795312989494,-752.2218412703521,1162.322603111026) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999256549666e-08 mm long + and its vector is (8.889617220120272e-08,-2.301987933606142e-08,-3.959235073125456e-08) mm + Endpoint of ComputeStep() was (858.5507793680165,-734.7044025049136,1087.062917633943) + and current position to locate is (858.5507794569127,-734.7044025279334,1087.062917594351) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000052608451e-07 mm long + and its vector is (-9.387247246195329e-08,2.242063601443078e-08,2.617775862745475e-08) mm + Endpoint of ComputeStep() was (625.1002974503116,-874.9942314743136,1131.96160213438) + and current position to locate is (625.1002973564391,-874.9942314518929,1131.961602160558) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000249438633e-07 mm long + and its vector is (2.806496013363358e-08,-9.432949354959419e-08,-1.772878022165969e-08) mm + Endpoint of ComputeStep() was (791.5320660530647,-763.8566542364017,1113.971027117125) + and current position to locate is (791.5320660811296,-763.8566543307312,1113.971027099396) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997607687641e-08 mm long + and its vector is (-5.092147148388904e-09,9.855352800514083e-08,-1.616376721358392e-08) mm + Endpoint of ComputeStep() was (615.6153134120317,-850.5984869881527,1027.268013495724) + and current position to locate is (615.6153134069395,-850.5984868895991,1027.26801347956) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999718704545e-08 mm long + and its vector is (-7.020264547463739e-08,5.476408659887966e-08,-4.552452992356848e-08) mm + Endpoint of ComputeStep() was (510.6350045515603,-859.7975879778309,1099.824717311283) + and current position to locate is (510.6350044813577,-859.7975879230668,1099.824717265758) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997912574851e-08 mm long + and its vector is (5.012384463043418e-08,-1.641092239879072e-08,-8.496044756611809e-08) mm + Endpoint of ComputeStep() was (680.3256386059745,-822.359934460618,1000.00000008496) + and current position to locate is (680.3256386560984,-822.3599344770289,1000) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999995325549e-08 mm long + and its vector is (-8.396204975724686e-08,4.233970685163513e-08,-3.402533366170246e-08) mm + Endpoint of ComputeStep() was (383.2875739847602,-1030.230966200794,1118.909762567654) + and current position to locate is (383.2875739007982,-1030.230966158455,1118.909762533629) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000301326108e-07 mm long + and its vector is (5.623928700515535e-08,-7.469907359336503e-09,8.234894721681485e-08) mm + Endpoint of ComputeStep() was (435.389617089366,-1092.410867984633,772.3266511461309) + and current position to locate is (435.3896171456053,-1092.410867992103,772.3266512284798) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997617736596e-08 mm long + and its vector is (8.31544184620725e-08,7.187964001786895e-09,5.507877176569309e-08) mm + Endpoint of ComputeStep() was (586.9573759331262,-1142.077080720362,999.9999999449212) + and current position to locate is (586.9573760162806,-1142.077080713174,1000) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 10313 (kaon-,2.4404101811852[GeV]) at (342.07048655061,-364.6748993707,531.93612216478) Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[11,41] 2.0883351226075e-10 [GeV] -Cell[11,40] 0.0036695056636419 [GeV] -Cell[10,38] 6.3586599135306e-06 [GeV] -Cell[11,39] 0.010186536514237 [GeV] -Cell[10,39] 0.000972166461445 [GeV] -Cell[12,39] 0.00072615891792361 [GeV] -### Total energy deposition in calorimeter by a source track in 6 cells : 0.015560726425994 (GeV) +Cell[13,40] 0.014795631370103 [GeV] +Cell[12,41] 0.076969913814126 [GeV] +Cell[12,45] 4.2880038952262e-06 [GeV] +Cell[12,44] 0.00053051393605832 [GeV] +Cell[11,40] 0.00063618664820547 [GeV] +Cell[16,39] 0.001024301883827 [GeV] +Cell[13,45] 3.0299214586194e-09 [GeV] +Cell[15,40] 0.040603897828368 [GeV] +Cell[15,39] 0.010574011265485 [GeV] +Cell[12,43] 0.0002503471106513 [GeV] +Cell[12,42] 0.0036501291169988 [GeV] +Cell[15,38] 6.2862903791938e-07 [GeV] +Cell[13,44] 0.0010077692044962 [GeV] +Cell[13,43] 0.032025637433619 [GeV] +Cell[12,40] 0.00060010537814276 [GeV] +Cell[14,45] 0.00012281343744746 [GeV] +Cell[14,39] 0.055821664472763 [GeV] +Cell[14,41] 0.076816788377574 [GeV] +Cell[14,40] 0.0033144793026264 [GeV] +Cell[13,42] 0.25722651930087 [GeV] +Cell[14,43] 0.029155116643592 [GeV] +Cell[16,40] 0.0011172144306632 [GeV] +Cell[16,41] 3.0152822932337e-05 [GeV] +Cell[13,38] 1.369029421403e-05 [GeV] +Cell[17,24] 1.1341017852828e-08 [GeV] +Cell[13,41] 0.41820336833031 [GeV] +Cell[14,42] 0.3030599021345 [GeV] +Cell[12,39] 0.0001142491520643 [GeV] +Cell[15,42] 0.0081319763111711 [GeV] +Cell[13,39] 4.9524983890706e-05 [GeV] +Cell[14,44] 0.0044922152585751 [GeV] +Cell[15,41] 0.11210740888114 [GeV] +Cell[17,23] 0.00087552622535748 [GeV] +Cell[16,23] 0.00065251568908809 [GeV] +Cell[17,22] 2.7723472761409e-05 [GeV] +Cell[15,44] 3.2572250809608e-05 [GeV] +Cell[15,43] 0.00086520596126149 [GeV] +Cell[16,44] 4.4136693099972e-07 [GeV] +Cell[15,45] 8.6122221546248e-08 [GeV] +### Total energy deposition in calorimeter by a source track in 39 cells : 1.4549045312167 (GeV) -Source track ID 5637 (neutron,0.94710952117252[GeV]) at (14.499106911335,499.78973168601,-239.30967822705) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995772649954e-08 mm long + and its vector is (-3.87547203217764e-08,-7.711150828981772e-08,5.051612106399261e-08) mm + Endpoint of ComputeStep() was (112.990012304272,531.8251110884496,411.5949268783988) + and current position to locate is (112.9900122655172,531.8251110113381,411.594926928915) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000335945544e-07 mm long + and its vector is (-9.726022653921973e-08,-5.325091478880495e-09,2.262959242216311e-08) mm + Endpoint of ComputeStep() was (996.4863347665021,-661.6260427199429,1108.599634781329) + and current position to locate is (996.4863346692418,-661.626042725268,1108.599634803959) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000048306466e-07 mm long + and its vector is (-4.265530151315033e-09,3.709260454343166e-08,9.276823220716324e-08) mm + Endpoint of ComputeStep() was (1025.027377771365,-600.3673700912316,1007.965487931656) + and current position to locate is (1025.0273777671,-600.367370054139,1007.965488024424) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999646791529e-08 mm long + and its vector is (6.197615221026354e-08,-7.838900728529552e-08,-3.757577360374853e-09) mm + Endpoint of ComputeStep() was (1168.433186268441,-696.3547321040285,1168.896350408949) + and current position to locate is (1168.433186330417,-696.3547321824175,1168.896350405191) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997657008297e-08 mm long + and its vector is (4.5760771172354e-08,7.167398052843055e-08,-5.261927071842365e-08) mm + Endpoint of ComputeStep() was (941.538722686152,-543.5976350934015,1123.218635428459) + and current position to locate is (941.5387227319128,-543.5976350217276,1123.21863537584) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995386803854e-08 mm long + and its vector is (-9.273958312405739e-08,2.639194462972227e-08,2.651086106197909e-08) mm + Endpoint of ComputeStep() was (944.071600985715,-524.5272275249979,1207.147521545295) + and current position to locate is (944.0716008929754,-524.527227498606,1207.147521571806) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999743861479e-08 mm long + and its vector is (-7.073890628817026e-08,6.212513881109771e-08,3.37115579895908e-08) mm + Endpoint of ComputeStep() was (1031.812295939406,-188.364487793337,1061.359444606887) + and current position to locate is (1031.812295868667,-188.3644877312119,1061.359444640598) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993608390408e-08 mm long + and its vector is (2.473257154633757e-08,-8.367237569473218e-08,4.885919224761892e-08) mm + Endpoint of ComputeStep() was (891.4919957164975,-554.7450057787677,1374.48327413438) + and current position to locate is (891.4919957412301,-554.7450058624401,1374.483274183239) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998770387138e-08 mm long + and its vector is (7.12161636329256e-08,-7.008770808170084e-08,-3.996092345914803e-09) mm + Endpoint of ComputeStep() was (806.6516737216272,-641.5296582092725,1258.057213110471) + and current position to locate is (806.6516737928433,-641.5296582793602,1258.057213106475) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000210023486e-07 mm long + and its vector is (-4.512423856795067e-08,2.397837306489237e-08,-8.595839062763844e-08) mm + Endpoint of ComputeStep() was (887.8824339648804,-557.3283915056817,1197.932360498521) + and current position to locate is (887.8824339197562,-557.3283914817033,1197.932360412562) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000931784687e-07 mm long + and its vector is (5.038305062043946e-08,2.181866420869483e-08,8.35793798614759e-08) mm + Endpoint of ComputeStep() was (1148.819020031914,-646.3657303631206,1269.428445427341) + and current position to locate is (1148.819020082297,-646.365730341302,1269.42844551092) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999989414994733e-08 mm long + and its vector is (5.111382961331401e-08,8.591428013460245e-08,-2.468141246936284e-09) mm + Endpoint of ComputeStep() was (1034.29539281663,-643.1565883263004,1219.815188412315) + and current position to locate is (1034.295392867744,-643.1565882403861,1219.815188409847) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000001027352389e-07 mm long + and its vector is (-7.377093425020576e-08,6.576021860382752e-08,1.527951098978519e-08) mm + Endpoint of ComputeStep() was (1119.427127117028,-650.2218860858434,1229.540700660192) + and current position to locate is (1119.427127043257,-650.2218860200832,1229.540700675471) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999910707386e-08 mm long + and its vector is (2.958859113277867e-08,-3.966397343901917e-08,-8.689812602824531e-08) mm + Endpoint of ComputeStep() was (1009.734924971408,-639.3678113865324,1286.090556304041) + and current position to locate is (1009.734925000997,-639.3678114261963,1286.090556217143) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000263768887e-07 mm long + and its vector is (9.625568964111153e-08,-2.331557880097535e-08,1.382863956678193e-08) mm + Endpoint of ComputeStep() was (1077.881318575858,-636.0441030835021,1231.466436067308) + and current position to locate is (1077.881318672113,-636.0441031068177,1231.466436081137) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995981406414e-08 mm long + and its vector is (-3.43800365953939e-08,9.303522574555245e-08,-1.274565875064582e-08) mm + Endpoint of ComputeStep() was (1373.907292123954,-467.8396473257052,1182.628078015719) + and current position to locate is (1373.907292089574,-467.83964723267,1182.628078002974) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995242279824e-08 mm long + and its vector is (-1.549892658658791e-08,5.24044025951298e-08,8.374695426027756e-08) mm + Endpoint of ComputeStep() was (1345.615201548729,-578.285090721303,1165.496878982636) + and current position to locate is (1345.61520153323,-578.2850906688986,1165.496879066383) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000590324144e-07 mm long + and its vector is (6.796244633733295e-08,2.775959728751332e-08,-6.790082807128783e-08) mm + Endpoint of ComputeStep() was (1366.756285927336,-895.7456426786578,1356.588525701338) + and current position to locate is (1366.756285995298,-895.7456426508982,1356.588525633437) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997157022723e-08 mm long + and its vector is (-8.737197276786901e-08,3.682180249597877e-08,-3.17850208375603e-08) mm + Endpoint of ComputeStep() was (1333.502911578039,-670.6524218269606,1277.75898688813) + and current position to locate is (1333.502911490667,-670.6524217901388,1277.758986856345) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994698414759e-08 mm long + and its vector is (-7.572180038550869e-08,-4.749961135530612e-08,-4.483285920287017e-08) mm + Endpoint of ComputeStep() was (1222.967499278024,-708.0923981746286,1243.000643271575) + and current position to locate is (1222.967499202302,-708.0923982221282,1243.000643226742) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000050134664e-07 mm long + and its vector is (-9.471068551647477e-08,2.379351826675702e-09,-3.200352693966124e-08) mm + Endpoint of ComputeStep() was (1359.317165239763,-634.2372147272956,1248.846936161666) + and current position to locate is (1359.317165145052,-634.2372147249163,1248.846936129663) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000508736392e-07 mm long + and its vector is (-1.172566044260748e-08,-8.154836450557923e-08,5.667789082508534e-08) mm + Endpoint of ComputeStep() was (1518.615276311726,-944.9376752383323,1376.029976126056) + and current position to locate is (1518.6152763,-944.9376753198807,1376.029976182733) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994792429055e-08 mm long + and its vector is (5.900642463529948e-08,-8.034601250983542e-08,7.921471478766762e-09) mm + Endpoint of ComputeStep() was (1254.762819896773,-619.6996815004031,1369.738616819238) + and current position to locate is (1254.76281995578,-619.6996815807491,1369.738616827159) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 10311 (kaon0L,0.85324689363199[GeV]) at (443.61976117133,-230.65451978727,564.59737040268) Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[8,11] 0.0037467773402001 [GeV] -Cell[8,12] 0.00066711970313587 [GeV] -Cell[1,30] 0.00049902057616816 [GeV] -Cell[9,41] 0.0013756876181962 [GeV] -### Total energy deposition in calorimeter by a source track in 4 cells : 0.0062886052377002 (GeV) +Cell[13,30] 0.00015322258066226 [GeV] +Cell[12,45] 0.00071449465185265 [GeV] +Cell[12,44] 0.0046600218681533 [GeV] +Cell[11,40] 0.017231454800242 [GeV] +Cell[12,23] 7.9862626399859e-05 [GeV] +Cell[13,45] 0.00072025166391168 [GeV] +Cell[11,13] 0.00046831142683163 [GeV] +Cell[12,46] 4.9817117425846e-05 [GeV] +Cell[11,45] 0.0010899425040813 [GeV] +Cell[11,43] 0.0024726431821087 [GeV] +Cell[12,43] 0.031044552072283 [GeV] +Cell[11,44] 0.00091443560278657 [GeV] +Cell[12,42] 0.024295964325774 [GeV] +Cell[11,42] 0.029601636250661 [GeV] +Cell[13,44] 0.030667943633507 [GeV] +Cell[13,43] 7.8498833172489e-06 [GeV] +Cell[11,41] 0.067080765766452 [GeV] +Cell[13,47] 0.00096915050284796 [GeV] +Cell[15,42] 0.0031827589212033 [GeV] +Cell[15,44] 0.025112011059456 [GeV] +Cell[15,43] 0.0041709785179196 [GeV] +Cell[16,44] 0.056822571606466 [GeV] +Cell[15,45] 0.0037495975378625 [GeV] +Cell[13,3] 1.5835708705708e-05 [GeV] +Cell[13,2] 1.5091675129952e-05 [GeV] +Cell[14,46] 1.5361841302365e-05 [GeV] +Cell[16,20] 0.00036553814046522 [GeV] +Cell[17,20] 1.9463845958967e-05 [GeV] +Cell[11,12] 8.5799541352571e-08 [GeV] +Cell[12,10] 1.5495215166084e-08 [GeV] +Cell[16,43] 0.025343695225464 [GeV] +Cell[15,46] 5.4279201530335e-05 [GeV] +Cell[16,42] 2.9380616182834e-05 [GeV] +Cell[17,43] 0.00077523195428284 [GeV] +Cell[16,45] 0.0022532920050198 [GeV] +Cell[17,44] 7.5120948395124e-09 [GeV] +### Total energy deposition in calorimeter by a source track in 36 cells : 0.3341475171231 (GeV) -Source track ID 5639 (neutron,0.9452809336191[GeV]) at (-443.33040738267,231.21018552372,-66.165778546451) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993727771064e-08 mm long + and its vector is (3.723101826835773e-08,-5.843946837558178e-08,7.210178409877699e-08) mm + Endpoint of ComputeStep() was (275.011600314221,-940.621400757071,752.0784401683554) + and current position to locate is (275.011600351452,-940.6214008155105,752.0784402404572) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998413180773e-08 mm long + and its vector is (-6.258926532609621e-08,-7.754783837299328e-08,8.301412890432402e-09) mm + Endpoint of ComputeStep() was (305.5736970727874,-737.7201635489596,796.7316059695514) + and current position to locate is (305.5736970101981,-737.7201636265074,796.7316059778528) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998557844606e-08 mm long + and its vector is (-7.385069977772218e-08,-6.56796146358829e-08,-1.524006165709579e-08) mm + Endpoint of ComputeStep() was (74.3226164301788,-726.2066844931655,726.6287730900963) + and current position to locate is (74.3226163563281,-726.2066845588452,726.6287730748562) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000054764977e-07 mm long + and its vector is (8.722784627934743e-08,-4.370019723864971e-08,-2.194531134591671e-08) mm + Endpoint of ComputeStep() was (199.978892400677,-618.4726691659513,772.6640070228265) + and current position to locate is (199.9788924879048,-618.4726692096515,772.6640070008812) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998357993923e-08 mm long + and its vector is (-6.389615236912505e-08,2.681792921066517e-08,-7.209769137261901e-08) mm + Endpoint of ComputeStep() was (405.5749146468625,-882.7628031883894,798.1835681288894) + and current position to locate is (405.5749145829663,-882.7628031615715,798.1835680567917) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999296041081e-08 mm long + and its vector is (1.762123247317504e-08,7.775452104397118e-08,-6.036327704350697e-08) mm + Endpoint of ComputeStep() was (472.9105968121928,-682.0964503002059,978.6503037621947) + and current position to locate is (472.910596829814,-682.0964502224514,978.6503037018314) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000071778724e-07 mm long + and its vector is (6.970472554712615e-08,-9.218410923494957e-09,-7.110747901606373e-08) mm + Endpoint of ComputeStep() was (207.2980567193506,-1045.83592995773,974.3439559929917) + and current position to locate is (207.2980567890554,-1045.835929966949,974.3439559218842) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999022902224e-08 mm long + and its vector is (-4.877020387539233e-08,-2.681377964108833e-08,8.308120413857978e-08) mm + Endpoint of ComputeStep() was (-204.8756374266808,-510.4174498796599,678.32465232673) + and current position to locate is (-204.875637475451,-510.4174499064737,678.3246524098112) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000268450252e-07 mm long + and its vector is (7.788818834342237e-08,-1.909529601107351e-08,5.973947736492846e-08) mm + Endpoint of ComputeStep() was (216.0286744256699,-806.2299891199431,871.9765216153932) + and current position to locate is (216.0286745035581,-806.2299891390384,871.9765216751326) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000189212789e-07 mm long + and its vector is (-9.981761195376748e-08,2.364686224609613e-09,-5.554852577915881e-09) mm + Endpoint of ComputeStep() was (374.7456185663199,-773.1522281242768,890.184628816452) + and current position to locate is (374.7456184665023,-773.1522281219121,890.1846288108972) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999367569994e-08 mm long + and its vector is (6.932563678674342e-08,1.094679191737669e-08,7.123287559807068e-08) mm + Endpoint of ComputeStep() was (197.3972271549791,-844.3185590770453,787.244424790421) + and current position to locate is (197.3972272243048,-844.3185590660985,787.2444248616539) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997857039031e-08 mm long + and its vector is (1.839424612626317e-08,-8.091615200100932e-08,-5.580523065873422e-08) mm + Endpoint of ComputeStep() was (465.5427237713171,-746.9102778680337,800.0000000558052) + and current position to locate is (465.5427237897114,-746.9102779489499,800) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996242199439e-08 mm long + and its vector is (1.963837803486967e-08,-7.914763955341186e-08,-5.787899226561422e-08) mm + Endpoint of ComputeStep() was (545.4585966670672,-775.2674132385589,782.7898760333675) + and current position to locate is (545.4585966867056,-775.2674133177065,782.7898759754885) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999417274747e-08 mm long + and its vector is (-7.580160854558926e-08,-6.483094239229104e-08,7.145899871829897e-09) mm + Endpoint of ComputeStep() was (373.1515532522188,-646.3174489599639,773.9159357466273) + and current position to locate is (373.1515531764172,-646.3174490247949,773.9159357537732) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996738940958e-08 mm long + and its vector is (9.04991566130775e-08,-4.18619947595289e-08,7.5808657129528e-09) mm + Endpoint of ComputeStep() was (352.2563278921179,-860.7063839220325,827.2730771598866) + and current position to locate is (352.2563279826171,-860.7063839638945,827.2730771674675) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993400154015e-08 mm long + and its vector is (6.111531547503546e-08,-4.24631707574008e-08,6.679658781649778e-08) mm + Endpoint of ComputeStep() was (410.9123686371076,-854.2321403705461,911.6129513455187) + and current position to locate is (410.912368698223,-854.2321404130092,911.6129514123153) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000097975467e-07 mm long + and its vector is (2.150815703316766e-08,-9.721668448037235e-08,9.290715752285905e-09) mm + Endpoint of ComputeStep() was (239.1371292552911,-898.7287873582934,842.2415673229254) + and current position to locate is (239.1371292767993,-898.7287874555101,842.2415673322162) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000072205037e-07 mm long + and its vector is (-9.985393489841954e-08,3.989384822489228e-09,3.643890522653237e-09) mm + Endpoint of ComputeStep() was (314.8794047772175,-949.1316876585682,1103.232697494683) + and current position to locate is (314.8794046773636,-949.1316876545789,1103.232697498327) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000300047896e-07 mm long + and its vector is (-3.901507739101362e-08,-6.285506515268935e-08,-6.728350854245946e-08) mm + Endpoint of ComputeStep() was (119.4589559206321,-722.5199019578525,813.1192875170198) + and current position to locate is (119.458955881617,-722.5199020207076,813.1192874497362) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994704631946e-08 mm long + and its vector is (-8.024954922802863e-09,-5.326910468284041e-09,-9.953498647519154e-08) mm + Endpoint of ComputeStep() was (254.8753689414134,-951.8984449155075,639.4899031471325) + and current position to locate is (254.8753689333884,-951.8984449208344,639.4899030475975) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994028156151e-08 mm long + and its vector is (-3.27187024140585e-08,7.444259608746506e-08,-5.820459136884892e-08) mm + Endpoint of ComputeStep() was (254.1056866775436,-737.4485067613584,721.3287051647112) + and current position to locate is (254.1056866448249,-737.4485066869158,721.3287051065066) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999132866767e-08 mm long + and its vector is (-3.913476120942505e-08,-7.688765890634386e-08,-5.056438112660544e-08) mm + Endpoint of ComputeStep() was (364.5530779100741,-699.987670217719,936.0310163570715) + and current position to locate is (364.5530778709393,-699.9876702946067,936.0310163065071) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997794849515e-08 mm long + and its vector is (-5.887856957542681e-08,6.587993084394839e-08,4.683101906266529e-08) mm + Endpoint of ComputeStep() was (-60.73047212915442,-863.1204962697381,1366.786377564312) + and current position to locate is (-60.73047218803299,-863.1204962038581,1366.786377611144) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999182129658e-08 mm long + and its vector is (3.038215368178498e-08,-7.900166565377731e-08,5.325091478880495e-08) mm + Endpoint of ComputeStep() was (84.26158669192918,-775.4353518382542,1240.496650288271) + and current position to locate is (84.26158672231134,-775.4353519172558,1240.496650341522) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.9999977421378e-08 mm long + and its vector is (5.91835913610339e-10,-8.548227015126031e-09,9.963218872144353e-08) mm + Endpoint of ComputeStep() was (-14.82361850300104,-829.3884075308673,1089.074783163224) + and current position to locate is (-14.8236185024092,-829.3884075394155,1089.074783262856) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998696884376e-08 mm long + and its vector is (-5.378865353122819e-09,-7.912024102552095e-08,-6.091840987210162e-08) mm + Endpoint of ComputeStep() was (25.7861508420773,-849.6087771972371,1248.909950163706) + and current position to locate is (25.78615083669843,-849.6087772763574,1248.909950102787) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000663502602e-07 mm long + and its vector is (-1.955203288162011e-08,8.885353963705711e-08,-4.150638233113568e-08) mm + Endpoint of ComputeStep() was (213.6134204421722,-976.918270270832,1632.862132916525) + and current position to locate is (213.6134204226201,-976.9182701819784,1632.862132875018) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000046453395e-07 mm long + and its vector is (2.612716798466863e-08,-1.10746896098135e-08,-9.588916327629704e-08) mm + Endpoint of ComputeStep() was (167.2609814259291,-851.6648506832,1188.278406225437) + and current position to locate is (167.2609814520563,-851.6648506942747,1188.278406129548) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996750301795e-08 mm long + and its vector is (1.577974018118766e-08,-5.742992925661383e-08,-8.032930054469034e-08) mm + Endpoint of ComputeStep() was (61.15655352509792,-877.8723573835603,1146.978902789342) + and current position to locate is (61.15655354087766,-877.8723574409902,1146.978902709013) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000545584725e-07 mm long + and its vector is (4.028512989862065e-08,-1.710884589556372e-08,-8.991332833829802e-08) mm + Endpoint of ComputeStep() was (-117.4551826938726,581.3911102348884,1127.666307614434) + and current position to locate is (-117.4551826535875,581.3911102177796,1127.66630752452) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000006962552e-07 mm long + and its vector is (3.861453024001094e-08,-7.741930119209428e-08,-5.015147053200053e-08) mm + Endpoint of ComputeStep() was (512.1923284594244,51.74166056956712,1003.67796499725) + and current position to locate is (512.1923284980389,51.74166049214782,1003.677964947099) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999605938599e-08 mm long + and its vector is (1.855960363172926e-08,6.267134722293122e-08,7.568246473965701e-08) mm + Endpoint of ComputeStep() was (-178.0065540556836,572.9866199554828,1672.415220668795) + and current position to locate is (-178.006554037124,572.9866200181541,1672.415220744477) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000054974478e-07 mm long + and its vector is (9.216023499902803e-10,-6.762934390280861e-08,-7.365747478615958e-08) mm + Endpoint of ComputeStep() was (232.0230864989336,-683.7439212412401,768.1010225927108) + and current position to locate is (232.0230864998552,-683.7439213088694,768.1010225190533) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000217393793e-07 mm long + and its vector is (9.746690921019763e-08,-1.78771415448864e-08,-1.34392621475854e-08) mm + Endpoint of ComputeStep() was (414.3922289571901,-653.3458306250192,715.5660318298801) + and current position to locate is (414.392229054657,-653.3458306428963,715.5660318164408) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000123084879e-07 mm long + and its vector is (-6.429945642594248e-08,7.576784355478594e-08,-1.117211922974093e-08) mm + Endpoint of ComputeStep() was (176.3247837772403,-875.4513978942937,798.5181722372816) + and current position to locate is (176.3247837129408,-875.4513978185258,798.5181722261095) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993621349141e-08 mm long + and its vector is (1.296906759762351e-08,4.103139872313477e-08,-9.026746283780085e-08) mm + Endpoint of ComputeStep() was (78.71862628912915,-695.5597587053107,770.9972498175608) + and current position to locate is (78.71862630209822,-695.5597586642793,770.9972497272934) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000518662555e-07 mm long + and its vector is (-7.646724498044932e-08,-6.371465133270249e-08,-9.65474100667052e-09) mm + Endpoint of ComputeStep() was (529.0097227809796,-592.7253653788756,850.4448876228652) + and current position to locate is (529.0097227045123,-592.7253654425903,850.4448876132104) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998763490195e-08 mm long + and its vector is (9.565422942614532e-08,2.888560857172706e-08,3.985917373938719e-09) mm + Endpoint of ComputeStep() was (370.0876815837712,-472.2659292140729,403.7893297572312) + and current position to locate is (370.0876816794254,-472.2659291851873,403.7893297612171) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997245715251e-08 mm long + and its vector is (-1.082167955246405e-08,9.897252084556385e-08,-9.344830687041394e-09) mm + Endpoint of ComputeStep() was (451.2147771444724,-403.5626916088624,517.5511222714294) + and current position to locate is (451.2147771336507,-403.5626915098899,517.5511222620846) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996905794002e-08 mm long + and its vector is (1.082304379451671e-08,-9.885275176202413e-08,-1.053513187798671e-08) mm + Endpoint of ComputeStep() was (-420.0261938876508,271.2526433253204,1870.199008764908) + and current position to locate is (-420.0261938768278,271.2526432264677,1870.199008754373) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000338989955e-07 mm long + and its vector is (-8.521794825355755e-08,-4.384799012768781e-08,-2.855279035429703e-08) mm + Endpoint of ComputeStep() was (726.6055295428616,-348.5860213856881,167.6958942273063) + and current position to locate is (726.6055294576437,-348.5860214295361,167.6958941987535) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998692542081e-08 mm long + and its vector is (9.024029168358538e-08,-4.094133032594982e-08,-1.343482836091425e-08) mm + Endpoint of ComputeStep() was (-474.1671602490046,-158.6363899424821,658.4557613195897) + and current position to locate is (-474.1671601587643,-158.6363899834234,658.4557613061548) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997429559422e-08 mm long + and its vector is (-7.339917829085607e-08,6.688651410513557e-08,1.177920694317436e-08) mm + Endpoint of ComputeStep() was (255.438075692038,-1011.005667282729,1007.832976548323) + and current position to locate is (255.4380756186388,-1011.005667215842,1007.832976560102) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998656069793e-08 mm long + and its vector is (8.400132855967968e-08,-1.269734184461413e-08,5.274989689496579e-08) mm + Endpoint of ComputeStep() was (249.1629916291748,-957.4390835693494,900.4358233323159) + and current position to locate is (249.1629917131761,-957.4390835820467,900.4358233850658) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000167943356e-07 mm long + and its vector is (-5.072620012924745e-08,2.58939962805016e-08,8.219706160161877e-08) mm + Endpoint of ComputeStep() was (121.0361011411517,-919.3604626717158,955.973231259504) + and current position to locate is (121.0361010904255,-919.3604626458218,955.9732313417011) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999153924736e-08 mm long + and its vector is (4.422886945576465e-08,5.957440407655668e-08,6.704249244648963e-08) mm + Endpoint of ComputeStep() was (89.98558784824964,-881.192400166263,1082.263953551716) + and current position to locate is (89.98558789247851,-881.1924001066886,1082.263953618758) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999029981323e-08 mm long + and its vector is (5.438113248601439e-08,2.970386958622839e-08,7.848802852095105e-08) mm + Endpoint of ComputeStep() was (115.1199648482394,-920.7917150003848,917.8149384270542) + and current position to locate is (115.1199649026205,-920.7917149706809,917.8149385055423) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997826937405e-08 mm long + and its vector is (8.417276831096387e-08,4.805656317330431e-08,2.46070612774929e-08) mm + Endpoint of ComputeStep() was (186.807261904244,-1105.841632898965,1052.196407890932) + and current position to locate is (186.8072619884168,-1105.841632850908,1052.196407915539) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000670596842e-07 mm long + and its vector is (1.595711296431546e-08,-6.627419679716695e-08,-7.316498340514954e-08) mm + Endpoint of ComputeStep() was (170.3559569913332,-1134.616281715357,1043.326002674477) + and current position to locate is (170.3559570072903,-1134.616281781631,1043.326002601312) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993634150784e-08 mm long + and its vector is (1.041340880192365e-08,2.674175902939169e-08,-9.579366633261088e-08) mm + Endpoint of ComputeStep() was (40.30404140187957,-899.913400138356,1212.890720992824) + and current position to locate is (40.30404141229298,-899.9134001116142,1212.89072089703) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996763092378e-08 mm long + and its vector is (-3.180861085638753e-08,9.442680948268389e-08,8.472511581203435e-09) mm + Endpoint of ComputeStep() was (290.1449549682495,-921.4755998176691,819.6655904374022) + and current position to locate is (290.1449549364409,-921.4755997232423,819.6655904458747) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997766682455e-08 mm long + and its vector is (5.111172640681616e-08,5.45760485692881e-08,-6.640061656071339e-08) mm + Endpoint of ComputeStep() was (190.3492175378015,-994.0141277043161,966.0080773419938) + and current position to locate is (190.3492175889133,-994.0141276497401,966.0080772755932) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000068797344e-07 mm long + and its vector is (-6.402777330549725e-08,-4.641810846806038e-08,-6.120308171375655e-08) mm + Endpoint of ComputeStep() was (179.5171424767069,-1056.791630510769,1126.883939683412) + and current position to locate is (179.5171424126791,-1056.791630557188,1126.883939622209) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997608865404e-08 mm long + and its vector is (7.198633511507069e-08,4.995001745555783e-08,4.819708010472823e-08) mm + Endpoint of ComputeStep() was (300.3555043733049,-946.7499623885267,1199.999999951803) + and current position to locate is (300.3555044452912,-946.7499623385767,1200) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995509835717e-08 mm long + and its vector is (-2.427469780741376e-08,-7.876360541558824e-08,-5.663059710059315e-08) mm + Endpoint of ComputeStep() was (467.2652916607087,-1151.699215774777,1076.386370780706) + and current position to locate is (467.265291636434,-1151.699215853541,1076.386370724076) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000627972835e-07 mm long + and its vector is (2.25058158775937e-08,-4.344315129856113e-08,8.721349331608508e-08) mm + Endpoint of ComputeStep() was (-115.1168669071519,-1040.371554776161,720.6500414846105) + and current position to locate is (-115.1168668846461,-1040.371554819604,720.650041571824) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000013719372e-07 mm long + and its vector is (-9.043588988788542e-09,-8.334575340995798e-08,-5.451329343486577e-08) mm + Endpoint of ComputeStep() was (168.9107425683513,-1017.988483628619,1025.989654625621) + and current position to locate is (168.9107425593077,-1017.988483711964,1025.989654571108) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000511835895e-07 mm long + and its vector is (6.858186907265917e-08,-1.962871465366334e-08,7.008031843724893e-08) mm + Endpoint of ComputeStep() was (281.0351315182225,-1027.894001182057,914.0392606456817) + and current position to locate is (281.0351315868044,-1027.894001201686,914.039260715762) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000247942317e-07 mm long + and its vector is (8.67911751356587e-08,-4.563526090350933e-08,1.961427642527269e-08) mm + Endpoint of ComputeStep() was (149.1818299863827,-1039.348248413955,1000.630744735626) + and current position to locate is (149.1818300731739,-1039.34824845959,1000.63074475524) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000402904013e-07 mm long + and its vector is (7.511067678933614e-08,-3.08704102280899e-08,-5.835590854985639e-08) mm + Endpoint of ComputeStep() was (268.1457033385296,-1000.733388940131,1110.67886484884) + and current position to locate is (268.1457034136403,-1000.733388971001,1110.678864790484) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000021945306e-07 mm long + and its vector is (-4.743620252156688e-08,-8.592951417085715e-08,1.912928837555228e-08) mm + Endpoint of ComputeStep() was (223.0403802651861,-974.809206267971,811.7125105038421) + and current position to locate is (223.0403802177499,-974.8092063539005,811.7125105229713) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000180979476e-07 mm long + and its vector is (7.751813768663851e-08,-5.410242920333985e-09,-6.294180820987094e-08) mm + Endpoint of ComputeStep() was (176.1081886102936,-914.4796723647828,1314.586043788181) + and current position to locate is (176.1081886878117,-914.479672370193,1314.586043725239) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999766986191e-08 mm long + and its vector is (8.360905212612124e-08,-4.036758127767825e-08,-3.714808372023981e-08) mm + Endpoint of ComputeStep() was (415.4526359699384,-989.3688810287041,1138.199235976044) + and current position to locate is (415.4526360535475,-989.3688810690717,1138.199235938896) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997586494768e-08 mm long + and its vector is (2.30530474709667e-08,8.630536285636481e-08,4.494370386964874e-08) mm + Endpoint of ComputeStep() was (116.4205983256561,-1029.06917363604,918.9051157224882) + and current position to locate is (116.4205983487091,-1029.069173549735,918.9051157674319) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000320261429e-07 mm long + and its vector is (5.637195954477647e-08,-6.542677510879003e-09,-8.23371237856918e-08) mm + Endpoint of ComputeStep() was (189.5006063211819,-763.2510387831003,766.8121119874689) + and current position to locate is (189.5006063775539,-763.251038789643,766.8121119051318) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000001022474129e-07 mm long + and its vector is (-3.109238377874135e-08,-9.497648534306791e-08,3.570903572835959e-09) mm + Endpoint of ComputeStep() was (131.7668538934267,-1041.699330913363,1063.021960873571) + and current position to locate is (131.7668538623343,-1041.699331008339,1063.021960877142) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000264244031e-07 mm long + and its vector is (9.795547839530627e-08,1.994237663893728e-08,2.651631803018972e-09) mm + Endpoint of ComputeStep() was (293.3226236278675,-753.1020760840742,863.2845455195162) + and current position to locate is (293.322623725823,-753.1020760641318,863.2845455221678) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998124823889e-08 mm long + and its vector is (8.676789065020785e-08,-3.782588464673609e-08,-3.225727596145589e-08) mm + Endpoint of ComputeStep() was (58.35996781743807,-1028.34532821831,1026.452886987862) + and current position to locate is (58.35996790420596,-1028.345328256136,1026.452886955605) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995696031005e-08 mm long + and its vector is (-6.107242711550498e-08,6.98823896527756e-08,3.723710051417584e-08) mm + Endpoint of ComputeStep() was (95.2557629336423,-1032.166515564579,904.5564068861298) + and current position to locate is (95.25576287256987,-1032.166515494696,904.5564069233669) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995450113996e-08 mm long + and its vector is (-6.536548369240336e-08,-7.091261977620889e-08,-2.643378138600383e-08) mm + Endpoint of ComputeStep() was (97.16040310730939,-1049.675781422993,1107.18452695644) + and current position to locate is (97.16040304194391,-1049.675781493905,1107.184526930006) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000001794183e-07 mm long + and its vector is (-9.659981969889486e-08,-1.576609065523371e-08,2.04915977519704e-08) mm + Endpoint of ComputeStep() was (163.6861971589328,-1090.977220392565,1093.738611981501) + and current position to locate is (163.686197062333,-1090.977220408331,1093.738612001993) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000229838052e-07 mm long + and its vector is (-3.281419935774466e-08,-3.743684828805272e-08,-8.672782314533833e-08) mm + Endpoint of ComputeStep() was (224.8327897559098,-961.8512170315647,1007.73498655224) + and current position to locate is (224.8327897230956,-961.8512170690016,1007.734986465512) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999501590629e-08 mm long + and its vector is (-2.437951707179309e-08,-1.335797605861444e-08,9.60583292908268e-08) mm + Endpoint of ComputeStep() was (325.813248221843,-1092.56934053572,972.7049167222358) + and current position to locate is (325.8132481974635,-1092.569340549078,972.7049168182941) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000336444801e-07 mm long + and its vector is (6.351737624754605e-08,-4.12856024922803e-08,-6.527670848299749e-08) mm + Endpoint of ComputeStep() was (247.0213984459242,-917.3224234709927,1081.041906249244) + and current position to locate is (247.0213985094416,-917.3224235122783,1081.041906183967) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995012588458e-08 mm long + and its vector is (-3.026150352525292e-08,-7.922494660306256e-08,-5.29871613252908e-08) mm + Endpoint of ComputeStep() was (475.6028471293853,-936.1099997772062,1067.5763030211) + and current position to locate is (475.6028470991238,-936.1099998564312,1067.576302968113) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999915735093e-08 mm long + and its vector is (-2.506055807316443e-08,-9.555321867082966e-08,1.554190021124668e-08) mm + Endpoint of ComputeStep() was (527.5441635079135,-999.2983315227764,1101.457784790552) + and current position to locate is (527.5441634828529,-999.2983316183296,1101.457784806094) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999987682210924e-08 mm long + and its vector is (-4.800870101462351e-08,-6.463687896030024e-08,-5.930610313953366e-08) mm + Endpoint of ComputeStep() was (460.0248057272619,-1215.885347392008,1036.390442738354) + and current position to locate is (460.0248056792532,-1215.885347456645,1036.390442679048) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000665068267e-07 mm long + and its vector is (1.476155375712551e-08,-9.031737135956064e-08,4.030982836411567e-08) mm + Endpoint of ComputeStep() was (465.1296290624624,-1131.122151642107,905.5932897092533) + and current position to locate is (465.129629077224,-1131.122151732425,905.5932897495632) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994163262532e-08 mm long + and its vector is (-2.49376057581685e-08,7.019684744591359e-08,-6.671211849607062e-08) mm + Endpoint of ComputeStep() was (333.1353117805859,-1331.049685877182,862.1352795504456) + and current position to locate is (333.1353117556483,-1331.049685806986,862.1352794837335) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000614173427e-07 mm long + and its vector is (-6.15625594946323e-08,-4.837829692405649e-08,-6.220614068297436e-08) mm + Endpoint of ComputeStep() was (238.7365480329005,-1065.956058732609,959.3067990414974) + and current position to locate is (238.7365479713379,-1065.956058780987,959.3067989792912) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995572558517e-08 mm long + and its vector is (4.118361829341666e-08,-1.283569872612134e-08,9.021721325552789e-08) mm + Endpoint of ComputeStep() was (51.26836534166124,-1178.485910401198,1001.380027442224) + and current position to locate is (51.26836538284486,-1178.485910414034,1001.380027532441) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000115207692e-07 mm long + and its vector is (-9.422301161521318e-08,-1.94738731806865e-08,2.725425929384073e-08) mm + Endpoint of ComputeStep() was (125.2583802852558,-1200.759574995053,975.9716923055436) + and current position to locate is (125.2583801910328,-1200.759575014527,975.9716923327978) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994053518865e-08 mm long + and its vector is (5.857913265572279e-08,6.36032382317353e-08,-5.023048288421705e-08) mm + Endpoint of ComputeStep() was (185.71816196456,-1034.537136635829,1119.538072774952) + and current position to locate is (185.7181620231391,-1034.537136572226,1119.538072724722) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997246514966e-08 mm long + and its vector is (-6.392787099684938e-08,3.746390575543046e-08,6.715413292113226e-08) mm + Endpoint of ComputeStep() was (481.401121820556,-1310.615177391904,1189.345198473276) + and current position to locate is (481.4011217566281,-1310.61517735444,1189.345198540431) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999605994422e-08 mm long + and its vector is (9.984849338077651e-08,3.476316123851575e-09,-4.26530277763959e-09) mm + Endpoint of ComputeStep() was (-9.984913819830921e-08,-933.249691621248,964.7324565887292) + and current position to locate is (-6.448175327022909e-13,-933.2496916177716,964.7324565844639) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997887101884e-08 mm long + and its vector is (-1.426559492756496e-08,5.761467036791146e-08,8.04800492915092e-08) mm + Endpoint of ComputeStep() was (171.3730257935587,-1187.699998388527,1235.220854617914) + and current position to locate is (171.3730257792931,-1187.699998330912,1235.220854698394) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000196472454e-07 mm long + and its vector is (2.627684736467018e-08,9.094878805626649e-08,3.221566657884978e-08) mm + Endpoint of ComputeStep() was (30.10234718286097,-1229.631590727958,922.4172455937439) + and current position to locate is (30.10234720913782,-1229.631590637009,922.4172456259596) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000693083336e-07 mm long + and its vector is (-3.669453008114942e-08,6.884079084557015e-08,-6.256573215068784e-08) mm + Endpoint of ComputeStep() was (450.2349844666007,-1036.430633924962,1174.437102951907) + and current position to locate is (450.2349844299062,-1036.430633856122,1174.437102889341) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995410683858e-08 mm long + and its vector is (8.160640163623611e-08,-3.023319550266024e-08,4.925789198750863e-08) mm + Endpoint of ComputeStep() was (431.3158395445391,-1222.357161942484,805.8185132751511) + and current position to locate is (431.3158396261455,-1222.357161972717,805.818513324409) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000047972644e-07 mm long + and its vector is (2.61546233559784e-08,-8.052847988437861e-08,5.320816853782162e-08) mm + Endpoint of ComputeStep() was (311.7597004631833,-1106.935358985573,1256.04196763137) + and current position to locate is (311.7597004893379,-1106.935359066101,1256.041967684579) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000188571815e-07 mm long + and its vector is (-5.620408671802579e-08,1.594867171661463e-08,8.115875971270725e-08) mm + Endpoint of ComputeStep() was (84.74235406235275,-1077.824452940338,1187.485199315083) + and current position to locate is (84.74235400614866,-1077.824452924389,1187.485199396241) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996697368656e-08 mm long + and its vector is (5.712922757084016e-08,-6.754157766408753e-08,4.663024810724892e-08) mm + Endpoint of ComputeStep() was (646.6695689159981,-975.9370956039188,1632.069294405286) + and current position to locate is (646.6695689731273,-975.9370956714604,1632.069294451916) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000317102958e-07 mm long + and its vector is (7.099267840260381e-09,-3.862123776343651e-08,9.196742212225217e-08) mm + Endpoint of ComputeStep() was (5.734327416079727,-880.360266155287,930.5916197807906) + and current position to locate is (5.734327423178994,-880.3602661939083,930.591619872758) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000268197625e-07 mm long + and its vector is (8.628425973711273e-08,-4.917058049613843e-08,-1.171690655610291e-08) mm + Endpoint of ComputeStep() was (107.0875363090395,-722.1026654692308,609.8472746548008) + and current position to locate is (107.0875363953237,-722.1026655184014,609.8472746430839) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999536912313e-08 mm long + and its vector is (3.522701774727466e-08,8.909614734875504e-08,2.865192527679028e-08) mm + Endpoint of ComputeStep() was (115.3005589525003,-1124.102211232334,1019.78410926983) + and current position to locate is (115.3005589877274,-1124.102211143238,1019.784109298481) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000052896066e-07 mm long + and its vector is (-2.081426941913378e-08,-9.556833902024664e-08,-2.081969796563499e-08) mm + Endpoint of ComputeStep() was (252.1859073960316,-1224.29664211225,1008.566360690673) + and current position to locate is (252.1859073752174,-1224.296642207818,1008.566360669853) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000666138431e-07 mm long + and its vector is (1.81527184395236e-08,-8.990468813863117e-08,-3.984519025834743e-08) mm + Endpoint of ComputeStep() was (293.3198700031991,-1399.594031710266,1095.986749465769) + and current position to locate is (293.3198700213518,-1399.594031800171,1095.986749425924) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999836270336e-08 mm long + and its vector is (-4.816138243768364e-08,8.520157734892564e-08,2.052240688499296e-08) mm + Endpoint of ComputeStep() was (311.6770272974123,-950.1881028759436,963.9700036024394) + and current position to locate is (311.6770272492509,-950.1881027907421,963.9700036229618) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993761097415e-08 mm long + and its vector is (4.476459025681834e-08,7.907055987743661e-08,4.176081347395666e-08) mm + Endpoint of ComputeStep() was (244.3748996846972,-1090.24087161991,1066.562393732492) + and current position to locate is (244.3748997294618,-1090.240871540839,1066.562393774253) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993212812932e-08 mm long + and its vector is (-2.528810405522108e-08,6.848722478025593e-08,-6.833738552813884e-08) mm + Endpoint of ComputeStep() was (-12.26908904304294,-1179.936214214588,915.9345024908368) + and current position to locate is (-12.26908906833105,-1179.936214146101,915.9345024224995) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996249323008e-08 mm long + and its vector is (8.771870874113574e-08,4.10641405323986e-08,2.488286554580554e-08) mm + Endpoint of ComputeStep() was (-12.63205386657196,-966.459817525203,1081.81784138522) + and current position to locate is (-12.63205377885325,-966.4598174841389,1081.817841410103) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996750642294e-08 mm long + and its vector is (8.163602593924679e-08,-3.454761099419557e-08,4.628191163646989e-08) mm + Endpoint of ComputeStep() was (11.40205045461574,-1046.313946864371,842.1304776813392) + and current position to locate is (11.40205053625176,-1046.313946898919,842.1304777276212) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999969025236e-08 mm long + and its vector is (-9.632600495024235e-08,-1.563989826536272e-08,2.183332981076092e-08) mm + Endpoint of ComputeStep() was (-114.6402478867952,-1011.96248561682,944.9619849160169) + and current position to locate is (-114.6402479831212,-1011.962485632459,944.9619849378503) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000522411533e-07 mm long + and its vector is (-4.045192270041298e-08,-2.719707481446676e-08,-8.731535672268365e-08) mm + Endpoint of ComputeStep() was (124.2217125556226,-1088.651117647453,1049.38716916292) + and current position to locate is (124.2217125151707,-1088.65111767465,1049.387169075605) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999989844803152e-08 mm long + and its vector is (-2.883811589526886e-08,-9.43684881349327e-08,-1.621515366423409e-08) mm + Endpoint of ComputeStep() was (-83.72590046369676,-1096.808995851012,1298.619167789611) + and current position to locate is (-83.72590049253488,-1096.808995945381,1298.619167773396) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995706173261e-08 mm long + and its vector is (8.451183930446859e-08,-4.545745468931273e-08,-2.813112587318756e-08) mm + Endpoint of ComputeStep() was (573.8134913865697,-1333.375136448449,1094.548664724185) + and current position to locate is (573.8134914710815,-1333.375136493907,1094.548664696054) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000522372749e-07 mm long + and its vector is (8.657315220261808e-08,4.99635461892467e-08,2.956994649139233e-09) mm + Endpoint of ComputeStep() was (445.2116401906504,-1474.349183234551,1063.193859026089) + and current position to locate is (445.2116402772236,-1474.349183184588,1063.193859029046) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000331486687e-07 mm long + and its vector is (3.041526497327141e-08,-3.810328053077683e-08,-8.731012712814845e-08) mm + Endpoint of ComputeStep() was (504.0042258885715,-1342.260169578037,1098.700461855999) + and current position to locate is (504.0042259189868,-1342.26016961614,1098.700461768689) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999780303653e-08 mm long + and its vector is (7.187520623119781e-08,5.765059540863149e-08,3.886339072778355e-08) mm + Endpoint of ComputeStep() was (416.2816098936043,-1473.439193807827,1137.110607647313) + and current position to locate is (416.2816099654795,-1473.439193750176,1137.110607686177) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999274143991e-08 mm long + and its vector is (1.376531599817099e-08,9.806444722926244e-08,-1.392356807627948e-08) mm + Endpoint of ComputeStep() was (590.6501945692643,-1101.649829961905,953.2111427209456) + and current position to locate is (590.6501945830296,-1101.649829863841,953.2111427070221) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000038547555e-07 mm long + and its vector is (-5.62863533559721e-08,4.45427303930046e-08,-6.962613952055108e-08) mm + Endpoint of ComputeStep() was (549.6146942595662,-1374.162904476123,1117.042019936342) + and current position to locate is (549.6146942032799,-1374.16290443158,1117.042019866716) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995864588512e-08 mm long + and its vector is (1.86390991530061e-08,9.325526661996264e-08,-3.091975031566108e-08) mm + Endpoint of ComputeStep() was (149.7165499648176,-1137.210100373125,955.1124217474196) + and current position to locate is (149.7165499834567,-1137.21010027987,955.1124217164999) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993167509715e-08 mm long + and its vector is (-7.699506454628136e-08,-3.320280939078657e-08,5.449146556202322e-08) mm + Endpoint of ComputeStep() was (176.6826620481056,-964.8146314011242,1096.059346570498) + and current position to locate is (176.6826619711105,-964.814631434327,1096.05934662499) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999501720442e-08 mm long + and its vector is (-1.849982567136976e-08,3.735544851224404e-08,-9.08972879187786e-08) mm + Endpoint of ComputeStep() was (46.90287000516685,-1149.043132729516,964.0526977379128) + and current position to locate is (46.90286998666703,-1149.04313269216,964.0526976470155) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000310586812e-07 mm long + and its vector is (-9.791000366021763e-08,1.716580300126225e-08,-1.090745627152501e-08) mm + Endpoint of ComputeStep() was (329.4937812663956,-1290.703785101025,727.8592271656075) + and current position to locate is (329.4937811684856,-1290.703785083859,727.8592271547001) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000041831193e-07 mm long + and its vector is (-1.59648152475711e-08,7.366338650172111e-08,6.571781341335736e-08) mm + Endpoint of ComputeStep() was (212.3629420196779,-1262.260662878113,968.9980245586363) + and current position to locate is (212.362942003713,-1262.260662804449,968.9980246243541) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000045768217e-07 mm long + and its vector is (-5.590658247456304e-08,7.673361324123107e-08,3.140712578897364e-08) mm + Endpoint of ComputeStep() was (273.8946324369791,-1065.35521330509,960.0777885060888) + and current position to locate is (273.8946323810725,-1065.355213228357,960.077788537496) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 10292 (pi+,4.2123171483475[GeV]) at (194.28353813874,-460.71021999549,515.78871237163) Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[9,18] 0.00060116658105847 [GeV] -Cell[9,19] 0.0050169096764616 [GeV] -Cell[9,20] 1.7169831931824e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.0056352460894519 (GeV) +Cell[12,38] 0.12672772780815 [GeV] +Cell[13,35] 0.0037665393271685 [GeV] +Cell[14,35] 0.011213207446342 [GeV] +Cell[13,32] 1.0679798720048e-08 [GeV] +Cell[14,32] 9.8700607486535e-06 [GeV] +Cell[14,0] 0.00070510338433257 [GeV] +Cell[13,40] 0.00010728227906748 [GeV] +Cell[12,41] 0.0031004721912108 [GeV] +Cell[14,1] 2.1281372601152e-06 [GeV] +Cell[16,35] 0.00093942596890838 [GeV] +Cell[16,36] 0.011584838316982 [GeV] +Cell[16,37] 0.016576286232883 [GeV] +Cell[16,38] 0.0013887021902757 [GeV] +Cell[16,39] 7.5398349963507e-10 [GeV] +Cell[18,11] 4.12606781465e-05 [GeV] +Cell[10,44] 0.00013933941365713 [GeV] +Cell[10,43] 0.0013706547068675 [GeV] +Cell[15,40] 0.42879851536013 [GeV] +Cell[15,39] 0.0047435994356498 [GeV] +Cell[14,37] 0.66528819613943 [GeV] +Cell[13,36] 0.0016899574923239 [GeV] +Cell[13,34] 0.00084524755207337 [GeV] +Cell[13,33] 0.00039403257295339 [GeV] +Cell[14,34] 1.4597520930693e-08 [GeV] +Cell[12,37] 0.0044827368699114 [GeV] +Cell[14,33] 6.8009454777894e-05 [GeV] +Cell[13,37] 0.0062819309976843 [GeV] +Cell[11,44] 2.3834537500193e-05 [GeV] +Cell[12,42] 2.8602641202724e-07 [GeV] +Cell[11,42] 2.2701431473251e-05 [GeV] +Cell[15,37] 0.32780442238703 [GeV] +Cell[15,38] 0.031970626672867 [GeV] +Cell[11,41] 0.0072062586545925 [GeV] +Cell[12,40] 0.0054517717320866 [GeV] +Cell[14,39] 0.20542386699881 [GeV] +Cell[14,41] 0.00043215810182858 [GeV] +Cell[14,40] 0.11748081383542 [GeV] +Cell[14,38] 0.41663800399075 [GeV] +Cell[15,36] 0.11115396838517 [GeV] +Cell[17,37] 0.0005121864179473 [GeV] +Cell[16,40] 5.5363613646477e-06 [GeV] +Cell[17,38] 3.2722262840252e-06 [GeV] +Cell[13,38] 0.3370737822845 [GeV] +Cell[15,35] 0.00090742458927355 [GeV] +Cell[12,39] 0.086883101641054 [GeV] +Cell[13,39] 0.15777620679884 [GeV] +Cell[15,41] 8.3416898269206e-07 [GeV] +Cell[14,36] 0.016940599752238 [GeV] +Cell[18,37] 2.2305193851935e-09 [GeV] +Cell[17,14] 0.0026276549415568 [GeV] +Cell[17,15] 0.00096807244320303 [GeV] +Cell[15,13] 7.2353537532535e-05 [GeV] +Cell[15,0] 1.3969838619232e-12 [GeV] +Cell[17,13] 1.8185978758993e-05 [GeV] +Cell[18,13] 1.8471984139978e-07 [GeV] +Cell[18,14] 4.3364707380533e-12 [GeV] +Cell[19,37] 0.0040680281462006 [GeV] +Cell[19,36] 3.2098614610732e-10 [GeV] +Cell[17,16] 2.9059829830658e-06 [GeV] +Cell[18,30] 2.0362333539197e-06 [GeV] +Cell[19,30] 3.0180863667624e-05 [GeV] +Cell[10,42] 0.00064678939509986 [GeV] +Cell[17,39] 0.015553744524561 [GeV] +Cell[18,40] 9.716272870719e-10 [GeV] +Cell[18,39] 0.0014789108437709 [GeV] +Cell[17,40] 0.0022379156465856 [GeV] +### Total energy deposition in calorimeter by a source track in 66 cells : 3.1416837138286 (GeV) -Source track ID 5641 (gamma,0.00072227990407049[GeV]) at (119.75686370172,-485.44648891132,27.475542037005) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[10,37] 0.00072227990407049 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00072227990407049 (GeV) -Source track ID 5642 (gamma,0.00015020027382029[GeV]) at (88.359615674533,-492.13065167479,0.074217662864434) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[9,37] 0.00015020027382029 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00015020027382029 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996366741865e-08 mm long + and its vector is (7.719904715486336e-08,-5.413164672063431e-08,-3.33176330968854e-08) mm + Endpoint of ComputeStep() was (520.133326880398,-771.3996145957864,-588.2979183173086) + and current position to locate is (520.1333269575971,-771.399614649918,-588.2979183506262) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 5595 (pi+,0.96808743846936[GeV]) at (-69.939447819996,-495.08430962679,1189.4461024038) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[7,11] 4.7798590327147e-05 [GeV] -Cell[14,17] 1.0154233375374e-05 [GeV] -Cell[16,32] 1.372945552032e-05 [GeV] -Cell[15,41] 4.8098800073149e-07 [GeV] -Cell[14,18] 0.0011574710011037 [GeV] -Cell[15,44] 0.0017001856507749 [GeV] -Cell[14,43] 4.0358354628552e-05 [GeV] -Cell[11,36] 5.4480028920807e-06 [GeV] -Cell[9,25] 0.00015660430097375 [GeV] -Cell[9,24] 0.0025371774253518 [GeV] -Cell[15,42] 0.0011928178158421 [GeV] -Cell[14,42] 0.0014557447658688 [GeV] -Cell[9,29] 3.0029683548491e-06 [GeV] -Cell[14,41] 0.0027611771612974 [GeV] -Cell[14,28] 9.955620043911e-08 [GeV] -Cell[14,34] 0.00067670409990717 [GeV] -Cell[15,33] 1.6227664016014e-05 [GeV] -Cell[5,1] 0.00022256568229557 [GeV] -Cell[13,46] 0.14032894961831 [GeV] -Cell[13,40] 6.0477103688754e-06 [GeV] -Cell[14,40] 0.00033098589622796 [GeV] -Cell[18,39] 2.182787284255e-11 [GeV] -Cell[18,40] 1.404195539908e-05 [GeV] -Cell[16,22] 1.3401139061898e-05 [GeV] -Cell[15,36] 8.3557097241282e-11 [GeV] -Cell[16,36] 3.9217816920086e-05 [GeV] -Cell[16,35] 0.0028303814782987 [GeV] -Cell[15,35] 0.0033078448567757 [GeV] -Cell[17,36] 0.0065100153234007 [GeV] -Cell[17,35] 0.11752521238011 [GeV] -Cell[18,35] 0.0056937125323973 [GeV] -Cell[18,36] 3.9281139834202e-09 [GeV] -Cell[17,34] 0.0011245064813542 [GeV] -Cell[17,7] 8.1736478705352e-09 [GeV] -Cell[15,34] 0.012504551747195 [GeV] -Cell[16,34] 0.42906482093853 [GeV] -Cell[9,30] 0.0005436132774887 [GeV] -Cell[18,9] 8.0243959382642e-06 [GeV] -Cell[18,10] 0.00058718440264249 [GeV] -Cell[17,10] 0.00031753600116497 [GeV] -Cell[17,11] 1.3161090745371e-06 [GeV] -Cell[18,11] 2.2608651306655e-10 [GeV] -Cell[15,43] 0.0035275757523149 [GeV] -Cell[15,45] 2.202930918429e-07 [GeV] -Cell[16,20] 3.1628686301929e-05 [GeV] -Cell[16,21] 1.6288690525244e-06 [GeV] -Cell[15,21] 2.2741565885553e-08 [GeV] -Cell[14,9] 0.00051786577272099 [GeV] -Cell[18,14] 2.1631040726788e-07 [GeV] -Cell[18,1] 0.0035316627828505 [GeV] -Cell[18,2] 0.0036144540304678 [GeV] -Cell[19,1] 0.0013727932311861 [GeV] -Cell[17,20] 0.0049510662076997 [GeV] -Cell[17,21] 0.0018224297279946 [GeV] -Cell[17,19] 0.00072835184667622 [GeV] -Cell[18,20] 0.0017855380432884 [GeV] -Cell[17,18] 5.158676370047e-05 [GeV] -Cell[18,18] 6.1978021054529e-05 [GeV] -Cell[18,19] 0.0019971057827537 [GeV] -Cell[16,42] 0.00048498435555126 [GeV] -Cell[16,43] 0.0058248180945317 [GeV] -Cell[16,44] 0.00085050440332384 [GeV] -Cell[17,5] 4.4476712118922e-06 [GeV] -Cell[17,6] 7.9226250261399e-07 [GeV] -Cell[19,3] 0.00066311913262859 [GeV] -Cell[14,19] 6.8311598733999e-06 [GeV] -Cell[17,33] 6.7850518333898e-06 [GeV] -Cell[18,34] 7.8013778090735e-07 [GeV] -Cell[19,35] 0.0076953924976432 [GeV] -Cell[19,36] 0.0029420854160979 [GeV] -### Total energy deposition in calorimeter by a source track in 70 cells : 0.77522578925673 (GeV) -Source track ID 5596 (kaon-,2.4403931272307[GeV]) at (342.17980675115,-364.57232458285,532.16251085153) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[12,44] 0.020839464315484 [GeV] -Cell[15,41] 0.0023226618510815 [GeV] -Cell[13,41] 0.23280370278877 [GeV] -Cell[13,39] 0.0050077939014847 [GeV] -Cell[15,44] 0.0040501978353837 [GeV] -Cell[14,43] 0.38092139752406 [GeV] -Cell[15,40] 0.0011871310694967 [GeV] -Cell[15,42] 0.01700306845883 [GeV] -Cell[14,42] 0.27416707991741 [GeV] -Cell[14,41] 0.042637210914038 [GeV] -Cell[14,46] 0.00025117306966035 [GeV] -Cell[11,43] 0.0014107069798943 [GeV] -Cell[12,45] 0.00075812980406101 [GeV] -Cell[13,45] 0.0016099561366736 [GeV] -Cell[13,44] 0.00098055703655996 [GeV] -Cell[12,46] 2.6539439886619e-08 [GeV] -Cell[13,43] 0.0099161279702829 [GeV] -Cell[11,46] 2.7684906171999e-08 [GeV] -Cell[12,43] 0.0070868373833133 [GeV] -Cell[13,46] 2.362782923683e-06 [GeV] -Cell[13,42] 0.28566027098673 [GeV] -Cell[13,38] 0.0045631644125512 [GeV] -Cell[13,40] 0.0057450272922369 [GeV] -Cell[14,40] 0.010922949277802 [GeV] -Cell[14,39] 0.0010233165293391 [GeV] -Cell[14,45] 6.5125586264685e-06 [GeV] -Cell[14,44] 0.0075494772050096 [GeV] -Cell[11,42] 0.0012696811351633 [GeV] -Cell[14,38] 0.00073332384855871 [GeV] -Cell[12,42] 0.035699858758639 [GeV] -Cell[12,41] 0.096058354509406 [GeV] -Cell[11,40] 0.00071414704533504 [GeV] -Cell[12,39] 0.00052695447902261 [GeV] -Cell[15,43] 0.14604078841728 [GeV] -Cell[16,43] 0.0020195520119437 [GeV] -Cell[12,38] 9.6769684284936e-07 [GeV] -Cell[12,40] 4.3196415144735e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 37 cells : 1.6015331565434 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999043117663e-08 mm long + and its vector is (6.954644504730823e-08,5.597996732831234e-08,-4.505034212343162e-08) mm + Endpoint of ComputeStep() was (450.7430161022613,-847.6875646897275,-668.9113882681144) + and current position to locate is (450.7430161718078,-847.6875646337476,-668.9113883131647) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 5594 (kaon0L,0.85324689363199[GeV]) at (443.61976117133,-230.65451978727,564.59737040268) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[12,44] 0.00022807115078183 [GeV] -Cell[13,30] 0.002017833516996 [GeV] -Cell[14,46] 5.0661058664673e-05 [GeV] -Cell[13,45] 0.011824977991906 [GeV] -Cell[13,44] 0.21760580392783 [GeV] -Cell[13,43] 0.4709806426966 [GeV] -Cell[12,43] 1.0157435469296e-05 [GeV] -Cell[13,42] 0.0053057788959294 [GeV] -Cell[14,45] 0.004411949480716 [GeV] -Cell[14,44] 6.0188707429916e-06 [GeV] -Cell[12,42] 1.9650906324387e-10 [GeV] -Cell[7,15] 0.0011967470484503 [GeV] -Cell[19,23] 0.00062153640679914 [GeV] -Cell[14,14] 0.00056255269491253 [GeV] -### Total energy deposition in calorimeter by a source track in 14 cells : 0.71482273137231 (GeV) -Source track ID 5587 (pi+,4.2124234299473[GeV]) at (194.27258226075,-460.71483998428,515.78112838622) -Original primary track ID 8 (unknown,11.672977589613[GeV]) -Cell[15,41] 0.00016450142603026 [GeV] -Cell[13,41] 0.00074835889940645 [GeV] -Cell[13,37] 0.051541982682603 [GeV] -Cell[13,39] 1.1972051220074 [GeV] -Cell[15,40] 0.0056801536118572 [GeV] -Cell[14,41] 0.0021420408250869 [GeV] -Cell[12,37] 0.00084201809131808 [GeV] -Cell[13,36] 0.00036107921000313 [GeV] -Cell[13,38] 2.0785126845922 [GeV] -Cell[13,40] 0.0068632458782168 [GeV] -Cell[14,40] 0.034983532454785 [GeV] -Cell[14,39] 0.28414584392903 [GeV] -Cell[16,40] 9.5195166522899e-09 [GeV] -Cell[15,39] 4.0479335439159e-12 [GeV] -Cell[17,42] 0.00066088063203532 [GeV] -Cell[14,38] 0.0056968530213475 [GeV] -Cell[12,39] 0.082684066492268 [GeV] -Cell[16,42] 0.004195844481701 [GeV] -Cell[12,38] 0.069307065040642 [GeV] -Cell[16,41] 0.00024932578057769 [GeV] -Cell[14,37] 0.023951143134996 [GeV] -Cell[11,38] 0.00065198262049316 [GeV] -### Total energy deposition in calorimeter by a source track in 22 cells : 3.8505877343355 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996712175516e-08 mm long + and its vector is (-3.250698910051142e-08,7.199798801593715e-08,-6.13154043094255e-08) mm + Endpoint of ComputeStep() was (362.7029843149926,-712.5953160911993,-559.8707930127946) + and current position to locate is (362.7029842824857,-712.5953160192013,-559.87079307411) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 4679 (kaon+,2.4812966442653[GeV]) at (286.69515902988,-409.64116710706,-438.96099582698) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996859290928e-08 mm long + and its vector is (-6.978683586567058e-08,-6.289610610110685e-08,3.426180228416342e-08) mm + Endpoint of ComputeStep() was (373.4628356303325,-686.5184845126415,-600.0000000342618) + and current position to locate is (373.4628355605457,-686.5184845755376,-600) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999707777492e-08 mm long + and its vector is (3.118930180789903e-08,-4.085495675099082e-08,8.577933385822689e-08) mm + Endpoint of ComputeStep() was (284.4938493393698,-528.9094160359027,-600.0000000857793) + and current position to locate is (284.4938493705591,-528.9094160767577,-600) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999974788035e-08 mm long + and its vector is (7.592620931973215e-08,-5.024617166782264e-08,-4.135858944209758e-08) mm + Endpoint of ComputeStep() was (368.5122018273366,-706.2472681427936,-592.5079166091198) + and current position to locate is (368.5122019032628,-706.2472681930398,-592.5079166504784) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998435747297e-08 mm long + and its vector is (-7.711651051067747e-08,1.552280082250945e-08,-6.174207101139473e-08) mm + Endpoint of ComputeStep() was (310.3666624060104,-749.2914055184095,-726.0477849036964) + and current position to locate is (310.3666623288939,-749.2914055028867,-726.0477849654385) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000037293494e-07 mm long + and its vector is (-1.529599558125483e-09,7.85082647780655e-08,-6.19202182861045e-08) mm + Endpoint of ComputeStep() was (506.6525701068198,-1025.620229839014,-565.6791367912608) + and current position to locate is (506.6525701052902,-1025.620229760506,-565.679136853181) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000057748603e-07 mm long + and its vector is (-6.065761226636823e-09,-5.490130661200965e-08,-8.336098744621268e-08) mm + Endpoint of ComputeStep() was (-312.9427009571396,-480.606513676473,-622.259135764933) + and current position to locate is (-312.9427009632053,-480.6065137313743,-622.259135848294) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996847618307e-08 mm long + and its vector is (5.999140739731956e-09,-9.899997621687362e-08,-1.276748662348837e-08) mm + Endpoint of ComputeStep() was (323.4648603135771,-646.0687448309001,-646.4634142579173) + and current position to locate is (323.4648603195762,-646.0687449299,-646.4634142706848) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000021054905e-07 mm long + and its vector is (-7.319584938159096e-08,-5.457218321680557e-08,-4.079515747434925e-08) mm + Endpoint of ComputeStep() was (339.9792974320223,-668.7069715627326,-573.9324714942476) + and current position to locate is (339.9792973588264,-668.7069716173048,-573.9324715350427) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996742124069e-08 mm long + and its vector is (-8.258226102952904e-08,4.363937478046864e-08,-3.571790330170188e-08) mm + Endpoint of ComputeStep() was (238.7912395486083,-705.4056211250773,-599.9999999642821) + and current position to locate is (238.7912394660261,-705.405621081438,-600) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996007797041e-08 mm long + and its vector is (-3.050934083148604e-08,-9.494146979704965e-08,7.435687621182296e-09) mm + Endpoint of ComputeStep() was (347.4220241166345,-642.0264301864761,-632.456740758578) + and current position to locate is (347.4220240861252,-642.0264302814176,-632.4567407511423) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000555214386e-07 mm long + and its vector is (9.250641141989036e-09,9.942186807165854e-08,-5.452420737128705e-09) mm + Endpoint of ComputeStep() was (77.64155139085112,-645.3462556058635,-867.4216979135414) + and current position to locate is (77.64155140010176,-645.3462555064416,-867.4216979189938) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996466132821e-08 mm long + and its vector is (-2.302670054632472e-08,9.48565457292716e-08,2.172555468860082e-08) mm + Endpoint of ComputeStep() was (350.2620549130348,-547.5550136818284,-758.8765798107095) + and current position to locate is (350.2620548900081,-547.5550135869719,-758.8765797889839) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000174066339e-07 mm long + and its vector is (-3.806462700595148e-09,-9.577433957019821e-08,2.85094756691251e-08) mm + Endpoint of ComputeStep() was (369.6283645768235,-686.8586986939234,-678.4982645975945) + and current position to locate is (369.6283645730171,-686.8586987896978,-678.498264569085) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000070317224e-07 mm long + and its vector is (8.972756404546089e-08,-2.809406396409031e-08,-3.405421011848375e-08) mm + Endpoint of ComputeStep() was (306.5467937509329,-596.8162727290253,-834.0505496814196) + and current position to locate is (306.5467938406605,-596.8162727571193,-834.0505497154738) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000189670364e-07 mm long + and its vector is (6.622119030907925e-08,7.40188852432766e-08,1.166029051091755e-08) mm + Endpoint of ComputeStep() was (201.5752337116412,-722.403921109474,-591.4104918858076) + and current position to locate is (201.5752337778624,-722.4039210354551,-591.4104918741473) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999658855721e-08 mm long + and its vector is (-3.688643346322351e-08,-8.166523457475705e-08,4.438663836481282e-08) mm + Endpoint of ComputeStep() was (345.7951194962789,-526.6172569068088,-541.2699097282326) + and current position to locate is (345.7951194593924,-526.6172569884741,-541.269909683846) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000543522065e-07 mm long + and its vector is (-1.162737817139714e-08,-9.841323844739236e-08,-1.340333710686537e-08) mm + Endpoint of ComputeStep() was (333.9693148784775,-534.1951858845445,-389.9117336309724) + and current position to locate is (333.9693148668501,-534.1951859829577,-389.9117336443758) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999620635171e-08 mm long + and its vector is (-9.496426400801283e-08,-2.721628789004171e-08,1.552615458422224e-08) mm + Endpoint of ComputeStep() was (409.4281919450614,-663.9040259572328,-490.0195351282484) + and current position to locate is (409.4281918500971,-663.904025984449,-490.0195351127222) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000286293397e-07 mm long + and its vector is (-3.192565145582194e-08,5.838467131979996e-08,7.464575446647359e-08) mm + Endpoint of ComputeStep() was (561.7553508853725,-761.0801063230622,-396.2105145432453) + and current position to locate is (561.7553508534469,-761.0801062646775,-396.2105144685995) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000202179004e-07 mm long + and its vector is (-7.004553026490612e-08,6.19360207565478e-08,3.546205107340938e-08) mm + Endpoint of ComputeStep() was (268.5803180383148,-853.5346124023555,-471.1477512561701) + and current position to locate is (268.5803179682693,-853.5346123404195,-471.147751220708) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999950563606e-08 mm long + and its vector is (-8.900332204575534e-08,-3.595278030843474e-08,2.803221832436975e-08) mm + Endpoint of ComputeStep() was (212.2160547786244,-617.0025954679055,-594.1994867375938) + and current position to locate is (212.216054689621,-617.0025955038583,-594.1994867095616) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999989234598081e-08 mm long + and its vector is (-2.5308622753073e-08,-5.401625458034687e-08,-8.02601789473556e-08) mm + Endpoint of ComputeStep() was (404.6273334572665,-623.860126544145,-1242.209749608504) + and current position to locate is (404.6273334319579,-623.8601265981613,-1242.209749688764) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999149636564e-08 mm long + and its vector is (8.142330898408545e-08,4.516539320320589e-08,3.647369339887518e-08) mm + Endpoint of ComputeStep() was (734.5415089446868,-673.3057915150647,-1150.009493237597) + and current position to locate is (734.5415090261101,-673.3057914698993,-1150.009493201123) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000001017008926e-07 mm long + and its vector is (4.855212409893284e-08,1.96571932065126e-08,-8.518395588907879e-08) mm + Endpoint of ComputeStep() was (565.0442197999495,471.6593261036771,-1204.746944608076) + and current position to locate is (565.0442198485016,471.6593261233343,-1204.74694469326) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994443126004e-08 mm long + and its vector is (9.513553322904045e-08,-2.991328074131161e-09,3.066384124394972e-08) mm + Endpoint of ComputeStep() was (530.6624017246247,580.9093551205713,-1172.64813116324) + and current position to locate is (530.6624018197602,580.9093551175799,-1172.648131132576) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000027545041e-07 mm long + and its vector is (-8.227641501434846e-08,3.435076223468059e-08,-4.52837412012741e-08) mm + Endpoint of ComputeStep() was (561.4415694599063,325.4901150261466,-1477.866951647156) + and current position to locate is (561.4415693776299,325.4901150604974,-1477.86695169244) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999008485933e-08 mm long + and its vector is (4.931825969833881e-08,5.3595158533426e-08,6.852201295259874e-08) mm + Endpoint of ComputeStep() was (541.7204902388985,585.616490924928,-1407.43524886199) + and current position to locate is (541.7204902882168,585.6164909785232,-1407.435248793468) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000802806662e-07 mm long + and its vector is (-4.023672772746067e-08,-4.020705546281533e-08,-8.224606062867679e-08) mm + Endpoint of ComputeStep() was (289.5744493568166,581.9335343059336,-1241.636778692751) + and current position to locate is (289.5744493165799,581.9335342657265,-1241.636778774997) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997159363709e-08 mm long + and its vector is (-8.133724804793019e-10,9.628251973481383e-08,-2.700016921153292e-08) mm + Endpoint of ComputeStep() was (340.1548237582546,530.2779420006372,-1263.073078627526) + and current position to locate is (340.1548237574412,530.2779420969197,-1263.073078654526) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997835963692e-08 mm long + and its vector is (-2.978367774630897e-08,-3.890443167620106e-08,-8.717438504390884e-08) mm + Endpoint of ComputeStep() was (296.0765166574361,594.4680865508154,-1173.626833772229) + and current position to locate is (296.0765166276524,594.468086511911,-1173.626833859404) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000684362241e-07 mm long + and its vector is (3.332922915433301e-08,-2.04058778763283e-08,-9.204768502968363e-08) mm + Endpoint of ComputeStep() was (378.6738115656609,655.8822812056212,-1254.725600433918) + and current position to locate is (378.6738115989901,655.8822811852153,-1254.725600525965) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997653053338e-08 mm long + and its vector is (-3.645550350483973e-08,9.234997833118541e-08,-1.193620846606791e-08) mm + Endpoint of ComputeStep() was (490.8984295908111,-648.4140062645201,-743.6293388936147) + and current position to locate is (490.8984295543556,-648.4140061721702,-743.6293389055509) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999930503175e-08 mm long + and its vector is (8.514069804732571e-08,1.113426151277963e-08,-5.125514235260198e-08) mm + Endpoint of ComputeStep() was (473.7648810020448,-837.4207579055071,-853.2885134258029) + and current position to locate is (473.7648810871855,-837.4207578943729,-853.288513477058) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996410550142e-08 mm long + and its vector is (9.374969067721395e-08,-2.398405740677845e-08,2.521414899092633e-08) mm + Endpoint of ComputeStep() was (437.4527804165589,-774.7407636940061,-784.635278158415) + and current position to locate is (437.4527805103086,-774.7407637179901,-784.6352781332008) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000137464249e-07 mm long + and its vector is (5.31517798663117e-08,9.959990165953059e-09,-8.411711860389914e-08) mm + Endpoint of ComputeStep() was (591.3239323422405,-727.4653476808398,-684.2527812765252) + and current position to locate is (591.3239323953923,-727.4653476708799,-684.2527813606423) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000087464418e-07 mm long + and its vector is (2.32716956816148e-10,3.482034571788972e-08,9.374161891173571e-08) mm + Endpoint of ComputeStep() was (502.374509563045,-855.8641997262399,-610.3035050702238) + and current position to locate is (502.3745095632777,-855.8641996914196,-610.3035049764821) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000052147726e-07 mm long + and its vector is (-9.803645184547349e-08,1.492958290327806e-08,-1.288265139010036e-08) mm + Endpoint of ComputeStep() was (173.2091438457646,-734.0782052360066,-728.9863237751935) + and current position to locate is (173.2091437477281,-734.078205221077,-728.9863237880761) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999953745505e-08 mm long + and its vector is (-2.021135969698662e-08,5.731055807700614e-08,7.941662261146121e-08) mm + Endpoint of ComputeStep() was (534.0782838032417,-635.3427318103172,-818.434417512344) + and current position to locate is (534.0782837830303,-635.3427317530067,-818.4344174329274) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996477131742e-08 mm long + and its vector is (-7.663152246095706e-08,6.264895091590006e-08,-1.423768480890431e-08) mm + Endpoint of ComputeStep() was (455.4527828450349,-715.9035654774393,-596.4314229055176) + and current position to locate is (455.4527827684034,-715.9035654147904,-596.4314229197553) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000293493744e-07 mm long + and its vector is (-2.594686066004215e-08,6.373215910571162e-08,-7.256016942847054e-08) mm + Endpoint of ComputeStep() was (527.4245193020651,-681.8171389614668,-748.8994469627449) + and current position to locate is (527.4245192761182,-681.8171388977346,-748.8994470353051) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996523203457e-08 mm long + and its vector is (-3.291455641374341e-08,-5.565550509345485e-08,-7.628295861650258e-08) mm + Endpoint of ComputeStep() was (375.9923648610124,-894.4851419952531,-703.4723282135506) + and current position to locate is (375.9923648280978,-894.4851420509086,-703.4723282898335) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999643758377e-08 mm long + and its vector is (-4.076144932696479e-08,-9.064171990758041e-08,-1.107139269151958e-08) mm + Endpoint of ComputeStep() was (431.0352877497236,-624.524302958642,-704.539258841227) + and current position to locate is (431.0352877089622,-624.5243030492837,-704.5392588522984) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000179156246e-07 mm long + and its vector is (9.987405746869626e-08,-3.495983946777415e-09,3.599211595428642e-09) mm + Endpoint of ComputeStep() was (429.2302808946746,-710.6983913700649,-692.198678993713) + and current position to locate is (429.2302809945487,-710.6983913735609,-692.1986789901138) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999653643234e-08 mm long + and its vector is (-8.091768677331856e-08,-2.530964593461249e-08,-5.302592853695387e-08) mm + Endpoint of ComputeStep() was (498.6427846345625,-663.5174250756347,-682.7771439666245) + and current position to locate is (498.6427845536448,-663.5174251009444,-682.7771440196504) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993391675409e-08 mm long + and its vector is (1.512535163783468e-08,-4.836635980609572e-08,-8.620850167062599e-08) mm + Endpoint of ComputeStep() was (461.2587617884059,-662.4864782140281,-718.2437565406913) + and current position to locate is (461.2587618035313,-662.4864782623945,-718.2437566268998) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000323347846e-07 mm long + and its vector is (-1.185060227726353e-08,-9.545908596919617e-08,-2.733372639340814e-08) mm + Endpoint of ComputeStep() was (191.5099603469592,-530.3704234817095,-656.419857124328) + and current position to locate is (191.5099603351086,-530.3704235771686,-656.4198571516617) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000241519027e-07 mm long + and its vector is (9.80079448709148e-08,-6.483446668426041e-09,-1.877265276561957e-08) mm + Endpoint of ComputeStep() was (523.6022877701321,-760.1431935211401,-675.8586338437638) + and current position to locate is (523.60228786814,-760.1431935276236,-675.8586338625364) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994563435612e-08 mm long + and its vector is (-9.711186521599302e-08,2.365891305089463e-08,-3.087166078330483e-09) mm + Endpoint of ComputeStep() was (522.8993952065917,-828.8402877716303,-596.4965308059602) + and current position to locate is (522.8993951094799,-828.8402877479714,-596.4965308090474) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000026818994e-07 mm long + and its vector is (8.417373464908451e-08,2.48121523327427e-09,-5.393172841650085e-08) mm + Endpoint of ComputeStep() was (544.2950394767824,-976.3089399546994,-467.3780229012339) + and current position to locate is (544.2950395609562,-976.3089399522182,-467.3780229551656) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997210149706e-08 mm long + and its vector is (9.268524081562646e-08,-1.820865236368263e-08,-3.283116711827461e-08) mm + Endpoint of ComputeStep() was (684.0544041677771,-796.5987521850972,-533.9483929553124) + and current position to locate is (684.0544042604623,-796.5987522033058,-533.9483929881436) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000595490142e-07 mm long + and its vector is (-1.626597168069566e-08,5.357605914468877e-09,9.852271887211828e-08) mm + Endpoint of ComputeStep() was (578.4762191830425,-814.0161795470506,-544.2162751300345) + and current position to locate is (578.4762191667766,-814.016179541693,-544.2162750315118) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000113528521e-07 mm long + and its vector is (-3.49822357748053e-08,-7.552682745881611e-08,5.542511871681199e-08) mm + Endpoint of ComputeStep() was (706.8724950886181,-707.3409896434683,-322.0131594078359) + and current position to locate is (706.8724950536358,-707.3409897189952,-322.0131593524108) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000643641879e-07 mm long + and its vector is (-5.497690835909452e-08,-8.244853688665899e-08,-1.340862354481942e-08) mm + Endpoint of ComputeStep() was (1340.975846079167,-535.7999948831315,-470.3555799714612) + and current position to locate is (1340.97584602419,-535.79999496558,-470.3555799848698) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000058478202e-07 mm long + and its vector is (7.690232450840995e-09,9.910445442073978e-08,1.091643753170501e-08) mm + Endpoint of ComputeStep() was (1334.731521133756,-552.8638982827633,-447.870651805545) + and current position to locate is (1334.731521141446,-552.8638981836589,-447.8706517946285) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.0000004217531e-07 mm long + and its vector is (3.604418452596292e-08,-5.207760978009901e-08,-7.738699991932663e-08) mm + Endpoint of ComputeStep() was (1142.760228054275,-294.1072271541934,-176.3442502557037) + and current position to locate is (1142.76022809032,-294.107227206271,-176.3442503330907) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993220510299e-08 mm long + and its vector is (6.475693226093426e-08,5.694420224244823e-08,5.063481012257398e-08) mm + Endpoint of ComputeStep() was (1221.542928920402,-454.1703125300009,-350.9101639325385) + and current position to locate is (1221.542928985159,-454.1703124730567,-350.9101638819037) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998772849292e-08 mm long + and its vector is (6.289610610110685e-09,-6.55644498692709e-08,7.524454304075334e-08) mm + Endpoint of ComputeStep() was (1308.235703713892,-372.5115389625165,-400.0000000752445) + and current position to locate is (1308.235703720181,-372.511539028081,-400) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000340784912e-07 mm long + and its vector is (-9.181485438602977e-08,2.873943572012649e-08,2.727790615608683e-08) mm + Endpoint of ComputeStep() was (1314.146415509276,-204.7417858113108,-139.0738790465772) + and current position to locate is (1314.146415417462,-204.7417857825714,-139.0738790192993) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000111448291e-07 mm long + and its vector is (9.536802281218115e-08,-2.598909532025573e-08,1.514956693426939e-08) mm + Endpoint of ComputeStep() was (1335.32651951346,-348.2859256577445,-560.2000107569861) + and current position to locate is (1335.326519608828,-348.2859256837336,-560.2000107418365) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999788872878e-08 mm long + and its vector is (-9.838004189077765e-08,-1.984403752430808e-09,1.781643277354306e-08) mm + Endpoint of ComputeStep() was (2333.799811463626,-559.8021440378016,-776.1292954189772) + and current position to locate is (2333.799811365246,-559.802144039786,-776.1292954011608) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000006252734e-07 mm long + and its vector is (5.249466994428076e-08,-7.34361265131156e-08,-4.302842171455268e-08) mm + Endpoint of ComputeStep() was (2328.179219798338,-548.4827303674906,-845.1990252889997) + and current position to locate is (2328.179219850833,-548.4827304409267,-845.1990253320281) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000150846479e-07 mm long + and its vector is (3.224158717785031e-09,-2.333717930014245e-08,-9.718530691316118e-08) mm + Endpoint of ComputeStep() was (2281.433152149156,-500.7593989142176,-599.9999999028147) + and current position to locate is (2281.43315215238,-500.7593989375548,-600) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999986421715285e-08 mm long + and its vector is (9.233735909219831e-08,-8.725692168809474e-09,3.738512077688938e-08) mm + Endpoint of ComputeStep() was (2373.956019424023,-739.3671655607607,-656.3031216357564) + and current position to locate is (2373.956019516361,-739.3671655694864,-656.3031215983713) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996680618242e-08 mm long + and its vector is (-9.403493095305748e-08,-4.343974069342948e-09,3.374248080945108e-08) mm + Endpoint of ComputeStep() was (2282.606921157933,-467.5528247237197,-947.5976404119758) + and current position to locate is (2282.606921063898,-467.5528247280636,-947.5976403782333) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000001366136082e-07 mm long + and its vector is (5.821675586048514e-08,-6.392860996129457e-08,-5.02391230838839e-08) mm + Endpoint of ComputeStep() was (2488.281536076798,-545.9045718568326,-767.9966880693329) + and current position to locate is (2488.281536135014,-545.9045719207612,-767.996688119572) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999377634049e-08 mm long + and its vector is (9.766154107637703e-09,2.224942363682203e-08,9.700295322545571e-08) mm + Endpoint of ComputeStep() was (2588.802625608709,-521.8391544006652,-801.4091517228567) + and current position to locate is (2588.802625618475,-521.8391543784157,-801.4091516258537) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998040270883e-08 mm long + and its vector is (-6.541222319356166e-08,-2.172600943595171e-08,-7.245148481160868e-08) mm + Endpoint of ComputeStep() was (2821.72292396548,-808.5748781567914,-934.1566479832112) + and current position to locate is (2821.722923900068,-808.5748781785175,-934.1566480556627) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000001386875668e-07 mm long + and its vector is (-7.069502316880971e-08,7.040296168270288e-08,6.757545634172857e-09) mm + Endpoint of ComputeStep() was (2650.80611072793,-604.8742076587672,-1070.640279574425) + and current position to locate is (2650.806110657235,-604.8742075883642,-1070.640279567668) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 6388 (kaon+,2.4761550012856[GeV]) at (287.59399362293,-409.01062924087,-440.36944617498) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[7,10] 0.00073478488150988 [GeV] -Cell[7,11] 3.0301995627724e-07 [GeV] -Cell[7,1] 7.7511102426797e-06 [GeV] -Cell[6,38] 0.0020973894370993 [GeV] -Cell[9,39] 0.00024732287333802 [GeV] -Cell[11,7] 0.00035947295332517 [GeV] -Cell[11,30] 7.1121271428524e-05 [GeV] -Cell[7,17] 0.00067417594279175 [GeV] -Cell[6,25] 0.0017040304926133 [GeV] -Cell[7,43] 0.0012326706058702 [GeV] -Cell[7,22] 5.8041484997375e-05 [GeV] -Cell[7,41] 0.16461442565656 [GeV] -Cell[8,39] 0.0020119368307263 [GeV] -Cell[14,17] 0.0003830361139419 [GeV] -Cell[8,13] 2.002761606127e-05 [GeV] -Cell[4,38] 0.010100618153275 [GeV] -Cell[8,20] 1.2011963917757e-08 [GeV] -Cell[5,37] 0.0016009559887539 [GeV] -Cell[6,22] 0.00774948433927 [GeV] -Cell[5,21] 1.3678800314665e-12 [GeV] -Cell[4,33] 8.342407677128e-05 [GeV] -Cell[5,33] 4.9891814705916e-06 [GeV] -Cell[7,47] 0.0019239774376705 [GeV] -Cell[4,39] 0.00082275473218836 [GeV] -Cell[7,27] 8.3500926848501e-09 [GeV] -Cell[8,40] 0.0069447397980634 [GeV] -Cell[8,41] 0.00082208050842144 [GeV] -Cell[3,28] 2.7095733908936e-05 [GeV] -Cell[8,18] 0.0011452074476368 [GeV] -Cell[6,39] 0.0091048658159578 [GeV] -Cell[9,26] 0.0063365969218927 [GeV] -Cell[8,15] 0.0022309468695834 [GeV] -Cell[7,42] 0.028560481134523 [GeV] -Cell[6,23] 0.00042491205339024 [GeV] -Cell[4,32] 0.00047650436584968 [GeV] -Cell[7,21] 0.0018323151727756 [GeV] -Cell[4,42] 0.00073445367246029 [GeV] -Cell[6,37] 1.0506482794881e-11 [GeV] -Cell[13,41] 0.0011980755741133 [GeV] -Cell[12,29] 0.00026027819625233 [GeV] -Cell[11,29] 2.9342283203732e-05 [GeV] -Cell[9,25] 0.0015473160628788 [GeV] -Cell[9,29] 4.9913015041966e-05 [GeV] -Cell[4,8] 7.5579771419143e-10 [GeV] -Cell[7,28] 0.00046597362123487 [GeV] -Cell[8,28] 0.0039495345006331 [GeV] -Cell[7,29] 6.3863353716442e-10 [GeV] -Cell[6,40] 0.56811574437857 [GeV] -Cell[7,40] 0.54086652043557 [GeV] -Cell[6,19] 0.0058945349604907 [GeV] -Cell[3,29] 7.754533609841e-06 [GeV] -Cell[11,33] 2.5457050405407e-05 [GeV] -Cell[11,34] 0.0037468765040444 [GeV] -Cell[10,32] 1.3333559235662e-05 [GeV] -Cell[9,15] 0.00036983482428809 [GeV] -Cell[12,33] 0.00010405727478974 [GeV] -Cell[12,34] 7.4838183141765e-05 [GeV] -Cell[3,18] 0.00061544455923373 [GeV] -Cell[4,43] 5.3890141202828e-08 [GeV] -Cell[5,38] 0.0054443875663757 [GeV] -Cell[3,8] 8.4663117750893e-05 [GeV] -Cell[0,21] 0.00075720045442426 [GeV] -Cell[0,20] 7.0558677748522e-08 [GeV] -Cell[5,25] 0.00073120166436124 [GeV] -Cell[5,24] 5.3927523149241e-05 [GeV] -Cell[6,24] 1.1266702465946e-05 [GeV] -Cell[6,7] 0.00033972270811797 [GeV] -Cell[2,10] 0.0021980665753171 [GeV] -Cell[3,42] 8.9726416626945e-07 [GeV] -Cell[0,22] 0.00018861355024228 [GeV] -Cell[8,24] 3.1851605822681e-05 [GeV] -Cell[3,43] 4.7394333523698e-06 [GeV] -Cell[4,22] 2.1566616089785e-07 [GeV] -Cell[3,24] 1.4626890217187e-05 [GeV] -Cell[4,25] 0.00011501258492433 [GeV] -Cell[3,25] 1.7957305622986e-05 [GeV] -Cell[4,24] 5.1109781197738e-05 [GeV] -Cell[7,46] 2.150791365284e-05 [GeV] -Cell[4,40] 1.0139513619833e-08 [GeV] -Cell[4,26] 2.3687972687185e-05 [GeV] -Cell[5,29] 6.2489211559296e-06 [GeV] -Cell[5,39] 0.0030195144139726 [GeV] -Cell[5,40] 0.00072101765028248 [GeV] -Cell[4,41] 4.2066010238045e-05 [GeV] -Cell[5,0] 0.00067623142036816 [GeV] -Cell[6,42] 4.8107184822925e-05 [GeV] -Cell[6,41] 0.011532655407736 [GeV] -Cell[11,10] 0.0019267484170674 [GeV] -Cell[11,9] 2.0764042195879e-05 [GeV] -Cell[13,17] 5.2881746174535e-05 [GeV] -Cell[3,17] 2.0344854099676e-05 [GeV] -Cell[12,41] 8.6365616880357e-10 [GeV] -Cell[11,40] 0.00036747243806008 [GeV] -Cell[10,39] 2.9174335242715e-05 [GeV] -Cell[12,40] 5.0002363536805e-08 [GeV] -Cell[14,37] 6.9228629872669e-06 [GeV] -Cell[8,38] 0.00012392247304456 [GeV] -Cell[8,47] 0.0010086169822829 [GeV] -Cell[9,1] 0.00019590607486725 [GeV] -Cell[9,0] 5.9390224691924e-08 [GeV] -Cell[6,11] 0.0014440893689349 [GeV] -Cell[8,42] 0.001428231326277 [GeV] -Cell[8,19] 0.0011866153028571 [GeV] -Cell[7,19] 1.7171587387566e-09 [GeV] -Cell[7,39] 0.0059235997133457 [GeV] -Cell[13,18] 2.031663976959e-05 [GeV] -Cell[9,14] 5.2008933237175e-06 [GeV] -Cell[8,43] 0.00047507191773889 [GeV] -Cell[3,30] 0.00032611309815911 [GeV] -Cell[4,12] 0.00016421434895653 [GeV] -Cell[4,11] 0.00011544454018372 [GeV] -Cell[3,11] 2.6985948829861e-07 [GeV] -Cell[9,27] 0.0072559219819251 [GeV] -Cell[8,26] 0.0049555466159024 [GeV] -Cell[8,27] 0.010178189866018 [GeV] -Cell[9,28] 3.0861308799899e-05 [GeV] -Cell[8,25] 0.0002531280420626 [GeV] -Cell[5,23] 0.026350139889508 [GeV] -Cell[5,22] 0.0048707357995767 [GeV] -Cell[6,21] 0.00072094337362023 [GeV] -Cell[6,20] 6.2828531156356e-07 [GeV] -Cell[3,9] 0.0011976879396807 [GeV] -Cell[7,38] 0.00034866913337601 [GeV] -Cell[8,21] 1.0738731361926e-09 [GeV] -Cell[5,42] 0.0054620921222329 [GeV] -Cell[5,41] 0.005459459934646 [GeV] -Cell[4,37] 1.2199450338812e-10 [GeV] -### Total energy deposition in calorimeter by a source track in 127 cells : 1.4905404155533 (GeV) +Cell[7,39] 0.067316424707128 [GeV] +Cell[8,28] 0.00017263078278352 [GeV] +Cell[8,41] 0.0012197654346802 [GeV] +Cell[9,45] 5.5805888644045e-07 [GeV] +Cell[8,39] 3.2692541473125e-05 [GeV] +Cell[5,38] 0.00095928107102509 [GeV] +Cell[8,38] 0.0051115586091162 [GeV] +Cell[6,38] 0.0066483209966889 [GeV] +Cell[7,41] 0.0059538506920674 [GeV] +Cell[7,46] 0.0020227503653528 [GeV] +Cell[7,44] 0.0048838067059722 [GeV] +Cell[6,39] 0.072115679120025 [GeV] +Cell[6,41] 0.0062250420431259 [GeV] +Cell[6,40] 0.61856313304517 [GeV] +Cell[7,37] 0.0026691078768846 [GeV] +Cell[6,46] 0.037835240274743 [GeV] +Cell[6,45] 0.0023487644876543 [GeV] +Cell[5,46] 0.0082646726976467 [GeV] +Cell[3,44] 0.0013711853786863 [GeV] +Cell[3,4] 0.00066006145829647 [GeV] +Cell[4,42] 0.004636270361853 [GeV] +Cell[2,5] 0.00045481660769269 [GeV] +Cell[5,37] 0.00015112896819392 [GeV] +Cell[4,7] 0.043143991830873 [GeV] +Cell[4,6] 0.011795777043208 [GeV] +Cell[4,8] 0.00058461672770483 [GeV] +Cell[3,6] 0.0018100899678124 [GeV] +Cell[4,41] 0.018716069845028 [GeV] +Cell[6,31] 0.00068183940920187 [GeV] +Cell[0,38] 3.2205614843406e-07 [GeV] +Cell[2,40] 2.8679129318334e-06 [GeV] +Cell[5,45] 0.00035158742281521 [GeV] +Cell[7,45] 0.0075963818615459 [GeV] +Cell[8,44] 0.002113999800938 [GeV] +Cell[4,46] 0.00074160718164103 [GeV] +Cell[3,5] 0.0009882415408548 [GeV] +Cell[2,6] 1.0270145326899e-05 [GeV] +Cell[2,4] 0.0010352816852469 [GeV] +Cell[5,41] 1.0450255924638e-05 [GeV] +Cell[4,5] 2.038899453396e-06 [GeV] +Cell[3,45] 1.5618053119397e-05 [GeV] +Cell[3,40] 0.00010111501444896 [GeV] +Cell[3,41] 0.00095722040804287 [GeV] +Cell[3,42] 0.0063669187520853 [GeV] +Cell[6,47] 0.00051236026373714 [GeV] +Cell[1,39] 0.068348307463739 [GeV] +Cell[8,45] 0.012820456951273 [GeV] +Cell[6,32] 0.00071053811662046 [GeV] +Cell[7,38] 0.06765341650132 [GeV] +Cell[5,40] 0.011999652601158 [GeV] +Cell[7,40] 0.23473939463171 [GeV] +Cell[6,33] 6.7438587429933e-06 [GeV] +Cell[6,37] 0.0010599544529036 [GeV] +Cell[5,36] 1.759498256888e-07 [GeV] +Cell[5,39] 0.00014704467782701 [GeV] +Cell[8,40] 0.0129494384814 [GeV] +Cell[3,7] 0.0024040249552063 [GeV] +Cell[3,8] 0.00034863593930652 [GeV] +Cell[8,46] 0.010924627818789 [GeV] +Cell[9,46] 0.0031603261006972 [GeV] +### Total energy deposition in calorimeter by a source track in 60 cells : 1.3744281468637 (GeV) -Source track ID 4901 (gamma,5.9782324556758e-05[GeV]) at (-484.0671849504,125.21565578712,375.79612623997) +Source track ID 6664 (gamma,0.0035564916634823[GeV]) at (-498.98749499818,31.803770773919,507.46676767338) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[11,22] 5.9782324556758e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 5.9782324556758e-05 (GeV) +Cell[12,23] 0.0035564916634823 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0035564916634823 (GeV) -Source track ID 4902 (gamma,0.0029736941548993[GeV]) at (-498.51569138096,38.498122642057,615.00382086663) +Source track ID 6669 (gamma,0.0097774617716576[GeV]) at (-390.50820591713,312.25524993406,752.22042879982) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[13,23] 0.0029736941548993 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.0029736941548993 (GeV) +Cell[13,18] 0.0097774617716576 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0097774617716576 (GeV) -Source track ID 4889 (e-,0.005841539182645[GeV]) at (-137.54450198354,480.70938203253,1792.2336262076) +Source track ID 6693 (e-,0.00058086492650111[GeV]) at (479.44759726457,141.88023638698,1796.3069533581) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[18,14] 0.0042512613539473 [GeV] -Cell[19,14] 0.0010792789186978 [GeV] -### Total energy deposition in calorimeter by a source track in 2 cells : 0.005330540272645 (GeV) +Cell[18,2] 4.2581918371609e-05 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 4.2581918371609e-05 (GeV) -Source track ID 4894 (gamma,0.0026556919129777[GeV]) at (-489.46416859608,102.10204532992,493.50708176478) +Source track ID 6646 (e-,0.022313449708122[GeV]) at (478.44948612056,145.21049972704,1770.289483095) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[12,22] 0.0026556919129777 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.0026556919129777 (GeV) +Cell[18,2] 0.017418889617542 [GeV] +Cell[18,1] 0.0026231417671257 [GeV] +Cell[19,2] 0.0017604194134545 [GeV] +### Total energy deposition in calorimeter by a source track in 3 cells : 0.021802450798122 (GeV) -Source track ID 4890 (e+,0.17627995549253[GeV]) at (-487.10264775582,112.83177987281,497.46342516242) +Source track ID 6649 (gamma,0.00018529026663027[GeV]) at (-473.45776850801,160.74122507749,439.52780466458) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[11,30] 0.00026203764387403 [GeV] -Cell[12,22] 0.055955383263138 [GeV] -Cell[13,22] 0.0007116282618424 [GeV] -Cell[13,21] 0.021380924803589 [GeV] -Cell[12,21] 0.091693227795147 [GeV] -Cell[12,35] 0.0006848993599954 [GeV] -Cell[11,4] 0.00014964964973473 [GeV] -Cell[13,20] 0.0049625462657191 [GeV] -### Total energy deposition in calorimeter by a source track in 8 cells : 0.17580029704304 (GeV) +Cell[12,21] 0.00018529026663027 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.00018529026663027 (GeV) -Source track ID 4888 (gamma,0.89164369738079[GeV]) at (-456.12361576703,204.82003598186,886.89513909331) +Source track ID 6650 (gamma,0.00073179466216419[GeV]) at (-482.51944489926,131.05336811432,488.59053761872) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[9,39] 0.00057931354381844 [GeV] -Cell[9,38] 2.1732952993148e-05 [GeV] -Cell[17,0] 2.7061942906585e-05 [GeV] -Cell[14,18] 0.00030779815622937 [GeV] -Cell[11,29] 0.00098812863793421 [GeV] -Cell[14,21] 0.038090796266536 [GeV] -Cell[12,3] 0.00048079088643522 [GeV] -Cell[14,42] 0.00051099891 [GeV] -Cell[12,9] 0.0018400428533665 [GeV] -Cell[13,1] 0.00051099891 [GeV] -Cell[14,44] 0.00051099891 [GeV] -Cell[15,37] 0.00033706339101679 [GeV] -Cell[18,10] 1.5425011340994e-05 [GeV] -Cell[18,11] 0.00058255942805397 [GeV] -Cell[15,21] 0.0035056459365183 [GeV] -Cell[18,1] 0.0023373703337995 [GeV] -Cell[18,2] 1.0186047120442e-08 [GeV] -Cell[14,19] 0.000324402549987 [GeV] -Cell[16,41] 0.00051099891 [GeV] -Cell[14,20] 0.76262259994402 [GeV] -Cell[15,20] 0.032725558309372 [GeV] -Cell[16,33] 0.0004455676611061 [GeV] -Cell[18,8] 0.00052594789164016 [GeV] -Cell[16,28] 0.0040428720121867 [GeV] -Cell[18,12] 9.5841797404319e-05 [GeV] -Cell[17,12] 2.8737082303678e-06 [GeV] -Cell[9,40] 2.4144956910277e-08 [GeV] -Cell[18,47] 9.0231605398003e-05 [GeV] -Cell[17,47] 2.6585907617118e-05 [GeV] -Cell[18,0] 4.258716624463e-05 [GeV] -Cell[13,10] 0.0032387008697001 [GeV] -Cell[13,5] 0.00097174661933944 [GeV] -Cell[15,19] 0.00056634351646251 [GeV] -Cell[14,15] 0.0016345635114839 [GeV] -### Total energy deposition in calorimeter by a source track in 34 cells : 0.85851418238215 (GeV) +Cell[12,21] 0.00073179466216419 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.00073179466216419 (GeV) -Source track ID 4873 (pi-,0.85439539412756[GeV]) at (-164.60209048567,472.12938036914,872.56598597935) +Source track ID 6647 (e+,0.15125853849605[GeV]) at (-495.65356264441,-65.784084989468,1263.2231467666) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[9,42] 5.6347582236526e-05 [GeV] -Cell[11,7] 3.4712138585746e-10 [GeV] -Cell[9,43] 9.3943647516426e-06 [GeV] -Cell[14,17] 0.0019287110085823 [GeV] -Cell[7,12] 1.3270917294221e-06 [GeV] -Cell[7,13] 3.4019572467514e-08 [GeV] -Cell[16,6] 0.0038367199856569 [GeV] -Cell[13,27] 0.00016556953411987 [GeV] -Cell[13,28] 3.6442213387318e-05 [GeV] -Cell[16,39] 5.4444347333629e-05 [GeV] -Cell[14,47] 1.3708108031892e-05 [GeV] -Cell[14,43] 1.7040049482603e-05 [GeV] -Cell[15,12] 0.0035862198450381 [GeV] -Cell[15,11] 0.00061243467342993 [GeV] -Cell[8,28] 0.00064170460655037 [GeV] -Cell[6,13] 2.8069454174329e-09 [GeV] -Cell[6,12] 0.00072128557789017 [GeV] -Cell[10,34] 8.8639449095353e-06 [GeV] -Cell[10,8] 7.0800196123855e-05 [GeV] -Cell[11,8] 1.5974695500859e-05 [GeV] -Cell[13,44] 4.0685797779588e-05 [GeV] -Cell[10,0] 2.4675361346453e-05 [GeV] -Cell[10,1] 0.0021539250831405 [GeV] -Cell[13,17] 0.00012174570471416 [GeV] -Cell[16,15] 3.4724009766478e-06 [GeV] -Cell[15,15] 0.072564795817945 [GeV] -Cell[16,40] 0.00089392060516639 [GeV] -Cell[14,44] 0.004784324627697 [GeV] -Cell[14,0] 2.1627471267038e-07 [GeV] -Cell[16,4] 0.0071045200540926 [GeV] -Cell[16,17] 2.599080503569e-05 [GeV] -Cell[14,12] 0.0036832756620777 [GeV] -Cell[15,14] 0.066787335696164 [GeV] -Cell[15,13] 0.015720082590027 [GeV] -Cell[17,34] 2.9733483938799e-07 [GeV] -Cell[16,16] 0.0043119391256512 [GeV] -Cell[16,9] 2.7891551231733e-05 [GeV] -Cell[16,8] 0.0012464801339283 [GeV] -Cell[16,7] 0.0012606927679248 [GeV] -Cell[16,5] 0.0018777805548386 [GeV] -Cell[17,6] 8.9426107483632e-05 [GeV] -Cell[14,14] 0.14962485547174 [GeV] -Cell[9,1] 0.00077595176793463 [GeV] -Cell[9,0] 8.0648544826545e-06 [GeV] -Cell[14,15] 0.03578613755707 [GeV] -Cell[14,13] 0.008869844711993 [GeV] -Cell[14,16] 0.016411281718847 [GeV] -Cell[10,2] 5.0145772547694e-09 [GeV] -Cell[10,46] 7.2526689546596e-05 [GeV] -Cell[13,16] 0.00039539006509267 [GeV] -Cell[13,15] 8.1163016147912e-09 [GeV] -Cell[10,14] 3.1033414416015e-09 [GeV] -Cell[15,4] 1.6880221664906e-12 [GeV] -Cell[14,11] 0.0010128182220155 [GeV] -Cell[16,3] 0.0011941619836427 [GeV] -Cell[15,16] 0.0054925473407712 [GeV] -Cell[15,17] 0.0051975171278143 [GeV] -Cell[13,13] 0.00057195807298035 [GeV] -### Total energy deposition in calorimeter by a source track in 58 cells : 0.41991357087501 (GeV) +Cell[16,25] 0.12919468654493 [GeV] +Cell[16,24] 0.018658612072797 [GeV] +Cell[14,12] 0.00051099891 [GeV] +Cell[16,26] 0.0027631550869396 [GeV] +Cell[18,31] 0.00064208479138409 [GeV] +### Total energy deposition in calorimeter by a source track in 5 cells : 0.15176953740605 (GeV) -Source track ID 4867 (mu+,0.42307267880229[GeV]) at (-379.29098146846,-325.78881407546,-468.39475372105) +Source track ID 6645 (gamma,0.89164369738079[GeV]) at (-456.12361933608,204.82002803378,886.89511478876) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[6,28] 0.010343818961707 [GeV] -Cell[7,28] 0.099295720615872 [GeV] -Cell[7,29] 0.07261319592372 [GeV] -Cell[6,26] 0.070554916179996 [GeV] -Cell[6,27] 0.10594942300045 [GeV] -### Total energy deposition in calorimeter by a source track in 5 cells : 0.35875707468174 (GeV) +Cell[15,20] 0.020238764585023 [GeV] +Cell[11,4] 0.0011232140964562 [GeV] +Cell[15,21] 0.0099534553871148 [GeV] +Cell[15,41] 0.0022524853293542 [GeV] +Cell[15,43] 0.00051099891 [GeV] +Cell[14,20] 0.77771042312839 [GeV] +Cell[13,8] 0.00085399992705922 [GeV] +Cell[14,21] 0.051590066428931 [GeV] +Cell[14,19] 0.017207953559966 [GeV] +Cell[15,19] 0.0056978802336865 [GeV] +Cell[14,22] 0.0029904970620737 [GeV] +### Total energy deposition in calorimeter by a source track in 11 cells : 0.89012973864806 (GeV) -Source track ID 4846 (kaon-,0.6421319407612[GeV]) at (448.69587128578,-220.61734993217,307.68204660333) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000023939576e-07 mm long + and its vector is (1.663417492636654e-08,8.663005246489774e-08,4.710136636276729e-08) mm + Endpoint of ComputeStep() was (-146.997431861263,581.7144960634004,975.0716530749214) + and current position to locate is (-146.9974318446288,581.7144961500304,975.0716531220228) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000357119583e-07 mm long + and its vector is (1.598095877852757e-09,8.240562010541908e-08,5.662832336383872e-08) mm + Endpoint of ComputeStep() was (590.2730045946607,-376.2682289363776,1316.499343153396) + and current position to locate is (590.2730045962588,-376.2682288539719,1316.499343210024) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998084933799e-08 mm long + and its vector is (-6.990620704527828e-08,3.936179382435512e-08,5.969729954813374e-08) mm + Endpoint of ComputeStep() was (-322.8025560752379,529.3913308339479,993.7978412679125) + and current position to locate is (-322.8025561451441,529.3913308733097,993.7978413276098) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998015011174e-08 mm long + and its vector is (-1.66306790561066e-08,8.188516176232952e-08,5.493848220794462e-08) mm + Endpoint of ComputeStep() was (310.2166528698516,508.1669136198963,1553.971694498576) + and current position to locate is (310.2166528532209,508.1669137017815,1553.971694553514) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997488465265e-08 mm long + and its vector is (-9.401559251465346e-08,2.045237579295645e-08,-2.725369085965212e-08) mm + Endpoint of ComputeStep() was (9.401566356892704e-08,514.4310601488617,1078.122510969545) + and current position to locate is (7.105427357601002e-14,514.431060169314,1078.122510942292) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998191083144e-08 mm long + and its vector is (-3.705557105604385e-08,-7.850758265703917e-08,4.963305855198996e-08) mm + Endpoint of ComputeStep() was (-164.7403910589025,680.3385948543374,990.2471119363953) + and current position to locate is (-164.740391095958,680.3385947758298,990.2471119860284) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000041841542e-07 mm long + and its vector is (-9.03776253835531e-08,-2.229717210866511e-08,3.653394742286764e-08) mm + Endpoint of ComputeStep() was (-282.9366025948988,582.5314285110479,959.1555393137131) + and current position to locate is (-282.9366026852764,582.5314284887507,959.1555393502471) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000399923134e-07 mm long + and its vector is (-1.470621668886452e-08,3.909576662408654e-09,-9.883547136269044e-08) mm + Endpoint of ComputeStep() was (-212.4009392215451,539.1238137053015,1085.993704050576) + and current position to locate is (-212.4009392362513,539.123813709211,1085.993703951741) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000077398001e-07 mm long + and its vector is (5.578533546213293e-08,8.28526154350584e-08,-4.841695044888183e-09) mm + Endpoint of ComputeStep() was (-499.9406429420524,-7.704128227296998,1335.703824506357) + and current position to locate is (-499.940642886267,-7.704128144444383,1335.703824501516) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997172235096e-08 mm long + and its vector is (4.347509729996091e-08,7.708638349868124e-08,-4.655748853110708e-08) mm + Endpoint of ComputeStep() was (-315.6152770837537,713.2930651484128,1331.969329886949) + and current position to locate is (-315.6152770402786,713.2930652254992,1331.969329840392) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000224548257e-07 mm long + and its vector is (-1.503894964116625e-08,5.476124442793662e-08,8.231063475250266e-08) mm + Endpoint of ComputeStep() was (-262.2615007985453,635.5882154984608,907.8338586470101) + and current position to locate is (-262.2615008135842,635.5882155532221,907.8338587293207) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000392086248e-07 mm long + and its vector is (3.530740855239856e-08,1.850048647611402e-08,-9.171219517156715e-08) mm + Endpoint of ComputeStep() was (-89.66301020250509,718.4694683061521,668.9870059019295) + and current position to locate is (-89.66301016719768,718.4694683246526,668.9870058102173) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000152721246e-07 mm long + and its vector is (-8.525509542778309e-08,-4.860487479163567e-08,-1.921296188811539e-08) mm + Endpoint of ComputeStep() was (-136.0222260641621,484.9983688793605,1004.733843086011) + and current position to locate is (-136.0222261494172,484.9983688307556,1004.733843066798) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000176080169e-07 mm long + and its vector is (-3.999815589850186e-08,2.727824721659999e-08,8.749884727876633e-08) mm + Endpoint of ComputeStep() was (343.9599204342503,-609.6651320156344,1925.253417116867) + and current position to locate is (343.9599203942522,-609.6651319883562,1925.253417204366) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999991095119747e-08 mm long + and its vector is (1.856102471720078e-08,-4.863721869696747e-08,-8.538086149201263e-08) mm + Endpoint of ComputeStep() was (-359.913306863284,479.6767159842217,1193.094857048792) + and current position to locate is (-359.913306844723,479.6767159355845,1193.094856963411) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999991820362278e-08 mm long + and its vector is (-3.674580284496187e-08,-6.206664693308994e-08,-6.926370588189457e-08) mm + Endpoint of ComputeStep() was (443.163537287184,461.6848305358667,1320.951077027644) + and current position to locate is (443.1635372504382,461.6848304738,1320.951076958381) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000507443318e-07 mm long + and its vector is (-6.477242209257383e-08,-1.360831447527744e-08,-7.496237230952829e-08) mm + Endpoint of ComputeStep() was (-171.6526584338908,673.1442584564261,1200.000000074962) + and current position to locate is (-171.6526584986632,673.1442584428178,1200) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997311920414e-08 mm long + and its vector is (-7.423125225614058e-08,5.553414439418702e-08,3.749232746486086e-08) mm + Endpoint of ComputeStep() was (-396.5527892149864,441.113041267069,785.2862050566739) + and current position to locate is (-396.5527892892176,441.1130413226031,785.2862050941662) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000511415883e-07 mm long + and its vector is (1.926031245602644e-08,-6.560750875905796e-08,7.297057891264558e-08) mm + Endpoint of ComputeStep() was (489.6093673530711,-202.935130903048,1064.089327695302) + and current position to locate is (489.6093673723314,-202.9351309686556,1064.089327768273) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999043308706e-08 mm long + and its vector is (8.050309929785726e-08,-2.356068762310315e-08,-5.444394446385559e-08) mm + Endpoint of ComputeStep() was (-214.5488638693105,618.1026105599598,1007.851830235274) + and current position to locate is (-214.5488637888074,618.1026105363991,1007.85183018083) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994822325511e-08 mm long + and its vector is (2.374309815422748e-08,-7.369044396909885e-08,-6.329275947791757e-08) mm + Endpoint of ComputeStep() was (-394.0204794068054,750.3023989324015,967.1532676010862) + and current position to locate is (-394.0204793830623,750.3023988587111,967.1532675377935) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000260903483e-07 mm long + and its vector is (-9.376196885568788e-08,3.444540652708383e-08,4.713001544587314e-09) mm + Endpoint of ComputeStep() was (-327.4159304343492,682.5447949430446,827.0142987356803) + and current position to locate is (-327.4159305281112,682.54479497749,827.0142987403933) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000219541877e-07 mm long + and its vector is (-2.727472292463062e-08,8.576182608521776e-08,4.360049388196785e-08) mm + Endpoint of ComputeStep() was (730.4581489088715,-170.090836795065,1922.315962755263) + and current position to locate is (730.4581488815968,-170.0908367093032,1922.315962798864) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994531869548e-08 mm long + and its vector is (-9.617690466257045e-08,-2.702647350361076e-08,-4.42287273472175e-09) mm + Endpoint of ComputeStep() was (641.1589697176472,106.8418255165532,1980.415039954605) + and current position to locate is (641.1589696214703,106.8418254895267,1980.415039950182) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 6634 (pi-,0.85441358006546[GeV]) at (-164.81978146882,472.05342879442,873.97819141619) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[13,26] 4.8462359700352e-08 [GeV] -Cell[13,33] 7.5899850344285e-08 [GeV] -Cell[12,44] 0.00012600758113774 [GeV] -Cell[9,47] 0.01987853672186 [GeV] -Cell[11,45] 0.013529763354499 [GeV] -Cell[11,44] 0.28944382098235 [GeV] -Cell[9,6] 7.2782654919365e-05 [GeV] -Cell[12,32] 0.00043087451011161 [GeV] -Cell[18,32] 0.00040529350722558 [GeV] -Cell[9,4] 1.0157486940443e-09 [GeV] -Cell[14,47] 0.0011492917467436 [GeV] -Cell[13,8] 0.00058962182052096 [GeV] -Cell[11,28] 2.6504276320338e-09 [GeV] -Cell[11,29] 4.7850189730525e-09 [GeV] -Cell[11,37] 1.6007106751204e-12 [GeV] -Cell[11,26] 0.00051075766249312 [GeV] -Cell[6,6] 1.4194453171967e-07 [GeV] -Cell[6,5] 1.510598654022e-07 [GeV] -Cell[15,23] 0.0011692974607326 [GeV] -Cell[14,46] 0.00060244733908619 [GeV] -Cell[12,33] 8.0944522924256e-06 [GeV] -Cell[9,5] 8.6569881301671e-05 [GeV] -Cell[11,13] 0.00088655453901866 [GeV] -Cell[5,6] 0.0021108516218023 [GeV] -Cell[5,5] 7.8580342233181e-13 [GeV] -Cell[11,43] 0.022753083809831 [GeV] -Cell[12,45] 0.0020728003121244 [GeV] -Cell[12,46] 4.06454637141e-05 [GeV] -Cell[13,43] 3.8108362673483e-08 [GeV] -Cell[11,47] 0.00042694576639587 [GeV] -Cell[11,46] 0.0011542006722754 [GeV] -Cell[12,43] 0.00011637718696693 [GeV] -Cell[10,0] 0.00025548625143779 [GeV] -Cell[10,1] 0.00034119956116433 [GeV] -Cell[10,47] 0.0054400162121304 [GeV] -Cell[13,17] 3.0292027857968e-06 [GeV] -Cell[12,47] 4.6629860298708e-06 [GeV] -Cell[10,37] 1.2611738725354e-08 [GeV] -Cell[11,42] 0.0079518000576157 [GeV] -Cell[12,42] 0.00028679388888861 [GeV] -Cell[11,41] 0.0011274166031321 [GeV] -Cell[12,41] 7.517940602952e-06 [GeV] -Cell[10,42] 0.00086094677554092 [GeV] -Cell[10,43] 0.0017397715714114 [GeV] -Cell[11,40] 0.0043266094717555 [GeV] -Cell[16,9] 5.8360549446661e-06 [GeV] -Cell[16,8] 0.00092882950059118 [GeV] -Cell[16,7] 7.4124996317551e-06 [GeV] -Cell[17,7] 6.5566966077313e-06 [GeV] -Cell[10,38] 2.7598722112998e-08 [GeV] -Cell[17,6] 1.1833507654956e-05 [GeV] -Cell[12,38] 1.4495800132863e-07 [GeV] -Cell[11,38] 1.4634136424547e-06 [GeV] -Cell[9,1] 0.00010763230490863 [GeV] -Cell[9,0] 0.002408326482055 [GeV] -Cell[13,10] 0.0016048673203591 [GeV] -Cell[10,2] 0.00044319230670033 [GeV] -Cell[10,46] 0.00069256416057362 [GeV] -Cell[13,16] 8.6374344618889e-09 [GeV] -Cell[13,7] 0.0043768751701386 [GeV] -Cell[10,7] 2.3885983100627e-06 [GeV] -Cell[12,12] 6.4373813734164e-07 [GeV] -Cell[12,13] 4.5984052121639e-12 [GeV] -Cell[10,41] 5.5743444245309e-06 [GeV] -Cell[11,15] 0.00084678691441434 [GeV] -Cell[11,14] 2.4535507944051e-05 [GeV] -Cell[11,1] 0.00011309361702274 [GeV] -Cell[11,0] 9.0929858426648e-05 [GeV] -Cell[10,44] 9.9077871184363e-06 [GeV] -Cell[10,3] 1.4521716010449e-06 [GeV] -Cell[9,3] 0.00099266519391404 [GeV] -Cell[9,2] 9.7650737416188e-09 [GeV] -Cell[11,16] 2.2803249885328e-07 [GeV] -### Total energy deposition in calorimeter by a source track in 73 cells : 0.39259413225564 (GeV) +Cell[13,30] 2.1949517496978e-05 [GeV] +Cell[14,35] 2.3683690284315e-06 [GeV] +Cell[14,29] 1.2597406632267e-05 [GeV] +Cell[19,39] 9.8277880624664e-09 [GeV] +Cell[14,11] 0.00015656226911199 [GeV] +Cell[15,6] 3.9418700907845e-09 [GeV] +Cell[13,17] 1.4536340131599e-11 [GeV] +Cell[15,5] 0.00095083899767201 [GeV] +Cell[16,37] 4.2432104237378e-06 [GeV] +Cell[15,3] 0.0036282449353985 [GeV] +Cell[14,12] 0.0018083448958779 [GeV] +Cell[14,13] 0.0056527847619288 [GeV] +Cell[14,14] 0.22204130733655 [GeV] +Cell[14,15] 0.22918587624793 [GeV] +Cell[13,37] 2.4187378585339e-08 [GeV] +Cell[13,43] 0.0019998750678966 [GeV] +Cell[15,12] 0.0021234876416345 [GeV] +Cell[14,16] 0.0087685468479744 [GeV] +Cell[15,16] 0.0038927863707466 [GeV] +Cell[15,15] 0.0093283957520777 [GeV] +Cell[15,17] 0.0011405935582711 [GeV] +Cell[16,15] 0.0028069826145932 [GeV] +Cell[13,39] 2.6969993853072e-06 [GeV] +Cell[15,44] 1.9381350807635e-07 [GeV] +Cell[16,44] 7.4334250473385e-07 [GeV] +Cell[16,43] 5.0570508847159e-10 [GeV] +Cell[17,14] 0.0052180451131493 [GeV] +Cell[17,15] 0.0018627106108527 [GeV] +Cell[15,13] 0.00065427523320545 [GeV] +Cell[13,18] 4.3462176108733e-08 [GeV] +Cell[15,14] 0.021138314629992 [GeV] +Cell[18,41] 0.0013956298938022 [GeV] +Cell[19,7] 3.4850800875574e-07 [GeV] +Cell[19,42] 9.7067981714645e-06 [GeV] +Cell[19,41] 0.0036349876060686 [GeV] +Cell[18,8] 8.0068251330658e-06 [GeV] +Cell[18,7] 3.8000172935426e-08 [GeV] +Cell[17,8] 8.0686502201388e-08 [GeV] +Cell[17,7] 1.0762560350486e-08 [GeV] +Cell[13,29] 0.00032779853652949 [GeV] +Cell[16,13] 6.6276406869292e-09 [GeV] +Cell[16,14] 6.9901618595622e-06 [GeV] +Cell[18,0] 8.6167800473049e-06 [GeV] +Cell[17,0] 2.8118945192546e-06 [GeV] +Cell[13,11] 0.0018377023475617 [GeV] +Cell[13,12] 0.00013452456070274 [GeV] +Cell[13,13] 7.3065643846348e-10 [GeV] +Cell[19,40] 0.0007906773746314 [GeV] +Cell[15,18] 0.0014770174180291 [GeV] +Cell[16,5] 1.3359315971684e-08 [GeV] +Cell[16,6] 7.8059997576929e-11 [GeV] +Cell[14,17] 3.9438049521664e-05 [GeV] +Cell[18,15] 1.4546826527067e-06 [GeV] +Cell[16,4] 2.1456391550601e-08 [GeV] +Cell[19,46] 0.0077471675244163 [GeV] +Cell[19,47] 0.00074908908144494 [GeV] +Cell[19,45] 0.0016912089721979 [GeV] +Cell[19,0] 0.0051950880527221 [GeV] +Cell[19,1] 2.2474503353578e-05 [GeV] +### Total energy deposition in calorimeter by a source track in 59 cells : 0.54748375875598 (GeV) -Source track ID 4843 (gamma,0.062293140479318[GeV]) at (-277.09241609151,416.1968199597,226.7007380347) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999107172467e-08 mm long + and its vector is (8.164113296516007e-08,-7.773792276566382e-09,-5.722142759623239e-08) mm + Endpoint of ComputeStep() was (472.4697100522854,243.154463466897,818.1804591156791) + and current position to locate is (472.4697101339266,243.1544634591232,818.1804590584577) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998143445529e-08 mm long + and its vector is (-3.511769364195061e-08,8.349633162652026e-08,4.236869699525414e-08) mm + Endpoint of ComputeStep() was (-489.2300594083875,-420.0762052657984,-458.7485386788404) + and current position to locate is (-489.2300594435052,-420.0762051823021,-458.7485386364717) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000062201161e-07 mm long + and its vector is (5.348965714802034e-09,9.921268429025076e-08,1.132400484493701e-08) mm + Endpoint of ComputeStep() was (-537.0425991543385,-222.4503282388215,-588.1621959055536) + and current position to locate is (-537.0425991489896,-222.4503281396088,-588.1621958942296) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000168564297e-07 mm long + and its vector is (3.340903731441358e-08,-8.736014933674596e-08,3.538423243298894e-08) mm + Endpoint of ComputeStep() was (-501.2540377933256,-274.4824746766435,-567.4777895996501) + and current position to locate is (-501.2540377599165,-274.4824747640037,-567.4777895642659) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997691348518e-08 mm long + and its vector is (-3.92012680094922e-08,6.177121747441561e-08,-6.81731080476311e-08) mm + Endpoint of ComputeStep() was (539.8904502413833,60.9128105342235,-294.2546202447729) + and current position to locate is (539.890450202182,60.91281059599471,-294.254620312946) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000237025757e-07 mm long + and its vector is (-8.939139206631808e-08,-4.177900336799212e-08,-1.623880052648019e-08) mm + Endpoint of ComputeStep() was (-608.0966072824452,-164.6770053441049,-587.4335535134442) + and current position to locate is (-608.0966073718366,-164.6770053858839,-587.433553529683) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999122090801e-08 mm long + and its vector is (7.407680868709576e-08,3.674352910820744e-08,-5.623644483421231e-08) mm + Endpoint of ComputeStep() was (405.9151818827028,371.1237866665538,-432.5661273305464) + and current position to locate is (405.9151819567796,371.1237867032973,-432.5661273867828) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000175563827e-07 mm long + and its vector is (-6.880804903630633e-08,1.602063548489241e-08,7.077284180923016e-08) mm + Endpoint of ComputeStep() was (528.8014687205987,-337.806741934064,-400.0000000707728) + and current position to locate is (528.8014686517906,-337.8067419180433,-400) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999217248991e-08 mm long + and its vector is (-3.610830390243791e-08,-8.738436463318067e-08,-3.256012348629156e-08) mm + Endpoint of ComputeStep() was (255.8964864092349,575.6882736016954,-89.60200632220375) + and current position to locate is (255.8964863731266,575.688273514311,-89.60200635476387) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000117443936e-07 mm long + and its vector is (8.794529549049912e-08,-3.499735612422228e-08,-3.226162448299874e-08) mm + Endpoint of ComputeStep() was (442.8272534162534,324.4445053891111,-104.4470163149177) + and current position to locate is (442.8272535041987,324.4445053541137,-104.4470163471793) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 6589 (pi+,0.42850901473179[GeV]) at (-368.58050219501,-337.85857011725,-467.54240738245) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[11,15] 0.00096595628988839 [GeV] -Cell[11,16] 0.061006237753737 [GeV] -Cell[16,26] 0.000161268577299 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.062133462620924 (GeV) +Cell[8,6] 7.7806710032746e-06 [GeV] +Cell[9,8] 8.2797194750128e-08 [GeV] +Cell[9,7] 1.6628468086424e-05 [GeV] +Cell[7,6] 0.00055175335374281 [GeV] +Cell[7,26] 0.0027782332802544 [GeV] +Cell[7,27] 0.008889370253699 [GeV] +Cell[7,28] 0.082158800607364 [GeV] +Cell[7,5] 0.0004701236770444 [GeV] +Cell[10,31] 0.0004413168147305 [GeV] +Cell[14,2] 7.5774673787237e-06 [GeV] +Cell[14,3] 0.0003158882825486 [GeV] +Cell[6,29] 4.948299074124e-05 [GeV] +Cell[7,29] 0.083384559741751 [GeV] +Cell[7,43] 1.5079940203577e-07 [GeV] +Cell[6,28] 0.13442564423167 [GeV] +Cell[6,27] 0.0022244635003471 [GeV] +Cell[10,30] 1.3538777595386e-05 [GeV] +Cell[6,26] 1.3954194000689e-05 [GeV] +Cell[8,42] 0.00043636304371648 [GeV] +Cell[6,23] 9.7534419037402e-06 [GeV] +Cell[8,0] 6.2640674861996e-06 [GeV] +Cell[8,1] 2.0150548607489e-10 [GeV] +Cell[8,43] 3.8131860318344e-06 [GeV] +Cell[6,19] 5.1222596084699e-08 [GeV] +Cell[13,42] 0.0017055720462089 [GeV] +Cell[12,3] 1.9784702919424e-05 [GeV] +Cell[13,41] 2.879087513179e-06 [GeV] +Cell[13,3] 0.0002722487295938 [GeV] +Cell[10,6] 1.3316160591785e-05 [GeV] +Cell[7,19] 1.2719098594971e-07 [GeV] +Cell[7,25] 1.1872653658429e-08 [GeV] +Cell[9,5] 0.0052105075583009 [GeV] +Cell[9,4] 0.0026479534098057 [GeV] +### Total energy deposition in calorimeter by a source track in 33 cells : 0.32607799583037 (GeV) -Source track ID 4844 (gamma,0.18169391742921[GeV]) at (418.45378509598,273.67212086518,279.34343480401) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999234632609e-08 mm long + and its vector is (-9.772048770173569e-08,-1.441952690584003e-08,1.558146323077381e-08) mm + Endpoint of ComputeStep() was (-441.6941838284169,327.7289244105178,-705.4471107910961) + and current position to locate is (-441.6941839261374,327.7289243960983,-705.4471107755146) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000146907902e-07 mm long + and its vector is (4.688604349212255e-08,6.547607966922442e-08,5.928393420617795e-08) mm + Endpoint of ComputeStep() was (-567.2021669124566,60.20212953903226,880.1084204559561) + and current position to locate is (-567.2021668655706,60.20212960450834,880.10842051524) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997268608127e-08 mm long + and its vector is (-7.406799795717234e-08,4.313517365517328e-08,5.151002824277384e-08) mm + Endpoint of ComputeStep() was (577.6898480409047,-297.950397854672,444.8844729562611) + and current position to locate is (577.6898479668367,-297.9503978115368,444.8844730077711) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000266010999e-07 mm long + and its vector is (-8.378589200219722e-08,-2.197299409090192e-08,4.997116320737405e-08) mm + Endpoint of ComputeStep() was (459.6986346390902,-287.4521598181254,374.5610924763252) + and current position to locate is (459.6986345553044,-287.4521598400984,374.5610925262964) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997611017367e-08 mm long + and its vector is (-9.53093604039168e-08,-2.98887812277826e-08,4.773028194904327e-09) mm + Endpoint of ComputeStep() was (334.1512762077104,371.9447871589117,1801.207959448474) + and current position to locate is (334.151276112401,371.9447871290229,1801.207959453247) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998015348831e-08 mm long + and its vector is (-8.766738801568863e-08,2.995460590682342e-08,-3.764500888792099e-08) mm + Endpoint of ComputeStep() was (506.5144603350874,-282.5652165026564,371.5370978547008) + and current position to locate is (506.51446024742,-282.5652164727018,371.5370978170558) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999277946933e-08 mm long + and its vector is (2.58419277088251e-08,2.472051363611172e-08,-9.338677386949712e-08) mm + Endpoint of ComputeStep() was (594.0642430231443,-52.18874229943727,221.9799045469047) + and current position to locate is (594.0642430489862,-52.18874227471675,221.9799044535179) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000118276247e-07 mm long + and its vector is (6.082018444431014e-09,3.756861133297207e-08,9.247492016584147e-08) mm + Endpoint of ComputeStep() was (-510.713939871184,-424.6393680068887,-1400.000000092475) + and current position to locate is (-510.713939865102,-424.6393679693201,-1400) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000273473111e-07 mm long + and its vector is (3.741320142580662e-09,-1.359117618449091e-08,9.9001454145764e-08) mm + Endpoint of ComputeStep() was (-671.5428295766942,-46.48321343121705,-800.0000000990015) + and current position to locate is (-671.5428295729529,-46.48321344480822,-800) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997486851792e-08 mm long + and its vector is (4.710284429165768e-08,2.707307089622191e-08,8.395454642595723e-08) mm + Endpoint of ComputeStep() was (-675.0946316678943,39.55780673142319,-604.5296744945725) + and current position to locate is (-675.0946316207915,39.55780675849626,-604.529674410618) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000035625436e-07 mm long + and its vector is (7.094229204085423e-08,-7.047422989537301e-08,7.581775207654573e-10) mm + Endpoint of ComputeStep() was (536.1564379409687,7.047389904891167e-08,-751.3706339932813) + and current position to locate is (536.156438011911,-3.308464613382966e-13,-751.3706339925232) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 6590 (kaon-,0.64444172853688[GeV]) at (453.38403653293,-210.81488423995,318.73298974178) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[11,5] 0.0053099429022101 [GeV] -Cell[11,4] 0.176383974527 [GeV] -### Total energy deposition in calorimeter by a source track in 2 cells : 0.18169391742921 (GeV) +Cell[7,27] 0.00078378552238019 [GeV] +Cell[6,18] 5.0362794718239e-06 [GeV] +Cell[2,32] 3.8913112948649e-06 [GeV] +Cell[7,24] 0.00043429919133837 [GeV] +Cell[6,0] 4.6709530253111e-06 [GeV] +Cell[6,24] 0.016346724756694 [GeV] +Cell[6,25] 0.0047815798362376 [GeV] +Cell[11,33] 0.005901908442294 [GeV] +Cell[19,21] 0.00038690330942995 [GeV] +Cell[11,32] 3.4450611565262e-08 [GeV] +Cell[12,32] 0.0049766815038604 [GeV] +Cell[12,33] 0.00039667809508467 [GeV] +Cell[10,32] 0.001469057437313 [GeV] +Cell[15,6] 3.1485139863435e-05 [GeV] +Cell[12,29] 0.00011099461136655 [GeV] +Cell[12,27] 0.0036820820976098 [GeV] +Cell[12,45] 0.00028137675408266 [GeV] +Cell[10,47] 1.3278413781563e-06 [GeV] +Cell[12,44] 4.477629889675e-05 [GeV] +Cell[8,24] 1.1691459367285e-05 [GeV] +Cell[15,21] 0.0010278728312206 [GeV] +Cell[15,22] 0.0015968364603474 [GeV] +Cell[0,6] 0.0023881028273446 [GeV] +Cell[14,14] 6.9902947579976e-06 [GeV] +Cell[6,26] 6.8712785946445e-08 [GeV] +Cell[11,47] 0.00021262338960844 [GeV] +Cell[2,27] 0.002038795071198 [GeV] +Cell[2,26] 0.0012723137307748 [GeV] +Cell[0,5] 1.4106605667621e-06 [GeV] +Cell[3,30] 0.00040210076397341 [GeV] +Cell[4,8] 4.7832298150752e-06 [GeV] +Cell[6,23] 6.6932082177118e-08 [GeV] +Cell[6,43] 1.6226480022397e-07 [GeV] +Cell[3,29] 5.070944893896e-05 [GeV] +Cell[6,19] 0.00034152914057711 [GeV] +Cell[5,0] 0.00020661481515117 [GeV] +Cell[6,47] 3.4749427868519e-10 [GeV] +Cell[14,4] 3.9163509209175e-06 [GeV] +Cell[11,45] 0.066596366658509 [GeV] +Cell[11,43] 1.0967522712235e-09 [GeV] +Cell[12,43] 1.1990358651701e-06 [GeV] +Cell[11,44] 0.27816340964493 [GeV] +Cell[13,22] 6.4691858133301e-06 [GeV] +Cell[12,40] 1.2700669059996e-05 [GeV] +Cell[14,47] 1.3553017663071e-05 [GeV] +Cell[14,41] 3.7677695509046e-06 [GeV] +Cell[15,15] 3.4730845072772e-06 [GeV] +Cell[15,41] 5.7838224165607e-06 [GeV] +Cell[13,29] 3.7713194033131e-06 [GeV] +Cell[7,25] 0.0011961878076645 [GeV] +Cell[15,7] 4.4816331064794e-06 [GeV] +Cell[14,23] 0.0010546644755401 [GeV] +Cell[17,2] 7.4371933296788e-06 [GeV] +Cell[19,22] 2.6791307163876e-08 [GeV] +Cell[0,7] 0.00011762119615923 [GeV] +Cell[2,29] 1.7965105139524e-05 [GeV] +Cell[9,15] 1.9632113253465e-05 [GeV] +Cell[6,42] 7.9086974096754e-07 [GeV] +### Total energy deposition in calorimeter by a source track in 58 cells : 0.39643918505368 (GeV) -Source track ID 4808 (kaon+,1.7504224218304[GeV]) at (75.875520674081,494.20937401312,1962.2605325294) +Source track ID 6511 (gamma,0.062293140479318[GeV]) at (-277.09242636582,416.19681311935,226.70073109268) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[19,10] 0.04621374304738 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.04621374304738 (GeV) +Cell[11,15] 0.0037603779016303 [GeV] +Cell[12,37] 0.001757614494741 [GeV] +Cell[13,38] 0.00051099891 [GeV] +Cell[11,16] 0.056264149172946 [GeV] +### Total energy deposition in calorimeter by a source track in 4 cells : 0.062293140479318 (GeV) -Source track ID 4793 (mu-,0.44499628436411[GeV]) at (-499.97212507701,-5.2795971415967,-214.85330216951) +Source track ID 6557 (gamma,0.0038875209005627[GeV]) at (378.8820215207,326.26433113104,282.69962436642) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[8,24] 0.10916568977303 [GeV] -Cell[8,26] 0.052210327499394 [GeV] -Cell[8,25] 0.18991307820277 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.35128909547519 (GeV) +Cell[11,5] 0.0038875209005627 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0038875209005627 (GeV) -Source track ID 4789 (gamma,0.43032370642417[GeV]) at (-193.66746487136,460.96953592434,1404.1020494571) +Source track ID 6558 (gamma,0.037711126165256[GeV]) at (376.6311008867,328.8601736983,278.59954814418) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[17,16] 0.0057994999099466 [GeV] -Cell[17,15] 0.39592855361806 [GeV] -Cell[14,39] 0.0010407383022348 [GeV] -Cell[18,38] 0.0021791634896574 [GeV] -Cell[17,40] 0.00043499591079385 [GeV] -Cell[15,35] 0.00038307466038919 [GeV] -Cell[16,16] 0.0005774911762164 [GeV] -Cell[17,18] 0.0012157336555634 [GeV] -Cell[15,4] 0.00026825133599356 [GeV] -Cell[17,14] 0.018838200737592 [GeV] -Cell[15,3] 0.00024274757400644 [GeV] -### Total energy deposition in calorimeter by a source track in 11 cells : 0.42690845037046 (GeV) +Cell[11,5] 0.014131726290878 [GeV] +Cell[11,6] 0.023579399874378 [GeV] +### Total energy deposition in calorimeter by a source track in 2 cells : 0.037711126165256 (GeV) -Source track ID 4790 (gamma,0.84468519705162[GeV]) at (143.95469139339,478.82882831533,1448.6318349002) +Source track ID 6559 (gamma,0.00029103124402118[GeV]) at (375.43667610193,330.22310978721,278.51025884882) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[17,30] 0.00032534410754801 [GeV] -Cell[14,31] 0.0003788440539308 [GeV] -Cell[9,25] 0.0012619579214268 [GeV] -Cell[18,38] 0.0030038613520479 [GeV] -Cell[18,9] 0.0054535139949431 [GeV] -Cell[18,10] 0.00051099891 [GeV] -Cell[17,10] 0.025737501593809 [GeV] -Cell[17,11] 0.0020957928652654 [GeV] -Cell[18,2] 0.0016133715163419 [GeV] -Cell[16,42] 0.0019112675730841 [GeV] -Cell[16,41] 0.0004971298370209 [GeV] -Cell[17,12] 0.0019775411570301 [GeV] -Cell[18,0] 0.0027067004891733 [GeV] -Cell[17,9] 0.73404168554265 [GeV] -Cell[17,29] 0.00044869724916131 [GeV] -Cell[15,28] 0.0034958224210872 [GeV] -Cell[17,8] 0.0023684254197129 [GeV] -Cell[19,21] 0.00041224537997722 [GeV] -### Total energy deposition in calorimeter by a source track in 18 cells : 0.78824070138421 (GeV) +Cell[11,5] 0.00029103124402118 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.00029103124402118 (GeV) -Source track ID 4689 (pi-,1.1276732787278[GeV]) at (-499.80487824365,13.967236084889,980.45713413016) +Source track ID 6562 (gamma,0.00012906147535555[GeV]) at (-483.62764111288,-126.90273736838,640.24589863748) Original primary track ID 25 (unknown,7.7728456153487[GeV]) -Cell[11,7] 0.00010785099099098 [GeV] -Cell[15,41] 0.00011276709971844 [GeV] -Cell[14,25] 3.3386014592907e-09 [GeV] -Cell[12,30] 2.8149815334473e-06 [GeV] -Cell[14,22] 0.0071467696025839 [GeV] -Cell[14,21] 0.0058355497793003 [GeV] -Cell[15,42] 0.00032755602886186 [GeV] -Cell[10,35] 4.572072487008e-08 [GeV] -Cell[10,36] 4.8842106155689e-05 [GeV] -Cell[14,28] 5.2709801821038e-08 [GeV] -Cell[15,23] 0.087834223054951 [GeV] -Cell[16,12] 2.5434441587322e-06 [GeV] -Cell[11,8] 0.00069624629803934 [GeV] -Cell[12,46] 0.0022245672883289 [GeV] -Cell[12,47] 1.2610689736903e-10 [GeV] -Cell[12,1] 4.8812362365425e-09 [GeV] -Cell[12,0] 6.8183580879122e-09 [GeV] -Cell[19,39] 0.0007126439268369 [GeV] -Cell[16,22] 0.00052470032841908 [GeV] -Cell[15,25] 0.016069579918329 [GeV] -Cell[18,36] 0.0011519119570736 [GeV] -Cell[15,21] 1.1753595238133e-05 [GeV] -Cell[16,42] 7.9666987586734e-05 [GeV] -Cell[15,20] 0.0010197070902281 [GeV] -Cell[14,16] 6.8975842441432e-07 [GeV] -Cell[14,23] 0.033938329359778 [GeV] -Cell[15,24] 0.65816589250863 [GeV] -Cell[16,24] 0.032503745960873 [GeV] -Cell[12,14] 0.00039647629542003 [GeV] -Cell[12,15] 1.1792564806683e-06 [GeV] -Cell[15,26] 5.8394292182129e-08 [GeV] -Cell[15,46] 0.0015884610966509 [GeV] -Cell[14,24] 0.00032874698400429 [GeV] -Cell[14,10] 1.4409475552384e-06 [GeV] -Cell[11,18] 0.0040080277300823 [GeV] -Cell[11,17] 1.2780537922595e-05 [GeV] -Cell[15,22] 0.0025659958589984 [GeV] -Cell[16,23] 0.0063265664219565 [GeV] -Cell[16,25] 0.013055320259863 [GeV] -### Total energy deposition in calorimeter by a source track in 39 cells : 0.8768035194441 (GeV) +Cell[13,25] 0.00012906147535555 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.00012906147535555 (GeV) -Source track ID 4677 (gamma,0.21259862372436[GeV]) at (298.67436080885,-400.99080562455,-1192.0290258344) +Source track ID 6513 (e-,0.072072031451118[GeV]) at (480.27888047297,139.04027104271,1180.3589242848) +Original primary track ID 25 (unknown,7.7728456153487[GeV]) +Cell[12,33] 1.8050230977979e-05 [GeV] +Cell[16,36] 0.00095922877549137 [GeV] +Cell[16,47] 0.0026046652636291 [GeV] +Cell[16,1] 0.00054481998441772 [GeV] +Cell[15,1] 0.020604706704552 [GeV] +Cell[15,2] 0.043089991853845 [GeV] +Cell[19,32] 0.00031061984197873 [GeV] +Cell[18,31] 0.000366384535622 [GeV] +Cell[18,41] 0.0014031632785429 [GeV] +### Total energy deposition in calorimeter by a source track in 9 cells : 0.069901630469057 (GeV) + +Source track ID 6518 (gamma,0.00095121024778452[GeV]) at (-405.76646559374,-292.15334227005,882.95270808583) +Original primary track ID 25 (unknown,7.7728456153487[GeV]) +Cell[14,28] 0.00095121024778452 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.00095121024778452 (GeV) + +Source track ID 6514 (e+,0.045356586503611[GeV]) at (443.70708122926,230.48649866535,1071.2174647968) +Original primary track ID 25 (unknown,7.7728456153487[GeV]) +Cell[15,2] 0.0015637161903991 [GeV] +Cell[15,3] 0.042650471825164 [GeV] +Cell[17,27] 0.00051099891 [GeV] +Cell[15,39] 0.00067162402561688 [GeV] +Cell[17,36] 0.00047077446243086 [GeV] +### Total energy deposition in calorimeter by a source track in 5 cells : 0.045867585413611 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000324059027e-07 mm long + and its vector is (7.98355017650465e-08,4.451356971912901e-08,-4.05566424888093e-08) mm + Endpoint of ComputeStep() was (238.1289499723086,490.0624937294671,1959.9419049036) + and current position to locate is (238.1289500521441,490.0624937739807,1959.941904863043) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000104679346e-07 mm long + and its vector is (-6.755504955435754e-08,-5.920662715652725e-08,-4.394192387735529e-08) mm + Endpoint of ComputeStep() was (496.1833734730415,380.7348934596783,167.0529137618803) + and current position to locate is (496.1833734054865,380.7348934004717,167.0529137179383) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999225050966e-08 mm long + and its vector is (-9.24439120808529e-08,-2.844598157025757e-08,-2.539582055760548e-08) mm + Endpoint of ComputeStep() was (-190.3775213086055,510.0485788513189,1875.403866737205) + and current position to locate is (-190.3775214010494,510.0485788228729,1875.403866711809) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 6497 (kaon+,1.7504675224731[GeV]) at (76.375208301621,494.1323988132,1961.6800605346) +Original primary track ID 25 (unknown,7.7728456153487[GeV]) +Cell[15,6] 0.0018524953193541 [GeV] +Cell[14,27] 0.00048938435564894 [GeV] +Cell[17,42] 0.00048130710992109 [GeV] +Cell[15,10] 0.0017885809741778 [GeV] +Cell[14,42] 0.0009795943283178 [GeV] +Cell[18,41] 3.0740664001087e-05 [GeV] +Cell[19,41] 0.003182293396605 [GeV] +Cell[18,7] 0.00014141494540183 [GeV] +Cell[19,40] 0.0013435883903129 [GeV] +Cell[19,10] 0.30267260834008 [GeV] +Cell[19,9] 0.00063857888649318 [GeV] +Cell[19,8] 5.282114466354e-08 [GeV] +Cell[10,4] 0.00014917893492225 [GeV] +Cell[10,5] 1.4965288274084e-05 [GeV] +Cell[19,14] 0.0022441375754581 [GeV] +Cell[19,15] 0.0030216505872182 [GeV] +Cell[18,42] 0.00067465574170205 [GeV] +Cell[19,11] 0.24002458595197 [GeV] +Cell[19,12] 0.00032902588960554 [GeV] +### Total energy deposition in calorimeter by a source track in 19 cells : 0.56005883950061 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000174347785e-07 mm long + and its vector is (3.275226845289581e-08,9.393967559390148e-08,-1.01306341093732e-08) mm + Endpoint of ComputeStep() was (-610.8243839916208,71.46646187197686,-374.6009102417162) + and current position to locate is (-610.8243839588686,71.46646196591654,-374.6009102518468) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997355821683e-08 mm long + and its vector is (3.438462670146691e-08,3.133857262582751e-08,8.851884558680467e-08) mm + Endpoint of ComputeStep() was (-74.49044402512959,-527.3572449949959,-298.8769852594033) + and current position to locate is (-74.49044399074496,-527.3572449636573,-298.8769851708844) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000133577804e-07 mm long + and its vector is (5.073673037259141e-08,-4.841730572024971e-08,-7.128500101316604e-08) mm + Endpoint of ComputeStep() was (-597.4847412374731,-51.65802824589128,-297.779807241241) + and current position to locate is (-597.4847411867364,-51.65802829430859,-297.779807312526) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000530315617e-07 mm long + and its vector is (-1.939991989274858e-08,-8.501649517711485e-08,-4.89474132336909e-08) mm + Endpoint of ComputeStep() was (386.6676923913842,522.4826272370823,1025.415073161416) + and current position to locate is (386.6676923719843,522.4826271520658,1025.415073112469) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000501754235e-07 mm long + and its vector is (4.138804143849484e-08,-9.034044978761813e-08,1.120906745200045e-08) mm + Endpoint of ComputeStep() was (-54.69341816745489,547.2738163959328,-628.5368810081136) + and current position to locate is (-54.69341812606685,547.2738163055924,-628.5368809969045) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000027179757e-07 mm long + and its vector is (-5.089168553240597e-08,-8.558549779991154e-08,9.228187991539016e-09) mm + Endpoint of ComputeStep() was (504.191132128902,219.752821077477,707.2931233362843) + and current position to locate is (504.1911320780104,219.7528209918915,707.2931233455125) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000078055764e-07 mm long + and its vector is (8.50367314342293e-08,-2.741984417298227e-09,5.254747748040245e-08) mm + Endpoint of ComputeStep() was (-628.329958734634,-146.6152687011588,-470.4492841010045) + and current position to locate is (-628.3299586495973,-146.6152687039008,-470.4492840484571) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000394239945e-07 mm long + and its vector is (-1.327384779870044e-08,-2.348070893276599e-08,-9.629366104491055e-08) mm + Endpoint of ComputeStep() was (-385.8918536320494,384.8854997061189,-1263.90273732139) + and current position to locate is (-385.8918536453233,384.8854996826382,-1263.902737417683) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995986331692e-08 mm long + and its vector is (-1.978969521587715e-08,-8.626536285305519e-08,4.654725671571214e-08) mm + Endpoint of ComputeStep() was (-512.8614572471774,-28.3809432993767,-1940.966977617906) + and current position to locate is (-512.8614572669671,-28.38094338564207,-1940.966977571359) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000267830472e-07 mm long + and its vector is (1.939952198881656e-09,-8.746951607463416e-09,9.95978552964516e-08) mm + Endpoint of ComputeStep() was (-679.3208513510756,409.9384884996318,-288.0628359577841) + and current position to locate is (-679.3208513491356,409.9384884908848,-288.0628358581862) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998743492455e-08 mm long + and its vector is (-2.67933728537173e-08,-8.73293402037234e-08,4.069028136655106e-08) mm + Endpoint of ComputeStep() was (-600.6411076602067,128.0816218785382,-347.3837331415172) + and current position to locate is (-600.641107687,128.0816217912088,-347.3837331008269) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997271745598e-08 mm long + and its vector is (9.755586916071479e-08,8.570907539251493e-09,-2.023330125666689e-08) mm + Endpoint of ComputeStep() was (411.9030704790921,-459.3324465292094,-1231.904937022275) + and current position to locate is (411.903070576648,-459.3324465206385,-1231.904937042508) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995302175423e-08 mm long + and its vector is (-8.478457402816275e-08,6.944063102309883e-09,5.256754320726031e-08) mm + Endpoint of ComputeStep() was (-615.6759417382008,-81.05527545241219,-324.3958482343695) + and current position to locate is (-615.6759418229854,-81.05527544546813,-324.395848181802) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000008186594e-07 mm long + and its vector is (-1.908972535602516e-08,6.504136962348639e-08,-7.352008424277301e-08) mm + Endpoint of ComputeStep() was (-537.7181007006948,41.21086293117215,-322.0009467402649) + and current position to locate is (-537.7181007197845,41.21086299621352,-322.000946813785) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000223982519e-07 mm long + and its vector is (6.801519703003578e-08,5.392053026298527e-08,-4.966400979355967e-08) mm + Endpoint of ComputeStep() was (-736.5360036870436,-88.09112020256471,-201.9964199092635) + and current position to locate is (-736.5360036190284,-88.09112014864418,-201.9964199589275) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000005613237e-07 mm long + and its vector is (2.276271970913513e-08,-8.995891676022438e-08,3.72726844943827e-08) mm + Endpoint of ComputeStep() was (-568.9208778171463,190.601770306471,-351.0151689282148) + and current position to locate is (-568.9208777943836,190.6017702165121,-351.0151688909421) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999693304284e-08 mm long + and its vector is (2.704473445191979e-08,2.988593905683956e-08,9.151727908829344e-08) mm + Endpoint of ComputeStep() was (-671.1174660379394,128.1215552767741,-406.9528901194449) + and current position to locate is (-671.1174660108946,128.12155530666,-406.9528900279277) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996884738049e-08 mm long + and its vector is (-1.702574081718922e-08,-8.51324557515909e-08,4.962441835232312e-08) mm + Endpoint of ComputeStep() was (-508.2789055553477,289.6272950981308,-384.7244530885069) + and current position to locate is (-508.2789055723734,289.6272950129984,-384.7244530388825) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000290603944e-07 mm long + and its vector is (8.836650522425771e-08,-3.201364506821847e-09,4.670243924920214e-08) mm + Endpoint of ComputeStep() was (-619.2834784234145,280.870029485245,-287.6949407740485) + and current position to locate is (-619.283478335048,280.8700294820437,-287.694940727346) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000025055947e-07 mm long + and its vector is (-5.31068167219928e-08,6.091048021517054e-08,-5.890314014322939e-08) mm + Endpoint of ComputeStep() was (-474.4973615218754,236.3499785635074,-258.8825969225375) + and current position to locate is (-474.4973615749822,236.3499786244178,-258.8825969814406) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 6392 (pi-,0.45585343941336[GeV]) at (-499.77281076007,-15.071085726493,-209.11209952699) +Original primary track ID 25 (unknown,7.7728456153487[GeV]) +Cell[9,10] 2.2665950877126e-05 [GeV] +Cell[8,33] 1.0074618330691e-06 [GeV] +Cell[7,26] 0.0006258222600993 [GeV] +Cell[7,27] 0.0011343535427396 [GeV] +Cell[8,23] 0.020499659332914 [GeV] +Cell[7,28] 0.0015861741491248 [GeV] +Cell[7,4] 0.000510098678189 [GeV] +Cell[7,20] 0.0010164703679704 [GeV] +Cell[8,37] 2.0095691143069e-06 [GeV] +Cell[8,34] 2.301708633604e-05 [GeV] +Cell[9,25] 0.0002557616380351 [GeV] +Cell[8,20] 0.002491784868199 [GeV] +Cell[8,38] 3.5302028700244e-06 [GeV] +Cell[8,19] 0.0063402777543101 [GeV] +Cell[10,10] 1.9300995860249e-05 [GeV] +Cell[15,6] 0.00045332307277204 [GeV] +Cell[13,4] 5.0326975208463e-06 [GeV] +Cell[8,25] 0.019571616362826 [GeV] +Cell[8,32] 8.5362969548441e-07 [GeV] +Cell[8,26] 0.00076764033561644 [GeV] +Cell[8,22] 0.0071399807371856 [GeV] +Cell[8,21] 0.010166008066851 [GeV] +Cell[8,24] 0.16342311682479 [GeV] +Cell[8,27] 0.00033229658465745 [GeV] +Cell[6,12] 1.1706922643953e-06 [GeV] +Cell[6,11] 9.349076388321e-05 [GeV] +Cell[5,29] 0.00044563673511597 [GeV] +Cell[2,17] 5.6891142844506e-06 [GeV] +Cell[15,3] 7.4774317909032e-08 [GeV] +Cell[7,21] 0.00053978999562139 [GeV] +Cell[3,43] 0.0016479264925373 [GeV] +Cell[9,42] 1.7517002706882e-06 [GeV] +Cell[9,24] 0.0018058342359901 [GeV] +Cell[13,36] 7.8709051012993e-06 [GeV] +Cell[0,24] 0.00055899214924841 [GeV] +Cell[1,46] 3.824285522569e-07 [GeV] +Cell[6,19] 3.3213794231415e-06 [GeV] +Cell[7,3] 0.001509943562872 [GeV] +Cell[3,40] 6.3254718627377e-06 [GeV] +Cell[3,41] 0.00016318296915165 [GeV] +Cell[0,44] 8.1971822946798e-06 [GeV] +Cell[3,18] 3.9799488149583e-12 [GeV] +Cell[3,42] 0.0043183833921571 [GeV] +Cell[3,17] 0.0023978395115647 [GeV] +Cell[10,3] 0.002921435361096 [GeV] +Cell[13,3] 4.3792902692985e-07 [GeV] +Cell[7,19] 2.8247984712607e-05 [GeV] +Cell[7,25] 0.00015758683599472 [GeV] +Cell[15,7] 5.8474595570033e-05 [GeV] +Cell[15,9] 1.7170798557345e-05 [GeV] +Cell[15,8] 0.0001630331350907 [GeV] +Cell[5,11] 1.5731377061456e-06 [GeV] +Cell[6,10] 1.9897985330317e-06 [GeV] +Cell[16,27] 1.0539253707975e-07 [GeV] +Cell[1,47] 5.6756371050142e-06 [GeV] +Cell[7,23] 0.00011591211515621 [GeV] +Cell[8,18] 0.0013924786872447 [GeV] +Cell[7,22] 0.0015260513865122 [GeV] +Cell[9,21] 1.0153315088246e-08 [GeV] +Cell[9,20] 7.8676998782612e-10 [GeV] +### Total energy deposition in calorimeter by a source track in 60 cells : 0.25629778936581 (GeV) + +Source track ID 6487 (gamma,0.43032370642417[GeV]) at (-193.66745957844,460.96953814806,1404.1020560524) +Original primary track ID 25 (unknown,7.7728456153487[GeV]) +Cell[19,39] 0.0019613958091107 [GeV] +Cell[17,9] 0.00026283661787288 [GeV] +Cell[15,28] 0.00030236673391102 [GeV] +Cell[17,30] 0.0040625531768195 [GeV] +Cell[15,34] 0.00051099891 [GeV] +Cell[15,46] 0.0011694771342993 [GeV] +Cell[17,14] 0.1607248603213 [GeV] +Cell[17,15] 0.24320750901589 [GeV] +Cell[19,30] 0.00034158431552426 [GeV] +Cell[17,8] 0.00097135202211491 [GeV] +Cell[16,13] 0.0033460595124167 [GeV] +Cell[16,14] 0.0015858177822667 [GeV] +Cell[18,28] 0.00060081612156557 [GeV] +Cell[19,43] 0.00017339690617757 [GeV] +Cell[19,31] 0.0009434411542395 [GeV] +Cell[18,36] 0.0022150648110016 [GeV] +Cell[19,29] 4.8892684232092e-05 [GeV] +### Total energy deposition in calorimeter by a source track in 17 cells : 0.42242842302874 (GeV) + +Source track ID 6488 (gamma,0.84468519705162[GeV]) at (143.95468851348,478.82882918115,1448.6318376094) +Original primary track ID 25 (unknown,7.7728456153487[GeV]) +Cell[18,5] 0.00052075351217955 [GeV] +Cell[17,11] 0.00022618338263085 [GeV] +Cell[16,29] 0.0024090831494076 [GeV] +Cell[17,10] 0.017840954973065 [GeV] +Cell[17,9] 0.77490510130337 [GeV] +Cell[18,30] 0.00067615343694291 [GeV] +Cell[18,39] 0.00051099891 [GeV] +Cell[17,8] 0.0010419009786935 [GeV] +Cell[19,14] 0.0021337282922838 [GeV] +Cell[17,5] 0.00061250316747844 [GeV] +Cell[18,9] 0.029371012228251 [GeV] +Cell[19,44] 0.0024875372039296 [GeV] +Cell[19,25] 0.0087268754137328 [GeV] +### Total energy deposition in calorimeter by a source track in 13 cells : 0.84146278595197 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000377095081e-07 mm long + and its vector is (-8.475342383462703e-08,-5.280545423147487e-08,5.333731678547338e-09) mm + Endpoint of ComputeStep() was (-728.9914322020092,-38.36002670024173,1344.589597121809) + and current position to locate is (-728.9914322867626,-38.36002675304718,1344.589597127143) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995395090204e-08 mm long + and its vector is (-3.617492438934278e-08,-6.252611228774185e-08,6.915092853887472e-08) mm + Endpoint of ComputeStep() was (-745.5495753780277,-300.1939639675149,1799.999999930849) + and current position to locate is (-745.5495754142026,-300.1939640300411,1800) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997952078489e-08 mm long + and its vector is (-2.84874204226071e-08,-9.447042259580485e-08,-1.62419837579364e-08) mm + Endpoint of ComputeStep() was (-598.7734381926558,-38.34539964044977,1193.072972350256) + and current position to locate is (-598.7734382211432,-38.34539973492019,1193.072972334014) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998963054407e-08 mm long + and its vector is (1.269165750272805e-08,1.226982249136199e-08,-9.842952408689598e-08) mm + Endpoint of ComputeStep() was (565.3017376862276,301.187392294501,-237.9515624908821) + and current position to locate is (565.3017376989193,301.1873923067708,-237.9515625893116) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999950664195e-08 mm long + and its vector is (6.159908494396404e-08,7.615687991346931e-08,2.014155597862555e-08) mm + Endpoint of ComputeStep() was (-29.25552690625659,579.2616973879872,651.3819923242287) + and current position to locate is (-29.25552684465751,579.261697464144,651.3819923443702) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000758428225e-07 mm long + and its vector is (-2.52905891784394e-08,-2.035551460721763e-08,-9.4583583631902e-08) mm + Endpoint of ComputeStep() was (-86.57749726627365,529.5146575077814,1919.959459335948) + and current position to locate is (-86.57749729156424,529.5146574874259,1919.959459241365) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000481787766e-07 mm long + and its vector is (-7.703329174546525e-08,-6.289519660640508e-08,1.049170350597706e-08) mm + Endpoint of ComputeStep() was (-575.8091144080088,-284.2626285581755,1175.554868313844) + and current position to locate is (-575.8091144850421,-284.2626286210707,1175.554868324336) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998242142169e-08 mm long + and its vector is (9.360383046441711e-08,2.627851358738553e-08,2.340425453439821e-08) mm + Endpoint of ComputeStep() was (-593.4478790371845,-95.89012517742704,1284.721123916496) + and current position to locate is (-593.4478789435807,-95.89012515114852,1284.721123939901) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999668169907e-08 mm long + and its vector is (-9.666780442785239e-08,2.111136154780979e-08,1.447892827854957e-08) mm + Endpoint of ComputeStep() was (627.0248262894402,-394.0691688559978,1177.737488968752) + and current position to locate is (627.0248261927724,-394.0691688348864,1177.737488983231) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000183238672e-07 mm long + and its vector is (9.39024857871118e-09,9.950809953807038e-08,3.156742423016112e-09) mm + Endpoint of ComputeStep() was (-402.2816179955735,-338.8374384040532,909.5231372759537) + and current position to locate is (-402.2816179861833,-338.8374383045451,909.5231372791104) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997983326273e-08 mm long + and its vector is (-5.319037654771819e-08,2.738443072303198e-08,-8.013034857867751e-08) mm + Endpoint of ComputeStep() was (-344.3474094799575,-592.7830080063759,786.1361399965756) + and current position to locate is (-344.3474095331479,-592.7830079789915,786.1361399164452) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998197567707e-08 mm long + and its vector is (-2.440248181301286e-08,6.123326556917164e-08,-7.519975042669103e-08) mm + Endpoint of ComputeStep() was (-453.2416823303951,-453.2416824160304,976.689218374236) + and current position to locate is (-453.2416823547975,-453.2416823547971,976.6892182990363) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998232518619e-08 mm long + and its vector is (5.248250545264455e-08,4.799660757726087e-08,-7.029871085251216e-08) mm + Endpoint of ComputeStep() was (-589.8720198177057,-44.15852947864035,1204.998582263564) + and current position to locate is (-589.8720197652232,-44.15852943064374,1204.998582193266) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997865020034e-08 mm long + and its vector is (-3.755974375962978e-08,9.22423737392819e-08,8.978076948551461e-09) mm + Endpoint of ComputeStep() was (-683.1598734000743,-97.13177764079899,1139.600466607854) + and current position to locate is (-683.159873437634,-97.13177754855661,1139.600466616832) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995227433112e-08 mm long + and its vector is (-4.54247128800489e-09,9.500659164225395e-09,9.944392331817653e-08) mm + Endpoint of ComputeStep() was (-593.521036537825,-9.500364288990055e-09,1193.301513977206) + and current position to locate is (-593.5210365423675,2.948752353404416e-13,1193.30151407665) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000077251339e-07 mm long + and its vector is (-3.682123406179016e-08,7.307266969291959e-08,-5.748550435669131e-08) mm + Endpoint of ComputeStep() was (506.469398093252,-300.3216800104087,-24.25218536361919) + and current position to locate is (506.4693980564308,-300.3216799373361,-24.25218542110469) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999722786018e-08 mm long + and its vector is (7.585163075418677e-08,6.514332540064061e-08,-1.694616003078409e-09) mm + Endpoint of ComputeStep() was (-767.3021456205347,-140.1692457737721,1365.612424310093) + and current position to locate is (-767.3021455446831,-140.1692457086288,1365.612424308398) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000327812681e-07 mm long + and its vector is (7.553694558737334e-09,-8.315134891745402e-08,5.503454758581938e-08) mm + Endpoint of ComputeStep() was (672.1203052049697,433.8828129727891,968.5518910067475) + and current position to locate is (672.1203052125234,433.8828128896377,968.551891061782) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995270683475e-08 mm long + and its vector is (4.092544259037822e-08,9.120401500695152e-08,-2.63179344983655e-09) mm + Endpoint of ComputeStep() was (-337.5731054550905,-812.6773029002815,463.666330354087) + and current position to locate is (-337.5731054141651,-812.6773028090774,463.6663303514552) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999992679500299e-08 mm long + and its vector is (-4.694686595030362e-08,6.834664389998579e-08,5.589913598669227e-08) mm + Endpoint of ComputeStep() was (-685.962056221514,-44.81076352538796,1228.54021550927) + and current position to locate is (-685.9620562684609,-44.81076345704132,1228.540215565169) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000207559756e-07 mm long + and its vector is (-2.474553184583783e-08,6.372005145749426e-09,9.668019629316404e-08) mm + Endpoint of ComputeStep() was (-618.544375282013,-51.09648184396751,1167.965950153559) + and current position to locate is (-618.5443753067585,-51.0964818375955,1167.965950250239) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000675124121e-07 mm long + and its vector is (5.478000275616068e-08,2.861138881371517e-08,-7.861649464757647e-08) mm + Endpoint of ComputeStep() was (-837.3136164179024,36.76600404307009,1231.351243736016) + and current position to locate is (-837.3136163631224,36.76600407168148,1231.351243657399) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997130432676e-08 mm long + and its vector is (3.378363544470631e-08,4.662608432681736e-08,-8.175982202374144e-08) mm + Endpoint of ComputeStep() was (-698.4400635008793,46.70629229262278,927.2662266219569) + and current position to locate is (-698.4400634670957,46.70629233924887,927.2662265401971) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000172251228e-07 mm long + and its vector is (4.365085715107853e-08,-4.405654863148811e-08,7.844505489629228e-08) mm + Endpoint of ComputeStep() was (-609.3343785433119,-137.9061498527544,1197.302304869496) + and current position to locate is (-609.3343784996611,-137.906149896811,1197.302304947941) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000050685186e-07 mm long + and its vector is (-6.662075691110658e-08,-4.930109298584284e-08,-5.595603624897194e-08) mm + Endpoint of ComputeStep() was (-26.80820408240593,591.8190428447905,491.8740240726857) + and current position to locate is (-26.80820414902669,591.8190427954894,491.8740240167297) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999450156794e-08 mm long + and its vector is (-8.846740229273564e-08,-4.636228823073907e-08,-4.904677552985959e-09) mm + Endpoint of ComputeStep() was (358.3685118292659,348.6717795076277,1364.529693099822) + and current position to locate is (358.3685117407985,348.6717794612654,1364.529693094917) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997282057893e-08 mm long + and its vector is (-2.296877710250556e-08,7.988387551449705e-08,5.559672899835277e-08) mm + Endpoint of ComputeStep() was (-485.6951923734057,-228.826075061255,1044.384325301911) + and current position to locate is (-485.6951923963745,-228.8260749813711,1044.384325357508) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996219457213e-08 mm long + and its vector is (-5.673228997693514e-08,-5.524915991372836e-08,6.106529326643795e-08) mm + Endpoint of ComputeStep() was (-494.4869848615296,-190.7422913917359,1221.479721986361) + and current position to locate is (-494.4869849182619,-190.7422914469851,1221.479722047426) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995242830739e-08 mm long + and its vector is (-7.565364512629458e-08,6.349625891743926e-08,1.564421836519614e-08) mm + Endpoint of ComputeStep() was (-475.8762557845195,-505.2950140886757,1245.46721290827) + and current position to locate is (-475.8762558601731,-505.2950140251794,1245.467212923914) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000250827091e-07 mm long + and its vector is (8.863696621119743e-08,3.955072003236637e-08,-2.406727617199067e-08) mm + Endpoint of ComputeStep() was (-700.6863827084393,39.80147345294221,1145.213150600163) + and current position to locate is (-700.6863826198023,39.80147349249293,1145.213150576096) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000398438703e-07 mm long + and its vector is (-2.179149305447936e-09,-3.917899960015347e-08,-9.197970030072611e-08) mm + Endpoint of ComputeStep() was (-683.179809240187,81.28716078667709,1286.084630435223) + and current position to locate is (-683.1798092423661,81.28716074749809,1286.084630343243) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999694239709e-08 mm long + and its vector is (9.361099273519358e-08,3.471069476290722e-08,-5.670017344527878e-09) mm + Endpoint of ComputeStep() was (-627.7745517208022,150.5169167382534,952.8681827351762) + and current position to locate is (-627.7745516271912,150.5169167729641,952.8681827295062) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 6398 (pi-,1.1275957477887[GeV]) at (-499.99940329674,0.7724654724078,960.80542451398) +Original primary track ID 25 (unknown,7.7728456153487[GeV]) +Cell[14,25] 5.1715328928594e-06 [GeV] +Cell[13,35] 0.00019832069415963 [GeV] +Cell[14,35] 0.00082015205831472 [GeV] +Cell[18,4] 0.00012213100987719 [GeV] +Cell[18,3] 0.00094030463183231 [GeV] +Cell[14,29] 5.8702774941821e-06 [GeV] +Cell[17,25] 6.4023619692307e-05 [GeV] +Cell[15,29] 0.00067149222502018 [GeV] +Cell[18,5] 2.7371919743018e-05 [GeV] +Cell[12,32] 2.11081338648e-08 [GeV] +Cell[14,31] 0.00013818139052341 [GeV] +Cell[13,31] 5.1732241047375e-07 [GeV] +Cell[12,33] 0.00054352397999139 [GeV] +Cell[15,30] 0.00082536948063614 [GeV] +Cell[16,30] 0.0035159761999082 [GeV] +Cell[16,29] 0.0025724280739196 [GeV] +Cell[16,25] 0.021451523213724 [GeV] +Cell[16,24] 0.0067530876931778 [GeV] +Cell[15,5] 0.0018642124087324 [GeV] +Cell[12,11] 1.1658994480968e-10 [GeV] +Cell[15,21] 0.00040242644223258 [GeV] +Cell[15,22] 0.089902982357335 [GeV] +Cell[17,26] 0.001423085320469 [GeV] +Cell[10,44] 0.00055458249111177 [GeV] +Cell[12,12] 6.7280317445011e-06 [GeV] +Cell[10,45] 3.50262653443e-05 [GeV] +Cell[12,34] 0.0012816172735355 [GeV] +Cell[13,36] 2.0589824795024e-05 [GeV] +Cell[13,34] 1.1606117797783e-05 [GeV] +Cell[13,33] 2.0856085408013e-05 [GeV] +Cell[12,36] 0.00041871003740926 [GeV] +Cell[8,3] 0.0016151485764248 [GeV] +Cell[14,4] 6.4767207049954e-08 [GeV] +Cell[15,26] 0.00049371842506844 [GeV] +Cell[15,27] 0.00065259934836296 [GeV] +Cell[16,28] 4.1678702973513e-05 [GeV] +Cell[15,28] 0.00079857584024421 [GeV] +Cell[14,43] 0.00016362258183532 [GeV] +Cell[17,31] 0.022165136878168 [GeV] +Cell[17,24] 0.014140256008971 [GeV] +Cell[16,23] 0.002475930784249 [GeV] +Cell[15,44] 0.0023529569313366 [GeV] +Cell[15,43] 7.4852982834273e-10 [GeV] +Cell[16,44] 0.00059046888110561 [GeV] +Cell[11,12] 0.00023243430237039 [GeV] +Cell[16,45] 2.114434316718e-05 [GeV] +Cell[16,26] 0.0016098333165945 [GeV] +Cell[18,31] 0.0043255913349906 [GeV] +Cell[14,21] 1.961610563626e-06 [GeV] +Cell[14,22] 0.00049286921873693 [GeV] +Cell[19,42] 4.9155255022924e-05 [GeV] +Cell[13,11] 0.0015338413072257 [GeV] +Cell[13,12] 2.8876101516744e-05 [GeV] +Cell[14,23] 0.0046425268961132 [GeV] +Cell[19,12] 4.098555946257e-07 [GeV] +Cell[16,27] 0.00018011670194801 [GeV] +Cell[14,24] 0.07028750296617 [GeV] +Cell[15,24] 0.35331852378078 [GeV] +Cell[15,25] 0.0094318200692234 [GeV] +Cell[18,26] 0.001026329944858 [GeV] +Cell[18,27] 2.4097971618176e-11 [GeV] +Cell[19,27] 2.8609065338969e-11 [GeV] +Cell[15,4] 0.0027591690739084 [GeV] +Cell[19,3] 0.0012871961195717 [GeV] +Cell[19,13] 0.00071005159498532 [GeV] +Cell[14,30] 0.0007791591730778 [GeV] +Cell[15,23] 0.14582875770563 [GeV] +Cell[9,43] 8.8670348645792e-07 [GeV] +Cell[9,44] 2.5077199097723e-08 [GeV] +Cell[16,22] 4.5178091876664e-05 [GeV] +### Total energy deposition in calorimeter by a source track in 70 cells : 0.77868140827575 (GeV) + +Source track ID 6386 (gamma,0.21259862372436[GeV]) at (298.6743407945,-400.99082053206,-1192.028595743) Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[4,39] 0.0026370902196916 [GeV] -Cell[3,3] 0.001044321037946 [GeV] -Cell[3,8] 0.00051099891 [GeV] -Cell[2,15] 0.00020883570388373 [GeV] -Cell[0,26] 0.00037993612907716 [GeV] -Cell[3,5] 0.0010594064049443 [GeV] -Cell[0,20] 0.00064865420511661 [GeV] -Cell[1,19] 0.0032472523650671 [GeV] -Cell[1,18] 0.013103041784523 [GeV] -Cell[3,40] 0.11985265614742 [GeV] -Cell[4,40] 0.044833526713993 [GeV] -Cell[3,16] 0.0004629253598597 [GeV] -Cell[4,41] 0.00034383653080088 [GeV] -Cell[3,41] 0.0055635881468645 [GeV] -Cell[3,4] 0.00042845041161262 [GeV] -Cell[0,27] 0.0008409012212248 [GeV] -### Total energy deposition in calorimeter by a source track in 16 cells : 0.19516542129203 (GeV) +Cell[7,9] 0.00060634339232011 [GeV] +Cell[4,40] 0.0047062597843929 [GeV] +Cell[3,31] 0.004221031350286 [GeV] +Cell[4,41] 0.00045651515575162 [GeV] +Cell[1,25] 0.0004125635434218 [GeV] +Cell[3,39] 0.0031637468044589 [GeV] +Cell[3,40] 0.17561169151775 [GeV] +Cell[3,41] 0.015260875050271 [GeV] +Cell[3,42] 0.0016179871014462 [GeV] +Cell[3,22] 0.0065416100242591 [GeV] +### Total energy deposition in calorimeter by a source track in 10 cells : 0.21259862372436 (GeV) -Source track ID 4638 (pi-,0.62987857653565[GeV]) at (340.20423198347,366.41653966564,-1018.0923006283) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[6,39] 1.1841475497931e-09 [GeV] -Cell[5,9] 1.5177580444288e-06 [GeV] -Cell[4,9] 0.0010649863067835 [GeV] -Cell[4,8] 2.1465402172794e-05 [GeV] -Cell[4,7] 0.065607425368514 [GeV] -Cell[6,40] 2.4784880224615e-08 [GeV] -Cell[3,3] 0.00062529398105528 [GeV] -Cell[6,13] 8.2321628690352e-07 [GeV] -Cell[6,12] 3.9070538036867e-08 [GeV] -Cell[4,3] 0.00011836755823867 [GeV] -Cell[4,4] 2.1104683469275e-08 [GeV] -Cell[2,5] 0.0011720189658206 [GeV] -Cell[1,7] 2.153635571176e-07 [GeV] -Cell[3,8] 0.0066648857733463 [GeV] -Cell[3,7] 0.11766614457367 [GeV] -Cell[3,6] 0.0057097843478166 [GeV] -Cell[4,6] 0.13416457025787 [GeV] -Cell[3,5] 0.0025932531286887 [GeV] -Cell[6,26] 2.1375570213422e-08 [GeV] -Cell[1,5] 3.9881098745695e-05 [GeV] -Cell[3,12] 0.00069200115730121 [GeV] -Cell[2,7] 0.0003324279564772 [GeV] -Cell[3,14] 5.9739521930169e-08 [GeV] -Cell[2,4] 1.1591515614668e-05 [GeV] -Cell[3,10] 0.0051913030363832 [GeV] -Cell[4,12] 1.8962960211866e-08 [GeV] -Cell[4,11] 3.2608671824619e-06 [GeV] -Cell[3,11] 0.0039361160732913 [GeV] -Cell[3,9] 0.018552874999396 [GeV] -Cell[3,4] 0.050365474031813 [GeV] -Cell[5,13] 6.2593859979643e-07 [GeV] -Cell[5,12] 4.3422915041447e-11 [GeV] -Cell[2,6] 0.0072613191688074 [GeV] -Cell[4,10] 2.6985361976585e-05 [GeV] -Cell[3,13] 3.7016363929752e-06 [GeV] -Cell[4,13] 3.2093909635478e-07 [GeV] -Cell[1,6] 1.9386876374483e-08 [GeV] -Cell[2,8] 2.0563857106026e-10 [GeV] -### Total energy deposition in calorimeter by a source track in 38 cells : 0.42182884164118 (GeV) -Source track ID 4639 (pi+,3.2625265860665[GeV]) at (499.99127626731,-2.9535836857186,-1676.1366549831) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[1,18] 0.0016275287074161 [GeV] -Cell[1,47] 0.16051251791845 [GeV] -Cell[1,0] 0.09425665976659 [GeV] -Cell[0,47] 0.18105865100791 [GeV] -Cell[1,46] 0.00133920000218 [GeV] -### Total energy deposition in calorimeter by a source track in 5 cells : 0.43879455740255 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000633517163e-07 mm long + and its vector is (2.213221250713104e-08,-3.719719643413555e-09,9.744917406351306e-08) mm + Endpoint of ComputeStep() was (355.0364992761881,-505.5773021398495,-1400.000000097449) + and current position to locate is (355.0364992983203,-505.5773021435692,-1400) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 4635 (gamma,0.53051937575115[GeV]) at (475.84610093326,-153.52683226918,-782.17056631654) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[6,46] 0.00090110984326245 [GeV] -Cell[5,45] 0.31458403558607 [GeV] -Cell[7,23] 0.00070689123649375 [GeV] -Cell[6,44] 0.0019988961357743 [GeV] -Cell[5,43] 0.0044920861096346 [GeV] -Cell[5,46] 0.0088315679905662 [GeV] -Cell[1,11] 0.00077491187742759 [GeV] -Cell[5,39] 0.00085303978222466 [GeV] -Cell[5,42] 0.00021333860170104 [GeV] -Cell[6,45] 0.19706649690027 [GeV] -### Total energy deposition in calorimeter by a source track in 10 cells : 0.53042237406343 (GeV) -Source track ID 4636 (gamma,0.17927399228015[GeV]) at (168.15425918792,-470.87593389019,-1264.523473278) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[3,39] 0.0022545185081841 [GeV] -Cell[4,5] 0.00051099891 [GeV] -Cell[10,9] 0.00051099891 [GeV] -Cell[2,25] 0.0051529411029585 [GeV] -Cell[2,26] 0.00094853307341557 [GeV] -Cell[1,3] 0.0013022798000683 [GeV] -Cell[1,11] 0.00022221186656041 [GeV] -Cell[3,38] 0.16122052714495 [GeV] -### Total energy deposition in calorimeter by a source track in 8 cells : 0.17212300931614 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995954626431e-08 mm long + and its vector is (5.899227062400314e-08,-3.34480318997521e-08,-7.34924014977878e-08) mm + Endpoint of ComputeStep() was (450.2071175594125,583.5123011114225,-1144.47882773525) + and current position to locate is (450.2071176184048,583.5123010779745,-1144.478827808742) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 4628 (gamma,0.026812295898188[GeV]) at (-208.79945904354,454.31573371734,-132.55433818029) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[9,15] 0.026301296988188 [GeV] -Cell[7,20] 0.00051099891 [GeV] -### Total energy deposition in calorimeter by a source track in 2 cells : 0.026812295898188 (GeV) -Source track ID 4629 (gamma,0.00017678199700202[GeV]) at (-207.64861442704,454.84288817847,-134.72424943729) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[9,15] 0.00017678199700202 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00017678199700202 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000313807645e-07 mm long + and its vector is (-5.875580200154218e-08,-2.174863311665831e-08,7.794074008415919e-08) mm + Endpoint of ComputeStep() was (478.3032185160057,272.6161539143779,-887.9680183512319) + and current position to locate is (478.3032184572499,272.6161538926293,-887.9680182732911) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 4631 (gamma,0.18264778689621[GeV]) at (-170.69883831482,469.95947335698,-139.03271895705) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[8,13] 0.010083882224152 [GeV] -Cell[8,16] 0.00051099891 [GeV] -Cell[8,30] 0.0017084158919919 [GeV] -Cell[9,15] 0.0013875523458149 [GeV] -Cell[9,30] 0.0049395914667818 [GeV] -Cell[9,14] 0.1588709942101 [GeV] -Cell[9,13] 0.0051463518473726 [GeV] -### Total energy deposition in calorimeter by a source track in 7 cells : 0.18264778689621 (GeV) -Source track ID 4612 (e+,0.13367355069504[GeV]) at (-153.03388616895,476.00486308863,-140.14153129489) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[9,10] 0.0012872259958288 [GeV] -Cell[9,11] 0.0020004173741957 [GeV] -Cell[8,14] 0.0012801250838853 [GeV] -Cell[3,3] 0.0010559253770229 [GeV] -Cell[2,40] 0.00078340533223441 [GeV] -Cell[2,39] 0.0021394391642846 [GeV] -Cell[9,14] 0.062127890309475 [GeV] -Cell[9,13] 0.049160930813926 [GeV] -Cell[9,16] 0.00025566180290735 [GeV] -Cell[9,12] 0.013859003844151 [GeV] -### Total energy deposition in calorimeter by a source track in 10 cells : 0.13395002509791 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999146180823e-08 mm long + and its vector is (4.722124913314474e-08,1.380101366521558e-08,8.706138032721356e-08) mm + Endpoint of ComputeStep() was (404.4088295446354,487.6034155894654,-1031.527121389581) + and current position to locate is (404.4088295918566,487.6034156032664,-1031.527121302519) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 4617 (gamma,0.084938973327271[GeV]) at (-493.99505751825,77.258547407635,-131.69517328787) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[9,23] 0.0035098337165859 [GeV] -Cell[9,22] 0.080918140700685 [GeV] -Cell[13,5] 0.00012892638205419 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.084556900799325 (GeV) -Source track ID 4621 (gamma,0.0038976113156504[GeV]) at (-499.63984398586,18.974359061129,-135.412949744) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[9,23] 0.0033866124056504 [GeV] -Cell[8,32] 0.00051099891 [GeV] -### Total energy deposition in calorimeter by a source track in 2 cells : 0.0038976113156504 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999194053905e-08 mm long + and its vector is (-2.388441089351545e-08,8.039194199227495e-08,5.44671365787508e-08) mm + Endpoint of ComputeStep() was (331.6104859945987,-535.6626603380084,-1621.786726213802) + and current position to locate is (331.6104859707143,-535.6626602576165,-1621.786726159335) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 4622 (gamma,0.00022865131590489[GeV]) at (-499.91490442632,9.2243337117779,-135.5077068072) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[9,23] 0.00022865131590489 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00022865131590489 (GeV) -Source track ID 4613 (e-,0.4235459202288[GeV]) at (-499.96364763737,6.0291824596397,-135.79436996944) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[5,27] 2.2261176782195e-06 [GeV] -Cell[6,38] 0.00030911657691399 [GeV] -Cell[6,30] 3.1785293132998e-05 [GeV] -Cell[9,32] 3.3869244827656e-05 [GeV] -Cell[9,39] 8.1495398944753e-09 [GeV] -Cell[7,30] 0.0003452188515995 [GeV] -Cell[7,43] 2.7401500672568e-05 [GeV] -Cell[7,22] 0.00028761157961708 [GeV] -Cell[8,20] 2.7029600460082e-09 [GeV] -Cell[6,39] 0.0013724602595014 [GeV] -Cell[7,21] 0.0014503102212141 [GeV] -Cell[9,31] 0.0030148811472687 [GeV] -Cell[9,38] 9.6161436999864e-08 [GeV] -Cell[12,11] 8.1262495581313e-06 [GeV] -Cell[12,10] 0.00036881109333012 [GeV] -Cell[10,23] 0.0012734296643157 [GeV] -Cell[9,23] 0.11655539711732 [GeV] -Cell[9,25] 8.1213339581154e-07 [GeV] -Cell[9,24] 0.036925784745528 [GeV] -Cell[7,31] 8.0460252161174e-07 [GeV] -Cell[10,17] 0.0015842974331046 [GeV] -Cell[10,18] 0.00045405883487399 [GeV] -Cell[9,19] 5.4154079407454e-09 [GeV] -Cell[12,37] 0.0016333858444851 [GeV] -Cell[12,36] 5.400084235589e-05 [GeV] -Cell[4,8] 8.589239732828e-07 [GeV] -Cell[10,9] 3.5175169352442e-05 [GeV] -Cell[8,30] 0.00043042151242173 [GeV] -Cell[9,21] 0.0017804150507055 [GeV] -Cell[9,20] 1.4889519661665e-10 [GeV] -Cell[12,35] 0.00063550899137317 [GeV] -Cell[4,17] 8.9436505879803e-07 [GeV] -Cell[5,31] 0.00015678626953195 [GeV] -Cell[2,15] 5.4891236268304e-06 [GeV] -Cell[2,14] 9.7665858662253e-05 [GeV] -Cell[9,45] 0.00012805761762843 [GeV] -Cell[3,42] 1.9456221780274e-06 [GeV] -Cell[8,24] 0.002578581331672 [GeV] -Cell[3,14] 3.6730064114181e-06 [GeV] -Cell[3,43] 5.524390260689e-06 [GeV] -Cell[5,29] 3.3424368793931e-06 [GeV] -Cell[5,30] 0.0021821826355427 [GeV] -Cell[5,39] 2.4337205395568e-06 [GeV] -Cell[4,41] 2.1151217224542e-06 [GeV] -Cell[11,9] 0.0050546309332692 [GeV] -Cell[12,9] 6.2688980833627e-06 [GeV] -Cell[10,8] 1.371224160539e-05 [GeV] -Cell[9,22] 0.00011378859329022 [GeV] -Cell[10,37] 0.0046540660941802 [GeV] -Cell[3,17] 3.6045150864084e-10 [GeV] -Cell[18,42] 3.5613569809357e-05 [GeV] -Cell[14,12] 1.0369782942234e-05 [GeV] -Cell[12,4] 8.5959705756977e-08 [GeV] -Cell[11,40] 0.0022244137382125 [GeV] -Cell[10,38] 0.0012985967687019 [GeV] -Cell[11,39] 1.8319331354633e-07 [GeV] -Cell[9,30] 0.00038568163759271 [GeV] -Cell[8,19] 5.905021680519e-09 [GeV] -Cell[9,14] 0.0034603239863922 [GeV] -Cell[8,25] 0.0001127693203515 [GeV] -Cell[14,15] 4.7841173754932e-06 [GeV] -Cell[14,13] 6.3942297856556e-09 [GeV] -Cell[14,16] 2.1197403384576e-08 [GeV] -Cell[10,14] 3.6977059949095e-08 [GeV] -Cell[10,44] 1.268919731956e-07 [GeV] -Cell[12,18] 0.00046398637167043 [GeV] -Cell[8,23] 7.5154244671921e-05 [GeV] -Cell[7,25] 3.101513173965e-05 [GeV] -Cell[5,32] 2.7903518668609e-05 [GeV] -Cell[10,16] 1.6029492253438e-06 [GeV] -Cell[10,15] 7.3246388173402e-05 [GeV] -Cell[10,13] 5.6016259577518e-09 [GeV] -Cell[9,46] 9.0015819296241e-09 [GeV] -Cell[8,46] 4.440764314495e-08 [GeV] -Cell[8,45] 7.1127441013914e-06 [GeV] -### Total energy deposition in calorimeter by a source track in 75 cells : 0.19184053999906 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000827453716e-07 mm long + and its vector is (2.063808324237471e-08,-6.798580898248474e-08,-7.037056093395222e-08) mm + Endpoint of ComputeStep() was (418.9855450719096,430.5732355771837,-1287.665914679932) + and current position to locate is (418.9855450925477,430.5732355091979,-1287.665914750302) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 4614 (gamma,0.14815181584447[GeV]) at (-470.4546861349,169.32923047634,-336.66128000979) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999964086717e-08 mm long + and its vector is (-6.640811989200301e-08,3.349072130731656e-08,-6.684558684355579e-08) mm + Endpoint of ComputeStep() was (394.4416798166846,440.709499612114,-999.9999999331544) + and current position to locate is (394.4416797502765,440.7094996456047,-1000) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000039336404e-07 mm long + and its vector is (-6.646371275564888e-08,5.386311840993585e-09,-7.452223371728905e-08) mm + Endpoint of ComputeStep() was (-583.4615753398554,-373.5411508686873,-467.4629155116873) + and current position to locate is (-583.4615754063191,-373.541150863301,-467.4629155862095) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000015827e-07 mm long + and its vector is (-2.791841779981041e-08,7.292709724993074e-08,6.246762040973408e-08) mm + Endpoint of ComputeStep() was (-756.7021312188785,-30.19597696201653,-942.6854423954394) + and current position to locate is (-756.702131246797,-30.19597688908944,-942.6854423329718) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000628696941e-07 mm long + and its vector is (-5.424999471870251e-08,6.627377047152549e-08,5.162110028322786e-08) mm + Endpoint of ComputeStep() was (548.7682583220841,-45.33791283280934,-1327.398206636453) + and current position to locate is (548.7682582678341,-45.33791276653557,-1327.398206584832) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999441035011e-08 mm long + and its vector is (-9.681070878286846e-08,-1.153224360450622e-08,-2.224169293185696e-08) mm + Endpoint of ComputeStep() was (585.3230064737307,62.48832525487925,-1419.891310578126) + and current position to locate is (585.32300637692,62.48832524334701,-1419.891310600368) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999092174971e-08 mm long + and its vector is (1.98936049855547e-08,-9.626302244214457e-08,1.837588570197113e-08) mm + Endpoint of ComputeStep() was (599.9907426781017,-3.332968056590584,-1382.484764699373) + and current position to locate is (599.9907426979953,-3.332968152853606,-1382.484764680997) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000021213071e-07 mm long + and its vector is (-3.406364612601465e-08,-9.32760713112657e-08,-1.180012532131514e-08) mm + Endpoint of ComputeStep() was (342.6782053344634,-611.9879929801029,-939.3698157127685) + and current position to locate is (342.6782053003998,-611.987993073379,-939.3698157245686) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995501400732e-08 mm long + and its vector is (-8.612573765276466e-08,4.833657385461265e-08,1.568196239531972e-08) mm + Endpoint of ComputeStep() was (-593.9298645445732,-348.4794025696706,-617.9955345693419) + and current position to locate is (-593.9298646306989,-348.4794025213341,-617.9955345536599) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000455818992e-07 mm long + and its vector is (-8.761833214521175e-08,5.215213150222553e-09,-4.791490937350318e-08) mm + Endpoint of ComputeStep() was (405.0912465161366,399.5629214704146,-1153.074138462961) + and current position to locate is (405.0912464285182,399.5629214756298,-1153.074138510876) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000116062892e-07 mm long + and its vector is (4.029288902529515e-09,-9.939094525179826e-08,-1.025705387291964e-08) mm + Endpoint of ComputeStep() was (-680.1916963042183,260.8661635975693,-1056.540269063982) + and current position to locate is (-680.1916963001891,260.8661634981784,-1056.540269074239) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000184613213e-07 mm long + and its vector is (-4.872106273978716e-09,2.601797177703702e-08,-9.643304110795725e-08) mm + Endpoint of ComputeStep() was (425.4912864819224,491.3829108816617,-1075.899323144806) + and current position to locate is (425.4912864770503,491.3829109076797,-1075.899323241239) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998758472181e-08 mm long + and its vector is (5.480791287482134e-08,7.926701073301956e-08,-2.669889909157064e-08) mm + Endpoint of ComputeStep() was (350.4697399191131,462.1373835661292,-1055.840357296396) + and current position to locate is (350.469739973921,462.1373836453963,-1055.840357323095) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000470869149e-07 mm long + and its vector is (7.26851112631266e-08,-4.926658903059433e-08,4.785067631019047e-08) mm + Endpoint of ComputeStep() was (427.8558190654318,491.853258873873,-800.0000000478507) + and current position to locate is (427.8558191381169,491.8532588246064,-800) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998733514588e-08 mm long + and its vector is (-6.368173899318208e-08,-5.831770977238193e-08,5.043489181844052e-08) mm + Endpoint of ComputeStep() was (269.8083977029647,560.3924532938405,-887.6737326390456) + and current position to locate is (269.8083976392829,560.3924532355228,-887.6737325886107) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996355763946e-08 mm long + and its vector is (-5.745357611885993e-08,6.325325330180931e-08,-5.194328878133092e-08) mm + Endpoint of ComputeStep() was (547.4876127415706,420.102020733442,-1037.739285242117) + and current position to locate is (547.487612684117,420.1020207966952,-1037.739285294061) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000119104396e-07 mm long + and its vector is (-2.874338633773732e-08,5.109728817842552e-08,8.101164894469548e-08) mm + Endpoint of ComputeStep() was (388.1018509463016,456.2554930890839,-957.7833158746918) + and current position to locate is (388.1018509175582,456.2554931401812,-957.7833157936801) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000070036273e-07 mm long + and its vector is (-6.169295829749899e-08,3.672397497211932e-08,-6.960840437386651e-08) mm + Endpoint of ComputeStep() was (461.1047394436583,270.9023718501895,-1499.268649037598) + and current position to locate is (461.1047393819654,270.9023718869134,-1499.268649107207) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000334476653e-07 mm long + and its vector is (7.518895017710747e-08,3.625461886258563e-08,-5.506569777935511e-08) mm + Endpoint of ComputeStep() was (506.9950773280461,442.8632100586124,-972.4418589618969) + and current position to locate is (506.9950774032351,442.863210094867,-972.4418590169626) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 6347 (pi-,0.62988632761658[GeV]) at (341.14474364487,365.54105635821,-1021.6022680953) Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[8,20] 0.0016523481521526 [GeV] -Cell[8,21] 0.14649946769232 [GeV] +Cell[7,28] 1.1832956560056e-06 [GeV] +Cell[7,33] 2.8670297033386e-05 [GeV] +Cell[8,34] 4.7987359312174e-07 [GeV] +Cell[5,38] 9.6746884393269e-05 [GeV] +Cell[5,25] 0.00055758212483283 [GeV] +Cell[5,5] 0.0028252169534896 [GeV] +Cell[5,6] 0.00061989001233746 [GeV] +Cell[6,29] 0.00081078789918888 [GeV] +Cell[7,29] 2.8664708485849e-05 [GeV] +Cell[5,29] 8.4347586089279e-06 [GeV] +Cell[5,28] 1.176092075184e-06 [GeV] +Cell[6,28] 1.4761278180231e-08 [GeV] +Cell[5,3] 2.2998475867553e-06 [GeV] +Cell[6,34] 1.5847682370804e-06 [GeV] +Cell[6,6] 9.5700102065166e-11 [GeV] +Cell[13,33] 0.0011447319761631 [GeV] +Cell[5,20] 1.9851938925513e-06 [GeV] +Cell[4,19] 0.00065135244592238 [GeV] +Cell[5,19] 5.8344835124444e-06 [GeV] +Cell[3,47] 0.00028727018835151 [GeV] +Cell[5,24] 0.0068405437594237 [GeV] +Cell[3,4] 9.3355122135108e-07 [GeV] +Cell[1,40] 8.1524593304039e-06 [GeV] +Cell[1,42] 1.0888787452132e-05 [GeV] +Cell[5,21] 0.00018526602622751 [GeV] +Cell[1,27] 0.0025683784279719 [GeV] +Cell[4,7] 0.0027755356871006 [GeV] +Cell[4,6] 0.22199962902071 [GeV] +Cell[4,8] 3.0075908824983e-05 [GeV] +Cell[3,6] 0.0003293499643371 [GeV] +Cell[4,22] 1.258834215696e-05 [GeV] +Cell[4,21] 0.00010454210326543 [GeV] +Cell[4,25] 0.00016581349710214 [GeV] +Cell[5,23] 3.9172552703803e-07 [GeV] +Cell[2,46] 0.00054138568646767 [GeV] +Cell[2,0] 0.0030406562170641 [GeV] +Cell[2,1] 0.00060558944649881 [GeV] +Cell[1,30] 1.5687426290242e-05 [GeV] +Cell[1,29] 2.0184888213407e-05 [GeV] +Cell[3,5] 0.00018552026534996 [GeV] +Cell[4,13] 3.3245956874453e-06 [GeV] +Cell[9,34] 2.0451469455338e-06 [GeV] +Cell[2,4] 3.0319493691877e-07 [GeV] +Cell[1,43] 4.7562776308041e-06 [GeV] +Cell[3,0] 7.2430260843248e-08 [GeV] +Cell[4,4] 0.0015739284520348 [GeV] +Cell[4,5] 0.01299119611329 [GeV] +Cell[3,40] 3.9505096638777e-05 [GeV] +Cell[1,39] 0.00010885119024113 [GeV] +Cell[3,1] 0.00092050228136543 [GeV] +Cell[2,2] 0.00053162179484161 [GeV] +Cell[5,40] 3.9959559217095e-11 [GeV] +Cell[1,28] 0.00044668789928244 [GeV] +Cell[4,20] 0.0022113223782551 [GeV] +Cell[5,7] 0.0024727489063674 [GeV] +Cell[5,4] 0.00011396080364841 [GeV] +Cell[5,39] 6.524153395867e-05 [GeV] +Cell[3,7] 4.5769732423651e-08 [GeV] +Cell[3,8] 0.00036500711978533 [GeV] +Cell[2,47] 0.004201499393654 [GeV] +Cell[5,8] 5.0724612947306e-08 [GeV] +Cell[6,35] 4.227904625543e-05 [GeV] +### Total energy deposition in calorimeter by a source track in 62 cells : 0.27260997004026 (GeV) + +Source track ID 6348 (pi+,3.2624901664352[GeV]) at (499.990733034,-3.0441550754745,-1675.4366975009) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[0,0] 0.14539743965088 [GeV] +Cell[0,46] 0.00084701162923302 [GeV] +Cell[0,47] 0.2168931885592 [GeV] +Cell[0,1] 0.16505227367315 [GeV] +Cell[1,47] 0.18023654343501 [GeV] +Cell[1,0] 0.00741942175098 [GeV] +### Total energy deposition in calorimeter by a source track in 6 cells : 0.71584587869845 (GeV) + +Source track ID 6344 (gamma,0.53051937575115[GeV]) at (475.84610301492,-153.52682581725,-782.17055284302) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[7,10] 0.0017207601548029 [GeV] +Cell[6,46] 0.0013145403772865 [GeV] +Cell[6,45] 0.19272045263379 [GeV] +Cell[5,46] 0.0082123170493054 [GeV] +Cell[4,26] 0.00095853118626673 [GeV] +Cell[6,17] 0.00064402434909329 [GeV] +Cell[5,45] 0.32380588488241 [GeV] +Cell[6,22] 0.00051099891 [GeV] +Cell[5,43] 0.00016064678996249 [GeV] +### Total energy deposition in calorimeter by a source track in 9 cells : 0.53004815633291 (GeV) + +Source track ID 6345 (gamma,0.17927399228015[GeV]) at (168.15423151315,-470.87594377312,-1264.5234724046) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[3,37] 0.00058640910379911 [GeV] +Cell[2,38] 0.0014844943256403 [GeV] +Cell[2,39] 0.00051099891 [GeV] +Cell[1,16] 0.00051099891 [GeV] +Cell[2,31] 0.0031128417149661 [GeV] +Cell[3,38] 0.17259770823914 [GeV] +Cell[4,10] 0.00047054107660804 [GeV] +### Total energy deposition in calorimeter by a source track in 7 cells : 0.17927399228015 (GeV) + +Source track ID 6282 (gamma,0.030409257824831[GeV]) at (-228.7368132401,444.61159484292,-130.24308238422) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[8,15] 0.0020702079923746 [GeV] +Cell[9,15] 0.027822860421037 [GeV] +Cell[9,16] 0.0005161894114195 [GeV] +### Total energy deposition in calorimeter by a source track in 3 cells : 0.030409257824831 (GeV) + +Source track ID 6283 (gamma,0.033925089317531[GeV]) at (-199.00875719618,458.68890825834,-132.20902530336) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[8,14] 0.0008836521984721 [GeV] +Cell[9,14] 0.0015933042848061 [GeV] +Cell[9,15] 0.031448132834253 [GeV] +### Total energy deposition in calorimeter by a source track in 3 cells : 0.033925089317531 (GeV) + +Source track ID 6284 (gamma,0.11284089086614[GeV]) at (-194.00292973121,460.82845317505,-131.2879679669) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[9,14] 0.10741936389987 [GeV] +Cell[9,15] 0.0054215269662697 [GeV] +### Total energy deposition in calorimeter by a source track in 2 cells : 0.11284089086614 (GeV) + +Source track ID 6287 (gamma,0.00042426520533693[GeV]) at (-74.542289320096,494.41222386074,-153.42229121588) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[9,13] 0.00042426520533693 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.00042426520533693 (GeV) + +Source track ID 6291 (gamma,0.0022884261436112[GeV]) at (494.04938414723,76.910376567447,-354.5085580535) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[8,0] 0.0022884261436112 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0022884261436112 (GeV) + +Source track ID 6297 (gamma,0.00041118819966353[GeV]) at (-120.78816088379,-485.19091107554,-536.3210837112) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[7,34] 0.00041118819966353 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.00041118819966353 (GeV) + +Source track ID 6270 (e+,0.15018312477675[GeV]) at (-499.51890565547,-21.928586200663,-1206.5471690625) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[4,23] 0.002707318914979 [GeV] +Cell[4,25] 0.0019761119296055 [GeV] +Cell[4,24] 0.012422560875806 [GeV] +Cell[3,24] 0.12405143546953 [GeV] +Cell[3,25] 0.0095376954268434 [GeV] +### Total energy deposition in calorimeter by a source track in 5 cells : 0.15069512261676 (GeV) + +Source track ID 6276 (gamma,0.00026510749174862[GeV]) at (-493.67136807994,79.300569594902,-132.36833116858) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[9,22] 0.00026510749174862 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.00026510749174862 (GeV) + +Source track ID 6278 (gamma,0.085435617926759[GeV]) at (-499.41654832188,24.147696831397,-134.80696415414) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[6,8] 0.00064430003508814 [GeV] +Cell[8,25] 0.00051099891 [GeV] +Cell[8,24] 0.0036234948078802 [GeV] +Cell[9,24] 0.010747927242241 [GeV] +Cell[9,23] 0.069908896931549 [GeV] +### Total energy deposition in calorimeter by a source track in 5 cells : 0.085435617926759 (GeV) + +Source track ID 6271 (e-,0.42785255740147[GeV]) at (-499.58730972599,20.310587405313,-134.70431881292) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[9,25] 0.0076539348618951 [GeV] +Cell[8,19] 0.01108334847907 [GeV] +Cell[8,25] 0.0055818926999548 [GeV] +Cell[8,24] 0.00042213559237631 [GeV] +Cell[9,24] 0.099644580965994 [GeV] +Cell[8,44] 0.00051099891 [GeV] +Cell[6,22] 0.00036956690120025 [GeV] +Cell[9,23] 0.30200910260681 [GeV] +### Total energy deposition in calorimeter by a source track in 8 cells : 0.4272755610173 (GeV) + +Source track ID 6272 (gamma,0.14815181584447[GeV]) at (-470.45468985238,169.32922014793,-336.66130717894) +Original primary track ID 27 (unknown,1.8699577628705[GeV]) +Cell[8,20] 0.0012392090057339 [GeV] +Cell[8,21] 0.14691260683873 [GeV] ### Total energy deposition in calorimeter by a source track in 2 cells : 0.14815181584447 (GeV) -Source track ID 4574 (pi+,0.18778475737372[GeV]) at (-499.60282510126,-19.925289228457,1580.5712299929) +Source track ID 6233 (pi+,0.18780960736844[GeV]) at (-499.97473747537,5.0261204161591,1561.1267320356) Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[16,4] 0.00078640325436993 [GeV] -Cell[17,24] 0.094968155467705 [GeV] -Cell[17,23] 0.00065628522905143 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.096410843951127 (GeV) +Cell[14,1] 0.0013912425780174 [GeV] +Cell[15,5] 0.00041255905761705 [GeV] +Cell[14,13] 7.0918315447285e-05 [GeV] +Cell[13,0] 0.020033721594332 [GeV] +Cell[17,23] 0.060537083506373 [GeV] +Cell[15,4] 0.004748163407213 [GeV] +Cell[18,23] 0.00051099891 [GeV] +Cell[13,14] 0.0014576290801024 [GeV] +### Total energy deposition in calorimeter by a source track in 8 cells : 0.089162316449102 (GeV) -Source track ID 4568 (gamma,0.00012068184984052[GeV]) at (-384.4814251876,-319.64673263732,-241.51278324149) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000213406548e-07 mm long + and its vector is (-7.147993841272182e-08,1.271450855711009e-08,-6.876746283523971e-08) mm + Endpoint of ComputeStep() was (-22.51386887113458,-581.9960246790354,-647.98504343231) + and current position to locate is (-22.51386894261452,-581.9960246663209,-647.9850435010775) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000192774875e-07 mm long + and its vector is (-8.422745167990797e-08,-3.166965711898229e-08,-4.362078698250116e-08) mm + Endpoint of ComputeStep() was (-476.5039795736174,-251.0731518214568,-370.6733979168941) + and current position to locate is (-476.5039796578449,-251.0731518531264,-370.6733979605149) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998133652242e-08 mm long + and its vector is (-7.275286861840868e-08,-5.415225245997135e-08,-4.212540716252988e-08) mm + Endpoint of ComputeStep() was (-604.207156193682,-230.4070523080035,-353.7347914227125) + and current position to locate is (-604.2071562664348,-230.4070523621557,-353.7347914648379) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000057941544e-07 mm long + and its vector is (-7.964445103425533e-09,9.119094102061354e-08,4.025892508252582e-08) mm + Endpoint of ComputeStep() was (-599.5199410659899,-529.0625966336885,-193.7986021722001) + and current position to locate is (-599.5199410739543,-529.0625965424975,-193.7986021319412) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000237362445e-07 mm long + and its vector is (-5.972981398372212e-08,-4.976277523383033e-08,-6.28969019089709e-08) mm + Endpoint of ComputeStep() was (-584.729087713926,-684.1724152896663,-341.9197753623017) + and current position to locate is (-584.7290877736558,-684.1724153394291,-341.9197754251986) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000438724513e-07 mm long + and its vector is (-7.002222446317319e-08,3.200472065145732e-08,-6.381688422152365e-08) mm + Endpoint of ComputeStep() was (-556.1219677852997,-472.8935999767748,-208.7402962112489) + and current position to locate is (-556.1219678553219,-472.8935999447701,-208.7402962750658) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000050199934e-07 mm long + and its vector is (-2.277863586641615e-08,6.978291366976919e-08,6.790787665522657e-08) mm + Endpoint of ComputeStep() was (-428.2233020518742,-477.5936375886385,-400.0000000679079) + and current position to locate is (-428.2233020746528,-477.5936375188556,-400) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000056316385e-07 mm long + and its vector is (8.317084621012327e-08,1.21452217172191e-08,5.417660986495321e-08) mm + Endpoint of ComputeStep() was (-446.7781329045087,-393.5659915663495,-404.2555444950734) + and current position to locate is (-446.7781328213378,-393.5659915542042,-404.2555444408968) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000016839563e-07 mm long + and its vector is (5.387801138567738e-08,5.803553904115688e-08,6.106586170062656e-08) mm + Endpoint of ComputeStep() was (-348.7712983807801,-681.7464131511632,-457.6410694095899) + and current position to locate is (-348.7712983269021,-681.7464130931277,-457.641069348524) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000253436079e-07 mm long + and its vector is (-2.706059376578196e-08,1.288748308070353e-08,9.540252676742966e-08) mm + Endpoint of ComputeStep() was (-476.3420258944378,-427.5909542287325,-317.7642808445496) + and current position to locate is (-476.3420259214984,-427.590954215845,-317.7642807491471) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000022055276e-07 mm long + and its vector is (-2.46070612774929e-08,-9.372189424539101e-08,2.471233528922312e-08) mm + Endpoint of ComputeStep() was (-777.338578050988,-489.184296768418,-351.0227967656087) + and current position to locate is (-777.338578075595,-489.1842968621399,-351.0227967408964) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000241182016e-07 mm long + and its vector is (8.975348464446142e-08,3.655333102869918e-08,2.466111936882953e-08) mm + Endpoint of ComputeStep() was (-448.661103311304,-367.5638917016913,-470.2884284176423) + and current position to locate is (-448.6611032215505,-367.5638916651379,-470.2884283929811) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998101874848e-08 mm long + and its vector is (3.376834456503275e-08,-8.826361863611965e-09,9.371120768264518e-08) mm + Endpoint of ComputeStep() was (-494.2697605674605,-439.0990132649179,-391.2788982646999) + and current position to locate is (-494.2697605336922,-439.0990132737442,-391.2788981709887) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999054950225e-08 mm long + and its vector is (-1.446176156605361e-08,8.89455122887739e-08,-4.335379344411194e-08) mm + Endpoint of ComputeStep() was (-526.1820598178929,-430.7347675625967,-278.6168175324301) + and current position to locate is (-526.1820598323546,-430.7347674736512,-278.6168175757839) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000028433978e-07 mm long + and its vector is (6.971401944610989e-08,2.315942992936471e-08,-6.784981110286026e-08) mm + Endpoint of ComputeStep() was (-526.439103642946,-505.7290482584887,-148.2048565745386) + and current position to locate is (-526.4391035732319,-505.7290482353292,-148.2048566423884) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998513271686e-08 mm long + and its vector is (-6.215520897967508e-08,5.416104897904006e-09,7.814981017872924e-08) mm + Endpoint of ComputeStep() was (-528.9775727227164,-32.90482473714507,-592.05205982826) + and current position to locate is (-528.9775727848717,-32.90482473172897,-592.0520597501102) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998872208318e-08 mm long + and its vector is (6.755499271093868e-09,-5.144363512954442e-08,8.548633445570886e-08) mm + Endpoint of ComputeStep() was (-546.4236391037381,-463.7768650302173,-149.8924783004203) + and current position to locate is (-546.4236390969826,-463.776865081661,-149.892478214934) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000046208505e-07 mm long + and its vector is (4.398157216201071e-08,1.067974153556861e-08,8.91715501438739e-08) mm + Endpoint of ComputeStep() was (-576.4365451641472,-548.7402106588428,-232.5867412426107) + and current position to locate is (-576.4365451201656,-548.740210648163,-232.5867411534391) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000066255194e-07 mm long + and its vector is (7.439251703544869e-08,-6.972300070628989e-09,-6.64615811274416e-08) mm + Endpoint of ComputeStep() was (-430.3442190136892,-330.2147333058761,-180.8727420215424) + and current position to locate is (-430.3442189392966,-330.2147333128484,-180.872742088004) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000056599961e-07 mm long + and its vector is (-3.31572209688602e-08,-8.456606792606181e-08,-4.18231991261564e-08) mm + Endpoint of ComputeStep() was (-568.2105420827278,-313.186241272599,-237.0075074851577) + and current position to locate is (-568.210542115885,-313.186241357165,-237.0075075269809) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995825896395e-08 mm long + and its vector is (-1.391515525028808e-08,-5.664054469889379e-08,8.122935923893237e-08) mm + Endpoint of ComputeStep() was (-479.0879049650769,-482.5710095397092,-591.4565287039251) + and current position to locate is (-479.0879049789921,-482.5710095963498,-591.4565286226957) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000035816406e-07 mm long + and its vector is (-2.990219627463375e-08,-8.382022542718914e-08,-4.560740762826754e-08) mm + Endpoint of ComputeStep() was (-472.3451639218378,-395.4229555931815,-419.8837150681032) + and current position to locate is (-472.34516395174,-395.4229556770018,-419.8837151137106) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000006692214e-07 mm long + and its vector is (4.977835033059819e-08,8.031429388211109e-08,-3.273729021202598e-08) mm + Endpoint of ComputeStep() was (-634.8044124085883,-444.0381758175793,-195.0589065422182) + and current position to locate is (-634.8044123588099,-444.038175737265,-195.0589065749554) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999832236093e-08 mm long + and its vector is (-1.878089506135439e-08,1.627893198019592e-08,-9.686212365522806e-08) mm + Endpoint of ComputeStep() was (-225.7271874153855,-920.0376803338753,-157.5577302087229) + and current position to locate is (-225.7271874341664,-920.0376803175964,-157.5577303055851) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998938052789e-08 mm long + and its vector is (4.131015884922817e-08,-8.772065029916121e-08,-2.446540747769177e-08) mm + Endpoint of ComputeStep() was (-303.1015068473078,-1003.842375499415,-346.269012178013) + and current position to locate is (-303.1015068059976,-1003.842375587135,-346.2690122024784) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000033942685e-07 mm long + and its vector is (9.533832212582638e-08,-1.597834398125997e-08,-2.559877998464799e-08) mm + Endpoint of ComputeStep() was (-143.9285143843425,-874.6798723172765,-185.1023626821912) + and current position to locate is (-143.9285142890042,-874.6798723332548,-185.10236270779) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000395678625e-07 mm long + and its vector is (-2.133566567863454e-08,-8.463234735245351e-08,4.880740789303672e-08) mm + Endpoint of ComputeStep() was (-216.8196768859806,-1109.003709424857,-413.5943344700486) + and current position to locate is (-216.8196769073162,-1109.003709509489,-413.5943344212412) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997084221115e-08 mm long + and its vector is (6.701810661979835e-08,5.751985554525163e-08,4.690451760325232e-08) mm + Endpoint of ComputeStep() was (-205.9245747264341,-855.5671041185273,-363.2296915011332) + and current position to locate is (-205.924574659416,-855.5671040610074,-363.2296914542287) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 6221 (pi-,0.95165387519268[GeV]) at (-377.95364443921,-327.3393386917,-222.56902057873) Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[8,29] 0.00012068184984052 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00012068184984052 (GeV) +Cell[7,32] 0.00013719697359227 [GeV] +Cell[8,33] 0.12394889167505 [GeV] +Cell[8,28] 0.018614552366841 [GeV] +Cell[7,7] 1.0778775031213e-06 [GeV] +Cell[7,27] 2.7677742764354e-11 [GeV] +Cell[7,28] 8.5514586396243e-05 [GeV] +Cell[8,35] 0.00034304277271838 [GeV] +Cell[7,24] 3.0776036000361e-05 [GeV] +Cell[7,33] 0.00040837850240837 [GeV] +Cell[6,24] 2.2530738963496e-05 [GeV] +Cell[7,34] 0.018468597891159 [GeV] +Cell[8,34] 0.0068493619998626 [GeV] +Cell[16,19] 3.6936835385859e-09 [GeV] +Cell[8,31] 4.1633439832367e-06 [GeV] +Cell[8,32] 1.1500731459819e-05 [GeV] +Cell[6,29] 2.8574091265909e-07 [GeV] +Cell[8,26] 1.950793944161e-09 [GeV] +Cell[8,27] 0.0013034139819122 [GeV] +Cell[8,29] 0.43790321769747 [GeV] +Cell[7,29] 0.002341374421333 [GeV] +Cell[9,31] 3.2724346965551e-10 [GeV] +Cell[8,30] 0.004092848136471 [GeV] +Cell[7,31] 0.0081816808407635 [GeV] +Cell[9,30] 0.0012228329565793 [GeV] +Cell[7,30] 0.00043762029169102 [GeV] +Cell[9,29] 0.00021021402550468 [GeV] +Cell[9,27] 0.00045502650773075 [GeV] +Cell[9,28] 0.001935059623432 [GeV] +Cell[6,34] 8.1385214859665e-05 [GeV] +Cell[6,6] 3.0028601520371e-07 [GeV] +Cell[9,34] 0.00011757398971224 [GeV] +Cell[15,28] 2.1364830899984e-08 [GeV] +Cell[14,45] 9.2834234237671e-09 [GeV] +Cell[16,18] 1.1194118997082e-08 [GeV] +Cell[16,8] 1.0299661581712e-06 [GeV] +Cell[14,46] 1.9320729620631e-08 [GeV] +Cell[15,46] 5.3674267780934e-07 [GeV] +Cell[7,25] 2.55095240027e-06 [GeV] +Cell[15,8] 0.00050360158113176 [GeV] +Cell[6,35] 0.00012824127782187 [GeV] +Cell[7,35] 0.00056260274558497 [GeV] +Cell[9,32] 0.0010626746755341 [GeV] +### Total energy deposition in calorimeter by a source track in 42 cells : 0.62946972431414 (GeV) -Source track ID 4562 (pi-,0.92971867338985[GeV]) at (-380.05234755399,-324.90031258634,-228.29257290583) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[7,33] 8.7545686255908e-11 [GeV] -Cell[7,32] 0.0017553435300341 [GeV] -Cell[6,30] 0.0012873697440051 [GeV] -Cell[13,26] 1.4892651734044e-08 [GeV] -Cell[7,30] 0.098397524917546 [GeV] -Cell[6,31] 1.7723626572433e-05 [GeV] -Cell[7,27] 4.6049665024839e-06 [GeV] -Cell[9,26] 0.0001839323316116 [GeV] -Cell[14,25] 0.00017889739197767 [GeV] -Cell[14,26] 0.00065128481290355 [GeV] -Cell[13,4] 6.0613519735853e-08 [GeV] -Cell[12,2] 1.7786917311241e-05 [GeV] -Cell[10,25] 9.3257698063098e-05 [GeV] -Cell[9,25] 4.5070260751118e-05 [GeV] -Cell[8,31] 0.00086632173599446 [GeV] -Cell[7,31] 0.0023028936914969 [GeV] -Cell[12,3] 0.00094191657475312 [GeV] -Cell[10,26] 0.00059189366731654 [GeV] -Cell[8,32] 0.00080281490456287 [GeV] -Cell[7,28] 0.0078967884607619 [GeV] -Cell[8,29] 0.39114596973116 [GeV] -Cell[8,28] 0.0095059629852815 [GeV] -Cell[7,29] 0.011381966974268 [GeV] -Cell[8,30] 0.014518547581271 [GeV] -Cell[6,33] 3.4931085792778e-09 [GeV] -Cell[6,32] 1.8542561867889e-06 [GeV] -Cell[12,6] 9.7384082865801e-06 [GeV] -Cell[12,5] 0.0051767085635488 [GeV] -Cell[14,39] 0.0014597220602719 [GeV] -Cell[14,38] 0.0003275909069954 [GeV] -Cell[13,6] 5.0336821004748e-09 [GeV] -Cell[11,5] 0.00030789581209956 [GeV] -Cell[12,4] 0.0028027024315459 [GeV] -Cell[9,30] 3.183829221598e-08 [GeV] -Cell[14,37] 3.1684071814198e-07 [GeV] -Cell[8,27] 0.0024857800912756 [GeV] -Cell[11,4] 0.0035256036308291 [GeV] -Cell[13,5] 7.0645651931045e-08 [GeV] -Cell[13,2] 0.00010416189033856 [GeV] -Cell[13,3] 2.7033994952035e-06 [GeV] -Cell[6,29] 0.00061372416842323 [GeV] -### Total energy deposition in calorimeter by a source track in 41 cells : 0.55940656156861 (GeV) - -Source track ID 4563 (gamma,0.0063020553434915[GeV]) at (-410.12489833145,-286.0027408411,-203.51924064526) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[4,8] 0.00015853656768452 [GeV] -Cell[8,28] 0.0052800575234915 [GeV] -Cell[9,28] 0.00051099891 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.005949593001176 (GeV) - -Source track ID 4564 (neutron,0.94200742774486[GeV]) at (324.6155803951,-380.29557578908,-66.906816436236) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[8,18] 0.00036590447945207 [GeV] -Cell[8,16] 1.3733618223341e-05 [GeV] -Cell[9,18] 0.0012841418557553 [GeV] -Cell[9,17] 2.3818042798666e-05 [GeV] -Cell[9,19] 1.160363787767e-05 [GeV] -Cell[9,20] 5.033885827288e-09 [GeV] -Cell[9,41] 0.00062749998147046 [GeV] -Cell[8,17] 0.0001153610853944 [GeV] -### Total energy deposition in calorimeter by a source track in 8 cells : 0.0024420677348577 (GeV) - -Source track ID 4565 (gamma,0.00025927349576434[GeV]) at (-377.72171769227,-327.6069351885,-171.70368217376) -Original primary track ID 27 (unknown,1.8699577628705[GeV]) -Cell[9,29] 0.00025927349576434 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00025927349576434 (GeV) - -Source track ID 4408 (pi-,0.29639503091139[GeV]) at (-497.25704229912,52.301375545342,1850.6786222832) +Source track ID 6113 (e-,0.0008019357287215[GeV]) at (-138.77690327121,480.35504693763,1714.3058228539) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[17,41] 0.00093420129162944 [GeV] -Cell[14,3] 0.00019764341298605 [GeV] -Cell[17,34] 0.00060675867407519 [GeV] -Cell[17,33] 3.8921760278754e-07 [GeV] -Cell[18,34] 0.00013068952412482 [GeV] -Cell[19,23] 0.20936592264511 [GeV] -Cell[16,3] 5.1281614685195e-07 [GeV] -Cell[19,21] 1.088968431759e-05 [GeV] -Cell[13,3] 2.0041918230618e-07 [GeV] -Cell[16,2] 1.2224772945046e-09 [GeV] -Cell[19,22] 0.0041521003349836 [GeV] -Cell[18,33] 6.8609383561125e-08 [GeV] -Cell[19,25] 0.002622607048283 [GeV] -Cell[19,24] 0.0046458454869684 [GeV] -Cell[14,5] 0.0027704365016122 [GeV] -Cell[14,4] 0.0020682954866475 [GeV] -Cell[18,23] 0.00012887031198454 [GeV] -Cell[18,22] 7.4032044267369e-08 [GeV] -### Total energy deposition in calorimeter by a source track in 18 cells : 0.22763550671956 (GeV) +Cell[18,14] 0.0002909368187215 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0002909368187215 (GeV) -Source track ID 4417 (mu+,2.8643690993759[GeV]) at (203.35238931579,456.77982197067,1928.0107896384) +Source track ID 6058 (pi+,3.7103832735137[GeV]) at (209.57415981201,453.95888749874,1948.3198639483) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[19,8] 0.097116668021837 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.097116668021837 (GeV) +Cell[19,8] 0.068553058185185 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.068553058185185 (GeV) -Source track ID 4188 (pi+,0.59737085457816[GeV]) at (-417.34273897257,275.36346567196,367.06440071974) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000181126777e-07 mm long + and its vector is (6.948664577066666e-08,-7.080797104208614e-08,1.256347559319693e-08) mm + Endpoint of ComputeStep() was (-168.3463374669275,483.6121614811255,81.30201313094729) + and current position to locate is (-168.3463373974408,483.6121614103175,81.30201314351076) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000145889868e-07 mm long + and its vector is (-6.637390015384881e-08,-7.443939864515414e-08,7.299604476429522e-09) mm + Endpoint of ComputeStep() was (773.6368041588606,37.23717669394061,941.7511689047585) + and current position to locate is (773.6368040924867,37.23717661950121,941.7511689120581) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996349641777e-08 mm long + and its vector is (9.158429747913033e-08,-2.854930869489181e-08,-2.823554723363486e-08) mm + Endpoint of ComputeStep() was (-518.7585708100952,-92.15455027132076,-286.9812639672875) + and current position to locate is (-518.7585707185109,-92.15455029987007,-286.981263995523) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999120090703e-08 mm long + and its vector is (-1.936462012963602e-08,-1.501564383943332e-08,-9.695122571429238e-08) mm + Endpoint of ComputeStep() was (-523.2960387037022,314.8854982298581,382.3178488215097) + and current position to locate is (-523.2960387230668,314.8854982148425,382.3178487245585) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000168257699e-07 mm long + and its vector is (-6.907225724717136e-08,4.571970180222706e-08,-5.602441888186149e-08) mm + Endpoint of ComputeStep() was (-631.0232850182862,155.9154054713694,672.1100260562687) + and current position to locate is (-631.0232850873584,155.9154055170891,672.1100260002443) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999789343337e-08 mm long + and its vector is (-6.316656708804658e-08,-7.483890840376262e-09,-7.716198524576612e-08) mm + Endpoint of ComputeStep() was (357.6952535244661,558.3087065998842,875.4969231034132) + and current position to locate is (357.6952534612996,558.3087065924003,875.4969230262512) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998976251736e-08 mm long + and its vector is (-7.874359653214924e-08,5.452807272376958e-08,2.874253368645441e-08) mm + Endpoint of ComputeStep() was (386.1222324314223,-405.1079888210162,1519.305609425245) + and current position to locate is (386.1222323526787,-405.1079887664882,1519.305609453988) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000148442001e-07 mm long + and its vector is (7.942583124531666e-08,1.522664661024464e-08,-5.881912557015312e-08) mm + Endpoint of ComputeStep() was (-481.522101662107,336.0192710201722,343.795459374655) + and current position to locate is (-481.5221015826812,336.0192710353988,343.7954593158358) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999969535931e-08 mm long + and its vector is (6.707750799250789e-08,-4.782992846230627e-08,-5.668249514201307e-08) mm + Endpoint of ComputeStep() was (-651.058094099916,85.71342420174308,-166.0300479266385) + and current position to locate is (-651.0580940328385,85.71342415391315,-166.030047983321) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997344340637e-08 mm long + and its vector is (-7.350180908360926e-08,-5.461345153889852e-08,4.018519206283599e-08) mm + Endpoint of ComputeStep() was (-155.0390792171615,573.2428337570949,-36.58761268331555) + and current position to locate is (-155.0390792906633,573.2428337024814,-36.58761264313036) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 5789 (pi+,0.59707295842222[GeV]) at (-416.3845090029,276.8102972478,374.84710839969) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[11,21] 0.0034342330700773 [GeV] -Cell[13,41] 0.0010655283849648 [GeV] -Cell[11,20] 0.00039766386426782 [GeV] -Cell[11,19] 0.054520389977314 [GeV] -Cell[12,20] 2.4070590711744e-08 [GeV] -Cell[13,17] 0.0021259632147032 [GeV] -Cell[12,19] 0.051116025910856 [GeV] -Cell[14,12] 1.0666220759958e-09 [GeV] -Cell[14,14] 0.00030667467155456 [GeV] -Cell[13,18] 0.0028466993168846 [GeV] -Cell[14,15] 0.00086196584016307 [GeV] -Cell[14,13] 5.6410289686028e-05 [GeV] -Cell[13,16] 0.0037807258384993 [GeV] -Cell[11,18] 0.0004266116691806 [GeV] -Cell[11,17] 2.4115117298606e-08 [GeV] -Cell[12,18] 0.36547650902974 [GeV] -Cell[12,17] 0.0044525682787419 [GeV] -Cell[13,19] 0.00087449743167974 [GeV] -Cell[12,16] 1.8214781710412e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 19 cells : 0.49176073082235 (GeV) +Cell[7,28] 3.3003407224896e-08 [GeV] +Cell[6,24] 0.00046605073598994 [GeV] +Cell[8,38] 1.3731478247792e-08 [GeV] +Cell[17,32] 1.2671461561695e-05 [GeV] +Cell[14,8] 6.3061554056048e-05 [GeV] +Cell[14,0] 3.7834979593754e-13 [GeV] +Cell[15,47] 0.00017857338107569 [GeV] +Cell[11,40] 3.3430231800594e-05 [GeV] +Cell[17,42] 1.5313204494305e-05 [GeV] +Cell[12,24] 1.5402050077682e-05 [GeV] +Cell[12,22] 0.0008401563939658 [GeV] +Cell[13,23] 0.094241115542576 [GeV] +Cell[11,4] 1.4568480546586e-06 [GeV] +Cell[8,25] 1.5628756955266e-11 [GeV] +Cell[10,15] 6.3316618400222e-07 [GeV] +Cell[10,14] 7.5437128543854e-11 [GeV] +Cell[9,13] 6.5648788449835e-09 [GeV] +Cell[9,14] 9.9732316322161e-05 [GeV] +Cell[8,24] 6.0191566842605e-07 [GeV] +Cell[7,29] 0.0020221757102438 [GeV] +Cell[10,29] 1.5675656817621e-05 [GeV] +Cell[12,19] 0.16048189950139 [GeV] +Cell[15,39] 0.0005137221100631 [GeV] +Cell[11,2] 7.8520970419049e-09 [GeV] +Cell[13,34] 0.00026641253210153 [GeV] +Cell[4,41] 1.8688421114348e-06 [GeV] +Cell[10,40] 5.2725349087268e-06 [GeV] +Cell[15,37] 5.2745946618415e-08 [GeV] +Cell[15,38] 0.0010573814868095 [GeV] +Cell[13,22] 0.00025748004363857 [GeV] +Cell[11,20] 1.5808795666089e-05 [GeV] +Cell[11,6] 4.9680109892506e-05 [GeV] +Cell[11,41] 6.7308057041373e-06 [GeV] +Cell[14,47] 2.5297627871623e-08 [GeV] +Cell[17,31] 2.1046476118499e-05 [GeV] +Cell[12,4] 7.0804700953886e-07 [GeV] +Cell[15,0] 0.0001954095929583 [GeV] +Cell[18,40] 4.3326976301614e-06 [GeV] +Cell[12,21] 0.00021525242215591 [GeV] +Cell[9,22] 0.0013530441643616 [GeV] +Cell[9,23] 5.4494453479492e-08 [GeV] +Cell[11,19] 0.15938076232936 [GeV] +Cell[12,20] 0.00011900040056571 [GeV] +Cell[10,0] 2.3690821690252e-05 [GeV] +Cell[12,18] 0.0015869502805664 [GeV] +Cell[11,17] 1.5119970310479e-05 [GeV] +Cell[11,18] 0.053159765479959 [GeV] +Cell[13,21] 2.8382055461407e-10 [GeV] +Cell[14,7] 0.00055309653772281 [GeV] +Cell[17,41] 0.0011400285084968 [GeV] +Cell[12,17] 0.00044353248187997 [GeV] +### Total energy deposition in calorimeter by a source track in 51 cells : 0.47887424120712 (GeV) -Source track ID 4367 (gamma,0.15251351239083[GeV]) at (-487.09323411561,-112.87241150431,-730.31332205807) +Source track ID 6043 (gamma,0.15251351239083[GeV]) at (-487.09323688795,-112.87239954044,-730.31343149247) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[6,25] 0.12515121704554 [GeV] -Cell[5,45] 0.00051099891 [GeV] -Cell[6,5] 0.0012141098995343 [GeV] -Cell[5,31] 0.00051099891 [GeV] -Cell[1,17] 0.0002554198650551 [GeV] -Cell[6,26] 0.0090120361117563 [GeV] -Cell[2,12] 0.00046634237890761 [GeV] -Cell[2,7] 0.0008760118209769 [GeV] -Cell[5,26] 0.00092090635767981 [GeV] -Cell[5,23] 0.00064184748781785 [GeV] -Cell[4,13] 0.0020773541256299 [GeV] -Cell[6,16] 0.00047009765038062 [GeV] -Cell[2,46] 0.0092816541649127 [GeV] -Cell[3,31] 0.0011245176626333 [GeV] -### Total energy deposition in calorimeter by a source track in 14 cells : 0.15251351239083 (GeV) +Cell[6,25] 0.12776305926678 [GeV] +Cell[5,25] 0.0022478517944409 [GeV] +Cell[5,26] 0.00021849724845351 [GeV] +Cell[6,26] 0.010490317809916 [GeV] +Cell[3,47] 0.00051099891 [GeV] +Cell[4,47] 0.00051099891 [GeV] +Cell[10,41] 0.010419682306193 [GeV] +Cell[6,10] 0.00035210614504205 [GeV] +### Total energy deposition in calorimeter by a source track in 8 cells : 0.15251351239083 (GeV) -Source track ID 4369 (e-,0.098612788659234[GeV]) at (-457.81352875176,-201.01435991457,3.4109170127856) +Source track ID 6044 (gamma,0.13352323164713[GeV]) at (-462.29599616793,-190.47942651924,2.9650690653141) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[11,21] 0.00048917002789482 [GeV] -Cell[10,28] 0.0035213850124364 [GeV] -Cell[9,27] 0.0030102839000023 [GeV] -Cell[9,28] 0.0019508015963203 [GeV] -Cell[10,46] 0.00039231014299295 [GeV] -Cell[6,45] 0.00093871541576542 [GeV] -Cell[10,27] 0.087799123653822 [GeV] -### Total energy deposition in calorimeter by a source track in 7 cells : 0.098101789749234 (GeV) +Cell[7,42] 0.00097921048748841 [GeV] +Cell[10,27] 0.026898789985302 [GeV] +Cell[9,26] 0.014933556370444 [GeV] +Cell[10,26] 0.060484112864786 [GeV] +Cell[9,27] 0.027580600640751 [GeV] +Cell[9,28] 0.0015779888740273 [GeV] +Cell[3,18] 9.3439145027105e-05 [GeV] +Cell[7,35] 9.5974103081226e-05 [GeV] +### Total energy deposition in calorimeter by a source track in 8 cells : 0.13264367247091 (GeV) -Source track ID 4378 (gamma,0.0016311924041873[GeV]) at (-466.41338449341,-180.16257870434,-18.785478268197) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999139317807e-08 mm long + and its vector is (-4.969274414179381e-08,7.954844249979942e-08,3.467960141279036e-08) mm + Endpoint of ComputeStep() was (516.1126668774222,-394.7046573035202,872.6147509979552) + and current position to locate is (516.1126668277294,-394.7046572239717,872.6147510326348) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998878904522e-08 mm long + and its vector is (-9.395603228767868e-08,-2.575774260549224e-08,-2.255660547234584e-08) mm + Endpoint of ComputeStep() was (354.9638904520981,-397.7349190741172,803.6938295481514) + and current position to locate is (354.9638903581421,-397.7349190998749,803.6938295255948) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000170728214e-07 mm long + and its vector is (1.780847469490254e-09,1.491770262873615e-08,-9.886502994049806e-08) mm + Endpoint of ComputeStep() was (354.9851906438186,485.9405827542093,1400.000000098865) + and current position to locate is (354.9851906455995,485.940582769127,1400) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000015252728e-07 mm long + and its vector is (-8.752982694204547e-08,-1.077825118045439e-08,-4.714190282584241e-08) mm + Endpoint of ComputeStep() was (484.1784679248595,292.5408805491881,41.69748614362405) + and current position to locate is (484.1784678373297,292.5408805384099,41.69748609648214) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997740471163e-08 mm long + and its vector is (1.638221647226601e-08,9.7417341748951e-08,1.553962647449225e-08) mm + Endpoint of ComputeStep() was (281.8097350776003,-618.8564238390308,891.4109503951304) + and current position to locate is (281.8097350939825,-618.8564237416134,891.41095041067) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999712956286e-08 mm long + and its vector is (-6.55447252029262e-08,1.309621211476042e-08,7.437995463988045e-08) mm + Endpoint of ComputeStep() was (321.2782226822641,-506.7349442119759,830.2686114059157) + and current position to locate is (321.2782226167193,-506.7349441988797,830.2686114802957) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000662216444e-07 mm long + and its vector is (-1.762920476267027e-08,-9.025632152770413e-08,-3.928130354324821e-08) mm + Endpoint of ComputeStep() was (-76.62154449448666,-524.4322061257404,1815.104910220465) + and current position to locate is (-76.62154451211586,-524.4322062159968,1815.104910181184) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000126747456e-07 mm long + and its vector is (1.268456628622516e-08,6.016659881424857e-08,-7.886117359134914e-08) mm + Endpoint of ComputeStep() was (68.11679510786216,575.9861996204381,12.5276623584111) + and current position to locate is (68.11679512054673,575.9861996806047,12.52766227954992) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000133817547e-07 mm long + and its vector is (-5.366234745451948e-08,7.505514076910913e-08,-3.856268904200988e-08) mm + Endpoint of ComputeStep() was (580.7422548531601,-520.7095481826303,877.038027444706) + and current position to locate is (580.7422547994978,-520.7095481075752,877.0380274061433) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000283249632e-07 mm long + and its vector is (-4.405296749609988e-08,8.885069746611407e-08,-1.284115569433197e-08) mm + Endpoint of ComputeStep() was (553.847102073601,-627.2485185897227,880.5236426184564) + and current position to locate is (553.8471020295481,-627.248518500872,880.5236426056152) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000294807054e-07 mm long + and its vector is (-5.664463742505177e-08,6.50269385005231e-08,-5.062497621111106e-08) mm + Endpoint of ComputeStep() was (443.8838502420336,-579.5404451977158,958.6576656667396) + and current position to locate is (443.883850185389,-579.5404451326889,958.6576656161146) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995686581027e-08 mm long + and its vector is (2.45026399170456e-08,-7.226367415569257e-08,-6.463415047619492e-08) mm + Endpoint of ComputeStep() was (446.795119959581,-815.6433783465206,1096.09230940295) + and current position to locate is (446.7951199840837,-815.6433784187843,1096.092309338316) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000033497349e-07 mm long + and its vector is (2.44813236349728e-08,9.604127626516856e-08,-1.329431142949034e-08) mm + Endpoint of ComputeStep() was (621.9685723051001,-707.045311404892,1156.561879232264) + and current position to locate is (621.9685723295814,-707.0453113088507,1156.56187921897) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999342914114e-08 mm long + and its vector is (-5.614657538899337e-08,-2.631281859066803e-08,-7.845505933801178e-08) mm + Endpoint of ComputeStep() was (350.8780191459229,-1033.596030327818,1122.993067132891) + and current position to locate is (350.8780190897763,-1033.596030354131,1122.993067054436) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000023072303e-07 mm long + and its vector is (-8.629126568848733e-08,2.194133230659645e-08,4.552362042886671e-08) mm + Endpoint of ComputeStep() was (504.2551656873029,-856.4977197224605,903.0040535432838) + and current position to locate is (504.2551656010116,-856.4977197005192,903.0040535888074) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000831289602e-07 mm long + and its vector is (-3.270866955062957e-08,-5.975857675366569e-08,-7.320568329305388e-08) mm + Endpoint of ComputeStep() was (366.6931777142408,-1076.609456117259,1268.384814740939) + and current position to locate is (366.6931776815321,-1076.609456177017,1268.384814667733) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000203670554e-07 mm long + and its vector is (9.629189889892587e-08,2.674417487469327e-08,3.552941052475944e-09) mm + Endpoint of ComputeStep() was (-430.1869821514693,254.8316315856961,850.5545574656109) + and current position to locate is (-430.1869820551774,254.8316316124402,850.5545574691638) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998467034762e-08 mm long + and its vector is (5.326495511326357e-08,3.974838591602747e-08,-7.471885510312859e-08) mm + Endpoint of ComputeStep() was (371.840984500295,-392.1715733171839,888.9601116539856) + and current position to locate is (371.8409845535599,-392.1715732774355,888.9601115792667) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998011825235e-08 mm long + and its vector is (1.706871444184799e-08,8.629177727925708e-08,4.756452653964516e-08) mm + Endpoint of ComputeStep() was (369.5790137828392,-511.6106372421105,918.8732045784756) + and current position to locate is (369.579013799908,-511.6106371558187,918.8732046260401) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995369279572e-08 mm long + and its vector is (6.267117669267463e-08,7.179880867624888e-08,3.028605988220079e-08) mm + Endpoint of ComputeStep() was (295.3441147113173,-520.2056910458833,862.3647101195576) + and current position to locate is (295.3441147739885,-520.2056909740845,862.3647101498436) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999601272359e-08 mm long + and its vector is (9.389344768351293e-08,1.31947217596462e-08,-3.177922280883649e-08) mm + Endpoint of ComputeStep() was (310.9172123341917,-439.3774691194258,740.8840061239948) + and current position to locate is (310.9172124280851,-439.377469106231,740.8840060922156) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000137138708e-07 mm long + and its vector is (7.640204557901598e-08,1.665989657340106e-08,6.233119620446814e-08) mm + Endpoint of ComputeStep() was (281.7255861708035,-458.1964285145513,795.1109670291605) + and current position to locate is (281.7255862472056,-458.1964284978914,795.1109670914917) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000222403404e-07 mm long + and its vector is (-5.874653652426787e-08,-2.534591203584569e-08,-7.685332548135193e-08) mm + Endpoint of ComputeStep() was (531.7786538788285,135.3908859396007,231.3523191650042) + and current position to locate is (531.778653820082,135.3908859142548,231.3523190881508) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000258762023e-07 mm long + and its vector is (2.560358325354173e-08,-2.014030542341061e-08,-9.454538485442754e-08) mm + Endpoint of ComputeStep() was (354.6477602338914,-574.4487655633637,1011.266815696544) + and current position to locate is (354.647760259495,-574.448765583504,1011.266815601998) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996278433839e-08 mm long + and its vector is (-1.005128069664352e-08,6.179141109896591e-08,-7.797939360898454e-08) mm + Endpoint of ComputeStep() was (-630.5214181693956,75.51485681916911,1374.512494004831) + and current position to locate is (-630.5214181794469,75.51485688096052,1374.512493926852) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999204002691e-08 mm long + and its vector is (4.849027845921228e-09,-1.324451659456827e-11,9.988235660784994e-08) mm + Endpoint of ComputeStep() was (459.3420399774654,365.7216015134153,477.4316530968051) + and current position to locate is (459.3420399823144,365.721601513402,477.4316531966874) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998480487758e-08 mm long + and its vector is (-1.202045041281963e-08,-9.923661536959116e-08,2.756792127911467e-09) mm + Endpoint of ComputeStep() was (389.6293224464934,-389.6293223352368,811.298688697404) + and current position to locate is (389.629322434473,-389.6293224344734,811.2986887001608) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000032024741e-07 mm long + and its vector is (2.800845777528593e-09,9.656912425271003e-08,-2.581782609922811e-08) mm + Endpoint of ComputeStep() was (277.8994245176064,-524.5247178254555,1000.000000025818) + and current position to locate is (277.8994245204073,-524.5247177288863,1000) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000084983199e-07 mm long + and its vector is (8.778778237683582e-08,-4.678628329202184e-08,-1.021521711663809e-08) mm + Endpoint of ComputeStep() was (395.5921349179308,-492.460665921806,759.8922484465709) + and current position to locate is (395.5921350057185,-492.4606659685923,759.8922484363557) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000005457042e-07 mm long + and its vector is (-7.279038527485682e-08,6.841491995146498e-08,-4.578168955049478e-09) mm + Endpoint of ComputeStep() was (373.2176301956929,-469.7963395235499,703.130835734067) + and current position to locate is (373.2176301229025,-469.796339455135,703.1308357294888) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 6028 (pi-,0.85378155902069[GeV]) at (323.42859836076,-381.30557530987,735.16797042139) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[9,26] 0.0016311924041873 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.0016311924041873 (GeV) +Cell[8,6] 1.3580641971203e-05 [GeV] +Cell[7,10] 0.0022230572656029 [GeV] +Cell[9,8] 9.1642624756787e-06 [GeV] +Cell[7,11] 2.7600870403148e-06 [GeV] +Cell[9,11] 0.00056847090005294 [GeV] +Cell[9,3] 1.4867982827127e-09 [GeV] +Cell[10,31] 0.00021861695502957 [GeV] +Cell[10,32] 0.00050304738871944 [GeV] +Cell[18,35] 1.1211424771318e-07 [GeV] +Cell[14,8] 1.3239689809552e-06 [GeV] +Cell[13,40] 0.0073922154834618 [GeV] +Cell[16,38] 0.0026901823699145 [GeV] +Cell[16,39] 0.0011220586859043 [GeV] +Cell[6,12] 6.6207856593792e-05 [GeV] +Cell[6,11] 2.2399801614711e-05 [GeV] +Cell[10,33] 0.0022231637072385 [GeV] +Cell[15,40] 0.0035164510642075 [GeV] +Cell[15,39] 0.0098516904036317 [GeV] +Cell[11,1] 5.5845769111329e-09 [GeV] +Cell[11,2] 2.9172759275298e-07 [GeV] +Cell[15,38] 0.008847122921661 [GeV] +Cell[13,43] 0.00029546407177031 [GeV] +Cell[10,3] 0.0001550999609135 [GeV] +Cell[14,39] 0.0051883027231455 [GeV] +Cell[14,41] 0.17585748669463 [GeV] +Cell[14,40] 0.015779037675801 [GeV] +Cell[14,38] 0.0003181492806317 [GeV] +Cell[13,42] 0.0037280896534284 [GeV] +Cell[14,43] 0.0069439766646061 [GeV] +Cell[10,11] 3.1549234336126e-11 [GeV] +Cell[12,3] 2.5803480733884e-05 [GeV] +Cell[17,38] 0.0012249626549713 [GeV] +Cell[16,7] 4.3049922237515e-07 [GeV] +Cell[12,4] 0.004349536799306 [GeV] +Cell[18,34] 0.002736843454472 [GeV] +Cell[13,41] 0.094855115297632 [GeV] +Cell[14,42] 0.10025796199243 [GeV] +Cell[15,42] 3.4737614632832e-06 [GeV] +Cell[13,39] 0.0013955944427148 [GeV] +Cell[15,41] 0.001548350859409 [GeV] +Cell[16,23] 3.3215954259049e-05 [GeV] +Cell[17,16] 2.6251328963554e-05 [GeV] +Cell[17,39] 0.0022230704300304 [GeV] +Cell[17,7] 6.8696379431117e-05 [GeV] +Cell[9,4] 4.0274462662637e-09 [GeV] +Cell[10,4] 0.00077201721153085 [GeV] +Cell[18,9] 0.0023298988871372 [GeV] +Cell[15,24] 1.4601150469389e-06 [GeV] +Cell[16,22] 0.00038192756453827 [GeV] +Cell[11,18] 0.00031754182126497 [GeV] +Cell[17,6] 2.5557227530612e-05 [GeV] +Cell[17,17] 1.261212391546e-05 [GeV] +Cell[19,34] 1.0637472769304e-10 [GeV] +Cell[18,10] 0.0022805557120187 [GeV] +Cell[14,9] 1.0083613650863e-05 [GeV] +Cell[12,5] 0.00040744482341995 [GeV] +### Total energy deposition in calorimeter by a source track in 56 cells : 0.4628259420027 (GeV) -Source track ID 4381 (gamma,0.00018025224633511[GeV]) at (-178.12918555726,467.19374273711,1199.426040122) +Source track ID 6024 (gamma,0.00036790977862492[GeV]) at (386.9325632682,-316.67521450644,155.61383571532) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[16,14] 0.00018025224633511 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00018025224633511 (GeV) +Cell[10,42] 0.00036790977862492 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.00036790977862492 (GeV) -Source track ID 4383 (gamma,0.0019768596909019[GeV]) at (329.22285285706,376.3141150112,190.79869634636) +Source track ID 6020 (e-,0.17933222138391[GeV]) at (396.04362342757,-305.20394548951,158.44780278469) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[11,5] 0.0019768596909019 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.0019768596909019 (GeV) +Cell[10,44] 0.0024508620285744 [GeV] +Cell[10,43] 0.16689505041677 [GeV] +Cell[14,39] 0.00051099891 [GeV] +Cell[10,41] 0.00017851560153643 [GeV] +Cell[10,42] 0.0058237097146714 [GeV] +### Total energy deposition in calorimeter by a source track in 5 cells : 0.17585913667156 (GeV) -Source track ID 4384 (gamma,0.0021695488762157[GeV]) at (-468.52197259108,-174.60573071742,4.1130582950073) +Source track ID 6021 (e+,0.18178468937917[GeV]) at (215.46498028334,-451.19268862815,160.58994472442) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[10,26] 0.0021695488762157 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.0021695488762157 (GeV) +Cell[11,3] 0.00029257558610574 [GeV] +Cell[11,39] 0.00058357119092197 [GeV] +Cell[10,38] 0.02725743350928 [GeV] +Cell[10,39] 0.15394368467897 [GeV] +### Total energy deposition in calorimeter by a source track in 4 cells : 0.18207726496528 (GeV) -Source track ID 4388 (gamma,0.00012214610314096[GeV]) at (-489.94888631414,-99.750131827154,143.47868741012) +Source track ID 6019 (gamma,0.13885684299554[GeV]) at (475.10692081791,-155.79927403852,345.33261920249) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[10,25] 0.00012214610314096 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00012214610314096 (GeV) +Cell[8,13] 0.00029466011273279 [GeV] +Cell[12,45] 0.00051099891 [GeV] +Cell[12,44] 0.00051099891 [GeV] +Cell[11,45] 0.13534486937757 [GeV] +Cell[11,46] 0.0021953156852412 [GeV] +### Total energy deposition in calorimeter by a source track in 5 cells : 0.13885684299554 (GeV) -Source track ID 4389 (gamma,0.00083669601572796[GeV]) at (-415.60050008827,-277.98601462372,159.03308214979) +Source track ID 5804 (gamma,0.1484777566564[GeV]) at (-237.22761966349,440.13981468255,-159.00519902475) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[10,28] 0.00083669601572796 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00083669601572796 (GeV) +Cell[9,14] 0.00044206817251643 [GeV] +Cell[9,15] 0.12211017121369 [GeV] +Cell[9,16] 0.025925517270201 [GeV] +### Total energy deposition in calorimeter by a source track in 3 cells : 0.1484777566564 (GeV) -Source track ID 4390 (gamma,0.0032435563693827[GeV]) at (499.80330086457,14.023567480657,529.60651427587) +Source track ID 5853 (gamma,0.0014450961757632[GeV]) at (98.851905860896,490.13090160453,-69.415046204767) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[12,0] 0.0032435563693827 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.0032435563693827 (GeV) +Cell[9,10] 0.0014450961757632 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0014450961757632 (GeV) -Source track ID 4359 (pi-,0.85381111291735[GeV]) at (322.83617515097,-381.80728648611,730.81510792496) +Source track ID 5854 (gamma,0.0061167172306738[GeV]) at (57.487592477744,496.68418206252,-72.733725990483) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[15,41] 0.19489034515482 [GeV] -Cell[13,41] 0.073239521627357 [GeV] -Cell[15,44] 0.0039755861456714 [GeV] -Cell[14,43] 0.0014008845357391 [GeV] -Cell[15,42] 0.036694261329323 [GeV] -Cell[14,42] 0.18550045209532 [GeV] -Cell[14,41] 0.11172917999611 [GeV] -Cell[13,42] 2.8609944274649e-06 [GeV] -Cell[14,44] 0.00021956634411242 [GeV] -Cell[15,43] 0.0050695832687632 [GeV] -Cell[15,45] 4.6357278721189e-05 [GeV] -Cell[16,42] 0.0015136754021292 [GeV] -Cell[16,43] 0.0010838473380898 [GeV] -Cell[16,41] 0.0071674564130027 [GeV] -Cell[15,46] 0.00095528206809104 [GeV] -Cell[16,46] 9.7141719095362e-05 [GeV] -Cell[16,47] 0.00022852285265139 [GeV] -### Total energy deposition in calorimeter by a source track in 17 cells : 0.62381452456342 (GeV) +Cell[9,11] 0.0061167172306738 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0061167172306738 (GeV) -Source track ID 4352 (gamma,0.0010912030609591[GeV]) at (315.70654673426,-387.72332448426,145.76725539319) +Source track ID 5855 (gamma,0.00037791632902193[GeV]) at (57.499283018975,496.68282882772,-74.022679813904) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[10,41] 0.0010912030609591 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.0010912030609591 (GeV) +Cell[9,11] 0.00037791632902193 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.00037791632902193 (GeV) -Source track ID 4354 (gamma,0.016213360983538[GeV]) at (351.86638237798,-355.23238725127,153.76973898014) +Source track ID 5860 (gamma,0.010036000636982[GeV]) at (-476.15341202756,-152.57105955756,-110.25820997594) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[10,42] 0.0041715483055805 [GeV] -Cell[10,41] 0.012041812677957 [GeV] -### Total energy deposition in calorimeter by a source track in 2 cells : 0.016213360983538 (GeV) +Cell[10,18] 0.00040381468203111 [GeV] +Cell[9,26] 0.0095250017269819 [GeV] +### Total energy deposition in calorimeter by a source track in 2 cells : 0.009928816409013 (GeV) -Source track ID 4304 (e-,0.20405198350325[GeV]) at (426.83564225399,-260.40609536188,166.67174055954) +Source track ID 5867 (gamma,0.0013581989710766[GeV]) at (270.90640393655,420.24959286853,-104.44084854914) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[11,45] 0.0018186227278047 [GeV] -Cell[11,44] 0.0076578378344177 [GeV] -Cell[11,28] 0.0012422022959548 [GeV] -Cell[15,27] 0.00029079457024709 [GeV] -Cell[12,7] 0.00044289045885856 [GeV] -Cell[14,6] 0.00051099891 [GeV] -Cell[10,42] 0.00051099891 [GeV] -Cell[10,43] 0.094581871046619 [GeV] -Cell[17,6] 0.00061715052919454 [GeV] -Cell[10,44] 0.092027379817784 [GeV] -### Total energy deposition in calorimeter by a source track in 10 cells : 0.19970074710088 (GeV) +Cell[9,7] 0.0013581989710766 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0013581989710766 (GeV) -Source track ID 4306 (gamma,0.0065571522902146[GeV]) at (240.97300014636,-438.1004601692,154.99445870395) +Source track ID 5868 (gamma,0.017176846287226[GeV]) at (260.44974547656,426.80900890351,-90.015451705771) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[11,39] 0.001028451354372 [GeV] -Cell[10,39] 0.0055287009358426 [GeV] -### Total energy deposition in calorimeter by a source track in 2 cells : 0.0065571522902146 (GeV) +Cell[9,7] 0.017176846287226 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.017176846287226 (GeV) -Source track ID 4310 (gamma,0.0020974471126899[GeV]) at (204.47784047642,-456.27712275995,125.34833359498) +Source track ID 5872 (gamma,0.0015012192320791[GeV]) at (110.69362663091,487.59298705303,-98.537683847749) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[10,39] 0.0020974471126899 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.0020974471126899 (GeV) +Cell[9,10] 0.0015012192320791 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0015012192320791 (GeV) -Source track ID 4313 (gamma,0.020411672298111[GeV]) at (20.792928058878,-499.56746705799,207.25755690139) +Source track ID 5873 (gamma,0.0027153089250205[GeV]) at (98.774772183587,490.14645197133,-100.60900989675) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[11,36] 0.016342182919681 [GeV] -Cell[11,35] 0.0013426607365806 [GeV] -Cell[10,36] 0.0027268286418488 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.020411672298111 (GeV) +Cell[9,10] 0.0027153089250205 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0027153089250205 (GeV) -Source track ID 4314 (gamma,7.4627981722186e-05[GeV]) at (-413.76057669031,-280.71726911059,361.4185210882) +Source track ID 5876 (gamma,0.0037230265728876[GeV]) at (3.2474501349688,499.9894539564,-108.84962480559) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[11,28] 7.4627981722186e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 7.4627981722186e-05 (GeV) +Cell[9,11] 0.0026195636541622 [GeV] +Cell[9,12] 0.0011034629187254 [GeV] +### Total energy deposition in calorimeter by a source track in 2 cells : 0.0037230265728876 (GeV) -Source track ID 4315 (gamma,0.00018867805028871[GeV]) at (-411.34958032712,-284.23849627504,362.89918073201) +Source track ID 5878 (gamma,0.030516500256382[GeV]) at (-134.02633147746,481.70213044027,-120.36541296629) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[11,28] 0.00018867805028871 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00018867805028871 (GeV) +Cell[9,13] 0.00051099891 [GeV] +Cell[9,14] 0.030005501346382 [GeV] +### Total energy deposition in calorimeter by a source track in 2 cells : 0.030516500256382 (GeV) -Source track ID 4316 (gamma,0.00023118176690367[GeV]) at (27.593830993576,499.23799984686,571.003177808) +Source track ID 5891 (gamma,0.0006072083795211[GeV]) at (81.405330709539,493.32866542709,112.69286315263) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[12,11] 0.00023118176690367 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00023118176690367 (GeV) +Cell[10,10] 0.0006072083795211 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0006072083795211 (GeV) -Source track ID 4305 (e+,0.079102207061602[GeV]) at (438.89656882561,239.51994044987,1346.8671443953) +Source track ID 5894 (gamma,0.005108513660975[GeV]) at (151.86126117708,-476.38026549565,511.21320262204) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[16,4] 0.011880570974319 [GeV] -Cell[17,5] 0.0019206004141251 [GeV] -Cell[16,3] 0.065812034583158 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.079613205971602 (GeV) +Cell[12,38] 0.005108513660975 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.005108513660975 (GeV) -Source track ID 4303 (gamma,0.13885684299554[GeV]) at (475.10691145523,-155.79930258982,345.33260344403) +Source track ID 5817 (gamma,0.0019337506167169[GeV]) at (274.69188224978,417.78507611698,-56.160748636555) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[11,45] 0.11505121570622 [GeV] -Cell[12,45] 0.0013574917162901 [GeV] -Cell[12,46] 0.0020909831372467 [GeV] -Cell[11,47] 0.011395197294642 [GeV] -Cell[11,46] 0.0015940721243553 [GeV] -### Total energy deposition in calorimeter by a source track in 5 cells : 0.13148895997876 (GeV) +Cell[9,7] 0.0019337506167169 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0019337506167169 (GeV) -Source track ID 4205 (gamma,0.1484777566564[GeV]) at (-237.22761058828,440.13981957394,-159.00519775578) +Source track ID 5820 (gamma,0.0015622437997111[GeV]) at (271.60469793961,419.79862798386,-82.164302605321) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[8,15] 0.00020850959857431 [GeV] -Cell[12,10] 0.0001882233600153 [GeV] -Cell[12,22] 0.0037588625429221 [GeV] -Cell[14,27] 0.0037588708023194 [GeV] -Cell[9,15] 0.12812986252378 [GeV] -Cell[6,0] 0.0015451777163388 [GeV] -Cell[8,38] 0.00064582131767291 [GeV] -Cell[9,14] 0.0085080415222476 [GeV] -Cell[9,16] 0.0011127363056278 [GeV] -Cell[6,29] 0.0002814129174113 [GeV] -### Total energy deposition in calorimeter by a source track in 10 cells : 0.14813751860691 (GeV) +Cell[9,7] 0.0015622437997111 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0015622437997111 (GeV) -Source track ID 4206 (gamma,0.20137908385321[GeV]) at (152.32666569235,476.23165257997,-66.015725519364) +Source track ID 5827 (gamma,0.00032607087495569[GeV]) at (452.01110603586,213.74274261419,-122.8137389881) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[9,9] 0.19561385046003 [GeV] -Cell[9,10] 0.00528642372884 [GeV] -Cell[8,6] 7.3081496558854e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.20097335568543 (GeV) +Cell[9,3] 0.00032607087495569 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.00032607087495569 (GeV) -Source track ID 4193 (pi-,0.39878825001736[GeV]) at (389.2065016604,-313.8762480107,368.16576594145) +Source track ID 5829 (gamma,6.5064095491883e-05[GeV]) at (283.61911340342,-411.77687952611,603.78219866521) Original primary track ID 29 (unknown,1.6025887774154[GeV]) -Cell[12,44] 0.2294162156319 [GeV] -Cell[11,43] 0.038999551556927 [GeV] -Cell[12,45] 0.0024820398450053 [GeV] -Cell[13,45] 0.0019765155094759 [GeV] -Cell[13,44] 0.00018320714347919 [GeV] -Cell[13,43] 3.5970432767499e-05 [GeV] -Cell[12,43] 0.055145084878805 [GeV] -Cell[11,42] 0.024322978933044 [GeV] -Cell[12,42] 5.1339156925678e-11 [GeV] -### Total energy deposition in calorimeter by a source track in 9 cells : 0.35256156398275 (GeV) +Cell[13,40] 6.5064095491883e-05 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 6.5064095491883e-05 (GeV) -Source track ID 4185 (gamma,0.094503470007519[GeV]) at (318.07142259073,385.78565309133,-1059.6704345102) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[4,7] 0.011511463537279 [GeV] -Cell[4,6] 0.08299200647024 [GeV] -### Total energy deposition in calorimeter by a source track in 2 cells : 0.094503470007518 (GeV) - -Source track ID 4135 (pi+,0.3320035210342[GeV]) at (204.5533476899,456.24327715469,-1579.9971533814) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[8,5] 4.1374430566066e-09 [GeV] -Cell[8,4] 1.1656053823117e-07 [GeV] -Cell[3,2] 1.179521958079e-06 [GeV] -Cell[0,42] 1.0979673343172e-05 [GeV] -Cell[1,22] 1.1285150045296e-05 [GeV] -Cell[1,8] 0.033921274531525 [GeV] -Cell[1,7] 0.0014109348388807 [GeV] -Cell[2,15] 1.7710623296807e-09 [GeV] -Cell[5,43] 5.6793127441779e-08 [GeV] -Cell[2,21] 0.0020323865841298 [GeV] -Cell[2,20] 0.0015185550967521 [GeV] -Cell[2,22] 1.952266599119e-07 [GeV] -Cell[1,19] 3.5724107874557e-08 [GeV] -Cell[5,24] 0.072665421883531 [GeV] -Cell[2,7] 2.0293250330724e-05 [GeV] -Cell[1,9] 1.7208007329828e-07 [GeV] -Cell[1,42] 1.597060990548e-06 [GeV] -Cell[3,15] 9.4400078523904e-08 [GeV] -Cell[4,30] 1.2009995407425e-07 [GeV] -Cell[2,16] 6.5520200109859e-08 [GeV] -Cell[8,2] 9.790049064577e-06 [GeV] -Cell[8,21] 1.6607248107903e-07 [GeV] -Cell[2,8] 0.028729738751699 [GeV] -Cell[0,29] 0.00029654000115374 [GeV] -Cell[0,28] 0.00042590634770465 [GeV] -Cell[8,3] 1.8747936701402e-07 [GeV] -Cell[1,16] 5.7758965106132e-06 [GeV] -Cell[0,43] 0.0068664101842457 [GeV] -Cell[2,19] 0.00039394245818664 [GeV] -Cell[3,1] 1.907444675453e-08 [GeV] -Cell[0,32] 2.9156915843487e-08 [GeV] -Cell[2,44] 1.5439045413359e-06 [GeV] -### Total energy deposition in calorimeter by a source track in 32 cells : 0.14832481928105 (GeV) - -Source track ID 4136 (pi-,0.61475512165314[GeV]) at (84.527792104224,492.80325928507,-890.62544625938) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[5,9] 1.4979339371166e-05 [GeV] -Cell[5,8] 0.00046576353571743 [GeV] -Cell[5,10] 0.068552673958 [GeV] -Cell[4,9] 0.0067685242064615 [GeV] -Cell[6,14] 0.00024800610574698 [GeV] -Cell[6,13] 0.00090809421124709 [GeV] -Cell[3,8] 0.0019806393581011 [GeV] -Cell[3,7] 0.00053143736348261 [GeV] -Cell[2,10] 0.00018880748449646 [GeV] -Cell[2,7] 6.8069184963633e-05 [GeV] -Cell[2,9] 0.00011029306639978 [GeV] -Cell[3,10] 5.8724232908389e-06 [GeV] -Cell[4,12] 0.0019924173981492 [GeV] -Cell[4,11] 0.20663028151634 [GeV] -Cell[3,11] 0.00056267452135182 [GeV] -Cell[3,9] 0.027984876770145 [GeV] -Cell[5,13] 0.0030197513693312 [GeV] -Cell[4,10] 0.0039819922531254 [GeV] -Cell[4,13] 0.01553100288427 [GeV] -Cell[2,8] 0.00023315556434147 [GeV] -Cell[5,11] 0.058556905635676 [GeV] -Cell[4,14] 0.0028546943157861 [GeV] -### Total energy deposition in calorimeter by a source track in 22 cells : 0.40119091246579 (GeV) - -Source track ID 2674 (pi+,0.42336898179292[GeV]) at (-378.49001402994,326.71900660907,-1087.3138806622) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[6,46] 0.0085367633663416 [GeV] -Cell[9,42] 2.609190696603e-07 [GeV] -Cell[9,43] 0.00042554015547921 [GeV] -Cell[12,44] 1.5674565268455e-05 [GeV] -Cell[11,44] 8.140159195591e-08 [GeV] -Cell[5,17] 0.0011851120063127 [GeV] -Cell[4,18] 0.068450961446858 [GeV] -Cell[4,17] 0.23575928167353 [GeV] -Cell[4,16] 0.029064480815027 [GeV] -Cell[4,4] 0.00096083197106317 [GeV] -Cell[5,46] 0.00010014473645151 [GeV] -Cell[6,47] 0.0019604873293301 [GeV] -Cell[5,0] 0.0014963221456663 [GeV] -Cell[5,47] 0.0065857664442033 [GeV] -Cell[12,43] 3.8575221168912e-05 [GeV] -Cell[9,22] 0.0011583389421792 [GeV] -Cell[12,42] 1.4495058312946e-05 [GeV] -Cell[6,45] 0.0005993271974952 [GeV] -### Total energy deposition in calorimeter by a source track in 18 cells : 0.35635244539535 (GeV) - -Source track ID 4093 (pi-,0.4937205340038[GeV]) at (312.13155708111,-390.60708016385,-961.45452905725) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[6,38] 6.9500429943673e-05 [GeV] -Cell[4,38] 0.0016630968518057 [GeV] -Cell[4,39] 0.00011716420076732 [GeV] -Cell[6,39] 0.00052102740267344 [GeV] -Cell[4,42] 0.1418538786074 [GeV] -Cell[10,23] 0.002137773830514 [GeV] -Cell[10,24] 0.0012290935810555 [GeV] -Cell[6,32] 0.0042606612335323 [GeV] -Cell[4,43] 0.00047910674983355 [GeV] -Cell[5,38] 5.8446615940625e-05 [GeV] -Cell[6,44] 0.001291577567829 [GeV] -Cell[5,43] 0.0031084682804741 [GeV] -Cell[2,25] 9.3881775683258e-06 [GeV] -Cell[5,25] 3.0740551437702e-09 [GeV] -Cell[5,26] 3.1389608187737e-06 [GeV] -Cell[4,23] 0.00078169208053964 [GeV] -Cell[4,22] 0.00035914759285947 [GeV] -Cell[3,25] 2.9777690942865e-06 [GeV] -Cell[2,24] 7.2002398374025e-06 [GeV] -Cell[4,40] 0.0014991076097563 [GeV] -Cell[5,39] 6.2304010771186e-07 [GeV] -Cell[5,40] 5.180209261016e-05 [GeV] -Cell[4,41] 0.14513981855083 [GeV] -Cell[5,42] 0.0048919450376909 [GeV] -Cell[5,41] 0.056270497942504 [GeV] -Cell[3,38] 0.00049433185434191 [GeV] -Cell[2,28] 0.0023897027033002 [GeV] -### Total energy deposition in calorimeter by a source track in 27 cells : 0.36869117207769 (GeV) - -Source track ID 4094 (pi+,1.8609125347467[GeV]) at (-197.55811689223,459.31556739348,-618.09044117734) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[6,46] 0.00014908707803284 [GeV] -Cell[7,1] 0.0021141199151091 [GeV] -Cell[7,0] 0.00091616415772796 [GeV] -Cell[7,32] 2.64307189791e-05 [GeV] -Cell[6,35] 4.6694530988134e-07 [GeV] -Cell[7,7] 1.837020914536e-06 [GeV] -Cell[8,35] 0.00024250734547536 [GeV] -Cell[7,30] 1.8719716143096e-05 [GeV] -Cell[7,17] 0.0026380694191972 [GeV] -Cell[6,31] 1.6305503348121e-05 [GeV] -Cell[8,13] 9.8875783566408e-05 [GeV] -Cell[7,13] 0.00038232107363547 [GeV] -Cell[4,46] 0.0081321087142605 [GeV] -Cell[10,6] 3.1346462783404e-06 [GeV] -Cell[6,22] 0.00040982776681906 [GeV] -Cell[5,21] 0.0010586114556654 [GeV] -Cell[7,47] 8.2064761386391e-08 [GeV] -Cell[3,2] 3.2073127971785e-05 [GeV] -Cell[7,27] 0.0012932449250419 [GeV] -Cell[3,28] 0.0013170749590174 [GeV] -Cell[4,44] 0.0069731203015177 [GeV] -Cell[7,37] 0.0027383875283521 [GeV] -Cell[4,42] 0.0001007555150718 [GeV] -Cell[11,32] 1.6387707546528e-09 [GeV] -Cell[13,8] 0.00051099891 [GeV] -Cell[4,2] 2.3371978500109e-08 [GeV] -Cell[11,22] 0.00036406843813487 [GeV] -Cell[11,37] 0.0016861530813792 [GeV] -Cell[11,36] 0.0012967915531679 [GeV] -Cell[11,35] 0.0022230756256452 [GeV] -Cell[10,20] 0.00042369502122241 [GeV] -Cell[7,31] 2.9667761409655e-05 [GeV] -Cell[10,17] 0.00030482021456373 [GeV] -Cell[10,35] 0.00013813659644438 [GeV] -Cell[9,18] 0.00031091434096413 [GeV] -Cell[9,17] 1.2083619367331e-09 [GeV] -Cell[9,19] 3.8501617143538e-05 [GeV] -Cell[9,29] 5.4915150394663e-07 [GeV] -Cell[10,29] 2.4751157545779e-06 [GeV] -Cell[10,30] 0.00015230033034027 [GeV] -Cell[5,10] 5.7807483244687e-11 [GeV] -Cell[8,32] 1.4076875027968e-05 [GeV] -Cell[8,33] 0.0002529333922613 [GeV] -Cell[8,29] 2.4028031970374e-05 [GeV] -Cell[8,28] 0.00033180975427217 [GeV] -Cell[7,29] 4.1279954224592e-05 [GeV] -Cell[8,30] 0.00081721771786956 [GeV] -Cell[6,19] 6.7873674099587e-05 [GeV] -Cell[3,29] 0.00028646756907074 [GeV] -Cell[8,34] 0.001104438260413 [GeV] -Cell[7,36] 0.001686734919002 [GeV] -Cell[6,14] 0.038858090418872 [GeV] -Cell[6,13] 0.0016811484106522 [GeV] -Cell[6,12] 0.00051572728028782 [GeV] -Cell[10,33] 0.00082575729772384 [GeV] -Cell[11,33] 6.8296299790518e-06 [GeV] -Cell[10,32] 3.6576769650878e-05 [GeV] -Cell[12,33] 0.001289612500696 [GeV] -Cell[5,18] 9.8106227233075e-06 [GeV] -Cell[5,16] 7.1461474363446e-05 [GeV] -Cell[4,18] 2.0450123818591e-05 [GeV] -Cell[3,18] 2.9439159733329e-06 [GeV] -Cell[4,19] 9.8392979707569e-06 [GeV] -Cell[6,3] 1.1239541345276e-07 [GeV] -Cell[1,28] 3.0446919554379e-06 [GeV] -Cell[0,8] 0.00069930761519606 [GeV] -Cell[0,9] 0.00081763845502599 [GeV] -Cell[0,10] 2.4153644713806e-05 [GeV] -Cell[3,8] 2.2568707121536e-05 [GeV] -Cell[6,44] 0.0010713793817769 [GeV] -Cell[6,43] 2.6682139325658e-06 [GeV] -Cell[3,7] 3.097624250222e-05 [GeV] -Cell[4,45] 2.2406368634279e-05 [GeV] -Cell[2,3] 0.00026598125660837 [GeV] -Cell[3,46] 0.021457044060206 [GeV] -Cell[3,45] 9.5858236467734e-05 [GeV] -Cell[4,47] 4.5058255491313e-06 [GeV] -Cell[2,4] 8.8881898136606e-08 [GeV] -Cell[3,40] 0.00085881099155813 [GeV] -Cell[3,19] 0.0014741926100608 [GeV] -Cell[6,36] 4.97781709729e-05 [GeV] -Cell[4,0] 4.4811220141128e-06 [GeV] -Cell[7,45] 9.2652101102431e-10 [GeV] -Cell[7,46] 0.00055360630319944 [GeV] -Cell[4,28] 0.0056003241945822 [GeV] -Cell[5,29] 0.0031192347938018 [GeV] -Cell[5,40] 6.9308600504883e-06 [GeV] -Cell[4,41] 0.00078036033114222 [GeV] -Cell[3,41] 0.0026942592974996 [GeV] -Cell[11,43] 0.0019151513406068 [GeV] -Cell[6,2] 0.0017812250938689 [GeV] -Cell[6,0] 1.0186152852839e-05 [GeV] -Cell[10,37] 0.0067646113241929 [GeV] -Cell[7,2] 5.8897989425759e-06 [GeV] -Cell[8,2] 0.0021698702883084 [GeV] -Cell[10,38] 0.00054699660777271 [GeV] -Cell[11,39] 1.6800593584776e-08 [GeV] -Cell[10,39] 9.2912741348982e-05 [GeV] -Cell[7,15] 0.0026122992403872 [GeV] -Cell[11,38] 2.7621049889603e-07 [GeV] -Cell[8,38] 1.7483085393906e-06 [GeV] -Cell[6,11] 1.8597347661853e-11 [GeV] -Cell[3,30] 0.001232443390992 [GeV] -Cell[4,11] 4.311150405556e-10 [GeV] -Cell[5,23] 0.00024497068271444 [GeV] -Cell[5,22] 1.3261233141634e-05 [GeV] -Cell[6,21] 0.022719258671202 [GeV] -Cell[6,20] 0.0040230787910263 [GeV] -Cell[8,21] 0.00026447746393751 [GeV] -Cell[10,7] 5.4345961252693e-06 [GeV] -Cell[11,16] 0.099341001233675 [GeV] -Cell[5,13] 0.002537083313135 [GeV] -Cell[5,12] 0.00019134394541084 [GeV] -Cell[4,13] 0.0014703257374179 [GeV] -Cell[6,45] 1.7680373275653e-08 [GeV] -Cell[7,25] 0.00036315207549421 [GeV] -Cell[8,46] 3.4149695352426e-08 [GeV] -Cell[6,29] 6.6778738982975e-10 [GeV] -Cell[6,16] 0.0016511494230068 [GeV] -Cell[3,31] 1.5235869126627e-05 [GeV] -Cell[3,1] 3.3283140510321e-10 [GeV] -Cell[5,11] 1.9529199430622e-05 [GeV] -Cell[4,14] 0.00031205985336248 [GeV] -Cell[2,28] 7.2390345894746e-07 [GeV] -Cell[6,15] 0.63393817565178 [GeV] -Cell[7,14] 0.006863588720228 [GeV] -Cell[4,1] 0.00047656285821029 [GeV] -Cell[7,16] 0.00087762088509885 [GeV] -Cell[7,26] 0.0020882602697926 [GeV] -Cell[8,1] 4.4147227226858e-06 [GeV] -Cell[8,37] 0.00018534045404363 [GeV] -Cell[8,36] 0.0012945617543789 [GeV] -Cell[1,1] 2.0986290076053e-07 [GeV] -Cell[2,30] 0.00028817278950828 [GeV] -Cell[3,0] 5.20737557963e-09 [GeV] -Cell[6,17] 0.0021400046490148 [GeV] -Cell[6,18] 0.00031176337764657 [GeV] -Cell[5,14] 0.013691716364545 [GeV] -Cell[5,15] 0.003255723116092 [GeV] -Cell[6,9] 2.5901159620844e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 140 cells : 0.93950810960005 (GeV) - -Source track ID 4091 (gamma,1.5112205487345[GeV]) at (-499.81457218801,13.615925547646,-1633.5784600909) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[8,9] 0.00037567531951204 [GeV] -Cell[9,9] 0.0014589077994654 [GeV] -Cell[4,2] 0.00048398628881455 [GeV] -Cell[0,42] 0.00039096877652359 [GeV] -Cell[0,5] 0.00051099891 [GeV] -Cell[1,22] 0.0069217618647174 [GeV] -Cell[1,23] 1.3921590276694 [GeV] -Cell[1,24] 0.038242958601679 [GeV] -Cell[0,23] 0.0030156535160919 [GeV] -Cell[0,9] 0.00038124123416774 [GeV] -Cell[0,44] 0.00027708013325129 [GeV] -Cell[2,14] 0.003784672616713 [GeV] -Cell[0,21] 0.00031654004777289 [GeV] -Cell[2,22] 3.7080159927762e-06 [GeV] -Cell[0,30] 0.0013760580594125 [GeV] -Cell[1,13] 0.00040597422766785 [GeV] -Cell[1,25] 0.0012541313262872 [GeV] -Cell[2,26] 0.0021007998539271 [GeV] -Cell[0,6] 0.00051099891 [GeV] -Cell[5,24] 0.00015576578318598 [GeV] -Cell[2,13] 0.00070222437232342 [GeV] -Cell[3,42] 2.9841496999461e-05 [GeV] -Cell[1,9] 0.00051099891 [GeV] -Cell[0,22] 0.0047015773492482 [GeV] -Cell[1,4] 0.0009723360672559 [GeV] -Cell[1,0] 0.00042003188482493 [GeV] -Cell[1,11] 0.0022457995897626 [GeV] -Cell[3,19] 0.00016722102957234 [GeV] -Cell[0,12] 0.00051099891 [GeV] -Cell[0,47] 0.00055922581119507 [GeV] -Cell[2,23] 0.0052106131903791 [GeV] -Cell[4,0] 0.00089144440904053 [GeV] -Cell[3,47] 0.0021329708665562 [GeV] -Cell[2,47] 0.00051099891 [GeV] -Cell[4,28] 0.0001862519901962 [GeV] -Cell[3,11] 0.00051099891 [GeV] -Cell[1,46] 0.0028322670558483 [GeV] -Cell[0,29] 0.00080918225231238 [GeV] -Cell[1,1] 0.00051099891 [GeV] -Cell[2,0] 0.00052003540985695 [GeV] -Cell[9,35] 0.00035224811642288 [GeV] -### Total energy deposition in calorimeter by a source track in 41 cells : 1.4794151743964 (GeV) - -Source track ID 4092 (gamma,2.1679106429722[GeV]) at (-488.39602955942,-107.09490328952,-1544.0566852004) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[9,10] 0.0056099889697491 [GeV] -Cell[7,7] 0.0027872852385201 [GeV] -Cell[3,39] 0.00051099891 [GeV] -Cell[15,10] 0.0011002369275233 [GeV] -Cell[10,35] 9.8624726924543e-05 [GeV] -Cell[4,8] 0.00051099891 [GeV] -Cell[5,16] 0.00048134372903813 [GeV] -Cell[4,19] 0.003694557513489 [GeV] -Cell[4,43] 0.00046147654724322 [GeV] -Cell[0,7] 0.0050363162416052 [GeV] -Cell[0,5] 8.2032771836928e-05 [GeV] -Cell[1,24] 0.010380880726494 [GeV] -Cell[2,41] 0.00051099891 [GeV] -Cell[1,7] 0.00022512121053853 [GeV] -Cell[2,14] 0.00039135979456857 [GeV] -Cell[6,44] 0.00048207300410761 [GeV] -Cell[0,26] 0.0042321417126339 [GeV] -Cell[2,21] 0.0027547583514792 [GeV] -Cell[1,13] 0.00057548159865248 [GeV] -Cell[2,25] 1.7109556260928 [GeV] -Cell[1,25] 0.23265606937262 [GeV] -Cell[2,26] 0.022256415417372 [GeV] -Cell[3,46] 0.0020043305759855 [GeV] -Cell[3,45] 0.00016667792418494 [GeV] -Cell[0,6] 0.00062113666219796 [GeV] -Cell[0,4] 0.00070472004155681 [GeV] -Cell[2,13] 0.00076805907716715 [GeV] -Cell[2,45] 0.00051099891 [GeV] -Cell[3,42] 0.00051099891 [GeV] -Cell[1,26] 0.034173121941725 [GeV] -Cell[1,4] 0.00032294051889784 [GeV] -Cell[1,0] 0.0018643467904771 [GeV] -Cell[1,27] 0.00038148666220586 [GeV] -Cell[0,39] 0.00092871326637076 [GeV] -Cell[2,9] 0.00051099891 [GeV] -Cell[2,24] 0.0081465427145551 [GeV] -Cell[2,23] 0.00088627803525525 [GeV] -Cell[1,45] 0.0007073138376581 [GeV] -Cell[4,36] 0.0025037497107017 [GeV] -Cell[11,40] 0.00060992299685689 [GeV] -Cell[5,42] 0.00061132480421689 [GeV] -Cell[5,41] 0.0004403004826867 [GeV] -Cell[3,4] 0.00049122206268812 [GeV] -Cell[3,13] 0.00093702331621858 [GeV] -Cell[2,8] 0.0014800271779273 [GeV] -Cell[1,16] 0.00051099891 [GeV] -Cell[2,44] 0.00082317015046136 [GeV] -Cell[1,1] 0.0028448594983802 [GeV] -Cell[1,10] 0.0050338952583073 [GeV] -Cell[0,46] 0.00051099891 [GeV] -Cell[2,35] 0.00051099891 [GeV] -Cell[2,18] 0.00051099891 [GeV] -Cell[0,37] 0.0013901546815464 [GeV] -Cell[2,38] 0.00051099891 [GeV] -### Total energy deposition in calorimeter by a source track in 54 cells : 2.0787240961454 (GeV) - -Source track ID 4052 (pi-,0.39140766066439[GeV]) at (-230.62467111185,443.6352793394,-1632.6067878827) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[18,26] 9.4173394609243e-07 [GeV] -Cell[1,14] 5.2773198578507e-05 [GeV] -Cell[0,15] 0.018989201191353 [GeV] -Cell[0,30] 2.6317472477331e-06 [GeV] -Cell[0,31] 0.0013547099693423 [GeV] -Cell[1,13] 5.1123787998222e-06 [GeV] -Cell[1,15] 0.036213252435576 [GeV] -Cell[1,30] 1.435734263066e-05 [GeV] -Cell[1,12] 7.5673777610064e-07 [GeV] -Cell[4,25] 2.2568565327674e-09 [GeV] -Cell[3,26] 3.2592502309399e-06 [GeV] -Cell[3,25] 0.00033870591561015 [GeV] -Cell[18,10] 0.0002666027727247 [GeV] -Cell[17,10] 0.086345629053619 [GeV] -Cell[17,11] 1.589012364775e-05 [GeV] -Cell[18,11] 1.3567554352107e-05 [GeV] -Cell[17,9] 0.0056739059137581 [GeV] -Cell[1,16] 0.0012798416432408 [GeV] -Cell[0,16] 0.003133838224786 [GeV] -Cell[0,14] 4.6016537404825e-05 [GeV] -Cell[0,17] 3.5259009562765e-05 [GeV] -Cell[1,31] 5.2160467021167e-09 [GeV] -Cell[18,27] 1.2599091860466e-07 [GeV] -### Total energy deposition in calorimeter by a source track in 23 cells : 0.15378638619801 (GeV) - -Source track ID 4020 (pi+,4.02006053252[GeV]) at (-418.51346388806,-273.58084827784,-1788.5312006649) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[8,10] 1.2261598953955e-08 [GeV] -Cell[8,11] 1.3868157111574e-10 [GeV] -Cell[7,9] 0.0011571540058167 [GeV] -Cell[7,8] 3.0440242553595e-06 [GeV] -Cell[8,12] 0.001243560618792 [GeV] -Cell[7,30] 4.7336826162336e-07 [GeV] -Cell[7,43] 1.3073518985038e-05 [GeV] -Cell[6,31] 1.9652355695143e-07 [GeV] -Cell[3,39] 5.5343702842947e-06 [GeV] -Cell[7,41] 1.1119104681256e-07 [GeV] -Cell[8,39] 1.1687872261973e-05 [GeV] -Cell[7,12] 7.5916080584193e-07 [GeV] -Cell[7,13] 6.9105035152006e-07 [GeV] -Cell[1,43] 1.5417110716953e-08 [GeV] -Cell[4,38] 0.00087040040773172 [GeV] -Cell[7,23] 8.0563697244997e-05 [GeV] -Cell[10,6] 0.011129263571971 [GeV] -Cell[5,37] 0.00010979663062608 [GeV] -Cell[5,21] 0.00016663250464535 [GeV] -Cell[3,2] 0.00059858113611489 [GeV] -Cell[4,39] 5.1935554947704e-06 [GeV] -Cell[0,34] 0.00051376315031155 [GeV] -Cell[9,26] 3.3680366430417e-05 [GeV] -Cell[9,6] 5.3092528018169e-05 [GeV] -Cell[7,42] 0.00038176375339947 [GeV] -Cell[2,17] 0.00055937532698385 [GeV] -Cell[13,4] 4.0051717049209e-05 [GeV] -Cell[9,25] 5.1135086307113e-05 [GeV] -Cell[9,29] 0.0034146116794932 [GeV] -Cell[10,29] 0.0045065031757155 [GeV] -Cell[10,30] 0.0056988203570674 [GeV] -Cell[4,9] 0.00016853302280344 [GeV] -Cell[4,8] 0.0017035038783992 [GeV] -Cell[4,7] 9.420319085541e-05 [GeV] -Cell[0,40] 0.00028697597867006 [GeV] -Cell[7,29] 1.7112893290232e-06 [GeV] -Cell[6,32] 2.1723366808146e-07 [GeV] -Cell[3,3] 0.0017828058835889 [GeV] -Cell[0,41] 2.3917704238556e-05 [GeV] -Cell[6,14] 1.2024023773847e-05 [GeV] -Cell[6,12] 6.3668249515558e-07 [GeV] -Cell[9,21] 4.169033782091e-06 [GeV] -Cell[10,28] 0.00051099891 [GeV] -Cell[0,24] 0.0030368798264125 [GeV] -Cell[1,44] 0.0086022089010496 [GeV] -Cell[0,11] 8.5671807755716e-06 [GeV] -Cell[5,18] 5.9046754711289e-07 [GeV] -Cell[5,19] 4.0473553235643e-07 [GeV] -Cell[5,17] 2.480810508132e-09 [GeV] -Cell[4,18] 1.9083513942974e-05 [GeV] -Cell[4,17] 0.0003082917808913 [GeV] -Cell[4,19] 0.00036660423596618 [GeV] -Cell[4,16] 0.0013122719143286 [GeV] -Cell[4,43] 6.5268321486656e-06 [GeV] -Cell[4,3] 4.0872933459468e-07 [GeV] -Cell[5,38] 0.00012737374354356 [GeV] -Cell[0,19] 2.1468260717938e-07 [GeV] -Cell[0,5] 1.1101769516245e-05 [GeV] -Cell[1,22] 0.017988089797632 [GeV] -Cell[1,23] 0.004217909755117 [GeV] -Cell[1,24] 0.00071812760343141 [GeV] -Cell[0,23] 0.0015108143371853 [GeV] -Cell[0,15] 7.5771972888106e-06 [GeV] -Cell[2,41] 1.0039617511211e-05 [GeV] -Cell[1,28] 0.026442200285819 [GeV] -Cell[1,29] 0.011525915643267 [GeV] -Cell[1,40] 3.9874919701788e-06 [GeV] -Cell[2,40] 0.00011488241817005 [GeV] -Cell[0,8] 0.0015924231591555 [GeV] -Cell[1,8] 0.0001789519724349 [GeV] -Cell[0,44] 1.0920798104053e-08 [GeV] -Cell[3,8] 3.0120911105769e-05 [GeV] -Cell[2,14] 5.6851276895031e-08 [GeV] -Cell[2,32] 7.5594449842811e-06 [GeV] -Cell[6,43] 1.4593907746985e-07 [GeV] -Cell[0,25] 0.00063460330507837 [GeV] -Cell[0,26] 0.0023465751362957 [GeV] -Cell[3,5] 0.00010364236299938 [GeV] -Cell[0,21] 2.3892381705082e-08 [GeV] -Cell[2,22] 6.7906310930766e-05 [GeV] -Cell[1,19] 1.4208111679181e-08 [GeV] -Cell[1,18] 2.1192318953922e-05 [GeV] -Cell[0,30] 0.0021125121334032 [GeV] -Cell[0,31] 0.00046583515712211 [GeV] -Cell[1,17] 0.00016985161187586 [GeV] -Cell[1,15] 2.7204514481127e-09 [GeV] -Cell[1,2] 0.011563047510818 [GeV] -Cell[2,2] 0.00031405511639537 [GeV] -Cell[2,3] 4.2570172809064e-10 [GeV] -Cell[1,38] 2.0876538932839e-05 [GeV] -Cell[2,25] 4.7717144548528e-05 [GeV] -Cell[1,25] 0.0083318021770571 [GeV] -Cell[2,26] 0.0028385791262999 [GeV] -Cell[3,46] 1.1103628290584e-05 [GeV] -Cell[3,45] 2.798190631438e-05 [GeV] -Cell[3,44] 0.0034976053506283 [GeV] -Cell[2,33] 9.1632805415429e-06 [GeV] -Cell[1,33] 2.1396913190188e-05 [GeV] -Cell[2,34] 6.6434649925213e-06 [GeV] -Cell[6,7] 3.4477806184441e-07 [GeV] -Cell[1,5] 1.1636651962476e-05 [GeV] -Cell[0,4] 0.0030007051884355 [GeV] -Cell[2,10] 1.6479654848808e-05 [GeV] -Cell[0,22] 0.00090747840440645 [GeV] -Cell[2,39] 1.0049689221319e-05 [GeV] -Cell[3,14] 2.7389650596206e-06 [GeV] -Cell[1,26] 0.067605225654462 [GeV] -Cell[1,4] 0.0012763156603733 [GeV] -Cell[1,30] 0.00019922379986963 [GeV] -Cell[1,35] 0.00057237499805358 [GeV] -Cell[1,32] 0.0012232436092744 [GeV] -Cell[2,43] 0.00063876019923346 [GeV] -Cell[1,3] 0.00069223777200689 [GeV] -Cell[1,27] 0.010383611619724 [GeV] -Cell[3,43] 0.00024257132297544 [GeV] -Cell[3,40] 1.7891846073326e-06 [GeV] -Cell[0,0] 1.3071712601231e-11 [GeV] -Cell[0,33] 0.00015494281221106 [GeV] -Cell[1,11] 0.00036408997290459 [GeV] -Cell[1,12] 3.7545598170254e-06 [GeV] -Cell[4,15] 0.005347318903936 [GeV] -Cell[0,39] 8.8368193929682e-06 [GeV] -Cell[3,25] 4.9246673297603e-06 [GeV] -Cell[3,15] 8.44289214225e-05 [GeV] -Cell[2,24] 3.681967044713e-07 [GeV] -Cell[2,23] 0.00055157978901821 [GeV] -Cell[0,45] 0.0015847694347699 [GeV] -Cell[1,39] 1.1938235925186e-05 [GeV] -Cell[0,36] 0.0054769184008049 [GeV] -Cell[2,27] 4.471518289165e-06 [GeV] -Cell[0,1] 0.0021294123552348 [GeV] -Cell[5,40] 3.4671773028094e-06 [GeV] -Cell[6,42] 0.00011023624443578 [GeV] -Cell[6,41] 1.1206352501176e-05 [GeV] -Cell[13,6] 0.00031899121071854 [GeV] -Cell[8,2] 0.0021891507942961 [GeV] -Cell[3,10] 6.1245321603565e-07 [GeV] -Cell[7,15] 0.0017831989153256 [GeV] -Cell[9,0] 1.6606779361609e-05 [GeV] -Cell[6,11] 1.7113052308559e-11 [GeV] -Cell[5,22] 0.00012820406174967 [GeV] -Cell[3,9] 0.0009817788336062 [GeV] -Cell[5,41] 1.0492870328903e-05 [GeV] -Cell[4,37] 7.5311833352316e-06 [GeV] -Cell[13,5] 2.5404238840565e-08 [GeV] -Cell[10,46] 0.00010207334895131 [GeV] -Cell[13,7] 0.0013334049100448 [GeV] -Cell[9,3] 0.0014237802163593 [GeV] -Cell[9,2] 0.0028795212916921 [GeV] -Cell[3,4] 0.00062620779234987 [GeV] -Cell[0,27] 0.046612745353956 [GeV] -Cell[4,10] 1.0836667897252e-05 [GeV] -Cell[3,13] 4.0925616724508e-07 [GeV] -Cell[1,6] 0.0019786954505716 [GeV] -Cell[3,38] 3.1413618125953e-07 [GeV] -Cell[2,46] 0.00076500120667779 [GeV] -Cell[0,29] 0.043589171560154 [GeV] -Cell[0,28] 1.3133389603713 [GeV] -Cell[1,16] 4.9525752097225e-05 [GeV] -Cell[0,43] 1.4497067197226e-05 [GeV] -Cell[0,32] 0.0011041117957556 [GeV] -Cell[2,44] 0.00073413909476028 [GeV] -Cell[7,14] 0.00092726157766742 [GeV] -Cell[4,1] 2.6091875042766e-09 [GeV] -Cell[2,30] 1.6405700424684e-06 [GeV] -Cell[1,10] 0.0035937779252198 [GeV] -Cell[0,46] 4.9551682022866e-06 [GeV] -Cell[2,35] 0.00043191794906068 [GeV] -Cell[2,18] 0.00031139936270165 [GeV] -Cell[0,37] 0.040911789029615 [GeV] -Cell[2,38] 0.00011713313167525 [GeV] -Cell[0,16] 0.0011297714909374 [GeV] -Cell[0,14] 0.0046397742726055 [GeV] -Cell[1,31] 2.9152988032592e-06 [GeV] -Cell[0,35] 0.0046067627683054 [GeV] -Cell[1,34] 0.00053384161408716 [GeV] -Cell[10,5] 0.0018596179290364 [GeV] -Cell[10,4] 0.00058346915602419 [GeV] -Cell[0,38] 2.5334257516079e-06 [GeV] -Cell[0,2] 0.00031484060115008 [GeV] -Cell[2,29] 1.8332416215571e-05 [GeV] -Cell[0,3] 0.00025566105092423 [GeV] -Cell[7,24] 0.00022319917299808 [GeV] -Cell[2,31] 9.2806680731883e-07 [GeV] -### Total energy deposition in calorimeter by a source track in 184 cells : 1.72910967879 (GeV) - -Source track ID 4021 (neutron,7.3741998938947[GeV]) at (-413.0762339184,-281.72331279429,-1776.1644807987) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[0,28] 3.7501651386265e-06 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 3.7501651386265e-06 (GeV) - -Source track ID 4017 (anti_neutron,5.3948206100571[GeV]) at (-415.09134243251,-278.74572182829,-1871.4579101789) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[7,33] 0.00051099891 [GeV] -Cell[16,38] 0.0051629070037581 [GeV] -Cell[12,23] 4.1997749067377e-06 [GeV] -Cell[0,18] 3.9159895444755e-05 [GeV] -Cell[5,17] 0.0020456876826794 [GeV] -Cell[0,5] 0.0012411599467683 [GeV] -Cell[1,21] 0.00089461130872292 [GeV] -Cell[1,22] 4.3220621300861e-06 [GeV] -Cell[1,24] 0.017861231987212 [GeV] -Cell[2,40] 0.00048001462286061 [GeV] -Cell[0,8] 0.0061848354933506 [GeV] -Cell[2,15] 0.00051099891 [GeV] -Cell[0,25] 0.00011785610197694 [GeV] -Cell[0,26] 0.0014491894018297 [GeV] -Cell[3,7] 8.688285654523e-05 [GeV] -Cell[3,6] 0.00047527941884516 [GeV] -Cell[0,21] 5.1994857426507e-07 [GeV] -Cell[0,30] 0.0010808334006485 [GeV] -Cell[1,38] 0.0037722818726855 [GeV] -Cell[2,25] 1.2042290563841e-08 [GeV] -Cell[1,25] 0.006385155740604 [GeV] -Cell[6,7] 0.0074110651715056 [GeV] -Cell[0,4] 0.0006137519638296 [GeV] -Cell[3,42] 5.2916967688361e-05 [GeV] -Cell[2,39] 1.8699668616478e-05 [GeV] -Cell[1,26] 0.00057091441151033 [GeV] -Cell[1,4] 3.9892358472571e-08 [GeV] -Cell[1,30] 0.00014553644901981 [GeV] -Cell[3,40] 5.5102282203734e-09 [GeV] -Cell[0,0] 0.00087727543014466 [GeV] -Cell[3,33] 5.2597120811697e-06 [GeV] -Cell[2,24] 0.00017677031886308 [GeV] -Cell[16,40] 0.049194590415915 [GeV] -Cell[17,40] 0.0025464230872367 [GeV] -Cell[19,7] 0.00051099891 [GeV] -Cell[18,47] 2.119208304407e-06 [GeV] -Cell[18,0] 2.0491483155638e-08 [GeV] -Cell[0,27] 0.064755010086867 [GeV] -Cell[2,6] 0.00071998407148544 [GeV] -Cell[0,29] 0.0162053607626 [GeV] -Cell[0,28] 1.6255702958212 [GeV] -Cell[2,38] 5.145594093392e-08 [GeV] -Cell[0,38] 0.00075995816419487 [GeV] -Cell[17,46] 0.00021471953749426 [GeV] -Cell[19,16] 0.00088583469018046 [GeV] -### Total energy deposition in calorimeter by a source track in 45 cells : 1.8195457405806 (GeV) - -Source track ID 3913 (pi-,5.4477143515787[GeV]) at (-283.97105431131,-411.53425168912,-1889.1982386454) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[0,31] 0.15046202896836 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.15046202896836 (GeV) - -Source track ID 2681 (pi-,5.0455122900854[GeV]) at (-463.63619348944,-187.19369670644,-1931.8613438734) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[8,44] 8.6004172165985e-06 [GeV] -Cell[8,39] 3.4896945006153e-05 [GeV] -Cell[1,43] 0.0016712835291553 [GeV] -Cell[4,38] 3.3409839932574e-05 [GeV] -Cell[4,39] 0.00013831180948341 [GeV] -Cell[8,40] 0.00012778092083931 [GeV] -Cell[4,42] 0.00011239930066768 [GeV] -Cell[2,17] 0.0016221625142591 [GeV] -Cell[4,5] 0.0011992409987895 [GeV] -Cell[12,28] 0.00023582262932632 [GeV] -Cell[11,28] 6.4645549413854e-05 [GeV] -Cell[12,27] 0.0028327868355101 [GeV] -Cell[11,27] 4.4193850477541e-06 [GeV] -Cell[7,40] 0.00019503828519908 [GeV] -Cell[0,42] 0.0021532982486016 [GeV] -Cell[0,24] 0.002145074627727 [GeV] -Cell[4,3] 1.1483875481645e-05 [GeV] -Cell[4,4] 0.00089573238586297 [GeV] -Cell[0,19] 2.2666341654258e-05 [GeV] -Cell[0,23] 0.0036894871029548 [GeV] -Cell[1,28] 2.6733103809988e-05 [GeV] -Cell[1,29] 0.0018087294126525 [GeV] -Cell[0,8] 6.058056402253e-06 [GeV] -Cell[1,7] 0.00046447978569602 [GeV] -Cell[0,44] 1.0843484778889e-07 [GeV] -Cell[6,43] 0.0010020739370705 [GeV] -Cell[0,25] 0.0022812782265027 [GeV] -Cell[0,26] 0.37398570651607 [GeV] -Cell[0,20] 0.001250990654989 [GeV] -Cell[1,15] 0.0030458216308552 [GeV] -Cell[1,37] 1.270673237741e-10 [GeV] -Cell[1,38] 0.00027341279440918 [GeV] -Cell[1,47] 0.00018254088609751 [GeV] -Cell[2,26] 6.7426743917167e-06 [GeV] -Cell[0,22] 3.4664466511458e-08 [GeV] -Cell[1,26] 4.0279701352119e-11 [GeV] -Cell[1,27] 0.00021453207507566 [GeV] -Cell[1,42] 0.00095018270862559 [GeV] -Cell[3,40] 0.0062999095813604 [GeV] -Cell[3,26] 1.3553435186623e-05 [GeV] -Cell[3,25] 0.0028426822468644 [GeV] -Cell[0,47] 0.00020528273346906 [GeV] -Cell[1,39] 0.0002179115020042 [GeV] -Cell[4,41] 0.00010487276560525 [GeV] -Cell[10,0] 0.0005074787020551 [GeV] -Cell[10,1] 0.00021263543951329 [GeV] -Cell[3,17] 0.00075869688774772 [GeV] -Cell[8,43] 6.9358939072117e-08 [GeV] -Cell[0,27] 0.39833747114906 [GeV] -Cell[1,46] 0.0033537345568911 [GeV] -Cell[0,28] 0.0051076336718627 [GeV] -Cell[1,16] 0.001034196241417 [GeV] -Cell[0,43] 0.0037042345996452 [GeV] -Cell[2,18] 0.0036770478072779 [GeV] -Cell[0,37] 1.8752577778969e-06 [GeV] -Cell[0,38] 0.00020370435586301 [GeV] -Cell[0,2] 0.00026985242395668 [GeV] -### Total energy deposition in calorimeter by a source track in 57 cells : 0.82955080998793 (GeV) - -Source track ID 3683 (pi-,26.43123520233[GeV]) at (-349.17390363981,-357.87928833188,-1955.4072448406) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[0,30] 0.064477361913935 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.064477361913935 (GeV) - -Source track ID 3684 (pi+,1.1827044076307[GeV]) at (-499.04930524238,30.818678380103,-1754.247383275) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[1,23] 0.059840626013632 [GeV] -Cell[0,23] 0.22009524321661 [GeV] -### Total energy deposition in calorimeter by a source track in 2 cells : 0.27993586923024 (GeV) - -Source track ID 3674 (e-,0.97290687864999[GeV]) at (-67.826325601399,-495.37822878626,-436.09972285655) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[7,34] 0.46642711646776 [GeV] -Cell[7,35] 0.47748604514461 [GeV] -Cell[7,33] 0.0066242124106651 [GeV] -Cell[8,35] 0.0011274714451816 [GeV] -Cell[6,4] 0.00051099891 [GeV] -Cell[6,22] 0.00032609273296327 [GeV] -Cell[9,37] 0.00051099891 [GeV] -Cell[8,16] 0.0003820638273784 [GeV] -Cell[9,17] 0.00091764137605994 [GeV] -Cell[9,29] 0.00014717076483151 [GeV] -Cell[5,7] 0.00070559081769651 [GeV] -Cell[6,5] 0.00050815727522438 [GeV] -Cell[8,28] 0.00049705659219244 [GeV] -Cell[7,29] 0.00033635035393823 [GeV] -Cell[6,40] 0.00051099891 [GeV] -Cell[7,36] 0.0027254296004858 [GeV] -Cell[9,15] 0.0002758011902356 [GeV] -Cell[2,5] 0.00080904674674067 [GeV] -Cell[5,46] 0.0027577376834262 [GeV] -Cell[5,6] 0.0031093533822716 [GeV] -Cell[5,47] 0.00027930347525185 [GeV] -Cell[13,6] 0.00013105631394893 [GeV] -Cell[9,30] 0.00035082062927607 [GeV] -Cell[8,42] 0.00047625524802613 [GeV] -Cell[9,28] 0.0010120708722753 [GeV] -Cell[6,21] 0.00044197505791425 [GeV] -Cell[9,16] 0.00030967198942967 [GeV] -Cell[12,16] 0.00042730822896683 [GeV] -Cell[8,36] 2.5343176571149e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 29 cells : 0.97014913953333 (GeV) - -Source track ID 3678 (gamma,0.00058153031537057[GeV]) at (-80.499341452456,-493.47731054803,-436.87123957702) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[7,34] 0.00058153031537057 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00058153031537057 (GeV) - -Source track ID 3679 (gamma,0.0014951678529814[GeV]) at (-81.202323703452,-493.36212119006,-436.43326291497) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[7,34] 0.0014951678529814 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.0014951678529814 (GeV) - -Source track ID 3675 (e+,0.54714424765852[GeV]) at (-83.486390389302,-492.98075278835,-436.51960658307) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[6,34] 0.00060966055383028 [GeV] -Cell[7,34] 0.53077427231163 [GeV] -Cell[7,35] 0.007647667105552 [GeV] -Cell[7,33] 0.003455496851189 [GeV] -Cell[7,32] 0.0012588112154007 [GeV] -Cell[7,40] 0.00035293933833529 [GeV] -Cell[7,45] 0.00077184289857822 [GeV] -Cell[4,14] 0.0023834330058228 [GeV] -### Total energy deposition in calorimeter by a source track in 8 cells : 0.54725412328033 (GeV) - -Source track ID 3673 (gamma,2.1921548366006[GeV]) at (-105.19673706938,-488.80839447575,-488.29265774831) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[6,34] 0.038700694715836 [GeV] -Cell[7,34] 2.0235653240648 [GeV] -Cell[7,35] 0.035031411615296 [GeV] -Cell[7,33] 0.04420978444143 [GeV] -Cell[6,35] 0.017974026320744 [GeV] -Cell[7,17] 0.00020614942587434 [GeV] -Cell[6,31] 0.00073454461108652 [GeV] -Cell[6,8] 0.00056982789081457 [GeV] -Cell[5,20] 0.00053095524508149 [GeV] -Cell[10,18] 0.00056052602609258 [GeV] -Cell[6,33] 0.002339470701411 [GeV] -Cell[6,32] 0.0025712999291145 [GeV] -Cell[5,18] 2.1788093692976e-07 [GeV] -Cell[5,19] 0.00023304630969574 [GeV] -Cell[5,17] 0.00019017465630543 [GeV] -Cell[1,47] 0.0016263166443355 [GeV] -Cell[0,6] 0.00065712154263779 [GeV] -Cell[3,42] 0.00069253747490861 [GeV] -Cell[3,14] 0.0034960841110615 [GeV] -Cell[9,5] 0.00019968089620408 [GeV] -Cell[1,11] 9.8560838274522e-05 [GeV] -Cell[2,47] 0.0011951934217529 [GeV] -Cell[6,0] 0.00030663468850878 [GeV] -Cell[11,46] 0.0015413378107232 [GeV] -Cell[8,38] 0.00064039989017995 [GeV] -Cell[4,12] 0.0013144834807526 [GeV] -Cell[6,15] 1.2015227315715e-05 [GeV] -Cell[1,1] 0.00060343035697562 [GeV] -Cell[6,18] 0.001108822474734 [GeV] -Cell[10,4] 0.001708902626225 [GeV] -### Total energy deposition in calorimeter by a source track in 30 cells : 2.1826189753191 (GeV) - -Source track ID 3670 (gamma,0.076632669216442[GeV]) at (-300.43599703535,399.67263064335,200.63474953787) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[10,17] 0.00020390923706972 [GeV] -Cell[11,16] 0.068052984614752 [GeV] -Cell[11,17] 0.0025373099193247 [GeV] -Cell[10,16] 0.0056115749888699 [GeV] -### Total energy deposition in calorimeter by a source track in 4 cells : 0.076405778760017 (GeV) - -Source track ID 3671 (gamma,0.17932025858732[GeV]) at (-255.57095690253,429.7481657761,-559.80030082234) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[6,14] 0.00041136391018206 [GeV] -Cell[10,47] 0.00021722626122657 [GeV] -Cell[7,15] 0.0033953008278678 [GeV] -Cell[6,16] 0.020405591699243 [GeV] -Cell[6,15] 0.0009933997912978 [GeV] -Cell[7,16] 0.15360360344873 [GeV] -### Total energy deposition in calorimeter by a source track in 6 cells : 0.17902648593855 (GeV) - -Source track ID 2685 (pi-,0.22751119853317[GeV]) at (56.071049249627,496.84609028958,-1291.8933613223) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[4,33] 0.0006785889000796 [GeV] -Cell[5,34] 1.9418461415967e-05 [GeV] -Cell[3,2] 0.00025745811330307 [GeV] -Cell[0,34] 8.8767948172062e-05 [GeV] -Cell[4,32] 0.0013971957267943 [GeV] -Cell[3,3] 7.2760372224593e-05 [GeV] -Cell[8,34] 8.6632887250744e-06 [GeV] -Cell[10,33] 0.00028765341054751 [GeV] -Cell[3,23] 6.193108856678e-08 [GeV] -Cell[2,41] 0.00040744210582306 [GeV] -Cell[1,29] 4.4273823285721e-06 [GeV] -Cell[1,41] 2.8081209442689e-05 [GeV] -Cell[3,8] 0.00019620260220347 [GeV] -Cell[3,7] 1.1214820697205e-05 [GeV] -Cell[2,22] 0.00014295813280978 [GeV] -Cell[2,3] 0.0015723478187189 [GeV] -Cell[1,33] 0.00014736124784758 [GeV] -Cell[3,12] 1.3488736696331e-05 [GeV] -Cell[2,10] 6.742337893229e-06 [GeV] -Cell[1,4] 1.5919888828648e-05 [GeV] -Cell[1,30] 0.0006645602095133 [GeV] -Cell[1,35] 4.1204671106243e-09 [GeV] -Cell[1,42] 0.0010303444869689 [GeV] -Cell[0,0] 8.5911189962644e-06 [GeV] -Cell[2,24] 0.00086660701196615 [GeV] -Cell[2,23] 2.1996561272317e-06 [GeV] -Cell[7,45] 0.00034469056985995 [GeV] -Cell[7,46] 0.00018295509491611 [GeV] -Cell[3,10] 0.0044139375831417 [GeV] -Cell[8,42] 7.7934528235346e-09 [GeV] -Cell[4,12] 0.0010272423592974 [GeV] -Cell[4,11] 3.3012474887073e-10 [GeV] -Cell[3,11] 0.070589829464578 [GeV] -Cell[3,9] 0.0010623571056686 [GeV] -Cell[3,4] 2.8431394639483e-08 [GeV] -Cell[4,10] 9.2418321412424e-07 [GeV] -Cell[3,13] 0.0012486500624537 [GeV] -Cell[4,13] 0.00082642811056041 [GeV] -Cell[4,14] 0.00025709202820747 [GeV] -Cell[2,30] 1.4618753351897e-05 [GeV] -Cell[1,34] 0.00072227249187654 [GeV] -Cell[4,31] 7.0713008426537e-10 [GeV] -### Total energy deposition in calorimeter by a source track in 42 cells : 0.088620096108908 (GeV) - -Source track ID 3565 (gamma,0.31054837923301[GeV]) at (447.33311990312,223.3675890494,253.26070355952) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[11,3] 0.30081596221405 [GeV] -Cell[11,2] 0.00075176887191842 [GeV] -Cell[12,1] 0.00051099891 [GeV] -Cell[11,5] 0.00085503669014429 [GeV] -Cell[11,41] 0.00051099891 [GeV] -Cell[11,4] 0.0043870076472387 [GeV] -Cell[16,28] 0.0005009964505201 [GeV] -Cell[17,23] 0.0017410583810331 [GeV] -Cell[14,8] 8.3441891366215e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 9 cells : 0.31015726996627 (GeV) - -Source track ID 3566 (gamma,0.15995014937721[GeV]) at (486.22067442086,-116.57382109945,276.459703093) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[11,45] 0.00096570976932168 [GeV] -Cell[11,47] 0.0019027540610319 [GeV] -Cell[11,46] 0.15612077745752 [GeV] -Cell[10,0] 0.00044990917933771 [GeV] -Cell[10,47] 0.00045173496624998 [GeV] -Cell[10,46] 5.926394375002e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 6 cells : 0.15995014937721 (GeV) - -Source track ID 3555 (pi+,0.58340434331091[GeV]) at (-499.04550733136,30.88011678058,862.63775625431) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[13,33] 0.00051099891 [GeV] -Cell[18,4] 0.001741448720727 [GeV] -Cell[19,4] 9.441601389963e-05 [GeV] -Cell[17,0] 0.00080162412569378 [GeV] -Cell[14,26] 5.9836484622993e-05 [GeV] -Cell[15,8] 0.00059598906956771 [GeV] -Cell[14,22] 0.036800206752382 [GeV] -Cell[14,21] 2.0108001827144e-05 [GeV] -Cell[10,29] 0.00041133548913228 [GeV] -Cell[17,15] 0.00051099891 [GeV] -Cell[16,1] 0.00019727441231617 [GeV] -Cell[12,8] 0.00051099891 [GeV] -Cell[16,14] 0.0044917212378797 [GeV] -Cell[19,6] 0.010045068136103 [GeV] -Cell[16,8] 0.00090471956535522 [GeV] -Cell[11,39] 0.00027400434452002 [GeV] -Cell[15,34] 0.00029143331457561 [GeV] -Cell[19,1] 0.0044257152327563 [GeV] -Cell[19,3] 0.0025570361614885 [GeV] -Cell[14,14] 0.00051099891 [GeV] -Cell[13,23] 0.0021097536411609 [GeV] -Cell[18,12] 0.0035819265822771 [GeV] -Cell[17,12] 0.0018054480692948 [GeV] -Cell[14,15] 0.00051099891 [GeV] -Cell[13,7] 0.00066515466064028 [GeV] -Cell[17,14] 0.0042650881472381 [GeV] -Cell[17,9] 0.0038935466344228 [GeV] -Cell[17,8] 0.00044172585704394 [GeV] -Cell[14,23] 0.43008537203011 [GeV] -Cell[15,22] 0.0041267238718311 [GeV] -Cell[12,17] 0.00054256022174138 [GeV] -Cell[13,11] 0.00050155917697624 [GeV] -Cell[13,12] 0.00092361997588843 [GeV] -Cell[17,2] 0.0014222593915003 [GeV] -Cell[15,18] 0.00097917958581584 [GeV] -Cell[18,7] 0.0015805010272138 [GeV] -Cell[18,6] 0.00051099891 [GeV] -Cell[19,30] 0.00021298005152503 [GeV] -### Total energy deposition in calorimeter by a source track in 38 cells : 0.52391532944753 (GeV) - -Source track ID 3552 (gamma,1.004682788758[GeV]) at (-131.6495981646,-482.35711179903,294.93683985549) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[11,30] 0.00022166973830973 [GeV] -Cell[14,47] 0.00051099891 [GeV] -Cell[11,35] 0.0017726147488331 [GeV] -Cell[10,30] 0.00035285744501662 [GeV] -Cell[11,33] 0.81163671331977 [GeV] -Cell[11,34] 0.16973745767009 [GeV] -Cell[12,33] 0.0031141209465353 [GeV] -Cell[12,34] 0.0070992022643351 [GeV] -Cell[4,6] 0.0012317621757953 [GeV] -Cell[10,8] 0.0062509307740376 [GeV] -Cell[10,45] 0.000269043016226 [GeV] -Cell[16,7] 0.0015427236078331 [GeV] -Cell[9,0] 0.00051099891 [GeV] -### Total energy deposition in calorimeter by a source track in 13 cells : 1.0042510935268 (GeV) - -Source track ID 3553 (gamma,1.1635719616336[GeV]) at (-189.42306762758,-462.72983635222,253.06737772258) -Original primary track ID 31 (unknown,691.32334101424[GeV]) -Cell[11,30] 0.00045108728983734 [GeV] -Cell[11,31] 0.00060461727025475 [GeV] -Cell[11,32] 0.12006521587221 [GeV] -Cell[11,29] 0.0041731464430466 [GeV] -Cell[10,23] 0.00051739857249182 [GeV] -Cell[11,33] 1.0244071241107 [GeV] -Cell[11,34] 0.0015046055595973 [GeV] -Cell[15,21] 0.0031675432802265 [GeV] -Cell[16,42] 0.00047671672771307 [GeV] -Cell[12,14] 0.0017519539404072 [GeV] -Cell[10,27] 0.0036299905767684 [GeV] -### Total energy deposition in calorimeter by a source track in 11 cells : 1.1607493996433 (GeV) - -Source track ID 2671 (gamma,0.17435926984906[GeV]) at (-435.61886426439,245.43065231752,445.72701320764) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[12,31] 0.00069954414152815 [GeV] -Cell[12,20] 0.15017943187142 [GeV] -Cell[12,19] 0.020121183490767 [GeV] -Cell[11,42] 0.00051099891 [GeV] -Cell[11,5] 0.00046320295613197 [GeV] -### Total energy deposition in calorimeter by a source track in 5 cells : 0.17197436136985 (GeV) - -Source track ID 2235 (pi+,0.2736907078677[GeV]) at (311.41868961039,391.17566355967,73.868834321863) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[10,6] 0.094596745143009 [GeV] -Cell[9,4] 0.00022700647515967 [GeV] -Cell[10,31] 0.00037011795638566 [GeV] -Cell[9,5] 0.0012923804420955 [GeV] -Cell[10,5] 0.087013329518365 [GeV] -### Total energy deposition in calorimeter by a source track in 5 cells : 0.18349957953501 (GeV) - -Source track ID 2659 (gamma,0.67224858404432[GeV]) at (444.05232232013,-229.82065843195,-518.95901498046) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[7,43] 0.00943262072231 [GeV] -Cell[5,34] 0.0018597558158425 [GeV] -Cell[7,42] 0.00051099891 [GeV] -Cell[5,9] 0.0024289351758607 [GeV] -Cell[6,32] 0.00052248443724579 [GeV] -Cell[6,44] 0.029953754111186 [GeV] -Cell[6,43] 0.0078162431729865 [GeV] -Cell[4,25] 0.0063453300875996 [GeV] -Cell[4,24] 4.8700275838883e-05 [GeV] -Cell[7,45] 0.011384415878161 [GeV] -Cell[4,26] 0.00023206930447815 [GeV] -Cell[6,45] 0.00068927827794147 [GeV] -Cell[5,11] 0.00051099891 [GeV] -Cell[7,44] 0.59151175996292 [GeV] -### Total energy deposition in calorimeter by a source track in 14 cells : 0.66324734504237 (GeV) - -Source track ID 2660 (gamma,0.13757172036947[GeV]) at (417.90942075607,-274.50267037559,-190.7459976801) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[8,8] 0.00051099891 [GeV] -Cell[8,44] 0.00094382328973627 [GeV] -Cell[9,43] 0.11088980883737 [GeV] -Cell[13,21] 0.0016842844763693 [GeV] -Cell[9,44] 0.0021714039497436 [GeV] -Cell[8,42] 0.0028004636185356 [GeV] -Cell[8,43] 0.017301313320429 [GeV] -Cell[13,23] 0.0012696239672801 [GeV] -### Total energy deposition in calorimeter by a source track in 8 cells : 0.13757172036947 (GeV) - -Source track ID 2655 (pi-,0.3369986016315[GeV]) at (462.3698002168,-190.30020453872,-47.789641384645) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[9,42] 1.2380769476295e-10 [GeV] -Cell[7,22] 1.2470143818064e-05 [GeV] -Cell[9,43] 0.00030607662106593 [GeV] -Cell[9,47] 4.223863070365e-07 [GeV] -Cell[8,20] 0.00058418738620207 [GeV] -Cell[5,20] 1.3427745114313e-05 [GeV] -Cell[5,21] 4.5384202052446e-05 [GeV] -Cell[8,22] 3.0623999802629e-05 [GeV] -Cell[11,45] 0.0004335896451438 [GeV] -Cell[11,44] 5.1761837094091e-06 [GeV] -Cell[8,16] 8.6244595877361e-08 [GeV] -Cell[11,29] 7.3130461196342e-06 [GeV] -Cell[9,24] 5.6198864767794e-06 [GeV] -Cell[10,35] 8.4709604677755e-06 [GeV] -Cell[9,17] 0.00022715670954733 [GeV] -Cell[10,29] 0.00041230809963884 [GeV] -Cell[12,36] 1.4140471554128e-05 [GeV] -Cell[8,30] 3.864843165502e-08 [GeV] -Cell[8,34] 2.1812506020069e-08 [GeV] -Cell[9,21] 3.7387682039025e-07 [GeV] -Cell[10,34] 6.8771181080706e-05 [GeV] -Cell[5,19] 0.00018496963414066 [GeV] -Cell[4,19] 0.00050562901875242 [GeV] -Cell[2,32] 1.328294843006e-09 [GeV] -Cell[9,44] 0.023624674555407 [GeV] -Cell[9,45] 0.15083154908009 [GeV] -Cell[8,24] 4.1415603773203e-06 [GeV] -Cell[7,45] 5.8619277865546e-08 [GeV] -Cell[11,8] 0.0017153540981725 [GeV] -Cell[11,46] 2.2282412826371e-06 [GeV] -Cell[13,1] 1.3065724726857e-07 [GeV] -Cell[10,47] 0.0033151862905282 [GeV] -Cell[10,45] 4.9683024990372e-06 [GeV] -Cell[9,22] 0.0021520956770215 [GeV] -Cell[10,42] 2.7512248299558e-05 [GeV] -Cell[10,43] 0.00048179707084989 [GeV] -Cell[11,40] 0.0015754933711784 [GeV] -Cell[11,39] 0.0036421643057125 [GeV] -Cell[10,39] 0.0015815350073017 [GeV] -Cell[11,38] 9.7507116834095e-09 [GeV] -Cell[8,42] 1.0607037693262e-06 [GeV] -Cell[9,27] 7.5551740363835e-06 [GeV] -Cell[8,27] 3.0968341598054e-05 [GeV] -Cell[9,28] 0.0016005620945021 [GeV] -Cell[8,21] 3.4530743397454e-06 [GeV] -Cell[10,44] 0.00082727566688266 [GeV] -Cell[9,16] 1.7348970640569e-05 [GeV] -Cell[8,23] 1.4197890704963e-06 [GeV] -Cell[9,46] 0.00043300560503189 [GeV] -Cell[8,46] 2.7196266455576e-07 [GeV] -Cell[8,45] 0.00070708424281099 [GeV] -Cell[8,17] 0.0014923929374553 [GeV] -Cell[3,31] 7.305853229127e-07 [GeV] -Cell[14,1] 7.6582209089793e-06 [GeV] -Cell[3,34] 1.3232085620984e-08 [GeV] -Cell[3,32] 1.8919432704934e-07 [GeV] -Cell[10,40] 0.00073111594063084 [GeV] -### Total energy deposition in calorimeter by a source track in 57 cells : 0.19768726392748 (GeV) - -Source track ID 2656 (neutron,1.2043245587175[GeV]) at (474.86256291725,-156.54247455454,18.643000205833) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[11,45] 0.0010499726631336 [GeV] -Cell[11,44] 1.1756071151467e-05 [GeV] -Cell[15,41] 0.025133544194876 [GeV] -Cell[17,41] 3.8727160502958e-06 [GeV] -Cell[15,40] 0.00012532831709325 [GeV] -Cell[15,42] 0.0035518705482881 [GeV] -Cell[14,42] 0.001144382544012 [GeV] -Cell[14,41] 0.00077159108148044 [GeV] -Cell[9,45] 4.0004892225625e-05 [GeV] -Cell[11,43] 2.1674255776816e-08 [GeV] -Cell[13,43] 1.4882013230817e-05 [GeV] -Cell[11,47] 0.0012760283299495 [GeV] -Cell[11,46] 1.9834333507561e-05 [GeV] -Cell[12,43] 2.49393969425e-05 [GeV] -Cell[10,45] 0.060154924103922 [GeV] -Cell[13,42] 0.0022277565643722 [GeV] -Cell[17,42] 0.0012143527027607 [GeV] -Cell[10,42] 9.711948223412e-11 [GeV] -Cell[10,43] 0.0012756723963477 [GeV] -Cell[16,42] 0.0012017659118547 [GeV] -Cell[16,41] 0.0075640954614759 [GeV] -Cell[9,1] 0.00010503665932367 [GeV] -Cell[10,46] 0.0051924731989848 [GeV] -Cell[11,0] 0.00094703011531969 [GeV] -Cell[10,44] 0.00069975106516017 [GeV] -Cell[9,2] 0.00058461071509544 [GeV] -Cell[9,46] 3.4997914011001e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 27 cells : 0.11437049568194 (GeV) - -Source track ID 2623 (gamma,0.14026421693486[GeV]) at (484.00858148457,-125.44199077379,-41.381266576399) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[9,45] 0.0049217935690083 [GeV] -Cell[10,43] 0.00021677226597682 [GeV] -Cell[10,46] 0.0055859605591376 [GeV] -Cell[9,46] 0.12924546389671 [GeV] -### Total energy deposition in calorimeter by a source track in 4 cells : 0.13996999029084 (GeV) - -Source track ID 2626 (e-,0.022741775028209[GeV]) at (426.2907979909,-261.29706379576,-1249.8195642524) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[3,43] 0.022230776118209 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.022230776118209 (GeV) - -Source track ID 2624 (gamma,0.036377465437225[GeV]) at (259.89157510023,427.14911821508,-390.76651182398) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[8,8] 0.0012504173676613 [GeV] -Cell[7,8] 0.0080923936968488 [GeV] -Cell[8,7] 0.02670177971635 [GeV] -Cell[7,7] 0.00033287465636476 [GeV] -### Total energy deposition in calorimeter by a source track in 4 cells : 0.036377465437225 (GeV) - -Source track ID 2553 (neutron,0.97757164709953[GeV]) at (-144.89115847346,-478.54629054692,1257.2752175933) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[16,32] 1.4172379916999e-05 [GeV] -Cell[17,32] 3.728796588257e-05 [GeV] -Cell[16,35] 1.6994155331531e-06 [GeV] -Cell[16,9] 0.00035558949138726 [GeV] -Cell[16,8] 0.0013465986910769 [GeV] -Cell[16,34] 0.00083630922466136 [GeV] -Cell[17,20] 5.0902599468827e-11 [GeV] -Cell[17,21] 4.5029393444111e-05 [GeV] -Cell[18,20] 1.5761051713525e-07 [GeV] -Cell[14,19] 0.00096514977043864 [GeV] -Cell[16,33] 0.0052434214899559 [GeV] -Cell[17,23] 5.1759135094471e-06 [GeV] -Cell[18,22] 0.0017701637936738 [GeV] -Cell[17,22] 0.0006608917215719 [GeV] -Cell[18,21] 0.0040828305866494 [GeV] -### Total energy deposition in calorimeter by a source track in 15 cells : 0.015364477499121 (GeV) - -Source track ID 2617 (neutron,0.94218531643202[GeV]) at (-148.17910825232,-477.53842973896,336.25849751721) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[12,31] 5.5231555506907e-10 [GeV] -Cell[12,29] 0.00019406365422549 [GeV] -Cell[12,30] 0.0024258922225459 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.002619956429087 (GeV) - -Source track ID 2619 (gamma,0.00048999260468705[GeV]) at (282.21970232762,-412.73725252042,-357.7671340308) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[8,40] 0.00048999260468705 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00048999260468705 (GeV) - -Source track ID 2590 (gamma,0.00012294761468793[GeV]) at (207.43630165273,-454.93975508482,-202.08326547336) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[8,39] 0.00012294761468793 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00012294761468793 (GeV) - -Source track ID 2596 (gamma,0.000222315536447[GeV]) at (338.0280660432,-368.42506234931,111.1221142126) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[10,41] 0.000222315536447 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.000222315536447 (GeV) - -Source track ID 2601 (gamma,8.3649112519427e-05[GeV]) at (-283.75497672759,411.68326803785,519.2168016066) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[12,16] 8.3649112519427e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 8.3649112519427e-05 (GeV) - -Source track ID 2592 (gamma,0.00027891112886497[GeV]) at (70.973116851897,494.93718458439,787.60546234804) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[13,10] 0.00027891112886497 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00027891112886497 (GeV) - -Source track ID 2594 (gamma,0.00051099891[GeV]) at (298.51569004345,-401.10894130882,-198.47190427703) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[8,40] 0.00051099891 [GeV] +Source track ID 5830 (gamma,0.00051099891[GeV]) at (400.39060169561,299.47849016887,-198.7865035147) +Original primary track ID 29 (unknown,1.6025887774154[GeV]) +Cell[8,4] 0.00051099891 [GeV] ### Total energy deposition in calorimeter by a source track in 1 cells : 0.00051099891 (GeV) -Source track ID 2595 (gamma,0.00051099891[GeV]) at (360.7524470846,346.20466767863,1489.2356072514) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[17,5] 0.00051099891 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.00051099891 (GeV) -Source track ID 2559 (neutron,0.94156833783035[GeV]) at (447.06249180204,-223.90875021703,62.874746484327) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[10,45] 9.0717664988915e-09 [GeV] -Cell[10,44] 0.001971818918318 [GeV] -### Total energy deposition in calorimeter by a source track in 2 cells : 0.0019718279900845 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000240984268e-07 mm long + and its vector is (8.323854672198649e-08,-5.261364321995643e-08,-1.741130972732208e-08) mm + Endpoint of ComputeStep() was (519.4165904571348,-357.0200865431991,414.756649726306) + and current position to locate is (519.4165905403734,-357.0200865958128,414.7566497088947) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 2560 (neutron,0.94004046878422[GeV]) at (434.96663335386,-246.58472756601,48.364783584718) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[10,45] 5.2880481007378e-09 [GeV] -Cell[10,44] 0.00047510349364291 [GeV] -### Total energy deposition in calorimeter by a source track in 2 cells : 0.00047510878169101 (GeV) -Source track ID 2545 (gamma,0.015859560263227[GeV]) at (453.63009352848,-210.28489780615,-430.35206799032) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[7,42] 0.00054952737576026 [GeV] -Cell[8,24] 0.00016831371528732 [GeV] -Cell[7,24] 0.00034268519471268 [GeV] -Cell[7,44] 0.014799033977467 [GeV] -### Total energy deposition in calorimeter by a source track in 4 cells : 0.015859560263227 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998794039336e-08 mm long + and its vector is (4.88716977997683e-08,7.992593964445405e-08,-3.497711986710783e-08) mm + Endpoint of ComputeStep() was (714.2926731496301,-356.3862703233468,551.9443040766761) + and current position to locate is (714.2926731985018,-356.3862702434208,551.944304041699) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 2546 (gamma,0.75885122891297[GeV]) at (497.51078043627,-49.829944307523,326.48051528475) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[8,14] 0.00011741508645454 [GeV] -Cell[14,31] 0.0004793663033997 [GeV] -Cell[6,27] 0.00051099891 [GeV] -Cell[12,46] 0.023905659718773 [GeV] -Cell[11,47] 0.6308146008549 [GeV] -Cell[11,46] 0.025436150107482 [GeV] -Cell[12,47] 0.056470717159752 [GeV] -Cell[12,0] 0.0046567404818687 [GeV] -Cell[11,0] 0.010647266111422 [GeV] -Cell[10,40] 0.0029450161800884 [GeV] -### Total energy deposition in calorimeter by a source track in 10 cells : 0.75598393091414 (GeV) -Source track ID 2540 (gamma,0.20498507085045[GeV]) at (-301.46461308947,398.8973389919,1012.7583748344) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[16,0] 0.00058045608043622 [GeV] -Cell[16,16] 0.005995874058656 [GeV] -Cell[14,16] 0.00027724247523623 [GeV] -Cell[15,16] 0.12768843347692 [GeV] -Cell[15,17] 0.069436969227714 [GeV] -Cell[16,47] 0.00031125624365496 [GeV] -Cell[16,10] 0.00069483928783334 [GeV] -### Total energy deposition in calorimeter by a source track in 7 cells : 0.20498507085045 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999992719978839e-08 mm long + and its vector is (1.067471089299943e-08,-7.561868642369518e-08,-6.455888978962321e-08) mm + Endpoint of ComputeStep() was (221.2535695540855,611.1847986061873,1147.296189523536) + and current position to locate is (221.2535695647603,611.1847985305686,1147.296189458977) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 2516 (pi+,0.28061202847687[GeV]) at (419.67220783948,-271.79999626036,1087.6152388283) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[15,43] 0.1984654504863 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.1984654504863 (GeV) -Source track ID 2403 (gamma,0.12620965025075[GeV]) at (-487.28249370505,-112.05253825142,703.88981001366) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[13,26] 0.0018632584415077 [GeV] -Cell[14,26] 0.00051099891 [GeV] -Cell[13,25] 0.11894926329431 [GeV] -Cell[15,13] 0.0043481754077445 [GeV] -Cell[13,10] 0.00053795419719054 [GeV] -### Total energy deposition in calorimeter by a source track in 5 cells : 0.12620965025075 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000186492302e-07 mm long + and its vector is (1.251703451998765e-08,3.411577154111001e-08,9.31635213419213e-08) mm + Endpoint of ComputeStep() was (532.2802496195371,-436.7857364114325,523.7483028904946) + and current position to locate is (532.2802496320542,-436.7857363773167,523.7483029836582) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 2404 (gamma,0.088297327870564[GeV]) at (61.272122132283,-496.23152565048,76.525387355874) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[10,36] 0.085960328399182 [GeV] -Cell[10,37] 0.0018260005613827 [GeV] -Cell[10,39] 0.00028320582379965 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.088069534784364 (GeV) -Source track ID 2240 (pi+,0.88674270488427[GeV]) at (5.764455068087,499.96676995353,752.04006177539) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[11,45] 3.5714470985113e-05 [GeV] -Cell[15,10] 0.10422907984593 [GeV] -Cell[15,8] 0.00012756618863864 [GeV] -Cell[11,35] 4.6463704580674e-05 [GeV] -Cell[15,12] 9.8761550179915e-07 [GeV] -Cell[15,11] 0.11438396177188 [GeV] -Cell[10,37] 0.00050872861040878 [GeV] -Cell[10,12] 0.00019468664902951 [GeV] -Cell[16,9] 0.00052830122702153 [GeV] -Cell[16,8] 5.1310053095222e-11 [GeV] -Cell[18,10] 0.00015914191753473 [GeV] -Cell[18,11] 0.00018728624718653 [GeV] -Cell[14,9] 0.027936100876395 [GeV] -Cell[14,14] 0.00080717083065713 [GeV] -Cell[13,10] 0.0017878212278435 [GeV] -Cell[14,15] 3.8842069625389e-06 [GeV] -Cell[14,13] 1.2298631336307e-05 [GeV] -Cell[13,16] 1.5119500176297e-09 [GeV] -Cell[13,15] 0.00036108954778399 [GeV] -Cell[14,11] 0.18503829617825 [GeV] -Cell[13,13] 2.7704028379958e-06 [GeV] -Cell[12,13] 5.5100281606428e-06 [GeV] -Cell[14,10] 0.012225073271314 [GeV] -Cell[14,8] 0.0059132098215597 [GeV] -Cell[13,11] 0.072601572931496 [GeV] -Cell[16,10] 2.5168418257635e-05 [GeV] -Cell[15,9] 0.016015442590265 [GeV] -Cell[16,11] 0.1225660138478 [GeV] -Cell[15,5] 0.0012661928184772 [GeV] -### Total energy deposition in calorimeter by a source track in 29 cells : 0.66696953544136 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000233420091e-07 mm long + and its vector is (4.674768661061535e-08,8.448392918580794e-08,-2.602160975584411e-08) mm + Endpoint of ComputeStep() was (696.9261718131504,-363.7740844527218,400.9224337368088) + and current position to locate is (696.9261718598981,-363.7740843682378,400.9224337107872) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 2308 (pi-,0.65411841690176[GeV]) at (-91.156611553101,-491.6202519935,1126.0213391366) -Original primary track ID 41 (unknown,2.6699951779791[GeV]) -Cell[16,32] 0.0031148789513818 [GeV] -Cell[17,32] 0.0016563539923373 [GeV] -Cell[17,31] 0.00043800751642402 [GeV] -Cell[16,31] 0.0029574215312621 [GeV] -Cell[16,39] 0.00081966765671677 [GeV] -Cell[19,15] 7.3757824061431e-06 [GeV] -Cell[17,41] 1.6507707186975e-07 [GeV] -Cell[15,8] 1.968996366486e-08 [GeV] -Cell[18,16] 0.0094380121231749 [GeV] -Cell[16,12] 0.00092393929229826 [GeV] -Cell[15,11] 3.486031095963e-05 [GeV] -Cell[15,33] 0.00038619691081587 [GeV] -Cell[5,5] 5.10856625624e-08 [GeV] -Cell[5,39] 6.6233702818863e-07 [GeV] -Cell[5,40] 0.00017887832572058 [GeV] -Cell[5,4] 3.5377143866526e-06 [GeV] -Cell[5,3] 1.2287011711123e-05 [GeV] -Cell[16,37] 4.2786285041529e-07 [GeV] -Cell[17,37] 2.396835297418e-06 [GeV] -Cell[16,40] 0.0038847163177562 [GeV] -Cell[18,38] 8.1007834194224e-07 [GeV] -Cell[15,39] 1.0001967893913e-07 [GeV] -Cell[17,42] 6.6114997025579e-08 [GeV] -Cell[16,36] 0.0024305689642254 [GeV] -Cell[16,35] 0.12486365873188 [GeV] -Cell[15,37] 1.5634286683053e-09 [GeV] -Cell[17,36] 0.0015375021517681 [GeV] -Cell[17,35] 0.0047034457567836 [GeV] -Cell[18,35] 2.3699268046698e-05 [GeV] -Cell[18,36] 0.0010958058370367 [GeV] -Cell[17,34] 0.015919307767232 [GeV] -Cell[16,8] 5.4749476244069e-06 [GeV] -Cell[15,34] 0.10911314174094 [GeV] -Cell[16,34] 0.03887400596871 [GeV] -Cell[17,33] 0.0053841188292919 [GeV] -Cell[18,34] 0.00034902946992895 [GeV] -Cell[16,41] 8.5725623464441e-05 [GeV] -Cell[16,33] 0.0078729226357459 [GeV] -Cell[18,33] 0.011074643444578 [GeV] -Cell[19,16] 1.3138975108291e-05 [GeV] -Cell[17,2] 1.0084238601848e-07 [GeV] -Cell[18,37] 0.0015259250637932 [GeV] -Cell[18,15] 0.018317891341098 [GeV] -Cell[16,13] 0.0016854149609788 [GeV] -### Total energy deposition in calorimeter by a source track in 44 cells : 0.36873635642229 (GeV) -Source track ID 2231 (gamma,0.23818895051853[GeV]) at (-24.111052240173,-499.41831880686,-17.911064377671) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[9,34] 0.00070036488696385 [GeV] -Cell[9,38] 0.00042656265383832 [GeV] -Cell[12,26] 0.00076539832433875 [GeV] -Cell[10,35] 0.0156178894449 [GeV] -Cell[10,36] 0.00028011417952202 [GeV] -Cell[9,36] 0.0025803886991786 [GeV] -Cell[10,37] 0.00015108452050496 [GeV] -Cell[9,35] 0.21693689988316 [GeV] -### Total energy deposition in calorimeter by a source track in 8 cells : 0.23745870259241 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000061777877e-07 mm long + and its vector is (6.407810815289849e-08,-6.651066541962791e-08,-3.834486506093526e-08) mm + Endpoint of ComputeStep() was (629.4959609231889,-293.3929374198505,469.4516421445313) + and current position to locate is (629.495960987267,-293.3929374863612,469.4516421061864) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 2232 (gamma,0.33413532464401[GeV]) at (245.8933673121,435.35784351717,97.500310757389) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[10,6] 0.00049500147540725 [GeV] -Cell[10,9] 0.00028641793482654 [GeV] -Cell[10,8] 0.29079773071051 [GeV] -Cell[10,7] 0.042556174523265 [GeV] -### Total energy deposition in calorimeter by a source track in 4 cells : 0.334135324644 (GeV) -Source track ID 2125 (pi-,1.7949903031836[GeV]) at (441.96113466344,-233.81692720374,-1859.8991636185) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[0,42] 0.00042990894580896 [GeV] -Cell[0,44] 0.23063746440943 [GeV] -Cell[0,45] 0.0078423337151913 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.23890970707043 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000054265288e-07 mm long + and its vector is (6.128948371042497e-08,3.763091172004351e-09,-7.892685971455649e-08) mm + Endpoint of ComputeStep() was (563.4222582237479,-380.7300341079674,591.0431119149791) + and current position to locate is (563.4222582850374,-380.7300341042043,591.0431118360523) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 1819 (gamma,0.16498092085606[GeV]) at (-167.27757529263,471.1880864413,-1116.9835516122) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[5,37] 0.0013295026038022 [GeV] -Cell[4,16] 0.0010036010275833 [GeV] -Cell[5,38] 0.0017529874730513 [GeV] -Cell[2,39] 0.0016191071039052 [GeV] -Cell[3,14] 0.010105943975935 [GeV] -Cell[4,15] 0.0022839771357147 [GeV] -Cell[3,15] 0.001917470193408 [GeV] -Cell[4,14] 0.14496833134266 [GeV] -### Total energy deposition in calorimeter by a source track in 8 cells : 0.16498092085606 (GeV) -Source track ID 1750 (gamma,0.025785962614609[GeV]) at (-499.85155935852,12.182717548206,-421.85986118995) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[7,23] 0.023622286833605 [GeV] -Cell[7,24] 0.002163675781004 [GeV] -### Total energy deposition in calorimeter by a source track in 2 cells : 0.025785962614609 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000091445548e-07 mm long + and its vector is (-7.307249916266301e-08,-6.106574801378883e-09,-6.799353968744981e-08) mm + Endpoint of ComputeStep() was (503.416585636544,-213.3188679623148,507.6514490699305) + and current position to locate is (503.4165855634715,-213.3188679684213,507.651449001937) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 1751 (gamma,0.77353931528222[GeV]) at (193.2239034493,-461.15563873362,-1884.3170152318) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[1,43] 0.00039064995450805 [GeV] -Cell[5,7] 0.0023020936368033 [GeV] -Cell[0,40] 0.0015046287640702 [GeV] -Cell[4,18] 0.00061160093530768 [GeV] -Cell[1,23] 0.0015480299476516 [GeV] -Cell[0,15] 0.00058134634488511 [GeV] -Cell[1,29] 0.00062188469702741 [GeV] -Cell[2,21] 0.00045575860329811 [GeV] -Cell[1,38] 0.00017993888045763 [GeV] -Cell[1,26] 0.0012310903398022 [GeV] -Cell[2,43] 0.001493308540226 [GeV] -Cell[0,12] 0.0013413522533225 [GeV] -Cell[0,39] 0.58780938724771 [GeV] -Cell[1,39] 0.0015402136312105 [GeV] -Cell[2,46] 0.006438683646544 [GeV] -Cell[0,46] 0.0001475383601248 [GeV] -Cell[0,16] 0.00046422257766394 [GeV] -Cell[0,17] 0.00165149769581 [GeV] -Cell[0,38] 0.10309880465612 [GeV] -Cell[0,13] 0.0061111487118107 [GeV] -### Total energy deposition in calorimeter by a source track in 20 cells : 0.71952317942435 (GeV) -Source track ID 1696 (pi+,0.23566582951564[GeV]) at (58.497548987234,496.56624609662,-1616.1901383011) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[6,25] 0.00089480717013828 [GeV] -Cell[7,22] 3.4070787602104e-05 [GeV] -Cell[8,16] 1.8209320202004e-05 [GeV] -Cell[11,37] 0.00029934229315859 [GeV] -Cell[11,36] 5.9141167730559e-06 [GeV] -Cell[10,36] 4.5126038894523e-06 [GeV] -Cell[1,2] 0.00037505240961571 [GeV] -Cell[6,26] 1.2958182545844e-05 [GeV] -Cell[5,25] 2.2707035852363e-05 [GeV] -Cell[6,24] 5.0593289653079e-05 [GeV] -Cell[1,11] 0.19459293823506 [GeV] -Cell[6,41] 0.00088995745995703 [GeV] -Cell[11,8] 4.6698428172931e-07 [GeV] -Cell[10,38] 3.6300786014181e-06 [GeV] -Cell[8,17] 0.00098271579359766 [GeV] -Cell[2,0] 0.0010933161285406 [GeV] -### Total energy deposition in calorimeter by a source track in 16 cells : 0.19928119188946 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000305734882e-07 mm long + and its vector is (-6.05411969445413e-08,1.381488345941762e-08,-7.838315241315286e-08) mm + Endpoint of ComputeStep() was (574.0892802212712,-364.4468389417096,359.5238888583333) + and current position to locate is (574.08928016073,-364.4468389278947,359.5238887799501) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 1693 (gamma,0.59980090891317[GeV]) at (255.70125223543,-429.67065248307,-1133.3038154273) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[3,39] 0.0059794395782024 [GeV] -Cell[4,39] 0.045189879191882 [GeV] -Cell[2,17] 0.00051099891 [GeV] -Cell[4,7] 0.0018951023751139 [GeV] -Cell[3,29] 0.0011045365056385 [GeV] -Cell[2,20] 0.0008434959713825 [GeV] -Cell[2,1] 0.00068640003315145 [GeV] -Cell[3,40] 0.018990429634622 [GeV] -Cell[4,15] 0.0029604866020141 [GeV] -Cell[4,40] 0.51039825329305 [GeV] -Cell[3,10] 0.0015410681143536 [GeV] -Cell[15,28] 0.00032633154430807 [GeV] -Cell[3,38] 0.004008874514014 [GeV] -Cell[4,1] 0.00051099891 [GeV] -### Total energy deposition in calorimeter by a source track in 14 cells : 0.59494629517773 (GeV) -Source track ID 1694 (gamma,0.053266099197347[GeV]) at (183.99445242176,464.9150906112,-1027.4556461627) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[4,9] 0.03712031679674 [GeV] -Cell[4,8] 0.016145782400607 [GeV] -### Total energy deposition in calorimeter by a source track in 2 cells : 0.053266099197347 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998899754081e-08 mm long + and its vector is (-2.469209903210867e-08,8.957954378274735e-08,-3.695677719406376e-08) mm + Endpoint of ComputeStep() was (241.7043320675697,-570.5435597102975,187.760623309067) + and current position to locate is (241.7043320428776,-570.5435596207179,187.7606232721102) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 1691 (gamma,0.39597382458922[GeV]) at (-372.59430014235,-333.42688479101,-1802.3851785817) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[0,23] 0.00021353842684014 [GeV] -Cell[1,29] 0.00043604159461905 [GeV] -Cell[3,6] 0.00051099891 [GeV] -Cell[0,30] 0.0003604541302723 [GeV] -Cell[1,17] 0.00051099891 [GeV] -Cell[3,46] 0.00038327456111807 [GeV] -Cell[3,45] 0.00051099891 [GeV] -Cell[2,45] 0.00011474434332774 [GeV] -Cell[1,30] 0.00043515393072008 [GeV] -Cell[1,35] 0.00051099891 [GeV] -Cell[1,32] 0.00037960245637042 [GeV] -Cell[3,43] 4.3742036214098e-06 [GeV] -Cell[3,24] 2.3652754432987e-05 [GeV] -Cell[3,26] 5.5291623284575e-06 [GeV] -Cell[3,25] 4.4269293313846e-05 [GeV] -Cell[2,24] 3.9239253674168e-06 [GeV] -Cell[1,45] 0.00010988640735616 [GeV] -Cell[3,47] 0.00054341304936302 [GeV] -Cell[3,31] 4.2480620322749e-06 [GeV] -Cell[0,29] 0.33861684342389 [GeV] -### Total energy deposition in calorimeter by a source track in 20 cells : 0.34372294536498 (GeV) -Source track ID 1692 (gamma,0.02130681471934[GeV]) at (476.42903545991,151.7081875534,-84.41753906449) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[9,2] 0.02130681471934 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.02130681471934 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996840238303e-08 mm long + and its vector is (-5.769084054918494e-08,-7.239259502966888e-08,3.782952262554318e-08) mm + Endpoint of ComputeStep() was (516.0504421696776,306.0913936071064,367.7805126841027) + and current position to locate is (516.0504421119867,306.0913935347138,367.7805127219322) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 1690 (gamma,0.19239638056034[GeV]) at (-414.6518791976,279.39903199169,-1130.2071735141) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[4,18] 0.008921995083998 [GeV] + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000022596821e-07 mm long + and its vector is (9.456630323256832e-08,-5.359140686778119e-09,3.207014742656611e-08) mm + Endpoint of ComputeStep() was (525.2277574372589,-163.204787663662,294.9657686976972) + and current position to locate is (525.2277575318252,-163.2047876690212,294.9657687297674) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000097535503e-07 mm long + and its vector is (-5.542102599065402e-08,-8.150675512297312e-08,-1.688670181465568e-08) mm + Endpoint of ComputeStep() was (444.9624879274534,-291.486997095116,615.8349009287306) + and current position to locate is (444.9624878720323,-291.4869971766227,615.8349009118439) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000046285367e-07 mm long + and its vector is (7.392304723907728e-08,3.965675432482385e-08,5.443092732093646e-08) mm + Endpoint of ComputeStep() was (487.8204137229027,-487.8204138364832,484.7885715581144) + and current position to locate is (487.8204137968258,-487.8204137968265,484.7885716125453) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998283458798e-08 mm long + and its vector is (1.912383140734164e-09,9.438929282623576e-08,-3.29696945300384e-08) mm + Endpoint of ComputeStep() was (-402.5476332012468,422.3310786114014,69.24515230238289) + and current position to locate is (-402.5476331993344,422.3310787057907,69.2451522694132) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 5794 (pi-,0.39810204202646[GeV]) at (398.03209518138,-302.60609908843,394.38520063535) +Original primary track ID 29 (unknown,1.6025887774154[GeV]) +Cell[10,37] 2.1732218885973e-07 [GeV] +Cell[10,18] 0.0021799661391652 [GeV] +Cell[11,3] 9.26859231447e-06 [GeV] +Cell[12,41] 8.3709034015556e-09 [GeV] +Cell[12,45] 0.00063756799373994 [GeV] +Cell[12,44] 0.01349485385382 [GeV] +Cell[12,24] 5.2543972851709e-06 [GeV] +Cell[11,4] 6.7222413031232e-07 [GeV] +Cell[10,17] 4.2925510208647e-05 [GeV] +Cell[13,45] 7.2072217562891e-09 [GeV] +Cell[11,38] 6.2008970598981e-07 [GeV] +Cell[10,45] 1.7542572459206e-07 [GeV] +Cell[11,2] 1.8736042906085e-06 [GeV] +Cell[11,45] 0.00031429556513227 [GeV] +Cell[11,43] 0.010242611211018 [GeV] +Cell[12,43] 0.18635474274661 [GeV] +Cell[11,44] 0.0056249481297765 [GeV] +Cell[12,42] 0.004249593214429 [GeV] +Cell[11,42] 4.426540384452e-05 [GeV] +Cell[13,43] 5.7072270465142e-11 [GeV] +Cell[11,41] 0.00079775251169349 [GeV] +Cell[12,3] 0.00013741984841806 [GeV] +Cell[10,38] 6.1000183710576e-06 [GeV] +Cell[10,39] 6.4610503613949e-12 [GeV] +Cell[11,37] 0.00027459575655928 [GeV] +Cell[12,4] 2.6557038338183e-05 [GeV] +Cell[13,29] 9.933409630321e-06 [GeV] +Cell[15,9] 3.2399659141902e-07 [GeV] +Cell[15,8] 0.00065600698397816 [GeV] +### Total energy deposition in calorimeter by a source track in 29 cells : 0.22511255662863 (GeV) + +Source track ID 5786 (gamma,0.094503470007519[GeV]) at (318.07142598414,385.78565029355,-1059.6706018496) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[1,42] 0.0017222739893792 [GeV] +Cell[4,7] 0.002528647328391 [GeV] +Cell[4,6] 0.08882443107354 [GeV] +Cell[4,5] 0.0014281176162079 [GeV] +### Total energy deposition in calorimeter by a source track in 4 cells : 0.094503470007519 (GeV) + +Source track ID 5724 (pi+,0.33210970119913[GeV]) at (216.23242869079,450.82539500618,-1597.0918979269) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[1,8] 0.083307938399566 [GeV] +Cell[2,8] 0.0048926452226941 [GeV] +Cell[1,7] 0.12694211496658 [GeV] +### Total energy deposition in calorimeter by a source track in 3 cells : 0.21514269858884 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998941445523e-08 mm long + and its vector is (4.147238996665692e-08,7.727874162810622e-08,4.804201125807595e-08) mm + Endpoint of ComputeStep() was (-424.8674493625707,-331.7412523912486,-916.4230077268179) + and current position to locate is (-424.8674493210983,-331.7412523139699,-916.4230076787759) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993541390351e-08 mm long + and its vector is (-8.170047749445075e-09,6.902200766489841e-08,-7.189714779087808e-08) mm + Endpoint of ComputeStep() was (322.5006755471343,-532.6924406843351,-633.4640198008208) + and current position to locate is (322.5006755389642,-532.6924406153131,-633.4640198727179) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000329086288e-07 mm long + and its vector is (-1.74231047367357e-08,-6.233733529370511e-08,7.622662678841152e-08) mm + Endpoint of ComputeStep() was (-247.5165115860471,-562.4595418287623,-140.6588171242789) + and current position to locate is (-247.5165116034702,-562.4595418910997,-140.6588170480523) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997720372043e-08 mm long + and its vector is (5.293634330882924e-08,5.32047863543994e-08,6.608320290979464e-08) mm + Endpoint of ComputeStep() was (-456.2275922220435,-204.5883285169237,-1522.148230238396) + and current position to locate is (-456.2275921691071,-204.5883284637189,-1522.148230172312) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000099260788e-07 mm long + and its vector is (4.344269655121025e-08,-2.712863533815835e-08,-8.588813216192648e-08) mm + Endpoint of ComputeStep() was (357.1348959599566,-457.0061991175232,-370.6872875381418) + and current position to locate is (357.1348960033993,-457.0061991446518,-370.68728762403) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999992357281378e-08 mm long + and its vector is (1.63140612130519e-09,-1.128690030327562e-08,9.93475168797886e-08) mm + Endpoint of ComputeStep() was (-531.6431789682545,124.0307202174269,-1480.337718597602) + and current position to locate is (-531.6431789666231,124.03072020614,-1480.337718498255) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998030107223e-08 mm long + and its vector is (7.70890551393677e-08,-5.754429821536178e-08,2.731167114689015e-08) mm + Endpoint of ComputeStep() was (128.4154044177394,514.2076272748286,-842.8800158600745) + and current position to locate is (128.4154044948284,514.2076272172843,-842.8800158327629) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000354561989e-07 mm long + and its vector is (-4.851736434829945e-08,6.88930867909221e-08,-5.384993073676014e-08) mm + Endpoint of ComputeStep() was (24.30229916719475,602.1567195225073,-943.6972352663847) + and current position to locate is (24.30229911867739,602.1567195914004,-943.6972353202347) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000001668976e-07 mm long + and its vector is (-9.291136393585475e-08,-9.454439009459747e-09,3.575041773729026e-08) mm + Endpoint of ComputeStep() was (569.5182844090816,109.7675900784995,-1049.406655128899) + and current position to locate is (569.5182843161703,109.7675900690451,-1049.406655093149) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998208037118e-08 mm long + and its vector is (3.809503823504201e-08,-7.034685722828726e-08,6.00007012963033e-08) mm + Endpoint of ComputeStep() was (-285.7419860154642,504.729152636066,-203.1663464939679) + and current position to locate is (-285.7419859773692,504.7291525657191,-203.1663464339672) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999991756425769e-08 mm long + and its vector is (8.627023362350883e-08,2.629207074278384e-09,5.05026491737226e-08) mm + Endpoint of ComputeStep() was (-598.7993884495537,-68.17275379959236,-1141.750261774243) + and current position to locate is (-598.7993883632835,-68.17275379696315,-1141.75026172374) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998455493005e-08 mm long + and its vector is (5.823034143759287e-08,-6.678516228930675e-08,-4.635694494936615e-08) mm + Endpoint of ComputeStep() was (345.4882968208214,-424.3092323110352,-1044.431552800641) + and current position to locate is (345.4882968790517,-424.3092323778204,-1044.431552846998) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000004331155e-07 mm long + and its vector is (-5.899210009374656e-10,9.81460175353277e-08,1.91575395547261e-08) mm + Endpoint of ComputeStep() was (630.4582486372894,8.165350401370727,-191.2646069190945) + and current position to locate is (630.4582486366995,8.165350499516745,-191.2646068999369) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000306901982e-07 mm long + and its vector is (-2.340215132790036e-08,9.635971309762681e-08,1.292869455937762e-08) mm + Endpoint of ComputeStep() was (79.62824153906506,-585.7697934478526,-1386.048133700423) + and current position to locate is (79.62824151566291,-585.7697933514929,-1386.048133687494) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998790111844e-08 mm long + and its vector is (5.536281832974055e-08,-6.223740456334781e-08,5.533047442440875e-08) mm + Endpoint of ComputeStep() was (-90.91324280709154,528.8514628131625,-934.0865896907071) + and current position to locate is (-90.91324275172872,528.8514627509251,-934.0865896353766) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999999518735e-08 mm long + and its vector is (-7.917878974694759e-08,5.390590729348332e-08,2.872059212677414e-08) mm + Endpoint of ComputeStep() was (-569.3389726460676,55.34926396261287,119.6765136026344) + and current position to locate is (-569.3389727252464,55.34926401651878,119.676513631355) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000070699795e-07 mm long + and its vector is (1.575745045556687e-08,2.204092197644059e-08,9.625955499359407e-08) mm + Endpoint of ComputeStep() was (690.4828509577521,-177.9014739014282,-449.2123537271156) + and current position to locate is (690.4828509735096,-177.9014738793873,-449.212353630856) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997486770432e-08 mm long + and its vector is (-5.108503131623365e-08,-3.948866833525244e-08,7.636072041350417e-08) mm + Endpoint of ComputeStep() was (43.65889700178533,706.3037146393782,-1041.758525888409) + and current position to locate is (43.6588969507003,706.3037145998895,-1041.758525812048) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998503370792e-08 mm long + and its vector is (3.209901677792004e-09,-9.316306659457041e-08,-3.619857125158887e-08) mm + Endpoint of ComputeStep() was (-29.00671665217364,779.4604611745747,-986.2229925054318) + and current position to locate is (-29.00671664896374,779.4604610814116,-986.2229925416303) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000242710086e-07 mm long + and its vector is (3.177934893017209e-08,3.362174538779072e-08,-8.8654701357882e-08) mm + Endpoint of ComputeStep() was (10.83480102836323,606.202211314487,-883.4453847694434) + and current position to locate is (10.83480106014258,606.2022113481088,-883.4453848580981) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 5725 (pi-,0.6146891014783[GeV]) at (85.542368453738,492.62815916198,-889.06620104259) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[7,39] 3.4054968273267e-07 [GeV] +Cell[7,32] 1.3891312351916e-05 [GeV] +Cell[8,33] 0.0014473877784352 [GeV] +Cell[7,12] 0.0005753434365879 [GeV] +Cell[10,23] 2.1307186178774e-06 [GeV] +Cell[7,27] 0.00014288681954762 [GeV] +Cell[7,28] 6.5819040173665e-08 [GeV] +Cell[7,17] 0.0012119387745628 [GeV] +Cell[6,20] 0.002181170229157 [GeV] +Cell[8,41] 0.00089780328817551 [GeV] +Cell[6,0] 0.0002625977161124 [GeV] +Cell[9,33] 0.001588643522413 [GeV] +Cell[6,8] 5.1502138376236e-10 [GeV] +Cell[7,16] 0.001742832820237 [GeV] +Cell[7,47] 0.0012212079455043 [GeV] +Cell[9,0] 6.215905625595e-08 [GeV] +Cell[7,41] 0.00015576139335758 [GeV] +Cell[7,46] 0.00054190574854169 [GeV] +Cell[8,32] 0.0006080902929607 [GeV] +Cell[6,12] 4.4704060710501e-06 [GeV] +Cell[6,11] 0.0030581186881378 [GeV] +Cell[7,42] 0.00015164756958791 [GeV] +Cell[7,43] 0.0043704776438376 [GeV] +Cell[9,31] 0.00022538417765941 [GeV] +Cell[7,31] 1.0923519148491e-06 [GeV] +Cell[5,30] 1.1381649680175e-05 [GeV] +Cell[5,29] 2.3343317013769e-07 [GeV] +Cell[5,12] 0.00012644534330354 [GeV] +Cell[2,18] 0.0015216564478869 [GeV] +Cell[2,17] 4.1427018776403e-06 [GeV] +Cell[9,30] 4.6452623791993e-10 [GeV] +Cell[7,30] 7.7465054346249e-08 [GeV] +Cell[8,15] 4.4116908705291e-05 [GeV] +Cell[6,40] 0.0010583722538122 [GeV] +Cell[4,40] 0.0010003535682057 [GeV] +Cell[8,17] 0.00030854071385704 [GeV] +Cell[8,16] 8.7893567979336e-12 [GeV] +Cell[7,21] 0.00045611303271012 [GeV] +Cell[9,42] 0.0002183213920847 [GeV] +Cell[6,6] 5.0415721489117e-08 [GeV] +Cell[10,24] 4.8505446443414e-08 [GeV] +Cell[4,2] 9.5828349003568e-08 [GeV] +Cell[4,0] 3.3719348721206e-07 [GeV] +Cell[4,1] 0.00088713877515829 [GeV] +Cell[0,21] 2.6827975030756e-05 [GeV] +Cell[3,37] 3.6442637703772e-05 [GeV] +Cell[4,12] 0.054306472644443 [GeV] +Cell[0,42] 1.4939198881621e-05 [GeV] +Cell[0,41] 4.4092479365645e-05 [GeV] +Cell[4,41] 1.0419559618754e-05 [GeV] +Cell[6,23] 6.5154264448211e-06 [GeV] +Cell[8,0] 0.0018534298877389 [GeV] +Cell[7,1] 0.0014407629937604 [GeV] +Cell[8,1] 0.0024643204288296 [GeV] +Cell[4,23] 0.0006398176680085 [GeV] +Cell[4,25] 1.177397120955e-08 [GeV] +Cell[4,24] 1.9390439422295e-07 [GeV] +Cell[5,23] 0.001610737945321 [GeV] +Cell[2,46] 0.00065401181992015 [GeV] +Cell[2,22] 0.0011866124812557 [GeV] +Cell[6,21] 0.0022733431718048 [GeV] +Cell[9,34] 0.00054056378602642 [GeV] +Cell[5,10] 0.22473012489539 [GeV] +Cell[2,42] 0.0027479759345029 [GeV] +Cell[2,43] 1.1378540279111e-05 [GeV] +Cell[4,39] 0.00070109315869712 [GeV] +Cell[3,36] 1.8144498881156e-10 [GeV] +Cell[6,1] 0.00013373727597389 [GeV] +Cell[6,22] 0.0023115996746574 [GeV] +Cell[3,24] 0.0002007250241631 [GeV] +Cell[8,45] 1.0882033937378e-05 [GeV] +Cell[3,23] 0.0055122561844962 [GeV] +Cell[3,22] 2.1007150473906e-07 [GeV] +Cell[2,36] 0.0001157339098138 [GeV] +Cell[2,37] 0.0029622057190822 [GeV] +Cell[5,40] 0.000230202225776 [GeV] +Cell[10,42] 6.2858907102054e-05 [GeV] +Cell[7,40] 1.7266414670303e-07 [GeV] +Cell[5,39] 0.00075655391079533 [GeV] +Cell[7,25] 2.2554030321771e-05 [GeV] +Cell[5,11] 0.0061671971023707 [GeV] +Cell[6,10] 2.6555528311292e-05 [GeV] +Cell[2,47] 0.0017614443789873 [GeV] +Cell[5,8] 2.5267566797993e-08 [GeV] +Cell[9,32] 5.1144589301089e-05 [GeV] +Cell[5,9] 0.0028088383910198 [GeV] +Cell[7,0] 0.00026612683157583 [GeV] +Cell[4,9] 3.0866204295307e-05 [GeV] +Cell[8,47] 0.00024653546471684 [GeV] +Cell[5,13] 5.7720285440155e-11 [GeV] +Cell[6,30] 2.2197869839147e-08 [GeV] +Cell[4,11] 0.0075798161990099 [GeV] +### Total energy deposition in calorimeter by a source track in 92 cells : 0.35260103011574 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999983892777e-08 mm long + and its vector is (-8.787054639469716e-08,3.192853625932912e-08,3.5487119021127e-08) mm + Endpoint of ComputeStep() was (494.5634803049045,73.5320612448718,-1530.474453301234) + and current position to locate is (494.5634802170339,73.53206127680033,-1530.474453265747) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000294567301e-07 mm long + and its vector is (9.941891221387777e-08,-1.057941290127928e-08,-1.990429154830053e-09) mm + Endpoint of ComputeStep() was (-334.4934668484725,493.5516258303391,-1140.711483896206) + and current position to locate is (-334.4934667490535,493.5516258197597,-1140.711483898197) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000078657584e-07 mm long + and its vector is (6.343509539874503e-08,-1.246826286660507e-08,7.62925083108712e-08) mm + Endpoint of ComputeStep() was (-451.9934650590659,640.0454158843102,-1044.154128862119) + and current position to locate is (-451.9934649956308,640.0454158718419,-1044.154128785826) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996856661988e-08 mm long + and its vector is (-5.345060571926297e-08,-7.961017445268226e-08,-2.837686707835019e-08) mm + Endpoint of ComputeStep() was (-320.3128660807296,447.1014066854346,-59.92160109265965) + and current position to locate is (-320.3128661341802,447.1014066058244,-59.92160112103652) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999990048111669e-08 mm long + and its vector is (-1.134515059675323e-08,6.99276370141888e-09,9.910786502587143e-08) mm + Endpoint of ComputeStep() was (-386.8852321557945,459.8069814528637,-1241.112561128874) + and current position to locate is (-386.8852321671397,459.8069814598564,-1241.112561029767) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 3930 (pi+,0.42341575641016[GeV]) at (-379.21585867194,325.87625340258,-1082.3791793744) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[7,41] 1.2985992361791e-06 [GeV] +Cell[4,18] 0.094649895500895 [GeV] +Cell[6,41] 0.00096182234175001 [GeV] +Cell[4,16] 0.00047570243283997 [GeV] +Cell[4,17] 0.089323600480878 [GeV] +Cell[3,18] 0.00011576993707638 [GeV] +Cell[3,17] 0.1857631699747 [GeV] +Cell[5,40] 0.0017745557622812 [GeV] +Cell[3,16] 8.1710169324651e-05 [GeV] +Cell[9,17] 1.0734447528193e-08 [GeV] +Cell[7,40] 4.527630289283e-05 [GeV] +Cell[9,16] 1.2454597595024e-07 [GeV] +### Total energy deposition in calorimeter by a source track in 12 cells : 0.3731929367823 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000157579695e-07 mm long + and its vector is (2.136960119969444e-08,5.579354755980148e-08,8.018992048164364e-08) mm + Endpoint of ComputeStep() was (-629.967368056046,6.412114374143544,-1557.317161961788) + and current position to locate is (-629.9673680346764,6.412114429937091,-1557.317161881598) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000159492615e-07 mm long + and its vector is (-5.715719453291968e-09,-8.519151606378728e-08,-5.205515662964899e-08) mm + Endpoint of ComputeStep() was (514.2631490917346,-363.9140192822013,-1091.033146268461) + and current position to locate is (514.2631490860189,-363.9140193673928,-1091.033146320516) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999879507167e-08 mm long + and its vector is (1.023772711050697e-08,-7.282437763933558e-08,6.776281225029379e-08) mm + Endpoint of ComputeStep() was (-510.6207014374875,-169.2747727022766,-1006.155467522985) + and current position to locate is (-510.6207014272497,-169.274772775101,-1006.155467455222) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000391714299e-07 mm long + and its vector is (-6.443440270231804e-08,4.88490741190617e-08,5.883862286282238e-08) mm + Endpoint of ComputeStep() was (490.1149221464381,-387.4571415210937,-999.1575906900642) + and current position to locate is (490.1149220820037,-387.4571414722446,-999.1575906312256) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000046064354e-07 mm long + and its vector is (-2.7750331810239e-08,-4.184136059848242e-08,-8.648248694953509e-08) mm + Endpoint of ComputeStep() was (-467.5896514657432,265.4833370512729,133.8361695655003) + and current position to locate is (-467.5896514934935,265.4833370094315,133.8361694790179) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999660000688e-08 mm long + and its vector is (8.719041488802759e-08,-4.061769232066581e-08,2.735009729804005e-08) mm + Endpoint of ComputeStep() was (-573.6897547028331,371.8793540207687,-1262.455079354321) + and current position to locate is (-573.6897546156426,371.879353980151,-1262.455079326971) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997578495994e-08 mm long + and its vector is (-5.549176762542629e-08,7.813940783307771e-08,-2.85463102045469e-08) mm + Endpoint of ComputeStep() was (-156.2117422810634,-474.9714640169509,-1436.932565113606) + and current position to locate is (-156.2117423365552,-474.9714639388115,-1436.932565142152) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998664451461e-08 mm long + and its vector is (2.696685896808049e-08,-4.122756536162342e-08,-8.702340892341454e-08) mm + Endpoint of ComputeStep() was (693.4965205390629,-464.6166976495612,-1027.006925018625) + and current position to locate is (693.4965205660297,-464.6166976907887,-1027.006925105649) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 5652 (pi-,0.49353703003438[GeV]) at (306.90367737194,-394.72792251825,-951.08445590578) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[7,39] 0.00051730637986338 [GeV] +Cell[9,19] 7.9763703979552e-09 [GeV] +Cell[7,41] 9.6958267369018e-06 [GeV] +Cell[10,20] 1.5001475844656e-08 [GeV] +Cell[4,40] 0.00041386320816458 [GeV] +Cell[4,26] 6.3850166179691e-07 [GeV] +Cell[4,27] 5.7385876743865e-07 [GeV] +Cell[4,28] 4.2275293785679e-06 [GeV] +Cell[1,23] 3.6640773996282e-05 [GeV] +Cell[1,22] 3.5360842966838e-06 [GeV] +Cell[4,19] 0.00038051920713997 [GeV] +Cell[4,42] 0.10941696178415 [GeV] +Cell[4,44] 2.9155635274947e-09 [GeV] +Cell[4,43] 0.013748536394272 [GeV] +Cell[5,42] 0.060461404458407 [GeV] +Cell[4,41] 0.16908770617548 [GeV] +Cell[2,21] 0.0023180683004324 [GeV] +Cell[2,22] 1.554875052534e-08 [GeV] +Cell[2,23] 0.00066966586962576 [GeV] +Cell[5,44] 0.00062837058389027 [GeV] +Cell[2,25] 4.082361588371e-05 [GeV] +Cell[5,41] 0.077003370581101 [GeV] +Cell[4,30] 1.9254857237684e-05 [GeV] +Cell[4,31] 3.1338043278083e-05 [GeV] +Cell[3,19] 5.3386567446978e-07 [GeV] +Cell[2,24] 0.00095967114665086 [GeV] +Cell[4,37] 0.00071488333822428 [GeV] +Cell[7,38] 0.00093353198721434 [GeV] +Cell[4,20] 0.00016459239834876 [GeV] +Cell[5,43] 0.00038492329637666 [GeV] +Cell[4,38] 0.0010518203432057 [GeV] +Cell[7,40] 5.9312093445783e-05 [GeV] +Cell[10,19] 3.4198894775272e-07 [GeV] +### Total energy deposition in calorimeter by a source track in 33 cells : 0.43906215393401 (GeV) + +Source track ID 5677 (e-,0.00051893445512903[GeV]) at (-221.20122725774,448.40831510987,-888.82444958757) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[5,15] 7.9355451290283e-06 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 7.9355451290283e-06 (GeV) + +Source track ID 5662 (e-,0.00060910554984741[GeV]) at (-221.61344795483,448.20472965551,-888.11241690682) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[5,15] 9.5626323670185e-05 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 9.5626323670185e-05 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999117861193e-08 mm long + and its vector is (2.516060249035945e-08,7.957146408443805e-08,-5.509377842827234e-08) mm + Endpoint of ComputeStep() was (-358.1278642796931,1262.209289664411,-1430.892737818638) + and current position to locate is (-358.1278642545325,1262.209289743982,-1430.892737873731) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000061511144e-07 mm long + and its vector is (-3.224437250537449e-08,8.006270491023315e-08,-5.050014806329273e-08) mm + Endpoint of ComputeStep() was (-370.4369362415578,993.5267153731832,-1225.261090998495) + and current position to locate is (-370.4369362738021,993.5267154532459,-1225.261091048995) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000378630633e-07 mm long + and its vector is (1.361740942229517e-09,-5.349238563212566e-08,8.447909749520477e-08) mm + Endpoint of ComputeStep() was (-413.3453556116455,1196.176750561229,-1297.190165000789) + and current position to locate is (-413.3453556102837,1196.176750507737,-1297.19016491631) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000331432403e-07 mm long + and its vector is (-3.616781896198518e-08,7.150356395868585e-08,-5.982587936159689e-08) mm + Endpoint of ComputeStep() was (-297.0293430960583,1300.573256609368,-1616.183445224686) + and current position to locate is (-297.0293431322261,1300.573256680872,-1616.183445284511) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000642137001e-07 mm long + and its vector is (6.614837388951855e-08,-5.960669113846961e-08,4.551316123979632e-08) mm + Endpoint of ComputeStep() was (-165.5513441633864,1089.639443235203,-1597.43866927158) + and current position to locate is (-165.551344097238,1089.639443175596,-1597.438669226067) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000983480357e-07 mm long + and its vector is (-2.568225454524509e-08,-2.79214873444289e-09,9.660561772761866e-08) mm + Endpoint of ComputeStep() was (-376.6785405842092,1139.159831193964,-1392.157839062907) + and current position to locate is (-376.6785406098915,1139.159831191172,-1392.157838966301) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000383559505e-07 mm long + and its vector is (-8.256373007498041e-08,-5.400761438068002e-08,-1.632224666536786e-08) mm + Endpoint of ComputeStep() was (-239.8551913079831,1175.784626234757,-1496.929062488133) + and current position to locate is (-239.8551913905468,1175.784626180749,-1496.929062504455) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000306864985e-07 mm long + and its vector is (9.339714779343922e-08,-3.423087946430314e-08,-1.025796336762141e-08) mm + Endpoint of ComputeStep() was (-488.9359460111204,1236.86767314625,-1417.282520435077) + and current position to locate is (-488.9359459177233,1236.867673112019,-1417.282520445335) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000070777989e-07 mm long + and its vector is (6.600328106287634e-08,-6.59804300084943e-08,3.591867425711825e-08) mm + Endpoint of ComputeStep() was (-379.1936594879352,1191.097044245926,-1578.925816919383) + and current position to locate is (-379.1936594219319,1191.097044179946,-1578.925816883464) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999992702792211e-08 mm long + and its vector is (-3.792970915128535e-08,2.622232386784162e-08,-8.873394108377397e-08) mm + Endpoint of ComputeStep() was (-189.3541651969059,1245.45362319666,-1348.526979337844) + and current position to locate is (-189.3541652348356,1245.453623222882,-1348.526979426578) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000904868546e-07 mm long + and its vector is (-2.999627213284839e-10,-5.118090484756976e-08,8.590950528741814e-08) mm + Endpoint of ComputeStep() was (-425.5139848863467,1299.505773594037,-1309.582061171606) + and current position to locate is (-425.5139848866467,1299.505773542856,-1309.582061085697) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000001179258125e-07 mm long + and its vector is (-2.068850335490424e-08,-8.334632184414659e-08,-5.123865776113234e-08) mm + Endpoint of ComputeStep() was (-315.1401183020489,1309.660026744677,-1302.007061162393) + and current position to locate is (-315.1401183227374,1309.660026661331,-1302.007061213632) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000237589274e-07 mm long + and its vector is (-3.495881628623465e-08,8.236020221374929e-08,-4.466187419893686e-08) mm + Endpoint of ComputeStep() was (-369.9618712596932,1286.125440854058,-1259.019985364901) + and current position to locate is (-369.961871294652,1286.125440936418,-1259.019985409563) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999010755241e-08 mm long + and its vector is (1.325702214671765e-08,-8.928805073082913e-08,4.303342393541243e-08) mm + Endpoint of ComputeStep() was (-642.0161213601184,1300.929904134015,-1416.443225546876) + and current position to locate is (-642.0161213468614,1300.929904044727,-1416.443225503843) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997629979921e-08 mm long + and its vector is (-8.681635677021404e-08,-1.933381099661347e-08,4.570688361127395e-08) mm + Endpoint of ComputeStep() was (-190.0907741661756,1378.707307150324,-1392.635339365278) + and current position to locate is (-190.090774252992,1378.70730713099,-1392.635339319571) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995372741777e-08 mm long + and its vector is (2.739943738561124e-08,-3.115360414085444e-08,-9.098744158109184e-08) mm + Endpoint of ComputeStep() was (-958.4682083875042,1454.240602626501,-1399.999999909013) + and current position to locate is (-958.4682083601048,1454.240602595347,-1400) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000696528897e-07 mm long + and its vector is (3.897571332345251e-08,-4.108437678951304e-08,8.241954674303997e-08) mm + Endpoint of ComputeStep() was (-756.298595232614,1272.168398842174,-1516.886232436568) + and current position to locate is (-756.2985951936383,1272.16839880109,-1516.886232354149) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000504983062e-07 mm long + and its vector is (-3.656066382973222e-08,8.174242793757003e-08,-4.451408130989876e-08) mm + Endpoint of ComputeStep() was (-561.4297795470502,1315.553805512177,-1423.777304770981) + and current position to locate is (-561.4297795836109,1315.553805593919,-1423.777304815495) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995222718285e-08 mm long + and its vector is (-8.941822216002038e-08,4.068169801030308e-08,1.869148036348633e-08) mm + Endpoint of ComputeStep() was (-769.1196143927865,1205.56587537978,-1551.495533302104) + and current position to locate is (-769.1196144822047,1205.565875420461,-1551.495533283412) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994738449029e-08 mm long + and its vector is (-7.236258170451038e-08,5.910123945795931e-08,-3.564673534128815e-08) mm + Endpoint of ComputeStep() was (-662.2440867742032,1414.123147694222,-1591.242742141953) + and current position to locate is (-662.2440868465658,1414.123147753323,-1591.2427421776) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000505039931e-07 mm long + and its vector is (-7.289884251804324e-08,6.285699782893062e-08,2.710658009164035e-08) mm + Endpoint of ComputeStep() was (-777.8124550533227,1164.048016408336,-1645.09551735826) + and current position to locate is (-777.8124551262215,1164.048016471193,-1645.095517331153) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000825791278e-07 mm long + and its vector is (3.099626155744772e-08,8.781262295087799e-08,3.644436219474301e-08) mm + Endpoint of ComputeStep() was (-827.4749434477177,1296.936072708841,-1700.706191416646) + and current position to locate is (-827.4749434167214,1296.936072796654,-1700.706191380202) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000258668803e-07 mm long + and its vector is (2.892693373723887e-08,-1.347666511719581e-08,9.477139428781811e-08) mm + Endpoint of ComputeStep() was (-514.9545725449207,1239.828263887336,-1452.473508014203) + and current position to locate is (-514.9545725159937,1239.828263873859,-1452.473507919432) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000292510821e-07 mm long + and its vector is (-9.879545359581243e-08,8.435563358943909e-09,1.297325979976449e-08) mm + Endpoint of ComputeStep() was (-804.1250690010551,1242.490592811148,-1642.419404999706) + and current position to locate is (-804.1250690998505,1242.490592819584,-1642.419404986733) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000345660389e-07 mm long + and its vector is (-6.417428721761098e-08,6.593404577870388e-08,-3.917102731065825e-08) mm + Endpoint of ComputeStep() was (-660.137983494057,1234.592176591472,-1671.913130374678) + and current position to locate is (-660.1379835582313,1234.592176657406,-1671.913130413849) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993237399659e-08 mm long + and its vector is (-5.667720870405901e-08,8.224128578149248e-08,-4.904222805635072e-09) mm + Endpoint of ComputeStep() was (-695.4213646936723,1194.898558757001,-1561.580026389151) + and current position to locate is (-695.4213647503495,1194.898558839242,-1561.580026394055) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999447983829e-08 mm long + and its vector is (4.19298658016487e-08,2.701608536881395e-08,-8.66718892211793e-08) mm + Endpoint of ComputeStep() was (-419.7391314634379,1447.3598365967,-1402.3479111958) + and current position to locate is (-419.739131421508,1447.359836623716,-1402.347911282472) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998082043512e-08 mm long + and its vector is (-7.961284609336872e-08,1.573243935126811e-08,5.843185135745443e-08) mm + Endpoint of ComputeStep() was (-396.4554435132544,1446.659283038015,-1171.559389744338) + and current position to locate is (-396.4554435928673,1446.659283053748,-1171.559389685906) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000550364235e-07 mm long + and its vector is (-5.245271950116148e-08,8.379356586374342e-08,-1.507851266069338e-08) mm + Endpoint of ComputeStep() was (-552.2450245610867,1286.477917639473,-1158.157933077759) + and current position to locate is (-552.2450246135394,1286.477917723267,-1158.157933092838) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000040532687e-07 mm long + and its vector is (-7.230864440543883e-08,2.236652107967529e-08,6.535447027999908e-08) mm + Endpoint of ComputeStep() was (-13.91625785895228,1708.888852399798,-1332.882602423355) + and current position to locate is (-13.91625793126093,1708.888852422165,-1332.882602358001) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000444168029e-07 mm long + and its vector is (-4.84622546537139e-08,2.548858901718631e-10,-8.747201718506403e-08) mm + Endpoint of ComputeStep() was (257.7855175537471,1925.657300125693,-1404.234721933651) + and current position to locate is (257.7855175052848,1925.657300125948,-1404.234722021123) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996797839224e-08 mm long + and its vector is (6.210919423210726e-08,-7.56861027184641e-08,-2.034835233644117e-08) mm + Endpoint of ComputeStep() was (239.3438369735347,1484.400673255886,-1353.032383006329) + and current position to locate is (239.3438370356439,1484.4006731802,-1353.032383026677) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994346475065e-08 mm long + and its vector is (4.637001893570414e-08,-7.476933205907699e-08,4.753269422508311e-08) mm + Endpoint of ComputeStep() was (129.300963837099,1795.349899325276,-1301.926044356007) + and current position to locate is (129.3009638834691,1795.349899250507,-1301.926044308474) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999988260986119e-08 mm long + and its vector is (-2.443826474518573e-09,3.868262865580618e-08,-9.218274499289691e-08) mm + Endpoint of ComputeStep() was (102.5467212003562,1940.021357706416,-1199.999999907817) + and current position to locate is (102.5467211979124,1940.021357745098,-1200) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000050262982e-07 mm long + and its vector is (3.479485144453065e-08,-6.956520337553229e-08,-6.28490397502901e-08) mm + Endpoint of ComputeStep() was (186.2575681916993,1890.848518137142,-1139.234233550207) + and current position to locate is (186.2575682264942,1890.848518067577,-1139.234233613056) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996137512987e-08 mm long + and its vector is (1.465704713154992e-08,8.533402251487132e-08,-5.003266778658144e-08) mm + Endpoint of ComputeStep() was (253.3713860656903,1832.567308560033,-1287.811447025815) + and current position to locate is (253.3713860803474,1832.567308645367,-1287.811447075847) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000467242481e-07 mm long + and its vector is (-1.901622681543813e-08,9.036648407345638e-08,3.837044459942263e-08) mm + Endpoint of ComputeStep() was (493.2158835689303,1721.466595922406,-1206.220211544294) + and current position to locate is (493.2158835499141,1721.466596012773,-1206.220211505924) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000120852785e-07 mm long + and its vector is (-7.895982889749575e-08,9.997620509238914e-10,-6.13542852079263e-08) mm + Endpoint of ComputeStep() was (417.1325049071326,1779.828554873804,-1261.527399138854) + and current position to locate is (417.1325048281727,1779.828554874803,-1261.527399200208) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999992297825605e-08 mm long + and its vector is (6.185021561577742e-08,-4.899061423202511e-08,6.143659447843675e-08) mm + Endpoint of ComputeStep() was (237.8692897023084,1804.706495810833,-1192.404636659483) + and current position to locate is (237.8692897641586,1804.706495761843,-1192.404636598046) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 5653 (pi+,1.8605663070332[GeV]) at (-197.54475489381,459.32131434753,-618.4280808783) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[3,14] 0.52376347758733 [GeV] +Cell[2,10] 1.069938210685e-05 [GeV] +Cell[3,9] 0.00018798058370726 [GeV] +Cell[2,13] 0.012480698035709 [GeV] +Cell[6,4] 0.00017920313863794 [GeV] +Cell[0,16] 0.00080591912166301 [GeV] +Cell[3,10] 0.026640301777649 [GeV] +Cell[2,12] 1.1342637386406e-05 [GeV] +Cell[2,11] 0.0011472646701213 [GeV] +Cell[1,14] 0.00047215713483729 [GeV] +Cell[2,15] 0.0074201979742019 [GeV] +Cell[2,14] 0.022183488984174 [GeV] +Cell[1,15] 0.0011595980001487 [GeV] +Cell[1,13] 3.9055616980477e-09 [GeV] +Cell[1,11] 0.0022230492057704 [GeV] +Cell[3,13] 0.0091880093362503 [GeV] +Cell[5,14] 0.3058885831074 [GeV] +Cell[1,16] 0.003416807943352 [GeV] +Cell[4,10] 0.0031759737341022 [GeV] +Cell[4,11] 0.0049260099608167 [GeV] +Cell[6,15] 0.0606996277735 [GeV] +Cell[6,14] 0.18901340373093 [GeV] +Cell[4,14] 0.27775510146911 [GeV] +Cell[3,12] 0.002086652674803 [GeV] +Cell[3,15] 0.0010123079343532 [GeV] +Cell[2,16] 0.011127614580053 [GeV] +Cell[4,15] 6.7579094320536e-11 [GeV] +Cell[3,11] 0.010560091546412 [GeV] +### Total energy deposition in calorimeter by a source track in 28 cells : 1.4775355659977 (GeV) + +Source track ID 5650 (gamma,1.5112205487345[GeV]) at (-499.81457251293,13.615913620395,-1633.5784559777) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[4,45] 0.0067038591316843 [GeV] +Cell[8,7] 0.00038172993386957 [GeV] +Cell[7,8] 0.0011026062936215 [GeV] +Cell[2,35] 0.00024488835987887 [GeV] +Cell[0,6] 0.0018437291937498 [GeV] +Cell[1,24] 0.057613787671223 [GeV] +Cell[11,2] 0.00051099891 [GeV] +Cell[0,24] 0.0011048383077198 [GeV] +Cell[0,21] 0.00090303199396892 [GeV] +Cell[1,23] 1.3802036363369 [GeV] +Cell[1,22] 0.0040756979957345 [GeV] +Cell[0,22] 0.00011647292804454 [GeV] +Cell[0,23] 0.0018479800545091 [GeV] +Cell[0,5] 0.00037681557837947 [GeV] +Cell[1,6] 0.0019935366633835 [GeV] +Cell[0,25] 0.00019131942754674 [GeV] +Cell[4,6] 0.00061966535841878 [GeV] +Cell[1,12] 0.00037301099204878 [GeV] +Cell[1,25] 0.0013838686845826 [GeV] +Cell[5,45] 0.0048775763256971 [GeV] +Cell[3,5] 0.00051099891 [GeV] +Cell[1,44] 0.0012910838619984 [GeV] +Cell[3,2] 0.0010041295069313 [GeV] +Cell[0,9] 0.00091287929985107 [GeV] +Cell[0,32] 0.00092909703244431 [GeV] +Cell[2,43] 0.0050939135401251 [GeV] +Cell[0,43] 0.00069492615638888 [GeV] +Cell[0,14] 0.0013975957849105 [GeV] +Cell[2,36] 0.00060107611860007 [GeV] +Cell[2,30] 0.00068489494047845 [GeV] +Cell[11,45] 0.0031993967571649 [GeV] +Cell[1,31] 0.0019732309888503 [GeV] +Cell[5,36] 0.00039031558554839 [GeV] +### Total energy deposition in calorimeter by a source track in 33 cells : 1.4851525886243 (GeV) + +Source track ID 5651 (gamma,2.1679106429722[GeV]) at (-488.39603125188,-107.09489557122,-1544.0566940584) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[7,12] 0.0017031843851907 [GeV] +Cell[8,14] 0.00051752026428758 [GeV] +Cell[7,16] 0.00041325167039392 [GeV] +Cell[5,5] 0.00038402220086068 [GeV] +Cell[5,6] 0.00039804013307312 [GeV] +Cell[6,11] 0.0013082642108419 [GeV] +Cell[6,27] 0.00036728613447895 [GeV] +Cell[6,41] 0.00051099891 [GeV] +Cell[1,24] 0.0084256980916489 [GeV] +Cell[5,47] 0.00051099891 [GeV] +Cell[0,17] 0.0011498885241698 [GeV] +Cell[0,37] 0.00051099891 [GeV] +Cell[2,26] 0.010524676924035 [GeV] +Cell[2,5] 0.0021666641810803 [GeV] +Cell[2,38] 0.00030154924612524 [GeV] +Cell[1,6] 0.00051099891 [GeV] +Cell[1,42] 0.0010292470511261 [GeV] +Cell[1,27] 0.001421865266506 [GeV] +Cell[1,37] 0.00074880213681901 [GeV] +Cell[4,41] 0.00044728303401833 [GeV] +Cell[1,1] 0.0011431676191242 [GeV] +Cell[1,10] 0.00049670041930581 [GeV] +Cell[1,8] 0.00090204850373104 [GeV] +Cell[2,8] 0.00068763124394684 [GeV] +Cell[1,3] 5.9851471934434e-05 [GeV] +Cell[1,33] 0.00051099891 [GeV] +Cell[1,25] 1.0139674832399 [GeV] +Cell[2,22] 0.0020839431933915 [GeV] +Cell[5,14] 0.00028073566042256 [GeV] +Cell[2,39] 0.0020314274052788 [GeV] +Cell[1,26] 0.042657597240483 [GeV] +Cell[5,10] 0.00053649618497224 [GeV] +Cell[1,34] 0.0014100103248696 [GeV] +Cell[2,25] 1.031567672386 [GeV] +Cell[3,41] 0.00077683040281485 [GeV] +Cell[3,38] 0.0024188209438296 [GeV] Cell[3,18] 0.00051099891 [GeV] -Cell[4,19] 0.14187816132367 [GeV] -Cell[4,20] 0.0041308258820832 [GeV] -Cell[2,5] 0.00051099891 [GeV] -Cell[3,19] 0.035873614803257 [GeV] -Cell[4,36] 0.00056978564733632 [GeV] -### Total energy deposition in calorimeter by a source track in 7 cells : 0.19239638056034 (GeV) +Cell[2,24] 0.00491021126041 [GeV] +Cell[8,45] 0.00031346894712792 [GeV] +Cell[5,7] 0.0044584140409768 [GeV] +Cell[5,13] 0.0046159705740374 [GeV] +Cell[18,44] 0.0007373244951959 [GeV] +### Total energy deposition in calorimeter by a source track in 42 cells : 2.1504290424724 (GeV) -Source track ID 1610 (gamma,0.25162621009879[GeV]) at (499.02634685765,-31.18822120462,957.00755776527) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[14,47] 0.20953446898384 [GeV] -Cell[15,8] 0.0013292577187526 [GeV] -Cell[15,0] 0.00081290223018226 [GeV] -Cell[14,0] 0.0011392130301504 [GeV] -Cell[17,20] 0.00043770577765232 [GeV] -Cell[17,21] 0.0001388267691138 [GeV] -Cell[15,4] 0.0015024042955142 [GeV] -Cell[17,14] 0.0036797418714358 [GeV] -Cell[15,47] 0.026975691549809 [GeV] -Cell[18,17] 0.0015471821678208 [GeV] -Cell[18,28] 0.00051339295564511 [GeV] -### Total energy deposition in calorimeter by a source track in 11 cells : 0.24761078734991 (GeV) -Source track ID 1395 (gamma,0.23940053141976[GeV]) at (-378.30991629088,-326.92752596866,1067.9856061506) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[16,38] 0.00066413861064937 [GeV] -Cell[16,30] 0.00080715929976151 [GeV] -Cell[18,39] 0.015386379313619 [GeV] -Cell[18,40] 0.011559570019809 [GeV] -Cell[16,28] 0.00089918617763927 [GeV] -Cell[18,0] 0.00087545314124528 [GeV] -Cell[15,28] 0.0013069757353958 [GeV] -Cell[15,29] 0.18805764057803 [GeV] -Cell[16,29] 0.0047426522441285 [GeV] -Cell[19,47] 0.0025695067446167 [GeV] -Cell[19,11] 0.0094166035623681 [GeV] -### Total energy deposition in calorimeter by a source track in 11 cells : 0.23628526542726 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997300131472e-08 mm long + and its vector is (-1.910507307911757e-08,7.173218818934401e-08,6.700361154798884e-08) mm + Endpoint of ComputeStep() was (-402.8971042774662,506.7267005511902,-1721.7356978625) + and current position to locate is (-402.8971042965712,506.7267006229224,-1721.735697795496) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 1153 (gamma,0.41164872010706[GeV]) at (-456.42208415631,204.15406215505,168.67818657554) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[11,21] 0.013338907450636 [GeV] -Cell[10,21] 0.015402981926868 [GeV] -Cell[11,20] 0.014416734639504 [GeV] -Cell[10,20] 0.36849009609005 [GeV] -### Total energy deposition in calorimeter by a source track in 4 cells : 0.41164872010706 (GeV) -Source track ID 1154 (gamma,0.17556583448629[GeV]) at (-370.26452078963,336.01217930966,-37.728262621304) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[10,17] 0.0018071997824976 [GeV] -Cell[9,18] 0.1717936502 [GeV] -Cell[9,17] 0.0013966764817743 [GeV] -Cell[9,19] 0.00056830802202699 [GeV] -### Total energy deposition in calorimeter by a source track in 4 cells : 0.17556583448629 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999373959237e-08 mm long + and its vector is (-2.400958010184695e-08,9.456039151700679e-08,-2.19515641219914e-08) mm + Endpoint of ComputeStep() was (-464.824828837022,496.3243681106615,-1631.527824366772) + and current position to locate is (-464.8248288610316,496.3243682052218,-1631.527824388724) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 1152 (gamma,0.41324573943274[GeV]) at (303.44001238969,-397.39672731534,976.47730315274) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[14,32] 0.00051099891 [GeV] -Cell[15,41] 0.096632350103729 [GeV] -Cell[15,40] 0.15963946919422 [GeV] -Cell[14,41] 0.058325994090513 [GeV] -Cell[15,0] 0.00041566778402 [GeV] -Cell[14,40] 0.094565348322785 [GeV] -Cell[15,13] 0.00052845480721763 [GeV] -Cell[13,7] 0.0018324680840125 [GeV] -Cell[15,1] 0.00079498813625193 [GeV] -### Total energy deposition in calorimeter by a source track in 9 cells : 0.41324573943274 (GeV) -Source track ID 1093 (pi-,0.22434370271015[GeV]) at (-290.38499947563,407.03384635622,-1111.2929020551) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[7,43] 2.1215992951284e-05 [GeV] -Cell[5,21] 0.00044591269647333 [GeV] -Cell[4,44] 9.9682722939178e-06 [GeV] -Cell[5,17] 0.00082536710762068 [GeV] -Cell[4,18] 0.0013955885948393 [GeV] -Cell[4,17] 0.012387127606297 [GeV] -Cell[4,19] 0.00071866967574682 [GeV] -Cell[4,16] 0.096700591603353 [GeV] -Cell[6,44] 0.00074038261803298 [GeV] -Cell[3,14] 1.7308703945673e-09 [GeV] -Cell[0,0] 1.9260282890173e-05 [GeV] -Cell[4,15] 0.0042576496617401 [GeV] -Cell[0,47] 0.0017118887675118 [GeV] -Cell[3,15] 0.003807224445871 [GeV] -Cell[3,16] 3.9380676898872e-05 [GeV] -Cell[5,22] 9.4018000512506e-05 [GeV] -Cell[4,14] 9.4910079100259e-05 [GeV] -Cell[0,46] 3.2100561918924e-05 [GeV] -### Total energy deposition in calorimeter by a source track in 18 cells : 0.12330125837492 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993658669127e-08 mm long + and its vector is (8.511233318131417e-08,2.191876546930871e-08,-4.770163286593743e-08) mm + Endpoint of ComputeStep() was (-577.3674287395493,469.98845252014,-1751.08743026595) + and current position to locate is (-577.3674286544369,469.9884525420587,-1751.087430313652) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 1094 (pi+,1.0810393479304[GeV]) at (389.75719081877,-313.19216498033,505.66241659151) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[12,44] 0.0016269053521418 [GeV] -Cell[13,41] 0.024732265887109 [GeV] -Cell[13,39] 2.0836204953412e-08 [GeV] -Cell[15,44] 6.2852905675754e-06 [GeV] -Cell[14,43] 0.0012840974338226 [GeV] -Cell[14,42] 2.3717478145045e-05 [GeV] -Cell[14,41] 4.6668708964717e-06 [GeV] -Cell[12,45] 1.1067812124566e-08 [GeV] -Cell[13,45] 4.8847171342459e-08 [GeV] -Cell[13,44] 4.1808404288986e-05 [GeV] -Cell[12,46] 1.5472197674171e-09 [GeV] -Cell[13,43] 0.017539330656026 [GeV] -Cell[12,43] 0.010633779613099 [GeV] -Cell[13,42] 0.50349226558424 [GeV] -Cell[13,40] 0.0020618046138993 [GeV] -Cell[14,44] 4.8038863562397e-05 [GeV] -Cell[12,42] 0.13725947700952 [GeV] -Cell[12,41] 0.0086075236156415 [GeV] -Cell[15,43] 6.8084913948496e-05 [GeV] -Cell[12,40] 0.0044810304260161 [GeV] -Cell[9,1] 0.0014512183050655 [GeV] -Cell[14,15] 0.0014671797326847 [GeV] -Cell[14,16] 2.4448889780047e-05 [GeV] -Cell[9,2] 5.2296926862709e-06 [GeV] -Cell[8,17] 7.8174695372581e-06 [GeV] -### Total energy deposition in calorimeter by a source track in 25 cells : 0.71486705840108 (GeV) -Source track ID 1091 (gamma,0.028595474656773[GeV]) at (328.18597487785,377.21872420848,-300.64105519786) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[8,6] 0.028595474656773 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.028595474656773 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998583211651e-08 mm long + and its vector is (-8.114966476568952e-09,-9.817472346185241e-08,-1.720081854728051e-08) mm + Endpoint of ComputeStep() was (324.22492674797,-422.6522851649466,-1690.995085106617) + and current position to locate is (324.224926739855,-422.6522852631213,-1690.995085123818) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 1092 (gamma,0.46372847760985[GeV]) at (-465.99474848272,181.24263953753,-913.3829539275) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[7,8] 0.001148004413113 [GeV] -Cell[5,20] 0.03041575059279 [GeV] -Cell[5,21] 0.41254393834492 [GeV] -Cell[11,36] 0.0019859328998643 [GeV] -Cell[5,8] 0.00083499000444864 [GeV] -Cell[5,19] 0.0003268075720339 [GeV] -Cell[1,32] 0.0010351689162927 [GeV] -Cell[4,21] 0.0044711411726621 [GeV] -Cell[8,2] 0.0015741600359673 [GeV] -Cell[5,22] 0.0020242340866307 [GeV] -Cell[7,38] 0.00049897243839189 [GeV] -Cell[3,38] 0.00073370662903056 [GeV] -Cell[4,14] 0.0022186099973209 [GeV] -Cell[6,18] 0.0034060615963913 [GeV] -Cell[10,40] 0.00051099891 [GeV] -### Total energy deposition in calorimeter by a source track in 15 cells : 0.46372847760985 (GeV) -Source track ID 1089 (gamma,0.21067608644927[GeV]) at (-247.62061484702,-434.37775162039,-1046.3393807044) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[6,4] 0.0025873912328662 [GeV] -Cell[4,32] 0.17398896602627 [GeV] -Cell[5,18] 0.00051099891 [GeV] -Cell[2,40] 0.0058738995951058 [GeV] -Cell[5,44] 0.00043092239904627 [GeV] -Cell[2,39] 0.00051099891 [GeV] -Cell[4,28] 0.0017504465239677 [GeV] -Cell[5,40] 0.0024162662181757 [GeV] -Cell[3,31] 0.0044287984227077 [GeV] -Cell[4,31] 0.017598451476735 [GeV] -Cell[3,32] 0.00057894673439212 [GeV] -### Total energy deposition in calorimeter by a source track in 11 cells : 0.21067608644927 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995192036655e-08 mm long + and its vector is (-6.379138994816458e-09,-7.49108721720404e-08,6.593677426280919e-08) mm + Endpoint of ComputeStep() was (-243.0706213719837,537.9544518923402,-1784.412366723685) + and current position to locate is (-243.0706213783628,537.9544518174293,-1784.412366657748) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 1087 (gamma,0.06726801612498[GeV]) at (-461.11391429963,-193.32345444687,-562.35065327576) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[7,27] 0.045131283899015 [GeV] -Cell[7,26] 0.021754098668653 [GeV] -Cell[3,0] 0.0003826335573114 [GeV] -### Total energy deposition in calorimeter by a source track in 3 cells : 0.06726801612498 (GeV) -Source track ID 1088 (gamma,1.2213291054873[GeV]) at (-495.81010298298,64.59366671749,-1525.2871232918) -Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[4,33] 0.0027139037148742 [GeV] -Cell[0,40] 0.00050072802404335 [GeV] -Cell[0,42] 0.00043801282968324 [GeV] -Cell[1,44] 0.00051756340570959 [GeV] -Cell[2,37] 0.00039536409836122 [GeV] -Cell[4,19] 0.00066532705838619 [GeV] -Cell[4,3] 0.00051099891 [GeV] -Cell[0,7] 0.0064480965733494 [GeV] -Cell[1,21] 0.00085745625070811 [GeV] -Cell[1,22] 0.014549159983062 [GeV] -Cell[1,23] 0.014471592468586 [GeV] -Cell[1,24] 0.004110625791416 [GeV] -Cell[1,29] 0.00065452363613088 [GeV] -Cell[1,8] 0.00073054163413259 [GeV] -Cell[2,15] 0.0012314236766359 [GeV] -Cell[3,7] 0.00019358196964083 [GeV] -Cell[2,22] 0.33535671521927 [GeV] -Cell[4,45] 0.00051099891 [GeV] -Cell[0,6] 0.00034147693823652 [GeV] -Cell[2,10] 0.00092233669119762 [GeV] -Cell[2,43] 0.0018443666031941 [GeV] -Cell[2,4] 0.00040517296076298 [GeV] -Cell[2,24] 0.00047967070667411 [GeV] -Cell[2,23] 0.80076588607329 [GeV] -Cell[4,36] 0.0021093301189423 [GeV] -Cell[5,3] 0.00051099891 [GeV] -Cell[6,42] 0.0003020808613317 [GeV] -Cell[5,13] 0.00069320125415397 [GeV] -Cell[5,12] 0.0022848166023379 [GeV] -Cell[4,1] 0.00051099891 [GeV] -Cell[2,30] 0.0032853308827691 [GeV] -Cell[3,0] 0.00059574397853277 [GeV] -Cell[0,35] 0.00031741694035917 [GeV] -Cell[2,42] 0.00031922964987143 [GeV] -### Total energy deposition in calorimeter by a source track in 34 cells : 1.2005446722356 (GeV) +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999984640289e-08 mm long + and its vector is (-2.293830902999616e-09,-6.54040377412457e-09,-9.975951797969174e-08) mm + Endpoint of ComputeStep() was (161.8927182281349,577.0132278492792,-1555.050852565359) + and current position to locate is (161.892718225841,577.0132278427388,-1555.050852665118) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- -Source track ID 94 (gamma,0.0055213691551595[GeV]) at (-494.98850527656,-70.61430197966,-1983.5884877303) + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993887707826e-08 mm long + and its vector is (1.292772822125698e-08,-8.990764399641193e-08,4.18267518398352e-08) mm + Endpoint of ComputeStep() was (-275.4291742792171,-531.5344465504752,-1858.205992240614) + and current position to locate is (-275.4291742662894,-531.5344466403828,-1858.205992198788) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997660544843e-08 mm long + and its vector is (-6.691536214020744e-10,5.618653631245252e-08,-8.272013474197593e-08) mm + Endpoint of ComputeStep() was (-51.04162123186913,696.8022774376138,-1330.151528838779) + and current position to locate is (-51.04162123253828,696.8022774938004,-1330.151528921499) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000049777943e-07 mm long + and its vector is (1.469743438065052e-09,6.799609764129855e-10,-9.998689165513497e-08) mm + Endpoint of ComputeStep() was (-159.129181404876,628.9912487969821,-1181.976892314249) + and current position to locate is (-159.1291814034063,628.991248797662,-1181.976892414235) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998274964443e-08 mm long + and its vector is (8.842678766995959e-08,-7.186827133409679e-09,-4.614162207872141e-08) mm + Endpoint of ComputeStep() was (-208.5001198222703,822.0184084493002,-1386.115404397566) + and current position to locate is (-208.5001197338435,822.0184084421134,-1386.115404443708) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000492251313e-07 mm long + and its vector is (-1.535462956780975e-08,-9.100506304093869e-08,-3.850095708912704e-08) mm + Endpoint of ComputeStep() was (-212.2493706506655,750.5665891767959,-1049.207783781382) + and current position to locate is (-212.2493706660201,750.5665890857908,-1049.207783819883) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000251568986e-07 mm long + and its vector is (6.576456712537038e-08,7.528126388933742e-08,-2.785327524179593e-09) mm + Endpoint of ComputeStep() was (-255.9152662355772,716.2659140172245,-1088.134704619268) + and current position to locate is (-255.9152661698127,716.2659140925058,-1088.134704622054) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996281278889e-08 mm long + and its vector is (-4.01456077270268e-08,8.471772616758244e-08,-3.480272425804287e-08) mm + Endpoint of ComputeStep() was (-487.3213237514293,852.0192787127946,-1166.485611987051) + and current position to locate is (-487.3213237915749,852.0192787975124,-1166.485612021854) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 5623 (pi-,0.39143253115185[GeV]) at (-224.43535846432,446.79835482127,-1616.4762293651) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[0,31] 3.4174217888676e-06 [GeV] +Cell[2,10] 7.4649985890574e-08 [GeV] +Cell[2,17] 2.8974725864828e-08 [GeV] +Cell[2,13] 3.0718699516683e-06 [GeV] +Cell[0,35] 5.9902300708927e-06 [GeV] +Cell[1,23] 3.4105483297026e-05 [GeV] +Cell[1,17] 0.0050341564096194 [GeV] +Cell[1,18] 9.3381681836036e-08 [GeV] +Cell[0,17] 0.0017903019079801 [GeV] +Cell[0,18] 0.0023895448724103 [GeV] +Cell[0,34] 1.360292287427e-05 [GeV] +Cell[1,40] 1.225970880796e-07 [GeV] +Cell[1,41] 1.9860453903675e-10 [GeV] +Cell[1,42] 5.6938603734125e-07 [GeV] +Cell[1,14] 3.5574866228558e-05 [GeV] +Cell[2,14] 1.2158084427938e-06 [GeV] +Cell[1,15] 0.21565849373605 [GeV] +Cell[1,10] 0.00052749099324899 [GeV] +Cell[1,9] 1.2263471726328e-06 [GeV] +Cell[2,9] 6.5021477803384e-07 [GeV] +Cell[3,13] 0.0024333745396686 [GeV] +Cell[5,15] 0.00088410344490386 [GeV] +Cell[5,14] 0.0057877425280908 [GeV] +Cell[1,16] 0.0088784940013495 [GeV] +Cell[4,13] 4.8180954176928e-05 [GeV] +Cell[1,7] 0.0004919777163387 [GeV] +Cell[0,32] 0.00044786434362788 [GeV] +Cell[2,42] 1.8005594112083e-06 [GeV] +Cell[0,30] 1.7478974768892e-08 [GeV] +Cell[4,14] 0.00027800514756871 [GeV] +Cell[3,12] 0.0040444912511161 [GeV] +Cell[4,15] 0.001400823825184 [GeV] +Cell[3,46] 0.00033726661800341 [GeV] +### Total energy deposition in calorimeter by a source track in 33 cells : 0.25053387468045 (GeV) + +Source track ID 5601 (pi+,4.0201726034765[GeV]) at (-418.33240436592,-273.85762625391,-1787.8158185608) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[0,28] 0.2049840010269 [GeV] +Cell[1,28] 0.013880959565383 [GeV] +Cell[0,27] 0.00041195320593036 [GeV] +### Total energy deposition in calorimeter by a source track in 3 cells : 0.21927691379821 (GeV) + +Source track ID 5602 (neutron,7.3741998938947[GeV]) at (-413.0762339184,-281.72331279429,-1776.1644807987) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[0,28] 2.9719837766606e-06 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 2.9719837766606e-06 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996440453054e-08 mm long + and its vector is (-3.231383516322239e-08,-1.241437530552503e-08,-9.381733434565831e-08) mm + Endpoint of ComputeStep() was (-469.7331425675762,273.3944727399327,-1777.22272207693) + and current position to locate is (-469.7331425998901,273.3944727275183,-1777.222722170747) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997781859283e-08 mm long + and its vector is (1.115716941058054e-08,9.43924192142731e-08,-3.107385282419273e-08) mm + Endpoint of ComputeStep() was (-423.9929750128613,-340.46964498058,-312.5625217285542) + and current position to locate is (-423.9929750017042,-340.4696448861876,-312.5625217596281) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000240842705e-07 mm long + and its vector is (-1.525154402770568e-08,-8.502211557015471e-08,-5.038486960984301e-08) mm + Endpoint of ComputeStep() was (-542.0152161202279,-55.23069419117429,-1319.074667890189) + and current position to locate is (-542.0152161354795,-55.23069427619641,-1319.074667940574) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999765963702e-08 mm long + and its vector is (8.025938313949155e-08,-2.640251750563039e-08,5.349147613742389e-08) mm + Endpoint of ComputeStep() was (-707.3138229613418,-110.1163223826012,-1809.488968144354) + and current position to locate is (-707.3138228810824,-110.1163224090037,-1809.488968090863) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000907270599e-07 mm long + and its vector is (-2.50080915975559e-08,4.815194643015275e-08,-8.400002116104588e-08) mm + Endpoint of ComputeStep() was (-208.625576728809,-553.1466036925931,-1882.314005844422) + and current position to locate is (-208.6255767538171,-553.1466036444411,-1882.314005928422) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000852426886e-07 mm long + and its vector is (-2.010055766277219e-08,6.937534635653719e-08,-6.915956873854157e-08) mm + Endpoint of ComputeStep() was (-84.20464517523561,528.5447652012741,-1631.833803196731) + and current position to locate is (-84.20464519533617,528.5447652706495,-1631.83380326589) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996960219919e-08 mm long + and its vector is (8.153210728778504e-08,-4.949805543219554e-08,-3.004083737323526e-08) mm + Endpoint of ComputeStep() was (316.1723454338764,-462.5711603088171,-1589.653006006173) + and current position to locate is (316.1723455154086,-462.5711603583152,-1589.653006036214) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999992296414893e-08 mm long + and its vector is (-1.156477935637668e-08,8.541610441170633e-08,-5.069841790827923e-08) mm + Endpoint of ComputeStep() was (-36.74374011493758,837.8420315721415,-1811.02269517285) + and current position to locate is (-36.74374012650236,837.8420316575576,-1811.022695223549) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999989246705708e-08 mm long + and its vector is (-2.353809236410598e-08,-1.030616658681538e-08,-9.664222488936502e-08) mm + Endpoint of ComputeStep() was (197.9228704582212,964.6756273499218,-1873.315967862578) + and current position to locate is (197.9228704346831,964.6756273396156,-1873.315967959221) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998822087548e-08 mm long + and its vector is (7.979048177730874e-08,5.561992111324798e-08,2.323577064089477e-08) mm + Endpoint of ComputeStep() was (204.8163808895487,1111.283154719356,-1808.981648350732) + and current position to locate is (204.8163809693391,1111.283154774976,-1808.981648327496) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999619538334e-08 mm long + and its vector is (3.408527504689118e-08,4.95249423693167e-08,-7.990911399247125e-08) mm + Endpoint of ComputeStep() was (153.5075894255501,818.1236334655576,-1984.235706050372) + and current position to locate is (153.5075894596354,818.1236335150826,-1984.235706130281) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993172067852e-08 mm long + and its vector is (5.397830094011624e-08,2.20436504605459e-08,-8.124288797262125e-08) mm + Endpoint of ComputeStep() was (-27.56563759389766,997.7133016511573,-1822.892911129132) + and current position to locate is (-27.56563753991936,997.7133016732009,-1822.892911210375) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993016912254e-08 mm long + and its vector is (1.491309831180843e-08,-6.021087983754114e-08,7.843618732294999e-08) mm + Endpoint of ComputeStep() was (208.9008234242934,504.3312011980503,-1852.493246578752) + and current position to locate is (208.9008234392065,504.3312011378395,-1852.493246500316) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000673910208e-07 mm long + and its vector is (-7.314673666769522e-08,-4.493472260946874e-09,6.80395260133082e-08) mm + Endpoint of ComputeStep() was (314.0633644544997,916.7711055663602,-1924.219543871715) + and current position to locate is (314.063364381353,916.7711055618668,-1924.219543803675) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999740419187e-08 mm long + and its vector is (1.090424461835937e-08,-9.920540833263658e-08,6.275286068557762e-09) mm + Endpoint of ComputeStep() was (114.7025259258313,914.5549897885924,-1689.650337160137) + and current position to locate is (114.7025259367356,914.554989689387,-1689.650337153862) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 5512 (pi-,5.4476570307949[GeV]) at (-285.58730752025,-410.4142904229,-1893.8918430921) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[8,28] 1.9242313555878e-09 [GeV] +Cell[0,31] 1.0013684025937 [GeV] +Cell[5,25] 2.1302478562575e-06 [GeV] +Cell[1,4] 3.5085903888103e-05 [GeV] +Cell[8,29] 0.00018276644740195 [GeV] +Cell[1,24] 0.00028299805112192 [GeV] +Cell[1,36] 4.5113389060134e-05 [GeV] +Cell[1,23] 0.00034734784292505 [GeV] +Cell[1,22] 0.00054070101542629 [GeV] +Cell[0,20] 0.00028682115983905 [GeV] +Cell[1,19] 2.2104700292402e-11 [GeV] +Cell[2,5] 0.0018351674903528 [GeV] +Cell[0,4] 2.5134952738881e-05 [GeV] +Cell[3,33] 0.00031989169607232 [GeV] +Cell[1,40] 1.7147713835584e-05 [GeV] +Cell[0,8] 1.2436989787489e-05 [GeV] +Cell[0,25] 1.8917489796877e-12 [GeV] +Cell[0,3] 1.0869336518226e-05 [GeV] +Cell[1,37] 1.3137564819772e-06 [GeV] +Cell[1,14] 0.00054948063224799 [GeV] +Cell[1,20] 1.7780041512765e-05 [GeV] +Cell[1,10] 0.00021724165692729 [GeV] +Cell[1,9] 4.4459040509537e-08 [GeV] +Cell[1,8] 4.5661368127412e-06 [GeV] +Cell[1,13] 1.0085110703812e-06 [GeV] +Cell[1,12] 3.2755665756667e-08 [GeV] +Cell[1,11] 0.00018829015642348 [GeV] +Cell[2,0] 6.4587197033688e-05 [GeV] +Cell[1,25] 7.2157680381224e-07 [GeV] +Cell[2,40] 1.6456199323329e-06 [GeV] +Cell[2,39] 0.0001416901970457 [GeV] +Cell[0,12] 3.482649617581e-09 [GeV] +Cell[0,10] 0.053118935068732 [GeV] +Cell[0,26] 0.0041525284408451 [GeV] +Cell[0,33] 0.0039778547298528 [GeV] +Cell[0,9] 0.0020203262889989 [GeV] +Cell[0,32] 0.016222204561234 [GeV] +Cell[0,30] 0.013400428302746 [GeV] +Cell[0,40] 9.7922032078941e-06 [GeV] +Cell[3,24] 0.0011988387628003 [GeV] +Cell[0,11] 0.00015665825124779 [GeV] +Cell[3,25] 0.0033990791132712 [GeV] +Cell[4,20] 3.5153857024852e-06 [GeV] +Cell[0,7] 0.0011290650090083 [GeV] +Cell[2,47] 4.9102874996606e-05 [GeV] +Cell[1,0] 6.1557115288451e-05 [GeV] +### Total energy deposition in calorimeter by a source track in 46 cells : 1.1054003090664 (GeV) + +Source track ID 5262 (e-,0.00092189776955291[GeV]) at (-374.95605539377,-330.76873571054,-1261.6250438878) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[3,29] 0.00041089885955291 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.00041089885955291 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000416923819e-07 mm long + and its vector is (5.835041427815213e-08,9.191580829792656e-09,8.068923307291698e-08) mm + Endpoint of ComputeStep() was (12.10346375995426,-656.7131593661474,-1010.937909631165) + and current position to locate is (12.10346381830467,-656.7131593569558,-1010.937909550476) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999884279612e-08 mm long + and its vector is (-9.98495011117484e-08,-5.469303232530365e-09,4.044977686135098e-10) mm + Endpoint of ComputeStep() was (-510.1447801907003,-205.5536502717923,-1955.546392847681) + and current position to locate is (-510.1447802905498,-205.5536502772616,-1955.546392847277) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000064041927e-07 mm long + and its vector is (8.49325942908763e-09,6.810279273850028e-08,-7.273160917975474e-08) mm + Endpoint of ComputeStep() was (-215.5763240829211,484.1764641456766,-1430.475915677991) + and current position to locate is (-215.5763240744279,484.1764642137794,-1430.475915750723) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997898553798e-08 mm long + and its vector is (-1.579129360607112e-08,-5.212223186390474e-08,-8.386837180296425e-08) mm + Endpoint of ComputeStep() was (-42.32993658623794,-748.8044981096265,1071.969451230908) + and current position to locate is (-42.32993660202924,-748.8044981617487,1071.96945114704) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000282826065e-07 mm long + and its vector is (2.242290975118522e-08,-9.216259400091076e-08,3.167451723129489e-08) mm + Endpoint of ComputeStep() was (576.9791029555382,-215.8811931125836,-1863.15156093322) + and current position to locate is (576.9791029779611,-215.8811932047462,-1863.151560901545) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997658575821e-08 mm long + and its vector is (9.919344279296638e-08,6.07678884989582e-09,-1.112334757635836e-08) mm + Endpoint of ComputeStep() was (208.3823260013122,-636.6416407485497,-1802.069798228754) + and current position to locate is (208.3823261005056,-636.6416407424729,-1802.069798239877) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997389703679e-08 mm long + and its vector is (-3.798212500072395e-08,-5.764047728007426e-08,-7.235280463646632e-08) mm + Endpoint of ComputeStep() was (-1.698127790221258,499.997116411204,-1067.189448159634) + and current position to locate is (-1.698127828203383,499.9971163535636,-1067.189448231987) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000001073126609e-07 mm long + and its vector is (-2.379954366915626e-08,3.823475935860188e-08,-8.928441275202204e-08) mm + Endpoint of ComputeStep() was (-590.5398817369683,-307.5554331573034,-1924.880920344043) + and current position to locate is (-590.5398817607678,-307.5554331190687,-1924.880920433327) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997115547358e-08 mm long + and its vector is (3.03645038002287e-08,-9.212760687660193e-08,2.430010681564454e-08) mm + Endpoint of ComputeStep() was (-573.9244929475361,-395.8975138183757,-1641.685742553011) + and current position to locate is (-573.9244929171716,-395.8975139105033,-1641.685742528711) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993506882353e-08 mm long + and its vector is (9.786026566871442e-08,1.194873178178568e-08,-1.675061866990291e-08) mm + Endpoint of ComputeStep() was (-536.7564473603418,-26.53747064696859,-1480.609271942145) + and current position to locate is (-536.7564472624815,-26.53747063501985,-1480.609271958895) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000475544497e-07 mm long + and its vector is (-7.388189970924941e-08,1.657929260545643e-08,-6.531922736030538e-08) mm + Endpoint of ComputeStep() was (61.92971146244354,629.0701708579019,-1692.369814703196) + and current position to locate is (61.92971138856164,629.0701708744812,-1692.369814768515) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000502099604e-07 mm long + and its vector is (-5.129351166033302e-09,2.77752860711189e-08,9.592827154847328e-08) mm + Endpoint of ComputeStep() was (239.2288498753276,555.5633850395884,-1927.793646625687) + and current position to locate is (239.2288498701982,555.5633850673637,-1927.793646529758) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000018844898e-07 mm long + and its vector is (8.917277227737941e-08,-3.91352728001948e-09,4.508774509304203e-08) mm + Endpoint of ComputeStep() was (-697.6983539037612,172.7594494341713,-1826.237437195779) + and current position to locate is (-697.6983538145885,172.7594494302578,-1826.237437150691) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000071197002e-07 mm long + and its vector is (8.921290373109514e-08,2.209155525179085e-08,-3.940840542782098e-08) mm + Endpoint of ComputeStep() was (-590.5811761090597,105.8955831294956,-1676.171719199397) + and current position to locate is (-590.5811760198468,105.8955831515871,-1676.171719238805) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000096604803e-07 mm long + and its vector is (2.072988536383491e-08,-9.067250061889354e-08,-3.672562343126629e-08) mm + Endpoint of ComputeStep() was (-519.679638233757,-249.4845898264179,-1991.877973629964) + and current position to locate is (-519.6796382130271,-249.4845899170904,-1991.877973666689) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000028985054e-07 mm long + and its vector is (-5.829519977851305e-09,9.981803827940894e-08,-1.541593519505113e-09) mm + Endpoint of ComputeStep() was (-656.5292962126107,-214.505050814591,-1870.57189713552) + and current position to locate is (-656.5292962184402,-214.505050714773,-1870.571897137062) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999656538322e-08 mm long + and its vector is (-2.915334107456147e-08,4.600974534696434e-08,8.386405170313083e-08) mm + Endpoint of ComputeStep() was (312.6751911528749,676.2718644964634,-1845.105267461745) + and current position to locate is (312.6751911237216,676.2718645424732,-1845.105267377881) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000340014884e-07 mm long + and its vector is (-8.816891750029754e-08,3.231673417758429e-08,3.43784449796658e-08) mm + Endpoint of ComputeStep() was (-193.166951316753,619.4086600229953,-1640.374610718721) + and current position to locate is (-193.1669514049219,619.408660055312,-1640.374610684342) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000175151297e-07 mm long + and its vector is (-9.668195843914873e-08,-2.202091309300158e-08,1.294920082273165e-08) mm + Endpoint of ComputeStep() was (423.6527045934654,-344.9208608656737,117.0576720652953) + and current position to locate is (423.6527044967835,-344.9208608876946,117.0576720782445) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999979211512e-08 mm long + and its vector is (9.313106374975177e-08,6.258460416574962e-11,3.642253432190046e-08) mm + Endpoint of ComputeStep() was (-483.9888867694031,-431.3694602565179,-1913.447616494439) + and current position to locate is (-483.988886676272,-431.3694602564553,-1913.447616458017) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998678287351e-08 mm long + and its vector is (8.568815701437416e-08,3.529805780999595e-08,-3.757105559998308e-08) mm + Endpoint of ComputeStep() was (-722.0740553212006,-107.2802813349954,278.3451080394282) + and current position to locate is (-722.0740552355124,-107.2802812996973,278.3451080018571) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000075580332e-07 mm long + and its vector is (4.033120148960734e-08,9.05685197949424e-08,1.306671038037166e-08) mm + Endpoint of ComputeStep() was (544.4699340864194,17.53333275185752,-1518.078812900247) + and current position to locate is (544.4699341267506,17.53333284242604,-1518.07881288718) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000320013437e-07 mm long + and its vector is (-1.25478436530102e-08,9.805245326788281e-08,1.510875335952733e-08) mm + Endpoint of ComputeStep() was (-621.4328792518501,-278.6294608478191,-1881.354071528744) + and current position to locate is (-621.4328792643979,-278.6294607497666,-1881.354071513636) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000423766889e-07 mm long + and its vector is (3.270884008088615e-09,8.607480594946537e-08,5.079800757812336e-08) mm + Endpoint of ComputeStep() was (-593.6895135365036,-226.9550052974107,-1997.525994867016) + and current position to locate is (-593.6895135332327,-226.9550052113359,-1997.525994816218) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 3937 (pi-,5.0449014276416[GeV]) at (-463.64144262646,-187.1806952633,-1933.1318006284) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[8,35] 0.00028662889575028 [GeV] +Cell[4,36] 5.0931703299284e-12 [GeV] +Cell[13,35] 0.0055771486710229 [GeV] +Cell[4,33] 0.00070870419091523 [GeV] +Cell[9,0] 2.8580701618921e-05 [GeV] +Cell[14,35] 0.001286242589866 [GeV] +Cell[10,25] 0.00070968173190533 [GeV] +Cell[14,32] 4.2277280000809e-05 [GeV] +Cell[13,15] 0.00020019933152842 [GeV] +Cell[12,45] 0.0036934494510573 [GeV] +Cell[11,26] 0.0001277338474265 [GeV] +Cell[11,25] 0.003163542317622 [GeV] +Cell[3,14] 0.00049843681061793 [GeV] +Cell[12,13] 1.3253461278509e-05 [GeV] +Cell[8,31] 7.2206057666335e-06 [GeV] +Cell[8,32] 0.00026421575021959 [GeV] +Cell[0,0] 0.00054212710311053 [GeV] +Cell[0,6] 6.6191432415508e-07 [GeV] +Cell[1,24] 0.0016602687089805 [GeV] +Cell[0,36] 3.734152501363e-05 [GeV] +Cell[13,36] 0.00068489580193397 [GeV] +Cell[13,34] 0.0012694415274994 [GeV] +Cell[13,33] 2.7749923835927e-06 [GeV] +Cell[14,34] 0.00076970862280041 [GeV] +Cell[14,33] 0.007966845797913 [GeV] +Cell[0,24] 6.4690041967124e-05 [GeV] +Cell[1,23] 0.00013088325859292 [GeV] +Cell[1,22] 0.00077676586835241 [GeV] +Cell[0,22] 1.023587515192e-08 [GeV] +Cell[0,23] 0.0016174385271152 [GeV] +Cell[0,2] 5.3646464424673e-05 [GeV] +Cell[0,45] 0.00055247194856884 [GeV] +Cell[0,18] 0.0010913032880887 [GeV] +Cell[1,38] 8.0216072133226e-05 [GeV] +Cell[3,4] 0.00070750493288438 [GeV] +Cell[2,33] 0.00042956642294851 [GeV] +Cell[1,5] 0.00051099891 [GeV] +Cell[1,6] 0.00045925039299542 [GeV] +Cell[1,40] 0.00040253619927636 [GeV] +Cell[1,41] 2.1222309442237e-08 [GeV] +Cell[0,42] 0.0025892511055397 [GeV] +Cell[0,41] 1.2776708230376e-05 [GeV] +Cell[0,8] 0.00035108923594976 [GeV] +Cell[0,25] 0.010795988927345 [GeV] +Cell[0,3] 2.7066630718764e-06 [GeV] +Cell[1,27] 1.788724141079e-05 [GeV] +Cell[1,37] 0.0010281758040524 [GeV] +Cell[1,14] 3.5706166625005e-07 [GeV] +Cell[2,15] 0.00021991180152122 [GeV] +Cell[1,15] 2.5481072952971e-08 [GeV] +Cell[4,8] 0.00051099891 [GeV] +Cell[7,1] 5.8819584897719e-05 [GeV] +Cell[0,29] 0.0014376246929993 [GeV] +Cell[1,10] 1.1639443783906e-05 [GeV] +Cell[1,9] 0.0013964409955628 [GeV] +Cell[1,8] 0.0067784251893067 [GeV] +Cell[1,13] 0.0058918863035349 [GeV] +Cell[1,12] 0.0023591233982609 [GeV] +Cell[0,38] 9.6326857601525e-12 [GeV] +Cell[1,21] 0.0032950644325382 [GeV] +Cell[1,11] 4.9159913260155e-08 [GeV] +Cell[2,0] 3.4009402008905e-06 [GeV] +Cell[2,21] 1.6664486756781e-05 [GeV] +Cell[2,22] 0.0013266677440348 [GeV] +Cell[1,29] 0.0020240687600256 [GeV] +Cell[2,40] 0.00051099891 [GeV] +Cell[0,26] 1.2325223406702 [GeV] +Cell[2,6] 1.2805123871658e-05 [GeV] +Cell[7,2] 6.1092480289517e-05 [GeV] +Cell[3,3] 0.0029168886436499 [GeV] +Cell[3,2] 4.4061113842417e-06 [GeV] +Cell[0,9] 3.7020072340965e-11 [GeV] +Cell[1,43] 0.0012209884365572 [GeV] +Cell[1,7] 0.17670312373725 [GeV] +Cell[2,25] 4.8733945194044e-05 [GeV] +Cell[0,28] 0.018351054121172 [GeV] +Cell[3,0] 0.0010276443016474 [GeV] +Cell[2,43] 4.2362237290945e-06 [GeV] +Cell[3,39] 4.6583614021074e-06 [GeV] +Cell[3,41] 0.0018108935629333 [GeV] +Cell[4,30] 0.00078739626437656 [GeV] +Cell[3,36] 0.0026641919692266 [GeV] +Cell[0,44] 4.9375622900357e-05 [GeV] +Cell[2,24] 0.00018143993041986 [GeV] +Cell[0,11] 2.5474149151705e-07 [GeV] +Cell[1,28] 0.0043041883564647 [GeV] +Cell[4,34] 0.00037852308157983 [GeV] +Cell[10,40] 2.5532409432344e-05 [GeV] +Cell[12,46] 0.0011932941988911 [GeV] +Cell[11,45] 0.0017548326256581 [GeV] +Cell[11,42] 1.0654682216455e-05 [GeV] +Cell[11,46] 0.0022230552430204 [GeV] +Cell[11,6] 9.2375981969187e-05 [GeV] +Cell[11,41] 1.0541407391429e-10 [GeV] +Cell[13,38] 1.9038081314648e-05 [GeV] +Cell[10,38] 9.9505962862168e-06 [GeV] +Cell[10,39] 1.8917760695331e-05 [GeV] +Cell[10,41] 8.3441409515217e-10 [GeV] +Cell[15,35] 1.6789926905858e-07 [GeV] +Cell[10,42] 0.00063083173947302 [GeV] +Cell[10,6] 0.0024466875564095 [GeV] +Cell[0,7] 4.6260538510978e-10 [GeV] +Cell[1,47] 2.2817496815833e-05 [GeV] +Cell[2,47] 0.00052741419063271 [GeV] +Cell[3,15] 0.00094140353940202 [GeV] +Cell[0,27] 0.76696148426392 [GeV] +Cell[4,35] 2.1133056407052e-09 [GeV] +Cell[5,35] 9.9014561101285e-09 [GeV] +Cell[17,29] 0.0021019037498653 [GeV] +### Total energy deposition in calorimeter by a source track in 109 cells : 2.2990933395677 (GeV) + +Source track ID 5056 (pi-,26.431194861732[GeV]) at (-348.93796027492,-358.10934067569,-1955.5813398532) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[0,30] 0.078862043413628 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.078862043413628 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999665122081e-08 mm long + and its vector is (-7.985318006831221e-08,-2.792945963392413e-08,5.332367436494678e-08) mm + Endpoint of ComputeStep() was (647.35090693354,-58.62425600751462,-1628.360802235663) + and current position to locate is (647.3509068536869,-58.62425603544408,-1628.36080218234) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000361330781e-07 mm long + and its vector is (2.086051154037705e-08,-8.555606711979635e-08,-4.738149073091336e-08) mm + Endpoint of ComputeStep() was (-577.8902484883671,67.19927415827269,-1779.071556420001) + and current position to locate is (-577.8902484675066,67.19927407271662,-1779.071556467383) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995790914072e-08 mm long + and its vector is (5.693925686500734e-08,6.991967893554829e-09,-8.190863809431903e-08) mm + Endpoint of ComputeStep() was (270.860417962643,-462.9542539271902,-1210.909285237478) + and current position to locate is (270.8604180195823,-462.9542539201982,-1210.909285319387) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000070023263e-07 mm long + and its vector is (-3.250579538871534e-08,-4.964318378597454e-08,-8.049187272263225e-08) mm + Endpoint of ComputeStep() was (-799.9005881007815,12.6114672133415,-1641.716677638222) + and current position to locate is (-799.9005881332873,12.61146716369832,-1641.716677718714) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999992478002078e-08 mm long + and its vector is (-8.98837697604904e-08,-3.807133452937705e-08,-2.171327651012689e-08) mm + Endpoint of ComputeStep() was (-1146.972629584814,-1012.597544288948,-1832.17644690706) + and current position to locate is (-1146.972629674697,-1012.597544327019,-1832.176446928773) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000036215052e-07 mm long + and its vector is (3.408308657526504e-08,2.837060719684814e-08,8.962956599134486e-08) mm + Endpoint of ComputeStep() was (-568.2910278593334,330.5148008934761,-1073.782351871106) + and current position to locate is (-568.2910278252504,330.5148009218468,-1073.782351781476) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000807376831e-07 mm long + and its vector is (4.934213393426035e-08,-1.506589342170628e-08,8.566439646529034e-08) mm + Endpoint of ComputeStep() was (-535.3594766937346,419.2734558491339,-1593.378873701327) + and current position to locate is (-535.3594766443924,419.273455834068,-1593.378873615663) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996357547555e-08 mm long + and its vector is (-3.845627816190245e-08,-1.785275571819511e-08,9.056702765519731e-08) mm + Endpoint of ComputeStep() was (528.737973957427,-279.7130352647439,-1081.133664605612) + and current position to locate is (528.7379739189707,-279.7130352825966,-1081.133664515045) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000000350222e-07 mm long + and its vector is (6.805498742323834e-08,-1.960249207400011e-08,-7.059929885144811e-08) mm + Endpoint of ComputeStep() was (-598.2143725808694,-17.89770206259085,-1724.478489271419) + and current position to locate is (-598.2143725128144,-17.89770208219334,-1724.478489342018) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999989822276e-08 mm long + and its vector is (7.037658633635147e-08,-6.415663023062734e-08,3.05133198708063e-08) mm + Endpoint of ComputeStep() was (-799.147515591205,-36.92219430301554,-1538.62445283153) + and current position to locate is (-799.1475155208284,-36.92219436717217,-1538.624452801017) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000217547983e-07 mm long + and its vector is (-9.804114142752951e-08,-1.955273631892851e-08,-2.372644303250127e-09) mm + Endpoint of ComputeStep() was (-585.3992215228488,-22.19683444187548,-1888.960595041946) + and current position to locate is (-585.39922162089,-22.19683446142821,-1888.960595044319) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000141559601e-07 mm long + and its vector is (-8.979469612313551e-08,4.397452357807197e-08,1.776697899913415e-09) mm + Endpoint of ComputeStep() was (-511.3925942334054,139.2035001684373,-1927.426328473076) + and current position to locate is (-511.3925943232001,139.2035002124118,-1927.426328471299) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000208785947e-07 mm long + and its vector is (-4.055516455991892e-08,7.931146228656871e-08,4.544199327938259e-08) mm + Endpoint of ComputeStep() was (647.1698436419319,-508.8249653462358,-1612.028312331298) + and current position to locate is (647.1698436013768,-508.8249652669243,-1612.028312285856) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000723442015e-07 mm long + and its vector is (2.155775291612372e-08,-5.901668487240386e-08,7.779658517392818e-08) mm + Endpoint of ComputeStep() was (-564.4838007578409,133.2592913160253,-1891.938179956903) + and current position to locate is (-564.4838007362831,133.2592912570086,-1891.938179879106) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997772257348e-08 mm long + and its vector is (-6.309630862233462e-08,-7.118640255043829e-08,3.084392119490076e-08) mm + Endpoint of ComputeStep() was (-614.9822212484227,-8.267678474371799,-1766.964295884011) + and current position to locate is (-614.982221311519,-8.267678545558201,-1766.964295853167) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000106733241e-07 mm long + and its vector is (3.819093308266019e-08,7.545756375293422e-08,-5.336301001079846e-08) mm + Endpoint of ComputeStep() was (-550.9679534693194,-198.2937107827836,-1824.837888634883) + and current position to locate is (-550.9679534311284,-198.2937107073261,-1824.837888688246) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994897028102e-08 mm long + and its vector is (-6.329480584099656e-08,-6.526384055405288e-08,4.164598976785783e-08) mm + Endpoint of ComputeStep() was (-577.2519469271999,-56.39317058228074,-1685.724084141681) + and current position to locate is (-577.2519469904947,-56.39317064754458,-1685.724084100035) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997273592214e-08 mm long + and its vector is (-6.050117917766329e-08,-7.506906740673003e-08,-2.653746378200594e-08) mm + Endpoint of ComputeStep() was (-627.3971559692121,75.66066580987751,-1678.30770924282) + and current position to locate is (-627.3971560297133,75.66066573480845,-1678.307709269357) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999375132382e-08 mm long + and its vector is (9.642110398999648e-08,1.323289922083859e-08,2.297520040883683e-08) mm + Endpoint of ComputeStep() was (-578.5743827439404,40.6409121817691,-1829.081417385627) + and current position to locate is (-578.5743826475193,40.640912195002,-1829.081417362651) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998404510824e-08 mm long + and its vector is (7.357789399975445e-08,5.697840776974772e-08,3.66026142728515e-08) mm + Endpoint of ComputeStep() was (-773.7668871643727,-98.41140408019666,-1884.352855584418) + and current position to locate is (-773.7668870907949,-98.41140402321825,-1884.352855547815) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999900450192e-08 mm long + and its vector is (-5.99011400481686e-08,-8.00168962200587e-08,-3.024524630745873e-09) mm + Endpoint of ComputeStep() was (-763.3167673780766,-53.47008988967565,-1418.855267446373) + and current position to locate is (-763.3167674379778,-53.47008996969254,-1418.855267449398) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000222392782e-07 mm long + and its vector is (1.474654709454626e-08,8.489664082844683e-08,-5.074548425909597e-08) mm + Endpoint of ComputeStep() was (-609.3141668981449,45.26141467165726,-1877.650006287478) + and current position to locate is (-609.3141668833983,45.2614147565539,-1877.650006338224) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000051026186e-07 mm long + and its vector is (-9.614859663997777e-08,-2.679198018995521e-08,6.134996510809287e-09) mm + Endpoint of ComputeStep() was (445.8229197599542,226.3667915454249,-1895.073062474521) + and current position to locate is (445.8229196638056,226.366791518633,-1895.073062468386) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999869820107e-08 mm long + and its vector is (-2.657793629623484e-08,-3.596244368964108e-08,-8.944448381953407e-08) mm + Endpoint of ComputeStep() was (-264.3489394491411,-554.0064345799422,-1130.016980278699) + and current position to locate is (-264.3489394757191,-554.0064346159046,-1130.016980368143) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999993757782228e-08 mm long + and its vector is (3.118555014225421e-08,-7.636384680154151e-08,5.653328116750345e-08) mm + Endpoint of ComputeStep() was (-665.6525190372352,-87.63481657612382,-1719.495092876268) + and current position to locate is (-665.6525190060496,-87.63481665248767,-1719.495092819735) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999994677804804e-08 mm long + and its vector is (7.363144050032133e-08,4.94429599484647e-08,-4.619300852937158e-08) mm + Endpoint of ComputeStep() was (-544.585260591217,119.0599996510049,-1919.775695686681) + and current position to locate is (-544.5852605175855,119.0599997004479,-1919.775695732874) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000139890376e-07 mm long + and its vector is (3.791490144067211e-08,-6.44639044367068e-08,-6.638424565608148e-08) mm + Endpoint of ComputeStep() was (-518.8505432000501,299.5585008283065,-1946.897953067175) + and current position to locate is (-518.8505431621352,299.5585007638426,-1946.897953133559) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 5057 (pi+,1.1804725185084[GeV]) at (-499.11669704075,29.707284209939,-1754.8289702237) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[4,45] 3.7412716812923e-07 [GeV] +Cell[0,31] 1.3397468166659e-05 [GeV] +Cell[16,10] 0.00037745736314998 [GeV] +Cell[5,5] 0.0037946466214924 [GeV] +Cell[4,18] 4.2626919321265e-07 [GeV] +Cell[2,19] 1.4439344666926e-06 [GeV] +Cell[2,18] 4.6423620108612e-05 [GeV] +Cell[2,17] 8.7731062887997e-06 [GeV] +Cell[6,5] 6.7629286786541e-06 [GeV] +Cell[14,12] 0.00024938943529111 [GeV] +Cell[1,24] 0.03186845925756 [GeV] +Cell[0,24] 0.013522277974101 [GeV] +Cell[0,21] 0.0065349173913997 [GeV] +Cell[1,23] 0.48921807469829 [GeV] +Cell[1,22] 0.0045976371827999 [GeV] +Cell[0,22] 0.0047522564446601 [GeV] +Cell[0,23] 0.21207970185083 [GeV] +Cell[0,20] 8.0107775612532e-06 [GeV] +Cell[0,2] 1.2821147684008e-05 [GeV] +Cell[0,19] 7.8650710406691e-08 [GeV] +Cell[0,18] 7.2369269910268e-06 [GeV] +Cell[4,19] 0.00014606146068593 [GeV] +Cell[4,42] 0.0018105868383792 [GeV] +Cell[1,42] 9.9500260034802e-08 [GeV] +Cell[0,25] 0.0020862894962343 [GeV] +Cell[4,44] 0.00038320107763525 [GeV] +Cell[1,20] 0.00027388460209659 [GeV] +Cell[4,43] 4.1141812104115e-06 [GeV] +Cell[4,41] 0.00010147527298795 [GeV] +Cell[0,29] 0.001850645566121 [GeV] +Cell[4,32] 1.3576426795225e-06 [GeV] +Cell[1,21] 0.005281170704258 [GeV] +Cell[2,0] 1.2744861736451e-05 [GeV] +Cell[2,1] 0.00012458356589639 [GeV] +Cell[1,25] 0.0026306012654954 [GeV] +Cell[2,23] 2.7239671950156e-05 [GeV] +Cell[0,12] 0.0014354089452767 [GeV] +Cell[2,20] 0.0018163737912738 [GeV] +Cell[1,26] 0.00038299849506916 [GeV] +Cell[0,26] 1.0171550293535e-05 [GeV] +Cell[1,44] 0.00042264488494072 [GeV] +Cell[2,44] 0.0012734970034427 [GeV] +Cell[3,2] 0.00068351721915044 [GeV] +Cell[1,43] 1.9824596407716e-06 [GeV] +Cell[2,25] 0.0018576902119413 [GeV] +Cell[2,42] 2.2407746279214e-06 [GeV] +Cell[2,43] 1.2176578715071e-06 [GeV] +Cell[0,30] 0.00077681891457552 [GeV] +Cell[3,40] 5.8196510167363e-08 [GeV] +Cell[4,31] 0.00078141732065569 [GeV] +Cell[0,14] 0.002539296698009 [GeV] +Cell[3,42] 3.9818404687821e-06 [GeV] +Cell[2,24] 0.0042003419409183 [GeV] +Cell[4,20] 1.7144316188933e-11 [GeV] +Cell[5,7] 0.00184828680767 [GeV] +Cell[5,39] 2.3872776946519e-06 [GeV] +Cell[1,47] 0.0001908986386801 [GeV] +Cell[2,47] 0.0010166252012726 [GeV] +Cell[3,12] 6.4748554723337e-06 [GeV] +Cell[5,31] 3.8643484003842e-09 [GeV] +Cell[3,35] 1.1208895011805e-07 [GeV] +### Total energy deposition in calorimeter by a source track in 61 cells : 0.80108906954012 (GeV) + +Source track ID 5037 (gamma,1.5279055119092[GeV]) at (-73.254816883746,-494.60462169629,-436.11294453139) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[7,32] 0.00097077764116335 [GeV] +Cell[8,35] 0.0021044820677211 [GeV] +Cell[7,33] 0.0036300816442397 [GeV] +Cell[7,34] 1.4056418951108 [GeV] +Cell[8,34] 0.00069150021104767 [GeV] +Cell[5,3] 0.0010237258676904 [GeV] +Cell[3,9] 0.0010463601522202 [GeV] +Cell[7,36] 0.0018136957469991 [GeV] +Cell[7,37] 0.00075270314527618 [GeV] +Cell[6,34] 0.0019330557212858 [GeV] +Cell[1,5] 0.00038653758302129 [GeV] +Cell[5,45] 0.00080629900663856 [GeV] +Cell[2,20] 0.0013213764210918 [GeV] +Cell[3,19] 0.0040270426890818 [GeV] +Cell[9,15] 0.00054760712762486 [GeV] +Cell[6,35] 0.010115434158616 [GeV] +Cell[7,35] 0.08531990598257 [GeV] +Cell[6,36] 0.0023580874583869 [GeV] +### Total energy deposition in calorimeter by a source track in 18 cells : 1.5244905677355 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000369986114e-07 mm long + and its vector is (5.623576271318598e-09,9.412326562596718e-08,-3.330455911054742e-08) mm + Endpoint of ComputeStep() was (-177.4046890983534,668.8252076614393,1415.179553383573) + and current position to locate is (-177.4046890927299,668.8252077555626,1415.179553350268) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 5039 (e-,2.1336162094656[GeV]) at (-102.40416405283,-489.40104943149,-488.5658031052) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[7,32] 0.0021073631319841 [GeV] +Cell[8,5] 2.6502716646064e-06 [GeV] +Cell[10,18] 2.4629480321892e-07 [GeV] +Cell[8,35] 0.00051099891 [GeV] +Cell[7,33] 0.042336202980552 [GeV] +Cell[7,34] 2.0135922247187 [GeV] +Cell[6,34] 0.036937202159869 [GeV] +Cell[4,16] 0.00088855833051649 [GeV] +Cell[8,4] 4.4053426245227e-07 [GeV] +Cell[3,4] 0.00051099891 [GeV] +Cell[4,21] 0.00070033101258336 [GeV] +Cell[3,5] 0.0014990542540874 [GeV] +Cell[2,6] 0.0015139707363352 [GeV] +Cell[10,3] 4.0969395195134e-07 [GeV] +Cell[18,34] 1.1046987492591e-07 [GeV] +Cell[18,33] 1.2232913286425e-07 [GeV] +Cell[17,14] 4.6039865554803e-06 [GeV] +Cell[17,13] 6.3934248487385e-08 [GeV] +Cell[6,33] 0.0037141948606072 [GeV] +Cell[3,7] 0.00075042020879781 [GeV] +Cell[16,13] 2.6487396098673e-10 [GeV] +Cell[16,14] 1.3533103047962e-05 [GeV] +Cell[10,6] 0.00071532340761698 [GeV] +Cell[9,5] 0.0008506240662 [GeV] +Cell[9,4] 0.00012976655891885 [GeV] +Cell[6,35] 0.0029175285840975 [GeV] +Cell[7,35] 0.012411249800825 [GeV] +Cell[8,47] 0.0006438409816612 [GeV] +Cell[5,13] 0.00088698289972555 [GeV] +Cell[6,13] 0.00065222349787601 [GeV] +Cell[9,35] 2.5067312526517e-07 [GeV] +### Total energy deposition in calorimeter by a source track in 31 cells : 2.1242914915665 (GeV) + +Source track ID 5040 (e+,0.054611546576195[GeV]) at (-394.29122773807,-307.46451458469,-1253.4992199206) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[3,28] 0.013624730975436 [GeV] +Cell[2,15] 0.00051099891 [GeV] +Cell[3,29] 0.027038078834243 [GeV] +Cell[2,6] 0.00019658759758439 [GeV] +Cell[3,3] 0.00051099891 [GeV] +Cell[3,19] 0.012035955478569 [GeV] +Cell[3,24] 0.00098984503824392 [GeV] +Cell[3,23] 1.6007911252612e-05 [GeV] +### Total energy deposition in calorimeter by a source track in 8 cells : 0.054923203655329 (GeV) + +Source track ID 5035 (gamma,0.076632669216442[GeV]) at (-300.43599727731,399.67263046147,200.63475379912) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[11,16] 0.067024407079526 [GeV] +Cell[11,17] 0.0096082621369163 [GeV] +### Total energy deposition in calorimeter by a source track in 2 cells : 0.076632669216442 (GeV) + +Source track ID 5036 (gamma,0.17932025858732[GeV]) at (-255.57095674764,429.74816586822,-559.8003033524) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[7,17] 6.81929536026e-05 [GeV] +Cell[7,18] 0.00087317026765143 [GeV] +Cell[7,16] 0.11378032638151 [GeV] +Cell[8,15] 0.0018825440653621 [GeV] +Cell[7,15] 0.027258008705705 [GeV] +Cell[3,44] 0.0015613149760986 [GeV] +Cell[6,16] 0.027934476098759 [GeV] +Cell[3,40] 0.00051099891 [GeV] +Cell[6,15] 0.0039409865458461 [GeV] +### Total energy deposition in calorimeter by a source track in 9 cells : 0.17781001890453 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999935490493e-08 mm long + and its vector is (5.336335107131163e-08,-3.274806203990011e-08,7.797382295393618e-08) mm + Endpoint of ComputeStep() was (485.7792050606827,-283.9564095973194,-1000.000000077974) + and current position to locate is (485.7792051140461,-283.9564096300675,-1000) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000196046721e-07 mm long + and its vector is (-4.516891749517526e-09,-7.465155249519739e-08,6.63833361613797e-08) mm + Endpoint of ComputeStep() was (-104.5233274404801,-771.421068967465,-1342.985631036673) + and current position to locate is (-104.523327444997,-771.4210690421165,-1342.985630970289) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 3941 (pi-,0.22747927225442[GeV]) at (37.748319090608,498.57302815719,-1281.9962184249) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[7,39] 0.00022745059091994 [GeV] +Cell[2,34] 1.836660695858e-06 [GeV] +Cell[7,27] 2.7717271324946e-05 [GeV] +Cell[8,39] 4.8971679643728e-06 [GeV] +Cell[8,38] 0.00058302397062084 [GeV] +Cell[2,19] 0.0013442609690454 [GeV] +Cell[2,18] 0.00051150511561028 [GeV] +Cell[9,30] 5.7091672715615e-08 [GeV] +Cell[4,16] 0.0014817466830365 [GeV] +Cell[2,33] 0.00041914657700511 [GeV] +Cell[3,10] 1.574664490181e-05 [GeV] +Cell[4,43] 1.3938127892743e-07 [GeV] +Cell[5,44] 7.4796844273806e-12 [GeV] +Cell[7,45] 1.4169613598369e-07 [GeV] +Cell[3,24] 5.0702283195051e-05 [GeV] +Cell[3,25] 0.0039373808474241 [GeV] +Cell[7,38] 7.137075420701e-06 [GeV] +Cell[2,45] 0.00032110649666697 [GeV] +Cell[5,43] 0.00018860047339058 [GeV] +Cell[6,33] 9.1512565268204e-07 [GeV] +Cell[3,12] 0.0013634076446926 [GeV] +Cell[3,11] 0.16761259696898 [GeV] +Cell[3,34] 1.2280788058661e-06 [GeV] +### Total energy deposition in calorimeter by a source track in 23 cells : 0.17810074482192 (GeV) + +Source track ID 4912 (gamma,0.31054837923301[GeV]) at (447.33311815136,223.3675925576,253.26070255333) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[9,7] 0.00018366979440079 [GeV] +Cell[11,3] 0.3057197139659 [GeV] +Cell[11,4] 0.0019410374504013 [GeV] +Cell[10,4] 0.0011554573980102 [GeV] +Cell[10,5] 0.0015485006242949 [GeV] +### Total energy deposition in calorimeter by a source track in 5 cells : 0.31054837923301 (GeV) + +Source track ID 4913 (gamma,0.15995014937721[GeV]) at (486.22067261147,-116.57382864627,276.45970209047) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[11,45] 0.004202865294167 [GeV] +Cell[11,46] 0.15574728408304 [GeV] +### Total energy deposition in calorimeter by a source track in 2 cells : 0.15995014937721 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000240573434e-07 mm long + and its vector is (5.924675861024298e-09,-9.125405142640375e-08,-4.046728463436011e-08) mm + Endpoint of ComputeStep() was (-690.3092212242875,83.02109504742307,1058.238169441917) + and current position to locate is (-690.3092212183628,83.02109495616902,1058.238169401449) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 4894 (pi+,0.5832977751083[GeV]) at (-499.04554707499,30.879474487567,861.61280052245) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[15,21] 0.15637196353845 [GeV] +Cell[15,22] 0.22157946142345 [GeV] +Cell[14,22] 0.094266146664282 [GeV] +Cell[14,23] 0.090412513971917 [GeV] +Cell[15,23] 0.00042651685796727 [GeV] +### Total energy deposition in calorimeter by a source track in 5 cells : 0.56305660245606 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000345070479e-07 mm long + and its vector is (-4.498579997402885e-08,-8.447261734545464e-08,-2.899416529089649e-08) mm + Endpoint of ComputeStep() was (-24.36415735273547,-733.7795838209606,-101.4650401942793) + and current position to locate is (-24.36415739772127,-733.7795839054332,-101.4650402232734) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999936403299e-08 mm long + and its vector is (-9.094708275370067e-08,-2.940458898592624e-08,-2.939384557976155e-08) mm + Endpoint of ComputeStep() was (330.2006576551561,476.8307097620769,992.1120357348012) + and current position to locate is (330.200657564209,476.8307097326723,992.1120357054074) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 4891 (gamma,1.004682788758[GeV]) at (-131.64956924136,-482.35711969304,294.93685938585) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[11,34] 0.32104638312583 [GeV] +Cell[11,33] 0.65917055997133 [GeV] +Cell[9,0] 0.0006474870673045 [GeV] +Cell[15,6] 0.00085923095531609 [GeV] +Cell[8,30] 5.8892936542429e-05 [GeV] +Cell[12,34] 0.0035319519770903 [GeV] +Cell[9,34] 2.8678575908998e-05 [GeV] +Cell[9,36] 4.1560057411516e-08 [GeV] +Cell[14,17] 0.00039304691486464 [GeV] +Cell[15,7] 7.8846037213225e-06 [GeV] +Cell[17,5] 0.00055567417054267 [GeV] +Cell[14,7] 6.0924094052552e-06 [GeV] +Cell[9,35] 0.0003559098420227 [GeV] +Cell[18,18] 0.0010252451973606 [GeV] +Cell[14,6] 6.4570395807095e-07 [GeV] +Cell[11,35] 0.00012296308126484 [GeV] +### Total energy deposition in calorimeter by a source track in 16 cells : 0.98781068809252 (GeV) + +Source track ID 4892 (gamma,1.1635719616336[GeV]) at (-189.4230907551,-462.72982688474,253.067359769) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[11,34] 0.0058371827182994 [GeV] +Cell[11,33] 0.97788181609614 [GeV] +Cell[11,31] 0.0044795066227277 [GeV] +Cell[11,32] 0.16078899647593 [GeV] +Cell[12,32] 0.0029762033233417 [GeV] +Cell[12,33] 0.00050993665490935 [GeV] +Cell[10,32] 0.0026797551678547 [GeV] +Cell[10,33] 0.0015794340077532 [GeV] +Cell[10,34] 0.0063879863330462 [GeV] +Cell[12,34] 0.00045114423364011 [GeV] +### Total energy deposition in calorimeter by a source track in 10 cells : 1.1635719616336 (GeV) + +Source track ID 4877 (gamma,4.6165874202233e-05[GeV]) at (-147.10172831587,-477.87140689362,794.93811353277) +Original primary track ID 31 (unknown,691.32334101424[GeV]) +Cell[13,33] 4.6165874202233e-05 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 4.6165874202233e-05 (GeV) + +Source track ID 3927 (gamma,0.17435926984906[GeV]) at (-435.61886297626,245.43065460384,445.72698583496) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[14,2] 0.00070401362136795 [GeV] +Cell[12,19] 0.017267346133129 [GeV] +Cell[13,19] 0.0029893229889542 [GeV] +Cell[12,20] 0.1533985871056 [GeV] +### Total energy deposition in calorimeter by a source track in 4 cells : 0.17435926984906 (GeV) + +Source track ID 3901 (gamma,0.10305715080057[GeV]) at (11.538102514207,499.86685446264,4.6715042887837) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[9,11] 0.026009174146662 [GeV] +Cell[9,12] 0.00052643647326 [GeV] +Cell[10,11] 0.076521540180645 [GeV] +### Total energy deposition in calorimeter by a source track in 3 cells : 0.10305715080057 (GeV) + +Source track ID 3902 (gamma,0.062482768189188[GeV]) at (-488.97409074846,104.42384103601,-57.614767483417) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[8,43] 0.0021600032086798 [GeV] +Cell[9,21] 0.00038780122178187 [GeV] +Cell[9,22] 0.055529519404007 [GeV] +Cell[9,23] 0.0044054443547196 [GeV] +### Total energy deposition in calorimeter by a source track in 4 cells : 0.062482768189188 (GeV) + +Source track ID 3893 (gamma,0.004498974090393[GeV]) at (499.76542298991,15.314110607936,557.92675468873) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[12,0] 0.0037637575408448 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0037637575408448 (GeV) + +Source track ID 3894 (gamma,0.0031349481815828[GeV]) at (-446.50265061969,225.02307212726,-1525.3715746316) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[2,20] 0.0031349481815828 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0031349481815828 (GeV) + +Source track ID 3895 (gamma,0.0003444150597855[GeV]) at (-42.451380288589,498.19462091796,-111.59169723052) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[9,12] 0.0003444150597855 [GeV] +### Total energy deposition in calorimeter by a source track in 1 cells : 0.0003444150597855 (GeV) + +Source track ID 3883 (gamma,0.67224858404432[GeV]) at (444.0523215799,-229.8206598622,-518.95900484301) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[8,12] 0.00095357497260118 [GeV] +Cell[7,11] 0.0010799079375262 [GeV] +Cell[8,20] 0.0025160350526136 [GeV] +Cell[7,43] 0.006239667047852 [GeV] +Cell[7,44] 0.62651480067825 [GeV] +Cell[6,44] 0.013110053414646 [GeV] +Cell[6,43] 0.012332880885963 [GeV] +Cell[7,45] 0.0064328369316419 [GeV] +Cell[6,42] 0.0015280815869312 [GeV] +Cell[6,10] 0.00081289291885561 [GeV] +Cell[4,10] 0.00072785261743815 [GeV] +### Total energy deposition in calorimeter by a source track in 11 cells : 0.67224858404432 (GeV) + +Source track ID 3884 (gamma,0.13757172036947[GeV]) at (417.90942396443,-274.5026654911,-190.74603489643) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[8,17] 0.00049717803587214 [GeV] +Cell[9,42] 0.0029059857991583 [GeV] +Cell[8,43] 0.01913691344836 [GeV] +Cell[8,44] 0.0092847506045195 [GeV] +Cell[4,37] 0.00017339108949351 [GeV] +Cell[9,43] 0.097178987027745 [GeV] +Cell[9,44] 0.0081612496799699 [GeV] +### Total energy deposition in calorimeter by a source track in 7 cells : 0.13733845568512 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999696524552e-08 mm long + and its vector is (-4.760499905387405e-08,8.348760616172513e-08,2.76330069937103e-08) mm + Endpoint of ComputeStep() was (796.9149564771001,-160.1242437415228,-242.5564175039216) + and current position to locate is (796.9149564294951,-160.1242436580352,-242.5564174762886) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000340747471e-07 mm long + and its vector is (3.565787665138487e-08,6.883814762659313e-08,-6.316511758086563e-08) mm + Endpoint of ComputeStep() was (1074.23037056303,-141.4251113423899,-134.0256443401369) + and current position to locate is (1074.230370598688,-141.4251112735517,-134.025644403302) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997195226346e-08 mm long + and its vector is (6.422965270758141e-08,-1.172620045508665e-08,-7.5743265881556e-08) mm + Endpoint of ComputeStep() was (796.8487804769574,-70.93673905924614,-42.46649129129885) + and current position to locate is (796.848780541187,-70.93673907097234,-42.46649136704212) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000032669383e-07 mm long + and its vector is (2.394290277152322e-08,9.167191450387691e-08,-3.198434228579572e-08) mm + Endpoint of ComputeStep() was (916.8304531024469,-19.9701088920294,-74.56587839266533) + and current position to locate is (916.8304531263898,-19.97010880035749,-74.56587842464967) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997416875443e-08 mm long + and its vector is (-8.372580850846134e-08,2.87830062006833e-08,4.649217544283601e-08) mm + Endpoint of ComputeStep() was (664.7987840021555,-354.2009167805086,-159.907066233792) + and current position to locate is (664.7987839184296,-354.2009167517256,-159.9070661872998) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000038551915e-07 mm long + and its vector is (4.327102942625061e-08,-8.069082468864508e-08,4.020708388452476e-08) mm + Endpoint of ComputeStep() was (1372.464494832383,-207.7012443907566,-142.5194884009732) + and current position to locate is (1372.464494875654,-207.7012444714474,-142.5194883607662) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995842902477e-08 mm long + and its vector is (9.657253485784167e-08,1.730035137370578e-08,1.935032400979253e-08) mm + Endpoint of ComputeStep() was (660.0714716334647,-411.8191444271057,-104.7074170937847) + and current position to locate is (660.0714717300373,-411.8191444098053,-104.7074170744344) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999748498901e-08 mm long + and its vector is (-3.578634277801029e-09,4.78849244700541e-08,-8.771674231411453e-08) mm + Endpoint of ComputeStep() was (683.2038286964965,-59.12641809906751,-66.168938757662) + and current position to locate is (683.2038286929179,-59.12641805118258,-66.16893884537875) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000015214113e-07 mm long + and its vector is (4.756952876050491e-08,-5.08717050706764e-08,7.175799510150682e-08) mm + Endpoint of ComputeStep() was (667.3272468827785,-211.3630655598501,83.73594920482867) + and current position to locate is (667.327246930348,-211.3630656107218,83.73594927658667) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998842410122e-08 mm long + and its vector is (5.425511062639998e-08,7.698378112763749e-08,3.361365941145777e-08) mm + Endpoint of ComputeStep() was (781.6308872649208,-327.4455401159979,-36.5745776914498) + and current position to locate is (781.6308873191759,-327.4455400390141,-36.57457765783614) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000065488567e-07 mm long + and its vector is (-4.621210791810881e-08,7.645445521120564e-08,-4.493504945912719e-08) mm + Endpoint of ComputeStep() was (707.6343251007524,-263.9473161665265,-68.70872879961948) + and current position to locate is (707.6343250545403,-263.947316090072,-68.70872884455453) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000315528609e-07 mm long + and its vector is (-9.964367109205341e-08,3.056527475564508e-09,-7.861473250159179e-09) mm + Endpoint of ComputeStep() was (754.8325686902388,-358.5336798475022,43.50361761846781) + and current position to locate is (754.8325685905951,-358.5336798444457,43.50361761060633) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996968511625e-08 mm long + and its vector is (9.291750302509172e-08,2.926700304328733e-08,2.257817754980351e-08) mm + Endpoint of ComputeStep() was (849.506718461124,-28.95401756646607,-188.5892706264267) + and current position to locate is (849.5067185540415,-28.95401753719907,-188.5892706038485) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000004829984e-07 mm long + and its vector is (-9.331392902822699e-08,1.822584749788803e-08,3.098917922272904e-08) mm + Endpoint of ComputeStep() was (817.0539640468144,-210.2462312858199,-12.46461318590273) + and current position to locate is (817.0539639535004,-210.2462312675941,-12.46461315491355) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999227091553e-08 mm long + and its vector is (6.1566765907628e-08,7.583641092878679e-08,-2.140959054486302e-08) mm + Endpoint of ComputeStep() was (919.8151874056477,-121.0959668247145,-246.557079238374) + and current position to locate is (919.8151874672145,-121.0959667488781,-246.5570792597836) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000417075937e-07 mm long + and its vector is (8.590700417698827e-08,3.766155032280949e-08,3.466414000286022e-08) mm + Endpoint of ComputeStep() was (862.0564390354238,-164.9224075274639,-286.339986592025) + and current position to locate is (862.0564391213308,-164.9224074898024,-286.3399865573608) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000610783667e-07 mm long + and its vector is (-9.848940862866584e-08,-4.637797701434465e-09,-1.668350790851036e-08) mm + Endpoint of ComputeStep() was (1064.990281079472,-275.3101912634083,-26.57330071933711) + and current position to locate is (1064.990280980982,-275.3101912680461,-26.57330073602062) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000254494764e-07 mm long + and its vector is (5.18011802341789e-08,-8.078291102719959e-08,-2.812052812828369e-08) mm + Endpoint of ComputeStep() was (750.3028210534892,-217.9934825619257,-15.97760365985066) + and current position to locate is (750.3028211052904,-217.9934826427086,-15.97760368797118) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999274761375e-08 mm long + and its vector is (4.149103460804326e-08,1.757378065292414e-08,-8.927292327598479e-08) mm + Endpoint of ComputeStep() was (832.852636035472,-10.44594447960635,22.28383879923979) + and current position to locate is (832.852636076963,-10.44594446203257,22.28383870996687) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997083539665e-08 mm long + and its vector is (8.146525942720473e-08,-5.744995235090755e-08,-7.931497236768337e-09) mm + Endpoint of ComputeStep() was (796.1264730681903,-78.62975735213875,38.94991215026041) + and current position to locate is (796.1264731496556,-78.62975740958871,38.94991214232891) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998251480825e-08 mm long + and its vector is (1.154376150225289e-08,-7.300951665456523e-08,-6.735242052968715e-08) mm + Endpoint of ComputeStep() was (930.5221096124113,-357.3679167502119,-25.81883241314597) + and current position to locate is (930.5221096239551,-357.3679168232214,-25.81883248049839) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999063159149e-08 mm long + and its vector is (3.182617547281552e-08,-7.735270912689884e-08,5.480557518922069e-08) mm + Endpoint of ComputeStep() was (739.9493911720029,-67.55790294426232,51.42302833387359) + and current position to locate is (739.9493912038291,-67.55790302161503,51.42302838867916) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997521531589e-08 mm long + and its vector is (3.584852947824402e-08,9.025029612530489e-08,-2.38696884480305e-08) mm + Endpoint of ComputeStep() was (629.1828821817599,-306.8417776269058,67.88635014449267) + and current position to locate is (629.1828822176084,-306.8417775366555,67.88635012062298) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000406931185e-07 mm long + and its vector is (8.966912901087198e-08,-3.626871603046311e-08,2.537785803724546e-08) mm + Endpoint of ComputeStep() was (823.4631471223216,-310.3360197611814,-239.9543161452181) + and current position to locate is (823.4631472119908,-310.3360197974501,-239.9543161198402) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000022630143e-07 mm long + and its vector is (-2.020556166826282e-08,3.075746235481347e-08,-9.298233294430247e-08) mm + Endpoint of ComputeStep() was (819.6991538449203,-161.3700639839204,110.1333527154478) + and current position to locate is (819.6991538247147,-161.3700639531629,110.1333526224654) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000411158246e-07 mm long + and its vector is (-7.043490768410265e-08,3.705596895997587e-08,6.054574441805016e-08) mm + Endpoint of ComputeStep() was (980.4320570570833,-137.9269692589396,-152.6904015082085) + and current position to locate is (980.4320569866484,-137.9269692218837,-152.6904014476628) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998731239539e-08 mm long + and its vector is (9.432335446035722e-08,-2.22325695631298e-08,2.46741791443128e-08) mm + Endpoint of ComputeStep() was (769.6970644665373,-228.3980427494214,-62.34091019894093) + and current position to locate is (769.6970645608607,-228.398042771654,-62.34091017426675) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998732326021e-08 mm long + and its vector is (-2.674732968444005e-08,-6.955704634492577e-08,6.668129515219334e-08) mm + Endpoint of ComputeStep() was (694.5597188892068,-151.2547143598635,40.12782422563686) + and current position to locate is (694.5597188624595,-151.2547144294205,40.12782429231815) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999584069991e-08 mm long + and its vector is (3.492482392175589e-08,6.284491860242269e-08,6.950375563974376e-08) mm + Endpoint of ComputeStep() was (879.7930619452968,-234.1497640488965,158.7400465211234) + and current position to locate is (879.7930619802216,-234.1497639860516,158.7400465906272) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999339713636e-08 mm long + and its vector is (-7.872984042478492e-08,3.353250122017926e-08,5.174149464437505e-08) mm + Endpoint of ComputeStep() was (762.8572538072875,-205.3479575680587,-98.67662740756532) + and current position to locate is (762.8572537285577,-205.3479575345262,-98.67662735582383) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000056100219e-07 mm long + and its vector is (-7.491053111152723e-09,7.942304591779248e-08,6.029813448549248e-08) mm + Endpoint of ComputeStep() was (597.4608574593777,-419.4526479586043,-458.6631532294615) + and current position to locate is (597.4608574518867,-419.4526478791813,-458.6631531691634) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000496406238e-07 mm long + and its vector is (-6.555160325660836e-08,5.301785677147564e-09,7.533185453212354e-08) mm + Endpoint of ComputeStep() was (691.7170123403708,171.4689752993615,-751.4465422946203) + and current position to locate is (691.7170122748192,171.4689753046633,-751.4465422192884) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000193314847e-07 mm long + and its vector is (3.26685949403327e-08,6.100309946077687e-08,7.21899482414301e-08) mm + Endpoint of ComputeStep() was (739.8650383098549,-42.28661450949067,-455.9791058239082) + and current position to locate is (739.8650383425235,-42.28661444848757,-455.9791057517183) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.99999791685073e-08 mm long + and its vector is (5.147489900991786e-08,8.505221416044151e-08,1.079126832337352e-08) mm + Endpoint of ComputeStep() was (730.7594480424638,-52.37617681936597,-450.010004460979) + and current position to locate is (730.7594480939387,-52.37617673431376,-450.0100044501878) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000110038853e-07 mm long + and its vector is (8.137635632010642e-08,-9.436632808501599e-09,5.734841579396743e-08) mm + Endpoint of ComputeStep() was (779.7748530360194,-170.567241838259,-594.7727850060216) + and current position to locate is (779.7748531173958,-170.5672418476957,-594.7727849486732) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000413525515e-07 mm long + and its vector is (9.374502951686736e-08,-3.446435448140051e-08,4.907747097604442e-09) mm + Endpoint of ComputeStep() was (529.9929669572882,2.730361996252949,-539.2313689545389) + and current position to locate is (529.9929670510332,2.730361961788594,-539.2313689496311) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 3872 (kaon-,1.1694290189215[GeV]) at (474.28120762171,-158.29509182819,-20.413874902306) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[6,2] 0.00031210715761108 [GeV] +Cell[9,45] 0.3608883355334 [GeV] +Cell[6,0] 1.032225554809e-09 [GeV] +Cell[7,47] 0.014124317253055 [GeV] +Cell[9,0] 0.00091093620125957 [GeV] +Cell[7,46] 0.016190545179679 [GeV] +Cell[10,47] 0.00018897602685979 [GeV] +Cell[7,42] 3.6592097444554e-08 [GeV] +Cell[7,43] 1.4575117779714e-07 [GeV] +Cell[6,3] 1.0450316142396e-07 [GeV] +Cell[10,44] 0.00024624298174876 [GeV] +Cell[6,46] 0.00027087180403925 [GeV] +Cell[10,45] 0.010676165150033 [GeV] +Cell[7,1] 0.00071592834639648 [GeV] +Cell[8,43] 5.7621218729764e-09 [GeV] +Cell[8,44] 0.00085963232334416 [GeV] +Cell[6,1] 2.0577605231665e-05 [GeV] +Cell[6,47] 0.00026961381603974 [GeV] +Cell[8,45] 4.7333244457377e-06 [GeV] +Cell[10,46] 0.0085643988610767 [GeV] +Cell[8,46] 0.00065931244257081 [GeV] +Cell[9,46] 0.40886922838671 [GeV] +Cell[9,43] 9.088112220752e-07 [GeV] +Cell[9,44] 0.0050718768099658 [GeV] +Cell[10,0] 1.3904157583511e-07 [GeV] +Cell[7,0] 0.0001795050421274 [GeV] +Cell[8,47] 0.0012329625870843 [GeV] +Cell[9,47] 0.011107037393684 [GeV] +### Total energy deposition in calorimeter by a source track in 28 cells : 0.84136464571995 (GeV) + +Source track ID 3869 (gamma,0.015859560263227[GeV]) at (453.63011973259,-210.28484127819,-430.35178955559) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[7,44] 0.014802271831719 [GeV] +Cell[7,45] 0.0010572884315082 [GeV] +### Total energy deposition in calorimeter by a source track in 2 cells : 0.015859560263227 (GeV) + +Source track ID 3870 (gamma,0.75885122891297[GeV]) at (497.5107803188,-49.829945480357,326.48050997605) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[11,0] 0.0011005894988832 [GeV] +Cell[11,47] 0.68353948010528 [GeV] +Cell[12,46] 0.0022422131575695 [GeV] +Cell[11,43] 0.00032644275463346 [GeV] +Cell[11,46] 0.011888815127737 [GeV] +Cell[12,47] 0.058194657508109 [GeV] +Cell[12,0] 0.0015590307607605 [GeV] +### Total energy deposition in calorimeter by a source track in 7 cells : 0.75885122891297 (GeV) + +Source track ID 3592 (gamma,0.12620965025075[GeV]) at (-487.28250272973,-112.05249900582,703.88980968714) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[9,0] 0.00080645967287325 [GeV] +Cell[13,26] 0.0010027805452484 [GeV] +Cell[13,25] 0.11528897644966 [GeV] +Cell[12,30] 0.0035386609699175 [GeV] +Cell[13,24] 0.0023717052333197 [GeV] +Cell[12,8] 0.00051099891 [GeV] +Cell[14,36] 0.00030467854387285 [GeV] +Cell[17,13] 0.00029570827573317 [GeV] +Cell[15,18] 0.00017873885140087 [GeV] +Cell[19,9] 0.0010996924463818 [GeV] +Cell[14,10] 0.00030025144233682 [GeV] +Cell[13,1] 0.00051099891 [GeV] +### Total energy deposition in calorimeter by a source track in 12 cells : 0.12620965025075 (GeV) + +Source track ID 3593 (gamma,0.088297327870564[GeV]) at (61.272155599914,-496.23152151807,76.525340163626) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[10,37] 0.019137045743168 [GeV] +Cell[10,36] 0.069160282127396 [GeV] +### Total energy deposition in calorimeter by a source track in 2 cells : 0.088297327870564 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000307534184e-07 mm long + and its vector is (-2.111162444862202e-08,-7.382948297163239e-08,6.40586677036481e-08) mm + Endpoint of ComputeStep() was (-51.49943206089873,527.4919985868215,953.0044187959961) + and current position to locate is (-51.49943208201036,527.491998512992,953.0044188600548) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000452106444e-07 mm long + and its vector is (-2.248987973629824e-08,9.309030701842858e-08,2.878209670598153e-08) mm + Endpoint of ComputeStep() was (-3.974490219299378,579.9863820119708,816.733229350239) + and current position to locate is (-3.974490241789257,579.9863821050611,816.7332293790211) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998310099253e-08 mm long + and its vector is (-7.384583255998223e-08,2.565752765804064e-08,6.235768523765728e-08) mm + Endpoint of ComputeStep() was (53.13867253132459,741.5367546008857,840.0505626957637) + and current position to locate is (53.13867245747876,741.5367546265433,840.0505627581214) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999678651311e-08 mm long + and its vector is (9.784142207536206e-08,-2.066326487693004e-08,2.914930519182235e-10) mm + Endpoint of ComputeStep() was (120.5981635084134,574.4416352972215,937.0508518555667) + and current position to locate is (120.5981636062548,574.4416352765583,937.0508518558582) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000081904951e-07 mm long + and its vector is (-4.977687240170781e-08,7.410694990994671e-08,-4.50602328783134e-08) mm + Endpoint of ComputeStep() was (-523.1876828969081,41.01657833976508,780.0168697359644) + and current position to locate is (-523.187682946685,41.01657841387203,780.0168696909042) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998473506805e-08 mm long + and its vector is (-8.617234925623052e-08,3.249624569434673e-09,5.06336164107779e-08) mm + Endpoint of ComputeStep() was (193.29158768244,549.3719057772754,845.5872890674259) + and current position to locate is (193.2915875962677,549.371905780525,845.5872891180595) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997806430753e-08 mm long + and its vector is (-2.168792434531497e-08,8.733684353501303e-08,4.361083938420052e-08) mm + Endpoint of ComputeStep() was (-358.2106965962477,412.4161059623893,901.1633183063545) + and current position to locate is (-358.2106966179356,412.4161060497262,901.1633183499654) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000086270499e-07 mm long + and its vector is (9.095373343370738e-08,-2.249004182885983e-08,-3.495165401545819e-08) mm + Endpoint of ComputeStep() was (-460.7964210821995,194.0790004363903,1268.296340422157) + and current position to locate is (-460.7964209912457,194.0790004139003,1268.296340387205) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999997674040225e-08 mm long + and its vector is (-6.605819180549588e-08,5.955271831226128e-08,-4.571415956888814e-08) mm + Endpoint of ComputeStep() was (-568.7797023408918,-74.88126845844333,1086.608259776059) + and current position to locate is (-568.77970240695,-74.88126839889061,1086.608259730344) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000114682696e-07 mm long + and its vector is (-7.32775902179128e-08,3.325544639665168e-08,5.936726665822789e-08) mm + Endpoint of ComputeStep() was (153.5237018169712,516.0043276184566,1029.261884064443) + and current position to locate is (153.5237017436936,516.0043276517121,1029.261884123811) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998938953581e-08 mm long + and its vector is (5.694703020253655e-08,-2.772344487311784e-08,-7.738503882137593e-08) mm + Endpoint of ComputeStep() was (122.1653865350505,688.377631788518,951.0710546344719) + and current position to locate is (122.1653865919975,688.3776317607945,951.0710545570869) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000235732409e-07 mm long + and its vector is (-1.689095086021553e-08,-9.144923751591705e-08,-3.676598225865746e-08) mm + Endpoint of ComputeStep() was (57.3286954607143,677.5790882270774,952.7221424742426) + and current position to locate is (57.32869544382335,677.5790881356281,952.7221424374766) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000538301339e-07 mm long + and its vector is (2.424181388960278e-08,2.178262548113707e-08,9.454026894673007e-08) mm + Endpoint of ComputeStep() was (222.5498886410601,633.8596625595138,882.0360595051282) + and current position to locate is (222.5498886653019,633.8596625812964,882.0360595996684) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + +Source track ID 3439 (pi+,0.8867143299996[GeV]) at (4.798474366454,499.97697411356,750.88695288448) +Original primary track ID 41 (unknown,2.6699951779791[GeV]) +Cell[14,25] 1.5795696526766e-07 [GeV] +Cell[16,31] 6.4031661022454e-06 [GeV] +Cell[16,30] 6.183384131873e-06 [GeV] +Cell[14,11] 0.3077445230645 [GeV] +Cell[14,8] 4.5333858096228e-06 [GeV] +Cell[16,36] 0.00052920723997079 [GeV] +Cell[13,23] 1.862645149231e-12 [GeV] +Cell[15,10] 0.004668748521082 [GeV] +Cell[14,12] 0.0027003873890519 [GeV] +Cell[14,33] 0.00089218921925249 [GeV] +Cell[15,37] 6.7848320468329e-06 [GeV] +Cell[13,0] 0.00010030304086945 [GeV] +Cell[15,12] 9.7076388483401e-06 [GeV] +Cell[14,47] 7.7950450906883e-07 [GeV] +Cell[14,16] 2.1332991309464e-08 [GeV] +Cell[15,36] 7.774531346513e-06 [GeV] +Cell[15,11] 0.0021268459305986 [GeV] +Cell[16,7] 0.00028967257856618 [GeV] +Cell[15,34] 1.5682599041611e-09 [GeV] +Cell[16,43] 0.00039091440020127 [GeV] +Cell[14,21] 1.7706645099679e-05 [GeV] +Cell[14,22] 5.497888562968e-05 [GeV] +Cell[13,11] 0.077435982162775 [GeV] +Cell[14,17] 4.6102340775178e-07 [GeV] +Cell[14,23] 0.0018199324757008 [GeV] +Cell[15,9] 0.0036759884783617 [GeV] +Cell[15,8] 1.1910523142433e-05 [GeV] +Cell[18,28] 0.00035560194292884 [GeV] +Cell[14,24] 0.00076303166741934 [GeV] +Cell[15,24] 1.9138187940371e-07 [GeV] +Cell[18,27] 4.4797867303714e-08 [GeV] +Cell[14,9] 0.14325918168843 [GeV] +Cell[17,29] 0.00039507665348651 [GeV] +Cell[14,10] 0.20348094293927 [GeV] +Cell[13,1] 0.00011075921307201 [GeV] +Cell[13,16] 7.4445161153562e-06 [GeV] +### Total energy deposition in calorimeter by a source track in 36 cells : 0.75087437368155 (GeV) + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000266669996e-07 mm long + and its vector is (-3.23835820381646e-08,-8.416697028224007e-08,-4.321145752328448e-08) mm + Endpoint of ComputeStep() was (282.8833655577038,412.2826719357345,1624.669779745611) + and current position to locate is (282.8833655253202,412.2826718515675,1624.6697797024) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999990633904742e-08 mm long + and its vector is (-3.424077021918492e-08,5.30928900843719e-08,7.751577868475579e-08) mm + Endpoint of ComputeStep() was (-183.0020065924652,-612.9804538832611,1296.923239925455) + and current position to locate is (-183.002006626706,-612.9804538301682,1296.923240002971) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000688971226e-07 mm long + and its vector is (-4.510704343374528e-08,-2.16407443076605e-08,-8.658548722451087e-08) mm + Endpoint of ComputeStep() was (-192.5251016932307,-479.22683394385,1197.40783837021) + and current position to locate is (-192.5251017383377,-479.2268339654907,1197.407838283625) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999995798442712e-08 mm long + and its vector is (-8.042547960940283e-09,9.844609394349391e-08,1.561011231387965e-08) mm + Endpoint of ComputeStep() was (137.7321409867636,-767.5244300088333,1331.104859377333) + and current position to locate is (137.732140978721,-767.5244299103872,1331.104859392943) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000127832928e-07 mm long + and its vector is (-4.553106691673747e-08,-7.835512860765448e-08,-4.227763383823913e-08) mm + Endpoint of ComputeStep() was (415.5888094379207,278.003491976957,1698.2304136872) + and current position to locate is (415.5888093923896,278.0034918986019,1698.230413644923) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996662230027e-08 mm long + and its vector is (-1.197145138576161e-08,-4.374251716399158e-08,-8.912502380553633e-08) mm + Endpoint of ComputeStep() was (563.3443574540067,137.9968657263387,1018.986071985761) + and current position to locate is (563.3443574420353,137.9968656825961,1018.986071896636) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000013186228e-07 mm long + and its vector is (-7.170774551923387e-08,6.939418994988955e-08,-6.51505160931265e-09) mm + Endpoint of ComputeStep() was (628.5665445307313,42.47468870924567,198.171308031132) + and current position to locate is (628.5665444590236,42.47468877863986,198.171308024617) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998311897982e-08 mm long + and its vector is (4.108056828044937e-08,2.477781890775077e-08,8.774077286943793e-08) mm + Endpoint of ComputeStep() was (281.9707397945291,-1052.329127339059,780.409269745878) + and current position to locate is (281.9707398356097,-1052.329127314281,780.4092698336187) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999998940693064e-08 mm long + and its vector is (1.40983047458576e-08,-4.38684537584777e-08,-8.87513067482359 +============================================================================================ +================= lines above cut to keep file within limits =============================== +============================================================================================ + +Source track ID 94 (gamma,0.0055213690639422[GeV]) at (-495.39542650561,-67.700601159283,-1983.1680178367) Original primary track ID 43 (unknown,52.984237098069[GeV]) -Cell[0,24] 0.0055213691551595 [GeV] -### Total energy deposition in calorimeter by a source track in 1 cells : 0.0055213691551595 (GeV) +Cell[0,24] 0.0051658724316751 [GeV] +Cell[0,25] 0.00035549663226706 [GeV] +### Total energy deposition in calorimeter by a source track in 2 cells : 0.0055213690639422 (GeV) >>> Summary of Event 0 Tracker hits -------------------------------------------------------------- -1399 hits are stored in RE01TrackerHitsCollection. +1215 hits are stored in RE01TrackerHitsCollection. Calorimeter hits -------------------------------------------------------------- -905 hits are stored in RE01CalorimeterHitsCollection. - Total energy deposition in calorimeter : 149.17883587513 (GeV) +918 hits are stored in RE01CalorimeterHitsCollection. + Total energy deposition in calorimeter : 154.47946955566 (GeV) Trajectories in tracker -------------------------------------------------------------- Primary particles -------------------------------------------------------------- Primary vertex (0,0,0) at t = 0 [ns] +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/runAndEvent/RE02/CMakeLists.txt b/examples/extended/runAndEvent/RE02/CMakeLists.txt index 76adac4dee..72500deae7 100644 --- a/examples/extended/runAndEvent/RE02/CMakeLists.txt +++ b/examples/extended/runAndEvent/RE02/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(RE02) #---------------------------------------------------------------------------- @@ -23,7 +26,7 @@ include(${Geant4_USE_FILE}) #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) diff --git a/examples/extended/runAndEvent/RE02/History b/examples/extended/runAndEvent/RE02/History index 35f5cf822b..0e0971f543 100644 --- a/examples/extended/runAndEvent/RE02/History +++ b/examples/extended/runAndEvent/RE02/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +October 29, 2020 M. Asai (exampleRE02-V10-06-00) +- Migration to G4RunManagerFactory. + 08 May 2018 J.Allison (exampleRE02-V10-04-01) - RE02.cc: o Remove G4_VIS_USE and G4UI_USE. diff --git a/examples/extended/runAndEvent/RE02/RE02.cc b/examples/extended/runAndEvent/RE02/RE02.cc index 8257f40840..65a23aead4 100644 --- a/examples/extended/runAndEvent/RE02/RE02.cc +++ b/examples/extended/runAndEvent/RE02/RE02.cc @@ -34,11 +34,7 @@ #include "QGS_BIC.hh" #include "RE02ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4SystemOfUnits.hh" @@ -55,13 +51,7 @@ int main(int argc,char** argv) { ui = new G4UIExecutive(argc, argv); } - // Run manager -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - //runManager->SetNumberOfThreads(4); -#else - G4RunManager * runManager = new G4RunManager; -#endif + auto* runManager = G4RunManagerFactory::CreateRunManager(); // UserInitialization classes (mandatory) //--- diff --git a/examples/extended/runAndEvent/RE02/run.out b/examples/extended/runAndEvent/RE02/run.out index f474057618..22660dd584 100644 --- a/examples/extended/runAndEvent/RE02/run.out +++ b/examples/extended/runAndEvent/RE02/run.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -38,10 +39,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -155,6 +158,11 @@ gamma gamma ------------------------------------------- G4SDKineticEnergyFilter:: gammaE filter LowE 1 MeV HighE 10 MeV + + hInelastic QGS_BIC Thresholds: + 1) between BERT and FTF/P over the interval 3 to 6 GeV. + 2) between FTF/P and QGS/P over the interval 12 to 25 GeV. + -- quasiElastic: 1 for QGS and 0 for FTF ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 /run/verbose 2 #/event/verbose 0 @@ -218,10 +226,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -245,10 +254,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -276,9 +286,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -292,14 +302,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -308,9 +318,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -322,9 +332,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -335,9 +345,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -351,14 +361,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -367,9 +377,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -383,14 +393,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -399,9 +409,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -415,14 +425,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -431,9 +441,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -448,14 +458,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -464,9 +474,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -481,14 +491,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -497,9 +507,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -513,14 +523,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -529,9 +539,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -545,14 +555,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -582,6 +592,30 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -623,9 +657,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_He3Inelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -639,9 +671,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_alphaInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -655,13 +685,25 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_deuteronInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -671,9 +713,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_neutronInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofWithBinaryCascadeCaptureAtRest @@ -687,9 +727,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_protonInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofWithBinaryCascadeCaptureAtRest @@ -703,9 +741,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_tritonInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -781,10 +817,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -854,10 +889,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -898,7 +932,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= Region -- -- appears in world volume @@ -926,14 +959,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.52852 keV e- 278.507 keV e+ 271.144 keV proton 70 keV + Energy thresholds : gamma 2.51944 keV e- 276.265 keV e+ 270.751 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_Pb Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 94.7372 keV e- 1.00768 MeV e+ 948.734 keV proton 70 keV + Energy thresholds : gamma 94.5861 keV e- 1.00386 MeV e+ 951.321 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -942,22 +975,22 @@ Index : 2 used in the geometry : Yes Start closing geometry. G4GeometryManager::ReportVoxelStats -- Voxel Statistics - Total memory consumed for geometry optimisation: 36 kByte + Total memory consumed for geometry optimisation: 23 kByte Total CPU time elapsed for geometry optimisation: 0 seconds Voxelisation: top CPU users: Percent Total CPU System CPU Memory Volume ------- ---------- ---------- -------- ---------- - 0.00 0.00 0.00 9k Phantom - 0.00 0.00 0.00 9k RepY - 0.00 0.00 0.00 19k RepX + 0.00 0.00 0.00 6k Phantom + 0.00 0.00 0.00 6k RepY + 0.00 0.00 0.00 13k RepX Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume ------- -------- ------ ------ -------- ---------- ---------- - 52.12 18k 1 201 400 0.00 RepX - 23.94 8k 1 100 100 0.00 Phantom - 23.94 8k 1 100 100 0.00 RepY + 53.25 12k 1 201 400 0.00 RepX + 23.38 5k 1 100 100 0.00 Phantom + 23.38 5k 1 100 100 0.00 RepY G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ++ PhantomSD/totalEDep id 0 @@ -985,7 +1018,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 4 -3.7 1.18 -194 0.356 0 2 806 PhantomSens Transportation 5 -3.7 1.18 -192 0.356 0 2 808 PhantomSens Transportation 6 -3.7 1.18 -190 0.356 0 2 810 PhantomSens Transportation - 7 -3.7 1.18 -188 0 0.0883 1.65 812 PhantomSens phot + 7 -3.7 1.18 -188 0 0.0883 1.64 812 PhantomSens phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -993,8 +1026,8 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 -3.7 1.18 -188 0.268 0 0 0 PhantomSens initStep - 1 -3.7 1.17 -188 0.144 0.124 0.085 0.085 PhantomSens eBrem - 2 -3.7 1.17 -188 0 0.144 0.049 0.134 PhantomSens eIoni + 1 -3.7 1.17 -188 0.145 0.123 0.0848 0.0848 PhantomSens eBrem + 2 -3.7 1.17 -188 0 0.145 0.0492 0.134 PhantomSens eIoni >>> Event 0 ********************************************************************************************************* @@ -1005,14 +1038,14 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 0.802 -0.701 -1e+03 0.356 0 0 0 World initStep 1 0.802 -0.701 -200 0.356 0 800 800 PhantomSens Transportation 2 0.802 -0.701 -200 0.326 0 0.259 800 PhantomSens compt - 3 1.17 -0.984 -199 0 0.0883 0.943 801 PhantomSens phot + 3 1.17 -0.983 -199 0 0.0883 0.942 801 PhantomSens phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 1.17 -0.984 -199 0.238 0 0 0 PhantomSens initStep + 0 1.17 -0.983 -199 0.238 0 0 0 PhantomSens initStep 1 1.17 -0.982 -199 0 0.238 0.106 0.106 PhantomSens eIoni ********************************************************************************************************* @@ -1034,14 +1067,14 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 2 -1.09 -1.74 -200 0.335 0 0.385 800 PhantomSens compt 3 -0.977 -2 -199 0.335 0 0.688 801 PhantomSens Transportation 4 -0.797 -2.41 -198 0.335 0 1.09 802 PhantomSens Transportation - 5 -0.735 -2.56 -198 0 0.0883 0.376 803 PhantomSens phot + 5 -0.736 -2.56 -198 0 0.0883 0.373 803 PhantomSens phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.735 -2.56 -198 0.247 0 0 0 PhantomSens initStep + 0 -0.736 -2.56 -198 0.247 0 0 0 PhantomSens initStep 1 -0.731 -2.55 -198 0 0.247 0.112 0.112 PhantomSens eIoni ********************************************************************************************************* @@ -1062,7 +1095,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 1 2.4 -2.75 -200 0.356 0 800 800 PhantomSens Transportation 2 2.4 -2.75 -198 0.356 0 2 802 PhantomSens Transportation 3 2.4 -2.75 -196 0.356 0 2 804 PhantomSens Transportation - 4 2.4 -2.75 -195 0 0.0883 0.687 805 PhantomSens phot + 4 2.4 -2.75 -195 0 0.0883 0.676 805 PhantomSens phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -1080,7 +1113,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 -2.06 3.75 -1e+03 0.356 0 0 0 World initStep 1 -2.06 3.75 -200 0.356 0 800 800 PhantomSens Transportation - 2 -2.06 3.75 -199 0 0.00355 0.889 801 PhantomSens phot + 2 -2.06 3.75 -199 0 0.00355 0.887 801 PhantomSens phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -1103,7 +1136,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 0 -4.42 4.55 -1e+03 0.356 0 0 0 World initStep 1 -4.42 4.55 -200 0.356 0 800 800 PhantomSens Transportation 2 -4.42 4.55 -198 0.356 0 2 802 PhantomSens Transportation - 3 -4.42 4.55 -198 0 0.0883 0.276 802 PhantomSens phot + 3 -4.42 4.55 -198 0 0.0883 0.271 802 PhantomSens phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -1121,7 +1154,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 -1.58 -3.16 -1e+03 0.356 0 0 0 World initStep 1 -1.58 -3.16 -200 0.356 0 800 800 PhantomSens Transportation - 2 -1.58 -3.16 -199 0 0.0883 0.876 801 PhantomSens phot + 2 -1.58 -3.16 -199 0 0.0883 0.874 801 PhantomSens phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -1159,7 +1192,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu 1 1.1 -3.06 -200 0.356 0 800 800 PhantomSens Transportation 2 1.1 -3.06 -198 0.356 0 2 802 PhantomSens Transportation 3 1.1 -3.06 -196 0.195 0 1.58 804 PhantomSens compt - 4 1.31 -3.25 -196 0 0.0153 0.292 804 PhantomSens phot + 4 1.31 -3.25 -196 0 0.0153 0.291 804 PhantomSens phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 @@ -1185,7 +1218,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName 0 -4.41 4.44 -1e+03 0.356 0 0 0 World initStep 1 -4.41 4.44 -200 0.356 0 800 800 PhantomSens Transportation - 2 -4.41 4.44 -199 0 0.0883 0.752 801 PhantomSens phot + 2 -4.41 4.44 -199 0 0.0883 0.75 801 PhantomSens phot ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 @@ -1198,7 +1231,7 @@ Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolu Run terminated. Run Summary Number of events processed : 10 - User=0.000000s Real=1.022779s Sys=0.000000s + User=0.000000s Real=0.002013s Sys=0.000000s PrimitiveScorer RUN PhantomSD,totalEDep Number of entries 10 PrimitiveScorer RUN PhantomSD,protonEDep @@ -1424,6 +1457,9 @@ Run Summary 198 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 199 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 ============================================= +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # Graphics systems deleted. Visualization Manager deleting... diff --git a/examples/extended/runAndEvent/RE02/run3.out b/examples/extended/runAndEvent/RE02/run3.out index d578a56146..dbde138628 100644 --- a/examples/extended/runAndEvent/RE02/run3.out +++ b/examples/extended/runAndEvent/RE02/run3.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -38,10 +39,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -155,6 +158,11 @@ gamma gamma ------------------------------------------- G4SDKineticEnergyFilter:: gammaE filter LowE 1 MeV HighE 10 MeV + + hInelastic QGS_BIC Thresholds: + 1) between BERT and FTF/P over the interval 3 to 6 GeV. + 2) between FTF/P and QGS/P over the interval 12 to 25 GeV. + -- quasiElastic: 1 for QGS and 0 for FTF ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 /run/verbose 2 #/event/verbose 0 @@ -216,10 +224,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -243,10 +252,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -274,9 +284,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -290,14 +300,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -306,9 +316,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -320,9 +330,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -333,9 +343,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -349,14 +359,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -365,9 +375,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -381,14 +391,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -397,9 +407,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -413,14 +423,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -429,9 +439,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -446,14 +456,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -462,9 +472,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -479,14 +489,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -495,9 +505,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -511,14 +521,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -527,9 +537,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -543,14 +553,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -580,6 +590,30 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -621,9 +655,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_He3Inelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -637,9 +669,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_alphaInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -653,13 +683,25 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_deuteronInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -669,9 +711,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_neutronInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofWithBinaryCascadeCaptureAtRest @@ -685,9 +725,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_protonInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofWithBinaryCascadeCaptureAtRest @@ -701,9 +739,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_tritonInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -779,10 +815,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -852,10 +887,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -896,7 +930,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= Region -- -- appears in world volume @@ -924,14 +957,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.52852 keV e- 278.507 keV e+ 271.144 keV proton 70 keV + Energy thresholds : gamma 2.51944 keV e- 276.265 keV e+ 270.751 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_Pb Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 94.7372 keV e- 1.00768 MeV e+ 948.734 keV proton 70 keV + Energy thresholds : gamma 94.5861 keV e- 1.00386 MeV e+ 951.321 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -940,22 +973,22 @@ Index : 2 used in the geometry : Yes Start closing geometry. G4GeometryManager::ReportVoxelStats -- Voxel Statistics - Total memory consumed for geometry optimisation: 36 kByte + Total memory consumed for geometry optimisation: 23 kByte Total CPU time elapsed for geometry optimisation: 0 seconds Voxelisation: top CPU users: Percent Total CPU System CPU Memory Volume ------- ---------- ---------- -------- ---------- - 0.00 0.00 0.00 9k Phantom - 0.00 0.00 0.00 9k RepY - 0.00 0.00 0.00 19k RepX + 0.00 0.00 0.00 6k Phantom + 0.00 0.00 0.00 6k RepY + 0.00 0.00 0.00 13k RepX Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume ------- -------- ------ ------ -------- ---------- ---------- - 52.12 18k 1 201 400 0.00 RepX - 23.94 8k 1 100 100 0.00 Phantom - 23.94 8k 1 100 100 0.00 RepY + 53.25 12k 1 201 400 0.00 RepX + 23.38 5k 1 100 100 0.00 Phantom + 23.38 5k 1 100 100 0.00 RepY G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ++ PhantomSD/totalEDep id 0 @@ -1001,89 +1034,89 @@ See commands in /vis/modeling/trajectories/ for other options. Run terminated. Run Summary Number of events processed : 10000 - User=25.860000s Real=26.291435s Sys=0.050000s + User=11.710000s Real=12.365410s Sys=0.040000s PrimitiveScorer RUN PhantomSD,totalEDep - Number of entries 51120 + Number of entries 51322 PrimitiveScorer RUN PhantomSD,protonEDep - Number of entries 31 + Number of entries 16 PrimitiveScorer RUN PhantomSD,protonNStep - Number of entries 31 + Number of entries 16 PrimitiveScorer RUN PhantomSD,chargedPassCellFlux - Number of entries 20370 + Number of entries 20155 PrimitiveScorer RUN PhantomSD,chargedCellFlux - Number of entries 50880 + Number of entries 51117 PrimitiveScorer RUN PhantomSD,chargedSurfFlux - Number of entries 11829 + Number of entries 11780 PrimitiveScorer RUN PhantomSD,gammaSurfCurr000 - Number of entries 36 + Number of entries 40 PrimitiveScorer RUN PhantomSD,gammaSurfCurr001 - Number of entries 375 + Number of entries 363 PrimitiveScorer RUN PhantomSD,gammaSurfCurr002 - Number of entries 50138 + Number of entries 50632 PrimitiveScorer RUN PhantomSD,gammaSurfCurr003 - Number of entries 70875 + Number of entries 71488 ============================================================= Number of event processed : 10000 ============================================================= #Z Cell# totalEDep protonEDep protonNStep chargedPassCellFlux chargedCellFlux chargedSurfFlux gammaSurfCurr000 gammaSurfCurr001 gammaSurfCurr002 gammaSurfCurr003 - 0 41.8516 MeV 0 eV 0 2826.21 /cm2 2944.14 /cm2 2492.16 /cm2 0 /cm2 25 /cm2 525 /cm2 250 /cm2 - 1 546.487 MeV 0 eV 0 3706.33 /cm2 5208.66 /cm2 3656.01 /cm2 0 /cm2 75 /cm2 825 /cm2 700 /cm2 - 2 55.2325 MeV 0 eV 0 3532.39 /cm2 3765.08 /cm2 4680.92 /cm2 0 /cm2 0 /cm2 3450 /cm2 3700 /cm2 - 3 266.573 MeV 0 eV 0 1492.87 /cm2 2493.66 /cm2 6085.16 /cm2 25 /cm2 25 /cm2 2900 /cm2 3825 /cm2 - 4 20.3493 MeV 0 eV 0 1154.16 /cm2 1345.82 /cm2 1898.01 /cm2 0 /cm2 0 /cm2 2675 /cm2 3600 /cm2 - 5 99.9008 MeV 0 eV 0 318.711 /cm2 910.599 /cm2 920.792 /cm2 0 /cm2 0 /cm2 2200 /cm2 2800 /cm2 - 6 8.27149 MeV 0 eV 0 499.096 /cm2 570.105 /cm2 778.383 /cm2 0 /cm2 0 /cm2 1475 /cm2 2850 /cm2 - 7 55.9239 MeV 0 eV 0 173.184 /cm2 514.955 /cm2 736.949 /cm2 0 /cm2 0 /cm2 1375 /cm2 2925 /cm2 - 8 1.5484 MeV 0 eV 0 105.939 /cm2 113.921 /cm2 67.0491 /cm2 0 /cm2 0 /cm2 1000 /cm2 2275 /cm2 - 9 32.4451 MeV 0 eV 0 55.3205 /cm2 291.569 /cm2 33.0451 /cm2 0 /cm2 0 /cm2 1050 /cm2 2475 /cm2 - 10 3.14688 MeV 0 eV 0 201.761 /cm2 211.007 /cm2 196.819 /cm2 0 /cm2 0 /cm2 675 /cm2 1925 /cm2 - 11 34.4259 MeV 0 eV 0 54.3084 /cm2 317.451 /cm2 132.111 /cm2 0 /cm2 0 /cm2 700 /cm2 1750 /cm2 - 12 3.01645 MeV 0 eV 0 185.736 /cm2 196.465 /cm2 277.591 /cm2 0 /cm2 0 /cm2 500 /cm2 1350 /cm2 - 13 24.4282 MeV 0 eV 0 24.936 /cm2 212.625 /cm2 0 /cm2 0 /cm2 0 /cm2 550 /cm2 1500 /cm2 - 14 1.89235 MeV 0 eV 0 40.4002 /cm2 78.0224 /cm2 227.25 /cm2 0 /cm2 0 /cm2 400 /cm2 1200 /cm2 - 15 8.04401 MeV 0 eV 0 0.582231 /cm2 66.7781 /cm2 28.3353 /cm2 0 /cm2 0 /cm2 375 /cm2 1100 /cm2 - 16 1.92857 MeV 0 eV 0 90.284 /cm2 102.894 /cm2 31.9069 /cm2 0 /cm2 0 /cm2 350 /cm2 875 /cm2 - 17 14.3571 MeV 0 eV 0 16.4815 /cm2 136.902 /cm2 124.304 /cm2 0 /cm2 0 /cm2 425 /cm2 700 /cm2 - 18 1.0708 MeV 0 eV 0 47.3835 /cm2 69.211 /cm2 55.3102 /cm2 0 /cm2 0 /cm2 275 /cm2 625 /cm2 - 19 11.7207 MeV 0 eV 0 11.6792 /cm2 98.3108 /cm2 30.1109 /cm2 0 /cm2 0 /cm2 375 /cm2 700 /cm2 - 20 294.912 keV 0 eV 0 24.3393 /cm2 24.3393 /cm2 0 /cm2 0 /cm2 0 /cm2 175 /cm2 625 /cm2 - 21 5.30314 MeV 0 eV 0 4.6285 /cm2 45.7021 /cm2 0 /cm2 0 /cm2 0 /cm2 75 /cm2 500 /cm2 - 22 838.546 keV 0 eV 0 29.9972 /cm2 35.2339 /cm2 0 /cm2 0 /cm2 0 /cm2 100 /cm2 325 /cm2 - 23 5.09503 MeV 0 eV 0 4.99741 /cm2 46.5139 /cm2 125.285 /cm2 0 /cm2 0 /cm2 150 /cm2 300 /cm2 - 24 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 125 /cm2 275 /cm2 - 25 6.56573 MeV 0 eV 0 3.56039 /cm2 51.767 /cm2 0 /cm2 0 /cm2 0 /cm2 175 /cm2 275 /cm2 - 26 1.06401 MeV 0 eV 0 66.2223 /cm2 68.0245 /cm2 83.2075 /cm2 0 /cm2 0 /cm2 125 /cm2 125 /cm2 - 27 412.144 keV 0 eV 0 0 /cm2 2.00464 /cm2 0 /cm2 0 /cm2 0 /cm2 100 /cm2 150 /cm2 - 28 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 50 /cm2 175 /cm2 - 29 287.719 keV 0 eV 0 0 /cm2 1.47188 /cm2 0 /cm2 0 /cm2 0 /cm2 50 /cm2 150 /cm2 - 30 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 75 /cm2 125 /cm2 - 31 2.56806 MeV 0 eV 0 0 /cm2 24.5177 /cm2 0 /cm2 0 /cm2 0 /cm2 75 /cm2 125 /cm2 - 32 217.821 keV 0 eV 0 0 /cm2 5.51053 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 75 /cm2 - 33 425.888 keV 0 eV 0 1.34418 /cm2 2.39555 /cm2 0 /cm2 0 /cm2 0 /cm2 75 /cm2 125 /cm2 - 34 1.27297 MeV 0 eV 0 78.5726 /cm2 78.5726 /cm2 212.996 /cm2 0 /cm2 0 /cm2 50 /cm2 125 /cm2 - 35 1.55548 MeV 0 eV 0 0 /cm2 13.8209 /cm2 27.9477 /cm2 0 /cm2 0 /cm2 25 /cm2 175 /cm2 - 36 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 50 /cm2 125 /cm2 - 37 1.71936 MeV 0 eV 0 0 /cm2 17.8654 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 125 /cm2 - 38 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 75 /cm2 - 39 462.629 keV 0 eV 0 0.13094 /cm2 2.22792 /cm2 0 /cm2 0 /cm2 0 /cm2 50 /cm2 75 /cm2 - 40 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 - 41 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 75 /cm2 - 42 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 75 /cm2 - 43 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 75 /cm2 - 44 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 50 /cm2 - 45 510.999 keV 0 eV 0 0 /cm2 3.02938 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 - 46 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 25 /cm2 - 47 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 - 48 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 + 0 40.0542 MeV 0 eV 0 2607.02 /cm2 2790.89 /cm2 2139.98 /cm2 0 /cm2 0 /cm2 275 /cm2 250 /cm2 + 1 466.222 MeV 0 eV 0 3085.44 /cm2 4352.99 /cm2 9861.38 /cm2 0 /cm2 50 /cm2 1125 /cm2 475 /cm2 + 2 47.7804 MeV 0 eV 0 3274.11 /cm2 3405.53 /cm2 5304.45 /cm2 0 /cm2 25 /cm2 3775 /cm2 3475 /cm2 + 3 254.023 MeV 0 eV 0 1343 /cm2 2306.88 /cm2 9995.39 /cm2 0 /cm2 75 /cm2 3525 /cm2 3600 /cm2 + 4 19.9693 MeV 0 eV 0 1086.86 /cm2 1274.51 /cm2 5488.31 /cm2 0 /cm2 0 /cm2 2675 /cm2 3800 /cm2 + 5 91.2111 MeV 0 eV 0 332.618 /cm2 858.311 /cm2 1895.47 /cm2 0 /cm2 25 /cm2 2200 /cm2 3200 /cm2 + 6 9.25624 MeV 0 eV 0 386.134 /cm2 526.983 /cm2 398.48 /cm2 0 /cm2 0 /cm2 1875 /cm2 2625 /cm2 + 7 46.4927 MeV 0 eV 0 50.8134 /cm2 391.034 /cm2 376.907 /cm2 0 /cm2 0 /cm2 1825 /cm2 2350 /cm2 + 8 6.91898 MeV 0 eV 0 347.81 /cm2 439.082 /cm2 272.102 /cm2 0 /cm2 0 /cm2 1550 /cm2 2025 /cm2 + 9 35.3122 MeV 0 eV 0 14.0948 /cm2 313.704 /cm2 318.083 /cm2 0 /cm2 0 /cm2 1000 /cm2 1600 /cm2 + 10 4.65047 MeV 0 eV 0 161.889 /cm2 266.064 /cm2 346.842 /cm2 0 /cm2 0 /cm2 1025 /cm2 1650 /cm2 + 11 22.0507 MeV 0 eV 0 33.3455 /cm2 185.657 /cm2 1240.43 /cm2 0 /cm2 25 /cm2 700 /cm2 1375 /cm2 + 12 3.9667 MeV 0 eV 0 140.359 /cm2 240.96 /cm2 251.819 /cm2 0 /cm2 0 /cm2 550 /cm2 1225 /cm2 + 13 17.4649 MeV 0 eV 0 47.4052 /cm2 162.547 /cm2 52.1983 /cm2 0 /cm2 0 /cm2 450 /cm2 1400 /cm2 + 14 2.12444 MeV 0 eV 0 134.666 /cm2 142.68 /cm2 98.5562 /cm2 0 /cm2 0 /cm2 425 /cm2 1350 /cm2 + 15 21.3923 MeV 0 eV 0 28.3883 /cm2 203.964 /cm2 118.308 /cm2 0 /cm2 0 /cm2 450 /cm2 1250 /cm2 + 16 262.162 keV 0 eV 0 0 /cm2 8.11877 /cm2 34.8924 /cm2 0 /cm2 0 /cm2 450 /cm2 900 /cm2 + 17 5.04439 MeV 0 eV 0 11.8315 /cm2 41.749 /cm2 0 /cm2 0 /cm2 0 /cm2 325 /cm2 900 /cm2 + 18 1.8178 MeV 0 eV 0 82.5326 /cm2 100.587 /cm2 37.7197 /cm2 0 /cm2 0 /cm2 325 /cm2 750 /cm2 + 19 8.23239 MeV 0 eV 0 10.9375 /cm2 69.2571 /cm2 0 /cm2 0 /cm2 0 /cm2 225 /cm2 650 /cm2 + 20 1.3378 MeV 0 eV 0 32.8267 /cm2 85.0289 /cm2 0 /cm2 0 /cm2 0 /cm2 175 /cm2 550 /cm2 + 21 15.822 MeV 0 eV 0 11.2989 /cm2 139.176 /cm2 0 /cm2 0 /cm2 0 /cm2 150 /cm2 475 /cm2 + 22 100.167 keV 0 eV 0 9.1212 /cm2 9.1212 /cm2 30.9318 /cm2 0 /cm2 0 /cm2 250 /cm2 250 /cm2 + 23 1.27082 MeV 0 eV 0 0 /cm2 9.00039 /cm2 0 /cm2 0 /cm2 0 /cm2 150 /cm2 275 /cm2 + 24 511.969 keV 0 eV 0 32.6956 /cm2 32.6956 /cm2 30.4499 /cm2 0 /cm2 0 /cm2 150 /cm2 275 /cm2 + 25 6.47875 MeV 0 eV 0 0 /cm2 66.3721 /cm2 26.8997 /cm2 0 /cm2 0 /cm2 175 /cm2 225 /cm2 + 26 250.532 keV 0 eV 0 0 /cm2 8.83666 /cm2 0 /cm2 0 /cm2 0 /cm2 50 /cm2 225 /cm2 + 27 2.57067 MeV 0 eV 0 0.0903845 /cm2 21.6687 /cm2 82.3312 /cm2 0 /cm2 0 /cm2 50 /cm2 275 /cm2 + 28 364.819 keV 0 eV 0 26.7847 /cm2 26.7847 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 200 /cm2 + 29 1.2479 MeV 0 eV 0 8.41933 /cm2 12.0328 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 175 /cm2 + 30 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 50 /cm2 150 /cm2 + 31 540.275 keV 0 eV 0 0 /cm2 3.32103 /cm2 0 /cm2 0 /cm2 0 /cm2 50 /cm2 150 /cm2 + 32 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 250 /cm2 + 33 1.22584 MeV 0 eV 0 0 /cm2 9.11697 /cm2 0 /cm2 0 /cm2 0 /cm2 50 /cm2 200 /cm2 + 34 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 175 /cm2 + 35 1.07012 MeV 0 eV 0 0 /cm2 7.67892 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 125 /cm2 + 36 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 50 /cm2 150 /cm2 + 37 1.23485 MeV 0 eV 0 0 /cm2 10.3038 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 125 /cm2 + 38 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 100 /cm2 + 39 913.08 keV 0 eV 0 0 /cm2 8.25216 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 100 /cm2 + 40 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 75 /cm2 + 41 776.24 keV 0 eV 0 0 /cm2 5.77405 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 75 /cm2 + 42 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 50 /cm2 + 43 53.656 keV 0 eV 0 0.605781 /cm2 0.605781 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 + 44 836.3 keV 0 eV 0 37.889 /cm2 49.8585 /cm2 340.787 /cm2 0 /cm2 0 /cm2 50 /cm2 25 /cm2 + 45 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 + 46 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 50 /cm2 + 47 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 50 /cm2 + 48 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 49 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 50 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 51 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 52 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 - 53 424.108 keV 0 eV 0 0 /cm2 2.19243 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 - 54 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 25 /cm2 - 55 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 - 56 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 - 57 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 + 53 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 25 /cm2 + 54 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 + 55 594.48 keV 0 eV 0 0 /cm2 3.61413 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 + 56 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 + 57 6.22402 MeV 0 eV 0 0 /cm2 64.19 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 58 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 59 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 60 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 @@ -1091,8 +1124,8 @@ Run Summary 62 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 63 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 64 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 - 65 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 - 66 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 + 65 303.718 keV 0 eV 0 0 /cm2 1.89691 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 0 /cm2 + 66 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 25 /cm2 0 /cm2 67 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 68 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 69 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 @@ -1227,6 +1260,9 @@ Run Summary 198 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 199 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 ============================================= +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # Graphics systems deleted. Visualization Manager deleting... @@ -1241,9 +1277,9 @@ G4SDManager deleted. EventManager deleted. Units table cleared. TransportationManager deleted. -Total navigation history collections cleaned: 18 +Total navigation history collections cleaned: 20 ================== Deleting memory pools =================== -Pool ID '20G4NavigationLevelRep', size : 0.026 MB +Pool ID '20G4NavigationLevelRep', size : 0.0298 MB Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB Pool ID '16G4HitsCollection', size : 0 MB Pool ID '7G4Event', size : 0.000961 MB @@ -1252,12 +1288,12 @@ Pool ID '17G4PrimaryParticle', size : 0.000961 MB Pool ID '15G4HCofThisEvent', size : 0.000961 MB Pool ID '17G4DynamicParticle', size : 0.00961 MB Pool ID '7G4Track', size : 0.0183 MB -Pool ID '18G4TouchableHistory', size : 0.00192 MB +Pool ID '18G4TouchableHistory', size : 0.00288 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Pool ID '10G4Fragment', size : 0.00192 MB Pool ID '17G4ReactionProduct', size : 0.00192 MB Number of memory pools allocated: 13 of which, static: 0 -Dynamic pools deleted: 13 / Total memory freed: 0.065 MB +Dynamic pools deleted: 13 / Total memory freed: 0.07 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/extended/runAndEvent/RE02/run4.out b/examples/extended/runAndEvent/RE02/run4.out index 1971bfbd24..b2a14ff85d 100644 --- a/examples/extended/runAndEvent/RE02/run4.out +++ b/examples/extended/runAndEvent/RE02/run4.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -38,10 +39,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -155,6 +158,11 @@ gamma gamma ------------------------------------------- G4SDKineticEnergyFilter:: gammaE filter LowE 1 MeV HighE 10 MeV + + hInelastic QGS_BIC Thresholds: + 1) between BERT and FTF/P over the interval 3 to 6 GeV. + 2) between FTF/P and QGS/P over the interval 12 to 25 GeV. + -- quasiElastic: 1 for QGS and 0 for FTF ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 /run/verbose 2 #/event/verbose 0 @@ -218,10 +226,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -245,10 +254,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -276,9 +286,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -292,14 +302,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -308,9 +318,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -322,9 +332,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -335,9 +345,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -351,14 +361,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -367,9 +377,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -383,14 +393,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -399,9 +409,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -415,14 +425,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -431,9 +441,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -448,14 +458,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -464,9 +474,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -481,14 +491,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -497,9 +507,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -513,14 +523,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -529,9 +539,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -545,14 +555,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -582,6 +592,30 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -623,9 +657,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_He3Inelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -639,9 +671,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_alphaInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -655,13 +685,25 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_deuteronInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: QGSP: 12 GeV ---> 100 TeV + Model: FTFP: 0 eV ---> 25 GeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -671,9 +713,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_neutronInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofWithBinaryCascadeCaptureAtRest @@ -687,9 +727,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_protonInelastic - Model: FTFP: 0 eV ---> 25 GeV - Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV ---> 100 TeV Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofWithBinaryCascadeCaptureAtRest @@ -703,9 +741,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: anti_tritonInelastic - Model: FTFP: 0 eV /n ---> 25 GeV/n - Model: FTFP: 12 GeV/n ---> 100 TeV/n - Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV + Model: FTFP: 0 eV /n ---> 100 TeV/n Cr_sctns: AntiAGlauber: 0 eV ---> 25.6 PeV Process: hFritiofCaptureAtRest @@ -781,10 +817,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -854,10 +889,9 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV - Model: FTFP: 3 GeV ---> 25 GeV Model: QGSP: 12 GeV ---> 100 TeV - Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + Model: FTFP: 3 GeV ---> 25 GeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -898,7 +932,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= Region -- -- appears in world volume @@ -926,14 +959,14 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.52852 keV e- 278.507 keV e+ 271.144 keV proton 70 keV + Energy thresholds : gamma 2.51944 keV e- 276.265 keV e+ 270.751 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_Pb Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 94.7372 keV e- 1.00768 MeV e+ 948.734 keV proton 70 keV + Energy thresholds : gamma 94.5861 keV e- 1.00386 MeV e+ 951.321 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -942,22 +975,22 @@ Index : 2 used in the geometry : Yes Start closing geometry. G4GeometryManager::ReportVoxelStats -- Voxel Statistics - Total memory consumed for geometry optimisation: 36 kByte + Total memory consumed for geometry optimisation: 23 kByte Total CPU time elapsed for geometry optimisation: 0 seconds Voxelisation: top CPU users: Percent Total CPU System CPU Memory Volume ------- ---------- ---------- -------- ---------- - 0.00 0.00 0.00 9k Phantom - 0.00 0.00 0.00 9k RepY - 0.00 0.00 0.00 19k RepX + 0.00 0.00 0.00 6k Phantom + 0.00 0.00 0.00 6k RepY + 0.00 0.00 0.00 13k RepX Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume ------- -------- ------ ------ -------- ---------- ---------- - 52.12 18k 1 201 400 0.00 RepX - 23.94 8k 1 100 100 0.00 Phantom - 23.94 8k 1 100 100 0.00 RepY + 53.25 12k 1 201 400 0.00 RepX + 23.38 5k 1 100 100 0.00 Phantom + 23.38 5k 1 100 100 0.00 RepY G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ++ PhantomSD/totalEDep id 0 @@ -1003,19 +1036,19 @@ See commands in /vis/modeling/trajectories/ for other options. Run terminated. Run Summary Number of events processed : 10000 - User=1.380000s Real=1.400665s Sys=0.000000s + User=0.180000s Real=0.178062s Sys=0.000000s PrimitiveScorer RUN PhantomSD,totalEDep - Number of entries 80 + Number of entries 83 PrimitiveScorer RUN PhantomSD,protonEDep Number of entries 0 PrimitiveScorer RUN PhantomSD,protonNStep Number of entries 0 PrimitiveScorer RUN PhantomSD,chargedPassCellFlux - Number of entries 15 + Number of entries 17 PrimitiveScorer RUN PhantomSD,chargedCellFlux - Number of entries 80 + Number of entries 83 PrimitiveScorer RUN PhantomSD,chargedSurfFlux - Number of entries 26 + Number of entries 29 PrimitiveScorer RUN PhantomSD,gammaSurfCurr000 Number of entries 0 PrimitiveScorer RUN PhantomSD,gammaSurfCurr001 @@ -1028,8 +1061,8 @@ Run Summary Number of event processed : 10000 ============================================================= #Z Cell# totalEDep protonEDep protonNStep chargedPassCellFlux chargedCellFlux chargedSurfFlux gammaSurfCurr000 gammaSurfCurr001 gammaSurfCurr002 gammaSurfCurr003 - 0 335.058 keV 0 eV 0 0 /cm2 3.17457 /cm2 0 /cm2 0 /cm2 9675 /cm2 0 /cm2 0 /cm2 - 1 21.8549 MeV 0 eV 0 0 /cm2 38.3876 /cm2 86.8636 /cm2 0 /cm2 9275 /cm2 0 /cm2 0 /cm2 + 0 245.782 keV 0 eV 0 0 /cm2 2.3738 /cm2 0 /cm2 0 /cm2 9200 /cm2 0 /cm2 0 /cm2 + 1 21.0745 MeV 0 eV 0 0 /cm2 37.0768 /cm2 107.232 /cm2 0 /cm2 8950 /cm2 0 /cm2 0 /cm2 2 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 3 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 4 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 @@ -1229,6 +1262,9 @@ Run Summary 198 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 199 0 eV 0 eV 0 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 0 /cm2 ============================================= +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # Graphics systems deleted. Visualization Manager deleting... @@ -1252,12 +1288,12 @@ Pool ID '7G4Event', size : 0.000961 MB Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.000961 MB Pool ID '15G4HCofThisEvent', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.00192 MB -Pool ID '7G4Track', size : 0.00288 MB +Pool ID '17G4DynamicParticle', size : 0.000961 MB +Pool ID '7G4Track', size : 0.00192 MB Pool ID '18G4TouchableHistory', size : 0.000961 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Number of memory pools allocated: 11 of which, static: 0 -Dynamic pools deleted: 11 / Total memory freed: 0.02 MB +Dynamic pools deleted: 11 / Total memory freed: 0.018 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/extended/runAndEvent/RE03/CMakeLists.txt b/examples/extended/runAndEvent/RE03/CMakeLists.txt index 9234401232..b42c8dcb46 100644 --- a/examples/extended/runAndEvent/RE03/CMakeLists.txt +++ b/examples/extended/runAndEvent/RE03/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(RE03) #---------------------------------------------------------------------------- @@ -23,7 +26,7 @@ include(${Geant4_USE_FILE}) #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) diff --git a/examples/extended/runAndEvent/RE03/History b/examples/extended/runAndEvent/RE03/History index 07962259ff..4cc6a007d2 100644 --- a/examples/extended/runAndEvent/RE03/History +++ b/examples/extended/runAndEvent/RE03/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Oct. 29, 2020 M. Asai (exampleRE03-V10-06-00) +- Migration to G4RunManagerFactory. + Sep 20, 2019 M. Asai (exampleRE03-V10-05-00) - Add G4VScoringMesh:: scope identifier to RE03UserScoreWriter.cc. - Co-working with detutils-V10-05-01 diff --git a/examples/extended/runAndEvent/RE03/RE03.cc b/examples/extended/runAndEvent/RE03/RE03.cc index c69886b5c7..1a40779a67 100644 --- a/examples/extended/runAndEvent/RE03/RE03.cc +++ b/examples/extended/runAndEvent/RE03/RE03.cc @@ -31,11 +31,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "G4ScoringManager.hh" @@ -61,12 +57,8 @@ int main(int argc,char** argv) // Construct the run manager // -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; + auto* runManager = G4RunManagerFactory::CreateRunManager(); runManager->SetNumberOfThreads(4); -#else - G4RunManager * runManager = new G4RunManager; -#endif // Activate UI-command base scorer G4ScoringManager * scManager = G4ScoringManager::GetScoringManager(); diff --git a/examples/extended/runAndEvent/RE04/CMakeLists.txt b/examples/extended/runAndEvent/RE04/CMakeLists.txt index 6260c4ecc2..f9c2b4e95d 100644 --- a/examples/extended/runAndEvent/RE04/CMakeLists.txt +++ b/examples/extended/runAndEvent/RE04/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(RE04) #---------------------------------------------------------------------------- @@ -24,7 +27,7 @@ include_directories(${PROJECT_SOURCE_DIR}/include) #---------------------------------------------------------------------------- # Locate sources and headers for this project # -include_directories(${PROJECT_SOURCE_DIR}/include +include_directories(${PROJECT_SOURCE_DIR}/include ${Geant4_INCLUDE_DIR}) file(GLOB sources ${PROJECT_SOURCE_DIR}/src/*.cc) file(GLOB headers ${PROJECT_SOURCE_DIR}/include/*.hh) diff --git a/examples/extended/runAndEvent/RE04/History b/examples/extended/runAndEvent/RE04/History index 91fba2001c..975fc9abbd 100644 --- a/examples/extended/runAndEvent/RE04/History +++ b/examples/extended/runAndEvent/RE04/History @@ -13,6 +13,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Oct. 29, 2020 M. Asai (exampleRE04-V10-06-00) +- Migration to G4RunManagerFactory. + May 10, 2018 J. Allison (exampleRE04-V10-04-01) - Remove G4UI_USE and G4VIS_USE. - Move instantiation of G4UIExecutive to start of main. diff --git a/examples/extended/runAndEvent/RE04/RE04.cc b/examples/extended/runAndEvent/RE04/RE04.cc index 29cda500e2..183889bb3b 100644 --- a/examples/extended/runAndEvent/RE04/RE04.cc +++ b/examples/extended/runAndEvent/RE04/RE04.cc @@ -29,11 +29,7 @@ // #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4ScoringManager.hh" #include "G4UImanager.hh" @@ -56,14 +52,8 @@ int main(int argc,char** argv) } // Construct the run manager - // -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - //runManager->SetNumberOfThreads(4); -#else - G4RunManager * runManager = new G4RunManager; -#endif - + auto* runManager = G4RunManagerFactory::CreateRunManager(); + G4ScoringManager::GetScoringManager(); G4String paraWorldName = "ParallelWorld"; diff --git a/examples/extended/runAndEvent/RE04/exampleRE04.out b/examples/extended/runAndEvent/RE04/exampleRE04.out index 180d0ae03f..d2863e8f92 100644 --- a/examples/extended/runAndEvent/RE04/exampleRE04.out +++ b/examples/extended/runAndEvent/RE04/exampleRE04.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -28,10 +29,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -126,7 +129,7 @@ The materials defined are : --- G4CoupledTransportation is used - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -158,10 +161,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -185,10 +189,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -216,9 +221,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -232,14 +237,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -248,9 +253,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -262,9 +267,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -275,9 +280,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -291,14 +296,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -307,9 +312,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -323,14 +328,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -339,9 +344,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -355,14 +360,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -371,9 +376,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -388,14 +393,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -404,9 +409,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -421,14 +426,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -437,9 +442,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -453,14 +458,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -469,9 +474,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -485,14 +490,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -521,6 +526,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -595,6 +622,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -706,8 +746,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -772,8 +812,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -814,7 +854,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. @@ -2818,6 +2857,9 @@ See commands in /vis/modeling/trajectories/ for other options. >>> Summary of Event 999 +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. WARNING: G4VisManager::IsValidView(): Attempt to draw when no graphics system has been instantiated. Use "/vis/open" or "/vis/sceneHandler/create". Alternatively, to avoid this message, suppress instantiation of vis diff --git a/examples/extended/runAndEvent/RE05/CMakeLists.txt b/examples/extended/runAndEvent/RE05/CMakeLists.txt index ef3f947fc3..4cb7def012 100644 --- a/examples/extended/runAndEvent/RE05/CMakeLists.txt +++ b/examples/extended/runAndEvent/RE05/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(RE05) #---------------------------------------------------------------------------- diff --git a/examples/extended/runAndEvent/RE05/History b/examples/extended/runAndEvent/RE05/History index 30a4ac8605..7e95f02f72 100644 --- a/examples/extended/runAndEvent/RE05/History +++ b/examples/extended/runAndEvent/RE05/History @@ -16,6 +16,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +11-11-20 M. Asai (exampleRE05-V10-06-00) +- Migration to G4RunManagerFactory. + 01-28-19 M. Asai (exampleRE05-V10-05-00) - Reduce the number of events in pythia_event.data to make it smaller than 2 MB. Number of events executed by the macro diff --git a/examples/extended/runAndEvent/RE05/exampleRE05.cc b/examples/extended/runAndEvent/RE05/exampleRE05.cc index 1c826ee987..5c72973626 100644 --- a/examples/extended/runAndEvent/RE05/exampleRE05.cc +++ b/examples/extended/runAndEvent/RE05/exampleRE05.cc @@ -33,13 +33,9 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" +#include "G4RunManagerFactory.hh" #include "RE05WorkerInitialization.hh" -#else -#include "G4RunManager.hh" #include "RE05SteppingVerbose.hh" -#endif #include "G4UImanager.hh" @@ -60,60 +56,57 @@ int main(int argc,char** argv) ui = new G4UIExecutive(argc, argv); } -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; - G4int number_of_threads = 4; // default number of threads - runManager->SetNumberOfThreads(number_of_threads); - runManager->SetUserInitialization(new RE05WorkerInitialization); -#else - G4VSteppingVerbose* verbosity = new RE05SteppingVerbose; + auto verbosity = new RE05SteppingVerbose; G4VSteppingVerbose::SetInstance(verbosity); - G4RunManager* runManager = new G4RunManager; -#endif + auto runManager = G4RunManagerFactory::CreateRunManager(); + if(runManager->GetRunManagerType() == G4RunManager::masterRM) + { + runManager->SetNumberOfThreads(4); + runManager->SetUserInitialization(new RE05WorkerInitialization); + } G4String parallelWorldName = "ReadoutWorld"; // User Initialization classes (mandatory) // - G4VUserDetectorConstruction* detector = new RE05DetectorConstruction(); + auto detector = new RE05DetectorConstruction(); detector->RegisterParallelWorld (new RE05CalorimeterParallelWorld(parallelWorldName)); runManager->SetUserInitialization(detector); // - G4VModularPhysicsList* physicsList = new QBBC; + auto physicsList = new QBBC; physicsList ->RegisterPhysics(new G4ParallelWorldPhysics(parallelWorldName)); runManager->SetUserInitialization(physicsList); // - G4VUserActionInitialization* actions = new RE05ActionInitialization; + auto actions = new RE05ActionInitialization; runManager->SetUserInitialization(actions); runManager->Initialize(); - G4VisManager* visManager = new G4VisExecutive; + auto visManager = new G4VisExecutive; visManager->Initialize(); //get the pointer to the User Interface manager - G4UImanager* UImanager = G4UImanager::GetUIpointer(); + auto UImanager = G4UImanager::GetUIpointer(); if (!ui) // batch mode - { - G4String command = "/control/execute "; - G4String fileName = argv[1]; - UImanager->ApplyCommand(command+fileName); - } + { + G4String command = "/control/execute "; + G4String fileName = argv[1]; + UImanager->ApplyCommand(command+fileName); + } else // interactive mode : define UI session - { - UImanager->ApplyCommand("/control/execute vis.mac"); - ui->SessionStart(); - delete ui; - } - - delete visManager; + { + UImanager->ApplyCommand("/control/execute vis.mac"); + ui->SessionStart(); + delete ui; + } // Job termination // Free the store: user actions, physics_list and detector_description are // owned and deleted by the run manager, so they should not // be deleted in the main() program ! + delete visManager; delete runManager; return 0; diff --git a/examples/extended/runAndEvent/RE05/exampleRE05.out b/examples/extended/runAndEvent/RE05/exampleRE05.out index c95ad3b5bc..99f2d9b964 100644 --- a/examples/extended/runAndEvent/RE05/exampleRE05.out +++ b/examples/extended/runAndEvent/RE05/exampleRE05.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -15,6 +16,10 @@ <<< Reference Physics List QBBC G4HEPEvtInterface - pythia_event.data is open. --- G4CoupledTransportation is used +### HadronInelasticQBBC Construct Process: + Emin(FTFP)= 3 GeV Emax(FTFP)= 100000 GeV + Emin(BERT)= 1 GeV Emax(BERT)= 6 GeV Emax(BERTpions)= 12 GeV + Emin(BIC) = 0 GeV Emax(BIC)= 1.5 GeV. ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 Visualization Manager instantiating with verbosity "warnings (3)"... Visualization Manager initialising... @@ -30,10 +35,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -93,10 +100,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -120,10 +128,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -151,9 +160,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -167,14 +176,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -183,9 +192,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -197,9 +206,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -210,9 +219,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -226,14 +235,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -242,9 +251,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -258,14 +267,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -274,9 +283,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -290,14 +299,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -306,9 +315,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -323,14 +332,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -339,9 +348,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -356,14 +365,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -372,9 +381,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -388,14 +397,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -404,9 +413,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -420,14 +429,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -457,6 +466,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -535,6 +566,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -675,7 +719,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi+Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -687,7 +732,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi-Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -755,7 +801,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= Region -- -- appears in world volume @@ -791,21 +836,21 @@ Index : 1 used in the geometry : Yes Index : 2 used in the geometry : Yes Material : Silicon Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 5.87994 keV e- 424.707 keV e+ 410.72 keV proton 70 keV + Energy thresholds : gamma 5.87535 keV e- 424.726 keV e+ 410.692 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 3 used in the geometry : Yes Material : Scintillator Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.10317 keV e- 282.263 keV e+ 272.967 keV proton 70 keV + Energy thresholds : gamma 2.09434 keV e- 281.891 keV e+ 276.265 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 4 used in the geometry : Yes Material : Lead Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 94.7372 keV e- 1.00768 MeV e+ 948.734 keV proton 70 keV + Energy thresholds : gamma 94.5861 keV e- 1.00386 MeV e+ 951.321 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -814,35 +859,35 @@ Index : 4 used in the geometry : Yes Start closing geometry. G4GeometryManager::ReportVoxelStats -- Voxel Statistics - Total memory consumed for geometry optimisation: 10 kByte + Total memory consumed for geometry optimisation: 7 kByte Total CPU time elapsed for geometry optimisation: 0 seconds Voxelisation: top CPU users: Percent Total CPU System CPU Memory Volume ------- ---------- ---------- -------- ---------- - 0.00 0.00 0.00 4k expHall_L + 0.00 0.00 0.00 2k expHall_L 0.00 0.00 0.00 0k trackerT_L 0.00 0.00 0.00 1k caloT_L - 0.00 0.00 0.00 4k caloROlogical - 0.00 0.00 0.00 2k caloROphiDivisionLogical + 0.00 0.00 0.00 3k caloROlogical + 0.00 0.00 0.00 1k caloROphiDivisionLogical Voxelisation: top memory users: Percent Memory Heads Nodes Pointers Total CPU Volume ------- -------- ------ ------ -------- ---------- ---------- - 38.84 4k 1 48 48 0.00 caloROlogical - 32.74 3k 6 33 48 0.00 expHall_L - 16.73 1k 1 20 20 0.00 caloROphiDivisionLogical - 8.26 0k 1 9 12 0.00 caloT_L - 3.45 0k 1 3 5 0.00 trackerT_L + 38.29 2k 1 48 48 0.00 caloROlogical + 33.30 2k 6 33 48 0.00 expHall_L + 16.54 1k 1 20 20 0.00 caloROphiDivisionLogical + 8.32 0k 1 9 12 0.00 caloT_L + 3.55 0k 1 3 5 0.00 trackerT_L G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. ### Run 0 start. G4HEPEvtInterface - reading 484 HEPEvt particles from pythia_event.data. >>> Event 0 - 36 hits are stored in RE05TrackerHitsCollection. - 46 hits are stored in RE05CalorimeterHitsCollection. - Total energy deposition in calorimeter : 7.0167843058339 (GeV) + 39 hits are stored in RE05TrackerHitsCollection. + 41 hits are stored in RE05CalorimeterHitsCollection. + Total energy deposition in calorimeter : 5.5873690545693 (GeV) 1 hits are stored in RE05MuonHitsCollection. G4HEPEvtInterface - reading 755 HEPEvt particles from pythia_event.data. >>> Event 1 @@ -860,19 +905,43 @@ G4HEPEvtInterface - reading 448 HEPEvt particles from pythia_event.data. >>> Event 3 0 hits are stored in RE05TrackerHitsCollection. 3 hits are stored in RE05CalorimeterHitsCollection. - Total energy deposition in calorimeter : 0.52584297308065 (GeV) + Total energy deposition in calorimeter : 0.52996999970149 (GeV) 0 hits are stored in RE05MuonHitsCollection. G4HEPEvtInterface - reading 945 HEPEvt particles from pythia_event.data. >>> Event 4 - 101 hits are stored in RE05TrackerHitsCollection. - 70 hits are stored in RE05CalorimeterHitsCollection. - Total energy deposition in calorimeter : 11.670916435228 (GeV) + 97 hits are stored in RE05TrackerHitsCollection. + 66 hits are stored in RE05CalorimeterHitsCollection. + Total energy deposition in calorimeter : 12.008245159804 (GeV) 1 hits are stored in RE05MuonHitsCollection. G4HEPEvtInterface - reading 837 HEPEvt particles from pythia_event.data. + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000577888008e-07 mm long + and its vector is (5.675065040122718e-08,-5.951574166829232e-08,5.689685167453717e-08) mm + Endpoint of ComputeStep() was (-1163.120810724368,1748.47075468823,284.9755530495673) + and current position to locate is (-1163.120810667618,1748.470754628714,284.9755531064642) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.00000024294349e-07 mm long + and its vector is (7.538380941696232e-08,-6.54800373922626e-08,-5.445258466352243e-09) mm + Endpoint of ComputeStep() was (-566.957892777153,151.9159095573704,802.8230326802734) + and current position to locate is (-566.9578927017692,151.9159094918904,802.8230326748281) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + >>> Event 5 - 36 hits are stored in RE05TrackerHitsCollection. - 7 hits are stored in RE05CalorimeterHitsCollection. - Total energy deposition in calorimeter : 2.9125322797515 (GeV) + 173 hits are stored in RE05TrackerHitsCollection. + 64 hits are stored in RE05CalorimeterHitsCollection. + Total energy deposition in calorimeter : 8.9935894733682 (GeV) 1 hits are stored in RE05MuonHitsCollection. G4HEPEvtInterface - reading 603 HEPEvt particles from pythia_event.data. >>> Event 6 @@ -882,26 +951,53 @@ G4HEPEvtInterface - reading 603 HEPEvt particles from pythia_event.data. 0 hits are stored in RE05MuonHitsCollection. G4HEPEvtInterface - reading 627 HEPEvt particles from pythia_event.data. >>> Event 7 - 47 hits are stored in RE05TrackerHitsCollection. - 26 hits are stored in RE05CalorimeterHitsCollection. - Total energy deposition in calorimeter : 6.2066663803489 (GeV) + 33 hits are stored in RE05TrackerHitsCollection. + 33 hits are stored in RE05CalorimeterHitsCollection. + Total energy deposition in calorimeter : 8.2827726242516 (GeV) 1 hits are stored in RE05MuonHitsCollection. G4HEPEvtInterface - reading 682 HEPEvt particles from pythia_event.data. + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000519838055e-07 mm long + and its vector is (9.724681149236858e-08,-4.401954356580973e-10,2.329966264369432e-08) mm + Endpoint of ComputeStep() was (-1321.909282173135,-2293.43348178148,552.2918822484413) + and current position to locate is (-1321.909282075888,-2293.43348178192,552.291882271741) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + >>> Event 8 - 50 hits are stored in RE05TrackerHitsCollection. - 54 hits are stored in RE05CalorimeterHitsCollection. - Total energy deposition in calorimeter : 8.8104397653849 (GeV) + 81 hits are stored in RE05TrackerHitsCollection. + 43 hits are stored in RE05CalorimeterHitsCollection. + Total energy deposition in calorimeter : 8.9783484008544 (GeV) 1 hits are stored in RE05MuonHitsCollection. G4HEPEvtInterface - reading 330 HEPEvt particles from pythia_event.data. + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999996106638701e-08 mm long + and its vector is (6.064738045097329e-09,8.873485057847574e-08,4.570927103486611e-08) mm + Endpoint of ComputeStep() was (1043.658858514701,-1077.393237041303,-433.9449361501453) + and current position to locate is (1043.658858520766,-1077.393236952568,-433.944936104436) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + >>> Event 9 - 99 hits are stored in RE05TrackerHitsCollection. + 64 hits are stored in RE05TrackerHitsCollection. 29 hits are stored in RE05CalorimeterHitsCollection. - Total energy deposition in calorimeter : 6.503973802801 (GeV) + Total energy deposition in calorimeter : 6.0376000874489 (GeV) 1 hits are stored in RE05MuonHitsCollection. Run terminated. Run Summary Number of events processed : 10 - User=2.330000s Real=2.526213s Sys=0.020000s + User=2.110000s Real=2.170333s Sys=0.000000s +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # Graphics systems deleted. Visualization Manager deleting... @@ -916,9 +1012,9 @@ G4SDManager deleted. EventManager deleted. Units table cleared. TransportationManager deleted. -Total navigation history collections cleaned: 410 +Total navigation history collections cleaned: 414 ================== Deleting memory pools =================== -Pool ID '20G4NavigationLevelRep', size : 0.672 MB +Pool ID '20G4NavigationLevelRep', size : 0.679 MB Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB Pool ID '7G4Event', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.13 MB @@ -926,20 +1022,20 @@ Pool ID '16G4HEPEvtParticle', size : 0.0221 MB Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '15G4HCofThisEvent', size : 0.000961 MB Pool ID '16G4HitsCollection', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.695 MB -Pool ID '7G4Track', size : 1.19 MB -Pool ID '18G4TouchableHistory', size : 0.049 MB +Pool ID '17G4DynamicParticle', size : 0.674 MB +Pool ID '7G4Track', size : 1.14 MB +Pool ID '18G4TouchableHistory', size : 0.05 MB Pool ID '15G4CountedObjectIvE', size : 0.00673 MB Pool ID '12G4Trajectory', size : 0.0279 MB -Pool ID '17G4TrajectoryPoint', size : 0.164 MB -Pool ID '14RE05TrackerHit', size : 0.00481 MB +Pool ID '17G4TrajectoryPoint', size : 0.152 MB +Pool ID '14RE05TrackerHit', size : 0.00673 MB Pool ID '18RE05CalorimeterHit', size : 0.00961 MB Pool ID '11RE05MuonHit', size : 0.000961 MB Pool ID '21G4TrajectoryContainer', size : 0.000961 MB -Pool ID '10G4Fragment', size : 0.00577 MB +Pool ID '10G4Fragment', size : 0.00769 MB Pool ID '17G4ReactionProduct', size : 0.0106 MB Number of memory pools allocated: 20 of which, static: 0 -Dynamic pools deleted: 20 / Total memory freed: 3 MB +Dynamic pools deleted: 20 / Total memory freed: 2.9 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/extended/runAndEvent/RE06/CMakeLists.txt b/examples/extended/runAndEvent/RE06/CMakeLists.txt index e1ce6004d3..4fce100b66 100644 --- a/examples/extended/runAndEvent/RE06/CMakeLists.txt +++ b/examples/extended/runAndEvent/RE06/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(RE06) #---------------------------------------------------------------------------- diff --git a/examples/extended/runAndEvent/RE06/History b/examples/extended/runAndEvent/RE06/History index ceef0ce731..2c187e68ab 100644 --- a/examples/extended/runAndEvent/RE06/History +++ b/examples/extended/runAndEvent/RE06/History @@ -16,6 +16,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Nov. 11, 2020 M. Asai (exampleRE06-V10-06-02) +- Migration to G4RunManagerFactory. + May 11, 2018 J. Allison (exampleRE06-V10-04-01) - Remove G4UI_USE and G4VIS_USE. - Move instantiation of G4UIExecutive to start of main. diff --git a/examples/extended/runAndEvent/RE06/exampleRE06.cc b/examples/extended/runAndEvent/RE06/exampleRE06.cc index 4d0befe3ca..0488495040 100644 --- a/examples/extended/runAndEvent/RE06/exampleRE06.cc +++ b/examples/extended/runAndEvent/RE06/exampleRE06.cc @@ -33,11 +33,7 @@ #include "G4Types.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4VisExecutive.hh" #include "G4UIExecutive.hh" @@ -63,27 +59,26 @@ int main(int argc,char** argv) } // Construct the stepping verbose class - RE06SteppingVerbose* verbosity = new RE06SteppingVerbose; + auto verbosity = new RE06SteppingVerbose; G4VSteppingVerbose::SetInstance(verbosity); // Construct the run manager // -#ifdef G4MULTITHREADED - G4MTRunManager * runManager = new G4MTRunManager; - runManager->SetNumberOfThreads(4); - runManager->SetUserInitialization(new RE06WorkerInitialization); -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto runManager = G4RunManagerFactory::CreateRunManager(); + if(runManager->GetRunManagerType() == G4RunManager::masterRM) + { + runManager->SetNumberOfThreads(4); + runManager->SetUserInitialization(new RE06WorkerInitialization); + } // Set mandatory initialization classes // G4String parallelWorldName = "ParallelScoringWorld"; - G4VUserDetectorConstruction* detector = new RE06DetectorConstruction; + auto detector = new RE06DetectorConstruction; detector->RegisterParallelWorld(new RE06ParallelWorld(parallelWorldName)); runManager->SetUserInitialization(detector); // - G4VModularPhysicsList* physics = new FTFP_BERT; + auto physics = new FTFP_BERT; physics->RegisterPhysics(new G4ParallelWorldPhysics(parallelWorldName)); runManager->SetUserInitialization(physics); @@ -93,7 +88,7 @@ int main(int argc,char** argv) // Visualization manager // - G4VisManager* visManager = new G4VisExecutive; + auto visManager = new G4VisExecutive; visManager->Initialize(); // Initialize G4 kernel @@ -102,7 +97,7 @@ int main(int argc,char** argv) // Get the pointer to the User Interface manager // - G4UImanager* UImanager = G4UImanager::GetUIpointer(); + auto UImanager = G4UImanager::GetUIpointer(); if (ui) // Define UI session for interactive mode { diff --git a/examples/extended/runAndEvent/RE06/exampleRE06.out b/examples/extended/runAndEvent/RE06/exampleRE06.out index 2a94f5481f..29787bd680 100644 --- a/examples/extended/runAndEvent/RE06/exampleRE06.out +++ b/examples/extended/runAndEvent/RE06/exampleRE06.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -28,10 +29,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -150,7 +153,7 @@ New sensitive detector is registered at / New sensitive detector is registered at / --- G4CoupledTransportation is used - FTFP_BERT : new threshold between BERT and FTFP is over the interval + hInelastic FTFP_BERT : threshold between BERT and FTFP is over the interval for pions : 3 to 6 GeV for kaons : 3 to 6 GeV for proton : 3 to 6 GeV @@ -235,10 +238,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -262,10 +266,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -293,9 +298,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -309,14 +314,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -325,9 +330,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -339,9 +344,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -352,9 +357,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -368,14 +373,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -384,9 +389,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -400,14 +405,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -416,9 +421,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -432,14 +437,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -448,9 +453,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -465,14 +470,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -481,9 +486,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -498,14 +503,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -514,9 +519,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -530,14 +535,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -546,9 +551,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -562,14 +567,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -598,6 +603,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -672,6 +699,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -783,8 +823,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: lambdaInelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -849,8 +889,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: sigma-Inelastic - Model: BertiniCascade: 0 eV ---> 6 GeV Model: FTFP: 3 GeV ---> 100 TeV + Model: BertiniCascade: 0 eV ---> 6 GeV Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -868,6 +908,7 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Cr_sctns: Glauber-Gribov Nucl-nucl: 0 eV ---> 25.6 PeV ================================================================ +### G4LevelReader: broken transition 0 from level 24 to 24 for isotope Z= 89 A= 219 - use ground level ======================================================================= ====== Pre-compound/De-excitation Physics Parameters ======== ======================================================================= @@ -891,7 +932,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= ========= Table of registered couples ============================ @@ -906,42 +946,42 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Lead Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 101.981 keV e- 1.36213 MeV e+ 1.28245 MeV proton 100 keV + Energy thresholds : gamma 101.843 keV e- 1.36749 MeV e+ 1.27862 MeV proton 100 keV Region(s) which use this couple : Calor-A Index : 2 used in the geometry : Yes Material : liquidArgon Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.2036 keV e- 345.078 keV e+ 335.956 keV proton 100 keV + Energy thresholds : gamma 6.19986 keV e- 344.855 keV e+ 333.46 keV proton 100 keV Region(s) which use this couple : Calor-A Index : 3 used in the geometry : Yes Material : Lead Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 101.981 keV e- 1.36213 MeV e+ 1.28245 MeV proton 100 keV + Energy thresholds : gamma 101.843 keV e- 1.36749 MeV e+ 1.27862 MeV proton 100 keV Region(s) which use this couple : Calor-B Index : 4 used in the geometry : Yes Material : liquidArgon Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.2036 keV e- 345.078 keV e+ 335.956 keV proton 100 keV + Energy thresholds : gamma 6.19986 keV e- 344.855 keV e+ 333.46 keV proton 100 keV Region(s) which use this couple : Calor-B Index : 5 used in the geometry : Yes Material : Lead Range cuts : gamma 10 cm e- 10 cm e+ 10 cm proton 10 cm - Energy thresholds : gamma 2.16235 MeV e- 435.198 MeV e+ 407.004 MeV proton 10 MeV + Energy thresholds : gamma 2.21848 MeV e- 430.674 MeV e+ 408.132 MeV proton 10 MeV Region(s) which use this couple : Calor-C Index : 6 used in the geometry : Yes Material : liquidArgon Range cuts : gamma 10 cm e- 10 cm e+ 10 cm proton 10 cm - Energy thresholds : gamma 56.5645 keV e- 24.104 MeV e+ 22.8465 MeV proton 10 MeV + Energy thresholds : gamma 56.567 keV e- 24.5965 MeV e+ 22.6909 MeV proton 10 MeV Region(s) which use this couple : Calor-C @@ -950,10 +990,22 @@ Index : 6 used in the geometry : Yes G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. ### Run 0 starts. + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 1.000000104392427e-07 mm long + and its vector is (-5.213210840793181e-08,-7.651038913536468e-09,-8.499239356751787e-08) mm + Endpoint of ComputeStep() was (83.3919030568983,93.11707960770973,171.8319468737149) + and current position to locate is (83.39190300476619,93.11707960005869,171.8319467887225) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + Run terminated. Run Summary Number of events processed : 10 - User=1.860000s Real=2.143675s Sys=0.250000s + User=2.960000s Real=3.894562s Sys=0.920000s ############################################################ Run Summary - Number of events : 10 ############################################################ @@ -961,125 +1013,128 @@ Region : Calor-A Production thresholds : gamma 1 mm e- 1 mm e+ 1 mm Energy deposition in an event : - Absorber 2.47498 GeV Gap 318.088 MeV + Absorber 4.43587 GeV Gap 504.417 MeV Number of secondaries in an event : - gamma in Absorber 579 in Gap 40.5 - e- in Absorber 1003.9 in Gap 113.3 - e+ in Absorber 60.1 in Gap 2.5 + gamma in Absorber 1685 in Gap 102.8 + e- in Absorber 2766.6 in Gap 271.7 + e+ in Absorber 177.1 in Gap 5.6 Minimum kinetic energy of generated secondaries : - gamma in Absorber 64.797 keV in Gap 6.23616 keV - e- in Absorber 315.943 eV in Gap 137.652 eV - e+ in Absorber 13.7397 keV in Gap 84.8247 keV + gamma in Absorber 9.00331 keV in Gap 6.2217 keV + e- in Absorber 20.0212 eV in Gap 115.966 eV + e+ in Absorber 5.74975 keV in Gap 413.187 keV Total track length of e+/e- in an event : - Absorber 80.5213 cm Gap 59.2501 cm + Absorber 2.20487 m Gap 1.50111 m Total number of steps of e+/e- in an event : - Absorber 2567.6 Gap 424.3 + Absorber 7064.1 Gap 990.3 ------------------------------------------------------------ Scores in parallel geometry layer eDep/evt nGamma/evt nElec/evt nPosi/evt stpLen/evt nStep/evt - 0 2613.97 554.6 838.9 50.9 1212.71 2347.2 - 1 111.218 42.6 158.6 7.4 122.89 388.1 - 2 37.0644 12.9 59.9 2.2 36.546 131.3 - 3 13.1975 3.9 25.9 1.1 11.4123 51.5 - 4 7.43559 2.5 13.5 0.5 6.0439 34.9 - 5 4.72472 1.1 9.8 0.3 4.00163 19.5 - 6 2.73607 0.7 5.5 0 1.81376 10 - 7 0.988885 0.2 2 0 0.618383 3.1 - 8 1.32954 0.9 2.2 0.2 1.04325 4.7 - 9 0.185896 0 0.3 0 0.468863 0.7 - 10 0.161718 0.1 0.2 0 0.124388 0.4 - 11 0.031424 0 0.4 0 0.0439156 0.5 - 12 0.00496012 0 0 0 0 0 - 13 0.00346085 0 0 0 0 0 - 14 0.00419352 0 0 0 0 0 - 15 0.00470482 0 0 0 0 0 - 16 0.00383988 0 0 0 0 0 - 17 0.000616226 0 0 0 0 0 - 18 0.000411879 0 0 0 0 0 - 19 0.000783705 0 0 0 0 0 + 0 4491.98 1631.2 2303.3 156 3228.95 6394.8 + 1 264.647 93 403.6 15.5 286.284 934 + 2 103.036 36.9 168.2 6.5 106.467 372.3 + 3 36.9262 12.2 70.6 2.1 34.5277 160.1 + 4 21.0846 8 41.9 1.1 24.8054 89.4 + 5 10.1768 3.3 20.8 0.7 12.1464 43.7 + 6 4.42125 1.3 10.4 0.4 3.44045 22.2 + 7 3.79551 0.9 8.3 0.2 4.62593 15.8 + 8 0.555822 0 1.9 0 0.488952 3.6 + 9 2.05235 0.4 4.1 0.1 2.88859 9 + 10 0.547628 0.3 2.3 0.1 0.358225 3.5 + 11 0.364819 0 0.7 0 0.22758 1.3 + 12 0.167427 0.1 0.5 0 0.123475 0.8 + 13 0.187509 0 0.4 0 0.273542 0.7 + 14 0.104266 0 0.7 0 0.0766043 1.7 + 15 0.0131959 0 0.1 0 0.0115123 0.1 + 16 0.138088 0.2 0.3 0 0.272009 0.6 + 17 0.0115986 0 0 0 0 0 + 18 0.0305232 0 0.1 0 0.00390922 0.2 + 19 0.0062248 0 0 0 0 0 ############################################################ Region : Calor-B Production thresholds : gamma 1 mm e- 1 mm e+ 1 mm Energy deposition in an event : - Absorber 2.55814 GeV Gap 322.87 MeV + Absorber 8.07109 GeV Gap 818.597 MeV Number of secondaries in an event : - gamma in Absorber 628 in Gap 40.3 - e- in Absorber 1067.2 in Gap 120.4 - e+ in Absorber 62.7 in Gap 1.9 + gamma in Absorber 3710.5 in Gap 198.4 + e- in Absorber 6055.3 in Gap 545 + e+ in Absorber 403.5 in Gap 15.2 Minimum kinetic energy of generated secondaries : - gamma in Absorber 102.001 keV in Gap 6.2758 keV - e- in Absorber 41.9311 eV in Gap 143.117 eV - e+ in Absorber 17.6837 keV in Gap 26.8548 keV + gamma in Absorber 2.74673 keV in Gap 6.21823 keV + e- in Absorber 111.947 eV in Gap 106.607 eV + e+ in Absorber 581.227 eV in Gap 60.8976 keV Total track length of e+/e- in an event : - Absorber 87.0509 cm Gap 61.6464 cm + Absorber 4.79478 m Gap 3.02348 m Total number of steps of e+/e- in an event : - Absorber 2702.7 Gap 446 + Absorber 15363.9 Gap 1977.7 ------------------------------------------------------------ Scores in parallel geometry layer eDep/evt nGamma/evt nElec/evt nPosi/evt stpLen/evt nStep/evt - 0 2714.9 609.6 916.9 53.6 1320.72 2563.9 - 1 90.9737 32 141.3 6 94.8626 313 - 2 43.197 17.2 65.4 3 42.0115 147.7 - 3 16.0667 5.2 30.7 1.1 13.9336 61.7 - 4 7.14118 2.4 13.2 0.6 7.87823 27.8 - 5 3.6272 1 7.6 0.1 2.6978 14 - 6 1.98037 0.4 4.1 0 1.65947 7 - 7 1.39509 0.4 4.3 0.2 0.99658 7.3 - 8 0.988822 0 1.6 0 1.27968 2.7 - 9 0.367284 0.1 1.1 0 0.489457 1.7 - 10 0.0335208 0 0.5 0 0.0368711 0.6 - 11 0.0055684 0 0.2 0 0.00323506 0.2 - 12 0.038571 0 0.1 0 0.0206475 0.2 - 13 0.0706885 0 0.2 0 0.250409 0.3 - 14 0.0959385 0 0.1 0 0.0615032 0.2 - 15 0.0384847 0 0.1 0 0.0211852 0.1 - 16 0.0873248 0 0.2 0 0.0465994 0.3 - 17 0 0 0 0 0 0 - 18 6.10194e-05 0 0 0 0 0 - 19 3.40216e-05 0 0 0 0 0 + 0 7843.15 3543.5 4932.6 354.3 6717.89 13537.8 + 1 632.77 231 929.3 39.9 675.526 2160.9 + 2 209.733 70.8 356.2 13.4 218.75 796.9 + 3 101.463 33.5 183.9 6 101.41 396.6 + 4 44.453 13.1 83.2 2.1 45.5553 190.4 + 5 21.8313 6.1 41.9 1.1 23.1889 94.9 + 6 13.0095 3.7 27 0.5 12.7703 61.6 + 7 10.0581 2.5 18.6 0.5 9.45506 38.7 + 8 3.74117 1.1 9.5 0.1 2.50037 22.9 + 9 1.59437 0.2 3.3 0 2.66126 10.2 + 10 3.37795 1.4 5.9 0.4 3.84785 12.4 + 11 1.18221 0.5 2.9 0.2 0.646066 5 + 12 0.684727 0.2 1.7 0 0.357724 3.5 + 13 0.545438 0.5 1.4 0.1 0.298633 2.3 + 14 0.0316898 0 0 0 0 0 + 15 0.296257 0.2 0.5 0 0.312264 1 + 16 0.520568 0.3 0.8 0.1 0.453846 2.2 + 17 1.03916 0.3 0.7 0 2.56538 3 + 18 0.118866 0 0.7 0 0.0453215 0.9 + 19 0.0749616 0 0.2 0 0.0249385 0.4 ############################################################ Region : Calor-C Production thresholds : gamma 10 cm e- 10 cm e+ 10 cm Energy deposition in an event : - Absorber 2.58858 GeV Gap 277.994 MeV + Absorber 2.66707 GeV Gap 273.21 MeV Number of secondaries in an event : - gamma in Absorber 96.8 in Gap 10 - e- in Absorber 173.2 in Gap 14.6 - e+ in Absorber 27.3 in Gap 0.7 + gamma in Absorber 116 in Gap 7.5 + e- in Absorber 192.6 in Gap 13.5 + e+ in Absorber 32.1 in Gap 1.4 Minimum kinetic energy of generated secondaries : - gamma in Absorber 343.593 keV in Gap 64.6743 keV - e- in Absorber 198.439 eV in Gap 4.1544 keV - e+ in Absorber 23.3832 keV in Gap 1.09768 MeV + gamma in Absorber 308.413 keV in Gap 60.1991 keV + e- in Absorber 800.633 eV in Gap 456.465 eV + e+ in Absorber 25.1495 keV in Gap 440.13 keV Total track length of e+/e- in an event : - Absorber 29.0436 cm Gap 17.765 cm + Absorber 32.2536 cm Gap 15.5898 cm Total number of steps of e+/e- in an event : - Absorber 498.4 Gap 80.9 + Absorber 573.9 Gap 65.1 ------------------------------------------------------------ Scores in parallel geometry layer eDep/evt nGamma/evt nElec/evt nPosi/evt stpLen/evt nStep/evt - 0 2814.24 99.2 132.1 24.9 413.182 448.4 - 1 35.7464 5.2 31.8 2.1 39.6011 73.5 - 2 9.2578 2 11.9 0.8 10.0085 30.6 - 3 2.82053 0 4.3 0 2.31551 9.7 - 4 2.65052 0.2 3.6 0.1 1.701 6.6 - 5 1.04155 0.2 1.9 0.1 0.644755 2.9 - 6 0.214261 0 0.7 0 0.15591 3.2 - 7 0.142268 0 0.3 0 0.10316 0.5 - 8 0.224295 0 0.8 0 0.121504 1.1 - 9 0 0 0 0 0 0 - 10 0 0 0 0 0 0 - 11 0.0848185 0 0.2 0 0.159834 2.5 - 12 0 0 0 0 0 0 - 13 0.148947 0 0.2 0 0.0924901 0.3 - 14 0 0 0 0 0 0 - 15 0 0 0 0 0 0 - 16 0 0 0 0 0 0 - 17 0 0 0 0 0 0 - 18 0 0 0 0 0 0 - 19 0 0 0 0 0 0 + 0 2881.66 111.7 150.1 28.7 426.271 502.8 + 1 33.7774 7 30.3 2.7 31.2391 78.8 + 2 10.3389 1.6 11 0.6 8.46568 24.8 + 3 6.95357 1.9 6.1 0.9 5.48335 13.9 + 4 1.88723 0.1 2.9 0 1.82768 4.5 + 5 1.29438 0.2 1 0.1 1.55566 4.1 + 6 1.82402 0.4 2.2 0.2 1.6479 4.9 + 7 1.83945 0.6 1.7 0.3 1.19807 3.6 + 8 0.371478 0 0.4 0 0.618158 1 + 9 0.152308 0 0.3 0 0.0784705 0.4 + 10 0.0199942 0 0 0 0 0 + 11 0.0153169 0 0 0 0 0 + 12 0.012844 0 0 0 0 0 + 13 0.0465356 0 0.1 0 0.0483269 0.2 + 14 0.00889724 0 0 0 0 0 + 15 0.0215468 0 0 0 0 0 + 16 0.00968942 0 0 0 0 0 + 17 0.00858624 0 0 0 0 0 + 18 0.0204254 0 0 0 0 0 + 19 0.0110901 0 0 0 0 0 ############################################################ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /run/dumpCouples ========= Table of registered couples ============================ @@ -1094,42 +1149,42 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Lead Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 101.981 keV e- 1.36213 MeV e+ 1.28245 MeV proton 100 keV + Energy thresholds : gamma 101.843 keV e- 1.36749 MeV e+ 1.27862 MeV proton 100 keV Region(s) which use this couple : Calor-A Index : 2 used in the geometry : Yes Material : liquidArgon Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.2036 keV e- 345.078 keV e+ 335.956 keV proton 100 keV + Energy thresholds : gamma 6.19986 keV e- 344.855 keV e+ 333.46 keV proton 100 keV Region(s) which use this couple : Calor-A Index : 3 used in the geometry : Yes Material : Lead Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 101.981 keV e- 1.36213 MeV e+ 1.28245 MeV proton 100 keV + Energy thresholds : gamma 101.843 keV e- 1.36749 MeV e+ 1.27862 MeV proton 100 keV Region(s) which use this couple : Calor-B Index : 4 used in the geometry : Yes Material : liquidArgon Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.2036 keV e- 345.078 keV e+ 335.956 keV proton 100 keV + Energy thresholds : gamma 6.19986 keV e- 344.855 keV e+ 333.46 keV proton 100 keV Region(s) which use this couple : Calor-B Index : 5 used in the geometry : Yes Material : Lead Range cuts : gamma 10 cm e- 10 cm e+ 10 cm proton 10 cm - Energy thresholds : gamma 2.16235 MeV e- 435.198 MeV e+ 407.004 MeV proton 10 MeV + Energy thresholds : gamma 2.21848 MeV e- 430.674 MeV e+ 408.132 MeV proton 10 MeV Region(s) which use this couple : Calor-C Index : 6 used in the geometry : Yes Material : liquidArgon Range cuts : gamma 10 cm e- 10 cm e+ 10 cm proton 10 cm - Energy thresholds : gamma 56.5645 keV e- 24.104 MeV e+ 22.8465 MeV proton 10 MeV + Energy thresholds : gamma 56.567 keV e- 24.5965 MeV e+ 22.6909 MeV proton 10 MeV Region(s) which use this couple : Calor-C @@ -1202,10 +1257,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1229,10 +1285,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1260,9 +1317,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1276,14 +1333,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1292,9 +1349,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1306,9 +1363,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1319,9 +1376,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1335,14 +1392,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1351,9 +1408,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1367,14 +1424,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1383,9 +1440,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1399,14 +1456,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -1415,9 +1472,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1432,14 +1489,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1448,9 +1505,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1465,14 +1522,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -1481,9 +1538,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1497,14 +1554,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1513,9 +1570,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1529,14 +1586,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -1556,52 +1613,64 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Lead Range cuts : gamma 200 um e- 200 um e+ 200 um proton 200 um - Energy thresholds : gamma 47.5243 keV e- 384.112 keV e+ 368.982 keV proton 20 keV + Energy thresholds : gamma 47.1807 keV e- 384 keV e+ 371.312 keV proton 20 keV Region(s) which use this couple : Calor-A Index : 2 used in the geometry : Yes Material : liquidArgon Range cuts : gamma 200 um e- 200 um e+ 200 um proton 200 um - Energy thresholds : gamma 2.81453 keV e- 124.676 keV e+ 122.195 keV proton 20 keV + Energy thresholds : gamma 2.80544 keV e- 124.173 keV e+ 122.515 keV proton 20 keV Region(s) which use this couple : Calor-A Index : 3 used in the geometry : Yes Material : Lead Range cuts : gamma 2 mm e- 2 mm e+ 2 mm proton 2 mm - Energy thresholds : gamma 120.569 keV e- 2.64356 MeV e+ 2.4394 MeV proton 200 keV + Energy thresholds : gamma 120.879 keV e- 2.64203 MeV e+ 2.43733 MeV proton 200 keV Region(s) which use this couple : Calor-B Index : 4 used in the geometry : Yes Material : liquidArgon Range cuts : gamma 2 mm e- 2 mm e+ 2 mm proton 2 mm - Energy thresholds : gamma 8.67127 keV e- 566.458 keV e+ 544.145 keV proton 200 keV + Energy thresholds : gamma 8.73423 keV e- 567.027 keV e+ 540.972 keV proton 200 keV Region(s) which use this couple : Calor-B Index : 5 used in the geometry : Yes Material : Lead Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 419.056 keV e- 35.0737 MeV e+ 32.8015 MeV proton 2 MeV + Energy thresholds : gamma 419.056 keV e- 35.1199 MeV e+ 32.6175 MeV proton 2 MeV Region(s) which use this couple : Calor-C Index : 6 used in the geometry : Yes Material : liquidArgon Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 27.0755 keV e- 4.28176 MeV e+ 3.95109 MeV proton 2 MeV + Energy thresholds : gamma 27.0103 keV e- 4.22893 MeV e+ 4.00759 MeV proton 2 MeV Region(s) which use this couple : Calor-C ================================================================== ### Run 1 starts. + +-------- WWWW ------- G4Exception-START -------- WWWW ------- +*** G4Exception : GeomNav1002 + issued by : G4PathFinder::ReportMove() +Endpoint moved between value returned by ComputeStep() and call to Locate(). + Change of (End) Position / G4PathFinder::Locate is 9.999999412635185e-08 mm long + and its vector is (7.201541052381799e-08,5.186575435800478e-08,4.608386916515883e-08) mm + Endpoint of ComputeStep() was (219.610920127925,595.5448876886242,677.2330077479897) + and current position to locate is (219.6109201999404,595.5448877404899,677.2330077940736) +*** This is just a warning message. *** +-------- WWWW -------- G4Exception-END --------- WWWW ------- + Run terminated. Run Summary Number of events processed : 10 - User=3.350000s Real=3.774915s Sys=0.400000s + User=2.200000s Real=2.923150s Sys=0.700000s ############################################################ Run Summary - Number of events : 10 ############################################################ @@ -1609,125 +1678,128 @@ Region : Calor-A Production thresholds : gamma 200 um e- 200 um e+ 200 um Energy deposition in an event : - Absorber 3.10442 GeV Gap 391.446 MeV + Absorber 2.42478 GeV Gap 324.286 MeV Number of secondaries in an event : - gamma in Absorber 1218.7 in Gap 74.1 - e- in Absorber 2088.9 in Gap 276.2 - e+ in Absorber 97.2 in Gap 2.5 + gamma in Absorber 741.1 in Gap 46.4 + e- in Absorber 1339.4 in Gap 203.7 + e+ in Absorber 57.3 in Gap 1.4 Minimum kinetic energy of generated secondaries : - gamma in Absorber 16.4041 keV in Gap 2.86913 keV - e- in Absorber 49.0999 eV in Gap 11.3814 eV - e+ in Absorber 19.2866 keV in Gap 357.345 keV + gamma in Absorber 47.2188 keV in Gap 2.81224 keV + e- in Absorber 103.175 eV in Gap 59.588 eV + e+ in Absorber 36.8306 keV in Gap 25.5663 keV Total track length of e+/e- in an event : - Absorber 1.35502 m Gap 99.3046 cm + Absorber 85.4262 cm Gap 65.4283 cm Total number of steps of e+/e- in an event : - Absorber 5169.3 Gap 821.7 + Absorber 3276.5 Gap 571.1 ------------------------------------------------------------ Scores in parallel geometry layer eDep/evt nGamma/evt nElec/evt nPosi/evt stpLen/evt nStep/evt - 0 3225.22 1160.8 1881 83.4 2034.61 4876.4 - 1 164.828 86.3 275.4 10.4 203.46 642.8 - 2 54.8344 24 105.4 3.4 61.5456 234 - 3 25.7425 11.8 51.7 1.4 22.3917 118.9 - 4 9.07932 3 19.1 0.3 7.25287 38.2 - 5 4.61807 1.1 10.4 0.2 3.89967 21.4 - 6 3.47962 2 7.4 0.3 3.06819 17.6 - 7 2.04332 1 4 0.1 2.48832 10.4 - 8 2.3316 0.9 3.2 0.2 4.84392 8.5 - 9 2.4102 1.3 3.3 0 3.44616 12.8 - 10 0.259161 0.1 0.9 0 0.315867 1.6 - 11 0.301433 0.1 1.3 0 0.207995 1.8 - 12 0.373011 0.1 0.9 0 0.342811 2.8 - 13 0.00691118 0 0 0 0 0 - 14 0.0802095 0 0.2 0 0.0660399 2.3 - 15 0.170302 0 0.2 0 0.0949273 0.5 - 16 0.00229379 0 0 0 0 0 - 17 0.00533997 0 0 0 0 0 - 18 0.023843 0.3 0.2 0 0.0018159 0.3 - 19 0.0215232 0 0.2 0 0.00295157 0.3 + 0 2583.09 704.4 1248.4 47.3 1332.62 3168.6 + 1 94.9038 50 156.8 6.8 103.654 370.5 + 2 38.3927 20.1 70.6 2.7 37.0368 154.1 + 3 15.7622 6.6 31.3 0.7 18.7543 77 + 4 4.80232 1.9 11.9 0.4 3.79935 24.2 + 5 6.62972 2.6 10.6 0.5 6.66358 23 + 6 1.40749 0.4 3.5 0.1 1.17374 5.7 + 7 2.27551 1 4.1 0.1 3.06341 15 + 8 0.22437 0 1.5 0 0.499936 2.4 + 9 0.775766 0.1 1.6 0 0.69196 2.5 + 10 0.275913 0.1 1.3 0 0.131103 2 + 11 0.137835 0 0.7 0 0.0679576 0.9 + 12 0.225623 0 0.3 0 0.333164 0.6 + 13 0.151666 0.3 0.5 0.1 0.0572808 1.1 + 14 0.000235885 0 0 0 0 0 + 15 0.000151527 0 0 0 0 0 + 16 0.000524899 0 0 0 0 0 + 17 0.000600616 0 0 0 0 0 + 18 0.000239397 0 0 0 0 0 + 19 9.79842e-05 0 0 0 0 0 ############################################################ Region : Calor-B Production thresholds : gamma 2 mm e- 2 mm e+ 2 mm Energy deposition in an event : - Absorber 3.02577 GeV Gap 345.312 MeV + Absorber 6.66936 GeV Gap 702.687 MeV Number of secondaries in an event : - gamma in Absorber 833 in Gap 39.9 - e- in Absorber 1396.1 in Gap 128.1 - e+ in Absorber 92.3 in Gap 2.6 + gamma in Absorber 2754.5 in Gap 148.7 + e- in Absorber 4534.3 in Gap 405.8 + e+ in Absorber 318.8 in Gap 10.4 Minimum kinetic energy of generated secondaries : - gamma in Absorber 11.4899 keV in Gap 8.70259 keV - e- in Absorber 306.039 eV in Gap 194.659 eV - e+ in Absorber 592.364 eV in Gap 176.52 keV + gamma in Absorber 21.3 keV in Gap 8.75934 keV + e- in Absorber 79.6174 eV in Gap 100.376 eV + e+ in Absorber 11.1119 keV in Gap 336.144 keV Total track length of e+/e- in an event : - Absorber 1.14126 m Gap 69.3716 cm + Absorber 3.69869 m Gap 2.42349 m Total number of steps of e+/e- in an event : - Absorber 3498.4 Gap 469.4 + Absorber 11518.3 Gap 1523.7 ------------------------------------------------------------ Scores in parallel geometry layer eDep/evt nGamma/evt nElec/evt nPosi/evt stpLen/evt nStep/evt - 0 3115.76 787.7 1124.3 78.5 1564.21 3069 - 1 157.517 58.7 224.8 10.8 173.327 513.6 - 2 48.1515 12.1 85 2.6 50.6694 184.2 - 3 21.7932 5.9 36.3 1.3 18.5104 75.8 - 4 11.6094 2.8 22.8 0.5 13.0012 57.2 - 5 4.36775 0.6 9.6 0 3.31282 20.1 - 6 4.4895 1.8 7.5 0.4 5.26611 16.7 - 7 2.86583 1.6 5.3 0.4 1.94326 12.2 - 8 1.9546 0.4 3.9 0.1 2.50583 9 - 9 1.12119 0.3 1.8 0.1 0.796313 3.2 - 10 0.381341 0.2 0.9 0.1 0.510103 1.8 - 11 0.149117 0.3 0.6 0 0.0552103 1 - 12 0.103372 0 0.7 0 0.159334 1.5 - 13 0.705926 0.5 0.6 0.1 0.560311 2.3 - 14 0.0576409 0 0.1 0 0.142375 0.2 - 15 0.0227894 0 0 0 0 0 - 16 0.0102285 0 0 0 0 0 - 17 0.00394435 0 0 0 0 0 - 18 0.00451514 0 0 0 0 0 - 19 0.00715933 0 0 0 0 0 + 0 6542.14 2631.8 3650.7 277.7 5214.14 10101.1 + 1 501.651 169.9 731.4 31.6 556.885 1697.7 + 2 172.144 55.1 271.7 8.9 186.295 643 + 3 78.103 23.4 128.4 5.6 78.5668 271.5 + 4 32.4882 11.5 61.6 2.9 29.0097 134.5 + 5 15.6427 3.8 37.1 0.9 14.6186 68.9 + 6 10.5892 2.8 21.4 0.9 16.33 43.1 + 7 6.91468 1.6 12.6 0.4 8.46107 28.6 + 8 3.3628 0.5 8.6 0 2.76292 16.6 + 9 3.26014 0.5 6.4 0.1 4.2957 12.2 + 10 1.61148 0.7 3.7 0.1 1.78878 6.8 + 11 0.438406 0.1 0.8 0 0.340736 1.2 + 12 1.13673 0.2 0.7 0 4.2682 2.8 + 13 0.154492 0 0.5 0 0.0749376 0.7 + 14 0.297197 0.2 0.7 0 0.137819 1.1 + 15 0.118546 0 0.2 0 0.151846 0.3 + 16 0.308017 0.1 0.8 0 0.831402 1.8 + 17 0.0950701 0 0.3 0 0.339082 0.7 + 18 0.474051 0.2 0.7 0 1.55941 4.8 + 19 0.516916 0.4 0.8 0.1 0.270248 1.6 ############################################################ Region : Calor-C Production thresholds : gamma 2 cm e- 2 cm e+ 2 cm Energy deposition in an event : - Absorber 2.45934 GeV Gap 295.996 MeV + Absorber 3.04599 GeV Gap 359.356 MeV Number of secondaries in an event : - gamma in Absorber 291.4 in Gap 20.3 - e- in Absorber 545.7 in Gap 45.7 - e+ in Absorber 50.7 in Gap 1.5 + gamma in Absorber 502.5 in Gap 37.9 + e- in Absorber 954.9 in Gap 91.4 + e+ in Absorber 87 in Gap 2.9 Minimum kinetic energy of generated secondaries : - gamma in Absorber 83.1795 keV in Gap 28.5157 keV - e- in Absorber 112.463 eV in Gap 356.458 eV - e+ in Absorber 626.48 eV in Gap 44.7586 keV + gamma in Absorber 12.6264 keV in Gap 27.0895 keV + e- in Absorber 354.473 eV in Gap 252.131 eV + e+ in Absorber 10.2403 keV in Gap 312.458 keV Total track length of e+/e- in an event : - Absorber 56.2433 cm Gap 33.17 cm + Absorber 95.2167 cm Gap 64.2987 cm Total number of steps of e+/e- in an event : - Absorber 1377 Gap 194.8 + Absorber 2376.9 Gap 336.3 ------------------------------------------------------------ Scores in parallel geometry layer eDep/evt nGamma/evt nElec/evt nPosi/evt stpLen/evt nStep/evt - 0 2635.59 283.9 421.1 43.7 775.36 1181.1 - 1 72.9027 18.6 92.7 5.4 74.5442 219.6 - 2 24.558 5.6 41 1.7 24.9812 83.4 - 3 11.8642 1.8 19 0.8 8.94672 40.7 - 4 3.43925 0.4 5.8 0.2 3.05287 15.7 - 5 2.60315 0.4 5.1 0.2 3.0813 16.1 - 6 1.4228 0.3 2.1 0.1 0.950544 4.4 - 7 0.746673 0 1.4 0 0.442752 3.2 - 8 1.12262 0.2 1.2 0.1 1.13755 3 - 9 0.241685 0.2 0.5 0 0.141394 1 - 10 0.0694119 0 0.3 0 0.128321 0.6 - 11 0.0595122 0 0.2 0 0.0156633 0.3 - 12 0.23674 0.1 0.3 0 0.691797 0.9 - 13 0.159284 0 0.3 0 0.485908 1 - 14 0.235137 0.2 0.2 0 0.168364 0.5 - 15 0.0143392 0 0 0 0 0 - 16 0.0047102 0 0 0 0 0 - 17 0.0102861 0 0 0 0 0 - 18 0.0137581 0 0.1 0 0.00106269 0.1 - 19 0.0217217 0 0.1 0 0.00313294 0.2 + 0 3179.63 490.3 726.6 76 1358.55 2015 + 1 145.746 35 179.5 8.7 155.113 412.1 + 2 41.1882 8.6 66.7 2.6 41.7656 136.9 + 3 19.9104 3.5 34.3 1.5 18.7019 64.2 + 4 7.54732 1.7 15 0.6 7.74016 33 + 5 5.11085 0.7 10.8 0.3 4.64733 22.2 + 6 2.87407 0.2 6.1 0.1 3.80945 14 + 7 1.85351 0.2 3.3 0 3.46558 6.3 + 8 0.618997 0 1.9 0 0.464731 5.6 + 9 0.275634 0 0.6 0 0.225709 0.8 + 10 0.0792216 0.2 0.3 0.1 0.0368816 0.5 + 11 0.180305 0 0.5 0 0.473385 1.5 + 12 0.15858 0 0.2 0 0.0846158 0.4 + 13 0.0119038 0 0.1 0 0.00254412 0.2 + 14 0.128164 0 0.4 0 0.077473 0.5 + 15 0.00962691 0 0 0 0 0 + 16 0.0026331 0 0 0 0 0 + 17 0.00382965 0 0 0 0 0 + 18 0.00327444 0 0 0 0 0 + 19 0.00104138 0 0 0 0 0 ############################################################ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /run/dumpCouples ========= Table of registered couples ============================ @@ -1742,42 +1814,42 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : Lead Range cuts : gamma 200 um e- 200 um e+ 200 um proton 200 um - Energy thresholds : gamma 47.5243 keV e- 384.112 keV e+ 368.982 keV proton 20 keV + Energy thresholds : gamma 47.1807 keV e- 384 keV e+ 371.312 keV proton 20 keV Region(s) which use this couple : Calor-A Index : 2 used in the geometry : Yes Material : liquidArgon Range cuts : gamma 200 um e- 200 um e+ 200 um proton 200 um - Energy thresholds : gamma 2.81453 keV e- 124.676 keV e+ 122.195 keV proton 20 keV + Energy thresholds : gamma 2.80544 keV e- 124.173 keV e+ 122.515 keV proton 20 keV Region(s) which use this couple : Calor-A Index : 3 used in the geometry : Yes Material : Lead Range cuts : gamma 2 mm e- 2 mm e+ 2 mm proton 2 mm - Energy thresholds : gamma 120.569 keV e- 2.64356 MeV e+ 2.4394 MeV proton 200 keV + Energy thresholds : gamma 120.879 keV e- 2.64203 MeV e+ 2.43733 MeV proton 200 keV Region(s) which use this couple : Calor-B Index : 4 used in the geometry : Yes Material : liquidArgon Range cuts : gamma 2 mm e- 2 mm e+ 2 mm proton 2 mm - Energy thresholds : gamma 8.67127 keV e- 566.458 keV e+ 544.145 keV proton 200 keV + Energy thresholds : gamma 8.73423 keV e- 567.027 keV e+ 540.972 keV proton 200 keV Region(s) which use this couple : Calor-B Index : 5 used in the geometry : Yes Material : Lead Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 419.056 keV e- 35.0737 MeV e+ 32.8015 MeV proton 2 MeV + Energy thresholds : gamma 419.056 keV e- 35.1199 MeV e+ 32.6175 MeV proton 2 MeV Region(s) which use this couple : Calor-C Index : 6 used in the geometry : Yes Material : liquidArgon Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 27.0755 keV e- 4.28176 MeV e+ 3.95109 MeV proton 2 MeV + Energy thresholds : gamma 27.0103 keV e- 4.22893 MeV e+ 4.00759 MeV proton 2 MeV Region(s) which use this couple : Calor-C @@ -1851,10 +1923,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1878,10 +1951,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1909,9 +1983,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1925,14 +1999,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -1941,9 +2015,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1955,9 +2029,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1968,9 +2042,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -1984,14 +2058,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -2000,9 +2074,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2016,14 +2090,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -2032,9 +2106,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2048,14 +2122,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -2064,9 +2138,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2081,14 +2155,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -2097,9 +2171,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2114,14 +2188,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -2130,9 +2204,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2146,14 +2220,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -2162,9 +2236,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2178,14 +2252,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -2205,72 +2279,72 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : No Material : Lead Range cuts : gamma 200 um e- 200 um e+ 200 um proton 200 um - Energy thresholds : gamma 47.5243 keV e- 384.112 keV e+ 368.982 keV proton 20 keV + Energy thresholds : gamma 47.1807 keV e- 384 keV e+ 371.312 keV proton 20 keV Index : 2 used in the geometry : No Material : liquidArgon Range cuts : gamma 200 um e- 200 um e+ 200 um proton 200 um - Energy thresholds : gamma 2.81453 keV e- 124.676 keV e+ 122.195 keV proton 20 keV + Energy thresholds : gamma 2.80544 keV e- 124.173 keV e+ 122.515 keV proton 20 keV Index : 3 used in the geometry : No Material : Lead Range cuts : gamma 2 mm e- 2 mm e+ 2 mm proton 2 mm - Energy thresholds : gamma 120.569 keV e- 2.64356 MeV e+ 2.4394 MeV proton 200 keV + Energy thresholds : gamma 120.879 keV e- 2.64203 MeV e+ 2.43733 MeV proton 200 keV Index : 4 used in the geometry : No Material : liquidArgon Range cuts : gamma 2 mm e- 2 mm e+ 2 mm proton 2 mm - Energy thresholds : gamma 8.67127 keV e- 566.458 keV e+ 544.145 keV proton 200 keV + Energy thresholds : gamma 8.73423 keV e- 567.027 keV e+ 540.972 keV proton 200 keV Index : 5 used in the geometry : No Material : Lead Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 419.056 keV e- 35.0737 MeV e+ 32.8015 MeV proton 2 MeV + Energy thresholds : gamma 419.056 keV e- 35.1199 MeV e+ 32.6175 MeV proton 2 MeV Index : 6 used in the geometry : No Material : liquidArgon Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 27.0755 keV e- 4.28176 MeV e+ 3.95109 MeV proton 2 MeV + Energy thresholds : gamma 27.0103 keV e- 4.22893 MeV e+ 4.00759 MeV proton 2 MeV Index : 7 used in the geometry : Yes Material : Aluminium Range cuts : gamma 200 um e- 200 um e+ 200 um proton 200 um - Energy thresholds : gamma 3.2396 keV e- 200.588 keV e+ 196.598 keV proton 20 keV + Energy thresholds : gamma 3.25242 keV e- 200.096 keV e+ 196.103 keV proton 20 keV Region(s) which use this couple : Calor-A Index : 8 used in the geometry : Yes Material : Water Range cuts : gamma 200 um e- 200 um e+ 200 um proton 200 um - Energy thresholds : gamma 1.48961 keV e- 128.061 keV e+ 125.513 keV proton 20 keV + Energy thresholds : gamma 1.48165 keV e- 128.416 keV e+ 125.853 keV proton 20 keV Region(s) which use this couple : Calor-A Index : 9 used in the geometry : Yes Material : Aluminium Range cuts : gamma 2 mm e- 2 mm e+ 2 mm proton 2 mm - Energy thresholds : gamma 9.58771 keV e- 1.02127 MeV e+ 967.99 keV proton 200 keV + Energy thresholds : gamma 9.59585 keV e- 1.03121 MeV e+ 977.24 keV proton 200 keV Region(s) which use this couple : Calor-B Index : 10 used in the geometry : Yes Material : Water Range cuts : gamma 2 mm e- 2 mm e+ 2 mm proton 2 mm - Energy thresholds : gamma 3.9341 keV e- 566.458 keV e+ 547.802 keV proton 200 keV + Energy thresholds : gamma 3.92577 keV e- 570.85 keV e+ 548.291 keV proton 200 keV Region(s) which use this couple : Calor-B Index : 11 used in the geometry : Yes Material : Aluminium Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 28.1858 keV e- 9.37455 MeV e+ 8.82615 MeV proton 2 MeV + Energy thresholds : gamma 28.1217 keV e- 9.47216 MeV e+ 8.85655 MeV proton 2 MeV Region(s) which use this couple : Calor-C Index : 12 used in the geometry : Yes Material : Water Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 10.3901 keV e- 4.16857 MeV e+ 3.95109 MeV proton 2 MeV + Energy thresholds : gamma 10.4017 keV e- 4.22893 MeV e+ 3.95409 MeV proton 2 MeV Region(s) which use this couple : Calor-C @@ -2280,7 +2354,7 @@ Index : 12 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 10 - User=0.570000s Real=0.661582s Sys=0.090000s + User=0.190000s Real=0.260306s Sys=0.070000s ############################################################ Run Summary - Number of events : 10 ############################################################ @@ -2288,125 +2362,128 @@ Region : Calor-A Production thresholds : gamma 200 um e- 200 um e+ 200 um Energy deposition in an event : - Absorber 567.868 MeV Gap 243.663 MeV + Absorber 495.617 MeV Gap 218.492 MeV Number of secondaries in an event : - gamma in Absorber 39 in Gap 10.5 - e- in Absorber 283.6 in Gap 146.5 - e+ in Absorber 1.3 in Gap 0.2 + gamma in Absorber 21.4 in Gap 6 + e- in Absorber 189.4 in Gap 100.9 + e+ in Absorber 0.3 in Gap 0 Minimum kinetic energy of generated secondaries : - gamma in Absorber 3.2704 keV in Gap 1.49086 keV - e- in Absorber 119.825 eV in Gap 125.722 eV - e+ in Absorber 1.04893 MeV in Gap 5.96433 MeV + gamma in Absorber 3.25277 keV in Gap 1.8657 keV + e- in Absorber 101.546 eV in Gap 198.689 eV + e+ in Absorber 39.8542 keV in Gap 2.88022e+295 J Total track length of e+/e- in an event : - Absorber 43.3447 cm Gap 37.325 cm + Absorber 25.3145 cm Gap 24.4251 cm Total number of steps of e+/e- in an event : - Absorber 561.7 Gap 306.6 + Absorber 361.6 Gap 206 ------------------------------------------------------------ Scores in parallel geometry layer eDep/evt nGamma/evt nElec/evt nPosi/evt stpLen/evt nStep/evt - 0 772.566 41.8 266.8 1.2 687.468 614.4 - 1 16.2409 3.7 34.4 0 53.3395 68.9 - 2 6.1224 1.2 25.6 0.1 18.7228 37.4 - 3 5.59256 1.1 24.1 0 17.4247 38.6 - 4 4.22012 0.7 21.7 0.1 11.1441 32.2 - 5 1.57554 0.2 13.2 0 3.80724 16.3 - 6 1.19564 0.2 10.1 0.1 3.14403 13.6 - 7 0.365702 0 8.4 0 0.446052 10.7 - 8 0.369898 0.1 4.1 0 0.906645 5.4 - 9 0.25266 0 3.1 0 0.828458 3.8 - 10 1.1288 0.1 2.6 0 5.43576 5.7 - 11 0.229938 0 3.1 0 0.41746 4.2 - 12 0.514529 0.2 3.1 0 0.930653 4.8 - 13 0.0880018 0 1.4 0 0.123129 1.6 - 14 0.0277324 0 1.3 0 0.0120751 1.4 - 15 0.0938512 0 1.6 0 0.0795742 1.8 - 16 0.657561 0.1 2 0 1.56938 3.2 - 17 0.0150769 0 0.9 0 0.00517021 0.9 - 18 0.0178167 0 0.4 0 0.0132254 0.5 - 19 0.199258 0.1 1.2 0 0.802283 1.9 + 0 708.56 26.5 224.5 0.2 486.067 483.7 + 1 2.29185 0.1 16.7 0 5.9426 24.6 + 2 1.32671 0.6 10.8 0.1 2.75813 14.4 + 3 0.421223 0 10.6 0 0.446623 12.3 + 4 0.261759 0 7.6 0 0.225959 9 + 5 0.325024 0 6 0 0.477139 7.2 + 6 0.333488 0 4.6 0 0.459726 5.4 + 7 0.0571281 0 3.7 0 0.0222784 4.1 + 8 0.0897568 0 2.9 0 0.075275 3.1 + 9 0.0124893 0 0.2 0 0.00765798 0.2 + 10 0.0124153 0 0.1 0 0.010058 0.2 + 11 0 0 0 0 0 0 + 12 0.332818 0.2 0.5 0 0.776468 1.2 + 13 0.00294084 0 0.2 0 0.00051622 0.2 + 14 0.00537847 0 0.3 0 0.0029532 0.3 + 15 0.0139275 0 0.1 0 0.0246687 0.1 + 16 0.0483157 0 0.4 0 0.0961481 0.4 + 17 0 0 0 0 0 0 + 18 0.000250825 0 0.1 0 2.32913e-05 0.1 + 19 0.00464525 0 0.1 0 0.00181551 0.2 ############################################################ Region : Calor-B Production thresholds : gamma 2 mm e- 2 mm e+ 2 mm Energy deposition in an event : - Absorber 641.06 MeV Gap 277.205 MeV + Absorber 566.384 MeV Gap 248.452 MeV Number of secondaries in an event : - gamma in Absorber 48.7 in Gap 17 - e- in Absorber 234.9 in Gap 101 - e+ in Absorber 2.5 in Gap 0.6 + gamma in Absorber 35.8 in Gap 8.6 + e- in Absorber 180 in Gap 74.4 + e+ in Absorber 1.5 in Gap 0.1 Minimum kinetic energy of generated secondaries : - gamma in Absorber 9.5904 keV in Gap 4.01782 keV - e- in Absorber 119.193 eV in Gap 130.852 eV - e+ in Absorber 1.366 MeV in Gap 1.28913 MeV + gamma in Absorber 9.84609 keV in Gap 4.20895 keV + e- in Absorber 112.358 eV in Gap 101.277 eV + e+ in Absorber 2.4113 MeV in Gap 21.6387 MeV Total track length of e+/e- in an event : - Absorber 53.1804 cm Gap 51.4947 cm + Absorber 36.1614 cm Gap 36.4824 cm Total number of steps of e+/e- in an event : - Absorber 498 Gap 241.9 + Absorber 384.5 Gap 182.3 ------------------------------------------------------------ Scores in parallel geometry layer eDep/evt nGamma/evt nElec/evt nPosi/evt stpLen/evt nStep/evt - 0 859.622 54.8 115.7 2.5 876.032 407.9 - 1 33.4994 6.9 52.8 0.3 103.865 96.6 - 2 12.9847 2.6 35.3 0.2 39.4299 60.1 - 3 4.65025 1 31.7 0 13.1625 46.3 - 4 2.20253 0.2 23.6 0.1 4.02323 28.4 - 5 1.27233 0 17.3 0 2.46781 20.2 - 6 1.33465 0.1 14 0 3.01381 21 - 7 0.532441 0 9 0 0.769594 12.6 - 8 0.405333 0 8.6 0 0.576239 12 - 9 0.272185 0 7.3 0 0.291112 8.1 - 10 0.674994 0.1 4.8 0 1.76547 7.6 - 11 0.336065 0 3.6 0 0.967431 5 - 12 0.223896 0 4.5 0 0.228431 5.3 - 13 0.0685452 0 1.8 0 0.0556879 2 - 14 0.0430359 0 1.3 0 0.0291469 1.6 - 15 0.0243646 0 0.9 0 0.00869852 1 - 16 0.00680396 0 0.4 0 0.00260246 0.4 - 17 0.0563157 0 1.6 0 0.0372161 1.7 - 18 0 0 0 0 0 0 - 19 0.0388575 0 1.1 0 0.0172265 1.4 + 0 773.139 36.5 85.5 1.3 603.753 323.7 + 1 21.9521 3.9 37.4 0 69.2685 66.8 + 2 8.18749 1.6 28.6 0.1 25.0082 44.2 + 3 4.93509 1.1 23.7 0 13.4056 32.6 + 4 1.91888 0 18.6 0 5.1112 24.3 + 5 0.897068 0.1 12.9 0 1.60172 16 + 6 0.485766 0 12.4 0 0.572212 15 + 7 0.330621 0 7 0 0.3321 8.1 + 8 0.336023 0.2 6.9 0 0.380571 9.2 + 9 0.114605 0 4.4 0 0.0943064 5 + 10 0.127404 0 2.2 0 0.282858 2.9 + 11 0.132688 0 2 0 0.280479 2.4 + 12 0.0441273 0 1 0 0.030351 1.2 + 13 0.0995785 0 2.6 0 0.0604812 2.9 + 14 0.230564 0 2.5 0 0.754365 3.1 + 15 1.34573 0.7 2.1 0.1 4.53303 3.8 + 16 0.454966 0.3 0.7 0.1 0.91959 1.3 + 17 0.0210256 0 0.9 0 0.01257 1 + 18 0.0169585 0 0.8 0 0.00545152 0.8 + 19 0.0278982 0 1.1 0 0.0128493 1.3 ############################################################ Region : Calor-C Production thresholds : gamma 2 cm e- 2 cm e+ 2 cm Energy deposition in an event : - Absorber 577.704 MeV Gap 249.573 MeV + Absorber 556.97 MeV Gap 240.823 MeV Number of secondaries in an event : - gamma in Absorber 22.3 in Gap 8.1 - e- in Absorber 152.6 in Gap 60.2 - e+ in Absorber 0.9 in Gap 0.4 + gamma in Absorber 16.9 in Gap 6.6 + e- in Absorber 96.4 in Gap 42.1 + e+ in Absorber 1.4 in Gap 0.2 Minimum kinetic energy of generated secondaries : - gamma in Absorber 28.3779 keV in Gap 12.155 keV - e- in Absorber 120.655 eV in Gap 102.594 eV - e+ in Absorber 243.777 keV in Gap 1.11806 MeV + gamma in Absorber 28.1852 keV in Gap 11.3084 keV + e- in Absorber 131.466 eV in Gap 118.755 eV + e+ in Absorber 316.698 keV in Gap 639.038 keV Total track length of e+/e- in an event : - Absorber 26.32 cm Gap 27.4687 cm + Absorber 20.3547 cm Gap 21.6885 cm Total number of steps of e+/e- in an event : - Absorber 267.5 Gap 109.1 + Absorber 186 Gap 84.1 ------------------------------------------------------------ Scores in parallel geometry layer eDep/evt nGamma/evt nElec/evt nPosi/evt stpLen/evt nStep/evt - 0 772.357 20.4 34.4 0.5 375.499 115.4 - 1 23.1463 4.3 29.2 0.3 71.5763 59.1 - 2 16.7024 4.3 28.6 0.3 55.997 48.3 - 3 5.60415 0.4 24.5 0 14.3419 32.4 - 4 2.49928 0.2 18 0.1 5.6175 25.8 - 5 1.12105 0.1 15 0 1.96379 19.9 - 6 1.35009 0.1 15 0 3.24428 17.6 - 7 1.01146 0.2 10.5 0 2.27524 12.9 - 8 1.49152 0.3 11.1 0.1 3.56344 14.3 - 9 1.02192 0 8.2 0 1.99466 9.7 - 10 0.15623 0 5.3 0 0.141381 5.8 - 11 0.121626 0 2.4 0 0.148237 2.7 - 12 0.318742 0 3.3 0 0.47645 4.1 - 13 0.227865 0 2.2 0 0.965304 2.7 - 14 0.0513138 0 1.8 0 0.0334131 2.1 - 15 0.0260729 0.1 0.7 0 0.0164593 0.9 - 16 0.0365661 0 1.1 0 0.0221285 1.1 - 17 0.0259064 0 1.1 0 0.00947219 1.3 - 18 0.00296977 0 0.3 0 0.000586973 0.3 - 19 0 0 0 0 0 0 + 0 768.794 18.2 26.3 0.9 335.402 109.5 + 1 15.4177 3.4 23.9 0.3 47.2202 40.5 + 2 7.98652 1 22 0.2 23.2532 34.8 + 3 1.36414 0 16.9 0 3.91064 21.6 + 4 0.755533 0.3 8.3 0.1 1.9855 10.3 + 5 0.630062 0.1 9.8 0 0.808058 11.4 + 6 1.58224 0.3 6.3 0.1 6.29259 12.2 + 7 0.158416 0 3.4 0 0.15874 3.9 + 8 0.129444 0.1 2.5 0 0.116241 3 + 9 0.17304 0 4.3 0 0.156865 5.1 + 10 0.0759333 0 2.9 0 0.0533429 3.1 + 11 0.0633885 0 2.3 0 0.0329366 2.6 + 12 0.0630397 0 2.2 0 0.0431715 2.5 + 13 0.0977855 0 2.1 0 0.118305 2.4 + 14 0.129878 0 1.2 0 0.239858 1.5 + 15 0.052583 0 1.2 0 0.0332454 1.4 + 16 0.0383053 0 1.3 0 0.0170851 1.5 + 17 0.0195886 0 0.1 0 0.0429816 0.1 + 18 0 0 0 0 0 0 + 19 0.132113 0.1 0.1 0 0.353939 0.7 ############################################################ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /run/dumpCouples ========= Table of registered couples ============================ @@ -2421,72 +2498,72 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : No Material : Lead Range cuts : gamma 200 um e- 200 um e+ 200 um proton 200 um - Energy thresholds : gamma 47.5243 keV e- 384.112 keV e+ 368.982 keV proton 20 keV + Energy thresholds : gamma 47.1807 keV e- 384 keV e+ 371.312 keV proton 20 keV Index : 2 used in the geometry : No Material : liquidArgon Range cuts : gamma 200 um e- 200 um e+ 200 um proton 200 um - Energy thresholds : gamma 2.81453 keV e- 124.676 keV e+ 122.195 keV proton 20 keV + Energy thresholds : gamma 2.80544 keV e- 124.173 keV e+ 122.515 keV proton 20 keV Index : 3 used in the geometry : No Material : Lead Range cuts : gamma 2 mm e- 2 mm e+ 2 mm proton 2 mm - Energy thresholds : gamma 120.569 keV e- 2.64356 MeV e+ 2.4394 MeV proton 200 keV + Energy thresholds : gamma 120.879 keV e- 2.64203 MeV e+ 2.43733 MeV proton 200 keV Index : 4 used in the geometry : No Material : liquidArgon Range cuts : gamma 2 mm e- 2 mm e+ 2 mm proton 2 mm - Energy thresholds : gamma 8.67127 keV e- 566.458 keV e+ 544.145 keV proton 200 keV + Energy thresholds : gamma 8.73423 keV e- 567.027 keV e+ 540.972 keV proton 200 keV Index : 5 used in the geometry : No Material : Lead Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 419.056 keV e- 35.0737 MeV e+ 32.8015 MeV proton 2 MeV + Energy thresholds : gamma 419.056 keV e- 35.1199 MeV e+ 32.6175 MeV proton 2 MeV Index : 6 used in the geometry : No Material : liquidArgon Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 27.0755 keV e- 4.28176 MeV e+ 3.95109 MeV proton 2 MeV + Energy thresholds : gamma 27.0103 keV e- 4.22893 MeV e+ 4.00759 MeV proton 2 MeV Index : 7 used in the geometry : Yes Material : Aluminium Range cuts : gamma 200 um e- 200 um e+ 200 um proton 200 um - Energy thresholds : gamma 3.2396 keV e- 200.588 keV e+ 196.598 keV proton 20 keV + Energy thresholds : gamma 3.25242 keV e- 200.096 keV e+ 196.103 keV proton 20 keV Region(s) which use this couple : Calor-A Index : 8 used in the geometry : Yes Material : Water Range cuts : gamma 200 um e- 200 um e+ 200 um proton 200 um - Energy thresholds : gamma 1.48961 keV e- 128.061 keV e+ 125.513 keV proton 20 keV + Energy thresholds : gamma 1.48165 keV e- 128.416 keV e+ 125.853 keV proton 20 keV Region(s) which use this couple : Calor-A Index : 9 used in the geometry : Yes Material : Aluminium Range cuts : gamma 2 mm e- 2 mm e+ 2 mm proton 2 mm - Energy thresholds : gamma 9.58771 keV e- 1.02127 MeV e+ 967.99 keV proton 200 keV + Energy thresholds : gamma 9.59585 keV e- 1.03121 MeV e+ 977.24 keV proton 200 keV Region(s) which use this couple : Calor-B Index : 10 used in the geometry : Yes Material : Water Range cuts : gamma 2 mm e- 2 mm e+ 2 mm proton 2 mm - Energy thresholds : gamma 3.9341 keV e- 566.458 keV e+ 547.802 keV proton 200 keV + Energy thresholds : gamma 3.92577 keV e- 570.85 keV e+ 548.291 keV proton 200 keV Region(s) which use this couple : Calor-B Index : 11 used in the geometry : Yes Material : Aluminium Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 28.1858 keV e- 9.37455 MeV e+ 8.82615 MeV proton 2 MeV + Energy thresholds : gamma 28.1217 keV e- 9.47216 MeV e+ 8.85655 MeV proton 2 MeV Region(s) which use this couple : Calor-C Index : 12 used in the geometry : Yes Material : Water Range cuts : gamma 2 cm e- 2 cm e+ 2 cm proton 2 cm - Energy thresholds : gamma 10.3901 keV e- 4.16857 MeV e+ 3.95109 MeV proton 2 MeV + Energy thresholds : gamma 10.4017 keV e- 4.22893 MeV e+ 3.95409 MeV proton 2 MeV Region(s) which use this couple : Calor-C @@ -2559,10 +2636,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2586,10 +2664,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2617,9 +2696,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2633,14 +2712,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -2649,9 +2728,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2663,9 +2742,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2676,9 +2755,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2692,14 +2771,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -2708,9 +2787,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2724,14 +2803,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -2740,9 +2819,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2756,14 +2835,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -2772,9 +2851,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2789,14 +2868,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -2805,9 +2884,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2822,14 +2901,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -2838,9 +2917,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2854,14 +2933,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -2870,9 +2949,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -2886,14 +2965,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -2913,72 +2992,72 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : No Material : Lead Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 5.95924 keV e- 57.7126 keV e+ 56.5645 keV proton 1 keV + Energy thresholds : gamma 5.995 keV e- 58.1082 keV e+ 56.9484 keV proton 1 keV Index : 2 used in the geometry : No Material : liquidArgon Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 14.4978 keV e+ 14.3179 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 14.5951 keV e+ 14.2339 keV proton 1 keV Index : 3 used in the geometry : No Material : Lead Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 29.3415 keV e- 240.349 keV e+ 230.882 keV proton 10 keV + Energy thresholds : gamma 29.4761 keV e- 241.522 keV e+ 231.977 keV proton 10 keV Index : 4 used in the geometry : No Material : liquidArgon Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 2.00013 keV e- 82.3069 keV e+ 81.2117 keV proton 10 keV + Energy thresholds : gamma 1.9981 keV e- 82.4135 keV e+ 81.8616 keV proton 10 keV Index : 5 used in the geometry : No Material : Lead Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 101.981 keV e- 1.36213 MeV e+ 1.28245 MeV proton 100 keV + Energy thresholds : gamma 101.843 keV e- 1.36749 MeV e+ 1.27862 MeV proton 100 keV Index : 6 used in the geometry : No Material : liquidArgon Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.2036 keV e- 345.078 keV e+ 335.956 keV proton 100 keV + Energy thresholds : gamma 6.19986 keV e- 344.855 keV e+ 333.46 keV proton 100 keV Index : 7 used in the geometry : Yes Material : Aluminium Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 34.4583 keV e+ 33.7728 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 34.1725 keV e+ 33.9436 keV proton 1 keV Region(s) which use this couple : Calor-A Index : 8 used in the geometry : Yes Material : Water Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 14.1795 keV e+ 13.7742 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 14.0874 keV e+ 14.0874 keV proton 1 keV Region(s) which use this couple : Calor-A Index : 9 used in the geometry : Yes Material : Aluminium Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 2.34892 keV e- 131.538 keV e+ 128.061 keV proton 10 keV + Energy thresholds : gamma 2.3478 keV e- 131.031 keV e+ 128.416 keV proton 10 keV Region(s) which use this couple : Calor-B Index : 10 used in the geometry : Yes Material : Water Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 1.10939 keV e- 85.1099 keV e+ 83.4168 keV proton 10 keV + Energy thresholds : gamma 1.10981 keV e- 84.6589 keV e+ 83.5287 keV proton 10 keV Region(s) which use this couple : Calor-B Index : 11 used in the geometry : Yes Material : Aluminium Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.90532 keV e- 597.637 keV e+ 574.097 keV proton 100 keV + Energy thresholds : gamma 6.90363 keV e- 598.345 keV e+ 570.85 keV proton 100 keV Region(s) which use this couple : Calor-C Index : 12 used in the geometry : Yes Material : Water Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.92994 keV e- 349.731 keV e+ 342.774 keV proton 100 keV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 100 keV Region(s) which use this couple : Calor-C @@ -2988,7 +3067,7 @@ Index : 12 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 10 - User=1.480000s Real=1.787589s Sys=0.270000s + User=0.560000s Real=0.778834s Sys=0.190000s ############################################################ Run Summary - Number of events : 10 ############################################################ @@ -2996,125 +3075,128 @@ Region : Calor-A Production thresholds : gamma 10 um e- 10 um e+ 10 um Energy deposition in an event : - Absorber 619.527 MeV Gap 278.579 MeV + Absorber 553.608 MeV Gap 239.729 MeV Number of secondaries in an event : - gamma in Absorber 69.7 in Gap 19.5 - e- in Absorber 1162.1 in Gap 1093.8 - e+ in Absorber 2.6 in Gap 0.5 + gamma in Absorber 48.4 in Gap 11.4 + e- in Absorber 1000.3 in Gap 919.3 + e+ in Absorber 0.7 in Gap 0.1 Minimum kinetic energy of generated secondaries : - gamma in Absorber 991.94 eV in Gap 995.671 eV - e- in Absorber 12.0004 eV in Gap 131.918 eV - e+ in Absorber 345.773 keV in Gap 575.028 keV + gamma in Absorber 1.02145 keV in Gap 1.02446 keV + e- in Absorber 13.3186 eV in Gap 102.817 eV + e+ in Absorber 1.13218 MeV in Gap 6.23574 MeV Total track length of e+/e- in an event : - Absorber 59.1385 cm Gap 58.5808 cm + Absorber 41.9597 cm Gap 37.5952 cm Total number of steps of e+/e- in an event : - Absorber 1820 Gap 1651.8 + Absorber 1477.8 Gap 1294.3 ------------------------------------------------------------ Scores in parallel geometry layer eDep/evt nGamma/evt nElec/evt nPosi/evt stpLen/evt nStep/evt - 0 819.852 70.5 1835.8 2 933.059 2779.1 - 1 31.8529 8.6 114.8 0.2 112.339 232.4 - 2 17.4157 4.6 75.8 0.4 53.8954 130.9 - 3 10.2383 1.7 51.3 0.2 32.1362 88 - 4 6.43119 1.6 41.9 0.1 18.688 62.2 - 5 3.11219 0.4 27.5 0.1 6.43374 37.1 - 6 1.59375 0.4 22.9 0 3.09464 29 - 7 3.31798 1 21.1 0.1 9.99297 32.7 - 8 1.18837 0 13.5 0 2.20557 16.6 - 9 0.854923 0 11.1 0 2.13428 14.2 - 10 0.27851 0 8.8 0 0.211465 10.6 - 11 0.792952 0.2 9 0 1.44956 10.5 - 12 0.29519 0 6.8 0 0.249375 9.3 - 13 0.189157 0.1 3.8 0 0.304016 5.2 - 14 0.297601 0.1 2.8 0 0.54431 3.7 - 15 0.0829814 0 2 0 0.0775441 2.4 - 16 0.148093 0 2.4 0 0.253206 2.7 - 17 0.0694736 0 2.1 0 0.058709 2.4 - 18 0.0388752 0 1.5 0 0.0190894 1.7 - 19 0.0396564 0 0.7 0 0.0388426 0.7 + 0 757.337 51 1699.9 0.4 682.38 2420.3 + 1 16.8568 4.5 64 0.1 56.9256 120.7 + 2 7.27189 1.9 40.4 0.1 24.897 68.6 + 3 3.51153 0.8 29.1 0.1 9.87895 45.7 + 4 2.83254 0.6 22.8 0.1 7.89441 31.3 + 5 0.784555 0 13.7 0 1.0584 16.8 + 6 0.378652 0 8.7 0 0.453651 11.6 + 7 0.732817 0 10.7 0 1.20026 13.2 + 8 0.887586 0.1 7.2 0 1.79491 9.6 + 9 0.679089 0.1 6 0 2.1023 9.3 + 10 0.847772 0.4 4.8 0 3.89324 8.1 + 11 0.107811 0 3.1 0 0.0803315 3.7 + 12 0.425334 0.1 1.8 0 1.68318 3.2 + 13 0.339484 0.2 2.2 0 0.744914 3.5 + 14 0.0197867 0 0.4 0 0.0146167 0.4 + 15 0.0518911 0 1.1 0 0.0463947 1.2 + 16 0.105094 0 1.3 0 0.177807 1.7 + 17 0.0236909 0 0.4 0 0.0178464 0.4 + 18 0 0 0 0 0 0 + 19 0.0910451 0 0.9 0 0.260861 1.5 ############################################################ Region : Calor-B Production thresholds : gamma 100 um e- 100 um e+ 100 um Energy deposition in an event : - Absorber 601.276 MeV Gap 255.941 MeV + Absorber 646.953 MeV Gap 280.428 MeV Number of secondaries in an event : - gamma in Absorber 56 in Gap 15.2 - e- in Absorber 422.6 in Gap 222.3 - e+ in Absorber 2 in Gap 0.1 + gamma in Absorber 70.9 in Gap 19.8 + e- in Absorber 523.2 in Gap 262.5 + e+ in Absorber 3.8 in Gap 0.6 Minimum kinetic energy of generated secondaries : - gamma in Absorber 2.3609 keV in Gap 1.13028 keV - e- in Absorber 100.424 eV in Gap 108.808 eV - e+ in Absorber 874.228 keV in Gap 50.6653 MeV + gamma in Absorber 2.3497 keV in Gap 1.15347 keV + e- in Absorber 100.155 eV in Gap 145.766 eV + e+ in Absorber 347.617 keV in Gap 1.2585 MeV Total track length of e+/e- in an event : - Absorber 52.1972 cm Gap 44.7314 cm + Absorber 63.0337 cm Gap 58.3654 cm Total number of steps of e+/e- in an event : - Absorber 797.5 Gap 413.2 + Absorber 975.1 Gap 516.6 ------------------------------------------------------------ Scores in parallel geometry layer eDep/evt nGamma/evt nElec/evt nPosi/evt stpLen/evt nStep/evt - 0 803.81 60.1 422 1.3 813.027 860.3 - 1 32.536 7 57.4 0.5 103.636 123.8 - 2 4.27188 0.6 35.2 0 11.4052 49.2 - 3 3.11399 0.7 26.7 0.1 6.70303 34.8 - 4 2.23604 0.8 20.2 0.1 5.2976 26.1 - 5 4.48535 0.9 20.6 0.1 13.3838 35.7 - 6 3.72349 1 16.1 0 10.0379 24 - 7 0.99043 0 8.2 0 3.22222 11.2 - 8 0.273909 0 7.1 0 0.295391 8.5 - 9 0.141736 0 5.4 0 0.0751391 6.3 - 10 0.207645 0 6.2 0 0.171453 6.9 - 11 0.230112 0 3.4 0 0.275868 3.8 - 12 0.391421 0.1 4.2 0 0.670329 4.9 - 13 0.138903 0 1.9 0 0.142399 2.3 - 14 0.0938536 0 3 0 0.0531928 3.3 - 15 0.35204 0 1.5 0 0.71466 2 - 16 0.0762605 0 2.4 0 0.0558232 2.6 - 17 0.103333 0 1.9 0 0.0952415 2.1 - 18 0.0152137 0 0.7 0 0.00480382 1 - 19 0.0225521 0 0.7 0 0.0186666 1.8 + 0 814.462 63.6 428.8 2.2 845.141 891.4 + 1 45.0194 10.2 70.5 0.6 161.703 162.8 + 2 38.8042 10.6 70.9 0.9 128.279 142.7 + 3 9.1356 2 44.2 0.2 26.0015 65.9 + 4 6.56797 1.4 33.3 0.1 19.9834 48.1 + 5 2.78367 0.6 23.3 0 6.14351 30.7 + 6 1.6953 0.3 21.5 0.1 3.12847 28.8 + 7 2.07665 0.5 22.8 0 4.94407 30.2 + 8 1.64871 0.3 13.4 0.1 4.35396 19.1 + 9 0.460769 0 12.3 0 0.359293 14.1 + 10 0.970302 0.4 15.9 0.1 2.03305 19.4 + 11 2.20157 0.5 8 0.1 8.93796 13.2 + 12 0.449498 0.1 6.2 0 0.775931 7.6 + 13 0.127909 0.1 2.9 0 0.115832 3.6 + 14 0.124609 0 2.3 0 0.143655 2.6 + 15 0.0803764 0.1 1.2 0 0.152121 1.5 + 16 0.265564 0 2.6 0 0.923144 3.4 + 17 0.146356 0 1.6 0 0.18327 1.8 + 18 0.0663577 0 2 0 0.0402596 2.2 + 19 0.00476362 0 0.3 0 0.0011471 0.3 ############################################################ Region : Calor-C Production thresholds : gamma 1 mm e- 1 mm e+ 1 mm Energy deposition in an event : - Absorber 502.107 MeV Gap 220.625 MeV + Absorber 532.726 MeV Gap 236.196 MeV Number of secondaries in an event : - gamma in Absorber 15.3 in Gap 4.1 - e- in Absorber 94.9 in Gap 48.5 - e+ in Absorber 0.2 in Gap 0.2 + gamma in Absorber 25.3 in Gap 8.4 + e- in Absorber 145.5 in Gap 79.2 + e+ in Absorber 0.7 in Gap 0.2 Minimum kinetic energy of generated secondaries : - gamma in Absorber 7.27181 keV in Gap 3.1879 keV - e- in Absorber 143.868 eV in Gap 186.376 eV - e+ in Absorber 2.4917 MeV in Gap 493.509 keV + gamma in Absorber 6.98608 keV in Gap 2.96142 keV + e- in Absorber 100.592 eV in Gap 108.115 eV + e+ in Absorber 608.791 keV in Gap 456.445 keV Total track length of e+/e- in an event : - Absorber 23.758 cm Gap 22.6919 cm + Absorber 30.4495 cm Gap 31.3726 cm Total number of steps of e+/e- in an event : - Absorber 253.4 Gap 146.2 + Absorber 335.9 Gap 188 ------------------------------------------------------------ Scores in parallel geometry layer eDep/evt nGamma/evt nElec/evt nPosi/evt stpLen/evt nStep/evt - 0 713.143 18.2 90.5 0.3 439.413 326.9 - 1 3.77227 0.4 13.5 0 9.76929 21 - 2 1.00609 0.2 8.7 0 3.29489 11.2 - 3 2.55663 0.4 9 0 7.96087 13.7 - 4 0.913824 0.2 7.9 0.1 1.53517 9.9 - 5 0.249876 0 2.8 0 0.582743 3.6 - 6 0.42177 0 2.7 0 0.949312 3.5 - 7 0.0932629 0 2.2 0 0.0730771 2.7 - 8 0.203735 0 1.7 0 0.430252 2.1 - 9 0.134768 0 0.9 0 0.248301 1 - 10 0.0195653 0 0.7 0 0.0174769 0.7 - 11 0.0155958 0 0.2 0 0.0102023 0.3 - 12 0.0485859 0 0.7 0 0.0407595 0.7 - 13 0.0764484 0 0.4 0 0.112311 0.4 - 14 0.00953886 0 0.3 0 0.00679883 0.3 - 15 0.0514219 0 0.9 0 0.0458055 1.1 - 16 0.0163817 0 0.3 0 0.00935258 0.5 - 17 0 0 0 0 0 0 - 18 0 0 0 0 0 0 - 19 0 0 0 0 0 0 + 0 739.515 27.6 100.6 0.4 533.288 342.1 + 1 11.2479 2.3 23.1 0.2 35.962 48.3 + 2 6.54778 1.7 21.5 0.1 19.2829 32.4 + 3 7.13333 1.4 25 0.1 21.1659 35 + 4 1.63034 0.4 13.6 0.1 3.1606 17.4 + 5 1.23226 0.2 13.3 0 2.59057 16.2 + 6 0.304038 0 6.5 0 0.400424 7.9 + 7 0.184829 0 4.1 0 0.242659 4.5 + 8 0.335645 0.1 3.7 0 0.500445 4.7 + 9 0.0577185 0 1.3 0 0.0335536 1.6 + 10 0.166113 0 2.7 0 0.181458 3.2 + 11 0.0995022 0 2.7 0 0.0783806 2.9 + 12 0.0426412 0 2.1 0 0.0243191 2.3 + 13 0.00756877 0 0.9 0 0.00166501 1 + 14 0.0130515 0 0.3 0 0.00892793 0.4 + 15 0.0414082 0 0.8 0 0.0275896 0.9 + 16 0.0918226 0 1.7 0 0.107624 1.9 + 17 0.00162235 0 0.2 0 0.000385369 0.2 + 18 0.00160916 0 0.1 0 0.000298722 0.1 + 19 0.217962 0 0.3 0 1.08598 0.7 ############################################################ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. /run/dumpCouples ========= Table of registered couples ============================ @@ -3129,72 +3211,72 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : No Material : Lead Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 5.95924 keV e- 57.7126 keV e+ 56.5645 keV proton 1 keV + Energy thresholds : gamma 5.995 keV e- 58.1082 keV e+ 56.9484 keV proton 1 keV Index : 2 used in the geometry : No Material : liquidArgon Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 14.4978 keV e+ 14.3179 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 14.5951 keV e+ 14.2339 keV proton 1 keV Index : 3 used in the geometry : No Material : Lead Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 29.3415 keV e- 240.349 keV e+ 230.882 keV proton 10 keV + Energy thresholds : gamma 29.4761 keV e- 241.522 keV e+ 231.977 keV proton 10 keV Index : 4 used in the geometry : No Material : liquidArgon Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 2.00013 keV e- 82.3069 keV e+ 81.2117 keV proton 10 keV + Energy thresholds : gamma 1.9981 keV e- 82.4135 keV e+ 81.8616 keV proton 10 keV Index : 5 used in the geometry : No Material : Lead Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 101.981 keV e- 1.36213 MeV e+ 1.28245 MeV proton 100 keV + Energy thresholds : gamma 101.843 keV e- 1.36749 MeV e+ 1.27862 MeV proton 100 keV Index : 6 used in the geometry : No Material : liquidArgon Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.2036 keV e- 345.078 keV e+ 335.956 keV proton 100 keV + Energy thresholds : gamma 6.19986 keV e- 344.855 keV e+ 333.46 keV proton 100 keV Index : 7 used in the geometry : Yes Material : Aluminium Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 34.4583 keV e+ 33.7728 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 34.1725 keV e+ 33.9436 keV proton 1 keV Region(s) which use this couple : Calor-A Index : 8 used in the geometry : Yes Material : Water Range cuts : gamma 10 um e- 10 um e+ 10 um proton 10 um - Energy thresholds : gamma 990 eV e- 14.1795 keV e+ 13.7742 keV proton 1 keV + Energy thresholds : gamma 990 eV e- 14.0874 keV e+ 14.0874 keV proton 1 keV Region(s) which use this couple : Calor-A Index : 9 used in the geometry : Yes Material : Aluminium Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 2.34892 keV e- 131.538 keV e+ 128.061 keV proton 10 keV + Energy thresholds : gamma 2.3478 keV e- 131.031 keV e+ 128.416 keV proton 10 keV Region(s) which use this couple : Calor-B Index : 10 used in the geometry : Yes Material : Water Range cuts : gamma 100 um e- 100 um e+ 100 um proton 100 um - Energy thresholds : gamma 1.10939 keV e- 85.1099 keV e+ 83.4168 keV proton 10 keV + Energy thresholds : gamma 1.10981 keV e- 84.6589 keV e+ 83.5287 keV proton 10 keV Region(s) which use this couple : Calor-B Index : 11 used in the geometry : Yes Material : Aluminium Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 6.90532 keV e- 597.637 keV e+ 574.097 keV proton 100 keV + Energy thresholds : gamma 6.90363 keV e- 598.345 keV e+ 570.85 keV proton 100 keV Region(s) which use this couple : Calor-C Index : 12 used in the geometry : Yes Material : Water Range cuts : gamma 1 mm e- 1 mm e+ 1 mm proton 1 mm - Energy thresholds : gamma 2.92994 keV e- 349.731 keV e+ 342.774 keV proton 100 keV + Energy thresholds : gamma 2.94056 keV e- 351.877 keV e+ 342.545 keV proton 100 keV Region(s) which use this couple : Calor-C @@ -3205,6 +3287,6 @@ Visualization Manager deleting... G4 kernel has come to Quit state. ================== Deleting memory pools =================== Number of memory pools allocated: 13 of which, static: 0 -Dynamic pools deleted: 13 / Total memory freed: 0.75 MB +Dynamic pools deleted: 13 / Total memory freed: 0.78 MB ============================================================ RunManagerKernel is deleted. Good bye :) diff --git a/examples/extended/visualization/CMakeLists.txt b/examples/extended/visualization/CMakeLists.txt index 0a7e9d7ca0..d90bc1e1ff 100644 --- a/examples/extended/visualization/CMakeLists.txt +++ b/examples/extended/visualization/CMakeLists.txt @@ -1,6 +1,9 @@ #---Adding all visualization examples subdirectories explicitly -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() add_subdirectory(perspective) add_subdirectory(standalone) diff --git a/examples/extended/visualization/perspective/CMakeLists.txt b/examples/extended/visualization/perspective/CMakeLists.txt index c450b51ca2..7d417e879d 100644 --- a/examples/extended/visualization/perspective/CMakeLists.txt +++ b/examples/extended/visualization/perspective/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(perspective) #---------------------------------------------------------------------------- diff --git a/examples/extended/visualization/perspective/History b/examples/extended/visualization/perspective/History index 85d7539604..2196fa2b26 100644 --- a/examples/extended/visualization/perspective/History +++ b/examples/extended/visualization/perspective/History @@ -15,6 +15,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +3rd November 2020 B. Morgan (exam-ext-vis-persp-V10-06-00) +- Support same CMake version range as core Geant4 + 8th January 2017 John Allison (exam-ext-vis-persp-V10-03-00) - perspective.cc: o Changed SetUserAction to RegisterRunDurationUserVisAction. @@ -25,7 +28,7 @@ track of all tags. 19th February 2013 Ivana Hrivnacova (exam-ext-vis-persp-V09-06-00) - Applied coding guidelines (data members initialization) - + 11th June 2012 John Allison (exam-ext-vis-persp-V09-05-03) - Added .README for doxygen. diff --git a/examples/extended/visualization/standalone/CMakeLists.txt b/examples/extended/visualization/standalone/CMakeLists.txt index 0b2b24a425..a01be17bf0 100644 --- a/examples/extended/visualization/standalone/CMakeLists.txt +++ b/examples/extended/visualization/standalone/CMakeLists.txt @@ -1,6 +1,9 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(standalone) #---------------------------------------------------------------------------- diff --git a/examples/extended/visualization/standalone/History b/examples/extended/visualization/standalone/History index 6986f11e52..de18dbed73 100644 --- a/examples/extended/visualization/standalone/History +++ b/examples/extended/visualization/standalone/History @@ -15,6 +15,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +3rd November 2020 B. Morgan (exam-ext-vis-standalone-V10-06-00) +- Support same CMake version range as core Geant4 + 8th January 2017 John Allison (exam-ext-vis-standalone-V10-03-00) - standalone.cc: o Updated to current practice. diff --git a/examples/extended/visualization/userVisAction/CMakeLists.txt b/examples/extended/visualization/userVisAction/CMakeLists.txt index 8e5e21fd16..148eb237f2 100644 --- a/examples/extended/visualization/userVisAction/CMakeLists.txt +++ b/examples/extended/visualization/userVisAction/CMakeLists.txt @@ -1,7 +1,10 @@ #---------------------------------------------------------------------------- # Setup the project -cmake_minimum_required(VERSION 2.6 FATAL_ERROR) +cmake_minimum_required(VERSION 3.8...3.18) +if(${CMAKE_VERSION} VERSION_LESS 3.12) + cmake_policy(VERSION ${CMAKE_MAJOR_VERSION}.${CMAKE_MINOR_VERSION}) +endif() project(userVisAction) #---------------------------------------------------------------------------- diff --git a/examples/extended/visualization/userVisAction/History b/examples/extended/visualization/userVisAction/History index ae91f89f68..fc0d50e9f1 100644 --- a/examples/extended/visualization/userVisAction/History +++ b/examples/extended/visualization/userVisAction/History @@ -15,6 +15,12 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +13th November 2020 B. Morgan (exam-ext-vis-UVA-V10-06-01) +- Migration to G4RunManagerFactory. + +3rd November 2020 B. Morgan (exam-ext-vis-UVA-V10-06-00) +- Support same CMake version range as core Geant4 + 24th January 2020 Anna Zaborowska (exam-ext-vis-UVA-V10-06-00) - Fix suggested in macros command /run/numberOfThreads diff --git a/examples/extended/visualization/userVisAction/run1.out b/examples/extended/visualization/userVisAction/run1.out index c3eb94e6f3..17701553d0 100644 --- a/examples/extended/visualization/userVisAction/run1.out +++ b/examples/extended/visualization/userVisAction/run1.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -27,10 +28,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -68,6 +71,10 @@ Some /vis commands (optionally) take a string to specify colour. Checking overlaps for volume Envelope (G4Box) ... OK! Checking overlaps for volume Shape1 (G4Cons) ... OK! Checking overlaps for volume Shape2 (G4Trd) ... OK! +### HadronInelasticQBBC Construct Process: + Emin(FTFP)= 3 GeV Emax(FTFP)= 100000 GeV + Emin(BERT)= 1 GeV Emax(BERT)= 6 GeV Emax(BERTpions)= 12 GeV + Emin(BIC) = 0 GeV Emax(BIC)= 1.5 GeV. ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 /run/verbose 2 /event/verbose 0 @@ -103,10 +110,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -130,10 +138,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -161,9 +170,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -177,14 +186,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -193,9 +202,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -207,9 +216,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -220,9 +229,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -236,14 +245,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -252,9 +261,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -268,14 +277,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -284,9 +293,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -300,14 +309,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -316,9 +325,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -333,14 +342,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -349,9 +358,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -366,14 +375,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -382,9 +391,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -398,14 +407,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -414,9 +423,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -430,14 +439,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -467,6 +476,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -545,6 +576,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -685,7 +729,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi+Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -697,7 +742,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi-Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -765,7 +811,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= Region -- -- appears in world volume @@ -793,21 +838,21 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.52852 keV e- 278.507 keV e+ 271.144 keV proton 70 keV + Energy thresholds : gamma 2.51944 keV e- 276.265 keV e+ 270.751 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_A-150_TISSUE Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.28683 keV e- 301.815 keV e+ 293.837 keV proton 70 keV + Energy thresholds : gamma 2.27786 keV e- 299.466 keV e+ 293.489 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 3 used in the geometry : Yes Material : G4_BONE_COMPACT_ICRU Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 3.9341 keV e- 397.193 keV e+ 384.112 keV proton 70 keV + Energy thresholds : gamma 3.95224 keV e- 397.122 keV e+ 384 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -837,270 +882,159 @@ See commands in /vis/modeling/trajectories/ for other options. ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 74 -7.71 -150 6 0 0 0 Envelope initStep - 1 74 -7.71 0.868 0.435 0 151 151 Envelope compt - 2 -100 93.8 -17.2 0.435 0 202 353 World Transportation - 3 -120 105 -19.3 0.435 0 23.3 376 OutOfWorld Transportation + 0 -50.2 6.16 -150 6 0 0 0 Envelope initStep + 1 -50.2 6.16 40 6 0 190 190 Shape2 Transportation + 2 -50.2 6.16 100 6 0 60 250 Envelope Transportation + 3 -50.2 6.16 150 6 0 50 300 World Transportation + 4 -50.2 6.16 180 6 0 30 330 OutOfWorld Transportation + +********************************************************************************************************* +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 +********************************************************************************************************* + +Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName + 0 0.957 73.9 -150 6 0 0 0 Envelope initStep + 1 0.957 73.9 -65.6 1.79 0 84.4 84.4 Envelope compt + 2 100 27.8 79.7 1.79 0 182 266 World Transportation + 3 120 18.6 109 1.79 0 36.7 303 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 74 -7.71 0.868 5.56 0 0 0 Envelope initStep - 1 76.1 -8.22 8.27 4.25 1.32 7.88 7.88 Envelope eIoni - 2 77.7 -11.2 13.4 3.27 0.975 6.3 14.2 Envelope eIoni - 3 79.3 -12.3 17.8 2.53 0.742 5.13 19.3 Envelope eIoni - 4 79.5 -12.3 17.8 2.04 0.0247 0.167 19.5 Envelope eIoni - 5 82.6 -12.8 18.4 1.51 0.527 3.63 23.1 Envelope eIoni - 6 82.5 -14.5 19.4 1.05 0.373 2.21 25.3 Envelope eBrem - 7 83.1 -16.2 20.1 0.573 0.479 2.38 27.7 Envelope eIoni - 8 82.4 -17 20.1 0.192 0.381 1.66 29.4 Envelope eIoni - 9 82.5 -17 19.9 0 0.192 0.423 29.8 Envelope eIoni + 0 0.957 73.9 -65.6 4.21 0 0 0 Envelope initStep + 1 -0.269 74.4 -59.8 3.25 0.962 6.26 6.26 Envelope eIoni + 2 -0.127 75.1 -55.1 2.4 0.853 5.1 11.4 Envelope eIoni + 3 -0.4 75.6 -51.5 1.68 0.713 4.07 15.4 Envelope eIoni + 4 -1.01 76.5 -48.9 1.16 0.527 3.19 18.6 Envelope eIoni + 5 -1.04 75.1 -47.3 0.793 0.364 2.52 21.1 Envelope eIoni + 6 -0.648 73.7 -47 0.437 0.356 2.02 23.2 Envelope eIoni + 7 -0.799 72.9 -46.9 0.0579 0.379 1.35 24.5 Envelope eIoni + 8 -0.809 72.9 -47 0 0.0579 0.0562 24.6 Envelope eIoni ********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 2 +* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 82.5 -14.5 19.4 0.0875 0 0 0 Envelope initStep - 1 85.2 -21 21.5 0.0875 0 7.35 7.35 Envelope Rayl - 2 87.4 -39.2 52.8 0.0677 0 36.2 43.6 Envelope compt - 3 85.5 -39.5 49.9 0.0657 0 3.44 47 Envelope compt - 4 93 -52.7 -10.8 0.0545 0 62.6 110 Envelope compt - 5 88.5 -55.6 -6.46 0.0456 0 6.91 116 Envelope compt - 6 100 -52.8 -8.36 0.0456 0 12 129 World Transportation - 7 120 -47.9 -11.7 0.0456 0 20.9 149 OutOfWorld Transportation + 0 -20.4 -71 -150 6 0 0 0 Envelope initStep + 1 -20.4 -71 -61.9 0.298 0 88.1 88.1 Envelope compt + 2 -47.6 -100 -94.1 0.298 0 51.1 139 World Transportation + 3 -66.4 -120 -116 0.298 0 35.3 175 OutOfWorld Transportation ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 4 +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 88.5 -55.6 -6.46 0.00887 0 0 0 Envelope initStep - 1 88.5 -55.6 -6.46 0 0.00887 0.00207 0.00207 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 93 -52.7 -10.8 0.0112 0 0 0 Envelope initStep - 1 93 -52.7 -10.8 0 0.0112 0.00311 0.00311 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 85.5 -39.5 49.9 0.00201 0 0 0 Envelope initStep - 1 85.5 -39.5 49.9 0 0.00201 0.00017 0.00017 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 5, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 87.4 -39.2 52.8 0.0198 0 0 0 Envelope initStep - 1 87.4 -39.2 52.8 0 0.0198 0.00853 0.00853 Envelope eIoni + 0 -20.4 -71 -61.9 5.7 0 0 0 Envelope initStep + 1 -20.2 -70.8 -54.2 4.41 1.29 8.04 8.04 Envelope eIoni + 2 -20.7 -70.7 -48.1 3.33 1.08 6.5 14.5 Envelope eIoni + 3 -20.2 -68.6 -44.9 2.02 0.689 4.04 18.6 Envelope eIoni + 4 -20.3 -66.7 -42.3 1.51 0.517 3.61 22.2 Envelope eIoni + 5 -21.3 -65.4 -40.4 1.02 0.484 2.97 25.2 Envelope eIoni + 6 -22.8 -64.7 -39.4 0.566 0.457 2.34 27.5 Envelope eIoni + 7 -23 -64.5 -38.4 0.26 0.307 1.64 29.2 Envelope eIoni + 8 -23.1 -64.4 -38.1 0 0.26 0.68 29.8 Envelope eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 2 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 79.5 -12.3 17.8 0.466 0 0 0 Envelope initStep - 1 79.9 -11.6 18 0.104 0.361 1.42 1.42 Envelope eIoni - 2 80 -11.6 18 0 0.104 0.155 1.58 Envelope eIoni + 0 -20.2 -68.6 -44.9 0.613 0 0 0 Envelope initStep + 1 -20.1 -69.1 -43.8 0.207 0.406 1.73 1.73 Envelope eIoni + 2 -20.2 -69 -43.6 0 0.207 0.476 2.2 Envelope eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -45.3 66.8 -150 6 0 0 0 Envelope initStep - 1 -45.3 66.8 -105 0.792 0 45.2 45.2 Envelope compt - 2 -100 79.1 -77.4 0.792 0 62.4 108 World Transportation - 3 -120 83.5 -67.3 0.792 0 22.8 130 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -45.3 66.8 -105 5.21 0 0 0 Envelope initStep - 1 -44.6 65 -97.8 4.09 1.11 7.45 7.45 Envelope eIoni - 2 -43.7 64.2 -92.2 3.11 0.988 6.12 13.6 Envelope eIoni - 3 -39.7 62 -91.5 2.31 0.794 4.93 18.5 Envelope eIoni - 4 -36.7 60.1 -91.3 1.76 0.556 3.96 22.5 Envelope eIoni - 5 -33.9 60.2 -91 1.26 0.492 3.28 25.7 Envelope eIoni - 6 -31.7 60.8 -91.2 0.792 0.471 2.66 28.4 Envelope eIoni - 7 -30.8 61.7 -92 0.487 0.305 2.02 30.4 Envelope eIoni - 8 -31.4 62.3 -91.6 0.131 0.357 1.48 31.9 Envelope eIoni - 9 -31.3 62.4 -91.7 0 0.131 0.225 32.1 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -31.5 68.4 -150 6 0 0 0 Envelope initStep - 1 -31.5 68.4 -79.5 2.18 0 70.5 70.5 Envelope compt - 2 -33.4 61.6 -68 1.65 0 13.5 84 Envelope compt - 3 -100 23.5 67.8 1.65 0 156 240 World Transportation - 4 -120 12 109 1.65 0 46.8 287 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -33.4 61.6 -68 0.538 0 0 0 Envelope initStep - 1 -32.9 60.8 -67.5 0.197 0.34 1.59 1.59 Envelope eIoni - 2 -32.9 60.6 -67.4 0 0.197 0.442 2.03 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -31.5 68.4 -79.5 3.82 0 0 0 Envelope initStep - 1 -31.2 69.8 -74.2 2.74 1.07 5.78 5.78 Envelope eIoni - 2 -29.6 70.4 -70.5 1.95 0.796 4.49 10.3 Envelope eIoni - 3 -26.7 70.8 -69.2 1.33 0.618 3.51 13.8 Envelope eIoni - 4 -25.1 70.4 -67.6 0.94 0.388 2.74 16.5 Envelope eIoni - 5 -23.8 69.5 -66.9 0.556 0.384 2.23 18.8 Envelope eIoni - 6 -23.3 69 -67.6 0.181 0.375 1.62 20.4 Envelope eIoni - 7 -23.5 68.9 -67.6 0 0.181 0.384 20.8 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -39.4 -44.4 -150 6 0 0 0 Envelope initStep - 1 -39.4 -44.4 -52.9 1.74 0 97.1 97.1 Envelope compt - 2 -39.1 -72.8 -16.1 0.237 0 46.5 144 Envelope compt - 3 -25.9 -44.8 -32.8 0.231 0 35.2 179 Envelope compt - 4 -2.32 -5.92 -81.9 0.231 0 67 246 Shape1 Transportation - 5 -1.77 -5.01 -83.1 0.216 0 1.56 247 Shape1 compt - 6 -0.458 -3.6 -83.6 0.123 0 2.01 249 Shape1 compt - 7 -3.47 -4.91 -84.6 0.123 0 3.41 253 Envelope Transportation - 8 -77.3 -36.9 -107 0.119 0 83.5 336 Envelope compt - 9 -95.7 -62.1 -126 0.104 0 36.5 373 Envelope compt - 10 -100 -63.1 -124 0.104 0 4.86 378 World Transportation - 11 -120 -68 -115 0.104 0 22.6 400 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -95.7 -62.1 -126 0.0151 0 0 0 Envelope initStep - 1 -95.7 -62.1 -126 0 0.0151 0.00524 0.00524 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -77.3 -36.9 -107 0.00436 0 0 0 Envelope initStep - 1 -77.3 -36.9 -107 0 0.00436 0.00061 0.00061 Envelope eIoni + 0 62 -65.5 -150 6 0 0 0 Envelope initStep + 1 62 -65.5 -95.2 2.85 0 54.8 54.8 Envelope compt + 2 50.1 -65.6 -69.6 0.283 0 28.2 83 Envelope compt + 3 72.5 -77.9 -77.6 0.231 0 26.8 110 Envelope compt + 4 73.9 -78.6 -76.5 0.23 0 1.89 112 Envelope compt + 5 85.2 -87 -63.8 0.173 0 19 131 Envelope compt + 6 100 -98 -75.2 0.173 0 21.7 152 World Transportation + 7 120 -113 -90.6 0.173 0 29.3 182 OutOfWorld Transportation ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 6, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -0.458 -3.6 -83.6 0.0926 0 0 0 Shape1 initStep - 1 -0.409 -3.56 -83.7 0 0.0926 0.11 0.11 Shape1 eIoni + 0 85.2 -87 -63.8 0.0562 0 0 0 Envelope initStep + 1 85.2 -87 -63.7 0 0.0562 0.0534 0.0534 Envelope eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 5, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -1.77 -5.01 -83.1 0.0153 0 0 0 Shape1 initStep - 1 -1.77 -5.01 -83.1 0 0.0153 0.00463 0.00463 Shape1 eIoni + 0 73.9 -78.6 -76.5 0.00121 0 0 0 Envelope initStep + 1 73.9 -78.6 -76.5 0 0.00121 7.67e-05 7.67e-05 Envelope eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 4, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -25.9 -44.8 -32.8 0.00604 0 0 0 Envelope initStep - 1 -25.9 -44.8 -32.8 0 0.00604 0.00107 0.00107 Envelope eIoni + 0 72.5 -77.9 -77.6 0.0527 0 0 0 Envelope initStep + 1 72.6 -77.9 -77.7 0 0.0527 0.0478 0.0478 Envelope eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -39.1 -72.8 -16.1 1.51 0 0 0 Envelope initStep - 1 -39.3 -74.4 -14.1 1.04 0.465 2.97 2.97 Envelope eIoni - 2 -38.8 -73.2 -12.7 0.594 0.447 2.37 5.34 Envelope eIoni - 3 -39.7 -72.9 -12.1 0.292 0.303 1.7 7.03 Envelope eIoni - 4 -40.1 -72.7 -12.1 0 0.292 0.812 7.84 Envelope eIoni + 0 50.1 -65.6 -69.6 2.56 0 0 0 Envelope initStep + 1 48.2 -65.5 -66.2 1.94 0.62 4.27 4.27 Envelope eIoni + 2 47.4 -64.3 -63.4 1.45 0.493 3.51 7.78 Envelope eIoni + 3 46.3 -64.4 -61.2 0.897 0.554 2.9 10.7 Envelope eIoni + 4 45 -65.5 -61.2 0.554 0.343 2.17 12.9 Envelope eIoni + 5 44.2 -65.5 -60.6 0.183 0.371 1.62 14.5 Envelope eIoni + 6 44.1 -65.5 -60.4 0 0.183 0.391 14.9 Envelope eIoni ********************************************************************************************************* * G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -39.4 -44.4 -52.9 4.26 0 0 0 Envelope initStep - 1 -39.4 -43.1 -47.1 3.34 0.92 6.31 6.31 Envelope eIoni - 2 -41.3 -43 -42.7 2.55 0.787 5.21 11.5 Envelope eIoni - 3 -42.3 -42.7 -38.9 1.92 0.632 4.25 15.8 Envelope eIoni - 4 -43 -41.5 -36.1 0.984 0.934 3.48 19.3 Envelope eIoni - 5 -43 -41.1 -34.4 0.389 0.594 2.29 21.5 Envelope eIoni - 6 -42.4 -41 -34.5 0.117 0.273 1.21 22.8 Envelope eIoni - 7 -42.3 -41 -34.5 0 0.117 0.188 22.9 Envelope eIoni + 0 62 -65.5 -95.2 3.15 0 0 0 Envelope initStep + 1 63.6 -65.5 -90.8 2.39 0.763 4.98 4.98 Envelope eIoni + 2 66 -65.4 -88.1 1.82 0.564 4.06 9.04 Envelope eIoni + 3 67.3 -67.2 -86.1 1.3 0.52 3.37 12.4 Envelope eIoni + 4 66.8 -68.5 -84.2 0.772 0.533 2.71 15.1 Envelope eIoni + 5 67.9 -69 -83.4 0.365 0.407 1.99 17.1 Envelope eIoni + 6 68.4 -69.1 -83.1 0.0303 0.335 1.12 18.2 Envelope eIoni + 7 68.4 -69.1 -83.1 0 0.0303 0.018 18.2 Envelope eIoni ********************************************************************************************************* * G4Track Information: Particle = gamma, Track ID = 1, Parent ID = 0 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 32.5 -70.3 -150 6 0 0 0 Envelope initStep - 1 32.5 -70.3 60.5 6 0 211 211 Shape2 Transportation - 2 32.5 -70.3 100 6 0 39.5 250 Envelope Transportation - 3 32.5 -70.3 134 3.41 0 34.1 284 Envelope compt - 4 32.3 -72.2 139 2.14 0 5.48 290 Envelope compt - 5 36.8 -75.1 150 2.14 0 12 302 World Transportation - 6 49.3 -83.3 180 2.14 0 33.5 335 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 32.3 -72.2 139 1.28 0 0 0 Envelope initStep - 1 31.1 -73.1 141 0.898 0.378 2.68 2.68 Envelope eIoni - 2 30.4 -74.6 141 0.536 0.363 2.17 4.85 Envelope eIoni - 3 30.5 -75.5 141 0.27 0.266 1.58 6.43 Envelope eIoni - 4 30.6 -75.5 140 0 0.27 0.72 7.15 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 32.5 -70.3 134 2.59 0 0 0 Envelope initStep - 1 32.7 -68.7 138 1.86 0.725 4.3 4.3 Envelope eIoni - 2 33.7 -67.7 140 1.34 0.52 3.41 7.71 Envelope eIoni - 3 34.1 -68.2 143 0.793 0.548 2.76 10.5 Envelope eIoni - 4 33.5 -68.4 144 0.358 0.435 2.02 12.5 Envelope eIoni - 5 33.7 -68.9 144 0 0.358 1.1 13.6 Envelope eIoni + 0 34.9 -1.18 -150 6 0 0 0 Envelope initStep + 1 34.9 -1.18 40 6 0 190 190 Shape2 Transportation + 2 34.9 -1.18 100 6 0 60 250 Envelope Transportation + 3 34.9 -1.18 150 6 0 50 300 World Transportation + 4 34.9 -1.18 180 6 0 30 330 OutOfWorld Transportation Run terminated. Run Summary Number of events processed : 5 - User=0.010000s Real=0.002696s Sys=0.000000s + User=0.000000s Real=0.001576s Sys=0.000000s --------------------End of Global Run----------------------- The run consists of 5 gamma of 6 MeV Dose in scoring volume : 0 picoGy +- 0 picoGy ------------------------------------------------------------ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # # proton 210 MeV to the direction (0.,0.,1.) # @@ -1135,21 +1069,21 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 699.9999999999999 um e- 699.9999999999999 um e+ 699.9999999999999 um proton 699.9999999999999 um - Energy thresholds : gamma 2.528516002468437 keV e- 278.5068267112636 keV e+ 271.1444301022197 keV proton 69.99999999999999 keV + Energy thresholds : gamma 2.519443689999526 keV e- 276.2650242766716 keV e+ 270.7512371977519 keV proton 69.99999999999999 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_A-150_TISSUE Range cuts : gamma 699.9999999999999 um e- 699.9999999999999 um e+ 699.9999999999999 um proton 699.9999999999999 um - Energy thresholds : gamma 2.286829921335149 keV e- 301.8153456204805 keV e+ 293.8367825691075 keV proton 69.99999999999999 keV + Energy thresholds : gamma 2.277861824750698 keV e- 299.4661435146966 keV e+ 293.4893009628447 keV proton 69.99999999999999 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 3 used in the geometry : Yes Material : G4_BONE_COMPACT_ICRU Range cuts : gamma 699.9999999999999 um e- 699.9999999999999 um e+ 699.9999999999999 um proton 699.9999999999999 um - Energy thresholds : gamma 3.934103714656939 keV e- 397.1930874594833 keV e+ 384.1118758920303 keV proton 69.99999999999999 keV + Energy thresholds : gamma 3.952238766484486 keV e- 397.1221526194081 keV e+ 384.0004092871193 keV proton 69.99999999999999 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -1162,348 +1096,72 @@ Index : 3 used in the geometry : Yes ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.03 -9.54 -150 210 0 0 0 Envelope initStep - 1 -4.03 -9.54 -128 0 9.06 21.8 21.8 Envelope protonInelastic - :----- List of 2ndaries - #SpawnInStep= 4(Rest= 0,Along= 0,Post= 4), #SpawnTotal= 4 --------------- - : -4.03 -9.54 -128 115 proton - : -4.03 -9.54 -128 66.9 neutron - : -4.03 -9.54 -128 2.55 gamma - : -4.03 -9.54 -128 0.534 O15 - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - -********************************************************************************************************* -* G4Track Information: Particle = O15, Track ID = 5, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.03 -9.54 -128 0.534 0 0 0 Envelope initStep - 1 -4.04 -9.54 -128 0 0.534 0.00163 0.00163 Envelope ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 4, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.03 -9.54 -128 2.55 0 0 0 Envelope initStep - 1 -75.3 13 -22.7 0.276 0 129 129 Envelope compt + 0 69 -12.8 -150 210 0 0 0 Envelope initStep + 1 69 -12.8 -119 196 13.5 30.7 30.7 Envelope hIoni :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 1 --------------- - : -75.3 13 -22.7 2.28 e- + : 69 -12.8 -119 0.395 e- :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 2 -60 4.07 -24.7 0.157 0 17.9 147 Envelope compt + 2 68.7 -13 -68.3 172 24 51 81.7 Envelope hIoni + 3 68.6 -13 -52.4 164 7.65 15.9 97.6 Envelope hIoni :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 2 --------------- - : -60 4.07 -24.7 0.119 e- + : 68.6 -13 -52.4 0.282 e- :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 3 -99.5 -23.1 9.06 0.104 0 58.7 206 Envelope compt - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 3 --------------- - : -99.5 -23.1 9.06 0.0524 e- - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 4 30 19.8 39.3 0.0915 0 140 346 Envelope compt - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 4 --------------- - : 30 19.8 39.3 0.0127 e- - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 5 100 -19.8 -38.5 0.0915 0 112 457 World Transportation - 6 120 -31.1 -60.8 0.0915 0 32 489 OutOfWorld Transportation + 4 66.4 -10.4 -15.2 145 19.5 37.4 135 Envelope hIoni + 5 64.5 -7.93 14.6 128 16.8 30 165 Envelope hIoni + 6 63.1 -5.88 38.7 114 14.2 24.2 189 Envelope hIoni + 7 62 -4.12 58.2 101 12.6 19.7 209 Envelope hIoni + 8 61 -2.67 74.1 89.1 12 16 225 Envelope hIoni + 9 60.5 -1.44 86.8 78.6 10.5 12.8 238 Envelope hIoni + 10 60 -0.653 96 70 8.62 9.22 247 Shape2 Transportation + 11 59.7 -0.374 100 63.4 6.54 4.04 251 Envelope Transportation + 12 59.5 0.146 107 55.4 8.04 7.03 258 Envelope hIoni + 13 59.3 0.564 113 48.5 6.89 5.54 263 Envelope hIoni + 14 59.1 0.898 117 42.6 5.9 4.4 268 Envelope hIoni + 15 58.9 1.21 120 37.3 5.27 3.51 271 Envelope hIoni + 16 58.8 1.53 123 32.7 4.65 2.8 274 Envelope hIoni + 17 58.7 1.74 125 28.5 4.15 2.24 276 Envelope hIoni + 18 58.5 1.91 127 24.8 3.72 1.79 278 Envelope hIoni + 19 58.4 2.05 129 21.5 3.28 1.42 280 Envelope hIoni + 20 58.3 2.15 130 18.8 2.78 1.14 281 Envelope hIoni + 21 58.3 2.25 131 16.1 2.63 0.921 282 Envelope hIoni + 22 58.2 2.32 131 13.9 2.26 0.739 282 Envelope hIoni + 23 58.2 2.36 132 11.6 2.26 0.6 283 Envelope hIoni + 24 58.2 2.39 132 9.57 2.04 0.478 283 Envelope hIoni + 25 58.1 2.42 133 7.58 1.99 0.382 284 Envelope hIoni + 26 58.1 2.44 133 5.72 1.86 0.301 284 Envelope hIoni + 27 58.1 2.46 133 3.79 1.93 0.235 284 Envelope hIoni + 28 58.1 2.47 134 1.7 2.09 0.169 285 Envelope hIoni + 29 58.1 2.48 134 0.0905 1.61 0.058 285 Envelope hIoni + 30 58.1 2.48 134 0 0.0905 0.00161 285 Envelope hIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 9, Parent ID = 4 +* G4Track Information: Particle = e-, Track ID = 3, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 30 19.8 39.3 0.0127 0 0 0 Envelope initStep - 1 30 19.8 39.3 0 0.0127 0.00387 0.00387 Envelope eIoni + 0 68.6 -13 -52.4 0.282 0 0 0 Envelope initStep + 1 68.5 -12.9 -52.1 0 0.282 0.77 0.77 Envelope eIoni ********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 8, Parent ID = 4 +* G4Track Information: Particle = e-, Track ID = 2, Parent ID = 1 ********************************************************************************************************* Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -99.5 -23.1 9.06 0.0524 0 0 0 Envelope initStep - 1 -99.5 -23.2 9.07 0 0.0524 0.0473 0.0473 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 7, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -60 4.07 -24.7 0.119 0 0 0 Envelope initStep - 1 -59.9 4.05 -24.7 0 0.119 0.194 0.194 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 6, Parent ID = 4 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -75.3 13 -22.7 2.28 0 0 0 Envelope initStep - 1 -77.5 13.7 -20 1.72 0.561 3.92 3.92 Envelope eIoni - 2 -79.5 12.2 -18.8 1.25 0.466 3.23 7.15 Envelope eIoni - 3 -80.4 11 -17.1 0.855 0.396 2.64 9.8 Envelope eIoni - 4 -81.5 11.5 -16.1 0.474 0.381 2.11 11.9 Envelope eIoni - 5 -82.3 11.8 -16.1 0.157 0.317 1.45 13.4 Envelope eIoni - 6 -82.3 12 -16 0 0.157 0.307 13.7 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 3, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.03 -9.54 -128 66.9 0 0 0 Envelope initStep - 1 24.9 -41.6 -82.4 0 0 62.9 62.9 Envelope neutronInelastic - :----- List of 2ndaries - #SpawnInStep= 4(Rest= 0,Along= 0,Post= 4), #SpawnTotal= 4 --------------- - : 24.9 -41.6 -82.4 34.1 neutron - : 24.9 -41.6 -82.4 15.1 neutron - : 24.9 -41.6 -82.4 0.165 gamma - : 24.9 -41.6 -82.4 1.82 O15 - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - -********************************************************************************************************* -* G4Track Information: Particle = O15, Track ID = 13, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 24.9 -41.6 -82.4 1.82 0 0 0 Envelope initStep - 1 24.9 -41.6 -82.4 0 1.82 0.0024 0.0024 Envelope ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = gamma, Track ID = 12, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 24.9 -41.6 -82.4 0.165 0 0 0 Envelope initStep - 1 14.2 -46.1 -83.3 0.118 0 11.7 11.7 Envelope compt - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 1 --------------- - : 14.2 -46.1 -83.3 0.046 e- - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 2 14.9 -43.4 -70.8 0.0948 0 12.8 24.5 Envelope compt - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 2 --------------- - : 14.9 -43.4 -70.8 0.0236 e- - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 3 -24.4 -18.4 -77.2 0.0746 0 47.1 71.6 Envelope compt - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 3 --------------- - : -24.4 -18.4 -77.2 0.0203 e- - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 4 -23.4 -38.9 -86.7 0.0708 0 22.5 94.1 Envelope compt - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 4 --------------- - : -23.4 -38.9 -86.7 0.00382 e- - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 5 -16.4 -44.2 -87.6 0.0699 0 8.79 103 Envelope compt - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 5 --------------- - : -16.4 -44.2 -87.6 0.000849 e- - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 6 58.6 -69.2 -75.3 0.0672 0 80.1 183 Envelope compt - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 6 --------------- - : 58.6 -69.2 -75.3 0.0027 e- - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 7 61.5 -67.7 -74.3 0.0548 0 3.37 186 Envelope compt - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 7 --------------- - : 61.5 -67.7 -74.3 0.0124 e- - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 8 52.1 -96.7 -80.4 0.0472 0 31.1 217 Envelope compt - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 8 --------------- - : 52.1 -96.7 -80.4 0.0076 e- - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 9 51.1 -90.7 -64.9 0.0472 0 16.6 234 Envelope Rayl - 10 19.1 -100 -59.4 0.0472 0 33.7 268 World Transportation - 11 -49.9 -120 -47.5 0.0472 0 72.8 341 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 21, Parent ID = 12 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 52.1 -96.7 -80.4 0.0076 0 0 0 Envelope initStep - 1 52.1 -96.7 -80.4 0 0.0076 0.00158 0.00158 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 20, Parent ID = 12 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 61.5 -67.7 -74.3 0.0124 0 0 0 Envelope initStep - 1 61.5 -67.7 -74.3 0 0.0124 0.00373 0.00373 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 19, Parent ID = 12 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 58.6 -69.2 -75.3 0.0027 0 0 0 Envelope initStep - 1 58.6 -69.2 -75.3 0 0.0027 0.000274 0.000274 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 18, Parent ID = 12 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -16.4 -44.2 -87.6 0.000849 0 0 0 Envelope initStep - 1 -16.4 -44.2 -87.6 0 0.000849 4.6e-05 4.6e-05 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 17, Parent ID = 12 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -23.4 -38.9 -86.7 0.00382 0 0 0 Envelope initStep - 1 -23.4 -38.9 -86.7 0 0.00382 0.000488 0.000488 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 16, Parent ID = 12 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -24.4 -18.4 -77.2 0.0203 0 0 0 Envelope initStep - 1 -24.4 -18.4 -77.2 0 0.0203 0.00885 0.00885 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 15, Parent ID = 12 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 14.9 -43.4 -70.8 0.0236 0 0 0 Envelope initStep - 1 14.9 -43.4 -70.8 0 0.0236 0.0116 0.0116 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = e-, Track ID = 14, Parent ID = 12 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 14.2 -46.1 -83.3 0.046 0 0 0 Envelope initStep - 1 14.1 -46.1 -83.3 0 0.046 0.0377 0.0377 Envelope eIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 11, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 24.9 -41.6 -82.4 15.1 0 0 0 Envelope initStep - 1 37.3 -31.8 -73.7 2.55 0 18.1 18.1 Envelope hadElastic - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 1 --------------- - : 37.3 -31.8 -73.7 12.6 proton - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 2 54.7 -18.8 -89.8 1.28 0 27.1 45.1 Envelope hadElastic - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 2 --------------- - : 54.7 -18.8 -89.8 1.27 proton - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 3 64.6 -15.9 -89.1 0.147 0 10.3 55.4 Envelope hadElastic - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 3 --------------- - : 64.6 -15.9 -89.1 1.13 proton - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 4 66.6 -18.1 -85.6 0.123 0.0243 4.62 60 Envelope hadElastic - 5 68.1 -18.7 -84.5 0.098 0.025 1.95 62 Envelope hadElastic - 6 68.8 -18.7 -83.5 0.0445 0.0534 1.2 63.2 Envelope hadElastic - 7 68.8 -22 -77.7 0.0167 0.0278 6.76 69.9 Envelope hadElastic - 8 68.3 -23.4 -77.4 0.00711 0.00957 1.44 71.4 Envelope hadElastic - 9 68.4 -23.5 -77.2 0.00104 0.00607 0.246 71.6 Envelope hadElastic - 10 67.3 -22.8 -75 0.00024 0.000797 2.58 74.2 Envelope hadElastic - 11 65 -20.5 -75.1 9.32e-05 0.000147 3.25 77.5 Envelope hadElastic - 12 62.6 -19.5 -72.3 2.16e-05 7.16e-05 3.86 81.3 Envelope hadElastic - 13 64.8 -18.1 -66.6 1.29e-05 8.73e-06 6.22 87.5 Envelope hadElastic - 14 72.7 -25.6 -53.4 6.67e-06 6.2e-06 17.1 105 Envelope hadElastic - 15 79.5 -21.2 -41.9 5.14e-06 1.53e-06 14 119 Envelope hadElastic - 16 80.8 -21.5 -40.5 4.47e-06 6.74e-07 1.98 121 Envelope hadElastic - 17 82.5 -29 -44.8 7.21e-07 3.74e-06 8.82 129 Envelope hadElastic - 18 79 -29.6 -50.6 4.86e-07 2.35e-07 6.79 136 Envelope hadElastic - 19 75.7 -28.1 -53 4.85e-07 8.7e-10 4.37 141 Envelope hadElastic - 20 74.8 -27.6 -53.7 4.38e-07 4.68e-08 1.28 142 Envelope hadElastic - 21 67.9 -20 -62.3 4.87e-08 3.89e-07 13.4 155 Envelope hadElastic - 22 68.6 -20 -63.7 3.68e-08 1.2e-08 1.6 157 Envelope hadElastic - 23 72.6 -19.5 -66.5 2.25e-08 1.43e-08 4.91 162 Envelope hadElastic - 24 84.2 -26 -69.7 9.59e-09 1.29e-08 13.7 176 Envelope hadElastic - 25 84.2 -26 -69.7 9.59e-09 0 0 176 Envelope nKiller - -********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 24, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 64.6 -15.9 -89.1 1.13 0 0 0 Envelope initStep - 1 64.6 -15.9 -89.1 0.182 0.949 0.03 0.03 Envelope hIoni - 2 64.6 -15.8 -89.1 0 0.182 0.00282 0.0328 Envelope hIoni - -********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 23, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 54.7 -18.8 -89.8 1.27 0 0 0 Envelope initStep - 1 54.7 -18.8 -89.9 0 1.27 0.0361 0.0361 Envelope hIoni - -********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 22, Parent ID = 11 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 37.3 -31.8 -73.7 12.6 0 0 0 Envelope initStep - 1 37.5 -31.6 -73.2 10.3 2.26 0.528 0.528 Envelope hIoni - 2 37.7 -31.4 -72.9 8.37 1.95 0.415 0.943 Envelope hIoni - 3 37.9 -31.3 -72.6 6.5 1.88 0.331 1.27 Envelope hIoni - 4 38 -31.2 -72.4 4.48 2.02 0.261 1.54 Envelope hIoni - 5 38.1 -31.1 -72.3 2.51 1.97 0.193 1.73 Envelope hIoni - 6 38.1 -31.1 -72.2 0.0369 2.47 0.11 1.84 Envelope hIoni - 7 38.1 -31.1 -72.2 0.0139 0.023 0.000929 1.84 Envelope hIoni - 8 38.1 -31.1 -72.2 0 0.0139 0.000528 1.84 Envelope hIoni - -********************************************************************************************************* -* G4Track Information: Particle = neutron, Track ID = 10, Parent ID = 3 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 24.9 -41.6 -82.4 34.1 0 0 0 Envelope initStep - 1 56 -78.4 -81.7 33.8 0 48.2 48.2 Envelope hadElastic - :----- List of 2ndaries - #SpawnInStep= 1(Rest= 0,Along= 0,Post= 1), #SpawnTotal= 1 --------------- - : 56 -78.4 -81.7 0.359 O16 - :----------------------------------------------------------------- EndOf2ndaries Info --------------- - 2 67 -100 -72.7 33.8 0 25.8 74 World Transportation - 3 77.1 -120 -64.4 33.8 0 23.9 97.9 OutOfWorld Transportation - -********************************************************************************************************* -* G4Track Information: Particle = O16, Track ID = 25, Parent ID = 10 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 56 -78.4 -81.7 0.359 0 0 0 Envelope initStep - 1 56 -78.4 -81.7 0 0.359 0.00146 0.00146 Envelope ionIoni - -********************************************************************************************************* -* G4Track Information: Particle = proton, Track ID = 2, Parent ID = 1 -********************************************************************************************************* - -Step# X(mm) Y(mm) Z(mm) KinE(MeV) dE(MeV) StepLeng TrackLeng NextVolume ProcName - 0 -4.03 -9.54 -128 115 0 0 0 Envelope initStep - 1 -6.38 -0.612 -110 102 13.2 20.1 20.1 Envelope hIoni - 2 -7.82 4.66 -100 93.2 8.83 11.7 31.8 Shape1 Transportation - 3 -9.41 10.1 -89.3 82.6 10.7 12.1 43.9 Shape1 hIoni - 4 -10.8 14.5 -80.6 73.2 9.33 9.81 53.7 Shape1 hIoni - 5 -12 18 -73.6 64.2 9.01 7.94 61.7 Shape1 hIoni - 6 -13 20.8 -68 56.4 7.82 6.3 68 Shape1 hIoni - 7 -13.9 23.1 -63.6 49.6 6.8 5.02 73 Shape1 hIoni - 8 -14.5 24.9 -60.1 43.5 6.16 4.01 77 Shape1 hIoni - 9 -15.1 26.2 -57.3 38.2 5.24 3.19 80.2 Shape1 hIoni - 10 -15.5 27.3 -55 33.3 4.95 2.56 82.7 Shape1 hIoni - 11 -15.8 28.2 -53.2 28.9 4.35 2.03 84.8 Shape1 hIoni - 12 -16.1 28.9 -51.7 25.3 3.64 1.61 86.4 Shape1 hIoni - 13 -16.3 29.4 -50.6 21.8 3.49 1.3 87.7 Shape1 hIoni - 14 -16.5 29.9 -49.7 18.9 2.86 1.03 88.7 Shape1 hIoni - 15 -16.6 30.2 -49 16.3 2.65 0.832 89.5 Shape1 hIoni - 16 -16.7 30.5 -48.4 13.8 2.53 0.67 90.2 Shape1 hIoni - 17 -16.8 30.7 -47.9 11.6 2.15 0.535 90.7 Shape1 hIoni - 18 -16.9 30.9 -47.5 9.42 2.18 0.433 91.2 Shape1 hIoni - 19 -16.9 31.1 -47.2 7.4 2.02 0.344 91.5 Shape1 hIoni - 20 -17 31.2 -47 5.39 2.01 0.272 91.8 Shape1 hIoni - 21 -17 31.3 -46.8 3.24 2.14 0.209 92 Shape1 hIoni - 22 -17 31.3 -46.6 0.674 2.57 0.135 92.1 Shape1 hIoni - 23 -17 31.3 -46.6 0.0558 0.618 0.011 92.1 Shape1 hIoni - 24 -17 31.3 -46.6 0.0377 0.0181 0.000826 92.1 Shape1 hIoni - 25 -17 31.3 -46.6 0 0.0377 0.000651 92.1 Shape1 hIoni + 0 69 -12.8 -119 0.395 0 0 0 Envelope initStep + 1 69.2 -12.9 -119 0 0.395 1.23 1.23 Envelope eIoni Run terminated. Run Summary Number of events processed : 1 - User=0.050000s Real=0.050683s Sys=0.000000s + User=0.000000s Real=0.000580s Sys=0.000000s --------------------End of Global Run----------------------- The run consists of 1 proton of 210 MeV - Dose in scoring volume : 0 picoGy +- 0 picoGy + Dose in scoring volume : 0.6049982071340138 picoGy +- 0 picoGy ------------------------------------------------------------ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. @@ -1516,21 +1174,19 @@ RunManager is deleting RunManagerKernel. EventManager deleted. Units table cleared. TransportationManager deleted. -Total navigation history collections cleaned: 8 +Total navigation history collections cleaned: 7 ================== Deleting memory pools =================== -Pool ID '20G4NavigationLevelRep', size : 0.00961 MB +Pool ID '20G4NavigationLevelRep', size : 0.00865 MB Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB Pool ID '7G4Event', size : 0.000961 MB Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.00192 MB -Pool ID '7G4Track', size : 0.00385 MB +Pool ID '17G4DynamicParticle', size : 0.000961 MB +Pool ID '7G4Track', size : 0.00192 MB Pool ID '18G4TouchableHistory', size : 0.000961 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB -Pool ID '10G4Fragment', size : 0.000961 MB -Pool ID '17G4ReactionProduct', size : 0.000961 MB -Number of memory pools allocated: 11 of which, static: 0 -Dynamic pools deleted: 11 / Total memory freed: 0.023 MB +Number of memory pools allocated: 9 of which, static: 0 +Dynamic pools deleted: 9 / Total memory freed: 0.017 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/extended/visualization/userVisAction/run2.out b/examples/extended/visualization/userVisAction/run2.out index 24424a8b2f..000bca2ef0 100644 --- a/examples/extended/visualization/userVisAction/run2.out +++ b/examples/extended/visualization/userVisAction/run2.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -27,10 +28,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -68,6 +71,10 @@ Some /vis commands (optionally) take a string to specify colour. Checking overlaps for volume Envelope (G4Box) ... OK! Checking overlaps for volume Shape1 (G4Cons) ... OK! Checking overlaps for volume Shape2 (G4Trd) ... OK! +### HadronInelasticQBBC Construct Process: + Emin(FTFP)= 3 GeV Emax(FTFP)= 100000 GeV + Emin(BERT)= 1 GeV Emax(BERT)= 6 GeV Emax(BERTpions)= 12 GeV + Emin(BIC) = 0 GeV Emax(BIC)= 1.5 GeV. ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 /run/verbose 2 # @@ -103,10 +110,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -130,10 +138,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -161,9 +170,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -177,14 +186,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -193,9 +202,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -207,9 +216,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -220,9 +229,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -236,14 +245,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -252,9 +261,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -268,14 +277,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -284,9 +293,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -300,14 +309,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -316,9 +325,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -333,14 +342,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -349,9 +358,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -366,14 +375,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -382,9 +391,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -398,14 +407,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -414,9 +423,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -430,14 +439,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -467,6 +476,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -545,6 +576,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -685,7 +729,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi+Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -697,7 +742,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi-Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -765,7 +811,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= Region -- -- appears in world volume @@ -793,21 +838,21 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.52852 keV e- 278.507 keV e+ 271.144 keV proton 70 keV + Energy thresholds : gamma 2.51944 keV e- 276.265 keV e+ 270.751 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_A-150_TISSUE Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.28683 keV e- 301.815 keV e+ 293.837 keV proton 70 keV + Energy thresholds : gamma 2.27786 keV e- 299.466 keV e+ 293.489 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 3 used in the geometry : Yes Material : G4_BONE_COMPACT_ICRU Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 3.9341 keV e- 397.193 keV e+ 384.112 keV proton 70 keV + Energy thresholds : gamma 3.95224 keV e- 397.122 keV e+ 384 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -844,13 +889,16 @@ See commands in /vis/modeling/trajectories/ for other options. Run terminated. Run Summary Number of events processed : 1000 - User=0.070000s Real=0.070774s Sys=0.000000s + User=0.030000s Real=0.033612s Sys=0.000000s --------------------End of Global Run----------------------- The run consists of 1000 gamma of 6 MeV - Dose in scoring volume : 45.1187 picoGy +- 4.02529 picoGy + Dose in scoring volume : 44.3668 picoGy +- 3.88647 picoGy ------------------------------------------------------------ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. # # proton 210 MeV to the direction (0.,0.,1.) # 1000 events @@ -885,21 +933,21 @@ Index : 0 used in the geometry : Yes Index : 1 used in the geometry : Yes Material : G4_WATER Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.52852 keV e- 278.507 keV e+ 271.144 keV proton 70 keV + Energy thresholds : gamma 2.51944 keV e- 276.265 keV e+ 270.751 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 2 used in the geometry : Yes Material : G4_A-150_TISSUE Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 2.28683 keV e- 301.815 keV e+ 293.837 keV proton 70 keV + Energy thresholds : gamma 2.27786 keV e- 299.466 keV e+ 293.489 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld Index : 3 used in the geometry : Yes Material : G4_BONE_COMPACT_ICRU Range cuts : gamma 700 um e- 700 um e+ 700 um proton 700 um - Energy thresholds : gamma 3.9341 keV e- 397.193 keV e+ 384.112 keV proton 70 keV + Energy thresholds : gamma 3.95224 keV e- 397.122 keV e+ 384 keV proton 70 keV Region(s) which use this couple : DefaultRegionForTheWorld @@ -919,13 +967,16 @@ Index : 3 used in the geometry : Yes Run terminated. Run Summary Number of events processed : 1000 - User=1.060000s Real=1.074422s Sys=0.000000s + User=0.260000s Real=0.266542s Sys=0.000000s --------------------End of Global Run----------------------- The run consists of 1000 proton of 210 MeV - Dose in scoring volume : 5.14496 nanoGy +- 145.994 picoGy + Dose in scoring volume : 5.14718 nanoGy +- 144.417 picoGy ------------------------------------------------------------ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... G4 kernel has come to Quit state. @@ -940,19 +991,19 @@ Units table cleared. TransportationManager deleted. Total navigation history collections cleaned: 12 ================== Deleting memory pools =================== -Pool ID '20G4NavigationLevelRep', size : 0.0163 MB +Pool ID '20G4NavigationLevelRep', size : 0.0173 MB Pool ID '24G4ReferenceCountedHandleIvE', size : 0.000961 MB Pool ID '7G4Event', size : 0.000961 MB Pool ID '15G4PrimaryVertex', size : 0.000961 MB Pool ID '17G4PrimaryParticle', size : 0.000961 MB -Pool ID '17G4DynamicParticle', size : 0.00673 MB -Pool ID '7G4Track', size : 0.0125 MB +Pool ID '17G4DynamicParticle', size : 0.0183 MB +Pool ID '7G4Track', size : 0.0356 MB Pool ID '18G4TouchableHistory', size : 0.00192 MB Pool ID '15G4CountedObjectIvE', size : 0.000961 MB Pool ID '10G4Fragment', size : 0.00192 MB Pool ID '17G4ReactionProduct', size : 0.00192 MB Number of memory pools allocated: 11 of which, static: 0 -Dynamic pools deleted: 11 / Total memory freed: 0.046 MB +Dynamic pools deleted: 11 / Total memory freed: 0.082 MB ============================================================ G4Allocator objects are deleted. UImanager deleted. diff --git a/examples/extended/visualization/userVisAction/userVisAction.cc b/examples/extended/visualization/userVisAction/userVisAction.cc index 93187d48bd..3bf78f813e 100644 --- a/examples/extended/visualization/userVisAction/userVisAction.cc +++ b/examples/extended/visualization/userVisAction/userVisAction.cc @@ -29,11 +29,7 @@ #include "B1DetectorConstruction.hh" #include "B1ActionInitialization.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#else -#include "G4RunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4UImanager.hh" #include "QBBC.hh" @@ -59,14 +55,10 @@ int main(int argc,char** argv) // Choose the Random engine // G4Random::setTheEngine(new CLHEP::RanecuEngine); - + // Construct the default run manager // -#ifdef G4MULTITHREADED - G4MTRunManager* runManager = new G4MTRunManager; -#else - G4RunManager* runManager = new G4RunManager; -#endif + auto* runManager = G4RunManagerFactory::CreateRunManager(); // Set mandatory initialization classes // @@ -77,7 +69,7 @@ int main(int argc,char** argv) G4VModularPhysicsList* physicsList = new QBBC; physicsList->SetVerboseLevel(1); runManager->SetUserInitialization(physicsList); - + // User action initialization runManager->SetUserInitialization(new B1ActionInitialization()); @@ -110,9 +102,9 @@ int main(int argc,char** argv) // Job termination // Free the store: user actions, physics_list and detector_description are - // owned and deleted by the run manager, so they should not be deleted + // owned and deleted by the run manager, so they should not be deleted // in the main() program ! - + delete visManager; delete runManager; diff --git a/examples/extended/visualization/userVisAction/userVisAction.out b/examples/extended/visualization/userVisAction/userVisAction.out index 84fa6488b9..b71bea8c03 100644 --- a/examples/extended/visualization/userVisAction/userVisAction.out +++ b/examples/extended/visualization/userVisAction/userVisAction.out @@ -1,10 +1,11 @@ +Environment variable "G4FORCE_RUN_MANAGER_TYPE" enabled with value == Serial. Forcing G4RunManager type... ############################################ !!! WARNING - FPE detection is activated !!! ############################################ ************************************************************** - Geant4 version Name: geant4-10-06-ref-06 (26-June-2020) + Geant4 version Name: geant4-10-07-ref-00 (4-December-2020) Copyright : Geant4 Collaboration References : NIM A 506 (2003), 250-303 : IEEE-TNS 53 (2006), 270-278 @@ -27,10 +28,12 @@ Registered graphics systems are: VRML1FILE (VRML1FILE) VRML2FILE (VRML2FILE) gMocrenFile (gMocrenFile) - OpenGLImmediateXm (OGLIXm, OGLI) - OpenGLStoredXm (OGLSXm, OGL, OGLS) - OpenGLImmediateX (OGLIX, OGLIXm_FALLBACK) - OpenGLStoredX (OGLSX, OGLSXm_FALLBACK) + OpenGLImmediateQt (OGLIQt, OGLI) + OpenGLStoredQt (OGLSQt, OGL, OGLS) + OpenGLImmediateXm (OGLIXm, OGLIQt_FALLBACK) + OpenGLStoredXm (OGLSXm, OGLSQt_FALLBACK) + OpenGLImmediateX (OGLIX, OGLIQt_FALLBACK, OGLIXm_FALLBACK) + OpenGLStoredX (OGLSX, OGLSQt_FALLBACK, OGLSXm_FALLBACK) RayTracerX (RayTracerX) Registering model factories... @@ -68,6 +71,10 @@ Some /vis commands (optionally) take a string to specify colour. Checking overlaps for volume Envelope (G4Box) ... OK! Checking overlaps for volume Shape1 (G4Cons) ... OK! Checking overlaps for volume Shape2 (G4Trd) ... OK! +### HadronInelasticQBBC Construct Process: + Emin(FTFP)= 3 GeV Emax(FTFP)= 100000 GeV + Emin(BERT)= 1 GeV Emax(BERT)= 6 GeV Emax(BERTpions)= 12 GeV + Emin(BIC) = 0 GeV Emax(BIC)= 1.5 GeV. ### Adding tracking cuts for neutron TimeCut(ns)= 10000 KinEnergyCut(MeV)= 0 phot: for gamma SubType=12 BuildTable=0 @@ -93,10 +100,11 @@ Rayl: for gamma SubType=11 BuildTable=1 LivermoreRayleigh : Emin= 0 eV Emax= 100 TeV CullenGenerator msc: for e- SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -120,10 +128,11 @@ CoulombScat: for e-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for e+ SubType= 10 - RangeFactor= 0.04, stepLimType: 1, latDisp: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 MeV Nbins=42 100 eV - 100 MeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 WentzelVIUni : Emin= 100 MeV Emax= 100 TeV Nbins=42 100 MeV - 100 TeV + StepLim=UseSafety Rfact=0.04 Gfact=2.5 Sfact=0.6 DispFlag:1 Skin=1 Llimit=1 eIoni: for e+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -151,9 +160,9 @@ CoulombScat: for e+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 100 MeV Emax= 100 TeV msc: for proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -167,14 +176,14 @@ hBrems: for proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -183,9 +192,9 @@ CoulombScat: for proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for GenericIon SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for GenericIon SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -197,9 +206,9 @@ ionIoni: for GenericIon SubType=2 BetheBloch : Emin= 2 MeV Emax= 100 TeV msc: for alpha SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== UrbanMsc : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 ionIoni: for alpha SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -210,9 +219,9 @@ ionIoni: for alpha SubType=2 BetheBloch : Emin=7.9452 MeV Emax= 100 TeV msc: for anti_proton SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for anti_proton SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -226,14 +235,14 @@ hBrems: for anti_proton SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for anti_proton SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 17x1001 from 7.50618 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -242,9 +251,9 @@ CoulombScat: for anti_proton, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -258,14 +267,14 @@ hBrems: for kaon+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -274,9 +283,9 @@ CoulombScat: for kaon+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for kaon- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for kaon- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -290,14 +299,14 @@ hBrems: for kaon- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for kaon- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 18x1001 from 3.94942 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 Used Lambda table of kaon+ @@ -306,9 +315,9 @@ CoulombScat: for kaon-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -323,14 +332,14 @@ muBrems: for mu+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -339,9 +348,9 @@ CoulombScat: for mu+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for mu- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0, polarAngLim(deg)= 180 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 muIoni: for mu- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -356,14 +365,14 @@ muBrems: for mu- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - MuBrem : Emin= 0 eV Emax= 100 TeV + MuBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi muPairProd: for mu- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 21x1001 from 1 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - muPairProd : Emin= 0 eV Emax= 100 TeV + muPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 Used Lambda table of mu+ @@ -372,9 +381,9 @@ CoulombScat: for mu-, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi+ SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi+ SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -388,14 +397,14 @@ hBrems: for pi+ SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi+ SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 Lambda table from threshold to 100 TeV, 7 bins/decade, spline: 1 @@ -404,9 +413,9 @@ CoulombScat: for pi+, integral:1 SubType=1 BuildTable=1 eCoulombScattering : Emin= 0 eV Emax= 100 TeV msc: for pi- SubType= 10 - RangeFactor= 0.2, stepLimType: 0, latDisp: 0 ===== EM models for the G4Region DefaultRegionForTheWorld ====== WentzelVIUni : Emin= 0 eV Emax= 100 TeV Nbins=84 100 eV - 100 TeV + StepLim=Minimal Rfact=0.2 Gfact=2.5 Sfact=0.6 DispFlag:0 Skin=1 Llimit=1 hIoni: for pi- SubType=2 dE/dx and range tables from 100 eV to 100 TeV in 84 bins @@ -420,14 +429,14 @@ hBrems: for pi- SubType=3 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hBrem : Emin= 0 eV Emax= 100 TeV + hBrem : Emin= 0 eV Emax= 100 TeV ModifiedMephi hPairProd: for pi- SubType=4 dE/dx and range tables from 100 eV to 100 TeV in 84 bins Lambda tables from threshold to 100 TeV, 7 bins/decade, spline: 1 Sampling table 20x1001 from 1.11656 GeV to 100 TeV ===== EM models for the G4Region DefaultRegionForTheWorld ====== - hPairProd : Emin= 0 eV Emax= 100 TeV + hPairProd : Emin= 0 eV Emax= 100 TeV ModifiedMephi CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Used Lambda table of pi+ @@ -457,6 +466,28 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: nKiller +--------------------------------------------------- + Hadronic Processes for B- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: B-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + +--------------------------------------------------- + Hadronic Processes for D- + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: D-Inelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + --------------------------------------------------- Hadronic Processes for GenericIon @@ -535,6 +566,19 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: hFritiofCaptureAtRest +--------------------------------------------------- + Hadronic Processes for anti_lambda + + Process: hadElastic + Model: hElasticLHEP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: anti_lambdaInelastic + Model: FTFP: 0 eV ---> 100 TeV + Cr_sctns: Glauber-Gribov: 0 eV ---> 100 TeV + + Process: hFritiofCaptureAtRest + --------------------------------------------------- Hadronic Processes for anti_neutron @@ -675,7 +719,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi+Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV --------------------------------------------------- @@ -687,7 +732,8 @@ CoulombScat: for pi-, integral:1 SubType=1 BuildTable=1 Process: pi-Inelastic Model: FTFP: 3 GeV ---> 100 TeV - Model: BertiniCascade: 0 eV ---> 6 GeV + Model: BertiniCascade: 1 GeV ---> 12 GeV + Model: Binary Cascade: 0 eV ---> 1.5 GeV Cr_sctns: BarashenkovGlauberGribov: 0 eV ---> 100 TeV Process: hBertiniCaptureAtRest @@ -755,7 +801,6 @@ Store e- internal conversion data 0 Electron internal conversion ID 2 Correlated gamma emission flag 0 Max 2J for sampling of angular correlations 10 -Upload data before 1st event for Z < 9 ======================================================================= G4VisManager: Using G4TrajectoryDrawByCharge as fallback trajectory model. See commands in /vis/modeling/trajectories/ for other options. @@ -773,9 +818,12 @@ See commands in /vis/modeling/trajectories/ for other options. --------------------End of Global Run----------------------- The run consists of 1000 gamma of 6 MeV - Dose in scoring volume : 45.1187 picoGy +- 4.02529 picoGy + Dose in scoring volume : 44.3668 picoGy +- 3.88647 picoGy ------------------------------------------------------------ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. ### Run 1 starts. --> Event 0 starts. --> Event 100 starts. @@ -790,8 +838,11 @@ See commands in /vis/modeling/trajectories/ for other options. --------------------End of Global Run----------------------- The run consists of 1000 proton of 210 MeV - Dose in scoring volume : 5.14496 nanoGy +- 145.994 picoGy + Dose in scoring volume : 5.14718 nanoGy +- 144.417 picoGy ------------------------------------------------------------ +0 events have been kept for refreshing and/or reviewing. + "/vis/reviewKeptEvents" to review them one by one. + "/vis/enable", then "/vis/viewer/flush" or "/vis/viewer/rebuild" to see them accumulated. Graphics systems deleted. Visualization Manager deleting... diff --git a/source/CMakeLists.txt b/source/CMakeLists.txt index 893f6fdd6a..a5917a598c 100644 --- a/source/CMakeLists.txt +++ b/source/CMakeLists.txt @@ -40,6 +40,4 @@ add_subdirectory(tracking) add_subdirectory(visualization) # - Compose libs -if(GEANT4_USE_NEW_CMAKE) - geant4_compose_targets() -endif() +geant4_compose_targets() diff --git a/source/GNUmakefile b/source/GNUmakefile index 848583c213..a5510ec316 100644 --- a/source/GNUmakefile +++ b/source/GNUmakefile @@ -167,8 +167,8 @@ endif banner: @$(ECHO) "*************************************************************" - @$(ECHO) " Installation Geant4 version geant4-10-07-beta-01 " - @$(ECHO) " Copyright (C) 1994-2020 Geant4 Collaboration " + @$(ECHO) " Installation Geant4 version geant4-10-07 " + @$(ECHO) " Copyright (C) 1994-2021 Geant4 Collaboration " @$(ECHO) "*************************************************************" clean_libs:: diff --git a/source/analysis/History b/source/analysis/History index 56bda4d17a..f2f70e1a4a 100644 --- a/source/analysis/History +++ b/source/analysis/History @@ -16,13 +16,74 @@ committal in the SVN repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 16, 2020 G. Cosmo (analysis-V10-06-11) +- Fixed typos in printed-out text. Addressing problem report #2285. + +November 12, 2020 B. Morgan (analysis-V10-06-10) +- Apply typo fixes from Gurkan Myczko (https://github.com/Geant4/geant4/pull/15) + +November 10, 2020 I. Hrivnacova (analysis-V10-06-09) +- Fixed the memory leak reported by valgrind in deleting files + +November 06, 2020 I. Hrivnacova (analysis-V10-06-08) +- Make GenericAnalysisManager working with file names without extension + (needed for backward compatibility): + - Added fDefaultType data member and its setter, getter (with "root" default) +- Fixed deleting empty files +- Fixed minor memory leaks + +November 04, 2020 I. Hrivnacova (analysis-V10-06-07) +- Changes to allow overriding Root classes in g4mpi/analysis +- Removed redundant variable in G4RootNtupleFileManager::Reset() + +October 30, 2020 I. Hrivnacova (analysis-V10-06-06) +- Implemented writing ntuples in multiple files of the same output type: + - New G4VAnalysisManager function: + void SetNtupleFileName(G4int objectId, const G4String& name); + and UI commands: + /analysis/ntuple/setFileName id fileName + /analysis/ntuple/setFileNameToAll fileName +- Finalizes implementation of extra write of histograms + - Polished G4GenericAnalysisManager::WriteH1 and added + functions for other Hn types +- This also fixes issues in the ntuple output introduced with previous tag + (observed in B4, TestEm1, microbeam) + +October 21, 2020 I. Hrivnacova (analysis-V10-06-05) +- Major upgrade including the support for multiple files + and multiple output types: + - New G4GenericAnalysisManager,G4GenericFileManager classes + if factory category + - New G4VAnalysisManager functions: + void SetH1FileName(G4int objectId, const G4String& name); + ... etc. for H2, H3, P1, P2 + and corresponding UI commands: + /analysis/h1/setFileName id name + /analysis/h1/setFileName id name + ... etc. for h2, h3, p1, p2 + - Redesign of management classes to separate object file handling + from output specifuc analysis managers + - The multiple file output is tested in new test32 + +October 14, 2020 I. Hrivnacova (analysis-V10-06-04) +- Updated G4PlotManager.cc - using new wrap_viewplot_fonts_google_style + header +- Updated to g4tools 5.2.1 (Guy Barrand): + - Change the usage of arialbd.ttf, helvetica.ttf with roboto_bold.ttf + and lato_regular.ttf (google fonts). + - Modifications in tools/hdf5 to use H5free_memory() instead free() at + some places (needed for HDF5/1.12.0). + - Modifations in graphics to be be in sync with the code in inlib/exlib + around Apple/Metal, but they should not have an impact on offscreen plotting. + See History_tools for the complete list of modifications. + June 10, 2020 J. Madsen (analysis-V10-06-03) - (bug-fix) Added a null-pointer check to ntupleDescription->fNtuple in G4RootPNtupleManager::Merge. This happened during testing of new G4TaskRunManager in basic/B5, which defaults to a higher number of threads than G4MTRunManager. -May 22, 2020 Hrivnacova (analysis-V10-06-02) +May 22, 2020 I. Hrivnacova (analysis-V10-06-02) - Updated to g4tools 5.1.0 (Guy Barrand): Corrections to handle automatic min/max axes values in case of log scale. See History_tools for the complete list of modifications. @@ -36,7 +97,7 @@ December 9, 2019 B. Morgan (analysis-V10-06-00) - Update granular dependencies in preparation for modularization - Remove uneeded links to externals in factory -December 3, 2019 Hrivnacova (analysis-V10-05-13) +December 3, 2019 I. Hrivnacova (analysis-V10-05-13) - Use consistently the same default value of rowMode in G4RootAnalysisManager::SetNtupleRowWise() as defined in the G4VAnalysisManager base class. @@ -44,7 +105,7 @@ December 3, 2019 Hrivnacova (analysis-V10-05-13) November 19, 2019 G. Cosmo (analysis-V10-05-12) - Fixed more cases of implicit type conversions. -November 17, 2019 Hrivnacova (analysis-V10-05-11) +November 17, 2019 I. Hrivnacova (analysis-V10-05-11) - Updated to g4tools 5.0.5 (Guy Barrand): Fixed compilation warning from gl2ps showing up on gcc-9.2. See History_tools for the complete list of modifications. diff --git a/source/analysis/History_tools b/source/analysis/History_tools index b2bd1aab0d..6039d55626 100644 --- a/source/analysis/History_tools +++ b/source/analysis/History_tools @@ -1,3 +1,52 @@ +5.2.1 : + - fonts : have lato_regular.ttf file and license_font_lato.txt, readme_font_lato.txt texts taken from : + https://www.latofonts.com/lato-free-fonts + + +5.2.0 : + ////////////////////////////////////////////////// + /// use google fonts : /////////////////////////// + ////////////////////////////////////////////////// + - tools/test/cpp : viewplot.cpp and test/virewplot_ttf.cpp : use wrap_viewplot_fonts_google_style. + - tools/xml : viewplot.style replaced with viewplot_fonts_google.style, + wrap_viewplot_style replaced by wrap_viewplot_fonts_google_style in order to use + roboto_bold.ttf instead of arialbd.ttf and lato_regular.ttf instead of helvetica.ttf. + - tools/sg/strings : font_roboto_bold() and lato_regular() functions. + - tools/test/cpp : add license_font_[roboto,lato].txt files. + - tools/test/cpp : add roboto_bold.ttf, lato_regular.ttf. + - tools/test/cpp : rm arialbd.ttf, helvetica.ttf. + + ////////////////////////////////////////////////// + /// hdf5 : /////////////////////////////////////// + ////////////////////////////////////////////////// + - tools/hdf5/tools : replace the usage of free() by tools_H5free_memory(). (And then avoid a crash if using recent hdf5 lib). + - tools/hdf5/hdf5_h : #define tools_H5free_memory according hdf5 version. + + ////////////////////////////////////////////////// + /// ROOT file format : /////////////////////////// + ////////////////////////////////////////////////// + - tools/rroot/iros, obj_list : inherit std::vector only protected to avoid using std::vector::clear() + (instead of [iros,obj_list].cleanup()). + + ////////////////////////////////////////////////// + /// around graphics : //////////////////////////// + ////////////////////////////////////////////////// + - tools/sg/plotter : handle "min/max log logic" for the functions. + - tools/sg/text, infos_box : add font_lato_regular_ttf, font_roboto_bold_ttf in font fields options. + - tools/sg/state, GL_action, normal : handle m_normal field. + - tools/sg/head_light : in render(), mtx.mul_3f(dx,dy,dz) => mtx.mul_dir_3f(dx,dy,dz) + - tools/sg/holder : handle m_own. + - tools/sg/primitive_visitor, render_action, bbox_action, pick_action, gl2ps_action, zb_action, gstos_add, glprims : + handle normal for point, line, triangle. + - tools/sg/action, visible_action win_action write_action, read_action search_action, gl2ps_action, + matrix_action, render_action, get_matrix_action, event_action, bbox_action, pick_action : have a safe cast logic. + + ////////////////////////////////////////////////// + /// various : //////////////////////////////////// + ////////////////////////////////////////////////// + - src/csz_inflate.cc : init some variable to quiet Coverity. + - * : cosmetic : rm trailing spaces. + 5.1.0: - tools/sg/plotter, data_axis, plottables, h2plot : corrections to handle automatic min/max in case of log scale. - tools/histo/base_histo : [min,max]_bin_height_with_entries(). Used by the plotter. diff --git a/source/analysis/accumulables/src/G4AccumulableManager.cc b/source/analysis/accumulables/src/G4AccumulableManager.cc index 72f0604e1c..d2455a7e5c 100644 --- a/source/analysis/accumulables/src/G4AccumulableManager.cc +++ b/source/analysis/accumulables/src/G4AccumulableManager.cc @@ -100,7 +100,7 @@ G4bool G4AccumulableManager::CheckName(const G4String& name, const G4String& whe G4ExceptionDescription description; description << " " << "Name " << name << " is already used." << G4endl; - description << " " << "Paremeter will be not created/registered."; + description << " " << "Parameter will be not created/registered."; G4String method("G4AccumulableManager::"); method.append(where); G4Exception(method, "Analysis_W002", JustWarning, description); diff --git a/source/analysis/csv/include/G4CsvAnalysisManager.hh b/source/analysis/csv/include/G4CsvAnalysisManager.hh index 4f422ca44d..de4c136dd1 100644 --- a/source/analysis/csv/include/G4CsvAnalysisManager.hh +++ b/source/analysis/csv/include/G4CsvAnalysisManager.hh @@ -40,7 +40,7 @@ #include class G4CsvFileManager; -class G4CsvNtupleManager; +class G4CsvNtupleFileManager; class G4CsvAnalysisManager : public G4ToolsAnalysisManager { @@ -90,12 +90,11 @@ class G4CsvAnalysisManager : public G4ToolsAnalysisManager G4bool WriteH3(); G4bool WriteP1(); G4bool WriteP2(); - G4bool CloseNtupleFiles(); G4bool Reset(); // data members - G4CsvNtupleManager* fNtupleManager; std::shared_ptr fFileManager; + std::shared_ptr fNtupleFileManager; }; #include "G4CsvAnalysisManager.icc" diff --git a/source/analysis/csv/include/G4CsvAnalysisManager.icc b/source/analysis/csv/include/G4CsvAnalysisManager.icc index 880fc55201..228d4e1ac3 100644 --- a/source/analysis/csv/include/G4CsvAnalysisManager.icc +++ b/source/analysis/csv/include/G4CsvAnalysisManager.icc @@ -25,7 +25,9 @@ // #include "G4CsvNtupleManager.hh" +#include "G4CsvNtupleFileManager.hh" #include "G4CsvFileManager.hh" +#include "G4AnalysisUtilities.hh" #include "tools/wcsv_histo" @@ -64,7 +66,6 @@ G4bool G4CsvAnalysisManager::WriteT(const std::vector& htVec if ( fState.GetVerboseL1() ) fState.GetVerboseL1()->Message("write", "file", fileName); #endif - fFileManager->LockHistoDirectoryName(); } return true; @@ -105,7 +106,6 @@ G4bool G4CsvAnalysisManager::WriteT(const std::vector& htVec if ( fState.GetVerboseL1() ) fState.GetVerboseL1()->Message("write", "file", fileName); #endif - fFileManager->LockHistoDirectoryName(); } return true; @@ -145,7 +145,6 @@ G4bool G4CsvAnalysisManager::WriteT(const std::vector& htVector, if ( fState.GetVerboseL1() ) fState.GetVerboseL1()->Message("write", "file", fileName); #endif - fFileManager->LockHistoDirectoryName(); } return true; @@ -162,28 +161,28 @@ G4bool G4CsvAnalysisManager::IsOpenFileImpl() const inline tools::wcsv::ntuple* G4CsvAnalysisManager::GetNtuple() const { - return fNtupleManager->GetNtuple(); + return fNtupleFileManager->GetNtupleManager()->GetNtuple(); } //_____________________________________________________________________________ inline tools::wcsv::ntuple* G4CsvAnalysisManager::GetNtuple(G4int ntupleId) const { - return fNtupleManager->GetNtuple(ntupleId); + return fNtupleFileManager->GetNtupleManager()->GetNtuple(ntupleId); } //_____________________________________________________________________________ inline std::vector::iterator G4CsvAnalysisManager::BeginNtuple() { - return fNtupleManager->BeginNtuple(); + return fNtupleFileManager->GetNtupleManager()->BeginNtuple(); } //_____________________________________________________________________________ inline std::vector::iterator G4CsvAnalysisManager::EndNtuple() { - return fNtupleManager->EndNtuple(); + return fNtupleFileManager->GetNtupleManager()->EndNtuple(); } //_____________________________________________________________________________ @@ -191,7 +190,7 @@ inline std::vector::const_iterator G4CsvAnalysisManager::BeginConstNtuple() const { - return fNtupleManager->BeginConstNtuple(); + return fNtupleFileManager->GetNtupleManager()->BeginConstNtuple(); } //_____________________________________________________________________________ @@ -199,19 +198,19 @@ inline std::vector::const_iterator G4CsvAnalysisManager::EndConstNtuple() const { - return fNtupleManager->EndConstNtuple(); + return fNtupleFileManager->GetNtupleManager()->EndConstNtuple(); } //_____________________________________________________________________________ inline void G4CsvAnalysisManager::SetIsCommentedHeader(G4bool isCommentedHeader) { - fNtupleManager->SetIsCommentedHeader(isCommentedHeader); + fNtupleFileManager->GetNtupleManager()->SetIsCommentedHeader(isCommentedHeader); } //_____________________________________________________________________________ inline void G4CsvAnalysisManager::SetIsHippoHeader(G4bool isHippoHeader) { - fNtupleManager->SetIsHippoHeader(isHippoHeader); + fNtupleFileManager->GetNtupleManager()->SetIsHippoHeader(isHippoHeader); } diff --git a/source/analysis/csv/include/G4CsvFileManager.hh b/source/analysis/csv/include/G4CsvFileManager.hh index 401a8411d2..ebc0e946ec 100644 --- a/source/analysis/csv/include/G4CsvFileManager.hh +++ b/source/analysis/csv/include/G4CsvFileManager.hh @@ -31,31 +31,43 @@ #ifndef G4CsvFileManager_h #define G4CsvFileManager_h 1 -#include "G4VFileManager.hh" +#include "G4VTFileManager.hh" #include "G4TNtupleDescription.hh" #include "globals.hh" #include "tools/wcsv_ntuple" -class G4CsvFileManager : public G4VFileManager +// Type aliases +using CsvNtupleDescription = G4TNtupleDescription; + +class G4CsvFileManager : public G4VTFileManager { public: explicit G4CsvFileManager(const G4AnalysisManagerState& state); ~G4CsvFileManager(); - - // Type aliases - using NtupleType = tools::wcsv::ntuple; - using NtupleDescriptionType = G4TNtupleDescription; - // Methods to manipulate files + using G4BaseFileManager::GetNtupleFileName; + using G4VTFileManager::WriteFile; + using G4VTFileManager::CloseFile; + + // Methods to manipulate output files virtual G4bool OpenFile(const G4String& fileName) final; - virtual G4bool WriteFile() final; - virtual G4bool CloseFile() final; + + virtual G4String GetFileType() const final { return "csv"; } // Specific methods for files per objects - G4bool CreateNtupleFile(NtupleDescriptionType* ntupleDescription); - G4bool CloseNtupleFile(NtupleDescriptionType* ntupleDescription); + G4bool CreateNtupleFile(CsvNtupleDescription* ntupleDescription); + G4bool CloseNtupleFile(CsvNtupleDescription* ntupleDescription); + + protected: + // Methods derived from templated base class + virtual std::shared_ptr CreateFileImpl(const G4String& fileName) final; + virtual G4bool WriteFileImpl(std::shared_ptr file) final; + virtual G4bool CloseFileImpl(std::shared_ptr file) final; + + private: + // Utility method + G4String GetNtupleFileName(CsvNtupleDescription* ntupleDescription); }; #endif - diff --git a/source/analysis/csv/include/G4CsvHnFileManager.hh b/source/analysis/csv/include/G4CsvHnFileManager.hh new file mode 100644 index 0000000000..de3aaa9e39 --- /dev/null +++ b/source/analysis/csv/include/G4CsvHnFileManager.hh @@ -0,0 +1,63 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +// The manager for histogram/profile Csv file output. + +// Author: Ivana Hrivnacova, 15/09/2020 (ivana@ipno.in2p3.fr) + +#ifndef G4CsvHnFileManager_h +#define G4CsvHnFileManager_h 1 + +#include "G4VTHnFileManager.hh" + +class G4CsvFileManager; + +template +class G4CsvHnFileManager : public G4VTHnFileManager + +{ + public: + G4CsvHnFileManager(G4CsvFileManager* fileManger) + : G4VTHnFileManager(), fFileManager(fileManger) {} + virtual ~G4CsvHnFileManager() {} + + // Methods for writing objects + virtual G4bool WriteExtra(HT* ht, const G4String& htName, const G4String& fileName) final; + // Write to the default file (handled with OpenFile()/CloseFile methods) + virtual G4bool Write(HT* ht, const G4String& htName, G4String& fileName) final; + + private: + // Methods + G4bool Write(std::ofstream& hnfile, HT* ht); + + // Data members + G4CsvFileManager* fFileManager; +}; + +#include "G4CsvHnFileManager.icc" + +#endif + diff --git a/source/analysis/csv/include/G4CsvHnFileManager.icc b/source/analysis/csv/include/G4CsvHnFileManager.icc new file mode 100644 index 0000000000..e815e87d0a --- /dev/null +++ b/source/analysis/csv/include/G4CsvHnFileManager.icc @@ -0,0 +1,125 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +// Author: Ivana Hrivnacova, 15/09/2020 (ivana@ipno.in2p3.fr) + +#include "G4AnalysisUtilities.hh" + +#include "tools/wcsv_histo" +#include "tools/histo/h1d" +#include "tools/histo/h2d" +#include "tools/histo/h3d" +#include "tools/histo/p1d" +#include "tools/histo/p2d" + +#include + +//_____________________________________________________________________________ +template <> +inline +G4bool G4CsvHnFileManager::Write( + std::ofstream& hnfile, tools::histo::p1d* ht) +{ + return tools::wcsv::pto(hnfile, ht->s_cls(), *ht); +} + +//_____________________________________________________________________________ +template <> +inline +G4bool G4CsvHnFileManager::Write( + std::ofstream& hnfile, tools::histo::p2d* ht) +{ + return tools::wcsv::pto(hnfile, ht->s_cls(), *ht); +} + +//_____________________________________________________________________________ +template +inline +G4bool G4CsvHnFileManager::Write( + std::ofstream& hnfile, HT* ht) +{ + return tools::wcsv::hto(hnfile, ht->s_cls(), *ht); +} + +//_____________________________________________________________________________ +template +inline +G4bool G4CsvHnFileManager::WriteExtra( + HT* ht, const G4String& htName, const G4String& fileName) +{ + // create a new file + std::ofstream hnFile(fileName); + + // Do nothing if there is no file + if ( ! hnFile.is_open() ) return false; + + auto result = Write(hnFile, ht); + + if ( ! result ) { + G4ExceptionDescription description; + description << " " << "saving " << G4Analysis::GetHnType() << " " << htName << " failed"; + G4Exception("G4CsvAnalysisManager::WriteExtra()", + "Analysis_W022", JustWarning, description); + return false; + } + hnFile.close(); + return true; +} + +//_____________________________________________________________________________ +template +inline +G4bool G4CsvHnFileManager::Write( + HT* ht, const G4String& htName, G4String& fileName) +{ + if ( fileName.empty() ) { + // should not happen + G4cerr << "!!! Csv file name not defined." << G4endl; + G4cerr << "!!! Write " << htName << " failed." << G4endl; + return false; + } + + auto hnFile = fFileManager->GetTFile(fileName, false); + if ( ! hnFile ) { + // If histogram file name was not defined per object + // a file should be created from the provided default file name + auto hnFileName = fFileManager->GetHnFileName(G4Analysis::GetHnType(), htName); + if ( ! hnFileName.empty() ) { + hnFile = fFileManager->CreateTFile(hnFileName); + } + if ( ! hnFile ) { + G4ExceptionDescription description; + description << "Failed to get Csv file " << fileName; + G4Exception("G4CsvHnFileManager::Write()", + "Analysis_W022", JustWarning, description); + return false; + } else { + fileName = hnFileName; + } + } + + return Write(*hnFile, ht); +} diff --git a/source/analysis/csv/include/G4CsvNtupleFileManager.hh b/source/analysis/csv/include/G4CsvNtupleFileManager.hh new file mode 100644 index 0000000000..ea0aa5e42b --- /dev/null +++ b/source/analysis/csv/include/G4CsvNtupleFileManager.hh @@ -0,0 +1,81 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +// Manager class for ntuple Csv file output. +// +// Author: Ivana Hrivnacova, 15/09/2020 (ivana@ipno.in2p3.fr) + +#ifndef G4CsvNtupleFileManager_h +#define G4CsvNtupleFileManager_h 1 + +#include "G4VNtupleFileManager.hh" +#include "globals.hh" + +class G4CsvFileManager; +class G4CsvNtupleManager; +class G4VNtupleManager; +class G4NtupleBookingManager; + +class G4CsvNtupleFileManager : public G4VNtupleFileManager +{ + friend class G4CsvAnalysisManager; + + public: + explicit G4CsvNtupleFileManager(const G4AnalysisManagerState& state); + ~G4CsvNtupleFileManager(); + + virtual std::shared_ptr CreateNtupleManager() override; + + // Methods to be performed at file management + virtual G4bool ActionAtOpenFile(const G4String& fileName) override; + virtual G4bool ActionAtWrite() override; + virtual G4bool ActionAtCloseFile(G4bool reset) override; + virtual G4bool Reset() override; + + void SetFileManager(std::shared_ptr fileManager); + + std::shared_ptr GetNtupleManager() const; + + private: + // methods + G4bool CloseNtupleFiles(); + + // data members + std::shared_ptr fFileManager; + std::shared_ptr fNtupleManager; +}; + +// inline functions + +inline void G4CsvNtupleFileManager::SetFileManager( + std::shared_ptr fileManager) +{ fFileManager = fileManager; } + +inline std::shared_ptr G4CsvNtupleFileManager::GetNtupleManager() const +{ return fNtupleManager; } + +#endif + diff --git a/source/analysis/csv/include/G4CsvNtupleManager.hh b/source/analysis/csv/include/G4CsvNtupleManager.hh index 01298eed02..1f743b31cf 100644 --- a/source/analysis/csv/include/G4CsvNtupleManager.hh +++ b/source/analysis/csv/include/G4CsvNtupleManager.hh @@ -38,45 +38,43 @@ #include +// Types alias +using CsvNtupleDescription = G4TNtupleDescription; + class G4CsvFileManager; -class G4CsvNtupleManager : public G4TNtupleManager +class G4CsvNtupleManager : public G4TNtupleManager { friend class G4CsvAnalysisManager; + friend class G4CsvNtupleFileManager; public: explicit G4CsvNtupleManager(const G4AnalysisManagerState& state); ~G4CsvNtupleManager(); private: - // Types alias - using NtupleType = tools::wcsv::ntuple; - using NtupleDescriptionType = G4TNtupleDescription; - // Functions specific to the output type // Set methods void SetFileManager(std::shared_ptr fileManager); // Access to ntuple vector (needed for Write()) - const std::vector& GetNtupleDescriptionVector() const; + const std::vector& GetNtupleDescriptionVector() const; void SetIsCommentedHeader(G4bool isCommentedHeader); void SetIsHippoHeader(G4bool isHippoHeader); // Methods from the templated base class // - virtual void CreateTNtuple( - NtupleDescriptionType* ntupleDescription, - const G4String& name, const G4String& title) final; virtual void CreateTNtupleFromBooking( - NtupleDescriptionType* ntupleDescription) final; + CsvNtupleDescription* ntupleDescription) final; virtual void FinishTNtuple( - NtupleDescriptionType* ntupleDescription, + CsvNtupleDescription* ntupleDescription, G4bool fromBooking) final; - G4bool WriteHeader(NtupleType* ntuple) const; + G4bool WriteHeader(tools::wcsv::ntuple* ntuple) const; // data members std::shared_ptr fFileManager; @@ -90,7 +88,7 @@ inline void G4CsvNtupleManager::SetFileManager(std::shared_ptr fileManager) { fFileManager = fileManager; } -inline const std::vector*>& +inline const std::vector*>& G4CsvNtupleManager::GetNtupleDescriptionVector() const { return fNtupleDescriptionVector; } @@ -101,4 +99,3 @@ inline void G4CsvNtupleManager::SetIsHippoHeader(G4bool isHippoHeader) { fIsHippoHeader = isHippoHeader; } #endif - diff --git a/source/analysis/csv/include/G4CsvRFileManager.hh b/source/analysis/csv/include/G4CsvRFileManager.hh index 260ec660c8..d2780a7775 100644 --- a/source/analysis/csv/include/G4CsvRFileManager.hh +++ b/source/analysis/csv/include/G4CsvRFileManager.hh @@ -45,6 +45,8 @@ class G4CsvRFileManager : public G4BaseFileManager explicit G4CsvRFileManager(const G4AnalysisManagerState& state); ~G4CsvRFileManager(); + virtual G4String GetFileType() const final { return "csv"; } + // Methods to manipulate input files virtual G4bool OpenRFile(const G4String& fileName); diff --git a/source/analysis/csv/sources.cmake b/source/analysis/csv/sources.cmake index 81988c4d2e..bdbdf1e67e 100644 --- a/source/analysis/csv/sources.cmake +++ b/source/analysis/csv/sources.cmake @@ -13,6 +13,9 @@ geant4_define_module(NAME G4csv G4CsvAnalysisReader.hh G4CsvAnalysisReader.icc G4CsvFileManager.hh + G4CsvHnFileManager.hh + G4CsvHnFileManager.icc + G4CsvNtupleFileManager.hh G4CsvNtupleManager.hh G4CsvRFileManager.hh G4CsvRNtupleManager.hh @@ -22,6 +25,7 @@ geant4_define_module(NAME G4csv G4CsvAnalysisManager.cc G4CsvAnalysisReader.cc G4CsvFileManager.cc + G4CsvNtupleFileManager.cc G4CsvNtupleManager.cc G4CsvRFileManager.cc G4CsvRNtupleManager.cc diff --git a/source/analysis/csv/src/G4CsvAnalysisManager.cc b/source/analysis/csv/src/G4CsvAnalysisManager.cc index 7635f944c5..4cdffdb7d3 100644 --- a/source/analysis/csv/src/G4CsvAnalysisManager.cc +++ b/source/analysis/csv/src/G4CsvAnalysisManager.cc @@ -28,7 +28,7 @@ #include "G4CsvAnalysisManager.hh" #include "G4CsvFileManager.hh" -#include "G4CsvNtupleManager.hh" +#include "G4CsvNtupleFileManager.hh" #include "G4AnalysisVerbose.hh" #include "G4AnalysisManagerState.hh" #include "G4UnitsTable.hh" @@ -75,8 +75,8 @@ G4bool G4CsvAnalysisManager::IsInstance() //_____________________________________________________________________________ G4CsvAnalysisManager::G4CsvAnalysisManager(G4bool isMaster) : G4ToolsAnalysisManager("Csv", isMaster), - fNtupleManager(nullptr), - fFileManager(nullptr) + fFileManager(nullptr), + fNtupleFileManager(nullptr) { if ( ( isMaster && fgMasterInstance ) || ( fgInstance ) ) { G4ExceptionDescription description; @@ -89,14 +89,15 @@ G4CsvAnalysisManager::G4CsvAnalysisManager(G4bool isMaster) if ( isMaster ) fgMasterInstance = this; fgInstance = this; - fNtupleManager = new G4CsvNtupleManager(fState); + + // File Manager fFileManager = std::make_shared(fState); - fNtupleManager->SetFileManager(fFileManager); - // The managers will be deleted by the base class - - // Set managers to base class which takes then their ownreship - SetNtupleManager(fNtupleManager); SetFileManager(fFileManager); + + // Ntuple file manager + fNtupleFileManager = std::make_shared(fState); + fNtupleFileManager->SetFileManager(fFileManager); + fNtupleFileManager->SetBookingManager(fNtupleBookingManager); } //_____________________________________________________________________________ @@ -110,30 +111,6 @@ G4CsvAnalysisManager::~G4CsvAnalysisManager() // private methods // -//_____________________________________________________________________________ -G4bool G4CsvAnalysisManager::CloseNtupleFiles() -{ - auto ntupleVector - = fNtupleManager->GetNtupleDescriptionVector(); - - // Close ntuple files - for ( auto ntupleDescription : ntupleVector) { - fFileManager->CloseNtupleFile(ntupleDescription); - } - - return true; -} - - -// -// protected methods -// - -// -// private methods -// - - //_____________________________________________________________________________ G4bool G4CsvAnalysisManager::WriteH1() { @@ -264,7 +241,7 @@ G4bool G4CsvAnalysisManager::Reset() auto result = G4ToolsAnalysisManager::Reset(); finalResult = finalResult && result; - result = fNtupleManager->Reset(true); + result = fNtupleFileManager->Reset(); finalResult = finalResult && result; return finalResult; @@ -273,24 +250,23 @@ G4bool G4CsvAnalysisManager::Reset() //_____________________________________________________________________________ G4bool G4CsvAnalysisManager::OpenFileImpl(const G4String& fileName) { + // Create ntuple manager(s) + // and set it to base class which takes then their ownership + SetNtupleManager(fNtupleFileManager->CreateNtupleManager()); + auto finalResult = true; - auto result = fFileManager->SetFileName(fileName); + + // Save file name in file manager + auto result = fFileManager->OpenFile(fileName); finalResult = finalResult && result; - // Only lock file name in file manager - result = fFileManager->OpenFile(fileName); + // Open ntuple files and create ntuples from bookings + result = fNtupleFileManager->ActionAtOpenFile(fFileManager->GetFullFileName()); finalResult = finalResult && result; - // Histogram and profile files are created/closed indivudually for each - // object in WriteHn{Pn] function - - // Create ntuples if they are booked - // (The files will be created with creating ntuples) - fNtupleManager->CreateNtuplesFromBooking(); - return finalResult; -} - +} + //_____________________________________________________________________________ G4bool G4CsvAnalysisManager::WriteImpl() { @@ -298,8 +274,9 @@ G4bool G4CsvAnalysisManager::WriteImpl() auto finalResult = true; #ifdef G4VERBOSE - if ( fState.GetVerboseL4() ) + if ( fState.GetVerboseL4() ) { fState.GetVerboseL4()->Message("write", "files", ""); + } #endif @@ -347,9 +324,9 @@ G4bool G4CsvAnalysisManager::WriteImpl() //} #ifdef G4VERBOSE - if ( fState.GetVerboseL1() ) - fState.GetVerboseL1() - ->Message("write", "files", "", finalResult); + if ( fState.GetVerboseL2() ) { + fState.GetVerboseL2()->Message("write", "files", "", finalResult); + } #endif return result; @@ -360,29 +337,26 @@ G4bool G4CsvAnalysisManager::CloseFileImpl(G4bool reset) { auto finalResult = true; - // Unlock file name only - auto result = fFileManager->CloseFile(); + // close open files + auto result = fFileManager->CloseFiles(); finalResult = finalResult && result; // Histogram and profile files are created/closed indivudually for each // object in WriteHn{Pn] function - // In sequential mode or in MT mode only on workers - result = CloseNtupleFiles(); + + result = fNtupleFileManager->ActionAtCloseFile(reset); finalResult = finalResult && result; - // reset data + // Reset data if ( reset ) { result = Reset(); - } else { - // ntuple must be reset - result = fNtupleManager->Reset(true); + if ( ! result ) { + G4ExceptionDescription description; + description << " " << "Resetting data failed"; + G4Exception("G4CsvAnalysisManager::CloseFile()", + "Analysis_W021", JustWarning, description); + } } - if ( ! result ) { - G4ExceptionDescription description; - description << " " << "Resetting data failed"; - G4Exception("G4CsvAnalysisManager::CloseFile()", - "Analysis_W021", JustWarning, description); - } finalResult = finalResult && result; return finalResult; diff --git a/source/analysis/csv/src/G4CsvAnalysisReader.cc b/source/analysis/csv/src/G4CsvAnalysisReader.cc index a351da7a21..a5124a5b21 100644 --- a/source/analysis/csv/src/G4CsvAnalysisReader.cc +++ b/source/analysis/csv/src/G4CsvAnalysisReader.cc @@ -67,7 +67,7 @@ void* ReadObject(std::istream& hnFile, << "Cannot get "<< objectType << " in file " << fileName; G4String inFunctionFull = "G4CsvAnalysisReader::"; inFunctionFull.append(inFunction); - G4Exception(inFunctionFull, "Analysis_WRnullptr11", JustWarning, description); + G4Exception(inFunctionFull, "Analysis_WR011", JustWarning, description); return nullptr; } if ( objectTypeInFile != objectType ) { diff --git a/source/analysis/csv/src/G4CsvFileManager.cc b/source/analysis/csv/src/G4CsvFileManager.cc index 1048283332..48f969d001 100644 --- a/source/analysis/csv/src/G4CsvFileManager.cc +++ b/source/analysis/csv/src/G4CsvFileManager.cc @@ -27,17 +27,86 @@ // Author: Ivana Hrivnacova, 18/06/2013 (ivana@ipno.in2p3.fr) #include "G4CsvFileManager.hh" +#include "G4CsvHnFileManager.hh" #include "G4AnalysisManagerState.hh" +#include "G4AnalysisUtilities.hh" + +using namespace G4Analysis; +using namespace tools; //_____________________________________________________________________________ G4CsvFileManager::G4CsvFileManager(const G4AnalysisManagerState& state) - : G4VFileManager(state) -{} + : G4VTFileManager(state) +{ + // Create helpers defined in the base class + fH1FileManager = std::make_shared>(this); + fH2FileManager = std::make_shared>(this); + fH3FileManager = std::make_shared>(this); + fP1FileManager = std::make_shared>(this); + fP2FileManager = std::make_shared>(this); +} //_____________________________________________________________________________ G4CsvFileManager::~G4CsvFileManager() {} +// +// private methods +// + +//_____________________________________________________________________________ +G4String G4CsvFileManager::GetNtupleFileName(CsvNtupleDescription* ntupleDescription) +{ + // get ntuple file name + auto ntupleFileName = ntupleDescription->fFileName; + if ( ntupleFileName.size() ) { + // update filename per object per thread + ntupleFileName = GetTnFileName(ntupleFileName, GetFileType()); + } else { + // compose ntuple file name from the default file name + ntupleFileName = GetNtupleFileName(ntupleDescription->fNtupleBooking.name()); + } + return ntupleFileName; +} + +// +// protected methods +// + +//_____________________________________________________________________________ +std::shared_ptr G4CsvFileManager::CreateFileImpl(const G4String& fileName) +{ + std::shared_ptr file = std::make_shared(fileName); + if ( file->fail() ) { + file = nullptr; + G4ExceptionDescription description; + description << " " << "Cannot create file " << fileName; + G4Exception("G4CsvFileManager::CreateFileImpl()", + "Analysis_W001", JustWarning, description); + return nullptr; + } + + return file; +} + +//_____________________________________________________________________________ +G4bool G4CsvFileManager::WriteFileImpl(std::shared_ptr /*file*/) +{ + // Nothing to be done here + return true; +} + +//_____________________________________________________________________________ +G4bool G4CsvFileManager::CloseFileImpl(std::shared_ptr file) +{ + if ( ! file ) return false; + + // close file + file->close(); + + return true; +} + // // public methods // @@ -48,85 +117,85 @@ G4bool G4CsvFileManager::OpenFile(const G4String& fileName) // Keep file name fFileName = fileName; - fLockFileName = true; - fLockNtupleDirectoryName = true; fIsOpenFile = true; return true; } //_____________________________________________________________________________ -G4bool G4CsvFileManager::WriteFile() +G4bool G4CsvFileManager::CreateNtupleFile( + CsvNtupleDescription* ntupleDescription) { - // nothing to be done for Csv file - return true; + // get ntuple file name per object (if defined) + auto ntupleFileName = GetNtupleFileName(ntupleDescription); + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("create", "ntuple file", ntupleFileName); + } +#endif + + // update file name if it is already in use + while ( GetTFile(ntupleFileName, false) ) { + // the file is already in use + auto oldName = ntupleDescription->fFileName; + auto newName = GetBaseName(oldName) + "_bis." + GetExtension(oldName); + ntupleDescription->fFileName = newName; + + G4ExceptionDescription description; + description + << "Ntuple filename " << oldName << " is already in use." << G4endl + << "It will be replaced with : " << newName; + G4Exception("G4CsvFileManager::CreateFileImpl()", + "Analysis_W001", JustWarning, description); + + ntupleFileName = GetNtupleFileName(ntupleDescription); + } + + ntupleDescription->fFile = CreateTFile(ntupleFileName); + +#ifdef G4VERBOSE + if ( fState.GetVerboseL2() ) { + fState.GetVerboseL2()->Message("create", "ntuple file", ntupleFileName); + } +#endif + + return (ntupleDescription->fFile != nullptr); } -//_____________________________________________________________________________ -G4bool G4CsvFileManager::CloseFile() -{ - fLockFileName = false; - fIsOpenFile = false; - return true; -} - -//_____________________________________________________________________________ -G4bool G4CsvFileManager::CreateNtupleFile( - G4TNtupleDescription* ntupleDescription) -{ - G4String ntupleName = ntupleDescription->fNtupleBooking.name(); - -#ifdef G4VERBOSE - if ( fState.GetVerboseL4() ) - fState.GetVerboseL4() - ->Message("create", "file", GetNtupleFileName(ntupleName)); -#endif - - auto ntupleFile = new std::ofstream(GetNtupleFileName(ntupleName)); - if ( ntupleFile->fail() ) { - delete ntupleFile; - G4ExceptionDescription description; - description << " " << "Cannot open file " - << GetNtupleFileName(ntupleName); - G4Exception("G4CsvFileManager::CreateNtupleFile()", - "Analysis_W001", JustWarning, description); - return false; - } - -#ifdef G4VERBOSE - if ( fState.GetVerboseL1() ) - fState.GetVerboseL1() - ->Message("create", "file", GetNtupleFileName(ntupleName)); -#endif - - ntupleDescription->fFile = ntupleFile; - return true; -} - //_____________________________________________________________________________ G4bool G4CsvFileManager::CloseNtupleFile( - G4TNtupleDescription* ntupleDescription) + CsvNtupleDescription* ntupleDescription) { // Do nothing if there is no file if ( ! ntupleDescription->fFile ) return true; - G4String ntupleName = ntupleDescription->fNtupleBooking.name(); + auto finalResult = true; + + auto ntupleFileName = GetNtupleFileName(ntupleDescription); #ifdef G4VERBOSE - if ( fState.GetVerboseL4() ) - fState.GetVerboseL4() - ->Message("close", "file", GetNtupleFileName(ntupleName)); + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4() ->Message("close", "ntuple file", ntupleFileName); + } #endif // close file - ntupleDescription->fFile->close(); + auto result = CloseTFile(ntupleFileName); + finalResult = result && finalResult; + + // Notify not empty file + result = SetIsEmpty(ntupleFileName, ! ntupleDescription->fHasFill); + finalResult = result && finalResult; + + // Reset file info in ntuple description + ntupleDescription->fFile.reset(); #ifdef G4VERBOSE - if ( fState.GetVerboseL1() ) - fState.GetVerboseL1() - ->Message("close", "file", GetNtupleFileName(ntupleName)); + if ( fState.GetVerboseL2() ) { + fState.GetVerboseL2()->Message("close", "ntuple file", ntupleFileName); + } #endif - return true; -} - + return finalResult; +} diff --git a/source/analysis/csv/src/G4CsvNtupleFileManager.cc b/source/analysis/csv/src/G4CsvNtupleFileManager.cc new file mode 100644 index 0000000000..dbe010d078 --- /dev/null +++ b/source/analysis/csv/src/G4CsvNtupleFileManager.cc @@ -0,0 +1,133 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +// Author: Ivana Hrivnacova, 15/09/2020 (ivana@ipno.in2p3.fr) + +#include "G4CsvNtupleFileManager.hh" +#include "G4CsvNtupleManager.hh" +#include "G4CsvFileManager.hh" +#include "G4AnalysisManagerState.hh" +#include "G4AnalysisUtilities.hh" + +#include "G4Threading.hh" + +#include + +using namespace G4Analysis; + +//_____________________________________________________________________________ +G4CsvNtupleFileManager::G4CsvNtupleFileManager(const G4AnalysisManagerState& state) + : G4VNtupleFileManager(state, "csv"), + fFileManager(nullptr), + fNtupleManager(nullptr) +{} + +//_____________________________________________________________________________ +G4CsvNtupleFileManager::~G4CsvNtupleFileManager() +{} + +// +// private methods +// + +//_____________________________________________________________________________ +G4bool G4CsvNtupleFileManager::CloseNtupleFiles() +{ + // Close ntuple files + + auto finalResult = true; + auto ntupleVector = fNtupleManager->GetNtupleDescriptionVector(); + for ( auto ntupleDescription : ntupleVector) { + auto result = fFileManager->CloseNtupleFile(ntupleDescription); + finalResult = finalResult && result; + } + + return finalResult; +} + +// +// public methods +// + +//_____________________________________________________________________________ +std::shared_ptr G4CsvNtupleFileManager::CreateNtupleManager() +{ + // G4cout << "G4CsvNtupleFileManager::CreateNtupleManager" << G4endl; + + fNtupleManager = std::make_shared(fState); + fNtupleManager->SetFileManager(fFileManager); + + return fNtupleManager; +} + +//_____________________________________________________________________________ +G4bool G4CsvNtupleFileManager::ActionAtOpenFile(const G4String& /*fileName*/) +{ + // G4cout << "G4CsvNtupleFileManager::ActionAtOpenFile" << G4endl; + + // Create ntuples if they are booked + // (The files will be created with creating ntuples) + fNtupleManager->CreateNtuplesFromBooking( + fBookingManager->GetNtupleBookingVector()); + + return true; +} + +//_____________________________________________________________________________ +G4bool G4CsvNtupleFileManager::ActionAtWrite() +{ + return true; +} + +//_____________________________________________________________________________ +G4bool G4CsvNtupleFileManager::ActionAtCloseFile(G4bool reset) +{ + auto finalResult = true; + + // close ntuple files + auto result = CloseNtupleFiles(); + finalResult = finalResult && result; + + if ( ! reset ) { + // The ntuples must be always reset when closing file) + result = Reset(); + if ( ! result ) { + G4ExceptionDescription description; + description << " " << "Resetting data failed"; + G4Exception("G4CsvNtupleFileManager::CloseFile()", + "Analysis_W021", JustWarning, description); + } + finalResult = finalResult && result; + } + + return finalResult; +} + +//_____________________________________________________________________________ +G4bool G4CsvNtupleFileManager::Reset() +{ + return fNtupleManager->Reset(true); +} diff --git a/source/analysis/csv/src/G4CsvNtupleManager.cc b/source/analysis/csv/src/G4CsvNtupleManager.cc index bb159d8051..cd89194391 100644 --- a/source/analysis/csv/src/G4CsvNtupleManager.cc +++ b/source/analysis/csv/src/G4CsvNtupleManager.cc @@ -43,7 +43,7 @@ using namespace G4Analysis; //_____________________________________________________________________________ G4CsvNtupleManager::G4CsvNtupleManager(const G4AnalysisManagerState& state) - : G4TNtupleManager(state), + : G4TNtupleManager(state), fFileManager(nullptr), fIsCommentedHeader(true), fIsHippoHeader(false) @@ -57,41 +57,23 @@ G4CsvNtupleManager::~G4CsvNtupleManager() // private methods // -//_____________________________________________________________________________ -void G4CsvNtupleManager::CreateTNtuple( - G4TNtupleDescription* ntupleDescription, - const G4String& /*name*/, const G4String& title) -{ - // Create ntuple if the file is open (what means here that - // a filename was already set) - if ( fFileManager->GetFileName().size() ) { - if ( fFileManager->CreateNtupleFile(ntupleDescription) ) { - ntupleDescription->fNtuple - = new tools::wcsv::ntuple(*(ntupleDescription->fFile)); - // ntuple object is deleted when closing a file - (ntupleDescription->fNtuple)->set_title(title); - fNtupleVector.push_back(ntupleDescription->fNtuple); - } - } -} - //_____________________________________________________________________________ void G4CsvNtupleManager::CreateTNtupleFromBooking( - G4TNtupleDescription* ntupleDescription) + CsvNtupleDescription* ntupleDescription) { - // create a file for this ntuple - if ( ! fFileManager->CreateNtupleFile(ntupleDescription) ) return; + // create a file for this ntuple + if ( ! fFileManager->CreateNtupleFile(ntupleDescription) ) return; - // create ntuple - ntupleDescription->fNtuple - = new tools::wcsv::ntuple( - *(ntupleDescription->fFile), G4cerr, ntupleDescription->fNtupleBooking); - fNtupleVector.push_back(ntupleDescription->fNtuple); + // create ntuple + ntupleDescription->fNtuple + = new tools::wcsv::ntuple( + *(ntupleDescription->fFile), G4cerr, ntupleDescription->fNtupleBooking); + fNtupleVector.push_back(ntupleDescription->fNtuple); } //_____________________________________________________________________________ void G4CsvNtupleManager::FinishTNtuple( - G4TNtupleDescription* ntupleDescription, + CsvNtupleDescription* ntupleDescription, G4bool /*fromBooking*/) { @@ -103,11 +85,20 @@ void G4CsvNtupleManager::FinishTNtuple( CreateTNtupleFromBooking(ntupleDescription); } + // Return if creating ntuple failed + if ( ! ntupleDescription->fNtuple ) { + G4ExceptionDescription description; + description << "Creating ntuple has failed. "; + G4Exception("G4CsvNtupleManager::FinishTNtuple()", + "Analysis_W022", JustWarning, description); + return; + } + + // Write header if ntuple already exists if ( ! WriteHeader(ntupleDescription->fNtuple) ) { G4ExceptionDescription description; - description << " " - << "Writing ntuple header has failed. "; + description << "Writing ntuple header has failed. "; G4Exception("G4CsvNtupleManager::FinishTNtuple()", "Analysis_W022", JustWarning, description); } diff --git a/source/analysis/exception_classification.txt b/source/analysis/exception_classification.txt index 49abd36ac2..fb4dd6eea1 100644 --- a/source/analysis/exception_classification.txt +++ b/source/analysis/exception_classification.txt @@ -23,6 +23,8 @@ Analysis_W031: Merging data has failed Analysis_W041: Requested feature is not available with selected output. +Analysis_W051: Selected output type is not supported. + Analysis_WR001: Cannot open a file for reading Analysis_WR011: Cannot access an object in a file diff --git a/source/analysis/factory/include/G4GenericAnalysisManager.hh b/source/analysis/factory/include/G4GenericAnalysisManager.hh new file mode 100644 index 0000000000..fe3884d4e2 --- /dev/null +++ b/source/analysis/factory/include/G4GenericAnalysisManager.hh @@ -0,0 +1,114 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +// The main manager for Root analysis. +// It delegates most of functions to the object specific managers. + +// Author: Ivana Hrivnacova, 18/06/2013 (ivana@ipno.in2p3.fr) + +#ifndef G4GenericAnalysisManager_h +#define G4GenericAnalysisManager_h 1 + +#include "G4ToolsAnalysisManager.hh" +#include "G4THnManager.hh" +#include "G4Threading.hh" +#include "globals.hh" + +#include + +class G4GenericFileManager; +class G4HnInformation; +class G4VNtupleFileManager; + +class G4GenericAnalysisManager : public G4ToolsAnalysisManager +{ + friend class G4RootMpiAnalysisManager; + + public: + explicit G4GenericAnalysisManager(G4bool isMaster = true); + virtual ~G4GenericAnalysisManager(); + + // static methods + static G4GenericAnalysisManager* Instance(); + static G4bool IsInstance(); + + // MT/MPI + virtual void SetNtupleMerging(G4bool mergeNtuples, + G4int nofReducedNtupleFiles = 0) override; + virtual void SetNtupleRowWise(G4bool rowWise, G4bool rowMode = true) override; + virtual void SetBasketSize(unsigned int basketSize) override; + virtual void SetBasketEntries(unsigned int basketEntries) override; + + // new functions + G4bool Merge(); + + // write in an extra file + G4bool WriteH1(G4int id, const G4String& fileName); + G4bool WriteH2(G4int id, const G4String& fileName); + G4bool WriteH3(G4int id, const G4String& fileName); + G4bool WriteP1(G4int id, const G4String& fileName); + G4bool WriteP2(G4int id, const G4String& fileName); + + // set default output type (backward compatibility) + // this type will be used for file names without extension + void SetDefaultFileType(const G4String& value); + G4String GetDefaultFileType() const; + + protected: + // virtual methods from base class + virtual G4bool OpenFileImpl(const G4String& fileName) override; + virtual G4bool WriteImpl() final; + virtual G4bool CloseFileImpl(G4bool reset = true) override; + virtual G4bool IsOpenFileImpl() const final; + virtual G4bool Reset() final; + + private: + // methods + void CreateNtupleFileManager(const G4String& fileName); + + // static data members + static G4GenericAnalysisManager* fgMasterInstance; + static G4ThreadLocal G4GenericAnalysisManager* fgInstance; + + // data members + std::shared_ptr fFileManager; + // add G4GenericNtupleManager + // this class will be analogic to file managers but with ntuples + std::shared_ptr fNtupleFileManager; + + // data members + G4bool fIsNtupleMergingSet = false; + G4int fNofNtupleFiles = 0; + G4bool fMergeNtuples = false; + G4bool fNtupleRowWise = false; + G4bool fNtupleRowMode = true; + unsigned int fBasketSize = fgkDefaultBasketSize; + unsigned int fBasketEntries = fgkDefaultBasketEntries; +}; + +#include "G4GenericAnalysisManager.icc" + +#endif diff --git a/source/analysis/factory/include/G4GenericAnalysisManager.icc b/source/analysis/factory/include/G4GenericAnalysisManager.icc new file mode 100644 index 0000000000..55f01f4337 --- /dev/null +++ b/source/analysis/factory/include/G4GenericAnalysisManager.icc @@ -0,0 +1,78 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +#include "G4GenericFileManager.hh" +#include "G4AutoLock.hh" + +//_____________________________________________________________________________ +inline void G4GenericAnalysisManager::SetNtupleMerging( + G4bool mergeNtuples, G4int nofReducedNtupleFiles) +{ + fIsNtupleMergingSet = true; + fMergeNtuples = mergeNtuples; + fNofNtupleFiles = nofReducedNtupleFiles; +} + +//_____________________________________________________________________________ +inline void G4GenericAnalysisManager::SetNtupleRowWise( + G4bool rowWise, G4bool rowMode) +{ + fNtupleRowWise = rowWise; + fNtupleRowMode = rowMode; +} + +//_____________________________________________________________________________ +inline void G4GenericAnalysisManager::SetBasketSize( + unsigned int basketSize) +{ + fBasketSize = basketSize; +} + +//_____________________________________________________________________________ +inline void G4GenericAnalysisManager::SetBasketEntries( + unsigned int basketEntries) +{ + fBasketEntries = basketEntries; +} + +//_____________________________________________________________________________ +inline void G4GenericAnalysisManager::SetDefaultFileType(const G4String& value) +{ + fFileManager->SetDefaultFileType(value); +} + +//_____________________________________________________________________________ +inline G4String G4GenericAnalysisManager::GetDefaultFileType() const +{ + return fFileManager->GetDefaultFileType(); +} + +//_____________________________________________________________________________ +inline +G4bool G4GenericAnalysisManager::IsOpenFileImpl() const +{ + return fFileManager->IsOpenFile(); +} diff --git a/source/analysis/factory/include/G4GenericFileManager.hh b/source/analysis/factory/include/G4GenericFileManager.hh new file mode 100644 index 0000000000..3b56fe4231 --- /dev/null +++ b/source/analysis/factory/include/G4GenericFileManager.hh @@ -0,0 +1,115 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +// The manager for Root output file operations. + +// Author: Ivana Hrivnacova, 18/06/2013 (ivana@ipno.in2p3.fr) + +#ifndef G4GenericFileManager_h +#define G4GenericFileManager_h 1 + +#include "G4VFileManager.hh" +#include "G4AnalysisUtilities.hh" +#include "globals.hh" + +#include +#include + +class G4HnInformation; +class G4VNtupleFileManager; + +class G4CsvFileManager; +#ifdef TOOLS_USE_HDF5 +class G4Hdf5FileManager; +#endif +class G4RootFileManager; +class G4XmlFileManager; + +class G4GenericFileManager : public G4VFileManager +{ + public: + explicit G4GenericFileManager(const G4AnalysisManagerState& state); + virtual ~G4GenericFileManager(); + + // Method to manipulate a default file + virtual G4bool OpenFile(const G4String& fileName) final; + + // Methods applied to all registered files + virtual G4bool OpenFiles() final; + virtual G4bool WriteFiles() final; + virtual G4bool CloseFiles() final; + virtual G4bool DeleteEmptyFiles() final; + + // Methods applied to file per name + virtual G4bool CreateFile(const G4String& fileName) final; + virtual G4bool WriteFile(const G4String& fileName) final; + virtual G4bool CloseFile(const G4String& fileName) final; + virtual G4bool SetIsEmpty(const G4String& fileName, G4bool isEmpty) final; + + virtual G4String GetFileType() const final { return ""; } + + // set default output type (backward compatibility) + // this type will be used for file names without extension + void SetDefaultFileType(const G4String& value); + G4String GetDefaultFileType() const; + + template + G4bool WriteT(const std::vector& htVector, + const std::vector& hnVector); + + template + G4bool WriteTExtra(const G4String& fileName, T* ht, const G4String& htName); + + // methods + std::shared_ptr CreateNtupleFileManager(G4AnalysisOutput output); + + private: + // methods + void CreateFileManager(G4AnalysisOutput output); + std::shared_ptr GetFileManager(G4AnalysisOutput output) const; + std::shared_ptr GetFileManager(const G4String& fileName); + + // constants + static const G4String fgkDefaultFileType; + + // data members + G4String fDefaultFileType; + std::shared_ptr fDefaultFileManager; + std::vector> fFileManagers; + + std::shared_ptr fCsvFileManager; +#ifdef TOOLS_USE_HDF5 + std::shared_ptr fHdf5FileManager; +#endif + std::shared_ptr fRootFileManager; + std::shared_ptr fXmlFileManager; + G4bool fHdf5Warn; +}; + +#include "G4GenericFileManager.icc" + +#endif + diff --git a/source/analysis/factory/include/G4GenericFileManager.icc b/source/analysis/factory/include/G4GenericFileManager.icc new file mode 100644 index 0000000000..f111f9f9b5 --- /dev/null +++ b/source/analysis/factory/include/G4GenericFileManager.icc @@ -0,0 +1,154 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +#include "G4HnInformation.hh" + +//_____________________________________________________________________________ +inline G4String G4GenericFileManager::GetDefaultFileType() const +{ + return fDefaultFileType; +} + +//_____________________________________________________________________________ +template +inline +G4bool G4GenericFileManager::WriteT(const std::vector& htVector, + const std::vector& hnVector) +{ + auto finalResult = true; + + for ( G4int i=0; iGetActivation(); + // skip writing if activation is enabled and H1 is inactivated + if ( fState.GetIsActivation() && ( ! activation ) ) continue; + + auto name = info->GetName(); + auto ht = htVector[i]; + + auto fileName = info->GetFileName(); + + auto fileManager = fDefaultFileManager; + auto fileKind = "default"; + if ( fileName == "" ) { + fileName = fileManager->GetFileName(); + } else { + fileManager = GetFileManager(fileName); + fileKind = "extra"; + // skip writing if cannot get file manager (wrong file extension) + if ( ! fileManager ) { + if ( G4Analysis::GetExtension(fileName) != "hdf5" || fHdf5Warn ) { + G4ExceptionDescription description; + description + << "Cannot get file manager for " << fileKind << " file " << fileName << "." << G4endl + << "Writing " << G4Analysis::GetHnType() << " " << name + << " will be skipped."; + G4Exception("G4GenericFileManager::WriteT", + "Analysis_W022", JustWarning, description); + } +#ifdef G4VERBOSE + if ( fState.GetVerboseL3() ) { + G4ExceptionDescription description; + description << " " << name << " in the " << fileKind << " file " << fileName; + fState.GetVerboseL3() + ->Message("write", G4Analysis::GetHnType(), description, false); + } +#endif + continue; + } + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + G4ExceptionDescription description; + description << " " << name << " in the " << fileKind << " file " << fileName; + fState.GetVerboseL3() + ->Message("write", G4Analysis::GetHnType(), description); + } +#endif + + auto result = fileManager->GetHnFileManager()->Write(ht, name, fileName); + if ( ! result ) { + G4ExceptionDescription description; + description + << "Writing " << G4Analysis::GetHnType() << " " << name + << " to file " << fileName << " failed."; + G4Exception("G4GenericManager::WriteT()", + "Analysis_W022", JustWarning, description); + } + finalResult = result && finalResult; + + // notify that file has a written object + fileManager->SetIsEmpty(fileName, false); + +#ifdef G4VERBOSE + if ( fState.GetVerboseL3() ) { + G4ExceptionDescription description; + description << " " << name << " in the " << fileKind << " file " << fileName; + fState.GetVerboseL3() + ->Message("write", G4Analysis::GetHnType(), description, finalResult); + } +#endif + } + + return finalResult; +} + +//_____________________________________________________________________________ +template +inline +G4bool G4GenericFileManager::WriteTExtra( + const G4String& fileName, T* ht, const G4String& htName) +{ + if ( fState.GetVerboseL4() ) { + G4ExceptionDescription description; + description + << fileName << " with " << G4Analysis::GetHnType() << " " << htName; + fState.GetVerboseL4()->Message("write", "extra file", description); + } + + std::shared_ptr fileManager = GetFileManager(fileName); + if ( ! fileManager ) { + G4ExceptionDescription description; + description + << "Cannot get file manager for file " << fileName << "." << G4endl + << "Writing " << G4Analysis::GetHnType() << " " << htName + << " failed."; + G4Exception("G4GenericFileManager::WriteTExtra", + "Analysis_W022", JustWarning, description); + return false; + } + + auto result = fileManager->GetHnFileManager()->WriteExtra(ht, htName, fileName); + +#ifdef G4VERBOSE + if ( fState.GetVerboseL1() ) { + fState.GetVerboseL1()->Message("write", "extra file", fileName, result); + } +#endif + + return result; +} diff --git a/source/analysis/factory/sources.cmake b/source/analysis/factory/sources.cmake index f3df927c3d..bce4812801 100644 --- a/source/analysis/factory/sources.cmake +++ b/source/analysis/factory/sources.cmake @@ -15,12 +15,19 @@ geant4_define_module(NAME G4analysisfac HEADERS g4analysis.hh g4analysis_defs.hh + G4GenericAnalysisManager.hh + G4GenericAnalysisManager.icc + G4GenericFileManager.hh + G4GenericFileManager.icc SOURCES g4analysis.cc + G4GenericAnalysisManager.cc + G4GenericFileManager.cc GRANULAR_DEPENDENCIES G4globman G4intercoms G4analysismng + G4hntools G4csv G4root G4xml diff --git a/source/analysis/factory/src/G4GenericAnalysisManager.cc b/source/analysis/factory/src/G4GenericAnalysisManager.cc new file mode 100644 index 0000000000..54aa8d12aa --- /dev/null +++ b/source/analysis/factory/src/G4GenericAnalysisManager.cc @@ -0,0 +1,495 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +// Author: Ivana Hrivnacova, 18/06/2013 (ivana@ipno.in2p3.fr) + +#include "G4GenericAnalysisManager.hh" +#include "G4GenericFileManager.hh" +#include "G4AnalysisVerbose.hh" +#include "G4AnalysisManagerState.hh" +#include "G4AnalysisUtilities.hh" +#include "G4NtupleBookingManager.hh" +#include "G4VNtupleFileManager.hh" + +#include +#include + +using namespace G4Analysis; + +// mutex in a file scope + +namespace { + +//Mutex to lock master manager when merging histograms +G4Mutex mergeHnMutex = G4MUTEX_INITIALIZER; + +void WriteHnException(const G4String& hnType, G4int id) +{ + G4String inFunction = "G4GenericAnalysisManager::Write" + hnType; + G4ExceptionDescription description; + description << "Failed to get " << hnType << " id " << id << G4endl; + G4Exception(inFunction, "Analysis_W022", JustWarning, description); +} + +} + +G4GenericAnalysisManager* G4GenericAnalysisManager::fgMasterInstance = nullptr; +G4ThreadLocal G4GenericAnalysisManager* G4GenericAnalysisManager::fgInstance = nullptr; + +//_____________________________________________________________________________ +G4GenericAnalysisManager* G4GenericAnalysisManager::Instance() +{ + if ( fgInstance == nullptr ) { + G4bool isMaster = ! G4Threading::IsWorkerThread(); + fgInstance = new G4GenericAnalysisManager(isMaster); + } + + return fgInstance; +} + +//_____________________________________________________________________________ +G4bool G4GenericAnalysisManager::IsInstance() +{ + return ( fgInstance != nullptr ); +} + +//_____________________________________________________________________________ +G4GenericAnalysisManager::G4GenericAnalysisManager(G4bool isMaster) + : G4ToolsAnalysisManager("", isMaster), + fFileManager(nullptr), + fNtupleFileManager(nullptr) +{ + if ( ( isMaster && fgMasterInstance ) || ( fgInstance ) ) { + G4ExceptionDescription description; + description + << " " + << "G4GenericAnalysisManager already exists." + << "Cannot create another instance."; + G4Exception("G4GenericAnalysisManager::G4GenericAnalysisManager()", + "Analysis_F001", FatalException, description); + } + if ( isMaster ) fgMasterInstance = this; + fgInstance = this; + + // File manager + fFileManager = std::make_shared(fState); + SetFileManager(fFileManager); +} + +//_____________________________________________________________________________ +G4GenericAnalysisManager::~G4GenericAnalysisManager() +{ + if ( fState.GetIsMaster() ) fgMasterInstance = nullptr; + fgInstance = nullptr; +} + +// +// private methods +// + +//_____________________________________________________________________________ +void G4GenericAnalysisManager::CreateNtupleFileManager(const G4String& fileName) +{ + if ( fNtupleFileManager ) { + G4ExceptionDescription description; + description + << " " + << "The ntuple file manager already exists."; + G4Exception("G4GenericAnalysisManager::CreateNtupleFileManager", + "Analysis_W002", JustWarning, description); + return; + } + + auto fileType = GetExtension(fileName); + auto output = G4Analysis::GetOutput(fileType); + if ( output == G4AnalysisOutput::kNone ) { + G4ExceptionDescription description; + description + << "The file type " << fileType << "is not supported."; + G4Exception("G4GenericAnalysisManager::CreateNtupleFileManager", + "Analysis_W051", JustWarning, description); + return; + } + + // Set file type to booked ntuples + fNtupleBookingManager->SetFileType(fileType); + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("create", "ntuple file manager", fileType); + } +#endif + + fNtupleFileManager = fFileManager->CreateNtupleFileManager(output); + if (fNtupleFileManager) { + fNtupleFileManager->SetBookingManager(fNtupleBookingManager); + } + + if ( fNtupleFileManager->IsNtupleMergingSupported() ) { + // set merginng + fNtupleFileManager->SetNtupleMerging(fMergeNtuples, fNofNtupleFiles); + fNtupleFileManager->SetNtupleRowWise(fNtupleRowWise, fNtupleRowMode); + fNtupleFileManager->SetBasketSize(fBasketSize); + fNtupleFileManager->SetBasketEntries(fBasketEntries); + } + else if ( fIsNtupleMergingSet && fMergeNtuples ) { + G4ExceptionDescription description; + description + << " " << "Ntuple merging is not available with " + << fileType << " output." << G4endl + << " " << "Setting is ignored."; + G4Exception("G4GenericAnalysisManager::CreateNtupleFileManager", + "Analysis_W041", JustWarning, description); + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL3() ) { + fState.GetVerboseL3()->Message("create", "ntuple file manager", fileType, true); + } +#endif +} + +// +// protected methods +// + +//_____________________________________________________________________________ +G4bool G4GenericAnalysisManager::OpenFileImpl(const G4String& fileName) +{ + // Add file name extension, if missing + auto fullFileName = fileName; + if ( ! GetExtension(fileName).size() ) { + // G4cout << "File type is not defined, using default: " << fFileManager->GetDefaultFileType() << G4endl; + fullFileName = fileName + "." + fFileManager->GetDefaultFileType(); + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("open (generic)", "file", fileName); + } +#endif + + // Create ntuple file manager if there are booked ntuples + if (! fNtupleFileManager) { + CreateNtupleFileManager(fullFileName); + } + + // Create ntuple manager + // and set it to base class which takes then its ownership + if (fNtupleFileManager) { + SetNtupleManager(fNtupleFileManager->CreateNtupleManager()); + } + + auto finalResult = true; + + // Open file for histograms/profiles + auto result = fFileManager->OpenFile(fullFileName); + finalResult = finalResult && result; + + // Open ntuple file(s) and create ntuples from bookings + if (fNtupleFileManager) { + result = fNtupleFileManager->ActionAtOpenFile(fullFileName); + finalResult = finalResult && result; + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL3() ) { + fState.GetVerboseL3()->Message("open (generic)", "file", fileName, finalResult); + } +#endif + return finalResult; +} + +//_____________________________________________________________________________ +G4bool G4GenericAnalysisManager::WriteImpl() +{ +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("write (generic)", "files", ""); + } +#endif + + auto finalResult = true; + auto result = true; + + if ( ! fgMasterInstance && + ( ( ! fH1Manager->IsEmpty() ) || ( ! fH2Manager->IsEmpty() ) || + ( ! fH3Manager->IsEmpty() ) || ( ! fP1Manager->IsEmpty() ) || + ( ! fP2Manager->IsEmpty() ) ) ) { + G4ExceptionDescription description; + description + << " " << "No master G4GenericAnalysisManager instance exists." + << G4endl + << " " << "Histogram/profile data will not be merged."; + G4Exception("G4GenericAnalysisManager::Write()", + "Analysis_W031", JustWarning, description); + } + + if ( G4Threading::IsWorkerThread() ) { + result = Merge(); + finalResult = finalResult && result; + } + else { + // GO ON + + // Open all files registered with objects + fFileManager->OpenFiles(); + + // Write all histograms/profile on master + // + result = fFileManager->WriteT(fH1Manager->GetH1Vector(), fH1Manager->GetHnVector()); + finalResult = finalResult && result; + + result = fFileManager->WriteT(fH2Manager->GetH2Vector(), fH2Manager->GetHnVector()); + finalResult = finalResult && result; + + result = fFileManager->WriteT(fH3Manager->GetH3Vector(), fH3Manager->GetHnVector()); + finalResult = finalResult && result; + + result = fFileManager->WriteT(fP1Manager->GetP1Vector(), fP1Manager->GetHnVector()); + finalResult = finalResult && result; + + result = fFileManager->WriteT(fP2Manager->GetP2Vector(), fP2Manager->GetHnVector()); + finalResult = finalResult && result; + } + + // Ntuples + if (fNtupleFileManager) { + result = fNtupleFileManager->ActionAtWrite(); + finalResult = finalResult && result; + } + + // File + result = fFileManager->WriteFiles(); + finalResult = finalResult && result; + + // Write ASCII if activated + if ( IsAscii() ) { + result = WriteAscii(fFileManager->GetFileName()); + finalResult = finalResult && result; + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL3() ) { + fState.GetVerboseL3()->Message("write (generic)", "files", "", finalResult); + } +#endif + + return finalResult; +} + +//_____________________________________________________________________________ +G4bool G4GenericAnalysisManager::CloseFileImpl(G4bool reset) +{ + auto finalResult = true; + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("close (generic)", "files", ""); + } +#endif + + if (fNtupleFileManager) { + auto result = fNtupleFileManager->ActionAtCloseFile(reset); + finalResult = finalResult && result; + } + + // close file + auto result = fFileManager->CloseFiles(); + if ( ! result ) { + G4ExceptionDescription description; + description << " " << "Closing files failed"; + G4Exception("G4GenericAnalysisManager::CloseFile()", + "Analysis_W021", JustWarning, description); + } + finalResult = finalResult && result; + + // delete empty files + result = fFileManager->DeleteEmptyFiles(); + if ( ! result ) { + G4ExceptionDescription description; + description << " " << "Deleting empty files failed"; + G4Exception("G4GenericAnalysisManager::CloseFile()", + "Analysis_W021", JustWarning, description); + } + finalResult = finalResult && result; + + if ( reset ) { + result = Reset(); + if ( ! result ) { + G4ExceptionDescription description; + description << " " << "Resetting data failed"; + G4Exception("G4GenericAnalysisManager::CloseFile()", + "Analysis_W021", JustWarning, description); + } + } + finalResult = finalResult && result; + +#ifdef G4VERBOSE + if ( fState.GetVerboseL3() ) { + fState.GetVerboseL3()->Message("close (generic)", "files", "", finalResult); + } +#endif + + return finalResult; +} + +//_____________________________________________________________________________ +G4bool G4GenericAnalysisManager::Reset() +{ +// Reset histograms and ntuple + + auto finalResult = true; + + auto result = G4ToolsAnalysisManager::Reset(); + finalResult = finalResult && result; + + result = fNtupleFileManager->Reset(); + finalResult = result && finalResult; + + return finalResult; +} + +//_____________________________________________________________________________ +G4bool G4GenericAnalysisManager::Merge() +{ + // Nothing to be done on master + if ( ! G4Threading::IsWorkerThread() ) return false; + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("merge (generic) on worker", "histograms", ""); + } +#endif + + // The worker manager just adds its histograms to the master + fH1Manager->Merge(mergeHnMutex, fgMasterInstance->fH1Manager); + fH2Manager->Merge(mergeHnMutex, fgMasterInstance->fH2Manager); + fH3Manager->Merge(mergeHnMutex, fgMasterInstance->fH3Manager); + fP1Manager->Merge(mergeHnMutex, fgMasterInstance->fP1Manager); + fP2Manager->Merge(mergeHnMutex, fgMasterInstance->fP2Manager); + +#ifdef G4VERBOSE + if ( fState.GetVerboseL3() ) { + fState.GetVerboseL3()->Message("merge (generic) on worker", "histograms", "", true); + } +#endif + + return true; +} + +//_____________________________________________________________________________ +G4bool G4GenericAnalysisManager::WriteH1(G4int id, const G4String& fileName) +{ + // Experimental extra write + + // Do not write histo on worker (redundant and fails in hdf5 ) + // If default file is not used, users have to call Merge from their code + if ( G4Threading::IsWorkerThread() ) return false; + + auto h1d = GetH1(id, false); + if ( ! h1d ) { + WriteHnException("H1", id); + return false; + } + + auto h1Name = GetH1Name(id); + return fFileManager->WriteTExtra(fileName, h1d, h1Name); +} + +//_____________________________________________________________________________ +G4bool G4GenericAnalysisManager::WriteH2(G4int id, const G4String& fileName) +{ + // Experimental extra write + + // Do not write histo on worker (redundant and fails in hdf5 ) + // If default file is not used, users have to call Merge from their code + if ( G4Threading::IsWorkerThread() ) return false; + + auto h2d = GetH2(id, false); + if ( ! h2d ) { + WriteHnException("H2", id); + return false; + } + + auto h2Name = GetH2Name(id); + return fFileManager->WriteTExtra(fileName, h2d, h2Name); +} +//_____________________________________________________________________________ +G4bool G4GenericAnalysisManager::WriteH3(G4int id, const G4String& fileName) +{ + // Experimental extra write + + // Do not write histo on worker (redundant and fails in hdf5 ) + // If default file is not used, users have to call Merge from their code + if ( G4Threading::IsWorkerThread() ) return false; + + auto h3d = GetH3(id, false); + if ( ! h3d ) { + WriteHnException("H3", id); + return false; + } + + auto h3Name = GetH3Name(id); + return fFileManager->WriteTExtra(fileName, h3d, h3Name); +} + +//_____________________________________________________________________________ +G4bool G4GenericAnalysisManager::WriteP1(G4int id, const G4String& fileName) +{ + // Experimental extra write + + // Do not write histo on worker (redundant and fails in hdf5 ) + // If default file is not used, users have to call Merge from their code + if ( G4Threading::IsWorkerThread() ) return false; + + auto p1d = GetP1(id, false); + if ( ! p1d ) { + WriteHnException("P1", id); + return false; + } + + auto p1Name = GetP1Name(id); + return fFileManager->WriteTExtra(fileName, p1d, p1Name); +} +//_____________________________________________________________________________ +G4bool G4GenericAnalysisManager::WriteP2(G4int id, const G4String& fileName) +{ + // Experimental extra write + + // Do not write histo on worker (redundant and fails in hdf5 ) + // If default file is not used, users have to call Merge from their code + if ( G4Threading::IsWorkerThread() ) return false; + + auto p2d = GetP2(id, false); + if ( ! p2d ) { + WriteHnException("P2", id); + return false; + } + + auto p2Name = GetP2Name(id); + return fFileManager->WriteTExtra(fileName, p2d, p2Name); +} diff --git a/source/analysis/factory/src/G4GenericFileManager.cc b/source/analysis/factory/src/G4GenericFileManager.cc new file mode 100644 index 0000000000..4d8b2b53df --- /dev/null +++ b/source/analysis/factory/src/G4GenericFileManager.cc @@ -0,0 +1,521 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +// Author: Ivana Hrivnacova, 15/06/2011 (ivana@ipno.in2p3.fr) + +#include "G4GenericFileManager.hh" +#include "G4AnalysisManagerState.hh" +#include "G4AnalysisUtilities.hh" +#include "G4CsvFileManager.hh" +#include "G4CsvNtupleFileManager.hh" +#ifdef TOOLS_USE_HDF5 +#include "G4Hdf5FileManager.hh" +#include "G4Hdf5NtupleFileManager.hh" +#endif +#include "G4RootFileManager.hh" +#include "G4RootNtupleFileManager.hh" +#include "G4XmlFileManager.hh" +#include "G4XmlNtupleFileManager.hh" + +#include +#include + +using namespace G4Analysis; + +namespace { + +void FileManagerException(const G4String& fileName, const G4String& functionName, + const G4String& exceptionClassification, G4bool hdf5Warn = true) +{ + if ( GetExtension(fileName) == "hdf5" && ( ! hdf5Warn ) ) return; + + G4String where = "G4GenericFileManager::" + functionName; + G4String what = "Analysis_" + exceptionClassification; + G4ExceptionDescription description; + description << "Cannot get file manager for " << fileName; + G4Exception(where, what, JustWarning, description); +} + +} + +// static data +const G4String G4GenericFileManager::fgkDefaultFileType = "root"; + +//_____________________________________________________________________________ +G4GenericFileManager::G4GenericFileManager(const G4AnalysisManagerState& state) + : G4VFileManager(state), + fDefaultFileType(fgkDefaultFileType), + fDefaultFileManager(nullptr), + fFileManagers + { nullptr, // Csv + nullptr, // Hdf5 + nullptr, // Generic + nullptr // Xml + }, + fCsvFileManager(nullptr), +#ifdef TOOLS_USE_HDF5 + fHdf5FileManager(nullptr), +#endif + fRootFileManager(nullptr), + fXmlFileManager(nullptr), + fHdf5Warn(true) +{} + +//_____________________________________________________________________________ +G4GenericFileManager::~G4GenericFileManager() +{} + +// +// private methods +// + +//_____________________________________________________________________________ +void G4GenericFileManager::CreateFileManager(G4AnalysisOutput output) +{ +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("create", "file manager", GetOutputName(output)); + } +#endif + + auto outputId = static_cast(output); + if ( fFileManagers[outputId] ) { + G4ExceptionDescription description; + description + << " " + << "The file manager of " << G4Analysis::GetOutputName(output) << " type already exists."; + G4Exception("G4GenericFileManager::CreateFileManager", + "Analysis_W002", JustWarning, description); + return; + } + + // Create the manager + switch ( output ) { + case G4AnalysisOutput::kCsv: + fCsvFileManager = std::make_shared(fState); + fFileManagers[outputId] = fCsvFileManager; + break; + case G4AnalysisOutput::kHdf5: +#ifdef TOOLS_USE_HDF5 + fHdf5FileManager = std::make_shared(fState); + fFileManagers[outputId] = fHdf5FileManager; +#else + if ( fHdf5Warn) { + G4ExceptionDescription description; + description << "Hdf5 type is not available."; + G4Exception("G4GenericFileManager::CreateFileManager", + "Analysis_W051", JustWarning, description); + fHdf5Warn = false; + } +#endif + break; + case G4AnalysisOutput::kRoot: + fRootFileManager = std::make_shared(fState); + fFileManagers[outputId] = fRootFileManager; + break; + case G4AnalysisOutput::kXml: + fXmlFileManager = std::make_shared(fState); + fFileManagers[outputId] = fXmlFileManager ; + break; + case G4AnalysisOutput::kNone: + G4ExceptionDescription description; + description + << G4Analysis::GetOutputName(output) << " type is not supported."; + G4Exception("G4GenericFileManager::CreateFileManager", + "Analysis_W051", JustWarning, description); + break; + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL3() ) { + fState.GetVerboseL3()->Message("create", "file manager", GetOutputName(output)); + } +#endif +} + +//_____________________________________________________________________________ +std::shared_ptr +G4GenericFileManager::GetFileManager(G4AnalysisOutput output) const +{ + return fFileManagers[static_cast(output)]; +} + +//_____________________________________________________________________________ +std::shared_ptr +G4GenericFileManager::GetFileManager(const G4String& fileName) +{ + // Get file extension + G4String extension = GetExtension(fileName); + if ( ! extension.size() ) { + // use the default + extension = fDefaultFileType; + } + + auto output = G4Analysis::GetOutput(extension); + if ( output == G4AnalysisOutput::kNone ) { + G4ExceptionDescription description; + description + << " " + << "The file extension " << extension << "is not supported."; + G4Exception("G4GenericFileManager::GetFileManager", + "Analysis_W051", JustWarning, description); + return nullptr; + } + + std::shared_ptr fileManager = GetFileManager(output); + if ( ! GetFileManager(output) ) { + CreateFileManager(output); + fileManager = GetFileManager(output); + } + + return GetFileManager(output); +} + +// +// public methods +// + +//_____________________________________________________________________________ +G4bool G4GenericFileManager::OpenFile(const G4String& fileName) +{ + auto fileManager = GetFileManager(fileName); + if ( ! fileManager ) return false; + + if ( fDefaultFileManager && (fDefaultFileManager != fileManager) ) { + // Print warning if default output changed + // (maybe be not needed?) + G4ExceptionDescription description; + description + << "Default file manager changed (old: " + << fDefaultFileManager->GetFileType() + << ", new:" << fileManager->GetFileType() << ")"; + G4Exception("G4GenericFileManager::OpenFile", + "Analysis_W001", JustWarning, description); + } + fDefaultFileManager = fileManager; + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("open", "analysis file", fileName); + } +#endif + + auto finalResult = true; + auto result = true; + + // Save the default file name + // both in the generic file manager and the output specific one + result = SetFileName(fileName); + finalResult = finalResult && result; + result = fDefaultFileManager->SetFileName(fileName); + finalResult = finalResult && result; + + result = fDefaultFileManager->OpenFile(fileName); + finalResult = finalResult && result; + +#ifdef G4VERBOSE + if ( fState.GetVerboseL1() ) { + fState.GetVerboseL1()->Message("open", "analysis file", fileName, finalResult); + } +#endif + + fLockDirectoryNames = true; + fIsOpenFile = true; + + return finalResult; +} + +//_____________________________________________________________________________ +G4bool G4GenericFileManager::OpenFiles() +{ +// Open all files regeistered with objects + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("open", "analysis files", ""); + } +#endif + + auto finalResult = true; + auto result = true; + + // process names registered in base file manager + for ( auto fileName : GetFileNames() ) { + auto fileManager = GetFileManager(fileName); + if ( ! fileManager ) { + FileManagerException(fileName, "OpenFiles", "W001", fHdf5Warn); + continue; + } + + result = fileManager->CreateFile(fileName); + finalResult = result && finalResult; + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL3() ) { + fState.GetVerboseL3()->Message("open", "analysis files", "", finalResult); + } +#endif + + return finalResult; +} + +//_____________________________________________________________________________ +G4bool G4GenericFileManager::WriteFiles() +{ +// Finish write for all files regeistered with objects + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("write", "files", ""); + } +#endif + + auto finalResult = true; + auto result = true; + + for ( auto fileManager : fFileManagers ) { + if ( ! fileManager ) continue; + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("write", fileManager->GetFileType(), "files"); + } +#endif + + result = fileManager->WriteFiles(); + finalResult = result && finalResult; + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL3() ) { + fState.GetVerboseL3()->Message("write", "files", "", finalResult); + } +#endif + + return finalResult; +} + +//_____________________________________________________________________________ +G4bool G4GenericFileManager::CloseFiles() +{ +// Close all files regeistered with objects + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("close", "files", ""); + } +#endif + + auto finalResult = true; + auto result = true; + + for ( auto fileManager : fFileManagers ) { + if ( ! fileManager ) continue; + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("close", fileManager->GetFileType(), "files"); + } +#endif + + result = fileManager->CloseFiles(); + finalResult = result && finalResult; + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL3() ) { + fState.GetVerboseL3()->Message("close", "files", "", finalResult); + } +#endif + + return finalResult; +} + +//_____________________________________________________________________________ +G4bool G4GenericFileManager::DeleteEmptyFiles() +{ +// Close all files regeistered with objects + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("delete", "empty files", ""); + } +#endif + + auto finalResult = true; + auto result = true; + + for ( auto fileManager : fFileManagers ) { + if ( ! fileManager ) continue; + +#ifdef G4VERBOSE + if ( fState.GetVerboseL4() ) { + fState.GetVerboseL4()->Message("delete", fileManager->GetFileType(), "files"); + } +#endif + + result = fileManager->DeleteEmptyFiles(); + finalResult = result && finalResult; + } + +#ifdef G4VERBOSE + if ( fState.GetVerboseL3() ) { + fState.GetVerboseL3()->Message("delete", "empty files", "", finalResult); + } +#endif + + return finalResult; +} + +//_____________________________________________________________________________ +G4bool G4GenericFileManager::CreateFile(const G4String& fileName) +{ +// New prototype, fully implemented in templated base class + + auto fileManager = GetFileManager(fileName); + if ( ! fileManager ) { + FileManagerException(fileName, "CreateFile", "W001", fHdf5Warn); + return false; + } + + return fileManager->CreateFile(fileName); +} + +//_____________________________________________________________________________ +G4bool G4GenericFileManager::WriteFile(const G4String& fileName) +{ +// New prototype, fully implemented in templated base class + + auto fileManager = GetFileManager(fileName); + if ( ! fileManager ) { + FileManagerException(fileName, "WriteFile", "W021", fHdf5Warn); + return false; + } + + return fileManager->WriteFile(fileName); +} + +//_____________________________________________________________________________ +G4bool G4GenericFileManager::CloseFile(const G4String& fileName) +{ +// New prototype, fully implemented in templated base class + + auto fileManager = GetFileManager(fileName); + if ( ! fileManager ) { + FileManagerException(fileName, "CloseFile", "W021", fHdf5Warn); + return false; + } + + return fileManager->CloseFile(fileName); +} + +//_____________________________________________________________________________ +G4bool G4GenericFileManager::SetIsEmpty(const G4String& fileName, G4bool isEmpty) +{ + auto fileManager = GetFileManager(fileName); + if ( ! fileManager ) { + FileManagerException(fileName, "SetIsEmpty", "W021", fHdf5Warn); + return false; + } + + return fileManager->SetIsEmpty(fileName, isEmpty); +} + +//_____________________________________________________________________________ +void G4GenericFileManager::SetDefaultFileType(const G4String& value) +{ + // Check if value correspond to a valid file type + auto output = G4Analysis::GetOutput(value); + if ( output == G4AnalysisOutput::kNone ) { + G4ExceptionDescription description; + description + << "The file type " << value << "is not supported." << G4endl + << "The default type " << fDefaultFileType << " will be used."; + G4Exception("G4GenericFileManager::SetDeafultFileType", + "Analysis_W051", JustWarning, description); + return; + } + + fDefaultFileType = value; +} + +//_____________________________________________________________________________ +std::shared_ptr +G4GenericFileManager::CreateNtupleFileManager(G4AnalysisOutput output) +{ + if ( ! GetFileManager(output) ) { + CreateFileManager(output); + } + + std::shared_ptr vNtupleFileManager = nullptr; + G4String failure; + + switch ( output ) { + case G4AnalysisOutput::kCsv: { + auto ntupleFileManager = std::make_shared(fState); + ntupleFileManager->SetFileManager(fCsvFileManager); + vNtupleFileManager = ntupleFileManager; + break; + } + case G4AnalysisOutput::kHdf5: { +#ifdef TOOLS_USE_HDF5 + auto ntupleFileManager = std::make_shared(fState); + ntupleFileManager->SetFileManager(fHdf5FileManager); + vNtupleFileManager = ntupleFileManager; +#else + failure = " Hdf5 is not available"; +#endif + break; + } + case G4AnalysisOutput::kRoot: { + auto ntupleFileManager = std::make_shared(fState); + ntupleFileManager->SetFileManager(fRootFileManager); + vNtupleFileManager = ntupleFileManager; + break; + } + case G4AnalysisOutput::kXml: { + auto ntupleFileManager = std::make_shared(fState); + ntupleFileManager->SetFileManager(fXmlFileManager); + vNtupleFileManager = ntupleFileManager; + break; + } + case G4AnalysisOutput::kNone: + break; + } + + if ( ! vNtupleFileManager ) { + G4ExceptionDescription description; + description + << " " + << "Failed to create ntuple file manager of " << G4Analysis::GetOutputName(output) << " type." + << failure; + G4Exception("G4GenericFileManager::CreateNtupleFileManager", + "Analysis_W002", JustWarning, description); + } + + return vNtupleFileManager; +} diff --git a/source/analysis/fonts/arialbd.ttf b/source/analysis/fonts/arialbd.ttf deleted file mode 100644 index 3ad403c0d7ef92de09fe944c647b950d7778a616..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 144404 zcmeFa2Xs_b*FSvDxoz&WOv}`inM@`L8Aw7hAqfO>ks?T!A^{_zHx+_PQ<~C6!3HY& zfDIH20R#e~V#D_MU_k@{K?SizP!SQy%=bHY0^;+&-~0X7|G&PqzHhB(!t8r)nR`#! zd!N03d!GxTgb*i)NQ!z6=-+M1&NrVVgjN#5?&;INu=xJR@4khwl3loJP~T2H2V}n5 z@k&C353%27Q0HEQ2T7CX;Kv3+?DvnnVff?$_3sQLB=r$OWol7&R#r%wUF04qjmVO5y(~vUa>yA8#R^B83(I4n zP$*m|$2J^o@kfE2$<eEgr6|e+%21j1;iqLK z%b{-+naL9N<+Lu4)Eu2kf>-$*+Sp_uvOf{BOh`mse~RwWAR?K+*6Ba zc0m@MJ%WBo%SX^eED|%$%Z<@UU|wtk4N)3%o_{tH3&o!8);bZO?MpSPfN)heIQgD!N& zqOQWijiaqJM*sLNmr^qqWdhQRz1oIVh&hC4pG!NjAM7|~{P638SBwhkp9DUnDiQB^ zbPc#383DsF4^!O~jOFB4%O+wGa!a zRi`P$nz%r0Bn8y2QwOo5>?96Q7jY*3B&j-elT?&F#0}~tp2T_LBVJIyP6Nc3_=BVo zKWI7$fM$?1&`gpJ8YCH@A(9E2MS_WQBnylv|J-(0r1c zI7^}=FYy~`snb>@ALRlP1uY~kL5oN$(AGLFCWVPJq=XcK#zQqW&X8&V8fMoK`- zNer}tl!CSe{e`q6WuTR$9JD>D0PO(!GpQnNK{Zkd+L5$RoF-S04xpWM+8LvAnsgx= zXjjq^^h%v}Bb^ebNO#gX@e{dbTGLZS5}k$phI*zlng-mS~4i{1F0d`fL^E5VPr7M zwWK=nJsD1hfQ}$TK}YIz6sbXZG`S9R3>lXAj*QjmI8vMVmW(IEK_`%rpcBa`(Cc-2 z0~w9-jbseyBr-N}l1wJ!K;u~@knFx9_xgPWuolYe;pgfJ-m^eYElgXen zNFC@*o!&~OpnMy-DRG?4A~%E1*6AEFHSsl>OQwO&Bhx`|Co@3r(CK_K6XgZu*2Gt2 zA(;ib2=q&`n9K%ULgs)jC38XVB=bO*>GUpg2g-Mo`H5p>IavU@f-D5RN2m9aMTw*2 zKC&3}ezFww0njhVN^&RYDzXem9wc{xK1A*YeORZf$qJMoA@_hjO72Y@A^*_n8gd`X zYsvkfkCBz2kCRon&l5U*l01kbPmzZ}*O7-o*MlA=Pm@OyhsZPJQIt23e}Fzq)_^_- zdWbwv)`Gr39s}J-o&c>UPl9gJ>1Og&;&ZZvtOI?KtWO*yTXnjPJcIIfvH`S#JPW#m zJO{cH^Z)iNPJ4(B|AaiBQJrzPhL*!BmdOt2jmr$|3zK}-Ai_Zen?&e{fNAt_=J2+ z-T?iCyqWlz>?3c1eyUSE0p-ug+n@)?yPyZjd!V0#enbwD_dySne}Wz%A0$2`U+DBG z*^BZq@*(J#W#WBuhI|eBn@-P?<0$`5PJo^x z-+=x>PA1+X=gGIAf0FM&FOcs+o5&BKanN^3g8T^jAD#Z+>GU(YPCujT^fUiOr~j(! z^k4srPX9&M>A&bY{TE%Q|E%lupLL!7GvPY@XI-cN{9knXX3OxNkhbe(=w*Xc+9 zqtpL4bo#FUAM5lF{-e|XU$xWE>UR2B!tM04x}APjx6{w+cKX@>(N6!5PXGU-o&GiX zU$xW!qtpMtYp4H5r*mul|HMuQz{v3&d|W_hP@;Z(WgX|6cyVb%F@U(4ZPk zW{Wk&W_LJUscw(g=MSW%XJiILS>fzRPHtX{{AkNo1%*Yei%VjqZOY0k+P14~-=RwD zctxkqUAkV`t@~9ydiLtwr*FTj`wtj6=$gURLxx^kbKS7o;bg?fQKQF<9XEc$#OrUk zanj_vDL37G%hYMpXUx3ywpp|1%$;}p9rG6~T(o$}(mR*kb@%cW_uPBm{ST~M_25Gf zuYTmwf2>*i*yB$;`P91gPd~HaS>d_oU)Wf`Y4esBw{F|suw&;-yIy|f)!nbX{>Gbc z?Rop1ci(&epC9~d?}y~0k3ZS>>Hg0S9Q^#y;UixhC87j`8UE#5BEur*z}dYt!QN)? zvLnK5VX3f8cue@0Xcqg3*NVf$domVe{2ELRW(2c>Il-b}Nw96OGT0&5IXEZyWN>{* z3OPgWP*x}>R1mr@^g!t8ES4o_rDQp>QnUP7nOQBeqFLRthG&fqv#>23ijWA4m?O4` zE8>l$MY1C;Be6(jMK(uvMs`KsjJzM&8#x&HCZ{q-%ef+_ zHfLncn4F2H*=gxd1{@B!Gg*t;pJ#he`va)`eANDK;R%t7Rd_&-@4>#}*uW z;LD-M<{$gx%cqY`JGLE1RvcS;Y}S{z9G!4<#<88p?mqhT(Uo7U{NnL1?j+=kb^JF+ zJzvy)fq23fMPF!NlzfqWxa;9Ahbs?P9By;Cr`xcnoOdxW%!c)5qDA8k>(Pu+i=fPI~k?f!= z=_+8%0u`wQtl|QFkUm5ormKNf#HmabY9I;v2z`|PgRY@#>0?v{Vr~M${WyIB8ufSj zBz=mmqwDF@^clK=K1-jY&(jy^Mp{od(am%V5Rp&mQhF!i3|r|ox}7#q3!wEKbSF)r zHX!&8U^rh=Cw0-6=q}*-Zn})VOkbg|(%tkm`a1PcFR-wBgcAJp4f-YxAR3TPGw54% z4{(9rvpQuG2B`8X_3^WSO`^I-qWaM7%`h#K^>W zL?*JxQWj0@2UeQ{6#WVE9O@LMyTxvZQA~uCK1hAS9+Vz{e8#Dn)d-!WSMj9oWDw+M z8ZhMzBOx-y=6p9@=&Mo zuSz_ccpXud?U0dO^fjqiy1Qv!;<3aFh|lD}J8F-14}zrMf$@76I^h>KCozX~Lrh>A zc?(<}1h3}N{os+=Y_{+TJgknu{3k+|*8mCL3`F-OV7U9itH;2*F37@FbOc8H7jWGu zwpUm!yeRC$Z1oKKJB;W{K6JoS;2f?;_EHJ=FQR?v1Ud;a|0q4i>e-L%chMl;A^s^g zNjdRj@jny25pVG#_R|wuV-EWE37zNu1+4ZL=&ZAl*>XA#dZ3;jqd$V{vsfQCnXP0` zvFC-}!ac%kVySqAI8ppS{9IZn-Kh*$;uqG%?~6Yl|0uB?7_NZ$lo!3x6+Jo+T=5in z7251m$lww373Uw^za1SyuftPrqKoPM&?j#}dcQ|2VPN4ei?w5&@zhCd3i|1Gb|1SR zPv48b583DJ2>XHkCP+e-&_<|(?NKi@2p_z9xkm^KQK7ZaT^J$^6>dZuZq_Z4d(gKVguTKi!b#yyhiROS<%{O7VJ zB9DOGOkX0U^er++W&)-@@fg`m53^(98>~HMfm-Sl*9$jF@39bh7TRb9+r?g@SCAK3 zB^$&ZfmwZmJ`K!%B4(`n=|p-Hd6qWPwsaOPqjShU<`(+X`H0s&&P2>Y-RWt98jyM7 zC`82m#}BQ*tovR3AEHIP4f?48Gj%nz+fn)qIZq`-*F50Lfsk<#aik}pCAikBft<~O zJo=zPu9x?c7rC{sl*t{$nV8T2Am3@4R@I?>WxKW&o}P z!&#wVW=48i!0+>V+^H_7!){BlTFfS+YEWcJ6c{BfyM(*e2J3Tb>&2XKw{ETYet0+z z48QC^ZG8}jy8iu|`XK+^aGd(vl^U)b^KVyb$t$%>S5jNBl2o>88SD}c)_>4B9BiON z`VB_;uFm1=V11)r?xmMk=w%Dap%8u$?BX5QIap6?gI(&oP93+jOKs;?E$Jqcu~WFy zXk)9EWRuZ^q6wvXPk8bs>ghoB0`qifyNMBl1x>8?hdXzv_l5CO+(w9W89u7MZ@Q*i5X{V9l5%nZ|MSV(Czl3zsA5$-Ps#o;K1jpB-HRR6Vrk1;xE^Dxn5w%hC zsPL%a*AA{1hT|Sx>g`cHw{yK`=5g;|ySTZd)8IvypA860yLiV3`Nd0@E(+G~?l<_d z-v&bb4%OAT2Y$;UU2B(i#iN&DqSI-D-_WQLRK&|~7kYf5v$Y`MHJ8l9dzrZ5W*VqV98~)*Esz z{Y$aAon6MYt*7q);q>U_`5yhlJ^Bq99PF~RwwY^t4EWn#@;vWQ^c&7Km+GCJ1`7d( zW4y!yf_@fEdF_x(mtbeGxn7LmpUf)_=@7t_`T-j3T5qfEmZa6jP^ejC{_AfV6vJgd zYDk>sztT5<{j9ka^=+fg^-R{fzTMyU|5iKmQlZBHXdKpKz>uX&jek4W6}oKc(yrlP z*QK>fhc_hVjtB>B;iWs+dbWP)}@+! z*{i9NRH1CU0MfcBWDnURAQTGzLQvR!LF2AYP~43v3$p>C-@*=-kX3W*PF6xptXPX0 zCC!%^OOY}qCJix^%K{^+Y+P=lCZESIs5!DBM-g+Vki+Di?0%xK`!zG;=GAhzQa+=p zff}}izIoOgjrKlMQ`zhIaa&{ZueYts=+58Npn6r6y=+b2)I?hs(XO4lcBTSqX`&z$ zb6Zij!z&YDD|jhRMEqfJw# zsV1370+mfhgCe2Dg6WLGfDR7YjD^N3qhM^Hw`xWq$bF_FRJMVw++u#J6Yss6#-^Gk z)Xdgs_f$~3qoRU;QNJm5PN6iEDwOE-sZv^8aE23M6Sbc^7eAGxyf+<*lj2b66A~bq zbhx(2AS#Y-#%|WZ#=%zEYxYoAs>MxR4vU*PGt3_5^r?R8N>}~NNelt%5)1+6%rtu> zo897;Y*vd~PBEE1a!Q)&mu#XTAlZznUrtdB0XaqW`@07Wu0X(Gal5;F%r1||oMN?_ zOhzLz>AK?{_RP$*G*Ofq*dy97=1NWVdI{~$oDN4uMtZuyn8EGw`27K+#cWm$#N~9_ zY$+Wq=JlQ*-0Llx*B`TJ**UQ)3tetmV_}xwAtdK9+99B>_y1s6Ulh;+wE-c}JNWo* zdjB17Iu7ouv{j-nr$nP?^j++6ZUjZo;?Gf0s9(Z&nwm>z^)vh|4(S`vMN&a@mhH_& z1zx^M`L_>-rN$X9Ex|YBED=ihH#LlJNC-Q_LYU&v!;4?6JWbR49P4wW*SCF_Zm;|` zeyq>YUSIV2iayxxi?;NJ!!-8@T^OIqzenN+4<}2)lK4TI3+d~cC=tDK5pc0wQotPA z644>KJ&wWBShqCLG1NUq8XKG@-Qt)UyrtD5X@O%=a6v1xoa4^Pp=FNJR$b|ptp-Yl zsg9eSQ(Fl}o4vr}RYJMc@1v}sRc?;mVXzT*AkQzGLdL8Vt1Xz>LdYN&!pcy;qAo#Jnw>aD}>D5>lJyTN$+S_)vu2*BU?o4A{ zT@(UbH)YC{!pf!^&V)ZU)i5zq^_oh)}b7?PaOFi&bTHl+21k|=I9h%luY@O7j({MkZDykE2$uC3en7H0S zMqxX$S?isdHYts!eVU%(N>9&7H>b(2j9_N0Wm-{s_;~qmMaR>lE!5+--@L~&GXzT7 z+uF1CPzEH2p3b2;*Ty!Imh^N>+Va|zU}liPNLICUBGc2z+P&7bk(lXeGc{k^hYW+( z^HuhO0>wbo^lGZ9JIlW{&4u0<)qQ2J#xsqD$3f7kT)8^9c6C%NDu~uVyjvGJV{J-` z;VH=Btei5J$6Zof)}}O;n-d1#1Ia3(|HJv}=kI^$dHy{V^0jQ`3kH3yS|Uxg@Wsl*2yJ z6OIV^={ceDqWi;*!Z&_XTADvS-Qx3k!{K0IVNrRx#Zp`t_6aS^)BJ*%6HKQ9fD1t` zFAN9M)BHY*TH0c`la^j7W8NkHwmGY9?m{-AI~Wd7Cz9F({n(-E}eR6Er!=l8+FCZZd(qvpV+tO!_!vZ^=1F+ z$GR=p@%pmrwWH&|YGd0jnw8&jykKtIQESt)Q_I*@@j0!Rb{l$AtPa3ufzzA;PANF=+_=vJ95zc-Al%{FAc~0out2f2OxzVdpZ75{FHrBWbR^`)HMaBGqe-0b36V?eN>-3`GS827G*TykHw`&@k zj{m(f&JIFpj0q)fN2*IX;-mx92W7A>>0L8ey4fUor4*~lZ1hU$f|~>urbWp@VBI;I zOLd<}RZnQC(Rw2_E>5wM)DCX0-E-~En7cz@N-$0Hr^WiD4NGHb9a2tcR(;nx3^Pav zG9^g)wW+w4b})8GQE8RBTxF^+lbalz!|Qy#j(g8U{l2C%HBrB}$;UTMIO01_yj7LZ z^Zp-gjXvAiGu|`4WxeS8Jq!C4eCNQCljUa{*vax|ZuGu6yq7Pfn)&fxX znJ=;G85r-!N#U8Mn&U|>ioiI&_(wmD&!uxIq4VN%J^@6e&{^?2;(x^N;3IWQdaGS z+^5&$OfM+Lv%S!27^ltlX6qsalZ`+peiFaOC;fOHi-Z`m&rgb0X*aOjAh}QLG2OV> zxSnoMHmK{Z+tqhe!ytRLyV^e}bF6)wdz^o4rlEpW$Zga%mhP;(+(qqbS+Bm&-j&}} z-?SWLhva?gK8xMv4SJcEvv&lhmv^1Pl9^JN!cw>)ma>jW=?D4%%l2ov4w!tQPm-37 zUSF6uqzV=e|8m^|Hm1cMx80^-?j&|wSsM>u&ttb`P_B~O*lh)r6@NN?`HE?u?vI}b zE$Qn{kM$`@Zlv80z8D`Cuids1j@LT+k8LZz>p0+sI6kjw9S2;G!DO#>#JD_;AK2H77Zd2*S*o7lhI zSUR(rQ_?vDGcGS0*a)YRhBtd`3!~ox{U+6ta+MNB5ksp=Wtn+ z714Yl*S7Y@SE6l4R}UU%h=1#&hCK(*UD>N7e)dW?mEwQiPt`-4s;(J$-RKForhWU~ z_b-gxGNR*|zBzm(dO;on7>O3-Bdzc*_g$WMQ-xd8?o4CrglDAnu5H3jX`AbF?-8HD z?V=&0g^1MSbcZr6HZvUXY)#cH%i&O3D2y4VrDQq_oy^HQ&$%ujVcr}i;qNnZf` zWv?g%=Ad^sCw#Y&8=+j!>4qpMIuqSSYMij!Avd~lqm;QXbzcWo0x83c$!&ZR&dTmZ zZI&thu9-IF>NY(xr%WH*z1tX5yeV+Q8#DIK8vDuYRq<~=emj1iE(ndgasK29x22vC z#$R*Q;8C?L7pxgN|N6zR-4xih;I;Va6Oa{js@NI*X~Y_)ceM(0&{CnAedegSzj>nh zE3@2ap|a=}BVwMVn`NkFy=A*)k42@-K+Lj5k&GsbLd<51rGdVn!IpFhP`k`5S_BId zjYQEbyDcAL=OvoQp(gs`HX@4n0ivXXUzC<(V&=o(uqkVlR~13=r&O^yi0}HWJ84ha zO_$i?b#Ur?L2kLwR>94ON0l_=^)7@F33pvgI_jJ)(UDP1R;9GW4!_)vNH?3^^fbHe z$8FoV$r zt*XQBbcF0-#{vhG3bh!~UWeV@z}9MRtHoutS{z0fxA!zE^rb7Hw*JOO+jTAqSYQ|p z(JYw&gP4&soN=9tGnvWdjs;ysF3lyl8tAi{3*d>Z(8ex0$ox_pf0i>P#VV%Qz;+*c zsOF&_f2QtKJ1o=at`7;-5Ubn>B>{=wL9c99cF@>oj)NI%c!4WDc%6`W9Ee`x$(lOw zAn!ygI#Hj1b;i`W@^37e>qNgQaFz&o5gI>xDD|4B_8L5M#_$=n$5*hEO+U4~Zp2Ge z9KSsNeuB^$>BA;1U$JP>#1Q*4{>LAM@zV#l-u?RL;JRzjkZFXH#m1#x7lBI?zZoBT2iGp_RhAM?yc-&+lMaYB_w1p41(fy*aE=-3-B%s zpo;?QQY@LF!VpWs3F|cVLp7laY6I=FWh2(~arhxCQ!IpN^Bxt~rAm<5X&DFlz?<|( zyayb<>`U_7EWJrRd8P*VTyoCiY{$hG#si=Hs8m4VhVUMNJqy9a6iA@ys0%)1v-FB7 z@zcfuovLrOjen&6&-l5$U&Ozn`9G~c)b!Zwe!a&{9?);H*gs=H-?dG*#n0^fGJcv? z(SH@0L6;^Umc9=72-5fs}f|p(e6$2N4s;wALy1n9<}nwH3>a-K0UL4W?I2 zAD9lBj3Ibzf6x*dhQv8-8VYaQ-*$c`eWr-1CXY4M zmg>62Hq|xXrsR-(a~smm+?Dh+-zbhWz`jYHmb)l-mE}S2la^<^&-mA6tj}H7@|mI? z{_Po_Y0ibtg|0=p;wlX1D)d-d!GkD8RbGw=nOL36d!eeJPXQ~~$?nFSwOez#y|Kw@ zbJN&b;1y}I!V|fkiZq4SfWM;lwIbu8NlEz_Ky)LYofkFr??>-2sWD5l$sJyE!I1*adM?I>ZZWh+H zNnyQg8s_2+d9`>C^l?y!Ka!MN^JVgSv9tAw_P>!=U6rA8o3&XPbQdd)K~%ZG0`;NI zZ~_m=GgqkrGE7jC7d{YR-i zzCM0S{Kohr+l92nD{ozP_ky|T!FOS*e1%9mkE0Z50ihfV&C5ljx)IQ~oI`_B5yBfA z4Idy*0ac8d%~p99mUR`p3htFqeBb4M1(Iege0$;7q?f_S26$MX>vv8eJv89wMyrY6 z9)XVxEzS6dRGwnAZxpOk1SyA@vXcP8MjL;U4$B5J@qqL?jf&?JDO2wWR zoI+z$C-(Asy7d>jCH^%K0who|GLYU3%eq+a@2j+^C=ppvnNo$M6Fgg%UJ$CVhK!Li zmUI$j=2sEON4{~36Tnbbl{vIVia#mwtt=2OH82s zV>DX|qbl-;`Z7W0?U#7_Exi3mPWen0gfciROEn`cgCWmu4@xrc0xQBqf^M!~>V+EK zd<3Y_8;!sb{FnDb89D(=?}xEhnywIjT8A_w7xsPeUZ>Hv378`mO7H4O>>XOZY_mFJ zlFjCbwe`03Y0|*dG5%*2S#>*!9$|wU&d89A^0br&cHd^(!!S>7*0P*5&6q|r358u~ zQ$sd)5U`&=loGPpsLdDT;VPYtxPc4k8zGfO4iUgGYdUjWkE-b%r;l405FXt3OJ*$h z0z?i{TlJ6|JC&eUpY=xWm^5)kARaf-z&F3pjPcJ^N1J#AuFQPf+IKQrx4Zh5nX`gh z&Nn?>vu^oSL*foy5EyA6@2BjM_UV~j|Ij+B0VN_=cp~l!cQ4uJEo;xbojZiHyG8Pd zy~x{oeh^)2?e8SfdagnDv+!ZH-k`TySkVybOiTC5oH(Ne%@X*;Aw(OX zY_dbeqKRI`~O^-I@g~IA?mAE8711(RDKxoaIu; zqsOlT8&!aJ6z?EP;((@>Rm9{x5JjI@^Gai~27UqJpw)LBtfhUJD^of%ctY4)APR(&x)cNN>$~&mZ6B- zk(t^jl@+CKOl7I5u5ebw;WPwY5lUDfcd|SeX=*+4ayP2X!dk2X-p z+UOPiwHfb8JJYXyXxP~2qPe@~jC#4wVqoH)`16u_&6S-8s#4RA_;l4=)BB2R^SOo} zo;WF82TadT_G!Hqs!Lo;+-t~#^4sb@VV~(YL5-++<~&OaR}1$o(k<#j$)GqDkH_ip zAc!doVVUTq`v7_!)q{eT{~d-WLV7NZ4QIz;n$TZsm%W_84@ zJ%*)FZdz)o-WXt>JT1%7$|$6qvJOHPJ8sFSzX(QaYVKME@3+ZRir_qB@U{eIHxCO2 zqqhy73!mm;7M+3DcRb3sypRmF0H~20e}|-tA@oN2z?$poyH1(^ef)g<`yauY4B5j( z8V>%nVV0SrmE=LVuk?%-N1LU5PlczOyV^a@Eme5h1QrDzl2)3eOgm>vrz4VLGx%~h zat-Zy(fmP6kwpVABC0_sv?9(CXp#By7U|;$AFNV$-2YvuBuG)rIfav8JFrS7y=vg+XS=IGJKNu6BSoLt!Q-K|oP6-$G@VK|)Y7{oGzK>c6`NfXU$ga__=e|p@3`w@SbHTcS9blZv%kdujQ`m^wiE5-Gey46pHFBJRg{bZQ;iYPu@MeG zOmUu7!xV!7+$kA?@?ISfxKqp0EPXAt7Gbhwu7z<{T?-sfv@nD zn&zNQ%fKElqD=ysw1YqnwiL&>y}f%&IHGU0DwiilBu(lo&6SQx$R(?lCQGL!ajpc# z$&i!9goBijdV;xhH&@5JQT&}IBDqm)eQ_|SG&iM6kE7NhuPDkxKFesHwDWvd)FYfY zDSUu>ILHt!d%R)2g$+>0sN*f;ZR71TZA)y5v72dLN-Nkb5N`)^Y0zhyW3r1DAr-}R zDii3Z&)L-6g}oYk+3M=fUVJ9Z=_HfTklh7~8Kz=x#Lbfv+LW?&G&dOiYRAFvDfLLf zq7fsnhHX&0ZN%Kwzy1)M9qUuK8MS)|BmV{;c{)S$8)WKm7>yDFfFdSR70J*>NyYL= z;6U58s3N zZkqYxq7rMin|ND%T#I>=vry7%0#o?F6`1*v^MWssN3V|G>IDNZ$VCQQrQuD1Q=S#j zX|U$Yk#p4*;)C*91ax+b%6$20@muk%1RF1LY)jeIF>H5h*(gNh_Qsoqg~CI^L+ZoE z4Z=?0UBUPo79w0Q3hj+o2y6;47K*%`YMm?P#J5`bcq@JPyb2T-s zZOj;K+m83*u`SJ8?a8zP90ifVD_^TW8ev%)jZT&(+SE*An6(sxY9W#W#)+fV3C3w` zy7;8J!MIi3X*{c*H@eq|E7Uc{J?gv0&)5NRzk1Mkl6@PXSIj%8pAc}V58zS7FuJhtr%0=8LO-c4=%{6YD{H* z(WAmlXs02=O$~|$RV_}&9~eT-#R5Ypf|(40U=|rOgQHc&kg4aPS+?+X06P)j<+@{N zO;Trg`VWXn#fqlPF;K(HbI>&}n}Q}YWVT#$Kv`(GkZ8Dw6lZdanOe43T0?eiXXOx~95HznABB;ehRU9ma(_$W@g|PLKZOB=G#x9`(-t@C*!zW1CDt?h7D# zhL5gmq6A!up#=BnTtw~nV5OcB0ry?;#`qC{A74P~y~4NWyNb8}Ih%hm&JRNB!x(3k zuG6flARByw#~?bO@i5ec^E$SAtNB*TM}vf7#Q^a)2nNO!K}C0=s|1lZSmX^Bi{-s~ zob^u4r<&SrzE{E3s{bOqJ-)0IU@2X_hM3UK(8qAEu*R@f*l4I1UNxAwRjH{ZNI}s+um^~yusFto zoG7kR99gBQp@JA20HR;rH6w^U5Cc;bFB3dUOO~s&V6$yJUPVGgpV-g@=EOw(jXg5o$=3_ zHep~}37?$rD(t$@ncLIVu!T;-7D@rS^SCx}m9)z6p!q?oXrPMKkfL~Vz0=ic4rQ8s zdg?-PiD8L(p>=^{iEDA{V$WjlLcdvYV1)gt4!_IqP4z3zRuBo>o41qHv5fB=8o?9@!(Q3dI<)u zgWnbdT*2*`q-#Ntc+BT59c8WVRQ&wdC0l4`x*$F~{&IXrd^TE3ftYS>p96REewe03WNC+MhgY~#qGP4~5_8xi z7ORy6Y}{T=AqF(>-#iI-W_nR``=oSR%HYS+?t}t7h{Rs?M5DtZ& zo+3x755d`Fl4VZ#0eXm9ub#bO#H!vC-hJ)yjZ-^a*R6D|w9_3rvT;$vczbHoXX5Me z+JX@s`;N01^>MvH&cL{)0((l)W-Ux#6ndCE?0Urgh)14oo8_4nTxeWqU2I$IS`skG z>1xCuaHYFKzQ{z+Ok%j1&}wBISZs!WM#hZbQe}yKiGN}6A?0DyO8Ya)HuoO)ez(0W zFxWm`8E?c|WK8k2CthiIJrT3rS-H8{ZUtF?EGG@-Zf*nXxizOxRx1_I?d~mzFR=#N zUrQ18scKG6rZ1QE*qBcp{2Y)1N0M9ewfx%r$@z2h*XGN?{L}d?KQni&nWmUC%|&K` z!wFkj{5!V*Cpg{&TbNXxX+#oiJc&Z<`L7&v)$?0<76Ggs>?Y%5RxO!IGCKu z-BhGcmAR$XH_W}ElV;t%Vq^S;_&ne`-GRBzF3pSYtf)A)b?cX3KBrX-sp)_3&fWzd zxx&h=RrGGGr5j6^$Lrz`y|Us)tFRXf)bz#bV&B4az^^V9x$^z3w^-*}@3%f-m8?OF*=4bqQ_QIrk2~VDxoE9xt&6!_ zBpBk143hVhq6Q#mT&4BpEwHLIDH6BSoQ^-=lOToAkq{b6tJD=KW!FwQ-x}CyPiHw{99!fpB+?pv z7I&7C6*gLsL^8;$`GT=YUOLIU2H8_P*=Xdx?AFY1Cj&Il$|aC)dd6UPe=x>_41KW* zYXuhW*JC-of&L_F{t6qis#@i%-ct!g?=`0<=INp2=J*RBGq!qQ8a?PKdlC!qwfeXj z$LZ03@Ft>_SL@gsKzD4TQ#hi-v(BT(liMlL<1jChlZtNEW}!a<=^fA?A2x5l-t4T% zLib>Uqwj8Z@VyVU6i0<6=%_I2-xPlATg__5F-wKf%fC8OcX8eVX4k9)|H=!1gyN4Q z{g>QVg=glvMV)gvzH}80`qwO4eoyV#4H)zHSliwKg%X^l(k)>G`u}I;V8(zM1_ThSQ3fD^z4|ODuv^6onX60KeiKZo$x2no(AO{bGSNd=>24 z1#4fdqMplE;Ee)4L(_A~nGLB;n;3eXN5G-^L6A*;ym>a@*b1$|l#P`+Fz=7Xdx>|& zdyB81JNIV?)apLW)!C?(k1W;76@#KGHYf@8O2d_^a*aC3w$irB{$T2A_j=oQ_h+dm zB~t6<yWwO!lb2(F02ikm4)#(YK+@`G|%K*e%tK1ewtS_@4yQm zADrzfx&g&OVD?=kIHg2B3X1Ikg2D1qO~lIVuG1 zNDT0|jqNt<$3psp;z3E`=KOSN6|}@d;)Bu}z8cCT7aF+BP-~b*6(4cScq6ggom?qj zgHc3qG)RdHgPU|kb!=Z~U?VgvtpYj)%ak%{CmW6wh~1oZO(LBm&J~Y}$B^aMKuwx) zjxbj^Djb7rgNbS@u7DlC6FKaRqxwY%E&G(qP<=>H&6%2-sF$PGNi)5XC&K(?q@(lr zT!e+#QBnhJp1X3))N}@Ke7FfSNZY1grJaAiA-31?00mKrJJB;{`h@0)3Q;*|Dlv&z zyI|7LG4L_xZo!uK)Wz*)Unwl+lbXt-7CsOl@yR{H_w*p*b;y_$gCGjr9@*?CscH)n zQI+qEC(XaBe;9u^OK(f>8s9d5PWHje+Hd}zoKV$g#V4d^jZc|h61PY%8Mm6>5!C`Q zODZ%5&8x-xq}9d;%!b!Zq7-aM6m5~=Ks6+awQB`p4qi44M&LumCZh{0yHr^LGN`%? z230hf&CRZs34u*B&_K~FAQcR0;j%$dq~?**oi5B=5WhnBR1LI9GX~|CO)qPO-0{S& zIhc&J`79R)1tH+38pME`kXBvey%=pt4h^ULPoJ?cX(eN91PcikNxd!~G`?`_uOWo; z;v&G^s%Gn(Z|eAHIx(6~eN^e__~W$j2wtyJOYsu(e1y#Q0Qx=xNw5p2E&v#Um(}gh z2FN!)cz*%MRb1L*b}?Y=Ck`=+&r0i*XVoW7hv+^9Y7pA@j# zE>+1x{&O`Qq%07YN=sEWM%yXOXAFvk#?E3-<51&#ahdTRagA}UxKI4TXemQ(&wb)* z-__sj@4+J~1$rL0KB4c<>J#Zd`%v2MB&fB$J z)|{y^xd)GjZ87*Q5QtrbK|FAj^+4jlE-Y8jA!whOj{_i^Gc_Eti8i9BgE!GeqOYCP z70TZwgs+Zko)qfp>d2JV5Rr@jkYCpp5dtJU&}-u5*jpWcDZZ06v6tg5=x0skO;-A6 z98JNy(}^?~eQF?Y@%*M&v<{}y-9{?nC0>FeV$r^oEF)b2ZKe8=pseti5VD!zp+C$)m@>~YR>$)wHXVlCbWI#k8MD_(&0R|(vT$NZozE}}km=59Jkha#uzYC5p# z1RF2(Yud#+UwFRhA#jo#^ViF0wMtWXwDhzVNU2a5bucb#6fdx$OwN}WARypx4J=24 zPoqQt#LEESCaY9;wj-)Jruv)xa+AoD{QC;EP=HtKP8-%p880-?YWi%(@wg~Z+UB5w z?Hi8F+b*iTq|Z%Z(`QL@1WJR_|pgsYkl5%R4yj7=^YMXMWYxI)1{p1@FpZ3QKNYr@V3SRJo%zBw+LS3GrlDHag&Y-kbeFDoSn$w0*;biU6 z627JZP(o>mJzUDXaqCG~;OCw>BCR=u=iJ0z6w6_2%VhBmH07Mu(ie!i;k|ywPBQUn zalOnQ6j#b@5nasKOo?VnccCgWJ(c`5{Xt zsl^MhkbbH>^-HDb$)r zOdD(X3I}8#g)v8*+7$nhw!^)nFdMrkzQy}&I*>3aroFXsirU47T&jPZ@lS(tOL?>_%JEEjm&|4zUx%a&BP>~rVJEmEs})9|Xbb@Enuk8FN5 zcF@Msvx{5XTUxTUXhAGn%gO`srN<^^U%)!muKKcoB5O*leLCf92I|xQNEg%7ThbDu z;V8#vkOmdf((F|sEnow|BI*!wdbWy+8Ef{q-;Q(o7N_+su4u`#el(XUqjipun z&NQzvGXR_kV4Rv2YYO~*@PCBVqHpi!=2JY;r+!#tBbg2z`fzGE{QGzC*e zU1LpB!PN1+<2+>>=x7uGA7DS-W6^_vJOwh!*T@R`x>ocwk{=PQ#d4n#?r|c$(G%j1 zg&z1wrV-&?FFDAz#XHQnf1#(!Ah(E)PDDT6yQ`sx5QxOTH`x@S+mkgIpG zJE_M2dR?3Ev&#l|?%AcpW@29zJbZuklI`(^Wea+ymH7-^yKY`Q(L!pWPeU;ZK@~>Tp3`FLGmEuAon0|b=vQW zTq?G+v~!jQx`;h2J)B(v_bU&nMza;nM*QgF&648cJ?%7^Qi#zLGWaKBEw!x$6LJvU zZvpfC81MKrsRk&b z9+_%`Jmh3TV{WQbU&z{wxnYIV?VDeZ$D4Kx-K05U-DlL?F@Nmng@{0$zCV5vi?>e4 zKOb8C2+Mz}&*U}FZhH)Y2&^DO+pECmKJum3Z*WSr13~+g@s9ECS>74GRcw`ck8O|l zGuwXeck*|J@0{PIo|B#B&hpf&99Ox!daKRj%}QHGnY+v@Op~UiERq(cEb%?qyB8aN$l!vWQbb zk3#uT8X|=jUa*AvzRGjA z66ZP&T_OorY#sl>I7yp5}8(%-c{x8nH12C#GUHg3BIWuQ! zrq{HYl$l9}kc3Pc1ajyBM55H7F^C|b(oqx(h)B_;SWrY1L0&T^HNc zmGwr^by?9>)C-yX&-#{dX1K0RWlrD3QM3U!yd!DRirr_Qg|)(ov104J)uqvJt`r24ynfo9aTq? z0(&->`igyqafW4vTkkE#=B6T6*-=1PWdp7#>)utAE7RxtzcBFtJjlP@y_AL8+@*sS zUAc1Ev?(h#UDm|nuw`Vh(EZ$be$LYu&3f{Q1CMP+dHbWhar70hl*JxDBsnoohFELi zfwMp0++o;mIbuFyKNvQdysUu_H4d?i%GqJxZ`>b#-SUR*UCaBnAJrf1_AE!1Ps_|s z`82>L9ln=*Z~J5d4efE{)Qc?~aK3|lwFU#4yD?)D;xvP9l2P_!DPt9GfvL%k=$M+k zB7K`I(YL`YvDF-yEVrOa0ZrjjiyL;#1$z{$8!Q70v;wOtMOmp&??k0JEjhDuHs>fg zj;KkqJ5s3dj=3)RGjPpmm|Qe(P)m60gIbOQFPLD1G!tWvOE%TF36qQ)1;HJbPD@?l2I3@7;Ea|k{lIrN1mSO_NpdqO=`_5_RHnwT<(kll{jLSEUyS%QBu}e!gKDO_kkI@&B>DSXQ-g-M`cJPrvMRVF#P*KBfFS&OwD zfD&p5i;=k;e%9_slosCRIC0)HIJME^wU{gF;nrz{w<_T*b+x#->mXBrwDrWew?*3G zKT2`x=o1i&{h`2(hxiOV6efu&l~`%cH^ZExhv?Q58U;^?esgPk>57b4h&=EP(MkjZ zG*+B!MsY+4019rZedzid=f?*2>s$H9Kc-J@QeutEmyIrX#aVmFh>y=7kcWw}pT0zy zB;$*g!r|ZgMnvn+nGjjY~F_{^&l}4yw$9?4V|mDhi_RP+8a9Ly%aSeSn2+6DBfRs@lHm@OHH(SqHg=PHaJX zQpYkjSIkY08QvL%(~7Q6&M3v)BsB*>bkec7_hmrHc68DJpfX-qts*crb`ONOiS;*S zC&taHF7()MJNoXelNo#I)g?^rH|NOO^tYd$zhlz0HOQKG$B=l9FDL3R&%ff~XZNi= z!K^I&-1_rFe|`9xx|SVPO_;m=;Ic?MKyg}2jpZD`2DttV zLQ=D8@EZ#F1lM$z0ScPO3uc5+WqY1t9>KNpx4h+Xya9yX={jFJ8H6RCfAQuu28MJ-2 zxna)AwQcwC^6e8V2d!G(_BRw7lj40CY|mnsViy)3Lc+77TD{9subCUoe2ICN`6wc* zzBU_j&6CWF&0Fw+K{l!&h?22VX#zzfOU;mbz>K6S7OrAlq|%wA1t}$D>L`~emA+Pq zAt)eW0s@2qIFG`ML=XhRt0@RV+0T^p`E$dS*f~UxwQo&d!nTP!^htMXBmHVjjRdOH z{U*bb0E5W@;b{o>beey8M~ctb0vP)mvx9kK9Kr8~@LG~&S-@W5#P|yN{ei>$S}Dq} zc>&cg{M8iXPqp6(Y&zXc&T5)9F!j1BesWm2>Gg04|9krTJ79D>%Wg>D(sl*=cvbpYTm{^RJ5dMbI}vV?dmq$KI1;y zuA<{bCyO$qqSB&9eDPAzCq>30qL--0`z7K_gBn%Ta5gP)yDchdYFdt>f;uannUxib z!=zwzIAd;?HnDP&i_OMxILL=+j&NoyI}4wIVrLQn!1!!$VGIO6n5cInX(&p&$6>Cg ztyYEmj^n3stv{Z1coxJ{ajkdXRB8O}_$P7M5zmb;iOW(v5-*Fl$CY>}@t^v%(*aL_ zjG@o#b-=$Tv3Q<^od%oE35Xh+WKB%*A}$j3IS-aq2%bssH()06gNTw|{bE8QN*#Sd zx-d80#^k$?Uj0DXkgb_M&J3wFx%gXagI@;d(l0EmzwWadrIah`Ghrr?8ogK>lD zLEAy|3H~33kIW}*0FfBKusgS#e#d`reA)Dx&2YVGm2sI#M&Cj&v<9e(yo&0rRl}1q z=OAJ)BML`EH$_TUN73Zn)^PI-=he_IW&{=1j0GHs>y#VC!YoX&>ajwhRO!n5rFXS$ z`i7;_$NqM2`iHw%j9qkD`vba{rcD6q+edvzT?pyJGN}vv4hHccltWz zL6p}CO=_dov&Pfl;qH`NYp?aBG6%`S?87{RGJnc6lQ!O|VVzZf$~0m8bl1H7Rx4;= zJ2h`tQAUO%=5z{`%KA&)d*o@s28X!mUufTAg(azlwC`>j6-6resHc z%iYXa@%%N15IlDN(1f+4(8T^VS5IEL{Hkdy(X@?I(tl33rO&267&5l)OZm{AXCB$J zeJg2Im!a&FQFa&de?FpByX$z$p7PdZ4d;XGgS^ADOmlKsw#gSrH5r;LGvR7q$PzSh=m@K`0Ly%*D3Qm>ziTph->R zhxYArX{i!>@Y+F@-}mhQbov{Vu?!>Hi82=RS=ysUmoeWI54ZyP8{8Yb560IQn^o@+ zFLxiYAIf+=`dR*u_Op4$BKuhTRQr1CgYNBlhiq#9e63(mY+Bxw*b4Uw@AAAm3e459 z!Nwuh;r3CEA<+TAFcidN)warLWnN`|Wr1q67+mIP&>pwt<>lq81$kPJ`L-LqH~DTT zy1sa&Z&~q1-}>Ucd3*EiOW4}LuYwO1KUKV|hY{$2-|c}$5$)LGJzy6F^#0_Y+yX>K zV+-^Jz1K3abFH0Kp8;!%6AH6g(80G@#B|_X>$-{+@hR;&3s70>etA!T@lc5-hc+3 zIiOWmrvhYE4QPc$c)@ucfm~t0R03ne8boqOm^Fsm!#q3$0X$K^7R^ujwXED!uAhAZ zEwsWEZ7f`ilqXs+J5?Aa>!}vN^4i#gmGxkyV5`fCmSGIRpe@uaEWu)npXdUJ86iHQ zl>DS_OjbP{OrR&CDK2*S|-dci)6*vzco$x?&}ZQ zSZVUov5BnGh|lX9(Qn*Ccl~PD6G#= z{ddDChq-N!-TPsg$({Tfd?uf^sb29_y?3Zuai<%9FfHyz9Kjy=S}z z$?NnI`Gx{>;f-55?bsuBRbx!|5kY(2_M-#?A#Z*)ly7;1_)_7KYcyRJ97cHu_ns2|Ig_YRJ^q8f|tjrIKD=rya zzMj2(@|`Ert583yF(ZstVvuGwX@T*sX|4whve_6i*6}*m2tLAfimO7~bSYN9Wbt`n z6oF+V=JUZ%Qv{>EkZE-D$^RhJn1S5r5N1s53>@@77iPLkGWvqhCDQA%OmkG25y4gf zQC<`qurTb(7x#W~#cB*LXBm0pbWVxkwgZrUIr0yiRQ3XN-P3!7pR79ub{sOS9ub?a=~>N(m5yT zy^xSeJVrpUh=^u$lUOeRBcVqW(1QT@k*WbcUqO%_d~LfSsvH`rfN z!gEkf;QoU?QiEEuvCp(}pbjkXV-q)OrsU^2iVL9uUUQDcWwQy$NxrpKt~EBu4aN=f z2BWaEYd7{7ib}D9k5@5UEs8Bu3M+nt*Br9=Y_@zUp~MX(=7c3~D@XWkKl2c2C?9HQ zP=}cpN;fJC4FE7&7TQ)wE0q-nz!)tnY#&G;C?^ajfHpY+w8>wURzoXr{jIj2q@NI! z@uPYcu#~g562Mp9(af2>Q%Vdk@K%2)-dX4!Bx(ISiQWMl1LMEI#()z7J5~)Z9r%=y z9r%=sv|fZy`JXT+Mjdm4kb!zwhtZ;@{$@thX+}O%vf`-$v6Qhl!b0{}4l(3eCmo+K zCmoOz9dRNeyM@?JEl7W);7~yK1;`0n5h5^N^%f=}(MN0;Nt0+Ku_fBw3H1$yZ%_{*m(B_Gj2%I#VUP)fk4&mDH2{im z3%g#m#8^_TV!hQNY`D6?`lInj)m*5=)M86Y>1`RPTx@w+Fse3kdk8;kS!fwpF!v(eI3Bp z)>t>Ri?IXk!e{O_R+!0RVKq%11@7pRh_Qr+cjj(h0n_qK%}sV>XcL6}P^76BM)6z` zq!a?6y(3)d=YW^w+)hZ5zK0$mAj<)QETid~=gysnJ}`G)1;8(8KfF@1rp4)d*!W++ z#)hXiuvO{p?|;bixt#up6{O8=|IUV`570cA0gLgaXgv>0?R6&%%tJ*C+Td~U!|kBb zi;-RoetgDh=E}uf2$O_jw`LffT=Ezd4?=}NKnfH2B*-BL*-p)Eb=XTY5>muh=9}b` z$*f4DEH9Q4)<$<$PRd8f$XZzohEf#pa*)L}GZ*gww4--!Rx4>)RVk`1cqhFy=Mg$6 zIa1JFVy7b{9)PNOBc0#D{(HK)R7cHV-qT6W#JEvmq@t{2vB_qQU~^ae6{{aR=)$pPbo)H?-Z2_xib-JXGHZgpl*|N+GHt zZZZRYi62>hdey+ff#Vl9UUG40K;`5sLKrw1{M+;VQ1j%zd9IJ_^P8yl^PpqAi`sXx z#9sF?1yoV(?OM4L{7MWjDl=I)Qc+oWwRNavsBHq9z-O=-e6ic~iE`ZbwQ|y?SW1=0 z)FViuW&-iS7|m=34vv-D9uteS!|9YPYn9CqP9w3N7y>N0*KDb9I;b%qC(>3cBtg-E zfCNXGLvt*47#(5M{ZVKs+^w1_q$Rd>q}ZTam~jr(7NB=5xf>1MahhLL7>t{a7M zj>Jt;Wtx-oK%NGj7Wh#5@r5 zJnce$Y?3M}SyeUS0tuo6_N%BbkFA+pTHcsmCC^G}$RPPeFcu zMuY<4UA~lKdRZyraq-PQlc|*YGrwoQx=|u(ZtU(&mgcftI?jWVhUpE!+d14LJTHXb2tgaknnsE z?+~*a@5$)y<8`yvvr(+}3kID)UTo%6*R>tZp1k{c#tp+iL}ekax&BrNCx8s2w+!*Yu6`W zOG_J zMf379%Ir)CP!=?beR|J`FizgHSB>bcv)33ArpbHu7J*utnnv>_5=9%q*|AZQ%1S1c z@RI4Jk5jt{nHr+BXc4`A{->rP>k>ml002TTkR+?@g_goUVMSu`o*d$~po{?4Ilw;{ zHoVem%D>_=w9T~xa+%4{V_5C*yi%9dz(W1!qIo9gJNy$bXB$QH-0<6tXr42f6^ovo ze(QM9U<|l=$lpiw%KW-`>V1zMsA(Jwq@pwsn6er2CV0AU*Lo}5YPQ-;F2#!&FmtBO z>n(EC+N!*^Dqd^m#kK-3^2!yPIf3%Pyz42m0C!}m_9U?sZ2-{*q7AuPosrZ@iK-QrXi1fE*V}d0EMb1sh@RG5e$H2-aF;!Xvl7}8r zT+5L8D40ihse3Kv9zaH~*w>KcGIt;1DXEC&@8-Fcl~UIk{@itj|A1HEBgqF+1D;`) z#6b}*j?jO9WxAQTH1K94%#p zqdRyHInKsOC0aIH9NdYR4v@&Cf*RzNAegICK?Q|iEVJt*m`CS|l8b0OQFjOx5_NYN zbyo@gOD^S>=JF-r2tAW4J94#LK09}DF3*J^v`MeW{I1iHu%OqBh!_y(tLZr3T{s`G z9-PgNvc=JzQ9cS%A-I&s;3SOmXxB-)&LL1~qIMB5h;+0(uN$vQ{BL_-Q&d`pqkEd`*9Gk8~{?+f_MfOce%EWZhQZu`T*C?UsxJ-4| zF?yZ-@+xbPUsKZiTW;^gy?JTxwY?GL3uvBRPrbX2@9b~-8TO*}^b)=YCKO3ZXin~^ zV4qa9SMbt`UGUUG$n1;e=WNi0Q{Wt(B{lM{GyI3R^8gaa$fz9!Ma8!3AS&zFbTeU~ zaKsQ%s~<5qcBSI|%o%N=DG`%0Ky`regYKc>qDbl+xW?j0fz{ZG{Y3OK~FK~`> zw9LuKnFxVf!cI(0PQN6*k zyG{TXpWd(GN#g@W$xooukj)QO6 zI~~_Hbsa4FNjvJ4&*^sTn%_xM1ntEZTUk3a5dKFo3a#A_qm~w4C=aVrNG+(K8MhgUk5lDAQ!`e1>)Quq6CQxXG3d?{wjPu;yy0bdk&+dO;OFm zo!P7rajYk^tFqTjTj|jEpbF=M|m#IV9^U>`$AvqoB{PKQqAcleUBC4id9-B zUl(TWVfJ?T>o9kO=Y;vu@F!u8Pr?}H1H>>-cHKTY9?gd+fv}*7nw!v3b8(!nRLf5zZB+;;Yl$2I;yA>hP$6?o~Vmoo@pRMmS>DO07HUo9pD>|96B<1 z;Yhvye|g-yEK{#T#8(n> zVF&DIL$n?eqCrY|J<@Z^yat5--&oWd3n&iQH%=tz8U>nANaa6ZaM-a|&X;!@V;X=NQ8h1AlcWkQ+k| ztDrwKCsN3*PLsvgwX3>AcKe2mAgG>$p^BiCRgp~y)F@xD*Qcr#MnbB}e8GN;6)@He zKnZ7SU=AwHuFoEY0UFIJEj1Ezl5C7hs#A@CtV^NkZ@(StWjJ9!%x6m(jO~knO*~3? zK+TMA+@bgc9b5rt0c1Z!;v|7$6;dF~i-`REPJgzp$mpbQ?leh|vR!AWLuwTy4iZU& zAUET|WT74ld}~~e12QK7fQYu0!Tu%0M+)8KU+nh>MoklF*WdT5xPH-syVf)R-%85o z-aO~Uf$6Voo9xzWZoNoOwrx`c_Ek;amd9>~mFzGqqXkBGV}5#d!{@yku3+~*{o8Tq zsdn%^k4BHFg2g|fT7%qgtu`S-?Wu|nD&$2yR`x)bZ7?GNbJD~!gITe{LbscI(wfbg za5&;lXHd!72-ObYv>-!9-TRfsQdWxh2Z+MB(wwZs{$9nJRg-xTCa?l8a)5+uV)3=b zE~nE{T;r(Bd)NWeo#jpdv6fpx)g4JZMz$jUuLH3nl;g7_!D5N(J>81Wo3UHpMmByu zaTsj=_`_S$5%GXFf{ZlqaRW99OP1VZi#OQu=`pI(=yAr$l$-hl}?fAM{{%yZ=d2Q8lZeDhZ z`x2Fj;SSkSJ-qswYPqMH=;x^R<+)RRlD1$uywLaU$@(l8v{CnIR<=^fy*#K~Ue59k zv)z&pUB1xfO!@jbHbalCA+FZhm^Lc6RI}>a9pM4%pib6g_Detl-mUq2R_^S_`rYnG zCB$ekby<2&Wkh2eRto*-SP(dQZ>J zW&^qsN+dO#cqOlXCp~{0Dopq6M6w<}l@&_-xZ+(^?>n>6e+gQFpkpa&slG>{ZbOU3UwJ!?3iaE<|hy zml;Lq!()qe4&86=-^iCh_zC3Fp-zS_R^bxZV$2AlzX*a$>Rkdbs5@iPyE^$^!C2^X z-97a8kN^J7na+^&c*C)c*F4|j6<;d1s5ZxS(^LH`+ykn64YRxDgKr$aO|?1O*;DFM=Istct-H!!6_!U;jKat+zB9I6-fq}o-C^IE{5Wa4A$C*6ttokW z_NvsT3VE7mns0houJTVzO$*3X?%Hr|j$D+gHKDg3k?I)y#%?Y*>Bl?qsoEXuIKC#r7&naJ0zOGy;r|3sZ*2*Q6 zmuB$58hpDyx;C;og8Xniw$HoL78-QLAvRn$evNE{$%GmM^q1JB_P`WCA7c6zTft6> zpD<^DF!4G|D^ZUgl49*AyLgxgD~}8}#MsL_Y5EERd0pJRpz7rX#7G*@X-Z*q^5?RA zm<2EJWY9kU{#AC(+rLY%f8&kx`rp0Hu6gaz^q;ps&I-0X#`2%o4l*b8$uF`ly{zy2 z>4k}WbH$|J4;nmiaB|?Vby$Urnz&Mu+~6UHir{Hs{p`9!YrNi)ko7GZ=+V+!U`VW zmi{>FvDmIf&%8fr-<+GD?720osqbYA<~0tSYz4FKkLz6^ z@n~DT>bB)4U%ma!Dc9c?8#Z9oz4zWVie%jP`3i*7Qt=vwK>rft6EW}7_Pa+&Qai+rc$Zrgf`Ji^K-9C$r4Ke*hE3{_IR9))``i`}N#kO-_5 zr16N9wgc0M=qaZIDSlFp=P{4dj{A9JAz`}_=8rsXyA5w)$z}Vcw~*G39CJta;3x90 z`J>>)`2(Qq6o(2k`gd*LA(3j^+2q-?9q>@3s-)?jge3^2w9sPqqu4b(=FVk+MNo__ zG!3|JF#pS-@?|I5_(NympOn`>z~o0?cwiT-(oe2g({`C$(e`_uI{yd0x@|r^X)QRS z>;U$cB0UFc9u|Q`fJG?A6B#7|l;*IHH)-Hqls`jw3Dzclm5z5aL4q1K%Wt>fK0+q* zQ&C#;DBo~rsG0Dpz}@9Rdd>Tt|=8oW-Y!QeERI_$}2{=COt?;Zt1ZMDtg zamYr4gxswjZZi$%Auk!&q39ueK)|u{Vz8jk^48cAy(b~p2A-In6{2Jl@4t}M? z_$aV_OQmSdPz2)tLH5`Sf>#GiGf1euOE-U~uh}9VUI;0uE1hW zu>DWA5s?xAVgAHM1WG(I#kUZ*z~wL@Hsr^bAjxVNP!p$sQC_Zj?G52Lz@ZLj1gy)l zGgR1(%`5a>Pzc(N#Sn#rZ>cBPc}9=&_}z~SJGdpUjj$*pUixtA?v-~=#DeR%)Lp8Q1H zL(}fr{h49Z3yXd|G5yp1>BrNvZ{2^((U%dva~Zog{rtFdZJXzEU)#uuD6q7Z>U{&d z-hh-quwo!H4bar(_0D?lFy}Duu)>D2Ce~y%9bgBodvgv)UNan1jkSeMg>Mzgg%OuG zRTvBYo5-Q}1xOpbsi0)bEiMe&B&8%i*jF;x(JyPT+1C&5lXo<4-eB37JJ=ZRRXlhn zx@V}oE0G{6^@J5VeHv-XDQ_n#OH^EKvKjxnz{muIUdQ2e#zRAsgd(Z4!HTG8gI-&x zs_H8K)bNch%XaQucE!dKb(@AxUA=nh&`l4G$*b&l(WMjnS4>Nvn=-NIzyYQ4+$wp* zP1hdTy7kC4i^fcNWaY|D6W+W%yX1!PS4?lXZT0X0gD&#HIm9J+Ig|>+ROl8CX{nZP zvr9a~;W8N~Uzms{TPMORsDYfU+F?T$cD_}!N{Rt2&fJV_lk`4pm@I>h!){+<+hW^g zlbyCk^s?zr;Ri%u0Y)DFu#^aQpjgalnmQ{IehC7O&aCLPZgl)HY}xJ$87bQ!A%di$ zTUyHWCZ?u;LMiG{iXy|)7-$wC$^T`(k_^h%LHSC6mC;j{>?y^JeUPu$GR@{PlLkKQ zYKv+CM9d5t4!Bu>!O)YLcs0J%u#`m@25%#55+Q4c-i3mN!tlkm1;aEE(_hDiR3elb zatd0W+FIl~F*C|_!ci`zs59LOZ2^1j%6al-+XJFdzbMsm%~#EaVm0Al=lDe`5;Ka% zK#(EQkaU$Q*jXqIr7|0h1{5L!APFcPke`K7VJ?&elcW>Ka1_VcM#UgJbeLMGvjF1$ zfrZzzlu*;uiA*J@#rE_s>wflF&B8Y=G9Hn)(b=2f4tdIo!3v zveK@MS0}i5O6~39`DzarUud~8gD+GWj5=NwD+EFMZ1xO?!-kY~rf^V0+_)pi+M)G* z|`gp)llgQRrLcD^+#TH-$iZxIThji-h!HOTh10OGXgz zMHpyS>}PT;)daG}hLmmI&@PhgV9&mIB@k)F%w4a3J1eZ@5ED3YLEQ>$d!Rn1ATXn*qCtg-K z4al1;rcjcqun;AQG==^EFZ2UnNYq9?@rQVXZRyo)KAwj3F_wBG=Je$M9)TFIGBf!7 zZ%nTQM&0%CjUV%c>2ZyH2aI4(x2?k4G+b;5a%Zhtw6JjEqui%&spX;Y=2cg+he4!U`PzPXT{MQ3;wrVmpGyh-3$F z+IkWcMS5IeixG5Xn9OuUDS)P&q6-jKF`EU7E2q~?DPvjb|H`SlEH<<{UYh<=iKTOo zkGQg7$qTIY+=okQYKr68s|-^#Y5Zc2W(!xPUcKp_raQK!KiqoPbI-G@|BDT) zx@_nl)4IK}_7awEu&HPe01?o;JKOY3QhQg3W$w`o%5t zpG4~{N?&5Q26C!ZdQ!8Q6q6-r0s9Y#TMn}45b+_{y98m<5wpb$3NiR$GWUWCoP!7I z5`ZEf+KW+W#E8E{bDO_VO%6c%z~yBe2abO`J_ZM<$vjRjmJp(C4cW?H*4+o78vvpP z^*~4>BJ>s{YM+zvgqINNB>34su_Tc)hEN$o$N8d_W_Gu70_-L&Z3`9WIVZoa4f6IA z=YKl?=3_@>udGntdkm%f2TG?(nwCdtT~vo+=z%+ymH9}5VKy4(t2+5f$ke&6>JhWJ zF%hXocZ4wnX`D0-JRdV$`qKHH|7LjS$J>m5`Uxb0n1e72O;O^g!>N0aFb3<_0t|M^ zXhL+PAtvusUIKiJ)Fpt<;3g`y@4`x_nqrnEW=0{f94kHBgLudbs8TQolF&$ODD!j{ zL9ztl6S9CoSQNKHx1&sXDt+>J`lIbi{LS-^%gyu@_tahhvZSG4IjrAjvpJo{e43^F z$X1YV$&badJw;LgihaZ^k+#ix+*#UOie{+5ORa=WMSYT9;nwjW`*#(I3_^$?kO&D@ zFlvAv(I`48eJR3~;{2G)T$I^T(rZLzJijR5as|wVPSd4Tji~_@@kDR0%Wp1}_j1oe zQ~UQHm?*6+@Mh;1PfK6jKClfbHKz|8R9OOtXSDcY)(4}n5adFyp!H&~Mn9&dyg{r& zYABdllv$HGOmU5N2qugw>pc>M975lf!wQY~V10!4TPz zO6W)V3nH-A9^|9;6#WtOX0(6;gimx{SXMgr+5{>evoyv(1tr4_D^w9-5|Ww=0T^R& zfaxi@K)+dmIjJkr7V-{}h>edb*joz*PrZsQW_`b8wMUM;%!W6#-F9WoMI%4k{q$$! zFG*eAcJt)7%Ihbde~?wN+a68tJN9P!<#B;i|0wO<_}Stg+R|-*Tlv>ZQptY+C?iV~ z+P^Tqh=T-<8!9v+>oOrtkpTlH~yfDsXdkaP$XZi>yzwLPHZZU z@|VirE|<$m)+s;2S4&B$m?%eTi)lLPnOQrjm=zaS^{k@+sX8q$ju)bxs%uBM$q+|}a;hrf>+TK5FO?E~9s68}nf-ZDmwL;oM7@u0PW;J)_MWR4Q z#9LtvCz*?qBLU<^*;>d{0;@5-6}te;wk5&E0AnvrulNlAlE{S$KOhWSa|NXe%=jYu zUx$uj($K?R$va3In|O7r9ds+y{V)|{LIG1kr)1EN88$Ib?H7CJ{AT3Pzbt(EHv?P7 zCSJR0$e7C-ukg0_dhes@kN56-&*&{5FJ^81TsMpxItBTLLQ@CzX$t4d>CaAi2UdOZJ_<2~hgtVsWKX62$`Y{rCmjaFSf zOk2=b_4h08eQ9a_4C$}QFn4i)V8_P9gVlp&rW5&0s=MZRGH8FT}tW}htQDNv_yJG&V1$Bd2#hKl~fn(=BlEqG@ZyYdo{wDd+o_=M_oh{3Uy?Mxs{Po=7~|vv{7|PfLY85Gq-1jWC?+!dg^iu)Es3ZtC5Wej=OKSXCo43f#4_v z8=(YBKLb>jEKiie-?%qiV2?^!&Mcl4%I_4>J1vqfS=Liwh@i=Ci& z{#>~0NIyYAu}q+NnWBvBi}dFo4ND&%)^Wc}+A`BS5DM@at%zgUjUxM~L8{R_hC3L6 za5%44WFzo4MzSAlJpfYNa7Ut32&O{+5%xyV4c5UkNEboq+}Jimva%c5A;#J$!_fHl z-O4m|B&6TnTG{>l3I41Ry#D;K`iA-^enK{bk>d-s&4_I5H^}d+vO%7K^hQQiR{T)h z4>CzB=HRB`NC*v;fFoI}pi~A!imG0ulUGvKAA?Hf{e$dQ4Ge`wqX}ZQ0e0mI5ua5k2s@!&&_Tc$rP|N=YtilbDaSB+CHqC4>s~|8?m7p(JP!OyRHW{ZIr}(A? zrxYwyRwz%ahg7@Y&U}*B?{YJb%g^O}<|&Z8a31*m$Oh=m&xa!+KfhA0%paR?$oI>L zkj#?v&ABdrM%YH#hi%&++dr%&G6+7HL7!x7GsFB$Z$U8UPf6RD$L;34jLm_akXRS@ z;nVDGS%>+<2wXk72S3ckr&6J=Q% z4XeV#{NB!JGZ>zQ^7uF44(65$a0x}tB$MBtPL{%3PJeA!ZaO}q(MC_01rhw)3H8yf z^%An%VM?kH;weOUovzBkD%5;gXw20R>hYzAc?;fjW_cqu!&j_WR&|9|m2z2+7yjWn zZ~vw9Hr-M?vvHK^F0?X7@YVx5X+t}V@&|InR%7L z${MT*N$Hd}Jsb(=2NS+zj2GF9+%aD)SQIJBFG>_9t9h-Z)?V$a3f4wy^Q)3RQ^Jr$ z#vV)99(4PBzM#p#Ef$O2*GrlX^8)Bc30j4jslfM;BI} zjB>8BkQU;h>f&TsR0G7YI#0*d=V&=Rr@Am%h9GbrsPX ztMr0a`mW^*%tM319j;Skr*d3h?haTh zm5{9?IWY)mz=YTg(N0)th)I)zn~<5bRE#dcMJrSQYF{(YhcUv;@XBvWpJ&R)=~q}C zpPFuCve=d1OZQFpVsEjRJGUtFH7K*Sqs)(MJ&@aqol=og4z%~Gd`vl}9<#{f*?9FB zlPlGsY^W+jSy3w)GOAI52U`uG3+9HeTBJ{KHk1f%2+-Ke4iP6tWP?iBuGTbKj#GW0 zGLWI~D~B-xJ&(Qws;9HCC@U#9C>~}N7!5m%PN2>Uw!uO(O~xoDUfH)qru8waOTW_g zaM$h-_6qw$x*}cIxrNMe44%9iL=+Jdm{sbh6~I1>kj)yaRaF%t=Zvv$)tKR1Yb+v6 z;~`sDn(?-?ZD&dG64Tk~0O&Gkee3))=CJVjIu@d*&hRCKfKx#3;$e76M0&vW00a9# z_A5ks5W;ZM^pu@QMOx+H`|mY@wEx=3x;6BHX_?~r7SB> zml8E7+1&3d43q{(1=j(>6hz#6A+jZVyoGKTkCqtB;S#$X@Q?7g8zdG^cta7+UE>N4 z@@mbU9d{u0aj980hav!1{840-BhP3Xd@j0$mTY?@rU(KU-7gBm9)WAfO+{*uPCl2^ zGmc`e&?V(UsLe)r^We&(^wxeb!gP2@S)S453}9VyS2|Z88u7rswL5?M>ABaQKF)4qi+;EB>akme_w;)C;}1bv``(f( zndcj3N4Sd6s@2}ms`IfnRkLff!XGlvR`3TM4`n`BB#-Yot>=R_xq%P14slH2iaDRD zL4=liDcuRcw)JYz2G<|GE5lAQC+4jJ>x%4+2QX8q!;oCJ)Z$fhdL;{lN?q_$!P^CL z0jboe%GG;wCQ+Ch^xVu^+U(D&&CZTTg|=+hxf!7ePr_Z|%l}Se-qXQQ`ZLbYqkA); zGLr@bm6`CaAZZd*je!6mUbQ@z(2NVB+2JL%tTrd==*6^NlX|uHk|Vv!dadgv_d3XD z9q0i?xTaGn0x$-eEh)jI6QgZ~VMJGdN&D?of3ef4^I~bBwkFXZB7cP-5fLi`n!CH+ zE5Y0?nwu2e9Jy1`B{df&Geb9ww=vAz<=;Fv^|cYB4qx|W`t3W?kIp_cV(<&sO?_te z$UN3I*s|#I0nI&4H%`2&cai1%kBe`azIyfaS*zLD9uGdcnq5M z(7)Yu`|U&6bxUt;tXVko+Si}l_TbiS7{Kl4+0)8wehX?ox=#}iuEj?B4mzrIQA%hQi7T0JMSAZyC#^r>Sv|4QGbHGKxAt+~K(P&sY` z9jjgrxWPmj)W2G5BnM27^e*Z7YoG@F1GaAEsOesgnh0`%eGPgh1(IB!J;5h+_WJ*Q zp+u}FEGX54v!J+7vCk*4kX{hB0{)Ot@%0m{$2RblhQn_z`qkXX^(Yhzb?u_kH^|f3 z8=`IMksAV&dkvY4^@i}mDU2pi3#=@*lO!fP)x40?PuI1g_M!P;+z6t(U)1vp7wWcK zePS)SULMDuH0+1&g@_U55y`xlx)lXA(tK4e9a4HJf5#rJtZde0(&I~ra29r@WQSxVwNzm|~ zgk+xb`-Zd9S^ks!lfkA+u=^k#37}v+!D^%$-XJyb9r6x?ol9offILh{ya^vU^_)F8 zCs1fP2RPt8#5zfzu`tpyvYdTjkLdER35!i%tTe*M4ENyazK~VPi$i^#^iMJSNOOhs z7J%?r$hM}hn4P|ft*A{u%f=ud;F`8-Rr(9W zhA21>Sg8n#0*3i2J;L%rOjNUoWz#d1h!{=a2(EKl8BWyCo+;<(>Jq~fPo|4Naoe$d1A^{(}~59dE+-{#tu z`&7Q^0p%gnL;eTCPb$xtp7B44qy>jFTXTG^-otLoVRNfZZsmt1Po=f;B+S7>-TiF+ z5Owqyt=HGUZ4S+@l;DZY=@$)^c`LIjgE_6)hcj`Lt+K7vdf4na>~8h-%k1|xq==#5 zXd8r4zJXJ@)~7U*X5tF(^w+Mx+v{APGc<)i{(gr4cH}PWXqzs;-ha z;F#c&28@&RvzzKrrzng7A|VY!YM18bYN1q&_-93eX1QFunANrR*%D z!^~PhMcfVvmV_Z2VEd*|FsZj-UdIRfbrx|!As!_PamkpInF$KRI93Q)OlCe_u$wF};Gz%ssvlVC16cE5+ax04OH z1562N82$ENbBTA($GN}c6qkLvM)XhI;t0mOK!S`W>Rz{h)CPTNVpb(fDb1?S>Z;eQ z|7*RXBLClOF&qd`ErwBxf%?Fxz@&f@_?NYq`Ttmp|I2#&mv#0}^>zM$AoNAEcg9J2 zq^(+u)8Rmxa~Oj)7=vrL3&uXS$pbWWhQZJor&ptbAyzeQvX~|JWS7f1+2P2T4EEQ_ zNQ71cc9+RWmQHIg0op(~?vz*=F7q2Ng;v7JgwB`$&G|CD2e)t^@5`Q* z$6@5Wj6I7 ztoCKIhqK`)mP}kXkxzVnb|Y&%;TXi)2eCnanT=KI#FF0Yz!~uT>@rq%VpPG`1suxQ zGA%G0V$z8v{&h$M@VxF5pE5;p%a-(EWSkKY!1*E?NB8mZf(*^0LEP6bdJ7 zfVm~YA#BI+sjswcVgvAlEt{7v+w@x}eh@0MIy<-Qqpo9_VlK-K6^nz#NtBkuhY$Yd z?IZi&oKYEzfKGo#$M&4lsQ&a5TaK?^JpStg;_KXa<&5c7_*p#F-1+%be|1H)u&VQO z^b_6oQrTsDc^9to$&!c{cbaV!FMffEgZkBatO{pT`aR;~Axpi>F2?Uu0Ln?OG8aGU zI_~22h%Vy}7mK(yBgF#{%4H%{zq@qR5$mmAowz}C%g<^y8x|vql83RU-a5)U8%86e zh?39fE}M1TiID2_J6QvlRu8EVj1a8e!!*xM5BIQx@)}(z^mIR5M2G7oxxh;@P+U8u zWwJ^3mtZskxnR9rUTfb1z>r*OZvkou%xxcvfPedivk|=m>g5^;a;3udMW7^bc(m_C zN&W}Mgbqd)oiX8E9DTE>RsHC9+uuR0{&$=Q;9I!B=K{WjcX0H4Q4{*nYuexHl5c;> zdT`-D+;#g|-0P8UcRjHE_qgl-nXBQ#jZ-V=RyV3e-RicQQMnOg&z-q!CpevSlV5K4 zTfT4{^&|bbcR_>H(eI)vr+x}F}bPTwHtUSwiU?nh8)-~S# zofc=d2ibPU72`_7JbeF^vfQxT_|;;GttErEh?`M``31P0xpRq34vu=lW|7HyZcPp1 zaXk5PRsJJW-u`sKb;`3Wp8jC{daODBQ1c;%K%_WhfaVfj%;=E|!U~!~C*%z?SnClptC|$8YH4cfB z!0Ay=@CTtw%izbcOY_0kC6d_b(dT4(68u~qn2Y(Wi{R_#!eTTQXmUfq5J&dSPr=c){s6(bB5oPU zmey-t$ES$P`qWnGkaOiy$Y7Q3Pl^5$kPbT>8^I1C1q_4V!4HQ%aaPzcfUNBnxvYwy z2Z5!n;-UGMTr!`Y*QN>!Q}i_S(?6JZss0{FB+9hd%!jsr2a8stW{-QTy+gfn%#-pU z5j22>`TkEM2yt6$`P5-iuXKk)f>qpBnTsPs!O(w1ABSuwV!T@Q;Bx9N&{nCxf-eqw zC$0a44-^J(@Wm0ba@x42WVBy@ZD9D~iMK9oxN_g^>6tfJBf(f+FYi^Evqnv*9)Y@> zq&z3z0ow}Mf~ILX28w1gP&C_xxHcIv1w95*5;7Y5tP+Fs*}ppD-U>w53V0JwRz#PaLt6qivuf?w_P`y z+UUYeQlmwT^Y}_dL8iB_ zyx*ozr#(Ngzu$hkqfER~*l8cus*l^hw(}*BG>+QkNrX_&wJ(O`A)74*W&-6q$_i3r zm>U%^;aMyjtO^o4D*#^R??pAk*2wZTAJV>HB2`Tm#n78__n54f-hwEa^7ojK@I}{) zlO2USPleJ;^e+pCwd zw`w1(k5wp|id?57*mRO287uXAX??8t+4?AW^My5Uoc?G0c|OOL!YHecqk?QTX&p zu_VKF+vj4?>l~1>;DP+)6aJ#?KmXTr_sfCvh?5ZZ&B^FV9$>Yf)1nU<9P5%U((Iu|O;aG3mo z0DOx(35!FyZFu zNh1bx*!RtK9i{>@utdSCg785v!0ecGfv5*!SBxM5exX^JfZOYN*5OG@4>nJmGIHtU zC)@tCVFN~2@APYbzOVndlKRSNqqUa|hqL3aroVV=U;5)KhZTdz?=V}LzVUE+VKAq0 z?iWw)ndPTAmeGjceGoO3BNa>UYrPG|fV#=JNqtH+3{(FPYwrOcRh9OS-*e0KOi5-k zGnr&EX%j*c5|T+Hfn1c{5vdXqkY1z+2m%sO5ETTZ>nhm0L6B+z+wP*f3%eRYcU{nB zEvqc}TUHU6oB#JYcP0twzVE)D&p$Bz+;dNP&U2pgl<%|Jcwa!8CNXacIy#o?(cT#fGBqac(nn7x6s_e$Y5l9b+sR5|rk`Q-nW`XonhX7}m z`MYh_4tUu!gpf6{N!pRtE(tDWLQaM`r2rPjld2W_CaaQw*MXgktM=lJ<^g@ubo$s?(+htB3Sh@lD+Y$%&bh<^=MavJ2ZxpA~cbowN=r| z2C$r}$lk*BN1oAsci~&@*yHy+S6x1aQ$1_ zl9x11`wgr3@n64M;k4!T8r1W)hACsOytw0;XE$wr@d?Pvy0)Fm+q$-WEsH?*1;!xO zDm;#DvXf-&HXnd|E@5A*-(Sly1~~`uidg{AV&2x}M>=ylyi>?rJaBU25LxOR7k439M?~4f{d6?5W zIkZQ0g(3ksVNQTrqyLfgT^fSIAP$1+hkFvo3xW1wGwZO2*@xZn+=Q)zrXPLl@uv&B zjqG{zhsq)CyX4HznpPc{?o8IclU~;9t&Yhz_L!87ao{<2Fb+l#ncs?1$2)S;)n!=OnAfHT1dTT}1*MWDGrfG zNFyOr0l6=Zuc}MmIu==*;g`0j;W874#A6a?3E#?H<<|r&>xIB_7{4ek-)caFKGMsJ zW~+hQ@onx}+8FoXm80|Gl_MnJmH(cQtpAQz{ySdz?|8-Uhk%Pt-}6^|&tFmBp?&oI zL^I;)HtoYrrHNM9`!>O5jkq;I@b)2ZQq^WPVDC1-jOOiQ!Wa9@$f0Q#g+t<2SnBTE zV^;Ek(r}+(z-N(tvd5Zl#&4VG{ccoFKfx=OHWW1>Bux~oA?qAyNlw`OP+$7KOz}s3 z7vM4dCA|toXYfLA&%h$(`+@r)-u7>bgtx=z)6U=en8|tCd73|Q_W+VH>5mbkPBJr? z2@uL{G($nsNjrXs6|+uzwLh`WhqPmOd6IQvMTfLMvQGQ7KWWDfvCi6`u%!w&i6@ZH z`*)DthU_;(`3TQd_^B>Yv&_gj@OKM*wi;jtZMF;%mV=H{Y)XT?6IKqtbs$bG1ail{ z{K&@^YYPDYdm>z?s&pr&IN+Eejy5$+xo z)~Zg~=k`Zr79?(*oDzy$9~>6E8Ni!h1vW=eIKz>UmZ-&Uhib7!9II?+ z+^hl1zZt<=j%H`J$cE4Xi;OH&L(756CyG7Nd8pEtb16UpEP!ht;fWkQlaCg+HM$OQ zN;qxgGfxI#C&dmN24gPX>d{@a0~*Ce(Z{SKx6bpXmz0*47~XKy40-VWjh#wTW_9sP z3mzT5>bB8o0JAFSe4TSadGE%N<>MnMBMN;q-W|jb#5>XBeE1u8fQhkpaAa_DP|8X- zX4&DNfHCkg=AI1`jMpun$#b7cwSNFW{v)q;DYIJhXl4pinJqgZ!8aRfn`T#b1GfI= z+2Lbhu`#?pEDj0p3X7p|F=BXD7J8fE&%X(noXvvj2}XpK1=A^D>4*GSs74*svpCIS z%O?lfs-k@I<0E-s9v+xO{l7k&I3Cs|Rq(TJ>=c&FLAfZtqIGyMHgPPk4hKwKiaOU+ zbqaR%MymZC^YTheyZxO9+`V*zC$;$cp3mOf_>i>QT~St3oL}j9ka@F`({c*SQl=F2 zSUMyeDopd$b*tY9fKy2r+w#7FsKg@JVTHYgT1qP&xW~&{`)m}(6 zgW#1&A(c=IhX4oLg~ZN?hCueKU_d0IHV27rf~x{&vS>Wbu0qEdrwaw>6EeLpdjc}S znuE>h*~kkB3~=Z?knO4gYt+>pE&~?z^g(!_T4K}?3*&iNr`pG4>oIsXsD=G=r z>HmdF+4=aQlgNzCLLk~vTR72{lqzpJx()`>7M7;Ws-k5WUzI;;2JzA}kF=-Z`4z1+ zj7Vdd&&RgdeE5Y_7CtDX!m+D6v}7jx$OM{}MF~nEHFYsk3?VA5ZGP+tjzlYl+H7G- z?m%ivBKS=pB`MLBD#G0s{yR(5Ob24meW@ua9#8Tauh&=ahoZn{wIeGgXGxfEDpo+2 zBiHwiKuU_!*#HT*+3$wiv(LXOS%6RS5CFgS2>#OKARgVHHW14I%nKO(vB?3#4oy$1 z(Wn(q?ZR1vj8mFTvM_;F#Q$+Vr>~FLtmz-HX!!K$Ge=Ioa?GM}?d(A(RmMtPK)Uz9 zh4q@r%0f1aJAO4|#_s*sPL1Wkwd`Z9(}o9G*5{woY;?ftpxMZWg{X_rm904_bj57+ z#%vg~8VVaaNxgz25X442rlxDxZKV-+X=$WWVPSJYk-MOvC{k9_wYs#ZQ)Nj(A?!?c zYiUW>nrh?)BVJS%p~3bPcdbTzYxS9u&XurA*LNwl>0C**5nD<{raNL*RCI8vSM5>; z{kuBoo>+_{15N?ppz%e!=`T2&!b4yhC? zC)KuRY++hzUK}1nVYVyGPKVEj#p3Ysus9o#qzBmVpz{Nh%L9Y+cZ;Q$;&EtE{S3+3 z8+iWDXBV?YOpjJ!6wHn?fMFTxY!7^pY=|`1u^GR5wqp~nFH_DXub%BThME6=;g}3d z`f8&1Z+Iwc#^Qd|%IRh1%-#F`3!ZxAPAu_j=m>Hrh$(@~>Pyr<4rVt3q9(xzq^AVg zB`~|}GFhEwQ;r38TW7+02;D$q{5$xj!I+~!kz-zEP*Rc-?0+yiUy)s_;R~O*5ehx5 zvbcpG`cv|D#h}ws6ZyXC_-QjPgzM+c3Y;yam@BJ?)<(uQoFk=$(cKJcnah{8PxgK; zXJ6Ewy7~*>VO<5gkc?7U%9hVEUK)pY^jtgvAHy$g7#?b`t@sY)vHDy z+Mru@K5coQ^%T5&fVmB~l#8#@xkzrkDOoD|0rmX<@jL38n7^32WH9)X_7yPKt14zzs1 zwK#2NrC+?)DV*{ks$+yxy=0alT@;L0akOVhemA0Z$3e}6JoK6xnjD&zElx|BoF-0l zPIHSRLSwSUF)1U0;uz-`s5Q9vkjIrA5x+JesU7SY&;l@zBI_ywj}d8r=kIgCIRRSA z1L9pU6xgikle_?OK{LXLvB*<>7Ncp4899T10Fkl|?8%pr=+DtJesb#pQn(XK8R&%i zg`(r>-n6mhZ;uB=@3bx z9Fs|^%^ul_Z=j^3wcFmzO*k(ciTv8U2cPhq1C+I3PIY6oSX|AHRG+IBtKkYZo7d5n zI3c!@1Z}7xO*z!sn!id%&_MSd@G$6qzT4Lac229lez5NPf?FKo>#hf<`@ceq4{gzY zQRvRjcW2#6ScltscjRw5xsTdhs$WWJJ!tK3Lf^-8Eh!nWNDJ!#^;33-;!FT=WHMnY zE(*8u3q)UFe22DtjV#>cFC2hP|Df9WCl8wzoSr!;dr}9P((;ZD-jq2!XGDi-iIb8| zRgQ9BmyAeGKSxi0zlhI4IVD_tvx z_ReXX7?|cC)Bp1I?TK4-UYQdo@0hj=x>si4`YOZj+%(4OFc+IKm*@G+>)r`}6*poo z6IB}o8mmBj+txbo-BC7|&pW_fF>ilmol!RJ6)~S?+?g232Zi0iXFM%7<9xnJ2X>y% zw|p9d?(^35p4-m9}3wU6n?Ifyq)1T#_LzBxD<$^NcP-*ktUF&?d#Hgp^|B zmscP)h*F5@2X@j^Cz5%Ggtj<@5kv^EOYW4<&rHNQkt~$RNi>W`h?*z?WE-7Ysw+qy1U&H3G)?VwtkpIvNJX`lu__CW*eggq&R0e^S; zl|H$YNr+|`6fN~aFZCHVFm^p4z_M`H})6RDZ ztew|(ZCg&UbhL#e2S04$y5!K7+Jkzo`^r?}{<_c0XRMKp$C=UwXuXiJ2AhE-w#Bv4 z6?$%s6S(3A-rvuJH*k+kHAxcZ1RH~*3NcC^f~`Oj+iq0{w|88-1>^iWA7`+6KF%q8 zoULL*4lB-4kr5ff$#;C?YA?9bwfA6VEBH8roWa}HjuwP0)y)t%aw_p$qDb&+5>KAt zZsidq@=}}i`_d@u_dNxd6)EycY=Tod?z!NTOP?TNSAllvYBzN)X8lj0xWL52es~6%i~&R#fW-TGb>1f{}5xH zT04a1i$VbcE)Igmjj+-DUbQ%!ua0%%Ustbd) zHBd$%E*wCNIk>9>}@p8At zM;AR)FyGsq&{)%>&&D!9XMrF4?LPE7!v|!igBi?XGaJ)0hlCnJ0QY8t_7+nbt@HzI zq-v|p8k{9&-5E%E@;|17-Uo%fn3O~*p;fa-@FUAXEHQM*W({ShWPT9H3f!5VQj{V( zvCg+7>dB%>swR~8M9Js(BNjQF2%BP35|T#q(N3LPOy-i0$K<^kx)*f;<)0~QP=8~cw*r6n+EuHDQM ze<8i}OVL|qm&^>^F8^|x>C5By&e)PSEo%hm8RtUzAeRAv?Sxf+3KIBKtW^(7w-i}g zfObiAX<=Jv@wE9+QZ_WqWw7OI=>*@Wa)cJu*)gRmrEiLq?DHfc4Q8ughvX8^z`8Hj1ZA~kfsa>@l7GAA=DUJA3Ba~TS_QY z46^cv7qxDMq+9uqGe*AL2v{M3@n`cz3q#-Kp$?5rSNlEF_#Y=u{4~Ckj{kXD@OB&P z)?ZE#jv3Q^1Gj)g?hGfIZZT@XcL=W))+xjD}<#Pgqxid{uHiGnzb zFb6G&6bJH-VfnP}dHOD(-;MSh{cfMJUf6SR9TN`+j{$0dye4toFWql~LOYLszt7+y zA?U4i23WvRbIsk5HVl1B1~tCH_nfZ0m1~8IvAtbLa3(Y+G+}RtTSk{(+S{-7$XF}f zg*)Q3#fsgm$$i)@s^FL$3;k_={ncAf>)q4QX8rD;vH~_hKpZ*SX*q8ZcUX2=#N`$? z*un@%aTTw`(l*Yp&{7|+ZO5m=!)QkZcE4iRd6!7O65=}7dY8DI^!E_Zp+j^*P{`%= zLCS7T$i;U=P(2c7%8z4}DMJ1}DF<<=CY`BU5mR)~D2I+HOgSjtFBl-2g2TjouLx_= zmGO{liiWh4%Aubw*V1Wi1oSIs;PGdJ7iFsOq&nQ~z0JNT@iyNo@jm%J(<bndfkqIE8sDtqWmW9A)xM1vA^ zZXNd^t4jh*TZpX08JXE)j+0EpF7mb$$#-%DTf_$9+;Y3NN_+nY?e}|G=kH#4{vRh_ zfAf=P*hE$1u>+^j~cmgHRWMlH5WV5e(@42%H$9On{f zKHzlcMhST?WX!>};Gd2T+CkrmOpdhwBn3v z-Da{R3kDva?lzKVz+Su6mTU?h5MSIQ%SPC$UqFsxh%+y!*1<3ZcF*x;xJG3oq?yRH zwCF542eo#Uej+ce2#iRyOFE@;U^2FP21xtAuNv5^>^mjF<5+U$ z#E(Dx`Q*yP=;>t>8*X1QwqcnZp091~Q>T5j$emqN^IKN;&0kpLSYK__#{G{!`_%Kh zXy2lKuEmN<#%jGo?KnMgs((uAl;G5ihYZ_X54oRDJR*N6e`>H*B13CmYcKmK<4C(9 zS&(Rt+Dra8IMhHrAqXjao3dF?OK|m)l302&OHOv;@RMQgp6$(Wj>@9`UO;!zTbMJe zFuA0Fs5=W)J#F$F5;d9U5CMH7DOV)1B3uL;R9k;vk?z#2!{5L2mg}_dv>*4L-29i9 z=j5(`@sYW6AAj_g#?8v1ZwB8pa>>C-pKEWfV$xGbSXSEL^f^&+%VW=N+y3l9FjDHT z^eW~xUBG86Qb~h1M8fW^_Ji)D?vK-z6IM3HHPScDHO2R3x*{hq7p8B%YF`J@h}nF} z>jBl_r#XH#*$5epR)yK>h#ZG)8;Rag5_T|G6800n&+LP$^oZ&(Lu#0m5zI(Rk~18m zLKp^2Ic$w3B}JuV%qWG8yQFAteqt59VrcN?+$fC+fzFVjJC=K+!mE3ZR_HF-I?xe3 zzBawEWJLA!2M>Pr*`9N+Z#sPZn}?pBGND&*as8*2JxkS__useczE_6~-MVbgj6GH5 z;aU2uD}6Bv4rr?GS93Qj>{-)ihGtWP>kG}mO$Wbd?q(#6ovFv>N;GXn5@ zJn^`Pa<8A>V^4}e$vS_x!@w~L6O3F;aT%@0AzUYCG$NW3z&jR>{$Pa}mK{uUW>`k0 z5)lAc5Z0WtrE_%(Al?R;1qu^nJV%(oeXW2<2@Pu7frnBJi}~x!^v-f#7e0AB!gp zp9ZZR61yZuy!{hF3g=^z<}$*f_+q-XqTTobsF_ph`KzKPn8g1dtY~Y3L>T zC3U8>2py@3@^t647D?@g<%ity@TE%j>WP^+z8^WO;_wN#H>Phi29H=>+o#u@`JLC! zd*t*i?OzwPug+=TKCnb|pB~jcBP@5jn7s3*#lH!&-#+*F*oQAK`AFMeK+xKmtoC&D zp}Vi#Igu4if3)lK@U=X9B`Pm#$-wq!glyuLUxSY7HD(ZH=(Wx890PB0iIg}=xzgTudsqm?Jolj)JRc-TVEDvvnaGub1Sd3t(8N15Gl2DH6V zy^(ZHj9IONNvB~$ToYq0n5b{PjlxdMJdWIR1Zg%7oXCh3f~pS0;CI*o$_p2&^9aW6 zYqNzCiW9_L35-&Q58~+{Y1f~JLlPi4Nwy|b61cu$6BLSoFvCwr+!u!D%_3Vv9UKfI zaB%~chzCf{r5^aaQFw+&{L8VVPFaI;e8=8)WlZZbbbekqR}7u03=UnLUl+FsrK}@h0XwRWb?SOm45`JcsGg{?Gw8A8{&v&q{+iD zo<$-ako^yThwJ|j`T5Z2@iRS6@&oA@gV81}I1Mm?A(M?6r&4-HOQhy(+_N?xjhw4m*}_MG>tqrv37K({7iURw7KE5z&X*wR~L@_wzKnA2_fg6gpLMD(+opr>n| z&C@-ts!zv2AP}q_e&gKEbQ}gbKVsY^&4hQPKtVM|Y@5J_?!udLori87`L;B3VSU4-nMc=eE-uX3M%QoGhDlSEYPvoN3K9h5cs+o!&qB&}up=cMcpkuf0EAi_5agE1-8l6AVeMSNsGC zc0f(FG!s=87V|0_>It);-Tl2~r~v-o;8(TDA~)z|aJ7In(m>ZHCXZ(r&*W!ymY zWyIV1-5*8oZ^3RUu=uT8yN|#QV+M~gGVU6;Z^e+F%PxJjtmlvw`^M>?6hHqYrWWQu zxar0F?|*UAgZYI88#dG1%^T3RZQ5{Yin5>A9v_(2#^siQCBsJ#!~6}d+VsMjH7{)1 zP(XF@w+|}&$L+^W@3{2k9X$rG*gp=R2KTr_Nx1_}0922#ExIXIJG83of2tpI`XBD0 z{YCtJwDfD_>zOI8VwOBa1xQ%6uuQ%Ll#9q@n|bOxr19H^4B2sWE`Uf!YQ2^{z2oL_kG*XncA~->h*nYT{Euq2zcXgVT(LMaq?Zsis-s(vk9IPg4JR)K$&i>MP4S# zeqw&vSSt^Ph*M!uUY00TrzlhaE>i{U1ri1T1HYYrEoFE>f)H}1;7{;90eq+z5*|6- zl2w5oaK62abR6`6*eM~IR8RiggPu|SBiP?6!!h1%sI1*p2fIs&wHo-S64VDHb}I_x+sAP{;Rk8*ixUSK zsO{Vt4h&Lv2GQYJaf$|C8>wkP&H+HHct~r(G>e(hsC3+LlynxfIe|~c_@cf|VN%3B z8}`h-zISO(FpyZ}b=fVlF&Z@{{rRum3pzv`mcBMqQpR*pj}ncFdtx<}y4phB;N~3* zV-Pd-nzGYV6FccO8IE2&tJmbT^syN|A=K3JjhL*wCBBDw6v#ZUymhIAa#Bog!bf&A zx=~zY?8AQpA7DqDq8rV7f9Q|j#5H(vvXN=rgVK1s=o9Gx*qp^8+Ft5s5`?W-q9p(#+N0RmjP3W+9egley8h8rGhJO zh@0qo`L6i=@w+j8JxoqiLv#kU5p`T%7H>to6tBib?La-zjq+Wn37z3> zh|bUlM>*g0`=%?jS5TdN4&!Api&-v2kcwJf)9>+H37RO+zYLcket+Ih!tEsLMa2xI zF>kY*WCq>9(k5{wt~uYN-F>B6p3moyXdu=W^osuJBP(v=w7^E8DVLnFdHM&ag<6ut zi&0AsGc8YM)D+Csr9bcy#)zTTf1p;qB^>{Pk93w)edT2=xMr=RxDtb+bVuD12omkb zxL}-#-gsX*!^POdC`R0jAJ1Q@Mr&wPVw6cGY5wS6hVu4h4L`FJI)(D4(5TStq1Jd? zKsr#o;3{#pbi?Hq$TuHHmoypsTsqvuZy?V{r8MW9w)q`m;}WB9PMdsOr1x~1ll~EF zH4O`Ijr5PpE$m~oCPsBw51fv8Nxda#G4lFQ!^@=VrpqnT4cgsJ(IsezvxzO0-n+a8 zJ=NDRYNr{cvaQs@*HL^e@o@pc=rllMNEl@CE5PYE9kLTzUW^twY3qDK(rFCWNEmsC zepM2`7pG288z0r^?cyq2&$)}zU7nA7UOEgS;&iI>l2|*@uUvg3_!`C3@gZx9jTzQ+ zj6z!5$>~X-Mov+D=vtS5terYlUENN!uq?wLr!CNRbP2pwb>gDSz-HDoN$+7uL1O%_ zv6UQK`*B{PujVVS$2kgL($uv!&O=vFJ3%^p4HD%mC-r3r+HYNl616jS7kxZ&k={b= zIJjEB*JX`2lP#rD75V)xuhEB-Q%a1F#o9^JL0zS5Igg4l9_hU+)x>;sI=qIf>8k=) z@ZqF&!8ssb7-(g?bwRU^+Fbw{jNeJTg@&?88Wz1BORDvD)JFZ5v5~=iKt)7XbKcQL zqWau}i^O;;(Q2Fo;`DlT9qp*#s!@(Lzjdgo1N5LFCyp-bBaW8P%5vcpjP_ul5j04v zOCNik6H4Fm)gHxo#|cF&09TZ-(V$;^)nPm@uc3jBaY%6%A6LHng3IW;?=1Pxt+b)1 z=EnT!zkzN)jsM1}Rgf@wUTjtIotfH;h%>%x^WVhpT7MHi2KCSiru*SK@#EGXgTiFZ z6l)8uZ_3B%g``brJ#fE(k47nSxl{|aI1Bd%cGzHHm@rbfNvH>k&lF(>GO*t&+=ep? zocoX&g+G*b?~U!=|EKT0?aKUL%THdmjQu}6{L zK4^BX{f<8WU%t;ldGG&F5B=W$9`u>&&;5l5Q9}E&@%L2!|E2ttrAvRpe?Iw_`1?yw z@elZlKJ)jNcl@l>L&g zVrx%YKYy>2AE&_>5&pc))j#NE+lcn(%VzXVeT~# z<1ds`P^RLV?-hK8pK_V8tgY@OywAGk@k{mnx8;eM`0bmg&z+*@9)LqxHG9 zT|~5Pf9*cR`vBtp#oxhQ?`!*^9f`L88tse!;UxYb&hOVryJ(L>yl=*X(yl8*=m8?Z z|E|Us@i6^HGK;b0BAg1eJ0P_eL!a`xazD=h0)XpTvG{B8*UJ5u7T^*VYWdvofpRbX z1~c1IYk9LW6QD$CRfSRtlj=7lO1G?ymf2ygqNjD z^FEq~@0hs%)(__m7`JQO){j5liWk(~h!MC^`Ut&*>_oyDV9<5+8W?UHrH{1a8y9js zQt6{B1>&m3U*k+)Pgk9A`m<-4MX=X|&j zjo8P;g&)qoscAy<)@{ubxGYCaymcQnao?>Up@~fmTbrA=HZ+ZcYKm=Zx!15!z8jJP zS$>Nk83+vacHQb85~K)?hJN4nP&`VTt|FOLK*?JH{As|v7&dD6YZvkFKDH1({U)|x ztoGIyUubW!+AqFfwbAOL%#7mVjLahTP5fPSbGO0Uw-2f<**Jc}gQ5Y~-p>}`N;6x4 zx_-n}sNr*}flbn{jbB-$t<7G)KD&P6L<|=!Z}%GZwCl-L{ZPnlAU60p?cOsUJX(=U z%51})YukS1RQy)$n_KeWgz+0oY6orKKKR<^uFNcoU%_9s<7iwx8VPD}wjgbjVR&qe zOI=XP;vZ?%A%_}Zii7`^5yu87c<~R<5SF1i#y@&)HxJUP0h4!(Vwn-`i@w1yB8#F0&N1037M28D`u*33ld*Taq5*)*#}x# zwH9H&oAU1s_g}ns^-uR{pPya$`5i3j?RQwx9iJmB#VyrZU$(!RJ$TpUHLEY(cmGeT z|ET>@`e^YNw<8reOM2(_FBaqev$adgJ%$_M(?W4O-Xx=hDJ6IQEZzXz5drAANmt!o zK9c=J)dSi?o3`Ee6WyAX{&~;Kff#w%Z$4tyXNuDo%~of(Di7x%qhJ~s3D%d2`eG>)&^_|nbhoSYNQ_4O-m>RWxo z)8)ff;C?VtC??#m6yV|%6;93|@tZ&)>7~)v6_du+IB~2`XpTX5$zHkNm0hN%%7;#2 zU7K#2|M;eHHB&nJA6>Zcv7R@&0+|yxJ~p>@W#_DjJbG-m$1<}rOMg4t8C*K=@rCnu zl=kYKH}BC$XN{iFK`}itf6)_NOLIo;IM_8W9j&T`cg3A(RVrEs3g)R6sTsIqYbz*P zU7V19>r;zUJLPSfb<5DM;f$JLvu17?b;pzat9=WPeY!Kh*MgeaTLyKxb#C>L%~Qs_ z^XRda(@?t#UxtrSy9;AX>xRPKxnYT7y+!lr6r20# zGU)Wa^^u;7c4WPEYxAS1C8y=j(w~)Ki0_BSo>~@UX)KFeX~HmLamtDL8?Z0KFIEh$ zDU94)RoQoRs`{(3vzBjLGN?frW_MS0+&+0qevf*8=*k<5?-{ye;Zx*8%AcXfViP+b17q24_r5K{YGu5^e2A(0Dk>I5%mb&)s*6NCL!aA6WOblr#7V?PCb%(JoS94ITecY z0@Z^`gn9zz3IRX*7+|b}>v_HN%F6QLF-RWzEx*CMdr)_-;Apu)ehjS}D!h)`djq}5 zfovu9K1uNH@HHW6iJF-m@gYcUw(3S>1*;Qi6zi>&?&XNpXw5p%@>hhdp!FO(A2)!< z1bLn^VXgEE`w90@gh46*yp#(_mb6M1x>2fL({9#HJj6_b1Vd_VzX*rk=v>8LRWsZ& zq!i;6ZfA#yl)&cToZ-9xw+wP@4zP+0qqJ5jV~z@PSIPEl z#Bd$i5BKAQTP$aQ0P6M^pL;K>e6M> zZFkM89T>WM_3!uZ``v;|(+$?k&p*-p=`+uM_EFO<3l_|oH6J=#QSgC>?8I!O!~gkC zb>!2br!w|s?92Qz^diewzhO#-6M>P&Q zI^%{=1?#gul3U)PFjQbRuv;1H!}_w|t|Jdm7&7yzyOJy)-dWuL`>Kw2O+1;(j!*AX z*|l?ZPRT%!tk_OUhdqMi^d!isTvi_-`MAhF@yged59@9$+bk}TUWH7m>ztNEKbKyO zelDh?mbTxxRf9qUTp1!tun#FagI;cchQKb?PU5~s-WF%v(k5YFEmu=Z2eMV-YUyn* zsp87m4hv%P#_0fK8`Q;+9-0OcvZ66J+6sDhU-Eth4K2TEPc zdzZ@V(ZrKbo=YXbI(~sYD5N01E)-xwAZW3ujAgXmqK>YK$1ax(z4$#oj^6{|plMz& zE@U^-Y5V$-3lSO4ud07DB%1Slj3`Es#%P2- zMoh3dn27RiNL*CE9u-JqM6rl8Mqk9oC@o~NV~pAYji@}Y-#7~8_4+?S{VVnMCnfOu z+d`+>>i@8{{!eg+*c@aBdHopBcH^VhPvfK4|0(K^jnDtk{|eUT<8}opBAsbxHQp^@j<*%yY}n#Q~UM$KSlkq z_WxJ)f65?*=`{ND`mqitXm!dP;Dp7<&`@T~G=|+Cccwc$(r>sc`9A-eth;jdr|eDr zP0D+zCsMymwe-pxQ#8G3v43&af}GonjGcsBcl|MQZnu!8B1?T*|G|hX zQ$4;&@HN&!$Pn_eqYX%@N{0xNQ&5nRTPT<_3IkFi&ICaECjTjy2??uIn9aT{xwJ%Qv5=y(1s6Q5OG8PJUir2K7vu_V zvj7g*{DF8%YI_V;CnevBR%vIhK=Q-)z0I9o@d zoSD?_t2?mKsiO-=6pbhyT{bOsTH)lP$)(fEE(WaT^4o%|y;8NOELdGsTH4>!GuW@F zN9n)am(ndrPhb$1!|~1v7l$&{WndwUYc}u!SlDXKOd-KxFCy3zN_muMhmJf-bWawd zM9J^0bA-Pleku@YKm=nw02=4N8g{rnl)QUivL$3l4@SrbHVv`aEKjv%cFs!*XVz4% zt3*tW?zx88oCEu8rTG~tqbm69c+Y<9Mo~N;cx>uWRkQFF#AY*r)lw+b|P=lseBD0~U-#fE zhM)08(u0jQmZ5zA__}8kbUxutNj9TANIDj=L)f73q)-k)+9bQpBWe-Sa2dn|r1Nzr zNQjAb4{1}@t=xeI*hUzX;B8ffa9*MHi`0RiTwfFP(Z$I)W~@gP3Zh;Sg>o*)d|Q%JJpk9c zYp*1E!YRpA$cD>yCbRQ!;jcwp3dM%O69^f=oZoQ}9{PrdN)!FMyacjSggkl3*vmmN zAm(BeJdop{dcYt+KS#_1@Av>=@6XZxe9zmAkVXoQ2v~ix(r9`i9po?wI@X zuIL7_^ZKdXHXV+BN0=CNjyeQ^=N81~m2>nKuW+K}H|!prW|Ty}HzMpOPBSR~8p_XB zUPbw4&{(o?;z*LX zt*Y7SyC;9?yuOR{j5Q)Mu?!VU&^HOWmba>@W6-YEF66B-S`>prV5)FjIE^3c7=nS( zUe7KIb69p*nksf#1o~6`ZZB zbybxRuq2OILEZu>iRUfw>gt_bQinqw=PIW>2A|KLd9h&giW_Ek4u^`mSmQYjR$ab) z@a1X2^X7scGo*iGWVUNJDenOFqg)_0l9&CHJpkz~3(~yPqk6>iVEQy&7IRWW@Hhn{ z(0+<2ibRiPzgN3SuIE<|id}8M)zyfA40(z@4IZh{v%_;7Q4+K+Qqm**6*5|^P7Hgy zIsp?g4`U8Z3%K*mh$XQ?LM-hgFOu(-{~{xM?I`(1!wBZ-KehDUMbg*YaSsDGfb4m8=jJ0m3|}H%)lp?Oa`+oFiDof ziUrxNEd~REP)uQ?!3}{%GMFtgJW?6*5h4!HWHHJT;i~RM-c&`=@uh9Rmu4xiCP
    8!2!Tdenh-E*pr5FLbVxdidrZsT#j6g5#{rQ^8sWlW{#?S! zubay)HZVeEKrO!(useO(7;Q6Ksr^y=_g!+BEF9X>=s5P-z1oYUC3*yN@Dy+`%Aw)c zXOQG?-zxyRrip`Fzu>S4vTEWJM|}0Hc9Ur5vo;u4B(r~luiE#63Cn_@8mJgb!CU$! zC5xBp9IKZogUVU#W=XZh%Wc5@M*|C{96GnQ`)460(ScPj3f>m4NNfMR7qF!PD^vY+ zC0G}q>tD5esZ7QCN)zU*F0Y?eCHF}lu1vGs=2+!0aHf(203o{_DTQ2xHglTETL^(d z1n*6C=Qf#`V4|$u5`zBLsJ3*L8VaQqryWU?aOS&T2qNBtCId1%I1A#x5C=!GUl8{Q z+?2z4d&&`bkmz!XWQw6BRPJ(y;p0p@>aSS%II}+ShcP2wedO8ON004sW1nqz&D~Y5 zeG2dYf9%(e0v>;__WgrB|D1b}$!ylI?|yjQl~bVL2ebk52*iDbgbk|WIWsf(lr*o; zla`yNP_8&NJK30sl>*h8B&EA77&lN_IKah-0Bb?Ga!qC?O`nUzh|Hat;+)L$nc}%j zFf5k0+Zm>44qbe3vGd?HwFv4YVS#T6{4I%A6oG^%9ts%CjsPysJ6V>*r3KziSWjXy z1lK}~HERFM1!iweQFcJG68;{Hs@I zJo#|+u|K>#i)fMKh43A|glGY0_t*|E3aROW1!v7Rv=E{(9W8`*_#0y7ThERuX<#-B%aF=Dv>BqPA<2bf!Ymq+<6pm}Iq zQJ#o1&J8`t$bFo~U&su5>}ocrUydBoQM*a1;Iuy+<*|~mf>0W|ZzoZ{AGU*}w$eKC z2TAaR{6Q!85pfB=u-HkOmbM(Cot()ipWoJcP#xqRj{M;e zR=xrpXLd!+19+3eq~sVxWGiF}K-=s^u3Fa+*BnTY0gb5X!mc!MauskegJ9O-h z9WFu~LEHAm`57Y^)oIKjFATTciM zDLYekrAQ5UIg%o!5Dr6vPfYrnt#dQC+Z6O-P3=kZ8NdZ#gGjK7VlXMmYbml8(UG2t z2c*>Wus<<*c&&Gbx5+CtcpJUzA)TD}Dge!cI0E?|$phMOHTv(W7}kGR_0Tb+4uXRn zq5krCX{3oc1NMRcbk;{V>EusRJK#1bJxe}78L~VShy>F#KQwlQkq2%lc;pbkDLb@l zmy(;A+s`*)>C8KG)~s0pe4`^r#BneCZYd21KJ7SS^($2`e|`GHC$)P|)0)!p5J)Dk z_K^78`Z??=WAB4|0M9|Vp2KQ zAk`23T${{~JYiqU!?;wg*MBmu?*Y}P@cP>jZ-|QZ_S2fx>;DApkICg&gH(STpdyvm z>!&rV*WbEknGp2x`rFdwmVstqS5mSey=Dp9)W|jmGdWCI;%Mt==g7d#nGZQPW$w@X zO{U4>R04)fiNy9`FiAwd2)kgOZCDP7ea!z}8?pfzuwtkP{l?H)&y$=h_V92IJ$X-#jXNF;o$x|KKd>hJUEx z5a{f=F!P6hc7V;%cOW{G#P%W@5ZY?FR*VJ&JOOa+tnQi1-w&R9LQ=eWh?$msHmkk_u z*RR=;%b$XVjDld)<$c)4iPMU6rYk@u;-`MVx%+?gai^A5|BZM34&8~4snW&&RxzU&g0H=P9@#h;9Tz9i7ymm zxLqb4NBp2Q@GKp(AQSKdV`&lQh$aQ$u0}{bTzSB~C&a_y>(y>0+E+C@rr)kKz3Z$Q zba|b;aMgVSi6`MtIc%DMHF`7e&sw%lTqkr;1G11EHW*b{A9rRQ&N`MQ6Nu9Ctn*oN z)&cQZp%&)`UAp9!4dXP_0Lz9@0pHRu^_qZbzeRXa?J5fc2EoFCoYgfoc$NFBz03Lo zPPxBY+&R*}F}rMee>S*(eg9+q&-IsU`_tRy{SV{gss6_P2gK*pUXoaTWL{bMky~a* z${TOOn-QZUcjl9viL{pN*T$@Ezg7A9^t)NulGWH0lnaIhC4Zt>@=9)c06=c%hv|z zz|s4ivGP?I1(cVBegiz!s>J%X(F4Z2w&i7m!0X=-8}Hxh^-DsyLsAmT=Ui3)$d>)` z4qpFbvGOswN)mGO+-{Tyre>U;L2pMvP+x$1NW2Y|hz<{9hGp8)=^(BL&>cl`)`WQW zR(*xh{OK#~daN+sVbm+D{p zv-(l~XZ07gw*LWf9*nL)ZWEc10Qh{BiDJ7uaB1&aF7W{85|HPq{}Bh%x-&Qi5%wZN{DDRQpV?%uu@f@#vX@uO4_7oS#Bopi>Zwi(vKFts z<$VxN%L!x@{788Kbm7_u&;U_X7#DqtKoSxJyF4)(%OjWo4a+catTN$SHOpxAT2l)0 z3XqfsW{ln?z01txkfh@93~4Sgf(!w)t61<^fO1vz^8+;RC`DrYGxT@`t}-1);9AfUmQ0PGO*8~g~oRcE1P<)N5}PYQh=5C9hdKsp!;@;NXa?PYbOi4Nz|Q&}V%;h0{9Gf_9W*2VnmaI*5^RLO-w zB!qhrSV*bUlgH((F6FMQK0hE{C6u3+ernJYGp z+PJ;X9ZP1cXKx>>DLT}@=bLBVe5b?F`F+dl4~V4eA|S{w?y@s zcw!6_^V!dV@Ftg*rkzFtvB^9kL*QH?E1aAL*kE&lEhS{J3MiJ`fMiU~KxoR?*Ksyf z`ON?l&QKGIxhsqsVhte%yVVDK8^|Aqd)gp{LnLKJ#cZtKW}v$~s#=QW26>Jw$pgzF zPhxdqMB(wmZH+{K7owoXIL1C{l%O1iKMV#sT31z7d*LjWb<77w&#(af3O03~B7;x> zC_{#%dzZodXl(UisDPrlERvOZRfeteZ`Lgy^?>^!o+)GZ&1+Z8f23i_BP;KF>VvU2 z-89xwTU1ojrE_UDC1bcQ^sskkC8f!@yt8Q9@Ojf4>dQN?n6_%g@7%vqnj-i2b{ic!MIz{rfzc_Rv8fvkWw zu6Lk!M&G<%g}q7*$boZy4`!{HrZ0=^F|2`m5=m|WsT{MQmUDakGy%y*chLC(_gCst zmXP2#>d8&K?lXRPnz3;4xf)h8xqtt%(<)OZ=hLjGp6khaPA&uRh#9%HoZi`~EVVf? zy8-;7nFIXsybB?=E5uF%*-tD6z@IpqPwekhubkZM%~P7?MS~=)BKpj}j$PNRR>)%59`xhf)%zG1W__$@PC|jFd@n(M4%<}^4sO9 zxrPq#F-pgf{IlFtG>wi8s2E`Y00^X^kQbD$2qLd!V+AJz@FpHp9w!j?-;&IQ zozmn-Fa7a=V|;0KWpSvBclEF_=G`67-?nA^Juj|U`h+}h!rD9UTwlNBiN?EL_~0h| zIctlHs=E|Ns>=;x^h@{5u0@pjX7F_rQcm19cx;#A<|aCX2`rW3nKfL+579S(U>Z|8-QA}3e_`5h4a0V$V>o9Nj;z)|=c`UR}IJrCi?EOT|H0;U}WzbVSc zIiVfx03$2^D$1eVj4+yvI@uUtaQd%F=3hIAWKO=BFtMcTf?nkh-Nb&Uz2_?KblW43 zZd(4BJQW19VqN``CzrPoOefBFh+sZErJ0yP7I6u{b3o`HK-rlUTrY4s$fQ ztSodI-X)Wf^LdFHI0x=NIYbNuu9~tdfO$^KqCK=ZhxkC@Yyg@y=W#wzIvcx4vzi6; z4VK0E03?#;G@9sCOmy0es)^W9oL+y#X+&0eYqQN}G|G!AX>K8qV=Ku2*#?1cW3%0U zcQ{MC!`Ui8P+c{RwE7i@Zw3(_$mNN(?7x{coDSJLG-;QO;^4+74oLU*4oS`lYwudR zv3|*8cQ?NH!5HihSl69uW|dW7mY#p)_8Hof>%A|s?BU@n{W?z>Hh=a_H+AWpI168ppOxN))J&)hR$-m$2Ot;P0Dz~60#|3re9Q!&V&t9S4#oIZ;&_g*dK|N; zKv?F$cL9q%VzEfZV~UD*iXsZq9CnJRclsGT~hyWn~~(jvj0SEBNA7_Tu+fioaJr)SAD?ANAmCZ0+yj{9(k* z+1coWf)U);Tu~JL@k8qij<`ZaQzpbWwK&Qw-#A4|!g^r5 zCYYT!!+mMIYK2iI#EJoQEVR!sQt=0jpOz|O|+4dIwI&H>3c>W5_sdS4&> zyFeZoQt19_YOvY}Ml;_@TQMatp|uCkWJ-XA7w5b08hJ{}{=2MDF$cMdS!&UCn`FzO z77YV<%xmJ~0$MjT5b`U4ac7UK)m3m?MhH-muq{-~*-_jaUW-#{o+kGv%Z!tXOFR zrnh32bC85GM*t96h?7qRz{4CY9XVBMfqFUz4ob{v582n-cfudRUW~<~Iy@1ZvA+Z) z2<8C4f|kZQ%moKHWOq9QGSgQN%%c2sKnnA@ATk;vkXc>KIKYhr)HN|tuD$ZL_<1y4 ziu^Q)_ewc*QG4x2ZSIe{eV^>|)TgK7eNr8~Qczd1xZ8r>E2#>-B7QJ#uSxMCjW+eA z3^PSck%@wd1KzGT>@>&*ghkAjm&>BSV0&9d;xF^mK?*$g^8tGBq0%rotW z-4$wbbll$EYLPj`mvXP?Zm&$>y(`6g<$Fylt#<>w*F?a* z9!H7`dFp`eYdj&Jw1}zH?qO(mYHC0vf0ROG`%YN1AiTJNV`lWMc5WSj9-J*HW`I&z7gq9gZ1tVu2a86s} z2?@p54VTIoif<06Y+nq;cd@owJF27jp5FHYP<-G0FnX9z(9e;4zt?`$k$nICZER&h zOKhZ-Wx^;OQ!7jspCwo7pkO+XMM8$R3noNT^!Fhs0U=fJZ$bv6+kn_R*(e!IoLX%d zDL|T94I&!>2iGYo&NJ`>f_Xa@p8|$uR+B=JVj!R@26#Y80=&tPC@KWE6Yn0KM7>bH z{ZI$=_o)8@&%NiW@n?rRerJ-H0u}!pbB~P#R9=Kd5ETm_HFe zRz5a=Y&+pP8Tdy0(q{Ih&k!fuCc0(>o&)pt7`>+S6af7x+m-F+j}0H288IhoxfD8x0B0z)NETZgirepIM?3@in z_ztJh>9h!lEh$wjZMJh3by0zaC7hCQ_E zUSg@*WrV8sVm;Vxc$XG!c>bk79(?=gfgM+d@WK6&C9)dk2F&z5+PB)f+CP8%t`0imxq6={kz+D`jA7%myx^DVGm6Y@EoM{HImg6~PBuxZsylBN-V z3X+gR7ReS!HX;8~wx^H#F4(iVCZt%A!|Qo@3{!o0e<$hnw-tiQ_POWm;@Rz0un z(~uwPa#v~Am5u1xX4u6kvr#g6d17dUJ}}) zvA9saO<5&uW7|ZdSMZ5Nrm5l-xxs|>E(jqc^_JkQ1ZSj}NCU9v32?Q-uSf=JLP8UT zq>=HeWx3cWo)S-sGK`g0e1yx>Dd{wvo(?f9mrj8C#}o`8lB@b*tVTX|@W({%g@k?T z?A5Xe?N#^_=FY=Pr^PPy6>ZvKZLPLl`!%KxnReuw%aHFd3a~sF{CpG;E053HFbd=! z^#9TJ<^gh4)#86w^;X^0-BrC-@7*=M&63GXlF3RSje&$cAOyk^gJ4KNwy+~AsH_qo zfU>Hf7*-JsBq88}f`U6D%Bt`L0w_paUIfW>exGxDCJFl9`^q1`Tgh}+cXidd=bU@C zd+xaz*_#F~IR>nLe@u6oo>RpVe7NlpW(+nS_B|nXG!tW-8V%D>DOy9ENOAdxu~Vyo z;eh@y5nnCf!R|jWIux7})Pvrj*Fydcvs?6P31CaQFs_fhu2?)Ib&Uu3hncnFEyTXK zqViw%O#G~`_TKNNd)IE+`#|5}?_nvt)A{Z@q^}6%DvLx};bf6O&l~8;L?CBPV>=wc z`~gy56%t%ZUO=$gWlK?}29K72uyV1+wpv2V-{AW~=b2IRM!?n&-rI#I2*O|P{`jfjN^T0lP%}ghahIUTpBl;8XJ*{2R`Me-__UOAJwcgb37c7ruqre}8|HfxR6i%24;d`3@ zKy}XAe{gg#`~^RG@}AS%@u8w-_y?10rxFc#^t8dAgDcxJtf~Z`tAwB1)COJ^xjABB zu0?YSzlIlRqcSvS6m zu4bZTRXk;x>&>YLYrUVnLu;LS?kuhKvCdyQ&u;9D9>-M49i6QY>fY3rH}!qjucut& zSubz-YOu3VyDNBo=M8#v6g@JOCj3@=>Fs{egwOhagC_iK{8=>NtC8?Br3EhxTw+`k zxWNdDE)*MTx$gfrtv9aPM6umu^Sx4QqSRIu{iw9}sV~7+6h|i4vV0ZvoR`FEv6^sP z2@EN1h_u)zWaZce$Q9ei>4+Dz$9olqaBlk ztLgK&js}|J$+VfRuCB?|+NQI%Y4u`(Y&X&BL3sbY{e-+tX4QllA%iM zP-{w8Y16*_UCp<0`R!kRYW=S-Kli*cseO9Ts| z1=*rGGn^T0h^$N(12fx?nN8O3%o&U_GKCh4NAIuz43m)jxVt+?X|2a+m16c!G`F+7 z^O~_~mCRTyPb?wj;YO|0bdL9~x%|{U4!dkDBlftje+hd?WKV#RXb^SDc$T$$f(GlO_wdd)4$}_v z9^^mBI9@y6`!WB=j5EU*g`-A*y?JCHT9$Sad$?P&yC@reXliq@n2*gJTz%K9Mb)B3 zPIo|#1yocxPr?q8Yo=A>w%eoQcc{fcLBFdi&FKBw3!VD!w(8dyix(dBk)U>J=d$49 zg$oz^e?1x=HMK*uujzjsJ@=nqyXD2%OqM%TPRPu5{5=2Le!b#9l6~K9_TS4! zmExg=*+Nb1HSbvdd!77upJ*4bDEz%*v81xEV#cER9#scD#G z*ZT7Y5laVW;b8w#{TTmg{xggV{1+Lw=yw`x^luxF>DCu@t>E3+`y9f~==BZ;X8QN^ zf82X)@Q3~%86={!2*4|g0KBpYz#x95hp13udJv9HUnu4Cg{X>eAkP964`)<7<0`e^#~Kdt03&!alG?9_*w46|+Hd|_YQJ(%WT5}QQv17U{o<%# zV|49oOpD7&?cW2dVIdPAq>{H~w0Bl%CwF!k{gQV3Zk;cIG3qz@KEi01=)!z@LYgWa z3WkH`^1w~84dI`Jp9{Yce!~nYnHLV3Oe1?DK}252NQHb_$iTY|GDsqXOd}qxsvE?U zUTV)lWH){$FLD>~=9O^LYEe3q2~8 z%bq(*@VVY*D-a~4>2;I7k92;&zBaMdyRP$+cHNCy`X=oUhh1~t$2&QKkzee5T(}Ww zzYyL@Bllv9jAISm^aPR?C9Xvvtc$Z{hdGwN7*!G>s%@pf#F#`#N&e!F5~{~Q7cz!8{d2Gyz8zTeN!x66KWpjYhn=}idgQ-@>NKPe$UEw*%uG>7=7t@ zt|!|U=!-0hEe|b^ofW!0{y4I(LLcv|R)fw%`e~^4CW0Zzo-c@tl*g)6*wQvKl1}%c zqR@kGuMAEbChqN>5Y4-`U31MvEJzjwF42ntCijNe6Nh)*H0HO4M4PLvaHMvID(WMp z-ly6PWctW7cS@Q`Vv<D;(17_M}PLg&Hm}T_06zeef+e;mkk{F{1<*B zxKS$s$fVCmrapGe8PIz*dLV{BaAJG1r^*`d8$-8;9tiy`^ds{*|BIm~%s=|y4*kJ2 zXBc}Jhs6(09-KKW$9_6V_S4CQvx2c8dteHZqNIe!(r$RyqNOz@^=K`~(O)jeyr}H@ zA!MG?T|DPmJkUUBjU<@bk@{o*k{fYF=e5OuzZ-{jxbysPF1zBwQ&+6~%-P3Yy=!N{ zyW1bM&@G+&-*~0-h;E+$wY67Y^UW`hQJD%&yHKI&l(swFm~SjHjwqZ_xup_7PDS(n zZ1gVw8-Ztcc6t(G3M~~W zrwl1y4nlW>cwZzs;_i zO|^uQ3)K=zHB6J*CZH2pc_ z!}_7d=k!Yr|DF13<0<_)<1hNC5eWL5{yn|kL(Gf(7n@$gB$^fWn*R} zD@1lP>?Oa5ONiv)ma}7BAQ%eAbQ3M*fzBta@l7G(djeag68%^jT@bw~sx!7vSmT)j zJDkwQEUkuz*%xyuyDD!cpd*!W#@?uTd`wMcZjP-m+cwk0)}GxJXk3NZCGUgW57rDS z6(rG~K5g2Ynn!DP&eyK%e0Qs-^N-FiwQEpAY3)y={i8+g-A+({1?(^y{j0!E!E;hO zWRhOf9 zPvCe6l8EWGrd(ECn%iS)?iF0=X*lkA*;QFRo9)}R;8s(sQun63R?1GDl=@}Lmr7Nm z%_=+X-75=W?eIzAUxs~9+HEZA9orA;t(o2Jpr#O@Vu-GQQ)N%q_>?&kc#w#duK2Z^ z@jmV&=`A;tV81b`4M@kfYRHjh#yvl`*syij~~CT+%llj^#m`VQIa%J1&3>yrFtq`C6D$NXa5 zQz()3`mgJ{{`DD`sb?t9IPGX5JmdGTDN!_3Fp;OM?*CI@QrGtlm=UhuVPzD3P!Zt3 zR^TB5%=MS!y-gVFcO$1Zvn}yEqOk(c7AYCP^T!s>#|FdTFl0Uq=u7^alP`s zN@=vrVt*ASm*j!~w&toQzPD1rri_i%%nOQfZ{_GR1E35agUY#16>& z{@1tvq>Xf5`Na{-C+;!*qvv0J>8&qxp6%=_ak=#$>%8}uS2~-j|6RTCW5-^5=ICnQ z4}`MBJ$+we@6%}-ac_mio!R?TVKEr;NIW92J)Qza7EuB2Fcr^ws9kh?PN5Z;A2`fB zG<8Pef`oBl?6Jg;QtyR*33e*}TRWjg&8R*nv_SmQ{f$+!#thj%9M6pyhJQ)sB$BE! z3n)eD)xNM zNU6BAhE?fId@bw^jSCbq`en?FwVRn-A5i4aK6Ff8MYc`Z93r89S z-D$+rjZ{39ikBK;BU~+3N()NAEWKUw?aw~GrD#t}{5nB5ntSE?-e@(SPmi|j&6C+k z@$Um-B%Z=zH;^nPJIEC2hJjY7Id67*BV$C>hb7Th=Dw8z9?~Q?Mk!=hmOGJd==#2| zU3SxR*I)bS`q6zl%lmJ*ur{#&g7S=_ccbQBdcwk0-|GC@d-6d~U;V`=_xAl@bdQ(s zJ=g1hC)PgE*Yn=&!jbboMg>{5PmfUm3n^+IUa^|QzuJ_}dvXjO_X=qzHm)Kg)M zik-+7njk>!@`uGC8Mh#$yV8-FsDJH!clMvZ+j@PDcG;Jo`_eU!ZlKpII?u3w>J?O6 zbypt0aMit?C%tDM^vreF{%T)I2=G5B$pLis==sMS$;cyut}-~Xo=>(%mW8f1R)uae zZcF(CA#IQN1)*z0-djTJLq7^V9eUUBr+kU7Sc+!!ECOkpFiKa4$&M9a6w1;+!st3N zhD+Dw=VUczjO|xe>>!Lp5Dm>9mqHj1r;zSGCWgv-T5M#AFi4Etoh}0Ck=rhM>Jz2T zGlla`z5cRs(eu>&!@hXQ*E&0E(;m6>$bCka`+hJccb*WrqqFu$$(`c3+^G{CK<*Hg z9UlQ)@7eli-#>$cT)(fn{#h#19@dpp*@Q>dP_QOq{Cco;J=RJK&M>Le7!Hv_(J*}m zrGl8xsT$QG3O(vq5cD#&#*qH7P7yt%Khr$K$tCD~DH9|rPR>4#qP^eR=wam=#GW)v z`3dQ+I=qK(rjBf{zKhn|IbQpMOgH)-`R6VpNO$=mt*$7PaG2 z17TCU!kcX4CZBc%j=C=<6FF8RM$w&?XbN3Py=a~}46n5VLyGl>pDNVC>SwW`_yFC_ ziwD?9Pf}^Njl;$^{=3n)$Cj70m0y46`Wt?@Zgd~mulo6u54`f8&aeFsZti?z|7WiJ z;#2!=E*v@U7^$iGFZ03dgpRhjfL{1LGj`Y$`aV2QwV1<>vt#Me>o%_je_-FaA__HFGi+9wYm{aEK0-d}))_st!{TMii? zb^oKD-I#ryHZL}B>cO#tr}`{CN|-i)~wTAWn|s?zTCbc@;vY;npofRmIUj}+q-0`y4PT#5KFEij!T zy|R;BP;`STh3mw96ZhI@?xG_Oe=6(_9Cpyil){|-kN(WQk9WR)uQz5CXY4Vx^Wv1f zrsFjm_jbPi_+Fn|y8oQwv1^Tffe}ExTEN$M%IJRrkJ3c7zc7(sra=_F7A{lf;0L zIw0+O%pSpaAl+$BVnISrB$nW|CNqOps8mXXu;~N2ma2S)o<;tyY+JpaDp`G1D^cNc z^sN#*!#pk=Xt-gMSQ9*Hi9km(}%|N(<<$tu6~M>l!1QQVJ#%s6TABfWJt~Pt#*$Q z$Ofhd_ORwV2d5Th4ss64U!1tkUYB{-_pbk)oK?z^+`qnUXPs0w>o}#_IjKuiddh|K zShHR8hz4KU?lJXTwq_if`fTdal-H9wGIet5rIc@f$|K}Tj?XnsRg^4FJSBT{L+hzl zYs0mNYu=h*g$>fhypfVM3~}rmFv94Uq5sy*#l#TCN4*So{PF*LsJG(o4O;Kf^Y%Pq z@ew}{yZwjnIF#@4Mg7&8d+seb99qj$qjVK1Jx5}L6rR!6HYCIkpO?J)H&EjJ#ZKHq{@=@m&r&Ug+9 z=c=}=@+|OqImdsHY9DwSScl+BSxLZPd)BpQlfCXY?Sh{77wiH5PX3vJz5IIyOh?b! z`uY0jWv}M*bp2p`seXojng411zx6;yCtOw4J*36H)ZR(Q!}55mKCDTfpHb`8svet3 z1Y5T~q;xTZ!Y;$nh7n@Xi_HW}INY_L5~RGb*Dtb4rEg(2k#N{8gd}YAz8o$!QGkcb z#E7=yl*MtCfz+jyxD3;^y;&?<*QR#j2i$(a=k}U2W!a&9@J&#E_q|)!ekcBdZ|_es z&qgdgaE_nle^^&#c3F21Ngd)WDl96W74)AGJ1c%+@S@no@%8=(g6nM~n{RYClXnv7 z5$1IhxrT?#tFW#cmFiFxKMHxA&$L#_44j$Js^Q!!F%L_viexC^53f}2fEXOA9tg7J zEwy7g)`#dx+)d>Xh^N^g^RF%o9viH+kQq}?Lwo_7xn6?lw)efx?>k@Z5S-CIto0zn zYn*@WwA#nG_>t8zBl<1XLMmsw%Gsz^;r4U4Ud5xLEB5}RKP z-7&sYmJ_2{jNDIbe(%p>Ckc0otpvw?if4OyR?4$`yKsYXhw-@ajNx1ETb|SdjW}hE z^r#VzR>j9?hcY}hHH_$zr=~^4$t0%4`VccBS;V~ul~EYC;VZd3rFw3yzojCh;HxA9oR{13pfhAF}$ zn6g>*_trQ#V(4N@Bdi4|6+i6C5B`qRY8+z39{fFS}1XlF@YsKD+9g zr}pwax@B^4$-JYFlpI4QRD#oiKEjN8-g8NN*6E?s?9-DM*cT-IOGC%l$0WU%gtcd- zQ<*OK5r=K=qjVwBvV->q^>*-ypuRu({9>tvBCHk;vXD0?EE*?0_$4+T@M`1Eu@Hbs zqOPwcKGp!*QN?hT>n}Z2$uGjW+k3d(;}YZH%P`BzFa6gwU;5qy%I9)Ff5O5`*LHsG z+e;W)`nmA=%fI;aJRGmxk2=cR#)a&9jO5}niqoEtuU~EmnY^soP!tkMwF^+_G($^w zd&z8fq+!Ne+w%R|DQXsq#?f`1f3Cmg$-TvETuM|%^Bh8q@KCJhqUZbVsmtTnhOdcS zAHP2NbolAWGx2AVon$!crRrg>H{6@tGrVW=;>g8zXijPYf+4j(iF>-551K}lFrCgW zF-{_EXo%ce61<5SgsnIbK_BtL;)0@HEGB$|rZ+p72o;NIt;K=bfwon&pOjFHu^UPUyr=bV$jA(ln;GT3WzRHn*!*bRCzFf z8J!)BhEkxxdv5#+sd=3&wC<7ACJ8TiRd^vxQMnyNGlk@oHApTKtg%?ev$Che;ZPw4 z(QLx-QxbTSU99vp^%gFkCTlDbad9*P*J!tRd?9+p6qI|3DKwWEy-E_Uf`F37X$vlMODVrMv8*VxPrG> zcd4xCje^4!{Ozv67MGb>ImrN%$t_8}mi13+m!J$gS#`bRoyZL7ZX>h{`1ALVUirfB zE?W2VC7(X-KJBRAUV7@v+0U;(bKm_>y7x8zgY$oR;SIm5PP^pJ4jWee>Y&jtdH2g4 zzVBW~*w_ZD#*Ug(C(Z^gk6^C$2LB7pX!Ln*YR`Nmr}@1(E0^>xt1W9R@4G$uK=LQn zPm+&ij6IU`Glx|c))qDn>sww4wnEcGGprfO>G?gZfZ38+-T3~5U;-*WVFk6VB2bw@ zD|&EDPHPuaq&g7AbK|=X9650EfL?a9YE_t-UDPkDSXmoKeQu1XvHSyBJGWvE@is98 zWP$o(ZHh7kr4VCq7mBHMXFlpAHhJ7BleHZ-?eO0Fz0j$DC=}`!-u`iYmmgmIE3K#V z%guLe^_&PAKXUm_qrboM*cDe^ef+Us@V{{G=d_*f{Lbm8bsqZdi=BtR#s#};pVs!< za>$i;-1GU%?xu{7SK?m28<`)B5$maXE@~HNBxaQMOn5PMOyr1J_dXuk=zTTvdLk60 zRQc+*Rc+UsBllFbO;wG^6vgOPuki#(Kv>;Ql2Vy;eZHdm1g6KXJx-P!6%>ypNoX-` zQ%rjiG)nPCnavg_OhvGm1?ooD7n73Kow`j@rE+_6r3*&HqoA;UNqE1u36E?Jfjvo=6LS}LQ9^Cq z*xtqZ&pZ1_0?f->zC -OlU2jodwo2Y0~+oQKoa8G)$R7glK*pd{9;@HZTNkh~Vw zYu=a2suTeU;j2`E9w0E!N!jh)_ZYF;*z6Tsn(zX{sop(%Pwo9&uYbZ|e=qe1%updTFZ9XK%8;MQ zHh<7ZDcrymDRMsL_<>fKu=C_Kr<`-dq{hxCALuSVf7al%X__-_`h=OE zSz0>qq+J@5jyUI(YdTL}P~Ulm_CsIa($3Gd#tYTjRVNHQ=>PC7=g!r&HJ$zDefp~h z`5zoO;i_8oh0gQZln>ALb!2UNmc4uKB7>*t`9(WVhE}c_zb$rq(SJyES@ewPMbUNf zAH@S{QZ`n%YaWpWp7!wM5vJXic(fsY@39J{y*=f7%MX{mnw#CVw`wlvmGJMa_eZMKvV2It74aQGgv7E177T7> z-mV>ukCfCbCt{UF>dXtk^>F^Sz~L(rHe4*J$wP}zVPtH}^qM+0Hw8vpg4-QL43>_X zw?mt2-`ev-JMFpWj79Z7*WbMM;a?wq)ETG0{#@t$g_^d@6$_Rey}x$<`sAKNlNSyj zHf80?doMWfgrVwZKl;i0w7#J)9XMl``66eS2UXeHAU%1N0@bz!UO}Gen}zn&jxJ_e!VGk!)y5@G>5?6fOHWr zgqIy7dfjN=cK7)^Vy@sfoZ)$*A(m+D~*wS+iw7 zftTb@c}@lA5HT#qtde@&>8jL8do5`x*1j`0|7a{s+^U6Rz%Q z{2*+~h*><90RvWY%-F3&?x#GvZSWXdpI8^NMgoS!Z%@156Yz#5MZKL0o8G2AI}>29 z56ZZnL`L?bX*3{{ZdmBbj}(cmtzb$^xw&dSxiwYQ)0#H*Mep66*E^p%=$I9APYg9D zWM}3j&Di^)PHo-Q6BEDGy?fsUBx>#rNFtuM+RioP6=Wl^k$@KR`V5mijBK_%LSDk_ z%!rmpymF?(Uvd_zMo2yv0UY9u*QNqG-)&mQD@k4?Zr$Au2Mvma8yeLqJ?<=T<^ss1sVb$1d?4-NeDSw;#_kO>ve~;CV@}9}A2lcyTWXoldIZ-(J zttmMf)>+2#Mp;}wlUS@0v3Q^Vn(GCgBzi4PDnDVMli-D_(`w#$?MCeg4Jft4-|mcV z`o|`CzNo(f&p$M}yZjf5VF&p31y82uzzytjds^FlLgHRzv`L<{kAyarRU6Q@5;K_{ z)xs(qKMS-A)pVc=dggBM_<<@5_kiA}uAtGitpGVY6lf}UUI7!-Herm;A(K@I-irL!!UEVe1|7rO8(!qO0yrRqN{3GEOkClG(CQ}hdm$#lHI;V z9vh%go5UYxiAZE5^q`i<*m<}+7piSo(>0jnlzMy{)&w5~8YI)-2R6z?sFX(TT1%8g z_I|(f4S@NEvY5Pcfkf2`RawGE@MPJg=lHVeBv=9Z-h6dgNwq4oD^q?2d?>o5o6*)}en3U`NNb}I90dp^uXs$; z_;+}(Z`PbCmmhxDvwypF@AGGL-q`ul{l4)M^$riXaN4)`JN<+MK77h2_5BV${?r8v zPFapC`RalNowXZZ>pZgeUZZd8@xAuecKOTO+Khenne))~H$3>@SMT|X{^M(}{nq0b zU-=j~j==3lDjXlKsCx-A?IFeehpr)FD&&pA^)OqL3N*w{#Xgnwtf6Fj#1phtD&rpa zMfLw}6d=GBkK3Ly8@)YNr{Z*%Fb1yFawomKbw*<-B{ zzbG!NH&+wwu{;s7XhV_a+frZy5n;|w>&=&#Ssarr$vG)RhD22<-XujSWC0IDPi1YW z%))L|m5f4iVo%YEm8JXcy;#b5e*NIj{9+$O`XLKZ$ifC8!FW z)>&g9K{7MmhCJQPy&ll^XiKE^{|TQ|LJ|0^Ikt%0armYTZG?bhFxorNPh^;);bnk1 zm;duM@2M~U^LN{U9it^HvG5Mqu>tQV<2kFH!h;ND{K-(u-wNICf588^Ka>&Tl9seU zSDQJa3g`g#0THa#Ys@ggYXmVI7=s8lF?&`+zi8@9*sv74F`96LyJn-0Iudxclrin@4Z&+`x(doOx$nzYaE-Kk=sH zF8-!>?&wJiX6!plBoH|efdz^WQbdh!YZnN37#Tm=dH&n|cZ44BZwNhRgdb-)j!v@r z>UQeiJCqfJXT2Ftdjhtrgtb)tyF!wJZNzoZ#7t5m-O;v^6F576UjB(ZMYsNae6bsf zQZHD!@(PpV>vbi(q+@lvEitMcJ5DUK+ii)+ev!eKzxAH8pL%NaHs1P=IpWM4)_GA& zN*&D~`pU;|xN%K;k9}wA#|Yo)GQaD)VXXgWv`c%&H5NdH*w6}6-T?wOfPlySj~PE^ zb(xA6daa(7uR~=b% z#;<=px|+9vb9O)Ty7fZA;hT=73;R!pe41wlQJ);%OAg9q4hbzX7g>kImxY#_%dKVc z+w}E%nCSQF_CSR_WK|6;smkITQsr5^9$`pNyHp{gA#59aKM{Nh+4rEffLa5m-5(An z_7?eb9~UJb#0gEquX)?d`HqJI^~08eU1(_XS`fNgVN(4W1Y#UyO}t%q(df z!D0R=SG&QR4Zg>H`f~sB*m0TTvP+9g%Xj#Ki~NgXhh+}SE-WrAt6Xt0;*+v|_Wr1u z467v?nE*-gj_V~tVcUt48`{;?5^5QPvXWT4a5K_+P8A}rP@$fGkFToUcPl`FMCbM1DuHDcLYZT%k5CM!@u4m?5> zRbdH_CO$>Q71VfGJo>(b1YDZM1KXS$4arR8+0s<_Ko%}xcKG=O`(h`}=XT!6AHHxT zzM-?>#|O_lRIC}B9-ALqR9arTEx#_mF}67t4a5kSE~(XYy%{W(D_)mEDPFwA)9z<23EOTl zt|nWS8)p4a)oDhQsElY^ahYcKt?IkEPd~YDQ=k5JACVikRi&Vcx7uvDqNkNn>}s13 z{c~8BfXwVpQ>y}8Dh*~#jCPlG&v^@scXyhjtPPf`tSV(hl2a%~oNP3w7I$}-5&aKa z&K=UZW4Es#dEQ++UHG+y=lAa8PIkw(p1bNQww~Mls?MAHFF5t?dqx*O{E++0j|6=gX8u^7|nf(FkptM!J>>d2?1JwE>k#6hPChcTS zip*_l=XkRybclI~wJ5$kbc}h7wLE@1=EDCUqAoio<9015nJ1zyim3bhz-B5+i?~yw z4*UO=Ih+4Y)Je?C6~tzohVJ%=v||_021Z)5<+828Z@SV>ODyetrPJAhJ+6IXS?7;R z+G&mdS=xa^wR4Q}UZ|?U`PE?Z8!A_1A35Lp1ZwSM!SUG6dY7|&;{RL)BKx3ex2ijk zgNr=PZvAucRAfkwb!|6`Jbj|=;N*J=)3DuFu;snOdq?mA?}lJVn0Jk3_H;F)XMsnT z!e4q?nbJ3kDey|u6Z?}ND?7Krwde<=Ut<-Y2Dph)0=c2EiGxN&D z)xnbYZZV4vUAJC8VfZV@-EgCKPG{ivUr9V~%-Bo+)s~g}PoD)cbY&;M1ul}zdR{;Q z>73?^X^B)Um1xGAiO1r`0>cr8!c zLz>MJ&b-)PS=ZjRj3;s)DZ*--NXbPXv-cRw*r;Qv=#rZ+BX;o$tcC5zSl_pq4f>xt zlzGQsn5Sj6!guff*!_R&d`Al$bNE@;trtHW?SW6;Ij4Q&S-0G^=0m&hGZQOH9J-do|Jx3YGK(6WOmd6%@D6egza?2bv!v8F?l*#w+(n`_| z$hO&0UcG-~Or#KtuE%5)OZmI|VqWFn{q)nf$tE_&+%A;HWRg!;GU;PV2VCZP9E4Qc zN$uq7dDVxjFI9b>YL7}?uWT#Gp?25q?)*VKact+0XFY#}W7Ha(LR#ep?ywsVc)l1< z6lV;d>%{xu4~aC~Z~DTz^0_h~W>ZwVSr#@M%{k^vrv5z)#|O2adUUWInxnm>>EDyd z8||lSf=yY~-nBh^+Ref|B({rs9Zx6O$jSeh+pa(Vht3t?30yG~lI^-ST_23uG4DNr zcZq{cZ&N1n8fPIlNH@ootDt1>hCFg~E3lH20(IWpw}gs@VrzzY$OHPZV5cdI^}7l# zpl!lW-xl=|NBG~Kx8e_-{lvuAoK9fNcfhgc*;TtU_&r^+$ZBhcQ7*FX@>A^y1-XXV zO_1jIs0j}eC0IcujJ0d<)7qU+KFPc^%U_Kz0(A)Qu7|mSf3`nl>IMB>>mM1PQJ^e_ zyJul{_x9L^*pDJVjr}C?!}POeEP~jq&Bl0K2OCUka^0f!=(}p!&Xc2$cmCvi z_Qh{}^QFUXyWrbTYxXX??AqRGr@6bmssD6zD(ST|ypNM!`^_yM_U0b?-CJu;zUTBm zU%h0>8D|`I)Y+rA{*EC?r8tlOZ8c5~SPK%oK~W%WY65th3j$h2C3gMzKAE2u9d=>)*|S<(>*`XVN900~c)-+_}4)Pkloo?}MB@@PSCC}2?f z4Al983MP8geX87DU{ZLKP7+1t8|gv!D}mUjuHa8NEZqfpwh@hHh z8vq{+8{AGFZbWzpR3AqLZ~lcJc?@X~3UGchjxSyXr#qaEp%b$WQbfU{G`3U~whGbT z@oRx26g7hp;XLk5XhHZ<5Tr(ox-Cct*fC!0@*__Uc)2M|2&_IKlAv{rme8Ivyj1m6 zFDT?XLl6t+Ne{c{iZcWlYP1PgMk4_^0+H_Tz{v+{!H6^-8HvI;JW*&Kfa)f^F8nAk zDTv0IPR<2y(gb+WB2dcFg|qt;BM7g^@Z-LW8rgSU@uTo*I85)E95n-Blc^>dU3lvT z0|KORLpT*wD@K>@3fdJv!W^cYm>h^LZ;%QZiXR045fbpU+=6?U5E_1rFqtKH1cAbL zuns4}f5N>W3U(H02I1*V1lEPI{lbgU81-cUlJ6BiQjZICY->Vq!+=HPX;kO}9Fwud zj2h36(h08Sk3eMbS1_rVm&Ln=h}9tcD3qe7!X`A~PW2FZ?KT06{|1RB!jIuDg#!?u z`igW-?krRhRt?7@L8_l|9b;~cA32GrF(R;obe<>g#u}Bf>77@wB_Qyr2qwbPkY8v? zc7=>E>7aZKZ6!xd5bWm&@QFGXlu(ZcS*E0fKNbZJAOQ)|)E&6Vf7*WVxoV1 z;58C3Bc_xq0wuhlk%XXh0*0l7f^YsZ62Y0U5+Fq6vj~UaHW-V+h0;|3myZnYA!z3k zUMZ9er4(ZP{8a7&STtxR+yR9EN%)wt4@6Xmgh|;=3SP7lEXfgQ=?2uNjJ&_ggYtW! zo;=l}Foel-SU1W}KWLZ;H8*(|4znjTsDtGI$}gZAzKHxngor%UKo@h00FTJ?rODTV zS9$F=`VMIH$+RGa-Mx~57cr<9#-I_L3B?Ty32MjK(Gs|XfL=()SDYk3gBtyGjUMf%{tDv@@@=`)F0X;(Jg5dxp z2*fSm020c%NaK`q``MdncIp~!EK<|U0DEqj?qG%rGuc-VlKY*Z8Q#BItAq^D1;WSuK zI8JCwAwXb_g`<#?$5W0I(ZCHjjj0#70wS|zE@9AEEXvlp7Pw{Tf_Clzx6rT;VsbO# zS0&^iJiW1E3=HULu{_L9M1&u?%8qQ~NBM2Hi53Y_oKdJO(2`OR<*hp7i7ao1AHklW z%`Xf=j8XIg#f8F*5CD?#2&~*-?3VH(IF-w~4M8Qkiu<#a2ROPEHUJvKGQ$1Fd6%92 zBDNK>)i@F50_mhME&QmML2k=~Xgly@7>x5oq!7p(=STX%$3jcs79#Q+d7**|Hd0s1 zi8|&Jf7p<70UHPzf+jjT9EjU&{S73x+=9^w9X>#dgl%c`-;P_L2F@@Tc?|fNf!U3X z++{SyU}N9_gmh3E-2s|0ZOqpS&hg7EGz^`y5xjmYDhKC~Xq+F-82c4iQJ+u|3kl}n zmm*;h8d1n%fbTGN8EnZoLCufxBg|$ByYcu0h0ow&0i2J(3isd^U?&ExZ94`(#zBmT zfC%yseiTx}*)g!icIq+y(gRqP-q=i{$`geb zBZiGoHX4ouBS=ObzMUV@D4dB>3MS&f0VHvVKvN@*2mhxn9GAuq;|ZJHNMxk&f>yNt zogbqB133RPKdP@3oa6i$@A6|DJ`BX8a)2VxOSfb6-Y_l8h}o2w+|G}RpzvdidZ@yW z{1NL+_)$a~-IFh1Hj9qJkI9538V^QfZ#(r8g~0HmIweXRQ(eLaM4+0^ zB@w(>6>@M6l|&%Z`%u)5hwOyyhp5~gLl_BQ$y=~%anDf14_441@By}yNI%nx%V+Sm z83W5^It5iAD=lT>K}n+#pFoUpCvbJ0MEHWL#CB`C@c!qb}s zW7@<6NTw}MI%`V>H)L+yg8D`TzX}?UH~c>yoDy3n7PVu3crwn|vem=WJYP&yNGQm{ z>w?StFpbz}oLP_`+b|+O=11fAEIxP$*Vqe(YPdTHAJ<0~! z=~N^wTqQcfhl2_-2)d-L7|)Q~f^>LGJfyJ(#^KojTnh4(OPfd}BDQ?oC38^G8yKN( z)DI7a1+(nOimc)j94v)t5D6utoP}TxBbzqm;K|Z?8KWPlMbpy2K{}IUc*H=JZAUCW zEG|w`7bXCb!v+`|kc1VwE#e19!b+CMY91nRG1}3Frk@@&7=^E_B%ei+u_SBPPIIg7$c zL_PiH03fn#;T?-1b=utKvPh_2FR=5f# zuzWbEAOj|Lc!F)qZ9zKE!#|TIew`JBmXTl_xe2^6K24=k(WHDVx(v9LQUgZeLG~iD z7@Bb_VTn3cT&d0#Yb25^>$Z^-Rydnw12Q1V#u*8gh@lVC5>{3k{m7cY|5FAKs3wZc`w` zFew>mrZTCZkR=um#_cqB;VpwbnS?AR_=bhKi6C8c0>yHYd=^XE=~x^rN2%*YmuZ}) zd1J-l3P=Di!W+3<8ji_jlBhFsQdU;qxbD0EhU6b0}|v!lt3g)yCm2@RVM=xiaGOc!!i zLAZ($z!1lN!_hTj#bhFxNXTuGI)e9cTQwYt8xSlOOv$K(XZgZ$97Yu%r#P@jh1w}# z6v`U$a6C%QH4vOKQzoB<66ze($Lw?lu1!QzmTguFF*#!Sl;}Yl74<<{$}ULbhs9zp zm5L=0>Z!Dq46xf9UXG2`BEShq31F2&fRYYMvkb5qH@a{Nqynd$$&pJZEF)aGe8I^llSPJ5+>BePsIYCCpK~*dis)?H zk#ZO|h%_-}4I?jO8l$05PJ2q#jPN6m%%!2e87I;OIO7d_8<|v0rqVplNgH-Lkwe2| zI7=rB&=Bi4&cr6YvBSa;wviXTU~(3BFl^yR;7upfne_NQc@><>W!+{+_=tO?(NZE@^P92xIw4QZ{#I`r=Ey0;1ZM=MIG}=xO*;)5zk~32@Io@oiHmU zOAf0jk|DtlxWfl%iIOz>U#=7~8B`An&auI@s4V;_R5a4bTv`Ykhm$f6>={cK z;$(qWo)JgQ!&mSl-OMKQ@pO{MS1ZV(3`}UJlX-fcNWm2l84bsW#Zs=AN|(WHB9gEf zY~YTspj6Dxa?31ZBw^>`_|u9Niur_P$7509#cDn4!MQ+pLQNraDq$*m10zUFg;PjB23#_m z%tSL$J~6xJl-aeD*?cN#WnvjrYfsgdgD0y#Fyuc_V~snFpSnGzY!)ipb~cxA46A74 zDfU7FBso$7)L3Xd91nw|R5*h!&MHU+PPssiN-ibeR}s8sB_~G;Cn=E>febz@ zr%O8Ieq zlrA`xLMd0`tdOfgdR+NTI)ZR=(hiUxROsHPM7a*9w@k^7mbU?`q$6bhwAE!_}7%m~N@(h(lY-I6Vykjn|F z(1JXVctN*CBTg9eS~M4wgJ=1;!WIrC2ivN^;iMw+A~0fUIbljjqVWnKSjh@ zglMKzLL}tk2rH}ANXn6{qi$(=C;vfOA=8k?51Xx?ViARd!BtA#TimE_<&lFrcW3cZgPsy&HHPbI8q zS_l<#l|mMRA~JHNatOKMkXD#P6Nb}BL(ERJd7;8*nM%&hfw}ptxbAxm~=R!9p z4_80}q++g+Z#1g)LcR%Z9SiB3;11amKXQm8tqDk9BF2`kiloMbAShzl?F z4^=&|A=;)^hWd7n_yRN@Z?PEiCf`>om&?VxTaGy8e68#j-Ey%|X5*z|9=9_G2_c6Q z%jfxNq#<;%IdkBoG`3-`R4NzCZh8Ekyb7;uC!Z7NBa1#&`eQMtzk6jiU9LII##Ff< zk3cdyPJgN7_V+sdY2m}PQw%!z6M62I9w-${#iHC6sROXMgyStADYENaq?|80#e6Qu z$F*9`apmJO2XG5XrGpL^M)Gz(RnC|5ZoX`nZ8S@)pw9E@d^+d$n&Bt1<9Gu6{EHrwbD%G2*TB{a;sKtCaQZClY1qhle6pKAQ zks`7U@^17aO@USav23LKVnb&X$W!dY&)A6%e_QuNN!j{((kc zxjX=F^9<#38gIN%$x+$|Ia+t}*`A(CJ@3?W7-WhS`kF|8EFs~=iBoDG0#BKIzTd^$ zNfacmvYl0I@dJy46{uV()~ggpEyDbjx?3q#D+85s5jVGxxAH{}3xT3H-=q-Ih=Ag`Ec*6CuUKx(k``(J&=&&1!wcqFtaj#e9Au zYsV)J~#G@5gAWh0M2QOrl9&VUSl8U2xZy^dkFEgEQB#b_m0bfRvtoU0TIEPb?^ z%_ew@FxsJIF=tismArJ2mtv%tC}yg~YO!8)kyVu(PK!EMtWmEQiy1bC%oP*E6CF96 zLAOwZl5UAR{O7HwI8hq?9~$nj)v{$oORb)F%}igWh|_HY5r=?O0aiH#C<%3PMDkHL z53JRqtG?>ODHq5wfCUh#39n&PW#HtWpu7QWVoBQLHo?ljHHis+i}aSM#15}zQLimeJ9Dr5%kTCrA?4no~Ztdgu`>*ad6RjDWINw-+VLX>my z3(BolrJU`_)QjcR^vO9na+B(%GJ>L35%KdMw|aTuz7Y3PHaX{=qzhB(H5XSNj~8L>mJ_aP*<}kZb=@>)rGYX=qm`~U8m)S(zqS3YWrnG>U6_Q#kB5~l|pMm8DqL{*mdJoC|)g>r!^Y=)25WCiIgiBO0^KALp>9ioZ6^2 z>UFs-NC#L#jS_|7U&6KOWw&6p+**lIROOSw!NGFBeB9yy?nb!*r?rHZR4q%pXuOu& z@3zvdbiG_nRMk1$T&VWxrFgxI)13q&jxK}s0}SABNC%~rZLsOmCxKHS6*%Qgjwu7RlGP|r8}4@# zQwHSVJW;OF?Lm5H%2fLk}yQ*ISp zx6lLPpj56jRCX(agRO~fd1AHfLUFeun^$+%s-;-AfMQ)cRRfmsK)!M+otYoq}Yp_qQbW451RlymZ=r{YyGvsTEElp@JX_Jt~`UmiS=5sH{V;WIqg{` zIZ8A8duly37cZ#4K{1^N#GPn1x`7WWBOpTZ1+`XjSSY3(+B0?91_v(VR~Qan>4jBJZ+K-B7-+Fz>ION{{`cQs$0T&?#E5BE>5S10#W zYgxq#Gp5!`<$5tMyf}C7$sXd>$grJ;ZQR5b0j#9*{nQ`FL2&f#I!IRr`$mS7jp4qT z!y|(u|6ghE0oZ1B?hl{yTEioWvz<70B-@c~*_JHnwJgb&Y|A6wBi>FNV%e5QVq35^8QmM&U!srz&*(3GUpo6QwVm+C4)oLOlmn{MIqWis?7Wr0Dj(^VJ@1r?>b z3Nfm5Y3X?hI6>9xp)I{kOn!qY)2A;o>GRSJ7_%VT?RH&( zAe-=o-v%8}1c*w%NT00Nn)D`pf!>6*%Am_$noZmKbbWeufmN^98dn;1*(+))(#1Eu z+?17_m7SfRlmD-L%-I#?_+)2iS5~_$mQ{J#>FE}$E`PqZI4yhGvg~Cc=Y&fJ_$t1_ zDG{Lf=oTWIdc-9B6rKt{#g_QGt$FDPuEJTMU+T7sFSeKJvJti&(Q6D2m)2HdUxZFI z=uL}E28StEbZB;-!CJT|53_SomR^VBGK>SgZlzwIk(Fh(gO+7C6r{ zWtt4dIVO`nAEN@>**Ok_IlrQ!sN7_#LT>dbxw`x`y*@qHlC95%()1#oKC94fcIb7E zESyj4(0L2pE`54>cG}8{dYRR?+Zlf96=S@ta3N0k^Kgw}2^Nd+XW6p6ygXyAwXm?z zVk|0Ll2d3bEiAGWVXM$mZLt_}kt8o?d5#g^_O zMTHTasKuop!4~@Dh(nv?9HY%vzkIpAz6hPJ$2pp{M870uMG^EZ%hThB{c>{Zt=6LY z>YVz_Oq|#1GA(m)f@(BETV|crVzpR=+M=Q&IExEv;;dJEj7uyz#>^#!MoXr}n3o3% zek>=aNRSKhHR_jJbF4Wcz#K3xF{T<<6&eeTMaII^!cN}O(S9wehN>8pJGdVtDTn2CDxq!iX!9kYNz;OdwGsQyjvO3 zXIRTBSCyF|IN$$usIRjQS-=x<1Wl%*x9xECDUA z#8PgsBFj0gE#=018x-VPE#>)zg+?nz1v=T7Ut+OY8yelUh1N#o)~GS%6zY&Wlg(f> z7<1Ay%X6Tn)K+HHm*wRcHF_}=YAbOFZPcaLw>wzdh7yL;`YfZd)``;!tqIo`k|F~| zoB(3skk>fyJBK#e?MyN{1(T z4u`v~$=H^Y14DX)eIERiWoXOkaM&C+n^5a^yWuP@?TE8p{H4fAHlv)A@w&ff-$KtM(Em;no(`ZTC z(3T^Tq^qGL_YUW~#B(T8eEj zzplGhE^tCYezC2t!0D8WFe=c=1qC%WS5a$w%^GKMCvq!iSdC7-EazBV7TF>jvkj|_ zvZ=DlRV^EGS)j>#c(MpPnOq|<5X%@A+9eZM+S;4YcyCm z>}yN0Z*kdc%9G`Cdt-TxtESv#D|dCdTy|WKD3mp_9bb*zp1fR6ZWa55RoJrB$!6oK zjn(|9pWpUw0u!TM{V#YAAS623FR?590POG83L0+DoUJZRPA;W;&TUuJv z+a>oJjquT6b|u0;yB*q$y``>FmrJOvsi}dp$(mH0&xt>cJ=rDOjmhP9m)T`6ECi*o zu~DuO_H&)fi?xlHa4ED4%dm22#SGeSY zui`755&?>jyd2rIBc_T_6Zt6^#J8)?Wlk=Yds}PlnyxzW#kNMaA?!v(pIh40mecq*e%I&f!%_mK~tf%stL5hCf6F98(EgU z{cG%w3MeQjcdaQZFSolfD$vO`N3*NKy>5NW+H&`Xa@pa?ERx+uhr?J@DY_bc)*?Hw zepWO)VM@^>l_@w2dnbXXm5SJwY*ri)Hm6ymzjFZ&WsFa z20X%7xKsgO#aB2b0u&$n3S`rTn1r9gQ{kuB65kCi<<^uc`(RI#D{VuI_+mTF?nKya zh~8M$u`a)LeR~Qz6}^~JQ_)sah7NVQ$}3u0Qp#QVu9PB|-RLUBIB*pjTqOlXMGc*x z6?InhIIEFm`}oFgSIKH9a8y@xm)6v{R%2A4lU*h46}7AT2fO-fs)uXrC9a%OdyU2A zvXs?2T~3$XWbL$L{cNl4aM?PF?5-ReI&Xz%oy%f%nGJ(J@j^iSC$_}chskeMZAf%} z%9h89|IKC(zvoO9^^+wVCck*%@BfHB6x$D8yw_Av@jU_z8*>~zd)Y*OK83sF|9Q(2Gl6}FcDmi3}-6G}x)Doas3$vVJ4jcq^b zJ0(Z(AK>pqc^E}TX++6HS%=aUE^VmYka-p57<6n9dZ>PnZB(CUF4$ryccXYv?oxKL zuPNSR_oy7KU(jJ|FLY!8KLq;ys$=YS;0Mv(BY3G6@|~;>?RjXsQ`w34rtD*C&=~N4 zfW8#=?+`wt&V+rx!XNw?cn);eqWxyn9jM#G{w^c@Jt0G}iWv6@9QoOSw%bu!QEo+9 zhx`b66ZC1Yy$^T-{E9<82W1|9@IM_qPRYe)P#a*s0)C3PMe&F@P={iI|B$Ku|0p7_ z?#l~&5^?W=^IVi-={ze(UcNy4t;+ZDo+=cK zyf+co85E^rkeOpy@EBq%RX)oOV%vh^q~d2>aUb)={26`lEZeTSn>_?NlguceF`e`g zOIGQa4f*Sa{w@?RbiPdEVNm2f_!0OuiuYMEeCb2k2-~kl@+A5h+coIdZt(tH%n0Q5 z29#0c;2_Er_rLJYFP;EyfSr0#U{myu2DD1imnhSazY@AQ*$MRn#tixc z1??M=)2C5hLiso0L!^NJ&PX9$$M940$AX{0&LWg#l=CRJqhzA=p&UVpf&F;!$3uS| z{4imADSSv5V?+50jny{cdng8)3%62^o@C>YUx%_BC0q3*>kXG|@G|(-4_)ohy*Hv8 z{&~>W5vfJHVv`v6`~%P!+G;PW?^2#)YlIIXcC@)8HRSGx-fg0eSwcP?j(LL}fb2og zXg-Qs2jK8WpF6|)vztw0LJki3>g?L3R%H?fB$G<|qT=sv9OFvN_ zXG5_2f%1)D5b@k0=7jn~ZbH#UYS3p+ z94l2UVP(jZ4)hLHHLbe`p#K&AA=`)kx=Fo+WyJiBEfcn+pJ4xhBJ`tfL|!A~=}TiS zGKRidN5<<{Yv{Qf{eK5)CF^Su(-@~2*nSxNhk)-v5$hYq zYw%;xLgVvQb{}Z_BjYnt3tJecIbRu{YS6zlF2A}h_ASs6NBb76HSj}>VTxa@k7A8O zdns&oVZ6T@;s0uVnf%wVcKj5+&sCgfYs2$ekJ^Ni4;^Pw#5!^YzZdjp%+dc;{U~@w zT^c+S^Zno%)uG@~^`_wWRL=(QL)?1d3(DP?&$O1okELQ8e(ptm2=TJWepH#shD1I< zKTLfD`{2(Lz7gLx%)gDSA9{ZPT2RcxnENpAkWc8lPVqP!Q@qO#!1u(MXF_yE8*4(_ zor=wDzo27H7wri#2dKSO@d?|k&;x%Q^}TEXer0mA>RUo4c%EqQh1vv7xt867ahI>y z!yZwdVBPSkPQ)QugWreF49xlD*q!WtHNzNwmmOC84KbfXj3Ni;*u5fdl06yxn}|3Te&!R5j3~*$zU+%ZINPf_hjI4?OI5vrHTgrtvWeM& z->x_w{2aVh(1kalK<6g52HPglCsJAP0`mN@`W#!PE`xpW2p`bCP}q%mAO7CSc4IAZ z$9~AZuF{I%B@zdXOF9{k**k~f(aIY9y40%Rvw+UvTP%kEN#Oh7mxO;9rF|`v}fcXvNLXp!lWm1q4@tk`Fy^ z0SZ0&q$i&VJ^Apb5>UwIldMdfGE4m8uS{kO2(E&Z6;f{j77=uU-$qt!Y(DhZ$d-+z z!lI3>Bq*e8%mRKJt0a6i!5V@ML~kX$gEVv!-c4{V!CpWItW*LDD|mMS;i-hLBq*#n zpkK7s5EPmn_!W6U7n&Wc8{Rr7#v*9DjTJ%LPXQMYo(ldV_$;8vRS~p33s^&xhT!jk zw-Vk#u$y2npp$atq&zsuLnr0Ii9C#;btS=7@YzWoI>|#PYk+zLTtJLW0T%_o37AYUi(SFmoAT$uCk|7b&ibl8Eaf#dQ%m zd6s`pQlAt5=fwXx@qaG(@v7In;KP6hg2vzvf#(x66O;vnEO^i(0#72ioS=rFmS849 zJ;7W+ytF*{DqhWi`~$*IK;$1#*j0)V0*LV=;oY(XF@At!{77o7KYs&UARstL06!NH zoFh^!`u%Mw7JdD;6eq?lAl3&!j9$Q0f-41t4{rftBmklx0rP`T0-6X%Zvsbe0{)f# z7oe~e2V1>T9NCJ4|ImQm6cD`$h}j3Yl;ARg$<&Hj4?1Q&AbJxpgW#&*jlgw;qkn;C z6OLX6o&$)Vq=C2b6h%Bm5iiydP=vO4L@^79(FiD_h({F90t)}*$^Uqc(Fh!)5fGyh z@3X~d1jJ|r#ApN*{>O{a2#C=LxD?rl7h@6-V-gT!5)fk&P(%?g37_M|n3NKv%;5Wg zxqx%v$y9 zPl9#e&@AA>;Ol@(gWm*PM)-2U1O0-&g5XMO)e?UuK|R4-f_uTg0=CWq<`Xm%lm&zp z0h0(W555OnL%5b;I>AhWdV;xtDbV&?z*AUbaOedH@t(k;p z6RsybhwxnB8q%*J{TgIOP=tOB>DQ2E4g3@op;;pd%^GC&w~|(@%#v2D$$(hrr8J_X z5xxqVPf4qwSwJ&ESwLtOFo~d+U^>Cf;2WUp3C{(dN!l`@A2{jM6GcxJ^+d@fN-pu_ z62-_8gUcl&TM%S`sTjjX%r60-!0a%xV}J!%X=TYuun6#=R3w$K2EZzuTNOz);4hMD z3D)BZQjydUJPgr7FVf z32z|0kzf;1nh9S+QtbqVm13!f;5c}k(0LfJgzz%(I7zdUG&|w{c~I(!-at@z?j+Bh zQZwN~zY|9VLXXhwl!VVt$w%-?w7MvhF3O~fGU=jBx+s$_%A^aPTr0WY$$3B#my5FJ zg7x=-uO-+^^eco;X#=wDlKP3_g>{!SMD$^zj1XlbQN{^Q6WmO2E5U7mC6XJtEs+`t zioBIbYY1*2iigRdj1WE!SVsJ1wbz%|6vjxkUsiQX)eMxf12z2>I4 z+$8HJSvSVRELufY-IP@~tP5OZvJ$o$07V8W$x0tbxT!sS8#r$yTN0AzX}{ zDo|u;HPKf~g0fn=60in&J`X5*yarwgD6(Ax9|RPAS_A8Xeg#py!0WJw6>z~9=K;lB zsG}aNgSG~#4%)5-6x!-&{M13GpsXf}m<4qdZyn+lcq2g(MIBkJqj>A6m+N3x$Zml3 zI%H44ZQ!gY&+Ezada_bap4XF=dK#zo8iJ*va(hF?@3T?fV`CjNe z4_xdidZAh1V)pey^DJP1C_?9YjOqr!1(=WP;pZ%%=->6EXFd6L1;uhj7#FMb70~d$ zw1GU?Kt60B>l=t?1KHg`5pAIT)CP*EkNUljJnti&eXw#~>LaN>;_*<79-18<;`ESy z59Q56k$Pb3yyPKS4`c-{V)Rgq9*WUJF%C*zcsoe343d>W;u!?b`=E>5dMOGo+42&n zmpHxTzn8okBCm#sbBH_{BF-V=93svk(mX^uM`%Qikmn=BKSEg@p)8G%)CjV4UK%0U z5$g95vNaOcAbMvbjhv07XCvv^NP0Gso{f~}jig~C<#{7%*hm^S(yG3Ra=wW?-$Xo{ z!1J24iF$Ahy+0(4q4yi4G4gqg#_$;Bd5mHlBX7r~aje7R#6M2_CvD^8`8equC(p;B`8@bH3R&nE_!xR>oN_oW`3M)iGfq)VkpC0p;RI=( zpgc^Fwh8icg0e9|*_fa_OpvUPWPOl2FZsw5A6fU2T_1d34!W2fK9cfL_9iKBlQc>v zDFc3@_{r90*lLhAgTF!ALi)FmZ(FFRwvd%AQB)gSl zx02LWlG;jATOoB`+Dap2D=f|e7n!+<`r;<)i<_t~ZepS@ZlZnYZnR!2?MCYmpg5w~ zO|84bt;e8qFUQp$KwRws#MK@^Tce>Tu*Qy>+y{fKP?~Pp(dok{+_=5N!B;?GA zne)h;AI?ph+dKE3xxbj#k*G=h@%-HjRxLQR;I9i;FZ|u2wng_W`px2(7Jt0tS4)48 z)RJ_1*^SF>$z910uUNR^!IV2vovGhg*|GArmCvvIShHHwr@2GBJ581LNO}sMOn-RQ zbvjAcrh6%~A@jPd-mD*H*Ji(>uhGAN|5JE5&zARn!+#jhkA$%c%|TdYm9Y;)oC5H z?y){hD$8SKnLxy&8LMV(oY8lI!lOSJ%7i*Vpf?f3RVF z<4EI;jYpakO%qK=o1SZyntjdtnvXTV-EyGimus@u{G@eL>pQK%Hg((5_7&}N``Y%c z?FZXmYX3$1KRS{-iaWYGd>wl`p6>W=#|ND&I@feQ-ubQ0zjdW{O>~{XE40eGC%WJ4 zDe39#ndrHv=lPz0ti5Ah<+=^)wygWS*V}vj`kM7OU%{?8yrI8O?`iZr?)kpwgZ`L) zU4KQtxBt5Sd;6aqXc!nCxPIV?f$tCeYLE}644xT$W$^96i{52klefk@?EUVLX2>zr zJ~TCS`_Sp39}aym96OvjTsho7eAV!s!^cMoMm`@+9{us?A2udz%-UGKv2Ww9jgM?R zzwwhzSC2_!o5y}Xe&zUYCRR?IoOo;E6W`?IEtAJ4zd!lGm2p?vuN=Pefh(WB@{6hZ zsiCQZQ!h@vJN3t@FZ}cTEB!`)iGPiM(7(lhi~nK&DgXEV@Ay9p%n#@S#evSirogVi zeSs5!?*`rp{B?Tabis7P^w9Lp(+^F*F#Xo_r<><)Hg0a&?BD#*=4Up)xcRlsKimA< zEe~w{WP9#*$M)6R+qd^`pWMD<`;*&W-TuW@16Q5AdgawuT>bFXKfgwIP5U)lt~q+m zPp|pQ4&9Ef9S3$ibM5A9zu38GXWCBN&bFP~cHX}8iJdR+d~4??yApO~>?+>XwrkU_ z>v!F|>*TK2cD=Xj^XtxCf6w*LT>r`qt{Yyx;a4~O^~U)(X5CnNW9NrLOf z=~p+;x%ulipS}6@o8Q|l?H=F#yFGl*@;&A~wR=2!w(dEw=kZ(OZn^W8@zn^}t{5NW0T^m+G##ldd_Uzp&@7{Cw>-Tu>`S9Q)2VXk) z%E8wU6&!LNsyx(isQpmyp`RZ5<)Pmmb{?)gJbrlk@E;EU<#6y`^}Un#{^P!+`^@*% z-sib*+kFS_J9fY3{=*N%Kj3@d^#}g?;O$429@%N8<~`(p=-r1`Km5kmi@*ND z*MIc&j~`J!lKP1Ck>*FvJ@V$G8y}r|bo--sJ$m0!&C#zN{rh8!AIp1e?6JUOuRr$F z$73FEeSGZ`^-sKgZ1C9C#}^!LJl=79{c-Q{+m7FJ{K4aoJ(=<3!%rT2@|~x$p4#-( z3r{b9df(F@Jag^L!kL+w(g;o8Up)Jh zv%h$8@Wr2ev*Vjn-@N6UKYuCiCHG4k&aFJxC+<2)``CZsjzTkD<|^T(?MvBe+^ow;x~kG1zX5(AzTf5EWa;| zE7)TG2;s4y&*7)TxPmR?-zGc`F@3@RBaCwvFNOSx6MCdyhv_k_70=fQ-{KJM;+T>! zu4I`ptzlfnmc?uh<7)P8+=~_b@z66*(H_PTm!hBW1ke{Mt`6f0wopI}Sb_U|z~_NJU-7*#uE6tRZxTMA^!z!DLyuBL_#)6%%2i<;`BCN&z8Lg*%21vc zLw~X|l;Ep zlAkK_b54k#`~)ue|6TCUp**YpGmIn8sz0`GoAeHO2E5uQwCy8aZKH3(7XV3H;hUQD zO?d*Nz6tH**nm-6=?QrL4@~(&nYPV0HZ8>b+S&=onH>(30l;F^y2r+}t)s&u0l&7@ z>-SD=_71wIMm=NYzOliG;Uc1F1*xdhJLMPlE!ynH(Sa$S-!~M{Uuth`(+>EiyxJk( zL_k~AX)&5i)My}m?SwzBZJ+WCddEFeo3y^6|1m`Ely`X4AMj3j2eqRU+5ocA(WY(j z1hkpj_C{^<(2!BGCBPGxw||M=&bF~h=oo@m1E{s^36yp= zLU<$d!6zSl4{>Q(1-7OjA)p8JQR2{oG6s1gWGjj8`TwaYA3j8Ew!y|2n~qxZLw7Cw z3fVK`p0oqc3K&=jvyc~VNQf-A!oy)i6JSEB6;b(7rr2h{%kx=IHU`;OBQCl;b1cGD z#5zffKN`OU+Or`&3a_T1%a1YytNMQ`-^kj)KL8#vGPK|nc@6**nneUAd@qd_L)3C3 z@^Xp(G$h)oCkCNs9GRbDn?Mt`|L=QIOI{5l7C(Fv*%G)dC?Oh>sv@tXuC8oMxpPY&x=q?1FVjKV>4nBl1#*m-SpzU{Pzno|2D{T=O;dcOE-uSUe#g&k}H4 zHx3fF&{?xnh7WBKhf*r)$zz=gJyN}(^9^fjxuJa-GFy00D2z!(r zWskAPu`fEtj|5+* z_HFhZ_FeW0`yP9heV@I?e!$M-xcYT=f&GyEi2WFEY5fU$@J;qJ9AUr3{)4^Eeu1}j zzr%jT-evExU$ghwZ`g0ye_}oOfPKh5Vjr{Lvp=vuvOnQ`;1l*|_9@nnzp%fui|lXg zbM|-k5B3EM;t3WtkL7VZo+t1*d@i5I6Zw3;fG^~W_+q|Fy_UA%;s z@-pt`<-CGd@+!Q4w3^rOT3*NNc>{0cO}v@6@HM=ZxAAt~!8>^u@8&&xEnmlb@mlaJ z_y*p`J-nX}@Imh7LwuNz@KL^zZ{lNooKJ8cpX68aDemV1KFv4tEqp8A#<%mU_|^Ox zzJp)Ock*5QI(|LBf#1k);y3f%d=I~c-^%y$eSAN^jUV8*-+-$ zA^(5)kNA)I8~i8yr~FO+GyZe_7XJ_aHva|xC0_9PEB-EjkN=v#&ws;z%m0)Aj(@;E z`a^mqOb{sj->86GZ4QjCPxnMx`= zQxl7)P~!1a#~eJDF;BwN6w(4|p|nU^%pR1MNK3^t57Kfe8BZmoNU73Falcu?7?OUjn?QjU}>;K=#kdqo<*;?XMpsDb--8s`QU}{3GhBFq1dTR26FVhN=e7z;wW?8VgkoA>tTS ziUwFzj0v+%q2`HD)fD2Ipen9;us)IPlc+s5YbOnZ2N$BaCB_U z6B`I4s`e0DfGTCj6f&fo7BH?OqCajrf~nSqv~8zKu~vAz9Y9&_86Wp3af%l3#I%fz zDm`P9BOc|TcP!vhdnf&)W4;Nce{^`<6BF=E$4ril&YhkZ3@01Psavgatfto~bF{mND;8Kuy^6WIWYV;!G{nIOy9l5yJX?fsqh4JvlfrCoC{H z(eL-h`=$aTqE9?yb4Dj{9_9BAi1WY%@0HV|n>}ORi2<*2#5e8t&PAV(`G!XaJYzW9 zj2FzqQ=YNFWEAZW#I~(A;~&UPCV>zJ#1uvF@7UCY|DX;d;xV~J2K5gtoK57okYL4;Y3xM7JR5$l$SKXMd_G!;Zlm?L_K zAT(Pdt`4&E$L-ka6dvGGOJvO8o7@Zmz^Tv%% zZ0^Up;SC5ZO!JSAVjSXX1P0LN=thixdO|gXbNDf@LI9j*7D(Iz3Q6>1i014HXq!WfO;fiX(F$@q}9a(OM!$?BSCBB4_OSqz@ z-!r8c0Z`QjM#l!ds!^)cwP9aI!@kspd>IX`$hG0cb~IEc)Lqh;u<;TeTOaXbQy7`E z3Ht%>#2Buaj1I&$M4HDUNK*vCsz3{7Ox472jCW#K-5hqv7j~#QLR2WHU zyW~cK{}Qff7Xb%Ez#XB0aa9U&t2@H_r^EU?Li(pe0e6H0o(>1xbxC8wmdo&-%kXWN za3$8^VShZXJxvVL5{|Vrf~wtBL{fXaR3|jk4lRWHF5z(=tcu<-@2E%Bg>@0T$1S0% zi&#}#sEX?v9K}T_|ENE1O9WH(gc!F`HTTMC=n?x@EX9LyxDF;Jhj%NDaFg9pV2<

    ;mn?VdABir$`R}T3d-YJKIgad@c39kuTJROQFB1%L> zzi@t7?CKTUh0|ga7b4-h5L9j=*RdZLu1`!$TSwKtkl!&=BR&=F|IJv@>2M%s03HKX z`b5&^2n7*iiC-~3C#;2>m=kWKjd&6!l!guVG!{96S*C{`H7Y*8$< z8^N zL^aD%&2m(;9MvpGb09};$Wa?|)P@|jAxCY#TTN8`0eZP=qW>`@!`s11A6hCOP-9<^bQ+Hgc|IHEQjQ5%k^4M)_5BWlADwc&`` zuwBv;v4Q-Cd&_K!w3dt5*%XPxY>L`2M{Qj4*&3ml z93crz)v#=#S+-hEOHa+VdseG?9;bc>%96@-Wrnh&G5E1KgXw6DR;M*+ zZQ7$+cTn1ot7H#Kw?gHufLdt}{!efZD?>SeqF^&pfSp5;*iOJBg!KVV62<`M6DC^! zNLZ^gG3)B`XJFq5`B>9gG3)B`ba|f+Xsn0l4yZM3nW?~(Lxd}kZ6HK z3nW@dq6HEykZ2)^GDws`q6`vcBvA&5GDws`qKqWUAW;U1GLkSs!UPEuBupe>f`kbY zCP71Lt;K8=99#HNX&=C zd`QeEiTRM24~h9C@eU;3fy6tIct=RMe~)@Q%2g;=qlg}P2Qu$K<{gr`0GSJrxd539 zWaR=RE^X3rgX}qy zoq@y*BxWEnLlQHPn1RF$BxXor1`;!nm?4QHkT?Q~Bak>k5=S6$1QJIeafBp}K;j4_ zj*!FwNF0E~0Z1Gmi35;00Eq*TI6x8yAaMW^2T0;y?i*TB6YRPSJK zQhg0OLG{(_DAiZ7>!{w&Y*cSynN*{%sSYrWs97Q=e>2Jk6d%fiD9@n0grX+wbzr|l z2};(obVZ`NS^c2;8TCtQ z3-|{ViRA;95>_e|z-|GPaQ(}Qt6&9X3qIEVA&0-7!(Ynb&*bpia=1HAs>bDHTtb($ z%qGEI-d&cES)zFpB{Qo8OVa*RA0=sKGYd7R`PopVFU!T|M<^#yj-p(LVneZ@7*KR5 z8WdY*4#c|4(!v_gqRv7Q+gcR1bSZ8HEL;#<_PjKgA3gb*%FS&bf5?rc`3;Ld>|9a{Cg8<(~<0w?KJAxjyvnqqLL z&uSckJCy91G%RJF1BM%!l6Gr&$|`8EJ5?J=1$E=@b^RHmCtH^rai4d^}6mf z?<|YgoHaZEX18Y69WVGXbWVip8Bsr{IjY;Exfi;)?v&<`#;DnEI2{Y}KKQ+dOw4Mo z)1H=&mo3ul)R;5@!>=`dO`XQ0Y1ORPfj+D0)tsd<*~7b~tjGYfgskTwzd5=yq^pB3D9cg*QGGzYPF=1pR%fWw z)hpGh>cz1O@dB-RcrP(tb%yteDq^Kr7Q6U#@SU<;-0;Ek5%Wc*!p~Q5rXYMi?i6th zVgYf9I99?RY*`AhQem*%-!{E-808hduA*G38wbc&+KZ`_I5vytJ!m_ zDxb$?ZB#wo&nqUS#Hv<7S4>v+fbG}BhT%L9Y%EJuV2dqhTET|Jq+GC}lR|u%5C>nH zsK6ILmt_)PX8c^@Q*gm|;!SN;yoKbm#ysq8sf>g;xZ$=05zt#0Q(vE>xX zx`nM$lKYA+w`eXEw%o#&Ti7ZsD zSt5q?^Tlb)cC2_o!T94WA-88{PDc66ToloSUrct3Cd@R^G!Nv&aMQ9K#c3;E;E#u! z=7YQ-qnu$#hd)ecsGqT}sh>$}TiY!L%S;)P@ReQ*3;4x{7?!cB(MtSbJ3uAi4_wkJ zlrzEm-#>wW_L-iZ_6Go_p#s00R6mo`RzFj?2L7nkFxOYv1DY{Hi-{rHiMY6`)4_9S zgcMxic#_5M58=5y7uhU}XSmxe9Z?-oOV0;!SaUKt)#7^*2N2hyNT6()%{N;_)0UIz zI!oDUu;g1qb#@Nbv&m@|SUG8fsHk^~$N}8}!vWh7-4VkPn+mO`j)JH;Dt4>0 z`A1_|AlDyBG|)f~%N1@3dk@W~q>|wy0?Ezo$@O!}nphlTek`43O8i>NVWo`C6`?xj zhiph%7^{>L)C$~PlO%Mibo1r++QoBVxL2;lzvBPsi#1$Um+;v##vc47-IxD=0b9n4 AfB*mh diff --git a/source/analysis/fonts/helvetica.ttf b/source/analysis/fonts/helvetica.ttf deleted file mode 100644 index fc0a41b64de2ed71fe52e8c15fb3b21970286de3..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 143300 zcmeFacYIV;*FU=VKIcsDeI}F1Op=*2APK1h0S;1>5(!cR1cG!BA%r4`0!lL=MFka= zVx@=#0vL*d$YVo9#e#x>N>Lx9s8}I0_q$I5>hr$Odw=(jd++D{e4d${b@u7|?7i07 zYkk++6G90gb`X)|^z7T`rt$-Cm61|_pNaT^=fB7(Q3uqB4}?kR++CsE)&d zTQZe|Q&D?7z%fkXAAVbWaD7~L6|Y5AoOmUbe?$x~h%e;_4WfbC`n0E6t@N$*Emf*; zBphi)TN%;}X*5d1l(s5rRb)%WE=sf3#MUU={t^BW)Rv=f8LHPPsPaj;IkT$E##Wv-QDOsYLs@@{Rh>(+UrbwkpC!sl28% z%Wvbg=HCTRuR0tJM<_L9#1}lxzpD=85xfTt{83@*veA1SpM|N>;BVEQTBfy1vbFNl zHLFU~%H4A~W09*UwWvVvIGp=oE^U#UN;7k5 zIISp>n-z_pNlh&>9>%NCTmzVxK$J__fn*jHBZSDGN_(*#>^NoI@Y{mdK5=|Vhj^^x zEj@3^$-!CtItVop_zO}=5GbRRc%*Oj2gz@mIMEPIJO(+{#v6%_=s@*E4{9I=P$Myd zniOg#CX_A23~B|vN^HamY9}^O2eE@XL9Y-Oae%ss6VwCx2k{a&%0A*nIf3{<{R&Ma z2`C4MKmI#OQfQDQq8uVgpvfc%ngaS8NhKlBFi8fDfc{F-ND62=Nd?Uy5ztJ9W|6e` zFQf%Y2W_d)RwNVUY?1|kkAJ5mJNo)m+2Akp}bXz(_m9Z6fz8%POgC(s{AXVMO|3uzD96+Lu` z+(=~5n@C5{ZsZ2g?h5TeI-%T?bOtRYUE|-An-$uN+=y}+xe2s4=@$Qv+@jDvq&v!e zNso8~=|@UI`zv$+xf$hwq*we~QclW12Z1(_!K63JLr5Rc3ep#Js6vO4e(`^jO41*6 zI2izXE9f_51Stm{Nd|$AB7;FklOgf1$ry!>B^4--BSYg~k@2JwmqNDP#<2wL+(ovGEIJ8W{&Vos0*a0eYU?K_-CCBojerk=sG< zROoCn3FW)UWYD`wRs0;8qtLme8s&LpD(F3ATKr3LFPRQHU!e=gjQAI1A-Mx|5t#|P zn9KsbkK7smoYaunpi9VI*s~P$b8S*D?m4Z zeny@oD?y(k4}d;R9t3@cJQP1go+Yc|C&_bUHRwk2Fz6J7vhsX<{uaa%?kH}$C3;GYTJ^mqiO`)%o z9Vov+>f#@eH_1-Wx5zHgBV;$|+vG*iqof}69kK`Xm_pwrdr^Lm><4|Hyc9o9j)T5W zJ|HiHen<|0enbw&-y^6C=m~NN^b_(b=%?f`=t+g1BL6`7Gx8efY4UpfU2;aDXUUuK zW8`!47U&n`25>fAJTc{)M8`zfg4g7k|;| zpZ^z~epb=xX9?HoXa5)K^iTeO(&-=kN2mWsr~k)J|Nq!d|KF?A|DB!wAD#YR?ezcX zbZ)1=0c-t#yPXbzk>fe|IDpQeM15FP3dp1ErVJ~-{PlzL1QC#-Myt~sj3%?iYO_0> zF1N?)OYkQKl7gY+l+*k(KU}f{>0jK>o+|4 z)YH#A``pG&o3{whZ+&4~?e-mYJ9q7Vv3}3qefwW}`M|+f4!wH#AFsXs#+z>)dHd)) z$KECHy?^|J4?p_!GgJoVY>Gend)V!Iz!pNf=_yXhSI0FATP*_-S$;clTuSSoA~ z-VqIAFL8)COk5dQ5cnzR3I?!SIIg^Wh!gz2W`g!{H<0W8qK27a}DQIdVg!GBP4EIx^uByChv< zz~O*9ll7?mAM7>M{sd}2AGKd5JS9@mB=#1EiYo$h13w1sK{xO_Ui;R;==It^^)Iy_ z99nU`_Eyy1n;dAaeP!}UrS`#pQ~R>(wO?yFQ_(J;xnHtfCQ`t(y$Po$`as2 zn}7gWNDUOgy+E8Ukssj40AT`_dkVC^NX`Ye5pZls&&X1aww zPq)$+=r&qQx6>W84v5Hyw1zIBJLxXEo4!cvsgauK9=eyBsfAjp4P(RS)J`3AAKg!# z)J2!lm*~s%06j=wp@*oOdVq!1BBbD>uhPRbf%<784bXqk*MPJ90o3P9nnZ&%M3d?3 z^bPtZeTyEUZ_}gn9hyRc?9&K6M&G6H(f8?b`T^NX(`Y))pqbFe|e$J9E%h%*k9do8~Y#^Dr;-u>|I4i7dd9SdcAcA(l*YX=|23 z^H?eivj|IL=`4d~vMeBfJ6H|P2hz8jyh_gl{o4s_?j9g^i^$LPB9O`k;C9cD2WSVf zoOYzs=}Ks@2k8t_Pa#E!Ie4-7r00kiQ3wxo#6>J$@pWum{40K(uh}=?@p`@}5s8gt zD;)=(JU|Z7OSozq5XGI~Q#Ww&$H7Gp;pr;i({F(PZoyZ={)ebHz7weZ28@pzz_)HP z0DQKWxTpun@*J{2IF73pAV!f4yuA#ZdOz(Mp9W<6jCe25`<~$6$#iafV0>Bpf%wyS zr#-?Oh+XIrhZuqH(fD`L3Fx<$xMCIF`wV?RyNk$p%3PfJ1bBXpP$AOz7(^%pL?mXQ z4k8fwqx2x!u_vVJBK6SOLMPnisd#PtFwXJ=Q6CGOcP}lVH?oj4Bwh;q&xL2)fxA8m z#C12m^}tO(r3UFz{ApnPUc@T8;eB?Jcj!SO);KTL0qrKCl`;@_=!W-t8S?usc<&W9 zNis;SC0UvU^wWVTMnBZ{Ib3;x{>tvgcaHFy*fo9wA~p*k*Jy1ZuAhU?vuQ8d9~>}= ztreyq=F0mmR&ZdjNJC8zc-lbo$j;t@6 zz`hs83RS{O;tlxr5v#>}rG?TG)mO2BvBR@#5mfywX|AVCvB9rNQb0LDuenS z1k2vO`cz|P>|{7}=pE4B&w$U5L$i6%1DUiv z?TMBdM#s}CdIwr^KD6R9O5I<8o;pfDrr)E^Mo2QRb1PQBZeYFe9m+z;?2a z*dKyg&#SP@7 zsDtKiV9yC<;DVRL_R>HS5*{Zn2vzhhvWs;=R=^d_Qt z2|Nxoft`SMn}L|m!*rxL1|w@8blOGoETkesx?Pp2a?&^1II)J==}yALO?bN~G`=7? z$b4EMtWkZ>KEXJ6Ow^In!t<#8G4_H`DqfOqp<^KdcVV=yiq9i6rGeu6bPQsy{YhBl zIO1%fwHU&B4z$V;=(OFC?!C|h9feZt@qlxBf-m|(L#)B~5$FjK95fCxJ^)(m9kNr^ zm(`Ool8Hj=ASdI9+_9tFp?$lOwr!%tMFshJt#fm-TeWPFm6?&A773@OB!_}Yfkc0T z&+Bo!oDRFqYB8IP2E9(JQL7|TV3f4zlG3#@SR1LV6(cD(-PDqArwqrA;eXjtSsTQz zu75wLHps6VjzfPtQ^uL2|K&`%=}h_hnbZ<2Atfza1iPdJYmatL3D(m=y$7Ovf9I6) zU~Pj^E>+4al(G@!PzVLUKbxP?pO4qUl*{;*0 zs7I;Roicelb+@NVfw{Z1+0KZ@h*zxjrF8C6>rKI>xQ!6*GJIrhS?_^eIwyoe z(KWuBT5`+G&<>wZ-UC3}*CklfcVJ4WwnIWn`S8yE?G93N%gj2j9Q6MENXr)6E!L)n z-EJ~B7YxR~7Dl1bn~o_Z<#b-^am)3VrMyNd-D+iU)QBKzGB5@2RLse!Vp21r7#)C5 zImK1ABhe${YPFpzYbBmBN;kV9n34+$vKVzWw{2;mvzgVav~iALM*;oz-gT z@N4DTtgPD1OwJP4D>Sb~( zHfrbg9@w-UB)2B)AaZtAc`d8tM-E;);_Szd%)NHx`sI}=;N+c(gW{~!M6UmtEiQYP zv2ALp>wh>rs_A%-J}EtV4;mQkQd8N?wLSX&ZL8@xZ&0)wjy0ER?VSb+2@Lyqi6sci zQ849@LDx^g#y~@@7{;GUVd|0fY7Mwj*+YX}Yb}*GHPLciDAX)7|92PF$1m}#l+~Y? zHNQq}o2=%FHdVW}?ccWlRy{+F(4#L@4(ri(P)&{QZ^yuDO||USyaLCQz5_$SPPL>T zBr}Y^`uM?OzLY1_%4jki=?f`Rc9$nKZ~pDXgyxIN@!{OrvPDTS`kl{<(HDilAA4;OG+C{ zNC%WHS3z=fLe`Kq3_>w==C=yKTR5;A=TZ1+p`Y?~a>l&Ba{ z>GVegZ5ydrEFs0JHdH8KEQm~@BRZXaUTDK3o~$f9tfHjU(qK7vuJPPC%Xg$hhf+)9 zg&utd)=46v)KX$8DbLNZ3)VcVAQa>|FBYB2f9e>$P0-RVv3*y6jXiYqD6hp(p^nW^ zYN037_P}NMtu8s7FV)9?lanJE`FfR3EfJ9t=!8(@CX{-XbN`|JMS z5>=EriB=RGL@TMR1mmiOX!UAKg3h3}c#LMX#ci^wtZtKCaJWq_=5(99%;_=um@`4= z7aR$?M8V-P22@s$F-c`j(CHEq!bIyJL~HbT!funp?KU}C*dYkSq7GYC^>nvfY%&>* zI-Qmzcsy=5(K#IstEIgOxqAX@PdpD9-47YVCfOS8Wm;!qrfDJFLkZf4a9=duE^9Oh z%~Q`d)CD(<<&0F3)o{*o?)v&NZ!a(wXmblTwWFmGO=*p0gD#R_Fqj4A}H~_t^I|d%)@ewC#Y02W&mk zgSujG4_Mtl_S%4Hv`vrLKfHAFDmq~m-5Tq|msPP=2(B$flh$Lbc?qX?W&H* z_{t^4^aD9OJ3z&p7KMe`T|@msW!V*lg+oU7lr0#FDta<*2ho3sE-DM z!PNW~_3^WEi(pFrcujGp%TN?_W#)wR#AzskBoSv(C@1GFLy^N^D9SN}ibQv7RXuxp zcbP<`2I}9-o+b%wYn?mkcvd|vkad7y=epeviDcH(q8(J%8hdwU9H&PAURsP(AK6h* z9pU_|vqf_Nw#|(Qk$QHEY|eDK-APHoU~zHl))^VN`a#)6(5YEjxw(41PL~6JbS{t@ z5#45xwNk6q`_#s3>i?T-Cs3mJ31i7qao! z?`3rTGWK6CK{sE9?3`2nD$ZGL?&u;@tE@$)yOb`@&GB@aDR&PQ8SJUylyGub zP}w3Tv(d~{MWKRTG%p>bg}qfTl4AfV3>WvJp5ZB(HT#YZeY?*&W&DT%3|? z&=X#ltY*@*hHPeKWoBj0n}-s~s-P88K`WM4*)<{|_T998?{6->b&G#|m96pjWP5o0 z1O4{>q1~-Yw=Aw0GCSPpGCp2?>x^u!yl2GUQmuoY&;y%DKt5s~Rm-{+-W5JJR^v-Z zsAp?rv&ZZ3c)Xqjr`hYv&9d!h>!8U;5d&K%>jj_JD^Q4XIGyiL!v0ol-Hx!{zn`rk zSr{R5*_yiK=L=MP+lg&6ZmH!`JS~5~AVq}Hjh0`OzHDf0;7zK?EXvmv-y%h1n>z6p znwJsCN+Nl|+$7pEf>L%WN=9Z*B5u){M6EiM>>89Z6VsDu>kvqbv{p$ZCk4br4N24` zfmrmmB;rtm5Z-hAqjVuJ%%c_d{KCA}@H`WYPGr-3Qxe!Ta;J;c zxbID1o18DW*u8<8Agj^c>t{!Tucfi0u0siIukSSn8&|m3#m2cu<*`xOw13`^Le@2J zP!cP3-H^a?e9;t|5s%D%bn(ePQ!XT zK5%OK!PyH3FYhWW=rXoLk6}YQC-=x~ETE4LSkjXgFd9sNWtpae#r=9MzQ23F<*mE~?>7awQyXzN zw05zaL~hrz-!;PRl3Jy`9dG%&L~ri^(2X&#fooW9`<7lVX(+LrD=8t_mtg~4&dmv1 zVcx*ng;`@|G*(5IZ>Gy*RSookjeNZ^b~~Q4Id+=f3(QzYZr-JXk-r5^P$owd3mYMi z5~5=QHi)WN-KH1tv`IjR)?-vzujf`bo_qP61o#wpD2CY_#}lLwZ?z?asZ7VSP- zHlTI1P&j(DYDuKjJA5#n+mY6@@oXaWUJKbfnN1d0DJ^A;rV!?nCgTLJIQf45X6Gs_ z7f5z#1KPL>D!U-$?8q``{jOcSl@P6>i%@%kgk=xol`Uzi;x;0#$MN-|Qp;bUP*B09 zO6@($?R*SV@rx`94iZS8Jw%9~-rxx{%o;VZ(v z0$*>!!^OH;cz@U=4VETZ;#Ow`G!>VrtSl$Zqjb}X*g&uJ?H{-UL*DvD(JCE;ye5)e zJ5@oi#Sdq52Mg+72GHTcV#8vF#doWyTErIX7n|QSNm{ku!@AgeI=g#2CG@oqaSrj` zk}yF%K|jKNn{$GewZ>xe-WQ9_!CaNv~r{=LMJ3Ail`|uapQ^h;m&rW*b#;9T$Bsj zN^Mp9qywsb>en@I`qkYG<%Yhd35JoTS+-gB`)vDd=Y8iBF8K@x^e@_3g2iu1v;-`w zmk~r!qk}bAYvY$>UqENks8nzHeGb3hr}6v1a~hvtFa|6z;_G@@skNSZb{PXO*aP)! zpKPYgpsRKtM}2sI(tT_m2@(tJYlC%H2LwANu{j9L?PaO3(Uxy->QHWXWpO6u+N-2P zLt~TStSGN*Lo2tzAYIpbxtPGNof3A2B1LGCYXc=0WW`uQOW{vcUoB$p@KbBP-}vaA z_dHJb*nfNP_%Am-cj(C>fvsCRmW()f_u=!SCp`Fgjs4gs-)tSYdH>Ukhv%Xt`^PVc zF0^D8IWDJ5MwhXRaiLM{VjW-fy3I1)G14{7IMcDvSmU@a;TfY&3JTl}((_aj zQB6~f2B?mw>tx()AA+PA#0WRWU~q~a?(ulpSUJ@h@JnJK!)U7>7Mv7h!MW<{h#~_K zN+OmBi>zqrsi(y|yvGrbErupIDC_?eh8Feof#&Ap{zsEUz&ufeq7jZqG#hG;H)PWw z04{=jfRSjGy(oZI;x;5CqNv%NgqhLQdI6XjDmAAB7H9vRNvkHz+4kgJc|9FAeRci9 z@#B^{c80!r;f}W^j2?Ntl9|9QJst zz)Q;x#(us4@%4c_EwCqah%#Q53vB}pV-0Hzn+$Inq@F@g<3plg18)(7N>EEWy`Uxr zgVFewAi`-E1tVbwBSyo0Y#)by=z3X4L=mTuw{&7X8~vgr>Ey(ud>x!d*{GJ2Q}Wew zLj~#;W@yWUveD?sCy4q65f$ELs;5hpmix8>!j_chEa8TFIa(Iy$PR<7j~eEdMGbN!YDo5D z-7?Bg$SMb*R6z5r@Zqh3m9o{1^Vt&*zV_PASOFdOjIjG^_h(`oAR4P0CxB_V9u7&* zLYBXg6MOh(Ce|dbwm)Zo)$ozwWP(O(_n0z$f;LCW(eH)03Sd2pUFWpf?QfaP4wKyh zpA!5h+fBNFQ#P%KWn(hSPU>{}Z4lEJ%_2R{c@x4br-%W+(K^h+-QndH(E>j7D17L_ zI z@nO8}AjDcJkRT-o97c?{#W0h1g{v(}+rh@PSb#39Xrbf68=z5H*TFr^J;^=CExPMj zYF$?IXx4B|cAG_45!vhtKCmgx!bMgM!xOR!mB#g(&FSEt1F>3)&^j*a_)Dt^SL!@1 zx=rZcvEQw%t~Hcy_VfP<>@EyoV8i(V;Y}Rn$!NfQzI&4 zzrJ77a5o~0v+1T+HXgeAS;gk^`n8X2+s4O~;gDJvG8BwtvTQnRq$2*9M$|$gxw_9` zRMZ-b)qofIYxhzVyuf^BO||x)q!&W8!WlUwOG z^!3L%_S*-&>_soTG0!oFoRNzPTr|Vg&DAY(!SHpCq|HHe^Da7DoT{nPPcck0&T=n7 z7SK|0p=O?bzG0#9e)rqf*X*`rboUN_(8pK7U^ZX13<7dGD+e-y1`_ZPLqed{dd%Fl zg#s!mJzz5ist;(Xww{fVEm_rO8CX~jTphE;%*^$4RQ;RIKCsb+Ih_c2s&ja zbFRp}Zq+n7moRLusc~DhBDcJ&v;#36L^vKYXAW>y6{)lpyMas zcHzLmZzfD!bbsuZPdJr*yj8w5SuD(*xww_Q> z6-*EGG7aOp$`6^6=<%{9G26*CRMK7=C3;Ai^T4^KY-DLeAa)H`-;ntj&>+Q%~M_MUT2Og4D>PoSC;XQ*XO>`Qos7h`oV z91!v!+kN=)rCh=ovN8x=i2NTOyC{}}qC`|`EmM_r5*swl-b@vj z7FhJkFs0z}cJ6v(*#oyhC_j4i>T_@(Sd-tR+#6Xea(1=;Uj2jmr}UTfa3g6%SETEz z>#rN7+ok(Lr`GFCYW_@h31+dIMEw?wrDbx8R3a+XmrL8M-8 zFkh=u30y1%8Rd1eG&TWfQ1wbBiRDc$(qu~2wTfPMx{fxxUDs-T&H2LnP9|T7ZIRo6 zY$n;TT$l^Sd_2D9S~Yvb1=Ojf&dI`&t1*GGc^m1PI%LqiQpfvd3f%zz7LP*T+$g7EYQLz~ zlCVI-0#k=YQ5A*)T!+*J#tultr=?y^lc#&G$sMeyg1-qUQE3LmPL$9I_jj>~ZLSsz zZ}3GJy0P)Gja=LQ?TzQM3VVq0H%2rHZ!F0eeanc{^v0?!08L6%#HR@YPj7zX z3l(_ZlF|nL%Kyz9YiR-gsMz*ufk3aug(GZUY*L_>^mitAe+3j~tjeM6(3-Rt$x6R^B@ZfmC4l1Nfsr z)?7F-3^v=TA~#b_OwHMzo}d9&ZtA|`r)N~J@$B*bdgNmOSoaPr^s)M*bX=-!d}*7u zS<@wOs{tBV>gjbqzBu#vr`*Em&DDo zHZ+(uIg4fOrKKc|?c1GwQ>q#GV?Dc9He1TtlT_P!b83!dvJ$q~glNdxogIoZQ*pkQ zq_DNXvkPc}ci?~~KnT%`Mz{tTO#lqR7ib{a4Gk4=n$LkBJ5-#5Mbj*ok+YCqD*r~8Od0<6?h{@5IgByaJ$;L3SKYK|xLh?}eyYddu_xxOqaD@{ zu6V3*_)>F1TDvl8T>czQe&J+n%r`&B)^4i3d)%jUrkr2((#gx8A)PgNKbYd*1g*r};-lFJ9eo#XI15WHJ(|T-pmMH_?DRBHNN<8KW7it+Xr_R#@JYUQ->k zT(amjQaLjJ$}D5`wU(a@KN){AX^}f`6iothfh19c>!(qv)drL`NO1#r6I2@<*uexL zC>k6%LmQAJO+Y0e1U6aL5{=<&nJ266rFsmrdf8?Ol2K~mmNI0`oe_l<(6IHC%K9?H zLG>Afu);tMeA{AHA5*hA>bYvBe$f2U#|p$%<%LOwKMy+B=e0C65Ko5^A39r+u7S&SW@L|*8!;7S*HAJpQt-eo>+5oa5c8X>}quvW70MTV`ca+m9RTW5tr3gYI z{3t|#9SSV(JvQ*OEsc+D_=NuOXxC(ap0xLmu5^E_GaE!#@0oG`5@^rW&?sM{eXWWG zK2I(a#jYv+Q%0v$Yv*fK<9ySk$yy9f(!F|BnoBEq(lP_CM6K3t3uI5&L{xpl5reNqVj!rf`HHNzLljsD<|FhTB6b*oIE;V=E(a6~;7}`%TT=xDa+SQA3~2OWQwp%=XG$;TEfFbZNIq8CTY;4aF0>-ZB#j zdz6fhUzDapuO^auxpD*>pNLVtwQ&Tr{?x>|WPaibvPRk>JY(D=>@>b^e3zU{{3+3D zvL#v*6NOAwx;4`uOuEt7-!Z`1-#b>Cka(wUiEWMWsA-LVBYm1}w0>x^Bg@TaaaepJ z2MKqiM=7_6($b?AGofOFJzx+L0;1LuF?T1CAW{>2N$yBcLp9#O2sEOC(DK2O$33~J z)S;nC4`*c|7!4&cg}POc{8T7nTWTJ}UX2DzR&m7up)VA79%>hR^?XC@ z7HtpY9eQxnmqR9ASoqWzjOBiRrq6vF}&zi+x?QAEVA%$lxIG zh#BoOUycNmXeUim$6GA{Gtr=;u(5qfiI(Pm5B%BhsPUhjo|}UZYoU;!)~Ga+M%0KZ zugB+MD!tC2GwPt#Tn?ArC8!bvcZk|dARdiBL|r;-2mv^t`kDA3@Wz=05mFc2EhLSn zghQs2`Ew+4h zU!i+Y7c?@R&nRk}-`dc2a8pO|Bn_pjE}zT#SB3|MtN`j9R1Z0y6jQIR6|$~=D9o4k zZjE(#K4#p?YXXx)T!5NrNe?+wsmXE-HrFbHiaZ_!?#q}@fBoq?-sYT5u0I_Shh|Ab zkenya{Q2aK!e>{{v)aZo{?s;G8%N`r6Cne8AOm4?Lhh2_NN}>sG&)pcr#2xKze{6t zvoJwZP?bAi65w8GDUGCsQ(@(xE@_p(Z>G#mqiKneppNRikrB;}QQA;ysrZGb)*!tC zQm^nXmwsiF%RUwkAc8eIizx|ypWo{jRECHp?2IHuG-2dzhCRl_5OJC9A)M^62i4e0 zmck+G*MmnKR*--;6e6hth!Uy=ukbLj0`G9bxdu{FfDDtrN(qm$vy^0b?-)@rf`X5% zLQghvdFnMF7vMqG$?nw&{%?K4QqHN{em)f%q&(p@UQ>ypSp(j3~ z)jP-3Ka?|hZfWoNy%w)K9Q$qV@FHsEJ-Gq0lcey}SdLObviwym`-9$ zuYoWG5n-yBi@+w+H?b3EH7Cv`6^5XZ1_5wX8YdgYw&k9ziYkC(JOv01%X=0))}aIr zDfVEP$O4dsEU7$e3h0JI?2ki-8dcKX#%I}}Kf1EI#!}Sk0ID_*wGzlfyC{-I8AreC zirXnDcwJt8)4F9&(>gt)X`P~^F&(T+3^Z+fe9BtRHd^w7(h6xCet0Q}v2{5jJhep3 zMr@!A(EKGL*@D=)0*`xA{0J`qr2s^3$6So873Eb^5Er}FQ5@>yjGAXXaEOmqsB2OD zqA(nFwUScVGK!5+O=Z(mi;at|DlLP5>61fZz^v6qbUIB$UlFv^AY#X5_DZ{GrxDV_ zwp)2%gQcSC7jE){{~GWJCE&(2V_^Xv=1_50vh6nYAzfN3 z)<~PhZ#0rlqy^$fBG2tQD{F0`d?CmQhJiXm6yeVJ**a`%n%5#BaL4tFg<*ede%lZ zBdoDrs+A5(XOTwJUBmb3bJR2lQ>9idz>r-Ch&&j?OI8@#ZdB|R_~TWuQITc?Q9@v_ z0|;Lrz1(KuVRfuM3Komdafzk`Hi`!}N&;+@Jw%M3C@$v=+4SKUtW}$gH)-LGihM~< zh=T7TOX?vLhCUCOz5)2b;IqzX*K8HI+lG(^?b z)rZ&#s&0Ig-4iE`zgz;xXRwbOU%2`RyYNj+Z0TEJgH^JEJ}n5h4YL8(%jD+x%I+*oJjy2Z;w zvK1vBC>O<6McH?K<6H$SS8xF5hihN>?1}}u=q@E;4l4-PpQh?d_=UAA2wHsvTmB=( zQteS|0E?t6EMkoRw%w%T_G>eW|H1B1)YKxRAo;tCqNdhGN^w_9>}^Ktv&v!XqW2Xu zfV$j;MKlCmhnYjxM`$V?oa6EWwx`m*SpRLYfzsY9Kd!u~>@nf$A6>;GR|>?lSAv`u z081)*SxdgzZqsvRTL5LN;r@VH13}WjeHAoXkuj}WBMLzvFBL&O4Z=gL)KAvW)k}H} z27V=&Xuy>U8tC#hrsqFCyQJHxSLj`|i}pU87I~2X}XkYUI{U z#nw?ZM1X;&0op%S^NMDT87; z#D(&Kfm$DbU0{1(zZygH%oFFJY35#;3rlYVY=F?>4<=65MW20t+U})?W5rZrL|b8mJv$>1Q2gALJh9>F*nmu*Cf+vv>o7 zU<>HA&Ir%e@y$gBk2%8I%Ip8DSqlRJpvYf>#xQE_7Vf@s6Hghji!4C>km2sEH)D(G zo%`2T^vssls#hdyzVbZV0y7#3L zlj;4K{RD%_k>p5GWlAmGS&_CXd#`7k1eU73-5S2WVi)6L%{sY^hYd_~8 z|DeSFNdtldlE+D-of9H=Mwa=PMNWE7MZ7@GKiH8Fg(Q3+w@ZjJ!Idtk(<2@i;8HlF zK8f)SBBcfbW`Su^18S`=V(-p;!OXdtEHe~=Sn0hPe`g28A2>TGUQV-#=#CO=p5;vi zuY}hF#1bl?YD$>rW2IsEzV7;Pmcib_W?r#!#wm)Vi9auz5?%YmQ~!89wtrhK?eZq) zpW7QRY@E0SZ1YL%3z~3h?2y5uo~X!L6uoosK|18qPw2?Kuf(4DbXV-m{n-_d(d&MLjRzo(VB@#qOCsuMV-x;kM*Ux_7i2JLcMr6_q5hIyYiYK5A!VKK@6s0Bm5B{>Ppb-e{$bsY$R zt7lIUkSH5TNm1lT36O_2u$sef&wA^4X?nk&@ymz$-9DgYsK@7Y!-CZ}Km1fIN7~!# zjhT;slo(FEc^ZYwmme1tGUtQMw15>esbJ;S%HfuQfJ=}9Ewu>|Uw3VUWY7#> z>rli-BM6jojhcJi<>Dyf->?FnZh+-7Pc{Q?0FSE~a!~>-JneufrZCq}sc8|O_{gC~ zE?Q8x@QvIq0Erxy;er+!@}hCr8+T3G+^1|v+t_Wr$BnuB$A_N!eWA41ymeFUhG;SU zWZ>Lc3$Hx!dhDl1>BpAa?;mhOb>}W)QryF{ik=!Z>6MY=-kxV#vTWYqUU_*F(%bHu zKJ8fb)UWXl_$^m)FQiFLdLfOD1<*Wjb}^L?5xnX;#Z;s8MOBcpY#z0vm>jQ|Z2YKZ z_oGc<6Ze6Uw{HF8CxT~gz?heeXF5ogtc#cj ziUT!oYD5<|30xT1^ToEBu3~r1bn~;)S7x<=Fe^uk{VJ^^!YYC;8g!MpSfy*SYpzRh z85QrBU#rEnx(X+^2p~*Z72FMm3(_>qDT$Mi5+ofo4{wSWqC|_WV&$Qcu`3_E6Z>QG zp&Pf}_0eu=@73*}#jZZJj2gcddR^UdVArjOl&mt~14QbIy6ec#@=e(i%_QkUSeI?c zF;p7v)7+`0_3S!fO(X4Y<%N=dRMEYS4Mm&PU^WLWR)+<@Yoj%2JWk1MwSccAr$G`t7Bie#jRvWV%ww}5cBApR z-9Af4E$vN$!~p8VA|uSydv}lngI||Z<0K3iQ+Nm3n>x^LgC%bVf(=xO|E%}g*qyJRN%a+DLi9K9_e$}% zyzpx5_IjT2L|4~{${#V7x(Z!W)q6GX*x z=VS(*p=S{>L!GYAG(~KMVjE2xJ-_2kn!aL%W{7@}sjqDe9VL#}Owf-rjj~M>XKDE0 zFvB*(zEG@D*XUM>^_mxLuZeGJJ{C`CJ~4e{yC{C8`O0*`)`I``k(Tl)%!1xxv13xR zkyG4!xEc^@72!(^Hj&*|j>mJ=ip*N&z!j{reO<_EJIjmX5(WFx-_ zTog3O28KAruor{66}p2u0fFTDUBjAXx?a|)cFLAA%Q1_9H1J`vE=ar%=b;dn>8zVC zbKa`(ocA_VG*qCVuow4^IcGJ|Mbh6`iKh_ZV>WZ{DbXlQbZyndOp4V2HQ40aXK}A+ z4}O>%IDj`wxpCl0h{8BJ4g1pGv;r*h)$Rm<1PM_-S8j)&`-cbRB!AQnLqfn}G`ZX* zcALu$v;-wVLlkb;ee(tL)|2;%Obq2G9kK zrB{Dv`j!P{ff(i7s%qBb2AaPckdh#_#mil+v$;9^b5S;-AbLRrPH^Z%oku~8PRLzR z5Ys_yU`9=*F54uIrDIiN^`})LXCIYDtyQVCDnT36=`r6zj|i6*h%JTYrz(S9MKQ!u zeLeHaT1>eE%MgvJo_S=gL3@j=n+u4tp6-&3NS_Q6;g()Vs^$8B*AA#RoVMF&YUU3h zkvvNVwjp0Z?{K6DS$o{%fWkq_o(5K;#Ptdfg_X5!Jn}6Km36scDD{8Q_#&Gq zl*YQwo?X3yZo697_#kiZ4A>d9&<+N2VY>}de^73NoZ*}3jhdUZf=;8?vMnMSh9ZSZ zCu(%M2mrZs9sM21c94ot?V>JS@6V^4podP>VU3ENknMagE|CIi71QeikUiZ#x(kmK z(TWK~ouiR4q;@xSfYakMVHT*WH}M*|=>jVOIrtVOa)A7+DkS4uu0p(;;$_HvR9KJ? zpcqx5sG*D%g-oYFlL8Eb?8sV{9Ews;h|9+5UBD60V7!&e^9nF|1*r{Ast!3b*!N{O zU42LNU464$*tk>JGP3*Dtyk4!IHt8EHja7FGCboYNffduvq-8eqPBrE)T$RmDXbV= z&ug9-+hlEFszCEx%BG59wh00oDM+SVLhnZ^(>QhSRlk3-insco8S_2mR7zp=6D*Iw z5&<^69?sNsfgz_9j0vQeC(9#K{zW9r(`&i%O##FvE8@>oc?q3QH^m05q#K)(h6;d^6olx`SoJ5L z(EDTKR;kif;SCDe4q*vA1{E2O+GPg|1^ex_+2^2)P*x%|sz#fW;dBh$O5o%+pr4R=Juv|?)Q7> z@RfALu3z!!(A6`nA6hd0c?`eb5&I{a$p<78Nk~2k6COHs=VsaES%oxuHR+P3 zYwZ{G8N)5ZNjQ{R&j!nuG?^!T2O~L=Z4oJw8&$@e01^qK2cv9#lt$fQPjYtZ0o5@T zOHy^fe#H1>$L?XEV zg(+3|BI%8LU`POmhX#kt<>b>qQzA&dG$FXlBN#YIC>gnD{I>l!R^L=G;nOiRugl^& zGZSk)x4(Pe;>~3itvh+Y-+k-hNkdvs95?pKNaDTyx^7u;^SqlKCZjJkth>EsyYebe z)si0a@b0bdxO8PfyJGrTy5EvsntfB{;9l)!pa&PC2YDQe&p!D`ex6DObE;Gzb&;eF zNwrBVDGBKX{u}(0lU5|D+Sp56B}h2z>8sFG7zdgwTtj{1HMbeZns0aA?mL+DiQ!ZC zr`|8@-@3o`ewlbSDW2pFO4;UYM~>9NEK5DjWzuNr)5M>}KP(1|(3M>M=1>1`In_FY2cP&?I?6n6ZNtzVdqffZ8Q0CLw347k-`18@REk3Cuv02@y!1 z35TX{f|fccsRvC%Ow|-pg=rjlR=B;Gace<>eHv!8^X6^JY@#in+c{P*pDym zpTP3_t(^Y+Gt;I&k2u56%X=+>I40j96j>xYeyk*W$~|s25`NP9F=d> z8fcQglf9F>kG+q((q8F)j6Ei-F+Od1+Go%hy}I#ioG@ORW|(Z8YkbzQOS@aQ%V2OJ zmhdGLOv%H{lgx9>f*Dg6Hp|`kgy}L;iSz`nH_sx%rX^-GrlN^9zh3R}i+aDAno~{5 z38+P?J}U_t7M?;kzcclin*Lv$y$5_$RsJ@9&$)NzPVaptnUc&*l1U>yA&`so8Wcn+ zL6jPLXwn3fDj*=jifsY0UeMPh&4f-@r|}VaAEZuhieTej*o57J`s!J-`=!w3rnf1DN%mQX)jH=BUMT z+Da?{s*bTPvr5)Ew(R3T^_-DgWr?+2J=|s9%(B7hfdwcR0MpQNTWaBPKM!9leyGkE(|jc#Yzt?v1$#1YdaCw zUf+$H;JUTF^VZ8JKYiy_v{`@5#!QSXC)(@_WgL>qIO&aIgQ`J$qkg7|qL(}taL$>HZuejp zGiHdcfO(T;2jFZL$sf?kSpT0^v}CItgUhXOnOhsrE87c?wJ*rFkZ7!oy($@OWek#_ ztJIP$E7^Hv9hxjX7ZU?p&cbMp?XM}p?IA7c7=+rErWBP0!vk=KeG|jA@WGZc|2yQc zi;Xi9=D2&cIQm%rKaPG2q6NpFKSUhv)pNS$m1Ebpd`ho3R1Ld(@l#}&d)EOl9g1Km z%SnEbyle^WIW~!GUDbWk6Kq$sV|!YL9o;SLS27)1V)hn!i@gXb^gd*G*!YxD<1^+M z_j*rwB`?gp%Z~_4gtXWJ-DFxDx#U8*`hm9hGuqc-1?c43XiAI(Bs{A#Ru0nO)2Yj zlkE{*uQ9i+zd8Y9=(^`q+s@O^SkCV=2o*5G}oEyu_}5K`E$Z-LPASz zXkroxTjrS&@DdDw=h?2y!d%X#0+s=nYC?cNU)(DznCpOnrm*n4A@%Y2jaWyd{)9dH zlJ0ZvSmQB~d3!&*F#WxIUR?OZ_|JCy?z;z`xMT6|=N8W2eY5ZSXvw${m3!Bb+RwKU zvVPmLtCN3xcm6YC-g_sGzw^q;SJ3;b5eUK1MGj%#QG{zE^vUTii%R7nojYcfc#K*$ zhV(_myLI(}B`4-R-~YheDTD8+#WwhVHa9%>aLX-p=jug6 zHr&zj0>;=HOfmckGN&xup)}NMH)(fh_i9gQ&uA}bWkDO%&IIet_VhCks3 zU$K=Wjc&)nyXL@w1Jd{JzI(+f#jbpc$=~`YBE)NW9c{t`%0Os1s?JiWYL!am)*z>x z1f;jhE)b)h!mxq}T)oWdrB}-Vt9cXVJ?tuohl}cToAe~8uhZA-MZMSVcrMK9#0MnD zJ`J)kb6k^9H;}uv80IMj^<;*)($duy4FrE+piCNzIi|579$jma{XjFZPGEt{z*1MT zrH@;RWsKTY2a=N_6~W4i1Et;W?<;-#-g}o9Jz(m)SsHa^$EyR!vDFRjFaC&U)01}; zpR69H9-$S@#($|Usl^+`+jZ2Y4%xXO;lh4foEa7_9Kfp$s0@4%<{v04@QGT2F+p9a z?Tyw^7wB%*-7e16eJcJH+OZ^&h2= z)MwS-%KuSc);MiCpjJeQG6)M0EIJh|ozWC<1z?tF3e2KI&r2FOUO5N2Mz0qTNJz}h zst8QcW+f}cgorb4N&18)_0OEi+YNdxqZ% ziZlx%slB z*tzja4VzS$yYib|?B$DQ3rDu#g}*cKmwozFVVIJjowHlnK9`8b;lkY6ak!uogQ}T8iL|P~ zTE*h|Qwt5d65Hk!A9kSa0yzOO6nbL&sw1_}N$hfbRh3I_=2(=8alVlV`Wsw zuoGnoCyyew`A>MQ`N zb*H0b6F9$V6m!uO-NZwm8xDG+n?UMtgfu8{)RtyN$!P&21$KrY!glJhCV8`?N67sB z*Cr}-1iV2russjDdVkiat~0kBxOv=wJ8Pua)VjC@f-UE@seE)Gt>p8 z6B=-Vg>18&_I&AS^++L&!{l(;u%QsO%cwJ&45n;7-&ORa6_%($Fx;af*{EEZb)!a8W~s5&xXL{}E&Xl% zT|GUcRHL*vSQ=~%t{XhlRMWKMEYob$T;n{qBjiY}GL967s)p)D8m5ZlRpWJ24LWx~ zlC2nWj%uz$M_HuDV|Tyy8F4N8e%+bm`J>IN zS2gcnxw;uduJH}?l7DGA_5EF-_%^=t_B-#r_V!!2^=jCO!e|#8q`Y^P#|@SOOBYLj zi&Pid8=}Ebt|2R<#95MYUB=ANrjVw_UE}ZP?&lw_8EF{h9_5GY!q8}$=APm|5qjV8 zx#x4=`BV7dCSn$45eoSr=Q%%Tw+3$0JgoBzy{b7t>LHmY7)d;Rt6Tes~>URgJwrsazG z*r`|F{_yR$K1O@>Nj8dKqP;BOIsTopO-~av&(oRqrwa_~I%l1?zjssSj!adVz06;i z*~8w$4`tpz);`uh1}P3cP=9FqTK%ozJC7xoMhpo+vC0j7X)nVF+DJb!eCGL^>s#;F z{;SlCSY3w?dZ$V4fI20Z+@?~2X`P^UH!J2b=4EEdJjePgT4zS)&*a>ckb99yJillk z1fhbHf-C7wmJwciyskK&(R--lA zty-f1b{st)27*qTvk7qwk&vC(X~g{H@fYrYamWF+( ze=+$)StLaqks573ZIA3>k@1nm+6~$j*-zM?$^X4*)Vh5hcX9vxkK8Ihy^&H&3DJ2* zX+~*B=|<^C8Acf=YbI+a>n7_b8zvhM#16#G3^kFRTai6NH(Wn1HZEsQ)*OIp?$bSN z*qn2J{?_8hbWa&}#UIPrAA2q4%79d$*fOg}XyQ?WPV$9fPDx*w;bR(hAn2|0)_ZU9 z?(x3sRhzv*?+ou5uN3rd^iuB&F#bBx2Tv;&3qyihzy%KH4YSZ<@!9WimGPjGOcN+0 zN#UrBsTnjQ;FP66p*{#)Nw!z9d&<19X*SE*c_?u>P<=X&Z7ynpy$Il}rdiz3Hj8mw z;D6f03F%ge7i4BZ(TrIwHjCXNsw2jbU(n{rexfSCA=81kVN;f0h=8a=lM698C$810 z6B1}DEg5XnXrt5vx}SSQ@)CF6$+Q$$rT_^8jS?4<86y}a?V=(H7D7Y-zgjt8BQq-F*5kSa{He^_Cl{G!JJ;%s1 zfz9585KindI{?x?A)l7j@-aFYAcl&45OUe>%juKgbUVvd0T`Ybhb7v)6i7KHZY2^? zH=Yx=CuS+IR$|U%S$XI=wfF|q-ZnLV#ftq0584wsnLD>zx{iO8j$KdWsmXiRx7;@{ z-^ZS1IcCk5JPX20N0H7L$QDS5G-P)%c-jRe*XAfo*h#j=?lKU&OAl*^6^|p7x}qL8 z7ct!AgqyerA!;A~5+-8!F8Jt7-wxkiU#m~@LBHjHVbTTT7z$}mYrg~$=^$^L0EvAw zEnQ$`U{8r?2fiY3g~=ybOh&VjAvIW35o8R>;1`SteL zD^p_K;txmfs<-G5=&jSQzkWmK0}mhQGp)XSHr?E^|DI00uOG5;4XuW<2(BQe!=o*9 zWc1;36%iuVYM@rW0O3%z7UETzh8=)h`EEa6F&X(QzVRnTn;9+>a&W-AbBY$yw&216 z?>aLLOTuA!pYBcJHQlGehq}KDf74wNF6#0T6rl46E?thm zLd)v~Xf`Uv<|W36 zm}-gtpaQi3u_MHf_*SZri2l1jvSA72cncr`KF|5H4NL{cf5?O><;%)7uWLXPtmX{R ze+@eb?SKP&I4%T$5b}I->hI1*;qv+W(d2X~*0N&ajG^=B8m7IcJm-heBR0AZ!Iut_ zC*|sBKkG>A22i=M@u>}l%PawaE}3?#JQvI^lhg*SUG3L;Z6NlQ)OxMnq_J59Fxbig zjbEPu;VmlXX%eO~p4>MEt#MlQd?l!DQ4~bzt%V9)!iUv2L{i1!@v> zj!PCJVZlYqjH2-fc@nsfdL5aeTgrU@^hQMsE~y#TrJ!wK@AMWG8N>BKL=BK950Xpv zOIVArEqDilc+mry1pnCpXz=_x`Y1gju&ZNS{6Bz?WS~dbFY|V@-~M}pLvB6*pi79p z2#N}VUsLPp146Mm1gyxH967*oWBvD*4FR4+(|UTJ%qUxi_um@^)}WNbk~FPf?vq2Q zPi^>=#nm2V7dm7Pv1`Mvf4W&NW>;($swgAFz@6GJ&acMGxp_G&07JTv6k;q`!?Ex} zre_!X;E=6a$j2}22K($xi65TQfO-5v7~m%kda}DY@=1(~q<`{-V^7sdrB5B*Uf$)< zp5%cSp340ggZ`nj*0<>NmThmJq7$xsN*5oz`YuMl8SBwMG5Rg!_QPfyF~i-@EENi3 z2S%8GBmG8$5LELC)d}?p`E9e-thlOuqFw7W`Yh$7Mt>*Spw|@HZjy$}!}T|t?kC%H z+w_O&5yKn$w@mL?J{3RIzGwW*@|DhJgBLpmNm3((8lWUIAjiNYnaxH^J0QuTQ-f7S zXE`aH)KW{DN;f(ieH@>rlc$1%*jM+Y7|1q~X?DK4|H1H#vBE~Cd5*T)TUV}+r@ zSZ;d2s?V|I*!#GK+lJeRI~#3{_D1Id^*rMO>q5su=St&R>w4RI``wOhy50I0EiYJ) zIlj|<uud^vOdW-Ei0+Ei8>kgSoMCj?q;xSaQnL~O-2?3E> zZx9C?S~>pgy8T7)PvRN}{Gr8IJYd6VVFB{!RTdxbv0OasWt4m8eSk&qGsGQ1xM3a5 z>~%Z588R@}{d;wuc=YS+T$0m5&d~_hFrm|XxusuM2&K-0D zgPy{hqdT$bU=MRnjHP3t zf-E9)G>f$B$Vwo6FO!Rm@FPZYH3@CC=5fu(L}sJ+u*F$Mu>xWD`#_096sI*>9fj#N zN+@tllrUxldMks-sCBm*1!Kab1HQ|A0GosgTnHnTd_j&FcL1tnQcPn^%S;zcD$^W6 zw}g;A0;va~CnNgznk{p}Y>KuSyi*<+7}Hp%wLoaAwR{EX^egTdWqpWQ3iww7eS`S~ zGYFejSTzrV!b8LKnN+iASR>)x?+>%)VQs{}NScOoSQuN}zi2jdxKrxo++hF%H7C7th6>}I{fFAi;BzT35+eMeOPx;{ z(OBbv9k464f&ZYgqBC(aUB<#_#~2-;JCpE_pz%ZDTkULQocWN{nxaX@|_+0XPscC@|Jl zm}#spJ^~h(yMA1PYZaj-XYrQ2ld-1$V?Ww37f^5Z8pEvIkCwzV_=i%B6L*dqVGhI? zLdpkI)MyWfLMG$$HeXF38h6y#qUv}}&htd7Q9myXCd)9G8}lCm=_{+lwH9S#5QC6g z+)^#dysNxLohE?VKvbhnkaFf(VUAQz_zWs`{t*;KTPC5ie$k*>%b1&Ik54!Uk^akn>ONy-wDRD`uf)2SKVorB`fYOC-Gk8rH_-xVm^c^q+Zz=u zu#(HKceo^DC}HS~#S!Q_NF0g@PcK+P+7ArE2M!Qe(wh}HnG8O(yw}~7B9UQ~JYcqE z3^Gv1nUaL&MqG0_Gm2qIuyxGIj6mF!deh`*Yga7n*)yx#x(a3a4YkwG*DFo5;MDxA zvJBgx&L7lP1SVGs$YaMDSJZ!@F(DhBFAEz;S8xY~6(Hyw3Y0yEVO*aCuwkxaG>qOE zx01W4%FC~nz1Uv%GvIJ!!OP0FVzW00lUT`2n#;;G@iM}M39T61MNjw6QV3f*QtJwXXue?1?0^X1ixaU zMV;%AtSo?rqongu8c98Rs-C|r)g4(OQ>C_7|4>b<13Ff!y1i5bf4X0m`Uv?S1;M50 zs8G`-5a>op*Y*h?-|-8S&=hZNvRXVxyOy-+LG25#fysjj_TLx-n&y1nGbyks5( zjlPQ4SJs!Qu1ouF>`VKC2l+I5gp%IZE|ExFyZia}YkVerj@o9j@o4TA>_)oR*;;xjNH*6w1=+&_~(rMOZ7PzR&t7Rm%7EdArW0_#75i8r26M2SRxDg zvwetXQw#UtCW(EZ#DcjCI0o(~F~P)9guq`ig0+r(?F#4~HdnGx@}Umb=>C?#XRk`Z z6;ujJGx9VTRG#27PW7`3V6FNAb(qwl{6`=0=Y&}RK~3EV(X|&~&xx22TBBmmnX2)I zcLc$s=qb^_^3P_L{@T~s_qnG{#YW)uy!Sqas3Qp3`$!HGtRmTE^*N9P5TnT}7i%xv zz{bVLwOsV4jYsFK2 z|I6|p317DLeIO{v==)H65%!F!@3S^Z)p7&>K3WCKw1o8r%k{P4$>(LN1Z$O4iH~`S zVgR0t5_Ji>G|`%%^@)v%)Y}C7k$>ltGq?S|ppN6KH@7VE7P>jzLf@dSVZ}}`_AF(= zKs_`KYb~Ex?S=7}Y~=j1Yk%y`Nq~z@7ZoJGq_nGHCN_62z;JB`GGXeKIaRqVUCVj1 zm?i|#xdTH#`4eO4KR`Aor{nf7?jXNOPTp|^8v+%UiM#1Dkhxd}m(E9#Uge&H0-!|8 zfyuh3StQU$?m1{y6ZLWf&S1&IBRuPQWC1rY13ATyXo=vV*H_*{)f09^Ey2 z)~;z|d-WVUwr8)g((h(J`snQ0yB?j>YwXxw_(d(IBqvHb)iD4B^2j)4lhf}A&g*n zgcg{e5FWQamHSlQ*Ct)h%n7RTnPP?pMhQEykOR_8NG1;W=uMx&+7s?%F{|rtu}bP zLbx<5;F3MEK`#b$dXq_=E&KB0*+E+!bYE}c>tm!C=J~)%E(s50QMjBL05K0&pM^xhm^sB4AvM+hcHtaA%<1EoKrpMB*_H`nibMHq9{5|&N;MdF)xtlNe$y)FB~~Rw7xjLIMu)NSTg_L9h~S z-Cx8U?i3Mg4ojx>8B?Z150=IehcfjgqXE7@LN+4pm9-cqOJ8R~ACHV?+sMGG(Z}=N z&HEuw%$pUAMdO)W_h1k8);z`YL|km}4m|6@6a)5yAwW_LUdSiI6$g-};=@Fu?mVoU ztOqd**$?zJ{BZwP3dYaS3=IU4#+<_rk~o7IR;Ky@su^0GVfn%37>7TGL4qr}w2ov? z+&hIV-kp1!8vt9bls~I)EBroAVm048OXIJ;0V^&#TeK2f$aPi)Q-~0EQ zw@#XIpP0KPKmVrRk9T=Y&tJQ7{0z*( z>yy`mZ~J|rO6VtipiGvE9mUzz6N<*y%vH~^F3ea^u%PRrx<$&OZnOK&?zcj{!n!Ww z?t*n)*VV04)^%InXL;Y{{kG)#bB($7?A%BvsZV#CLF##3U3FBaiqsUv#ag*f_v`9v zs*B=Ln?Yv?kcxn`iUi`o;nA?f7gUOx}pa=xCq z^)L;2`?DlAOqt|hPEJPMc8a_{EQ$g;4-YM42mA*#2kRlgH|{p3a%6~2IRIHJ|E!Ty zE zsHW_ypB|~~-Mw$#%)#~JUYvIPOIq5mZ&~@XcXz+OXJO&aRlR(7HBRbPn&|)Z$cgI* zjCnZNV|KS?FE&4AUpQuLZCQSgZDR^*m-TNNTv*g){otD)8FHMQjg2p^uB)3ow4!iS zRb6%UE%j^;O(Uo2BxDHI3qhuP4^d27^*anbONF_Ho7yt{6#Zg#p0;&TleW@7 zG;Z0_h;w!=0yM}FtiWcl_8RMT_4;~Ky%}UD#C(i=ClJ!8gk`NMOCt+LLzYfI%StY% zn6k|ljn681Ei7dT4=}>`M|VK6=KMC81m~Hb9v#pm5NoQvSqvEaAzNSga4_t`c&s1;m6iGee?eVUFI_KdPkVjUsKUwFlM827 z>HBJ8(P)m<5{<{B7Mr8})napdyuL8Y0j%{$(m8=y{vI1x_MM6Rf<)i+ljfghGZd$2U{#h?ML0DgF;j&rI@*euhSF~+&jp6;hD zaYovJneuF;QkRt#m$|~A9*TwB5qQJB0l$zD@cB!n@(iJq8mnH|6~sqA9Li`(1}Tf1VZ$AJ0`>*AE;+3a3_pF>b0@P$A@$L? zH3iD49ZP;!^iavT$^lbD&XG^VbNmxS(?(8NBYt!EwVBV&DxJEs&JzlTx(%-w*tqWG z>dAc?`b_FomE-F=tGc>2K6vlVk*>F_`192;lyqk5QJq6Sn}wiIAt+?IQt_Z|i))MT z!OYKWAGkj7eU_;?o`1A}#^SjJxy6Z2Pl~(sPZf)!hAad7HAVZpD$fm=)2*!bB$HbB@m)q!4#(T2L)h=fbBZH!nL;w6K8 zGcH!QD@d}~a7iGNo}0>;g^XVM9hv;r>&XXReKq;O8*h`zzuTUC|LG@5{;pjl|B0uP ze@w#hzj4`srHu(+r`}_C^trJtyXU~|vxemK9T{wv9?uf3Ao_WJ8&(kri#DX-kI zEBW4IyOJM1`6Nl~dW;n9y7H}@2(WX(g{=`B&DtiVK%}YoU;BROqRdy;?fvt(qqncz z8@fGnZvE`7_skrz=KrDFTP)dkY(4wdidV)iotDwB{;>xhcw`dOWBx+dssDrhONK4x zVI|n0C)L(+TR&?ro20ke%qApjV+*^4pd9J|R=lxU3vdEDQfD;iw31*nSxjt7n@Q(p z>$A3Fq_f~)(_RC18CA3Dame|%DJJ1@8WM}eF-Upmb$)V`q|yv)_AOT`RV-}~N!6_Mp>t&4K)mrKY#S5~^WQkVtZSqI@VDb_f|HdC)e|7O67kx(8 z(L)OswDc2;TISMqSKp)0whX0*TKchl@eAo`TF;|($FrEcH<(EUc93hKx-opPlq{oX zh&V%BDl8Sn8Nv)g>&ak*@Cza=T;ggXA=+k4GjJk^-aUv2;ZIUh)xegEaLK?(&#H@m z7$K;q_{GY<|CvSXCeN|f?jl{H(^aovp2=dj>HZZbl%m}8}nyB8WMRrb$#!L)Wm5mr6yO27n2bTfxQx>rH zMYTM2Fp`yR*S?EnWydihtZKC?Dk0Ddkq1c23Nl~)IRiOI4F<6LnIzD<*z7kt0d-MH zT^-D}o^lw#x{j)|)tUuB0`JCP%}o1dKPkCC6=ihoecG?pmN1yLE@2sgktLY@B2zHZ z<{$?Dhu^PxCHXZOw=fx@@mE*9LVU@G7m&}%&SZD;(r)71%}Ba;C%@m#`hkGCW)qj% z?7|KuVq$b4po_7CL?)G6&TfXLi@}`EP@sYFlGV0+j&nC^!ktdVG z=@81Igod=fraG^>Ao$@6C?>s>y}2+JM9rcFrt64UWv=n}jP;H8%(+23Dttq1Xknvi zxv&hAV7a)$zcTQG|Elm)%%u;=F@0RDk-8N3BmJbl89hUN;{6Lo3M0kgfg3}^!z1H2 zr3z^FiuvqCuLTbP;*@DYQB3xQN=S*7k;z*~Cq*BLg}}%H z#;$g1?-s}oj72adF|;rdG3DD%uPp3EwwTzWlYYVI;wY0Gc(onX0Wc}REcwMj8%}N9 z%{iRe*;vGGrJHTwDI!Je;c}e&xEM{ii?8T{m7yZFsgO8?^-6!;J$CP~%$!5X!$;T7 z95x&8ZoBRP>G}GqH>J_{-11rSuP#feSli+q*zLx#pOS#8?8TucmyKES@L!TU4#YEW zd~xV&Ti@UES90s2-e>w%FuuGwBf8&4|9tgCoi|L%i0d@wqVOPDp~{pTV9sN{mp>@i zWqYH(XsmNi=S~B126P(h8ylPJn;To^N3X&ol&N6j4%Xj7lNm!i~B!%|kpb*q#1XE&GYKMjN%{Ep* z2w3O`*DcZJOz`GfC{S%|_v8{c)X%iqkB{iS#?FI>Hy-Y>X~6Koog3FYF#g_q$3JlD zrapz$112^O>XfLtGcom?9+=gHU1fDic;fI)i4qnk57^vXr2k z=nfcsZ?y1L@KOV_Ju-d|p{|IX0F({A8=qn5b+kNUZ6lwz=LaPlS>_aMJ@-Ay(u6*l zoR+-GG7=3GCQBX_GJ%4vY@XuUz_P{wU8vuWuJk9QmN}4o z4XI`R`Q$HZx>oVDSo?H#7!kFX zJnb1`QV)CU&o`n3sytvXd>>57dQ>8Ln0}=pp!nQy&&vv(FrA;%(xWY)W zq=BzYtAdh@h#;(UMx)OtXuaoLE|`eOInW~SIjp*@(FEbTJwnDPA*+ob zci5|}u-hS)uS#pFW!Ynn5JAy9oxUtVS6jr=ZV{nb1-XED_xpLe)1Q+BrR>?*ZP}P& z(a(Hqg_2}xNpj9<2n`H84tNjN!W7#L%ZGu~7_2u*19qBn{&S7~2ip((v0^~pO19(o z#^mHTNTieB-I>@vN>0K1apYnA_FT7d3w^!i>dn`cPbXJes<&)hmwbUqUONy2@)NK+ zUSXRuK1a$?<+!S(DqXd{kJLxkM?YK|shunVd?PK=t(Dg5tTva|AnGYz%xbE01Z2I@ zL`%H@VEV@Rm-*>l{|P@m?f(+4V>7^-#xG6egz2=23Z{^0FDOX7K4wNpvk5e$i1M)) zG=SS3(P*jA4&a?3KJjgqKRLkMz$C$}8;e7_MAUK{npym5XIW{lh9OFEO>=YE+yR4^ zl(9J1C4)0_!`^-^N!3fquK&Jw=*{aclGiX4%fPMvCbV*v*L|u|e>ideoF?x%Nz6KD(gw~s&*{44 z3g^hGP|Vtx^AN|juu$wv=TllRWQ4T5iM~sv0|iO}xnRNXi^Z|B0`@wXAxN6n1leuK z6RUf@I(opOU{S$y$xk=j{mcWekyoXhG2Ob(BX?Z<+kF#y^uKZLebTJjN7mGr*8gdJ z^2=o1M~5E&>&|yIyZ7EQHkogl`tKz}rdAFhU0Ba9OkS^=jHlHL_b4F=gohF+{=`rU z=f>EwRG}0Mnu?iV#CqZo5h%ncO!Ox}53Vs0TA-G%2OGapI!0>{3E8CRwSv9?l!`<% z47_Tk`>>w_mCrmic<_dceC@3Lnn_SNF!8V*y2eg8JP|@M1}tHMQ#m2)qz|uV(_30@ zmn>H-bZX1vs`nqedim;GJ6{kTqQstJC!XS8cnVqQszliQlT8xVb0j{Nj=|?~j84^J z-V5qu@;nXO{ZJFePSHkwk4XmAg{|RsMw^Y_ovIs-UoCuD_5P1b)E`{tmV3Cyq;XOl zE!9oQRLfMKfJ+rTh!CVjX*2N|u>k6{n-On&=_vh8nh1zl1DOFNZ53ofBkOU_2E}h= z&637F`ciV(i`%96Z?E1i-pziQeA}8$i{;+PTmQJ?DAi;m$lqwzy7Ti~4#|*h$weZu zZD2n9wmBm=c7#5vgtD`2Pe3JTu|KLjIXqG%Avv@Swr zyLhpU263PTZ(G`o#+XoiJVNQtj_3FSRvT6MVBGckb2^|RwQuyPT|Q3Vv}$wxw-l80FOO&Cx~*2XHfqt_ zP%*gdy3%+~jl=5FM#Tfv{=oQd-MZ%#RcAXgvhpS-C$x5N`A_nbN!@#t7gWG!7M;>SNh?`k1XC9Hs@w=wiUVgNMA%c%6#?o^u3MU#ygSiD_we zM)tYl%b8V?%b_p{H*P8=%Sum_(lMnoOQ}*i7%_RybF5H2FIUxA@(@#kF0u4fY#lM02 zicnoimU3So5ApTxTt7&Aw_)2okM-zIa<@3FcK9Q{1P@s@J(p z>R!cJ-D)GlZ|~Ce_6uEBmE@3olM8ETEVpJ*wS!4L1@tU^iO+Jk(0zZAm)KrH!>9!{ z2?_?Zhfh#D1mesU8-MV^kGl+kRpwl6qbI#!;fYyt`#PAkEwHLH8%f%53i-{=B8bxR z8<~6W;UgRGJ#zTo>&K3-A3Scn>iswN?s?^Yw}%WtFv&Ot3B{3w?8 zh2@ZuY-E>)+%8bwLh?m|=yGK3!KaMTT~=EiHaA-VFHEhzY4mnd^eP#AVENRW%EyqY zEiVtw?=!A+?3){pH*P+(qviOH?sa2`_{giI@80CGL>Q)#JcSM-Nd!T zy?Opq$$x&5e6!Di-Ox0ESWv%(xW96t7GAIKlrdeZyYv~5TVFjQcXaham7Jp#N6MlD zRNYP2MSJuaDGf6XGY^S2$`eiF&Ev9ex6FyHw%BX|p^K#p?b5~Ft0J%oNk(a5VM$G3 zt2+>?3B=~MN>MNqQ(k{`$O65!;2^Q8BZY&fFkC0atbD}(3 zD77St6G~!PLP{JVXBD@>9}PshXP*I4l%bBnr48Qx*COuNPTJBi5Jv`#1}=d24!Agx zFpjP7@W3#yO!}CTk3fjS4F3GcYIR`Y7DR7+xJ=9^k zs!x_&XkL1J;G_>1J$roYzTf|50%=@+)BI}to|tc3zzIXTK}(U`JE?^pZyH73G{sO(3lAm#_U@RaGI@tRZ_`~j&6`33zumm!VkB;j6b#Q5g(2uKH_eqV?L`Y^~Awl~o ztsc>-iU|3}sJE9e)H}|rae7Hk7;&i%6`<7 zQP$D1wGnBhu-3TNveqwsOTP2{B>Y6Bx5A$apNii{q_>2(=w(UVZhbKPwD?R|TI^pC zUJ!XEOPU;R%mOpGMVe}z;F}hkD@ed%M0(PGW+~<^@a0FUebVE?tG-X@*Jf#;p}V(l zX0N!kFfuP|i)Cv>8mFD+oR&E$vM!>si3p7}L4Ncpox&C~FpcIrOcb~U8qV@Xq?{lv zfOSsHk0 z;~i&pVvIW+?u~(o|0z`_m@Ky?HLjVu-#q4QSzBGGD} zlF1Al%(ua896(-jD<(T-|C)G2eP*sV;>(JN-~=vnb^(%Hxl1#0d9 zVJLFs>uqSWknlu_ao9(gUyKn>xn!(OENB$Q5w5kzW8%YO$4sen2cNq8`D!9Jlg788s*C2Hm#qpg|*kv#i(JVZFw!Onz`r)8N&;@9EKF+FDXTjCuQd zz4O*@#*^<_j@G^N&VcGXEEvB{4w34ibBIDjSff;~50b^f^_g@^aB(IbW0{gk8!{V$ zw14Ie7COMzKZDlTdRS;MLvN5IN8IU@thpX@gz0Na7=c~2qS`UqIW?4x2;N#6kw!<> zm_~=dP@(&-{+N7$ z^b|GNmuHdPJcF!CC_2RK*)2T>}r3~rDy2dLDD-UC6e zAj<<%RJ<}cZ&Wgci~k6jpul9UR%?h)tMY2J^TSO{q#XoePpt4B!0OKu_>!wRa)_l~ z0D>q*s+&3imMFdagCa(bM~RftFZo8&ax#M9w^bha<9M-Uq;mh&H(9L>^>| zfHHcbnh>p4kagfz@dh$H0*M6tUYI-78k;@K2j`~-;bS(7)02@ARqMe|q0jK>)sj!0 zp#goK))}x6e?ZnCpofw81VUz(GsTz1^B6{sknQ^r9ttaSgN4Oyfe4AaP{6OkoC7I= zGL=vwtsC)mgRdNj6@&|&8=1NJlO33FhH!7p%SwAzWhpi{j&9;p)=Wy}ERk(|g<0cE zD{3tJ-t@fbak+!D8wRh=npj#@Ww*cMedoAu;mpy=DG#}-#z?mHE9VzB$_BFDw2`($pre|h&gJd0h7;c1sowW z5{UX@0QY*!X@#oXTM_623O4 zsX)pOWgVeA4#z_?L(4)GlHmSkL;0wU~kodQpm#E$r=C(x!I?^!r2yOtcgX-1wtu*& zFpq^}q69)=sK-=9q_3zNfM?Z#%L?)7Fwe-}ksk?NK)|7|mj4-k3Kk2@vL-eQd`Fe^V=z`p~a_WTc_e&q7|i6R|eBLWN@-6*+(_yr*Fj9uU4ZztAsw{8Szi3 zmmWDY^;)n>c*P8@#Hg&^R*;E7b6J-4mvwUyuX$p>H&Di26+fb2)X!@byw@tAanNoT zz<*q$x-89QR7>o8>=jXUAntvhdHF(cQ$B0hlLBkDU}fYzl}PYYtdT-GD_{fIqO^!; z<3~hEh?|oyle#TSh-O>zbyB^JT9Q@d4e~~^D)q|7{(3yaSLtV1rXU88YF(lY6g4t? z29HXwYkvqP1_M(xuTWv@zB`XMgkA&;P)@m#0p(Ma=Lhlx!@ive2DOB$I{kKFY&K^?GX={B;cMZRr>>!g0*$ zXd4!Pk}CT#8HV_ie8r2vPtqD9A;ptX7DCi@S%}=gu95k(Ya|e805mku+r^_;QZXkV zlecjdSe$85L0tj8rGONGeT?DMDM_@4k2E0MfC_iEej^`;zU)Q~E+{)3UPq=s9eJ&q3PLlyl-qKE%p{?(vUZlNf*dOWhCF|k&NY}o+1OhiB6HoOcR-_pKYW| z#KmwCyWA$5!=4F#9w#+>kl@y8%e0uO0HYt(1T$6INP(GV+T6wN!EPD?$0Kz|W6q)0 ze#J1Q)4||}q#;m5LeO0rBe4KaGV6^pE87EY*g)np!y=S&SvK$tn4BO2Dl0QTVP8pm zGTZrBnP3AEu}xrPTBtf4ii3|t2#4HY%!W;wnU7iOT#K!=1b_l6AHVwOYNQZ*|DiP` zK+1?_jab(*kKWYsRLimPCvN*@$Ih?5dG5In&YwF)x|8cj^O=*+C6#BB2I=m*lK=TE z`5sbBWstt4gn*Gk6mDoeCwGT78WIYjk$$gCi#c!7(;luKNVe5KuSY@uk{)F@sczB? z$+{(WOWu$Iq`Nka$(|aUnm4w24T}w*J0NKj{VN}#u zURo5`Uz5+fG>TfA}#>+SaS&EolZFiT=q{%mnkorwU<@@N(+; zl*ocuI~YG0tGXo3CU4z)FO#1H@|H&6<$Q{fmE*zB1EXB3Ef@u}#*B;zsP9UQZk9mT!A39`zCkYPqN_)G_Zr%nYeD(Q=+S zBk&)bOpIv;+1Q|k;g|n|(G21@Ecy)ijD!Q%&WYpYP~OP=$}*8`X*-i%eedyAwS#ke zxkuh~?F=o|Tl|&|QoV__+bw*i4B{sB#6B>(Xp240rSScoG zKnm7=Vlvkn&|Yz)yDI`OS#ufZLV&Lo&}4B)ScFXGt;MbVJZ_gYRVs`ZzASEXZvp(1 zNmMPrXsq^jYHC8erMNwrmIa?kCEIA)&To1-m>8K4cK1KEok%~TfjVEG+uL=^kZWgb z94-_8MXu+gYKc;@NV8r;jT+J-lP{p!)0bFM`iJD_WjaEhD#O!?!Gh-m8ljeGs%DU- zWFrWYSpzs_T#G*<#zcsX2?GlRX$$K`R4seB269$NL16G?YzROU=N-=;r(bH5zR)&E*(kMlXynDe*0yY&9z^QkJ)ej(COu3&sHtT^Ge_uC zidKQYw3tDHUq>5>gEEc~H=QN$6lCZ3FAdbXqG+S4-3NwOX}yx`Jd`n^ZfH zdbcU<{ROlg?sbM^hm)^}SuI*FHMKNdYGOub)DJl*!u<8^Q)CHq^0pj2B|Zop_N(1V z4`5T6A4RC<>#7ZqF}1?|N(1hrQLki}AT@ds);q1dQc^i26`B;t}(1j-7SaJ|&1<8Gv{xzdJx6`B~g<*e4E-C3Hn zK#UL4$z9q`Iu&av#7?)C5z;)G96cksfUK@gJ_`YKqH04+WlLxJ8h!KDmTgGeI}vgW z=fmI;dJG&c3mb$(P*QT6;nrZ%q&-m#%yuw%At(mTh#E!kRir)23xQ!gYD*1!doLbI zTbsHD8B8(-Ka2CT>Qixkj*c=EkJ(CAx4tfBVg86hHDba9p)Qq*L_m_cI}qFoPoPgl zywV?zl4l{TGN=^XAxu9w&-sj?uy#U*u+uxljO)K%9Ne#b_|AIS9~3p&esa1WptT|Hfeu2sH1zIS~h+{?*> zIVzcTqEJV8P{rA^%*&1_inDO?)CvPF=To1wq+YSEr`7TF30Jk_mF@~SbQqclOO#t? zpcZZ{D=%}mIYnSC`*7Xtb(5E`Xk0gEUGLsFG_F`a86WlDwQb6jZTC-|vQ2z>&F$;@ z^jUZNn(22enZD-s^?m!U$N7>w?wGo58~(nHt!JZzJ~W@}9s^jWm4ARu7n;vM6dhnt z*bbhAA%!U+E=n%bxq|9L=oYmMwz&!V&}8)y(tjUI?gE_x?hN>I*e=Z2&{A3u$s*dV z$=68dt+3Zslh?_cxZ_gXu?N3n*+E%!i!9C2+lpI)^2P4KZcry~hsrWpZfZ_l`)gdh z?b<2*gse&aXDcaAp56+AkCRCyS&R|o#yp*iu?3(VG}gV!FqcM;j1L;`5|3aEXh4gY z5Cb;AF`$&FeNLU*X;cMU{cw7=0WMikq2q_Cvh0=P82L8N_I4Jdz;|-)*D;yQu=dFozhG7y zIoJH1ccw|^S>JQpN{V8htxY1J2Zwj;SaaXlp@H)Jh8}ZSkRX6Mwtgy-nM1 ze$RDR$9JIHhVYNJn4NBmeW{i}!X=N#E!Z6nLeLWFc3=(Tb-4uA9E#Vw-E$m7wxY-9 z@6Zh3$N#UE@cn8_;Bl`t25SfgZG-xlk1qGK zt6d-ZEIFNpmXgf}$bHFa>^J!YnYELCxRczTynAO$VrOy#o3}^l6l4ji!l?HtCIocR z+7Le7!O1~jc!oU!Gm-7TM^Diy9Q`{r`A@(z-oqX{UCH^EhTN;!p`o)hE0Bv@L;fg} z157d)DvyKQl9B`?(iG{Emb(8}j2EcN~Ojt~8hOJ!ogFu3!nxjd>XC^pJXF@&JLnF7k8MXeogLy%vsCi zpZ}IU1w4Jb{0SR)L&sL=c>dqQ=e4G}b_Urf+WMCK8Q(e00?Q>)E%X$Ik|m0M8@XSk z`$6O`0)GCWVosrzDJe-{NwnBsq}v4}eDZ#}UC~1*sga3@=>O}F(Cy7#x**tQyAZ*j zbA-P5pnLa1e10HDKdf=!i}XQ3A%}!s^ugwu$tCP<6mJuF8=UH9Z*_QUp%3nt8gCqS zgq+_WX1@KzC15|>e&IDpi{`A6FhuGwCGd9+v0~dFfX&>F&f;;_tA-AV*2nrstDiEe=+*Jt(;JIHV$a zm}edTei_t}`V{z6h$33@%W&xgDfdW;X?W)L|>qV8SBo z>?rG{xC0)A)wm;T%tvGj%7R&h7?jLVnPAvsphbpTz{W$5w6t<^2irBH8RuC@+3h;m z{O*D5#ch7zgE*n+ZQe4l-7s^T`G2@Smr!%CWJ1a%Qz4<&9;U>kcmga7=?TS=5h^n= zL+K9WDWf}p6hx@P5n?*XrCxi->VQjw*#Lj}RNcv)s1f7B*>2opq%(|5k;E6+H9XT5 z{!GRW7vX#i_n)r%?zGFhBJ|OCpaR~#rZf$SzbGo{)n7JY0ig} z85TthKxim!75xyd1K2@QcLO^}du3T4bCw`}HyF5C50Nz} zolyM5qZmwO^&S%R6nW@U&qfdRfCd9??74OcWEJEZ(l4*_5x)xO&Tv{Cj5`CgBI)}w z?u=i4zdKopyJjg4;$l24OI>6;P)e!Wx!OyDQ;)M@oJ36*axZU;iR*xWt9J1m60m?$ zVV9JmjAhm(EXpiH4~V_3ClB!SEX)A+G~JBYAhpm}aj4YL!z`f5SS^f`prqESyMSKg zgksei%A|3^IB_YdrCymia-gAI^bBnAUP3bD1da?X0~QN793cV7S@u$-SG>9D4}UuG zmv>Y{(=kuLI7+Y3$5c;4O1)pPt~L<`#IOi=(z}HkbDai+1I_k2xTy~)UITczkoaYu z{!Yt4>m%-Y!cvd-%P<2u!v%Bc?8Q|62sk;v{`=LIvs_>10(QQ`g%Bpu8Kp6Y=qeGM zXcC9$E)ldQeF-v3*-MCv;Gi>VFdS1$Jlmge#sdrNF&0?B&7_s3%)c4u=qa~M{y+BK zJ21*B`x}4mQ>OQlDVa=WGASehCXhxFAcGL3w*b-th%_nE1nC5%2_n^A09RKR#h@Tf zT@cIK!BtVQfUaF}+3%vOz)arHxz9`zSl#cw@9*CqVfuaUz0bYpo_p>opHo>eyz|tm zNGMCYLYh9fdQ#WSEO#1{Uzpsva~aYS%%0sL+v|nO0I6@~*ToIW7|3W5p6@MY1+0Rq z^Tc@5=&8qB=sSVW=Y;YyL!2qUzHJ+>Z7V-5E>RA`uGn+$5C~w{m170~!9&ZS69nBe z*tNA-#M@)m7<*3sA*A(L@aw(EOo@XCPa%x_)O2bh>k8bJ=vc=1jpXJPb6v0~F0$Ue ztp0B6B1>)efwjuPC9790?bfvm_54eOr@g4GL(hQ_17CdTub>8cT~^IDIEs-(tIC&O zo|bo=IRgrNP+le)l(SrmSh`QY(%Khln|(2t(AT|EVw#nXzEWS)N@1FpYdL<7`_7*y zYQd}bXFNz;y>d%bov1VqPVL!i%9NhHr}U`?GDPRrh1E)B&nZ*;^qn%be>4_r(;F@?wryKqqgqeAABJmVHpNIy_|Prp<#o8)L!Ixf!0$_dGe(Fr=jS z9MfFc@5*olTo{K+tfY%rNubO-JVHO{$OK0Sbq!IxU@;=vDi?hB&g;v*KCZ?Ms z@V2`0V$}~*#kYg=_?g9dgF5#eS+cOrb@RQ$dv_b$_NMf#`4fg>kXzxtcXAHW1Nl-k z%qnK4I0$aF6K|Rrhy(^AFT*(awB$nk?+hf`%s|SEB}#ER>4rBxJNm&}ig#Dy8zee~ z+6a|>$!46=L@k0w7#ygz&oB!P5EzlCm=Q=OmRQ&XMJ+UMI)f~R zkcwrnRjd0%fyT)&0l7dz*su?ZPwll-k!N|l?kk*SK;rx?D^&YnYC&)!)KFa3KTCm! zAXjZEaNh0Ajf0#!ym|BHW2{eNpZLM0iDK!ZM;42p#9v{)M-pGh|GJyj6ohVe1bsFl zDyLs2hk-t7K4ES&Yv=}yl5D)}1^`|9Dl-@j$vz9fs^`6p$)}+%>?govcmf%)`k6R- zJ9=D~>T=8e(t%9vE!5v?f6Lukdt}v$6?@mL*(-Lw;ei{(PveK@+&?FtPkYcP;6!|{ z&4rzmc6_aHnzdr%1;TGS*N(MIbI?{-(!BTZeU9gQ;P_HQ)oX-pm>{}lCa!VwYf78- zhx{6z8Jf34Ap_Ko3+-S(XMzK&kuHqcnp&Y984{fIE^nhQ*~UTM2FkmT>IUVVhehD- zC25-G}dxdF+?=4rHA(!}pXobr2N z0@+m6@lfbsE%IZ%3bq+1FDUNv1h*$P{QmpzSKhhwos@R*_DkPN9%MR;Lo+%8Gwl>| zgxh0ny6PfQQ8vsSp>PnEaknez6m;3yxq0ciIGCCJd0|&b5i5kcT#630{rm-}49X-p z_u+sPCAP$ktYl%0gE!%zRHn@|0`x@>yOgZS2m}M72C=FZ0y@U zz*E2!3NydO4PQ>~T3-O9ey(Z)>Hs0Mz$X=${+dWm7!E#!m; ze&d|mUS59n#>A7XV#`BCHU0W7zU%(P8*E!*nt1O@@m_aEpK*!fFP=#}w)`p9$E;AdA(_f za`O3<^mM@w1tX(ZzZ}4e*W=cRN=C%(2zfmkQ5JmZexEGCh!RnB8R>onK^wkMAmk_l zKGa5^3?AXr=ECnXBU|S$h-7CH+D(4Su-Y7^2uTQjdF0NU%sItF6$wT}Rlbu0l$Pfz zTf?!TmH;G5b&8@BYj(Jm-fjkJY9vF*L6RRK&ybP9vTUIYmTk$+pd^?Q}WWknMw)+RP3=EoBs9b5JZQ&_+o={c}!*`(SykS*mE5%U3&0h)!QHDt5!1IO5;E&Zl# z8TMo1)x=u1=-CHG^=Y>%af@;|anj$j zZJcrJ+Z>sMc2N9rX9(&zU$g;VhR&kTG3RFJ(leOPf~SBXn8ExeFQ*Z%W1yH;K+9rV zfeSfL1j%zQQT*9uNtgEZEblRjXI)xYdv#fl7HOBX1LK$a`m&IC>7m4>^{ML}u zL=W9B^H4qmpgK{=ewfQ z#81S6fuTjNDV^c~DiD15ycTT-gz2$#U^95dx!x~5UwSV|019M&pI6eFy*`Kkuz0Ny zKwy*IoL6mOfbcko*t=_EE<2n}E4BHqBZ4{Kk|+2w)T0X`zew*%VasZ`Qe2Il3e5czB4j^gL} zEm3kMx-;5_FA+dEgH9(p~9-GhxWL}1w%oc++G*{W7VKBv9u6Wmu#SZ}C9NwxQwC2RP(IX| zHlbVHx*1puQyc%H0ip}unW6bT9rFO8D%!d@T%Fr3JUIM#t7lvN(290Y(*K54{co#$ z0CY*|7Py{@a_d64uq!%kz?-i92IuQPJY|%Tf+RDhH<~I%=pp)gk6_pU(z`dZhH%_!D-g^GXb}d zs6_F{(DKrmitIrULNSnJ{~%r-$9N{`mv&wLAU!a*?GpR*z`iRr6ZL7iYx$z7LE38 z$5RofX?BJkO3b$xrdQf4(}xNZh1Kc$^z@18^U@)N;DmWkEJHPAW2E_*X9Uvi z4zI;;ccd$q54szP9z9hP9ZoD~ zw=bMLdDB`G@6!z=!yGcz7Z9GsSkWP-t$N*2}+74^|8Iq-Lh{ zpIH*SV(!R^BC$5brv|tG9WJGeNvvSo7EPYK`Ac1)9(lrxrPythNx8kam&Hvu}6o z zyByt}sN9|S$L&9pd_2AJYvqvE18KK_pE5rbEo=;YS}bg4!Hxp4zycU^#tNEFrYep& z&+ra9%oPYyN-KOQe1TiV`Byv|Wl?AA$uLhuo5W)k75+(-+@v7{e^mp2s__j-;#@bZ z74;;E1I4?AZg^Az_I-}tub#_4X0^cg2*uJ^W-&Wje6CnTtZ{K0ABp1ao6yneuau2Q~#gG|hkm9x+2fDq1gZBfypZh&e#JJ4k=Z0K< zha1=-^tSDOhI9q?5`>SzXUGW!e)x1)jD}g5Ofrmxo9=+}zEEEVAjjQVev0p|)+4-z zky1|+JA&e}APaKWp({=kxKix_=_S-2oMwAc`T~T#Si7(*^#513begxs^$Vd4E$IuI zQK-o~yE`)5&IE1xaAyBkY+h|(K=#HwsT$&eIoDedtT2~(%L0`-z05V9?&&>qMwmyq zu5k|q)^Ua}Ey9FYu&_jUSJLU}js9Kj7|jfgn5l_ssx@OY+mT#-vm%ZGfEdghQK?!Q z0|ysH+Kjwt(C}m+fh&O>BO8l2HP%5VAwhSj7$$aOjzK$C$9Cx09^DBq*KoE&wF0(qu$>X$; z1j%Hw*V%y61# z$%&c8BAoHzx#L%$4?oOqVYhKjD7kz=Ck|ezx&dd(f6@e(FNdz?AL0`6&r&a39VS1s zq+Z$w5v2cc*j-LYvwlRm34o*1h!DTkZt|5VzJ^_d19z^s6fNBve^ z{=uYnit10ykk9i~sn-7~Y%M;)LFGH-@$wziC5W;(Nh>3`t_B@wEfc8C4A;AZ7 zm-AqQ=B0+Swk8|?6odP!knR_9d!%UtMnkBF#b_XhY)Oo+e8&4LX_=|vO!MMJvg0y3V$O($U`QPO~K>A(?Mx0vNwwZz~mA8a2Sa^5M`qhIZpCi zE3DeqiOZ|4oyJLEJoc*p;4#pwCMH8D^#ZgX1YE z@5RD{FXg~klt~jrVFIL5vtb}=m&6GSS?|pz#6JdYMxE8~Fk3<<(u4Tyq$&f)1CkNx zi(%BIH`N4X1>jr0&;*h#v8+_5ER`ju))H1v*e$;D=74M3SCotK$;ZUM%4gqvbJqIY zzP@WmUUb5d?w_z*h{9St4dy+yz}kXzY0LoA)&b5UU}24kLX6yYaSFm$NMoig7Gjwa zlX}jy)!W4Fw$nDTKh7^^lK|FXw&VZ;AcW&jKkLPad=mu*Z7J$ zu6hb_<7EpzKr8>g)N0?n@3MtW4uGjy<#fwul`$@p$4H++Hvwa^UqN15UPW^j4kRnW{a@LO)9fbn!bkQMq-9Vb|Cn1g`kO7D<}GrW zDd1y9T+`eNwZWs|_?@aA9iOo6Xal*FU{?u+LgKj)3rRz<%q6i!8YVUK&z1R8J`p~{ z-SJ#F8^IvtLVj8EN>y{=?8Mma<}G5IqcMRB7(OJBBywXWBsPmVT_w5L6zB6z5t(9= z60|CPuEKo2%tv$xu0|#u7seBEaD)4_TXa*NBR8mH5g$)?6OX{O;$GF3i8HA!pJrL$ zOz`>@4M(Y^|n7UP>-8-&mSEVM^9!HtC zRJnfxutugp`f;*lB^yh`{v~5d#F8{FZnrSYsn=dV+1HETR2^+$Z5GD3H_an}b^yg&$ zhEPgR#LdX?#h{yj#30bmB*`{&1emDcFcG#(#20{pgdixw>`nK3eKEfuDIZ(p6OZ(yl;YbNmQ-_AaRJH1Hz648uvi55 z%CaXZt1689Py*1AzYcf`Ji>?HV@rlj_sKanzEpL*LQ|6Q-%ByhhX5iHM&Qb1<8K`5 z*{}5&?Qi8APm~@!*nLq}O~H+{3l?D)Jj`Xxa=x-oBf;u;zB+WVoV*ep@kkx0bT_9` zByeh8Ss2v_^01Sw#~@@0yJ7`1lxc{CyG<*PWn(qSug+%5v$gfCUe*a7uN#}4(VT9w z7+ql?LAQxzGwdeVM6io!iy5TL7>kMi>~vS5->nJbaO5{-L90^~gP|nH58-zch_2AQt(iLkDCa&j~Ia*rv`E|Tyt~pU#KE;aAa{ANkICr{i zwDap)I9>9+O>J!*`di2Qdy2P~2kxI~jatROTN{zS5KeA8`PFbHZT2PL_Dm)`gcZ^O zG_D9`h#E&`AH<;QYz$0|0mMWODLBMxstzU3u;+Og2*k2FsHI3SgXMtORpcRQTfFTt zfHGe|iaJRc3mQ2ETo9As#aZo>*wSgb>4s_6Dfa8!*LgHHi_MYg%Jd=+t*n`1xy~`( zHPw5Uc!#XXblW`B**N7o?G)n-lNKm7a;DBYXjaVOK8h_B78v-l#We`d-7%d@C;0bYPTx$Snau)fI!Q9=N zd5t-Coiog=26I?&%XsGz@y?;Og$0WVPc8+ShrA3=rKlCAzC6MdeSS$`W$FVhud5JeaN$lPF3bTE2hNUIG`RM(`nRmo);%l&v+?S|J z>`FYI82bqu`RGMJD^xKTnyW~hO4L98IL32Gm@g zRpRZKUYXfV>Za{!ADcBZYo&W#aC_E{tRq?HvRpz|2T9C#=X!Djt%4miljZB(6Fd_F z*9Ygx3p5MN^K5J7wXRj3Re`lZXNAN6eNS*uXh^Q zCOwPk2k6J@XX@+qiasPP!&YgqWaJ9USVausX{NGW*`XX!&M8{Ok1fQO70Z%rSw(o+ zlXWyp$s)ZPD4--QHw1f}FPxg7LV(2m40JM@8aS;%)x#y`YV4fYL$SZ$59en9F5!Q% zTNd0lK|#D|wm{f$HEr8PdgKT{(Itl;x)s`lSWqk>mPt*VR%$?@|D;ADrrs~JNPZc8leZyT(yX`CtLax zu>l&r#$n4U7q1op#Ujts&vmTU8+2OM)6?D8J)>vlNY7y3;Ea)(ll7C0ldKE${|cDB zPL`8VkXf2hnJLfEjdhAnofMR9fD_ah!2Iud%3wrZn0sP*Hm%MnNK<2*f-Ez54r=48 zlzL$|W18Jcd6qX;ZSHRt%_U)#j!B0EwBK2E{`{e^9#jVE3x-ReKB5Y7@V_a{i~+mORi+n>e`qj@y%=bFsBrAHkH9VgwVd>;o+ zW`1q@I_+Pkf2BF5YGxR&GmW)fmo~#YBQQ3&)Ttk%8Dkh=8ekicHpV+5Fd(SYNN%an zKGihErZ@rRf>C^0v1{!jAa3q?%4ih%unNK=X+6T5m{4TL)-lpP)xONW(Jm`?oh3%P zdkduh7%~PQjrp^4N{Vz$(Ajh$ouq3QcEvI+)$p5d7fNxD!n4IudvUZ5+igYNY&?St zLIG(nt}Z4O4|ZRi_3CC5u+1!Di>*Hr%fA+0!(C=~3 zI9~_K%odKv$}@Av<_=Fyc`CUzbB0^LwGKxrMVE;iGLEz7Wc&TGfhVjyI}H>+4ZT27UJ$bvGzV=P!lkj zJOL)8c{H(5%%4>f3I%L5hJq&q_>Fpx?AeuTkEwYVOLCHf);>B5Lsp1E!XH*P9!>lg zUq+E?2tOB-4H}XQ2$u&5a+u6=H=L7`o|+`b5X!F#gD!PizG&*Of%9*)MnblYGiLVP zuxR;?AD=n6XX_LD-jbe}TsOL`dmRLZ8)~k;_U7rk{=D?*KDAqJdXCmKozPyu$XSJS z;hxy=GJBaD*!bx+_8NCjPtWvPahNh#H^@HNJ=!xtoT4E3%0Avb-Q%)~qCrjrJTnVe zHMW3R>&qS>kCkW2^|EY(kuD~uK5mltz^mjSJ043nz=PMyvvu#vaAq4~AhAqCHGG5G z1u#6wx%?I2g5qF#>Kf+mK=xv;7XbCBy9k~sbh5?Lm0w7lUX}Rd#0PL2jl9`=%tB8C-x2}OJ_Fkk~dy|?Tz=2J^3Z(sV#1wkg2u8j97-PiHC33 zpU`XjBjKq*D+d(KG9aZ<0(S_vbiT313R#X#42iT4oDk25=R|D`FzE)7JAm{Z}sd`{v{d*nJ3DVlyT-s>34Y^_58*Bn&UOkYhGiZ zSQBuj8Qm-(WCe^`I6`uOqf$NcUkko~OVb~T5^`L02tERo5|=MC8~7ZQmMnxoXxZ8> zPs*-_Aki+DeCU!S%Xgrb3af$bC%$3g)WBa=(*vP%k55ArYJ2pwcGCPVDZr%%@W01qqC!skk#1FzC5ttD26WAL^ z#QddlH+h0Q&VG|T)2?xt0h(oVF)>eL0xrz(m{$|9Y0Wu?6)v%w!NrVRT72#n(EB*c z@Wd6cf1W4PO*H8QL>^;qazDWcV{}y~Li?Z<`IBO`v)gaz(rw^y^y2QC{DSHU(-TwJ z=3zCXCMWK|C>1w;rQ3?TC=vb)>{!QkzmsKlu0{=;t0C7Ei@>aQUfk94h)2iojNLQrzlgjIbYWG%kzw`>(n>< zrCuHSPU%*u%W19Ej=k2_A!zR~WOUGfZF%Y8vNFLp_S%E&@5va&eku9u!uF-@D~`rSHZ#!jSCmqeQqG-?aw9%$YF}dT@n1bgI=LflvE5@2^OzA& zUR$QZS*FQE^2Cwzv}zDZsXc-fpn=m?1asD&``aQ+-mc|49ukJ+VJlPv4)SudQ4v^q zF?;K~MWfB5_OsZKQP0gABR`{=JaOWLiVm#P`d;6^xa5Hv7Kl2wcFCETxoLL)7q%Ze zwsOZk!+I=PDTP_v)+WEj<6!%B%cou6ry|le(a>S&z>soy`E^gQGM0EfFmcdkR(s8W zw&mH`eFm=Wz3Q!AwKwZ@{aQ~H|8nCU;k5WJ#Tq}?e&MLv1sxM>=E1&ywlhZeX6SZYN~#HY4YfP z%MV|7%`s`(yfI@ZOnY_H?L}>J?xK})ccNCBtW?qUPV#3%@>Dkm-bY<`Z@x39ZS?j{ zuTGmVcFa8KfmO$bUUztT-_esUbXJb_=~zYAw``xT#buGQa`01hLE~(?;@6inRk%W$ zhAP_>@hYz!J@4}NJ*B7s`*0Zv%UayS-8YR^I~#4AbEmCORmVQcu?w9ijqZzk8G1}@ z{Q=zl4dBo~y-qgWbo&UT(1v;BjdsuI{VN94EV=OYl9~Z4_K#LSDL(#5474fSvhDHp z>mT2?rLaxw&9~Fr+c%?ccO`~MlavFz_SC>MbuO4mSBcI&_5z-WBx-)*VlUy3dq!0vKad|R@11irHWR6pkQciKpNEWQ~p z{*NvFa{o9~kJGxKnJPEpB#pMnL4!>hFW-NmQEt3AVLa}Y?41#gmAUe%?mB4So{9PO zKsAHN>2y$X3?#k?vv5fCWl<~<_p|}KCI;S@+qz-*PU2^Gz_Hhw5ex)H0$`Cez&w>T z7OU9`ASbJ=@uYdvL`}LbbC}>WxQDTzr@0IuCg{b~wEt6x;R84qtaYyPv(u-nz73{55fN zVx_oH)W&~}uO0|r-^UU|Fn_av_*x-rFu!f~NjcE#9b|`MaJlwtWhDnYS`zOSELb&M zMf)bWt>4L=b!MR-pR-5B(T^s`okq-x$E6dRSAh&FFpNFRj)S0x9Xq%xi@|jm&Uik{_ql~d{PG4m1FU#4dP1;7ndmQsowZjsde&qnxTle zBtA{*+JLGryhYce-D9YmRu1Zh0dHx8csssqe{o5J+Apbf@^`wvSZaOgIdL0ZFW;PM zAHQo;*N5%AhWJ$KBkH)gB-M*lDPE18`hj}lTjiTk6K;n0m5%|{g+g>YR7&}P?kKH+ zs#1HTJfEyft%{Ep^$Gn(U8xp%DWh5!zqMq2yrfzs6{c#%#&6j$<$395zHWHyM9bSoqP^cWig8g13D^;iTs8)@mqUzQNHowtyn+2EcKJnNr`%i*P%4#ZAOF4 zE)O!UU@ zm9uJ$Op;>6+wtSMOI7F%jY^U-sU!iK&|g?Nb}@mU+50Mm@~+UR(CndBbyWDGXEfl& z;tXlf#YVA^os2JP(Dt}+q=7de--t?S&N*%K7LwzVq;F1}d|V{>+SBTkzDxF+hK2V= z`tD*QJBi*TsSfLb(-AMJ_5?jH#r)8VRMl{?Q5uw3*$`iZj@TO5V(F!ex8hFKHH_M6 zMyV{(3Oe63D(YI|;{t+FX@JI%(9Kd;ARP>+L-u|mKS_(6v{gPKsWgUbV2;B1n_mTK z5p8km1hw%|jV}~e<9g0rlrHj(X!F7m5D}+Sm6s&@iTlb^M}n_WOdTJxhUA!GJtrxo zsh^yl)M;cyQGDo{mVdIJDpg(HPxP=fjKCZsM~q@(Wqc7knItZ{3~c7s2I(aXDM*aB znq0}rwV&c8>T169Y>K1sB~7>1%z5Yv>L*5@uR-dk@`1VxLHkYXP@;Y&TT#ao7pXnO zCWx!mwk{@kH`!tuRgt%M@m6&>Ii)1|ShAlq9dxU7E$2~5#v{FSsfw77N{3f)HFZ_s z3O<~)E;t9|3j@7uu`X!VX$+C*G1ZcI0}W+^R2yH2CDqg%^-*myIWm|JB;lm1IqzsD zQFZRYMUp&~SX+t&QuKOx9WAKfvQbWUziFuH2IxUUP8?lUM;tw&m1P%zMy0NBzG6z% zv1gnUO5gL<9>;j62t{lSt|(!n!F};nhw;34D-CRtLyFV+xboc>Tt?k}r^_ET(Z+PF z9JHAF4Rm`d^&6*FLBiyDuvMjYX6mo_UW?zvADVs>Pl9@A1yh~4PCVK4V^Elw&?Wmq z>)VQv_drI^6e2<%VpO6+u~05lAyTZXaJA4ICzM*@8eya`Mz~IxBuo`%2y=v+aN2>( zWlr*;w0N&=@&5O|_p~VUe_MXyk|pea@c8GFC2<$ME?!KZe_gU9VaCIw#O3sx46aglEw6ofAPP3FH|>v_y0WFsj*%pEE8@P)(GpN zY}_i`DclQh=sy7F?lGZ3*ee_mo)L}+F9?4TUKfrF?+EV;AHm!5Z^GBY_dvP+r|>V~ zqR^<$S2@Q0$_LHSmEX~4n3?(G_kRDq@Bf?Ya;|8TK2v>pzwsdY_^tkVexod1|9j;p zEnfU9{&SMJz~5hZn18@m^qIe>DZRM;|6@raxTYE}rGp^HsqLxF@%Lz_xhrbZ|3#T3 zDYhg$^*uc&=`r~ur_iRS=2DlJ`@L&^ue>0%h1>A0%1LmRPSC#92tARzbD%Ip7!Dit zwZa79dSSXSOPDJx5S9qbg;l~W@B!N_+%DXWbJPz8U;jHiv;#mk%kjYv;BJP~aKC8cZP+8s; z5AAQ1Q&6V-itiPC4&$LMZLZsi_mL|ezg6FVTTVHdnym}@O~b#KW|jY6y!c{P^CwO* zO*Hmv(+`*KN*2dOD9`4B5Q!X9wcri-R*O&S`{wVIzb4i#POMv^J}+i-m!OWO=caxU z@izZ!@ga2&Am-ov9Xxnl^A9Q?<=3?Q8vRTC!^wOL&huAEduS&^R>JTWY0sqr^Z=3I zei$pje&^M);tC!wQqz#^TQ|;h+ z^Q3n#wHEiy8(e!6eMI>JT)A7OGp8NBij=e&z9HjKUVz4z`M+b|lcFLqbsEt;+JO2`u) z$PrP<56CtygjLsxkRX-NXsGS7W-UgV(&9Y=!k|P}(cU#%6YCSd;BOt92m7>+%^j6^ z{`1e_JW>7m=d3zj70n746@{~+?Az44`0bth-+gz#>h@c&9k)f);M(b0pWqlpdKn>J;S89yGw#SY?5_O`f_%kD!_%@kbm4Zy#Y1+xrj@|0_a z!`^E4UfK6cr&CR}>~8xlzPjJtclW=tyQ{LIsVn$v;siQ32Au>o*c!vy?wTRV zF)p@4>5D(a(s>~6YGB}lwkiOx!+%+Ul!WpfvIMm|kP+YMy%_@kx8;?@?h&G_Zlz&Ycq96|>;rho;m_**=(M zRwTaa-boiffXfr_qMCPD8(Kf-6Fn89@;7+EXicQ z^+ah^qJ+IM>8H)>f4ODtuj>+@ot^jDQszAN0&_0?jJ=t-p(@dn9jIbkZoYWy+6(K} z|GM_=#M{!l3qD`?LgFlQzOeA~1!#Xp;)1e9GZ-FC6szTNY9&mmnxdQR8Dyo^vpnZz z&C5r#|4?yT;+}1Ht^1XlX2l=%8^$KbzxIY&bU`!N7N2MpYvPDC*u3`F_2|HdtbMv9 zCH_?!-+x&*z|oMtQP#-E;gcw!19CFGWL{82Uh(qwWvP6906oEfG3=kl+`Z~Y^;_1C z^?vvk?WM1E2Va-ltQtIGdAQAMMLoO9$EWSOxVmO+{k3&lcVDN^$$9_1F=JMY>{&JF zk7czh&>lP|6&>0u29!4C03_p1su5B%(#@;tOD)`0Q+iCGSLA{2(mZmnOM7$=mkpf6 zIyH>E@xg7QJ5DO_Juq+H&YHpY^sMn)ch0I_)h<#Z4~#9;Nsa2&bx7Y zardk9XFu@3^x@-LDZ2Y_od1VT#W};aAL^8!iC)1ASYD1^1<*TCa4xqgQFq|ylIjJi zQN?kYa~@t0Xq&%n`V9j+<%T=fPM>ziu%!?6uJX=1eriWy_qiQs+|jRc&aA2dw@(`J z!UM-wU60yh@UJ+D+U*!)S~nEjPj{3{9=W1^_=-D5^?G#ep!Dd#`TqMSY@a6|zjOC1 zllq<6zp12V{`Sc8bKZLZwd6E@Bz>gR0@oB40qR*0nLLoq0QJC9#*@3N{tO=WRqo^E z{X4cPxvru^&*6dCeWRu?yK7Ouu}ZDQRZ(#F#7TwS#`r>)o?EbH;G*%@Z-gnI!6&R< zX|Md9*Phd|HdsxRmY+RP90jWH95a2zJqufPs)_Gzs$TxrFBczQymZi#>&9=kWQgw` zy7cUVH3Jr1M=ih>d<0&6^SLd!H5$|+H!4oNLQX8e`paYF?T8mRN_mg(KzzXr0=^K^ zj=-%Fp5=vg+?#T3VxZ*Z*Z1Mq_hp~r`l?u(B#w0=w?d|~$T`Eg$+^RM#;I|_?Vxqc zg$h956!^SM-iX@M*Q!;bPPo`pucqPmlR*E^gH(AA^=dfEy926tCPdCrWQ#X~fEZ-> zW5{c;m)(XQC_*K`k+S^Z5|KXv{ZE#e@*^w}NVvE>3hx)6=6()c2W0&?{4qL`GX`Nk z6c(n#Xs4CxO(k!YUXS`5KmC;W5&b~j;-Bd57$IM3ft-$gUC4r`Cpau%)tAMr7?}QS z46ywrX6oKNG_r7Q<7=9ym3P3)GT?JsD*PpuABJOJ)LbvfAr=x>J6ETzXnkAsw)QJZ zb%BhGYJa-R?@!P0cgQP#R{S&UL=!L@e~zW)=>a2Tuv#+Vs5B4MYQrq-0E+FOu}w`t zbn%~K27?s%CVfY+r~sDf=VJDPg5V88#;^V-1WSRrQYe5KV{pvqDyT-UePyW>9(|Dr z>ik(BP!P#BA6MVOOC=uXz8&O>hY$FzBc-Ko!Z=_}8UD!OOq(cI5thpI^RY^ynq@ zkbbb$Z~DvOqc1O<>FV8Q?Y7(3j=0o`Kw;URo_Y1vJukod%CooKcH5S9w*gaH6s(Qk z09)f70nvWKl2~T{R?O%38;!_Y@AIY`{eq7HJA`%g`P_>0SLDN87;9zCcbl^c6vgQP zqDF99ZY~_6@&#|myUDx5yT^OftMP8n`x9W^$YX@trQ#H*4Z}KRh=xU-(@sT&#nw@0 z>$pZvj*qiEW#|#La33LYz)gZxC#HpE7+e+70t`RaCl}2ayLkS?z<=s?{fyb8ruP43 zT-5IhW?DV$kKePue17+e>7x?=`YLhl@WODf2d|mE?6YxV;h*ZuJ7xL&1y9mFH%r8@ z5RgplgiOfg;y#j>i^t`9Y-zAzi~SQG>WK6 zLVu1uCZb@JA& zlP7Q8a(&Njg%4M5!^s+O-8Ixd9{8&`lLpP zpF;hc1Vrp2rktGEDW*JCJ#k01e)0(K&hOzA@koJC>t-N@r?VAZ0({m~Obq9!4}zn9 zqj?qAz@MCt8)5(QKAEgc?1E^>=0?zl8jDEd)FU}gXViNTg> zn(F_MBPP>5I2B@xEkW_<9@P3NN?EP{L*YE?=TXf$2ns^1V{^0sl~?;ur~_*MPqF`| z|1?Hw{ijlM(6aw6=0L?y2%|hsOBkP%BH<@c|8p%o$f#BG@KAqLS7ho9aKs>*wR2n{S};Z;tt*@@oCmf3^NoJPMGaxC`@JQ~W8C zw57UF{h6K^sT|@c3u^yA7G3C%6Eq>TYt8Ein) z^K;u&IZFJ!9o_sxts@;1tWzAO(!A1Wx4drA+PvE6wRz*BI!!z67T`XKMNcsX2i(E? zd>H`^{G6BVYa8%s;a<8cW(ygL3}X#55$=D~aKfNPnAH-v=LNE?_L^1!r$KXA90@l* zQ>;?2XG=vfBQ20#4FAxaVDLl+vt`6G#%9!K$Qd`L0Y@M!C;Ld+@wC%vjcIabS~aql zOKHA#C5MVBhOIKcT{@cAqm(|%4{Tl3lTd+QN?h_yX&;NXUc;O#M zeR=Q6lXvf0u>24A-n!xe*dXW5yfvpbZ~BEv{zu1ddU`#p`uHEL?5_GtQ@%d6^cl(j z-m@>gw(Fzgn6aJUWNNf!p-MsQiPVa;K(7Fbur!k#%CEu1shH%wljU2ZJW;4y;S}m= zE>2t*Cw=7+$S$PUfAWyvga319r@I8{?(OhGkR6n0)@e3a^jc4vO}6TghSmTiPr>Ce z%Ru=FB2F3yk026gICZjUb?Qt9#k!c?8nRgQR^YPMMSb-?(Ff>CQsPk(rBe1Qaf+<}8*Dj_!z2ZMx58oW7@7)pF6#hzMW_rMj6`^FYJp>~Ew zuL;!wdt1bbj}NU{bxgc)49{`RF}#y|Z~F-Uwq1N$+#ByJ_x}ES3=SM8F;=*DpYYDp z&Mcd!Bpsg6d)*$6oW56YC~;G=Xd|GhbBv{i8lX}f1f-e+pFK!RD=S{O+lYEWhZvxv zu{;1{i0=Y|74S%K^wZjX2E+g&x;e)hD=sT(w6ddsXzWK##5^TsC417(rHeDucckx0 zZ%mid6>pC0qu(4Te9i|il92C&?~G6O_47lvm{o{@u;GQ?o{iQKY$l`(K1_uwgpP{m z2)EQiS^81}s$$UFZ&OF)?wC7{Fai@K)Lyo7TTc3_k5W=hX_{Oz%u@y>~m8 zj8A*Nm(L*Ajxp2Agr$J7)ucHM`WlOshxf~Jnp0B~vNJni-O_N3&o6@DiK=1j0J)p6q3vw1=`>EG{a?Y=60TXQE* zxG`&=nny^zxsD6Rb-9&8#DiYSf#o`wM_)tDM7uRRmZEl-M@RADu4amXZU4c;m;7VFyEdl*;i3|gnoVgMkttfr}5Bf_7JcEqfh(V{T~oYp4r zd3Ou&dBT>Ciq)dbSxXzErvzY<;xe%j-)sU#J|N?5)*SOD3!})C{uasNbL+HjmyW=a zyDo^CkOta;yh|p#0Y_1AgXIVhA}obj+$XJOLbtDG`J#1&v#x-)CwE{v#c)_PjIinf z>`da^lg_oQ6jVZr*so^2`N7dMuP6Fum4vI??wfl@&m{i+uZQop)UK6BUEJ}~9+Elk zfXp$7BNdRcLd$++SXhubj4XtC2i(8X#Ueyg=mKjKBc)$>>3+%5VU%_wjxm(B3F*!* zE01-!7CihH#4;EmpY-rZtQ(-%HL@PQi#eL8Hma*PA5dOaj+(#Je5pTUz99dkF;|;M z$itQE>YuiY8t5>RahM=!fBJZ7&TXxEs&MdK>gM5oo=7gI;Gq-aB26R^!rA zdUe1T8IT#;Fahyy$W9LRfku%vMq~pvJf^`{I((E69$l|Jf&gjJn4_jzCccgi3nAfz za0VWS{Y;#%$2(#oJQcGj2^@~n9joo0irI9Orn4emy@eLM(c<)o#DSg;?TR`u1Xdv2 zaP}vMVMzSY(>HfsW*^f9z8uzn1EP6reLee4T^*+pNCNI-2Ia6PyYII?>TT!E_ zsYamDj+DOQ*eL_m(p=KE9AH8?z)W3yRI(Jq^Ds0`bvUDE2)D$ptJ0PjtJAs|uXj#M zTO`fZ%+}6LTQA)!nG{L!xg?h_TgrAu(`Jb);B5Dh_z?6k`=z6ZPO({$j?-%K1QiKk ztX7LXXwnBVbk-=s4Bfc`@-GfWMx9VbT@VPE1SQzCrA86lQH@i3F~X=R0EdD+;J!dg zvPk*^Kap~h_3$7X4rSFP9iK(kz?en5?c>l`Y z4+K3iP@@mXR=2?x@Ixp=B%;fN9VVv{9w4Ze z_KN^$Z4Zun;!I%&;y8|i+G;Yro_hf6n+BQYXv|H-=w^aDO01R$5Q* zPrhmHAND;s_mdTSD#Q)(ikJ2{@3suPS$uZe+B;r}KP%_n*)a2Aq9`@{^gGzG+Y^o8 z)cz5>5fRg3C@?bsPWZ!tK&GI@p()VBhIz!ainT#bF?K*7l9edsGzAO> zBH|EVB?9|%&R!db!JwU`2?c|qeAGZ63N}GFAi+fdWEUTzI097g4@7Resx`RR0IOetz1t^3!IE>S^Vv_0vjK>;Ird{Q-jq z{XzZBGJLZCfu{ODga$oH^MN!YQ_KHb|7mrq^?%6g_dLZy#)FL?aOi^;N;NDotk0oJ z79`p%;oyN`wqaSX+N5makOepdSK6uo{#cgP%ht=@J={HOn0;t?V%9v*uB>l77E_kl zU821YD}rQvgVn0H`Y4jaAm}rkVhDC<68>X(X0ugg%=aPhB9hN%vQXxLOmS@H%*=YE zpRLPw=Y|Mlrt#>0H0h{|Bq0`T=L=P&0v?2Twr*B2!m|)ciQTCf(mOt3Vc@7I)G1d8 zyxBNzLq_9PX8uk@1h|XD`gs$^EeIt3`Qx#kPu}>^zGMB)d9N2XlTaXzgiaIo=Q zECw(QgWKoMb(A`~Ic^H93}_1+g&`4W-#VqnV2yY+IW}W3;52GOx|nVz0;|Ouvl&LD zEMVN&?uifpiZv&jpOv%O(QKC8k2m9{vvS_KJaJ~;j=Vj2jd^mOKgZLwiFp_W9iQ-= zLC|r(T%IcgD-Qv+$+I$|-mvB>qU~w)lBWe4LcWjD=1zyBD-J@{DIh))b!ix(`N3Q1 zAPy0IM$Mf(?k2x(@yVr6R_*iOP&;yC(Z1waV*dE9*N5-hH}jF(#Vzr@>u(x7cGE(! z;^HZye4ij_RfJJkZMo)fT2e3LQ{jo4Q)O}K3c3m9fI^zX5o&pMkGiKZreRIavXj24Rrj3x%w%e3UTW@K&G+CNyQw#xwbQrV%O$uS| z>vggYNNH?4M3XaQa3Co~I!Y3Y&@3NYQ?ogHHkc&h!=dz`V=E4NB>Tc!26{L(NZfu) z+3G3%hxyA&MpVgn&RN#WalfJeH5cdOK2=+Qu8&v-pHx`ufvHt1u0s~E5;>1XGQU+` zL4AkHl7d)%0iK+mk`o0ivtU5M*n*h_n}CYDr$D=@prPPMfmFbb3VyHcV;n?5G%vo3 zRLx0QnA;1qD=}L)@X_DEtn8SuI@Veq&<$-295kS|zIXqU+Su5!c@yTE91vt$xnT;-6#IU=Y=~y(kJmu-d>u z7ULaL5Bhk%tb>?q96Ny4L})gf)c%QE)srn0dC2Vrk*bAS5al7|XkO#gw_47RNMHHa+cS>IeGuDtJE!(_}cdIyban1 zeLB7mVp~f!K;v~~3mbR~RNkrO<)KzfRZrzP_t1QX@lv_RZ6alQ^dlBK09N?9n#{39 z8zld!ZP4DVa**3N2jMvo(|9AIh$MTdR#I2AFV|LM z_w*U=Z<<;T0cqnY%m^e+1x@5Rcq81l+zBw6y+@1FTG#b>UjF62)>jwYcJsq%vGFrx zsC!MJ40Xr`(v+F5Ys<`ZNeEu?Tb`H>y-aWXLaqd#D`U~vOU7)cobRo4)V7`8dR*Jp zt#ls+Plr#n|2BLftoXugu70&%EGaDw1~Uso#qHaN!(&3HL*m8|vxYK5(a`o#Lr4jQ za-rk$`TX!700dwFi2F!yke;5FTaY&kJo5L56q)S_Wo9Dl z_e*JyHDof6ul!FNR1{5L-!HrnNa+vhlg|USoqs@3De%S4L!FisO;y`9O#RhoXTdB& zqBt2%=#Lf`2SNY?Z21j8B||AeArKlZPJd)Af!T!8|GE<+FeusyvTeq#-J@f5tnRB;|=zHwrBhRMK+I+{T%2nI0$A%@0X#7-O zEcf7eNe{&a?3Y=MXM{Y+GSW7}J;*avo~+e{(ktcOa!-3Nx8e}`IHSJfFj)BXR?YPa zdt7=|Y160XDc z_56WMQ#Jer+K~cZ9Xq_iJB%p&N&p0kxcjI&!r0(wW8K%W0w2Os$xTO%w`9)d4omT2W7`%Uh3_SJ5M(rVy@bk(R5HHBSXRf$xs<|goZb1as! zgW|O@V`fe?r#eT<$;l|BG%8L80Wd?+KCauLX4=?iG<`0zXV?<7Q-ll58J|Nlr_ai_ z<+aTZ9Yku441cTqw7lYczrT_vJgBTNnp!5==)Sk&vLqX7rUs66r)Di7UmPSF02wCp zY*c^~5P6>U@$_|ESyq^GLAfHyhU#7grvh!0V?j&D6UjxYP41-GlyakdN84%Q*%eFH zuU~)bBag0FxAV#F#l<~)l$FNL5yxmrw zpOe=$zmz64J=!V1Ft0~`)Zd>^X#ak;e1Dc9zX}Y(Scz^by2-T28d>3+Mt;bDhc<(Uhu&FfvnU zUs^(Z2m)g$MF1i8-&4ewa^L$d?n~_0lDVksi2Ewj?prW9dt?6U@hrG*_rvQFKgmm0 z+_Lo6^&1}DRlnvT5J|gUJ<7^JBt7~KX(EzS)|tI4W=J^9r|2SebYz zI%mX$sY7QLz*HoMDaBkRiVt?q(?@=&OUNdwLH zc1GQ9v)z_A#yZ2g4Av#t`WP}uUK>LS(wJv}NAh?w?8-~^G9%(5%p(~DMi*zW%zbvJ z%K^BkYxmmWqM-t$@S6PA{yvDFoU@0gV+{@+MRfmhRCH0n-Z!YQjY{CR07s90jV z$+h0L+V!7y0*@!#Y%W!4B|Dm34aIwQpn#^^!Hzx^FhP(zbU>qhT(4`I@F-1qfKPZh z-G3GgraE>YHi69&G77=v{>Q1s z)(K#v%UDA5JkqAhcLE0wqy_%lf4}VC;JKF`@}5o9i#g}Bq?yUB;7`j}KTNB<_it|TRj`cRdH?G?8396ubG;^Z2E?NB}K5bAkZ`QMZ7Cr2CR-moEeaI2{#b@RNz zu*^G!-Z6u&uVA*BLjdQd#56(CUg_*BEK|*mlGwqey3>n7K$ z%FCLgu5&JvP8rUIiUVAejeA`GH2u^3Pm5kQ$!6IiSp|m;i6KteM593u$6}M&qSI)# zCcM{aOthniWRnZu;~)^ynqW^f>5(W%7t}}qm!ApGWz)B~J=-ArAjh{cD{*dzyM$h2 z2BdU94G)sRf_Ru21;&gqhbbgX&`N^_$j9Z=vb2fgw6U0Rfa$3Av`N}zVsJiYNPD9_ zt`(QT9w}DrSzG!(77E1LM=1ZvdG1R^H7;Ag)2@V`FY#(giI_=>`xE(hBLWu{5 zljSmkvsy$7OU|$aOiFDIaz8V%_-%36Cy&MN-T5K=$K5?M1I6*bulnI*g1TqVCc23u z*d51i*s%T{=1qJ9yZa-UsrNBc6pws=tb>VA+(hdsv#3#mu)=DgyANU%4M@Kv=*)vG zgEnE@zO|Y%P5n*BO{YzYDQ2;km}pc1^j)$Y;}mNtSaTX%h^XplsOAbXSpeFA?sT)9edz(I z@X~wI|Do;81Ei>~{qefBuU$)bb@jf?OgGE0$|fjIKcfg5fw&>!2;#m(7NdeBiW`bX zAu1X*3L1AMpiH8oCWuR7d?vgYjWG+nXf(--kvx~Y2-EyN=T^@!Wc$WHe$_MGRn^s1 z_nv$1+3s1c{OdN}#r4guN1M)i`5xXm^zK3Q?%h`J?s`h_(WViw4DaowER~FP@R-AN z&=pa{!gGHg?FOu~ykn!$u^IMUdz~%Kw3&x4Dp;Y>=BcYxQO(Wtm;0hGS`{_}vDy?9 z_bcQgTlv^*PIZZ}pi%)Td?PVpot>=?a-uuN9PIXAaPF0Rlk6MlO zq~FWbA*3zd(rBj+A=qFYk}4u9fXSj%f$!x4;ZmfjLnlPxSNh&AP!=Fig}$a^Vd;IO zL}lI7+EzM@guIZbh5+&WDUksDcVTozMwA5jlfr4oU5*q?FEcj=LLgFa*sMW~9{rh<+G%h*>U5BtFL0IC? zlW7>Xaa03NrXtFuf4kwp-@hVAN6ipdA>$Ozz(EyE_OQo&6~uDoV-IFJ!DJy&fXk7= zgFfDcr%Y>>lY|Lm;^vT#;H~j~H&I8O$RoLG@SOxG;??wa#Ks7uut20xM=@)8^PZ2u zXFg(_7RIgxaMfxUMq75Gj(_0!uOG`!g#C7QzaL-dFy}s>e1C zK8Y26)BD7(u{5Axl#Xmpx#EKJSF;VfHz6HFKQ$p*c^|aRA{0Npap+oqZC*T{&2lad zF37FOY-m?cRAw3rlv9lh4W(ur5gd`4k~uVo@H!dleab-SgB^;|0XbBp@~UF>tx8!; zKPgUav};nr5!mp2-XHFiT(4LtczXG$%2BJUtor*B4M>Rw#G?Tz%`L4fZ7gjmDJ94q zlQuywfkWt|C-Q}n{tOVJC&eX=R3cfo4u|l+0rsu4+bbxyBo^oktC+2W92Z&f(YC%C zS|l2RX?5chf(h*)F*H~e4OEL*(GVdPgI1WyQ!<`8l$94YmI>7kABm#J>?a4Ir+_?< z!?6h8UL1vBO=F~UP?UPxI@a;(E6m-{+{PNcFR@d1z5L_;hDhEd*C}GxiCc8cHt(+rJ=3^n>j2Y_6tPhIV24bidOaO1470RsOp2 zg#4uPefbBs|g1800vYyN~K5x z91p?qMt(e*AKwj_kav_Sbn@fxK@`7?9}nw;A@_$Dvo=$PVd6{psfkQC1yM(7XOV3N zhcwvSh9M}U@GIr-0Yn~Wq+k8N0R;FMtewLKACf2T|622k{qoh}%`d$qPA2fkgTH#( z(j~jzL^lADuOq77o?4N->wppiyG-?}*5m>^D) zx{PU(d6smxu|!&8JSjb8d?NnUKuJYOluNpiLWvqAIhVzfX@HL+DZK&zL{WxRRkB3* z?!ZSMXUJ92LXzaSE8I_K^d?99y^VqhD5=Xi8@b$5Pr(0x8`0k*2Z>UP7E=QLu*%5n zKMr+f<)ypdXCF0f>A+q8%eFVG0DSKsdwbUZP#npc&!gup47kKnb-WLv>nXsB4#B^4>l@p*{^afFd#~Br{7&;VWpnd_KR*}1`{FU@ zM~t!aoAY}&nau;(iz-S+K-&{e25j!&eEjvsoE8_KEg!GUa^|Ft36GDC&%_+v`gi$x zy7Z4Y_&;UOVIO;DiL>XHS$Qvi_Bel@S7bu5QWT4imVic!Vx~+=#6b2;_PBl6GVti% zV#z1}D|Y;^SuyZR28S5OS5HBE;Tv%S;tWaxUkTO8%MUDNZ^0j4Ifi2<|3&OgaRZx) zU*xGKr_T$xiehS?@?v~dn^%dTRc*#Sonhtp2zZR@y5f%NP6$ur=phcM&KG+W@(lj` zSC}7Y-SxCaAN%Rm1{H+=V64`^ib|`r*EP?Q{y^7@nb!666k0n@d3^17z|u6$D)M^x zDZf64JyZp|N)U!WhTQHjE+CYJE4^M@ZLF(}ga*b=pfEhdU9{G1fyKOU*B}laLIIxI zPETb!dF39b2fSE3fLJnoZ$rzzMMw>D<)pPHJQ<(}c5ojtpFT79W?arWZk zO6$7pt&TI;W>bgEu05nb3Q65F6JwutUU5W0>o^nMtWH?)hHV)p4$Bv`jzUsnNlQ#P zVaPHaUFHmu<;7zjAJpNIh?$~#4IU$%q2fv2=n-XB<9_ozlm?ZBkhGo>*307b;e?x= zAZu8M>wF)wJv@WBlt8mMUPz*v4)6*h3J3aD!*m@xzGdsu(lGam?QO}vr6L5=q|#Wf zqm`q2dpqmeH0RgXy!_(_&i&T2+h2RL^T`KSozuOtJnF79zVfwm?z}vAb?;@+hH=3NgrKa`d%UpoKF`AcqTe(}+JE`Q{bGw-8hC_)xv{2u%rbm5`K{8c7{ z%?sR|1RqvI-7x_%M-t40NR|s@5{SE^C7@H0%}~)zWB^8`DS3}7?16K8O&7pUcW65` zxuLO*5GFN<20Zj`xw+a@u)0sqXOD-uv7L*k^Q7{Fnq?7_MYeMMk!yN9b5UF5A29=A z@gnk)W~8IE``KsN5H{+`=J`*^_1#ZPhwgf-c^11By_yP-=Lh_E-580SMeXau7DgbCF@h+l1f*u3f7rQf(>{*pTvjec4O-aAXaWG04OI{V~%557Nn@sNW8SzfgHg7?{9)}qOL#=_G(Dcs$dx7c48 zUYEGsyWGDc@o3^9e_i-=Vq>@^{Haf#*n2_`e%XjR@Y7mN9w$$cf9~y&KJX386->9F zXiyY)08RNG;50UIq&e`bmc7VLT_oX!dn@9+uIzZ zjRLJTiLNX91$f&QM9D~W$hzAha3fGiQyqdoPYWT*qvg@tQOto8fl~X}QP>xFX$>rs ziNfe4acK`;?C;WaCvBdXG=`m|MluUS6-;{7ijV&!f_mF4tQu4+C$e9&UpL#DZJWiZ z=DII8e=kn%ebPcD#+>*o@snP&*OCrm6L<6;*ZUsL)s=Xg%zcxFz=NFhIECwGLadv~ z`{-sUIn@O#Dd}G;dwARt?y!Q)&$xpn{H8G}64@ar>)@Oq&4xeBS@Lq{>&k=BonDd= z#G?FGM-YqjvEnI8Udrf$_5JnZaiMlNBHAcw{2FUY7FAxkRU@l^8>1*bGvWJJwVXQ~TPHES[x^r*5EVSibu4dpj51F)(%Uy zK3m)h5+4i*TLGbfKm;-Y4FY+GR%~J${?x3A^1IFX2X8{u%3OAL^RV8V*hiC_(+IZU zaHtVV^7$i;`4T43Qh-~Qyi|7V1a*pXoN}i0fc$`>>PRG;kw&2y)z<}@6wn#_yH6ad zMhc`P#;^Vgsgb}lIF*uq1S>b&)BM?Y*|m3lSM2z%l-vET9Iyuw zMhBj}4)h%rSRe`C$|YZLX6bkQcs7@OPXwi0h#55)`t)d{YSgE=$GKOy2s#>Xy=zG; z<*U_et?TTo+wZ8qWW8bQXUS)%=U8W#mfA~8D$3RWZWBl$?7-U^BZ`%=ZF*rHM&2k6 z&J-foD-=z!FqmbcC{^?3VgmyvQ$IPSiPcL5d^%AC4?F=8)Rca#IwovW$xAsVuiAw1Ag_a9a~VIO z&e!84`KEhsVx2c#`NExxHZNIt_*+knIOXU^np2**;fBk8`wQi@H7B3&=$h$2Tt4rX zFfsYdQ?GnVd_X&X#OcXV?84hVnjCEEzWg~rmB(fvdP1ex3=n`TAd4Idy6eDy?mru+ zV$9F6eklE1`iuB~x^i~r?CiY!^8AD9Q;Iq_J6}3mJ=d7;o*Sw&rMb#nW2QSdR3>`k zf(fWoHO-q6Oi54694F0EjyGo8sBC3lYrD27BvJ*_N)%+x_noMN3sVshDQzCsTVUk& z5C|q|qqoE1i)NEaWD5JvKMM+rgMHs8s>Nj#z&Pert-45Lz*>~#b-XA=8eFXQ$?$f? zpWglrbDO=dy?8!rzv8ZMthoB&?*P}XLT<0N=6`?euQ$37{$C!iPpnMQ53i^zDqk-@s61GHqVoO9oAS@gdc88Ca#-cU$_iOQ zwi$?Mu2iUM$sll0El|jGa1(5jy6>>Qb;i-#;mXaqGj$#NYDbCF=u#J=CPuddrQogI z*IoE!gH5#%id@`LLJMdVd-?X^Pk+!6U9zkSuWV2)#g4_vRbc*xpuBD-6BRo^M@ z(dAKMmk!Gh%F8J^Yk%t^U42lxU;mEsl=ZUsedYW553HZ*|0n&$ur$kcB51}Fl?j%r zFa%NRv@Bx@nh9A`#hWg`QV|tn_FLIw*f*u;^&d1F%nPfy+eGP;B#^FEM+3#QxG0| zq9?hdw5Nn3XM1*RvJ$ksw4>3EouJZDANx!W&V@^ZrCHHXQ|gV8l};p(^h;26)aM)3 z10A4{Ap5NEHumFT{o8qI&FLkPO5qkT#|M-2h4N^HN?}`JM?o%3FIGwmP#S(?X-7$! ziJjFjg?~^|U_8L;E3luGl7U8qF2V}J{Y6*@Ajz843@X=hkQj&Gsyu0*H16U}qwct- z=Zf3MZ94J~KkB*a2iJ{2-#@zP_A@l;f!(vU`M2FB+P$A{`{Aux^D=g+e8`%6p8zao z?fIPoZUbxX$Bk)1eQ>E#pIDk&YSfQbP7Jz>N0(1k&I!&do?N~#b8+#4^2HrjWma}< zsPC+&g*xm=sz0@$POS(i(r#6RG(b~;aFBi)-H(tzepCawB%&;o6sf&LR6v{wg$^M5 zwrRGf8hjCK2xvqlJ1Q$8=aP{1;JY*`yCJ(XtHuWnKn!a}v>Mv_X`Z<6VzBb)^eEe1Rx3cMYny6|8uORmy#B6VJp7xJ=l^EYPavi|@%Dx{PW|d7Y(n$pWvfql zedF6~TJt?5k^D>Zj~{%%+IBG=R`dS?3lbIhUyHHceZ$Qlkz_#_U~?GgeI0AqbUoLw zg&TOjo?^ol*+L4a%?pS?huvYXY7WZR$Ms0RZ$%^yusRfX!XP7atHa)4j@arDKaH#i z@zbv7`n-kJu)YV-y*Z|E+d&%_u&;?+~q+A(btb_+~xI5`UG~25C$u~ALy-)uhtGWMu z<`w17A9d>;o1VGn-K|X|wp-ua|CHvtuRPv-qk3;`wsK2AEuz?yXOZ0jOvsk+3vT3Ts8nEtl<13ja?UD4;Y z!ftfa506QuOg~pb9mA;POA2ho$b}(>^^{gmA$Je0-srgsmaTKc#X4oL$mUy>S>gTD z4U+Xv3)X$g6hXP=$ovkc(vX4S*d2_iBqOm}5t8v@TcnBAHc^wN_ind#zsOFS{q&{H zeDl8Mdh1rU|C{fyG2_2`bo2Q)KD4DH*8ipXHv7`(W)8&}4*LN+{HMQpc|SI$+59EJ zlt;oMi;)WdSvvmPwUy6q??dJX>11ws9?m64XU}{35MXFts0-^KpA6E^5)D5!KVYSL z-EvBKv4FJ+6d0X~HE;t|a5{wk=ac3t!_p#F-As_v(7RT$5|<^^Bhz#!5zYJnN9~mUW|H@E$6T7uu8> zp)X~7iMPuxV?b0gQ^AG-rxQeIgPQe)XtOGjJTg^P<=fdwAO3Rw^)G+7_xavGbzXaR zo4kbWQ*Y_X5iV1t;uC8?;_ks+s6s7FR_JS$3g%WCQILS8AgW-vkEZ@Z5G zS^xp{>stM8mnX3)|MmM-x4yik_s6||LTaF3D?8`Q%es$x;H^JWf2aIt<*GLi5%2Du zOGo13PyeT5=_$uvJRCC)l^@y_ zlSea}Yzu5`(>deIQZyqNo#-L?5xIfv0iz2msT5JOZZulqSW6)TRMKV$+y27d?#kT*tpuYz?USUSGk80$IA#S+YNXNMyjswiqDS%x!H zrD4sp#ELZoAFHi(5UAA(cDGnNVSIQ}Of_s#t2B@jRGbU7olc~{W5k)f7U@n=nJKc> zu#{q5aB(l30Ko*XM-FYga3?2E@zPxEyCh9m-%M{6cRx=?O03g;h;=&B(c`#5P7^vf zO@JqbjLalL0#=Eu8sT7FE@d(a36FM52_3E}$vQk>TC*R5vf&vOLo!BhCr4(ScS!%i zzT{Sf?kvaoKCK6+-bYH2$OiacP}5djtA%x#?ZB^8yrK5_cp=r#uV}P6zuG(9Cjiak z+5Ld@M6bn8+WOmTPkG^wy<4}kEAPDXgmtJQOap%4;jdn^;JJ(MTfThG#e*@1`>y6A zBAPfB`ibghjdWif_<<$hZ{Y6Nef8hTpf#ZU``uDcZ(=K+gT+o!5SkC8(%oig;3?t! zM&3=2OaoddEN_TO$;5J`Q}R5?NL6^Obf;1>T!~F8OWP&Ul~&Q)T4{syJ!ubW+Z~Zk zo@QBk$tc5?5qbwM_K?7h%g&2YY?en6;FxO79(dr$SfN5h5(oe-!-5b5eys||u2tcF z_~k3t@1C%J@nhoVCi~oc@m?DD-d=WG^I=%nEos=0BcATP=)Z`!?6b~~>8XL@%~75f zCbQET_g$a4GIw45^1<@RF6MTP>}qsflv>zzb!vInEvZ|g+lJgWY)6+pxG=bVVz7T< z|MvYyOdD}#{>+YRhMDjqD@<#@FuHKal40tg?EaG`Rfdg74I4J1RyC2(c_>4iT28n~7WQ!Yi zc{POk;SHX$jZP#gLix1GJ1cBqWk*Gg6T-q4@i(FCBlz8bR&&|}V$GdH<3KX# zb+iK~41D5)){*=C6CN?(%XE$q4UE71=!@?gDeHINk`P70uu zi+1#OS7t_LZsyXAj3BHWdwZ175N5*GF63%(51P8kG;3J@nEH550tuYjDAo+iioE*T z;s%KPM`-m*8*4jpa8%FCXLaEzHd+{jkUlPWw3fa42o9IsT5*2w(D-!=ErGev-jOf( z0g}(;z42IA(Z(~s07|5`%j03-1H-ut8#w{MA~m6J9jv{5T+D4@`BTF|0q7IO+~7@a zuS|a`eB##IAAjba?iDwDam}R*?mTewq3nA<+r4$+t<7KjZ*v~IYt%V!+_iA&s)x## zeqr7X3!WH0l)d)Bx>pyKzjxKMaM0$|NvVLM7{ctvgpn4TAnvar6Pt#01aT=a0X{Mn zQG!1q4B9$8i*?wBbrl>#p6CL%#fmV|BwYc%8XP%kWs5AivB`nZj_cbqfCvrD)Mz&7A?D<|9F#RVUMQAb46wLJ_ zXze)O$L|L4=29D4=wUtbpwmTmhse$p**Dltk|=s2^Du41k|(4*QSt%NllaS-CU{S&{8a5v+TYl`RQf5?hGylbaZv>kD<)?LvS|D-7-fS8<~ zQ?gM(r3N3xJM?R$3u?_fhAalOC@m-`9@Ig>zzV#GAmP>GwG?sVcUXoU(tN4;>+dvo zH}8k3`{`%i{Au&rZ}0fklZyGwGj8+MceXcw;63}S$%cINF{|IvD;Pi6@aW5?{?cO` zexMU>7=YA3pR2Wy(C-IsSi+RX@Crn8QD&l{iBNZ?$~>$NA}5|vs%UGq4M=Y%YezU@ zr2@h_k+Rv5G}cRNt0aXXks1lxpdKWIaWQNy$=NF&-F06}&i=6X88`+2BWHm=_HYVt zUc)*|Tq>>J5HAk_=3$~U3|00?obXVJbxxEc0b~KPog2=ig_iSzMdf~P|%-FhN z*{i?VD$Y20)h{1s8=9x=ymgNFGPM>I06F^!M&~zbE&i?MvyU}+(qm+k#o4r4X-KOju_7&$)=68W4wI|DVmuucnR{K`F0D?iOKe2;$b?oA%$dkx1{*z4mvS=4%}bzVuFGcd5Ksx2-)b@Y z0MlQpNDFwgKS1H>ef6z=EFd%>CB7dK`jMfp?N_b;G&P|0Eu4Vv5c`iJ`XDVVXasF= z1x=?-8&uROnYtfa6!L##QK)1vC7g=+z5pLR7!@F`#_MQ(;!dnzW#m+{?&{E+Q!?H> z!iYc#`z#5U0cER|09KSLcF1fJ>s8`%)Nq*nv%fZ9?|rR#Fpf@n;@*?jZ6>{{_Xe!$ zKDkqIc71)>iaB3thxJ=PB#(Ly#=wO3LptLK>H}@w%X%={=4Rjy+7HCj@@_aT~9T4%UxTE zec#Z$`{6zJExY=}FSkiqo(c9o%-B!(90-L)4X=itg`p*gHqhUz^L5ZNjg1DCskH{$ zh?YmIqYX&Z#O#XIo#vv+-q9g@59i-GIjPiwdcuIznUwM7>dtt;!`S2d$zT3_{epv@my<=fzJwtg7nSe$r zTLfVXgloa-5gg~l0>W;5r0RohYtMVydPwnsP{OLywtxl&N z4vmI_lT1lX%}mQ3R+<^kiB8NPU0jy9F7XXH2R7;jLIL4@F&F2U@Sg%m(%4T-7Fi!b?3p({ijtQV9jAE6<{1q zh@!4Yj7F2YLMLKFC~G!$C`gZceSO6B99mZdrzJ0iC;@vv)Jk&n1H&b0qb?%ZCnmlW z`#|yKBI#>ut!d{!xc#2P@`A?UxN0F@=>^|0E@1A-8Pj@{1)C+GDb+`s^JFyDq!aJc|c&5?e zBE^O{Mc2J{$ckQPd%K(M6x3X&Yla=$6s9~}>fjzZ+`LR4IUbhXBy05c8msjin6RJC z)!ain_AxMFow=U?l8zVm9fqbcVl|1Z9+i5ag?Sc&&5ZSnMN?^S z^M$9I)t)WqA9u(_t6zHmw#CxHXJ7D^Tpx4I+|MtnXIGwd>y6?WnQ3E=Ik;CkY}S}r zSW_feiT?vwDMG2?Nq~xCGEGMG2@?)gx!{3CbXr5_Cb9Nw#8aAIfP2-N-3tf9=aMr4*?l2X(@@|-ZiV^>#;Cv3eFrGP zY!PCEknI+jjMtbk;ULuJiLFq{0ahrfJ=t%BYSYG%2_BF{oRx9hl+ShTH~O4|M^8`Zk3RqnV*+mh{6NPHp)X)60B9Oc`1)4hUJ1y z{Td`(%$kfo)zL~*GgjbL8B@%ctyTG#b4rJ|s@lP`2xo~J$75ItrEv6M@Q78pjX4qN z)aJn8M9~o~%Im%V5eY0rdiotO7m)ZRnn!r(3Yy@SrYRN)CVF#%ML|mC^ilr5`4vWpy5evuSgU6>{D0}VT%_ZefY^o zetq&IGueI*KX=K@ncJRju9@^ubp4z;OFw_yB7^O?o_RA5oHlDyfpu=a?D8W!ubQ*! zarU{6(-)pG^Pm%nB3<30-UfKu{#hxdi^qv)h|7=z@On)lD^%wIE0n6kBZjO{HJPsn z$!rgnE~ay8&TBznZ9`mWEyrpHIS?t9SmR3x+<~2z5-P?vV+ZnNOo#1?dyL?X?*O2L z>i^1yb#)K>aBEM~*$TSyhBS27TT*TJFF;Lr52)UOI3K8^p{njDpelUrX0Hva&p`n_ zUV$F32DK@|s(JE3N|)ND9iki(-5jZoI#M2noWCQ>pI1*(FV?QpZc)u6AQ-R2_vasJuDy=XByI}B9Zq$bEYeC{~FQ(KJI=eCJ(Xw3p9ZU z!uw>7;CAWQ0!Zd)M#^gUA`-gxTE70#oL|v%+@YTvckpp@JN7#a^Lof3hka?`i!W`# zyawl?>3hk{!oJh@l&)q-voy2kuW~ye86ZPsuAnR6N75KOQGh2^P2>oI^{eUJt$8S| z7b53`*x>5zy41$hmXw-OYBPel!Gd66usu+Mr)@ix{BoRon7Rdq!_%L_CkC_4Lung6 zwE{P`i`85s$ip(0$a5_irm>c7DK?FPa>2^5T{>h_vpsX}>0L+7*ngBquFBHadOvvT z!sGQ@qW!K#FTM&5;3M?H2CZ3~5Wj7{Xi9;Y*I+QPB?$q~Q`q6sq59#*arz0ym28!C znZC-{#`%mtn!-|C7d41Vb7KsiE-k0dvkoq74gm04yXG#LN>7ok@yn zA=!jHeL3{qEzo$o63j9oKvY2KraPEby$5zfRg5`Ai+NyH#j$UDozZ|6$iLsch%8ee zie!_651QZpRj8d28_%Sk=1X@sf3^{G?OW1OfZ43w4@t{+F9*Cx-g_JHBCA1V8(CJw zPWWlVvknz?w3@;PUSWG6=}qU3lxZ4!XD4coAu=rvXopia4@6Au>)^i=f>FO)c3Kns90(D+5ba2^h+F zLmAu7_CPwB&IuJKV#ZEGEE|1M35ucqvuUaCOT=Kl<;!(_7S3y=DLqY;>EI{_365wL zyc?@r@;RDYGqqnI#g%$S0b z)2d^J7p#=!CD3iRhM1?Qql4SRI*1wTj7(#rg$a!bGbhZOuzbSm2?(~VOc;d|+b1X! zNKHtSx`YzHL-)~@#$!xkZ#p>m4DiIj>TWLzWA$>C3HlOALKMsh)suTk)dvAOq%ety zsE5oG4XlTyaJ7juWL5lg&;BcpeD+s=dTi2?V|vD4@%aZn{mu7gUOr~im8YC{$Et-( zmiC@>>%t4Zbn&tUUqv*e(&%cw_`zSBuXfCAI_$$qlUR-U@3Dzpjpodq_r3DQ4`2Gx z=Kp@_#TS3_lUE5pTnxaU`B=>1_;4*G{^R*vJE4)B>oCkRP3%NYo`h6WjZPF8wHw}Q zmCb{_WedDhr#tZ0G$;X+`oG1QwPiSmoL9y)_C^cnB$L*UH14n zXwmi18h*uLb9dtq^3Po8NE8S=gGa%x<7P~q%!Dz>wA!fHnSmzNMlOeF*M77MYI zp&C!J7aFw&)Q?(O8L4bgwj;s<;pW?v9g6H>v2GNm*g|EwqAGM{Laf1xFar(2Ure-O zOJ^_g=x|33%A*sT4Ev17+}3%054*jG-LdIYBCZRhuhBnpYg3P!uc^nNN3O7`F$1Y3 zDo83Z4+hV5{uciOA2HA93oM>cq@6^f)3*Il{!IQg$nO82o%4v!?bEq#5;~x%!bjmB z^^qIN`}%p&nomJ|V{F=sQIN~QcM(|!z8fMgIx6d8XPmh)G;L5jr_(h34(^9W(NdK@ zKeSOWD~{fd^52B!BZ&rJKNKC)a#(G3OY)RQSu-Jq(xF1u1=`sGdGtvZAkt1)2wS1f{(W7z{^e z>?PohwW2YytgD?-Bq>NZ(3wa`X0l@@LK{WbWb<0}1!dE8!Mdhr6}QGC$+&1ukz^Hl zo4fX077A1BX39dCi<<%N`y?&}cQQ1Rc_sR?~uk}vM* z+3okdv;EI6|EhUV&$Ex*cdtv9{sS zxF(Z`EwC`4Zakn9h{pE~sHBcABYo%G@X~N?xFP&rxINU}kh$S1e)MA;e-LUR`=|AX z;xGhsc+uj2V1-S~KFr9F6J@-?jGTuV8De9+?hh;S-*xoLzw6_G{((l1Mh)z3@%F*G`*}3^S<@59f z_GyVz!c(#f^5>PGl3$U3F8|#9MfmgdFS4)aUn~D!e$V}@yi56u``7T(?8o^J%WYyO z$`hh0pQ;IJ(##bcOY%BKMSCJ~EiWCg6E^8cD0WaFY#dHZ>ogt@R~QY$=s)8P6k57B zoEUh56+B2?`ChuCxUW9*;W+ER;k=(cDgvkII;kRJq@kC1K2w(~b4lTxZPP$3$K8GWgY?bJ{cY{=_8Thlncnb*dz4S-cBOAeI+b-3~T!! zUIml9*CCj}^Yb4SX1aO>yLuCw)qH63-KT8$?$;O3=xQ5V8QHaH(J9~FBtLi2<(FU7 z{KMhXp8RcZ?N3*uKvUN@#GhSu*|k5VI*_sbRoMz#K{psKatJKJ+=VwNoYz~C|B!Sr zzu&>!%?bB6CY1|^W{#DQ&75PO>zwPIZ=7!~v%eHvki05b6Rgg-sZ}kOW%+vBD6N5L zxpkEC#kaVt!~6Vj?+dBcDH%a{yTJyTbp5ZX0cXaBs+t^0O^9CSOXH8xS9e#?NWzANXJ(W6!>b8SSBg`p?M*R z0|?EtYvgmb9r;e~P2P^kJQ7GbbMNkqmm6c@6gKWSh?*}=!C=zQ$Xnhu+*4y5;(S|d zT|VTuzx?op-!un+=qTbO?FxcXwYjyJ_y|8$fTG|+EE8* z@ILX%n8Aw(6G!?mf`COm#eTwq8y$|h7=Ub?cE#Ri@33WiI>=v4(+4=`c9V-3*QaA~ z0F#s>(14D|p60|BV@XE3>bJlC^ACTCE}z~*g6p&ESD&-_b@AN$zlPeYP`A--sNTEJ zm~qU(r;!Ycjnkz(JjBY9ow95CIDLw)TpU~*h-oT2C`Kr_l~=P04v-zJYxg0oE zvS4a%#*{0t=6W@UQzM6MLEy%8-f6C#Q!LQJ;=1C-;vN)D7NZ)Yq&6`CGO$TiknUy& zybW6bKolZq!H!ECX(L(VFHc7+-L^*LN?#%wtGF^FwV5Ec%j=LfjG@Fdk8aM`YxS zLctYUb3Egb(Ml@=*8yp5CZthbE6~ZyVQ9y8vc9q=*xd^`wGq zxn{?UUhT#7NpPT9SBtV6S3hFYjl|LKNby=$6Z@YT*rzuYHRSv8yNz16cqW#F>~5 zw$=BkEP#oz?s@Umr?&Qv{EqzN@8A2)=U=|>hSxWoGkw~k3#J_L#czlY_0EEO>1uf) z+)K~dwMOzE`^lS6JoV=DKV5On6<2-rE0_0Pg2+LJ$_;`t8{=UiS9H~NMj|^cmTXWp zr4zQznjzFg<6u=hSW#balrK{@uXicFmS{EiiRWp_u!;p+7RHM_r`cb7n!i(q{cn$S z^X_w{n{T|4-iZ()>w>u2a!{ZJS;c@jFzL!ND3Byk(TjMC_bp_Z!073ksAzb{DB(~; z)mvS|q*BO}1smS6k_uN`zK@%jw1ZnC4;ik;4f;1Mxx&G$f1}^axJ0+m0K|sGUm(C( zl7R-eE!N@a=lDvuOcht*=ST-3YPcTeN)Z7iSbV|bMG=>vvDB5;hV>Zym^_5}J#ZEY z({R8~(_N9XnX)&>PZiM+nSOv%GG3IslppgJP}3BC7FE$Q;4@w>)wKvUwzQ}j%{!Q!c)yVOel6}7X~N?5{8bWT?-d`KqW za11!nF2Mw8LlmTp6KNm;DKwm#PhG|?eyEW1AKv)~eZr)JFK`a`reBCiFo+;<{D>N0 zBf~52Kiz_#Ljw#=2Vej~{D|KnhA!O#|MXa@nDEJb7!v-~)HeASm zHQ*r{s;{EuxW>j%*sUuO{g1}Th@huC^UcPcY)ivcXcrJ8#z#C=wm3qdF%lkx4L|JL zG-S)h+94jV5T@cZ#s#g%X;|6N9BLqr(ItE@;ZVi_y=0#5g*t*GG*aP^$0tTlc5Ibi zsvY->_b`6;zxA%!wBfl6P9?bQ2b z5kZMMM>r!n2EA}BgJ5B!(KSp9c{EHubAgYrr~uDm3S;0bFrCJR@Esot$EFxj@lMEx z$0r=HDgrs3!j6u65ZLh$zzFz=lMXczpc;UWG{`t<*}zBihz6ay1QJ6}Q5@9ec4^UG z1_X4+gqsbjYM}nWUcQ6Y<7qCsfK?FmK{LTHkwpwgrs3i%!bc1cZTK1CBLSIG@#;iB zb?A$@111cyrT&dz+J8V&8vO$OK&m3$wTUeQ1JP_W43h@z1%r-1JP_r%bzFs?W9CUT zba=3&BxsVDbX!mzpd^+)K%DueOY~$35JKZYgA|1j0eFV*ZA${c z@DquK7NbMxggyX0Y5oIW2o@lqEh1>sc-bZZ2PkWv>i{Ki1Kl){I~{w36?BHkal*B+ zKHvi49Jc%p@#q5=IsF6@$DqeUBq?FjV>H!;{lN=t!bi~1gw>Ca)Uq;Hs1mPo4jZm64YKQL{xC-qeUW1{-&(VIL;{x3l_=x=h_-Jrclt>JqCdBv% zZi3S^mN-K&q&bEU+)~B~0LwNA9|2R~BOP;6MNQL81=xdn?mE46&*oDBB;m7cwuv;D zo(GKZeAmXaFkWEaCPbO{VFEoWaye{uSD3LWbt;rWrzv z+Do91efWq>P-Y)KS`Oi(jcVaEiuiD7XhC6Up!)C;sEFxKc*)1eaxh-HV4{^)#b z!>zoya(YT4;uJf8T2xI zBF7*wfY4{zOrJLV&<{KZJ#B3$3|R+83TN5 zT};D*10OU@_APqh7~n;>6X?B4_z09~;iE$MNCSkQ;~NDt1CtWn#N5O`Nrw0XJ_68= zP-0qgjNHG;`uD-cLGMv36|NQSn^Y!3#%@lXPqw(9tZQ9GVA> z4rn5K)KZm*2!A5)KMDZ44j(rVb^01x+#x!NX-yKHok%2cI_W0p9LT;0T~mWVVXOF_ zrX$+nCIc%8nGZ^`fhmsbAq^qz9Zi0RZVN8R_n@)G8wx|3wxJRX0C;*d2oq?#>X-?< zaK18Hy3LC-WGi(VfNgIBc zO!*0n9(ZOV0sDgHs}OT6JdzqmO#;OEiyG1D5|nV_m*`l6f5qFW&;|6uuo(CXPKuVA z#31owfRG3>-N12O4Ur2nH5aU#h6Y26u|%1ugbHcNgtrhlu>}|djW7~un@8t7N{|dF zo2jI00brP(juTjfUxXD9g>f?Bph%wYB$9xw3A_S-!_C0Ji3uPZg@umV3B1$S(D>ni z>Ea8_fMm)M!pMVzmkM<+nZW4lHk2u%=B+K>51oVy6!a3Rm9YJUm+)K~zYs`@-|9AW zIZQEhSplRxnkm3h@N={Qk}5{Zg?~93OB<&n1eTbf&{$%C!K*C5DTG=TdSGBgj$I#( z(Y+)WcK|Hg4jsn}Q#P&w9Yp>`844;rSkcfz0wy*9o#+6B<<@4)32=VZ1q`SOI2#0k z?ODK38fcsWTnV1&l8vPR;2*BEJR75iJsj(FOnQNhWW>N~J%K@sLU?$EmK8!+q8_64 zpJhW*Yiz)XFrCEoz#T2mH5^$>awQ3EqQ+5^5@;)4)O4jsA0=gX#OdQYGJ>Qc7FaQnQ0uur-b3hLQPX(6;BEn6{vVnp? zMxuTe;Ui>>L}0mqvXu@48(jt>f`*{yHtvC202IKDM3C~62|N~qh>@i!&-pn%P0PpB z^E}5zcL913B5<;#k7t5Igb|XgcC~+^OG?Nqp^z#8E7Up+&)3G z4EJz@AOp236JH6$PdVVmLFl?VU5ojbaouDla&Q&+IHXM(x)Tr;T3ilIiDy5k4j3V6 zNUhCLF<`dpI~X}?nXV(*hm%a;w2v2_OmiDk8nd4`ndV^0%LkZ!9ph#vG$j7Pv5T8H z$pBOo0xT#{E@RWn&fqKRq01TYzxx)r8QOrs*=!n#J!!TE7;MFWcL`)C11&=1s7Zi0 zXbqZ!M$m-Arr2marYTNw`bX__HM)Rak?+}1|1)9IRU@BXIK~j6+bCQC4J?^5P&gFo zgXg(ECNM@5e=ev@GEkvj5sreck(7x~KDI#sof_y$wMs#wvYB)OT?S%#UK%}5;0Cw_ zKoPis2k*qt^E054jsYqLDZoNQiF{gi3inN-(x_txI00k_A4{h&?O_hc} z2hYz05a}#Ly`#nb8{~B~8q1K#*W!ms-3eSg%nwrmT7WDXK7MNhdNd@O>q0hD)AVBl zTCkG@l0roA@N0xLC*zyqLb{GK*7%GIN`POuekzs6P~_t)F$`%J^gPV?05>i`rBt*d z%x7I(g`WdF3Wg4|Qdf;4P5ywO4XOi_gkZu27QDG?0BEQwH%J74AkIWlgxRYHi4m0yKqQ)Ce+u)5}4h5KWSVqX&IO?eulJ zfX);!Yt+EaXF^{sBnlng>lVlVL1DLnvc1630? zU;(-bI!&x22uTnMg9s=Kno-P0pfLD7Xh;^NNIcvl3{aWZ2ORxuHp~RcdzMIg zF`2|D2T`cGNiPbcBr=2m!AePLoDMk;IO{>%^gvFvEdA7Ube&dMDTGz;88oGV&215;LDh23Wg5#e6ehR zZ?F+J0?>hyT<47iRu97#B=pdOBn2{$lORl9~f)F1VP5cEojBpl=L<6M*}?^1eD!!5eYeH-g~KJ z9zFMQ1Ka{PN#iY_kC3dS2pZ{HzL&zC94aCWBms*9CyFw}^wKy1LWC~mGGI)Y0mX7k zsI+GUl39bG5JKd$lO)2@%!xO{phj215Tl&RMh3<$A7#TV?*dN4Kh1zp0i4B1`w&k& zEgt}dEu?XA5fBC=lm%QyYqL?z%W$C&wGCbdH_ux-(aKLX0utM1Eej+8$x8gl&eR8K?s=RBnVTG z^^uH>1{zNWz4xP3L?3|`7=aZ95iW?V2$+~O;G2Tu6ev%S&4JdWoDf8$y@IkO70)Y2 zfDlG9Mdat--;x#D@WX0bF_Qu7@jRrZOR84EL=!Oud}2K`a#+6d6wgn!-5cGe($9 z00^Mhfe#b}Cjd7N{3xSg)@8zi9|6iY%YtN<#I{L5a4?d<7tW&vH=)9>KnJEg=$BZ@DajGF%5il{vkfL zrPG;AI+e?y-bRqmzgDlb9^N1B76kxB7DTJ)0rHe-@g%1{{|oJ z0Qgu1K2~!X!pEeS$#Z-x5gwd4-ADFSeYObfse%;$Hzn!Neya)3j)|Q)V*pJ z)F^>eCXm_sH`7F;!+JKG&u76Zjbt_~=Zo1Qj`G<$C=uvCQi`TPtC2t?)QqH7rXSmZ z8Txse0fwE%ue14Lp5*Bija`bUD&}SX=3>uDA%8^;Ls0`9Da<>_l~Rxn3)Kk8&S@rx zVJ(|2*4jf{1*HT)QbU*pk|7pT@C`P)Ew~`)0PJF6&+6o0sh9q*Ud1=k5+G)p0J7^IaM@`D6if9a)gBNuWo0c@P z=(iTPlUhpcq$7IO^O3J*Q?+U_GU|DHMZRu_X>_|x0Ld21i6Vl22x3tl45ggU(10R4 zdZ}O#o6s?yUWj-Cs0uztB9+V)aV}NNR#HG&BRQy6NoVpXm4xh%ZE3{AW`GqKsa(QSX5e<#6%)lEpf;e2M<#GuE zRxXN$77Ep&gCkr8r6ddsT9imY7_f~5T8NEq3#wBpmBTWHO1y^&?A~cSgR6tYcMU9{iVgr;5 z=(icSlUhpcq$7F_Ef(;7G_+RD*+Yx;DuhNN%A(ut1d~Fw-K(}&OoCXhWETqUr92I2 zu8?mp+l5RLK!9=%ScD7mf7HObCwc5ce+uC!bbXdU&7gWqP>unIGFb{?fFA5{} zYe)W_gqO<=DML*T@?=-pJI@^l#3nZqsSm5=LPyn(%DGy#quha`YI#JtRDc>E=G+{S zhXlN0&B(0NuiePW0fu;@<>vA0auBsEMCyD&n;4I84YhTqw7JB6jfPH`l5I|g*Ny3B4dD3;r`V#l$p zOaZs?QazbWZ7}BmAtSlyR@tr@4!SC#KeV{6wZdRgK`pMFa^+=eNGOnN zP`wP3k*T<>#Aw3&S*$NDE5k&D{%AFp6%>~i<=dSa=JJ>rro}vkqEd@zSoumUV66}% zC%&y%f%Bijt<|EH)n>zrQmw*bFl)^?GH6}sq!@2Sid-yOpx0o6$}Yu=fU)J4u27Wf zOG-ql}G8-@k6v|SAMZPjW&s3>auT-MV zF&v@L?5a|L3pXXDrP@pduDVJUSm{IwHX+t*Hls^obu@9Ys#vBiRhKR|D6}wMsRS7l zlftZ6p)ECFhpp&~3NglzDV8f_id=)j00u*@As1D1)cN8Vp)XaK%aw{EbpdV_@;t6m zv6ngxN|jQj(yPVv^EYn>mCK0@Q>wehZZcthDl0V^i&S`-=SmfBy7OQWj1wklVT#y= z5yC-i%S*E{W)<*B*eNW9oh!tV*j;*U>2j^YRcTf)cj?8hEnSw22@9JDiq>q+H(O2F zB4TR83a!>+pa#X9V>PbODvK1^xFjo5D6(;RB=Qn@nZcZmCNOI&sP*!Hb zD9$Ux`8eBVQ52ObN(x;bJ@eFC7_M1yPInk^LxNAD9hN+nY%F`eev&^oF-xlAcHm&tLZiqGG`RatYRk(#XbMl9Q!O`Fs#X>hSR8m+o(9Z1mC9oQ16k8U0!3>Xz@ZL6W;dt zcWh>@rv@8Z)LZMcSd{oMz1&h>qRq~C@};@$^wnbP^wgxsExQ{RpAP=vP`Y0sMMJi3Jb<@fkK>*ot4TGxw5RtQ)gs# zjg@%&Kz^Y{Q*Fj=Y_U!(!qHj;ft4$DI-RE8Y(^{VZC07mtf{iv%r+>un(K@vJrWk>-G6M5DXeko!M-w^J>7AlcQ0}P1#s5Q7Sc9ILA05oVey<&w`W0IRSIvpquheKo2$k6Ao!&bA#tPx`jnI=b*tI4-&tYEO_ zV;)f&RvL=Lv0kB9Xl!y%?IXonCJ-SpJ^Ps;|R~oNF~LxOU^VuQu$Y{5I!TH>5$t;1_9 zC@pdOEtVoP7%WC(i_KQu(r5&iOlH(-ZOd?js?!jrlg613PYVZAP2X0e_GgWyS(yk;CW!gQLh%gsSgWw}o0a;nO6 zO6rTsOG?U1U=fTHCfQ($*o6^Tv=%#}Y=hsjxShgMVW&6}d$7u;mD!9f{%T8JuuAMW zE;5$GZJ!8=t;SbY?Q@Bdi&o6H*}RTQ(V!Mvh0m35Gpi5;vrdIr=yYbS%4pIU^^R&8 znxNWNXK*0Oy49_<<_d?c(q^#P8p<6Gb0vBO8rf3eu5j4`jWzX^j#h`!WGFEkZMY6o zn(aoT!KhPfy&99=vX44zU?smo+5v?;`~ z-Do#j>iiW}TrfE?<80_KiQTluQ;Bx5)l`Y|@87(6Z5{2{&?CCmw)uSJPMgW(^J;A? zs&7=*HTZHx#O$6zmn-0LqCxF8r?b&l=&aCMb1fAnEn;CZVdROs6LU>{ zE}Ed;)ok$~%BHoQO_dIh%jvSXU2Qgxr_zaDfkw7DYMowJ+p7AY)6?m(R+P&ttuCF_ zs;#U>b*o8dY%o-q{S8$fv&m<%TID7a*85unRxPF*b;r7D*0Z@me3nmXx3_!oELG#c zZDcXs`w=KE#$;pf^?Ln&ue;e_Z1vjP{LS8Gzqi`&?eTfsxP>;^akFT(+e_^BJp7;W zYPxZ>7TYcLR&%+cK;b}bufN$JmkLI7Fl_Ndf?7bO%^e8zC=~Xd=6XSNSn6Bt#cEYk zyW3sr0KsLq_jtX{J>7P2<>lEeX3q-Tpjxf=;yeXPunDov&CU4IOR=IPal2&C^IF~I z1%A87?6o@_Ah)%(*_-XfUaKEFZgRbLuifwVi_D$}Hxz!m9}IqlU*WY@msG38vAf(| zZf_1c>_)fNW4Ed{_gKYlUGI0e94=RVb^YJ71zbHFu%SovZR%`jsPs6k)`o!5wNkl8 z?oujUN>~Krgh^hQB6eYfa1dLbHQ!rdwdcj{6qdrpVsRvPe8kk8=e75=H@gda>cx&@ zh1~_W+eA>j&8sv`tqpl1Vs3x2*W2dzph4Z$9$#BSvBzPw=h+-qBVu8-IxI%qo!Bbt zoAYdTTeCN0^Lw%G*5A9@QRByZFKs?=m&@;Wc+e}*$kjECzJRy0JGjQ<@Acaql`4nb zXR_N3j#|6jX1AKmtyV`xOKUa8b%V`r$3%oD-yJP>gV}D;^$gUq!QnQB)fTPWy&;f? zJ2`h!sBwgYu)a_Kp-@@$qlZ80=LZ;kh#@ryWL$@poWFm#1c{{6vBzHM6D3Z8Deu6 z1nfRranK#G1@Hn8P`bLh+@b2SfIW!a?N$fe0e2AoAafVEL3L0au-BH= z>cz3o=Cip&Yiit!r#8N_y)IN!x?mIxVNp%>GxLI z+gdHYTI~c}{!RH%j$;Wa^omlh`R~qq6p}_giH`3A)3bh2fLkd@muP4;q(j97P2(=8M zlcH{gPwVr!d_JWYmnW{GUev@p))hYIYOHABwzLklTSDETxI{4ed|1$t#}5gLOB=l> z(B3|b`_19*)fl+GI_K&QUZv64H4q4>>%2a1z~>uoY3Ux`>H}9%k=N-A=A!9bE}x=E zixO;N^mli6qf5%M7`C+eidtL&XIaP>bhhAwQ=spD|U=qgxXTa(0URUSC1yi%vWtbdxiQTm$ROher`&T!v{(H7H z{^22Pn8`=R2Rk}yg7t1!$C^rizJ5UC*X#XySOnvQNiDDyJ4^`qaDymzM7afi7sc%q zmcm7aI1>BN>Y%fz#Wy_A9gq*L7CVl$K0n;<5ix1$?lpDwbQFt-1wx9JmYz_vXwZgW zu(v}Ith4!wy>+fipRX8~M^2ls*5R#Q-Cc|(=x*8Q2_ed^osqt}rcg_;#naj{=nsYJ zg6I`!e3dc-k! zUlw&CV@AlKJjym_s@Zhf#@Jt=?=HM;egx?O;73wFVo#*kvPm32f_kr|GUgRLkabu3 zQFb@z_n~|Uv&%lHjeP)L1|YK? z>3Zl`hkO-M2YB+42a#^z-(Uy$H)2Onj+|W!{Wl0YQtMJ4f}H&*Z$v!FTKqsQ#%<)yzWW+DN7LvJx|2x-;e^S!>k*} z95L@ndx0Gm$4Fh2qOrfE-p3wF`5p72>~raN!H;3Y8{f{9{=llFe`hwl74&NKuU5$4 zhx7ns{(}0$FzbbWJNVtHKczl&J&tdNuHPi$B-$It`_Qf%(02a?oS}XX(rUEJBGLrv zcSC=bh`DHYeAKTNa@xT&C=%$!l+e!+tCvL`Q6I95Oa1W3#he`h&mqM1$H-HW3WW`c zMEy+kJ0z5S9db&M(vg%%cBG#o9YNZKREP8uQaS8l(3=ALgguR-Zz3-jeIxA~h#_pF zJ{$Mp0UY13G-e)Nk|p$L)1PL$mXcP;gk6)!gRtdzLN;t0f$VjO9OZb;gy{GD6X7S0 z+mkuQUh1#dYGDKFA3<41A_smKY!>6;E~$?lKz0r9Blp zm&W*;X-`R45&qwDlnb6@;%DQ$A{Xh>G9lydp_S`+i8o<(0Q#5|9&0D52A z2kfqB8D66RsF_oi4ZeO2u7^cP}Jq~yh(NOuAMK2loj zarnJg*dpSQ)*t&6xj3I%;0v8g<8-zxaUM-`vq=#TQI4_)Qh&?t0KWsc@GmR#D?%AJ_=#5w5@ zyEf&0TrY^aZk9{ui$=Byw!cZVDCD3l9kjGf>`3~rm@BmpbM09+3>yYv%WJ|O$n<8; zvz*LA%oFc1XX=ySDP-B;dx&Dt#2yF#T~v1$-l2n7WDKzk^x1Ck2zd`vohFvI6b~`q z48`l?T150O5evvnFJv1~KP&B5?7_4?wh3eC;fzK0aC#rcTp@cRt%*H~dVRtc)Dzc1 z?WuRNEf`-1FgG2*oFlH6I?^`BE~GpKfA(TtM@m^le|?ITq%9(byTB*n6Q5&mfPd>! zjxrN+ZTg)!=Zou!JK2qRA9q{&E_MjCLunZE(0dbT*J1oRFm?~3z8E{=8Uf!k%4Z1wbLEisV$WI>LpVDts|sl%52q8=UV0 z%0B%QU@k!ecxuRt8q|FscpX9Ek(cLQ5;4(1K6&5UvDIEwl(IwA4brfFa`PgvMG(7W_go zu7e2*f9oLaR=}0use?3uD+yN-G!RcK!4OfzeMB9k3I0BU{R9VNzh-`lgP-E&hs;(` zMD+ZSc`KkQb_JlY&`%cnVWHp=zWX6l;5}5@OL#xk8US3w)m!@{$l5+o zI@tgyV}QAUo2hg&l@1bpkmxV67a`#!^?{RYBjG0j|3R|FwgY+yb`o44I|E8@>qi+PzGp2>DRc8C^n*0 zaaZgkUL`4T?yQmwu{Qy42F1ng1gi)-3AzQ8RuU{Gs3E8$Xd+kv=q8zNlIbRyZj$*4 zuZ+FNKjAjm@QIWra49P`2AE9{F$7)&n?I4z`hW(&-;=d}K;1+952!1kJ+=zaNzhI3 zPwXft=ON(_@Es7o3z#POrJUFUfO$m8kG%lAgzz%L<%BBZFfEeBUJo$2-d^u0PoF`w-lP~AN4<7R6Jo$2-e7QgpE>PVIROs6aU==|pLAQXY3m&wEz>5i%5>yk^5Hu0A5Uc>iw-6zd3+;F#EaDG{ z_yZ#TfI@qk=s$oLP>Oe03LK@c0;2y&8IbTkpzPB>1Lg`SVh)IyOBo{OQYKpe0lWn7 zW4%+t}K=g2YF;BFYjC_%iFEa8)M!v|%7a4px3Leq!GV%o|IA|qd9GV($u#v16ti(=?n0IULMF*FL?6*~&(7C3wnFb@_MBR-%*vcO9b zt76C(xSXJhN;Sl9B4{C4LGWgjmWtU)l0)Oq0mb-|L!*FVe938K$!TQCAzx6$$dbcm z0d)k$_>#kN0mb-IK-vd@RRo;`-LOXiX`n-bfEt22L|Y;0W8Vfe5ye8#N|XxVYDjw% zu!^9Qpj$vl6R?<|nxKZDj-UllBW7SpLq2N63=ABzx}+t#mgrid7)XnOv=|V9Hzfli z07zO4q{RT61x3g=z*+%?76ZI~Q!ZALIP0V}MCl+L z=TlI+VvhlK$Ibw*C(0%&-OP$XnIL?UYE2Pk0n+NFI?(G$emx|g1KvTfGxiAZF0^1h zWD5FP;#^O3oV7vOMDziI5rUK8@k8brzy`vb2sRU?4Lp8m5v3gjJK?DxS_DN{?uVAg z0EHGmt_=}bGDvVM)!IgI2T>vfM+lA*9HY{mgijJaPxu~!dkJ0+ zdV|!3R%n3N?*gumodyh}tsA53BApTyr7HrZH5hkB3iSRbhQ$HEAh9IwXNVh zEwvGU8{R@&415xB6;W0}!a3l=hE>uwg2IKqX4sah?+JDB|2sZQV|7-46NZKoKq8 z4lSZ|6;Z@!Y9}At5tB!N3+?UXQ9IetPTJei6V8CX6(g%15q=DCjNk(CUyjla@~DG6 z>Yx~QK$oBkT^-bR9nc~uqR)3g{vkkI2?O>bwjDI4Iw*!6(ss0Iha@7_iC(P)#C;av zlhE4<9|aV>x)XZO05%Y8LTo!pdndGu(h&UWghzr$M6wgU2+E+40ACIP?jU@aV1!CX z2p@yLozghrqE~mKHwrjOaGK~*g7XCT5Zp`fa`1GajXnmF2n~C$crv%3*lmHc1f2}Ezvq%@Mr;WJMo99bO)6V z5oMV02=R;%K1xuG+%9-3wC^Oiizw5C&k&p?7$vxupcu>D)b8CB|8BCm8?Af@^e*sp zQy=bz&8LA!V8dGSZY}w>7JW}pgm-J<-DyBEa@Qil?@H^a&#Xg#ut`1CD|#^EY#8n0 z9MKDzXQYjE*4RikY^1)o5xpIB>H`~L&uQSRAZ;T_+X#&U?~J(t#VFed3%3J``FtZ} zJ|b-*Up7I`&w-1x&nEI~6ZlU97rkf`#=;rE?W`D3__awA^YbQ2%)|ZEC;K7iG2mi! z_d~)XfZ{CEPb03MqSQ||^wTKlhfKjEdSE|E+bo5_znRWon-LR%?}oH3=)>;-3jQr< z@pFLN35KauNZ0}if>X?&TPU7eq$$FuVeJ;k5pa&+0?{uA{~#ov1KdJToOcFE{vgR8 zBzp#7;X9xUe+Q|(21&~x**QqM21(Z-v^)YHp=FRFa~Z~RI=%qPi7w-USr%=Qgr%8|uCbT=>2XbppPj_HlQ?%Saf+z!qCUKfY}f_5poj=hprw?6 zV%D9YUNHg5XMl_THi25LfTE=)C_WPup9!*g5_R3catR)Vv`LaMN%5Z~Ig=!3lC)2f zoJs0YlaTgv@b83{Ns>89(Vmndp}73~|m7=L~U1i5?|Nlsw&oy4$5asI?$1kUb03`U_Nd zfoxl#*e;NT3l#qavTZN%@1>UAOPqTt0(*&bFLCZAd#;Dcb>$5)@~~n>ki^0I{|Mh_xN*W?b_Nh_xL+tnC0|Z3hr*JAhc*!P=W=X}_Gk z%^#3HNO>{!XzJT|k7#GwnY547E7RAePo_Vb;m)`=vpn;kvc~c9lV|Xj#WTydF28yC zuW~ALhI1ZYp}~jIzq7Ju<%hW&bMMW4FK;pLoA@V%(SlV4Q-z&{-z(}YdboI|q#OTm zvcB}WvR1iYal5iZ`F&Nos$Mm!dP?;*b&C2Ynyc_1;7{q+>E71w*T)R&4X+u`n(|Cf zn%(Bt$~Tq&%(BXQh4q7q(MpHyIs2_u*E)tAA38Ig2c17~{?V1|s&cJ!UGBQWb;9+w z>lbe3R=OMATijQ>54%sh|H=Iy)w1fU>Q&WStFNrSyZTi1cdF0Ttf;B1X|35>^SPR@ zdeS_fdjHY)kniiYE9+A0?S7O0KK~B`d4Y!;iW_qpUu{Zj+T3)ed7$~*!BxR0gYUQG zwLIQh+q$nUxXQHp_Rxw@S7<);oi*FrtJ*)`{%;)(9kU&`bv)nkPUpd{-maOhgWam` z7uGIYd)eA&*A=g;UDvyAalK-F-}-AdWNtXH;ZHreJ==Od>8tE(@0;kmvG2vc@AjSF zSiI4(as9@bjR!V9zVWS%A8z8CG@CYUdTY}!`px~#{rmdA)_-B3d0=7Soy~^L4V(Kn z&uqSN^Vhd@4(1P54z3xz=dyy!sxJG^))ialw*F?@W81fcH-x_&el`64@W(rHc2w=? z*)g-@z>bH8dWWJzw+%fpbav?bL%$x*7=A2L83{&)BKsrvM_!D4f5bL&VC3k?*GA5b zW{&Dc>qh%WqoZFOJvREz=)aF;k6Fj=7}tz9j=wej(fD6>mhJTI9N0O(^R}JGcmC_H z>n0i}-k!X9$};uX)W_4;O}{+-_Kae8aQBYg*X%yB`}N%)&#GrP&W_B!AFYV4icUtq z7=0=FwdlLikD~uMmok?>XPT>>>zvy*w=j3p+=Fv3&V6(4r*nUvUpZef-!#8*e)s(K z^Y_lbIREzi&-Y~Q(eA0=Gq`8Zo?G`E+w<0*4;NAvj0>TKJqy<@d~xBSg=ZJe?2TUj z{uTLGXs@te;lHB&ivBA`uDIih<5&Fb^BteR_saAuS6zAIm0!Io=PLhI+pfChs@Jai z(bd^kYp(9TdSX$xc;Djj#n%?!Tl{2S@jmaq_4~&6?b~T=(vEzuYhFFWv9lAKL%M^{(sNum9oozq?`i z4G-P$(hYCk@Z%ePcVPU$Zx60GXgb(>aPVOC;J$^OHBfen@#}?V$$`y>#f?hkkx2c8l^B&n;_j8NKD|Tkg5##4T^# z^5L!WTWfAp+;;yLB451n_9J)fy5s&kKD^_XcRKG%zia-kpM1&nrPFucchBHGuio?Z zd%krzba>t2{=?f3j~$*l{DZ?E96ooi{@#jvBlk|;`{BL6y!W^F{`tPe`&IXQ@859$ z>+vpLpqsZ$9zSleJGaKl#j) zFFyJHQUB4_r#3#F`t<6jw>|yqX9CZ(J=66}-!r#7bJsHuJoDJI#m_$d>x78&GR?DaQlm)7oU9b^^+qf-+U?j(utQ& zzZ5%_aY}Y-&8hV-%U&*idGO^&Pp>$=|CRJtcE9q$EB|@s#;;_3#qgEazVgniJ+E$g zb?DVAUcL6!|9WlawcnjhKdU-Bd-h9bUp@QY>-%0mDV{t@hX5K`FFtiEv6ZZdtpe?# z%zPZ-S5nN(|0Vf5r>k)cW`b$#>Lpyl*HEro!c$l!z9Jas!N)4`{g^nOhVKlWS;Eu7 z|E(oFgY97N;TacCO@X%M98ZOSlO?=`@N}a05S{^iCErGPCgIbBCPoQ6+Hj3gr_ls^v5MUovlcbFX0*NA5tuYXA2ur;{3~m-W05> z!_MV`o{AM?;426(Bzz_C6{%XnMI7@|@f;021;o=#cp>nWsa=E@5&bg4OM$OQ9Vc8) z_yXZd;@MBQn(!|WZX=%i1)fQE;(4dQ<1$|o`0_aY4Z`C#f4lecnaD_ZD57~%(>oT? zbWKl9&w-?AnVy}Qo(<29PfuxPCWh>q*6>{T|Anba2-EaTPt1#IQO%ku)N|I>I&1(g zyQXbf`zDc8zZw(VTDUm-Zefn zI~|=KnX?c}SC3|BdN!gNnVy=f+vvhi(&OY_%AU~l&W490li}H2n(2}Mt9P2&$mn=< zE;1V#){IYS<`9U!9?iP&oW`W-?b56r8L?}^Q^T6bL^QH61~xnEX47nzO|meX0Jei& z&U09V?POEz9MZ+I9ySM_DK-o^%Z5`9ryNiDO3G_UFQ=SNc^bp*a(wkO!bVU&gj~a( zMCxT@gm*!bkT$o(rC}{3dxl^b^l{?QK*j{>+fla_l7!Cxf0C+_mT6cIbWE`Mq_!wz zuYp~0eNH?Stz`~oV{yzyRy3o=1o$?La9a z4i9EGGU0&(`$g-z5RHpR&w{@f^}_HVLVaMC?E+0``TyQ_8nR>*R!3p0h>?hp2FFu? zb4xvUUHnON_D1oq^?d40M?=;j6NVDIEDI`@O=gsF`q@R zm?EwJ8`u9v$Js!fxv<5|?5;TWStuRCi432%$BZb>QsRu1iC_9=;~P-RSq{E_E5n&E z7w0T|+>{mKoLG!+H@R}@AxhZ!Bu!mO+U=RX?)UWIPt zM2B*-YW(WKgI_85Fj(qXJ)YJFSOdo@D;%8*nWH)?go6>>>#@l=kA;F9qU`zt?V}T z1@=XDJG+D3iQjvrvb)(m>@ZJb_p$rg13aBQ#2#ix*q7NO>{0d@dz?Li3G66)iao=g zWzVr=>^M8Yo@Xzx7xDXnm)I%xGCR#)!8O2F*sJU{c9y-)zRKQU|G>V+zRteE{*k@O z-eTWm|A)PeYlCmI@342+yX>EFZSY<8J@$QkiSA$6`|MxY581!rYotGBAFvPEN9-r; zr|f6!=j<1le1FM)#r~cB2m3Yq4f~jV!hXyCll_kUp8bLSk^PCCXMbiF*nhFVuuoZx z<40sXlV|a4zKk#DIeZ0|@s&K6=ka`Azzca1FXkn@l$UWiS8yd)aeTOpYq^f=xq%zG ziQ~g-+`_H+O+zJqp-pbqf zD!!VB_!{2MJ9sDW;@x~LU&q(;4ZMf<@;<(iZ{q!YfN$no_#nQgxs`9@+j*Gp;6r?v zNB9UIs3TllT~HvR?vMSeTKgWt*T;$Px-^LzMVelNd|-_IZ5 z5Auij!~6*UGJk|W${*v8^C$R|{3w5lKh2-v&+_N^F@Bt%;Lr0H_>24`e~F*sFZ0v< z6@G?)g}=&Q<7fHn{Hy#8{tx_X{OkN1{2%$7{4M@X{(tz}{9F9n{5$*|{!jc}{?Gh9 z{$2h({(b%f{xAG}{;&Lp{NMPG_>cJq{6qc`{|Wyo{~7-|{{=tCf60Hv|DFE_|26*& z{}{j0_$~iW{yYAA{GQ^E{7?A3!=L#D{$Knr{8Jvo#Vp5%uTrE`{4N0B@xs&oEIf%` zhG)z<(h5AyT`A>Cc~ZVqz#fzer6N3+Ex{AlGCU_$NJ>eCr*RZ2F=E>%em$tk%cw^S|FNFK>6`J`GrtEkqJsIcp}q= z=P0Z3++z)%JKz}t)~LI&M!Zg1FKxieaIe%S)^D+9I)L@jEm nj%*Gwqwn1hctv$ zwg^_#Mx`-n9IIfvuwI1~C9L<%NV}z3DJsq38-RPTdb3x$T>6}Jh4gvpO6e-;YH3m0 zCtV|5D_w^#1YR%QARUknN;gV3VV&fVbc=MWber@Ac5j+}YJOs3<<#_)xP%&?8l8>I z&CgDyOwKz~X2zWYrUk{+fkqj`FC zdMdIjBOK4uTZh7^l|CHLTB8%;=vYSE5>sS}sV!a_iD#YRq4~K;`b0eIj1wm)OYMZl z)Cr-sJ6=2$&${DWQxmPilx6k~MTW;GCc>F> zOGtWeoNbP>w7ywHC~aQAtiFW&toa0%zBw-KbCjiS78ZXFAZ>Mcax$ETOYgaG%DS=f zwD82tSU7DsGBFp=?GHWYbU{Agk%p3lxL z9nVF_aFdiqFk^TZ>5<_b(|fby*eqH+V-B}!qw_QIe0J%0cq)E8F_JzsK07oK z$r_*9vjg)+WKLj9wCLnG`XTNz(Si0P4^pD@Q|TkPL7RxA3Xm3^fhnm&6Z1RL#v);; z7#b*jjUOK|jhX-&H{zH`}BcxE~}H#QO?5o0anh07ojpAhnTp$=(Hx)LGQ#nES&Q&yesW|YvUl0g zMLe}d4CWz#jJBm3@JURI>22{@FhW^so8XH8EL(lC_Oj87c^C~?`& zi+E;7!j4@_$nsq{4@9OWa63Fcl-Zdmo=70w2?VnOO_(WdQ==)7snLwJO9o9Z8MHQT z&@^S48xr+qmyl&W7tL4}y@;pw3Ww)}!+mjwvDyH?Gy0a~&o9aEi_4#nJKVSA@cfd) zn=VRRwr~kPa0!0-MLZ4j@Mts}3ky@DG=*a>O`sXgZA8ilM<`#mmQHAKeEK4u6~?R> znTU*s(>GyW#OZM%o^2x5^aaYYHVuzsg&{f~&00uc=>u`b%PGs*Jr6nJ{EDe~I17s$ zVsJ$EQV)0dYO9@Dk?0)SeGa8K??%LgKel{s3=J2@qsvCd_ayM;QAnCf6bwz{d=wrU zicHO|q%+MWgtR%V4n=bkR?$&*vp8W9y1XrZzM_N7wz)VpYt8f$wtVfRSihNyGxuG> zoV|83G8$*k9S8eoG^CM+)F4i2X{~f#T+)-eS)4SXCsn9O>j=-xgws32lRJjPQrEoH zJumf-qt}s6Y2A3rhOz0i9y*owhUYVu^ry6pji;=OjxQH75_)Azg^A;AIxENRUOFkq zorD2|WC^PYE0~Y_m8eR@)E&b3QE{qI{hTmb9AcFTri+ScyU28$$A#%r^U~h&jOn=D zDYIkK>2&^gVn(OSfs`Rw3^Z+81Z}wxkWeQ3E9J|Vq>vHImkQ}1n<^7Z-3DhGmpg&g zIFpzwiCrwMPSR?Um?w#OlURJph2)yr1kK|}Vo4pIgbrtQQl2v@#hH}iOiFPjrMQw( zTnQ--SJFOLQl2YmpDQWZm6YsCN_HnDyOWaLNy+YH4BSZ_?xYTPQinUK!=2ROPU@&m z>cBu1rzb?HI;o>NsiQin<6>N@lRB!CI+jjtLP}DHCux-@S;Ld8;YnKMN!IWtt@0*q z@g{BYCT;O1C3};Sy-CU5q-1YWvM(vwm-N?{)Zt6&@FjKlk~(}z9loRvUs8uJsiQWj zqc*9dHmRdFsiQWjqc*9dHmRdFsl$6wNui^gw?7(B^_?6uvpcLr}^R;zPN!e z9^s1-zIYX1+{YLFd~qvZtl*0ZzNq4hO?>ec?n5LNdD9D@Ijn6e=8JFf#b@|plrNh2 zqLD8e_@ah4oszUC*0?EaqwM+Spi3M+A82sNV4@cB)UvCQQt)4KTJ~+E7#%f%Nu!H1 zm#Rdrd*0d@KepGorkg|38>sjO8sQE0BcxO`&l_wz(zlUPm<+HHX&cg6q~9RLkkY}e zgB!OJlmS*DH6m?8x*F*>Na@s$wdM6%}D+6d%#aJ;ifQ{xRoIf6QT7%~@hK0PCD;tO&&OTTh%Rk#dh{OxFMsd_6Q*SVBR)-+3Rk1_e6ot%_>PE#@wLi{PBkG(~ zJ77XZ9JRt&i-MHuRj&w#SRWs2s?4}6qd#M9h9|?7QJJC5P-iGJ;C|@6LEWM z#l@}UB3e-bwaR06b@cQfJE|Nw<`PIuInZ(J_8!e(|I1i*`?#(3Wvss;8|Z&IrGfvp zZG)hvG_(#3be!TFiH~XcC*VVuK?c4|71IblrpZ*r`3}eVjHnMjgUG;_mBoz2XUxhX zzEm#wjz@DJXt7uX19BUvkc$-!0aTNeq zco|a=i-MOC3t4`gSgMv-4klR+lBSfnHN+zT#N_-q!ISf2@LUqg|2rB9R#fok>j#Dg z+amh5?fSL|()MFF?HMaMwzxy1IX*NX3N*)3Oxt%1jfp%QIX0k=v>qGMw`z{pQ@y_` z9u&p(`qtxYu&uZM_+V3{^+bJBeVabqI`I7Jb=BU_=sK9xRlV+i(6vqos}{OeQ@y{^ z19jheZOK*g z)2WOq^3(i@rJ|J}=jwwDeRpm? zI?qbl##`fmQEVX1&5Oo}Lof;I|G0sv?O0Q|H9E&w$1!V9$FausoBNMvWPrN8bpW)w z1Z~-}wo|dQaiSf>I>DHdl4KM#zo2DhEippzf7{3|P!Xe-@oIoqp65*}j_0TYDaTYD zy%MH`-pvTc;O73*SgRJNis%5Vn2X|HF7ZFa2l#DxqQ%k<W*WJlTsU~l*r?1sXL88=^bApO=EyN!yU)Jm%gsbA zAGuPe%}vWn*!#inMBRdkd>)&&INQ;u!!w0Mqa8^9Vn)`?xfMPiT_K7sC$ir+Gwrr4 zRT}gs!Zl`QE}apT{@^B})p2BN{8YyDv~)AP%RSKVh4h{oh-mPG*I|TX5Dw0mo1Ihm za?7>|Unc4rkvV@_T4y8R6QVH&!jW^+a_@8IX6(OPf3WgG2U{WGkv7YThSn z{%zSc-6$F5hpF_eh10X!Oc~Wh`#rxm-_3kyLQN+*GLPx!c-oCtNsmJ}Q zSHK@fu6=2(Fy=j1Q!;M{vl?lfb1AsEMBJS~m2Tt>RLZlLCd5-D zQH|R+v}PGA)SqK}9mF11Y2s(?emD-Y%k~taVmQ!-l1+;vO^8S~yMd@B>O>e%~g5on1?#frD3*r;HDu?fjaYZ z$TO9q6}E8Do1$etbc9nk{w8(iZ%{}6E_KnSP-l6XI>|HCSsO>4^~)fJI_ZNDKatjW zFsQjLhyq0gHJ3Uy75UVMU!ZgmOp}F^=JWQ{iBF@^ydiam8^#Avcea7r^1jrbr_&hb zpePpT{+h?YA53FJ4%&Yzm=1ZQt2}HQ(k`KX`=|}l;&}j>=u3Xk;maMQvmdFmaL^jy z6b{w~c*8##B-Xhj@n&>|e|}wD8r)G}0ayxFf^={Syi@0X1osHo1$~V{Gx&c5pTXY| z^p|nyxAEks`YhfHDc_^9svpY}6lJ@E2HR3;nk|85$(?BbiBurx(E>RDZ8w4v#0DBG zywT@2Q)9W87HAF8?v3eA*^``dAD)w-X2OR?3tt+EXE0Pwr(9Wr`s_s9W7JZPqSe|< zG)g;(@C)u5l)Dln!LDT3n981@@d|kk_Jq}93#NufE4oFlqE5_L0`JQ)e zGTy0!@-x!4Y!bFsG~DJ38N_LwD8-mX2aT8De~DV@x~HB8wZYUIb)RB%Kzw(1we~9c zY43r()KlJr`i?|9UqXNDQ;R%{{?dV3h}B46g?icnMsC{%j4x~8pFtbZZX3~7iOMg2 zB0scAQ*AYklF!$sOB;<+{oM81KY(HiYB7d)d} z-jX(nRj{d?QrIgrhubNiU8NOxcjjy7X+A5Vspw}J{3DtQGT76Ug8rPsyHh&9m6nSM z=qD55=2JBLnVw~T&>`jLU(yP^LkDcPQm)ua1L1$08|eSdXaX33zWf~M&nHj}h!Uge zcE~JNh)-y`wv-0Jp9gZ#-&gU^X_Zz;Nw&Kv!?ud1*Q0$*N!l5d(T|err3=+X;Fdig;F(3)dQ?L;<0Q7=i<(&!QKr9FZD(|Q|SLID)zBLbO zuTz@l!aR~s)4^7-8l>0x?}Pg^cobX$O6Ga+8Yr?Yq}lRTibS8ECs*U0{fTUNKb+c3 z8iX-%C}d`1%+3Uh(SP=XXFw>}SnsNI_)F3M-UX*Y-Pq&~6%Ivxm?pum#;gP|w$5cY zg^|u2wns2m7Se8c3h&8J7>i$^aatEz2$pLP;axlc=Hr>oCzs3x(df%HG@Kuya6Xo1 zie$K>$;rQWddwPj zEg%n(kGPxqi7bi{v#E_(jCa~W!{unw#C-P^&49kP6pwkS59a#W@>#4SE>WoMDveWk z)*0i`u3IsNsIu?CdSH+H9`wmr=yGCxIR*3IM)cE-N(a^uy+vON6O-`%V1AQoU3C+l zHI-UR-GExBsI>{!eXCK9s;64(Y($;I#d*}Leyyi$2WYFIY7Um=7#C+?>`KL4*$wl; z2ku{BgDz9>PSvfW1gAjuCiLBfIcF}dvCRXXb(XtU2J@7fudogpqkWC>=NvVX==Os%cpdW!>i4(q9} z%tl+H-NiDjg{A?KRkmnn&>IFf`Txo_7U^(>{2n045ALACG!17O;P?v>E(z(6;9h-vHy@=K%4d0oF~47z6L4uKa$ay#VHu zuV{`o97V0sm*dsiQ;fx$wLjLZUr`Tsg@Uj~9f5j28fkHThBZ)+j3|lkFxy z_B`4r3eR~Hy(*j0t5{Rc#eQ=-n2P;nJJ4SgQ?i16i#5)h^r8Y|XW@+yQ6b0vhJQwn z+zk59Jqq3rZH94IenrhN9;k6|9NzurnClK|kB~3s+7z{h7JE?7y%Z~d!T9tL^|u|Q zAgqs9$?5K|(WghFZ?01BqxhLxYMs$v_Mo5KhyIm@@%MA;&wioDu}(XP^-FuX9bo@z z+(F*jy@<>8l-1rgfLdW}KB)hJv>dFBS7MynO|3OSO|CN1~ z>C=$s7s&pGILt5FcNoWCL0x<(L~NlhSg&og-Ge=JHsZ#EGzyU)Ll$df?JUx!BJNGJ z(;rwrbL@>Rv|kL~=>o_kV_elRr`JH%7xM*>-68)qj&s!e^#YKTpnU)rW2IQ)uJW{J zKPnJKXv1hcpLP@ud&g=Wu;+Ud&nNKgmK~?^7D+XA7V{^0%Kw-=Dy{4|MMvh zgxmUf)`Q*jh4i+8wWsYND%akj5%MaHFc)L*`w`}WdY9F`i7;GO*s6g*rTj zwanAlS705dUG=P?9}s~oLIk?M)Xux#(#~_NzZCU;_glt%dP4Ju-e1t}y(nE9?7pns z2feE?{$V`F_%cS0!}z)u_GP&LkOf$iKS!c__coBLg zke?MnQ*7HYM`xgJ)$rd!i?HTWZD6+rqHVEL?V|}= zIrfrSG{$UBNwBL1Yl6({dz|i+%ST{6J_2=HMDxH#?8DW5=IuIG@E-KASc!Fe2&I9M zSQEVrhVpqBSLe|P@sj&T+j`2-uHiY%L4Vi^zZd4c8R$Q~J!|t&tsT}dC(&0iW^2)~ z=~bG5eMcLx6s!Ovz(9})ddYV&e^fz-9qXhSSd---uUZSJ^m`HhhiCty_A_^a9d+&& zxVypgpd6?&RJvjTNJhJ;{l<-ZkQ9u&6A-rmOaViH+KUVXp+N0DVu0Gygg`a|^oIXt zJ(Ccx^sBv0TcGwjH}8E?5vTSzH|mc^Sm}=fouH#XP`Z1;RXQi|gOrD`%ByV40QI&F zgTFp+NBEUpH`h(sv=At}W`O!UE#a@_kvtqHYIsCk&Ex~YOExqrvp8O|rT-P{Sc1)iN+yS2wywgv7Xnj+L1s?@V@ z>?&gL4voe>bOKEi9ch9Xfp8~E74tAJHTLw~uh4%7;+-Nq%N^L;Pvjqg=dh2j-Gg+& zzCxk)IG2GsBYGNa2OGhjI(Hjf_0HD4wPMofS;V3sB z?h`QJcd!C-4);~$)$7XbqCH8s8pmk5v4ln-e<`H?&^i*%klnDo#z*PFS;9KZxnw*{ zLp=O1j1AI-v8W^6rGS4v+%>h&1r||tnEI*y!S?!dGh@hadY%Pug_hsQDK0TRme-ZJf%Z@+$eC;Hq;u=ysRDO$W7QUiRz>cX^&&{oYXR zGyl9Fy;pvUa|lHueTBT6!P_2J!(M(2ZC4-+{eJ@cThCeGO09qGd9Mv;xQJVWXVqAp zxq9|IcVRxTV~on9C3v@Sx4so?q*V7#F&SSurn}E!F6fCpRR#;hx^p|;bF57<{#%|kXB0K& z0ya0pnz>F7`f!#4y3vl;`-N)j`DnYsy112|vj?0LsP_eN$LpTyF11g`dg?apqn1eQ z$@te;pT9|MAU_S@n@f$%UT?Xa?)a)AiiSk!h z)p8BC)ttuqaTx~YFZ->RJQ^jfc2Q#j=+tF%q>9W zg-z9X->UJhRab&X!5Aa&Z>w3OVs&AD434=)fM{@s(t}*pxx+iNx z-9x|=wYuHo;UE0Z@ZXjBU*u6X*4e4Pxq66pS83|otD-d-*ZnFSj(yUfnWBxL4xaH{ z#beI684KTb%vIRe;QQ^LzTvLHT=Fl_0x-V+i?q7Je?5G_U4GsFCmrtga!pM% z=pxs+yTXkCPPxuK7U39Ap8D^~>f7?)fjzh9yH>S(p~tNc|H*Z?*M6;u23^1=?A5!% zjQ~zhxY~_xc<%nS`TuKK9_lXPp*YtFbzi9CJi-$G@8RwQ2jQOrRJ`&lcOrNk{trPf z09p4{fHZe=9$FIy0>CPS9dJWHtGaL$;yNLJeHqY+Iv=Bh>f5@9$+h3uwGhPLgcP(L z9F$G*4N$oP-^gm+gF5=1S&F*f2yS{@4?l@Cb>HBhWZmHZXMFvA zgn#F%`wBO6%zgUiICX~qze3&krS3@l9UAUU+=x_nC~oFL&6U5z)yrI{DVG8 zkBc+3x;1j*pWI{kmQr`8#Ix?M|F)pq-2kpZaO>`q{LftMBW}*$o?87S?j{*^cZI)m z!(Ek!>b{@U-(68I;?%xIp*OGlj#BaGIJI~2+(S`!QT~n_>wJSB=Zm#>YU<-s+^Cwl?g35AJ8I++AK9roM1bvKseC za9_c9%?9fG4BSl~xr^>NxX<$rNH2Fkt^Di<_iH#C!nZE>y8!%N{V#odUJ za0~c3_phSvPSL-0pTK8O!nQLESs5rxJYzcaA)~h3_Txe&ya6R{nb2 zNK@3w>an=1q==@D*Znt#Ray*C?gGdv>hj6@`%Qo6PVjsitiAvAcj^BsZX5E|rrjZN zZ^}cX+HZX7JKx_SaIdN!+^uM)?pXa#5qII+q57_NGaq}t-FCvaoWI=F@_hTMzpth4 zY|W*KY#Z*&^l?{nb!RIKXRhkbmb$N1cV`RVjmEG_+}pbGzSdA`!H1H=b7w1xnyWio zxH}}Jx+|sbNey?G*(Ot#Ey0~@OQ_ia)`2e(&WC$1SX&p~Ya8jlQ++r8cd}C5yZV0t z^{wOI;koDa82YQa@Abcgx<7_J8U-GT~ml$oPp)zeC&?8du-}1+l^TG{<8*g z>U$dQt7*G1-{5|ly32<5XSnCy*%LU=I*9q^3EYMHfM(&n*(k1Ip1>V4HCN#NA1QAB z=ebuFM9XbkJ$I~%a9;MkZ70^;H}XjB{U96e2;GS1zL2^zbR+8i&`n^U{Y*XTY#b-p z9&n~`9QNFR`!k&3L6(s2xwEtq?sbq?-52VF{MSJkwW^13QeJzPNVzvqbc0{TF92r% z&M%ZL_2(7WT_x|iR|I$0KVj`4k9$TQ`&2%K195o*_l)58fb^f?_W=Je`0Kd@S)6&) z-alf`(Q<@wexaaQpcwMXu6jIok`PW*sC!9pucPiLA?!ijRZ?l{t`b}i>dq4U9@O0> z_&spkVXBW;cbVY#z;UPPdOYqnUH9XT6Z{_3U8j0K!&xf)*HQPM5cZ(%LBa2V<33b< zJnGjMeh)YKJ9u!-F`VR`+iXVQxrrZxZAlf_v#)v~h11Ehre@TQ{mZ z931yI>hEs+yL%gddsn0GZUStWu26Rpk@{xQZpTn2%9KMF<@ooH3zE8{-i^NK?UKEH& z#9Q)Ctx3ZHt-M+_Y}KJv$5v6T9&L5F)$6SvX#G&@-vXKjvQv&k>?+@J5hPP?drg595ZCbVoXw$Jx=QeR|(%MW9 z;z8a)fx)*0e;s_aEk0nj^=j+g)~Bs++eg~&Yg^v-blWd*MI@r#toEy%na(9$nm^w1 z@xUs4V6O?Pal759wR#hG@&um3Gg0rQsP|faKi|bmM7CHa@=)(hVwX50^HFbV)u2@) z)Vouw=vKR09cfjAdhZON0N(&dKwLmVUA?CS=d$J?Tk?mOK$aQRX>~!pQJn1-8SMO#w)O&c~n7}oGg?0751@&&xrgdGtQ`@9_ z>g@le+aY|bI@7I9OYluFt{%+pq7^OZ}qb_~fzAn+@eAN~IId6=q_g`wNe3x+YdnxmC zNmMZdzUD-qWr4Y$H~ehs#W@$BBDxrRG3xTq7w@?gQJ?d(0~cPraFFQJJ3JbyFWi3t zMOKmUtUNSGzg+&+dM7Yz1zzeM}_+9Y5@ZklV-(Gkca=xE@^oj4sKd5}~2Ta~R z`Cc!SsHfW2dV2j;=E4_JuljP}cYsiQ4L)Eyil498D)lG>HsP0KPN<)75pU&KTk%^k zZ+YchQ1B`8#)_eOl~;4VJ3dgQxfW@2fSeo z)mT;cui@%?AL5raT;8y#AxcpH8a}FMSX>v{S?kvSY*1H5!ltlEEP;(;OpqHD0`kQ7OYE0Agwx^vkBV(ocg|W)G+x*GcV*YI0W8!uc&*B5Er}+XN#TW8u9>Z_b zZ|AXm5YOg|_+TE#hw!0%F(1a`G4Bl5TJsTnsTskSVJ=Fr#_&<>3wD{0=C|`Pd^u0# zWBCfpm*2}*@^O3>AJ4vIU-2ZK%qQ?%%w2b26raRbWA@t0Cu1bPkLOq)S?BpS>s|Zn z_Hz3h`tSN5W|Uz!yv#9rwDFYwp4rX_FlQLk&DV?>=Ih2x^9>`zEH`GEZ}PQzjPbM{ zYq<1j#$i5%->L60h5o%6rhTkkG92bi`$nxyJE`aBOO3bmCrrsxd75D}hwHZ*JN2o? z^G2AtOdn(%)CU{S>3197==T_3>+hQ(`Z?2S1e!~YHfD|yX|6X0ns*tq&3BDC=2>Hi zxycx1-e=#$*Xd82-h3+0=hOIIJe{xC$i}9%uWM&w_w%?4l<}9O~Ior6?{FZOv z1-Ml?lW*di^&xte@v{E2F_stdyX{5%9(^XCZZ+47jL-B+vn!v$xA2)}9?#%K)+_uF ze_r$FhfO;_!jJM7_%VK*pU_%abIne+w$@9$l7DNR;otG^`4#?y{a*W4TSNW_ujbb* zDOOrGtASW0a>X51W2>qC3Hx5_ed`0vn|F$}Vx7phE?ZxTyTp2Wid@*C9<+UDYodLw zeX4z?RbX!2s9n=)FvD&Zg}CGWJiSOqsEnS$m-lxMnp_JggTt-rmky`8;-ZIErSEzaJ^HpDj6`qcW&R%MH_-C~QieQ7VTceHo1 zceaPvLv4PxuWgmKk#-;309&%Xy;Wh??XB#$>dkdudk=e0?r#sb_qF%8ceO{_2il|T zv3djhV0)Z>s6F03!amAA#y(bSX-~3Guurn5+NarP*k{=@?epym?ThS7?aS?}v?2Dp zwO_R=>piNZZ}lG5=lWXxN&Sp*ht<-`)Wh`Y^eUaw^Nb?BgkIB6>)+AqdbOd^8%9$q zH+s;U#%Lp#-oowD({x6E+gNRNwT4)utvOa6y-n}XS$db=qxb0?eLx?Xz3DuCOrOvN zGX*Q{Pw^X}pV8;^1${|h(bx2i_KCH|oMf%G?i0o0aq*!2Df`o+L_8r5h=;{fSVQd> z4~ZwmPVuyORFq2mZjkIQd&^s89~mb5${rFsQ`t}UlKsUVvDbLT47HvYyTxNhgm^|@ zfYql-2o)Wx1GX4AtM!|Dk_FztQikfpy4w);i3X-jlBAGw28UNxze> zVn_9hb%1`QD*c-N6uv-I8$I>;#u&OrZeuCK|iU)F;8F@JM13ovgt%9z8v%-Wb2SrBW>+OhVm1MA2-vCb@nburEvAF!_0 zN#-;+o4#hS*@d-at;}ZDTh{C5S1edY%3-V_3zY+9yo{2=Wwab2W8_E~D-+}(Im&8* z)y5yJHPx^{>qYCV94tr6I5|cRk%{(G_SfW4IaW)yAG4pZpR~WCP0%Ka=fr2?pr|nV znz{5NYa$Mb&&BiN3vpO{sr{^dD~^cE;;8saydb_7$HX_{xTq8-#JA!_@tt@{e6RhY zeJ4(eD@LLCL6nIf#mnL+@rt-AUKKx!Q{or#n)p?`E~>;E;y3+EtJEqJ<>Ghoruaj= zC91_~aZQ{NHR5gI)-UT*j01YA@vNS19MK;&z7p?9vOjM>YVEgPww|$0iGN6DJ!h3$ z2dy`aTg@fntmO8?_7|)Z)<3Kx<`wIx`GfU>`J;8rdRx3Jg>~F|N4zJccwcJboV1A# zj5o!HQWqadL!6hU_*h!v6KNM0q?foT8;DD?q4-obvQArXn7@nuVt|M=tIZnIEe47x z5p8i1W9gPDVl7Jy5`#sYa&a&^x4KSeWCHHo^71c z7a6bVi;dT{FSIZ9CB_^2y+(z;)%aY$&-g;$W_+pNZ(P=Q8I}58Q`24MEqbZhSl@3p zv9&RM^k;0r`Uhr9{X?^Ze#Pve|6umie>8jPznJ~>U(Nn{l{rBF&5YD*%oyEm#u{V} zGIVoRp=H13{^B!Y_xy2Z178&Er`;GDDb|cArz(_WC@LA?tMy7e%m}{Of=9zCB^UZgR zEb~2Mf%(3%(EPx-&HT_R=t<;s2*Bsf0AsHnY3$Pn8YS2h zJgMJhe5kKCKGHWB=k)^PV|}CXiN49Wpl>!V>V?K7{jAwmf7fhb_?lCU7G|o^(o8e_ z%&CUIIn8KgrW>uz>DJfQRqGq;XRFfs#roFz)%wn=GNzfY8tLXK>wD`r>x%We^@H_? z^`lj7{bXG;mYWsE8uM#otyyX0ncrBUR+!b@>S=YedRVtwz4W2_2t8g;(1+kedcKtzphyJksfc}t`XeC+WtO?dwE7=-vP1FzQhxF(4!}_!O^ZG&k zh&A83&01hBva+mfYoWDR|46@}f2?29&+8ZUPxMdC`Q}1%fthV)nYS68jV?xr5o$P% zuGU)XE^D2&!Mf90Z{=GB#s+JfwZqzOJ!IW)J!m~(J#6_~4y(1*#%g5+S^-v&)!PcU zMp+5gBrCf`l^da^!APtsHL3HoF! z)k?RfS~ILPYq~YfnyDYxPwFq~FY71tGW{j}6|30VV?Ac=wRT%iSdUx#toBxCtD_ZS zb+DXPC##DUVfD2JTm7s-Rv#-)AFC(oWAxGbIBk$NL<`ptS#0iYonEG-C^BhZ8kO= zn~aS{fzd~c(W14!)|1vQtHgTLddlc-bhFx8!B#u1kJeiorp0T+wV~PwZKRfLaY4WUmSH35|!tYW%D8DoRu*kAoKH>p0PBxXzWOL~&Td=QL23x?U${_xr z_77I7on`yA_q7kSceM|-_q21`N7{Mq9X{7y$X;V_u-92Rdz-z(-ePaE)9eg;l^tLs z*~{!D8O#pJcG?WtnVn+auuAQMIZ(T3^yagT{pN%ALpVv9!?)vPL;S;01pfa&`uG3s9WHtHriQ)(JJDOP@4O#-&h6N5K7bu(ckDJ#d-j{H zu;avj6T8i^*l&(Ald#`Bj=d&!n&=BNJbUD1HiAu{Wo#NtW9d|az49UKdHvZ->?nJI z9b@ybM?Q(C_X=HNWwentS$^2lX3169V;^TP^TqgGE5hD7mh~l$opTq%TkQ>1FZA>~ z)d!zrr_3*nRm_DR6vd*|(?m}k$s*Z6nTwtFO6<3DvCH=CuJu>d&RT1R9k$w2<2To_ z4|s+S)~)nU;uOD(a3bR(r^7{KlVXz{j$wzW;izFQ+n5PSt}s7Whvd{5j`d@cT)b`C z^9C6-ZCcP&zra8jCA%m(C}ux;PjqTjh>JO0j?@_;F79-sJ6tCcT(aGS{T-MU9Xl;{ z^u(mVpg_O%Ne)*+LQQ!ixQHiCntxvgwql0aLKl5Fi49|NOEaG zQ7&6h6wFU{vD6TkbOymLM|!C?HOiqX(~iuW@Kuz5=o8m7-=~7>voEcjp`J5y|GQ_pBvw*)xtW%glN<_ z)e*ZsC`~;GPfL-XYE75J4@TBo=@M;&(qd|hu>Xtfu3+Rs=Id3vF_V|-GeJ@N?Usm5 z3iJyKOzspI;%eY59U~jTYkab`DESDwXLm$-%A$(}QwCT(>xfjY=9erZ&2;K5@P zlU$90q8zaTC17Z;lp;_Bq_ zEC_LR_IMVCxLP~O)u8kLz{UXB*c!SWuu-{zuu-{fV54$_V54$_VWV=}!bat`gN@2< z4;z)+0X8bv>2ySRUV#uNn#McT5sl}Qs-9;WT$fYzw=PasNM~0F-lVSR#Dme>{`OT0 zN(&EC!`Oc*fvyzd3cdb#STk4GPNf=a8k>Y+NIisZH@3`Qle;?|Jv{c_3ON@0*Ebpi z#owBz;;GpI&mg`xg1_;0hMqGP9phq!t;yEKmoarOLnqUeOvAl?g) zgqpQ=ba4z;FE5&M$olnzg9c-;NW!p=VG(b1PsW=1p!{%*GR^RU;D3*Z%Z%V1zKmGlgE2#4P@yq##79HquU1EVR*Ly19y@b=+p z{`pnHd(S%84)#1cH9g2BqSMkb4DskRKloFV@$TN7Ck-ZHU=A9T7VZ~>5(c4Oa6F|z z-`^AhL)2g?F#w?LHFPKp?KfEhjcLf-)?);IVy01}+&{}gkLaV?z=6`Wc6DtK6oIDc z>xp(5c)=ZxK|zC6Vd`l`c$!RApsqzJF{z6q0&}CXxGoaP{@LWVwg?SD()HQ5_Cfu% zbEO8=JsH>-;_6ptL3I72NmbMH%~h;_l>MDSjxMUz24P^1NbXYFh56tG9B@4vPxGJA zk=LU=()C&YBs0+I3h!K>@+YNHPFL^F>(Pf)XIYQe@-GGBv2<~DLHW_1=29K7zI9dS z3c_2_1usdhjWHNBFos|6srB{!_g!)D-*t@tN$*qbrpA|upm4vy8=iMya-EH_sxj&t zb&#rmplW$#VqHD1S9vh1+_d)P#B7iEut^tJ7~aLWe-S?fV=nV);_3mJp-xvXIKxz{ z#iCsugD|btw^O`Rbw}4QH0yBZexew7M!>_AXQXpK^TZ^;iCMq+|xcGg-+f&lDx2 zJgG`XdD4_j6g*RvjPguVGRl*#WRz#R)79sCGtW=~SARs$^!NtAm*MG8h>k>HmebYu zy7X)n@JP?`_>^>}$EQT+I$aUhMdzu2M|8f&r$nFRe~bfF4(L~rx>lxVic zr$iSypTS3q`o&XJXO}VEC4v)j>ZcrBAHZV#)MzYJ*d~n3waf3UQnE!oH*dnAo^3Sh zqymv%X~uA)pRJ?OT-S`cs5!Rrwpe+q&7pas>`}*jbDQKg%C&NB_~J??#Jr=9QRMai zJaHmDrZkx4kHQ)>KdDrO+NscC98)tHnLiB+F+^giogC>k%@}D6uyr~n2fBfShb|f2U1Aaphe|HeSFZ6`^n~2&I?jNM){;@U$iR&`j{o;!I zr<%R>QrhE?`>9TDHLb??&8fCrNNwR?D;fA75gYi&p1-tMpPnhU{7EKTZ1|JhjpZHw zlT}x=!ydbeJo@S@Sq)DeERTq%qAot*9KPlkjJA&aL)WdLL}5-`yK>;q!64kT64$MAi6TxA4JgD&kb*ZIHpCz<7XCr$U^)IeDCFWK z@FyA)398Vs9Yn(maOEK$KyDQ59CZSmBN~Hn;u&0xfDPj#a4jmFXd=>6iijpViKe)S zrlLO6b`qsS_jHss!wc*nnhCoyAd``bYgN!OyO?N>Hz*;>i~*3zJb>#@`9$+z!~949 zdlpEdh1o>6W#DQS%3Bmqv>3XU_~O@kk@t4kv2r=lD&);gBDw=X4AEnVe{4C?;|>5Fdr|?)d!hqK0cAvcVbfl? z`=GZ3{*rSepq%LB0iv=(qL;xdp`e23 z)or*Yh_u(B=XKce2IR}LiQYt>w-P`J(dkT303d$`Hl0Bo-iGeC4-vgnO!SZQL}ydL zWukYH{vKrChu(9kU?I+-^77)M3vy%TmbjG14Q4$hVRRX zu0Zb<7txQI0O6lPK@q4Vx{5kny^5=i+i=|scK!<8RUL?a%fKHb@COyR0*SP0FR%x9 zkPvsR1mkcX?!cie_f?$n_<{&f2wb2Vixb>w!|iW|vo6LE$4=p6o)5?Xm@xP@aE_Re zAP(e%qu>fAlVFen%86<4YmnD26SKttV6OxIHYLP@ z&Jqg-ZFhnyV(p-}oiFGB!a*EJ0?5}chgf^q+8+5jz~3>OSSK$~PONhgs3wN_n}wVr z)+HSvz6;9jQVEdO6|!CZffGO`Gz?S`>vow~cj&q`9Ken+EE6DKJn9w?+2L@9 z!-f%XN0bm733nvo6W}HsAU0|_vC;kjabx1Z8Dfdq;3~1P1;oZd-}oeANe*Jkz5sb9 z#DmMkCgu`Lf$StOIg!{D)NRTkVyQccr6JE$#7%?F^bBISBFZvQr&*Al4LjysB{moK z&qLYsp>ICQ%_;)WyWjw^g?Zo#vD+Yj+eKp8kj>5k$eWG$MXBH{vBj`|NiZlRmLowH zfDJiS#FmBw=vjJ-*fJjw3HA`X-4{S+Ic!>vxaHNvRzTkhq^(Q=+la052KmHt!+?v} z9Vo*CY`p_EtcKib=w7Y-mBiK{J}-jUTF9*}CU$2B5C<{<@~=ZZ)>RS9M>%&niLHm+ zdg$MPayAqZD?r|Y%fvP!eG`E!Vw)vE{>_Ll+(GQ_1Y-C2gPq_MG0bHQ^B61IL+oDY z#~jA)D<`%s9h@L`KV-I_CH6oDu^kn}9?T*35OhE61FDJbgzO_I`_U3&yO1Aq6x)q5 zcjpp&%t7pN$Ua_4Y|jb&A(ePydwl`QC_(-wy@)*(2F?DyvGbrak zC^%2JTt@6U2Y~-zBC$j8A42+}qr{%SNbK-sVn@IW2Z$ZpM(p?@VkfQ=d+`jhmvV`n zEF@OuBKGngVz0usS0Vcv>i2p%u{X{UD^Df%rawUZTb0C4L+9I7#NI)kvsuJ2hp_ix z+xu|Oogs#~gME}i?EEQWpCk~w&;g*#OX0*mbrAb3l2`@Y&w~MEzDObVr4J||cDWE- zCiayRR1^CK@s-H`Ez0@sBC#vb|6>XM08I|DUr^?6@K+ZRtMMY{t|ZP3;@m-8gb|l{ z#PQd)xa|PGI$R}g1{1e{-Iuu6A>tTkd82aT-lvE+P9%;omir*BsiKg0v*pBny})JS zEi#F>j3n-dG(Y5N)q!~HIN|{bpp3X<2l2ov;%&|n4?=mtMa0{}ZHM>{62R?RX%F!U8N??>5Klo`3c`~TfQ$HK_@_X2${FIR(36TbNXsEU6?vzHgNuY; znj$^}`Dbneus;K78CQtULU=Z8nVm;`PAGt`OfWYUz_xk$ppy7}$Yw#$0?02oOMD^p zF3cf*n-3@^o{hZO=ZG&VAifyoEIvbgi4)`!&w*^tHUNDXqxe$Tw@d<*b35$5y^#2F zU*ao*K?(7d380AZhrGZ6;<<;2-vNDj9Y6)~wO5F*O9V%W=fkGEVB>n|U5`8)B0(kb z0_fbB0wBLRlXxL?-)(>s0C~0`ttf~1z0iAK5^WP5{N&Jy6uT4{siRrB5rRk@qMs=-&x`% zXNW(ULHwy~;!pd73gRy0!AU+Z%_P1bcJ9AI{FyT12M~T1WjzPE=ME7+2)TpXh#!K? zp+o>(&&Ppt#1Cfy=syBmjzISjq#gAFDEsJT;xB{)=sOk+Q0DOt0CLAq5I+IA6Y-!B zK-Y;X;xC4Qi^N|_Cw>zClLf@fpyOq4PzkDuzZy#XR4T|K{#qvS*P*W*ww1&7^0UO> zg!>lKPb1IiL&VP%5`Q~__*s3BKUHgap=`LNfq<2gBwKvPkGBNEj6)%s6m>1pcC*uqsK|Q^7?NSZ@li zGb9=!Un74K-kBtB2_@0k2jr1xg7_w7Bzz8mQzV-11XU!k_7uLkBwBPJ(efM#f5`ho zZ|g)70Y^y$qMSC%K>>+i=x7^9qCN6p-z_@EljsCGr;~7^%n;=7dVoY|0=Pn=8}i(W zvcphTj~yg>qU>HpB*Kr9=nY%?LN>x1ffcQO3eOB(i-$1V{yWK*d2X)@5Q5WEP>EMaaAO06^X)(7z-B zKz7L?P)Q=k0Z@KUK8a<)APJz1+Yz@Mc~=rB1TJs}Tp_Uvc~&KWToSpEU!4QCkyuj( zE`n+jdA=YFKrU}NfNgn5&qI11($^w=Z4n8q%fy|q=gytrC^!eMl33>rV9&Zp68T=h zA2>c| zMbK9SeMJ!<9;ARwupFTLdr`*L7*I*#KIFZx0KmV^3E-aXpbS)y*egLW zhym#!4-|tkP(fm!1i>H%q=P(A49Y+Si4qBdK@3O-d7v1SfeI2&N)QZUKsv|+#o$ye zPhBQl)+Mq3Jc(yA0G`b=J4hUG0Hi&O=lX0uiRZFO976i@RV0oSkT{BG@dDcO81f!N z`f-F$pq*dDGk6K^Nj#UbQzTx7KFk&3l?Z@xJ)n=g8VnHkDxTe|cxI=(K@mXS*L=Vs z60alw8=xG||4o$nRvwAd$aBUQTqW_2KR|i!TqN<2H~`uI4rg;noV`rq-AqtT;=Obd z=TPp)2!9d@_K>)6g2crzfN~UpH-5mI6&g_GbFzBC2={1#MiLv8@QDS ze_KrAJIG&w-9JF*k2^_R&Bigbi$ql_iQiH0KRS@OmPn$;MUo1@S&~>kOO^;qNb(p^ zOj1aY2P$fjr$}mrpo*j|6(G%4Nz(8ECrFz4BrW_Npmmv~{U}MVNRR;_)4&^q0pw{= zMzSG+U=Rl~0rWOJ0M3DGl8v$e{N6hO2$BED0z-Y-^5ko2P;u0A={Xe%}O801(%rh@@XUs3PeP*FPPg+*U|$ zRY|h-Hj-HX%YdsS9VjO-9GoW^1ie8K0Comtf;>7T0($_;8G>?#pgnLFFNb;o)Nd%{ zheH3*6aXDV^T0Mx0#1Ol;4-KtIm{abgK!WJQb9IAxx;n<7s+@6KA;1L00|%+ugR&CC!5)%hVcXaoaF*maq>sx7$TJ=~#~&q`g!H6Tfc(j*Yck4Dt|B=B zaTAa}(I4c3izHK=U*Q;}yX;-;a@ zY1!aB$@DmIfaG-KnU3`7XGqRKo*Bq9(+j}%ndeAmgoACMisY;q;37F2d1e=YN|JLT zKt8xaGBX9BoViYbxVdLZ&I<#`KOb#BKMR~AnFZUk^1x-13z7ixEDQ&TTZsDH2LEl_ zNM<8XHu7YjA-M>878L=MvlwMA-br$a0g%1~<>a8uoE!i@_L_1j(w8B98Pb;>C3(9q zSPoz_)?IRWIms1>TagW*e`Odzo>kre>8lQr%=H0C&pk)-ju=o(ay4vPoeoZb^CZ{! z1C+fc0we&Wt;qoeU384Ef=(`Jf@2V!beh0Wr zaszDIfbR{(tl@t}<4#uxzEjqq=h0O3stZ$fx8!kZD^oDGV>S(1f_EA$6p06GfO z!E#UpNI0l02BZVXZ7l|6pn~Lm5(I-7kOHzn0VoDX zNp6Fk_lJQhlH1P{{+Jc;1)(4gq=Fos!2ZP z15oG3BT4RoyC()@k$l1d;NJ_I_LhSR0Qr58-v_yUNZXeJvOxiWJ^NtKKG=ixr!4UY zVIUr)gXQ2XfUQrWE;#RyPa+@Io$|?}0BKKFl6(qzpF-ZJkoPI%eF}M>Lf)r}KnW-V z=Rq~ery=)r1V{nP!47Z~oCjA)y1YOzhyaNo6XbzC;4FYGrQQJPrAWtFi!4QY=?-uJ zl!GfI_xpn|5D(J9a!>?HKp8j>u9AGl3j~7*fciZHnFCoQpG_tC90BNiu7c#j98d^g z$H5ce96&iZ!;x4|%R{+fCpbj%`52OiQTAb!eHb!Fpz{dIJ#q$ICW-SLc{CIxf=qCc zpX0FfYx{>nqurOQ0eyhYfc=1b0qEPy z=-bQa!%y(WnM#nUb_=;0)Tp6d!Na_z~8@k1AxC@ zmjP)2^#AofzzASB0QJ3&`rbetZ{WK(Q1+K7`%9GlCCdI1Wq*mXzeGL1{FKT6o&X2{ zQ2yVS0Y(8w0FMD)0K5(On92WP0ptLh0R4dH0B-_5V)C0Vz)rxefQJBh_a@%GiFa?U z2H@RWc=s0Gy@hvg;oVz!_qG9$1*m88Z_v)~Q117~nfwQ||6lU~8v%O(cLGiTUIDxd z7-RAu1Arit{~LY$pJG5KU2J8pi3wVObpS;K9zwco3rv#|`Q`G$_>i*0E$N@9~@ZD$l?lXLM z2IDw$E8rmj#(U;Xz(-6T$M>O+n8H3~iufW^SBkX{Fv=7gzP0TJ905EAc$F#kCjhSi(1xQMuo|!vfchPH=UfKBw{ARl z<2m+16gS#+qh0r#0DR{```!}(wC8l8rLiD3e_dH~~Q2*{D1FQ>OS600BS{unaH?z?l5cF(n7@ zaykLPMa~YuL8j#5@4VGa$$ytAfjgN}kOrs*^Z|gAg53aoU-$yx4Z!ssVjWscd2j z{F+J?>Zw9KRj)9m`W*nqRfE3QppBX!0OP8`_qF)G7WLJlzFPdQFK0@_W~MZvToazR zqybQOYYw0Z&=1%Pz&Kk^0A2*3{#Mi;&8jKtBfY-Qb%{8Il13 z0Lrc$Wy)%_vl{KJMmwuV0BC0op07CoI0kqM@G9UvrmSUvBtSW!8-O;}9t0c*JPUY- zDZ{9L_*15gBmmIPx=z3lUjR(v;#wk{rF%C;a=w&UL&=<6k@=aOSgxeVnlM>|)b%`2W@%C4PE*)0Q5 zcK16>xe{$$ImVQ$a+tCg&-bE@eW>?p7hpG2u0da}d5S6fn*jL!T0FlNbzD~rK-uds zzUyBAybbu6DF-Y7)O7&m5A*{z1NH;%1>pMwuK@7P4Jda*F`y5y8E_Er7~mDayMQsK z+=#YrECzG}h5$PND0ky=z_Wli0Pi#9CK-?hs0Q={Q0}H9fF}TN06u2QK^LGJ&=1%F zI0ASK@B-j%z{gCv*#gJ`GyzcV=FNcpOhLSXa_9g6_&fw$9C{V-9#d{%fFwXUpc}9n z0NmUH{M~W_fO5Bd#FSeT0Of%BfKkA$0JMGUD}eWzavS=88~T6Sai-k95wI6+k`0Y(7_0LK7N0bT{X$CNKKz(-8E3wXH;c)1IBx$9oQ69A0ku6F@rOu5?y zCPz>k;Yz7-n{d>{=y=eblwEqD^rf5zeh&_D1Q{?kD~lhlt20rQ@)CRe6<+xF;kA=+haL^CZ^nn^7jV; z`1XGK8{ZyJ00aPdejLvqU;z3T?;pVX2aW+y_k-Pl%>erQZ2-pmb+qwyl>Iu&e*HM$ zeWpBwwjRRRA36efg((lq0JQxuem{)&kG{#2$I#wmI{zz6_s zf8#O03xKx)7|Y`pKn?))J-!;SAMg+W?L7W2Q@)u5=mYEpoB-h22^XLrfVNJc?Qfxt zZyjXHNd~~Tr{)8mW6Bf7fP0zpqyexS@DWqKJp#Zt-$9+v+u2D%JV{3BJpU|HemDwvpD8ck+ZRyh3nu_?GUZ1o|D#(0?=j`yo@2_7QSQZV z0R4+LUqqRgFm~7m%F79WgG~7e+It24eB~pi{1oMWI>wZrp)Wr>20$G@dxt4MXMij~ z5PVACdqE z0b@*g7yW$~_59aEO!;FI066<^wE5r9G3C7g;5bwMPY&Q1Q~rdu|3?O(&+m^gn`e0M!5a5vF4du$SqCEWm2OD@-TixA-E{N%epym`*MS z;J5rf(tCCna*SYpbfJH za4XYUP@e_uSUUl4Go6hAk^rd3hHq^JHYzc4MwWJ)h` zwn$Z#8KT=|lkI{(Kd(iusm}9f+eCkMzO%Ykdxu|ng3sZr1ALa;&^fQPb;Im}jFQ@N zzwEfeBBzwpm1oUvD5wvlnUgKUE#;m-y2Ftk@RYZNkdbk$vQioz`-*&tCokRM4-VGX z&2KEq%k^GxNp@9Hpmau{swvTv=ovdx7Ib73c)fuPN2`4NvkkRMF~-D1nl0ohxQijH zGb;-g%L4Y4dK3Y#1SYO!vOL@?;pFIu(8mzu?{wI#KsBzX)tOvHf>bKx>-3U@WdK_=k*Il2_c%gjhm zOHKB;6CD;4b<7yuF&lNQrnCb?ans>&9zs?y_?z8UWCCmAcMmaUuDG^y9k zIj+KNPeq|O!(~{Sl?l>oJ=JR*>&0^cI@kW|z%k)H9P{qFKoW!f6Tkl0~2P zXN|f*M12NMnqg)59OC1PcFxH;dNlO1z!qLUFYnG{`+u-&hOd2H=h3fr?0a@+NOyN$ z*Q$oC`$ATEeaM>=9IUX;-m+&VIfeuMQWTYz(Mkcr}^UW|d0)@CF;VEMV}sYxD(U9TXWVX>Z&U73lz zP5$gs0pm!l%^~X1^9NYPHmvjv5LAm;S1Uh|V41V*%*ngQPOe@5v>@Jl*PjN0I%h&+ zb^o5BtxsLsGw0eTF9>c}+MDYT0@g+Aw{1Et*uM5P!S?*7wfzGoYkqnDoZEk~|GHn? z)@RSE$hOm1Lig~o%wqr5d%`_`SAK<^173WC$>je4DN zl!0!HxDs5i=d*?38VtCX3$wQwYg`oh&_{*7RJDQg_-JO=0bVagN4ma%(Sw zqQWiWIG1f^XTYBu@c45AiNrl~ZAikUQ3V!n9p{%-m9-$C{JK){91~Dg=~ZkC|8Uf? zVqsRp{PKdHOb0TwC3rL4g+={y3T}Dtfq`?(izC7E;;KAtp9QM{%3cD9u*evcy@oc_{x2uPoLeO z+_m9*p-=DI|LU!MXYT8R34*pIw0$4iPGCOP8f?-FA`(_%9@cJL34H>3VM zRu`-$5w4S!HJArn2Q7-25uHvL(36l;R|MMF$olemBMx`A5!A?+Jr^Vs?fLYvazt*{ z#K-vZa4*D@!eFfI2>n(Q7~$?6jgb~AE(+0CBP$5z5q7|E*C?1WX#hP&XCVSbLW7YR zsfRkEA3lCR{x4iE&KW=TytG|D6EYtizZ0zhzbnB9JHQ9aSaWcOQ&7YL@InFiZAm@A zEqI|K4~Gd9TtOqy%^cfhtjr%M4)_V%f`gb{PF{HNWr)Q7@=K)&?pIsqfW&PUl#b1x z-2RQwpMG@VhVKgr4=uiZ_l2c()`H}umVwI`UH-z2J#%h(<*Jc;dVc5hir*T4YwjG* z0gnr|(-$U}brddhneDbfZpysFuU&opFTXUmBp@_;61J$cf~-qKEBQhAYVkxC*60+G za08WvmenL05gfn_pbGz2g3phgdH#7xQSSO|gLrU!hjQ2WJ_HksEEUV)e^9T)ysS1@ zWk$+X9eAst$IZxS11SR6kXRn>RUr9BBnUb#j#VN7vmhb?73TW2)@W@|i}=5M?bsPf z5!N54w(q|mtv`QUwtf8ZnZHsGWZQNjDfAwJwiblTc|V-N1Wx`K4hH2&5KSH&+jdk5 zmp}hJ3ZPeOLyrhQ#h)3>7tG+K%youd2sF-OR4R67D>QczRfsSVOS!^NHOj4dK6P4h zoub#^OxEWgi4UNCFI(7qB4z%vC-nk)+>=WGLRWzN!NZ_~)2)d0#XAMEN)0A4L4tZM zj)rME{A%Fa?re|76uG9{BGk1A5VRy%YaCVL1C84sx@dTVh{1Kwq<8VB!X*QBgv2jWVui^U z%ALa@W4?32*Qy-SyJN4PzW;vZE+q4!aV0}H6Y#x*6$bMYEM|i&>44uJPA-$GaxjNC zQkA}@x>Z1hxo($Uamd2h>)%bf|Fp0#Ep*TQ_lpIqu1hm75nmZU_`)?l^D`koLxyy< zuRlaadpFwFvy(uhhFjf@=!1`y1PfEFB9dsLeF+iIY*fLi@|fl5V_80Tt;VbT4(Q{8 zu1Ltv7d&plD%2>5dM~CLsISu9_=qHiT;8&@GH=MFd*qgsG^_BT#cMKotim5H=_#~! z<#cy>^4Q*z5@~-;$(cVWcbU9nhmxvOQ)`l>i@k&<;E7}~@d__X52nZxtcPJJ-(e(s znb+a0kyyjfWB4KI zt)??CrBryNziVxV?&fXgv2DF4vO)eP7nm)Sd_jbY7XBfMv^wZ@5_lIW(O3v0U|`xJ z8Kp&%8D1pOMX=2IT0sdYO=uJO?Hx(J++3AGlM+qplD1}Qn}s;T%AL1sN%`Djr_N)w z7UnHpI`-qqL)^0Py45uf=Uk7~wqa9^TorG$BIL?nkjM97WCPES)^TD)NFWf1(s81M zM_AQ~Qk<1PaDC@!Xp9sHK|VU6^=yCk+V1XapWPnTeE#b9~EA$Z$$yIq(bzT{$ zNR^DB@37W{$$`u)5}Xk!>hWT>8U-<7$GtSVwx(rGN0!ofd%L7%8%8-wHa$Ck#NC)a z_Xnf9IAXTHv}l1VD{JI;GcnZtdtT~ZP*_BRzy9^v(!Z?@{pr#BLcmaE*@28?L0&6l zo#J?!QM)zO3t6}N^S>I3`Mi}27xkVfCMwNG_FJ#O44~3pO4h}n=(H!{A4a?$0O1nW z{9p#~1Q^!nK(z88sVJLz%|;X0g9zJ|GgeeZG+q*0l;fAaQU-wZ;W!^rj~dSFBhuhT zv>K#AETXLv*)KGJx^M+ild99jwi);HU=@97#L(h?DHx4haUAJ2ftQ3E z;NhKZZ95-UjtgVQ`$P8~`qM*0Ll6Dw(0!qPX=r>t>AOef9)5lQ{@0Jpn|Fl%Jv`TR z^uwLkLaEZ0$n`rv3>){{Hj$zEU|l4$%3v9Jdteev!x*kOsKeBO9m(>D+-HF;566QG zo~LBhj#tfKZpVXdIyLj13rBI~qN|n`Km6Dq|9Ie~{cSU^|MAs-JT0Cqp0}m_hP%g4 zivQiZg_GNMypK8f3-=s}zL z&79oG9#4t$lC<@W#6ZsS`M|(;0y#N>9Im8k9)udQ0YM^QA8@ScqIGU=e%VC5kQ-)) zWE2v+P=sSS_1-hvuARg`3+9f_6kpNU;(m=yo;l!3783I&@z8bO{>t96iMe@;(}<< z@(T{17QS@g-}beX4_>njkif&~Hko3^=ppYkJ>cujjfDZfFD=ENt%Iti zdUiP4;mFZ(cT`xCX2@LqtS;5nRBKMdBSyE~QQEbpt8KU=yK&8~eY@5)26vs>cJSQ= z^#-ra>MN}6T2|M!xi`?bdiUPls~a0HeqhtiAN9&l+wHi<#ox4`tZ80-L2+IG6$2|D zxMJqIB|~PrJ1Z~Co!7Oxv29U(enIV$eXIHoZE5f8rg4Vu;p1G+K2+T^&gFt&Xb|+e znlxx7`EUWrP%x%EmF2J>2osAO=S&B$xgM?~!iixJE+F7U^9XH*LJX^z#NH^VR&D3p zpKXo(ELc0aA=sC&=;2GB+#sAl+H{~jIDwqYmUMNrG}YCXmlhS|`u(uI<4(+3JVS!2 z`<&;D)r=fonHbkc6u9oKxnFo97k~NExz@HgE~Crkkws^pUj*LBd$Hd14Av1DvXW-+ zbKg76%mnT!B16_!%1?*N zP=O{636c}^k=aSCU_xht7KMh z-#9Ywbk&-h?{3BdxM$h2d*0ZMzwcgt$L3~gGxPv&vx*Hq>4l~oX3lAv z{U0W#&7{4B_XtvhlV5}CCSI#bbQP=0btC0rM2Xf%ZxN_oU+(@Xm9(y__NbE5w(DD? z&iqX0#P&cMH>Nvl_q=?tmqs)|W5j0pT^IlG&b4-PW?pfUwmHyFzM$HbdGgTRukH+w zQyo9Yad>Ygk-@%)D29nA!7Bz-;m1R5_oet1A)vSF^me1L03EBR zp3XPI<8ILl1&Z2Jxho;Z<;qDo^IhKOwA2>AzcodA*O879q@^_Zd``n`8VwyR!?ZOjRob8ZQyVEgg(qIR?_WbzY9!bG`cPD0;&1nu{mN6^&QL%CSM`EM2 zGTAl$y1zLyv)M0}IMOg}Xs-tCZAW`HmK)55Ba{3bq9|z$1SQCiiXA+M+u>CG&3f`x z(Y}~K%w)T3?3Ys2nV*>rQpwmK;xHVlT!?HTdrHC%1NWGv1`E$pkj!6{=GNC{8Mdw2 z=}*ef%?~6POlc6#*s;@gSI9>|Is_T*Wq3gz8WPKOk?qyIeDUP2Z(LN7Qqt@%o7>fz zF@C!L`AZk?UtT&dCC%Up^!2Zr(YSF=N&AsMe`EdH_JOuCZ(@p3cu~%*>?{n-$aOe# zDzn7V1@r4i4lN$v=}2Ck+mP?Z9#mJ;)+KfFyh|_l75JQFd;>3`M{qA5;iaGU_8JA9 zl1a$vOoe|-qPx#!xSL1esl-+?P@^dNLC9MTH85DftPBQ@E@+Cyc^GvW2CX`sqXwOkMwW)KSa;wg6pg<}3@p9As>BI@ReU5h zgs~Xo=ayI}eA1r*Zzk-C4hgLHL>ef`oGDmYTZ1T(85;SeC#zFc!>e%vnSi^tM`5T+ zqCpxpLrI3kVi3e(3&f9Vhi>Vm?MdUH38va+BPlXe`4|6oE4~f3L^Y`w4f^St#H6Y% z@|`X1Pa|nH*^CV=TfAugyjfkX&9&7PWkm&kUwW!5(PGB%O*wXxyGYP9emkdh)q}vN z(*w7d8Y-ak`!Wzw!1Yf^B+z|cethazhO(NM)itl~D%3x`>l>RZMiw*-_Y`6gJbCfX z+kLfFSuoD15zhMMyeYz|$SZ|U%b)t7#+K6S~a%No13Eh=e09KAlo z#cf;Xmyk8FRq@x&E?hc4r)Nu#@cM%J>z6NEAH3q5qXp^9uU}r0o|A4gGzS{LsY*L-))UY=u%ty%F zB0i$pTjW%jwg`Cu;M39EIpGRm&yv)fFxP`dM@}F&2f9C8HW|P%Z7sqS(AR_!uDa6n z@KnO_8?3lw<}G(#f92ABb;0{C7`SDmrs?9ZtsA+a%4o>je(K})+LvE^=9}|pU)!^+ zbKg_jcfEYeyxy*%JPZ)@+W+}qr5j{yBeP9GQ!z}D6lm+BHq;!H&`cE(PVtDT0uCXH zVRo2`y^eDg+e%#17|8Pn$e@8Qn>!Z51`XetuA&X>2*V_GL7Hnwu-S8J=G6CYo0DHS z=c3NG{<_>mkEPPrzvjZaRrl}gY`y$j+c(|cDz%v{$r;HtBZrm^-Lj@CGcVK8Rxl$! zaptwp@4ooCo4{s)UW^rX3XQdkeND9=5{d*x%1Fl!ip~z1K^xVvkFa-*)lDXJF?Rm+ zimbNziCMOnX4M8;nMg%>Po{$=BIN$HI4JYD# zh=~Hj90uC=H)5U(L-<@rx&9R8ocBsn?)s)poTA}H43Vo^|L;(9S!{bZ|q=xMQFRE7n?7=EFIMO`x{6r1#zItka+N!TjW zF{`4p4#VqemJH@$Oc{4rE7;Lj6pdY2OxR6;{sfsvs@XqL3D^lLAtGu!zn&P4>q&#- zexc~zP({J6f20nJU^0PgYiyAC8>Fdc`Lf0Rix%|tbhP=L1uDC6kj3s2zUsDy(qgC;EP~6Nk8~SAgB!&ysz|l> z2_{39MHEbp;HqH5y(i3=-0)+0;;}92aa3tX)Z?hq&Zx(c(o?D>_qe9RA=3p^Hp+ga z!=-x&zcM2J%_t6=5oxJ9h_>|dzfA+oWLn>Aq41AEY$-F^I#zq#Fijos0C1lcYJj;l zO$9W*f3_2ZjDM;VgtmXS6P5p5C$K{jeR@j$KY#y7uab;=jGWEjKLJ~GZOeZtdF%hb%+fa6O*JW2< zk>GwTAvL*vY4hwYJ-KzY88u1g$MlQxtIJm(S~Ya-k^&(o^ma>mT49FEU^FXzMHScW z5jQ(svpmg*TFVzUWf%9Xsczm=mk>xg7x!N^(sAYLhPuH^T0Yq~ek|BxPqZ71>KY8) z!`I+7(m{0%re6x2aM4DN+&@?rj?Y%{ZEkpWGMZrucbw+_lBZ`6%YMKoPAZ^O9o>sqgkXfy; z-so>0@wL7emYvA8zs+C-X0vGsJYm!n<^vtm)CSq8)rB~xb5}(e{nvGjQ2#IL7){W> zu46Ql|Dui&>w$A4b}G%1MKW7P!&7>$Nq`a>na*JMxhg}*i=cxyd!p7T(uk@`CANWJ z(p6VpvVCOjsucrEd%B^CmO2alh@RHsv?iDecux$&g4Q3_BF?6lo-I06GaRDyRkuAN{1`MObM|kSWj( zX{R|HBoNG+@|rgFQ6^%o2W@t{J=dO#ozlE)?xZIT4V!c@1)#<`A#LCk!z0xdNS3Wb z@>TBWzWL7V_SMbHuBkhDVV)_W?ZJzd9vZ1_8ohu0ifgMSxufRg?+)KQSU7*S{NQJ; zxx41B?zsB-J)@@&EoiM5D;UK;VQlbMQ~XmMx{vrL$&7zRwiN!0jeN`{Y-iAti&%1Z z%$Rc#l@AL`(Ti)~;NyemsxeoRqnx4z)0d0(iE``SR#NP6I0HF8XI?f1N%H`c2o?my z9!^0+4FVBss@zplb~HAGnMVj8!LLW-<>rw zgSLtYr!UCQOjiRT!uvsWrEo>4Ve>);T%F`^nV3IpE9mp{YFmZ8{8HR`3Du#_>(S}O z{8`%BY-esKt z^ICH>fzTC&d!Tq2(fJevuAo^lR$Q2$>&r~`+O25HkYkAW2x-qE%7sG*jG{b)Ua898 zvATKhmlDNid_xzE)?M(eecf$WoY*pW&&9#S-ja>xP%Fx$vp$=QMABcynPI)TFY^oJJu;4DOxZ*&vG*1*N^U>5w!3 zDXp+7ZrAL!ORry1?ixsvlWLc>t=Knq4D?&}`CoNEQ~n)$M(x5|s@u&GfHme646MD@ zFUTeXx#+^r%#mlB{)ST_I$@ATyAC#%!Jv8O=ud_qdKxA)Gi+!g$ zAH4XkG^#yjhN_G$6D+H^t*Kv;%c7ErB3LeU70AV3=k+CSn?&%!d3-Hz74~iE&L&b5_f0s)HL_c@ z{O+x-dcA)9Ym=Peofdn^ye(~uK#38DIq?_Jq_Gn;*~bRNUX><2cBqz(38HAs6U=O2 zPOTu@&D?1g{URaqLZi+WI3d+NAYdPBl4gInH^C~J&ALI5!xr^#HekZBLLybWT|els zSq!pXzgbUK1<~q1Q_EIf3sG)k+`h1c1g$4lm@{!ZqE>NZueWD*_pF&+ovqD$1rX;VAoO4ys$&slmV-mxC>HJp8sZg{0 z_o<78^XTPCvbT1iZO-{D9cgvU@&W6BEK)L*r&+Z)Lp8D!{0VmQI{wk3w4Ij@&!9X>+B1( z5zHr?0U3zKrgbz0Phnh!En{exteRC zBU%>$*@xvq45?oft(SEstIk0Xu1OZ$p+}W{C9l`Cg0p{uK53&>Gffeh=j;KLQSDP2n@zCjnPrNkjMOqQ za84HpD2)}3Ga5i1e!kuv=U(qP1Qn5v)6on`$GBX81Y$v7-=cE&w1hMrTi_B`0R*%np z@|ZYs3WqdQbF6;FJ)J$8p~7%5j}<-PrA{4ih?1^$;F{Dh;c-*(?&h9 z13nH3c9tZOIjIf9A1;UI7>>k;6aGLeH4wyEp41dIg#?m#702XvA~T7TJ7$`5kW|7x`#Q4Zgt4JUf2K%YqSBmY48 z4ogK;>4Bi#3bo#EgIZ71L4bsk%@YQbr_Aq5yd@b(oB&_D~Obyn7!D~!es}7 zIJ1aTIC<%5Xg?JbndA4EV^1K)>K(h?NxOdcpf==dAAHobHo>rZ^L6UP%C{NJ`weF2epuG-`$dEUY*22}2oWV)HjzC9y8(}epj`i^~ z&oN%R3{jc%TZqunR7^{Y60>+pn#9D6fY)1)l_>NiX5vXf2APdtYtu0Za9Ch(U=wkK%Q z_=}+w`_^IN4NR~O?v+q^jLE1cMT6K57c(1maQo!ZJAP?II?zQnebGKinCZ%);oD|0>3o3Scc0mw{`5sV4@#=whM}YIff;qH^>@uD#R2{ zQK=~vK*Ux-whT#CID!FE#qkp72ji;Zk)nuWK^N*+9ik4axP&1+e5&UrO6^vS*4T-M z)QL=T#d5d-XDDKMVQFtoy6{pwNpv#Qq^*rbG0J#c(G-!furGB>U|-G=YXo55x@)Dw+4+#P;D zkr;(a#p*FJB!)HR@jAIOkPY32dj~m*aWdQHN%`6&GW+pc?{zP;eTB4x1I9#S*ZQt( zl9G#0g<9fL+C`6l&+QF`toA#Elo=~KHmbr>BQ;fD&{u;GSF$!iQY{A83?F$c!V6RC z$s&(N(1m~G*jEvwq0TB;K#>+uB>4es6i}ck7TVu2E7%@c!Ky-19sPMUqHWw$G0nHZ z%E)KavjMe+NP`fp2pVh)wl-H+Va$~kI6BPr6q>7qbI#Qy-GwG8p8hgv&R&Xfj52ZPaR&qdYsvOnlD&N6=X+Iw5*(rG|{*{Q=>TQ~yvs{?1&a9^n%Fb-4 zg!PCBDGI?b|rW(eQMIJEe zq3LszP%@iG%w!RgI#rABd6*b9Oik5MlgFI%Yg)wB6B<*zdZuYPSUK?-bqmGJGOW2c zJ%J&oc9+ci3}{-*1Iq`NEnR}J$At^#&*`Og%oQ*)v8Bud4W_a zPk>abfX53JYpPcEe}70?**U4|ycM-`6Iz6}d{MOZ9eG>ixeK%vrn#r-xvIPAo`if~ z$Q})*#>#i2sSQ$E=_v#8ff)I`#uM}uf*KL@Hmg}O8llwb^_+Y*LWl(`X|1D}k(uI( z{5T&C;5;}(uP~eQ=FWlly08EyCari1PdN*BrYVe70M4TMoxft>h_4Nnhx*T3Uzkok zjOY-mu0?$PZFTKCeRe2XlbO1cn0m~c2v0BOtbB@c5yOll`W03>&FTLqr_vX3^_%q73f5D4PZOB{jbY>}ox?Sh&O+ zrLgTBvRHJ;QyJwTnNn;3iK-YYXXVbWTymArf#O&qj-gr3uqZ{1=%GV5(>hLkT^IHF zYEt#0(Vpy_+diFXa^{WZ3+9%XOskQWLzulldX&7#WVapRy8SHnwV)?AoSQKy3`ln@J8^ zheS;ck&n3>o@$u16MmKohz6R^Spk;x`d+OTb-~B`19u$O%L=RsMsC^qEx({Y!GkN><#Eo>WddXo*x6D*S*dJ-H)M}G1=Oiu<#BEmyR zo>4|4gpTWxh7PG3HC-SZLXU@Ig*iu@lEEzc6p0VGz>6*&t_&(UNxMvz>2S6=eDS3n z5-jq=ZL~Fj-BRwBs@iz(#yPiiT>h=viwds3NzjKvnpCgt|MFgj`PpcMoKebB`UQ?kR*@h1ldy?_AT%<7R0(DXOE8n9(~ZCf zsV>PWB*j{*j!Z75hkZKD?;bc)%Y`XTu%c&EtBA=y~V$QcF` zm?QSQW#c4d69LEHl)?n`-O_Qz$=ZtoS0AL<`yk1fNw^)AHyHL%~RN9^qR zd7?o{5}0U3BqRyE=qE`2K=VUq@rs#2(J2Nx_oO=WkuJ?7;&9u5Q8iP60$~VNqJZ?% z8qJoU^BW!`OdmoT(svMES~FBDHNa#Ic9*?I1TW_=&iK$bmR{?%9tM zB2V7NX@U`*l*0~LWMpGYd3pgqRimpey?W+l`$9#h;zTL_J|Mdt%Y__ib>z&97N(9! zfOz4HLZjUox_=+n?LPlV|2@pXJYkoLT9-fDF6qgbz?v`{+Xah>V#Okl5ueH*L%4)z z1L@_kL!uW)8FJPc&8E@lP!zjWO{F3!n84QlqmLa?ldde7i_MqpXKkq zsHc0|yuv37w`Vtu99%f7H7mPuHIkemHQ5#4+Pd|@Ep;mwmeeHp%Cma=8`j_4-@dI( z_%Nfkw`9eZEh|cTYcs~*$}LSX>vZ~*c{SOMMae1U?Q(Iu&uDL--*fqrQirR=o0FR$ z8$FfF5U{WrYcaHx2b%zPJ<{x9|xs3Ed&RfqAj9CiYb|nMXo{ zz;yZiz(o>*fQaqVBYpHE@LkILQNY6a#~|4UA;&2U6sYIBqF9O(8OTx*-lLTzBNtOj zUx0T`Qy!`Sj-@o&8v_MMU7v?+WyqvOLA8-18BR6fm6niIoucNL_!NDod}aJJq`Lo1<5rYAP^z9f^faOM|nw_T>7y`Ua|p4zI6ky7>O}!#CDgjCqn0 ztb6{{sv8Fi=l6)ujdcv(wY7D2ZHLu{gXo35>zgjgo00GA*!TS_Hh=eqc{5w*2@%;* z1lp7bL#a|z08IolRf#!QTYQd7ES5_gKFgIK9y3kqpw47;-JF{No;ZC|&)`566k3DF z)>GPolNW48+JcjJ-+huenzXdDzi!>lOU7>%N4H(o+df__UwiRSesVETbTK-$RXGKF z(#yKls7Vhxz$4W*A?2DNa56s{U8WJucV<@=sBfg4^M|fUy@F7Ts5-=?3SRd8Hz_hP>^;2calJ? z5Z(%mNK6dGnGqetkAsLJs*Yr41fKYuk5YDlL*@U{OQmUVGGB1K3o1I#4b*! zsYp%*F=|>B>3cvL7!a*xo=_(8b{(?(PkPJ4!E&-wl0fnBbMlO#6U<$6WlmjFSu-!{ z%c>A!b5QA3b*9X8uI^~_8)Heky=l@T?q)$Q@Op|*9eW898f$-)6XLgnmOvRC2y$lx* z=neoT$I~@>-E@TmR5d&C-*7H|ac=5;C!b8d_oVdEI-hyg*n8rC%)21fI#XOb{tot2 z52M}#bpBM{fm(3>l-&@<11@`05LLJII|XJ1WKA?qcBY5KCxc6s`%$sUC8=HzzUib! z4XVzPE%1yR2M!a;2~*-9AxTMX6QC4o;b6q{iV}8Zr+qkyp*gTcddeJ}iZmBJtm-4=H|3ut3TLqkYh3$e6 z)npg+Bvm@`JLV=y8mE@0jpvOL>$jfV)6uc#nw)UBXfO*%~cP9FL z0}qwgjNG#P%d3~v*N)t_{MZ_Cch~nhI; zusQ6@L30q2u{}+YOt}HDEAIfwkno}$(JWZl4a#onqpA#8G@-*Q1 zxSALdeg&M3MqWfHhGg-oyJy;hK$x%chs>s>lo_!=ADVH~f$YwWU9&cJW#1q!kV}vX zv3Vd^lIXTn`FJM8=jv*nzhUI~B}l>l_4U_$zc#sh#kTf^2RAe(Bv0f*3MBP#rSv zMl=;lkw9t)ry{P;Ayud>Z{&wp=wh8z$d<`PxbjCuf|LP~YX_V}Cn^b-0M{`3oPpfD zm<))7Qk_0uvtcw2qVdgO#f}Lh)fjwe^D@e%0CRN3wNcD zWXVRWj8O)q^od8dmfyt$c zKoS$xgo|Ku)r=W959yjFV+Oy>YhsabH$?fRQ5iE%wjRGAoGybr4kqq#2xrU?-}>wc z;mr{tVD{B59Qsm~`RZ#79^=+joAmGr2w($vi6{l?dt9;Lb7#9IoEeBmK*&F5y{b|G zM_6t7!F5@UUaKz2R-0Yk+gRp2wLaY=ONARRvDvRpwxrc9s2<-ded57QVHjrz@*%sx zFPj+d9cY3#DIMd0QzMe4Gv?j_^mO9hff@Drx!GB%$vH@&4Sf(j2{W?E*A8%(9{613 z+5z#`mSlTgU0-!ccU5Xh&&uJIJtdWE53RWHv8FR8 z1|}gJglP-Ip1kP`)3Oj(4<8tVvs38X~0vdKh^fNz<5ElhY-ui|laV%VxU6 zE=paYJb3@WN}f?uR=VQQs+9)@isEd8T#?}UhCMZH#`4zgi@I~#TFg%47hU(3f%V<{ z)-=?wxU}Uj;p|c2eG*EI*K}iRMSruuq;I6Y`@jrCfh%~q8zqCV|g8JuBY4UH8q8NKP{rTW5XS5%Zh@%!J?Y^ zE9TcU3?G=g=BuQJBqj!GduxkkR;JYV5BJxXbj<50NvkMHGI|FT@%6 zw#Qw=?bg2;!uT?DHhx1j)zLk{aEbXaEP?L8sT@A_XXiCP8OFtX1^rkxG0B+@0=iK*UjWc|Lf|;F^gKu|EZNiBCKR85l;! zV;6_M$5Xwk@==(l&9^ceG+EC+Rb8?6qCzA9Ou<&Q4U3w`21PwF;|b&*t#2GE)595y zWZ!TDU{e;-NewpM)N7)6Sls|}rjox92pzJRp?RwpA&@w#KhJL|eJZxQsRqy)eUF1M zlbS^<)Sjqgl(dkGlubPEYRrd_Cge1#XZ&bcPOc+>Bf)+L#lQOy(J>XhTm{nRKy}JQ zMTcNQq|uOd622$q<8QR^VsnZ_f`+2B6K!T?wGR9`54RqRlh39Vyd*F?qy7s|91kg@yj8W@?|R5AX)t>sanK9u-b z<5l9bd>6N}z?F4V1n1x^gbw$>szQWhuYLgdS3M3xv_V1p@aoZ%z_eviid+=(5QI6U>JK6>WK^|C ztcW$L2algr5c6WzmKu+Vz-8d)Lbcp*a{Pa%TUp|>@z#-snlL}>04|!?p`e-M*Ni-o zMVNUZHUPoRVRqs6FR*iDT|g1U-jWbAQ!=L^qZPc1i?P6@!YD=M4dCXnMWLt)tiHCY zqLkb8nd$1KpUB)x*LgJwO}4m#EyCcZa-Ucn#frS&L?quNN(&W4V{MWsj2}rBB_CBf z(*FXoU=jN?n6L=Jp^hd{O*!4wNQOEw{RYH><9co@gQc#6pB-udrra^e91bvDTz!)R4-vvC*i5(fZyIhnB0#M-Q@;i=W-Oc! z<9SwRM|-fojvV#{`CJYltyDIJrSpWm;rxPeX*G6gAgaS@Z( zgUF6>3qhOazp07al(vbCm{V3j)GUTG!mGSOope>aKuSZV;5;kIlr6%#V8R?hwzic} zG+@t)38B)4Q=VYObPU-DsbW+{9pDj~RKaA*vULD+V5KzYBv`N{I9pCgm?T-wQW4T{ zo@YfQUb?35(WHv_lvB5KLm*EbWK2}Af*n)p!8oWRMytFgGDuC#Oj8R9ngW4sSch8# z_?;fJySqACn`gkmSWy-$auUy5k&mDT7f9O+5!GP8MF=-q1Y`e%->pA2gQY zHf@9QqKYpgg-e(RC=De=1;A%MWFTF0LWGr`?F%lQ=rehUbQ>K2 z;+TC;OLNlbnFkI4L5uunxP|WVlOfZjiHT+Bad?CH&==(d;PKbM2KpJ| zKfG+tw>{XXj|40@ah!t3=FlcMOihl{pf~)K%k^lpoZ=t6%!{}M><%YUc-}-FZ!PGm zw$35_3^}`P?Z+=%bk&j~HGq&p%yKW9Jy17tNR5ix)7vioiDdUR(0QBDw+dDjEKj$f zb6GG^VIfo44iuJf^QyUt_BXP=0z^&}PTU>FBkSmjMXV?66HRmkr-^LH*Udx0C^|%L zR@X?g&luailR_-{hkhH5tjnI#>B*sX7=stve}BOkCf|RG?sJsl|7W}ZRQgM3_*iK8 zHcuK9DodilkZ6S(oaR*H@;vtO9l108{+YSr!35-qLVG?KTB7uKWcJ4Wr+Hojc4Nc$ zpRVuKrV#~8SaGATkk1s7S!L%->J6w8@*}iE~{k%4_CCgJL)So1*qKTl}WC%r zI0sKt=|nPpI>{kOKYbLJpnfhJ4e#R))UOJ|p+_I}xD5Z-;CKr+Ump)W>a__s+fvP; zuj2|-gYbdP8rq+piYt#CA#7g49fQ5mzoQ>6mL1Hr>0s7sm)G*i1F->-F6PYktC!dE zxL)1^!Qn0IUGAhv?f?!*tLS5P27d*Qtv`VGIKZu!k3{+-B$DXuf@V~ z#bOZylpc2GSjY2j>aqG0#NQo+>>rU@#UbSpT&7mT8iVzShhQnhRgn{Y(nY8O z_P7LT6#{s;K;NY6^ZSzm?%ceITTLl4r*7hQwCV3O6@D{wbyI3hpsL3o`g+wBvupcj zWHcov8Z1d=6%E;W!Sd9+fm<(ZXvnL|O;4~T>g2hSBb63(o?qBdQJUSoLJ$` z@|s-*O$FHot8sXKAJtuUC6-~(){3ah{?)ZN%kQlA#0 zlj+VpcZd$6;61{TnHSR~!xzt-wQWIh@q%r$`WG$gU$$_e@^I1o?X$XfEGQ~ku%mm{ z_W4EQ;}?vKY}`09asl;at27&aB)SjV#R@2M7J9NBjvp*ZCa#6$G%SOJkj^dv=g6?} z1Jsj_0AF1`?io~wf%>Rq(&1RpW$V%nf%gKqonqYwJLKXM<|J#1_nUu6 z*|f=Q7w2;v6iPPhD4{%oZna9zBr@%vVr2ljQosb zyVa?aw}>`(YC=|8TAEP1Fr%iYIP{Fkk?YT$IWv7mDK1T_s<1hb;Sa+B9v4bCiRHSz zxMwqmBHD3A4Oww8ujz<2k$T|HXr=yh>cmJW-hxIlOX_nVS_!vf8d8eD!6KSZ`MiZoZHYEZS*1UxbELIl?W}^l9KvTc@af?A^s}a5LpH)afKP!Xl2X+} z;juud7MHkY|~gCd+j;$C1P-0rSOt8Z_p&93%dH8)vj z$XZxeIIA)(vvFZnQB#uQN_H+uJg;_9dGW3_0%V`WdOUE4uQt+lFRTENb#u z9P%%aV8+>0H+OC~Xx37e>~k7&W^U}PUfETU)wHZW9cL2-mMa|=F4J9(xKQXa$ru~qr~#X--w9{@r7iZi@PIe&wyy@#Ho-L2V&&N zq^Fa}rSQC|XT#`B82X~^%K^380f;v0A3s#o&7{-@RnH^lw)VQP}tuW8!&GP4$ zWY+Z-`x=ww<0UzHB_(!$lXC$Tvip4;=M`ujR%5N!3l0=)sWtA0gb%npJ zGSiz|k?OCsnRC*;l@8C$aw=k@d!83bhea>enwu3NUj(F)1DpzcL6-T1^BtU-JR-Oa zmz&c890dyt`peYAL9b5TYwW28G63lJnbWJNiU4uDdtS#o)jrxLLT!t5uj@@ACV3j-SVvgN- ze!k~+t2ZMdA>D1Yy3-SU70NZC1mUAc6Vg3at0z6dk>RnHqhFu@N&F4(R|3mM>>Ogz zC8%a3pS9ja&Mvg_cw0_E{MOrU>S6|DITR7vSkMkYaJC;Vzz;Y0GQDn=z!GwDbp{Xm z$~&qCJ>cZ$q<+7enBQ8Oogs@>XI|>~g z|LrZk?WGW(e81;ClI;XD`u$76lFoY1^Sde77TyCq7?q?bYrdv(n<=*GPr(1Hgundw>>}0%E>kQ4!)v4Jt)J z=;+dtk&XbTLFDhJ&iKz4oS#71IO{RRei2wA~bs%r>)-I;Mi);5Z#F`uB2Lc@<4UNk>0)dWYjSV9m0j2xVS+i%)dKBZBCB7$? zfQM4g@3L6&xE_KnO)3ZlyMj@Y4uT<0qxhc|4G1}<9&$y9DlLgJ$6Iz1nAIhrsKbym zvxW;x=po^TjJ-WBS>tqaEhNX?6D)?TlEPwR-&%+%XaU7+-vL$G0+Di+mYL8k62*EGRPXodK_kTw79YT4I)q z3Y2e%+BB+3i)R)>S9=<3se*L13g~K?pBDFs$H(Iyr-|JWe<0%b@~s??d7LDOCWTi~ zWH&_|fOrr^#|_4$beG=|$PZv@1Fp)R^2#OI9yu)~#pViRMM6RR9Ly}8UQ#vJEtjSx zrzU4-*fXs*Z$&|{DdO~JmFkmI(^3PD45!uRt1ix|Ep+C(>0NwymxJ0W!6PhsE(IoU zBHtv7yPe0K(lOqfiSx>7#7q%tG07!A=``@I#95S*0Z(+u3SAE=8F5Gw9IOGo%)qtM zNgE*qh3g>)UDJYX(<_pVGhMQy`Pi{c8xp>gb<&Ftdv_c2q^4FFkJ%rbulzB?X-ZM& zp&PoL3HFhLc#$2f9kvniB4R&a{=vInYYj_lRneta>X+}nwlNk{YkLS3gQ&KtJu}}b( zVb_a@7RS;Cn~gyN^JQIV&TlYrq0hmKaj2z^sgG2_45+7*K^oUeW4hR-(E)_f&5^7r zW!c(6Iay=wm29cY9$9AAErhu!>NJbB=}YC)X=%y_8R7Kwa0W9VTvqvqBi}a2l8k9% zAKF>a=r*RgjmppA4`)IK=;Fh8T{K>ol^j-3xUnHIBk{?|x8$2NG!0ysL5t?VM+l>* zR4Y}WiN2jiv%EppEtbuxo1b~~8e^)wUed~Ql5E=^l};Ixp0gQGA@a-ckv{3EWJ~g4 z>p#>rp#%TQ!1L3u#9a8qwD6^nF4!!7nwTX1=qM%!s80g1Di<@9_w-iFq9s4rm}ZvN zCu`*-d9B8pf*IOoOZx%)by~9Wq061-0i(er5kEM^UdJ=RGh;rA!m2WW)O(up{zFR)+G;WtDoDku{K6g8LuT&^mt&t zLPjhdw_wORXKeN4yI6@5n3oWH&+9Y)ZofSj%pf}Ks zF&^aWGTLTIg5J;be>tE=Ayne|KNwx1qbL2-AB`x)R=vXu!X3{20>3lqnm<_iO z7}cx<^f7)Hb%IEDkkXZx(z0y(-!c2Wx_aepqn26h+`ebRBF!!01<>ClAiN1tLs)RQ znJ8?9MKmIIn+r`+vLn9SC@&^n)?U02ulOqKHEJ3AcqvzG1gcn1V-yBKv$uHeKHilw z_i1j`qxhkv~*#jf2iW9RDR{W`lrKCOJffTrGn7M=J%{_tn?jgLD!mIVVV&Yvbo zY!p&2e~zd=;;lbF{AavC$~7q|J5#+WI&dVGrZwMTvD|La^6|4`&2Dx{eqBga*CWI% zt;bP@^_Y^3ZdR%B^+2VUC$K3%t!~JVRi^2;cjYx-w4I(poc0Lyf6eT8-JNJLivRv&>EcD$0Pe30P@mO zli@f99O+ae`>LYlaf8F})A_kfMa>W;H^kOu7B}bl8>&hio#IAR=Lq3*u^cG~7xz_X zyM6AtC4DvYm#+i8_@CN$feHdaqG8y%9fo)Zy!#MLCBkP$DExt3n*!@&LYC8<26|+( zZ0h#OC}etKAPB2V3`I0L{23|hGm6{7k!cN8Sq`5gWn*R$zIE1DY4@4kxt7AdhFovR zYoU+*{3GdVOEq_iUz2x1rws`eYF1_{%|yI}FUe`E1X2lX2!GURVnW~W^VGRO1%8dl zb((-JK2|ulg}M`r*TJRk1beRRPVkwn2x!fS!hqH;zNvkmkJU}hA3rv%&poIJhG0(* zQNM#wx*ZJ?*n?=EU`Gc8vl&ek?C6A`Jzx*fw~#&2Na2d_e2;9_yeU2{w_)15zN|9?_fMe3Tks@790DKY){cmBQ37Gb*dC~) zqdqSfe;izpHZ8mPru&YXgN>1S(~jP&)gQP%P?MKFFk|0Qn!`6VYsF#tR~#E}R13=> zEgANA93RIZMroUpDS>S&jbKwS{&d)a-yAi`O~X& za;m52=XFMNmRA)=qR~ikmFzEQD|5NZ+6wa9N?fjzw)}8)bvRO8jR#^NKa}4Wdv!DU z_~3E*q)~jHG5j#Qye$~&sL0N)=m-Vd%Cm>7N@xrvRoVwaEvR2m)DjBC=x;1EX$%r* zG$Q_47v*Ef7Z#|!pWVPjDRovOpepke1oKZm{zMX^ zQ|C6L=(>Yh~*30GBxBNgl~%CATbcpYkhc1NHol9?H4 z3IrO$85!Y*KtVKG5UH$WxBu9veS@?EQFvK%Olsr0idD#sc~$m^wyfBGP@qsaRY1lo=UJ1-OWKSn1=(|{wLfx88ve*pL=7G7o%m+6(YG*F z)Cps7xc+_RZgC+nWS6i_&6i0A0EPewLh?{cApQj?CnAF>Ths!po=Gc6$>g>r6)I6L zG~M=;{@f5rJ$WL{93TYGW+Kl{C|b^*S~xSOroSYA zMz&dN)|wpI=>>&@JyoM!Q=~yW$lv9+%41?LG@&d3H7~%~p=Y5iCF_h6i$V&DgES2? z>F25q3>75mFeai0#2j6csCJ*pEUfb_mcP^d5 zlcQ=zX^OhEafk{mPy#6pVJPt{G!lePPFBz`ph*haHyj2THKs{HD_xSFlH{xGu7G|< z^|Dx_=CEj#&wvBO*BAMZM}%%wL^40zi@&&U@n+3oMm61;@B&bx0?0d5vEV_{;xHzn zkQ@PF7(r%}q=Pn2brijtg0a2}(pFjcNWl5De~?)!m*TUYxJ(RD3#!IVm*dv+)O*;n z_&uUtK%vm*bx@H}Wwf#)%F2HyZBcfhH6*l=j8eB5PGA$CJQ37AbN=7zDSdjmF6 ztMU7CgK!>Ls&dQAGywV&*&%W9E$YOwvF}U2Sn-nb(S7$R7hhVj;w7fJ?>;8KwBlQx zhhEvX^_A;7JFk0X>$X=8bxQvGrahqi?ZVo%7g*{853tnN*R6Y9`P&1Bet1i7?=3$( zbm*;HdU|eoi|DHXjaoq?Za<(U8n;P6AELloRyW!tq(hM^vc@Q z3`3GVRavL?W!@roKJBzgfAjSh7WVrtrdqOSA|%p;G>7p~f?L@jRHK41ihrT^v-v^h#JY8eN7O6oqvo$1Ys_=z``*V&O2M z1>@a{>;0sk0|b<^Kn*jPfP`otypVc3ET6=Hnc(v}?CBQ4&-}6u`ZFcQpDONTqo!0wG_<|k ztK6QOZ%Qx9RW|xUKtb-DZZ9;6rDBW0lQu|89VD7|>A1E|YY>uwRupp@Cux$94kK%~ zBAg6djl2PP7eH!I;6We&?6M&D6&Gcg%^CEMDOu+(3^bxwJRDtqVksz>ZS~+UEU$Eb zWfAWpAFV8x?%i;1Z(G~ma~obnxe)rW@x^;Scyi&wCqK9cAD&vU=&29xdhz$H@6eY< zmw)NHUXk@4{?hVMd}5k)Y~|DM9z6Jmr&h2F7ubrY{&4W%yHBrVU*_`$h(i7dbPtdp z166m3?P!D%wW>~H&*RL1kZU$O;K@i&(g6%4&kCiTV}Jmy;Sr#L!=r&$F;`TT%OCaM z^Uj^G-}%lxeb?srN>-lP^!la;R+ad&VeJb0zJKeWR(X&u(hlDG{e7Ykaw~01ZeLw1 zOZQz|CfBaMeF=NT9m1M|_AS37e^ICtDr03%gf+41T&SfSYUj@L@-CDhAefN2B$gS* zStryM`U?vDI$dUAfV$#&D^>FHOeh*g>zmw}3`(WVM%G!Y= z&n{p7?2&=mmB$9gKJer+Pi{|e!9AN}>tDWj;>5+5*T**Bvmn@$dv3N%X;ugsx@;f>I>L} zCgIEr(J~Jf2jR9PD>Ly9YK8HtF0^sPdPg~3Q7q;O8ir3k0b4kp`TQw&h`F&Ai-;3* z@?H4^3T919Pfu@3Zw!K4=H=>%Sr!3$gtZ&ziBWiCIr1I4++&UskaeVb@$;l;T5HXJ#&iL^ePM$DERbn)c_O7O6O3TmQL!fQ)Y zjfRh%SxGdz{7jrg8~w_APC8SD(h^Idu<}sQo9E*z(!&D|XuB7(N;L~x&Cv^)Eb2nk z>eTH|+~4eHO@-?Ry0-L$%7?CMX~?Tt(h<6PWy5e?*7-MoJaWsDqN`TU*w$arwC(Kj zxkt*+f6&-aGPtR^XKkD3cxKg{#?9L!%kJ5Th*g$eyJTf_YDpICO8$eEWlN#ytJ_*O&MYchczDpz zzoyAKbD(wSqDDRYZs+FS{O&_vTE6Y^&Cyw>-ne@9j&A=Nadh7c+iS`fUpI5$s(LYS z!q?T;AL{IHy8ef^uB{$9GH}&P*S61l?EO2x#ftxJWoiFt#oXI4&A@{Zcj}cs61>8_ zsPKZ7l&P0NlLSR9B!%WvYJ*rsL@43vEOqRjbcF9R^$7KOn{;H-HPnl3(vk6NCjXc? z9h(!Y36Jv%Ie~y(CLPQu5f2WEMbHl7<^i*y&>2}F8n1iy+CA;(a{CvqYYFOYx$gNl zuIu%b&T6T!%Gn4Y-T#k2{$f-aVoyBE0zci=V$84@R=%P9?5jObz4+C|ekT@o|E0f4 zihLHDT$`{eW@v+#tP%wt#|h!VM_Loq+m&yqLO5fwsL1tMK|sQ%olq=cIUvfuxv?nh zb~)^Vm07ir;{mla0pdQmG~_Bbujm8L0$*DK@It5umyNVI9AbWKU3Xzg-->A6+L4rSA!gy}RgaUgEwVRBKy zpNcnD5Zd=IoL@}A8J5QSnrLZpQ8?F^jVhzy*Xf0U1Ye$@5VfvhgcBwhIed3K#!M{) z0oRr^+dH^;McJ&A8)K{H0aLY>E<3qw)7k1ggE=)dw`Nvd^~|U%r*UreLl5oWlhZJ# zs%36n$YM{qDZe&oDd^kOF|;ekQc>TWUAe3)(o)rKO3uj2aO78cyw&-RtLJxxT1s8n z!E7^L6f~QuJjZ=vl>&TBVelF@!3pcVjeXcG#L13fVH-mK>OS)lYx${dM}J zkZrCyb_;4=rC`220-{SDXy^-%s~S83bx**2YBb?4?1vJun|hfe`VcbI3Y7@@Mx2#l z%Z^7)R0Io|rLc15HIDXk>j(EHV&c!Wv=mCOIfA{jx)xGFzl*ujFVu2%;@iE`6MVY{ zd>eI9z!4f^Na{v23FysiDc_Bh&j9l$A+_Z0G$XRvgiMFgo95M}>QWK=sui@pBvSI7 z;IS5KC8diany$>lEa^6pFBwMWQ6pnH+WT+0`F?HkeaCOQFPT+sR7=%S$vWtw=f%5} zKam%M*>w0>n)U52)8mWHQmv^tY zZKR~Qu`X6$GEnc$su`|t-#QSHG)LY(GdI6?bLZ?++Xfw)v&FFj8#{6Tw0EZ4bA$bb zk1K!v>WbL52bR9lS`U52S-*V7E6wYB!?By*K3muyWP$E&{Z$LwLKSNs+Q|37;Y^bh2HJ`7FxnwY@@p>0n^J*NaSa^T*an3dqtRDyvPEU}%gXG$Q4raTNT zy{0R4~)5c0fGrYMWx?? zmgy8Hk;-{BcXo1JMK!tLj`vzMI>bpNGo2r-1Q9Rf^W%A-y6+_@uJEHgl-7!WRq4vdu20xUQwKeLr_KG zd4c^hjJblGXm4w-_Xf+jHbg9dTPn0?5~6NusS)oXp!MMjG6uyg83awqKj7C zlpC8Dt)AIb>2j1-HwQcSHC5-#E=&)4Jw|(M(RB+;mM`eZ^zWHnGJ9H$odt5*@G^an zgLb@UgHRHS1c-Ofuv$nCqCy5#^Tn8bz9irSXF`2#MQKqOJ<1wXw~uO)ecJ00=a@_q zG4~VS%vryrW6`pPtq-q07j~|iwze~H>#{rkKEoUEHq0(x zxAP`-56-ysf#!ttN7xjLo-0Rze6nw;vKQqskHd@H@mt z!`h&eHcW96V9tyYwQhZKvZUN3WdzF`IzuT=htcL~tO&|KPqJj1HG*_UhPP%}+4je; z?hK}Oy0h~JuUi;dz4wm!PbeR}cA(d*Nirtw?0J-#UhgtEY^0-$!hY}|GxP)#kdxvV zHCJPP7*-s+;B21j^{T2&e5XXyZOzLM`Vciof{Z6C#1*!LpIMay+$t<9zaB*n^QW(D ztQnbJc&>5VBdeD@x@UU*rn4*N-(GW$>8H1%nfB{X?6^mKE9Ip2$@G&J!rF_VrXZnOsN@u7ym zkc_Zu6W~1Dpya9-_l_K&mw)%kJ5JdPTO;g!eVX0)*PhueyU%S}e|}#_=kYfWODoEj z9H0N}%dfxKvSVpm+R?!zt0}qqrGuMazM-rA&{uYB|LP&G8gjjHH)vWyaXP4T3*6M@ zfHMDq2*sX)YIOi z?gQtge@ch24_wqUleCDibip;*Wp)bb^tl4Z$swzNanzPVhp4rtq_Nyu;9Nq5=hVITt9)9V7-yZ zn^5$E=t=Up!IqZPz3<^+;EU1ozNVq7(q+A+0khfe5 zufdzY^vw2^-(BfN{G>3TJcg=9GBoT8;?Q|~#f`5sL{yTkOVS(g5#PZT<-m0VdDtD0 z&k5L3i$D>shSL6sW2W4LWY@wh_n~K3?fUM`{Y-h0b+Z0rU)eP8 z{zIeQ&h%nk`D=Sn=C_`Ph<)>zycu#v#i^I6>(Gw^Mbt4Gq3h^9O$AuTA!-?k@>=aG z%I)~Hvrwp&pM@lW$%r--^G`ywRlt~D-drwKE;%()UOsYa$s^+*4*mGn{{CBkeCUz! z4?9@Z@|%X|omh@W+EEmP9!9xdCLL#8H@tfF_E)c;p}zTy>tEe|^{Y3)fpRPKhf4}- ze!c~NM!E3KSW3xbhU*Rxw15V(?}8fnZ^PU_+QUD((>i!m6ga zvPl{>LjDrTx{MOtq_=d)y~v-@QkQv7PSgKHb~^U4q34ZR!7{&JOwIO;9?E|V2QFwc z9s87*zvXPI`E{o?!ze??u4gB+YwXG_WW;`p-Q&q~8d?b%>RqJl^Hkf}Ek?)Ku+m%$ zO&f7BSXVb-T@?#Mv6Qec8$dNh(oPs0ms0K+)w#RAZu8D9TDV zyU3UTMmTBLz|-JC*?zM6R96FeO|Z@7fs}Nke!*S;w&~mr-#^;1i#C15lB09Z_20Ov zKGkf|vYf_Y~MCm1id(3?MFRTE29{?@c=M!t9O_(OZ*r-G4Y29Zt?V%?HB6m`S0Qf} zenHDiLbXI4vV74#Iv64$$*No(YojJn@65C6?G7iKezWq&ZMlXlLvF|Po`O~Bv=~M1 zmnWZY3SsrJD$3R&iwHg3WNr^-#zhi#ms9FC!dlC6q4bbF)orAFm=sjS(M|xYkk^2E zpuu5zqU0G$n29&d+TP{&cU?V8`2%wt{OYc{)@xtcq2x>Vjrs2iwl1!zU)bzbG~(?w zD{mScxqnl=eEPJ4%r4p|6f;1!%w;hHnZ)0mYRrIkJZ8W?HgZ8)oN)anuGRhmzGFlT zz}+BG7%}(rPTT;08+WKTVXZU(QtQ0Tq@sG`q(gbmn9&z*I9zB)~lZ)dp4u zm1Chl<&Bb)MUfjYO$nxi>t_^dHus|v)1Y?qQ2c8lA_ZUnCTS6BAf>jhOt zQ$rk=DS*x4k{=Obgq0hZ1|3I%B|tEf_8J*4Jdh|83TRLyXfTeD=TJrnw}-vNfc}N^ z{ZuxTW97w>aDgw!?Xuf^dQ2}*YNIVM+37~k6YL8WFP!A3Q>`%~`SO9E+_3RWyIa>T zjm~TKcU*U2_g(*(TdmJ9rq|B9c46P1*^$DTSI_wRD-El=3iG-*bPR0iEwz|zNwT%G zyK33t{&f#U9Ib=Pql+He*)ck2fgvqY6$y5(YOY2$+Wnr|!K%`kbveF#pOJ#W)cwI@ zD_jC1Z@J$olgEl+Mc}wgaKbi|X@3#2Tm?v6T?iyqwD4;4$_$9O(CExT+t?Cg*nKm7 z4q3%B_$;6PaHaHN;lheYulr)QBPgG~C>JiQEb8@0|K;EjH9WSX7;Drmpr(lPvRp?J zewjSV1B1cB#LCoaotLl7$;%IfW)8XdDR;g_xz1T%@x*Jd-4w&*pok*v48CCP_lp4 z)u{52;PYPrpWhEYpEu<@PtEwJCdAksSdUyz>3caX{K9Efd+_Mc#TP7?#1+^Z@nkYh z7SQ@3LZ}$DKbgAUibH~qPSs6)YAhFLAxMP;pAHT+oo4A2cZ3%0CSv)#RQ5402mMCB zN-o1ElM8#O9E`r)terEZG|WTb(gjJrFeP2Y8^^X`*20`#<+w&dyhIB)^ISqDOa&8jXRor79g%5+^O*D`}&>CDGlLOgUP~Ugx z{JQn$5BBNBl>UQHuUY-ffq@kE0gqa{Jd#bkdHYKT+S(4hwEfhkbGw?Gcb(fL9$rU5 zYgYua#d(k(b9z~P*Z9uo@m-M5yyz9hcj;drtGJ*UNCE)&vNrWqp`1uiPUwh>dy5?g);&ig52#(7UvV;Bru}CB&fp+n&-lWz# zLbaYalhpin>?K!I=U@poeP&rvfw^Ps)#scZ16vkw7+hu+(R+bQf8?v{iCDn^3|Ymw zC#8R8+QzP)Ha)j9S3GLwb%P|#<|6riA(QY6JIAm2+mV3{jYbrmJh$4%H5!sOb~oeV zdlGogqSA*shn7|rRE1k@%HUIDFW!yNKX#iM`ltEz(#00r&dSP<*2t%wwu`C0zQV#j zAJ!WbX88y5&*HW|>DCmJc3C(Yg3z=Ae9&Oj+V07gJ5&lZ-umoVw6%-x-cVn^;qJvR zj(<4v_5;Ji54?Tk#iRHz@4>fkc#(CmwrzLK9lC34n@FFA=H9ifjY)r!7T){jRagJu z-bK=rPfCmK{lV2&y?O6K>5E*>L4Tt)Vx(A3f`q{@DZYz`je>zwmp+nsM!|>$XZGvB zzXJ))Ox?8dZ=r;Jbohe!Z?E5}>Rpg;mt+QY3py(9PivUppWhj?0hiA_3LnG$8KO`p z?vM6%xc|7)M=Zf>mi0;ro}iTC2_!kWR<}@n21dr?n>Anoh?#)z!a|`lNH_z(qA-cX zO6R&9&PH^0x^-M~8xd)xLRbvm8_l-YxBSOf?%UjSq5q-({USX|T<7tN;iY$PVn0?2 zN3JQchs86viMls+=kQDe;i6i!!($9OBl%J1;kc?L7z6{+Z2X;6a(T_VbN`eth;uKX z7!;nNz6cR4J|FtyxUWT^S^<=mn;CDncjb&&1Pi~r*`K6!T{$O2IsI`^?So&aPr7ny z`1C+-AfcJ#2_Lg>G#YsrM$Z2)`=$~lns1(xqvtEj#f4L{bInKhaXt>45B80=53~p} zc+tTH&6=O!?_`_IMfCs>YlR6R(WKF20vaG0M}k~6$GFUPq2d@f#&n-3gvvkB6nkyT zaYE$WfydUsxBf0-0*Zy^SfdHLHI`nYn%Ct@_0lPoYJaZT7Rb$mY8R%)8BG$*YMrsk>5U)t3iDhctzPfS=0 z?8V66XJ)L=3UojM@x>W%kI5QI-h{|$)EpLcXwCy{K-Mk=&AEmLd8*STECnW@ua4j6 zrQ-5tsxwo}ijzQjMn!+Xc8hq314V#e7AB*EK^%YED$N&6DLr#PI(OH_bIVqInThwD zes4IYwVEsygL@Z@K5<}Hiui-EqNJIJo*0R(9O?>~SzhX_6$cz`(E*l(9 zPQ`nXggv$6m22D5a!P$DZ$#_o()&8KURjawUDXnT-Wb!3FV?;3r#Z?n}qnE2o zul-ep`s4$#fH1XR%+t_PVP$9JVXphADlLZLJ@evwwC$>$NZM zV86sx9LsH8SW~~a#eY!|S0`oU=O`VpoDFjWrnaTKI~Ux(whn_ry#S2tG{)_v+7x`! zDG?7MTaIHHm^TJ|nd2%oFRVq zg0e~DQ0kGoaF2i4=eQBW)k2 z(Pf~Raywh|8vBaUI!>p_$e5UpGAyqxo|L+j7}F=i^WWXUg)If zx`1;auaNdSCfB7(4T_;uce>gp@e@wr+cs0ZL0s~1p+lGRZAu}QE$yl<(oTGvlnC+z!HX!4e^tgFrQYSLU%l0O5vpm%fNw90kyLrZBv{~ z)ap}RQrr|OLkqmYf0U-z0a)P{M1$TkvY5j zN`_*=(7^85?1gOS?!r0y2Yas?ZgZ!{7VPY8-@CY4vlWQ7CAU6W(>8nKP4h`OcJ6y> z#mplcW@l$qwalz69&Rt#mW8A(iFy`FH^EPljGY;#o#9ixmGMPEsXnTo&&5Gv&i$Nn zcV>nGNo9rk8R5(@vaamL6!`a(Su$~vfZCt5kY$d8VSXelaKsoeP8>KEEz7sr%VyR8 z{Pl2GmB&`nTO%(zJSWc*>8ahew{GRpKINJ{3kP!R!WqiblAv5bzGpD2GCy-iuz7Bo zx3i@(&9-x7#`+n#7(Dn3y@v-MFT;^tQ{l*xNAaB(Z;{qtJVlo#u0>{;PMD^8(;e`` ziK4WEI0xmhCGLaH%XDM{XHFbY%|$|g&2hb4Wt;q2?7uaCQTEc);``d6oYg#uXJ3Ig zyAlYq^jUbbV+y<(yK&s6QPJkIM#%!SS(>JNEjhQiCRu-Wo#-tcT{7ESmSVT$*AF#Chw5|o?Ay9EI=3;$6`dKapH-8anrcp#j#ssyVP?6f zrM|-C-oLP8b6iU=AW$FEM8Y#(=tT+r_+q(1gIf?zj;6s?-MT7W^t;k{X8OK(d+z4Ckw?-UR zuTea0g26X=99e`f>lw;Gp{OecBa6Hshl`g-gc}L)GOUxhHc`i*jS-s6$OwtAPJ)`F z;{OnB(V#&KpDy-iqUbO!F`6c}k>2-S+t((-;XrZzYi;Gs8^bf2kbu0pK zDj77fe+*v+kC+-?#(|IH%f3nYvKolS;bq#%8u^^^YD!7#tochzW>@$+S{us)$>L#Y z^=ryI-`Lfb;o6+hw(A?%xFjDj9_>twCk39;PsEkM(?1he9zTbaBK7<$aODWPRmXAV zB4d$iqfS=kvHz`;9EMlCm09!as=i96qkLxFPk*}l#N1%%qNBsg)~Vj~fUC46l#BBA z%02A&WrG{)+P2Or{`l)Fi0LAEp!tXNf#4I0Vue|02v0|pBpTF`$9NNB3na;va6e!c ze1g}T5i)DZRY6N=={R1aZC!5tf zEM_#*P0h7RA6(Rn4`j7_#_mY7SklC`o@rTQi=_|DjS0qizzumK=P5Y4Ba!W|{fPfB;-FghUDDxm1#9PpVY zmNZv<8(|$9?md3vJqBjH`^eFIjI09rwyo5p9=Q(qd!Bv$%o9(X*?#w z;s&7?sd~y84PEGB|(K$oMmePGYP8aIa_NEHr9l#>ofp;(qzF4*iF*-0i zp)fM0N^|aKKw~S1S))ZDG3X0;o=w2>(vEWn{?Fqh=j*n7aXshRPx;Ih2e+|4<=>_c z<`|vq+bSQBe}iXC!sVf3e?DAZ{>_I^o@e*s|8)BVaik5LzbI$5cj3MhxV-EC6_?lE z1uA`boBE_Hr-DxhWDuNMnjt*zlW=*}q~yWkpCj(*3V{M#Ui_UZN(SowgKG{Yi;m7y zb}6s0KTjz~q_sy$fN+~vrW~piaJg*qtwMJM*@3<%Au&(mLM9DPOZb?xvUo&Pb{71> zmjm&itmKrNY3fBwRbPeE4$bC2{$urtp`bdx$E07Kn|geISGKa_G-;~*M*O!r#w+{- zair&S`3Ej18vFy}Ln37>F{H;oaXfs@*TY8I40&59T=Sgj9{BXon{h7zM8f9@y_w>C zZXOx@KC>;?Hp#J|f(WFzPuN4;s{oPAV=+S0njTuS_1w;;_8n&zZ}?_QG3=jU&0urW zs@@W&FF3MLNJf>1 z&^4qZc=uvqUo07YrF3rCh!e3#aM5Amz>@$cgN%G#fUe+ZOTiU*h6)Iv(eR4*UW$s2 zU>APQ^Zi)hSHYcLEdnCtRuLl%lp+WhLV zUdl*-K6&YV`P-m_0oi1q>~HXWUVp>n6A6n{>!n@hZ{V5*$L_8?`Eq~59L6 zAtjii3dfu*r^TeU4N&)Qyt@ZAY`GlH3<14|r$PGY#-m4X#J|e7lG?Aje`L+$JDOXr zd2H3_1KZkle?NbI&$pj_?mORk?%8j%*H?Y<>ZXKh7u){WTBQa0IO(8>F$72H#(qu) z{eaMCP2pD{Wku!la4gXJGXxEROoz#snu5!cycBr`w!%?FdpR)}z7|weW!$+SKKNKo zZ?SF1D%SW|Z&tu%GyKY2TD+SDbL)E6w0iRAome4ev8CSfrtFyu*?+=pcs$9JX;S_j zHtpVeTXMy;IpK;`1LcUB`l<4)^q%}0d8DXq)xUkN-GMZ*q?G3|!n%`kh*0R4wbJ;_#@cf@pVkbAGkow90DB>sr^=wyrDBW?g0SS8Lw07POT3 zY-Rm59#2hwnax+yQeee1&ucb{>*Z=h9L;_XNv|AGr`(22_`op1D=-XLhC_Tb3ur+7 zsQF08*p`nULP;1VSk0-1Ni{BcDO4J#7AzbA%owGeop1#lNej&8?JGyOo6HOIG~Y0| z!d|zzbJna*v%9%W<-_ac55)6Y1zJDy=Rf{TK>R2Lt3D8faUfW5y!Ptl51d4nyN(>W zOC^bRmL;#b#GAf+-MZ!J-jZgNhQSSQy7X5@c?y&%Pu4kT!27I>&=Tir3-Zea!INdP z;G9&uOl1Ulg(E+OWJm<;PqGr(h(?>F-GP5Kg;rn0l_KYl$jXJ~#!#r&Z; z5wZTme|Hx7P&u#2Nk?%ujc4G}U!@TI+99EiN58{6s1{g3Oq+%Ztnff66j;HErlvOQ z}?Z8N8p z_-gwi4MX*TluYBTRxj1TR7dG7@>=CgcSW9~XmCeY_l8*wRaM^84@X+-YC47+3p+}k zo?MUPqce%~$KQ(HYXRPCr~D-M<-h}x564`Q9~Cgf83j!2gxel02A~Z#Di;SM+!Mk5 z^y_FdG}hPEP&XLWiA=SBFE0htC`xK*E<6t!ox_hHX9*S%3{jb4mcVI9p42X;+lf7KUz8pvP&a{<&Al{jm6HSG!ypRT9jE{DEtX^Ay5k& zeRYtmtj4pU6=iN06%a(F0&Eo&x`}Fi>b6NND%}A+7E^L|j!P@)q>AR|Do;_iDYLXA z^1crK7^BvZTUzI3?N!As_E5PevUKshAmt(4fM*_%eukKos82x9Z>^9i{u$W_jJ+uS znX(aZ&K|7&?fjftlscz#jF+E-v2VmVt1Q7=y)H0FLE0+JpE7!}01i{A_1D=a} z${TRcAf6})Ayx~W193B~7ONZkPgo{BkHQ)Mg#D#GkCfk%LTeFR#8L7&8bv$(d91*b z(cM&)Ch47lWLtKs!74pJ?cTeNSNoFP`kV!;H&vv25xI|Nt&*ODmHJP-T}(*P{4Ji3 z@i#Re1IO_!@ftiU$m;nR>KT$2)a%6k_&uavN7u7@TyLS?BO1D%NXb9&F)vUqur{Wh zG-eNB&`3eznH>0YanhI#=`?1hop#?{H%0wP?xdXglg5mDiQ90mAf8QhiP4xqm*v8> z>;>sTWQu6dBMP>pFknZ8eW}vw@F4Sx`oyqDjY*E$fBv)9kz~Bji2uEdK+!CAor7JM zWyp6ZA7vU+se&&PcH>@e;$9Zq3-u&RP|Z)Gv=hn}qsHYvJQ=VR`&_JWKpv{(CF`y_J5)7+NnqEVV=T zKwwCWI~^!d7p2DiKE5a7o}@bVm(-}cOB_xq&FMz&zWkp#K3tCLpHt4Vm^=n+FMd5a z%2y$!L@n=JZuUQS?3g_E!NcG`FDj3+R(`IIBIW6NC^Jim$&)8;6&k`3_J$IosH{OM zq5s8W_@6v>@%PGqUHm^&j29x2pi0zY_2l%|NoUGC}>`88k8hasPz zU%y985!Z@mG2TzDNxcV!c`f2uikD`>vtp|BWAVgiUGuDzbMZIgi39wa{bH(o?z6Ai zFPDAz{lqoR%5SCFmk=5tAkPL$Af7!Ne;9RpViY-wBj_3g=_jLZqBQ&BpT4kT2adcY z{6=~~dIS6+qDFHY63lG{Wn$2@##6!6(&@v`s+{9WY4ldz^6R^Mt{<(d8@;}#`}*Z| z;;fz<=-UlFJ@|&B7y_QRk$r`o7T?A55;Pp5-_@H>ed~>m{7O%DHJn>{)!ClPe1|wN z{;ewCfl@@c?>yz_?C07v=pNehW*zYyn+2REjRG$zDV4UER{Z<=)h1I~U)SnpkEeNc zS6`aRw0gaG)lZal&u4p+OSZoKyLYbH`R;Gu-d39I^*pbvQ^(wdd%uEvyKrx76797L z5qpjLVZ?J7Lq%d$w93M~>sRYF+Eo3-6ZENCjh;V)-THi*!<;IYZhQN;@9wd=apZJL9FpqAukr7TI8rHAdO7SfLi<XelN?`q4RXu5OxFsto)ii#qSMF3~NEn#iM01L^G_e5;WoA zTZrnlLh*y`LIpI~Q_9UQ`=huu+ob%u!NMl#w|Naex>} zcyTlsJs>gu2vQ3esekpg#fU2NX1g+l7;EBf0MKpo?HZ`cN|A3E zom0JPWLa6DxgwC1lv~jpC|fqNs(NU-#nxXuxUIcn1P7Z2*7nEBmMvRe(Y|f4s1Hgb z-m?YoY3J{WXtNwDVL|=CfFr@w!EL zHR>V6Uo0M6!X3tH?7B(_D!w4vCtkp9uubu@2KU6viZugGc%u;-d2zqZvV17!7;u zK*OVeeah0J?L@`Q$nPuuH2kC`%V3%->kUrx6X7RDWXVLI}@%}?$TJ~3y4dGrJs%-iIUxf z^@+4!I3N**Dvc8EO>tWU>Y`c|uT+iyx&?P`F3NvVm3KHzp_hiNYB>aqTcSW(XtGgS zyW)|IyvoYF3}t&>xcz}X^-JFa?cqFWp0ecP|2iB}5<63$U4mv9>|KXL$&V`YM@gi47Hws4~;s}xMuhn9-qPPhSt-=_o z*^2*|lBuK?=Mk6+b5S7 zQ$uZac_~`KS$RucN*Qm2`dy?685zTTr~wyhNkPg<M_!ivr=`WH)(YZ+U+P$Y zs4-gXsp#k%%xjK{KBFTo6z#4k>8{Eu?OU;WMPF&}U|B=i(i02TJW*eux0@|_b%Rai zeN|ayGgq%)J+o}i!m_541=r6RxxZHYN%^#z%4}y>ac*@{(C@c-rn5iV?Jh@VL3MVp zrns;uI&DG2z`kH$S$oI!p|bX>HuP@tXJtkjgOQf9jZwZP zIxa=!GT6FS0l5I64EdoqVF|F!SQKi|D=L5I5o80tgSbor$GrGA?*1(I%4I*lSNY?; zt57wj>8giUNd>a-VO0M1hf!%^!|Iy`<{Tfb#$6AIFTy&d{#n@GQ}pZ!k9XFAo(ZDI zgNDjAngixc-S3@7oyG8Lt-4fXc^v$7si!$A}*_PiHp=+E>IX zRxF;At9}`6rZ3{??2gt={o$ODcW@d$M9{W{_S!z_G;`v8lLgc)ExSxo03+T}cajA|iq*Qmj z2-O?d2W-HA`gm(%#zGHbTRR)g1{97Y9?QeNfeUcd0tkUDGZa5&Y&kKX_(#&ovadJ? zn}eT1#1hvb)-jgS-ipGsfq*~6#ZSC)FZJ=}L+7FKap{ANqaq;axfjnp<7G?8V53Is zm|gbUHET@*(_CthL>7a@rhkhsyxM<|Q1@m$X3Qz($Kj`IbF_?gB z0ev+w?L>O8`n$!$Lkg%B82~wv?wNSz0=0Zg`W0zq3yveHMk2<0b_}l(r@VaS?T(LkV$Ib5!{; zWn*yP$vV|{0z`<{ME%V3H4XCb( zqE#^RRuVuNTJNT%)Yp7r+p-6?Hnm;z$g=f!)D+1kgE70Tr*_(={({2p)r}P$m4z3Z zDwbUL;7g;UFF$yAaYe=A!wDG1`Antit&2@V4gn#jxje1Z&5Up}^ziE4G)j)J0Ka^GJuDslPnwkJ;c~R@} z5HTn|eiWFPpgLHF2JvIGBlxU-uSj`S+Wpb1R}geqC9}NX;}f7x4A%Sv&B5!1 zT49cG<~cKiB#kflGQ?SFv>Hjf$v}z~wA~R@y&-5*LrRu@ek$5#ukA{Kl9eL67qK!!)eyG0A=S@L;_KeQDIrVdj!roe6Exgw*N4g;=B}a|aHgfWFTY+><4w934 zj4pswg7foDgMZ^ZYvHttg9o4d!kRVaOvCSP^QL_#Dbv|^4=eoF=Hhn)-GS;{i}C~Z z#XZ+7I+S7X*pzdbtSHr}-1q-BA&`mEbh#O_QYYk+KIpMoQ_yx3ZVgyj6eY^_8(}y} zuYRGBgr$G=j24}Gp4ok}YxM-f^slH0tzkGemAB^s4b(gUP&;4`si^pQlnTd09^ z+3%m-^PJ`n>-8_BWLvURUrgG##++t&G*zcheKa}EET3MjWU_Zwk3GZI&rrUUmBspI zD5u1JeX8=7D>EyD6{iB8B$>V+2w0{3Fsg{n6wa!(0nBJSt7(qaRAbqo`>a+%T~hi@ zf7x&7pF?xTEmDBiw!E%xTtWUEt!<~IAXcABLiYD$bCS)S=gKR| zYv^dm%c|@tt6A;$$VPo~hBuN^Qk>T?ts&1@KE0%3ezsJwA?Za<>KF7IRuieU$r_@y z$s`w>Q_@frBGaAj2sV}FcT{=`{nff81a6l2-Pv|qu(`_HSnT$?OKCc~m8UTsJ)Mc^ zFlHLFGAHI^SPF^%M}7=Ca!AOEWnzY~jHp$i>UWW-RSfU1cO`%YK{AmF0srlA+1#t! z+qcgxFQ2=;z5VLBWqUnU(+diwS9ubDHLF^$9x5vvy1KRHs-bce@o&b_>})z~Ml?G+ z3LR1u4hg@}Xf#VOo+zOt#i;K9!=|bv*8{E-b)`e&m1YzLMXA%BMP*Rw8gB1!EpP+t zF3b3vn|BL61?`LA1=H4sP{mbq+S-ZyYEtp4E_>+c2xRc%acQ zcH9|WSz9w&c-Qb99%N3Qo_|MpRc+0R@SVeVWaImt;+diWI(?w1cxI#D-#AmT-Km~< zXLwaj&5FX)^X}v)suzxiRh-jt>93lVu7oV+f%dwOR}bF8VZrlQQ}5BM$q zP_D@cUBQYvJ>+7UsD6$@J_Lbzq3mWchx(Z`H&Pek-JMW=3%=@L1zCQ6$0^(5<1egh z-LiD1zfos4ngfkXx=y~9BO;wjq3k5~BVgrgvc7h*YG!?5PG(9{ioR>w4{qA_(vdl) zn-1gn_0qw;-#yXoEa?chC8Y+7f^WPUwYY70=_XHFwb}js@2BSka?-W>j?pcBr+##B zMViNC%eO(Qm_Vyc%}SwFSR7jbBwi>3jl>yAUR(#uUq@XzL}=Odyw6=SN!_YyVuutw^bM{ znc11g5Bn`1Z*H2)=(oC0-0aQs8jY0$!}XiaET3h}GWz^j`;xHil0}oHT?vCLUFa2_ ziaC2bS`CQWFSn;BBNwnNALoccX#JYF$VNc6gbX_w+!N9Qy9di`1E>aYUy^tui;cXt zgc^hTS?8`JNb7Um5&@lQSe&tj`l4{apOZ~kL?VbY9>agrm@0WTeA%OP>JWqG?l5Svrl+Pt{Y#Piz#FN^*`mX$vX;pb9 zzoTO2t_Ab%+tHSIpVJbo#M%?V6jdo^PbitZVUP`f^Cf ziNdi<>EL0%7xds^=VR$Wwxpr}00@nUvN+n*Nt1!uq0B1{a5N1%A^<_t!c!P;JC2%? zgr~ts1zU^PME%qYP^xm$1+h;(_p+N~Zj$}!A-~fPsDRp=V;by^06~xBl!{}nlc=v+ za3P79irpb@?%viLx_&2nqyEe5Qbeb{#f0uaO)Y!BydB@tTTL?$RTk;fj43&hrh;nQ>Tv8(hn^-Ht%epB@hQ z^rZH1z<$D(4fM&DV#&5FS?;ps z-U}EPjBN~_!(gMN z!2^s$7=$Rxhrc;Ojw58t2s-p+$-;_)^_T+`*rH@HrjfLPleJ00Xk^vROAD9Ocxo55i*KeG!ZRQF)+@`sE>G>^ z_WKT?K}2WsxuE=PAnM2|ez;#e<0D%W7PQHaWFdiT) z#4V{{46Uf!gad(;qLav+lVUWajBrp3Y=Srg2uN#%of}p!E=I^~R`;bp=ReeHRpof< zBbuB3-CuKqo6(p&enZ@NjVXikdb*||mZr3rAiOd&ENLkf#)?qT1m7~BcrJU!p((ii zjik+4Mh}-5qIt`Z={|7kw}veHA$G4(A1^$xaQ4APrIkxB>+9Q- zU!*Y^jTzyZ{F2$V+1Ns0YYwDJpI0tFJa_Kl<(0|TYj>}&oL8TnT|cjK{cd?rs`c|j zrgUkyp*~(4M**cdSFVUx=C$YyR);m%vb4T_X-hD}n=<-`zQZFmH6w@n`mP+Qt{%Cv zZ|4=E)+KdyOIkvgW3GPy%)|R(<3vpX*feT{ovK|kEXYQt)yrC#jf2i4v6fr~q zP{h!r)G+8Y+!Lpwnn$FhRXh>?C1cfUo_uV%%WppYswh3S!jq9MAudULYGCEcf%zjN zgEKFhS6n>rqM0*y4HOp->{51!her1jv`)HB6VE8IpO)m?O!iaX@svBI8#XN;-nemi z`KHm|lnq|gF?|=E6n0JTxM;BKk^|UNE3q*8aqg8sBiJ$xQ1bNHG!Z~GY-Xvc7%|Sd zf^i5H(-a~9w#eHz@20E_t^Pk+eoMF9HA9>4>+AnVf3G(n&y=<(FS74;c{7z41GzQIP^vx4 z!WJlZhW+eee8Hx7db8LnUr<@V9*TGs0(%gJbz`4uuGOsN=d=OU?gjrMv|lFDL4a=r z6N=kem$;sG*0=ZpYRM)~cxNx7sis8Dwf#4|vT@@pH_V-@zV<&;x8jnv_DhEA>V_|A zZ@Xkgomh0m+c)*}-1PPpSG;|sr{~DqSD@5kS=pLAmLq3rs6hSq#o29~Iulf&o=Aupu4+0arpA^MEx$`ac>^9AkQ};=wuHuYG zZ5n4U_D%Q^@N?x1zNs=IZ780TVaA1l>n6RcN^^0n5hNhGnFo+djJrC19#YgJ(2QE)!9On`5U7W ztB}NxT*c-pcJ%5)hYpE%dE(xOEV6AD^Pi4@f#;!}cQHpLLS1t;kZHt1E&0XaQO3C* z5t0y*6g9bmkUV%nENo&-2n90T)^u3|Uq&%MNbsPJN(8&B(T@m>;D`O3qvKr;(g2B)|VbAbNwlJ@E zc7Jg`EE%Di&Zr%QSS{U`kJOee+}G8xVfn&>PgCF_Cmmxx`03mHoQi5r6yM>2=8vJE zsFSQkA_aVobb`l_2s8Vv7>KHv#a&Q@a_E@=W96rHQbLpdSRBUVRn7$J6d&cJVxH<~ zqZg;Pth;$x|Fx^CcdkFUuVL#wD^?v@)9#uZ$TgY^S{F3bk4%q-dM{brwslTX2nLSY zdG+e(&9e9p8dJ&8-mXozMgk8W=)7ueQ|bI&Gjr0?T(QoYV7O(dqIN-JV2|jp8?3G9 zt;`HoBlsG`ps|ZWD%Msy)|O1!;?1qlJTx}&2}X}dR}`;i;&#-1ld#lCzXWC~;{imP9oUFo}JdHJ6NV;?+3`?N}f`oSq=LAd!_z!2` zvnC^CkLASxcnn>7ykG(C4Rj<$6b5P5DyyLi8%(HVNnvxBFIjnfZRL#pPp+(6x1`r! zYA$q@?CnA=o&3nmjUA=ys@JU*4~BA-Msbz1ZtV^8);xMqiz`~5Io%4}ud;%^ZPV+A zr=hN_UtBljrIlXc_{^f!rj6`#8o80=J=)7ZbjX8aAx1 zjATd62pIB-*x2Y?Gbx0dtUIcr9hknUJ2$UuO;g9_?%ZhSI;iC4;%#lSZ`#z{zUT4P zsGZV0Yk>9G%0jp9De7C_(7JYJw4`^WqIqLqq4*X_*Gt7x-NCR}(6A)8ytYYpPnDqPf z(f>**_FO7P%vqMvL6=`MG!V%-^_&x>w>o@{* zVDP|RiMA!iz2#iFMa51Bu)A8CN{jtod(;tCX-6EGEWfDwHGN_N>}K5T3B_NHm7vh1 ziQotdNYaX#O(PwV!mj02mBU?yk?A9iHG}oO%$oU)jSFfref9G%-+iF@g8Nr2zwd&U z1AA7lsabPmXz0k=+BLhvZHwaV!;M~V<8XU?QCnEk7iySYSTsQB^#etPvl~LApXNMt zaOk=fRaGd~aqyv>=$#uo;Sr86-QT(KPO!x?>`Sj>AF@EI;$&v0^BCtDn0VCDgJ+;F z4HD~&hYXYy1+#g;Ir98?pvX9j6X%d8V6xvf| zy`6_wH?&@G|MF#bZEkP@|514}tuXsm_Tz$?OUfFSwT5ETmc{p8aip=Tq>@VB4Boo6 zrGC@xOKLW*+fbv-vs2BHb+G%r2;G?GlF-m6&h!a|2U^X9@-n4J9~hjSRl{8K;=*I! z-MI0MV+$4>dt>9q?;czDeBH{+ySgr;c+1PWx-MT?C;rDv%AdYEfBsjQ?WLEP{p9@l zCzU_G^uPy)>*@}F@W2EAO|Sn={2Tz~y5&2N0|k6e6ZR}xmLN1XFSuYt5y!5iE(3^8 zq|Opg>-7{Lq-0m0_r4x65~YKB5_Nm1MkbNI{BoGh4}HiIJO&TE3`l z$Zq^A=^S%`Yv|ygZyKe~xwt+Iy;#eRSm|>Y>c#w=f4=#B`izKkjgEi5L8FBnNxI-aT-Gj`FvEszCUL2IBjw@d;G@3hYw3{6%@X2 zlr^ck9=7%KKhk_I0i8UcLy3UQR4y^&E9;vI63;sp<#i+HHniHG0q$<9sqa-CYH@w(9d(T~q7T&d^wPeovdgb!i zoXDfW%nc2;n1%gk?fMOyo0^t3`m>P+7jntz%Wqv(iGYwLeOKKm{tlD!BvvBXM3UIWhGlw*%n6J*p73VcHGI1{Po3p9`DL37`p zyB96IeRE@|Wl_yF*LEFza>cg$w#>-r@zt12(e|~oyS8>kd~>efvgp9?_n^H5gX3Z!oowcmEcG>jU0TyXpRNc6! z9?>qG2H;&6=8SMiN$0@s4#N}V99J&XIKL6taj*_WaYXE%&@w3Z@XNJ~pJ_Csf0uUJ z?9bdWddTk8Sj86}LP@Y*Ph<9I&8l>#as}JvvMiMDJiUR_ehX+XqAx|X=R_j__=cWA z${#d67{N&S(*S{lA`&=$EBcji-(V7;Y=k1Q0JpuKp>6Pw=hQaVZCSGAiS2d0SHHBe zX~)We0QpkNW(>D=T{KV>?Y*$K>Vk$X+r@{AYm`Q5ue)`}U5mFpf9dp$yeeO}2S7+r z^?KSibmv*^0r9R`ky5Myj080^3FDTeEjH(&Gb9sR{E&jf)KI3U_sicxt_4*u8cfereznXfO$jp4~>z_oN|($2tK9#30I)&uRyzr z6{lL^3SxlMlqq=hOn)8}gY)f3EEDCiTV`zTjv;=fsddAwJa!MtWyY`SnSJA?mg)PR zTC@5Qs9yPvQRRM9iT?rV)Ase9k>Xja;%ytdbMw2`DSB^(r=X~6?QJWTJg|Fu`|ih9 zH*Q|PHm>Mx;5x|BhB2qOl#NL`_7Fb%D9=WGe#|$XXR~h1Cswh~aQ$IHQm?bg*E?~2 zCjb2-Kl?v#;mi_bb>x@chS;&!5tMKYm}suRosb-<0Ri!S&hv z`V-0LPx<{Ip08eiGWq-|zwg8EyLtbfN49Ot!iW$h7pgTaz+lA`~;VcxuX z?D>Kroh0cs)!!W5P3_D;I~|~PjPUqe*n7iC8vrH(C6LIBJ+bwYr5Iapj76txz2u!r zJ(=}5b3b;Z2;07=CA-NlZbPJ2(jDJ%8; zvUOGE@sd2NS(CbMov*5=I5w@Z*7u+m&OIhf17EbEuhqi0n^RJ;#{y6YVqWDCWR4&| ze994@pKaLYaR=UcZ&8i+c+MSTi!&UtU4r=0&P9>9@x3^}kg6iiK_)!_hcM&jtX z>l$WMzqqk1{rTNv~gXQx}DEyaT!wIwArsVPp6 zXsU#*z+2uP+g}*o9q+I4W|Yn-b{h!CZzEfaj1u;} zlVI=v@9_v zgK2_aXcXQ(i4wFhv#7HLkc{(LTQ+NwkqlpO6a2)9&GQRxQlCT< z_XRi6lfLLW9>OQkWl3j3byaQ@&?J6~U!6wP1jM6Blhc^MDN)nW&M^M~{DA`6x%G$5 zYHYLz3o}r;-QL)cnVV^@tgfjtXXPz#Z3+YXoT^(jwXO*^^p}@cAk_@@nQ_J6C_RAmMByV?$pAob(R*5EKqWZz13V(-#)FfzU^?D z&+M-8#k%T3IXHw>4>bkLijEmVjvb<=p>bM8OegNR}`(6D0$0ggD_hV_S z6rR%LXs#n1pym+5qnKtMLKk4kVX!CS6hgX(hV@XMP$E$%5w1YMD4HB)&5g=BcJxMe zOkAYQVNYGb9#`PjV8T&xk@Si9Ay!K=cNbrCO$Nmr6G_`}q8^nNoqj<4@Cv#n92DNy z=rr@u7wxmy^N{myU{M2$8<-36ZjUH;DaV(x5#`~fY={jmLz4IMpR*Op@nvxC4=qz3 z=HDrI;ZbOHMEHg#q}h*mE+JnifU_9t6x=DaO<^}<7~9lL4;a(J>Ih-d4zO{4R`mkQ z8J|a_mru8_*(cb9Z7TkC9?E}cb=X266IUba4*|f~wB_Yc zF6r^Aj>$a|J(tSuLSR<95TSVSf91Mzhxpo3cD+)z z^T1B!udI8iGLQX!+ktH#OWHTCIDPtxH?H{jWAt1UzQXna@ABJ1CSu3F)$FvR3b|w> z^I}Or)aZ(X$Z1SQ^5xTHf=^LI3?tSFfO=yZ_?l2M3y88l}GLqelI-?auFtk*+_Zn*rpM9B>PbO2*D5Jeq*oN z3q1(+Vz1cKPoI+Hbi4R}Qcx`~&G=!8Cw)J=sgvD!i6tY2c^FT$9B z=3EsIL&ip;;UWen#;;GGN~ebvW|T*jCVRU0dZ)5!f4V2-Lt~oOX#d}o3=7rlfK2Mc z+IIQO_N3}Xtksp;6#km8cs%5K~$}jzInP; z`lhn>CS^Ul<))urA^!d_CBGkL7b%CS%@>3|>1E9gc)U{pLX!>8Nz-ZRcy`7DCYvt)q~dlk0A|oOL+^SvAfxxPPS`zdX|ye{Vv-5 z;Y7PmGYa)+zPQ~9!XiqPQ}(;mF8#B5*bC0m%*+y((&4e9-S2cNmr+x1rKD-)G{X<6 zeJ&$zW_8j>kk7Kvs46Z_KGM}(Mo?xp34W159yn-vx1ag_&`C%lp0Uk?*QAeb9j%iV zVIvEW5F-D@pS2mtbx4Kx5!J_>4iO=7@Dd<>k;#}pAsJnjSbK2bIb+dq4nLSN4&!4M z0ahTZVN6&>2v5n0z}aM_8a+OZDIx(%C-lL$F_cp8E-qz zOs{XPSbEvr&!K0c&*813(A@2swkHj!Q~p?Ne;!M8}y>S)LbjJE^iR zhpD2aPVV>!w)S|Vob))N(32XK#iardw`rhdC#BTyTs_OW;h6&+wWFH6+0oRh-j%x! zch(QpW-Wf~qa(}~uFA>jXsL1CGGzW4X#t-kQmX>A>&9YES$ z_r}vl*4O3F7_M6J^s)VAW{-Kx(FKuU(@=HJ%!9+#mAk%mo!^j#v%G|`XGQLp?t%D@ z3cW&4b7xmPBMti^jL0c4+k)vekg1|xqKMo<{svjYS_GiWy}2>+8g@);s4Fjx_2%|Y z_8l4%VsAVa!6yYs+NpJ-X!w(XmQhKAPTfiE(bXtvTscj}Sy{zRIXR8-@{9}wZ;n1c z{x*lu!m~=6#9JG;&MPaMx3#f)VRwty+tR%#-neC;tZZOQV|z$?wJV()oM4yY~*21nau<^1ADSungn#{L@HZy`pCQv8CI; zck{sfc{#0~*S~Miu&2_#jzMXa`=mc>mw-c{T_cE6NcdE64N5kJUhx615xc8$t9YUe z4>_SQMNBK!07c^RWO_JOzys{psjVyacZWKCDU!jSol!T~kfT3{?+$dS-`TP~wSx^| zz2^N@H!UelwREMzyO>$Kxb@VuRW~gyG^Kar3zmtqA@5%Sq{utk6VUKrqr)KvlY)F1 z3My9*eWdHDhd!6!MByU})G;uMb0eq{%JIU6hZRajGR-@qKRx>S&lXEF`8uA zsAo^hSvKv7&-%n$5uD~sQ&t9AgPC!!+>!18eWojq$^q#1M)DcpkPbr(m8V<5>l6?+ z5&ds!c0DXHa^UOFE5_%)u6bV;K6_LGr5tZnu%fZU^zO<3L~; z)KZzCr2&4uZOZ3nn@(pnE2o*@HR~N|K!F+AtBkNa_KM#SGrVAyr6~crY5+AhhciXucu1iN`F2Siw5MX*1l6b>R9GJfT1y$6jKD3WnlQm^BO= z`~@f`AHwxFh_wxNgGKpeakOl6o$UPl_jQ}g!lf)=)!Q1ygJNBi9o2?EEcR*j_oK93 ziSi3;%-)PXTqtztMl>%A9_oYDz*jfQ8_z)NfNw)DIPA?r>TYi!pZb7v2~fUBx%PRnqoBZC?`h_E)35f~w&%c3k2RRdKq-Qlx%5os ze@eVs{eARE7av`d*dYC=(QZI%CDC$p=8v+yZgV+x=9gB3y-@^!2yh~m$K-tQU4~$9 zwqX1?AA$A)&$0OSGH@1AD-dYyZvYYhqo4 zT~B>N%k{GT^FP+}mRYtzkQ(dd)WJSl-;2yC$ft@dQ8}`{{SZpoiVuQWopaJH2+hbZg#B zzoc<`=TnQViasMA zB-QzeZKv1d&Gc!VS@Wel#sVH?O|Zrto13?q8tjjiwI~}rK~aj$_c}F_e`X%h079cz z&IS!odnL^*iZjU5AQHOSq(H+A!QGY!qmU7VRi0$HIOPfuHLA+x-qSy!HrcUYZALCe z$%(*wBgIa?$C7PI$F`kb3*wZtu_K-!p9j=`!T1w>pm`vzSD-G43&;x!7c%Y}pMi1< zg1|6-EWkL*u7C%rM}&EBZDInbjWrl>Moo|%qY03roE#fkOF@6>*6rv)C+N>yS%gzX zGJw`!o&dQQbQrL?u+BWE$YxOZ&RI(^+lMviIAaYaWB^PBBplGEB#F+oCQtp@A6CV} z=(mzW!xl)_SifMQdU8~GAp%iK6(lyFdGg|A!qZqs1z5YeI0HEe%P_HUFh>;ol3c8Y z$;+5a5kC|EoLom%JXM>9_4@%tLK9l6RaZ8NEq9c!ttREMT-XSFStg~`5nzNu||GL$P(&K0{&*)!ffHJ4%J@;99>DrU|?B_NQ;~JYUpId z9i#;St69R*hnVroDJsf4zNJ-#ZTZgDa?4;Z*1_Sg^Cj3zTSZvXGA$zBtOilEOOxByNQ`fYAaAmet71x^U*Xn$BSC-z0G;uVwM02C` zkv1-*qi2Y~aYFqEy;SuAOOxaS0-Z$K<2{xPOI|idSPKPv+zj))$j0@8I0nLr(EA>V>MRTQ$e22S!>eFO;uXW-?1{EAgQ)?_1*xeQSOTdR|K%Rt-P9}JwGOAU z-eAAhYQ5HOU{tyk9{du`jpD1Il>xMZ1Wm^dLScv03v@u@*_A5*x|o-vW>eFS#dApI zGwF4uv)cRTrvkq89b({2ddb6?8sATy&TIcPnOMAiZHoAo?jGnbZlUoxw>ni_CyGEL z8%%x_T+8Xgd1$3}J$R^4=zq?SlnuV*$Yn!L9oU}MB)WxDv4nVB&QavU#6=jdlbxP? zb*S0kbceuiDrnOg{6?InTH()P|Fape!`oeyQ=gyF8aH)RRRI0VTbTN;EmM&IEk~dfCeg}DyFRXelWX8#!+#oc*5S{aJ;@^U!f=EcylC%{+ zIb$v7Ou0+ibk5r_VoPp@(;eg^KK}qIV`YMq#k}*3?((S{bmEA>>L?*Y5kMdi2w09Hor@6EEkS+KYFB8%_2E!%h)1?3lT5fr zC6urz^Y|w8eX8IPf9Nb|D=3^+Q=Wy?YvX1Y#A*>fWx9gSlx1fw4ej&!y$v~mXu#^t zvF7*jwlJ_@2HVYo$oo*lbQ?TGWP;Q9g{3fiuobM^>12Y_@AM(s0{LMo-Z^)vlc}OS8H!bo5!iUH6sYnJZF?%bvKDgR^EGOIIX z^f$4NrSaA|b6Vp|J7Ux?qS>3;J0@s`3?F3AgJwK?ehST8pjnp3>38|RjAjy{2Y?rV z`hGUeKFki7ZdvKbH2>}#G)uR;J~1H%f%*o%6~CXL8R8_+7wk5m88$s~Se=VzfY~3X znO1|$LIX{zjqCu_9RoXqXfFqXmLD&5WSNxb+4W}-Eybn$S#M<7XAmt(v!7xoED=^U zryxrk|3_d)!aeMRTt`X6HTV|H2N?kXJ6T$aG**OblEW6BA5=9LWeCo5-hs_L6ZYNA zk{o;3nHS~>&y#g9HTox^0EH8aY=UXovdUcOWqy~HBz+M2+QNa>iu3`t1q?fX3Jc3) zx~SWg!^M56D|2R5$qd^ZA2IJ_W=`-g<{|@QE)aH49W(6(F&Z7Fj4w0{e$~X#BuR$c zkV#(15|q2#Gj0VSz&IJE-mB7~AQMjJe~S)$Nq`EIRKVc4V#wBGMa&>4Ny@V~5p{h1SZlOrSdfQv zS#ydTH`9Gp5OLa@&l^B zTdmnhW59W1>|^bP+AyA3Lwi86hg+dgY=r z;RVd5mP(kK^F&F_iA*|C3%s=n7mCJ3a)XTTP4ox>j9=;(m5y1lD7V~o*Umfbm&Jn&YE@Oj}9Gr>&71W z8fT4n?}J$j-n;l-<*%=BkbaWPR%*eQArN&HXvhE0*T2|?jRme$D_Sk zud7&b{es>jZy!4J_RYPoln-A!G<3~y`70$oRbF5}uh)jr-7e&2v(eY~zI}ZD{Nr!$ zl~$j=eZkQU4fPw2E|6CLr#)1hmFPC+hiX**m*#rFX_pIYnvICskYaYsQBtsHO`WPu zyn1_bsxq6;e|a;3a5~IpCYa03W$+??LKq!coQY>lb|WyBe##GHcuI?(N4e z`ag$fCd*eYo@Z<;wzynb&PWV%b}6t(%@})uu(>%kCjhU!&qNX(dl~^MWMdj7Orroi zM?r(S9+Cu9VT6vTh@=#inRCutI5a|{2nfd_rSoKgkZ%h)aspFlob=;Fz&lMkEqs(X zbR;<#<}Vn8^XBaASrP@yqYWo%AEFXmiv{C+rKw76L)f zx5aV-cAV1EO-SCyp&$S|B!ZX-{F~5P3CV7PNL=6fil-+K9(C;Mhf|GD+lmEnDJ zmrT3lAe%E!>uXNP9*rfTY z<{|iGTtWylR|osyTw$rOUf3yIDqJrd7akU#6XtPW;#T5T)b%$b2CSf^`67DFk?Our{{1&Y1+eg35YDZ_S` zitTO_O*gWt&U`ek5t11cfq%6T!I$ax4Nh*#=U+&zVTY{!=1b2%_soeW9((A4d+xgZ z*v&Uxcg^9;5ANT)`@$VtHmzGTvV6&+`2%zMx;v-0H#gQ+=Oq3Y%qH*$Sd5c(lwAMj z`^mr6P5SNm-piBj2~T?e?|whIpW>3B%N+{2UBR#6O)!Wzci>Mbgb%Bd-{d9Vj4ltl z=_YsZc=BhflXr)cmn6EzpLF`FEKRW!(NNi7{PC|4z@It(3CL)jLqMA(vF?Tl7a+YTX^y-AY#|}tA!94?1Ujjx z>0J}|@y&bUHjA7LHyKTn}ftwgxQ zU0*;r-1+|r-7ejGKDwR0a4OxTqvxR8D(F;y0H0P14>ubN!(b;!;c<;B7t&LNP6(9K z#4gGiL)}pEHsP8ebQg6${uh5hIY=Pe#KZY+i+~=g8wdhVJensTHK)WZj@)o`iUltL z&PQm{BD`vP z>~`E5#+=ZcIm?Cz4pcw6H_gMOb%k{SQ{}?F9mWQOycy+6Bafb{Vwn&q#)-@qC*B$9HKe_#j4E6hoXkt zk6)8zuKsb}0xftDIz(5Dk19y^&@ds=op&%3TqM1B-ocCyx9#|YCUc)X#V~uZc)`S2 z79|HedX##+X6*0M^Wc+WT5mB34u~jKou&Clg!CEmhR>n81>o((xeP2tg!mVKkevBR z4+q!sXKR5!L_9N*F~r4`4aEq)NW61kGc3C)b6=g`)78u8zG3T~%Q`MzH<(>*H0f>S zJ)3)X9auU%xWDF!z2?lx9Pq}H>xWA-3hP3%(o(S2F5JZ0h<5O z`Q`y#Nrm*N)_}@vNnk|B$AA(1_$u}v^5~DZDDR2yZN?Ks&_$M7L6A~oEbSa2|V+mPK=2IK}Zc#bi^&#)$s4PR)HHgF z>znF}z1a;5YMM7iE4k z%ORdMW4_8rh6B&X3_t`)vruoO*WR7xcH*btJ4R;iE_s+URPOIMn$^23t$UfGg*;FI58X*S6Z z0ax{Az2ndyq$6fTyqQwQ3}&{IE!XRnPYo8suWicxybojlL?3QJAM66E4W`0vLnFp` z#|Kk#IX-GSBvZAMVQ4d{E7Ui!}UpOIuo5vayucs6YV{VSc5Bc z9^PJIa~^LAO%AF}vW2|gaL}F6F0bmWwp+}S?ILdPjzG+O^E`*g{DVIQ@+>bbbNJIf z(|KHu|23Karv3$;R6pD$@Gs;FXpMyW(sr5< zWan@l1Z~;*ZdV?ert@6x{A}Af`~~~muw%on?RMwWYd)V(_%X%r>pr5Hpu7$8#!;m3 zgez;pj|qfa_%R*!K(;T-lVOL2HwFb8FhOT@Pg1=gT-hT>rkHYO=XQ^~Ysj6c+jB<8 zlx>rZ`sgNP#y-t)@jk?JJ7{0Wge3!=D1>G`kR5~xBJyAvlJ}v6l8-lyD8${pwk2zy zIargQUlTO%%W7F8Ka$@$JmKOU?j(|cpYt?5B7&F^JqIfpxB`+P;~Zh7IbL!dFs?nI zGB9n)^d7>3C*sV37h0d;aqHw1Z7Gr?Yij59XhsZXIaO=OiWFrs)>2m3*w;MkmR7W2 z*YvP|piMVL^CC*&tO&Z|R^A#E&^#9PNiH;k;+K@Kg9h0@8cMY(vd-nn(5D(RdirZ? z${XZc%UYPHIPBG%4W<-V>n*dI`x=Rsw<|_*{n+>5`N8-Qzd^Rs#gIr`4j~2_M9>L3 ztYeCgl3|a85ULc{U!pw4=2R&y5AAr6(`nLk#w#%_#>UNIF`;861p(v^lq*L-T(3NJ z$t7%#^7KROIum@&KnOTT#>$j@6}1O%X|85nJ7}JSn=y{9d>p)t1LkFvKORldr)QE7I9u14C|5Cj09_F}TE3qvFyRf>!Umm|SnHT0JA=ipJG z3rIUo+ov%{VYEyBDmbtzXR=VRjv`^V}C>z6k^(WQ6cCdWbP#c z5Pk+zLSC3B{>Z@8CO=H#2%{=Y?8Ft`y7_gTTeJHOCXFH88T1xa+Sio~wdZ!v&X$=g z)74f(<9ieB+``+zK9%Ga#74Vcb#kzyB#^@T)CFVb?K!33Se(GP*s!_a;6(J zsfK?4wwY7|>+*dyZD@tb*|WQI+lNZl;b9oS8%nJ>f9xs9Ccn_sbs`6PB54o_qqRD= zb#z9hlF8>ZWe+`<6FFZw5H6qidE|}ksu{7|nbq0Z)iZNrGpe#zRFxFQhn;cg zt7;OhoY+(yd{0Ftl5#?PbL=@Rx(vinssVz-6D*Sma;v0e6cFFsrOe+g9#>A>c_-82 z*&u$U@)rMnj?jM+rKEVUA%Si?bO`c+>P#^fK-@)VhzSv^HtBm14zPNO%Mv+p$)N*q zc9g($9C_uev=CvT==+0-v15iQJKjcX7mSO{SCL0k^DbNY zx8SmgFHv3$J)JD50wiTB#WzP+?q-j4Dt}>?M;;+QO3I03o-P(Pgx)YTu|%*qvNM=C zX?;7&UC7jBqo01dLkY2;Kkz@B*~{o_jq*eBKgUiYW@4z>gk%T7Y9VVXw=#Ipb&H0w zU$Hj{2q@$E9{lVAC{emV8V9|i)Ss$w3^fCX!D&x78&h!B^Dqx-Ix;j|T?FSlDyNE| z^@y5(N-jguHDj6iVtsQk=Mpg|yIH^2ysQHxcXxMn%??0uF3WTJqJV+x3e4^zf^*)u zU$aYGp{?Qh*~rvDj;BjUC1p@dChlVYack$%TW8*i|BiObL+U&JmwwA4n#)B&`vd6d zs<#M4qewZZu7ePZwAv-H7f5y){3OlYxHzmh)N+KJX%K464tj%Le@$<3K>@v~?kz6N zlN((nRSltNYl&wwi-cUIRSm&dYmsLoi}H5mKZ^pg*#4iltG&Y&%_|Q@n+jZ;Syspu z%`Xqen)00+nHTLsXN!yPpbl_|P+YtoD5OR`=1uI(%0&GhBw%A##&konQ^8VcAyg+x zLhKoc6%tUn#!3c90{&8$3oqP5rY<#XFj2RM9Dm|F8O1HJ?6&Mx{VVLDv`~bt^OUqk zL+!zp{mTJj8j3Rc(&FA~zccNQqGNhvSwTr}jo+Piy!fczP*OmB%~sr+im?%#*J@yP zLm1}_9Rg50x=v()5sk!bL+I8z9$bvuu_q?JL$UCouVy&7GC}pTAy!bnw*uwlv34{r zFUwMtfI_wD750JhVOoiK-}2=Lbq?U0?i(55d~s;>H{uV+o&Zm^saB;lEHeDJm~Xq- zq`>xky<%BGlf)l2P6R!oy1{(i8U-VA(0Kqh?Swe=l438ezkK+B+Lm(D3P+*xT9)(1mywE#p`To+U9y zTR9SfAmr>8c!kOOle7*vRG%z+yKGKvAW%D}tf;Q8NOO}f-cwxM6Zb8tkH@KOFS_5Q z*@~D%C-$V=Df%*$V~R|KhEJa;n{khCrFl&8t;mk@PX3Z>YUO$WT$uCD0F=gx?J(UDCke7 zP~3J&zMoG9Be~)l#$%5k7oWp){NjUlJpAab%G;QtU;KjRk#%dH6!W#S67z%A1@>5h zNs)NQ02zJ+sTbA>b$-YO5tRkpCV zpre!s^O_wc#rZjbY)nmt+ipqK>vXi3)w*oJGDFund-8(T>QecFV%Hg7KV?!Nyc{X_ zG+@dono{!`sWmV;#a+%s$!nz8pyD;#j|yh^Z+7;aG?&5L3j3kcJUcKuEz{!jb_cq% zY-WNLGSA6=S&y0kdP8w_k-=`x3M^fcj_Qq8eQ`~(0nz!^!s>#wOnkjGkU`&8(|9G} z0p%v~Z)0y^He5hpnBLr02{T!kA!P5Yq+m4{Sl%LcXShvJ-^xpKqoII1o)NcMQe7q& zHX$RBTzN9E8pA??3L$k4_yP$hCjttjsthE}Q`nt41JNk5sv_^vEB>)?xE?W7dG+Cv zHk+-rBvPO6a^=@YN?L8UHs$wGe|992?T;p3f0L1qX|2o8h-GKTGV<#%#rYZ0>}>1^ zG_P-J`os;|-H7Fxp+>8_v9u*|74Z~+-yn{MC=wmgI1@S)DLwQnG8&FwPz8@kFa>M@ zE_f)9qKSp5LIO+$8+I(PnRL@WzhKCos%w|;RGxKNPqJ>8uZ>-Lr!oevfxfEl6X^Pv>#GE=vR3!xKj$iAmlG{^ zXl_8}%YP$>V2cXVVV|-sk~+B(^PsjtE@xck$oPEclx2k5U|Pt=OSj>ul)M9y6KU)O zIG?;zCMT%D8V=$=o=ZRum?Ff)X>q8>$(M@5B3xQ;{P}NIpM2z=2c8^0e&daa_fHHT zzv)K#^&|KD3MvYG^A?W3;q$3^3bgz==Cd&|pNYM5Vm?>W=7~Hj+^))Vnp)D3r%op& zO-HLBXEZKd5l!dmU%$J#_&?c4IGq=c4YUaPqE zTI}IQq3UZ!ZeT6n3OXZ> zoJcxVqEf4Eks2e>1c(kQ#G*!e!TbTX*OD9*)JNcZc~=a?P6&&P!cw({7*`n-=E#sm{FGN5i{ncrlq1J zCt~_AmcMBW0V^W(LbA?<8#LPL!UqCTV_@0xapzvkQQUKy;*$}{X88SOEVTwEB zHeA6i62tHj(9Ja!@#U#RzH~in;;qYJ&z!>*XiMG+2dIcM(pw5GPZd z4Iy@YVM$@7UX+_FJYlZ`o~?kbu&m5oJf|V#tC?M%kG&e$EIVVhWhK*E8!$v;p3`g9 z`5PD17oj*Kp;LLRB>zNVM6*ozoAx8D-82Cimv}|O7C}vN-3~8Y;e&D~22=Gug8;GAh#@K4(q5uFT_iqythX5MEZC*A)+VtLIjg_xR;kb-EN& z%B=S3-KI2?F|Q!oUq4t~Hm?ct2E$g@!#}|nsX|a_Zf*#mr>UgZ*f3{OC*l}kcAiJQ zWxThTL6T)6j-WWV_L@wlpb2}nJqPY>bh?OfXB3%6pcG79*VrXpmF#kBp1Y*FI5${i z-$wK_WKJ*XT%1)tqaae@kWV-)9kY6xJQ<>Xbc-=1*B{xnxqP5G$7TN$Xu4IijE$kM z4xy+ypY*Ts(iT84qtQSagzyJ`84kzDxC9QKqr zwr`jJ>Gpbxnj*?CSa!6)ZC73pZ@@#n6m$3oYR73$;%P0Ydpf0x$PRk;Vk4B?D^iFiB9JL>1P@&YmR7^nGDA*ri%@x zKfJHk-(pSMX8kGY>UA1}_$zG`?+D)xULh<*icO|d3BKe49o zeO|cz%q}bOGrO#bEW(Y-j}m=#C%Ve|&-enJ7~89)3D=GNSZEbo&GtsW$WcjP4o6-! zLTU+zK$qwhfg*s21aYLkI$dRO-h{}nlFUq?S1dBKh>DwsGC~oP(PDGk0Cv(^~$WCk5(2y?41!;@)C2g(ny zhqT&|$B~h4)ap{LK948hOhd_E8OUkOWOeX$u}^a`{9ez%wqMtE!UZ*l^Z`f$vOqzP z#)*fLqaE0M$ndab(nZ7%K4;IdtLfXxlne65aWy4=+MXS?N7~E0`-U{O<83gsTDm2o1WK!!-jR+EhiIL&k3 z1Vko33*VyjwnZ29exX-jK1A5cu1Rf;R8d12MQ3va7fcJ*N8aDSV__u%CVk8Y@w z4I>LZrRga)i%H`ynp@tzXRw%PfEXFjzziCs3SLpI+W7_RzSV9l}#=Wrk)wp zTu6=6ngG^g2sizVDOxTC7Tz4lZlGR2Y)hHcvB5EciH%Xf8Qz{;8*rpMGZfsu!4e$D+I1nSa`* zzS@Bzx5i|#8SDklo*7L#pj=nX+qY=*^Otq@Tz+zG^Xh@Fh$TJU^v0@f>t6vX-+j#d z>iTdHff=nAE~vCwM$GA8ORaX(>J3AvjZzZrx#>rTF8|Su-D%mS!88+i8S7d566fV2 zVcAJ2(b&{g>zkVnEFuEcDSM0(R!$1)!$J5 zdGEc-KVMpXo&_ulb6~n4d@)+TsA>bLMsk_ft&B4$MJgjzoWm1|fao!S8BJc3H!IWQ zPB-I6#sDRShb;lD297((@HVl-!zEQIEmM9s_rk7FsB7n3_ERPIqL&V|)$RG_rOY)N zx}BX4v@EW#S=tuSjD5bke#_k}`mbAE!`{3NYZti7(i`X(aF?4S=oKj&!@O5&_%v2B zISc^32Dg2}NuA50)F%HYy>a?lCO$p-W3h0wPuhML``t12UmUkrL><9Twg7SibWg`E*eb|UI2LfZw*Eu9@@ z9VHgS$dZs4sP>bP7}MGap|J!NjskvFR$z(~M!43z13KqU* zL&3H~H}|f3@w)z4=epME!}XcdFMDP8ZT~f^Ak|~El+D?@pm#@4xMX10%s-qOx^ytV zbjjg?-fg|5W_`LL-SqvMIhCH8jrXo;*s`S4Wozo5U)X)+nufuSE~gQ|72(D?MOCxo zS=SbI50}-i>CO)n78rG;YC{LRP&uN>1HWa_`5D$#I%Dvqz=kQg4wdzIts~WqC?aS8 zSF?mHTOP^@@}nprB~Q)}!M;qUK77q~i9MswMtXP7&aNmfaAoL1c3YuiR)@4*b4oGZ zHG1cq!^^8=gUK+GWzdj(l5ZwPMa?Y8{GE{bUBUyZFn0p_OwzjO1fREOWr>YeGEMt>HqjoSF;@BlNvvMv%zaq!K76MuYr0PV%GUlN7D z4=FI!0NLAaMzmid=o9tP=+LtOq(k`!*m4m3Y)Yji&I_i%&jQ2_fSv%tFaYdA@V_047FWijCOjcr#S$>~tWY3PiAkL9G z($YtJ#Ag$}qOXj7Dh{Jh7NJ{}S`=urf~Jss+aj`jVZ$b1tEt~3?Uk^$&bW1G=wvv= zgKTV+?27f6RJFhI+RWZTcYa;4ZPm0K`L=OVapo(a zk6=*a!X|Me%-9x7ZeGY4&gNEKGWigwCKoMYP}M0oDjN>kT(1CDqQv82%h^RUBV{h; zZg^yCU7z1d%wkB-ch(H~l~G%v$6x9aiypCM+S7E3&*;bux|hB3iWIi_*=;N4T1?Bq z8Gr>ZDO9fWMvW<9|L9`bn3f_|m~1BP=oU-}*6Jf;AM2jS+cIJBYo%#2Bq-?)6lLMW zf|4ZQYSKUiaMNTbgxQ)~ZIhU` zQz-dxk?IKaF5S{ReaFH!r+@M0iyOB*wyoy1yjdID+P2Rtc`Y<;ZO8hj z%26zQUHS91OIkyypxM;1y4Bxt<#!H9H=N$GTPz<{U=vnQ zwLCiKLmu&!l%Zs{chM2YA~z4a{As6O6UE?+ZGE+aMdQ+R#AG#_^-=>suG9+X)fpv@ zQ@@*Yc(}@H8JDcjN;*@@sqcD9ozg$h0f{gXWI7|z87`M<%jp<0aVRKh7^BbtDng@y zlq6{Yd5MDo9oz&V;CJS_a&c^PBsO<$WA~{Tv`EGqE~&t7=z==GhP({kb6($^ zxDF+j33auV<;8{JkjJgs(32R$Nfc&|yUZh4)uPI0)C*N@lHC0w{)MW;wOsVbYP`0# zUi66c6I-kyH@>Q{tz*$+pBz2<$>WO_J^snjOW&Q_cHfFwJ9}fV-8}2aj}IOC@y)%x zH`D8pS<;Ez8I`_@yd|Gp2V%Uk9#TDl1u?g4`as#@OJ{$+l+LGgM!yIAnu2%0yik>T zocwUi5hT?1CD{pUD%5&x@Q_Cky`-!Yl3h`1p?V_cxJ>FX9IMcla4K`ra?UgOm2)o{ zEO_*ZU;XOvcQ0$1e)u~FfA#8Fdb;>bLGPy4D{mitM*L0Fjt5qbJakdp=x@)Xrehpm z8;fdwhIrx>Sol%>Is^p(8VUlOw_~pcj532wI58+yLFS`D?gEB_x=j|7@mynpoFqh9 zRZ2RzcMPi!CI*+--hW`Q;E_k(mX<$JnW0=`iRK=8<(0P&zkZ;xWZ|WAt=VQVB^RZP z_a7YnaMYWNKwyV*sr<^Zcy(`xiX14cM2>ZN`JzO19u1yKJXFd*fDKO|D1 z4USHfR>YM_u8SlU?V5N+S;STh8!k+VB;~omYr;1H!=`$8#JLhVC+Z;*x<+(g=j#`( zduU5t-SFOndxz_e9-6abc9q@i)>qH|)iv9m-P2sR92b_?1)7&OO&gw8Xi2vlWXFu| z<_*_$FFCNFwz#lie(UxFJn!h{qTk|tY((NJrWSa{Ue98ry{b<`Q^qo}0XOl7*e$a%biXM%} zw-VYP_ys06+GEKWM=o#mMmnk>A<7XBaC`SF3g(n8 z_`l@633wc5l{VT{)vH?FQmb3tl3Gi*TD@xDy0xpdTDv9Lk}b=!EyVHhC!fmrSPp0BEUkz^Bi?sM;b zo;%Nwq`SW=RekF@?|ILAjt#marOK&DS>@DhiorIJW~y3uW>}Se)@dlkp<>?!WoQ_LkiroABWAep-;rYlqHntQ)%Tv+LJ?_P(LI zjpv7WZEiv2r=F#r)gRl_vi*&lsq0?(-yhxcjVlLo)tdG8f}f;JUH;oG$KE{J+I%C3he7O>f8fYzOm<{|NE77=s!;J(yjke^+9tRR&hOc`Zwk` ztRBj3x3Y;%lL9kavSui=J&g1)al4VHeeB1v*8}eK0E;0p+lFR6FS%3EvtB9AcQwrI z5~y4XJ*CSkSKK}14ex&Z`qws$o|~+`kzGAd(SG6Np3#bAXML%q2)41wAY`geo6I%a zpW66v!Uf+u!{Cf1VDl?ewWp4F%{Rh2rt9czo4)>^u32 z32~AolSq4>)l95ccpmgokUvWP1~>>vkfA6L-kc}gfFZu3w7C4z?EA6T@{y^?LKos9 zCpS?x<*;U$c_&6rLc+7n4{yjS_6Ka4+I&lDk*%WJ5jl5b?sqR`Apxu_El01%cOdM3 zF!DNgmFv6t3lt3=%Fm5tT#jg;>`Toy@TSY$cNi8y80CK}>+viVq!?HV{Vp$7D*2xR z`JXJFUh3VqX86&^Gvj5xm6tX?i)5s8b7R75dJFv1@V5JhcYW?eXKw9a<%nLX zHKvvL>{ToGx71E``G-@TsocpYyG(BE^fXsi<6WlMyAWoB9)-CvjSi$(AkBDGd5};8 zltD_*U}ZSs!2(QY_=@OSst>aO9kAMzQ{Ih-&h_ki`_YxbeV;oSS!YQSUYi@^&ZQXn6C|np6`4YNn)bR1VhWcAog$uHpN)wkWxWEpAiSlaZr%>S2G^RBg-t zl~s0MNt#isgh5BoUk|+4i{}q1{-*a8AC|DWlmiF?#nF;tn3d@yl!YmeZ$Uyy{1!8x zE&x)6Vm|_~6FBJtrs@GErrUI+tF%JE=f(xObv8V zf>E$Nkc1Pq3(V-IMza%8LXpp%nnY-V3;TUMXuzO?1pq^}2rx+hGF7U6`FwC+6e##R z00kot9obSsxI$*r%0tT;u5jT?d+Vk~`aC}au3-3?#mc?;JU952L~tOpv@Nh0lCU$~ zGH0i4kRoJqJw5xf7qOTa`k76m*AhGX~g<+DzeXN_o_^90RMA~`Y< z1Tp!A#SRgs_o_Smqs2p8nle{D_=Ty#^P3xPesJT4pt`}$tZq9vUftB2>DA||g}xv+kQgdm__@`B2(dLC>bj{+HS zd8sMD&B=tt1I%@27eXjg-2Y$AVuVTy*fvrzbuh zdH0Y1V=VGb^&j&n7YFl~o==bG%Oy^O4UhyGsuW>o343&aV>rZ&Cb;Bc!E9ME0xS#B z0F6G`eyDATGB7u8r(W`>e^KShk{i%@d4@d*uh@t^=%biVX3&Hx!lmtH*-0$h7%CdH zhce_zS};tUZ>eRVuEq;ZKh7L0i;0s!w3V=vl4Ycc9T60VVW?~{1S=1xEtyoPiGy)R zxrs{tSl>P4mG$dSbhaKE4_2%`#(m&+RIS(-?mRwS-*xV5ci;WB`??y|pISmO6{r6` zn@MlUs$R9fwPD*}X;!*EE&qIe$JXxF>Hfx??56(d*6ytx`6^@CY_Mz>$NU%&l{bt_IxcIV}GuQ@bWI}>u*atF$q*L2rs+w1$*HWv-#WV&cvs)5U%Mt`^z zr$q%8NJ9#0WDPOvL;iq>D|TQ~v~k8xOX$I=1$Kb$O5LSpt@u|KrI|_8(tUm6kSOH5juiI|E*_36%Sv>~iLPaFOhD73|9&;GL6^ z;|k^x0@LuAuvk=zNg@X__d<4*+y!iT11A!9O=r|Zc7x_32G2o%VM&Bo<)%vI<~d{K z

      G$nAb*>BHY+@`bOwa)bZvjaT@OPRsIy>(|Soh3hZ#vvUv7|7fl7imAwD^;y`2 z7Syi#N?2Et3qCD5KqA!OL>n1tz=~lHx)YcK>`Fo@0i8=I z26E68tzhap^avQ;m`}-|4EX^_;YsgwxqV)*4GU_xEy-zI*E*MHHdVui`j^>#ldo}_Pkffk_|p2J z4ZE_k|Fmps7kn)AJE#=OpJQGmDZG^N<7OBD7zQ#c486@n0co3H<~7MB6P6JV0O;Ub zQO!Usc)0y|y(j=clf)^38yc&PU%Cha@X9OPM`R4ZZRdYB4+5Bbi66blzZTkbdAtuG zfH|FMJVSg`HG}8YDjXDDF(kn>!gRqQDd@nDAm4OKJT37C@SAlyokQm^xy(*eS{9}? z#>WXL5Tv${8z`s=>#Y*U0i+e2zy_eKP?;`ljl8iV)via)K(0FS{*B1{k#GL=Rq_lT z&*P*tM3Xw_=>A3H@C_4l}K>zzjzb(_C>Bd(}IdZN>g^^AF=enS${6_m?}&4 z81KP3MMWR4bIbmCiz=YY`tTs$lQ+JaEVO19ji z1A>Xa9)V+}l8N=q66970VS383pS@jk%wM_nSQus7{oZ^B#gSuR&h5sM$u**bq994a zxGsY1%y;hZJjhQ@%^D5X0dc~r9!wZ*@hp8&bq@XGQ-BfTB8h&=nI@wM_AnVmh(>9+ z)pY9PP-RJ;_@@s_GENZpoKXLVauI6Z5G+MrO%$O5d69ws^~nEWl_a@p)w%raJ;Ne) zpJpj3UHR5q-JTLN_ivUW$H(V>gsgu%ic7xvXrwpG!L4ApeQjnsq4skZ%r-td%QE*! zMxHJyKWFY&RAj9h^|9!@F%$O^zAeZs7(0QE5sLha#cJapn`)DSU`arg^vv^416TH* zn^W=If24yRC1KO&6d|1ZzkvPx|1?+SnN*XzZf5UN~pP9UN z^YK@2{zY6BM2Upg(TAcIj}*J7zGEj>T*)C>i-+O=QsCYsyngc{|H|BF`91>jpXAUj?g`Yp&Sa zb@9>s)^&|5PllR5zIg@WHVv~^W~T0|(rG+<9)9@huYUDjTkuP7OrIO|4tAgF8EZcF z=CNIGp6l;zANME^KzNl3XrNZrZ+jZ$t7rJ7_$x!&&%@D*3HteFVsMKjadxXNdv%hZ*zWv7Z zrSZUE_vxOMV3i%4ee2>-U;Ap0>a7!aAO6<=iGJ`&{ctvHa$_ee07xXw87gH#bH)yf ztiCwug@j|e}rqJ^)`a{zXX4?m9vPxZAuXQgJQV#Dmz1{P~|2F;z8Uuu)?WNfR2Ms z!gQs0*xEa2!)Iq1TdFLShB+hg?udHO`w9sF{6&|E1?okPTjF1f(H$f{U+izuMc}x} zG>7@uNvwy(E+d;U8DfDxkIU!65hd~+=JVHB)&vXD%7i!h-*C0CWSNyI94pnP8dD0Y z`)hi4_j?2V+uK`~humq_h+gauD*Y=GS8D|YVp^3(>hPzII`*T!Gh%##kYPZ{6KXDXLqM!O*kn8pRW^$d^84%DGe_Q zZXaz{*l`&;&HMz$e#yE0@0d1tueNYmNrBzZaxuwc7M*?;_Z0VKDKvqA6pcor(Nf$gmljhR6NI&EB-o*zSY7$3m@#KfQI=D~Fn2 zdmTAd1>R-H$MaW=k9+yL^p_7B2o)_q&^vT=sy`9{2`|-X%z|cjV|}=H&4EYO zZG8Ez_U^l1UjNenYPQ$5E=9H4Fu)2U5;s`vo_|>NX+%OlE3M}ebchBdA|4`*KUQx1(4) z4|fH8J7A%47r^_5ljhEV-wo|UF_8~*i4|;?nN~3`97HRG4WRHLcD;?ipDzoP^djQu ziu}|!d~CF=AB)IpFa$g!D`u@(PnWN{XRy6a)smsi2(E0IIDYf^@R@a0rnCVpnoV1T z2a};9(ml1}-ia~-x2b;PZ`6fYKVHSg*KBDpY02HCFi#F965IZjpw(tskkUYE)26-%zjY_fP2N|R&&h%RWgNnKd7_Mz$Z z53McPycI(9*RHiZxpCRuBSo7wZQLZhH+OgxLa?Ml&sq1}-PbZ_RlPO$sgB{$hD)Q7 z|2%y3=wbd0X23<*yn3Yuxymj@+v_<73OmT`6%)NZ1L)X81E3RQIm{wr(5?La*lW&g zw+P+Iivt*R)L@ZdI~y0?_SS?vH>n3wfTxja}q^!H>&rHVH9=nj-bGGUkmL^IU6OX4tQSJ^Di9Qgeqma`k zc)V&9X9l-`WBM(`#gg~MJg5$6fK65^jpZTNl5kD>^%RXR^?#}Cw#T`%?l(MNuf4MN zY5G)eTg6!C*3O$(>#Oi=nBU7$L-{3?L`sGF!P_n6Fd ze&| z)ij#x>zXSjP7K}D2!9Op*XDa1^18;nFaoFevba)G16V2Wc>ubgB%6Y^e0-%z_)4_fSt^OGEc4m7AF5MwrK)8>6$t#w_l|W1j@MIBtQ>ySLn&p>%GynS3ES z0Pbk|0vB3j$=${cSaWLOdRyEd=xB~qsvb&MaOeUgzJu42fjQMcY@A$}KMk;`cwhyH z3sPk*naR+bF17|o84+{2{rqBHa0dPO~g}B+)$WTTbPxdpKT|aC*H9r za+!Za)r5*uKNZaYRFJ`>L1+_PUoFcyiTgqqwH9DQPw6RIw%8Yvr4~RrcMYf2pyQ%JRVjD}y7FUkhnq$U%f)`S z!1j3->o{NWsA$iDxWOqL8H}%lnMu|!eWjGYqEEd1Nv>l76%|~?Vue`hg0P7h#B?pO zfM#Oxr|7S+8*xy>Ii?^K#)U$Scp~}tv9Z_l-A;Eb&KTDxL~=$UUDi=3m=0YF!B`Yt z9xCbd7%AlBDaa35BAGgS_NmWD);w;@QgbP(dV@(==58s=PGNnKTl~SJmJIG8;R`n7 z+=;@H;$qCXM(pjq&?2`HF9sIWqP!UPtZY5Ucrg}{7lZQ*f_8#Lj4?xU(oEi6uR;Hv z??nFTeLgU!G9zjN>B4&# zB4g&fTJMte4NGSG{aKDIdwZ~>!OY}XMneBcRCDhVR?#DX@}RgBQX z|G{jE{BrfF<-V`I-Oyib>hI6U&jg_-L!EB*2a4?vKl$jD`|sYh@0m=l6rx)12rt_F z#)zt@XQuJuD^_)Sw#!@?QmIr1+n~;Pq9w~3ZjlejL%|?5?X+p z5TAwSJ&sBQT*=CGa^c*DoYm)7mo#p;_ArH`CTeiF{ro0_l%Ve57p>Vg((SaZf8xmZ{>P}F&FBiT$0J6gYOMo zOVJP9;*YE9b*!#k^K=!)(*OVePoRYPXf`OR( z2Jm#WKvGtdJd@Eoa}fD*1a{ilp5 zz{;r=I`!n@H^ISFly1=h9$B|`)!4G3C7tc973I)j^ScXj>=qYFQJZyUX;9K&tzm@% z$!g|GR9=LjI7-15turi5&LvVcy@;eDR!Jn^Ap0ksT~=t|LID}ESQsVq34=SN7x-(_3TSlQGX z?j5O}xwyP_cPVEH?9H!Te_?n@OSop@;L*d=E$ZpL+2w9)ck^Vf$EMe)HP%M2@Ys%t z;@)6xZm_p_V#fy`l&xs-cv@DJ9VqEYPiv_uTA3HPu)62aNJ&n1t5cWKI@oh)w8WHO zl$V#HPR^_xB|P}nZz7k4B6(jnz^bFzm{gw$^9J%oP-GH8M7A%>IUpvB&sE?P3pC4c z80;v}jODH?;mJ9S@)WsK+n?T48NTbY`wl$U;5X%%{k6l5ox27L^EI9GMvvixa^i zNdR7L76i{3B59@BM{0O5vB=55{ESvTl>8@fL{8PzC)@ow#l22zPvqMP=&VpU5eyCm z?Oayfcz9r&2RSgtoXlWmWscF7qz^y8Ee^N6`ul2sT7G7#-&GqF{t&}&zfDm~u%fm|J6@Bov{zdiw9w#cTX1ceqY-meex6j`)-QSdLZycBo`}=dU^2x@ii##MuVjboyj)?|p65v~;cuJfo>4V6LA{*2Z zXL;O)66HlCB!Loz1srWE8>fsBm6UEuH^VZeSe#gfHqIr&$sD6XQBeqCl0`7$+@QI= z$;rHr3_yc^?g#v6Q1*QcDI+6oWC`*=zR(BLa1I0vUa=)|iT@E>yTuB`;8I~Z`Ph1O z=TX|Av|cmO5_k@lky5z<2$ggSi@0<;y1>qUz>7$$Fri8K_LpPDLG-w|C^y@ZCayG5 z^f(%k&Eh@F`;lxFgPeJp8HptQ;oTq!So`VE%WM4d8yP@ za}7moee`%}eN5!%TeYd4K(8x!Y7iR^;k6f4yJ3?UpayYY*jiVKKpHwmQns%Ah;Y(xMG%am17V0Sx=mu15boMNp z2olJ?JfDW-RQeU_Zm~a$%d^Z(3>ATJ;*ym5L|fAy~7Q4PlCZ|j+I3& z3faIp3_x>EgwrcHrJCm1yzV570ueB^3ZmZPWCPbvDV3K>?9P0#85V#NeAP+0eS9O< zkqz~AwKc(#;=j5h=V29mWnv#E!+;C2b19~%eiCcb2tB*-iptT?=l6J&NkTvAZElAFZ%pjUDZXKLRvdltLk9mxxxISPV#_ zywS0!StLMNDSVe5fG&|ta5dpHjAL1Bx>OxEiug1mMJ+TvzUlNPCkMvzm3}@1* zC)zD9sh>pNIrVRk;-c71Y1GN()WuK%C;=ywups(Um-wX|`ygZj0z_J9MMgUwT@_3H zq+S&fih08m*9x85-RW}?68o2TDv;SI#L2>=VTAxHM#TSLcsgQxQnw6m5~0gd^BTS13Lv z0X^tXp*w|Fz_&{S9Nz&6Rez8x&i$ABDG1)yR< zb8z6G!2=mnP5f1u#_~nT{2p00JQ%7jFDnYTN`QMKeNgN^FMJMQ0C85c6lexE#9}TI z*a6o<%;99N3V9yFk)qzB`sE#AudAu1I#`nz&{|DtJ{Z+i167&DJ!_}e_7s<`J~O)h zsXAYBW{M}&S5@3qX)o?sGrgv#xN!KcrKbF}%n}4^oFxXmO&xg$q_>i;isCwNmc1aS z9Ykip#w88;fsi-H;cpsmsoOeK)*NcFTJ1KQuR70L<;ijS8dfxhXGcOBqr;M2>VjJ( zVkY$%hhM;+aVuu7L*5URJ8?J=!w{KwFh-<25z3R70A1F@UKwRxtSN>i)~!iSH!K&o z2sW?|RVF4!ak(mZcC5R8QPfjBxMM}nid{nw#9J%N4^8xR4OLSgWUxM{>|5DanP9W< z)%|0A74&8t_}dC$xo`_UH1eU+QULbBVFIcKLkr2TQNRyDHLlMU$P$&$q~nl=5cMm;|gVlQ6z#On-3pV@<%BSwg#_l?=aRR4%@%C6a45|i@CULq8d|oM9 zl;{CTYe-^r14I#h@({EUV{~r8S++mMpyS>w8mQ>n*y@Pee5TJ;CntHf1jG3(8CFn* zLoz94?isVGYIIlAS9``~2d1-m!2Q8HBO`30^NK*^igE(;T&-{@_AvzHHKTxefYed; zAHWLH=dAvxRt?9R(;=d*R7{Z$6W(8{(2+~Y4@$+T*aTQKm(T!6yF%f}%gxTrNH-(7 zFU6qOYVar3ak?jiUm zYgK=Mc2k++@^!c)j7>nENM6+4h06_dlmKs9(DEQkrT{BOL|!q=X~z)<-f&zam|<#g zMG#w(Z^zoH(GD|9z85S3s1}qI75YUnWKk}ja{0|0JlvSD+U{c7yFmsb*bK;+t z3@u%m`1aF80_~oGnU&oqYX!Vk^q-4K)!Z>vJsnz38?rjZ~evY5E_$-lQ zdPBZ_Tcg=$;=X0L*m-fdd2LgkqjsRwWmBb2Ju*`r-1zXC6%V#v#QPQ9`nBMPJsnbP z3MUn#;=KttI9Y>aLc4G#DxqyDx|?`sA%-23e5=TsaVE5aIgPzjCBTyAjwr-t*f^BL(UcxHq@M8Ur9-8xyM@^UeQ>ZXd0sr)c!t*l8dEJ9MwWQi7s^miVX=Q9n-UI7(7dK9pnI{*6Rt z(!G&oSvlMUe|iBS3A#AqGp)xn70}u+z`VsH!MsO~%QTTl8PkgGg-VF+F`_JswxJDb zK$+Z5m(4Ayqk8M+#}bJ+m&G@b={R^; zJa=8>3d3Y9q;?L4qqw{QJnp=-0T?1CG0C4j(gMr`PcU~^yy3x*M*fw0Ey2{lJM)Om zD1_evt51d!=RjCjUTjX4a1TeC z)0k`3B;^_HMsupg*}SH)VXQtozj1l_Ebv08VPRv>HuHNOWA(+M=IWeKCf9RQ&wWp8 zR5w_>YUFfzoFhdw6K(E-hQZ>>ktMaZpJcZdc>4YPg;bK9Mc;$w!+#p*>VkX&yd-wk zRcHjkCH!;Id;|W|b7#13MGkTIQg!4DT-^l@Di&-mqHhWBo}X{PZi}wOB236P5Q-wk zPkoB}E%(hxmGE9>LB27OQb!7(hCrZ6NV0sCtcE z_qqL4%*8F6gK{;AxS$ZS)@)Y7p2)Se31wR!SzA=NWTK+2`}t=doP2suc;MMTy!46p zpIurxadNQOkeWKRsc_BZ&G+b9Hs8Nu>B+U#BkQg_+IQ-+n~r?r!KDM||8Cc+r%r8f zcBPkUD&IQVcVfC()c!7yyrgVay^fRUc-Uez08k_Hn;%Y*&|`xdX}7q`d+{<1YQusB zyiju3<LAhHVgN3Ts16p9T9 zabT53Kan#H=~3FE*bdJ)X4H461&@nR-&DFpJFdsy1S5Ij1z|64fF2W&$FulF(yd`6 z=6SFv5$`MUl;q`#$&zWNWIbem3%G)0GMWJp<#Cupq`t=H7y8Z>oqJ6@YT&Woy#jB_ zD|Tfiv)aDLYx+vl`Ss|;t2F0Im+$Ak5Ul{LdR=9-no#ohJZ~-Q3t@6mC(3=h?AS=5 zQ7Q~9_2W})Zj~#3CWc=1($a&D5|9cg%n~Vtr*lUnZBuyGpTr?Il-JT^qj{E0QxWSi zHq-R-OcN((<-7~9dD7re6f7BMFY9S}l148Lmq)LXXX&K)_ZD0(UxQA!W1a$5_j&T2 z+2uLqu{mq_b90u^x`aZxi%i<2gwnZ3v%{O@o{d}0)ZwZt3oGg>*;@XxIs`+@i~sKD z(!%<1Gq2QCa!Go5-!6r10>5mA>^PF&QmiMXI0l=ei}iZ-800QM`8Fo=NlELIh~!2z z+Y-7=wfir)ie`Sbc$Gq_(Q1_1+1S;H8s6bghAVG(9i9!bbG3dlb_4lA$&YqaRQP-q z{T2Ovy*=GsOWIqT8ft5xA7AE$RDMB9v}PbFPou2N_Nlne6e`lKt|1~Aww(hji;k@~`iF-Fzmh$!V z0()wzy&yf^n{6^>d(-EA=C=OGXne<({>Oi~%?zM(9%mYg^u3Oe){FI_Z0!|%vbK`b zB^Lm!A$2chPaCK0vWIQ>mwv&oD)QSY%oI{2CyUz>_I904{!fzI(u^6Bc#USJH^rz1 zM~;$aq?4Zt5Q+=18kg(GF?%qD=xU4(C7u4ci!si)HQMnSVRErsEcPcc%vge`zk@;U z>TC@+HiW9(R`M&-1Kw1)70x@HqI8nR?|?XdG2nzhVt>R@n{XVfJD~AoEf26mR)a$} zcY+8t|QIUZ=`Hre_^zM7k%9E=1I6bn!3kf?uPfTcg0xsg0nk=ya-aLo$S4ppOjfV<1{cFDUW`DR_~hE`aj5Y<$_^vH|=H29el?dBippEd{})dhWvvU*yygebjo$&>#5r zb8O&ZXWi`wPxV;Lo{0QGvM1C(#8}p1EGxn(kl2Oc0IRKsWbk2l(h6)sk8``3~&EZErw3 zc5vPea2AS}8^%*PgJEm$ZLSVi(G%fE(4R?)EdC)D+#~wbY|pN*Qz*hsb#3)+=%Ct~ z5HPMvgz6y!LgS7F9W$2+`<%aE7qxMy9D{7zuyc0)LVe+xyyE<*!81^46Ahk7gYurJ ztt0Kc3r3n*Kt^Mt1w@DPi?Zn>t>0v}e!KVs;t-poE0or*Agx_E-2rOZG%#uF5D7hgA#6u-X*ptPJWmh zM(=?oL;n}f#|EirZ)t*Pv)>RPZ_rqN0Gmu{BA0weXq?Urj2?ABx1Et@|4Zn=mh zi{pfBSxqf$*$QwQ1{LeM?@4P2tHmI#qZFOES|k%Sej!DF3d`Rnyz0k(PG1u&PVY-6IMuC+!~{~)kt?S?EdR-LiTk%ZlaxkllZe1 z-p{;~HvTzihPH~gP$a8#s$|`4?0M#$xp%r#IDEUC#Ld^m?iYO+HaR_&n4FVqSB&)c zwzX6?RMyu77fevgUo$~t=DC^ib7F@3d_(@jP26{*M*7M5_Iu>@`8NKCp3~}(XuL=6 znP=6{xAI}b2Y^dGhL}T>;;Z2lSnXPrM*vm57#0F714`5_LDs)!x12~om0Gl8Ft7pU z!Ae_A(zGziVG~dq2E~>|lf2@#SF!epUaZDM0GlH2%5Yi2MG7tcm{QA6;sD2=SnLvP zM8;6H$p_R1T4SPAAKBAU*h)?Z5EXsobQw8IDG~9qDIb$8?8>?Ko6A^AOiEI9>4}a5 zCuHK!D*kT`iB@^!M}%nA&H&MpvXUrCMoOZQXg`S%82K;M@0t|!`zpo1hb@g9uP=v` zIC8HPMxm!a*7=pm@ST%(1J5ESWmcyGBCQ`YpnNl-JTw4Wn6}hCM&rB@2;JdQ)}wU2 zay7Z%7>2mZ!_|pb;;+%))##;>xXpDKi;NW`@O-;E+S^)cYcM3{07k`=f|bUgo<&Cn zW|H_l4vRaFmXul+H)!g2`NLaPdjry7hX z5;}3v2nx+KhD3!zNm9g`*{@7pA+Vq!YXbCm949_QzvaeAv(E4$InV183;4>YHz*O& zu9dnQ8y8iyjIs!cHo=wM^{H*;S;dX{rAs@SayLx3j)hBY<}9sa`HlUfC&x+#vU0Q* zU;nbTb@dzji(4Q5^~-#bGOwaN;Hz^Zu2tcP>^N}H>33R;wS$8->o1P-XVWs)p>}7w zvu#6r!_Lu=lJyPrQH1X@K82SQV;P^K0N$j<80AyoBX(5rBTh?dLV}aZaqxyD>O)Lm zL&QdrZoGgV5o;56Ecki800;Jxl#~>2ipN(_KxxUbI;ljr7Yn7%=X`^VFF4|pWhoaw zwdMJ3vTzO&A9Nl;)fyGy;Q#fe-hFg1D#OtkUP|ftm@`a2Na~lzU(dtqV^UzgkgWh- z4DzeNouYsg;wy2QO4K=v{!A)4V&9OE4vW6(NVHd&>>g=cZ?_>}m)?d}Z4U;Z&VxEBcAEcMk@} zFHXPlc6IBKaOcpaw`PysIMKFl=@B=mrg43Od`{xtTo+%)P=xeYNlb`PTzuBVK1;Th z^Y&TT6vm6GQT>^Qtb<5(`1aY?3wn#G9kA~Dv)R{7iR#1WUrRDf^Cb@!Pr)WhrUjY@ zHCTJwu`dM_Tf<3WZ9hyZX_BF|Hh^zdUXr5hpy`Pf{xD%^ccKHE_@sZn84*guI%1Pz ziU65Tq~9Tvf_PbRx!U;T@$S~9rlh!n{WU!#?$fuUtz~&lL7Gip(fZXLkoM_lK6G`@ zmX9~Trq?qWpNnIXj89s4sIT)3M1214{6Kp%*3t4?mBJ%<$7JZ)oD8RRg5;kA_@|bU zK7*VJ#n)*`Q2`yXV3(XrA_&r^O1zlZ`+k^)?2W;jX>X+j6RX9P0^SU&G>X+eMBWVc zSeZ8?QVvnuLn4_h$S#3Qj>xp)+c&STD9I>-z)1$@j@LixYR#zYTvlGcqSjtCa%9jN zuxJd(gv{yCrfS=^_WGs%I?!F`4_PZ$ga!U>rhpXOaCze7v%azYojIRYnq`^M0=@KRXKqCA+&P z4qFz)5fN|xVOmpBI4mu!E37W4u8>CZ4$wgZbxNyyFt8>lEbVyR1nf~>Y*ae2*aTYGl(dSLub<@A=< z50qM#>00jk%+4K8Z!9-u@t5)+-$`l8rgTGvbA0oz(9-jJR@lFhs)Hwxo$t~oWdPML z7-}!BT6f<_O0IELiq&1)>9FS3gei%+Z{K}QS>~i)?A}R9%wfuJ_6_Xq?aEKjY{)8h znp2XAk39l?xDkv`v!W-wq#4@0Q10d3EMyK>7T^@T7^>U`OHR%j0C#7{ELf`$Rklb9q+Rl9GF|)M&ZEE0p8_kqR6=3W%2JHzG=<~nQq zw*BM1-qv!vBmwA23oM=OTyd8pt+JuTQ9adL+#1Br0!`anzgND7_g=*X!sex%HfhYp zYjh|w0vlJQBx(wo5kb@!&}enE|4I^Wpbf)XoCe5FG-Pa3DE2L-a!UyhqGe7c2mhL@ zMdOvu)4%3wX3;iA9~xTCuyz(aJZ;9eeRcwXt;>e`dX{uFH#XE&Rg@IN?{uQbACfNO zXRzqovzZSPoSef<1y?Y?#i16Z8E_KIx`2!@B0CkDknm;_&1Gi+&1F+=4_gC2(57fB zhU*;dvkxsT->`PXS&?i_^VN?uhgLQ@kKVm!&+JiqXgJicthT^lFzJ1@SN5%aV6t5K z2>-qXGrNS%?CKP&r>@hHHVjYPSQ=hh+BrKANb}VB!=^lUp1rKq+dF<>q&+w2%fQ@8 zN^K9e7Wb~JvY8q&%a=jpGX--a7yLm~_@RlA%jB?_3YugsWAlmA>bzqEb{v_hppyp) z^kx&1CUd!5D(J+;x<+0e)Ky5rP*IhFME*67DE`vgZCSPBt!qy&_js3|UfZ^|F*~zr zsP=JgV&%-Yzk2qabDbS$zjkulqmxBxz7~FPur((X$RvHNRrhbG&MIy3y2EAmgVlLw z)?9o{*2yXzn5xVT*HMBMuUHXzSovevG^rp5enH$)Et%L7P>)Jimr7215!f13@&#Wj z7krI9o91o>B*iNTmDt0zFm`lGK?gw-@!|xd=T6tc zyYK1p7g$iw)+-hDkdAn^=b-%K0yj()5{%EdM;e5*E72Z>1fhH+K6GyH_2##(Yl32~ zqjh6f#Q@VTGL+_rgUts&Gkf$}LmpKb0!jy}?a3i~!T-0f`)Slf<&@$j}c?pxYai#=)x zS|i^AtWv7j9yaC>oe+m5YBNPsd~-2i*r7QRbdpSTHcz8!8+U4ey%(jJT7_W)cNRM zeSs~#xW2b?;O?=q%JE}&XW71NHcmyh)l~Q2_r=|NzIe9J>?+GynwDfVWLb?>>&`A; zb#V&FKIY)9_o1oqGjL2(pt9u+7gQI!Q&_zZ5?uwBAyGt7NVBTK=dovcm7-#pl)s2g zr<4oD_9J?B9BeeCOc_YzKXYHTX6UUBtGhTW-Th>GcA7R1&Q|@(x*T0vPI@@9@ewmL z>(i6eT0LjcW||*~Y<3qfb6EWjb6wCkRM@NWx71YFtH)d2zP7Ondu2`7e^gLdQ|A87 zoME%@t`zGWhDM>m`FaauXi#)3io*US6%GS?7pg|U0rTNFX2md57bD^>E_N5Xne+{@ zR>_ND?_(C7Nm0BF$$D6l0nsX>#YH18*Nhm#82Vsf60 zyePbbu}oK>YKH|04kVxist*k$AZ}K+g@zQ-1^hEzkq&tglT`dvPLY)TxsXYC=PDEP z94)-Mc^kAnh4=pSS?)&=?}VHue`fCRo@2eO{D0ElMdbqMBfOySC=QD5mOdK`2pM1K zcWhqxq?SKP{usj;*(zd!t_*Rf>`)-^#1MBO;R1OII87yYWRX_Lzi>jE&y}7a-vd?< z%dDYFI1Bb6E-a~&UK3LS=EFb24pEwP?k+hyU>@v4?~2?ade@NRcjESon#r6ZXyLUQ z(UOyp!i2BYWOd^kKH3o9Q1p`aZ!h8wVsRL}rA8w;VnnnRlMPun%|?|DOB5=tS_}8> z4wuQ@Mpr@Cj^J_<`jRfhS;{(m;h&4U4weZqo<6T5j83Dl8D1OIg~ zbpwybE1dYp+rU+l6)we&a8e%dZt6}#;wT>L&}ez&LXfn?G~SM3AhOFLP-Q)PI2Vb` zRNH2HK~vTM7Meog%6B@*nn+DC8t|v|Zsyubs`#{ZsE~~UCtr?ZT5VM7hTE!3ciAh- zJL|cRy?m{$ezL=pTisn4Xvw(tGCwzv>a?3G^8-c4=T7lQazcZZ#XVI}W#qm;*ML_O z=Nf+s?}j=z;<}>3h8wU7`gwpm`EZ73tP)(F-!0b8|!Lt;LwIB7RO+F zUle@4%?=3gEB;iXm`+vg`PCbb#rjX$2}w(mnY&_l()iDoQXov&)Uk5cBz6dl{{5@x z?}i8N%4-;JphN5M!6l7z1}Wyl-8xBU75X+H*9J^71OLdzBBo>q9f#% z)Dcdv$7%M)sRLl2h*~lPE9ysjc$;GpL7HILS;lk{u%}Z_IRAx($}@8{ zBDgNvZ{KHjqbuxy+z`x0ma;d~OAAL#U4ymgv^iPn0g_7fQe{7k6tnb^jAs(QztUni z%>9t(A6aFE$d?-xWU+G@Q~5Wo{m(F&}u00+T_Q4iMM|nuG7`te?6el*tPDHutKt#qcb!HY^1eZSH*0*U-rEu3v7qf*(t|^j`STV;k zOIaytw+H+_x67VsO-Ik6up=cQxfujo!a|PZ{JAyG>Ue+EYNImUOt6?Q>DV#g_Ydso z=-4?B2n_5L{)3x)qT!`2GcO)&Z9Vwn%$AoL_zjUNZfE4d(^Zq_R-j~b75+WC0{>Q@ zztlC@f9}m)vtK;dKiGBgLgZiWjeJ||+o4d3 z2P3kJ91w(Ab8{-ne4d=T+&Uc20F*N*SDS&Oat^-u3AGy-ZBhS+A{p_11F(b(=0NuO90PSu8bOE31}Y+*CLCiCf%b&6|4s{*ja8 z|M-d}tvwrGIo^|1*6Q=MmSy#xe09T~Z$66rdPT~uU-La! zgBhf=L#2G7a)Kq0%&aY(gYqX3U$9#fRl!V?XGXFHrG<*UiLSMYKcUx1ors)Y^p2#7 zDhVdWwTSwL&_qQNF0RT@WaL}iPRTW7iDy_ZqP+&w9;u!tzGo)Ks!T4su-;i`OV(r< zgU<5a`VtE*daM1hjr)wo(^<(mp`mL2811#}{a{D_h3_X@yNkRZv*qvjeo~A7Ti;Lh z)}NXa-%p7Ial9YS+7XPONAXE%{IYZyKgfWJKCt{r96vfqv#~0yTvBdcKI79@Gj?i_t>mT^a{LL5r$sDWExNjPdmRg#49jSuUNNIE1Xr{@j! z)lhSOSu$zSNasvsCVt#M__`FnWoPY+{6Bz`lcD&CIDM07qlczA)ln5+mcCI+--Pjj zmp+iAOcQ=_k!zaof4#`H6I~H2cP|PVL79V?Uee(fEW5D5QE!87W(?++_12e~uhGmG z0-N?3Q%+|lXNQKWZu(VyRsvy|O~KyNulS{e59nd2TB+2c6EFyX0P$s0q_0)-*I|4E zObhOm^o{)58KS>OD?luH!(z}>!cqJKltmRck9M#E8F6i>g8-V znuyf{5QN&n8q3oNre3Tq1ul{hsK74aAluChI{+pM1O7-0O6o${R*}OO)fcJj^ko<0 zdbF>;#4MXDM#-WP-m}^tm--iuan)QSn@C-vF~j=#Z5)_y;ViHyhFLdUPl6W=AshS~ zFcR&Nw8l))-H#!EFlFrF3}WVhpF>s|TY2(NaG2e0mQe3p3_Ln=H4euxP#qusQ3}J0 zg|0Sj#baUo)%eF8d#-jo3Yk*UlhF9F_$mIJggj)RJ*a6wX6F4g_8OcF(RF7wAUZTk z@-ex%p3xCe^u;Xs@Ynd4w{C*SPrvBF&#`)i;K9Mr`Y86KB!yEE3|CUY4X$TFa3xxX zhErrDRB9E2CU97zm0D3$ooZrA)jT2WYvW!IEvvC_+kS$dc)Te67y9g+l`nH88y;L! zbZ`e$Kuq@XHs8?l$j9gY%f&5CONne3-V5|?Y1#Z}o&{2(u$SgNBUF7!xk4fmQR*T2 z;%K;<>=p`vIP*}06axMT>?CnX5`-?o2PReqhZ%IN)G%=kp|8Zfv2B|@v@CRt8_sa- zJXkdG;D*R|US64n@@=?y?UVH>1r23_Kqc4KcR zTXj(JNH}E>tO;<8c?~ic1k(Scc}9if@R+Fn3!_pEg*7yy>`9EZMk7YenUBisSQdam zWHj*#SzvyVD=}Z>3lT*a=&P>{Ruu)@E-J@b0M8v#87z7w#ekXq8Xeanrp=b7XsV&E zgoxIO0riroejER;(U#&3_Ei_fRM#pe?_XWHDp1+xWLvzksMp)Ip()$1wcSp-4TjQu zxwXy%D=JLJ;lWjyomjq=qr01)zO7mty5v@Ovn zdX5h~{Y+l0wCHVd$S9dPvcHM_lDI&*vU?iWEY2$>S{{xbpoTa`v1_V`y(iOWf=kNU=yqbO}s=KHX3p$S>dI{rUI+ZrBQp}c6!-L z4N3DQSY1)sV|Dfx=lJc(_5Tsi0;3XKnKoNddN4EB2>scy`@`dPS)3h;s=+md!p-Vh zmp?T#Kh0mI3dOU*ZdwOV1zo)Xw+Rb1-?YZv(ChVf*ScH|H`Um%-TE#6oGOeHVJMu0 z&csej7OLof+pzIcnTu&ax@gP84VUz=7X5_^aD{c0oIv%5vrv>rAl5P@z!-GFxR~O( zWrbR1g*Baj?h}5sYgOb2oV%$!$A?lWTD=;zQaV^k6>c&;^7VXf^$C7mb90J0MW-F5 z1dzFhEoN~aE{{CKzkpnie8t6ZQU=yM&U}XSOXf6my(p(ba*(43u80XzYE@MGi=4*U zxVCf@5u=-$hNIeFtW`|=E7pdrA1d5~Lt2!frg%r(J}Xs|k<(*P3Iz3VMN8Qz+0xNO z7*hCZi#KnCk0gqD@roMMX1;)PT#J=I^I8fb8cfiRkgD7yNZKH&1c!+NvKI_{m$54r z-N;|00nCpmaE06mNPfBtT=|621A}sg6<_o~wpoToWrg}NlkdGX>#{J^j1@1f32obh?JyPP{UeEw#NW=}Nk8saN#^`_8 z>lI_S-cv5cd(|t}hLder&_cD7$THGw%m7Uh77RcV2A@d^oXm|~{3lk_15x&xU{S!4 zYtJ+$E9$v=X2#$&l*0~Uj3z|-5Tq2~OgBQUM@9rdsi|gicEZ!S&3Vn6`vU!^uW#IR z{d9kzZ!^Bg{j?*C+g&-<=BXOn*V?*otjg22s*>B2Asqmfi6HF><5qhhuCF9iif2&NJo}f zzmZvrQQuwK>lgbOFOI{F@FhDYvFIhR?LBq}Y7&MnG|DBYU~saSu(Y`+G$PAh=kyf? zeBwSY+6ys|EJ%A8raFs?M|oyaB#ev>UQyUny5?|)efa$6HV&PfsDzYtQqq~M3=scP z@7p>+JE*5Q4< z1>s|F9_^d1N0}w!&>68P4_E zv~U-Ih_YFTkT&}}0cTNzLxt29_LpE6(_doM2JwgEKf)!lnNgb&qGe=@s`(4)IjS2v zqe^Sm{~xMMbH61^^_`?Nt=gFM6;-z7G}m=8OZTouuTmvxf2Pm5m!8kn?sT@h=4MkY zmK6R0S4Vz+dx7}0`E!G|Qd>r82LEX?r}69%?-G8i>V;pF9nQ3n*b{Y-g5NE5kSh?^ zK~y49>>j4RDg2g-HAVj0lw?ee{861_y2MxOvhAlnZ!_}8ii%1Db0<^NRe9;Q2)TwF z{)R$$7X4&VddR8*F3x(XDBnb*K`sMx4dsrYzs8rn9C_fQHoNZY#tfY{ z!}v8#w)Ii&d}JSYk>6x9MV`#5$jq$B;ighD>2KA8KOe^5%7;d;o;eBPdT?O$g)vyj z_?uCcy96W!@dz0fS)^$kkU}WD3(|NJqd+#9=c(gGjcS`RT-@U$lX&i#1g$)OWt*tZ zN~j1~ywwS^dG9b|7>9|X{#J{!8}Fn?PC$3KlPVl>JuXgIg5PLnPvhYveRmz|-O*l1 zvk?1wGH}7k zkocf4Tj@)9TZ|p*wmkO#$+|7i9%z?>#lF5B3+lG;sHJsD2w{8-iZ;cGu%XOKby^&m zfDh=1qT`q97Jy-+nntKg4t>k#6hf0UVwjq&!~v3Dq^6Q{8@nXFA=Bk=Zfb0RE`L!$ zK0+DH%#;coFf)_wx?n|9gd97IWLJvQHD*|f)W*1)Hme&Z-NAc$8mlaYt&`iH+FTW^ zPR%w3GjojUWKHPap_O;_xwyQ>)r~WsXm=EJZR>h9gBwMmn|IQUzs$|4T~d;t?#(r! zAY=XXy@R8VH)K|3k&T(0k?isY+D8g~J+;o2U9Bq{=heUAZWUm%KdgFI;Zj_BO_HG& z&pL1yu%X7OQ6pPlqyY84Lb4YNeuqaQ|4yXe1;0nHU-*-JDGs>TWU*@@wmt~&i{*Ku zK++GLt2XTnZoYP+r+WQE6W2C;WU{nqXn%LxbXOU~u2pJZy~o^m@YOwIAG>EFGveYK z3~e)~29_NgEo5rfv}aY&{>a|@a#&ADuoKWzG)WBTkHpK7{7XDMTiiIx#h0J=JKjM4 zU3~d@zelgf%g_5szLZ`*tH8>tBy%zy9CD3>*~MZzHegI&n0RP?bwV#f z>M;fR8u~nJXaYFj@$WBc@ZzoT=;(yixQf-R#`7=o6S*6&Wynt-Gv}ftXhwbZf_L+K z@!_wrhbK<6sl02d?co>MqYHl<|L7no=el!0`TW4inKmOZerEAo`^3E(}26lH?# zpt4hU63h>`0mc)tsd&P8WG0bBPDVLek5^9BlRRXZmoKvMDQlQ4X^yW>O(QEx*vc}| zApNm)|59&YXkTw_UsXYx-lVQ@E}NJt-T28P9e?=c%rnhG3(GkR-}_GwJo?>}^`PAA zv@QNRZ(8paj{h9Did&B~Gn~K^h>=ahXD02qdIfaf!EU0Af@yRxGbPznV8$W3+DHG# z5Dd=3vmFFaR+Yw#J}ylYS7Dx>-z~+)WQMA0dg8@jKXCuAUYwYC@mKdh@aq>RuC^Y2 zdCTUP54E)&dU^Afmk+l_Ub5sDXJ!;R&1Pp&MrLuoh5zO=k>B0ey7dNUc;*?-aAVuH z8z?HH+E@AdlJ7PHUCNL-2J zWQwUrS+rwebF>)qD$lDgi?rHrq9cW)<%&8Z+ZdzP);+6-!Q zZ})vS4z}(ng^AHr+~TsTb5k?&DvE`p^C`@kw!ddY=WM^-AXA-TpB0a^dX2`FnOdc~ zqg5f?>WN(9-c((~nsB1eUJ0i*0XuNpU=5b~fbN1O67K^JmGpp24crq1 zFj>e1(5C6eF13u;N&wSDp>R!k9oJ>yI$U3xm4*BKX=zXfovOL1!PCL~-hd}nYfU4V zslLza>0vNak#L>XE2l_8U5zcUpYjyt;S!vG60(nq0n@-Nn8{9L1hf?y$$5%AFAzo( zlMKLl%qSYnd!rZjG8cl&6;Lrj*m8}E*+;%a#q7C#8TsaHLu4-%v*-G>MpJr9C0Ju{P*Xszx==h2ys7w>nW%AMJXpWR^Oa*Qmc@YT3{sfh1zeJ*n>!AV z#O>rXFDb_qQX*pccM-(Ab7Q3OO10weoWv^UuS(4^?er+B^A}{X$}DkdaSP7U{au$H zb%~XU=HuDd!q09NQ?ci(^DJsWMNlEc!bR_vB485#6?&I~#kmN)Y+(E)^*C_^iCs>snBWuAHWs_p z!&>2>U_np-Aqs_76y-^59fqQgsQrGMhS*F+DgxVK={y+=C!5T^0;kR6vgn}P;syf1 zIW;95ZGuv&3@u(NFufo-m@qcsyF6ahJNHgP#V6sKQ4f|?;N}aS1*M(@?hwRX`5$kH ztMhb;RkAyum?6xUN2=KTy$tOf%1IyM(#38wcVpSYdQ{XJc}@+gAe5u+Vfr>1-)iE% zmHIiPP-<0LBKz@hvw8J2QxB!xF$to*tn4a9v_v{PW@*$R5(l7p(aSLma-yF`lRO4V zQO2}e>^9*xg;J-|&3}MJ??8-tj5W({VoOGT7z~z$v}TudG}b#=u~4%o-+)0&%JMU0m^py;5WbU6ACV*cRI6#$gN%PmE)kiym?e_WAM{ho| zaLgJ18KqlpwP?PJan~zM3Ws7PS0;|VZ7Ij=(m?2Lb^w1!2BNI&so~U1q_u*d1^r?_ zhZp}vyF_L%1h9&Ump_d%ydt4T2kC6ePBSJek)or(64j70JL5D^%%&pY3OERIMjEL$ zvAVtsuM9VT_=`wVVZHp+_@(z$Zk@X#QMo;B8&mwMf~*$|?TAeNLw zh()!?vR1|1$^_WuwzGp%-y@1s0E3x33ljtdDifDIeS!BXQ>tK2zOfiSpiw(I$_r2EF#0wex7= zX-ZWfy-dWqn&7Wc92?^Lw5cu(gp1}AaaIximZYylqKdF=c&5fIRUdQym$P-Uh3_1>#L*V|T^%YWTQQE)Gc zj#Ybd9sb7A#=4!O)#ao6+xfg$XvdV+RD(S;fLhm|M!Y*ov4nd>gfy*YE{U?}^uUF< za!#x8aH#r-ZFsRCG)x_s?1?Hx61>#^i?#Ovle4_ehTk&1_qsDXeYVW(&hE_4Y~R^l z)mCM->e8wrAt4DBBq32{6~Of7U{h>tVsHR~0atL03y$O1Bu=ms>^}*1K5WMgYzNrU zf1l@_nJp^DUp_8icW2)6)bpHjpZjRUt7hpH$W7vl8-|WHf+R?#vr2dZ>}?93eaL$y zdXZW8(q3&Vy|9w8Gnh`5U~txVJ+5Ia9B^&&l)`=osSk`K}1 zW=@L*Ru1cy24l`6;2c4Lo56wp-nLd?{1Mxa+Cw@z1t_FVpvPeJ&&T=86~5*!IsVvS zwj$S9V=TPNx6Rj-=Kq~KI@G>4A3SPwJYI!DgR9^!w+{E3y+N~Z^o=)1$~JWte-AJE9D@0z;E1MS?}Dk)p5X zlKfIs$s9+^ynw%SzQ}537^kLpwYAlZ21s!%{FC_7Z2GC;9#_l7=%@NrM)iXB){hQd zbKT6z^TWi(=ADmq&2UlO**y>ocig{v=kxuQvskIBCl3x@$V%0|Gv&|qw4FI2Y?~1g zW-ECP$zHE7+^I0gKgSL5LlR4`skKGWsB0sFTt=Bgu(u?wedcpT@$>xLj{uCL%}Jh; zG?YH3z3l{$uN-lvU#02EE_)-bLmaGfqEET%Lp=a` z2lM36i@^j^ycM-wkbFbPxkyoGZM1?kcaH(r1rIr^G^s-mv`&;lceUMti0mj0Sg|j*1LzVigP~T{2g8W%pWyYj_S> zI{{gm;lZz7$PC&;{`%p@;5h0k^%3!s&!uFtzp`1!aJAfpx(`^nQOaXb4{R68f zUo$O?9#~X!Zlu=^+x=T$Q+h(Oz`b4D7Rb)Mzi6;ic=Hz8ZvwXmhw~Q@A5nsRA(c;J zPhi!`D8PV*Q4W+`&h%%AFq+T}(m#xq6c}Y%IOYGuFC3lz>``%4`ageN;W{D2FXvAb zt`|ax!5$`V0QskppRhl#bpYTPg{xChiem;PcL%yo*tnuUlXV?_D2a|3u}%?y974$z zy`h)7bTV(mJuxmuXu+_Viu4fzfQ1)IS#6M+Gl*tM@XjI}C{e_fz)~~(1OFx^go}pd zD@+VgO4)7G9Ia^KmzXW|^G?|t=x2_5frtkLSuJWFmirl-)z6aKw%AQNf69+2o4=s_h_u*NKu2xkOpc-kGv29UL3GlIU2Gz ziny{OWy3{B@Yx*F0%xadeDQLlS<2o(_5#-FTkw;r@LPR80di${a^=_@F!_W{STy7~ zWpP=K1A^RQG{AWc0yqUZuS;MUIwtGk0F%%-!e>sZtZJ22byB$fCTE3mNny#j-0wKa z-|;#A7{ATY5(>3C3J(@;a+rVgBcls1$9{p{Ci^Y(*Sffcc{uk_344U196((I{DwWkk7Xwo2J+N7HTJ%AK!b|pAYY{4kGAv*dLqvy4?nw4g82~9MMG%h!ud72i zh>)Pz?kp@Z;~P=_cc5dUxno0rweqizKDn!5^OBZLBQ;y5x+lAfbji={J$z><`?F{``2{DOm1B&xN_=>%z-aAdspl{)YiX$JlS*Ce?Q4T+P!CSvU=fF z1AFA*=AoL2MUmm%BkvwO5v~ne4Xuk8Z(Y4|TmG7-ud1$C{gG7(U)X2vph*7St2k_aFk9Nk2({sgwbKNTTFVLR)g#X18>kX6_ifK7^LD(3%^qx3Am&%`blO6Mw&c%f_>lH52RqsbTG@iNcvX?zqvLYz>UAI52)p z_)Xz!pB@{%A=~EM+ zbi@Oz!U6hTw3y);r`k1eo-+95hq$hU#f(RNUYCRE+zCD*rE8Safo5CNGw=guYiGp~ zqo%L(-0?lno#-3B>4iPJpXg{&m<+~nZoFgg;EMXj6$ko23)J8;{7gGCx`e`i`@V8| zY_NTaO6&1^8rPkkSb1iBquN&K&_Qw_)+1A6E_IxnMSF_TaQKy}5;Ue8$7`@E$ZDYT z6z4`RE9QVg;5fagNiy~D$uI6JT*qIx?~5mgpRSuYI`;bOV@D_I`1kjI;Usc5M^1j> zsuic!H%FgawUoJx^PiT6YwXyH`uY{e#$M-zLg964q14(NZa9n9 zOi;TDuTB-dDqca&qz3bUH^qMg9hdUIRcNP{q&wC<)DYQ5oL#K&Gv(h<#Xf0>@P93* zWoigT>5v7?nnO(zRs8fx;YcCP?=IYV_H0=Yf*l9EOj*S3ySTCZupU~D2M}dp1Z0p1 zPgCRopj1-UfmDE{L0Bp_BXe-6r~sF1s3%BNrO)L+9xp^uNt6Hv1uzr|8Q516V3j6J zN(yRXv`*6M0<0$+oFO)>>tV!(8}~liQmrZSAtFzR_z-jZ_n){n2;Qdd745`_C|&_6 zQRX+yw0Bn$zhQ4v|E2g4Y5untR`Xjhu3}NUq&z*8+NLT4h&>ZB>xSXU;MTKL4_2>5(NvV`{--(ZvHb-3jND{FddXHl(fF3>K}sX<3_a zcWM1m9JYdVaIB3BGQgl`(Edbd*c=Uz4j!bbMsS8HmKZWb#F2f-N-YCZ^Dp-WeA>cy z4WVHBlTX%p!g{{O9P!*;c*s{-Q;AJ>++r$pAjfN5Z|1MCn+q$VMg!$W^g`at(GD|L zlaHHFf)gGkjL`@N@Pg2=nKL`fpT-nspD{_6Ha zPIZR=U1811t38?%ESa6^^1dq@fgC2BPG`|0M_Z0$EL-?&3ota4{ld=~6pElbjNWG+ zEN4D!M>ayDVBeQ+9vQj$OZ&>gYr#>H7)KWrMHtfU7o7PDOS@lq=F23=(&_c5R!p2; z-`KeRG?No8I6H1DogE(N)-_l^v(64^Xwun%IKU-I&vADAx$77l2RQz!n7_h_0~4iC zi)Tl!(dma4A?;Pf2M$BcSPuJl~3wARs=Jn-kD653ZE?{^Bz;Ph`Ca{<2E|Fh^ zT@)+Mq?9`}v+<)0fK>_?FB_iAI58~VN}!>yd^5ZGj#Xd&2LHjHbHrA0ZV!I;_2K8} z{zX+Ezi;$v{GZL=1b4se3h_;tW|`+AHh}|wJ9+)6ldK0@X}6oO5jcJV%aHoVbBiXQ z_j%(2L{l^a;mUMAw8-IvYN9Y=50=ni6y}V_#1p!@+OOfCM4e8i9PelJ7>8duH9XQk zu6f_AOYZ2u=QE$Vr+-J%U{vblqdlM7zyI8^?(Spf_V52(&nRf55&P$ivbV(#P%hgF zJMM7aU4;=#2dru!XYE*9;z*nqhitrn4oH(hDKCBQ@xH6g=+{Fo)j2DnuSrwBJY`r+}T|5I8hC@n1`AZ~UL?I$}5UgKfv{oo7 zA%b7rmfd{&s>e4jPBh`?-K)j?cluww_7J)sk1jJp+N~iGB$bOog z&V>V;X|7V!hI{*lY37!kY3Wp(txnUb``f!{N=Hs)+ie{_G!!jIO>f04;06m5lhSV&(;X_}|c+Z0-6UF2D zQL-%8M8VNurO9LRu!LMA538!g6~fS7uog;m8<5bF0Z<$=>AWrv=!~ThmpwhOqd#=| z*0ZNVecL~{sj_{AWF<`R4NgGkKlpO4>1(Gpf9gO!f9TU&Z~RKO@ryT)-?FXE>b6zSef!(bt-5V0!$(Vo0sjr6XTJK-RY$R(4%6Hm-o4{m*aUm3 zePk05gENh@z^#P5o5FcuWt0A&dYa#Ha%iR@P<6enQZRK!w>HY%5sKbQxUH*n{y{HqF18 z8t)9pdsfsZ7Pf}N?MwNqT((flg4+7!-SN!k+t;qWV{@jeXJv}W#OxJEZAP`$7;0Tm z8|!WK8MSJY?^=6eAXVF)skPZ^n!0OK0|~o$IJ6*~Ufk7ScQy}i?CRgMsJ3>|p8n1? zgBgb--Lotk>#OqHtSMi-BNexps~S41JoQ#vC5ejd{Cl!`tV=V8ycsYELG##814$cl zH{+bdsTr|=ZvmT&c{NZ;nf!r}c;cbE@4f$?7qR%S+5^%Z{=Mg4d+qr{ubdtkIsM8Z zJbMSQpY{BEcy{r$w9pF#9&u+$5VNCl{)co<=5=TTUL3MT*o#Z2Wtw?Wnq>7Qf}a=e zx&Pj~`S%XL{E^||kGy=CR*tj|C`Ww>)`1FoTw}hTJRh)=#3_gr0i}kDxl{;kYv6<+ z2Z-9KaRRrmf)9v%3oIc6s!B;|XIcyY-CbAi+=b}Wq&}kAd?}f~ z*v=qg`Yz<^mD(9a+gK_sYBvWN_A#4-wkIW00sJT2aGbRCU03qS!t0D`U{BCdc;~^S z{VlD}H}MgEEn^*6F7Ez7TQf>z0|6^q8ZJC-Ht~03Ejcls8H}fra>z)xEF};z9~O)o zMgqZz2;tZjGlg${w(w2SCvN%RW8#+EX-)9lb?4s^zl>+NNh2U}U?D$~Bn{YtC*u3j zrwOP({~IFEzu-fO_#WN@o7JFGDmXXqmX~A%d6`LC79GxhL8xq5)fs%UW!D26Haxhi z<;h^@>a($djfnhCe`3}Bd%C*z+`o!`Zv+1!?MrS?D^ys zOHZt*eQw9jg{M&o7SHFFa%1v0*?VhY`+@Tw@1_-j@8ozlDyAX1R)*vmpg)8OstFEX z7VygD)+7^dSFS11mFx-!UA697YMq7{oG#wFXvrup0%lA5O**nc@AU?#@pccdV$DAy zoCGHt;vj`zI;;Fj&$PTh>%l2(? zB4EtUObKYWY)bL#p_Ve=B6u5Uat?qO#UNhJUTEKTAGId4Q0JtV+Q8zxfZK@X3 zjWb+>Xi>@EYauzVW%eVEI$GVBI@n?OzlB5OfsnCkK8&5|DCamrArjvzZ2eea>uI=k z3tGEcWzl}1@WCj zb2VIbd(g$mit)yhPkH{U5oVgx68YB(uYT;m08f-D0JEuu*YrNK*{7e*f`i5~ebUibQPJoSju_o&`AJ)Y*PF5nM@*#5 z^I#$4#6Gm$z(wIZmF5?QeK8vmSAf`y2#w7)vrRJ8B)BKgN)#~?`!uTQ|0DRPd6VFp z{-f{<@i{|1o z$z>;>B$o{{)n^ow4{;q+RSbA-ic8t6l2vvF#HRHppXXpf`fu3`V`u_}Ex~c}IT00gr`VHH)j!?G7pR0C*nI7E2 ztiM&~e=qaH&TgW0Rqv%>03?SflE*lbMxWk%slBSFSv>t|8Jjkx8tc9FK&u z2A4%^k2i{X^t+mv(D(^`R>gmLvS4^h94$4H zhaZ5Gt;79Mt~OtVXe}wY&}>Q!yHY>Vn@NI6 z=lb55OgK1wMi%Q`-^r)kkf7+B7joixw9UcwOZ1TrG^ZE`!_tum1t7blUvPwCW|NfHZVoC0N>*dbNwnmG;`2`x-q1uEI!Bh*ug4LI-(31pyKa^-J<>f4jxC++` z3&BW_L(iZ`>3Nh=VTWIwB1uRbnG-tXe?DO_C=AL8{-1Z6orsgu0yp#9eDtr7_ z;U-U=`Im)XnGJW|sj~`i&?&wA#`X24dXLGLnop*PX6C&P1a+=3BIt~QFwn)>9KC- z_X+;Or(EZM=aN0nuS-`K3ZLBb%w3>IePhozcD{yYLL=CQF}oS<)WG75lB}zsp&Egn z1YT64Wud-64);yv3%?Z4Tl`gy`lcTU{P!BNE%m#+>A_@rxifU4 zeo;$+jjhN9#k+;a6jvg~;YRI@W%(r`EIWP#u`mS1WC|#EaN1DD&rGz81-~gwwiR$M zj~PJ^#yJW*(pztKn_Uz@E`>hGolwM%AoRgPWS8m+i;?m7MbnjfW1ul|>fk|isjHuL zsqbE?OPe=~@7lw)4rjIByl`--;QY__Y)i|=V#k8lQOBMeOjE z9&oDuoqQVWX%ChaF2=Jvv8J@_+0d`%X`k#Bq@%#`$3i+LhHrstLSu>l2L&y{IX#6! z;Vb-i#k=;rw(}c%@XTiMtng*U)m)MT&$tCkvkH0%^h2;4V$`6)VWnc*V1sQWSwoqI z*harCN`OTR#Bpjvraf)a81GvXQ zx;6p6>7?hyeKdKiF{bdNk6DB9S&sf#94QA3VMtpVVU`1a5W!b8`2e973v3%DyH18)yT`mw&{&DrlXNV~|iBBv8l!O6DMVpCEBSG6B!ZBE(u^ zQnUr^j;MRWC_;$y&q~1;9Ky_vk^W7<>Q;YKUtvG=dxtaN{NRY&ss4_}THdbF ze_+xVeo&#;1q+`wpp2(MTX+Rsm)c@MTZ*}N^30By@DHPS3 zX$?8ovEByFb}hU@{53;ni zet{`$;s4#BB01SCo)Ie`4=6rzaXDFqTF@5{RWSrfF&|E>Ac;xRvh)*DvuSyIAke1Od{@AfVuFC1DZ4LM`aU3x@US~Eq ztD5}5wxlOEbVc9kyS?=tK`8q!y>+umr&OwuCE}whYHFoY?-c)}_oqU>WW;YU_@YT) zDCO4+S37gANJ}zeG*x8>>Kd1{RvzA*=uO8>#%QWN=Bf9go>ZmHTOIW3brqo+uenlZ zc491OukXcJkk1m{2eJ|O!&QkD0{sD67dFNOb7UfJ!ikGMwC55PgZO2mLqnsRH;?Qb z2!#iC4sAXyD-3qD_7w{J?r`Udbkk%$T#)3O)Q(43I|5vLz6D59NF6H3BJ9T&XIWuT zWT-Wy&(OJw*1!cp>K1&|7kW|c&<5+vp7R^V z(H9tBpm(U{mceYc?Y|4xdw;Ii7JeqYQQ5q(Ze+Jxh0^F~g9~G|5^Yp+fxHiY!)q;~ zEz7A{#RH*a9Pn_Q0&x)(R{r?RkA=Maf2JQ4w(iG0YsE7&`wl83SM*HNa@$S3r53YJ zgCo(-+sUs-KH+(8JqLew(ZuPRg?k66e%|Q`nQY@y{<*?f&+aA3ulOoO24s7viuBx`^FyX}+hY76qS+1J-{t{XG->?0+s6_c@@!@0t zadk{}6q#c(jr>-b+gxRF%5Rlx;7XAl72T2y{DsD;(>XN-J4Upy)Eu|l<7WOT9klqu zQd87sgL#R+&>Ddo6HoKg@<*V*G;;g$hA5P9@+`Sn8m|;KB|}Cja&Q0=vj({^7^4X@ z=9z`EmC6}`tPwTDsou>+t}eora3NBg9aZ*7IEn;yO$A{^q{yX`@i#FLa;20k#*8wl zz5+vADZiB+swT4wZF>mHX1An$I9!HLk*r5i&deuMXQq)z03SVhgQnIEEw!w zQ^4z~csZRiz}>E?9``qmB=|wCIb!x&G=l@amU=%VKgJ*f`DBtm3V%_Y`$XOtf!<-j z+;NCxqAsiCMkddaY&Db-nQV%sEK8AD=1i7YVang{od3PV3RC`m-u)~BU3~Q1TM4{w zFdB_fBLJrd4@3J6wy3Ca&5_ z%L;!S+emL!IFcLN+eU1@6)lOe=1Q%ZPpbNIq1pe;L)aa0}Jr$ts zhW*xv{icV^QE|0gN4^#595TckKA;YoWY*Xqr#?XL>w*S0o{w}*6QKCc+*@Ye?2 zI-^Rq%2^YzwC8^74%$?af$e=wYX_=OB(T|MTQ~$ELbgg1?1ER(_8jo~mKbDw*hR^_MwIbxTcPkJDQDNL|~s5)GYKOQTV~JP8Oa7vIcZ9Y;R1b zoiz*E!u7H0kTHPLW3 zXq7bVZf|I5*dL%_C-{%Rbqk;3{zLvCq_LH>3VZ^gx}MOA4Ej06V`G425R$kER0Or5 zS&8*uj=9B_9>2XIX!1EwOwMNtHo!5Yn11i$!Fs*jZ!+WKdeU8%3U3Nd%w?Q=3UrHb z8JK6yB`cvS05}E33t$zFW9zy2D4u%`Dw@3uuA29(3on@a7@9A2 z&>E?#W<;pS9A{mfpU5?*N|W>3fzeDYaE^|;p@xcDmtJmAtIVd++S)*~`}hKvO1?S} z_caaG7QT}h$@(?goKd4#!}rytE8K;%f&zhQ8lyP&{=do};bNq@Q?5>oq8#uGK+~g2 zH^r2<3Xj<2MJQr{Sf^iSnmHV#$A!f0m`>Of~PmuBwjVhkLH zCR3lWqG;nyFht_aUD_utCfWJGSf-{Y z;XF~B2sFD+Ec6up5(}VjMdc50QLZiD9Kjyc$^{$}pl-#%DNai93`#n~pHLVHr_M$v z%0U(6g-6bvJC5&W}3UgL6Rw%6Bh&p2Hg z-Wpt5Rh@Fx<*Tc@lde>C_0phK{1RZ{%6KRgSL)3g98am;&0)kQ-HDEH^X^p8jr9mg zxm0*dXoCO44W=TDXdDs^EeCZ2P!7mXk}LMZ$#|gyANOL5OwLHXD`3jz8fu#Ak9%8|x1mg=Go9)m3$!oGEKVJl z`8`fYw9yx>_oz45G-Xpur(~U*2T`xMC)BjqYTMM8Skf7(|0lEub&Q0!g@pVeaCU(^ z(5aHcT!&)~U%<#E*C2VX*kOPx{NbpBIj#(%(oXR$iBTIT0zhiyq7)MPL~~E*xGtD% ziCA5+#N9;m4mqk?A54Z zFZOCX_pg$4(YC{x+@QkPvXVh0Jn)e)>m$m!9`@8PpK7g!Pj_hLsK@=^A>+B_2Q|Vwb*`1Q=o+Em&Du0a5i`0Aj$ ztFd)NRHzVu#ym7)J)D=5-CjpIsu3&#tOxQYl@z8a)SRFpBL5ABs4i(XyI^%IDeaT+ z!gbJW6ae~_RRw9SP@kL*1w%DLef<9NRrX-D%^N(lVQCf)q~zi~J%@U(Tv)q(c|fDp z#*&ju#Q!5~SQ%}rc7&2^#^Zf!v-xeqaULX+@qtZkYfpvJ#(>plr-C5= z1Y#5`^XlrLMMDt^sLhON0=@;zznt4Z@)z<0vV;UMrVn0cRvCc8esjNuiHreBa^Ojh z)PzgO2!a;X^T0t|Gd(BQNn*nF~&#?_x$VyJ}U z&t_{GaSqAVi$$|()h8zaU=uqVy=IlGCir-;;u*MkcfRPi*OMHo$$cv5{+z~8c<7rh zNFIS3EgTdY`8vd>f{46P1RmA_&Jc8y$cY`e1hSGq&PBYUOm+piP<+z-mA}R8u?T?V ze4Bj1S{0A5qFB`Mq6SJcScGa8bya)#+s+nWb9X+S>OCIlSk>A%*%v3fzox(9_!6Ic z>8i<*zV0SOY9jrcI>_Ajx*=oEpXVCU?(=*SjwU#x-@k=ZKf?(xzJJTp=~}cDjYfT5 z#r42@sDK*#2Gz|5{Wq+hnh>h7l>8*%ltOu16gAP}TM;XedMQkz+5rxOQOd2FK{!jp z@nP=(%GnD}qxp|#0b$a(m}Ub?k@71D7Cni@!*zAGMd8KZvJ}v*bk45U%R~a+3nlbKGGIEE9~gpHd=kpP45q{?AZUru9}Js zx2>-yX5wy^?znmL{+T-NTb6G=!v91X`)Vxwbr^dc*Tfym+v6b}0+L*#*9A3aQ>R1$UHO%It0FYycYb#UJm6oO1UK6=x~ zP5id#?otWa=kXDZ4fJx<;TXW!tmdZj8xT!VyLqKJ#H)lPkNPomO42}JI1sK!4Jf6+ zD}l#ClBl5C&8g(P3JH~R$Q}g&l}e0e#R~UShhrj=3`Y}@WW=nYJa7dG7YPdMmzB06 zY6#%8Eoy;SG%ONG&IzVB$RL53t&YGJj$jtCU;w5yRNpB#mPw+%Q@C}(@)dD&z}(el zv~A`swL>|%q7kUUE1qhvQ8{L+JB8a9u9%3Uh)nUqlI*x^fUrT(oeP z_#Lb=BZvGN)OLZ}PcAG-(&>w}M*4Csq=Lk=E=6nUP%bess#M#t8H-7`R}q6u9kv~6 zp;G?+rS6)217jGQT)ARdXFK`E0{&7i1La-HrQ^AXNEU6FiPE8F5X9mDgKL$Mkd*`^ zX_(9xHZxB_fc^yUuD!nI@oaXyxnl1RYX;Zt*xA@J7#_NEWN6=_8ds=g^Vy|?T|I3Z zj$VIsLtFQer}ymn^zPic@nn-Jm<-bGEJwpzD0)$_sP?jTydfxFc?IJSelzitz$IC^eu~LKUlSWOP?Dg*7j2(e85Ce(;ko|4?vCm> zB}q`AL|#;gOEEc!0;Va=(v8YkH`H_q2Z`q`$bYYQ&%)ZurvBK-scjvRzA66u9@FUc z>$82^4sYx0y5{MmvDviuBs+7Up&(3%{%iitb;8yH;cxmh?0^U7ZWo zWNU`9m9l#(T*~mo%0*s(bJy7B8z&Z?y`nR{VsBUXfvLq6)>uuwFTQruRJ~jo4fLVU zne*?+2-l{Ag>_6)Iels+Qd<#)goXj&GbM^c1~4Zb3h)+H&&yo23m4@t^SxBX*ANBp z46rjmfq;{S2mv;@C>x^Tk}}!B&o1J#yx;|TyoK=Oe8(LvJ0E0-^4o8Jl7H*TJNSR@ zB?vh|%X@oE!1CVf`G*Qq^dFtoS;)j^&{r)`&OlWZyGe1qO~r0v`A}{adXT6ECeCb+ zm~9c(x?IjAx-?Zt(i-%g8rf!?u&f2>2Zzh8k&D%C_MnXTy zacg0}*dc!$C*02@q7MT~S0VB()gvvl92Gwmps53q0j>sopu%OP56GM#^1KjHhcIb0 ztNhw#cC@jcBgq#NOjLO(xSr)oiK~<}GlVS4cb43i0OS=H2HgkxB&ABGQj*u2XjXBY zFrAK^xoFgS5c(D0T)v-NC7=|E#)8PriZJe3vWS76Vn%t{olnC}N;xcbII&1{F_vy< zB6NcAe+rKsUZI~~{m*02rDKoJu2V*ZF!}97FtldzYO3;Qu~5yESDbp|4}`bM^mM3b z$Hu-5W4{#ZrIT0WwL!hWD<}k5a^|KuIVM65jv2^vIfVjMD)l5{8`v%ig#>11Q7;B6 zB4t*Zf)8=up85CDgyhQa1Mmc{m&?2tRDngm8`GgPm%Ni)DKeUvc?~CYHD<=p+G2}^ ztD?bZm9$4^pw$>RJ@TGf+Z z+v(qX;1L(!F#Un>J)22bCr^%U>FhteGHo>vHc@402nS&aZC z&V{o=O8zL5XZJ!=gAGWO3Ooh#OZvDIt5$&a2k!t-%482>3MGq~{C_iF@0|ZN+3_=9 z&%1lpH*;^Kp;QMWFvcW*=PXNQM#+|(>Pjd>P#2xwcQwUR%{@6^gI(+CPNm0N0~P7P zn(X3$R^eUI)~rDW{-7SeD{RRs65yWDB>UqQ$~C z6sz~ZC(EZG)WwlHUXH>&FiHg4tk|EDf1wnYp{N9M@X6%^CqOP93Ha?+lR+Wpv|#!y zLINaTzjC%00HHNXn}pjcT*InNDe7lZwkYt@noQbkYO_(Vyh{OM5vx1w?#bJ2y2?n6 zyQh6(rOKp2R=X_Tpj7oO4(8W&w5|+`|5fQWIaKzDkMCBgbOzn(<>?-4bvB?MOt+8o zrm)SYP_{Mtj;(IlG*}&rU@p=B2CRcx#TMvkE!>g3Ed)6QYZ=}cs6P$0u_%;b>9n&! zsU!IWz$)PC3~|E(*u)1%xMU_4;TN6#ZT_M+VV02-6|8jHfoes1sf3-N6Q3`tWN@0% z*x>Y#5|N!aJCKJA+ndTQcEMrlWPS#|wxS{85KNs-fmF~u^g>JD%_lOedSXFfi`I2% z8*8UrDy1&$i<`}AV|snfN{>>h6@O)`8*Yj=*&_`VLt}zEeed>rJ{9U((^|KzE83GD ztH@XBoJt^Y{lAt6+93P}4a|H)OIBED9iMUrnEiHCweULuDXz4Cg?3OUr*2R9@)`9hB}fSO}|D_S@p-& zU;jF-b)Fj&egUk;1Axk*c7Y8?1LCj5SyEiQ%!U;vNu?7cwHP?QFf?HWIq9JlOMbi= zW8N&7PWXpXd{s14-Y(2~dBtO)tiLkaSD*TKZ*57E0(Ku^4zPbjX3@6$)@d*H`p zBouIb!^bv-R8PWB$%Tz%1Wn>xoDv~Yd=*{~6-FkYI%s3yT_gm!wY)D_aNde0GHfr# z;;&~yb$X|NU(fOG?&Cf3pHT45?04u>A^N`XS3m#x>X%-U#$=&*8=u8o7&z2R0GNz< zhABoTCG7EAg|TReWqDW;0YKPT@)R{KJl6uG`nf)%t z8F9zF2_LbXDU9e0T=u(1j=(OV%B(FImwLQk%OQRPmk-67L@WZhg^BPBZfVkf%@W3V zR!{l*&Lf@pS9bMJe>(IgfxE@?KN9|p&tQxzxGJudvI4TO%iVyk2Qbw#Eh8UOkJcF|Y6BdKW zLJ`bDcg&j_J^;|WOB*-a)Vfr6I2|%s0?CSa^u#xvl`2EP;&E4e!sG+>qa9#~l-}VN zf0`WinIl$@PHwPQk@M6R2fwtJ|IYM1j)1}9FB zqhe(GKj+S4kMLbSh4FN8iF`GzYldTnidzb2aqF39NJbWTl;uv;o&3zx(e1JOh|$1a392Zmxjg~B*6 z)gmr71xOJIZs`x;EF>P`i(E;7obr`B*_EX7T;$3No_Vp0=0A?)w+>}ntzq)o5`iF# z{gx0p7l~KX@`EFdCE$}^4XV+%z1?*UT_)F>hKV(ZT{n7b-3AuBHjgZeHX&T+skgEC z^;$o|b?M}`brivF@~gEu%mpIY8yixE7x>|Ho!behG7Dq_^Dey2;*4PqaqJL;wi;WO z#Tl_XJF)#p!}j5!2_O*hz#g43|*G<6ZKSo$L~t=}TV1f)1Db77t)&bEpc) zk2z=a%;e36jW9b7bNL!D2*kB?oS_cNvx#kFHjgX>24Ph(R*d;#z=KcBnn{5#Vi2$= z1kzvPgs(?wDN!ojhCPOVB{CHjHzDC)4xuA;}Qzvg-p-C5Ij`t$Z|_x}Y+ctIEx`}~ zbC4Y#Ua(-e7aTkNKZ_1bb#!hTh(-rCb#_b*M5&z(&|%IaH;dXCCp`v?ItsO7Ejisw zt(0UF)G0Dd;xQM3ca*LynWp6FL`6Fy9-+Kyq@q)9EX!ns!ywm`=3ig3X3dg=lCH7x@?hK^>d=V-&P2|Nb2|hxNk0 z^5-z7gEXFl&~y@RnVMKv(xa^i$CO%2jop{(2=q0mG=M5b zoi2~n7HX~!wAOkE-*)~5=pt7FKMWU1G1{13BoHOlJYT!BLH>SSTcom-tGtR zg1K>=h^ZF6IN!G=1{%F}ZiCFEQrV2rkS)>Qn5i%SDSmnehtyajSm-ZXvr#Q?tifAD z!r$>XDRNu`cYWS~$f6uTWhI^Mr4UdYPAM7G1|>{J zxhs)w2`Cf08ewuwbpw~On$2+lu%a3OxJ%09Y()WcSz=xXM-%i-*M_fecEu=@#yNp zFI*l}-aumnt{QuO3Nl8;g}Ls0rwZHM2)CdxGP}MyNkru&m0_3M7?L(6j)gyOAiDY^%cl?_tx?~4pb&VCS z@qc%cFw6|q#wNatf7m{15^ob0LPu`ofJCX)tI))dh0+!&)l16lf`_J*Yas$R!vpXd z346hduhVdie4|t^T>>3YR2zYM46Q^yB!!t`aae#39~N0$3UKf}&FlK(gYA}xaoAz~ zYIU0(aFdF3)X`r3Rf}UN7-=7j_pcXk3$-t69N6iC8`tc(MY*6on2A`ekxa0Cf$|oI zxl`fVIncPQJw(fBEpR`ukzjv8ro;B)nVC^`CVZ%TinfNP!<8-Lnap@g<>9RO$JQ+0 zSor(Y;?_W*b#aP*&w|2%=LYaDm;4co8SDxMC4^-`c1_9HBw-|zeGc7s*6Nu`s^^{UOHRWE;V`aMB`?7ZK( zQ!ZD^%^S1?cK~^<@ExHA?+S5XKC(g_A>I!CsH6uJV>oQAq-=8}da@eYv$OyNWC-nH zrC1ScBQaf;$4;TeUG1!H37ZN(RjdB^Km2L6>i6%VvY$<*GRcIWYBeM{E1OhqE#EVh zHMmuUSI!0_?BpjqIV~*18c}2B;E#g?4k&4kkHJV2M}ilrqg`??O4YRCozx%=S<|R# zOeSh;q7jeFMCF#%yqY3^5^WQm%9kjk9iG!E{^4Y!&1Ux-*6IWCq&JwVG&&N!i4byW zfH`XbRN+0f>JNWnJrv*dc}$Ml#)f>%Xbsl7E0He-ekzk%R61*Ib9#$8IRC!z6Znz{ zueUj`fgVknGi8@~0EQ}5>+Phf@&d&N@b7x8Vn$*=MR<>(bO}l5OI!nADuOZ*TbyA> zXQGzK@qk7mxqC4QA&R~#tnP>@x`1_aAnARD`+Ocgz2A4-F2 zk~ApmJPqn)d0$6cpIp)3(%z>a1u7B&j`!*yK3lB#$TV zB;8&z2`_QMjD2v43z&6qiSJ6bK~)qUolDpTu<+&vb?k5ZhnWNFgrsge>IRviCo^bN zCiAF#$`@i7(vn?pR&bI&pw^N?um)q{MGn_eCX)fPgD$|_By1t3XdrMTa^GnD~ z96MN%Sb=0zl)i#g6+p_4Zx9g46Xgk9XTfkZSah8cO*|@)Z zW>Z0x@f)h^&7`6mEG>0SrVVC!qKePsNvL50o#p3{S7G8ZcA||2@)?!{)&_DDkz6mg z0CkDOb4(VAcYoH)i(pm~qWsU@wZ3Yw2Rhqkx8#J=ZLq79Okk-=U|pR|ml`$w19VJn zMBBgz3_FE~#JH`ISw?`+IC8y7V{aRkbYe2vHIyD2EdMs^@q8f?G<;s} zuq?P~=1nti93Lhvoh$&?Afs)S$7THd|PW~pI1%AO2L>nuItPU2g*h1@=All?} zgiemLmLS@M21Bwu3X{WVVhC;G*mI=qCC4jYm&#^S)x)_!AU9ksKh>N}G%xd}`l@UC z8ohWp-n|L$uATdC5|OZYq~{A;B+gPP^gD&`<^uN0@3u-{J&8OX&iPHVUoHD;b0XQi z!rRzaQ{9(>+kuP0pZY$)$wA@+uo&U2!*Ya+2I?Y?3Vtuv>>P5`aFs_gJZ7?>U=0$F zjTE=So{ibl%{fnQLw}VkHBfgVGnBLs^;9N<9#k|}_$c2g08+A=h23f6Z}zdhG5h!H z22$>-f%Q30b1rRZjB}P0Im}zb~twS(@aD0iUB5e+T{`%_`V+GPC(bre-KON%sa`+Oc zT5=h@Q@oQ0+|P=fZQ26SEUDgB-ys|jehIwS z0_i;VU_bK0R+fo^2hmTSTSbpr=*_!nv+ldtcT#c*h=-szGfX=WO~l1694L67zL|gK z>Z|#-!mIP&*)6>j;cL8L8wrOwS>q_#h;J^EPL70*63b*Mq5QzpH$Tn4B^;*ufLG6b zkCuz&!z=&+z9jTVih9UoG-EQ%82xiW&_kdH(ldYb&_h>$90brjcRT+hjMc)+&O6v- zZs*@Bc!h=32)gGn;U3Y&dAaox)B>F8kV7M04^Ay^$eW-2H$PN_#8_y5Kz85!w@;hYT35Ux6xM2;3bSvtp><)( z_OS56#*p3J?nwr%MxC?C=!muq1Z?5Ir4ZbSr!R3~zAUrO_wDU^ zyL>k+5QTcTT(95$t;HIx!)&l?HAeAQuCUKz^krfWXDsbAdMd)MX8xc-`zFe+TTO3j z4TW2-cEk-1pW9=N+5$B0kI=wD<|x^2!-}3Hl?e(0S7cyB>6)U22QMa3_6VzQFZ__N zkw5U>Ho5sEofR|B2gDMcG{HBa8hMhe+D+#c`V9k)csS?+OFbAf1$3(XTtX8-%CCeULp8ha(Slg-odB z^emDa0=E#YESuWV>0i@NLHbGaN3}>^mp=v{WBz$m ztzo$kjJB4trzA?jG*Q7N2y|wd`LL<@;p7W(XBaLJrMuQDrE*BP6!HQYVBu0sLZA#F zM{9P`{Wos&`?uYA-=b{mK+_eQmUTwH7U^8JX=l@b{93CufA{aso%`M0d8_qk)ylJ9 zFPwj@u$TYnV?6)$vn#8ptuLUhSjUJH!sk#v{4o_+z*EEv!8{GM#g<`qD4=MLR0Wl2 z9XNxFCLlNrM3iyC?y&RM@Y{yhH#-Duw;XQ_x7HRO{+hU7_I^R*N)0z?offSx=G08z zFMj}%k|uox<~%C@Byg)W+>*~%*#xMvMT?IREG!8i4JZ?&39$&WVJm;pH0KKjVX3LE z^ug^cBy z$FdC=Q$0rvJ*1b5{3fhUj3N~S0>_j!01K-&2rVXulNRz1rRjzDuC1sr@Ztxr@LR8~ z@ahZGVpp_MXcIlr!1OnYb0vQp&y5oLv%&}m%se6{u@*>3_6ocx%0+_CoLPYv0VGjo z9wJ8>oDTSeSy_yP3HbH2{OvEv#KLAn(5Y|+jD^jj?2DgtyUqOVcD>4^M^( zy|+!)?CGp5fNH{Ruh0_rn=`O3W~DT3B5N+S*8?gR(=R9p;BllL0gDvnJw42fm~h zj1XLg&&X(PGV*Px(R3!Fq=N)^2R~a=#*&SY2N-Phlt&5tyKB#jH;*j4?JGOh?rAe8 zV`ps{w9W<3}sO68hnUtSswx*B74@%m01OCyyf z0nSDb*RwH;m@OEy5RF+W-=6u|ksdh{u*=~XhhS&yBeD3Z?k#O+zjJeb;O4I$_V*1A zR;uM*pU$7i*MICu-Sp1|r>bGu!3EK5b)~@>6vh8An-`vadGE2W-8=xNySCfs#2|h4 z;bX)57uRCoEPh&ZwZOE$Eq@%o$se&b*LnW8vJLQM)N@m)MS{4b5Z1ylH9=7TL?q4& zL%=Aa771;-@)?kw!MU;}bg?h$Y5S3%y`Do7hRYF_D?w0l*TCV{M@f`#7TM>A}as@V@+@SBH;} zUuDocI(C2Vk542Pc&2Yy|1{5?+tcaTt2dNBbqmMWJ$;@#cU315_~IN4BNy*u;xD)m zH_YYp9ev|GMUhmL23w|&0n!im;xw<3FVsM%(39-7Q7y>(k_GW_pqv&YQe-?e?DI=Jl4y>*+` zPDCOT>o(Tyy>nTxdSrXo?|vsNUFHg|cy8U{uYP36lj^Ce>PdNqKJwMW>(8wi)jDki zc0N(qE;C~fnYcdgjl34S3eu(z{~wmjBJk|#kCRaFB;9juOp z)Ji0bFf@Xcvui+6j*>MdiF>9{QCthbLCLu+ea-@1jp>s^x7|;K*DX^cHCj*SmXYMv zOnzCTT>uAonl}d0(T2&)mWTJWb{_cjjtx&-JKVnav90SKYT;eOyp}{I@FrvwkNLT|8Cpk2fF%h_{x#pUp~8NxSJEszg>8uI44O$ z4bYr~u_OhFF_+1Ij4nIQ*{m=>UV<_SQVIqYv{qfb-xs91QfWp8oa7tR9~rv!{_5dv zoh?(twa<25UF^zLk8NFjZ_7guJ$vuHbNe&9)xB-6UVq0O*OQDHFZ{K9ulxa=YyXAy z!ef0sAuh-Is^-9d1vv{P9o>P9CV&}}(Ik9>2r+=}1_u__1kzup$c|-DdvuU>%Zoa_ zC3o4pYoXQ5xfFafP@0j55K$_<(CVc#h#gKb60bgfz9xO5@v3L8>$y_0)7 zoxG}VRTg@++1SXNLOJjnKg+*+;?|KaJ|fALWtck;`m2XU zg3}DIgZf4A+TwJTHR}|CTO(mN6;#pldeWYw#hhfUP~cK7RGpjez5DKa$M%j!@9A7~ z=hiIhC$X9`xvh7ue)igLKll7=nN1%>VW67~%WisRCkg8x|GjI@;eUrb3u8BNu$t%)TN9kPE(|yDt0`H((=vzNCOdH7G0K zVo*4C7-}~!On34t5Ba=?cZF99pMeG*5#E9Z{s$UM@S0;RA3}RsjMi(ohz`ygjg>D5 zDS;e%Aubqn#^>qbY#Yz0;WJ#QvWFg4Dhsb0f*w!MPG7f(}Z>ofL0(=*1t39hE)AU^>3ye zVD8;T{o8t>{w)cgi|F65CVs~cWwzF(uN~R^g(d!&In#FF=*=T%et5@duye9yyTzqe z=qpD1>IES@kuCh|sGxQwrhmhK`ZwV=XEN2&4DEXyJU))~PrZBZrgKj|vBKgB8WV@_ ze`&WRY>qF9{BSpaY`nK{TpItSh3CZsvNTo&JWU3@APl0jGnI+zgt268Bpj?1NxOzf zy@+N_doK%A1@#F67R7!w=?!OB_AG0(l3E?r1>5S^fBM?t?h{`*zI=kI)Hj`2e`;m5 zP`&BcvSy#NvAG)>b!Uz=>R8Bcs2JM+H#cp5{BUnLLF)9HMe(scbe`80J}T47zkyty zE}<>2_Mtuy0#IbyQkqUZbT**f1Soe>c0Gg&ETQtQM1PqO&Cqd{V#gUF9RH%*n%Qkc zqwyErCcVx2m)<75jS^4(FWyF`#9wrq^fuc3f6;AH-y(nMZPMF_STKPK*ou9~I9I}x zRh+qtPa55muf53SGTGjX%(FA-AU;F5yk)Fc){i~axSeQw%z^Nl&*S|{oyAgjkgT#R3 zVrStl*{jgodjyZ9q*b)mfHMIrbNTC}=g~QH`Rk3I|ez5I33 z^GGwf{B_dvC|UOM*GbPKYQs2;3kv?hG{11XOPUN_o{yBToPoX&E_Bue&0589cl6}z zli+w{dXKACJ`Y9NNm#Q%Zs?E8n_Hbp+l)Q-K&ErwinQ4}%d6GQA?uTkxm@tF$T9_oV-(~AipQU6*}DWXAObN3vvVo-VirHJ+8#W8`azp@yD8jUUELfu348DV^3{*al;)Ui zdV?Y1yZvkUJ#G~qrr#CQLHp)iyEfZ{sqQL^rK&siKOZY-`L*JEwf{eB-vQXvd9{6q zmL*HpmMwY7vL$cJ+r~?tcww^)HU=AGzzhRsuMkEEA5GLRs;e#0)n>?PT4Kt*_@{XIn zv9+Xn=gXU#ijEq-I78$Ufg$RX7Bw2rHb^Uzxc(`OSJwp-YqPq zi~KzdW(2@6P8N`1;IAk$_?*n(({p;3CNybOpk-n`yNSmdc?cW-Yks!$_=S%?61$b0 zlyh{bN4Wo}(05YaW9Oth6i?ziGPqY{Tto!*yz#+zCBOhsP_Dq3PY@7+q$J7V!2@96 zD|&(IWo2p@j#B9yi7Cafm=d|eshprhK^u#{PIOBsPDFP=GK{|%o07Wij`aYumI$;G(cIxE!Lkf?$Hw_W zN|V=YO^99_NG-QW$6U4fkDPnBpw=ZFGnc3C;-83b%1$edmb&kZ%LNNgTy5r|bB8l( z;`u&fUhD~}E4nn*-yF|Zo{(yt@%+4`c>Ypq($Ii#TT-f|h))t$R{`|3wia35_L|V*g zsWp2_euJBD3cgKTtf2SB4GjP`aUeQ{|1>ggXt364C@YZCF=&>TQZB@pJsdh3S<$L6 zp66AFgb_C{!a3OJ5F%;;{2oeW6iWd)xn|T8(=Tg$7?#crhzz9%Xvy#o0SwRw3h_LW zb67xH9_7NPC&fxnJBqUQ9XNmfz`le$2j6N)i@8r)<0wfgsE;cX^xjxO`jFSlL*)yl zHx)4+{?n+~p~1uqy`i*7o@2-d8YLA7))~F4|rdWCO>5=Ir(G?@TbHyZw=2jM8(r07l7b8JyW0fCc zjprcCVgQq7`+;~wdU5*YYO&#A(jLGN)z|}=(UBoif_MCGSNWfcO=gRq|KtT}kudL$ zi~y~FYRp4YOH_q7zae3GY!~kvS@^_EJyu>`cj!VF#%3l4o8T_(8MRC2jN7GVko~h? zV|FQe$IyyngeH{>2k`HgE?&4GDlY^#pKxGk9X8%hVLOx&+iU7y<2&^iDLrAux z=N1#~qdypt>_i73i)ocg(}7556f1GOLbQ_|mv)7;9(T_e*$&HNoFWLy_OUlH;U11D zmZdwLtS>0tX>OF7%0of<{@R9~r2+x8ZDuCl^9w`r{k5UI3yNu?CLt)`AA*1{jxpNC z3wZ7#hZzLo8gcSo<)g60I(UOTn?|%n5~r3cMHPp_f7LLr3_e$m{X8)CBMo#Ylqi|~ zZpaikYaHOA3I+2v;;E{JxKPOHa5EK3+V(mZdf0_Td6JB!Q!5o9#|l0fO8LqM)AfOz zYg`HnBY6m(CTxJKd>^XCn6L)5B3y_#2GjP_OZvL zRuOc8>|UnOA<1mQv%iFx_?wiaSfKdi;wf3FH5BjTJEDmfA=;uvJec~b zgls@UNrcS5^aK({;O<5_Ev!yD0)PvJOa#ZU`Vs!X7fWxPm)_uuhdy}H857P=w#4YP z(H6c=8yEGJp$~+}qtaIX=A*O4RHtR=qxgKMGe2GkH^yB03EqTwl};;bF(wv=bVpfq zplhT-i6TjEQsgu&7K4_pn*=T)IU(8Yp_d1FnNqY>jjFc))T$9-HsxV9U85) zPwTKg$G<1}&fBaSegopxJsNw&SEVHWmY_&=7=$^IrlIc}93TVzszE<=!4@Ti8%#q} zhn}JF#z3zB3F9?WJdz+U;5lQ1)qt!^$|ee>_%K*PG} zMg79OB+5eDc%j0>F*0|^mOf0P}-?uI@f9B^<$f$_m%Gb>cUXOt6$58t1c z3BwG(=klA^{BZEdlA_nDkNn>w(6kwtgpB!j4@l|!|1R8&Nf_$E^U3dvz5IcyQTY_7 zMQ(3bKsyO36(6c>s0y59aB?W5ra>tItS4YFd+9!ciNsSNlx5)DL>v0WF7<#gGypJ4 zO?7T|Mw%xfE(YC&Bk=XwM6D{s6$*D`xbA2aSt#Km2~EHYzEFA;Xm>c(1Ugq9E?Iu( z+=chAtq=dUamnLzh`l&C=E(*<$B9f%5*h(ahP!xaiAlb#{DNiC2NmVmq(nBYq6 z$P_e|$yW67Mi{M4#BH_t0|2VE7}>c{!M z{2Aon&oM79ZfVoAUc7c9Mjnh>FbkJQjS$IS_6OF30y=|E*zjdcJhQ)M_KRoir9j&%;!JL>z<7(~Hpxy9znhdlM>OeMlGl(`-L`05B~XjWE%kvsuU4FK zf&xc~i~L<$CjIXDC0>9QyX zk@(<2%57Z``y8{rW3C^yz%2GT_DY;YGDb&z0eEFQ0z{M$hwg{4m=o+t zUimFX~J>TB|D7y$2iYm!p&_ zX)oy=1V8@C|L>J*HT3@KRe1j-ifu$kK%J6~2Su=;8X!A9=)B2@v<}=NTSI8CknXk> zjNYq=iSig0f(G_sbRDJz_nlgKv~1|U@rQKFx}@J z>8_)ONLTPZa2G{TCCG96jPj0n7rVDH5H`RgncD5^CK5tkpB4MF|@SpZ#(tgi5TEZ_W$VMWLtbvyv>2N z!2Znx-m3)bmqRvM7AyfD%ntCMzyrqLvqq_umFU1!u${#)Y;eWkj%FnrRTNy+Ct6$tz7h60vw@s(e7|fX{F>l{cS-hY=WxCOA_OBScsZ}F{Prd1xWlNvkH7%U~^gdqs(&EK0Nw9{c zOY{?D+-)0Q+Er7t>!poH2hMJ-tlWBbK-km&n)Km=4@w_iSibxMuLn_x{j7IIWhA06`fX>j~o@xj6U?E_uCs z$HYPWSKdXb7eu)y{9-2K?GA?{(SiOyjBCPdaVI4iS-2SG_Dtc8rq1w)<8lDM9F@rm z_q(feEBN8Gz=`+E7dIqRno1urXKK~BECKm_N0n`uKR*XeC{Yv-4a&_SvjNr zEZaFWo3XNwO1eOtORmp2Ge_2iNuliCl~<3^gbAVRf*SCO%P9xQ^q`;f!|C*3dYHDE zXmTi|cr_oiZOlX^ROfELzC*hA_?w|bADh8zIHpfwuLp1%Q!t-yLPpuaM+M3$%o}`D zB>5nJ7RX8j@|Zj^lPMWiUUEFycy1OA4dntLVa9mSR?ndFx$z7ZEJr1nb;tNRuRFEeOE{7%LJ|gee39jk0~&znigr zc6w^tj#>OEscY|dZmz7``^K){9TnzfP9LbQT{$IHsrtOHV%@`w7CySUTA*Yo#&Y>% z<+~V*kt^nVpLYU`NthPOuqPtbf=N}wZ&V=LuU4RXmjpLR1^_lAfVi90>XWN?{cAn! zTFRhb|62LEWYb^&TKTyY$-Dlw@^h(^$@QT-(ixvUz5H-|@tZd+FT@dD9mL)}LO`_r#VO!FKT*t9#cibC>6*p!YGh0hT!$`tB{nVQaajKt1%f zG6(M{P{$e~mmtDzUInu60c;r}Eu!QC(|pi@)FBklaI@e>Emsql=t*`b`> zk`UWj-(0X@&(!{hGBVzJuzW^dlmb&xk)NWAfh^=)h(SJudC21G1GVw!Pmu=u1@i#Z zD57$NAEhR`y`ktuyqs@CsoLm}R~DB=bAVJ86O|!VO05a6IRP=e;wfa^-aCHRmG7E0 z?I(NbU03$5+Y{8n{JPV(PxNXl9?3`@Jn$*4>*dc7U;ib}cOKU#mw3d}LW&5hQ>l6| zzDgVl90KEP5nX}Q2`<5U2d|I`+JYC$-eMjH&LWT3=3^19QEP6Rz-eR_>+s%Iou@_K zIiu-@j_e5?Nvp3gaZV$)wkJ+lSbu9)$G+~Iv{^f6i7!s*TV8yoc#7Xjo4X(dEMjbL zpS%1owGVTU%q@}itY>69E3lnmozo1!B%!T5JPp39UBv>?BfDN!kI9^mSo+aKV0hyL zut7n+P*RB^jtsURI@fBw*7)qBP1`!MgI=1|SLDg40KPQzwwZ(HQ}M2RO~_G{UoW6McOh!*87C)DD zdB_wcNE+4J1kKgqRtRot5urTWe(K%Bk4gW$u&nPD-uPJCksFp}7V1-?qRQJh&)odY zeT^+gzQ3dI)Ih29w8bHu*?Q~Gj<>ROz(c&@{IaO5>eP0tF2azU4rJkQkL@M=}WWe5U^b$%Xp>(*r|E^v^>v?;H&jx&(slzZ!`o# z1eH}#NF5R%#GPa7wMg8Dw$aGOudOaC0T4M8jSb_Rk%{Dwjw;z2PD5RhqXL?0*o2|7 zI0BeB6#eOIcHhyu_@zTLlN*;+p>>9s5^j` z0g{O_i6U70CosM#CI=G0VG!O#x8P8Qf{oahl)uW&V3{Z|lgp$KpA81R7A7#tr^b3a1n5J8W`d~S_n9f*m~K!4z2|qk zGhE@)~;!3!wfhjqOLKv)3a^MI%M^HLW#<#d8 zfY3!p!-y$~E}2x6nSo|Raj`KD_~2l_ck!-a2pzp4v#Cl#fs^Zl=q6jN$uPZY`kRtR z0qOW3-SOzUCqd0?)=CbY+uA=!KZo&u)g@S$D^Dg^bEX!@BGiy$P4HKxS}dtm{?Gp* zMI#9JtToeNO)w1g8Dqqcho)LG92U1hIEifF5s11B_y)fONZ^`SI@f=IrGrmz8IPr- z@*H7lervwdo;$tdXFpwfxZUgT+BZkqdhXm4zy9?uS9X;zvBDoM-NV0|GjnB0&Dt4R zqH^c zEw08$5ME-Hg)9gc!@Ln0XCbPPG=Rjr$~`zy!?z%cKK^QC`xHX=xG!Rj?I?DPGiE`N zSTabNDRzv6=V&mU*H_NkeNro#5SotV;KW!dA#0#+*50n{vSqi;^rBrOlP4Cl-WQuY ztHR?6bQD&!#tw=f@0E@wCYP;!blJME-BcH*)7z{zLxe?_GJD^G&KsKIlWY>L5YI&+ zw!9rbl@pe3QtU)nI@eXObmd%mL7qQT#?mETfu$2+)go*}P&!6RH5y6>mfj$gt`LQ( z!%!`YYI}@hMUy|*@Ot*##ZN8DXmGq9k?Y^eYn@eoZ@xqN^nf!p{HONv)Y(t9wWa+u zJk5DP`qYu{^;bEcyG5GejN#|S#`7gDQW5{{WUuskd@O%Dy#SrillWaOhxDr3!@nS* z%rM|^NjD~Cg&PXer9WalXiuG1EWkW?D8>$$DhU`h;}I2IHrf5kJA8F-#ig<;#jJjFaK~VABC~FCd6U@SoUH{Gi(qq#tS$ah-Dy*qck{}@!Ihh1G7N*-9OwQ& zS~31gM|1*T;z?3UpYa-beE;}ARlJiAL^`D#y_x7e2!Tc8&A@o;FYr)Nl1;G93*WD+bS<8+_%J?$mPoPvseR6eMAT&|G?x zF<8~kRjYP>%j4z)@`TeaU}KHOSigy}#uCoNH8Eyxc$kTVnM)kO%mtSkF(O**F+=+% z8(Q|bIBg&m&VE|j$q?` zS8@&x^6w4?&kX+y$t!*=_49W?*I2cwyRP)cykZV1RyPAS`-7Mm9jJAx0u^9173&Jn%Y*|T0bp_=U>b|^lXsLb4)WIA zn4FTF0DM_uvWzby!VtMv=xA^mi$W1#j7nNF`4LlnOgnH$4~kJ0;yU3>U0GRWbwzn4 z|9~-k}%Jkiq4QsS8pxXmu!x1?X+zq4v4AFU(gcYG2*h zvSmiPfA*%yE6&#&)j}kIuq1~NzY%|m`5K2IWAK~t36E=G$fmy(<5>Bov{igrTruR7 zrL?$WFSARms5$-zzQe+S6DC|F1C>V;c%En9f}~_xf=N_4C{k-0hKmK!Si+pMQvVT~ z3sF?PS#5}dWOrHimrKj}W8yi7Vd&n3YIk+D&>O*c1W*-%@A?4W<)ZwJYeKvlzLhB| zd@Fu2yqc0kr`)k-`~Y~N>z#MbzVprmqmcS-JI|lrIb+;FE;V3Y?T}9y7)K%pZlMIH zbp)d(8{_<38L5Uvkh8Lh9B7YHuE3~~)?sFX3{tZMrF$5kugHMFT8^Z^Wks0g?*OUY z&-Y4CK54gVKGT?f5oU{cNP3dj1tpooz#lZYbkd{1sA>5340>sIjEfH#Oj5M81~DBj z8aRnX81FcY8l>regi%v2!gjcHuk^AQCcVf1`D}0);_`j_hN8ul5U2RgX_%uNd}kza z`q(to0;7@QghC; z_E{P}LHd1|jsK2(7NK9n=P(`<7afSwLx5pEuvJ}6p$v?}PR9fWBZ3?F;t>d1VAmg? z>^)1bJUA%S;bnKPMSXlOds(PZ5{GzPJ~(c^3wcQWu7N*8=8Zbgpt2x@KLeAELZuuK zfIow&2cSJchK#sF5!+6)|dH&Pq%2bN`EZ0Q8LIn9-m5%T7ko zlk*@fX5GHD^vldfRg+HoBYcN8ee15l)uZP`_BDySAeVdT`4mcgVH1%pLOX-D4m&+K zO^k1tNnB?WPy6l(g*Y-r|;jM%3^qQ()^MW_sUlAkfZBxppN zy^a|-&GC=*J1yb9zh-pq@9Nyz7$>^{@U6&#btM~wyd`%nS#@sLgs9PIvynw(fr4QRT>N>? z`~!1RYeV4yOSm^Bqq#6vw#gx)Q~U4iPSeU!0fSZNDD9ide>LO-1mE$rg8EEffjJ|O zk`{o%CtnzIrg-S+W0>lY(}CF?aS3D{ITiL9=_sZn9a@ItM&LQP!^dOINJo-JVvv;4 zP_t25Qr!3^l;lgpN|H2_^a~vGKk~luYBIF0rB58P~^}LCXd8-F2{LBNv9SX6dQEBzIhtBSO#g8^!i5a^@}wHG^6kj;7`g6N~xY z^Hleg?YP4{RF}{Rg|+m|&icwN&#aPFn((lgHDf(fX-0>RKUCh=lyYo0|BGZ$!%yD# z=1t4a-7=+g-DCZ!(en>?WyK}NnK^L&T>ex#Ddu6%sDwXh@IKs3=zZeAk^4v?r^gEY z)xZZslZku}Yz(hl_xc;NK~oL6f(#b8{pr3*qWr-loYg9r>hTyyO3 z!8OK&1=A8^qy+L=zDut7u*U*R z32|D)Q7H)Z-kYxvGU)|EFQ_JB%`?uovZg;EKV2f;`HErMr3K!#I& z6bmCyh|&s`Xd|@zlANr_2vQAH=l*ac*8K9Hk_^NVY9B`d!^AV`G}Cg zK`EW;+*MaPViwKkBaT?uEo0~IN{8&G*pNfE9_9eeDavb^-<&}BEXP&wStH&7!)K+8 zie!ddM}mMdw>IQG5FB85b>YT=^M|HY6bacE_Z3gc zvaKIMFY%lWypw-`KB(nx3~0TOX}J(%o)cKJrl`F<-c>lGuw+JYqF!&(B^N!kX70i6Y)fiQ_66H0v=gCX&R$4uUDudX zonqeLNG^8A79>YTMn`ImwFOlfjorDi6{UHmyw@`;lFg%`G1$Ql=$xl9cR7T2a>LU> zh150hP6-p@od71GNkER_3cS-bryv%^oZ{2)T9cAv|3n%Hr&D!A?PM@6H zvnmwA_BYL)_!X;4^NcY&=G`sJ8t(Fk%6~(CXLCOb5)fShYND`A2-W0a>~ldoVjMnd z^mPEa!O^30dL@o(^mX#{=!jnXI(pu9F2SSN!KAVrH1|t_zhg@p23mz6A>*B%v3pDT zD>{1(H_XYI$PK~?^oG!beeBSswe6fG#E$oihGvaBde}b)FMp)`F6KFv`-eQw(Fm|X zT*9Yipek4pbjB#>Gcw0lzh-29uYS$Q++O_}`8h=Kb@glLIf3{qhC3SF6`Xtdtfz7* zGQukeZ6um!f)fx-B2;w4rd>Ysgxpk~QHE(0&zx?&VNPz)E27EH3M89Q6AiFtpQpa6 z#4&iDCj4;7F_Y&xws=N<2%^bz(=UIluqwbq$6b6LEtU~*mf=x^24_ewvU(Xr2U2YW z>4nWooBCQ;$*BP6G|KUT35->B52gLu40@1S{DpYJ8}FXhi>+cMXJe|=PPh( z3^NPGRK_c;WuQmfc;VKjhFdReD(~-Xj7ire+4U)9ZN)8H+cM5Qv1k8pOcwr=@i%ZimoLxiVjdfDU+v$Aq#t*=R`h!(bp^QB+kBK>$j z|6G{1>6Wjp8u-S(mb#Lu8eLRuRNnks+h*;V=huYsk0Sms|FT&bq3T0zm<9bVejkW0 z%NA71s#1YhwbUv=jo4}txUhI$~{So{tPa{?lWj1q|rr2%+RihB`h7ShCNe6Ww0-1SFYkV75;fSn}_V?v2! ztd~y&_M`w{d<;5+x zy?H|f@3L2!(E~50$Yr3vu{GUT5I`|_c#JR4vvm6AV(gIcr@;fJ=tW?IcSLpXdv@8G z&#UdTS40e2Vt&J`HQ%tr@Dbi!&;Im=Lm#}fE%I(l>?_F09kay##?hSHq1BsQafXZM zb*1?Tc#*tc0!+07_}D7$&vGKb=D~bc!R0Fj`2<&B3B#f(a8!by^J729i6MEN0UR3G z{6QK+G=Ly#!}b@{+-%rH%wJs2%;{09O#$Uh+@w({HN!Vy4RM=>BO1NnZOAzc-xbIk zz5!)pxDq$wY>F!pxnopS6W)g94o^zO0ZU9tFd^FxSRGU+p}5ePj#eqyNb2fTGw}GR z-4r3(><-1Nsz^gY!sO1xjHc?cSXz)N?HAA9b?NK^*3#m{-#Tc;%y~0!oJ+(q<*QE4 z>5Q=}bQ$Yg;!7ODU!!!Z`lRCuYaF_v=w~cm6QqzaTv)zfCf3L2_YsB6=GP9j>xFOG zUB?%%HGn{mtB1>50nDh0YEEh8D1N0PUNov6?7>0PFa&Nd#pNN9aEXa}{K~&rhwNdg z0{=xuB>spWl0-gV`tEDr{Ybzv2`76b5Q^!(thVF6CofHP;xJoXcyp zk*08hPB-d!jT+^98V;ivmXZjkb#h^0kdnm7C6A=Ks;nd{1LDn*@#EpXhpc>ttWeoV-lE!r{vFSW{b8*4%}7T^Dr7uQ2Z-q?jIZu!QRk%uj=G z=NrvNgQ&Dw^dj5wmQ zC!$Dss%VEg@ELMpHpPDFyHoz662+(9pYj2;+BxC%Gck^BCmeAR(l4bw_n$p`HpX$| zT~Sd+K8qiC;EbpSB~5gpqq4x7B~x%D@mJA9bW-}d6xO4V-R_JiA{kN7p!y;bqjk?xbrim}D-UCbZP zUwi^X<9>MgLp9Y2YccA1+_`{Z9s*o8!~+7nsHLbE;o6HqsinZUpt=-VMVNMg(}DO} zr|u2MODe*Mvl6CoCwSMX&C%C-S`rkQ%}|tFitvc_5oJhI7gU3Y_9u_>YBU zMw+BB&rKm8FyNZ1XYQPx{@7z*{p#Lt?JW0q-ZUf0#rJ(BKT3MT3cGScT$>`RP5L_ z^p5aC;gX}B&AXR2T5QQfZ=?uZq;2R4FxiPZEfPh=88O~yN0d9KE*tgf$wlc^;d*wWFM_Sv)AW=w5uZm6pTaIH)}?s>U6V6jKz-DH6EvGvU+ zy-{zBg6ePukGk3ejvmI^;PXWAp+AVZh3=$WA1n_9gq7$7M5kZ$pcn}M<-2|I(FbjS z9msl?03Z1YJ=9gL(hpOA8~Iee#-URgHPW|Jznc2Yvwn?9qjhMG{2^8PAO80@$Es}_ zjZH18Qh7~`;~yu#f2Z{7iSM73e#@&^y3XepE)%^`z4&n{zhJ&1DeA!b z*ThASEPgw4prmAV24D0D{k*ocbZsVn?%SN$m6g?%_`636%&|j{3LW&{;zuAv__v~L zQV)N>Ia>bR;*xSnoWN@M9;CEqXA)vlfEUKLNHs3;&E8`SaRjg z$GjeclnUVO+VemD@%aXChL!)dH7)+(p`n;)q_F2k`YfQjm}Iw!L#u?_j|%ID_M06- ztkXJl-eWncbvxzpDW1jnVhEEQX+@V+;3XheQOhatMu@6L`a$;HA+JImB4fB1Q*<PPC9>b z>&cTRTTRKD-9ta)|L6GD<0p^fPhs2nyH1}bJy9+_9u|+Wr31S(lN*xra?^o5r@Y*B zz&VHWa`}kygI;V2EI@^zSqbBT>m;Ru5v$cqKCVR80rgpP;au@dYA(@Il#+PyE55+Z zP)x)35fM6UeB%`uAV!5im4kcy8v5sV#LiCB@lUDZa!6XQb5(*h)H|E^9Xs zmjDz3J`6W}1{qXM$tnt;7Z#AXW^%fWM~+?o3{WxpFhZt15!8hE01V$F#y|b}k)-65 zM}8}Px?f6;>e-cXI6N=6@6ni9lYidx!d)BPZrj#BpQ-3*Zpe&JQ%-esmlQ3V*Wids zY0Am$oK|H$7d3zPLtQfuv`59c`VT+W-n7!Q{*3Zu-`Ay2!LIS?%Y7Z{7he!c{r;ha zYaj8?IQi4vyMJ?P4kUAW+|r9H8taOdo$Oh9Y+hRGjIGmjqkGtt7fLxe&y%E`up9pj zi>ZOD3z!;e%F`TxtO0LSU63yd=!Qj}Hr0->VBR81z=DjNL8Wojc{l;=gN}3cbqVpA zqE_aB0o07DN@-5W$s#;eIdU<TVuC5&flJSZ4)uoOf>@_BJ^L9ml z&4%SYnN)K8b1#+6JRGRnf9zDpyxV$mv*zE{Q?X~?{@Q}oJ8o}l+OeY3 zS6OqmH)sC5xmh*aR?YSB_e-aI!aaCj1uPFvu?A;C4T)s~600ZBWi$v1Jxz~->j_tz zL>?4TIJ068(7;@nRtO_bf{0FzY)Y653$@K*fC%K~_)!FwhU$A}OS(zF$YxczPNPTF zANmz1T4?H!tn&KYHVY(>+hz*dSA^eF13^oEtt_NqPBPKy$Q1(!_eq(z-gF{Hs^DMO z=d>)Vy;T%%#>w4thxfy`ZasGlzxcq<|B-OJxGK(Lh}LhG{(x(4`7BgsM$$cL8T5ycmP#TJle#g z5`7JJg0L3O4a_f%dLd>{u117|K_?iZt)BEe^$Hb=#3Qx2}BQ;QUCzF!YO-DS~j;67zxU z#;^W;-~D{pt1DH9EV1Xc-3?S39PaT%D=*$IX88D0RuwFA%b;iaurJ8INhNg#8y~9s)tk%VzND4csPt~=%9s4P-y5=^`VVG2m)wA6WJI>=5MKyNDf*O zyaP*aVPeG15Xu%TIyKF+0nch;i(g@@~ugwjX4}iNj@BlXro38hWp^LNTLIe%}-%12+;9o zLJncc`UgQQQN3bt=j5VA2WASZ5$Q1CK-jD7JKj3dviL=wyW2p2w5)xhzCvv=Mx+Ji zR`qKGeY2aA%tm84{F|vq{%6;kuN|0cNnE_rx=W}~3$4n%lde8nSh7pFxCc){?q zuJV9D*_XSQnJvNC)+$EI6jfO{t8M1=)|SSG%KFOsEKgEKq8ZwaRx4OY2>r#_xLD z`5KnjwBGJdSDJMZ3I2-o`r3qoy2iSKgv8oKmGw8IU;O24gF$6b&*p!++~iQ@OFt@5 zM4FcKu?Lk~!_A-X)*FRptI=%C@g;bpotX_~IkN&ud1=)eoh`~%oEe=MX|hFU)aE2l zDM?I8f0y1f8IBwYw+KJSw#Au$7CLd8_!i;`C9>;gf^c8Vnn5tIBn)io zPKy&j4Y-BSXW+2J?c=&{E4E$A-LPSU_|~Pz*|S&U+2x99@ED`ef0J1kLN8^runA!G zCMw{D$?ff6N08GX8yNU;b&d*&hZ0UM(S99~OC%cCB2wPhA z^b{8M>}eU=1F3x+@dOPwg5fL7b-rI)RI#CXwOAnxRDpPfwt+;kX9_aR3^U0|1XXN&Hdf{eDUAH zJDA3DIf9Q~r1-oKUx`NNbb3HS2uLP^!1xP(?fB0-o`;?hA&P-dLfM@7@1dym;#^_w zCH^LQK3^&Y#1hpk^ol7X!Ze0CCs-Y&=O~Uzrrt8L{cJ%whHGZi-$B81d~3(^wgNAE zd|tVNyj^Am8)&KcQdf4(jIJC{Q>;!5v&KhFno}14g!s=JUcMDw2ld8g9gM1!<>wB4 z-VFYOKco8SUFF-bxu|_228Jj>Dzicb0R||(m3TvzG3W!e9Wl~y){OpK9w9!$;ARK^ zg6CR0Xo!h4#H8U!i%jPSn&Ed#7T?nBX`}&K;+<@OKm6K1Zp{lfHizp~JdF-p&0U>4sJ{Jb1a4|*o5bkjVtZ?$E zuN=oM#eb;RGBL9mJ6cTHpnB-vOEf3wd*~kaJxVS%;F@qnhu0JL;`@eN8^lf_=HfpU zx3F>2cVe9K{dfR&1dMFjDZ|a|<^6!W^WFIJA(z-Gg)2-LGJQY2C&sMg2>%&8(zMk= zCtDzwd*oE}I2)kPHe7mmgK%_%;+Bj5#NW#E#ok@XB?jEMmn|0lg3TJ(JelV{>M=AJ zOvR;#g+Hkty103R!o;4#JuWR*zX)B^#@%&pW=^uGLU31hD-*TQE=pw@(icR8K`eA= zZAaPwccP~%&*v~bLc1k_js>=J?}YcrSJLYS571SvWKc)Ifial2BnYSEl#|x=I%>Td z>Y7Hrk9s667>gr86c*$eGM|V2RS2YpKws!bBn#Cq7VdxV`Q)wp_7}9w&o}eA22+?2 zHRZsXxYpU7GwYog#2_wMpK(g%y+gs^TW!`o>Q2wo3zD zxAo*?_uSS^KX)8jSa9N~_^v$v<&e*dm8akr?FfXULAfX-kncmtHfpJc5C`@$j}jB4 zqB;>I5QKb+VxTKMR5)cEC%6J#3FRv$`peMmaM>vf=HWcPWXo{3OUCdT>~<<^TgV!j zL|w7?wavdhf8RiPO8egVPM=weilw6ZRMXT)q^D%s^7sU0UjGwYdL9@+V}~}QMJM{F zE-6}fxYU{@Jcz|VCoNYHZ@Hg4@j^NWm;h}x!tW#^xQRv%WWcD?$WBR@tLa$1A-0+* z=CC}eyw!r&!VAF3LoRUP$X&rJ1Ifb=6nSwilm?7P0d6E_Q#tB-20YfGdwhx+|5EEd zs#611x-7{kQ8u#Km=TSZed9UQ^Hx2*C9o)OO1Y2|fh}dvn_X3~sI+xixwGWZ-_DFC zS6|(ETW_8=tx#*Ug{RbJyR=coomKqduB~~NESYef=N7_OP{LQJruxDJNETMLK(7j~ z08t?<8EZPpGJ|BmYka)|}lMD4Mr^>xOwn>z3wCEsTyp)*?b&m9wh8VsrPT z+_~GE=H4{Frns7-E+%oXxRVzPWahy%hdxKh&fPr3Q zxl~Y(D9rA}cEz3r&l=_Y3gDCC?T9ZHUA{p=9lQ`05Q3(Z9}3CXPa7vZ1C9xqR|R*aDD=ggHf2P54#!UHv5` z{daYD-?gHoWW`-VPmCe5V&!bltXZwm3vTZ%))oKu*?qr%V0Oo;KkPgD*9Y4ySu?hu z-4r*yy~B&6ZRAhp^&XnjaoeJT%#K|%7v0-mr0noI{0%uyNWY9l53XOfw)N2K>o>l6 zbjG}Ar3Y8M@#MY*`Aje-k#0?eY^#IK=Hw7NhE7JTgC9VJCM-AP4JoR_CJrlXGNoAE zC~HQqWjVVyTFx_e5x1gFYB~R8`XnR?3XSG4(NWahaP~ZZR{ZEvxcHIQ;f>Lm?cv!C z{zzUeeTMbpxtpYZhVk}5MS!h!JK7IB1<8igMH8Cyo^UORGV$m)8R=Ub7D`MvD zZ1oiFpS$?R7+YQ2f}E+_W@ipAS&-gZ>N(rnRW$(il1mHw?^*yrF+wvoQioP;YHhX? ze-?OCc4xz!+SyCHidu6ca~B+%E9@ECvT;jX>6}vfY4fJKa^XWv!VKV(Uj*(kk=r5X zAS28sC_)do58$aFF5(K9P2j*XLwbikR1jc^@|8|V_t4oAI#Ks52>N^*Vu7I;Ndb$PFjXLnOmKmi#23%bd!TaWtqTfHJ{py5 z;&mpw4&IJ6v2sqqz=Pt)pFb_+McOi#KECBUKL&*XDZz{>eI;!h8WR$Q2QV(|5i9Du z{-sc(9uzfR$rWzZ_QbjTYq-R z{3o_ISmQi#){?;XLsrzKS^cv&*Kg=4s!6V%m6A2#NxA$!a&by< z>wzl)kz6=bV2K)|r!ljzPl%)gdb)H{iq9Pv?S!sImECwI%Wj4)UG`}e`G7XGA zB`J1`Q7`O?X-H0KtIJ5O?=5`(;aN)y^X4=hEHW614m5P+ z7B0&S=Qo{^-j?1zj6h3W!-Dw9ZFc*ty7&bRb=INh_@7ECbe=Y#R9!s|=B5 z>}B+)5$|Jqn&LJ=J)Z%^8slher#UV{?ho;^<$ajgI7h4o( z!(>gZ%dSc>@y|=}D1jR;Q|pzVa4z)IMYmpTBDs$MIo7iwt|=BG@U7|T>E2+tifkN; z210gZDhjR455#0<;?D*}TiL+9ul#D`#$Ua1??Bn;pC=df-S*6zD^|Su%x!%|qkk4o z;^O=0;`_$kh-+`BYj2nD3;j%Toag#3zpvqxk0P#*x|&4bpo$C3BDxkdYS9-V*hdb) zK&0^LaDYym#8d~mPEK`03T3TWaL89q-o^cZ0e zv;72<(ad15xu#g`Atb&-IaHtGyU~H>&Vs$KZY^#)^wzGOKb$_}hdXz^b-1Z`>-k#> zI-3L0$vTr>ALp;lIsMeP2D?v8dTr8)?&n_r%ITase;f*tw8~6pM!b38HR60Pk@P$1U(%nY-!@k9|B{SVO?as&gka-YVG_;J zxy$dX3*pZcaJN72AmVtqeAE*=dl)K&icnssMM0JVNokz|kwU^f5;_QEy;|)kvfdGB z(v|nHtJP|DOu>W83Owj$EEF*Fu$}UAGt-lOR!>qQB9GPtDlSDXfb@*d4W*CNAGr@> zfW{1{z+zbp(W)+-`QZ}>|L=)~Vbb{v7x+qj|1_Osfa-&lvvg#cO)be0rQUB;9xWKc1M^J3|ILR&G7B`sk*Ych(FC{{^7v zIptdT$QoG9VEP3iu8MDjvjC-z#8D5Nji@HM5ia>f)K)nNc?iQTz*|Gr5*r+qQR3w& zU5=OYuv{0PD{eZXbLjBz5pna~&Unqc_r7@YU3Eg#-NL+=gb( zabsjeomU-Wa4itG|K3%`%8Qcc!UZ9ckGsa0G4i{Bv+58Y#n_|JCUOSkTR7wkxcK2_ zVoq@mX--uL3*gmc&ezbyQq4rR#piZ0R``(d1{(ebkl;xEoTwszsH5b z1$$DoO|7;?C)s)LrMDC>-V^24+-XTEo>tNzh%fS!OQsd4SWeKSe?7Wp-nO=(OUlQF zF16j*RTC{f5}lcr5*eA2mKn|Weg0vznSZiia+*mTS}oirn9?Q}NNvb1{;htXIaL&H z7`j-dV-o*@t&NcXw2RdgPsj>6s0se#=RE=a=oXi-#UZP^1d){rDGn z@57=gwO)SjKbN$*hE`%#cMDrby*u%NEf+tA9PZ_J2ef&-N>c&(OA$1JXBQz{1c0^@ zNivQamJ^DK8NTr>!4lS~g*ohGw3u8cV#r)f69>_#r}!F~5LH*dA5tcCJB+;0kKw@5 zUGXFmd4cgy!jsdDdw>KxzKsqcF-exEqK~59} zBgmS)HZwlMuaG?UB#@5))kc8~auOiYQuqjWL2^`TMv-sLLrb%d-&(%BxVFF1mo|NU z;}tymCgRawb>@cZWnBexDm>*|U)t&^%uKPZw&%{OtlgAb-H~S(!b}l4((>pehZX^g z_&`tPhHYkFT~|?QcU8hfg!{`+XWA=gEv=Yw=ek-HUCfH|xeQuYc5OUr{M_e3mU|^#(g5+3)hm7_wFt#Yb3m*Y@uPfs*% zeB~0!Ad%`R09NTmyet)IkspKK3O11yg&D29UX3Vy1VK|R*uf1b7}6`%OU!(@K0+TJ zF~9)~9bs5Wwx>cwn2bV1N(vDHRE;u;UK6j^!^wq;iElFU27`Ro++m2Yff7-p*QoUa z|NX-{0`aR?^)Fkza6wP^ypGv3r#CfJR+JPc*%Om(31*McLYtdyP?gPt%1_v!xqKcb zzK|^h6@vnKiG}e&VSHILE_b{Ur~Gi<(Jjjhsu~AwTI-)Vb!yxEA}Jz1K0#20Yy2sh zss4OhYE{OYu=M7HEWMpO-=040?VY>cIs{Aa)xFHpOVPs8iziF(E3ZGd{#5oc|EUdw z-+JnFPA#+abgFgf`RNTcYqqg2U(#1hY7LqM2r>&PFExWLemio?8!F z`7y+It2tjFvA`RF#TvfU^Ba#tJ$x$a{bs#ojC5sTDq^}SeCCoIV z^9%hXkOpRwxvlgEJTul#y{{^EJl-FjW=fqS0l;17AM(#uExGAE^f z>+VW^EB^FaALm9ROr6q zjEO)}Chk1v)gzzE&a`_THz$)(dY zI%ljixoK71uBLTUQ^Txr_HfuJfD$RD;4G=(Eluoqg8G7x^vt(I1(QvFDJ?WUri=Ve zI#EcyF`HzJ+bIn8gjux~bC2-YK1a0r{*|Yf->-_X@8`e&kf8acBak%3|BInd?IwP) zw3a_8-4zjufnZDr;kVh@nA{wEPQ*_p@Hs&>IO21TxSV6h$9&FF@UYQtF|eY{nX%+5 zZtSsIFw*(LqxM8!#-#?7eW;Z4U9OFidF|Wl0Tln|L4ieBS zkyHFb{0P2S5$6wNu;j1KfleM8|9#{o5D0AP3-A&KL z{${KtE(+~o%u(@{7lytk-m=dgt6mn7kUq(m#w$(>yf1lDdP2l9b*ydwK}UYg>|*I= z#TsdMaeHlnLpU4hOH8!c5)*xqZ(O=1GJw5=exE-zzUG+Z&U(B?tj!rA1m^fgDV4b=gWr%CULnj9EXtm@}_?>WxZ6#wqc z3D@O#pC5W_+^e1vcz=9BMpDEIWvqSQL1U>;n*G#M!YpZzVy$#j@OAw)si`&otG{YX zaOTud{ttOLJ30H6&a? z9&36J)>o8=l1K#>h5S7EH^>8|%7)S0A>Ww1Z58>=GW;XxZKFPNB3h*lpX_t}SF#R?`bhLsV9|`{%#aXLadTD8rF(U6Utwq{y-P8 zO=Ai(nfjxnG|CxHfZE`P&y*h5v?Dj?9E_*`V-2qBg^R2DR}5I2viuF!RsG9XTAH%`Q}{=UmfhJ+-gkqw z>-f^5q9w<=ERFuGMk`U&>~X$w_dVyGzN{>-^Zea+zv4{E0m5#@b2m>9_agNXKI7)W z75#%Z&qSTP-xogf=I6-g?tp#xs`Bsfxl_26!kUoJtx-0@=bpre8OY}*ALzgExf90u z+%n(L|EC9f;KcveQGqK*NMh{22@PENL^5Ije?3utX)sy3q$lN*YKfk5((#6vvnw8#RBtQzJvhUC>qMoX4$1%)gW zLRDLG7}4ufyxDbxLLp77b|DlpjfFxC?szx)?fR2hBqXgW%ZdvNyz$3(bY|m=FTU{gDRp&I zzW&0CFXE3HhVF(OIxTL4972(BKnosLB&M$s^GNuzF%NhjK}6vA5W|EajB7oA!Vt#Q zpFd#;W7PA<#Z;~gGK@SL`f(&&!!}(g!hlA|h%k)SY$H1*gvS{UF9>b!gznRuYAQCL zS-bpnMV1EiKZ*HMil`q+>Xa2V@#!&URSl?fbz)tx-$-pmKo<_;AJ%Z>a8E8p7HSY# zKtB$CkRKBAAYJ1E(QtX-hqqC}Hi$-tE*Zv`+uZr!5pfB5J9pw^eBPtDOL#?f1LU!f zOXE=LNwm8*pbB7ND0>jr1hSvXFM6q_!xj1*pWrWM(_gTBC*kS?VW$5_-Fv{dS>5}? z&v}NnWy@N&}H=(qYa-l7~ zw532x2mO~qp|`i~ZMiL_w@_mF{r=7)*|MWJfw%YndEeekWa*6OJZJpQZ+?F^zu%uj zArhqRoxb8TMP=4^0!L-7$=Uf%hd(PhIm_>G=4U6fgUMO>PG^2*a&jhpW+hKNAvR6C zsOX)3`pxfj7EtX1=dAB+B~&Ytup003qULqHOAaKNttT^}wj=v3y;2(d!9@u%ih{Ts zASf8NPSHY}Jp!NbkSC^)|BUjbYB^hp+5%e$pGRLV6Us_*YkW019z<^1B0i6Rc(6tk z|It^@^^$2ei#b%TrJhN%D!fLo8}s@M!NCVi4$Z|nyt*+3{#Mp z?}t&kJinaQSxbNjv)1*rb*5S1a^bnGcDUc2ZN6cnJr46{Ou*B{j~Jubu-xG8}Ad1d67aTDFi0 z-yDJi10vW204B^H4np_qPajYDj+x`3Jc@YL0pLI_l{G?z&?1~vEv?pkX3(|-M57^< zX^e0NkqCQ>e$~zT6+4i4r!w?IF=hl&qfv~S5okZ*n1G1U^{{+uR{-NzyOZQNE|ZND zWvZN`2@jW~c97j>G=uj@b7K(DML9sKOU|+9a3CiI7(H|px#5k^1qBjU&E#!@z;d#r z1LYtVU>PZ4mfmcczw_pi^PZTWt99BeMf28n>^MIKIXEw9xnax7>ox`nIeFyDDucnd zl^qZNd)av%SKsVyUE8$ulHg#|#x8$zb%)uS?n&>Tx9inVQ{C%<*Tq4@pSI&sJ27w?I!6StpI@$J|;ar?;^?~kn` zMcy4GEjowfr#65+778`is@WysWg%-sQtSa(MQ-#@|M(tGaO_Oex-MMaDE zb+(W97bImAq4yf$+_CqMrBsAuGHDLU8K|Isy#o|SPzyjZtf)ERMP4Dfu=84X4q6sFN5W7H|e zr3mhoH3oUaq!$&aOcB!_dv*o~$98PmFt~njy(2ktiW2@6r-;D-P#J_Numq@ZdiMYR zOv%4L)0qnY{84GI!R1QPm9k7x^S^Y$q&H3#iC-=%8`JBV!C22U;Wws^+^qBVA>RW9 ztSt8I%-)}12Cf6o(yqLK`xbHJ#JV78I0~jTB@JO7S^E>p3;%3JO;Om6ShjNbq*;NO zhfKUqxVMm(JbEL5epw!Y#Ea!84|(9AlF2OB>q=F{01d=|+=$;0sR4-HfUn(5|7kMK zB2^6#NX6F9eM^dq7LCvAgoC`lZ_I7=CIv3+Tzc!Cw$8&RcWi&`01`v7?dJ0AFCHyf zJl;BgSARkIk{$K!yB8OWr&5ZMCcSpYmo|<(aHzBWqLbsRf4ZOjAsLQ?7@x2X?~w=J z1(NAHgyv8~4R{m0iRvj0rLib-4evG{wZ@}-w#&T~($&&jUYeC*%d_XHZ>5X#R@TVd zMZKhuPg!L+x#byA6RKX9$i7Bwn?KfandSctQCoZ0U?Xg{Zns$F_{kl7MH|;r;*D=!2y`?oPt946v!$?P-e3!3vSw;EE zj>5u@mE{%7T745g^gVIK>YKLK)^5FN^%YO}3hv$8fBD9`x{a6j@4XlEpa{z*|6BPl z<=%+=(++X?t12T#!CeBRKf3UAdMz$Ky6`AGU|SC$F%@`_bD$O|`Y0r&aIWg8NNutuTAnUmYH&FZfAV{My6p&%#892I zB`E=l}iVUC*G6areArj5~_t5O3<2a>8RMH*&t~d;ytCKg8p%V zJtH0EEGLzBNS_nidHMZu%eSC?m1Ygv!;?2o`(@aeJCs|6JocEl3h$W5?w$Or_&n3H z2PBGb)`J6hMtpwid6*?-VWd7`$x{8l@%r~k6rMV}KJ|Y{xs&(5m)8d!i1eR1yFTWB zN%(fjkNM9N>dE#CbW}tfLqefYEpaFIDkl$E4pHR6hT}r7A3R|?SMw;5I6VY$HnV`! zVMdIDx=oc$fbVc{F<`JXz_Mg|b8*%TlF4z|h)18#EyYl_f-sZ$-d2|v@+P6PK`jfT^K zK$H%|w1`6qX0!q=a2)#F-rZX_uU#EO6U_fonxNudMD1^x;{QI)kT!v=G`H;;Dk~cT zSy8DF$Vrr}w3Mg+>&QyW*~t#{G2t-IFXs<5PvV9zE0h8jFH%4%FMNb>Z&}zb1;l?S z&%kFO3#e}$!kW-Z3q#~4g1#jgD7cz&Ae5?{0RuYo+S1K_Mqw?W%m zRq4()ARw!`v9hD8qcA@^;0^#oE6r}xXBo2KV54I?6(yDo2!+fZT)cF{v_Q%N3y<6Nib&i9Ijp0>GyZ8tF2krk)PkO zF4%tFvWkjj=e4(;zbp_~cD{Ut&*gF-Jeib{pPE-^)>$r3+HFui&kl$43%b_V)Qof$ z6m*T$)T~Fgr2fFtee>q+qjvPUG=QT9ns`v$ByJPK$Ya+H8!}{c_SlN3jQ*6kS$aeK zBg%SCE4x_StUMw9k!e8TXSdtQs@Mzi5a?nnnCz$2UY|m*c-~bgdxw|JLk!)_GPDza zFAstK@pjanm7@-%GWHm?Ckbo1A4$jS@_tZv9;-b=-2({VxJR0YvG$v0kM(s{FMUn+ z;vE;9_8xPU9b_NN09!%3mEgx><_&cDOSt}SQN9W;CN=h61p5%Z7l9xI1((faKpiES z?!|xwuyChci7%z>PkC)NRTUf9mhepz-%prSpjnK7p3qNpSD3kPI59Ip_FqKjV@AmG z)tln@`kL(S3znr_nB2N&pv+U(UtBfNQfiSOjJdS=)&9v(>5?d3yt{qg#`T-qzxVgb z!GRTZbU~!JbBuhCuAB6*cQr#;zlGWkb*?+2d$b>AKjdYLl4h5EchZOZybbLZC(bVG zp7gPA@UkVQ*=4ySaT>@i^DsOM|*00ec18Jhr-Uz${ID7)TR%6lt%Z27aAy{B7DDY~b z&?XdFVD2_?x6vqRaaw@Di~K=Vs-J!!V!F`UmFsdc!`elctq-;zxPNry{sZm7^(PjE zb(uNrD{F7tUcdgazg~0A2ak@_Z@+Er-J|JV_H<&)rfXJhyL(4X&5pabt-5AYOJca& zn?Cx8bM1*oHeCF(TZe{j{n^DE9yzhr`3TVw!W|?WIgPyU1NsjCe7OYgrjgIn60eAG zUHK`LOG2&C6`CIluV`k3uZYyGf?ym@N=%T9#*I<9MOl_>r5q_mZQ<~8~_=WUTjqZmnzfVwd^1j%q6lE?PV1a@D z47buHjfcO%Uhc_og}>p>uMH2I5E#vthwsSEV)x<)HoqHKiyJdN;pObBzKrl4d>=2K zOqNZ+9MrI_f1x=VowQ4D$-l$*ZEw=|GR)CZaDuR&0(-C;GZOM^b1kofXNC7~gXB;95I%79QbU0OyI8~m7UrK5CK{gnE z@Co$;U(3Ff=GL*gTKB4C*y?P~S9ahM$vkUIn^0Kl|>LDg#z2NN+ofUxUyJQ!=cp|@jxOQ^Yt zKs;mIn@o2*J+yLg@pwQyh6g0j?f&C8882d@LoZ3f-1@3bVmvh$w_45 z-S5=@hCOHm!MUXVp7c~j|J%;~G>^9Kw{@D5jK#gjKy8dK*1t&=ZfsDBG8T3Ju6+TB zO`Uk(N9+Iy%11lk*~9u z6Fe1drRU4p6``D*N}tOlnv|^Kx@>nD{?4!z&fC~K|G=7h&Ch;e9Bgh(Ov>=(XxRlx zh3#AV>&BMVDL?s{p{=4d!R*M)0Hy|X7n5G;Mfr9FeU%9hgzWw-7?DAE6*!e+Qo7Tj zKI~Gr80L(e4^Rrb%Q%dG$j!u4d5V}R#M%>#&lrbDBiFZcsf~HXemu8sc@&I2&yr?w zX$?RuQXK+;w9BVF-ZV?(-R~4bS6+Q^j6Ig!H@K?AyxlzXg)Q}s`yL#_pNkGw6d3G@ z=8U|czqGEuIwvvBB8AM~yzPd^ojPBY$11({6GQjs9^AU|k;DC(pa0U>TwIU*nJFon zi5e+AE5$~%egQVy`|@^ZTcM+bp;s!(6#=q@dx12+-N^9mNe+)kJw(7G!6xC|rI0mctJgRqE|n&y>u< z#)AE0>{g_zxph@mQ?}S}YD?4NTSRMG&Uu43?`^wihhJxOxP5NN=Py2go;Bmp6$4t` zwd3YBLl5FTTJRndpeYsskqCm8LtyLH(RBt|vTpj4Rj*h49xvMuzhb>AsJ9&sJ>Lm8 zFkkqWPd@*=I3ayE{PpAiHuAv$RN3(MHgW6|l_RVXf`M|vCa38H0)X8@6h1dPTT_W^RBnFu z{1RuNrU%ki2LNtG^LEQEnT`!K!Az1EDv*|S{4 ze@?w(Ad%jesI?%cV~$l#;k-}?p6ZgQmqsXK4JEIEjvhI}aclFuHj(@_?(FHiIBx!$ zDSUOJ#o%vLOm&1(1=ybteJ&xq1wxp+dELBg#ph2Xz4pCpA3Sh?)o;6PbG34e{cY9g z3oNIqv)C4X`{w(?SBg)Ku-5!V7c3;&0NN*C`2XK~X5t_9|6tD$V|!KoW5n40cgI59 zGqwL{09U)H_gdm=U#~W2JuamwLZ|K9EYS>sdeTRG`Tj;xdpN+mp&IEEc+|PMsYTwPv zA1I;nRg-^}H_F62Z|S2mv`iS0evK4CMqz%>V-+C0b|`nq*GUrAkpwl21G|yDFo4-5 zF?leiRF(p>;U^9yo+6Pf?X5dMSJ5I z8+k`-xK#4;HAOFb}1g7?FHjrRg6K-b6+4!08-`9_xF>4f$|UuCif z$x1&24xzH5FyEJx9?S@)I1&>OFXdt`WW)j_7G!lKDktfPWJOBdK*AxZrsDlBzLj28 z=+>pWch;4yU%k8_qp~Plm*L*gT(N%jaQ+-+;-3?&4*jm8LV#K&SW}EUV3W$t3V$oX z=G5;hF2vsnHuYB@Vec^E7_@ayNS{Dou};Mpb>oGZxCxLMKnPIqmg{ka5K{?q4CUNL zE!H#}b;Lb$R8jHktb&!VFa5(4J`%`^)*JLzxygMd7(h}6@z$kmEWB{%;jvS!acOuv z`{~w0Ti+CKc;>_({&3=%<8Qys*NSYCH^FfD3-bPX(x8RT5jQb%K`D0Vv+V3~Yhg-x zE_-$&Pkd8cYDm-=t?%B&KG)3-+=X>ULI&v&_NpW#2^pcZNPM1l2B5SGJB*|eZt56Z zliKq=;+qqBEGyY>xBHXXH>m&P$HkjoI#Nkg4x8n)-bcb)d>(xX9p7LW-XCZIUP0~Ghe-qvx z_YmHnx}ek`)Q5BrM)?g}QA$dYEj(Xb)g3;1=ew8&CCTv4U3{-YCX?QgVIu+(-4T_s z%0#MU_)rl83alBFXe68?6^RoHGAQrKv7QntPt^jXB}j$_Q1dbMLTBj+EEGV*a6KrMpE3{A92htPbg%~AaM$bO& z95b5EIzQ*)g(o6=`?u1QXv6Wo31Jt(dLR><_zsUjapoR*anPNo@V;@gW4}sI-aN5Q zD*i1qQ}-CtF5z`9YYCn?rxr@?Li`_PxyErwi$eldc_N$A=_SFuyrY!fAIR@&i{GIWDMx z7#i(1oyBffvh)1zJYQY)0WE;?(%d#yl%3%Zc*}Pcs(mk?{8;!q`ZfyIP!c_jf~rAv zay-;+FxnfIa(S^kySO;pUEJ<2#-Bw+d~C!FRElOHMF1wcCE{%YMs_J~E08c;Sk#-v z>a}~w{TRweekjQM2cafNii$X3=;7Y-^w$)$6gdwS7G(!h54D;T74}?CaYj{VVfbsT ztF$5`C42=?IKWAZ!Wv2wC2S~$yVoqtJ8g}L3E znwXgCh1oqdkr{g(<*v$t1x-D!)V@$}QFU6mt*^NkU)U0>n=0Zcs|~`v3Fg#Z)Ts&- z^)>gn%%;8;e5owx!yvmRuNAwbX4vX1Lbq^jD5<->rNn~FJ5q5j#!Kh}1cID}?JUU~ zr&M7y$(ulvxb#gqD^vg`V6e`r2GHA>TJRTFvmHe=YGBo3%W+dAG}hMyIeex|AqSdB ziYu<~fLSl9?jV>6uJOP$LE?xc$ZBSkPc>HO!IsxGB>|r+&0XX&))sbq+p65|=9Tpt zo4HgUT<`IjEP6*~zRTuqt;)`BT3)YM6HE0KU1?c5qfuvZWZKqh>dS1IjwGPjNtU#1 zi@zw*X>=7dm6Q#H^2834eTSjMQ=gb+Zb@I~0&{YKPwq6?wrLAmSJVbqcN9tsOtw8*Pg+ruQx|?*OiVNx zvAtWcxz~%o5lTr1L2&~G*>me42-1$bT$2vMi@fRHyj*Ytq!LvHWGp49y2>R(1Azoi zkdIaU1Ifv%3ZkVit6{jlu&vT(F4LQJMq7G*cCh~Kx04Vv3jU>(vWDoVA@yHMxPKT0$XI)B*U-W1%V<4@%}e(3WB{qA_0epLzK z&YG>`r*YDMDlrE^Ck+sMyPV+9xY>iy*8U6A5OT z8d@8U9>qWGwyf|+X0OfWH8Y*bs?tdkh?ir0pIJY`2R1c0#kU~j6ET4 z{kPGB^;chAFD8v)E@1BvH())hg+-wSw4TLYQLl@uQ!;S{IFtq&12CU7T7n?q*>Feo zy#zE@QC?J#i))UrFn8QM^9u7-p1sJVIcb|-=yF|jp&Q=8|J*jeeQKrq`q&fmXRq~q zOlVPye`>M&8(J};5-@xP@gU}tY!ey6x#~hd-zkqTrJMwY)#-K#uN{z+;6@N9fPdk0 zz%O+W@BpiA?$Uk#2O8u`WQSVymz-aBpsDHULkG1jY@oJb-xCd$50C8ln7!QilkG60 zFrj$zV{sg7(5%`bB<6%I0yZ{HDYr#5BL#KW6cvsbB+x9X>r+)YQ+A2bs5JtK^e9Oy zg`B%#iAW|}gt{z5C!%^O$fg>|Xhd8!HadRv7lL4jql^ZkkR1Y-eU-Pk*HF>Dwr>7b zcQGP34A%4lck7Zwrcbu~nZ0YZJmb1Fr#RDUH0i3ndpeuf&o9(>x3PBiO7q6fyy}tw zu3)QWU{Si!u1_{(rWwcfpdxcH(!?(yjC_GK^g{%X-* z@{Ilv>+M5;Jb7Yjw7@li68$T@zuN9lsJnK$Kf7J$+4IMXF8;$_FXA|;Kj=k*@L3zx ztdg|y3)o)V=S__Dd0QsEE4C@WM)`};@)vH^1d3k|J>;Nu?KK~y(k~z<*!Vhiu3+$DBr;Q|54obttj8m+rJuZKV$p_(m`lv*-);G@c%TT_ZzdzPDPI(W?2YLA`lb^&X zZ$tS8-apniPI)WJ_w)8xU$uP3`12>7cs`BqwP^W_`KuM57dI+5qx=PM^Utg66XPSh zOv(U#N<}&7lUhE*hjyp*C$U8CMLFnG-16&Deh4@5cD6`qudGl1Ns%``5V!`Lb;WEisSa*gYs_P z{ytoyr}y86{#$wZ{c+o;q5Uw;FM9wt_v!OHfcCY#{K4q>W{iIk$`|tThoa?TtPk@d z^xwnFAD*0uGromr-^<4b`lyymvF!)ZzJ-@R8lArx{jZgBK_3OoFV0V#@pp;+VwVy| zInGa<{x^yX(Y_Al-;d7EjQ(5k{1JLS&QHAcD?|BqdOsQGC(ipVM)^u!{z`QJ&X~XH z{(m$Xj?;cV+8^ZYUyb%ZV}6P-+A%)9*P`Q}(SMydpIJHme?4yh^(eRT@*l??A7W|5 z-@;ecC+`J2qh)pMfOsV0d47abNl92Z*`fSW`2jS4UlZyFMsti_HT~_ zs`S|wTgC3CwHGhQ9=%|ciH}^4njwFZT60Y+ucf~$6Kb6P913F==$r8LAZ=n>v#X)%9Hw*KiVELa=MN29Y$+Ws) z5t`SSCK-k1CSZ~)iV?`yc|OG;R}|(-%n&FLwX8f})M$0kZID*D1P?Jn9vIP?L?uBl z$_51>LI$js0s0#ldbFBV;7!C~O!x+l;6-}z@;O^Ys}nYqhE(RG6yEYFp9FPCW=&0Y z_Q2xq&YJofID(YI)ST_j_NGD9%`uZUV3xKQ-l5)HXz>0t&QB zx%iJ&1?>_vOIG|R%~C@#WzkjN+_vS}D;F=i^4Trhp1W!hdwrAcJa%kZ-zIh>aCJSi z-M=buWBu;o<)h)ZHfi^TFI=`@WB5?us`~Js?_XVcL;arNGdh~M7!%_|ozy7HUbwmwUr&q~W8-K^LU{`F?e`!rhnIO}eTv+mY_ z90<2&i}_(4dngbd%6@M6zk(Y!*+Sv#moZb##QOpEt?Y@PvyZ|{D%k_PRQ%3#PrOIT z6x(=oGaBD89BKSq_QWsPKf(i%#x)yI%C-%MKdhk#&vRq8p)aeEE|=0ZdvWHy0+3m7 z^tgt2DTVlR74$L+rhzV1e>#$eb~^JN2%eN)wf@ACB`4NbML(~)a9h=2Lw0t#lNXMSWtbbwTSLcRYCmdonCGZdp)l zFs#+<;WM>}g%7hA!p(dR@lS^GB<3(n*r3w7Z203vOn%&?O`2|^cOchar^C0+$5j0d5hEV z8x&uqX=%k?+o^E4k3AWA4b0^v-eU#)NsWR#lsUtZ0B*OcoP?IfQ_aEdqTZpozjz_!cDvzP@ImlNG2To+(ZY zx)Z9?8Z(sGLXhd8oY5)@06kD7$1TE~(A8TAmA7iwA^e73m4cpPpA z>J-i0WNda5ib1UqG=NUlDDd2!<7s0QT{`u!P%U^ZJ@UT7<4|pkS>_hlcq5(B7RXj1 z^ZYh{t~<}2o9FZJsMHb$-I^NVhXl3!){bc1d{kiJ_i!~`2hR_~204f+DNNk&sZ}8(exi7)xTyS9dH${#im7S#@cpB+sk*{<9-j ztteR7C1o!@hP=4R3mggN&09a&HxspG#hwLg=UwvRq45{4UesKJHD40GMg9?POr6jo z{5)i+0*{FFd~h~Y7qJ{U>c|;poN`_xlwX0-3z?)aUsy^?Cyd>`9T~WEIzE4dJfkk< zxilP`*)W6@AL_#dy`+=ijXlRhu`1KgqzhF*C|N@t9QKMRlb6GWbR0;elVe2u5949N zU;Id(>~c*P!&?BCM}m!3V7$OZM^t~Wa+yRRG!+;HEwzQaA(VfkL_G> z+b*CqPOOkh2ljT(TQ|QHd2}nLmrC5yw5ccmhNGtjRQ#U)6lcd}-#gQ%X97`6hpaGj$QwHlv5(Pzpf^!hg9gSXEkF zRN%?Za5-!qn(Ig|CJN|}#>vEJpv^q~zaCoj=z&qy&(m`rJt9@&vw>|@i@&flw0U`H zi{Dzl{tN5J@2=tbu5xOZ)YmKyy0V*=)$HDV@j-Xv((2ICdOz}p#w(UaF&?#lATtVR@e3G=>Y^6&B>?v#2& zJDMsCu;}@1M9Cv(Bt-$SSJO4(jv*F?lHPJhZe-+-msdP6vc>Nv;Z3t_*BnU!H0%6_;;*>e9Y~-Yv~p&6$s8r?EYO<@0=% z!~0rW_YGJ2<_!nf?zHSjGMh7-H}@9wU3${ke(=GKJ;!%0g0XBkCF>=9)0zw0;hgFB zFT7w;`-N+o^e<(l3@eIr(avK%8y`H_j%^7#ag`uQH)0M9u%=aq0$B_uOmIE;6*Acf zs5(bZ*w_OG1U@8)djs|@1$w}qA{c-N6>*f~v78o+KM$FsxM!(58rSJ$Ukfg&ac$pm ziMZ<4BKz-*=^4u&VkH|szq;sxoo>5mah1>WFB%NrJ@MaO)}Ndh-XZ&X-=dl7Dp*V%)Y#y>=&1rqn8s$z9;~*I)v3HP- zQH2nJ(O&>t#t65K;hV__=$qd5)!l{sBw-EI4qS5>UMsITMNe&)+?VfrNGkp8>) zpV(W8;J2HFYfqMO=n!=#5Z{2AfJ4X>g2=`h2qKZ~HfOal8MBf>S1kGLVdtqm(h1|& zEy^)7P7Ct0*20G()tQuK$-?{~FRKbh5;H#z>oj%6ftw46gx%lY=PIhn$fzkwTiDam zVQ~k%o=Uf+W9^del7W349p?>{^ehR53VXLTH*f7NY(6s7=C4KSy_{Nq+mQHrPeXdZ z=XCl4=?y*M2Qn^L(z>lDKfh;N>yisHGI#dYtnKjoJJ#0p?xg(;-a&jHb66-0gp4WJ zJAQc9@gx{@8XY*QoSz^fg6fnsoLm*Lt>LH(Iz#aeQ$GWA5eYBTtrnygDr5!RpM)r* zn{FOPku=16k!h8TpmfQb#Y95N79Y>Zp4ex$FukXtD7B})e1S2sb(Nuh>CVQMo&CkR zbzM0xxLY&s_qetb z-QpKZgYRai2U6zm=<)@YALuMz)LxfTo$Ru>{nb92x#Ya2!ursTUiOl7sjuJ_MN`dQyCB7p>Tnjf?cUBER%wsSQE7~}3Y}GK2rxm>&LUl)6jPzku{erKI7Ejvx-B%*8H{Nv zDD##&6}~*Uq(runS<1W65L~jgF|?_}x1?iepkU#??yfD}<;e@Oij5juZf!ws&}SXp zGrF#`KG2`2=uGxx@p;-V{YsZ|aTbDKMSXAO`Ut8-nnVbm)`I%`2!Hll?>@d=Y zHn%iZ8<9^;!uUmDE&h2K^OS&-(tQ$1mN?QQy?+Xo%L3>F$Pe+}eE*CR?Qld%##9v^ zv^xB?B7d%r`^n7!#IjbO35$;Dr_roVCMTW&R4xYmEqnwh(s2>u@Geato=%(%1(=g- zLq;5785%0})YE2nf_s%fJLx4y`AvdV2Ls^>IkATF?it0r1XK_?7?4p!0}cbhD{$FB z?+Q^tW}(BcIyt~$2l3jaj6n?kNRq=Jh`waYRzx0HT(X6I^{Z@*6{Q3-!kgEd?SK5E z-Lg{LG;urT4u=R>G2$y2bFxsYo=6L(8_u>fF55(WMO~4tLmPO>srPKMkZjB2_bhoF zK+r%uD;$M*lRSe$ba>q|(pgg01Hq@VPA3(XVuG_Uw(YQ8nqasbbt{6qLc z!KtD61fTkR+~5Ej#UQrQCf7&5Z5e(_b!{h%4rfV;ru!qfJh90Zw0}vv26B8sh)<9~ zuhVMaMq&~=d50%43qP1DJV!RB6PW`XjG&TX$8-?AcGpKkC5ufFw*9b|t- zU*aD0e?D0rZEY> ziF;yx8a|19bCT8x@v|C!C$n?Qd08mgo|`Lb%(~jLV0mp*N}#VwzS5MS=<@QB_}yC= z>}k#Ks3veCKAvqD&o>cyT2B-KDyZmCa9+smUDcrm=;S2PBn)9C==ZQwVJTS7{7rUvA)g)O^WHp93)&KkWL6Z{>7-{afMXKwH1?cuNkJOQ?D z%wS8~-6D@qWO&2hR@;xskBCnzmqGWnxaYAF5Dz;R1_Fm5k_$aUE*8cLiMve4?~qHD z;s<;(X@uA)E}_9omy2FbJ5o6zh)0%$G?u1~WVR1PP{VKsdLzac7S73I+fyNedK;_D zoSouWT3Krz{w`ID3yMnnYqByt8OzH0Yv~iy{wVg%Lww(43J>%=M!BnEwhwN2N@NoG z1%w=WH2MN=kG>2;bw(|q%)rh<{4l5&m#Cs&IFCR*Wa1i#?6ycX(9UQrx(-~^6|j2( z#Ac|;m;;=VG^eIyq^D%2W@3+Out%+D*rPlM+xo)kJC!{LuhJcxTjT9m*5S=K#TxJu zqHrtb1xo{nSuK>{u;YyISEk_-aq*&>xM%KK zkegCcQp!`xy*U;y<+?Oz)6YnIPT%N(ieNm7#IBFG_nqBhyq6Z2L=Qx1e{FV#H)AQ^ z1NX_>#5+0dN*C61?Nx+?x#$xZI@tE4(!x4{icM|%=`%o6;GCjoTs(+uX1aIHPKPVa zk?u?fk)yq=8Y*THIjg#p**?&^6i(}E6BA^g*LRA@)TWl%Bu{5&=^$LJk+0!4zJ_+l zz&mD8-yAF+sBgT5i6zK7L8$;z0RWC zCGJQoY4v*>s>>Z+;?A_v*1VjC>aqu8(pa1!i-%_Y(pl#&eDB%!!2joXQ(>3Yx_30q#rVSY6}Z%J?2B{EnDO(3%k|_-L*)D;;(fF*LM~2=WGgJz=kHD zfh-N4(TGdNf~PZKBmNNyqpgB75hRI%YgUDFB(s+@G4A)wvL|*oSh5RHW?3{l7_-S2d@G+1b8GN<`&V5!HF>@3}q?UoTp}|Ni(E*b%8lKU?DG&??WpuE@xI&gi7!Qy+ zPSt#Q@2Cc$vCbq?a4 zT*LLVq;5dA8zxwjlguPg3Ql+z^W`zi-l~cwnZyb&R7j$)u(zjw<<7SH(PfJUR#aWQ z{~||jxsu}Wj{C$zbF?fgwL#b5;2Qqg~*4YWm29M;m3dlv^t4Fd?fs5 zwr5%RiVv>;Tlmst>>x{~k3;y%b}y6Gg!fEd%2@cWQMQgLN5dbptC@0X_#?JI_!r=2(-NaK+^(jvYO6=$ebJ*?+-#dw1{J zesIUZO~~iIcFpo_E4B>|EMB;vuXDI-cwTF$siD5QBiK=1R#H@upHr1vML1(A&SbCE zn_x1)Gk{D8ex9lqXTi(W!uV(st#meGzOz~1xnb&GST3)rA8yDzRMFI2ekc<`ZZp13 zl<=?R&CTTpGwX*n1N8M^MRODC)(`*l-5HhTpU(LD$z3zP&MI|z8kbfzG&MC;Ep7B@ zl48G|`Y85W?BC&r*l)3aODAH##r};gg*~+(e3dS!IbU!IwZQBcN7kH&gzpLOi5?Yk zpd6%3t6K|A6m0vZT4oVn_ldIQJ(ei9F@xr7NP9h4C+ZXQ-48Kc=haN#;R^9K#&d6D z?tnZ&Zkz*1Xp96N7=>Wc2`0o{0@;cja5Ra)Pe9HB#gJf763B`s$cdsnihGA8YAlH( zg28GQ^#(xJB8}7vW3s5zrS=F3326zWq^GQ?s|2l4FsgkU=jhwY%zE>lcux@YW`lkt z8LkuP+GH}WK>F#Jhmb%7#N2awh>)N+B^JVd>yBG4J#x{3q4A;d(Ggd^udv9KV?&NO=Aigc zsilm>r;8x1x|PO{omKrQdA^g$yZ!2#x$3#*S%(V8TR7N)vtI}plhXcO&dQOy)WYFDpEt<|B0x)zUy-v^#P?H>|kXzByxXC636$~CWA2$0hP z+B5u0dNeIvx2jFWsU2WO*{m}cRoA6Km*^I~S%V&bf-iI7nl05I+cieyB{O(Sg4v8U zm)m_ANj<@W<-<$7zhwqFQI}9$UCWzEo~%KyKOrx3;p#2b4_Wk3Vai6(T#b9FH4_;YySxdMWksKnnMMU=^^BpYAj1rcOo6Bv zj2a!2jE-bUIM0L^=JRAUYZ8>mJcY`N z8f`gcEZsInxSwqOYgbR+dF26EBMOR1$s< za6lKRdiGDm330i6jbI}T1&H1p{FbKzqpO!*Tg5DJ<|j$SG{PAboEy$ZJ&%@zKj9}U zHYEaqGO$vkEge2GAT8*swK$#W4xisvmEJbiPyDqayawFWZv%JL0Bb`ssD2~Gw)y}P z1+d)&9r7(3^oBj~j)f`{(%XnO3Fz^<6#$pljr1fU@*hb3D~teHMQm|mq7gu4gb{$T zRFo8Fq`T5=*2LsQFbzht5tbg%a`=*1F#T#u5ub`pmMQ|_xrt1^c~z=cOvI*#a9!?5 z;|9bF&o1)gB^UJN-0>yz-j`qA+qtFPbK=_lkL;>;&)YEXjyu~9KYM|exg4$Gi`m8W zd8@B|P3_p>a02^VI6>YRcCtT&Q)GYhP~d{|lw0KB+T%;A)(yv0xWS=@ z{+FXOq!&781v|`!x;fkTY(tv6 za1w$7u%fURR0pYu8VqkuNy9iw$T=nr>xyLOikrFXjOoBWQ>HKM!Rhg*g`Bi&x!n=N zWfaN?vFc2^#wF{&CFyr^R-C0jpmvn|E+lfvTlHG;CC6G4H4H6 z?mx^u&Bm49e1EXYKQDhCZ6Tg?GsZ!PO!#@TR5#KYMy-7Nto~Zh#m&X0zJd5e)Q2nT z(>2SNOFBO1i;Gk5oq!vtE)>*}MGNGUgnogI1B6DwACgG4g4->|<=#a2fM>YO`HA_^ zY$P~rTDW!rnkrL7v^zYG1C}$rtlSxXw^WznavAnYkDi$0wd6a(|ExC>{`FW{(Zp&b zE0E`W4V?7o`XOJgFfT+Nj!^F7_;+iuj_`(I5jz}K6ALLx(Sw9?0z-`Uc*b7{R{ zRcoSgL3w=-rL7D9!(tY%$j%7=ZH`%ByG@3l`4=o%S>3$3D?g`WTc^WRUf>YLZv zmK**RJcJszyF5zixz0_UFeG$_+Usx~7UNdPrkDUAj{}?&@-ruwGLcIZlX@D{B+F61 z^@jTH&ibK-p^_q>#g?b1bixkcGexFEqqP&v0R;lUr>6wQ^l3*H6=;Wp6P{_Zq$`r` zU?vm$1NEKj;Ku^iI=7%U*QPNRXDvuB@7@B}xrGG-Lmf+e9h*XpTbBe4%sa=#N#{$V zA<0oT^YfGw9Nd11gFX5tzFyhD_OLoY1!6P=h)iHRc(HnS}AqzS&XF- zS{bOHKRQH?aJXCOGz zMa(QqU-)WxxkYwafP}f#k{o_$j>!~j*v){Q48I|cPTaE6LjEe|_41avXKVUAmH_?f z6C^3d9RwzxU`MdWBA#g_@Vz0+$2gc+Sn;*Qk&xO?q$`^z@8T{-I^^Ndjq6DIrAa<} zE537MS`nDs*;~zg);Tno@fZ>}lgmn*8cMs%y1hup$QBfGQ)(R{m~!rv^_2IJ6~vYd=PBsN^mM6ntuguI zlTfSy+Pa34ld7)yQQtrUYzkV>u&?FroI1bV;jhmjr~1L$ZqKev`c`>05|VazT`*W$ z+_kbKrzJygGtNag*y7Z}#vDq-<}3>N7p{=HT^ZqD_Fvo4chSms)xW6y70-5Y)`5qJXW3YWpaqk*Qy`LjC2)JZNuW!nK5WAgxXJk${p6Ee>G1~Oll*R|xv+O@bMv;|!cb^QPszY}9Uc1yO1l3($1Jnnxg3^fxF~1N za9@`GahAoH=2yv2ljoDnhu90o4b&49b{sl%99Ctfo^agd{C!19%}f{Y{tzO;A3 z<-MqLRatv&VshCWGbQcn8(7jwuDy#UzLJ{3ti=NZgQfHLE-48t-P_u+b-veQPm$No zIV;oqlX&j91@L9#&LHc|tO!+tC3M1}yQX+B@Q zZbFrD8weB)p)j~pQ!``?P(8lNSMJy zpNY_E-aD(raO#d2K6|bWdRFm)9r<*Oc`F_usu?D2#@RB4J67O0(_AULVkTn374zlp zIX2^I(#L0=gFZlv6A1taZ0?=A{*|eBq;`HyF#FTT|S<0bvl37m0PU>8{>m215sqnMTZyi*m zqr!usBm@IWni!czJ@3^frdRa4jXDvm@@{B_hz|#4lqG{C!vX^`FiYMs7dga54x~q~??pLB(s?d}GP19!(n$BtI zAGkZCeUPm7nfd@b9qofI z`_I(J)Hp(|v!_D9Jc&9w{WKvvXH5vyW>Ye2v=c~#2n}y)EG_NrZd}&1thAxD!QqUE zhCF-hIf{n4=W^9)+Rt51Jaz0GH|V*@jQyW-yT-^7BttgB+VJI&v8EhWIua!*%z@Ug z6lNMxx7!Hwfdcmi*b3lI!SL4Zw7?O=#U zJGi}%AVE0V4TrqVO=S>F`+Ay&n}^F9%NiT%fngmZpeB4O0ri~7hO+P+rPYa>&T*;E zU36vZKHZ8<)0bo+8x#h)$4HuWAq*YrRm?3d1K<)gDr=_^*FjjMI7-H%3NH^Z!v%z# zyBj?McJ6R4Z(FI4Ham-LXY1$vpIA&@IN6g2(&A|e?f?g->X(E*wVix)EDaO z?P+hDEr!z-`dP*Bb2}{aKc!55>htHg3qG@e4y){^GEhwOHzco(Zfaxh6O#LvAZOpLAwxa5{6c6Xr>+ysu%O!wr4&Se1ClFA z0LqXg95oW()jzeMSkc*ag{os)Kv30dnI2RwZc9k7(S~sJ9vsN`kE|OQ8yxFj&>DiB za7q4RQURCr!xt>+J>_$2QE4%DQ|2J0r{+IgYdF{iRFsi5LQF+xLEoS z%cd0wuT7$qHe7iMi$Ww!pVFRit2TTs;HltVjg)t$y^`tFhxErjxY97;GIo=Am-Hz5 znZr-q;=W8wnfSf*=mhf3i!p7~oF}S1eI1k;GaMFXKc4roj}?c1LLHsQir{sCUAa#V z$@Af-5Pd#5!jLzD!210;l$^vmrO2eCTOyA29erZMh9@rV>${XbkM@bH>0kPFqxy+4 z9%0vt_ev+Z{{!VMQ^yEn9>%y7o12~>;tAM)s^LGXWLKXNjC!_5_T`bnE&{FVDJ<-v z&#uBS_?xE7-8GtihK*aTHq<9 z))YFXqKQ=(jEFBY^d7O(Y-~D2&^cD6OR-!C*6gKByFu0!j z$F5MZ^QeDl^4L`W;7!PSxq*Uf$gQ4nkE6&$PxYTI6N0H1fMS37QR(*@&6kB$!#G6KtW&)$3M8zRd;=?8pYd^Ba_HqCB}z_rk%zh3jM<; zJ;^!bLu0|i0F2=!+6?s6h6@j0(RQ{wM; zt@H!sC2&dEp$t9gDDg-}r+KYcTXQp$2WfUhf#O-;(fmS4gS0)aMzm&=FPRpK5~iUn6}Wu_ zaV-uU!r~}4f}$Cbg(|knj5t>`5kv$ApcRF?xDfE-%5izKGiS!Ts%h)0^L#7?7{G4V!{Vb3K_;b4rp}JB3(cBU_RNs5$~tK=8Zc6 z{z=>&O%Zkj^90*xDehbuFc}<0g}@C&so!W21YeFT)nPN_8}reL&Z|SLI@wzhh=oB) zgjz8jwgY^rXyC52DEw@a%YG5ui#T|{+=}wQ+G?rR|Z=DU*y8iHQ z%o>*LFow%489B*?{f#;9Ja;nvxsdY)?xJ|NAllT9|Yfw8Z*uTTExVA;}kSERt3~hzSy{LZoPt`WqJcm#eJVG?(58_ zGG zZD15Jx>az_zzsyvUR%fqG40InL1{$K`BfC!_r-`wblCGUlan*^?2i1bWcKCcOur*K zY==KHdEx=uh1!*lJeu)5MCVcMeCMq1Kiz`!xElE1HQI}D1~P=wP!Y~O&N#&opbY7) zU^ZO}@=SM-B=!TAGbPD9b@Zpn)a*%@YQo=0Ot)S9dl0Aadp1uooB}94AHZ^oJvME5 z_+3tt3`NsF^Ynh0S{jr5dGSTf)0kVIuuxSSB03tH07R7$ca8m^fmU7OrvwqW6dOOg zU^ryAAt|cOXUnDRH*f>6GAl=Eo8bmv78S{hD~-}~QOcuca>i%ZOrgD&5ZY@AOMUyR zZyzu@G#4wt2GuGTYaK@Anc2{<$biIj2IYieQ1Jiwpm*ul7{u3gN$?)_2%93{s_H9c zE8v_Uivi}0Hq-`O4ib{HMwowD>UV{*Vyhr!gx@<9FE-@6F++AQWt8PU_7for zQiCX#NN~fJ(*K$%B_$&24l9dEorZW&s$PV}tYF4)7q*rzp2UcaJi~67F^x9B) zN|DFr%BX1b<;|-|&v3RXI>K89tTHm&5I@$K zMW67{d`N=A3zJKb*I4&BV~-7}_Z18OdGb2hrTh}-54brLPRVg|u=g3~MD=)Gy0Za! z^OTpTBE*Dqe4cu?%wC_dKt9iwojqEenX0k7oLI*jC#$5R@(bwC0*7t&B4%6ErZ@)( ztDyGcDYGZF`P41uTt}09ojvuRciYMB7wyC1)#7|94Ql|Yi5%bsHi!>K(i4=OsDtfo zk%&n^QgLzq#4}Rbl~>|tJ|_;)&xbH4xR>!94b2VB36QAGkvUnUaY&82ZhnXR&rpYA zs^8YUhdK`lMaWQ~5l&9^Qy1x{U*o_T%tM{W&-ARxzoE{n{8eTRs6ek}7O*pJg!@OGs@Er=cLoP$` zKh%o@0vmi&g(S1VYP7065D!I-@IW|BQ-84=v-8c@57}JiAN?u2!1DFAwydO&wP{ZK zZxhUaSO3LojA9Qyt3?8OU?%19`)CivBqLS=AJJe5_&}REW(-`WA}km9O`HUXN+egX zYp=fJa!YPgadDH+a`_jvmdh{7tku!_^X;s%z=#l>^-Jzizr&^&|%{9pdE6}5LbZJu31^$K{ z--Z7=#p41-Ta@~SpPm-%?YQ0T?jC9JsYmEP%~kvECsqS%cXxP9Tt9g;ALC0$KQFU>$cmb>)pcZ!66ygQJh*+h%uXXZ!AK zFKmHjcY&o0U78e8nj+l-Qq`zf&>$8NViz?;#1ab%*ieZIYAm0zMPp+8QY`8DG-`~I zoj3pAIrqIcWtXy$@B9D%Cc3-l-G0x#_w*Bqs2x^0uxDrw&DC_M9lsra`|T+AyYaW& zg4iP^A(5G?0 z0A9b_aknl-yfH&52^V7iV5{lPit|H(aEG~Ec0o~>nvYy2-Z6e*J|Ui`bxo`fKsSF9 zyFTYyR+nC8J|f=HH;M`8%Kp*WQZ!}IJxQXH)%;q{#zzEJ!+&8r;OFS2Rmdvc>c;?@ zFFW^K@w`cQnNV&<{grloR3%?|+_F8?7nJMSudXz!#Hpx0{9FM8KA8tunc61T$%l4-r zKs^EEb-XBsWOeN81AluAmCTxSApV@V4)i2v3SjaP^ySCr8YkQIW?@qWG6^*O83zxZV>GUJ^cwXm z*AO08MYs%?AT0250}yucWGPYt$$?D^cYt`3{hjA>55J;EyRGCY71aTDB#K9Ft_BQqP z$oZ@1RkiYi1;tio;>`iExa z&E`*UhTQax75hIOXI`kbA(|W7iLTH;RF_-rK)Of@-LbKDvZ)@ZbwK zi$S-zHbzv{JY(En%`Y)jyd$ghwdy|CI<>|a5ItXcO{p;kDI1m7@SZ#ciY1@q5wGDn zAv%wLs>p!$utQ6%1uY@#F5$YJ%Co(wyU%qc`W<+T{mQ!YdfD%#dK2b*AL!VpmAf%p zn)T<%s6ey+oaehYdbc&<&*`TscF|8-E2?{ULf!dXw^P}7RCRysddTT_V03}i@Ar;a zw>kQS{u|=~#ifosNITruyh;1mcnUIz3n{)Nt}&>YU8MpMZXulQhpVC5e%2OKmH-8z zGf7?GK`KlE;24YKl~ z$OLUz1R0=iA!)ztU&#?xnT1H5v|4GYs@IF<@_201OgLZA;Tna0suCh-V1!hgK_AH@5$mEv6$p%@gcp$fUMGb z1ox7HrC@z&mXQJx6vRx3PlUhtYvSLGVrONpeH!_S$`Na+8kx#r=&S6C&ZE0G`h~d_v3|Cy)#_*H+@%#G7l?YSsCV0l)W zH`UuTb;a<3r;n+d~=h(rtZi4u6rOq@|Eh( zzVC*Yw0n%Ss%4`$o^w}4uutTbI_Loc8&=QVxagegfg7Nu^oba219{ZcRaL@TQ78x} zQBhjrBPUO2$1Is06zM zB$fK5m{4fG&Hq_G`SR0ROa14MUcdih^X+Hz@5cWRXg59h{W9P7>mK@k$ak0dS>s6; zOvuh_S^e1B;bO_@R~Dw7yyf&Oi+m@mr$ZL=oVgY8rLTfz>uHR%Pr&E~UI~TtGZx7( z7s$uD?M1Mil44zC>;~o*gNa2*aSGsW7r^eb>Ji^(J%vn6{!9aV-dfRtpkR(n43bll zmc2H0+zw8~G@(zr3#piz%SX0e^@Nj#DP#5&I(HYCo78z2W1cb@Q6}Ndh1ZnM7e*xo zSBp6MsqF(yqv8*s!a;V@>BA9HRr~v_r>a5;qhiS&%W~6!Ac*$x?8tF9rxrGaLM^Gj zJQotC)SR$*Xwg+~BWDoYaC66H`CCs}g$Uj}wyo&le}Dbz5G=d<`ib|=9pl8KaZ8xm z5*pb*c?q%4?_i(L|34UKE5eI+ALp-^3YVR7%N3-QTiy3rCHhJK3DZx5kTD<|cC4Z` z9ahse6{TBLRDa}Ef^5eF0l3%8cZ_@u;%O?lG9=Sf{hVqs;wrIzw@R~sV+xYUw>S2| z$+qb%vSfgVvSsmsJR4QNGz+Ym7D?0UWm& z%D=4MFX4!{w%d5of$!1wFdSrqtOXZQ}zLn{*U$j*s=Yn&v@scmSv z2Ian1pGWxzG$kd1jlx!aVLmDLX-P)(}GkYxmh?d$z`OzqU7TyeM|4MHEL8X%0e?%*m z&qn#RR(aSSq25E_J!m~2)+p*s@_JJFH9eMpM62nc{HZ9f$nxT^-2P6OmQ(wWs8Wg< zw_mth=bHB$pMd|#R>I1BNx+xk9pHPGGsdx!M5d?XC*e$bGHPJ(jPOga^6a4~C?vZi zq$0zH3>r`yfP{~z29abA1YtW)7DcW?WJSc;Xs>MTr{`wT<%5V-l$RzAH~q-zz<}b=IPh?YA9#Y{8OeguZQ?FrHa5bNj~|v#U$8`_%tF?!k@0;>jc0=T;dj_6yIp?IP{PWy@YPzuJCt zFo$?5_M<&CocNd;v?LOyJ@ zbs@8-aRVt);2w>Po!Rh?F62SDq;&v98YS!wEX@Y0Yy7(C`uRBZvXb`kefDRTrq}lo z7Zc9}fH(lWIH8i$N8Cd3anUoyqB=defAGzK#V9|Z8rS!Cs z1y+$*J(*sQNK6}BzylHk>EK_i+!66FzGyuD0RcM)w)Y1DR>mP9RD9K>*N8(uE#~H% zjC;PS2`eYwa??$>Ok6pkN_3T+);e?1==QVjKY!S$OCMXY;;~CcwlBV6PIgUMPTzV9 z>%@1nH_z|?+T%~W-haWCuB#a1POmm5UG?m_-`jun`0-co|K8Hw>!+vtN~;_5Ep!vg zD)T$_(dY`0W3~<7$+Xw7LR7>gnGGWdvYTVgUT?|EJ~wx$YojknSrzkkBp*JLV%kX6 z5yiAIZ1WjS+*TG!yLoY-F#XSAGMdRC4KCr+Tjo9LyeR1dW&Q(6ltD;~uVn5+nmofX z_fhA;)F)@@&1s>sVQdnWOZI6`niE9_%4;@%NA{Bt{>z~wHd)1!mtSt8MZ8x}nK{Pw z#Gj#c1=(nI<%55}g4+)=uz$Z|$%IZZbF`lu`%wn1a+wX?%A9S!rS6VCsJWHLq6fbV zp#^9WzY9?d_(zRyi++i`*!z`KWNUdXoZYucO>qw`S6xPNS}LesWGR=(*+{;)<}5@SqMgyv&;fU2|9aGi8F)sJ#r^VY~!2`nK3MDNM}cT|9;sy z{_M)ys!G^km3ssGyRWc=h%lmKlkeq?XSQ3%%fArT{(W{ zsLS`RS^N5y$rDDOTCMNWXZM{ls7%}P`xJTpk-mob%2TlJ2e9txcvtQW=XMTIy`Da~ zs*1rWMqxV1lZh0hRcuQ2fev)39xS;R_Hu?-CFdEeJ!qggIL%ml@aIqlY8q$y?ROLv zP?T!%J4X4%!nqk48Q~0sR2_sAUzN3$<;ZZFM!aPco**Z~sT83jSxk8|Uk(&Dj$WYL zU{6b$nA%iqr;9Ns^XzJGW?~N0fZtlx+~6L+533rV)Kt%*Yg0dXU)9?9{H3DE!z*iC z|C!OyD9;Rz)~C4htMTgKJSh9cmdM+ZVu-wLotf`PztG+^uECkvfaSxfP`2TxP}k#-nv2mUfmvnj!3lAG^`vc&6Ec4>0M7wzd$$PWBrvcSIQ> z+95VfFD3`6Uev6JuZb)NGfu9ms0~$D=8mrPx{70l7}YfhXGylF@p-(enf14$b}&1N zOlWwuD7FVKZy74c`ay^@`q&tK6n@r=P8Lt{oCAF$C!6`tO#nn88L z{m8Fbh~y~~PCcJObeFW(=H(UTc{4}1k7yi!dTYsu!TmFf*PS+S{`mf>c_+8V*@$3o zrekle!QPBkt_-I)AdU?b9 z)2?aVIJIq1Y^gl<(${33zT<*X!!F#tX6cS$&7REkjLNo2117AVR8v3coKeH4cT^$E z>E@wh)AOhGb5@AgxpHXwm@5xlyy}IGCypK#_NC^R2y>iv3iRpKViH8`ZZQdb^%BKTx|kt2Ld4BPmsn@% z6}&!~&>dH6SD;0=_I>evZllAMqQB$%0Sp_u)b;p6@7d<)KQup`P0^pqivHpn{1i&P zc^~X{?#I^L7tX@N;%-IG+W^9zmEmEb8&IA(#2m*&;gSOfSsi3Gv<5n?L-7Rhrk0Ur zfwvqRZOO%pN$S{v)V4=i6FVNOiTiNYjOo+HpD-55{|2=8ZLY5^DJu86kSohRNk|?C z3fwtQ)}9A7&QCx(G@OpcEgv&r=04`Xl!q+KH<#a1Llsb`ccWC>Fs@|b(WRam8TQu3Nv@} zK5z&RC}Zf{)su?nD9;_Xqj%>nRw4P^RnfT%9QoYE_@izqhiS#>eheDvlYez{W54dJ zTT*q?mk*t`i?pfh8W=yDpTsQUAQsyYfc60rOtuxgRWzN7|SFP^)j>|;9?N;V=$Si1Is&NeDJGUva+j{4ATkY6-yK2(g zabLT-mDwtu7dIL|#+@)osTXhJwBx6~Pst)0QP7C!xa<3TPON`?2OW?oux8 z+Dx>hy0>dHf2QvX#HFG^{fFk(@U}*>>ATn)krqMpeKEc_@pni9lD`ArhM4QL)tGx& zC}Cf9rYfM-(^Yc%An*8Qg!4As9`c+78H!8Z?dG!&>c{0`;n=c75vdfQ9=Y0zQj13@L_miD7AcTc?zg5=a!L| zME4xoL)cG)-<|lEzGldXpDxEMGJ4pBd)D-uSsTkqZl}b?yONPn(LQOwczRbRE+093 z`hd!;piet<>clY{@P<6U@x;uGC5fry_YFsUa(Yv)n`ONzFkw*!f{=|EkHClE=5V06 z2t-gia7v-0%3 z_L;*^yWD)mrut2?lmX`lnUs4ea6Ao}ZYGHW$0ysEq6KxqE{6Z zWTY2NDws58)X>2L+WYlwLR{_Ys&aUx=jNp6XXFPFxesp!DrG`9H#ih_>m^W0x3?Mpb>@OTlLuFv{_5(kyz^e0yI}5! zmCeR&=U(`jfAvr2Jl1#N8OsJewtVA->y}ohqz%|~>XOTfaz~#szu%NgW;87j@9+BF z+S0*u1}`dYe5;|j?xG9E4w;<4`nEFjM`C`Qe7Wt#9)UP>jYpGaVb>`@q ztLJx2>7UoSV9TjDG@Jt-`!4eV-KV>m*ZZ${=G&lmpxPXJ=Jrfy*XO=NOkwB(BR{V-rT!l@))gU{Vyvabur?2r_@}37c=L z7%^|ijPG}(gnztj=H^B1gIDcXa@v)xfo$i1aYQ?+6V32S1pcPSF3PG;o{MnvG)CyFXd|Gkn>ryABw*$u$dKQs^P{l zo3N`ED@otH-M$f6?FOd>YpVDG0Ac%m)OCh`tE9??Sfoo!K4o>2(KzV#;%cjL;oxwC$UV3|Z%Y@G6?3An&dp80>U+#ksmx zf984V8CT|~7IjSRf4`}KAy(nJIgyr0@FD# z*?MJ2ZbKMQH5qDI8dP*&i5}Li{xIv7ykz0@=0;vG=t?U|k1h>tEdmlt1N!4I3-)^L zv`bHEnbarSm7A7UUw!h7gq7OkPqS7kkg47_ZNt1afA*wcTE>}6e-c}!o5TxpnGow5 zG6={fa*d&g$#Q2nGanfZDzjCO*3S*L#5S&i@sJCVSW*!dDAfntfN?xj+2Dh`LQVCk z@SoImJGr>e2Wf_)EF*>&c0+OXV08ume3y>rHMs!<@v&>o3g-+S)X~ciT5i)7qc6BTZfP#c%)PHp3;1Wl?DE$M z3pliIQC&&ElkS_?(09Y75PLB`>3_=3859GHYY${srkT&VJigpeE=dn_ z{pPzH$EQ_fidC7Zx#hWirw$4Q{X*M>>4L5v5iLcQom5QhHbptONz&y9H#v0qv}mcg z7IHkdvOOA=-^Jdz?-QdzHB(gK`#pC3gzw&HsT$<(_bQ@?`X`yI)HbZLTZ8PnhyJt7 z^VMcihwqaVt%v$va~aHCU_q}<>HZxzct7mtXT}{$J>qtZ3y-M`co2nP+URyD*wpb} z7$3n-Ml)6-6Q_Y#+OFlW-&T}`6W~|j!p*243uJickj}m>&5dZH&R^dd@{u(?NQ7WE zd$vi$#a|#CEG&k*c#T$F14)nOsxSzz<00_uJw)ZM*Uu<-onv?m!{=VBWvBHkb6t?; z(Nm07S|DxVn+yD&%Trt!_Nlt7ZL)k;0R`jb2H0CkCW=;?d(dQ(;_V3?G ze(m4CbMR&{zBloA@N3<_n=92cL_gSq<1`_%52%PXyTfoEzYiaSOz^90cZ|Qq8ZZaS zQYAqLBVsz3K92jc@jxK>WtvpNz|fg|A0b0Rt`V|Mgs%Y%u7yC>K=hrZKyS#|*Sk9{ zst0=TQQX?yB@s=|HE&f9M7JrK)CcYf7~%i})zx^caA!>PH%Mm)+;?Q}kd9F6Z1JET zuq+x3kA87>0c;w~TiIU0@anKw0H2PwFE#H}?~XnI>2zfnd0EKZpPzB^GD6$Ol={%T zvxn4&=xc@fqWUD}k*}OIVOKTi6eK!@l{#LMSVC--b=5~sn4Op}lN?2j9`j`ibG+JP zy6oqjT$h|IyMh$|pb35;Hmg;zBQH{_!xiMptRrhT9waC~K>zA&i>WJDs=|I_`!tLnF}NgDD=sQ(J)yDTgyBO<%WB01>REJ!7FQNGHsao-%*3QF zp#7L@-hjQn9jMb+hI&dPd~!5ZZuK6SBv&m-VmA z_NRAb!A7IJpt{t1jj=Uyxq2D);Cs-Yzoxq(e*)PmWi@NcSOm&gOIedV-N48jUQ} zH=1AI9dauVcKr@BM7>C=%NteQh*qgQWW!8V-x$4-%ROwvB441~Ke^ma2R2l{K1z9P z-H_wj?e#~w-R^wA9(7=`a=RQ@vr}%j1DmWr61~N^26Z2EVEtX5=+mx00rt298?N6T z{gJU2uqPZ?UsrDQQP-D%J?X%v>TgB2z!%-EJmtV zyx_pT)PG`r4tsYQ4lJx+ z5&hcuHDG^tV3YJ~v6t8*(KiM&zK!1KG68F~VdiFYM>HS$F}D~SVG|P>1t9|Fyq=@f3Aw zW@FjZKv|U@E~!AjL(LnacjH}hyYiiWhnlwnhJAAd9N1j*&gd1OCvajN*ktoX_^wmA zpaYv~eiz*WyBW9fu?;iRk<{$(utRkl1L9yy0ow=IKnK>MuSABtoq!FpVUbt$mF5Es z>vUia?izy~*cN?BbQAY6#DQG|*o6!m>cGwc>~Yug=wp}zyBfH*j>i&qU>5*(F2hDR zuyX*Db%)!qu5a~K(T{n2BYS|2vSATEN8Imd8)m*`UJ!i_IiuaiI1_v%{t?P{@E>mi zhkQzHxXKGDD<{;0SPo91@M0!iz4TQ@!p=|@JA=ZO$1lM8K_J z7q#}4DA|zt(f=g0ol0$k-Z*62sY+^c+u$z!)c6DDGh%hH((@;N2A)+<*^rxMo-JO8 zAN%pNf48|G?N@pJNbQS@wVO8tvmPENQSN`Y3rBiN?S`GI-wJbSU57h7wM zws;>oiWA}|rBF5y(Dz^$L4i>!*!ayvZmkN*P@q*3q17M-GwrcNAZhX{Y^E2V9kz=;-1@QzZ0Uw+VKsXUI!7j0JBL~Lh;C&~DSfT`|4>+{YroJz` zm?zSy3+-pz!5abrFlbGz_OT|&mEPl;pk-%GkdIOziVL@UFAaRT$Mq#Ot3D!HXyDHq z?w_k*vyZiH3lVQOZ$sNzooZI5{%}@~S3#li4hsBc& zC8N^86IcL(HFPlL51#5^PRMI+z7&yjB(97#m*?bVWvW+?jC`j0V001dFP-|Mz+Q*# zFI`Db#7pWjDy!!{8=v97ytFxXJw> zyBr~>)y?TqUb|~#A6wOH`OIQ3c>Pj|WALSTdc;q(?%=2B;I@MjL50tt1zY|FwGI2o zW^honT$jD8ouAOYkJ>*9{7=B6Td3_7hQ^m!KlMUtd9C3wm+9kZeW0f6?R_Kh=!UE8 z>+yxYk-M=H+}3{xk3MtN^pyw>y1z8SecP*fDqUg_KQiIxdf?0>31+JrxP zs)AO3gGCAVrt8EYf;pACZ>(^;_mj8_!t`^N1e%hJv zTl%wT8f!JDmw43%IV9gtKiK#gHQ8yntGa%xon*CT;T7aaV6bq$@Qlgl3v8JpiIKzI zOP?6Eg$1>Sxn-khl=qT0z3bDwva&qGTXpbbJ!kOo_d|F@cx&~8ca3-UTEbh|&-3a( z#iep>j$=MHzFPf^5;?rL&lA4Ner^<>sQcpjNhkSRS}M|r^t5jA_iG!g&Yb%dcxv@B z9hzJ0%HQ4($}VPqiWs@^YvxrDQwvP8voXLWR;F9RZ=XG zD$ypQMg-eiLrl(oX>Okm9D?qB*mUOs^Bvhq9PQl4 z{1^9PQ_%7A$)NchWnaSJ<)T=a{Hi@^{|QRL5v`AJG8dXAVOH&~=AUAQpX!(*T~vrh(1P;uJAfBG>!D4Wg82Uz=Crd)nq_ zB<+jzFqU7iJOe}lBymeNk;?3nzr<@3sihmzeMF%4w*A9%Ow|sdI%7kgBvKiFdpCzz zABkKIb4>*`HoqL6}SZUQ7x6RcMty+{Vh&^Z) z!+2YnR`m-pdXf1rwUKF6oA)@zH(z!~Cjzvp)tkjd5v?lw`hze)tj73-V|eqaABT~W zld?D|^%~j9&xlx!^>MVcBrd8XUTUT8`kGdYDOIf0^P1~@B2;_db^@Jxr+Ldfu`)w4 z-Tl-RVhEZ}_1kpn@$x(1&Mq8bE+W#Lcqi*FJzjo?-g}ERs1^fgRWznkvoq9dMnoc7 zKc-XvGyU1`ejE-wz>DcLqykLRI$jsg?mkmEQ)N zN078YujgbVtu?110D-o=* zJ@OJQ=;o}57AJ9Z1Zx6AC7YfLf|bV)Jnh{(r%9Uiua^qAjDuz!Yc3k0UYH;wNjn0~ znx=STG;0Nj%GROC%1uOT)ZBh4Xx5Zaj!m>iZXcmulaZy;I@o9G$TVK9L$g*{&D%ul zpUtPO9vrIm>&Q#ohZOh5^^-}oWX2)s)=VWc)(_FfG!2KCeBb<;)lnSf>W%z?yRs?Q z*qn~5uUE|v?Y?4^YrjZ@`-;hd?e*(LUwH14=JmY!iPcw(dR=IyaaT6^iZwhIUWn)? zn->D5u^2QC%frwXzkP^79WG5f#9fLL=E$m$e*wdWnUExdUAlQaUwQihXcc`$kc%SD%l$t>6MV6nxn|IB;?edMq_ zI5r28A38X72)Q;Ulk1=`Z2=U{Hr>r^7dnX}y{Ak#JwBT8LhwryZvM3y9f_JHplobBAGY9L=~7!c$VBg^Yw?svl!oEYpNK}o-!X6 ztIGp6Nn5%h$kc3n`$xyy#oABgi=?*7x=Z@0V7;=Ls6BqZh$!&IzfPpRkDBI7lHo(< zWAF(l%0Q}OD#du(Qc2O0Iwq>kXL`2RJW=<)Qdl`dVprLh#eqp`mQ_FhLVCsvVX|#Z1l+;>wzG`*NVsqa|M8NW!*DIRCp z#WEDb$C}WG=~pJ`%`|->(XaN~c^oulcg9Q7uaa@-()!u->wlmx!qP;hOVY2hFDSKa z`ql31xaikJh70to?B>OPO8V9A<5=let9hx&l1*>5>DONCf-L&=kI)0~R{tz=cZ;?^ zK{wMYnJdw+Hu?H5^M_Z7HJ-|#O}%!_ZPDJ$4yy8;+I&fGWUfTN5?N{4DE!mhEqidN z*FSgN$bB&N8sim?Od}`CT;oaCPs|r(Co#%ZeA#t?yRj)(I(znfj;F6*m~UHs#VFT| zu1~oyn{qwIzL>a(pVu4ahqA92<=Wn5a#t4R+WWi74}2oJ)#isZ)m$`Ey&yrRA$6>W zumOnIvBp!aUzj(5&enY{n`V7Ca@k1rYPT0w_@p9;yOa2>KRnHfUf>;V%ZP29r3Xf` zTwa^w(tZ}%if%HqK()sAA!V0GqFW&*2s*T+jk-4BDp@b|6r)`K8F`UAla%W*^>=7A zmK+%Ri=$qBkxN#E3qyY~>a|~_i@USPSL_*R zPdNncLPKW1`F_IP4yKR}Qo~3idJ5mK=Y2%Yj?&>fLh@p}-Q(i3zB2DZ4>^`*OTC8p ztWkc}=iBW|y6Z^$3HzaLypLsrBeh#OMKLlP$}Q?9Mr+%BN&59jeSxQQ`by?|q?RkE z$Tr~Wr$Wa?ojG*3%{SO|{W0-9M1g=a87AiP*09)jgLcb6?8|YtPj?AX9WlO262{=G zY?|2a<9K*0(8K8AWN`w`fQVt}v}`&!x&5Q%tt9Vb?R&fxU^N>7f@tkM-vgR8K_3Ju z?qVi?Wm}d!1M($lOLPdCVRt4(GCV}GN+zUOOy#{~ij`>gf9rP=y=wCWN2cq#_aPab zZcLS=R;iDuqRnSw^*_;1jG<}~LuoFOQf2<*8?})M)mT4iB$JbNfjzBRyg?uv2H;YX z(@AEeK&5gQum@zbfVee-jWFxn4`mpTqNLZzk@UwLonQ>eZNEWOYVYkzh^8RB zfX_CHmAtvrx_(<_z_4Am#kiA7>)?XDKiNjY%=K_)0rqoG%+6Ql9UH|eqqe{%Q4f|? z8L7b%5<$TJ#llOny>MB4-eFAw>^I&bPrJ;AW$O-k`pLmL+`er~Yxj{s_8sYm>Z6-U zKs*`uH*=rtB#u1&_~1?4jYXcu=5ieU{MLNU>c=5X)qfs*f%|dn0eU~5Zgj&h;5f=# z5+h4<4t~tt*aB6iwR=Z5Sahk)=cv~ZpYsCS^4N5HssbA-pQ}e3szZ^be=~2mO03i} zyf#_-W>>gH`>8L-O=M||Cpa#el=-NYc&uzeD)CW2%`LKMQhWUW0h*NgDe5Uklm3Mm zDs&d3NqgO&LnE@uOg!!~YeoIVXj1VNu~z8Np-GRuzaDT4>=pGFqe+>&LU%Em6#V%y z;g-$wi04=b#P(Y@uYXK5sbMhFBhIEpF2>PqJK?Y7et@Jy+P z&{KgziSbOVrwX<)hJG#8RPbVEV?fZhP*S1w(eR@nhA+lD^%_TQyFkXBB)dQ{%CZZT z_5k)AdXJ-wH?Tg0sEYeZHV>>8G3!7n2e#>T+b@N98q5BS!hpogWDl*$Awn4ZK&M#1 z+s#z)2K@t&N?5PsY@cS4$T3L@c!PE`5x@VD_7gcKN%?|fBBD3ezU|X=$n{CE03@=P z6kRlY$t_tHfS`E6EYTT541mq18O?XigvT-Y(#?SvCZb2qAumi3`8Il=>VZ!w@_SN_ z8|fy86s;AUloffwt)#5x%ejNf=V+6Beap^3MrY%*oN{j4^0iZ4uF>qjX|;#H|Hyy; zhkZOnIbs()W;~#}kdci1O#2`PUb*%<;we9*C^80~h>L+ILh5bWKPg6@@CB@YaqQIw0S2;H?`oq{DXLg(p7y z?&2rb6EP9>0vE-PUxCGN8+TI-6QD(#(x|>ITCq+8W!B6LIG$5vfcX?V0tTdo;au|7 z=S18B&SD4(i*VYSh|3#VMR_`4xvai@p*iy+^^V3L{!qC7H`~Tu{(s%SF@^_YZ2ar) z^N4v2H*SqS;(ky$1AfQ<5G_M~)ZQPz?~hDYwU#w4r-`xneVR6depd={zW0h29B_&k zscQ5K;*@JM=*Xk3{>I+u)9y`54f!xfcM0jsd=E#J-5cE{>+QOSO7nRbZhjE`QFJfL z!N2*tA>_-i?){F!&&uyl==0#K3qMuyb9)YvM~#0(L+)b0-m_t*V%}F{ zT^}0%P;PKnz;hTpA{blF7Yc+s8JsRLsmT3>PST*>A4#U^*@$x8fV4DiA<8{)~HzQOz-gYJNzI%6#{J~IEu^$q3>m^g*zj5R$) z&Kct_#{3@VadVzl4jlrri1V~!*hr?HT@j`{ty(C^9%yXT5t?Yu73*^IGt5_?3zhpf ziGLek3S6?K-rOH!nrQb|SdTWe>r<#*K2LD2RA(SC37scZObTU}QM=h3@&pTkh&gT4 z=bPo1vys)@?_VTo9uAMefZ@y zR|$1V9n(a;xi7s$)5V?a*E*x0=|#AcC(4*40SdE#C=*Czg&6P9#Aq6Ol^4o@DFnc- zB}Pm^#BelLpcGV8`YSlEgT`s85^ib=oKjfYabk1rNs~r97xhV#Mi$gG2%Y0j;fkJ3 zv8M2oW2Vr(pbtil?)&Av5WQi@szD8WFSIDL`)}-j5#I|f;-B=pQb0Hyy}>%)v*{Wi_@OGi?{-vh%1m5%YAw}$)=Wa z?$g+rm1!8PGuw$w41u$SS)-OsOb?YA513{~nmF&`AY#O$%`jp;Y~wa_!`VPj{GV2O zshF5}o)GT|`x;tcHi;#Hg7m*UfEYy+)dGE!pzuV2;KgX`Zx~+&+VUy+lv7F4HXME& z%_ScrAZ7-&w9Zu2VQ5U>n3i$fd4V9>xf^48*=dK*5XMDW77#Nj@%YfK6zVkf%V?4} zVSZ}Z=zm>C+Lt^%v~?23q@%4uI^Wj$!A++kc9LAVo==dRu6=@Z8tARJppT2~xi38% zo$a>9ecycu7Jc_bL%IV?xNRopM`*+FTS;@6op_L}j`<+9 zR?!Y#LL<1l~~< zVn9UyDfeB}QEY2%ZXXX%Pb^REBc4QW+Nb>x{e@fB zvtn&iv%7^gFj{|PUbXx6bUN_o1a3rJJ3KFr=MYeu!+j{|7tHEF(&Ld+ z7a;0a1L6h?(T8HX$@oED52g>R+Z+VlYZ5hxyeNpk(L#J>h*oXa@4dO+K<@9ghi)k- z^K6J*vcXlJe~UWgB{fGKTQIt2YJ23F$lnTb#BB4vtRnR7jL&#jjt|)Jw`fcB15jOf zprRk}CL>-q_F%-}#+uJ#E$B8@*CEIHNDpHzxcNw9HE%UWaV{Xn1@W24ip{}YY_G9+ zFMjRaKXTx|NZ6~p9QZF2;D2`DAI8Hy4i1WsY&ea_ZR1*v!nj6McKo0Jqz7i;olFvHm}`;oQHCi!}=4Vsih^_}t2FyB?n@YtL~r0k=WkBVrPLmwPYL zY42_Pb^pwogDeXwPdN}*wmG3}fjwX2u7v*Vak`D|3Ggggp4-euj}rHyjC;D`Le!#B z#)mjD2I59nDHn#*t04D75W7>s-y!*Sy&XKe>W`Cg08rM--U4>2F5@=*kFNPrKu z;13Yo^}N&0uxL?S`}-XDKnah|;C5p0u+`4kB>0F!v_Cwd{hdzxgDg1REu)MWyfePM zs~7jLc>&s?JYjq{7~=%8ND}@s++H`zHBUH>s7CU8bZ*jjUcb2Svo}fWABH zS!3{e#=cwq+v^7^h~^jj9-YDM$G-FW#(f`~^qto^?t60oyxy_z^6o~AFRY7+ei42} z-kE%-yS}vHIQ!OJY7UBDM>Rv9)hJfe^>==U4I00)Q-f(R@QmTSPZGYDLNg%NJFwRE z7rYq;GWnhuo*;zBO z+*@66qx!XG;vM{|Zft4fPW6vw2o|7V#5ST31!Z)KE}jguFofwx|-bjV7)Kk%Slg7aVuWoO~F%L z#VNY0D?<5d$ojR70$Il8%L)0_M^3t6QsuU7=IcV4cH!je+wNNb{MtdG5sOD{`_ahD z_g!GRZm%AF`oI;J!%%vO8LSM?X}|2et^Mb1oY6La`p7`Zy&LA-vaFLH^j^#%KQ@Pg z!^{Ee{eM0O5BA|1OeY<&?)oWH!zWfEK^w3K?wtr%zYw`FkZhZyZyJURIRRX*g%c>s zyn7BXX%X@P6bJ=Tj++`A3i=iH%Mbc97=w^_K%}SQCU+)8Ni+j~dt*XX-FAl3ZK}`P zyYtE`_Wn>b)8svR;RS1#c5Zq`z2p#^B&KiDo~C<=agE<*;5y#E{diGN$J~QW=fglm(B&XxnPKO| zRALS!3L#24SyNS9n3s$9)lm9~K5jbHP-$_RFk$C+Jw*N@{oc&fNiz@bxxH)8f+J)q z618b3Em^&EzevCP&^d{4x@$pWoB|rdr-YR);k@=15E}zAZy%C~ROLf7S_(>o^4?Lt zkS1Jy$Pa>m=|rgu%uv(UAoETv4Iy&5kcbMBc*+2Y3dq&9y2o199g5n(cm{48D+(?L*F|6r5h%m%YS~R!UsP_|d-y{2-p^|3&HmZbln|an+>5w=th^ACYqtAcjWKb17TXKswz*L3SCR$LsNVkqKGx_yiK0 zq@?hDh0XVRRlIzvx-2oMuI#Bd4Xj9PARO-2IWjb=6s7mjgFvnmD}@{d>qWHQDJPB_ zJ8Vc*Ek)~v@S75zFwx6N4zelow@jo+=tj613)*`$xyZCrq`(`p;8jyU+2-#twr|~* zKi@m+2!|cfqDh!cV&s2sI(?;Qa1SAX*QTs~LFjiJ`Z7R*GI=)}*Yn++LiaBCrs6m_ z-HU+py;#KeBJs+6FH&7|eSE%J@Peh$zgs-b-<^B?kMU)UkCV&LJ1*NnKH7ZHBJJVU z5b|K)4RqlZbm_Q!R6Z>Tp$OA5C_b!+%qw+-X3q)Lh9K=OY!ErBORoswg+sDzcYlbz z>Gz>3LikrFgl#vjU-FE3a9iZhDu^Pa$9{#{;(TC1^$36P*%NTbJe{V`7$HD9DynTvXr>WrdhdOi?mLCUI->jh8b< z^gbceh0EpOSN*qZWR~zXm}a^88*%bBp+B<(%h0tg@~4+x`XMH?o~CAIt~NEji>J!d zR&QUeUibgM@yh+s8<;-uF6`&h=L}LQk_*JsA4ESPkR(b#dIrovQbv6~oeC)H1kvY)L3%c& zj{*T2O8GdOIv9clTcmvDMB>W>A zPUGY|mf(<`5u9aLa=c(>@SS8yT+g`6uE%haB}w>pu7`av?_hkWQSP+j+801+tEEC~ z#BuHIzmP`JifdnwyVUJ*x#v?3zF8ntahG~L+AM^*N9^_qPEI9cq$mvcg-HcWgFy8i zwh|DKFJsh+i*pauqsNot+=mVs;Xa0xA-DSSA!6K{Gi_v5_lQFTxtA!sP0^xnL~qo; zW7(MtG3+l6r{V6RAva!*(nK+yd9(!^fytpB_054Kg-Lo=~H_^R_uQ*Ph4%(wI9JcEs|1`3bf>1e{Ho!mGP0R{cX2KvY zvm>*ky{&(1KW60nG*nfTl@#P*8X1*Y<(U+RF9)HhtC4m}(wo{*9W3p~Kis@|+qM4c zp^dZ0&N`Yy=JsE9?G;y54Xh1J9slj;M>ukjhrw+WdqVO?c|VPb{G0I89GL_k61j=t zO-b;f5*}@4ILQTNI|EG+K4@of5&ri9a- zE#c23!0DX_9Qb=cJe>H>f?{DlTb(rEY3PZr;6OD966qu=IS`kS#Lhhu zU5)-mfv%`lGSDdWZDxKFRdKk!^SSTtw8T;MO?#U#*WChhm3t02?E}_;_hCi1eZbvF z>mkeVJB^vxb(s#4>-VJHrg>+4c~`DjO6BQ%08ZzF%Nud$BLNQ3Yk#=aKF$;NkIobJFYY`I<$mcr$$mS{Q{?(U zejm4P#yFMnH(JARdmU=zI*{C6em6%ZedqOv``(oFo!2Gq`)2y?tPk`OH2&E4XfxNh z*9m%w#P8~s=k<$yhvkVP?q<5y&*$!;=sI36NG#Qx&S&`Vh4r-vbi9*DC)x;A5B< zk??1%@^@jJH}Tm3T)312*Cuiz0MfY<7lIej*p{2v4~z|rhd)zw=Qf0JC5Q_T96$k# z7ny}nmUOSw9-V(z;`v9J9>?B8KTw*GbsP2LO75q}HgH}cDiA+oT{+KFytj$hQMuo| zRb0#GTf#rPis8`@u`coJzS~-_4!~2HKIihrT^2lP9gXc4{A=?q6)Fm6-j7AEOr%w; zdB5rzFUu&P)uN9<(&SQT@0k0OT4~<*Ag?2xAL`$Y^YdqdoBfmELn2o)yfg_u)Pi3| za6TuponetLx&1OOPv=9z2THivm;?`7?SL=BzQ)RrI7Iuyt@cN7dAcuT`-3caeGenLwF?uya@XTyLVsY%Gyg!9+2 zsk)S)7oa%c`bt^E&TuD<*-Mf>l3>eLA}mu$Aej;<&#m%jQXV`$T5QpYq|4wYV4KLf zNacake%QI@$LB0OLq*22KyFrNzY%ASslqYrI^}}rzCWg@cwmt~kX1YV`?Ix2fI=Wt z^N@G;O605x;&wk@PQzOQu^Z&K%tYFMNFI`ASp->}3tb*V9>vvbAhWzKHrk>{yrC##+ zUE=d@lU$XOb6r-}bvY@5o+#`)=BwU|y$mYT-=63<9<2doxJ&KM$g zIL~2+>6^{<;?t}rX(qZW5A=CYGwFHkJq*?wpN8mhN~y9`jxUAvv4v0ICos+$U!j|l zyep~!?v*rwWY5X6(Pfl$svP@Dy26!7r7$VG5Hv2}QwggwS>sYc+S#N{7$Qh$i2rFb z_Vlp&@4a_mkGlCsNlU(ClX_X?a;zEANuXn!`Tk@31Lb9Uj^)`SxKc)RX0fB^#7SBR z`xeb1HmgE@e@&UoO-Ntfq}CvfEvL%CkYK+oZBL*Uhvvs<{&99;PKMje%4uqzxqtt- z>ZWY*-#LBC?uq;+rz%j`m}B@dyz0RGKm?xekxdAlR8)`?xizme#amv?V+AeK%x|q6 z>uv$=!lLz>`E8c)og!q-?bi6YLFQ!7`MY>H{51KYnNZEA*~JW zM1sRJNVyL`kq#8)zrh-%DUIQJ9T|{?aH(QGA2>>GtIS3*8B3i!|M(vdu7@f}_^fS% z`-}EX*U$Iv-T&5GJ9em>d1p46=!f^_*7$y*XGOn&r<;H?tw7_ck#LN6@6Gs=>wOnr z4|-S{FUt`K4ts@MWnj2HO=t$>2*}L~qX(#7a4nLyM~<3rNN8FVB{z_hQ(WQA)t~wd(^OOR@3;&dT;g8lUb$`iXJj z6j7?SfQ#>IAa!!=q@j37DGLSK{Vq4IF>rL0%^KNl%WFh#fEYZOtV8D& zq}Zo;b6nRxh=5c%!RDgopy_ozxTT;dO?;jjgf~N)_(N)O0Xte32U_yG)-^V2>)RR+ zBEgq8*tI#Ye_>%;p0+9oVe?UqF`oUi$4FQ0|J4|2eQ{u~<+GcIF~bf>g)Yp26AuYE z@sO&t<#S~Ayf?Sf9>_ApL#lX)WL@x|WFwo;b$5y$_)p@m+<8u!-QptDjME9&?YREv zlzF_TGPs8&KZd^OjuGeDYfo^zg~j0lHqCE<(UQ&Q2bG{d7&6?Po{Su8pz>r)C_zH- zCeen>r1OKN8C@@`>Vu2YveMH%+7MNvjnB;12jsT|y6}hQPV*jot)OqN_Ahj4kJmlP z8SjH)kGRL8blD5cDMPXoxi$yHg;CR*x9R8;ZQh*cg!}hw`+ka_EAHQA=$P*(Yp%6Q zN4S4!f@YD);{rn;$eu_jTy5S?ptF?)vrbTt8{j_3vOEqt{`5KV~^!A=^;> z&FtUJuKo~nfUT4@2N2Xe2PUUUcm01l2g(7DT$Chx<+aDXa(!&iS%x6t?};1Z;AC$v z;lD`OL(&;a_%9RSq%)N8598siGnDX;Y&eaF=~9A|y*=Rq-jRfH#c*^tf7dXN2aQi$ z(1_uPj#loFhB>t$EOA$WY0xy+9Gq$x;;5=I2YiA78yJs=6%uDcr!ird4+PTT$}dYO zf7qf4P2&Pdt;wqmRM&!`O(DY?IO_=uBiqPc0~pF?an)@gLSptbK;S@*3VJ_XgJl@u zFA*jBz{tC5Q`cW@WF;dGLSFURlG9peE*{Z#;};LljUo4G4}N|_R(YYnZ+);NC(UrD zsIIoNx|%E`UT-1w!Og+q$s^iMt0vnS?T#4I-)@>OtnsE6SJnlq8{8=#j}f~+obzhj zW$zu|H}sD2o*LT|;3N-|dy4x26DD5-+FSMoaC{Nu-LxyAY!=Gm&cV%<#ZHx3coWHp zk_~d4`;6!kw2!g}#Pxv2`4~85ewNU#^l^xd!S-?BF?de2+cP$B-)Ijp1Z*21Sw?f( z!(4=4j#JJ_-7Eao+bzqI-cqj1wejo1dP})3JH_i#Z^`T8!CZGqy(R9Nv9z`%*J7Pc@6J|yxu!%s|t50&ufWQLOrOSUu63~~8Wli*>iory{C5mq~^7*4V++0G!@ zPV}TCc&E8Ec5kq(mdne%=Y6@6-YC%WM8kvD6p;E8{Q}+9xp@D*potK%fxMt$-~%N_kuavFLu0&hxr6Q+@Qq*;w8jym2(z*){7cR|h4AZp=bn1*ig9y* zVxQEkJBct%Q}3K8z9TGK|N6kq6CTR65G^)NFU}L_b=bvWU~otvCj^Q3h7phQ1^JBh zg{g%S={<)=dYHHOfcE>vgWd7oL>^l6TN|%FWPHQ@K<83<+QGLE`F)n~-O5W6Zm!io zWWG9NI_yL)IZM+_=jw&v1GxBz$`UobVZN#^)Ck@tJTQHXLz%L1yz0YYc$1 zEQi`8Sq|VB`(C?k*wn|>gDmGOt~UZQVM!;KTXWqL2PaxX!XH)k^$6c>!_Bptq@}35 zOL_S`{J=JH`=DcoDMQ1Z!-Oy(aE5gbJ^>dYEh7BWm*XHBb0Bd6X=oYLht!EfI_qmI zLPZ4?<&1)CJ&hzz zPi-DNc|cvCj_DW8ntSg>V-}xssxKo@R$UgT9zCyf_(=n5>e^4a{Pc;Nmyeiu0`^6& zBkdjL&wKYQ?_IonU zN9$fqZN~NPSnhH^xFz*@OK^KuY|u$aO@qI$KB~xAQ2~{0BshC zNt{IX+l3f1lev!&E&$MV`Z}{^zuBxW(7!q8)xX(+CJxyK?inHAPs?o(^?&#_VB>@F zDHX~UM``<3LXK9(EMOEYYTZ59yH(i&{_X`qCC6;sGBJq?r2^w53%3;593R@kjaLCe zP4&t{7~Ztd>X5F%K0 zcsq_c;}_!{oekg@W9R;EXQKr7S{x4I{<3lNyLdS6Ey7I|ILqaMn|VYdWmqyEDBfT_ z?%*mcxv&!KHNckRBs$Mz%W(_gy2*1KEbdB{;aF&$EU>{$?u~wK6!3ddjj@pr|7f0f zGJIzOobFax{!uX{R-R=I68?As{7a|&lL>H=HOTUN`;M1J)`^3~(zx+#%UM*9ic4g-etQFiQwVO#@55QD`6h=Zu7j2?Ka$eE4EI+@5jWXMBP8| z^({?`)8zfF^RE*dlac!N!OL!$t)0=e z_2T#Lm^t%~_b$fox6i(1*^o#iNiJ#QIrD~?KO$Rf5L4tij(d+J&cETT(RJ1uxo}a9 zV%)CfGxE3yGA_BWF4C`=;lMFyQqU^w8QkCUnW~d#3Z}_D!FMLW3HN0AN7c2l^2~cl z_>=K)em4Q9J4x*>Z!a}(b$`qF&vhZszX)Ry3WTD17v7^nr7T=rn4JbsKr8*XBU7&} zuPvj;F@#;I5zw%cYCDA#_(6&$%dYf#*9*D%9&???YhLRO<~%O`Zr1D%=_r`&};`QLQ zte0!4{7d3RoZk?a;e9|E+>uWz((hlzTKQ2`dj4IWcw#M zrsT0=#Z8ar?8v!29zSQ6Q_Ax1DWAlZr*}b?-SYU{soJ@2$LT()EWip!II zp=^IpCzV0KPL1-F2~%6Pm8nnie{8u|YqYK}kP&z7=(w}7V)iBCzms;|lEdS7cj z_@>XJHFo_$&oicmN)KMQZDM9ontndEGB%Fb_#U;#2mD*Z_{ZZ0{{3E-2k#gM2Ms3S z!@-}-WBEC(#=!GEI7_yl41bv5IC&Dj6&9oemGR20Vc&4!@s?zOTC?fe{waW{UJovH zH@u47@Z^L!H$1Olqwifvf*F1wmlIj1L6-$b7IHxzaMabv^96NT_DveDaOU`NCydF- zuE?vYs;SK+7ZyP>XQ?z{{Wr-vNEz6S4`iA`EM^C!Atbxz+r8VvyJzjrbNUuE4ykB9 zarCf~$o}aE&Odqm?54>DMV_46iPKLX)OqHl#t}FD&(0+aM$8)C9Ly?6QLm1BnFD!i ze|w*JRWI!~s=jtml|Q?(Uzxgc>XZSCHlG~1z@I;_YG6$O;S)v=UU5o?KKc9$Lv
    1. z@H_<2)kc*hXel! z!Eus#Ji43rf7O$`@xo$g;EJEL-_}-_$F{nFwz~c>1vRa}+1wCquFu|Aj|-mWz1&yz z7`Cz3nDbSm$WE@?bc1N?1)gN`q2` z&+A)#)F&h1Kn?9>r>XGRV{IjQ=Vyg;PoFz;#^gx}hco>@aX6(g7B&a24A_&h z&cJ>p|1+m`Z1KdV%E1l!BRbN?w)d~B@D~L9?i8dm?EPaIj}>{U`c z-js!KLi42i5ER3vX42CSeX>tD=4O(&I-Ga*S!XUeb@s_8O*wJ&Nav_$9Lru?(gxbk zKm|+LC5_aEm>Ee&{}>)l^_JW|Bl|Rt9@ttG3Ktj)sJ5zzlui#-fwz~L4OmCI!T$UJR0_$EWD`+*Y;2!Ah<8$_SxRo z)YP8$bprX8B13{_r3XaJh@);GVMpT|foay<(@vc|`NZ)jIQx1`53DUkvbI!)|E{i~ zxF^uVm=g((D(Ho4h^vq1|3yU0GIES)H-EM|#)wLx+y~ z?|3@Zb*BUWZ36rQ2mbp6_)i@8CpKK-h6RVN1$3HA0X1yXyv#dEntGRAhj=8{#dcfz zj2_`N&}GjO1B6T2kMGhdWPo(rcG`Z%ZiCAZt~N&7^g?|vYp?=HaoT% ztQvNo?|{)MFmjl%*{o(VMTYc@wGrxNY5D0D;o_gC7Nj$e_0JUxD%Hw9F%GMydTx4E z?$9j*M)W&p*QM7rUtu#^WnjjpUD|j{dU^gZwL^%h2cR7?_ox~%S$p$l3>xwOu=ghL zaUE5@@U46M_NwkytGm_OrBp_C0|(ixbE~LLeJ4 zR-6r(;ACJRKp-D8KnOF#3uM>_NC<%>YQ6udy0`mwt6R3ido%C%y_Xp*>D;)&?rn^xD7#mx=B_vi9EP4s5dB)`)vmTwTA zSB`EhfW|O1=PDg!!%Y_;7vu{aM3-NHJO+@~%4-1eRl#O>{OCTSi2Z z=ojS?FdZaf!orTpy3`fbV4>rWMq6ZsYw_`oTZ`#Qn&{urCq3L7)uAvDvA8%+% zarSo&U4jn!&H!zRoI3&ck(pE8cbM!ZN}e?p{fYhXTv}oYIRU`KE^FcZk$E#`l&2Ns zh2b0#KKd4$qQelIi}V~VLiK?(SJ{CikxgDuJ5n+Coc@A&)95j1dy%f=&W!x}V6ZX6 zkz-Dh%_d&R^0chn+uxf`kAdCA6&;h`uNhNmnA^&k-CtF5Vvezz)0Q zdM1hB6Gt&~N`qapV&xerw7)F)3pI%v&xEWRmL3fi$o9&9FRtl;zcsS zJI7=yg^5T}Z17mJ*@8CO!xY(a_V0%9ZlvEZq(!z`(hZ4>DPqJBx$SDd+Q>J&RFc-L zhG@BH&a8pH_SU9`nyOH+FyEJz;lStH%iLyv4bz-F5!k z6E~Xb7o0aZYkglurpse)2(B7EzxBeecIL0#c~Q@-eaq^G?nqF*tr*<1xUOp9*z7%O zsAFFBs>Nl)yNB5imMq@BcJ=niB~Oo46|TK*Z5@hZ*sOh(J>}lL2l`ic=7wgUKezY5 z`W{pBg@;1bA+L+m#Vx3FR_Rf$J% zhB!0IA&Vjt4tW%Uo#4EOC!gf)Vmft_3CcW5!`o!$p?z!&rRYy7^51qH>wry=&))n-hGq-Z2)@9CdI2%f5wA40jyP?HqE#E)> z=b`pjzxm?Ri|1W4yn5!5=l9?L$5~_j`&PDiymJFi_u9oBwvk!u%T@AjK)oyF2F^EN z4Jll0rNeR1iEhjpi!F zMKoR1%8xXk1vnMri|<7`6s9;#C=0EbE_Yem zg3ghB3o5D?TrhKRc}F-aJEJ+ce9QSAn;t$mbKv4H?ce$EKymUNKpAvozF2U1F>ClN73BS1cEi(Lg}oDu}~w!5A?LnLWE75K&9CXFPbw#h2#OSmUduyO2&jVkolEjO&#UIpuQPit@Oy>89~1F$L(p@)%6C?@5N&xfn-^W1 zKwJy2?>b6i{+n&xL}SgXD=r|p{t;ifrvX&yEb=RR97J9{qt&Z6$LOn}?l=BCwsz>b z{X}J%t|$Gu(Ftdb@6-5B zbDZx0z7qWC2mD;>037$s^YMe=xYNerh&7SEpus;d!f`G=h8GmQJ=rIvcIoCwW*NNG zd@hPJtpnR49!4ipH3S*6jI?5uM2x2n=B$bnh$u83ODaYggsqBMN!3`Exw($h;2u2- z8B`x`H&}ghMY%id4p)|ym6uW?G6X7u`D+4fhZi1nCU{C2azafnd*@7*KF-$!hUV*a-A=xW2Aj!@qq;haadNbU4Z{hsb-OIN{2 zx1=D=L)tgsMY&Ck%HxP|5NkfVc$w}WZnwMJ-R-R`3kAcK<)z$)ny?gVibFWX;DGPg`}Iu7x8aTlp;)*c4u4#FFeUs+f`bo;_Q#Mtunwoq-6z|qWPx_F zv|90pVza=#8&V)-yD>W)8Ia!BGzv8+6r|{YP8DziRpr!+%qRJgvwv+52r!Z-N&S7j z-3|4%)fM4jac;ov#H_4k4!eH+Aor`7>3+(kBZWxQ5}L8O?}|IKuR8zv z>lXCwe{5HE!RA{xH58W>dz6&~G5jA-z(3t@#k!nKfYbd`z@JNi(>+0$HiGk>$qD;MM%dlR*l?G#HwivhRvWY7~J#oaVt1|!w@YIoWGJ5 z#~QmEo^El@VlB=D^>JLMqxBTHrZW=RBsJXOjQpHo%_yFXv5fV}<{pEM{!ErwdD&>xF`DIJmw%o3oVErX(p>40XZt(gI-#>J zs0Qs8?lhs;p@z{3JiY|n4JkGM`k3$X6)2FTxpQXE?CxxBPTDCMXNrBuI_Zq@XM_ET zW7AmS&jkIZPo*}z3;IVKvPS>wnEBZSt#EwMaX%zEY?chi4r~BAJa+5I$9*QlX3rRP zp20p4vCMyOPgs)t$PAi}&0!h)xbvZfT@xvhq-9IzkIWcMxwl+ry1F>O68F|Lw)V4G z?kSrsor(QSmOgRkrLn4WI=~+MDyIXov3@h+st4=CP1U-bIh?v4WG0-DoQl&C--f75 zU_~T0CG1765zDA6MiEYDTCw8q?}qPCXgkT^O4TA}4s~@**{AL^Udc1Jq@T?~2G7QT zekO~l{`yR9=F9jUQkMmnN>3+9gZ)zuw2auYr8&?>B!|Pk4z`XlJ2v9kcYrHOyn{7} zf|3?3m^CA%lz29WTVi~LH_38-Hj6byY78eE%+F+n62-{B?M^a~3;7QE0LU)bYjdSP zi|9Fb6;fl*ZNTjuhDzMnQQO4`vBhe;G{H7(!ex?+@5u3`j8d1HzSv~qx4~UV6OI~Z zbTu7AWhybknY_3s@x@4|J{Xdb+sszmbc14jwdyh$6Fe4I0Pxq|&i4Acig0NO(!FKj zgA=a+-g-r-0g`MEq=iab;w84Gf8O}%y#wj)0L?{<*KKRgN?F=PU&o1?ZHun|+9gx( z0)u58<=M(WifS%Ewn-|4jo$&Co`Mf@BZ~I1NKQ9H9Y`32t*{V~PU zA|Vo)KU78%v0)yEJEgCGm4LdIGv-~|RX9%=r_{6J-NVC>Os|GH{f*!yGZKVjgF6&)_ix|sgwF9%Wa-;WuvtnDXcJ*rJm$PI0ZXgxltFso+@?5&{GH%&FZ`Zt& zdlp_?FRu>Yc{OY9d1`-kLGe(945T(3#8$rjmWFU^?)E$JO~dWiLU@mUFMhv*x*GQ-9zTcZWi8J?;Tn8QJ%+4zMbbtD z?;Q6-591zy8{WoQaK&2892uOG86l7)G;3ExvRO!S;OY9!vNY;OOo7FwTDDO-f5hHF zrN!A9_J!5TkDgs4aKp=Rtiwq%=Fl12$LMEIVn6WX)TfeRciJ=g`i?WLf@_;9QnXgO~5}-H**!)E)0p#THa-*!-^6^;W zV8P&d^B3$GEI8yU?W(EiDs_!%>XMJmB-LXbTj$l(%-h-#?5Yd|D!YOoeP3u%J|5fD z_cHg#5_j_^<6c(DFMz{kB>^7O39v~G4(q=B1xq{H_d)+pbqsf~%e0u)%eaRYlNzGO zGKspm9Z!ruU8_n4S7&GxDOs)+?6mOKO#3()sM6nva;w~4=1Z~zdYv8f3RuY z6^mzfse?JDoc7g&8;(p=Bx-P#4NmBe=WShe-G)Z!kVtpa1fKh$O7(qb004Uh6LEx1 zs1@><4ksSM-c5?ZMa@hcsF$iQNtMzi5xWn0C~!pb&?CZYg~KkJZSaz#ia92eLJCT5 zxRBRSW|Zxy%%ug@hw(Q|D6+IAi_%G-_|8$Twuvf7Ux)X>wp;l8nc zyL|(^)Y%I8}BO1Q&&5x_kLElSiSMpzZU*Hk&W*%F@;p_+OZ!!FSz;i7L z_}hAWj$g`04*0bAeGUl|E{!;{JV-I~zaPO!&QOZf!HAIxr9?11nF1tsq`~gpH`E6U z^XAOd(Av*RV`#nR(I@O%Gp(CCs454O6WFW>a&R*=A!7iJZuZ4qG$bvctu2_s!r1X~=09bZ9p71Syn( z8!NZQZjnuD*huU zaZanr^eXJKoD=AVwG;%behvg2?d3Gwv=;lkTa_ED>qpuO*|(<9^nLe@->uQ~=GX!( z6{MP;~>sdMuqUi`2oJb~+tc%eOUc~r=Ml%|BQu=q9g z691QzhoFycNstCFRa93KI!pRUz5k{oj`)^51FA4=QjP5idQj_lTrN5HQ4U|^?8RNG zKY9nxTkQsi+92(gz8dkKgV?J|1lcZal1%~dUm}Zs5X~6|ZRLRPZ^u=CAGYc-+EKM&d-(M36mBB8#`+{BPZ`xS4 zp=`stH8TdgIvVRsin4vkc;#kpS3IwnX7Yxkor!x>i>M5*-{*!~H9w>USj(71zMsgn z$i1tzAKd36If#}0XZzC5g1tL;?JewF$}Xy&v+=xL&7E^Xb1xX4yKhnT$?E;3UE6M6 zI%lAyv}ZH2DeMBwU~8z@;W{QCn$GO>SP}kg0YkXmbxO9=>>Gy~kG<9PPRD#e@=t1jNYaEvr7GMq0Z1@J-c?{oLMdn&6!0hqZ#Xt?HQQY zKEvrMC@rWS+1~q!^6m=nj3fVW$*wQouxR$cqVT7u(34mvq8qV(r)d2^Pulv$;4koX zCBF}>tI5pQ^#QR&nTab(R|5hWR+HZiXf>;1ejJ2^V>(Y!Rvv*yfsL9$iM}Ew47H0WuncGg_nX+U8#L$hl|0 z(03Xc_!krP1dFfP+%_#Q|L9Yx`1J7v{!Qn&;OkE&!08+p@aF`4@^Kv6Z}2>doA^2Y zrO9>t9Jqzx+{aSDPf5QJaOf-yaQKhhP4LO5sXfmFB-%eaN#ihS7Id9IhL2VgRWuh_Xx@zPzF4h1Jt-W2vu=mJD}>N{BD`t z*r*4Bk2qyM^oIPxM_lu)hmJzH+IvE23zJe^xPig@&s}zSMeX=`I~U#1U6m#=V%fN| zd)Cs9b8cNZajAUG{=@SJC$dv!Nd!`G-Xdngh)?*Y9wWR>BBLqCTcNb|S&lLCEFk7n zf~4o5f8;@=5=wCH)4n)=gfg!o4`qI&L_)~IK0~|YCgd$o|8Y#1aW|fd2`a|ZhH}3s z_&X4Ja65hXiSu^hyHDJE?+F%;zNxI5xxC|?TUJioE|2XyJTf#JKCu8{}oAGLyzAU?y3@;v)9ILQ8 z$<|3W@5GP&p@zJ?x>BF7v@S2NA>>!y`^cfZ$NKZ?LOx%J!|)RtPd=Z!XN?WVZ_T( zJuE{!96Ki&f$U-}B<{%*hJZJ&8#KT=wL_*It*p5i9z!-2KPfih*Ib|eBz?knpWBh#ehS+?^#eC^IP+8zo9gg@H z{vDG)1l*_2)ZwVDC*VH^+=B1WzxxFZ{vE*WqWxd!yPp$$HC_Lt!DkO}{SL<;`@!UP zPNO=W^!|@){l5v?Emhv5aot>pIhmxR!#92dbC_xVxi+^7;Qo^gW^(By^`YtgyEVPP z6XU;w{v1*;QUvoj^fpY9NP7&z2G`~JZIN)4O8J4BNUh6jtg&~X!o~lyajvLE($oQ> zSqbL{i=aP6%8g`$ZIdZLTS>mR6>SY!WL#`r?9*FO*K)7^O{5Q>+|6+yaQp=w$Fic~ zU@pe^ew^mmB>yfMMaYk`-F(khNUKnQ4)X`|Yy|Vn#~$TJM+vA)mcesiL%@M26>638 zXzH7i8j;thTawC3QPbKhd1r|%;_(}xOeTZ26kMug_674x+Vf#L&CK;K9Qu(zR3GPA z^~AG2{95063+wFm%{ExU=PfZsQZO)i^3CW`+04JEK{|M{2+?x7n^_okb9{)&Ec2}H zIyd6?CQa{;dS&^MRPDf0lG?3_aGHp$Dpc2d!3>B5B1u}emJ z^qAR1!+=f_nK8zUkHkm+^u8oa+;h)~`%EVdY#L|@`96w9f3j0>19CaRSq8sjVu+gl`6PEX$N-kUVDd+r&( z7yK_Z@p2jOQswttmfitYgM9Lr;0O5g=ON?$p3B|@M-KDJ)%?sP+57ig=PTe^U1i9M zcN_a*ZhNF6#cZ{x05m#e_;|f9-_0Vf;=G5VH{};+6*^h)6@DihM!ajl;l!P+ zMb7lF2mH=xfqLqr&p146mB$<1U+T>$_C@bVxOZ_p65c^8X6ZbR*HN6GJ7^tD2l)Ct zHMxw#uZv#FfY%uO>)KtX80}5K_tY~K*qr7Jl}!(xxZ@7kLq9VyDu3pP{O|;HtytGX zI1jhP$H94sI~C~WU!r%*3e`v8^QsVV(9iRe>-qEVML&?8@%PlX`26I_ui(8B%r8Oa z!ur9ZO6CQAF-=-&1sfQ83rR{LbFnEh*Q^ul7Q@cut~2VX4+hjzQ^LnUlQV#$O3cA4 zwMCk7dLaT##dT$i2^AEuJ0-RSrxNCYXgQhzu?&7yp?`QZ7F8Y*;zyfy-uT(|4-x_i zg^K6sk*JA%bmZs}xnbhK@4UbdbV34*+_~@RYIL@rTI2iHFrvb;uv`mzM=e6G;_ci}f4< zNDRQ!Z}QtFGEda#h0(DAK$UHc2RF=eCx)cu?FS6 z@Qzul_igD|+?vy}^|tkNwY=!k;@)+=^xGu|=k!fLfYWGL{Vk8x-UR^J$X_zRN#85r zr*t@SRs#n*96kt7;XTef%ntxJ1JbL4cVv|0c@-;bV>UZ+kNBSs&OZoiVY-2$DiDDKoFD>2<;?a1zg9-9vNzk`wZJ{nG%l3z|36s3?nNGJ!xa0YZNQJ^F zy8>6VHia@>GA|Nl$Zv5X#b({1#_c+8vj1IKg#w;LOpf4Y$@^w_lhUT@memGWxtfPw8YPYkAM&7M+j3!S}!gVh?CKFgjP? z;C@sBuItPMoMM~=d|YpjIxuhWy&>RV*WtV$(yqDjaxjv{H#f{U( zodU?cU32(^AD&msi30ZR%br4(a_62Chi1$;bYjogIQ<+SyX)xDyXNm53E#=SZ6Ho= zwKu85*PpuR;McC7H}Cqd9lYq&^}`<>{MIukUv1rb+uCQoW%3zl)GBZ*a6&vn;BY(v zhZJWi;3pH{q;D7S=Mvy#e;4o<65zyB1pFm}gBS2|u{UTfaD(CarY+yjFS{Jyt!zFa z(TF}XuOc=L`li9w^tg%B&A-Iv`nwc!T_kSaf!Ksg;}Z_j@ssjNh)4qd9!X!r3-JAK z`5Lhgkk2TO^I?vA@Mq)xpqN+z{{eOm`QFf)+>5wNu|ImHo1X2ggbqgEA~km8%(LuE zu>q`nqu3HQ${Dxj+oiY#vI&z~dRuyE)08D_8d0Hd8a!dsBnIBagIcE{2=<+6f>@`g z7G%>%nN`{}`4i$v8V+mVD{{@V%{8)W(Q#NUnJlJ#uiRN zijj};9^Vx~T8gDh7B8GRM8OwzHHmw}dD`PxJEzYirSdcf^&4js_&NQ0n0wAFZfw-4M)SsTI8$=}1Fign{G#&A0B*$vLbatXr^v0w>&7@4m201e>^Bm{$ zf&#oh4!qBVKFR|tE zGab5G*rRwQZf=DkK|7%gw;@o{B`22PR#s2EEcZ{0-+7NNDYD=3;@dOY&v|gHmqbVs zDZ4MYZ%bBLp`rA)>3g5}=-Fq!r3s85-N=h>Zwgx%U;F%Ck|jyD-1F?UOOR^2tXeO) zt;^dye=?UROsf*)47xW8+3%DQ9&1l|l^;W1Ws2J&+0c+#Io9`&^*+>V68d-|2EQo* zPVs?!OvDEoWF8(LDB#x_;oP5Gz-K4Iapw^5zC?Je|NaCx)m{?qyVAfTiSSrILkaLC z8C1uEO7*No|2+xq)5+-+L&e+6N<#aXJdPMDfuE7dXG|U3=19tS=+`7@@%f$oF~qi_ zP_h)3u8cTb0KvZn^_FpOqV#l0I^rur+;S z9$HF`BUOe@Z8mO~;uwr~thWUQUA5JuXy#}n6NR3MGbI{%4eXH6LPJk79XiST|L$o} z`ofWGuRUU#6~?!6T0*{5j;9{BTIhT-^We`YLHlZ!5Q-Wg&C;4JQYs8M_(fKEu zAGjca+1&ZNS)UnsDux&0E7%<0;(9C!LIA(<;|Jj2GV%|(UiTA|1V8Q*@GGO2%HQI( zsHnX~`Z`aL&5+Gnl7Ef;RU$nvc81-|nB+k|QE1jjj#q-B31ZbC^oOkdq3@*vWUq!5 z2wtySgw9diOF?wopnny8l*HSBBDcqtlVClf9h8&M;v-$_SW;7Pc&^6OTY@!ZP-Gy& zSAB8cMFd+CU6RCOiJQfsV?<%jm5n!_Q_>S~nsZ$3rHvy!4c^auX8g`Ow-;uclu`GR+I9Fr^}aC}O`@x`zm8gL1lBjS;Odk$Ag&qeLarRUI| zJa;HsiFCV*5KsI~;JS`g3tYQ&To(xMPobqHC`WM&N~>Um!YwqP0AeN3jQm9P2wqn>?nR?OkOkS8UD)^c+q zqoRn(>F%VIDEYZ%9veB4fcS|Akv_Oc3kgez$N`Ho>rtIkay`p$X5_ldJLb36&27oA z8{Rm&ak#E|>#ZBkf3mmQn(fJ|>{{B_y0A63Zg|t^rs2BA_1CW4_CU8M`Ff-*%+Ah7 zn15SwMQeFsu(Eem-|UN4HP33F$)j=d>w8P9J1PoGs`}RrcJEx$IM4wKc3f?xQfpUx z8Lw@q;R?7FI6O``#NL_#`;(9BB?bKJ*@Roz&yaDR`f9mc5Ff> z*QP#Nfw6*xBPp`*u!O#D~PUpNiq+ZX-_E+k_Ls71~#s5qr+t zmrGAx2)7jJ)K$wR>z8D9d^vY>)Y|#X&+7fEw;B6Y_3=;-2mRuGJO#d^$CLxW_fj@n z<5u0wW`X+?V(fu);!6gA%%h&jf4v$0F{;f9aYZ%TRP%1#8)o+i1>2jonl$lq0Y)WF z{_2dsX}78N-LRjVZFXZ1;2&w;CxNW@^zW0oOlLy766X+^k?wUk=bFesre!R`@s!w& z&gr;$48e3*o2Amy8H0VuXA}yT5|5)`x|BvT7bDrh5QJgezI4zT_qs(nkj&)%p=d^U z`psK8b;ma)nb)k=X?E`5l&!vX0nr{}w&f>yjnGR$E_C17$1d0WYcD6lLz^ndBG0M) zI3X{CGdz62>VO;2R&De?`9;9{DBlJVji&<6bbUpI@G!BsHS$V=#VM>tLUz-ANI7j$ zQ1t=_uVP`l%@E~P3Y5{#IXDGDcSWQ{G5IJ^F!dEWwwP>ulU7oH5pL<}-vMni#i}Y> z3~$hZ77BShm3g7E8eY+WN^numBp3KK78#M$6x&NR4k{>emuk}Xu?{cQ68BI}4j;5R zR7C?`4lh=m-|b16kE(k8mP<0TAFWdSp0yN`(BD*0Rpdu;y4LyOI!k|wG*pK&ue?Cs z<@L?+vo5zc`tXs72P6INEVpL`tx?V7ALZBiz4bDnjMnjG&Rc3A`@Ep`gJ%%j%-(Lm z4{8rTtAC5b)wc+avya;U32RE$)B7SW)GbnqnWR=xCSj-pMCKF7eeujzHjIYwY>IJY|VE7e8u!G zuj?e%?^JyKRF&VI#QHsFSU)?DO%dxiPU|Q5lj*Pgo-5kFVCVEWoK3eXMu!TB^UFHDSc;^z~!rSl1G4Q-g7w~X3=ep<{FPr~~HU0osKNjQDkzJ#_+ z#FKyr;+ubrvAxm&lOlE~t}?2ykh%|3uLSEAbC691spW8XIgy1PlCdgpaWPDC9i-QD zU|=zuGuB8M8K5_dMOkknCm*h)A|4t!>pr-!f*MfkA;9bsg`<+Dfx@(isK_vHNjV=O z?Zi6({e_swIn&kDSXV>0lfr`hyxg1s@>K{=7I*5{2@ybZIzsidC~qePQ@ruOiK9oS zBi08@U)6%*C;*NJoP6{b5u8(-mTIHRAd84KBOd(qh&{+mc0aBV`ij*{C?ty$3rrWe z7#%!9$czXfip90B!S>{57F&-*>)gLkKj%*W7J07W?6R!K8uJW}DC%e!3RX}!?AuLS z;$wn15?;YNWKqmYMVPYz=t;P{XDm+X^k_Ey__S!%Bb=s1qG6wsO@Z%69NKYyeJakc z*<>7U{t@4&*9iV@`ljBG`Ny1(bGY=l2FE_MTrA*%znc*0MREt=H-f+SON*qxM%=TR z%ih44BjlFj44!hUXSy=&t}&D`b7Z<4yCF1cEIu=Hbi}4YmEu_AWE9IyksQ)`M57zo zJnE^Rc@LNusbPrM6QOWs-@kG=<(8%RVx4o_5%2^j(8LdipQm}vJvZ(xppPu%>NV^kR z&(u>y@P5lVD#axV8aWlG5z9q9&QQ?Ea|Rl@jGrOba2gpW8qxYWA2g!%BfVhghiFHK zAJ_Yde$R4H&?cQB$OZQD2SGTWzRYQk^L&xlQk)@ZOJ@kiq%(xtihEGJ4QTXp{0yOa zAturEjyOZ&{Ta^?%Y1%@tYyU!$2?}v?5mRFhsclzw+e~5C1fPhjuCI{7=b}uKSo@1 z+s<5*#WFLu!xf!Q5~mFr8sbOE?2pqEKMklm+j=Le81e&U=G2ZbEKNYoG;c{cyQ$rP z#v7QlcFpQlE0-@>jC9X42M2n(P?a#v5#vA0BjyY@gQvy3D(Ucf^ZpZe-uZDh#QkS} zD4k|!;H08^Gx56lptaf3FCvaMW^z@bCRpsSYIQTG%efC{xj3$%$(NCS2**{170KpY zYciS3MXtl}l3$N>LdGMj^UU7mXApH@Sx+>;53cs4S1}5Wr?^a8;xm}~BG$VI&L1;| zB1m2r6C`3sSr)k3bVu14FQ;Yx$6mg4hu`TJE5>suewXtoSuyaOmiYO`CN=m~(B-|x z&&g}C*5t2zKj&S^@Fxk5b5FpJA*(>8bRdEPrK%-c#i^@{EY%4wp!hN4`qp-0YNc6eotNT)D!%1ME6_3#Dr)^u#Ub)|gm#3lO=jSR`ZNsMa* zPQ^EqKZC&0$pjpcJx0KvOMufILBL-~fd5+z{$=UG7_Q&qYa`mfl+d2y;FJ1CjKgcn zdwM_cp?x6M&uct4CvT6sGV%Uj<98O(&v9e_+~$ow$uFu7^I-!sM5rePM>Xu#w{cddTIJe-#{kKW#Q-1z$lbZhSD&%!Gwi%Z`lX$if z9SR)ibjWFth%rWopk<_LR>uq!xQazk&UQy|@lcIoZlBz+ciI7N+< zf(~aJ=up&#OG$?xeAaNirF_?%4$b6u#McXcN5=Iczas&^nXeNAj&4>jK#XO*boALG zCwL>d*-=ObB^`j?D;`=$X?`r0q-c&((Tej>YRX+Xgo-TIk|LYLr80G6Faf zXHW=C*jP7|3QVWi(1|%T)C;tX8QYRKwK0Q6^l2?&#?(z6PoM!3)^W*gZyaavMH09? zlE@F?izMIyc*gumrI>{4(ScbSM}igVCjdJ96W@y*&feDIfwMv9e+2F;qzi=|!%k{R z3X10Oz}g>5EFPGbkHfW&lC(lgCIUnG)f}tvFjynxx1V(&RKZ!Z%WeL!-nae zI1rv43e677H)p~S4O|3)7@40XH{d&PmawZ+!k;8K_ONJw44xPL(m>RbfW;&>16e zcQOHYWGfT!Q#w3)w^>%+*WrjIy~2QNI%7opFEf$@82F^5d>8asAeBT43w$mWp~yT5 z3=(q?T9FN?vb3tiWX{2@4rT)=S}k1JY7>}j7ieV4cb~}4wNAq4{de|&?*TR%ed391 zpY?B6&rfWA_ao6K0xouoE8h|Qyej~$@9$mC=+%Y!2p#uC3;2Gad2s#ejhGj#ep~Q^ z_7R8E_Y3&Rt$<_R*hi*H%)3dtR_r5ZV`XVBT$A*OHN)Sa8@OMQO|D366Jlx#G^eDC z5?%}Flgu-bFf`RX{%mSPkY9{t@i5~isR^h-k;*WI8K<`IQK_~7MlcuBl55E&n5rNt z5Kk@vmurzrW`{IilAx^*X8ZA$w=_hFC2WwwYM58BlKCFL z?+xUu%$@0QWx@-;Fe`8B4*K9{z8v-`<;8$&;>zm!hHClpMmG}AC zAmDGaM-1)hED`e`kF}?Dq!=jC{s+=+hV~?9iuTVXv?tym;HMJc!~+EU%V*S25`$d$3pMae4J-a1QvPj0ik*13s6_nec1@{5aes2tNW&^Azw?1P2{z?NOhm zgy;}84-g4JA=ebnh0?Ncui#-c$X%ux>cA1!kUWC)AvJK&^7t&2g4BmvkT7IYf?{${ zpPC7FuG2B`rd&OtW@N~f6aOy%p?3=DJ?1TQPL$s?>W=JM?1Nz=% zo&^UsEoL@F(*&+%_j~-X|CbSVRNW3te#vxK>I056Od-KNFsGbIW>6C$9Z?){pRZ4- zkE`KmKF1iXW3_S7gtQyuH}>JSyE6?z}lAX~d_v=u1CM)MU?2J#wpL|RdsQO*FEp~AeR48usQs4K9;4fMgk1oYtv zSBA?RM;`p)m++^SG=I5dQMA0N%zv0rhz;~ zac3+)Y|72`E?v8JxTtt-NkwSJ)=2m0+^X`DawrdfPxFK&A2j_-^&#B7krkjEwwY}B z;}AvHgX&7rLb!iveqYd@^RmR+C22d^S<7OL$m>*&`G}!yycq%sQ2!b!n|Q7_q1C`2 zNp^2&I(Tgqi0-G%c8ATI6UrSLoY_-Umg~)MTg$3tJ9O`N>Z4De=m}|C{EbXYC(_B#8v$UnAH%Im5dY7$TGq12vUNPYfw1(?L zGq(53t5Hv+@f2o$gLQ>2! zVyob8oT9mr0&;9NXjN)#)s*!vE7R$~pw=>5ye=fU^XM)*QwvhF`&{`|1#Nv+#XQ_w zR2$57WLnGot)1QZ?HguQln$=%Zd%qG%A!nxRw84bBXueEIUj+w0+ zXH}K-uI?=K@$a7W$Qi7HfA_4&koa)@Q(_F9vKW~*k@*oB#$h<#W}ct+Bf`RY{eR6z ztUmoWFe$9u!7egijGP`#k@{RLrpkt$pzV3&$%1Sx+9?Fda1D6@jmq<>28=hp2T@T+ zWIoc%?SSb>B zDY$aO+E80pUsqT6LS^4b$d}tWGcxl~L7lz0eWb>n@5*T&UOn7g8rjg>v$Ct8y4)8i z302e;cZ}2qdvZ;W)RmRj)s=_pqd&>cLU@#;D66otR<3N!HrsMaD*9`36xrqRIZbMy zwJ9{%TpS2D<%gPGjC7(7^b}<~$?033{7C*+={?LX6L-DM5j#wDCUF@OhiW#w3l*q1A;Qw|nPw4M zIm26C@JVNOQKkp;ZwLk(F?*@BuP)C%%Wf{Nl%?2rlr}bEsAX8sW_&}w)EsHZfWS)m zEipeXB`LC`i~{E(N*!~@XXi`#p7QLlhlCa{VujiVSbGm8EXgir+%2vi3KXQ+dp+RH zG#_>Z_dnpu$#y=m&y}NIY4*4a4w+xa5RNOgn*Kn*%Qw%xr2J$jn*av}*m~<>9tN zmDPC-zC#Og%Ui3JY!>b_a^$esr&N2$Y8(vP@S{fF7X3y>TDu?G@X7{5uSzlU>=wk<})iCU9e)=vXv{BEhAA}mX^uCksH;| z;{FtpUW_~M#pOxdI5?0;K$GkqZ-}Fs79QPik2l=O8DKC#-;7SS? zls7`QNew-^iU=Uz%exWm=0|RSlj)!z5~S zH+E)j_Neuh(N|=%J4<{Y?r`jR?2$I9AyV6h8ywQjVh`h?c3s2if{+maDf%7Tr7je% ztDuoJ+c}rCbWzF>3j!joH^r`-cc~7W&7U6%lvRhZ8sYr51uboxi;GluMutB>Tu@t4 z4sdyH({N+^>O!^2YC&<@;+*VUuP@kIT|Q8k7baLLz~WKFimc!g-k2{w=f^yplk0dW2ExTYoH?)6?pm6!1_p1s zDc6VEX?9C_{v73|`7>FO)7k2}Df_eQqQA|_%gpExWaB&Ly>j&d7|SPHI&)*Kql=^Yy6%muj?OUeAU>LHx`wKXLjx$3cr4+7P}%EH#U zHEcNgY<+WnF1t|BgAHd>Hs;`wkW(J93`oOHDBjQY-=mC9Baf6B^q44^PYEF{p3xpA zXTP@ZyE}?3=a?O;>ad(E`M?&Eocsnxs zP+8iKY6=)k9DKD>O)oUG{PPeEXf(`WBx?8nuQa#SS#~-`c<${^rtgf{A4m_^h;j*3dx$dyJnBzmM?Thv-`?cQp z#2V#HmdK^79ODCbvGFl7=wua5Kq3zXSz4seLY;0Fr5C$AhFM(Va>i!y*w5UUg!@xA zH=o2)HhmJX1LFLs0uHi?P7wK#f=;p}e^!X-M3_iA5>^bSzFZakjn$jAY0K+-+#b^f zsuiip)t!nj10-|6=l(wXceg$IfvW(k0+vf;1Kig@Hhl%-B4AAr` z@izrAgH1uH@8t{NvnVKuLYiuCs4d7|@xBv{?y)=G`766Y9WBU-eq(E!HQ&YhNTfyo zCNPH?=s!!!kK{nI#KNL~vG1S;_0*Oq_JA;LqGTCaiTTp97Ins>c_r59PG^q8mhFu0 zGMDClQl9&Co= zSmh5#3gw@E_&vXy{U};!cbS^t*<#6V2}bWKtIG7(mqquKR)CuCnU`IYDL2VOjw1JR z%$Vj3^r#k~U5{+@VM@xpTw}r7`3ee3__Tg0|f? zq3UWFDRaqOYYqk5FmJAg;_=IJz#pVoqaZjDK9H+ch1^K%q5dIUIPw0Ho45BYx#8rt z(UUhU=|1=7B@^!#m9e7mg7WpB-WR#xD<9o<+lOD-71{gg_2mo79^O_E`k8yn9bY;B z&{qx(4B(&hzjDVG_s>EF+pKEwMGwEa@2>ZcZ{B?T{k!(P`tU`?sukaU1-|Q-Jjc)X zfqjcQJGzu?WzkP3!TTm4?gM^Z61-o7|B~Qls%tI!8Hlc>_LJ~NLH}e+6!0zqkKUOC zk7)hCOCX{BP@4V+wf-OH?J4(<=)YTo!<$C^5A`WpQ{;!Rs6A2PKXYF6Ao?diebIiN zd=;PP6&z0Wp$T3g@PPNU=h06mJ?Ho^JijjKIme6P`7h~t3_ler$4~tEpLy&P0-pru`;FigDu-hoVt7q@&hbj?l;(Yo-{j{pJb=z< zKFQBx_y(Pw<~hgvH1Bi#CqFlg&(|UOInUK4zP~%=`1-n3sC-?fysxiM9Dn*ct(bgQ zS;5!)hxl%@^gAkH3py5XqGJwMXQzSprGfV+z-ga~e!9}YBWd7632@qPspd)FFZ%D% z+Gin;RtEpBAB*qWgC96os{ju{dtW5o@@%%1oJ=&sS%A`mo7PbpCS0dcT7jG+;6H9ul@rqIMa2?ex0cr+br7k%xUvREoGFBYdW&!9 z8Xp>}u4!F*X<+u3E}-P%a3K1rD4!?4wQ%0tK>5ODBO556IA24716o7E0nRE3rxeyU z8Qw>JA}Qeg(t~k0r%}<*0QsoJ+SA$!cvnLIad<>JnzH?n^hg|T=zlPwe_C_H8pg(@ zH5cRdNI#GF!+kvkyqEIM@%9Hz89YY_??;`tAL!8GoVO4hXBf>Nk$dT$b39G+oZ~C` zdF;E0w~%jNa{oG>h_|E~KmMHKahmrzK9ipt#^-oVe$IIdeSf*yeNdZS3^zKCiLU_1 zQ{E-MB5=oXZFqj|7W(X!!{_$%dCbK8Ix&x2=^` zyCgRAFYp>*NA91$h|~39j(gho9LMTx4fm5t@IJyl*5o%y@O};cZ-9q6{fK@BL_d<~ zpXgG+yR`oQ%KM4KBU(SdN`eoi>3?uK8o@kwpr56jUd6aGwSK-t{Tt>vOTYz98QOPi z^Y7yGA=(!G^l0P0#NkBK0^Y0je~QCNmf>*JDHM2njl)Tn5%3oX4qAQ&XAJr5mP=n0 zIx$Cy4K@>vF*HS5 zKhc!TFGQ@kXK~jLQFBv}t=2{(y>clG6G3@-NFzO-Lk8DuXfSZ)g?WH$$wCL$lBt(5^(Z= z6!4P?aN;on{`&+t?F$YEzc=<1hwJB|=syncH@4^WCi)pL!nv#{;9Y6pku>ljBizvc zpb^gLS@b_64Sc2%Zs=#05pL+GI}N-i0Z#iujEijke7yvIXkTzRWPBr>_Jx4IKyc{C zmP8*{#~^z-ky~T+$x5(xUHB@{`TTAKx4>EhF-%dA%#^1w&X1&g3}WYx;rQ3u;_>8! zD|w>hu&y#N`$Hr{X$k_N6CuaHK(^W9!ifOIh|;+A=(d)cIUAa1%=`RjKe^?>{gEYi z{ma##zv>5fENaP>c@ifhIj<4kBvG0QHo3el6^T=Iq00P#oo_=EgV_f$vRKU?NOMxc%T@S03}9; zO^y(Imy=06CrY-n&_#Cf43g=~)e4jrt_{yq-N7N-WZ|(p|hg`d1_73AFzU z*dY30W7w%Y4+1U#BG(&lW9iY`NKdfssoR)86KnH)x_-=minV!GZzDgSFjfQq-uK1# zvMT&kq>Yn*Qh$zk2s^CJRT8ST@(i=E4?xsMHV$}5noKPtXv+QbTGjc1Y==XVg2mZY zfhvdJ;rF=luD#4=L9Oi~m|JkVRMf+629C&@P1#v~pKLaTO3TWzh*|ArtlYZj>hWC{ zj9<0LDrYRd>gn^(JAUPo4EERinfl`P?Jq_@y#M~_NAw%?{kLEA;*~RJUisohcZ{95 zba3#}6JzqVyIzUD`_MztcVFJQ^JV6I=pp8OWf!n!nS9subG~j9^nI*F!gt2t_X9T^ zEl}mAdJ6cnMz|#}2LGA{Uk`dYKR!GI3f z-}v(`YN~Q-b88&|N46`&W|8d7PPMYaluNH(u3@=I zny2ln4qZOb67K~)a@Mv3+0Dy(-+ZNZq`k=3xUfszc2fKOZT3^~eq_IyHTJUik!dB2i1Cwg$m;g$3C@coV@r ziTsE(;Y!b1h~r*QTS)jNHC7DMTCBx_u7~%pzj;%Ww{~{xmOYVOw=HZsXY-0+b4GSn zRqv{Sj#a%Smml80zhiZONq)!Dj^1TmWlpEZuH4c-geQvU8AbjpeqjRc%w~Z*?j~>2GZ~BcptE>?PvZNL zfhj{nLd3F8GX;Lb(`NvAEN980`NKnzfxeEmrpBs@(vsprtdAqj`jl6Y*b9F)ZWk9( z3rH!+rDU;Csg`W{lqG9Dza^uft~A(~;m9$&YDX&Pp3`6OahA}Ry}ELsHsE#!=EBcz z<-Y!}q+L+#8NLTp9hF#)H&$Ki;t1RQk1;n<$} zQduPELj)!6AzJBAx^TnnjAr>#o~PQQLWhLR6|kLl=%#174Vz(bTPQTmOuN|d61yRNFabJDFSL&KLH?t7Brp4a6fH&xpk7X93f8q^%-nc($^Ls8~ z-oyjMyiX>;AH(LWD;ZiG0%ffSK0n zcOVO69MHuk{2=_|T<~)^o%hID!3H?I7rb;Yhu4Vq#iBhpu_=r5>L9_{AS9v{)t_w z`~-B+QA+Yvx0EaYr;xAY|J3a77b(xOP3qsEPc@IL5^JpS*257-Tz=(jx&yydT@;uf zX?H8uys*Pp>~eUOXXkw8-dj3L?S0M@)E`Ug2 z`;x?-H@&OLbLS~1*%I|{m`y}-n%*@&<$d6}d_?p?{jL%Xb4FO(WlbjN8W`Y_8; zCm;!UNx#cbz<{wG@H5Gj$x*n)6T0Q5o79QFK1%BxeOMVo+j2Gs%4iFlBa@)Zq$^P2 z`-FTO`pAi3ZLzmk5FC-H5?i2k1TT&&)aDOflW)6{zjKRnqxurUsuZbiHK_Ec*`ihkAC;Lg9rbf_oU58L;vG5 z7%!}i_v62By#M0w+rz%fj>*4*Pp`g~t7yI8#w)Q!m1VL8M3J=5_5`Zhii$fS5L9*+ z7qwLd45nbOTZZ#pM!zeH?F{a%JQr&r9VaNh1fVqg2q$b;kgK=>|`Fo2Qd>IIQbXfMA!EEEk0i`>GWS zMrO@GKCT8)bim`bw>nxwrB3ozq%2TzRyJ{MjbeEL& zF0SvG6U-GyMFQF8@6?JZo6UeMc0LfHum&v z91L9x8agWdM!6SRn6kiYT@LVC@(_csm|BGJSkxop;o2vCb;vX7W2bzXAAO*hGkx;c z?3t?B?fAJpFY^lasbTiX!=7A3+cN17=Nf^FH`=;aCG+-nR)h~JKSc6?-%x5&tc--xZ|2HwDf>CLKllW*i-C!KzUuX z*!?)U%@b+c6zKi1f95A|ihj($)Z0kUusf!Xh5RQMn!`A&xo#NwPwwRB!{;XdV7{01 z0StFkKF?wPE)Ip*Jd@iz!P2!U(EGtWSElaA{7bzJ=DA{O8_e@wK2OXCXUf|Q{06P4 zHsw#bjPNUhLk9aoO8DamaOk-hZ;#wwj~UuSeA#bnl1TtxgEAc*ks$7npB9vvmGY3HTAWS-Ao!aHX*hAh2g z_RCxNoGelx;v**%X$=YMG%w`nC7)W7c4&4l9XY~+M~=`0*)x1Ryl=Wk-ooc-kqRSu zc$4H4>VU05XC&yP?uBN|d-*?N4wFAO-6ZdXF3yIN7@o!)59?H@ClI~C<~v|FL55JT z0~r`38?%X+ArXyLp@hiGn+%o;`&6(rOCDhb2#ro9*&-mOMTlVwLzvK-VfUB!gc$2^Q0h+rad3kwEybf@AF1QK@p{PPA24!KIZYHGSl zU55$=cUa15=52{%YRfzz2KGGDee!4F)9fd`ff$cQalVXefkyXU&t4MyTx&V zYAN=IH8(HEf)JCYzP^^O?iCBv|6y~f8LF+IqCTIo!REUD#gT<~4x!I#(*oHERnPzW zF-_ZOOtY<^{QrnC|1ZImtEI26$!u3GfxKL6hC_XI=+1?a#r<{7gUCHrUr}JoKvW#xkIZLUz}^S_ z}wxDgs6#%Avu$H^5#t9N6ZyoPY0)n#+q17d9Yi2vem zlkSZ=XL?$Ar(H!g}z3^3KE2FS4cW(ZNR# ze2(MD&<}6~<_m_r0rpLgGSFEly^qIc=#||8vW9v?4{3P$KPwV$~!Ip zgmW=B0xJ-r;D8L7>eX;zh&%Kl$umY5gTIcvTq6gxu}OX~BM}kNgLoIdz48j}Gh~v3 zrgmVuNp$evJN8lFe=o;B#z0uIqhogrN z9AG2SlZ3QcNIJQD1`=Q{MU5;m6qPk42wh^WhmA@53Se zPxj6Ou&OHC`{&%;n%xeyXa0tiwqjAFwwHq>D(jN_=! zGM4d;j-xY<C(JH*nAQTj$)Hgl2hf-ZwMv`;33iz2}~@_u6Z(wfEX< z@4dF9fuEM32eKf?Fiee_gqwQkqx2a4bl>vQm{L6*lA=Bli5{7_5828jU)_(Vd*6Ef zcySB`ZctzH7Qfj^zAL?#m@2jX>~X_q#=-HrPMh%j8T++WBC6(P>Xm3YK1ix@PL_J_ zPm%_mIcVHU*K|jS*%2O_mQ++8y|iTZsNA|KE{htM7&o$7%J(Aq{8Y~eOEVZA(RSc7 z$HS;_YLa0&m{yqTVlqn8#QwI3-6AJ#VP^U#O-j|76-E8hW5XThV8`^7_OXLz4@}y+ zv3exAs210hy4+E-OO}dknv`d}15IaY_h3(@D8t6zn}PF&(8R``bbr~F%DkMo_4S?V z2mu?_eZR3!efC2cSveW{Sl|R_RHb24>1)TIaaGjjSB+CwxJqQ8V$kePH5P^Ldf)EzyFhB(?{Y{VoaQbM~f#QFkDC}L%9pZhSLzyPuzjj{&# zqEjdtN(Kw`34AQ8BQ5@;*?MGvWx16Sm=9@;Esf=a>BYqUqjLL?k9UsmpF665;--wu z^z=;`X_*=0V#+6#I{B9AES*#y6I0kBt#BVDB>(o2OdB0F2?!bv)QvB^qfYH)ZOfl>0 zX{Sx99=wgFRyFl$A7V=5SZ$&nJ9Mbio33`<_I{iCJ7}%;zF>Mzdr(PGSP;g1suCF? z)6V+BHaSE)g0=Q=Ulh0jLS^l0O@budAwTf^EVg`pelHE9`}Oc|~k`})v@V_mz`Idp3QV|o7yiu zE<3+8EoWGM>~fXaR8^U5`L*d4+d3s(VKzJ|0mng*T`Z7s{Sr+9wSf*3;|oTG=266Jp573h9+sY^E=^z+Li(t*rs<0!QbW_T@nIHEs!E9syRqmxd(eP_;z`x6_^=(t z*Vr8;1>`3*n@NXxt8`^>P4($$)(MmtV*zvZsZt{*z(1T?%X!C9TQaFSr4P0Lp8R!r zsX5Z$G_{qw$e>y`|C>;0~llq!E;R5=ZIR&KTXGk0qD@ zT^14L$_N8QyK0V0Qu}$msoqfj^Q!N7KL{%c-MDDcxwaU_6&o8HrEb;pk9}l%LA#4K zW27;U7)Ark|MPW|4x^eTQE$s>7xAp{kKW%)?o2ovZ8|gIQHIe?u%Ytw%Au-QAf{zo z>$ezrd9VD{uM9GDdFr+tF=f~u!3Ji|SCx4Ky@4}jyfbdcj&asK@6tq#rEuNm^`;E# z;8Q(!!wuss^WGhI%{8naP=087U&Er^w)^0-*!}wOVFB&FzGlX4s*8?@H)1o04@eX# z#t4+D?jA68U~1~XsRN1z4JxvRC09-;E}l@CeAeK~%E3|zUz@K~cU#LySK2T*#PS&0 zFzKqroW)B(NBzT6H(z-|>U#SBBXpaT@s`hMi>|`n%T?wZ(neVRK29_OW%<2lCbz^K zl_MMI3h}YwP@|nPv2=@XeZ3*{k}=Vl8Lnj9Y`HPHr*X5LzZmQAWCpH$}T$eeVJ^{lwul*q`G+_-q-swNdoTvk&!wmd1Rd~9LOvWe1Q zQ7-dJ(<|0kyp@lCJLWY7YLDsqi`j*qW6NO0wCx!8 z&O770UDu3#_Z{?H4Lx>@@s#mg-}a#LopI>7x69CTlM;9ASU{}yThb$h>4Sl?AgUxk zMQ=P*=>y~HNp{B$(?c{1@4hpN#IL#5yPG85eOGVm>a4k@eA{2p)1l+@6;D-K~hOU9%0(3u(ES*sT7~I51L>n!He%f(*xo=%zx>_eKL;q>gN=)l- z{fRUTXZaPGJVv#4*lgaKVt}1dw zhxSWda8`J~(2z)badol7VNxRts|vyrxxFCODR-+xP6CwMyjPmO)?Pxw47NXYM0QnLNmkDU3a!=QX;j?0zf%pZhmU~m5aLcEynEwkrqi)g2YJrojbC4?0`5j!*( z)6Y1BQFpdP@|BvJ<-eY`>Mw zatWAUcscbkAyb?(wdo%jCf4LA9IO&x;cOL?nVCZV$4&t@Kk?7&J#ii;P{3p`p00n$RPIFDX5wnuRhsSD;C@((7wg z_db@zH)#IV?{L@nr?cGv@Yu_;=;|bZb63GaJ3l zs!2B#x9>!yXe+V8`>Lnx{>iSOKQ+hMibOq+?tQ(j_&N0evq44bf#-`?pq|#h>FPOS z(V`iKdJ2Es-gvu}@oJD#@i2!))Uqt#hYnUF;`G64GH0sDaFsvXJ{g}LJF?z-zV`z= z(GYDL7j2cXDP6VYRrOWdugIrZIrX^|7RZqUKm6xX_zwPXTkF!(PIbmcfU(h5c8ec> z#zxN(8%v6YW`?IEC6~k#FdPD&eIIBZeWDG&Xg z%rFNqXOB`(`kyY1CFS_i)MR_#?^_z@jNq`~5c~h4I+>1aeQmpwRrt9I=MY5d2QVln zAE{uRL_js_d+Xdv9Y&{O%eCdCxri?x$`(kgV&%9&cGl^08{cyb!R3V|h2?gWrKT() zGbtu0)Rr1mIAB10@zf#d$<;8$#)zRXJup8uDZ-XAbk5+SsY5dQ zl~3rOz^KKfOh=}^wifF2pYxzWzR{>=_)Eb!$9H8S!0xX2&E3ni%p93m3nBpztnoU|IO>I(L$VZ`*Ql` zFom66GVOD6@N~rN`-7)*9I=&T0%)F$Al#MG|M^y)>}}tYpPZDRpOl<$yVN^bz4zLr zyu758JPaC>(r8{ttn>pq4Mc6^D!aJ|F0T6)`vhrMlpmUjHT<|t$m3t2oaneI4jq>` z->keMJ~hKZb%E}ala*KQfI11R{Ud^WSC&p4E-SC7D!1L4I%H-= z#jL@pse@-#RLmTb>b>BKF=NM$xk79rT~|$U=xP+R4c{N<+Zh*~7?b#2alXr0xennc z6SHi&weS?ATycdE0v-Pn{7{ukf3Kh$ zSrXqn3j>|F(#%33CF1*%C6w453n;n1D}x3}j*&VkzPE3^fq%Jy-+Q1wUl{7g6F_oIu&*F-rB@B?`CGek4- z_>!vP+_a+Tc2P%1;^>lb^ZS+77G#yh*a~AJ#!Q?rEWv5AA6pR=n46Ndwykt#O-5Yw zX9$^L&wNXtBy`r)3^@&*)ViwIIKGJ ze&xUxrb#6{!RZe>St*)ijjzfos0xjpQaEmMd#$UWBQ3?rmhUe0>EOVWgtWq}!mPPd zr81`G=E@~6Cnn1K5E&YEVmd%Onjw})?^!Go=LKJkoGBw8>2c*i7KKGMKkguw*tj?2 zsf0xg3^n#vc)*U^O#QrG!eWDUrfCib?EA z*=OzhC_0s;ugcQ{P@HrU$Lq1x*~!uNfG}G^aC&ZN`$*>fZ8LI;LeC5}XQg@fsZWOx z=0;VPqf?vl9q2mTo2O()y{QfIL6)BCRrg~vw7gD+v%>rt%Ho3m7s@ys+h?^sUrAM( zjB`O!eCLA5K57;O%QS-po7AE#>^UDqpBltpDZd497hh|=46rS;a9S$!^rt7!u8HCV zgx>Q&Qq@#rR}2$K49$iZ2Rz7mAUy|g>Pt0Mbx2KtBXleWM-E!ECMGg4G>~)RgH18< zgDtO)8uV>&a8byb=u4)478`9L^oMOwbd1QxaBQU2)_W*NNljre-XhkAo{m5$RVJrL zL}d3lhVVP6ic?p|4^BNbRpxV}V|+xN9d*gn{jo7RQAT^y%iHM>8YCIZN@Pk!*eZ0K zz*U*~IW<>xqVe(mW9YVMJ#_bFra|{m+MyuEB&R&zgv#fs6V5kDkz*EQN{|-Z6!gH7 z2hQqenQEur0_`(Qk)-7vs6HM0QF3KczpCVq93j4Z%nMCHj6EWZwZpU>`Vr#Bf?oHJ z&P4_opVde5CVB`zm9A|g45^*FM7FIUYx;fB-|^qL)}zgs!5R;QO8g?;Ju z9~>xj_t{kSKSH(T_8&;~zafuLlnGfv%j$egZewwpULxzU-5Qc%LY!(@(f@8ky)zFJ>uy0t;{;zt2Xg9+~(DQfDWYWFY2W7!9~fqkI&vrlEv_T;JB!aKtXVm| zB%ylVa1^v*}Kxf z{;>2;T(3qzmEQGg7Fn)V>07U+y(25!jP+`x$l`_@U>$K1%Cs-dgKSPymWeP%?1i{b zxn1X}exEo`0~AiUFDAxbHr2-}mjDj9r@fUy9iwc^Y%Eg(tN0eU5>PK9CZ{;Z*bbGf z$HSG{G!8M1jWgmx8i5C84V22{tn6PkO+WWHt1D(-`|Qeb+tw|~t_zH?265nB<)r4} zGq=ty$vN|~CAY9?ecQ3w0S^U52XvT;l{avBgkwIjV#JZEIV`c@ajdi zxl_Ya!`1U{u8qj#G;k5dnchn*?PeS2b`4d!$KNa4GJ*>*z59iVSV|aj`D*olWg&z- zlFqxvS$%ROpKqQtpmDr|GpqGBj$Ki#F_1k%*+iCEJYIhuethTSX*^z}I0Ebe4#Mo6 z{xu@Y^kh;qKyjGu=96DQy(F5s?-VKG;q|^G0g6Kh56q0n$jQje%t{LkOv-170I%+pEK>)H`5azFD@Xpe`oDw*QJkGIAqp&m8K~LLIHyvbvaT^&hSyOl!+ zXKt9haOAm9Zd~#E%chL3nUs0-$`_dgj}Hrxa|o-5N4A_eg?Y-dnm~!`m?x*x`r;EZ z?TCEq&4>(4Tai26bxc@7MoV(mc#DPB=KCLOV_ip$14nKS3}HJH>+mFi(= z5!R8BRd%~QJS;4|VnWrp_6gZ}b*&?ZPp`^|j0+kt;_21}x1N2*u(kJhEWK^mLj>PR zc9u6@I(y#b^`(SljI5bbH+t)n>sS8n;)$b%QN{t3afx0=yrsQmJWb&$dJ0F>RUgT= zA4qb`KZayQ)h_d1Yx=Wgmr|&_V90zR5tx(|mB>ls&;k)_{~dxlCCV3*{LGixD3oYP zszVJRN~tx#T(27qtXWr<=@I+&s$-3zFQFX8YPOlJwiTy*fn(!(p06p!9>oL+K$T8> z1>w+RRub*0_YKjC!h)#O%*+V>$q=nDLR$IaFo|a{2GLKK!{emVb;)1~f)kiIf#T(y zsT*gOOel!5#)bsvXHB1V{q-l`F;`FBy0APVYC>E{=#pi}KHB1)HTA+pmHLga=4I+r zTj1wd`1u9=9He~c+hC6o{^OCI2xpQV}77_oZGW?MEs zNDT}OkmLIr_0#029X%Ms3g&r@`YFJ*!`4651Yb}2mVSDpOj^o2HKhunKppnL6+N#J z1@sho^?eKWN}D@KAx3IuHVhU{2g79FK^}eh$p34JDAWFRm=^>Y+Uc0CF6uDQ!-3TZQ}n^Tw7nT`~WGrmGhf z7fe|_c4R|s|M1vgi#2CZR@9KQ@9UU-)8_e3Z@Ou4$jHU#Pn@=KW`0UW3T{7S@Nzmw zjdJHJf369NLSWLQu>Qt29nP@2FJOgTPBO&;KyP_X@0BQr#X^W-Bun`4U5`>O|D(c^ z?|QT+)$e@DpP=+`Y{!NAe0I|(WTodB9`C+fq6zQipzafs9om0r`f0tNStSv%!2?ot zRz7g4L^>Zw{H2(Z?=#%9Lhj;uGV?@L`@K}7fh*iP(3_M z^EXd=G;M>0y`tpji?HxJp7a+OW(xDbi@V9igP=rFW^MA;g%zef74=&QDd@GZI$88f_)|(= ztk0||kUJ)YIJv6t>CPpflCFsGPhU zPO5Vx$B+(E0L$ z&X*J82T#)D8&d^vt1mzL#t$~VaIyF9ZQImo)|O-0>JScP-{XBot%4_u1FljIkgh*2 z92`~@5+ky!gYcisnI71-P4tFm;{q;LSMjWV4m0N!>#-vOB!4kJc<)T5E-E#-^oyw;w9S0YkcKm|EcWR9=%6s$s41%CC33Kv zy!weRGFYW!>KTV(pQw|@vr*7AnHjN&%&bh8)D7D*@cv5R%>V>HE=p{TfFjgXCVmgN zqMVLDh4hPAb1*i}6?b%&kA_}q`Gw?E?~;@h_4)``sJA~2U$}QgdPY=6gnD_nRWz$d zreYML=dmHzWSTUdnw0A2_ZTH6B0j?6(1U=(%f1n^iR}|%dSOgNOc2eiy0$hVGDux- zGD*IHq3YX`<5<%kd#E=#GCf>-oDRu3M5WQOvOUTpPaO zWRF-$P==_;h_E1sum9;oLkxXDF=J~(vh=>lDj`qRQ4?y%j+?38w>~}mT1QND^+oTD zUpmS)bwWt2!xA~BqGHhJ-YtnAg#>x`n)akrO)MJM>a<78QRCD_Jo0`f^w|`43(_Ac zdMgK0^!|t@E?jS2{b6g)d~@5IrW(tUV>g%<>v3!52W&Gv%KQHKY`TW{thX~IK3il& za3D<_LG>)YvdCID8T9yCp9 zkexH-TU5MT}1x&DLBEc-b)Ld=1dOU=%RoX9xKrItW51HW?uoQ9Bp8W@*%9j9!SvnUY2lgC(V5}$4VwQH@Hdm07)cI=*qrd!2&(N?6&Ab_ zRMFU66l)8RemzQkBEuE>pd~J1!gL`l(MZ%6snM4xCwHHmyz0$J4SmQG8#&?p-kf@KRFx+4GPQ`kFZ%vc+4mDk zb_`NvU6rw=MaFInJgAreS-aM=ibVtTPQY}Wf!}#>9 zTzyvR6o#$t28)YG?=Bi$;>;PnpfaJVvNR^c9v19OD@YkJHm0byY?Jx?u+rfZ^9Iiy z;<87lI*WosBSOcGPa9m4YV*E8KAgiy%W3|b!Mnu6HSSw#jAvTOAN!?#|8xC$ z&T#bIA9zeZuiX3A3HJvb<1C{ddN>QmN6#Y$JqDe&h@Sh88uz_ShaN{~wd9LDJnX&I znuw1$Qr5WABbsa$;;*tmsbRcbwb|4;q6Pl5gLxy8Mo0fIT}En|937!InW@qtbErXS zgf%g(U&sEV-A_IlV0rR7?->a$b-wA6W1XA?u*I~=1G_on>?_MCotG~gyi}QR;J$u- zk$!)-@BTGh2_NBo+}sl*g@r|f0eB>cG`iH zXm1N(6WeT}4k>atO8?^A?2NQzj;;w|hr43W&<{vC(I@P;YAZ@pjYFKIi}R1At+qa{ z;m^`X)(_cyb);JFJNu-hZP?r$D{CU1rrQIGr>&|TSwFfsJT9m-ZLWJorTe}uwf&2G z4@^-n8@gnC?oZD@Hr+V$q#!O~aOWK@dHoh%epWHV#>kqSLD^Abwmo~^{9A@U?mHhv z>U#n{)aT^f3YKe%PCckxpv!^8q)yQ9$0jHGLH!;u&iaIxy0DQ!s-@AD@*ik zT{M-Av>nc#gGF&-1xUm_c1HF2ttL_0(01Q%{zbv_ct{PH42OfsF;0nP=wq>R+-{8C zl@f1}@N~WrYWhtTak;Ljk^N1H6|s4)D5BBEn}0qhBrzv(V5xpd%1a;_m1B3j0R`9^ zar!z(wp@zeyMg@uvCvo_WK!8}7Zn*E>ag3aN}L*}cQ9$8X2yF%*LG&#-?Sb#V(Ia%Snsdwjp<5hWJv**SrNjT}Zxq{5?IF z1^UQbj%RZ!SPsYKXl1No#^g9DjfIgV9+=C`G*=W$Pb9Y_`a7UM!(C)uZJTN}WTi`&X7!g$J86)3Yrf zr&W*39WlHzKfOF4E7$Ib#-J-QFXMEM-$Kiv<7mN4r_f^20|7w@;p9rF4nGE6B(14X|jget4k{TR}Yo*daaINc6wyznoMQs z`IX~Gk>08+#sp*T@@b_9f8j=RoZ-JTcVGiMYbUCM_^td;bz(AHr$lIdl z;xOS|Tw5o-IzWGwgZtW#fB$=5#Y8#zEgN}IE5tN7E@$0XV^M~<)rSuoG%z9}Cni5S zJtj3srjGranvKQtVd9PmD3LumVIW^6HXIXVvi#H-#p&mAM#skC?~BlVFy@a3pD}II zi~VdD(t+UEpF@usOj-NVfU3l!S+<=&fIclc&%>jAp&mK@aqg}4XfG?vf zn=YGq>>Set9h+*Z5|8y$4|pFi%}6b@7bH8EL~mMRYKe*-6Qfp#MR{-Ca%|_op%zm` zfc@BhwL3A6zzRyCb_>Q`7oXzr)t7VX(OT8~pi{NlWRgb)P}M|Nr2{uLGdCIJh+yE# z7_K24OOT^3l!i!*dTWTy+Cb=zu#m6?N^o%KTqQKLDOhGd@N=Qi9TuE_KBCUx*0uxRDwIrysqIi7+ZEMTCId$U(4=gVmP*PNon;oAKpOKPe zi?hW=N3yxd*h(BFTZxUGoY}@juR2DgNotf4*|W$rM2!;Lh3?G%Y`W?T6`!PHFB&$W zoNWj)eG9tyMWzfeL5Pwd3q8tB-PO6d)g#lL&Wy6`Of@@xXniTdc6bN{oW^U?FhIFp<;D{q`P4h_|3&a^`LQ4MdqvwhH@ z_B-2lrcPS4u5R4MdFAEvHjb-Xw`fx8&huZpe%iF_Ups$i^}N~jLkbozo?n}vUps&C z;({Udv*%T#mi(8@Y6B!f|L-aOH9j+1P@eLAHqlD`$@e*c^$XAYKAZ8Af9v~fQOZ;~ z>rMW%aEFMQf685p*19^^PHtRI@hkyA1Z2STV9;&TI23)c1>;SXlh^G)aV-B z*4pWsSiiiRW0@Hrz3fwJOf?&Lu|$G zU)J}AKdS*nlzfmdp}er9is;3ITzyK~LK2H9P={VrdB4z?pq`ey!&UF_{YxPW$)>YAo2Zae{9Y=O zFsr`3qkc`{qI#)0Us~-ai-l3iuH{XT;YypP=aD8^Qe1aOGgURV6BfCfI$YF7Lw$SG z;#DnBx2PU5gV>HXBxOY#q;$IL<%fp0*2OLEhE8|u64#1$cU!x=la~j&+?}qD=C)NW zjjoQSrsb}ctK6N47|d_&SV5|-ooTK$%}CTLp_lv@wKXEn6w{$``QV?|5- zS|d|ZUgB=8Z;=XgcXk~AHgdHDW_7sNHFXrZrX#WqE%hB8?gpM;(cZSAt)2R4?I>`O zcc;5Smab(;fy42}jPAWoXM@v)FGH&{6y``;fnQM9dGWgrH+T92r z^p_9>`B2}fYl>@4eTTmed+J*RfdVwGhH0H}c1g4FxUr3tTH88Zi`!aS+SWi4RkEsG z7!0Ej7=s%fP0QVd?QNpbA|0Le?v@T+{vp^XVuw*?T~O;?i<_ESq()H@#CmyWa{>Hz z!z#Umo$YP>*3sF%s-bgLJMz%pCS{?po%M^{E$&W(H6rJ2t2$bnI;fMets=^$(sGp* z_{yxyy_9uHdsBTU71AT)Il5j+X3b44D};>i*Rfn(V%t_D2c;z?CHbx;Eo)aaQ%t$j z>TYdvt!a{06w#3u(A`;&+zMr#FmR2lgX%|2I$ZtbUHIT`^=T85zhqVYk|wxc&QBw0 zj9Ym1#9v($WKB~`i(JRFORY;wFn02A*NW!0)+WTxCz?8s^=8V2Cb;TXQycXnhl_bj z%G!W{Eou6`_Ls-omY=@$>(eYA*8%jo-*Q}Y`M;o>@s;fqeULIzX=8k{mIDLacr%)n zPQ|6<;6TddIzTB=`tw)l`&7=oMLg@`skO}ZwJ9x1z0%6zzl>rTsV(DMhq8`uqxjdY zH1UgE8@Q9Br`<_j1BswitgO-hiu9CL^hv3Rr`wd}JRuaU;q6Y|bSYCwtpl_xtMznU z%4nWz)#;r`zRS7mQqrKKo_lS4D&l*co_iC|$-6@5DxF?QM@rGGzco!6%abmGE3Dvq zE1!DPK0bv4ew)cN?WE_{^LN3YB5-mEJ1B{8bp`o!@Ql3C!nKXNODNwYa;c+~2Au}g zQpzRJD12?_y&uQrfjy-+_|==zKwk}(o%V?nOEmzxr1r~Mr017}awMTdsnY+g(C>@9 zoLr|uz0|>CokK?H{k7_^pF+Jxdnxqacfq9&a;yiP@SvVrYod0AAIrEWss4ERGvw^Y zNbL8?bFX9$heDA*mogoB6*?QCvO$+xzjln^PNyz0E)FGeQxeggPW`DSB>GgP?;tHh zZbgdxr4|WY%r6aGUHYfx{Mw>xrEp55Yzglf((cx!xmV6tL8oYnNWY=oC4BNz*`%Be zO`-vkl4#5KzhBBzMw>88FS}5^1_@cj)vt5M(I(nhV)-|nrYMdaD&Yn_dnl$u$k=ema9q^$CEBl$?WQd()tdrNB2 zyoBFd^>X?(Q0Nlwojz|#OIkHUvP1^g@mX3u(F&uLZP0V<;I8mX_-OD-`X9;J&<`oI zw6aFIalhRJL zQwvf?(Je!xq^?C)oAv8*o@v$j)vGO%#u9!tWJbz5oD_TW5M3~2NXj9fgcd(HJ9PS+ z^j7U;U2h@3HvKng`nl2Dw8BzvqKi`VlFI4Z2Y-uT z)PUq=^oGJSksq-S{BkU9oIz77pCmuwqUc5&`5A4BNSD-JJAb_t8=o7GlMSgS;d&uY zN>05kkkH%-{nExs8T{@4$+alI_SSQ6>7^%GOe#&J;MY+j6{EFYPWsJy&4_$UK7Hk+ zgI|RvL${4@t0+~cUM_i3^u4X8UW5vHsvh~2w4}C$4}PhUk{a!U=&!WXq7foHWBKN9 zl}q7-Q5$7CWqzscl}<_1U$09@v56cy$xrT|+>Yn)tWYBL=TA#G*aG!_p8g~HF|pbF zZLILbXb(!U8ssmZUzg}Ku7DDwHvP}ELZ5I$O4Y&M%Er+!29L+Z?^327Jnw&JOum*-ArU5+H3|38}fXOCu% zueTpI4wA(Z`hVUcJ!HP|rSHGY?lK=3rhBjhm3hie#Z0`m=}JPw+V&PD2VcoDrGlY* zE2B?+u?J7f+71FxOEUU5Hgop*#$iu=zR3w+_GL}&t;&Ft{}somQg!mbB&tjca>x&QRx#Pv>yIC>4edze_-;6l! zdqB)3$A6EzklFNb;SY0OlPwQftD;t0pSK0`H`+EjYPIbVd!YUN$oK8{M7|&X>+m;N z^V`nfhmr5gUzC}@)lq+lj*P#~8RG`*Cf7h@Zst;8kDjZdHW7Ul{MTL(SzFYKU@#`hyO3tq- zlE0FtOFr)Z^nkZYCzf7l+^H!lJFD!h(q~Jbm9$EamL*}<#svPL+Yk@r-|P5(<@#qfT(|yZ{mwqF@|*m!Sbp6Yyz$PB2hQ_eaA@nx7r%Syp-c8% zdg!ukm)kGjdif)Q?L{~L^=8lQRl8ojqZ6qM1dYh-V&xKA=|3qSAnAWsK2?6998gP? zd(=vGpz?(}SRJDrRL8PlUE^r(I$3tlpGn!H1aPv7Sx#5ceyv1lPb;z7XG(_l2PIQ` zM#<40QF67vEBV^}%2MqCWrOymvQayrT&TUMT*O+*i?!#KXSCld&+`5Y+9#&r+Eb=8 zz%(#NyWiBT%`4C;|P! z08k3bKsn$P7+V#n1_Qw$Fc=I0L%}dm1BQbUU?dm?&H$sq7*GqwfjTA7Hi7FzFj)z= zP2oBfOas%w3@{VS0<(E`4%fM0KF^-TwH_?eer;<27if*P8x)6ahw_;1M&)m|o0L%7 z&B`BbKT}?@?bJTC{an**zvlM``TZe&e^?noyn#^LZ+PZWp7~F{|CZ+-BcI>#+!H+a zd!Boe`%m%QA9(JMJohx;-z5LHl;><+%KMxxFy8i#5^sA~*=>7I`Ox-0@uxq~zP5d+ zgxU6KPuuouPupX)XE?FpBYS~zlf6*6-(IABU@ul~vzI8pw)fZmY#*TQvrpFkV4nh} zg6Uu;m<7%Rv%w1O5&KHeuKnHK0Xo4duo|oZ>$Uss8^A`e32X*i6qo&6uIGXC!3AI| z_zAdBDYIXs4zX`jtLzsm7uhdSvh0^CDfY|w?Q-pYN3r&qV=$l|9p`hsR{PR%llFn* zRqaK`YhaJ|n&S=dCU^^Ufw#ds;6v?s$KSzT@DbPtJ_Y;1XW(=2h4y@4lCmW*Sy>;L zq9g^nv`+$4`JSd+5tz>R96smrTOObD`K^HOh5S~;_i5UJz}L0gf<|e3g6>hwLI0sW z5p=KGKj=PnaM1nA#-In3h@f99DM1f%{~_?O?lm=`A+eeVt=g;%)IL_4z@^&F%4OP> z%H`Ux)e7wmb*y%|I!${^ouPfM&g64F*9Oq2ou@WwKUcrdK2^Wcx=pp(`=%!CZ>FtE zHk$Pd)5FApI9I#Me3f4UDADS0 zAk<7z0@Z2EbtLW@_kO( zUNiqx`+{_iIG4lCgxmJ~9zxAc^nv@g_3?Jw$RXqckC4lU0?%PY|Gt!asNm{j-a zv|ORR3O&z3&uf-s?Xcw?@UC{)#xu5c;2iL^cGzC69ftq!!2frYXmWT7IzOb89@^?? zWu3N{n*0`eUm@i$Nclr(e#L&f5^R54d(+WRiE$)pUsHxe$`D2w!l2*k$Wl@%Lkbp* zNqd=8uT|=`W2Af+DgFui$E#J^0ks;8)^1l1Xz!|Dg0HlX$?a=$dz;*DCbt{O?QQ$* z+NH zu1i2Ozq!Fuune?-<)9U`QI-{8C1~e+2k4}%tGKR)H*3JzU@ch3y>rNWJ)bv#jbIbl z47PxC!Fk|(Z~@q=?NxpPupa5PHS7bEaxwaIiT0toS39hJtnE=hK^jLP6d51Gj@+;1}Qy@Jnzf@Ba!I`u2et{+c_rPb|^kciMi-6W}RrACh*!@*JO^ z2QPpZ0cU|(y3oh>v^|!Ov^OpLwY}DK?GtMT$kN`j9?|yLmZ6_5U^!?7?cg?WJJItKbdrCU^^Ufw#ds;9Wrd+202r zg1>{k;3I&n+V_D^!G3MO{d4dIH~_u`Ux9<*5cnD#2H${h!4cpA-QXxV2E0JSYEXa* zOdtT5fdyD;8*RW293TXQf-n$HUlai%K@>nf9WfwI+vjkC1kev8fn@DlTE%@17f1zZ zAQNPP98drXK{4pB9d(qFP8lc%6`&Ff1cSg}Fa!(*!$1uf4n}}c;0!DnI03@{VS0%wBRU=ElI7J!AI9xMV4pb<2I#b60&25ztvECVfI zIcNoEgSB8CpzUyM09(Mh;5=|XxBzSg^!bj9z&3EP_Lk!ka4EP9(5^VH09S&mz}4Vd zfL=Jz3kQ1PKrbBV1=iwQ4)nr-UO3PT$Ik(};XpSW=!OH`aG)Cwbi;veIM59Ty5T@K z9O#Av-Eg2A4s^qTZaB~l2fE>S0Q?#}2+$J;dg4G&9O#JyJ#qXe_$_!0Jg)6^{0=+; zeh;1mPk}#xKY~AjXTYDqv*0h_ui!cGJa_@T2wnm&gWcd2@GADtYhVw(>>J=s@D}I- zZ-aNhdy2{NKKPJ6{O@2d_z3I+pMw41Gw?b10vyynbQ}U-gTvq(@U8YCmhLBk`?SM> zpMw41Gw?Y$r0og(8XN}SfN#MOZEv6lbc3Vdn6@{Fwg4Z7^w>sEsOde0uVt4OT-OXF z9xu{B?REN0v5og*$9#hQBG$#%^aJl;UA*P9F21H+dk>xZm^Y81KS!}mOxS<}wTF50 zTYAxFv7BGUa()$iFvMpqe~q=APimKu(i`Oa5O!97TAYJeJ_E5;g0XgjuyzWtc19!R zpCYZ#VnM%zt!QF2Jdkrmo3y`TEtg@lmtwP*Vza-GmE56D^1g?4+@D-s+Jx{)f{cRPFXY8@1|}t)YS=f zj1!v~CpI%iY-Wtu%owqmF=8`g#Ae2b+ZiKnr}w&v-s>iMubb$-Zld?PiQelb#)#V) zBW`DmxScWLcE*L<85eG6T)3Ta;daJ_+x61hDWxtgr z-uGaeK9BYO8f84udVd{Bdj1Dm@9$x~zejwJzSjGH*K&`de*dhGdJLHt za3p@0*wpF*tf^*38}~8_dRTi0diOx@mpc zn|%`9cyJzrGmjxXuOdDBlsr5+`P!XI0b_cJw=02ozayLzx) zJ=m@uY*!Dqs|VZFgYD|UcJ*MpdazeL*sC6FRS&kQ2Ya&{d$U{FrX9h?JgS!KL7+zaqdFXnMpve2`zY~i)YKQ~&6n7r-FS}fG|kmsHZ_7~KDTgP0Vh_1v%y-h z9&FK$Vtab9IgeszdayG+*qKMM6+PxFw2$H1>%ukcMh`l604Y9z-RQw4?8YYaU=w=q zKJCW)v>Wf!ZoE&s@jmUw`?MSH({8*^yYW8l#_O~juhVY4PP_3s?Z)f08?V!DyiU9E zI_<{mv>UI}ZoE#r@jC6s>$DrM({8*@yYV{h#_O~juhVWkM!WIK{0gtkuk53>Zu=Ne z3&w)+pbks`6Tu`fS$hm^dkk%R3~hT1ZF>xDdkk%R3~hTAZF?1M+lRL8L)-SDZTrx+ zeQ4W0`#QWe=YaLvooL;iXx*J?-JNLNooL;iXx*J?-JNLNo%SoVm+e=AtH4jeHQ-us zo#w&b^k8p#us1!}n;z^Z+fsdJ=mKb>`f2$rU!e|gMH?~KJ#Fod9cqs*k>N>GY|He2OG?T z4d%fH^I(H{u)#doU>p(w8_a_Z=Apmv&|i44!93Vt9&9iVHkbz+%tIgI!3OhS zgL$yQJlJ3!Y%mWtmKpd9cAe*kB%PFb_7E2OG?T4d%fH^I(H{u)#do zU>p(w8_a_Z=D`N@V1s$E!93Vt9&9iVHkbz+%!3W)!7lP(7kRLYJlI7Z>>>|# zkq5iTgI(moF7jX(d9aH-j>olb?22yeif-(RZtRL~?22yeif-(RZtRL~?22yeif-(R zZtRL~?22yeif-(RZtRL~?22yeif-(RZtRL~?22y3d)g7l``{pb>LKtoI1Ii4-)cv( z1w6FSpVQBG)6aL)&v(<$chk>zYZK$IO^l^BqN~;DYAQN9 zh;dT}>v~*f_@+g zxIm#chTd-sz26wTO?7yi>hLzz;ccqJ+f;|QsSa;b9p0uoyiIk~`8>Q$b$FZV@HXwl z+q4sJ(@wliJC)&J1Tbp)db~}$@HXwj+q4UB(=NPCyY$*0&$W){CV+`x5||98fT>^_ zm<~irW^$bc&IGfy>+v@2#M`tJZ_`eC>Zy2}WNmG)6uGqp^u`P5jTg`xFTj&jhve5O zD?vNoJGB+`%nR@$&Bco}7cbIWyhw9J`tTy{#EY~8FVYUYNIUQ%?ZAt)1257JyhuCn zBJIG7v;!~F4tjMry}FyZpY?c=w$Qt`G5@oU9)6lnihqL?Kdg?>&Q(Vuv7@-2!F4o# zRNr=577cH(*3f#+#QkA}f(^Lg6c<_ol4=B?U8=AUSfn=j;g5m(W^-)Xz>M(xzK z@Hsv|uU(HOUXLegr{yKk#T?gr*v=n;{hAxAV*y^M9eAPYusk+nd2Gh=*o@_|8Ovic zmd9o+kIh&fo3T7LV|i@G^4N^!u^G!_GnU6@ERW4t9-FZ|He-2g#`4&V<*^ydV>6b= zW-O1*SRR|PJT_x_Y{v4~jODQzuU8jduP(e^U3k5^@OpLO_3Faw)rHrq3$IrfUau~^ zUR`*-y6}2+;q~gm>(zzVs|&AJ7hbO}yk1>+y}Iyvb>a2u!t2$A*Q*P!R~KHdF1%h{ zc)hytdUfIT>cZ>Qh1aVKuU8jduP(e^U3k5^@OpLO_3Faw)rHrqOK-idr*%423-&Ya z?*zAiTfvWM(f)(y?*;dP`@uutVekm}4R{nhq1E-Yd{6QDPv9BwXYefe3wRz#tN0?< zzAfW!zP|!q1#f^i!RcDd_xbHZ@OQ8mAQyPF>hNgQ;nAwYqqXz67WGSQ7apx$c(ium z(b|PaYZo4^op`i%;?dfPM{6e@t(|zZcH+_6iAQTEt?>0dt+1+1#bTPOx5j3!7GTvT z>MgUKs{=?29m+Kf{E(JZWdtOEWo;1fOWF~>t+Gg%>t~O z1z0x=^wxcbR;Rb{v$#qtKbz|uFc&NU3&H7H{w4g@4BTKTSO!|aa?lFS25Z4OK-+*N zwE#{>%f^IB9HFT$_0U4+D-K2uLSPXx&l81`@v`6 zb8twjlO7&VQyreBIy_BvSfK7e59kI*!7u^TEbf{He% z_>z8PKa_}f|1zw$jaY1(@J$6`q3y&%+lhs?6ANu87TP8(v>UL_&ZQk%iDk9{YwRO=x-gR`5Ts2KP;^zEUf}8twJoV!H!HN1Z%6F5~gBZ?Zu*6g?_w-KKu$D z*n&m%Tk7X2_L7)b@e#<}TsVjY1GS6cLLgkY$7i=b0Vl466JNlI&*8)^l>7rqE+r1d z?{$PyzecHFqtqW#Y7aK}VQlb&lwM{F@1peAV1FN^T4+RAWHliC3aHcNS|$)K#2<}?HEd%L}|s> zyoZwBLn$9u5-HJxl;%@P^A)zz@2T6*sk67Kv$rWhI8=L}T4tdSGipeH>KmZ?Yp8w= zil2h2QYiSA+=r0+XXF|QpCib%NVjMg;j3Av{T`YAj1{FO?LPSUEx9&e(OpB%v+$!F zBG;e6$Ftz$!|?Gz__!R2a-1Mh_rlj(q3$WD`-4xSE{C_5LFJWD`8L#D2X*72ZluVy z_&kuRr=j#MERyT6NUlS=S{N7fN5ZBvE*OE7&8H_VLjJ#kzZ>B12Kc)H{%%0h=ELK& zk+g+K+9V`xE@Oa7db#10`mgjb*CBNa;r}{%kQyX!u21qFr4AzCMmpR`g&Sx1q^^Np zVmZA)EiHcut^Ppj`6>g6gVu!g$1*73NunAWNtN&F?;`vaO^t2leKx}Ncs zF^7H>?tKhb^c51+lgy((3m3ZK!d^=LEOpcmYCnOpH0tOe65{Ytmk4!%P!~;I6(J#^ zQ1c!$@|PkFm*IOZr@g4qUc{SvH>1@qMtgr`wE9u|fM@*o_%HZ!v^*vI3|3{}Ps~$dq#?PSfGidw+G`MR+E*v0CC{R=`}!6PGFT)iPy{TCS{AE0pup z!Ahe#L|LZ}4BR z@L8m)n5#%uDe07fa!>&(!9Xww33hdLog`d!;k)mG0Q1Bs<;!Z-Tc# z7kC@I1Kv|onDGMV?vWZo;2d9O_7y)v2i%4FUvlXT<@Dh0N5_s?ucvzF-!As!5OW?sv;K57a!As!5OW?sv;K57a!As!5OW?sv;K57a z!AszwPx0U-@Zcrz;3e=ds`oHT|ArCz2aM1UGeSQ^d+{ah#XIydpU`H!Mw{^}ZHBCG z+D&_Lh*9(*M$U&AF&}2ce25XVhY_=f5wnL8vxgD0hY_=f5wnL8vxgD0hY_=f5wM35 zu!nUR9{L&&eT|3FuZPjEhtZ6O(ToTGkO%*ehxvIAqZtpQ84sfw52G0mqZtpQ84sfw z52G0mqZtpQ84sfw52G0meT@fe^c$?vZ?HH&z~cM>i}NrR=V2_)!&sb$u{aN7aURCv zJdDM87>n~T7Uy9s&O`Jghp;#gVR0V9;yi@Kd59Llq^}}+lHT_PIPwJAZb#dL&~{lv zW~1Ks(oXKBo&1Xaq?dL(efnG@+8rsB+;TI(MlxQZy-+0Z@E4O9tWCY zL&KBM@FX-m2@Ov|!;{c(R)C>p$;vM&*G9@UhjP_ZuG~Hp-i-z)p}|RLa1t7vga#*} z!AWRv5*nO@1}CAxNoa5q8k~d%C!xVfj!Tprcu-AmQNkMk1z;hlr$<>ttn&uYNGTU{ zl_)sP{AQHeN~x`sT0NoER!VK9)K*GurPNkRZKc#!YAcA6TPd}bQd=ptl@ePiv6T{A zDKV!2fEWDlhfUDG3G1vY|DIBrF z5i1ZS9w}`mr8ZJJmz3OnYJVYb7AoPqS$V>n^LR6hHz)AsMBa4s=8`^d=26-t zN^2*D!6)f~jko&hK@bt*O0d%xfQ3MM{${R*L?j{+iAcn8+Jqh?A`yv5L?RNAh(shJ z5s64dBGQnE9)utfiAY2u5|M~RBq9-sNJJtMk%&YjA`yx3GmNtQg0gIYs@arfA!W(w zQ1XF4|CAL#y zJ0-SLVml?aQ(`+MmiU!+N^D1>f|00TBq|sgSmKkY5;)KV2Sf)%4%Q=491#Yjy(-{p z=zy%KErTO=IAVt*b~s{(BX&4qha+}4VuvGkIAVt*b~s{(BX&4qM=ElVib%LJ=D)22 zv!J*IibV%Hpm^dB(t#l-Nb&$`e<3NIPf8u6w3U=v`qX|Sv=-?)P<6ta^LaCyH>dFC zB;IV{&1HSw%%`-;l-5BCL$Np};Th;{$-mzsw_*A3qxb%Zw?3hN+UM(^j$+;am0qED zOz>x!p`u^^pilar^VBo!r&_F}_q_|PMvYRN$lpME!?F6>=U1=|_K}9<)=h5RjD%C@ z4fi{4(%Y;s(z}aR#Kg*&rL4dHv86f0_#z!GKZo&!6Mi@uUpUbOC*unz;|nL_3nw%= z(Ux>t$aEwmo$*CF5MO&j4zzDoleFVPR18b#urY;7f!|(PR18b#urY; z7f!|(PR18b#urY;7f!|(PR18b^za&51bGF4|jJ09#>iS5C3G+l4ME+6n!irAiI>M zMNoM}_C*kpO+?C~qR1kOtU>|n!oDNWDm&7JQc$2RcA-E!-KHc>CzCXtrVR~AXC{-( zOqzzKN$hz)lU79^{XahM`@CM)`(C}i*UY3dXU^RB_xJs6_qosQaF<_sw_WA#akcHe z!DxBNjUvv=x$Vo=XNk+&?M#xDHkOu+rDbDj*;raOw(3+dK`BqUKe)YWyvGUf8~80e z0Z#(ksd^fofoI`4cpltYyy^v*2$NtkOo11{TvVBhs%h{tyaK<6KftT-8o27j?tVK} z&48Kk2K*6b!EBfVbKy;B5UH+&Rlx!Br~~9t2gsuikVhRLk2*jeb$~o-q&#Y*JZiK& zYP39Rv^;9GJZiK&YP39Rv^;9GJZiK&YP3A+hEg7-9`lc@C#A~7pQ|U`7~4rvI!kp3 z)sx;2RZn`iRZpH&J-Oeit_Q5-I$Vw8^J*}s=!?5biMGw5O$!_`PM_lHF)fbR=7_D1 z*x`s9RDv>&`i|PiJ8Ci;95qX??q;=HkJ|m0qaG>FKMMZQ(Ju_wSwpw(zxkHczGd~_ zd`oF0-t!GL&U?8d|K52gocBAo*`EpfCZ+v-T&&iU7> zDEF(#J`k>U#08ERle6R1k zPJ)x+D{u;&3SWiO;A?O?d>zh!GvO>a8_t1mz`5{EI1j!B=ffDd04`LAy+M9_Bm5L@ zg0cR73)~8~!OvhE{2YD(zl2}G?QoY$;oYvixW`qH_o}nGp2V+j^y~9F(m5UJoNjb) z$LVbxuy5lT+v9)HykIPEMVZQ|IK=IXQJsPMwoe=j7BmIdx7>os(1N z>5Aoa#d5l0IbE@wu2@c2ET=1$ z(-q6d?LF(7o!=z3R}t>QGB4swEWF64t6EtW`@`tCp}< zEn%%%!dkV2wQ31#)e_dKC9D;jewTJ!0$U^W5r3DPm7=#1yw3>UX9Vvvg7?_VVN}O?qIOB8TjFZF}pA%=C zB+l4JobgQ+kTGJ6i^Uihh%t^3W1J$!I7N(csTgCQ$ko9pam6Tc#VB#$4q}Q@&M`_% zF-nXuN{lc{jBv6T;bbE*QXH_aIAE0gV-){CivJ(Q{|~ieZ5iJ^itir9caP$`NAcaG z`0i0gZ=}&1Y4k=Ky^-5SZ=}&HRar_`@QpNjBaL2Z-Oxy*H`3^hGkK(&W@!g~N?ooXAC_ei?`MOHJu9B~-ni!WO1`d=k}cPVFf*(_UmA_Uzx;1im3G?pd;d>WrH}tjRcSkV``4<{ zhvWIb|DV6)*lJy_!KUG*4#H9zUZi4iDwd$%rL3Wwes`Drhu^kTUT|sf`G4?<)jqN2 zpL`UVDm*G!9qtn}h3Q~TxLdF`{9@3| z5533NTT>UbY?%(=uDJ(0W z93E9Zb<2eEmtdN|y#lXodDhCOORapm)XJwHTKV*wA$NJa+v+CQX${@9<=LUVTQ&{d z9L}mZEIi)T`NzAe{`iWohR;`=24D01bojdGXTX`Bp9N>bIq(fQ7rqJS`TuXh`JRt~ z3p~FNF7o^*;jGG!!zW-Q92nMC9_;ZDkE39;=ZC_gEzedRVO7Zm9xsF+!_`~nSN&wm zvZ`x5zt;2Xwj`>q_xy$}&qj9%XGM2~Pg`}c8|)5yc>NiVd%|9@x7Yi?zOWzc?{A-l z1HidN5A=8t91MqSc`7;zMsIm9dgzw+=;u5?3=a4D^IN*2U-0~kaKx5BM*nk5fAmXR zve6^MVbL%9+fi_|_Z{PN$9jGo9PjlBK6j$$C&9@+_Z6QzWlMGRRQPIG9z8AmSoCY2 zpYHkBt&ljw^E0=sj-C}B8$AcU0q4Ru;XL>joDXB*0=N(^f{WqX@E!OrTms*N@580= z1Go$>hb!R9@aX6d!{+FZ!~3IG2ir$~66_hh#`A08x?tz%^}*iJ8$7?!dwv?68g=bg z^yct{=-99}dP}%8dTTf{dRuUGbljE+(VxRF!u_Ma3_lnBRd{&xcF*sCJK-+48}5O7 z;Xb(EYL5rN^*7OnynYxSfnUR;Fn&vGbOQVaehW{)lkgNg4bQ-{@Ekn9r6Kw|k1xPP zm;{qy3cLtY;U$;`FT*R|Kg+zYv0`Oy_|CA0w`>ZQQGgcK|6Z^>{9UlZ)#M4+GS!I~ zk~;nMGMEOIy;8*3$l6zlwo}#{thQ2ljrXmk8qL-SyytW8drvF0S(mw9CpztU#+4gc zI@(S>a@HMh?c%I1`?A%-N5d&r1)oj-z5(ZkkGbaOG5N}4EWCwY^S{cVCxxwbJg{8Hyv=)}u!qQq;S`SNWVQD=qt%s$xu(TF?MBHe9 zhnp&YuE+ihk9T>z5AKHtynYZCiLj2aa@rNrRTsjK;cEB^Tm#p_b#Oi05Ozclv8sF& zjD|zub6}s4C?6I5JbVGZ2v(a!UGpFP5*!I%hNIwUI0lY|a?+*KGxG0Jp**wSWlYuq*+gz^`u!(n)RevPnz|lSx=hvq*+gz^`u!( zn)RevPnz|lSx=hvq*+gz^`u!(n)RevPnz|lS(!gKIE{0?4#i7*K!!xVTCrou}w z4PJ&QZRC?ud{T-}+Q=tuB4o}bm6+c(}nBk!gX|^ZJRE%(Sg;u)IN*CJcLOWe(rwi?L zp`9+Y(}i}r&`uZH=|VeQXr~M9bfKLtw9|!ly3kG++UY_&U1+BZ?R24?F0|8ycDm3` z7gp1SSJd&BvGI}@O<;XpxR9mHWhn_(vW|tsSjcRekYE`fu#9G!(8DSgvW9BbkYx=^ zFnl2$*nr`)hpr7iiK$&!+J&V?HrU0eb{f@9Ml)|T{}jE^-+mgL9=$2}Wb~Gx!U%pK zE-Bp^J;4_1T#4+8YiF_ASu{I~HfOPxI<0gjnQb<@#+js@N!FRHbr$QLMaEf_{O(%c zTJBrQeaq+FYi23EtMMCFK*A^L!uh_z{!gsA!O>T;@J2^o6)yHo&r^gZiqPuY-t}#p z{qFaD+s2?}P#Km}hULC_9%WcT8J0VPxUtANiv^S+DF?`l|MTMhE^&Vs6-YU|`BY%J zGwgSU&zDaP)8#M0G=F;qUJI8~f_6&KZVY#&0?UWG_KOmvC_#!6q$oj(5~Pf8mJ+0l zan=}TDM5-7q*(cKR^H0{FK6Y;S^08SzMPdWXXVRT`EpjioRu$U<;z)lf|Vy&d4iQE zSb2h#Cs=ucl_ywvf|Vy&d4iQESb2h#Cs=ucl_ywvf|Vy&d4iQESb2h#Cs=ucl_ywv zf|Vy&c^fNlW94nEyp5H&vGO)n-p0z?Sa};O&#>|gE6=d<3@gvD@(e4_u<{Hm&#>|g zE6=d<3@gvD@(e4_u<{Hm&#>|gE6=d<3@gvD@(e4_u<{HmZ^DY*S$WeoEAMCJO{~0W ztCa_3th@qT@soKZjq0D_Hvq*1m$ZuVC#fSo;dr zzJj%{VC^ed`wG^+g0-(;?JHRO3f8`YwXb09D_Hvq*1m$ZCs})vwI^A7lC>vUdy=&$ zS$mSTCs})vwI^A7lC>vUdy=&$S$mSTCs})vwI^A7lC>vUdy=&$S$mSTr^L=(!ye|_ zZx9JIiv${3eo`c`f<e7bZ)1M}0LuU~6jPp`ew4htJA4u@0WuaQEd zNTKmVkwT+Lp;4sJC{kz?DKv@{8bu0?ABq$jMGB1{iWD08#CalxxB10a2cv~wc>Hk0 z@POA3!lPCvTkVXYJs8@9p*^!7Z;(8TxYdMm7_lWC77ZEN?LoVv{y!ZXeKNoM^d zv;Ix9{!Oz!jn1X%T$;wU(YR_e{{fBbGyAj6{%jgoP2;L*T(zjDAnGa5xZP=7H5QD= zg7H`|9t-Nki*@3~@mMe(3+lv+b>hYGSTG(7#$&;FEEtak%@!Wv0ywF z)QK1C#EawUVYS(PpB`4z!)kh1O%JQ-VKqIhriaz^u$mrL)5B`DiC(pdUiFAxHHcm{ zh+Z{_UNwkbb%$Ph8K;+VdKsseae5i2mvMR-rdSb2^-Vcn8wC#wSXbmn5Ji+p=TG-v)!>Vjg4t~wnOyRU^{v?6dPw_<7{lq zVq+E?v)Gu$#w<2wu`!E{S!~Q=V-_2;*qFt}EH-AbF^i2^Y|LU~78|qlte&3L)3bVd zR!`6B=~+EJtEXr6^sJtq)zhgicMJ*%f@_4KTsp4HQ{dU{q*&+6$}Jw2Vn4ib|0_Nv2zZ3I2Fu%C1*4c^Sofw|q#_(PYFJgER!}A!P$M8ITE5-16 z8rM&U-lRjD|63he6y`B?6Q<@dHIJ!zOwD6z9#iv}n#a^Ursgp1l^EMj626N{Kw#Ka;d7BR7iiA78-Vqy^!i*&c&N}LkgR*8>G3|l)GCl81Z zHw}799cr0kJqEqBt?pgAo?$J0?6sCD$^Yt%lqtQ!=RUFQd8UN`@7gi`(J8gf3A(?tULOGt7rbYv&eMbU^;Iwds~Hn z+2A>s>R|E@Hqy>U{!$BLA05=W1KyNzH2<9?&YAnPSi488-6PiS5o`B|wR^=Jr1qJu~nXztfXmBe>dS+snS%^+O%I&y0RwcS1j-={(NOk$y&PUZcpj#?XA4R z7}SYLlCJHl7s)m_LZcjQl{I!L8SQG{xYqtV@3E%$<#Vmj=I`s}bZO5s@-{guRZq#& zp3tjVFIRg)uV#JONp@R3RVC*%I5!yPTjSJzv2T6_dlysq#T0%q8@e2W7h~{Z3|>sJ z7gOxT6ninnUQDqUQ|!eQdojgcOtBYJ>?8&!F*u3ANeoV6a1w))7@Wl5BnBrjIEleY z3{GNj5`&W%oW$TH1}8B%iNQ$>PGWEpgOeDX#NZ?bCo#By!37L1U~mD03m9C$-~t90 zFt}j;H=F;>=6|#K-)#OjoBz$`f3x}DZ2mW!|IOxqv-#g_{x_Td&E|iz`QL2*H=F;> z=6|#K-)#OjoBz$`f3x}D%p>%OO~!~#dh{tiuTOEB*rZ2n(xXptoY>@Su}P2EWDKsn zN{22NoAiiHdc-EDicQWCoBV($XyOT)c!DOLpou4F;t85~f+n7zi6>~{37U9) zCurgcns|aHo}h^*XyOT)c!DO@nqsXf)|z6iDb|`|ttr-;Vy!9GnqsXf)|z6iDb|`| zttr-;Vy!9GnqsXf)|z6iDb|`|ttr-;Vy&h8>Or0VB<)^{=WVPsOMPY1IK2X=U&iAG zt3aEqp*qQ$sZ&%Cx9)XY+AS+-9CovwV1=l>9#gmKaEo_8%SL*zxrYv~!{`h~XD~T~ z$#xsJpUW30{au|{>8g`IYjTDrucOK9usVa)8LZA=bOxg{ z7@fiB3`S=#I)l*}jLu+m2BR|=ox$h~MyD}4jnQe0PGfW$qth6j#^^Lgr!hK>(P@lM zV{{s$(-@t`=rl&BF*=RWX^c)|bQ+`67@fxGG)AW}I{hzd@;aKl&MfzsxyLN`nB^X`++&t|%yN%e?lH?fX1T{K_n74#v)p5rd(3i=S?)2*J!ZKl zcyiEF)|sKCojB@6h^~>LZ12;cUK&)YD8GpTPnxwgW^Jt*OPjG$rRo_PRO&9J&D?v~ zQHm~;X0Wt!Zv~db{!&do&P<&Er-VPDM+@oELbF$kC$(5~A5DLVrawfVn&?xSKD}us z(`GVlCevmzZ6?!ZGHoW)W-@Ii(`GVlCevmzZ6?!ZGHoW)X7bZMJ+w5gXi_0pzZ+SE&%dTCQHZR({>y|k&9 zHuch`UfR@4n|f(eFKz0jO}(_Kmp1j%l>g1{O&;6w*p|n(JhtVrEst$^Y|CR?9^3NR zmdCa{w&k%ck8OEu%VS#}+w$0!$F@AS<*_Y~ZFy|V)0BmSKJ)`@TZ?U_er6Arl_G); zEL)3ZMJ(&Wu4b(2!KfZ=N@7!K_2YP~DXlGuW6g4GDP`q$U&i51M{C2~Zb!^gnaPf{ z(UH2TOb5zG3-bRy0+F_Y!7**1RHc)ubW)XWTH-2?8e1zkzNN?v8S~W z8!!h2qgJx^Qk36ovUj714d$iRSvMq0a3%bEOWqUl=`y+ zEOUTm4zSDtmN~#O2Uz9+%N$^t11xiZWeymP0i!WsGzN^ufYBH*8UsdSz-SB@jRB)E zU^E7d#(>cnFd73!W58$(7>xm=F<>+XjK+Y`7%&b|8-uir=`aquga31 zFI;NFsjYk})yaG5UKduDs`eiYa>w4!f5V%#!5K#Df6ASL(JC0Ng3&4%t%A`i7_EZQ zDj2PT(JC0Ng3&4%t%A`i7_EZQDj2PT(JC0Ng3&4%t%A`i7_EZQDj2PT(JJ6hKkoG7 zPCxGS<4!;B^y5xH?)2l1N?~x05#85_jxwVA8qv=i(Q}OG9Y*vFBYLGMp(UC4X(nUwQ=tvhG>7pZDbfk-pbkUJ6I?_c)y68w3 z9qFPYU38?&n#NKuw4T=~bvjD1_tu!A%j|qOo_K$7R*sXgo&cvHYgtg6zr`S)~&{uLEoONH06k}NC9vXU$-$+D6xE6K8wEGx;fk}NC9vXU$-$+D6x zE6K8wEGx;fk}NC9vXU$-$+D6xE6K8wEGx;H(>imMq~cBP#`(Z z`s8Atoa=k%iU;48*T3!iOV^G+=lkFB{j+@kTeNeoIB>BzaIvG6szO<{oNVymAjj$k zebr(-t7r2|#0;g{XP-)ht}H{)Cl&eh;t4bIizTn*0E z;9L#P)!#27=^{%Jh_0+qbde>9$dg@&-gYDDn>65|ssjl~_uJ_4c z`(&_vs_T7vJ$*9RKE0kky`DZb%|01ypA5E7ucvQox6q>S_Q_!T@P7^dufhK{_`e4K*Wmve z{9l9rYw&*!{;$FRHTb^<|JUIE8vI{_|7-An4gRme|26o(2LIRK{~G*Xga2#re}gNa zOVyet^(9?8ob1QNQU+UEP27c#J^0vzkEJV6=HufMe0&QZOV`$PVL~?^4&dQdyLjJ` zRyk6aBW+|CMeHtJRkVCtd|FzY9RJV});Pk(;MakD3W6;j+id{_81?B;X3d)&i$T4P#fpXRc?yxtr3!RUQG z?g#tJu|DhZ02pb1ksZ7tO+|@hf3n8wSwhUH!-WZ1EV&!sOgL3gr`Fcp} z^=CY0p&fGJTjd=dJ0TAR{eL@Cm3OJ=Zh&s@-{^IZ8m;R`%Edh8y=rxvq0jUFFk3$0 z@lW9Tk@C;DYTtDOtk7tH;L(cNvv*8^3Hh)8HxKnpFANE&#KJ2Kt7`_eeH&BV)l^9v6l36(& zX22YeJZV?7@S52_+8avjKf?&pwk zXDO>KtBTMC8?0A-T>kTp7<_@pnEJ{>aIcH#Qm^CiE>uGes9r}C9_8iHWLQ6Ju8!!N zuv8`Hv)FW{8y>!nO_Q)`IW~P4n;tIPdCSda{R?FWZ<$$kNU)1p{sxvGZ)NvbE4y#Q z^6wetLyY1{L%z1ky)DGb*&hD+U zon2SFzg4EA!inW?;M$w!s4TqGx6knn{l1~h7>YBFZ~U5$tyLO+chWbP z_S;PjvCEa;zuxcfbp~slL5DNQ4gQ8aSflCJXZ4sUd%xZkkI(Vld)m&{kMqb>FuPWBu4R{O<#Aw0)?)tawr z^Ys%~)C_k;&Bt6(^9fhfe9Ui}=lA@~@7ZJyoBWpN{FbGD%Q-_H4k}7(?uI-TZ0Gl! z>Gxb|K3AL1pPA1aF#0_6`5k9^gfl$|d(U*X=Q-Qw{odQn=QMNqR5TfEXCAM|IJ=oR z^P8Rdo6dZmGrz-GuXWZBIP2pb@oT{(@AzG?5qkLBUibdn41WsWqIiwwZBALG-!sg$ zgxl+-42K=$lsl^B?WCUgQTQ0_EVuu-8u=&8?|*pxNf=>W@-FZx&v%7SgPq=}UxDg% zQ@sM!D^R=w#Vb&|0<|kpyBxLargjBq*+!o`jq7|7?IIEFBC+SYV$XMt?{a!wy5_J{ zN31iWJ>|2*-{DVB`8-|z1rSq-S{S}szR2_HaC&*2%D_sm8^gx(HD14ubFI(@>%o;@ z)UrS=3)HeeDGQXcKq(89vYR@#QN#izEKtJ7DPe&U7N}r>3T~i)-4w7eWC#q!)9tLY zuJE^L_&5bDae1k^UyjRhO4v^c3po87N?5>!21;1Khdd?hri9&iv5^vXTd$J9jb*rA zPZcv%v3scbqKws)v6?bgrg+E6)yRQ^{AUvy)%mT$MP|E`D=J0j{-gZ;UepkDO zm^W0V_#>FO119e1I-UK)DXi^P{=U>tT4mNZn(>WhIyU6EV0$C>t}9Jfxzco1g}cBx z;}4wi^5}?gi8Fq4(4MOtc{xsh;HWDcHS4I$ajlbWMcLNwKG7C@hGoQj{}S))^v+)I zEHQnucdo<8(*5E7cKz`iY6fqDbHTKASk{UGS+l;%tiNa08_o74GhJ_%+nsA^X8*cY z`Fr78X7CN?TyO?O=iB8P+pU_}wg53t+;mOH?5 z2UzWZnB`tpJHToO#44Lv?f}aja8|!zy#uUwV9d(I7ClsCL8Z+MmUcC*~OSnge{w!mudDqn0Imq0D7^tVP(z-;+>zTrOrm&tVtY=Dep6#ZY4(R_`=8J7Qy-e) zjUSrfDSw&a((I}On%%9}4IXJmzpVFul*gkzp2FK~_2;G8oo06bXm6)TaWwecz)w8T>)>JK9SR-3l!>Ve{M>SvgzBA0Rnp$U>=kMNk zhHcL9J!jZFXesHix$<)&#P>wh?%rl>R~g$?#&(slU4`lOm|j1~^g1zIQhjh=XS~)K z*Er*}h@#CIw>jh2o$Xv_n=yu^v&=Zl4riHkmNm}ub!Yjyv#fEJHO_LWvwU41Ga!!{ zaJFsEcAc|b>TH)f+csyIHfH_KZmF|d>g<*}yQR)}s4{jk8O$wT!rKM||Ho z{FO5(-EH$htO%O_m)OPo*)uD7<;~8SBjJPo~R zhMQSQhLwE4I^OmDD_BSAI>Cj0{{kMk)Xk02=opQT8IKnnsl=gDowm;C&ZEtNAHrx2jW-TAEl=uIM9cNfdhNXPKQhLqnR$k0vzl+%K zA|vxp`N1|9vByP!&y%v_g9@vEE8!#XDcBW04fM-huC5LCfqm6X_k;aib^Y1!(O{(e zUEJkr?7P(#@3q(SQtz$N6}OvlkPLsTJJh5eG)paLj#^ML==cABa+O7B%p&0tRQvX_ zD*Cv+ySojCJy_5_;j_l~ZDV?XF&$}44=|=9jo)F$@36A#tgX0NbaM;Ex>GK5m$808 z%(mWf((cxLY!mIh#Yx&kA_|_v-hJLIv^kY8uh;mogl_$L~ z7fv&;(9PAl)>VcbiAI!>dG(?mkg;$?ow$#U(lz^P%ic|X9se|o4LbcU|+ z`UBW3=lE){oBOBlSMha^X9NdVoagadUSHtxLa(p%o*%+h@FTF|xx#Aa3agzfe(ODd zy-)gX6@R`@`g87U{(}Fva@+kVsw*bL6nGJ)!gQbe>;2Qua{u(*K6L-|v)ns`mBW3`<6&@yYwga2(lvKy!#Qv+d=t)tZ^8LtUF8_C61~z& z^va9iV)!mX=z-!Yzn_aOkh*z|D z-D*GU1B1IO4+o=@T%00;W&E^a+?g0n;a7`UFg$fRQa2*@BUIjLc(X z9wYM@na9XHM$W{@nHV_}BWGgdOpM$GBWGgdOpKg~kux!JCPvQ0$o(qsF59c}p0eF4 z@3pV?eZlS+Il|TLGcj@|M!tbD*F|>=ZpD}#qo477&)`?ly*%IF^UwPG0iGY|`9c0} zw@7SBV@n!a(%6zV`&qMJF#AuK{Z9^iwQSE}uLYM3dp+DVY!62E@bC#9KEcB$c=!YlpWxvWAM)^xJba@OxC-wd!}~Ej z{9GQsew&9+@bGaS{v;m$2_Ake4?mZOf0KtV@bC#EwvdNk#KVtfFTdj96Cd*MFZ1wE z|2H1~_dNV^9=?T#&-3sT%kKB+3R+%1!OJ)D^0)Bv310pdUcSh~CwTY-4}Xgp8pFdU zBHxG0JipxgOLr~U>ftZv;cw#M6FmIdZ5}?c&BOn2n};9G!;j|Sui@dZ;o(Q~@I@Xz z!Nb4I!@tbK&*tH0^YAb8@K5vbPxJ7v@bItj@K5vbi+K1151-)S6Wcue&OCgahfnbE z2_8Q2FL?L_51-)S6Fhu^hfnbE2_8Q2-+1^051-)S6Fhu^hfnbE2_8Q2Z}#vB9zMat zCwTY-51-)S6Fhu^hfnbE2_8Pd!zXz71P`C!;S)T3f`?D=@ChD1!NVtb_yiB1;NcTI ze1eBh@bC#9KEcB$c=!YlpWxvWJiMJXf~RQQYg>2M2yUix_weuu9=@H2Pw?=Gf6>D? z^6-s3d?OFv$ip}C@QpltBM;xm!#DEqjXZoK58uecH}dd}JbWV$-^jx^^6-s3d?OFv z$ip}C@Qu{qDtdYqJ$;OxK1NR;qoBjj_v`e36Gw*!R|+R(5+E?V7TCg1G8U>FNS8k2Mi9Ri^KhRc(~_y)K(d$hHrl7K!p$ zP-fS)!>sN5c*SAi?G=ZIkGqobc2_bkb0y<4S2Eu2O2*q=$+)cI3^>#Cv*2tv2fhL4 z!Z+bO|NkvG-}5nWf#(;(MV@~z{A$I^!9^8Iga4?A2cM~^4X&za3_eXvYk2E-JE>RZgYFvU2i|T>wVn( zd|WSNgv!%?=IH?Q^aVTYeac*oGgn`9pPUWmX)p6s7wjH#%6o%6?iD(Re)&N=CP-J`)LejY4SRjVGnYG{EqDNBr2-kOxswRRaJR%>1tIO~wrRfY;>w?fOMK%FzVU6}__l9+yYf-j1fCF{ zQ9d~+cRk1u7;5!Fg>R~akHE*wm-Q)Pt-M$(FV@Nj`(xI~pei`X{2dI3!02$IJEXeb z6&wbK!{^}(;S0eR;RyIotGT}9Z%2al&-Qoi46J{)ziX%cT|4dX+G&5+PW!ud+TXR) z{;r+&ckQ&lYp4BPJMHhf82r?XX}a2BXY+uya*{;r+&ckK+m z3FpDL;CvVZ7r=$~B)`brRxdZYKZL8`NAP3kb~XG2uJQUh=Y74$8&rpGgrCAqFxD|{ zF-y0?ZSXU2rCs1kJA1*l2fu`0!R>H|jOW|B zsTi(QF)g?(PvUbnPeV4lU9DTOvlz=ngF@+Yk0v z7yYcq17M`%9q4@rd490U*GXHBExT6l_By@W>vg7Xux9W^-~CgaqMP(PZc(YcH~fRR zIbW9XxvVN#QEgR+q0D}^V(5J2tDq|$IbWshVvm;vWsz&$!PVSFus(7Nn4^d}a{ro^ z$nD|m$Q|x2r}7rL$Loh=M8Ed@3D2Lk)8upTJp2w^K^>V0u1AbahAHqOxJoqQD$&Rc zG4$`Ob$TIOX?5Ym@<~<@Ob(ZoPYqwNs`Ujc4JVer01n25 zjo0tnm!=ikU_GQAFXPd5vE`*bYg~7u)3rp;a*3Yh5~~d+isSR*_<}gTpc30zzR~L* z)!7eVllSz7Z;R*O*2i3;Zu%p=%q4o6OT_mXU9crqB+RC(Ija&T>T50;G6aU|8*K*_ z{uT{?G-Q~+ovhmT6*v`6^ZIl+1J3fEv*8=SmWKQ${KL?F!-7QQ zYePqRJdh$C6#jAO!QmZ44{_(Ux7=Cm?ZLZ?9bpgSPJ0-4+QYch9>$$RUGE{saAkV% z$)W4$W;%SqU2&^bl^0mqFj4N2w_}Osq%8Fyqqd8 zr^?HzrdK>sHooG?vX|9mCRaRN_C&=qWiM5@Cv?Sg!Lur-d3jY{UX_gg*c~xFs zl^=}Qru+O1pP%XTZv@lSZzfmFa*WxIF~{?{j`OC+x4iFd?|aAl=6l})e~WqFLhoDT zd2R3`b({qiO=XiS)|9=ejx$Fc=Z%W@%BEJVE1Rv3^M)$wkJWN!SG0!@@KO&{bXc7- zTpfnrk#FVYTY33bUcQx=Z{_7%dHGge1bL)ynHJ! z-^$Ck^75^`d@EnMH|zuZ!hT?dnS3iR-^y2x41QgCVA+k82bJAld2n!N=ROS6;m6Z?pzX#!=V3>O^{-Kf$RsI&9fG6Q8cp9F8XW=<`9)1Te zz{Frr_iO({=^tI16UO9C$mNSosdj zhXo*hu|j%c-0X)~a*in{Xa{3(kizZ~ErGA1;L-z-4eb zTme_Y58*2K5r})L#64EKPprBI_)n|dCtB@3(Q5aJR(VZy_vDFHH_5$k_Bhu0@vH8j zyu|vICGMiU#63Fes($J5S8zMr0e8aPaF6?Z>abPa2ls<&pX^|UJ>zHCGk%6W<7e12 zenyoVmp$X#?HS*0&-iwG#<$xuzTKYj?e>gsw`Y92J>%P}o&~$fRoP9h%5HL1c9W~J zn_QLM?5OB&W#_0ZpA+4~HCmr3J2tv! z*_rCgXGHC(9^EIn)P6wO=ziY2zxRIDdk^s5k^cWc?>)$S5BB_!@P+6o7!8NQ=io3n z96k?Xc-Nu55Ea9_4($ckp}i12621&a!O?IG91F+6@o)m12q(eG@D(^EeASfPm)Jqo>2y;S4wv&a#`}*y!M!yf2!VlmwxE!v4E5l_f2Oo8{#Ig_VMYJq>t=HFC4|9DOx>{nH>)$@= z`nPYp{_T^lmRRO$iB+za*yuXAom~faKy;kn^mF)y&do33S8zLs_gytn9lZmPFr$YN&w~IG6BP=l>h6 zzG-(HF{#>CUTrI{wv~@=3@1i=-~$k!xdZn^ci^s$_JPj1J8)OK19$bXhr@-#UJ0fQ z`$ME+*sGC`>Su(*UJqi!rk7Q!afRwzc`H3>BP^t}WFYDi->_Pc!M*fmF8M$jl?wXOiX7mZh$*}LU5+JKj zkkuy`r%&*_KEYLT(yW{`D<{p$Nwad&tei9}C(X)9vvSg`oHQ#Z&B{r$a?-4vG%F{~ z%1N_w(yW{`D<{p$Nwad&tei9}C(X)9vvSg`oHQ#Z&B{r$a?-4vG%F{~%1N_w%B-BS zMNZiwr)-f^w#X@4cMpR;j8k((*BnjIbcSQqjs?F64A>T>gs|j`P%mGR6ZO^D@ymUHfJBJ zKK8c<{+Hc<`e?W?e98)jr{rqW^*1{8Hahe+rs`|t1$-=Wi9fu7CZ3|i`*HuMIH@j$-%O6u&f*`D+kNU z!Lo9&tQ;&W2g}OAvU0Gj9IQnS)*}DP$iFh>lU-XjFB~V&%IJrTQxUmOKV+O04^Qid zJgpxxT|Z>He#q1EuhJ@(DRQVOa;P`tP;bberpTY>$)D!Qo#x4%=E;@j$&uQIoE&E4 zKp8nuMt;+x!t$UB%Y*WmtUM;GCeJ7g;*7XBBQDN}i!F3yOHGveZmxHuy&&WMXM;^K_B zI3q63h>J7g;*7XBqYshMf5_-NWb_>};^2%pIHT_{PPcHJ%F;O9!g0EV<8%wh=@yRD zEgYv?IL^v~tiD55-yy5-kkxm{>N{lh9kTikS$&7BzC%{uA*=6@)pyA1J7o18vic5L zeTS^RLss7*tM8E2cgX5HWc3}!={t;s@S6od6mAyRr(HB={sDd?{JmA!&NF`i&VrGsfaDog}h3y;VQib_eu6$ zc_=^;x?lrz!$#7dM6=P<_m{~DqR*abyV`jxOE#jFL@l1<&rbRr{BA#iX zR=bI3TEsIg;+YolOpAD?MLg3Yo@o)!w1{U~#4|18nHKR(i+H9*JkuhcX%Ww~h-X^F zGcDqo7V%7rc&0@>(;}W}5zn-UXIjKFE#jFL@l1<&rbRr{BA#gx&$Q^LOxI7DuAdUu zPl@ZN#Pw6+`YCb!l(>FMTt8)&6%(_pn3!e7#4IZ&W?3;Y%ZiCvR!q#YVq%sR6SJ!F zP=F$I!G>@af1csb|KHs!b(Z7Lb~V8qm?byLyOp4vGTwOLg2H>zZF zDP)_9RhA;YsLLCpV%?PIF}2tt<>*#TDcxOt3bmL*CA$CHj_LQT2mL>-efl@9Z<3YE zinnzk4++NWKu(qoZ^!EIP*1MiT2BrRvkKzNRzZBxDu}yfwp-WbJStN9AFh`%3tt`V zg#Dpxw3QA=iVSWO8SG@G!|tW-*Z=D56t>My&;O5SC!(ji{vs3s7 zJ<6)V+1V+$!gXO+TIGAA^^G@+4D5l(CYB7jE_`d~&f!~C{|R4$BjL+%6dVo5z_Da6j=iYSBPY%AZ^`{s8wDqRwO_$wt&rJh2pL+9oH(&F})nljMdd)AVJaY9fXFojc zo~DN{eR$d`P!iC;Z2@5$iFL!Uh6$w!`C@?`#*aZgn~wf^aypFZoEaZgWpI`vHDGeaoSeAx#Dgb(W#YM$PMSD# z;?)yxd$DHXLld8#IA!9@DZ#|p#I+N9Cw+9%9+M83^u@`GCY?0tyh)c%x^B_~lb)P3 zby93n&7{UjEt3W&e`NBmlMkJI%;eK2e{b?_lkc1S$mAy{7bj1h{Kv_QCMPGic-}W9 znDWsn+~dVVUp(f;(_g&o#Rp!T z@?wpDO;aONclGapsfSHHf9klYk4&95b@tTQ)b^9c489h*J#tTQ zM&zN$L&3R`U%RK-HzVUCg~-OpreJbpbEH3bDe|ZCeS=rZ&o2K)&{+Ph@(Y61 z8tOs7Gn z(;(Ankm)qYbQ)wj4Z3v0b?Jud(xr6iQo3|0UAmYqT}+oQrb`#orHkp(#dPTw>(VXO zrCY2^SEEZ8)1`~ah?-?Y%`&298Bw#0s98qTEF)@`5jD$*nq@@IGNNV~QL~JwSw_?> zBWjirHOq*aWkk&~qGlOUvy7-&M${}LYL*c-%ZQp~M9ngyW*JeljHp>g)GQ-vmJv1U z&=ur>Olze~t5K#E*P&afLsyh>C3NYUbmwBab1`v4B3Q2%p7uQBzCK$!b8(qi zgKpeTGO>gVtU=~grxVwy6IaxUE9%4*b>P-2Z`xX0iw z0WqDoqRv}U))v=!E9$%z#U>3pZ$+KAV%gSR0%AIEMIE=LvbeYDbfWC0!If$qgDchU zb#2OepUF73dxyy68f0-_m&G-(tzG5cr^@CUB4@$*!Eo7J!?tc)Ot)>ZZd)-jHe8_N zR+QPLWOgatwp!U;MdVI7{9WGjP`EnsYmbjw+x}$uj%=@4w%07%YnJUb%l4XOd(E=F zX4zh|Y_D0i*DTvh$@WqaJHV2Q`25EsWS^SO7!g^@(K zCQ=u!iX{EL9##hDMH+*EOnQYl9;>-{0Z?I(={6 zdy78Xbotm&`t zSOrn*d4~D_?OkUz+>Q(%v07pW-NzkWbG4JtepEL6F~`~2dp}_n#ecZB%O|}aVdslo zbOCpDP4uU&``^R0&U<(#AMlV zUCmheEASf3_kXcqI~jF@j%JgNW>fk5j@1hG&?sLI8OTCA*qOb&!(%7pq2L%rf9rw` zun~HE#|N;<|M&WBo1xG10r(Sa@qeNCI&eK%nY&L%T-|G&h8QQE%h-@%9#3|?^jF|i zIL+(R;S4y-|GN*Zu4QZpebKdCG1T?vLw65rhkhnpG;~j0#=Yzd^Ooz<-i8Iiu|s1z zk=35pz;dXC6|g33(53veE@f<}-CBocgFT1p*6LO!bt~8ER>oxi4MR71+#EJ+7leuJ z%EI_|k>Kp@$~_JVTelk;)@-Nas*73NZXfSaCD6%?Ra_Z1s1!7)6f~$5G^i9bs1!7) z6f~$5G^i9bs1!7)6f~$5G^i9bs1!8l;+<yKd;mo?fIebIXDci4up;c|GL6;ksr!>YAl=%~HB% zDP6Oau31XgETwCf(ltxznx%BjQo3d-U9*&~SxWtIKV7qwu31XgETwCf(ltv}(w9oR zr0SZbbj?z_W+`2>l&)E-@-vk8J?)eOu3HGDVIZNrBrF70xI%g@JvzX3VOy?}7 za~9J%i|L%jbk1TrXNz^t7VDfX);U{T`L2pXwZGSRzT9Iitbhd6K@#er0ak)L+~}Ug zbkAbCXEEKg*tYIjO!q9Ndlu6@i|L-lbkAbCXEEKgnC@9j_bjG+7SlajuCmdrveB%v z(X6u3tg_LpveB%v(X6u3tg_LpveB%v(X6u3tg_LpveB%v(X6u3tg_Kuxg~6_vj2t- zSwV-aphH&BA&XVn$DnF^7!DtS9pGcu@$C|PQpfC2HQQm8iza)ndA8FO8GV!CQE zUA365T1;0hrmGgyRg3AW#dOtTx@s|9wV1A2QCF>~t5(!iE9$Bhb=8WxYDHbOqOMv| zSFNb4R@7B1>ZOQz1-1}QsZMCl2YF)L}x@xO+)mH1Ot*&w}6P2ixN>oZE zDy0&YQi)2bM5R=s&Q^&^sYInzqEaeRDV3;{N>oZEDy0&YQi)2bM5R=sQYuj?m8g_T zR7xc(r4p4=iAt$NrBtF)Dp4twsFX@nN+l|#5|vVkN~uJpRH9NUQ7M(EluA@eB`T#7 zmC{*D>Z~Po){;7FNu9N%&RSAuEvd7X)LC1jvzF9ZOX{p8b=HzPYe}88q|RDWXDz9- zmeg5G>Z~Po){<3qI+96`?wq93l~CzQR5g0O$~DDSA*yz*Qteu$+O?|6-AYxvR;hM% zsCIRzc6F$Bb*OfAsCIRzc6F$Bb*OfAsCIRzc6F$Bb*OfAsCIRzc6I2^jnqwBq?@)# zH*Jw_+9KVwMY?H=bki2;rY+Jr32uh5a0}cDw}CFQZd#pgTAglMoo-rP^iH@7?uL8dUbqkL zhX=qqQ{A*W-LyL0v^w3iI^DFo=wsnKI%;tpwYZL2Tt_XgqZZdui|eSxb=2ZIYH=O4 zxQ<#}M=h?S7S~aW>!`(b)Z#j7aUHd|j#^wtEv};$*HMe>sKs^E;?Y@QgO1uxI%+%V zsO_Yqwo`Pz-8mM(qQN~)*6OGgb<~Q{W$-RkLk%p4T5$Ip-L<0bT9fYD7FEjzRm%od z%LY};235-j-L;tRT1rn?r?U5n|iC3V-5x@$?@wWRJ^a@d36qG68&hYkC6aNe-T zg3-g=Q$l64VVLTuu3D|GT5K5KGt8>1A>Xj>b5$?|hFU9FA@i$*kH9BnJ)iQpD|{OE zfIa!{BiEJlKm@W;s`8Iag-6KxR2dW;sV@SsNS$ zN5e62EF1^N!wGOAoCGJsSKt&l6}}3m!Pnq)_&S^cuHKee*2*kvWtO!v%UYRbt<17k zW?3t<^!X17M`%9q4@rd44clYwhQCUc0Mf*$pa)H`*!W zr?O#VteTiF8|xfyQE7MIGL^+uWp~?o;vPN7d!6fjvf8bE$Qs$}9NFulGS^vHC%UR^ zgY4{B*_WM2^(Bju(pA-VNRZinTV`7$v)w~xdy&kxMrK>O%DO1K-AQ&^6S>6mt?NnW z$Z+RITrVigjmvUp%W~tg+-0)dW!9C}$#fUUa(9*G&W+sdeUwVJ8_AiR@Pf9>#ddbE|c{xll3l=^}Z?VjYocO z{plaPepUATS~y4MJ6GoWj?8y~%y+)b_br+4Vwvx3nQyzycec#8L*`p8^Ia6N_A>Ie z*Y7xP%={?6>=X+Xw_I+7*t1)OZPU+w)5qB<*Sko(GPRW@6FYfLI zzOlQ$^S(UEFk^>KGJ$Yg5-x>M7|NvuhK5^0X&_5zO1L*mNg&)Wx?YRj$N>4l#$O!=g3ErjXjdhdf&(6umcNQ_UY5z z=XqYde%Q{)k}T=`Ki}Wy|3CjTs$>3^j`Y9tX z=Ay2-v~6vpqjSDS=X}k!|LSqAZPh{NbkK)%(BITS7j@7@9duC#J*tB~dCpE9y6pS;{{HUc0XkDV znCYhTy6I!*IM?f(2iY0n!T$XrI`D`3y`Ob|5A*fmzFz9Ty}-Y{(C^t7Rfm00hka0o zUD9C}b=X-Q_J|HUtHaLfu(LYsk`8;w{Pnc?>*;gOoULEdZBOX7Cv@8d-F88@UC?c( zJ2Xt_xC=V&f{weO<1U;NtCm_+iTiB(+EHD#wApnRblrz_-G_DE1zq<+UH3s zlFqxJ^DgMT59_=OI`5p$`y!opR_9&Nc^A&zZl9TZs2%>>&_+oYUeJY?bm1jkcu5yt z(1jOt;RRiIRu`Vtg=cl)ODXZH~vlC_^@vLm~Q--Zv0nt z;}6u0AJdH=(~Td~jUUsEAJdK7%{6n8Zak|SKcEvos1qO6iI3{Uv)he#y77{3JgXZo z>Bf)f#)oy|*XzcIb>k;=}Jw`oNJx)Dd{et>M zWnZx!>AqsF3S(XIjCI8`))miKS3F}~@r-rFGdrH9p01vuE>~A5`+r$iJY!w)jCI8` z))mj}c(!_u`uED7m^-dk&-4ASs%w1zYs!Aj))miKS3I-hh00Y7tt+0fu6Sn0Oa1%H z)UW&gI`toX|8n&kzJG&?Rb-VvwDlN11{rGVjN10Ly2)H zF%Bihp~N_p7>5$$P+}Zj<4mt7vJOw!QFLzjQD>JO%e-?(+4mK7XXcSi#C> zly+X}N>9&L7_svz_3zbl)z#{G>Q~h@>aCgG%*AfzVmEWKo4MG{T7g^>a%Um2_E)Fmk2bhZk%te;D z$TAlPn2RiPk!3Ej%te;D$TAmM<|4~nWSNUBbCG2(vdl%6xyUjXSu406ZQXB{xyUjX zS>__kTx6MxEOU`%F0#x;mbu6>7uhXyacrmVi@i9;UL0dDj_wKnXtEbg_M*vNG}((L zd+|%`#m})9zrL3>@kr+40nEiCnTw*c z7x%Ci_Zz(2nRLHwO~td6>nJi91qP$QU=$dP0)tUtFbWJtfx##+7zGBSz+e;@i~@sE zU@)=_MwY?IG8kC~BgojgQD88t3`T*$C@>fW2BW}W6b4;8n8hft7!PAHMp%py7Gs3P7-2C+ zSd0-CV}!*RVKGKnj1d-NgvBVb7)2JN$YK;(j3SFsWHEk?#VE2EMHZvTViZ}7B8yRE zF^Vikk;N#o7)2JN$YK;(j3SFsWHE{?Mv=uRvKU1cqsU?uS&Sl!QDiZSEJl&VD6$wu z7Nf{w6j_WSi&11TiY!Kv#TaEVMp=we7Gspf7-ca=S&UH@W0b`RSd38?W0b`hWidus zj8PV2l*JfjF-BR8Q5IvA#TaEVMp=x*EXF8{QDHGgS&UH@V~oWpu^1&5qr_sASd0>j zQDQMl))H5(C9V$E)Lo2+%*AR{Sd9v+QDHSItVV^^sIVFpR-?jdR9KA)t5IP!Dy&9@ z)u;^Gg=BD9eNU~ZRdrf9|DW;rcS8@fE*7(gE>RCs5BBpzeAO=w=@*9{=I4j2OVuOP z&-rhURF6`)I`n8?e_lOCJ=QLIk5i9Vzo6{h#hx5sPY$pr2iTJX?8yQ4w0*^^=RWSBk4vnP4>B+s7Y*^@kbl4noy>`9(I$+IVU_9V}qyX}D+OjH$E@U-m1$;Wnpv45rkRy#W@VaLnPyg| znU!f~Wtv%;W>%(|m1$;Wnpv45rkRy#W@VaLF%znIL}q20S(#>5 zrkRzPS-F~3xzwEfrL0PYRjIHl6;`Ffs^nOe9IKLJRVu8?VOFKWsvKcej<706Sd}BJ z$~3Do$*N4UDwC|rB&#yXs!V47v-*Jgp!!|)Ar|Aq%8GkdWtvrqG9P76KIZ$p?~izm z3%-_o<=a@55mu$lsvKig%B)JBRf$=ZfK{1fRgSVM0jpABRZ6T%hgC_}09II)9IKLJ zRRUHeU{!Lg$}p=^WL3tttV)$txo~q{|BO|svMR?|m1$O`!m3nQl?tnpo?&~GRjIHl zm9wl$g;lArDiu~G$Es9Vl`^Z6V^u1wN`+M!XH_b!N`+M^vnmxkX4CTl^m;*uqsDcm4sE9WmVGE+%v37#Hb{U$_%5@u@<1prsUX^(m>mP zceW{;GP`9{s#`WCVN({_l$Wz9RW{{fHsv}trOKvMwrt8SHl?~{QgTenVJ4-`q*R!c zLrhAANtt9)CYh9JCgmuTaz7^JFq6_@Ql_`Th^lu0IKl1V8sDWgnEg-J=*5R5Y^c_t;tq#R~a#+a0& zOiGbS$ulYATWbj7tu+J*lQPMql$ew@laeqg=~{vklQPbvl$n%gGbv>zrNX4-ww+l^ zaA?b<9Ai=nOv*TuGRdS=n3M{W@>(Y4y-dpISd`Y*+JbQwC16oTSd?)VCC{Q9Wl^SB zlxY^_{w&H>EXpE_Qesge7Nx|Z9NAiTaQilM6f8=GMai)!hgpC=~`}oIzRJ(*@t%IwKe_T&hAQejUH zvnLhyl3Q%Ntr##u_s5_lN@`JV^4DINtHd>!Jf3(lNNiD zSgTNFPiEPZ*>mo4-_j9#QejUj>`8j&b%i~tuqTysBKIpDu_qPwq{5!$*po7QQf5!e z>`7$JLYX}oXHUl2lL~t>!k&zP5`9e9c>sHoV^0pVCx_XS5_@u#J;`m^ zll0n5IrgNwwU*%sd-C$L)-nX_Ntr#VuqRdaq{W`(*prAoiP)2fJ&D+pXosCU*prAo ziP)2fJ&D+pXv>~N>`BC)MC?h#o`BC)MC?h#o`BC)L}%HPh&_qUvL_LH60s){dlIoH5qlD`C(&8`9e9sj??k_N2<5RN0d%ds1ajs_aRXJ*l!MRraLHo>bYBSF$I+z@9vwJ-L`Y z+0CB3jXk-TJ-L`Yxs*M*7khHCGo?E_T#3$^(j6vc2a{4|QmRZ!l}V{GDODz=%A{18 zlq!=_Wl|o)q*R%dDw9%WQmRZ!l}V{GDODz=%A{18lq!=_Wm2k4N|i~eGAUIirOKpK znUpG%Qe{%AOiGnWiJ6otlM*v2F_ThdQmRZ!l}V{GDJ>?Y#iX>DlopfHVp3X6N{dNp zF)1x3rNyM|Vp4W7DZ7}IT};X@CS@0svWrRidnRQUld_9R*~O&nVp4W7DZ7}IT};ZZ ztu-J;CZ))v6q%GFlTu_-icCt8NhvZZMJA=lq!gKyB9l_wGATtSrO2cdnUo@vQe;w! zOiGbSDKaTVCZ))v6q%IbmPsixDMcow$fOjvOiGbSDKaTVCZ))vRuYN{&f6%%tR)lpK?iV^VTVN{&g%F)2AFCC8-Xn3Noo zl4DYGOiFI&ch#Ktm}zHHa!g8&Ny#xOIVL5?q~w^C9Fvk`QgTd6j!7x+j5ns4l!Qr{ zW>Th^lxZeqnn{^vQl^=dX(nZwNttF+rkRv!CS{sQnPyU^nUrZJWtvHuW>R7%C1z4$ zCM9N4a!g9hq{K{0%%sFjO3b7@kx6+tlky}cW#^Vjx!=|rkn{>GsY!Vnlkx~_Kq^ei zXPJ~snUwo7DVH)S6(;2oOv*(}%Hx=n3X@V{QYuVJg-IzhDHSHA!lYD~lnRqlVNxng zN`*%U{Z2SN`*k5-nVNxngN`*N{LA+F)1Y`rNpF^n3NKelAdi{Vp6J1$~coU&ZGoP z$~2QQ&7@2-Dbq~KG?OyTq)am@5t9-zDG`$rF)1@l$_$e-!=%hGDKkvU43jd$q|7iW zGfc`1lQP4k{LmiuOv*HqGR>q+Gbz(d$~2QQ&7@2*DGy{)+DuBDNog}FZ6>A7q_mlo zHj~n3Qrb*Pn@MRiDQzaD&7`!Mls1#nW>VTrN}EY(GbtlX$_SG(!laBaDI-kE2$M3x zq>L~rBTUK&lQP1jj4&x9Ov(t8GQy;cFexKU$_SG(!laBaDI-kE2$M3xq>L~rBTUK& zlagmr@=QveNy#%Qc_t;#q~w{DJd=`VQUWF=U{V4mC16qlCM94}0wyJ3QUWF=U{V4m zC16qlCM94}0wyJ3QUWF=U{V4mC16qlCM94}0wyJ3QUWF=U{W5$qy$XLD3cN}DFKrb zFew3(5-=$NlM*l~0h1CiDFKrbFew3(5-=$NlM*l~0h1CiDFKrbFew3(5-=$NlM*l~ z0h1CiDFKrbFew3(5-=$NlM*l~0h1CiDFKrbFe&Lelrbh{j7b?|QpT8+F(zeOL+ zrNX2n=Y7*v&~TGUIm)Eun3Tgz%FMtAnUsA@%04FLh3v^q%*dV0$eql{oyE~^`8CB(jN2LSLKdRHLKIktbX~_G_Th)m7|7cl zzTk1oo9ix)GX%2?!4fm@-OP8a9jWQ|@AA9mT^WD^18`9H|6OMW{=U7oZnoFf&AR>c zN@jnf!(YJr`fL)9KvrF^un5|o|!?x)KxYYHm5_yS`8Sx6}5B?Wr|; zG-X^tV4Jzu9m-xNx`=`=(su1eNy~BDSq4>=(su1 zeNy~BDSn?6zfX$aC&llR;`d4M3}&*&~s^SpxrUY5OK=`zC4oCMo*G(&(w3pSJJmt?D!CPtc6OeQ2(g@Nqt>?Lw!?a z)webZQf5KQEJ&FJDYGDD7NpFAlzB+XJS1fvk}?lTm<0**kc3%~Fbfi9LBcFZm<0*5 zAYm3H%z}hjkT44pWc5c|yB%=n@Hg%3VSGi`F#5gW7j!TT=663hUSdbLQCB<<`aeVMTb^*O4^D|Q7 zB~s$0=G*QiCEn9Y;rmI6mr96Fvg71M65`V(!wV(3f+Sav8DkmL%ITtSj6NOA?MdJB?VL6R#-as^4QAjuUZxq>8DkmL%ITtSj6NOA>9t{}-3 zB)NhlSCHfil3YQOD@bw$Nvcg)E9dq&%@8&T71P(NYdN;_M;!cKwjvNG)5 z8}H&g7dM^fM>h@_LED_kgc0wtM!Y8&wbC8o(!FqRHqw-hG-V^r%|@D=jWlH=P1#6u zvytXzBhAf5nzMItyV*!nHqw-hG&dV*ZZ^`CjWlH=&CN!Ymu#MsaV+y%qe;5|?K6xd zWBSkY9MzE{tD_%!h)?^YecJE8wJtv0QR)Jp_Vaw&({=HCeBvMJ6MunE{9AqEALoMZ>Q+5f=JzuXHjfYwJdGoNhBC`HV3v>nKEZvT;I>cL)#MMIU%GqS zjq250>+AgdCf|Q3vuE3ft!{Ik+x91Hd~3UF4LSe6xnqz0b|0;NUOh%VRy|HVUj2gl zMYUHwS^bi_Og%+CRXt5TT|GlxuC7qeRKKjArG7!``)F?^^8LI_MoZ=v6=HFB|rk4g1T6{bj@cvSEMOu)l2BUl#kzV$b}b zXMWH#Kj@hs^vn-><_A6VgP!?8&-`HK_oUAKQs;iD^Q}_nJ0;DIq}h=)JCbHc((Fi@ z9ZB=KcFV>IV^4bCSVz)2 zAzgK(tNqf|e(7qzbhTf)+Am%0m#+3pSNo-_{SwuFiE6(@wO^vzFH!B6sP;=#`z5OV z64ic*YQIFaU!vMCQSFzg_DfXzC93@r)qaU;ztpo|>Upcw^HwS6of6JFrHPI-(UB%P z(nLp!=tvPKq=*wz#0e?lgamOyg6K#P9SNc%L3AXDjs($>AUYC6M{?*$4jsv%BRO=^ z@lA5*NDdvzp(8nTB!`aV(2*QEl0!#w=tvD6sUaN;2aSafFc#j!Sa=U(-~Ehz_ciYQ zhH>u_r0*bo2kARV-$D8g(sz))gY+GA@1T1J-8;s}4!U>Hy@T!@bnl>h2i-g9-a+>c zx_8jMgYF%4?;v*vxjP(8$M||aB6Sd{gGe1j>L5}FiB4p;Z;|DFsB&!JqZ{8wl)C?V zmDR_t+3VU_-yV=i%&~Qx(SDWvYG2^YTGyf5{OJxqE%@ow=1+HD@3Lk8s;gZ0nJXRO zNe8a63fj)bZhOpaCyhU4<4<|uHLlBd6V9cpqt9GRDjE8&@#;A5eGxE<|M{aiW z_IJAd3AaCiuG8-MsNYGish;yYMZeQ>zW!d1b(zO_isItkBE5cd*)3)UKJFd|yjJn% z{cc{9$K>9g#3mJQFc;aN5YK4SF!J=irg6+7bo|HgaqHLu9w&FAwGxBQq}e#|Yu?72*D{)Hdi%mAItJu=%QguSkg z@??+kOX^BHrrW0qAM6O}y3Og|^cw&ARsZ^z{`K9i+kBzxHt%-b=8Ign`9gaZ4El}X z0joX+toRtXG4q&nKbiTNb8k_9lsRu`PI4J^Z)2H{J0t%Seq*n`?@DXbU*PZa&TM}| zW^nrx-Db$GM%?NGx4Ms8O}W*#-RjIc`r^z^x4frY-g98hD79jgS}{T`850v@Vq#2O zM6#vKqwMwN3{3rUq+gEo%TeZWlG5Y#uC5ZR&s>etnE>OZKL+j%EFPvaH7 zzh2#-Ua73f&)le9qh70Cr(W-Ge}k`YRB!VAo7G#?Z~FbWs<)}P`}rOI{U+bP)A#Rk z72J2L-%{^U@AYraz_aS0n|Z(bZS_0q|5E=+{b%(7^+EN!>O)@Z537&3s^ahaynNKx zkNL#!^?9-;H+^4?{7tjx_NGqHlvi&xWBfMt4#~jtFaw@!dyk+0qpu#%40zWJc%=8Q zAw_eWl??j-1;j{`M1R|@Zu=SaC;t2Aef?AQ1@&j@i|R{izmjmxe7DVfx6OQa&3t$D z_)R;pw9ozI=9ST>&;283C_6jc>|opMV0(K`IWx)3V0*hWlgtdZx0lt4jV4Mp%?74> zEhqP2A((gz5{Ybwb>Gvc3ex%=z^!t%sKho<*di_YRAL;cYy?&(EkM#PHUO&?7M|%B8 zuOI34BfWm4*N^o2kzPO2<42p_z}J2KhWe&Du+iRmP~D-v<(dKCR)}Oea}%AL=-fo-COS9KxrxqAbZ(+^6P=sr+(hRlIycd|iOx-Q zZlZG&otx;~G;7p0W7IZd)HY+(He=K_W7IZd)HY+(He=K_W7IZd)HY+(He=K_W7IZd z)HY+(He=K_W7OsbYTQ7L8>n#uHEy8B4b-@S8aMF6>vGRti+h2yUU#bt)xDI@@8Cu1 zzUuz!0g6Q*WYGs%^g$MV@WF~jAAG1{&j;D_LFRmrEgxjd2Op~*uYOTIK|N7DNjZ)O zFH=uZPgTalLF3_|@z9P%Z95jV?O2qajhvW)O3XkdW}gzXPl?&5#OzaI_9-#@l$d== z27P7+eP#z=pkC;2e35#wdWm|edYSrlb)9;Jx?bI&(oXMH>PGcy^&0hB^*Z%>^#=7u z^(OUZ^%nJ8>OD$2FpHF!MM}&dC1#KkGf0UUq{IwTVg@NOgOr#(N(Qa`;VKr)9xV)h zT)8TxnWF_WM+;_-7R($i4E~||l&gDuTHUHXqy9wQrar4~SD#a#SAVL$p#DsKQGH46 zSAVX)tiGa*O=gX{W{tXLjk;!yx@L{KW{tXLjk;!yx@L{KW{tXLjk;!yx@L{KW{tXL zjk;!yx@L{KW{tXo2h|-Li)M`$2fwAht?apP)@X5XL>*RRDzA>Hf-0(`YFw36ppL1s zno#!XH(Ru*W9jQy`hzFz?^{zReP34#DpXAssaUntqDqw2A%n~6dum0ks?)B;?K zWmB?jN|sH@vME_Mne#>Fe33a{WX>0v^F?X1IWUFrO@wbEe1z}`x|h&BM)w%qV|4GK zdx-8Kx`*f}RfdlTK8=-x#4Cb~D#y@~EkbZ?@26WyEW-bD8%x;N3iiSA8wZ=!n>-J9s%ME5$n zpF;N@y7$n%hweRe@1c7S-FxWXL-!uK_t3qE?mcwxp?eSAd*~jbdx-8Ky7$n%hwcq@ z@1c8)?lHQ@=pLhc58a#S9-(`L?h(32=pLbagzgc#N9Z1*dxY*Cbnl>hVohNm-4k^0 zAbN=C9Yil7dI`~ch~7i=5YZcm-b3^rqW2IzLi7mHJBVIK^ai4L5Isip2BIg3-b3^r zqIVFziRev4Zz6gV(VK|gMD!-2Hxa#w=uJeA5IsWlQ;6O}@g9mdQM`%bJrr-EcoW5& zDBeWzCW?nB-azpViuX{whvE^6hiKYF(yo<^jG{4$#wZ%2XpEvUipD4!qiBqxF^a}08lz~8qA`lbJHM{1&_&T0MSCdPL(v|J zhA0}MXo#XAiiRlKK+y(@Hc+&Iq74)cQ8Yx+5Jf{24N){i(GW#L6b(@{M9~mMLlg~B zG(^!5MMD$~Q8Yx+5Jf{24N){i(GW#L6m6nt6GfXS+CTSqG%IE>nK`B(K?FOQM8Vtbrh|m=qZN%6vKXsVL!#LpJLZfvFoP> zFK}(A-Ri>h8c)jS2Ss}*+C$MEiuO>nhoU_c?V)H7MSCdPL(v|J_E5BkqCFJtp=b|9 zdnnpN(H@HSP_&1lJrwPsXb(kuDB45O9*Xu*w1=WS6z!pC4@G+@+C$MEiuO>nhoU_c z?V)H7MSCdPL(v|J_E5Bkq9KZgC>o+@h@v5ihA0}MXo#XAiiRi}qG*VsA&Q158lq^3 zq9KZgC>o+@h@v5ihA0}MXo#XAiiRi}qG%6AdnnpN(H@HSP_&1lJrwPsXb(kuDB45O z7)4_gjZrj4(HKQz6pc|dM$s5WBNUBLG(yn`MI#iAP&7i(2t^|ljZic~(FjE&6pc_c zLeU6CBNUBLG(yn`MI#iAP&7i(2t^|ljZic~(FjE&6pc_cLeU6CBNUBLG(yn`MI#iA zP&7i(4vKbAw1c7@6z!mB2Sqz5+Ck9{igr-6gQ6W2?VxA}MLQ_kLD3G1c2Kl~q8$|N zplAn06BJFXx9D4M(YM~BZ@op|dW*jG7Jch2`pB9fYl5r^vL?uyAZvoG39=^0njmX} ztQ}CPGj4UK04G#hx+I{ zQMQY+-K{=)Ssz_P+G@t99Bogb?J2Z9g|-RW#%LR(ZH%@t+Qw)bqiu|~G1|sx8>4NE zwo7Qcgtkj)yM(q&XuE{AOK7`FoQ#Ytr>Rn%@Zd9*PuT`(} z-(TNbP_G^8wL`sjsMikl+M!-M)N6-& z?NF~B>a|0?cBt15_1d9cJJf53dhJlJ9qP41y>_VA4)xlhUOUulhkET$uN~^OL%nvW z*S=G)eW!HLl@7YnL03BHN(Wu(per48&+4_8rGsVZU|Bj?mJXJsgJr#TO|M;(5~@-{ zRZ6Hz2~{bfDkW5EdWfZmSbB)1hgf=urH5F0 zh^2>EdWfZmSbB)1hgf=urH5F0h^2>EdWfZmSbB)1hgf=urH5F0h^2>EdWfZmSbB)1 zhb8G@NqSh49+sqsCFx;FdRUSkmZXOz>0wEFSdt!=q=zNxVM%&ek{*_%hb8G@NqRUg zJsg)Fj!O^6rHA9v!*S{1xb)DH9$L~vOL}NY4=w4TB|WsHheUcvqz5~DDW7ZUA(0*y zrH4i7VNrTmlpYqPhehdOQF>UE9u}pCMd@KtdRUYm7Nv(p>0wcNSd<UE9u}pCMd@KtdRUYm7Nv(p z>0wcNSd<ULV(B549%AVsmL6j1A(kFu=^>ULV(B549%AVsmL6j1 zA(kFu=^>ULV(B549%AVsmL6j1A(kFu=^>UL7Nv(p>0wcNSd<7g$@^reTs^w5_c`qD#Rdgx0Jed(buJ@loA zzVy(S9{SQlUwY_E4}IyOFFo|7hraaCmmd1kLtlF6OAmeNp)Wo3rH8)s(3c+i(nDW* z=t~cM>7g$@MAAbfJw(z&Bt1mZLnJ*!(nBOYMAAbfJw(z&Bt1mZLnJ*!(nBOYMAAbf zJw(z&Bt1mZLnJ+{Ne^p!@K6sPN($?e!n&leE-9=_3hR=>x}>l!DXdEh>ypB{q!3FA zv7``73bCXROA4{1kY2MSmK0)1A(j+kNgk`y9IAs!g{5u4tU0Dh89 zk0gLd0*KDC>45|gNC1HZ5J&)l1Q197fdmjp0D%M$NC1HZ5J&)l1Q197fdmjp0D%M$ zNC1HZ5J&)l1Q197fdmjp0D%M$NC1HZ5J&)l1Q197fdmk2C4fi*Xh{Gq37{nbv?PF* z1kjQIS`t7@0%%D9EeW6{0kkB5mITm}09q2j**3i;0kkB5NCId{0CqlAGP8a=)Ni*W zfItGMN&r;}peg}WC4i~~P?Z3x5Psl1H=yyKS2Bd@vDemMf?cyTPWW$ z-#=x(e+umbv=7j}h4um32WTIleSr1>+NWkcLi-r)TWH@x`zqQuQSbkxd2XRz3-ww* z!8}K(7olE+dJ*bHsP}Jeo&(eiP%l8e0QCaY3s5gWy#VzB)C*8AK)nF<0@MpoFF?Hj z^#arj{srnqs28DLgnAL`MW`2{UW9rr)N7$$3-wy4*FwD(>a|d>g?cU2YoT5X^;)Rc zLcJF1wNS5xdM(szpa|d>g?cU2YoT5X^;)RcLcJF1wNS5xdM(szq2B*a^V~wc7V5Q7uZ4Oo z)N7$$3-wy4m!7xKLcJF1g?i>t&m8KRLp^h-XAbqup`JO^GlzQSD(Y2HuZntA)T^Ri z74@p9S4F)l>Qzy%ih5PltD;^N^{S{>MZGHORZ*{sdR5e`qFxpCs;E~*y(;QeQLl=6 zRn)7ZUKRDKs8>b3D(Y2HuZntA)T^Ri74@p97o%Q`dNJz7s28JNjCwKZ#i$pfUW|G% z>cyxRqh5@9G3v#r7o%Q`dNJz7s28JNjCuvsE9jYL^~|$+=2<=Ste$yR&pfMVo<+n0 zBBobr8AZfVL>xuLQA8X?#8E^XMZ{4=97V)YM64oW6%nh5SVhDtB32Qxg@`}SO2>#8 zBVvq*F(Sr@7!4do#D<=@p(k!^^~7~Oaa~Vb*Av(E#C1J!T~EA#hzp3gfQWTHaa~Vb zM#M5AmJzXxh-E}9BVrj5%ZOM;#4;k55wVPjWkf6^Vi^(3h*(C%G9s1{v5bgiL@Xm> z84=5fSVqJ$B9;-cjEH4KEF)qW5zB~pLQlN#BRz3~hzTMlh?pQ^vegr(^UHVl#AnYh z*Y(8p%-htN`Q@}HUO>cjez}2&4Mc1pVgnJ=p16#N6Nos0h!co7frt}`IDv>0h&X|W z6Nor*77-62;uIn-AmSZ}SVP2r-X!8v^~XP2p%-lE1si(7 zhF-9t7i{eOOZ8XkuhrkEud2UQf2aOl{iFIP^>y_P^-cA|y70aktM#VBJmQk^cie*$Rqhc8q z%cxjJ#WE_EQL&7QWmGJq;t9Rr3BBM6z2FJG;0e9p3BBM6z2E{WE}-H9DlVYn0xB+` z;==!=7fetwLB#|W6I4u4F+s%y6%$lUP%%Np1QiohOi(dF#RL@-R80OAz2N_y`PjN% zu&x)Z>jmq2!Ma|st{1H91?zgjx?ZrZ7p&_A>w3YuUa+ngtm_5qdcnG0u&x)Z>jmq2 z!Ma|st{1H91?zgjx?ZrZ7p(s;&c`-Tv4M&WRBWJP0~H&n*g(YwDyG*Ln?S`0RGdJ? z2~?aw#R*iLK*b4EoIu41RGdJ?2~?aw#R*iLK*b4EoIu41RGdJ?2~?aw#R*iLK*b4E zoIu41RGdJ?2~?aw#R*iLK*b4EoIu41RGdJ?2~?aw#R*iL_&22DAyhnsic_dKg^E+C zIE9K+s5pg+Q>eIriVLWC2P)oyig%#m9jJH*D&B#Lcc9`OsCWk|-hqlg{+g?2=4$Ku z#JWDQu1~D%6YKiKA4kQ7%|5Y-icM5(qGH-7{v=b}Ld6y;w$3ue|EH;#UU#MSuj~`g zHpO@MiLI?Z@kdu(rF~*b#hNX?vhFgd@epa7Y{$C*C-F;$ehVSkZ??l8q&mv;l zC;m7hrdGIxh^ZAmyHAV}v5AOHL~J5r6A_z;*hIu8A~q4RiHJ=^Y$9S45u1qEM8qZ{ zHW9Ijh)qOnB4QH}n~2y%#3mv(5wVGgO+;)WViOUYh}cBLCL*5QC;m7)+Csz@BDN5* zg@`Rg{I|BF|4$Kd9uemeaUK!p5pf<7=Mgcz?!o`ej{g6pPyF9$NB>v)#Gl5F{=d0T z{I{~BWkf6^;&DVgj)=z*@i-zLN5tcZcpMS)h?qyjaYP(P#BoF%N5pYN97n`)L>x!N zaYP(P#IioItWPZK6U+LOP+7!(9O^ea5f04tOsTUFmOrzCFobU{|gev4*eS zIKAz)8!MhwbMtTiq$?G<4!F6(>Ft-eYUsQ=Zq2LP?0BzwpZea$%1-NO&-?hs{CS_) zm>>9S9r&88u_kM*$r^oGqoxC|>A-6`@R|<1rUS3(z(ZLhlr=(GqoxC|>A?Tb?iF{Y z1HVhw=yTG2PP)%Y_jTa?^gY&r_jTZX9eAIUj&$ICPP)%YN1SxTNk^P?O$T1nf!B24 zQRW@~{U(3oJAMByIVL?Tfd|%sw{+lrStH$7Zb}C}r30VRflukcr*z;`I`AnS_>>NO zN(Vlr1Fv(^bxyh{YfQ@-V=_cdS6%0t`&@IMYp%%&bWH~x$_t^q5XuXoyb#I@H63(K2VK)a*L2V|9du0xUDH9=bkH>&bWI0c z(?QpC&@~-&O$S}mLDzK9H63(K2VK)a*L2V|9du0xUDH9=bkNf}=zsMdIR8QieU}dU zE*OEp!+)Lz7D#t zgYN5~`#R{p4!W;{?(3lYI_SO*y03%o>!ABO=svI9=au`sa-Uc3^U8f*xz8*2dF4K@ z+~<}1ymFsc?(@ohUOD2GBVIY;l_Op`;*}#_IpUQgUOD2GBVIY;l_Op`;+1PU=$a0? zrh~5Opldqlnhv_AgRbeIYdYwf4!Wj;uIZp_I_R1Xx~7A!>7Z*m=$a0?rh~5Opldql znhv_AgRbeIYdYwf4!Wj;j(FvWSB`k)h*yqyw|%bV~=_(m}U$&@CPGln#1I2R)^Op3*^2>7b`{&{I0-DIN5b4th!lJ*9)5(m_w@ zpr>@uQ#$A=9rTnAdP)a9rGuW*K~L$Rr*zO$I_N1K^pp;IN(ViqgPzhsPwAkibkI{e z=qVlaln#1I2R)^Op3*^2>7b`{&{I0-I2?i=auWca-CPM^U8HzxhO9b<%OTT_svPW4A<3ya(z2FVN6aK zlM}||gfTf`Oimb+2O{3MrbDjjkZU^Rnhv?9L#_|?)tXvY-`}X8=eW*X;w+~LZ2XiF z|NBPzzcMn9VdQh2Wz}|;RU0e6G|<+ubyRoblxuc;55ecK@^-Ae4YB8pOjC~bS!WDh z?CAJsRQ_31zAq}@7nQf8@-Al&J`$N9;S-ncp7i&bhgi+k^vKJo+>;^hEkis?hPby3 z@hBPM$uh*{GQ5)%) zyYV4Eebi4MbzkkR-*s-9N496}d@BFJvv{*} z{|3Bc+r49h-m&eT(ccbSzwu|@o1FJ%#CvlepWK^$azEjd`v=~qIj``iy~5A+jDOjq zw$o>P?x$RpVr1hx?DwbH?@#0MoACJYc>F>yqc1p zaO*zZ>k{0$ypK~WU($;tV!`Von(L^!?%i2O z&2`jVN6mHATu04y)Lci+b<|u(&2`jVchs*Nq1U}z>qh8xBlNlvdfjNeHt=yPU~jhq z_V&!ZHr{71>NR^&uUQG(bIkXwgk5mH$*PsGMPuikR>IEdIZAqtlAfca=Lo&?fp2&ZpOu4!rB>I+O|Td|BoXW&RKWLYaR-=3j8!Ey(-}GXH|i zAIkjmj>Ayq4`u#&nSWm9pZAFgd}0Ehm_X*A&%DFG-{djg>HBwie(zSlrQV~g-In7+ zIX>hHPxFN7*}iWv61>Mq@ScIo?Hh81y3%p{{LM2rCyZz5>{%e^huePL^@6W+3|nVn zI}W&cLU$B>T^Av*tzipEr}%mis4o!xC@Umi^~^YD;o|DEEifmb7L0 zvMe839oqB>PRGb8xjr-_w&0T-_#~HP_fU49m)%33>cHyH+pYe*-RjTVt^T~->d)JE zJWf4c{et>MwO2h^{gS#&Jw-iLJxx7bJwsitu29cZzpS36enr_Y#p=)7t^T~->d)J) z{(PU+pYPjwr6c9p>N)Bv^;~tedY<}Kb&awn-wM&56{0;WM0-|<_IAEhy-dB;EZE!B z+c#FN5MAAQlX|CmmwLB)ul+LLr~adrrteq3t$s&+Kz&gCuKJMru=*tG|AD$iIeT^I zAFEHPPdmrN9=Lj%k}1j%Onv$NTWPB|d zUrWZ1j%Onv$L-)YF7|n$XA-76mCAaNP%jedMMAwus22(KBB5SnK`*kP7g^AYEa1q3l(1kF zThNOv=tUOvA`5zv1-;0EUSvTpvY;1P(2Fcc6AOBgP%jedMMAwus22(KBB5R+)Qg0A zkx(xZ>P14mNT?SH^&+8OWL_^auNRrui_GKHyk2BpFEXzenb(WV>qX}EBJ+BYdA-QI zQ8h5C21eDus2Uhm1EXqSR1J)(fl)Ouss={Yz^ED+RRg1HU{no^s)128FscSd)xfA4 z7*zwKYG70ijH-cAH883MM%6$sGOrhz*NeSFa^^-xUtS@lS^>`_vIv&eBJk1Kgx$>U00TBvYTt&Fu#R*AH% z5@}_ueX>fVWtB+FDv_2|A}y;#TA637=P2u-tP*KiCDO`R2W6E=%PNtURU$2`L|Rsf zw5$?oStZi4N~C3#NXsgbmQ^Axt3+DzU&|_ymQ^Axt3+BjRmZ71PStVhBu<^gsS}b* z1FKGA)k&CMRkK(%i&eAuG>cDlY?{TQ8voSdpH}#%75-_3e_G+6R`{nC z{%M7OTH&8o_@@=zn!&9Z{wd<0+W2*XgNiV0%Bz3Wt3Tn@pTMvg44c8Q;{yvDr*Ug$ z+q2lk=c?zc>sZED_ITeFW`MyA1$jtT2_Cwto~TxtWvZ2&ob{6*45Kb2*%a9 ztJd~!socg%$?bdmRZ9kL$-u4c$5dH;cjGkv&EVfG{?)mw75uBbiD5NI5okK14lK{j7SJdbqk&JwpAQdZc=kdV;zVL!Ygl zqpniVRadL$sb5vssJFAm?@%|XcdB=(cdPe0L*sqwlfM50b&L8V^~dT{>eCx}T+QQZ z9#`|Yn#a{VuI6zykE?lH&EskwSM#_!kE?lH&EskwSM#`<$JIQp=5aNTt9e|_<7ysP z^SGMF)jY1|aW#*td0froY8_YWxSFnVY3*E8iE68k>Z&ERtiGpK)T%nIdaAG1)Vlh< z`ma3C1-!>@b)mYK@_EF!I=-F6x0CpG65meZTMgg7k8daO?IgaP#J7|9b`sy#@a-hN zoy513_;ym)Ie>3PI9pCEsR>!wGzSZ%qj&F5*tK(Z8-|F~Q$G1AZ&EnfEzRlv> zEWXX++bq7#;@d2~&EnfEzRlv>EWXWR&MfB4V$Lk)%woQ?m`^(X2!^;vbh`keZ_`cw4<^=Imf>Pu?B`g8SV^%do~=C)S2trc!-h1*); zwpO^U6>e*V+gjnaR=BMdZfk|xTH&@<2EVSpp}wiI>VP_^?yx`du=fdN6|0t7R6SR=>Z>)iuD)-4{(?UFx=qvY^BY$q-PK5UweD$;?rD$iX^-w{ zkM3!Y?rD$iX|L{SukLB@rkQw(|Mpb%G+oWp)ic!P>I(Ht^~>s6>Q~g2>e-5YK*Tvj zoI}JpM4Us!IYgX8#5qKqL&P~moI}JpM4Us!IYgX8#5qKq+cYA-?yD{c5$AMp*XZD$ zjDjygy<0a;$(wwAvwDmAP0#VI>TT-ne!j``f2XhS+PGF{cCF6rTAkUosa-+CIW%mb zVFL{tXxKo*1{yZduz`jRG;E+@0}XFO!`slXj)rMBm+rZWlvtW=I=nqddE5VBYu>T3M_0EO9dAX(TamGWj16S`n$GT;O`G!(|Ni@a-nVhB z?rtwqE+FLB5ONM7=MZuZA?FZs4k70datl)M!o8@j|jM(j5kv9C5_U;RJWq|fuc=+y@9UqdFRPzqn!f7a{#N~+`g`?{>Yvot)i=~P)wewUw^eGTa=wnKJS%lX z6;x4`RBEh_`M0vV+gwfhKDAdvnaIjVJ4(o~(;{@(&E#F5jQ8{w34)tc_cZ__rGIZ#ClI zx@q2?>+99(dFofyHR{*Y^VJJfYUW}_Nms`>0R&==)U2a8} zThQfJbh%YWbFGf%j2Zld?;Q_1nrn45*Xn4l)zMswKn(M)2-HBJ1_Ct@sDVHY1Zp5q1A!U{)IgvH0yPk*fj|ueY9LSpff@+ZK%fQ! zH4vzQKn(| z8w%ZqLbsvNZ76h`?rpExg|sJ2`>VTq8NG>7bV3htYBT@eo!!&iE~ls2?gzOj%|J3w z=Kj_@^sIO2xwq67PPxZ#>Wsc){6ETkcgzYT);RRcQasGP-f6sxbp$7@Z|J$#JGamK zdVHg|!)>f_=vm{?+wnct=$GuGaLJ~(Ji0j#@ksv+ESY~8+%oI`j#(dK*6+=# zKgO%H%kg+3^Rmq2GOzbHG%~O7^?G%KdS&JXnOCVB)oavi)$9ECH~6n_RPXTpd)3D? zZ?_-d?+-j7bKSrbGheeO;a`}$`h>Zw-!XUf33FG!WA5q|16O7Co16GF>b(c`-f0cY z2L@iA`Qw4#P&a12Jn-twThVUC+=L!5^ZIRXQ}0o?s?TIzf9_40S8czydP3%l=C!_P zkJ1-xU(Q^2kB4Pmzw>}PsP4$Te((adTV1H`rS7dRQuocgVDSFx0qTM3Vs(jnkb1Cs zhPc#^y3G866>pjYS?d-YR+|6E}c`K6i(CN;Xn>#U@ zHFAX*KOJU)$1|VjB$g$$Wl3#W@>-R=Rwb`h$!k^eT9v$3C9hS-R=Rwb`h$!k^eT9v$3C9hSsd$QR|AW4j*`;T`!*`)$HZ0FSEkvDe9^A7k!%9v#0y|3|}wj z46aaDT8VU(-94Yball{sb$?}g=E(fO%e`v9p>EW(OJCAWx<64Y)ik7nvp)5-%%M!}6gtBbhS(Z?iC6r|eWm!U5)>AI)DVOz>%X-RXJ>{~V za#=!ImQa=@lw}EJSwdNsP?jZ>WeH_jGFX)iRwaW~$zWA7Sd|P`C4*JTU{x|$l?+xT zgH_33RWewW3|1wBRmosgGFX)iR*mle@;)XfT*IcOoXKx=kB#oJ(LFZ0$42+q=pGy0 zW21X)bdQbh4WoO*=-x28H;nELqkAKBPou`SykqIQv8s2g=^YAv&ewd-*Nm$VGA6}# zRo*>xXXboI!C!6et(ty%4_hhsaas8j&J}v1*-2M@@$N6WufOo_r+becNN?rcKjJ>~ z1FvR}+U~ofy2iZ^n`1Rzdsh!wrF_7+*B^4;yvO)0bJ*K>tjji5-P@vPkv?)@{QS}X zlFl-pbejc_R`F-5 zht<_#b#+)>9adL|)zx8jby%l$Sf_PZr_E1wbyr=-c;7MJcZ~NP<9)|?-!a~IjQ1Vm zeaCp;G2VBK_Z{PX$9Uf{-gk`m9pin+c;7MJcZ~NP<9)|?-!a~IjQ1VmeaCp;G2VBK z_Z{PX$9Uf{-gk`m9pinS)rt{9m9RcaNjZ9cMSI(!+pna-!a^G4EG(w zeaCRRbIA%v*LVD;Ys>nM-@fCw@A&OIe)~F)uFm7MZlf#lcP0L=#NUesgj_bbTy6?E|JFfeV>%QZ<@3`(euKSMbzT>*@xb8cy`;P0r z}piQvHeq-j%?+5_nev?@HiZa|&Gvyeols zCGf5U-j%?+h~JgKyApU;0`E%TT?xD^fp;bFt_0qdz`GK7R|4-!;9Uv4D}i?<@UHP? zNqSt89@nMEb?I?kdR&(t*QLjG>2ck-(lxGhjVoQ_O4qp3HLi4xD_!GC*SOL(u5^dK zySd9jS2FBMhF!_9D;ajBz|*P2w_4%(nddp~p657vu1?tzp4nx*X!w++=M~;zteEp( zPdXA$8Y|j9WwTpHaXLR-E$lWy_PZt)#|gB3K+7J0QtWfR?B z%l);Ccc=X=fxjg%)}1!iCGP(=J2r3Ic!y_n_b8n1+x;((!s&j`i~r*2m##|r8zbOX zjeuYEEGIn6QTJbRHHXL94f+-8dUZqQV##nwG8~W$hcfR_@AYo|_q?+x(G5v-LlWJP zL^mYS4M}uE65WslHzdIgNpM3F+>it}B*6_ya6=N@kOVg*!3{}mua}q3li2o1Y)_Zi zo+`1uPj-5s?DQiFDNJ1Nu(1s+mAqj0rLK~9Mh9tBh32jJ181X}c#|A%^xu?gvSkk*b^CkE2q93`3%iP2J-NW15!%N)5bKS!e z&$@^I|d%1^ud7vG+tvvscdw8{b*x?=?;T|q?4^MUv?>_4u&hs~4>TkZlJzTN* zH$VD^?%|Tm3;p&}{r1oK?ewZPcfZOn^{Kld^MW6__3ya#+uizVw|?V~JlhX=jC*;O z*Jt+sn7{SOXZ@`&^4nMW?O#0W@zTHbq3+=Un=HLML)*89+1`3qKS;(SKA%T7e@gec zF8Hak`O}!64*Kcv=1=Lq@OSuWH1nsJ8ewXLsS&0|m>OYfgsD-+T2oAoFg3!|2vZ|W zjW9LB)Cf}}OpP!#!qf;;BTS7jHNw;gQzJ}`Fg3!|2vZ|WjW9LB)Cf}}{ES$}gk?-v z#)M@|SjL29OjyQ*WlUJcgk?;&>|&Q)tYYnP`8sx7j`(ZRv^2s7CTw6LBcItZ><{f8 zc4mjL2wx+7jqo+X*9c!De2wrm!q*62Bjzt*{t}FhFgC*22xB9RjW9OaZr2+&FTu13 z(;`fZFfGEg2-6}=i!d$1vO@$NX@9ml)lcy}D{j^o{NygQC}$MNns-W`{tf9!5Qo1e)vQKpm_-~1`P>O$5} zxy(g!a)KE%m@$GGhcV+zTkrbjEij{i83oL!IVS6vaS}6P%;?Ig2^^_m2jNPvk1xFXrLq_;?V zOQg3*dW)pDNP3H;w@7-6q_;$ROQg3%dP}6YM0$&)w@7-6q_;?Vi=?+mdW)pDNP3H; zw@7-6q_^~nMv?RuNpF$#7D;cB^cG2Pk@OZxZ;|vCNpF$#7V)fWJnNd(Dr-FJ8qc~m zc&^&6{%2>}Ir1g4NFs|QvPdF}B(g{%izKp0B8w!lNFs|QvPdF}B(g{%izKp0B8w!l zNFs|QvPdF}B(g{%izKp0B8w!lbj57C_tdIHw(3*3;#0WdQ@G+&xZ+c|;#0WdQ@G+& zxZ+c|;#0W7#YGZVBymL&S0r(zdq^dlpNSEliNihpv`;MQ|QN6gC2p{9I(>2h)=CPl*`S0oIcjib*uLqJ|%VT=;zaRF~ ze}DFO(_mur(e`_^FL|`|I7)YHO0Qrt{XhIm`aIGz!CIUDa?tPG;dj!^nI5Z0{mYrZ zB)xjd86%TEgY>)2*J$%rX^&Xmd_HLkJd>W%WP7E*pMxIp#J{;&;NOzbDr~fdfuHSGxPo4 zd*Ao7-ut;Xd3Am9({Y~;duL(s+Tp0Y>Dpn1sZIOS2770|&xL2X)D^!Kj#1cGjm2+e ze5<$u#<#*=8q|N`J%(qZ%r5%kp@wWMJ_~zpN%4D+`rZ^*o8o&PMw`OBKGc1F!+nl- zpQjbC7>;Rp#ks|Z)xExXk8j@N-Eagm#g<*;8^`#@vBhtMzI}Knvy0yKl|Fr?Umf8y zTl>tG#XI=B-&y7_%iO^NpAY5Y{NlGmxi~ng;Y#OEf6#_`#VbwpD>wR;>x!QZ@9jM1~EuV21msv!-&9&&}|;Ioi3IZ1k6$zts6lICdu%&s7QIUvK!! zoBr}Qf0U(bbB-UwjoZz13&hi@y`{sOWq6oh82YmT!gYqlQkJ z@lLAvJK;Ma7v_0qsdomy{ib(At+4rByipvX4kI)en{=v`PZjSq>>uwA-hKGJH;Z=^ z&h!sC8qUk2werFJ6;J4Ke@k6^wrkHT?m@WG6>h|V8~t8ry@hjUu20SR;8S5gE%KM5 z6dC&dJl|hf{QmEK{~6zZ#;0cbRMT`k=Rp`|yk33Fr80zVn*zgmPzr z?=1D5xbK8}AD0&IIlN}bmihj&aOiFZwRVHQgp3Mu>Zrat@3N3 zFYM=($2$VK zv|vTy_MoY7Y{1S4RuxVU-u0RH3Wo=43daYDjq8KZ!h-rlee zjP=^@#rA`0E9C#GM_$w;Q-g4=rE{5sMfTs=zol1_dSsy!iCgr_QoWK1nyrL*r*K=K zf>5y9ii&qZ+$?A@OWwC8z7^VhZ>`6K-w}fj){$U`6s|T_*Ba|<_11K!3$HGFw$M=a z2l%7s)8Kj0omDK{4TaTubE@8)syCc{&m3nif-khp8r|QkAdULAY zoT@jc>dmQobEV!~sW+$U&8d2GrQTerH>XBVQeo-Z!mH5!#CiYa6Ehq zPJk2PqCz5eF3QG z$>#rhQSk>w#UCvDU7-=PCt&t`%$|?g6EJ%MW=|-;rSMq!t%b)hd^(0tsOWP(^yOIg zN!Sj?f|cyiYL8a3o9k`S&v^b>n4lWK&)`nD3*IVBz{&+!IRPstVC4j?oPd=RuyO)c zPQc0uSUCYJCt&3ytek|Eldy6UR!+joNmw}vD<@&)B&?i-m6Nb?5>`&a%1Kx`2`eXI z!)M=bgZ9__0zF_I@V9e`sr9d9qXrK{d}ySkM&cqehSu4 z!TKp!KLzWjVEq)VpMv#Muzm{GPr>>rSU&~pr(pdQte=AQQ?Pyt)=$Cu$yh%b>nCIV zWUQZz^^>uFGS*MV`pH;78S5uw{ba14jP;YTelpfi#`?)vKN;&MWBp{TpN#dBv3@ev zPmWD5G>XED#$x&$%e!QANejb3vjV{UYj z_8q?6LBe;L4>|Lo!#wD~{|@|5<9#=tci?vies|z^2Tph3Wd}}n;A96*cHm?OPIlmA z2Tpe2WCu=m;A96*=5R8HlR2Es;baacb2yp9$sA7Ra59IJIh@SlWDX~DIGMxA98TtN zGKZ5noXp{54kvRsnZwB(PUdhjhm&16*@cr`IN61hT{zi=lU+F3g_B*zrQ5i48<%e5 z(rsM2jZ3$2={7Fi#--c1bQ_m$ap^WL-NvQcxO5wrZsXEzT)K@*w{ht< zF5M!mOa0HQHy(e}gL(R}kv?2VA1;(HZ8oiX!OBubCYrk*w`bn&1B-S#cm@x|+$qqxo}t}}}3jN&?@xXvi9Gm7hs;yR^p?)LOZ-n}dP`?rCH$weJsNV?n8=-z9)Nh3P zjZnW4>Njha1rIsdyDyN%3;Ok;OkGeAy(l$Wm1fLv8R!wL&8_$nTgzW>1KYw#R_rG| zZpXVG<#Btca&GAk@F~wn!;Y|%aogGB7}oBtp6}-Q?y!gFdwTpd>}B-#_P7s>HADCH zxBWb?_FOMxO%7YuW6OFh3F9)EvX=|_vNz4aI*;`rds-Iv`u)PYWg?knBAI0(nPnoG zWeI2p5zVr7h2}C5%`y?qG7-%(Rd~v>-dkT-Q`Y6N+v^_K;BR^8FT7Va;PD@@(fftM zyX7VP)>6Kddj93*;54A}VG!|Ntngm>aPNK1o}FXhIQWLw-z=;wKi;GHSAK%W6ASI- zC;7ZuHRY!iTFXT+*!W2{e!3#9hNlWa6+MNHh^i8iv*8>dTcV?296VlF7<~c$3a`Ly z`mzz0!3r>6Dr2C(E02V;Jii8h;`s!)OJ$6=)WUz4m6x#6x*f8RgHEfie_d#cJ!d_F z+VnAf9eV{{h1cM9m{oW;HXG(ZePK!LZI5%I0UBXGEFzZ|dt6e84;Psp{uek=KI4JPCKMR@)fck+}w zS>R57h~szTcr}h!<9Kz+$c+!-_~&svhU3*ZUR_eP@&1w>;8UKDh8&mhfg=5S3X}DgE>(#ja6=f8;a z)#bs)je36n^3shdysyUlYP>(%NE}@r@m_4>{diw(RF1~?>hf=H{0_cX8<~Ufz1ry9 zQht)poeZZGb}s+6$6E?Fvkh-5zpZdv`NYC)cpt0CY)l!oF_CqJW1>!|iax$Ejptv( z^Sz?4cs_e$D%uFkV1-@$?S+!c*v3@lZb4P$?y`GF7OE@H^7@*>VYpt6>(!NaZEV7T z@8bH=xPBb2{{Yud!S!=+{Wz?s#^-8${yaW^9-qID&u8NEID8(5&(-)`jnBv7b2UDn z5{vUER~D|srZ2XZz!=ye;>LWG#G3jwkdIghS!J@~ps1=J^v8b=Cm(=WoyypY( z57_8$`ldW63}8~61ntM9K1}K(Is37v4|DpkrVnHKNXLHCv7cn@$BY3Iu|ImUy-Kx( zC8S+HY1dEM^xSymP1R!+*PGb~<{ei~YOJ zzX!%Vwd;kuW_FA2vC|%V?Qw>G7w&P%9@p+MchB-YPu;WO)4QHG?9<=)bkn#O4m#rC zg@?pK95VZJhaP&u;nhcuIkM)+2af#h(PNITKKjeweEypa-(2<0?D3_?M~~m~_>sr& zaQv9#_dI^z;}1Umu;Y(E>4wXWI`vuqW`Ae?8HsbNzxRprhMo7h^Nu^O;ruV1|HS!E zT=Dz`+g&j6f)_8CeZk@%$1f?p2EJP>hgUq|J>zAUw+QzS6qJk z<g97UUw(Q1iqBnf+ZB&p@%)un{L{a#E4!|Y{?ohv{JAT9?%)0kN`qa?UM_12 zg0humtAbt1-Y<^?yOqbvhX==$f4ThI!Exnhm7f)yQ+|~dALo`|TYhcuz4D)y|1>zS z{Fd@tRIItR{FlK6<#(0W20tplr~IDa;_~~-?+bohet-G>!6oItDSt4yv|^-{B9~W; zuCT_SVwZ~Df|`mwEA|hrt2oeF;9DwQub3I!S~06)PB5{ev0_m$sbXctdqHhQTgBR7 zaz%SZCb++%yCNSvQc)N-Eco59Er)Fx{9)Lx!}bjRIIM42U+`RHY~+~W`N(mR?*t2j zgM#(!?=CA8yRD1p4R#LtprDS*a4P^uSQE3AxZ_As$4`nWZdWLjRLNcJ0DBegEva^b z`T>O}%U)tty&P;;M(dZ&2}YGQ20NE6^SB&VdcHOoR<=Ias;ocQ+MNDHd4x{`Tn2QC{cD^~cG^p09m{x70RS~V)Nvn3!s^4l=l~(;pt6tZt60I4oHN%HmvxU|? zG1QuEhFY_&*6gG;+iK0WTCKA1)yBdSj;oZ78lxC$}?CIDON;^+)t4E335L{?kC9o1i7Ce_Y>s)L~=ht?kC9o z1i3$r+@DD9-$(A>NA6D~_irTkZzT5<l0*sf~=oL z)+boVGg!zoSjaQT{RFw6AommG{xoub8o57>g|Lu?u#kl?y?mkwQrdpzOko#1~#IvtUqBc{<2)98o< z9g#4Cuh0?q(h>L45%cB96*-4zALmq&Pn$S&Ap7D4w#6*A#bs=Z z)7TcL;ZhzqCg4NTuinjuUdM(G*QcMw9{2%!;4JpQ57^XG*aVlb39c+Tixv5L;WReE zY3za1*aNfJ1GCrzb?kvU_P{J-Kfzc}Fvb&%ancwk>Gd`A`Wj=KbjS4-2Nu3jaZuq{ zdigZ{H=zHX)ql_Gzi0K|v-TxI(C+ROX{m%stl!$fjJyCJ2G1L zwti~Y!UbA*EB`a2l^1E{MOwMcj7ggf?OOYynb5AqFKO{B*xs%+7h!isi!Rcli?nEg z7A?@CHCnXBT#sti0_+d{#EkhK)xsAsx?L+@)XEpN@+GZ&Nh@b*Z#xI&`0Q<)A?3A@G!O|0WaWTT*1Tm4G-hjJc?Vi>}VGI6?~{DOZ`i% z^t(yB&qdBJe3J!U!vfC_S>MOH`#s(LXme;LsW-;m??m#A)`Cm0bYFAidUyC8bK&Bm zb-b!j=PnO-mpj>C6W(QS;h~@p`bFsqa$A)$ki*^ih{Emecq(aFLmJkQhBfYf57MxP zG^`O<*h5@l4^pv)RIDKtYw%z^saS&t<4MFC60rs!ZYB|HNW>Z~e}qJ=ArWivV?1eC zqbH8k1DEK5>3Sf{_FXIzb+On&jo3mBX?YKy>q!#x9zNHTdgu;2eo9Ht$)x9G`L$v4 zYcct?2(Ha3Yb-p3OLIul$4S!1%T{{*exZgmtszZsCrxWe(;CvWhBU1qNoz>b8j`dI z@5bZX&G>dR$yq~k)`&IiL3-AZo;A34GwE4_e`n&}c+#_m^sK?b@#V3?9wcZDF3!Ql zIk-571g#-KYe>)kgg|?t|#F1c$^-O)8nz?ZmbxO)8omm9ZA+2+#Zh| z<4M*UlC=gy9w0?)NYDpK&>9l7h6Jr4L2EGPW)if9^qfp0yoK9yu;xsx86WIUa+c8c zF;ZeADKQdjrqT3UW6Ym1X6BHlkJ9wf;)owmc$U2qW2+1|<44l&!)f>7X8TB*J&N!5 z(dbbef0;JlmNws(Hs6*uACA}S@p>Da?sUg*4%s6ynmmTjE$%MOnktxK6|&V^lCUFi zcPlHd_mZDKpzs_C+fKr+U}to(F}iqLv&)YNKH+K&B;^W{az*5PSGtP^ddqySD%88m zYkoN%96Ti3-}UQPl6q&5dS|#oKWXd*?u?Keh1lpw<}K*8B2j+HcULj$GZ@bc^Y9&heM4{!>Cmm06Qo18_OH;xS(2fhWN0TD+C^ltY^5ye&`vtE zlM3ymLOZF@PAa5Hg-}CGAQ{pmLp#Y3YKm7#hIW#nT|eGUGPIKn?QEqC>5wKJ+TBgJ zS>0_$cbmoSW^ub&+-?@Pm#r;i&E$47x!p`|FY3mW$25@qW^=lzE1eLkA47flihg{> z%x*Wc+s*2Bv$|cszG7Clo7GvfI&D_Bo7L^*dZ&CCM7%fL>#r5M&FpS7yW7leH?!N# z>@Z@OHnY=ab{Hkhn!RbWx7&>EHe0*R)^4*kl-YT+HE*`&&DONpnl@Y0W^3APO`EN0 zd~Y{fLrs)6ThnH1yV)9Qq*jrV^~U*OvZ5qe@;+-ux0})J zW^}t5-EKy=8~0bt=yrM_WBlis(cNZr){IWucl3Wce+~{x%-RyOw&dT=rJFIXD~xDk zTn2~IIMn?S4vnOFK4}HdcGe4R;!&07JHSWz)IG$f=kTd}Gd`s^xkcW6lxy9%){Sf3xHcEpx@n2E zw8UCkVr}#~ahHF#ySs6%8`rvVtsB?6ajknZu65&D_hwv6;o3{MHVfBg;o2-*n}ut$ zK8QXKa_&`}dll#A{u|Dvhd4KX$TI3KT1Fp_@qP~z?iSa*o)kDl?DfTu#a@5HF1RU- zwd$??i?Pfwjv2-ab({(vTvL_Z@}Bb@ODeQ9Y_9+6OmphBE1lA$B~2M z$iZG961;hk6LEYTIXaFU9Y>Ci zBS#Oz@p0tnIC69xIeHw9k0VFNk)z{8sB<`e9F8A@v6z0wVhW?uzhE&vT0YU^FAI;F16ztt=gfgK&4Dw`fipkChQ~K<9I}YPY*PNX_#E*w>4NNi*71C|_F7$;JlE3)M$o=Bh zSyrPlFSM*aNm~AE%c`2)J7`^P$+{ZBx*E;88o|06!MYkPb`t%-!m40l4TBFYt?kL| z?aA!zSz065iLuQsEzzIokhQfXYir97tgYjVciHPs`=DPAx4;Wj-`!olZ6kMRhLy|q$qYgM6_u6>`L zZM45|1Pdz6*^aa`crQ8AYL9ZMT9Pj2BEvjnn1hsiWRDhefqtBed))PA zy50+}cb)uSxDq^EHCgAH7rOH%^SamFZ!mv1xcgT3aGrZOFS53)hRPCQ^S z?YbBf!v4#-YQj|$MrEZ@S!q;O8kLnsWu=+7&P*ABXIt?Ss`(|y;;fpP+ObM+uX3-Q z?zLHO=fx-g^(U8`PmzE6^cbHGZJ8Cg-h}5(_}zrti*S39>ntAPceuheTuZS8r<>TC z9rS(^?l$3S6P@0Kr%ia-gojP^brXHvL`F4{QBCx96PvJ!o({8Sd7fF8P7SlSO`^q{ z?su?N#dYQXbf3HW)Ow?EjZt{bDBNZg-ZHMQ8igMkg&!G(9~y-px#vsWbC)^UWi-w= z8W$Oji;TuKM&lZzaE(!T%_zKP6#ilq{$dnfGYYR8h3^@K?-_;rjKY0J;Xb2qpHaBa zD7@yr#fja;!|r0eyLj5KKI~T?_Nx#3)%AXLyAPp#e+Ey(-Lv6};6=E3M>wO5aSFrxF=22H{?@m`>Mt+( z)=R$CvH7>kIz{S7{zsq81zUul4yCPFdr``U(z7x_s-9u^I5dv$>GAjU^n1qc3}bhO-hM)FKcTmu(A!Vw?I-m1 zd&X@fiLe(|98i=(^Id&`e%rKzx407D6&D(_K2l+$o?jnI1;1SHm+Q49l(hLEoHIRo zA#cv~m@_@tFks&F__cZFM-L_pxUT{CHDI3fm?u5vNsoEbW1jSwCq3p#k9pE#p7fX} zp|#gzp7fX}J?2S|cI34quN`^q$ZJPlJHq^64+*eo$M&&UGFSn-xc=Nd=G`#Va#@kR(6+vvp7oYwQ#W(F81wreEZen91SJ+URv7eS2k#ArV;0d(5V+X^+Km!=+q0HdZAMdoqC~DFLdgKPQ6gvA+IO!*4@2eWJ7r$o z@68A;&uV#A%d=XZ4S!kdLq9v~eu}e0FJ$#XRxf1rLRK$i^+HxJWc5Op-09ZZY%%wA zPf@cSL~?|)=h#B6@eg-igu6xN8rj>7=B-Ba*1!fm3?J^k)QNWgVVq)tZ}ZcOHo?xu zd5w9wzG$nxP2b+?lMBu5?S1kA8R#%G7JAns>|@zWwDlIAMK3QnE3%aF`Ch-?C9&Xen|%W<^36dHJXZ{2~9-MUC0X`tM}@ce4IFMa4Gof>XTUEXzMD z;*u3{$^P4UqOXP`E`#%BQ^dtdO6E?7xzl0pbeKCG=1vC>IBWe?R&*^R7m$$)$jAj` zhN3VnJb)G+K-2%iBYvki_bv;v_9v*|5_H0PxtFfOBSE))C-OSM2I#edwh!{2_p5_4 z;PD^yTp+Gk0%cGR6@_z3hIx!Y)cmO=Ph*}BXKQcDNo{4<%SbthYPR~ns4`LJtV>bS zWSO%r%bazI6_1p?;_+2@4Z_^i439J64RF##F;_LG@KiBh^|tpKpwa5{`5qU5oDzF} zplqqfzr!-0T@F?Tm#y-;)5$Mik+(V$z6xI>?~j4w;G2af%=PvP{lQirFv`=6@-(A7 zE%N!nJVlOW zVorcDqK_ESM`C{|yb*iB>%W4&i0O-%zA)0y8tG?^^s`3#*_b|v%`7Zs*AF;ZXFZRm z!b;}hB$(>Qq(p~aep)ZTr=&3j2`aMn>}G1x@-x}yWBd%VK{z-GhL3d2Jz^^ zaxH&~-dxI>PU?a6_8NuzvWh#kc(*g;0bX+VVQeXcf!?B4dhOph(?`! z&lBX%6XZ^vh(?`=Mjf42OYYRMO1j9MS`m#pa;J`tTP>ndSMq5H?S;KP?gL|8cVC~| z&+}?o>o-}$jdt6_J+AclzAUHHmqaG&%ACGbM!J(Vbs`gWA`^8im@cxWPGq7^WTK9) ztR-u@$eKQ~ri-juO>eFinWz()s1tR2f~=_%nW&>fSBp&4(I&NIO&wWNCn^!zDd9?| zTG6&A$eKC~T!Mj1FmMUEQzyz>C(2t#`_$4twKPwys6zwoQ;V4!FmnlJHeqHHW;S8v z5{z4daZAXczmh?JC4>G-2K|)`s->lBX{lOTs+N|jrKM^`AL_`UI@+q1wyG70s}p&s z6LIMKmsZSQ3L7x6m&~aXb?75=!qrg?WKNx^L!GEYov1^ds6!oHzgiToPSjy8#x5au zYGuzx(stEY@d;y}$JwM;{Vbd`otUN*XVHn_KE-fvWFwsz*1LI^PJGuMwh?sTNZzGv z9vgN9->NkH-+RMY%p>WsPr?{lb1#q8a=UBk6Z^%DRgbaiFjhVKzC+)4Xk&*qCdt_( zIh!PBljLktyEbUo2G{vt$*oX^49SXc-iLENoZH2FX>t!u?xBYT_pbK++d2oVxt#mS z`la{Hz4y$$_qDlL-@vcF=T|$e(HTj0ev%vwa~)OY+YX>swyT6|JaVqotF^1NwpD9e zwYEuXTQPBs7Kgra6Q->R^8{Mnq~)zz-m2xTTHdPVty;cH%U2oEtWnE}|BQ71JGsKH zurC-Z+)vSSpv_()fEZ+O5i|(T~cZ-Vw^a-3vDad#DMtmmRcwt3f=r@J#7(!Jefj1bdX8;rWGDbDU7P zA$lU50;j@v;50ZLE_2e!<#2@vwNq=NSHaa#1J}R}g=eBS!cFi~xCMR=x591ki^4N% zy^VA?_m=hqWnv2DP*G?O=)53e4`>uBJ!dfl!##ciwty|YKf>cy-rw5eHn6QVOCvpg z61KC$YLv(Ap$c|@Px;Ph*b#Q}dS@8p`7R!ffb$y?dgNq1a&fSy{`oZQRk%yfJn2k_ z)q3Z$U|+I#KQSLWsDl0B0KN7ZYmGh&*2V+}0t+-a7!I+U`E&4jIJEF;@CEN324Ccb zdh2sjdsg0I5S@HIFFj)mjk>+lWuCL9mnf)l{rU-e^B>c^zik4dQ?lL}6S z@4#trI-CLH!JdnMdsfi}+Vg#L{Risd4W3uj7JPVKQCsk1e$ORfEs)9`GlI+E3a)?9*^Ap!}9!}sqoWOZF>eVa{Ccw?`GjKLe;B1`0**L*%?%@|O zQ4NG&di^V7GFTUKO-UOqvzA6qu<*kjDrwR!L(_GL`DDqd9P3z3nbNNmUN1dLh10Kk zJf<)YqYp0qy4S}$74C#!Z0U)fi*;f6Wu?w?EIr%nbN$Wvjinb9W~lHQ$NbAme^{t5 z{gL-C0%tdtUgo@`!E=&klwRe8-)mLLzOHyqQd_BZm1>tdI%`UAbrhD+cIxYGMq!PQU$*TA)Kz3=`6oLv}kc45TXg^{1a1h^UO zEsfY)8u=yIM;ft@G-4lV#6Hr9eWVflNF%jyH{1huh(spCui<`p0Gv%9`5iprKAwc9 z;AwaUeh<&WAN>7Kzy^&x2hYP_pbqNcZI}!5fL$GF1a@^K4ol(hund;N3TT3MNEVhx zQh@i74xm*dv}%M_jjV?*=+^!oj~k#D`hbrSv4$*CphNi=(Gn;HK1P&}5hZJ*{EKK5 zDj^2LVGEUk$=T=#*b26WZD3m%3EP7_uCqVpI{Ra;vp?oW$yR57%yst1+$h=V?2oz5 z{+R3RkGav^VGr07J`H=p-mniG2#2`l=iu{&c=U@NzXXTFm*FdL1n?)KM**M0Ss{t& z*Weg97QPPFHaaUL5w*TC`Ykx2a5C+6GVOIT?R7Hkbu#UBGVOJ8^bF^6j0d~mqjteZ z&w{hz95@%g2j_umqR|WB`|ty}5Xgq;kKiJ>7=8?wz@>0m;VxS7E?V(PTJcF*@kv_o zNm}tqTJg!~_0ARf3EW_<$Bl3k{1k41pTn(i8~g(9cBbz=a4$@TU&HZB%!*G5RO? zGdu^+TUGa>$Cu!5VCSd0vyIV@o)I=f)ukD#F3nJNX@;sxGotl{H=}RET$l&*VS)D- z!Xj7TzT!>lO!-#;^~ zN2S4GmH+XXVPeW3Ju|FLh5a@a_S;n0Z&P8v&6z4~mEVAG!tr2FR^Jp}<&}SgsW1)x1b>F-;Cc89ya0cN7vUxN8%&3n;T3olUW3=|>YD*G;SG2b zW`P`IrtcR|`j952V z2d?_p4AsA8#QN+u%tJp6z&{F&toTcZ-ytV@C;Y9D98Sj#H~&?B-$N|~D{@r-=m;9^ z5MSVNy{b$Vb{WntJStYw6|pZnVqbRTIQV+7RpcAN4v}wqems23>l5r~IMMTy;AA)j zWJp!x$f?GWi=5^&r~A$so{xt!z5cH6oaOoXs&YK&^+Ulkk%xonkw-kA;`yV&-y$z~ z{#Vam^!`i1QIWrSJ>Bb<{p}U6UkkQ~%<$e!@4ewOZ+dT**R#Ez<1=r0-5h)>@=oxV z$jYET;v|~LYOmi7UXHvM%#E~o-5P8YSy#9(x^M8y=zhTi(fvIh5d0>3QsMUKwQ8>1 zT-X?$80--JWyx;QUzO|_ofKRey*=16dPh(Z+cCH*rm|;jXS+6b@qE|d=ds;9-^=s8 zy}ys=`+B~g_p5`gjKYh?AJ~)54xWe!kg7V=n$y9}-@#Oz78V?zb z+Hy8e7E-c2?b&;ufyD<1H&O8y_4i8T9cyn-8 zbRw&V#p+IycIWJ&rj81S#&VgNl`ykr_@yWP(%mJ)MPp`LpDWH_JQK!qnc20>>{=H2 zx}DC}Wtd&d%&ui>-E>4wfD=7G2~_$ryOx<<%gnB2X4kUFY5smXoZPUF%0ij|G$kqtSrA*Y7z?!0NSMBa5XuX-tuZ3S;_ z1+Q!cuWV`Q1!_EASXjz>Tg`e~&3aqSdRxtUTg`e~&3aqS%4%k1HM63YvZ9uViNLiVTOF2|PC5T&; z4fp;hjKkK2rDfY#!7ffwHqzfl`P=q|g=M4VM%_c1+*#S~ut(voveOH1s`L^UNsU{} zn6Z{IBbpkw`n|*I_YTp_xM*g){5U?{&V@yMyts&ET*a68uySh#FX9JW3_pfT;8M68 zu7D@tNq7pLhG*dS@GMLX&WgMp>=T(AR7d6oRgs3E5)*$MS>*W=SRU*eX$q?N264VY zoNo~48^rkralS#EZxH7j#8sS$W9}Fc(>OmN&QFN*6XN`YI6ooIPl)pq;{1d-KOxRf zi1QQT{De3^AT^AqCygg8GT&QFN*6XGh^#8t3Ks$dgW!6vDKO;QD$xC%CLk-RuR zB94F4Vmkz5R4R$b7KpVaJ+6Zkq#w zI2v|@F|e!8?FM_w^L-lj^4zLsvoKw(1!SZ!XhE>h-@1Wzl-0>$)4YQKvPN^Gqx3ZIouO9v*#=bmHqODuzhPq?HqOGv+1NM_8y8|@BR0;) z#@X1|ShkZK;m#g+^|##$i!gH`X1-Cjr?ok!7hWyaA!7ZIG8qhAfuSqx_eo=EBbF|~ z(j{2hh^38K+K8odu(VNZJ&UQ0VQnHzeOII*Bhru&X~>8)WJDS=A`KalhKxuGkc1hMFhde%NWu(Bm>~%>Bw>am%#ef`k}yLOW=O&eNthuCGbCY#B+QV6 z8ImwV5@txkj9fuRt{@|#krB~IiD-oT>r-Z9quJPKHa41#jb>x9E|b~VXf`&Qjg4kw zquJPKHa41#jb>xx&}^(W8xJ-c4=@|I7@Ca-n2iTSmIb>PXXFaAv?(~itZXzZ8_mi_ zv$D~wY&0ty&B{iza;Oeeu(Mg&XjV3wm5pX)qgmN#RyLZIjb>$|S=ne-Hky@Pn6C_X9!S^VT!G^$c%4W4BX= z$DZM_XL#%x9(#tzp5c{edF5GNd6rk6<&|f7KidF5GNd6rk6<&|f7BSUv& z=#C8Ck)b;>G+Blw%g|(*s5<~$bwM~XF)VvVfzENeZ>TF_x}`s+|5E>?|29dt zy+|x~SF|lcojBL?`Km4sO0-ZnE*_F*gZgn$lEsH4SqDk>4oPyS&}PDa%D-bEXkE6xw0fzmgLHkTv?JUOLApNt}Mxw zCAqRBSC-_;l3ZDmD@$@^Nv(9G$)5O6CD&zEm|YGxkTy5MP4H8g05=DZkT6*iCQHI(Nti4N zlO3mRV-TcZBwg+V8uYtz?cFoG{Z8 zW>^>n&9bAj?C2~zI?ImEvZJ%?=&ZXQ!-P9b6xY>;wXMTy zP`Q%t%C(#Y-X#QXN~2lfiA1!EKSjO_*KT zV3OyzTTS7dfs%xE4(&3hM>)0e>u@5R9iHImWWLKmzysLKp$EhR0@ zqSn&;WMhBhZx4d1u4YuT8P#k?HJee*W>m8o)oeyJn^DbXRI?e?Y({mNQC-fsNIGxn z{c`;#quO3E5@r;d&93H(S+b%m1GB8zENeE)n$5Civ#hydr4`Deu(GCYGN$b^rtM~4 z*RVbjmWv8KZ2TTJeh(YJhi%^zaq>9Zz9-`3akhOA+rEcw-@~@=q49dy>OE}r9=3W9 zTfK*^-osY!VXODB&wJSCJ?!%y_IVHcyoY_>!#?j}pZBoOd)Vha?DHP>c@O)%hkf3| zKJQ_l_pr}<*yla$^B(qhk8IR>*{JohQR`)+*2_k%myKF4lk|>E(mOIq@5m&*Ba`$_ z^bwc>kHTZ{TlgJ30Z+nH@H9LFzlUex5Aa8r3e(_E@Mm}qo`)CVCHNamhnK;*wNZ5y zqOZeDy5n9U?+Gl|(uVm6bQ%_L?siP=nI zHj|jmBxW;-*-TC1iyXvO)=2 zp@ghZo2*cqtWcY*P@AmK;3)v%-m-8N{@dk)CkD(ZpDaoio)5B*Iv*dN!4bamW$&D% z^2a$Uf1FwT%!%GP&pVfU=MpOuk1hP6`2X9*|DP}Z|L5ZWe<}W7U;O{CRxciH_3W|E za1OuoN56Hn-80A9$+nkj3)SLr!}-Ux{Nq~w@kzn9g{x@)6z!j){Zll5oaT?y{BfE; zPV=iA0f$&y_Br@G9I72(@ZMn{9!?W4r%B^9X`CjFJK3ntnyB>wNgG@X*TGwP zuH_5Y@`Y>p!nJ(iT0ZbSeBfF>a4jFWmJeLZ2d?D<*YbgD`M|Y&;95R#Eg!g+4_wO! zuH^&Q@_}plz_onfT0U?sfAt>z>OK6`TK?)u{MD2AtKYUp=Bmg#NENQ4*-|uHie^jE zY$=*8MYE-7wiL~lqS?aT1S#4rMZ2YFx0Dl>x1ilpv|EaHOVMsA+AT%9rD(Sl?Uth5 zQnXu&c1zK2DcUV%HE_ym;1n&FqUBPwT#A-U(Q>KiD=<@B`VA1zr`_UKa>i-6xU~{> z)=Jb_D^X{yM4i>0aqA`OXudej7pM8+G+&(Ni_?5@nlDcC#jOC1TLBuU0pm1aoCb{3 zfN>gd9Ss<#0pm1aoCb{3fN>fyP6Nhiz&H&Uw{kR23&v@|c(h=pu5qs{0VmT|mO(jG zz%Y5|2t=V0V$J~G!lQ~TwA*qgEbizmzDnosg*%O-PNv@5345P(y5f(mdDw#1h|?Nz zS|d(t#A%HN1Wz}(;RV{BTjR~X^uF}5vMug zG)J7~h|?VL%4^_SxDKudC+b#C;t%lYD(`?hA*>pQ|CM*cJ#a7FS6CmbSBG*5tW;N} zOKzYWBwh#RuBOd62!02RmW- zFgsVj7*v;h$>ZT3zvlg8i|4By!8SUYZFEG*sUmgX4Gt(d3(gO|wfP;CUKWgUp6;kp z6+xY+JIZ;wqf}QNrAq3kiUWiFRYl#uqAS?K*}9{gtvkxux}%(}JIdL*qnxcf%GtW3 zoUJ>`*}9{gtvgDKKC$U6RcGjqa)$0GXXuV{hVCe5=#Fv%>nLaFj&g?XC}-%7a)$0G zXXuV{hVCe5=#FxR?x_EsWiFEO-?PmBdzSe>on>BfH_v1(&txsHBp;})AvU?eE|k2u z{u*9Nj+c_-rR2mYQ{s>H;*a&>kM-h@_2Q59;*a&>kM-h@_2Q59;*a&>kM-h@_2Q59 z;*a&>kM-h@_2Q59;*a&>kM-h@_2Q59;*a&>kM-h@_2Q59;*a&>kM-h@_2Q59;*a&> zkM-h@^*o<7;*Tlu$CUVEO8hY^{+Jbi%!)l`#U8U_kE!5?vXDRWcoAIe`H$fexB{;9 z-qjv!#0>3a;w>e3O9}DEl=x%4_+x|kV}tl(gZN{E_+x|kV}tl(gZN{E_+x|kV}tl( zhxlW7p6pxVk1NCmd+G!Oo=z9#2XihH`a?c){8gRi#OJbH`a?c){8gRi#OJbH`a?c){8eb zh&MKfF{Z>AQ(}zuVvO}-jA4ASUVO1$e6e19v0i+!UR<$5Trn-Km=afP;8m^VRjuV! zt>sm%sm%sazsazsaz zsazsCrt&uxgBX_h$?r4qN(Hgm&uGuWySikVtrY$zN}bZ zR;({8)|VCQ%Zl}7#rjfWeJQcNlvrO%tS=?jmlEqsiS?z#`ch(jDY3qkSYJx4FD2HO z66;Hg^`*u7(qesSvA(oeUs|j$E!LM7>r0FErN#QvVtr|`zO?vTTKp|7{+1ShON+my z#oyB6Z)x$jwD?0Kb6; z;URb!9)T(FC_Dy_!*Aht@B};wPr=jh4E!Fgr!-< z(yU@>RXamS)w*ti&o-VihZ~ij`Q!N~~ffR&Vt{yPOvSMD6#$WlDDa+ly7F@ilmuoyoR z{DIY2#cHf#HCC}2t5}Uyti~!5hiq%-fYOG>4R@I%WxEn>A@MJgB>eIU5d-5(HrC^#tkaByn$k>D%Q zDZ#g+j|SU|`fL+@LuJ}GyzXgt^@x->Yba#Zk>$|~3aMh7dk z@IWnmLkkyc;Sw!euZ8`Ud-(gF!PZ*3Rpq{(@2BPad;Cl=r}DVq*vhYmQIX&)m8S-g z%I|o7TCjiR=~{J0P+j@6;4#sQtt(#-j;Wj(Y+3n6aB$_D!7i1vT)$1V+_k}>TK<~d z-T$JMVJqCxwjW$Qyz*yQ+I~^Rl0)s;w(hF*wqV5YqeLyogzxCVv3hXqP!EnR_TbQ` z^xRmzw!L1d&>JOsV5}Y(s|UvFfjjj;iR+!M2Ws@d)q3F9df-t#FxEYc)dOSoz*s#n zRu7DIFXw6D30iPT@eW4Y)!SnSZ;!Q>9o8(YbVnWXl{wMQf2yxwtz)m9nLR_fyNpQk z2elI_WLOPJ6!~CT%P-379}dS_y?LVkKUr+{+iD1%igDjnljAJ4 zFl776#0}MqDRp*ixa0Q%_Q)ND1Fb9=7u==VG|KrNC!O&K21`56<`e z0_f1jW8^b0D9kcWmGYg(XzvEO%C+S`D}1*6SB3AF-|x)(0}F>(5pbY9JY#%x68hG|*d1WaWEh<$Go2du8R-NrW9?4D4R8A076zQ~%SjSK)Ei z@art$>sY^ear&ex3H93SjsId z|BVJX|w0nR{WDYvkcTUg31 zEaeuKatlkjg{9oWQf^@>x3H93SjsId=UL&ctngMji*%_|%UR#ESl@Zpcb?_l!t!om zdAG2yx3aujbOaDQ~3Ri0;+x5{^f`;vQQ`+H^kdu983 zW&3+0Pr#G#6g&;j!0+MNLa%IpuWWy>Y=5t8f3IwRuWWy>Y=5t8f3IwRuWWy>Y=5t8 zf3IwRZxsJ!`+H^kdu983W&3+&`+H^kd!xI<99!5ww+ekc3NTEX@zYkuiqIu?7L#hz!e=jBY2awbVRlcbzUQobZ9Uy_zDNz0d{Ldlp{&XktF3vl5!+TIg+Ft zNm7m^DMyl&BT34UB;`kv@*_!}LkrKLh3C-1b73&!I&wB_)@Vl1oX+rKIFhQt~J%d6aP9X`bhh=Q-qg4tbtK zp68I~Iplc`d7eX_=aA<)q*M>B;|UN zay?18o}^q)Qm!W{*OQd%Ny_yk<$98GJxRHqq+Cx@t|uwila%L4%JU@Ud6K-8JTE2B zOUd(6^1PHhFD1`Q$@5b3yp%jICC^LA^FUg8Agw%*Rvt(z52Td`(#ivA<$<*FKw5bq ztvrxc9!M(>q?HHK$^&WTfwb~KT6rL?Jdjo%NGlJdl?T$w18L=fwDLe&c_6JkkX9Z@ zD-WcV2hz#|Y2|^m@<3X7Agw%*Rvt(z52Td`(#ivA<$)x5AW0rbk_VFHfh2h#Ngha& z2a@E0BzYi79!Qc0lH`FTc_2w1NRkJV^RX$Vwi_ zN*>5c9>_`_$Vwi_N*>5cp2sYn$1I-5ES|?Kp2sYn$1I-5ES|?Kp2sYn$1EO3o~7|# zELrG{t%DS#Ap9Uy_4P=dc{*%$l$gQE$m!-cf-_^`EeAZdkE$KHc<3 z-(KL`o9fsuFE1hc!%9$gl9qo?dAPrJ z<*lv44{LnoUA4(o^R5`yL+Vvcd`DMZ8Ri09Wu;%+;MY22$Gc=`N2vup)~|&1#li}Q zORSS!>i3qhO9t)VEZevJ|KMEUz3dfe3Km*dyO@8m#NNa>Yj`PpbeYwGykYkCOYH3? z*Xw6*_XY2F)lef5Q6jEqjWczL{SVIZ)lOgWx#$x;@S+?^?0nWW|1y z75iOQ>~~qQ-(Z;TlhzDCG2e6d(}*u<<%jqwnJHQUl0o&=2g2_E4*5P z>9dCB%p2i)8|@oh(Hwr$nQ-2D&1YZr*;oB#iO+_!bAkHADjfMs#$Uq9yrG3Z$6w~@ zgSpsShrNybC#UXucTw?bSrvLLe4gy4^_l#eFizGRu646> zxzuQd_i>0dGG8t{FRT5$wJ%d$Ijs5I;2KLvi&oO2m9*&OHLd4sZcA#k1>3S}LyLAX zNwJWm2*0&*=zhaGXn!Yb7O`a4`-QY$Nc)Afd+9aj7qA!?xR>6T-79|W;bNbJXKOdQ zcm5zd_+-EOZEJsq{Oq9Q13&wdZ0ZhIU*YQiwn~|+&vo?{S6?%9|0!4R)DsDJP^?zw z4m#aIyF2)0u!9Pu+miwFNuOVpZ0WqD5n8_$>wBcrr}ip5NCrHkt?y{--R>^!?!uFO z?vm%mO2wPB^Cq$(5vy``(65~{ysGdgae`7il(#cS_b5!z z{|Td%(55NcbPqq_1y^ZumAhQ!ouRAT#k0-uY%|(*i*`NEvt6f0`%C#${D38T=hNEv zv@y!D&F>w$gB#qz4chs%D^KIK=lPoXpuyhCW>RH&ut4qAMI^*xd|1M3j2G@UXWN6n z^V*k@9?M~cs#8sNMmKwJrO&M@{Mj6CGl$m(@B4cztnoW-JfO9nCwMzn!c545rRo``1@L7dB?I3D4-$7%39>3xe94OXOIRz9(?tk|+u z>X@s(P+|S3UAWD5$2Lc|gR!tLT~h6Fe~$;iXFUHboK(0nI>9QYn^ng7na7D9Z-+bJ zPOt9*Rcb3gZyo5F9_3)1q`s!|GPoSBfGgoDxEg9ye%RkyK5N=zpMlSU^`kNCM`PBH z#;hNWkqWWT!RNs`(wKFmG3!WU){(}(1lEzptRszCM;fz^G;zE9A$F4cIR(BAr^0vOG&mjPXkz0*yJFfEI}6T+ zbKqR~9-If~!v*kt_yNf4#C`}rf{R?^Vz?CS%!%2V6T1Sggsb3csDW$XTDT6bho8U= za3kCVyyh6MImT;_@tR||!7pGU{1U83k4*yW+hcdYop2Y_!rgEW+za=?{j8n`;5YCf zJOmHJBQOOXg~#A=_$~Yno`5IeDR>&5f#1Wk@CW!KOa(O`V$)UjFmp(sYe}M@*A|Cv@y?c?+w||?>$lvl_}n)> z@~?Nx-VwKrxa}kFee@H9uY7Lvf4(zwt3x;cH|DsVyZn23%yFCk6<>$%{g3~`Pj7Yp zR!?nn=2i>C=i#Tf9=7w#TVFQ#J6pfLbz+;HwmI|P{>sa)dGR*)Y?B?iai`4a@|`k+ z|8_oR^M7M59`meU*zE2GuQhm$;{QIe>j5AAH)i&j*}MGHyC40`rdQ!-H~&}sUUs+n zyZ*NL&$HbR{P@2;e?Itc_XjsU+w8{q<*mJ+6H4-+@Pm|2DlES3daq!~YK+eem_+Kj-=mi<}m@GzcP>M{aWl$;8OL z>Ih7ZejzwC`o-ue!F$nDqxU*rb+Y$DZ?coU*T>#l!`_?wf01`5;8B+6{`e;>$xIRf6(NKqL=(XU6&FCO z;#!xw)vemrTHAWMDLuA=wYG}3)z-FZt+uthb*oz~da$)1f~XKlSS4VRfye~1PDmIC zl4yPZpLa5WfOy*aJJ-3+b^XcpC6i?4ec$JPmhbnupZmEVdauo#?KPUOmF8=v`L@t} zTg}_nMG`b(13kDQy}GlO_Dj-!n`ysJ+HV8x*FyWHDA*PXHc8tx({`K9=T_5qiw8a_ zSN>BV{(#QgOy`BO^EKu-9fO?&MB8m1EM~xbFKND)G~Y{_?{%B+b(`-c&G(Y#d)?-H z-R65q^Sz|`UebIoX}*^<-%FbBCC&G`&G)*^_mbv&N%OsK^Sy5Ky(B%DFyCvV3B!C* z9W>!eny`Z=?4SudXu_2=;YyltGfmh^6K1gxhJtHkz=FCVZPF zY@-R=a-H0mYi|;5n4}Gpv|*AqOwxu)+Av8QCTYVYZJ4ADleA%yHcZlnN!l<;8zyPP zByE_a4U@ECk~U1yhAG-GMH{AQ!xU|pq775DVTv|P(S|A7Fhv`tXu}k3n4%3+v|)-i zOwooZ+Au{Mrf97ka(M z_c!HkXmHNJ2H>|J*a*&O8OU!xumxJ7&AF@AZU(l)Cg{*}JN<66-kpLi-oMq)U2;rp z1Aa;;v#fS9%W7HXTkVGlPqb*2WxiFG`6gNBTkVeteRqw61{eVb`gsrx4&r=y4TEz0 z&i;r&d44DICgay@A9Rjc;kkZyo)dJ=_dU!){&C;=T?Sp`GqTwY3jKZd*6$cq+Joix z)`aKZwcG2`Zm&z2k0H(v*y)^uMD$xmf}h&E@kc+;g6E<4Gz{n9iF{fEHPE7$=R!fy zCL4Wgtlam*;WV$W^n0@(S?OD2x57R4b1d|?w}N=gF3DI6bOL+D*o#LXJX4`9_c@rY z_0Iu2ICJO1%Ry7_EB^j!5YK%LDr79-ug>MK&gHAl<*Ux+tIl2FeMWP8E>`B+$!UK@ zDo>V^yw{E5Lo;56aBuZyUWQ~}OW-l+;Vo$44OzfruxW>tUbX+PL=?i2GFJc3ctrp2 zdoPEu&L*)uBO=y}(-GfJIcA*()=BZ5G_c4BF&X7zG7c4!Q6MHGpM{*-?2{Y#G#c48 zeU=z+Q!{TK%MTeYhb zb+Vrour4JWt%O6BaH!H{i#FL`3CGB2A1a2Wyt^xTd)}Z1R*Ax>mT__oFHa3WbgkWh z>-;QQggU6F4!U@QUZVt-WPHyR*#9-mpThjJ2d@+VVtnGA*~~k`qYx>?97)XaHpXbj z82`xqrr+HdIY0MXk%HXsL~^jiw%l7H1NqPcUcVtm*P;BR!*~e~GGa~$RvST<>isFb z{tdk{JPCWK-WQ(xv05*yu&yw`Gkzrar5J&Ku+Gyg6Q1F8j`Kk~oe$c{@A;_OdrR%T zrS_Uxt&7#xvD)uh?YFG9P9)`OR;y*TVpgkTwK7%D%tQRb6yzBcU(0*%g~zajQPJ*;SjZJO-{XI5NyT(;i#V97F9uI7u|e@jkJ`dpqdf z$kBuDiyS-X=aGqa806Vukmm|JJ-Xq&-ski6i7`G=yvsZH>U*dAjB=k5yWM9mpW4T# zhVJsILaktPMmIKU1$A0MeMT>?qZQX=bYkcmT&pECX$dV_!a90TABmK^)Bb5K_!v$2 zCnpNt8!2|DW8CQ|En%RVAE@S?ZLWs*cmibKRn++VPJ--zHMPIBe}bMdWcWw`}D50*8iSq z3+?u)9TwW2W<=eKf>2Wo5%+9mShdT{$ zKiXr2o;cF)!}H8XiD@Z>(OwrpF_h3cV|*{Q8gPKuGCj~R;ko85G)&*Q=9_7lzH`mP zvmxU&On9z&*iXZ?l@4nI9o8wfTBq0=me!uzE_-eFbl!Ob-O~TO^DT5s|Ffv$bjudH zWi#EfnQlqaEnDc87P_T{Zs|Su{GDKSzZ1Ax=#}v7^9{60oL1>Og)2#`Bx#j6tumWd z+5Hr*I6V@lMdIlm-)_(ECc2})4rw#C{4uDZJ8I~T8oHw#OaORv(N7ds*QLX>5U}4(MfM~(i@%hMkl?|Nl%35pEuAG4fMpD z^u(UdKX0KY!t>8-X^9QAL_F(ddnewqcjB#GqRRH=uM0u zG+^f`7YR{W>qTWXiOO0pDyv&mR(HCO-Y;sa?<9*S{q8B~>$gs*NVlBulnQw~!akdc zrb>vUS}T%jy-2F?q={~kREeBJ<$xRyhr!`+1USI1#46 zNpLcp0;j@h;LI(19Nx0W;VpX{-m=Hxt(?!nzZtoeW0$l&5v%^!Be>2G#dRjoL(#M0 z95@%wgY)46_=fTDdYA^&;RbNxyZss4?9bR1z1Mqw2KT|w;TP~rcpz9|PsR#+GFI4= zvBI8=74~GTi2fe_01v`L@Gv|A#$0t7ef_ z%{w?|jMt@LMk~^)S)^5Sns*NJ-I+}yt(rwzHHSPT(yB?MRg*}oCXrT6BCVQ4S~ZEZ zY7%MHB+{x$q*aqht0s|FO(LzDL|Qe8v|2CHYQ0FS^&+j-i?muV(rUd(tMwwS){C@S zFVbqgNUQZCt=5aQS})QnA<`-#(kda+DiITHD$*(;(kda+Dk0J;A<`-#(kemSB}7^! zL|P?8S|vnUB}7^!L|P?8S|vnUB}7^!L|P?8S|vnUB}7^!L|P?8S|vnUtruyvUZmA} zDsjC?tMwwS){C@SFVbqgNUQZCt=5aQS})S7TclODNULs#-r003HhwSFJG~3lUeXBCc9RT(ye0YK`$!h`4GM zan&l~YR}PDA`V4XB}7&wL{=q4RwYDMtrc0dR%F#$kyUF&R;`W9wrc*QxzO(-&S$2A zXPFD#Li7lT()lt9EXq0^J|;@)Tv>-7mT&x#U>48mtbu>BO8&I(&%krREUV%Rt%@%k zbVu;~pdSX$n^%qIHJxQe{7Ea~Pg)Uw(u(+#R>Yq)-&$ft{7G}JCFWd9tcX8pMf^#g z%~`yfvv@UU@oLWE)ttqvIg3|w7O&s&nzMK{XYp#z<<*?at2vifb1tvuTwcw& zyqa@)HRtkb&gIpd%d0t;S930}=3HLQxxAWlc{S(qYR=`=oXe{@msfKxujX7{&AGgq zb9puA@@mfI)tt+#S<9dSn!@<~p;LQnQr{%~MD7YOdqe z?Bvzlo_lj7*L-y{Z)PQLW+iWCC2wXWZ)PQLW+iWCC2wXWZ)PQLW+iWCC2wXWZ)PQL zW+iWCC2wXWZ)PQLW+iWCC2!_@-pu*Dne%xw=ksRH=gpkYn>j!C_wWaJ5dH`c!Nc$f zJPMD&pWtzL0-l7Y;A!|XJOh7sUgz3iq1EmcJRu(uQD#>I4YgS0$!d`&;(46F)f;Wn zCEDary5(;3iduT)ulxx|;*Bk4#vd`4%{Lp)GaDXnHhhM$vdx&cIDO^+{hb_PEaDz# zl6#s#?lNoK@Bd}C+kck3%gpv)iObr<%x;&NT(9R~&oj5(vn1@uDe(W3D82t1=gju^ z`~C0i#M+mK>-Dt1_anjMyqN>dm$sU#oMNW@Sm=Ao`Ycb9NO1Ft9{sl7oTA2h+vbcH zYe?v|%DXGro_Du?KiP`mBUTK5s}FSIx~+I_4vt%n-@-`Fzv8tNUTei+ui~%n{&&*$ zxAOP(^xXkB?VWQ>@Y|e;@G&^YNwDX_d0w9n7kK?~xX|m1;9|H0E`?9PWpKH_e-b|B z^{3$quRjA<2EVn6*JK5+$Ld{=)w>?6cRl*tUdHXvqqLVX`b=Z=-h7Gs@g@GluC*<} zwDc;?P&Sg+-HOabJPj3MeMjt45;3e+Mz&df`1zpI<=;OqIKyf~H$P)_U+JtOTxk{I z3N!OA<42Pj_;x1JN|4m zE(yAgs&CqX*KG%0caHbif!A#ZUUyEHbKH-kyh?a#Zn7KhCS~bXmd(bwR%Ll-x0R-~ zJT%ojG^_iqG;QFa*|6J6Q%`24=|vuzo)1`MTF`HmX$=oePiB>=HflX|Qq^{`jZ z9#)d7cUwt%akrJE9v+z&d199H#Jsr63R3UN(T4Y}91YOIcCHvL=Y?6$3)903vmw1= z6s{13t3%<+&_#Z4Hw7fwn=@x-KfVp2RY zDV~@fo|qn!;(9-f#Uo|qo>y_F~C?aazg4^K=_zm=bj+Ch>hW;stx6;DhRPfQh0 zOchT|Rc2+UnkS~3Cua3OS=m{`3)91sJVLCseI_9@XS~UwfBJQ8CS2$0)MnOU-$7Xs zz4r!cb-o@vjbeQ%vYcXF5#;O5kLb;JP_D=7(GO6r!_z+8H-o8q_RlESizwIQ^zc^e z{)bSo7wP2>^W{#o=0BK<&8K4Xso2Y?*a=i@z7Zgwiv65X;7}^IK>zs$ullce)qlZj zcRjD&^}KdB^V;1^;a-(>T5xUF>Aru|_cKJZek{0y+P#C?op0p0gWAnEdK^OWUL;On zusDIily5%en?LZmAfNL63FZ3}%J;TGKM;5OL*MTV9u+rGLjmWD8#sgto^QmNX2h9h z#F=KqdD)2bvJq#R5oeka=Vc?#%SN1OMx1FzoM}d!X-1rBMx1FzoM}d!myI|t8*!!? zai$q@UN+*qY{Z#HVb7K3`#7pSpK8yi+J{r^B~*Jp)t*na52xD8srG!TJ)dgN zr`jh_?Zc_|;Z*wpRQq_UeK^&A0M&jJ)jphRA5OJTrP`-b?Nh1tsZ{$^s(mWeK9y>p zO0`d=+NVpf;RQpt_eJa&Hm1>_#wNItmr&8@xsrIQ<`&6oZD%C!fYM)BApC}fg zo@&2~YR@U{$BK7o3lK)p|(-X~D+6R7tI)cXYLeFF79fqI`nyU{$BUO>GUQ11oQdja)cK)n}G?*-I*0rg%$y%$jL1=M>1^GUQ11oQdja)cK)n}G?*-I*0rftgdcT9lUL-EzkjTMU;m20X=3s`uTQOUX9d5)9 z4`I5YSqBB5#CC<)ZeOcs|FKJt)gvk6Gcevauw4|}O&N4ya4*I?7So+)l)NEo-j^#$j;e+f}Gdlj>uGCxXO1*`@?j*jtv-s+cid~4-= zYvcIV#`2@>7hM~anGgMvAFYfZt&AV7Jh~~EVaMYPJ054)y?BefC&$Gi!TzyMv%BS>eKBNoe5&674BDci023Loc=jRw6**n7{Z?Nuq)(ta~Cs=o-(YQG? z&!}Uya1VRPDd9Y$-cuzqD@5;jimb><>h6V%-n>~|4RN*mTpVO zEox0_FKbeJTay~1-WIC2O7+&R-rCh$iF%u--sY;eP#J|!u}ax3T4mZ23y$Sf$@c-)*7q zwy?q$t@y{Rkjo0sWLoTemiQSX7TiJ$ZlMLY(1Kf7Vi-$2#uAUQ#A7V+7%M!e z4$~1!;7>-cVq=G z*Gf@NZ}4udQqpQOfYsJ}*YJG3X&tDBC#%=%wIUNQ_(&!q;5FKzhj!?s9cI!FGiisP z(+=}!hncj);^{EP zZzi6eiKl1c>6v(XCZ3*&r)T2nnRt38o}P)PyYX~4p625sTjiDhRCHlCi1r)T5o*?4+3 zo}P`TXXEMFczQOTo{gtxDhRCHlCi1r)T5o*?4+3o}P`T*Wl?j zczO+HU<=@oc- z1)d&+r}x9tE6m)+;OS48xfSB+6?i(C@vg=2^h7+}iKjd9^gKL04^Pj-)AR83JUl%Q zPtU{C^YHXMJUtIj&%@L6@bo-9Jr7UM!_)Kd^gKL04^Pj-({u3j96UV-PtU>AbMW*W zJUs_b&%x7k@bnx!JqJ(E!P9f_^c*}r2T#wz({u3j96UV-PtU>AbMW*WJUs_b&%x6R z@$_tj5sN?%9oA5n~baLjH~O6GQ*54Jw}#fdStmHQfOrPwUMRE$g;+$@`{n; zXrsh-BgBbDh;}2xKE}emjSPpU`R4Qd12+XPr|sELD zgR$;PW8L43br2itC>;%9^>ELp7Lj&a-FApz|)=M=}rr| zC-hDj`4@W9IOcu;b3cFquEp9%Vu4Gr_NkcQGgj3O$5AO`;LXOsn~i}t8v}2~2A?qw z-iQsZ!Uh*$gHL1V$yUBjQR*rz`~YUS${2Z5EEb%M9X_35huOx-y;-A-HTGwXk7k(R z3s#b*V&Jo|?*uDDA2Dveh9xdFcD`clybnv9Z2bIX?4{s~vDbrdV2dYM?^VouR%E() z*^QYw*-Yc=v&PhijH$O8Q@?9Wy~lXE!C3kmW9e1qU~T4KKQsUOqcQYaImqo_Q zna0aY{+Y#%o41-reb%^nRi8DDjmPEeIxkvmUbML1ylAm`(c*tHFIsF~w7B2AXt8yf#v&P70jgik9 zBO8s8jmF4EW8|~O$VOviqcO74*m$C`@hoHFvBt!+jDtrQ2d5YZKV|$o(fD_kaqn2; z-dV=FBaCsMG{$|w_;!i$?P}xB*Ni(y8FzkX+$k{b9B$nCopI-v#+}i|okNW~zclU~ zW!$;VxO1Fw=WE8D*4*zz_Tkk(+PL#6W5|z;AwM!+Tp8A^tgBms>-FQm(AsnK<(u^7 z2kGocx-TCdOjJ{!)i?gGZ~Rr?xK7{5(>I1uMEg=i!}@B6w*D$TeVjfY?kIo2)fe(2 z_0Ia=pe_dKabaBFyLw!+o|N7Zs&9w!eT(&+cl4Y_y=Ad}U8IG#Xw3)c*IO`uEYqS# zYtgw{^l<(AaLhkM3tk_|8W>OSZxg$cbAI?0t9{?sgW+#-X2oiw3*Ps)-gl3W-5q<- zSNf;DKH)3B^u6#acYN+ga-Yea2F-Z~k{ z{AYIje&^rASC0%SnK*3Xut_Hj89#JL@2lSbk9d0MvAwT~bB8{+%h&3m>90whLznly zD*5Wpuc7ajyfCV<Wibi zYgA|9kkP|;e4SC8Tbx_8%Ks-6-%$Kw@p~mNlpM43%DcUKq2F#dJMBtVo;u~!DPy*$ zcfuWH=iRS&{d?a};k){O^?suC!ToOxExiBb`+s%+8~0y)K=}bnGhg35;Dzv2*`V@4 zWs6}-dHCw5;p+n<2S&=Lg#RD7&w=9)YdmPmL027o#vunCI_c2s#{X!1)nSbjhaEm> z(g~AJIHK@~%a2JN@uMT2p766HuRH3Nqh2_A=`q8ONwM%D;om2HYSR6a%lm&#S}>`z z|IfR;-Y5OjMUyX@{Qb$l-{ouhgu#5+F3*ZdQA`#SmlDf^s!|G)EfO7i5to^sGBN1c+~?d#-Ie$oFo=~}(< z)PLpc$x~lEt>oYP63w?y^#16pkw|o5w9-1=lIWVqnLi2OQscI?8)8163^uG*}j5z952H8fzlg_!Pl zJdU+y4I8lCD`pKn7_R~2Z82+THfvaJ*03D=%`$6PX4bGA3sz#mMl3krtfAVhp)>1r z_?Y;@bH(vJ9MogK`DP8vvET2^8k)@-n#~%Pn>8#S_#98Moh5_pD#3^cnk_6hTc|f% zs5e`vH(RJTTd2oo9cByl7_9@Nb(k&Gn=RCvEi5-%*kHD>+-zaF*}`(Oh2>@o%gq*+ zn=LFiTUc(ku-t56Idxx6-B)9{gB4s;T>G>b@GwRb#no>b{z~ucq#+FmzV!lSq*GSzrV!uZ0*GSzr zQumG2eFJshK;1V`_YKs219jg(-8WG84b*)Db>BeUH&FKt)O`bW-$30rQ1=bgeFJsh zK;1V`_YKs219jg(-8WG84Oq4o%N~qnYjdxYALQ$i!C1By%hrnTeizH;W7%3PdoY&$ z3YI+(%hqDqS}dE7W%ICX5p~~8-8WPB%c%Qh)crE*ei?PYjJjV&-7ll=mr?i2sQYEq z{W8qF3^OmI?w3*b%c%Qh)crE*ei^o2M%`Ca_tn&WHFaN2-B(lh)zp1;?(g9b@F4sV z9)gGA5qK0HgFnIJ@B};wPr=jhXLttw&a=2yyZztc?9=2T9U>R$5V=T)q&+ZS_Wi4H z4O|a5!Chtsc1dORX6gv!pX-+OJ}UoQx2*S35yOYmBPI06f%M2Z^vJpC>>Zzx7wAg3 zIfGsVcL}qB{=Huolqz>vpY@sGA6Zwz)gs_`w`1=ewz{)z+3*>=C2L@+Thw-l)PQ**{1bu z^K@@1?OS=LV}sp4`KC{X8KUZZvM%$)t0`9+~d>ydpSSh)#yx+t`p{?={P`913-Tdb43t#wzpT7|yXpzrlW z!W>CqZG_p>_IL&Dbm<2?SNcl3JXg4fsZMWOU_QCbJaWF$MwK?bqeTgGw6R9@)~MdX zTutxDH++Ga;BnEvMTSP#ne`P#CYuTFZ64!4V}mq69~j;D{0&QR4Y;&pi7n zo_&gE|BB}>^311u=3E?7f%M(=Ro4IaI@w#DWVu7Q`)-UojBy%kCu?jN3L zuka)*YG(&eYUlkkc`eqiU(&8$!jY4WD$bk9a^6hV85F~Xa^qbLmqv>EUsp+X#+{w6 zy_9J$W!g)b_EM(3lxZ(zbV`}_Ql`C>Ih|)Or}K=|qYuwI!8mlH6L+TgeviG(A0F^d$lNHL2Pvq&+E6thS%ixjg+ad=)) z;4lIgwTNWtC!9DQ1;oRw-tcVpb_;m10&YW|d-A3D?bb)G@0R zvq~|m6thY(s}!?JF{>1_N-?Vxvq~|m6thY(s}!?JapY2#$YqIKmdIs^T=~<7%AY<| z{`8?T&<~A#3BK(2UxjPndbkPhqO$K!Tc(_4j$oM)EK|lZBUq-4RSwr)CTTCnX)lvl zr<8TdS*M(JPGFt>>>Fy@T-M2Dom|$*Wu08s$z`2f);WlE4lZ$0bttQjW7VOo8t!i_XVn8)^*~mgz^Y}eTE?o!uZB0Vk_``)`ddqlcD_O6wWVAT<y)w10jyKP zI(^z||NfRy`Vyrt>EDaecNpdlx$aQJ{s+3lFn1W`4#V7GlslBW!+3X?;11*6VWc}0 zvVURP{{6=GJ>Mbg2;=C)$g!?o?CK@1zPGEFxOzB}40rXtT|LLu^Ig5n)%SDt{amfg z^On&zn`xV5Y((U=Sb_5?%ObzAJ~bnDcqE!zp;Zn4Fm0!=Ex2;KtB!Eh8Ls+8R~-@2 z#v-G&=FwX7Xsvm))*RKEqgr!RYmREoQLTBj);wBk9v!(JZi2hC)?<{%PFLkUN_qEF z-jG-JQ{IqQhAHz&%6x`0e@vOrROWnT?&Fn<``4K)}lvi(WABK(OUFqEjp@2N44mv79BNCM78Ls zaUz;&(NW_>RErMJ0*z)`bTreVqgr%Siyo~-kJh3`Ytf^%=+RpAXf1lQ7Cl;v9<4=> z)}lvi(WABK(OUHA$mJ~C|1^_PEIXEE$Fl5LmL1EoV_7yl;bauc?l|FuWy`hGV_A0? z>rP?aa0EVmIE|9j(2dZoC+`n}t8{v=kOT zMGHKIg~zh+Fcu!g!vFl_l#xzJ83lz<1jSGSW1x4h!dMm_%fe$>xc5Yr@xJ$t#A8`_ zEDL|AlU33gTEpzimF5g@q{r5S*{hJf%v<#3De3+kW1DQY8Pl&Xm$A(*I#l@&RQ>~Z z88PzI!cbSrb*0_ko$cM(yS#fqx__06tIDBUH}tpsF7G=t3dDS8x2p<28JrrP-Pn7NsiYBhIpFewSghpKsX`}Q?`AS?MU^0qzPMwGBTcFMh^r`~Asz9$Q(5njcssg>LK(8v$ zs|xy;M%@+Y9R+$vf!_tYqwW;>zDlp8)f;p0k2y`VAhpY8fzATfbdHU)PA*tracQ zn=^GSkM<%S?L|D~N;}rn|QBWT$wt7x83o}sCa)jYAQd16=d#IELvUCk4_nkRNOPwZ-**ws9-t9fEq^Te*^iCxVT zyP79dAlGQhWWg zdE-ENqvcoFz)uopL++hJ{!izP-dWB~{d;|6Pg$bFY};W5?+X2DF%QmSJ^J6v5?#cb z+CTU72HvODyv(gUP^)>FTa9>hl=F)&go`5ws|za4T|Q&A{z?dQ41I83>h0#)+j)I< z=B0LS?Jjp*@9GV%9_AcsRgU(|)f-&B!PS%h&DE=2y?U3chq?c2)nl0Hej9&R=&ky| zoZ9MfGk;ene^*ZM&h1`X;polBc8T#sE+d$jwb8N1K%ysvyHyZ2e4X~*-O;F+hS z^JM?KSMT#^@3ip*ll7w+N8Ij)?;Co*)$)x$ApXEyrYEc90V)uG>uUE@| zPS;|$8hm@l6;9weKGE986yHzs{cI;_IEBI$UvmlPj>s{JH5~141isqrOmUnrJtqmlVK?;GxuE4cTc6L-R+Y*OVR(6 z?|a(+_LCDRrSRmtNfgi|bB9Uh4wK9sCYdK3N1>iZBZjl)3uwesX~d6elap!0k7_-W zjhH3c<*`~%I14*l>p7cVJYNesMGHDb3%ZzIJci;Ls!d*?G6Fo_;4F?*Us+fSnH zC(-s-()QsAdXs4TN!VZ#FUus_eiCgziMF3)_B4r?dlGFwiI-&(Z9j?Cmi3)7(C;+A z?66F1=(G{fcd6N4-#LHbj)k`)CmQL@BgMh*7daVDfm7i$I2}F;XTX_o7Mu+qgLB|q zI1kQ;3*h5$AzTC(!zFMjd;%_m%i)voDfl#80iSpGFTmCCMfehY+wZ?4zW-*p1!lml za2tFVz6alj+u?`KD7@3`?nm(B$YE+~oSM2`O&ygrQO!&;7d{~}RZShKrlzW?Bh}QA zYU*e;bt0?m$0{S$)JN6SrE2O@HFcJnI%|M?4{-0$Vgv4v95&#=$bJL<2oJ%-@CZB# zkHMedad-lr^qHq3d#mNIspYQ?p2zPnA6|(}8N9^zrLYW^!wT3MIV#)9kkMphzvw3D zfKJ#9m?*jhwn7(dgSTNjbVCok1Mk8=;5};|BdsZnfQVkm(zPzt?k4pX$IDO%GM zt!awZG(~HgqBTv?nx@2lX?^7Z_!aybegnS+^Mu&%;Sca2{1G04hv5-;6dr>=!Q=1* zut$tNVo$@L;TiY~%!Fs*IruM_1<%7@;cxH){2gY)9C#7t!fNY2YoNxAwifCj4r^f@ z)Wdp6zy^B*oQv(0%)^|Ld04C!+8_z-un9UMhoyT@xbJ4ingWZBX05EWr=oXdW{go_ z0*}FG;VSqXd>MMzjLIX|d;R`3qjEFCax=nmGs1E+!g4dhax=nmv%vD`1ChPV1k23? z%gqGK%>>KM1k23?%gqGK%>>KM1k2UqPdrh+Iy}l#ov98_HzHiu@9Bn_A(opVmYX4# zn<18)A(opVmYX4#n<18)A(opVmYX4#n<18)A(opVmgBGE`Si!~>FEwF_4n(4 zLn%YQet0@;pI?8MS-N@e2m0idve@~mLzQxeFFqRZ_I!{(zE};HM4nXATb1>*0{5u@9#{`!lJLnDntBaK7hiLoP%Ls?24`s>3|_xbC0Ul06X zU;8WRb(w$F$39Yj9jU*LRL{p{M*mNx{)7Wts zI}Xd(aahKVc^NzA=_7f2=p%XhNS;2Dr;p_6BYFBro<5Ri%nUtb;n~7@`beHWlBeb5 z=_7giNS;2Dr;p_6BYDQXVeB}J9fz^wS2K1zS}CqkiffeOhf48Xb{xiz!!mXpma*e7 zcAU(PdHPVEK9r{q<>^Ct`cR%el&25n=|g$?P@X=Nrw`@nLwWj8o<4M_J~Tof%4V5! zSm1MfNBzf>BKxsQwBs?6OFYd*p5{7F^R<5MIy~ohe^&{$>M3d47O`y++xjei`#kUc z7ofL|#xk~5(sUawV%wrU*tUpmi`ce^ZHw5ph;575wuo(GY+J;(MQmHdwnc1P#I{9j zTg0|SY+J;(MQj^m+Zfx%*!J5Q+lJBD$12UaN^_3V+{LyrwvA#;iPKyp#dkWdEknIZDu8{2t*{+c73fZoZ?F!j$9NUd!yK!uHcE)zsu-(0${0D6J zE4I6V?Z&a)xQy+_Wo$Q&?XF|HLbfYpyF#`rWV=GPD`dMuwku@2LbfYpyF#`rWV=GP zD`dMoHap$wd#ICAbyBKM zO4UiJIw@5rrRtZ4SBl&XU}l{{>_hkL5i zJ^v}5e`>$y-;2FV*}IgzOWC`Wy-V4x>N|EZL_x4d0)-3+)+Yx{tfmu_{xmh<>uX?4XS3wNHh9@cMo(t2;} z>eVw(f9O{AlgL=5o1Es+Y;~Be4zrc+0)1^?eQn=NU)wj+*RnJ9nyp^5_fW6dN}R1; zv(;<1dd*g^+3Gc0Ukg|A!?>Dk^_s0-v(;<1dd*g^+3Gc0y=JS|Z2fFs{cKOEV% zXRG&Y^`5QXv(=WOKlpUk&7-h#OJ4V?t%8pTXjIv{t9i!|RWydHxM%gi{{~V}hXM4)CJmru3J!Kdt{GnEJle1&e;paA#f{YB zMrv{44Ch~qq#S7$G71WzNCaQ6|KrOnc(k()f@r#$2Jp7Er9wfue8Ellg;!*=;(N#s(WI?<;N@u~hJ z@+bK;cb<70dhfzj*OmNUdp`3vjNRVE*B3@CFV4I>y++#?-w=9k`JFC|d@<|d$aJ2L zZ|ri1e}1ZNK7ZzNo}yJelrQj*&T^M6SbF0lCv3uqU)lU2K$1MgoW<@em!Ge0^+g{&lzq{BGZ(TjpNobfbYhPYN|Jk6IS zu2q(}R$1a&qj&rH9=pi?XlM32kxF~pm%$3zDpvabhF$ur(yRGNtNGil=C@nTPg>32 zZqM50^bYN{e8Em5wYneXc}-?AU2L+#zsY{J4y*i|tn#^!CTZa?1x z3#}j=Co9<%zFTt?6|hNEz$Q@vn?wa{5*4sXRKO-t0h>exY!VgFDJq~-R6wVwfKE{X zouUFdMFn(<3g{FS&?zdQQ&d2wsDMsU0iB`(IzKBVQ30Kz z0y;$nbczb-6cx}ZDxgzTz;;mq+eHOz7ZtEwRKRvo0oz3dY!?-#%pM!``tDd&fHL9qX`nti#^14tvKs>>cZ{ zcdWzSu?~C3Iz%jVidg6rvCt`Ep;N>{r-+445euCn7CJ>Nbc$H$6tU1LVxd#SLZ^s@ zP7w>8A{IJDEOd%k=oGQgDPo~h#6qWtg-#I*ogx-GWo>%L2phJx8hP`>7Pc;ZqRP8= zKEAE>yo<5ycQDe1D}%kGZMb)5UD$d=7QG?k{wjM8oKvrzwz*1A`YQ2s`+Qsb3{Tw- z+hVwe8t&F2|MJ|KO;gj$w_%vJrvgyjzpNiZJ zx4;az6>fv?!uR0&a69}^iSJ~=AItB5H`eUk?Y6?|eB3(Rdh2j;>u}-P`Ja_?wbl5f z_41@ut@Ihya`C6+;!h2@Uv7T2I6y59P>Tc9;sCWcKrIeXiv!f+0JS(kEe>!d*Z^mO zS;y;LQJ!Z_Z$2!6rLYW^gV7{=tn3s?CrWLC4sa?%bTc@WA-V;&LKkdcw~Wpk?MQC+w^r-1w5}Ddv#f9(V0CM6D_ddY>quJfI9hKEtvAN1))7{< z4za3rh#nD+&`GOJR>1X@@T~U5>2-W-gX#0xU$^e|VV-0nb=bQz=$C!h)jF5;-SK@_ z9o?^d`)A6x|NF}K&#oGd75%KnDt%TxeSD%mXJ_JOZYk8m~YQA_KEV^g@RuZmq3g!X2aFsJOh>4=IBe|gzoX8X$m z(Ne?dpZ)aa5j68Cnzs-RrGKr+(>zI8MK{qjZwwmjq_b?u4c?$pHp|Yr$?E$ytMA*a zzHhVozRl|UHu@q-UnJ>^&2+?;^tjyMDQlE(vnSoEeBn8lHOjXvQ-h(tU+kIYd8Tl8 z*ji7!)qHtDm{%imMb?0<$9<&+eWLekz_kPZI`Fr>U*T^Ks2%jvLC+1EKWN*aZG(#j zA2RsZ!EgFnoc{kugJ<@>D*M{tp6o%{x!ITJY|A|;^L0ksU7NcuGA_3@_aBji^G?q@J#u2+U3vFJrsUn5_p`_;c|XtlW#qKHXY%Go z&d96CTVe$}%tUyN>?r?52|p$i;WBFY^ECRsS;ODEN#xPwti#{?tElus(Jz-$`lrd1 z@@<(?ZqW*^7V&a~OoV3)I`6&9L>x^N@$$Vvmjq*St`16NOF2s>!tP8a!h@nU?`@+Z zvna?g6Jb&8o9}hR?s>0PCY4Xfnsm6@{Gv>RA5){3WHJ#h$a^t3G;i*E9ron(=3;u- z(>>$q=4Em*-RG$u9r!o8Sq4^5^8{zFUkjgGKY? z`QDp*e2W%ZsjQo{$mOmWjvH;-Nrx+UyK=Xjx#1~@omyvy@@^h|vt9Y0z%=Z=>eJjP}Eb)D%J}norakhiH=rm%4S)d=(AKuLm5XSrTtu~UwARYeS}R9utsJejasGmlw#r3RD@SXs9IadBBHAh! zQ7y$hpJIMJt(N;M<@>|@pRzz7uBN`pUW?V#LN@y?n?0pfhI>C3si`yB&FGb$mtUe) zF4roTDAm`oMHtl_?lc{NE%sG&FR8T|YVB<;HLk|~sK#DbW0wrNHw5F>q-XCDcQ({aXBeF&-<)@aewa1hvCcbEX6kiH*0bYI z;fPtW>nbPz3_dSyg0cp=s+83mycB;GOVM|Rv-_A(>f9^jTz-o7S`lac;n48mk zf%|mn9(V8eX;EH>_N>hi`i6cW8njPezG{YK4=0bxZ}}JxlsBbPxt8!UEu)s?gwrEe z>4jUc(|YXGrmp{PB>I&nd66wQW_?q9+fBg}S$74my7Crh!2aCG)4_gQ*ssf-9%r-1 zMKEs3IVVz*b8ci@&IP`I+?n&2`~FEkU*Y>_{4959j(xm2zlqGv`EBHloZor<`^alK ze~47){4p{tXO^Fz_qV_L+utG=<-FkMzx(@af1l%LYkxWO{BFMYyzD&-{O%P$zv?}& zdCx*W*F_G>iAR>?tc@gc)=uy@@E(-220xXZ-78wxzp&XfaW}O)QQP#21A4l$tTA_>H<@fgoTXTzL z`zne2I9E2%-2J^iAaZYRnb!w-eX!pj;`Mm15A*xOBgJaqoV;h$#LTQC^PbH*A@8}! zEqUT_@@7S1d4I!rKZy*K1#}P$mcMOZqfEKJbRc#(#0>0EIm0UCa9ix};pv)7{B9Xt zu_gE^&rvnc(a(5}e&$5sEm;G2hz1)&^Yy;Hf<*&9rRKhz_VQE@e91n5SKw7SGGC)` z>;)LO$X)?n5gwqQ4P5TKS)rWlo78gmz#1pV)WX`}XE}!k&*Y4U!{Bf@0w%zba1dD80YJa^YzC0XLy+Y!o&2JoX>gvd1dy!t?k1WXe9>qB;^E^#7>^t7#edo!W^l5^x_^ ztahb^#_yytxkFT5OjKTs$2iQ|e3w0ZHQpY+%YCAKk;7R(^Uf;g|IKjz z-;Br+aAYvu*?-fW{Wm>w3`~ScAVXf{SU3)j_wxyGqLUKL+xZ{j{10*dhdBR3oc|%t z{}AVYi1Ru;@4@%scDO^H-5-E9#E(%Q`H>mskG=j0 z%T5j^sM$I-yVB~wII9EWc;AoYeLvE^p~>>;Uy*gX?;rL3jNn`L51nNH&`D~$N^Li( z?WU~eV0u&UjJ0?<@>z8 z-`R%0@$-X0e83;!A$S-bfk)vn_!B%1Pr#F|^%RZAZu0WpCok`PJM!|*lf`pBIMtGW zB+fq)=O2j=UIFWa>4Tes&pOZW#q6?R7Jo^Tvka%p_Bq43dNbteo+0b!3|T*C$oe@W z8s>lg13U;1!Nc$fJPMD&pWtzL0-l7Y;A!a14?QFL7q4f+v+x}J75)Y&TkawH;VHc#rcim{6=wpqjtyS4mxYhzo2 zmt$L@3%0@Auw5?UH)Swh8=RE8HJC0d?sVtwO?U3zbm#6(&+QIg%~H1T)nmz2_)68jgX9FbO8}dmRhM z!SQ~!O9RVPV3`UmQ-NhFuuKJ(slYN7Sf&EYRA8A3EK`AHDzHoimZ`up6Q z3M^BBWh$^t1(vD6G8I^+0?SljnF=gZfn_SNOa+#yz%mtBrUJ_}V3}=ByiG=~g3p1h z%TB!A9Jw042w#FP`~6qs>i??m*TA)2Pld0+e=5gy@OAixpRf1#X|6fl>l^q^zX>fv?!uR0&a68D8h?$a@sRA?AVx|``(*n%21gmsml_XW# zOqDhdxX$aZ!}T&uyFZp`8SpJXf5&(C!8BEvW(lTgz%<)1%@R!0h-tQAngs)X<-Na# z-}wE5K?TOCz&I5crvl?tV4Mn!Q-N_RFir)=slYf@7^e#3Y#TIMx$k3xDvZ-b8E>SFH&VtMDdUZl@kYvcBW1jiGTulT zZ={AdQo|dm;f>VrMrwE?HN24;-bf8^q=q+A!yBpLjnwc)YIq|xypbB-NDXhKhBs2f z8!6U}RB9K6+7-PnXp4RwzQLn)Jxqh?a07f3Zn6gWZTL>mOqDiMrOi}nGbP$gi8fQB z&6H>}CEAQN+p%Ul)@;X`?O3xNYqn#}cC6WsHQTXfJJxK+n(bJ#9c#8@&33HWjy2n{ zW;@nw$C~X}vt1tTcC6WsHQTXfJJxK+n(bJ#9c#8@&33HW9(_^Xxw-HX%vY|LVFA1X zi=e_Oy061xsD!1k%tlovyyRdo} zR`0^Rnj93#)fw^)9U5h1I*TdKXsj!s=aEy$h>% zVf8Mo-i6h>uzD9(Z^7yQz|13aeLP^(w4hh1ILDdKFf$!s=C6 zy$Y*WVf8AkUWL`GuzD3%ufpn8SiK6XS7G%ktX_rHtFU?%RQz`hiPe)>J&DzmSUri=lUO~8)st8~iPe)>J&DzmSUri=lUO~8)st8~ ziPe)>J&DzmSUri=lUTh1t5;xk8M#58U94V<)oZbOEmp6^>MvmR7qI#QtiAxNFTm;x zu=)b5z5uH)!0HRI`U0%J0IM&->PxWt60E)it1rRoOR#ziM(@JtT^PL!qjzESE{vYU z=t+#8#OO(kp2XVx_(P`ihfL=Wso)Q(;18M3A2OXkWIBJybpDX( z{2|l%L#FeGRPcvX@P|z251Gy%Qo$cm!5=bR*5Z}X%sFIo@INmH|MPP2_dieU`Q6SF zdtMIy=jGskUJm}}cRNq)c{%uZoF_J5fEoSVh;c4roQoLWBBP-QilGz^=6^iQ%=d6O z0_0pYUr^VdaRBftE0!lyoT#&vKpGKh9;|{$?9mbI-0DGCaa^# z>S(e$nyii{tE0*4XtFw*td1tDqsi)MvO1cqjwY+4$?9mbI-0DGCaa^#>S(e$nyii{ ztE0*4XtFw*td1tDqsi)MvO1cqjwV|}lhx8>Ei_pRP1Zt_wbEp*G+C<*{2g>zD_zz~ zm$hVcSqoj(vYRfeq04IMvYL!8YoW{PGP*2Im&NI_I9(Q}%UbBNI=U=Qm&NI_I9(Q} z%i?rdoGy#gWpTPJPM5{$vPQbBkuF3#*HDh^0jJYe=fH*V zS-6fC`#M}7)X->k8I9JG(P(iREl#6tpwZUw5qHvQb#&SWIxSA8)zN7QI<19HYoXIN z&}nsaS{gcsrzUMH4qK;;(quJ_cwmO=vZtz-qZM_rzn!HX1jTzn6Lbt`~wwj!4f^9k1!c_Pg zd;_f9=R68xtaAPYkHZu2B+Y@JquOs2KSzhb-mnks3&WuRMnNHH<56uqs*OiWU<_#M z(f#27D1&l15XQndI0z1gL*N+rhI5*(hiNb!Zh&vX17_yGf?vaL;J5HQ_&xjqcwT6= zIIR|^)#9{ToK}m|YH?aEPOHUfwK%O7r`6)LTAWsk(`s>AEl#V&X|*`57N^zXv|5~2 zi_>axTCIgvYoXOzXtf$zt%g>sq19?=wHjKjj#jIq)#_-qI$EucR;!`aYG}0@TCIjw ztD)6uXtf$zt%g>sq19?=wHjKjhE}Vg)oN(98d^=(dDs9V1ZcGyTCIjwtD)6uXtf$z zt&Uc!qt)tYwK`g@j#jIq)#_-qI$EucR;#1c>S(n(TCI*&tE1KGXtg?8t&Uc!qt({X zYHMhsq19?=wHjKjhE}Vg)oN(98d|M}R;!`aYG}0@TCIjwtD)6u zXtf$zt>)jAEl#V&X|*`57N^zXv|5~2i_>ax zS}jhi#c8!Ttrn-%;AEl#V&X|*`57N^zXv|5~2i_>b2v|1yr)<~;0(rS&gS|hF2NUJr{ zYK^p7Bdyj*t2NSUjkH=Lt=34ZHPUL0v|1yr)<~;0(rS&gS|hEto>p5=t2NVV&9quG zt=3GdHPdR%v|2N*)=8^%(rO7>EkUa#Xte~bmY~%Vv|55zOVDZwS}j4VZJ^aQ&}tiK zwGFhI(;9*eX|2{O&ZP~K&<>kms}nK1U>m#*+o9W;0X^^zybJ#b8tJ#X$p4LVwnJ4n zlBz4G>h|A}P33?~6{itK?9*sKWidVFu%H|52FX?pisX3-eA-m#24!Kuu&o&VymhQgm_N z@W_bB_(&vpH)s#01@e~#_Xn>APX%`e_XVqhCcpnFY!0pup7gyns0)4+tO;fYuTjPS z!oQ#`NXgR`aRsf}Du{nUgWtCLo`giOB}npprT+zH^xoO&?{$9bKPoM} z#=7tgp1o7dLBD@~-jM!FeZYs6e$|rxe@nkN?efxH-wvL0tyHi&c&GPjfk;idKf?1E z310GSV&8i|Br+y^=ih=wp1daL2<8NDd5YHH&ESpRXX?ASYxO?k3ZGbI4c|X^s1Bb` z`%3?FXCp-VFDnBl$faL3_EP2Hyyt4bF20Ys53J(E{Aj>+QkT(C+?k@~PU)r^U7U zo#zdDyyI=rZ|Q%YwypQIvTs$Roovz5|2cc#=X0Ag*H3ueKo9$;{x*dzU`H#kx1{&| ztlE(&Q}`_5XS%&x+u8k}_x08^E34~Xi!}us!aG=dPych5wV7AiNe~ZfL=8A6-0L=V zw$8Knvu)k2?zg?|(0(J1Fwvp})YRah|;oo5X``Ygo?e}#yt5s`rgZ1h5TN|v{wb!wiT|Yiw z*=yU(lf0e2W>2Obd#q^g_~)HhXgg~H>ncwF)%M_|V6y*vYu%{ebxNyy-4ni|r-!kr z;qMYYrH6%W)^oHfOI4;N*Sprd^n2JgQ_GpL!_RMqf9d_l3O#A7;5B!s3V$2$o218` zbRCE7v#)M~rS9Dm_V;x8H)<6kD|YR{nd|mA(>T1=UT}MGar*U7gCl}+KX>pFgn#P@ zhS+Zs32qB63N8%tozor(@{F#dgL8uOgQ8$caI@3ooJts6>yCHuB}CN9Tj|f%dEJ^R zt$b@~o2N%Ezfbn|L$93qsJ>qJYPlY}TrY0%ztx=nHVCih9k-0~kH$DA5+WQ}zFc}H{?yp^a?X9;B zIfFLhY7eLH@oMmLy5712qo?0@`=nl^wLTI!AvXOxBT?qA>As)-U2lI|9=`V1Bh&vM z?A0HFd;Q-N{64tc>6YOurAU7tm+m{i4DR)e2L@mEyW`Z`q1x>)f&+s8kGQXax2a11 zUwf~8&VD=Z@8?`}aY@&^ZW2NWBXg5vBpFkZktrD?Ns=VV7}Jz#jA@K9rjb!&%E(BP zBuOPnB}o!Ok|gQg|95@&J?_0+)y%Ko?|;_kJm=ZZTKnbf^{lnm^Igxg_DyJsN|T4; z+BcWq0rW^cH@zPFb?`4M34ULNrm23N?O*-k&ZzziI2$yX*8^)lufG+gPHumOL+FT@ zmhdwbz_FTOWr~aRi^Ms47yV*UtoP7+V7;ZD`X!>7UaFUh7J6?T>+kB9>z9jj^#S@- zSV!x}`j16xeTaUYIA6bBAAyxs>-g%3j=pz&?}|>o_k26B#_n$4ZqdbG&tFe;H5;4f zii^$j%^srE{E2z37;Ii|-YBj$N10>A4dyuWE-}iy*ZhqbZ$4=LPTXVu*?d$?Hy<|O zgVt}gVt1LlOl#_{ch_spaHoDEd`Jd;Xf$})Sdb|X7K!N60OUa=AN;#RC=rGStqG4B zM06vb1}l!k|2~bf8N{NRSS`60_Nk3z;NGj19SV_Lj5_P$81?W5gAihXv6?&98#x=k zF^!O-@C7>uM=eH*W4*1$IBFB5B>T~Qez6BAGN_Nok&s}&Y?C$sSO6T!CyriYEc^`wV@$aUu%wiS|G*Iwy{bH zR*1L&y3!62<~gi1HxPPuHBxOc2+4=&^PiyPH5C!(-UKnq8R8^PZs zup$Oxmq&sBIZ|AVMoNfZAO*!3aVz3v#v#SAcHC_^%Xq8}XNoD}9_aT}qzu-GyB8MD zG^Dy%C+KEqd-@! zEBK4Gi^2EQdLp)_m(~mPYQ)&s+HP$({M0_uKEk}f9&Hbz0rqNpMS$(ZVGBvJg*a># zNw$O}TY|%uAlVWcvLz(h5*o547;FQQZNQ-3H`GUBt%tb&a~-SK=%aPq4SlRW7H#8J ztp5<#$Lr(4Pr&+hrhcb>C*B@%w|+O;=M=<4*Vd=%Q&E1JJ`M7j`b?|={Tux^kUW5O z?yz`6bM=K-&(74J)Snc(F~~sO8KV*BA2#kX?!tRt?>6oRonlNu z^#47^J)*HO)tCzYUgKWT*q6X+0Ab%VzEx^9C*N~I^S$hQ4ZP~7lfL(T?_))sk9;4A zgm1rZKUS%z@2@X{ezkT$+}{xE;+g(0{a?b%R`uU?*nihS|Bd(cux%HzRVUf1lWeO= zb02!>0=CHlwzMQ$T9Pd-$<}oaTh}>kT~W5KC|g&Qt;=BR@>gkHwb;5OTbE?(YRJ~r z(0a(4E9zPEtRvIAu(n3rT4gzny)Tlnx!%P?pJ>vF{HG*;%&>?~GE(Ck{Uel@!R z>|d{mK|f3E#>E7to#ASeY;@cU=9J}FQCB~%YKHVZH47P3+s%>!7Mz+ zFqh%`dHG|s5r65G#T6A-?u9FS8{=0*M^?)6oM)-2Q91tEQOq>adcxJge#u*A_{Xri zYyPNxQ2JdYyp04S1yo%cEO{ZRSdG01(2dxJXiKD-OG4^ieD?kV?tlN4ihl=b*k zipSPRm;pWcfxWs8|8-NP9q8HWsO_()r~AuWV2=aP(*qTHdZF2V0xU<-Y~$^;LNvuP8?N z_rnIoTn6Y{xca^2^YA8jYNINFtH&rEcHBYK!=JF<=Rn0i#Z@WYrhSN9;2>2`oVPWr z%1~-1j|a;dJna?kS@oXQc>Uf{D)gg2_W2Z+kZLc=9@|g-IJ=@uMIC!vr&CXRXc6tf zKUT+h72o;L=EEoN$BjVzu-XBwnh$Z;_MmTg8uz8bGOaih^aDM`PTo^>jK$D|HV75VS8lsd+jxQqDLCy|o9)pYE2XxLWVYs4#7?1>gs!Lj|& zrrZalOZ^v=0?wrn2HYj}fyVqD|K$Mx%WmAOeZXuG<9re&;?WR6rR?w*c^yww?D>BA z#U97w9Kc;Zg!^6{G19TVVN;Ck1V(oKG5)#=Be=#`rRt~RJdD@yzIlwlri<+w` z;W%O}#}VT&j(Azz=6e;RiSZmqOyD@;4vr%xVjNK|i)Endd6 z+7|EPDV-F1_{o);i*u{JhpxJ&m=W<7xb+c87Wn zYj>&Vur^IShqdYIIjqf8&tYwrdJb!I@TA?K{Q>5VwtspxW$q^+; zHfj@Zu;mzDatv=^41XcU?H#bLq9!^a`LJ%1dQ(>yM95lLnXy0ix(eg`5Xbp`j`K~9 z^VJ*Cy!RYkkCMZnD>ldW4#xH)F=D?N$-wyj=Qy$&+lM)}4`6J63p8vjv?>IxngDtS zl21&;YS0!|gPsJ*T}VEx2z@ssYRn(zm_NcXf0SeX7{~l^j`~hTPr;aA5qd|_Au_iP$H4aVXd)6>!wmD`_P-`t}txK&nskK;x4WnO+ zT5C~jL)2QAS}UowVUB*WQX6#Fq3(vLyDoJ%LEW{eyO#A7MwODk*A*{Pm?20lOs>O1r8%myx$3$jkh~t zzQL`lIbroJylsptx~Y+;!;z=Mk*CFxr^}J2%aNzc zk*CIyXMiKm07srdjy!|V@;_iL!-p~cv^f3@bNm_R_%qD$XN2R=D94{Mjz8lZf5tif z#7b$1`F51vs}ZL7J8j?;(G-g|u!J@Sp*_kHme3!phzDCTju9x<@C2`{Vue-VZC136 zCGirA7P3>tLiX^I04-#jcu9yBvY!@mm==>w>uMcg(;BpC>(Hjn(3;KA zj?K}I&C!na(Th|Uctqp+MX+hm$;GRt-tV>^tq9TrxxU9)VBakj>~Y>ipAMw2ZtPODX; z)f!_vEMz+@AXa3tHEO=+eb2Ksz6Og_*`ku@k;OKdCWd6OWoCUJ`#u&H@g$3FGR8KU zrbU{fMVg{Tnj+3*(IS>bkV3+l2js7os}#x@^ho7dUq6KwM)+q}s(AE&jMqqQk%ZANHq zriq7H#KSDwoLQ_Oz?ouK1p5IgIv1m&PhnjhK4sKXIV}2~xcnR!&a^*2GW(tmUF9$p z*nPE8Y?bWqiN$F3ZCInq$~cCxZN+%^dph{Z!+5i&`TK@*eapE2e^m0LJv~%6pdg6p8Y$%5E!rv)q8y*Sx%a`A^Hom$$-u2>~3DdnXPAlg)GMrmf-s${>$&ZTxh(7^B#xY z{5Q;mZNxKCVD9dAP^>Y5czu4n8KC^}YW}S{e@%<%OIQ-HBGf+s-GZ~cgI~;jb6d@h zAAp_tE-Wj=TzTFC;M6SKftpYh@2vURbRGk?6^?*6NPBtMQkLs({BnjIzp9L33nDbM2%tih^w5-0s++w~I z=X0wb6Q!mqYrFD;`N#giqTYg@Eyf(`-tr+R^Bk=7$%qx(Rd%TS(()TI+xlzBUO=79 z!wlz~@_z!u8eRTx?Y9r3T`GQ+JvveGW$%?Yt+YeSf64RR3KXKk zzV*siQrzt$*!LIsex_*t1GM0zz3RyzS%y+a@<;`1_87EQ>Gd}FX?zJg`T#J7HRXda zqYTeI%&X3Xo_qslLVuMV*k8>vZpZf^&ax?g4cITLxmuK3I!@4Bnr$(qX6 z3b5yxwUOBXm%@y1mUQ0mTY*7-`W>5b>Ycca%^M`ZpU(}SB*M!QvZ+-?U z|Aor3)wypt%V|%DZ#~ON%*8tg-iuZ7@lZjvQU0(eLJI``Qq$*5^;J{Z>axn(&&%PZ zw&T?Hr1J7URrzw&f9cKek)q%9QGOZKKWK@MC<(kv#-KO;2;9r%k5O_%^^%mGK`*_M z`9A2Iuk`ezo+8ol#+KKRgxG?liLFSwcn3*}caaS7F_KSwDvraZJ0Z&OrdCY%Vr3&+ zvqgdCYA)VK8PY;{LuFJ;;XPOxErWTzoR-7fUu_L<($xwzti-I<*XrY4hi7YzFr$Zr zcOD{%rdkWFg=i+1%4MRtTrU4DTFIy7Dp4ZW%5|cRd|AFG+Q~QM7STz*CEpUA??O3EYhbJ0tFCBG7-@@x6ExKv_@AbK0pFvMlXMaD(qa-)~g zOZ4?^_iYzf_zw6EhaTnTyTEqQAMxd|g~=eq`JxIp=xty0Z@Nx8CAxbT*1N)!J&j zm)D-*&Pv`{19$c??(b(vesKiJ6rUqm;wX|WzCd!sF(g}ji8=_P4o-mo8p%a%l;K^} zs5Y!XrD?FVHA90ZgXYtGSeMDK`5`e;TS3-Vh_z+2wt}dwDBj2$)8eR6ykijSfF!jf z*7QiB7Q?K?IBPM*T1=r93*kLm7j>CrT}DxtXJfBMsL>Q_G{qWCvqlrB(WSzc|C0X_ zLAeaI>qG4>7pD9->exXYuLONYJ|p~c73$lE`hEfYI@G$2T7Mb*Mv1j~cuuG)mhtP=#bmAislY5{UacIWJp!?;15tRp^B?)Rtf?5)#mPDx~ zQEEw)S`wj_gs3HHYKf$lgsCMKwZx{D*whl6T4Fmta4r*?(+9euLsy1_-T;k})EG&P zF`zMz3!n23XNfSKe>(rfy68_h|H4Z8%b-aPGzstDaaKZ~Z0b`0`h>UhIBTF)F=|zq zS{0{ODPM!Xv(=j71A$e+#cm`^e1zn$Xs=3>T2PZ(L3h3cvho#DfO^w}deao^4eFwq zW@#4Q*```^KnrL=w9zPZ!l5?Qr8X33X|!oa%c4zZwF0zhN2{aNf!>^@;SDj=jC$0J zv$c9!J;>{8z}U0~S_60iG=!Eo+BsO>fs#2XZZ2{Gt)33aSTUf4cBlX?__ks`aRu^9wK1;z`(k6Mo*(B_)CmSL~ZK2 zW0V@DDB0WS4cf=J97njqxB^u9Ae==XgtO>_5TXx4ls*U{`XEHvLJE8beFsH^?WC3O zsP8D=3;Koc3%q0Gm=8Ud+1kXLzs(<;gF$aHZ^Bzv(iYx?VV!H83wpVQx8Pd0TDOYk z)=X=rXk`7#`V;2upRk?;{kQdR&^6W?c;>9N)?&@Bm#vq}f4!i|nkG)qU>_hfpk-*cS2U_nW2YwuE)n0pU!S>vWZMX^A@Ji9lS>>z} zE!mQrvL!og$#vP13!E37^=R`O@RV?z*PPcdhrh|$1pamBbgs&Np=z|iucN{sur2CHa!v+WC^2?`IxDj<-*0K{V*(p%NB1@CC5Q$#1%@PSU< zSzQd<;4u{!;eGPfGHP#1e(o4E(sw97d-Z|7PO0FYtoU7xW4?#$I|4)qvG>^e?9_93 zCG!*-{{bRr-hr-v0`3#|3By|gM|ilrFMfXwnc6PF5#L0crRAXZ&7)9fM#S=G_@DjK zySYM}fR#P1(2+bs0*>~Mhj*!X2K7M=zM8KU&-Q@~c4I}0iFh8_UfDb)#umwMsb6>t ztm5x#W!nSU+J}1oL`kZCc#j5o5=2BSP&4+*-?~E5P5qV+C#`5Durcqc zlmaS;Pt$yjqDMXXVfiK}Hw#euX0IH2t-qlMdk9y1v*&q!veb8Ey!fV?3Rl|4$Zc3r zqAq{^)yg-jw&iVj0J4O zyo?&~soKJw9q&mi(Qm}&pf5&VWgqkvw!RVjW%-ls(K})#tr;~|XrMyV)u((uzTOq_ z9s(KuhnMreLUmZp?cs|oXkj?CFkD&~0nFj<6(RWt`3KmW%1VgKw_yh)VFzr7HL6DU znUiy5UyA~)cK$DTgXplH)SR(a#jeq5*GSqm2JIS2yT;&IeLSm=XZ3UD*yPNy#hGK9 z9?%Z2!{v1ZcpX7rN08SM;&u2qS7&mr&f;91P0vt=SLPy8wI}c%1Gs|nT@P{Iz5!?K z@jgGKG-v4>z=|wHdsQ(E&FQt?f?n(Ab50)b5k_jyIeDNvNbNW$ALX39!#Vi?=j0vE z$#>9x|G^Yacp(z|n(K0tq!?wqT)I9K15bM;;5kVqBMqok$vO=@f10p0uS?w55|oW!ln; zmb9W<(TdK}er`m|xfLzv`m~%&X*pj&%ef9M=TchE8CuSzw47tKoJ(mr7tv;p(Pl2C z&D@$cb17}+QrgUgw3%bHnM-LipGBKFL7Vvp)T(B*nSVgtYDSy6E_JImb*mP2t2TA3 z7ImwDx>Z2kYD(Q|K;3FV-Eyc~o#|bFE7W71DM^6NYo(KW@)pw_NP_r;L`0x95rI-70&yY&r9=cWLe%6Z~9}ayz0`$V_OuV2D@q!qUf>uNdQbY&^N?pv_go!Aq|Kxv@<Zx&7HC(?kP zAPwm2k*2Rlnvn|)tfYn5bs`b1=-<)6YHT%zq?y$Wv?bODZ$gBk75zRM(7&TO(Te(v zYiQ26hUScGXu-IK^XcVLk66Zq^z~>@UyovIqBRj1$0TbKsEQ*hwq{tr0 zZhuJZ_J_o7dl9?s3}a{Jx}~HQ`wd)n||MUi7$@FY%@A@qL~3+l~YLaxTvK z!O3#LlN=cph4Fv;$>U=Gw`cwD&IV7K{jfJxOp{to<5Ot+ao{nup#Hlfe$!qaQm8y0 z(7rbU8-k{I>lxq|t3!ZpqPNm?dRBc}5i`FHx;-8KDBr7otFu*pDprMn_2_*nt!=b% zN-N^-_c0=WZNA+1^9u}d5B~ep_-;j<2-eF5cW3_C^hbM|s}tObcL^Xms{FU02e7V( z`u*MithRvc0_np2oq?DYtju)MyDY}@XBFjY4GSL$YW`KY7qn*=@Hf2w488SM z{Ie5CkK!u-T)ApV&3ji$;di9g%BX^gFi-V$3PJb^Xzs4c(%;N^^-LeK_fRrb{#P6U zaf{!)*Z*xU?$tgZzgR;H_v&*z=Z@8kbo^gj6|UrUJbO2z7O_G*p1ixkf09SGE3W`K zucO4PN>bemiud|c=)iYsuc&FP%z|SaC!@2`#pr5Wj2Yfbj32_DyA;;kXjpD{!(zJ!mfF3(mA;L>S732{={t`3 zSj@$mLtrc2Y)&@sHm8_V&DrMf%{k^D%!kcCnsd!Rne)s==HJaH%qPvI=D*Bk=2PZ! z^WWwQ^J#OX`HZ>BeAZlTK4-2mpEuW(?dE&t4)c9;r}=@o%ly#X zZJw}v%GQE))x>HF>#DicLRnW<8RDng+3oEM?GAQFyOVv9^AzSZUj$Cpoc|JUjmJ6# zCJ~${{_RUZq&6T$IH#?t|BRS<{A(dOv#oJX+fe^s_|zQ`e#X+9v|ue-uof*?n-;7? z3)ZFu>)`&Z6j61Lu;PU`gRN}QpzpZvxQKEF+ojFv;=Uo~!kfpYof%a3P=s(7r$9c{ zoC-P{Z@3EK9?k=g`>5V_Wv&H%#e5C)9dkG63G)Qzu6>pdRN10Y+@V&WWr$Qaac?fd zY_qa7qMYf~IMZtYtE*3}t}d~<2Jras3vacF`oQmk;8mneeMZ_861_W%kv4_I@ai+t zM&WpcD5F*;DP*KgZK8U0i0b8t>Sc-Q)gr1_Kvb_DQN1G8hvzlcj)>ZYMAX_4QR_fN ztvwO7PDIo?5>dN=h+0P?Y8Mevi_kkIMqDjQTrEvp&7pV7c|_MT^iFY!v89QzC5W+E z#Mm@qY)N8l7BRLEF*b`Bn@x<(BF5&Ycgp!h+H4|i7Lm3Tkv5A+n?&SA_?J>qIb#MSCE=BJS8S`pE;99MBEB*s>c7+VgjxZEHLiL@0F z13Q}-SX*LX9f^T;A_mrx7+6PQU>%8pMTmhVh=HYvfhDT=#srChC5VA#h=H{x1{Ng- zmZ5Jun>_ji~UG*;$dm_AkB%2 zrP+@(AvR_a8?%UwS;WR{Vq-S@l&0)cnzB!6!QP|=FNqOsb z)MpQsW)IbtNLYPFOcgR>s*n*=g^ZXgWW-bT(Z@Dws)s*vbfefDT=iLRxIuGJ^H)|Tj6TcT@iiLRxIuGME$RUxCQ z3K>;Zn^9G@iMrJx>XsntR)?rt9inbIqHbBDZncQI1&O*95Ou3Z)U6>=w}wRB>JfEo zSm9-)R`Mw#>Q+R&EkL9#K#VOwbj>EZ){%&sO%%;0ie?izvx$w_M8(df$5AU{V-`J* zTG8XE6>+lm#K|oB9d#rgW)lhPNF>ZA24)fcvWQ?AM6FEXRVI_bs$pJiAdE2M5-<#QWc?ZQjAZLw#2I(;#C=XD7o}dI*-_uMeIr=c9kS{Wf8lw zh+UPLNh96<{vkluX!pq{Na=cRn31Kssg(xL^ufyg{NRe7!dUSrY!HQ|-0PRko%Ws`GI{t~QZ zQX4)bW7K+)-Un9#uYmH))mnrCZ}$Q}xBOC-m$&1|PbnYF-$58F--!|P6*%IE@@`lq zp%>NxU8VA>e()dHSD;2_1<*4TU+_xLZgMejhV zUvr&_Q*B8eAx|njK=P8x-~0?d?tTt9L_e$y@*^Cz6TEtcV*S1@s-&{R`THyIuw}dt z)@6J`trJnPbt(J-F5&fO{vi5$pO{_ngz ztRXTQ-g|Sgwe&yNZiPDhC!b2KQY)-f?umAX6@n_aYvw93m74RF6uMpwmpOAuls)Om z@lB=9lvkl=-r6`7-Xmu!Ta*0EF_zUa>TgFwD>WM}<>Sh80R_P-LzUZS=Dz*jpK0If z{SYv@EvLu7oN3?xnLMuzIO7|rOSDhg*KeK)JuTl+^?WsB1Jz2LM2LWw?XJv$PpNlC zWzBzr?>lEaBm7D#Kc}yHTAAl@Ra(ccYW0Y>;d%Aw>D;ONRqS0O+EKkM`u~?tk?gC! zU409f1y*rYGW3D_^FA{9GF36OGkeKYZRb4F7y12b_|>r1$WB;sU%@6*{{Qu0FEy15 zltlr1VlnK6HJB^k1PcJ3@fg3uiyb3zU5&lf2wRPvG1mRUcMM~~bFK5N)>d1q9maLH zVw83##%NQmd#!2Keb#jAmui%TG1{NhcnqVlH5i4xiE-CnjI_F_F%(8nH`ycYo9$8d z&+XCnFYGZGN8N_;(+)Lm!l>y}`>+}jVU+Va#wJf;1hN7i)4FIwyEH&sG(amcNSiQ7 z+b>9~FNpuN0RH_85kC;1jpW4%NZLYv`U4oWa12^0VcH~~M}Cl2N09bL82`FEu!=rL zAJEI;RUhP7-{Sb*=J-B<`*5Dna4%ZpJ=1Niw&2@Y?Z7Lac*zm1f%`KFtB6d+e6f!s zSAWIqu=0;LIa>ARf-R0#y>Y6;ajG}N>u`kXat!Kn3>x4VG{`Y%fMd`g$DkpOK|>sa zhB*d}a10vZ_%gupUy!3c<%#|@&<0&RM?9c}9yWD|2Q(laa31l1+Qb9S;(ae59#BL) zAjdi=A|6nectDhRK!SKchIl|r;sHV80S1wPG?9RoL;?at0^&phd_)2?A^~wC0e&I@ zan`XHrxGU;(40s>3)Z?9rxGU;(3D6(oJc^N+90dMslkJA=!PFp-) zB~GO|ZSi7id6u?#bK2rfX^Y3H_l;?b$7zfEX^Y2ci#Me$9;YpiD3z0ODsi@rY?U|_ zKW*_iZSk{di?^gLel~6KmbAqk+TwBA;&IyIaoXZl<5X(V7OzEHybubq2S;RJZE^Y1-+S#6$iA_toB`xU^+O;LLYg^KyEulqQLW{P9 z7Hvzm-T+&#OB=M1HfSNO&qB80&}nVhtPJ1^w3`pm-nxNF=s;yU*Q_XVu`ri(Q|dz;{S ztX2{$h8Ja9V6kegu;y4JtP^BikXpi%u@}}DQ*#67;yHaS))yO!)E29O4TI06!qMAv zb>9wH$@ey_F?KuBMR-H|46HHsf_N40vD<`HD&9c4RJ@7QTf8OS7MF=_NSBNE#17F{ z>_h4&4ryWWBlfbluphmZz2i9TX6ksM=ij`a)_Zj_R{bBK}{+RxlSgkM7|0$l+m+Su) z&+E_V&xsfG7xfp#27RNxQM{~g*542t^*8mm#H;#FeW!R`-=pspoArKc<(9ccm_M@uBodpV%!eiMUBraY*cu37HZ5Wi44pd@74%kvJk7 z%7)@|d8NEk9Fcus` zd|W=Rnew0VpPGeO*bg*Y^?BO)M!*PYZH%Z9(=ITQMpA2Mq>YT$-Y75%v<}8uMm?>g z(bB*>+l>p24q8w2i#@eo=>K|aKQj6neYJsVPD8s|t^KPF@@0Kl?Z>{_zPj3AUjttQ z?K3Q)rJ9u+@XyC^7xT9(zn;QUmFFq@u)UN%>-#<)%1Zj&L8rJ zwA&QUsEx-8X$`g8mEWB<5t!o@+MU1|$7+j!8$PYA1txf0cQB{p>K%ae&CyG(hpoB# zcI(g9KlJx8V*8hV2uWmmzqdeJGRG z9_xTi!{5x1wXq&rp{#G$v+Kzc^k)s_d1?(b*#>K%wUifN-Lp2bqgruSUJQS;i)AVN z%`TC>?H}5u607do{pA(*02{T0@!{3-YJ0FfR1UI-+2iDO%DYUCg{<3KImP~+{X2ONe9WGeQ|;&M=jC*Jo&B=>mHnE%Nj?aF zvn}$s@HBf@&bIN!YxzgzX(s0?Pcu0WBhS5Zf&H<)U;foTXn!LAhH>ao`KXh28pwa3 zPi-q#IqjYHa)Z;s=_6l8pE^kHbOt*krd!2EEJIozsjBsyoZ!mu5-t69N+~|&WM;kY}zjS99Bi;Mm z-x{Of7yg(r7AW3wW1Jf48MiCU&bR|;-Al$q_ht8GW0JUD2o0-QXbVsIonNv2U4F6J zgSNCv`4!+-S8S_e=Z~TI|K@w@wf#58Q2RW7%K7uxT=ja_q0Gip%H_`owGQsCc@Xhwy_Kx6Odv~zJ-ftfc9zmLIAG6EsGRFw5bsQ(+ zq?}q#J*Sb=ED&-^+)}4)&YGjuW^f!S_Id)L*4CeYm8GmyFG%#BP+v8!%G9J-O^w$ zw=Z%AxP#rH*dF1Ia>u$8+{x~=;GppI$e7?FccwclveTUt=;_XL9|^8>7e_j|yTY5p zJ8*}WyQ?DW@n2%Wl2E{18!C1;;Aq=}bKOnuCY0E!a_zuMPSYTLiec;AmNnm2IQDAgnTwr2gN?>~6{=h?lhXeBi3qxxIj|Y|p zRs>duHU!oMHin9!OOFROLvPzg#)KB*{_Y5O4eSo=5AO&Z#_`I6D?=xOMz}*{XQ#Eh1PXE)Hzs>sZr2NCBbIFl1QIm+ltgFvIpAK zEjZ+q)F;>rZSquUetS@`Kl28Gs_)4ZS*iHQ?BMXKDf~8cb|hNZ+hR&d6V=lg zZhN$PPR(0mf@6Z?(Q~LYBRCabFU>|T@&LXn%?&Pq&MXQpQ7L~lXmJ%+7F-!z6WLNd z1=j~(4X&>)i);z+K2=ilHul|uv=eDtaAznG+=IUAl*E2Q^%VzCaz`+z^0Nj5aLG_Z zEPp5v%6z93V=1LyMO9KUddU_@?JH92Q0J4pl69_LT7{daKDQ#Z33mv0{npeo z+z+WYX}|Em@W4o;NTcvIidIeGVN5sT2|F%4F+3$aJ$(OZ>7nq$|6!URJ~g4I{SVUP z;crWLZiH8ShqOB1R=?x#y6{FkQ#MCxoh-itz4ZQybU1u0Toy4RPDFiDky=dka7UX( zN+N9|og&>%re2YJ>J#x&|A?0cMTSI%M@B-k$44gN89XEMKxB4gZe&4ZQDjMES!88o z4bu9^tLP)PK`)L(_CWKG2+jCFjfwQXD=H<&M_JMalqB)~70u{Q$wo!>L8O0WF2`m1 z$K<(}Ttfb3MYTnw*OC5&^f!v?kC6UMQF#&hVnwyh>Rft1MYSJM@&ftKS!SrBav-lK zOkS}30`im?=P6#BNy)v6>KCgr@ixixulONYP29tQSvJ3hon6f)%KA8E$JaeWgqh1RrMv$Yu3I}yw;Xw?x9?#WESa2 z(kSU{MfI4X!n^+yDfjOG|AKc?3}o(F%709r*Q5QOd{af`OQha4v&O{^B@rVO z)qhFagk>V+SCg+regpZB$nPg#s?IKRiq|~ao4JR0Rd12Mg!~xtZzw9yAy2)M-oL&; zNwo2lKgTk>C-Qkp?xLhW>0d~@Q9evj?F;fxl3q-DnWC~g&wDxf&ZOQQp#I1v%)L>` zjk?UeP*Hss`NovDq{O?b_Z6>s|NUQzFZ+X{(oqy1RiH)*CDf2IUbB9ba^5|0Q1RN& zS*D0Q@3Yo|{H2tyQ&j%}dHy?{_e$d#rN)x2Nck^xo=b1Yy{;quBXi5iyW~fcpQoto zL`vS^Khmc#cMd7{!ktmqaEz3iqd!XiSERR-PF7SaBYzR;+oY6e1?0VZ)s_4TQm?Mr z59r>1$tbyefpk78TO97H>LpGniSZQW^+?ZBRR19<|BFto(C((B7b)vP_gddQl$4V4 z4(rr*{XI&kO9tQU29&QeySw00dpIXzDv5D@(zmX zw@|X1bP(x6(ytZOE%IlRexj)OjC_nd_Y#LF;XM%_k>{0*{p6dI9#B-aR#b0BI*D@b zt52YWZB1`Oo+W|2p}e-5^dF?PNQWw_v(;ddR2?}^8fETb<|fInA>Bj?>rrP-NnVv~ zsN|BZN%Hgiz@mSp>t-dT8uWg+De((@Jd{a8_hWei>eW*1uH zo?z8{=u%w2(0`%7gTITvtG}DSyT6D32mYS^EB&9EKGTI&-O0TOcJ*{1`IiC7Zv`a( ze4zI&h~A%1^u7(=`O*tMZ+(&45yQuP0a6Db`9px!55;>rE(UHt0dE1h6KNpc#xVo= ze?YokEJhk89!L5qko--+`Zoi)AA{M~_pnOB`r`lnZGfd;r2i2p`XYI!cAlIpr|Pb}PySMm$lu7{=yCab z`FlM9-1{$j61evhdL6mc2Vx`vVARL;SAFIFkiNwq_b2q-K&Kn(d;ACe z2lWFAoz@SUjjaRvCn{RmSc0jUfbkSCyd=S^pue*h5Ful<7+cIqFkP*eXe6l&@pqcBqcEea#`j|KiQ z)_*II(%<^WxqovP`tNrC?mp(f2T1AD{%OESU-r+0&%MA*iojgVw}1Oql&Sbl_QUqz zYF`Z=9>C?wql%V|R8+gG{3-veXls-T$x=GT%&CF@KT@>TY?8OZO?Uvy}LZLO4UthZE|;LLt<=bQ+8W+4gSNP(AI)BiOJ!Cv~2gq zZVVj?CzMqidnl}@mgKG1M4i;6$nm6=T@>}F`$mR`3!_`Z4e<->G}ANEHnA)0*`__i zy(30?Q@CFwlGzB`bAI@mOb&MDNh=dl*qNE#VOW;&8EFxo58HHM&nC=_JJ%E+BIyWM`Ekrbz;50jxFH zYp|(iBs+v@uf?}SW~7%#$0pimcP1Z(KI|?Smf4(LqU^ZrPG!eMmlw3bovjxyQI=eE zY~GfOM_|MC$pv7y4N8tvRvUEbaad)v-J&8gDbXV`HPKpGa0TO(4VUf=yKO=Ipl8XY z78KlA(6eAzWMy=4rA3!I0-KH&UF3K{E;T+Xvd5$TXdoJkW}ly1E>z6!SurR$THZXQgY*>17dQR-d*yv2F*tpol;xV+&)C$ChTwVk-)!r+UR!$JWI*CML%=$KH;oiNWbniJ>_q8I@d^*q0can1Fq!C1xgOCFUgNB_2sEPCSw9msp-yl~|kD0Bs+T z*p%3+`ljUQ#P(#v^s2C%YzlCVMCQB?l(2$(AICC2wTk*C*3ElgJ*=Oizw3 zSeROKYD$hvtw~Nyt*;`lYAJD+<=(X|p=H|CF>bxem`DC4IYEj<>ZVxtY=($lXybf4AC7 z4@e$kI_&-C+9%6WMzSo|9;v9}tN4>CWl&m#+$u@+{bx*0MNaghO7K)|o9cwrt>T)BQoYFGYEpet{ZoSq9;%*lJyIj_9a1S( zd}?^*_BU~ z{DS%E!HRk*J%ExCq=QkbDydo>O3A47i1et6l4H{o&_hnEl4ho75x!4kLb*T&Pxtg3 zH3CAKhu@mgBb2U6KapOJQft$jkk%q?!0*=duJm?%y|gcVD19`2B7GvGXRL}z0-Oga zfrNfA(-7m2YAMsCU}2_7rd6d>@m06IoJ<=?+bCK!VQhx`2ii5$Gq)kPA=5kCNKvGI z+#Z%0m>HJ2F>?*+Fw)VPahZvkDVgb+`;i{XJe*m9G@n#)D>4hK@M>!zp3X|Xlyr4w zU1nou2hwKJw?TJj_9Gq68d)QA4Bs-votB)eN|9^|sTQ7Y_0%&K-)7m8Y})(P-aqgDxQ@OWM^mRW*1}^WtU`^Wmjg`oR-#SUp*~t z$(}iF!&t4Rv@?5ZI*6+|_@AU4UXGVNl0B||zcKl9m=ev!zEjHN>Qwfhr*KvJ(5n4u zt~l2s*BWWo$?~0ZJ#wWLsV_#*gL6aC{zhTEtVYa}bJI|ER&FNg95r$-7?yh^w>bAi zZaGHhtMJ{B+mzdy+g_1&<@QyiL%E|B=|q8Ek*tDHTUva4^e&<%dey4&x)4@ zC27+3+$*7Y?H)=(+^a7o|KwifEc1Y(VjktMvgFyMG0H!tyjW2=TuI~&l)Ok9B%MR~ zFBH{QQ}T-9b?@xFHtmnh^{%!#%X~q}qbx~1(XS@2lm1kdk)2tl)T7*MKKX;B%ShiQ z{k6)~HE zifYtt{dUERk5qYanDV8HO4g%3n0$ZAw=1es({#2b{U^*Vp!~-yQ%3$X^1mnbG^)Ph z1+P&1nsT-R?IZF$i^e+AenUwc(mNFud&%EO>L;B|I)(HSQnm<GvD*CB08 z$~&pG=RJIgbO=jctEf0m$xEbO3p$tbBc!Zr!5&6X1I2R6+4jXFD7BT$~`@4NBJ>I){=ImWE&}UPrIIS@A!4pb?Vex{dpyqmnmwPit4wK zve%NN`uqG}Huu^``XFf$DSHOliTq-FVcULvIo|mP-Qe8S$mx&pC)}$$z=;3VHEjw-0Mf= zy*ogi(Rm;Au}ZFg$bBc1vb{^Mzq*=|F)Tx!*Kg<122lPq+)PpnOnl# zYe;#W(owv||DsK$oIQ`ue=XTw=xEUC}oRZ)K=^-Z6o%FAEzI4gK|?|<=5$^hjX zlw2Gn|8r8_0j(MNG-(S}Mq>{qR+8tDHR^*tRh7|;Nn0~_CXea$W?xaB;&I+#?ruf( zDCJ(?J3;aC6_)uSDf<)c8O00lXfJc$mZTBVR-~Guy2HKLe)V~Z*XJrK$;(noCX)V) zlzodnMeQqXmh{@rG3N4Vu6z9q@1D+ft$VHSBA&4cDeF$Zhs$Je_wGz7bG_%$4v%NHmBWUYYd2Ipd zKRn9vwOOVXCD)OEf^;Y)yaU=lDY;cqy|0q%O+B7;CaKp48qD=ZZdWL|j46qXl4twX zKI4%Ovt%Rg%XTEa9!V;RwuWVXO}d7X=ScgLvQ258_EM7tdwY%dL2OWai9c{(wiGd& z{0dUuNwJA#j*`AXc}vnTDRo$*c4-AXV_lZ~Qc-xpG(?^^lXn;`|7uP)Gqxh@|&4E zf;^vtn%771K1kjN*+b>Z9{fi`6t525EhzEsZCAyMeTr)Q7y2d4jg$VG zSN=M4UnXrr$!|#Sr=&JZN=3y7lys+rZBz4(!@7`{^LnT!vXEsOP!b`}QKjKsm8B%U zA1i7I(q|NvybqXJ?u2uV(&l2m*kY`jV3b;jQECa(M3h=>GlTfFdW=u2?>>iUvF7et zM2oe=o@vZ6yIA`xiq*avi&y0zOclvE8Eca*!u#u9!Q1QbenZ4CrV*Do(7AFZ1{DU+(Ygzrx?o|092Y#5wMV{(R;?;{V)# z)c=M5g#T-QnZMi=crB!EN`$2Op;MM=n~v!s`Y~)qRP-ZstI(`#)-&syMP>uDp?S91 z$UMg^c6Hb1ny%$KZqN<8F*o6++y-t_x4GNGJ=Z-C{tj*2c5VmvVz;L|$-Ud1>P~YX zbr-oS-Br-kwb1GT|B)BO5O_f-|A%h$f9OyDhpXZL@GHDG;z^`$^LbFQiucjm;Zb@! zyaaEDeTW}yR^jbX0zZe=`uT_xya*A9Z|T3)=W5OLzvzF}+Td*h3$=FoB7L{kUf&}d zYPZOXWEX9zyjb?so|2c!OSNa@WwM{PO7@onwY74P9HhM@2g||Q26=f1$lD$I7wVW;srd*WQ5d#1q<9<6@4cjq}Rk> z=r6HQMf2&8s%Soai;Cvc52rewwh9=7=}mDhy(z}fo8ne_ zQ;efG#clMaxRc%#vy?Z5@iA6q|I+wO#k=_$BHnGY?>rTo=6gqZR`|9l&kElm@~Yn@ z*v@~KfyevTPJXc-t9GWZDz~QMn=g~!SIL!3ZRdaUd1_nbudn##_w|1BF=Src*ht@Z zh!Rshmv$HXuXW^S8iW0IYD;QMAd%=CACrg$a+vphAU-!~MVDtL1`6XV0}a(2Z=gwR z1!i}TBt)Q9A{JQ|Xp^XeS=?Btb)t2kL!xt_YhplRK%l3ZyTz>SOw89VPi%_p#4PSU z%)gcedI$Pp7B;8ie$ppm4+n*M9PYT}xPbajOioFh2u#6T=fY%H z_#|vh9u7=T87R{;<)j*=+9rwv_ooKsV}z2c)!bWj0A|#dAi{|8Lb3bfa|5f>lkvaS zWhSP!1vaL3;+hdRgwoqWM*}-l%uu>0a5z#cI)QORM$idH;znXQylPVLsu`Rf8mtv9 zLTpc?*ydof$dPF0XeQxLPfiR-T8OG^tNt%MUOFLl3-*fd3HFJPLDbG5%xkxg?+gw} zKN5GM@X(14!0gh7=q&gOY{G2PKK!4J>3#4W*bp3<-Un_PqG}jdlYS&PHL*MhFO1}9 z#?v5{Ce}N+C~+dVBsworE2)RJBVuhCj*2K6M$K$dF)#66(f0AV(dCGI8LA>&5+Xer zkx3%dI$b9|B+)m8SeNv)#I#HYM7YEfM>7*q$GtFhHIor6h+0VuR{l1qwE>~dnTg5K zj7iywe8it5wno~j2$bZ;(5C1ksX?I;k&@7;X!}UB&{%a<;hu@3@UD3TadWd(R7q%7 z#KAvaj#>1cDw-s<2sJkaUP(O=uk}Rou=1&4S{puw5*tFBGCf0E6GvlH;A1h*^QQ@q zOLkRpBJh41iMia8w2D7D5!R#ok_+K8G8^||qw=vy%}%UBy(8o=I$1@FB<6$*GXoI? zqM|?ABzvm3kJPg0fOte*5xigEXM^~Tf#GXX2h*7E4G)WLR6aJImw<}rh_y;@RWTi@ zMU3fCaUAoZT^k|>ylqm5u~?dFtGsK%>mb>f>59k)cwB^cL^@?grw~^d?Hg$u-k+M` z`O&~%W(*@AQqjfATPD&d-6PU0H3V@FC8;GU`XRb6(k)IoS+98s|knTO*Mcp0sPf6SWLu-LHZuE_f2VHF7h zs$wDbB>a(s87o?ZdDIDrj5r<@m?fN;7=ZTPH|kG}f*%chXySX|O%qE`h-OqSwvWVn zWjdtxM2p~kF)CV&Io>+a7V-5_Xh`B{w6*fGQ9d>)L;2W52SdZ*M+1Exh3`D*H@s<5 z3!;;w)1q@?`{73ePa3oUrSWspyOcjoawF<(G0NoqX^@MfZHS&wel^kU@jZ$5={eC| z$zyrX8u(_kiRqc8u>?G9(D~qdIF?JqVukTBv4*iGiG8tFo==VEPlIjx(!_3z*Ncs& zAI<34l%!5SnhH;vQ64;*Tzq^*nv_|H);=}9=#=z8dFRsx$yc?{M?FfUcLx^K;SbS z;007ArN^RAS(cfY9($$~UzQ#V-=OMgCAU3VJ*VcamCEY~Pa~DK#9zhNOFQvoQoctj zdHzT6KvF4xHRus5t}NkC1Ta5dEh+D$M69|jGd(@|R7uU-*tZT+F;Wq}eeqPBa9YAM zfk}BiUF?g%6bCl^4|D@013xl+v#eRnjOtdB-A6u1FK$IhE(tFP;D=leaw! zEqfNdtJLo*q{WJ=UX^K%;-JZ%=N0oRa=iRii6`ib#VwSDPgY_RS`QMQ>DyCd65EmX zC3fL^s6u{J`DDTC;GxVz@K;i_kW{b2Tkz5vr~H}Vr!Gj6?`#g9!FNRN2-YaPH>x9O$9&sxoR1YRv!qK%UshCnPFsZdkH+X6d8?A>y6;`=dz~tSHFY47 zyA}2KS5*56<-g$(4zTBCu$IKZ5HWB(kSU{ z((UTXwcqgiV@l#hd1{0HUw2mmUPYCq&$)H$Rn;q@A%q|y2>~Sw1Ox=s9&i^CkR<|b zDHHh2#5&S%zsZM>GvKe zQQ-6IPJQ|BQup2E+@;Q4&bd;qF~-Mw%Gd)LO0S+K5PC&Bjx|6tI%P3(UWOc1PLkpElkxnh^MyvNwB8^yo5U^999N3qMgD@%{y ziQ+R{==qkxC}~=06{@ZLcAkWMUeFU9CV0ESODk*3$4#7(61UJCW>Q%${_zG?Sg=s= zGr^;REGX;Ae8AZGOM_O1_}3DjFT~zR>^lX&6Q4MPRvT$Ki^V@!3IA5!zGP506IzuB zekc^{E^n_9>}rsu%~VRdH=txt3*#k*u?DUCBp#`E-9r4OA8C=K3}k;*XYp?>A&Vu? zS%M-j$Wl`4HSyUbVW!%%K(|cE^ApAgeca?$q=C;$&2n=IFVcj8G%!ocXXzJ_lEECb z%motuki>IVVh$+wx%dR@VOxw{B^o5GjR9Ymw?Uh%CU$A1EMp4?H7L@kEYgZ$NHfzB<4-|L z3%+-UOl;?oY(66~NQ*j;e6#eUK+4%_CFusT&P~Mb2+H__JqOb^juRb#=-z%Hqa zbhXmPr(DKb>;bp%m9g_tNlR#`YRa!tBnC^~Mo3`utKxH5-u?(_Yzf~*QVC?TuMnR* z12q2hp|P_Pl#!4FiESyblCekyRq^|Aamkl{Wp_KTL}R_!JANO|se#pi9oy+WA| zlGaTDiccWt{fhCS;EQjG|3QP5lKIY)*hb2)MjCsW{C9*rx5^QJNriWb{RbtyS-w!} z`y{;6B*kiyqR4q$(#y_~_9m1GSL^a{yE*CG+ji_miMb<-3aDehqP~M@c|p$5LP%X} zgrT!%DISJ{`?un#Hl^ZDtwxaez5(*yw?oD|8?xQKsUH>MKKl}amfCx=Z%s84;rLy3 zq~bzyIFTAa+v~O1^}GWz;rC#-GzZe%Lm?&C1w6mI#7$L@X_HKrDj4sVOQ?7PwZ z)CYT^4`HYDv5LG@$4+aQYElxVQxj-}y_xRB?sRv^kLN;4{5Ld$MpHFX*`4oBr5n3t zcSxmzvNC8nLy$npxF0M7nr2%;lk6?j4w_+mK<+#b+GLApB#kKxZDXgp8urFhaFbXj zcEzuQ6#K1o7c|KJ3cIv@5o?jLK2GYi*a5B)Z359#=OA@80~ zgJ~!<)Q+Rab8`xYTJe>`;=Wc=Zq9`3=BpKC73E`Mx83?_coOIIv7Vh^m`w@vI<6`YUpj|cPZ#`=63<&EDh{N zQvqXyFqkY@3kc1h==a7XF#{K)cN@Q}Fsd1|0Y)J6yL7=g!PnT2sUlBC?m3nMVQ>dcws& zWHfu=eds_$Ja9XSG49BGnD^_W-@E2(P@ZqRce};7S4X=&731z1nkW+*QFVJIWiFq9Q) z5^5T19%>P46}mq3%TVjkEull9PjQCp1kQ3D$C<99=bYxUL!X5{5B<$az-g|kILT$s zc3t6AcjBBHPP|joIp~h_8hPnnbLfP%pwr%iD*LK_4M#(ReNyN&G}t$T=K33;3HByv zs_)=;_OtyS{{4P0KgZAW`}qU?!Tv*ju|M1&1D&|LpAG}iwf<;ejLl1uq^ zqMaP79;)*_C)REb-5R>%2hXhiI`oO0TRVwUY34+lIgeJ`Np$KsNlvnp;=JLG@oIaC z-ZkN~avm)>jTW3mtK+BRG@3b!_K$ODo&2tTcWAMF0D5e5q3d=4G}#V;F56-LNWa7% zE$7rGRh&<&O4_~4o8or$W}r+OEZ4IrX7ia@*qAj$I zcF-=`ORwMt3b}C?H$;xdofN;-lk`;mjDA)>r>E)X^<+JRpWr9?DW1f?<)`&5o~&o{ z6#gAge7#-n)* zkL7XvIFIKESp6EIN88upwuO&T!rQ4XPM@98-*KrOXV zphREWA=~9r{jENwPuo@PU)a@b+jgKa+k9&V^L4m2rLE+sANS{hJP4zIAs0oKm!Ie9 zT*@1H6K~ZxAcJkGVS2cp4*u2jkxnq<@EDysjIUo1rzztP#~2eIe#_hzah1nrVm5!5 zB2E)aM^LRA@Y2K>#ARZ=RC#2Kql~#jU=rxSWT9?KLFtR3K~PI(Jnw}6Al{3srBdY0 zP%$19?SeVb#m5SsMxV3;euvREgZL9*X5;C3*;2R?BZ$%K)eSSD%TT@6!kMoBB0tDiQU9mjuV3cnynWFSeFf;C$nTe@6^JP{@vlNWu%lb{sfi7-b3r5Q>h^0qa z{1+3S;U18`ijhcRl_v@3ybtTY@lvddeyP9FNAy?vs6M7Y=NUYcXYp*FgL%??UdW4h zF)z`__1F3Y&*KFbRk9#u`MO{D+aCL6zXU1&^w#pzzbgvsP}lMRy-Y9HD|m=r8pRcj zis6XHgB#kUck4ZRuimV;>MeSk-l=!#?RtlPNw3ta^lETT6TnS9qSxrPdYxXcUjXm2 zLBFUsqK?Dhb^4=G4&(xG9fe#-8az)Cn5HLqI)%XN?4bn1>(Eu^5Dqmk91o@GS$YX( zrwZSsG`)oT>$!TKp05{hp`KG|u5qDWq!%MK;k5#O3NeO|BdqTsFGG-vBF2nJ(od4~ zQ}j~38vL42NiWeG%Tq?F=0s7doPUhqVR><}JLHxAAt~!8_F<$e9c7a5}{al@cYF>5|J#p;AN1YgRy|^YO8V+0o3HJb%8wz+dPu!c7=U?ArcPKH)FpZ~W!{3O?ztHnfRh~oqEkDi3i!^|9uY zhIW~W728HwpKgrxlV-Bc+Xm~w4`SYzk5%ddtlbX5%xEaqw})eedm?m>K1GwDbM$H9 z|0_8QiEQW6vLa?iGE*=uZ7ZZ?%p3u&3MB}>0$s|!0vT{8J1w0KPDkf%r?b<=>FQ)V z_c#-rInG>XzO%qt=qz#*+$^`TdyU)F+}wv7NGon1#jn|Uqas%HV)zhB&y;zgSeT_j$>Qe%^o#;CUa&1jars&E1934{~{)C!7}jSo2Vx8lY86EPu6kAVcT; z%IQT_Py-XFrZd}FL6alc}7x=HRu zy%RMwmfFcJsCR*iiPRN$@HC+8aC*22?$}%Jug8jGz||X$;7O^oIzLlBaOWVITlEMs zUP~x!blg&PbKe@pp@v&hJgCwOH0bN}rABhEWEN_30yP%eT!VUCN7sQi`{)ML)GfO;H9 zgN1$%xzpTfG(xC25>#wLqvXEE$wn#*nuW{z6Y^g{#ee4V{G4sk%wQ*B)Hfr@&(#{s z`ObglI!hUYzkLN{b4(Olw~YUjxqBv7c^$Ry;sbBSQ9bs z{#Z#cW{Fy6OswY{N#{0tsC&|wcCvfIm|ku78!;2HZ*Sa5?zdtlWA)6qQ?Sc!%(__l zGG?mijc?=C!<@jl>$|7KY@n8lndY7mGhM9`GsFE(%uM&Rn2pp*F|*VPF&ksnsZhF` zfo-s>uTaAFz+9YAP$*q@V7|Qv*bn>niu&7s0uI6n14SkFLEximA!gafaGF7(bVo>` zY+sN<$-V?8V&zz&R9^v;af(5qL~Vg}ar!`^H0^-(a5_MtBu9Y_)FNP-dmNaqmI5=} zuYsBFF<>LL1em230~_0~1Dm;j2maE21Nd+D0pJYTZ|sS@7l8LH!LH-e;IHR`i(ZSB z`CYg{cR%zMyhk5lAM!YzLhA`(H!=?GCxx%(hG;>purGNl+E6E~nBNz)B6=LuDgnLM zi`fUU8h0*a&yAU<))}?P;#oHuiUGGIPQ@xF1 z*7G)tS>M|tW}3H6%ye(Nm>J$qF*ChgVrF@}#cYhT8>l~TKCln^i>be{z&xCsKs~9| zriMHqa<&3AO7s>0lRVTM@?+xo(0*4i}A zpp^SHLkxW|Z%{Z9QX4B}e}*mz^mpCMnrHYDf2&{WZ}4CAH{xc&&Hfh8@jTD2+A-$5ky5m5nN~m z6kLFc3s3}c(dOy@{dtmW?vU^I`}@C?q-oOJ=lSe?5|bn;0uQPb-=b-==EoYlpO)nE zEhR}F)S^TC&i{^Uy;zcC4@=U}YArfj`@TJWMPn{fJd9M1ZB$ug)_gfB|FnnzP2W1aQa&!ktVs8!~IB9|u zAUScpx_Cci_?Q{Pc5ZC>1>UP7vFmF_3>iCp{_0ix@%_I`k|k!u(1AmWuU_gSv0sYu z`J55>MR01+mw0~+UMG(jJ9&EAc1K@{-OiGv$eLru4<0z}k4H@;b_4JR#f}{~eS)pN z;=t=S@%i|11IG@{zCNT3;G2*0Zl5rI(&Un{(h$H?p5C7@ap;6fQ*)|Ia!d$ddP=h3 zJxQr(aZ8G1l>(&@DO~Cxxus@3+;V!k0y(CBPw_&+3n`?2Pfe92M?@{n;(fAtp8~{_ zJLqdI#QTd-?=NJ#JM8P~H4+jW35tU;2U8MQHcL<{dg{vOa`D6nnBqc$~h>nW1CMBk3<**IEC$g-qc|CjPwd~oGomTD_ z<#%h+xLdbpy5p)1m9OOXR^p;SDOFR0f_+yFz*UuWO%77%7jnAWR_Ipj?tnskzmnw0 zw9o?!s<`I^)+}w$`N45(4l;^t0IU z!mhs%yt?v4~6iw2VH?ilf#SUOFTlH^RvP7wbxl}so8MJ0)UcyuPo+s?K;(eiu7GJa;Z zyyJOq=bgy=>QTl`-tt86vl(x*t$Y~UdYF|z%69Pq^zSIYb(jy6n=`N?llqiArRG{U zNmZqZTIFi#IE9y*f`Iy=6L8K1I;WfvM3@S)yF&{#N02~Uki8(1`Hw8y3(6W^CfMD{ zg<3`L-zC@!D*NBV*|Mss*;zTc*_lz%(NPImsY!{}sK{6qtYM2v%1%wqPKb=o%*auq zdw;njzrnRvb``wGZw&6-saKDCTSwKr^7_t;-?D`KQ9XvSd7TD!>Ns-Mpck)2eEvn5 zKi`=?t#79`eFk(Ly{z|3SDY8lNB@0s+PuCHcBy~KUCSEFyHcoBR;nmvNj0S9VVRoSZb_TEd3g=~Y@<$W16|YtxTw~Uf(m{%(Bi%CR1{C{Kzl(o z|C<6SxnKnE`6F#MXHIse-R4S2gZ4;H$;f3kuuQZP>B`N?5x8oRzo}8HtH<|#>Yh+k z=dXod^4D7L{`49zX17Q5<=;m29PjASwocVnwd=QLONSmF*?mjrmp*&@xuc6Z@~ zdCj%^_N=eD^v-Nm?(hTK!5Y-xK8Dxjm*V)Ry!M1G^`N`g!|X7rBEET`@0$b6-^?Oq z*_M_Q;mo$nX}Qr65iWV)(+`)|T(wWxySC=i`->F0)_1%gKT~(hX!aIM%x0C@dlR?R z;UDlJ-_UoLlj|z$pdrJgc&|cGK~+_dxUdY=c#Jy`&w=SNICM&`MafiBTo$KIQPNmf ze!dRNjXW30((CXumv$aMwo`e#=c{vAU%q|TiJttge3s0Agkfb;EorS9ryiGrp^5Qj zWFbI*tDpXEg;XF6m;Rr8oQ>q0_^*5;8^xSTIxpfQ*k)#7OX&NO_&PRU`U|!qP74&a zLL%9;{MQIM({f4g*sRvqHzhZbA2K$MuWR3E=8T)~jsFhcG>#R?yX9Mufd~oarGWWi zB7m|JS|@Pt)jql#P`!pLiDiCpRgSqj$6A$a8T6T& z3mFZ8K5MBd<;vsgq?YVYl1-t+NH&3HyZ=b|e1XgV5+}6FNr|%Jut&s4I8%gN*&IR_ z=c>7n?*CS-c-Ys)3Y784VFQ(cqeu0V= zuhDm|5e=Hdrsn|k`F=hYJbfgNc>$A$)SxHH3+17ERM)v7Ef!~<*&7z-}b>`q%Gx!g`e97;y zgjv0YPx*a|(qmlj9)o)4O?-9OH*XI)Shb3K`rEgEJk@E$*j`@}|K@^j{lV=)&^4{R zd|@&tLh%R`1gc&X6v%#9$+=>7cW|K=U?tyB3l*QDBSa;U(nwuGC_5J(#4bP!a zxj#$xJkJ_C<>X)ZyR6P}<#h36Sxx{&MuH-Z0ZE)RR*M!sp%)wmA~2mIVR#Wn62$B# z{67s94Xd+ zB;Y$L$!fLv4lL-<@9gLdG}QQ`}I{n&Swo-@Q7d8=nKq~mRGmOb9>iKnYNasydJov5olzUGM}JB z1f_^L7Bg`qpYmYD4A}{4BhN+tiJaxBqNVl<$0AMp*Jeu!;{e))|9f9iSS{S%hE@ogX8@u z#1#rs{V#!0s1+e{@yX;Q>rN2!xyi&JivDv(jv6zn@2J`QA6}dPHG5>=k^g*lXb%8a+a{qF3HV;ME}je7l?uZrL3KQVtm--+Yo zue%N((xdyRQ6!h$N*<_Hpr4|EjR9J8QZj)YZHL`|f{;c4B@rZ~(SZ^8+-!F=A|a!g zM%W9S{=?DH4K5(g3bvPVO7Kr~ge%G}S!~(4$w~%nw0=azmcQxj&vS0BSaWkW;~V+0 z77f{qJ+_TJRrU!TV`==QkyjStWb4MDHtjAKaHCEmPL1 z?eUvv1NTLO;p9Si2{?zv0r$+oddjtn_bPqmQSbAg+1R^mEdQBsx|G#Yt;*-%H5;x0 zW#Lv3wx$1*-ogz7h=UAf~kzKdsEAfAa0Sp22rX8m3E2l^be1KRm)sAb2c= zZVSPa;$TtCA)oTRp$sqHB9Hx$Me}uc_*&*7c&e5>R5Z{yM$p*irLoQKF7KnUPrr4qIlnXGjp;STt0JHiOqM51Bq^fAn}8*&K1hrZ&z4YXHf>g$4Y7^L1|+7k-c4Vv zyS-IUnO~RxxOC-qoBkc!1gre}-m7}|T#MAeiWhbdt@&c_4yUhOe5328K5g>`)#DeN zbni~t0-UBbuVcMwSt?~qjik9+?Z!=rV{6;pNxstrfJp;LI{@hc_JUgeP+YSH)S?d~ z3J)&?Gq`Kn-3Y`H;bauLGoaG_AEnP!Ds)#$FGw={5;nJi|0T{U!+%Pp7$r3~CjwmU zaw%4l*xU#yAyJi)u}Q!S7u0=xvh0kANY2bqBbfIi&Qu`D`dRQ#?{u3JKV1eQ>)n#=$A8(vm?~{=b{S_xdLT<5Te;2V)$BF}j zo3^RZqe7*$rzXvlV@f1`xmB|je|@l@v1c1s_Po`;%hjW-FPnCbZ~BGr;B!*qwpOh1 z8QaO?StL7t?<$|bS3a|>TSxXq=sDolhS0eW^sWtdx`mhb{SkqlrXt*u+iL})t)vYC zRmzLN4K{MP79@U4oQ*`3_)k$@^E?>B&&shZT2A0+J=fWo6RZlqf^1X=IS$rYk)DR; ze-jXdLH1&$jap1xJbibJon#M>4j+|G*1FWGbV=mzxLxVTZn*Bb$bWLJcFFl#oQqA= zN?h=s!d-Fr#j)|Od3ak}jo%l9`{hsz2zSvJz&0BFW;g*RJ(lT6i1+(SHs%18v$N7t zGKDQqdYW+-$RfrKny`RB{D=R=*r;ir@L#WgKWX+Qi~GZKqxYtke`(gGYqC6(PaE3v zJ>`m8Ft|HOdN)||B1md^9s9w+aj-6$rEWcvNnqe$dqIRBbaL*?m|jA@fqko#5bw3p znHiERA(gn!XRCA7e;xb+c;;t*dOdR$b||q00!KK`d?PB0c1ibkPnen zo8lnhA!G0~J9CDmzjS~Xp5FAF`*r!X0*m_yKl@>m5Ba&HOg&Yc_2cJlum1p?5geTa z96h{H2)@*DR_a#}Y|q@NfguwVi>i@3Ap~vjf43dHDHpm<%B@ z$q_la1O|b?uPDbn(*Zzd&k?%*Qe3|u@;EZMCtjMQg(M{6xLz){Wf_Wi+Y_YEV&&2I&#_cExXv!gDF~ElGmTZJ$7AQzlc_2SQDiazJ2^i2R_Y3@(cZH3en~yOtz=#dCsRVO8Wj z{F~reV{v;lxgE*o20Wa_^%bdt_xgIUF0P_q())evEPV$)jK8Z`a##5mKiZ}08d$KD zDkiU7*QI9B0LewDP#TNL7g?2AH&_0IB!0DC1G^2gxQp$}Kbw5#>gZup$NF%Tf@_6H zZ8RyA9Qr3PqA-xUe3&xbLfeo=mxS)tthx%fiNs7U)Hq9!TWzPqJ;Nrkd{2=a$+yWZ z5Ap#()Rs63~*JF9XZa^?Fb>sJqBIu+R6e;xs$W{pvpp!9)gb&eo%lq+B+h9`#7}|1IP>MA=z^xChY904rwAZR zrBSvBFUlsKh=~}X91oU6u;gn#maMG2RgBoRxS?_e8W`5XQVsHMhox+(sa{KoT1}+S zMw;Zl6gQA+V(}qe7bU*<2KWk=BBl0P za1_PHR2&KQ!7LD>GpDd8M70n_*!2*Thd~z45N$w163Q|}FqM!ZOfo`jc9dU{Ywr7Z zG5?Bt_`fV<+MK!L`L8nblvv!;zghYD-+xRPG5Q%9uyx_Z7K();;U~A$0=#}Q9Kkpr zY^D-XDSO%N#xxVToN|QoaP^7*ZN=Z`Vqg}`>hxM4g5cF z`#W$OCb^`+nkA+T;nqSv?*Af!f(=9AW`q)=?Os>TZbGycEX2eORx#u^fNzm{@p?im zDnU;tCCSg<1I{ZjnZ+zv$m;O7xbz@@_LLd-MO1vMRBM@ZdMrSUB@mTZs!nO)L9ui^)TJJCf(+>kElGUVjS@_Xi6&X8 z$!Sz=pg`1Ll8SbzzT6j;q`*MRlw{{VEcN$Flf zm^>6+7rNnfn0%7boH(Mw4|rpKg|}4qsHcjWsHgtGw@wDu3h}LWsh$R9R*E%~dNgSs zT?IU5WE_zQR-`lt4`pzi4z-Yf#yutQFj$pkGdwEvO{07KHVeC}d{EqA^+Fb;ypQWs ztdNE4Tcw(sWD6+0zR3wRslifZCoyt8z(C%(K;F(;v3A^oT(XU|Wh2!Vk2>Isag8K| zbXc5-Q4|VQoX$-3_j9Z=KgBQo`YY1i zr:f9GtU8uF-v@^NtnjKN=O5W$DEfkgs*!Mew10?fp}I`W0Q*}%*;VrGd6J7o1f zp)CM-(E_bx3%uwNCYP-4a>_UG9_$sq7ykOsd@p|L!FnpMv%fsmJc*2RS-vh`BB*5W z+dV)PAl2~ln+Ym$ZC%6aQ27AyUK5;v3r=V0tR+w6pYTMMr^L%^iU)Xpm+i_fTp$R zcdMa)9Hui(=SSp<)*axwWC=wB%D|e0#gqvYswtCPWx3+2RlEapTTcIb@rLa_eUntO zP+0=l6?BeJO9AnQE;H3@z~&~fGbKz#6yTUV zbtf*Io#{wIn8Q1)UTxj+PxuXMCVf{G`3t2Bu5FdlOfuuQdW9N86a>YF%UDPQC@2KM zFFAAcM^^a~tNeqyhv&*yJx}4=SV^q12Aw7fYC_@|x`4S+53AhcTDh-#Rqu>r0pe?X!R7cUc|v1C~QJyD2n{75S%F z_;NG6S8{=YU6g?$?CDJ8Mzjd$X_4@7V{r+)Yd24&e`?adSzR{7> z9A_SnGuH>6!cnsvra8-3AeuO-1mP`V>OQ5813&8Vj_%ECmJlJ(LE`BN@sy!H1N zC&f<1CX?kSWG93HT*@p+FrvO_4^e!yT%*GfnT4~d7ia&>AF`mIKm1eX_vIm-h7KS0 zS&zJNCx)^#raB+7NCI3-=FJsGL zPfDhanm=P_pW({%$zxmtMv}Iw0O7xGje?B-EgL|KH(RPuOCo&$odQYwB)C= zz*0#j5803ag7&1&C?|9sRAx3r8wWv~L{ef@6czX0+P(YJH|us+lC$<+y{Zhm(&za5 zkv9XkbiY!(m2^`x-c3ye{>vfTzfem~t4R1yw!1@o_&0$k*po3G&73fzCEp&&b7g+s;1`2#(f%VP_)CzX->k!6^-CMWnf#QH#o5eKh z(xp-3E?p$KWH)ck4&%BZuw|_^#YH3ovz5lb;!^r`g^>b^trWb@8VPMF* zKoe(!blDEYU$@x()+?=>W~D83b>G-s08_O5l?#p^0+*}P{9u7H<3X8Tz)XnL%quYB z+Pc7)G=lCb2`2QXUjoQiLb-yTU>J<)7xvExB126Se0uX4>_vWzX(RY?t5kfXC2Pj( zd6of!xuD1{Kw!>Q=@957@L^k^7$5dRZk-Ehsvu3*RH4hf2QW#Ia3FQGnsBTiK%B-2 z`Eu%f=kIW^iTb@oJh|Zw8WbG*A#qq2$v^%@N9lYBe@f>^HaBq6xlh|oyzD;Auea>| zbOz%$TJ@Zj%WtT)XRO@6|Ki7ugUMxu9Q{VID=TjdMYrso^-6L+YZ1_F zJDbjBI*RV0i=zm0Nj?pt9xsm>Gul3wqsf|-!Z{;w@;iqQ$|N^4>k)Kwp8Mc^Pc!*g zpUxvZ769e5c})OSD7smi`MO!qm?CUmsb8fdTE}gH!!NJoG8w{M(moW@N-kF<4_~`2e*Z;0p(Q6Evsjwjm#gY%;+o%&rcfiLHgAg|LZ_2_zHtECJ-%YC+=Z|MZ3; z$r~aAP0V2QhSYlBpWQbULJ$%(^2PVA^BbdwEzQhc`ibm(#4k_evgONBb2(Z8t(*3Z z;LS!0OyeXDoFoh<8LPRxCxLfC-rRrqz+@%FvGkMp{R}HvVl7BK8Lb4_y2mII0d~$s zk;6eY!0%^R8-IWP=x`_J*N5ym`y)#jJ9trU&ND;C$!R65;-dUVsmznlsyy1ZXB0a< zY>!tq<;#LwT4-t*d1qeO1!Fvs3ZNnV7#ZUT6@8UP|^%F;YnV?)l;OtTDjD;(yN=uUMl5sIpK!|2Z(ki82oU9{fFX@ zD%9e<@1Z9t$^RZiDJwON8X-vj^;Y5NXqT^#9C?}OXc$!a`{e=;2E!4AlDt4=@+(Dv=!tnA9SFf{`ioM5mqgDj@Ikp1gq7<1tQud(@1p;r8XG8o zQFLBtXSAqW&f=#hW_k24H8Glr=k?18Nfvk#2nZI+#^QYn5>H-8k`%<$BFj^L6?5^s z4=!H3k8szu^8BZ4nOsnGUVhQjU9IiuAd4JS6l@1s5p#}52TSC5^cSW;ShpaW6y(kE zc%L56@c=d6yc6&fe4J(Tk60uA!PztXeLP=eIr87EiRU-ZHP(e6mMh8;poqd-s|*m? zrKTF-%Ocw7kUP~?%7_gD^Z8#C}mgGN<4b#x{2 zMJ$(Xk#`rx*1F>Sie=R9sn!D=t-u){0SzgAe6#$twH{)`s+v>8h!U(2N4)}`-y_xb(` zCW4rB1jTUbju4rn|8(pk8=lGfpyctu`WC^O2v{crRu^FP=Hew(pV6D3IYiRK?MN?( zFu-bwpcYhg{!#%vH#Iw(f(IlvqBElq3dxql&FYC0>gJlS9AoNHEr9PjpL6%hcRhOi z^yx3Pc4vJ5+SLo6eEJ37GnlSDicM4BRq7xrMgLq_It5q}rbb(8>@zg+kk^a>hcMF2 zz?PWVfpM@#r3p<;DmPnw_w{wH=DpCocFU`;ZfrMyZ<9K$l`^mYTx;i$cJk}r)!jC# z4O!axd^LKn+5$%*Qif&~Ia_45-O|^k$u?bhjgCJlScXm}XC|02(n=FU8PPA@Pk;o} z>9e8_ylr`2vE7o=q+7Se=mKKW;F4f9#*!)}kOogoDwP4zwWqV75Kbrqx2@2~g*4fM z<{TK1HVJ+B>~sC~C`{D9vG)&u)9~jVqTexyu!9{}RjMzl;8oCC1NYR5s`DCfCdvtA!5cTtWb-N5P2)K|exxzKcbwOGqQAT5t!u*p@OYCV?YwY~s!yOA&E*Ua*&B|5VVD8tf zT0eTw@>Rt%#+)8M?(~>3Z;hYu)|k=r=03A#+4gro+P!YgbCag5e{R#x56*61`J6m! z>W5RNd^mO5`;#ZXPjrC^RvSRVqosUJ67i(h$1)|*bx&NAf<=M;_2Lh8Wz$XU~WWSFUAB0CexIQ1s0#ozjp-(>OpCW=5G zvkd<6LlhXQY+0)Vrq>`@tVhD*>@ z<}(#JMU_8L$`${hyeI!f-_VEG#oXLEbjQ|`7HhG!>kuVl?e1EjBu+{0h^WTV*Jas6 z87|9Iiq&Li7X1xQALfr%v|uN7Bxu!QMG#fZUQo&KW|?Z0yq7VS>a@g4)XYpOi8w$- z8(p?=p@{>MsaKZRgu3c)?)}Z|XlNfjZu)pO@tuC2YOOoZzTT<#RQB!hp2J>$`NHQPvY!20H)zyp=(vre zj`baW^3bL4-tRuTUDLc)gT`%{RB3Rt))kwi_pRT)B5>AE{aoo~xdK}li99)Vd)gF# z$_sS&(%MPgn!b@pWKF$(F6lcqsa?JLZQ9Ikd#PjXI_>dn>6)F_YDDYSSvh&Fva?#Z zhDN1&|97AZO|<1o8??BZqMZ>Fje&(U*O&$R5OJy?@~)z5ku1E(B8N!MszL~s(~pIt z*AD$YK~)5ig3^ykLG~d0A~Z<&j4%b>;sHsoOMju2mEn)pa#unAE69H`5I)uaQXDQG zw#$34BnpT1ZnNx^EIBy|U6J+(H9k2a1#Lo93iq`esC{4NXHK2ovG>UKK0W#jWyAXP z?8RQ#$bZ|rli%CE4aKj9%(?l|y*F5EHlMYA<1K#T^jUu5O}WeFJ)a%RKl<7J4Ffta z$)7c4NykBpUSJgt?Srr!<~I+##NrQpz_BfkIqd#o4n_%itwB^0osh z>Ua~9N=q4;$anhfY?LF?<*j2_!NGE$AY0qnQx_gQGHi0Aydy6!U9!C_-&L_oxlwJp z$!E(w)oIqqaWgXKWmXRxv0%+2er{mLr&G!-Wp!)xK#y}*)FBBwckpTjjd&a zM22TBo2r~uQc$+UEEei$!tPQY!4M#Vim2?PY;^WL&myG>nqgFUUur4;g`u91fu6s$ zUUn1yx6W?5a-=}m=|3}7bIST(YO%r}hZ@o16`?)j!G-bmcyM86Y&;=6GrgdK;SW+P zWYTY;g{l_1E9*?@j<*-o@qbFBUyWS#7|S_uENVhV!#(svR1$PYYEl|GH&7Hw-5%#H zi{o+r^Q3HIWi}nnuUEqsv@Nu8+Z{_=^>5L4rToQX9QNU39N3$`taMs7cS8NR@%x&( z?1{VDG+Ep*t9cy;n{&`&gXTC2`7Q$%BTFwv(Ih_`fgVJSUY>R`MokWYd*>><H)}SkWuEGu zxM%l|&p#j7B0H;1n-MKZYI>q}{;S1;SSTFb*J73r`ld8c4uqfggxNldl8tu25=KD? zoeHK-a2h;koKW76g7a%0UclO;*iyVp8K4}!&)2gt_gVKx#dm|n=L_p z)w7<()vVD!qt3^NmaO01a?EPB1tasDM;sE}ABs4Hq~@D?~;1_%7yVXPATtp5*iLS(juZZ16^nO8Voso9y7wtzsS z;R`xVt5u^?or^CneD2VajVIQxI{b0dth(7V`>6Rnk}Abj7&dF#=xG^GtsXgV(Zs|W z*-3p+TxZfyRG5c~-19PGWKmZ3CQr0*2~{pdtSe}k5Ui9_Dl2uA)=F<>v@%Osu542d zDQ_qrDqksglp@96_y6HD`Tq}}nMf2xS-TQik?!2FO8f&rxf~h6c8Fagq>fsslV*Cn zob=x$upUf^)QX-7)LGs*#GwV-h>EzHH}ymQ6%`jL-NFuc9K4|>OW=Q4doCT;k`lt6 z=jKiuDHj!;Z`!jeZ)w4l9Ftljq8 zMs5&V7oY9$BmbKP{m3fG0sQmNN*;Bf?_D9svCB#qcqe5vo3Bd|pHf)S zXI0;R&0F@CPhwj2*{-59eGt!Jx6pkNiY``*FZ)P!StxKT%KC`#gquq}2U>_t$Ql#n zN;vdh-by2uOUq?FgEyXd!8V~u>o{BOa%;!UKhUvKoMkmZxdhT}w;VyHsS&y$=xpB8 zi$KV9dXgE{KS1hd?a~2KSTGv~NM-v+r`S{{zBu`*9W$W8rplU98Jd&kXtTXvFA^2_ zdM&V=@PE)CZ1;a7rO*sx{z7}k8^`w{E&BM<)YB~I%$v{ecwhEmoCDKsj!p2!%lG51u zlI!wjJVWJ30n8@H%SU0s?PipSd8RJ-n|HxA_^k9Nx_;9S zN#AycJ|V{|2-hW>94A$iw*fEB_&nrt+96^{kh*CBBBG`t7@85nqztL9IJiV{kcNWt zezrl$#vPLmwJK_Fq*e_seX#hg78yg@6=D$?rbHp{h}Hoy{|M(D)BL%m;l8}J{?1wz zwzln!Y^40)(r0(K49rNAS+XzwU$|)B`j)M#Jm0J1nX4bZxpPb3s)Ks63|~S3CqUPe zEe}`-hfL4%Vo48r1o*nxh!=XMPD9TDfTLWD!2tq0n-3!TvS_i#V}lGvs}|ww+DgE@ z3$>9&CD6bpg1Q97mRCG4j5j{Ok0=q!Kc1Ju*~kWk5d2|ZnfYznKzY8^zHG4~)E?=Bof$`A3QBK0lVZOOL$ z1{)iXexI&hOqyC>OOaRBE;5@*;>n$4cb6-4Bb+zP%DBtYW)Si(9~*k4CgU_)Qf{gk zAQdGNTQn+GE-Fe`ZI-MwMs_IIl1=@_`xbV6bM?DuI6nUJ@>Xvwex~eiAhHjvMeovGy6O^ zB^3EFw7jBl2OQdI!pM7A!6~}F(H&Z7Tj8jpXUgvV2~Dzw5pt>w7}$ZVKxV9rnAHXk z$AK3aSX`0DUifj(z4`pk?+>Vmdt=Je^Cno_{7*Li;^Ge;TKKnk5yIO{JvUt@eTZ7X zdsY{y&`XP{R2fhjg#Ynku3&4u=Bfo-Xa$8a>!ZavMHUHZBg2HaC;{s(4h79VH^A4o z0EpoulY5MI0Ctey_~*ORKaH-}W7CgUJMO5MGiXNpF3mb^9M`kyPK(<1>)$RM8gsO5 zO8a(;*B87SAM-<2UW01g8&BUj;MMlcJAX#Jg)SfKO0@${lqJ=bu4{6=`h+fG)hdj0R^4KL1l{qukRIM}gmr~Y6UOX20obKkr2z%wLx z`INQ`ySL4|T70s`_{_VbfU;C6paoLLr1?dw zjLvX+U4uGd45d!WC>z`Nkoz(BTt_$&(vph_j-r}qsz~yI(OkJMg@oQaVUVqKEMbd& zTes%N1%G|KbWDvYr`v6wyuSBu+M%|Go36{BG=0$UnU*sA5ue`bF#m1SylD;VI=PsUT-w#4kCIap=i0{gy<8_3liWmZll%~}2nCOFB=we+s^sNP& zOBI>6IPpZOA((0CVB`1}s^9UH@i(u8@HP;jUJYd&Dfv`1^J!&WDN`@O(5}sQ4}Xu} zzTLlL%iY62VF^z$HM#Pr$?SAWi46JPR?R)TR}coY`Z+)LhVe#dDe-nKz6|)I zVJlZ_abo6<&`r}U&L_aH*Te+;;xOdLr#lfAh0{Z{Ollir^~U{Tnkx2=X<_1tvd8Ez zMD`d?ijkl=w?Y2Ejj%hSx6vWQEt`7l5~4DZLicq#sxR;GbvaVYV{tJ{+);eY*Y2pk zT~wbM9a#vqJ>EXCWJ&R+(w@h7_?s9yME|r4y=D$O2AKA@-r z2p7R+NQ#R&Z8$JggfZ5nz@ex~L75_ZiW%()s!aLTeZZo6k3$lNf0oRdGsWcI<@|hB zm1g&fm&RxNvm=Omh{s>&@e;GT2ts^hni zqmjy$Vhn~BS5+OD6U+Ett^d%cR4}5ZV2( zYEJK}31_-#RuRsaq4Sx}XHf0rg&86b5?`DXLwC@B)6KYL)t zQGR!evWZ2xXB|)`d-}@_JZI&-MWgzSn9yV6K6W5-9SeSu)jPr*8zV94eTUDi5USh_ zJ9&hE=zbGgq%*wQJMd~Nz^|==Jx|sQk*h{dB#A@{zO9$4|FgOf{w`@uYk=@ktBEIf zH8`i$$T_W+UQIT)h9jeA#8(;bA0!AfZ}9K2#6n~&K=}W7onQj%V_kwNKJT;h%%8XZ zv|{nq&;RmFv@aaqb#bTmd0$TZWyQ0+8m)ZFA2Vv=z*va|7hVe5;QZ`dSr zes@RyoP?@x)NZt419r_R0o(TO*0${1w{PO;vI9|oVA2#Y&tCMDhe(;4VwmU>xY1QZ zDT|n8k2=K3rSf)%JEnYcy5WGBD%tDRjVIoVx)HRcXdH27Yu{8Xb>#QcBwt6qj|5NT zL?pCC62Ov9Y-q?}koRw7IJo_$I=Y26D~Oc}*usaQcgaEJEZS$2K!Xsc_*H&FId1#- z%tt3`G-P2@SYwvIhu?g8(Mu7Y83!ZTFxGb4n-?1V9a{sdY)(CUnqNG^EXQ`oZQg;| zo^N<-`A1-?0(u0ThF)CJ;hv^BN|M zujy>qNb1uQ$Oa2*ORc4PW4`?2C+zIuc8$Wz&&}AqTmJOT1_NR$)q3s|Wmxg(H$QOv z5YoQ2vgyi@SI$M<4BFTWROtY!ykU(+ekm1HQN4Zo@MDvFgfZpCOHG44ROB}hX-E63 zJe2-6Y~LaUZ3xkz=8O}}r0}rG4a+2>T^3_GGS^bkILUl`*|(kYa?agqFaIy&%maHz zteMOYw%va@z(3TCJ+p|QPN+NK1t#KbPVd|>ng(@UXp;NV5Z$T@Uk@EiA%?R#%}yQ8 z7VlS!eo^+Gh?a;#$4P0WHF1Pd4d>k6^6QFf@$P~;bAH-(liv=eX5Ueh>7Sgor+C@6 z3NyO#-#g5DK59?#QWkwTdF$Ri?u`d%g9TToXgCf?We_0HCJNhuGO_aNzeA_3JExp|AXQ!Y^kU;J5NXUPi2l-oNd%&i{#M(xJMOJF?)h`zR2 z>etFNc$5L?Orer|xQa9nyh9tB8f)&@w`Jn$VEz*;7fAVhUv*cpN)wQ852BgN0@?OZ>=_%S zUQ}W&f58@}X@Ndlh;7&53W9<_gJW)m7m<#pE?h0ritY+uiB5^d&VbVwTQ_dh%JSEu zeS4NPXx6L&onfl_IopA`m_T@EK!g@BqwZ;sVkGl)eP8sFKqtTDUP1#cB-0O9Y)RFVd3|t6>_!*A5vgBbS@4 z411=3YMl|)$|cn}xUhe0_Vj9Hk}@q1^S3x^hGtX?8oxcfc1VqCz-BG=k}?Od&^EY+ zk5xpEg`))!%RG^2QoyVVm=y-ug8ncXGIo0j4`^+8(NsLV#|~r0SSmNHSg~Q{TEkWi8nAZAk@!lL;u9-ZmRRw8EG1X~SyYgr0$1bP z%ZP7B5FjI&>n;3()zE9r7tlO$UGF?G^K?@`DCwsEB~4V5c=;xgOA&#;#94V+teCxh zTNG_eN{R=nH%mGJmo{mC5toUd2zL_^Ya-J=q66 z{WbOMSp6_i$|;y60xitmF9S?I&Pnk@$BLM;bv@tMc6OUK_3O2hN4Bq1yCYs$ukvF# z=wlnvDla>`RUZ9F`q5XJmaW)wNV@A8|2|{ZL$eB`(RVVekzsOAmMhnL)Pil2SMoP# zRo#7M2)?lse2+?qfE8RN5mQC}eKFwY|7&ZECI?U&VKzt=bF8}D5dC<@JP=jUjG-;` zlsUIYIWMD|``@K9$|Al1JB0Teo!tMf>*@dVn*VKK50g+owv+<~t^esWB0o#?#UgGM z-c)HdMiSe4fIz|^(pMY!8U6m4{ zX_MqXJfXdnjm4wx-&eZ)qBQ%%%Z-*~KxiX>gAV+ESCkR(8%xR6#Y8JHrzM$RMn33@ zy35C&_Tx>s9o@H5w4{Gca1u2nj(UikDHi_NyC zWY5ljR@(OMv#k7Q=RPJqXL-?6;n{UIxo5zRmCJVpcn$`v2flG%7t3axItG=X5JS8m zoNS%xO!1A#%;@iwCUT=yQ45Y1=Z`kevx_V#3=C*4WAQ1TQY8hCbf^Sn!PH5tnzC)h zul!08|BA6H3npXH+{|eAZuSYU$p75Asw|($7DZy^XCS-8Ydl}zQfT&M7&zq@ObjF= z!n7Lt$;u$+FQda(nzJOzCE=YUl1+1Jjlz8pt&C}B31!)lJ4yseQgWQR-qx_FNbKlE z4|=L^rysU7x{%+np-El7aWsU@pOn8~&;TxdF?KfEO9KwQR%gX7k_BOGc3F2d^nL0=rkmMuqUwgq+VlY zT!wGQBnR)0tueI`Nnt-!An6P5VNFwNrde`5)WvEX3df-y&^-e%VM4-ba&QA~2CxZ} zgI(nximvdE>@_tBn5FGBEv?BS`#MyM6nzpXC4ry4*ArS)&zA{xM!bUDu^|nnr71#z zrJ;wzAIfUw(!@@5)TI(0OTr)%=88%cMQh9(L{X`fmT=_crlmT44V0;AiPkgUyfw5> z(+%BQcVqQ058*%k^b6LZFIC>$KXc^p>2n8;n5BNZ<)t!_*V8krc9?MR^BsS{l~4L7 zct>%Pb)e__Er$;u8UI?8n0%xAKcr)>Dpgvf#fa>g_jJNw=(&PqhJjoK}@;%K9l&3p`AJo>ecIw)91$a>@yZY!C!?pFo>S7WaPMdC{qfox0a|CXepi`kiJIhBj$X9?OO|Zeh-&zyC~JKZXw!6`gR*r3Kk( zqR+sEI-N|q%v95UJe>wMHMuQR!VwEPz@UniNwgbeh&pGLrEIArjePvXEg2X^ZNcyUQX;7(cYk6SLAt?5 zfAmHuAHy~b9rk7@HgH|$Cs}>mXGDR>H${uu7yo4P?Py|aUR^taaFa zj!_d{^_Bfb-yRSthOumRn58$WQnB4Y{s~qxcw*{i1z;FEo0=xE>7nE|wYQaGvd)^U z=R#rdVOn)RK)ldLu0^=yR}*M<_7)25f(y-+1i+EuVyMTg!iNuPh#09w?lu7crLJTcrhxMI!~qT_4~eL)MizNR*p=mRxe`794bu``u*H z_hjYg0dY)UVf+8Q-hzemvW4`1WmavzN53*QZ7M^9?2rYTh!Y z{=*NS+Fi7id`8+6HWwT~xNYaFnWG>CqIo$%C{P`@dfNk4jEuxbh-TDUAimf0ZearNH-6#9C$i}E z%HfHYV`?7sX(DP7;od44QmkZuV!V82LX9Avjwii9E@WD;Bgr(1;0AMpL?`7<;{7@p zsm){w<$v0TX0uzo{dh!V3)(agqLCJhk_YjJ{O0tL=NmMWS@6qGZ+o~FtAZa=$Ia8L zSawMr zG|4xeMB51<*t!IX7a~!jpG=H=>o0V}Vl0{=JxYjAcKEOk*d56tqO`jl%6w*5MzW9v z*!+i99ez}g)jbxrW7a9TL zM9fo_6%;Y}S2|E49@bx&2vGrsr2+_HRHa%#1!3?)3bnEhYGwfNGL|xCW;g&i?7z-F z@C+~pX~j|;hdmeRWLxJ}yI74~Z93W(u*eP9KOeWhdX0T!uU_APMyCgV9eEY0r0)Dh ze&dY;|KLWZ;H|Iumt#hZ7=vwsNi6;rbi)+rhLf;=vDhR$PP2+l!br!I?r%25%DQgQ zDptn^@0Md8y2>WwUpLNl4 z!6@})^+x>nZ?0jJgmdQb&V4@o6SbNi=j36YlfAmj?FYz>>>*ul@*)=c#jota*oAY( z_pHo9Pb9u}?VB_FQRJW97ss=*vzLH&B|jk}@VVs!3Y@~#$^pURA$OnN#JoCV6kQm5jcqk-OfKgvb1K0R%+*g7pt zAU|fYwLmAe#!(g;ek-!jXlXTf{Alr_!5i}iU^(b=@;!A9%gTlQW>^Pq^|B)JWWm4c zAA5?|?%TcL@Nt%K<_y1aoaCrN$vw+Eh*Qd9Z-CR#$7SL;K^Rh7q!4t%P$I^l_%$_3 za3dyjaX5ovMG^CHnai8te&uYI$d;c9_t@OP>eDNtc=kmhKVtpnUXHXyix=iG|a((E|4CwH3=Yv zBFk3PoO4kH$1*#b1)*6uOX7XBW8i+DC7wHcc1-xNb1${a$R8M5Mk%~EY1zW@%GnuT zFaMnXsh;w1EP4HGIlFHO|A|$Uw|nAv;*!xrpHXmDR7}KKoyg?w)|fZCLlKUuwZv(n z#-UTrv|yx^2kB#_2WPU#m!aV8z3ZU2?u}dK81G1kTT_cq(FD0^?uGc&czXeGvAGA4 zd}$wM#Hw4o7Q->bx6CcKU{xOMd9;jQedzg;vgPP2o%H*}XO~S@TFJwBz_c%xU*V4w zxu@pr4tJs@VEMLf8L;mLOvjEnFLARz;^ zQ}|{}6rc@89$ufK7A}HLCsRV&q#kvT(O6_~)BRIv>$Lvg6y%g!peWo0`WkXj)JQ%3 zr~}{3Mu1=D!ET(#wL^fbepr_rtYkH>MW(?qc_K)Xl<)mjSar;D|>c@XCU*RP(D9d=mxuXV8qN%Uq z;0=Q<>8nL}?-&6wquqT}b_Va7K-Oz|U`(=g7~eG3fxJ;3nilL-%`7mOK>;q{R5EiS za)HcDui#qV<9CYJ@>}+CJqJ1}DX+g&R3caAtINdlt!x~#CaypZV=%pzxGz9=~d%AYRj&XtU^w1CwM%v)e zT7Wm{fUG`lnduaX2po@k%Bd8M|7jm#rufm)?g+n9z~AA|vh&!KK7}>iz^bf8`C&5F z%b(`U7NoR@AbSYw-*2U6+gf^o0R;ju18JcDOmW5hWRuTIZ7QyVB46TujpNZ zRS^m8it{ScjT9^1!;@B05ffMj-%4|&R3uh|7B-hay+sP|3UL3;xM1?><_&u2M(J#& z!_%V&%;Q%U{rOxmi=8rN`h0$o@8kiU&yF* zXx_P>#-5tfZseHG69?Z>h^DAcTVg=dKz*mHNnAzTt`pcq#?qpwck>wndzvx!@fu8b zfwTFrEEQxUdQU}2XG=tiebL9j6} zVx%gJW(oJ1xok2*1j~Od4?z`&Xp(Nu^ThpgIu=Y5Av!bTuE5lSVYH_}1^CcrO-f56 zqKW-;`%wF8%9W?`e;KL7V36Jo&IVVRWVD>S({nzBI2T1 zRoqt=D_D^9j*1rL$tY+CxbZ>Wd(4R1B$&{^MP$4UnSC0F!tf4N!C<_xo5n7|E5TCv zWZcmZl}XIcU_6i9dm%pFf{F4)#32^7l^5{u`3>h0etXMi7V%)}?bz$DZ(w0ZUS^ToFtkl*q&KDq0_TZG#we7EIm;5HcD zQ2)1Oc%m_|`i%i@pzKKS8G{Rv{O2N!iIXuXYUFV+4M>p7$rn#GW%Fmaek zf9dR|g-N0jE(|O89_K8&-ys#4$fL`3SVH*aWgFnoeXC-kXxh3B%ZRt+iWMIGz&_?R z=Zvc$ZzNdeLvL0RXNOfJ9cThVIGs9onFLPf`N!+zgb2as#OwHv9l`i}Rknsz`L~;n z2QrMfBwd~Fu~9`loMxU;$^QQVfS$GgF90+=gCQo_1c{)E0h%+B{NcaH{SXz^^t{gc z5mc~#pbz>bgtZ>1F|W0TWz+AMWI~aS2u+rJ=9xI$AopYqjb6>;2Aj+tg%W0iT}FPh z)LwtXC(3UMdkri7hu2=K=i$Hl?6pGE)z-;?nC|rKlE!PY_dZ0hT*%MhQLpZrn95`n z^(?60w!=F|4NQED`&lP z`j2-`Em(bzMIPd3uk^=Vp_VWQk{IY(#4HirBi)6b+nE~f^Fj7L!JpGLoyo*0!cEpg zH(eRx)==JUI^noGv2mIMM>7PX6saWoISB;O8>)P>cR3WF{^tg0woK}%I>7(l?>s=^ z$)3RHF*tPmiT6Q!j@gfUPJyRpzssuaf9z&xa>*@l7b%|*c(#KzyVtXY&lcq4E^#28 zmO{|=qv`>;=J4Lr5bG#%%&TZT(=ZRR+35tQlz%iqBo4Xu=l34t(gRwv9~ zLlo|;UTgQugH3>ge#97WS;LsLg;9Z}U6y9}nlZy8Ys{`RmI*yJ+~7iDO1iWK$H3BK;b6oBs$_v{q+h+4DK&b89@m zqjK4eOBdgMcH6Vht$H?Q(Q@j9qN&d2$W(>FU#}o7(PZz$5HuB1O?cGrl5FZ*(5a!J z?gmtQ>!XFyH&GuwHX(XGs_n-bMt8s~te2o$%o>XB0pY?Qfnv7*f2_R+d=yppKRkD4 zb~gpWh9wCQN;V-0JwONvJs`dJ-g}dd6zRPe0qIhuBbzaZ1*Lb9NKsUzNKwE7DhMQd z^M22roz0B!Jiq7v`Ml!J?o4)P?mhS1(@V~hkrr+8T~nr$s8pu+2Dis3VaP9pbIspj z_Qa3B_U=A<)}3p=JXrJ2;}2K2Zo5^jvi_aMW23^SbzAiwJNo_LH|1k;kE#`jx1l3} z(gJg|MpYU%UBAGJ9br=PupJEpPD zx8=YG1HSx>^~&1sy@VzRpUGwAUeozEn0Y+7(We+|7}i;gOpt72WP+F&Cl))mA142! zE@qkAf7ig^>P7i!AwnX)1|*Q(Wq9dqQ&$~CK2TK@62RSm`$tM%#1w2#*( z*J)6te)U7Dj>l>ttfo~9Go~sCj&WjHz#J{iLF$(lDBgSsF0fqAgv5Rm4d;>mk0hE? zu(9=lD+}eA^t|txcxo=m*J0R#-4?f*<*7msCXx**0(7@SYyZFUy#+$Z5u?fb)Snv4 zzsF|qDW-I9ulFoQ6b_n2aL7Y?p()BlkR<~GhM+FcKF9QBL4$wAk^&;wYB35~E91rH zQw#B%*?B`fAM{d+HER%cKFe7We((M7_3?mckggAO428xX4ql2(u-eVlF>Mvr#PRXmi1LQ^CQ5cEd zg{1&K1xs!8F^Pv6!?5fTgPMzB7%~M^b$x3Dq9|V~iAkmkQDCNmHtK{)Ex>Q^HMC|J zNi=%a^nlN*8ADS&(F=xF${ImzjN-KqhRf>pkHT8q0EXUF_W4LL?q3v?{fW4Lh1bl| zkB+#diL!fCWSEdjBIW=W@)Q0(ZoNmjq_oQVKxqY^u>x;q58Dbv@)d+smLN^j9OcSm z>kzGmnv7#fNGY%D%w>VB5Z#PmM#ID`!0fjRfi9WC6v=}NJ1{EHy01n4-O*D#!-I&> zG8n8&L}UWsATN1CjVd1GKa9`ml;(={2W-~4`dPzj%w41Lp{w6~(zFJ@S*`K@D?uu% zh81!birF2K_4mQJ2zSAbJ>)QEV-*V{{vhytT!O#6n=mT=#H`oeoa2QZ$5WGwI_+MF<;Jw|i zw9MLvqW`t%c^$AE*?1o5=&DIaw@@C7@7%yEEw^q6M3*H~T?c`@M459`bhnbtZ?>%W z^f_v;u}-5JG{;+;JQ-(LSH87d%TSgn<_%sNE9Pz1&kbA_8{0UskYYnEHOr{LKLG@y zH^x6`<|VLwN-+1!Mm`t-4x&i}pfH3Vwo^n~9;u05^xrTL7|;CA1Ncw+c_8fp|KojX z`64k0xca`uV!T|DGZ1}2Fak(G(8?q5DK{uFv~s=k6twaXpX6@A1_J@0l?$^JW#?Fw zEbs@j-JIlhlZq=4MfaH4V*n~crHygR?Jh37GQ#^k59jCQb{E=p>C^#q=XkgMqxXCb z8hw&qYEiddYud|@aqSfUL3La6LnqgBWoZ|~9*(2oE3)ie5dvZWH-~=!?1tk=lR|t> zGK(yWKvIho=ktW=qc_ihZSzea3`}xg+!_vip! zV?wTt0e8#zjUl4}hcQZ%W=ovUWC{Tym|$!uSK>r^Z3%MvO~(pljag%N#eO|^weq+7r#7EG@;rW?Nz z$?A?{FPe4XkH?&!aF031-C2F+Z|3aUy#1hDB;*uU`m}F2^rL=AxaO`+FXr7p(t7aQ zzZI;q@j_8I$7!*h>!Vokd0(TehnM+Zk!xtO zEPeEl!J|dHt99od__|&F{WWh6?7Bwj@6_-LGpE#;r($1+K_gdnYa7ysLtnSAE%KFL z!ptKHt7sleyA92ui26rXrB5e5NDOpQ^f5FY(#KJXS$WED9n9cA{MvKiUtiiz9ctR6 z3+)8<7JM{2%B=0R;jGH-EN{!vDB;PnzeEig>I3MO=4&Cs(=DM?XO1Xi>|moif5;$6$%0mne~4KHZHv4XW=S+_sIl z5UMR;ji^W6bYH(sUGTA#!Z7x}Wvi+GrKhP@Ky*5th>*wp+L8inWcnWkvI{_sFIpf0 zZ`yub(he7ZZ_2U(MW2vY8=+Enjqq?eL9_^AV=qj+kAR<`2j`yYJwguUVdeSPxq72d z$gq$4vN)#Z6YWsj_0LQjGZc7;ocyI7ti8cc3Y6Unq6P!WwoKv9Lzm9@<*@ z%%!BKnNl78oel()H19Z=V@!#MI#nb!&Z-soV;Ex8yr*uz$oheYJ2*9!^WI+c5o#gOfh%Au!eIU?P0C}E1`PFO--%S9ZF3_Me#=Kef_t4&G$L2>S zkdcK(zADVcLRu{gYfM>72&2tPhx~a+g-7tDrCOXU>KxFd%-jyU6XvY^WPYa^>AN$h zU!kv>8d5d?w)Fd4ycmLDE;a2pbJI^X?ci#Pa2>|i2rV?2x`4k<4z@^S289&!e4R*$ zartF2*e92gK+HddjtBb<3B;MF_!`z9_`;;I*^eA9SWXK;`m&q)8VkA0u$T(GFitFS zAcl%3hGLKk%`Q>akwuabVZnMKM99lh62>PY81XIwVM84*{_N*_x5boQU+x*3rEzEvLxt>)zTN*P}xtUdx(;LySKG~1#shCM5#;;eT)G^*7H(HES zV*CdBTgGpIQgh@J<2Q+3dRQ}3DII!Rn=bH^OAf9%db6j>kIurgHW@;O`su0?-w3+0x}J&!2tG?He|L@k`m#h4!7>w}D`MUH*o@_Z?cf9c0D%HE(tPNr$ElI>@vh zld^xazqFl1ChTM_x5$Lm*CU2MX!z-jnOxHj^(fr4ly9jY4t4&B0bpo1*nz4{oLt2E8B{Ad{-pC2> zQ1!4zD^!q~YO;(|D5S|>p@kJ7e5TN(LPWEK=;v!RE&xN(0-}<*AqcLT6VB8t#AK=6 zIQUpy{;BKZ7Jbo;T+Tjxl|Ronn}k7m!uKz!_4vbszjth~>vraKUL9Kz{3s8!I+W^z zmJ}kj*AYNqud(KSYYKtKV!HCHc)3N(Ug~OWlJQ|~(L#(~zA@-{0g(@675@}vdXJZF z=kb#=Lw0;NRJLFiznpF5UFjvfe1d5n$a*mP-Z zd0scR#Q1oJe7))6x?N#oUjvJ7)A}lxmi(Wz|J$q>?oTRd}9KQPjfSn66 z%Oo9kVn_z;EP;m>`ehIZL5vMvE=~+>LJN}xCWv?r5@*c*O3)01cvG)4@g*V-0rrulG&{_iBAHA;d47+VZRYcn%MnzG9fDdaam(eAN{yE-49M%y&pOTy)7&OQPH7C- zyTGxhn&xJ}-Xf>`zs^l^lF&jVgJqbLPZ7C=%zg@DLx*bgOO41&Fra-PO3EA4(x^$1cF zZa4Hjp*a`}X_=p);)&%FU?55mkzXuV1VkD{YFnjG5r3x@)W3lW(k6#2=7ww`P;(>- z(X^loIq+7gSS%LQV1z5p_PQhX`_t6{NTJ}v;w-siCP2{OGwH5*w?}?X{@Ye zvc@JCUlYzEqJiN~nk8xgn5C`246Q(f4g^bzikKoQe^cg(Z-zLbCJ2~ejPm^GM=*kP z7{PCb_iu~N*7D&K{0}wG``hG9xkvanhYx%{tP3B<=5`x;=!@fDx!5&c6~WY)*Gj|y zQ;cL$WO8iLg7n;)APQyD(N##2#tMo>GfsrWVbF4mh~}RmLB&uW;W-i69Y_;2Ig_Xk zRPGE*(uxRz)}r)pL#sE1S;71mS`i*-@edP!bo@2u%>BclcEjE-|3+PV7aa!D%Y!PXp0Z9)`3z5a6k01^v^;K6qO5Q@l+5syq=G|$1#DUr-GlaB z)C-VO%~6js4(%(G6A>p+(M{2wl@y~Qo7`vESY*=3Ok%-zXD;MV9;dvytkv4xa{8`D z119hX3pVy2KHezWrsi+b`N^q|e(PFt&!kg7%Uya^NsBr1&cZb^>)Y!36Sc~6QALU z7vPIQ1`GjCxMdwC;3bN51pGO%LJsU2UFIy$Z_hkG{_}N>iPKun-6ZealGO9<$7?nm z9<}@#zw{CR`XBk}$jkD&MY|f;-o5ezS?89SsN0GdIzN=t3}Eq)51(*4wQPUUBd|Wp~z0Ep2SF+3=emK=^)a{R^gSpN#1uC zZw~U#58k?H@#bK8Oz>9u;47t*ybrIOJ9kBSc=7bNcYK0;uI4f8$6UyG2JYviQ?})J@ zhfN^8AsDZEn0A*)E2Egsh-~C?G+Njg?J?30ySiBcsWs5baR}9L0da#_-EZ z8J`Liis79$Po--bBQovI&69GK>mMv@5k}uuang(_nnS| z26cqxs_@`09R?5XFf3oI`DaUq_nY-gZdd__I~3SkOK8 z^F0>y*Z3JcV#fF}Q&~5@W$KvmGuVR}zZA^e;b-!W5(- zuzJ~Tm*HipMp+bEV7>YTcLoU4XxY0Dn@3 zCn>>GDg$gft)vOk;GIJBuz)|w=}FD-q$YUkW_aof@S|s_aA*kMIXpH3{36{Kg>H?s zUmx_*ISKi`1b)OTs5#(Qt6qA}9-REFPrpx2-dCPqZrY`3&6O-)%Q`iic5U)y{tl~G zC6*j8YvP-&S>#*Z8v^!f<7eNV`1bjV6@P#I<+slt3>$lF+|b8sH%%BmblkDA!`O@2 zC938d;EWwUa4h4?{P0E{SF(~i3PGzYCXF|WMA>uXUP~ygUkwK(61$q(cGv?%StQus zOpJ(V5;kk03{Rm1`T+cnNuVxY#S+qrn1EVL-_WQTK#gQxZ$FJqa-%SROw#M^s9EvK zXqmrz;J?~af1WjK$`sIDVNgI=4uXI&V+B<(1C<3Z(!B`FSb>hJg_S|K?i}k zUoAC5iz2Jle=)uqbN`P<*sQfmikfnGK`6_h}?3V>lYa+k3R*leF z4R+(V5xhe?C4mB(%8fV^6BQf3`SCX_Xz(!HZQDr zc_AcOs*K}7Ve!fC_=qrXu{0(}vou@OWcK?Ib{)SPXN$-li5>uXsd_2uaf9VJU|KY7 zGHg|BSopM1;v^*JI__FQ5FdzAC_)&MRH25;h>|xiVodaAY zs>rhoHgf_V-gj*U`6ByZL<#4TD76wHIyRzvNr{dKhxc7{oNr~jzGU-|I{5AmeD^)$ zyHxKs1M|Xngo*oIF6kTsJY=&upYEBGTT_G;lb*42jT}1YKYbqyzV_GNE_1Fwg4=0iM9?rD> zrt4s@DbBQ-Iae@Ps$Yu^xFFQ_Fq{xB`OY9Y`_5kZ)4zX}^P`+w;72)kpu2kukNRTt z@WgUu6WNW?UAvDNkyN&HVuLYVyN@28)FqLh$2EK^TPD%l-1wrm>1f|i_zmNWN%%m& zEt9DJ)n>qeHf58O%JD~S2J~-Rz9K#aw(UQlP5Fw+WxX%xuk?xE)xVcq)>hE}3)A=7 z_Sb(41JcXkyf@o#JB3c)fv|v+wX-nnN%2(s)SUotEM-MSCV1lXrLx$R!r=}H4~JGu z#v-wZP;pUyB?3E0iFYL`EZG(oiyf3?W67}*Hs-L!$13qkvWrEy910&5JfTOuD!Fiw z3+F~h%lQ1G=veXCnmDubiWJtV>>Gn;$~@V*pfluxVTi`94!+|8E)UlV>9)~AL{jvnwkU=c zxxfgL5g1`;YFeO^0xPr-@kZgQW(^#=n#nMODLM72h;p0m2oROLq^D8wzHm5T{a7BjHx)1%eL0leiGIQ6B=7|af7vapzWG0PZ(qjwML?UYTaC@ zpnVx^-L0Muq9WQ14SNuK3Gsc5Z4CIAxhl6IO!=8M3>GH07jEpktult^$K-y28%E@i zu&TJ{Ouko52PTE13V|XbDE(=d!bWBwkq9s&3pE@+rn_rOnCPDZ-UGGEYOUYpz8G-F3o0>r-8t{uNM#Ja}Wmn%jDZF-uqG8&xU$; zVw4nr`jhexH2g5Bi54Ux!~6-l7U#U-27z>F9dACNvnc2;onzFY(S>1jVc|0M$e_x* zVsJ`Ro|?cySSk6do#T2AWGkjr)KhQ{^6dM|d1lJd(o=g+p2S;YK%h>cd|kjKj51C_ zYzewLw{*a*jqCAzoue$i5-0txU$=cIuFvG_Y-Bu%lS}K@)k@;}biPh~F24UnzpkKB z3FbZ(wx0g@KJtC^O(TS9V}&eK%#RF&e}>BhDS5);gQz%DLY~I-{(z7(;N+#Udx0_v z{-f<}HqPf_#4&(q0;ov{WrA%DJMr3H82927$2``D4dpf2 zW4=ai?cJxIdg%Q`uJ3K`Wi&=O#%-qo&k(7Jk>@h)VU|ZvXd!Hv$#(}(+*N*Qu$I?XbIh0VCmclv1pSU8 zLRTXL4RP`!4-`Oyc4xA;63|Qm@8mKzS=9i;*O6}msjb)&D*<0>l-O5lTS@rtoSOSX z_(MBoZ$waSPM;p?&_!Ay#To$in=ok(f^g85W8oC84eiJhK?wJ+DRM=OSoM)~GF@x%Gq8^`d;%E0Xe#4Qe$*PF5g#1VfV-6$2J?ck&eozT2An6t2u7to6Gbm~*zYTZQ+Bu`oLbFB2+J+9jO`&eK3RYCEI*n) z^YOb~hq6n1t6dm&{O#G7$82xa&AX~Y+nG(;EVSjW)8qqI<;a!YEMkNA`0DSEJyOoH zgfG_f1@H1-_wMA6PCI2b>S*2B_m6FVhyMxbu5I>x^-oB5(eT9qKDsXs@QLxk$FgS% zLQ5%VtgitQvCj-(0X_u@!hjEaE2jJaf{)pL4fsUov}n>|W$`m;Cjk@t^qIX|o%Ye%^hZ4N;-WJPLfC|PJzK6^)@4|q_Mn8}poDb=C9LM7 zc;^Hq3jypB;$`qVRw444i7<>2@Q|9LgcPSIKm-bj?hNpRhWSJcDv-hgugk|z<>X%}EgnAf zuJLDJ0jl!=)jI;Jw{_^L0|Zn%0IJsoRA2a@-BUmnZU*%+zE71vRg4=cFsejBobFKF4McTV*LEGe9Z@5t`IUNaZGZ6sRkV2Z zk;8)#LwhsODZfhvSMmh?azD@C*Vq}N<(Pq}2^)?v+I{jjLD&)iVF@%hb_}AAMVJGm zIdi{ejMpc|xlQ9jq^U7n)yZ$fRoedfaTV%C_w8lNB0jTCfNkZPurnX9K78HONQiNN zt3fP_#)qg4TOeSV7hXNPsb;NEDh;$Wh9nTy&z;e~jW#h_E1KAf$f-v^5nt`LIH82i zW@Qrg)z-_lT}Ek|Ws4w9ejDWa^BzxRrzZ_9;-$Eu?0eY{Y#w;9$&%h*3)g$GBl5?n zW@+*18DrAidRtK>Q<#_oEvuVqJP?UBtB!E|nLJ`3vd~!&Cxr3`5r_$mz*(5?W1wob z3VCwDT9m{56yLOF$LaBGEem^}cRru9NtP4mMzB__R9wMZ>D$Zh zX5sHKzM6lyHtfJ>HU5b%rC$1MZP8U5F~dXfRBNE41rQ@M#S|msdL140&#;Kzm7+*O zdeI^YMX1F<5%}P{7eShY)8u?dQz;~ILJY)|O+-`+*MAO5YpMuA>_tMcXfbib!sf-i zMI9mkwBzFBXFv1nxficEFs3LAI(^gYZ4t6?$c}D{YyG&Z?ch9YncOEI%kxc zkTf#UuQT#FIIqUHE$wF`bQNa1KR zZ`PJI$witOjWXP?gz5@1bT7A(d)qFOR(cI!JcG)KyW3~6H|35M?(AI3vmvic>iL(^ ziX3#ZIBaXs&A?@TBzg#&+LY`of-ChGb=%{lKlSU%WLV8eo@^}oE9FDig z!Hgxan3Mz`GUAcMhBrZ9g$LdsSeM@8GPJS*kFFH_E3MSJgk@&NBX%%7|Ujn#0h zRX%hE%k}S>86t>VE24mT*vnv9mV&{ z>nm&f&bV$LAij@+mjV-h!HQFN=0~=&prll5rKc94$HO4ADcnbAEGusqLAC$Xk(8ie z@(YnnYxQ6e)kLIEJke57z=*6YE(-O5NG1m+81+=MEBWX5ld=P+6?UV`>$V-mC(pcbdf@@M?@1i zMLkNB-s3@#ooO;S)yv94j*6hoO8r$pCG~VqiWH1Vk{^3FDxWaE?&Guk#8<(=YBz7zA)+a*_!zZ2)+rL&kTC~e@iQU+0aeW+ z9_qdlYt@{E+rQIH=Nm z@dRClZlgfz!}Tycd6u}NE|M)UY^+9I(Sh9(q;pq)*D z-;iF-ga}O1q?q{#5iK>ECnUN;$(;ldQ0c|Wc<*e>nm31U`SbCpxid#7N7&<+EyiD8 zIRA$U-tz4FjQ#`Xzzir$qhV))`~uz{EwwfEDJc6hkMjwl;ryz;tjnR8kBm%p(xZ?x@WmqSXk*vOKy ziu8-APe#t2Ieh#Ni>|>H^Ek7%Ja1Cd??<=HZhW6Vu{|*+LXlNJ+h^PJBg(lXWRwD> zN)!ALy-l&JujmHCK4K&x8R5&~Yobj$iP|t=+)3Hociz2?$PbXLQVD36eeFv#(Ef!g*ge*_KyOclc zHt@*tpXBw`hxHkJVO(_w%23!@;uyJRX3wVWA$StyIg~M$*rETUj27Ildqint!LF|ElZ@xTNizHt=GB!yPnU&uB_P|C=2~B z`zM=A?6=-pl&QXvFmo6@)R1q?B~vs<2$?Iih1PDx|PJlh>BZybB9NW*x3jrT&`EIsiLN`f@ShE^}(S79|eu_%3r*@E!)ltd^u{= zw$E)$?k>+6yJq|Bsg=L{QyDR%!GP=Xn^PVtt=p_w+o;SQnp-WtS{;WqbW6SbSyz-W z0R_ymjQ-RzCf0%sPycNhC6RoNtTL0vf%Ws%4Rd1}B7QnFEYX3iK$Q4NjuG>m&iF4= zMxd_^tNRxVdGHrHG7W9Fs&tb5ay9jVTvv|@PmP+l>ffXM z=Yt+#E^qP$DiZ9(TvT5MnQtyaLNk`iG#60_<6m<@G>S=X)|~%wE~4;iJSI~?OeVrI zm$>+CEUQDut}XfH09N)IlQ!;Dktl-Ml&qrOjbzFPZ0fl>m8&&lzkIfNL%Y<^#blZc z8=QYy%jF7YlZvRRxmcNKsW0;RiUBwD-DR<~S*))`vDJ!VtC9F&UK|+WO%p3ev4hYG`cgcMY?nn|4nEs3X1HRayY3zyYT zxr$1QR~9KK5r3Bzl=o#`sNa6$aiVZy1SFl9HG55E&Gmx_;n#%* z#c017#%i+(Nec|sy1@@yO5G%B?n`3hYsJo@Qv3Fn@JI=p5`*ueX*28G30+UR8iVY_^wfq)RL4COCDg*XwYWL zHWvb)F?!Nhde^BUyI8?OOuhBRV}5!1?`uBoQMUKIfs^NcBPUlK-hF1{od;RD7e!V- zUs(HYl|751=LlX?H2Y^;AMB3;QUlFqL>LE_d;#n%A&t}GP1Wu#jxYaen*uDf*a*_| z^zfdg7hIX2*z zlT-GTEVsS)sqY6I9@nHt&sN7D^@he%oHw@D1m^hcIdU5ng}QwjQVpz_&z>W77>IY&?qThOhhaqwH1O3X}Lfp5mM+%3_~;e#ISHm;7VfihF!kjg7hTAa>+zcN)fm|}B~_}&_WvR^xsXcV zc~fpnoOS48O zOX$UWtQoon7%@Q2&$ip6p>?{o08@usL872~Xf|Di5;Kkvmimfl?>M)ea&MqLy7}CN zJKpVf75Ay4JYnPQq`g}2Bd9ywM+y{aPZVJ3iuc9wAH!|#_feiSpR;t=x=xn}Lu>Pk zY?^cr_i_2hL)A|7&`kZ8AT8(SHdB6QtT(^deDaC|+dFrZRjy#A#wYYEE3)%=PLFoT_2!COSSCrHUU~Mo}iX#RhIHRH9iUl{= zq(wgU^GryhW*#WqT7(G1`gDe_MxcYlO{4&IK`=#6rD4`VrQs7Q&_vJg1!EfR8W%Fh z#q))LWjx>VNTIzLgAva+%$a^ZM-wpIlNO&A90q3b5^#eJ2^mCoicS%}BDa6U`l!kO zrq;yBZ}9D`6TM&+?8!Ic)q`z%AoqVrQ-JS_W-*8TE%#FHA{HS+3ko57w*>E-N5mLk zi@e?u>m!0>^_+;fq&YJO44Ed+7&LH}%m+-K*tb;wNfQSH6J}*URo-VMKr8a1hyfy? z*)4$~xNaNczaFn&r@t#6U<#A^vg>S@V#g{L(3D&xE7SAS0`305U}FR#DI>0L`^Jsi z(@P#vyLIc@c){!;p`Vpwh_E-tV8>UKY9aRc15IwxlIW{UCN(<7iDPkbM2-lq)Q3%> zm_OFl(#OlN&3fS006=sKhuj_n)Q2RHJt8W@6NPwLXIiNo4>1{e%9~D+agvhZDev^u zz?YqAbxnUl8H^@5r@%V`GldR@!*vY7fGiB4nRKKCRR&mu%;TS}B7K42qOVVwB* zhVM^GY0tvtEnB`b|HFNYSF~)oY_Z2%YUiv)9?ybVyV;aQ^65pM21yg@q$Jm2r|Tt) z51DP>sFG56g8XcZv zs9m4~Z`o0emovq7MV;6q_NwiJx96aAO(r|@L38hSikrsM57cfRy70tHo3x^$=b=7u zi(F!GIW0aybkU2486gM9{uPQvu5#h5Lj?#=yg+Omh5zWIJg%ay1eelP+enTir|BLL zR!ntVwMZA0gQ3(bq{uj(dfK8pA|I7*fjKED9{I-NrQ@+rd_gi05`vV5{4uK`FUtI} zO9Oe!26fE}^`DDZ{^YmYw|t|W4Ib@#DvMxOioV_O$&6C3;ROB4H#WBujITXULv35dRGENK^L=GJ%J<6tc zOo!!O2njHs0T{9g7_i;jO{ehof+~YRz=#hb4f+BK&78=cq$BdFa2@$nxL!nj1_i-q z01m&3C8s}xx-h&Dt3V_jpi9C_KV$f811K5ZmR`Vr2lD?e=7vWYv;2ox`TWLJ49b~Wq4mMvTO0rV%57NP#*2tbeeXl~b{^*)-> zIoZk>1_!fP<^-cNlx%+#FRX7;PCIr=K{9oZffh$10IIn}xxxs2q7u?fmIX?( z*VE1*@0;Xh0Lap>ImWI!M0^Jl?}SMjwLK}8JSN88@8dGH%g40s2vb+zc>e6dn>>T9 z{*F0|_F(RhGusasGJ4FwK}tXG-Kt3r(bc*B?t{#mW%C^WkOiTW>d7&K`ws=Rn4bM> zKrg^3PD11?xK?|Wpk5q8ZHcK{;5bh3G#3Q-Xj6goB$62nUo3r(Y7<0m+bg zi_d=K!*_su_zs4O&&9;&xD2hhelOgpM21$%e^Oc?C;Y@fP6u9!TM;jPZ=D6Y=oaue^%m)~>K)Nrtq!Pqw6xrpv!GLT3#AggiRe*uxUlg@gR1B760(q3qM}4;HSA;1Ask;z z&rQFE%5U=V5Fsxt2zgOjaw8%m1}$KG)QI}RkfkL`0SymxE0cMeZTY%^ZHrBui3TGV z0(R}%wI`HSXZC?JigoME??ocbCyh0i)#WRS{#lqsX04vMI*UaV{VR&!Ts;v?jrNl5 z8un5_?51K;3073gCG>8D<`Kf;7$c6weS1hOsX@4n+!JV><^m+TdXZXK3UmfW1(pj; z4QvtEBXD@&)WD^In*u$7M*=efL%QnfPipR^woQopIbzE|2SPivc3Y|qMJI;a5Z|Ka zY&6=?@d>GJDc%_$6<;nsHNHiBkNDy7Q{$J$Z;JQCABoS1zZL&D-q|%Z;`QGNwi?~A zZ~>;<$*@X7O;mxsz$S$!_KP*JVS_ zCasJ(lFkmmm|Tec_DKSFRb(HQ-_9RbRraY58gxIk(i7u-86qcpR-PI!BV+;5`G|<3 zK2}9gT}coLOI(mqDoJyR+BXQTp`OGMFdam|m)rw~wEQ{4MB`bXP!%DlFI=b)2{6Tc zrtgFSnUQ-<*J+Kh-q@%RBuueUS`nKFp)NwChXNa*4TL(9l9TWXb%!N~Ip~ETx8x*s z^jd!B;L>+L!+)&Q3H-NaGm|sxU*U&5`Q#DRuT~$27c2Z(t*f=h)w)uPhseL&ZH#%> z!LBPWtZ_ZGV3RdYtfoOd4W=XjW57b37+hZq4-(#0Dyu~X2r?m>vvfr5^>E1rX%HoR zh+-m479nkUF?P4o_$IT-pqc}^@S9x*@|$CRTme5x&kB4gf8yD{>xXjQ4RW7yH}>t? zd4Lr=;=TszpNMf&BuWIR#SE>0UNaZkm{Fg?qJ$e>cn|OjVS;861QH$CAC@O50hAs# z^6o*yg0Smv;cM*9i{PbTir}Sikywm%vDj!NrRkEINNZEwxW?S*5Jtmcmcr!k_6eNatj zDeRC1vF|EMDX97!S-A?y7s$c`q;Z5~fnzeLB8nX(1OBie_|+IXiG{-|mLxM!7Hl;r zv7k6+SsqGBgoyyf8ssL{nO53#9e$q*Ij2BLQcp#kbCf@m7IteAzO3qMgrS|1rV33= zPTx3Z_O>l7*Onty%Os>ES14VD#dsDj-oJOr(hrU_s5GI@@H*bdq^_wYM!mazLH*e~ zR*flL8A@j5CMl)7)#kjvbxDKS?{A-{CO6ZS&Zk1Hlckc`kCc73?_pbZqkAmV%O^qR zrcThlIA_DsqB(L4Cpa>!?Iy|t5)1xsveSDU^mB6dS=Jj4hxjBrGOd#-$W$ons9%DK zD!v%_F!`4k{2A-mvu8*37wOQ_G87TLcsjUb_DvX6V#}xtD78;<&8J^pjd0; z#FDcc?TZi)_z{H@QO^{U0|^3XWQd1IEXrA5nsGkUDdHR>b51pPY!t9ii;E)DHE;oz zGAud}!DpfnYwiOD(ydXl6~Yn@jv3xPa$E1@Bdp@l&)07_yuWLU=AFAWYuXJ#S;u%M z{v&Gs?10p?dAVF{)0xvdYP@&m>{fg45hMH8>@{*^zs$YLhgnTgA)>Kz090VK@{aJU zQ%|*_I^7n!uK@weJ`hR?{-Uukp%pWb??CdPYYGz=P#iOW>ERPpB#`!dZZbcS{fjg= z&}fAG!{$cmU<{%!6!t`y3w7L~kl-IE+4EryhE08M%;c3*xog_uxonmCC*K5v+eWzv zU&@Aie_|SM$@Wv7x)tC!OW;omgD11EChNJi5YfYZ>uRwa8pcYkV2}vKDu`fbo8L4B z$vzEn+m?25Ij`t9XYrfD z`fn^wcwymyDMioFZjU<*u?Ul?J`wHEns<& zUpDE%nqROkj1L|;eDJ_AMMtW+Mx}pQu)xKF6?j`ds>VtF)hL2`u_XWS9Hul=izD&07 zqx)4xy;#J`!n=?x%*b>)6b{$Ln8NoqG zWf7-gcX($!TFGzj-OF#@<9DV$TDj=Aw(TA*zRjZe{kcOI^sEqStJb<_%E;L-SIipq zPTw*CdApCVGjy(;cY}8!OW|i&^7G)e*-KWfUb~W?`*Y!*mCYIycF*XMw0Hi3Js-AA zD%@m6evgljb6_pPUU#u?xtX;)w4L9o!<4@L#&&2mzio%Q z3(EAH+o|2c=I!S6?KfFmsy(xu@=k>mIj&CJ7Z_hTeW+?89lc3 zAy#z|?<^M^HMZqZeq=D)!zy2^vG&)Kzh15R?yo1oJt|4XmG$asFCYQ*Nb;=Z%i!J$wjo?fF;Y-+~FTXmEaGiK>3He*L zi?>Guv7N*V=S%z9*S2tQhrFPDpOSw|%BB2Cb$;oPEPy~Nf1;Nt|6-!WCI)MZL zxgJ~t(5J3#F31=VFA}|5x3Vf*x5|syUfzc7rM0V=J(#s&E>N)|!i$Svs0rF86oMLWxorzEwT z*qsGX!!tnW`JmJO8kT}YS$3&06QMX8Cl)o*5WNMB^GBdyA2HK*z%DZf`atZ0ksu!c z0Wk~e6_GD;QDcMaCUUT#1DiL?|Jyo6QsK)VtNu|q^uy9u zverVy1;j90wI61MDik`|72Z8#8vZpPGGtiWtb>J{&&<0J^XD*)U6&a{XiMY_&_8S& z8X4AU*XYEz-|`z6@h?|avDW;CEh=b7Lktk(ZFA^+)XQLkKE`SPO{_{u>8R$?sS*qY zhV4t(0VrXdSk}d&CkWkwRL55r$sEHD`@C7A!J2`&xiiR~ zO#Tdg<#H%982c;BNTLM(|6=pzuMbsguN14emG!}*&OTnU*PFDcaAL2w<@POXmygco zyA`;my?KF^eqxcu8VlIPOYdnelZWho1d|Bwd@W=IE)y^aJz@aBnEx9x*fHP=;0>@~ z0xW?t{ zuplttQjD}p3o&)O5EC_UNaVU1v$iBo3w$vCVwiiZn*wp<|AUhUnyZ;@lWPR5vH)!s zt2+m~oaT?28ynshny5bexNI$-D`(@znuAyHo7h7aKflHbeoPLWY88DBoGaf%uE`t< zsPxfJ4(7rmoB|Km4rCHEmhNeFn=}P=*EfGXtYJL^0yS|`)0n3P9F6doM#f((5Gakm zlqMu-^uIx%p2Y;H6|PA+4e7y!Bhl*3Q`4Cil|xIkDy3`UkDe;dv{=*C^5SZ`T0S3Y zW}}X1T1C?zYt(< ze@mKxh@0ui9G)*NM(a#ZbzN@}t4eDAJBp@-)JpF3y@+2u`SJ?VOQ3(em zJrOQy2D5Zb7)o6N>zLle+(jCk?hNaQ0VOKEI5Fact@!C-&);N8Cv3m6O2e|c zOzz+7JPY@BW?|kgET0^d^Z8KMx2ja@n)PIa_|FkNO#H{L^cp{|+nDYX$93Z$%CQZb zwu#DJugp5upl-8fb%)b|HRrRNb#2+YbEVQ*XIa&ABSxI#C+$U9;nBNxjplcDWqq`( zbt_eAG+O-kB1ONya-v0vBK&gJ$aLCcKn%Bob4WT0~++F7{)x ztZiPta+ADm**n|59MoG)uFzLumDcXqzI@-h-Fw#rzB}h+n_BZRss`DQl?>=kVX%#( zs)24B52r+Zeey!!HHtbK9v>|{kSgFzgaIPIS@K29tT2?KAf74rh#U*nf_TJWKv8sV z;*@MKm{+P4Um;n?Mod87-E+#v=SF8tz4DkJ;_2>H%iGTFm)NmU!%pqki5BNS8F_qo z=G~_JC_k#)PZ)5c_K@BkhO}6>%1kBj<?h)c?ulOMeaMwBydnQ+Ii0=SB@Wbz0G}(7e=o z^=iLSM`^vYb%{ki-}^9qL$5`}+r7W)!!+-Rnzd@xtWm$d96hSq&^oBgimo1#@`Jhv z7+ghT4yycRLS$pk1|oalT{H)(OEyw;F>F}pL7|l&cql@OAA4sjyOoDo;mX#Bz#4+` zV|5Gc14U6Y=GE@7VjCMz@_T(@;$%6d0;trKB1En?b7mgQq9$i2#)0zY4xKs)5GFY# zw?Z}$!DdkXBJRq`i2fV*oz6aaI}0h=&3~%ZIXt~F+NEy!ZN}ohm(us&eQ~EDtHj!S zr&TCg>13Zq&6@*8G=uK}qk@#1FS^(1FcM&SW#lMMWrmT1iIKxeWO7?;HV2hsAiJ&! z`88)=x~dh7pn?QY++ARNVm?kxrx+4FbdHA-y@Q*}H+k-&L)#s@@a(J45gq~y%Em2S zx^<}AHOs&4OXo|k?1@Q*(} zmv4KUuttRd*95@zJM6zW>^*b7rm)``a5ehHkp&t4mSKpT)3WJMlnzT68$qIrIlBzA zf;Se+5Nkr9e6fNA!@pZNLsJWb5h83hD(4F{dOhX~%)squ2EMd;f7U$0=0;BM)V5vI zx*hn%X zr1hL>INZvutWj)x`$ml$wdf2@_{5dpr+o6UobNcB+GJ8()%sl<@BitGy+b}-{tiZo z+zk1iIv+Hl)_CLP|=V+vImMXm4(j zWu)lVA#gaOu7luk21G0zF6SX6K%1&LURjz24gtV(o7-$ z0D_RDVBI(QX|zBam41cWOn4$lhGieg&9W-Vjl3T!Cw}>5wG#Xgz-F+bNosREF#z;f zJkdg0ERXl^O^Nw-9U|tS>7xBf+#jq8?~B!alcmV-u|K?ld=T3rKO#v*!4taR3Bgk9 z*F3=jZQ}_!Q-^{I|AlZK*!4F>B7dhAhy)w4^Yzk;3Kfc!i+#nK@wIF^-+kj-uCd|x z+*k=?VRsXw z6orE|m@8;_L3W~2zzYlyy%TYOuT?F-f`y~s)}sgJDP%#JobOs7J9REI)|^Nug>v&e2--B^vh}@7Y&f zuo3(y&}GH@H-B{O=%l8lGJxJKzLY63@F zOuk6XqioIUN<1DJNtg)}lzfO5YRbH~;FZ6Qf>MamxwR1eEf956wRSj={A!A)BzYHo z4Bh&->~4GkMHPzWY<~=?Vp&yao2t($fjSpd>4ccSQRzf})a%#H11h{c`7I0NH~Y75 z+N00t2WOvMUG{Jaiyk$qS!Y(cO1+et?M5_v_t^1WsqO0Yt64ZPea-p<-98xGwN)xf z=f{j>0Rv@QZf>l6SQJ9+C|0s;3yZ`e>2p^y*R!GRF zP8rtoL^^+3qU2xv^6clE-}`4CS`yA4H*xx$ac|9$6E^*xY$<~};OzUh_Y=l!jPKLQeL{q#1&dIZ1ytnbi zTxNjs#;kD@r_FqOG(fqBzg)bKDZ46K;kfl9f+G|7IudXUq^>!HiGn^E0~AYcoEThO ze9a)KnrtJot~taT@o)h>9Mq9u;}yw<&b|b3`^H-mGzK0l-&1W{#V+ZgF(F^-54Xto zg1{IL_k)VY=*L7lG1LH!iA{nchl2S8i8oR98I;HcuNuMuL)k5SaAVH@zI8?TruU>?p`zL)0sB{k7miPtn)1TmtXvM zQpez9E+c2qawiLn{X~^!W`vPL{Uv2fv&;I-#2I!!MbfxKiF*LP>J$QXFIE8Q$KBAf zc{lrT5?Bgrk5(`>%HJ9?4@?goc4SFXX+kd#lf65=hK z#&UZW{pgcRcUbiDsWKqw{rIP|pRE@e;cwwV1UE(U#no8W(Lf?0?YY@%8Z^G_!$jhB z!LYdscw4xQg*zBG$ypX6oq-auiiz;0p@$tpuTe7a2wb%36o`##3MQ>Yf4G1iAgEFi z=tP027XZssyb7Qe&2C^!4Y8X$V>cH;P2xhPEPTso{97R;NceJtU(27&BvUIaz6qaw z`jWyMVUABLlw(+@$SH7YNr6U6-JL{fG15!Hwv!R?=~g?};hEcB^6zad>hJqZir^1I zdJi5qgUw$!x$-SpSyaCrI^H4&UZEWoPS7?&>9nL0 z%I5X5{m!ZL=mNXoje0hf4P)1r_I~gnXjY#c?XUj+-Km4a2e-$Z?9fX$0f+KSqcq8+ zms%ulKT(!)iI~R#-LgT^Eg2IL6r4ZJW=aQv1Yyc8@`MPB8lsVG!W}PUJMw3WJOp1p z5TP2`5AZJ@-T=t!m)~OvKWi^TSulT!4gHh_2WLwk-)H6IGwh`I_O239+9fFQ2te>1^skQ zMoQfJU$zjef$jegP?REk0UN`5{3kJmoqjm|zX>X44J$=+nCczJ9A$)vm?^uSMg~I|UKG-#^vHUsgtzoAlt;IuPY=8gFF!Q+ z<3x8(`4Om$$yad1u-L$(OBM<9E|Rxv)bk}@fi72&sE@|&4x$W|yDhRS;? zpY*ok{O2DvBF~=}E_w3|9-Qa-)r)`TdCU9hgK+j|@VKErg!7PaT0fc_X@(KV6$m!@ zsVs95aY_bSS!j`9lwy`aBn4uY7SmoXF;6iEWaxky%aRDRmO}AabU|0z5ADMsjPtC= z{N@v$g{{ziG!B`0w|oGj!*~2SKbIf5(RuQ-WR@F=&{x-|<(HRY?jrzp`^90_Nr`dL9LbL(QG`Fm z_{p34beCtmJ$`!c{=CHJm*%|K@GGl0q~CE~{ErelmsMY~`rQ?!SEUvI^y(2zyo(Vp2u}@&ynP8*a)Wv(OGBO;e2DAAEyQcN5{)qvVh*D{3)=nZcTD zssc{bYSjt;OX!E+%z!y6^0iG^Wf_#WjFe}C$vJ6`X@{@q8695f89Wb4C+N29(y z`T6J9n>6j&t}wR&`b6hj0s4{1)(kRLg0)Ca#*Wl<8I&lDGl$@4E?wSqp_Vo>?B$W^ zOI#aWkdL#GXs_jQp{?~s*M7P_#5K_cE>PLk5N{U$2_!9(WT8bWB$Q#t{7Y7a85L6& zAs)$U%Ut}?Pk-?TDvNyb6LaR{H-mmSAITc=^xQ*-y*bRrmK?stN-$e(bb3tr>GY8o z52lUp&>dQI5d;U8#fnj8%>+%a`$yE5GHXaSw0PN!xr@ITIup6eOy*UX2F!I(wJ;Zn zglHdPVQrYB)kg%A8S#0$j5dey$u;C;7h2p@P!S=dTLm0t`QP`rlmCz_SC@}BBjlsr z8_|Jzl^z%Gv0!hlt6hf-?8ug+VO{w*&-sgS@^ALwW?MgGkNAS`ocz=74ePa&b(@hR z9<$AhHD0SRvBo6txLzkUSjdHcwgePo2Wm{z{?!|`9D(N}y&Owr#M@a5hDBHP(!dD3 zhu^~-SO+P`WCtOTnH*?7p$D_4>cB$W2O1lIKnbv2`K~!Ng$zzn$QUldN0y@4b31DiXuoA1w^b^AXEWqaf5;= z0*VzCM6l5mdlws0&OZO&%-U<8eL{HeeV_0Deb0A&Zo=7TGJDpnS+izMTNg0kqUSHj z^MHS&d2ndA&iw>wMfezbZI;)D+I`1qFd=JGS(7}&s^kH=t0k^Y4xyC_sqH7)?Ufi0 zg-FWAxe90haT%`u33mq<;b)(iyG57VN6Ixg#@yC^of|(k zC))ezRWq1$XD4KX$ zN|-GE;p&GqeZj0RU0w(weeO?(OElejcOPEeLyRzo)g7`_LQL?GcdKo{@(@z$gEJu_ zj3Znig~J7wW z`o$gIW!)B?<|zr4j1xgsl$MJ&8o@|di2orZa1lHp_{bSij1;UR)F$~dGT>j!f-_Yg zd`>hp$JQTrutiTjp-F=d70k|}nLb*tbz|;uql|F<;I7`lHG*ahx~?ZE2}h64(pDF- z|F|pgltN8}C_F54+6$`j?M1{JcqQk46l?x@qp{ozejwFlZ3cKV%IMtfd1g9>%uI-g zgz!Ke42=kM$HStH$aJ1ac^g9U78lF2qY(tOH!sc}ZC<uu{dzk?){&4NGBaF7 zCk@gcVUd~7u?1=#gx?A?>G=fort76N7~kS6cWeBX@l3Ki!eDpwF-l3h1LFv{Y}1f% zks60lij%!$F`IL_(FrMJ6SoKtA={nHWLxHBkZ33;2hEVa`ZyW2!yZ;qd&mfP^kxq6 zuBx0M_$o$T1)GJ-hHza-lt#H(qOT`^>g~5jm@kMfNyjG@c+88j zBKnIzaNGU&SH3iVDkD~n7&vFa4_8Nxc;^cQaQ~?XkLJlQ4)c5jen+=v8L?eyRFDzd z3c+m85c`DfX0>$%bu$bcCGj_RqH}Rc++Uad>^qL_VtcgdbRK~^IYXEwDoLC5LGY!E#QAzGUsjtehaK< z<&AS@6U=qhOK6I9%>3II68D9Z&Yf(nt1(8nTvv$us%+N~WuufH?@hMrGnx}o(3;!n ztTIFxSLMS^a&bt{A9BlozFXvqaeI{?EjF=7qy2>JA)ORMdNf9zOKg z=2x%ZDV{dRxyrZeDXR1!4GBHqt^j%?uzG|e;ufN*)n*Rm%+Y@+XJ@Y^H`GuR8O5Rg zHAorTgw(7Jq0NT+8}FMJ-h0oL>%Z{6_|VK0AMV#ZKbqfwia2wx_aLZ9#Q9QI*V%>F zA-e>dtx90n38Frz1O;ZL@60azy838yssFg>UXrm(JCwQC{VYZvg?vnGe2{g!L_Flk z#D`}!*pQ`Sk1wJ$x8}m+IGneJR*JIWi$ceTsc{U3jdlIPSKs{h=5^cX()*haE4roG zMbtuC0-!cl8*Ak>$lW4DszaO~A*Ax+XCGlS=NrqqPS|2jUr;G|xF|#JPE=9gUSYnn z*S>66EXmp0(6$P%XK&5nv-~@se=aRUaR6-qVJVVy)9HN){#h2c6lsn)eh9rGjw&VU zEILZ4;8Eknhf}*#NU#j zmhv)w@|B5Y1xR(x%Z`CEI$~Eda^V9w(il7l6 zTKMDR6K3ltj&0C?eEY-S^vBwc@juwF_YUsdAGIfd~HF{z!v8hd21^ zq1~zZ&vyeaZu5y<^EWq`{9)4vA6R@J>T&H{!gTQw?fQDU)&vJ*WB_8-JdJsc)Fv8X zmR05KSfF?lvTD>Rgr`=?rD}Q-#;s0pfjo!0oYNY?VS8FJDQeO1Dc8yk{NdBzo-Ljm zXs+dz6U+~+0{u3I=^bvMgaG`dwhT;2h@$;348M@THYEom#EL*`F;kGdNn{FoR-KMD z|GLrG+~#`4JOr;z3Y&uD$n|%C;|9D`wtDgVIz!Y?h~HmHoDmhywmOo*92%9J(C`Vw zVEw{(1hGl8nq0wkj^#|we=^-WwAy<9lv|{B>b$jWTe97wOMP@Q@}pxS&)hz0Sj6=k zzG&NqcaH||qH!1IEl+uB^JJFtmO*O9t#J}+BVqvDq3qa zWcF+(CCi&IlQW$gcM%Hi(7OoJht=os$&<(4Q9O)QSjD;zGA_QA4vPgzLUAb#LaxE| z!}@wL;e|K9?AE=^6IUNGMP<*8Qx!ymjgNPze}4DO6=n2@Wl=(WQ~L7B5i`Rd{Bo}O zlX>IN)y8Kl)OLNi?C#h*=VEN+#b1rF#ll*}dBBcqsk|^Aj#^fV+o5;U-8#|$^T27E zVJ-39be3yAB|RmT+PmOfAg`uNhd6XuZTg=Hm|uHcbt;%2tSRh}xKW5150>%&d7pa+ zy1ZT)Rd{W=h!xsv7)V%)8=3dbjh%rD&dGE1v+FwKB@sJnxm!h3Y+VrQq_uLNjYN6H zTVm$(2|<^T;YsAKZg5&UOfVxdfp%?-2`b;doG$45NyF82v;3D`lZ1JG&0h2BC35?azxIf5nrHwZow=)w8nEp8A2R?O7j!1 zo#e$uP&kfDmiE<)%ZVcgUmOhRoVZ?bxEAtc+!y#oTY@u&4j0#dNbo~et`C_%E}FBr zICrrGKmV7L=0=NO%grAJGNyI@px zc>K7pu97_EX*ax;tRfm?gcqaP<2~$!AMc{~H~cap@yM9(ML7i*TD+KyWaZYvHSEPb z;;=Y@e;@-K2`rAL#YQ3BdVmex7c6Qs3UNyem9;p#@svfM4|e*Z@s*d;KXgj;r*H`B zxA8OOq%kA~uMfu$KZNIQi)gy7%$Z-`e`Uk8$;8i&@SwipE`+W+ zYzWp>(pC#m<@PpccTqJ0_FyeK%ZxvjRa&j21X7Z;xRGu*+3D4kKM$Z^*BcUBv>G%d-kvkO! zR_eIQ;XGt@jW^fEZQZuNaw_HPid(jKgV2#x>pKHZxnNIJLbnpbs4RO~RYq0?T8&20mWH3|43~z? zuQVl*>G+VYK7`nnA-74T04#;P?+_Z8VCXT29l({D6Rx?UTvc3@-Qo%1GOgp7Agf3= zD+E6pRnn-%xKWLN!36~6V|SdZlHOQ0oKvP5^eGtw_~CoX|FYiRzx1%kI`XRd?$JGi z`}P{B59`@un7Ii_Np?Eymye3GkH2)_nHG;9IPkP*z_`)3=&2_RtqNxotK{qulhwAXu~yI)(|7WDcQCghr*uBjyjQsk-EO{m1a+9Q2W0@g zZuUinC5J&%C5L6A6{WKQD*mkW{LvB8*b7Xu*b@`-}CWHX*O)J&( zR@DlP%6ucXTwAP>RV^#GXd^R3#M2Q>#yd|!@w~VmfuAG7b;rJ5Vx+*(9un&*{#ixT z6Z&+Tct`(qqjUt9*Fm+UsrGwDxirpNOJc-Ef2^2&jg#8rPAm{v2n()hb) zO`g@D#;S?)mrPHs-#Be3Vxzj&7(b4<%5xoF7s&wDCyD`TOLCUp1!*gS!vKTAF}qYa zSGa_f-XV`P1I>mSHumXx0|&luK3hhN`@meiv8?E@wXpC$@taxybR1@)J!ay0(2%4} zHzFL_2P|)j5Ot2DkgTI>+3@LnHuhy&cYzfp*c|rwXs<^RIeP#?*P@Z+qrY<&HOe}T zjE3N-Ra!nEOI$IF%C~O6_<`q^FW9Gl;2xLPyk&!i5#k=PX5)QHi|@Mo$tB}D+|jUQ zQW$vI0pobxRSjOuN?M)~EAIxz`LB#+TeAJ7#-nyYG9DdGDh;o^Q{0R3c-LbiEQ+6-y&AH~|oj&>BiAP@k`F^bgnbpM_plHRR=BomPc6)hBPEhnEKZWbiZD;u2f_>VLX{4{KE0sL!UnY4;&U{(1btI7jN$Atr!|1xPD$cEqBp?t9~ zJ)a!HM;wNw1T=2Mh0aytsJNL^qPfhOII6GDU$ANQLt7W!u}*{)9-K6xX}!#*F#~QJ zaGRbpy-ACEr_7l%WkK_1)ADA|G;@3Ru3o2(n9{j(cgRM&z+d`qXq#9>yk;2XInTSO zJOy7Ro7o&!qqYw}dK4di^vr#Q`X1c*{bCutqF!5f4I}cSgXCjTI0k*Qi_Aug7R}ze^~vU+ zezvJ{o3-iP3p!-ejeaZj`(2$}IhfbVhCs54JPjL1V1hj_f@!ySFXX}1$=_aoS-*cj zWj{XT9;l!49_5`nk*XE2kNO}1R>#(yq}F;*+&`KR*;%F2un+4e^o#m$dO(kWQKQ2m z)Ntg=G*AjX42qU|O+$PV$k&wON%N^%SqwLuO4PBIQ@!GS;W7W(x3J*0es@kAFmU>` zM&0Vw>(kVJ~4&XKoxjqlPxg|l>VVzW0O?}uvq^p>!M-|mNSyT(o-k`J~ z38p%u$TZ6OIJ}OgnP0N5V%7i|%|w-XlyuBtFXJg^IEazWs;W>p~pe$@jD{uYJ%XH?e8!xA(od z+Q0VEOZSW)TxZ6Zslt6~a1SxnUpHs&gjtWS{<-Fa-re%XZ5-!XKVWj)x>Hd}sp%;~ zU%P6^j&U9C?a^~#M*XhSyVc(`Hg3!D*z0FfJ2!9NwF&O`J)G0OUv4ZeS!z$aU}tne z9R?mpK{rh^D#(*FA|4^t=!&GCj_S4889Q>A3Qb8H)ZIUDccT- zu&-MnudUIc?fy&tuXW8lz54#Pt2d#So~|v1U3cA61iP-XHpWPh8YdxG(aeD~)mAtp z!fvadcv;E@Z@WXPjWCUk8H5W%Qz*zhrGy@@FAgnUaXKPLV@5T(o2G~&^R%Axwu%i z7)KecpInW+02Se^H`Rxb$x!Zr|1x0#_BD?5!*-dcMeX~=SaG}ATKsN4rT67)OkdJF z`g{6eF$wJs@U;gD6hi4yO}Chy5{1L2M_ytIg;$KLWTnvhAwH@EieH8x!ziWqKd4~d zCGIl!iX&!@SG%!AJZ47wU$D4S5!?yW`oadI^R#4A$n3KIQcMb&YWwV{@l@kVaal^i zHS{2cX<^pT{E6D)Gcm*evECWJ@Fo7c(J*qpzQAACpK9@?1A3Abr-WawIKpHpUfqHc zFO%Srze-s(e@;psCZ32!;x==dc-h=8J~z|72{%@PC#C&|Ao&#GXvF%vJnAEHM}zr9UD^8471FUy+*z5AlyhCrb`Q4l#)mXvy3s~!Of!7WBMcJ)o1hb zAH7ds@}PU=3jez7LNl<+waMT9iA^oGKJ6m8Q8~7W$nOht__RVo7t9|zZer`MtMSJ28;i0WaHr&%m5E3HcxTk8Cj4*Wip)^%Pp-W_%+;godz!G^rfKFVl zU3-~#9lz@dk1_Gy`IEAmwP^Ip%bJevmM@!^yz_Bhir3aLO_88U5{84NH!~+P(wpqf z^tSf)^p5c6dwoP4Hf7{ak}(zGpb|t!IX=QHg!>A>aVP~trzayaPTY|b6B(Brml@YO zu4mkcxcs>JajW7=v)3V(UKN`hn;F|WwrA{!*!)<$3LcF3lZm(!B|(jiEaeQgFG-j( za9@jgX+-;`%W70ipFO;NttYA{RbTw!zO|l3-6poHUoExEl(zM&e)c-JzsUWwd%brd zPE}#(`e$<=of2|~+YD1fwVsTF*#Q6~!5pAZSV z4@R`gp5tBpaJ%Nh{qxeL-%gm0{$?%i7|^|5J72b>6`Xquv{ulz1Zj1HCl21&G|@lg zIAVh17~#qH%=fJFl*XY{k}O#lK}@6jS>}hW3iIMLLtaIQVnlL8W<=|Vo)IG=@*^OM z@QNWj8I9B7#E5l>IdZh(9UtLqs6fXcIRn|e9z$i;8g-R*`+7C4yD%-G(zqT?YAmgm zP}%+Sym?=qX)`3JW~EAPhPKMA1f7Fjz_kr`kNQx*=(<%km^u#8f^-~qKn0mG_)otN zMNFt+)T?@q`7c^kjL=7KvOX#Un|pAOt0hPx82Wr^#~|T+MW7US6W|{fQ!-k1oBhMRv?t;d^dJ*G`_I z3HRPRp?U+zq-5cS%%n!m;&7aC|o?;MxP<^9+~5a8VK;Z}WiTn=U#4=5@~@;7WDk;{Awl zQDg^Tx$`mk>=X?VvkN8xhjim}An4ZaY<|Tv<|#6l`|Jp5d5t zME#6Z351LFZ~#-cslf8UJ!3d^+5@pV0LX!mX$#k_C%ww_PLJ+6X1-bES}&>}6lgeE z!8{wi`ku8%Ki)HTW?Vq8y}w4!q^5>w`(B$fqT2!gcQfuWuYOhcQ}bGl_$%j0cjD}p zfYV7h^gQ}TN=qCHQbnYdVDXInuPpI$;JNNb?kerXWQi{pZ=4cc_P$^qIPuJq6W^Wx zz*Dr}Jot8v!(Dd`PaqN)8=oY>=%-1mxrj1MZH=lqm=A+S*lnc z9Yr;-2?|x++(*aJ?~$pt`si4cS8-G07e#m#qI=n0KOQzObm{Smd20JsQCG|swYTf$ znKw4Af8&_w@Vb8di23&DH@07mJ}CNrl<<-0bLb`0I9d9lC}UpvA?7^FJ0X81 zq?CIF_ED#2S=rBO@=I>t#%UZUdelL{m9MvzmRTCct8Jcg&%nGXYBo#hewd{NCmPmC=8!;j`iqRxKT$2W%QiPgZvJafG}3lvpE_bchE)5!88 zt*#EFAt~5C!L_t-xHwh1$45DGq(2>rbm;CuPmPKd=&BT)8cOJeRw8t7ZQp};e|lz9iIV6))5xJn|wm%(|QB&1fCXe zK6FBPoT#2O;$=h|3Bc->l#r~rk|W$SDN1Y5l5Is-Ze?i=sz{-)+ZtK*jFq`ysp0SXda|MSHI z=)4tWcif8l@yrkYa;5e6!qB{I(~IE1Nb|6JgnK=5kE)`xXQGU>q1PyRz+$Dy*-XG~ zT~63Wwh^X%#{%z^ffcD&hU(D?qli*_rorghEQsOAsQk^G0t5G z9OJ&T-(=4sCAX7}JOY(#T|9?fIIUi{p;(g1G@$M_1l1q%ahrQRaP|GihO%){zK+6` z?KuWq6*Ubz7ON^w-zQwScpK+Uy7q%$Kf~_chw1Oqr9}DzyD*RY-OY5b_Kb$VDE=9@ z9%y1Ke~+|pe1F3n%b(LVe1_Gq`D_^869NUzFa}(y?|ue0(I`nDUnHaUCKbtG%2nql z=P}htOy=M)vII*7qn2nXLB0)K0u$l_uBKFfTH|b30_Cx5vGB*cq>nK*Lob`tx=rV4 z6Z`IN-s55O8*%o`;5U!=c_9qk-7Mzm$Y+=YvXrW0xL zvYyDt9ZcPQetXxL9CJ;ijNNqNXI$fZ`_d-OmQJ3jM_(~dt(@c4{GSz=ADh=oJ-Ip0 zY&UTO?eDo5K_p^{6}0X~c}I6{KETTb4rew>)8uqpr1PWj zDbDWN7NxiCHPJ1iyr%!~59YTb?x*8dz2@)kyuK6f5N8H;+WsXPV2Iei(YxwMzlm#~ zN;cmDr-{yVo6`xB)9~%Pu}4^W_^f6X$#wz`NuV7!@^a&CBV6|1rW~8#Ig{ewA)Jok z&4O~a(@>X?s>^Ho=x!iy?(N4H6^<7v*JG#deEo_@nLTMi%NF-eo};I4^xt2gXI#_f ztP~CZcyQMwacDfpH*?MY?sV`u9@&xT*DW)-s|2GwEE$UUkRTMR2$E152`?;cC5FdK zn!qR?VEIP~LE-6`t-y?V!Z@y6)wv^H8` z#ztbqk;s&4Z@6U-59AWZV8&=DA=AaH1cNL-At4GvP6&zy*|^mjd#rRanvoWZ|9JXm zk+JCV+TYA`B4ttj?F$!9yM3XavChB3JQ>i+tiQfoH1L;xY}<~lD~op1+BHYIdvg>$ z2~qS!Ngq_H>X*tAq-KPDRO$mS2TE74hXKmb8;W~ThVw6WeFphWvK2BE7@pvE2Aw40 zX&K9Iu+}o}J@uW1o5#UKEL~>ebMK(#_Qkmq7d2_NDDQ5)+&cgA>89@ae9FD%C;xgM z**?l_JbDMM4~&N7i!{+xBe*_X7PoILUwrshqfzsK&?>o*j4=KcGAodzV#~ymB$Qr| ziN&*$Etkn3$9GPOy>4C@xBeI;=k7dY8{IqUZaw{)sJrBjYw6;8zNmkr)I&Q*h*QIN zVicVqGnFw4$^t-`O=bZ^7Q6LMO@p#{jU-vXos?;;qP)c9q|79AkSG%j$Whi>RB$$o z7-B!L}p6ZV@_(N!uguezk<`g!K_j+BFcn+tHe&@gD`}4ki?4s%K8NF_P$FwwNGg!Rk|*%f8ZDQd7N@8A=|#8Hdd+tUSi7nQPat*3RC!e60NFOga9$tiW=ul zVjdk1AtQyK8Z{Y)mYgH=ho+PAcaX(nC6b|l%om>p_qs1WCButLP%?a!(SuZ;c>8`H zz1-V>^{#zK@78aw-TLOL zf;{#1Y^t#hR7W7_4} zX0{L4E8I9)+FX}szO8q1z2X12lsI;y*{|iq52pFumtVS9et#OxEkDOfqZrV47!~yx z805&MP?=FIV~Xj#my(R>8Z%wbG$Q4{FeK+u4M*b;%Nj(=UO+y|>SmuVCs(B2b3yn_ z|JlV<9=c%gguL6_D>r|#+c+c6xis^QzFj)qCTK0>1m1!5d>FPs6?9UbWcX^w`(=DAHQr4<$Frz{Y1qzKM{sm*xnMh!y$uFz=xY`xTZ;p$J!C%e@p^e9vmd%Bg z&~-2ZL~J}=m`TpU3_)tIvFq0rZnUP{xUl!O2Uoe!M0?AHc1q;>_2ybxK_bj z*?ho^`&?I_ywZ%?RCc-J&8PfX)KI&7zJFR?SG`ny4@r3Mo5BH%!^mM(#kiAh#Cgs#?=@sKq9YyG}`;>Zz18n&7z59gj;Z5%xC{G(^}h5PkcyUe4<+Z{KL z?H2k%GykX0b1!^j&Mi*8wWs_i>hs;m*!lm<5JUh?x7>Abu1P>YXQ;KIJP`hFq_z8U)ae%Bd}s zS?3C-2pirC6jY%GQa%UG2*5Zw3Z;!|AVd!0IE@E&d3>)bZf3+4fA~KgROnjqDlV!d zqyI;XcV2qw^y#{7>Q%$#o*(+&d~@A8Pp8JOTA z<3eDId<{cP#-8LJwpr@5wJ{*%m~PKW&-`F zOqGm)?QhmcrtmSqWOyCc zm|MWC)3%m?QSnn^B)af^rt3APONTuF#&or0x=2FpRnH2I_#AG%ll)^|uLdkA5ujP2 zxg@&cGmC280;WJ@+c33Dgz;+Y>e(K5t}Y}cTGt8dF|BucwJl8p)*Bm#K%ABkI15hd zN@qh!>mZxfP1-5g9?%J(wc)vPZEqXK3#SK1If%q1DC?UavNE!ZiBPi~p64 ze`(qHq8I(E9)D~}a4iXre)Pf*sUh2%^i|T%G z5UGQet?`6H__P86_E<1V;zMD;L8v23Ci&<@98@yNupZ(M-bnn(rC7o?ynVapGM=uK za~YTsxU6vSS|%JyPb|e+UTH&nwSww4tnFA(T4F6=pR{3p+PXk$37D0ZcpA`8c;1k7 zu$E{UxQv;Z2+54(dGEt~+R~fn9Zgg#S$t{>X>7-wq#!a$BXAL)p!F-<0;WLpvSBKg z2m@Y%O%^Y0_o12_ekW5!?}Rk=VXE-PYEEp-Z9ovW$C5PWf!0W-b&y5t6ZqD83!7cU zZMFW3Ll+1XbSr4vWvDbkC^YED;w+9?=>dji>OcokHL&yg`jr4$!g#=>DdKn(jQ)JT6MLSmG+Q!MQt13 z2JLcCAKCcS{wnePW8>Q})*iX7N9xeL;B@FS2YZIXdW_Q&wOK|Y=fzM^OS4XgdM)B4N)elCpC+9fM0OqLfg1@LRcaK$LUx=~j6{A4LsO*TMrOLm zCm!cxavZr*&~yhsT+Q{AeqDOCP06g(dFa^ri%0qY7;7HYE7ufL_Irx1^{Uysahuq+ zwev^cHwZEP)1IOm`FaXQm1_=md*St~gL^BVHR78#qqifjpJ|QCW&_b)1OBcWYE;Zj zJ__QSU`;1LiiYc;7>B46M`I+G_;8Ex#pu!#w-tUExV)r$ z-_Cu_i!)9ye)}g;vtE#I({iR%nDSX!(alq%VZnhFI}eCfT?cn)Ieh()cV0AWJ=HVX z=Hnuf)U@8g$D^}4K#E~)xUc(KL5^VUL6a1SBchdBL+rsJ!AK6SaMwS)TA5j}6BRq1}{E7w1se*rCN-6+u8 zh*maeRWK4`Ya3&s_918mOn7EdO30Xng~zKEVpEq`6a-nXXMN28fpZ$TQmEB~Z76k! zLmPY0zeG!?`!0~7d(d6W{VQ|{Ze-%!m~iy*eghme7{@eiF02Pjm)&GtcfzbyW^Dq6 zP1+=dwTWXVWqiI&8{Y=)K+s;b@u?Gt#7Ejh;@bd4XT96rQ=Oyj$eZIQj&JR5$&k+XP>;%Ml1s*u3M#zjHEce zogyi7U$dkxXqXV z#m(@)<@x~i>^b@@^RCPG@|xe@Q}m~~1sbZ8IftVyRkhmM14g+zbxA{^GkG;=C@Xa( z7m>-xyWP zkuEDjySQpWr9|nzzJ|qgaXJNN=%T-J(K0ZT&E0@dbn5oCx>E$l-1=kl`n>NRy%6yC zEW2{b*5T$`{U=9?hxM_0hBUT0Fe*1jBwtM4B*b#_dowU|(!F!^xEWL8M^2=DQ%WYS z7Afh4+B0&sKz`H-kLAZpYfj2zVH;%ys+Bt&rzD;ARxOsWb(%wO*=G}Vl4*|!Q7Y@L zuDo8>;fP|%w{64KvSe3cZiIJB%p0`7g8IwGT-AbR%pO`f67z-$H)B>iyu?iUOJd$A zc0zw)=E9KuH{Ct0o>SbypaG2DO6qw@(Jcr@q|^v+lX&dO09P=Bj8g7v(S z@Z)dQ=)iqc#nUOiw#B!zLA}7%7%e?D4|!yX`sM-}Rv4&Rr1!@Oz+ox{J zQV+Za=oy~1HtuPG3PIe(?fSqe!p#~|;@%L*3v$B7ttdIdxWBV;ZwT}+!LqlYaY5ct zanw@;XyAsH-~12V)a5bMNVUBODY}<{Os)k zU8(#Db@kgQD@vPcc6A;1e23?R(WmvmO=I-DI`)T;c~0ued4pHz=CiG3-v*vAyXud4 zz6Axy#iCgbR1AEp=7c4lc44L47n;pH)p%@~^iD|MX7dEznQvBg59T%2(|X?3d?LOrxY5nf;UYBFOX@3H{oyjc|SE~P>^j?P^euAQgD+cASoct zOBBG`8ENY?J|>VP#9M3m;ZSPD!N73$FBY}xJO>NQQTEC1 zm~={#XUu7B)EQIRQH;+=rzD9F!SLW{YepUtAE6j04yy16_q4_7Lo)>OQANa z1X`4j0r4wWRo;V%7D&P?HYK)AsAjo6c(IX33FDYYxdxaaw`e4seDaF>AO^F|R-s zKd&CRg4NXCf5Qn6&9cEmasyoPxn!7~Slw~_;e+V&DCS39`m1+6mT1$c|4 zT-@GPe5-D{DE0$bWLlEW5-ZF#sQfm1!FSJ+80NnL4^=K8Q2)a7{SMPw-E12COCH;D z%?Db;%m(_-AiOq5dt2@rkkxltKKM;I$2=AsgRLo)2O{Q6(#V-0tKgy2i+5m4i|eLPCvF+SEH65lkf(8j0sB#DpohQv3m zrH$_<50j*iG>F8vK|329rR|SaZ^oj z(ibr@4umt;40EmfBh+kRK6R z_=Y>1eZ@`}RkX$ke^QJtCfa>+#q1`{l(Q$*^mB)mIes_%I<2>S-8`*hUFq%VlqF*R zavi$SdetHk=6VOLLZ#1O>~PIM{Vbz`MLjup_{2y9r4QU(RDEETp^lF#)Xre)tc9Rx zk;fhlBDdVmz=*2EL&aSSjv^scX%rh7yK^YZkQ`h1<@!B%R9fJhd}#N6U8Fqq2u@S> z;b`f=aSPu*s=wiHzkR%JUVjrS1{Ja1i>y7HvqY>D50xO1O4cjFfH69zcf|j^RgG=0n+T$hAt)L~{q`?U{G&qi8x55lg`8xaB0(OBMqyD03 ztDtSYs{GWjE4(Xt-$mqs_ELQ+WFPw^qBpIreR5b}gQv0YUSM2gaqXAcmtzxTHJRy;Y0$uuIx#K zuOUAXJNLY#{%&pAPF`{jjJ(5krrQK6Jj&HqZzxB61#O%z#KX{sBHliCl z@f;3+-s#74mm12~dxiNUJ(Ibp!L~=il1KbeJ9=^G0-T3!XkIS_tz!0}(BMyl$|R)@ zFAhWSNbzGXT|2_s_?vPtsQv72ifz*+KpgCbwI4W&NjgR zVpC^Bvy9UUg2h37p8m(k8KEc3gZEx#Z2WH`XYsLYY@o4TIY(ktq9%)uZ;qUC0xu$G z`Z@7oPSD`Ezq{2nDje;is9BV4b38EUB)UiWtBD6lS77G*5N}CW@L6pPH~<;MSxwpJ zp)i=ip*D}$q@p3KxUhtcv+->dozS^R;!}|u36pHWV7Hv1-l(v|(XQhq2-Nta=kYudAX)2d`xFU_)q-4I+uHmusoB`nb|b>v1-S<!hCmV@y?K!A-op9VZN`Mbh9idKf8nl-vzhW-wdrZorDJGE$EG+zb!dR z!*%wX?jf|ZNf?}dSDKIT={L-MjhzAb^I zpl-MK6Xo+Y06muUinUWs3xoxsi|sG4x&mv{v0w4Z`+;S&ytqte@BOt-s$-|{6vgL^UN zlgz#7AopBr7~dEC#)7go_iW2W`DTI5wT7_~EMbeauvzvP*9WX|KLq*}#Aeq$A^ufR z$0t`>bq-wcm)`5|O_b5)4+_FPohg(1Z~-h_n>O}9(MZ+FV2uA7WryRGPx%z953`5x%|8rFM4VW98Z*_^iZy|O5p!ILIY96EeX($b*SEFq?~QxNK8EpgBamJl1}+g!MXjRSj~Vabd0 zi?r86d_9EmHZMs6VI&{%r&1DvUL5Q$!_3Fr^pUX`Z92$URU6h` z&DKc-xHWfAwhCeYkyY55Y}RZ%b@Th+TQFwb2XOs-2wRMVHa)zEq%OnrmrEN`*DjIo^Pl4s<$4)0dyOL}nM^ z!KwoMe7x7s&ktJgpajpS&%-yfii)gs6PrME#VxBZmAw2NopP*6FkaZ z8WZ@s5IA4q&&cMnJ|i;&-(zg}+!^1m$)906dNlsr zf<6a!VJ9vr`rV}))Db9s(mX5Q@<8TcM@5MyPl;GNV-Ba>kcTQF`3 zgXo3QqEpOK?s$edDq*l5RP;{m$PZwi^1bAJrg`#eyTAP@WW|u@Qc33>pexFI3b4l+ zc2C@OYep-dLv0CNV3Q(elxFZ@?w0W&bA;nwh-!E#?gi?Xqk6dqe~MtA`7yMy9;WRCRsOC$dITV@}u(&+XKq88e;5n2|Z3ehTB7(&XHpiaz$;de2N;T z5NB!(nij;<6@2)WjSI28P)Qk-6PTXn%gB0h>f;SYeITltYYx@vR3#;`Qq_U^6LNAc z;nMk8JL}GGq6Z1bm@gT_U=#Wz0P({SN4t5HAZ7R&DRejZP-XT5%>ulVBUI8NZyi$8F(E}nQuIU;2Si|ZtaGgLF}jMY$Ru;g*7V#^LyaBnnRmm z>U`T5-n=&6=79b{V$@xMYb0A(mnv_TX0H!d3rJl;a!J(!i}AcA=W0C9e_McNYj(wj z9Xn*}40Fg4D9`nd6zjiMB1Jkw9kT^x4q^n?(?7YDbFKQgn0x-Jm36T>etzzD1qO0jw#vz+uELI z-q*;ht-N&j>zlNxQyUl8rg*!jD!=VT`|VEc3V5#f@j`Nly5icln0A%b1*}`zGkhof zJ$ed&-`FSc_t+oZ6*&j~cR3pEzTo=c(U1;NqbaVbsB1(^#@3HD6TYWf0-U>A8*z?` zGdnqyq?)l(;+(Tk8cN8~aLekLQWni!s0EIrV+wWG((CsctE1{`=KFKMH~$i0-yi>5 zH!tgB`;40~{>;G6x9=Y(GK3qQUusg%lt;Ey-uf^`%Fze;yj-O!4Xi z;*YDB=Q=dP&r<%hgF*h--gtH9;z%*`V*ulvioc;8A}?k9K))gHzoZ(1zy|bJ+R1P| z`0q&O7V}##%eRWYCA?M1zsz|52Q*@2*rhgLs*A^gl=P=T9-YyvTyZHFH?cE_l|5Av z(s;us4A?Yd4Y)VZfhjAR2K)<*k**uhaN z#=>)js2V?yX1?j*n=^ivi>fy}nq{xeFzXyuJbsot#-@Z%5JZWx1X{a36EWa~7yVFa z-Q>8=>OJ{0(unYRE^hn#nRC88Op!;gL(c>EBU|ek&LVq;XRwHZ-WK$epar@T8HMU>>@#Okbpbe9jp^J9 zpSBnD=b8&BKOfH_JmBb7^!$v%bCSgWzK&4pM#@(_#}wp>Y9;7K%M&d7n=rl5MUY#n zFtQ}U);!85DfJYsL#d~7wJpIFVM8m-utYs;Sc|^Ie9SddJsio~%GN&fhB-%Z>G4;y1V1~ zZ`Sjgfu)S6y0hvN@UI6}@_Va0Yq{_|hoAGhV1Be@I-<=Hm~HCkc8EV0+pQ6I)qK}@ zk7G}Uwn1+hoJaPc5PuS_b%dSBdyw~#Uzs}_gb|z@h9>SP=;H6<{g`vaAd%SNORl6* zI_AHwqyaZ1X3`!~)>Rd*#BmzWN!DRaavdIc*>eVT<1^9S0cTiit|IUhb49vPugdnQ zoE5T}F)Q?3JQ*OXxgC1XJnAcl=PYYDS3M|N;W;c)*ICx7Bx}Ilgt)*fnsa*Pik^lV zRJ+o_)~IUT$yK@)xM`Kb>)-XNTG4g{U%^UUL39H%(Wm{&bW0pWH*gRgw-ePe-;d@J zr%r~J^{Q-qY1&$F3|bhwpwiTG z$KC~u!z7Yu5OdiO(Znd(6gce)~lt@>ckO?6gLi!+JB&Zr^U>#BOE2Np3%7V{g{zqmr;U zvar*9v(*FakPq(1fH~rMSNg=}kg_auO-KV<6PQuR7HYNWZ%8K8-`FFmYwcWe99!&h zw9tORTD7=jzX5YV*ArM=@_O^_akLmI6ts;SGu+h4r6Bgkx57^CU`oK=xMb|j9oS3J znwN9XQu|KSRn$0X&v0P(xop~74!%lJ4#+zwZsNolZ{zF*iW`=M)ACKqd4*lXtH`VO z8fhwMCqJ55*m+*9npw;%@AS8vS9`~&dF7fNIj^Xlz2&^tvF3FleDvfKRsP;x?$aE1 z=wvSE(=S&lL67ZnKg1eF?(K&pJh1O@pOZQpkyYiP=94pP46;@UW`WcgH`VcF*?6{S zD}%cw$FfOdD2Zi^T%#@R-z^PT137$@pvzO;N2{_1y%QQ}nTS&yw(;3^DqGa=vj$>} zdUhRK1KBom%DEyb5dql3uoM{Hy!%MOGVXT4ePaiBzZV5l2o~tOUXkN*=`%Rdw*W9JEtol|l)_%+fLUg)6vtWO zfrlj9wSaTVrkamAs+j2ccwPzp&E=lDoMA8Rsa>ARyb{`)OWf`F97y&Qt&k@J*T6q% zf6<-_c%svjRzhWnI<2u)#%l#w2->|tt`$e5lQ8D`j2(-d!D)Cu%J`4D9V#wk7r^-EG-+Vo#OW zB{yhymDrnV?+15RCw6Ns5bYCKwk7taU2WNRVz=T05byZtt!(_A2L!YDj7% zw@J1o_GaB}*>+;LBH29iyt@LsMzW2rGMFQl041mPTU3;s<$`4!?;zRkO!Lapq5j5x zm&y|Ag*kYcSJ4`lf&%ej38zREk0Bd0nfzSVIFJSaJmzPIJ5X|E2lE1d%P?!@x>wm*_yj!O zew<(Zlr_(1gZb5o==_jKd!&lr_w#ZSG*tiumMqk^_^E1!tOO>t<6 zdy95Hh}-6gs`Zj||6t*URP?bi+Z<8+n_({W_T&6?U}mXE<=Mw9d$QfsPY8Tvsd$)Y zSvPmNe`Bd=X+8fyOU10Y%w+f?NGj;uNzyev@F<=`#^7-!sQ^6B_&F&RILoSfSm|e_ zvz9zrqdlc!+Q!UzsjQ0Heg?zY&$cjJh~9UQa_ zoao2v%|Kr}?UBGN+&Ey2tbjcDA|&P*Rp?*8)4wv&Fxe=?57`;1IxJ7SmW#Y{dQaw2 zviY>@GV|ge;sv~H|MK(u&8IzOn0I_i2K=-9d?4Th41d*vFXZQofxjigKW{yc;OF^( z@5S(lIS_vB4|*Q>#;oZnqCK0t><~T20;nVpyn-AbgZ6CE-NN%#;0bUz4|7BHsa~oF zhc$2ppWlR!x*WPVSp6YwUnd1-IQB@TLwXnohS37HY$W$6#2w?|j(&gWz>BgXG?GCt zSZB|81STE#sBkyMhE;H@wB}RYL>tOWztA97f9TSWxR$JrdFEgL`5ik%-Ak8#yYv1< z)7@>>UH#~^8PMHr_8&Olf62_5H)+hB5RVe+w|yJM=#QenHt3Jm`Cn+b>$upyDEwqm zG`Bqc|B`+Y_y+vPd?TLURR(+68YGQG)U!LExF1o9c^+|7Uq~bkp)Vx*bcZ<`L~y@W zZVE{)A@%jYo2Ls4T`&3X{9S+CKS_Ulzdq(q6DFt#yh*VvRAhy|pY-Sdt@oF2s4uu| zUfjN2|I*C4EZ#7ii#PU*SART>x4(z83{}O)YBNh1eaJ*ARxn+5L0ehL7s#Rrj^7C0 z$nADWC|XdWuPr*QmN{vZ<13_s-7~47Ep?(qV_4i8eg|$1fA2j}`}Nn0-5l=jvVYH> z{a;#_hYRXMhFne!^xx&6U)_go2aKGo451&3g}UsP%``5SrIxWFV_+%8C0GBuF<3W^ z>tcv`@%(v_a_CU#ZR73(`&X~t@BhWVah$a*=AbNc*TN#{rH-K}LA0ZQ&Y>7y$$fPG z^f>seoixI%FKBc@CNp!S zjCt{m2h3BV?#XvVUGvnMaI>G-x!*P0pQL|tV;NCs#ns_$w=`!6mqKoN43S=ThS92y z4(C-3P2}kIYPjW7A1kENCyfaHOl*`4WFjG^AoAyFVzIdiEn2=eH;Kg)hu~m0NJQhm zLFQwl^;P~mgbB8;+OJPC!^A)S$BF9lkXgjIi&3o@8gi@2EvPPABGvL~kZS%csdgbJ z2voa>wYWt%|1MG1eD~-P^Bqw(fAS5HWxOaF`)7)iWJNn0{(?Dpa8#?ne!%httL~PZ$ zXd(2bvnNHas4wi8w(WyZe(i}Em9r;BE?Jby?&O?#ntfIKBmJLgu%p zg%=Vj1$c?+GFr^X_uzq-`@z5$2Wx7l3zm<9w>^IF6KBekX$w%($CnQL@S_mCyPIgD z;BDF?&cT*o{9gipWyasx!hbo4-}arrPa{wH=1(vSdNY1_JqW*kJ&2zrn&|hOD=N+S z&CdYe+Ji`&9UI>AdJunbR%ZGi3G&B2BjY4)ovj7vZ^!iGl+5sm zq$>ROSup8b5na;-nSvyu#{=Qdvfwj<_-+0ts%rGW5YYb-(_=(q9P@a7W8W;4!jJvo+61-tz_crB3s zm2y!!Ck~&r+l16Tk#nmtCLS1Kk{jW;LkFAb?f;AhHs0rC`E##6;J+#%@%%d z5T0urV5^f}=tX8cS@l+LQ}l&!{5^8m$8oO(ypMBYRo?F|Pc4359_Wy(hb(4#-#UIy zYw$m1p;6p&u#f!lI3-~23&hiqMXY7iE+~)hLh~JGHy+^s3eiRC#(rJ110MFTG=~{jH-1D);cRXjWUT^F9c{wg~rL#K?PIa}| zYdDek!0>%6K0Lzk(lbTTM_vzlmiu3Eo01QEJ-}zzSjso}=04A7ePm=XPx5dcm-@}> zOT#x0we(y8PUMg=%+|maOHZoP9P#0ImJh5Go|l)Ip3&xG&fY2TZVut+?IAbL{vo^E zU$ERXF&8@ffqz+o zpLYTN_ZWV-_1>}c+>D36W`^eztow#o;y!VQ{}tj`;5;M&9!6BIL2`g+cfe(y2mC)6 z>%X294Ha$JEb!c{Xnuj`zXN`cr-GI)zP6snnV;b~_5*R6;Kf(g^LT;}+=kkXW$&K6$)_4pVt#sr*@H zzvDC27UFwoDtu2?gquE7O@ak~Cx8B$KhFfcR5|6P8Zqm8s`2s)_z2`@&nEtSQGMph zC@)n&;d`!5Lj8`Hs*|k0Z_M!L_;VG!pQ?1cRC909-;+Oo#NWH{{ZRgVn!jI;9i)Uh zYG5v@hJ!~-l^rx%SUy}6&UItkxUvIzQM_Vff|VV-Yf&YM%8BGkBOU>EU%aOnM*_E? zNUMU3x;aewCH_0m;x6E~f^+;Q}TRtk8*EQz{sGgZ5w$nh$FPZDmFB z=>OBKZ(~|8VmS*TQb4rLvg->l!+#)zJ3H^TNN!FI>qRlsCoLVqSb^n@H7%_a8C#*duGVy0Tlg$*Qwv z@7Bi#t*D;%;P8dJlFX{&V)E`q*=;(vTj@IL2B*frqu0w#_d-qO{2k(tT@+6r*rHa< zVnt48y>M4)3}r6*(k2*3(2;mwz3`lHeb~O7@Lu7#i_LirPiemR7AgFWTZ(az!toS? zQvWsd^uht3?%v^>cT&#dO675M=Z<@&nJO;a$brzIt3)l50_0wgG$O3rYlPc~O7=IC z1m2qD=m-~azt|;^pv!SlpHb08_l|))ua|j_8<3-ro9)JJmT9RjzSjeHllBgKW21TT zg|~H)bor8qiZw5Wo&DOEKW}QjN32?RI@zov&Quqb&bJaC(d5!wN6e#L_O2f|q9pBA z-mK!e=-vVS1524ap{{Vwi{$mjHK4TKkY_g8t}eG%n>rD(CLmayGy!1ya3!I`_uK~S z@o`>X*j-3N1%CG|!>nVEp|^@ldL%uUw}g?^rQb=<(d%Ub!}ASRq?z;r`JDPh08cYm zpN`r~Sf9Pw`b@_A>`FY~$wl8lf-nBOKz9e9bA25=xPYI8NG9O%7tqk73REeeawRqkH*>-2vVhTI zhXgg71#Eo4k1H>7JHM1 zTfn{ixwoeNTcPb2EyN3YSN)X!i>rdGlk0BRCfD1pix^KO?3NpFXVX2N*Sxj7k9uE2 z@1DKB*L@%P{w$SLs(Go6rF)fL9TpWfKJ2-$-@-G)*M(mQzgDJRnSwG;mH8neBVs|s ziL#kxmzTXBnI1Vla!us-Q4OQUMy-u{E$Z`VEjlB*P4tlHGv%6;TUqXhm;o`{W7A_N z$8L@NvwWlSy~@85=ZhN<_ey-__+jzK5~33ZCoE6+JTWbCLgMYOSL3Ie z3u+p*;%ePf>!;eiYHzFKtJ9>;`Z^!hxmwp(w_)ABbyw8gSNB?Gz0C2Mi!#?|ZqNLz zUUVMjxRD<>njx?;)@VKD)_WJBUoAhY1p~*i@TQr^5^tWc6n(b+x-n^js&nyEOwr|mXO#7EQWOP{H;cUmM z9jA1BvE$WFH9Gb0^i}7i&LcXn>-=?>7G2hN`KfE)t|zelU%oAhIjro4eUt>FreSGY>aoxwg zF+O?xwDEJtFB|{&gx(W|O_(^LV8Vh4-{p1A+nD!a-bZ;C^M0Dxd}86Gv`J4)_Dr5U z`P7uwQ+7oq6|} z*}I$k)8w*OAAj|YR~Nqe*{eII%$u@i%C0FVrsPg-IrZmhL#O3WE1mx1j2maHnEBF7 z`)fm9`{DJ-*LS?p>bpRN1s{EE9)Ok1&I#if|8F>l5kTG@1EtCg>>EL$~o)v?b*K7aS~+%LL* z@!{&mt8ZUDYxVIpx2zenCVB0>Yd>8Vwr=~E1HLT$>e;UfzHasPhhLYjk66F@8_PG5 z-%R~x=eI9^YyYn6ck{kGvLR%{&<$%glz;#B_j|t2+IYvtFE(avx^2@Nn||NiV)Nw9 zhc{<#_HEI&G}?0Kmgp@*xBU1+_z&ZLi2E_($A^FX^2f`uJ!8L$J+d`w>(H&~+q!Oh zZrf|ymTdcC+m>x{+fHuF+xGiU^?r)@>Gq%6{?zfO9zQ+&)0Ut0pWFYu{AcGceSV4m zHT2gRzn=ZA*KcvZ9o*h$`v=?q+|hr>ft{UpF6F&^XX&mXyMEdA=kD>l-`xHF?)AHW z-JQ7m)b66)zwZgz(_&B5p1ylV?U}LX{XHx9Y}%8!=jC6M>-toedMVlQ;sY?^7)Y;j_f^h_Gss$>yPd_ntHV0sClf;vB+axjtx5Y z+_725J~_7O*q&qQ$BK@J9B+TT$MNCECmmmK{PW}A9^Y~N!10sE-N((Ou%sqQ_ayaA z8kO`?(!8XVNt=@PCZ#5wPpUXk_eA80HYa+Wc=E)nC(fNHPS%reOujw2Q}Tf1ammw@ zbCb(bYNgmx?n&vHG9qPi%A%AtDc`5;OgWj7oASrWS|=k;-hHyq$ss4lpPYX3y_0KC zZatZJGVNsk$t$Trso|-2rFKp2llnyJ^Qp5^KT2JnCem(7Ym?SFZD87%v?*z`(w3%u zmiATJ4{1Bo4yI+M<)wMj%G0i<8|ih^8>Ziqep`C$^n25z(tD-%PamE>K7B^|;`CMN zvFQiWlhRM6XQk(#8ggpnsTWSYd20Eo^`~M_9kO?_N89_^huWXAPqfdszi0o%{)K(L zeV2Wo{g^$?e$IZuUSuz`UpcLxu5&u_bj#ECoSt)f@#$r!KR>sHnJH(MoLPJ3yE8wY*>xuMOvahgv-;W4vrW$4bN1o0qt4DaJL~Mi zvun=&dN%RwiL)7Joo6qet<11ygk&_zXp_+^qkqP@jMp<3WGu^w$yk^1TSijG*$hX9 zC*zNE#<{R_P0rnOuJ5^F=SH1->D-KSv(7C%xBT4dbKjr)`P{*Cr_WtD=gqWcMr5|k zyf3qN=3|-9WWJC&J#$g!%FL~qhck0Bf6ofdx;?8~)?-*?q z4RV_1bj<0SGdgEx&WAbQ=EUWk$|-gjj;4+-jzNy+9J3ssIyO7@IWinR$JN~6+=jWf z+G#Pvqw3Ubzr-p}~cw7g}9-;KINQ&t8~$VdaHyE^NK9=faT- zr!F`y6kqr=Pv(uu+nX=*yXUWSYR*TUYn_)}LtIa~UU9wVn&VpRTIPyzt#fT~#k#h; zj=C~kW$xPUNOxEF5ciAjdG1y2ZSJG)T=(UI`UNcuIu<-w@Myu41R0qc(YT^XMQ;`@D*CwS^P;bdHWmF;w5w=e(XpbmqH{$Tii(QLimrHc zPpGG{r-diV)63J}Gu$)UGt={d=QGb5&$pf*JO?~Uo>QJIPrj$vQ{lN*Y$;wEfC`)(oknAU-wPZd^6?f|EL=$7A=pxHSbG@;6MH?z+Y1hm$&L0K71ATzH zz7u!>j0X<@_4(u4gW_%NX3@o{FFG2Zh{Z;vcul_|+63Jt`dP+`APc`$Wr-4xTRMn& z#vCw~7w$Ql{&o@d^x2}dzFbJ{8*wkcB+$#4D<&DO#e>E?FjVx_ z&Wl@(kErhr@jSm$KT&IFerfa(lh~hSE#}-e>ElAqRo5*L4{AlwTSaH>XHi>SW7HA# zEDmuC{k_pJgbsZ~TQAzN+O`E6X=%szlpYjwj8$Tsu~&?t6b@N(?iWiD+X! z`%A^EmOA1=OQNtbtFqA84u5BeTeT@7!m^Hb&lfKT#f#BFoy1VBftYUjkb7S+vn*eT zLB_YDyX7Y_&2YfG9_AJ!N<6CnF5cAli^u%!f1kcL6*IJrVy5=IXr`YP)Ahchi}nt4 zRO0F!A+9|R9Rp=Vc!inJYeCvJkztGz&#L|z)5UztS<%okR}8VV6=B8_^!0l&AKKS? zr+C*(A7IF^+Z$aV)3xGKIbeGOM*6uIl-;O9BWH)v-MA8Ad&mM zqFc~=wD+KyXMBJx7KwTKlVTFrHnW}*cNn*zk4w?BdC1~D(a72Ws*V*Jh^Ce^^f8D1 zSHy7II4P)uc-a!owQD(VCb&yPTW2B5*Tr4N8|HD2yIaqT8?AX^dpVG+tTK|ybdkFDd-!#~AD%Xu-W)&TKoa9!%V1s(>8Tad?-@UXk( zHc?0Myz2PDpykv#6Md%@G`c`Cj1zF!OUJia=+z`}T++n$hKHxVj{m{#kVxIML(ZaGrbhUP;tUY~l zK)>bur;$^!c-cA;ztR%BVCBYmLfnWCinPoYZLGJ6C6=4SaLcRW73}+Y%L=j38e--f zht1uVd#L*(>h6v#S;4hzpbhAem48;W+{Zmu@!8kxV+Y1MY~U*~#5f^Z=$klq75Di< z+=z_%U0pHFnl7HS4#56y0?=sTyMq> zyNMUAbGi5HqLJQIJY_T#BA7MhYO3wPuQ8D?pQda!`*2Zy6$lgJr0~D+8?PuZ?+{~c zA|~n|2`RJ1^U}_LiCz^C%FW^-Jz7lGdyBq$7i{2B{Pmakk{q!J-?+e1Bo;6eG$Ck< zctV>cUe;a|gQz0{Uvr;6Ts(mvdzN2VZ(((a_k(|cAJf^th}>3)5teJBh0$5uX(S+< z>7p0?>R`zczaBn2Ond@A$DogWttZ73)*Slz3D>?W)>{nPGDUohuk92( zN{rM7n%^+jH-XO=qx&6IJi*5{)t(efiDggHr+Y13@!{u1L&GI*4VoB$rM0-#dO~zo z3<++H{oW^@)-K~mFN;OsA>&Tb7YqdLjXV5Q?RNlogU;YnFwkgEoEu=8#(1IAx2Edb zbH<1G)4{@KJS@86E635-9>gt0yBl^f&Ke}f={q?d56#4{hKd=+X^y`V59|A&>bm88 zv;I3_)ems2>QvW4(W6JO?QzC~qA#mUJuL52_et@HWfS*%M|2OGAR>ZB5=XXktj=4& z{=3-zWOVNl(ap%9>;;e}BJdAQ@Im8@??oT$k78WVD9&9WYFqE8>`m~FXm4HbryY$> zlsl;-o^u+3uZ7KOqfLWo+c}|I_i;b!0pqOgiFK)b)}Q;ScGDL_7Y_wfFMPif{@~#@t9y52U+za|6 z*m6DRQh8TRsC=si{P~v3ss0mGo~8Oz1Mp*m;scvKW`%U z(G_2s=nejynY{IXq<$SDx2;JtMQtT_)!+YH>d(nlUaWF*CA+HJT;<0qN3Tg$ zo~rUvf1avx(&^^MekdP{?f*yM4|V)VO=zKJjPke8_rbf$R{TCn`Kg*vKD;KBkFR+z z>c&6*h3UlOf80wQE1&*1;ODvTGO!KA(v}urnu-JdctBiGv7s9N_Ng}hvz;?2tA>gf zHKF)YjhcO^vG0#ns!s|khE>6DH*+e#v3ytgz4ln;M$0Pm1gKhb~s&8qQo^|<*z(Q4iLFLWLHtL#pV1FQJ2Y)0vC^%%zQ zr=@wy0`Q~x`jh5COElxar_2r2`sB9@rTfZO$C_nooIw8a_qm--=tsPmYHUI;q1R(! zbzJhx$aKT&D0uF`pA>2BE6-N(R9c!41B=Y3h#8|8hhDQpR4$-wp0YnRjwA1S@H(xE zr`55snpVZeiP!C^`raxpVNS?jS0L7ny&l`DVwZ|lYJN!hoN8Ka!__g!a=h{;{C<{k zQ{^Q~gG!&)ud>uQYCdKxsoZItGspU40=b*t*DD|D_wVHMlQ6{QP?TDu-3^g#6uKuNp6?c%^cDRkw;os{Zl#ES2Z0&s7=s z@aN+y?^pT08Z#7$8UCD6UC(`0EU1P$zuE?`+X!(_-J85j{illvdbzSL4`(mE+^+Jz zT8mUk%@?Ce-S|%1&1$x=tU`W5HVshyB=a_$st|bP@Q~#oVN*}q*;L6x0|!2&_RMQm z^^+*i2CdRKlxx*z2ET^LflcTfNa_x&RmY$*P17xwAgk1M!=mXr2h}fKW6ub-^0HX0 zR^4K?_zzTpl|75jcLI#S1#C6Vq6MpKb>5aBwWH}=#buh+2r^WeVc`x|gAWXgH7Ljk z=0mIhBCD0V=~hdvV9g4la*JVD3|ho3RQt)tDdSJ3_$(-h76o4Z`qgew5Vz!m+O;_+ zsFrFYN407N(Nc8>BXA$pE_GtCRc$#4=EGV+{E8R73knXZT}w4sy=w*4qRbk&x7t&6 zSZZ@34d8c6Ygudg_o+!WDu@#TAF0dy=URhRt#rv>5$&-WmRgoty5f{3B@g^rgA4>f z1_yWOoK}nO!kVDq+CjmpbzEc6m7ri+$xXPHnmJY1xMOgzHCWW*l0c#V6E><-ffqbC z;3{>i`W5wegX^d{a2lPi=7hQfg|H*=Q7tPqtCwn#y1VKXVm5>#G&%68?q{?rqEHLs zFKVy9XeM2)@iNc@#a{G+>eQ9~mpVgLR(%YuaS^=wdo8LZHQqJO{i_rW3%uzL>O`wF z80=Rpj;hW>I|I7*ACCP>QB}R4X@9kf?)xS8SIPA~^^sz?vIt(tp!)dwDb+jGGVrrP z@kBAD%EnZyX|igppD4y5=_-a*pH?`QsdslQr_UlXj#q}01w>DZ|*@K>su8YrkL_V+2E zJ$?=1beih7m4F$*dac?9G^O}T1iaV_uv;DYFR1bus-wJ^(ZER>s9h=qBrncg?Gqyawz}4`<$F5 zXUh-ea`~ldp0~`g{6v{YyPo-=QDTPw1(- z-DtrxxxI~n##m#L@w&0lSZjQ5Y&CWoCydjE!>F)GOPHlWgp7!eSP)SfQ5NxM(*d?x zwmP;OY&Y5>Y>~D*Z0&3vY+Y?pwqCYrw%NAzwvD#Uwyn0Ewmr=(%^Eao)GV^u?akUY z8yTrZS|dXv>qj<@jNrMUzLBFNC$u=~)h_M3VpOW{bMTBGcQt$2^C%Ro|%} z)lbrEVcgCy)Zzk_Dl8rM)u5k$o-w+`px<$;1SQl|IqMTj} zTWwpIt%2<(o6XjOUf*Nua=q7I+rG7JqSrfYyZ_efr>c5=LycaKr`M8ROL~2kUZVy4 z*H)f9V|U;23k^d&h_iU$TDO%)wKRITt~3jx#4e zXHCvWtTNBf{v_x1oB`Pz&u`9Nlf9Z1>5sD)Wxtd?EPL>|;s(Ff{@uDu+b0kC^Suut_=ZW0V`M9Di8-w zfZV{jf8T1Ue?JZ!X^ET<{x>gewl+tbtIgBi(dLV}+MC*k+A{4UZMpWb_KBD$-qAkQ zKGRlcG1^KopV|9W+UMFA+G=f$wpJ`;#(Sf-N!zS#(SFc=6pO_YEmqsAZPR{Y6?3Wf zhIp5?#J8B2y`bf3`I=L6X>Rd>R-hGXMVdz|*1TGY=HnU0Wm>6rQ7hBRwF>Q$_B;Ps zvRwN^`%}BDUD2*;*Tl!-6TPlpPY=^?(Ch0Bw70cc+5&Bz-b!z+x6#|`we>oBh#rb% z{-`hHyMK%H#rhJlRczCj=^yFK#ZTDTC*o)QQ~fjXi@rkqs>g`m^p*N5v0eXM><~Nk zFZ9*=8hx$44nOpj{AUqkdYm4wC+K^{ zd6BIrGH+kVf7*CNF{_(iJgJYYzEoV~KUB)~gQ7w|q#qWS_(Ra&@exk_nAG&+xXvW} zWU`(j4ITlu;yYY=D&OJ?mbHwzx?3-hH_32$vuvyv>P337?!iCZC0oi?#vIw2uMxN9 zi^T1WdB!_ zUanW@m*k^zpd2Iz%OQCCVe&D2^c(VV`Gg$K^SZ*&RDMkSxAFzsCyh6aw~QvnE%GV( zw0uU6#H%flqj>IgshlJy%ej)ZNaJ0(!k8gf^LuK%>g=x4+#WkXsih0tp#yPsP9|gxBbvwhyDQYW&$6AFBjqfRnLYVtioLAA&^Y@LTE|= z+M7_d7G|gXL+EL62FwFz0pBpuK82nK*a*1-?^@g;rJpkIH|13K>fIFVL_6usk7e2ml)tvOd6*YV=Ru9)Nfc zdPe}*sE~MD*^YBEpzQ2&=CQsUzcSZ>xZ5Vh40!S&RGLJ5`dt7?F>L?l%8s30f_IY zmm*!V*#PB0LH#qjUMm2x2^t!J(r>+a07}PobWW!qO2_eqe_;{(K+u03ebUh#bp-BN z`r0a}y4D3C$R>39?}w`U>j1=W(DmROpziZ+0Af2-@kl}4Q}O6~>fZrXJW~Br_gC$v zOzeX0tb(dr9Rsl+ij4F2>mEH0aRN~ zf>g?rq4)^}9(b;v2T)M{jAtc)$acmqNP*pk!u52Ouh--9Zo9gA9!a15kd} z=ox^LrO_(@<#&zV0VvrTeZWBK{{uQG0Nn{49DsfdIwSz8(B)h_MlD;(Q-;GuQ%XtD$V*N6IfkW5HHH z`;2X1C)X;uDcw?-4X|Zn59R%#aUdSN4H7^i^^`;R0puwkg({gH2Z{$u9w#V&9GVPH zbN=tpGXbby6=z;I013^g0xH2X48q6;8pr_->KOse1xoLfyp*1)`rZV8fImSKa2Z_V z{HLImzy$E#LcIzqE?T&s0&7UZ!aXcul#hnq5CH2e!cre#zY;x&;JOIT*SUX0HxSK! z4s;G!z#YQ_+ z47PE9TSNBeLT?N}>5lCtzIjFF0 z4M47e?f^R}UkgRYYax7&-p(<8wa3rnn-x8AZdGKs{qspJ+f~A z@+au%0MzI`ay*#8`M(I!0vRjF-*BxG&lfCRVn#*?PawD^`wf6RWk3l`WgKiPc-% z`o!uj`V1M~e1vVOZRx|~m)iQ+o*y$l)@b3Ud@y0@h`VjEV(9P}*bW=sEVlcICf9c- zj2O|iO{}4+;R?=PI)Vybtf~O&FS`3$n^;ThezsWs_Cdo3509PGt4VD4UL%?`Yi8>m zn=oj2Y(lRl%|?u96KlQRM%w!J3*mv*2DOg0wrmp{9H?RF@YwE6V#SE1OI3YChc|B) zJ7?+ACQIo-^>M=AkGD(l&w}nX3*bQS?Q+f_s)96c)C{!{e}+j zO%t2Z#M-T6BYU@rtZUXSUha_4iTxlCy!_n+nmPQ z7Ht|YCS(wjZ8t!|wl?jB(Jwss+M>bBT0HiN?Cv~6?LW^$OE zzAd^TWuw$)w%Xj?kPil`%_Oz?P;Gux8&hqXHVj-bU0pFEbQXhEEz+ zjus8I&xK8I#xty4S?hgYgt7kA&>Ajo#1GtHO%Ng0Y=MROU-iUSr2A53bpkI?wJ#Y5 zkF46)M6h_VYG3Euo>Qv!jT-wFaXVwgKs{E$G?!-L=Q?{h7P%Y)l~n{1TmE}r|=5~6ZjTETRxv8#)4_!LGUuAHOp+*OCR@N zHeDbp9qhh_w#2eHNHSis(pcbs=iL+eyYv=`D`5bdd1I!@tiZAeRcOK z>`$W(#ls$Odkp6Vj{bg4Yd-%sKD6`8Wg1s@6?gNV>3_GSp1$Xkjfye0D!pRtW$%q+2~^=vmVj@89h-jZm!i)}n_DfaS~VjpkG z?2MYPJ;qzA89BBojIt!7r8Kq~j5MTh@RrQI z+ekKMdyBk7=Ak7P2jqWo#>C z1>38#QZTg8XtP@0V;iIev8|=mVS9si1KUQ-QAn*ZvlCLg6FEq&6~0_*ZL~IQ+i4xx zj?%`leM8G-o6k63>hCkkmio8MVM^vN_ppuEGuWPIW<=^aj6*ZrvMnROmBv*vT*(SlJ$SD4MBv*5{}wCJm<_zY z=e?2lCf=LHX2o-PJ2O*~6!>-YVT;(J@(+#$D^mBMtwygt{fCLh<6fWgvS|F=lnF11 z#xIYV_KIjs4CIAIs=IKnag(P`79lT9nDUAsGxgV?wyG6YEzEx`(P2rw7IB+Ej^Z-M zwKOa$OMWb&QcZfU1U3mXiw7(4==x)C!yazvYuegt2AnPPLi!NB< z{US;{fCWsz;^w09^Tm72jeW#?7jx3goczpe$gj+BY-iSDCnNtf;s^7`jM2|9?)J|Z zGlph~LmVSIE`!EBOr) zev?`98gu*1moL;7X^XWb+EVRZ?LF;%?SqEZka!7X}(Zqp<6+w>Ot9r|6&<+srn24?PA5q#IbI`&~;{$9=A ztGRo9g&w13?e)+7^YvTwAFAiy^`Fq)U-VzqtUIfSJO4h@&MbSHeo8;BpGAj#`bD0} zsAn`_HhZ425X}sHw@nkZd%U5vTxpTK7?ctf9u*!`89ch%py=SJh#qabr3XJ7J%e}s z=+TPyXdC@iU88Plw5NMq_e)Xj9?0m?uwLJ8+oBVqGU|O0vOnZRbWC(ix7_H2=#0>m z?wMg7qn5HA6rIqcZP;fIgm)W6or7)&uivOac!SFgzv!OX@T=&Un-<^vM&p>q+Zu0g z9Cz#XTjOs1Bcg4@cH4uIb(`l#&uG!^_Kc`@cSWiDM=kTWW=6~Utr9r$w%*uga$BwK z_`4s8%DX!=YH7P|?K1EAH9DbV_l~nV?e4NPI-zr)&gq>iyA12HwA-L=xwJa7OKfz) z1L0A5QSG9Z(l7O%;otZ7FHjy8-X%lvA}YMci}#Pee_N07Q6WA0_ZZS+Jm?>IM~NOo z6psS$Xb<(*ct=HaOAovQEe>$6`s@cXx^1iZj>-tU74NFw-7~vqQscI2L`4MNN-9wq z{{;2N{BHi%xY%!tf~%&RkM&)#iYds3FGBCpe>I92KEHtCnju z2Nlo!ZzQj{pz4fT#@SW4eqIf(|F>oTB8QrC3H16ej#qQOns&<#a9wep)_RmyM#n^X z;YfWrbiGfCceFJlI#}5eHmKyO^!B=Rm0c>E^V?;n;z0LHNV4s9jeW67dtW3De1o;C zsA1(TMIB<3CK~WI@b@i=3d+yd!OwSOt*JBb8}aVZ#D?CY4^iP^@dy(x{dwEOK;F&7 zV19!yk}U0UqQ!9DcZes&GenJ1yjzQ4tsca z5eeivUH!RE6r+m+M3X~gIo*gAsoXi8*zgdsp@clMl=oO>GXEfJydtiWzg7||pC_}i zh?it-SzEj!>&bdz5-Wm@#bg;NBgIr!0NaUaDvpSmM3PS84WdaG@g@=Fe(@GDrI&b{ zJZ6}f&8ptxVh*uoxR}fO-AFM{&X)_s0=Y;o5sTy*c}6Ui8SR%#DveZ?vjsl*q=s<*`&;?*Z&t+rBI zCw|es(!LRUSYQ58?A3nOc8f#Aqd1X5OiBpK|o47{QY9T6#T6d6)-KF2fdhFeLXKCm?^@n7LK0qHR8|cII zVX~1vL4QHsq)*f*$y@Z-^w(rlV%)pZ#*-hb%mwokv`XTu!Ps$vZgLqaZO%5Zrosy3e-%iUXh;f;6 zxSp-&$){N_cFM784OosN?)l^d)^o4OXZ1?ml#^MhHRKedj!{?6Fv5&5$@kxkaQQmF zS=2|)G5Q*P<@fwc`V(@aG0GSvxAR2Gbh(37;h8dCt?9}Hl?BQ~W3Dkz?la~a^W_0! zp|MaNG*%d&%R|O$W3@calRN8VlJS-Cl}t9iH8#i;o@m)9(~Ql=4>H||HDcvyo^aVF z&lo=&JLOqpx3OF181Y8DbQp=oL78hDHV#Xdanv{_-8=`AEDOmmQ)LlP#GH{HBg@E= z#fIB(ORrIA6v`5#)F_ocqr#|=rPyv~bH7Lhc5^@fowr~1HuvixAPm$8d(HjEOc2jG z;n-Y5vN!b~3XSB=jO17H?F^f^U5|v`2HpjH8&h8m(kMR#_^n1}Pa842-jEEr5woX_ zn0;?#Oalu+BC`Pd!9nVkqJbGq9v4>W74<<2v%6?(w!`il^8b-owOPbJEftA}0sm?# zhJwey$=#Nz*N!0iRH|5`0eCHtP5p?BaM2pB;uC0mt|(m3r;qce6<9pq|-X zhC>^hZW#fM1YMX7co5nfIvP3#yaX0jdgW5^0r(IUnF+F(Zy955Hm1Mh(O zU;$WVp4UDHUx3wM4Ok1-fiKM>?JMv#SP#Ado4{tU1^fVh1hHnJwiRpxKY^c3xAqJ8 zmHL09p6$>b(4Ej-&^=re5B7q6-~c!T;DdGyB!Ogb5~P7s;55iL+i8D7uYhZ25%%5? zYj23HH`H%53-z18&7cXm6*L9SO}BoJnV`c5{a$b%=m z&{9yw{vUkyC!bx0UV)nYtGfgms0%_s7--0o^^HI{xRv7wv%AsMJa5>b&7hIc=Fr=q zEugnU?||M3y$jkB+6vkl+6LMddN;Hkv_145Xb0%M(EFgBxJMUoKX?E{gC3wK=neXT z0bn2)4A6N4oj0BUBfwMO888Zr0prX%yZ~MT6Tu|#Dt(#?rh}Q-+)CPjJ{n(e z-8!(IbH0b7bF2_GH1=`c0dUMrFj7IGnZRhSvzaZrnt9@W{>|nAet9*OW4oCxZ{~Tp zF3{efNQ4mMLWpM}+DbDEpOTGF$;PK->o)$^G?KF0z&#>F=N$cBa3AOhI)Tn$0C*G( z1n+Y0DzF;trH(Y}I0a6Fvy>H@dHO}ZPcRuw0n@-tGuv1QjfW=ko&WvdAm7D3#8 zMj#wC2Dg9+u+8-Hoe{4w9_;1%0c2%i`0y~YuZGNx)yF@&@sDo&qZ|L|#y7f|=W2jI zbmI@*_(0|V-1t8?KF^KMQ-02kpL65m-1s*){>_blbIbW6j7%m>E&_|e5)p=fa^s)e z_$N31$&G(<<6GSL7B{}djc;+|Tio~-H@?MUp(-|17AGw#RFeF@WlgPJn+Q>Up(-|17AGw z#RFeF@WlgPJn+Q>Up(-|17AGw#RFeF@Wlf!_^}&M3QV+D{RX@SLcpz{6X*i4MtI?Y z7yK77=n44GWq9F%7an-wffpWl;ei((c;R9GW~iA<#LGp};Y6BTB26xlCYMN)OQgxw z{sdRRH8U6QoQqe^#rx*sF>~>jxp=2syi+dTDHrdQi+9S!JLTe?a`8yHc$HkGrRIE5 z-<&TOf~DXC@F8W&4m{X_2Rra!2OjLegB^IV0}poK!45pwfd@PAU`WZy`se(Y+Hd2;6CsU_!z{1 zpTK@>G>z5-gPTATa4TpEnt>kRMOxJx^Z|Xr!(bs;20jAI0d;DhfZZStB!EPa0_cI3 z4(#9$a2Z^s2W`MoumZptoon=B;G^|*Ks^u&9s&KqqhJsi0)~Od!EgX~jimnCXGxfkBE~-wv5$W-#kQu4@9^2ko|$V~Fc zO7e(aX+*CyqE{M`D~&86k1=|f*#{f$Lr;_FVG=z|5{Iy-dS()K-3PnwgI)K*uKUo# zBzl-c50mI&5iQXmAyCiy-M6Z(QQ4+mKqV-9%I*C>%(c&apoJ5P0XmJuP zPNKz0v^a?tC(+_0TAW0SlW1`gElgtUu%CFo1D~FWPtU}sXX4W{#bBP!9|DG&b}HA3 z^MW|W`Nzo@lFW2*!aOHDobLmrpbV6Q3h+DU{{g)Wu7FB&FUu=?i6@!T0u3h`H8vf@ zmP}$xrffx7M-Tvvi*Z91)%rLJ^LHk-vr&y=Lh)wAjgNG@EsrRARcDweA_}l2~s)E01oz@l)Ios z9DCR=1!e4;W+w46)6hV$x!0%->Y8?9XQmMbZD>01>kcCv+`?zKQr-!40r!IkKs4w9 zdV=1dAJ+{41HoW`UJ>!^L_9mOHj`MJNvzEz`q_!MndIYHzX|+8`EOt!=N&*l-y-5=5b-k5b|2dAL)(35yASR5 zq1`2DcP84MiFW(YZXeoRf_D4R?o71WgRO+3(S>NV4~_Pr(I?R85;WR{#`@4sA6l7- zR{GFNA6n=`>wIXP53TbNRWpdH8AR0#qG|?FH3Lobp@}{;(T67b&_o{^SAxcspm8N= zTnQSNiNaMm&WFbN&^R9&=R@OsXjKVXRf1NP zpj9PkRS8;Ef>vdsRX#MT1Z~Phn@Z565;Vz&_W01AOti;`)?}hJnff_1gD9Utl+QqW zd}vN4n!|Jbpp1Q!-@KPV10kRxQfLIi!L1y30$srU-~kW~dVrpwHy8n)0?&XkV4PWk z7L=d`C1^njT2O)(l%NGAXh9}gkck##B7Gl{FG2D?B=1AwnMgd7`OGk8U+aU1kWgRn zFz5#!1D}AEU>8u5Jq$epem7l6(uEXVNYRB9T}aV|6kSNsB^Qdiaw+%#d?@N7K^GEq zAwd@sbRj_(l5!y_7m{)zDHoD*At@J=fl5!y_7m{)zDHoD*At@KqaKU{S+;_ow z7hHD1VHX^B!Ce>Jb-`U1+;zcG7aVoLQ5PI_!BH0+b-_^=9Cg7_7aVoLQ5PI_!BH2S za=|4RTyl|N9z~an853RNUnnaXy>%rspNO7IN)p%}B}>jHT)_ zmZ~e$L_KK-XBa7;C09L1i?e7snXfD|^Ek= zJ)_1BW<0X{uVXXjPly49#DGF#Kp`=Jxgt@AZ$s2UuK%lX8$P~Jy8^DMxgJr6xt@6D zdg7VuiP!G~9YH718FXPh+!OQyy+I%F5a`b@L=NEdN5Mcah_b<82p9^U1W$pd!82eY zcm+%XQ_Tu}8ki1dfY+EEm`i>0fErUWhoOH!O=(*6{0~pMf!F8T&QIopqTPQDe_AXhWV{Y6QZ;|IJvmAJ+^31HoW`o)Iq! zi5G?F^k3uDQ5>tW>Z{Z{6-)cm>F**GnbIUuezkNe;(=ph3uD7 zUJfdl;rJ7JnUROGf?TpA_$fvLFTgJ3z33IPk(BATgF8V>a1>nPS_2&6T%LSlbTtxq z$@uOCy#U8tb&;zsa@9qyy2w=*x#}WUU1X)_NweI4_4b5^qb2*;598X$~CoRX5mg70g@tozf zq>L3Ht9g`oc~o>JNAF6;7DY=`u1-cz3rmQVPFm*_seEn++)13L=MJK+lk>ftbICk{ zZ#gMznfc5Rr4t{W(q>*Dw^zL>Va6yGzq6k_za0LQFng3LA0o4R7{CGeRU*f7-8ig$ zJl^+Zb38uk2(k1ivGgdh^eD0PD6#aYrp5t3GkW=jQA!B;d>E(?)OesdWok^I#sh(| zK)J5Q0^d^p3zFN*d5Li72**c>fsBfDH9p9Io->aU_l^?xjxt-74mX|tF+&-&!q3$b z#th}iu*7J9^cyn5xe?k3dJ{ApdNWyw8Y8^Qz8WV?g{rZ_bm&aR8?W=Z8aKqVpJ=8d z2`95&=}5!LQ&v{|aUIavT#Y0SAqgLn*hHS5N}irdj-E>H%}O4hr<)Z>V>Qz7i7fWd zw2YWYYlU-oAva}d%R%4ht-82NW9`L`Oy`H}mm61QvrOtOu+#H<6R4k}s!{FQ<|(r;;zHBH7hQb~Tb+jbt|=)lEos z6H?v82+xO9H<2f&BGp2qx*DnS{YQ=uf#cvLILkTbm`l$D*}y@W3ly4%knAR;>O-PF z^50bQ-&CYph(rsKW+9TyC+|%~nwya1CZxCt39d$h`Q)RiNO2Q6X)5_=D*0zB5?zf% z4qZ!BT40tN|0tU(p-Zy6Od*y(o9C0 z%10MgumG?kB4Hmdw=2~tf)s>w*zgH%08)#JC% zTPT~%?+#4?)4)t~jo&WcqI@C8G0n)n4=WS{#Y z2?vsJAc;665r-t=@RTKR-GOH;f$MQ_+yTcOc*YX!#{tJ3c*hbvV+ovgz-b2_v4r@d zIO~A34m@B9-me7DSAwlL@OmY9yb@zNm}$mgCl0vjfSV4u>42MYc)Sw4T?tPncgE*+ zB|{C^h6~Qx;jEg8uwxsgaMTV*op97yWgA{>!wq+xaMzA)l)_;<9Ja$@I~=ydVLKd7 zfx~t=bdog3Fn>IfD0RNVFNB~ zz*S`fE~H_{2E0haS!Dxigm1?NN|A^iiP*6L7t*jJ4Lf@8LhoHwdS6L9ZA`dlpRSq(R&wq@8SvD7L2g& zfb*?D2XG(gY~~=n9K2e#c!%SUK@8Z&xj#XFhNkj4>l!?D5{49WctWuuPbY>|dAJ-= z%=*hkj{h`sc)~o4`A;{`n}o@mpf^+21WFz$n}TMb3uQf^y`d_5=nGXD#3RrF&_P@~ z7!1cg#$q$$&GYhEj$h=OmpOg~Z#IeJ$*k9~7NYe5eE|~IW>Yo?%mwqnJAic_jddPv zA)hY;AA#k7zB141M%vlhuYA58>;$_hivtND5u^atU$t~#2Y-Oe;3~Ovh?#>%}^sYlWc+IeIZ=K5&t; zKPbD*uann7y7fRPP?}s(QnaJopIdfeU*(j&p(-0ux#U=+JRStH z4 zYvp4b%5&vo8*bu79<~vJZG_5apkujiJb0GBq1Ztvb`Xjk zgklGwaM6jrhobMH=zHityqe0qo#<~UTy>(mp>Wozf6f?mHI#8R`WqVXZj_y+ESKX# z=taPo4809SZ$k~8@mT}LayNpTfXc;q?gZTpMR!Bd-B5Hl6x|I)cSF(LP;@sG-3>)| zL($z(bT*qRV{ig=F%jc=Dxq@}+q4 zrFinCc(}O*4z5Kf*P@ea(a9}va0}eq0_V2CwJlXS(OS5*h1@5e+$WygCmyaHfoogP z$C|l~lOAuO$6M&}7J9sv9y{sn7J9lCy*xrskMMn$&dkwAF;;kh)r(a2)7iH}&-zzo z^0BmhdR!nblEWLI1A5ej(OgexZ|EQ><8`bpA1lkJmw8xOzMRb52P-1<>H@vGK(8*) zt2}z8R%q1fOdgh&PtWq`Spm9m0ZYrLcWQMe4=c;Z%JS(|0ajLkl@-vVJbIKzkMiiz z1$vW5Z!YlEeP>!5$r%T9lREAkXo>M}eQ$n7jGRhJ% z$rAFG67m)wc}od-i^?EN$XQCr&wb?PYQ$Ay)CRYJw?GUaVSCC&< z(2H_fUQUbE+I0o3te_QYO!;qX*cIfz738=T%v=!vC738uNSW(S2>(>3tg3$ML+>|(riG5q$zZ!i4z!f!9VEQZ%!cUIw?^J1vH- zJ#}paYHj5pRIRV5wH39FQoV*!bN!?)GX`o6B@B8i^nY4A>Bo5kz(6nawYH+xOxCeqy=KCbjLd=-F$-G63}_MG5VA6Z$*<80R%VcL0_!IUte+(Ce0n|R z{u9(wFi1L~#@v5`Sjq7&pyvJ=p&IN$Av=X9I*i9XEq-UVK?jC;TB@gL)EWR! zsh|xB(#9NrB=kWrn9oN;$AEF1GXcEB{$$GMvj(sLECP$c67c_eZGh}gV?K#zPJJ2~ zpoSEA=G3RH179*f^%eLUtOwtKe|r+BdfnhRuGs;w2DCB(txVANf_>lsI0WF6#xsMg z4JEKPl)&0hf|dqOfzzPoQ$_#(tsx|!;ki|72)R6S>O<2L(DYn1J)vqHAwmCZ9iblU z2=!P;sHb1>TR}qAT0#PAT?x8cOZb!WE5PI#N(nTeo}dbWs;8*_zNV01G)1GEf##qE zxC7h;T7fp;ZqObukI6Hn%AyjCF5rIf0Eh-XKu^#c{C7`jjo|aAz%xKSu{8!-a}5IB z!NL--uv{!Gf%Ue8|MfaVs6U>l(J(QR*x@5y`1q!2Bmc;_D|uyKjvry&S&eWfvd<_M z|L()L`}hXQLwNMQ;9<}Y5JB+HUToEit$MLhFE*;8mKsllaF+|%sESe-h)&zN+Xd{^ z%iTh-Q7`tXqSH=nR7Iu>-1#hb4#8Hv*s2#BRgvietq8$Ryx55sJMm&CUhKq+{(I4X zFZ%CA|GntH7yb95|6cUpi~f7je=qv)MgP6%zZd=Y;zhmalox&S;yJx|PA{I*i@tc# z5idI8MMu2ohl*|&@S0v^>_x_2Wb8%8US#Y=#$IIXMaEt{qZc`Pk)szGs%Urtxp|S9 z7nynet1$^=8hA8t$(#dMyng=IGS881;IZI)SCen-((6Y6|J@}gkc~{_KMH=vYJWkS zn}cta6#$+HCfh*UK^a=n5Hteefag}pG7`u#638+VXpNUlBY{jKK{T&g7xK}Xa$3Xq zkBmrVcI1V$2>I|dTx0I6vNe^R4d!^H(gvPrtGQP6*ZPoJ+5hMIP#_EYAJ&Kb8G@Y* z!A_Q?o(r{;A=t?f>|_Xb{T#>y*+hUF$wqT%XAaz(0rwJVYZ|%QSvYr&w&uXS2-=$i z2NV5S&Pevh(e4T4ZxhYO$rf|S4s*y3bKp=STuCGXT{6d0n_8(jd%ZSQQ(smZRIXH` z2Chows#H;nt6t=agMYi?A7}gfcACBsWxxWk2rLFm%+vJkG<`cw-%hha_7G3R_5}}v zeqg9M8T*P6PnhB2DPrI!?5_m7z+rF%{BFizPcg*4$=Fj2_7sCH#b7@%*iQ`h6C?MU z;n+?LwiAQx#9%uy*iH;FW-?jMWU`#eWI2<`awcO>G1yZK_7sCX#b8e{*i#Jl6oWm* zU{5jFQw;VLgFVGyPchh24Dn>Lb_HBBC+ik7Tn_@ZKpjvItTAKo>66J?CS!Lo`0~lv zUJSMuqbKpX6Y2q_z%*m9zZmQ<1|K~c8;rq6PsRpgu)!E?FvhqaJOH9W56~0z2K_j1 z02l}c19(X0GMUU}GWHpRea2v)G5FcZ*k}y)8G~P)jE%-%qcKJtylx=z6!H`qs+}>* z88oLH{J~SJVW2)9q#@aTe>}x&&^ctUbJ?GVeWif&zyVk%FjQWyYRjj#Qfe!rwgPG^ zptb^PE1~Go9y+ig_yK27&gIJ-I{@HJzYsXYta7jKD9Uk6pnd zSW|!OZUAdL!YANb~XeNjZ+#mr@t zV5irZ1(n!N5Y~4KbKY&uEZL6ijM-e-9Xvuk19)a>l(|Q~z_~BeHuY4v8XqLES8P7d zb!zP3H1|=iR-V#n;R$9wT>qH)SV!wl@*Ty;%~|3pRw^e}mWsD3`IouMO=6)rQYbnGwu-5vxc}5I}s_zg?gwt;^D>Tc$Y0!!Sn6t#tt|d(3ivLNCTvB06rXr2PyPzE>f64-xkofXOUwTeY+^f zvOYJSwey$F@9EQFX=g1j9~}+m%0QM;3mdQzN4i4CK_`HT=#WlNz1;u*w0GWdR#n#? z-|Y@F!@v|k2Ba57L_oj_7En>C3W6eFR0JCxj4_soM)YG|VhMRcOd>{+DGVy2fQX8M zbi^)-QUxh0AR&S}=Y7{c_uK+Ag1-Fs-aenR@4CB}wb$8a?|pu22XS^ISHqJ;bBVW! z7T!&qJ;dP~LHL6cMexYOaDF~BcvclD-9Xx6E+t$Z%%=A~BHlbox}CVQ;G%blzm)h> zDY0<%7SdTs-YZFK1ug##?XiuLZlyiGr2hxv^I#tF)3owheAnW;mbQ_%K{?^I1df)|UA*N{jy*nJE@L8xcsq$#J>F-b zB+8(DzMw6H%eUaOixlPE{wv~5fU8+;SG+UPA3JD`^>FhB`fLLdjI{yf=nuLrt(VSQG4Hv|$LbI`}4dfZ2%{K{HX*M+G4F1#1I2 zIUwbs^Z}S_*vn`W`Tb1nbR+R1Lkq@DP?Rh&@e=Nl|Iz;jAj2KWgzXW?4AmRPJUCVr z$Ev(6QLCoLORZhfJ<2EPa%3uO`7m5ERrn&c{q`O?9a{6-ibBDaM>Ju~Fvrw<4~Ym? zUu1#-NXwrz>AaTO>pvMS;TddYrCbH9y@^w>ji=dBn_v(zKrakUz-oN(G4|TvreI;f zcUj1?e7=V$4OkbT->b#LZ5QsAwg~EQf8+W5hPdC4xUWjaAM{#6HI43 zPY>Esst1BAf_Xfj6>>W-cs7{LI7^HR#u=?1>1Z|Ue3V<@Wf9V zkxz1i*~Ocg;_3GjhLwe1V8ZtNIs8~zCUN<+PW*YQdC6Kq*u11$&^Jk^Qt=TiyxYr5 zl=xWXY3&X3HN{Evgb7BK4-cj%{)S<|(>z*}Dzz$)6LK3oS%cj72KNPD2JOqY%fHab z2r1uy-&4UH=FX98yNHrsku%KDgo~zOKft#RDJFP2`G@a#j%eb2SHXy^JZi-~9daU1 z)~|T(t`{!F2-mHsETv#f=bI!PlWK+Nwgp}Z2WDBSMkazy6jti)$ z6`SCM$enkXO3lxg-jyb$0#I2GH^FU{tZoxB$FYD(bd9m?%W#JO~?rfLxQ zi_JXh(D5F1s0DaKvq?!XhE4)uXdyU6f~44nGb|tQj{gx?JI=6t0tUi5&aiY)8+f-l z4ecbm$dkQkz61U@*SX*f{lNP|Ioc<>hz=5UzDFAB>XC*n^hiS&X~7uk?lFdXd5ob; zJ;qQUk1^EOV+?^X1jY~uLtqS{I|PiOD?G-~05FCg1dH@fe6useV+;-T=t9Fhy3q9= zUFb%SE;QVu3ytvTLZdyp&=`*{G}faFjq~V2w|I1+TR|6^rhelQg`NOWXpx%ck%M0H z$U(1rx=knrZ_Gc*m%Xpx_m%O(5abRhvP>tEaYrh}S@U;W36d zUuavZZGtO=Mi_8~z##%xNCh5O$aq{KYXw&*)8h(N^|(Sg9#^Qq;|ewLxI#@mu23_N zE7aWM3LPhUwsZ@RDAdj)3Y`L?&`RCWV+nQfSVHG}ETIcLmQYuZCDhGh30>l`gf0b3 z=zHDQqX_-VqX=E&QG|wi6rt-qiqH)nMQD^q5t{5#gdX!KLet%~?pj^su5;IcE+mLT zB_2`eIgcpxyhjvz!6ORI_J~3+c|@T(9#LqnM-*D%5rtm$h(fP>M4^QqQD~7z6k6;N zg_e3mp=BOXXt_reddDLQz3Uc&DD)nPLMuQT5-g$5JeJVs9!qGw#}eA$v4l2yETK&v zOK7vl5@HQPkN4xVjvt?O{P=9_$7f^4XLH8taa{Gl{5qbecMC4fSUUlk)|xAuQPzf- zZMg~=U!ZX^zB;giD7a$PITdmSVb0{L4+2p~P$xTa6@Wx^7Vns6bLBJUFQ5cnxvDVw zF9e}d#($b-@l5prTHwn&P)UQ&QL#8t&h ziiSvva@7!N5wPPT@}i-a7Y)6San*FH@=_P0qvjd~nNZdO4zzBZG)Fn3Hk^`YLeCYI@wVI(j1C z1UB~QWp(s}NSVf7$~5*;rm2@Q)sQk9R5QI%Zv;wzCrB^3dY9hCS}otJK?|x`121

      =cWQXKBM7UvgRm;7X4R29_bCJV=0sHk1kMLl3=Lb8@coOKtg=BndyMZA zrD0L3jUczTD_>Uz~y|2bmo{jgq+LiJ!9sXdC)I&iqDw& zWXu(daVcs-vLJNYLMh?D3sg{@}H zWFZ>9_7ZZR*@rD!z8pBA-;w(PbAUP?G@!+z@9TT$AIuNXKbjw*1(mIqm#VeARITNu zs$hxot)Q2x)xA{B_EI(5OVw;IRkOWR&Gu3?+e_7Bk*ZDj8m_5rsHZ3f-kHdp!f zILirIL3D#|VL3@FxNgubk-~XM;kN93pKMQ7O>H|Qa;}%ieBp;g&J~G_?@&8bHL%0% zjjEZ*Wn92}Bm6`=Q5kSe?^iK!O&=a@>&PmJybd{kgOQbyNVnB~WK@jM1)ClxA=rUVIYBSLy z)5OlQvsAXAqmt%}oZf5>Mk-tcPU;-;oonY3W}cl#_ysn^{(X%cU$=0JT?isob+A+4 zAjdb+%aUOi*+nXor^Q?3vcxV?RqRr`RMiHHZW*~Rx647WT4CW9yV9;yb$Oz&j|cYZ zd+Jzuu3&>vhrQOWrTm}pm136tl(PkOc*d;9-e@;cqfMMBHFmSzOpaUZ7Rm;W9ck{c zJ5+u2ne8MNXm*rvkKIG=dqG{xvEZ2C{x43T7TEoEKPCB&lc>fXum?!zASY6d{oZ~L zU2e-sGq8cmtvC~F+)3^v=+>N#HE70c1KpN0vc{e4 zPKIvh+CjH>?V&rk4$!B#Q=m^pV@}MS=1!xIr@Pak&v0izpXtto?&vx~cXFMe&vIu$ zpN;mMm^;Uv1AVSL7rL|S4BZ8dIWc#hI}iGNcRut54&;8G>)mLp?yftn)Wh|F?&*3$ z_j0|Ud!sYQqRa9U=u6R+V_hHD2fDB03FR(xmqGV){h<51{?M1Z%b~#<#AcSDvSpTl zJsL#495;qD8(D5F$a*<$9N&*-x$z+E<+xk;jxtL@?jGDhDC86}2!+I&>?SMc9^?G5aZ?=gZuhu*oO(Thjv9^D&8d_D%tG{-KjWTJ z_1ttf9UdrhMfieWh+XE&NMWX%Nt&P-VuNC+3f+tDMcn7OIoNaETtd!s^FRT7*}Y5( zpc|4V=!TSbp<77p-T)u4zI&4sCs}S0IDz%uVz(IjE%z2$yum(H`EHq8#wn5IZaJx~ z0NpEB<}UJOEGS>OGIvo8WbUGx%G?DS97No~K_m<~h`b4CYWS~|Ro&$JZe5DBmdl%?MP$y8$a6%<02BHJ-RdrWzsA*Eb4% z97X)l)Qf^v`WuFjc#?Y*PlBiBRB7~thlEZqOTsISFrN29JI&)i{6~5_GP0hMypp^h z`3o;aS2mJMt{mQ4Qm;^Eh2u7iC-N$~V#q7GvbZvc7u~|6sdp&zL@uP?sbP|Qoh)CH zYMLYup`x)SvOq>~bf*Smwv2R6zhy*5cQ$pX=tiFvErRwKq{zoacze4_x@{r$V;2y7AYl0Z0mVS{z)t`BB4Xs9Lhq8Av-$qJc#&D!bQ9m%HPl>8^F5$c&?W3L&aX5es*ddb_bczfyak++OcYle>+GF*M=?RDPXg!5SSgz#uP;WD1^gDWuep|2BtMp2}LNC|L^io#f z+L@DCjccK|>M!&by;*N!{ceL^uRmu^Z=L=W9R+Jy-W&K^rhZz#+h5p zc=KyB*4%3Ppm%8}D}7(-uk|;2x89@oqJwE48kqL$f9vn`0ew(^k0z!cbvX^JUAZyn zVsa*CGSJ49i7uvWQ`K}d)mR(MHF@qk^fJ{jHBBuvGu1YQrj9w*)H4lCeOXUpHL0C# zZ#&pi?5XxNd%8Wto@qPUPWCK&wmrw5YdhO6tTLT%FR)$hh4vzQvF&EN+a9br^|HO~ zCH7L=$M$9Ish{m{FSl3N0rpBe&Sy~*Be zhqF30(vGsD?HD`OjEfj|q;v zd9HM;+-lxE*SL3h_k7R2?>=xJx{r7RUF$w^pSpFtg?{eVyA5um+vGO8E$$1q)os%O z@1@&$E8XdKxv$*U?i;t8x6{37h}y^d>He6FxmYZg;r{IoxP$HoQ`i0IzBf6hAXYUd zPvQU9%JkU(L9I;5k-tvuG-H0r7&q6Makj0Daoa|34oA6gu8j1Md(j~AQ8?n=I>!8N z;o$hlKPdbfjd&d(QiX5#!m$;O{8UL%p%kc%1o-tY9{2bBoRR;(9`}cj`i~jkGRniz z9m;?mel+iqag03NpE~Ac#HWvIQJq=B z)t8;De(Ymi&e`1o>}3sPA8RoCSNEYq@P0H1KB)en{-_>SkE%&(zIufnt5?-)>UH+4 z-avoOBDI(kuS?WYwTu(5E7VH03OzbI&;+=P^TuDJL1(wx!7M#ZbBDQ$U7W|w-^}05 zKg<(mD!V!VG*6kQ%{23jnQn?qF?%|tW`-#* zOJZ%zRoZN9BxYuVbijy=}aw+(G$c0P_{f1{;sWn0^S*eBRSc+x(_9>O$s z5T@HATg)Cpshz=k|026sG|jNWzl@dr6|Cs5va9Xec8z_9b^Z74hxTJu@V{XV{##bj zGhKDo#_wX)^EHlPe$vn3+m@%|eUFfy3^pnhwWe%a~Eg9SLhN0=}r2B7D+&uk|lZzyAixdvT{*P0>b zYOlF4LwM3`qy^RxQ{D-@=D>`0XoecAo>nu_<+oh@psTZ&*$sV$snJLKD-; z^g`#}-;m%N%wBe#TJyB;##448`#w|9TesS7aM`TGcXc4-;dqiSiM;5*y*t@ zu^zGhvAbg>vG-%;87*j0G?XxtLMM%CW$va9#j@w1%0T=us>n6ME(P(!s1nE8Hnr2N zLq7vmCKS7a#NY-elvQk_UuH#H{L<5XKti#1AnD$ZUBuo2>9T7e={}A~^OUaHLf6}!khgk8c6H;-9y16BuG zvLAmc>+}}aV)KZ^VpoIkhOZzfYY*&F^JnZ5_6DLBod;D6A7qoxF{+*^m;W%bwCH^3 zGWVnp8!x?;_t;{a?fn;sKev>=x_5cayBu1kh4C`|x5Q;XM9L)X&FKm3QcjXcnV!Oq zdSelE8T$!R!zkwu_*cwc0zT}+5j(Awghx1s;eFSNFZ(Of)8nz>4_`((*-*?rgp@j+ zPlOYS+3k{&O~Ec=w@X?}`n1G}OUQrIp+f$Xx<~w1>gz854oz3;RLriGr29|oB6h8$ zR2{KP+~2UnbbZTszLWO!Irwp%;2QTV?#1RypVRX`OvFz+yw5K0^MdyYYr9e0*~5|a zQu%4G55LccpCi6*GB#Lw*d>Rwi}Xh^yJAv)YDxKfVwW1>?h-c@J1qapP^nxL$bYMS z9x_tP*nyI;QD4Tqe^u}Qs`zsY7v*}F*S$-64@sSi-4O9HGM=O46>=~&c-4(bLyQ{Iw+?CixZV+~_%djxf`&H+)db}Za8*&n%Cn}>_%aixf`*I z+|AgfZUi>Fg~;G(P{Ql^oR~R*=f{bhz>9Grr~~rtRL=W=E5#Wfw16=SI)+(LPxeK6 zGxw1beFKqGGUsWjCUCV<_i~-Y{AVKPibRWY8)iU%M2<~XkAn-ehU*maj6b8`5WmKZ z7FJm`3|-}1VFtQSGhqfXcJ)bb_D?=@Wl9D(rye*XE zbh-KqRHAlTbUkZYEY)q4cN5*w$#CdV=0bmSq7CYCZl;xJM^3n8u+!Nt(3y;FP| za7yO_PWN;*7nzIA_2ve1qq)i4Y=)Z=gv#N}R}1>IJuM&3WxI0@OJ=Ugv^h~=Mw(GZ z%4X^1?&hWx-_~fGyV6``t}y+~<)*(GXa<% zQJG<880T(Ao6+n)|ItmN9LfAh(M>X=asQKh$UW>HF~i)W?$4yvi`2T4@=#UR^d-%1 zq-f$P_A^)UR7*>RvJ6fs*#Js)CES^+BUv;g*CdwAO-L^)F?mp4N|{m$DFY=<%fUV3 z9!-X!oPYLfRfX`xu|CcEtZmjJmT+9SYgZ2!O-{Y(vA)zIlXkm`Q&K~zRgFaIaIc=g zKlJVqGvo!Ccgieuxc@IZ2CRJQNqQ3Ai}eyxZD^X)!pRbLVkLEneoHULr;%yQoUW;9 jMwn!Xy7a=?>bK~2A8*bv=bFx@i#gAnPs-9J^wj?V$Lg${ literal 0 HcmV?d00001 diff --git a/source/analysis/g4tools/include/tools/OpenGL b/source/analysis/g4tools/include/tools/OpenGL index 582c06b1ce..c4132a8333 100644 --- a/source/analysis/g4tools/include/tools/OpenGL +++ b/source/analysis/g4tools/include/tools/OpenGL @@ -21,9 +21,13 @@ #elif _WIN32 #include #include -#elif __APPLE__ +#elif __APPLE__ +#ifdef BUSH_USE_AGL #include //Cocoa #else +#include //Macports X11 GL. +#endif +#else #include #endif diff --git a/source/analysis/g4tools/include/tools/Qt/plots_glarea b/source/analysis/g4tools/include/tools/Qt/plots_glarea index 7a540dfd56..16debd3962 100644 --- a/source/analysis/g4tools/include/tools/Qt/plots_glarea +++ b/source/analysis/g4tools/include/tools/Qt/plots_glarea @@ -19,20 +19,20 @@ public: virtual void resizeGL(int a_w,int a_h){ //::printf("debug : resize : %d %d\n",a_w,a_h); #if QT_VERSION < 0x050000 -#else +#else m_width = a_w; m_height = a_h; -#endif +#endif } //virtual void paintGL(); virtual void paintGL() { #if QT_VERSION < 0x050000 //::printf("debug : exlib::Qt::plots_glarea::paintGL %d %d\n",width(),height()); m_viewer.set_size(width(),height()); -#else +#else //::printf("debug : exlib::Qt::plots_glarea::paintGL %d %d\n",m_width,m_height); m_viewer.set_size(m_width,m_height); -#endif +#endif m_viewer.render(); } @@ -45,11 +45,11 @@ public: protected: tools::sg::GL_plots_viewer& m_viewer; #if QT_VERSION < 0x050000 -#else +#else protected: int m_width; int m_height; -#endif +#endif }; }} diff --git a/source/analysis/g4tools/include/tools/Windows/WinTk b/source/analysis/g4tools/include/tools/Windows/WinTk index bbc1295cd2..895ca68384 100644 --- a/source/analysis/g4tools/include/tools/Windows/WinTk +++ b/source/analysis/g4tools/include/tools/Windows/WinTk @@ -37,7 +37,7 @@ class Component { typedef std::pair NamedCallbacks; #ifdef TOOLS_MEM TOOLS_SCLASS(exlib::WinTk::Component) -#endif +#endif public: Component(const std::string& aType):fType(aType),fWindow(0),fParent(0){ #ifdef TOOLS_MEM @@ -68,16 +68,16 @@ public: const std::string& type() const {return fType;} HWND nativeWindow() {return fWindow;} Component* parent() const {return fParent;} - virtual void show() { + virtual void show() { //if(!fWindow) return; //::ShowWindow(fWindow,SW_SHOWDEFAULT); } - void hide() { + void hide() { if(!fWindow) return; ::ShowWindow(fWindow,SW_HIDE); } - - virtual bool size(unsigned int& aWidth,unsigned int& aHeight) { + + virtual bool size(unsigned int& aWidth,unsigned int& aHeight) { aWidth = 0; aHeight = 0; if(!fWindow) return false; @@ -87,7 +87,7 @@ public: aHeight = rect.bottom-rect.top; return true; } - virtual bool position(int& aX,int& aY) { + virtual bool position(int& aX,int& aY) { aX = 0; aY = 0; if(!fWindow) return false; @@ -97,7 +97,7 @@ public: aY = rect.top; return true; } - Component* findFather(const std::string& aType) { + Component* findFather(const std::string& aType) { if(aType==type()) return this; Component* parent = fParent; while(parent) { @@ -107,7 +107,7 @@ public: return 0; } - bool setBackground(double aR,double aG,double aB){ + bool setBackground(double aR,double aG,double aB){ if(!fWindow) return false; int r = int(aR*255.0); @@ -116,45 +116,45 @@ public: if((g<0)||(g>255)) return false; int b = int(aB*255.0); if((b<0)||(b>255)) return false; - + /* //COLORREF cr = RGB(r,g,b); HBRUSH brush = ::CreateSolidBrush(RGB(r,g,b)); ::printf("debug : WinTk::Component::setBackground : brush %lu\n",brush); - + HBRUSH prev = (HBRUSH)::GetClassLongPtr(fWindow,GCLP_HBRBACKGROUND); ::printf("debug : WinTk::Component::setBackground : prev brush %lu\n",prev); - + {WNDCLASSEX wc; ::GetClassInfoEx(::GetModuleHandle(NULL),WC_STATIC,&wc); ::printf("debug : prev brush xxx %lu\n",wc.hbrBackground);} - - ULONG_PTR stat = + + ULONG_PTR stat = ::SetClassLongPtr(fWindow,GCLP_HBRBACKGROUND,(LONG_PTR)brush); if(prev && !stat) { ::printf("debug : WinTk::Component::setBackground : SetClassLongPtr failed.\n"); return false; } - - {ULONG_PTR stat = + + {ULONG_PTR stat = ::SetClassLongPtr(fWindow,GCLP_HBRBACKGROUND,(LONG_PTR)brush); ::printf("debug : WinTk::Component::setBackground : SetClassLongPtr failed.yyy %lu.\n",stat);} - + {WNDCLASSEX wc; ::GetClassInfoEx(::GetModuleHandle(NULL),WC_STATIC,&wc); ::printf("debug : prev brush yyy %lu\n",wc.hbrBackground);} - + if(!::InvalidateRect(fWindow,NULL,TRUE)) { ::printf("debug : WinTk::Component::setBackground : InvalidateRect failed.\n"); return false; } - + //::DeleteObject(brush); return true; */ return false; } -public: +public: void addCallback(const std::string& aName,Callback aFunction,void* aTag) { NamedCallbacks* cbks = 0; std::vector::iterator it; @@ -210,7 +210,7 @@ public: return false; } } - } + } return true; } } @@ -224,7 +224,7 @@ public: return false; } protected: - static void wm__destroy(HWND aWindow) { + static void wm__destroy(HWND aWindow) { Component* This = (Component*)::GetWindowLongPtr(aWindow,GWLP_USERDATA); if(This) { //How to be sure that we have a Component* ??? if(This->fWindow!=aWindow) { @@ -249,10 +249,10 @@ protected: static LRESULT CALLBACK containerProc(HWND aWindow,UINT aMessage,WPARAM aWParam,LPARAM aLParam) { ////////////////////////////////////////////////////////////////////////////// // Some child send notification message to their parent (instead of sending - // the message to themselves !). This procedure is used by containers + // the message to themselves !). This procedure is used by containers // to forward these messages to the child. //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!// - switch(aMessage) { + switch(aMessage) { case WM_PARENTNOTIFY:{ if(aWParam==WM_CREATE) { ::PostMessage(aWindow,WM_TK_CHILDCREATED,TK_KEY,0); @@ -283,8 +283,8 @@ protected: } }return 0; case WM_COMMAND: - case WM_VSCROLL: - case WM_HSCROLL:{ + case WM_VSCROLL: + case WM_HSCROLL:{ ::SendMessage((HWND)aLParam,aMessage,aWParam,(LPARAM)0); }return 0; } @@ -294,7 +294,7 @@ protected: #undef WM_TK_CHILDDELETED #undef TK_KEY protected: - void destroy() { + void destroy() { if(hasCallbacks("delete")) { CallbackData data; executeCallbacks("delete",data); @@ -305,7 +305,7 @@ protected: fWindow = 0; } } - void rubberDrawLine(POINT& aBegin,POINT& aEnd) { + void rubberDrawLine(POINT& aBegin,POINT& aEnd) { if(!fWindow) return; HPEN pen = ::CreatePen(PS_SOLID,5,RGB(0,0,0)); HDC hdc = ::GetWindowDC(fWindow); @@ -319,7 +319,7 @@ protected: ::ReleaseDC(fWindow,hdc); ::DeletePen(pen); } - void rubberDrawRect(POINT& aBegin,POINT& aEnd) { + void rubberDrawRect(POINT& aBegin,POINT& aEnd) { if(!fWindow) return; HPEN pen = ::CreatePen(PS_SOLID,0,RGB(0,0,0)); HDC hdc = ::GetWindowDC(fWindow); @@ -374,11 +374,11 @@ public: ::RegisterClass(&wc); done = true; } - + fWindow = ::CreateWindow(sWindowClassName, NULL, aMask, //WS_OVERLAPPEDWINDOW, - CW_USEDEFAULT,CW_USEDEFAULT, + CW_USEDEFAULT,CW_USEDEFAULT, 400,400, NULL,NULL, ::GetModuleHandle(NULL), @@ -386,7 +386,7 @@ public: if(!fWindow) return; ::SetWindowLongPtr(fWindow,GWLP_USERDATA,LONG_PTR(this)); } - virtual ~Shell() { + virtual ~Shell() { if(fAcceleratorTable) { ::DestroyAcceleratorTable(fAcceleratorTable); fAcceleratorTable = 0; @@ -396,19 +396,19 @@ public: protected: Shell(Shell& a_from):Component(a_from) {} Shell& operator=(Shell&) {return *this;} -public: - virtual void show() { +public: + virtual void show() { if(!fWindow) return; ::SetForegroundWindow(fWindow); ::ShowWindow(fWindow,SW_SHOWDEFAULT); ::UpdateWindow(fWindow); ::DrawMenuBar(fWindow); } - void setTitle(const std::string& aString) { + void setTitle(const std::string& aString) { if(!fWindow) return; ::SetWindowText(fWindow,aString.c_str()); } - void setGeometry(int aX,int aY,unsigned int aWidth,unsigned int aHeight) { + void setGeometry(int aX,int aY,unsigned int aWidth,unsigned int aHeight) { ////////////////////////////////////////////////////////////////////////////// // Given width, height is the desired client area. //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!// @@ -418,7 +418,7 @@ public: hborder += ::GetSystemMetrics(SM_CYMENU); ::MoveWindow(fWindow,aX,aY,aWidth,hborder + aHeight,TRUE); } - void setSize(unsigned int aWidth,unsigned int aHeight) { + void setSize(unsigned int aWidth,unsigned int aHeight) { ////////////////////////////////////////////////////////////////////////////// // Given width, height is the desired client area. //!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!// @@ -431,17 +431,17 @@ public: void setFocusWindow(HWND aWindow) {fFocusWindow = aWindow;} HWND focusWindow() {return fFocusWindow;} - void setSetFocusCallback(SetFocusCallback aCallback,void* aTag) { + void setSetFocusCallback(SetFocusCallback aCallback,void* aTag) { fSetFocusCallback = aCallback; fSetFocusTag = aTag; } - void callSetFocusCallback() { + void callSetFocusCallback() { if(!fSetFocusCallback) return; fSetFocusCallback(this,fSetFocusTag); } HACCEL nativeAcceleratorTable() {return fAcceleratorTable;} - bool addAccelerator(const std::string& aString,int aID) { + bool addAccelerator(const std::string& aString,int aID) { //printf("debug : accel : %s %d\n",aString.c_str(),aID); // aString should be of the form : "a" or "Ctrl+a". ACCEL acc; @@ -469,7 +469,7 @@ public: } else { return false; }} - + if(!fAcceleratorTable) { fAcceleratorTable = ::CreateAcceleratorTable(&acc,1); } else { @@ -532,16 +532,16 @@ private: S_VK(F22) S_VK(F23) S_VK(F24) - + //FIXME : handle other keys ? NUMPAD[0-9] - + #undef S_VK return false; } static LRESULT CALLBACK proc(HWND aWindow,UINT aMessage,WPARAM aWParam,LPARAM aLParam) { - switch (aMessage) { + switch (aMessage) { // Same logic as containerProc : case WM_NOTIFY:{ //Coming from a child (combobox, scrollbar, toolbar). NMHDR* nmhdr = (NMHDR*)aLParam; @@ -589,7 +589,7 @@ private: } return 0; case WM_COMMAND:{ //Coming from a menu item, a toolbar ! if(aLParam) { - // From a toolbar ; send it back to it : + // From a toolbar ; send it back to it : ::SendMessage((HWND)aLParam,aMessage,aWParam,0); } else { //if(HIWORD(aWParam)==1) { //From an accelerator. @@ -650,7 +650,7 @@ public: ::RegisterClass(&wc); done = true; } - + // The WS_BORDER is needed. Else probleme of size at startup. RECT rect; ::GetClientRect(parent,&rect); @@ -665,14 +665,14 @@ public: NULL); if(!fWindow) return; ::SetWindowLongPtr(fWindow,GWLP_USERDATA,LONG_PTR(this)); - + // initialize OpenGL rendering : fHDC = ::GetDC(fWindow); if( fHDC && SetWindowPixelFormat(fHDC) ) { fContext = ::wglCreateContext(fHDC); } } - virtual ~OpenGLArea() { + virtual ~OpenGLArea() { if(wglGetCurrentContext()!=NULL) wglMakeCurrent(NULL,NULL); if(fContext) { wglDeleteContext(fContext); @@ -687,7 +687,7 @@ public: bool write_gl2ps(const std::string&,const std::string&); private: static LRESULT CALLBACK proc(HWND aWindow,UINT aMessage,WPARAM aWParam,LPARAM aLParam) { - switch (aMessage) { + switch (aMessage) { case WM_PAINT:{ PAINTSTRUCT ps; HDC hDC = BeginPaint(aWindow,&ps); @@ -698,12 +698,12 @@ private: if(hdc && context) { ::wglMakeCurrent(hdc,context); // User OpenGL paint code : - + CallbackData data; data.wparam = aWParam; data.lparam = aLParam; This->executeCallbacks("paint",data); - + ::SwapBuffers(hdc); } } @@ -756,11 +756,11 @@ private: PIXELFORMATDESCRIPTOR pfd; pfd.nSize = sizeof(PIXELFORMATDESCRIPTOR); pfd.nVersion = 1; - pfd.dwFlags = - PFD_DRAW_TO_WINDOW | - PFD_SUPPORT_OPENGL | - PFD_DOUBLEBUFFER | - PFD_STEREO_DONTCARE; + pfd.dwFlags = + PFD_DRAW_TO_WINDOW | + PFD_SUPPORT_OPENGL | + PFD_DOUBLEBUFFER | + PFD_STEREO_DONTCARE; pfd.iPixelType = PFD_TYPE_RGBA; pfd.cColorBits = 32; pfd.cRedBits = 8; @@ -771,7 +771,7 @@ private: pfd.cBlueShift = 0; pfd.cAlphaBits = 0; pfd.cAlphaShift = 0; - pfd.cAccumBits = 64; + pfd.cAccumBits = 64; pfd.cAccumRedBits = 16; pfd.cAccumGreenBits = 16; pfd.cAccumBlueBits = 16; @@ -784,19 +784,19 @@ private: pfd.dwLayerMask = 0; pfd.dwVisibleMask = 0; pfd.dwDamageMask = 0; - + int pixelIndex = ::ChoosePixelFormat(aHdc,&pfd); if (pixelIndex==0) { // Let's choose a default index. - pixelIndex = 1; - if (::DescribePixelFormat(aHdc, - pixelIndex, - sizeof(PIXELFORMATDESCRIPTOR), + pixelIndex = 1; + if (::DescribePixelFormat(aHdc, + pixelIndex, + sizeof(PIXELFORMATDESCRIPTOR), &pfd)==0) { return false; } } - + if (::SetPixelFormat(aHdc,pixelIndex,&pfd)==FALSE) return false; return true; } diff --git a/source/analysis/g4tools/include/tools/Windows/tools b/source/analysis/g4tools/include/tools/Windows/tools index 69098a19e8..db9e705847 100644 --- a/source/analysis/g4tools/include/tools/Windows/tools +++ b/source/analysis/g4tools/include/tools/Windows/tools @@ -16,7 +16,7 @@ namespace WinTk { ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// -inline bool GetClassName(HWND aWindow,std::string& a_value) { +inline bool GetClassName(HWND aWindow,std::string& a_value) { if(!aWindow) {a_value.clear();return false;} char className[256]; ::GetClassName(aWindow,className,128); @@ -38,7 +38,7 @@ inline HWND GetChildByClassName(HWND aWindow,const std::string& aClassName) { return NULL; } -inline void SetGeometry(HWND aWindow,int aX,int aY,unsigned int aWidth,unsigned int aHeight) { +inline void SetGeometry(HWND aWindow,int aX,int aY,unsigned int aWidth,unsigned int aHeight) { if(!aWindow) return; std::string className; GetClassName(aWindow,className); @@ -51,7 +51,7 @@ inline void SetGeometry(HWND aWindow,int aX,int aY,unsigned int aWidth,unsigned } } -inline void GetSize(HWND aWindow,int& aWidth,int& aHeight) { +inline void GetSize(HWND aWindow,int& aWidth,int& aHeight) { RECT rect; ::GetWindowRect(aWindow,&rect); aWidth = rect.right-rect.left; @@ -232,7 +232,7 @@ namespace WinTk { ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// ////////////////////////////////////////////////////////////////////////////// -inline bool TreeGetItemLabel(HWND aWindow,HTREEITEM aItem,std::string& a_value) { +inline bool TreeGetItemLabel(HWND aWindow,HTREEITEM aItem,std::string& a_value) { TCHAR text[256]; TV_ITEM item; item.hItem = aItem; @@ -244,7 +244,7 @@ inline bool TreeGetItemLabel(HWND aWindow,HTREEITEM aItem,std::string& a_value) return true; } -inline bool TreeIsItemBranch(HWND aWindow,HTREEITEM aItem) { +inline bool TreeIsItemBranch(HWND aWindow,HTREEITEM aItem) { TV_ITEM item; item.hItem = aItem; item.mask = TVIF_CHILDREN; @@ -252,7 +252,7 @@ inline bool TreeIsItemBranch(HWND aWindow,HTREEITEM aItem) { return item.cChildren?true:false; } -inline bool TreeIsItemExpanded(HWND aWindow,HTREEITEM aItem) { +inline bool TreeIsItemExpanded(HWND aWindow,HTREEITEM aItem) { TV_ITEM item; item.hItem = aItem; item.mask = TVIS_EXPANDED; @@ -295,7 +295,7 @@ inline void TreeGetItemXML(HWND aWindow,HTREEITEM aItem,std::string& a_value) { if (TreeView_GetChild(aWindow,aItem)) { TreeGetItemXML(aWindow,TreeView_GetChild(aWindow,aItem),ss); a_value += ss; - } + } a_value += spaceRoot + ""; aItem = TreeView_GetNextSibling(aWindow,aItem); } @@ -459,7 +459,7 @@ inline HBITMAP ConvertXpmToDIB(HDC aDC,const std::vector& aXPM,int& bool found = true; for (int l = 0; l < numchars; l++) { - if (charlookuptable[(k * numchars) + l] + if (charlookuptable[(k * numchars) + l] != line[(j * numchars) + l]) { found = false; break; @@ -478,7 +478,7 @@ inline HBITMAP ConvertXpmToDIB(HDC aDC,const std::vector& aXPM,int& g = glookuptable[k]; b = blookuptable[k]; } - + if(pixelsize==4) { ((unsigned char*)dest)[y + x + 0] = b; ((unsigned char*)dest)[y + x + 1] = g; @@ -489,22 +489,22 @@ inline HBITMAP ConvertXpmToDIB(HDC aDC,const std::vector& aXPM,int& ((unsigned char*)dest)[y + x + 1] = g; ((unsigned char*)dest)[y + x + 2] = r; } - + // next pixel break; - + } - + } - + } - + } if(!done) { //printf("debug : xpm : can'tread pixels.\n"); ::DeleteObject(hbmp); hbmp = 0; - } + } } // cleanup diff --git a/source/analysis/g4tools/include/tools/X11/base_session b/source/analysis/g4tools/include/tools/X11/base_session index aeeede7806..4babec32d9 100644 --- a/source/analysis/g4tools/include/tools/X11/base_session +++ b/source/analysis/g4tools/include/tools/X11/base_session @@ -53,7 +53,7 @@ public: ,m_SESSION_EXIT_STEER_atom(None) { copy_dispatchers(a_from.m_dispatchers); - if(!initialize()) {} //throw + if(!initialize()) {} //throw } base_session& operator=(const base_session& a_from){ if(&a_from==this) return *this; @@ -61,7 +61,7 @@ public: clear_dispatchers(); finalize(); copy_dispatchers(a_from.m_dispatchers); - if(!initialize()) {} //throw + if(!initialize()) {} //throw return *this; } protected: @@ -101,7 +101,7 @@ protected: return true; } - + void finalize() { if(!m_display) return; ::XCloseDisplay(m_display); @@ -116,11 +116,11 @@ public: bool is_valid() const {return m_display?true:false;} Display* display() const {return m_display;} - + bool steer() { if(!m_display) return false; - while(true) { + while(true) { XEvent xevent; ::XNextEvent(m_display,&xevent); if(xevent.type==ClientMessage) { @@ -128,7 +128,7 @@ public: } dispatch(xevent); } - + return true; } @@ -136,7 +136,7 @@ public: if(!m_display) return false; //::glXWaitX(); ::XSync(m_display,False); - while(true) { + while(true) { XEvent xevent; if(::XPending(m_display)) { ::XNextEvent(m_display,&xevent); @@ -165,7 +165,7 @@ public: if(xevent.xclient.data.l[0]==(long)m_SESSION_EXIT_STEER_atom) { a_to_exit = true; return true; - } + } } dispatch(xevent); a_to_exit = false; @@ -190,7 +190,7 @@ public: | ButtonPressMask | ButtonReleaseMask | ButtonMotionMask | PointerMotionMask | KeyPressMask; - + swa.background_pixel = ::XWhitePixel(m_display,m_monitor); Window window = ::XCreateWindow(m_display, @@ -332,40 +332,40 @@ public: void add_dispatcher(dispatcher* a_dispatcher) { m_dispatchers.push_back(a_dispatcher); //take ownership. } - + void invalidate_dispatchers_with_window(Window a_win){ - tools_vforit(dispatcher*,m_dispatchers,it) { + tools_vforit(dispatcher*,m_dispatchers,it) { if((*it)->window()==a_win) (*it)->invalidate(); - } + } } void remove_dispatchers_with_window(Window a_win){ - tools_vforit_npp(dispatcher*,m_dispatchers,it) { + tools_vforit_npp(dispatcher*,m_dispatchers,it) { if((*it)->window()==a_win) { dispatcher* obj = *it; - it = m_dispatchers.erase(it); + it = m_dispatchers.erase(it); delete obj; } else { it++; } - } + } } bool dispatch(XEvent& a_event) { - {tools_vforit_npp(dispatcher*,m_dispatchers,it) { + {tools_vforit_npp(dispatcher*,m_dispatchers,it) { if(!(*it)->is_valid()) { dispatcher* obj = *it; - it = m_dispatchers.erase(it); + it = m_dispatchers.erase(it); delete obj; } else { it++; } }} - tools_vforit(dispatcher*,m_dispatchers,it) { + tools_vforit(dispatcher*,m_dispatchers,it) { if((*it)->is_valid()) { if((*it)->dispatch(a_event)) return true; - } - } + } + } return false; } protected: @@ -392,18 +392,18 @@ protected: Window m_window; }; static Bool wait_for(Display*,XEvent* a_event,char* a_arg){ - wait_what* arg = (wait_what*)a_arg; - return (a_event->type == arg->m_event_type) && + wait_what* arg = (wait_what*)a_arg; + return (a_event->type == arg->m_event_type) && (a_event->xmap.window == arg->m_window); } */ void clear_dispatchers() { - tools_vforit_npp(dispatcher*,m_dispatchers,it) { + tools_vforit_npp(dispatcher*,m_dispatchers,it) { dispatcher* obj = *it; - it = m_dispatchers.erase(it); + it = m_dispatchers.erase(it); delete obj; - } + } m_dispatchers.clear(); } @@ -411,7 +411,7 @@ protected: clear_dispatchers(); tools_vforcit(dispatcher*,a_from,it) { m_dispatchers.push_back((*it)->copy()); - } + } } protected: diff --git a/source/analysis/g4tools/include/tools/X11/session b/source/analysis/g4tools/include/tools/X11/session index 5ed3fbc61f..53fd86cabb 100644 --- a/source/analysis/g4tools/include/tools/X11/session +++ b/source/analysis/g4tools/include/tools/X11/session @@ -13,7 +13,7 @@ namespace X11 { class session : public base_session { typedef base_session parent; -public: +public: //virtual bool make_current(Window a_window) const { // if(!m_display) return false; // if(::glXMakeCurrent(m_display,a_window,m_ctx)==False) { @@ -47,13 +47,13 @@ public: ,m_ctx(0) ,m_colormap(0) { - if(!initialize_gl()) {} //throw + if(!initialize_gl()) {} //throw } session& operator=(const session& a_from){ if(&a_from==this) return *this; parent::operator=(a_from); finalize_gl(); - if(!initialize_gl()) {} //throw + if(!initialize_gl()) {} //throw return *this; } protected: @@ -64,9 +64,9 @@ protected: m_ctx = 0; return false; } - + {int glxMajor, glxMinor; - ::glXQueryVersion(m_display,&glxMajor,&glxMinor); + ::glXQueryVersion(m_display,&glxMajor,&glxMinor); if(glxMajor<=0) { m_out << "tools::X11::session::initialize : bad GLX-Version " << glxMajor << "." << glxMinor << std::endl; ::XCloseDisplay(m_display); @@ -95,7 +95,7 @@ protected: //m_out << "tools::X11::session::initialize :" // << " DefaultScreen(m_display): " << DefaultScreen(m_display) << "." // << std::endl; - + static const int atbs[] = { GLX_RGBA, GLX_RED_SIZE, 1, @@ -154,7 +154,7 @@ protected: return true; } - + void finalize_gl() { if(!m_display) return; if(m_ctx) { @@ -181,11 +181,11 @@ public: | ButtonPressMask | ButtonReleaseMask | ButtonMotionMask | PointerMotionMask | KeyPressMask; - + swa.colormap = m_colormap; swa.border_pixel = 0L; - Window window = ::XCreateWindow(m_display, + Window window = ::XCreateWindow(m_display, ::XRootWindow(m_display,m_monitor), a_x,a_y,a_width,a_height, 0, @@ -193,7 +193,7 @@ public: InputOutput, m_vinfo->visual, CWBorderPixel|CWColormap|CWEventMask,&swa); - + if(window==0L) { m_out << "tools::X11::session::create_window :" << " can't create a X11 window." diff --git a/source/analysis/g4tools/include/tools/X11/simple_dispatcher b/source/analysis/g4tools/include/tools/X11/simple_dispatcher index 40a385a2c8..406c316aea 100644 --- a/source/analysis/g4tools/include/tools/X11/simple_dispatcher +++ b/source/analysis/g4tools/include/tools/X11/simple_dispatcher @@ -36,7 +36,7 @@ public: } virtual Window window() const {return m_win;} public: - simple_dispatcher(base_session& a_session,Window a_win) + simple_dispatcher(base_session& a_session,Window a_win) :parent() ,m_session(a_session) ,m_win(a_win) diff --git a/source/analysis/g4tools/include/tools/Xt/OpenGLArea.c b/source/analysis/g4tools/include/tools/Xt/OpenGLArea.c index 84b5214c9c..3ec799e288 100644 --- a/source/analysis/g4tools/include/tools/Xt/OpenGLArea.c +++ b/source/analysis/g4tools/include/tools/Xt/OpenGLArea.c @@ -77,7 +77,7 @@ OpenGLAreaClassRec openGLAreaClassRec = { XtInheritAcceptFocus, /* assign input focus to widget */ XtVersion, /* version of intrinsics used */ NULL, /* list of callback offsets */ - XtInheritTranslations, /* translations */ + XtInheritTranslations, /* translations */ XtInheritQueryGeometry, /* return preferred geometry */ XtInheritDisplayAccelerator, /* display your accelerator */ NULL /* pointer to extension record */ @@ -92,9 +92,9 @@ OpenGLAreaClassRec openGLAreaClassRec = { }, /* OpenGLArea */ { - NULL + NULL } - + }; WidgetClass openGLAreaWidgetClass = (WidgetClass) &openGLAreaClassRec; @@ -112,7 +112,7 @@ static void InitializeWidget(Widget a_request,Widget This,ArgList a_args,Cardina athis.visual = CopyFromParent; athis.installColormap = False; athis.glContext = NULL; - + {Display* display; Screen* screen; int iscreen; @@ -120,7 +120,7 @@ static void InitializeWidget(Widget a_request,Widget This,ArgList a_args,Cardina display = XtDisplay(This); screen = XtScreen(This); iscreen = XScreenNumberOfScreen(screen); - + {int error,event; if(glXQueryExtension(display,&error,&event)==0) { CWarn ("X server does not have OpenGL extensions.\n"); @@ -171,8 +171,8 @@ static void InitializeWidget(Widget a_request,Widget This,ArgList a_args,Cardina None }; vinfo = glXChooseVisual (display,iscreen,atbs); - } - } + } + } if(vinfo==NULL) { CWarn ("Can't choose a visual.\n"); @@ -185,7 +185,7 @@ static void InitializeWidget(Widget a_request,Widget This,ArgList a_args,Cardina athis.installColormap = False; } else { This->core.colormap = - XCreateColormap (display,XRootWindow(display,iscreen),vinfo->visual, AllocNone); + XCreateColormap (display,XRootWindow(display,iscreen),vinfo->visual, AllocNone); athis.installColormap = True; } if(This->core.colormap==0L) { @@ -250,9 +250,9 @@ static void DestroyWidget(Widget This) { #define IFMOD(a_field) if(athis.a_field != acur.a_field) static Boolean SetValues(Widget a_current,Widget a_request,Widget This,ArgList a_args,Cardinal* a_argn) { IFMOD(doubleBufferOn) { - /* Can't change buffering here if X window is created. + /* Can't change buffering here if X window is created. With OpenGL, buffering fix parameter of the X window. - Buffering must be choosen before the execution of the + Buffering must be choosen before the execution of the Realize method that create the window. */ if(XtIsRealized(This) && (athis.installColormap==True)) { CWarn("Can't change buffering after \"realization\" of the widget.\n"); @@ -279,7 +279,7 @@ static void ChangeWidgetSize(Widget This) { printf("debug : OpenGLArea : ChangeWidgetSize : end\n"); #endif } - + static void DrawWidget(Widget This,XEvent* a_event,Region a_region) { #ifdef DEBUG printf("debug : OpenGLArea : DrawWidget : %s\n",XtName(This)); @@ -354,28 +354,28 @@ int OpenGLAreaWrite_gl2ps(Widget This,const char* aFileName,const char* opts) { inlib_c_gl2ps_set_gl_funcs(&s_OpenGL_funcs); - options = TOOLS_GL2PS_OCCLUSION_CULL - | TOOLS_GL2PS_BEST_ROOT + options = TOOLS_GL2PS_OCCLUSION_CULL + | TOOLS_GL2PS_BEST_ROOT | TOOLS_GL2PS_SILENT | TOOLS_GL2PS_DRAW_BACKGROUND; sort = TOOLS_GL2PS_BSP_SORT; //sort = TOOLS_GL2PS_SIMPLE_SORT; - + vp[0] = 0; vp[1] = 0; vp[2] = This->core.width; vp[3] = This->core.height; - inlib_c_gl2psBeginPage("title","exlib_Xt_OpenGLArea", - vp,TOOLS_GL2PS_EPS,sort,options, - TOOLS_GL_RGBA,0, NULL,0,0,0,bufsize, + inlib_c_gl2psBeginPage("title","exlib_Xt_OpenGLArea", + vp,TOOLS_GL2PS_EPS,sort,options, + TOOLS_GL_RGBA,0, NULL,0,0,0,bufsize, file,aFileName); - + {XoAnyCallbackStruct value; value.reason = XoCR_PAINT; value.event = 0; XtCallCallbacks(This,XoNpaintCallback,(XtPointer)&value);} - + inlib_c_gl2psEndPage(); inlib_c_gl2ps_reset_gl_funcs(); @@ -417,7 +417,7 @@ static void EventHandler(Widget This,XtPointer a_tag,XEvent* a_event ,Boolean* a /*------------------------------------------------------------------------*/ /*------------------------------------------------------------------------*/ static void XWidgetInstallColormap(Widget This) { -/* +/* From Mesa/widgets/GLwDrawingArea.c/post_colormap routine. Could use also XtSetWMColormapWindows. */ @@ -458,7 +458,7 @@ static void XWidgetInstallColormap(Widget This) { if(ws!=NULL) XFree(ws); ws = (Window*)malloc ( 2 * sizeof(Window)); } else { - ws = (Window*)realloc (ws,(wn + 2) * sizeof(Window)); + ws = (Window*)realloc (ws,(wn + 2) * sizeof(Window)); } if(ws==NULL) return; if(found==-1) { diff --git a/source/analysis/g4tools/include/tools/Xt/OpenGLAreaP.h b/source/analysis/g4tools/include/tools/Xt/OpenGLAreaP.h index a33552a17b..7ce46d628b 100644 --- a/source/analysis/g4tools/include/tools/Xt/OpenGLAreaP.h +++ b/source/analysis/g4tools/include/tools/Xt/OpenGLAreaP.h @@ -1,5 +1,5 @@ #ifndef tools_Xt_OpenGLAreaP_h -#define tools_Xt_OpenGLAreaP_h +#define tools_Xt_OpenGLAreaP_h #include "OpenGLArea.h" diff --git a/source/analysis/g4tools/include/tools/Xt/tools b/source/analysis/g4tools/include/tools/Xt/tools index ef5f2588a1..6e4237c438 100644 --- a/source/analysis/g4tools/include/tools/Xt/tools +++ b/source/analysis/g4tools/include/tools/Xt/tools @@ -27,7 +27,7 @@ inline Pixel XWidgetGetPixelResource(Widget aWidget,const std::string& aName){ inline Pixel XWidgetConvertStringToPixel(Widget aWidget,const std::string& aString){ if(aString.empty()) return 0L; - if( (aString=="None") || (aString=="none") ) + if( (aString=="None") || (aString=="none") ) return XWidgetGetPixelResource(aWidget,std::string(XtNbackground)); XrmValue from,to; from.size = aString.size()+1; @@ -74,7 +74,7 @@ inline bool XWidgetSendMessage(Widget aWidget,long a_1,long a_2) { event.data.l[2] = 0L; event.data.l[3] = 0L; event.data.l[4] = 0L; - if(XSendEvent(event.display,event.window,False,0L,(XEvent*)&event)==0) + if(XSendEvent(event.display,event.window,False,0L,(XEvent*)&event)==0) return false; XFlush(event.display); return true; @@ -86,7 +86,7 @@ inline void XClassGetName(WidgetClass aClass,std::string& a_value){ a_value = std::string((char*)aClass->core_class.class_name); } inline Boolean XClassIsSubclass(WidgetClass aClass,WidgetClass aParent){ - for (WidgetClass wc = aClass; wc != NULL; wc = wc->core_class.superclass) + for (WidgetClass wc = aClass; wc != NULL; wc = wc->core_class.superclass) if (wc == aParent) return True; return False; } @@ -128,7 +128,7 @@ inline void XWidgetGetChildren(Widget aWidget,std::vector& aList){ aList.clear(); if(!XtIsComposite(aWidget)) return; CompositePart* cwp = &(((CompositeWidget)aWidget)->composite); - for (unsigned int count=0;countnum_children;count++) + for (unsigned int count=0;countnum_children;count++) aList.push_back(cwp->children[count]); } inline void XWidgetGetPopupChildren(Widget aWidget,std::vector& aList){ @@ -142,7 +142,7 @@ inline Widget XWidgetFindChild(Widget aWidget,const std::string& aName){ if(!XtIsComposite(aWidget)) return 0; CompositePart* cwp = &(((CompositeWidget)aWidget)->composite); for (unsigned int count=0;countnum_children;count++) { - if(aName==std::string(XtName(cwp->children[count]))) + if(aName==std::string(XtName(cwp->children[count]))) return cwp->children[count]; } return 0; @@ -151,7 +151,7 @@ inline Widget XWidgetFindChild(Widget aWidget,const std::string& aName){ #include inline void XWidgetPrintChildren(Widget aWidget,std::ostream& a_out){ - int number = XWidgetGetChildrenNumber(aWidget); + int number = XWidgetGetChildrenNumber(aWidget); a_out << "XWidgetPrintChildren :" << " " << (unsigned long)aWidget << " number " << number diff --git a/source/analysis/g4tools/include/tools/aida_ntuple b/source/analysis/g4tools/include/tools/aida_ntuple index 931db25e17..92e09d59e5 100644 --- a/source/analysis/g4tools/include/tools/aida_ntuple +++ b/source/analysis/g4tools/include/tools/aida_ntuple @@ -191,7 +191,7 @@ public: // reading : void start() {m_index = -1;set_columns_index(0);} - bool next() { + bool next() { // a tuple loop is of the form : // tuple.start(); // while(tuple.next()) { @@ -539,7 +539,7 @@ public: << " can't create aida_col " << sout(a_name) << "." << std::endl; return 0; - } + } m_cols.push_back(col); return col; } @@ -614,7 +614,7 @@ public: }} return true; } - + template bool column_max(unsigned int a_col,T& a_value) { a_value = T(); @@ -637,7 +637,7 @@ public: }} return true; } - + }; //////////////////////////////////////////////////////////// @@ -755,13 +755,13 @@ inline bool create_cols_from_vals(ntuple& a_ntu, } else { if(a_verbose){ - std::string stype; + std::string stype; (*it).s_type(stype); - std::string sval; + std::string sval; (*it).tos(sval); a_ntu.out() << "tools::aida::create_cols_from_vals :" - << " " << stype << " : " - << (*it).label() << " : " + << " " << stype << " : " + << (*it).label() << " : " << sval << std::endl; } @@ -802,13 +802,13 @@ inline bool create_cols_from_vals(ntuple& a_ntu, } if(!col) { - std::string stype; + std::string stype; (*it).s_type(stype); - std::string sval; + std::string sval; (*it).tos(sval); a_ntu.out() << "tools::aida::create_cols_from_vals :" - << " failed for " << stype << " : " - << (*it).label() << " : " + << " failed for " << stype << " : " + << (*it).label() << " : " << sval << std::endl; return false; @@ -828,14 +828,14 @@ inline bool create_col(ntuple& a_ntu, if(a_type==s_aida_type((char)0)) { char v = 0; if(a_s.size()&&!to(a_s,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't convert def " << sout(a_s) << " to a " << a_type << std::endl; return false; } if(!a_ntu.create_col(a_name,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't create column of type " << sout(a_type) << std::endl; return false; @@ -844,14 +844,14 @@ inline bool create_col(ntuple& a_ntu, } else*/ if(a_type==s_aida_type((short)0)) { short v = 0; if(a_s.size()&&!to(a_s,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't convert def " << sout(a_s) << " to a " << a_type << std::endl; return false; } if(!a_ntu.create_col(a_name,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't create column of type " << sout(a_type) << std::endl; return false; @@ -860,14 +860,14 @@ inline bool create_col(ntuple& a_ntu, } else if(a_type==s_aida_type((int)0)) { int v = 0; if(a_s.size()&&!to(a_s,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't convert def " << sout(a_s) << " to a " << a_type << std::endl; return false; } if(!a_ntu.create_col(a_name,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't create column of type " << sout(a_type) << std::endl; return false; @@ -876,14 +876,14 @@ inline bool create_col(ntuple& a_ntu, } else if(a_type==s_aida_type((int64)0)) { int64 v = 0; if(a_s.size()&&!to(a_s,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't convert def " << sout(a_s) << " to a " << a_type << std::endl; return false; } if(!a_ntu.create_col(a_name,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't create column of type " << sout(a_type) << std::endl; return false; @@ -892,14 +892,14 @@ inline bool create_col(ntuple& a_ntu, } else if(a_type==s_aida_type((float)0)) { float v = 0; if(a_s.size()&&!to(a_s,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't convert def " << sout(a_s) << " to a " << a_type << std::endl; return false; } if(!a_ntu.create_col(a_name,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't create column of type " << sout(a_type) << std::endl; return false; @@ -909,14 +909,14 @@ inline bool create_col(ntuple& a_ntu, } else if(a_type==s_aida_type((double)0)) { double v = 0; if(a_s.size()&&!to(a_s,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't convert def " << sout(a_s) << " to a " << a_type << std::endl; return false; } if(!a_ntu.create_col(a_name,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't create column of type " << sout(a_type) << std::endl; return false; @@ -925,21 +925,21 @@ inline bool create_col(ntuple& a_ntu, /* } else if(a_type==s_aida_type((unsigned char)0)) { //byte unsigned int v = 0; if(a_s.size()&&!to(a_s,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't convert def " << sout(a_s) << " to a " << a_type << std::endl; return false; - } + } if(v>=256) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't convert def " << sout(a_s) << " to byte." << std::endl; return false; } if(!a_ntu.create_col(a_name,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't create column of type " << sout(a_type) << std::endl; return false; @@ -948,14 +948,14 @@ inline bool create_col(ntuple& a_ntu, } else if(a_type==s_aida_type((unsigned short)0)) { unsigned short v = 0; if(a_s.size()&&!to(a_s,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't convert def " << sout(a_s) << " to a " << a_type << std::endl; return false; } if(!a_ntu.create_col(a_name,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't create column of type " << sout(a_type) << std::endl; return false; @@ -964,14 +964,14 @@ inline bool create_col(ntuple& a_ntu, } else if(a_type==s_aida_type((unsigned int)0)) { unsigned int v = 0; if(a_s.size()&&!to(a_s,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't convert def " << sout(a_s) << " to a " << a_type << std::endl; return false; } if(!a_ntu.create_col(a_name,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't create column of type " << sout(a_type) << std::endl; return false; @@ -980,14 +980,14 @@ inline bool create_col(ntuple& a_ntu, } else if(a_type==s_aida_type((uint64)0)) { uint64 v = 0; if(a_s.size()&&!to(a_s,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't convert def " << sout(a_s) << " to a " << a_type << std::endl; return false; } if(!a_ntu.create_col(a_name,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't create column of type " << sout(a_type) << std::endl; return false; @@ -998,14 +998,14 @@ inline bool create_col(ntuple& a_ntu, } else if(a_type==s_aida_type((bool)true)) { bool v = false; if(a_s.size()&&!to(a_s,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't convert def " << sout(a_s) << " to a " << a_type << std::endl; return false; } if(!a_ntu.create_col(a_name,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't create column of type " << sout(a_type) << std::endl; return false; @@ -1013,7 +1013,7 @@ inline bool create_col(ntuple& a_ntu, } else if(a_type==s_aida_type(std::string())) { if(!a_ntu.create_col(a_name,a_s)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't create column of type " << sout(a_type) << std::endl; return false; @@ -1022,14 +1022,14 @@ inline bool create_col(ntuple& a_ntu, } else if(a_type==s_aida_type((int64)0)) { int64 v = 0; if(a_s.size()&&!to(a_s,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't convert def " << sout(a_s) << " to a " << a_type << std::endl; return false; } if(!a_ntu.create_col(a_name,v)) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " can't create column of type " << sout(a_type) << std::endl; return false; @@ -1039,13 +1039,13 @@ inline bool create_col(ntuple& a_ntu, // we expect a booking string on a_s. if(!a_is_ntu) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " mismatch a_is_ntu/a_type." << std::endl; return false; } if(a_s.empty()) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " empty booking string." << std::endl; return false; @@ -1053,7 +1053,7 @@ inline bool create_col(ntuple& a_ntu, columns::finder f(a_ntu.out(),a_s); if(!f.find_variables()) { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " find_variables() failed for " << sout(a_s) << "." << std::endl; return false; @@ -1078,7 +1078,7 @@ inline bool create_col(ntuple& a_ntu, //FIXME : double[] } else { - a_ntu.out() << "tools::aida::create_col :" + a_ntu.out() << "tools::aida::create_col :" << " col type " << sout(a_type) << " not yet handled." << std::endl; @@ -1190,12 +1190,12 @@ protected: static bool find_is(const base_ntu& a_ntu,const base_col* a_col, std::vector& a_is, bool& a_found){ - // search the indices to reach the sub leaf a_col from the main a_ntu. + // search the indices to reach the sub leaf a_col from the main a_ntu. // Note : it is assumed that a_is is empty and a_found = false before // calling with function. - + const std::vector& cols = a_ntu.columns(); - + // look if a_col is a leaf col of a_ntu : {unsigned int index = 0; tools_vforcit(base_col*,cols,it) { @@ -1206,7 +1206,7 @@ protected: } index++; }} - + // go down sub ntu : {unsigned int index = 0; tools_vforcit(base_col*,cols,it) { @@ -1222,7 +1222,7 @@ protected: index++; }} return true; - } + } protected: bool _looper(base_ntu& a_sub, const std::vector& a_is, @@ -1230,7 +1230,7 @@ protected: bool& a_stop) { if(a_depth>=a_is.size()) return false; - unsigned int coli = a_is[a_depth]; + unsigned int coli = a_is[a_depth]; const std::vector& cols = a_sub.columns(); if(coli>=cols.size()) return false; @@ -1322,7 +1322,7 @@ public: m_S2 = T(); m_counter = 0; return *this; - } + } public: bool process() { m_counter = 0; @@ -1375,13 +1375,13 @@ inline base_col* find_leaf_column(const base_ntu& a_ntu,const std::string& a_nam base_ntu* sub = col->get_to_fill(); //it holds the "sub" cols schema. if(!sub) return 0; base_col* fcol = find_leaf_column(*sub,a_name); - if(fcol) return fcol; + if(fcol) return fcol; } else { if((*it)->name()==a_name) return *it; } } return 0; -} +} template inline bool to_vector(base_ntu& a_ntu,std::vector& a_vec,unsigned int a_col = 0) { diff --git a/source/analysis/g4tools/include/tools/args b/source/analysis/g4tools/include/tools/args index 1d8f285191..24b31aff0c 100644 --- a/source/analysis/g4tools/include/tools/args +++ b/source/analysis/g4tools/include/tools/args @@ -42,13 +42,13 @@ public: std::string s(a_argv[index]); std::string::size_type pos = s.find('='); if(pos==std::string::npos) { - m_args.push_back(arg(s,"")); + m_args.push_back(arg(s,"")); } else { std::string key = s.substr(0,pos); pos++; std::string value = s.substr(pos,s.size()-pos); - m_args.push_back(arg(key,value)); - } + m_args.push_back(arg(key,value)); + } } } args(const std::vector& a_args,bool a_strip = false){ @@ -67,7 +67,7 @@ public: mem::increment(s_class().c_str()); #endif std::vector _args; - words(a_args,a_sep,false,_args); + words(a_args,a_sep,false,_args); add(_args,a_strip); } virtual ~args(){ @@ -123,7 +123,7 @@ public: if((*it).first==a_key) a_vals.push_back((*it).second); } } - + bool find(const std::string& a_string,bool& a_value,const bool& a_def = false) const { std::string s; if(!find(a_string,s)) {a_value = a_def;return false;} @@ -135,7 +135,7 @@ public: if(!find(a_string,_s)) {a_value = a_def;return false;} return to(_s,a_value,a_def); } - + #ifdef TOOLS_DEPRECATED std::vector tovector() const { // Return a vector of string @@ -215,7 +215,7 @@ public: strip(left,both,' '); strip(right,both,' '); } - m_args.push_back(arg(left,right)); + m_args.push_back(arg(left,right)); } } } @@ -258,7 +258,8 @@ public: return int(nbeg) - int(m_args.size()); } - void remove_first(){m_args.erase(m_args.begin());} + void remove_first(){if(m_args.size()) m_args.erase(m_args.begin());} + void remove_last(){if(m_args.size()) m_args.erase(m_args.end()-1);} bool last(std::string& a_key,std::string& a_value) const { a_key.clear(); @@ -268,7 +269,7 @@ public: a_value = m_args.back().second; return true; } - + bool prog_name(std::string& a_value) const { if(m_args.empty()) {a_value.clear();return false;} if(m_args[0].second.size()) {a_value.clear();return false;} @@ -280,8 +281,8 @@ public: std::string slast; std::string s; if((m_args.size()>1) //first arg is the program name ! - && last(slast,s) - && (slast.find('-')!=0) + && last(slast,s) + && (slast.find('-')!=0) && (s.empty()) ) { a_file = slast; //Last argument is not an option. return true; @@ -295,8 +296,8 @@ public: std::string slast; std::string s; if((m_args.size()>1) //first arg is the program name ! - && last(slast,s) - && (slast.find('-')!=0) + && last(slast,s) + && (slast.find('-')!=0) && (s.empty()) ) { a_file = slast; //Last argument is not an option. if(a_remove) m_args.erase(m_args.end()-1); @@ -306,13 +307,13 @@ public: return false; } } - + void not_hyphens(std::vector& a_not_hyphens,bool a_skip_first = false) const { a_not_hyphens.clear(); // Get the serie of trailing args not beginning with '-' - // and without a value (not of the form [-]xxx=yyy). + // and without a value (not of the form [-]xxx=yyy). // Note that an argument like that in between arguments - // is NOT taken into account. + // is NOT taken into account. if(m_args.empty()) return; std::vector::const_iterator it = m_args.begin(); if(a_skip_first) it++; @@ -328,7 +329,7 @@ public: void files(std::vector& a_files,bool a_skip_first = true) const { //true and not false as in the upper. return not_hyphens(a_files,a_skip_first); } - + bool first_not_hyphen(std::string& a_first,bool a_skip_first = false) const { std::vector _ss; not_hyphens(_ss,a_skip_first); @@ -343,7 +344,7 @@ public: // If using with : // int argc; // char** argv; - // args.argcv(argc,argv); + // args.argcv(argc,argv); // you can delete with : // args::delete_argcv(argc,argv); if(m_args.empty()) {a_argc = 0;a_argv = 0;return true;} @@ -385,7 +386,7 @@ public: tools_vforcit(std::string,a_knowns,it2) { if((*it).first==(*it2)) { found = true; - break; + break; } } if(!found) return false; //one option not in a_knowns. @@ -456,8 +457,8 @@ protected: inline bool check_args(const std::vector& a_args,unsigned int a_number,std::ostream& a_out){ if(a_args.size()==a_number) return true; - a_out << "bad argument number." - << " Given " << (unsigned int)a_args.size() + a_out << "bad argument number." + << " Given " << (unsigned int)a_args.size() << " whilst " << a_number << " expected." << std::endl; return false; @@ -478,8 +479,8 @@ inline bool check_min(const std::vector& a_args,unsigned int a_numb } return true; } - a_out << "bad argument number." - << " Given " << (unsigned int)a_args.size() + a_out << "bad argument number." + << " Given " << (unsigned int)a_args.size() << " whilst at least " << a_number << " expected." << std::endl; return false; @@ -487,8 +488,8 @@ inline bool check_min(const std::vector& a_args,unsigned int a_numb inline bool check_min_args(const std::vector& aArgs,unsigned int a_number,std::ostream& a_out){ if(aArgs.size()>=a_number) return true; - a_out << "bad argument number." - << " Given " << (unsigned int)aArgs.size() + a_out << "bad argument number." + << " Given " << (unsigned int)aArgs.size() << " whilst at least " << a_number << " expected." << std::endl; return false; @@ -496,8 +497,8 @@ inline bool check_min_args(const std::vector& aArgs,unsigned int a_ inline bool check_or_args(const std::vector& aArgs,unsigned int a_1,unsigned int a_2,std::ostream& a_out){ if((aArgs.size()==a_1)||(aArgs.size()==a_2)) return true; - a_out << "bad argument number." - << " Given " << (unsigned int)aArgs.size() + a_out << "bad argument number." + << " Given " << (unsigned int)aArgs.size() << " whilst " << a_1 << " or " << a_2 << " expected." << std::endl; return false; diff --git a/source/analysis/g4tools/include/tools/array b/source/analysis/g4tools/include/tools/array index f8f16a7b0b..0a28e789a4 100644 --- a/source/analysis/g4tools/include/tools/array +++ b/source/analysis/g4tools/include/tools/array @@ -39,16 +39,16 @@ public: #endif configure(a_orders); } - array(unsigned int a_dimension,unsigned int a_order) { + array(unsigned int a_dimension,unsigned int a_order) { #ifdef TOOLS_MEM mem::increment(s_class().c_str()); #endif // A hypercube of dimension "a_dimension" and size "a_order". uints_t _orders(a_dimension); - for(unsigned int index=0;index=aEpsilon) return false; } @@ -305,7 +305,7 @@ public: (*it) = zero(); //PAW convention. status = false; } else { - T _value = (*it); + T _value = (*it); (*it) = v_one/_value; } } @@ -316,7 +316,7 @@ public: a_offset = 0; if(a_is.size()!=dim) return false; if(dim==0) return false; - for(size_t iaxis=0;iaxis=m_orders[iaxis]) { a_offset = 0; @@ -330,7 +330,7 @@ public: if(a_offset>=m_vector.size()) return false; size_t dim = m_orders.size(); unsigned int off = a_offset; - for(int iaxis=int(dim)-1;iaxis>=0;iaxis--) { + for(int iaxis=int(dim)-1;iaxis>=0;iaxis--) { a_is[iaxis] = off/m_offsets[iaxis]; off -= a_is[iaxis] * m_offsets[iaxis]; } @@ -341,7 +341,7 @@ public: if(a_cut.size()!=dim) return false; if(!indices(a_index,const_cast(m_is))) return false; bool good = true; - for(size_t iaxis=0;iaxisa_cut[iaxis].second) {good = false;break;} } @@ -355,21 +355,21 @@ public: } public: static T zero() { - //return (T)0; - //return T(0); - return T(); + //return (T)0; + //return T(0); + return T(); } static T one() { - //return (T)1; - return T(1); + //return (T)1; + return T(1); } static T minus_one() { - //return (T)-1; - return T(-1); + //return (T)-1; + return T(-1); } static T two() { - //return (T)2; - return T(2); + //return (T)2; + return T(2); } protected: uints_t m_orders; @@ -393,7 +393,7 @@ inline bool contract( ,unsigned int aIB ,array& aR ){ - // Contract a tensor (aA) with a vector (aB) + // Contract a tensor (aA) with a vector (aB) // on indice aIA of aA and aIB of aB. // aA.dimension must be > 1. // aB.dimension must be > 1. @@ -411,7 +411,7 @@ inline bool contract( if((rdima+rdimb)==0) { std::vector rorders(1); - rorders[0] = 1; + rorders[0] = 1; if(!aR.configure(rorders)) return false; const std::vector& vA = aA.vector(); const std::vector& vB = aB.vector(); @@ -425,14 +425,14 @@ inline bool contract( std::vector rorders(rdima+rdimb); unsigned int index; - for(index=0;index +template inline void dump(std::ostream& a_out,const tools::array& a_array,const std::string& a_title){ if(a_title.size()) a_out << a_title << std::endl; const std::vector& vec = a_array.vector(); @@ -525,7 +525,7 @@ inline void dump(std::ostream& a_out,const tools::array& a_array,const std::s } } -template +template inline void diff(std::ostream& a_out,const array& aA,const array& aB,T a_epsilon){ if(aA.orders()!=aB.orders()) { a_out << "tools::arrays::diff : not same orders" << std::endl; @@ -536,7 +536,7 @@ inline void diff(std::ostream& a_out,const array& aA,const array& aB,T a_e std::vector is(dim); unsigned int vsize = aA.vector().size(); for(unsigned int index=0;index=a_epsilon) { aA.indices(index,is); @@ -582,7 +582,7 @@ public: if(!good) continue; // All indicies are different. unsigned int n = 0; - for(unsigned int iaxis=0;iaxis& a_lines) { } } +inline void buf2lines(size_t a_size,const char* a_buffer,std::vector& a_lines) { + a_lines.clear(); + if(!a_size) return; + std::string line; + char* pos = (char*)a_buffer; + const char* end = a_buffer+a_size-1; + while(true) { + if(pos>end) { + if(line.size()) a_lines.push_back(line); + return; + } + if((*pos=='\r')&&((pos+1)<=end)&&(*(pos+1)=='\n')) { + a_lines.push_back(line); + line.clear(); + pos += 2; + } else if(*pos=='\n') { + a_lines.push_back(line); + line.clear(); + pos++; + } else { + line += *pos; + pos++; + } + } +} + } #include //memcpy @@ -49,10 +75,10 @@ inline bool strings2buf(size_t a_number,const char** a_strings,size_t& a_size,ch // For {}, it produces "0". a_size = 0; for(size_t index=0;index& a_strings,size_t& a_size size_t number = a_strings.size(); a_size = 0; for(size_t index=0;index& a_strings,size_t& a_size ::memcpy(pos,s.c_str(),array_size); pos += array_size; } - *pos = '\0'; + *pos = '\0'; return true; } diff --git a/source/analysis/g4tools/include/tools/ccontour b/source/analysis/g4tools/include/tools/ccontour index 6896a32a51..c1af505178 100644 --- a/source/analysis/g4tools/include/tools/ccontour +++ b/source/analysis/g4tools/include/tools/ccontour @@ -9,30 +9,30 @@ // Contour.h: interface for the ccontour class. // -// ccontour implements Contour plot algorithm descrided in +// ccontour implements Contour plot algorithm descrided in // IMPLEMENTATION OF // AN IMPROVED CONTOUR // PLOTTING ALGORITHM -// BY +// BY // -// MICHAEL JOSEPH ARAMINI +// MICHAEL JOSEPH ARAMINI // -// B.S., Stevens Institute of Technology, 1980 +// B.S., Stevens Institute of Technology, 1980 // See http://www.ultranet.com/~aramini/thesis.html // // Ported to C++ by Jonathan de Halleux. // // Using ccontour : // -// ccontour is not directly usable. The user has to -// 1. derive the function ExportLine that is +// ccontour is not directly usable. The user has to +// 1. derive the function ExportLine that is // supposed to draw/store the segment of the contour // 2. Set the function draw contour of. (using SetFieldFn // The function must be declared as follows // double (*myF)(double x , double y); // // History: -// 31-07-2002: +// 31-07-2002: // - A lot of contribution from Chenggang Zhou (better strip compressions, merging, area, weight), // - Got rid of ugly MFC lists for STL. ////////////////////////////////////////////////////////////////////// @@ -51,7 +51,7 @@ namespace tools { -class ccontour +class ccontour { #ifdef TOOLS_MEM static const std::string& s_class() { @@ -83,7 +83,7 @@ protected: //G.Barrand virtual void CleanMemory(); // generates contour // Before calling this functions you must - // 1. derive the function ExportLine that is + // 1. derive the function ExportLine that is // supposed to draw/store the segment of the contour // 2. Set the function draw contour of. (using SetFieldFn // The function must be declared as follows @@ -95,7 +95,7 @@ public: //G.Barrand void set_first_grid(int iCol, int iRow); // Set the dimension of the base grid void set_secondary_grid(int iCol, int iRow); - // Sets the region [left, right, bottom,top] to generate contour + // Sets the region [left, right, bottom,top] to generate contour void set_limits(double pLimits[4]); // Sets the isocurve values void set_planes(const std::vector& vPlanes); @@ -150,7 +150,7 @@ private: mem::decrement(s_class().c_str()); #endif } - protected: + protected: CFnStr(const CFnStr&){} CFnStr& operator=(const CFnStr&){return *this;} public: @@ -189,8 +189,8 @@ protected: private: //G.Barrand : have the below in the class. // A simple test function - static double ContourTestFunction(double x,double y,void*) { - return 0.5*(::cos(x+3.14/4)+::sin(y+3.14/4)); + static double ContourTestFunction(double x,double y,void*) { + return 0.5*(::cos(x+3.14/4)+::sin(y+3.14/4)); } protected: @@ -212,10 +212,10 @@ protected: // implementation : // -// Code get on the web at : +// Code get on the web at : // http://www.codeproject.com/cpp/contour.asp -// -// G.Barrand +// +// G.Barrand // ////////////////////////////////////////////////////////////////////// @@ -282,7 +282,7 @@ inline void ccontour::generate() const int cols=m_iColSec+1; const int rows=m_iRowSec+1; //double xoff,yoff; - + // Initialize memroy if needed InitMemory(); @@ -295,7 +295,7 @@ inline void ccontour::generate() oldx3 = 0; x3 = (cols-1)/m_iRowFir; x4 = ( 2*(cols-1) )/m_iRowFir; - for (x = oldx3; x <= x4; x++) + for (x = oldx3; x <= x4; x++) { /* allocate new columns needed */ if (x >= cols) @@ -308,17 +308,17 @@ inline void ccontour::generate() } y4 = 0; - for (j = 0; j < m_iColFir; j++) + for (j = 0; j < m_iColFir; j++) { y3 = y4; y4 = ((j+1)*(rows-1))/m_iColFir; Cntr1(oldx3, x3, y3, y4); } - for (i = 1; i < m_iRowFir; i++) + for (i = 1; i < m_iRowFir; i++) { y4 = 0; - for (j = 0; j < m_iColFir; j++) + for (j = 0; j < m_iColFir; j++) { y3 = y4; y4 = ((j+1)*(rows-1))/m_iColFir; @@ -326,27 +326,27 @@ inline void ccontour::generate() } y4 = 0; - for (j = 0; j < m_iColFir; j++) + for (j = 0; j < m_iColFir; j++) { y3 = y4; y4 = ((j+1)*(rows-1))/m_iColFir; Pass2(oldx3,x3,y3,y4); } - if (i < (m_iRowFir-1)) + if (i < (m_iRowFir-1)) { /* re-use columns no longer needed */ oldx3 = x3; x3 = x4; x4 = ((i+2)*(cols-1))/m_iRowFir; - for (x = x3+1; x <= x4; x++) + for (x = x3+1; x <= x4; x++) { - if (xlow < oldx3) + if (xlow < oldx3) { if (m_ppFnData[x]) delete[] m_ppFnData[x]; m_ppFnData[x] = m_ppFnData[xlow]; m_ppFnData[ xlow++ ] = NULL; - } + } else if (m_ppFnData[x]==NULL) m_ppFnData[x] = new CFnStr[rows]; @@ -358,7 +358,7 @@ inline void ccontour::generate() } y4 = 0; - for (j = 0; j < m_iColFir; j++) + for (j = 0; j < m_iColFir; j++) { y3 = y4; y4 = ((j+1)*(rows-1))/m_iColFir; @@ -370,7 +370,7 @@ inline void ccontour::Cntr1(int x1, int x2, int y1, int y2) { double f11, f12, f21, f22, f33; int x3, y3, i, j; - + if ((x1 == x2) || (y1 == y2)) /* if not a real cell, punt */ return; f11 = Field(x1, y1); @@ -387,7 +387,7 @@ inline void ccontour::Cntr1(int x1, int x2, int y1, int y2) if (f33 < f21) i++; else if (f33 > f21) j++; if (f33 < f22) i++; else if (f33 > f22) j++; if ((i > 2) || (j > 2)) /* should we divide cell? */ - { + { /* subdivide cell */ Cntr1(x1, x3, y1, y3); Cntr1(x3, x2, y1, y3); @@ -408,7 +408,7 @@ inline void ccontour::Pass2(int x1, int x2, int y1, int y2) double v, f11, f12, f21, f22, f33, fold, fnew, f; double xoff=m_pLimits[0]; double yoff=m_pLimits[2]; - + if ((x1 == x2) || (y1 == y2)) /* if not a real cell, punt */ return; f11 = FnctData(x1,y1)->m_dFnVal; @@ -416,7 +416,7 @@ inline void ccontour::Pass2(int x1, int x2, int y1, int y2) f21 = FnctData(x2,y1)->m_dFnVal; f22 = FnctData(x2,y2)->m_dFnVal; if ((x2 > x1+1) || (y2 > y1+1)) /* is cell divisible? */ - { + { x3 = (x1+x2)/2; y3 = (y1+y2)/2; f33 = FnctData(x3, y3)->m_dFnVal; @@ -425,8 +425,8 @@ inline void ccontour::Pass2(int x1, int x2, int y1, int y2) if (f33 < f12) i++; else if (f33 > f12) j++; if (f33 < f21) i++; else if (f33 > f21) j++; if (f33 < f22) i++; else if (f33 > f22) j++; - if ((i > 2) || (j > 2)) /* should we divide cell? */ - { + if ((i > 2) || (j > 2)) /* should we divide cell? */ + { /* subdivide cell */ Pass2(x1, x3, y1, y3); Pass2(x3, x2, y1, y3); @@ -436,7 +436,7 @@ inline void ccontour::Pass2(int x1, int x2, int y1, int y2) } } - for (i = 0; i < (int)m_vPlanes.size(); i++) + for (i = 0; i < (int)m_vPlanes.size(); i++) { v = m_vPlanes[i]; j = 0; @@ -444,14 +444,14 @@ inline void ccontour::Pass2(int x1, int x2, int y1, int y2) if (f11 > v) j |= 2; if (f22 > v) j |= 4; if (f12 > v) j |= 010; - if ((f11 > v) ^ (f12 > v)) + if ((f11 > v) ^ (f12 > v)) { if ((FnctData(x1,y1)->m_sLeftLen != 0) && - (FnctData(x1,y1)->m_sLeftLen < FnctData(x1,y1)->m_sRightLen)) + (FnctData(x1,y1)->m_sLeftLen < FnctData(x1,y1)->m_sRightLen)) { old = y1; fold = f11; - while (1) + while (1) { iNew = old+FnctData(x1,old)->m_sLeftLen; fnew = FnctData(x1,iNew)->m_dFnVal; @@ -461,20 +461,20 @@ inline void ccontour::Pass2(int x1, int x2, int y1, int y2) fold = fnew; } yy0 = ((old-y1)+(iNew-old)*(v-fold)/(fnew-fold))/(y2-y1); - } + } else yy0 = (v-f11)/(f12-f11); left = (int)(y1+(y2-y1)*yy0+0.5); } - if ((f21 > v) ^ (f22 > v)) + if ((f21 > v) ^ (f22 > v)) { if ((FnctData(x2,y1)->m_sRightLen != 0) && - (FnctData(x2,y1)->m_sRightLen < FnctData(x2,y1)->m_sLeftLen)) + (FnctData(x2,y1)->m_sRightLen < FnctData(x2,y1)->m_sLeftLen)) { old = y1; fold = f21; - while (1) + while (1) { iNew = old+FnctData(x2,old)->m_sRightLen; fnew = FnctData(x2,iNew)->m_dFnVal; @@ -484,13 +484,13 @@ inline void ccontour::Pass2(int x1, int x2, int y1, int y2) fold = fnew; } yy1 = ((old-y1)+(iNew-old)*(v-fold)/(fnew-fold))/(y2-y1); - } + } else yy1 = (v-f21)/(f22-f21); right = (int)(y1+(y2-y1)*yy1+0.5); } - if ((f21 > v) ^ (f11 > v)) + if ((f21 > v) ^ (f11 > v)) { if ((FnctData(x1,y1)->m_sBotLen != 0) && (FnctData(x1,y1)->m_sBotLen < FnctData(x1,y1)->m_sTopLen)) { @@ -505,13 +505,13 @@ inline void ccontour::Pass2(int x1, int x2, int y1, int y2) fold = fnew; } xx0 = ((old-x1)+(iNew-old)*(v-fold)/(fnew-fold))/(x2-x1); - } + } else xx0 = (v-f11)/(f21-f11); bot = (int)(x1+(x2-x1)*xx0+0.5); } - if ((f22 > v) ^ (f12 > v)) + if ((f22 > v) ^ (f12 > v)) { if ((FnctData(x1,y2)->m_sTopLen != 0) && (FnctData(x1,y2)->m_sTopLen < FnctData(x1,y2)->m_sBotLen)) { @@ -526,14 +526,14 @@ inline void ccontour::Pass2(int x1, int x2, int y1, int y2) fold = fnew; } xx1 = ((old-x1)+(iNew-old)*(v-fold)/(fnew-fold))/(x2-x1); - } + } else xx1 = (v-f12)/(f22-f12); top = (int)(x1+(x2-x1)*xx1+0.5); } - switch (j) + switch (j) { case 7: case 010: @@ -589,7 +589,7 @@ inline void ccontour::Pass2(int x1, int x2, int y1, int y2) inline double ccontour::Field(int x, int y) /* evaluate funct if we must,*/ { double x1, y1; - + if (FnctData(x,y)->m_sTopLen != -1) /* is it already in the array */ return(FnctData(x,y)->m_dFnVal); @@ -604,15 +604,15 @@ inline double ccontour::Field(int x, int y) /* evaluate funct if we must,*/ } inline void ccontour::set_planes(const std::vector& vPlanes) -{ +{ // cleaning memory CleanMemory(); m_vPlanes = vPlanes; } -inline void ccontour::set_field_fcn(double (*_pFieldFcn)(double, double,void*),void* aData) -{ +inline void ccontour::set_field_fcn(double (*_pFieldFcn)(double, double,void*),void* aData) +{ m_pFieldFcnData = aData; m_pFieldFcn=_pFieldFcn; } @@ -639,7 +639,7 @@ inline void ccontour::set_limits(double pLimits[]) for (int i=0;i<4;i++) { m_pLimits[i]=pLimits[i]; - } + } } inline void ccontour::get_limits(double pLimits[]) diff --git a/source/analysis/g4tools/include/tools/charmanip b/source/analysis/g4tools/include/tools/charmanip index 0783494aa6..ee1524d55f 100644 --- a/source/analysis/g4tools/include/tools/charmanip +++ b/source/analysis/g4tools/include/tools/charmanip @@ -8,13 +8,13 @@ namespace tools { // some char ASCII code : // \0 : 0 -// \n = LF : 10 +// \n = LF : 10 // \r = CR : 13 // \t = HT : 9 // , : 44 inline bool is_upper(char a_char) { - // do it myself: due to problem with ctype.h and + // do it myself: due to problem with ctype.h and // isxxx macros on different platforms. switch(a_char) { case 'A':return true; @@ -98,15 +98,15 @@ inline bool is_digit(char a_char) { return false; } -inline bool is_letter(char a_char) { +inline bool is_letter(char a_char) { return (is_lower(a_char)||is_upper(a_char)) ? true : false; } -//inline bool is_alpha(char a_char) { +//inline bool is_alpha(char a_char) { // return (is_lower(a_char)||is_upper(a_char)||is_digit(a_char)) ? true : false; //} -inline bool is_printable(char a_char) { +inline bool is_printable(char a_char) { if(is_lower(a_char)||is_upper(a_char)||is_digit(a_char)) return true; switch(a_char) { case ' ':return true; diff --git a/source/analysis/g4tools/include/tools/chars b/source/analysis/g4tools/include/tools/chars index 4b224a7896..c1adcdf361 100644 --- a/source/analysis/g4tools/include/tools/chars +++ b/source/analysis/g4tools/include/tools/chars @@ -8,7 +8,7 @@ namespace tools { // some char ASCII code : // \0 : 0 -// \n = LF : 10 +// \n = LF : 10 // \r = CR : 13 // \t = HT : 9 // , : 44 diff --git a/source/analysis/g4tools/include/tools/clist_contour b/source/analysis/g4tools/include/tools/clist_contour index 315520cd0a..32e35e7bc5 100644 --- a/source/analysis/g4tools/include/tools/clist_contour +++ b/source/analysis/g4tools/include/tools/clist_contour @@ -22,7 +22,7 @@ typedef std::list cline_strip; typedef std::list cline_strip_list; typedef std::vector cline_strip_list_vector; -class clist_contour : public ccontour +class clist_contour : public ccontour { public: //ccontour // Adding segment to line strips @@ -70,11 +70,11 @@ protected: // returns true if contour is touching boundary bool OnBoundary(cline_strip* pStrip); // L.Garnier : check specials case for CompactStrip - bool SpecialCompactStripCase(double,double,double,double,double); + bool SpecialCompactStripCase(double,double,double,double,double); private: // array of line strips - cline_strip_list_vector m_vStripLists; + cline_strip_list_vector m_vStripLists; typedef unsigned int UINT; private: @@ -124,10 +124,10 @@ inline void clist_contour::generate() inline void clist_contour::InitMemory() { ccontour::InitMemory(); - + cline_strip_list::iterator pos; cline_strip* pStrip; - + if (!m_vStripLists.empty()) { UINT i; @@ -153,7 +153,7 @@ inline void clist_contour::InitMemory() inline void clist_contour::CleanMemory() { ccontour::CleanMemory(); - + cline_strip_list::iterator pos; cline_strip* pStrip; UINT i; @@ -176,13 +176,13 @@ inline void clist_contour::ExportLine(int iPlane,int x1, int y1, int x2, int y2) { _ASSERT_(iPlane>=0,"clist_contour::ExportLine::0"); _ASSERT_(iPlane<(int)get_number_of_planes(),"clist_contour::ExportLine::1"); - + // check that the two points are not at the beginning or end of the some line strip UINT i1=y1*(m_iColSec+1)+x1; UINT i2=y2*(m_iColSec+1)+x2; - + cline_strip* pStrip; - + cline_strip_list::iterator pos; bool added = false; for(pos=m_vStripLists[iPlane].begin(); pos!=m_vStripLists[iPlane].end() && !added; pos++) @@ -211,7 +211,7 @@ inline void clist_contour::ExportLine(int iPlane,int x1, int y1, int x2, int y2) return; } } - + // segment was not part of any line strip, creating new one pStrip=new cline_strip; pStrip->insert(pStrip->begin(),i1); @@ -219,15 +219,15 @@ inline void clist_contour::ExportLine(int iPlane,int x1, int y1, int x2, int y2) m_vStripLists[iPlane].insert(m_vStripLists[iPlane].begin(),pStrip); } -inline bool clist_contour::ForceMerge(cline_strip* pStrip1, cline_strip* pStrip2,double aHeight) +inline bool clist_contour::ForceMerge(cline_strip* pStrip1, cline_strip* pStrip2,double aHeight) { cline_strip::iterator pos; cline_strip::reverse_iterator rpos; - + if (pStrip2->empty()) return false; - + double x[4], y[4], weldDist; int index; index = pStrip1->front(); @@ -242,12 +242,12 @@ inline bool clist_contour::ForceMerge(cline_strip* pStrip1, cline_strip* pStrip2 index = pStrip2->back(); x[3] = get_xi(index); y[3] = get_yi(index); - + weldDist = 10*(m_dDx*m_dDx+m_dDy*m_dDy); - + if (((x[1]-x[2])*(x[1]-x[2])+(y[1]-y[2])*(y[1]-y[2])< weldDist) || SpecialCompactStripCase(x[1],x[2],y[1],y[2],aHeight)) // L.Garnier - + { for (pos=pStrip2->begin(); pos!=pStrip2->end();pos++) { @@ -258,7 +258,7 @@ inline bool clist_contour::ForceMerge(cline_strip* pStrip1, cline_strip* pStrip2 pStrip2->clear(); return true; } - + if (((x[3]-x[0])*(x[3]-x[0])+(y[3]-y[0])*(y[3]-y[0])< weldDist) || SpecialCompactStripCase(x[3],x[0],y[3],y[0],aHeight)) // L.Garnier { @@ -271,7 +271,7 @@ inline bool clist_contour::ForceMerge(cline_strip* pStrip1, cline_strip* pStrip2 pStrip2->clear(); return true; } - + if (((x[1]-x[3])*(x[1]-x[3])+(y[1]-y[3])*(y[1]-y[3])< weldDist) || SpecialCompactStripCase(x[1],x[3],y[1],y[3],aHeight)) // L.Garnier { @@ -307,7 +307,7 @@ inline bool clist_contour::MergeStrips(cline_strip* pStrip1, cline_strip* pStrip cline_strip::reverse_iterator rpos; if (pStrip2->empty()) return false; - + int index; // debugging stuff @@ -325,7 +325,7 @@ inline bool clist_contour::MergeStrips(cline_strip* pStrip1, cline_strip* pStrip pStrip2->clear(); return true; } - + if (pStrip2->front()==pStrip1->back()) { pStrip2->pop_front(); @@ -339,7 +339,7 @@ inline bool clist_contour::MergeStrips(cline_strip* pStrip1, cline_strip* pStrip pStrip2->clear(); return true; } - + if (pStrip2->back()==pStrip1->front()) { pStrip2->pop_back(); @@ -353,7 +353,7 @@ inline bool clist_contour::MergeStrips(cline_strip* pStrip1, cline_strip* pStrip pStrip2->clear(); return true; } - + if (pStrip2->back()==pStrip1->back()) { pStrip2->pop_back(); @@ -367,7 +367,7 @@ inline bool clist_contour::MergeStrips(cline_strip* pStrip1, cline_strip* pStrip pStrip2->clear(); return true; } - + return false; } @@ -378,8 +378,8 @@ inline bool clist_contour::compact_strips () UINT i; cline_strip_list::iterator pos,pos2; cline_strip_list newList; - bool again, changed; - + bool again, changed; + const double weldDist = 10*(m_dDx*m_dDx+m_dDy*m_dDy); if(!_ASSERT_RET_(m_vStripLists.size() == get_number_of_planes(),"clist_contour::compact_strips ::0")) return false; @@ -390,7 +390,7 @@ inline bool clist_contour::compact_strips () while(again) { // REPEAT COMPACT PROCESS UNTILL LAST PROCESS MAKES NO CHANGE - + again=false; // building compacted list if(!_ASSERT_RET_(newList.empty(),"clist_contour::compact_strips ::1")) return false; @@ -411,7 +411,7 @@ inline bool clist_contour::compact_strips () else newList.insert(newList.begin(),pStrip); } - + // deleting old list m_vStripLists[i].clear(); @@ -421,7 +421,7 @@ inline bool clist_contour::compact_strips () { pStrip2=(*pos2); cline_strip::iterator pos1 = pStrip2->begin(),pos3; - while (pos1!=pStrip2->end()) + while (pos1!=pStrip2->end()) { pos3 = pos1; pos3++; @@ -442,19 +442,19 @@ inline bool clist_contour::compact_strips () else pos1++; } - + //if (!(pStrip2->front()==pStrip2->back() && pStrip2->size()==2)) - if (pStrip2->size()!=1) + if (pStrip2->size()!=1) m_vStripLists[i].insert(m_vStripLists[i].begin(),pStrip2 ); - else + else delete pStrip2; } // emptying temp list newList.clear(); - + } // OF WHILE(AGAIN) (LAST COMPACT PROCESS MADE NO CHANGES) - + if (m_vStripLists[i].empty()) continue; /////////////////////////////////////////////////////////////////////// @@ -462,23 +462,23 @@ inline bool clist_contour::compact_strips () int index,count; size_t Nstrip,j; - Nstrip = m_vStripLists[i].size(); + Nstrip = m_vStripLists[i].size(); std::vector closed(Nstrip); double x,y; // First let's find the open and closed lists in m_vStripLists - for(pos2 = m_vStripLists[i].begin(), j=0, count=0; pos2 != m_vStripLists[i].end(); pos2++, j++) + for(pos2 = m_vStripLists[i].begin(), j=0, count=0; pos2 != m_vStripLists[i].end(); pos2++, j++) { pStrip = (*pos2); // is it open ? - if (pStrip->front() != pStrip->back()) + if (pStrip->front() != pStrip->back()) { index = pStrip->front(); x = get_xi(index); y = get_yi(index); index = pStrip->back(); x -= get_xi(index); y -= get_yi(index); - + // is it "almost closed" ? if ((x*x+y*y < weldDist) || SpecialCompactStripCase(get_xi(pStrip->front()), // L.Garnier @@ -487,63 +487,63 @@ inline bool clist_contour::compact_strips () get_yi(pStrip->back()), planeHeight)) { - closed[j] = true; + closed[j] = true; // close it !!! Added by L.Garnier pStrip->push_back(pStrip->front()); // } - else - { - closed[j] = false; + else + { + closed[j] = false; // updating not closed counter... - count ++; + count ++; } - } - else + } + else closed[j] = true; } - + // is there any open strip ? - if (count > 1) - { + if (count > 1) + { // Merge the open strips into NewList pos = m_vStripLists[i].begin(); - for(j=0;j1) + while(newList.size()>1) { pStripBase = newList.front(); - + // merge the rest to pStripBase again = true; - while (again) + while (again) { again = false; - pos = newList.begin(); - for(pos++; pos!=newList.end();) + pos = newList.begin(); + for(pos++; pos!=newList.end();) { pStrip = (*pos); changed = ForceMerge(pStripBase,pStrip,planeHeight); - if (changed) - { + if (changed) + { again = true; delete pStrip; pos = newList.erase(pos); - } - else + } + else pos ++; - } + } } // while(again) index = pStripBase->front(); @@ -568,15 +568,15 @@ inline bool clist_contour::compact_strips () m_vStripLists[i].insert(m_vStripLists[i].begin(),pStripBase); newList.pop_front(); } - else - { - if (OnBoundary(pStripBase)) + else + { + if (OnBoundary(pStripBase)) { _TRACE_(_TT("# open strip ends on boundary, continue.\n")); m_vStripLists[i].insert(m_vStripLists[i].begin(),pStripBase); newList.pop_front(); } - else + else { _PROBLEM_(_TT("unpaird open strip at 1!\n")); //exit(0); @@ -586,27 +586,27 @@ inline bool clist_contour::compact_strips () } // while(newList.size()>1); - if (newList.size() ==1) + if (newList.size() ==1) { pStripBase = newList.front(); index = pStripBase->front(); // L.Garnier x = get_xi(index); y = get_yi(index); // L.Garnier index = pStripBase->back(); // L.Garnier x -= get_xi(index); y -= get_yi(index); // L.Garnier - + // is it "almost closed", give last chance...5*weldDist if (x*x+y*y < 3*weldDist) // L.Garnier { m_vStripLists[i].insert(m_vStripLists[i].begin(),pStripBase); newList.pop_front(); } - else if (OnBoundary(pStripBase)) + else if (OnBoundary(pStripBase)) { _TRACE_(_TT("# open strip ends on boundary, continue.\n")); m_vStripLists[i].insert(m_vStripLists[i].begin(),pStripBase); newList.pop_front(); } - else + else { _PROBLEM_(_TT("unpaird open strip at 2!\n")); DumpPlane(i); @@ -614,16 +614,16 @@ inline bool clist_contour::compact_strips () return false; } } - + newList.clear(); - - } - else if (count == 1) + + } + else if (count == 1) { pos = m_vStripLists[i].begin(); - for(j=0;jback(); // L.Garnier x -= get_xi(index); y -= get_yi(index); // L.Garnier - + // is it "almost closed", give last chance...5*weldDist if (x*x+y*y < 2*weldDist) // L.Garnier { //close it!! pStripBase->push_back(pStripBase->front()); // L.Garnier } - else if (OnBoundary(pStripBase)) + else if (OnBoundary(pStripBase)) { _TRACE_(_TT("# open strip ends on boundary, continue.\n")); pStripBase->push_back(pStripBase->front()); // L.Garnier - } - else + } + else { _TRACE_(_TT("unpaird open strip at 3!")); DumpPlane(i); @@ -660,26 +660,26 @@ inline bool clist_contour::compact_strips () } -inline bool clist_contour::OnBoundary(cline_strip* pStrip) +inline bool clist_contour::OnBoundary(cline_strip* pStrip) { bool e1,e2; int index = pStrip->front(); double x = get_xi(index), y = get_yi(index); - if (x==m_pLimits[0] || x == m_pLimits[1] || + if (x==m_pLimits[0] || x == m_pLimits[1] || y == m_pLimits[2] || y == m_pLimits[3]) e1 = true; - else + else e1 = false; - + index = pStrip->back(); x = get_xi(index); y = get_yi(index); - if (x==m_pLimits[0] || x == m_pLimits[1] || + if (x==m_pLimits[0] || x == m_pLimits[1] || y == m_pLimits[2] || y == m_pLimits[3]) e2 = true; - else + else e2 = false; - + return (e1 && e2); } @@ -688,11 +688,11 @@ inline void clist_contour::DumpPlane(UINT iPlane) const cline_strip_list::const_iterator pos; UINT i; cline_strip* pStrip; - + /*_ASSERT_(iPlane>=0,"clist_contour::DumpPlane");*/ _ASSERT_(iPlanebegin(); index = (*pos); x0 = x = get_xi(index); y0 = y = get_yi(index); - + pos ++; - - for(;pos!=Line->end();pos++) + + for(;pos!=Line->end();pos++) { - index = (*pos); + index = (*pos); x1 = get_xi(index); y1 = get_yi(index); // Ar += (x1-x)*(y1+y); Ar += (y1-y)*(x1+x)-(x1-x)*(y1+y); x = x1; - y = y1; - + y = y1; + } - - + + //Ar += (x0-x)*(y0+y); Ar += (y0-y)*(x0+x)-(x0-x)*(y0+y); // if not closed curve, return 0; - if ((x0-x)*(x0-x) + (y0-y)*(y0-y)>20*(m_dDx*m_dDx+m_dDy*m_dDy)) + if ((x0-x)*(x0-x) + (y0-y)*(y0-y)>20*(m_dDx*m_dDx+m_dDy*m_dDy)) { Ar = 0; _TRACE_(_TT("# open curve!\n")); @@ -747,38 +747,38 @@ inline double clist_contour::Area(cline_strip* Line) return Ar; } -inline double clist_contour:: EdgeWeight(cline_strip* pLine, double R) +inline double clist_contour:: EdgeWeight(cline_strip* pLine, double R) { cline_strip::iterator pos; int count = 0,index; double x,y; - for(pos = pLine->begin(); pos!=pLine->end(); pos++) + for(pos = pLine->begin(); pos!=pLine->end(); pos++) { index = (*pos); - x = get_xi(index); + x = get_xi(index); y = get_yi(index); - if (fabs(x) > R || fabs(y) > R) + if (fabs(x) > R || fabs(y) > R) count ++; } return (double)count/pLine->size(); } /* -inline bool clist_contour::PrintContour(std::ostream& a_out) +inline bool clist_contour::PrintContour(std::ostream& a_out) { std::streamsize old_prec = a_out.precision(3); a_out << std::setprecision(10); - + UINT i, index; cline_strip* pStrip; cline_strip::iterator pos2; cline_strip_list::iterator pos; - + for(i=0;ibegin();pos2!=pStrip->end();pos2++) + for(pos2 = pStrip->begin();pos2!=pStrip->end();pos2++) { index = (*pos2); a_out << get_xi(index)<<"\t"<x == back()->x or front()->y == back()->y). // We try to detect in this method this situation and decide to close - // or not the line. To do that we check the heigth of intermediate + // or not the line. To do that we check the heigth of intermediate // points to see if there are on the same contour; if so we close // the line (and return true), if not we do nothing (and return false). diff --git a/source/analysis/g4tools/include/tools/cmathT b/source/analysis/g4tools/include/tools/cmathT deleted file mode 100644 index 51795f13b4..0000000000 --- a/source/analysis/g4tools/include/tools/cmathT +++ /dev/null @@ -1,56 +0,0 @@ -// Copyright (C) 2010, Guy Barrand. All rights reserved. -// See the file tools.license for terms. - -#ifndef tools_cmathT -#define tools_cmathT - -#include - -namespace tools { - -//NOTE : const & in args to be compatible and efficient with inlib::symbol. - -//float -inline float _pow(const float& a_x,const float& a_y) {return ::powf(a_x,a_y);} -inline float _exp(const float& a_x) {return ::expf(a_x);} -inline float _log(const float& a_x) {return ::logf(a_x);} -inline float _sqrt(const float& a_x) {return ::sqrtf(a_x);} -inline float _cos(const float& a_x) {return ::cosf(a_x);} -inline float _sin(const float& a_x) {return ::sinf(a_x);} -inline float _fabs(const float& a_x) {return ::fabsf(a_x);} -inline float _tan(const float& a_x) {return ::tanf(a_x);} -inline void _half_pi(float& a_v) {a_v = float(1.5707963267948965580E0);} -inline void _pi(float& a_v) {a_v = float(3.1415926535897931160E0);} -//inline float _conj(const float& a_x) {return a_x;} - -//double -inline double _pow(const double& a_x,const double& a_y) {return ::pow(a_x,a_y);} -inline double _exp(const double& a_x) {return ::exp(a_x);} -inline double _log(const double& a_x) {return ::log(a_x);} -inline double _sqrt(const double& a_x) {return ::sqrt(a_x);} -inline double _cos(const double& a_x) {return ::cos(a_x);} -inline double _sin(const double& a_x) {return ::sin(a_x);} -inline double _fabs(const double& a_x) {return ::fabs(a_x);} -inline double _tan(const double& a_x) {return ::tan(a_x);} -inline void _half_pi(double& a_v) {a_v = 1.5707963267948965580E0;} -inline void _pi(double& a_v) {a_v = 3.1415926535897931160E0;} -//inline double _conj(const double& a_x) {return a_x;} - -//long double -#ifndef ANDROID -inline long double _pow(const long double& a_x,const long double& a_y) {return ::powl(a_x,a_y);} -inline long double _exp(const long double& a_x) {return ::expl(a_x);} -inline long double _log(const long double& a_x) {return ::logl(a_x);} -inline long double _sqrt(const long double& a_x) {return ::sqrtl(a_x);} -inline long double _cos(const long double& a_x) {return ::cosl(a_x);} -inline long double _sin(const long double& a_x) {return ::sinl(a_x);} -inline long double _fabs(const long double& a_x) {return ::fabsl(a_x);} -inline long double _tan(const long double& a_x) {return ::tanl(a_x);} -inline void _half_pi(long double& a_v) {a_v = 1.5707963267948965580E0;} -inline void _pi(long double& a_v) {a_v = 3.1415926535897931160E0;} -//inline long double _conj(const long double& a_x) {return a_x;} -#endif - -} - -#endif diff --git a/source/analysis/g4tools/include/tools/cmemT b/source/analysis/g4tools/include/tools/cmemT index 79644ca88a..400ec617d1 100644 --- a/source/analysis/g4tools/include/tools/cmemT +++ b/source/analysis/g4tools/include/tools/cmemT @@ -25,22 +25,22 @@ inline void cmem_free(T*& a_p){ template inline T* cmem_alloc(size_t a_num){ if(a_num<=0) return 0; - T* p = (T*)::malloc(a_num*sizeof(T)); + T* p = (T*)::malloc(a_num*sizeof(T)); if(!p) return 0; #ifdef TOOLS_MEM mem::increment("cmem"); -#endif +#endif return p; } template inline T* cmem_alloc_copy(const T* a_from,size_t a_num){ if(a_num<=0) return 0; - T* p = (T*)::malloc(a_num*sizeof(T)); + T* p = (T*)::malloc(a_num*sizeof(T)); if(!p) return 0; #ifdef TOOLS_MEM mem::increment("cmem"); -#endif +#endif //::memcpy(p,a_from,a_num*sizeof(T)); for(size_t i=0;i& a_vars) { tools_vforit(value,a_vars,it) { if((*it).type()==value::VOID_STAR) { - std::vector* vars = + std::vector* vars = (std::vector*)(*it).get_void_star(); delete_columns(*vars); delete vars; @@ -141,8 +141,8 @@ inline void copy_columns(const std::vector& a_from,std::vector& a_ value v((void*)vars); v.set_label((*it).label()); a_to.push_back(v); - std::vector* p = - (std::vector*)(*it).get_void_star(); + std::vector* p = + (std::vector*)(*it).get_void_star(); copy_columns(*p,*vars); } else { a_to.push_back(*it); @@ -163,14 +163,14 @@ inline void dump_columns(std::ostream& a_out,const std::vector& a_vars,co // << "ITuple : " << (*it).label() << " : end " // << std::endl; } else { - std::string stype; + std::string stype; (*it).s_type(stype); - std::string sval; + std::string sval; (*it).tos(sval); a_out << a_margin - << stype << " : " - << (*it).label() << " : " + << stype << " : " + << (*it).label() << " : " << sval << std::endl; } @@ -180,7 +180,7 @@ inline void dump_columns(std::ostream& a_out,const std::vector& a_vars,co class finder : public columns::parser { typedef columns::parser parent; public: - finder(std::ostream& a_out,const std::string& a_script) + finder(std::ostream& a_out,const std::string& a_script) :m_out(a_out) ,m_script(a_script) //,fSuccess(false) @@ -195,7 +195,7 @@ public: bool find_variables() { clear(); if(m_script.empty()) return false; //keep old version logic. - if(!parse(m_script)) return false; + if(!parse(m_script)) return false; //dump(m_out); //analyse m_top : if(!analyse(m_top,m_stack)) {clear();return false;} @@ -267,14 +267,14 @@ protected: strip(swords[1]); if(swords[0]=="ITuple") { - + //create a value::VOID_STAR : value* v = new value((void*)0); v->set_label(swords[1]); return v; - + } else { - + value::e_type type; if(!s2type(swords[0],type)){ m_out << "tools::columns::finder::analyse_dcl :" @@ -335,7 +335,7 @@ protected: strip(swords[1]); if(swords[0]=="ITuple") { - + //create a value::VOID_STAR : value* v = new value((void*)0); v->set_label(swords[1]); @@ -372,7 +372,7 @@ protected: } value* v = new value(); - v->set_type(m_cur_type); + v->set_type(m_cur_type); v->set_label(swords[0]); return v; @@ -395,23 +395,23 @@ protected: protected: static bool s2type(const std::string& a_s,value::e_type& a_type){ if(a_s=="float") { - a_type = value::FLOAT; + a_type = value::FLOAT; } else if(a_s=="double") { - a_type = value::DOUBLE; + a_type = value::DOUBLE; //} else if(a_s=="char") { - // a_type = value::CHAR; + // a_type = value::CHAR; } else if(a_s=="short") { - a_type = value::SHORT; + a_type = value::SHORT; } else if(a_s=="int") { - a_type = value::INT; + a_type = value::INT; } else if(a_s=="long") { - a_type = value::INT64; + a_type = value::INT64; } else if((a_s=="bool")||(a_s=="boolean")) { - a_type = value::BOOL; + a_type = value::BOOL; } else if((a_s=="string")||(a_s=="java.lang.String")){ - a_type = value::STRING; + a_type = value::STRING; //} else if(a_s=="byte") { - // a_type = value::UNSIGNED_CHAR; + // a_type = value::UNSIGNED_CHAR; } else if(a_s=="float[]") { a_type = value::ARRAY_FLOAT; @@ -434,13 +434,13 @@ protected: // not AIDA : //} else if(a_s=="uchar") { - // a_type = value::UNSIGNED_CHAR; + // a_type = value::UNSIGNED_CHAR; } else if(a_s=="ushort") { - a_type = value::UNSIGNED_SHORT; + a_type = value::UNSIGNED_SHORT; } else if(a_s=="uint") { - a_type = value::UNSIGNED_INT; + a_type = value::UNSIGNED_INT; } else if(a_s=="ulong") { - a_type = value::UNSIGNED_INT64; + a_type = value::UNSIGNED_INT64; } else { return false; } @@ -450,62 +450,62 @@ protected: if(a_type==value::FLOAT) { float v = 0; if(a_v.size()) {if(!to(a_v,v)) return 0;} - return new value(v); + return new value(v); } else if(a_type==value::DOUBLE) { double v = 0; if(a_v.size()) {if(!to(a_v,v)) return 0;} - return new value(v); + return new value(v); //} else if(a_type==value::CHAR) { // char v = 0; // if(a_v.size()) {if(!to(a_v,v)) return 0;} - // return new value(v); + // return new value(v); } else if(a_type==value::SHORT) { short v = 0; if(a_v.size()) {if(!to(a_v,v)) return 0;} - return new value(v); + return new value(v); } else if(a_type==value::INT) { int v = 0; if(a_v.size()) {if(!to(a_v,v)) return 0;} - return new value(v); + return new value(v); } else if(a_type==value::INT64) { int64 v = 0; if(a_v.size()) {if(!to(a_v,v)) return 0;} - return new value(v); + return new value(v); } else if(a_type==value::BOOL) { bool v = false; if(a_v.size()) {if(!to(a_v,v)) return 0;} - return new value(v); + return new value(v); } else if(a_type==value::STRING) { if( (a_v.size()>=2) && (a_v[0]=='"') && (a_v[a_v.size()-1]=='"') ){ return new value(a_v.substr(1,a_v.size()-2)); } else { - return new value(a_v); + return new value(a_v); } //} else if(a_type==value::UNSIGNED_CHAR) { // unsigned short v = 0; // if(a_v.size()) {if(!to(a_v,v)) return 0;} - // return new value((unsigned char)v); + // return new value((unsigned char)v); } else if(a_type==value::UNSIGNED_SHORT) { unsigned short v = 0; if(a_v.size()) {if(!to(a_v,v)) return 0;} - return new value(v); + return new value(v); } else if(a_type==value::UNSIGNED_INT) { unsigned int v = 0; if(a_v.size()) {if(!to(a_v,v)) return 0;} - return new value(v); + return new value(v); } else if(a_type==value::UNSIGNED_INT64) { uint64 v = 0; if(a_v.size()) {if(!to(a_v,v)) return 0;} - return new value(v); + return new value(v); } else if(a_type==value::ARRAY_FLOAT) { if(a_v.size()) return 0; - value* v = new value(); + value* v = new value(); v->set_type(value::ARRAY_FLOAT); return v; } else if(a_type==value::ARRAY_DOUBLE) { diff --git a/source/analysis/g4tools/include/tools/cstr b/source/analysis/g4tools/include/tools/cstr index 5aab3e05cd..0ed44b00ad 100644 --- a/source/analysis/g4tools/include/tools/cstr +++ b/source/analysis/g4tools/include/tools/cstr @@ -30,15 +30,15 @@ inline const std::string& s_cstr() { inline char* str_dup(const char* a_cstr #ifdef TOOLS_MEM ,bool a_inc = true -#endif +#endif ) { #ifdef TOOLS_MEM if(a_inc) { #ifdef TOOLS_CSTR_DEBUG_MEM ::printf("debug : str_dup \"%s\"\n",a_cstr); -#endif +#endif mem::increment(s_cstr().c_str()); - } + } #endif return ::strcpy((char*)::malloc(::strlen(a_cstr)+1),a_cstr); } @@ -46,15 +46,15 @@ inline char* str_dup(const char* a_cstr inline char* str_from_buffer(const char* a_buffer,size_t a_len #ifdef TOOLS_MEM ,bool a_inc = true -#endif +#endif ) { #ifdef TOOLS_MEM if(a_inc) { #ifdef TOOLS_CSTR_DEBUG_MEM ::printf("debug : str_from_buffer.\n"); -#endif +#endif mem::increment(s_cstr().c_str()); - } + } #endif char* s = (char*)::malloc(a_len+1); if(s==NULL) return NULL; @@ -68,7 +68,7 @@ inline void str_del(char*& a_cstr) { #ifdef TOOLS_MEM #ifdef TOOLS_CSTR_DEBUG_MEM ::printf("debug : str_del \"%s\"\n",a_cstr); -#endif +#endif mem::decrement(s_cstr().c_str()); #endif ::free(a_cstr); @@ -81,10 +81,10 @@ inline char* str_new(size_t a_l = 0,char a_char = ' ') { #ifdef TOOLS_MEM #ifdef TOOLS_CSTR_DEBUG_MEM ::printf("debug : str_new : len %lu\n",a_l); -#endif +#endif mem::increment(s_cstr().c_str()); #endif - char* pos = s; + char* pos = s; for(size_t c=0;c= siz, truncation occurred. - + // code taken from CERN-ROOT/core/clib to compile exlib/tests/h2root.cpp. // strlcpy, strlcat are in string.h on BSD based systems. - + // Copyright (c) 1998 Todd C. Miller . /*register*/ char* d = dst; @@ -308,7 +308,7 @@ inline size_t str_lcat(char *dst, const char *src, size_t siz) { // code taken from CERN-ROOT/core/clib to compile exlib/tests/h2root.cpp. // strlcpy, strlcat are in string.h on BSD based systems. - + // Copyright (c) 1998 Todd C. Miller . /*register*/ char* d = dst; @@ -342,7 +342,7 @@ inline bool str_2ds(char* a_s,const char* a_sep,VECTOR& a_v) { double d; for (tok = ::strtok(a_s,a_sep);tok && *tok;tok = ::strtok(NULL,a_sep)) { if(!str_2d(tok,d)) {a_v.clear();return false;} - a_v.push_back(d); + a_v.push_back(d); } return true; } diff --git a/source/analysis/g4tools/include/tools/data_axis b/source/analysis/g4tools/include/tools/data_axis index e440a56ddc..694f08ba32 100644 --- a/source/analysis/g4tools/include/tools/data_axis +++ b/source/analysis/g4tools/include/tools/data_axis @@ -32,7 +32,7 @@ public: bool is_log(bool a_v) {if(m_is_log==a_v) return false;m_is_log = a_v;return true;} bool min_value(float a_v) {if(m_min_value==a_v) return false;m_min_value = a_v;return true;} bool max_value(float a_v) {if(m_max_value==a_v) return false;m_max_value = a_v;return true;} -#endif +#endif float min_value() const {return m_min_value;} float max_value() const {return m_max_value;} bool is_log() const {return m_is_log;} @@ -43,18 +43,18 @@ public: float mylow, myhigh; int N_NICE = 4; static const float nice[/*N_NICE*/4] = { 1.0,2.0,2.5,5.0 }; - + if (m_min_value > m_max_value) { float low = m_min_value; m_min_value = m_max_value; - m_max_value = low; + m_max_value = low; } else if (m_min_value == m_max_value) { - float value = m_min_value; + float value = m_min_value; m_min_value = value - 1; m_max_value = value + 1; return; } - + //if (m_steps <= 0) { //if letting the if and m_steps as a field, twice this function do not give the same result. _axis = 1; unsigned int m_steps = 10; @@ -65,65 +65,65 @@ public: // we don't have to go > *m_max_value. // float w = (m_max_value - m_min_value)/((float)m_steps); - float mag = ffloor(flog10(w)); + float mag = ffloor(flog10(w)); int i = 0; do { - step = nice[i] * fpow(10.0,mag); + step = nice[i] * fpow(10.0,mag); mylow = ffloor(m_min_value/step) * step; - //myhigh = _axis==1 ? fceil(m_max_value/step) * step : mylow + step * m_steps; + //myhigh = _axis==1 ? fceil(m_max_value/step) * step : mylow + step * m_steps; myhigh = fceil(m_max_value/step) * step; //quiet Coverity. i++; if (i>=N_NICE) {i = 0;mag++;} } - while ( ( (_axis==1) && (myhigh < m_max_value)) || + while ( ( (_axis==1) && (myhigh < m_max_value)) || ( (_axis==0) && (myhigh <= m_max_value)) ); - + float range = myhigh - mylow; - - // we now have decided on a range. Try to move + + // we now have decided on a range. Try to move // m_min_value/m_max_value a little // to end up on a nice number. // // first check if either end is near 0.0 - if ( !m_is_log && (m_min_value >= 0.0) && - (( (_axis==1) && (range>=m_max_value) ) || - ( (_axis==0) && (range>m_max_value) )) ) { + if ( !m_is_log && (m_min_value >= 0.0) && + (( (_axis==1) && (range>=m_max_value) ) || + ( (_axis==0) && (range>m_max_value) )) ) { m_min_value = 0.0; m_max_value = range; return; } - - if ( (( (_axis==1) && (m_max_value<=0.0) ) || - ( (_axis==0) && (m_max_value<0.0) )) - && (-range<=m_min_value)) { + + if ( (( (_axis==1) && (m_max_value<=0.0) ) || + ( (_axis==0) && (m_max_value<0.0) )) + && (-range<=m_min_value)) { m_max_value = 0.0; m_min_value = -range; return; } - + // try to round *m_min_value. // correction if( m_is_log && (m_min_value<=0.0)) m_min_value = 1.0; - + i = N_NICE-1; mag = myhigh != 0.0 ? fceil(flog10(ffabs(myhigh))) : fceil(flog10(ffabs(mylow))); - + do { - step = nice[i] * fpow(10.0,mag); + step = nice[i] * fpow(10.0,mag); mylow = ffloor(m_min_value/step) * step; - myhigh = mylow + range; + myhigh = mylow + range; i--; if (i<0) { i = N_NICE-1; mag--; } - } - while (( m_is_log && (mylow <= 0.0) ) || - ( (_axis==1) && (myhigh < m_max_value) ) || + } + while (( m_is_log && (mylow <= 0.0) ) || + ( (_axis==1) && (myhigh < m_max_value) ) || ( (_axis==0) && (myhigh <= m_max_value) ) ); - + m_min_value = mylow; - m_max_value = myhigh; + m_max_value = myhigh; } protected: float m_min_value; diff --git a/source/analysis/g4tools/include/tools/file b/source/analysis/g4tools/include/tools/file index 7db6367cdf..e6e29c1d87 100644 --- a/source/analysis/g4tools/include/tools/file +++ b/source/analysis/g4tools/include/tools/file @@ -177,7 +177,7 @@ inline bool read_bytes(const std::string& a_file,char*& a_buffer,long& a_length) a_buffer[filesize] = 0; a_length = filesize; return true; -} +} inline bool write_bytes(const std::string& a_file,const char* a_buffer,size_t a_length){ FILE* file = ::fopen(a_file.c_str(),"wb"); @@ -189,7 +189,7 @@ inline bool write_bytes(const std::string& a_file,const char* a_buffer,size_t a_ size_t nitem = ::fwrite((char*)a_buffer,a_length,(size_t)1,file); ::fclose(file); return (nitem!=1?false:true); -} +} inline bool num_csv_doubles(const std::string& a_string,char& a_sep,unsigned int& a_number){ if(a_string.empty()) {a_sep=0;a_number=0;return true;} //it is ok. @@ -235,7 +235,7 @@ inline bool num_csv_doubles(const std::string& a_string,char& a_sep,unsigned int pos = end+1; if(pos>mx) break; } - + a_sep = sep; a_number = number; return true; @@ -269,7 +269,7 @@ inline bool is_hippo(const std::string& a_file,bool& a_is){ if(end==pos) {all_doubles=false;break;} } a_is = all_doubles?false:true; //all_double=false then we assume the second line is labels of columns. - return true; + return true; } // NOTE : the below is_csv() does not take into account a column with strings. @@ -315,10 +315,10 @@ inline bool is_csv(const std::vector& a_txt,bool& a_is){ if(it==a_txt.begin()) { first_coln = coln; } else { - if(coln!=first_coln) return true; + if(coln!=first_coln) return true; } } - + //a_sep = sep; a_is = true; return true; @@ -358,11 +358,18 @@ inline bool is_kumac(const std::string& a_file,bool& a_is){ } inline bool is_insh(const std::string& a_file,bool& a_is){ - // look at suffix. Some file can't be guessed. if(suffix(a_file)=="insh") {a_is = true;return true;} - //try to guess ? - // have a first line : #!insh ? - a_is = false; + unsigned char head[6]; + {unsigned int num = 6; + if(!signature(a_file,head,num)) {a_is = false;return false;} + if(num!=6) {a_is = false;return true;}} + if(head[0]!='#') {a_is = false;return true;} + if(head[1]!='!') {a_is = false;return true;} + if(head[2]!='i') {a_is = false;return true;} + if(head[3]!='n') {a_is = false;return true;} + if(head[4]!='s') {a_is = false;return true;} + if(head[5]!='h') {a_is = false;return true;} + a_is = true; return true; } @@ -526,10 +533,10 @@ inline bool std_remove(std::vector& a_files) { inline bool std_rename(const std::string& a_from,const std::string& a_to) { //NOTE : a_from must not be a path ! // Darwin is ok with a path but not Linux ! - // For example : + // For example : // ::rename("/tmp/tmp01","x"); // return -1 on Linux. - // To do the upper then someone must use move. + // To do the upper then someone must use move. // But there is no move in the standard lib C ! return (::rename(a_from.c_str(),a_to.c_str()) == 0 ? true : false); } diff --git a/source/analysis/g4tools/include/tools/file_format b/source/analysis/g4tools/include/tools/file_format index 89587d448a..defb9d275e 100644 --- a/source/analysis/g4tools/include/tools/file_format +++ b/source/analysis/g4tools/include/tools/file_format @@ -43,6 +43,7 @@ TOOLS_GLOBAL_STRING(format_py) TOOLS_GLOBAL_STRING(format_kumac) TOOLS_GLOBAL_STRING(format_insh) TOOLS_GLOBAL_STRING(format_shp) +TOOLS_GLOBAL_STRING(format_simbad) #define TOOLS_GLOBAL_EXT(a_name)\ inline const std::string& s_ext_##a_name() {\ @@ -83,6 +84,7 @@ TOOLS_GLOBAL_EXT(py) TOOLS_GLOBAL_EXT(kumac) TOOLS_GLOBAL_EXT(insh) TOOLS_GLOBAL_EXT(shp) +TOOLS_GLOBAL_EXT(simbad) #undef TOOLS_GLOBAL_EXT @@ -119,6 +121,7 @@ inline void formats(std::vector& a_v) { a_v.push_back(s_format_kumac()); a_v.push_back(s_format_insh()); a_v.push_back(s_format_shp()); + a_v.push_back(s_format_simbad()); } inline std::string ext_fmt(const std::string& a_ext) { @@ -155,6 +158,7 @@ inline std::string ext_fmt(const std::string& a_ext) { if(a_ext==s_ext_kumac()) return s_format_kumac(); if(a_ext==s_ext_insh()) return s_format_insh(); if(a_ext==s_ext_shp()) return s_format_shp(); + if(a_ext==s_ext_simbad()) return s_format_simbad(); return s_format_guessed(); } @@ -189,7 +193,8 @@ inline bool need_placement(const std::string& a_format) { //if(a_format==s_format_py()) return true; //if(a_format==s_format_kumac()) return true; //if(a_format==s_format_insh()) return true; -//if(a_format==s_format_shp()) return true; //load in dynamic_sg. +//if(a_format==s_format_shp()) return true; //load in static_sg. +//if(a_format==s_format_simbad()) return true; //load in arg sep. return false; } diff --git a/source/analysis/g4tools/include/tools/fileis b/source/analysis/g4tools/include/tools/fileis index dbabc5bf1f..35859c21e1 100644 --- a/source/analysis/g4tools/include/tools/fileis +++ b/source/analysis/g4tools/include/tools/fileis @@ -19,7 +19,7 @@ inline bool is_zip(const std::string& a_file,bool& a_is){ if(head[1]!='K') {a_is = false;return true;} if(head[2]!=3) {a_is = false;return true;} if(head[3]!=4) {a_is = false;return true;} - a_is = true; + a_is = true; return true; } @@ -32,7 +32,7 @@ inline bool is_jpeg(const std::string& a_file,bool& a_is){ if(head[1]!=216) {a_is = false;return true;} if(head[2]!=255) {a_is = false;return true;} //if(head[3]!=224) {a_is = false;return true;} //LRI.jpg is 225 ! - a_is = true; + a_is = true; return true; } @@ -58,7 +58,7 @@ inline bool is_png(const std::string& a_file,bool& a_is){ if(head[1]!='P') {a_is = false;return true;} if(head[2]!='N') {a_is = false;return true;} if(head[3]!='G') {a_is = false;return true;} - a_is = true; + a_is = true; return true; } @@ -71,7 +71,7 @@ inline bool is_root(const std::string& a_file,bool& a_is){ if(head[1]!='o') {a_is = false;return true;} if(head[2]!='o') {a_is = false;return true;} if(head[3]!='t') {a_is = false;return true;} - a_is = true; + a_is = true; return true; } @@ -89,7 +89,7 @@ inline bool is_iv(const std::string& a_file,bool& a_is){ if(head[6]!='t') {a_is = false;return true;} if(head[7]!='o') {a_is = false;return true;} if(head[8]!='r') {a_is = false;return true;} - a_is = true; + a_is = true; return true; } @@ -103,7 +103,7 @@ inline bool is_wrl(const std::string& a_file,bool& a_is){ if(head[2]!='R') {a_is = false;return true;} if(head[3]!='M') {a_is = false;return true;} if(head[4]!='L') {a_is = false;return true;} - a_is = true; + a_is = true; return true; } @@ -136,7 +136,7 @@ inline bool is_dcm(const std::string& a_file,bool& a_is){ if(head[129]!='I') {a_is = false;return true;} if(head[130]!='C') {a_is = false;return true;} if(head[131]!='M') {a_is = false;return true;} - a_is = true; + a_is = true; return true; } @@ -206,7 +206,7 @@ inline bool is_scenarios(const std::string& a_file,bool& a_is){ if(head[7]!='i') {a_is = false;return true;} if(head[8]!='o') {a_is = false;return true;} if(head[9]!='s') {a_is = false;return true;} - a_is = true; + a_is = true; return true; } @@ -222,7 +222,7 @@ inline bool is_slides(const std::string& a_file,bool& a_is){ if(head[4]!='d') {a_is = false;return true;} if(head[5]!='e') {a_is = false;return true;} if(head[6]!='s') {a_is = false;return true;} - a_is = true; + a_is = true; return true; } @@ -237,7 +237,7 @@ inline bool is_fits(const std::string& a_file,bool& a_is){ if(head[3]!='P') {a_is = false;return true;} if(head[4]!='L') {a_is = false;return true;} if(head[5]!='E') {a_is = false;return true;} - a_is = true; + a_is = true; return true; } @@ -250,7 +250,7 @@ inline bool is_hdf(const std::string& a_file,bool& a_is){ if(head[1]!='H') {a_is = false;return true;} if(head[2]!='D') {a_is = false;return true;} if(head[3]!='F') {a_is = false;return true;} - a_is = true; + a_is = true; return true; } @@ -263,7 +263,26 @@ inline bool is_ps(const std::string& a_file,bool& a_is){ if(head[1]!='!') {a_is = false;return true;} if(head[2]!='P') {a_is = false;return true;} if(head[3]!='S') {a_is = false;return true;} - a_is = true; + a_is = true; + return true; +} + +inline bool is_simbad(const std::string& a_file,bool& a_is){ + unsigned char head[10]; + {unsigned int num = 10; + if(!signature(a_file,head,num)) {a_is = false;return false;} + if(num!=10) {a_is = false;return true;}} + if(head[0]!=':') {a_is = false;return true;} + if(head[1]!=':') {a_is = false;return true;} + if(head[2]!='s') {a_is = false;return true;} + if(head[3]!='c') {a_is = false;return true;} + if(head[4]!='r') {a_is = false;return true;} + if(head[5]!='i') {a_is = false;return true;} + if(head[6]!='p') {a_is = false;return true;} + if(head[7]!='t') {a_is = false;return true;} + if(head[8]!=':') {a_is = false;return true;} + if(head[9]!=':') {a_is = false;return true;} + a_is = true; return true; } @@ -335,7 +354,7 @@ inline bool is_shp(const std::string& a_file,bool& a_is){ unsigned int _sz = (static_cast(head[24])<<24)|(head[25]<<16)|(head[26]<<8)|head[27]; if(_sz<(UINT_MAX/2)) _sz *= 2; else _sz = (UINT_MAX/2)*2; - a_is = sz==long(_sz)?true:false; + a_is = sz==long(_sz)?true:false; return true; } diff --git a/source/analysis/g4tools/include/tools/fmanip b/source/analysis/g4tools/include/tools/fmanip index f9fa4ae86e..cebbc9e0c6 100644 --- a/source/analysis/g4tools/include/tools/fmanip +++ b/source/analysis/g4tools/include/tools/fmanip @@ -52,7 +52,7 @@ inline bool find_with_dirs(std::ostream& a_out, << std::endl; } - return false; + return false; } } @@ -75,7 +75,7 @@ inline bool find_with_env(std::ostream& a_out, // << std::endl; a_path = a_file; return true; - } + } a_out << "tools::find_with_env : env variable " << sout(a_env) << " not defined." << std::endl; a_path.clear(); return false; diff --git a/source/analysis/g4tools/include/tools/fsize b/source/analysis/g4tools/include/tools/fsize index 3f2dd4b8e9..cb169bd2f7 100644 --- a/source/analysis/g4tools/include/tools/fsize +++ b/source/analysis/g4tools/include/tools/fsize @@ -26,7 +26,7 @@ inline bool size(const std::string& a_file,long& a_size){ inline bool is_empty(const std::string& a_file){ long sz; if(!size(a_file,sz)) return true; //if not existing, consider it empty. - return (sz==0L)?true:false; + return (sz==0L)?true:false; } }} diff --git a/source/analysis/g4tools/include/tools/get_lines b/source/analysis/g4tools/include/tools/get_lines index ee225cd9e9..6693f26a59 100644 --- a/source/analysis/g4tools/include/tools/get_lines +++ b/source/analysis/g4tools/include/tools/get_lines @@ -14,7 +14,7 @@ namespace tools { inline void get_lines(const std::string& a_string,std::vector& a_lines){ // a_string is a list separated by "\n" or "\\n". // For "xxx\n\nxxx", {"xxx","","xxx"} will be created. - // WARNING : if a_string is a Windows file name, it may + // WARNING : if a_string is a Windows file name, it may // contains a \n which is not a delimiter ; like ..\data\ntuples.hbook. a_lines.clear(); size_t length = a_string.length(); @@ -24,9 +24,9 @@ inline void get_lines(const std::string& a_string,std::vector& a_li size_t pos = 0; length++; for(size_t count=0;count to tools_gl2ps_ +// gl2ps_ to tools_gl2ps_ // and : // TOOLS_GL2PS_ to TOOLS_TOOLS_GL2PS_ // @@ -5293,6 +5293,9 @@ static void tools_gl2psPrintSVGPrimitive(void *data) case TOOLS_GL2PS_LINE_CAP_SQUARE: sprintf (lcap, "%s", "square"); break; + default: /*G.Barrand : to quiet Coverity :*/ + sprintf (lcap, "%s", "butt"); + break; } switch (prim->linejoin){ case TOOLS_GL2PS_LINE_JOIN_MITER: @@ -5304,6 +5307,9 @@ static void tools_gl2psPrintSVGPrimitive(void *data) case TOOLS_GL2PS_LINE_JOIN_BEVEL: sprintf (ljoin, "%s", "bevel"); break; + default: /*G.Barrand : to quiet Coverity :*/ + sprintf (ljoin, "%s", "miter"); + break; } tools_gl2psPrintf("stroke-linecap=\"%s\" stroke-linejoin=\"%s\" ", lcap, ljoin); diff --git a/source/analysis/g4tools/include/tools/glbuf b/source/analysis/g4tools/include/tools/glbuf index 4e66998b94..2190a50ee9 100644 --- a/source/analysis/g4tools/include/tools/glbuf +++ b/source/analysis/g4tools/include/tools/glbuf @@ -21,7 +21,7 @@ #elif defined(ANDROID) #elif _WIN32 #include -#elif __APPLE__ +#elif __APPLE__ #include //Cocoa #else #include diff --git a/source/analysis/g4tools/include/tools/glprims b/source/analysis/g4tools/include/tools/glprims index 056ff5d9f9..728c84f1df 100644 --- a/source/analysis/g4tools/include/tools/glprims +++ b/source/analysis/g4tools/include/tools/glprims @@ -49,10 +49,10 @@ inline void cvt_2to3(size_t a_npt,const float* a_xys,float*& a_xyzs) { } -inline void triangle_fan_to_triangles(size_t a_npt,const float* a_fxyzs,float*& a_xyzs) { - // a_xyzs = (a_npt-2)*3*3 +inline void triangle_fan_to_triangles(size_t a_npt,const float* a_xyzs,float*& a_pxyzs) { + // a_pxyzs = (a_npt-2)*3*3 - const float* vpos = a_fxyzs; + const float* vpos = a_xyzs; float x1 = *vpos;vpos++; float y1 = *vpos;vpos++; @@ -67,17 +67,17 @@ inline void triangle_fan_to_triangles(size_t a_npt,const float* a_fxyzs,float*& x3 = *vpos;vpos++; y3 = *vpos;vpos++; z3 = *vpos;vpos++; - *a_xyzs = x1;a_xyzs++; - *a_xyzs = y1;a_xyzs++; - *a_xyzs = z1;a_xyzs++; + *a_pxyzs = x1;a_pxyzs++; + *a_pxyzs = y1;a_pxyzs++; + *a_pxyzs = z1;a_pxyzs++; - *a_xyzs = x2;a_xyzs++; - *a_xyzs = y2;a_xyzs++; - *a_xyzs = z2;a_xyzs++; + *a_pxyzs = x2;a_pxyzs++; + *a_pxyzs = y2;a_pxyzs++; + *a_pxyzs = z2;a_pxyzs++; - *a_xyzs = x3;a_xyzs++; - *a_xyzs = y3;a_xyzs++; - *a_xyzs = z3;a_xyzs++; + *a_pxyzs = x3;a_pxyzs++; + *a_pxyzs = y3;a_pxyzs++; + *a_pxyzs = z3;a_pxyzs++; x2 = x3; y2 = y3; @@ -86,10 +86,72 @@ inline void triangle_fan_to_triangles(size_t a_npt,const float* a_fxyzs,float*& } -inline void triangle_strip_to_triangles(size_t a_npt,const float* a_fxyzs,float*& a_xyzs) { - // a_xyzs = (a_npt-2)*3*3 +inline void triangle_fan_to_triangles_texture(size_t a_npt,const float* a_xyzs,const float* a_tcs,float*& a_pxyzs,float*& a_ptcs) { + // a_pxyzs = (a_npt-2)*3*3 - const float* vpos = a_fxyzs; + // a_ptcs = (a_npt-2)*3*2 + + const float* vpos = a_xyzs; + const float* tpos = a_tcs; + + float x1 = *vpos;vpos++; + float y1 = *vpos;vpos++; + float z1 = *vpos;vpos++; + + float tx1 = *tpos;tpos++; + float ty1 = *tpos;tpos++; + + float x2 = *vpos;vpos++; + float y2 = *vpos;vpos++; + float z2 = *vpos;vpos++; + + float tx2 = *tpos;tpos++; + float ty2 = *tpos;tpos++; + + float x3,y3,z3,tx3,ty3; + for(size_t i=2;i class handle : public base_handle { typedef base_handle parent; -public: +public: virtual void* object() const {return m_obj;} virtual base_handle* copy() {return new handle(*this);} virtual void disown() {m_owner = false;} -public: +public: handle(T* a_obj,bool a_owner = true):parent(),m_obj(a_obj),m_owner(a_owner){} handle(const std::string& a_class,T* a_obj,bool a_owner = true):parent(a_class),m_obj(a_obj),m_owner(a_owner){} virtual ~handle(){if(m_owner) delete m_obj;} @@ -75,7 +75,7 @@ private: } else { m_owner = false; } - //a_from.m_obj = 0; //we do not remove the obj ref in a_from. + //a_from.m_obj = 0; //we do not remove the obj ref in a_from. } private: // in principle the below are not used. diff --git a/source/analysis/g4tools/include/tools/hatcher b/source/analysis/g4tools/include/tools/hatcher index dec5c04023..0b78575650 100644 --- a/source/analysis/g4tools/include/tools/hatcher +++ b/source/analysis/g4tools/include/tools/hatcher @@ -5,25 +5,25 @@ #define tools_hatcher /** - * + * * hatcher is a class to draw Hatch in a 3D polyline plane - * A hatch is caracterise by a direction (dirAngle), a spacing to get + * A hatch is caracterise by a direction (dirAngle), a spacing to get * second hatch, * an offset, and a stripWidth : * - offset value : between 0-1, This value set the offset of * the hatch.0 meen that the hatch will touch the first point * of the polyline, and 1 meen that first hatch will be draw * at a 'spacing' distance to first point - * - offsetVec : the 3D point from where a hatch had to pass. This is + * - offsetVec : the 3D point from where a hatch had to pass. This is * very usefull to have hach continuing in different polygones * - * The compute_polyline() method
      + * The compute_polyline() method
      * By default: * - spacing = .1; * - dirAngle = PI/4; * - offsetValue = 0; * - stripWidth=0.0; - * + * * A way to get all points and vertices and to draw them can be : *

        *  iindex =0;
      @@ -65,7 +65,7 @@ public:
         ,fFirstNumHatch(0)
         ,fNumberHatchToDraw(0)
         ,fFirstPolyline(true)
      -  ,fResolveResult(UNDEFINED)
      +  ,fResolveResult(RESOLVE_UNDEFINED)
         {}
         virtual ~hatcher() {}
       protected:
      @@ -108,7 +108,7 @@ protected:
           fResolveResult = a_from.fResolveResult;
           return *this;
         }
      -public:  
      +public:
         /**
         * draw the hatch into the polyline bounding box given in argument
         * You have to get all compute points by the get_points() method
      @@ -138,7 +138,7 @@ public:
         void set_offset(float a) {fOffsetValue = a;}  //set the offset value for this hatch.
         void set_offset_point(vec3f a) {fOffset = a;}  //set the offset Point for this hatch.
         void set_precision_factor(float a) {fPrecisionFactor = a;} //set the precision factor for computing (0.0001 is default).
      -  
      +
         bool set_strip_width(float a) {
           // set the strip width value(0 is default and means no strip).
           if (a<0 || a>1) {
      @@ -164,13 +164,13 @@ public:
          * to draw it, you have to use a tesselisation algorithm first
          */
         const std::vector& points() {return fPoints;}
      -  
      +
         //size_t number_of_vertices() const {return fVertices.size();} //get the number of vertices compute for this hatch.
         /** vector of numbers of vertices */
         const std::vector& vertices() {return fVertices;}
       
       protected:
      -  
      +
         /**
         * draw the hatch into the polyline bounding box given in argument
         * @return FALSE if :
      @@ -179,12 +179,12 @@ protected:
         */
         bool compute_single_polyline (vec3f* listPoints,unsigned int number);
       
      -  
      +
         /**
         * Compute a vector system equation aA+bB=C
         * return SbVec2f(0,0) if there is an error
         * set the resolveResult variable to the error code :
      -  * COLINEAR if A and B are 
      +  * COLINEAR if A and B are
         * PRECISION_ERROR if there is a lack of precision in computing
         * Z_ERROR if there s no solution for Z
         * UNDEFINED never throw
      @@ -199,7 +199,7 @@ protected:
       
         /** Spacing vector between two hatch */
         float fShift; // Absloute distance between two hatch in the polyline plan  */
      -  
      +
         /** The angle (given in radians) is the one between the first
          * line (point 1-point0) and the hatch lines, in the polyline plan.
          * Given in the direct axis ((point1-point0),(lastPoint-point0),
      @@ -208,16 +208,16 @@ protected:
          * perform correct hatching between the polylines
          */
         float fDirAngle;
      -  
      -  /** between 0-1. This value set the offset of the hatch.0 meen 
      -  * that the hatch will touch the first point of the polyline, 
      +
      +  /** between 0-1. This value set the offset of the hatch.0 meen
      +  * that the hatch will touch the first point of the polyline,
         * and 1 meen that first hatch will be draw
         * at a 'spacing' distance to first point
         */
         float fOffsetValue;
       
      -  /** first point of the hatch. 
      -   * offset = firstPolylinePoint+ShiftVec*offsetValue 
      +  /** first point of the hatch.
      +   * offset = firstPolylinePoint+ShiftVec*offsetValue
          */
         vec3f fOffset;
       
      @@ -226,12 +226,12 @@ protected:
       
         /** factor for compute error between two points */
         float fPrecisionFactor;
      -  
      +
         /** hatch direction Vector */
         vec3f  fDirVec;
       
         /** strip with size : set to 0 by default
      -   * between 0 and 1.0 means no strip, 0.5 means strip size is 
      +   * between 0 and 1.0 means no strip, 0.5 means strip size is
          * half of distance between two hatches
          */
         float fStripWidth;
      @@ -241,7 +241,7 @@ protected:
       
         /** vector vertices number */
         std::vector fVertices;
      - 
      +
         /** conflict line table */
         std::vector< std::vector > fConflictNumHatchLineTab;
       
      @@ -256,11 +256,11 @@ protected:
       
         bool fFirstPolyline;
         enum ResolveErrors{
      -    OK = 0,
      -    COLINEAR,
      -    Z_ERROR,
      -    PRECISION_ERROR,
      -    UNDEFINED
      +    RESOLVE_OK = 0,
      +    RESOLVE_COLINEAR,
      +    RESOLVE_Z_ERROR,
      +    RESOLVE_PRECISION_ERROR,
      +    RESOLVE_UNDEFINED
         };
         ResolveErrors fResolveResult;
       };
      diff --git a/source/analysis/g4tools/include/tools/hatcher.icc b/source/analysis/g4tools/include/tools/hatcher.icc
      index 7baa2658ce..32bb553059 100644
      --- a/source/analysis/g4tools/include/tools/hatcher.icc
      +++ b/source/analysis/g4tools/include/tools/hatcher.icc
      @@ -44,22 +44,22 @@ inline bool hatcher::check_polyline(vec3f* listPoints,unsigned int aNumber){
         AB.setValue(listPoints[1+firstOffset].getValue()[0]-listPoints[0].getValue()[0],
                     listPoints[1+firstOffset].getValue()[1]-listPoints[0].getValue()[1],
                     listPoints[1+firstOffset].getValue()[2]-listPoints[0].getValue()[2]); // Vector A->B
      -  
      -  
      -  fResolveResult = COLINEAR;
      +
      +
      +  fResolveResult = RESOLVE_COLINEAR;
         unsigned int test = aNumber;
         while ((fResolveResult !=0) && (test>2+firstOffset)) {
           test--;
           AC.setValue(listPoints[test].getValue()[0]-listPoints[0].getValue()[0],
                       listPoints[test].getValue()[1]-listPoints[0].getValue()[1],
                       listPoints[test].getValue()[2]-listPoints[0].getValue()[2]);
      -    
      +
           // test if AB != AC*i
           resolve_system( AB,
                          AC,
                          vec3f(.0f,.0f,.0f));
         }
      -  if (fResolveResult == COLINEAR) {
      +  if (fResolveResult == RESOLVE_COLINEAR) {
       #ifdef TOOLS_HATCHER_DEBUG
           ::printf("hatcher::check_polyline : ERROR all the point you give are colinear!\n\n");
           for (unsigned int a =0;a firstComputePointsEnable; // table of already compute points for first hatch
         std::vector secondComputePointsEnable;// table of already compute points for second hatch
         std::vector< std::vector > firstComputeConflictNumHatchLineTab; // copy firstComputeConflictNumHatchLineTab in
      -  
      +
         int firstComputeFirstNumHatch =0;
         unsigned int firstComputeNumberHatchToDraw =0;
         float firstHatchShiftToMatchFirstPoint = FLT_MAX; // use in one case when there is no intersection points: to test we have to fill all the polygone
      @@ -187,14 +187,14 @@ inline bool hatcher::compute_polyline (vec3f* tabPoints,unsigned int aNumber) {
           firstComputeConflictNumHatchLineTab[a].clear();
           for (unsigned int b=0;bB
       
      -  fResolveResult = COLINEAR;
      +  fResolveResult = RESOLVE_COLINEAR;
         unsigned int test = numberOfPolylinePoints-1;
         while ((fResolveResult !=0) && (test>1)) {
           test--;
           AC.setValue(listPoints[test].getValue()[0]-listPoints[0].getValue()[0],
                       listPoints[test].getValue()[1]-listPoints[0].getValue()[1],
                       listPoints[test].getValue()[2]-listPoints[0].getValue()[2]);
      -    
      +
           // test if AB != AC*i
           resolve_system( AB,
                          AC,
                          vec3f(.0f,.0f,.0f));
         }
      -  if (fResolveResult == COLINEAR) {
      +  if (fResolveResult == RESOLVE_COLINEAR) {
       #ifdef TOOLS_HATCHER_DEBUG
           ::printf("hatcher::drawPolyline : ERROR all the point you give are colinear!\n\n");
           for (unsigned int a =0;a 8 hatch to draw
         ////////////////////////////////////////////
      -  
      +
         fHatchShiftToMatchPointVec.resize(numberOfPolylinePoints+1);
         float minShiftHatch =FLT_MAX;
         float maxShiftHatch =-FLT_MAX;
      @@ -699,7 +699,7 @@ inline bool hatcher::compute_single_polyline (vec3f* tabPoints,unsigned int aNum
           }
         }
         // for the first point to close the polyline
      -  fHatchShiftToMatchPointVec[numberOfPolylinePoints] = fHatchShiftToMatchPointVec[0]; 
      +  fHatchShiftToMatchPointVec[numberOfPolylinePoints] = fHatchShiftToMatchPointVec[0];
         fFirstNumHatch = (int)(ceilf(minShiftHatch));
         fNumberHatchToDraw = (int)(floorf(maxShiftHatch)-fFirstNumHatch+1);
         if ((int)(floorf(maxShiftHatch)-fFirstNumHatch+1) <0) fNumberHatchToDraw =0;
      @@ -708,7 +708,7 @@ inline bool hatcher::compute_single_polyline (vec3f* tabPoints,unsigned int aNum
         std::vector listHatchStartPoint;
         std::vector listHatchEndPoint;
         std::vector numberOfStartEndPointsVec;
      -  
      +
         fConflictNumHatchLineTab.resize(moreNumberHatchToDraw);
       
         // initialize tab
      @@ -718,12 +718,12 @@ inline bool hatcher::compute_single_polyline (vec3f* tabPoints,unsigned int aNum
             listHatchEndPoint.push_back(vec3f(.0f,.0f,.0f));
             fConflictNumHatchLineTab[a].clear();
           }
      -    
      +
         /////////////////////////////////////////////
         // Compute the normalize shift vector for all lines
         // the normal Vector for point 3 to 4 will be listNormalvec[2]
         /////////////////////////////////////////////
      -  
      +
         for (int a=0;apoint[1])
         // We put each line number into the conflict table to be sure to get all the lines
         //  in conflict. When we will thest the value of the conflicy table, it should
         // be greater than 2 to have a conflict
         /////////////////////////////////////////////
      -  
      +
         vec3f newPoint;
         int minHatch;
      -  int maxHatch;   
      +  int maxHatch;
         int hatchIndice =0;
      -  
      +
         for (int indPolyline=0;indPolyline orderConflictLineNumber;
      -  
      +
         for (unsigned int hatchNumber =0;hatchNumbermaxZValue)) maxZValue = (A[2]);
           if ((B[2] !=0) && ((B[2]) >maxZValue)) maxZValue = (B[2]);
           if ((C[2] !=0) && ((C[2]) >maxZValue)) maxZValue = (C[2]);
      -    
      +
           if (((maxXValue-minXValue) <= (maxYValue-minYValue)) && ((maxXValue-minXValue) <= (maxZValue-minZValue))) { minBoxValue = maxXValue-minXValue; }
      -    else 
      +    else
             if (((maxYValue-minYValue) <= (maxXValue-minXValue)) && ((maxYValue-minYValue) <= (maxZValue-minZValue))) { minBoxValue = maxYValue-minYValue; }
             else
               { minBoxValue = maxZValue-minZValue; }
      -    
      +
           minBoxValue *= fPrecisionFactor;
      -    
      +
           if (bid <= minBoxValue) {
      -      fResolveResult = OK;
      +      fResolveResult = RESOLVE_OK;
             return vec2f((float)a,(float)b);
           }
           else {
      @@ -1243,14 +1243,14 @@ inline vec2f hatcher::resolve_system(const vec3f& A,const vec3f& B,const vec3f&
       #ifdef TOOLS_HATCHER_DEBUG
               printf("hatcher : ***** PRECISON ERROR ON Z  ******* compare %f > %f res :%f %f test %f %f bDiv %e\n\n",bid,100*minBoxValue,a,b,a*Ax+b*Bx-Cx,a*Ay+b*By-Cy,bDiv);
       #endif
      -        fResolveResult = Z_ERROR;
      +        fResolveResult = RESOLVE_Z_ERROR;
             }
             else
               {
       #ifdef TOOLS_HATCHER_DEBUG
                 printf("hatcher : ***** PRECISON ERROR  ******* compare %f > %f res :%f %f test %f %f bDiv %e\n\n",bid,100*minBoxValue,a,b,a*Ax+b*Bx-Cx,a*Ay+b*By-Cy,bDiv);
       #endif
      -          fResolveResult = PRECISION_ERROR;
      +          fResolveResult = RESOLVE_PRECISION_ERROR;
               }
             //return vec2f(0,0); //G.Barrand : commented out to quiet Coverity.
           }
      diff --git a/source/analysis/g4tools/include/tools/hdf5/T_tools b/source/analysis/g4tools/include/tools/hdf5/T_tools
      index 90bbee2fef..9cb7c787d2 100644
      --- a/source/analysis/g4tools/include/tools/hdf5/T_tools
      +++ b/source/analysis/g4tools/include/tools/hdf5/T_tools
      @@ -53,7 +53,7 @@ inline bool write_array(hid_t a_loc,const std::string& a_name,
           cpt = ::H5Pcreate(H5P_DATASET_CREATE);
           if(cpt<0) return false;
           if(a_chunked) {
      -      if(H5Pset_layout(cpt,H5D_CHUNKED)<0) { 
      +      if(H5Pset_layout(cpt,H5D_CHUNKED)<0) {
               ::H5Pclose(cpt);
               return false;
             }
      @@ -64,7 +64,7 @@ inline bool write_array(hid_t a_loc,const std::string& a_name,
               return false;
             }
           } else {
      -      if(H5Pset_layout(cpt,H5D_COMPACT)<0) { 
      +      if(H5Pset_layout(cpt,H5D_COMPACT)<0) {
               ::H5Pclose(cpt);
               return false;
             }
      @@ -87,9 +87,9 @@ inline bool write_array(hid_t a_loc,const std::string& a_name,
         if(a_chunked) {
           hsize_t mx_dims[1];
           mx_dims[0] = H5S_UNLIMITED; //extendable.
      -    file_space = ::H5Screate_simple(1,dims,mx_dims); 
      +    file_space = ::H5Screate_simple(1,dims,mx_dims);
         } else {
      -    file_space = ::H5Screate_simple(1,dims,NULL); 
      +    file_space = ::H5Screate_simple(1,dims,NULL);
         }
         if(file_space<0) {if(cpt>=0) ::H5Pclose(cpt);return false;}
         dataset = tools_H5Dcreate(a_loc,a_name.c_str(),a_file_type,file_space,cpt);
      @@ -98,7 +98,7 @@ inline bool write_array(hid_t a_loc,const std::string& a_name,
         if(dataset<0) return false;}
       
         if(H5Dwrite(dataset,a_mem_type,H5S_ALL,H5S_ALL,H5P_DEFAULT,a_array)<0) {
      -    ::H5Dclose(dataset);                 
      +    ::H5Dclose(dataset);
           return false;
         }
         ::H5Dclose(dataset);
      @@ -116,7 +116,7 @@ inline bool write_vlen(hid_t a_loc,const std::string& a_name,
           cpt = ::H5Pcreate(H5P_DATASET_CREATE);
           if(cpt<0) return false;
           if(a_chunked) {
      -      if(H5Pset_layout(cpt,H5D_CHUNKED)<0) { 
      +      if(H5Pset_layout(cpt,H5D_CHUNKED)<0) {
               ::H5Pclose(cpt);
               return false;
             }
      @@ -127,7 +127,7 @@ inline bool write_vlen(hid_t a_loc,const std::string& a_name,
               return false;
             }
           } else {
      -      if(H5Pset_layout(cpt,H5D_COMPACT)<0) { 
      +      if(H5Pset_layout(cpt,H5D_COMPACT)<0) {
               ::H5Pclose(cpt);
               return false;
             }
      @@ -150,9 +150,9 @@ inline bool write_vlen(hid_t a_loc,const std::string& a_name,
         if(a_chunked) {
           hsize_t mx_dims[1];
           mx_dims[0] = H5S_UNLIMITED; //extendable.
      -    file_space = ::H5Screate_simple(1,dims,mx_dims); 
      +    file_space = ::H5Screate_simple(1,dims,mx_dims);
         } else {
      -    file_space = ::H5Screate_simple(1,dims,NULL); 
      +    file_space = ::H5Screate_simple(1,dims,NULL);
         }
         if(file_space<0) {if(cpt>=0) ::H5Pclose(cpt);return false;}
       
      @@ -165,14 +165,14 @@ inline bool write_vlen(hid_t a_loc,const std::string& a_name,
         if(dataset<0) return false;}
       
         hid_t mem_type = ::H5Tvlen_create(a_mem_type);
      -  
      +
         hvl_t wdata[1];
         wdata[0].len = a_size;
         wdata[0].p = (void*)a_array;
      -  
      +
         if(H5Dwrite(dataset,mem_type,H5S_ALL,H5S_ALL,H5P_DEFAULT,wdata)<0) {
           ::H5Tclose(mem_type);
      -    ::H5Dclose(dataset);                 
      +    ::H5Dclose(dataset);
           return false;
         }
         ::H5Tclose(mem_type);
      @@ -200,7 +200,7 @@ inline bool write_sub_array(hid_t a_loc,const std::string& a_name,
             cpt = ::H5Pcreate(H5P_DATASET_CREATE);
             if(cpt<0) return false;
             if(a_chunked) {
      -        if(H5Pset_layout(cpt,H5D_CHUNKED)<0) { 
      +        if(H5Pset_layout(cpt,H5D_CHUNKED)<0) {
                 ::H5Pclose(cpt);
                 return false;
               }
      @@ -212,7 +212,7 @@ inline bool write_sub_array(hid_t a_loc,const std::string& a_name,
                 return false;
               }
             } else {
      -        if(H5Pset_layout(cpt,H5D_COMPACT)<0) { 
      +        if(H5Pset_layout(cpt,H5D_COMPACT)<0) {
                 ::H5Pclose(cpt);
                 return false;
               }
      @@ -235,7 +235,7 @@ inline bool write_sub_array(hid_t a_loc,const std::string& a_name,
         if(a_create) {
           hsize_t dims[1];
           dims[0] = a_size;
      -    file_space = ::H5Screate_simple(1,dims,NULL); 
      +    file_space = ::H5Screate_simple(1,dims,NULL);
           if(file_space<0) {
             if(cpt>=0) ::H5Pclose(cpt);
             return false;
      @@ -265,9 +265,9 @@ inline bool write_sub_array(hid_t a_loc,const std::string& a_name,
             return false;
           }
       
      -    file_space = H5Dget_space(dataset); 
      +    file_space = H5Dget_space(dataset);
           if(file_space<0) {
      -      ::H5Dclose(dataset);                 
      +      ::H5Dclose(dataset);
             if(cpt>=0) ::H5Pclose(cpt);
             return false;
           }
      @@ -278,7 +278,7 @@ inline bool write_sub_array(hid_t a_loc,const std::string& a_name,
           count[0] = number;
           if(H5Sselect_hyperslab(file_space,H5S_SELECT_SET,offset,NULL,count,NULL)<0) {
             ::H5Sclose(file_space);
      -      ::H5Dclose(dataset);                 
      +      ::H5Dclose(dataset);
             if(cpt>=0) ::H5Pclose(cpt);
             return false;
           }}
      @@ -287,7 +287,7 @@ inline bool write_sub_array(hid_t a_loc,const std::string& a_name,
       
         hsize_t dims[1];
         dims[0] = number;
      -  hid_t mem_space = ::H5Screate_simple(1,dims,NULL); 
      +  hid_t mem_space = ::H5Screate_simple(1,dims,NULL);
         if(mem_space<0) {
           ::H5Sclose(file_space);
           ::H5Dclose(dataset);
      @@ -297,7 +297,7 @@ inline bool write_sub_array(hid_t a_loc,const std::string& a_name,
       
         if(H5Dwrite(dataset,a_mem_type,mem_space,file_space,H5P_DEFAULT,a_array)<0) {
           ::H5Sclose(file_space);
      -    ::H5Dclose(dataset);                 
      +    ::H5Dclose(dataset);
           if(cpt>=0) ::H5Pclose(cpt);
           return false;
         }
      @@ -314,8 +314,8 @@ inline bool write_append_array_dataset(hid_t a_dataset,hid_t /*a_file_type*/,hid
                                              unsigned int a_number,const T a_array[]) {
         hsize_t old_size = 0;
       
      - {hid_t dataspace = H5Dget_space(a_dataset); 
      -  if(dataspace<0) return false;  
      + {hid_t dataspace = H5Dget_space(a_dataset);
      +  if(dataspace<0) return false;
         hsize_t dims[1];
         if(H5Sget_simple_extent_dims(dataspace,dims,NULL)<0) {
           ::H5Sclose(dataspace);
      @@ -329,7 +329,7 @@ inline bool write_append_array_dataset(hid_t a_dataset,hid_t /*a_file_type*/,hid
       //  if(H5Dextend(dataset,exts)<0) {
         if(H5Dset_extent(a_dataset,exts)<0) return false;}
       
      -  hid_t file_space = H5Dget_space(a_dataset); 
      +  hid_t file_space = H5Dget_space(a_dataset);
         if(file_space<0) return false;
       
        {hsize_t offset[1];
      @@ -343,7 +343,7 @@ inline bool write_append_array_dataset(hid_t a_dataset,hid_t /*a_file_type*/,hid
       
         hsize_t dims[1];
         dims[0] = a_number;
      -  hid_t mem_space = ::H5Screate_simple(1,dims,NULL); 
      +  hid_t mem_space = ::H5Screate_simple(1,dims,NULL);
         if(mem_space<0) {
           ::H5Sclose(file_space);
           return false;
      @@ -366,8 +366,8 @@ inline bool write_append_vlen_dataset(hid_t a_dataset,hid_t /*a_file_type*/,hid_
                                             unsigned int a_number,const T a_array[]) {
         hsize_t old_size = 0;
       
      - {hid_t dataspace = H5Dget_space(a_dataset); 
      -  if(dataspace<0) return false;  
      + {hid_t dataspace = H5Dget_space(a_dataset);
      +  if(dataspace<0) return false;
         hsize_t dims[1];
         if(H5Sget_simple_extent_dims(dataspace,dims,NULL)<0) {
           ::H5Sclose(dataspace);
      @@ -381,7 +381,7 @@ inline bool write_append_vlen_dataset(hid_t a_dataset,hid_t /*a_file_type*/,hid_
       //  if(H5Dextend(dataset,exts)<0) {
         if(H5Dset_extent(a_dataset,exts)<0) return false;}
       
      -  hid_t file_space = H5Dget_space(a_dataset); 
      +  hid_t file_space = H5Dget_space(a_dataset);
         if(file_space<0) return false;
       
        {hsize_t offset[1];
      @@ -395,18 +395,18 @@ inline bool write_append_vlen_dataset(hid_t a_dataset,hid_t /*a_file_type*/,hid_
       
         hsize_t dims[1];
         dims[0] = 1;
      -  hid_t mem_space = ::H5Screate_simple(1,dims,NULL); 
      +  hid_t mem_space = ::H5Screate_simple(1,dims,NULL);
         if(mem_space<0) {
           ::H5Sclose(file_space);
           return false;
         }
       
         hid_t mem_type = ::H5Tvlen_create(a_mem_type);
      -  
      +
         hvl_t wdata[1];
         wdata[0].len = a_number;
         wdata[0].p = (void*)a_array;
      -  
      +
         if(H5Dwrite(a_dataset,mem_type,mem_space,file_space,H5P_DEFAULT,wdata)<0) {
           ::H5Tclose(mem_type);
           ::H5Sclose(mem_space);
      @@ -427,7 +427,7 @@ inline bool write_append_array(hid_t a_loc,const std::string& a_name,hid_t a_fil
         hid_t dataset = tools_H5Dopen(a_loc,a_name.c_str());
         if(dataset<0) return false;
         bool status = write_append_array_dataset(dataset,a_file_type,a_mem_type,a_number,a_array);
      -  ::H5Dclose(dataset);                 
      +  ::H5Dclose(dataset);
         return status;
       }
       
      @@ -443,7 +443,7 @@ inline bool write_array_struct(
       ){
         hsize_t dims[1];
         dims[0] = a_size;
      -  hid_t dataspace = ::H5Screate_simple(1,dims,NULL); 
      +  hid_t dataspace = ::H5Screate_simple(1,dims,NULL);
         if(dataspace<0) return false;
       
         hid_t dataset = tools_H5Dcreate(a_loc,a_name.c_str(),a_create_type,dataspace,H5P_DEFAULT);
      @@ -453,12 +453,12 @@ inline bool write_array_struct(
         }
       
         if(H5Dwrite(dataset,aWriteType,H5S_ALL,H5S_ALL,H5P_DEFAULT,a_array)<0) {
      -    ::H5Dclose(dataset);                 
      +    ::H5Dclose(dataset);
           ::H5Sclose(dataspace);
           return false;
         }
       
      -  ::H5Dclose(dataset);                 
      +  ::H5Dclose(dataset);
         ::H5Sclose(dataspace);
       
         return true;
      @@ -476,7 +476,7 @@ inline bool read_scalar(hid_t a_loc,const std::string& a_name,hid_t a_mem_type,T
           return false;
         }
       
      -  hid_t mem_space = ::H5Screate(H5S_SCALAR); 
      +  hid_t mem_space = ::H5Screate(H5S_SCALAR);
         if(mem_space<0) {
           ::H5Sclose(file_space);
           ::H5Dclose(dataset);
      @@ -550,7 +550,7 @@ inline bool read_array(hid_t a_loc,const std::string& a_name,hid_t a_mem_type,un
           return true; //It is ok.
         }
       
      -  hid_t mem_space = ::H5Screate_simple(1,dims,NULL); 
      +  hid_t mem_space = ::H5Screate_simple(1,dims,NULL);
         if(mem_space<0) {
           ::H5Sclose(file_space);
           ::H5Dclose(dataset);
      @@ -631,8 +631,8 @@ inline bool read_vlen(hid_t a_loc,const std::string& a_name,hid_t a_mem_type,uns
           a_array = 0;
           return false;
         }
      -  
      -  hid_t mem_space = ::H5Screate_simple(1,dims,NULL); 
      +
      +  hid_t mem_space = ::H5Screate_simple(1,dims,NULL);
         if(mem_space<0) {
           ::H5Sclose(file_space);
           ::H5Dclose(dataset);
      @@ -666,9 +666,9 @@ inline bool read_vlen(hid_t a_loc,const std::string& a_name,hid_t a_mem_type,uns
           for(hsize_t index=0;index
       inline bool write_scalar(hid_t a_loc,const std::string& a_name,const TYPE& aData) {
         hid_t scalar = ::H5Screate(H5S_SCALAR);
      @@ -1076,7 +1076,7 @@ inline bool write_scalar(hid_t a_loc,const std::string& a_name,const TYPE& aData
           return false;
         }
       
      -  if(H5Pset_layout(compact,H5D_COMPACT)<0) { 
      +  if(H5Pset_layout(compact,H5D_COMPACT)<0) {
           ::H5Pclose(compact);
           ::H5Sclose(scalar);
           return false;
      @@ -1088,22 +1088,22 @@ inline bool write_scalar(hid_t a_loc,const std::string& a_name,const TYPE& aData
           ::H5Sclose(scalar);
           return false;
         }
      -  
      +
         if(::H5Dwrite(dataset,to_T_mem_type(TYPE()),H5S_ALL,H5S_ALL,H5P_DEFAULT,&aData)<0) {
           ::H5Pclose(compact);
           ::H5Sclose(scalar);
      -    ::H5Dclose(dataset);                 
      +    ::H5Dclose(dataset);
           return false;
         }
      -  
      +
         ::H5Pclose(compact);
         ::H5Sclose(scalar);
      -  ::H5Dclose(dataset);                 
      +  ::H5Dclose(dataset);
         return true;
       }
      -    
      +
       template 
      -inline bool write_struct(hid_t a_loc,const std::string& a_name, 
      +inline bool write_struct(hid_t a_loc,const std::string& a_name,
                                hid_t a_create_type,hid_t aWriteType,const T& aData) {
         hid_t scalar = ::H5Screate(H5S_SCALAR);
         if(scalar<0) return false;
      @@ -1114,7 +1114,7 @@ inline bool write_struct(hid_t a_loc,const std::string& a_name,
           return false;
         }
       
      -  if(H5Pset_layout(compact,H5D_COMPACT)<0) { 
      +  if(H5Pset_layout(compact,H5D_COMPACT)<0) {
           ::H5Pclose(compact);
           ::H5Sclose(scalar);
           return false;
      @@ -1130,13 +1130,13 @@ inline bool write_struct(hid_t a_loc,const std::string& a_name,
         if(H5Dwrite(dataset,aWriteType,H5S_ALL,H5S_ALL,H5P_DEFAULT,&aData)<0) {
           ::H5Pclose(compact);
           ::H5Sclose(scalar);
      -    ::H5Dclose(dataset);                 
      +    ::H5Dclose(dataset);
           return false;
         }
       
         ::H5Pclose(compact);
         ::H5Sclose(scalar);
      -  ::H5Dclose(dataset);                 
      +  ::H5Dclose(dataset);
         return true;
       }
       
      @@ -1288,7 +1288,7 @@ inline bool write_scalar_atb(hid_t aDS,const std::string& a_name,const TYPE& aDa
         if(has_attr==1)  {
           if(H5Adelete(aDS,a_name.c_str())<0) return false;
         }
      -  
      +
         hid_t scalar = ::H5Screate(H5S_SCALAR);
         if(scalar<0) return false;
       
      @@ -1297,16 +1297,16 @@ inline bool write_scalar_atb(hid_t aDS,const std::string& a_name,const TYPE& aDa
           ::H5Sclose(scalar);
           return false;
         }
      -  
      +
         if(H5Awrite(aid,to_T_mem_type(TYPE()),&aData)<0) {
           ::H5Sclose(scalar);
           ::H5Aclose(aid);
           return false;
         }
      -  
      +
         ::H5Sclose(scalar);
         ::H5Aclose(aid);
      -  
      +
         return true;
       }
       
      @@ -1321,7 +1321,7 @@ namespace hdf5 {
       inline bool write_strings(hid_t a_loc,const std::string& a_name,
                                 size_t a_number,const char** a_strings,
                                 unsigned int a_chunked = 0,unsigned int a_compress = 0) {
      -  size_t sz;char* buffer;			  
      +  size_t sz;char* buffer;
         if(!tools::strings2buf(a_number,a_strings,sz,buffer)) return false;
         sz--;
         bool status = hdf5::write_array(a_loc,a_name,to_T_file_type(char()),to_T_mem_type(char()),
      @@ -1333,7 +1333,7 @@ inline bool write_strings(hid_t a_loc,const std::string& a_name,
       inline bool write_strings(hid_t a_loc,const std::string& a_name,
                                 const std::vector& a_strings,
                                 unsigned int a_chunked = 0,unsigned int a_compress = 0) {
      -  size_t sz;char* buffer;			  
      +  size_t sz;char* buffer;
         if(!tools::strings2buf(a_strings,sz,buffer)) return false;
         sz--;
         bool status = hdf5::write_array(a_loc,a_name,to_T_file_type(char()),to_T_mem_type(char()),
      @@ -1343,7 +1343,7 @@ inline bool write_strings(hid_t a_loc,const std::string& a_name,
       }
       
       inline bool write_append_strings(hid_t a_loc,const std::string& a_name,size_t a_number,const char** a_strings) {
      -  size_t sz;char* buffer;			  
      +  size_t sz;char* buffer;
         if(!tools::strings2buf(a_number,a_strings,sz,buffer)) return false;
         sz--;
         bool status = hdf5::write_append_array(a_loc,a_name,to_T_file_type(char()),to_T_mem_type(char()),(unsigned int)sz,buffer);
      @@ -1352,7 +1352,7 @@ inline bool write_append_strings(hid_t a_loc,const std::string& a_name,size_t a_
       }
       
       inline bool write_append_strings(hid_t a_loc,const std::string& a_name,const std::vector& a_strings) {
      -  size_t sz;char* buffer;			  
      +  size_t sz;char* buffer;
         if(!tools::strings2buf(a_strings,sz,buffer)) return false;
         sz--;
         bool status = hdf5::write_append_array(a_loc,a_name,to_T_file_type(char()),to_T_mem_type(char()),(unsigned int)sz,buffer);
      diff --git a/source/analysis/g4tools/include/tools/hdf5/group_exists b/source/analysis/g4tools/include/tools/hdf5/group_exists
      index ef723e94f0..bcfa7cbfea 100644
      --- a/source/analysis/g4tools/include/tools/hdf5/group_exists
      +++ b/source/analysis/g4tools/include/tools/hdf5/group_exists
      @@ -41,7 +41,7 @@ inline herr_t group_exists_visit(hid_t a_id,const char* a_name,void* a_tag){ //a
       inline bool group_exists(hid_t a_file_id,const std::string& a_name) {
         group_exists_struct visitor(a_name);
         ::H5Giterate(a_file_id,".",NULL,group_exists_visit,&visitor);
      -  return visitor.m_found;  
      +  return visitor.m_found;
       }
       
       }}
      diff --git a/source/analysis/g4tools/include/tools/hdf5/h2file b/source/analysis/g4tools/include/tools/hdf5/h2file
      index cc05a44c55..32e56981b2 100644
      --- a/source/analysis/g4tools/include/tools/hdf5/h2file
      +++ b/source/analysis/g4tools/include/tools/hdf5/h2file
      @@ -63,7 +63,7 @@ inline bool write_hdata(hid_t a_loc,const histo_data_t& a_hdata) {
         if(!write_std_vec(a_loc,"bin_Sw2",a_hdata.m_bin_Sw2)) return false;
         if(!write_std_vec_vec(a_loc,"bin_Sxw",a_hdata.m_bin_Sxw)) return false;
         if(!write_std_vec_vec(a_loc,"bin_Sx2w",a_hdata.m_bin_Sx2w)) return false;
      -  
      +
         // axes :
        {std::string name,saxis;
         for(unsigned int iaxis=0;iaxis(a_loc,name+"maximum_value",_axis.m_maximum_value)) return false;
           if(!write_scalar(a_loc,name+"fixed",_axis.m_fixed)) return false;
           if(!write_scalar(a_loc,name+"bin_width",_axis.m_bin_width)) return false;
      -    if(!write_std_vec(a_loc,name+"edges",_axis.m_edges)) return false;    
      +    if(!write_std_vec(a_loc,name+"edges",_axis.m_edges)) return false;
         }}
      -  
      +
         // etc :
         if(!write_std_vec(a_loc,"in_range_plane_Sxyw",a_hdata.m_in_range_plane_Sxyw)) return false;
      -  
      +
         // m_annotations :
         if(!write_std_map_ss(a_loc,"annotations",a_hdata.m_annotations)) return false;
      -  
      +
         return true;
       }
       
      @@ -116,7 +116,7 @@ inline bool write_histo(std::ostream& a_out,hid_t a_loc,const std::string& a_nam
         }
       
         if(!write_hdata(histo,a_histo.dac())) {::H5Gclose(histo);return false;}
      -  
      +
         ::H5Gclose(histo);
       
         a_histo.not_a_profile(); //trick to be sure to use this function on an histo and not a profile.
      @@ -151,7 +151,7 @@ inline bool write_profile(std::ostream& a_out,hid_t a_loc,const std::string& a_n
           return false;
         }
       
      -  typename PROFILE::pd_t pdata = a_histo.get_histo_data();  
      +  typename PROFILE::pd_t pdata = a_histo.get_histo_data();
       
         if(!write_hdata(histo,pdata)) {::H5Gclose(histo);return false;}
       
      @@ -175,10 +175,10 @@ inline bool read_hdata(hid_t a_loc,histo_data_t& a_hdata) {
         if(!read_std_vec(a_loc,"bin_entries",a_hdata.m_bin_entries)) return false;
         if(!read_std_vec(a_loc,"bin_Sw",a_hdata.m_bin_Sw)) return false;
         if(!read_std_vec(a_loc,"bin_Sw2",a_hdata.m_bin_Sw2)) return false;
      -  
      +
         if(!read_std_vec_vec(a_loc,"bin_Sxw",a_hdata.m_bin_Sxw)) return false;
         if(!read_std_vec_vec(a_loc,"bin_Sx2w",a_hdata.m_bin_Sx2w)) return false;
      -  
      +
         // axes :
        {a_hdata.m_axes.resize(a_hdata.m_dimension);
         std::string name,saxis;
      @@ -192,15 +192,15 @@ inline bool read_hdata(hid_t a_loc,histo_data_t& a_hdata) {
           if(!read_scalar(a_loc,name+"maximum_value",_axis.m_maximum_value)) return false;
           if(!read_scalar(a_loc,name+"fixed",_axis.m_fixed)) return false;
           if(!read_scalar(a_loc,name+"bin_width",_axis.m_bin_width)) return false;
      -    if(!read_std_vec(a_loc,name+"edges",_axis.m_edges)) return false;    
      +    if(!read_std_vec(a_loc,name+"edges",_axis.m_edges)) return false;
         }}
      -  
      +
         // etc :
         if(!read_std_vec(a_loc,"in_range_plane_Sxyw",a_hdata.m_in_range_plane_Sxyw)) return false;
      -  
      +
         // m_annotations :
         if(!read_std_map_ss(a_loc,"annotations",a_hdata.m_annotations)) return false;
      -  
      +
         return true;
       }
       
      @@ -227,11 +227,11 @@ inline bool read_histo(std::ostream& a_out,hid_t a_loc,const std::string& a_name
           if(a_verb_class) {
             a_out << "tools::hdf5::read_histo :"
                   << " read class " << tools::sout(sclass) << " not " << tools::sout(HISTO::s_class()) << std::endl;
      -    }	    
      +    }
           ::H5Gclose(histo);
           return false;
         }
      -  
      +
         int v;
         if(!read_atb(histo,"version",v)) {
           a_out << "tools::hdf5::read_histo : read_atb version failed." << std::endl;
      @@ -244,9 +244,9 @@ inline bool read_histo(std::ostream& a_out,hid_t a_loc,const std::string& a_name
         if(!read_hdata(histo,hdata)) {::H5Gclose(histo);return false;}
       
         ::H5Gclose(histo);
      -  
      +
         hdata.update_fast_getters();
      -  
      +
         a_histo = new HISTO;
         a_histo->copy_from_data(hdata);
         a_histo->not_a_profile(); //trick to be sure to use this function on an histo and not a profile.
      @@ -278,7 +278,7 @@ inline bool read_profile(std::ostream& a_out,hid_t a_loc,const std::string& a_na
           ::H5Gclose(histo);
           return false;
         }
      -  
      +
         int v;
         if(!read_atb(histo,"version",v)) {
           a_out << "tools::hdf5::read_profile : read_atb version failed." << std::endl;
      @@ -298,9 +298,9 @@ inline bool read_profile(std::ostream& a_out,hid_t a_loc,const std::string& a_na
         if(!read_scalar(histo,"max_v",pdata.m_max_v)) {::H5Gclose(histo);return false;}
       
         ::H5Gclose(histo);
      -  
      +
         pdata.update_fast_getters();
      -  
      +
         a_histo = new PROFILE;
         a_histo->copy_from_data(pdata);
         return true;
      diff --git a/source/analysis/g4tools/include/tools/hdf5/hdf5_h b/source/analysis/g4tools/include/tools/hdf5/hdf5_h
      index 0c04228f50..86b9473b13 100644
      --- a/source/analysis/g4tools/include/tools/hdf5/hdf5_h
      +++ b/source/analysis/g4tools/include/tools/hdf5/hdf5_h
      @@ -20,6 +20,7 @@
       #define tools_H5Gcreate         H5Gcreate
       #define tools_H5Gopen           H5Gopen
       #define tools_H5Aiterate        H5Aiterate
      +#define tools_H5free_memory     free
       #else
       #define tools_H5Dopen           H5Dopen1
       #define tools_H5Dcreate         H5Dcreate1
      @@ -29,6 +30,7 @@
       #define tools_H5Gcreate         H5Gcreate1
       #define tools_H5Gopen           H5Gopen1
       #define tools_H5Aiterate        H5Aiterate1
      +#define tools_H5free_memory     H5free_memory
       #endif
       
       #endif
      diff --git a/source/analysis/g4tools/include/tools/hdf5/header b/source/analysis/g4tools/include/tools/hdf5/header
      index 289819f5e1..b10f54693a 100644
      --- a/source/analysis/g4tools/include/tools/hdf5/header
      +++ b/source/analysis/g4tools/include/tools/hdf5/header
      @@ -30,8 +30,8 @@ inline bool read_header(hid_t a_file,std::string& a_writer,int& a_data_schema_ve
         }
         ::H5Gclose(header);
         return true;
      -} 
      -  
      +}
      +
       }}
       
       #endif
      diff --git a/source/analysis/g4tools/include/tools/hdf5/ntuple b/source/analysis/g4tools/include/tools/hdf5/ntuple
      index 7b336b2a91..6afce08896 100644
      --- a/source/analysis/g4tools/include/tools/hdf5/ntuple
      +++ b/source/analysis/g4tools/include/tools/hdf5/ntuple
      @@ -90,14 +90,14 @@ public:
                 m_basket_pos = 0;
                 m_basket_end = 0;
                 return false;
      -	}	
      +	}
       	if(m_want_new_basket_size) {
       	  delete [] m_basket;
       	  m_basket = new T[m_want_new_basket_size];
       	  m_basket_pos = 0;
       	  m_basket_size = m_want_new_basket_size;
       	  m_want_new_basket_size = 0;
      -	}	
      +	}
               tools::uint64 remain = m_branch.entries()-m_branch.pos();
               size_t n = tools::mn((size_t)remain,m_basket_size);
               if(!m_branch.read_page(n,m_basket)) {
      @@ -107,7 +107,7 @@ public:
                 return false;
               }
               m_basket_pos = 0;
      -        m_basket_end = n;	
      +        m_basket_end = n;
             }
             m_ref = m_basket[m_basket_pos];
             m_basket_pos++;
      @@ -182,7 +182,7 @@ public:
             if(&a_from==this) return *this;
             m_name = a_from.m_name;
             m_basket_size = a_from.m_basket_size;
      -      m_basket_pos = 0;      
      +      m_basket_pos = 0;
             m_basket_end = 0;
             m_want_new_basket_size = 0;
             return *this;
      @@ -257,9 +257,9 @@ public:
         TOOLS_CLASS_STRING_VALUE(vector_int,vector)
         TOOLS_CLASS_STRING_VALUE(vector_float,vector)
         TOOLS_CLASS_STRING_VALUE(vector_double,vector)
      -  
      +
         TOOLS_CLASS_STRING_VALUE(string,string)
      -  
      +
         TOOLS_CLASS_STRING_VALUE(vector_int64,vector)
         TOOLS_CLASS_STRING_VALUE(vector_uchar,vector)
         TOOLS_CLASS_STRING_VALUE(vector_ushort,vector)
      @@ -434,7 +434,7 @@ public:
             m_name = a_from.m_name;
             return *this;
           }
      -  public:    
      +  public:
           //const std::vector& ref() const {return m_ref;}
         protected:
           std::vector& m_ref;
      @@ -472,7 +472,7 @@ public:
             parent::operator=(a_from);
             return *this;
           }
      -  public:    
      +  public:
           //bool get_entry(std::vector& a_v) const {
           //  a_v = m_tmp;
           //  return true;
      @@ -635,7 +635,7 @@ public:
             m_name = a_from.m_name;
             return *this;
           }
      -  public:    
      +  public:
           //const std::string& ref() const {return m_ref;}
         protected:
           std::string& m_ref;
      @@ -687,7 +687,7 @@ public:
         protected:
           std::string m_tmp;
         };
      -  
      +
       public:
         ntuple(std::ostream& a_out,hid_t a_group,const std::string& a_name,
                unsigned int a_compress,size_t /*a_basket_size*//* = 32000*/)
      @@ -712,22 +712,22 @@ public:
               if(!col) {tools::safe_clear(m_cols);return;}\
               m_cols.push_back(col);\
             }
      -	
      +
                  TOOLS_HDF5_NTUPLE_READ_CREATE_COL(char)
             else TOOLS_HDF5_NTUPLE_READ_CREATE_COL(short)
             else TOOLS_HDF5_NTUPLE_READ_CREATE_COL(int)
             else TOOLS_HDF5_NTUPLE_READ_CREATE_COL(tools::int64)
      -      
      +
             else TOOLS_HDF5_NTUPLE_READ_CREATE_COL(float)
             else TOOLS_HDF5_NTUPLE_READ_CREATE_COL(double)
      -      
      -      else TOOLS_HDF5_NTUPLE_READ_CREATE_COL(tools::byte)      
      +
      +      else TOOLS_HDF5_NTUPLE_READ_CREATE_COL(tools::byte)
             else TOOLS_HDF5_NTUPLE_READ_CREATE_COL(tools::ushort)
             else TOOLS_HDF5_NTUPLE_READ_CREATE_COL(tools::uint32)
             else TOOLS_HDF5_NTUPLE_READ_CREATE_COL(tools::uint64)
       
           //else TOOLS_HDF5_NTUPLE_READ_CREATE_COL(bool) //use byte=uchar.
      -    
      +
             else
             if((*it)->form()==s_string()) {
               column_string* col = new column_string(*this,*(*it),false,(*it)->name(),0);
      @@ -739,10 +739,10 @@ public:
             else TOOLS_HDF5_NTUPLE_READ_CREATE_VEC_COL(short,short)
             else TOOLS_HDF5_NTUPLE_READ_CREATE_VEC_COL(int,int)
             else TOOLS_HDF5_NTUPLE_READ_CREATE_VEC_COL(int64,tools::int64)
      -      
      +
             else TOOLS_HDF5_NTUPLE_READ_CREATE_VEC_COL(float,float)
             else TOOLS_HDF5_NTUPLE_READ_CREATE_VEC_COL(double,double)
      -      
      +
             else TOOLS_HDF5_NTUPLE_READ_CREATE_VEC_COL(uchar,tools::uchar)
             else TOOLS_HDF5_NTUPLE_READ_CREATE_VEC_COL(ushort,tools::ushort)
             else TOOLS_HDF5_NTUPLE_READ_CREATE_VEC_COL(uint32,tools::uint32)
      @@ -771,11 +771,11 @@ public:
           if(!initialize(a_out,a_bd)) {}
         }
       
      -  ntuple(std::ostream& a_out,hid_t a_group,const tools::ntuple_booking& a_bkg,  
      +  ntuple(std::ostream& a_out,hid_t a_group,const tools::ntuple_booking& a_bkg,
                unsigned int a_compress,size_t a_basket_size/* = 32000*/)
         :store(a_out,a_group,a_bkg.name(),true,a_compress) //true=write
         ,m_title(a_bkg.title())
      -  {    
      +  {
           const std::vector& cols = a_bkg.columns();
           tools_vforcit(tools::column_booking,cols,it){
       
      @@ -820,22 +820,22 @@ public:
                 return;\
       	}\
             }
      -      
      +
                  TOOLS_HDF5_NTUPLE_CREATE_COL(char)
             else TOOLS_HDF5_NTUPLE_CREATE_COL(short)
             else TOOLS_HDF5_NTUPLE_CREATE_COL(int)
             else TOOLS_HDF5_NTUPLE_CREATE_COL(tools::int64)
      -      
      +
             else TOOLS_HDF5_NTUPLE_CREATE_COL(float)
             else TOOLS_HDF5_NTUPLE_CREATE_COL(double)
      -      
      -      else TOOLS_HDF5_NTUPLE_CREATE_COL(tools::byte)      
      +
      +      else TOOLS_HDF5_NTUPLE_CREATE_COL(tools::byte)
             else TOOLS_HDF5_NTUPLE_CREATE_COL(tools::ushort)
             else TOOLS_HDF5_NTUPLE_CREATE_COL(tools::uint32)
             else TOOLS_HDF5_NTUPLE_CREATE_COL(tools::uint64)
       
           //else TOOLS_HDF5_NTUPLE_CREATE_COL(bool) //use byte=uchar.
      -    
      +
             else if((*it).cls_id()==tools::_cid(std::string())) {
               if(!create_column_string((*it).name(),a_basket_size)) {
                 m_out << "tools::hdf5::ntuple :"
      @@ -849,10 +849,10 @@ public:
             else TOOLS_HDF5_NTUPLE_CREATE_VEC_COL(short)
             else TOOLS_HDF5_NTUPLE_CREATE_VEC_COL(int)
             else TOOLS_HDF5_NTUPLE_CREATE_VEC_COL(tools::int64)
      -      
      +
             else TOOLS_HDF5_NTUPLE_CREATE_VEC_COL(float)
             else TOOLS_HDF5_NTUPLE_CREATE_VEC_COL(double)
      -      
      +
             else TOOLS_HDF5_NTUPLE_CREATE_VEC_COL(tools::uchar)
             else TOOLS_HDF5_NTUPLE_CREATE_VEC_COL(tools::ushort)
             else TOOLS_HDF5_NTUPLE_CREATE_VEC_COL(tools::uint32)
      @@ -868,7 +868,7 @@ public:
                     << std::endl;
               tools::safe_clear(m_cols);
               return;
      -      }      
      +      }
           }
       #undef TOOLS_HDF5_NTUPLE_CREATE_COL
       #undef TOOLS_HDF5_NTUPLE_CREATE_VEC_COL
      @@ -885,9 +885,9 @@ public:
         bool initialize(std::ostream& a_out,const tools::ntuple_binding& a_bd = tools::ntuple_binding()) {
           tools::safe_clear(m_cols);
          {tools_vforcit(pages*,m_pagess,it) (*it)->reset_pos();}
      -    
      +
           tools_vforcit(pages*,m_pagess,it) {
      -    
      +
       #define TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_COL(a__type) \
             if((*it)->form()==tools::stype(a__type())) {\
               a__type* user_var = a_bd.find_variable((*it)->name());\
      @@ -901,7 +901,7 @@ public:
                 m_cols.push_back(col);\
       	}\
             }
      -	
      +
       #define TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_VEC_COL(a__vec_type,a__type) \
             if((*it)->form()==s_vector_##a__vec_type()) {\
               std::vector* user_var = a_bd.find_variable< std::vector >((*it)->name());\
      @@ -921,17 +921,17 @@ public:
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_COL(short)
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_COL(int)
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_COL(tools::int64)
      -      
      +
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_COL(float)
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_COL(double)
      -      
      -      else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_COL(tools::byte)      
      +
      +      else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_COL(tools::byte)
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_COL(tools::ushort)
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_COL(tools::uint32)
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_COL(tools::uint64)
       
           //else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_COL(bool) //use byte=uchar.
      -    
      +
             else
             if((*it)->form()==s_string()) {
               std::string* user_var = a_bd.find_variable((*it)->name());
      @@ -945,15 +945,15 @@ public:
                 m_cols.push_back(col);
               }
             }
      -      
      +
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_VEC_COL(char,char)
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_VEC_COL(short,short)
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_VEC_COL(int,int)
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_VEC_COL(int64,tools::int64)
      -      
      +
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_VEC_COL(float,float)
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_VEC_COL(double,double)
      -      
      +
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_VEC_COL(uchar,tools::uchar)
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_VEC_COL(ushort,tools::ushort)
             else TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_VEC_COL(uint32,tools::uint32)
      @@ -975,9 +975,9 @@ public:
       #undef TOOLS_HDF5_NTUPLE_READ_BINDING_CREATE_VEC_COL
           return true;
         }
      -  
      +
         const std::string& title() const {return m_title;}
      -  
      +
         const std::vector& columns() const {return m_cols;}
         std::vector& columns() {return m_cols;}
       
      @@ -1024,7 +1024,7 @@ public:
           m_cols.push_back(col);
           return col;
         }
      -  
      +
         template 
         column_ref* find_column_ref(const std::string& a_name) {
           icol* col = tools::find_named(m_cols,a_name);
      @@ -1037,7 +1037,7 @@ public:
           if(!col) return 0;
           return tools::id_cast >(*col);
         }
      -  
      +
         template 
         std_vector_column_ref* find_std_vector_column_ref(const std::string& a_name) {
           icol* col = tools::find_named(m_cols,a_name);
      @@ -1050,13 +1050,13 @@ public:
           if(!col) return 0;
           return tools::id_cast >(*col);
         }
      -  
      +
         column_string* find_column_string(const std::string& a_name) {
           icol* col = tools::find_named(m_cols,a_name);
           if(!col) return 0;
           return tools::id_cast(*col);
         }
      -  
      +
         bool add_row() { //write.
           if(m_cols.empty()) return false;
           bool status = true;
      @@ -1074,7 +1074,7 @@ public:
           }
           return status;
         }
      -  
      +
         bool set_basket_size(size_t a_size) {
           tools_vforit(icol*,m_cols,it) {if(!(*it)->set_basket_size(a_size)) return false;}
           return true;
      diff --git a/source/analysis/g4tools/include/tools/hdf5/pages b/source/analysis/g4tools/include/tools/hdf5/pages
      index 754147a81d..349ab0b9a7 100644
      --- a/source/analysis/g4tools/include/tools/hdf5/pages
      +++ b/source/analysis/g4tools/include/tools/hdf5/pages
      @@ -64,7 +64,7 @@ public:
       	return;
             }
             if(!read_scalar(m_group,s_entries(),m_entries)) {
      -        m_out << "pages::pages : read_scalar(entries) failed." << std::endl;    
      +        m_out << "pages::pages : read_scalar(entries) failed." << std::endl;
               ::H5Gclose(m_group);
               m_group = -1;
       	return;
      @@ -76,7 +76,7 @@ public:
             if(!write_scalar(m_group,s_entries(),m_entries)) {
               m_out << "pages::~pages : write_scalar(entries) failed." << std::endl;
             }
      -      if(m_dataset>=0) ::H5Dclose(m_dataset);                 
      +      if(m_dataset>=0) ::H5Dclose(m_dataset);
           }
           ::H5Gclose(m_group);
       #ifdef TOOLS_MEM
      @@ -92,7 +92,7 @@ protected:
         pages& operator=(const pages&){return *this;}
       public:
         bool is_valid() const {return m_group<0?false:true;}
      -  
      +
         const std::string& name() const {return m_name;}
         const std::string& form() const {return m_form;}
         //int type() const {return m_type;}
      @@ -100,7 +100,7 @@ public:
         tools::uint64 entries() const {return m_entries;}
         tools::uint64 pos() const {return m_pos;}
         void reset_pos() {m_pos = 0;}
      -  
      +
         template 
         bool write_page(size_t a_size,const TYPE* a_array) {
           if(!m_pos) {
      @@ -123,7 +123,7 @@ public:
           m_entries = m_pos;
           return true;
         }
      -  
      +
         template 
         bool read_page(size_t a_size,TYPE* a_array) {
           //it is assumed that a_array can contain a_size*sizeof(TYPE) bytes.
      @@ -144,7 +144,7 @@ public:
           TYPE* wpos = (TYPE*)a_array;
           for(size_t i=0;i(a_string.size(),a_string.c_str());}
       
      @@ -234,15 +234,15 @@ public:
           delete [] _data;
           return true;
         }
      -*/  
      -  
      +*/
      +
       /*
         bool write_strings(size_t a_number,void* a_array) {
           size_t sz = m_size*a_number;
           char* buffer = new char[sz];
          {char* pos = buffer;
      -    for(size_t index=0;indexA strings.
             if(!write_array(m_group,s_pages(),sz,buffer,chunked,m_compress)) {
               m_out << "pages::write_strings : write_strings() failed. Pos " << m_pos << std::endl;
      @@ -295,11 +295,11 @@ public:
             ::memcpy(strings[index],pos,m_size*sizeof(char));
             pos += m_size;
           }}
      -    delete [] array;    
      +    delete [] array;
           m_pos += n;
           return true;
         }
      -*/  
      +*/
       protected:
         std::ostream& m_out;
         std::string m_name;
      diff --git a/source/analysis/g4tools/include/tools/hdf5/store b/source/analysis/g4tools/include/tools/hdf5/store
      index e476dd1ebc..6ef1d000cb 100644
      --- a/source/analysis/g4tools/include/tools/hdf5/store
      +++ b/source/analysis/g4tools/include/tools/hdf5/store
      @@ -153,7 +153,7 @@ protected:
       public:
         std::ostream& out() const {return m_out;}
         //bool fill(tools::uint32 &a_n){a_n = 0;return true;}
      -  
      +
         bool entries(tools::uint64& a_entries) const {
           if(m_pagess.empty()) {a_entries = 0;return true;}
           a_entries = m_pagess.front()->entries();
      @@ -165,9 +165,9 @@ public:
       	return false;
             }
           }
      -    return true;    
      +    return true;
         }
      -  
      +
         pages* create_pages(const std::string& a_name,const std::string& a_form) {
           //::printf("debug : create_pages %s %s\n",a_name.c_str(),a_form.c_str());
           pages* _pages = new pages(m_out,m_group,a_name,a_form,m_write,m_compress);
      diff --git a/source/analysis/g4tools/include/tools/hdf5/tools b/source/analysis/g4tools/include/tools/hdf5/tools
      index 593a678e3b..90218ef776 100644
      --- a/source/analysis/g4tools/include/tools/hdf5/tools
      +++ b/source/analysis/g4tools/include/tools/hdf5/tools
      @@ -127,20 +127,20 @@ inline hid_t compound_mem_type(hid_t a_file_type){
           //printf("debug : members :   %d (%d) : %s : begin\n",index,mn,mname);
       
          {H5T_class_t mclass = H5Tget_class(mtype);
      -    if( (mclass==H5T_INTEGER) || 
      +    if( (mclass==H5T_INTEGER) ||
               (mclass==H5T_STRING)  ||
               (mclass==H5T_FLOAT)   ) {
             hid_t mmem_type = basic_mem_type(mtype);
             if(mmem_type<0) {
               ::H5Tclose(mtype);
      -        if(mname) ::free(mname);
      +        if(mname) tools_H5free_memory(mname);
               ::H5Tclose(mem_type);
               return failure();
             }
             if(H5Tinsert(mem_type,mname,moffset,mmem_type)<0) {
               ::H5Tclose(mmem_type);
               ::H5Tclose(mtype);
      -        if(mname) ::free(mname);
      +        if(mname) tools_H5free_memory(mname);
               ::H5Tclose(mem_type);
               return failure();
             }
      @@ -154,7 +154,7 @@ inline hid_t compound_mem_type(hid_t a_file_type){
               delete [] dims;
               delete [] perms;
               ::H5Tclose(mtype);
      -        if(mname) ::free(mname);
      +        if(mname) tools_H5free_memory(mname);
               ::H5Tclose(mem_type);
               return failure();
             }
      @@ -163,7 +163,7 @@ inline hid_t compound_mem_type(hid_t a_file_type){
               delete [] dims;
               delete [] perms;
               ::H5Tclose(mtype);
      -        if(mname) ::free(mname);
      +        if(mname) tools_H5free_memory(mname);
               ::H5Tclose(mem_type);
               return failure();
             }
      @@ -173,7 +173,7 @@ inline hid_t compound_mem_type(hid_t a_file_type){
               delete [] perms;
               ::H5Tclose(base_type);
               ::H5Tclose(mtype);
      -        if(mname) ::free(mname);
      +        if(mname) tools_H5free_memory(mname);
               ::H5Tclose(mem_type);
               return failure();
             }
      @@ -184,7 +184,7 @@ inline hid_t compound_mem_type(hid_t a_file_type){
             if(array_type<0) {
               ::H5Tclose(mmem_type);
               ::H5Tclose(mtype);
      -        if(mname) ::free(mname);
      +        if(mname) tools_H5free_memory(mname);
               ::H5Tclose(mem_type);
               return failure();
             }
      @@ -193,7 +193,7 @@ inline hid_t compound_mem_type(hid_t a_file_type){
             if(H5Tinsert(mem_type,mname,moffset,array_type)<0) {
               ::H5Tclose(array_type);
               ::H5Tclose(mtype);
      -        if(mname) ::free(mname);
      +        if(mname) tools_H5free_memory(mname);
               ::H5Tclose(mem_type);
               return failure();
             }
      @@ -203,27 +203,27 @@ inline hid_t compound_mem_type(hid_t a_file_type){
             hid_t mmem_type = compound_mem_type(mtype);
             if(mem_type<0) {
               ::H5Tclose(mtype);
      -        if(mname) ::free(mname);
      +        if(mname) tools_H5free_memory(mname);
               ::H5Tclose(mem_type);
               return failure();
             }
             if(H5Tinsert(mem_type,mname,moffset,mmem_type)<0) {
               ::H5Tclose(mmem_type);
               ::H5Tclose(mtype);
      -        if(mname) ::free(mname);
      +        if(mname) tools_H5free_memory(mname);
               ::H5Tclose(mem_type);
               return failure();
             }
             ::H5Tclose(mmem_type);
           } else {
             ::H5Tclose(mtype);
      -      if(mname) ::free(mname);
      +      if(mname) tools_H5free_memory(mname);
             ::H5Tclose(mem_type);
             return failure();
           }}
           ::H5Tclose(mtype);
           //printf("debug : compound_mem_type :   %d (%d) : %s : end\n",index,mn,mname);
      -    if(mname) ::free(mname);
      +    if(mname) tools_H5free_memory(mname);
         }
       
         return mem_type;
      @@ -323,7 +323,7 @@ inline bool write_atb(hid_t a_id,const std::string& a_name,const std::string& a_
         if(has_attr==1)  {
           if(H5Adelete(a_id,a_name.c_str())<0) return false;
         }
      -    
      +
         hid_t datatype = string_datatype(a_data.size()+1);
         if(datatype<0) return false;
       
      @@ -332,28 +332,28 @@ inline bool write_atb(hid_t a_id,const std::string& a_name,const std::string& a_
           ::H5Tclose(datatype);
           return false;
         }
      -    
      +
         hid_t aid = tools_H5Acreate(a_id,a_name.c_str(),datatype,scalar,H5P_DEFAULT);
         if(aid<0) {
           ::H5Sclose(scalar);
           ::H5Tclose(datatype);
           return false;
         }
      -    
      +
         if(H5Awrite(aid,datatype,a_data.c_str())<0) {
           ::H5Aclose(aid);
           ::H5Sclose(scalar);
           ::H5Tclose(datatype);
           return false;
         }
      -    
      +
         ::H5Aclose(aid);
         ::H5Sclose(scalar);
         ::H5Tclose(datatype);
      -    
      +
         return true;
       }
      -    
      +
       inline bool write_bool(hid_t a_loc,const std::string& a_name,bool a_data) {
         hid_t scalar = ::H5Screate(H5S_SCALAR);
         if(scalar<0) return false;
      @@ -363,7 +363,7 @@ inline bool write_bool(hid_t a_loc,const std::string& a_name,bool a_data) {
           ::H5Sclose(scalar);
           return false;
         }
      -  if(H5Pset_layout(compact,H5D_COMPACT)<0) { 
      +  if(H5Pset_layout(compact,H5D_COMPACT)<0) {
           ::H5Pclose(compact);
           ::H5Sclose(scalar);
           return false;
      @@ -375,21 +375,21 @@ inline bool write_bool(hid_t a_loc,const std::string& a_name,bool a_data) {
           ::H5Sclose(scalar);
           return false;
         }
      -  
      +
         unsigned char data = a_data?1:0;
         if(::H5Dwrite(dataset,H5T_NATIVE_UCHAR,H5S_ALL,H5S_ALL,H5P_DEFAULT,&data)<0) {
           ::H5Pclose(compact);
           ::H5Sclose(scalar);
      -    ::H5Dclose(dataset);                 
      +    ::H5Dclose(dataset);
           return false;
         }
      -  
      +
         ::H5Pclose(compact);
         ::H5Sclose(scalar);
      -  ::H5Dclose(dataset);                 
      +  ::H5Dclose(dataset);
         return true;
       }
      -  
      +
       inline bool write_string(hid_t a_loc,const std::string& a_name,const std::string& a_string) {
         hid_t scalar = ::H5Screate(H5S_SCALAR);
         if(scalar<0) return false;
      @@ -400,7 +400,7 @@ inline bool write_string(hid_t a_loc,const std::string& a_name,const std::string
           return false;
         }
       
      -  if(H5Pset_layout(compact,H5D_COMPACT)<0) { 
      +  if(H5Pset_layout(compact,H5D_COMPACT)<0) {
           ::H5Pclose(compact);
           ::H5Sclose(scalar);
           return false;
      @@ -413,7 +413,7 @@ inline bool write_string(hid_t a_loc,const std::string& a_name,const std::string
           ::H5Sclose(scalar);
           return false;
         }
      -  
      +
         hid_t dataset = tools_H5Dcreate(a_loc,a_name.c_str(),file_type,scalar,compact);
         if(dataset<0) {
           ::H5Pclose(compact);
      @@ -421,21 +421,21 @@ inline bool write_string(hid_t a_loc,const std::string& a_name,const std::string
           ::H5Tclose(file_type);
           return false;
         }
      -  
      +
         hid_t mem_type = file_type;
         if(H5Dwrite(dataset,mem_type,H5S_ALL,H5S_ALL,H5P_DEFAULT,a_string.c_str())<0) {
           ::H5Pclose(compact);
           ::H5Sclose(scalar);
      -    ::H5Dclose(dataset);                 
      +    ::H5Dclose(dataset);
           ::H5Tclose(file_type);
           return false;
         }
      -  
      +
         ::H5Pclose(compact);
         ::H5Sclose(scalar);
      -  ::H5Dclose(dataset);                 
      +  ::H5Dclose(dataset);
         ::H5Tclose(file_type);
      -  
      +
         return true;
       }
       
      @@ -447,7 +447,7 @@ inline bool write_string_dataset(hid_t a_loc,const std::string& a_name,
           cpt = ::H5Pcreate(H5P_DATASET_CREATE);
           if(cpt<0) return false;
           if(a_chunked) {
      -      if(H5Pset_layout(cpt,H5D_CHUNKED)<0) { 
      +      if(H5Pset_layout(cpt,H5D_CHUNKED)<0) {
               ::H5Pclose(cpt);
               return false;
             }
      @@ -458,7 +458,7 @@ inline bool write_string_dataset(hid_t a_loc,const std::string& a_name,
               return false;
             }
           } else {
      -      if(H5Pset_layout(cpt,H5D_COMPACT)<0) { 
      +      if(H5Pset_layout(cpt,H5D_COMPACT)<0) {
               ::H5Pclose(cpt);
               return false;
             }
      @@ -485,9 +485,9 @@ inline bool write_string_dataset(hid_t a_loc,const std::string& a_name,
         if(a_chunked) {
           hsize_t mx_dims[1];
           mx_dims[0] = H5S_UNLIMITED; //extendable.
      -    file_space = ::H5Screate_simple(1,dims,mx_dims); 
      +    file_space = ::H5Screate_simple(1,dims,mx_dims);
         } else {
      -    file_space = ::H5Screate_simple(1,dims,NULL); 
      +    file_space = ::H5Screate_simple(1,dims,NULL);
         }
         if(file_space<0) {if(cpt>=0) ::H5Pclose(cpt);::H5Tclose(file_type);return false;}}
       
      @@ -500,16 +500,16 @@ inline bool write_string_dataset(hid_t a_loc,const std::string& a_name,
         }
       
         hid_t mem_type = file_type;
      -  
      +
         const char* wdata[1];
         wdata[0] = a_string.c_str();
      -  
      +
         if(H5Dwrite(dataset,mem_type,H5S_ALL,H5S_ALL,H5P_DEFAULT,wdata)<0) {
      -    ::H5Dclose(dataset);                 
      +    ::H5Dclose(dataset);
           ::H5Tclose(file_type);
           return false;
         }
      -  
      +
         ::H5Tclose(file_type);
         ::H5Dclose(dataset);
       
      @@ -525,8 +525,8 @@ inline bool write_string_dataset(hid_t a_loc,const std::string& a_name,
       inline bool write_append_string_dataset(hid_t a_dataset,const std::string& a_string) {
         hsize_t old_size = 0;
       
      - {hid_t dataspace = H5Dget_space(a_dataset); 
      -  if(dataspace<0) return false;  
      + {hid_t dataspace = H5Dget_space(a_dataset);
      +  if(dataspace<0) return false;
         hsize_t dims[1];
         if(H5Sget_simple_extent_dims(dataspace,dims,NULL)<0) {
           ::H5Sclose(dataspace);
      @@ -534,13 +534,13 @@ inline bool write_append_string_dataset(hid_t a_dataset,const std::string& a_str
         }
         old_size = dims[0];
         ::H5Sclose(dataspace);}
      -  
      +
        {hsize_t exts[1];
         exts[0] = old_size+1;
       //  if(H5Dextend(dataset,exts)<0) {
         if(H5Dset_extent(a_dataset,exts)<0) return false;}
       
      -  hid_t file_space = H5Dget_space(a_dataset); 
      +  hid_t file_space = H5Dget_space(a_dataset);
         if(file_space<0) return false;
       
        {hsize_t offset[1];
      @@ -554,7 +554,7 @@ inline bool write_append_string_dataset(hid_t a_dataset,const std::string& a_str
       
         hsize_t dims[1];
         dims[0] = 1;
      -  hid_t mem_space = ::H5Screate_simple(1,dims,NULL); 
      +  hid_t mem_space = ::H5Screate_simple(1,dims,NULL);
         if(mem_space<0) {
           ::H5Sclose(file_space);
           return false;
      @@ -566,10 +566,10 @@ inline bool write_append_string_dataset(hid_t a_dataset,const std::string& a_str
           ::H5Sclose(file_space);
           return false;
         }
      -  
      +
         const char* wdata[1];
         wdata[0] = a_string.c_str();
      -  
      +
         if(H5Dwrite(a_dataset,mem_type,mem_space,file_space,H5P_DEFAULT,wdata)<0) {
           ::H5Tclose(mem_type);
           ::H5Sclose(mem_space);
      @@ -602,14 +602,14 @@ inline bool write_array_string(hid_t a_loc,const std::string& a_name,const std::
           ::H5Sclose(scalar);
           return false;
         }
      -    
      +
         hid_t file_type = string_datatype(sz);
         if(file_type<0) {
           delete [] buffer;
           ::H5Sclose(scalar);
           return false;
         }
      -  
      +
         hid_t dataset = tools_H5Dcreate(a_loc,a_name.c_str(),file_type,scalar,H5P_DEFAULT);
         if(dataset<0) {
           delete [] buffer;
      @@ -617,19 +617,19 @@ inline bool write_array_string(hid_t a_loc,const std::string& a_name,const std::
           ::H5Sclose(scalar);
           return false;
         }
      -  
      +
         hid_t mem_type = file_type;
         if(H5Dwrite(dataset,mem_type,H5S_ALL,H5S_ALL,H5P_DEFAULT,buffer)<0) {
           delete [] buffer;
      -    ::H5Dclose(dataset);                 
      +    ::H5Dclose(dataset);
           ::H5Tclose(file_type);
           ::H5Sclose(scalar);
           return false;
         }
      -  
      +
         delete [] buffer;
       
      -  ::H5Dclose(dataset);                 
      +  ::H5Dclose(dataset);
         ::H5Tclose(file_type);
         ::H5Sclose(scalar);
         return true;
      @@ -644,7 +644,7 @@ inline bool write_object(hid_t a_loc,const std::string& a_name,hid_t a_file_type
           cpt = ::H5Pcreate(H5P_DATASET_CREATE);
           if(cpt<0) return false;
           if(chunked) {
      -      if(H5Pset_layout(cpt,H5D_CHUNKED)<0) { 
      +      if(H5Pset_layout(cpt,H5D_CHUNKED)<0) {
               ::H5Pclose(cpt);
               return false;
             }
      @@ -655,7 +655,7 @@ inline bool write_object(hid_t a_loc,const std::string& a_name,hid_t a_file_type
               return false;
             }
           } else {
      -      if(H5Pset_layout(cpt,H5D_COMPACT)<0) { 
      +      if(H5Pset_layout(cpt,H5D_COMPACT)<0) {
               ::H5Pclose(cpt);
               return false;
             }
      @@ -669,7 +669,7 @@ inline bool write_object(hid_t a_loc,const std::string& a_name,hid_t a_file_type
         } else {
           cpt = H5P_DEFAULT;
         }
      -  
      +
         hsize_t dims[1];
         dims[0] = 1;
         hid_t simple = ::H5Screate_simple(1,dims,NULL);
      @@ -684,31 +684,31 @@ inline bool write_object(hid_t a_loc,const std::string& a_name,hid_t a_file_type
           if(cpt>=0) ::H5Pclose(cpt);
           return false;
         }
      -  
      +
         hid_t dataset = tools_H5Dcreate(a_loc,a_name.c_str(),a_file_type,simple,cpt);
         if(dataset<0) {
      -    ::H5Tclose(mem_type);                 
      +    ::H5Tclose(mem_type);
           ::H5Sclose(simple);
           if(cpt>=0) ::H5Pclose(cpt);
           return false;
         }
      -  
      +
         if(H5Dwrite(dataset,mem_type,H5S_ALL,H5S_ALL,H5P_DEFAULT,a_data)<0) {
      -    ::H5Dclose(dataset);                 
      -    ::H5Tclose(mem_type);                 
      +    ::H5Dclose(dataset);
      +    ::H5Tclose(mem_type);
           ::H5Sclose(simple);
           if(cpt>=0) ::H5Pclose(cpt);
           return false;
         }
      -  
      -  ::H5Dclose(dataset);                 
      -  ::H5Tclose(mem_type);                 
      +
      +  ::H5Dclose(dataset);
      +  ::H5Tclose(mem_type);
         ::H5Sclose(simple);
         if(cpt>=0) ::H5Pclose(cpt);
       
         return true;
       }
      -  
      +
       inline bool read_string(hid_t a_loc,const std::string& a_name,std::string& a_string) {
         // From H5LTread_dataset_string.
         hid_t dataset = tools_H5Dopen(a_loc,a_name.c_str());
      @@ -731,7 +731,7 @@ inline bool read_string(hid_t a_loc,const std::string& a_name,std::string& a_str
           a_string.clear();
           return false;
         }
      -  
      +
         size_t sz = H5Tget_size(file_type);
         ::H5Tclose(file_type);
         if(!sz) {
      @@ -740,7 +740,7 @@ inline bool read_string(hid_t a_loc,const std::string& a_name,std::string& a_str
           return false;
         }
       
      -  // We could have use file_type since, for string, 
      +  // We could have use file_type since, for string,
         // file type is the same than memory type.
         hid_t mem_type = string_datatype(sz);
         if(mem_type<0) {
      @@ -813,7 +813,7 @@ inline bool read_sub_string(hid_t a_loc,const std::string& a_name,unsigned int a
         }
       
         //  abcdef
      -  //  012345 
      +  //  012345
         int remain = sz-a_offset;
         if(remain<=0) {
           ::H5Sclose(file_space);
      @@ -821,7 +821,7 @@ inline bool read_sub_string(hid_t a_loc,const std::string& a_name,unsigned int a
           a_string.clear();
           return false;
         }}
      -  
      +
        {hsize_t offset[1];
         offset[0] = a_offset;
         hsize_t count[1];
      @@ -834,7 +834,7 @@ inline bool read_sub_string(hid_t a_loc,const std::string& a_name,unsigned int a
         }}
       
         dims[0] = 1;
      -  hid_t mem_space = ::H5Screate_simple(1,dims,NULL); 
      +  hid_t mem_space = ::H5Screate_simple(1,dims,NULL);
         if(mem_space<0) {
           ::H5Sclose(file_space);
           ::H5Dclose(dataset);
      @@ -891,13 +891,13 @@ inline bool read_sub_string(hid_t a_loc,const std::string& a_name,unsigned int a
         }
       
         char* buff = rdata[0];
      -  
      +
         size_t len = ::strlen(buff);
         a_string.resize(len,0);
         for(size_t index=0;index >& a_axes,TO a_offset) {
         TO offset = a_offset;
         int index;
         typename std::vector< axis >::size_type dimension = a_axes.size();
      -  for(int iaxis=int(dimension)-1;iaxis>=0;iaxis--) { 
      +  for(int iaxis=int(dimension)-1;iaxis>=0;iaxis--) {
           index = int(offset/a_axes[iaxis].m_offset);
           if(index==0) return true;
           if(index==(int(a_axes[iaxis].m_number_of_bins)+1)) return true;
      @@ -30,7 +30,7 @@ template 
       inline void get_indices(const std::vector< axis >& a_axes,TO a_offset,std::vector& a_is) {
         TO offset = a_offset;
         typename std::vector< axis >::size_type dimension = a_axes.size();
      - {for(int iaxis=int(dimension)-1;iaxis>=0;iaxis--) { 
      + {for(int iaxis=int(dimension)-1;iaxis>=0;iaxis--) {
           a_is[iaxis] = int(offset/a_axes[iaxis].m_offset);
           offset -= a_is[iaxis] * a_axes[iaxis].m_offset;
         }}
      @@ -57,7 +57,7 @@ inline bool get_offset(const std::vector< axis >& a_axes,const std::vecto
         typename std::vector< axis >::size_type dimension = a_axes.size();
         typename axis::bn_t ibin;
         typedef unsigned int dim_t;
      -  for(dim_t iaxis=0;iaxis= m_maximum_value) {
             a_index = m_number_of_bins+1;
      -      return true; 
      +      return true;
           } else {
             if(m_fixed) {
               a_index = (bn_t)((a_value - m_minimum_value)/m_bin_width)+1;
      @@ -203,14 +203,14 @@ public:
           m_fixed = true;
           return true;
         }
      -  
      +
         bool is_compatible(const axis& a_axis) const {
           if(m_number_of_bins!=a_axis.m_number_of_bins) return false;
           if(m_minimum_value!=a_axis.m_minimum_value) return false;
           if(m_maximum_value!=a_axis.m_maximum_value) return false;
           return true;
         }
      -  
      +
       public:
         axis()
         :m_offset(0)
      @@ -256,7 +256,7 @@ public:
           if(m_edges!=a_from.m_edges) return false;
           return true;
         }
      -  
      +
         bool operator==(const axis& a_from) const {return equals(a_from);}
         bool operator!=(const axis& a_from) const {return !equals(a_from);}
       
      diff --git a/source/analysis/g4tools/include/tools/histo/b1 b/source/analysis/g4tools/include/tools/histo/b1
      index cacd3ef1e1..45c6b3d1c5 100644
      --- a/source/analysis/g4tools/include/tools/histo/b1
      +++ b/source/analysis/g4tools/include/tools/histo/b1
      @@ -107,42 +107,42 @@ public:
         void hprint(std::ostream& a_out) {
           // A la HPRINT.
           a_out << parent::dimension() << parent::title() << std::endl;
      -    a_out 
      +    a_out
             << " * ENTRIES = " << parent::all_entries()
             << " * ALL CHANNELS = " << parent::sum_bin_heights()
             << " * UNDERFLOW = " << bin_height(axis_t::UNDERFLOW_BIN)
             << " * OVERFLOW = " << bin_height(axis_t::OVERFLOW_BIN)
             << std::endl;
      -    a_out 
      +    a_out
             << " * BIN WID = " << axis().bin_width(0)
             << " * MEAN VALUE = " << mean()
             << " * R . M . S = " << rms()
             << std::endl;
      -  
      +
           // Some bins :
           bn_t bins = axis().bins();
      -    a_out 
      -      << " * ENTRIES[0]   = " 
      -      << bin_entries(0)    
      -      << " * HEIGHT[0] = " 
      -      << bin_height(0)    
      -      << " * ERROR[0] = "     
      -      << bin_error(0)    
      +    a_out
      +      << " * ENTRIES[0]   = "
      +      << bin_entries(0)
      +      << " * HEIGHT[0] = "
      +      << bin_height(0)
      +      << " * ERROR[0] = "
      +      << bin_error(0)
             << std::endl;
      -    a_out 
      -      << " * ENTRIES[N/2] = " 
      -      << bin_entries(bins/2)    
      -      << " * HEIGHT[N/2] = " 
      +    a_out
      +      << " * ENTRIES[N/2] = "
      +      << bin_entries(bins/2)
      +      << " * HEIGHT[N/2] = "
             << bin_height(bins/2)
      -      << " * ERROR[N/2] = " 
      +      << " * ERROR[N/2] = "
             << bin_error(bins/2)
             << std::endl;
      -    a_out 
      -      << " * ENTRIES[N-1] = " 
      -      << bin_entries(bins-1)    
      -      << " * HEIGHT[N-1] = " 
      +    a_out
      +      << " * ENTRIES[N-1] = "
      +      << bin_entries(bins-1)
      +      << " * HEIGHT[N-1] = "
             << bin_height(bins-1)
      -      << " * ERROR[N-1] = " 
      +      << " * ERROR[N-1] = "
             << bin_error(bins-1)
             << std::endl;
         }
      diff --git a/source/analysis/g4tools/include/tools/histo/b2 b/source/analysis/g4tools/include/tools/histo/b2
      index 0699b71089..78939f5312 100644
      --- a/source/analysis/g4tools/include/tools/histo/b2
      +++ b/source/analysis/g4tools/include/tools/histo/b2
      @@ -212,15 +212,15 @@ public:
         void hprint(std::ostream& a_out) {
           // A la HPRINT.
           a_out << parent::dimension() << parent::title() << std::endl;
      -    a_out 
      +    a_out
             << " * ENTRIES = " << parent::all_entries() << std::endl;
      -  
      +
           //   6 | 7 | 8
           //  -----------
           //   3 | 4 | 5
           //  -----------
           //   0 | 1 | 2
      -  
      +
           TW height_0 = bin_height(axis_t::UNDERFLOW_BIN,
                                                  axis_t::UNDERFLOW_BIN);
           TW height_2 = bin_height(axis_t::OVERFLOW_BIN,
      @@ -229,62 +229,62 @@ public:
                                                  axis_t::OVERFLOW_BIN);
           TW height_8 = bin_height(axis_t::OVERFLOW_BIN,
                                                  axis_t::OVERFLOW_BIN);
      -  
      +
           bn_t i,j;
      -  
      +
           TW height_1 = 0;
           TW height_7 = 0;
           for(i=0;i is(parent::m_dimension);
      @@ -546,12 +546,12 @@ protected:
       
         bool base_divide(const base_histo& a_histo) {
           //ill-defined operation. We keep that because of the "ill-defined past".
      -  
      -    // We build a new histo with one entry in each bin of weight : 
      +
      +    // We build a new histo with one entry in each bin of weight :
           //   this.w / a_histo.w
           // The current histo is overriden with this new histo.
           // The m_bin_Sw2 computation is consistent with FreeHEP and ROOT.
      -  
      +
           if(!is_compatible(a_histo)) return false;
       
           std::vector is(parent::m_dimension);
      diff --git a/source/analysis/g4tools/include/tools/histo/c1d b/source/analysis/g4tools/include/tools/histo/c1d
      index 66edfab067..495169e3c3 100644
      --- a/source/analysis/g4tools/include/tools/histo/c1d
      +++ b/source/analysis/g4tools/include/tools/histo/c1d
      @@ -27,17 +27,17 @@ public:
         }
       
         unsigned int dimension() const {return 1;}
      -  bool reset() { 
      +  bool reset() {
           clear();
           delete m_histo;
           m_histo = 0;
           return true;
         }
      -  unsigned int entries() const { 
      +  unsigned int entries() const {
           return m_histo ? m_histo->all_entries() : (unsigned int)m_ws.size();
         }
       public:
      -  double sum_of_weights() const { 
      +  double sum_of_weights() const {
           return (m_histo ? m_histo->sum_bin_heights() : m_Sw);
         }
       
      @@ -73,11 +73,11 @@ public:
       
       public:
         bool fill(double aX,double aW = 1){
      -    if(!m_histo && (m_limit!=UNLIMITED()) && 
      +    if(!m_histo && (m_limit!=UNLIMITED()) &&
              ((int)m_xs.size()>=m_limit)){
             convert_to_histogram();
           }
      -  
      +
           if(m_histo) {
             return m_histo->fill(aX,aW);
           } else {
      @@ -98,10 +98,10 @@ public:
           }
         }
       
      -  double lower_edge() const { 
      +  double lower_edge() const {
           return (m_histo ? m_histo->axis().lower_edge() : m_lower_x);
         }
      -  double upper_edge() const { 
      +  double upper_edge() const {
           return (m_histo ? m_histo->axis().upper_edge() : m_upper_x);
         }
         double value(unsigned int a_index) const {return (m_histo ?0:m_xs[a_index]);}
      @@ -168,7 +168,7 @@ public:
         ,m_Sxw(0),m_Sx2w(0)
         ,m_cnv_x_num(0),m_cnv_x_min(0),m_cnv_x_max(0),m_histo(0)
         {}
      -  
      +
         c1d(const std::string& a_title,int aLimit = base_cloud::UNLIMITED())
         :base_cloud(aLimit)
         ,m_lower_x(0),m_upper_x(0)
      diff --git a/source/analysis/g4tools/include/tools/histo/c2d b/source/analysis/g4tools/include/tools/histo/c2d
      index ff7484b905..731d7b3046 100644
      --- a/source/analysis/g4tools/include/tools/histo/c2d
      +++ b/source/analysis/g4tools/include/tools/histo/c2d
      @@ -210,10 +210,10 @@ void c2d::clear(){
       }
       
       inline
      -bool c2d::convert( 
      +bool c2d::convert(
        unsigned int a_bins_x,double a_lower_edge_x,double a_upper_edge_x
      -,unsigned int a_bins_y,double a_lower_edge_y,double a_upper_edge_y 
      -) { 
      +,unsigned int a_bins_y,double a_lower_edge_y,double a_upper_edge_y
      +) {
         if(m_histo) return true; // Done.
         m_histo = new histo::h2d(base_cloud::title(),
                                  a_bins_x,a_lower_edge_x,a_upper_edge_x,
      @@ -263,7 +263,7 @@ bool c2d::scale(double a_scale) {
       }
       
       inline
      -bool c2d::reset() { 
      +bool c2d::reset() {
         clear();
         delete m_histo;
         m_histo = 0;
      @@ -286,7 +286,7 @@ bool c2d::fill(double aX,double aY,double aW){
             m_lower_x = aX;
             m_upper_x = aX;
           }
      -    if(m_ys.size()) { 
      +    if(m_ys.size()) {
             m_lower_y = mn(aY,m_lower_y);
             m_upper_y = mx(aY,m_upper_y);
           } else {
      @@ -300,7 +300,7 @@ bool c2d::fill(double aX,double aY,double aW){
           double xw = aX * aW;
           m_Sxw += xw;
           m_Sx2w += aX * xw;
      -    double yw = aY * aW; 
      +    double yw = aY * aW;
           m_Syw += yw;
           m_Sy2w += aY * yw;
           return true;
      @@ -308,7 +308,7 @@ bool c2d::fill(double aX,double aY,double aW){
       }
       
       inline
      -bool c2d::convert(const std::vector& a_edges_x,const std::vector& a_edges_y) { 
      +bool c2d::convert(const std::vector& a_edges_x,const std::vector& a_edges_y) {
         if(m_histo) return true;
         m_histo = new histo::h2d(base_cloud::title(),
                                  a_edges_x,a_edges_y);
      @@ -333,7 +333,7 @@ bool c2d::set_conversion_parameters(
       }
       
       inline
      -const h2d& c2d::histogram() const { 
      +const h2d& c2d::histogram() const {
         if(!m_histo) const_cast(*this).convert_to_histogram();
         return *m_histo;
       }
      diff --git a/source/analysis/g4tools/include/tools/histo/c3d b/source/analysis/g4tools/include/tools/histo/c3d
      index 0b6cb9178c..958345ba4c 100644
      --- a/source/analysis/g4tools/include/tools/histo/c3d
      +++ b/source/analysis/g4tools/include/tools/histo/c3d
      @@ -260,11 +260,11 @@ void c3d::clear(){
       }
       
       inline
      -bool c3d::convert( 
      +bool c3d::convert(
        unsigned int a_bins_x,double a_lower_edge_x,double a_upper_edge_x
      -,unsigned int a_bins_y,double a_lower_edge_y,double a_upper_edge_y 
      -,unsigned int a_bins_z,double a_lower_edge_z,double a_upper_edge_z 
      -) { 
      +,unsigned int a_bins_y,double a_lower_edge_y,double a_upper_edge_y
      +,unsigned int a_bins_z,double a_lower_edge_z,double a_upper_edge_z
      +) {
         if(m_histo) return true; // Done.
         m_histo = new histo::h3d(base_cloud::title(),
                                  a_bins_x,a_lower_edge_x,a_upper_edge_x,
      @@ -339,13 +339,13 @@ bool c3d::set_conversion_parameters(
       
       
       inline
      -const h3d& c3d::histogram() const { 
      +const h3d& c3d::histogram() const {
         if(!m_histo) const_cast(*this).convert_to_histogram();
         return *m_histo;
       }
       
       inline
      -bool c3d::reset() { 
      +bool c3d::reset() {
         clear();
         delete m_histo;
         m_histo = 0;
      @@ -368,14 +368,14 @@ bool c3d::fill(double aX,double aY,double aZ,double aW){
             m_lower_x = aX;
             m_upper_x = aX;
           }
      -    if(m_ys.size()) { 
      +    if(m_ys.size()) {
             m_lower_y = mn(aY,m_lower_y);
             m_upper_y = mx(aY,m_upper_y);
           } else {
             m_lower_y = aY;
             m_upper_y = aY;
           }
      -    if(m_zs.size()) { 
      +    if(m_zs.size()) {
             m_lower_z = mn(aZ,m_lower_z);
             m_upper_z = mx(aZ,m_upper_z);
           } else {
      @@ -390,7 +390,7 @@ bool c3d::fill(double aX,double aY,double aZ,double aW){
           double xw = aX * aW;
           m_Sxw += xw;
           m_Sx2w += aX * xw;
      -    double yw = aY * aW; 
      +    double yw = aY * aW;
           m_Syw += yw;
           m_Sy2w += aY * yw;
           double zw = aZ * aW;
      @@ -401,11 +401,11 @@ bool c3d::fill(double aX,double aY,double aZ,double aW){
       }
       
       inline
      -bool c3d::convert( 
      +bool c3d::convert(
        const std::vector& a_edges_x
       ,const std::vector& a_edges_y
       ,const std::vector& a_edges_z
      -) { 
      +) {
         if(m_histo) return true;
         m_histo = new histo::h3d(base_cloud::title(),
                                  a_edges_x,a_edges_y,a_edges_z);
      @@ -416,53 +416,53 @@ bool c3d::convert(
       }
       
       inline
      -double c3d::sum_of_weights() const { 
      +double c3d::sum_of_weights() const {
         return (m_histo ? m_histo->sum_bin_heights() : m_Sw);
       }
       
       inline
      -unsigned int c3d::entries() const { 
      +unsigned int c3d::entries() const {
         return m_histo ? m_histo->all_entries() : (unsigned int)m_ws.size();
       }
       
       inline
      -double c3d::lower_edge_x() const { 
      +double c3d::lower_edge_x() const {
         return m_histo ? m_histo->axis_x().lower_edge() : m_lower_x;
       }
       inline
      -double c3d::lower_edge_y() const { 
      +double c3d::lower_edge_y() const {
         return m_histo ? m_histo->axis_y().lower_edge() : m_lower_y;
       }
       inline
      -double c3d::lower_edge_z() const { 
      +double c3d::lower_edge_z() const {
         return m_histo ? m_histo->axis_z().lower_edge() : m_lower_z;
       }
       inline
      -double c3d::upper_edge_x() const { 
      +double c3d::upper_edge_x() const {
         return m_histo ? m_histo->axis_x().upper_edge() : m_upper_x;
       }
       inline
      -double c3d::upper_edge_y() const { 
      +double c3d::upper_edge_y() const {
         return m_histo ? m_histo->axis_y().upper_edge() : m_upper_y;
       }
       inline
      -double c3d::upper_edge_z() const { 
      +double c3d::upper_edge_z() const {
         return m_histo ? m_histo->axis_z().upper_edge() : m_upper_z;
       }
       inline
      -double c3d::value_x(unsigned int a_index) const { 
      +double c3d::value_x(unsigned int a_index) const {
         return m_histo ? 0 : m_xs[a_index];
       }
       inline
      -double c3d::value_y(unsigned int a_index) const { 
      +double c3d::value_y(unsigned int a_index) const {
         return m_histo ? 0 : m_ys[a_index];
       }
       inline
      -double c3d::value_z(unsigned int a_index) const { 
      +double c3d::value_z(unsigned int a_index) const {
         return m_histo ? 0 : m_zs[a_index];
       }
       inline
      -double c3d::weight(unsigned int a_index) const { 
      +double c3d::weight(unsigned int a_index) const {
         return m_histo ? 0 : m_ws[a_index];
       }
       inline
      diff --git a/source/analysis/g4tools/include/tools/histo/dps b/source/analysis/g4tools/include/tools/histo/dps
      index 6984250ae1..43e7a4f0b7 100644
      --- a/source/analysis/g4tools/include/tools/histo/dps
      +++ b/source/analysis/g4tools/include/tools/histo/dps
      @@ -152,21 +152,21 @@ public:
         void clear() {m_points.clear();}
         size_t size() const {return m_points.size();}
       
      -  const data_point& point(size_t a_index) const { 
      +  const data_point& point(size_t a_index) const {
           //WARNING : no check done on a_index.
           return m_points[a_index];
         }
      -  data_point& point(size_t a_index) { 
      +  data_point& point(size_t a_index) {
           //WARNING : no check done on a_index.
           return m_points[a_index];
         }
       
      -  data_point& add_point() { 
      +  data_point& add_point() {
           m_points.push_back(data_point(m_dim));
           return m_points.back();
         }
       
      -  bool remove_point(size_t a_index) { 
      +  bool remove_point(size_t a_index) {
           bool done = false;
           if(a_index::iterator it = m_points.begin();
      @@ -177,7 +177,7 @@ public:
           return done;
         }
       
      -  bool lower_extent(unsigned int a_coord,double& a_value) const { 
      +  bool lower_extent(unsigned int a_coord,double& a_value) const {
           if(m_points.empty()||(a_coord>=m_dim)){
             a_value = 0;
             return false;
      @@ -190,8 +190,8 @@ public:
           }
           return true;
         }
      -  
      -  bool upper_extent(unsigned int a_coord,double& a_value) const { 
      +
      +  bool upper_extent(unsigned int a_coord,double& a_value) const {
           if(m_points.empty()||(a_coord>=m_dim)){
             a_value = 0;
             return false;
      @@ -204,8 +204,8 @@ public:
           }
           return true;
         }
      -  
      -  void scale(double a_scale) { 
      +
      +  void scale(double a_scale) {
           std::vector::iterator it;
           for(it=m_points.begin();it!=m_points.end();++it) {
             for(unsigned int coord=0;coord::iterator it;
           for(it=m_points.begin();it!=m_points.end();++it) {
             for(unsigned int coord=0;coord::iterator it;
           for(it=m_points.begin();it!=m_points.end();++it) {
             for(unsigned int coord=0;coord& a_edges,double aVmin,double aVmax)
      -  :parent(a_title,a_edges,aVmin,aVmax) 
      +  :parent(a_title,a_edges,aVmin,aVmax)
         {}
       
         virtual ~p1d(){}
      diff --git a/source/analysis/g4tools/include/tools/histo/p2 b/source/analysis/g4tools/include/tools/histo/p2
      index de928242b5..3133448f9b 100644
      --- a/source/analysis/g4tools/include/tools/histo/p2
      +++ b/source/analysis/g4tools/include/tools/histo/p2
      @@ -23,19 +23,19 @@ protected:
         }
       public:
         bool equals(const p2& a_from,const TW& a_prec,TW(*a_fabs)(TW)) const {
      -    if(!parent::equals(a_from,a_prec,a_fabs)) return false;    
      +    if(!parent::equals(a_from,a_prec,a_fabs)) return false;
           if(m_cut_v!=a_from.m_cut_v) return false;
           if(!numbers_are_equal(m_min_v,a_from.m_min_v,a_prec,a_fabs)) return false;
      -    if(!numbers_are_equal(m_max_v,a_from.m_max_v,a_prec,a_fabs)) return false;    
      +    if(!numbers_are_equal(m_max_v,a_from.m_max_v,a_prec,a_fabs)) return false;
           if(!vectors_are_equal(m_bin_Svw,a_from.m_bin_Svw,a_prec,a_fabs)) return false;
           if(!vectors_are_equal(m_bin_Sv2w,a_from.m_bin_Sv2w,a_prec,a_fabs)) return false;
           return true;
         }
         bool equals_TH(const p2& a_from,const TW& a_prec,TW(*a_fabs)(TW)) const {
      -    if(!parent::equals_TH(a_from,a_prec,a_fabs,false)) return false;    
      +    if(!parent::equals_TH(a_from,a_prec,a_fabs,false)) return false;
           if(m_cut_v!=a_from.m_cut_v) return false;
           if(!numbers_are_equal(m_min_v,a_from.m_min_v,a_prec,a_fabs)) return false;
      -    if(!numbers_are_equal(m_max_v,a_from.m_max_v,a_prec,a_fabs)) return false;    
      +    if(!numbers_are_equal(m_max_v,a_from.m_max_v,a_prec,a_fabs)) return false;
           if(!vectors_are_equal(m_bin_Svw,a_from.m_bin_Svw,a_prec,a_fabs)) return false;
           if(!vectors_are_equal(m_bin_Sv2w,a_from.m_bin_Sv2w,a_prec,a_fabs)) return false;
           return true;
      @@ -44,7 +44,7 @@ public:
         virtual TH bin_error(int aI,int aJ) const { //TH should be the same as TV
           TO offset;
           if(!parent::_find_offset(aI,aJ,offset)) return 0;
      -  
      +
           //FIXME Is it correct ?
           // TProfile::GetBinError with kERRORMEAN mode does :
           //  Stat_t cont = fArray[bin];              //Svw (see TProfile::Fill)
      @@ -55,9 +55,9 @@ public:
           //  Stat_t contsum = cont/sum;
           //  Stat_t eprim2  = TMath::Abs(err2/sum - contsum*contsum);
           //  eprim          = TMath::Sqrt(eprim2);
      -    //  ... ??? 
      +    //  ... ???
           //  if (fErrorMode == kERRORMEAN) return eprim/TMath::Sqrt(sum);
      -  
      +
           TW sw = parent::m_bin_Sw[offset];      //ROOT sum
           if(sw==0) return 0;
           TV svw = m_bin_Svw[offset];    //ROOT cont
      @@ -125,33 +125,33 @@ public:
               return true;
             }
           }
      -  
      +
           bn_t ibin,jbin;
           if(!parent::m_axes[0].coord_to_absolute_index(aX,ibin)) return false;
           if(!parent::m_axes[1].coord_to_absolute_index(aY,jbin)) return false;
           bn_t offset = ibin + jbin * parent::m_axes[1].m_offset;
      -  
      +
           parent::m_bin_entries[offset]++;
           parent::m_bin_Sw[offset] += aWeight;
           parent::m_bin_Sw2[offset] += aWeight * aWeight;
      -  
      +
           TC xw = aX * aWeight;
           TC x2w = aX * xw;
           parent::m_bin_Sxw[offset][0] += xw;
           parent::m_bin_Sx2w[offset][0] += x2w;
      -  
      +
           TC yw = aY * aWeight;
           TC y2w = aY * yw;
           parent::m_bin_Sxw[offset][1] += yw;
           parent::m_bin_Sx2w[offset][1] += y2w;
      -  
      +
           bool inRange = true;
           if(ibin==0) inRange = false;
           else if(ibin==(parent::m_axes[0].m_number_of_bins+1)) inRange = false;
      -  
      +
           if(jbin==0) inRange = false;
           else if(jbin==(parent::m_axes[1].m_number_of_bins+1)) inRange = false;
      -  
      +
           parent::m_all_entries++;
           if(inRange) {
             parent::m_in_range_plane_Sxyw[0] += aX * aY * aWeight;
      @@ -160,26 +160,26 @@ public:
             parent::m_in_range_entries++;
             parent::m_in_range_Sw += aWeight;
             parent::m_in_range_Sw2 += aWeight*aWeight;
      -  
      +
             parent::m_in_range_Sxw[0] += xw;
             parent::m_in_range_Sx2w[0] += x2w;
       
             parent::m_in_range_Sxw[1] += yw;
             parent::m_in_range_Sx2w[1] += y2w;
           }
      -   
      +
           // Profile part :
           TV vw = aV * aWeight;
           m_bin_Svw[offset] += vw;
           m_bin_Sv2w[offset] += aV * vw;
      -  
      +
           return true;
         }
       
         TV bin_rms_value(int aI,int aJ) const {
           TO offset;
           if(!parent::_find_offset(aI,aJ,offset)) return 0;
      -  
      +
           TW sw = parent::m_bin_Sw[offset];
           if(sw==0) return 0;
           TV svw = m_bin_Svw[offset];
      @@ -191,16 +191,16 @@ public:
         bool add(const p2& a_histo){
           parent::base_add(a_histo);
           for(bn_t ibin=0;ibin
       inline bool fill_slice_x(const H2& a_from,int aJbeg,int aJend,H1& a_to) {
       
         if(!a_from.dimension()) return false;
      -  
      +
         typedef typename H2::bn_t bn_t;
       
         bn_t jbeg;
      @@ -31,9 +31,9 @@ inline bool fill_slice_x(const H2& a_from,int aJbeg,int aJend,H1& a_to) {
         typedef typename H1::hd_t hd_t;
         hd_t hdata = a_to.dac();
       
      -  bn_t aoffset,offset,jbin;     
      +  bn_t aoffset,offset,jbin;
         bn_t yoffset = a_from.axis_y().m_offset;
      -  
      +
         typedef typename H2::num_entries_t TN;
         typedef typename H2::weight_t TW;
         typedef typename H2::coordinate_t TC;
      @@ -99,7 +99,7 @@ inline bool fill_slice_y(const H2& a_from,int aIbeg,int aIend,H1& a_to) {
         typedef typename H1::hd_t hd_t;
         hd_t hdata = a_to.dac();
       
      -  bn_t aibin,aoffset,offset,ibin;     
      +  bn_t aibin,aoffset,offset,ibin;
         bn_t yoffset = a_from.axis_y().m_offset;
       
         typedef typename H2::num_entries_t TN;
      @@ -156,7 +156,7 @@ inline H1* projection_y(const H2& a_from,const std::string& a_title) {
       template 
       inline bool fill_profile_x(const H2& a_from,int aJbeg,int aJend,P1& a_to) {
         if(!a_from.dimension()) return false;
      -  
      +
         typedef typename H2::bn_t bn_t;
       
         bn_t jbeg;
      @@ -170,9 +170,9 @@ inline bool fill_profile_x(const H2& a_from,int aJbeg,int aJend,P1& a_to) {
         typedef typename P1::pd_t pd_t;
         pd_t hdata = a_to.get_histo_data();
       
      -  bn_t aoffset,offset,jbin;     
      +  bn_t aoffset,offset,jbin;
         bn_t yoffset = a_from.axis_y().m_offset;
      -  
      +
         typedef typename H2::num_entries_t TN;
         typedef typename H2::weight_t TW;
         typedef typename H2::coordinate_t TC;
      @@ -230,7 +230,7 @@ inline bool fill_profile_y(const H2& a_from,int aIbeg,int aIend,P1& a_to) {
         typedef typename P1::pd_t pd_t;
         pd_t hdata = a_to.get_histo_data();
       
      -  bn_t aibin,aoffset,offset,ibin;     
      +  bn_t aibin,aoffset,offset,ibin;
         bn_t yoffset = a_from.axis_y().m_offset;
       
         typedef typename H2::num_entries_t TN;
      @@ -293,13 +293,13 @@ inline bool fill_slice_yz(const H3& a_from,int aIbeg,int aIend,H2& a_to) {
       
         typedef typename H2::hd_t hd_t;
         hd_t hdata = a_to.dac();
      -  
      -  bn_t aibin,ajbin,aoffset,offset,ibin;     
      -  
      +
      +  bn_t aibin,ajbin,aoffset,offset,ibin;
      +
         bn_t ayoffset = hdata.m_axes[1].m_offset;
         bn_t yoffset = a_from.axis_y().m_offset;
         bn_t zoffset = a_from.axis_z().m_offset;
      -  
      +
         bn_t axbins = hdata.m_axes[0].bins()+2;
         bn_t aybins = hdata.m_axes[1].bins()+2;
       
      @@ -344,7 +344,7 @@ inline bool fill_slice_yz(const H3& a_from,int aIbeg,int aIend,H2& a_to) {
       
       template 
       inline bool fill_slice_xy(const H3& a_from,int aKbeg,int aKend,H2& a_to) {
      -  
      +
         if(!a_from.dimension()) return false;
       
         typedef typename H3::bn_t bn_t;
      @@ -354,20 +354,20 @@ inline bool fill_slice_xy(const H3& a_from,int aKbeg,int aKend,H2& a_to) {
         bn_t kend;
         if(!a_from.axis_z().in_range_to_absolute_index(aKend,kend)) return false;
         if(kbeg>kend) return false;
      -  
      +
         if(a_from.axis_x().bins()!=a_to.axis_x().bins()) return false;
         if(a_from.axis_y().bins()!=a_to.axis_y().bins()) return false;
       
         typedef typename H2::hd_t hd_t;
         hd_t hdata = a_to.dac();
      -  
      +
         bn_t kbin;
      -  bn_t aibin,ajbin,aoffset,offset;     
      -  
      +  bn_t aibin,ajbin,aoffset,offset;
      +
         bn_t ayoffset = hdata.m_axes[1].m_offset;
         bn_t yoffset = a_from.axis_y().m_offset;
         bn_t zoffset = a_from.axis_z().m_offset;
      -  
      +
         bn_t axbins = hdata.m_axes[0].bins()+2;
         bn_t aybins = hdata.m_axes[1].bins()+2;
       
      @@ -412,7 +412,7 @@ inline bool fill_slice_xy(const H3& a_from,int aKbeg,int aKend,H2& a_to) {
       
       template 
       inline bool fill_slice_xz(const H3& a_from,int aJbeg,int aJend,H2& a_to) {
      -  
      +
         if(!a_from.dimension()) return false;
       
         typedef typename H3::bn_t bn_t;
      @@ -425,16 +425,16 @@ inline bool fill_slice_xz(const H3& a_from,int aJbeg,int aJend,H2& a_to) {
       
         if(a_from.axis_x().bins()!=a_to.axis_x().bins()) return false;
         if(a_from.axis_z().bins()!=a_to.axis_y().bins()) return false;
      -  
      +
         typedef typename H2::hd_t hd_t;
         hd_t hdata = a_to.dac();
       
      -  bn_t aibin,ajbin,aoffset,offset,jbin;     
      -  
      +  bn_t aibin,ajbin,aoffset,offset,jbin;
      +
         bn_t ayoffset = hdata.m_axes[1].m_offset;
         bn_t yoffset = a_from.axis_y().m_offset;
         bn_t zoffset = a_from.axis_z().m_offset;
      -  
      +
         bn_t axbins = hdata.m_axes[0].bins()+2;
         bn_t aybins = hdata.m_axes[1].bins()+2;
       
      @@ -457,7 +457,7 @@ inline bool fill_slice_xz(const H3& a_from,int aJbeg,int aJend,H2& a_to) {
               //offset3D = ibin + jbin * m_axes[1].m_offset + kbin*m_axes[2].m_offset;
               // hdata booked with x-z then :
               offset = aibin + jbin * yoffset + ajbin * zoffset;
      -  
      +
               // Bin :
               hdata.m_bin_entries[aoffset] += af_bin_entries[offset];
               hdata.m_bin_Sw[aoffset] += af_bin_Sw[offset];
      @@ -469,7 +469,7 @@ inline bool fill_slice_xz(const H3& a_from,int aJbeg,int aJend,H2& a_to) {
             }
           }
         }
      -  
      +
         hdata.m_in_range_plane_Sxyw.assign(a_to.number_of_planes(),0); //ill-defined.
       
         hdata.update_fast_getters();
      diff --git a/source/analysis/g4tools/include/tools/hls b/source/analysis/g4tools/include/tools/hls
      index 0ffd3f820b..92428cc59b 100644
      --- a/source/analysis/g4tools/include/tools/hls
      +++ b/source/analysis/g4tools/include/tools/hls
      @@ -37,7 +37,7 @@ inline void hls_to_rgb(T hue,T light,T satur,T& a_r,T& a_g,T& a_b){
       
         if (satur > 0) rs = satur;
         if (rs > 1)   rs = 1;
      -  
      +
         if (rl <= T(0.5)) {
           rm2 = rl*(1 + rs);
         } else {
      diff --git a/source/analysis/g4tools/include/tools/hplot b/source/analysis/g4tools/include/tools/hplot
      index 3306ccf44e..45d6a96b01 100644
      --- a/source/analysis/g4tools/include/tools/hplot
      +++ b/source/analysis/g4tools/include/tools/hplot
      @@ -12,7 +12,7 @@
       // Take care, all the below is highly disgusting...
       // (You can even find.. gotos !)
       //
      -// Except for the public methods we let the style "as it". 
      +// Except for the public methods we let the style "as it".
       
       #include "mnmx"
       #include "lina/vec3f"
      @@ -72,7 +72,7 @@ class axis {
       
         // Ok, you really want to read all that. You had been warned...
       
      -  enum { 
      +  enum {
           TAxis_kTickPlus      = (1<<(9)),
           TAxis_kTickMinus     = (1<<(10)),
           TAxis_kAxisRange     = (1<<(11)),
      @@ -89,7 +89,7 @@ class axis {
           TAxis_kMoreLogLabels = (1<<(23)),
           TAxis_kDecimals      = (1<<(11))
         }; //in fBits2
      -  
      +
         enum {
           kIsOnHeap      = 0x01000000,    // object is on heap
           kNotDeleted    = 0x02000000,    // object has not been deleted
      @@ -99,7 +99,7 @@ class axis {
       
         static int GetTextFont() { return 132;}
       
      -  static double TMath_ATan2(double y, double x) { 
      +  static double TMath_ATan2(double y, double x) {
           if (x != 0) return  ::atan2(y, x);
           if (y == 0) return  0;
           if (y >  0) return  half_pi();
      @@ -111,7 +111,7 @@ class axis {
         //static long TMath_Abs(long d) { return (d >= 0) ? d : -d; }
         //static float TMath_Abs(float d) { return (d >= 0) ? d : -d; }
         static double TMath_Abs(double d) { return (d >= 0) ? d : -d; }
      -  
      +
         static void TGaxis_Rotate(
          double X,  double Y,  double CFI, double SFI
         ,double XT, double YT, double &U,   double &V)
      @@ -138,12 +138,12 @@ private: //to discourage inheriting that.
         axis(const axis& a_from):m_out(a_from.m_out){}
         axis& operator=(const axis&){return *this;}
       public:
      -  void set_title(const std::string& aTitle) { 
      +  void set_title(const std::string& aTitle) {
           fTitle = aTitle;
         }
       private:
      -  bool testBit(unsigned int f) { 
      -    return (bool) ((fBits & f) != 0); 
      +  bool testBit(unsigned int f) {
      +    return (bool) ((fBits & f) != 0);
         }
       
         static void TGaxis_LabelsLimits(std::ostream& a_out,const char *label,
      @@ -290,7 +290,7 @@ public:
           // Time representation.
           // --------------------
           //
      -    //   Axis labels may be considered as times, plotted in a defined 
      +    //   Axis labels may be considered as times, plotted in a defined
           //   time format.
           //   The format is set with SetTimeFormat().
           //   wmin and wmax are considered as two time values in seconds.
      @@ -301,11 +301,11 @@ public:
           //
           //       chopt='t': Plot times with a defined format instead of values
           //
      -  
      +
            aLinesAxis.clear();
            aLinesGrid.clear();
            aTexts.clear();
      -  
      +
            double alfa, beta, ratio1, ratio2, grid_side;
            double axis_lengthN = 0;
            double axis_length0 = 0;
      @@ -350,7 +350,7 @@ public:
            char LABEL[256];
            char CHTEMP[256];
            double rangeOffset = 0;
      -  
      +
            double epsilon   = 1e-5;
            const double kPI = pi(); //GB
            double textSize = 0.05; //GB
      @@ -367,26 +367,26 @@ public:
            BinLow3 = 0; //GB
            first = 0; //GB
            last = 0; //GB
      -  
      +
            double rwmi = wmin;
            double rwma = wmax;
      -  
      +
            //out_error(m_out,"android_debug","start");
       
            bool noExponent = testBit(TAxis_kNoExponent);
      -  
      +
            // If MoreLogLabels = true more Log Intermediate Labels are drawn.
            bool MoreLogLabels = testBit(TAxis_kMoreLogLabels);
      -  
      +
            // the following parameters correspond to the pad range in NDC
            // and the WC coordinates in the pad
      -  
      +
            double padh   = 1;//FIXME gPad->GetWh()*gPad->GetAbsHNDC();
            double RWxmin = 0;
            double RWxmax = 1;
            double RWymin = 0;
            double RWymax = 1;
      -  
      +
            SETOPT(aCHOPT,'G',OptionLog);
            SETOPT(aCHOPT,'B',OptionBlank);
            SETOPT(aCHOPT,'V',OptionVert);
      @@ -410,7 +410,7 @@ public:
            SETOPT(aCHOPT,'X',OptionX);
            SETOPT(aCHOPT,'t',OptionTime);
            SETOPT(aCHOPT,'.',OptionDot);
      -  
      +
            if (testBit(TAxis_kTickPlus))     OptionPlus  = 2;
            if (testBit(TAxis_kTickMinus))    OptionMinus = 2;
            if (testBit(TAxis_kCenterLabels)) OptionM     = 1;
      @@ -422,26 +422,26 @@ public:
                  ndiv = fAxis->GetLast()-fAxis->GetFirst()+1;
               }
            }*/
      -  
      +
            // Set the grid length
      -  
      +
            if (OptionGrid) {
               if (gridlength == 0) gridlength = 0.8;
         /*FIXME
               linegrid = new TLine();
               linegrid->SetLineColor(gStyle->GetGridColor());
      -        if (linegrid->GetLineColor() == 0) 
      +        if (linegrid->GetLineColor() == 0)
                 linegrid->SetLineColor(GetLineColor());
               linegrid->SetLineStyle(gStyle->GetGridStyle());
               linegrid->SetLineWidth(gStyle->GetGridWidth());*/
            }
      -  
      -    
      +
      +
            if (OptionTime) {
              //printf("debug : SbAxisHPLOT::paint : fTimeFormat : \"%s\"\n",
              //    fTimeFormat.c_str());
            }
      -  
      +
            //out_error(m_out,"android_debug","0000");
            // Determine time format
            std::string timeformat;
      @@ -451,7 +451,7 @@ public:
            } else {
              timeformat = fTimeFormat;
            }
      -  
      +
            //out_error(m_out,"android_debug","0001");
            // determine the time offset and correct for time offset not being integer
            double timeoffset = 0;
      @@ -460,7 +460,7 @@ public:
                  int LnF = int(fTimeFormat.size());
                  std::string stringtimeoffset = fTimeFormat.substr(IdF+2,LnF-(IdF+2));
                  int yy, mm, dd, hh, mi, ss;
      -           if (::sscanf(stringtimeoffset.c_str(), 
      +           if (::sscanf(stringtimeoffset.c_str(),
                          "%d-%d-%d %d:%d:%d", &yy, &mm, &dd, &hh, &mi, &ss) == 6) {
                     struct tm tp;
                     struct tm* tptest;
      @@ -532,18 +532,18 @@ public:
            int NN2   = mx(N2A,1)*NN3;
            int NN1   = mx(N1A,1)*NN2+1;
            int Nticks= NN1;
      -  
      +
            // Axis bining optimization is ignored if:
            // - the first and the last label are equal
            // - the number of divisions is 0
            // - less than 1 primary division is requested
            // - logarithmic scale is requested
      -  
      +
            if (wmin == wmax || ndiv == 0 || N1A <= 1 || OptionLog) {
               OptionNoopt = 1;
               OptionInt   = 0;
            }
      -  
      +
            // Axis bining optimization
            if ( (wmax-wmin) < 1 && OptionInt) {
               out_error(m_out,"PaintAxis", "option I not available");
      @@ -551,17 +551,17 @@ public:
            }
            //out_error(m_out,"android_debug","0002");
            if (!OptionNoopt || OptionInt ) {
      -  
      +
               // Primary divisions optimization
               // When integer labelling is required, Optimize is invoked first
      -        // and only if the result is not an integer labelling, AdjustBinSize 
      +        // and only if the result is not an integer labelling, AdjustBinSize
               // is invoked.
      -  
      +
               optimizeLimits(wmin,wmax,N1A,
                              BinLow,BinHigh,nbins,BinWidth,
                              aCHOPT);
               if (OptionInt) {
      -           if (BinLow != double(int(BinLow)) || 
      +           if (BinLow != double(int(BinLow)) ||
                      BinWidth != double(int(BinWidth))) {
                     adjustBinSize(wmin,wmax,N1A,BinLow,BinHigh,nbins,BinWidth);
                  }
      @@ -597,7 +597,7 @@ public:
                  wmin = BinLow;
                  wmax = BinHigh;
               }
      -  
      +
               // Secondary divisions optimization
               int NB2 = N2A;
               if (!OptionNoopt && N2A > 1 && BinWidth > 0) {
      @@ -605,7 +605,7 @@ public:
                                 BinLow2,BinHigh2,NB2,BinWidth2,
                                 aCHOPT);
               }
      -  
      +
               // Tertiary divisions optimization
               int NB3 = N3A;
               if (!OptionNoopt && N3A > 1 && BinWidth2 > 0) {
      @@ -621,10 +621,10 @@ public:
               NN1    = mx(N1A,1)*NN2+1;
               Nticks = NN1;
            }
      -  
      +
            //out_error(m_out,"android_debug","0003");
            // Coordinates are normalized
      -  
      +
            ratio1 = 1/(RWxmax-RWxmin);
            ratio2 = 1/(RWymax-RWymin);
            X0     = ratio1*(xmin-RWxmin);
      @@ -637,22 +637,22 @@ public:
               YY0 = ratio2*(Yymin-RWymin);
               YY1 = ratio2*(Yymax-RWymin);
            }
      -  
      +
            //out_error(m_out,"android_debug","0004");
            if ((X0 == X1) && (Y0 == Y1)) {
               out_error(m_out,"PaintAxis", "length of axis is 0");
               return;
            }
      -  
      +
            // Return wmin, wmax and the number of primary divisions
            if (OptionX) {
               ndiv = N1A;
               return;
            }
      -  
      +
            int maxDigits = 5;
            //FIXME if (fAxis) maxDigits = fMaxDigits;
      -  
      +
         /*FIXME
            TLatex *textaxis = new TLatex();
            lineaxis->SetLineColor(GetLineColor());
      @@ -660,21 +660,21 @@ public:
            lineaxis->SetLineWidth(GetLineWidth());
            textaxis->SetTextColor(GetTextColor());
            textaxis->SetTextFont(GetTextFont());
      -  
      +
            if (!gPad->IsBatch()) {
               float chupxvsav, chupyvsav;
               gVirtualX->GetCharacterUp(chupxvsav, chupyvsav);
               gVirtualX->SetClipOFF(gPad->GetCanvasID());
            }
         */
      -  
      +
            // Compute length of axis
            double axis_length = ::sqrt((X1-X0)*(X1-X0)+(Y1-Y0)*(Y1-Y0));
            if (axis_length == 0) {
               out_error(m_out,"PaintAxis", "length of axis is 0");
               return; //goto L210;
            }
      -  
      +
            //out_error(m_out,"android_debug","0005");
            if (!OptionNoopt || OptionInt) {
               axis_lengthN = ::sqrt((XX1-XX0)*(XX1-XX0)+(YY1-YY0)*(YY1-YY0));
      @@ -694,7 +694,7 @@ public:
                  }
               }
            }
      -  
      +
            //out_error(m_out,"android_debug","0006");
            if (X0 == X1) {
               phi  = 0.5*kPI;
      @@ -714,13 +714,13 @@ public:
            asinphi = TMath_Abs(sinphi);
            if (acosphi <= epsilon) { acosphi = 0;  cosphi  = 0; }
            if (asinphi <= epsilon) { asinphi = 0;  sinphi  = 0; }
      -  
      +
            //out_error(m_out,"android_debug","0007");
            // Mside positive, tick marks on positive side
            // Mside negative, tick marks on negative side
            // Mside zero, tick marks on both sides
            // Default is positive except for vertical axis
      -  
      +
            Mside=1;
            if (X0 == X1 && Y1 > Y0)       Mside = -1;
            if (OptionPlus)                Mside = 1;
      @@ -734,24 +734,24 @@ public:
               if (OptionEqual) Lside=1;
            }
            XLside = Lside;
      -  
      +
            // Tick marks size
            double tick_side;
            if(XMside >= 0) tick_side = 1;
            else            tick_side = -1;
      -  
      +
            double atick[3];
            if (OptionSize) atick[0] = tick_side*axis_length*fTickSize;
            else            atick[0] = tick_side*axis_length*0.03;
      -  
      +
            atick[1] = 0.5*atick[0];
            atick[2] = 0.5*atick[1];
      -  
      +
            // Set the side of the grid
            if ((X0 == X1) && (Y1 > Y0))  grid_side =-1;
            else                          grid_side = 1;
      -  
      -  
      +
      +
            //out_error(m_out,"android_debug","0008");
            // Compute Values if Function is given
            /*GB if(fFunction) {
      @@ -763,7 +763,7 @@ public:
                  rwmi = t;
               }
            }*/
      -  
      +
            // Draw the axis if needed...
            if (!OptionBlank) {
               xpl1 = X0;
      @@ -775,16 +775,16 @@ public:
               aLinesAxis.push_back((float)xpl2);
               aLinesAxis.push_back((float)ypl2);
            }
      -  
      +
            //out_error(m_out,"android_debug","0009");
            // No bining
      -  
      +
            if (ndiv == 0) return; //goto L210;
            if (wmin == wmax) {
               out_error(m_out,"PaintAxis", "wmin (%f) == wmax (%f)", wmin, wmax);
               return; //goto L210;
            }
      -  
      +
            // Draw axis title if it exists
            if (!drawGridOnly && fTitle.size()) {
               textSize = fTitleSize;
      @@ -830,13 +830,13 @@ public:
                                                    fTitle,textAlign));
               }
            }
      -  
      +
            //out_error(m_out,"android_debug","0010");
            // Labels preparation:
            // Get character height
            // Compute the labels orientation in case of overlaps
            // with alphanumeric labels for horizontal axis).
      -  
      +
            charheight = fLabelSize;
            if (OptionText) charheight *= 0.66666;
            //FIXME textaxis->SetTextFont(fLabelFont);
      @@ -901,7 +901,7 @@ public:
                  }*/
               }
            }
      -  
      +
            //out_error(m_out,"android_debug","0011");
            // Now determine orientation of labels on axis
         /*FIXME
      @@ -913,7 +913,7 @@ public:
               if (OptionPara) gVirtualX->SetCharacterUp(-sinphi,cosphi);
               if (OptionDown) gVirtualX->SetCharacterUp(cosphi,sinphi);
            }*/
      -  
      +
            // Now determine text alignment
            Xalign = 2;
            Yalign = 1;
      @@ -929,7 +929,7 @@ public:
               if (cosphi*sinphi < 0)  Xalign = 3;
            }
            textAlign = 10*Xalign+Yalign;
      -  
      +
            //out_error(m_out,"android_debug","0012");
            // Position of labels in Y
            if (X0 == X1) {
      @@ -954,7 +954,7 @@ public:
               else                  Ylabel = -fLabelOffset;
            }
            if (OptionText) Ylabel /= 2;
      -  
      +
            //out_error(m_out,"android_debug","0013");
            // Draw the linear tick marks if needed...
            if (!OptionLog) {
      @@ -1011,7 +1011,7 @@ public:
                       aLinesAxis.push_back((float)xpl2);
                       aLinesAxis.push_back((float)ypl2);
                     }
      -  
      +
                     if (OptionGrid) {
                        if (ltick == 0) {
                           if (OptionNoopt && !OptionInt) {
      @@ -1034,7 +1034,7 @@ public:
                  }
                  Xtick0 = 0;
                  Xtick1 = Xtick;
      -  
      +
                  if ((!OptionNoopt || OptionInt) && axis_length0) {
                     int Nticks0;
                     /*GB if (fFunction) Nticks0 = int((BinLow-wmin)/DXtick);
      @@ -1073,7 +1073,7 @@ public:
                          aLinesAxis.push_back((float)xpl2);
                          aLinesAxis.push_back((float)ypl2);
                        }
      -  
      +
                        if (OptionGrid) {
                           if (ltick == 0) {
                             TGaxis_Rotate(Xtick0,0,cosphi,sinphi,XX0,YY0,xpl2,ypl2);
      @@ -1089,7 +1089,7 @@ public:
                        Xtick0 -= DXtick;
                     }
                  }
      -  
      +
                  if ((!OptionNoopt || OptionInt) && axis_length1) {
                     int Nticks1;
                     /*GB if (fFunction) Nticks1 = int((wmax-BinHigh)/DXtick);
      @@ -1128,7 +1128,7 @@ public:
                          aLinesAxis.push_back((float)xpl2);
                          aLinesAxis.push_back((float)ypl2);
                        }
      -  
      +
                        if (OptionGrid) {
                           if (ltick == 0) {
                             TGaxis_Rotate(Xtick1,0,cosphi,sinphi,XX0,YY0 ,xpl2,ypl2);
      @@ -1146,7 +1146,7 @@ public:
                  }
               }
            }
      -  
      +
            //out_error(m_out,"android_debug","0014");
            // Draw the numeric labels if needed...
            if (!drawGridOnly && !OptionUnlab) {
      @@ -1161,12 +1161,12 @@ public:
                     DWlabel = (wmax-wmin)/double(N1A);
                     if (OptionNoopt && !OptionInt) DXlabel = axis_length/double(N1A);
                     else                           DXlabel = axis_lengthN/double(N1A);
      -  
      +
                     char CHCODED[8];
                     int NEXE  = 0;
                     bool FLEXE = false;
                     if (!OptionText && !OptionTime) {
      -  
      +
                        // We have to decide what format to generate
                        // for numeric labels only)
                        // Test the magnitude, decide format
      @@ -1175,9 +1175,9 @@ public:
                        bool FLEXPO = false;
                        bool FLEXNE = false;
                        WW  = mx(TMath_Abs(wmin),TMath_Abs(wmax));
      -  
      +
                        // First case : (wmax-wmin)/N1A less than 0.001
      -                 // 0.001 fMaxDigits of 5 (fMaxDigits) characters). 
      +                 // 0.001 fMaxDigits of 5 (fMaxDigits) characters).
                        //  Then we use x 10 n
                        // format. If AF >=0 x10 n cannot be used
                        double xmicros = 0.00099;
      @@ -1205,9 +1205,9 @@ public:
                        NF  = int(AF)+1;
                        if (!noExponent && NF > maxDigits)  FLEXPO = true;
                        if (!noExponent && NF < -maxDigits) FLEXNE = true;
      -  
      +
                        // Use x 10 n format. (only powers of 3 allowed)
      -  
      +
                        if (FLEXPO) {
                           FLEXE = true;
                           while (1) {
      @@ -1218,7 +1218,7 @@ public:
                              if (NEXE%3 == 0 && WW <= ::pow(10.,maxDigits-1)) break;
                           }
                        }
      -  
      +
                        if (FLEXNE) {
                           FLEXE = true;
                           RNE   = 1/::pow(10.,maxDigits-2);
      @@ -1230,7 +1230,7 @@ public:
                              if (NEXE%3 == 0 && WW >= RNE) break;
                           }
                        }
      -  
      +
                        NA = 0;
                        for (i=maxDigits-1; i>0; i--) {
                           if (TMath_Abs(WW) < ::pow(10.,i)) NA = maxDigits-i;
      @@ -1244,13 +1244,13 @@ public:
                           }
                           else break;
                        }
      -  
      +
                        IF2 = NA;
                        IF1 = mx(NF+NA,maxDigits)+1;
         L110:
                        if (mn(wmin,wmax) < 0)IF1 = IF1+1;
                        IF1 = mn(IF1,32);
      -  
      +
                        // In some cases, IF1 and IF2 are too small....
                        while (DWlabel < ::pow(10.,-IF2)) {
                           IF1++;
      @@ -1262,9 +1262,9 @@ public:
                        if(IF2)snpf(CHCODED,sizeof(CHCODED),"%%%d.%df",IF1,IF2);
                        else   snpf(CHCODED,sizeof(CHCODED),"%%%d.%df",IF1+1,1);
                     }
      -  
      +
                     // We draw labels
      -  
      +
                     snpf(CHTEMP,sizeof(CHTEMP),"%g",DWlabel);
       
                     size_t ndecimals = 0;
      @@ -1286,14 +1286,14 @@ public:
                           Xlabel = DXlabel*k;
                        }
                        if (OptionM)    Xlabel += 0.5*DXlabel;
      -  
      +
                        if (!OptionText && !OptionTime) {
                           snpf(LABEL,sizeof(LABEL),&CHCODED[0],Wlabel);
                           LABEL[28] = 0;
                           Wlabel += DWlabel;
      -  
      +
                           TGaxis_LabelsLimits(m_out,LABEL,first,last);  //Eliminate blanks
      -  
      +
                           if (LABEL[first] == '.') { //check if '.' is preceeded by a digit
                              ::strcpy(CHTEMP, "0");
                              ::strcat(CHTEMP, &LABEL[first]);
      @@ -1306,7 +1306,7 @@ public:
                              ::strcpy(LABEL, CHTEMP);
                              first = 1; last = int(::strlen(LABEL));
                           }
      -  
      +
                           // We eliminate the non significant 0 after '.'
                           if (ndecimals) {
                              char *adot = ::strchr(LABEL,'.');
      @@ -1319,9 +1319,9 @@ public:
                              if (!OptionDot) { LABEL[last] = 0; last--;}
                           }
                        }
      -  
      +
                        // Generate the time labels
      -  
      +
                        if (OptionTime) {
                           double timed = Wlabel + (int)(timeoffset) - rangeOffset;
                           time_t timelabel = (time_t)((long)(timed));
      @@ -1334,33 +1334,33 @@ public:
                           std::string timeformattmp;
                           if (timeformat.size() < 220) timeformattmp = timeformat;
                           else timeformattmp = "#splitline{Format}{too long}";
      -  
      +
                           // Appends fractionnal part if seconds displayed
                           if (DWlabel<0.9) {
                              double tmpdb;
                              size_t tmplast;
                              snpf(LABEL,sizeof(LABEL),"%%S%7.5f",modf(timed,&tmpdb));
                              tmplast = ::strlen(LABEL)-1;
      -  
      +
                              // We eliminate the non significiant 0 after '.'
                              while (LABEL[tmplast] == '0') {
                                 LABEL[tmplast] = 0; tmplast--;
                              }
      -  
      +
                              //FIXME timeformattmp.ReplaceAll("%S",LABEL);
                              // Replace the "0." at the begining by "s"
                              //FIXME timeformattmp.ReplaceAll("%S0.","%Ss");
      -  
      +
                           }
      -  
      +
                           ::strftime(LABEL,256,timeformattmp.c_str(),utctis);
                           ::strcpy(CHTEMP,&LABEL[0]);
                           first = 0; last=int(::strlen(LABEL))-1;
                           Wlabel = wTimeIni + (k+1)*DWlabel;
                        }
      -  
      +
                        // We generate labels (numeric or alphanumeric).
      -  
      +
                        if (OptionNoopt && !OptionInt)
                                 TGaxis_Rotate (Xlabel,Ylabel,cosphi,sinphi,X0,Y0,XX,YY);
                        else     TGaxis_Rotate (Xlabel,Ylabel,cosphi,sinphi,XX0,YY0,XX,YY);
      @@ -1397,7 +1397,7 @@ public:
                           }
                        }
                        else {
      -  
      +
                           // Text alignment is down
                           int LNLEN = 0;
                           if (!OptionText)     LNLEN = last-first+1;
      @@ -1418,9 +1418,9 @@ public:
                           }
                        }
                     }
      -  
      +
                     // We use the format x 10 ** n
      -  
      +
                     if (FLEXE && !OptionText && NEXE)  {
                        //G.Barrand ::sprintf(LABEL,"#times10^{%d}", NEXE);
                        snpf(LABEL,sizeof(LABEL),
      @@ -1437,9 +1437,9 @@ public:
                  }
               }
            }
      -  
      +
            // Log axis
      -  
      +
            //out_error(m_out,"android_debug","0015");
            if (OptionLog && ndiv) {
               unsigned int xi1=0,xi2 = 0,wi = 0,yi1=0,yi2,hi = 0;
      @@ -1469,7 +1469,7 @@ public:
               int IH2    = 1+int(H2);
               int NBININ = IH2-IH1+1;
               double AXMUL  = (X11-X00)/(H2SAV-XMNLOG);
      -  
      +
               // Plot decade and intermediate tick marks
               decade      = IH1-2;
               int labelnumber = IH1;
      @@ -1512,7 +1512,7 @@ public:
                    aLinesAxis.push_back((float)xpl2);
                    aLinesAxis.push_back((float)ypl2);
                  }
      -  
      +
                  if (OptionGrid) {
                    TGaxis_Rotate(Xone,0,cosphi,sinphi,X0,Y0,xpl2,ypl2);
                    TGaxis_Rotate(Xone,grid_side*gridlength,cosphi,sinphi,X0,Y0,
      @@ -1522,9 +1522,9 @@ public:
                    aLinesGrid.push_back((float)xpl2);
                    aLinesGrid.push_back((float)ypl2);
                  }
      -  
      +
                  if (!drawGridOnly && !OptionUnlab)    {
      -  
      +
                     // We generate labels (numeric only).
                     if (noExponent) {
                        double rlab = ::pow(10.,labelnumber);
      @@ -1589,7 +1589,7 @@ public:
                  }
         L160:
                  for (k=2;k<10;k++) {
      -  
      +
                     // Plot intermediate tick marks
                     //double Xone; //rm shadow warning.
                     Xone = X00+AXMUL*(::log10(double(k))+double(decade)-XMNLOG);
      @@ -1623,10 +1623,10 @@ public:
                          aLinesAxis.push_back((float)xpl2);
                          aLinesAxis.push_back((float)ypl2);
                        }
      -  
      +
                        // Draw the intermediate LOG labels if requested
      -  
      -                 if (MoreLogLabels && !OptionUnlab && 
      +
      +                 if (MoreLogLabels && !OptionUnlab &&
                            !drawGridOnly && !overlap) {
                           if (noExponent) {
                              double rlab = double(k)*::pow(10.,labelnumber-1);
      @@ -1683,8 +1683,8 @@ public:
                              }
                           }
                        }
      -  
      -                 // Draw the intermediate LOG grid if only three 
      +
      +                 // Draw the intermediate LOG grid if only three
                        // decades are requested
                        if (OptionGrid && NBININ <= 5 && ndiv > 100) {
                          TGaxis_Rotate(Xone,0,cosphi,sinphi,X0,Y0,xpl2, ypl2);
      @@ -1701,12 +1701,12 @@ public:
         L200:
               int kuku=0; if (kuku) { }
            }  //endif (OptionLog && ndiv)
      -  
      -  
      +
      +
            //out_error(m_out,"android_debug","end");
         //L210:
         }
      -  
      +
         /*
         void TGaxis_SetDecimals(bool dot)
         {
      @@ -1716,11 +1716,11 @@ public:
         // is also stripped, unless this option is specified.
         // One can disable the option by calling axis.SetDecimals(true).
         // Note the bit is set in fBits (as opposed to fBits2 in TAxis!)
      -  
      +
            if (dot) SetBit(TAxis_kDecimals);
            else     ResetBit(TAxis_kDecimals);
         }
      -  
      +
         void TGaxis_SetMaxDigits(int maxd)
         {
            // static function to set fMaxDigits for axis with the bin content
      @@ -1730,18 +1730,18 @@ public:
            //For example, to accept 6 digits number like 900000 on an axis
            //call TGaxis::SetMaxDigits(6). The default value is 5.
            //fMaxDigits must be greater than 0.
      -  
      +
            fMaxDigits = maxd;
            if (maxd < 1) fMaxDigits = 1;
         }
      -  
      +
         void TGaxis_SetMoreLogLabels(bool more)
         {
         // Set the kMoreLogLabels bit flag
         // When this option is selected more labels are drawn when in log scale
         // and there is a small number of decades  (<3).
         // Note that this option is automatically inherited from TAxis
      -  
      +
            if (more) SetBit(TAxis_kMoreLogLabels);
            else      ResetBit(TAxis_kMoreLogLabels);
         }
      @@ -1751,16 +1751,16 @@ public:
         // By default, an exponent of the form 10^N is used when the label values
         // are either all very small or very large.
         // One can disable the exponent by calling axis.SetNoExponent(true).
      -  
      +
            if (noExponent) SetBit(TAxis_kNoExponent);
            else            ResetBit(TAxis_kNoExponent);
         }
      -  void TGaxis_SetOption(const std::string& option)  
      +  void TGaxis_SetOption(const std::string& option)
         {
            fCHOPT = option;
         }
         */
      -  
      +
         void set_time_format(const std::string& a_format)
         // Change the format used for time plotting
         // ========================================
      @@ -1788,7 +1788,7 @@ public:
               //  fTimeFormat.c_str());
               return;
            }
      -  
      +
            std::string::size_type IdF = fTimeFormat.find("%F");
            if (IdF!=std::string::npos) {
               size_t LnF = fTimeFormat.size();
      @@ -1799,54 +1799,54 @@ public:
               //  fTimeFormat.c_str());
            } else {
               fTimeFormat = a_format;
      -  
      +
               // In CERN-ROOT :
               //SetTimeOffset(gStyle->GetTimeOffset());
               //TAxis::fTimeOffset = 788918400; // UTC time at 01/01/95
               //double UTC_time_1995_01_01__00_00_00 = 788918400; //CERN-ROOT
               //setTimeOffset(UTC_time_1995_01_01__00_00_00);
      -  
      +
               //Be consistent with SoAxis::timeOffset being 0.
               double UTC_time_1970_01_01__00_00_00 = 0; //UNIX
               set_time_offset(UTC_time_1970_01_01__00_00_00);
      -  
      +
               //::printf("debug : SbAxisHPLOT::setTimeFormat : 002 : \"%s\"\n",
               //  fTimeFormat.c_str());
            }
         }
      -  
      +
         void set_time_offset(double toffset,bool a_is_gmt = false) {
            // Change the time offse  t
      -  
      +
            std::string::size_type IdF = fTimeFormat.find("%F");
            if (IdF!=std::string::npos) {
              fTimeFormat = fTimeFormat.substr(0,IdF);
            }
            fTimeFormat += "%F";
      -  
      +
            time_t timeoff = (time_t)((long)(toffset));
            struct tm* utctis = ::gmtime(&timeoff);
      -  
      +
            char tmp[256];
            ::strftime(tmp,256,"%Y-%m-%d %H:%M:%S",utctis);
            fTimeFormat += tmp;
      -  
      +
            // append the decimal part of the time offset
            double ds = toffset-(int)toffset;
            if(ds!= 0) {
               snpf(tmp,sizeof(tmp),"s%g",ds);
               fTimeFormat += tmp;
            }
      -  
      +
            // If the time is GMT, stamp fTimeFormat
            if (a_is_gmt) fTimeFormat += " GMT";
      -  
      +
            //::printf("debug : SbAxisHPLOT::setTimeOffset : \"%s\"\n",
            //  fTimeFormat.c_str());
         }
      -  
      -  
      -  
      +
      +
      +
         ////////////////////////////////////////////////////////////////////////////
         ////////////////////////////////////////////////////////////////////////////
         ////////////////////////////////////////////////////////////////////////////
      @@ -1865,7 +1865,7 @@ private:
         //  BinLow,BinHigh : New WMIN,WMAX .
         //  nold   : Old NDIV .
         //  nbins    : New NDIV   .
      -  
      +
            int lwid, kwid;
            int ntemp = 0;
            int jlog  = 0;
      @@ -1873,10 +1873,10 @@ private:
            double alb, awidth, sigfig;
            double timemulti = 1;
            int roundmode =0;
      -  
      +
            int OptionTime;
            SETOPT(aCHOPT,'t',OptionTime);
      -  
      +
            double AL = mn(A1,A2);
            double AH = mx(A1,A2);
            if (AL == AH) AH = AL+1;
      @@ -1884,16 +1884,16 @@ private:
            if (nold == -1 && BinWidth > 0 ) goto L90;
            ntemp = (int)mx(nold,2);
            if (ntemp < 1) ntemp = 1;
      -  
      +
         L20:
            awidth = (AH-AL)/double(ntemp);
            timemulti = 1;
            if (awidth >= FLT_MAX) goto LOK;  //in float.h
            if (awidth <= 0)       goto LOK;
      -  
      +
         //      If time representation, bin width should be rounded to seconds
         //      minutes, hours or days
      -  
      +
            if (OptionTime && awidth>=60) { // if width in seconds, treat it as normal
               //   width in minutes
               awidth /= 60; timemulti *=60;
      @@ -1920,7 +1920,7 @@ private:
               }
            }
         //      Get nominal bin width in exponential for  m
      -  
      +
            jlog   = int(::log10(awidth));
            if (jlog <-200 || jlog > 200) {
               BinLow   = 0;
      @@ -1933,11 +1933,11 @@ private:
            sigfig = awidth* ::pow(10.,-jlog) -1e-10;
            //in the above statement, it is important to substract 1e-10
            //to avoid precision problems if the tests below
      -     
      +
         //      Round mantissa
      -  
      +
            switch (roundmode) {
      -  
      +
         //      Round mantissa up to 1, 1.5, 2, 3, or 6 in case of minutes
               case 1: // case 60
                  if      (sigfig <= 1)    siground = 1;
      @@ -1949,7 +1949,7 @@ private:
                  else                     siground = 6;
                  break;
               case 2: // case 12 and 24
      -  
      +
         //      Round mantissa up to 1, 1.2, 2, 2.4, 3 or 6 in case of hours or months
                  if      (sigfig <= 1 && jlog==0)    siground = 1;
                  else if (sigfig <= 1.2 && jlog==1)    siground = 1.2;
      @@ -1960,7 +1960,7 @@ private:
                  else if (jlog==0)        siground = 12;
                  else                     siground = 2.4;
                  break;
      -  
      +
         //-      Round mantissa up to 1, 1.4, 2, or 7 in case of days (weeks)
               case 3: // case 30
                  if      (sigfig <= 1 && jlog==0)    siground = 1;
      @@ -1969,7 +1969,7 @@ private:
                  else                     siground = 7;
                  break;
               default :
      -        
      +
         //      Round mantissa up to 1, 2, 2.5, 5, or 10 in case of decimal number
                  if      (sigfig <= 1)    siground = 1;
                  else if (sigfig <= 2)    siground = 2;
      @@ -1978,12 +1978,12 @@ private:
                  else                    {siground = 1;   jlog++; }
                  break;
            }
      -  
      +
            BinWidth = siground* ::pow(10.,jlog);
            if (OptionTime) BinWidth *= timemulti;
      -  
      +
         //      Get new bounds from new width BinWidth
      -  
      +
         L90:
            alb  = AL/BinWidth;
            if (TMath_Abs(alb) > 1e9) {
      @@ -2008,12 +2008,12 @@ private:
               goto LOK;
            }
            if (2*nbins == nold && !OptionTime) {ntemp++; goto L20; }
      -  
      +
         LOK:
            double oldBinLow = BinLow;
            double oldBinHigh = BinHigh;
            int oldnbins = nbins;
      -  
      +
            double atest = BinWidth*0.0001;
            //if (TMath_Abs(BinLow-A1)  >= atest) { BinLow  += BinWidth;  nbins--; } //replaced by Damir in 3.10/02
            //if (TMath_Abs(BinHigh-A2) >= atest) { BinHigh -= BinWidth;  nbins--; } //by the next two lines
      @@ -2059,10 +2059,10 @@ private:
               int width = int(BinWidth/5) + 1;
               BinWidth = 5*width;
               BinLow   = int(A1/BinWidth)*BinWidth  ;
      -  
      +
         //     We determine BinLow to have one tick mark at 0
         //     if there are negative labels.
      -  
      +
               if (A1 < 0) {
                  for (int ic=0; ic<1000; ic++) {
                     double rbl = BinLow/BinWidth;
      @@ -2078,8 +2078,8 @@ private:
               XB += BinWidth;
               nbins++;
            }
      -     BinHigh = XB - BinWidth;  
      -  }  
      +     BinHigh = XB - BinWidth;
      +  }
         void setLabelOffset(float aValue) { fLabelOffset = aValue;}
         void setLabelSize(float aValue) { fLabelSize = aValue;}
         void setTitleOffset(float aValue) { fTitleOffset = aValue;}
      @@ -2089,8 +2089,8 @@ public:
       
       private:
         std::ostream& m_out;
      -  //int fMaxDigits; //!Number of digits above which the 10>N notation is used 
      -private:  
      +  //int fMaxDigits; //!Number of digits above which the 10>N notation is used
      +private:
         //TObject :
         unsigned int fBits;       //bit field status word
         float    fTickSize;            //Size of primary tick mark in NDC
      diff --git a/source/analysis/g4tools/include/tools/image b/source/analysis/g4tools/include/tools/image
      index 4ce7011430..22a0a58460 100644
      --- a/source/analysis/g4tools/include/tools/image
      +++ b/source/analysis/g4tools/include/tools/image
      @@ -13,7 +13,7 @@
       namespace tools {
       namespace image {
       
      -// give a set of cols*rows same size rgb-image and build 
      +// give a set of cols*rows same size rgb-image and build
       // a big image :
       inline unsigned char* concatenate(unsigned char** a_buffers,
                                         unsigned int a_w,unsigned int a_h,
      @@ -41,8 +41,8 @@ inline unsigned char* concatenate(unsigned char** a_buffers,
       
         unsigned int wbw3 = wbw*a_bpp;
         unsigned int aw3 = a_w*a_bpp;
      -  
      -  //copy tiles :  
      +
      +  //copy tiles :
         unsigned int index = 0;
         for(unsigned int j=0;jis(file)) {
                 unsigned char* buffer = _open(*(*it),file,a_w,a_h,a_bpp);
                 end_file(file);
      -          return buffer;        
      +          return buffer;
               }
             }
             end_file(file);
      @@ -371,7 +371,7 @@ protected:
               //  sw = 2;
               //  sh = sw/aspect;
               //}
      -    
      +
               unsigned int sw = 2;
               unsigned int sh = 2;
               while(true) {
      @@ -379,10 +379,10 @@ protected:
                 sw *=2;
                 sh *=2;
               }
      -    
      +
               unsigned int sx = (a_w-sw)/2;
               unsigned int sy = (a_h-sh)/2;
      -    
      +
               buffer = a_reader.read_part
                          (m_out,a_path,sx,sy,sw,sh,a_w,a_h,a_bpp);
             } else {
      @@ -391,7 +391,7 @@ protected:
           } else {
             buffer = a_reader.read(m_out,a_path,a_w,a_h,a_bpp);
           }
      -  
      +
           if(!buffer) {
             m_out << "tools::image::iterator_reader::_open :"
                   << " for file " << sout(a_path)
      @@ -400,7 +400,7 @@ protected:
             a_w = 0;a_h = 0;a_bpp = 0;
             return 0;
           }
      -    
      +
           return buffer;
         }
       
      @@ -417,7 +417,7 @@ protected:
           tools_vforcit(ireader*,a_from,it) m_readers.push_back((*it)->copy());
         }
       protected:
      -  std::ostream& m_out; 
      +  std::ostream& m_out;
         unsigned int m_limit;
         std::vector m_readers;
       };
      diff --git a/source/analysis/g4tools/include/tools/img b/source/analysis/g4tools/include/tools/img
      index 6fc30f8640..3a02a96757 100644
      --- a/source/analysis/g4tools/include/tools/img
      +++ b/source/analysis/g4tools/include/tools/img
      @@ -215,7 +215,8 @@ public:
         unsigned int height() const {return m_h;}
         unsigned int bytes_per_pixel() const {return m_n;}
         unsigned int bpp() const {return m_n;}
      -  T* buffer() const {return m_buffer;}
      +  const T* buffer() const {return m_buffer;}
      +  T* buffer() {return m_buffer;}
         bool owner() const {return m_owner;}
         unsigned int size() const {return m_w*m_h*m_n*sizeof(T);} //bytes.
       public:
      @@ -241,7 +242,7 @@ public:
             }
             return true;
           }
      -  
      +
           unsigned int nw = m_w*a_factor;
           unsigned int nh = m_h*a_factor;
           unsigned int sz = nh*nw*m_n;
      @@ -249,18 +250,18 @@ public:
             a_res.make_empty();
             return false;
           }
      -  
      +
           T* nb = new T[sz];
           if(!nb) {
             a_res.make_empty();
             return false;
           }
      -  
      +
           for(unsigned int j=0;j(m_w-a_sx,a_sw); 
      -    unsigned int rh = min_of(m_h-a_sy,a_sh); 
      +    unsigned int rw = min_of(m_w-a_sx,a_sw);
      +    unsigned int rh = min_of(m_h-a_sy,a_sh);
           unsigned int sz = rh*rw*m_n;
           if(!sz) {
             a_res.make_empty();
             return false;
           }
      -  
      +
           T* rb = new T[sz];
           if(!rb) {
             a_res.make_empty();
             return false;
           }
      -  
      +
           unsigned int rstride = rw * m_n;
           T* rpos = rb;
       
      @@ -515,7 +516,7 @@ public:
             ::memcpy(rpos,pos,rstride*sizeof(T));
           }
       
      -    a_res.set(rw,rh,m_n,rb,true);  
      +    a_res.set(rw,rh,m_n,rb,true);
           return true;
         }
       
      @@ -539,7 +540,7 @@ public:
             while(true) {if(rw>=m_w) break;rw *=2;}
             unsigned int rh = 2;
             while(true) {if(rh>=m_h) break;rh *=2;}
      -    
      +
             if((rw==m_w)&&(rh==m_h)) { //exact match.
               if(a_res_force_owner) {
                 a_res.copy(m_w,m_h,m_n,m_buffer);
      @@ -550,7 +551,7 @@ public:
             }
       
             // we expand the image and fill new spaces with a_pixel.
      -  
      +
             T* rb = 0;
             bool res_set = true;
             if(a_res.owner()&&(a_res.size()==(rh*rw*m_n))) {
      @@ -564,8 +565,8 @@ public:
                 return false;
               }
             }
      -    
      -      unsigned int num = rw*m_n; 
      +
      +      unsigned int num = rw*m_n;
       
             // initialize with given color :
            {T* pos = rb;
      @@ -576,12 +577,12 @@ public:
             for(unsigned int j=1;j bottom.
               ::memcpy(pos,rb,sz);
             }}
      -    
      +
             // center :
      -      unsigned int col = (rw-m_w)/2;  
      -      unsigned int row = (rh-m_h)/2;  
      -    
      -      unsigned int mnum = m_w*m_n; 
      +      unsigned int col = (rw-m_w)/2;
      +      unsigned int row = (rh-m_h)/2;
      +
      +      unsigned int mnum = m_w*m_n;
       
             // copy original image in a centered part of the new one :
            {T* pos = m_buffer;
      @@ -592,17 +593,17 @@ public:
             }}
       
             if(res_set) a_res.set(rw,rh,m_n,rb,true);
      -    
      +
             return true;
           } else {
             // then m_w>=2 and m_h>=2
      -  
      +
             // find closest power of two lower than m_w, m_h :
             unsigned int sw = 2;
             while(true) {if((sw*2)>m_w) break;sw *=2;}
             unsigned int sh = 2;
             while(true) {if((sh*2)>m_h) break;sh *=2;}
      -  
      +
             if((sw==m_w)&&(sh==m_h)) { //exact match.
               if(a_res_force_owner) {
                 a_res.copy(m_w,m_h,m_n,m_buffer);
      @@ -611,13 +612,13 @@ public:
               }
               return true;
             }
      -  
      +
             unsigned int sx = (m_w-sw)/2;
             unsigned int sy = (m_h-sh)/2;
      -  
      +
             return get_part(sx,sy,sw,sh,a_res);
           }
      -  
      +
         }
       
         bool check_gl_limit(unsigned int a_GL_MAX_TEXTURE_SIZE,img& a_res) const {
      @@ -670,16 +671,16 @@ public:
             for(unsigned int i=0;i& a_res,const T& a_pixel) const {
           if(m_n!=3) return false;
       
      -    unsigned int a_n = 4;
      +    unsigned int n = 4;
       
           a_res.make_empty();
      -    unsigned int sz = m_w*m_h*a_n;
      +    unsigned int sz = m_w*m_h*n;
           if(!sz) return false;
       
           a_res.m_buffer = new T[sz];
      @@ -751,23 +752,41 @@ public:
           a_res.m_owner = true;
           a_res.m_w = m_w;
           a_res.m_h = m_h;
      -    a_res.m_n = a_n;
      +    a_res.m_n = n;
       
           for(unsigned int j=0;j=a_w) break;a_ew *=2;}
         a_eh = 2;
      -  while(true) {if(a_eh>=a_h) break;a_eh *=2;}    
      +  while(true) {if(a_eh>=a_h) break;a_eh *=2;}
       }
       
       }
      diff --git a/source/analysis/g4tools/include/tools/io/irbuf b/source/analysis/g4tools/include/tools/io/irbuf
      index 60a1600628..c968f9a085 100644
      --- a/source/analysis/g4tools/include/tools/io/irbuf
      +++ b/source/analysis/g4tools/include/tools/io/irbuf
      @@ -62,7 +62,7 @@ public:
         virtual bool read_std_vec_vec(std_vec_vec_string_t&) = 0;
       public: //helpers
         template 
      -  bool read_std_vec(std::vector& a_x) { 
      +  bool read_std_vec(std::vector& a_x) {
           uint32 n;
           T* v;
           if(!read_vec(n,v)) return false;
      diff --git a/source/analysis/g4tools/include/tools/jpeg b/source/analysis/g4tools/include/tools/jpeg
      index aa82739faa..1f4a216e03 100644
      --- a/source/analysis/g4tools/include/tools/jpeg
      +++ b/source/analysis/g4tools/include/tools/jpeg
      @@ -47,7 +47,7 @@ inline bool write_file(FILE* a_file,int a_quality,unsigned char* a_buffer,unsign
         int row_stride = a_width * cinfo.input_components;
       
         while (cinfo.next_scanline < cinfo.image_height) {
      -    JSAMPROW row_pointer = 
      +    JSAMPROW row_pointer =
             a_buffer+(cinfo.image_height-1-cinfo.next_scanline) * row_stride;
           ::jpeg_write_scanlines(&cinfo, &row_pointer, 1);
         }
      @@ -171,7 +171,7 @@ inline unsigned char* read_file(FILE* a_file,unsigned int& a_width,unsigned int&
           a_height = 0;
           a_bpp = 0;
           return 0;
      -  }  
      +  }
       
         //FIXME : iPad : the below crashes on LHCb_artist_16384_4096_80.jpg.
       
      @@ -236,7 +236,7 @@ inline bool infos(std::ostream& a_out,const std::string& a_file,unsigned int& a_
           a_height = 0;
           a_bpp = 0;
           return false;
      -  } 
      +  }
       
         FILE* file = ::fopen(a_file.c_str(),"rb");
         if(!file) {
      @@ -279,7 +279,7 @@ inline unsigned char* read(std::ostream& a_out,const std::string& a_file,unsigne
           a_height = 0;
           a_bpp = 0;
           return 0;
      -  } 
      +  }
       
         FILE* file = ::fopen(a_file.c_str(),"rb");
         if(!file) {
      @@ -310,7 +310,7 @@ inline unsigned char* read(std::ostream& a_out,const std::string& a_file,unsigne
         a_width = w;
         a_height = h;
         a_bpp = bpp;
      -  return buffer;  
      +  return buffer;
       }
       
       inline unsigned char* read_part(std::ostream& a_out,
      @@ -327,7 +327,7 @@ inline unsigned char* read_part(std::ostream& a_out,
           a_rh = 0;
           a_rbpp = 0;
           return 0;
      -  } 
      +  }
       
         FILE* file = ::fopen(a_file.c_str(),"rb");
         if(!file) {
      @@ -377,8 +377,8 @@ inline unsigned char* read_part(std::ostream& a_out,
         }
       
         // 012345
      -  a_rw = tools::mn(w-a_sx,a_sw); 
      -  a_rh = tools::mn(h-a_sy,a_sh); 
      +  a_rw = tools::mn(w-a_sx,a_sw);
      +  a_rh = tools::mn(h-a_sy,a_sh);
         a_rbpp = cinfo.output_components;
       
         if(!a_rw||!a_rh||!a_rbpp){
      @@ -400,7 +400,7 @@ inline unsigned char* read_part(std::ostream& a_out,
           a_rh = 0;
           a_rbpp = 0;
           return 0;
      -  }  
      +  }
       
         unsigned char* line = new unsigned char[row_stride];
         if(!line) {
      @@ -412,7 +412,7 @@ inline unsigned char* read_part(std::ostream& a_out,
           a_rh = 0;
           a_rbpp = 0;
           return 0;
      -  }  
      +  }
       
         //FIXME : iPad : the below crashes on LHCb_artist_16384_4096_80.jpg.
       
      @@ -451,11 +451,11 @@ inline unsigned char* read_part(std::ostream& a_out,
       
         delete [] line;
       
      -  return image_buffer;  
      +  return image_buffer;
       }
       
       inline bool write(std::ostream& a_out,
      -                  const std::string& a_file,                      
      +                  const std::string& a_file,
                         unsigned char* a_buffer,
                         unsigned int a_width,
                         unsigned int a_height,
      @@ -505,7 +505,7 @@ inline bool concatenate(std::ostream& a_out,
                               unsigned char a_bc,
                               const std::string& a_file,int a_quality) {
         unsigned int wa,ha,bppa;
      -  unsigned char* ba = 
      +  unsigned char* ba =
           tools::image::concatenate
             (a_out,a_files,a_cols,a_rows,a_bw,a_bh,a_bc,read,wa,ha,bppa);
         if(!ba) {
      @@ -514,7 +514,7 @@ inline bool concatenate(std::ostream& a_out,
                 << std::endl;
           delete [] ba;
           return false;
      -  } 
      +  }
       
         FILE* file = ::fopen(a_file.c_str(),"wb");
         if(!file) {
      @@ -612,7 +612,7 @@ public:
       //            << " file " << a_file << " is not jpeg."
       //            << std::endl;
       //      return false;
      -//    } 
      +//    }
       //    m_FILE = ::fopen(a_file.c_str(),"rb");
       //    if(!m_FILE) {
       //      m_out << "tools::jpeg::jpeg_data::open :"
      @@ -620,7 +620,7 @@ public:
       //            << std::endl;
       //      return false;
       //    }
      -//  
      +//
       //    m_cinfo.err = ::jpeg_std_error(&m_jerr.pub);
       //    m_jerr.pub.error_exit = exlib_jpeg_exlib_jpeg_exlib_jpeg_error_exit;
       //    if(::setjmp(m_jerr.setjmp_buffer)) {
      @@ -637,7 +637,7 @@ public:
       //    ::jpeg_read_header(&m_cinfo,TRUE);
       //
       //    ::jpeg_start_decompress(&m_cinfo);
      -//  
      +//
       //    if(m_cinfo.output_components!=3) {
       //      m_out << "tools::jpeg::jpeg_data::open :"
       //            << " file " << a_file << " dont't have three components."
      @@ -646,10 +646,10 @@ public:
       //      m_FILE = 0;
       //      return false;
       //    }
      -//  
      +//
       //    m_row_stride = m_cinfo.output_width * m_cinfo.output_components;
      -//  
      -//    unsigned char* buffer = 
      +//
      +//    unsigned char* buffer =
       //      new unsigned char[m_row_stride * m_cinfo.output_height];
       //    if(!buffer) {
       //      m_out << "tools::jpeg::jpeg_data::open :"
      @@ -659,7 +659,7 @@ public:
       //      m_FILE = 0;
       //      return false;
       //    }
      -//  
      +//
       //    tools::img_byte::set(m_cinfo.output_width,m_cinfo.output_height,
       //                         buffer,true);
       //    m_pos = buffer + m_row_stride * m_cinfo.output_height;
      diff --git a/source/analysis/g4tools/include/tools/lina/box3 b/source/analysis/g4tools/include/tools/lina/box3
      index c1698aced0..14a0f5eaa9 100644
      --- a/source/analysis/g4tools/include/tools/lina/box3
      +++ b/source/analysis/g4tools/include/tools/lina/box3
      @@ -122,7 +122,7 @@ public:
         }
       
         bool get_cube_size(T_t& a_dx,T_t& a_dy,T_t& a_dz,T_t(*a_sqrt)(T_t)) const {
      -    if(!get_size(a_dx,a_dy,a_dz)) return false;    
      +    if(!get_size(a_dx,a_dy,a_dz)) return false;
           if((a_dx<=zero())&&(a_dy<=zero())&&(a_dz<=zero())) return false;
           if((a_dx<=zero())&&(a_dy<=zero())) { //dz not 0 :
             a_dx = T_t(0.1)*a_dz;
      diff --git a/source/analysis/g4tools/include/tools/lina/geom2 b/source/analysis/g4tools/include/tools/lina/geom2
      index 80d6384de7..a79b03d0c9 100644
      --- a/source/analysis/g4tools/include/tools/lina/geom2
      +++ b/source/analysis/g4tools/include/tools/lina/geom2
      @@ -44,7 +44,7 @@ inline bool is_inside(const VEC2& a_P,const std::vector& a_V) {
                 --wn;            // have a valid down intersect
           }
         }
      -  
      +
         return ((wn!=0)?true:false);
       }
       
      @@ -85,7 +85,7 @@ inline bool inside(const std::pair& a_P,const std::vector< std::pair >
                 --wn;            // have a valid down intersect
           }
         }
      -  
      +
         return ((wn!=0)?true:false);
       }
       
      @@ -98,7 +98,7 @@ inline bool intersect(const VEC2& P1,const VEC2& Q1,const VEC2& P2,const VEC2& Q
         // (Q1-P1)*r - (Q2-P2)*s = P2-P1
         // r*(Q1-P1).v0 - s*(Q2-P2).v0 = (P2-P1).v0 //x
         // r*(Q1-P1).v1 - s*(Q2-P2).v1 = (P2-P1).v1 //y
      -  
      +
         // a*r + b*s = c
         // d*r + e*s = f
       
      diff --git a/source/analysis/g4tools/include/tools/lina/geom3 b/source/analysis/g4tools/include/tools/lina/geom3
      index d6d1110340..d361e1c982 100644
      --- a/source/analysis/g4tools/include/tools/lina/geom3
      +++ b/source/analysis/g4tools/include/tools/lina/geom3
      @@ -75,8 +75,8 @@ protected:
           //  f(s) = a s**3 + b s**2 + c s + d
           // f'(s) = 3 a s**2 + 2 b s + c
       
      -    //  f(0) = d = p0 
      -    // f'(0) = c = v0 
      +    //  f(0) = d = p0
      +    // f'(0) = c = v0
       
           //  f(1) =   a +   b + v0 + p0 = p1
           // f'(1) = 3 a + 2 b + v0 = v1
      @@ -91,7 +91,7 @@ protected:
           T a_x = -2*a_p1_x + a_v0_x + 2*a_p0_x + a_v1_x;
           T a_y = -2*a_p1_y + a_v0_y + 2*a_p0_y + a_v1_y;
           T a_z = -2*a_p1_z + a_v0_z + 2*a_p0_z + a_v1_z;
      -    m_a.set_value(a_x,a_y,a_z); 
      +    m_a.set_value(a_x,a_y,a_z);
       
           T b_x = 3*(a_p1_x - a_v0_x - a_p0_x) - (a_v1_x - a_v0_x);
           T b_y = 3*(a_p1_y - a_v0_y - a_p0_y) - (a_v1_y - a_v0_y);
      @@ -151,10 +151,10 @@ public:
           for(size_t i = 0; i < n; i++) {
             VEC3 v0 = m_data[m_cur][i];
             VEC3 v1 = m_data[m_cur][i+1];
      -  
      +
             T d0 = plane.distance(v0);
             T d1 = plane.distance(v1);
      -  
      +
             if (d0 >= 0.0f && d1 < 0.0f) { // exit plane
               VEC3 dir = v1-v0;
               // we know that v0 != v1 since we got here
      @@ -182,7 +182,7 @@ public:
       
       protected:
         void out_point(const VEC3& a_p) {m_data[m_cur ^ 1].push_back(a_p);}
      -  
      +
       protected:
         std::vector m_data[2];
         unsigned int m_cur;
      diff --git a/source/analysis/g4tools/include/tools/lina/line b/source/analysis/g4tools/include/tools/lina/line
      index 26f35dd8f3..5c3c2657f5 100644
      --- a/source/analysis/g4tools/include/tools/lina/line
      +++ b/source/analysis/g4tools/include/tools/lina/line
      @@ -95,24 +95,24 @@ public:
           VEC3 D0 = m_dir;
           VEC3 D1 = a_line.m_dir;
           VEC3 D0N = D0;
      -  
      +
           T c[3], d[3];
      -  
      +
           for(unsigned int i=0;i<3;i++) {
             d[i] = D1[i] - D0N[i]*(D0[0]*D1[0] + D0[1]*D1[1] + D0[2]*D1[2]);
             c[i] = P1[i] - P0[i] + D0N[i]*(D0[0]*P0[0] + D0[1]*P0[1] + D0[2]*P0[2]);
           }
      -  
      +
           T den = d[0]*d[0]+d[1]*d[1]+d[2]*d[2];
           if(den==T()) return false;
       
           T t = -(c[0]*d[0]+c[1]*d[1]+c[2]*d[2]) / den;
      -  
      +
           a_on_line = a_line.m_pos + a_line.m_dir * t;
           closest_point(a_on_line,a_on_this);
           return true;
         }
      -  
      +
         bool intersect(const line& a_line,VEC3& a_out,const T& a_prec) const {
           VEC3 p,q;
           if(!closest_points(a_line,p,q)) return false;
      @@ -121,7 +121,7 @@ public:
           return true;
         }
       */
      -  
      +
       protected:
         VEC3 m_pos;
         VEC3 m_dir; //normalized.
      diff --git a/source/analysis/g4tools/include/tools/lina/mat b/source/analysis/g4tools/include/tools/lina/mat
      index 9de9790143..5e9ad1936c 100644
      --- a/source/analysis/g4tools/include/tools/lina/mat
      +++ b/source/analysis/g4tools/include/tools/lina/mat
      @@ -33,7 +33,7 @@ public:
         mat(
       #ifdef TOOLS_MEM
             bool a_inc = true
      -#endif      
      +#endif
             ) {
       #ifdef TOOLS_MEM
           if(a_inc) mem::increment(s_class().c_str());
      @@ -155,7 +155,7 @@ protected:
       private:static void check_instantiation() {nmat dummy(2);}
       };
       
      -template  
      +template 
       inline nmat copy(const mat& a_from) {
         unsigned int D2 = D*D;
         nmat v(D);
      @@ -182,7 +182,7 @@ inline void multiply(VECTOR& a_vec,const typename VECTOR::value_type::elem_t& a_
       /// related to complex numbers : //////////////////////////////////////////////////////
       ///////////////////////////////////////////////////////////////////////////////////////
       
      -template  
      +template 
       inline void conjugate(MAT& a_m,typename MAT::elem_t (*a_conj)(const typename MAT::elem_t&)) {
         typedef typename MAT::elem_t T;
         T* pos = const_cast(a_m.data());
      @@ -192,7 +192,7 @@ inline void conjugate(MAT& a_m,typename MAT::elem_t (*a_conj)(const typename MAT
         }
       }
       
      -template  
      +template 
       inline bool is_real(MAT& a_m,typename MAT::elem_t::value_type (*a_imag)(const typename MAT::elem_t&)) {
         typedef typename MAT::elem_t T;
         T* pos = const_cast(a_m.data());
      @@ -201,7 +201,7 @@ inline bool is_real(MAT& a_m,typename MAT::elem_t::value_type (*a_imag)(const ty
         return true;
       }
       
      -template  
      +template 
       inline bool is_real_prec(MAT& a_m,typename MAT::elem_t::value_type (*a_imag)(const typename MAT::elem_t&),
                                const PREC& a_prec,PREC(*a_fabs)(const typename MAT::elem_t::value_type&)) {\
         typedef typename MAT::elem_t T;
      @@ -220,7 +220,7 @@ inline bool is_imag(MAT& a_m,typename MAT::elem_t::value_type (*a_real)(const ty
         return true;
       }
       
      -template  
      +template 
       inline bool to_real(const CMAT& a_c,RMAT& a_r,typename CMAT::elem_t::value_type (*a_real)(const typename CMAT::elem_t&)) {
         if(a_r.dimension()!=a_c.dimension()) return false;
         typedef typename CMAT::elem_t CT;
      @@ -232,7 +232,7 @@ inline bool to_real(const CMAT& a_c,RMAT& a_r,typename CMAT::elem_t::value_type
         return true;
       }
       
      -template  
      +template 
       inline bool to_complex(const RMAT& a_r,CMAT& a_c) {
         if(a_c.dimension()!=a_r.dimension()) return false;
         typedef typename RMAT::elem_t RT;
      @@ -244,7 +244,7 @@ inline bool to_complex(const RMAT& a_r,CMAT& a_c) {
         return true;
       }
       
      -template  
      +template 
       inline void dagger(MAT& a_m,typename MAT::elem_t (*a_conj)(const typename MAT::elem_t&)) {
         conjugate(a_m,a_conj);
         a_m.transpose();
      @@ -259,17 +259,17 @@ inline bool decomplex(const CMAT& a_c,RMAT& a_r,
         //         | -Y  X |
         typedef typename CMAT::elem_t CT; //std::complex
         typedef typename RMAT::elem_t RT; //double
      -  
      +
         unsigned int cdim = a_c.dimension();
      -  if(a_r.dimension()!=2*cdim) {a_r.set_zero();return false;}  
      -  RT value;unsigned int r,c;  
      +  if(a_r.dimension()!=2*cdim) {a_r.set_zero();return false;}
      +  RT value;unsigned int r,c;
         for(r=0;r operator*(const nmat& a_m,const T& a_fac) {
       }
       */
       
      -template  
      +template 
       inline bool mat_fabs(const MAT& a_in,MAT& a_ou,REAL(*a_fabs)(const typename MAT::elem_t&)) {
         if(a_in.dimension()!=a_ou.dimension()) {a_ou.set_zero();return false;}
         typedef typename MAT::elem_t T;
      diff --git a/source/analysis/g4tools/include/tools/lina/mat4 b/source/analysis/g4tools/include/tools/lina/mat4
      index 8a6e799741..f10d7ac4b9 100644
      --- a/source/analysis/g4tools/include/tools/lina/mat4
      +++ b/source/analysis/g4tools/include/tools/lina/mat4
      @@ -84,12 +84,12 @@ public:
       
           //NOTE : Z(x,y, z,1) = -2z/(f-n)+tz = [-2z-f-n]/(f-n)
           //       W(x,y, z,1) =  1 -> Z/W = Z
      -    //       Z(x,y,-n,1) = -1 
      -    //       Z(x,y,-f,1) =  1 
      +    //       Z(x,y,-n,1) = -1
      +    //       Z(x,y,-f,1) =  1
       
           //       Z(x,y,-(f+n)/2,1) = 0
       
      -    //       X(x,0, z,1) = 2x/(r-l)+tx = [2x-r-l]/(r-l) 
      +    //       X(x,0, z,1) = 2x/(r-l)+tx = [2x-r-l]/(r-l)
           //       X(r,0, z,1) = 1
       
           // the view direction is then (0,0,1) in the final projection.
      @@ -124,7 +124,7 @@ public:
       
           //       Z(x,y,-2fn/(f+n),1) = 0
           // ->  Z/W                   = 0
      - 
      +
           //       Z(x,y,-f,1) = -[-ff-fn+2fn]/(f-n) = -[fn-ff]/(f-n) = f
           //       W(x,y,-f,1) = f
           // ->  Z/W(x,y,-f,1) = 1
      @@ -152,6 +152,12 @@ public:
           a_z = pr::m_vec[14];
         }
       
      +  void no_translate() {
      +    pr::m_vec[12] = 0;
      +    pr::m_vec[13] = 0;
      +    pr::m_vec[14] = 0;
      +  }
      +
       //void set_translate_only(const T& a_x,const T& a_y,const T& a_z) {
       //  pr::m_vec[12] = a_x;
       //  pr::m_vec[13] = a_y;
      @@ -352,8 +358,8 @@ protected:
         static void _set_rotate(const T& a_x,const T& a_y,const T& a_z,const T& a_angle,T v[],T(*a_sin)(T),T(*a_cos)(T)) {
           //WARNING : (a_x,a_y,a_z) must be a normalized vector.
           // v[] = exp(-a_angle*n(a_x,a_y,a_z)*Rs). It models the rotation of an object in the same coordinate system (active rotation).
      -    T si = a_sin(a_angle);    
      -    T co = a_cos(a_angle);    
      +    T si = a_sin(a_angle);
      +    T co = a_cos(a_angle);
           T x = a_x;
           T y = a_y;
           T z = a_z;
      @@ -394,7 +400,7 @@ public:
           //pr::m_vec[1] = 10;pr::m_vec[5] = 11;pr::m_vec[ 9] = 12;pr::m_vec[13] = 13;
           //pr::m_vec[2] = 20;pr::m_vec[6] = 21;pr::m_vec[10] = 22;pr::m_vec[14] = 23;
           //pr::m_vec[3] = 30;pr::m_vec[7] = 31;pr::m_vec[11] = 32;pr::m_vec[15] = 33;
      -    
      +
           T tv_0  = tv[0];
           T tv_1  = tv[1];
           T tv_2  = tv[2];
      @@ -453,6 +459,13 @@ public:
           tv[15] = tv_15;
         }
       
      +  template 
      +  void set_mat3(MAT3& a_m3) {
      +    a_m3.set_matrix(pr::m_vec[0],pr::m_vec[4],pr::m_vec[ 8],   //1 row
      +                    pr::m_vec[1],pr::m_vec[5],pr::m_vec[ 9],   //2 row
      +                    pr::m_vec[2],pr::m_vec[6],pr::m_vec[10]);  //3 row
      +  }
      +  
       private:static void check_instantiation() {mat4 dummy;}
       };
       
      @@ -489,14 +502,10 @@ namespace tools {
       template 
       inline std::ostream& operator<<(std::ostream& a_out,const mat4& a_mtx){
         const T* v = a_mtx.data();
      -  a_out << v[0] << "," << v[4] << "," << v[ 8] << "," << v[12]
      -        << std::endl
      -        << v[1] << "," << v[5] << "," << v[ 9] << "," << v[13]
      -        << std::endl
      -        << v[2] << "," << v[6] << "," << v[10] << "," << v[14]
      -        << std::endl
      -        << v[3] << "," << v[7] << "," << v[11] << "," << v[15]
      -        << std::endl;
      +  a_out << v[0] << "," << v[4] << "," << v[ 8] << "," << v[12] << std::endl
      +        << v[1] << "," << v[5] << "," << v[ 9] << "," << v[13] << std::endl
      +        << v[2] << "," << v[6] << "," << v[10] << "," << v[14] << std::endl
      +        << v[3] << "," << v[7] << "," << v[11] << "," << v[15] << std::endl;
         return a_out;
       }
       
      diff --git a/source/analysis/g4tools/include/tools/lina/plane b/source/analysis/g4tools/include/tools/lina/plane
      index 465f481c48..d70bdb827c 100644
      --- a/source/analysis/g4tools/include/tools/lina/plane
      +++ b/source/analysis/g4tools/include/tools/lina/plane
      @@ -19,16 +19,16 @@ public:
           // Construct a plane given 3 points.
           // Orientation is computed by taking (p1 - p0) x (p2 - p0) and
           // pointing the normal in that direction.
      -  
      +
           VEC3 P = a_p1;
           P.subtract(a_p0);
           VEC3 P2 = a_p2;
           P2.subtract(a_p0);
           P.cross(P2,m_normal);
           if(!m_normal.normalize()) {} //throw
      -    m_distance = 
      -      m_normal.v0() * a_p0.v0() + 
      -      m_normal.v1() * a_p0.v1() + 
      +    m_distance =
      +      m_normal.v0() * a_p0.v0() +
      +      m_normal.v1() * a_p0.v1() +
             m_normal.v2() * a_p0.v2();
         }
       
      @@ -59,7 +59,7 @@ public:
           // Offset a plane by a given distance.
           m_distance += a_distance;
         }
      -  
      +
         bool intersect(const line& a_line,VEC3& a_intersection) const {
           // Intersect line and plane, returning true if there is an intersection
           // false if line is parallel to plane
      @@ -74,7 +74,7 @@ public:
           //a_intersection = pos + t * dir;
           return true;
         }
      -  
      +
         bool is_in_half_space(const VEC3& a_point) const {
           // Returns true if the given point is within the half-space
           // defined by the plane
      @@ -84,11 +84,11 @@ public:
           pos.add(a_point);
           return (m_normal.dot(pos) >= T() ? true : false);
         }
      -  
      +
         const VEC3& normal() const {return m_normal;}
       
         T distance_from_origin() const {return m_distance;}
      -  
      +
         T distance(const VEC3& a_point) const {
           // Return the distance from point to plane. Positive distance means
           // the point is in the plane's half space.
      @@ -106,9 +106,9 @@ public:
           // Orientation is given by the normal vector n.
           m_normal = a_normal;
           if(!m_normal.normalize()) {} //throw
      -    m_distance = 
      -      m_normal.v0() * a_point.v0() + 
      -      m_normal.v1() * a_point.v1() + 
      +    m_distance =
      +      m_normal.v0() * a_point.v0() +
      +      m_normal.v1() * a_point.v1() +
             m_normal.v2() * a_point.v2();
         }
       
      diff --git a/source/analysis/g4tools/include/tools/lina/qrot b/source/analysis/g4tools/include/tools/lina/qrot
      index 1249d8367b..caeaf75232 100644
      --- a/source/analysis/g4tools/include/tools/lina/qrot
      +++ b/source/analysis/g4tools/include/tools/lina/qrot
      @@ -96,12 +96,12 @@ public:
       
           // Optimize by doing 1 div and 4 muls instead of 4 divs.
           T inv = one() / length;
      -  
      +
           a_r.m_quat.set_value(-m_quat.v0() * inv,
                                -m_quat.v1() * inv,
                                -m_quat.v2() * inv,
                                 m_quat.v3() * inv);
      -  
      +
           return true;
         }
       
      @@ -124,7 +124,7 @@ public:
         bool set_value(const VEC3& a_from,const VEC3& a_to,T(*a_sqrt)(T),T(*a_fabs)(T)) {
           // code taken from coin3d/SbRotation.
           //NOTE : coin3d/SbMatrix logic is transposed relative to us.
      -    
      +
           VEC3 from(a_from);
           if(from.normalize()==T()) return false;
           VEC3 to(a_to);
      @@ -210,10 +210,10 @@ public:
             unsigned int k = (j+1)%3;
       
             T _s = a_sqrt((a_m.value(i,i) - (a_m.value(j,j) + a_m.value(k,k))) + a_m.v33());
      -  
      +
             m_quat.set_value(i,_s * half());
             _s = half() / _s;
      -  
      +
             m_quat.v3((a_m.value(k,j) - a_m.value(j,k)) * _s);
             m_quat.set_value(j,(a_m.value(j,i) + a_m.value(i,j)) * _s);
             m_quat.set_value(k,(a_m.value(k,i) + a_m.value(i,k)) * _s);
      @@ -228,7 +228,7 @@ public:
         void value(MAT4& a_m) const {
           //Return this rotation in the form of a matrix.
           //NOTE : in coin3d/SbRotation, it looks as if "w <-> -w", but coin3d/SbMatrix logic is transposed relative to us.
      -    
      +
           const T x = m_quat.v0();
           const T y = m_quat.v1();
           const T z = m_quat.v2();
      @@ -240,19 +240,19 @@ public:
           a_m.v01(2*x*y - 2*w*z);
           a_m.v02(2*x*z + 2*w*y);
           a_m.v03(0);
      -  
      +
           // second row :
           a_m.v10(2*x*y + 2*w*z);
           a_m.v11(w*w - x*x + y*y - z*z);
           a_m.v12(2*y*z - 2*w*x);
           a_m.v13(0);
      -  
      +
           // third row :
           a_m.v20(2*x*z - 2*w*y);
           a_m.v21(2*y*z + 2*w*x);
           a_m.v22(w*w - x*x - y*y + z*z);
           a_m.v23(0);
      -  
      +
           // fourth row :
           a_m.v30(0);
           a_m.v31(0);
      @@ -264,7 +264,7 @@ public:
         T value_3(MAT3& a_m) const {
           //Return this rotation in the form of a 3D matrix.
           //NOTE : in coin3d/SbRotation, it looks as if "w <-> -w", but coin3d/SbMatrix logic is transposed relative to us.
      -    
      +
           const T x = m_quat.v0();
           const T y = m_quat.v1();
           const T z = m_quat.v2();
      @@ -275,17 +275,17 @@ public:
           a_m.v00(w*w + x*x - y*y - z*z);
           a_m.v01(2*x*y - 2*w*z);
           a_m.v02(2*x*z + 2*w*y);
      -  
      +
           // second row :
           a_m.v10(2*x*y + 2*w*z);
           a_m.v11(w*w - x*x + y*y - z*z);
           a_m.v12(2*y*z - 2*w*x);
      -  
      +
           // third row :
           a_m.v20(2*x*z - 2*w*y);
           a_m.v21(2*y*z + 2*w*x);
           a_m.v22(w*w - x*x - y*y + z*z);
      -  
      +
           // fourth row :
           //a_m.v30(0);
           //a_m.v31(0);
      @@ -299,20 +299,20 @@ public:
           const T y = m_quat.v1();
           const T z = m_quat.v2();
           const T w = m_quat.v3();
      -  
      +
           // first row :
           T v0 =     (w*w + x*x - y*y - z*z) * a_in.v0()
                     +        (2*x*y - 2*w*z) * a_in.v1()
                     +        (2*x*z + 2*w*y) * a_in.v2();
      -  
      +
           T v1 =             (2*x*y + 2*w*z) * a_in.v0()
                     +(w*w - x*x + y*y - z*z) * a_in.v1()
                     +        (2*y*z - 2*w*x) * a_in.v2();
      -  
      +
           T v2 =             (2*x*z - 2*w*y) * a_in.v0()
                     +        (2*y*z + 2*w*x) * a_in.v1()
                     +(w*w - x*x - y*y + z*z) * a_in.v2();
      -  
      +
           a_out.set_value(v0,v1,v2);
         }
       
      @@ -321,20 +321,20 @@ public:
           const T y = m_quat.v1();
           const T z = m_quat.v2();
           const T w = m_quat.v3();
      -  
      +
           // first row :
           T v0 =     (w*w + x*x - y*y - z*z) * a_v.v0()
                     +        (2*x*y - 2*w*z) * a_v.v1()
                     +        (2*x*z + 2*w*y) * a_v.v2();
      -  
      +
           T v1 =             (2*x*y + 2*w*z) * a_v.v0()
                     +(w*w - x*x + y*y - z*z) * a_v.v1()
                     +        (2*y*z - 2*w*x) * a_v.v2();
      -  
      +
           T v2 =             (2*x*z - 2*w*y) * a_v.v0()
                     +        (2*y*z + 2*w*x) * a_v.v1()
                     +(w*w - x*x - y*y + z*z) * a_v.v2();
      -  
      +
           a_v.set_value(v0,v1,v2);
         }
       
      @@ -343,20 +343,20 @@ public:
           const T y = m_quat.v1();
           const T z = m_quat.v2();
           const T w = m_quat.v3();
      -  
      +
           // first row :
           T v0 =     (w*w + x*x - y*y - z*z) * a_x
                     +        (2*x*y - 2*w*z) * a_y
                     +        (2*x*z + 2*w*y) * a_z;
      -  
      +
           T v1 =             (2*x*y + 2*w*z) * a_x
                     +(w*w - x*x + y*y - z*z) * a_y
                     +        (2*y*z - 2*w*x) * a_z;
      -  
      +
           T v2 =             (2*x*z - 2*w*y) * a_x
                     +        (2*y*z + 2*w*x) * a_y
                     +(w*w - x*x - y*y + z*z) * a_z;
      -  
      +
           a_x = v0;
           a_y = v1;
           a_z = v2;
      diff --git a/source/analysis/g4tools/include/tools/lina/vec2 b/source/analysis/g4tools/include/tools/lina/vec2
      index 707108b356..b91050ba28 100644
      --- a/source/analysis/g4tools/include/tools/lina/vec2
      +++ b/source/analysis/g4tools/include/tools/lina/vec2
      @@ -86,9 +86,9 @@ public:
         void value(T& a0,T& a1) const {
           a0 = m_data[0];
           a1 = m_data[1];
      -  }    
      +  }
       
      -  //bool set_value(unsigned int a_index,const T& a_value) { 
      +  //bool set_value(unsigned int a_index,const T& a_value) {
         //  if(a_index>=2) return false;
         //  m_[a_index] = a_value;
         //  return true;
      @@ -106,13 +106,13 @@ public:
         }
       
         T dot(const vec2& aV) const {
      -    return (m_data[0] * aV.m_data[0] + 
      +    return (m_data[0] * aV.m_data[0] +
                   m_data[1] * aV.m_data[1]);
      -  }   
      +  }
       
         T cross(const vec2& aV) const {
           return (m_data[0] * aV.m_data[1] - m_data[1] * aV.m_data[0]);
      -  }    
      +  }
       
         bool equal(const vec2& aV) const {
           if(m_data[0]!=aV.m_data[0]) return false;
      @@ -130,22 +130,22 @@ public:
         void add(const vec2& a_v) {
           m_data[0] += a_v.m_data[0];
           m_data[1] += a_v.m_data[1];
      -  }    
      +  }
       
         void add(const T& a0,const T& a1) {
           m_data[0] += a0;
           m_data[1] += a1;
      -  }    
      +  }
       
         void subtract(const vec2& a_v) {
           m_data[0] -= a_v.m_data[0];
           m_data[1] -= a_v.m_data[1];
      -  }    
      +  }
       
         void subtract(const T& a0,const T& a1) {
           m_data[0] -= a0;
           m_data[1] -= a1;
      -  }    
      +  }
       
       public: //operators
         T& operator[](size_t a_index) {
      @@ -160,17 +160,17 @@ public: //operators
         vec2 operator+(const vec2& a_v) const {
           return vec2(m_data[0]+a_v.m_data[0],
                       m_data[1]+a_v.m_data[1]);
      -  }    
      +  }
       
         vec2 operator-(const vec2& a_v) const {
           return vec2(m_data[0]-a_v.m_data[0],
                       m_data[1]-a_v.m_data[1]);
      -  }    
      +  }
       
         vec2 operator*(const T& a_v) const {
           return vec2(m_data[0]*a_v,
                       m_data[1]*a_v);
      -  }    
      +  }
       
         bool operator==(const vec2& a_v) const {return equal(a_v);}
         bool operator!=(const vec2& a_v) const {return !operator==(a_v);}
      @@ -184,7 +184,7 @@ public: //for iv2sg
         void getValue(T& a0,T& a1) const {
           a0 = m_data[0];
           a1 = m_data[1];
      -  }    
      +  }
         void setValue(const T& a0,const T& a1) {
           m_data[0] = a0;
           m_data[1] = a1;
      diff --git a/source/analysis/g4tools/include/tools/lina/vec2f b/source/analysis/g4tools/include/tools/lina/vec2f
      index 273b727ba5..1e3242b303 100644
      --- a/source/analysis/g4tools/include/tools/lina/vec2f
      +++ b/source/analysis/g4tools/include/tools/lina/vec2f
      @@ -32,25 +32,25 @@ public: //operators
         vec2f operator*(float a_v) const {
           return vec2f(m_data[0]*a_v,
                        m_data[1]*a_v);
      -  }    
      +  }
         vec2f operator+(const vec2f& a_v) const {
           return vec2f(m_data[0]+a_v.m_data[0],
                        m_data[1]+a_v.m_data[1]);
      -  }    
      +  }
         vec2f operator-(const vec2f& a_v) const {
           return vec2f(m_data[0]-a_v.m_data[0],
                        m_data[1]-a_v.m_data[1]);
      -  }    
      -  vec2f& operator+=(const vec2f& a_v) {   
      +  }
      +  vec2f& operator+=(const vec2f& a_v) {
           m_data[0] += a_v.m_data[0];
           m_data[1] += a_v.m_data[1];
           return *this;
      -  }    
      -  vec2f& operator*=(float a_v) {   
      +  }
      +  vec2f& operator*=(float a_v) {
           m_data[0] *= a_v;
           m_data[1] *= a_v;
           return *this;
      -  }    
      +  }
         vec2f operator-() const {
           return vec2f(-m_data[0],-m_data[1]);
         }
      @@ -80,7 +80,7 @@ public: //iv2sg
         void negate() {
           m_data[0] = -m_data[0];
           m_data[1] = -m_data[1];
      -  }    
      +  }
       
       private:static void check_instantiation() {vec2f v(0,0);v.set_value(1,1);}
       };
      diff --git a/source/analysis/g4tools/include/tools/lina/vec3 b/source/analysis/g4tools/include/tools/lina/vec3
      index 3d2471d199..012e6a6c9a 100644
      --- a/source/analysis/g4tools/include/tools/lina/vec3
      +++ b/source/analysis/g4tools/include/tools/lina/vec3
      @@ -43,7 +43,7 @@ public:
         vec3(const T& a0,const T& a1,const T& a2
       #ifdef TOOLS_MEM
              ,bool a_inc = true
      -#endif       
      +#endif
              ) {
       #ifdef TOOLS_MEM
           if(a_inc) mem::increment(s_class().c_str());
      @@ -103,9 +103,9 @@ public:
           a0 = m_data[0];
           a1 = m_data[1];
           a2 = m_data[2];
      -  }    
      +  }
       
      -  //bool set_value(unsigned int a_index,const T& a_value) { 
      +  //bool set_value(unsigned int a_index,const T& a_value) {
         //  if(a_index>=3) return false;
         //  m_[a_index] = a_value;
         //  return true;
      @@ -123,16 +123,16 @@ public:
         }
       
         T dot(const vec3& aV) const {
      -    return (m_data[0] * aV.m_data[0] + 
      -            m_data[1] * aV.m_data[1] + 
      +    return (m_data[0] * aV.m_data[0] +
      +            m_data[1] * aV.m_data[1] +
                   m_data[2] * aV.m_data[2]);
      -  }   
      +  }
       
         void cross(const vec3& aV,vec3& a_value) const {
           a_value.set_value(m_data[1] * aV.m_data[2] - m_data[2] * aV.m_data[1],
                             m_data[2] * aV.m_data[0] - m_data[0] * aV.m_data[2],
                             m_data[0] * aV.m_data[1] - m_data[1] * aV.m_data[0]);
      -  }    
      +  }
       
         bool equal(const vec3& aV) const {
           if(m_data[0]!=aV.m_data[0]) return false;
      @@ -156,7 +156,7 @@ public:
           return vec3(m_data[1] * aV.m_data[2] - m_data[2] * aV.m_data[1],
                          m_data[2] * aV.m_data[0] - m_data[0] * aV.m_data[2],
                          m_data[0] * aV.m_data[1] - m_data[1] * aV.m_data[0]);
      -  }    
      +  }
       
         bool divide(const T& a_T) {
           if(a_T==T()) return false;
      @@ -176,25 +176,25 @@ public:
           m_data[0] += a_v.m_data[0];
           m_data[1] += a_v.m_data[1];
           m_data[2] += a_v.m_data[2];
      -  }    
      +  }
       
         void add(const T& a0,const T& a1,const T& a2) {
           m_data[0] += a0;
           m_data[1] += a1;
           m_data[2] += a2;
      -  }    
      +  }
       
         void subtract(const vec3& a_v) {
           m_data[0] -= a_v.m_data[0];
           m_data[1] -= a_v.m_data[1];
           m_data[2] -= a_v.m_data[2];
      -  }    
      +  }
       
         void subtract(const T& a0,const T& a1,const T& a2) {
           m_data[0] -= a0;
           m_data[1] -= a1;
           m_data[2] -= a2;
      -  }    
      +  }
       
         bool cos_angle(const vec3& a_v,T& a_cos,T(*a_sqrt)(T)) const {
           //WARNING : if ret false, a_cos is not set.
      @@ -206,7 +206,7 @@ public:
           return true;
         }
       
      -  bool theta_phi(T& a_theta,T& a_phi,T(*a_sqrt)(T),T(*a_atan2)(T,T)) const {    
      +  bool theta_phi(T& a_theta,T& a_phi,T(*a_sqrt)(T),T(*a_atan2)(T,T)) const {
           //WARNING : if ret false, a_theta, a_phi are not set.
           if(length(a_sqrt)==T()) return false;
           a_phi = a_atan2(m_data[1],m_data[0]);
      @@ -236,26 +236,26 @@ public: //operators
           return vec3(m_data[0]+a_v.m_data[0],
                       m_data[1]+a_v.m_data[1],
                       m_data[2]+a_v.m_data[2]);
      -  }    
      +  }
       
         vec3 operator-(const vec3& a_v) const {
           return vec3(m_data[0]-a_v.m_data[0],
                       m_data[1]-a_v.m_data[1],
                       m_data[2]-a_v.m_data[2]);
      -  }    
      +  }
       
         vec3 operator*(const T& a_v) const {
           return vec3(m_data[0]*a_v,
                       m_data[1]*a_v,
                       m_data[2]*a_v);
      -  }    
      +  }
       
         vec3 operator/(const T& a_v) const {
           if(a_v==T()) return vec3();
           return vec3(m_data[0]/a_v,
                       m_data[1]/a_v,
                       m_data[2]/a_v);
      -  }    
      +  }
       
         bool operator==(const vec3& a_v) const {return equal(a_v);}
         bool operator!=(const vec3& a_v) const {return !operator==(a_v);}
      @@ -276,7 +276,7 @@ public: //for iv2sg
           a0 = m_data[0];
           a1 = m_data[1];
           a2 = m_data[2];
      -  }    
      +  }
         void setValue(const vec3& a_v) {
           m_data[0] = a_v.m_data[0];
           m_data[1] = a_v.m_data[1];
      diff --git a/source/analysis/g4tools/include/tools/lina/vec3d b/source/analysis/g4tools/include/tools/lina/vec3d
      index 3b11374ee8..e7a8a2ccf7 100644
      --- a/source/analysis/g4tools/include/tools/lina/vec3d
      +++ b/source/analysis/g4tools/include/tools/lina/vec3d
      @@ -33,35 +33,35 @@ public: //operators
           return vec3d(m_data[0]*a_v,
                        m_data[1]*a_v,
                        m_data[2]*a_v);
      -  }    
      +  }
         vec3d operator+(const vec3d& a_v) const {
           return vec3d(m_data[0]+a_v.m_data[0],
                        m_data[1]+a_v.m_data[1],
                        m_data[2]+a_v.m_data[2]);
      -  }    
      +  }
         vec3d operator-(const vec3d& a_v) const {
           return vec3d(m_data[0]-a_v.m_data[0],
                        m_data[1]-a_v.m_data[1],
                        m_data[2]-a_v.m_data[2]);
      -  }    
      -  vec3d& operator+=(const vec3d& a_v) {   
      +  }
      +  vec3d& operator+=(const vec3d& a_v) {
           m_data[0] += a_v.m_data[0];
           m_data[1] += a_v.m_data[1];
           m_data[2] += a_v.m_data[2];
           return *this;
      -  }    
      +  }
         vec3d& operator-=(const vec3d& a_v) {
           m_data[0] -= a_v.m_data[0];
           m_data[1] -= a_v.m_data[1];
           m_data[2] -= a_v.m_data[2];
           return *this;
         }
      -  vec3d& operator*=(double a_v) {   
      +  vec3d& operator*=(double a_v) {
           m_data[0] *= a_v;
           m_data[1] *= a_v;
           m_data[2] *= a_v;
           return *this;
      -  }    
      +  }
         vec3d operator-() const {
           return vec3d(-m_data[0],-m_data[1],-m_data[2]);
         }
      diff --git a/source/analysis/g4tools/include/tools/lina/vec3f b/source/analysis/g4tools/include/tools/lina/vec3f
      index a9afc7a853..9bf5ef462b 100644
      --- a/source/analysis/g4tools/include/tools/lina/vec3f
      +++ b/source/analysis/g4tools/include/tools/lina/vec3f
      @@ -33,17 +33,17 @@ public: //operators
           return vec3f(m_data[0]*a_v,
                        m_data[1]*a_v,
                        m_data[2]*a_v);
      -  }    
      +  }
         vec3f operator+(const vec3f& a_v) const {
           return vec3f(m_data[0]+a_v.m_data[0],
                        m_data[1]+a_v.m_data[1],
                        m_data[2]+a_v.m_data[2]);
      -  }    
      +  }
         vec3f operator-(const vec3f& a_v) const {
           return vec3f(m_data[0]-a_v.m_data[0],
                        m_data[1]-a_v.m_data[1],
                        m_data[2]-a_v.m_data[2]);
      -  }    
      +  }
         vec3f& operator+=(const vec3f& a_v) {
           m_data[0] += a_v.m_data[0];
           m_data[1] += a_v.m_data[1];
      @@ -56,12 +56,12 @@ public: //operators
           m_data[2] -= a_v.m_data[2];
           return *this;
         }
      -  vec3f& operator*=(float a_v) {   
      +  vec3f& operator*=(float a_v) {
           m_data[0] *= a_v;
           m_data[1] *= a_v;
           m_data[2] *= a_v;
           return *this;
      -  }    
      +  }
         vec3f operator-() const {
           return vec3f(-m_data[0],-m_data[1],-m_data[2]);
         }
      @@ -107,7 +107,7 @@ public: //iv2sg
           m_data[0] = -m_data[0];
           m_data[1] = -m_data[1];
           m_data[2] = -m_data[2];
      -  }    
      +  }
       
       private:static void check_instantiation() {vec3f v(0,0,0);v.set_value(1,1,1);}
       };
      diff --git a/source/analysis/g4tools/include/tools/lina/vec4 b/source/analysis/g4tools/include/tools/lina/vec4
      index dc166b048f..1b398e3813 100644
      --- a/source/analysis/g4tools/include/tools/lina/vec4
      +++ b/source/analysis/g4tools/include/tools/lina/vec4
      @@ -49,7 +49,7 @@ public:
         vec4(const T& a0,const T& a1,const T& a2,const T& a3
       #ifdef TOOLS_MEM
              ,bool a_inc = true
      -#endif       
      +#endif
              ) {
       #ifdef TOOLS_MEM
           if(a_inc) mem::increment(s_class().c_str());
      @@ -114,9 +114,9 @@ public:
           a1 = m_data[1];
           a2 = m_data[2];
           a3 = m_data[3];
      -  }    
      +  }
       
      -  bool set_value(unsigned int a_index,const T& a_value) { 
      +  bool set_value(unsigned int a_index,const T& a_value) {
           if(a_index>=4) return false;
           m_data[a_index] = a_value;
           return true;
      @@ -197,28 +197,28 @@ public:
           m_data[1] += a_v.m_data[1];
           m_data[2] += a_v.m_data[2];
           m_data[3] += a_v.m_data[3];
      -  }    
      +  }
       
         void add(const T& a0,const T& a1,const T& a2,const T& a3) {
           m_data[0] += a0;
           m_data[1] += a1;
           m_data[2] += a2;
           m_data[3] += a3;
      -  }    
      +  }
       
         void subtract(const vec4& a_v) {
           m_data[0] -= a_v.m_data[0];
           m_data[1] -= a_v.m_data[1];
           m_data[2] -= a_v.m_data[2];
           m_data[3] -= a_v.m_data[3];
      -  }    
      +  }
       
         void subtract(const T& a0,const T& a1,const T& a2,const T& a3) {
           m_data[0] -= a0;
           m_data[1] -= a1;
           m_data[2] -= a2;
           m_data[3] -= a3;
      -  }    
      +  }
       
       public: //operators
         T& operator[](size_t a_index) {
      @@ -235,7 +235,7 @@ public: //operators
                       m_data[1]+a_v.m_data[1],
                       m_data[2]+a_v.m_data[2],
                       m_data[3]+a_v.m_data[3]);
      -  }    
      +  }
       
         vec4 operator-(const vec4& a_v) const {
           return vec4(m_data[0]-a_v.m_data[0],
      @@ -249,7 +249,7 @@ public: //operators
                       m_data[1]*a_v,
                       m_data[2]*a_v,
                       m_data[3]*a_v);
      -  }    
      +  }
       
         bool operator==(const vec4& a_v) const {return equal(a_v);}
         bool operator!=(const vec4& a_v) const {return !operator==(a_v);}
      diff --git a/source/analysis/g4tools/include/tools/lina/vec4f b/source/analysis/g4tools/include/tools/lina/vec4f
      index c5ce9e2e6a..f2379214b1 100644
      --- a/source/analysis/g4tools/include/tools/lina/vec4f
      +++ b/source/analysis/g4tools/include/tools/lina/vec4f
      @@ -35,33 +35,33 @@ public: //operators
                        m_data[1]*a_v,
                        m_data[2]*a_v,
                        m_data[3]*a_v);
      -  }    
      +  }
         vec4f operator+(const vec4f& a_v) const {
           return vec4f(m_data[0]+a_v.m_data[0],
                        m_data[1]+a_v.m_data[1],
                        m_data[2]+a_v.m_data[2],
                        m_data[3]+a_v.m_data[3]);
      -  }    
      +  }
         vec4f operator-(const vec4f& a_v) const {
           return vec4f(m_data[0]-a_v.m_data[0],
                        m_data[1]-a_v.m_data[1],
                        m_data[2]-a_v.m_data[2],
                        m_data[3]-a_v.m_data[3]);
      -  }    
      -  vec4f& operator+=(const vec4f& a_v) {   
      +  }
      +  vec4f& operator+=(const vec4f& a_v) {
           m_data[0] += a_v.m_data[0];
           m_data[1] += a_v.m_data[1];
           m_data[2] += a_v.m_data[2];
           m_data[3] += a_v.m_data[3];
           return *this;
      -  }    
      -  vec4f& operator*=(float a_v) {   
      +  }
      +  vec4f& operator*=(float a_v) {
           m_data[0] *= a_v;
           m_data[1] *= a_v;
           m_data[2] *= a_v;
           m_data[3] *= a_v;
           return *this;
      -  }    
      +  }
         vec4f operator-() const {
           return vec4f(-m_data[0],-m_data[1],-m_data[2],-m_data[3]);
         }
      diff --git a/source/analysis/g4tools/include/tools/mapmanip b/source/analysis/g4tools/include/tools/mapmanip
      index 730b6b340f..3f5a65cacd 100644
      --- a/source/analysis/g4tools/include/tools/mapmanip
      +++ b/source/analysis/g4tools/include/tools/mapmanip
      @@ -17,7 +17,7 @@ inline void safe_clear(std::map& a_m){
           it_t it = a_m.begin();
           V* entry  = (*it).second;
           a_m.erase(it);
      -    delete entry;    
      +    delete entry;
         }
       }
       
      diff --git a/source/analysis/g4tools/include/tools/mathd b/source/analysis/g4tools/include/tools/mathd
      index 9b5b1f9ef0..187c2e7937 100644
      --- a/source/analysis/g4tools/include/tools/mathd
      +++ b/source/analysis/g4tools/include/tools/mathd
      @@ -33,7 +33,7 @@ inline bool in_domain_log(double a_x){return (a_x>0?true:false);}
       inline bool in_domain_tan(double a_x){
         int n = int(a_x/half_pi());
         if(a_x!=n*half_pi()) return true;
      -  return (2*int(n/2)==n?true:false);    
      +  return (2*int(n/2)==n?true:false);
       }
       inline bool in_domain_acos(double a_x){
         if((a_x<-1)||(10.0f) ? int(a_x+0.5f) : -int(0.5f-a_x);
       }
       
      -inline float fstep(float a_x) {return a_x<0.0f?0.0f:1.0f;}
      +inline float fstep(const float& a_x) {return a_x<0.0f?0.0f:1.0f;}
       
       }
       
      @@ -39,26 +39,23 @@ inline float fstep(float a_x) {return a_x<0.0f?0.0f:1.0f;}
       
       namespace tools {
       
      -inline float fcos(float x) {return (float)::cos(double(x));}
      -inline float fsin(float x) {return (float)::sin(double(x));}
      -inline float facos(float x) {return (float)::acos(double(x));}
      -inline float fasin(float x) {return (float)::asin(double(x));}
      -inline float ftan(float x) {return (float)::tan(double(x));}
      -inline float fatan(float x) {return (float)::atan(double(x));}
      -inline float fatan2(float x,float y) {return (float)::atan2(double(x),double(y));}
      -inline float fsqrt(float x) {return (float)::sqrt(double(x));}
      -inline float fpow(float x,float y) {return (float)::pow(double(x),(double)(y));}
      -inline float fexp(float x) {return (float)::exp(double(x));}
      -inline float flog(float x) {return (float)::log(double(x));}
      -inline float flog10(float x) {return (float)::log10(double(x));}
      -inline float ffloor(float x) {return (float)::floor(double(x));}
      -inline float fceil(float x) {return (float)::ceil(double(x));}
      -inline float fcosh(float x) {return (float)::cosh(double(x));}
      -inline float fsinh(float x) {return (float)::sinh(double(x));}
      -
      -inline float ffabs(float x) {return (float)::fabs(double(x));}
      -
      -inline float ffabsc(const float& x) {return (float)::fabs(double(x));}
      +inline float fcos(const float& x) {return (float)::cos(double(x));}
      +inline float fsin(const float& x) {return (float)::sin(double(x));}
      +inline float facos(const float& x) {return (float)::acos(double(x));}
      +inline float fasin(const float& x) {return (float)::asin(double(x));}
      +inline float ftan(const float& x) {return (float)::tan(double(x));}
      +inline float fatan(const float& x) {return (float)::atan(double(x));}
      +inline float fatan2(const float& x,const float& y) {return (float)::atan2(double(x),double(y));}
      +inline float fsqrt(const float& x) {return (float)::sqrt(double(x));}
      +inline float fpow(const float& x,const float& y) {return (float)::pow(double(x),(double)(y));}
      +inline float fexp(const float& x) {return (float)::exp(double(x));}
      +inline float flog(const float& x) {return (float)::log(double(x));}
      +inline float flog10(const float& x) {return (float)::log10(double(x));}
      +inline float ffloor(const float& x) {return (float)::floor(double(x));}
      +inline float fceil(const float& x) {return (float)::ceil(double(x));}
      +inline float fcosh(const float& x) {return (float)::cosh(double(x));}
      +inline float fsinh(const float& x) {return (float)::sinh(double(x));}
      +inline float ffabs(const float& x) {return (float)::fabs(double(x));}
       
       }
       
      diff --git a/source/analysis/g4tools/include/tools/mem b/source/analysis/g4tools/include/tools/mem
      index 0587c3223e..eba5ab2b28 100644
      --- a/source/analysis/g4tools/include/tools/mem
      +++ b/source/analysis/g4tools/include/tools/mem
      @@ -69,15 +69,15 @@ public:
         static void balance(std::ostream& a_out){
           if(counter()) {
             a_out << "tools::mem::balance :"
      -            << " bad global object balance : " << counter() 
      +            << " bad global object balance : " << counter()
                   << std::endl;
             if(check_by_class()) {
               a_out << "tools::mem::balance :"
      -              << " check by class was enabled." 
      +              << " check by class was enabled."
                     << std::endl;
             } else {
               a_out << "tools::mem::balance :"
      -              << " check by class was disabled." 
      +              << " check by class was disabled."
                     << std::endl;
             }
           }
      @@ -85,21 +85,21 @@ public:
           for(it=list().begin();it!=list().end();++it) {
             if((*it).second) {
               a_out << "tools::mem::balance :"
      -              << " for class " << (*it).first 
      +              << " for class " << (*it).first
                     << ", bad object balance : " << (*it).second
                     << std::endl;
             }
           }
           list().clear();
         }
      -  
      +
       protected:
       public: //for MT disconnection (see test/mt_root_ntuple.cpp).
         static int& counter() {
           static int s_count = 0;
           return s_count;
         }
      -  
      +
         static bool& check_by_class() {
           static bool s_check_by_class = false;
           return s_check_by_class;
      diff --git a/source/analysis/g4tools/include/tools/mnmx b/source/analysis/g4tools/include/tools/mnmx
      index 717343e036..a0fcdd0a4f 100644
      --- a/source/analysis/g4tools/include/tools/mnmx
      +++ b/source/analysis/g4tools/include/tools/mnmx
      @@ -7,17 +7,17 @@
       namespace tools {
       
       template 
      -inline T mn(const T& a,const T& b) {return (a
      -inline T mx(const T& a,const T& b) {return (a>b?a:b);}    
      +inline T mx(const T& a,const T& b) {return (a>b?a:b);}
       
       // long name :
       template 
      -inline T min_of(const T& a,const T& b) {return (a
      -inline T max_of(const T& a,const T& b) {return (a>b?a:b);}    
      +inline T max_of(const T& a,const T& b) {return (a>b?a:b);}
       
       }
       
      diff --git a/source/analysis/g4tools/include/tools/mpi/hmpi b/source/analysis/g4tools/include/tools/mpi/hmpi
      index cbcf0657f4..e3d03a97e0 100644
      --- a/source/analysis/g4tools/include/tools/mpi/hmpi
      +++ b/source/analysis/g4tools/include/tools/mpi/hmpi
      @@ -97,7 +97,7 @@ public:
             m_out << "tools::mpi::hmpi::wait_histos : rank " << m_rank << " : can't alloc buffer of size " << buffer_size << std::endl;
             return false;
           }
      -  
      +
           if(::MPI_Recv(buffer,buffer_size,MPI_CHAR,a_src,m_tag,m_comm,&status)!=MPI_SUCCESS) {
             m_out << "tools::mpi::hmpi::wait_histos : rank " << m_rank << " : MPI_Recv : failed." << std::endl;
             delete [] buffer;
      @@ -111,7 +111,7 @@ public:
           num_t nhist;
           if(!_mpi.unpack(nhist)) return false;
       
      -    if(m_verbose) 
      +    if(m_verbose)
             m_out << "tools::mpi::hmpi::wait_histos : rank " << m_rank << " : number of histos to unpack " << nhist << std::endl;
       
          {for(num_t ihist=0;ihists_cls(),h)); //give ownership of h.
      -  
      +
             } else if(scls==tools::histo::p2d::s_class()) {
               tools::histo::profile_data pdata;
               if(!profile_data_duiuidd_unpack(_mpi,pdata)) return false;
      @@ -206,11 +206,11 @@ public:
       
       public:
         virtual int rank() const { return m_rank;}
      -  virtual bool comm_rank(int& a_rank) const { 
      +  virtual bool comm_rank(int& a_rank) const {
           if(::MPI_Comm_rank(m_comm,&a_rank)!=MPI_SUCCESS) {a_rank=-1;return false;}
           return true;
         }
      -  virtual bool comm_size(int& a_size) const { 
      +  virtual bool comm_size(int& a_size) const {
           if(::MPI_Comm_size(m_comm,&a_size)!=MPI_SUCCESS) {a_size=0;return false;}
           return true;
         }
      diff --git a/source/analysis/g4tools/include/tools/mpi/wait_buffer b/source/analysis/g4tools/include/tools/mpi/wait_buffer
      index b55f722348..7cc9e84e3d 100644
      --- a/source/analysis/g4tools/include/tools/mpi/wait_buffer
      +++ b/source/analysis/g4tools/include/tools/mpi/wait_buffer
      @@ -50,7 +50,7 @@ inline bool wait_buffer(std::ostream& a_out,int a_rank,int a_src,int a_tag,const
           a_probe_src = -1;
           return false;
         }
      -  
      +
         if(::MPI_Recv(a_buffer,a_buffer_size,MPI_CHAR,status.MPI_SOURCE,status.MPI_TAG,a_comm,&status)!=MPI_SUCCESS) {
           a_out << "tools::mpi::wait_buffer : rank " << a_rank << " : MPI_Recv : failed." << std::endl;
           a_buffer_size = 0;
      diff --git a/source/analysis/g4tools/include/tools/mpi/world b/source/analysis/g4tools/include/tools/mpi/world
      index 2d2b630001..1b83ddef37 100644
      --- a/source/analysis/g4tools/include/tools/mpi/world
      +++ b/source/analysis/g4tools/include/tools/mpi/world
      @@ -31,15 +31,15 @@ protected:
         }
       #endif
       public:
      -  virtual bool init(int* a_argc,char*** a_argv) { 
      +  virtual bool init(int* a_argc,char*** a_argv) {
           if(::MPI_Init(a_argc,a_argv)!=MPI_SUCCESS) return false;
           return true;
         }
      -  virtual bool rank(int& a_rank) const { 
      +  virtual bool rank(int& a_rank) const {
           if(::MPI_Comm_rank(MPI_COMM_WORLD,&a_rank)!=MPI_SUCCESS) {a_rank=-1;return false;}
           return true;
         }
      -  virtual bool size(int& a_size) const { 
      +  virtual bool size(int& a_size) const {
           if(::MPI_Comm_size(MPI_COMM_WORLD,&a_size)!=MPI_SUCCESS) {a_size=0;return false;}
           return true;
         }
      diff --git a/source/analysis/g4tools/include/tools/mpi/wrmpi b/source/analysis/g4tools/include/tools/mpi/wrmpi
      index 033c7abfc1..95e94671f0 100644
      --- a/source/analysis/g4tools/include/tools/mpi/wrmpi
      +++ b/source/analysis/g4tools/include/tools/mpi/wrmpi
      @@ -21,13 +21,13 @@
       //typedef unsigned __int64 uint64;
       #define TOOLS_MPI_UINT64 MPI_UNSIGNED_LONG_LONG
       #define TOOLS_MPI_INT64  MPI_LONG_LONG
      -#elif defined(_LP64) 
      +#elif defined(_LP64)
       // 64 Bit Platforms
       //typedef long int64;
       //typedef unsigned long uint64;
       #define TOOLS_MPI_UINT64 MPI_UNSIGNED_LONG
       #define TOOLS_MPI_INT64  MPI_LONG
      -#else 
      +#else
       // 32-Bit Platforms
       //typedef long long int64;
       //typedef unsigned long long uint64;
      @@ -297,7 +297,7 @@ public: //inlib::mpi::impi
           return true;
         }
         virtual bool bunpack(bool& a_val) {
      -    typedef unsigned char bool_t;  
      +    typedef unsigned char bool_t;
           bool_t val;
           if(::MPI_Unpack(m_buffer,m_size,&m_ipos,&val,1,MPI_UNSIGNED_CHAR,m_comm)!=MPI_SUCCESS) {
             m_out << "tools::mpi::wrmpi : MPI_Unpack(bool) failed." << std::endl;
      @@ -389,7 +389,7 @@ public: //inlib::mpi::impi
           m_pos = m_buffer;
           m_ipos = 0; //IMPORTANT
         }
      -  
      +
         virtual bool send_buffer(int a_dest,int a_tag) { // used in tools/mpi/pntuple.
           if(::MPI_Send(m_buffer,m_ipos,MPI_CHAR,a_dest,a_tag,m_comm)!=MPI_SUCCESS) {
             m_out << "tools::mpi::wrmpi::send_buffer : MPI_Send() failed for rank destination " << a_dest << "." << std::endl;
      @@ -412,13 +412,13 @@ public: //inlib::mpi::impi
           m_max = m_buffer+m_size;
           m_pos = m_buffer;
           m_ipos = 0; //IMPORTANT
      -    return true; 
      +    return true;
         }
       
         virtual bool wait_buffer(int a_rank,int a_tag,int& a_probe_src,bool a_verbose = false) {
           return wait_buffer(a_rank,MPI_ANY_SOURCE,a_tag,a_probe_src,a_verbose);
         }
      -  
      +
       public:
         wrmpi(std::ostream& a_out,const MPI_Comm& a_comm,tools::uint32 a_size = 128) // we expect a_size!=0
         :m_out(a_out)
      diff --git a/source/analysis/g4tools/include/tools/ntuple_binding b/source/analysis/g4tools/include/tools/ntuple_binding
      index 3d77a1bc33..c7fd63e391 100644
      --- a/source/analysis/g4tools/include/tools/ntuple_binding
      +++ b/source/analysis/g4tools/include/tools/ntuple_binding
      @@ -20,21 +20,21 @@ public:
         :m_name(a_name)
         ,m_cid(a_cid)
         ,m_user_obj(a_user_obj) //WARNING : not owner.
      -  {}    
      +  {}
         virtual ~column_binding() {}
       public:
         column_binding(const column_binding& a_from)
         :m_name(a_from.m_name)
         ,m_cid(a_from.m_cid)
         ,m_user_obj(a_from.m_user_obj)
      -  {}    
      +  {}
         column_binding& operator=(const column_binding& a_from) {
           if(&a_from==this) return *this;
           m_name = a_from.m_name;
           m_cid = a_from.m_cid;
           m_user_obj = a_from.m_user_obj;
           return *this;
      -  }    
      +  }
       public:
         const std::string& name() const {return m_name;}
         cid get_cid() const {return m_cid;}
      @@ -79,7 +79,7 @@ public:
         void add_column_cid(const std::string& a_name,T& a_user_var) {
           m_columns.push_back(column_binding(a_name,T::id_class(),(void*)&a_user_var));
         }
      -  
      +
         void add_column_no_var(const std::string& a_name) { //used in rcsv_ntuple.
           m_columns.push_back(column_binding(a_name,0,0));
         }
      @@ -113,7 +113,7 @@ public:
           }
           return 0;
         }
      -  
      +
         template 
         std::vector* find_vector_variable(const std::string& a_name) const {
           tools_vforcit(column_binding,m_columns,it) {
      diff --git a/source/analysis/g4tools/include/tools/ntuple_booking b/source/analysis/g4tools/include/tools/ntuple_booking
      index f34cfb3852..1d2e0e7e57 100644
      --- a/source/analysis/g4tools/include/tools/ntuple_booking
      +++ b/source/analysis/g4tools/include/tools/ntuple_booking
      @@ -20,21 +20,21 @@ public:
         :m_name(a_name)
         ,m_cid(a_cid)
         ,m_user_obj(a_user_obj) //WARNING : not owner.
      -  {}    
      +  {}
         virtual ~column_booking() {}
       public:
         column_booking(const column_booking& a_from)
         :m_name(a_from.m_name)
         ,m_cid(a_from.m_cid)
         ,m_user_obj(a_from.m_user_obj)
      -  {}    
      +  {}
         column_booking& operator=(const column_booking& a_from) {
           if(&a_from==this) return *this;
           m_name = a_from.m_name;
           m_cid = a_from.m_cid;
           m_user_obj = a_from.m_user_obj;
           return *this;
      -  }    
      +  }
       public:
         const std::string& name() const {return m_name;}
         cid cls_id() const {return m_cid;}
      @@ -74,7 +74,7 @@ public:
         void add_column(const std::string& a_name,T& a_user) {
           m_columns.push_back(column_booking(a_name,_cid(T()),(void*)&a_user));
         }
      -  
      +
         template 
         void add_column_vec(const std::string& a_name) {
           m_columns.push_back(column_booking(a_name,_cid_std_vector(),0));
      @@ -102,7 +102,7 @@ public:
                   << " bookings have not the same number of columns."
                   << " (" << m_columns.size() << " != " << a_nbk.m_columns.size() << ")."
                   << std::endl;
      -      return false;	    
      +      return false;
           }
           std::vector::const_iterator ait = a_nbk.m_columns.begin();
           tools_vforit(tools::column_booking,m_columns,it) {
      @@ -111,16 +111,16 @@ public:
                     << " columns don't have same name."
                     << " (" << (*it).name() << " != " << (*ait).name() << ")."
                     << std::endl;
      -        return false;	    
      +        return false;
             }
             if((*it).cls_id()!=(*ait).cls_id()) {
               a_out << "tools::ntuple_booking::has_similar_layout :"
                     << " columns don't have same class id."
                     << " (" << (*it).cls_id() << " != " << (*ait).cls_id() << ")."
                     << std::endl;
      -        return false;	    
      +        return false;
             }
      -      
      +
             ait++;
           }
           return true;
      diff --git a/source/analysis/g4tools/include/tools/num2s b/source/analysis/g4tools/include/tools/num2s
      index 25a270dbb5..688fba57a8 100644
      --- a/source/analysis/g4tools/include/tools/num2s
      +++ b/source/analysis/g4tools/include/tools/num2s
      @@ -139,7 +139,7 @@ public:
       
       namespace tools {
       
      -template   
      +template 
       inline bool nums2s(const VEC& a_vals,std::string& a_s,const std::string& a_sep = "\n",bool a_sep_at_end = false) {
         a_s.clear();
         typename VEC::size_type number = a_vals.size();
      @@ -158,7 +158,7 @@ inline bool nums2s(const VEC& a_vals,std::string& a_s,const std::string& a_sep =
         return status;
       }
       
      -template   
      +template 
       inline bool nums2s(const std::vector& a_vals,std::string& a_s,const std::string& a_sep = "\n",bool a_sep_at_end = false) {
         return nums2s< std::vector >(a_vals,a_s,a_sep,a_sep_at_end);
       }
      diff --git a/source/analysis/g4tools/include/tools/path b/source/analysis/g4tools/include/tools/path
      index 45a6d0dc2a..2ede1ee5de 100644
      --- a/source/analysis/g4tools/include/tools/path
      +++ b/source/analysis/g4tools/include/tools/path
      @@ -273,4 +273,51 @@ inline bool is_python(const std::string& a_path){
       
       }
       
      +#include 
      +
      +namespace tools {
      +
      +inline bool url_parse(const std::string& a_url,std::string& a_host,unsigned int& a_port,std::string& a_path) {
      +  std::string s;
      +  if((a_url.size()>=7)&&(a_url.substr(0,7)=="http://")) {
      +    s = a_url.substr(7,a_url.size()-7);
      +  } else if((a_url.size()>=8)&&(a_url.substr(0,8)=="https://")) {
      +    s = a_url.substr(8,a_url.size()-8);
      +  } else {
      +    a_host.clear();
      +    a_port = 0;
      +    a_path.clear();
      +    return false;
      +  }
      +
      + {std::string::size_type pos = s.find('/');
      +  if(pos==std::string::npos) {
      +    a_host = s;
      +    a_path = "/";
      +  } else {
      +    a_host = s.substr(0,pos);
      +    a_path = s.substr(pos,s.size()-pos);
      +  }}
      +
      + {std::string::size_type pos = a_host.find(':');
      +  if(pos==std::string::npos) {
      +    a_port = 0;
      +  } else {
      +    std::string sport = a_host.substr(pos+1,a_host.size()-(pos+1));
      +    std::istringstream strm(sport.c_str());
      +    strm >> a_port;
      +    if(strm.fail()) {
      +      a_host.clear();
      +      a_port = 0;
      +      a_path.clear();
      +      return false;
      +    }
      +    a_host = a_host.substr(0,pos);
      +  }}
      +
      +  return true;
      +}
      +
      +}
      +
       #endif
      diff --git a/source/analysis/g4tools/include/tools/platform b/source/analysis/g4tools/include/tools/platform
      index 6b780a5471..783613b668 100644
      --- a/source/analysis/g4tools/include/tools/platform
      +++ b/source/analysis/g4tools/include/tools/platform
      @@ -43,6 +43,12 @@ inline bool is_Android() {return true;}
       inline bool is_Android() {return false;}
       #endif
       
      +#ifdef EMSCRIPTEN
      +inline bool is_emscripten() {return true;}
      +#else
      +inline bool is_emscripten() {return false;}
      +#endif
      +
       
       #if defined(ANDROID) || TARGET_OS_IPHONE
       inline bool small_screen()     {return true;}
      @@ -196,17 +202,17 @@ inline void compiler(char a_s[128]) {
       
       #if defined(__clang__)
         *pos = '_';pos++;
      -  tosu(__clang_major__,pos,l);pos += l;  
      +  tosu(__clang_major__,pos,l);pos += l;
         tosu(__clang_minor__,pos,l);pos += l;
         tosu(__clang_patchlevel__,pos,l);pos += l;
       #elif defined(__GNUC__)
         *pos = '_';pos++;
      -  tosu(__GNUC__,pos,l);pos += l;  
      +  tosu(__GNUC__,pos,l);pos += l;
         tosu(__GNUC_MINOR__,pos,l);pos += l;
         tosu(__GNUC_PATCHLEVEL__,pos,l);pos += l;
       #elif defined(_MSC_VER)
         *pos = '_';pos++;
      -  tosu(_MSC_VER,pos,l);pos += l;  
      +  tosu(_MSC_VER,pos,l);pos += l;
         //_mfc_
         //tosu(_MFC_VER,pos,l);pos += l;
       #elif defined(__alpha)
      diff --git a/source/analysis/g4tools/include/tools/plotter_common.icc b/source/analysis/g4tools/include/tools/plotter_common.icc
      index 5b29197bc2..235ee4af7e 100644
      --- a/source/analysis/g4tools/include/tools/plotter_common.icc
      +++ b/source/analysis/g4tools/include/tools/plotter_common.icc
      @@ -81,13 +81,13 @@
           m_plots.current_plotter().add_plottable(p); //it takes ownership.
           return p;
         }
      -  
      +
         tools::sg::plottable* plot_cp(const tools::histo::c3d& a_cloud) {
           tools::sg::plottable* p = new tools::sg::c3d2plot_cp(a_cloud);
           m_plots.current_plotter().add_plottable(p); //it takes ownership.
           return p;
         }
      -  
      +
         template 
         tools::sg::plottable* plot(const T& a_func) {
           tools::sg::plottable* p = new tools::sg::f1d2plot(a_func);
      diff --git a/source/analysis/g4tools/include/tools/png b/source/analysis/g4tools/include/tools/png
      index 78f970e373..a5b14bbec2 100644
      --- a/source/analysis/g4tools/include/tools/png
      +++ b/source/analysis/g4tools/include/tools/png
      @@ -53,7 +53,7 @@ inline unsigned char* read_FILE(FILE* a_file,unsigned int& a_width,unsigned int&
           return 0;
         }
       
      -  png_structp png_ptr = 
      +  png_structp png_ptr =
           ::png_create_read_struct(PNG_LIBPNG_VER_STRING,NULL,NULL,NULL);
         if(!png_ptr) {
           a_width = 0;
      @@ -119,8 +119,8 @@ inline unsigned char* read_FILE(FILE* a_file,unsigned int& a_width,unsigned int&
           a_width = 0;
           a_bpp = 0;
           return 0;
      -  }  
      -  
      +  }
      +
        {png_bytep* row_pointers = new png_bytep[height];
         png_byte* pos = buffer+info_ptr->rowbytes*(height-1);
         for(int y=0;y(w-a_sx,a_sw); 
      -  a_rh = tools::mn(h-a_sy,a_sh); 
      +  a_rw = tools::mn(w-a_sx,a_sw);
      +  a_rh = tools::mn(h-a_sy,a_sh);
         a_rbpp = bpp;
       
         if(!a_rw||!a_rh||!a_rbpp){
      @@ -219,7 +219,7 @@ inline unsigned char* read_part(std::ostream& a_out,
           a_rh = 0;
           a_rbpp = 0;
           return 0;
      -  }  
      +  }
       
         unsigned int rstride = a_rw * a_rbpp;
         unsigned char* rpos = rb;
      @@ -233,7 +233,7 @@ inline unsigned char* read_part(std::ostream& a_out,
       
         delete [] buffer;
       
      -  return rb;  
      +  return rb;
       }
       
       inline bool write_FILE(FILE* a_file,unsigned char* a_buffer,unsigned int a_width,unsigned int a_height,unsigned int a_bpp) {
      @@ -245,21 +245,21 @@ inline bool write_FILE(FILE* a_file,unsigned char* a_buffer,unsigned int a_width
         png_structp png_ptr;
         if(!(png_ptr = ::png_create_write_struct
                           (PNG_LIBPNG_VER_STRING,NULL,NULL,NULL))) return false;
      -  
      +
         png_infop info_ptr;
         if(!(info_ptr = ::png_create_info_struct(png_ptr))){
           ::png_destroy_write_struct(&png_ptr,NULL);
           return false;
         }
      -  
      +
         if(::setjmp(png_ptr->jmpbuf)) {
           ::png_destroy_write_struct(&png_ptr,&info_ptr);
           return false;
         }
      -  
      +
         ::png_init_io(png_ptr,a_file);
         ::png_set_compression_level(png_ptr,Z_DEFAULT_COMPRESSION);
      -  ::png_set_IHDR(png_ptr,info_ptr,a_width,a_height,8, 
      +  ::png_set_IHDR(png_ptr,info_ptr,a_width,a_height,8,
                        a_bpp==3?PNG_COLOR_TYPE_RGB:PNG_COLOR_TYPE_RGBA,
                        PNG_INTERLACE_NONE,
                        PNG_COMPRESSION_TYPE_BASE,PNG_FILTER_TYPE_BASE);
      @@ -276,7 +276,7 @@ inline bool write_FILE(FILE* a_file,unsigned char* a_buffer,unsigned int a_width
       }
       
       inline bool write(std::ostream& a_out,
      -                  const std::string& a_file,                      
      +                  const std::string& a_file,
                         unsigned char* a_buffer,
                         unsigned int a_width,
                         unsigned int a_height,
      @@ -299,7 +299,7 @@ inline bool write(std::ostream& a_out,
         return true;
       }
       
      -inline bool infos_file(FILE* a_file,unsigned int& a_width,unsigned int& a_height,unsigned int& a_bpp) {
      +inline bool infos_FILE(FILE* a_file,unsigned int& a_width,unsigned int& a_height,unsigned int& a_bpp) {
         //a_bpp = number of bytes per pixel.
         png_byte header[8];	// 8 is the maximum size that can be checked
         if(::fread(header,1,8,a_file)!=8) {
      @@ -315,7 +315,7 @@ inline bool infos_file(FILE* a_file,unsigned int& a_width,unsigned int& a_height
           return false;
         }
       
      -  png_structp png_ptr = 
      +  png_structp png_ptr =
           ::png_create_read_struct(PNG_LIBPNG_VER_STRING,NULL,NULL,NULL);
         if(!png_ptr) {
           a_width = 0;
      @@ -365,7 +365,7 @@ inline bool infos(std::ostream& a_out,const std::string& a_file,unsigned int& a_
           a_height = 0;
           a_bpp = 0;
           return false;
      -  } 
      +  }
       
         FILE* file = ::fopen(a_file.c_str(),"rb");
         if(!file) {
      @@ -379,7 +379,7 @@ inline bool infos(std::ostream& a_out,const std::string& a_file,unsigned int& a_
         }
       
         unsigned int w,h,bpp;
      -  bool status = infos_file(file,w,h,bpp);
      +  bool status = infos_FILE(file,w,h,bpp);
       
         ::fclose(file);
       
      @@ -425,7 +425,7 @@ inline bool concatenate(std::ostream& a_out,
                               unsigned char a_bc,
                               const std::string& a_file) {
         unsigned int wa,ha,bppa;
      -  unsigned char* ba = 
      +  unsigned char* ba =
           tools::image::concatenate
             (a_out,a_files,a_cols,a_rows,a_bw,a_bh,a_bc,read,wa,ha,bppa);
         if(!ba) {
      @@ -434,7 +434,7 @@ inline bool concatenate(std::ostream& a_out,
                 << std::endl;
           delete [] ba;
           return false;
      -  } 
      +  }
       
         FILE* file = ::fopen(a_file.c_str(),"wb");
         if(!file) {
      diff --git a/source/analysis/g4tools/include/tools/randT b/source/analysis/g4tools/include/tools/randT
      index fcf9c27207..97ff4efb3f 100644
      --- a/source/analysis/g4tools/include/tools/randT
      +++ b/source/analysis/g4tools/include/tools/randT
      @@ -34,7 +34,7 @@ public:
           return (v2 * fac) * m_std_dev + m_mean;
         }
         FLAT& flat() {return m_flat;}
      -  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}  
      +  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}
         void set(REAL a_mean = 0,REAL a_std_dev = 1) {m_mean = a_mean;m_std_dev = a_std_dev;}
       protected:
         FLAT& m_flat;
      @@ -61,7 +61,7 @@ public:
           return m_mean + displ;
         }
         FLAT& flat() {return m_flat;}
      -  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}  
      +  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}
       protected:
         FLAT& m_flat;
         REAL m_mean;
      @@ -86,7 +86,7 @@ public:
           return -a_log(v)/m_rate;
         }
         FLAT& flat() {return m_flat;}
      -  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}  
      +  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}
       protected:
         FLAT& m_flat;
         REAL m_rate;
      @@ -114,7 +114,7 @@ public:
           a_y = REAL(2) * u * v / s;
         }
         FLAT& flat() {return m_flat;}
      -  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}  
      +  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}
       protected:
         FLAT& m_flat;
       };
      @@ -143,7 +143,7 @@ public:
           a_y *= a;
         }
         FLAT& flat() {return m_flat;}
      -  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}  
      +  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}
       protected:
         FLAT& m_flat;
       };
      @@ -186,7 +186,7 @@ public:
           return UINT(value);
         }
         FLAT& flat() {return m_flat;}
      -  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}  
      +  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}
       protected:
         FLAT& m_flat;
         REAL m_mean;
      @@ -218,7 +218,7 @@ public:
           /// The normal approximation is then recommended instead
           /// (with mean =*ntot+0.5 and standard deviation sqrt(ntot*prob*(1-prob)).
           ////////////////////////////////////////////////////////////////////////////////
      -    if((m_pm_p) continue;
      @@ -227,7 +227,7 @@ public:
           return n;
         }
         FLAT& flat() {return m_flat;}
      -  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}  
      +  void set_seed(unsigned int a_seed) {m_flat.set_seed(a_seed);}
       protected:
         FLAT& m_flat;
         UINT m_n;
      diff --git a/source/analysis/g4tools/include/tools/randd b/source/analysis/g4tools/include/tools/randd
      index bb56a88403..8cd778b3b4 100644
      --- a/source/analysis/g4tools/include/tools/randd
      +++ b/source/analysis/g4tools/include/tools/randd
      @@ -17,7 +17,7 @@ public:
         virtual ~irandd() {}
       public:
         virtual void* cast(const std::string&) const = 0;
      -public:  
      +public:
         virtual double shootd() const = 0;
       };
       
      diff --git a/source/analysis/g4tools/include/tools/raxml b/source/analysis/g4tools/include/tools/raxml
      index 7637af573b..75b3b77e45 100644
      --- a/source/analysis/g4tools/include/tools/raxml
      +++ b/source/analysis/g4tools/include/tools/raxml
      @@ -37,11 +37,11 @@ protected:
       public:
         bool load_file(const std::string& a_file,bool a_compressed){
           m_objects.clear();
      -    if(!parent::load_file(a_file,a_compressed)) return false;    
      +    if(!parent::load_file(a_file,a_compressed)) return false;
           tools::xml::tree* top = top_item();
           if(!top) return false;
           const std::string& tag_name = top->tag_name();
      -    if(tag_name!=s_aida()) return false;    
      +    if(tag_name!=s_aida()) return false;
       
          {tools::xml::looper _for(*top);
           while(tools::xml::tree* _tree = _for.next_tree()) {
      @@ -51,7 +51,7 @@ public:
             if(!rder) {
               m_out << "tools::raxml::load_file :"
                     << " reader not found for " << tools::sout(_tag_name)
      -              << std::endl;        
      +              << std::endl;
               //m_objects.clear(); //keep already loaded objects.
               return false;
             } else {
      diff --git a/source/analysis/g4tools/include/tools/raxml_out b/source/analysis/g4tools/include/tools/raxml_out
      index 8f6b9fd17b..4e2127b797 100644
      --- a/source/analysis/g4tools/include/tools/raxml_out
      +++ b/source/analysis/g4tools/include/tools/raxml_out
      @@ -34,7 +34,7 @@ public:
           m_name = a_from.m_name;
       
           return *this;
      -  } 
      +  }
       public:
         void* object() const {
           if(!m_hdl) return 0;
      diff --git a/source/analysis/g4tools/include/tools/rcsv_ntuple b/source/analysis/g4tools/include/tools/rcsv_ntuple
      index e87b1c981c..ef3dc0591a 100644
      --- a/source/analysis/g4tools/include/tools/rcsv_ntuple
      +++ b/source/analysis/g4tools/include/tools/rcsv_ntuple
      @@ -50,7 +50,7 @@ public: //read::intuple
             skip_line(m_reader,m_sz);
           }
         }
      -  virtual bool next() { 
      +  virtual bool next() {
           if(!m_sep) return false; //not inited.
           if(m_reader.tellg()>=m_sz) return false;
           // first time we are at bol but else we are at eol.
      @@ -130,7 +130,7 @@ public:
           column(const column& a_from)
           :read::icol(a_from)
           ,parent(a_from)
      -    ,m_name(a_from.m_name) 
      +    ,m_name(a_from.m_name)
           ,m_tmp(a_from.m_tmp)
           ,m_user_var(a_from.m_user_var)
           {}
      @@ -442,8 +442,8 @@ public:
                 m_sz = 0;
                 m_rows = -1;
                 return false;
      -        }      
      -      }      
      +        }
      +      }
       */
             std::string name = a_suffix;
             if(!numas(m_cols.size(),name)){}
      @@ -507,7 +507,7 @@ public:
           else TOOLS_RCSV_NTUPLE_IF_CID(short,short)
           else TOOLS_RCSV_NTUPLE_IF_CID(int,int)
           else TOOLS_RCSV_NTUPLE_IF_CID(int64,int64)
      -    
      +
           else TOOLS_RCSV_NTUPLE_IF_CID(float,float)
           else TOOLS_RCSV_NTUPLE_IF_CID(double,double)
       
      @@ -909,7 +909,7 @@ protected:
                               char a_sep,const std::string& a_vec_sep,
                               std::vector& a_v) {
           std::string _s;
      -    if(!_read(a_reader,a_sz,a_sep,_s)) return false;    
      +    if(!_read(a_reader,a_sz,a_sep,_s)) return false;
           //replace(_s,"\\"+a_vec_sep,"@@");
           words(_s,a_vec_sep,true,a_v);
           //tools_vforit(std::string,a_v,it) replace(*it,"@@",a_vec_sep);
      @@ -922,7 +922,7 @@ protected:
                               char a_sep,const std::string& a_vec_sep,
                               std::vector& a_v) {
           std::string _s;
      -    if(!_read(a_reader,a_sz,a_sep,_s)) return false;    
      +    if(!_read(a_reader,a_sz,a_sep,_s)) return false;
           if(!snums(_s,a_iss,a_tmp,a_vec_sep,a_v)) return false;
           return true;
         }
      @@ -1026,7 +1026,7 @@ protected:
       
             else {
               //std::cout << "column cast failed." << std::endl;
      -        return false; 
      +        return false;
             }
       
             if(index==(num-1)) { //read up to LF()
      diff --git a/source/analysis/g4tools/include/tools/realloc b/source/analysis/g4tools/include/tools/realloc
      index 8b70aefaee..d691b64bbe 100644
      --- a/source/analysis/g4tools/include/tools/realloc
      +++ b/source/analysis/g4tools/include/tools/realloc
      @@ -7,8 +7,8 @@ namespace tools {
       
       template 
       inline bool realloc(T*& a_pointer,size_t a_new_size,size_t a_old_size,bool a_init = false) {
      -  if(!a_new_size) { 
      -    delete [] a_pointer; 
      +  if(!a_new_size) {
      +    delete [] a_pointer;
           a_pointer = 0;
           return true;
         }
      @@ -20,14 +20,14 @@ inline bool realloc(T*& a_pointer,size_t a_new_size,size_t a_old_size,bool a_ini
         if(a_old_size==a_new_size) return true;
         T* pointer = new T[a_new_size];
         if(!pointer) {
      -    delete [] a_pointer; 
      +    delete [] a_pointer;
           a_pointer = 0;
           return false;
         }
         if(a_new_size>a_old_size) {
           ::memcpy(pointer,a_pointer,a_old_size*sizeof(T));
           if(a_init){
      -      size_t num = a_new_size-a_old_size;   
      +      size_t num = a_new_size-a_old_size;
             T* pos = pointer+a_old_size;
             for(size_t i=0;i
       class icolumn : public virtual icol {
       public:
      @@ -71,13 +71,13 @@ public:
         virtual void stop() {}
       public:
         size_t number_of_columns() const {return columns().size();}
      -  
      +
         void column_names(std::vector& a_names) const {
           a_names.clear();
           const std::vector& _cols = columns();
           tools_vforcit(icol*,_cols,it) a_names.push_back((*it)->name());
         }
      -  
      +
         icol* find_icol_case_insensitive(const std::string& a_name) { //for gopaw and exlib::evaluator.
           std::string low_a_name = a_name;
           tolowercase(low_a_name);
      diff --git a/source/analysis/g4tools/include/tools/rroot/THistogram b/source/analysis/g4tools/include/tools/rroot/THistogram
      index e114fcfe91..026c819cfd 100644
      --- a/source/analysis/g4tools/include/tools/rroot/THistogram
      +++ b/source/analysis/g4tools/include/tools/rroot/THistogram
      @@ -78,7 +78,7 @@ inline bool Axis_read_v7(buffer& a_buffer,axis_t& a_axis) {
       
       inline unsigned int new_bin_number(const std::vector< axis_t >& aAxes) {
         unsigned int number = 1;
      -  for(unsigned int iaxis=0;iaxis& aAxes,std::vector& aVect
         for(int index=0;index=0;iaxis--) { 
      +   {for(int iaxis=dim-1;iaxis>=0;iaxis--) {
             is[iaxis] = offset/aAxes[iaxis].m_offset;
             offset -= is[iaxis] * aAxes[iaxis].m_offset;
           }}
      diff --git a/source/analysis/g4tools/include/tools/rroot/base_leaf b/source/analysis/g4tools/include/tools/rroot/base_leaf
      index 2d8766d53c..a7bfc856ff 100644
      --- a/source/analysis/g4tools/include/tools/rroot/base_leaf
      +++ b/source/analysis/g4tools/include/tools/rroot/base_leaf
      @@ -64,19 +64,19 @@ public:
           bool created;
           if(!a_buffer.read_object(m_fac,args,obj,created)) {
             m_out << "tools::rroot::base_leaf::stream :"
      -            << " can't read object." 
      +            << " can't read object."
                   << std::endl;
             return false;
           }
           if(!obj) {
             //m_out << "tools::rroot::base_leaf::stream :"
      -      //      << " null leaf count object." 
      +      //      << " null leaf count object."
             //      << std::endl;
           } else {
             m_leaf_count = safe_cast(*obj);
             if(!m_leaf_count) {
               m_out << "tools::rroot::base_leaf::stream :"
      -              << " can't cast base_leaf." 
      +              << " can't cast base_leaf."
                     << std::endl;
               m_leaf_count = 0;
               if(created) {
      @@ -151,14 +151,14 @@ public:
           // Return the number of effective elements of this leaf.
           if(m_leaf_count) {
             m_out << "tools::rroot::base_leaf::length :"
      -            << " m_leaf_count not null. Case not yet handled." 
      +            << " m_leaf_count not null. Case not yet handled."
                   << std::endl;
             return m_length;
       
             //uint32 len = m_leaf_count->number();
             //if (len > fLeafCount->maximum()) {
             //  m_out << "tools::rroot::base_leaf::length :"
      -      //        << fName << ", len=" << len << " and max=" 
      +      //        << fName << ", len=" << len << " and max="
             //        << fLeafCount->maximum()
             //        << std::endl;
             //  len = fLeafCount->maximum();
      diff --git a/source/analysis/g4tools/include/tools/rroot/basket b/source/analysis/g4tools/include/tools/rroot/basket
      index 169a435f04..90a333dc0b 100644
      --- a/source/analysis/g4tools/include/tools/rroot/basket
      +++ b/source/analysis/g4tools/include/tools/rroot/basket
      @@ -83,7 +83,7 @@ public:
               (flag!=51)&&(flag!=52) ) {
             m_out << "tools::rroot::basket::stream :"
                          << " bad flag " << (int)flag
      -                   << std::endl; 
      +                   << std::endl;
             return false;
           }
       
      @@ -91,16 +91,16 @@ public:
             //due to the upper "G.Barrand if", flag is here in {1,11,41,51}
       
             if(!m_nev_buf_size) {
      -        m_out << "tools::rroot::basket::stream :" 
      -                     << " m_nev_buf_size is zero." << std::endl; 
      +        m_out << "tools::rroot::basket::stream :"
      +                     << " m_nev_buf_size is zero." << std::endl;
               return false;
             }
             if(m_nev>m_nev_buf_size) {
      -        m_out << "tools::rroot::basket::stream :" 
      +        m_out << "tools::rroot::basket::stream :"
                            << " m_nev>m_nev_buf_size !"
                            << " m_nev " << m_nev
                            << " m_nev_buf_size " << m_nev_buf_size
      -                     << std::endl; 
      +                     << std::endl;
               return false;
             }
             m_entry_offset = new int[m_nev_buf_size];
      @@ -111,7 +111,7 @@ public:
                 return false;
               }
               if((n!=m_nev)&&(n!=(m_nev+1))) {
      -          m_out << "tools::rroot::basket::stream :" 
      +          m_out << "tools::rroot::basket::stream :"
                              << " m_entry_offset read len mismatch."
                              << " n " << n
                              << " m_nev " << m_nev
      @@ -122,7 +122,7 @@ public:
             }
       /* Due to the upper "G.Barrand if", flag can't be in ]20,40[, then to quiet Coverity we comment the below test.
             if((2010)) {
      -      delete [] m_buffer;  
      +      delete [] m_buffer;
             m_buffer = 0;
             m_buf_size = 0;
             if(fBufferSize) {
               char* _buf = new char[fBufferSize];
               if(!_buf) {
      -          m_out << "tools::rroot::basket::stream :" 
      -                       << " can't alloc " << fBufferSize << std::endl; 
      +          m_out << "tools::rroot::basket::stream :"
      +                       << " can't alloc " << fBufferSize << std::endl;
                 _clear();
                 return false;
               }
               if(v>1) {
                 if(!a_buffer.read_fast_array(_buf,m_last)) {
                   _clear();
      -            delete [] _buf;  
      +            delete [] _buf;
                   return false;
                 }
               } else {
                 uint32 n;
                 if(!a_buffer.read_array(fBufferSize,_buf,n)) {
                   _clear();
      -            delete [] _buf;  
      +            delete [] _buf;
                   return false;
                 }
               }
      @@ -230,7 +230,7 @@ public:
             m_entry_offset = new int[a_from.m_nev];
             if(!m_entry_offset) {
               m_out << "tools::rroot::basket::basket(cpcstor) :"
      -                     << " can't alloc " << a_from.m_nev << "." 
      +                     << " can't alloc " << a_from.m_nev << "."
                            << std::endl;
             } else {
               uint32 len = a_from.m_nev*sizeof(int);
      @@ -241,13 +241,13 @@ public:
             m_displacement = new int[a_from.m_nev];
             if(!m_displacement) {
               m_out << "tools::rroot::basket::basket(cpcstor) :"
      -                     << " can't alloc " << a_from.m_nev << "." 
      +                     << " can't alloc " << a_from.m_nev << "."
                            << std::endl;
             } else {
               uint32 len = a_from.m_nev*sizeof(int);
               ::memcpy(m_displacement,a_from.m_displacement,len);
             }
      -    }    
      +    }
         }
         basket& operator=(const basket& a_from){
           parent::operator=(a_from);
      @@ -267,7 +267,7 @@ public:
             m_entry_offset = new int[a_from.m_nev];
             if(!m_entry_offset) {
               m_out << "tools::rroot::basket::operator=() :"
      -                     << " can't alloc " << a_from.m_nev << "." 
      +                     << " can't alloc " << a_from.m_nev << "."
                            << std::endl;
             } else {
               uint32 len = a_from.m_nev*sizeof(int);
      @@ -278,13 +278,13 @@ public:
             m_displacement = new int[a_from.m_nev];
             if(!m_displacement) {
               m_out << "tools::rroot::basket::operator=() :"
      -                     << " can't alloc " << a_from.m_nev << "." 
      +                     << " can't alloc " << a_from.m_nev << "."
                            << std::endl;
             } else {
               uint32 len = a_from.m_nev*sizeof(int);
               ::memcpy(m_displacement,a_from.m_displacement,len);
             }
      -    }    
      +    }
       
           return *this;
         }
      @@ -296,13 +296,13 @@ public:
         uint32 last() const {return m_last;}
       
         bool read_offset_tables(bool a_byte_swap) {
      -    if(!m_buffer) return false;    
      -    if(!m_last) return false;    
      +    if(!m_buffer) return false;
      +    if(!m_last) return false;
       
           delete [] m_entry_offset;
           m_entry_offset = 0;
       
      -    buffer _buffer(m_out,a_byte_swap,m_buf_size,m_buffer,0,false); 
      +    buffer _buffer(m_out,a_byte_swap,m_buf_size,m_buffer,0,false);
           _buffer.set_offset(m_last);
       
          {uint32 n;
      diff --git a/source/analysis/g4tools/include/tools/rroot/branch b/source/analysis/g4tools/include/tools/rroot/branch
      index 47fde7b402..650dea1e11 100644
      --- a/source/analysis/g4tools/include/tools/rroot/branch
      +++ b/source/analysis/g4tools/include/tools/rroot/branch
      @@ -79,7 +79,7 @@ public:
           uint32 m_bits;
           if(!Object_stream(a_buffer,id,m_bits)) return false;
           a_buffer.set_offset(old);}
      -    
      +
           if(!Named_stream(a_buffer,m_name,m_title)) return false;
       
           //::printf("debug : branch::stream %s %s\n",m_name.c_str(),m_title.c_str());
      @@ -287,7 +287,7 @@ public:
             return false;
           }}
           //::printf("debug : branch::stream : streamed_baskets : end\n");
      -    
      +
           //fNleaves = m_leaves.size();
       
           if(fMaxBaskets<=0) {
      @@ -296,7 +296,7 @@ public:
                   << std::endl;
             return false;
           }
      -    
      +
           fBasketEntry = new int[fMaxBaskets];
           fBasketBytes = new int[fMaxBaskets];
           fBasketSeek = new seek[fMaxBaskets];
      @@ -446,7 +446,7 @@ public:
               delete [] v;
             }}
           }
      -    
      +
           if(vers>2) {
             //TString
             std::string fileName;
      @@ -485,7 +485,7 @@ public:
           for(uint32 i=0;i(i,mxi);      
      +      mxi = mx(i,mxi);
           }
           if(m_write_basket) {
             if((num!=m_write_basket)||(mxi!=(m_write_basket-1))) {
      @@ -512,10 +512,10 @@ public:
               }
               //in the below, false is to say m_baskets is not owner of *it.
               m_baskets[index] = std::pair(*it,false);
      -      } 
      +      }
             index++;
           }}
      -    
      +
           return true;
         }
       
      @@ -525,7 +525,7 @@ public:
         virtual bool read_leaves(ifile&,buffer& a_buffer){
           tools_vforcit(base_leaf*,m_leaves,it) {
             if(!(*it)->read_buffer(a_buffer)) {
      -        m_out << "tools::rroot::branch::read_leaves :" 
      +        m_out << "tools::rroot::branch::read_leaves :"
                     << " read_buffer failed."
                     << std::endl;
               return false;
      @@ -579,7 +579,7 @@ public:
               if((a_entry>=first)&&(a_entry<=last)) {
                 m_read_basket++;
                 found = true;
      -        }   
      +        }
             }
             if(!found) {
               uint32 count = 0;
      @@ -591,7 +591,7 @@ public:
                   m_read_basket = count;
                   found = true;
                   break;
      -          }   
      +          }
                 count++;
               }
             }
      @@ -666,7 +666,7 @@ public:
       
           // Set entry offset in buffer and read data from all leaves
           //buf->resetMap();
      -  
      +
           uint32 bufbegin;
          {int* entry_offset = m__read_basket->entry_offset();
           if(entry_offset) {
      @@ -706,7 +706,7 @@ public:
             if(entry_offset) {
               uint32 nev = m__read_basket->nev();
               ::printf("debug : eoff : num %d\n",nev);
      -        for(uint32 i=0;ibuf_size(),m__read_basket->buf(),0,false); 
      +    buffer _buffer(m_out,a_file.byte_swap(),m__read_basket->buf_size(),m__read_basket->buf(),0,false);
           _buffer.set_offset(bufbegin);
           _buffer.set_map_objs(true);  //for MEMPHYS/applications/read.icc
       
      @@ -825,28 +825,28 @@ public:
       protected:
         basket* get_basket(ifile& a_file,seek a_pos,uint32 a_len) {
           //if(fBranch.tree().memoryFull(fBufferSize)) fBranch.dropBaskets();
      -    if(!a_len) return 0;  
      +    if(!a_len) return 0;
       
           basket* _basket = new basket(m_out,a_pos,a_len); //basket is a key.
           if(!_basket->read_file(a_file)) {
      -      m_out << "tools::rroot::branch::get_basket :" 
      +      m_out << "tools::rroot::branch::get_basket :"
                   << " read_file() failed."
                   << std::endl;
             delete _basket;
             return 0;
           }
      -   {buffer _buffer(m_out,a_file.byte_swap(),a_len,_basket->buf(),0,false); 
      +   {buffer _buffer(m_out,a_file.byte_swap(),a_len,_basket->buf(),0,false);
           if(!_basket->stream(_buffer)) {
      -      m_out << "tools::rroot::branch::get_basket :" 
      +      m_out << "tools::rroot::branch::get_basket :"
                   << " basket stream failed."
                   << std::endl;
             delete _basket;
             return 0;
           }}
      -    unsigned int sz;    
      +    unsigned int sz;
           char* buf = _basket->get_object_buffer(a_file,sz); //basket owns buf.
           if(!buf) {
      -      m_out << "tools::rroot::branch::get_basket :" 
      +      m_out << "tools::rroot::branch::get_basket :"
                   << " get_object_buffer() failed."
                   << std::endl;
             delete _basket;
      @@ -854,7 +854,7 @@ protected:
           }
       
           if(_basket->seek_key()!=a_pos) { //consistency check.
      -      m_out << "tools::rroot::branch::get_basket :" 
      +      m_out << "tools::rroot::branch::get_basket :"
                   << " seek anomaly."
                   << " a_pos " << a_pos
                   << " seek_key() " << _basket->seek_key()
      @@ -863,7 +863,7 @@ protected:
             return 0;
           }
           //if(_basket->nbytes()!=a_len) { //consistency check.
      -    //  m_out << "tools::rroot::branch::get_basket :" 
      +    //  m_out << "tools::rroot::branch::get_basket :"
           //        << " WARNING : length anomaly."
           //        << " a_len " << a_len
           //        << " nbytes() " << _basket->nbytes()
      @@ -872,7 +872,7 @@ protected:
       
           if(fEntryOffsetLen) {
           if(!_basket->read_offset_tables(a_file.byte_swap())) {
      -      m_out << "tools::rroot::branch::get_basket :" 
      +      m_out << "tools::rroot::branch::get_basket :"
                   << " read_offset_tables failed."
                   << std::endl;
             delete _basket;
      @@ -942,7 +942,7 @@ protected:
         uint32 m_write_basket;   //  Last basket number written
         uint32 m_entry_number;   // Current entry number (last one filled in this branch)
         uint32 m_read_basket;   //! Current basket number when reading
      -  int* fBasketBytes;    //[fMaxBaskets] Lenght of baskets on file
      +  int* fBasketBytes;    //[fMaxBaskets] Length of baskets on file
         int* fBasketEntry;    //[fMaxBaskets] Table of first entry in eack basket
         seek* fBasketSeek;    //[fMaxBaskets] Addresses of baskets on file
       };
      diff --git a/source/analysis/g4tools/include/tools/rroot/branch_element b/source/analysis/g4tools/include/tools/rroot/branch_element
      index 3922790753..0aa345165b 100644
      --- a/source/analysis/g4tools/include/tools/rroot/branch_element
      +++ b/source/analysis/g4tools/include/tools/rroot/branch_element
      @@ -37,7 +37,7 @@ public:
       public:
         virtual bool stream(buffer& a_buffer) {
           _clear();
      -    
      +
           short v;
           unsigned int s, c;
           if(!a_buffer.read_version(v,s,c)) return false;
      @@ -138,7 +138,7 @@ public: //branch
             }*/
             //::printf("debug : uuuu : ndata %d\n",n);
             fNdata = n;
      -      
      +
             //TClonesArray *clones = (TClonesArray*)fObject;
             //if (!clones) return;
             //if (clones->IsZombie()) return;
      @@ -149,12 +149,12 @@ public: //branch
             //      << " name " << m_name << " ref_cls " << fClassName
             //      << " : type " << fType << ", fNdata " << n
             //      << std::endl;
      -      return true;	    
      -	    
      +      return true;
      +
           } else if(fType==31) { // TClonesArray sub-branch (contains the elements).
             if(fStreamerType==kObject) { //to read EsbRoot fgd_dig.root.
               int ndata = fBranchCount->get_ndata();
      -#ifdef TOOLS_RROOT_BRANCH_ELEMENT_DUMP	
      +#ifdef TOOLS_RROOT_BRANCH_ELEMENT_DUMP
               ::printf("debug : %s : fClassName %s : fID %d : kObject : ndata %d\n",m_name.c_str(),fClassName.c_str(),fID,ndata);
       #endif
               streamer_info* _info = a_file.find_streamer_info(fClassName);
      @@ -162,14 +162,14 @@ public: //branch
                 m_out << "tools::rroot::branch_element::read_leaves : " << sout(m_name) << " :"
                       << " read(kObject) : streamer_infos for ref_cls " << fClassName << " not found."
                       << std::endl;
      -          return false;		
      +          return false;
               }
               streamer_element* _element = _info->find_streamer_element(fID);
               if(!_element) {
                 m_out << "tools::rroot::branch_element::read_leaves : " << sout(m_name) << " :"
                       << " read(kObject) : for ref_cls " << fClassName << ", fID " << fID << " streamer element not found."
                       << std::endl;
      -          return false;		
      +          return false;
               }
               //::printf("debug : element type name %s\n",_element->type_name().c_str());
       
      @@ -183,12 +183,12 @@ public: //branch
                   m_out << "tools::rroot::branch_element::read_leaves : " << sout(m_name) << " :"
                         << " read(kObject) : m_obj is not an obj_list."
                         << std::endl;
      -            return false;		  
      +            return false;
                 }
               }
      -	
      +
               _list->safe_clear();
      -	
      +
               for(int index=0;indextype_name(),args);
      @@ -202,14 +202,14 @@ public: //branch
                 }
                 _list->add_object(_obj); //give ownership.
               }
      -	
      +
               return true;
             }
             if(fStreamerType==kObjectP) return true;
             //from v4-00-01
             if(fStreamerType==kDouble32) {
               int ndata = fBranchCount->get_ndata();
      -#ifdef TOOLS_RROOT_BRANCH_ELEMENT_DUMP	
      +#ifdef TOOLS_RROOT_BRANCH_ELEMENT_DUMP
               ::printf("debug : %s : fID %d : double32 : ndata %d\n",m_name.c_str(),fID,ndata);
       #endif
               stl_vector* vec = 0;
      @@ -222,10 +222,10 @@ public: //branch
                   m_out << "tools::rroot::branch_element::read_leaves : " << sout(m_name) << " :"
                         << " read(kDouble32) : m_obj is not a stl_vector."
                         << std::endl;
      -            return false;		  
      +            return false;
                 }
               }
      -	
      +
               vec->resize(ndata);
               float afloat;
               for(int ii=0;iiget_ndata();
      -#ifdef TOOLS_RROOT_BRANCH_ELEMENT_DUMP	
      +#ifdef TOOLS_RROOT_BRANCH_ELEMENT_DUMP
               ::printf("debug : %s : fID %d : double : ndata %d\n",m_name.c_str(),fID,ndata);
       #endif
               stl_vector* vec = 0;
      @@ -257,10 +257,10 @@ public: //branch
                   m_out << "tools::rroot::branch_element::read_leaves : " << sout(m_name) << " :"
                         << " read(kDouble) : m_obj is not a stl_vector."
                         << std::endl;
      -            return false;		  
      +            return false;
                 }
               }
      -	
      +
               vec->resize(ndata);
               double* _value = vec_data(*vec);
               if(!a_buffer.read_fast_array(_value,ndata)) {
      @@ -270,12 +270,12 @@ public: //branch
                 vec->clear();
                 return false;
               }
      -	
      +
               return true;
      -	
      +
             } else if(fStreamerType==kInt) {
               int ndata = fBranchCount->get_ndata();
      -#ifdef TOOLS_RROOT_BRANCH_ELEMENT_DUMP	
      +#ifdef TOOLS_RROOT_BRANCH_ELEMENT_DUMP
               ::printf("debug : %s : fID %d : int : ndata %d\n",m_name.c_str(),fID,ndata);
       #endif
               stl_vector* vec = 0;
      @@ -288,7 +288,7 @@ public: //branch
                   m_out << "tools::rroot::branch_element::read_leaves : " << sout(m_name) << " :"
                         << " read(kInt) : m_obj is not a stl_vector."
                         << std::endl;
      -            return false;		  
      +            return false;
                 }
               }
       
      @@ -301,15 +301,15 @@ public: //branch
                 vec->clear();
                 return false;
               }
      -	
      +
               return true;
       
             } else if((fStreamerType==kUInt)||(fStreamerType==kBits)) {
               int ndata = fBranchCount->get_ndata();
      -#ifdef TOOLS_RROOT_BRANCH_ELEMENT_DUMP	
      +#ifdef TOOLS_RROOT_BRANCH_ELEMENT_DUMP
               if(fStreamerType==kUInt) ::printf("debug : %s : fID %d : uint : ndata %d\n",m_name.c_str(),fID,ndata);
               else                     ::printf("debug : %s : fID %d : bits : ndata %d\n",m_name.c_str(),fID,ndata);
      -#endif	
      +#endif
               stl_vector* vec = 0;
               if(!m_obj) {
                 vec = new stl_vector;
      @@ -320,7 +320,7 @@ public: //branch
                   m_out << "tools::rroot::branch_element::read_leaves : " << sout(m_name) << " :"
                         << " read(kUInt) : m_obj is not a stl_vector."
                         << std::endl;
      -            return false;		  
      +            return false;
                 }
               }
       
      @@ -333,16 +333,16 @@ public: //branch
                 vec->clear();
                 return false;
               }
      -	
      +
               return true;
      -	
      +
             } else {
               m_out << "tools::rroot::branch_element::read_leaves :"
                     << " name " << m_name << " ref_cls " << fClassName
                     << " : for type " << fType << ", stream_type " << fStreamerType << " not treated."
                     << std::endl;
               return false;
      -      } 
      +      }
       	/*
               //m_obj = clones_array(m_fac,true,false);  //true = owner of objects.
               uint32 ndata = 1;
      @@ -364,7 +364,7 @@ public: //branch
       //             << std::endl;
       //       return true;
       //
      -       
      +
              if((fID==-1)||
                 (fID==1)     // for pmx to read LHCb files :
                ){
      @@ -377,7 +377,7 @@ public: //branch
       	 } else {
       	   fNdata = 1;
       	 }
      -	
      +
                // read object :
       	 bool created = false;
                if(!m_obj) {
      @@ -405,14 +405,14 @@ public: //branch
                      << std::endl;
                return false;
              }
      -   
      +
           }
       
           m_out << "tools::rroot::branch_element::read_leaves :"
                 << " name " << m_name << " ref_cls " << fClassName
                 << " : type " << fType << " not treated, stream_type is " << fStreamerType << "."
                 << std::endl;
      -    return false;	    
      +    return false;
       
       /*
           ///////////////////////////////////////////////////////
      @@ -428,7 +428,7 @@ public: //branch
             m_out << "tools::rroot::branch_element::read_leaves :"
                   << " name " << m_name << " ref_cls " << fClassName
                   << " : type " << fType << " not treated."
      -            << std::endl;  
      +            << std::endl;
             return false;
       
           } else if(fType==41) {
      @@ -509,7 +509,7 @@ public: //branch
               m_out << "tools::rroot::branch_element::read_leaves :"
                     << " name " << m_name << " ref_cls " << fClassName << " :"
                     << " obj stream failed."
      -              << std::endl;          
      +              << std::endl;
               if(created) {delete m_obj;m_obj = 0;}
               return false;
             }
      @@ -517,7 +517,7 @@ public: //branch
             //m_out << "tools::rroot::branch_element::read_leaves :"
             //      << " name " << m_name << " ref_cls " << fClassName << " :"
             //      << " obj streamed."
      -      //      << std::endl;          
      +      //      << std::endl;
       
             return true;
       
      @@ -549,7 +549,7 @@ public: //branch
       //         m_out << "tools::rroot::branch_element::read_leaves :"
       //               << " name " << m_name << " ref_cls " << fClassName << " :"
       //               << " obj stream failed."
      -//               << std::endl;          
      +//               << std::endl;
       //         return false;
       //       }
       //       return true;
      @@ -597,7 +597,7 @@ public: //branch
               uint32 n;
               if(!(*it)->find_entry(a_file,a_entry,n)) return false;
               a_nbytes += n;
      -      } 
      +      }
           }
       
           return true;
      @@ -677,7 +677,7 @@ public:
           }
           return od; //WARNING : we are not owner.
         }
      - 
      +
         template 
         stl_vector* find_entry_vec(ifile& a_file,uint64 a_event) {
           unsigned int n;
      @@ -698,7 +698,7 @@ public:
           }
           return od; //WARNING : we are not owner.
         }
      -  
      +
       protected:
         void _clear() {
           if(fBranchCount_created) {delete fBranchCount;fBranchCount = 0;fBranchCount_created = false;}
      @@ -721,8 +721,8 @@ protected:
       
       }}
       
      -#ifdef TOOLS_RROOT_BRANCH_ELEMENT_DUMP	
      -#undef TOOLS_RROOT_BRANCH_ELEMENT_DUMP	
      +#ifdef TOOLS_RROOT_BRANCH_ELEMENT_DUMP
      +#undef TOOLS_RROOT_BRANCH_ELEMENT_DUMP
       #endif
       
       #endif
      @@ -751,7 +751,7 @@ protected:
       						} break;}
       */
       /* 6.12.06 version 10 : fStreamerType : from meta/inc/TVirtualStreamerInfo.h :
      -	  
      +
          enum EReadWrite {
             kBase        =  0,  kOffsetL = 20,  kOffsetP = 40,  kCounter =  6,  kCharStar = 7,
             kChar        =  1,  kShort   =  2,  kInt     =  3,  kLong    =  4,  kFloat    = 5,
      diff --git a/source/analysis/g4tools/include/tools/rroot/buffer b/source/analysis/g4tools/include/tools/rroot/buffer
      index bc4687c0d4..2a1987f82b 100644
      --- a/source/analysis/g4tools/include/tools/rroot/buffer
      +++ b/source/analysis/g4tools/include/tools/rroot/buffer
      @@ -175,9 +175,9 @@ protected:
       
             std::ios::fmtflags old_flags = m_out.flags();
             m_out << "tools::rroot::read_class_tag :"
      -            << " tag unknown case ! "  
      +            << " tag unknown case ! "
                   << tag << " hex " << std::hex << tag
      -            << std::endl;             
      +            << std::endl;
             m_out.flags(old_flags);
       
             return false;
      @@ -221,7 +221,7 @@ protected:
             //     if(!write((clIdx | Rio_kClassMask))) return false;
             //   or
             //     if(!write(Rio_kNewClassTag)) return false;
      -      // + write object 
      +      // + write object
             // + set byte cnt (cnt|kByteCountMask()) at skipped int.
       
             if(m_verbose) {
      @@ -254,7 +254,7 @@ protected:
             }
       
             return true;
      -            
      +
           } else {
             if(m_verbose) {
               std::ios::fmtflags old_flags = m_out.flags();
      @@ -269,9 +269,9 @@ protected:
             a_class.clear();
             return true;
           }
      -    
      +
           return false;
      -  }  
      +  }
       public:
         void remove_in_map(iro* a_obj) {
       #ifdef TOOLS_RROOT_OBJ_MAP_HASH_TABLE
      @@ -318,7 +318,7 @@ public:
                     << " class " << sout(sclass) << ", is_ref but map objs is not enabled on this buffer."
                     << std::endl;
             }
      -      
      +
             if(m_map_objs) {
       #ifdef TOOLS_RROOT_OBJ_MAP_HASH_TABLE
               if(m_objs.find(obj_offset,a_obj)) {
      @@ -387,7 +387,7 @@ public:
                       << " is_ref : streamed failed for class " << sout(scls)
                       << std::endl;
                 //restore a good buffer position :
      -          //m_pos = m_buffer+startpos+sizeof(unsigned int); 
      +          //m_pos = m_buffer+startpos+sizeof(unsigned int);
                 delete obj;
                 return false;
               }
      @@ -409,8 +409,8 @@ public:
       
             // in principle at this point m_pos should be
             //   m_buffer+startpos+sizeof(unsigned int)
      -      // but enforce it anyway : 
      -      m_pos = m_buffer+startpos+sizeof(unsigned int); 
      +      // but enforce it anyway :
      +      m_pos = m_buffer+startpos+sizeof(unsigned int);
             //check_byte_count(startpos,0,sclass) would always be ok.
       
             //a_obj = ???
      @@ -419,7 +419,7 @@ public:
             if(sclass.empty()) {
               //m_out << "debug : tools::rroot::buffer::read_object : found empty class name." << std::endl;
       
      -        m_pos = m_buffer+startpos+bcnt+sizeof(unsigned int); 
      +        m_pos = m_buffer+startpos+bcnt+sizeof(unsigned int);
       
             } else {
               //m_out << "debug : tools::rroot::buffer::read_object : not a ref, create object." << std::endl;
      @@ -433,7 +433,7 @@ public:
       #else
                 obj_map::const_iterator it = m_objs.find(startpos);
                 if(it!=m_objs.end()) {
      -            a_obj = (*it).second;	
      +            a_obj = (*it).second;
                   ::printf("debug : find xxx : %d %lu\n",startpos,a_obj);
                   //stay at current m_pos ?
                   return true;
      @@ -481,7 +481,7 @@ public:
               if(!check_byte_count(startpos,bcnt,sclass)) {
                 m_out << "tools::rroot::buffer::read_object :"
                       << " check_byte_count failed "
      -                << "for object of class " 
      +                << "for object of class "
                       << sout(sclass) << "." << std::endl;
                 delete obj;
                 return false;
      @@ -507,13 +507,13 @@ public:
           short version = 0;
           // not interested in byte count
           if(!parent::read(version)) return false;
      -      
      +
           // if this is a byte count, then skip next short and read version
           if(version & kByteCountVMask()) {
             if(!parent::read(version)) return false;
             if(!parent::read(version)) return false;
           }
      -    
      +
           a_version = version;
           return true;
         }
      @@ -529,7 +529,7 @@ public:
       
           // before reading object save start position
           uint32 startpos = (uint32)(m_pos-m_buffer);
      -      
      +
           // read byte count (older files don't have byte count)
           // byte count is packed in two individual shorts, this to be
           // backward compatible with old files that have at this location
      @@ -546,7 +546,7 @@ public:
             if(!parent::read(v.vers[0])) return false;
             if(!parent::read(v.vers[1])) return false;
           }
      -    
      +
           // no bytecount, backup and read version
           uint32 bcnt = 0;
           if(v.cnt & kByteCountMask()) {
      @@ -557,11 +557,11 @@ public:
           if(!parent::read(version)) return false;
           //printf("Reading version=%d at pos=%d, bytecount=%d\n",
           //version,*startpos,*bcnt);
      -    
      +
           a_version = version;
           a_start_pos = startpos;
           a_byte_count = bcnt;
      -  
      +
           return true;
         }
       
      @@ -570,21 +570,21 @@ public:
       
           size_t len = a_start_pos + a_byte_count + sizeof(unsigned int);
       
      -    size_t diff = size_t(m_pos-m_buffer);  
      +    size_t diff = size_t(m_pos-m_buffer);
       
           if(diff==len) return true;
       
           if(difflen) {
             m_out << "tools::rroot::buffer::check_byte_count :"
                   << " object of class " << sout(a_store_cls)
      -            << " read too many bytes (" 
      +            << " read too many bytes ("
                   << long_out(long(diff-len)) << " in excess)." << std::endl;
           }
       
      @@ -592,7 +592,7 @@ public:
                 << " " << sout(a_store_cls)
                 << " streamer not in sync with data on file, fix streamer."
                 << std::endl;
      -    
      +
           m_pos = m_buffer+len;
       
           return false;
      diff --git a/source/analysis/g4tools/include/tools/rroot/clss b/source/analysis/g4tools/include/tools/rroot/clss
      index ba9923927b..809f73f0a8 100644
      --- a/source/analysis/g4tools/include/tools/rroot/clss
      +++ b/source/analysis/g4tools/include/tools/rroot/clss
      @@ -11,22 +11,22 @@ namespace rroot {
       
       inline const std::string& TH1F_cls(){
         static const std::string s_v("TH1F");
      -  return s_v;  
      +  return s_v;
       }
       
       inline const std::string& TH1D_cls(){
         static const std::string s_v("TH1D");
      -  return s_v;  
      +  return s_v;
       }
       
       inline const std::string& TH2F_cls(){
         static const std::string s_v("TH2F");
      -  return s_v;  
      +  return s_v;
       }
       
       inline const std::string& TH2D_cls(){
         static const std::string s_v("TH2D");
      -  return s_v;  
      +  return s_v;
       }
       
       inline const std::string& TH3D_cls(){
      @@ -46,12 +46,12 @@ inline const std::string& TProfile2D_cls(){
       
       inline const std::string& TDirectory_cls(){
         static const std::string s_v("TDirectory");
      -  return s_v;  
      +  return s_v;
       }
       
       inline const std::string& TGeoManager_cls(){
         static const std::string s_v("TGeoManager");
      -  return s_v;  
      +  return s_v;
       }
       
       inline const std::string& TList_cls(){
      diff --git a/source/analysis/g4tools/include/tools/rroot/directory b/source/analysis/g4tools/include/tools/rroot/directory
      index 7fdbf06cc9..9c2de4e0ba 100644
      --- a/source/analysis/g4tools/include/tools/rroot/directory
      +++ b/source/analysis/g4tools/include/tools/rroot/directory
      @@ -56,7 +56,7 @@ public:
       
         key* find_key(const std::string& a_name) {
           if(m_file.verbose()) {
      -      m_file.out() << "tools::rroot::directory::find_key :" 
      +      m_file.out() << "tools::rroot::directory::find_key :"
                          << " " << sout(a_name) << " ..."
                          << std::endl;
           }
      @@ -69,7 +69,7 @@ public:
       
         key* find_key_from_class(const std::string& a_class) {
           if(m_file.verbose()) {
      -      m_file.out() << "tools::rroot::directory::find_key_from_class :" 
      +      m_file.out() << "tools::rroot::directory::find_key_from_class :"
                          << " " << sout(a_class) << " ..."
                          << std::endl;
           }
      @@ -124,19 +124,19 @@ public:
            {seek32 i;
             if(!rb.read(i)) return false;
             m_seek_directory = i;}
      -  
      +
            {seek32 i;
             if(!rb.read(i)) return false;
             m_seek_parent = i;}
      -  
      +
            {seek32 i;
             if(!rb.read(i)) return false;
             m_seek_keys = i;}
           }
           if(m_file.verbose()) {
             m_file.out() << "tools::rroot::key::from_buffer :"
      -                   << " nbytes keys : " << m_nbytes_keys 
      -                   << ", pos keys : " << m_seek_keys 
      +                   << " nbytes keys : " << m_nbytes_keys
      +                   << ", pos keys : " << m_seek_keys
                          << std::endl;
           }
           return true;
      @@ -149,7 +149,7 @@ public:
           a_number = 0;
       
           clear_keys();
      -  
      +
           key headerkey(m_file.out(),m_seek_keys,m_nbytes_keys);
           if(!headerkey.read_file(m_file)) return false;
           char* buffer = headerkey.data_buffer();
      diff --git a/source/analysis/g4tools/include/tools/rroot/file b/source/analysis/g4tools/include/tools/rroot/file
      index 8e3accde1e..18e26a635a 100644
      --- a/source/analysis/g4tools/include/tools/rroot/file
      +++ b/source/analysis/g4tools/include/tools/rroot/file
      @@ -66,7 +66,7 @@ public: //ifile
           if (::lseek(m_file, a_offset, whence) < 0) {
       #endif
             m_out << "tools::rroot::file::set_pos :"
      -            << " cannot set position " << a_offset 
      +            << " cannot set position " << a_offset
                   << " in file " << sout(m_path) << "."
                   << std::endl;
             return false;
      @@ -80,7 +80,7 @@ public: //ifile
           typedef int ssize_t;
       #endif
           ssize_t siz;
      -    while ((siz = ::read(m_file,a_buffer,a_length)) < 0 && 
      +    while ((siz = ::read(m_file,a_buffer,a_length)) < 0 &&
                  error_number() == EINTR) reset_error_number();
           if (siz < 0) {
             m_out << "tools::rroot::file::read_buffer :"
      @@ -90,7 +90,7 @@ public: //ifile
           }
           if (siz != ssize_t(a_length)) {
             m_out << "tools::rroot::file::read_buffer :"
      -            << " error reading all requested bytes from file " 
      +            << " error reading all requested bytes from file "
                   << sout(m_path) << ", got " << long_out(siz)
                   << " of " << a_length
                   << std::endl;
      @@ -165,7 +165,7 @@ protected:
         ,m_streamer_infos_key(a_from.m_out)
         ,m_streamer_fac(a_from.m_out)
         ,m_streamer_infos(m_streamer_fac)
      -  { 
      +  {
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      @@ -242,12 +242,12 @@ protected:
           if (fWritable) {
             if (fSeekFree > fBEGIN) {
               if(!readFreeSegments()) {
      -          m_out << "tools::rroot::file::initialize : Cannot read free segments." 
      +          m_out << "tools::rroot::file::initialize : Cannot read free segments."
                      << std::endl;
                 return false;
               }
             } else {
      -        m_out << "tools::rroot::file::initialize : file \"" << fName 
      +        m_out << "tools::rroot::file::initialize : file \"" << fName
                    << "\" probably not closed, cannot read free segments" << std::endl;
             }
           }
      @@ -477,7 +477,7 @@ protected:
           buffer b(m_out,byte_swap(),sz,buf,k.key_length(),false);
           return m_streamer_infos.stream(b);
         }
      -  
      +
       #if defined(__sun) && !defined(__linux__) && (__SUNPRO_CC > 0x420)
         int error_number() {return ::errno;}
         void reset_error_number() {::errno = 0;}
      diff --git a/source/analysis/g4tools/include/tools/rroot/info b/source/analysis/g4tools/include/tools/rroot/info
      index 981223f61d..512cf71c19 100644
      --- a/source/analysis/g4tools/include/tools/rroot/info
      +++ b/source/analysis/g4tools/include/tools/rroot/info
      @@ -200,7 +200,7 @@ public: //iro
         }
       public:
         void out(std::ostream& a_out) const {
      -    a_out << "streamer_info for class :" 
      +    a_out << "streamer_info for class :"
                 << " " << m_name << ", version=" << m_streamed_class_version
                 << std::endl;
           tools_vforcit(streamer_element*,m_elements,it) (*it)->out(a_out);
      @@ -244,13 +244,13 @@ protected:
           m_streamed_class_version = a_from.m_streamed_class_version;
           m_elements = a_from.m_elements;
           return *this;
      -  }  
      +  }
       public:
         const std::string& name() const {return m_name;}
         streamer_element* find_streamer_element(size_t a_index) const {
           if(a_index>=m_elements.size()) return 0;
           return m_elements[a_index];
      -  }    
      +  }
       protected:
         ifac& m_fac;
       protected: //Named
      diff --git a/source/analysis/g4tools/include/tools/rroot/iros b/source/analysis/g4tools/include/tools/rroot/iros
      index bc2cb83f73..58cb608512 100644
      --- a/source/analysis/g4tools/include/tools/rroot/iros
      +++ b/source/analysis/g4tools/include/tools/rroot/iros
      @@ -14,9 +14,9 @@
       namespace tools {
       namespace rroot {
       
      -class iros : public virtual iro,public std::vector {
      +class iros : public virtual iro,protected std::vector {  //proteced to avoid using std::vector::clear().
         typedef std::vector parent;
      -public:  
      +public:
         static const std::string& s_store_class() {
           static const std::string s_v("TObjArray");
           return s_v;
      @@ -86,7 +86,13 @@ public:
           return *this;
         }
       public:
      -  void cleanup() {_clear();}
      +  parent::const_iterator begin() const {return parent::begin();}
      +  parent::iterator begin() {return parent::begin();}
      +  parent::const_iterator end() const {return parent::end();}
      +  parent::iterator end() {return parent::end();}
      +  parent::size_type size() const {return parent::size();}
      +public:
      +  void cleanup() {_clear();}  //warning : clear is a function of the parent std::vector.
         void dump(std::ostream& a_out) {
           a_out << " iros : size " << size() << std::endl;
           tools_vforcit(iro*,*this,it) {
      @@ -155,7 +161,7 @@ protected:
             bool own = (*itb);
             parent::erase(it);
             m_owns.erase(itb);
      -      if(own) delete entry;    
      +      if(own) delete entry;
           }
         }
       protected:
      diff --git a/source/analysis/g4tools/include/tools/rroot/key b/source/analysis/g4tools/include/tools/rroot/key
      index a941c76588..0148826958 100644
      --- a/source/analysis/g4tools/include/tools/rroot/key
      +++ b/source/analysis/g4tools/include/tools/rroot/key
      @@ -94,7 +94,7 @@ public:
           m_buffer = new char[a_nbytes];
           if(!m_buffer) {
             m_out << "tools::rroot::key::key(cpcstor) :"
      -                   << " can't alloc " << a_nbytes << "." 
      +                   << " can't alloc " << a_nbytes << "."
                          << std::endl;
           } else {
             m_buf_size = a_nbytes;
      @@ -130,7 +130,7 @@ protected:
             m_buffer = new char[a_from.m_buf_size];
             if(!m_buffer) {
               m_out << "tools::rroot::key::key(cpcstor) :"
      -                     << " can't alloc " << a_from.m_buf_size << "." 
      +                     << " can't alloc " << a_from.m_buf_size << "."
                            << std::endl;
             } else {
               m_buf_size = a_from.m_buf_size;
      @@ -161,7 +161,7 @@ public:
             m_buffer = new char[a_from.m_buf_size];
             if(!m_buffer) {
               m_out << "tools::rroot::key::operator=() :"
      -                     << " can't alloc " << a_from.m_buf_size << "." 
      +                     << " can't alloc " << a_from.m_buf_size << "."
                            << std::endl;
             } else {
               m_buf_size = a_from.m_buf_size;
      @@ -191,7 +191,7 @@ public:
             m_out << "tools::rroot::key::read_file :"
                          << " reading " << m_nbytes << " bytes"
                          << " at position " << m_seek_key
      -                   << "." 
      +                   << "."
                          << std::endl;
           }
           return true;
      @@ -243,7 +243,7 @@ public:
           } else {
            {seek32 i;
             if(!rb.read(i)) return false;
      -      m_seek_key = i;}    
      +      m_seek_key = i;}
            {seek32 i;
             if(!rb.read(i)) return false;
             m_seek_parent_dir = i;}
      @@ -258,7 +258,7 @@ public:
                          << ", object name : " << sout(m_object_name)
                          << ", object title : " << sout(m_object_title)
                          << ", object size : " << m_object_size
      -                   << "." 
      +                   << "."
                          << std::endl;
           }
           return true;
      @@ -266,7 +266,7 @@ public:
       
         char* get_object_buffer(ifile& a_file,uint32& a_size) {
           if(!m_key_length) {
      -      m_out << "tools::rroot::key::get_object_buffer :" 
      +      m_out << "tools::rroot::key::get_object_buffer :"
                          << " WARNING : m_key_length is zero."
                          << std::endl;
             //delete [] m_buffer;
      @@ -276,7 +276,7 @@ public:
             //return 0;
           }
           if(!m_nbytes) {
      -      m_out << "tools::rroot::key::get_object_buffer :" 
      +      m_out << "tools::rroot::key::get_object_buffer :"
                          << " m_nbytes is zero."
                          << std::endl;
             delete [] m_buffer;
      @@ -286,13 +286,13 @@ public:
             return 0;
           }
           if(!m_object_size) {
      -      m_out << "tools::rroot::key::get_object_buffer :" 
      +      m_out << "tools::rroot::key::get_object_buffer :"
                          << " WARNING : m_object_size is zero."
                          << std::endl;
           }
       
           if(a_file.verbose()) {
      -      m_out << "tools::rroot::key::get_object_buffer :" 
      +      m_out << "tools::rroot::key::get_object_buffer :"
                          << " m_nbytes : " << m_nbytes
                          << " m_key_length : " << m_key_length
                          << " m_object_size : " << m_object_size << "."
      @@ -304,7 +304,7 @@ public:
             delete [] m_buffer;
             m_buf_size = m_key_length+m_object_size;
             if(m_buf_sizenum_elem() << std::endl;
       	return false;
             }
      -      
      +
             if (len > leaf_i->get_max()) { //protection.
      -        m_out << "tools::rroot::leaf::read_buffer : warning : " << sout(name()) 
      -              << ", len = " << len << " > max = " 
      +        m_out << "tools::rroot::leaf::read_buffer : warning : " << sout(name())
      +              << ", len = " << len << " > max = "
                     << leaf_i->get_max() << std::endl;
               len = leaf_i->get_max();
             }
      -      
      +
             uint32 ndata = len * m_length;
      -      
      +
             //if(!ndata) {
             //  delete [] m_value;
             //  m_value = new T[1];
             //  m_size = 0;
             //  return true;
             //}
      -      
      +
             if(ndata>m_size) {
               delete [] m_value;
               m_value = new T[ndata];
             }
      -      
      +
             m_size = ndata;
             if(!a_buffer.read_fast_array(m_value,ndata)) {
               m_out << "tools::rroot::leaf::read_buffer : \"" << name() << "\" :"
      @@ -133,7 +133,7 @@ public: //base_leaf
               return false;
             }
             return true;
      -	
      +
           } else {
             if(m_length) {
               if(m_length>m_size) {
      @@ -267,7 +267,7 @@ public: //base_leaf
             //  return false;
             //}
             //if(len >= m_length) len = m_length-1;
      -      
      +
             m_value = new char[len+1];
       
             if(!a_buffer.read_fast_array(m_value,len)) {
      @@ -418,15 +418,15 @@ public: //base_leaf
           if (fVirtual) {
             unsigned char n;
             if(!a_buffer.read(n)) {
      -        m_out << "tools::rroot::leaf_object::read_buffer :" 
      -                       << " read(unsigned char) failed." 
      +        m_out << "tools::rroot::leaf_object::read_buffer :"
      +                       << " read(unsigned char) failed."
                              << std::endl;
               return false;
             }
             char classname[128];
             if(!a_buffer.read_fast_array(classname,n+1)) {
      -        m_out << "tools::rroot::leaf_object::read_buffer :" 
      -                       << " readFastArray failed." 
      +        m_out << "tools::rroot::leaf_object::read_buffer :"
      +                       << " readFastArray failed."
                              << std::endl;
               return false;
             }
      @@ -440,8 +440,8 @@ public: //base_leaf
             //return false;
           }
           if(!m_obj->stream(a_buffer)) {
      -      m_out << "tools::rroot::leaf_object::read_buffer :" 
      -            << " object stream failed." 
      +      m_out << "tools::rroot::leaf_object::read_buffer :"
      +            << " object stream failed."
                   << " Object store class was " << m_obj->store_class_name() << "."
                   << std::endl;
             return false;
      @@ -470,9 +470,9 @@ protected:
         leaf_object(const leaf_object& a_from)
         :iro(a_from),base_leaf(a_from),m_obj(0),fVirtual(true){}
         leaf_object& operator=(const leaf_object&){return *this;}
      -public:  
      +public:
         void set_object(iobject* a_obj) {m_obj = a_obj;} //do not get ownership.
      -protected:  
      +protected:
         iobject* m_obj;
       protected:
         bool fVirtual; // Support for Virtuality
      diff --git a/source/analysis/g4tools/include/tools/rroot/list b/source/analysis/g4tools/include/tools/rroot/list
      deleted file mode 100644
      index fb1cb1f830..0000000000
      --- a/source/analysis/g4tools/include/tools/rroot/list
      +++ /dev/null
      @@ -1,211 +0,0 @@
      -// Copyright (C) 2010, Guy Barrand. All rights reserved.
      -// See the file tools.license for terms.
      -
      -#ifndef tools_rroot_list
      -#define tools_rroot_list
      -
      -#include "object"
      -#include "../vmanip"
      -#include "../scast"
      -#include "cids"
      -
      -namespace tools {
      -namespace rroot {
      -
      -class obj_list : public virtual iro, public std::vector {
      -  static const std::string& s_store_class() {
      -    static const std::string s_v("TList");
      -    return s_v;
      -  }
      -public:
      -  static const std::string& s_class() {
      -    static const std::string s_v("tools::rroot::obj_list");
      -    return s_v;
      -  }
      -public: //iro
      -  virtual void* cast(const std::string& a_class) const {
      -    if(void* p = cmp_cast(this,a_class)) return p;
      -    return 0;
      -  }
      -  virtual const std::string& s_cls() const {return s_class();}
      -public:
      -  static cid id_class() {return obj_list_cid();}
      -  virtual void* cast(cid a_class) const {
      -    if(void* p = cmp_cast(this,a_class)) {return p;}
      -    else return 0;
      -  }
      -  //virtual void* cast(cid) const {return obj_list_cid();}
      -public:
      -  virtual iro* copy() const {return new obj_list(*this);}
      -  virtual bool stream(buffer& a_buffer) {
      -    _clear();
      -
      -    short v;
      -    unsigned int s, c;
      -    if(!a_buffer.read_version(v,s,c)) return false;
      -
      -    //::printf("debug : obj_list::stream : version %d, byte count %d\n",v,c);
      -
      -   {uint32 id,bits;
      -    if(!Object_stream(a_buffer,id,bits)) return false;}
      -
      -    std::string name;
      -    if(!a_buffer.read(name)) return false;
      -    int nobjects;
      -    if(!a_buffer.read(nobjects)) return false;
      -
      -    //::printf("debug : obj_list : name \"%s\", nobject %d\n",
      -    //    name.c_str(),nobjects);
      -
      -    ifac::args args;
      -    for (int i=0;is_cls()) << " not managed."
      -                             << std::endl;
      -            }
      -            push_back(obj);
      -	  }
      -	} else { //someone else may manage this object.
      -	  if(m_owner) {
      -            a_buffer.out() << "tools::rroot::obj_list::stream : not created object can't be manage here." << std::endl;
      -            return false;
      -	  } else {
      -            push_back(obj);
      -	  }
      -	}
      -      }
      -    }
      -
      -    return a_buffer.check_byte_count(s,c,s_store_class());
      -  }
      -public:
      -  obj_list(ifac& a_fac,bool a_owner,bool a_warn) //a_warn used if a_owner=false.
      -  :m_fac(a_fac)
      -  ,m_owner(a_owner)
      -  ,m_warn(a_warn)
      -  {
      -#ifdef TOOLS_MEM
      -    mem::increment(s_class().c_str());
      -#endif
      -  }
      -  virtual ~obj_list(){
      -    _clear();
      -#ifdef TOOLS_MEM
      -    mem::decrement(s_class().c_str());
      -#endif
      -  }
      -protected:
      -  obj_list(const obj_list& a_from)
      -  :iro(a_from)
      -  ,std::vector()
      -  ,m_fac(a_from.m_fac)
      -  ,m_owner(a_from.m_owner)
      -  ,m_warn(a_from.m_warn)
      -  {
      -#ifdef TOOLS_MEM
      -    mem::increment(s_class().c_str());
      -#endif
      -  }
      -  obj_list& operator=(const obj_list&){return *this;}
      -protected:
      -  void _clear() {
      -    if(m_owner) {
      -      safe_clear(*this);
      -    } else {
      -      std::vector::clear();
      -    }
      -  }
      -protected:
      -  ifac& m_fac;
      -  bool m_owner;
      -  bool m_warn;
      -};
      -
      -class hash_list : public obj_list {
      -  static const std::string& s_store_class() {
      -    static const std::string s_v("THashList");
      -    return s_v;
      -  }
      -public:
      -  static const std::string& s_class() {
      -    static const std::string s_v("tools::rroot::hash_list");
      -    return s_v;
      -  }
      -public: //iro
      -  virtual void* cast(const std::string& a_class) const {
      -    if(void* p = cmp_cast(this,a_class)) return p;
      -    return obj_list::cast(a_class);
      -  }
      -  virtual const std::string& s_cls() const {return s_class();}
      -public:
      -  static cid id_class() {return hash_list_cid();}
      -  virtual void* cast(cid a_class) const {
      -    if(void* p = cmp_cast(this,a_class)) {return p;}
      -    return obj_list::cast(a_class);
      -  }
      -public:
      -  virtual bool stream(buffer& a_buffer) {
      -    uint32 startpos = a_buffer.length();
      -    unsigned int s, c;
      -    short v;
      -    if(!a_buffer.read_version(v,s,c)) return false;
      -
      -    //if(!obj_list::stream(a_buffer)) return false;
      -
      -    a_buffer.set_offset(startpos+c+sizeof(unsigned int));
      -    if(!a_buffer.check_byte_count(s,c,s_store_class())) return false;
      -    return true;
      -  }
      -
      -public:
      -  hash_list(ifac& a_fac,bool a_owner,bool a_warn) //a_warn used if a_owner=false.
      -  :obj_list(a_fac,a_owner,a_warn)
      -  {
      -#ifdef TOOLS_MEM
      -    mem::increment(s_class().c_str());
      -#endif
      -  }
      -  virtual ~hash_list(){
      -#ifdef TOOLS_MEM
      -    mem::decrement(s_class().c_str());
      -#endif
      -  }
      -protected:
      -  hash_list(const hash_list& a_from):iro(a_from),obj_list(a_from){}
      -  hash_list& operator=(const hash_list&){return *this;}
      -};
      -
      -inline bool dummy_TList_pointer_stream(buffer& a_buffer,ifac& a_fac,bool a_owner,bool a_warn) {
      -  obj_list l(a_fac,a_owner,a_warn);
      -  return l.stream(a_buffer);
      -}
      -inline bool dummy_THashList_pointer_stream(buffer& a_buffer,ifac& a_fac,bool a_owner,bool a_warn) {
      -  hash_list l(a_fac,a_owner,a_warn);
      -  return l.stream(a_buffer);
      -}
      -
      -}}
      -
      -#endif
      diff --git a/source/analysis/g4tools/include/tools/rroot/matrix b/source/analysis/g4tools/include/tools/rroot/matrix
      index 19c3754299..722fca554b 100644
      --- a/source/analysis/g4tools/include/tools/rroot/matrix
      +++ b/source/analysis/g4tools/include/tools/rroot/matrix
      @@ -43,12 +43,12 @@ public:
           if(!a_buffer.read_version(v,s,c)) return false;
       
           //printf("debug : tools::rroot::matrix::stream : version %d\n",v);
      -  
      +
           // Version 2 streaming (ROOT/v3-00-6).
      -  
      +
          {uint32 id,bits;
           if(!Object_stream(a_buffer,id,bits)) return false;}
      -  
      +
           int Nrows;
           if(!a_buffer.read(Nrows)) return false;
           int Ncols;
      @@ -59,7 +59,7 @@ public:
           if(!a_buffer.read(RowLwb)) return false;
           int ColLwb;
           if(!a_buffer.read(ColLwb)) return false;
      -  
      +
           //Real_t* Elements; //[fNelems]
           if(!dummy_array_stream(a_buffer,Nelems)) return false;
       
      diff --git a/source/analysis/g4tools/include/tools/rroot/member_reader b/source/analysis/g4tools/include/tools/rroot/member_reader
      index d69f8ae61e..e669f46ae8 100644
      --- a/source/analysis/g4tools/include/tools/rroot/member_reader
      +++ b/source/analysis/g4tools/include/tools/rroot/member_reader
      @@ -49,7 +49,7 @@ public:
           size_t number = data.size();
           a_v.resize(number);
           for(size_t index=0;index=m_tree.entries()) return false;
           return true;
      @@ -82,8 +82,8 @@ public:
           :read::icol(a_from)
           ,parent(a_from)
           ,m_file(a_from.m_file)
      -    ,m_branch(a_from.m_branch) 
      -    ,m_leaf(a_from.m_leaf) 
      +    ,m_branch(a_from.m_branch)
      +    ,m_leaf(a_from.m_leaf)
           ,m_index(a_from.m_index)
           ,m_ref(a_from.m_ref)
           {}
      @@ -91,7 +91,7 @@ public:
             if(&a_from==this) return *this;
             return *this;
           }
      -  protected:    
      +  protected:
           //typedef typename LEAF::value_t value_t;
           bool _fetch_entry() const {
             unsigned int n;
      @@ -140,7 +140,7 @@ public:
             m_value = a_from.m_value;
             return *this;
           }
      -  public:    
      +  public:
           const T& get_value() const {return m_value;}
         protected:
           T m_value;
      @@ -176,7 +176,7 @@ public:
           :parent(a_from)
           ,m_file(a_from.m_file)
           ,m_branch(a_from.m_branch)
      -    ,m_leaf(a_from.m_leaf) 
      +    ,m_leaf(a_from.m_leaf)
           ,m_index(a_from.m_index)
           ,m_ref(a_from.m_ref)
           {}
      @@ -184,7 +184,7 @@ public:
             if(&a_from==this) return *this;
             return *this;
           }
      -  public:    
      +  public:
           bool get_entry(std::string& a_v) const {
             if(!_fetch_entry()) {a_v.clear();return false;}
             a_v = m_ref;
      @@ -276,7 +276,7 @@ public:
             m_sep = a_from.m_sep;
             return *this;
           }
      -  public:    
      +  public:
           bool get_entry(std::vector& a_v) const {
             if(!_fetch_entry()) {a_v.clear();return false;}
             a_v = m_ref;
      @@ -363,8 +363,8 @@ public:
           :read::icol(a_from)
           ,parent(a_from)
           ,m_file(a_from.m_file)
      -    ,m_branch(a_from.m_branch) 
      -    ,m_leaf(a_from.m_leaf) 
      +    ,m_branch(a_from.m_branch)
      +    ,m_leaf(a_from.m_leaf)
           ,m_index(a_from.m_index)
           ,m_ref(a_from.m_ref)
           {}
      @@ -422,7 +422,7 @@ public:
           :read::icol(a_from),parent(a_from)
           ,m_file(a_from.m_file)
           ,m_be(a_from.m_be)
      -    ,m_leaf(a_from.m_leaf) 
      +    ,m_leaf(a_from.m_leaf)
           ,m_index(a_from.m_index)
           ,m_ref(a_from.m_ref)
           {}
      @@ -647,7 +647,7 @@ public:
                   m_cols.push_back(col);\
       	  }\
       	}
      -	  
      +
                    TOOLS_RROOT_NTUPLE_CREATE_VEC_COL("vector",char)
               else TOOLS_RROOT_NTUPLE_CREATE_VEC_COL("vector",short)
             //else TOOLS_RROOT_NTUPLE_CREATE_VEC_COL("vector",unsigned short)
      @@ -655,7 +655,7 @@ public:
               else TOOLS_RROOT_NTUPLE_CREATE_VEC_COL("vector",int)
               else TOOLS_RROOT_NTUPLE_CREATE_VEC_COL("vector",float)
               else TOOLS_RROOT_NTUPLE_CREATE_VEC_COL("vector",double)
      -	
      +
             //else TOOLS_RROOT_NTUPLE_CREATE_VEC_COL("vector",std::string)
             //else TOOLS_RROOT_NTUPLE_CREATE_VEC_COL("vector",uint64) //beurk
       
      @@ -736,7 +736,7 @@ protected:
       // for gopaw :
       
       class fac_tree_holder {
      -public:  
      +public:
         fac_tree_holder(ifac* a_fac,tree* a_tree):m_fac(a_fac),m_tree(a_tree){}  //own a_fac,a_tree.
         virtual ~fac_tree_holder() {delete m_tree;delete m_fac;}
       protected:
      @@ -755,7 +755,7 @@ public:
           return s_v;
         }
         virtual const std::string& s_cls() const {return s_class();}
      -public:  
      +public:
         fac_tree_ntuple(ifac* a_fac,tree* a_tree) //own these.
         :fac_tree_holder(a_fac,a_tree)
         ,parent(*a_tree)  //deleted first.
      diff --git a/source/analysis/g4tools/include/tools/rroot/obj_array b/source/analysis/g4tools/include/tools/rroot/obj_array
      index 3875f69533..8626029efc 100644
      --- a/source/analysis/g4tools/include/tools/rroot/obj_array
      +++ b/source/analysis/g4tools/include/tools/rroot/obj_array
      @@ -198,7 +198,7 @@ protected:
             bool own = (*itb);
             parent::erase(it);
             m_owns.erase(itb);
      -      if(own) delete entry;    
      +      if(own) delete entry;
           }
         }
       protected:
      diff --git a/source/analysis/g4tools/include/tools/rroot/obj_list b/source/analysis/g4tools/include/tools/rroot/obj_list
      index d3926769b9..d1c0188326 100644
      --- a/source/analysis/g4tools/include/tools/rroot/obj_list
      +++ b/source/analysis/g4tools/include/tools/rroot/obj_list
      @@ -17,7 +17,7 @@
       namespace tools {
       namespace rroot {
       
      -class obj_list : public virtual iro, public std::vector {
      +class obj_list : public virtual iro, protected std::vector {  //proteced to avoid using std::vector::clear().
         typedef std::vector parent;
       public:
         static const std::string& s_store_class() {
      @@ -135,12 +135,19 @@ public:
       
           return *this;
         }
      -public:  
      +public:
      +  parent::const_iterator begin() const {return parent::begin();}
      +  parent::iterator begin() {return parent::begin();}
      +  parent::const_iterator end() const {return parent::end();}
      +  parent::iterator end() {return parent::end();}
      +  parent::size_type size() const {return parent::size();}
      +  bool empty() const {return parent::empty();}
      +public:
         void add_object(iro* a_obj) { //take ownership.
           parent::push_back(a_obj);
           m_owns.push_back(true);
         }
      -  
      +
         template 
         T* get_entry(std::ostream& a_out,size_t a_index) const {
           if(a_index>=size()) return 0;
      @@ -154,7 +161,7 @@ public:
           }
           return od;
         }
      -  
      +
         void safe_clear() {
           typedef parent::iterator it_t;
           typedef std::vector::iterator itb_t;
      @@ -165,9 +172,11 @@ public:
             bool own = (*itb);
             parent::erase(it);
             m_owns.erase(itb);
      -      if(own) delete entry;    
      +      if(own) delete entry;
           }
         }
      +
      +  void cleanup() {safe_clear();}
       protected:
         ifac& m_fac;
         std::vector m_owns;
      diff --git a/source/analysis/g4tools/include/tools/rroot/rall b/source/analysis/g4tools/include/tools/rroot/rall
      index 916d6b31de..cf20ec69db 100644
      --- a/source/analysis/g4tools/include/tools/rroot/rall
      +++ b/source/analysis/g4tools/include/tools/rroot/rall
      @@ -72,7 +72,7 @@ inline directory* find_path_dir(directory& a_from,const std::string& a_path) {
       }
       
       inline bool read_key(std::ostream& a_out,ifile& a_file,key& a_key,bool a_dump){
      -  unsigned int sz;    
      +  unsigned int sz;
         char* buf = a_key.get_object_buffer(a_file,sz); //we don't have ownership of buf.
         if(!buf) {
           a_out << "tools::rroot::read_key : can't get data buffer of " << a_key.object_name() << "." << std::endl;
      @@ -183,7 +183,7 @@ inline bool read_key(std::ostream& a_out,ifile& a_file,key& a_key,bool a_dump){
             if(a_dump) {
               tree.dump(a_out,"","  ");
       
      -        uint64 entries = tree.entries();  
      +        uint64 entries = tree.entries();
       
              /*
              {for(uint32 j=0;j<10;j++){ //to test memory.
      @@ -192,16 +192,16 @@ inline bool read_key(std::ostream& a_out,ifile& a_file,key& a_key,bool a_dump){
                 if(!tree.find_entry(i,n)) {
                   a_out << " can't find entry " << i
                         << std::endl;
      -          }       
      +          }
               }
               }}
               */
      -  
      +
              {for(uint32 i=0;i<5;i++){
                 if(!tree.show(a_out,i)) {
                   a_out << " show failed for entry " << i
                         << std::endl;
      -          }       
      +          }
               }}
              {for(uint64 i=mx(5,entries-5);i
         bool read_array(uint32 a_sz,T*& a_a,uint32& a_n) {
           a_n = 0;
      @@ -318,7 +318,7 @@ public:
           a_n = n;}
       
           if(!a_n) return true;
      -  
      +
           uint32 l = a_n * sizeof(T);
           if(!check_eob(l)) return false;
       
      @@ -333,7 +333,7 @@ public:
           }
       
           if(m_byte_swap) {
      -      for(uint32 i=0;i(vec,num)) {
               delete [] vec;
      @@ -61,7 +61,7 @@ public:
             }
             std::vector::resize(num);
             T* pos = vec;
      -      for(unsigned int index=0;index::operator[](index) = *pos;
             }
             delete [] vec;
      @@ -98,7 +98,7 @@ public:
       template 
       class stl_vector_vector
       :public virtual iro
      -,public std::vector< std::vector > 
      +,public std::vector< std::vector >
       {
         static const std::string& s_store_class() {
           static const std::string s_v("vector >");
      @@ -147,7 +147,7 @@ public:
               return false;
             }
             //::printf("debug : stl_vector_vector :   index %d num %d\n",veci,num);
      -      if(num) {    
      +      if(num) {
               T* vec = new T[num];
               if(!a_buffer.read_fast_array(vec,num)) {
                 delete [] vec;
      @@ -231,7 +231,7 @@ public:
           //::printf("debug : stl_vector_string : %d\n",num);
       
           std::vector::resize(num);
      -    for(unsigned int index=0;index::operator[](index);
             if(!a_buffer.read(vs)) {
               std::vector::clear();
      diff --git a/source/analysis/g4tools/include/tools/rroot/streamers b/source/analysis/g4tools/include/tools/rroot/streamers
      index e7fd674f6e..0c0771ea29 100644
      --- a/source/analysis/g4tools/include/tools/rroot/streamers
      +++ b/source/analysis/g4tools/include/tools/rroot/streamers
      @@ -176,7 +176,7 @@ inline bool TH_read_1D(buffer& a_buffer,hd_data& a_data,
       
             if(!Axis_stream(a_buffer,a_data.m_axes[2])) return false; //fZAxis
             a_data.m_axes[2].m_offset = a_data.m_axes[1].m_offset * (a_data.m_axes[1].bins()+2);
      -      
      +
           } else if(a_data.m_dimension==2) {
             if(!Axis_stream(a_buffer,a_data.m_axes[1])) return false; //fYAxis
             a_data.m_axes[1].m_offset = a_data.m_axes[0].m_offset * (a_data.m_axes[0].bins()+2);
      @@ -219,7 +219,7 @@ inline bool TH_read_1D(buffer& a_buffer,hd_data& a_data,
       
           std::vector sumw2; //fSumw2 TArrayD
           if(!Array_stream(a_buffer,sumw2)) return false;
      -    
      +
          {std::string opt;
           if(!a_buffer.read(opt)) return false; //TString fOption
           //look if it is an "annotation trick" :
      @@ -240,7 +240,7 @@ inline bool TH_read_1D(buffer& a_buffer,hd_data& a_data,
           if(vers>=4) {
             int BufferSize;
             if(!a_buffer.read(BufferSize)) return false;
      -      
      +
             //Double_t* Buffer; //[fBufferSize]
             if(!dummy_array_stream(a_buffer,BufferSize)) return false;
           }
      @@ -304,10 +304,10 @@ inline bool TH_read_2D(buffer& a_buffer,hd_data& a_data,
       
           double Tsumwxy;
           if(!a_buffer.read(Tsumwxy)) return false;
      -    a_data.m_in_range_plane_Sxyw[0] = Tsumwxy;  
      +    a_data.m_in_range_plane_Sxyw[0] = Tsumwxy;
       
           if(!a_buffer.check_byte_count(s,c,"TH2")) return false;
      -  
      +
           return true;
       }
       
      @@ -341,9 +341,9 @@ inline bool TH_read_3D(buffer& a_buffer,hd_data& a_data,
           double Tsumwyz;
           if(!a_buffer.read(Tsumwyz)) return false;
       
      -    a_data.m_in_range_plane_Sxyw[0] = Tsumwxy;  
      -    a_data.m_in_range_plane_Sxyw[1] = Tsumwyz;  
      -    a_data.m_in_range_plane_Sxyw[2] = Tsumwxz;  
      +    a_data.m_in_range_plane_Sxyw[0] = Tsumwxy;
      +    a_data.m_in_range_plane_Sxyw[1] = Tsumwyz;
      +    a_data.m_in_range_plane_Sxyw[2] = Tsumwxz;
       
           if(!a_buffer.check_byte_count(s,c,"TH3")) return false;
       
      @@ -514,7 +514,7 @@ inline histo::h2d* TH2F_stream(buffer& a_buffer){
           data.m_in_range_Sx2w[0] = fSx2w;
           data.m_in_range_Sxw[1] = fSyw;
           data.m_in_range_Sx2w[1] = fSy2w;
      -    
      +
           histo::h2d* h = new histo::h2d("",10,0,1,10,0,1);
           h->copy_from_data(data);
           return h;
      @@ -573,7 +573,7 @@ inline histo::h2d* TH2D_stream(buffer& a_buffer){
           data.m_in_range_Sx2w[0] = fSx2w;
           data.m_in_range_Sxw[1] = fSyw;
           data.m_in_range_Sx2w[1] = fSy2w;
      -    
      +
           histo::h2d* h = new histo::h2d("",10,0,1,10,0,1);
           h->copy_from_data(data);
           return h;
      diff --git a/source/analysis/g4tools/include/tools/rroot/tree b/source/analysis/g4tools/include/tools/rroot/tree
      index 3afa291038..f733bc40be 100644
      --- a/source/analysis/g4tools/include/tools/rroot/tree
      +++ b/source/analysis/g4tools/include/tools/rroot/tree
      @@ -14,7 +14,7 @@ namespace rroot {
       
       inline const std::string& TTree_cls(){
         static const std::string s_v("TTree");
      -  return s_v;  
      +  return s_v;
       }
       
       class tree : public virtual iobject {
      @@ -61,7 +61,7 @@ protected:
         tree& operator=(const tree&){return *this;}
       public:
         std::ostream& out() const {return m_out;}
      -  
      +
         ifile& file() {return m_file;}
         ifac& fac() {return m_fac;}
       
      @@ -90,7 +90,7 @@ public:
                 << std::endl;
           _dump_branches(a_out,m_branches,a_spaces+a_indent,a_indent);
         }
      - 
      +
         branch* find_branch(const std::string& a_name,bool a_recursive = false) const {
           return _find_branch(m_branches,a_name,a_recursive);
         }
      @@ -104,19 +104,19 @@ public:
         base_leaf* find_leaf(const std::string& a_name,bool a_recursive = false) const {
           return _find_leaf(m_branches,a_name,a_recursive);
         }
      - 
      +
         void find_leaves(std::vector& a_leaves) const {
           a_leaves.clear();
           _find_leaves(m_branches,a_leaves);
         }
      - 
      +
         void find_branches(std::vector& a_branches) const {
           a_branches.clear();
           _find_branches(m_branches,a_branches);
         }
      - 
      +
         branch* find_leaf_branch(const base_leaf& a_leaf) const {return _find_leaf_branch(m_branches,a_leaf);}
      - 
      +
         bool show(std::ostream& a_out,uint64 a_entry){
           a_out << "======> EVENT:" << a_entry << std::endl;
           tools_vforit(branch*,m_branches,it) {
      @@ -316,9 +316,9 @@ public:
       
           //TObjArray
           // We read leaves in order to keep streaming synchronisation.
      -    // In fact m_leaves are references to existing leaves read by 
      +    // In fact m_leaves are references to existing leaves read by
           // the branches in the upper line of code.
      -    //::printf("debug : tree : read leaves : begin\n");    
      +    //::printf("debug : tree : read leaves : begin\n");
          {obj_array m_leaves(m_fac);
           //branch b(m_out,m_fac);
           ifac::args args;
      @@ -339,7 +339,7 @@ public:
                     << std::endl;
               return false;
             }
      -    } 
      +    }
       
           //m_saved_bytes = m_tot_bytes;
          {std::vector v;
      @@ -366,8 +366,8 @@ public:
                     << std::endl;
               return false;
             }
      -    } 
      -    
      +    }
      +
           if(vers>=16) {
             //TList* fUserInfo
             if(!dummy_TXxx_pointer_stream(a_buffer,m_fac)) {
      @@ -383,12 +383,12 @@ public:
                     << std::endl;
               return false;
             }
      -    } 
      -    
      +    }
      +
           if(!a_buffer.check_byte_count(s,c,TTree_cls())) return false;
       
           return true;
      -  }    
      +  }
       protected:
         void _dump_branches(std::ostream& a_out,
                                    const std::vector& a_bs,
      @@ -415,8 +415,8 @@ protected:
                     << " entry_number=" << (*it)->entry_number()
                     << std::endl;
             }
      -  
      -  
      +
      +
            {const std::vector& lvs = (*it)->leaves();
             tools_vforcit(base_leaf*,lvs,itl) {
               a_out << a_spaces << a_indent
      diff --git a/source/analysis/g4tools/include/tools/rroot/tree_index b/source/analysis/g4tools/include/tools/rroot/tree_index
      index e7c85271c4..9943a7bd9e 100644
      --- a/source/analysis/g4tools/include/tools/rroot/tree_index
      +++ b/source/analysis/g4tools/include/tools/rroot/tree_index
      @@ -52,7 +52,7 @@ public:
           int64 m_n;
           if(!a_buffer.read(m_n)) return false; //fN
           //::printf("debug : tree_index::stream : fN %ld\n",m_n);
      -    
      +
           if(!dummy_array_stream(a_buffer,int(m_n))) return false;
           if(!dummy_array_stream(a_buffer,int(m_n))) return false;
       
      diff --git a/source/analysis/g4tools/include/tools/rroot/tree_manip b/source/analysis/g4tools/include/tools/rroot/tree_manip
      index 6b0a89b2bf..e9085acc3c 100644
      --- a/source/analysis/g4tools/include/tools/rroot/tree_manip
      +++ b/source/analysis/g4tools/include/tools/rroot/tree_manip
      @@ -20,19 +20,19 @@ inline tree* find_tree(file& a_file,ifac& a_fac,const std::string& a_name,bool a
           out << "tools::rroot::find_tree :"
               << " key " << sout(a_name) << " not found."
               << std::endl;
      -    return 0;     
      +    return 0;
         }
       
      -  unsigned int sz;    
      +  unsigned int sz;
         char* buf = key->get_object_buffer(a_file,sz); //we don't have ownership of buf.
         if(!buf) {
           out << "tools::rroot::find_tree :"
               << " can't get data buffer of "
               << sout(key->object_name()) << "."
               << std::endl;
      -    return 0;     
      +    return 0;
         }
      -  
      +
         //out << "tools::rroot::find_tree :"
         //    << " get data buffer size " << sz << "."
         //    << std::endl;
      @@ -43,33 +43,33 @@ inline tree* find_tree(file& a_file,ifac& a_fac,const std::string& a_name,bool a
               << sout(key->object_class())
               << " is not a TTree."
               << std::endl;
      -    return 0;     
      +    return 0;
         }
      -     
      +
         buffer b(out,a_file.byte_swap(),sz,buf,key->key_length(),false);
         b.set_map_objs(a_map_objs);
      -  
      +
         tree* _tree = new tree(a_file,a_fac);
         if(!_tree->stream(b)) {
           out << "tools::rroot::find_tree :"
               << " TTree streaming failed"
               << std::endl;
           delete _tree;
      -    return 0;     
      +    return 0;
         }
      - 
      -  return _tree; 
      +
      +  return _tree;
       }
       
       inline branch_element* find_be(tree& a_tree,const std::string& a_name){
         std::ostream& out = a_tree.file().out();
      -    
      +
         branch* _branch = a_tree.find_branch(a_name,true);
         if(!_branch) {
           out << "tools::rroot::find_be :"
               << " branch not found."
               << std::endl;
      -    return 0;     
      +    return 0;
         }
       
         branch_element* be = id_cast(*_branch);
      @@ -77,9 +77,9 @@ inline branch_element* find_be(tree& a_tree,const std::string& a_name){
           out << "tools::rroot::find_be :"
               << " branch not a branch_element."
               << std::endl;
      -    return 0;     
      +    return 0;
         }
      -  
      +
         return be;
       }
       
      @@ -90,14 +90,14 @@ inline stl_vector* find_vec(ifile& a_file,branch_element& a_be,uint64 a_event
         unsigned int n;
         if(!a_be.find_entry(a_file,a_event,n)) {
           out << "tools::rroot::find_vec : branch_element.find_entry() failed." << std::endl;
      -    return 0;     
      +    return 0;
         }
       
         iro* o = a_be.object();
         stl_vector* od = id_cast >(*o);
         if(!od) {
           out << "tools::rroot::find_vec : object not a tools::rroot::stl_vector." << std::endl;
      -    return 0;     
      +    return 0;
         }
       
         return od; //WARNING : we are not owner.
      diff --git a/source/analysis/g4tools/include/tools/rroot/vector3 b/source/analysis/g4tools/include/tools/rroot/vector3
      index c26e429712..e41ad00b72 100644
      --- a/source/analysis/g4tools/include/tools/rroot/vector3
      +++ b/source/analysis/g4tools/include/tools/rroot/vector3
      @@ -43,14 +43,14 @@ public:
           if(!a_buffer.read_version(v,s,c)) return false;
       
           //printf("debug : tools::rroot::vector3::stream : version %d\n",v);
      -  
      +
          {uint32 id,bits;
           if(!Object_stream(a_buffer,id,bits)) return false;}
      -  
      +
           if(!a_buffer.read(m_x)) return false;
           if(!a_buffer.read(m_y)) return false;
           if(!a_buffer.read(m_z)) return false;
      -  
      +
           if(!a_buffer.check_byte_count(s,c,s_store_class())) return false;
           return true;
         }
      diff --git a/source/analysis/g4tools/include/tools/rtausmeui b/source/analysis/g4tools/include/tools/rtausmeui
      index f14bf65014..366d5d280c 100644
      --- a/source/analysis/g4tools/include/tools/rtausmeui
      +++ b/source/analysis/g4tools/include/tools/rtausmeui
      @@ -5,7 +5,7 @@
       #define tools_rtausmeui
       
       // G.Barrand : not so clear if 0 and tools::uint32_max() are included.
      -//             A simple program shows that "if(r.shoot()==tools::uint32_max())" shows hits. 
      +//             A simple program shows that "if(r.shoot()==tools::uint32_max())" shows hits.
       //             (But we did not see hits for "if(r.shoot()==0)"). (See inlib/tests/rand.cpp).
       
       // tausme is for Tausworthe maxmally equidistributed.
      diff --git a/source/analysis/g4tools/include/tools/schar b/source/analysis/g4tools/include/tools/schar
      index 20abc3d555..f96ccb1261 100644
      --- a/source/analysis/g4tools/include/tools/schar
      +++ b/source/analysis/g4tools/include/tools/schar
      @@ -17,7 +17,7 @@ inline bool belong(const std::string& a_string,char a_c){
       }
       
       inline size_t numchar(const std::string& a_string,char a_c){
      -  size_t num = 0;  
      +  size_t num = 0;
         std::string::const_iterator it;
         for(it=a_string.begin();it!=a_string.end();++it) {
           if((*it)==a_c) num++;
      diff --git a/source/analysis/g4tools/include/tools/sg/GL_action b/source/analysis/g4tools/include/tools/sg/GL_action
      index 1da77e06ef..b339bea119 100644
      --- a/source/analysis/g4tools/include/tools/sg/GL_action
      +++ b/source/analysis/g4tools/include/tools/sg/GL_action
      @@ -8,11 +8,14 @@
       
       #include 
       
      +//#include 
      +//#include 
      +
       namespace tools {
       namespace sg {
       
       class GL_action : public tools::sg::render_action {
      -  typedef tools::sg::render_action parent;
      +  TOOLS_ACTION(GL_action,exlib::sg::GL_action,tools::sg::render_action)
       public:
         virtual void draw_vertex_array(tools::gl::mode_t a_mode,size_t a_floatn,const float* a_xyzs){
           size_t num = a_floatn/3;
      @@ -206,7 +209,7 @@ public:
       
           case tools::sg::gsto_gl_list:{
       #ifdef TOOLS_HAS_GL_LIST
      -      float* buffer = m_mgr.gsto_data(m_gsto);      
      +      float* buffer = m_mgr.gsto_data(m_gsto);
             if(!buffer) return;
             void* pos_xyzs = (char*)buffer+a_pos_xyzs;
             if(m_gl_id && m_created) {
      @@ -221,7 +224,7 @@ public:
             }break;
       
           case tools::sg::gsto_memory:{
      -      float* buffer = m_mgr.gsto_data(m_gsto);      
      +      float* buffer = m_mgr.gsto_data(m_gsto);
             if(!buffer) return;
             void* pos_xyzs = (char*)buffer+a_pos_xyzs;
             _draw_v(a_mode,a_elems,pos_xyzs);
      @@ -241,7 +244,7 @@ public:
       
           case tools::sg::gsto_gl_list:{
       #ifdef TOOLS_HAS_GL_LIST
      -      float* buffer = m_mgr.gsto_data(m_gsto);      
      +      float* buffer = m_mgr.gsto_data(m_gsto);
             if(!buffer) return;
             void* pos_xyzs = (char*)buffer+a_pos_xyzs;
             void* pos_rgbas = (char*)buffer+a_pos_rgbas;
      @@ -259,7 +262,7 @@ public:
             }break;
       
           case tools::sg::gsto_memory:{
      -      float* buffer = m_mgr.gsto_data(m_gsto);      
      +      float* buffer = m_mgr.gsto_data(m_gsto);
             if(!buffer) return;
             void* pos_xyzs = (char*)buffer+a_pos_xyzs;
             void* pos_rgbas = (char*)buffer+a_pos_rgbas;
      @@ -280,7 +283,7 @@ public:
       
           case tools::sg::gsto_gl_list:{
       #ifdef TOOLS_HAS_GL_LIST
      -      float* buffer = m_mgr.gsto_data(m_gsto);      
      +      float* buffer = m_mgr.gsto_data(m_gsto);
             if(!buffer) return;
             void* pos_xyzs = (char*)buffer+a_pos_xyzs;
             //void* pos_nms = (char*)buffer+a_pos_nms;
      @@ -296,7 +299,7 @@ public:
             }break;
       
           case tools::sg::gsto_memory:{
      -      float* buffer = m_mgr.gsto_data(m_gsto);      
      +      float* buffer = m_mgr.gsto_data(m_gsto);
             if(!buffer) return;
             void* pos_xyzs = (char*)buffer+a_pos_xyzs;
             void* pos_nms = (char*)buffer+a_pos_nms;
      @@ -317,7 +320,7 @@ public:
       
           case tools::sg::gsto_gl_list:{
       #ifdef TOOLS_HAS_GL_LIST
      -      float* buffer = m_mgr.gsto_data(m_gsto);      
      +      float* buffer = m_mgr.gsto_data(m_gsto);
             if(!buffer) return;
             void* pos_xyzs = (char*)buffer+a_pos_xyzs;
             void* pos_rgbas = (char*)buffer+a_pos_rgbas;
      @@ -339,7 +342,7 @@ public:
             }break;
       
           case tools::sg::gsto_memory:{
      -      float* buffer = m_mgr.gsto_data(m_gsto);      
      +      float* buffer = m_mgr.gsto_data(m_gsto);
             if(!buffer) return;
             void* pos_xyzs = (char*)buffer+a_pos_xyzs;
             void* pos_rgbas = (char*)buffer+a_pos_rgbas;
      @@ -363,7 +366,7 @@ public:
         virtual void line_width(float a_v){::glLineWidth(a_v);}
         virtual void point_size(float a_v){::glPointSize(a_v);}
         virtual void set_polygon_offset(bool a_v) {
      -    if(a_v) ::glEnable(GL_POLYGON_OFFSET_FILL);	
      +    if(a_v) ::glEnable(GL_POLYGON_OFFSET_FILL);
           else    ::glDisable(GL_POLYGON_OFFSET_FILL);
           ::glPolygonOffset(1.,1.);
         }
      @@ -377,7 +380,7 @@ public:
           else
             ::glFrontFace(GL_CW);
         }
      -  
      +
         virtual void set_shade_model(tools::sg::shade_type a_v) {
           if(a_v==tools::sg::shade_smooth)
             ::glShadeModel(GL_SMOOTH);
      @@ -406,13 +409,32 @@ public:
         }
       
         virtual void load_proj_matrix(const tools::mat4f& a_mtx) {
      -    ::glMatrixMode(GL_PROJECTION); 
      +    ::glMatrixMode(GL_PROJECTION);
           ::glLoadMatrixf(a_mtx.data());
         }
       
         virtual void load_model_matrix(const tools::mat4f& a_mtx) {
      -    ::glMatrixMode(GL_MODELVIEW); 
      +    ::glMatrixMode(GL_MODELVIEW);
           ::glLoadMatrixf(a_mtx.data());
      +/*
      +    tools::mat4f tmp(a_mtx);
      +    tmp.no_translate();
      +    tools::mat4f normal_matrix;
      +    if(!tmp.invert(normal_matrix)) {
      +      m_out << "tools::WebGL::render::load_model_matrix :"
      +            << " can't invert model matrix."
      +            << std::endl;
      +    }
      +    normal_matrix.transpose();
      +
      +    tools::mat4f to_check(a_mtx);
      +    to_check.no_translate();
      +    float fepsilon = 1e-10;
      +    if(!normal_matrix.equal_prec(to_check,fepsilon,inlib::ffabs)) {
      +      mat_dump(m_out,"problem with normal_matrix ",normal_matrix);
      +      mat_dump(m_out,"expected",to_check);
      +    }
      +*/
         }
       
         virtual unsigned int max_lights() {return GL_MAX_LIGHTS;}
      @@ -472,10 +494,10 @@ public:
       
         virtual void restore_state(unsigned int a_ret_num_light) {
           const tools::sg::state& _state = state();
      -    ::glMatrixMode(GL_PROJECTION); 
      +    ::glMatrixMode(GL_PROJECTION);
           ::glLoadMatrixf(_state.m_proj.data());
      -  
      -    ::glMatrixMode(GL_MODELVIEW); 
      +
      +    ::glMatrixMode(GL_MODELVIEW);
           ::glLoadMatrixf(_state.m_model.data());
       
           if(_state.m_GL_LIGHTING) ::glEnable(GL_LIGHTING);
      @@ -512,12 +534,16 @@ public:
             ::glShadeModel(GL_SMOOTH);
           else
             ::glShadeModel(GL_FLAT);
      -      
      +
           ::glColor4f(_state.m_color.r(),
                       _state.m_color.g(),
                       _state.m_color.b(),
                       _state.m_color.a());
       
      +    ::glNormal3f(_state.m_normal.x(),
      +                 _state.m_normal.y(),
      +                 _state.m_normal.z());
      +
           // The "return of separator" state had ret_num_light.
           // The restored state has m_light.
           // We have to glDisable lights with index in [m_light,ret_num_light-1]
      @@ -621,7 +647,7 @@ protected:
         }
       
       protected:
      -  GL_manager& m_mgr;  
      +  GL_manager& m_mgr;
         gstoid m_gsto;
       #ifdef TOOLS_HAS_GL_LIST
         bool m_created;
      diff --git a/source/analysis/g4tools/include/tools/sg/GL_plots_viewer b/source/analysis/g4tools/include/tools/sg/GL_plots_viewer
      index ac697a089f..91b3ddb40f 100644
      --- a/source/analysis/g4tools/include/tools/sg/GL_plots_viewer
      +++ b/source/analysis/g4tools/include/tools/sg/GL_plots_viewer
      @@ -18,8 +18,6 @@ namespace sg {
       
       class GL_plots_viewer : public tools::sg::plots_viewer {
         TOOLS_HEADER(GL_plots_viewer,tools::sg::GL_plots_viewer,tools::sg::plots_viewer)
      -//public:
      -  //virtual void after_render() {}
       public:
         void render() {
           if(!m_ww) return;
      @@ -36,7 +34,7 @@ public:
       
           m_sg.render(action);
           if(!action.end()) { //check that matrices stack are ok.
      -      m_out << "exib::sg::GL_plots_viewer :" 
      +      m_out << "exib::sg::GL_plots_viewer :"
                   << " bad gl_action end."
                   << std::endl;
           }
      diff --git a/source/analysis/g4tools/include/tools/sg/GL_viewer b/source/analysis/g4tools/include/tools/sg/GL_viewer
      index 81f6ac2630..8825938c08 100644
      --- a/source/analysis/g4tools/include/tools/sg/GL_viewer
      +++ b/source/analysis/g4tools/include/tools/sg/GL_viewer
      @@ -14,8 +14,6 @@ namespace sg {
       
       class GL_viewer : public tools::sg::viewer {
         TOOLS_HEADER(GL_viewer,tools::sg::GL_viewer,tools::sg::viewer)
      -//public:
      -  //virtual void after_render() {}
       public:
         void render() {
           if(!m_ww) return;
      @@ -32,7 +30,7 @@ public:
       
           m_sg.render(action);
           if(!action.end()) { //check that matrices stack are ok.
      -      m_out << "exib::sg::GL_viewer :" 
      +      m_out << "exib::sg::GL_viewer :"
                   << " bad gl_action end."
                   << std::endl;
           }
      diff --git a/source/analysis/g4tools/include/tools/sg/action b/source/analysis/g4tools/include/tools/sg/action
      index e531a0428e..8a5cc73c91 100644
      --- a/source/analysis/g4tools/include/tools/sg/action
      +++ b/source/analysis/g4tools/include/tools/sg/action
      @@ -9,6 +9,7 @@
       #endif
       
       #include "../S_STRING"
      +#include "../scast"
       
       #include 
       
      @@ -16,10 +17,14 @@ namespace tools {
       namespace sg {
       
       class action {
      -//public:
      +public:
         TOOLS_SCLASS(tools::sg::action)
       public:
      -  //virtual void* cast(const std::string&) const = 0;
      +  virtual void* cast(const std::string& a_class) const {
      +    if(void* p = cmp_cast(this,a_class)) return p;
      +    return 0;
      +  }
      +  virtual const std::string& s_cls() const = 0;
       public:
         action(std::ostream& a_out)
         :m_out(a_out)
      @@ -50,6 +55,15 @@ protected:
         std::ostream& m_out;
       };
       
      +#include "../HEADER"
      +
      +#define TOOLS_ACTION(a__class,a__sclass,a__parent)\
      +  TOOLS_HEADER(a__class,a__sclass,a__parent)\
      +  virtual tools::sg::action* copy() const {return new a__class(*this);}
      +
      +#define TOOLS_ACTION_NO_COPY(a__class,a__sclass,a__parent)\
      +  TOOLS_HEADER(a__class,a__sclass,a__parent)
      +
       }}
       
       #endif
      diff --git a/source/analysis/g4tools/include/tools/sg/atb_vertices b/source/analysis/g4tools/include/tools/sg/atb_vertices
      index ec2236652f..81af335b72 100644
      --- a/source/analysis/g4tools/include/tools/sg/atb_vertices
      +++ b/source/analysis/g4tools/include/tools/sg/atb_vertices
      @@ -47,7 +47,7 @@ protected: //gstos
           //unsigned int npt = xyzs.values().size()/3;
           //::printf("debug : atb_vertices : %lu : create_gsto : %u\n",this,npt);
       
      -    std::vector gsto_data;  
      +    std::vector gsto_data;
       
           if(rgbas.size()) {
             if(nms.size()) {
      @@ -67,8 +67,8 @@ protected: //gstos
                 size_t pos_edges = gsto_data.size();
                 append(gsto_data,xyzs.values());
                 append(gsto_data,xyzs.values());
      -          float* pxyz = vec_data(xyzs.values());    
      -          float* pedges = vec_data(gsto_data)+pos_edges;    
      +          float* pxyz = vec_data(xyzs.values());
      +          float* pedges = vec_data(gsto_data)+pos_edges;
                 size_t npt = xyzs.values().size()/3;
                 size_t ntri = npt/3;
                 for(size_t itri=0;itri::const_iterator it = _xyzs.begin();
      @@ -595,7 +595,7 @@ protected:
               *(it2+1) = *it - *itn * epsil; it++;itn++; //y
               *(it2+0) = *it - *itn * epsil; it++;itn++; //z
             }}
      -  
      +
            {std::vector::const_iterator it = _nms.begin();
             std::vector::const_iterator _end = _nms.end();
             std::vector::reverse_iterator it2 = m_back_nms.rbegin();
      @@ -604,7 +604,7 @@ protected:
               *(it2+1) = *it * -1.0f; it++;
               *(it2+0) = *it * -1.0f; it++;
             }}
      -  
      +
           }
         }
       
      @@ -618,8 +618,8 @@ protected:
       
           m_edges.resize(2*_xyzs.size(),0);
       
      -    float* pxyz = vec_data(xyzs.values());    
      -    float* pedges = vec_data(m_edges);    
      +    float* pxyz = vec_data(xyzs.values());
      +    float* pedges = vec_data(m_edges);
       
           size_t npt = xyzs.values().size()/3;
           size_t ntri = npt/3;
      @@ -690,7 +690,7 @@ protected:
         size_t m_nms_pos;
       #ifdef __APPLE__
         bool m_all_a_one;
      -#endif  
      +#endif
       };
       
       }}
      diff --git a/source/analysis/g4tools/include/tools/sg/axis b/source/analysis/g4tools/include/tools/sg/axis
      index f3f3b697ac..4aef07bfd7 100644
      --- a/source/analysis/g4tools/include/tools/sg/axis
      +++ b/source/analysis/g4tools/include/tools/sg/axis
      @@ -37,7 +37,7 @@ public:
         sf divisions;
         sf_string modeling; //hippo, hplot
         sf is_log;
      -  // If modeling is hippo or hplot, 
      +  // If modeling is hippo or hplot,
         // labels_enforced true let labels be an input field.
         sf labels_enforced;
         sf tick_up;
      @@ -61,9 +61,9 @@ public:
         sf label_to_axis;
         sf label_height;
       
      -  sf  labels_no_overlap_automated;  
      +  sf  labels_no_overlap_automated;
         sf labels_gap; //in percent of width.
      -  
      +
         // time labels only in hplot modeling for the moment.
         sf time_labels;
         sf_string time_format;
      @@ -96,7 +96,7 @@ public:
             TOOLS_ARG_FIELD_DESC(label_height),
             TOOLS_ARG_FIELD_DESC(labels_no_overlap_automated),
             TOOLS_ARG_FIELD_DESC(labels_gap),
      -      
      +
             TOOLS_ARG_FIELD_DESC(time_labels),
             TOOLS_ARG_FIELD_DESC(time_format),
             TOOLS_ARG_FIELD_DESC(time_offset),
      @@ -177,12 +177,12 @@ public:
           nodekit_pick(a_action,m_group,this);
         }
         virtual void search(search_action& a_action) {
      -    parent::search(a_action);
      -    if(a_action.done()) return;
           if(touched()) {
             update_sg(a_action.out());
             reset_touched();
           }
      +    parent::search(a_action);
      +    if(a_action.done()) return;
           m_group.search(a_action);
         }
         virtual void bbox(bbox_action& a_action) {
      @@ -230,7 +230,7 @@ public:
       
         ,labels_no_overlap_automated(true)
         ,labels_gap(0.02f)
      -  
      +
         ,time_labels(false)
         ,time_format("%H:%M:%S")
         ,time_offset(0) //UTC_time_1970_01_01__00_00_00
      @@ -271,7 +271,7 @@ public:
       
         ,labels_no_overlap_automated(a_from.labels_no_overlap_automated)
         ,labels_gap(a_from.labels_gap)
      -  
      +
         ,time_labels(a_from.time_labels)
         ,time_format(a_from.time_format)
         ,time_offset(a_from.time_offset)
      @@ -314,7 +314,7 @@ public:
       
           labels_no_overlap_automated = a_from.labels_no_overlap_automated;
           labels_gap = a_from.labels_gap;
      -    
      +
           time_labels = a_from.time_labels;
           time_format = a_from.time_format;
           time_offset = a_from.time_offset;
      @@ -341,7 +341,7 @@ public:
           m_labels_style.color = a_color;
           m_title_style.color = a_color;
           m_mag_style.color = a_color;
      -  }  
      +  }
       public:
         void update_sg(std::ostream& a_out) {
           //a_out << "debug : tools::axis::update_sg :" << std::endl;
      @@ -388,9 +388,9 @@ public:
       
             vertices* vtxs = new vertices;
             vtxs->mode = gl::lines();
      -  
      +
             if(modeling==tick_modeling_hplot()) {
      -  
      +
               size_t num = m_sub_ticks.size()/4;
               size_t pos = 0;
               for(size_t index=0;indexadd(xx,yy,0);
               }
             }
      -         
      +
             if(vtxs->number()) {
      -  
      +
               rgba* mat = new rgba();
               mat->color = m_ticks_style.color;
               m_ticks_sep.add(mat);
      @@ -433,7 +433,7 @@ public:
             } else {
               delete vtxs;
             }
      -  
      +
           }
       
           // labels scene graph :
      @@ -442,7 +442,7 @@ public:
             m_labels_seps.clear();
             m_labels_xs.clear();
             m_labels_mtxs.clear();
      -      
      +
             rgba* mat = new rgba();
             mat->color = m_labels_style.color;
             m_labels_sep.add(mat);
      @@ -456,7 +456,7 @@ public:
               ds->line_pattern = m_labels_style.line_pattern;
               ds->line_width = m_labels_style.line_width;
               m_labels_sep.add(ds);
      -      } else { 
      +      } else {
               m_labels_sep.add(new normal);
             }
       
      @@ -484,7 +484,7 @@ public:
       	} else { // label on tick :
                 xx = coords.values()[index];
       	}
      -	
      +
               vec.set_value(xx,-label_to_axis,0);
               vec += m_labels_style.translation.value();
       
      @@ -509,7 +509,7 @@ public:
                 m_labels_mtxs.push_back(_tsf);
               }
             }}
      -      
      +
             if(labels_no_overlap_automated.value()) avoid_labels_overlap(a_out);
             m_labels_seps.clear();
             m_labels_xs.clear();
      @@ -527,7 +527,7 @@ public:
               snpf(string,sizeof(string),"x10+%d",magnitude.value());
             else
               snpf(string,sizeof(string),"x10-%d",::abs(magnitude));
      -      
      +
             vec3f vec(width*1.03f,0,0);
             vec += m_mag_style.translation.value();
       
      @@ -540,7 +540,7 @@ public:
               ds->line_pattern = m_mag_style.line_pattern;
               ds->line_width = m_mag_style.line_width;
               m_mag_sep.add(ds);
      -      }  
      +      }
       
             add_string(m_mag_sep,
                                font,
      @@ -583,14 +583,14 @@ public:
             } else if(title_hjust==right) {
                xx = width;
             }
      -  
      +
             vec3f vec(xx,-title_to_axis,0);
             vec += m_title_style.translation.value();
       
             //std::cout << "debug : axis : update_title :"
             //          << " pos : " << vec[0] << " " << vec[1] << " " << vec[2]
             //          << std::endl;
      -  
      +
             add_string(m_title_sep,
                                font,
                                m_title_style.font_modeling.value(),
      @@ -639,10 +639,10 @@ public: //style
       
           labels_no_overlap_automated = true;
           labels_gap = 0.02f;
      -    
      +
           if(a_geom) {
           ////////////////////////////////////////////
      -    // Take PAW default : 
      +    // Take PAW default :
           float YSIZ = 20; //page height
           float YMGL = 2;  //low y margin (to data frame).
           float YMGU = 2;  //up y margin (to data frame).
      @@ -669,7 +669,7 @@ public: //style
           label_height = vsiz;
       
           // The axis title is the PAW axis label.
      -    // It is right justified at the end of axis 
      +    // It is right justified at the end of axis
           // (at end right for XY_X, at end top for XY_Y)
           title_to_axis = ylab;
           title_height = asiz;
      @@ -830,7 +830,7 @@ protected:
         }
         void avoid_labels_overlap(std::ostream& a_out) {
           bool overlap;
      -    float first_scale = 1;     
      +    float first_scale = 1;
           float first_overlap = get_overlap(a_out,overlap);
           if(overlap) {
             float second_scale = 1.1f; // greater than one to be sure to overlap again.
      @@ -858,7 +858,7 @@ protected:
             }
           }
         }
      -  
      +
         static void style_failed(std::ostream& a_out,
                                  const std::string& a_key,
                                  const std::string& a_value) {
      @@ -919,37 +919,37 @@ protected:
           }
       
           if (!a_is_log) {
      -  
      +
             tickSize  = calculate_ticks_hippo(mx-mn,magxxx);
             startTick = fceil( mn / tickSize) * tickSize;
      -  
      +
             if (ffabs(magxxx) <= 3)
               pmag = 0.0;
      -      else 
      +      else
               pmag = startTick != 0.0 ? ffloor(flog10(ffabs(startTick))) : magxxx;
      -      
      +
             snpf(pstr,sizeof(pstr),"%%1.%df",(int)max_of((pmag-magxxx),0.0));
      -      
      +
             y = startTick;
             while (y <= mx*(1.0+NUM_FUZZ)) {
      -        
      +
               yr = ffloor(y/fpow(10,magxxx) + 0.5F);
      -        
      +
               snpf(tmp,sizeof(tmp),pstr,yr*fpow(10,magxxx-pmag));
      -  
      +
              {float val = yr * fpow(10.0,magxxx);
               if((val>=mn)&&(val<=mx)) { //G.Barrand : add this test.
                 tick_values.push_back(val);
                 tick_labels.push_back(tmp);
                 tick_num++;
               }}
      -  
      +
               y += tickSize;
             }
             if (ffabs(magxxx) <= 3.0) magxxx = 0.0;
      -  
      +
           }  else {
      -  
      +
             if (mn <= 0) {
               if(tick_number) {
                 tick_number.value(0);
      @@ -962,15 +962,15 @@ protected:
               m_sub_ticks.clear();
               return;
             }
      -  
      +
             int nLogTicks;
             float logTicks[5];
             float magStep;
      -  
      +
             float maghigh = fceil(flog10(mx));
             float maglow  = ffloor(flog10(mn));
             float magrng  = maghigh - maglow;
      -      
      +
             if (magrng <=3) {
               nLogTicks   = 3;
               logTicks[0] = 1.0;
      @@ -982,16 +982,16 @@ protected:
               logTicks[0] = 1.0;
               magStep     = magrng <= 7 ? 1.0F : 2.0F;
             }
      -      
      -      pmag = (nLogTicks == 3 && (ffabs(maglow)>3 || ffabs(maghigh)>3)) ? 
      +
      +      pmag = (nLogTicks == 3 && (ffabs(maglow)>3 || ffabs(maghigh)>3)) ?
               maglow : 0;
      -      
      +
             magxxx = maglow;
             int i = 0;
             while ((y=logTicks[i]*fpow(10,magxxx)) < mx*(1+NUM_FUZZ)) {
               if (y >= mn) {
      -  
      -          // be careful: there is a bug in the NeXT (s)printf 
      +
      +          // be careful: there is a bug in the NeXT (s)printf
                 //   routine when you do, eg. printf("%1.0g",0.01);
                 if ((magxxx-pmag) > 4 || (magxxx-pmag) < -3) {
                   ::strcpy(pstr,"%1.0e");
      @@ -1000,29 +1000,29 @@ protected:
                        "%%1.%df",(int)((magxxx-pmag)>0?0.:-(magxxx-pmag)));
                 }
                 snpf(tmp,sizeof(tmp),pstr,y*fpow(10.0,-pmag));
      -  
      +
                {float val = flog10(y);
                 if((val>=flog10(mn))&&(val<=flog10(mx))) { //G.Barrand : add this if
                   tick_values.push_back(val);
                   tick_labels.push_back(tmp);
                   tick_num++;
                 }}
      -  
      +
               }
      -        
      +
               i++;
               if (i>=nLogTicks)        {
                 i = 0;
                 magxxx += magStep;
               }
             }
      -  
      +
             mn = flog10(mn);
             mx = flog10(mx);
           }
      -  
      -    float range = mx - mn;         
      -  
      +
      +    float range = mx - mn;
      +
           // it is assumes that tick_values are ordered min to max.
           tick_number.value(tick_num);
           values.clear();
      @@ -1033,7 +1033,7 @@ protected:
             values.add(val);
             coords.add(coord);
           }
      -  
      +
           if(labels_enforced) {
             size_t n = labels.size();
             if(tick_num>n) {
      @@ -1042,9 +1042,9 @@ protected:
           } else {
             labels = tick_labels;
           }
      -  
      +
           magnitude.value((int)pmag);
      -  
      +
           sub_coords.clear();
           m_sub_ticks.clear();
         }
      @@ -1057,21 +1057,21 @@ protected:
             aSize = ffabs(aSize);
             if (aSize == 0.0) aSize = 1.0;
           }
      -  
      +
           a_mag = ffloor(flog10(aSize));
           if (aSize/fpow(10.0,a_mag) < MIN_TICKS) (a_mag)--;
      -  
      +
           // now fit the max number of ticks into this range
      -  
      +
           float  tickSize;
           int tickIndex;
           static const float goodTicks[] = {10.0, 5.0, 4.0, 2.0, 1.0};
           for(tickIndex = 0;
              aSize/(tickSize=goodTicks[tickIndex]*fpow(10.0,a_mag)) linesGrid;
           std::vector texts;
      -  
      +
           hplot::axis sbAxisHPLOT(a_out);
      -  
      +
           chopt += "S";
           sbAxisHPLOT.set_tick_size(tick_length/width.value());
      -  
      +
           if(time_labels.value()) {
             chopt += "t";
             sbAxisHPLOT.set_time_format(time_format.value());
             sbAxisHPLOT.set_time_offset(time_offset,
                                         time_offset_is_GMT);
           }
      -  
      +
           // Get ticks :
          {double wmin = mn;
           double wmax = mx;
      @@ -1135,16 +1135,16 @@ protected:
                             wmin,wmax,ndiv, //Modified
                             chopt,gridlength,false,
                             m_sub_ticks,linesGrid,texts);}
      -  
      +
           if(a_is_log) {
             mn = flog10(mn);
             mx = flog10(mx);
           }
      -  
      -    float range = mx - mn;         
      -  
      +
      +    float range = mx - mn;
      +
           size_t tick_num = texts.size();
      -  
      +
           // HPLOT stores the magnitude on the last label :
           magnitude.value(0);
           if(tick_num) {
      @@ -1154,7 +1154,7 @@ protected:
               tick_num--;
             }
           }
      -  
      +
           tick_number.value(uint32(tick_num));
           values.clear();
           coords.clear();
      @@ -1165,7 +1165,7 @@ protected:
             coords.add(coord);
             values.add(val);
           }
      -  
      +
           if(labels_enforced) {
             size_t n = labels.size();
             if(tick_num>n) {
      @@ -1177,7 +1177,7 @@ protected:
               labels.add(texts[index].fString);
             }
           }
      -   
      +
          {sub_coords.clear();
           size_t num = m_sub_ticks.size()/4;
           size_t pos = 0;
      @@ -1196,7 +1196,7 @@ protected:
             }
           }}
         }
      -  
      +
       protected:
         const base_freetype& m_ttf;
       
      diff --git a/source/analysis/g4tools/include/tools/sg/back_area b/source/analysis/g4tools/include/tools/sg/back_area
      index e6184228e8..9867d92947 100644
      --- a/source/analysis/g4tools/include/tools/sg/back_area
      +++ b/source/analysis/g4tools/include/tools/sg/back_area
      @@ -35,7 +35,7 @@ public:
         sf gradient;
         sf_vec color_top;
       
      -  sf border_visible;  
      +  sf border_visible;
         sf_vec border_color;
         sf border_line_width;
       
      @@ -90,12 +90,12 @@ public:
           m_back_sep.render(a_action);
         }
         virtual void search(search_action& a_action) {
      -    node::search(a_action);
      -    if(a_action.done()) return;
           if(touched()) {
             update_sg();
             reset_touched();
           }
      +    parent::search(a_action);
      +    if(a_action.done()) return;
           m_back_sep.search(a_action);
           if(a_action.done()) return;
         }
      @@ -345,16 +345,16 @@ protected:
             sg::rgba* mat = new sg::rgba();
             mat->color = border_color;
             m_back_sep.add(mat);
      -  
      +
             draw_style* ds = new draw_style;
             ds->style = draw_lines;
             ds->line_width = border_line_width;
             m_back_sep.add(ds);
      -  
      +
             vertices* vtxs = new vertices;
             vtxs->mode = gl::line_strip();
             m_back_sep.add(vtxs);
      -  
      +
             float r = height*corner_radius;
             if((r>(0.5f*height.value()))||(r>(0.5f*width.value()))) r = 0;
       
      diff --git a/source/analysis/g4tools/include/tools/sg/base_camera b/source/analysis/g4tools/include/tools/sg/base_camera
      index f110dff48f..16b409ce1a 100644
      --- a/source/analysis/g4tools/include/tools/sg/base_camera
      +++ b/source/analysis/g4tools/include/tools/sg/base_camera
      @@ -224,7 +224,7 @@ public:
         }
       
         void rotate_to_dir(const vec3f& a_dir) {
      -    //rotate around up so that a_dir is in (dir,up) plane 
      +    //rotate around up so that a_dir is in (dir,up) plane
       
           //NOTE : it is the invert of orientation which is used
           //       in projection matrix.
      @@ -234,7 +234,7 @@ public:
           vec3f up;
           orientation.value().mul_vec(vec3f(0,1,0),up);
           vec3f side;dir.cross(up,side);
      -    vec3f v = side * (side.dot(a_dir)) + dir * (dir.dot(a_dir));    
      +    vec3f v = side * (side.dot(a_dir)) + dir * (dir.dot(a_dir));
           if(v.normalize()) orientation.value(orientation.value()*rotf(dir,v));}
       
           //rotate around dir^up so that a_dir matches dir.
      @@ -245,7 +245,7 @@ public:
       /*
           //check that dir is on a_dir :
          {vec3f dir;
      -    orientation.value().mul_vec(vec3f(0,0,-1),dir); 
      +    orientation.value().mul_vec(vec3f(0,0,-1),dir);
           float cos_angle; //it should be 1
           if(!dir.cos_angle(a_dir,cos_angle)) {
             ::printf("debug : can't get angle\n");
      @@ -323,7 +323,7 @@ public:
       
           // Arrange so that camera points toward x with up along +z :
           rotf r(vec3f::s_y(),-fhalf_pi());
      -    r *= rotf(vec3f::s_x(),fhalf_pi());    
      +    r *= rotf(vec3f::s_x(),fhalf_pi());
           // Now -y is at right.
       
           // Then rotate it so that it points toward given (ra,dec) by keeping up upward +z direction.
      @@ -353,13 +353,13 @@ public:
       
           if(a_move==move_rotate_right) { //should match camera_yaw().
             rotate_around_up(_da);
      -      return true;    
      +      return true;
           }
           if(a_move==move_rotate_left) {
             rotate_around_up(-_da);
             return true;
           }
      -    
      +
           if(a_move==move_rotate_up) {  //should match camera_pitch().
             rotate_around_x(_da);
             return true;
      @@ -480,9 +480,9 @@ protected:
           if(touched()||m_lrbt.touched()) {
             update_sg(a_action.out());
             reset_touched();
      -      m_lrbt.reset_touched(); 
      +      m_lrbt.reset_touched();
           }
      -    
      +
           a_action.projection_matrix().mul_mtx(m_proj,m_tmp);
         }
       
      diff --git a/source/analysis/g4tools/include/tools/sg/base_freetype b/source/analysis/g4tools/include/tools/sg/base_freetype
      index 30aa0a9f59..6e833d4430 100644
      --- a/source/analysis/g4tools/include/tools/sg/base_freetype
      +++ b/source/analysis/g4tools/include/tools/sg/base_freetype
      @@ -20,7 +20,7 @@ public:
         sf_enum front_face; //default is ccw.
         sf_enum modeling;
         typedef unsigned int unichar;
      -  typedef std::vector uniline;  
      +  typedef std::vector uniline;
         mf_std_vec unitext;
         //mf_string font_dirs; //do we want that ? It is costly. We should have a sg::font node.
       public:
      @@ -29,13 +29,13 @@ public:
           static const desc_fields s_v(parent::node_desc_fields(),4, //WARNING : take care of count.
             TOOLS_ARG_FIELD_DESC(font),
             TOOLS_ARG_FIELD_DESC(front_face),
      -      
      +
             TOOLS_ARG_FIELD_DESC_ENUMS_BEG(modeling,3)
               TOOLS_ARG_ENUM(font_outline),
               TOOLS_ARG_ENUM(font_filled),
               TOOLS_ARG_ENUM(font_pixmap)
             TOOLS_ARG_FIELD_DESC_ENUMS_END,
      -      
      +
             TOOLS_ARG_FIELD_DESC(unitext)
             //TOOLS_ADD_FIELD_DESC(font_dirs)
           );
      @@ -102,7 +102,7 @@ public:
             std::vector::const_iterator it;
             for(it=line.begin();it!=line.end();++it) {
               a_out << ((unsigned int)*it) << std::endl;
      -      }  
      +      }
             a_out << "end line." << std::endl;
           }
         }
      diff --git a/source/analysis/g4tools/include/tools/sg/base_tex b/source/analysis/g4tools/include/tools/sg/base_tex
      index 01e20ef811..3a80845745 100644
      --- a/source/analysis/g4tools/include/tools/sg/base_tex
      +++ b/source/analysis/g4tools/include/tools/sg/base_tex
      @@ -152,7 +152,7 @@ protected:
                 if((pw*ph)=1) && (m_values[0]==a_value) ) ? true : false;    
      +    bool is_eq = ( (m_values.size()>=1) && (m_values[0]==a_value) ) ? true : false;
           if(to_resize) m_values.resize(1);
           if(to_resize || !is_eq) m_touched = true;
           m_values[0] = a_value;
         }
      -  
      +
       public: //for iv2sg
         //bool setValues(size_t a_index,size_t a_num,const T* a_vs) {
         //  for(size_t index=0;index* fld = safe_cast>(a_field);
           if(!fld) return false;
      -    return operator==(*fld);    
      +    return operator==(*fld);
         }
       */
       protected:
      @@ -68,7 +68,7 @@ public:
         bool operator==(const T& a_value) const {
           return m_value==a_value;
         }
      -  bool operator!=(const T& a_value) const { 
      +  bool operator!=(const T& a_value) const {
           return !operator==(a_value);
         }
       
      @@ -112,7 +112,7 @@ public:
       //    if(v!=m_value) m_touched = true;
       //    m_value = v;
       //    return true;
      -//  }  
      +//  }
       public: //for iv2sg
         void setValue(const T& a_value) {value(a_value);}
         const T& getValue() const {return m_value;}
      diff --git a/source/analysis/g4tools/include/tools/sg/cloud2plot b/source/analysis/g4tools/include/tools/sg/cloud2plot
      index 436e083249..95837f0bef 100644
      --- a/source/analysis/g4tools/include/tools/sg/cloud2plot
      +++ b/source/analysis/g4tools/include/tools/sg/cloud2plot
      @@ -35,18 +35,18 @@ public: //plottable
           std::vector ws;
           words(a_opts," ",false,ws);
           std::vector::const_iterator it;
      -  
      +
           for(it=ws.begin();it!=ws.end();++it) {
             if(((*it)=="name") && m_name.size()) {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "Name\n";
               a_sinfos += m_name;
      -  
      +
             } else if((*it)=="entries") {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "Entries\n";
               if(!numas(m_data.entries(),a_sinfos)){}
      -  
      +
             } else if((*it)=="mean") {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "MeanX\n";
      @@ -62,10 +62,10 @@ public: //plottable
               a_sinfos += f_lf;
               a_sinfos += "RMS Y\n";
               if(!numas(m_data.rms_y(),a_sinfos)){}
      -  
      +
             }
           }
      -  }  
      +  }
       public: //points2D
         virtual float x_axis_min() const {return (float)m_data.lower_edge_x();}
         virtual float x_axis_max() const {return (float)m_data.upper_edge_x();}
      @@ -104,7 +104,7 @@ public:
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      -  }  
      +  }
         c2d2plot& operator=(const c2d2plot& a_from){
           m_name = a_from.m_name;
           m_legend = a_from.m_legend;
      @@ -140,18 +140,18 @@ public: //plottable
           std::vector ws;
           words(a_opts," ",false,ws);
           std::vector::const_iterator it;
      -  
      +
           for(it=ws.begin();it!=ws.end();++it) {
             if(((*it)=="name") && m_name.size()) {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "Name\n";
               a_sinfos += m_name;
      -  
      +
             } else if((*it)=="entries") {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "Entries\n";
               if(!numas(m_data.entries(),a_sinfos)){}
      -  
      +
             } else if((*it)=="mean") {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "MeanX\n";
      @@ -173,10 +173,10 @@ public: //plottable
               a_sinfos += f_lf;
               a_sinfos += "RMS Z\n";
               if(!numas(m_data.rms_z(),a_sinfos)){}
      -  
      +
             }
           }
      -  }  
      +  }
       public: //points2D
         virtual float x_axis_min() const {return (float)m_data.lower_edge_x();}
         virtual float x_axis_max() const {return (float)m_data.upper_edge_x();}
      @@ -218,7 +218,7 @@ public:
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      -  }  
      +  }
         c3d2plot& operator=(const c3d2plot& a_from){
           m_name = a_from.m_name;
           m_legend = a_from.m_legend;
      diff --git a/source/analysis/g4tools/include/tools/sg/cloud2plot_cp b/source/analysis/g4tools/include/tools/sg/cloud2plot_cp
      index aa1500b42f..e54d55f95e 100644
      --- a/source/analysis/g4tools/include/tools/sg/cloud2plot_cp
      +++ b/source/analysis/g4tools/include/tools/sg/cloud2plot_cp
      @@ -41,9 +41,9 @@ public:
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      -  }  
      +  }
         c2d2plot_cp& operator=(const c2d2plot_cp& a_from){
      -    c2d2plot::operator=(a_from);    
      +    c2d2plot::operator=(a_from);
           m_cp = a_from.m_cp;
           return *this;
         }
      @@ -83,9 +83,9 @@ public:
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      -  }  
      +  }
         c3d2plot_cp& operator=(const c3d2plot_cp& a_from){
      -    c3d2plot::operator=(a_from);    
      +    c3d2plot::operator=(a_from);
           m_cp = a_from.m_cp;
           return *this;
         }
      diff --git a/source/analysis/g4tools/include/tools/sg/colormap b/source/analysis/g4tools/include/tools/sg/colormap
      index dc94f9c371..df540107c0 100644
      --- a/source/analysis/g4tools/include/tools/sg/colormap
      +++ b/source/analysis/g4tools/include/tools/sg/colormap
      @@ -37,7 +37,7 @@ public:
           mem::increment(s_class().c_str());
       #endif
         }
      -  base_colormap& operator=(const base_colormap& aFrom){ 
      +  base_colormap& operator=(const base_colormap& aFrom){
           m_values = aFrom.m_values;
           m_colors = aFrom.m_colors;
           return *this;
      @@ -120,7 +120,7 @@ public:
           set_by_value(a_out,a_cmaps,aString,m_values,m_colors);
         }
         by_value_colormap(const by_value_colormap& aFrom):base_colormap(aFrom){}
      -  by_value_colormap& operator=(const by_value_colormap& aFrom){ 
      +  by_value_colormap& operator=(const by_value_colormap& aFrom){
           base_colormap::operator=(aFrom);
           return *this;
         }
      @@ -230,7 +230,7 @@ protected:
                 return;
               }}
             }
      -    } 
      +    }
         }
       
         static void get_by_value(float aValue,
      @@ -242,12 +242,12 @@ protected:
           //                 aValues[n-2] aColors[n-1] aValues[n-1] aColors[n]
           //      black 10 cyan 50 green 100 orange 200 blue 300 pink 400 red
           // valuen = 6
      -    // values[0] 10 
      -    // values[1] 50 
      -    // values[2] 100 
      -    // values[3] 200 
      -    // values[4] 300 
      -    // values[5] 400 
      +    // values[0] 10
      +    // values[1] 50
      +    // values[2] 100
      +    // values[3] 200
      +    // values[4] 300
      +    // values[5] 400
           //
           // colors[0] black
           // colors[1] cyan
      @@ -286,7 +286,7 @@ protected:
             a_col = colorf_black();
           }
         }
      -  
      +
       };
       
       class grey_scale_colormap : public base_colormap {
      @@ -310,7 +310,7 @@ public:
           set_colors(get_grey,a_ncell);
         }
         grey_scale_colormap(const grey_scale_colormap& aFrom):base_colormap(aFrom){}
      -  grey_scale_colormap& operator=(const grey_scale_colormap& aFrom){ 
      +  grey_scale_colormap& operator=(const grey_scale_colormap& aFrom){
           base_colormap::operator=(aFrom);
           return *this;
         }
      @@ -344,7 +344,7 @@ public:
           set_colors(get_grey_inverse,a_ncell);
         }
         grey_scale_inverse_colormap(const grey_scale_inverse_colormap& aFrom):base_colormap(aFrom){}
      -  grey_scale_inverse_colormap& operator=(const grey_scale_inverse_colormap& aFrom){ 
      +  grey_scale_inverse_colormap& operator=(const grey_scale_inverse_colormap& aFrom){
           base_colormap::operator=(aFrom);
           return *this;
         }
      @@ -376,7 +376,7 @@ public:
           set(a_min,a_max,a_ncell);
         }
         violet_to_red_colormap(const violet_to_red_colormap& aFrom):base_colormap(aFrom){}
      -  violet_to_red_colormap& operator=(const violet_to_red_colormap& aFrom){ 
      +  violet_to_red_colormap& operator=(const violet_to_red_colormap& aFrom){
           base_colormap::operator=(aFrom);
           return *this;
         }
      @@ -426,7 +426,7 @@ public:
       public:
         const_colormap(const colorf& aColor){m_colors.push_back(aColor);}
         const_colormap(const const_colormap& aFrom):base_colormap(aFrom){}
      -  const_colormap& operator=(const const_colormap& aFrom){ 
      +  const_colormap& operator=(const const_colormap& aFrom){
           base_colormap::operator=(aFrom);
           return *this;
         }
      diff --git a/source/analysis/g4tools/include/tools/sg/cube b/source/analysis/g4tools/include/tools/sg/cube
      index cb969b1cb4..155b9809bc 100644
      --- a/source/analysis/g4tools/include/tools/sg/cube
      +++ b/source/analysis/g4tools/include/tools/sg/cube
      @@ -43,12 +43,11 @@ protected: //render_gstos
       public:
         virtual void render(render_action& a_action) {
           if(gstos_render(a_action)) return;
      -    
           // immediate rendering :
           const state& state = a_action.state();
           bool draw_edges = false;
           if(state.m_draw_type==draw_filled) draw_edges = state.m_GL_LIGHTING?false:true;
      -    
      +
           if(draw_edges) {
             a_action.color4f(0,0,0,1); //if lighten, then rendered grey.
             a_action.line_width(1);
      @@ -647,7 +646,7 @@ protected:
           lines[141] = bottom[0];
           lines[142] = bottom[1];
           lines[143] = bottom[2];
      -  }   
      +  }
       
         void _points(float points[]) { //[24]
           float wh = width.value()*0.5f;
      @@ -663,7 +662,7 @@ protected:
           points[12+3] = -wh;points[12+ 4] = -hh;points[12+ 5] = -dh;
           points[12+6] = -wh;points[12+ 7] =  hh;points[12+ 8] = -dh;
           points[12+9] =  wh;points[12+10] =  hh;points[12+11] = -dh;
      -  }   
      +  }
       
         template 
         void visit(T& a_visitor,draw_type a_style){
      @@ -678,9 +677,9 @@ protected:
             a_visitor.add_lines(144,lines);
       
           } else if(a_style==draw_filled) {
      -      float tris[108];float nms[108];  
      +      float tris[108];float nms[108];
             _tris(tris,nms);
      -      a_visitor.add_triangles(108,tris,nms);
      +      a_visitor.add_triangles_normal(108,tris,nms);
           }
         }
       };
      diff --git a/source/analysis/g4tools/include/tools/sg/cursor_shape b/source/analysis/g4tools/include/tools/sg/cursor_shape
      index d79049fb94..0a4f3be946 100644
      --- a/source/analysis/g4tools/include/tools/sg/cursor_shape
      +++ b/source/analysis/g4tools/include/tools/sg/cursor_shape
      @@ -10,7 +10,7 @@ namespace sg {
       enum cursor_shape {
         cursor_default = 0,
         cursor_target
      -};  
      +};
       
       }}
       
      diff --git a/source/analysis/g4tools/include/tools/sg/ellipse b/source/analysis/g4tools/include/tools/sg/ellipse
      index b63a585fe7..8e7de414a4 100644
      --- a/source/analysis/g4tools/include/tools/sg/ellipse
      +++ b/source/analysis/g4tools/include/tools/sg/ellipse
      @@ -77,7 +77,7 @@ public: //curve
          {x = 0;y = 0;z = 1;
           m_model.mul_dir_3(x,y,z);
           a_nor.set_value(x,y,z);}
      -    
      +
           return true;
         }
       public:
      @@ -160,15 +160,15 @@ protected:
         void update_sg() {
           m_xyzs.clear();
           if(!steps.value()) return;
      -    
      +
           unsigned int num = steps.value();
      -    
      +
          //set number of points approximatively proportional to the ellipse circumference
          //float circ = kPI*(r1+r2)*(phi2-phi1)/360;
          //Int_t n = (Int_t)(np*circ/((gPad->GetX2()-gPad->GetX1())+(gPad->GetY2()-gPad->GetY1())));
          //if (n < 8) n= 8;
          //if (n > np) n = np;
      -   
      +
           m_xyzs.resize((num+1)*3);
       
           float phimin = phi_min.value();
      diff --git a/source/analysis/g4tools/include/tools/sg/enums b/source/analysis/g4tools/include/tools/sg/enums
      index 082ed65f07..839bac1551 100644
      --- a/source/analysis/g4tools/include/tools/sg/enums
      +++ b/source/analysis/g4tools/include/tools/sg/enums
      @@ -114,7 +114,7 @@ enum move_type {
         move_rotate_down,
         move_roll_plus,
         move_roll_minus,
      -  
      +
         move_translate_right,
         move_translate_left,
         move_up,
      @@ -193,12 +193,12 @@ enum draw_type {
         draw_filled
       //  draw_invisible
       };
      -  
      +
       enum shade_type { //shade_model is a node.
         shade_flat = 0,
      -  shade_smooth //Gouraud
      +  shade_smooth
       };
      -  
      +
       enum solid_operation {
         solid_none,
         solid_union,
      diff --git a/source/analysis/g4tools/include/tools/sg/event b/source/analysis/g4tools/include/tools/sg/event
      index 5d3de55d9d..e15849145d 100644
      --- a/source/analysis/g4tools/include/tools/sg/event
      +++ b/source/analysis/g4tools/include/tools/sg/event
      @@ -22,9 +22,9 @@ public:
       #ifdef TOOLS_SG_EVENT_ID_CAST
         static cid id_class() {return 0;}
         virtual void* cast(cid) const = 0;
      -#else  
      +#else
         virtual void* cast(const std::string&) const = 0;
      -#endif  
      +#endif
         virtual event* copy() const = 0;
       public:
       #ifdef TOOLS_MEM
      @@ -119,7 +119,7 @@ public:
           if(void* p = cmp_cast(this,a_class)) {return p;}
           return 0;
         }
      -#endif  
      +#endif
         virtual event* copy() const {return new down_event(*this);}
       public:
         down_event(int a_x,int a_y) //signed because of wall.
      @@ -162,7 +162,7 @@ public:
           if(void* p = cmp_cast(this,a_class)) {return p;}
           return 0;
         }
      -#endif  
      +#endif
         virtual event* copy() const {return new up_event(*this);}
       public:
         up_event(int a_x,int a_y) //signed because of wall.
      @@ -205,7 +205,7 @@ public:
           if(void* p = cmp_cast(this,a_class)) {return p;}
           return 0;
         }
      -#endif  
      +#endif
         virtual event* copy() const {return new move_event(*this);}
       public:
         move_event(int a_x,int a_y, //signed because of wall.
      @@ -268,7 +268,7 @@ public:
           if(void* p = cmp_cast(this,a_class)) {return p;}
           return 0;
         }
      -#endif  
      +#endif
         virtual event* copy() const {return new anim_event(*this);}
       public:
         typedef uint64 num_t;
      @@ -326,11 +326,11 @@ inline bool get_event_xy(const sg::event& a_event,int& a_x,int& a_y) {
           a_y = devt->y();
           return true;
       
      -  } else if(const up_evt_t* uevt = event_cast(a_event)) {  
      +  } else if(const up_evt_t* uevt = event_cast(a_event)) {
           a_x = uevt->x();
           a_y = uevt->y();
           return true;
      -  
      +
         }
         a_x = 0;
         a_y = 0;
      diff --git a/source/analysis/g4tools/include/tools/sg/event_action b/source/analysis/g4tools/include/tools/sg/event_action
      index 818a53413d..61ce8887fe 100644
      --- a/source/analysis/g4tools/include/tools/sg/event_action
      +++ b/source/analysis/g4tools/include/tools/sg/event_action
      @@ -12,6 +12,7 @@ namespace tools {
       namespace sg {
       
       class event_action : public matrix_action {
      +  TOOLS_ACTION(event_action,tools::sg::event_action,matrix_action)
       public:
         event_action(std::ostream& a_out,unsigned int a_ww,unsigned int a_wh,event& a_event)
         :matrix_action(a_out,a_ww,a_wh)
      diff --git a/source/analysis/g4tools/include/tools/sg/f2plot b/source/analysis/g4tools/include/tools/sg/f2plot
      index 971e71e361..9d5192e64e 100644
      --- a/source/analysis/g4tools/include/tools/sg/f2plot
      +++ b/source/analysis/g4tools/include/tools/sg/f2plot
      @@ -61,7 +61,7 @@ public: //func1D
         virtual unsigned int x_steps() const {return m_data.xdomain_number_of_steps();}
         virtual float x_min() const {return (float)m_data.xdomain_min();}
         virtual float x_max() const {return (float)m_data.xdomain_max();}
      -  
      +
       public:
         f1d2plot(const T& a_data):m_data(a_data){
       #ifdef TOOLS_MEM
      @@ -84,7 +84,7 @@ public:
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      -  }  
      +  }
         f1d2plot& operator=(const f1d2plot& a_from){
           m_name = a_from.m_name;
           m_legend = a_from.m_legend;
      @@ -120,9 +120,9 @@ public:
         ,func1D(a_from)
         ,f1d2plot(m_cp)
         ,m_cp(a_from.m_cp)
      -  {}  
      +  {}
         f1d2plot_cp& operator=(const f1d2plot_cp& a_from){
      -    f1d2plot::operator=(a_from);    
      +    f1d2plot::operator=(a_from);
           m_cp = a_from.m_cp;
           return *this;
         }
      @@ -195,7 +195,7 @@ public:
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      -  }  
      +  }
         f2d2plot& operator=(const f2d2plot& a_from){
           m_name = a_from.m_name;
           m_legend = a_from.m_legend;
      @@ -231,9 +231,9 @@ public:
         ,func2D(a_from)
         ,f2d2plot(m_cp)
         ,m_cp(a_from.m_cp)
      -  {}  
      +  {}
         f2d2plot_cp& operator=(const f2d2plot_cp& a_from){
      -    f2d2plot::operator=(a_from);    
      +    f2d2plot::operator=(a_from);
           m_cp = a_from.m_cp;
           return *this;
         }
      diff --git a/source/analysis/g4tools/include/tools/sg/field b/source/analysis/g4tools/include/tools/sg/field
      index fd16212a19..75e1cbb5aa 100644
      --- a/source/analysis/g4tools/include/tools/sg/field
      +++ b/source/analysis/g4tools/include/tools/sg/field
      @@ -70,7 +70,7 @@ protected:
       
       #define TOOLS_ARG_FIELD_DESC(a__field) \
         new tools::sg::field_desc(s_node_class+"."+#a__field,this->a__field.s_cls(),(char*)((tools::sg::field*)&(this->a__field))-(char*)((tools::sg::node*)this),true)
      -  
      +
       #define TOOLS_ARG_FIELD_DESC_NOT_EDITABLE(a__field) \
         new tools::sg::field_desc(s_node_class+"."+#a__field,this->a__field.s_cls(),(char*)((tools::sg::field*)&(this->a__field))-(char*)((tools::sg::node*)this),false)
       
      diff --git a/source/analysis/g4tools/include/tools/sg/field_desc b/source/analysis/g4tools/include/tools/sg/field_desc
      index cbe40f9d1d..43ba38de7a 100644
      --- a/source/analysis/g4tools/include/tools/sg/field_desc
      +++ b/source/analysis/g4tools/include/tools/sg/field_desc
      @@ -22,7 +22,7 @@ class field_desc {
         //typedef int offset_t; //could be <0 ?
       //#ifdef TOOLS_MEM
       //  TOOLS_SCLASS(tools::sg::field_desc)
      -//#endif  
      +//#endif
       public:
         typedef ptrdiff_t offset_t;
       public:
      diff --git a/source/analysis/g4tools/include/tools/sg/fit2plot b/source/analysis/g4tools/include/tools/sg/fit2plot
      index 0530feb35f..1a1b62d5cc 100644
      --- a/source/analysis/g4tools/include/tools/sg/fit2plot
      +++ b/source/analysis/g4tools/include/tools/sg/fit2plot
      @@ -46,7 +46,7 @@ public: //plottable
           std::vector ws;
           words(a_opts," ",false,ws);
           std::vector::const_iterator it;
      -  
      +
           bool show_fit_ndf = false;
          {for(it=ws.begin();it!=ws.end();++it) {
             if((*it)=="fit_ndf") {show_fit_ndf = true;break;}
      @@ -62,14 +62,14 @@ public: //plottable
               a_sinfos += "Name";
               a_sinfos += f_lf;
               a_sinfos += m_name;
      -  
      +
             } else if((*it)=="fit_quality") {
               if(show_fit_ndf) {
                 if(a_sinfos.size()) a_sinfos += f_lf;
                 a_sinfos += "[h]^2! / ndf";
      -          a_sinfos += f_lf; 
      +          a_sinfos += f_lf;
                 if(!numas(m_output[0],a_sinfos)){}
      -          a_sinfos += " / "; 
      +          a_sinfos += " / ";
                 if(!numas(m_output[1],a_sinfos)){}
               } else { //show chi2 only.
                 if(a_sinfos.size()) a_sinfos += f_lf;
      @@ -130,7 +130,7 @@ public:
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      -  }  
      +  }
         fit2plot& operator=(const fit2plot& a_from){
           m_names = a_from.m_names;
           m_output = a_from.m_output;
      diff --git a/source/analysis/g4tools/include/tools/sg/get_matrix_action b/source/analysis/g4tools/include/tools/sg/get_matrix_action
      index e930f75698..c6308275e0 100644
      --- a/source/analysis/g4tools/include/tools/sg/get_matrix_action
      +++ b/source/analysis/g4tools/include/tools/sg/get_matrix_action
      @@ -15,6 +15,7 @@ namespace tools {
       namespace sg {
       
       class get_matrix_action : public matrix_action {
      +  TOOLS_ACTION(get_matrix_action,tools::sg::get_matrix_action,matrix_action)
       public:
         get_matrix_action(std::ostream& a_out,unsigned int a_ww,unsigned int a_wh)
         :matrix_action(a_out,a_ww,a_wh)
      diff --git a/source/analysis/g4tools/include/tools/sg/gl b/source/analysis/g4tools/include/tools/sg/gl
      index 1ada23c145..f4f4545c2e 100644
      --- a/source/analysis/g4tools/include/tools/sg/gl
      +++ b/source/analysis/g4tools/include/tools/sg/gl
      @@ -22,7 +22,7 @@ inline void gl_clear_errors() {
         }
       }
       
      -inline bool gl_dump_if_errors(std::ostream& a_out,const std::string& a_head) {   
      +inline bool gl_dump_if_errors(std::ostream& a_out,const std::string& a_head) {
         bool retval = false;
         GLenum glerror = ::glGetError();
         if(glerror!=GL_NO_ERROR) {
      @@ -82,7 +82,7 @@ inline void gl_dump_infos(std::ostream& a_out) {
       }
       
       inline bool gl_tex_img(std::ostream& a_out,const tools::img_byte& a_img) {
      -    if(a_img.bpp()==1) { 
      +    if(a_img.bpp()==1) {
             //to pass eiffel-tower.png
       #if defined(ANDROID) || TARGET_OS_IPHONE
             tools::img_byte res;
      @@ -90,7 +90,7 @@ inline bool gl_tex_img(std::ostream& a_out,const tools::img_byte& a_img) {
               a_out << "tools::sg::gl::tex_img : tools::img.bw2x() failed." << std::endl;
               return false;
             }
      -      ::glTexImage2D(GL_TEXTURE_2D,0,GL_RGB,res.width(),res.height(),0,GL_RGB,GL_UNSIGNED_BYTE,res.buffer());      
      +      ::glTexImage2D(GL_TEXTURE_2D,0,GL_RGB,res.width(),res.height(),0,GL_RGB,GL_UNSIGNED_BYTE,res.buffer());
       #else
             ::glTexImage2D(GL_TEXTURE_2D,0,GL_RGB,a_img.width(),a_img.height(),0,GL_LUMINANCE,GL_UNSIGNED_BYTE,a_img.buffer());
       #endif
      diff --git a/source/analysis/g4tools/include/tools/sg/gl2ps_action b/source/analysis/g4tools/include/tools/sg/gl2ps_action
      index 1930025984..23af9bc7f0 100644
      --- a/source/analysis/g4tools/include/tools/sg/gl2ps_action
      +++ b/source/analysis/g4tools/include/tools/sg/gl2ps_action
      @@ -17,8 +17,8 @@ namespace tools {
       namespace sg {
       
       class gl2ps_action : public render_action {
      -  typedef render_action parent;
      -  
      +  TOOLS_ACTION(gl2ps_action,tools::sg::gl2ps_action,render_action)
      +private:
         gl2ps_action& get_me() {return *this;}
       
         static unsigned int _GL2PS_POINT()    {return 2;}
      @@ -41,24 +41,24 @@ public:
                                              size_t a_floatn,
                                              const float* a_xyzs,
                                              const float* a_rgbas){
      -    m_pv.add_primitive(a_mode,a_floatn,a_xyzs,a_rgbas);
      +    m_pv.add_primitive_rgba(a_mode,a_floatn,a_xyzs,a_rgbas);
         }
       
         virtual void draw_vertex_normal_array(gl::mode_t a_mode,
                                               size_t a_floatn,
                                               const float* a_xyzs,
      -                                        const float* /*a_nms*/){
      -    m_pv.add_primitive(a_mode,a_floatn,a_xyzs);
      +                                        const float* a_nms){
      +    m_pv.add_primitive_normal(a_mode,a_floatn,a_xyzs,a_nms);
         }
       
         virtual void draw_vertex_color_normal_array(gl::mode_t a_mode,
                                                     size_t a_floatn,
                                                     const float* a_xyzs,
                                                     const float* a_rgbas,
      -                                              const float* /*a_nms*/){
      +                                              const float* a_nms){
           // We expect a_nms of size : 3*(a_floatn/3)
           // (then one normal per 3D point).
      -    m_pv.add_primitive(a_mode,a_floatn,a_xyzs,a_rgbas);
      +    m_pv.add_primitive_normal_rgba(a_mode,a_floatn,a_xyzs,a_nms,a_rgbas);
         }
       
         virtual void clear_color(float a_r,float a_g,float a_b,float /*a_a*/){
      @@ -83,7 +83,7 @@ public:
           if(a_v==shade_smooth) {}
           else {}
         }
      -  
      +
         virtual void set_depth_test(bool a_on) {m_DEPTH_TEST = a_on;}
       
         virtual void set_cull_face(bool a_on) {m_CULL_FACE = a_on;}
      @@ -91,7 +91,10 @@ public:
         virtual void set_line_smooth(bool a_on) {m_LINE_SMOOTH = a_on;}
       
         virtual void load_proj_matrix(const mat4f& a_mtx) {m_proj = a_mtx;}
      -  virtual void load_model_matrix(const mat4f& a_mtx) {m_model = a_mtx;}
      +  virtual void load_model_matrix(const mat4f& a_mtx) {
      +    m_model = a_mtx;
      +    set_normal_matrix();
      +  }
       
         virtual unsigned int max_lights() {return 1000;}
       
      @@ -110,6 +113,7 @@ public:
           const sg::state& _state = state();
           m_proj = _state.m_proj;
           m_model = _state.m_model;
      +    set_normal_matrix();
       
           m_color = _state.m_color;
           m_ccw = (_state.m_winding==winding_ccw?true:false);
      @@ -129,7 +133,7 @@ public:
         virtual void draw_vertex_array_texture(gl::mode_t,size_t a_xyzn,const float* a_xyzs,
                                                gstoid a_id,const float* a_tcs) {
           img_byte img;
      -    if(!m_mgr.find(a_id,img)) return;    
      +    if(!m_mgr.find(a_id,img)) return;
           m_pv.add_texture(m_out,a_xyzn,a_xyzs,img,a_tcs);
         }
       
      @@ -184,7 +188,10 @@ public:
       
           //m_zb.change_size(a_ww,a_wh);
       //    m_zb.clear_color_buffer(0);
      -//    m_zb.clear_depth_buffer();  
      +//    m_zb.clear_depth_buffer();
      +    m_proj.set_identity();
      +    m_model.set_identity();
      +    m_normal_matrix.set_identity();
         }
         virtual ~gl2ps_action(){}
       protected:
      @@ -201,6 +208,7 @@ protected:
       
         ,m_proj(a_from.m_proj)
         ,m_model(a_from.m_model)
      +  ,m_normal_matrix(a_from.m_normal_matrix)
         ,m_color(a_from.m_color)
         ,m_ccw(a_from.m_ccw)
         ,m_POLYGON_OFFSET_FILL(a_from.m_POLYGON_OFFSET_FILL)
      @@ -232,6 +240,7 @@ protected:
       
           m_proj = a_from.m_proj;
           m_model = a_from.m_model;
      +    m_normal_matrix = a_from.m_normal_matrix;
           m_color = a_from.m_color;
           m_ccw = a_from.m_ccw;
           m_POLYGON_OFFSET_FILL = a_from.m_POLYGON_OFFSET_FILL;
      @@ -255,24 +264,24 @@ public:
             return false;
           }
       
      -    int options = TOOLS_GL2PS_OCCLUSION_CULL 
      -      | TOOLS_GL2PS_BEST_ROOT 
      +    int options = TOOLS_GL2PS_OCCLUSION_CULL
      +      | TOOLS_GL2PS_BEST_ROOT
             | TOOLS_GL2PS_SILENT
             | TOOLS_GL2PS_DRAW_BACKGROUND;
           //int sort = TOOLS_GL2PS_NO_SORT;
           //int sort = TOOLS_GL2PS_SIMPLE_SORT;
           int sort = TOOLS_GL2PS_BSP_SORT;
      -          
      +
           tools_GLint vp[4];
           vp[0] = 0;
           vp[1] = 0;
           vp[2] = m_ww;
           vp[3] = m_wh;
      -      
      +
           int bufsize = 0;
      -    ::tools_gl2psBeginPage("","tools_sg_write_gl2ps", 
      -                     vp,a_format,sort,options, 
      -                     TOOLS_GL_RGBA,0, NULL,0,0,0,bufsize, 
      +    ::tools_gl2psBeginPage("","tools_sg_write_gl2ps",
      +                     vp,a_format,sort,options,
      +                     TOOLS_GL_RGBA,0, NULL,0,0,0,bufsize,
                            m_FILE,a_name.c_str());
       
           ::tools_gl2psSetBackgroundColor(m_back[0],m_back[1],m_back[2]);
      @@ -297,6 +306,15 @@ public:
           m_back[2] = a_b;
         }
       protected:
      +  void set_normal_matrix() {
      +    mat4f tmp(m_model);
      +    tmp.no_translate();
      +    if(!tmp.invert(m_normal_matrix)) {
      +      m_out << "mem_action::set_normal_matrix : can't invert model matrix." << std::endl;
      +    }
      +    m_normal_matrix.transpose();
      +  }
      +
         bool project_point(float& a_x,float& a_y,float& a_z,float& a_w) {
           a_w = 1;
           m_model.mul_4f(a_x,a_y,a_z,a_w);
      @@ -307,6 +325,11 @@ protected:
           a_z /= a_w;
           return true;
         }
      +//  bool project_normal(float& a_x,float& a_y,float& a_z) {
      +//    m_normal_matrix.mul_dir_3f(a_x,a_y,a_z);
      +//  //m_proj.mul_dir_3f(a_x,a_y,a_z); //?
      +//    return true;
      +//  }
       
         static void set_vtx(tools_GL2PSvertex* a_vs,unsigned int a_index,
                             float a_x,float a_y,float a_z,
      @@ -350,7 +373,7 @@ protected:
             ::tools_gl2psAddPolyPrimitive(_GL2PS_POINT(),1,vertices,offset,ofactor,ounits,pattern,factor,sz,linecap,linejoin,boundary);
             return true;
           }
      -  
      +
           virtual bool add_point(float a_x,float a_y,float a_z,float,
                                  float a_r,float a_g,float a_b,float a_a) {
             tools_GLint offset = 0;
      @@ -373,7 +396,7 @@ protected:
             ::tools_gl2psAddPolyPrimitive(_GL2PS_POINT(),1,vertices,offset,ofactor,ounits,pattern,factor,sz,linecap,linejoin,boundary);
             return true;
           }
      -  
      +
           virtual bool add_line(float a_bx,float a_by,float a_bz,float,
                                 float a_ex,float a_ey,float a_ez,float) {
             float r = m_this.m_color[0];
      @@ -390,7 +413,7 @@ protected:
             tools_GLint linecap = 0;  //
             tools_GLint linejoin = 0; //
             char boundary = 0;  //
      -      
      +
             tools_GL2PSvertex vertices[2];
       
             m_this.m_vp_mtx.mul_3f(a_bx,a_by,a_bz);
      @@ -404,7 +427,7 @@ protected:
       
             return true;
           }
      -  
      +
           virtual bool add_line(float a_bx,float a_by,float a_bz,float,
                                 float a_br,float a_bg,float a_bb,float a_ba,
                                 float a_ex,float a_ey,float a_ez,float,
      @@ -433,7 +456,7 @@ protected:
       
             return true;
           }
      -  
      +
           virtual bool add_triangle(float a_p1x,float a_p1y,float a_p1z,float,
                                     float a_p2x,float a_p2y,float a_p2z,float,
                                     float a_p3x,float a_p3y,float a_p3z,float){
      @@ -461,20 +484,20 @@ protected:
             m_this.set_vtx(vertices,0, a_p1x,a_p1y,a_p1z, r,g,b,a);
             m_this.set_vtx(vertices,1, a_p2x,a_p2y,a_p2z, r,g,b,a);
             m_this.set_vtx(vertices,2, a_p3x,a_p3y,a_p3z, r,g,b,a);
      -    
      +
             //tools_gl2psAddPolyPrimitive(_GL2PS_TRIANGLE(),3,vertices,0,pattern,factor,lwidth,0);
             ::tools_gl2psAddPolyPrimitive(_GL2PS_TRIANGLE(),3,vertices,offset,ofactor,ounits,pattern,factor,lwidth,linecap,linejoin,boundary);
      -      
      +
             return true;
           }
       
           virtual bool add_triangle(
             float a_p1x,float a_p1y,float a_p1z,float,
      -        float a_r1,float a_g1,float a_b1,float a_a1,
      +      float a_r1,float a_g1,float a_b1,float a_a1,
             float a_p2x,float a_p2y,float a_p2z,float,
      -        float a_r2,float a_g2,float a_b2,float a_a2,
      +      float a_r2,float a_g2,float a_b2,float a_a2,
             float a_p3x,float a_p3y,float a_p3z,float,
      -        float a_r3,float a_g3,float a_b3,float a_a3){
      +      float a_r3,float a_g3,float a_b3,float a_a3){
       
             tools_GLint offset = 0;
             tools_GLfloat ofactor = 0; //
      @@ -495,13 +518,86 @@ protected:
             m_this.set_vtx(vertices,0, a_p1x,a_p1y,a_p1z, a_r1,a_g1,a_b1,a_a1);
             m_this.set_vtx(vertices,1, a_p2x,a_p2y,a_p2z, a_r2,a_g2,a_b2,a_a2);
             m_this.set_vtx(vertices,2, a_p3x,a_p3y,a_p3z, a_r3,a_g3,a_b3,a_a3);
      -    
      +
             //tools_gl2psAddPolyPrimitive(_GL2PS_TRIANGLE(),3,vertices,0,pattern,factor,lwidth,0);
             ::tools_gl2psAddPolyPrimitive(_GL2PS_TRIANGLE(),3,vertices,offset,ofactor,ounits,pattern,factor,lwidth,linecap,linejoin,boundary);
      -      
      +
             return true;
           }
       
      +    virtual bool project_normal(float& /*a_x*/,float& /*a_y*/,float& /*a_z*/) {
      +      //return m_this.project_normal(a_x,a_y,a_z);
      +      return true;
      +    }
      +    virtual bool add_point_normal(float a_x,float a_y,float a_z,float a_w,
      +                                  float /*a_nx*/,float /*a_ny*/,float /*a_nz*/) {
      +      add_point(a_x,a_y,a_z,a_w);
      +    //m_this.m_points.add_normal(a_nx,a_ny,a_nz);
      +      return true;
      +    }
      +    virtual bool add_point_normal(float a_x,float a_y,float a_z,float a_w,
      +                                  float /*a_nx*/,float /*a_ny*/,float /*a_nz*/,
      +                                  float a_r,float a_g,float a_b,float a_a) {
      +      add_point(a_x,a_y,a_z,a_w,a_r,a_g,a_b,a_a);
      +    //m_this.m_points.add_normal(a_nx,a_ny,a_nz);
      +      return true;
      +    }
      +    virtual bool add_line_normal(float a_bx,float a_by,float a_bz,float a_bw,
      +                                 float /*a_bnx*/,float /*a_bny*/,float /*a_bnz*/,
      +                                 float a_ex,float a_ey,float a_ez,float a_ew,
      +                                 float /*a_enx*/,float /*a_eny*/,float /*a_enz*/) {
      +      add_line(a_bx,a_by,a_bz,a_bw, a_ex,a_ey,a_ez,a_ew);
      +    //m_this.m_lines.add_normal(a_bnx,a_bny,a_bnz);
      +    //m_this.m_lines.add_normal(a_enx,a_eny,a_enz);
      +      return true;
      +    }
      +    virtual bool add_line_normal(float a_bx,float a_by,float a_bz,float a_bw,
      +                                 float /*a_bnx*/,float /*a_bny*/,float /*a_bnz*/,
      +                                 float a_br,float a_bg,float a_bb,float a_ba,
      +                                 float a_ex,float a_ey,float a_ez,float a_ew,
      +                                 float /*a_enx*/,float /*a_eny*/,float /*a_enz*/,
      +                                 float a_er,float a_eg,float a_eb,float a_ea){
      +      add_line(a_bx,a_by,a_bz,a_bw, a_br,a_bg,a_bb,a_ba, a_ex,a_ey,a_ez,a_ew, a_er,a_eg,a_eb,a_ea);
      +    //m_this.m_lines.add_normal(a_bnx,a_bny,a_bnz);
      +    //m_this.m_lines.add_normal(a_enx,a_eny,a_enz);
      +      return true;
      +    }
      +    virtual bool add_triangle_normal(
      +      float a_p1x,float a_p1y,float a_p1z,float a_p1w,
      +      float /*a_n1x*/,float /*a_n1y*/,float /*a_n1z*/,
      +      float a_p2x,float a_p2y,float a_p2z,float a_p2w,
      +      float /*a_n2x*/,float /*a_n2y*/,float /*a_n2z*/,
      +      float a_p3x,float a_p3y,float a_p3z,float a_p3w,
      +      float /*a_n3x*/,float /*a_n3y*/,float /*a_n3z*/) {
      +      add_triangle(a_p1x,a_p1y,a_p1z,a_p1w,
      +                   a_p2x,a_p2y,a_p2z,a_p2w,
      +                   a_p3x,a_p3y,a_p3z,a_p3w);
      +    //m_this.m_triangles.add_normal(a_n1x,a_n1y,a_n1z);
      +    //m_this.m_triangles.add_normal(a_n2x,a_n2y,a_n2z);
      +    //m_this.m_triangles.add_normal(a_n3x,a_n3y,a_n3z);
      +      return true;
      +    }
      +    virtual bool add_triangle_normal(
      +      float a_p1x,float a_p1y,float a_p1z,float a_p1w,
      +      float /*a_n1x*/,float /*a_n1y*/,float /*a_n1z*/,
      +      float a_r1,float a_g1,float a_b1,float a_a1,
      +      float a_p2x,float a_p2y,float a_p2z,float a_p2w,
      +      float /*a_n2x*/,float /*a_n2y*/,float /*a_n2z*/,
      +      float a_r2,float a_g2,float a_b2,float a_a2,
      +      float a_p3x,float a_p3y,float a_p3z,float a_p3w,
      +      float /*a_n3x*/,float /*a_n3y*/,float /*a_n3z*/,
      +      float a_r3,float a_g3,float a_b3,float a_a3){
      +      add_triangle(a_p1x,a_p1y,a_p1z,a_p1w,
      +                   a_r1,a_g1,a_b1,a_a1,
      +                   a_p2x,a_p2y,a_p2z,a_p2w,
      +                   a_r2,a_g2,a_b2,a_a2,
      +                   a_p3x,a_p3y,a_p3z,a_p3w,
      +                   a_r3,a_g3,a_b3,a_a3);
      +    //m_this.m_triangles.add_normal(a_n1x,a_n1y,a_n1z);
      +    //m_this.m_triangles.add_normal(a_n2x,a_n2y,a_n2z);
      +    //m_this.m_triangles.add_normal(a_n3x,a_n3y,a_n3z);
      +      return true;
      +    }
         public:
           primvis(gl2ps_action& a_this):m_this(a_this){}
           virtual ~primvis(){}
      @@ -532,13 +628,14 @@ protected:
         // to be restored in restore_state() :
         mat4f m_proj;
         mat4f m_model;
      -  colorf m_color;  
      +  mat4f m_normal_matrix;
      +  colorf m_color;
         bool m_ccw;
      -  bool m_POLYGON_OFFSET_FILL;	
      +  bool m_POLYGON_OFFSET_FILL;
         bool m_CULL_FACE;
         bool m_POINT_SMOOTH;
         bool m_LINE_SMOOTH;
      -  float m_point_size;  
      +  float m_point_size;
         float m_line_width;
         bool m_light_on;
         bool m_DEPTH_TEST;
      diff --git a/source/analysis/g4tools/include/tools/sg/gl2ps_manager b/source/analysis/g4tools/include/tools/sg/gl2ps_manager
      index 452521e2c6..0f8683d1de 100644
      --- a/source/analysis/g4tools/include/tools/sg/gl2ps_manager
      +++ b/source/analysis/g4tools/include/tools/sg/gl2ps_manager
      @@ -18,7 +18,7 @@ public:
         virtual void* cast(const std::string& a_class) const {
           if(void* p = cmp_cast(this,a_class)) {return p;}
           else return 0;
      -  }  
      +  }
       public:
         virtual bool begin_render(int,int,unsigned int,unsigned int,float,float,float,float,bool = true) {return true;}
         virtual void end_render() {}
      @@ -28,7 +28,7 @@ public:
           m_gstos[m_gen_id] = a_img;
           return m_gen_id;
         }
      -  
      +
         virtual unsigned int create_gsto_from_data(size_t,const float*) {return 0;}
       
         virtual bool is_gsto_id_valid(unsigned int a_id) const {
      diff --git a/source/analysis/g4tools/include/tools/sg/gl_manager b/source/analysis/g4tools/include/tools/sg/gl_manager
      index 08f32f2089..922748006d 100644
      --- a/source/analysis/g4tools/include/tools/sg/gl_manager
      +++ b/source/analysis/g4tools/include/tools/sg/gl_manager
      @@ -9,6 +9,7 @@
       
       #include 
       #include 
      +#include 
       
       #include  //::sqrt
       
      @@ -26,7 +27,7 @@ public:
         virtual void* cast(const std::string& a_class) const {
           if(void* p = tools::cmp_cast(this,a_class)) {return p;}
           else return 0;
      -  }  
      +  }
       public:
         virtual bool begin_render(int a_x,int a_y,unsigned int a_ww,unsigned int a_wh,
                                   float a_r,float a_g,float a_b,float a_a,bool a_clear = true) {
      @@ -57,7 +58,7 @@ public:
       #elif defined(ANDROID)
           ::glEnable(GL_MULTISAMPLE);
       #elif _WIN32
      -#elif __APPLE__	
      +#elif __APPLE__
           ::glEnable(GL_MULTISAMPLE); //Cocoa
       #else
       #endif
      @@ -73,7 +74,7 @@ public:
           ::glReadBuffer(GL_FRONT);
       
           NOTE : GL_POLYGON_SMOOTH is here on Cocoa/AGL, Windows/WGL but it
      -           does nothing.           
      +           does nothing.
           */
       
       #if TARGET_OS_IPHONE
      @@ -84,13 +85,48 @@ public:
           ::glDisable(GL_POLYGON_STIPPLE); //CoinGL : reading a .wrl having Material::transparency may enable GL_POLYGON_STIPPLE.
       #endif
       
      +/*
      +    ::printf("debug : is enabled %d\n",::glIsEnabled(GL_COLOR_MATERIAL));
      +   {GLfloat v[4];
      +    ::glGetMaterialfv(GL_FRONT,GL_AMBIENT,v);
      +    ::printf("debug : ambient : %g %g %g %g\n",v[0],v[1],v[2],v[3]);}
      +   {GLfloat v[4];
      +    ::glGetMaterialfv(GL_FRONT,GL_DIFFUSE,v);
      +    ::printf("debug : diffuse : %g %g %g %g\n",v[0],v[1],v[2],v[3]);}
      +   {GLfloat v[4];
      +    ::glGetMaterialfv(GL_FRONT,GL_SPECULAR,v);
      +    ::printf("debug : specular : %g %g %g %g\n",v[0],v[1],v[2],v[3]);}
      +   {GLfloat v[4];
      +    ::glGetMaterialfv(GL_FRONT,GL_EMISSION,v);
      +    ::printf("debug : emission : %g %g %g %g\n",v[0],v[1],v[2],v[3]);}
      +   {GLfloat shine;
      +    ::glGetMaterialfv(GL_FRONT,GL_SHININESS,&shine);
      +    ::printf("debug : shine : %g\n",shine);}
      +debug : is enabled 0
      +debug : ambient : 0.2 0.2 0.2 1
      +debug : diffuse : 0.8 0.8 0.8 1
      +debug : specular : 0 0 0 1
      +debug : emission : 0 0 0 1
      +debug : shine : 0
      +*/
      +
           ::glEnable(GL_NORMALIZE);
           ::glShadeModel(GL_FLAT);
      -    //::glShadeModel(GL_SMOOTH); //Gouraud
      +    //::glShadeModel(GL_SMOOTH);
           // GL-ES : ::glMaterialfv does not work. We then use :
           //         ::glEnable(GL_COLOR_MATERIAL) and ::glColor.
      +    //::glColorMaterial(GL_FRONT, GL_DIFFUSE);  //?
           ::glEnable(GL_COLOR_MATERIAL);
      -  
      +
      +/*
      +debug : is enabled 1
      +debug : ambient : 1 1 1 1
      +debug : diffuse : 1 1 1 1
      +debug : specular : 0 0 0 1
      +debug : emission : 0 0 0 1
      +debug : shine : 0
      +*/
      +
           // to handle transparency (same as SoGLRenderAction::SCREEN_DOOR ?) :
           //::glEnable(GL_BLEND);
           // NOTE : with Cocoa+AppleGL on macOS-10.14 (Mojave), it appears that points are blended ! (Even if alpha color is 1).
      @@ -106,7 +142,7 @@ public:
           ::glDisable(GL_LIGHTING);
           ::glFrontFace(GL_CCW);
           ::glEnable(GL_CULL_FACE);
      -    ::glDisable(GL_POLYGON_OFFSET_FILL);	
      +    ::glDisable(GL_POLYGON_OFFSET_FILL);
           ::glDisable(GL_TEXTURE_2D);
       
           ::glDisable(GL_POINT_SMOOTH);
      @@ -122,7 +158,7 @@ public:
          //        (But the clear color should be the same for both views).
          //::glEnable(GL_SCISSOR_TEST);
          //::glScissor(a_x,a_y,a_ww,a_wh);
      -  
      +
           //NOTE : a=0 coworks with the below logic to handle transparent background.
           if(a_clear) {
             ::glClearColor(a_r,a_g,a_b,0);
      @@ -131,9 +167,9 @@ public:
           }
       
           //WARNING : Android, iPhone : only one glPushMatrix ok !
      -    ::glMatrixMode(GL_PROJECTION); 
      +    ::glMatrixMode(GL_PROJECTION);
           ::glLoadIdentity();
      -  
      +
           //WARNING : we take the convention that the current mode is MODELVIEW
           ::glMatrixMode(GL_MODELVIEW);
           ::glLoadIdentity();
      @@ -160,7 +196,7 @@ public:
           ::glDrawArrays(GL_TRIANGLE_FAN,0,4);
           ::glDisableClientState(GL_VERTEX_ARRAY);
           ::glEnable(GL_DEPTH_TEST);}
      -  
      +
           return true;
         }
       
      @@ -222,7 +258,7 @@ public:
       
           if(!status) {
             gl_dump_if_errors(m_out,"tools::sg::GL_manager::create_texture (1) :");
      -      ::glDeleteTextures(1,&gl_id);    
      +      ::glDeleteTextures(1,&gl_id);
       #ifdef TOOLS_MEM
             tools::mem::decrement(tools::s_tex().c_str());
       #endif
      @@ -232,7 +268,7 @@ public:
           }
       
           if(gl_dump_if_errors(m_out,"tools::sg::GL_manager::create_texture (2) :")) {
      -      ::glDeleteTextures(1,&gl_id);    
      +      ::glDeleteTextures(1,&gl_id);
       #ifdef TOOLS_MEM
             tools::mem::decrement(tools::s_tex().c_str());
       #endif
      @@ -272,7 +308,7 @@ public:
                            a_floatn*sizeof(float),a_data,
                            GL_STATIC_DRAW);
             ::glBindBuffer(GL_ARRAY_BUFFER,0);
      -  
      +
             if(gl_dump_if_errors(m_out,"tools::sg::GL_manager::create_gsto_from_data :")) {
               ::glDeleteBuffers(1,&gl_id);
       #ifdef TOOLS_MEM
      @@ -467,7 +503,7 @@ public:
       
         static unsigned char* get_rgbas(unsigned int a_w,unsigned int a_h) {
           //WARNING : it does OpenGL. Under Android it should be executed
      -    //          in the OpenGL thread. 
      +    //          in the OpenGL thread.
           //NOTE : Android, iOS : RGB produces a black image.
           unsigned char* rgbas = new unsigned char[4 * a_w * a_h];
           if(!rgbas) return 0;
      @@ -487,9 +523,18 @@ public:
           return rgbas;
         }
       
      +#if defined(TARGET_OS_IPHONE) || defined(ANDROID)
      +  static unsigned char* get_rgbs(unsigned int a_w,unsigned int a_h) {
      +    unsigned char* rgbas = get_rgbas(a_w,a_h);
      +    if(!rgbas) return 0;
      +    unsigned char* rgbs = inlib::_4s_to_3s(rgbas,a_w,a_h);
      +    delete [] rgbas;
      +    return rgbs;
      +  }
      +#else
         static unsigned char* get_rgbs(unsigned int a_w,unsigned int a_h) {
           //WARNING : it does OpenGL. Under Android it should be executed
      -    //          in the OpenGL thread. 
      +    //          in the OpenGL thread.
           //NOTE : Android, iOS : RGB produces a black image.
           unsigned char* rgbs = new unsigned char[3 * a_w * a_h];
           if(!rgbs) return 0;
      @@ -497,6 +542,7 @@ public:
           ::glReadPixels(0,0,a_w,a_h,GL_RGB,GL_UNSIGNED_BYTE,rgbs);
           return rgbs;
         }
      +#endif
       
       protected:
         std::ostream& m_out;
      @@ -549,7 +595,7 @@ protected:
       #ifdef TOOLS_MEM
                 tools::mem::decrement(tools::s_gsto().c_str());
       #endif
      -#endif          
      +#endif
               }
             }
       
      @@ -562,7 +608,7 @@ protected:
       #ifdef TOOLS_MEM
             tools::mem::decrement(s_class().c_str());
       #endif
      -    }    
      +    }
         private:
           gsto_t(const gsto_t& a_from)
           :m_gl_id(a_from.m_gl_id)
      @@ -634,7 +680,7 @@ protected:
           unsigned int m_gl_id;
           kind m_kind;
           size_t m_size;
      -    float* m_data;    
      +    float* m_data;
         };
       
         std::map m_gstos;
      diff --git a/source/analysis/g4tools/include/tools/sg/group b/source/analysis/g4tools/include/tools/sg/group
      index 860d4a419b..eced2cd07c 100644
      --- a/source/analysis/g4tools/include/tools/sg/group
      +++ b/source/analysis/g4tools/include/tools/sg/group
      @@ -25,9 +25,9 @@ public:
       #ifdef TOOLS_SG_GROUP_DEBUG
           std::ostream& out = a_action.out();
           tools_vforcit(node*,m_children,it) {
      -      out << "debug : tools::sg::group::render : children : " << (*it)->s_cls() << " begin : " << std::endl;   
      +      out << "debug : tools::sg::group::render : children : " << (*it)->s_cls() << " begin : " << std::endl;
             (*it)->render(a_action);
      -      out << "debug : tools::sg::group::render : children : " << (*it)->s_cls() << " end," << std::endl;   
      +      out << "debug : tools::sg::group::render : children : " << (*it)->s_cls() << " end," << std::endl;
           }
       #else
           tools_vforcit(node*,m_children,it) (*it)->render(a_action);
      @@ -37,7 +37,7 @@ public:
           tools_vforcit(node*,m_children,it) {
             (*it)->pick(a_action);
             if(a_action.done()) break;
      -    }    
      +    }
         }
         virtual void bbox(bbox_action& a_action) {
           tools_vforcit(node*,m_children,it) (*it)->bbox(a_action);
      @@ -111,8 +111,8 @@ public:
           tools_vforit(node*,m_children,it) {
             if((*it)==a_from) {
               node* old = *it;
      -        (*it) = a_to; 
      -        if(a_del) delete old; 
      +        (*it) = a_to;
      +        if(a_del) delete old;
               return true;
             }
           }
      @@ -185,7 +185,7 @@ public:
         bool remove_index(unsigned int a_index){
           //NOTE : no delete on node at a_index is performed.
           std::vector::iterator it = m_children.begin();
      -    it += a_index; 
      +    it += a_index;
           if(it>=m_children.end()) return false;
           m_children.erase(it);
           return true;
      @@ -193,7 +193,7 @@ public:
       
         bool delete_from(const node* a_node,bool a_inc_a_node = true){
           bool found = false;
      -    std::vector::iterator it;    
      +    std::vector::iterator it;
           for(it=m_children.begin();it!=m_children.end();) {
             if(!found) {
               if(*it==a_node) {
      @@ -215,7 +215,7 @@ public:
         void transfer(group& a_from) {
           if(&a_from==this) return;
           clear();
      -    m_children.resize(a_from.size());        
      +    m_children.resize(a_from.size());
           std::vector::iterator it  = m_children.begin();
           std::vector::iterator fit = a_from.m_children.begin();
           for(;fit!=a_from.m_children.end();++it,++fit) {
      @@ -239,17 +239,17 @@ public:
         }
       
       //void children_clear() {m_children.clear();} //warning : nodes are not deleted. Used in [hep_]cone_anim.
      -  
      +
         size_t size() const {return m_children.size();}
         bool empty() const {return m_children.size()?false:true;}
         node* operator[](size_t a_index) const{
           //WARNING : no check is done on a_index.
      -    return m_children[a_index];    
      +    return m_children[a_index];
         }
         const std::vector& children() const {return m_children;}
         std::vector& children() {return m_children;}
       
      -  bool insert(unsigned int a_index,node* a_new){ //iv2sg    
      +  bool insert(unsigned int a_index,node* a_new){ //iv2sg
           if(a_index==m_children.size()) {
             m_children.push_back(a_new);
             return true;
      diff --git a/source/analysis/g4tools/include/tools/sg/gstos b/source/analysis/g4tools/include/tools/sg/gstos
      index 6262e76a48..190e442d07 100644
      --- a/source/analysis/g4tools/include/tools/sg/gstos
      +++ b/source/analysis/g4tools/include/tools/sg/gstos
      @@ -80,17 +80,17 @@ protected:
               //      << " create_gsto() failed."
               //      << std::endl;
             } else {
      -        m_gstos.push_back(std::pair(_id,&a_mgr));    
      +        m_gstos.push_back(std::pair(_id,&a_mgr));
             }
           }
           return _id;
      -  }  
      +  }
       protected:
         void clean_gstos() {
           std::vector< std::pair >::iterator it;
           for(it=m_gstos.begin();it!=m_gstos.end();){
             (*it).second->delete_gsto((*it).first);
      -      it = m_gstos.erase(it);      
      +      it = m_gstos.erase(it);
           }
         }
         void clean_gstos(render_manager* a_mgr) {
      @@ -98,7 +98,7 @@ protected:
           for(it=m_gstos.begin();it!=m_gstos.end();){
             if((*it).second==a_mgr) {
               (*it).second->delete_gsto((*it).first);
      -        it = m_gstos.erase(it);      
      +        it = m_gstos.erase(it);
             } else {
               it++;
             }
      diff --git a/source/analysis/g4tools/include/tools/sg/gstos_add b/source/analysis/g4tools/include/tools/sg/gstos_add
      index 7bf539bdb2..ccb717bd49 100644
      --- a/source/analysis/g4tools/include/tools/sg/gstos_add
      +++ b/source/analysis/g4tools/include/tools/sg/gstos_add
      @@ -21,7 +21,7 @@ public:
         gstos_add& operator=(const gstos_add&){return *this;}
       public:
         void clear() {m_xyzs.clear();m_nms.clear();}
      -  
      +
         void add_points(size_t a_floatn,const float* a_xyzs) {
           append(m_xyzs,a_floatn,a_xyzs);
         }
      @@ -46,11 +46,11 @@ public:
           float* pxyzs = vec_data(m_xyzs)+offset;
           gl::line_loop_to_lines(num,a_xyzs,pxyzs);
         }
      -  void add_triangles(size_t a_floatn,const float* a_xyzs,const float* a_nms) {
      +  void add_triangles_normal(size_t a_floatn,const float* a_xyzs,const float* a_nms) {
           append(m_xyzs,a_floatn,a_xyzs);
           append(m_nms,a_floatn,a_nms);
         }
      -  void add_triangle_strip(size_t a_floatn,const float* a_xyzs,const float* a_nms) {
      +  void add_triangle_strip_normal(size_t a_floatn,const float* a_xyzs,const float* a_nms) {
           size_t num = a_floatn/3;
           if(num<3) return;
           size_t nxyzs = (num-2)*3*3;
      @@ -60,9 +60,9 @@ public:
           offset = m_nms.size();
           m_nms.resize(offset+nxyzs);
           float* pnms = vec_data(m_nms)+offset;
      -    gl::triangle_strip_to_triangles(num,a_xyzs,a_nms,pxyzs,pnms);
      +    gl::triangle_strip_to_triangles_nms(num,a_xyzs,a_nms,pxyzs,pnms);
         }
      -  void add_triangle_fan(size_t a_floatn,const float* a_xyzs,const float* a_nms) {
      +  void add_triangle_fan_normal(size_t a_floatn,const float* a_xyzs,const float* a_nms) {
           size_t num = a_floatn/3;
           if(num<3) return;
           size_t nxyzs = (num-2)*3*3;
      @@ -72,11 +72,11 @@ public:
           offset = m_nms.size();
           m_nms.resize(offset+nxyzs);
           float* pnms = vec_data(m_nms)+offset;
      -    gl::triangle_fan_to_triangles(num,a_xyzs,a_nms,pxyzs,pnms);
      +    gl::triangle_fan_to_triangles_nms(num,a_xyzs,a_nms,pxyzs,pnms);
         }
       
         void add_triangle_strip_as_triangles(size_t a_floatn,const float* a_xyzs,const float* a_nms) { //used in sg::sphere, icosahedron_sphere.
      -    add_triangle_strip(a_floatn,a_xyzs,a_nms);
      +    add_triangle_strip_normal(a_floatn,a_xyzs,a_nms);
         }
       /*
         /////////////////////////////////////////////////////////
      @@ -85,7 +85,7 @@ public:
         void add_lines(const std::vector& a_xyzs) {
           append(m_xyzs,a_xyzs.size(),vec_data(a_xyzs));
         }
      -  void add_triangles(const std::vector& a_xyzs,const std::vector& a_nms) { //for sg::markers.
      +  void add_triangles_normal(const std::vector& a_xyzs,const std::vector& a_nms) { //for sg::markers.
           if(a_xyzs.size()!=a_nms.size()) return;
           append(m_xyzs,a_xyzs.size(),vec_data(a_xyzs));
           append(m_nms,a_nms.size(),vec_data(a_nms));
      @@ -108,7 +108,7 @@ public:
       public:
         std::vector m_xyzs;
         std::vector m_nms;
      -  
      +
         size_t m_gsto_points_sz;
         size_t m_gsto_lines_sz;
         size_t m_gsto_tris_sz;
      diff --git a/source/analysis/g4tools/include/tools/sg/h2plot b/source/analysis/g4tools/include/tools/sg/h2plot
      index f6b2e5a0e9..79c1fda599 100644
      --- a/source/analysis/g4tools/include/tools/sg/h2plot
      +++ b/source/analysis/g4tools/include/tools/sg/h2plot
      @@ -48,7 +48,7 @@ public: //plottable
           std::vector ws;
           words(a_opts," ",false,ws);
           std::vector::const_iterator it;
      -  
      +
         /*bool show_fit_ndf = false;
          {for(it=ws.begin();it!=ws.end();++it) {
             if((*it)=="fit_ndf") {show_fit_ndf = true;break;}
      @@ -60,37 +60,37 @@ public: //plottable
               a_sinfos += "Name";
               a_sinfos += f_lf;
               a_sinfos += m_name;
      -  
      +
             } else if((*it)=="entries") {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "Entries";
               a_sinfos += f_lf;
               if(!numas(m_data.all_entries(),a_sinfos)){}
      -  
      +
             } else if((*it)=="mean") {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "Mean";
               a_sinfos += f_lf;
               if(!numas(m_data.mean(),a_sinfos)) {}
      -  
      +
             } else if((*it)=="rms") {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "RMS";
               a_sinfos += f_lf;
               if(!numas(m_data.rms(),a_sinfos)) {}
      -  
      +
             } else if((*it)=="underflow") {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "UDFLW";
               a_sinfos += f_lf;
               if(!numas(m_data.bin_height(histo::axis_UNDERFLOW_BIN),a_sinfos)){}
      -  
      +
             } else if((*it)=="overflow") {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "OVFLW";
               a_sinfos += f_lf;
               if(!numas(m_data.bin_height(histo::axis_OVERFLOW_BIN),a_sinfos)){}
      -  
      +
       /*
             } else if((*it)=="fit_quality") {
               //look in m_data annotations for "fit.chi2" and "fit.ndf" keys :
      @@ -101,9 +101,9 @@ public: //plottable
                    m_data.annotation("fit.ndf",sndf)   ){
                   if(a_sinfos.size()) a_sinfos += f_lf;
                   a_sinfos += "[h]^2! / ndf";
      -            a_sinfos += f_lf; 
      +            a_sinfos += f_lf;
                   a_sinfos += schi2;
      -            a_sinfos += " / "; 
      +            a_sinfos += " / ";
                   a_sinfos += sndf;
                 }
               } else { //show chi2 only.
      @@ -123,7 +123,7 @@ public: //plottable
               annots_t::const_iterator it;
               for(it=annots.begin();it!=annots.end();++it) {
                 const std::string& key = (*it).first;
      -          if(key.substr(0,10)=="fit.param.") { 
      +          if(key.substr(0,10)=="fit.param.") {
                   //fit.param.mean 14
                   //01234567890123
                   std::string name = key.substr(10,key.size()-10);
      @@ -184,7 +184,7 @@ public:
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      -  }  
      +  }
         h1d2plot& operator=(const h1d2plot& a_from){
           m_name = a_from.m_name;
           m_legend = a_from.m_legend;
      @@ -226,7 +226,7 @@ public: //plottable
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "Name\n";
               a_sinfos += m_name;
      -  
      +
             } else if((*it)=="entries") {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "Entries\n";
      @@ -247,7 +247,7 @@ public: //plottable
               a_sinfos += f_lf;
               a_sinfos += "RMS Y\n";
               if(!numas(m_data.rms_y(),a_sinfos)) {}
      -  
      +
             }
           }
         }
      @@ -346,7 +346,7 @@ public:
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "Name\n";
               a_sinfos += m_name;
      -  
      +
             } else if((*it)=="entries") {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "Entries\n";
      @@ -359,7 +359,7 @@ public:
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "RMS\n";
               if(!numas(m_data.rms(),a_sinfos)) {}
      -  
      +
             }
           }
         }
      @@ -401,7 +401,7 @@ public:
         ,m_data(a_from.m_data)
         ,m_name(a_from.m_name)
         ,m_legend(a_from.m_legend)
      -  {}  
      +  {}
         p1d2plot& operator=(const p1d2plot& a_from){
           m_name = a_from.m_name;
           m_legend = a_from.m_legend;
      @@ -473,7 +473,7 @@ public: //SbPlottableBins2D
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "Name\n";
               a_sinfos += m_name;
      -  
      +
             } else if((*it)=="entries") {
               if(a_sinfos.size()) a_sinfos += f_lf;
               a_sinfos += "Entries\n";
      @@ -492,7 +492,7 @@ public: //SbPlottableBins2D
               a_sinfos += f_lf;
               a_sinfos += "RMS Y\n";
               if(!numas(m_data.rms_y(),a_sinfos)) {}
      -  
      +
             }
           }
         }
      @@ -519,7 +519,7 @@ public:
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      -  }  
      +  }
         p2d2plot& operator=(const p2d2plot& a_from){
           m_name = a_from.m_name;
           m_legend = a_from.m_legend;
      diff --git a/source/analysis/g4tools/include/tools/sg/h2plot_cp b/source/analysis/g4tools/include/tools/sg/h2plot_cp
      index 2388295aa4..428343cd7f 100644
      --- a/source/analysis/g4tools/include/tools/sg/h2plot_cp
      +++ b/source/analysis/g4tools/include/tools/sg/h2plot_cp
      @@ -48,9 +48,9 @@ public:
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      -  }  
      +  }
         h1d2plot_cp& operator=(const h1d2plot_cp& a_from){
      -    h1d2plot::operator=(a_from);    
      +    h1d2plot::operator=(a_from);
           m_cp = a_from.m_cp;
           return *this;
         }
      @@ -93,9 +93,9 @@ public:
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      -  }  
      +  }
         h2d2plot_cp& operator=(const h2d2plot_cp& a_from){
      -    h2d2plot::operator=(a_from);    
      +    h2d2plot::operator=(a_from);
           m_cp = a_from.m_cp;
           return *this;
         }
      @@ -135,9 +135,9 @@ public:
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      -  }  
      +  }
         p1d2plot_cp& operator=(const p1d2plot_cp& a_from){
      -    p1d2plot::operator=(a_from);    
      +    p1d2plot::operator=(a_from);
           m_cp = a_from.m_cp;
           return *this;
         }
      diff --git a/source/analysis/g4tools/include/tools/sg/head_light b/source/analysis/g4tools/include/tools/sg/head_light
      index 9b77a6c830..64ce5ae322 100644
      --- a/source/analysis/g4tools/include/tools/sg/head_light
      +++ b/source/analysis/g4tools/include/tools/sg/head_light
      @@ -17,26 +17,20 @@ class head_light : public torche {
       public:
         virtual void render(render_action& a_action) {
           if(!on.value()) return;
      -
           state& state = a_action.state();
      -
           if((state.m_light+1)>=a_action.max_lights()) {
      -      a_action.out() 
      +      a_action.out()
               << "GL_MAX_LIGHTS (" << a_action.max_lights() << ") reached."
               << std::endl;
             return;
           }
      -
           float dx = direction.value()[0];
           float dy = direction.value()[1];
           float dz = direction.value()[2];
      -    
          {mat4f mtx;
           state.m_camera_orientation.value(mtx);
      -    mtx.mul_3f(dx,dy,dz);}
      -
      +    mtx.mul_dir_3f(dx,dy,dz);}
           state.m_GL_LIGHTING = true; //for separator
      -
           a_action.enable_light(state.m_light,vec3f(dx,dy,dz),color.value());
           state.m_light++;
         }
      diff --git a/source/analysis/g4tools/include/tools/sg/holder b/source/analysis/g4tools/include/tools/sg/holder
      index 8be38c3dd0..e1be380e02 100644
      --- a/source/analysis/g4tools/include/tools/sg/holder
      +++ b/source/analysis/g4tools/include/tools/sg/holder
      @@ -17,7 +17,7 @@ namespace sg {
       
       class base_holder : public node {
         TOOLS_NODE(base_holder,tools::sg::base_holder,node)
      -public:  
      +public:
         base_holder(const std::string& a_name):parent(),m_name(a_name) {}
         virtual ~base_holder(){}
       public:
      @@ -27,7 +27,7 @@ public:
           m_name = a_from.m_name;
           return *this;
         }
      -public:  
      +public:
         const std::string& name() const {return m_name;}
       protected:
         std::string m_name;
      @@ -63,22 +63,24 @@ private:
         void add_fields(){
           add_field(&class_name);
         }
      -public:  
      -  holder(T* a_obj = 0,const std::string& a_name = "")
      +public:
      +  holder(T* a_obj = 0,const std::string& a_name = "",bool a_own=true)
         :parent(a_name)
         ,class_name(T::s_class())
         ,m_obj(a_obj) //it takes a_obj ownership.
      +  ,m_own(a_own)
         {
           add_fields();
         }
       
      -  virtual ~holder(){delete m_obj;}
      +  virtual ~holder(){if(m_own) delete m_obj;}
       public:
         //any copy of a holder does NOT own any object (and we empty the name).
         holder(const holder& a_from)
         :parent(a_from)
         ,class_name(std::string())
         ,m_obj(0)
      +  ,m_own(false)
         {
           parent::m_name.clear();
           add_fields();
      @@ -87,14 +89,16 @@ public:
           parent::operator=(a_from);
           class_name.value().clear();
           m_obj = 0;
      +    m_own = false;
           parent::m_name.clear();
           return *this;
         }
      -public:  
      +public:
         const T* object() const {return m_obj;}
         T* object() {return m_obj;}
       protected:
         T* m_obj;
      +  bool m_own;
       };
       
       template 
      @@ -136,7 +140,7 @@ inline void remove_holders(std::vector& a_vec){
         for(it=a_vec.begin();it!=a_vec.end();) {
           if(h_t* h = cast_holder(*(*it))){
             it = a_vec.erase(it);
      -      delete h;                          
      +      delete h;
             continue;
           }
       
      @@ -153,7 +157,7 @@ inline void remove_holders(std::vector& a_vec,const std::string& a_name){
           if(h_t* h = cast_holder(*(*it))){
             if(h->name()==a_name) {
               it = a_vec.erase(it);
      -        delete h;                          
      +        delete h;
               continue;
             }
           }
      diff --git a/source/analysis/g4tools/include/tools/sg/infos_box b/source/analysis/g4tools/include/tools/sg/infos_box
      index 6a905faa0f..d558816734 100644
      --- a/source/analysis/g4tools/include/tools/sg/infos_box
      +++ b/source/analysis/g4tools/include/tools/sg/infos_box
      @@ -29,11 +29,11 @@ public:
         sf_vec color;
         sf_string font;
         sf_enum font_modeling;
      -  sf_string encoding; 
      +  sf_string encoding;
         sf line_width; // for text_hershey.
         sf_enum front_face; //no more used.
       
      -  sf back_visible;  
      +  sf back_visible;
         sf wmargin_factor;
         sf hmargin_factor;
         sf_enum lhjust;
      @@ -47,9 +47,11 @@ public:
             TOOLS_ARG_FIELD_DESC(rstrings),
             TOOLS_ARG_FIELD_DESC(num_spaces),
             TOOLS_ARG_FIELD_DESC(color),
      -      
      +
             TOOLS_ARG_FIELD_DESC_OPTS_BEG(font,8)
               font_hershey().c_str(),
      +        font_lato_regular_ttf().c_str(),
      +        font_roboto_bold_ttf().c_str(),
               font_arial_ttf().c_str(),
               font_arialbd_ttf().c_str(),
               font_timesbd_ttf().c_str(),
      @@ -58,13 +60,13 @@ public:
               font_helvetica_ttf().c_str(),
               font_times_roman_ttf().c_str()
             TOOLS_ARG_FIELD_DESC_OPTS_END,
      -      
      +
             TOOLS_ARG_FIELD_DESC_ENUMS_BEG(font_modeling,3)
               TOOLS_ARG_ENUM(font_outline),
               TOOLS_ARG_ENUM(font_filled),
               TOOLS_ARG_ENUM(font_pixmap)
             TOOLS_ARG_FIELD_DESC_ENUMS_END,
      -      
      +
             TOOLS_ARG_FIELD_DESC(encoding),
             TOOLS_ARG_FIELD_DESC(line_width),
             TOOLS_ARG_FIELD_DESC(front_face),
      @@ -87,7 +89,7 @@ private:
           add_field(&color);
           add_field(&font);
           add_field(&font_modeling);
      -    add_field(&encoding); 
      +    add_field(&encoding);
           add_field(&line_width);
           add_field(&front_face);
       
      @@ -118,12 +120,12 @@ public:
           }
         }
         virtual void search(search_action& a_action) {
      -    node::search(a_action);
      -    if(a_action.done()) return;
           if(touched()) {
             update_sg();
             reset_touched();
           }
      +    node::search(a_action);
      +    if(a_action.done()) return;
           if(back_visible.value()) {
             m_back_sep.search(a_action);
             if(a_action.done()) return;
      @@ -392,7 +394,7 @@ public:
       
             // from a text height of th=1, and a left/right sep
             // of num_spaces*th, get width of the box :
      -  
      +
             float th = 1;
       
             float lmn_x,lmn_y,lmn_z;
      @@ -423,17 +425,17 @@ public:
             // to th, we get the th needed to match infos_box.width :
             // th -> winfos then to have fw :
             th = fw*th/winfos;
      -  
      +
             // place the left/right texts by rescaling them to
             // the new th :
             ltext->height = th;
             ltext->get_bounds(th,lmn_x,lmn_y,lmn_z,lmx_x,lmx_y,lmx_z);
             float hinfos = (lmx_xascent(th)+hinfos*0.5f;
             ltsf->set_translate(xx,ty,zz);
      -  
      +
             rtext->height = th;
             if(rtext->hjust==right) {
               xx = fw*0.5F;
      @@ -447,17 +449,17 @@ public:
               xx = fw*0.5F-rw*0.5F;
             }
             rtsf->set_translate(xx,ty,zz);
      -  
      +
             // set infos_box.height :
             height = hinfos/hmargin_factor;
      -  
      +
             //done last because of the upper height setup.
             parent::update_sg();
       
           }
       
           delete mtext;
      -  
      +
         }
       protected:
         const base_freetype& m_ttf;
      diff --git a/source/analysis/g4tools/include/tools/sg/legend b/source/analysis/g4tools/include/tools/sg/legend
      index d31a2152c9..54e8589407 100644
      --- a/source/analysis/g4tools/include/tools/sg/legend
      +++ b/source/analysis/g4tools/include/tools/sg/legend
      @@ -30,10 +30,10 @@ public:
         //sf transparency;
         sf_string font;
         sf_enum font_modeling;
      -  sf_string encoding; 
      +  sf_string encoding;
         //sf line_width;          // for text_hershey.
       
      -  sf back_visible;  
      +  sf back_visible;
         sf wmargin_factor;
         sf hmargin_factor;
         sf_enum lhjust;
      @@ -49,13 +49,13 @@ public:
             TOOLS_ARG_FIELD_DESC(strings),
             TOOLS_ARG_FIELD_DESC(color),
             TOOLS_ARG_FIELD_DESC(font),
      -      
      +
             TOOLS_ARG_FIELD_DESC_ENUMS_BEG(font_modeling,3)
               TOOLS_ARG_ENUM(font_outline),
               TOOLS_ARG_ENUM(font_filled),
               TOOLS_ARG_ENUM(font_pixmap)
             TOOLS_ARG_FIELD_DESC_ENUMS_END,
      -      
      +
             TOOLS_ARG_FIELD_DESC(encoding),
             TOOLS_ARG_FIELD_DESC(back_visible),
             TOOLS_ARG_FIELD_DESC(wmargin_factor),
      @@ -74,7 +74,7 @@ private:
           add_field(&color);
           add_field(&font);
           add_field(&font_modeling);
      -    add_field(&encoding); 
      +    add_field(&encoding);
       
           add_field(&back_visible);
           add_field(&wmargin_factor);
      @@ -104,12 +104,12 @@ public:
           }
         }
         virtual void search(search_action& a_action) {
      -    node::search(a_action);
      -    if(a_action.done()) return;
           if(touched()) {
             update_sg();
             reset_touched();
           }
      +    node::search(a_action);
      +    if(a_action.done()) return;
           if(back_visible.value()) {
             m_back_sep.search(a_action);
             if(a_action.done()) return;
      @@ -145,7 +145,7 @@ public:
       
         ,marker_style(marker_dot)
         ,marker_size(10)
      -  
      +
         //,confine(false)
       
         ,m_ttf(a_ttf)
      @@ -173,7 +173,7 @@ public:
       
         ,marker_style(a_from.marker_style)
         ,marker_size(a_from.marker_size)
      -  
      +
         //,confine(a_from.confine)
       
         ,m_ttf(a_from.m_ttf)
      @@ -199,7 +199,7 @@ public:
       
           marker_style = a_from.marker_style;
           marker_size = a_from.marker_size;
      -    
      +
           //confine = a_from.confine;
       
           return *this;
      @@ -278,17 +278,17 @@ public:
               _sep->add(ds);
               vertices* vtxs = new vertices;
               vtxs->mode = gl::points();
      -        vtxs->add(-width*0.5f+height*0.5f,0,zz);    
      +        vtxs->add(-width*0.5f+height*0.5f,0,zz);
               _sep->add(vtxs);
             } else {
               markers* vtxs = new markers;
               vtxs->size = marker_size;
      -        vtxs->style = marker_style; 
      -        vtxs->add(-width*0.5f+height*0.5f,0,zz);    
      +        vtxs->style = marker_style;
      +        vtxs->add(-width*0.5f+height*0.5f,0,zz);
               _sep->add(vtxs);
             }
           }
      -    
      +
           }
       
           ////////////////////////////////////////////////////////////
      @@ -399,9 +399,9 @@ public:
             rtext->hjust = left;
             float yy = -(mn_y+mx_y)*0.5F;
             rtsf->set_translate(-width*0.5f+height,yy,zz);}
      -      
      +
           }
      -    
      +
           parent::update_sg();
       
         }
      diff --git a/source/analysis/g4tools/include/tools/sg/line_set b/source/analysis/g4tools/include/tools/sg/line_set
      index 0914e8582e..6464fbc0a4 100644
      --- a/source/analysis/g4tools/include/tools/sg/line_set
      +++ b/source/analysis/g4tools/include/tools/sg/line_set
      @@ -53,7 +53,7 @@ public:
             tools_vforcit(line_t,lines.values(),it) {
               a_action.set_done(false);
               a_action.zs().clear();
      -        a_action.ws().clear();      
      +        a_action.ws().clear();
               a_action.add_line_strip(*it);
               if(a_action.done()) {
                 a_action.add_pick(*this,a_action.zs(),a_action.ws(),a_action.state());
      @@ -71,7 +71,7 @@ public:
       
       public:
         line_set()
      -  :parent() 
      +  :parent()
         ,lines()
         {
       #ifdef TOOLS_MEM
      @@ -100,7 +100,7 @@ public:
           return *this;
         }
       public:
      -  bool add(const line_t& a_line) { 
      +  bool add(const line_t& a_line) {
           size_t npoint = a_line.size()/3;
           if(npoint*3!=a_line.size()) return false;
           lines.add(a_line);
      diff --git a/source/analysis/g4tools/include/tools/sg/line_style b/source/analysis/g4tools/include/tools/sg/line_style
      index f337e53b10..20f8a36681 100644
      --- a/source/analysis/g4tools/include/tools/sg/line_style
      +++ b/source/analysis/g4tools/include/tools/sg/line_style
      @@ -83,7 +83,7 @@ public:
             a_out << "tools::sg::line_style::from_string :"
                   << " parse failed."
                   << std::endl;
      -      return false;    
      +      return false;
           }
       
           visible.value(sp.visible());
      diff --git a/source/analysis/g4tools/include/tools/sg/manager_zb b/source/analysis/g4tools/include/tools/sg/manager_zb
      deleted file mode 100644
      index d7d879a8d3..0000000000
      --- a/source/analysis/g4tools/include/tools/sg/manager_zb
      +++ /dev/null
      @@ -1,80 +0,0 @@
      -// Copyright (C) 2010, Guy Barrand. All rights reserved.
      -// See the file tools.license for terms.
      -
      -#ifndef tools_sg_manager_zb
      -#define tools_sg_manager_zb
      -
      -#include "gl_manager"
      -
      -#include 
      -
      -namespace tools {
      -namespace sg {
      -
      -class manager_zb : public virtual gl_manager {
      -public:
      -  virtual bool begin_render(int,int,unsigned int,unsigned int,float,float,float,float,bool = true) {return true;}
      -  virtual void end_render() {}
      -
      -  virtual unsigned int create_texture(const img_byte& a_img) {    
      -    m_gen_id++; //never return 0.
      -    m_gstos[m_gen_id] = a_img;
      -    return m_gen_id;
      -  }
      -
      -  virtual unsigned int create_gsto_from_data(size_t,const float*) {return 0;}
      -
      -  virtual bool is_gsto_id_valid(unsigned int a_id) const {
      -    gstos_t::const_iterator it = m_gstos.find(a_id);
      -    if(it==m_gstos.end()) return false;
      -    return true;
      -  }
      -  virtual void delete_gsto(unsigned int a_id) {
      -    gstos_t::iterator it = m_gstos.find(a_id);
      -    if(it!=m_gstos.end()) m_gstos.erase(it);
      -  }
      -
      -  //
      -  virtual gsto_mode get_gsto_mode() const {return gsto_memory;}
      -  virtual void set_gsto_mode(gsto_mode) {}
      -  virtual void available_gsto_modes(std::vector& a_v) {a_v.clear();}
      -  virtual void available_not_memory_gsto_mode(std::string& a_s) const {a_s.clear();}
      -  virtual size_t used_texture_memory() const {return 0;}
      -  virtual size_t gstos_size() const {return 0;}
      -public:
      -  manager_zb():m_gen_id(0){}
      -  virtual ~manager_zb(){
      -    m_gstos.clear();
      -  }
      -public:
      -  manager_zb(const manager_zb& a_from)
      -  :gl_manager(a_from)
      -  ,m_gen_id(0)
      -  ,m_gstos()
      -  {}
      -  manager_zb& operator=(const manager_zb& a_from){
      -    if(&a_from==this) return *this;
      -    m_gen_id = 0;
      -    m_gstos.clear();
      -    return *this;
      -  }
      -public:
      -  bool find(unsigned int a_id,img_byte& a_img) {
      -    gstos_t::iterator it = m_gstos.find(a_id);
      -    if(it==m_gstos.end()) return false;
      -    a_img = (*it).second;
      -    return true;
      -  }
      -  //void cleanup() {}
      -  void delete_gstos() {
      -    m_gstos.clear();
      -  }
      -protected:
      -  unsigned int m_gen_id;
      -  typedef std::map gstos_t;
      -  gstos_t m_gstos; //only textures for the moment.
      -};
      -
      -}}
      -
      -#endif
      diff --git a/source/analysis/g4tools/include/tools/sg/markers b/source/analysis/g4tools/include/tools/sg/markers
      index 932dfc46aa..248e623aa4 100644
      --- a/source/analysis/g4tools/include/tools/sg/markers
      +++ b/source/analysis/g4tools/include/tools/sg/markers
      @@ -60,7 +60,7 @@ public:
       
           float sy = size.value()/float(state.m_wh); //in [-1,1]
           float hsy = sy*0.5f;
      -    
      +
           float rad  = hsx;
           float hsx2 = hsx*0.5f;
           float hsy2 = hsy*0.5f;
      @@ -92,7 +92,7 @@ public:
       	  yprev = ynext;
               }
             }
      -      
      +
           } else if(style.value()==marker_circle_filled) {
         //} else if((style.value()==marker_circle_filled)||(style.value()==marker_dot)) {
             filled = true;
      @@ -120,7 +120,7 @@ public:
       	  yprev = ynext;
               }
             }
      -      
      +
           } else if(style.value()==marker_square_line) {
             std::vector::const_iterator it;
             for(it=_xyzs.begin();it!=_xyzs.end();){
      @@ -130,16 +130,16 @@ public:
               a_action.project_point(x,y,z,w); //in [-1,1][-1,1]
               _add(pts, x-hsx,y-hsy,z);
               _add(pts, x+hsx,y-hsy,z);
      -	
      +
               _add(pts, x+hsx,y-hsy,z);
               _add(pts, x+hsx,y+hsy,z);
      -	
      +
               _add(pts, x+hsx,y+hsy,z);
               _add(pts, x-hsx,y+hsy,z);
      -	
      +
               _add(pts, x-hsx,y+hsy,z);
               _add(pts, x-hsx,y-hsy,z);
      -      }      
      +      }
         //} else if(style.value()==marker_square_filled) {
           } else if((style.value()==marker_square_filled)||(style.value()==marker_dot)) {
             filled = true;
      @@ -152,12 +152,12 @@ public:
               _add(pts, x-hsx,y-hsy,z);
               _add(pts, x+hsx,y-hsy,z);
               _add(pts, x+hsx,y+hsy,z);
      -	
      +
               _add(pts, x-hsx,y-hsy,z);
               _add(pts, x+hsx,y+hsy,z);
               _add(pts, x-hsx,y+hsy,z);
             }
      -      
      +
           } else if(style.value()==marker_triangle_up_line) {
             std::vector::const_iterator it;
             for(it=_xyzs.begin();it!=_xyzs.end();){
      @@ -167,10 +167,10 @@ public:
               a_action.project_point(x,y,z,w); //in [-1,1][-1,1]
               _add(pts, x-hsx,y-hsy,z);
               _add(pts, x+hsx,y-hsy,z);
      -	
      +
               _add(pts, x+hsx,y-hsy,z);
               _add(pts, x    ,y+hsy,z);
      -	
      +
               _add(pts, x    ,y+hsy,z);
               _add(pts, x-hsx,y-hsy,z);
             }
      @@ -186,7 +186,7 @@ public:
               _add(pts, x+hsx,y-hsy,z);
               _add(pts, x    ,y+hsy,z);
             }
      -      
      +
           } else if(style.value()==marker_triangle_down_line) {
             std::vector::const_iterator it;
             for(it=_xyzs.begin();it!=_xyzs.end();){
      @@ -196,10 +196,10 @@ public:
               a_action.project_point(x,y,z,w); //in [-1,1][-1,1]
               _add(pts, x-hsx,y+hsy,z);
               _add(pts, x    ,y-hsy,z);
      -	
      +
               _add(pts, x    ,y-hsy,z);
       	_add(pts, x+hsx,y+hsy,z);
      -	
      +
       	_add(pts, x+hsx,y+hsy,z);
               _add(pts, x-hsx,y+hsy,z);
             }
      @@ -215,7 +215,7 @@ public:
               _add(pts, x    ,y-hsy,z);
               _add(pts, x+hsx,y+hsy,z);
             }
      -      
      +
           } else if(style.value()==marker_diamond_line) {
             std::vector::const_iterator it;
             for(it=_xyzs.begin();it!=_xyzs.end();){
      @@ -225,13 +225,13 @@ public:
               a_action.project_point(x,y,z,w); //in [-1,1][-1,1]
               _add(pts, x    ,y-hsy,z);
               _add(pts, x+hsx,    y,z);
      -	
      +
               _add(pts, x+hsx,    y,z);
               _add(pts, x    ,y+hsy,z);
      -	
      +
               _add(pts, x    ,y+hsy,z);
       	_add(pts, x-hsx,y    ,z);
      -	
      +
       	_add(pts, x-hsx,y    ,z);
               _add(pts, x    ,y-hsy,z);
             }
      @@ -246,12 +246,12 @@ public:
               _add(pts, x    ,y-hsy,z);
               _add(pts, x+hsx,    y,z);
               _add(pts, x    ,y+hsy,z);
      -	
      +
               _add(pts, x    ,y+hsy,z);
               _add(pts, x-hsx,y    ,z);
               _add(pts, x    ,y-hsy,z);
             }
      -      
      +
           } else if(style.value()==marker_swiss_cross_line) {
             std::vector::const_iterator it;
             for(it=_xyzs.begin();it!=_xyzs.end();){
      @@ -261,13 +261,13 @@ public:
               a_action.project_point(x,y,z,w); //in [-1,1][-1,1]
               _add(pts, x-hsx2,y-hsy,z);
               _add(pts, x+hsx2,y-hsy,z);
      -	
      +
               _add(pts, x+hsx2,y-hsy ,z);
               _add(pts, x+hsx2,y-hsy2,z);
       
               _add(pts, x+hsx2,y-hsy2,z);
               _add(pts, x+hsx ,y-hsy2,z);
      -	
      +
               _add(pts, x+hsx ,y-hsy2,z);
               _add(pts, x+hsx ,y+hsy2,z);
       
      @@ -329,7 +329,7 @@ public:
               a_action.project_point(x,y,z,w); //in [-1,1][-1,1]
               _add(pts, x-hsx,y-hsy2,z);
               _add(pts, x+hsx,y-hsy2,z);
      -	
      +
               _add(pts, x+hsx,y-hsy2,z);
               _add(pts, x    ,y+hsy ,z);
       
      @@ -338,7 +338,7 @@ public:
       
               _add(pts, x+hsx,y+hsy2,z);
               _add(pts, x-hsx,y+hsy2,z);
      -	
      +
               _add(pts, x-hsx,y+hsy2,z);
               _add(pts, x    ,y-hsy ,z);
       
      @@ -375,13 +375,13 @@ public:
               a_action.project_point(x,y,z,w); //in [-1,1][-1,1]
               _add(pts, x+_cos[0],y+_sin[0] ,z);
               _add(pts, x+_cos[2],y+_sin[2] ,z);
      -	
      +
               _add(pts, x+_cos[2],y+_sin[2] ,z);
               _add(pts, x+_cos[4],y+_sin[4] ,z);
      -	
      +
               _add(pts, x+_cos[4],y+_sin[4] ,z);
               _add(pts, x+_cos[1],y+_sin[1] ,z);
      -	
      +
               _add(pts, x+_cos[1],y+_sin[1] ,z);
               _add(pts, x+_cos[3],y+_sin[3] ,z);
       
      @@ -425,7 +425,7 @@ public:
               _add(pts, x+_cos[1],y+_sin[1] ,z);
               _add(pts, x+_cos[3],y+_sin[3] ,z);
               _add(pts, x+ i4.x(),y+ i4.y() ,z);
      -	
      +
               _add(pts, x+ i0.x(),y+ i0.y() ,z);
               _add(pts, x+_cos[2],y+_sin[2] ,z);
               _add(pts, x+_cos[4],y+_sin[4] ,z);
      @@ -441,7 +441,7 @@ public:
               _add(pts, x-hsx,y,z);
               _add(pts, x+hsx,y,z);
               _add(pts, x    ,y-hsy,z);
      -        _add(pts, x    ,y+hsy,z);      
      +        _add(pts, x    ,y+hsy,z);
             }
           } else if(style.value()==marker_asterisk) {
             std::vector::const_iterator it;
      @@ -451,7 +451,7 @@ public:
               z = *it;it++;
               a_action.project_point(x,y,z,w); //in [-1,1][-1,1]
               _add(pts, x    ,y-hsy ,z);
      -        _add(pts, x    ,y+hsy ,z);      
      +        _add(pts, x    ,y+hsy ,z);
               _add(pts, x-hsx,y-hsy2,z);
               _add(pts, x+hsx,y+hsy2,z);
               _add(pts, x-hsx,y+hsy2,z);
      @@ -465,7 +465,7 @@ public:
               z = *it;it++;
               a_action.project_point(x,y,z,w); //in [-1,1][-1,1]
               _add(pts, x    ,y-hsy ,z);
      -        _add(pts, x    ,y+hsy ,z);      
      +        _add(pts, x    ,y+hsy ,z);
               _add(pts, x-hsx,y-hsy2,z);
               _add(pts, x+hsx,y+hsy2,z);
               _add(pts, x-hsx,y+hsy2,z);
      @@ -493,7 +493,7 @@ public:
               _add(pts, x-hsx,y-hsy,z);
               _add(pts, x+hsx,y+hsy,z);
               _add(pts, x+hsx,y-hsy,z);
      -        _add(pts, x-hsx,y+hsy,z);      
      +        _add(pts, x-hsx,y+hsy,z);
             }
           }
       
      @@ -535,18 +535,18 @@ public:
             _add(pts, x-hsx,y-hsy,z);  //in [-1,1][-1,1]
             _add(pts, x+hsx,y+hsy,z);
             _add(pts, x+hsx,y-hsy,z);
      -      _add(pts, x-hsx,y+hsy,z);      
      +      _add(pts, x-hsx,y+hsy,z);
           }
       
           a_action.set_matrices_to_identity();
      -    a_action.add__lines(*this,pts);	
      +    a_action.add__lines(*this,pts);
           a_action.set_matrices_from_state();
         }
       
         virtual void bbox(bbox_action& a_action) {
           const std::vector& _xyzs = xyzs.values();
           float x,y,z;
      -    std::vector::const_iterator it;  
      +    std::vector::const_iterator it;
           for(it=_xyzs.begin();it!=_xyzs.end();){
             x = *it;it++;
             y = *it;it++;
      @@ -601,6 +601,17 @@ public:
           xyzs.add(a_y);
           xyzs.add(a_z);
         }
      +  bool add(const std::vector& a_v) {
      +    std::vector::size_type _number = a_v.size()/3;
      +    if(3*_number!=a_v.size()) return false;
      +    std::vector::const_iterator it;
      +    for(it=a_v.begin();it!=a_v.end();it+=3) {
      +      xyzs.add(*(it+0));
      +      xyzs.add(*(it+1));
      +      xyzs.add(*(it+2));
      +    }
      +    return true;
      +  }
         size_t number() const {return xyzs.size()/3;}
         void clear() {xyzs.clear();}
       protected:
      diff --git a/source/analysis/g4tools/include/tools/sg/matrix_action b/source/analysis/g4tools/include/tools/sg/matrix_action
      index b6de71a10c..78b4530212 100644
      --- a/source/analysis/g4tools/include/tools/sg/matrix_action
      +++ b/source/analysis/g4tools/include/tools/sg/matrix_action
      @@ -13,32 +13,33 @@ namespace tools {
       namespace sg {
       
       class matrix_action : public win_action,public states {
      +  TOOLS_ACTION(matrix_action,tools::sg::matrix_action,win_action)
       public:
         matrix_action(std::ostream& a_out,unsigned int a_ww,unsigned int a_wh)
      -  :win_action(a_out,a_ww,a_wh)
      +  :parent(a_out,a_ww,a_wh)
         ,states(a_ww,a_wh)
         ,m_cur(0)
      -  ,m_landscape(true)  
      +  ,m_landscape(true)
         {
           m_projs.resize(5);
      -    m_models.resize(5);    
      +    m_models.resize(5);
           reset();
           m_identity.set_identity();
         }
         virtual ~matrix_action(){}
       public:
         matrix_action(const matrix_action& a_from)
      -  :win_action(a_from)
      +  :parent(a_from)
         ,states(a_from)
         ,m_projs(a_from.m_projs)
         ,m_models(a_from.m_models)
         ,m_cur(a_from.m_cur)
      -  ,m_landscape(a_from.m_landscape)  
      +  ,m_landscape(a_from.m_landscape)
         {
           m_identity.set_identity();
         }
         matrix_action& operator=(const matrix_action& a_from){
      -    win_action::operator=(a_from);
      +    parent::operator=(a_from);
           states::operator=(a_from);
           m_projs = a_from.m_projs;
           m_models = a_from.m_models;
      @@ -50,11 +51,11 @@ public:
         void push_matrices() {
           if((m_cur+1)>=(int)m_projs.size()) {
             m_projs.resize(m_projs.size()+5);
      -      m_models.resize(m_models.size()+5);    
      +      m_models.resize(m_models.size()+5);
           }
           m_cur++;
           m_projs[m_cur].set_matrix(m_projs[m_cur-1]);
      -    m_models[m_cur].set_matrix(m_models[m_cur-1]);    
      +    m_models[m_cur].set_matrix(m_models[m_cur-1]);
       //OPTIMIZATION : in fact the two lines below are not needed !
       //    m_state.m_proj = m_projs[m_cur];
       //    m_state.m_model = m_models[m_cur];
      @@ -85,6 +86,12 @@ public:
           return true;
         }
       
      +//  bool project_normal(float& a_x,float& a_y,float& a_z) {
      +//    model_matrix().mul_dir_3f(a_x,a_y,a_z);
      +//    projection_matrix().mul_dir_3f(a_x,a_y,a_z);
      +//    return true;
      +//  }
      +
         void model_point(float& a_x,float& a_y,float& a_z,float& a_w) {
           a_w = 1;
           model_matrix().mul_4f(a_x,a_y,a_z,a_w);
      diff --git a/source/analysis/g4tools/include/tools/sg/mf b/source/analysis/g4tools/include/tools/sg/mf
      index 92414bd2f2..824146521a 100644
      --- a/source/analysis/g4tools/include/tools/sg/mf
      +++ b/source/analysis/g4tools/include/tools/sg/mf
      @@ -196,7 +196,7 @@ inline const std::string* get_data(const std::vector& a_v) {
       ///////////////////////////////////////////////////////////
       
       
      -template  
      +template 
       class mf_vec : public bmf {
         typedef bmf parent;
       public:
      diff --git a/source/analysis/g4tools/include/tools/sg/node b/source/analysis/g4tools/include/tools/sg/node
      index 622354fbe6..8aee98e221 100644
      --- a/source/analysis/g4tools/include/tools/sg/node
      +++ b/source/analysis/g4tools/include/tools/sg/node
      @@ -44,12 +44,12 @@ public:
         virtual node* copy() const = 0;
       
         virtual unsigned int cls_version() const {return 1;}
      -  
      +
         virtual const desc_fields& node_desc_fields() const {
           static const desc_fields s_v;
           return s_v;
         }
      -  
      +
         virtual void render(render_action&) {}
         virtual void pick(pick_action&) {}
         virtual void bbox(bbox_action&) {}
      @@ -63,12 +63,12 @@ public:
             if(this==a_action.node()){
               a_action.path_push(this); //ending node in the path.
               a_action.set_done(true);
      -      } 
      +      }
           } else if(a_action.what()==search_action::search_path_to_node_of_class) {
             if(cast(a_action.sclass())) {
               search_action::path_t path = a_action.path();
               path.push_back(this);
      -        a_action.add_path(path);        
      +        a_action.add_path(path);
               if(a_action.stop_at_first()) a_action.set_done(true);
             }
           }
      @@ -77,7 +77,7 @@ public:
           if(this==a_action.node()){
             a_action.set_found_model(a_action.model_matrix());
             a_action.set_done(true);
      -    } 
      +    }
         }
         virtual bool write(write_action& a_action) {
           if(!a_action.beg_node(*this)) return false;
      @@ -88,7 +88,7 @@ public:
         virtual void event(event_action&) {}
         virtual bool read(read_action& a_action) {return read_fields(a_action);}
         virtual void is_visible(visible_action&) {}
      -  
      +
         virtual void protocol_one_fields(std::vector& a_fields) const {a_fields = m_fields;}
       
         virtual bool draw_in_frame_buffer() const {return false;}  // marker nodes return true.
      diff --git a/source/analysis/g4tools/include/tools/sg/nodekit b/source/analysis/g4tools/include/tools/sg/nodekit
      index c71856b6f4..34711cf854 100644
      --- a/source/analysis/g4tools/include/tools/sg/nodekit
      +++ b/source/analysis/g4tools/include/tools/sg/nodekit
      @@ -48,9 +48,9 @@ public:
           m_group.render(a_action);
         }
         virtual void search(search_action& a_action) {
      +    update_if_touched(a_action.out());
           parent::search(a_action);
           if(a_action.done()) return;
      -    update_if_touched(a_action.out());
           m_group.search(a_action);
         }
         virtual void bbox(bbox_action& a_action) {
      diff --git a/source/analysis/g4tools/include/tools/sg/noderef b/source/analysis/g4tools/include/tools/sg/noderef
      index bbf469cd06..d087465505 100644
      --- a/source/analysis/g4tools/include/tools/sg/noderef
      +++ b/source/analysis/g4tools/include/tools/sg/noderef
      @@ -18,9 +18,9 @@ public:
         virtual void render(render_action& a_action) {
       #ifdef TOOLS_SG_NODEREF_DEBUG
           std::ostream& out = a_action.out();
      -    out << "debug : tools::sg::noderef::render : " << m_node.s_cls() << " begin : " << std::endl;   
      +    out << "debug : tools::sg::noderef::render : " << m_node.s_cls() << " begin : " << std::endl;
           m_node.render(a_action);
      -    out << "debug : tools::sg::noderef::render : " << m_node.s_cls() << " end," << std::endl;   
      +    out << "debug : tools::sg::noderef::render : " << m_node.s_cls() << " end," << std::endl;
       #else
           m_node.render(a_action);
       #endif
      diff --git a/source/analysis/g4tools/include/tools/sg/normal b/source/analysis/g4tools/include/tools/sg/normal
      index a82ab3966b..81c8e24149 100644
      --- a/source/analysis/g4tools/include/tools/sg/normal
      +++ b/source/analysis/g4tools/include/tools/sg/normal
      @@ -31,7 +31,9 @@ private:
         }
       public:
         virtual void render(render_action& a_action) {
      -    a_action.normal(vec.value());
      +    state& state = a_action.state();
      +    state.m_normal = vec.value();
      +    a_action.normal(state.m_normal);
         }
       public:
         normal()
      diff --git a/source/analysis/g4tools/include/tools/sg/pick_action b/source/analysis/g4tools/include/tools/sg/pick_action
      index 9f20852bb3..b3b376d29c 100644
      --- a/source/analysis/g4tools/include/tools/sg/pick_action
      +++ b/source/analysis/g4tools/include/tools/sg/pick_action
      @@ -57,10 +57,11 @@ protected:
       };
       
       class pick_action : public matrix_action, public primitive_visitor {
      +  TOOLS_ACTION(pick_action,tools::sg::pick_action,matrix_action)
       protected:
       
         virtual bool project(float& a_x,float& a_y,float& a_z,float& a_w) {
      -    return project_point(a_x,a_y,a_z,a_w);
      +    return parent::project_point(a_x,a_y,a_z,a_w);
         }
       
         virtual bool add_point(float a_x,float a_y,float a_z,float a_w) {
      @@ -73,16 +74,11 @@ protected:
       
         virtual bool add_point(float a_x,float a_y,float a_z,float a_w,
                                float,float,float,float) {
      -    if(is_inside(a_x,a_y,a_z,a_w)) { //we have a pick.
      -      m_done = true;
      -      return false; //to stop
      -    }
      -    return true; //continue.
      +    return pick_action::add_point(a_x,a_y,a_z,a_w);
         }
       
         virtual bool add_line(float a_bx,float a_by,float a_bz,float a_bw,
                               float a_ex,float a_ey,float a_ez,float a_ew) {
      -
           if(is_inside(a_bx,a_by,a_bz,a_bw)) {
             m_done = true;
             return false;
      @@ -103,8 +99,7 @@ protected:
                               float,float,float,float,
                               float a_ex,float a_ey,float a_ez,float a_ew,
                               float,float,float,float){
      -    return add_line(a_bx,a_by,a_bz,a_bw,
      -                    a_ex,a_ey,a_ez,a_ew);
      +    return pick_action::add_line(a_bx,a_by,a_bz,a_bw,a_ex,a_ey,a_ez,a_ew);
         }
       
         virtual bool add_triangle(float a_p1x,float a_p1y,float a_p1z,float a_p1w,
      @@ -120,19 +115,57 @@ protected:
         }
       
         virtual bool add_triangle(float a_p1x,float a_p1y,float a_p1z,float a_p1w,
      -                              float,float,float,float,
      +                            float,float,float,float,
                                   float a_p2x,float a_p2y,float a_p2z,float a_p2w,
      -                              float,float,float,float,
      +                            float,float,float,float,
                                   float a_p3x,float a_p3y,float a_p3z,float a_p3w,
      -                              float,float,float,float){
      +                            float,float,float,float){
           return pick_action::add_triangle(a_p1x,a_p1y,a_p1z,a_p1w,
                                            a_p2x,a_p2y,a_p2z,a_p2w,
                                            a_p3x,a_p3y,a_p3z,a_p3w);
         }
       
      +  virtual bool project_normal(float&,float&,float&) {return true;}
      +  virtual bool add_point_normal(float a_x,float a_y,float a_z,float a_w,
      +                                float,float,float) {
      +    return pick_action::add_point(a_x,a_y,a_z,a_w);
      +  }
      +
      +  virtual bool add_point_normal(float a_x,float a_y,float a_z,float a_w,
      +                                float,float,float,
      +                                float,float,float,float) {
      +    return pick_action::add_point(a_x,a_y,a_z,a_w);
      +  }
      +
      +  virtual bool add_line_normal(float a_bx,float a_by,float a_bz,float a_bw, float,float,float,
      +                               float a_ex,float a_ey,float a_ez,float a_ew, float,float,float) {
      +    return pick_action::add_line(a_bx,a_by,a_bz,a_bw,a_ex,a_ey,a_ez,a_ew);
      +  }
      +  virtual bool add_line_normal(float a_bx,float a_by,float a_bz,float a_bw, float,float,float, float,float,float,float,
      +                               float a_ex,float a_ey,float a_ez,float a_ew, float,float,float, float,float,float,float) {
      +    return pick_action::add_line(a_bx,a_by,a_bz,a_bw,a_ex,a_ey,a_ez,a_ew);
      +  }
      +
      +  virtual bool add_triangle_normal(float a_p1x,float a_p1y,float a_p1z,float a_p1w, float,float,float,
      +                                   float a_p2x,float a_p2y,float a_p2z,float a_p2w, float,float,float,
      +                                   float a_p3x,float a_p3y,float a_p3z,float a_p3w, float,float,float) {
      +    return pick_action::add_triangle(a_p1x,a_p1y,a_p1z,a_p1w,
      +                                     a_p2x,a_p2y,a_p2z,a_p2w,
      +                                     a_p3x,a_p3y,a_p3z,a_p3w);
      +  }
      +  virtual bool add_triangle_normal(float a_p1x,float a_p1y,float a_p1z,float a_p1w,
      +                                   float,float,float, float,float,float,float,
      +                                   float a_p2x,float a_p2y,float a_p2z,float a_p2w,
      +                                   float,float,float, float,float,float,float,
      +                                   float a_p3x,float a_p3y,float a_p3z,float a_p3w,
      +                                   float,float,float, float,float,float,float) {
      +    return pick_action::add_triangle(a_p1x,a_p1y,a_p1z,a_p1w,
      +                                     a_p2x,a_p2y,a_p2z,a_p2w,
      +                                     a_p3x,a_p3y,a_p3z,a_p3w);
      +  }
       public:
         pick_action(std::ostream& a_out,unsigned int a_ww,unsigned int a_wh,float a_l,float a_r,float a_b,float a_t)
      -  :matrix_action(a_out,a_ww,a_wh)
      +  :parent(a_out,a_ww,a_wh)
         ,m_l(a_l)
         ,m_r(a_r)
         ,m_b(a_b)
      @@ -146,7 +179,7 @@ public:
         virtual ~pick_action(){}
       public:
         pick_action(const pick_action& a_from)
      -  :matrix_action(a_from)
      +  :parent(a_from)
         ,primitive_visitor(a_from)
         ,m_l(a_from.m_l)
         ,m_r(a_from.m_r)
      @@ -159,7 +192,7 @@ public:
           set_to_pick_ndc(); //OPTIMIZATION
         }
         pick_action& operator=(const pick_action& a_from){
      -    matrix_action::operator=(a_from);
      +    parent::operator=(a_from);
           primitive_visitor::operator=(a_from);
           m_l = a_from.m_l;
           m_r = a_from.m_r;
      @@ -176,7 +209,7 @@ public:
         }
       public:
         void reset() {
      -    matrix_action::reset();
      +    parent::reset();
           m_done = false;
           m_node = 0;
           m_zs.clear();
      @@ -197,7 +230,7 @@ public:
         void set_area(float a_l,float a_r,float a_b,float a_t) {
           // a_l,a_r,a_b,a_t are in window coordinates (pixels)
           // but handled in floats for intersection computation precision.
      -    // WARNING : we must have a_t>a_b and a_r>a_l. No check is done for that. 
      +    // WARNING : we must have a_t>a_b and a_r>a_l. No check is done for that.
           m_l = a_l;
           m_r = a_r;
           m_b = a_b;
      @@ -567,7 +600,7 @@ protected:
           if(is_inside(a_2x,a_2y,a_2z,a_2w)) return true;
           if(is_inside(a_3x,a_3y,a_3z,a_3w)) return true;
       
      -    // alll points are outside. 
      +    // alll points are outside.
       
           float x1,y1;
           to_pick_ndc(a_1x,a_1y,x1,y1);
      @@ -589,7 +622,7 @@ protected:
           if(ortho_clip_line(bx,by,bz,bw, ex,ey,ez,ew, toggle)) {
             m_zs.push_back(bz);
             m_ws.push_back(bw);
      -      return true;   
      +      return true;
           }
       
           float x3,y3;
      @@ -607,7 +640,7 @@ protected:
           if(ortho_clip_line(bx,by,bz,bw, ex,ey,ez,ew, toggle)) {
             m_zs.push_back(bz);
             m_ws.push_back(bw);
      -      return true;   
      +      return true;
           }
       
           bx = x1;
      @@ -622,13 +655,13 @@ protected:
           if(ortho_clip_line(bx,by,bz,bw, ex,ey,ez,ew, toggle)) {
             m_zs.push_back(bz);
             m_ws.push_back(bw);
      -      return true;   
      +      return true;
           }
       
           // no intersection with edges.
           // but the triangle may surround [-1,1]x[-1,1] !
       
      -    // test if O=(0,0) is inside the triangle :    
      +    // test if O=(0,0) is inside the triangle :
       
           float xo = 0;
           float yo = 0;
      @@ -676,7 +709,7 @@ protected:
           vec3f O(0,0,0);
           line ln(O,O+vec3f(0,0,1));
       
      -    vec3f pz;   
      +    vec3f pz;
          {vec3f p1(x1,y1,a_1z);
           vec3f p2(x2,y2,a_2z);
           vec3f p3(x3,y3,a_3z);
      @@ -684,7 +717,7 @@ protected:
           if(!pl.intersect(ln,pz)) {
             m_out << "pick_action::intersect_triangle :"
                   << " z plane/line intersection failed."
      -            << std::endl;      
      +            << std::endl;
             return false;
           }}
       
      @@ -692,7 +725,7 @@ protected:
           // (in the xy plane, 1,2,3 points have same projection, then the
           //  z axis intersection with the triangle hits the same point done with zs
           //  than with ws).
      -    vec3f pw;   
      +    vec3f pw;
          {vec3f p1(x1,y1,a_1w);
           vec3f p2(x2,y2,a_2w);
           vec3f p3(x3,y3,a_3w);
      @@ -700,14 +733,14 @@ protected:
           if(!pl.intersect(ln,pw)) {
             m_out << "pick_action::intersect_triangle :"
                   << " plane/line intersection failed."
      -            << std::endl;      
      +            << std::endl;
             return false;
           }}
           //::printf("debug : w planey %g\n",p[2]);
       
           //m_out << "pick_action::intersect_triangle :"
           //      << " p " << p[0] << " " << p[1] << " " << p[2]
      -    //      << std::endl;      
      +    //      << std::endl;
       
           m_zs.push_back(pz[2]);
           m_ws.push_back(pw[2]);
      @@ -724,7 +757,7 @@ protected:
           if(!l1p.intersect(l23,q,prec)) {
             m_out << "pick_action::intersect_triangle :"
                   << " line/line intersection failed."
      -            << std::endl;      
      +            << std::endl;
             return false;
           }
           float dq2 = (q-p2).length();
      @@ -732,7 +765,7 @@ protected:
           if(d32==0) {
             m_out << "pick_action::intersect_triangle :"
                   << " zero d32."
      -            << std::endl;      
      +            << std::endl;
             return false;
           }
           float dp1 = (pz-p1).length();
      @@ -740,7 +773,7 @@ protected:
           if(dq1==0) {
             m_out << "pick_action::intersect_triangle :"
                   << " zero dq1."
      -            << std::endl;      
      +            << std::endl;
             return false;
           }
       
      @@ -878,7 +911,7 @@ protected:
                 // z = -1.
                 // z =  0.
                 // G.Barrand : do not do z clipping
      -       /* else if(a_doz && (bout & (1<<4)) ) { //bz < -1 
      +       /* else if(a_doz && (bout & (1<<4)) ) { //bz < -1
                   float t = a_ez-a_bz;
                   //CHECK_DIV    (t,"ClipLineParallel")
                   t = (-1 - a_z)/t;
      @@ -919,7 +952,7 @@ protected:
         float m_r;
         float m_b;
         float m_t;
      -  
      +
         bool m_stop_at_first;
       
         bool m_done;
      diff --git a/source/analysis/g4tools/include/tools/sg/plots b/source/analysis/g4tools/include/tools/sg/plots
      index f40077f434..d857d8b8a6 100644
      --- a/source/analysis/g4tools/include/tools/sg/plots
      +++ b/source/analysis/g4tools/include/tools/sg/plots
      @@ -64,11 +64,11 @@ public:
         }
         virtual bool touched() {
           if(parent::touched()) return true;
      -     
      +
            if(m_sep.empty()) return true;
            if(m_extras.size()!=m_extras_sep.size()) return true;
      - 
      -  //{size_t _number = m_sep.size();    
      +
      +  //{size_t _number = m_sep.size();
         // for(size_t index=0;index<_number;index++) {
         //   separator* sep = (separator*)m_sep[index];
         //   plotter* _plotter = (plotter*)(*sep)[PLOTTER()];
      @@ -110,7 +110,7 @@ private:
         typedef std::vector prims_t;
       public:
       /*
      -  class updater { 
      +  class updater {
         public:
           virtual void update(plots&,size_t) = 0;
           virtual updater* copy() const = 0;
      @@ -129,9 +129,9 @@ public:
           //m_group.pick(a_action);
         }
         virtual void search(search_action& a_action) {
      +    update_if_touched();
           parent::search(a_action);
           if(a_action.done()) return;
      -    update_if_touched();
           if(a_action.do_path()) a_action.path_push(this);
           m_group.search(a_action);
           if(a_action.done()) return;
      @@ -224,7 +224,7 @@ public:
           //m_updater = a_from.m_updater?a_from.m_updater->copy():0;
           if(!copy_plotters(a_from)) {}
         }
      -  plots& operator=(const plots& a_from){    
      +  plots& operator=(const plots& a_from){
           parent::operator=(a_from);
           if(&a_from==this) return *this;
       
      @@ -249,7 +249,7 @@ public:
           bottom_margin = a_from.bottom_margin;
           horizontal_spacing = a_from.horizontal_spacing;
           vertical_spacing = a_from.vertical_spacing;
      -  
      +
           m_old_cols = 0;
           m_old_rows = 0;
           m_origins = a_from.m_origins;
      @@ -261,23 +261,23 @@ public:
           m_extras = a_from.m_extras;
       
           if(!copy_plotters(a_from)) {}
      -    
      +
           return *this;
         }
       public:
         unsigned int number() const {return cols*rows;}
         unsigned int current_index() const {return m_current;}
      -  
      +
         void adjust_size(unsigned int a_ww,unsigned int a_wh) {
           if(!a_ww||!a_wh) return;
           float aspect = float(a_ww)/float(a_wh);
           width = height * aspect;
      -  }  
      +  }
       
         //void enforce_update() { //used in geant4 plotting.
         //  update_sg();
         //  reset_touched();
      -  //}  
      +  //}
       
         const base_freetype& ttf() const {return m_ttf;}
       public:
      @@ -290,7 +290,7 @@ public:
       */
         void clear() {
           update_if_touched();
      -   {size_t _number = m_sep.size();    
      +   {size_t _number = m_sep.size();
           for(size_t index=0;index<_number;index++) {
             separator* sep = (separator*)m_sep[index];
             plotter* _plotter = (plotter*)(*sep)[PLOTTER()];
      @@ -305,7 +305,7 @@ public:
       
         bool has_data() {
           update_if_touched();
      -   {size_t _number = m_sep.size();    
      +   {size_t _number = m_sep.size();
           for(size_t index=0;index<_number;index++) {
             separator* sep = (separator*)m_sep[index];
             plotter* _plotter = (plotter*)(*sep)[PLOTTER()];
      @@ -321,7 +321,7 @@ public:
       
         void touch_plotters() { //used in exlib/geant4/session.
           update_if_touched();
      -   {size_t _number = m_sep.size();    
      +   {size_t _number = m_sep.size();
           for(size_t index=0;index<_number;index++) {
             separator* sep = (separator*)m_sep[index];
             plotter* _plotter = (plotter*)(*sep)[PLOTTER()];
      @@ -336,7 +336,7 @@ public:
       
         void next() {
           update_if_touched();
      -    size_t _number = m_sep.size();    
      +    size_t _number = m_sep.size();
           if(m_current>=(uint32(_number)-1)) {
             m_current = 0;
           } else {
      @@ -355,7 +355,7 @@ public:
       
         bool set_current(plotter* a_plotter) { //for popup.
           update_if_touched();
      -    size_t _number = m_sep.size();    
      +    size_t _number = m_sep.size();
           for(size_t index=0;index<_number;index++) {
             separator* sep = (separator*)m_sep[index];
             plotter* _plotter = (plotter*)(*sep)[PLOTTER()];
      @@ -364,7 +364,7 @@ public:
               update_current_border();
               return true;
             }
      -    }    
      +    }
           return false;
         }
       
      @@ -425,7 +425,7 @@ public:
           float rh_wc = wh_wc/rows;
           float rw_wc = rh_wc*ra;
       
      -    unsigned int _number = m_sep.size();    
      +    unsigned int _number = m_sep.size();
           for(unsigned int index=0;index<_number;index++) {
             unsigned int row = index/cols;
             unsigned int col = index-cols*row;
      @@ -438,10 +438,10 @@ public:
               a_index = index;
               return true;
             }
      -    }    
      +    }
       
           return false;
      -  }  
      +  }
       */
       
         void set_regions(unsigned int a_cols = 1,unsigned int a_rows = 1,bool a_transfer = false) {
      @@ -451,8 +451,8 @@ public:
           std::vector primss;
           std::vector tdlss;
           std::vector pls;
      -    
      -    if(a_transfer) {   
      +
      +    if(a_transfer) {
             ptbss.resize(oldn);
             primss.resize(oldn);
             tdlss.resize(oldn);
      @@ -472,7 +472,7 @@ public:
           update_sg();
           set_current_plotter(0);
           clear();
      -    if(a_transfer) {   
      +    if(a_transfer) {
             //fill new plotters with old data :
             unsigned int num = min_of(oldn,cols*rows);
             for(unsigned int index=0;index& a_vec) { //a_vec do NOT get ownership of sg::plotter objects. Use in G4Analysis.
           a_vec.clear();
           update_if_touched();
      -    size_t _number = m_sep.size();    
      +    size_t _number = m_sep.size();
           for(size_t index=0;index<_number;index++) {
             separator* sep = (separator*)m_sep[index];
             plotter* _plotter = (plotter*)(*sep)[PLOTTER()];
             a_vec.push_back(_plotter);
      -    }    
      +    }
         }
      -  
      +
         //////////////////////////////////////////////////////////////////////
         //// styling methods : ///////////////////////////////////////////////
         //////////////////////////////////////////////////////////////////////
         void set_line_width(float a_line_width) {
           update_if_touched();
      -    size_t _number = m_sep.size();    
      +    size_t _number = m_sep.size();
           for(size_t index=0;index<_number;index++) {
             separator* sep = (separator*)m_sep[index];
             plotter* _plotter = (plotter*)(*sep)[PLOTTER()];
      -      
      +
             _plotter->bins_style(0).line_width = a_line_width;
             _plotter->inner_frame_style().line_width = a_line_width;
             _plotter->grid_style().line_width = a_line_width;
      @@ -539,20 +539,20 @@ public:
             _plotter->z_axis().ticks_style().width = a_line_width;
             _plotter->colormap_axis().line_style().width = a_line_width;
             _plotter->colormap_axis().ticks_style().width = a_line_width;
      -  
      +
             // needed if font is hershey :
             _plotter->title_style().line_width = a_line_width;
             _plotter->infos_style().line_width = a_line_width;
             _plotter->title_box_style().line_width = a_line_width;
      -  
      +
             _plotter->x_axis().labels_style().line_width = a_line_width;
             _plotter->x_axis().mag_style().line_width = a_line_width;
             _plotter->x_axis().title_style().line_width = a_line_width;
      -  
      +
             _plotter->y_axis().labels_style().line_width = a_line_width;
             _plotter->y_axis().mag_style().line_width = a_line_width;
             _plotter->y_axis().title_style().line_width = a_line_width;
      -  
      +
             _plotter->z_axis().labels_style().line_width = a_line_width;
             _plotter->z_axis().mag_style().line_width = a_line_width;
             _plotter->z_axis().title_style().line_width = a_line_width;
      @@ -560,32 +560,32 @@ public:
             _plotter->colormap_axis().labels_style().line_width = a_line_width;
             _plotter->colormap_axis().mag_style().line_width = a_line_width;
             _plotter->colormap_axis().title_style().line_width = a_line_width;
      -    }    
      +    }
         }
       
       /*
         void set_border_style() {
           update_if_touched();
      -    size_t _number = m_sep.size();    
      +    size_t _number = m_sep.size();
           for(size_t index=0;index<_number;index++) {
             separator* sep = (separator*)m_sep[index];
             plotter* _plotter = (plotter*)(*sep)[PLOTTER()];
             _plotter->background_style().visible = true;
             _plotter->background_style().color = colorf_black();
             _plotter->background_style().line_width = 0.003;
      -    }    
      +    }
           border_visible = true;
         }
       */
       
         void set_grids_visibility(bool a_visible = false) {
           update_if_touched();
      -    size_t _number = m_sep.size();    
      +    size_t _number = m_sep.size();
           for(size_t index=0;index<_number;index++) {
             separator* sep = (separator*)m_sep[index];
             plotter* _plotter = (plotter*)(*sep)[PLOTTER()];
             _plotter->grid_style().visible = a_visible;
      -    }    
      +    }
           border_visible = true;
         }
       
      @@ -594,50 +594,50 @@ public:
           // We assume that these parameters had been set previously according to one plot per page.
           // Then this function must be applied after all the styles had been applied (because
           // a plotting style may set these parameters).
      -  
      +
           float ww_wc = width.value();
           float wh_wc = height.value();
           float rw_wc = ww_wc/cols.value();
           float rh_wc = wh_wc/rows.value();
      -  
      +
           float cooking = 1.2f; //if increased the data area is diminished.
      -  
      +
           float wfac = (rw_wc/ww_wc)*cooking;
           float hfac = (rh_wc/wh_wc)*cooking;
      -  
      +
           float label_cooking = 1.6f; //if increased the labels are bigger.
      -  
      +
           if((cols.value()>=4)&&(cols.value()>rows.value())) label_cooking = 0.9f;
      -  
      +
           float title_cooking = 1.1f; //extra title cooking.
      -  
      +
           plotter_scale = a_plotter_scale;
      -  
      +
           update_if_touched();
      -   {size_t _number = m_sep.size();    
      +   {size_t _number = m_sep.size();
           for(size_t index=0;index<_number;index++) {
             separator* sep = (separator*)m_sep[index];
             plotter* _plotter = (plotter*)(*sep)[PLOTTER()];
      -  
      +
             _plotter->left_margin = _plotter->left_margin * wfac;
             _plotter->right_margin = _plotter->right_margin * wfac;
             _plotter->bottom_margin = _plotter->bottom_margin * hfac;
             _plotter->top_margin = _plotter->top_margin * hfac;
      -  
      +
             _plotter->x_axis().tick_length = _plotter->x_axis().tick_length * wfac;
             _plotter->y_axis().tick_length = _plotter->y_axis().tick_length * hfac;
      -  
      +
             _plotter->title_to_axis = _plotter->title_to_axis * hfac;
             _plotter->title_height = _plotter->title_height * hfac * title_cooking;
      -  
      +
             _plotter->x_axis().label_height = _plotter->x_axis().label_height * hfac * label_cooking;
             _plotter->y_axis().label_height = _plotter->y_axis().label_height * hfac * label_cooking;
           }}
         }
      -  
      +
         //gopaw:
         void configure_grid_PAW(unsigned int a_ww,unsigned int a_wh) {
      -    
      +
           m_origins.clear();
           m_sizes.clear();
       
      @@ -651,9 +651,9 @@ public:
       
           float wdata = (width.value()-left_margin.value()-right_margin.value()-(_cols-1)*horizontal_spacing.value())/_cols;
           float hdata = (height.value()-bottom_margin.value()-top_margin.value()-(_rows-1)*vertical_spacing.value())/_rows;
      -    
      +
           if((wdata<=0)||(hdata<=0)) return;
      -    
      +
       /*
           //    wpix = w * wvp pixels
           //    hpix = h * hvp pixels
      @@ -672,7 +672,7 @@ public:
             h = w * (wvp/hvp)/paspect;
             xo = 0;
             yo = (1-h)/2;
      -    }    
      +    }
           float xfac = w / width.value();
           float yfac = h / height.value();
       */
      @@ -682,11 +682,11 @@ public:
             //iregion = col + row * cols
             unsigned int row = iregion/_cols;
             unsigned int col = iregion - row * _cols;
      -      
      +
             float wr,hr,x,y,lm,rm,bm,tm;
             wr = hr = x = y = 0;
             lm = rm = bm = tm = 0;
      -      
      +
             if(_cols==1) {
               wr = width.value();
               x = 0;
      @@ -713,7 +713,7 @@ public:
                 rm = horizontal_spacing.value()/2;
               }
             }
      - 
      +
             if(_rows==1) {
               hr = height.value();
               y = 0;
      @@ -747,28 +747,28 @@ public:
       
             separator* sep = (separator*)m_sep[iregion];
             plotter* _plotter = (plotter*)(*sep)[PLOTTER()];
      -      
      +
             //_plotter->width = wr;
             _plotter->left_margin = lm;
             _plotter->right_margin = rm;
      -      
      +
             //_plotter->height = hr;
             _plotter->top_margin = tm;
             _plotter->bottom_margin = bm;
       
             // ignore margins and spacings :
             //float wr = w/_cols;
      -      //float hr = h/_rows; 
      +      //float hr = h/_rows;
             //float x = xo + col * wr;
             //float y = yo + (rows-1-row) * hr;
             //viewportRegion->setPositionPercent(x,y);
             //viewportRegion->setSizePercent(wr,hr);
      -	    
      +
           }
         }
      -  
      +
         void configure_extras_PAW(unsigned int a_ww,unsigned int a_wh) {
      -    
      +
           m_extras_origins.clear();
           m_extras_sizes.clear();
       
      @@ -785,17 +785,17 @@ public:
       
             float wdata = (width.value()-left_margin.value()-right_margin.value()-(_cols-1)*horizontal_spacing.value())/_cols;
             float hdata = (height.value()-bottom_margin.value()-top_margin.value()-(_rows-1)*vertical_spacing.value())/_rows;
      -    
      +
             if((wdata<=0)||(hdata<=0)) continue;
      -      
      +
             unsigned int iregion = _extra.m_index;
             unsigned int row = iregion/_cols;
             unsigned int col = iregion - row * _cols;
      -      
      +
             float wr,hr,x,y,lm,rm,bm,tm;
             wr = hr = x = y = 0;
             lm = rm = bm = tm = 0;
      -      
      +
             if(_cols==1) {
               wr = width.value();
               x = 0;
      @@ -822,7 +822,7 @@ public:
                 rm = horizontal_spacing.value()/2;
               }
             }
      - 
      +
             if(_rows==1) {
               hr = height.value();
               y = 0;
      @@ -856,25 +856,25 @@ public:
       
             separator* sep = _extra.m_sep;
             plotter* _plotter = (plotter*)(*sep)[PLOTTER()];
      -      
      +
             //_plotter->width = wr;
             _plotter->left_margin = lm;
             _plotter->right_margin = rm;
      -      
      +
             //_plotter->height = hr;
             _plotter->top_margin = tm;
             _plotter->bottom_margin = bm;
       
             // ignore margins and spacings :
             //float wr = w/_cols;
      -      //float hr = h/_rows; 
      +      //float hr = h/_rows;
             //float x = xo + col * wr;
             //float y = yo + (rows-1-row) * hr;
             //viewportRegion->setPositionPercent(x,y);
             //viewportRegion->setSizePercent(wr,hr);
      -	    
      +
           } //tools_vforcit
      -  } 
      +  }
         void configure_PAW(unsigned int a_ww,unsigned int a_wh) {
           configure_grid_PAW(a_ww,a_wh);
           configure_extras_PAW(a_ww,a_wh);
      @@ -904,7 +904,7 @@ public:
         plotter* last_extra_plotter() const {
           if(m_extras.empty()) return 0;
           separator* sep = m_extras.back().m_sep;
      -    return (plotter*)(*sep)[PLOTTER()];    
      +    return (plotter*)(*sep)[PLOTTER()];
         }
       public:
         void init_sg() {  // used also in gopaw::base_viewer::clean_gstos().
      @@ -912,9 +912,9 @@ public:
           m_sep.clear();
           m_border_sep.clear();
           m_extras_sep.clear();
      -    m_group.add(new noderef(m_sep)); 
      -    m_group.add(new noderef(m_border_sep)); 
      -    m_group.add(new noderef(m_extras_sep)); 
      +    m_group.add(new noderef(m_sep));
      +    m_group.add(new noderef(m_border_sep));
      +    m_group.add(new noderef(m_extras_sep));
         }
         void clear_sg() { //used in GL_plots_viewer.
           m_group.clear();
      @@ -960,8 +960,8 @@ protected:
                 sep->add(new plotter(m_ttf)); //PLOTTER()
       
                 index++;
      -        } 
      -      } 
      +        }
      +      }
       
             if(m_current>=m_sep.size()) m_current = 0;
           }
      @@ -971,39 +971,39 @@ protected:
       
           if((width.value()>0)&&(height.value()>0)) {
             size_t _number = m_sep.size();
      -      
      +
             bool configure = (m_origins.size()==_number)&&(m_sizes.size()==_number)?true:false;
       
             // all window wc :
             float ww_wc = width;
             float wh_wc = height;
      -  
      +
             // plotter size in window wc :
             //float rw_wc = ww_wc/cols;
             //float rh_wc = wh_wc/rows;
      -  
      +
             for(size_t index=0;index<_number;index++) {
               separator* sep = (separator*)m_sep[index];
               set_plotter_layout(*sep,index,configure,cols.value(),rows.value(),
       	                   ww_wc,wh_wc,m_origins,m_sizes,plotter_scale.value());
      -      }    
      +      }
           }
      -    
      +
           update_extras();
      -  }  
      +  }
       
         bool copy_plotters(const plots& a_from) {
           update_if_touched();
           if(m_sep.size()==a_from.m_sep.size()) {
      -      size_t _number = m_sep.size();    
      +      size_t _number = m_sep.size();
             for(size_t index=0;index<_number;index++) {
               separator* _from_sep = (separator*)a_from.m_sep[index];
      -        matrix* _from_matrix = (matrix*)(*_from_sep)[MATRIX()];	 
      +        matrix* _from_matrix = (matrix*)(*_from_sep)[MATRIX()];
               //_switch* _border = (_switch*)(*_sep)[BORDER()];
               plotter* _from_plotter = (plotter*)(*_from_sep)[PLOTTER()];
       
               separator* _sep = (separator*)m_sep[index];
      -        matrix* _matrix = (matrix*)(*_sep)[MATRIX()];	 
      +        matrix* _matrix = (matrix*)(*_sep)[MATRIX()];
               plotter* _plotter = (plotter*)(*_sep)[PLOTTER()];
       
               _matrix->operator=(*_from_matrix);
      @@ -1011,20 +1011,20 @@ protected:
             }
           }
           if(m_extras_sep.size()==a_from.m_extras_sep.size()) {
      -      size_t _number = m_extras_sep.size();    
      +      size_t _number = m_extras_sep.size();
             for(size_t index=0;index<_number;index++) {
               separator* _from_sep = (separator*)a_from.m_extras_sep[index];
      -        matrix* _from_matrix = (matrix*)(*_from_sep)[MATRIX()];	 
      +        matrix* _from_matrix = (matrix*)(*_from_sep)[MATRIX()];
               plotter* _from_plotter = (plotter*)(*_from_sep)[PLOTTER()];
      -      
      +
               separator* _sep = (separator*)m_extras_sep[index];
      -        matrix* _matrix = (matrix*)(*_sep)[MATRIX()];	 
      +        matrix* _matrix = (matrix*)(*_sep)[MATRIX()];
               plotter* _plotter = (plotter*)(*_sep)[PLOTTER()];
      -       
      +
               _matrix->operator=(*_from_matrix);
               _plotter->operator=(*_from_plotter);
             }
      -    }    
      +    }
           return true;
         }
       
      @@ -1059,18 +1059,18 @@ protected:
         }
       
         void update_current_border() {
      -    size_t _number = m_sep.size();    
      +    size_t _number = m_sep.size();
           for(size_t index=0;index<_number;index++) {
             separator* sep = (separator*)m_sep[index];
             _switch* _border = (_switch*)(*sep)[BORDER()];
      -      if(index==m_current) {  
      +      if(index==m_current) {
               _border->which = view_border.value()?0:1;
               //if(m_updater) m_updater->update(*this,index);
             } else {
               _border->which = 1;
             }
      -    }    
      -  }  
      +    }
      +  }
       
         void update_border() {
           m_border_sep.clear();
      @@ -1113,7 +1113,7 @@ protected:
       
           back_area* b = new back_area;
           b->border_visible = false;
      -    b->color = border_color;      
      +    b->color = border_color;
           b->width = wba;
           b->height = hba;
           sep->add(b);}
      @@ -1133,7 +1133,7 @@ protected:
       
           back_area* b = new back_area;
           b->border_visible = false;
      -    b->color = border_color;      
      +    b->color = border_color;
           b->width = wba;
           b->height = hba;
           sep->add(b);}
      @@ -1153,7 +1153,7 @@ protected:
       
           back_area* b = new back_area;
           b->border_visible = false;
      -    b->color = border_color;      
      +    b->color = border_color;
           b->width = wba;
           b->height = hba;
           sep->add(b);}
      @@ -1173,7 +1173,7 @@ protected:
       
           back_area* b = new back_area;
           b->border_visible = false;
      -    b->color = border_color;      
      +    b->color = border_color;
           b->width = wba;
           b->height = hba;
           sep->add(b);}
      @@ -1200,7 +1200,7 @@ protected:
           unsigned int m_index;
           separator* m_sep;
         };
      -  
      +
         void update_extras() {
           if(m_extras.size()!=m_extras_sep.size()) {
             m_extras_sep.clear();
      @@ -1208,44 +1208,44 @@ protected:
               separator* sep = new separator;
               m_extras_sep.add(sep);
               (*it).m_sep = sep; //*it does not get ownership.
      -        
      +
               sep->add(new sg::matrix); //MATRIX()
      -  
      +
               //head_light* light = new head_light;
               //light->direction = vec3f(1,-1,-10);
               //light->on = false;
               //sep->add(light); //LIGHT()
      -  
      +
               _switch* border = new _switch;
               sep->add(border); //BORDER()
      -  
      +
               //matrix* tsf = new matrix;
               //sep->add(tsf); //TSF()
      -  
      -        sep->add(new plotter(m_ttf)); //PLOTTER()  
      +
      +        sep->add(new plotter(m_ttf)); //PLOTTER()
             }
           }
       
           if(width.value()<=0) return;
           if(height.value()<=0) return;
      -    
      +
           // all window wc :
           float ww_wc = width;
           float wh_wc = height;
      -  
      +
           size_t _number = m_extras.size();
      -    
      +
           bool configure = (m_extras_origins.size()==_number)&&(m_extras_sizes.size()==_number)?true:false;
      -      
      +
           tools_vforcit(extra,m_extras,it) {
             const extra& _extra = *it;
             unsigned int index = _extra.m_index;
             if(index>=(m_extras_sep.size())) index = 0;
      -      
      +
             separator* sep = _extra.m_sep;
             set_plotter_layout(*sep,index,configure,_extra.m_cols,_extra.m_rows,
                                ww_wc,wh_wc,m_extras_origins,m_extras_sizes,plotter_scale.value());
      -    }    
      +    }
       
         }
       protected:
      @@ -1255,13 +1255,13 @@ protected:
                                 const std::vector& a_origins,const std::vector& a_sizes,float a_scale) {
           size_t row = a_index/a_cols;
           size_t col = a_index-a_cols*row;
      -      
      +
           float rw_wc = a_ww_wc/a_cols;
           float rh_wc = a_wh_wc/a_rows;
       
      -    matrix* _matrix = (matrix*)(a_sep)[MATRIX()];	
      +    matrix* _matrix = (matrix*)(a_sep)[MATRIX()];
           plotter* _plotter = (plotter*)(a_sep)[PLOTTER()];
      -        
      +
           if(a_configure) {
             _plotter->width = a_sizes[a_index].x();
             _plotter->height = a_sizes[a_index].y();
      @@ -1280,10 +1280,10 @@ protected:
           //_border->which = view_border.value()?(a_index==m_current?0:1):1;
           _border->which = 1;
           }
      -        
      +
           if(_plotter->shape.value()==plotter::xy) {
             _plotter->depth = min_of(rw_wc,rh_wc);
      -    } else {      
      +    } else {
             //if((rw_wc/rh_wc)>=1.0f) {
             //  _plotter->depth = rh_wc;
             //} else {
      @@ -1291,7 +1291,7 @@ protected:
             //}
             _plotter->depth = rh_wc;
           }
      -	  
      +
           if(a_configure) {
           } else {
             if(_plotter->shape.value()==plotter::xy) {
      @@ -1307,7 +1307,7 @@ protected:
               }
             }
           }
      -  }      
      +  }
       protected:
         const base_freetype& m_ttf;
       
      diff --git a/source/analysis/g4tools/include/tools/sg/plots_viewer b/source/analysis/g4tools/include/tools/sg/plots_viewer
      index 752652b581..e5865c1b05 100644
      --- a/source/analysis/g4tools/include/tools/sg/plots_viewer
      +++ b/source/analysis/g4tools/include/tools/sg/plots_viewer
      @@ -54,7 +54,7 @@ public:
         plots_viewer(const plots_viewer& a_from)
         :parent(a_from)
         ,m_camera(a_from.m_camera)
      -  ,m_plots(a_from.m_plots)  
      +  ,m_plots(a_from.m_plots)
         ,m_wps(a_from.m_out)
         {
           create_sg();
      @@ -77,7 +77,7 @@ public:
       public:
         typedef bool (*png_writer)(std::ostream&,const std::string&,
                                    unsigned char*,unsigned int,unsigned int,unsigned int);
      -  
      +
         bool write_inzb_png(png_writer a_writer,const std::string& a_file,unsigned int a_width,unsigned int a_height) {
           // for example :
           //   #include 
      @@ -104,8 +104,8 @@ public:
               *pos = (uchar)(255.0F*r);pos++;
               *pos = (uchar)(255.0F*g);pos++;
               *pos = (uchar)(255.0F*b);pos++;
      -      }    
      -    }    
      +      }
      +    }
       
           bool status = (*a_writer)(m_out,a_file,buffer,a_width,a_height,bpp);
           if(!status) {
      @@ -117,10 +117,10 @@ public:
         bool write_inzb_png(png_writer a_writer,const std::string& a_file) {
           return write_inzb_png(a_writer,a_file,width(),height());
         }
      - 
      +
         typedef bool (*jpeg_writer)(std::ostream&,const std::string&,
                                     unsigned char*,unsigned int,unsigned int,unsigned int,int);
      -  
      +
         bool write_inzb_jpeg(jpeg_writer a_writer,const std::string& a_file,unsigned int a_width,unsigned int a_height,int a_quality = 100) {
           // for example :
           //   #include 
      @@ -147,8 +147,8 @@ public:
               *pos = (uchar)(255.0F*r);pos++;
               *pos = (uchar)(255.0F*g);pos++;
               *pos = (uchar)(255.0F*b);pos++;
      -      }    
      -    }    
      +      }
      +    }
       
           bool status = (*a_writer)(m_out,a_file,buffer,a_width,a_height,bpp,a_quality);
           if(!status) {
      @@ -206,7 +206,7 @@ public:
         }
         bool write_inzb_ps_page() {return write_inzb_ps_page(width(),height());}
         bool close_inzb_ps_file() {return m_wps.close_file();}
      -  
      +
         bool write_gl2ps(const std::string& a_file,int a_gl2ps_format,unsigned int a_width,unsigned int a_height) {
           gl2ps_action action(m_gl2ps_mgr,m_out,a_width,a_height);
           action.clear_color(m_clear_color.r(),m_clear_color.g(),m_clear_color.b(),m_clear_color.a());
      diff --git a/source/analysis/g4tools/include/tools/sg/plottables b/source/analysis/g4tools/include/tools/sg/plottables
      index 78e0a04bb1..05142b2a52 100644
      --- a/source/analysis/g4tools/include/tools/sg/plottables
      +++ b/source/analysis/g4tools/include/tools/sg/plottables
      @@ -177,7 +177,7 @@ namespace sg {
       class plottable_text : public virtual plotprim {
         typedef plotprim parent;
       public:
      -  TOOLS_SCLASS(plottable_text)  
      +  TOOLS_SCLASS(plottable_text)
       public: //tools::sg::plotprim
         virtual void* cast(const std::string& a_class) const {
           if(void* p = cmp_cast(this,a_class)) {return p;}
      @@ -267,7 +267,7 @@ public:
       class plottable_box : public virtual plotprim {
         typedef plotprim parent;
       public:
      -  TOOLS_SCLASS(plottable_box)  
      +  TOOLS_SCLASS(plottable_box)
       public: //tools::sg::plotprim
         virtual void* cast(const std::string& a_class) const {
           if(void* p = cmp_cast(this,a_class)) {return p;}
      @@ -326,7 +326,7 @@ public:
       class plottable_ellipse : public virtual plotprim {
         typedef plotprim parent;
       public:
      -  TOOLS_SCLASS(plottable_ellipse)  
      +  TOOLS_SCLASS(plottable_ellipse)
       public: //tools::sg::plotprim
         virtual void* cast(const std::string& a_class) const {
           if(void* p = cmp_cast(this,a_class)) {return p;}
      @@ -393,7 +393,7 @@ namespace sg {
       class plottable_img : public virtual plotprim {
         typedef plotprim parent;
       public:
      -  TOOLS_SCLASS(plottable_img)  
      +  TOOLS_SCLASS(plottable_img)
       public: //tools::sg::plotprim
         virtual void* cast(const std::string& a_class) const {
           if(void* p = cmp_cast(this,a_class)) {return p;}
      diff --git a/source/analysis/g4tools/include/tools/sg/plotter b/source/analysis/g4tools/include/tools/sg/plotter
      index 4a89763db9..b3dfbd3d88 100644
      --- a/source/analysis/g4tools/include/tools/sg/plotter
      +++ b/source/analysis/g4tools/include/tools/sg/plotter
      @@ -63,13 +63,13 @@ public:
         sf top_margin;     //PAW YMGU
       
         sf depth;
      -  sf down_margin;    
      +  sf down_margin;
         sf up_margin;
       
      -  sf title_up;  
      -  sf title_to_axis;  
      -  sf title_height;  
      -  sf title_automated;  
      +  sf title_up;
      +  sf title_to_axis;
      +  sf title_height;
      +  sf title_automated;
         sf_enum title_hjust;
         sf_string title; //output if title_automated.
       
      @@ -82,7 +82,7 @@ public:
         sf colormap_attached;
         sf colormap_axis_visible;
       
      -  // Wanted axes parameters. 
      +  // Wanted axes parameters.
         // They are not necessary realized on the sg::axis nodes.
         sf x_axis_enforced;
         sf x_axis_automated;
      @@ -116,7 +116,7 @@ public:
         sf title_box_x_margin; //in percent of width. From left.
         sf title_box_y_margin; //in percent of height. From top.
       
      -  sf func2D_borders_visible;  
      +  sf func2D_borders_visible;
       
         // used with shape xyz
         sf theta;  //in degrees.
      @@ -139,7 +139,7 @@ public:
         mf_enum legends_origin_unit;
         mf_vec legends_size; //overall legend boxes size.
         mf_string legends_string;
      -  
      +
         ////////////////////////////////////////////////////////////////
         ////////////////////////////////////////////////////////////////
         ////////////////////////////////////////////////////////////////
      @@ -158,25 +158,25 @@ public:
         sf curve_number_of_points;
       
         sf data_light_on_automated;
      -  
      +
         // for gopaw :
         sf primitives_enforced;
      -  sf inner_frame_enforced;  
      +  sf inner_frame_enforced;
         // to be implemented :
      -  sf top_axis_visible;  
      -  sf right_axis_visible;  
      +  sf top_axis_visible;
      +  sf right_axis_visible;
         sf superpose_bins;
      -  //sf grid_visible;  
      +  //sf grid_visible;
         // For contours :
         sf number_of_levels;
         mf levels;
         //sf frozen;
      -  //sf ttfScale;  
      +  //sf ttfScale;
         //sf wallEnforced;
         //sf gridEnforced;
         //SoMFString infos; //Output
         //SoMFString legend; //Output
      -  
      +
       public:
         virtual const desc_fields& node_desc_fields() const {
           TOOLS_FIELD_DESC_NODE_CLASS(tools::sg::plotter)
      @@ -192,20 +192,20 @@ public:
             TOOLS_ARG_FIELD_DESC(down_margin),
             TOOLS_ARG_FIELD_DESC(up_margin),
             TOOLS_ARG_FIELD_DESC(colormap_visible),  //10
      -      
      +
             TOOLS_ARG_FIELD_DESC_ENUMS_BEG(colormap_axis_labeling,2)
               TOOLS_ARG_ENUM(cells),
               TOOLS_ARG_ENUM(min_max)
             TOOLS_ARG_FIELD_DESC_ENUMS_END,
      -      
      +
             TOOLS_ARG_FIELD_DESC(colormap_attached),
             TOOLS_ARG_FIELD_DESC(colormap_axis_visible),
       
             TOOLS_ARG_FIELD_DESC(title_up),
      -      TOOLS_ARG_FIELD_DESC(title_to_axis), 
      +      TOOLS_ARG_FIELD_DESC(title_to_axis),
             TOOLS_ARG_FIELD_DESC(title_height),
             TOOLS_ARG_FIELD_DESC(title_automated),
      -      
      +
             TOOLS_ARG_FIELD_DESC_ENUMS_BEG(title_hjust,3)
               "left",left,
               "center",center,
      @@ -247,12 +247,12 @@ public:
             TOOLS_ARG_FIELD_DESC(tau),
       
             TOOLS_ARG_FIELD_DESC(legends_automated),
      -      
      +
             TOOLS_ARG_FIELD_DESC_ENUMS_BEG(legends_origin,2)
               "unit_percent",unit_percent,
               "unit_axis",unit_axis
             TOOLS_ARG_FIELD_DESC_ENUMS_END,
      -      
      +
             TOOLS_ARG_FIELD_DESC(legends_origin_unit),
             TOOLS_ARG_FIELD_DESC(legends_size),
             TOOLS_ARG_FIELD_DESC(legends_string), //50
      @@ -266,20 +266,20 @@ public:
       
             TOOLS_ARG_FIELD_DESC(xy_depth),
             TOOLS_ARG_FIELD_DESC(curve_number_of_points),
      -      
      +
             TOOLS_ARG_FIELD_DESC(number_of_levels),
             TOOLS_ARG_FIELD_DESC(levels),
      -      
      +
             TOOLS_ARG_FIELD_DESC(data_light_on_automated),
      -      
      +
             TOOLS_ARG_FIELD_DESC(primitives_enforced),
             TOOLS_ARG_FIELD_DESC(inner_frame_enforced),
      -      
      +
             TOOLS_ARG_FIELD_DESC(title_box_width), //60
             TOOLS_ARG_FIELD_DESC(title_box_height),
             TOOLS_ARG_FIELD_DESC(title_box_x_margin),
             TOOLS_ARG_FIELD_DESC(title_box_y_margin)   //63
      -      
      +
           );
           return s_v;
         }
      @@ -301,12 +301,12 @@ public:
          {tools_vforit(style,m_left_hatch_style,it) {if((*it).touched()) return true;}}
          {tools_vforit(style,m_right_hatch_style,it) {if((*it).touched()) return true;}}
          {tools_vforit(style,m_legend_style,it) {if((*it).touched()) return true;}}
      -	    
      +
           return false;
         }
         virtual void reset_touched() {
           parent::reset_touched();
      -    
      +
           background_style().reset_touched();
           title_style().reset_touched();
           infos_style().reset_touched();
      @@ -337,11 +337,11 @@ private:
           add_field(&down_margin);
           add_field(&up_margin);
       
      -    add_field(&title_up);  
      -    add_field(&title_to_axis);  
      -    add_field(&title_height);  
      -    add_field(&title_automated);  
      -    add_field(&title_hjust);  
      +    add_field(&title_up);
      +    add_field(&title_to_axis);
      +    add_field(&title_height);
      +    add_field(&title_automated);
      +    add_field(&title_hjust);
           add_field(&title);
       
           add_field(&x_axis_enforced);
      @@ -375,7 +375,7 @@ private:
           add_field(&title_box_height);
           add_field(&title_box_x_margin);
           add_field(&title_box_y_margin);
      -    
      +
           add_field(&func2D_borders_visible);
           add_field(&theta);
           add_field(&phi);
      @@ -438,7 +438,7 @@ public: //style
           data_light_on_automated = a_from.data_light_on_automated;
           primitives_enforced = a_from.primitives_enforced;
           inner_frame_enforced = a_from.inner_frame_enforced;
      -    
      +
           ////////////////////////////////////////////
           ////////////////////////////////////////////
           ////////////////////////////////////////////
      @@ -465,12 +465,12 @@ public: //style
           m_y_axis = a_from.m_y_axis;
           m_z_axis = a_from.m_z_axis;
           m_cmap_axis = a_from.m_cmap_axis;
      -    
      +
           */
           ////////////////////////////////////////////
           ////////////////////////////////////////////
           ////////////////////////////////////////////
      -  
      +
           m_background_style = a_from.m_background_style;
           m_title_style = a_from.m_title_style;
           m_infos_style = a_from.m_infos_style;
      @@ -490,19 +490,19 @@ public: //style
       
         void reset_style(bool a_geom = false) {
           //reset fields that are considered as part of the style.
      -    
      +
           //::printf("debug : tools::sg::plotter::reset_style :\n");
      -    
      +
           shape_automated = true;
           shape = xy;
      -        
      +
           xy_depth = 0.01f;
           curve_number_of_points = 100;
           ////////////////////////////////////////////
           value_top_margin = 0.1f; //percent.  // CERN-PAW seems to have 0.1F and CERN-ROOT 0.05F.
           value_bottom_margin = 0.0f; //percent.
           value_bins_with_entries = true; //gopaw uses false.
      -     
      +
           infos_what = s_infos_what_def();
           infos_width = 0.3f;
           //infos height is automatic.
      @@ -538,7 +538,7 @@ public: //style
           float XLAB = 1.4F * xfac;  //0.07  //x distance of y title to data frame.
           float YLAB = 0.8F * yfac;  //0.04  //y distance of x title to data frame.
           float ASIZ = 0.28F * yfac; //0.014 // axis title (label) character size.
      -  
      +
           float YHTI = 1.2F * yfac;  //0.06  //y distance of title to x axis.
           float TSIZ = 0.28F * yfac; //0.014 //title character size
       
      @@ -592,19 +592,19 @@ public: //style
             m_cmap_axis.title_to_axis.value(XLAB);
             m_cmap_axis.title_height.value(ASIZ);
       
      -    } else { //xyz    
      +    } else { //xyz
             m_x_axis.tick_length.value(XTIC);
             m_x_axis.label_to_axis.value(YVAL);
             m_x_axis.label_height.value(VSIZ);
             m_x_axis.title_to_axis.value(YLAB);
             m_x_axis.title_height.value(ASIZ);
      -    
      +
             m_y_axis.tick_length.value(XTIC);
             m_y_axis.label_to_axis.value(YVAL);
             m_y_axis.label_height.value(VSIZ);
             m_y_axis.title_to_axis.value(YLAB);
             m_y_axis.title_height.value(ASIZ);
      -    
      +
             m_z_axis.tick_length.value(YTIC);
             m_z_axis.label_to_axis.value(XVAL);
             m_z_axis.label_height.value(VSIZ);
      @@ -615,11 +615,11 @@ public: //style
             m_cmap_axis.label_to_axis.value(YVAL);
             m_cmap_axis.label_height.value(VSIZ);
             m_cmap_axis.title_to_axis.value(YLAB);
      -      m_cmap_axis.title_height.value(ASIZ);    
      +      m_cmap_axis.title_height.value(ASIZ);
       
      -    }  
      +    }
       
      -    } 
      +    }
       
           title_automated = true;
           title.value().clear();
      @@ -663,7 +663,7 @@ public: //style
           data_light_on_automated = true;
           primitives_enforced = false;
           inner_frame_enforced = false;
      -  
      +
           ////////////////////////////////////////////
           // setup styles :
           ////////////////////////////////////////////
      @@ -712,9 +712,9 @@ public: //style
             (*it).modeling = modeling_markers(); //for gopaw.
           }}
          {tools_vforit(style,m_left_hatch_style,it) {(*it) = style();(*it).visible = false;}}
      -   {tools_vforit(style,m_right_hatch_style,it) {(*it) = style();(*it).visible = false;}}    
      +   {tools_vforit(style,m_right_hatch_style,it) {(*it) = style();(*it).visible = false;}}
          {tools_vforit(style,m_legend_style,it) {(*it) = style();(*it).visible = false;}}
      -    
      +
         }
       
         void gopaw_reset_style() {
      @@ -723,7 +723,7 @@ public: //style
             (*it).modeling = modeling_top_lines();
             (*it).marker_size = 5; //for bins1D of profile.
           }}
      -    
      +
          {tools_vforit(style,m_errors_style,it) {(*it) = style();(*it).visible = false;}}
          {tools_vforit(style,m_func_style,it) (*it) = style();}
          {tools_vforit(style,m_points_style,it) {
      @@ -731,7 +731,7 @@ public: //style
             (*it).modeling = modeling_markers(); //for gopaw.
           }}
          {tools_vforit(style,m_left_hatch_style,it) {(*it) = style();(*it).visible = false;}}
      -   {tools_vforit(style,m_right_hatch_style,it) {(*it) = style();(*it).visible = false;}}    
      +   {tools_vforit(style,m_right_hatch_style,it) {(*it) = style();(*it).visible = false;}}
          {tools_vforit(style,m_legend_style,it) {(*it) = style();(*it).visible = false;}}
         }
       
      @@ -963,7 +963,7 @@ public: //style
             //legends_string
             //legends_color
             //legends_string mf_string
      -      //legends_color mf_vec 
      +      //legends_color mf_vec
       
             } else {
               a_out << "tools::sg::plotter::set_from_style : unknown key " << key << "." << std::endl;
      @@ -971,7 +971,7 @@ public: //style
           }
           return true;
         }
      -  
      +
       protected:
         bool s2axis(const std::string& a_s,sg::axis*& a_axis) {
                if(a_s=="x_axis")        {a_axis = &(x_axis());return true;}
      @@ -1112,7 +1112,7 @@ public:
             a_out << " " << (*itd).name() << ", class " << (*itd).cls() << std::endl;
           }}
           a_out << std::endl;
      -    
      +
           a_out << "plotter data available styles :" << std::endl;
           a_out << " bins_style., class style" << std::endl;
           a_out << " errors_style., class style" << std::endl;
      @@ -1122,7 +1122,7 @@ public:
           a_out << " right_hatch_style., class style" << std::endl;
           a_out << " legend_style., class style" << std::endl;
           a_out << std::endl;
      -    
      +
           a_out << "plotter available styles :" << std::endl;
           a_out << " title_style, class text_style" << std::endl;
           a_out << " infos_style, class text_style" << std::endl;
      @@ -1132,14 +1132,14 @@ public:
           a_out << " grid_style, class style" << std::endl;
           a_out << " wall_style, class style" << std::endl;
           a_out << std::endl;
      -    
      +
           a_out << "plotter available axes :" << std::endl;
           a_out << " x_axis" << std::endl;
           a_out << " y_axis" << std::endl;
           a_out << " z_axis" << std::endl;
           a_out << " colormap_axis" << std::endl;
           a_out << std::endl;
      -    
      +
           a_out << "plotter axis available styles :" << std::endl;
           a_out << " title_style, class text_style" << std::endl;
           a_out << " labels_style, class text_style" << std::endl;
      @@ -1147,7 +1147,7 @@ public:
           a_out << " line_style, class line_style" << std::endl;
           a_out << " ticks_style, class line_style" << std::endl;
           a_out << std::endl;
      -    
      +
           a_out << "plotter style class fields :" << std::endl;
          {style _style;
           const std::vector& fds = _style.node_desc_fields();
      @@ -1155,7 +1155,7 @@ public:
             a_out << " " << (*itd).name() << ", class " << (*itd).cls() << std::endl;
           }}
           a_out << std::endl;
      -    
      +
           a_out << "plotter text_style class fields :" << std::endl;
          {text_style _style;
           const std::vector& fds = _style.node_desc_fields();
      @@ -1163,7 +1163,7 @@ public:
             a_out << " " << (*itd).name() << ", class " << (*itd).cls() << std::endl;
           }}
           a_out << std::endl;
      -    
      +
           a_out << "plotter line_style class fields :" << std::endl;
          {line_style _style;
           const std::vector& fds = _style.node_desc_fields();
      @@ -1187,20 +1187,20 @@ public:
           }
           m_group.render(a_action);
         }
      -  virtual void pick(pick_action& a_action) { 
      +  virtual void pick(pick_action& a_action) {
           if(touched()) {
             update_sg(a_action.out());
             reset_touched();
           }
           nodekit_pick(a_action,m_group,this);
         }
      -  virtual void search(search_action& a_action) { 
      -    node::search(a_action);
      -    if(a_action.done()) return;
      +  virtual void search(search_action& a_action) {
           if(touched()) {
             update_sg(a_action.out());
             reset_touched();
           }
      +    node::search(a_action);
      +    if(a_action.done()) return;
           m_group.search(a_action);
         }
         virtual void bbox(bbox_action& a_action) {
      @@ -1273,7 +1273,7 @@ public:
         ,title_box_height(default_title_box_height())     //percent of height
         ,title_box_x_margin(default_title_box_x_margin()) //percent of width
         ,title_box_y_margin(default_title_box_y_margin()) //percent of height
      -  
      +
         ,func2D_borders_visible(true)
         ,theta(30)
         ,phi(30)
      @@ -1312,7 +1312,7 @@ public:
         ,m_shape(xy)
         {
           m_cmaps[style_default_colormap::s_default()] = style_default_colormap(); //costly
      -  
      +
           add_fields();
           reset_style(true);
       
      @@ -1376,7 +1376,7 @@ public:
         ,title_box_height(a_from.title_box_height)
         ,title_box_x_margin(a_from.title_box_x_margin)
         ,title_box_y_margin(a_from.title_box_y_margin)
      -  
      +
         ,func2D_borders_visible(a_from.func2D_borders_visible)
         ,theta(a_from.theta)
         ,phi(a_from.phi)
      @@ -1410,7 +1410,7 @@ public:
         ,m_z_axis(m_ttf)
       
         ,m_etc_sep(a_from.m_etc_sep)
      -  
      +
         ,m_shape(a_from.m_shape)
       
         ,m_bins_style(a_from.m_bins_style)
      @@ -1428,7 +1428,7 @@ public:
         ,m_wall_style(a_from.m_wall_style)
         ,m_inner_frame_style(a_from.m_inner_frame_style)
         ,m_grid_style(a_from.m_grid_style)
      -  ,m_cmaps(a_from.m_cmaps)    
      +  ,m_cmaps(a_from.m_cmaps)
         {
           add_fields();
       
      @@ -1497,7 +1497,7 @@ public:
           title_box_height = a_from.title_box_height;
           title_box_x_margin = a_from.title_box_x_margin;
           title_box_y_margin = a_from.title_box_y_margin;
      -    
      +
           func2D_borders_visible = a_from.func2D_borders_visible;
           theta = a_from.theta;
           phi = a_from.phi;
      @@ -1522,7 +1522,7 @@ public:
           inner_frame_enforced = a_from.inner_frame_enforced;
       
           m_etc_sep = a_from.m_etc_sep;
      -    
      +
           m_bins_style = a_from.m_bins_style;
           m_errors_style = a_from.m_errors_style;
           m_func_style = a_from.m_func_style;
      @@ -1546,7 +1546,7 @@ public:
           m_cmap_axis = a_from.m_cmap_axis;
       
           m_cmaps = a_from.m_cmaps;
      -    
      +
           clear_plottables();
           clear_primitives();
           clear_todels();
      @@ -1600,11 +1600,11 @@ public:
             a_names.push_back(object->name());
           }
         }
      -  
      +
       public: //public
         const torche& data_light() const {return m_data_light;}
         torche& data_light() {return m_data_light;}
      -  
      +
         matrix& tsf() {return m_tsf;}
       
         const separator& etc_sep() const {return m_etc_sep;}
      @@ -1636,7 +1636,7 @@ public: //public
           std::vector::iterator it;
           for(it=m_plottables.begin();it!=m_plottables.end();) {
             plottable* object = *it;
      -      if(object && safe_cast(*object)) {        
      +      if(object && safe_cast(*object)) {
               it = m_plottables.erase(it);
               delete object;
               found = true;
      @@ -1848,13 +1848,13 @@ public: //public
           float YMGU = top_margin;
           float hData = YSIZ-YMGL-YMGU;
           a_out[1] = hData*a_pos[1];}
      -  
      +
          {float ZSIZ = depth;
           float ZMGD = down_margin;
           float ZMGU = up_margin;
           float dData = ZSIZ-ZMGD-ZMGU;
           a_out[2] = dData*a_pos[2];}
      -  
      +
           return true;
         }
       
      @@ -1880,7 +1880,7 @@ public: //public
             return false;
           }
           a_vp[1] = (hData*a_pos[1] + YMGL)/YSIZ;}
      -  
      +
          {float ZSIZ = depth;
           float ZMGD = down_margin;
           float ZMGU = up_margin;
      @@ -1890,14 +1890,14 @@ public: //public
             return false;
           }
           a_vp[2] = (dData*a_pos[2] + ZMGD)/ZSIZ;}
      -  
      +
           return true;
         }
       
         bool vp_2_data_frame(const vec3f& a_vp,vec3f& a_pos) const {
           // a_vp is in viewport/screen coordinates (in [0,1]).
           // a_pos is in data frame NDC coordinates.
      -  
      +
          {float XSIZ = width;
           float XMGL = left_margin;
           float XMGR = right_margin;
      @@ -1907,7 +1907,7 @@ public: //public
             return false;
           }
           a_pos[0] = (a_vp[0]*XSIZ - XMGL)/wData;}
      -  
      +
          {float YSIZ = height;
           float YMGL = bottom_margin;
           float YMGU = top_margin;
      @@ -1917,7 +1917,7 @@ public: //public
             return false;
           }
           a_pos[1] = (a_vp[1]*YSIZ - YMGL)/hData;}
      -  
      +
          {float ZSIZ = depth;
           float ZMGD = down_margin;
           float ZMGU = up_margin;
      @@ -1927,16 +1927,16 @@ public: //public
             return false;
           }
           a_pos[2] = (a_vp[2]*ZSIZ - ZMGD)/dData;}
      -  
      +
           return true;
         }
       
         bool data_frame_2_axis(const vec3f& aDF,vec3f& a_pos) const {
           // aDF is in data area coordinates. In [0,1][0,1][0,1].
           // a_pos is in axes coordinates.
      -  
      +
           // Assume that axes min,max,is_log are up to date.
      -  
      +
          {float mn = m_x_axis.minimum_value;
           float mx = m_x_axis.maximum_value;
           bool lg = m_x_axis.is_log;
      @@ -1945,7 +1945,7 @@ public: //public
             mx = fpow(10,mx);
           }
           a_pos[0] = verify_log_inv(aDF[0],mn,mx-mn,lg);}
      -  
      +
          {float mn = m_y_axis.minimum_value;
           float mx = m_y_axis.maximum_value;
           bool lg = m_y_axis.is_log;
      @@ -1954,7 +1954,7 @@ public: //public
             mx = fpow(10,mx);
           }
           a_pos[1] = verify_log_inv(aDF[1],mn,mx-mn,lg);}
      -  
      +
          {float mn = m_z_axis.minimum_value;
           float mx = m_z_axis.maximum_value;
           bool lg = m_z_axis.is_log;
      @@ -1963,16 +1963,16 @@ public: //public
             mx = fpow(10,mx);
           }
           a_pos[2] = verify_log_inv(aDF[2],mn,mx-mn,lg);}
      -  
      +
           return true;
         }
       
         bool axis_2_data_frame(const vec3f& a_pos,vec3f& aDF) const {
           // a_pos is in axes coordinates.
           // aDF in data area coordinate. In [0,1][0,1][0,1].
      -  
      +
           // Assume that axes min,max,logScale are up to date.
      -  
      +
          {float mn = m_x_axis.minimum_value;
           float mx = m_x_axis.maximum_value;
           if(mx==mn) {
      @@ -1996,7 +1996,7 @@ public: //public
             mx = flog10(mx);
           }
           aDF[0] = verify_log(a_pos[0],mn,mx-mn,lg);}
      -  
      +
          {float mn = m_y_axis.minimum_value;
           float mx = m_y_axis.maximum_value;
           if(mx==mn) {
      @@ -2020,7 +2020,7 @@ public: //public
             mx = flog10(mx);
           }
           aDF[1] = verify_log(a_pos[1],mn,mx-mn,lg);}
      -  
      +
          {float mn = m_z_axis.minimum_value;
           float mx = m_z_axis.maximum_value;
           if(mx==mn) {
      @@ -2044,10 +2044,10 @@ public: //public
             mx = flog10(mx);
           }
           aDF[2] = verify_log(a_pos[2],mn,mx-mn,lg);}
      -  
      +
           return true;
         }
      -  
      +
         bool axis_2_vp(const vec3f& a_pos,vec3f& a_vp) const {
           // a_pos is in axes coordinates.
           // a_vp is in viewport/screen coordinates (in [0,1]).
      @@ -2060,7 +2060,7 @@ public: //public
           // a_vp is in viewport/screen coordinates (in [0,1]).
           // a_pos is in axes coordinates.
           vec3f d; // In data area coordinate. In [0,1][0,1][0,1].
      -    if(!vp_2_data_frame(a_vp,d)) return false;  
      +    if(!vp_2_data_frame(a_vp,d)) return false;
           return data_frame_2_axis(d,a_pos);
         }
       
      @@ -2078,19 +2078,19 @@ public:
           m_x_axis.labels_style().color = a_color;
           m_x_axis.title_style().color = a_color;
           m_x_axis.mag_style().color = a_color;
      -  
      +
           m_y_axis.line_style().color = a_color;
           m_y_axis.ticks_style().color = a_color;
           m_y_axis.labels_style().color = a_color;
           m_y_axis.title_style().color = a_color;
           m_y_axis.mag_style().color = a_color;
      -  
      +
           m_z_axis.line_style().color = a_color;
           m_z_axis.ticks_style().color = a_color;
           m_z_axis.labels_style().color = a_color;
           m_z_axis.title_style().color = a_color;
           m_z_axis.mag_style().color = a_color;
      -    
      +
           m_cmap_axis.line_style().color = a_color;
           m_cmap_axis.ticks_style().color = a_color;
           m_cmap_axis.labels_style().color = a_color;
      @@ -2102,11 +2102,11 @@ public:
           m_x_axis.labels_style().scale = a_v;
           m_x_axis.title_style().scale = a_v;
           m_x_axis.mag_style().scale = a_v;
      -  
      +
           m_y_axis.labels_style().scale = a_v;
           m_y_axis.title_style().scale = a_v;
           m_y_axis.mag_style().scale = a_v;
      -  
      +
           m_z_axis.labels_style().scale = a_v;
           m_z_axis.title_style().scale = a_v;
           m_z_axis.mag_style().scale = a_v;
      @@ -2122,33 +2122,33 @@ public:
           m_z_axis.line_style().pattern = a_v;
           m_cmap_axis.line_style().pattern = a_v;
         }
      -  
      +
         void set_axes_line_width(int a_v){
           m_x_axis.line_style().width = float(a_v);
           m_y_axis.line_style().width = float(a_v);
           m_z_axis.line_style().width = float(a_v);
           m_cmap_axis.line_style().width = float(a_v);
      -  
      +
           m_x_axis.ticks_style().width = float(a_v);
           m_y_axis.ticks_style().width = float(a_v);
           m_z_axis.ticks_style().width = float(a_v);
           m_cmap_axis.ticks_style().width = float(a_v);
         }
      -  
      +
         void set_axes_tick_length(float a_v){
           m_x_axis.tick_length = a_v;
           m_y_axis.tick_length = a_v;
           m_z_axis.tick_length = a_v;
           m_cmap_axis.tick_length = a_v;
         }
      -  
      +
         void set_axes_title_height(float a_v){
           m_x_axis.title_height = a_v;
           m_y_axis.title_height = a_v;
           m_z_axis.title_height = a_v;
           m_cmap_axis.title_height = a_v;
         }
      -  
      +
         void set_axes_label_height(float a_v){
           m_x_axis.label_height = a_v;
           m_y_axis.label_height = a_v;
      @@ -2160,11 +2160,11 @@ public:
           m_x_axis.labels_style().font_modeling = a_v;
           m_x_axis.title_style().font_modeling = a_v;
           m_x_axis.mag_style().font_modeling = a_v;
      -  
      +
           m_y_axis.labels_style().font_modeling = a_v;
           m_y_axis.title_style().font_modeling = a_v;
           m_y_axis.mag_style().font_modeling = a_v;
      -  
      +
           m_z_axis.labels_style().font_modeling = a_v;
           m_z_axis.title_style().font_modeling = a_v;
           m_z_axis.mag_style().font_modeling = a_v;
      @@ -2229,12 +2229,12 @@ protected:
           float XMGL = left_margin;
           float XMGR = right_margin;
           float wData = XSIZ-XMGL-XMGR;
      -  
      +
           float YSIZ = height;
           float YMGL = bottom_margin;
           float YMGU = top_margin;
           float hData = YSIZ-YMGL-YMGU;
      -  
      +
           float ZSIZ = depth;
           float ZMGD = down_margin;
           float ZMGU = up_margin;
      @@ -2245,24 +2245,24 @@ protected:
       
           if(m_shape==xy) {
             // in rep primitives (0,0) is the lower left corner
      -      // of the data area square; 
      +      // of the data area square;
             mtx.mul_translate(-XSIZ/2+XMGL,-YSIZ/2+YMGL,0);
       
             if(data_light_on_automated.value()) m_data_light.on = false;
             vec3f dir(0,0,-1);
             m_data_light.direction = dir;
      -      
      +
           } else { //xyz
             //printf("debug : update_layout : X : %g %g %g %g\n",
             //  XSIZ,XMGL,XMGR,wData);
             //printf("debug : update_layout : Y : %g %g %g %g\n",
             //  YSIZ,YMGL,YMGU,hData);
      -  
      +
             // global transformation (to have a "lego" layout) :
      -      //  translate so that the center of the scene 
      -      //  is the center of the data area cube; 
      +      //  translate so that the center of the scene
      +      //  is the center of the data area cube;
             //  then rotate to have lego 3D layout.
      -  
      +
             mtx.mul_rotate(1,0,0,theta*fdeg2rad());
             mtx.mul_rotate(0,1,0,phi*fdeg2rad());
             mtx.mul_rotate(1,0,0,tau*fdeg2rad());
      @@ -2271,7 +2271,7 @@ protected:
             // In CERN-PAW, it is the projection
             // which fits in the (XSIZ,XMGL,XMGR)/(YSIZ,YMGL,YMGU)
             // page setup.
      -      
      +
             rotf r1(vec3f(1,0,0),theta * fdeg2rad());
             rotf r2(vec3f(0,1,0),phi * fdeg2rad());
             rotf r3(vec3f(1,0,0),tau * fdeg2rad());
      @@ -2279,7 +2279,7 @@ protected:
             rotf r = r1*r2*r3;
             mat4f m;
             r.value(m);
      -      
      +
             float xmn = -0.5F*wData;
             float ymn = -0.5F*hData;
             float zmn = -0.5F*dData;
      @@ -2323,7 +2323,7 @@ protected:
       
             //cube setup (driven by hData) :
             mtx.mul_scale(hData/xfac,hData/yfac,hData/zfac);
      -  
      +
             mtx.mul_translate(-wData/2,-hData/2,-dData/2); //Applied first.
       
             if(data_light_on_automated.value()) m_data_light.on = true;
      @@ -2369,10 +2369,10 @@ public:
             } else {
               if(safe_cast(*object)) {
                 nplottables++;
      -          nbins++; 
      +          nbins++;
               } else if(safe_cast(*object)) {
                 nplottables++;
      -          nbins++; 
      +          nbins++;
       
               } else if(safe_cast(*object)) {
                 nplottables++;
      @@ -2383,10 +2383,10 @@ public:
       
               } else if(safe_cast(*object)) {
                 nplottables++;
      -          nfunc++; 
      +          nfunc++;
               } else if(safe_cast(*object)) {
                 nplottables++;
      -          nfunc++; 
      +          nfunc++;
               }
             }
           }}
      @@ -2395,7 +2395,7 @@ public:
           m_bins_cmaps.resize(nbins,0);
           m_points_cmaps.resize(npoints,0);
           m_func_cmaps.resize(nfunc,0);
      -    
      +
           // even if !nplottables we continue.
       
           m_infos_title_sep.clear();
      @@ -2403,7 +2403,7 @@ public:
           m_legend_strings.clear();
       
           bool superpose = false;
      -    /*uuuu 
      +    /*uuuu
           bool superpose = superposeBins;
           if(superpose) {
             // Check compatibility of bins :
      @@ -2422,15 +2422,15 @@ public:
                     (xmx!=binsloop->get_axis_max()) ) {
                   superpose = false;
                   break;
      -          }       
      -        }       
      +          }
      +        }
               if(superpose) { //Compatible bins :
                 if(y_axis_automated) {
                   // Correct Y axis if XY shape and superposing bins.
                   // Get min/max
                   float bmin,bmax;
                   getHeight(nbins1D-1,f_bins1DList,bins1DListSwMnMx,0,bmin,bmax);
      -            bmin = bmax;            
      +            bmin = bmax;
                   for(int ibin=1;ibin=xmax) {
               DUMP_UPDATE_WHAT(a_out,"bad min/max x axes");
      @@ -2518,12 +2518,12 @@ public:
               DUMP_UPDATE_WHAT(a_out,"bad min/max z axes");
             }
           }
      -  
      +
          {float XSIZ = width;
           float XMGL = left_margin;
           float XMGR = right_margin;
           float wData = XSIZ-XMGL-XMGR;
      -  
      +
           float YSIZ = height;
           float YMGL = bottom_margin;
           float YMGU = top_margin;
      @@ -2550,21 +2550,21 @@ public:
               DUMP_UPDATE_WHAT(a_out,"null d data area");
             }
           }}
      -  
      +
           float dx   = xmax - xmin;
           float dy   = ymax - ymin;
           float dz   = zmax - zmin;
      -  
      +
           rep_box boxX(xmin,dx,xlog);
           rep_box boxY(ymin,dy,ylog);
           rep_box boxZ(zmin,dz,zlog);
      -  
      +
           ////////////////////////////////////
           /// data : /////////////////////////
           ////////////////////////////////////
           if(m_shape==xy) {
             //a_out << "tools::sg::plotter::update_sg : shape xy :" << std::endl;
      -      
      +
             // first data plane is at zz = _zoffset().
       
             float zz = 0;
      @@ -2594,11 +2594,11 @@ public:
                 style* _left_hatch_style = merge_left_hatch_style(ibins,*object);
                 style* _right_hatch_style = merge_right_hatch_style(ibins,*object);
                 style* error_style = merge_errors_style(ibins,*object);
      -	  
      +
                 update_bins1D_xy(a_out,*b1,
                                  *data_style,*_left_hatch_style,*_right_hatch_style,*error_style,ibins,
                                  superpose,boxX,boxY,zz);
      -			   
      +
                 if(legends_automated.value()) {
                   m_legend_strings.push_back(object->legend());
                   style& _style = legend_style(m_legend_strings.size()-1);
      @@ -2606,7 +2606,7 @@ public:
                   _style.marker_style = data_style->marker_style;
                   _style.marker_size = data_style->marker_size;
                 }
      -	  
      +
                 delete data_style;
                 delete _left_hatch_style;
                 delete _right_hatch_style;
      @@ -2617,7 +2617,7 @@ public:
                 //a_out << "tools::sg::plotter::update_sg : bins2D." << std::endl;
                 zz += _zoffset(); // ibins = 0 back (PAW convention).
                 style* data_style = merge_bins_style(ibins,*object);
      -	  
      +
                 update_bins2D_xy(a_out,*b2,*data_style,ibins,boxX,boxY,boxZ,zz);
       
                 if(legends_automated.value()) {
      @@ -2670,7 +2670,7 @@ public:
                 delete data_style;
                 ifunc++;
               }
      -      }}     
      +      }}
       
             ////////////////////////////////////
             /// pointss ////////////////////////
      @@ -2681,7 +2681,7 @@ public:
               plottable* object = *it;
               if(!object) continue;
               if(points2D* p2 = safe_cast(*object)) {
      -     
      +
                 zz += _zoffset(); // ibins = 0 back (PAW convention).
                 style* data_style = merge_points_style(ipoints,*object);
                 update_points2D_xy(a_out,*p2,*data_style,boxX,boxY,zz);
      @@ -2751,7 +2751,7 @@ public:
               plottable* object = *it;
               if(!object) continue;
               if(points3D* p3 = safe_cast(*object)) {
      -     
      +
                 style* data_style = merge_points_style(ipoints,*object);
                 update_points3D_xyz(a_out,*p3,*data_style,boxX,boxY,boxZ);
       
      @@ -2788,14 +2788,14 @@ public:
               m_x_axis.update_sg(a_out); // So that the grid be correct.
               m_x_axis.reset_touched();
             } else {
      -	if(!nplottables) {       
      +	if(!nplottables) {
       	  m_x_axis.width = 0;
       	} else {
                 update_x_axis_2D();
                 update_axis(a_out,m_x_axis,m_x_axis_data);
       	}
             }
      -      
      +
             if(y_axis_enforced.value()) {
               update_y_axis_2D();
               m_y_axis.minimum_value = y_axis_min.value();
      @@ -2837,14 +2837,14 @@ public:
               m_x_axis.update_sg(a_out); // So that the grid be correct.
               m_x_axis.reset_touched();
             } else {
      -	if(!nplottables) {       
      +	if(!nplottables) {
       	  m_x_axis.width = 0;
       	} else {
                 update_x_axis_3D();
                 update_axis(a_out,m_x_axis,m_x_axis_data);
       	}
             }
      -      
      +
             if(y_axis_enforced.value()) {
               update_y_axis_3D();
               m_y_axis.minimum_value = y_axis_min.value();
      @@ -2883,7 +2883,7 @@ public:
             // because legends may be placed relative to it.
             update_infos(a_out);
           }
      -    m_legend_sep.clear();    
      +    m_legend_sep.clear();
       
           if(!legends_automated) {
             m_legend_strings = legends_string.values();
      @@ -2899,7 +2899,7 @@ public:
           m_title_sep.clear();
           if(nplottables) update_title();
       
      -    m_title_box_sep.clear();    
      +    m_title_box_sep.clear();
           if(nplottables) update_title_box();
       
           m_inner_frame_sep.clear();
      @@ -2908,8 +2908,8 @@ public:
               update_inner_frame_XY();
             } else {
               update_inner_frame_XYZ();
      -      }	
      -    }	
      +      }
      +    }
       
           m_grid_sep.clear();
           if(nplottables) {
      @@ -2917,8 +2917,8 @@ public:
               update_grid_XY();
             } else {
               update_grid_XYZ();
      -      }	
      -    }	
      +      }
      +    }
       
           m_cmap_axis.width = 0;
           m_cmap_cells_sep.clear();
      @@ -2943,7 +2943,7 @@ public:
           if(a_is_log && (a_Sw_mn<=0) ) { //let data_axis.adjust() do something.
             a_min = a_Sw_mn;
             a_max = a_Sw_mx;
      -      return;    
      +      return;
           }
           float mn;
           if(a_is_log) {
      @@ -2958,7 +2958,7 @@ public:
                 float log_Sw_mn = flog10(a_Sw_mn);
                 mn = fpow(10,log_Sw_mn)*(1.0f-0.4f);
               }
      -      }      
      +      }
           } else {
             if(value_bottom_margin.value()!=0) {
               mn = a_Sw_mn - (a_Sw_mx-a_Sw_mn)*value_bottom_margin;
      @@ -2976,7 +2976,7 @@ public:
                 mn = a_Sw_mn; //min bin will be on x axis.
       	}
             }
      -    } 
      +    }
           a_min = mn;
       
           float mx;
      @@ -2988,42 +2988,42 @@ public:
               mx = fpow(10,log_mx);
             } else {
               mx = a_Sw_mx; //max bin will be on top of frame (then not visible if same color).
      -      }      
      +      }
           } else {
             mx = a_Sw_mx + (a_Sw_mx-mn)*value_top_margin;
           //mx = a_Sw_mx + (a_Sw_mx-a_Sw_mn)*value_top_margin; //not compatible with gopaw.
           }
           a_max = mx;
      -  }    
      +  }
       
         void update_axes_data(std::ostream& a_out){
           m_x_axis_data.set_min_value(0);
           m_x_axis_data.set_max_value(0);
           m_x_axis_data.set_is_log(x_axis_is_log);
      -  
      +
           m_y_axis_data.set_min_value(0);
           m_y_axis_data.set_max_value(0);
           m_y_axis_data.set_is_log(y_axis_is_log);
      -  
      +
           m_z_axis_data.set_min_value(0);
           m_z_axis_data.set_max_value(0);
           m_z_axis_data.set_is_log(z_axis_is_log);
      -  
      +
           if(!x_axis_automated) { //def = true
             m_x_axis_data.set_min_value(x_axis_min);
             m_x_axis_data.set_max_value(x_axis_max);
           }
      -  
      +
           if(!y_axis_automated) {
             m_y_axis_data.set_min_value(y_axis_min);
             m_y_axis_data.set_max_value(y_axis_max);
           }
      -  
      +
           if(!z_axis_automated) {
             m_z_axis_data.set_min_value(z_axis_min);
             m_z_axis_data.set_max_value(z_axis_max);
           }
      -  
      +
           bins1D* b1;
           bins2D* b2;
       
      @@ -3033,15 +3033,15 @@ public:
           points2D* p2;
           points3D* p3;
       
      -    if(first_bins(b1,b2)) { 
      -      
      +    if(first_bins(b1,b2)) {
      +
             if(b1) {
      -  
      +
               if(x_axis_automated) {
                 m_x_axis_data.set_min_value(b1->axis_min());
                 m_x_axis_data.set_max_value(b1->axis_max());
               }
      -        
      +
               if(y_axis_automated) {
               //::printf("debug : value %g %g %d : is log %d\n",
               //    value_bottom_margin.value(),value_top_margin.value(),value_bins_with_entries.value(),
      @@ -3054,22 +3054,22 @@ public:
               //::printf("debug : mn mx %g %g\n",mn,mx);
                 m_y_axis_data.set_min_value(mn);
                 m_y_axis_data.set_max_value(mx);
      -  
      +
                 m_y_axis_data.adjust();
               //::printf("debug : adjusted : mn mx %g %g\n",mn,mx);
               }
      -        
      +
             } if(b2) {
               if(x_axis_automated) {
                 m_x_axis_data.set_min_value(b2->x_axis_min());
                 m_x_axis_data.set_max_value(b2->x_axis_max());
               }
      -  
      +
               if(y_axis_automated) {
                 m_y_axis_data.set_min_value(b2->y_axis_min());
                 m_y_axis_data.set_max_value(b2->y_axis_max());
               }
      -  
      +
               if(z_axis_automated) {
                 float Sw_mn,Sw_mx;
                 b2->bins_Sw_range(Sw_mn,Sw_mx,value_bins_with_entries.value());
      @@ -3086,12 +3086,12 @@ public:
               // Unusual case.
             }*/
       
      -    } else if(first_points(p2,p3)) { 
      +    } else if(first_points(p2,p3)) {
             if(p2) {
               if(x_axis_automated) {
                 m_x_axis_data.set_min_value(p2->x_axis_min());
                 m_x_axis_data.set_max_value(p2->x_axis_max());
      -        }      
      +        }
               if(y_axis_automated) {
                 float ymn = p2->y_axis_min();
                 float ymx = p2->y_axis_max();
      @@ -3106,23 +3106,23 @@ public:
               if(x_axis_automated) {
                 m_x_axis_data.set_min_value(p3->x_axis_min());
                 m_x_axis_data.set_max_value(p3->x_axis_max());
      -        }      
      -        
      +        }
      +
               if(y_axis_automated) {
                 m_y_axis_data.set_min_value(p3->y_axis_min());
                 m_y_axis_data.set_max_value(p3->y_axis_max());
               }
      -        
      +
               if(z_axis_automated) {
                 m_z_axis_data.set_min_value(p3->z_axis_min());
                 m_z_axis_data.set_max_value(p3->z_axis_max());
               }
             }
       
      -    } else if(first_func(f1,f2)) { 
      +    } else if(first_func(f1,f2)) {
       
             if(f1) {
      -  
      +
               if(x_axis_automated) {
                 float xmn = f1->x_min();
                 float xmx = f1->x_max();
      @@ -3133,24 +3133,19 @@ public:
                 m_x_axis_data.set_min_value(xmn);
                 m_x_axis_data.set_max_value(xmx);
               }
      -        
      +
               if(y_axis_automated) {
      -          //same logic as update_func_xy
      -          float xmn = f1->x_min();
      -          float xmx = f1->x_max();
      -          if(xmx<=xmn) {
      -            xmn = m_x_axis_data.min_value();
      -            xmx = m_x_axis_data.max_value();
      -          }
      +          float xmn = m_x_axis_data.min_value();
      +          float xmx = m_x_axis_data.max_value();
                 unsigned int nstp = f1->x_steps();
                 nstp = nstp <=0 ? curve_number_of_points.value(): nstp;
      -  
      -          float df = (xmx - xmn)/nstp;      
      +
      +          float df = (xmx - xmn)/nstp;
                 bool problem = false;
      -          float vmin;        
      +          float vmin;
                 if(!f1->value(xmn,vmin)) problem = true;
                 float vmax = vmin;
      -          for(unsigned int ibin=0;ibin<=nstp;ibin++) { 
      +          for(unsigned int ibin=0;ibin<=nstp;ibin++) {
                   float xx = xmn + ibin * df;
                   float val;
                   if(!f1->value(xx,val)) problem = true;
      @@ -3166,7 +3161,7 @@ public:
                 m_y_axis_data.set_max_value(vmax);
                 m_y_axis_data.adjust();
               }
      -        
      +
             } else if(f2) {
               if(x_axis_automated) {
                 float xmn = f2->x_min();
      @@ -3178,7 +3173,7 @@ public:
                 m_x_axis_data.set_min_value(xmn);
                 m_x_axis_data.set_max_value(xmx);
               }
      -  
      +
               if(y_axis_automated) {
                 float ymn =  f2->y_min();
                 float ymx =  f2->y_max();
      @@ -3189,37 +3184,28 @@ public:
                 m_y_axis_data.set_min_value(ymn);
                 m_y_axis_data.set_max_value(ymx);
               }
      -        
      +
               if(z_axis_automated) {
      -  
      -          //same logic as updateFunction_XYZ
      -          float xmn = f2->x_min();
      -          float xmx = f2->x_max();
      -          if(xmx<=xmn) {
      -            xmn = m_x_axis_data.min_value();
      -            xmx = m_x_axis_data.max_value();
      -          }
      +
      +          float xmn = m_x_axis_data.min_value();
      +          float xmx = m_x_axis_data.max_value();
                 int nx = f2->x_steps();
      -          nx = nx <=0 ? 20 : nx;
      -  
      -          float ymn = f2->y_min();
      -          float ymx = f2->y_max();
      -          if(ymx<=ymn) {
      -            ymn = m_y_axis_data.min_value();
      -            ymx = m_y_axis_data.max_value();
      -          }
      +          nx = nx <=0 ? curve_number_of_points.value() : nx;
      +
      +          float ymn = m_y_axis_data.min_value();
      +          float ymx = m_y_axis_data.max_value();
                 int ny = f2->y_steps();
      -          ny = ny <=0 ? 20 : ny;
      -  
      +          ny = ny <=0 ? curve_number_of_points.value() : ny;
      +
                 float dfx = (xmx - xmn)/nx;
                 float dfy = (ymx - ymn)/ny;
      -          
      +
                 bool problem = false;
                 float vmin;
                 if(!f2->value(xmn,ymn,vmin)) problem = true;
                 float vmax = vmin;
      -          for(int jbin=ny-1;jbin>=0;jbin--) { 
      -            for(int ibin=nx-1;ibin>=0;ibin--) { 
      +          for(int jbin=ny-1;jbin>=0;jbin--) {
      +            for(int ibin=nx-1;ibin>=0;ibin--) {
                     float xx = xmn + ibin * dfx;
                     float yy = ymn + jbin * dfy;
                     float val;
      @@ -3237,7 +3223,7 @@ public:
                 m_z_axis_data.set_max_value(vmax);
                 m_z_axis_data.adjust();
               }
      -      }  
      +      }
           }
         }
         void update_shape(){
      @@ -3254,7 +3240,7 @@ public:
           a_axis.update_sg(a_out); // So that the grid be correct.
           a_axis.reset_touched();
         }
      -  
      +
         void update_x_axis_2D(){
           float XSIZ = width;
           float XMGL = left_margin;
      @@ -3272,17 +3258,17 @@ public:
             style.hjust = center;
             style.vjust = top;
           }}
      -    
      +
          {text_style& style = m_x_axis.title_style();
           style.x_orientation = vec3f(1,0,0);
           style.y_orientation = vec3f(0,1,0);
           style.hjust = m_x_axis.title_hjust;
           style.vjust = top;}
      -  
      -   {text_style& style = m_x_axis.mag_style(); 
      +
      +   {text_style& style = m_x_axis.mag_style();
           style.hjust = left;
           style.vjust = bottom;}
      -  
      +
           m_x_axis_matrix.set_translate(0,0,_zaxis());
         }
       
      @@ -3303,14 +3289,14 @@ public:
             style.hjust = right;
             style.vjust = middle;
           }}
      -    
      +
          {text_style& style = m_y_axis.title_style();
           style.x_orientation = vec3f(1,0,0);
           style.y_orientation = vec3f(0,-1,0);
           style.hjust = m_y_axis.title_hjust;
           style.vjust = bottom;}
      -  
      -   {text_style& style = m_y_axis.mag_style(); 
      +
      +   {text_style& style = m_y_axis.mag_style();
           style.x_orientation = vec3f(0,1,0);
           style.y_orientation = vec3f(1,0,0);
           style.hjust = right;
      @@ -3345,17 +3331,17 @@ public:
             style.hjust = center;
             style.vjust = top;
           }}
      -    
      +
          {text_style& style = m_x_axis.title_style();
           style.x_orientation = vec3f(1,0,0);
           style.y_orientation = vec3f(0,1,0);
           style.hjust = right;
           style.vjust = top;}
      -  
      -   //{text_style& style = m_x_axis.mag_style(); 
      +
      +   //{text_style& style = m_x_axis.mag_style();
          // style.hjust = left;
          // style.vjust = bottom;}
      -  
      +
           m_x_axis_matrix.set_rotate(1,0,0,fhalf_pi());
       
         }
      @@ -3378,14 +3364,14 @@ public:
             style.hjust = center;
             style.vjust = top;
           }}
      -    
      +
          {text_style& style = m_y_axis.title_style();
           style.x_orientation = vec3f(-1,0,0);
           style.y_orientation = vec3f( 0,1,0);
           style.hjust = left;
           style.vjust = top;}
      -  
      -   //{text_style& style = m_y_axis.mag_style(); 
      +
      +   //{text_style& style = m_y_axis.mag_style();
          // style.x_orientation = vec3f(0,1,0);
          // style.y_orientation = vec3f(1,0,0);
          // style.hjust = right;
      @@ -3413,14 +3399,14 @@ public:
             style.hjust = right;
             style.vjust = middle;
           }}
      -    
      +
          {text_style& style = m_z_axis.title_style();
           style.x_orientation = vec3f(0,1,0);
           style.y_orientation = vec3f(1,0,0);
           style.hjust = right;
           style.vjust = bottom;}
      -  
      -   //{text_style& style = m_z_axis.mag_style(); 
      +
      +   //{text_style& style = m_z_axis.mag_style();
          // style.hjust = center;
          // style.vjust = bottom;}
       
      @@ -3433,12 +3419,12 @@ public:
       
         void update_cmap(std::ostream& a_out,const base_colormap& a_cmap){
           if(!colormap_visible.value()) return;
      -  
      +
           size_t valn = a_cmap.valn();
           if(!valn) return;
           size_t coln = a_cmap.colorn();
           if(!coln) return;
      -  
      +
           float XSIZ = width;
           float XMGL = left_margin;
           float XMGR = right_margin;
      @@ -3469,14 +3455,14 @@ public:
               mtx.set_translate(-XSIZ/2+XMGL,-YSIZ/2+YMGL,zz); //applied first
             }
           }}
      -  
      +
           float w  = XMGR*0.3F;
           float xx = wData+XMGR*0.1F;
           float zz = 0;
      -  
      +
           float yy = 0;
           float h = hcmap/float(coln);
      -  
      +
           // colored cells :
          {m_cmap_cells_sep.clear();
           m_cmap_cells_sep.add(new normal);
      @@ -3493,7 +3479,7 @@ public:
             vtxs->add(xx + w  ,yy     ,zz);
             vtxs->add(xx + w  ,yy + h ,zz);
             vtxs->add(xx      ,yy + h ,zz);
      -    
      +
             yy += h;
           }}
       
      @@ -3517,11 +3503,11 @@ public:
           vtxs->add(xx + w  ,hcmap ,zz);
           vtxs->add(xx      ,hcmap ,zz);
           vtxs->add(xx      ,0     ,zz);}
      -  
      +
           if(!colormap_axis_visible.value()) {
             m_cmap_axis.width = 0;
           } else {
      -  
      +
           // right axis :
           mat4f& mtx = m_cmap_axis_matrix.mtx.value();
           mtx.set_identity();
      @@ -3549,7 +3535,7 @@ public:
           //m_cmap_axis.label_to_axis = 0.01F;
           //m_cmap_axis.label_height = 0.10F;
           //m_cmap_axis.ttf_scale = 10.0F;
      -  
      +
           if(safe_cast(a_cmap)) {
             if(colormap_axis_labeling.value()==cells) {
               if((valn+1)==coln) { //    ...  
      @@ -3595,13 +3581,13 @@ public:
             m_cmap_axis.minimum_value = a_cmap.value(0);
             m_cmap_axis.maximum_value = a_cmap.value(uint32(valn)-1);
           }
      -  
      +
          {text_style& style = m_cmap_axis.labels_style();
           style.x_orientation = vec3f(0,-1,0);
           style.y_orientation = vec3f(1,0,0);
           style.hjust = left;
           style.vjust = middle;}
      -  
      +
          {text_style& style = m_cmap_axis.mag_style();
           style.hjust = center;
           style.vjust = bottom;}
      @@ -3625,7 +3611,7 @@ public:
             }
           //}
         }
      -  
      +
       protected: //vis bins
         void update_bins1D_xy(std::ostream& a_out,
                               const bins1D& a_bins,
      @@ -3646,16 +3632,16 @@ protected: //vis bins
           //char sid[128];
           //::sprintf(sid,"tools::sg::bins1D/0x%lx",
           //  (unsigned long)const_cast(&a_bins));
      -  
      +
         //bool hbe = a_bins.has_entries_per_bin();
       
           float bmin = 0;
           float bmax = 0;
      -    
      +
           size_t xnbin = a_bins.bins();
           std::vector bins(xnbin);
          {bool first = true;
      -    for(size_t ibin=0;ibinnlimit?true:false);
               //}}
      -  
      +
               bool _bar_chart = false;
      -    
      +
               //char sid_bin[128];
               //::sprintf(sid_bin,"SbBin1D/0x%lx",(unsigned long)&a_bins);
      -  
      +
               if((modeling==modeling_points())||(modeling==modeling_markers())){
                 //if(oneNode) {
                 //  rep_bins1D_xy_points_one(binsNode,aGraphicStyle,
      @@ -3752,7 +3738,7 @@ protected: //vis bins
                                       bins,a_box_x,a_box_y,a_zz //,std::string(sid_bin)
                                       );
                 //}
      -  
      +
               } else if(modeling==modeling_wire_boxes()) {
                 //if(oneNode) {
                 //  rep_bins1D_xy_wire_boxes_one(binsNode,aGraphicStyle,barChart,
      @@ -3768,22 +3754,22 @@ protected: //vis bins
                 //} else {
                   rep_bins1D_xy_wire_boxes(a_data_style,*(m_bins_cmaps[a_index]),bins,a_box_x,a_box_y,a_zz,true);
                 //}
      -  
      +
               } else if(modeling==modeling_lines()){
                 rep_bins1D_xy_lines_one(a_data_style,bins,a_box_x,a_box_y,a_zz/*,std::string(sid)*/);
               } else if(modeling==modeling_curve()){
                 rep_bins1D_xy_curve_one(a_out,a_data_style,bins,a_box_x,a_box_y,a_zz/*,std::string(sid)*/);
      -	  
      +
               } else if(modeling==modeling_top_lines_boxes()) { //gopaw. pawex24, k_plus.
                 style _style;_style.color = colorf_white();
      -          rep_bins1D_xy_boxes(_style,*(m_bins_cmaps[a_index]),bins,a_box_x,a_box_y,a_zz);	  
      +          rep_bins1D_xy_boxes(_style,*(m_bins_cmaps[a_index]),bins,a_box_x,a_box_y,a_zz);
                 rep_bins1D_xy_top_lines(a_data_style,*(m_bins_cmaps[a_index]),bins,a_box_x,a_box_y,a_zz+_zhatch());
      -	  
      +
               } else { //default modeling==modeling_top_lines()
                 rep_bins1D_xy_top_lines(a_data_style,*(m_bins_cmaps[a_index]),bins,a_box_x,a_box_y,a_zz/*,std::string(sid_bin)*/);
      -	  
      +
               }
      -      
      +
               hatching_policy hatching = a_data_style.hatching.value();
       	//::printf("debug : bins1D %d hatching : %d\n",a_index,hatching);
               if(hatching!=hatching_none) {
      @@ -3803,14 +3789,14 @@ protected: //vis bins
                   //}
                 }
               }
      -	
      +
             } //end !is_profile.
           } //end data_style visible
      -  
      +
           // Errors :
      -    if(errors_visible) { 
      +    if(errors_visible) {
             std::vector bars(xnbin);
      -      for(size_t ibin=0;ibin=int(xn))) {a_value=0;return false;}
           if((jbin<0)||(jbin>=int(yn))) {a_value=0;return false;}
      -  
      +
           float xx_0 = a_bins.bin_lower_edge_x(ibin);
           //float xe_0 = a_bins.bin_upper_edge_x(ibin);
           float xx_1 = a_bins.bin_lower_edge_x(ibin+1);
           //float xe_1 = a_bins.bin_upper_edge_x(ibin+1);
      -  
      +
           float yy_0 = a_bins.bin_lower_edge_y(jbin);
           //float ye_0 = a_bins.bin_upper_edge_y(jbin);
           float yy_1 = a_bins.bin_lower_edge_y(jbin+1);
           //float ye_1 = a_bins.bin_upper_edge_y(jbin+1);
      -  
      +
           float val1 = a_bins.bin_Sw(ibin,jbin);
           float val2 = a_bins.bin_Sw(ibin+1,jbin);
           //float val3 = a_bins.getBinSumOfWeights(ibin+1,jbin+1);
           float val4 = a_bins.bin_Sw(ibin,jbin+1);
      -  
      +
           // Interpolate :
           vec3f p1(xx_0,yy_0,val1);
           vec3f p2(xx_1,yy_0,val2);
           //vec3f p3(xx_1,yy_1,val3);
           vec3f p4(xx_0,yy_1,val4);
      -  
      +
           //FIXME : case of (x,y) in (p2,p3,p4)
      -  
      +
           plane _plane(p1,p2,p4);
           vec3f pt;
           line _line(vec3f(a_X,a_Y,0),vec3f(a_X,a_Y,10));
           _plane.intersect(_line,pt);
      -  
      +
           a_value = pt[2];
           return true;
         }
      @@ -3888,7 +3874,7 @@ protected: //vis bins
           if(!bins2D_to_func(*(func->m_bins2D),(float)a_X,(float)a_Y,value)) func->m_problem = true;
           return value;
         }
      -  
      +
         static double log_bins2D_to_contour(double a_X,double a_Y,void* aData) {
           SbFunc* func =(SbFunc*)aData;
           if( (a_Xm_limits_in[0])||
      @@ -3900,7 +3886,7 @@ protected: //vis bins
           if(!bins2D_to_func(*(func->m_bins2D),(float)a_X,(float)a_Y,value)) func->m_problem = true;
           return take_log(value);
         }
      -  
      +
         void update_bins2D_xy(std::ostream& a_out,
                               const bins2D& a_bins,
                               const style& a_data_style,
      @@ -3911,35 +3897,35 @@ protected: //vis bins
                               float a_zz){
       
           //a_out << "tools::sg::update_bins2D_xy : begin :" << std::endl;
      -    
      +
           if(!a_data_style.visible) return;
       
           //a_out << "tools::sg::update_bins2D_xy : visible :" << std::endl;
      -    
      +
           unsigned int xnbin = a_bins.x_bins();
           unsigned int ynbin = a_bins.y_bins();
       
           const std::string& modeling = a_data_style.modeling;
       
           if( (modeling==modeling_curve()) || (modeling==modeling_filled_curve()) ){
      -	
      +
             a_out << "tools::sg::update_bins2D_xy : modeling_curve :" << std::endl;
      -      
      +
             painting_policy painting = a_data_style.painting;
      -      
      +
             float zmin = a_box_z.m_pos;
             float dz = a_box_z.m_width;
             bool zlog = a_box_z.m_log;
      -  
      +
             float xmn =  m_x_axis_data.min_value();
             float xmx =  m_x_axis_data.max_value();
             float ymn =  m_y_axis_data.min_value();
             float ymx =  m_y_axis_data.max_value();
      -  
      +
             clist_contour list_contour;
             //int nFir = 32;
             int nFir = 128;
      -      list_contour.set_first_grid(nFir,nFir); //Default : 32,32 
      +      list_contour.set_first_grid(nFir,nFir); //Default : 32,32
             //int nSec = 256;
             int nSec = 512; //slower than 256
             list_contour.set_secondary_grid(nSec,nSec); //Default : 256,256.
      @@ -3947,9 +3933,9 @@ protected: //vis bins
             double limits[4];
             // User limits :
             limits[0] = xmn;
      -      limits[1] = xmx;    
      -      limits[2] = ymn;    
      -      limits[3] = ymx;    
      +      limits[1] = xmx;
      +      limits[2] = ymn;
      +      limits[3] = ymx;
       
             SbFunc sbFunc;
             sbFunc.m_func2D = 0;
      @@ -3975,7 +3961,7 @@ protected: //vis bins
             sbFunc.m_limits[3] = limits[3];
       
             list_contour.set_limits(limits);
      -  
      +
             if(levels.size()) {
               size_t zn = levels.size();
               std::vector zs(zn);
      @@ -3990,7 +3976,7 @@ protected: //vis bins
               for(unsigned int zi=0;zi<=zn;zi++) zs[zi] = zmin + zi * zd;
               list_contour.set_planes(zs);
             }
      -      
      +
             if(zlog)
               list_contour.set_field_fcn(log_bins2D_to_contour,(void*)&sbFunc);
             else
      @@ -3998,11 +3984,11 @@ protected: //vis bins
       
       #ifdef INLIBS_SG_PLOTTER_TIMING
             atime _start = atime::now();
      -#endif      
      +#endif
             list_contour.ccontour::generate();
       #ifdef INLIBS_SG_PLOTTER_TIMING
             a_out << "tools::sg::update_bins2D_xy : contour generate elapsed " << atime::elapsed(_start) << "." << std::endl;
      -      _start = atime::now();      
      +      _start = atime::now();
       #endif
       
             if(!list_contour.compact_strips ()) {
      @@ -4010,7 +3996,7 @@ protected: //vis bins
             } else {
       #ifdef INLIBS_SG_PLOTTER_TIMING
               a_out << "tools::sg::update_bins2D_xy : contour compact strips elapsed " << atime::elapsed(_start) << "." << std::endl;
      -#endif	      
      +#endif
               if( (painting==painting_by_level) || (painting==painting_by_value) ){
                 m_bins_cmaps[a_index] = new by_value_colormap(a_out,m_cmaps,a_data_style.color_mapping);
                 //bool zlog = a_box_z.m_log;
      @@ -4018,7 +4004,7 @@ protected: //vis bins
               } else {
                 m_bins_cmaps[a_index] = new const_colormap(a_data_style.color);
               }
      -  
      +
               if(modeling==modeling_filled_curve()) {
                 rep_contour_xy_filled(a_out,a_data_style,
                                       painting,*(m_bins_cmaps[a_index]),
      @@ -4028,14 +4014,14 @@ protected: //vis bins
                                painting,*(m_bins_cmaps[a_index]),
                                list_contour,a_box_x,a_box_y,a_box_z,a_zz /*,std::string(sid.c_str())*/);
               }
      -  
      +
             }
      -  
      +
             if(sbFunc.m_problem) {
               a_out << "tools::sg::plotter::updateFunction_XY(SbPlottableFunction2D) : "
       	      << "problem when getting some function value." << std::endl;
             }
      -      
      +
           } else {
       
             bool hbe = a_bins.has_entries_per_bin();
      @@ -4046,16 +4032,16 @@ protected: //vis bins
             std::vector bins;
            {bool first = true;
             for(int jbin=ynbin-1;jbin>=0;jbin--) {
      -        for(int ibin=xnbin-1;ibin>=0;ibin--) { 
      +        for(int ibin=xnbin-1;ibin>=0;ibin--) {
                 if(hbe && (a_bins.bin_entries(ibin,jbin)<=0)) continue;
      -    
      +
                 float val = a_bins.bin_Sw(ibin,jbin);
      -	  
      +
                 float xx = a_bins.bin_lower_edge_x(ibin);
                 float xe = a_bins.bin_upper_edge_x(ibin);
                 float yy = a_bins.bin_lower_edge_y(jbin);
                 float ye = a_bins.bin_upper_edge_y(jbin);
      -              
      +
                 bins.push_back(rep_bin2D(xx,xe,yy,ye,val,ibin,jbin));
       
                 if(first) {
      @@ -4091,7 +4077,7 @@ protected: //vis bins
               } else if(painting==painting_violet_to_red) {
                 m_bins_cmaps[a_index] = new violet_to_red_colormap(bmin,bmax,50);
               }
      -      } else {        
      +      } else {
               m_bins_cmaps[a_index] = new const_colormap(a_data_style.color);
             }
       
      @@ -4106,30 +4092,30 @@ protected: //vis bins
       
             } else if(modeling==modeling_wire_boxes()) {
               //a_out << "tools::sg::update_bins2D_xy : modeling_wire_boxes :" << std::endl;
      -	
      +
               // one node decision :
             /*bool oneNode = false;
              {int nlimit = aGraphicStyle.multiNodeLimit.value();
               if(nlimit!=NoLimit) {
                 oneNode = (number>nlimit?true:false);
               }}*/
      -    
      +
             /*if(oneNode) {
                 rep_bins2D_xy_wire_box_one(a_data_style,bins,a_box_x,a_box_y,bmin,bmax,std::string(sid));
               } else {*/
                 rep_bins2D_xy_wire_box(a_data_style,bins,a_box_x,a_box_y,bmin,bmax,a_zz/*,std::string(sid_bin)*/);
               //}
      -	
      +
             } else if(modeling==modeling_texts()) {
               //a_out << "tools::sg::update_bins2D_xy : modeling_wire_texts :" << std::endl;
      -	
      +
               // one node decision :
             //bool oneNode = false;
            //{int nlimit = aGraphicStyle.multiNodeLimit.value();
             // if(nlimit!=NoLimit) {
             //   oneNode = (number>nlimit?true:false);
             //}}
      -    
      +
               //if(oneNode) {
               //  rep_bins2D_xy_text_one(binsNode,
               //                        aGraphicStyle,
      @@ -4137,17 +4123,17 @@ protected: //vis bins
               //} else {
                 rep_bins2D_xy_text(a_data_style,bins,a_box_x,a_box_y/*,std::string(sid_bin)*/);
              //}
      -       
      +
             } else { //default rep modeling==modeling_boxes()
               //a_out << "tools::sg::update_bins2D_xy : modeling_ :" << std::endl;
       
               rep_bins2D_xy_box(a_data_style,bins,a_box_x,a_box_y,bmin,bmax,a_zz);
      -	
      +
             }
       
       
           } //end if modeling
      -  
      +
         }
       
         void update_func1D_xy(std::ostream& a_out,const func1D& a_func,
      @@ -4156,18 +4142,18 @@ protected: //vis bins
           //a_out << "debug : tools::sg::plotter::update_func1D_xy : modeling " << a_style.modeling.value() << " :" << std::endl;
       
           if(!a_style.visible) return;
      -    
      +
           float xmn = m_x_axis_data.min_value();
           float xmx = m_x_axis_data.max_value();
      -    
      +
           unsigned int nstp = a_func.x_steps();
           nstp = nstp <=0 ? curve_number_of_points.value() : nstp;
      -      
      -    float df = (xmx - xmn)/nstp;      
      -    
      +
      +    float df = (xmx - xmn)/nstp;
      +
           bool problem = false;
           std::vector points(nstp+1);
      -    for(unsigned int ibin=0;ibin<=nstp;ibin++) { 
      +    for(unsigned int ibin=0;ibin<=nstp;ibin++) {
             float xx = xmn + ibin * df;
             float val;
             if(!a_func.value(xx,val)) problem = true;
      @@ -4178,7 +4164,7 @@ protected: //vis bins
                   << " problem when getting some function value."
                   << std::endl;
           }
      -  
      +
           const std::string& modeling = a_style.modeling;
       
           if(modeling==modeling_points()){
      @@ -4192,7 +4178,7 @@ protected: //vis bins
       
               separator* sep = new separator;
               m_func_sep.add(sep);
      -	
      +
               rgba* mat = new rgba();
               mat->color = a_style.color;
               sep->add(mat);
      @@ -4201,7 +4187,7 @@ protected: //vis bins
               ds->style = draw_points;
               ds->point_size = a_style.point_size;
               sep->add(ds);
      -	
      +
               vtxs->mode = gl::points();
               sep->add(vtxs);
             } else {
      @@ -4219,7 +4205,7 @@ protected: //vis bins
       
               separator* sep = new separator;
               m_func_sep.add(sep);
      -	
      +
               rgba* mat = new rgba();
               mat->color = a_style.color;
               sep->add(mat);
      @@ -4239,7 +4225,7 @@ protected: //vis bins
             clip_polyline_2D(points,a_box_x,a_box_y,pts);
             if(pts.size()) {
               //a_out << "debug : tools::sg::plotter::update_func1D_xy : ptn " << pts.size() << std::endl;
      -	
      +
               separator* sep = new separator;
               m_func_sep.add(sep);
       
      @@ -4258,7 +4244,7 @@ protected: //vis bins
             } else {
               delete vtxs;
             }
      -    }  
      +    }
         }
       
         static double function_to_contour(double a_X,double a_Y,void* aData) {
      @@ -4288,43 +4274,43 @@ protected: //vis bins
                               const rep_box& a_box_x,const rep_box& a_box_y,const rep_box& a_box_z,float a_zz){
           //a_out << "debug : tools::sg::plotter::update_func2D_xy(Function2D) : begin :" << std::endl;
           if(!a_data_style.visible.value()) return;
      -    
      +
         //  std::string sid;
         // {std::string sp;
         //  if(!p2sx(&a_func,sp)){}
         //  sid = "SbFunction2D/"+sp;}
      -  
      +
           const std::string& modeling = a_data_style.modeling.getValue();
           painting_policy painting = a_data_style.painting;
      -  
      +
           if( (modeling==modeling_curve()) || (modeling==modeling_filled_curve()) ) {
      -  
      +
             //a_out << "debug : tools::sg::plotter::update_func2D_xy(Function2D) : curve." << std::endl;
      -      
      +
             float zmin = a_box_z.m_pos;
             float dz = a_box_z.m_width;
             bool zlog = a_box_z.m_log;
      -  
      +
             float xmn = m_x_axis_data.min_value();
             float xmx = m_x_axis_data.max_value();
             float ymn = m_y_axis_data.min_value();
             float ymx = m_y_axis_data.max_value();
      -  
      +
             clist_contour list_contour;
             //int nFir = 32;
             int nFir = 128;
      -      list_contour.set_first_grid(nFir,nFir); //Default : 32,32 
      +      list_contour.set_first_grid(nFir,nFir); //Default : 32,32
             //int nSec = 256;
             int nSec = 512; //slower than 256
             list_contour.set_secondary_grid(nSec,nSec); //Default : 256,256.
      -  
      +
             double limits[4];
             // User limits :
             limits[0] = xmn;
      -      limits[1] = xmx;    
      -      limits[2] = ymn;    
      -      limits[3] = ymx;    
      -  
      +      limits[1] = xmx;
      +      limits[2] = ymn;
      +      limits[3] = ymx;
      +
             SbFunc sbFunc;
             sbFunc.m_func2D = &a_func;
             sbFunc.m_problem = false;
      @@ -4333,7 +4319,7 @@ protected: //vis bins
             sbFunc.m_limits_in[1] = limits[1];
             sbFunc.m_limits_in[2] = limits[2];
             sbFunc.m_limits_in[3] = limits[3];
      -  
      +
             // Extend the grid to have some borders in order to close contours :
             int n = nSec - 2 * 10;
             double dx = (limits[1]-limits[0]) /n;
      @@ -4342,14 +4328,14 @@ protected: //vis bins
             limits[1] = limits[1] + 10 * dx;
             limits[2] = limits[2] - 10 * dy;
             limits[3] = limits[3] + 10 * dy;
      -  
      +
             sbFunc.m_limits[0] = limits[0];
             sbFunc.m_limits[1] = limits[1];
             sbFunc.m_limits[2] = limits[2];
             sbFunc.m_limits[3] = limits[3];
      -  
      +
             list_contour.set_limits(limits);
      -  
      +
             if(levels.getNum()) {
               size_t zn = levels.size();
               std::vector zs(zn);
      @@ -4364,20 +4350,20 @@ protected: //vis bins
               for(unsigned int zi=0;zi<=zn;zi++) zs[zi] = zmin + zi * zd;
               list_contour.set_planes(zs);
             }
      -  
      +
             if(zlog) {
               list_contour.set_field_fcn(log_function_to_contour,(void*)&sbFunc);
             } else {
               list_contour.set_field_fcn(function_to_contour,(void*)&sbFunc);
             }
      -  
      +
       #ifdef INLIBS_SG_PLOTTER_TIMING
             atime _start = atime::now();
      -#endif      
      +#endif
             list_contour.ccontour::generate();
      -      
      +
       #ifdef INLIBS_SG_PLOTTER_TIMING
      -      a_out << "tools::sg::update_func2D_xy : contour generate elapsed " << atime::elapsed(_start) << "." << std::endl;	    
      +      a_out << "tools::sg::update_func2D_xy : contour generate elapsed " << atime::elapsed(_start) << "." << std::endl;
             _start = atime::now();
       #endif
       
      @@ -4386,7 +4372,7 @@ protected: //vis bins
             } else {
       #ifdef INLIBS_SG_PLOTTER_TIMING
               a_out << "tools::sg::update_func2D_xy : contour compact strips elapsed " << atime::elapsed(_start) << "." << std::endl;
      -#endif  
      +#endif
               if( (painting==painting_by_level) || (painting==painting_by_value) ){
                 m_func_cmaps[a_index] = new by_value_colormap(a_out,m_cmaps,a_data_style.color_mapping.value());
                 //bool zlog = a_box_z.m_log;
      @@ -4394,7 +4380,7 @@ protected: //vis bins
               } else {
                 m_func_cmaps[a_index] = new const_colormap(a_data_style.color.value());
               }
      -        
      +
               if(modeling==modeling_filled_curve()) {
                 rep_contour_xy_filled(a_out,a_data_style,
                                       painting,*(m_func_cmaps[a_index]),
      @@ -4405,17 +4391,17 @@ protected: //vis bins
                                list_contour,a_box_x,a_box_y,a_box_z,a_zz /*,std::string(sid.c_str())*/);
               }
             }
      -  
      +
             if(sbFunc.m_problem) {
               a_out << "tools::sg::plotter::update_func2D_xy : problem when getting some function value." << std::endl;
             }
      -      
      +
         /*
           } else if(modeling==SbModeling_polygon) {
      -  
      +
             int npoint = a_func.getNumberOfPoints();
             if(npoint) {
      -  
      +
             std::vector points(npoint);
             std::vector controls;
             for(int count=0;count=2) && (points[points.size()-1]!=points[0]) ) {
               points.push_back(points[0]);
             }
      -  
      +
             project2D(points,a_box_x,a_box_y);
      -  
      +
             bool editable = a_data_style.editable.getValue();
             if(!editable) {
               clip clipper;
              {size_t ptn = points.size();
               for(size_t index=0;index plane_xy_bot(vec3f(0, 1,0),vec3f(0,0,0));
               plane plane_xy_top(vec3f(0,-1,0),vec3f(0,1,0));
               plane plane_yz_left (vec3f( 1, 0,0),vec3f(0,0,0));
               plane plane_yz_right(vec3f(-1, 0,0),vec3f(1,0,0));
      -  
      +
               clipper.execute(plane_xy_bot);
               clipper.execute(plane_xy_top);
               clipper.execute(plane_yz_left);
               clipper.execute(plane_yz_right);
      -  
      +
              {int n = clipper.getNumVertices();
               points.resize(n);
               for(int index=0;indexsetString(sid.c_str());
             functionNode->addChild(separator);
      -  
      +
             SoSeparator* sep = new SoSeparator;
             separator->addChild(sep);
      -     
      +
             sep->addChild(fStyleCache->getFilled());
             sep->addChild(fStyleCache->getNormalBindingOverall());
             sep->addChild(fStyleCache->getNormalZ());
             sep->addChild(fStyleCache->getMaterial(a_data_style.color.getValue(),a_data_style.transparency.getValue()));
      -  
      +
             SoCoordinate3* coordinate3 = new SoCoordinate3;
             coordinate3->point.setValues(0,ptn,pts);
             sep->addChild(coordinate3);
      -  
      +
             SoFaceSet* faceSet = new SoFaceSet;
             faceSet->numVertices.set1Value(0,ptn);
             sep->addChild(faceSet);
      -  
      +
             sep->addChild(fStyleCache->getLineStyle(SbLinePattern_solid,1));
             sep->addChild(fStyleCache->getMaterial(SbColor_black,0));
      -  
      +
             //NOTE : we could simply add faceSet again !
             SoLineSet* lineSet = new SoLineSet;
             lineSet->numVertices.set1Value(0,ptn);
             sep->addChild(lineSet);
      -  
      +
             if(editable) {
               SoSeparator* sep = new SoSeparator;
               separator->addChild(sep);
      -  
      +
               float scale = 0.05F;
      -  
      +
               for(int index=0;indexaddChild(sp);
      -  
      +
                 SoTransform* tsf = new SoTransform();
                 tsf->translation.setValue(pt);
                 tsf->scaleFactor.setValue(scale,scale,scale);
                 sp->addChild(tsf);
      -  
      +
                 SoPlotter_dragger* dragger =
                   new SoPlotter_dragger(*coordinate3,icontrol,scale,*this,const_cast(a_func),a_box_x,a_box_y,a_zz);
                 SoTools_setDraggerColor(*dragger,SbColor_red);
                 sp->addChild(dragger);
               }
             }
      -  
      +
             } //ptn
             } //npoint
      -  
      +
         */
           } else {
             a_out << "tools::sg::plotter::update_func2D_xy :"
                   << " modeling " << modeling
         	  << " does not apply on Functi  on2D in XY. Valid modelings ared curve, filled_curve and polygon."
      -	  << std::endl;  
      -    }  
      -  
      +	  << std::endl;
      +    }
      +
         }
       
         void update_points2D_xy(std::ostream& a_out,const points2D& a_points,const style& a_style,
      @@ -4546,7 +4532,7 @@ protected: //vis bins
             rep_points2D_xy_curve(a_out,a_style,a_points,a_box_x,a_box_y,a_zz);
           } else {
             rep_points2D_xy_points(a_out,a_style,a_points,a_box_x,a_box_y,a_zz);
      -    }  
      +    }
         }
       
         void update_points3D_xyz(std::ostream& a_out,const points3D& a_points,const style& a_style,
      @@ -4570,35 +4556,35 @@ protected: //vis bins
           func2D* f2;
           points2D* p2;
           points3D* p3;
      -    if(first_bins(b1,b2)) { 
      +    if(first_bins(b1,b2)) {
             if(b1) {
               a_s = b1->title();
             } else if(b2) {
               a_s = b2->title();
             }
      -    } else if(first_points(p2,p3)) { 
      +    } else if(first_points(p2,p3)) {
             if(p2) {
               a_s = p2->title();
             } else if(p3) {
               a_s = p3->title();
             }
      -    } else if(first_func(f1,f2)) { 
      +    } else if(first_func(f1,f2)) {
             if(f1) {
               a_s = f1->title();
             } if(f2) {
               a_s = f2->title();
      -      }  
      +      }
           }
         }
       
         void update_bins2D_xyz(std::ostream& a_out,const bins2D& a_bins,unsigned int a_index,const style& a_style,
                                const rep_box& a_box_x,const rep_box& a_box_y,const rep_box& a_box_z){
           //a_out << "tools::sg::update_bins2D_xyz : begin :" << std::endl;
      -    
      +
           if(!a_style.visible) return;
       
           //a_out << "tools::sg::update_bins2D_xyz : visible :" << std::endl;
      -    
      +
           unsigned int xnbin = a_bins.x_bins();
           unsigned int ynbin = a_bins.y_bins();
           if(!xnbin || !ynbin) return;
      @@ -4615,16 +4601,16 @@ protected: //vis bins
             std::vector bins;
            {bool first = true;
             for(int jbin=ynbin-1;jbin>=0;jbin--) {
      -        for(int ibin=xnbin-1;ibin>=0;ibin--) { 
      +        for(int ibin=xnbin-1;ibin>=0;ibin--) {
                 if(hbe && (a_bins.bin_entries(ibin,jbin)<=0)) continue;
      -    
      +
                 float val = a_bins.bin_Sw(ibin,jbin);
      -    
      +
                 float xx = a_bins.bin_lower_edge_x(ibin);
                 float xe = a_bins.bin_upper_edge_x(ibin);
                 float yy = a_bins.bin_lower_edge_y(jbin);
                 float ye = a_bins.bin_upper_edge_y(jbin);
      -              
      +
                 bins.push_back(rep_bin2D(xx,xe,yy,ye,val,ibin,jbin));
       
                 if(first) {
      @@ -4638,7 +4624,7 @@ protected: //vis bins
               }
             }}
             size_t number = bins.size();
      -      
      +
             //a_bins.bins_Sw_range(bmin,bmax,false);
       
             painting_policy painting = a_style.painting;
      @@ -4660,7 +4646,7 @@ protected: //vis bins
               } else if(painting==painting_violet_to_red) {
                 m_bins_cmaps[a_index] = new violet_to_red_colormap(bmin,bmax,50);
               }
      -      } else {        
      +      } else {
               m_bins_cmaps[a_index] = new const_colormap(a_style.color);
             }
       
      @@ -4670,37 +4656,37 @@ protected: //vis bins
       
             float bmin = 0;
             float bmax = 0;
      -    
      +
             std::vector faces((xnbin-1)*(ynbin-1));
            {bool first = true;
             size_t facei = 0;
             unsigned int xnbin_1 = xnbin-1;
             unsigned int ynbin_1 = ynbin-1;
      -      for(unsigned int jbin=0;jbin(bmin,val1);
                   bmax = mx(bmax,val1);
                 }
      -	  
      +
                 facei++;
               }
             }}
      -      
      +
             //a_bins.bins_Sw_range(bmin,bmax,false);
       
             painting_policy painting = a_style.painting;
             if((painting==painting_by_value)||(painting==painting_by_level)) {
               m_bins_cmaps[a_index] = new by_value_colormap(a_out,m_cmaps,a_style.color_mapping);
      -      } else {        
      +      } else {
               m_bins_cmaps[a_index] = new const_colormap(a_style.color);
             }
      -  
      +
             if(painting==painting_by_level) { //gopaw
               rep_top_face2D_xyz_by_level(a_style,painting,*(m_bins_cmaps[a_index]),
                                           faces,a_box_x,a_box_y,a_box_z,
                                           bmin,bmax/*,SbString(sid.c_str())*/);
               //if(a_style.area_style.value()==area_edged) {
      -        //  style gs;  
      +        //  style gs;
               //  gs.light_model = light_model_base_color();
               //  gs.line_width = 1;
               //  rep_top_face2D_xyz_line(gs,faces,a_box_x,a_box_y,a_box_z);
               //}
      -	
      +
             } else {
      -  
      +
               //bool oneNode = false;
              //{int nlimit = aGraphicStyle.multiNodeLimit.getValue();
               //if(nlimit!=NoLimit) {
               //oneNode = ((int)faces.size()>nlimit?true:false);
               //}}
      -    
      -        //if(oneNode) {       
      +
      +        //if(oneNode) {
               //repTopFaces2D_xyz_one(binsNode,aGraphicStyle,faces,a_box_x,a_box_y,a_box_z,SbString(sid.c_str()));
               //} else {
               bool zlog = a_box_z.m_log;
               if(zlog) m_func_cmaps[a_index]->set_PAW_coloring();
               rep_top_face2D_xyz(m_bins_sep,a_style,*(m_bins_cmaps[a_index]),faces,a_box_x,a_box_y,a_box_z);
      -  
      +
               if(a_style.area_style.value()==area_edged) {
      -          style gs;  
      +          style gs;
                 gs.light_model = light_model_base_color();
                 gs.line_width = 1;
                 rep_top_face2D_xyz_line(gs,faces,a_box_x,a_box_y,a_box_z/*,SbString(sid.c_str())*/);
               }
      -  
      +
               if(painting==painting_uniform) { //gopaw SURF3 (s_SURF_CONT).
      -	  
      +
                 base_colormap* cmap = new by_value_colormap(a_out,m_cmaps,a_style.color_mapping);
                 if(cmap->colorn()<=0) {
                   //a_out << "tools::sg::update_bins2D_xyz : bypass rep_contour_xy_filled." << std::endl;
                   delete cmap;
                 } else {
                   //updateBins2D_XY(a_bins,aIndex,*gs,a_box_x,a_box_y,boxZ,1.1F);
      -  
      +
                   float zmin = a_box_z.m_pos;
                   float dz = a_box_z.m_width;
                   //bool zlog = a_box_z.m_log;
      -  
      +
                   float xmn =  m_x_axis_data.min_value();
                   float xmx =  m_x_axis_data.max_value();
                   float ymn =  m_y_axis_data.min_value();
                   float ymx =  m_y_axis_data.max_value();
      -  
      +
                   clist_contour list_contour;
                   //int nFir = 32;
                   int nFir = 128;
      -            list_contour.set_first_grid(nFir,nFir); //Default : 32,32 
      +            list_contour.set_first_grid(nFir,nFir); //Default : 32,32
                   //int nSec = 256;
                   int nSec = 512;
                   list_contour.set_secondary_grid(nSec,nSec); //Default : 256,256.
      -  
      +
                   double limits[4];
                   // User limits :
                   limits[0] = xmn;
      -            limits[1] = xmx;    
      -            limits[2] = ymn;    
      -            limits[3] = ymx;    
      +            limits[1] = xmx;
      +            limits[2] = ymn;
      +            limits[3] = ymx;
       
                   SbFunc sbFunc;
                   sbFunc.m_func2D = 0;
      @@ -4817,19 +4803,19 @@ protected: //vis bins
                   //int zn = numberOfLevels.getValue();
                   size_t zn = cmap->colorn();
                   if(zn<=0) zn = 1;
      -  
      +
                   std::vector zs(zn+1);
                   float zmax = zmin + dz;
                   double zd = (zmax-zmin)/zn;
                   for(size_t zi=0;zi<=zn;zi++) zs[zi] = zmin + zi * zd;
                   list_contour.set_planes(zs);
      -  
      +
                   if(zlog) list_contour.set_field_fcn(log_bins2D_to_contour,(void*)&sbFunc);
                   else     list_contour.set_field_fcn(bins2D_to_contour,(void*)&sbFunc);
       
                   list_contour.ccontour::generate();
                   if(!list_contour.compact_strips ()) {
      -              a_out << "tools::sg::plotter::update_bins2D_xyz : clist_contour::compact_strips () : failure." << std::endl;  
      +              a_out << "tools::sg::plotter::update_bins2D_xyz : clist_contour::compact_strips () : failure." << std::endl;
                     delete cmap;
                   } else {
                     delete m_bins_cmaps[a_index];
      @@ -4840,24 +4826,24 @@ protected: //vis bins
                     transf->set_translate(0,0,1.02F);
                     transf->mul_scale(1,1,0.01F); //applied first.
       	      m_bins_sep.add(transf);
      -  
      +
                     style gs;
                     gs.light_model = light_model_base_color();
                     //FIXME gs.transparency = 0.3F;
      -  
      +
                     float ZZ = 0.0F;
       
                     rep_contour_xy_filled(a_out,gs,painting_by_level,*cmap,list_contour,
                                           a_box_x,a_box_y,a_box_z,ZZ/*,SbString(sid.c_str())*/);
                   }
                 }
      -  
      +
               } //uniform
       
             }
       
           } //end if modeling
      -  
      +
         }
       
         void update_func2D_xyz(std::ostream& a_out,
      @@ -4867,43 +4853,43 @@ protected: //vis bins
                                const rep_box& a_box_x,
                                const rep_box& a_box_y,
                                const rep_box& a_box_z){
      -    //a_out << "tools::sg::plotter::update_func2D_xyz : begin :" << std::endl;			 
      +    //a_out << "tools::sg::plotter::update_func2D_xyz : begin :" << std::endl;
           if(!a_style.visible) return;
      -    
      +
           //a_out << "tools::sg::plotter::update_func2D_xyz : visible :" << std::endl;
      -    
      +
           float xmn = m_x_axis_data.min_value();
           float xmx = m_x_axis_data.max_value();
      -    
      +
           unsigned int nx = a_func.x_steps();
           nx = !nx?20:nx;
      -  
      +
           float ymn = m_y_axis_data.min_value();
           float ymx = m_y_axis_data.max_value();
      -    
      +
           unsigned int ny = a_func.y_steps();
           ny = !ny?20:ny;
      -  
      +
           float dfx = (xmx - xmn)/nx;
           float dfy = (ymx - ymn)/ny;
      -  
      +
           //printf("debug : nx %d ny %d\n",nx,ny);
      -    
      +
           std::vector faces(nx*ny);
          {bool problem = false;
           unsigned int facei = 0;
           float* vprev = new float[2*nx];
      -    for(int jbin=ny-1;jbin>=0;jbin--) { 
      +    for(int jbin=ny-1;jbin>=0;jbin--) {
             float o1 = 0;
             float o4 = 0;
      -      for(int ibin=nx-1;ibin>=0;ibin--) { 
      -    
      +      for(int ibin=nx-1;ibin>=0;ibin--) {
      +
               float xx = xmn + ibin * dfx;
               float yy = ymn + jbin * dfy;
               float xe = xx + dfx;
               float ye = yy + dfy;
      -         
      -        // Values at the corner :    
      +
      +        // Values at the corner :
               float val1;
               if(!a_func.value(xx,yy,val1)) problem = true;
               float val2;
      @@ -4931,8 +4917,8 @@ protected: //vis bins
               vprev[2*ibin+1] = val2;
               o4 = val4;
               o1 = val1;
      -              
      -        faces[facei] = rep_top_face2D(xx,xe,yy,ye,val1,val2,val3,val4); 
      +
      +        faces[facei] = rep_top_face2D(xx,xe,yy,ye,val1,val2,val3,val4);
               facei++;
             }
           }
      @@ -4942,9 +4928,9 @@ protected: //vis bins
                   << " problem when getting some function value."
                   << std::endl;
           }}
      -  
      +
           painting_policy painting = a_style.painting;
      -  
      +
           if(painting==painting_by_value) {
             m_func_cmaps[a_index] = new by_value_colormap(a_out,m_cmaps,a_style.color_mapping);
       
      @@ -4985,17 +4971,17 @@ protected: //vis bins
           } else {
             m_func_cmaps[a_index] = new const_colormap(a_style.color);
           }
      -  
      +
         // bool oneNode = false;
         //{int nlimit = a_data_style.multiNodeLimit.getValue();
         // if(nlimit!=NoLimit) {
         //   oneNode = ((int)faces.size()>nlimit?true:false);
         //}}
      -  
      +
         //char sid[128];
         //::sprintf(sid,"SbFunction2D/0x%lx",(unsigned long)&a_func);
      -  
      -  //if(oneNode) {       
      +
      +  //if(oneNode) {
         //  repTopFaces2D_xyz_one(functionNode,a_data_style,
         //                        faces,a_box_x,a_box_y,a_box_z,std::string(sid));
         //} else
      @@ -5004,19 +4990,19 @@ protected: //vis bins
             if(zlog) m_func_cmaps[a_index]->set_PAW_coloring();
             rep_top_face2D_xyz(m_func_sep,a_style,*(m_func_cmaps[a_index]),faces,a_box_x,a_box_y,a_box_z);
           }
      -  
      +
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -    
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -    
      +
           float zmin = a_box_z.m_pos;
           float dz = a_box_z.m_width;
           bool zlog = a_box_z.m_log;
      -    
      +
          if(func2D_borders_visible.value()) {
          // border X (Y=0)
       
      @@ -5027,20 +5013,20 @@ protected: //vis bins
          {rgba* mat = new rgba();
           mat->color = colorf(0.6f,0.2f,0.2f); //brown
           sep->add(mat);}
      -  
      +
           vertices* vtxs = new vertices;
           vtxs->mode = gl::triangle_fan();
           sep->add(vtxs);
      -  
      +
           bool empty = true;
           bool problem = false;
      -  
      +
          {float xx = xmn;
           float yy = ymn;
           xx = verify_log(xx,xmin,dx,xlog);
           yy = verify_log(yy,ymin,dy,ylog);
           vtxs->add(xx,yy,0);}
      -  
      +
          {float xx = xmx;
           float yy = ymn;
           xx = verify_log(xx,xmin,dx,xlog);
      @@ -5057,26 +5043,26 @@ protected: //vis bins
           xx = verify_log(xx,xmin,dx,xlog);
           yy = verify_log(yy,ymin,dy,ylog);
           vtxs->add(xx,yy,val);}}
      -  
      -    for(int ibin=nx-1;ibin>=0;ibin--) { 
      -  
      +
      +    for(int ibin=nx-1;ibin>=0;ibin--) {
      +
             float xx = xmn + ibin * dfx;
             //float xe = xx + dfx;
             float yy = ymn;
      -         
      +
             float val;
      -     {if(!a_func.value(xx,yy,val)) problem = true;        
      +     {if(!a_func.value(xx,yy,val)) problem = true;
             val = verify_log(val,zmin,dz,zlog);
             if(val<0) val = 0;
             if(val>1) val = 1;}
      -  
      +
             xx = verify_log(xx,xmin,dx,xlog);
             yy = verify_log(yy,ymin,dy,ylog);
      -      
      +
             if((xx>=0)&&(xx<=1) && (yy>=0)&&(yy<=1) ) {
      -  
      +
               vtxs->add(xx,yy,val);
      -  
      +
               empty = false;
             }
           }
      @@ -5090,8 +5076,8 @@ protected: //vis bins
                   << " problem when getting some function value."
                   << std::endl;
           }}
      -  
      -    // border Y (X=0) 
      +
      +    // border Y (X=0)
          {separator* sep = new separator;
          {normal* nm = new normal;
           nm->vec = vec3f(-1,0,0);
      @@ -5099,50 +5085,50 @@ protected: //vis bins
          {rgba* mat = new rgba();
           mat->color = colorf(0.6f,0.2f,0.2f); //brown
           sep->add(mat);}
      -  
      +
           vertices* vtxs = new vertices;
           vtxs->mode = gl::triangle_fan();
           sep->add(vtxs);
      -  
      +
          {float xx = xmn;
           float yy = ymx;
           xx = verify_log(xx,xmin,dx,xlog);
           yy = verify_log(yy,ymin,dy,ylog);
           vtxs->add(xx,yy,0);}
      -  
      +
          {float xx = xmn;
           float yy = ymn;
           xx = verify_log(xx,xmin,dx,xlog);
           yy = verify_log(yy,ymin,dy,ylog);
           vtxs->add(xx,yy,0);}
      -  
      +
           bool empty = true;
           bool problem = false;
      -  
      -    for(unsigned int jbin=0;jbin1) val = 1;}
      -  
      +
             xx = verify_log(xx,xmin,dx,xlog);
             yy = verify_log(yy,ymin,dy,ylog);
      -              
      +
             if((xx>=0)&&(xx<=1)   &&
                (yy>=0)&&(yy<=1)   ){
      -  
      +
               vtxs->add(xx,yy,val);
      -  
      +
               empty = false;
      -  
      +
             }
           }
      -  
      +
          {float val;
          {if(!a_func.value(xmn,ymx,val)) problem = true;
           val = verify_log(val,zmin,dz,zlog);
      @@ -5164,7 +5150,7 @@ protected: //vis bins
                   << std::endl;
           }}
       
      -  
      +
           } //func2D_borders_visible
       
         }
      @@ -5178,7 +5164,7 @@ protected: //vis bins
       
           // Use the XY layout transform to position the title.
           // (Else we would have to compensate the 3D rotation
      -    //  in order to bring the title at the right position 
      +    //  in order to bring the title at the right position
           //  without rotation).
           //titleNode->addChild(layout);
       
      @@ -5215,7 +5201,7 @@ protected: //vis bins
       
           float zz = _zinfos();
       
      -    vjust vjust = bottom; 
      +    vjust vjust = bottom;
           if(!title_up) {
             yy = -title_to_axis;
             vjust = top;
      @@ -5288,24 +5274,24 @@ protected: //vis bins
           func2D* f2;
           points2D* p2;
           points3D* p3;
      -    if(first_bins(b1,b2)) { 
      +    if(first_bins(b1,b2)) {
             if(b1) {
               b1->infos(opts,a_s);
             } else if(b2) {
               b2->infos(opts,a_s);
             }
      -    } else if(first_points(p2,p3)) { 
      +    } else if(first_points(p2,p3)) {
             if(p2) {
               p2->infos(opts,a_s);
             } else if(p3) {
               p3->infos(opts,a_s);
             }
      -    } else if(first_func(f1,f2)) { 
      +    } else if(first_func(f1,f2)) {
             if(f1) {
               f1->infos(opts,a_s);
             } if(f2) {
               f2->infos(opts,a_s);
      -      }  
      +      }
           }}
           //look for fit infos :
          {tools_vforcit(plottable*,m_plottables,it) {
      @@ -5425,7 +5411,7 @@ protected: //vis bins
             const std::string& value = ws[2*index+1];
             infos->lstrings.add(name);
             infos->rstrings.add(value);
      -      //a_out << "debug : name " << sout(name) 
      +      //a_out << "debug : name " << sout(name)
             //      << " value " << sout(value) << std::endl;
           }}
       
      @@ -5473,32 +5459,32 @@ protected: //vis bins
           float zz = _zinfos();
       
           //set legends layout :
      -    if(legends_attached_to_infos) { 
      +    if(legends_attached_to_infos) {
             _tsf->set_translate(0,0,zz);
           } else {
      -      if(legends_origin_unit==unit_axis) {        
      -    
      -        // legends_origin is in axes coordinates. 
      +      if(legends_origin_unit==unit_axis) {
      +
      +        // legends_origin is in axes coordinates.
               float x = legends_origin.value()[0];
               float y = legends_origin.value()[1];
      -    
      +
               vec3f pos;
               if(!axis_2_vp(vec3f(x,y,0),pos)) {
                 //SoDebugError::postInfo("SoPlotterRegion::updateChildren",
          	    //		             "failed for %g %g.",x,y);
               } else {
                 //pos is in NDC of [0,width][0,height].
      -  
      +
                 float xx = width  * (-0.5f+pos[0]);
                 float yy = height * (-0.5f+pos[1]);
       
                 _tsf->set_translate(xx,yy,zz);
       
               }
      -    
      +
             } else { //unit_percent
      -        // legends_origin is 
      -        // the UR corner of legend region relative 
      +        // legends_origin is
      +        // the UR corner of legend region relative
               // to UR of plotter region.
               float xur = legends_origin.value()[0];
               float yur = legends_origin.value()[1];
      @@ -5534,10 +5520,10 @@ protected: //vis bins
             text->strings.add(m_legend_strings[index]);
             sep->add(text);
             text->color = m_legend_colors[index];
      -  
      -      if(legends_attached_to_infos) { 
      +
      +      if(legends_attached_to_infos) {
               // global tsf should be the identity.
      -  
      +
               // legend box geometry and placement is relative
               // to the infos box placement and geometry :
               if(m_infos_style.visible) {
      @@ -5545,54 +5531,54 @@ protected: //vis bins
                 if(!inode) {delete sep;return;}
                 matrix* imtx = get_infos_matrix();
                 if(!imtx) {delete sep;return;}
      -    
      +
                 float wbox = inode->width;
                 float hbox = inode->height/number;
      -    
      +
                 text->width = wbox;
                 text->height = hbox;
      -    
      +
                 _tsf->mtx = imtx->mtx;
       
                 float xx = width*0.5f-wbox*0.5f;
      -    
      +
                 float yy = height*0.5f-inode->height-hbox*0.5f-hbox*index;
      -    
      +
                 _tsf->set_translate(xx,yy,0);
      -    
      +
               } else {
                 float wbox = width  * legends_size.value()[0];
                 float hbox = (height * legends_size.value()[1])/number;
      -    
      +
                 text->width = wbox;
                 text->height = hbox;
      -    
      +
                 float xx = width*0.5f-wbox*0.5f - width*infos_x_margin;
                 float yy = height*0.5f-hbox*0.5F - height*infos_y_margin;
      -    
      +
                 yy -= hbox*index;
      -  
      +
                 _tsf->set_translate(xx,yy,0);
               }
      -  
      +
             } else {
      -  
      +
               //legends_size is in NDC of [0,width][0,height].
               float w = width  * legends_size.value()[0];
               float h = height * legends_size.value()[1];
      -  
      +
               text->width = w;
               text->height = h/number;
      -  
      +
               float xx = w * 0.5f;
               float yy = text->height * 0.5f;
               yy += text->height*(number-index-1);
      -    
      +
               _tsf->set_translate(xx,yy,0);
      -  
      +
             }
             _tsf->mul_scale(1,1,_zscale_text());
      -  
      +
           }
         }
       */
      @@ -5609,7 +5595,7 @@ protected: //vis bins
          {matrix* _tsf = new matrix;
           _tsf->mul_scale(1,1,_zscale_text());
           m_legend_sep.add(_tsf);}
      -    
      +
           size_t number = m_legend_strings.size();
           //::printf("debug : update_legends : 001 %lu\n",number);
           for(size_t index=0;indexmarker_size = _style.marker_size;
             text->back_visible = false;
             sep->add(text);
      -      
      +
             //legends_size is in NDC of [0,width][0,height].
             float w = width  * legends_size[index][0];
             float h = height * legends_size[index][1];
      @@ -5643,26 +5629,26 @@ protected: //vis bins
       
             float xxx = w * 0.5f;
             float yyy = h * 0.5f;
      -    
      -      if(legends_origin_unit[index]==unit_axis) {        
      -    
      -        // legends_origin is in axes coordinates. 
      +
      +      if(legends_origin_unit[index]==unit_axis) {
      +
      +        // legends_origin is in axes coordinates.
               float x = legends_origin[index][0];
               float y = legends_origin[index][1];
      -    
      +
               vec3f pos;
               if(!axis_2_vp(vec3f(x,y,0),pos)) {
      -          a_out << "tools::sg::plotter::update_legends : axis_2_vp() failed for x=" << x << ", y=" << y << "." << std::endl; 
      +          a_out << "tools::sg::plotter::update_legends : axis_2_vp() failed for x=" << x << ", y=" << y << "." << std::endl;
               } else {
                 //pos is in NDC of [0,width][0,height].
                 float xx = width  * (-0.5f+pos[0]);
                 float yy = height * (-0.5f+pos[1]);
                 _tsf->set_translate(xx,yy,zz);
               }
      -    
      +
             } else { //unit_percent
      -        // legends_origin is 
      -        // the UR corner of legend region relative 
      +        // legends_origin is
      +        // the UR corner of legend region relative
               // to UR of plotter region.
               float xur = legends_origin[index][0];
               float yur = legends_origin[index][1];
      @@ -5783,7 +5769,7 @@ protected: //vis bins
           vertices* ls = new vertices;
           ls->mode = gl::lines();
           m_inner_frame_sep.add(ls);
      -    
      +
           // z bottom :
           ls->add(0,0,0);ls->add(1,0,0);
           ls->add(1,0,0);ls->add(1,1,0);
      @@ -5840,14 +5826,14 @@ protected: //vis bins
            {size_t _number = m_x_axis.coords.size();
             if(is_solid) {
               pts.reserve(_number*6);
      -        for(size_t count=0;count<_number;count++) { 
      +        for(size_t count=0;count<_number;count++) {
                 xx = m_x_axis.coords[count];
                 vtxs->add(xx, 0    ,zz);
                 vtxs->add(xx, _width,zz);
               }
             } else {
               pts.reserve(_number*100*6);
      -        for(size_t count=0;count<_number;count++) { 
      +        for(size_t count=0;count<_number;count++) {
                 xx = m_x_axis.coords[count];
                 vtxs->add_dashed_line(xx,0,zz,xx,_width,zz,100);
               }
      @@ -5856,14 +5842,14 @@ protected: //vis bins
               size_t _number = m_x_axis.sub_coords.size();
               if(is_solid) {
                 pts.reserve(_number*6);
      -          for(size_t count=0;count<_number;count++) { 
      +          for(size_t count=0;count<_number;count++) {
                   xx = m_x_axis.sub_coords[count];
                   vtxs->add(xx, 0    ,zz);
                   vtxs->add(xx,_width,zz);
                 }
               } else {
                 pts.reserve(_number*100*6);
      -          for(size_t count=0;count<_number;count++) { 
      +          for(size_t count=0;count<_number;count++) {
                   xx = m_x_axis.sub_coords[count];
                   vtxs->add_dashed_line(xx,0,zz,xx,_width,zz,100);
                 }
      @@ -5893,21 +5879,21 @@ protected: //vis bins
               size_t _number = m_y_axis.sub_coords.size();
               if(is_solid) {
                 pts.reserve(_number*6);
      -          for(size_t count=0;count<_number;count++) { 
      +          for(size_t count=0;count<_number;count++) {
                   yy = m_y_axis.sub_coords[count];
                   vtxs->add(0,yy,    zz);
                   vtxs->add(_width,yy,zz);
                 }
               } else {
                 pts.reserve(_number*100*6);
      -          for(size_t count=0;count<_number;count++) { 
      +          for(size_t count=0;count<_number;count++) {
                   yy = m_y_axis.sub_coords[count];
                   vtxs->add_dashed_line(0,yy,zz,_width,yy,zz,100);
                 }
               }
             }
           }
      -  
      +
         }
       
         void update_grid_XYZ(){
      @@ -5994,16 +5980,16 @@ protected: //rep
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           float y0 = 0;
           y0 = verify_log(y0,ymin,dy,ylog);
           if(y0<0) y0 = 0;
           if(y0>1) y0 = 1;
      -  
      +
           separator* _sep = new separator();
       
           draw_style* ds = new draw_style;
      @@ -6017,17 +6003,17 @@ protected: //rep
       
           float yp = 0;
           size_t xnbin = a_bins.size();
      -    for(size_t index=0;index1) continue;
      @@ -6035,13 +6021,13 @@ protected: //rep
             if(xe>1) xe = 1;
             if(y<0) y = 0;
             if(y>1) y = 1;
      -  
      +
             separator* sep = new separator();
             _sep->add(sep);
       
      -    /*uuu  
      +    /*uuu
             a_bins[index].fSeparator = sep;
      -  
      +
            {char s[128];
             //::sprintf(s,"%d",index);
             sep->setInfos(s);
      @@ -6074,11 +6060,11 @@ protected: //rep
             if(index==xnbin-1){
               vtxs->add(xe,y0,a_zz);
             }
      -  
      +
             empty = false;
             yp = y;
           }
      -  
      +
           if(empty) {
             delete _sep;
           } else {
      @@ -6094,15 +6080,15 @@ protected: //rep
                                   const rep_box& a_box_y,
                                   float a_zz/*,
                                   const std::string& aID*/){
      -    //::printf("debug : tools::sg::plotter::rep_bins1D_xy_points : begin\n");			    
      +    //::printf("debug : tools::sg::plotter::rep_bins1D_xy_points : begin\n");
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           painting_policy painting = a_style.painting;
       
           separator* _sep = new separator();
      @@ -6113,11 +6099,11 @@ protected: //rep
             ds->point_size = a_style.point_size;
             _sep->add(ds);
           }
      -    
      +
           bool empty = true;
           colorf clr;
           size_t xnbin = a_bins.size();
      -    for(size_t index=0;index1)||(y<0)||(y>1)) continue;
      -  
      +
             //::printf("debug : tools::sg::plotter::rep_bins1D_xy_points : x %g, y %g, val %g\n",x,y,val);
      -    
      +
             separator* sep = new separator();
             _sep->add(sep);
      -  
      +
             //a_bins[index].fSeparator = sep;
      -  
      +
            //{char s[128];
            // ::sprintf(s,"%d",index);
            // sep->setInfos(s);
      @@ -6141,7 +6127,7 @@ protected: //rep
            // std::string sid = aID;
            // sid += std::string(s);
            // sep->setString(sid);}
      -  
      +
             if(painting==painting_by_value) {
               a_cmap.get_color(val,clr);
             } else if( (painting==painting_grey_scale) ||
      @@ -6172,11 +6158,11 @@ protected: //rep
                     << " bad modeling style " << tools::sout(a_style.modeling) << std::endl;
               delete _sep;
               return;
      -      }      
      -  
      +      }
      +
             empty = false;
           }
      -  
      +
           if(empty) {
             delete _sep;
           } else {
      @@ -6196,11 +6182,11 @@ protected: //rep
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           separator* _sep = new separator();
       
           _sep->add(new normal);
      @@ -6236,13 +6222,13 @@ protected: //rep
             if(ye<0) continue;
             if(yy<0) yy = 0;
             if(ye>1) ye = 1;
      -  
      +
             //FIXME if(ye<=yy) continue; //Else we shall have a tessellation error.
      -  
      +
             separator* sep = new separator();
             _sep->add(sep);
       
      -    //a_bins[index].fSeparator = sep; 
      +    //a_bins[index].fSeparator = sep;
           //{char s[128];
           //::sprintf(s,"%d",index);
           //sep->setInfos(s);
      @@ -6250,7 +6236,7 @@ protected: //rep
           //std::string sid = aID;
           //sid += std::string(s);
           //sep->setString(sid);}
      -  
      +
             if(painting==painting_by_value) {
               a_cmap.get_color(val,clr);
             } else if( (painting==painting_grey_scale) ||
      @@ -6273,10 +6259,10 @@ protected: //rep
             vtxs->add(xe,yy,a_zz);
             vtxs->add(xe,ye,a_zz);
             vtxs->add(xx,ye,a_zz);
      -  
      +
             empty = false;
           }
      -  
      +
           if(empty) {
             delete _sep;
           } else {
      @@ -6297,11 +6283,11 @@ protected: //rep
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           separator* _sep = new separator();
       
           bool empty = true;
      @@ -6325,7 +6311,7 @@ protected: //rep
               bar_chart(a_style.bar_offset.value(),
                         a_style.bar_width.value(),xx,xe);
             }
      -  
      +
             xx = verify_log(xx,xmin,dx,xlog);
             xe = verify_log(xe,xmin,dx,xlog);
             yy = verify_log(yy,ymin,dy,ylog);
      @@ -6340,7 +6326,7 @@ protected: //rep
             if(ye<0) continue;
             if(yy<0) yy = 0;
             if(ye>1) ye = 1;
      -  
      +
             separator* sep = new separator();
             _sep->add(sep);
       
      @@ -6351,7 +6337,7 @@ protected: //rep
           //std::string sid = aID;
           //sid += std::string(s);
           //sep->setString(sid);}
      -  
      +
             if(painting==painting_by_value) {
               a_cmap.get_color(val,clr);
             } else if( (painting==painting_grey_scale) ||
      @@ -6375,10 +6361,10 @@ protected: //rep
             vtxs->add(xe,ye,a_zz);
             vtxs->add(xx,ye,a_zz);
             vtxs->add(xx,yy,a_zz);
      -  
      +
             empty = false;
           }
      -  
      +
           if(empty) {
             delete _sep;
           } else {
      @@ -6391,36 +6377,36 @@ protected: //rep
           // Draw lines connecting top middle of bins.
       
           //::printf("debug : rep_bins2D_lines_one\n");
      -    
      +
           size_t xnbin = a_bins.size();
           std::vector points(xnbin);
      -    for(size_t index=0;index& pts = vtxs->xyzs.values(); //npt*3
      -  
      +
           clip_polyline_2D(points,a_box_x,a_box_y,pts);
           if(pts.size()) {
             sg::separator* separator = new sg::separator;
             //separator->setString(aID);
      -  
      +
             rgba* mat = new rgba();
             mat->color = a_style.color;
             separator->add(mat);
      -    
      +
             draw_style* ds = new draw_style;
             ds->style = draw_lines;
             ds->line_pattern = a_style.line_pattern;
             ds->line_width = a_style.line_width;
             separator->add(ds);
      -    
      +
             vtxs->mode = gl::line_strip();
             separator->add(vtxs);
      -  
      +
             m_bins_sep.add(separator);
           } else {
             delete vtxs;
      @@ -6437,47 +6423,47 @@ protected: //rep
           double* xs = new double[number];
           double* ys = new double[number];
           float x,y;
      -    for(size_t index=0;index points(nstp+1);
      -    for(unsigned int ibin=0;ibin<=nstp;ibin++) { 
      +    for(unsigned int ibin=0;ibin<=nstp;ibin++) {
             float xx = xmn + ibin * step;
             double val = _spline.eval(xx);
             points[ibin].set_value(xx,float(val),a_zz);
           }
      -  
      +
           vertices* vtxs = new vertices;
           std::vector& pts = vtxs->xyzs.values(); //npt*3
      -  
      +
           clip_polyline_2D(points,a_box_x,a_box_y,pts);
           if(pts.size()) {
             sg::separator* separator = new sg::separator;
             //separator->setString(aID);
      -  
      +
             rgba* mat = new rgba();
             mat->color = a_style.color;
             separator->add(mat);
      -    
      +
             draw_style* ds = new draw_style;
             ds->style = draw_lines;
             ds->line_pattern = a_style.line_pattern;
             ds->line_width = a_style.line_width;
             separator->add(ds);
      -    
      +
             vtxs->mode = gl::line_strip();
             separator->add(vtxs);
      -  
      +
             m_bins_sep.add(separator);
           } else {
             delete vtxs;
      @@ -6485,7 +6471,7 @@ protected: //rep
       
         }
       
      -  
      +
         void rep_bins2D_xy_box(const style& a_style,const std::vector& a_bins,
                                const rep_box& a_box_x,const rep_box& a_box_y,float a_bmin,float a_bmax,float a_zz) {
           // Draw box of size proportionnal to bin value.
      @@ -6503,13 +6489,13 @@ protected: //rep
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           bool empty = true;
      -    float range = a_bmax - a_bmin;            
      +    float range = a_bmax - a_bmin;
       
           tools_vforcit(rep_bin2D,a_bins,it) {
             const rep_bin2D& rbin = *it;
      @@ -6519,29 +6505,29 @@ protected: //rep
             float yy = rbin.m_y_min;
             float ye = rbin.m_y_max;
             float val = rbin.m_val;
      -  
      +
             float xsize,ysize;
      -      if(range>0) {                  
      +      if(range>0) {
               // If val = bmax, the box maps the cell.
               xsize = (val - a_bmin) * (xe - xx) / range;
               ysize = (val - a_bmin) * (ye - yy) / range;
             } else {
      -        //If range is 0. ; then all bins that have 
      +        //If range is 0. ; then all bins that have
               // entries have same values. Draw box xdbin * ydbin.
               xsize = xe - xx;
               ysize = ye - yy;
             }
      -  
      +
             xx = xx + ((xe-xx) - xsize)/2;
             xe = xx + xsize;
             yy = yy + ((ye-yy) - ysize)/2;
             ye = yy + ysize;
      -                                    
      +
             xx = verify_log(xx ,xmin,dx  ,xlog);
             xe = verify_log(xe ,xmin,dx  ,xlog);
             yy = verify_log(yy ,ymin,dy  ,ylog);
             ye = verify_log(ye ,ymin,dy  ,ylog);
      -                                    
      +
             // Clipping :
             if(xx>1) continue;
             if(xe<0) continue;
      @@ -6551,10 +6537,10 @@ protected: //rep
             if(ye<0) continue;
             if(yy<0) yy = 0;
             if(ye>1) ye = 1;
      -  
      +
             //sg::separator* sep = new separator();
             //_sep->add(sep);
      -  
      +
          /*{char s[128];
             //::sprintf(s,"%d %d",rbin.fI,rbin.fJ);
             sep->setInfos(s);
      @@ -6562,17 +6548,17 @@ protected: //rep
             std::string sid = aID;
             sid += std::string(s);
             sep->setString(sid);}*/
      -  
      +
             vertices* vtxs = new vertices;
             vtxs->mode = gl::triangle_fan();
             //sep->add(vtxs);
             _sep->add(vtxs);
      -  
      +
             vtxs->add(xx,yy,a_zz);
             vtxs->add(xe,yy,a_zz);
             vtxs->add(xe,ye,a_zz);
             vtxs->add(xx,ye,a_zz);
      -  
      +
             empty = false;
           }
       
      @@ -6582,36 +6568,36 @@ protected: //rep
             m_bins_sep.add(_sep);
           }
         }
      -  
      +
         void rep_bins2D_xy_wire_box(const style& a_style,
                                     const std::vector& a_bins,
       			      const rep_box& a_box_x,const rep_box& a_box_y,
       			      float a_bmin,float a_bmax,float a_zz
                                     /*,const SbString& aID*/){
           // Draw box of size proportionnal to bin value.
      -  
      +
           sg::separator* separator = new sg::separator;
      -    
      +
           rgba* mat = new rgba();
           mat->color = a_style.color;
           separator->add(mat);
      -  
      +
           draw_style* ds = new draw_style;
           ds->style = draw_lines;
           ds->line_pattern = a_style.line_pattern;
           ds->line_width = a_style.line_width;
           separator->add(ds);
      -  
      +
           vertices* vtxs = new vertices;
           vtxs->mode = gl::lines();
           separator->add(vtxs);
      -      
      +
           bool empty = true;
      -  
      +
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      @@ -6619,35 +6605,35 @@ protected: //rep
           float range = a_bmax - a_bmin;
           size_t number = a_bins.size();
           for(size_t index=0;index0) {                  
      +      if(range>0) {
               // If val = bmax, the box maps the cell.
               xsize = (val - a_bmin) * (xe - xx) / range;
               ysize = (val - a_bmin) * (ye - yy) / range;
             } else {
      -        //If range is 0. ; then all bins that have 
      +        //If range is 0. ; then all bins that have
               // entries have same values. Draw box xdbin * ydbin.
               xsize = xe - xx;
               ysize = ye - yy;
             }
      -  
      +
             xx = xx + ((xe-xx) - xsize)/2;
             xe = xx + xsize;
             yy = yy + ((ye-yy) - ysize)/2;
             ye = yy + ysize;
      -                                    
      +
             xx = verify_log(xx ,xmin,dx  ,xlog);
             xe = verify_log(xe ,xmin,dx  ,xlog);
             yy = verify_log(yy ,ymin,dy  ,ylog);
             ye = verify_log(ye ,ymin,dy  ,ylog);
      -                                    
      +
             // Clipping :
             if(xx>1) continue;
             if(xe<0) continue;
      @@ -6657,7 +6643,7 @@ protected: //rep
             if(ye<0) continue;
             if(yy<0) yy = 0;
             if(ye>1) ye = 1;
      -  
      +
             //::printf("debug : zzzzuu : %g %g %g %g\n",xx,xe,yy,ye);
       
            //{char s[128];
      @@ -6668,10 +6654,10 @@ protected: //rep
            // std::string sid(aID.getString());
            // sid += "/"+sp;
            // sep->setString(sid.c_str());}
      -  
      +
           //vertices* vtxs = new vertices;
           //vtxs->mode = gl::line_strip();
      -    //separator->add(vtxs);      
      +    //separator->add(vtxs);
           //vtxs->add(xx,yy,a_zz);
           //vtxs->add(xe,yy,a_zz);
           //vtxs->add(xe,ye,a_zz);
      @@ -6680,10 +6666,10 @@ protected: //rep
       
             vtxs->add(xx,yy,a_zz);
             vtxs->add(xe,yy,a_zz);
      -      
      +
             vtxs->add(xe,yy,a_zz);
             vtxs->add(xe,ye,a_zz);
      -      
      +
             vtxs->add(xe,ye,a_zz);
             vtxs->add(xx,ye,a_zz);
       
      @@ -6692,7 +6678,7 @@ protected: //rep
       
             empty = false;
           }
      -    
      +
           if(empty) {
             delete separator;
           } else {
      @@ -6711,11 +6697,11 @@ protected: //rep
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           bool empty = true;
           colorf clr;
       
      @@ -6727,12 +6713,12 @@ protected: //rep
             float yy = rbin.m_y_min;
             float ye = rbin.m_y_max;
             float val = rbin.m_val;
      -                                    
      +
             xx = verify_log(xx ,xmin,dx  ,xlog);
             xe = verify_log(xe ,xmin,dx  ,xlog);
             yy = verify_log(yy ,ymin,dy  ,ylog);
             ye = verify_log(ye ,ymin,dy  ,ylog);
      -                                    
      +
             // Clipping :
             if(xx>1) continue;
             if(xe<0) continue;
      @@ -6742,7 +6728,7 @@ protected: //rep
             if(ye<0) continue;
             if(yy<0) yy = 0;
             if(ye>1) ye = 1;
      -  
      +
             if(painting==painting_by_value) {
               a_cmap.get_color(val,clr);
             } else if( (painting==painting_grey_scale) ||
      @@ -6761,12 +6747,12 @@ protected: //rep
             vtxs->mode = gl::triangle_fan();
             //sep->add(vtxs);
             _sep->add(vtxs);
      -  
      +
             vtxs->add(xx,yy,a_zz);
             vtxs->add(xe,yy,a_zz);
             vtxs->add(xe,ye,a_zz);
             vtxs->add(xx,ye,a_zz);
      -  
      +
             empty = false;
           }
       
      @@ -6783,43 +6769,43 @@ protected: //rep
           //::printf("debug : rep_bins2D_xy_random_one\n");
       
           sg::separator* separator = new sg::separator;
      -     
      +
           rgba* mat = new rgba();
           mat->color = a_style.color;
           separator->add(mat);
      -  
      +
           draw_style* ds = new draw_style;
           ds->style = draw_points;
           ds->point_size = a_style.point_size;
           separator->add(ds);
      -    
      +
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      -    //  Draw for each bins a number of random 
      +
      +    //  Draw for each bins a number of random
           // points proportiannal to bins range.
      -  
      +
           float range = a_bmax - a_bmin;
       
      -    bool empty = true;    
      -    
      +    bool empty = true;
      +
           size_t number = a_bins.size();
           for(size_t index=0;index0. ? (int)((val - a_bmin)*(nmax-nmin)/range + nmin):1;
      @@ -6827,8 +6813,8 @@ protected: //rep
               vertices* vtxs = new vertices;
               vtxs->mode = gl::points();
               separator->add(vtxs);
      -	
      -        int ipt = 0;                              
      +
      +        int ipt = 0;
               float xdbin = xe - xx;
               float ydbin = ye - yy;
               for(int count=0;count=0)&&(xxx<=1)  &&
      -             (yyy>=0)&&(yyy<=1)  ) { 
      +             (yyy>=0)&&(yyy<=1)  ) {
                   vtxs->add(xxx,yyy,a_zz);
                   empty = false;
                   ipt++;
      -          }                                  
      +          }
               }
             }
      -  
      -    }//end for                      
      -  
      +
      +    }//end for
      +
           if(empty) {
             delete separator;
           } else {
             m_bins_sep.add(separator);
           }
         }
      -  
      +
         void rep_bins2D_xy_text(
          const style& //a_style
         ,const std::vector& //a_bins
      @@ -6861,42 +6847,42 @@ protected: //rep
         ,const rep_box& //a_box_y
         //,const SbString& aID
         ){
      -    //Draw box and text for number of entries.          
      +    //Draw box and text for number of entries.
           ::printf("debug : rep_bins2D_xy_text : dummy\n");
      -  
      +
         /*
           sg::separator* separator = new sg::separator;
      -  
      +
           //bool drawWireBoxe = false;
      -  
      +
           bool empty = true;
      -    
      +
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           vec3f points[5];
      -              
      +
           for(unsigned int index=0;index1) continue;
             if(xe<0) continue;
      @@ -6906,16 +6892,16 @@ protected: //rep
             if(ye<0) continue;
             if(yy<0) yy = 0;
             if(ye>1) ye = 1;
      -  
      +
             char sval[32];
             ::sprintf (sval,"%d",ival);
             SbString sbval(sval);
             int charn = sbval.getLength();
             if(charn<=0) continue;
      -  
      +
             SoSceneGraph* sep = new SoSceneGraph;
             separator->addChild(sep);
      -  
      +
            {char s[128];
             ::sprintf(s,"%d %d",a_bins[index].fI,a_bins[index].fJ);
             sep->setInfos(s);}
      @@ -6924,17 +6910,17 @@ protected: //rep
             std::string sid(aID.getString());
             sid += "/"+sp;
             sep->setString(sid.c_str());}
      -  
      -      SoMaterial* material = 
      +
      +      SoMaterial* material =
               fStyleCache->getMaterial(a_style.color.getValue(),
                                        a_style.transparency.getValue());
             sep->addChild(material);
      -  
      +
             sep->addChild(getLineStyle(a_style));
      -  
      +
             float dx = xe-xx;
             float dy = ye-yy;
      -                    
      +
             if(drawWireBoxe) {
               LIST_SET(points,0,xx,yy,0);
               LIST_SET(points,1,xe,yy,0);
      @@ -6947,33 +6933,33 @@ protected: //rep
               coordIndex[3] = icoord + 3;
               coordIndex[4] = icoord + 4;
               coordIndex[5] = SO_END_LINE_INDEX;
      -    
      +
               coordinate3->point.setValues(icoord,5,points);
               icoord += 5;
      -   
      +
               SoIndexedLineSet* lineSet = new SoIndexedLineSet;
               lineSet->coordIndex.setValues(0,6,coordIndex);
               sep->addChild(lineSet);
             }
      -  
      +
             float x = xx + 0.1F * dx;
             float y = yy + 0.1F * dy;
             float z = 0;
             float w = dx * 0.5F;
             float h = dy * 0.5F;
      -  
      +
             SoTransform* transform = new SoTransform;
             transform->scaleFactor.setValue(vec3f(w/charn,h,1));
             transform->translation.setValue(x,y,z);
             sep->addChild(transform);
      -  
      +
             SoTextHershey* text = new SoTextHershey;
             text->string.setValue(sbval);
             sep->addChild (text);
      -  
      +
             empty = false;
           }
      -    
      +
           if(empty) {
             delete separator;
           } else {
      @@ -6981,28 +6967,28 @@ protected: //rep
           }
         */
         }
      -  
      +
         void rep_contour_xy(std::ostream& a_out,const style& a_style,painting_policy a_painting,
                             const base_colormap& a_cmap,clist_contour& a_contour,
       		      const rep_box& a_box_x,const rep_box& a_box_y,const rep_box& a_box_z,float a_zz
                             /*,const std::string& aID*/){
           //a_out << "debug : rep_contour_xy :" << std::endl;
      -  
      +
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           float zmin = a_box_z.m_pos;
           float dz = a_box_z.m_width;
           //bool zlog = a_box_z.m_log;
      -  
      +
           sg::separator* separator = new sg::separator;
           //separator->setString(aID);
      -  
      +
           draw_style* ds = new draw_style;
           ds->style.value(draw_lines);
           ds->line_pattern.value(a_style.line_pattern);
      @@ -7012,9 +6998,9 @@ protected: //rep
           atb_vertices* vtxs = new atb_vertices;
           vtxs->mode = gl::lines(); //segments
           separator->add(vtxs);
      -    
      +
           bool empty = true;
      -  
      +
           for (unsigned int i=0;i1) continue;
             if(zz<0) continue;
      -  
      +
             colorf _color;
             if(a_painting==painting_by_value) {
               a_cmap.get_color(val,_color);
      @@ -7040,7 +7026,7 @@ protected: //rep
             } else {
               _color = a_style.color;
             }
      -  
      +
             tools_lforcit(cline_strip*,*pStripList,pos) {
               cline_strip* pStrip = (*pos);
               if(!pStrip) {
      @@ -7049,7 +7035,7 @@ protected: //rep
                 return;
               }
               if (pStrip->empty()) continue;
      -      
      +
               //// putting point at start and end of strip
               //// retreiving index
               //unsigned int index=pStrip->front();
      @@ -7071,9 +7057,9 @@ protected: //rep
                 yy = (float)a_contour.get_yi(*pos2);
                 xx = verify_log(xx,xmin,dx,xlog);
                 yy = verify_log(yy,ymin,dy,ylog);
      -          if( 
      +          if(
                     (xx<0) || (xx>1) ||
      -              (yy<0) || (yy>1) 
      +              (yy<0) || (yy>1)
                   ) {
                   // Throw away this strip :
                 }
      @@ -7087,70 +7073,70 @@ protected: //rep
       	  }
                 xprev = xx;
                 yprev = yy;
      -  	  
      +
                 empty = false;
      -      }  
      -    }  
      -  
      +      }
           }
      -  
      +
      +    }
      +
           if(empty) {
             delete separator;
           } else {
             m_bins_sep.add(separator);
           }
         }
      -  
      +
         void rep_contour_xy_filled(std::ostream& a_out,const style& a_style,painting_policy a_painting,
                                    const base_colormap& a_cmap,clist_contour& a_contour,
       			     const rep_box& a_box_x,const rep_box& a_box_y,const rep_box& a_box_z,float a_zz
                                    /*,const std::string& aID*/){
           //a_out << "debug : rep_contour_xy_filled :" << std::endl;
      -    
      +
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           float zmin = a_box_z.m_pos;
           float dz = a_box_z.m_width;
           //bool zlog = a_box_z.m_log;
      -  
      +
           sg::separator* separator = new sg::separator;
           //separator->setString(aID);
      -  
      +
           vec3f AB,BC,vcross;
       
           {// Draw background :
             sg::separator* sep = new sg::separator;
             separator->add(sep);
      -  
      +
             float zz = a_zz - 0.01F;
      -  
      +
             colorf _color;
             if(a_cmap.colorn()) {
               _color = a_cmap.color(0);
             } else {
               _color = a_style.color;
             }
      -  
      +
             rgba* mat = new rgba();
             mat->color = _color;
             sep->add(mat);
      -  
      +
             float xx = xmin;
      -      float xe = xmin+dx; 
      +      float xe = xmin+dx;
             float yy = ymin;
      -      float ye = ymin+dy; 
      -  
      +      float ye = ymin+dy;
      +
             xx = verify_log(xx,xmin,dx,xlog);
             xe = verify_log(xe,xmin,dx,xlog);
             yy = verify_log(yy,ymin,dy,ylog);
             ye = verify_log(ye,ymin,dy,ylog);
      -                            
      +
             vertices* vtxs = new vertices;
             vtxs->mode = gl::triangle_fan();
             vtxs->add(xx,yy,zz);
      @@ -7158,31 +7144,31 @@ protected: //rep
             vtxs->add(xe,ye,zz);
             vtxs->add(xx,ye,zz);
             sep->add(vtxs);
      -      
      +
           } // End background.
      -  
      +
           bool empty = true;
      -    
      +
           for (unsigned int i=0;iadd(sep);
      -  
      +
             //If zlog true, zz is already in log.
             float val = (float)a_contour.get_plane(i);
             float zz = val;
      -  
      +
             zz = verify_log(zz,zmin,dz,false);
             if(zz>1) continue;
             if(zz<0) continue;
      -  
      +
             std::vector< std::vector > contourVector;
       
             tools_lforcit(cline_strip*,*pStripList,pos) {
      @@ -7205,7 +7191,7 @@ protected: //rep
             tess_contour tessContour(a_out,tris); //we pass a ref to tris.
             tessContour.getFilledArea(contourVector);
             if(!tris.size()) continue;
      -  
      +
             colorf _color;
             if(a_painting==painting_by_value) {
               a_cmap.get_color(val,_color);
      @@ -7215,7 +7201,7 @@ protected: //rep
             } else {
               _color = a_style.color;
             }
      -  
      +
             atb_vertices* vtxs = new atb_vertices; //PAW_C/color.kumac. It needs back face.
             vtxs->mode = gl::triangles();
             sep->add(vtxs);
      @@ -7242,21 +7228,21 @@ protected: //rep
               vtxs->add_color(_color);
               vtxs->add_color(_color);
             }
      -  
      +
             empty = false;
      -  
      +
           }
      -  
      +
           if(empty) {
             delete separator;
           } else {
             m_bins_sep.add(separator);
           }
         }
      -  
      +
         void rep_errors_plus_xy(std::ostream& /*a_out*/,const style& a_style,const std::vector& a_bins,
                                 const rep_box& a_box_x,const rep_box& a_box_y,const std::vector& a_bars,float aZ) {
      -    //a_out << "debug : rep_erros_plus_xy : begin :" << std::endl;		       
      +    //a_out << "debug : rep_erros_plus_xy : begin :" << std::endl;
           separator* _sep = new separator();
           //_sep->setString(aID);
       
      @@ -7277,43 +7263,43 @@ protected: //rep
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           size_t xnbin = a_bins.size();
       
      -    for(size_t index=0;index1) continue;
             if(xx<0) xx = 0;
             if(xe>1) xe = 1;
             //if(val<0) val = 0;
             //if(val>1) val = 1;
      -  
      +
             float ex = (xe+xx)/2;
             //if( (ex >=0)&&(ex <=1) ) { //FIXME : have to clip
      -  
      +
             float edx = 0.3F * (xe-xx);
       
             if((val>=0)&&(val<=1)) {
      @@ -7325,23 +7311,23 @@ protected: //rep
               // do nothing
             } else  if(bar_max <0)  {
               // do nothing
      -      } else  if(bar_min <0) { 
      -        if(bar_max >1) { 
      +      } else  if(bar_min <0) {
      +        if(bar_max >1) {
                 vtxs->add(ex,0,aZ);
                 vtxs->add(ex,1,aZ);
      -        } else { 
      +        } else {
                 vtxs->add(ex,0,aZ);
                 vtxs->add(ex,bar_max,aZ);
               }
      -      } else  if(bar_max >1) { 
      +      } else  if(bar_max >1) {
               vtxs->add(ex,bar_min,aZ);
               vtxs->add(ex,1,aZ);
             } else {
               vtxs->add(ex    ,bar_min,aZ);
               vtxs->add(ex    ,bar_max,aZ);
             }
      -  
      -    }          
      +
      +    }
       
           if(vtxs->number()) {
             m_errors_sep.add(_sep);
      @@ -7352,7 +7338,7 @@ protected: //rep
       
         void rep_errors_I_xy(std::ostream& /*a_out*/,const style& a_style,const std::vector& a_bins,
                              const rep_box& a_box_x,const rep_box& a_box_y,const std::vector& a_bars,float aZ){
      -    //a_out << "debug : rep_erros_I_xy : begin :" << std::endl;		       
      +    //a_out << "debug : rep_erros_I_xy : begin :" << std::endl;
           separator* _sep = new separator();
           //_sep->setString(aID);
       
      @@ -7373,60 +7359,60 @@ protected: //rep
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           size_t xnbin = a_bins.size();
       
      -    for(size_t index=0;index1) continue;
             if(xx<0) xx = 0;
             if(xe>1) xe = 1;
             if(val<0) val = 0;
             if(val>1) val = 1;
      -  
      +
             float ex = (xe+xx)/2;
             //if( (ex >=0)&&(ex <=1) ) { //FIXME : have to clip
      -  
      +
             float edx = 0.3F * (xe-xx);
       
             if(bar_min >1)  {
               // do nothing
             } else  if(bar_max <0)  {
               // do nothing
      -      } else  if(bar_min <0) { 
      -        if(bar_max >1) { 
      +      } else  if(bar_min <0) {
      +        if(bar_max >1) {
                 vtxs->add(ex,0,aZ);
                 vtxs->add(ex,1,aZ);
      -        } else { 
      +        } else {
                 vtxs->add(ex,0,aZ);
                 vtxs->add(ex,bar_max,aZ);
                 vtxs->add(ex-edx,bar_max,aZ);
                 vtxs->add(ex+edx,bar_max,aZ);
               }
      -      } else  if(bar_max >1) { 
      +      } else  if(bar_max >1) {
               vtxs->add(ex-edx,bar_min,aZ);
               vtxs->add(ex+edx,bar_min,aZ);
               vtxs->add(ex,bar_min,aZ);
      @@ -7439,8 +7425,8 @@ protected: //rep
               vtxs->add(ex-edx,bar_max,aZ);
               vtxs->add(ex+edx,bar_max,aZ);
             }
      -  
      -    }          
      +
      +    }
       
           if(vtxs->number()) {
             m_errors_sep.add(_sep);
      @@ -7454,7 +7440,7 @@ protected: //rep
       		      const rep_box& a_box_x,const rep_box& a_box_y,float a_zz,
       		      bool a_bar_chart){
           //printf("debug : inlib::sg;:plotter::repHatch1D_xy : zz %g barchart %d sw %g\n",a_zz,aBarChart,a_style.stripWidth.getValue());
      -    
      +
           separator* _sep = new separator;
       
           rgba* mat = new rgba();
      @@ -7462,7 +7448,7 @@ protected: //rep
           _sep->add(mat);
       
           draw_style* ds = new draw_style;
      -    if(a_style.strip_width.value()==0) {  
      +    if(a_style.strip_width.value()==0) {
             ds->style = draw_lines;
             ds->line_pattern = line_solid;
             ds->line_width = a_style.line_width;
      @@ -7471,7 +7457,7 @@ protected: //rep
             //ds->cull_face = true;
           }
           _sep->add(ds);
      -	    
      +
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      @@ -7484,7 +7470,7 @@ protected: //rep
       
           vec3f points[5];
           size_t xnbin = a_bins.size();
      -    for(size_t index=0;index1) continue;
             if(ye<0) continue;
             if(yy<0) yy = 0;
      -      if(ye>1) ye = 1;  
      +      if(ye>1) ye = 1;
       
             points[0].set_value(xx,yy,a_zz);
             points[1].set_value(xe,yy,a_zz);
      @@ -7518,14 +7504,14 @@ protected: //rep
             points[4].set_value(xx,yy,a_zz);
       
             //FIXME : have picking a hatch picks also the bin.
      -      
      +
             hatcher _hatcher;
             _hatcher.set_offset_point(vec3f(0,0,a_zz));
             _hatcher.set_angle(a_style.angle.value());
      -      _hatcher.set_spacing(a_style.spacing.value()); 
      +      _hatcher.set_spacing(a_style.spacing.value());
             if(!_hatcher.set_strip_width(a_style.strip_width.value())) {}
       
      -      bool res = _hatcher.check_polyline(points,4);      
      +      bool res = _hatcher.check_polyline(points,4);
             if(res) res = _hatcher.compute_polyline(points,4);
       
             size_t numPoints = _hatcher.points().size();
      @@ -7533,8 +7519,8 @@ protected: //rep
             if((res) && numPoints && numVertices) {
       
                 const std::vector& _points = _hatcher.points();
      -	
      -          if(a_style.strip_width.value()==0) {  
      +
      +          if(a_style.strip_width.value()==0) {
       
                   size_t ipt = 0;
       	    tools_vforcit(unsigned int,_hatcher.vertices(),itv) {
      @@ -7561,7 +7547,7 @@ protected: //rep
                     empty = false;
       	    }
       	  }
      -	  
      +
             }
           }
           if(empty) {
      @@ -7573,15 +7559,15 @@ protected: //rep
       
         void rep_points2D_xy_lines(const style& a_style,const points2D& a_points,
                                    const rep_box& a_box_x,const rep_box& a_box_y,float a_zz){
      -    //::printf("debug : rep_points2D_xy_lines\n");				      
      +    //::printf("debug : rep_points2D_xy_lines\n");
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           separator* _sep = new separator();
       
           rgba* mat = new rgba();
      @@ -7602,15 +7588,15 @@ protected: //rep
       
           float x,y;
           unsigned int number = a_points.points();
      -    for(unsigned int index=0;index1)||(y<0)||(y>1)) continue;
      -      vtxs->add(x,y,a_zz);  
      +      vtxs->add(x,y,a_zz);
             empty = false;
           }
      -  
      +
           if(empty) {
             delete _sep;
           } else {
      @@ -7620,53 +7606,53 @@ protected: //rep
       
         void rep_points2D_xy_curve(std::ostream& a_out,const style& a_style,const points2D& a_points,
                                    const rep_box& a_box_x,const rep_box& a_box_y,float a_zz){
      -    //::printf("debug : rep_points2D_xy_curve\n");				      
      +    //::printf("debug : rep_points2D_xy_curve\n");
           unsigned int number = a_points.points();
           if(!number) return;
       
           double* xs = new double[number];
           double* ys = new double[number];
           float x,y;
      -   {for(unsigned int index=0;index points(nstp+1);
      -    for(unsigned int ibin=0;ibin<=nstp;ibin++) { 
      +    for(unsigned int ibin=0;ibin<=nstp;ibin++) {
             float xx = xmn + ibin * step;
             double val = _spline.eval(xx);
             points[ibin].set_value(xx,float(val),a_zz);
           }
      -  
      +
           vertices* vtxs = new vertices;
           std::vector& pts = vtxs->xyzs.values(); //npt*3
      -  
      +
           clip_polyline_2D(points,a_box_x,a_box_y,pts);
           if(pts.size()) {
             sg::separator* separator = new sg::separator;
             //separator->setString(aID);
      -  
      +
             rgba* mat = new rgba();
             mat->color = a_style.color;
             separator->add(mat);
      -    
      +
             draw_style* ds = new draw_style;
             ds->style = draw_lines;
             ds->line_pattern = a_style.line_pattern;
             ds->line_width = a_style.line_width;
             separator->add(ds);
      -    
      +
             vtxs->mode = gl::line_strip();
             separator->add(vtxs);
      -  
      +
             m_points_sep.add(separator);
           } else {
             delete vtxs;
      @@ -7680,11 +7666,11 @@ protected: //rep
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           separator* _sep = new separator();
       
           rgba* mat = new rgba();
      @@ -7699,13 +7685,13 @@ protected: //rep
             _marks->style = a_style.marker_style;
             _xyzs = &(_marks->xyzs);
             _sep->add(_marks);
      -	
      +
           } else if(a_style.modeling==modeling_points()) {
             draw_style* ds = new draw_style;
             ds->style = draw_points;
             ds->point_size = a_style.point_size;
             _sep->add(ds);
      -	
      +
             vertices* vtxs = new vertices;
             vtxs->mode = gl::points();
             _xyzs = &(vtxs->xyzs);
      @@ -7718,16 +7704,16 @@ protected: //rep
           }
       
           float x,y;
      -    
      +
           // first round trip to get number of floats :
           size_t npts = 0;
          {unsigned int number = a_points.points();
      -    for(unsigned int index=0;index1)||(y<0)||(y>1)) continue;  
      +      if((x<0)||(x>1)||(y<0)||(y>1)) continue;
             npts += 3;
           }}
       
      @@ -7735,18 +7721,18 @@ protected: //rep
           size_t xyz_pos = 0;
       
           bool empty = true;
      -    
      +
          {unsigned int number = a_points.points();
      -    for(unsigned int index=0;index1)||(y<0)||(y>1)) continue;  
      -      _xyzs->add_allocated(xyz_pos,x,y,a_zz);  
      +      if((x<0)||(x>1)||(y<0)||(y>1)) continue;
      +      _xyzs->add_allocated(xyz_pos,x,y,a_zz);
             empty = false;
           }}
      -    
      +
           if(empty) {
             delete _sep;
           } else {
      @@ -7760,15 +7746,15 @@ protected: //rep
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           float zmin = a_box_z.m_pos;
           float dz = a_box_z.m_width;
           bool zlog = a_box_z.m_log;
      -  
      +
           separator* _sep = new separator();
       
           rgba* mat = new rgba();
      @@ -7783,13 +7769,13 @@ protected: //rep
             _marks->style = a_style.marker_style;
             _xyzs = &(_marks->xyzs);
             _sep->add(_marks);
      -	
      +
           } else if(a_style.modeling==modeling_points()) {
             draw_style* ds = new draw_style;
             ds->style = draw_points;
             ds->point_size = a_style.point_size;
             _sep->add(ds);
      -	
      +
             vertices* vtxs = new vertices;
             vtxs->mode = gl::points();
             _xyzs = &(vtxs->xyzs);
      @@ -7806,13 +7792,13 @@ protected: //rep
           // first round trip to get number of floats :
           size_t npts = 0;
          {unsigned int number = a_points.points();
      -    for(unsigned int index=0;index1)||(y<0)||(y>1)||(z<0)||(z>1)) continue;  
      +      if((x<0)||(x>1)||(y<0)||(y>1)||(z<0)||(z>1)) continue;
             npts += 3;
           }}
       
      @@ -7822,14 +7808,14 @@ protected: //rep
           bool empty = true;
       
          {unsigned int number = a_points.points();
      -    for(unsigned int index=0;index1)||(y<0)||(y>1)||(z<0)||(z>1)) continue;  
      -      _xyzs->add_allocated(xyz_pos,x,y,z);  
      +      if((x<0)||(x>1)||(y<0)||(y>1)||(z<0)||(z>1)) continue;
      +      _xyzs->add_allocated(xyz_pos,x,y,z);
             empty = false;
           }}
       
      @@ -7845,21 +7831,21 @@ protected: //rep
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           float zmin = a_box_z.m_pos;
           float dz = a_box_z.m_width;
           bool zlog = a_box_z.m_log;
      -  
      +
           painting_policy painting = a_style.painting;
       
           separator* _sep = new separator();
       
           bool empty = true;
      -    //float range = a_bmax - a_bmin;            
      +    //float range = a_bmax - a_bmin;
           colorf clr;
       
           tools_vforcit(rep_bin2D,a_bins,it) {
      @@ -7872,14 +7858,14 @@ protected: //rep
             float val = rbin.m_val;
             float zz = a_bmin;
             float ze = val;
      -  
      +
             xx = verify_log(xx ,xmin,dx  ,xlog);
             xe = verify_log(xe ,xmin,dx  ,xlog);
             yy = verify_log(yy ,ymin,dy  ,ylog);
             ye = verify_log(ye ,ymin,dy  ,ylog);
             zz = verify_log(zz ,zmin,dz  ,zlog);
             ze = verify_log(ze ,zmin,dz  ,zlog);
      -                                    
      +
             // Clipping :
             if(xx>1) continue;
             if(xe<0) continue;
      @@ -7890,7 +7876,7 @@ protected: //rep
             if(ye<0) continue;
             if(yy<0) yy = 0;
             if(ye>1) ye = 1;
      -  
      +
             if(zz>1) continue;
             if(ze<0) continue;
             if(zz<0) zz = 0;
      @@ -7902,7 +7888,7 @@ protected: //rep
       
             separator* sep = new separator();
             _sep->add(sep);
      -  
      +
             if(painting==painting_by_value) {
               a_cmap.get_color(val,clr);
             } else if( (painting==painting_grey_scale) ||
      @@ -7924,7 +7910,7 @@ protected: //rep
             std::string sid = aID;
             sid += std::string(s);
             sep->setString(sid);}*/
      -  
      +
             float sx = xe-xx;
             float sy = ye-yy;
             float sz = ze-zz;
      @@ -7938,7 +7924,7 @@ protected: //rep
             _cube->height = sy;
             _cube->depth = sz;
             sep->add(_cube);
      -  
      +
             empty = false;
           }
       
      @@ -7955,15 +7941,15 @@ protected: //rep
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           float zmin = a_box_z.m_pos;
           float dz = a_box_z.m_width;
           bool zlog = a_box_z.m_log;
      -  
      +
           bool empty = true;
       
           painting_policy painting = a_style.painting;
      @@ -7994,9 +7980,9 @@ protected: //rep
             float val2 = a_faces[index].m_v2;
             float val3 = a_faces[index].m_v3;
             float val4 = a_faces[index].m_v4;
      -  
      +
             float val = val1;
      -  
      +
             val1 = verify_log(val1,zmin,dz,zlog);
             val2 = verify_log(val2,zmin,dz,zlog);
             val3 = verify_log(val3,zmin,dz,zlog);
      @@ -8005,24 +7991,24 @@ protected: //rep
             xe = verify_log(xe,xmin,dx,xlog);
             yy = verify_log(yy,ymin,dy,ylog);
             ye = verify_log(ye,ymin,dy,ylog);
      -              
      +
             if(val1<0) val1 = 0;
             if(val1>1) val1 = 1;
      -  
      +
             if(val2<0) val2 = 0;
             if(val2>1) val2 = 1;
      -  
      +
             if(val3<0) val3 = 0;
             if(val3>1) val3 = 1;
      -  
      +
             if(val4<0) val4 = 0;
             if(val4>1) val4 = 1;
      -  
      +
             if((xx>=0)&&(xx<=1)   &&
                (xe>=0)&&(xe<=1)   &&
                (yy>=0)&&(yy<=1)   &&
                (ye>=0)&&(ye<=1)  ) {
      -  
      +
               if(painting==painting_by_value) {
                 float v = (zlog?take_log(val):val);
                 a_cmap.get_color(v,clr);
      @@ -8036,7 +8022,7 @@ protected: //rep
       
               //if(a_style.area_style.getValue()==SoStyle::EDGED) { //OpenPAW.
               //}
      -  
      +
               //////////////////////////////////////
               //////////////////////////////////////
               vtxs->add(xx,ye,val4);
      @@ -8054,7 +8040,7 @@ protected: //rep
               vtxs->add_normal(nm[0],nm[1],nm[2]);
               vtxs->add_normal(nm[0],nm[1],nm[2]);
               vtxs->add_normal(nm[0],nm[1],nm[2]);
      -  
      +
               //////////////////////////////////////
               //////////////////////////////////////
               vtxs->add(xe,yy,val2);
      @@ -8072,9 +8058,9 @@ protected: //rep
               vtxs->add_normal(nm[0],nm[1],nm[2]);
               vtxs->add_normal(nm[0],nm[1],nm[2]);
               vtxs->add_normal(nm[0],nm[1],nm[2]);
      -    
      +
               empty = false;
      -      }              
      +      }
           }
           if(empty) {
             delete _sep;
      @@ -8082,7 +8068,7 @@ protected: //rep
             a_sep.add(_sep);
           }
         }
      -  
      +
         void rep_top_face2D_xyz_line(const style& /*a_style*/,const std::vector& a_top_faces,
                                      const rep_box& a_box_x,const rep_box& a_box_y,const rep_box& a_box_z/*,const SbString& aID*/){
           //::printf("debug : rep_top_face2D_xyz_line\n");
      @@ -8090,34 +8076,34 @@ protected: //rep
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           float zmin = a_box_z.m_pos;
           float dz = a_box_z.m_width;
           bool zlog = a_box_z.m_log;
      -  
      +
           sg::separator* separator = new sg::separator;
           bool empty = true;
      -    
      +
           rgba* mat = new rgba();
           mat->color = colorf_black();
           separator->add(mat);
      -        
      +
           draw_style* ds = new draw_style;
           ds->style = draw_lines;
           ds->line_pattern = line_solid;
           ds->line_width = 1;
           separator->add(ds);
      -  
      +
           vertices* vtxs = new vertices;
           vtxs->mode = gl::lines();
           separator->add(vtxs);
      -  
      +
           float zepsilon = 0.02f; //for pawex9.kumac top-left and bottom-right.
      -  
      +
           size_t number = a_top_faces.size();
           for(size_t index=0;index1) val1 = 1;
      -  
      +
             if(val2<0) val2 = 0;
             if(val2>1) val2 = 1;
      -  
      +
             if(val3<0) val3 = 0;
             if(val3>1) val3 = 1;
      -  
      +
             if(val4<0) val4 = 0;
             if(val4>1) val4 = 1;
      -  
      +
             if((xx>=0)&&(xx<=1)   &&
                (xe>=0)&&(xe<=1)   &&
                (yy>=0)&&(yy<=1)   &&
                (ye>=0)&&(ye<=1)  ) {
      -  
      +
               vtxs->add(xx,ye,val4+zepsilon);
               vtxs->add(xx,yy,val1+zepsilon);
      -        
      +
               vtxs->add(xx,yy,val1+zepsilon);
               vtxs->add(xe,yy,val2+zepsilon);
      -        
      +
               vtxs->add(xe,yy,val2+zepsilon);
               vtxs->add(xe,ye,val3+zepsilon);
      -        
      +
               vtxs->add(xe,ye,val3+zepsilon);
               vtxs->add(xx,ye,val4+zepsilon);
      -        
      +
               empty = false;
      -  
      -      }              
      +
      +      }
           }
           if(empty) {
             delete separator;
      @@ -8179,58 +8165,58 @@ protected: //rep
             m_bins_sep.add(separator);
           }
         }
      -  
      +
         void rep_top_face2D_xyz_by_level(const style& /*a_style*/,painting_policy /*a_painting*/,const base_colormap& a_cmap,
                                          const std::vector& a_top_faces,
                                          const rep_box& a_box_x,const rep_box& a_box_y,const rep_box& a_box_z,
      -                                   float a_bmin,float a_bmax/*,const SbString& aID*/){  
      -    //::printf("debug : rep_top_face2D_xyz_by_level\n");  
      -    
      +                                   float a_bmin,float a_bmax/*,const SbString& aID*/){
      +    //::printf("debug : rep_top_face2D_xyz_by_level\n");
      +
           size_t ncol = a_cmap.colorn();
           if(!ncol) return;
      -  
      +
           float xmin = a_box_x.m_pos;
           float dx = a_box_x.m_width;
           bool xlog = a_box_x.m_log;
      -  
      +
           float ymin = a_box_y.m_pos;
           float dy = a_box_y.m_width;
           bool ylog = a_box_y.m_log;
      -  
      +
           float zmin = a_box_z.m_pos;
           float dz = a_box_z.m_width;
           bool zlog = a_box_z.m_log;
      -  
      +
           float zz = a_bmin;
           zz = verify_log(zz,zmin,dz,zlog);
           float zmx = a_bmax;
           zmx = verify_log(zmx,zmin,dz,zlog);
      -  
      +
           bool empty = true;
      -          
      +
           sg::separator* separator = new sg::separator;
           //separator->setString(aID);
      -  
      +
           atb_vertices* tris = new atb_vertices;
           tris->mode = gl::triangles();
           tris->do_back = true;
           tris->epsilon = 1e-6f;
           separator->add(tris);
      -  
      +
           colorf _color;
           vec3f _point;
      -  
      +
           float d_z = (zmx-zz)/ncol;
      -  
      +
           size_t number = a_top_faces.size();
      -  
      +
           for(size_t icol=0;icol1) val1 = 1;
      -    
      +
               if(val2<0) val2 = 0;
               if(val2>1) val2 = 1;
      -    
      +
               if(val3<0) val3 = 0;
               if(val3>1) val3 = 1;
      -    
      +
               if(val4<0) val4 = 0;
               if(val4>1) val4 = 1;
      -    
      +
               if((xx>=0)&&(xx<=1)   &&
                  (xe>=0)&&(xe<=1)   &&
                  (yy>=0)&&(yy<=1)   &&
                  (ye>=0)&&(ye<=1)  ) {
      -    
      +
                 //////////////////////////////////////
                 //////////////////////////////////////
                {clip clipper;
                 clipper.add(vec3f(xx,ye,val4));
                 clipper.add(vec3f(xx,yy,val1));
      -          clipper.add(vec3f(xe,yy,val2));	
      +          clipper.add(vec3f(xe,yy,val2));
                 //val[n] had been z normalized.
                 float z1 = zz+d_z*icol;
                 float z2 = z1+d_z;
      @@ -8282,7 +8268,7 @@ protected: //rep
                 plane plane_z_top(vec3f(0,0,-1),vec3f(0,0,z2));
                 clipper.execute(plane_z_bot);
                 clipper.execute(plane_z_top);
      -  
      +
                 const std::vector& result = clipper.result();
                 if(result.size()) {
                   plane plane1(vec3f(xx,ye,val4),vec3f(xx,yy,val1),vec3f(xe,yy,val2));
      @@ -8297,7 +8283,7 @@ protected: //rep
                     vtxs->mode = gl::triangle_fan();
                     vtxs->do_back = true;
                     vtxs->epsilon = 1e-6f;
      -              separator->add(vtxs);    
      +              separator->add(vtxs);
                     tools_vforcit(vec3f,result,it) {
                       vtxs->add(*it);
                       vtxs->add_color(_color);
      @@ -8307,7 +8293,7 @@ protected: //rep
                   empty = false;
                   //sep_empty = false;
                 }}
      -  	  
      +
                 //////////////////////////////////////
                 //////////////////////////////////////
                {clip clipper;
      @@ -8321,7 +8307,7 @@ protected: //rep
                 plane plane_z_top(vec3f(0,0,-1),vec3f(0,0,z2));
                 clipper.execute(plane_z_bot);
                 clipper.execute(plane_z_top);
      -    
      +
                 const std::vector& result = clipper.result();
                 if(result.size()) {
                   plane plane2(vec3f(xe,yy,val2),vec3f(xe,ye,val3),vec3f(xx,ye,val4));
      @@ -8336,35 +8322,35 @@ protected: //rep
                     vtxs->mode = gl::triangle_fan();
                     vtxs->do_back = true;
                     vtxs->epsilon = 1e-6f;
      -              separator->add(vtxs);	  
      +              separator->add(vtxs);
                     tools_vforcit(vec3f,result,it) {
                       vtxs->add(*it);
                       vtxs->add_color(_color);
                       vtxs->add_normal(plane2.normal());
      -              }      
      +              }
                   }
                   empty = false;
                   //sep_empty = false;
                 }}
      -        }              
      -  
      +        }
      +
             } //index faces
      -  
      +
             //if(sep_empty) {
             //  delete sep;
             //} else {
             //  separator->add(sep);
             //}
      -  
      +
           } //icol
      -    
      +
           if(empty) {
             delete separator;
           } else {
             m_bins_sep.add(separator);
           }
         }
      -  
      +
         // for OpenPAW /GRAPHICS/PRIMITIVES/TEXT
         // for OpenPAW /GRAPHICS/PRIMITIVES/ITX
         void update_primitive_text(const plottable_text& a_obj){
      @@ -8375,19 +8361,19 @@ protected: //rep
           vec3f pos;
           axis_2_data_frame(vec3f(a_obj.m_X,a_obj.m_Y,z),pos); //FIXME return FALSE
           xx_2_yy(pos,pos);
      -  
      +
           separator* sep = new separator;
      -  
      +
           rgba* mat = new rgba();
           mat->color = a_obj.m_TXCI;
           sep->add(mat);
      -      
      +
           matrix* _tsf = new matrix;
           _tsf->set_translate(pos);
           _tsf->mul_rotate(0,0,1,a_obj.m_ANGLE*fpi()/180.0f);
           _tsf->mul_scale(a_obj.m_SCALE,a_obj.m_SCALE,1);
           sep->add(_tsf);
      -    
      +
           //SIZE is in page coordinate YSIZ.
           //float YSIZ = height.value();
           //if(YSIZ<=0) YSIZ = 1;
      @@ -8401,20 +8387,20 @@ protected: //rep
             vec3f pos2;
             axis_2_data_frame(vec3f(a_obj.m_X+a_obj.m_SIZE,a_obj.m_Y,z),pos2);  //m_SIZE is taken as text width in this text_mode.
             xx_2_yy(pos2,pos2);
      -    
      +
             float _width = pos2.x()-pos.x();
      -   
      +
             text* _text = new text(m_ttf);
             _text->enforce_front_width = true;  //it will set _text->width, height.
             _text->front_width = _width;
             _text->back_visible = false;
      -      
      +
             _text->encoding = encoding_PAW();
             _text->strings.add(a_obj.m_TEXT);
             _text->line_width = a_obj.m_line_width;
             _text->font = a_obj.m_FONT;
             _text->font_modeling = a_obj.m_font_modeling;
      -  
      +
             if(a_obj.m_HJUST=='R') {
               _text->hjust = right;
             } else if(a_obj.m_HJUST=='C') {
      @@ -8437,20 +8423,20 @@ protected: //rep
             vec3f pos2;
             axis_2_data_frame(vec3f(a_obj.m_X,a_obj.m_Y+a_obj.m_SIZE,z),pos2);  //m_SIZE is taken as text height in this text_mode.
             xx_2_yy(pos2,pos2);
      -    
      +
             float _height = pos2.y()-pos.y();
      -   
      +
             text* _text = new text(m_ttf);
             _text->enforce_front_height = true;  //it will set _text->width, height.
             _text->front_height = _height;
             _text->back_visible = false;  //if true, we should adapt back_area::width, height to inside text size.
      -      
      +
             _text->encoding = encoding_PAW();
             _text->strings.add(a_obj.m_TEXT);
             _text->line_width = a_obj.m_line_width;
             _text->font = a_obj.m_FONT;
             _text->font_modeling = a_obj.m_font_modeling;
      -  
      +
             if(a_obj.m_HJUST=='R') {
               _text->hjust = right;
             } else if(a_obj.m_HJUST=='C') {
      @@ -8470,7 +8456,7 @@ protected: //rep
       
           } else { //text_as_it (for gopaw/pagpri.cpp).
             _tsf->mul_scale(a_obj.m_SIZE,a_obj.m_SIZE,1);
      -  
      +
             if(a_obj.m_FONT==font_hershey()) {
               //::printf("debug : tools::sg::plotter::update_primitive_text : hershey\n");
               draw_style* ds = new draw_style;
      @@ -8480,7 +8466,7 @@ protected: //rep
               //ds->line_pattern = m_title_style.line_pattern;
               //ds->line_width = m_title_style.line_width;
               sep->add(ds);
      -    
      +
               text_hershey* text = new text_hershey;
               text->encoding = encoding_PAW();
               text->strings.add(a_obj.m_TEXT);
      @@ -8499,11 +8485,11 @@ protected: //rep
                 text->vjust = bottom;
               }
               sep->add(text);
      -    
      +
             } else {
               //::printf("debug : tools::sg::plotter::update_primitive_text : freetype\n");
               base_freetype* text = base_freetype::create(m_ttf);
      -        
      +
               text->font = a_obj.m_FONT;
               if(a_obj.m_HJUST=='R') {
                 text->hjust = right;
      @@ -8519,28 +8505,28 @@ protected: //rep
               } else {
                 text->vjust = bottom;
               }
      -  
      +
               text->modeling = a_obj.m_font_modeling;
      -  
      +
               //text->encoding = encoding_PAW()
               //text->smooting = a_obj.m_SMOOTHING;
               //text->hinting = a_obj.m_HINTING;
               text->strings.add(a_obj.m_TEXT);
               //text->hjust.value(a_hjust);
               //text->vjust.value(a_vjust);
      -    
      +
               sep->add(text);
             }
       
           } //text_mode.
      -   
      +
           m_primitives_sep.add(sep);
         }
      -  
      +
         // for OpenPAW /GRAPHICS/PRIMITIVES/BOX
         void PAW_hatch(int aHTYP,hatching_policy& a_policy,float& a_spacing,float& a_angle_right,float& a_angle_left) {
           // PAW hatching encoding (paw.pdf 1.14(1992) p 174) :
      -  
      +
           a_policy = hatching_none;
           a_spacing = 0;
           a_angle_right = 0;
      @@ -8548,7 +8534,7 @@ protected: //rep
       
           int code = aHTYP;
           if(code==0) return;
      -  
      +
           // From PAW FAQ web page.
           // special code from code [1,25]
           if(code==1) {
      @@ -8586,18 +8572,18 @@ protected: //rep
             a_policy = hatching_none;
             return;
           }
      -  
      +
           //code >=100
      -  
      +
           // code = ijk
      -  
      +
           int i = code / 100;
           int j = (code - i * 100)/10;
           int k = code - i * 100 - j * 10;
      -  
      +
           // j-hatching on rightHatchStyle :
           // k-hatching on leftHatchStyle :
      -  
      +
           if((j==5)&&(k==5))
             a_policy = hatching_none;
           else if((j!=5)&&(k==5))
      @@ -8606,60 +8592,60 @@ protected: //rep
             a_policy = hatching_left;
           else if((j!=5)&&(k!=5))
             a_policy = hatching_left_and_right;
      -  
      +
           unsigned int NY = 1;
      -  
      +
           a_spacing = float(NY) * float(i) * 0.07F; //cooking
      -  
      +
           if(j!=5) {
             float angle = float(j==4?45:j*10);
             angle = 180.0F - angle;
             angle *= fpi() / 180.0F;
      -  
      +
             a_angle_right = angle;
           }
      -  
      +
           if(k!=5) {
             float angle = float(k==4?45:k*10);
      -      angle *= fpi() / 180.0F;  
      +      angle *= fpi() / 180.0F;
             a_angle_left = angle;
           }
      -  
      +
         }
      -  
      +
         void rep_box_hatch(separator& a_parent,float a_spacing,float a_angle,float a_strip_width,
                            float xx,float yy,float xe,float ye,float a_zz){
      -  
      +
           //printf("debug : SoPlotter::repHatch1D_xy : zz %g\n",a_zz);
           sg::separator* separator = new sg::separator;
      -  
      +
           bool empty = true;
      -  
      +
           vec3f points[5];
      -  
      +
           points[0].set_value(xx,yy,a_zz);
           points[1].set_value(xe,yy,a_zz);
           points[2].set_value(xe,ye,a_zz);
           points[3].set_value(xx,ye,a_zz);
           points[4].set_value(xx,yy,a_zz);
      -    
      +
           //We can have multiple hatching for a bins ; have a separator :
           hatcher _hatcher;
           _hatcher.set_offset_point(vec3f(0,0,a_zz));
           _hatcher.set_angle(a_angle);
      -    _hatcher.set_spacing(a_spacing); 
      +    _hatcher.set_spacing(a_spacing);
           if(!_hatcher.set_strip_width(a_strip_width)) {}
      -  
      -    bool res = _hatcher.check_polyline(points,4);      
      +
      +    bool res = _hatcher.check_polyline(points,4);
           if(res) res = _hatcher.compute_polyline(points,4);
      -  
      +
           size_t numPoints = _hatcher.points().size();
           size_t numVertices = _hatcher.vertices().size();
           if((res) && numPoints && numVertices) {
      -  
      +
             const std::vector& _points = _hatcher.points();
      -    	
      -      if(a_strip_width==0) {    
      +
      +      if(a_strip_width==0) {
               size_t ipt = 0;
               tools_vforcit(unsigned int,_hatcher.vertices(),itv) {
                 vertices* vtxs = new vertices;
      @@ -8671,7 +8657,7 @@ protected: //rep
                 separator->add(vtxs);
                 empty = false;
               }
      -  
      +
             } else {
               size_t ipt = 0;
               tools_vforcit(unsigned int,_hatcher.vertices(),itv) {
      @@ -8685,104 +8671,104 @@ protected: //rep
                 empty = false;
               }
             }
      -    	  
      +
             empty = false;
           }
      -  
      +
           if(empty) {
             delete separator;
           } else {
             a_parent.add(separator);
           }
         }
      -  
      +
         void update_primitive_box(std::ostream& a_out,const plottable_box& a_obj){
      -  
      +
           float z = xy_depth.value()*1.1F;
      -  
      +
           vec3f pos1;
           axis_2_data_frame(vec3f(a_obj.m_X1,a_obj.m_Y1,z),pos1);
           xx_2_yy(pos1,pos1);
      -    
      +
           vec3f pos2;
           axis_2_data_frame(vec3f(a_obj.m_X2,a_obj.m_Y2,z),pos2);
           xx_2_yy(pos2,pos2);
      -  
      +
           z = pos1[2];
       
       //    ::printf("debug : tools::sg::plotter::update_primitive_box : FAIS %d : %g %g %g : %g %g %g\n",a_obj.m_FAIS,
       //        pos1.x(),pos1.y(),pos1.z(),pos2.x(),pos2.y(),pos2.z());
      -  
      +
           if(a_obj.m_FAIS==plottable_box::HOLLOW) {
      -    
      +
             separator* sep = new separator;
      -  
      +
             rgba* mat = new rgba();
             mat->color = a_obj.m_PLCI;
             sep->add(mat);
      -  
      +
             draw_style* ds = new draw_style;
             ds->style = draw_lines;
             ds->line_pattern = line_solid;
             ds->line_width = a_obj.m_LWID;
             sep->add(ds);
      -  
      +
             vertices* vtxs = new vertices;
             vtxs->mode = gl::line_strip();
             sep->add(vtxs);
      -  
      +
             vtxs->add(pos1[0],pos1[1],z);
             vtxs->add(pos2[0],pos1[1],z);
             vtxs->add(pos2[0],pos2[1],z);
             vtxs->add(pos1[0],pos2[1],z);
             vtxs->add(pos1[0],pos1[1],z);
      -  
      +
             m_primitives_sep.add(sep);
      -      
      +
           } else if(a_obj.m_FAIS==plottable_box::SOLID) {
             separator* sep = new separator;
      -  
      +
             rgba* mat = new rgba();
             mat->color = a_obj.m_FACI;
             sep->add(mat);
      -  
      +
             draw_style* ds = new draw_style;
             ds->style = draw_filled;
             sep->add(ds);
      -  
      +
             vertices* vtxs = new vertices;
             vtxs->mode = gl::triangle_fan();
             sep->add(vtxs);
      -  
      +
             vtxs->add(pos1[0],pos1[1],z);
             vtxs->add(pos2[0],pos1[1],z);
             vtxs->add(pos2[0],pos2[1],z);
             vtxs->add(pos1[0],pos2[1],z);
      -  
      +
             m_primitives_sep.add(sep);
      -      
      +
           } else if(a_obj.m_FAIS==plottable_box::HATCHED) {
      -    
      +
            {separator* sep = new separator;
      -  
      +
             rgba* mat = new rgba();
             mat->color = a_obj.m_FACI;
             sep->add(mat);
      -  
      +
             hatching_policy hatching;
             float spacing;
             float angle_right;
             float angle_left;
             PAW_hatch(a_obj.m_FASI,hatching,spacing,angle_right,angle_left);
             float stripWidth = 0;
      -  
      +
             if((hatching==hatching_right)||((hatching==hatching_left_and_right))) {
               rep_box_hatch(*sep,spacing,angle_right,stripWidth,pos1[0],pos1[1],pos2[0],pos2[1],z);
             }
             if((hatching==hatching_left)||((hatching==hatching_left_and_right))) {
               rep_box_hatch(*sep,spacing,angle_left,stripWidth,pos1[0],pos1[1],pos2[0],pos2[1],z);
             }
      -      
      +
             if(hatching==hatching_none) {
               draw_style* ds = new draw_style;
               ds->style = draw_filled;
      @@ -8795,79 +8781,79 @@ protected: //rep
               vtxs->add(pos2[0],pos2[1],z);
               vtxs->add(pos1[0],pos2[1],z);
             }
      -  
      +
             m_primitives_sep.add(sep);}
      -  
      +
             if(a_obj.m_BORD) {
               separator* sep = new separator;
               rgba* mat = new rgba();
               mat->color = a_obj.m_PLCI;
               sep->add(mat);
      -  
      +
               draw_style* ds = new draw_style;
               ds->style = draw_lines;
               ds->line_pattern = line_solid;
               ds->line_width = 1;
               sep->add(ds);
      -  
      +
               vertices* vtxs = new vertices;
               vtxs->mode = gl::line_strip();
               sep->add(vtxs);
      -  
      +
               z *= 1.01F;
               vtxs->add(pos1[0],pos1[1],z);
               vtxs->add(pos2[0],pos1[1],z);
               vtxs->add(pos2[0],pos2[1],z);
               vtxs->add(pos1[0],pos2[1],z);
               vtxs->add(pos1[0],pos1[1],z);
      -  
      +
               m_primitives_sep.add(sep);
             }
      -  
      +
           } else if(a_obj.m_FAIS==plottable_box::PATTERN) {
      -      a_out << "tools::sg::plotter::update_plottable_box FAIS PATTERN not yet handled." << std::endl;      
      +      a_out << "tools::sg::plotter::update_plottable_box FAIS PATTERN not yet handled." << std::endl;
           }
      -    
      +
         }
       
         void update_primitive_ellipse(std::ostream& a_out,const plottable_ellipse& a_obj){
      -  
      +
           float z = xy_depth.value()*1.1F;
      -  
      +
           vec3f pos;
           axis_2_data_frame(vec3f(a_obj.m_X,a_obj.m_Y,z),pos);
           xx_2_yy(pos,pos);
      -    
      +
           vec3f pos2;
           axis_2_data_frame(vec3f(a_obj.m_X+a_obj.m_R1,a_obj.m_Y+a_obj.m_R2,z),pos2);
           xx_2_yy(pos2,pos2);
       
           float rx = pos2[0]-pos[0];
           float ry = pos2[1]-pos[1];
      -    
      +
           z = pos[2];
       
           //::printf("debug : tools::sg::plotter::update_primitive_ellipse : FAIS %d : %g %g %g : %g %g\n",a_obj.m_FAIS,
           //         pos.x(),pos.y(),pos.z(),rx,ry);
      -  
      +
           if(a_obj.m_FAIS==plottable_ellipse::HOLLOW) {
      -    
      +
             separator* sep = new separator;
      -  
      +
             matrix* _tsf = new matrix;
             _tsf->set_translate(pos);
             sep->add(_tsf);
      -      
      +
             rgba* mat = new rgba();
             mat->color = a_obj.m_PLCI;
             sep->add(mat);
      -  
      +
             draw_style* ds = new draw_style;
             ds->style = draw_lines;
             ds->line_pattern = line_solid;
             ds->line_width = a_obj.m_LWID;
             sep->add(ds);
      -  
      +
             ellipse* _ellipse = new ellipse;
             _ellipse->rx = rx;
             _ellipse->ry = ry;
      @@ -8875,51 +8861,51 @@ protected: //rep
       
             m_primitives_sep.add(sep);
       
      -/*      
      +/*
           } else if(a_obj.m_FAIS==plottable_ellipse::SOLID) {
             separator* sep = new separator;
      -  
      +
             rgba* mat = new rgba();
             mat->color = a_obj.m_FACI;
             sep->add(mat);
      -  
      +
             draw_style* ds = new draw_style;
             ds->style = draw_filled;
             sep->add(ds);
      -  
      +
             vertices* vtxs = new vertices;
             vtxs->mode = gl::triangle_fan();
             sep->add(vtxs);
      -  
      +
             vtxs->add(pos1[0],pos1[1],z);
             vtxs->add(pos2[0],pos1[1],z);
             vtxs->add(pos2[0],pos2[1],z);
             vtxs->add(pos1[0],pos2[1],z);
      -  
      +
             m_primitives_sep.add(sep);
      -      
      +
           } else if(a_obj.m_FAIS==plottable_ellipse::HATCHED) {
      -    
      +
            {separator* sep = new separator;
      -  
      +
             rgba* mat = new rgba();
             mat->color = a_obj.m_FACI;
             sep->add(mat);
      -  
      +
             hatching_policy hatching;
             float spacing;
             float angle_right;
             float angle_left;
             PAW_hatch(a_obj.m_FASI,hatching,spacing,angle_right,angle_left);
             float stripWidth = 0;
      -  
      +
             if((hatching==hatching_right)||((hatching==hatching_left_and_right))) {
               rep_box_hatch(*sep,spacing,angle_right,stripWidth,pos1[0],pos1[1],pos2[0],pos2[1],z);
             }
             if((hatching==hatching_left)||((hatching==hatching_left_and_right))) {
               rep_box_hatch(*sep,spacing,angle_left,stripWidth,pos1[0],pos1[1],pos2[0],pos2[1],z);
             }
      -      
      +
             if(hatching==hatching_none) {
               draw_style* ds = new draw_style;
               ds->style = draw_filled;
      @@ -8932,51 +8918,51 @@ protected: //rep
               vtxs->add(pos2[0],pos2[1],z);
               vtxs->add(pos1[0],pos2[1],z);
             }
      -  
      +
             m_primitives_sep.add(sep);}
      -  
      +
             if(a_obj.m_BORD) {
               separator* sep = new separator;
               rgba* mat = new rgba();
               mat->color = a_obj.m_PLCI;
               sep->add(mat);
      -  
      +
               draw_style* ds = new draw_style;
               ds->style = draw_lines;
               ds->line_pattern = line_solid;
               ds->line_width = 1;
               sep->add(ds);
      -  
      +
               vertices* vtxs = new vertices;
               vtxs->mode = gl::line_strip();
               sep->add(vtxs);
      -  
      +
               z *= 1.01F;
               vtxs->add(pos1[0],pos1[1],z);
               vtxs->add(pos2[0],pos1[1],z);
               vtxs->add(pos2[0],pos2[1],z);
               vtxs->add(pos1[0],pos2[1],z);
               vtxs->add(pos1[0],pos1[1],z);
      -  
      +
               m_primitives_sep.add(sep);
             }
      -  
      +
           } else if(a_obj.m_FAIS==plottable_ellipse::PATTERN) {
             a_out << "tools::sg::plotter::update_plottable_box FAIS PATTERN not yet handled." << std::endl;
      -*/      
      +*/
           } else {
             a_out << "tools::sg::plotter::update_plottable_box FAIS " << a_obj.m_FAIS << " not yet handled." << std::endl;
           }
      -    
      +
         }
       
         void update_primitive_img(std::ostream& /*a_out*/,const plottable_img& a_obj){
      -  
      +
           float z = xy_depth.value()*1.1F;
      -  
      +
           vec3f pos;
           axis_2_data_frame(vec3f(a_obj.m_X,a_obj.m_Y,z),pos);
      -    xx_2_yy(pos,pos);   //pos = center of image in axes coordinates. 
      +    xx_2_yy(pos,pos);   //pos = center of image in axes coordinates.
           z = pos[2];
       
           vec3f top;
      @@ -8992,7 +8978,7 @@ protected: //rep
         //    pos.x(),pos.y(),pos.z(),a_obj.m_HEIGHT,a_obj.m_THETA,a_obj.m_PHI);
       
           separator* sep = new separator;
      -  
      +
           rgba* mat = new rgba();
           mat->color = colorf_white();
           sep->add(mat);
      @@ -9006,13 +8992,13 @@ protected: //rep
           _tsf->mul_rotate(0,0,1,a_obj.m_PHI*fpi()/180.0f);
           _tsf->mul_scale(scale,scale,1);
           sep->add(_tsf);
      - 
      +
           tex_rect* _img = new tex_rect();
           _img->img = img;
           sep->add(_img);
      -  
      +
           m_primitives_sep.add(sep);
      -      
      +
         }
       
       protected: //etc
      @@ -9047,12 +9033,12 @@ protected: //etc
             if(a_val>0.0F) {
               return (flog10(a_val) - a_min)/a_dx;
             } else { // Return a negative large number :
      -        //return -FLT_MAX; 
      +        //return -FLT_MAX;
               return -100;
             }
           } else {
             // Simple protection against value that could exceed a float :
      -      if(a_val>(a_min+100.0F * a_dx)) return 100; 
      +      if(a_val>(a_min+100.0F * a_dx)) return 100;
             if(a_val<(a_min-100.0F * a_dx)) return -100;
             // Rescale :
             return (a_val - a_min)/a_dx;
      @@ -9462,9 +9448,9 @@ protected: //fields for skeleton.
         separator m_inner_frame_sep;
         separator m_primitives_sep;
         separator m_etc_sep;
      -  
      +
       protected: //fields
      -  shape_type m_shape;    
      +  shape_type m_shape;
       
         data_axis m_x_axis_data;
         data_axis m_y_axis_data;
      diff --git a/source/analysis/g4tools/include/tools/sg/primitive_visitor b/source/analysis/g4tools/include/tools/sg/primitive_visitor
      index b303488482..d71b396e3a 100644
      --- a/source/analysis/g4tools/include/tools/sg/primitive_visitor
      +++ b/source/analysis/g4tools/include/tools/sg/primitive_visitor
      @@ -21,30 +21,38 @@ class primitive_visitor {
       protected:
         virtual bool project(float& a_x,float& a_y,float& a_z,float& a_w) = 0;
       
      -  // xyzw
      -  virtual bool add_point(float,float,float,float) = 0;
      -
      -  // xyzw & rgba
      +  virtual bool add_point(float,float,float,float) = 0;  //xyzw
         virtual bool add_point(float,float,float,float,
      -                         float,float,float,float) = 0;
      +                         float,float,float,float) = 0;  //xyzw & rgbas
       
      -  // 2 xyzw
         virtual bool add_line(float,float,float,float,
      -                        float,float,float,float) = 0;
      -
      -  // 2 (xyzw & rgba)
      +                        float,float,float,float) = 0;  // 2 xyzw
         virtual bool add_line(float,float,float,float, float,float,float,float,
      -                        float,float,float,float, float,float,float,float) = 0;
      +                        float,float,float,float, float,float,float,float) = 0;  // 2 (xyzw & rgba)
       
      -
      -  // 3 xyzw
         virtual bool add_triangle(float,float,float,float,
                                   float,float,float,float,
      -                            float,float,float,float) = 0;
      -  // 3 (xywz & rgba)
      +                            float,float,float,float) = 0;  // 3 xyzw
         virtual bool add_triangle(float,float,float,float, float,float,float,float,
                                   float,float,float,float, float,float,float,float,
      -                            float,float,float,float, float,float,float,float) = 0;
      +                            float,float,float,float, float,float,float,float) = 0;  // 3 (xywz & rgba)
      +
      +  virtual bool project_normal(float& a_x,float& a_y,float& a_z) = 0;
      +  virtual bool add_point_normal(float,float,float,float,
      +                                float,float,float) = 0;
      +  virtual bool add_point_normal(float,float,float,float,
      +                                float,float,float,
      +                                float,float,float,float) = 0;
      +  virtual bool add_line_normal(float,float,float,float, float,float,float,
      +                               float,float,float,float, float,float,float) = 0;
      +  virtual bool add_line_normal(float,float,float,float, float,float,float, float,float,float,float,
      +                               float,float,float,float, float,float,float, float,float,float,float) = 0;
      +  virtual bool add_triangle_normal(float,float,float,float, float,float,float,
      +                                   float,float,float,float, float,float,float,
      +                                   float,float,float,float, float,float,float) = 0;
      +  virtual bool add_triangle_normal(float,float,float,float, float,float,float, float,float,float,float,
      +                                   float,float,float,float, float,float,float, float,float,float,float,
      +                                   float,float,float,float, float,float,float, float,float,float,float) = 0;
       public:
         primitive_visitor():m_mode(gl::points()){}
         virtual ~primitive_visitor(){}
      @@ -55,12 +63,12 @@ public:
         void add_one_point(float a_x,float a_y,float a_z) {
           float w;
           project(a_x,a_y,a_z,w);
      -    add_point(a_x,a_y,a_z,w);    
      +    add_point(a_x,a_y,a_z,w);
         }
         void add_one_point(float a_x,float a_y,float a_z,float a_r,float a_g,float a_b,float a_a) {
           float w;
           project(a_x,a_y,a_z,w);
      -    add_point(a_x,a_y,a_z,w,a_r,a_g,a_b,a_a);    
      +    add_point(a_x,a_y,a_z,w,a_r,a_g,a_b,a_a);
         }
       
         bool add_triangle_fan(size_t a_floatn,const float* a_xyzs,bool a_stop = false){
      @@ -78,13 +86,13 @@ public:
           p1y = *(pos1+1);
           p1z = *(pos1+2);
           project(p1x,p1y,p1z,w1);
      -  
      +
           const float* pos2 = a_xyzs+3*1;
           p2x = *(pos2+0);
           p2y = *(pos2+1);
           p2z = *(pos2+2);
           project(p2x,p2y,p2z,w2);
      -  
      +
           for(size_t index=2;index& a_xyzs){
           const float* _xyzs = vec_data(a_xyzs);
      -    draw_vertex_array(a_mode,a_xyzs.size(),_xyzs);    
      +    draw_vertex_array(a_mode,a_xyzs.size(),_xyzs);
         }
       
         void draw_vertex_array_xy(gl::mode_t a_mode,const std::vector& a_xys){
           const float* _xys = vec_data(a_xys);
      -    draw_vertex_array_xy(a_mode,a_xys.size(),_xys);    
      +    draw_vertex_array_xy(a_mode,a_xys.size(),_xys);
         }
       
         void draw_vertex_color_array(gl::mode_t a_mode,
      @@ -127,7 +128,7 @@ public:
                                      const std::vector& a_rgbas){
           const float* _xyzs = vec_data(a_xyzs);
           const float* _rgbas = vec_data(a_rgbas);
      -    draw_vertex_color_array(a_mode,a_xyzs.size(),_xyzs,_rgbas);    
      +    draw_vertex_color_array(a_mode,a_xyzs.size(),_xyzs,_rgbas);
         }
       
         void draw_vertex_normal_array(gl::mode_t a_mode,
      @@ -135,7 +136,7 @@ public:
                                       const std::vector& a_nms){
           const float* _xyzs = vec_data(a_xyzs);
           const float* _nms = vec_data(a_nms);
      -    draw_vertex_normal_array(a_mode,a_xyzs.size(),_xyzs,_nms);    
      +    draw_vertex_normal_array(a_mode,a_xyzs.size(),_xyzs,_nms);
         }
       
         void draw_vertex_color_normal_array(gl::mode_t a_mode,
      @@ -145,30 +146,30 @@ public:
           const float* _xyzs = vec_data(a_xyzs);
           const float* _rgbas = vec_data(a_rgbas);
           const float* _nms = vec_data(a_nms);
      -    draw_vertex_color_normal_array(a_mode,a_xyzs.size(),_xyzs,_rgbas,_nms);    
      +    draw_vertex_color_normal_array(a_mode,a_xyzs.size(),_xyzs,_rgbas,_nms);
         }
       
         void normal(const vec3f& a_vec) {normal(a_vec[0],a_vec[1],a_vec[2]);}
       
       public:
         // for sphere::visit template.
      -  bool add_triangles(size_t a_floatn,const float* a_xyzs,const float* a_nms) {
      +  bool add_triangles_normal(size_t a_floatn,const float* a_xyzs,const float* a_nms) {
           draw_vertex_normal_array(gl::triangles(),a_floatn,a_xyzs,a_nms);
           return true;
         }
      -  bool add_triangle_fan(size_t a_floatn,const float* a_xyzs,const float* a_nms) {
      +  bool add_triangle_fan_normal(size_t a_floatn,const float* a_xyzs,const float* a_nms) {
           draw_vertex_normal_array(gl::triangle_fan(),a_floatn,a_xyzs,a_nms);
           return true;
         }
      -  bool add_triangle_fan(size_t a_floatn,const float* a_xyzs,float* a_rgbas,const float* a_nms) {
      +  bool add_triangle_fan_normal_rgba(size_t a_floatn,const float* a_xyzs,float* a_nms,const float* a_rgbas) {
           draw_vertex_color_normal_array(gl::triangle_fan(),a_floatn,a_xyzs,a_rgbas,a_nms);
           return true;
         }
      -  bool add_triangle_strip(size_t a_floatn,const float* a_xyzs,const float* a_nms) {
      +  bool add_triangle_strip_normal(size_t a_floatn,const float* a_xyzs,const float* a_nms) {
           draw_vertex_normal_array(gl::triangle_strip(),a_floatn,a_xyzs,a_nms);
           return true;
         }
      -  bool add_triangle_strip(size_t a_floatn,const float* a_xyzs,const float* a_rgbas,const float* a_nms) {
      +  bool add_triangle_strip_normal_rgba(size_t a_floatn,const float* a_xyzs,const float* a_nms,const float* a_rgbas) {
           draw_vertex_color_normal_array(gl::triangle_strip(),a_floatn,a_xyzs,a_rgbas,a_nms);
           return true;
         }
      @@ -203,13 +204,11 @@ public:
           return true;
         }
       */
      -  bool add_triangle_fan_texture(size_t a_floatn,const float* a_xyzs,const float* a_nms,
      -                                gstoid a_tex,const float* a_texs){
      +  bool add_triangle_fan_texture_normal(size_t a_floatn,const float* a_xyzs,const float* a_nms,gstoid a_tex,const float* a_texs){
           draw_vertex_normal_array_texture(gl::triangle_fan(),a_floatn,a_xyzs,a_nms,a_tex,a_texs);
           return true;
         }
      -  bool add_triangle_strip_texture(size_t a_floatn,const float* a_xyzs,const float* a_nms,
      -                                  gstoid a_tex,const float* a_texs){
      +  bool add_triangle_strip_texture_normal(size_t a_floatn,const float* a_xyzs,const float* a_nms,gstoid a_tex,const float* a_texs){
           draw_vertex_normal_array_texture(gl::triangle_strip(),a_floatn,a_xyzs,a_nms,a_tex,a_texs);
           return true;
         }
      @@ -235,7 +234,7 @@ public:
           draw_vertex_array(gl::lines(),a_xyzs.size(),_xyzs);
           return true;
         }
      -  bool add_triangles(const std::vector& a_xyzs,const std::vector& a_nms){
      +  bool add_triangles_normal(const std::vector& a_xyzs,const std::vector& a_nms){
           if(a_xyzs.size()!=a_nms.size()) return false;
           const float* _xyzs = vec_data(a_xyzs);
           const float* _nms = vec_data(a_nms);
      @@ -244,7 +243,7 @@ public:
         }
         bool project_point(const mat4f& a_model_matrix,const mat4f& a_projection_matrix,
                            float& a_x,float& a_y,float& a_z,float& a_w) {
      -    //return project_point(a_x,a_y,a_z,a_w);		       
      +    //return project_point(a_x,a_y,a_z,a_w);
           a_w = 1;
           a_model_matrix.mul_4f(a_x,a_y,a_z,a_w);
           a_projection_matrix.mul_4f(a_x,a_y,a_z,a_w);
      @@ -253,7 +252,7 @@ public:
           a_y /= a_w;
           a_z /= a_w;
           return true;
      -  }		     
      +  }
         /////////////////////////////////////////////////////////
         /////////////////////////////////////////////////////////
         /////////////////////////////////////////////////////////
      @@ -262,19 +261,19 @@ public:
         bool add_triangle_strip_as_triangles(size_t a_floatn,const float* a_xyzs,const float* a_nms) { //used in sg::sphere, icosahedron_sphere.
           // It appears that if glShadeModel is GL_FLAT, triangle strip does not look the same in "gsto mode" where it is rendered as triangles.
           // We use this function for immediate rendering, in case we want the same rendering as "gsto mode".
      -    
      +
           size_t num = a_floatn/3;
           if(num<3) return false;
           size_t nxyzs = (num-2)*3*3;
      -    
      +
           std::vector m_xyzs(nxyzs);
           std::vector m_nms(nxyzs);
      -    
      +
          {float* pxyzs = vec_data(m_xyzs);
           float* pnms = vec_data(m_nms);
      -    gl::triangle_strip_to_triangles(num,a_xyzs,a_nms,pxyzs,pnms);}
      +    gl::triangle_strip_to_triangles_nms(num,a_xyzs,a_nms,pxyzs,pnms);}
       
      -    return add_triangles(nxyzs,vec_data(m_xyzs),vec_data(m_nms));
      +    return add_triangles_normal(nxyzs,vec_data(m_xyzs),vec_data(m_nms));
         }
       
         void dump_vertex_array_xy(std::ostream& a_out,gl::mode_t /*a_mode*/,size_t a_floatn,const float* a_xys) {
      @@ -285,7 +284,7 @@ public:
             a_out << "xy : " << index
                   << " " << a_xys[2*index]
                   << " " << a_xys[2*index+1]
      -            << std::endl; 
      +            << std::endl;
           }
           a_out << "dump_vertex_array_xy : end." << std::endl;
         }
      diff --git a/source/analysis/g4tools/include/tools/sg/render_gstos b/source/analysis/g4tools/include/tools/sg/render_gstos
      index c53c8b7f92..6021fc4a02 100644
      --- a/source/analysis/g4tools/include/tools/sg/render_gstos
      +++ b/source/analysis/g4tools/include/tools/sg/render_gstos
      @@ -38,7 +38,7 @@ protected: //gstos
           m_gstos_nms_sz = _add.m_nms.size();
       
           if(gsto_data.empty()) return 0;
      -    
      +
           return a_mgr.create_gsto_from_data(gsto_data);
         }
       public: //node
      @@ -50,7 +50,7 @@ public: //node
       
           if(state.m_use_gsto) {
             unsigned int _id = get_gsto_id(a_action.out(),a_action.render_manager());
      -      if(_id) {        
      +      if(_id) {
               bufpos pxyzs = 0;
               bufpos plines = pxyzs+m_gstos_points_sz*sizeof(float);
               bufpos ptris = plines+m_gstos_lines_sz*sizeof(float);
      @@ -81,7 +81,7 @@ public: //node
               if(draw_edges) a_action.set_polygon_offset(state.m_GL_POLYGON_OFFSET_FILL);
               a_action.end_gsto();
               return true;
      -  
      +
             } else { //!_id
               // use immediate rendering.
             }
      @@ -95,7 +95,7 @@ public: //node
           const state& state = a_action.state();
           if(state.m_use_gsto) {
             unsigned int _id = get_gsto_id(a_action.out(),a_action.render_manager());
      -      if(_id) {        
      +      if(_id) {
               bufpos pxyzs = 0;
               bufpos plines = pxyzs+m_gstos_points_sz*sizeof(float);
               bufpos ptris = plines+m_gstos_lines_sz*sizeof(float);
      @@ -107,7 +107,7 @@ public: //node
               a_action.draw_gsto_vn(gl::triangles(),m_gstos_tris_sz/3,ptris,pnms);
               a_action.end_gsto();
               return true;
      -  
      +
             } else { //!_id
               // use immediate rendering.
             }
      diff --git a/source/analysis/g4tools/include/tools/sg/render_manager b/source/analysis/g4tools/include/tools/sg/render_manager
      index 5aa24569cc..6f26c35306 100644
      --- a/source/analysis/g4tools/include/tools/sg/render_manager
      +++ b/source/analysis/g4tools/include/tools/sg/render_manager
      @@ -40,7 +40,7 @@ public:
       public:
         unsigned int create_gsto_from_data(const std::vector& a_xyzs){
           const float* _xyzs = vec_data(a_xyzs);
      -    return create_gsto_from_data(a_xyzs.size(),_xyzs);    
      +    return create_gsto_from_data(a_xyzs.size(),_xyzs);
         }
       };
       
      diff --git a/source/analysis/g4tools/include/tools/sg/render_zb b/source/analysis/g4tools/include/tools/sg/render_zb
      deleted file mode 100644
      index 7afb0c7b3e..0000000000
      --- a/source/analysis/g4tools/include/tools/sg/render_zb
      +++ /dev/null
      @@ -1,720 +0,0 @@
      -// Copyright (C) 2010, Guy Barrand. All rights reserved.
      -// See the file tools.license for terms.
      -
      -#ifndef tools_sg_render_zb
      -#define tools_sg_render_zb
      -
      -#include "manager_zb"
      -
      -#include "render_action"
      -#include "primitive_visitor"
      -#include "../glprims"
      -
      -#include "../zb/buffer"
      -
      -#include "../lina/plane"
      -#include "../mathf"
      -#include "../hls"
      -#include "../colorfs"
      -#include "../lina/vec2f"
      -#include "../lina/vec3d" //ZZ=double
      -#include "../lina/geom2"
      -
      -#ifdef _MSC_VER
      -// disable the warning about the usage of "this" in the constructor.
      -#pragma warning(disable:4355)
      -#endif
      -
      -namespace tools {
      -namespace sg {
      -
      -class render_zb : public render_action {
      -public:
      -  virtual void draw_vertex_array(gl::mode_t a_mode,size_t a_floatn,const float* a_xyzs){
      -    m_pv.add_primitive(a_mode,a_floatn,a_xyzs);
      -  }
      -
      -  virtual void draw_vertex_array_xy(gl::mode_t a_mode,size_t a_floatn,const float* a_xys){
      -    m_pv.add_primitive_xy(a_mode,a_floatn,a_xys);
      -  }
      -
      -  virtual void draw_vertex_color_array(gl::mode_t a_mode,size_t a_floatn,
      -                                       const float* a_xyzs,const float* a_rgbas){
      -    m_pv.add_primitive(a_mode,a_floatn,a_xyzs,a_rgbas);
      -  }
      -
      -  virtual void draw_vertex_normal_array(gl::mode_t a_mode,size_t a_floatn,
      -                                        const float* a_xyzs,const float* /*a_nms*/){
      -    m_pv.add_primitive(a_mode,a_floatn,a_xyzs);
      -  }
      -
      -  virtual void draw_vertex_color_normal_array(gl::mode_t a_mode,size_t a_floatn,
      -                                              const float* a_xyzs,const float* a_rgbas,const float* /*a_nms*/){
      -    // We expect a_nms of size : 3*(a_floatn/3)
      -    // (then one normal per 3D point).
      -    m_pv.add_primitive(a_mode,a_floatn,a_xyzs,a_rgbas);
      -  }
      -
      -  virtual void clear_color(float a_r,float a_g,float a_b,float a_a){
      -    zb::buffer::ZPixel px = get_pix(colorf(a_r,a_g,a_b,a_a));
      -    m_zb.clear_color_buffer(px);
      -  }
      -  virtual void color4f(float a_r,float a_g,float a_b,float a_a){
      -    m_rgba.set_value(a_r,a_g,a_b,a_a);
      -  }
      -  virtual void line_width(float a_v){m_line_width = a_v;}
      -  virtual void point_size(float a_v) {m_point_size = a_v;}
      -  virtual void set_polygon_offset(bool a_v) {m_POLYGON_OFFSET_FILL = a_v;}
      -  virtual void normal(float a_x,float a_y,float a_z) {
      -    m_normal.set_value(a_x,a_y,a_z);
      -  }
      -
      -  virtual void set_winding(winding_type a_v) {
      -    m_ccw = (a_v==winding_ccw?true:false);
      -  }
      -
      -  virtual void set_depth_test(bool a_on) {m_DEPTH_TEST = a_on;}
      -
      -  virtual void set_cull_face(bool a_on) {m_CULL_FACE = a_on;}
      -  virtual void set_point_smooth(bool a_on) {m_POINT_SMOOTH = a_on;}
      -  virtual void set_line_smooth(bool a_on) {m_LINE_SMOOTH = a_on;}
      -
      -  virtual void load_proj_matrix(const mat4f& a_mtx) {
      -    m_proj = a_mtx;
      -    if(!m_proj.invert(m_proj_1)){}
      -  }
      -
      -  virtual void load_model_matrix(const mat4f& a_mtx) {m_model = a_mtx;}
      -
      -  virtual unsigned int max_lights() {return 1000;}
      -
      -  virtual void enable_light(unsigned int,
      -                            float a_dx,float a_dy,float a_dz,
      -                            float a_r,float a_g,float a_b,float a_a){
      -    m_light_color.set_value(a_r,a_g,a_b,a_a);
      -    m_light_direction.set_value(a_dx,a_dy,a_dz);
      -    m_light_on = true;
      -  }
      -
      -  virtual void set_lighting(bool a_on) {m_light_on = a_on;}
      -
      -  virtual void restore_state(unsigned int /*a_ret_num_light*/) {
      -    m_proj = m_state.m_proj;
      -    m_model = m_state.m_model;
      -
      -    if(!m_proj.invert(m_proj_1)){}
      -    
      -    m_rgba = m_state.m_color;
      -    m_ccw = (m_state.m_winding==winding_ccw?true:false);
      -    m_POLYGON_OFFSET_FILL = m_state.m_GL_POLYGON_OFFSET_FILL;
      -    m_CULL_FACE = m_state.m_GL_CULL_FACE;
      -    m_POINT_SMOOTH = m_state.m_GL_POINT_SMOOTH;
      -    m_LINE_SMOOTH = m_state.m_GL_LINE_SMOOTH;
      -    m_line_width = m_state.m_line_width;
      -    m_point_size = m_state.m_point_size;
      -    m_light_on = m_state.m_GL_LIGHTING;
      -    m_DEPTH_TEST = m_state.m_GL_DEPTH_TEST;
      -
      -
      -/*
      -    if(m_state.m_GL_TEXTURE_2D) ::glEnable(GL_TEXTURE_2D);
      -    else                        ::glDisable(GL_TEXTURE_2D);
      -
      -    // The "return of separator" state had ret_num_light.
      -    // The restored state has m_light.
      -    // We have to glDisable lights with index in [m_light,ret_num_light-1]
      -    for(unsigned int index=m_state.m_light;index poly;
      -    poly.push_back(t1);
      -    poly.push_back(t2);
      -    poly.push_back(t3);
      -    poly.push_back(t4);
      -    poly.push_back(t1);
      -
      -   {float r,g,b,tx,ty;
      -    vec3f p;
      -    vec2f t;
      -    unsigned char* pos = img.buffer();
      -    for(unsigned int row=0;row cmap_t;
      -public:
      -  //const cmap_t& colormap() const {return m_cmap;}
      -  //cmap_t& colormap() {return m_cmap;}
      -  zb::buffer::ZPixel add_color(float a_r,float a_g,float a_b,float a_a){
      -    return add_color(colorf(a_r,a_g,a_b,a_a));
      -  }
      -  zb::buffer::ZPixel add_color(float a_r,float a_g,float a_b){
      -    return add_color(a_r,a_g,a_b,1);
      -  }
      -  zb::buffer::ZPixel add_color(const colorf& a_col){
      -    //::printf("debug : render_zb::add_color : %g %g %g %g : %d\n",
      -    //    a_col.r(),a_col.g(),a_col.b(),a_col.a(),m_cmap.size());
      -    zb::buffer::ZPixel pix = (zb::buffer::ZPixel)m_cmap.size();
      -    m_cmap[a_col] = pix;
      -    return pix;
      -  }
      -
      -  zb::buffer::ZPixel get_pix(const colorf& a_rgba) {   
      -    cmap_t::const_iterator it = m_cmap.find(a_rgba);
      -    if(it!=m_cmap.end()) return (*it).second;
      -    return add_color(a_rgba);
      -  }
      -
      -  typedef std::map rcmap_t;
      -  const rcmap_t& rcolormap() const {return m_rcmap;}
      -  rcmap_t& rcolormap() {return m_rcmap;}
      -protected:
      -  void gen_rcmap() {
      -    m_rcmap.clear();
      -    cmap_t::const_iterator it;
      -    for(it=m_cmap.begin();it!=m_cmap.end();++it){
      -      m_rcmap[(*it).second] = (*it).first;
      -    }    
      -  }
      -public:
      -  //typedef wps::VCol VCol;
      -  typedef float VCol;
      -
      -  static bool get_rgb(void* a_tag,unsigned int a_col,unsigned int a_row,VCol& a_r,VCol& a_g,VCol& a_b){
      -    //used with wps.
      -    render_zb* rzb = (render_zb*)a_tag; 
      -
      -    zb::buffer::ZPixel pix;
      -    if(!rzb->zbuffer().get_clipped_pixel(a_col,rzb->wh()-1-a_row,pix)){
      -      rzb->out() << "get_rgb : can't get zbuffer pixel" << std::endl;
      -      a_r = 1;
      -      a_g = 0;
      -      a_b = 0;
      -      return false;
      -    }
      -
      -    if(rzb->rcolormap().empty()) rzb->gen_rcmap();
      -
      -   {rcmap_t::const_iterator it = rzb->rcolormap().find(pix);
      -    if(it==rzb->rcolormap().end()) {
      -      rzb->out() << "can't find pixel " << pix
      -                 << " in cmap (sz " << rzb->rcolormap().size() << ")." 
      -                 << std::endl;
      -      a_r = 1;
      -      a_g = 0;
      -      a_b = 0;
      -      return false;
      -    }
      -    a_r = (*it).second.r();
      -    a_g = (*it).second.g();
      -    a_b = (*it).second.b();}
      -
      -    return true;
      -  }
      -
      -  unsigned char* get_rgbas(size_t& a_sz) {
      -    if(!m_ww || !m_wh) {a_sz = 0;return 0;}
      -    a_sz = 4 * m_ww * m_wh;
      -    typedef unsigned char uchar;
      -    uchar* rgbas = new uchar[a_sz];
      -    if(!rgbas) {a_sz = 0;return 0;}
      -    uchar* pos = rgbas;
      -    VCol r,g,b;
      -    VCol a = 1;
      -    for(unsigned int row=0;row int
      -      a_p.y = fround(a_y); //float -> int
      -      a_p.z = (zb::ZZ)a_z; //float -> double
      -    }
      -
      -    unsigned int npix(float a_size) { //a_size must be >1
      -      // 0 -> 0
      -      // 1 -> 0
      -      // 2 -> 1    3x3  
      -      // 3 -> 1    3x3
      -      // 4 -> 2    5x5
      -      // 5 -> 2    5x5
      -      // 6 -> 3    7x7
      -      unsigned int num = (unsigned int)a_size;
      -      unsigned int num_2 = num/2;
      -      if(2*num_2==num) {num++;num_2 = num/2;}
      -      return num_2;
      -    }
      -
      -    bool _add_point(float a_x,float a_y,float a_z,const colorf& a_color){
      -      m_rzb.m_zb.set_depth_test(m_rzb.m_DEPTH_TEST);
      -
      -      m_rzb.m_vp_mtx.mul_3f(a_x,a_y,a_z);
      -      a_z *= -1;
      -
      -      zb::point p;
      -      zinit(p,a_x,a_y,a_z);
      -
      -      zb::buffer::ZPixel px = m_rzb.get_pix(a_color);
      -
      -      m_rzb.m_zb.draw_point(p,px,npix(m_rzb.m_point_size));
      -
      -      return true;
      -    }
      -  
      -    bool _add_triangle(float a_p1x,float a_p1y,float a_p1z,float a_p1w,
      -                       float a_p2x,float a_p2y,float a_p2z,float a_p2w,
      -                       float a_p3x,float a_p3y,float a_p3z,float a_p3w,
      -                       const colorf& a_color){
      - 
      -      float p1x = a_p1x;float p1y = a_p1y;float p1z = a_p1z;//float p1w = a_p1w;
      -      float p2x = a_p2x;float p2y = a_p2y;float p2z = a_p2z;//float p2w = a_p2w;
      -      float p3x = a_p3x;float p3y = a_p3y;float p3z = a_p3z;//float p3w = a_p3w;
      -
      -      m_rzb.m_vp_mtx.mul_3f(p1x,p1y,p1z);
      -      m_rzb.m_vp_mtx.mul_3f(p2x,p2y,p2z);
      -      m_rzb.m_vp_mtx.mul_3f(p3x,p3y,p3z);
      -      p1z *= -1;
      -      p2z *= -1;
      -      p3z *= -1;
      -
      -      if(m_rzb.m_POLYGON_OFFSET_FILL){
      -        // zs are in [-1,1]
      -        float epsil = 1e-5f;
      -        //float epsil = 1e-4f;
      -        p1z -= epsil;
      -        p2z -= epsil;
      -        p3z -= epsil;
      -      }
      -
      -      typedef zb::ZZ ZZ; //double
      -  
      -      plane pn(
      -        vec3(p1x,p1y,p1z),
      -        vec3(p2x,p2y,p2z),
      -        vec3(p3x,p3y,p3z)
      -      );
      -      if(!pn.is_valid()) return true;
      -      
      -      // norm[0]*x+norm[1]*y+norm[2]*z = dist
      -      // A*x+B*y+C*z+D = 0
      -
      -      ZZ C = pn.normal()[2];
      -
      -      if(m_rzb.m_CULL_FACE){  // check back facing or by the edge :
      -        if(m_rzb.m_ccw) {
      -          if(C<=0) return true;
      -        } else {
      -          if(C>=0) return true;
      -        }
      -      }
      -
      -      ZZ A = pn.normal()[0];
      -      ZZ B = pn.normal()[1];
      -      ZZ D = -pn.distance_from_origin();
      -
      -      //ZZ zmn = mn(mn(p1z,p2z),p3z);
      -      //ZZ zmx = mx(mx(p1z,p2z),p3z);
      -
      -      zb::point list[3];
      -      zinit(list[0],p1x,p1y,p1z);
      -      zinit(list[1],p2x,p2y,p2z);
      -      zinit(list[2],p3x,p3y,p3z);
      -
      -      m_rzb.m_zb.set_depth_test(m_rzb.m_DEPTH_TEST);
      -
      -      if(m_rzb.m_light_on) {
      -
      -        float _p1x = a_p1x;float _p1y = a_p1y;float _p1z = a_p1z;float _p1w = a_p1w;
      -        float _p2x = a_p2x;float _p2y = a_p2y;float _p2z = a_p2z;float _p2w = a_p2w;
      -        float _p3x = a_p3x;float _p3y = a_p3y;float _p3z = a_p3z;float _p3w = a_p3w;
      -
      -        _p1x *= _p1w;_p1y *= _p1w;_p1z *= _p1w;
      -        _p2x *= _p2w;_p2y *= _p2w;_p2z *= _p2w;
      -        _p3x *= _p3w;_p3y *= _p3w;_p3z *= _p3w;
      -
      -        m_rzb.m_proj_1.mul_4f(_p1x,_p1y,_p1z,_p1w);
      -        m_rzb.m_proj_1.mul_4f(_p2x,_p2y,_p2z,_p2w);
      -        m_rzb.m_proj_1.mul_4f(_p3x,_p3y,_p3z,_p3w);
      -
      -        plane _pn(
      -          vec3(_p1x,_p1y,_p1z),
      -          vec3(_p2x,_p2y,_p2z),
      -          vec3(_p3x,_p3y,_p3z)
      -        );
      -        if(_pn.is_valid()) {
      -          vec3f npn(float(_pn.normal().x()),
      -                    float(_pn.normal().y()),
      -                    float(_pn.normal().z()));
      -          vec3f d = m_rzb.m_light_direction;
      -          float dx =  m_rzb.m_light_direction.x();
      -          float dy =  m_rzb.m_light_direction.y();
      -          float dz =  m_rzb.m_light_direction.z();
      -          m_rzb.m_model.mul_3f(dx,dy,dz);
      -          d.set_value(dx,dy,dz);
      -          if(d.normalize()) {
      -            float dot = npn.dot(d);     
      -            if((-1<=dot)&&(dot<=0)) {
      -              dot *= -1;
      -
      -//            colorf c
      -//              (a_color.r()*dot,a_color.g()*dot,a_color.b()*dot,a_color.a());
      -
      -              float h,l,s;
      -              rgb_to_hls(a_color.r(),a_color.g(),a_color.b(),h,l,s);
      -              l *= dot;
      -              float r,g,b;
      -              hls_to_rgb(h,l,s,r,g,b);
      -
      -              colorf c(r,g,b,a_color.a());
      -
      -              m_rzb.m_zb.draw_polygon(3,list,A,B,C,D,m_rzb.get_pix(c));  
      -            //m_rzb.m_zb.draw_polygon(3,list,A,B,C,D,m_rzb.get_pix(a_color));  
      -            }
      -          }
      -        }
      -
      -      } else {
      -        m_rzb.m_zb.draw_polygon(3,list,A,B,C,D,m_rzb.get_pix(a_color));  
      -      }
      -
      -      return true;
      -    }
      -  protected:
      -    render_zb& m_rzb;
      -  };
      -
      -protected:
      -  manager_zb& m_mgr;  
      -  mat4f m_vp_mtx;
      -  zb::buffer m_zb;
      -  primvis m_pv;
      -  mat4f m_proj_1; //OPTIMIZE : used if m_light_on true.
      -  cmap_t m_cmap;
      -  rcmap_t m_rcmap;
      -  colorf m_light_color;
      -  vec3f m_light_direction;
      -  vec3f m_normal;
      -
      -  // to be restored in restore_state() :
      -  mat4f m_proj;
      -  mat4f m_model;
      -  colorf m_rgba;  
      -  bool m_ccw;
      -  bool m_POLYGON_OFFSET_FILL;	
      -  bool m_CULL_FACE;
      -  bool m_POINT_SMOOTH;
      -  bool m_LINE_SMOOTH;
      -  float m_line_width;
      -  float m_point_size;  
      -  bool m_light_on;
      -  bool m_DEPTH_TEST;
      -};
      -
      -}}
      -
      -#endif
      diff --git a/source/analysis/g4tools/include/tools/sg/search_action b/source/analysis/g4tools/include/tools/sg/search_action
      index ad673caed6..9a64593a53 100644
      --- a/source/analysis/g4tools/include/tools/sg/search_action
      +++ b/source/analysis/g4tools/include/tools/sg/search_action
      @@ -17,9 +17,10 @@ namespace tools {
       namespace sg {
       
       class search_action : public action {
      +  TOOLS_ACTION(search_action,tools::sg::search_action,action)
       public:
         search_action(std::ostream& a_out)
      -  :action(a_out)
      +  :parent(a_out)
         ,m_what(search_node_of_class)
         ,m_stop_at_first(false)
         ,m_node(0) //not owner
      @@ -29,7 +30,7 @@ public:
         virtual ~search_action(){}
       public:
         search_action(const search_action& a_from)
      -  :action(a_from)
      +  :parent(a_from)
         ,m_what(a_from.m_what)
         ,m_stop_at_first(a_from.m_stop_at_first)
         ,m_class(a_from.m_class)
      @@ -38,7 +39,7 @@ public:
         ,m_done(false)
         {}
         search_action& operator=(const search_action& a_from){
      -    action::operator=(a_from);
      +    parent::operator=(a_from);
           if(&a_from==this) return *this;
           m_what = a_from.m_what;
           m_stop_at_first = a_from.m_stop_at_first;
      @@ -62,7 +63,7 @@ public:
         };
         search_what what() const {return m_what;}
         void set_what(search_what a_v) {m_what = a_v;}
      - 
      +
         void set_done(bool a_value) {m_done = a_value;}
         bool done() const {return m_done;}
       
      diff --git a/source/analysis/g4tools/include/tools/sg/senum b/source/analysis/g4tools/include/tools/sg/senum
      index 6dd71e92a0..0bcfff9f7e 100644
      --- a/source/analysis/g4tools/include/tools/sg/senum
      +++ b/source/analysis/g4tools/include/tools/sg/senum
      @@ -19,7 +19,7 @@ inline const hjust_rec* hjust_recs(unsigned int& a_num){
           {"left",     left},
           {"center",   center},
           {"right",    right}
      -  };  
      +  };
         a_num = sizeof(list)/sizeof(list[0]);
         return list;
       }
      @@ -50,7 +50,7 @@ inline const vjust_rec* vjust_recs(unsigned int& a_num){
           {"bottom",   bottom},
           {"middle",   middle},
           {"top",      top}
      -  };  
      +  };
         a_num = sizeof(list)/sizeof(list[0]);
         return list;
       }
      @@ -100,7 +100,7 @@ inline const marker_style_rec* marker_style_recs(unsigned int& a_num){
           {"penta_star_line",     marker_penta_star_line},
           {"penta_star_filled",   marker_penta_star_filled},
           {"minus",               marker_minus}
      -  };  
      +  };
         a_num = sizeof(list)/sizeof(list[0]);
         return list;
       }
      @@ -124,6 +124,14 @@ inline const char* smarker_style(marker_style a_v){
         }
         return 0;
       }
      +inline void smarker_styles(std::vector& a_v){
      +  a_v.clear();
      +  unsigned int number;
      +  const marker_style_rec* list = marker_style_recs(number);
      +  for(unsigned int count=0;count& a_v){
         a_v.clear();
         unsigned int number;
      @@ -207,7 +215,7 @@ inline const hatching_policy_rec* hatching_policy_recsList(unsigned int& a_num){
           {"right",          hatching_right},
           {"left",           hatching_left},
           {"left_and_right", hatching_left_and_right}
      -  };  
      +  };
         a_num = sizeof(list)/sizeof(list[0]);
         return list;
       }
      @@ -240,7 +248,7 @@ inline const projection_type_rec* projection_type_recsList(unsigned int& a_num){
           {"phiz",     projection_phiz},
           {"zr",       projection_zr},
           {"zphi",     projection_zphi}
      -  };  
      +  };
         a_num = sizeof(list)/sizeof(list[0]);
         return list;
       }
      @@ -280,7 +288,7 @@ inline bool sline_pattern(const std::string& a_s,lpat& aPattern){
         }
         return true;
       }
      -  
      +
       ///////////////////////////////////////////////////////////////
       ///////////////////////////////////////////////////////////////
       ///////////////////////////////////////////////////////////////
      @@ -309,7 +317,7 @@ inline bool smove_type(const std::string& a_s,move_type& a_move) {
         if(a_s=="move_zoom_in_out_rot") {a_move = move_zoom_in_out_rot;return true;}
         if(a_s=="move_curve") {a_move = move_curve;return true;}
         a_move = move_rotate_left;
      -  return false;    
      +  return false;
       }
       
       }}
      diff --git a/source/analysis/g4tools/include/tools/sg/set_plotter_camera b/source/analysis/g4tools/include/tools/sg/set_plotter_camera
      index e7ec296824..e29e790d57 100644
      --- a/source/analysis/g4tools/include/tools/sg/set_plotter_camera
      +++ b/source/analysis/g4tools/include/tools/sg/set_plotter_camera
      @@ -41,7 +41,7 @@ inline void set_plotter_camera(float a_XSIZ,float a_YSIZ,float a_ZSIZ,
           if(aspect>=1) { //w>h
             // camera must match in height YSIZ. Adjust XSIZ.
             a_plotter.width.value(YSIZ * aspect);
      -    } else { 
      +    } else {
             // camera must match in width XSIZ. Adjust YSIZ.
             a_plotter.height.value(XSIZ / aspect);
           }
      @@ -73,14 +73,14 @@ inline void set_plotter_camera(float a_XSIZ,float a_YSIZ,float a_ZSIZ,
             if(aspect> v;
           if(strm.fail()) return false;
      -    parent::value(v); 
      +    parent::value(v);
           return true;
         }
       public:
      diff --git a/source/analysis/g4tools/include/tools/sg/sf_img b/source/analysis/g4tools/include/tools/sg/sf_img
      index 43c3335c57..3e31e0d0f7 100644
      --- a/source/analysis/g4tools/include/tools/sg/sf_img
      +++ b/source/analysis/g4tools/include/tools/sg/sf_img
      @@ -39,7 +39,7 @@ public:
             mem::decrement(s_new().c_str());
       #endif
           }
      -    return true;    
      +    return true;
         }
         virtual bool dump(std::ostream&) {
           //a_out << parent::m_value << std::endl;
      diff --git a/source/analysis/g4tools/include/tools/sg/sf_mat4f b/source/analysis/g4tools/include/tools/sg/sf_mat4f
      index e6c84fe90b..b94bad2ca0 100644
      --- a/source/analysis/g4tools/include/tools/sg/sf_mat4f
      +++ b/source/analysis/g4tools/include/tools/sg/sf_mat4f
      @@ -122,7 +122,7 @@ public:
           m_touched = true;
           return true;
         }
      -  
      +
         bool mul_rotate(const vec3f& a_from,const vec3f& a_to,float a_tmp[]) {
           rotf qr;
           if(!qr.set_value(a_from,a_to)) return false;
      diff --git a/source/analysis/g4tools/include/tools/sg/state b/source/analysis/g4tools/include/tools/sg/state
      index 9ad854d844..0a2502b081 100644
      --- a/source/analysis/g4tools/include/tools/sg/state
      +++ b/source/analysis/g4tools/include/tools/sg/state
      @@ -44,6 +44,8 @@ public:
         ,m_use_gsto(false)
       
         ,m_winding(winding_ccw)
      +  ,m_color(1,1,1,1)
      +  ,m_normal(0,0,1)
       
         ,m_light(0)
       
      @@ -94,12 +96,13 @@ public:
       
         ,m_winding(a_from.m_winding)
         ,m_color(a_from.m_color)
      +  ,m_normal(a_from.m_normal)
       
         ,m_light(a_from.m_light)
       
         ,m_draw_type(a_from.m_draw_type)
         ,m_shade_model(a_from.m_shade_model)
      -  
      +
         ,m_line_width(a_from.m_line_width)
         ,m_line_pattern(a_from.m_line_pattern)
         ,m_point_size(a_from.m_point_size)
      @@ -136,6 +139,7 @@ public:
       
           m_winding = a_from.m_winding;
           m_color = a_from.m_color;
      +    m_normal = a_from.m_normal;
       
           m_light = a_from.m_light;
       
      @@ -167,7 +171,7 @@ public:
           a_z /= a_w;
           return true;
         }
      -  
      +
         void screen2ndc(int a_x,int a_y, //signed because of wall.
                         float& a_wcx,float& a_wcy,float& a_wcz,float& a_wcw) const {
           // a proj point in near plane has (z,w) :
      @@ -184,17 +188,17 @@ public:
             float t = m_camera_znear;
             a_wcx *= t;
             a_wcy *= t;
      -      a_wcz *= t; 
      +      a_wcz *= t;
             a_wcw = t;
           }
      -  }  
      +  }
       
         bool screen2wc(int a_x,int a_y, //signed because of wall.
                        float& a_wcx,float& a_wcy,float& a_wcz) const {
           mat4f mtx = m_proj;
           mtx.mul_mtx(m_model);
           mat4f inv;
      -    if(!mtx.invert(inv)) {a_wcx = 0;a_wcy = 0;a_wcz = 0;return false;}  
      +    if(!mtx.invert(inv)) {a_wcx = 0;a_wcy = 0;a_wcz = 0;return false;}
           float w;
           screen2ndc(a_x,a_y,a_wcx,a_wcy,a_wcz,w);
           inv.mul_4f(a_wcx,a_wcy,a_wcz,w);
      @@ -203,13 +207,13 @@ public:
           a_wcy /= w;
           a_wcz /= w;
           return true;
      -  }  
      +  }
         bool screen2pwc(int a_x,int a_y, //signed because of wall.
                         float& a_wcx,float& a_wcy,float& a_wcz) const {
           mat4f mtx = m_proj;
           //mtx.mul_mtx(m_model);
           mat4f inv;
      -    if(!mtx.invert(inv)) {a_wcx = 0;a_wcy = 0;a_wcz = 0;return false;}  
      +    if(!mtx.invert(inv)) {a_wcx = 0;a_wcy = 0;a_wcz = 0;return false;}
           float w;
           screen2ndc(a_x,a_y,a_wcx,a_wcy,a_wcz,w);
           inv.mul_4f(a_wcx,a_wcy,a_wcz,w);
      @@ -218,7 +222,7 @@ public:
           a_wcy /= w;
           a_wcz /= w;
           return true;
      -  }  
      +  }
         void camera_proj_only(mat4f& a_mtx) const {
           float l = m_camera_lrbt[0];
           float r = m_camera_lrbt[1];
      @@ -253,6 +257,7 @@ public:
       
         winding_type m_winding;
         colorf m_color;
      +  vec3f m_normal;
       
         unsigned int m_light;
       
      diff --git a/source/analysis/g4tools/include/tools/sg/states b/source/analysis/g4tools/include/tools/sg/states
      index 33a41d1a73..3825594629 100644
      --- a/source/analysis/g4tools/include/tools/sg/states
      +++ b/source/analysis/g4tools/include/tools/sg/states
      @@ -27,7 +27,7 @@ public:
           m_state.m_ww = a_ww;
           m_state.m_wh = a_wh;
         }
      -#endif  
      +#endif
         virtual ~states(){}
       protected:
       #ifdef TOOLS_SG_STATES_CUR
      @@ -78,7 +78,7 @@ public:
         void pop_state() {
           //if(!m_states.size()) return; //throw.
           m_state = m_states.back();
      -    m_states.pop_back();    
      +    m_states.pop_back();
         }
         void push_state() {m_states.push_back(m_state);}
       #endif
      @@ -93,7 +93,7 @@ protected:
         int m_cur_state;
       #else
         sg::state m_state;
      -#endif  
      +#endif
         sg::state m_saved_state;
       };
       
      diff --git a/source/analysis/g4tools/include/tools/sg/strings b/source/analysis/g4tools/include/tools/sg/strings
      index 5fb0269db8..67065ab925 100644
      --- a/source/analysis/g4tools/include/tools/sg/strings
      +++ b/source/analysis/g4tools/include/tools/sg/strings
      @@ -140,15 +140,33 @@ inline const std::string& modeling_markers() { //used in sg::plotter.
       }
       
       ///////////////////////////////////////////////////////////////
      +/// EsbRootView : /////////////////////////////////////////////
       ///////////////////////////////////////////////////////////////
      -inline const std::string& modeling_arrow() { //used in EsbRootView.
      +
      +inline const std::string& modeling_arrow() {
         static const std::string s_v("arrow");
         return s_v;
       }
      +inline const std::string& modeling_cube() {
      +  static const std::string s_v("cube");
      +  return s_v;
      +}
       inline const std::string& modeling_cone() { //used in EsbRootView.
         static const std::string s_v("cone");
         return s_v;
       }
      +inline const std::string& modeling_cone_detector() { //used in EsbRootView.
      +  static const std::string s_v("cone_detector");
      +  return s_v;
      +}
      +inline const std::string& modeling_detector() { //used in EsbRootView.
      +  static const std::string s_v("detector");
      +  return s_v;
      +}
      +inline const std::string& modeling_firework() { //used in EsbRootView.
      +  static const std::string s_v("firework");
      +  return s_v;
      +}
       
       ///////////////////////////////////////////////////////////////
       ///////////////////////////////////////////////////////////////
      @@ -186,6 +204,9 @@ TOOLS_FONT_TTF(couri)
       TOOLS_FONT_TTF(courbi)
       TOOLS_FONT_TTF(lucidagrandebd)
       
      +TOOLS_FONT_TTF(roboto_bold)    //free replacement of arialbd
      +TOOLS_FONT_TTF(lato_regular)   //free replacement of helvetica
      +
       #undef TOOLS_FONT_TTF
       
       inline const std::string& font_stixgeneral_otf() {static const std::string s_v("stixgeneral.otf");return s_v;}
      @@ -274,6 +295,7 @@ TOOLS_GLOBAL_STRING(camera_height)
       
       TOOLS_GLOBAL_STRING(none)
       
      +TOOLS_GLOBAL_STRING(placement)
       // send sg options :
       TOOLS_GLOBAL_STRING_VALUE(send_placement,placement)
       TOOLS_GLOBAL_STRING_VALUE(placement_static,static)
      diff --git a/source/analysis/g4tools/include/tools/sg/style b/source/analysis/g4tools/include/tools/sg/style
      index e08b3b3ca1..7fe9d5356a 100644
      --- a/source/analysis/g4tools/include/tools/sg/style
      +++ b/source/analysis/g4tools/include/tools/sg/style
      @@ -31,10 +31,10 @@ public:
         sf line_pattern;
         sf_enum marker_style;
         sf_enum area_style;
      -  sf_string modeling; 
      -  sf_string light_model; 
      -  sf_string tick_modeling; 
      -  sf_string encoding; 
      +  sf_string modeling;
      +  sf_string light_model;
      +  sf_string tick_modeling;
      +  sf_string encoding;
         sf smoothing;
         sf hinting;
         sf_string cut;
      @@ -131,8 +131,8 @@ private:
           add_field(&marker_style);
           add_field(&area_style);
           add_field(&modeling);
      -    add_field(&light_model); 
      -    add_field(&tick_modeling); 
      +    add_field(&light_model);
      +    add_field(&tick_modeling);
           add_field(&encoding);
           add_field(&smoothing);
           add_field(&hinting);
      @@ -356,7 +356,7 @@ public:
           coloring = "";
           title = "";
         }
      -  
      +
         bool from_string(std::ostream& a_out,const cmaps_t& a_cmaps,const std::string& a_s) {
           style_parser sp;
       
      @@ -406,14 +406,14 @@ public:
           sp.coloring(coloring.value());
           sp.title(title.value());
       
      -    //if(!sp.parse(a_s,style_parser::def_error_func)) 
      +    //if(!sp.parse(a_s,style_parser::def_error_func))
           //  return false;
       
           if(!sp.parse(a_out,a_cmaps,a_s)) {
             a_out << "tools::sg::style::from_string :"
                   << " parse failed."
                   << std::endl;
      -      return false;    
      +      return false;
           }
       
           color.value(sp.color());
      diff --git a/source/analysis/g4tools/include/tools/sg/style_colormap b/source/analysis/g4tools/include/tools/sg/style_colormap
      index e73801beb9..026f26a4bb 100644
      --- a/source/analysis/g4tools/include/tools/sg/style_colormap
      +++ b/source/analysis/g4tools/include/tools/sg/style_colormap
      @@ -71,9 +71,9 @@ public:
       
           char ss[192]; //3*64 = 192
           snpf(ss,sizeof(ss),"%g %g %g",c[0],c[1],c[2]);
      -    a_s = std::string(ss);  
      +    a_s = std::string(ss);
           return true;
      -  } 
      +  }
       public:
         void add(const style_color& a_color) {
           (*this)[uint32((*this).size())] = a_color;
      @@ -95,7 +95,7 @@ public:
           tmp.set_name(#a__name);\
           set_color_##a__name(tmp);\
           add(tmp);
      -  
      +
         style_default_colormap() {
           style_color tmp;
           STYLE_COLORMAP_ADD(aquamarine)
      @@ -119,7 +119,7 @@ public:
           STYLE_COLORMAP_ADD(coral)
           STYLE_COLORMAP_ADD(cyan)
           STYLE_COLORMAP_ADD(firebrick)
      -      
      +
           STYLE_COLORMAP_ADD(brown)
           STYLE_COLORMAP_ADD(gold)
           STYLE_COLORMAP_ADD(goldenrod)
      @@ -130,7 +130,7 @@ public:
           STYLE_COLORMAP_ADD(limegreen)
           STYLE_COLORMAP_ADD(mediumseagreen)
           STYLE_COLORMAP_ADD(mediumspringgreen)
      -      
      +
           STYLE_COLORMAP_ADD(palegreen)
           STYLE_COLORMAP_ADD(seagreen)
           STYLE_COLORMAP_ADD(springgreen)
      @@ -141,7 +141,7 @@ public:
           STYLE_COLORMAP_ADD(grey)
           STYLE_COLORMAP_ADD(khaki)
           STYLE_COLORMAP_ADD(magenta)
      -      
      +
           STYLE_COLORMAP_ADD(maroon)
           STYLE_COLORMAP_ADD(orange)
           STYLE_COLORMAP_ADD(orchid)
      @@ -152,7 +152,7 @@ public:
           STYLE_COLORMAP_ADD(red)
           STYLE_COLORMAP_ADD(indianred)
           STYLE_COLORMAP_ADD(mediumvioletred)
      -      
      +
           STYLE_COLORMAP_ADD(orangered)
           STYLE_COLORMAP_ADD(violetred)
           STYLE_COLORMAP_ADD(salmon)
      @@ -163,7 +163,7 @@ public:
           STYLE_COLORMAP_ADD(darkturquoise)
           STYLE_COLORMAP_ADD(mediumturquoise)
           STYLE_COLORMAP_ADD(violet)
      -      
      +
           STYLE_COLORMAP_ADD(blueviolet)
           STYLE_COLORMAP_ADD(wheat)
           STYLE_COLORMAP_ADD(white)
      @@ -246,7 +246,7 @@ public:
           // Initialize some additional greyish non saturated colors
       #define TOOLS_SG_STYLE_COLORMAP_ADD_TCOLOR(a__i,a__name) \
           new_TColor(a__i,get_color_ROOT_##a__name(),#a__name);
      -    
      +
           TOOLS_SG_STYLE_COLORMAP_ADD_TCOLOR( 8,Color8)
           TOOLS_SG_STYLE_COLORMAP_ADD_TCOLOR( 9,Color9)
           TOOLS_SG_STYLE_COLORMAP_ADD_TCOLOR(12,grey12)
      @@ -282,9 +282,9 @@ public:
             new_TColor(i+51, r, g, b,head,i+51);
           }}
       
      -    double h,l,s,r,g,b;    
      +    double h,l,s,r,g,b;
       
      -    // dark colors (index 101 to 150) :     
      +    // dark colors (index 101 to 150) :
           // NOTE : 100 = "dark black" would overlap with "pretty 49" !
           //        then start to 1+100.
          {for(unsigned int i=1 ; i<=50 ; i++) {
      @@ -296,8 +296,8 @@ public:
             hls_to_rgb(h,0.7*l,s, r, g, b);
             new_TColor(i+100, r, g, b, nam+"_dark");
           }}
      -    
      -    // bright colors (index 151 to 200) :     
      +
      +    // bright colors (index 151 to 200) :
           // NOTE : 150 = "bright black" would overlap with "dark 50" !
           //        then start to 1+150.
          {for(unsigned int i=1 ; i<=50 ; i++) {
      @@ -309,7 +309,7 @@ public:
             hls_to_rgb(h,1.2*l,s, r, g, b);
             new_TColor(i+150, r, g, b, nam+"_bright");
           }}
      -    
      +
           // Initialize special colors for x3d
           // from 201 to 228=200+4*7 : 7*4 = 28.
          {std::string head("Color");
      @@ -375,7 +375,7 @@ protected:
                                   const std::string& a_name,
                                   unsigned char a_rgb[]) {
           // Create the "circle" colors in the Color Wheel
      -    for(unsigned int n=0;n<15;n++) {      
      +    for(unsigned int n=0;n<15;n++) {
             int colorn = a_offset+n-10;
             if(colorn<0) continue;
             if(n>10) {
      @@ -556,30 +556,30 @@ inline bool find_color(const cmaps_t& a_cmaps,const std::string& a_s,colorf& a_c
           cmaps_t::const_iterator it = a_cmaps.find(cmap);
           if(it==a_cmaps.end()) return false;
           return (*it).second.get_color(cnam,a_col);
      -      
      +
         } else {
       
           if( (a_s.size()==7) && (a_s[0]=='#') ) {
             // #RRGGBB format :
             //  1 3 5
             unsigned long rr,gg,bb;
      -  
      +
            {std::string s("0x");
             s += a_s.substr(1,2);
             if(!to_ulong(s,rr)) return false;}
      -  
      +
            {std::string s("0x");
             s += a_s.substr(3,2);
             if(!to_ulong(s,gg)) return false;}
      -  
      +
            {std::string s("0x");
             s += a_s.substr(5,2);
             if(!to_ulong(s,bb)) return false;}
      -  
      +
             a_col = colorf(((float)rr)/255,((float)gg)/255,((float)bb)/255);
             return true;
      -    } 
      -  
      +    }
      +
           //a_s of the form :   
           //a_s of the form :    
       
      @@ -610,10 +610,10 @@ inline bool find_color(const cmaps_t& a_cmaps,const std::string& a_s,colorf& a_c
          {cmaps_t::const_iterator it = a_cmaps.find(style_default_colormap::s_default());
           if(it!=a_cmaps.end()) {
             if((*it).second.get_color(a_s,a_col)) return true;
      -    }}      
      +    }}
       
         }
      -  
      +
         return false;
       }
       
      diff --git a/source/analysis/g4tools/include/tools/sg/style_parser b/source/analysis/g4tools/include/tools/sg/style_parser
      index 0229950158..43df16a495 100644
      --- a/source/analysis/g4tools/include/tools/sg/style_parser
      +++ b/source/analysis/g4tools/include/tools/sg/style_parser
      @@ -65,7 +65,7 @@ public:
         ,m_color_mapping()
         ,m_enforced(false)
         ,m_translation(0,0,0)
      -  ,m_front_face(winding_ccw)  
      +  ,m_front_face(winding_ccw)
         ,m_hjust(left)
         ,m_vjust(bottom)
         ,m_coloring()
      @@ -76,7 +76,7 @@ public:
           mem::increment(s_class().c_str());
       #endif
         }
      -  
      +
         virtual ~style_parser(){
       #ifdef TOOLS_MEM
           mem::decrement(s_class().c_str());
      @@ -227,12 +227,12 @@ public:
           if(m_editable!=a_from.m_editable) return false;
           if(m_automated!=a_from.m_automated) return false;
           if(m_enforced!=a_from.m_enforced) return false;
      -  
      +
           //color
           if(m_color!=a_from.m_color) return false;
           if(m_highlight_color!=a_from.m_highlight_color) return false;
           if(m_back_color!=a_from.m_back_color) return false;
      -  
      +
           //std::string
           if(m_modeling!=a_from.m_modeling) return false;
           if(m_light_model!=a_from.m_light_model) return false;
      @@ -242,7 +242,7 @@ public:
           if(m_font!=a_from.m_font) return false;
           if(m_options!=a_from.m_options) return false;
           if(m_color_mapping!=a_from.m_color_mapping) return false;
      -  
      +
           if(m_translation!=a_from.m_translation) return false;
       
           if(m_front_face!=a_from.m_front_face) return false;
      @@ -253,7 +253,7 @@ public:
           if(m_coloring!=a_from.m_coloring) return false;
           if(m_title!=a_from.m_title) return false;
           if(m_pickable!=a_from.m_pickable) return false;
      -    
      +
           return true;
         }
       
      @@ -293,7 +293,7 @@ public:
           m_strip_width = 0;
           m_visible = true;
           m_bar_offset = 0.25F;
      -    m_bar_width = 0.5F;  
      +    m_bar_width = 0.5F;
           m_editable = false;
           m_automated = true;
           m_options = "";
      @@ -355,43 +355,43 @@ translation %g %g %g"
           ,m_bar_offset
           ,m_bar_width
           ,m_translation[0],m_translation[1],m_translation[2]);
      -    
      -    std::string lf("\n");
      -    std::string s(ss);  
       
      -    s += lf;  
      +    std::string lf("\n");
      +    std::string s(ss);
      +
      +    s += lf;
           s += "smoothing ";
           s += (m_smoothing?"true":"false");
       
      -    s += lf;  
      +    s += lf;
           s += "hinting ";
           s += (m_hinting?"true":"false");
       
      -    s += lf;  
      +    s += lf;
           s += "enforced ";
           s += (m_enforced?"true":"false");
       
      -    s += lf;  
      +    s += lf;
           s += "visible ";
           s += (m_visible?"true":"false");
       
      -    s += lf;  
      +    s += lf;
           s += "editable ";
           s += (m_editable?"true":"false");
       
      -    s += lf;  
      +    s += lf;
           s += "automated ";
           s += (m_automated?"true":"false");
       
      -    s += lf;  
      +    s += lf;
           s += "pickable ";
           s += (m_pickable?"true":"false");
       
      -    s += lf;  
      +    s += lf;
           s += "marker_style ";
           s += smarker_style(m_marker_style);
       
      -    s += lf;  
      +    s += lf;
           s += "area_style ";
           s += sarea_style(m_area_style);
       
      @@ -465,11 +465,11 @@ translation %g %g %g"
           s += "front_face ";
           s += (m_front_face==winding_ccw?"ccw":"cw");
       
      -    s += lf;  
      +    s += lf;
           s += "hjust ";
           s += shjust(m_hjust);
       
      -    s += lf;  
      +    s += lf;
           s += "vjust ";
           s += svjust(m_vjust);
       
      @@ -620,7 +620,7 @@ translation %g %g %g"
         void pickable(bool a_v){m_pickable  = a_v;}
         bool pickable() const {return m_pickable;}
       
      -public:  
      +public:
         bool parse(std::ostream& a_out,const cmaps_t& a_cmaps,const std::string& a_s){
           // a_s = list of "name value" separated by \n
           //::printf("debug : style_parser::parse : \"%s\"\n",a_s.c_str());
      @@ -949,7 +949,7 @@ public:
                 }
                 m_pattern = (lpat)ul;
               }
      -	
      +
             } else if(word0=="line_pattern") {
               if(!check_2(wordn,a_s,line,a_out)) return false;
               const std::string& word1 = ws[1];
      @@ -1061,7 +1061,7 @@ public:
                       << " not a projection_type."
                       << std::endl;
                 return false;
      -        }   
      +        }
             } else if(word0=="font") {
               if(!check_2(wordn,a_s,line,a_out)) return false;
               font(ws[1]);
      @@ -1264,11 +1264,11 @@ public:
             } else if(word0=="coloring") {
               if(!check_2(wordn,a_s,line,a_out)) return false;
               m_coloring  = ws[1];
      -	
      +
             } else if(word0=="title") {
               if(!check_2(wordn,a_s,line,a_out)) return false;
               m_title  = ws[1];
      -	
      +
             } else {
               a_out << "style_parser::parse :"
                     << " in " << sout(a_s)
      @@ -1276,8 +1276,8 @@ public:
                     << " bad option."
                     << std::endl;
               return false;
      -      }      
      -    } 
      +      }
      +    }
           return true;
         }
       
      @@ -1348,7 +1348,7 @@ protected:
           return true;
         }
       
      -protected: 
      +protected:
         colorf m_color;
         colorf m_highlight_color;
         colorf m_back_color;
      @@ -1362,10 +1362,10 @@ protected:
         lpat m_line_pattern;
         sg::marker_style m_marker_style;
         sg::area_style m_area_style;
      -  std::string m_modeling; 
      -  std::string m_light_model; 
      -  std::string m_tick_modeling; 
      -  std::string m_encoding; 
      +  std::string m_modeling;
      +  std::string m_light_model;
      +  std::string m_tick_modeling;
      +  std::string m_encoding;
         bool m_smoothing;
         bool m_hinting;
         std::string m_cut;
      @@ -1394,9 +1394,9 @@ protected:
         winding_type m_front_face;
         sg::hjust m_hjust;
         sg::vjust m_vjust;
      -  std::string m_coloring; 
      -  std::string m_title; 
      -  bool m_pickable; 
      +  std::string m_coloring;
      +  std::string m_title;
      +  bool m_pickable;
       };
       
       }}
      diff --git a/source/analysis/g4tools/include/tools/sg/tex_quadrilateral b/source/analysis/g4tools/include/tools/sg/tex_quadrilateral
      index a8cd2ada69..bff5547240 100644
      --- a/source/analysis/g4tools/include/tools/sg/tex_quadrilateral
      +++ b/source/analysis/g4tools/include/tools/sg/tex_quadrilateral
      @@ -68,7 +68,7 @@ public:
           if(corners.size()!=4) return;
       
           unsigned int _id = get_tex_id(a_action.out(),a_action.render_manager(),m_img,nearest.value());
      -  
      +
           const state& state = a_action.state();
       
           //image must be 2^n,2^m in size !
      @@ -195,7 +195,7 @@ protected:
           int iy = int(float(_img.height())*a_y);
       
           //rgb of pixel :
      -    std::vector pixel;            
      +    std::vector pixel;
           if((ix<0)||(iy<0)||!_img.pixel(ix,iy,pixel)) {a_s.clear();return false;}
       
           a_s.clear();
      @@ -329,7 +329,7 @@ protected:
         typedef float f12[12];
         void _front(f12& a_front,f12& a_nms,float a_epsil = 0.0f) {
           const std::vector& cs = corners.values();
      -    
      +
           a_front[0] =  cs[0].x()-a_epsil;
           a_front[1] =  cs[0].y()-a_epsil;
           a_front[2] =  cs[0].z();
      @@ -365,7 +365,7 @@ protected:
       
         void _back(f12& a_back) {
           const std::vector& cs = corners.values();
      -    
      +
           a_back[0] =  cs[1].x();
           a_back[1] =  cs[1].y();
           a_back[2] =  cs[1].z();
      diff --git a/source/analysis/g4tools/include/tools/sg/tex_rect b/source/analysis/g4tools/include/tools/sg/tex_rect
      index 2cac4d16c0..74dc31d59c 100644
      --- a/source/analysis/g4tools/include/tools/sg/tex_rect
      +++ b/source/analysis/g4tools/include/tools/sg/tex_rect
      @@ -88,7 +88,7 @@ public:
       #ifdef TOOLS_SG_TEX_RECT_DEBUG
           a_action.out() << "tools::tex_rect::render : get_tex_id : " << _id << "." << std::endl;
       #endif
      -  
      +
           const state& state = a_action.state();
       
           //image must be 2^n,2^m in size !
      @@ -182,7 +182,7 @@ public:
           int iy = int((imh*p.y()/h2+imh)*0.5f);
       
           //rgb of pixel :
      -    std::vector pixel;            
      +    std::vector pixel;
           if((ix<0)||(iy<0)||!_img.pixel(ix,iy,pixel)) {a_s.clear();return false;}
       
           a_s.clear();
      @@ -235,7 +235,7 @@ public:
       
       protected:
         //virtual //NOTE : virtual for diaporama node. (but warning with clang -g4flags).
      -  void update_sg(std::ostream& a_out) { 
      +  void update_sg(std::ostream& a_out) {
           clean_gstos(); //must reset for all render_manager.
           if(height.value()<=0) {
             m_img.make_empty();
      diff --git a/source/analysis/g4tools/include/tools/sg/text b/source/analysis/g4tools/include/tools/sg/text
      index 985bb4c457..33612f1564 100644
      --- a/source/analysis/g4tools/include/tools/sg/text
      +++ b/source/analysis/g4tools/include/tools/sg/text
      @@ -27,22 +27,22 @@ class text : public back_area {
       public:
         mf_string strings;
         sf confine;
      - 
      +
         sf_vec color;
         sf_string font;
         sf_enum font_modeling;
      -  
      -  sf_string encoding; 
      +
      +  sf_string encoding;
         sf line_width; // for text_hershey.
         sf_enum front_face; //no more used.
       
      -  sf back_visible;  
      +  sf back_visible;
       
         sf enforce_front_height;
         sf front_height;
         sf enforce_front_width;
         sf front_width;
      -  
      +
         sf wmargin_factor;
         sf hmargin_factor;
         sf_enum hjust;
      @@ -58,6 +58,8 @@ public:
       
             TOOLS_ARG_FIELD_DESC_OPTS_BEG(font,8)
               font_hershey().c_str(),
      +        font_lato_regular_ttf().c_str(),
      +        font_roboto_bold_ttf().c_str(),
               font_arial_ttf().c_str(),
               font_arialbd_ttf().c_str(),
               font_timesbd_ttf().c_str(),
      @@ -66,16 +68,16 @@ public:
               font_helvetica_ttf().c_str(),
               font_times_roman_ttf().c_str()
             TOOLS_ARG_FIELD_DESC_OPTS_END,
      -      
      +
             TOOLS_ARG_FIELD_DESC_ENUMS_BEG(font_modeling,3)
               TOOLS_ARG_ENUM(font_outline),
               TOOLS_ARG_ENUM(font_filled),
               TOOLS_ARG_ENUM(font_pixmap)
             TOOLS_ARG_FIELD_DESC_ENUMS_END,
      -      
      +
             TOOLS_ARG_FIELD_DESC(encoding),
             TOOLS_ARG_FIELD_DESC(line_width),
      -      
      +
             TOOLS_ARG_FIELD_DESC_ENUMS_BEG(front_face,2)
               TOOLS_ARG_ENUM(winding_ccw),
               TOOLS_ARG_ENUM(winding_cw)
      @@ -89,13 +91,13 @@ public:
             TOOLS_ARG_FIELD_DESC(front_width),
             TOOLS_ARG_FIELD_DESC(wmargin_factor),
             TOOLS_ARG_FIELD_DESC(hmargin_factor),
      -      
      +
             TOOLS_ARG_FIELD_DESC_ENUMS_BEG(hjust,3)
               TOOLS_ARG_ENUM(left),
               TOOLS_ARG_ENUM(center),
               TOOLS_ARG_ENUM(right)
             TOOLS_ARG_FIELD_DESC_ENUMS_END,
      -      
      +
             TOOLS_ARG_FIELD_DESC_ENUMS_BEG(vjust,3)
               TOOLS_ARG_ENUM(bottom),
               TOOLS_ARG_ENUM(middle),
      @@ -112,7 +114,7 @@ private:
           add_field(&color);
           add_field(&font);
           add_field(&font_modeling);
      -    add_field(&encoding); 
      +    add_field(&encoding);
           add_field(&line_width);
           add_field(&front_face);
       
      @@ -148,12 +150,12 @@ public:
           //m_sep.pick(a_action);
         }
         virtual void search(search_action& a_action) {
      -    node::search(a_action);
      -    if(a_action.done()) return;
           if(touched()) {
             update_sg();
             reset_touched();
           }
      +    parent::search(a_action);
      +    if(a_action.done()) return;
           if(a_action.do_path()) a_action.path_push(this);
           if(back_visible.value()) {
             m_back_sep.search(a_action);
      @@ -382,10 +384,10 @@ public:
             tsf->set_translate(xx,yy,zz);
       
             return;
      -    } 
      +    }
       
           if(enforce_front_width) {
      -    
      +
             float th = fh;
             float mn_x,mn_y,mn_z;
             float mx_x,mx_y,mx_z;
      @@ -398,7 +400,7 @@ public:
               th = th*front_width/bxw;
               m_base_text->get_bounds(th,mn_x,mn_y,mn_z,mx_x,mx_y,mx_z);
             }
      -	  
      +
             bxw = mx_x-mn_x;
             float xtrans = 0;
             if(hjust==center) {
      @@ -424,9 +426,9 @@ public:
             tsf->set_translate(xx,yy,zz);
       
             m_base_text->height = bxh; //=th?
      -      
      +
             return;
      -    } 
      +    }
       
           //various automatic text height strategies :
       
      @@ -528,7 +530,7 @@ public:
            {float mn_x,mn_y,mn_z;
             float mx_x,mx_y,mx_z;
             m_base_text->get_bounds(th,mn_x,mn_y,mn_z,mx_x,mx_y,mx_z);
      -      
      +
             float bxw = mx_x-mn_x;
             float xtrans = 0;
             if(hjust==center) {
      @@ -553,7 +555,7 @@ public:
             tsf->set_translate(xx,yy,zz);}
       
             // truncate text at right if out of border :
      -     {std::vector labcut; 
      +     {std::vector labcut;
             tools_vforcit(std::string,strings.values(),it) {
               std::string scut;
               m_base_text->truncate(*it,th,fw,scut);
      diff --git a/source/analysis/g4tools/include/tools/sg/text_freetype b/source/analysis/g4tools/include/tools/sg/text_freetype
      index 5178fc99d0..3d5152f2a3 100644
      --- a/source/analysis/g4tools/include/tools/sg/text_freetype
      +++ b/source/analysis/g4tools/include/tools/sg/text_freetype
      @@ -104,7 +104,7 @@ protected: //gstos
             size_t sz = gsto_data.size();
             gsto_data.resize(sz+ngsto);
             float* pxyz = tools::vec_data(gsto_data)+sz;
      -  
      +
             tools::gl::line_strip_to_lines_2to3(num,data,pxyz);
           }}
       
      @@ -133,8 +133,8 @@ protected: //gstos
               size_t sz = gsto_data.size();
               gsto_data.resize(sz+ngsto);
               float* pxyz = tools::vec_data(gsto_data)+sz;
      -  
      -        tools::gl::cvt_2to3(num,data,pxyz);  
      +
      +        tools::gl::cvt_2to3(num,data,pxyz);
       
             } else if((*it).first==tools::gl::triangle_fan()) {
       
      @@ -144,7 +144,7 @@ protected: //gstos
               size_t sz = gsto_data.size();
               gsto_data.resize(sz+ngsto);
               float* pxyz = tools::vec_data(gsto_data)+sz;
      -  
      +
               tools::gl::triangle_fan_to_triangles_2to3(num,data,pxyz);
       
             } else if((*it).first==tools::gl::triangle_strip()) {
      @@ -155,7 +155,7 @@ protected: //gstos
               size_t sz = gsto_data.size();
               gsto_data.resize(sz+ngsto);
               float* pxyz = tools::vec_data(gsto_data)+sz;
      -  
      +
               tools::gl::triangle_strip_to_triangles_2to3(num,data,pxyz);
       
             } else {
      @@ -265,7 +265,7 @@ public:
           a_action.set_line_smooth(state.m_GL_LINE_SMOOTH);
           a_action.set_polygon_offset(state.m_GL_POLYGON_OFFSET_FILL);
           a_action.set_winding(state.m_winding);
      -    
      +
           ///////////////////////////////////////////////////////////
           /// bitmap ////////////////////////////////////////////////
           ///////////////////////////////////////////////////////////
      @@ -313,9 +313,9 @@ public:
               a_action.set_done(true);
               a_action.set_node(this);
               return;
      -      }          
      +      }
           }
      -    return;    
      +    return;
       */
       
           ///////////////////////////////////////////////////////////
      @@ -367,7 +367,7 @@ public:
               py = *pos;pos++;
               pz = 0;
               a_action.add_one_point(px,py,pz);
      -      }  
      +      }
       
           }}
       
      @@ -386,7 +386,7 @@ public:
               py = *pos;pos++;
               pz = 0;
               a_action.add_one_point(px,py,pz);
      -      }  
      +      }
           }}
       
           ///////////////////////////////////////////////////////////
      @@ -456,7 +456,7 @@ public: //tools::sg::base_text :
       #ifdef TOOLS_DONE_FACE
           ::FT_Done_Face(m_face);
           self().m_face = 0;
      -#endif    
      +#endif
           return value;
         }
       
      @@ -469,7 +469,7 @@ public: //tools::sg::base_text :
       #ifdef TOOLS_DONE_FACE
           ::FT_Done_Face(m_face);
           self().m_face = 0;
      -#endif    
      +#endif
           return value;
         }
       
      @@ -482,7 +482,7 @@ public: //tools::sg::base_text :
       #ifdef TOOLS_DONE_FACE
           ::FT_Done_Face(m_face);
           self().m_face = 0;
      -#endif    
      +#endif
           return value;
         }
       
      @@ -496,11 +496,11 @@ public: //tools::sg::base_text :
             if(!get_bounds(out,self().m_face,a_height,strings.values(),a_mn_x,a_mn_y,a_mn_z,a_mx_x,a_mx_y,a_mx_z)) return;
           } else if(unitext.values().size()) {
             if(!get_bounds(out,self().m_face,a_height,unitext.values(),a_mn_x,a_mn_y,a_mn_z,a_mx_x,a_mx_y,a_mx_z)) return;
      -    }    
      +    }
       #ifdef TOOLS_DONE_FACE
           ::FT_Done_Face(m_face);
           self().m_face = 0;
      -#endif    
      +#endif
         }
       
         virtual bool truncate(const std::string& a_string,float a_height,float a_cut_width,std::string& a_out) const {
      @@ -512,7 +512,7 @@ public: //tools::sg::base_text :
       #ifdef TOOLS_DONE_FACE
           ::FT_Done_Face(m_face);
           self().m_face = 0;
      -#endif    
      +#endif
           return true;
         }
       
      @@ -525,7 +525,7 @@ public: //tools::sg::base_text :
             //a_out << line << std::endl;
             tools_vforcit(unichar,line,it) {
               a_out << ((unsigned int)*it) << std::endl;
      -      }  
      +      }
             a_out << "end line." << std::endl;
           }
         }
      @@ -575,7 +575,7 @@ protected:
           m_front_color = a_state.m_color;
           return true;
         }
      -  
      +
         bool char_height_touched(const tools::sg::state& a_state) {
           if(modeling!=tools::sg::font_pixmap) return false;
       
      @@ -591,7 +591,7 @@ protected:
           if(a_state.m_wh) screen_height *= a_state.m_wh; else screen_height = 100;
       
           //::printf("debug : char_height_touched %g\n",screen_height);
      -    
      +
           if(screen_height==m_char_height) return false;
           m_char_height = screen_height;
           return true;
      @@ -624,10 +624,10 @@ protected:
           m_triangles.clear();
           m_bitmaps.clear();
           m_tqs.clear();
      -    
      +
           m_wndg = wndg_not_done;
       
      -    if(modeling==tools::sg::font_pixmap) {    
      +    if(modeling==tools::sg::font_pixmap) {
             if(m_char_height<=0) return;
             tools::sg::blend* blend = new tools::sg::blend;
             blend->on = true; //to handle background transparency.
      @@ -663,7 +663,7 @@ protected:
               float* data = tools::vec_data(m_xys)+pos+1;
               for(size_t i=0;i& vcs = (*itqs)->corners.values();
               for(size_t i=0;i<4;i++) vcs[i][1] -= 0.5f * szy;
      @@ -699,11 +699,11 @@ protected:
           }
       
           m_tqs.clear();
      -    
      +
       #ifdef TOOLS_DONE_FACE
           ::FT_Done_Face(m_face);
           m_face = 0;
      -#endif    
      +#endif
         }
       
         void outline_lines_2_gl(std::ostream& a_out) {
      @@ -757,7 +757,7 @@ protected:
               size_t ibeg = m_lines.size(); //for hjust.
               tools_vforcit(unichar,line,it) {
                 if(!char_outline_2_gl(a_out,*it)) return;
      -        }  
      +        }
               yline += -float(face_height)*m_scale; //height>0
       
              {float sx = m_trans_x;
      @@ -790,13 +790,13 @@ protected:
           //NOTE : if not found -> glyph_index = 0 which is the "missing glyph".
           if((FT_Long)glyph_index>=m_face->num_glyphs) {
             a_out << "tools::sg::text_freetype::char_outline_2_gl :"
      -            << " FT_Get_Char_Index : failed for char : " << a_unichar 
      +            << " FT_Get_Char_Index : failed for char : " << a_unichar
                   << std::endl;
             ::FT_Done_Face(m_face);
             m_face = 0;
             return false;
           }
      -  
      +
          {FT_Error error = ::FT_Load_Glyph(m_face,glyph_index,load_flags());
           if(error) {
             a_out << "tools::sg::text_freetype::char_outline_2_gl :"
      @@ -807,7 +807,7 @@ protected:
             m_face = 0;
             return false;
           }}
      -  
      +
           //FT_GlyphSlot FT_Face.glyph;
           if(m_face->glyph->format!=FT_GLYPH_FORMAT_OUTLINE) {
             a_out << "tools::sg::text_freetype::char_outline_2_gl :"
      @@ -819,9 +819,9 @@ protected:
             m_face = 0;
             return false;
           }
      -  
      +
           FT_Outline outline = m_face->glyph->outline;
      -  
      +
          {FT_Error error = ::FT_Outline_Decompose(&outline,&m_funcs,this);
           if(error) {
             a_out << "tools::sg::text_freetype::char_outline_2_gl :"
      @@ -832,9 +832,9 @@ protected:
             m_face = 0;
             return false;
           }}
      -  
      +
           flush_line();
      -  
      +
           m_trans_x += float(m_face->glyph->advance.x)*m_scale;
           m_trans_y += float(m_face->glyph->advance.y)*m_scale;
       
      @@ -901,10 +901,10 @@ protected:
               tools_sforcit(line,it) {
                 if(!char_triangles_2_gl(a_out,*it + m_encoding_offset)) {
                   ::gluDeleteTess(m_tobj);
      -            m_tobj = 0;  
      +            m_tobj = 0;
                   return;
      -          }  
      -        }  
      +          }
      +        }
               yline += -float(face_height)*m_scale; //height>0
       
              {float sx = m_trans_x;
      @@ -916,7 +916,7 @@ protected:
                   size_t npt = item.second.second;
                   float* data = tools::vec_data(m_xys)+pos;
                   for(size_t i=0;i(m_xys)+pos;
                   for(size_t i=0;i0
       
              {float sx = m_trans_x;
      @@ -954,7 +954,7 @@ protected:
                   size_t npt = item.second.second;
                   float* data = tools::vec_data(m_xys)+pos;
                   for(size_t i=0;i(m_xys)+pos;
                   for(size_t i=0;iglyph->format!=FT_GLYPH_FORMAT_OUTLINE) {
             a_out << "tools::sg::text_freetype::char_triangles_2_gl :"
      @@ -1013,7 +1013,7 @@ protected:
             m_face = 0;
             return false;
           }
      -  
      +
           FT_Outline outline = m_face->glyph->outline;
       
           m_glutess_trids_num = 0;
      @@ -1033,11 +1033,11 @@ protected:
             m_face = 0;
             return false;
           }}
      -  
      +
           if(m_contour_open) {
             ::gluTessEndContour(m_tobj);
             m_contour_open = false;
      -    }  
      +    }
       
           ::gluTessEndPolygon(m_tobj); //triggers callbacks and fill m_triangles.
       
      @@ -1089,22 +1089,22 @@ protected:
               size_t ibeg = m_tqs.size(); //for hjust.
               tools_sforcit(line,it) {
                 if(!char_2_bitmap(a_out,*it + m_encoding_offset)) return false;
      -        }  
      +        }
               yline += -float(face_height)*m_scale; //height>0
      -	
      +
              {float sx = m_trans_x;
               if(hjust==tools::sg::center) {
                 size_t num = m_tqs.size();
                 for(size_t index=ibeg;index& vcs = m_tqs[index]->corners.values();
                   for(size_t i=0;i<4;i++) vcs[i][0] -= sx*0.5f;
      -          } 
      +          }
               } else if(hjust==tools::sg::right) {
                 size_t num = m_tqs.size();
                 for(size_t index=ibeg;index& vcs = m_tqs[index]->corners.values();
                   for(size_t i=0;i<4;i++) vcs[i][0] -= sx;
      -          } 
      +          }
               }}
             }
           } else if(unitext.values().size()) {
      @@ -1126,14 +1126,14 @@ protected:
                 for(size_t index=ibeg;index& vcs = m_tqs[index]->corners.values();
                   for(size_t i=0;i<4;i++) vcs[i][0] -= sx*0.5f;
      -          } 
      +          }
               } else if(hjust==tools::sg::right) {
                 size_t num = m_tqs.size();
                 for(size_t index=ibeg;index& vcs = m_tqs[index]->corners.values();
                   for(size_t i=0;i<4;i++) vcs[i][0] -= sx;
      -          } 
      -        }}	
      +          }
      +        }}
             }
           }
           return true;
      @@ -1157,7 +1157,7 @@ protected:
             m_face = 0;
             return false;
           }
      -  
      +
          {FT_Error error = ::FT_Load_Glyph(m_face,glyph_index,load_flags());
           if(error) {
             a_out << "tools::sg::text_freetype::char_2_bitmap :"
      @@ -1168,7 +1168,7 @@ protected:
             m_face = 0;
             return false;
           }}
      -  
      +
           FT_Glyph glyph;
          {FT_Error error = ::FT_Get_Glyph(m_face->glyph,&glyph);
           if (error) {
      @@ -1223,7 +1223,7 @@ protected:
             ::FT_Done_Face(m_face);
             m_face = 0;
             return false;
      -    } 
      +    }
       
           if(bitmap->bitmap.pitch<0) {
             a_out << "tools::sg::text_freetype::char_2_bitmap :"
      @@ -1235,7 +1235,7 @@ protected:
             ::FT_Done_Face(m_face);
             m_face = 0;
             return false;
      -    } 
      +    }
       
           unsigned int img_w = 0;
           unsigned int img_h = 0;
      @@ -1244,7 +1244,7 @@ protected:
       
           if(bitmap->bitmap.pixel_mode==ft_pixel_mode_mono) {
             a_out << "tools::sg::text_freetype::char_2_bitmap : mode_mono : not yet handled." << std::endl;
      -      
      +
             //img_grays = 1;
             img_h = bitmap->bitmap.rows;
             //WARNING : bitmap->bitmap.pitch != int((bitmap->bitmap.width+7)/8) !!!
      @@ -1268,7 +1268,7 @@ protected:
               ::FT_Done_Face(m_face);
               m_face = 0;
               return false;
      -      } 
      +      }
             img_w = bitmap->bitmap.width;
             img_h = bitmap->bitmap.rows;
             img_sz = img_w * img_h * img_bpp;
      @@ -1289,7 +1289,7 @@ protected:
               ::FT_Done_Face(m_face);
               m_face = 0;
               return false;
      -      }  
      +      }
             // The bitmap is upside down for OpenGL.
             float a,b;
             tools::colorf back_color = tools::colorf_white();
      @@ -1313,7 +1313,7 @@ protected:
             //float _width  = float(_bbox.xMax)-float(_bbox.xMin);
             //float _height = float(_bbox.yMax)-float(_bbox.yMin);
             //aAdvance = int(face->glyph->advance.x/64);
      -      
      +
             std::vector vcs;
             //::printf("debug : box : %d %d %d %d\n",_bbox.xMin,_bbox.xMax,_bbox.yMin,_bbox.yMax);
             float scale = height.value()/m_char_height;
      @@ -1323,12 +1323,12 @@ protected:
             float y_max = float(_bbox.yMax)*scale+m_trans_y;
             //::printf("debug : scale %g, trans %g %g\n",m_scale,m_trans_x,m_trans_y);
             //::printf("debug : corners %g %g %g %g\n",x_min,x_max,y_min,y_max);
      -      
      +
             vcs.push_back(tools::vec3f(x_min,y_min,0));
             vcs.push_back(tools::vec3f(x_max,y_min,0));
             vcs.push_back(tools::vec3f(x_max,y_max,0));
             vcs.push_back(tools::vec3f(x_min,y_max,0));
      -      
      +
             tools::sg::tex_quadrilateral* _node = new tools::sg::tex_quadrilateral;
             _node->img.value().set(img_w,img_h,img_bpp,img_buffer,true);
             _node->expand = true;
      @@ -1336,10 +1336,10 @@ protected:
             _node->back_color.value().set_a(0);        //transparent background.
             //_node->nearest = false;                    //to have antialiasing on texture.
             _node->corners.set_values(vcs);
      -      
      +
             m_bitmaps.add(_node);
             m_tqs.push_back(_node);
      -  
      +
             /*
             if(bitmap->bitmap.pixel_mode==ft_pixel_mode_mono) {
               if((aChar=='T')||(aChar=='a')||(aChar=='o')||(aChar=='L')) {
      @@ -1367,7 +1367,7 @@ protected:
             }*/
       
           }
      -    
      +
           m_trans_x += float(m_face->glyph->advance.x)*m_scale;
           m_trans_y += float(m_face->glyph->advance.y)*m_scale;
       
      @@ -1487,7 +1487,7 @@ protected:
           float gx,gy;
           self.set_g(gx,gy,float(a_to->x),float(a_to->y));
       
      -    if(self.m_tobj) {      
      +    if(self.m_tobj) {
             double* v = self.add_glutess_vec3d(gx,gy,0);
             ::gluTessVertex(self.m_tobj,v,v);
           } else {
      @@ -1614,7 +1614,7 @@ protected:
           // logic taken from OGLFT.
       
           //OPTIMIZE :
      -    //a = -from + 3 * ctrl1 - 3 * ctrl2 + to;  
      +    //a = -from + 3 * ctrl1 - 3 * ctrl2 + to;
           //b = 3 * from - 6 * ctrl1 + 3 * ctrl2;
           //c = -3 * from + 3 * ctrl1;
           //df = c * self.m_delta + b * self.m_delta2 + a * self.m_delta3;
      @@ -1675,7 +1675,7 @@ protected:
             ::gluTessVertex(self.m_tobj,v,v);
           } else {
             self.add_xy(gx,gy);
      -    }  
      +    }
       
           //self.m_last = to;
           self.m_last_x = tox;
      @@ -1691,7 +1691,7 @@ public:
           typedef std::map parent;
         public:
           serrors(){
      -#undef __FTERRORS_H__                                           
      +#undef __FTERRORS_H__
       #define FT_ERROR_START_LIST
       #define FT_ERROR_END_LIST
       #define FT_ERRORDEF( e, v, s )  parent::operator[](e) = s;
      @@ -1702,7 +1702,7 @@ public:
           serrors(const serrors& a_from):parent(a_from) {}
           serrors& operator=(const serrors&){return *this;}
         };
      -  static std::string serror(int a_FT_Error) {    
      +  static std::string serror(int a_FT_Error) {
           static const serrors errs;
           std::map::const_iterator it = errs.find(a_FT_Error);
           if(it!=errs.end()) return (*it).second;
      @@ -1781,15 +1781,15 @@ protected:
                   << std::endl;
             return;
           }
      -    
      +
           std::string file;
      -    
      +
           //if(tools::file::exists(font.value())) { //look in current directory.
           //  file = font.value(); //ok
           //} else if(!inlib::find_with_dirs(a_out,font_dirs.values(),font.value(),file,false)) {
             if(!tools::find_with_env(a_out,s_TOOLS_FONT_PATH(),font.value(),file,false)) {
               a_out << "tools::sg::text_freetype::load_face :"
      -              << " font file not found for font " 
      +              << " font file not found for font "
                     << tools::sout(font.value()) << "."
                     << std::endl;
               return;
      @@ -1803,7 +1803,7 @@ protected:
           }
       
           FT_Error error = ::FT_New_Face(m_library,file.c_str(),0,&m_face);
      -    if(error) { 
      +    if(error) {
             a_out << "tools::sg::text_freetype::load_face :"
                   << " FT_New_Face : error : " << serror(error) << "."
                   << " for font file " << tools::sout(file) << "."
      @@ -1898,7 +1898,7 @@ protected:
             if((FT_Long)glyph_index>=a_face->num_glyphs) {
       #ifdef TOOLS_SG_TEXT_FREETYPE_DEBUG
               m_out << "tools::sg::text_freetype::truncate :"
      -              << " FT_Get_Char_Index : failed for char : " << *it 
      +              << " FT_Get_Char_Index : failed for char : " << *it
                     << std::endl;
       #endif
               a_sout.clear();
      @@ -1906,7 +1906,7 @@ protected:
               a_face = 0;
               return false;
             }
      -  
      +
            {FT_Error error = ::FT_Load_Glyph(a_face,glyph_index,load_flags());
             if(error) {
       #ifdef TOOLS_SG_TEXT_FREETYPE_DEBUG
      @@ -1960,14 +1960,14 @@ protected:
                 a_face = 0;
                 return false;
               }
      -    
      +
              {FT_Error error = ::FT_Load_Glyph(a_face,glyph_index,load_flags());
               if(error) {
                 ::FT_Done_Face(a_face);
                 a_face = 0;
                 return false;
               }}
      -    
      +
               //float cwidth = float(a_face->glyph->metrics.width)*scale;
               float advance = float(a_face->glyph->advance.x)*scale;
               width += advance;
      @@ -1979,7 +1979,7 @@ protected:
           FT_Pos ascent = a_face->size->metrics.ascender; //FT_Pos (long)
           FT_Pos descent = a_face->size->metrics.descender; //FT_Pos (long) //<0
           FT_Pos face_height = a_face->size->metrics.height; //FT_Pos (long)
      -  
      +
           float ymn = -float(face_height)*scale*(a_text.size()-1) //height>0
                       +float(descent)*scale;
       
      @@ -1989,7 +1989,7 @@ protected:
           a_mx_x = xmx;
           a_mx_y = float(ascent)*scale;
           a_mx_z = 0;
      -  
      +
           return true;
         }
       
      @@ -2020,14 +2020,14 @@ protected:
                 a_face = 0;
                 return false;
               }
      -    
      +
              {FT_Error error = ::FT_Load_Glyph(a_face,glyph_index,load_flags());
               if(error) {
                 ::FT_Done_Face(a_face);
                 a_face = 0;
                 return false;
               }}
      -    
      +
               //float cwidth = float(a_face->glyph->metrics.width)*scale;
               float advance = float(a_face->glyph->advance.x)*scale;
               width += advance;
      @@ -2039,7 +2039,7 @@ protected:
           FT_Pos ascent = a_face->size->metrics.ascender; //FT_Pos (long)
           FT_Pos descent = a_face->size->metrics.descender; //FT_Pos (long) //<0
           FT_Pos face_height = a_face->size->metrics.height; //FT_Pos (long)
      -  
      +
           float ymn = -float(face_height)*scale*(a_text.size()-1) //height>0
                       +float(descent)*scale;
       
      @@ -2049,7 +2049,7 @@ protected:
           a_mx_x = xmx;
           a_mx_y = float(ascent)*scale;
           a_mx_z = 0;
      -  
      +
           return true;
         }
       
      diff --git a/source/analysis/g4tools/include/tools/sg/text_hershey b/source/analysis/g4tools/include/tools/sg/text_hershey
      index 8bdefeb772..e7df25b891 100644
      --- a/source/analysis/g4tools/include/tools/sg/text_hershey
      +++ b/source/analysis/g4tools/include/tools/sg/text_hershey
      @@ -65,7 +65,7 @@ public:
           return *this;
         }
       public:
      -  enum e_move {  
      +  enum e_move {
           none,
           up,
           down
      @@ -107,7 +107,7 @@ protected: //gstos
           size_t ngsto = npts*3;     //3 coords.
           size_t sz = gsto_data.size();
           gsto_data.resize(sz+ngsto);
      -    float* pxyz = vec_data(gsto_data)+sz;    
      +    float* pxyz = vec_data(gsto_data)+sz;
           const float* data = vec_data(m_segs);
           gl::cvt_2to3(npts,data,pxyz);}
       
      @@ -126,12 +126,12 @@ public:
           const state& state = a_action.state();
           if(state.m_use_gsto) {
             unsigned int _id = get_gsto_id(a_action.out(),a_action.render_manager());
      -      if(_id) {        
      +      if(_id) {
               a_action.begin_gsto(_id);
               a_action.draw_gsto_v(gl::lines(),m_gsto_sz/3,0);
               a_action.end_gsto();
               return;
      -  
      +
             } else { //!_id
               // use immediate rendering.
             }
      @@ -141,7 +141,7 @@ public:
           }
       
           // immediate rendering :
      -    a_action.draw_vertex_array_xy(gl::lines(),m_segs);         
      +    a_action.draw_vertex_array_xy(gl::lines(),m_segs);
         }
       
         virtual void pick(pick_action& a_action) {
      @@ -244,7 +244,7 @@ public:
               Y -= Y_ADVANCE;
               width = mx(width,XL);
             }
      -              
      +
             a_mn_x = 0;
             a_mn_y = -Y_ADVANCE*(a_ss.size()-1)-_descent(a_height);
             a_mn_z = 0;
      @@ -303,10 +303,10 @@ protected:
               Y -= szy;
             }
           }
      -  
      +
           float HEIGHT = height.value();
           float Y_ADVANCE = 2 * HEIGHT;
      -  
      +
           const std::string& encod = encoding.value();
       
           const std::vector& ss = strings.values();
      @@ -407,9 +407,9 @@ protected:
           }
       
           float ymax = 0;
      -  
      +
           int ipoint = 0;
      -    for (int ipoly=0;ipoly0) {
               for(int count=0;count0) {
               for(int count=0;count sencoded;
       
         static void decode_plain(const std::string& a_s,sencoded& a_sed){
      @@ -585,13 +585,13 @@ protected:
         ///////////////////////////////////////////////////////////////////////////
         static void decode_PAW(const std::string& a_s,sencoded& a_sed){
           a_sed.clear();
      -  
      +
           font_type font = sg::latin;
           hchar::e_move move = hchar::none;
           bool back = false;
           bool bar = false;
         //bool upper = true; //to be done.
      -  
      +
           tools_sforcit(a_s,it) {
             char c = *it;
             // Control characters :
      @@ -626,20 +626,20 @@ protected:
               //upper = true;
               continue;
             }
      -  
      +
             hchar hc;
             hc.m_y_move = move;
             hc.m_back = back;
             hc.m_bar = bar;
             hc.m_font = font;
             hc.m_char = c;
      -  
      +
             a_sed.push_back(hc);
      -  
      +
             back = false;
             bar = false;
           }
      -  
      +
           if(a_sed.size()) a_sed[a_sed.size()-1].m_cr = true;
         }
       
      diff --git a/source/analysis/g4tools/include/tools/sg/text_style b/source/analysis/g4tools/include/tools/sg/text_style
      index df8b85e7c8..4d053a3f5d 100644
      --- a/source/analysis/g4tools/include/tools/sg/text_style
      +++ b/source/analysis/g4tools/include/tools/sg/text_style
      @@ -24,11 +24,11 @@ public:
         sf_vec back_color;
         sf back_shadow;
       
      -  sf_string modeling; 
      +  sf_string modeling;
         sf_string font;
         sf font_size;
         sf_enum font_modeling;
      -  sf_string encoding; 
      +  sf_string encoding;
         sf smoothing;
         sf hinting;
         sf_enum hjust;
      @@ -86,11 +86,11 @@ private:
           add_field(&visible);
           add_field(&color);
       
      -    add_field(&modeling); 
      +    add_field(&modeling);
           add_field(&font);
           add_field(&font_size);
           add_field(&font_modeling);
      -    add_field(&encoding); 
      +    add_field(&encoding);
           add_field(&smoothing);
           add_field(&hinting);
           add_field(&hjust);
      @@ -226,7 +226,7 @@ public:
             a_out << "tools::sg::text_style::from_string :"
                   << " parse failed."
                   << std::endl;
      -      return false;    
      +      return false;
           }
       
           visible.value(sp.visible());
      diff --git a/source/analysis/g4tools/include/tools/sg/text_valop b/source/analysis/g4tools/include/tools/sg/text_valop
      index d926d6f604..687d6aa4ee 100644
      --- a/source/analysis/g4tools/include/tools/sg/text_valop
      +++ b/source/analysis/g4tools/include/tools/sg/text_valop
      @@ -64,12 +64,12 @@ public:
           m_sep.bbox(a_action);
         }
         virtual void search(search_action& a_action) {
      -    parent::search(a_action);
      -    if(a_action.done()) return;
           if(touched()) {
             update_sg(a_action.out());
             reset_touched();
           }
      +    parent::search(a_action);
      +    if(a_action.done()) return;
           if(a_action.do_path()) a_action.path_push(this);
           m_sep.search(a_action);
           if(a_action.done()) return;
      @@ -107,14 +107,14 @@ public: //sg::base_text :
         virtual void get_bounds(float /*a_height*/,
                                 float& a_mn_x,float& a_mn_y,float& a_mn_z,
                                 float& a_mx_x,float& a_mx_y,float& a_mx_z) const {
      -    text_valop& self = const_cast(*this);			  
      +    text_valop& self = const_cast(*this);
           if(self.touched()) {
             self.update_sg(self.m_out);
             self.reset_touched();
           }
           vec3f mn,mx;
           mnmx(self.m_out,self.m_sep,mn,mx);
      -    a_mn_x = mn[0];a_mn_y = mn[1];a_mn_z = mn[2];  
      +    a_mn_x = mn[0];a_mn_y = mn[1];a_mn_z = mn[2];
           a_mx_x = mx[0];a_mx_y = mx[1];a_mx_z = mx[2];
           //::printf("debug : get_bounds : %g %g %g : %g %g %g\n",a_mn_x,a_mn_y,a_mn_z,a_mx_x,a_mx_y,a_mx_z);
         }
      diff --git a/source/analysis/g4tools/include/tools/sg/tools b/source/analysis/g4tools/include/tools/sg/tools
      index a25c6c5d9d..0e792467dc 100644
      --- a/source/analysis/g4tools/include/tools/sg/tools
      +++ b/source/analysis/g4tools/include/tools/sg/tools
      @@ -28,11 +28,11 @@ inline void add_string(
       ,font_modeling& a_font_modeling
       ,const std::string& a_encoding
       ,bool //a_smoothing
      -,const std::string& a_string  
      +,const std::string& a_string
       ,float a_x,float a_y,float a_z
       ,const vec3f& a_X
       ,const vec3f& a_Y
      -,float a_size    
      +,float a_size
       ,hjust a_hjust
       ,vjust a_vjust
       ,const base_freetype& a_ttf
      @@ -40,7 +40,7 @@ inline void add_string(
         if(a_string.empty()) return;
       
         matrix* tsf = new matrix;
      -  
      +
        {tsf->mul_translate(a_x,a_y,a_z);
         vec3f X = a_X;
         vec3f Y = a_Y;
      @@ -54,7 +54,7 @@ inline void add_string(
                        0,0,0,1);
         tsf->mul_mtx(r);
         tsf->mul_scale(a_size,a_size,1);} //applied first on GL
      -  
      +
         a_sep.add(tsf);
       
         if(a_font==font_hershey()) {
      @@ -69,9 +69,9 @@ inline void add_string(
         } else {
       
           base_freetype* text = base_freetype::create(a_ttf);
      -    
      +
           text->font = a_font;
      -    
      +
           //text->modeling.value(font_outline);
           //text->encoding.value(a_encoding);
           //text->smooting.value(a_smoothing);
      @@ -91,7 +91,7 @@ inline matrix* add_string_opt(
       ,font_modeling a_font_modeling
       ,const std::string& a_encoding
       ,bool //a_smoothing
      -,const std::string& a_string  
      +,const std::string& a_string
       ,float a_x,float a_y,float a_z
       ,mat4f& a_scale_rot
       ,hjust a_hjust
      @@ -128,11 +128,11 @@ inline matrix* add_string_opt(
               //_s = oss.str();
             }
           }
      -    
      +
           base_freetype* text = base_freetype::create(a_ttf);
      -    
      +
           text->font = a_font;
      -    
      +
           //text->modeling.value(font_outline);
           //text->encoding.value(a_encoding);
           //text->smooting.value(a_smoothing);
      @@ -141,7 +141,7 @@ inline matrix* add_string_opt(
           text->vjust.value(a_vjust);
           text->modeling = a_font_modeling;
           a_sep.add(text);
      -    
      +
         }
       
         return tsf;
      diff --git a/source/analysis/g4tools/include/tools/sg/torche b/source/analysis/g4tools/include/tools/sg/torche
      index 4346efad76..b7410613e4 100644
      --- a/source/analysis/g4tools/include/tools/sg/torche
      +++ b/source/analysis/g4tools/include/tools/sg/torche
      @@ -40,18 +40,14 @@ private:
       public:
         virtual void render(render_action& a_action) {
           if(!on.value()) return;
      -
           state& state = a_action.state();
      -
           if((state.m_light+1)>=a_action.max_lights()) {
      -      a_action.out() 
      +      a_action.out()
               << "GL_MAX_LIGHTS (" << a_action.max_lights() << ") reached."
               << std::endl;
             return;
           }
      -
           state.m_GL_LIGHTING = true; //for separator
      -
           a_action.enable_light(state.m_light,direction.value(),color.value());
           state.m_light++;
         }
      diff --git a/source/analysis/g4tools/include/tools/sg/valop2sg b/source/analysis/g4tools/include/tools/sg/valop2sg
      index 121150f870..96e31a9997 100644
      --- a/source/analysis/g4tools/include/tools/sg/valop2sg
      +++ b/source/analysis/g4tools/include/tools/sg/valop2sg
      @@ -131,7 +131,7 @@ public:
             float s2 = 0.5f*(mx1[0]-mn1[0])/(mx2[0]-mn2[0]); //half a_1 horiz size.
             tsf2->set_scale(s2,s2,1);
             mnmx(m_out,*sep2,mn2,mx2);
      -  
      +
             float xshift = (mx1[0]-mn1[0])*0.1f;
             float dx2 = -mn2[0]+mx1[0]+xshift;
       
      @@ -151,7 +151,7 @@ public:
             float s2 = 0.5f*(mx1[0]-mn1[0])/(mx2[0]-mn2[0]); //half a_1 horiz size.
             tsf2->set_scale(s2,s2,1);
             mnmx(m_out,*sep2,mn2,mx2);
      -  
      +
             float xshift = (mx1[0]-mn1[0])*0.1f;
             float dx2 = -mn2[0]+mx1[0]+xshift;
       
      @@ -198,7 +198,7 @@ public:
             //op_sep->add(op_tsf);
       
             sg::base_freetype* tft = sg::base_freetype::create(m_ttf);
      -      //TTNODE* tft = new TTNODE();   
      +      //TTNODE* tft = new TTNODE();
             unichar2sg(0x0002D,*tft);
             op_sep->add(tft);
             vec3f omn,omx;
      @@ -220,7 +220,7 @@ public:
         virtual bool variable(unsigned int a_type,const value& a_var) {
       
           sg::base_freetype* tft = sg::base_freetype::create(m_ttf);
      -    //TTNODE* tft = new TTNODE();       
      +    //TTNODE* tft = new TTNODE();
       
           if(a_type==valop::SYMBOL) {
             if(rcmp(a_var.get_string(),s_psi())) {
      @@ -273,7 +273,7 @@ public:
       
         virtual bool option(const valop& a_node) {
           sg::base_freetype* tft = sg::base_freetype::create(m_ttf);
      -    //TTNODE* tft = new TTNODE();       
      +    //TTNODE* tft = new TTNODE();
           s2sg(a_node.m_name,*tft);
           m_group.add(tft);
           return true;
      @@ -305,7 +305,7 @@ public:
             op_sep->add(op_tsf);
       
             sg::base_freetype* tft = sg::base_freetype::create(m_ttf);
      -      //TTNODE* tft = new TTNODE();   
      +      //TTNODE* tft = new TTNODE();
             unichar2sg(0x0221A,*tft);
             op_sep->add(tft);
             vec3f omn,omx;
      @@ -372,7 +372,7 @@ public:
             op_sep->add(op_tsf);
       
             sg::base_freetype* tft = sg::base_freetype::create(m_ttf);
      -      //TTNODE* tft = new TTNODE();   
      +      //TTNODE* tft = new TTNODE();
             s2sg(a_f.m_function->name(),*tft);
             tft->unitext[0].push_back(0x00028); // (
             op_sep->add(tft);
      @@ -396,7 +396,7 @@ public:
             op_sep->add(op_tsf);
       
             sg::base_freetype* tft = sg::base_freetype::create(m_ttf);
      -      //TTNODE* tft = new TTNODE();   
      +      //TTNODE* tft = new TTNODE();
             unichar2sg(0x00029,*tft);
             op_sep->add(tft);
             vec3f omn,omx;
      @@ -428,12 +428,12 @@ public:
               return false;
             }
             mnmx(m_out,*sep1,mn1,mx1);}
      -  
      +
             //sg::separator* op_sep = new sg::separator;
             //sep->add(op_sep);
             //sg::matrix* op_tsf = new sg::matrix;
             //op_sep->add(op_tsf);
      -  
      +
             sg::separator* sep2 = new sg::separator;
             sep->add(sep2);
             sg::matrix* tsf2 = new sg::matrix;
      @@ -453,7 +453,7 @@ public:
             }
             tsf2->set_scale(s2,s2,1);
             mnmx(m_out,*sep2,mn2,mx2);
      -  
      +
             float xshift = (mx1[0]-mn1[0])*0.1f;
             float dx2 = -mn2[0]+mx1[0]+xshift;
       
      @@ -506,7 +506,7 @@ public:
             op_sep->add(op_tsf);
       
             sg::base_freetype* tft = sg::base_freetype::create(m_ttf);
      -      //TTNODE* tft = new TTNODE();   
      +      //TTNODE* tft = new TTNODE();
             s2sg(a_f.m_function->name(),*tft);
             tft->unitext[0].push_back(0x00028); // (
             op_sep->add(tft);
      @@ -531,7 +531,7 @@ public:
             op_sep->add(op_tsf);
       
             sg::base_freetype* tft = sg::base_freetype::create(m_ttf);
      -      //TTNODE* tft = new TTNODE();   
      +      //TTNODE* tft = new TTNODE();
             unichar2sg(0x0002C,*tft); // ,
             op_sep->add(tft);
             vec3f omn,omx;
      @@ -558,7 +558,7 @@ public:
             op_sep->add(op_tsf);
       
             sg::base_freetype* tft = sg::base_freetype::create(m_ttf);
      -      //TTNODE* tft = new TTNODE();   
      +      //TTNODE* tft = new TTNODE();
             unichar2sg(0x00029,*tft);
             op_sep->add(tft);
             vec3f omn,omx;
      @@ -688,7 +688,7 @@ protected:
       
         void unichar2sg(unichar a_unichar,sg::base_freetype& a_node){
           if(m_wf) a_node.modeling = sg::font_outline;  //else font_filled, font_pixmap.
      -    
      +
           a_node.font = sg::font_stixgeneral_otf();
       
           std::vector line;
      diff --git a/source/analysis/g4tools/include/tools/sg/vertices b/source/analysis/g4tools/include/tools/sg/vertices
      index 21a2a5c380..4243d13a1d 100644
      --- a/source/analysis/g4tools/include/tools/sg/vertices
      +++ b/source/analysis/g4tools/include/tools/sg/vertices
      @@ -58,7 +58,7 @@ public:
             if(_id) {
       #ifdef __APPLE__
               bool restore_blend = check_set_blend(a_action);
      -#endif	
      +#endif
               a_action.begin_gsto(_id);
               size_t npt = xyzs.values().size()/3;
               bufpos pos = 0;
      @@ -73,7 +73,7 @@ public:
               a_action.end_gsto();
       #ifdef __APPLE__
               if(restore_blend) a_action.set_blend(true);
      -#endif	
      +#endif
               return;
             } else { //!_id
               // use immediate rendering.
      @@ -96,10 +96,10 @@ public:
           } else {
             a_action.draw_vertex_array(mode.value(),xyzs.values());
           }
      -    
      +
       #ifdef __APPLE__
           if(restore_blend) a_action.set_blend(true);
      -#endif    
      +#endif
         }
         virtual void pick(pick_action& a_action) {
           if(touched()) {clean_gstos();reset_touched();}
      @@ -204,7 +204,7 @@ public:
           float py = a_by;
           float pz = a_bz;
       
      -    for(unsigned int idash=0;idash(mn(m_x.size(),m_y.size()),a_sinfos)){}
      -  
      +
             }
           }
      -  }  
      +  }
       public: //points2D
         virtual float x_axis_min() const {return float(m_x_min);}
         virtual float x_axis_max() const {return float(m_x_max);}
      @@ -105,7 +105,7 @@ public:
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      -  }  
      +  }
         xy2plot& operator=(const xy2plot& a_from){
           m_name = a_from.m_name;
           m_legend = a_from.m_legend;
      diff --git a/source/analysis/g4tools/include/tools/sg/zb_action b/source/analysis/g4tools/include/tools/sg/zb_action
      index b5e3d5d027..298aa52f36 100644
      --- a/source/analysis/g4tools/include/tools/sg/zb_action
      +++ b/source/analysis/g4tools/include/tools/sg/zb_action
      @@ -24,6 +24,8 @@ namespace tools {
       namespace sg {
       
       class zb_action : public render_action {
      +  TOOLS_ACTION(zb_action,tools::sg::zb_action,render_action)
      +private:  
         zb_action& get_me() {return *this;}
       public:
         virtual void draw_vertex_array(gl::mode_t a_mode,size_t a_floatn,const float* a_xyzs){
      @@ -36,19 +38,19 @@ public:
       
         virtual void draw_vertex_color_array(gl::mode_t a_mode,size_t a_floatn,
                                              const float* a_xyzs,const float* a_rgbas){
      -    m_pv.add_primitive(a_mode,a_floatn,a_xyzs,a_rgbas);
      +    m_pv.add_primitive_rgba(a_mode,a_floatn,a_xyzs,a_rgbas);
         }
       
         virtual void draw_vertex_normal_array(gl::mode_t a_mode,size_t a_floatn,
      -                                        const float* a_xyzs,const float* /*a_nms*/){
      -    m_pv.add_primitive(a_mode,a_floatn,a_xyzs);
      +                                        const float* a_xyzs,const float* a_nms){
      +    m_pv.add_primitive_normal(a_mode,a_floatn,a_xyzs,a_nms);
         }
       
         virtual void draw_vertex_color_normal_array(gl::mode_t a_mode,size_t a_floatn,
      -                                              const float* a_xyzs,const float* a_rgbas,const float* /*a_nms*/){
      +                                              const float* a_xyzs,const float* a_rgbas,const float* a_nms){
           // We expect a_nms of size : 3*(a_floatn/3)
           // (then one normal per 3D point).
      -    m_pv.add_primitive(a_mode,a_floatn,a_xyzs,a_rgbas);
      +    m_pv.add_primitive_normal_rgba(a_mode,a_floatn,a_xyzs,a_nms,a_rgbas);
         }
       
         virtual void clear_color(float a_r,float a_g,float a_b,float a_a){
      @@ -102,7 +104,7 @@ public:
           m_model = _state.m_model;
       
           if(!m_proj.invert(m_proj_1)){}
      -    
      +
           m_rgba = _state.m_color;
           m_ccw = (_state.m_winding==winding_ccw?true:false);
           m_POLYGON_OFFSET_FILL = _state.m_GL_POLYGON_OFFSET_FILL;
      @@ -135,7 +137,7 @@ public:
                                                gstoid a_id,const float* a_tcs) {
           //::printf("debug : zb_action : 000 : %d\n",a_id);
           img_byte img;
      -    if(!m_mgr.find(a_id,img)) return;    
      +    if(!m_mgr.find(a_id,img)) return;
           m_pv.add_texture(m_out,a_xyzn,a_xyzs,img,a_tcs);
         }
       
      @@ -160,11 +162,12 @@ public:
         virtual sg::render_manager& render_manager() {return m_mgr;}
       public:
         zb_action(zb_manager& a_mgr,std::ostream& a_out,unsigned int a_ww,unsigned int a_wh)
      -  :render_action(a_out,a_ww,a_wh)
      +  :parent(a_out,a_ww,a_wh)
         ,m_mgr(a_mgr)
         ,m_pv(get_me())
         ,m_light_color(colorf_white())
         ,m_light_direction(vec3f(0,0,-1))
      +  ,m_normal(0,0,1)
       
         ,m_ccw(true)
         ,m_POLYGON_OFFSET_FILL(false)
      @@ -182,12 +185,12 @@ public:
       
           m_zb.change_size(a_ww,a_wh);
       //    m_zb.clear_color_buffer(0);
      -//    m_zb.clear_depth_buffer();  
      +//    m_zb.clear_depth_buffer();
         }
         virtual ~zb_action(){}
       protected:
         zb_action(const zb_action& a_from)
      -  :render_action(a_from)
      +  :parent(a_from)
         ,m_mgr(a_from.m_mgr)
         ,m_vp_mtx(a_from.m_vp_mtx)
         //,m_buffer(a_from.m_buffer)
      @@ -211,7 +214,7 @@ protected:
         ,m_DEPTH_TEST(a_from.m_DEPTH_TEST)
         {}
         zb_action& operator=(const zb_action& a_from){
      -    render_action::operator=(a_from);
      +    parent::operator=(a_from);
           m_vp_mtx = a_from.m_vp_mtx;
         //m_buffer = a_from.m_buffer;
           m_pv = a_from.m_pv;
      @@ -261,7 +264,7 @@ public:
           return pix;
         }
       
      -  zb::buffer::ZPixel get_pix(const colorf& a_rgba) {   
      +  zb::buffer::ZPixel get_pix(const colorf& a_rgba) {
           cmap_t::const_iterator it = m_cmap.find(a_rgba);
           if(it!=m_cmap.end()) return (*it).second;
           return add_color(a_rgba);
      @@ -271,7 +274,7 @@ public:
           cmap_t::const_iterator it;
           for(it=m_cmap.begin();it!=m_cmap.end();++it){
             if((*it).second==a_pix) {a_rgba = (*it).first;return true;}
      -    }    
      +    }
           return false;
         }
       
      @@ -284,7 +287,7 @@ protected:
           cmap_t::const_iterator it;
           for(it=m_cmap.begin();it!=m_cmap.end();++it){
             m_rcmap[(*it).second] = (*it).first;
      -    }    
      +    }
         }
       public:
         //typedef wps::VCol VCol;
      @@ -292,7 +295,7 @@ public:
       
         static bool get_rgb(void* a_tag,unsigned int a_col,unsigned int a_row,VCol& a_r,VCol& a_g,VCol& a_b){
           //used with wps.
      -    zb_action* rzb = (zb_action*)a_tag; 
      +    zb_action* rzb = (zb_action*)a_tag;
       
           zb::buffer::ZPixel pix;
           if(!rzb->zbuffer().get_clipped_pixel(a_col,rzb->wh()-1-a_row,pix)){
      @@ -308,7 +311,7 @@ public:
          {rcmap_t::const_iterator it = rzb->rcolormap().find(pix);
           if(it==rzb->rcolormap().end()) {
             rzb->out() << "can't find pixel " << pix
      -                 << " in cmap (sz " << rzb->rcolormap().size() << ")." 
      +                 << " in cmap (sz " << rzb->rcolormap().size() << ")."
                        << std::endl;
             a_r = 1;
             a_g = 0;
      @@ -384,6 +387,11 @@ protected:
           a_z /= a_w;
           return true;
         }
      +//  bool project_normal(float& a_x,float& a_y,float& a_z) {
      +//    m_model.mul_dir_3f(a_x,a_y,a_z);
      +//    m_proj.mul_dir_3f(a_x,a_y,a_z);
      +//    return true;
      +//  }
       
         class primvis : public primitive_visitor {
         protected:
      @@ -393,20 +401,20 @@ protected:
           virtual bool add_point(float a_x,float a_y,float a_z,float) {
             return _add_point(a_x,a_y,a_z,m_zb_action.m_rgba);
           }
      -  
      +
           virtual bool add_point(float a_x,float a_y,float a_z,float,
                                  float a_r,float a_g,float a_b,float a_a) {
      -      colorf c(a_r,a_g,a_b,a_a);  
      +      colorf c(a_r,a_g,a_b,a_a);
             return _add_point(a_x,a_y,a_z,c);
           }
      -  
      +
           virtual bool add_line(float a_bx,float a_by,float a_bz,float,
                                 float a_ex,float a_ey,float a_ez,float) {
             m_zb_action.m_vp_mtx.mul_3f(a_bx,a_by,a_bz);
             m_zb_action.m_vp_mtx.mul_3f(a_ex,a_ey,a_ez);
             a_bz *= -1;
             a_ez *= -1;
      -  
      +
             zb::point beg;
             zinit(beg,a_bx,a_by,a_bz);
       
      @@ -414,11 +422,11 @@ protected:
             zinit(end,a_ex,a_ey,a_ez);
       
             m_zb_action.m_zb.set_depth_test(m_zb_action.m_DEPTH_TEST);
      -      m_zb_action.m_zb.draw_line(beg,end,m_zb_action.get_pix(m_zb_action.m_rgba),npix(m_zb_action.m_line_width));  
      +      m_zb_action.m_zb.draw_line(beg,end,m_zb_action.get_pix(m_zb_action.m_rgba),npix(m_zb_action.m_line_width));
       
             return true;
           }
      -  
      +
           virtual bool add_line(float a_bx,float a_by,float a_bz,float,
                                 float a_br,float a_bg,float a_bb,float a_ba,
                                 float a_ex,float a_ey,float a_ez,float,
      @@ -427,7 +435,7 @@ protected:
             m_zb_action.m_vp_mtx.mul_3f(a_ex,a_ey,a_ez);
             a_bz *= -1;
             a_ez *= -1;
      -  
      +
             zb::point beg;
             zinit(beg,a_bx,a_by,a_bz);
       
      @@ -437,11 +445,11 @@ protected:
             m_zb_action.m_zb.set_depth_test(m_zb_action.m_DEPTH_TEST);
       
             // interpolate color with beg,end ?
      -      m_zb_action.m_zb.draw_line(beg,end,m_zb_action.get_pix(colorf(a_br,a_bg,a_bb,a_ba)),npix(m_zb_action.m_line_width));  
      +      m_zb_action.m_zb.draw_line(beg,end,m_zb_action.get_pix(colorf(a_br,a_bg,a_bb,a_ba)),npix(m_zb_action.m_line_width));
       
             return true;
           }
      -  
      +
           virtual bool add_triangle(float a_p1x,float a_p1y,float a_p1z,float a_p1w,
                                     float a_p2x,float a_p2y,float a_p2z,float a_p2w,
                                     float a_p3x,float a_p3y,float a_p3z,float a_p3w){
      @@ -453,11 +461,11 @@ protected:
       
           virtual bool add_triangle(
             float a_p1x,float a_p1y,float a_p1z,float a_p1w,
      -        float a_r1,float a_g1,float a_b1,float a_a1,
      +      float a_r1,float a_g1,float a_b1,float a_a1,
             float a_p2x,float a_p2y,float a_p2z,float a_p2w,
      -        float a_r2,float a_g2,float a_b2,float a_a2,
      +      float a_r2,float a_g2,float a_b2,float a_a2,
             float a_p3x,float a_p3y,float a_p3z,float a_p3w,
      -        float a_r3,float a_g3,float a_b3,float a_a3){
      +      float a_r3,float a_g3,float a_b3,float a_a3){
       
             float r = (a_r1+a_r2+a_r3)/3.0f;
             float g = (a_g1+a_g2+a_g3)/3.0f;
      @@ -471,6 +479,79 @@ protected:
                                  col);
           }
       
      +    virtual bool project_normal(float&,float&,float&) {
      +      //return m_zb_action.project_normal(a_x,a_y,a_z);
      +      return true;
      +    }
      +    virtual bool add_point_normal(float a_x,float a_y,float a_z,float a_w,
      +                                  float /*a_nx*/,float /*a_ny*/,float /*a_nz*/) {
      +      add_point(a_x,a_y,a_z,a_w);
      +    //m_this.m_points.add_normal(a_nx,a_ny,a_nz);
      +      return true;
      +    }
      +    virtual bool add_point_normal(float a_x,float a_y,float a_z,float a_w,
      +                                  float /*a_nx*/,float /*a_ny*/,float /*a_nz*/,
      +                                  float a_r,float a_g,float a_b,float a_a) {
      +      add_point(a_x,a_y,a_z,a_w,a_r,a_g,a_b,a_a);
      +    //m_this.m_points.add_normal(a_nx,a_ny,a_nz);
      +      return true;
      +    }
      +    virtual bool add_line_normal(float a_bx,float a_by,float a_bz,float a_bw,
      +                                 float /*a_bnx*/,float /*a_bny*/,float /*a_bnz*/,
      +                                 float a_ex,float a_ey,float a_ez,float a_ew,
      +                                 float /*a_enx*/,float /*a_eny*/,float /*a_enz*/) {
      +      add_line(a_bx,a_by,a_bz,a_bw, a_ex,a_ey,a_ez,a_ew);
      +    //m_this.m_lines.add_normal(a_bnx,a_bny,a_bnz);
      +    //m_this.m_lines.add_normal(a_enx,a_eny,a_enz);
      +      return true;
      +    }
      +    virtual bool add_line_normal(float a_bx,float a_by,float a_bz,float a_bw,
      +                                 float /*a_bnx*/,float /*a_bny*/,float /*a_bnz*/,
      +                                 float a_br,float a_bg,float a_bb,float a_ba,
      +                                 float a_ex,float a_ey,float a_ez,float a_ew,
      +                                 float /*a_enx*/,float /*a_eny*/,float /*a_enz*/,
      +                                 float a_er,float a_eg,float a_eb,float a_ea){
      +      add_line(a_bx,a_by,a_bz,a_bw, a_br,a_bg,a_bb,a_ba, a_ex,a_ey,a_ez,a_ew, a_er,a_eg,a_eb,a_ea);
      +    //m_this.m_lines.add_normal(a_bnx,a_bny,a_bnz);
      +    //m_this.m_lines.add_normal(a_enx,a_eny,a_enz);
      +      return true;
      +    }
      +    virtual bool add_triangle_normal(
      +      float a_p1x,float a_p1y,float a_p1z,float a_p1w,
      +      float /*a_n1x*/,float /*a_n1y*/,float /*a_n1z*/,
      +      float a_p2x,float a_p2y,float a_p2z,float a_p2w,
      +      float /*a_n2x*/,float /*a_n2y*/,float /*a_n2z*/,
      +      float a_p3x,float a_p3y,float a_p3z,float a_p3w,
      +      float /*a_n3x*/,float /*a_n3y*/,float /*a_n3z*/) {
      +      add_triangle(a_p1x,a_p1y,a_p1z,a_p1w,
      +                   a_p2x,a_p2y,a_p2z,a_p2w,
      +                   a_p3x,a_p3y,a_p3z,a_p3w);
      +    //m_this.m_triangles.add_normal(a_n1x,a_n1y,a_n1z);
      +    //m_this.m_triangles.add_normal(a_n2x,a_n2y,a_n2z);
      +    //m_this.m_triangles.add_normal(a_n3x,a_n3y,a_n3z);
      +      return true;
      +    }
      +    virtual bool add_triangle_normal(
      +      float a_p1x,float a_p1y,float a_p1z,float a_p1w,
      +      float /*a_n1x*/,float /*a_n1y*/,float /*a_n1z*/,
      +      float a_r1,float a_g1,float a_b1,float a_a1,
      +      float a_p2x,float a_p2y,float a_p2z,float a_p2w,
      +      float /*a_n2x*/,float /*a_n2y*/,float /*a_n2z*/,
      +      float a_r2,float a_g2,float a_b2,float a_a2,
      +      float a_p3x,float a_p3y,float a_p3z,float a_p3w,
      +      float /*a_n3x*/,float /*a_n3y*/,float /*a_n3z*/,
      +      float a_r3,float a_g3,float a_b3,float a_a3){
      +      add_triangle(a_p1x,a_p1y,a_p1z,a_p1w,
      +                   a_r1,a_g1,a_b1,a_a1,
      +                   a_p2x,a_p2y,a_p2z,a_p2w,
      +                   a_r2,a_g2,a_b2,a_a2,
      +                   a_p3x,a_p3y,a_p3z,a_p3w,
      +                   a_r3,a_g3,a_b3,a_a3);
      +    //m_this.m_triangles.add_normal(a_n1x,a_n1y,a_n1z);
      +    //m_this.m_triangles.add_normal(a_n2x,a_n2y,a_n2z);
      +    //m_this.m_triangles.add_normal(a_n3x,a_n3y,a_n3z);
      +      return true;
      +    }
         public:
           primvis(zb_action& a_zb):m_zb_action(a_zb){}
           virtual ~primvis(){}
      @@ -493,7 +574,7 @@ protected:
           unsigned int npix(float a_size) {
             // 0 -> 0
             // 1 -> 0
      -      // 2 -> 1    3x3  
      +      // 2 -> 1    3x3
             // 3 -> 1    3x3
             // 4 -> 2    5x5
             // 5 -> 2    5x5
      @@ -512,7 +593,7 @@ protected:
       
             zb::point p;
             zinit(p,a_x,a_y,a_z);
      -      
      +
             float alpha = a_color.a();
             zb::buffer::ZPixel px;
             if(alpha<1.0f) {
      @@ -533,12 +614,12 @@ protected:
       
             return true;
           }
      -  
      +
           bool _add_triangle(float a_p1x,float a_p1y,float a_p1z,float a_p1w,
                              float a_p2x,float a_p2y,float a_p2z,float a_p2w,
                              float a_p3x,float a_p3y,float a_p3z,float a_p3w,
                              const colorf& a_color){
      - 
      +
             float p1x = a_p1x;float p1y = a_p1y;float p1z = a_p1z;//float p1w = a_p1w;
             float p2x = a_p2x;float p2y = a_p2y;float p2z = a_p2z;//float p2w = a_p2w;
             float p3x = a_p3x;float p3y = a_p3y;float p3z = a_p3z;//float p3w = a_p3w;
      @@ -560,14 +641,14 @@ protected:
             }
       
             typedef zb::ZZ ZZ; //double
      -  
      +
             plane pn(
               vec3(p1x,p1y,p1z),
               vec3(p2x,p2y,p2z),
               vec3(p3x,p3y,p3z)
             );
             if(!pn.is_valid()) return true;
      -      
      +
             // norm[0]*x+norm[1]*y+norm[2]*z = dist
             // A*x+B*y+C*z+D = 0
       
      @@ -625,7 +706,7 @@ protected:
                 m_zb_action.m_model.mul_3f(dx,dy,dz);
                 d.set_value(dx,dy,dz);
                 if(d.normalize()) {
      -            float dot = npn.dot(d);     
      +            float dot = npn.dot(d);
                   if((-1<=dot)&&(dot<=0)) {
                     dot *= -1;
       
      @@ -640,14 +721,14 @@ protected:
       
                     colorf c(r,g,b,a_color.a());
       
      -              m_zb_action.m_zb.draw_polygon(3,list,A,B,C,D,m_zb_action.get_pix(c));  
      -            //m_zb_action.m_zb.draw_polygon(3,list,A,B,C,D,m_zb_action.get_pix(a_color));  
      +              m_zb_action.m_zb.draw_polygon(3,list,A,B,C,D,m_zb_action.get_pix(c));
      +            //m_zb_action.m_zb.draw_polygon(3,list,A,B,C,D,m_zb_action.get_pix(a_color));
                   }
                 }
               }
       
             } else {
      -        m_zb_action.m_zb.draw_polygon(3,list,A,B,C,D,m_zb_action.get_pix(a_color));  
      +        m_zb_action.m_zb.draw_polygon(3,list,A,B,C,D,m_zb_action.get_pix(a_color));
             }
       
             return true;
      @@ -657,7 +738,7 @@ protected:
         };
       
       protected:
      -  zb_manager& m_mgr;  
      +  zb_manager& m_mgr;
         mat4f m_vp_mtx;
         zb::buffer m_zb;
         primvis m_pv;
      @@ -671,14 +752,14 @@ protected:
         // to be restored in restore_state() :
         mat4f m_proj;
         mat4f m_model;
      -  colorf m_rgba;  
      +  colorf m_rgba;
         bool m_ccw;
      -  bool m_POLYGON_OFFSET_FILL;	
      +  bool m_POLYGON_OFFSET_FILL;
         bool m_CULL_FACE;
         bool m_POINT_SMOOTH;
         bool m_LINE_SMOOTH;
         float m_line_width;
      -  float m_point_size;  
      +  float m_point_size;
         bool m_light_on;
         bool m_DEPTH_TEST;
       };
      diff --git a/source/analysis/g4tools/include/tools/sg/zb_manager b/source/analysis/g4tools/include/tools/sg/zb_manager
      index 80e164d555..fe1ea973f8 100644
      --- a/source/analysis/g4tools/include/tools/sg/zb_manager
      +++ b/source/analysis/g4tools/include/tools/sg/zb_manager
      @@ -22,7 +22,7 @@ public:
         virtual void* cast(const std::string& a_class) const {
           if(void* p = cmp_cast(this,a_class)) {return p;}
           else return 0;
      -  }  
      +  }
       public:
         virtual bool begin_render(int,int,unsigned int,unsigned int,float,float,float,float,bool = true) {return true;}
         virtual void end_render() {}
      diff --git a/source/analysis/g4tools/include/tools/smatch b/source/analysis/g4tools/include/tools/smatch
      index c63f8e1720..1b91b61a3b 100644
      --- a/source/analysis/g4tools/include/tools/smatch
      +++ b/source/analysis/g4tools/include/tools/smatch
      @@ -35,7 +35,7 @@ inline bool match(const std::string& a_string,const std::string& a_pattern,bool
       
         unsigned int wn;
         std::string::size_type* wls = wps+lpattern;
      -  words(a_pattern,"*",false,wn,wps,wls);  
      +  words(a_pattern,"*",false,wn,wps,wls);
         if(!wn) {
           //delete [] wps;
           return true; // only wildcards :
      @@ -43,7 +43,7 @@ inline bool match(const std::string& a_string,const std::string& a_pattern,bool
       
         // tricky case :
         char* token = (char*)a_string.c_str();
      - {for(unsigned int count=0;count> value;
           if(a_iss.fail()) {a_values.clear();return false;}
      diff --git a/source/analysis/g4tools/include/tools/spline b/source/analysis/g4tools/include/tools/spline
      index 97bfa6cdf2..586dec69da 100644
      --- a/source/analysis/g4tools/include/tools/spline
      +++ b/source/analysis/g4tools/include/tools/spline
      @@ -20,7 +20,7 @@ public:
         base_poly():fX(0),fY(0) {}
         base_poly(double x,double y):fX(x),fY(y) {}
         virtual ~base_poly(){}
      -public:   
      +public:
         base_poly(base_poly const &a_from):fX(a_from.fX),fY(a_from.fY) {}
         base_poly& operator=(base_poly const &a_from) {
           if(this==&a_from) return *this;
      @@ -42,7 +42,7 @@ class cubic_poly : public base_poly {
       public:
         cubic_poly():fB(0), fC(0), fD(0) {}
         cubic_poly(double x, double y, double b, double c, double d):base_poly(x,y), fB(b), fC(c), fD(d) {}
      -public:   
      +public:
         cubic_poly(cubic_poly const &a_from)
         :base_poly(a_from), fB(a_from.fB), fC(a_from.fC), fD(a_from.fD) {}
         cubic_poly& operator=(cubic_poly const &a_from) {
      @@ -201,7 +201,7 @@ protected:
           return i;
         }
         static int TMath_FloorNint(double x) { return TMath_Nint(::floor(x)); }
      -  
      +
         size_t find_x(double x) const {
           int klow=0, khig=fNp-1;
           //
      @@ -234,7 +234,7 @@ protected:
                         << " x(" << klow << ") = " << fPoly[klow].X() << " < x= " << x
                         << " < x(" << klow+1 << ") = " << fPoly[klow+1].X() << "."
       		  << "." << std::endl;
      -         }     		  
      +         }     
             }
           }
           return klow;
      @@ -270,7 +270,7 @@ protected:
           ///        where h = x - tau(i). the function program *ppvalu* may be
           ///        used to evaluate f or its derivatives from tau,c, l = n-1,
           ///        and k=4.
      -    
      +
           int j, l;
           double   divdf1,divdf3,dtau,g=0;
           // ***** a tridiagonal linear system for the unknown slopes s(i) of
      @@ -439,7 +439,7 @@ public:
           base_spline::operator=(a_from);
           fPoly = a_from.fPoly;
           return *this;
      -  }  
      +  }
       public:
         double eval(double x) const {if(!fNp) return 0;size_t klow=find_x(x);return fPoly[klow].eval(x);}
       
      @@ -462,7 +462,7 @@ protected:
                 khalf = (klow+khig)/2;
                 if(x>fPoly[khalf].X()) klow=khalf;
                 else                   khig=khalf;
      -        }	       
      +        }
             }
       
             // This could be removed, sanity check
      @@ -471,11 +471,11 @@ protected:
                     << " x(" << klow << ") = " << fPoly[klow].X() << " < x= " << x
                     << " < x(" << klow+1<< ") = " << fPoly[klow+1].X() << "."
       	      << std::endl;
      -      }     		  
      +      }
           }
           return klow;
         }
      -  
      +
         void build_coeff() {
           ////////////////////////////////////////////////////////////////////////////////
           ///     algorithm 600, collected algorithms from acm.
      @@ -560,7 +560,7 @@ protected:
           fPoly[0].D() = fPoly[0].E() = 0;
           if (q) fPoly[1].D() = q*6.*q2/(qr*qr);
           else fPoly[1].D() = 0;
      - 
      +
           if (m > 1) {
              for (i = 1; i < m; ++i) {
                 p = q;
      @@ -588,7 +588,7 @@ protected:
              }
           }
           if (r) fPoly[m-1].D() += r*6.*r2/(qr*qr);
      - 
      +
           //     First and second order divided differences of the given function
           //     values, stored in b from 2 to n and in c from 3 to n
           //     respectively. care is taken of double and triple knots.
      @@ -610,14 +610,14 @@ protected:
                 fPoly[i].B() = fPoly[i-1].B();
              }
           }
      - 
      -    //     Solve the linear system with c(i+2) - c(i+1) as right-hand side. 
      +
      +    //     Solve the linear system with c(i+2) - c(i+1) as right-hand side.
           if (m > 1) {
              p=fPoly[0].C()=fPoly[m-1].E()=fPoly[0].F()
                 =fPoly[m-2].F()=fPoly[m-1].F()=0;
              fPoly[1].C() = fPoly[3].C()-fPoly[2].C();
              fPoly[1].D() = 1./fPoly[1].D();
      - 
      +
              if (m > 2) {
                 for (i = 2; i < m; ++i) {
                    q = fPoly[i-1].D()*fPoly[i-1].E();
      @@ -629,13 +629,13 @@ protected:
                 }
              }
           }
      - 
      +
           fPoly[fNp-2].C() = fPoly[fNp-1].C() = 0;
           if (fNp > 3)
              for (i=fNp-3; i > 0; --i)
                 fPoly[i].C() = (fPoly[i].C()-fPoly[i].E()*fPoly[i+1].C()
                                -fPoly[i].F()*fPoly[i+2].C())*fPoly[i].D();
      - 
      +
           //     Integrate the third derivative of s(x)
           m = fNp-1;
           q = fPoly[1].X()-fPoly[0].X();
      @@ -679,14 +679,14 @@ protected:
                 fPoly[i].D() = fPoly[i].E() = fPoly[i].F() = 0;
              }
           }
      - 
      +
           //     End points x(1) and x(n)
           p = fPoly[1].X()-fPoly[0].X();
           s = fPoly[0].F()*p*p*p;
           fPoly[0].E() = fPoly[0].D() = 0;
           fPoly[0].C() = fPoly[1].C()-s*10;
           fPoly[0].B() = b1-(fPoly[0].C()+s)*p;
      - 
      +
           q = fPoly[fNp-1].X()-fPoly[fNp-2].X();
           t = fPoly[fNp-2].F()*q*q*q;
           fPoly[fNp-1].E() = fPoly[fNp-1].D() = 0;
      diff --git a/source/analysis/g4tools/include/tools/store/iobj_visitor b/source/analysis/g4tools/include/tools/store/iobj_visitor
      index 79e29febb2..a219eef452 100644
      --- a/source/analysis/g4tools/include/tools/store/iobj_visitor
      +++ b/source/analysis/g4tools/include/tools/store/iobj_visitor
      @@ -40,7 +40,7 @@ public:
         virtual bool visit(std::vector&) = 0;
         virtual bool visit(std::vector&) = 0;
         virtual bool visit(std::vector< std::vector >&) = 0;
      -  //virtual bool visit_double(IArray&) = 0;  
      +  //virtual bool visit_double(IArray&) = 0;
       };
       
       }
      diff --git a/source/analysis/g4tools/include/tools/store/osc_streamers b/source/analysis/g4tools/include/tools/store/osc_streamers
      index 5a9bc66f79..3127b5b621 100644
      --- a/source/analysis/g4tools/include/tools/store/osc_streamers
      +++ b/source/analysis/g4tools/include/tools/store/osc_streamers
      @@ -139,14 +139,14 @@ public:
         virtual const std::string& store_cls() const {return s_item();}
         virtual bool visit(iobj_const_visitor& a_visitor) const {
           if(!a_visitor.begin(*this,s_item(),Item::s_visit)) return false;
      -  
      +
           int version = 1;
           if(!a_visitor.visit("fVersion",version)) return false;
      -  
      +
           if(!a_visitor.visit("fKey",fKey)) return false;
           if(!a_visitor.visit("fValue",fValue)) return false;
           if(!a_visitor.visit("fSticky",fSticky)) return false;
      -  
      +
           if(!a_visitor.end(*this)) return false;
           return true;
         }
      @@ -158,14 +158,14 @@ public:
       public:
         virtual bool read(iobj_visitor& a_visitor) {
           //if(!a_visitor.begin(*this)) return false;
      -  
      +
           int version;
           if(!a_visitor.visit(version)) return false;
      -  
      +
           if(!a_visitor.visit(fKey)) return false;
           if(!a_visitor.visit(fValue)) return false;
           if(!a_visitor.visit(fSticky)) return false;
      -  
      +
           //if(!a_visitor.end(*this)) return false;
           return true;
         }
      @@ -249,7 +249,7 @@ protected:
       template 
       inline bool std_vector_read(iobj_visitor& a_visitor,std::vector& a_vec) {
         a_vec.clear();
      -    
      +
         //if(!a_visitor.begin(*this)) return false;
       
         int version;
      @@ -281,10 +281,10 @@ protected:
           if(!a_v.begin(*this,s_annotation(),Annotation::s_visit)) return false;
       
           int version = 1;
      -    if(!a_v.visit("fVersion",version)) return false;  
      +    if(!a_v.visit("fVersion",version)) return false;
       
           Vector v(m_items,s_item());
      -    if(!a_v.visit("fItems",v)) return false;  
      +    if(!a_v.visit("fItems",v)) return false;
       
           if(!a_v.end(*this)) return false;
           return true;
      @@ -307,9 +307,9 @@ public:
       inline bool Annotation_read(iobj_visitor& a_visitor) {
         //if(!a_visitor.begin(*this)) return false;
         int version;
      -  if(!a_visitor.visit(version)) return false;  
      +  if(!a_visitor.visit(version)) return false;
         std::vector fItems;
      -  if(!std_vector_read(a_visitor,fItems)) return false;  
      +  if(!std_vector_read(a_visitor,fItems)) return false;
         //if(!a_visitor.end(*this)) return false;
         return true;
       }
      @@ -840,9 +840,9 @@ public:
         :istorable(a_from)
         ,parent(m_cp,a_from.m_cls)
         ,m_cp(a_from.m_cp)
      -  {}  
      +  {}
         Histogram_cp& operator=(const Histogram_cp& a_from){
      -    parent::operator=(a_from);    
      +    parent::operator=(a_from);
           m_cp = a_from.m_cp;
           return *this;
         }
      @@ -868,9 +868,9 @@ public:
         :istorable(a_from)
         ,parent(m_cp,a_from.m_cls)
         ,m_cp(a_from.m_cp)
      -  {}  
      +  {}
         Profile_cp& operator=(const Profile_cp& a_from){
      -    parent::operator=(a_from);    
      +    parent::operator=(a_from);
           m_cp = a_from.m_cp;
           return *this;
         }
      diff --git a/source/analysis/g4tools/include/tools/system b/source/analysis/g4tools/include/tools/system
      index 9d9ed22bc7..cdf582590b 100644
      --- a/source/analysis/g4tools/include/tools/system
      +++ b/source/analysis/g4tools/include/tools/system
      @@ -150,7 +150,7 @@ inline bool rep_env(std::string& a_string) {
         while((dollar=a_string.find('$'))!=std::string::npos){
           std::string::size_type slash = a_string.find('/',dollar+1);
           std::string::size_type back_slash = a_string.find('\\',dollar+1);
      -    std::string::size_type pos = std::string::npos; 
      +    std::string::size_type pos = std::string::npos;
           if(slash!=std::string::npos) {
             if(back_slash!=std::string::npos) {
               pos = slash& a_triangles)
         :m_out(a_out)
      @@ -39,14 +39,14 @@ public:
           //::gluTessCallback(tobj,(GLUenum)GLU_TESS_BEGIN_DATA,  (Func)beginCallback);
           //::gluTessCallback(tobj,(GLUenum)GLU_TESS_END_DATA,    (Func)endCallback);
           //::gluTessCallback(tobj,(GLUenum)GLU_TESS_ERROR_DATA,  (Func)errorCallback);
      -    //::gluTessCallback(tobj,(GLUenum)GLU_TESS_COMBINE_DATA,(Func)combineCallback);  
      +    //::gluTessCallback(tobj,(GLUenum)GLU_TESS_COMBINE_DATA,(Func)combineCallback);
       
           // NOTE : the gluTessCallback_<> are inlib/glutess specific.
           ::gluTessCallback_GLU_TESS_VERTEX_DATA (tobj,vertexCallback);
           ::gluTessCallback_GLU_TESS_BEGIN_DATA  (tobj,beginCallback);
           ::gluTessCallback_GLU_TESS_END_DATA    (tobj,endCallback);
           ::gluTessCallback_GLU_TESS_ERROR_DATA  (tobj,errorCallback);
      -    ::gluTessCallback_GLU_TESS_COMBINE_DATA(tobj,combineCallback);  
      +    ::gluTessCallback_GLU_TESS_COMBINE_DATA(tobj,combineCallback);
       
           ::gluTessProperty(tobj,(GLUenum)GLU_TESS_WINDING_RULE,GLU_TESS_WINDING_ODD);
       
      @@ -54,12 +54,12 @@ public:
             //if(aContour[a][0]!=aContour[a][aContour[a].size()-1]) continue;
             if(aContour[a].size()<=1) continue; //should not happen.
             size_t vecSize = aContour[a].size()-1;
      -  
      +
             typedef GLUdouble point[3];
             point* tab = new point[vecSize];
      -  
      +
             ::gluTessBeginPolygon(tobj, this);
      -  
      +
             ::gluTessBeginContour(tobj);
             for(size_t b=0;b=2) m_triangles.push_back(m_tmp);
      -  
      +
             int rest = m_vertex_number % 2;
             if(rest==1) {
               m_tmp.pointA[0] = vertex[0];
      @@ -115,7 +115,7 @@ protected:
             }
             m_vertex_number++;
           }
      -  
      +
           // GLU_TRIANGLE_FAN
           // Draws a connected group of triangles. One triangle is defined for each
           // vertex presented after the first two vertices. Vertices 1, n+1,
      @@ -129,7 +129,7 @@ protected:
               m_tmp.pointC[0] = vertex[0];
               m_tmp.pointC[1] = vertex[1];
               m_tmp.pointC[2] = vertex[2];
      -  
      +
               if (m_vertex_number >=2 ) {
                 m_triangles.push_back(m_tmp);
               }
      @@ -139,47 +139,47 @@ protected:
             }
             m_vertex_number++;
           }
      -  
      +
           // GLU_TRIANGLES
           // Treats each triplet of vertices as an independent triangle.
           // Vertices 3n-2, 3n-1, and 3n define triangle n. N/3 triangles are drawn.
           else if (m_begin_type == gl::triangles()) {
      -  
      +
             int rest = m_vertex_number % 3;
      -  
      +
             if(rest==2) {
               m_tmp.pointC[0] = vertex[0];
               m_tmp.pointC[1] = vertex[1];
               m_tmp.pointC[2] = vertex[2];
      -  
      +
               m_triangles.push_back(m_tmp);
      -  
      +
             } else if(rest==1) {
               m_tmp.pointB[0] = vertex[0];
               m_tmp.pointB[1] = vertex[1];
               m_tmp.pointB[2] = vertex[2];
      -  
      +
             } else if(rest==0) {
               m_tmp.pointA[0] = vertex[0];
               m_tmp.pointA[1] = vertex[1];
               m_tmp.pointA[2] = vertex[2];
             }
             m_vertex_number++;
      -  
      +
           } else {
             // do nothing and should never happend
           }
         }
      -protected:  
      +protected:
       #ifdef TOOLS_TESS_CONTOUR_STDCALL
         typedef GLUvoid(__stdcall *Func)();
       #else
         typedef GLUvoid(*Func)();
       #endif
       
      -  static void 
      +  static void
       #ifdef TOOLS_TESS_CONTOUR_STDCALL
      -  __stdcall  
      +  __stdcall
       #endif
         beginCallback(GLUenum aWhich,GLUvoid * aThis) {
           tess_contour* This = (tess_contour*)aThis;
      @@ -187,9 +187,9 @@ protected:
           This->resetVertex();
         }
       
      -  static void 
      +  static void
       #ifdef TOOLS_TESS_CONTOUR_STDCALL
      -  __stdcall  
      +  __stdcall
       #endif
         errorCallback(GLUenum aErrorCode,GLUvoid * aThis) {
           tess_contour* This = (tess_contour*)aThis;
      @@ -197,24 +197,24 @@ protected:
           This->setError(true);
         }
       
      -  static void 
      +  static void
       #ifdef TOOLS_TESS_CONTOUR_STDCALL
      -  __stdcall  
      +  __stdcall
       #endif
         endCallback(void*){}
       
      -  static void 
      +  static void
       #ifdef TOOLS_TESS_CONTOUR_STDCALL
      -  __stdcall  
      +  __stdcall
       #endif
         vertexCallback(GLUvoid *vertex,GLUvoid* aThis) {
           tess_contour* This = (tess_contour*)aThis;
           This->addVertex((double*)vertex);
         }
       
      -  static void 
      +  static void
       #ifdef TOOLS_TESS_CONTOUR_STDCALL
      -  __stdcall  
      +  __stdcall
       #endif
         combineCallback(GLUdouble coords[3],
                                     void* /*vertex_data*/[4],
      @@ -229,7 +229,7 @@ protected:
           This->combineTmps().push_back(vertex);
           *dataOut = vertex;
         }
      -  
      +
       protected:
         std::ostream& m_out;
         std::vector& m_triangles;
      diff --git a/source/analysis/g4tools/include/tools/test b/source/analysis/g4tools/include/tools/test
      index 26cf177dbb..bb477f1ad0 100644
      --- a/source/analysis/g4tools/include/tools/test
      +++ b/source/analysis/g4tools/include/tools/test
      @@ -132,7 +132,7 @@ inline bool _equal(std::ostream& a_out,const char* a_file,int a_line,const NUMBE
         return true;
       }
       
      -template  
      +template 
       inline bool equal(std::ostream& a_out,const char* a_file,int a_line,size_t a_size,const REAL* a_v,const REAL* a_expected,const REAL& a_tolerance,REAL(*a_fabs)(const REAL&)){
         for(size_t index=0;index(a_out,a_file,a_line,a_v[index],a_expected[index],a_tolerance,a_fabs)) return false;
      @@ -140,7 +140,7 @@ inline bool equal(std::ostream& a_out,const char* a_file,int a_line,size_t a_siz
         return true;
       }
       
      -template  
      +template 
       inline bool equal(std::ostream& a_out,const char* a_file,int a_line,const VEC& a_1,const VEC& a_2,const REAL& a_tolerance,REAL(*a_fabs)(const REAL&)){
         if(a_1.dimension()!=a_2.dimension()) {
           a_out << "failed in file :" << std::endl
      @@ -156,7 +156,7 @@ inline bool equal(std::ostream& a_out,const char* a_file,int a_line,const VEC& a
         return true;
       }
       
      -template  
      +template 
       inline bool mat_equal(std::ostream& a_out,const char* a_file,int a_line,const MAT& a_1,const MAT& a_2,const REAL& a_tolerance,REAL(*a_fabs)(const REAL&)){
         if(a_1.dimension()!=a_2.dimension()) {
           a_out << "failed in file :" << std::endl
      diff --git a/source/analysis/g4tools/include/tools/tos b/source/analysis/g4tools/include/tools/tos
      index cd2c71dd71..9d4e42645e 100644
      --- a/source/analysis/g4tools/include/tools/tos
      +++ b/source/analysis/g4tools/include/tools/tos
      @@ -18,7 +18,7 @@ namespace tools {
       
       inline std::string tos(unsigned char a_value){
         std::string s;
      -  if(is_printable(a_value)) 
      +  if(is_printable(a_value))
           sprintf(s,32,"%c",a_value);
         else
           sprintf(s,32,"%d",a_value);
      @@ -27,7 +27,7 @@ inline std::string tos(unsigned char a_value){
       
       inline std::string tos(char a_value){
         std::string s;
      -  if(is_printable(a_value)) 
      +  if(is_printable(a_value))
           sprintf(s,32,"%c",a_value);
         else
           sprintf(s,32,"%d",a_value);
      @@ -94,7 +94,7 @@ inline std::string tos(bool a_value){
       
       inline std::string tos(const std::string& a_value){return a_value;}
       
      -template   
      +template 
       inline std::string tos(const std::vector& a_vals,
                              const std::string& a_sep = "\n",
                              bool a_sep_at_end = false) {
      diff --git a/source/analysis/g4tools/include/tools/tosu b/source/analysis/g4tools/include/tools/tosu
      index 64bd13955f..1529e5ee0a 100644
      --- a/source/analysis/g4tools/include/tools/tosu
      +++ b/source/analysis/g4tools/include/tools/tosu
      @@ -40,9 +40,9 @@ inline void tosu(T a_i,char a_s[],unsigned int& a_l) {
         char* end = a_s+a_l-1;
         for(unsigned int i=0;i(*a_from.u.m_array_unsigned_char);
       
           //} else if(a_from.m_type==ARRAY_CHAR) {
           //  u.m_array_char = new array(*a_from.u.m_array_char);
       
           } else if(a_from.m_type==ARRAY_UNSIGNED_SHORT) {
      -      u.m_array_unsigned_short = 
      +      u.m_array_unsigned_short =
               new array(*a_from.u.m_array_unsigned_short);
       
           } else if(a_from.m_type==ARRAY_SHORT) {
      @@ -339,9 +339,9 @@ public:
       
           delete m_label;m_label = 0;
           if(a_from.m_label) m_label = new std::string(*a_from.m_label);
      -    
      +
           m_itag = a_from.m_itag;
      -    
      +
           reset();
       
           m_type = a_from.m_type;
      @@ -385,7 +385,7 @@ public:
       
           } else if(a_from.m_type==ARRAY_STRING) {
             u.m_array_string = new array(*a_from.u.m_array_string);
      -  
      +
           } else {
             u = a_from.u;
           }
      @@ -394,30 +394,30 @@ public:
         }
       /* for tests/symbolic.cpp.
       public:
      -  value operator*(const value& a_from) const {   
      +  value operator*(const value& a_from) const {
           value tmp(*this);
           std::string serr;
           multiply(tmp,a_from,serr);
           return tmp;
         }
      -  value operator+(const value& a_from) const {   
      +  value operator+(const value& a_from) const {
           value tmp(*this);
           std::string serr;
           add(tmp,a_from,serr);
           return tmp;
         }
      -  value operator-(const value& a_from) const {   
      +  value operator-(const value& a_from) const {
           value tmp(*this);
           std::string serr;
           subtract(tmp,a_from,serr);
           return tmp;
         }
      -  value operator+=(const value& a_from) {   
      +  value operator+=(const value& a_from) {
           value s = operator+(a_from);
           *this = s;
           return s;
         }
      -  value operator-=(const value& a_from) {   
      +  value operator-=(const value& a_from) {
           value s = operator-(a_from);
           *this = s;
           return s;
      @@ -462,18 +462,18 @@ public:
           //case ARRAY_UNSIGNED_CHAR:
           //  u.m_array_unsigned_char = new array();break;
           //case ARRAY_CHAR:u.m_array_char = new array();break;
      -  
      +
           case ARRAY_UNSIGNED_SHORT:
             u.m_array_unsigned_short = new array();break;
           case ARRAY_SHORT:u.m_array_short = new array();break;
      -  
      +
           case ARRAY_UNSIGNED_INT:
             u.m_array_unsigned_int = new array();break;
           case ARRAY_INT:u.m_array_int = new array();break;
           case ARRAY_UNSIGNED_INT64:
             u.m_array_unsigned_int64 = new array();break;
           case ARRAY_INT64:u.m_array_int64 = new array();break;
      -  
      +
           case ARRAY_FLOAT:u.m_array_float = new array();break;
           case ARRAY_DOUBLE:u.m_array_double = new array();break;
           case ARRAY_BOOL:u.m_array_bool = new array();break;
      @@ -766,22 +766,22 @@ public:
           //case ARRAY_CHAR:
           //  a_s = tos(a_v.u.m_array_char->vector());
           //  return true;
      -  
      +
           case ARRAY_UNSIGNED_SHORT:
             return nums2s(a_v.u.m_array_unsigned_short->vector(),a_s);
           case ARRAY_SHORT:
             return nums2s(a_v.u.m_array_short->vector(),a_s);
      -  
      +
           case ARRAY_UNSIGNED_INT:
             return nums2s(a_v.u.m_array_unsigned_int->vector(),a_s);
           case ARRAY_INT:
             return nums2s(a_v.u.m_array_int->vector(),a_s);
      -  
      +
           case ARRAY_UNSIGNED_INT64:
             return nums2s(a_v.u.m_array_unsigned_int64->vector(),a_s);
           case ARRAY_INT64:
             return nums2s(a_v.u.m_array_int64->vector(),a_s);
      -  
      +
           case ARRAY_FLOAT:
             return nums2s(a_v.u.m_array_float->vector(),a_s);
           case ARRAY_DOUBLE:
      @@ -792,7 +792,7 @@ public:
           case ARRAY_STRING:
             return nums2s(a_v.u.m_array_string->vector(),a_s);
           default:
      -      a_s.clear();  
      +      a_s.clear();
             return false;
           }
         }
      @@ -806,14 +806,14 @@ public:
           case BOOL:           return 5;
         //case UNSIGNED_CHAR:  return 1;
         //case CHAR:           return 1;
      -    
      +
           case INT:
           case UNSIGNED_SHORT:
           case SHORT:
           case FLOAT:
           case UNSIGNED_INT:   return 8;
      -    
      -    
      +
      +
           case DOUBLE:
           case INT64:
           case UNSIGNED_INT64:
      @@ -825,7 +825,7 @@ public:
       
           //case ARRAY_UNSIGNED_CHAR:
           //case ARRAY_CHAR:
      -  
      +
           case ARRAY_UNSIGNED_SHORT:
           case ARRAY_SHORT:
           case ARRAY_UNSIGNED_INT:
      @@ -1030,7 +1030,7 @@ public: // for valop :
         static bool subtract(value&,const value&,std::string&);
         static bool multiply(value&,const value&,std::string&);
         static bool divide(value&,const value&,std::string&);
      -    
      +
         static bool if_gt(value&,const value&,std::string&);
         static bool if_eq(value&,const value&,std::string&);
       
      @@ -1054,14 +1054,14 @@ public: // for valop :
         static bool if_lt(value& aThis,const value& aV,
                           std::string& aError){
           if(!if_ge(aThis,aV,aError)) return false;
      -    aThis.u.m_bool = (aThis.u.m_bool?false:true);  
      +    aThis.u.m_bool = (aThis.u.m_bool?false:true);
           return true;
         }
       
         static bool if_le(value& aThis,const value& aV,
                           std::string& aError){
           if(!if_gt(aThis,aV,aError)) return false;
      -    aThis.u.m_bool = (aThis.u.m_bool?false:true);  
      +    aThis.u.m_bool = (aThis.u.m_bool?false:true);
           return true;
         }
       
      @@ -1079,7 +1079,7 @@ protected:
           if(m_type==STRING) {
             delete u.m_string;
             u.m_string = 0;
      -  
      +
           //} else if(m_type==ARRAY_UNSIGNED_CHAR) {
           //  delete u.m_array_unsigned_char;u.m_array_unsigned_char = 0;
       
      diff --git a/source/analysis/g4tools/include/tools/value.icc b/source/analysis/g4tools/include/tools/value.icc
      index e30a16d181..ad184e2520 100644
      --- a/source/analysis/g4tools/include/tools/value.icc
      +++ b/source/analysis/g4tools/include/tools/value.icc
      @@ -10,28 +10,28 @@ inline bool value::assign(value& aThis,const value& aV,std::string& aError){
             aThis.u.m_string = new std::string(*aV.u.m_string);
       
           //} else if(aV.m_type==value::ARRAY_UNSIGNED_CHAR) {
      -    //  aThis.u.m_array_unsigned_char = 
      +    //  aThis.u.m_array_unsigned_char =
           //    new array(*aV.u.m_array_unsigned_char);
           //} else if(aV.m_type==value::ARRAY_CHAR) {
           //  aThis.u.m_array_char = new array(*aV.u.m_array_char);
       
           } else if(aV.m_type==value::ARRAY_UNSIGNED_SHORT) {
      -      aThis.u.m_array_unsigned_short = 
      +      aThis.u.m_array_unsigned_short =
               new array(*aV.u.m_array_unsigned_short);
           } else if(aV.m_type==value::ARRAY_SHORT) {
             aThis.u.m_array_short = new array(*aV.u.m_array_short);
       
           } else if(aV.m_type==value::ARRAY_UNSIGNED_INT) {
      -      aThis.u.m_array_unsigned_int = 
      +      aThis.u.m_array_unsigned_int =
               new array(*aV.u.m_array_unsigned_int);
           } else if(aV.m_type==value::ARRAY_INT) {
             aThis.u.m_array_int = new array(*aV.u.m_array_int);
       
           } else if(aV.m_type==value::ARRAY_UNSIGNED_INT64) {
      -      aThis.u.m_array_unsigned_int64 = 
      +      aThis.u.m_array_unsigned_int64 =
               new array(*aV.u.m_array_unsigned_int64);
           } else if(aV.m_type==value::ARRAY_INT64) {
      -      aThis.u.m_array_int64 = 
      +      aThis.u.m_array_int64 =
               new array(*aV.u.m_array_int64);
       
           } else if(aV.m_type==value::ARRAY_FLOAT) {
      @@ -42,7 +42,7 @@ inline bool value::assign(value& aThis,const value& aV,std::string& aError){
             aThis.u.m_array_bool = new array(*aV.u.m_array_bool);
       
           } else if(aV.m_type==value::ARRAY_STRING) {
      -      aThis.u.m_array_string = 
      +      aThis.u.m_array_string =
               new array(*aV.u.m_array_string);
       
           } else {
      @@ -313,7 +313,7 @@ inline bool value::assign(value& aThis,const value& aV,std::string& aError){
             break;
           }
           aError = std::string("value::assign :")
      -           + " unable to assign " + aV.stype() 
      +           + " unable to assign " + aV.stype()
                  + " to " + aThis.stype();
           aThis.set_none();
           return false;
      @@ -1012,7 +1012,7 @@ inline bool value::subtract(value& aThis,const value& aV,std::string& aError){
             std::vector& stdv = aThis.u.m_array_double->vector();
             const std::vector& stdv2 = aV.u.m_array_double->vector();
             size_t number = stdv.size();
      -      for(size_t index=0;index& stdv = aThis.u.m_array_double->vector();
             const std::vector& stdv2 = aV.u.m_array_double->vector();
             size_t number = stdv.size();
      -      for(size_t index=0;index& stdv2 = aV.u.m_array_double->vector();
             bool has_div_zero = false;
             size_t number = stdv.size();
      -      for(size_t index=0;index is;
      -    const std::vector& vd = 
      +    const std::vector& vd =
             aValue.get_array_unsigned_short(is);
           aThis.u.m_array_unsigned_short = new array();
           if(!aThis.u.m_array_unsigned_short->configure(is)){
      @@ -3286,7 +3286,7 @@ inline std::string value::to_string(const value& aThis){
           if(!nums2s(aThis.u.m_array_string->vector(),s)) {}
           return s;
         default:
      -    return "unknow"; //it should not happen.
      +    return "unknown"; //it should not happen.
         }
       }
       
      diff --git a/source/analysis/g4tools/include/tools/version b/source/analysis/g4tools/include/tools/version
      index e728a2b294..6a5861cb20 100644
      --- a/source/analysis/g4tools/include/tools/version
      +++ b/source/analysis/g4tools/include/tools/version
      @@ -5,13 +5,13 @@
       #define tools_version
       
       #define TOOLS_MAJOR_VERSION 5
      -#define TOOLS_MINOR_VERSION 1
      -#define TOOLS_PATCH_VERSION 0
      -#define TOOLS_VERSION "5.1.0"
      -#define TOOLS_VERSION_VRP "v5r1p0"
      +#define TOOLS_MINOR_VERSION 2
      +#define TOOLS_PATCH_VERSION 1
      +#define TOOLS_VERSION "5.2.1"
      +#define TOOLS_VERSION_VRP "v5r2p1"
       
       namespace tools {
      -inline unsigned int version() {return 50100;}
      +inline unsigned int version() {return 50201;}
       }
       
       #endif
      diff --git a/source/analysis/g4tools/include/tools/viewplot b/source/analysis/g4tools/include/tools/viewplot
      index f467016db4..3512a5eb66 100644
      --- a/source/analysis/g4tools/include/tools/viewplot
      +++ b/source/analysis/g4tools/include/tools/viewplot
      @@ -44,7 +44,7 @@ public:
           m_styles = a_from.m_styles;
           return *this;
         }
      -public: 
      +public:
       #ifdef tools_viewplot
         //deprecated, use set_current_plotter_style().
         void style_from_res(const std::string& a_path,bool a_verbose = false) {
      @@ -69,7 +69,7 @@ public:
         bool open_file(const std::string& a_file,bool a_anonymous = false) {return open_inzb_ps_file(a_file,a_anonymous);}
         bool write_page() {return write_inzb_ps_page();}
         bool close_file() {return close_inzb_ps_file();}
      -//#endif  
      +//#endif
       
       
         const xml::styles& styles() const {return m_styles;}
      diff --git a/source/analysis/g4tools/include/tools/vmanip b/source/analysis/g4tools/include/tools/vmanip
      index 1cd38f8e7c..4c8f44c4ac 100644
      --- a/source/analysis/g4tools/include/tools/vmanip
      +++ b/source/analysis/g4tools/include/tools/vmanip
      @@ -21,7 +21,7 @@ inline void safe_clear(std::vector& a_vec){
           it_t it = a_vec.begin();
           T* entry  = *it;
           a_vec.erase(it);
      -    delete entry;    
      +    delete entry;
         }
       }
       
      @@ -78,7 +78,7 @@ inline void append(std::vector& a_vec,typename std::vector::size_type a_nu
         typedef typename std::vector::size_type sz_t;
         sz_t vsize = a_vec.size();
         a_vec.resize(vsize+a_num);
      -  sz_t offset = vsize; 
      +  sz_t offset = vsize;
         for(sz_t index=0;index& a_vec,const T* a_elem) {
         for(it_t it=a_vec.begin();it!=a_vec.end();) {
           if(*it==a_elem) {
             it = a_vec.erase(it);
      -    } else { 
      +    } else {
             ++it;
           }
         }
      @@ -160,7 +160,7 @@ inline void unique(std::vector& a_vec) {
           for(;it2!=a_vec.end();) {
             if((*it2)==(*it)) {
               it2 = a_vec.erase(it2);
      -      } else { 
      +      } else {
               ++it2;
             }
           }
      @@ -199,7 +199,7 @@ inline bool belong(const std::vector& a_vec,const T& a_item){
         return false;
       }
       
      -template   
      +template 
       inline bool minimum(const std::vector& a_vec,T& a_value) {
         if(a_vec.empty()) {a_value = T();return false;}
         a_value = a_vec[0];
      @@ -210,7 +210,7 @@ inline bool minimum(const std::vector& a_vec,T& a_value) {
         return true;
       }
       
      -template   
      +template 
       inline bool maximum(const std::vector& a_vec,T& a_value) {
         if(a_vec.empty()) {a_value = T();return false;}
         a_value = a_vec[0];
      @@ -221,7 +221,7 @@ inline bool maximum(const std::vector& a_vec,T& a_value) {
         return true;
       }
       
      -template   
      +template 
       inline T sum(const std::vector& a_vec) {
         T sum = T();
         typedef typename std::vector::const_iterator it_t;
      @@ -229,7 +229,7 @@ inline T sum(const std::vector& a_vec) {
         return sum;
       }
       
      -template   
      +template 
       inline void filter(std::vector& a_vec,unsigned int a_min,unsigned int a_max){
         unsigned int imx = a_vec.size()-1;
         unsigned int mx = a_max& a_from,std::vector& a_to) {
         for(;ait!=a_from.end();++ait,++toit) {*toit = (TO)*ait;}
       }
       
      -template   
      +template 
       inline bool min_max(const std::vector& a_vec,T& a_min,T& a_max) {
         if(a_vec.empty()) {a_min=T();a_max=T();return false;}
         a_min = *(a_vec.begin());
      @@ -369,7 +369,10 @@ inline bool min_max(const std::vector& a_vec,T& a_min,T& a_max) {
         return true;
       }
       
      -template   
      +///////////////////////////////////////////////////////////////////////////////////////////////////////////////
      +/// T(*a_fabs)(T) : ///////////////////////////////////////////////////////////////////////////////////////////
      +///////////////////////////////////////////////////////////////////////////////////////////////////////////////
      +template 
       inline bool mean_rms(const std::vector& a_vec,T& a_mean,T& a_rms,T(*a_sqrt)(T),T(*a_fabs)(T)) {
         if(a_vec.empty()) {a_mean=T();a_rms=T();return false;}
         T S = T();
      @@ -384,7 +387,7 @@ inline bool mean_rms(const std::vector& a_vec,T& a_mean,T& a_rms,T(*a_sqrt)(T
         return true;
       }
       
      -template   
      +template 
       inline bool min_max_mean_rms(const std::vector& a_vec,T& a_min,T& a_max,T& a_mean,T& a_rms,
                                    T(*a_sqrt)(T),T(*a_fabs)(T)) {
         if(a_vec.empty()) {a_min=T();a_max=T();a_mean=T();a_rms=T();return false;}
      @@ -404,6 +407,44 @@ inline bool min_max_mean_rms(const std::vector& a_vec,T& a_min,T& a_max,T& a_
         return true;
       }
       
      +///////////////////////////////////////////////////////////////////////////////////////////////////////////////
      +/// T(*a_fabs)(const T&) : ///////////////////////////////////////////////////////////////////////////////////////////
      +///////////////////////////////////////////////////////////////////////////////////////////////////////////////
      +template 
      +inline bool mean_rms(const std::vector& a_vec,T& a_mean,T& a_rms,T(*a_sqrt)(const T&),T(*a_fabs)(const T&)) {
      +  if(a_vec.empty()) {a_mean=T();a_rms=T();return false;}
      +  T S = T();
      +  T S2 = T();
      +  typedef typename std::vector::const_iterator it_t;
      +  for(it_t it = a_vec.begin();it!=a_vec.end();++it) {
      +    S += *it;
      +    S2 += (*it) * (*it);
      +  }
      +  a_mean = S/T(a_vec.size());
      +  a_rms = a_sqrt(a_fabs(S2/T(a_vec.size()) - a_mean * a_mean));
      +  return true;
      +}
      +
      +template 
      +inline bool min_max_mean_rms(const std::vector& a_vec,T& a_min,T& a_max,T& a_mean,T& a_rms,
      +                             T(*a_sqrt)(const T&),T(*a_fabs)(const T&)) {
      +  if(a_vec.empty()) {a_min=T();a_max=T();a_mean=T();a_rms=T();return false;}
      +  a_min = *(a_vec.begin());
      +  a_max = a_min;
      +  T S = T();
      +  T S2 = T();
      +  typedef typename std::vector::const_iterator it_t;
      +  for(it_t it = a_vec.begin();it!=a_vec.end();++it) {
      +    a_min = *ita_max?*it:a_max;
      +    S += *it;
      +    S2 += (*it) * (*it);
      +  }
      +  a_mean = S/T(a_vec.size());
      +  a_rms = a_sqrt(a_fabs(S2/T(a_vec.size()) - a_mean * a_mean));
      +  return true;
      +}
      +
       }
       
       ///////////////////////////////////////////////////////////
      diff --git a/source/analysis/g4tools/include/tools/vpair b/source/analysis/g4tools/include/tools/vpair
      index f520ff8111..b699f04061 100644
      --- a/source/analysis/g4tools/include/tools/vpair
      +++ b/source/analysis/g4tools/include/tools/vpair
      @@ -122,7 +122,7 @@ inline bool remove(std::vector< std::pair >& a_vec,const K& a_key,bool a_de
         it_t it;
         for(it=a_vec.begin();it!=a_vec.end();++it) {
           if((*it).first==a_key) {
      -      V val = (*it).second;      
      +      V val = (*it).second;
             a_vec.erase(it);
             if(a_delete) delete val;
             return true;
      diff --git a/source/analysis/g4tools/include/tools/waxml/begend b/source/analysis/g4tools/include/tools/waxml/begend
      index 20e269478b..8a7309b127 100644
      --- a/source/analysis/g4tools/include/tools/waxml/begend
      +++ b/source/analysis/g4tools/include/tools/waxml/begend
      @@ -23,8 +23,8 @@ namespace waxml {
       
           a_writer << ""
                    << std::endl;
      -    a_writer << "  " 
      +    a_writer << "  "
                    << std::endl;
         }
       
      diff --git a/source/analysis/g4tools/include/tools/waxml/histos b/source/analysis/g4tools/include/tools/waxml/histos
      index e4fd8f5a72..f8b8ea52f2 100644
      --- a/source/analysis/g4tools/include/tools/waxml/histos
      +++ b/source/analysis/g4tools/include/tools/waxml/histos
      @@ -39,7 +39,7 @@ namespace waxml {
             return a_oss.str();
           }
         }
      -  
      +
         typedef std::map annotations_t;
       
         inline void write_annotations(
      @@ -51,7 +51,7 @@ namespace waxml {
       
           std::string spaces;
           for(int i=0;i" << std::endl;
       
           annotations_t::const_iterator it;
      @@ -63,7 +63,7 @@ namespace waxml {
           }
           a_writer << spaces << "    " << std::endl;
         }
      -  
      +
         inline void write_axis(
          const histo::axis& aAxis
         ,const std::string& aDirection
      @@ -75,17 +75,17 @@ namespace waxml {
       
           std::string spaces;
           for(int i=0;i" << std::endl;
           } else {
             a_writer << spaces << "    " << std::endl;
           }
         }
      -  
      +
         inline void write_bin(
          std::ostream& a_writer
         ,std::ostringstream& a_oss
      @@ -114,21 +114,21 @@ namespace waxml {
                  << " entries=" << num_out(entries)
                  << " height=" << soutd(a_oss,aObject.bin_height(aIndex))
                  << " error=" << soutd(a_oss,aObject.bin_error(aIndex));
      -  
      +
             double mean = aObject.bin_mean(aIndex);
             if(mean!=0) {
               a_writer << " weightedMean=" << soutd(a_oss,mean);
             }
      -  
      +
             double stddev = aObject.bin_rms(aIndex);
             if(stddev!=0) {
               a_writer << " weightedRms=" << soutd(a_oss,stddev);
             }
      -  
      +
             a_writer << "/>" << std::endl;
           }
         }
      -  
      +
         inline void write_bin(
          std::ostream& a_writer
         ,std::ostringstream& a_oss
      @@ -145,7 +145,7 @@ namespace waxml {
                  << " entries=" << num_out(entries)
                  << " height=" << soutd(a_oss,aObject.bin_height(aIndexX,aIndexY))
                  << " error=" << soutd(a_oss,aObject.bin_error(aIndexX,aIndexY));
      -  
      +
             double mean_x = aObject.bin_mean_x(aIndexX,aIndexY);
             if(mean_x!=0) {
               a_writer << " weightedMeanX=" << soutd(a_oss,mean_x);
      @@ -154,7 +154,7 @@ namespace waxml {
             if(mean_y!=0) {
               a_writer << " weightedMeanY=" << soutd(a_oss,mean_y);
             }
      -  
      +
             double stddevX = aObject.bin_rms_x(aIndexX,aIndexY);
             if(stddevX!=0) {
               a_writer << " weightedRmsX=" << soutd(a_oss,stddevX);
      @@ -163,11 +163,11 @@ namespace waxml {
             if(stddevY!=0) {
               a_writer << " weightedRmsY=" << soutd(a_oss,stddevY);
             }
      -  
      +
             a_writer << "/>" << std::endl;
           }
         }
      -  
      +
         inline void write_bin(
          std::ostream& a_writer
         ,std::ostringstream& a_oss
      @@ -186,8 +186,8 @@ namespace waxml {
                  << " entries=" << num_out(entries)
                  << " height=" << soutd(a_oss,aObject.bin_height(aIndexX,aIndexY,aIndexZ))
                  << " error=" << soutd(a_oss,aObject.bin_error(aIndexX,aIndexY,aIndexZ));
      -  
      -  
      +
      +
             double mean_x = aObject.bin_mean_x(aIndexX,aIndexY,aIndexZ);
             if(mean_x!=0) {
               a_writer << " weightedMeanX=" << soutd(a_oss,mean_x);
      @@ -200,7 +200,7 @@ namespace waxml {
             if(mean_y!=0) {
               a_writer << " weightedMeanZ=" << soutd(a_oss,mean_z);
             }
      -  
      +
             double stddevX = aObject.bin_rms_x(aIndexX,aIndexY,aIndexZ);
             if(stddevX!=0) {
               a_writer << " weightedRmsX=" << soutd(a_oss,stddevX);
      @@ -213,11 +213,11 @@ namespace waxml {
             if(stddevZ!=0) {
               a_writer << " weightedRmsZ=" << soutd(a_oss,stddevZ);
             }
      -  
      +
             a_writer << "/>" << std::endl;
           }
         }
      -  
      +
         inline void write_bin(
          std::ostream& a_writer
         ,std::ostringstream& a_oss
      @@ -232,17 +232,17 @@ namespace waxml {
                  << " height=" << soutd(a_oss,aObject.bin_height(aIndex))
                  << " error=" << soutd(a_oss,aObject.bin_error(aIndex))
                  << " weightedMean=" << soutd(a_oss,aObject.bin_mean(aIndex));
      -  
      +
             double stddev = aObject.bin_rms(aIndex);
             if(stddev!=0) {
               a_writer << " weightedRms=" << soutd(a_oss,stddev);
             }
      -  
      +
             a_writer << " rms=" << soutd(a_oss,aObject.bin_rms_value(aIndex));
             a_writer << "/>" << std::endl;
           }
         }
      -  
      +
         inline void write_bin(
          std::ostream& a_writer
         ,std::ostringstream& a_oss
      @@ -260,7 +260,7 @@ namespace waxml {
                  << " error=" << soutd(a_oss,aObject.bin_error(aIndexX,aIndexY))
                  << " weightedMeanX=" << soutd(a_oss,aObject.bin_mean_x(aIndexX,aIndexY))
                  << " weightedMeanY=" << soutd(a_oss,aObject.bin_mean_y(aIndexX,aIndexY));
      -  
      +
             double stddevX = aObject.bin_rms_x(aIndexX,aIndexY);
             if(stddevX!=0) {
               a_writer << " weightedRmsX=" << soutd(a_oss,stddevX);
      @@ -269,7 +269,7 @@ namespace waxml {
             if(stddevY!=0) {
               a_writer << " weightedRmsY=" << soutd(a_oss,stddevY);
             }
      -  
      +
             a_writer << " rms=" << soutd(a_oss,aObject.bin_rms_value(aIndexX,aIndexY));
             a_writer << "/>" << std::endl;
           }
      @@ -288,50 +288,50 @@ namespace waxml {
           typedef histo::axis::bn_t bn_t;
       
           std::ostream& writer = a_writer;
      -  
      +
           std::string spaces;
           for(int i=0;i :
           writer << spaces << "  " << std::endl;
      -  
      +
           //  :
           write_annotations(aObject.annotations(),writer,aShift);
      -  
      +
           //  :
           write_axis(aObject.axis(),"x",writer,ossd,aShift);
      -  
      -    //  : 
      +
      +    //  :
           writer << spaces << "    " << std::endl;
           writer << spaces << "      " << std::endl;
           writer << spaces << "    " << std::endl;
      -    
      +
           // bins :
           writer << spaces << "    " << std::endl;
      -  
      +
           bn_t xbins = aObject.axis().bins();
           for(bn_t index=0;index" << std::endl;
           writer << spaces << "  " << std::endl;
      -  
      -    return true;  
      +
      +    return true;
         }
      -  
      +
         inline bool write(
          std::ostream& a_writer
         ,const histo::h2d& aObject
      @@ -345,7 +345,7 @@ namespace waxml {
           typedef histo::axis::bn_t bn_t;
       
           std::ostream& writer = a_writer;
      -  
      +
           std::string spaces;
           for(int i=0;i" << std::endl;
      -  
      +
           //  :
           write_annotations(aObject.annotations(),writer,aShift);
      -  
      +
           //  :
           write_axis(aObject.axis_x(),"x",writer,ossd,aShift);
           write_axis(aObject.axis_y(),"y",writer,ossd,aShift);
       
      -    //  : 
      +    //  :
           writer << spaces << "    " << std::endl;
           writer << spaces << "      " << std::endl;
           writer << spaces << "      " << std::endl;
           writer << spaces << "    " << std::endl;
      -    
      +
           // bins :
           writer << spaces << "    " << std::endl;
      -  
      +
           bn_t xbins = aObject.axis_x().bins();
           bn_t ybins = aObject.axis_y().bins();
           bn_t indexX,indexY;
      @@ -390,28 +390,28 @@ namespace waxml {
               write_bin(writer,ossd,aObject,spaces,indexX,indexY);
             }
           }
      -    
      +
           write_bin(writer,ossd,aObject,spaces,histo::axis_UNDERFLOW_BIN,histo::axis_UNDERFLOW_BIN);
           write_bin(writer,ossd,aObject,spaces,histo::axis_OVERFLOW_BIN,histo::axis_UNDERFLOW_BIN);
           write_bin(writer,ossd,aObject,spaces,histo::axis_UNDERFLOW_BIN,histo::axis_OVERFLOW_BIN);
           write_bin(writer,ossd,aObject,spaces,histo::axis_OVERFLOW_BIN,histo::axis_OVERFLOW_BIN);
      -  
      +
           for(indexX=0;indexX" << std::endl;
           writer << spaces << "  " << std::endl;
      -  
      +
           return true;
         }
      -  
      +
         inline bool write(
          std::ostream& a_writer
         ,const histo::h3d& aObject
      @@ -424,17 +424,17 @@ namespace waxml {
       
           typedef histo::axis::bn_t bn_t;
           std::ostream& writer = a_writer;
      -  
      +
           std::string spaces;
           for(int i=0;i :
           writer << spaces << "  " << std::endl;
      -  
      +
           //  :
           write_annotations(aObject.annotations(),writer,aShift);
       
      @@ -442,8 +442,8 @@ namespace waxml {
           write_axis(aObject.axis_x(),"x",writer,ossd,aShift);
           write_axis(aObject.axis_y(),"y",writer,ossd,aShift);
           write_axis(aObject.axis_z(),"z",writer,ossd,aShift);
      -  
      -    //  : 
      +
      +    //  :
           writer << spaces << "    " << std::endl;
      @@ -463,7 +463,7 @@ namespace waxml {
                << " rms=" << soutd(ossd,aObject.rms_z())
                << "/>" << std::endl;
           writer << spaces << "    " << std::endl;
      -    
      +
           // bins :
           writer << spaces << "    " << std::endl;
           bn_t xbins = aObject.axis_x().bins();
      @@ -477,7 +477,7 @@ namespace waxml {
               }
             }
           }
      -  
      +
           // Corners :
           write_bin(writer,ossd,aObject,spaces,
                             histo::axis_UNDERFLOW_BIN,
      @@ -495,7 +495,7 @@ namespace waxml {
                             histo::axis_OVERFLOW_BIN,
                             histo::axis_OVERFLOW_BIN,
                             histo::axis_UNDERFLOW_BIN);
      -    
      +
           write_bin(writer,ossd,aObject,spaces,
                             histo::axis_UNDERFLOW_BIN,
                             histo::axis_UNDERFLOW_BIN,
      @@ -512,8 +512,8 @@ namespace waxml {
                             histo::axis_OVERFLOW_BIN,
                             histo::axis_OVERFLOW_BIN,
                             histo::axis_OVERFLOW_BIN);
      -  
      -  
      +
      +
           // Edges :
           for(indexX=0;indexX" << std::endl;
           writer << spaces << "  " << std::endl;
      -  
      +
           return true;
         }
      -  
      +
         inline bool write(
          std::ostream& a_writer
         ,const histo::p1d& aObject
      @@ -617,50 +617,50 @@ namespace waxml {
       
           typedef histo::axis::bn_t bn_t;
           std::ostream& writer = a_writer;
      -  
      +
           std::string spaces;
           for(int i=0;i :
           writer << spaces << "  " << std::endl;
      -  
      +
           //  :
           write_annotations(aObject.annotations(),writer,aShift);
       
           //  :
           write_axis(aObject.axis(),"x",writer,ossd,aShift);
      -  
      -    //  : 
      +
      +    //  :
           writer << spaces << "    " << std::endl;
           writer << spaces << "      " << std::endl;
           writer << spaces << "    " << std::endl;
      -          
      +
           // bins :
           writer << spaces << "    " << std::endl;
           bn_t xbins = aObject.axis().bins();
           for(bn_t index=0;index" << std::endl;
           writer << spaces << "  " << std::endl;
      -  
      +
           return true;
         }
      -  
      +
         inline bool write(
          std::ostream& a_writer
         ,const histo::p2d& aObject
      @@ -673,25 +673,25 @@ namespace waxml {
       
           typedef histo::axis::bn_t bn_t;
           std::ostream& writer = a_writer;
      -  
      +
           std::string spaces;
           for(int i=0;i :
           writer << spaces << "  " << std::endl;
      -  
      +
           //  :
           write_annotations(aObject.annotations(),writer,aShift);
       
           //  :
           write_axis(aObject.axis_x(),"x",writer,ossd,aShift);
           write_axis(aObject.axis_y(),"y",writer,ossd,aShift);
      -    
      -    //  : 
      +
      +    //  :
           writer << spaces << "    " << std::endl;
      @@ -706,7 +706,7 @@ namespace waxml {
                << " rms=" << soutd(ossd,aObject.rms_y())
                << "/>" << std::endl;
           writer << spaces << "    " << std::endl;
      -    
      +
           // bins :
           writer << spaces << "    " << std::endl;
          {bn_t xbins = aObject.axis_x().bins();
      @@ -716,7 +716,7 @@ namespace waxml {
               write_bin(writer,ossd,aObject,spaces,indexX,indexY);
             }
           }}
      -    
      +
           write_bin(writer,ossd,aObject,spaces,
                             histo::axis_UNDERFLOW_BIN,histo::axis_UNDERFLOW_BIN);
           write_bin(writer,ossd,aObject,spaces,
      @@ -725,23 +725,23 @@ namespace waxml {
                             histo::axis_UNDERFLOW_BIN,histo::axis_OVERFLOW_BIN);
           write_bin(writer,ossd,aObject,spaces,
                             histo::axis_OVERFLOW_BIN,histo::axis_OVERFLOW_BIN);
      -  
      +
           for(bn_t indexX=0;indexX" << std::endl;
           writer << spaces << "  " << std::endl;
      -  
      +
           return true;
         }
      -    
      +
       }}
       
       #endif
      diff --git a/source/analysis/g4tools/include/tools/waxml/ntuple b/source/analysis/g4tools/include/tools/waxml/ntuple
      index 764d063e6f..7d19ffb697 100644
      --- a/source/analysis/g4tools/include/tools/waxml/ntuple
      +++ b/source/analysis/g4tools/include/tools/waxml/ntuple
      @@ -57,7 +57,7 @@ protected:
           leaf(const leaf& a_from):iobj(a_from){}
           leaf& operator=(const leaf&){return *this;}
         };
      -  
      +
         static const std::string& s_aida_type(int) {
           static const std::string s_v("int");
           return s_v;
      @@ -105,7 +105,7 @@ public:
         protected:
           column(const column& a_from)
           :leaf(a_from)
      -    ,m_name(a_from.m_name) 
      +    ,m_name(a_from.m_name)
           ,m_def(a_from.m_def)
           ,m_tmp(a_from.m_tmp)
           {}
      @@ -188,7 +188,7 @@ public:
               } else if(leaf* lf = id_cast(*(*it))){
                 std::string _sv;
                 lf->s_value(_sv);
      -          sout << m_spaces << "  " << std::endl;
               }
      @@ -241,7 +241,7 @@ public:
         protected:
           std_vector_column(const std_vector_column& a_from)
           :leaf(a_from)
      -    ,m_name(a_from.m_name) 
      +    ,m_name(a_from.m_name)
           ,m_user_vec(a_from.m_user_vec)
           ,m_spaces(a_from.m_spaces)
           {}
      @@ -259,7 +259,7 @@ public:
       
         static leaf* is_std_vector_column(iobj& a_obj) {
           //200+20+id(basic type) ?
      -    int _id = (int)a_obj.id_cls()-220;    
      +    int _id = (int)a_obj.id_cls()-220;
           if((_id<=0)||(_id>=20)) return 0;
           return id_cast(a_obj);
         }
      @@ -333,7 +333,7 @@ public:
               //throw
               safe_clear(m_cols);
               return;
      -      }      
      +      }
           }
         }
         virtual ~ntuple() {
      @@ -403,7 +403,7 @@ public:
           tools_vforcit(iobj*,m_cols,it) {
             if(leaf* vlf = is_std_vector_column(*(*it))) {
               m_writer << m_spaces << "      aida_type() << " " << to_xml((*it)->name())
                        << "}\""
      @@ -424,7 +424,7 @@ public:
           }
       
           m_writer << m_spaces << "    " << std::endl;
      -  
      +
           // rows :
           m_writer << m_spaces << "    " << std::endl;
         }
      @@ -445,7 +445,7 @@ public:
             } else if(leaf* lf = id_cast(*(*it))){
               std::string _sv;
               lf->s_value(_sv);
      -        m_writer << m_spaces << "        " << std::endl;
             }
      @@ -485,8 +485,8 @@ protected:
               get_booking(sub->columns(),a_xml_esc,a_string);
             } else if(leaf* lf = id_cast(*(*it))){
               a_string += (*it)->aida_type() + " " + sname + " = " + lf->s_def();
      -      }  
      -    }  
      +      }
      +    }
           a_string += "}";
         }
       
      diff --git a/source/analysis/g4tools/include/tools/wcsv_histo b/source/analysis/g4tools/include/tools/wcsv_histo
      index cd9f452e37..ebafe6e0af 100644
      --- a/source/analysis/g4tools/include/tools/wcsv_histo
      +++ b/source/analysis/g4tools/include/tools/wcsv_histo
      @@ -148,7 +148,7 @@ inline bool pto(std::ostream& a_writer,const std::string& a_class,const PROF& a_
             a_writer << a_sep << _bin_Sxw[i][iaxis] << a_sep << _bin_Sx2w[i][iaxis];
           }
           a_writer << std::endl;
      -  }  
      +  }
       
         return true;
       }
      diff --git a/source/analysis/g4tools/include/tools/wcsv_ntuple b/source/analysis/g4tools/include/tools/wcsv_ntuple
      index 652c761997..02600bb2a6 100644
      --- a/source/analysis/g4tools/include/tools/wcsv_ntuple
      +++ b/source/analysis/g4tools/include/tools/wcsv_ntuple
      @@ -37,7 +37,7 @@ public:
           virtual void add() = 0;
           virtual const std::string& name() const = 0;
         };
      -  
      +
       public:
         template 
         class column_ref : public virtual icol {
      @@ -65,7 +65,7 @@ public:
           column_ref(const column_ref& a_from)
           :icol(a_from)
           ,m_writer(a_from.m_writer)
      -    ,m_name(a_from.m_name) 
      +    ,m_name(a_from.m_name)
           ,m_ref(a_from.m_ref)
           {}
           column_ref& operator=(const column_ref& a_from){
      @@ -166,7 +166,7 @@ public:
           std_vector_column(const std_vector_column& a_from)
           :icol(a_from)
           ,m_writer(a_from.m_writer)
      -    ,m_name(a_from.m_name) 
      +    ,m_name(a_from.m_name)
           ,m_ref(a_from.m_ref)
           ,m_vec_sep(a_from.m_vec_sep)
           {}
      @@ -243,15 +243,15 @@ public:
             else TOOLS_WCSV_NTUPLE_CREATE_COL(short)
             else TOOLS_WCSV_NTUPLE_CREATE_COL(int)
             else TOOLS_WCSV_NTUPLE_CREATE_COL(int64)
      -      
      +
             else TOOLS_WCSV_NTUPLE_CREATE_COL(float)
             else TOOLS_WCSV_NTUPLE_CREATE_COL(double)
      -      
      -      else TOOLS_WCSV_NTUPLE_CREATE_COL(byte)      
      +
      +      else TOOLS_WCSV_NTUPLE_CREATE_COL(byte)
             else TOOLS_WCSV_NTUPLE_CREATE_COL(ushort)
             else TOOLS_WCSV_NTUPLE_CREATE_COL(uint32)
             else TOOLS_WCSV_NTUPLE_CREATE_COL(uint64)
      -      
      +
             else TOOLS_WCSV_NTUPLE_CREATE_COL(bool)
             else TOOLS_WCSV_NTUPLE_CREATE_COL(std::string)
       
      @@ -259,10 +259,10 @@ public:
             else TOOLS_WCSV_NTUPLE_CREATE_VEC_COL(short)
             else TOOLS_WCSV_NTUPLE_CREATE_VEC_COL(int)
             else TOOLS_WCSV_NTUPLE_CREATE_VEC_COL(int64)
      -      
      +
             else TOOLS_WCSV_NTUPLE_CREATE_VEC_COL(float)
             else TOOLS_WCSV_NTUPLE_CREATE_VEC_COL(double)
      -      
      +
             else TOOLS_WCSV_NTUPLE_CREATE_VEC_COL(uchar)
             else TOOLS_WCSV_NTUPLE_CREATE_VEC_COL(ushort)
             else TOOLS_WCSV_NTUPLE_CREATE_VEC_COL(uint32)
      @@ -270,7 +270,7 @@ public:
       
             else TOOLS_WCSV_NTUPLE_CREATE_VEC_COL(std::string)
             else TOOLS_WCSV_NTUPLE_CREATE_VEC_COL(bool)
      -      
      +
       #undef TOOLS_WCSV_NTUPLE_CREATE_VEC_COL
       #undef TOOLS_WCSV_NTUPLE_CREATE_COL
       
      @@ -282,7 +282,7 @@ public:
               //throw
               safe_clear(m_cols);
               return;
      -      }      
      +      }
           }
         }
       
      @@ -325,7 +325,7 @@ public:
              std::string sid;
              if(!cid2s(_col->id_cls(),sid)) {
                a_out << "tools::wcsv::ntuple::write_commented_header :"
      -               << " unknow column type id " << _col->id_cls() << std::endl;
      +               << " unknown column type id " << _col->id_cls() << std::endl;
                status = false; //but we continue.
              } else {
                m_writer << "#column " << sid << " " << _col->name() << std::endl;
      diff --git a/source/analysis/g4tools/include/tools/words b/source/analysis/g4tools/include/tools/words
      index 01cd221117..68efd33036 100644
      --- a/source/analysis/g4tools/include/tools/words
      +++ b/source/analysis/g4tools/include/tools/words
      @@ -12,7 +12,7 @@ namespace tools {
       inline void words(const std::string& a_string,const std::string& a_sep,bool a_take_empty,
                         std::vector& a_words,bool a_clear = true){
         //  If a_sep is for exa "|" and for "xxx||xxx" :
      -  //  - a_take_empty false : {"xxx","xxx"} will be created 
      +  //  - a_take_empty false : {"xxx","xxx"} will be created
         //    (and NOT {"xxx","","xxx"}).
         //  - a_take_empty true : {"xxx","","xxx"} will be created.
         if(a_clear) a_words.clear();
      diff --git a/source/analysis/g4tools/include/tools/wps b/source/analysis/g4tools/include/tools/wps
      index 4f99adbb70..7254ce9f77 100644
      --- a/source/analysis/g4tools/include/tools/wps
      +++ b/source/analysis/g4tools/include/tools/wps
      @@ -37,7 +37,7 @@ public:
           //m_param.shade = shade_color;
         }
       
      -  virtual ~wps(){    
      +  virtual ~wps(){
           if(m_file) close_file();
           m_string.clear();
           if(m_gsave) {
      @@ -59,7 +59,7 @@ public:
         bool open_file(const std::string& a_name,bool a_anonymous = false){
           if(m_file) return false;
       
      -    m_file = ::fopen(a_name.c_str(),"wb");    
      +    m_file = ::fopen(a_name.c_str(),"wb");
           if(!m_file) return false;
           m_fname = a_name;
       
      @@ -139,14 +139,14 @@ public:
       
           PS_SCALE(1/METAFILE_SCALE(),1/METAFILE_SCALE());
           PS_TRANSLATE(m_deviceWidth/20,m_deviceHeight/30);
      -  
      +
           float scale;
           if(m_deviceWidth<=m_deviceHeight) {
             scale = (a_height<=a_width?m_deviceWidth/a_width:m_deviceWidth/a_height);
           } else {
             scale = (a_height<=a_width?m_deviceHeight/a_width:m_deviceHeight/a_height);
           }
      -  
      +
          {float xtra,ytra;
           if(a_portrait) {
             xtra = (m_deviceWidth  - scale * a_width)/2;
      @@ -158,7 +158,7 @@ public:
             ytra = (m_deviceWidth  - scale * a_height)/2;
           }
           PS_TRANSLATE(xtra,ytra);}
      -  
      +
           PS_SCALE(scale,scale);
         }
       
      @@ -202,12 +202,12 @@ public:
           Uchar  red,green,blue,b;
       
           PS_SAVE();
      -    in_buffer("%d %d scale ", a_width, a_height ); 
      +    in_buffer("%d %d scale ", a_width, a_height );
           bool status = true;
           if(a_nbit==rgb_bw) { //grey or black_white
      -      in_buffer   ("/picstr %d string def ",a_width); 
      -      in_buffer   ("%d %d %d ",a_width,a_height,8); 
      -      in_buffer   ("[ %d 0 0 -%d 0 %d ] ",a_width,a_height,a_height); 
      +      in_buffer   ("/picstr %d string def ",a_width);
      +      in_buffer   ("%d %d %d ",a_width,a_height,8);
      +      in_buffer   ("[ %d 0 0 -%d 0 %d ] ",a_width,a_height,a_height);
             in_buffer   ("{ currentfile picstr readhexstring pop } " );
             PrintFLN ("image " );
             for ( row = 0; row < a_height; row++ ) {
      @@ -218,12 +218,12 @@ public:
                 WriteByte(grey);
               }
             }
      -      int nbhex = a_width * a_height * 2; 
      -      PrintFLN ("%%%% nbhex digit          :%d ",nbhex); 
      +      int nbhex = a_width * a_height * 2;
      +      PrintFLN ("%%%% nbhex digit          :%d ",nbhex);
             PrintFLN ("%%%% nbhex/record_length  :%d ",
      -                int(nbhex/METAFILE_RECORD_LENGTH())); 
      +                int(nbhex/METAFILE_RECORD_LENGTH()));
             PrintFLN ("%%%% nbhex%%record_length :%d ",
      -                int(nbhex%METAFILE_RECORD_LENGTH())); 
      +                int(nbhex%METAFILE_RECORD_LENGTH()));
       
           } else if(a_nbit==rgb_2) {
             int nbyte2 = (a_width   *  3)/4;
      @@ -232,9 +232,9 @@ public:
             Uint col_max = (nbyte2  *  4)/3;
             // 2 bit for r and g and b.
             // rgbs following each other.
      -      in_buffer   ("/rgbstr %d string def ",nbyte2); 
      -      in_buffer   ("%d %d %d ",col_max,a_height,2); 
      -      in_buffer   ("[ %d 0 0 -%d 0 %d ] ",col_max,a_height,a_height); 
      +      in_buffer   ("/rgbstr %d string def ",nbyte2);
      +      in_buffer   ("%d %d %d ",col_max,a_height,2);
      +      in_buffer   ("[ %d 0 0 -%d 0 %d ] ",col_max,a_height,a_height);
             in_buffer   ("{ currentfile rgbstr readhexstring pop } " );
             in_buffer   ("false 3 " );
             PrintFLN ("colorimage " );
      @@ -285,9 +285,9 @@ public:
             Uint col_max = (nbyte4 * 2)/3;
             // 4 bit for r and g and b.
             // rgbs following each other.
      -      in_buffer   ("/rgbstr %d string def ",nbyte4); 
      -      in_buffer   ("%d %d %d ",col_max,a_height,4); 
      -      in_buffer   ("[ %d 0 0 -%d 0 %d ] ",col_max,a_height,a_height); 
      +      in_buffer   ("/rgbstr %d string def ",nbyte4);
      +      in_buffer   ("%d %d %d ",col_max,a_height,4);
      +      in_buffer   ("[ %d 0 0 -%d 0 %d ] ",col_max,a_height,a_height);
             in_buffer   ("{ currentfile rgbstr readhexstring pop } " );
             in_buffer   ("false 3 " );
             PrintFLN ("colorimage " );
      @@ -311,9 +311,9 @@ public:
           } else if(a_nbit==rgb_8) {
             int nbyte8 = a_width   * 3;
             // 8 bit for r and g and b.
      -      in_buffer   ("/rgbstr %d string def ",nbyte8); 
      -      in_buffer   ("%d %d %d ",a_width,a_height,8); 
      -      in_buffer   ("[ %d 0 0 -%d 0 %d ] ",a_width,a_height,a_height); 
      +      in_buffer   ("/rgbstr %d string def ",nbyte8);
      +      in_buffer   ("%d %d %d ",a_width,a_height,8);
      +      in_buffer   ("[ %d 0 0 -%d 0 %d ] ",a_width,a_height,a_height);
             in_buffer   ("{ currentfile rgbstr readhexstring pop } " );
             in_buffer   ("false 3 " );
             PrintFLN   ("colorimage " );
      @@ -335,13 +335,13 @@ public:
           }
           if(!status) {
             m_out << "PS_IMAGE :"
      -            << " problem to retreive some pixel rgb."
      +            << " problem to retrieve some pixel rgb."
                   << std::endl;
           }
           PS_RESTORE();
         }
       
      -protected:  
      +protected:
         static size_t METAFILE_RECORD_LENGTH() {return 80;}
       
         static float METAFILE_SCALE() {return 1.0f;}
      @@ -374,7 +374,7 @@ protected:
             m_out << "tools::wps::in_buffer : overflow." << std::endl;
             return false;
           }
      -  
      +
           size_t nlength = m_number + length;
           if(nlength>METAFILE_RECORD_LENGTH()) {
             m_buffer[m_number] = '\0';
      @@ -453,7 +453,7 @@ protected:
         void PS_BACKGROUND(double a_r,double a_g,double a_b,
                            double a_width,double a_height,
                            bool a_do_back = true){
      -    PS_NEWPATH(); 
      +    PS_NEWPATH();
           PS_MOVE       (0.,0.);
           PS_RLINETO    (a_width,0.);
           PS_RLINETO    (0.,a_height);
      diff --git a/source/analysis/g4tools/include/tools/wroot/base_pntuple b/source/analysis/g4tools/include/tools/wroot/base_pntuple
      index d2636c1d6f..b5ee42822d 100644
      --- a/source/analysis/g4tools/include/tools/wroot/base_pntuple
      +++ b/source/analysis/g4tools/include/tools/wroot/base_pntuple
      @@ -24,7 +24,7 @@ class base_pntuple {
           static const std::string s_v("tools::wroot::base_pntuple");
           return s_v;
         }
      -#endif  
      +#endif
       public:
       
       #include "columns.icc"
      @@ -56,7 +56,7 @@ protected:
         base_pntuple& operator=(const base_pntuple&){return *this;}
       public:
         const std::vector& columns() const {return m_cols;}
      -  
      +
         template 
         column_ref* find_column_ref(const std::string& a_name) {
           icol* col = find_named(m_cols,a_name);
      @@ -123,7 +123,7 @@ protected:
         seek m_seek_directory;
         std::string m_name;
         std::string m_title;
      -  std::vector m_cols;  
      +  std::vector m_cols;
       };
       
       }}
      diff --git a/source/analysis/g4tools/include/tools/wroot/base_pntuple_column_wise b/source/analysis/g4tools/include/tools/wroot/base_pntuple_column_wise
      index 79992915a8..489e334356 100644
      --- a/source/analysis/g4tools/include/tools/wroot/base_pntuple_column_wise
      +++ b/source/analysis/g4tools/include/tools/wroot/base_pntuple_column_wise
      @@ -62,16 +62,16 @@ public:
         ,m_file(a_out,a_byte_swap,a_compression,a_verbose)
         {
           const std::vector& cols = a_bkg.columns();
      -    
      +
           if(a_basket_sizes.size()!=cols.size()) {
             a_out << "tools::wroot::base_pntuple_column_wise :"
                   << " a_basket_sizes.size() (" << a_basket_sizes.size() << ") != "
                   << "a_bkg.columns().size() (" << a_bkg.columns().size() << ")."
                   << std::endl;
      -      return;	  
      +      return;
           }
           std::vector::const_iterator itb = a_basket_sizes.begin();
      -    
      +
           tools_vforcit(column_booking,cols,it){
       
       #define TOOLS_WROOT_PNTUPLE_CREATE_COL(a__type) \
      @@ -95,7 +95,7 @@ public:
       	  itb++;\
               }\
             }
      -	
      +
       #define TOOLS_WROOT_PNTUPLE_CREATE_VEC_COL(a__type) \
             if((*it).cls_id()==_cid_std_vector()) {\
               std::vector* vec = (std::vector*)(*it).user_obj();\
      @@ -121,13 +121,13 @@ public:
       	  itb++;\
               }\
             }
      -      
      +
                  TOOLS_WROOT_PNTUPLE_CREATE_COL(char)
             else TOOLS_WROOT_PNTUPLE_CREATE_COL(short)
             else TOOLS_WROOT_PNTUPLE_CREATE_COL(int)
             else TOOLS_WROOT_PNTUPLE_CREATE_COL(float)
             else TOOLS_WROOT_PNTUPLE_CREATE_COL(double)
      -      
      +
             else if((*it).cls_id()==_cid(std::string())) {
               std::string* user = (std::string*)(*it).user_obj();
               if(user) {
      @@ -155,7 +155,7 @@ public:
             else TOOLS_WROOT_PNTUPLE_CREATE_VEC_COL(int)
             else TOOLS_WROOT_PNTUPLE_CREATE_VEC_COL(float)
             else TOOLS_WROOT_PNTUPLE_CREATE_VEC_COL(double)
      -      
      +
             else if((*it).cls_id()==_cid_std_vector()) {\
               std::vector* user = (std::vector*)(*it).user_obj();
               char sep = '\n';
      @@ -181,7 +181,7 @@ public:
             }
       
             // no leaf_store_class() defined for the other types.
      -      
      +
             else {
               a_out << "tools::wroot::base_pntuple_column_wise :"
                     << " for column " << sout((*it).name())
      @@ -191,7 +191,7 @@ public:
               safe_clear(m_cols);
               safe_clear(m_branches);
               return;
      -      }      
      +      }
       
       #undef TOOLS_WROOT_PNTUPLE_CREATE_COL
       #undef TOOLS_WROOT_PNTUPLE_CREATE_VEC_COL
      @@ -295,7 +295,7 @@ public:
           m_cols.push_back(col);
           return col;
         }
      -  
      +
         template 
         std_vector_column* create_column_vector(uint32 a_basket_size,const std::string& a_name,const std::vector& a_def = std::vector()) {
           if(find_named(m_cols,a_name)) return 0;
      diff --git a/source/analysis/g4tools/include/tools/wroot/base_pntuple_row_wise b/source/analysis/g4tools/include/tools/wroot/base_pntuple_row_wise
      index ed92b290b6..4f85cedb65 100644
      --- a/source/analysis/g4tools/include/tools/wroot/base_pntuple_row_wise
      +++ b/source/analysis/g4tools/include/tools/wroot/base_pntuple_row_wise
      @@ -28,7 +28,7 @@ public:
         {
           m_row_wise_branch.set_basket_size(a_basket_size);
         }
      -  
      +
         base_pntuple_row_wise(std::ostream& a_out,bool a_byte_swap,uint32 a_compression,seek a_seek_directory,
                               uint32 a_basket_size,
       	                const ntuple_booking& a_bkg,bool a_verbose)
      @@ -36,9 +36,9 @@ public:
         ,m_row_wise_branch(a_out,a_byte_swap,a_compression,a_seek_directory,"row_wise_branch","row_wise_branch",a_verbose)
         {
           m_row_wise_branch.set_basket_size(a_basket_size);
      -    
      +
           const std::vector& cols = a_bkg.columns();
      -    
      +
           tools_vforcit(column_booking,cols,it){
       
       #define TOOLS_WROOT_PNTUPLE_CREATE_COL(a__type) \
      @@ -58,7 +58,7 @@ public:
       	  }\
               }\
             }
      -	
      +
       #define TOOLS_WROOT_PNTUPLE_CREATE_VEC_COL(a__type) \
             if((*it).cls_id()==_cid_std_vector()) {\
               std::vector* vec = (std::vector*)(*it).user_obj();\
      @@ -80,13 +80,13 @@ public:
       	  }\
               }\
             }
      -	
      +
                  TOOLS_WROOT_PNTUPLE_CREATE_COL(char)
             else TOOLS_WROOT_PNTUPLE_CREATE_COL(short)
             else TOOLS_WROOT_PNTUPLE_CREATE_COL(int)
             else TOOLS_WROOT_PNTUPLE_CREATE_COL(float)
             else TOOLS_WROOT_PNTUPLE_CREATE_COL(double)
      -      
      +
             else if((*it).cls_id()==_cid(std::string())) {
               std::string* user = (std::string*)(*it).user_obj();
               if(user) {
      @@ -103,13 +103,13 @@ public:
       	  }
               }
             }
      -      
      +
             else TOOLS_WROOT_PNTUPLE_CREATE_VEC_COL(char)
             else TOOLS_WROOT_PNTUPLE_CREATE_VEC_COL(short)
             else TOOLS_WROOT_PNTUPLE_CREATE_VEC_COL(int)
             else TOOLS_WROOT_PNTUPLE_CREATE_VEC_COL(float)
             else TOOLS_WROOT_PNTUPLE_CREATE_VEC_COL(double)
      -      
      +
             else if((*it).cls_id()==_cid_std_vector()) {\
               std::vector* user = (std::vector*)(*it).user_obj();
               char sep = '\n';
      @@ -129,9 +129,9 @@ public:
       	  }
               }
             }
      -      
      +
             // no leaf_store_class() defined for the other types.
      -      
      +
             else {
               a_out << "tools::wroot::base_pntuple_row_wise :"
                     << " for column " << sout((*it).name())
      @@ -141,7 +141,7 @@ public:
               safe_clear(m_cols);
               return;
             }
      -      
      +
       #undef TOOLS_WROOT_PNTUPLE_CREATE_COL
       #undef TOOLS_WROOT_PNTUPLE_CREATE_VEC_COL
           }
      diff --git a/source/analysis/g4tools/include/tools/wroot/basket b/source/analysis/g4tools/include/tools/wroot/basket
      index e6b6b5154c..6e53c40909 100644
      --- a/source/analysis/g4tools/include/tools/wroot/basket
      +++ b/source/analysis/g4tools/include/tools/wroot/basket
      @@ -36,29 +36,29 @@ public: //ibo
           //            Moreover with the today branch code, a
           //              basket.write_on_file()
           //            happens only in a branch.fill() that deletes
      -    //            the basket just after the call. 
      +    //            the basket just after the call.
         //if(!m_data.length()) {
         //  // to be sure to not work on a basket already written
         //  // with write_on_file()
      -  //  m_out << "tools::wroot::basket::stream :" 
      +  //  m_out << "tools::wroot::basket::stream :"
         //        << " m_data.length() is null."
         //        << std::endl;
         //  return false;
         //}
           if(m_seek_key) {
      -      m_out << "tools::wroot::basket::stream :" 
      -            << " m_seek_key is not null."
      +      m_out << "tools::wroot::basket::stream :"
      +            << " m_seek_key is not null (" << m_seek_key << ")."
                   << std::endl;
             return false;
           }
           if(m_last) {
      -      m_out << "tools::wroot::basket::stream :" 
      +      m_out << "tools::wroot::basket::stream :"
                   << " m_last is not null."
                   << std::endl;
             return false;
           }
           if(!m_entry_offset) {
      -      m_out << "tools::wroot::basket::stream :" 
      +      m_out << "tools::wroot::basket::stream :"
                   << " m_entry_offset is null."
                   << std::endl;
             return false;
      @@ -82,10 +82,10 @@ public: //ibo
               if(!a_buffer.write_array(m_displacement,m_nev)) return false;
             }
           }
      - 
      +
           if(m_data.to_displace()) {
             if(!const_cast(*this).m_data.displace_mapped(m_key_length)) {
      -        m_out << "tools::wroot::basket::stream :" 
      +        m_out << "tools::wroot::basket::stream :"
                     << " m_data.displace_mapped() failed."
                     << std::endl;
               return false;
      @@ -177,7 +177,7 @@ public:
       
         const int* displacement() const {return m_displacement;}
         int* displacement() {return m_displacement;}
      -  
      +
         uint32 nev_buf_size() const {return m_nev_buf_size;}
         uint32 nev() const {return m_nev;}
         uint32 last() const {return m_last;}
      @@ -186,9 +186,9 @@ public:
           m_last = a_last;
           m_nev_buf_size = a_nev_buf_size;
           m_nev = a_nev;
      -    delete [] m_entry_offset;   
      +    delete [] m_entry_offset;
           m_entry_offset = 0;
      -    delete [] m_displacement;   
      +    delete [] m_displacement;
           m_displacement = 0;
       
           if(a_entry_offset && m_nev_buf_size) {
      @@ -233,15 +233,15 @@ public:
           a_nbytes = 0;
       
           if(m_seek_key) {
      -      m_out << "tools::wroot::basket::write_on_file :" 
      -            << " m_seek_key should be 0."
      +      m_out << "tools::wroot::basket::write_on_file :"
      +            << " m_seek_key should be 0 (" << m_seek_key << ")."
                   << std::endl;
             return false;
           }
       
           if(m_version>big_file_version_tag()) {
           } else {
      -      m_out << "tools::wroot::basket::write_on_file : " 
      +      m_out << "tools::wroot::basket::write_on_file : "
                   << " we should not pass here (1)."
                   << std::endl;
             return false;
      @@ -251,24 +251,24 @@ public:
               //     seek_key>START_BIG_FILE. If not doing that we shall
               //     write a big m_seek_key on a seek32 and then have
               //     a problem when reading.
      -  
      -        //m_out << "tools::wroot::basket::write_on_file : " 
      +
      +        //m_out << "tools::wroot::basket::write_on_file : "
               //      << " WARNING : pos>START_BIG_FILE."
               //      << std::endl;
       
               m_version += big_file_version_tag();
               m_key_length += 8;
      -  
      +
               if(m_entry_offset) {
                 for(uint32 i=0;i(m_entry_offset,m_nev+1)) { // for the +1 we follow CERN-ROOT/TBasket logic.
      -        delete [] m_entry_offset; 
      +        delete [] m_entry_offset;
               m_entry_offset = 0;
               return false;
             }
      -      delete [] m_entry_offset; 
      +      delete [] m_entry_offset;
             m_entry_offset = 0;
             if(m_displacement) {
               if(!m_data.write_array(m_displacement,m_nev+1)) {
      -          delete [] m_displacement; 
      +          delete [] m_displacement;
                 m_displacement = 0;
                 return false;
               }
      -        delete [] m_displacement; 
      +        delete [] m_displacement;
               m_displacement = 0;
             }
           }
      @@ -307,7 +307,7 @@ public:
           a_file.compress_buffer(m_data,kbuf,klen,kdelete);
       
           if(klen>m_object_size) {
      -      m_out << "tools::wroot::basket::write_on_file :" 
      +      m_out << "tools::wroot::basket::write_on_file :"
                   << " compression anomaly "
                   << " m_object_size " << m_object_size
                   << " klen " << klen
      @@ -317,8 +317,8 @@ public:
           }
       
           if(!initialize(a_file,klen)) { //it will do a m_seek_key = a_file.END() and then a_file.set_END(...)
      -      m_out << "tools::wroot::basket::write_on_file :" 
      -            << " initialize() failed." 
      +      m_out << "tools::wroot::basket::write_on_file :"
      +            << " initialize() failed."
                   << std::endl;
             if(kdelete) delete [] kbuf;
             return false;
      @@ -328,7 +328,7 @@ public:
          {buffer bref(m_out,a_file.byte_swap(),256);
           if(!_stream_header(bref,a_file.verbose())) return false;
           if(bref.length()!=m_key_length) {
      -      m_out << "tools::wroot::basket::write_on_file :" 
      +      m_out << "tools::wroot::basket::write_on_file :"
                   << " key len anomaly " << bref.length()
                   << " m_key_length " << m_key_length
                   << std::endl;
      @@ -339,10 +339,10 @@ public:
       
           ::memcpy(m_buffer+m_key_length,kbuf,klen);
           if(kdelete) delete [] kbuf;
      -    
      +
           uint32 nbytes;
           if(!parent::write_file(a_file,nbytes)) return false;
      -  
      +
           m_data.pos() = m_data.buf(); //empty m_data.
       
           a_nbytes = m_key_length + klen;
      diff --git a/source/analysis/g4tools/include/tools/wroot/basket_add b/source/analysis/g4tools/include/tools/wroot/basket_add
      deleted file mode 100644
      index 66aa64a3ef..0000000000
      --- a/source/analysis/g4tools/include/tools/wroot/basket_add
      +++ /dev/null
      @@ -1,48 +0,0 @@
      -// Copyright (C) 2010, Guy Barrand. All rights reserved.
      -// See the file tools.license for terms.
      -
      -#ifndef tools_wroot_basket_add
      -#define tools_wroot_basket_add
      -
      -// used in pntuple.
      -
      -#include "branch"
      -
      -namespace tools {
      -namespace wroot {
      -
      -class basket_add : public virtual branch::iadd_basket {
      -  typedef branch::iadd_basket parent;
      -public:
      -  virtual bool add_basket(basket& a_basket) {
      -    m_mutex.lock();
      -    uint32 add_bytes,nout;
      -    if(!m_main_branch->add_basket(m_main_file,a_basket,add_bytes,nout)) {
      -      m_mutex.unlock();
      -      return false;
      -    }
      -    m_main_branch->set_tot_bytes(m_main_branch->tot_bytes()+add_bytes);
      -    m_main_branch->set_zip_bytes(m_main_branch->zip_bytes()+nout);
      -    m_mutex.unlock();
      -    return true;
      -  }
      -public:
      -  basket_add(imutex& a_mutex,ifile& a_main_file)
      -  :m_mutex(a_mutex),m_main_file(a_main_file),m_main_branch(0)
      -  {}
      -protected:
      -  basket_add(const basket_add& a_from):parent()
      -  ,m_mutex(a_from.m_mutex),m_main_file(a_from.m_main_file),m_main_branch(0)
      -  {}
      -  basket_add& operator=(const basket_add&){return *this;}
      -public:
      -  void set_main_branch(branch* a_main_branch) {m_main_branch = a_main_branch;}
      -protected:
      -  imutex& m_mutex;
      -  ifile& m_main_file;
      -  branch* m_main_branch;
      -};
      -
      -}}
      -
      -#endif
      diff --git a/source/analysis/g4tools/include/tools/wroot/branch b/source/analysis/g4tools/include/tools/wroot/branch
      index 701a647cbc..2e924d9fd8 100644
      --- a/source/analysis/g4tools/include/tools/wroot/branch
      +++ b/source/analysis/g4tools/include/tools/wroot/branch
      @@ -89,7 +89,7 @@ public: //ibo
             }
           }}
           //GB : end
      -   
      +
           if(!a_buffer.write(isBigFile)) return false;
           if(isBigFile==2) {
             if(!a_buffer.write_fast_array(fBasketSeek,m_max_baskets)) return false;
      @@ -120,7 +120,7 @@ public:
         :m_out(a_out)
         ,m_byte_swap(a_byte_swap)
         ,m_verbose(a_verbose)
      -  ,m_seek_directory(a_seek_directory)  
      +  ,m_seek_directory(a_seek_directory)
         ,m_name(a_name)
         ,m_title(a_title)
         ,fAutoDelete(false)
      @@ -175,13 +175,13 @@ protected:
         branch(const branch& a_from)
         :ibo(a_from)
         ,m_out(a_from.m_out)
      -  ,m_seek_directory(a_from.m_seek_directory)  
      +  ,m_seek_directory(a_from.m_seek_directory)
         {}
         branch& operator=(const branch&){return *this;}
       public:
         const std::string& name() const {return m_name;}
         const std::string& title() const {return m_title;}
      -  
      +
         uint64 entries() const {return m_entries;}
       
         uint64 tot_bytes() const {return m_tot_bytes;}
      @@ -211,7 +211,7 @@ public:
         ////////////////////////////////////////////////
         ////////////////////////////////////////////////
         ////////////////////////////////////////////////
      -  
      +
         template 
         leaf* create_leaf(const std::string& a_name){
           leaf* lf = new leaf(m_out,a_name);
      @@ -243,14 +243,14 @@ public:
         const std::vector& leaves() const {return m_leaves;}
       
         void reset() {
      -    m_baskets.clear_objs();  
      +    m_baskets.clear_objs();
           delete [] fBasketBytes;
           delete [] fBasketEntry;
           delete [] fBasketSeek;
           fBasketBytes = 0;
           fBasketEntry = 0;
           fBasketSeek = 0;
      -    
      +
           m_max_baskets = 10;
       
           m_write_basket = 0;
      @@ -258,7 +258,7 @@ public:
           m_entries = 0;
           m_tot_bytes = 0;
           m_zip_bytes = 0;
      -  
      +
           m_baskets.resize(m_max_baskets,0);
           fBasketBytes = new uint32[m_max_baskets];
           fBasketEntry = new uint32[m_max_baskets];
      @@ -303,18 +303,18 @@ public:
           buf.reset_objs_map();
       
           uint32 lold = buf.length();
      -  
      +
           bk->update(bk->key_length()+lold);
           m_entries++;
           m_entry_number++;
      -  
      +
           if(!fill_leaves(buf)) {
             m_out << "tools::wroot::branch::fill :"
                   << " fill_leaves() failed."
                   << std::endl;
             return false;
           }
      -    
      +
           uint32 lnew   = buf.length();
           uint32 nbytes = lnew - lold;
           uint32 nsize  = 0;
      @@ -324,8 +324,8 @@ public:
       
           // Should we create a new basket?
           // Compare expected next size with m_basket_size.
      -    if((lnew+2*nsize+nbytes)>=m_basket_size) { 
      -      if(!bk->write_on_file(a_file,m_write_basket,nout)) {//it set bk m_seek_key, set a_file.m_END. 
      +    if((lnew+2*nsize+nbytes)>=m_basket_size) {
      +      if(!bk->write_on_file(a_file,m_write_basket,nout)) {//it set bk m_seek_key, set a_file.m_END.
                                                                 //Does a a_file.set_END().
               m_out << "tools::wroot::branch::fill :"
                     << " basket.write_on_file() failed."
      @@ -431,9 +431,9 @@ public:
           }
       
           buffer& buf = bk->datbuf();
      -    
      +
           uint32 lold = buf.length();
      -  
      +
           bk->update(bk->key_length()+lold);
       
           //m_entries++;      //not used by parallel branches.
      @@ -448,7 +448,7 @@ public:
       
           uint32 lnew   = buf.length();
           uint32 nbytes = lnew - lold;
      -    
      +
           // Should we create a new basket?
           bool store_basket = false;
           if(a_nev) {
      @@ -471,7 +471,7 @@ public:
                                                    m_seek_directory,m_name,m_title,"TBasket",m_basket_size,
                                                    main_branch_verbose);
           }
      -    
      +
           return true;
         }
       
      @@ -485,7 +485,7 @@ public:
                   << std::endl;
             return false;
           }
      -    
      +
           buffer& buf = bk->datbuf();
           uint32 lold = buf.length();
       
      @@ -499,7 +499,7 @@ public:
           } else {
             delete bk;
           }
      -    
      +
           m_baskets[m_write_basket] = 0; // no need to recreate a basket since it is end of fill.
       
           return true;
      @@ -564,7 +564,7 @@ protected:
         seek m_seek_directory;
         obj_array m_baskets;
         /// for parallelization :
      -public:  
      +public:
         std::vector m_parallel_baskets;
       protected:
         //Object
      diff --git a/source/analysis/g4tools/include/tools/wroot/branch_element b/source/analysis/g4tools/include/tools/wroot/branch_element
      index 8b2cc5fdc6..340f5a6059 100644
      --- a/source/analysis/g4tools/include/tools/wroot/branch_element
      +++ b/source/analysis/g4tools/include/tools/wroot/branch_element
      @@ -131,7 +131,7 @@ protected:
         }
       public:
         const std::vector& variable() const {return m_ref;}
      -  std::vector& variable() {return const_cast< std::vector& >(m_ref);}  
      +  std::vector& variable() {return const_cast< std::vector& >(m_ref);}
       protected:
         const std::vector& m_ref;
       };
      diff --git a/source/analysis/g4tools/include/tools/wroot/buffer b/source/analysis/g4tools/include/tools/wroot/buffer
      index cb1b02ae5a..8ac24a6023 100644
      --- a/source/analysis/g4tools/include/tools/wroot/buffer
      +++ b/source/analysis/g4tools/include/tools/wroot/buffer
      @@ -215,7 +215,7 @@ public:
           char* opos = m_pos;
           m_pos = (char*)(m_buffer+a_pos);
           if(m_byte_swap) {
      -      if(!m_wb.write(short(v.vers[1]|kByteCountVMask()))) 
      +      if(!m_wb.write(short(v.vers[1]|kByteCountVMask())))
               {m_pos = opos;return false;}
             if(!m_wb.write(v.vers[0])) {m_pos = opos;return false;}
           } else {
      @@ -254,17 +254,17 @@ public:
               if(!expand2(m_size+sizeof(unsigned int))) return false;
             }
             m_pos += sizeof(unsigned int);
      -    
      +
             // write class of object first
             if(!write_class(a_obj.store_cls())) return false;
      -    
      +
             // add to map before writing rest of object (to handle self reference)
             // (+kMapOffset so it's != kNullTag)
             m_objs[(ibo*)&a_obj] = cntpos + kMapOffset();
      -    
      +
             // let the object write itself :
             if(!a_obj.stream(*this)) return false;
      -    
      +
             // write byte count
             if(!set_byte_count_obj(cntpos)) return false;
           }
      @@ -311,7 +311,7 @@ public:
             unsigned int clIdx = id+a_num;
             if(!write(uint32(clIdx|kClassMask()))) {m_pos = opos;return false;}
           }}
      -  
      +
           //m_out << "tools::wroot::buffer::displace_mapped :"
           //      << " obj num " << m_obj_mapped.size()
           //      << std::endl;
      @@ -327,7 +327,7 @@ public:
             unsigned int objIdx = id+a_num;
             if(!write(objIdx)) {m_pos = opos;return false;}
           }}
      -  
      +
           m_pos = opos;
           return true;
         }
      diff --git a/source/analysis/g4tools/include/tools/wroot/bufobj b/source/analysis/g4tools/include/tools/wroot/bufobj
      index 4b4ac67dd5..a9e496f640 100644
      --- a/source/analysis/g4tools/include/tools/wroot/bufobj
      +++ b/source/analysis/g4tools/include/tools/wroot/bufobj
      @@ -41,7 +41,7 @@ public:
       #endif
         }
       protected:
      -  bufobj(const bufobj& a_from): iobject(a_from),buffer(a_from){  
      +  bufobj(const bufobj& a_from): iobject(a_from),buffer(a_from){
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      diff --git a/source/analysis/g4tools/include/tools/wroot/columns.icc b/source/analysis/g4tools/include/tools/wroot/columns.icc
      index 2491a457d7..0df2c16620 100644
      --- a/source/analysis/g4tools/include/tools/wroot/columns.icc
      +++ b/source/analysis/g4tools/include/tools/wroot/columns.icc
      @@ -55,7 +55,7 @@
           }
         public:
           const T& variable() const {return m_leaf->variable();}
      -    T& variable() {return m_leaf->variable();}  
      +    T& variable() {return m_leaf->variable();}
         protected:
           branch& m_branch;
           leaf_ref* m_leaf;
      @@ -169,7 +169,7 @@
           }
         public:
           const std::string& variable() const {return m_leaf->variable();}
      -    std::string& variable() {return m_leaf->variable();}  
      +    std::string& variable() {return m_leaf->variable();}
         protected:
           branch& m_branch;
           leaf_string_ref* m_leaf;
      @@ -284,7 +284,7 @@
           }
         public:
           const std::vector& variable() const {return m_ref;}
      -    std::vector& variable() {return const_cast< std::vector& >(m_ref);}  
      +    std::vector& variable() {return const_cast< std::vector& >(m_ref);}
         protected:
           const std::vector& m_ref;
           char m_sep;
      @@ -412,7 +412,7 @@
           }
         public:
           const std::vector& variable() const {return m_ref;}
      -    std::vector& variable() {return const_cast< std::vector& >(m_ref);}  
      +    std::vector& variable() {return const_cast< std::vector& >(m_ref);}
         protected:
           branch& m_branch;
           const std::vector& m_ref;
      diff --git a/source/analysis/g4tools/include/tools/wroot/directory b/source/analysis/g4tools/include/tools/wroot/directory
      index ff462c19fb..698d0b92b3 100644
      --- a/source/analysis/g4tools/include/tools/wroot/directory
      +++ b/source/analysis/g4tools/include/tools/wroot/directory
      @@ -36,7 +36,7 @@ public: //idir
         virtual void append_object(iobject* a_object) {m_objs.push_back(a_object);} //take ownership of a_object
       public:
         directory(ifile& a_file)
      -  :m_file(a_file)  
      +  :m_file(a_file)
         ,m_parent(0)
         ,m_is_valid(false)
         ,m_date_C(0)
      @@ -52,7 +52,7 @@ public:
       #endif
         }
         directory(ifile& a_file,const std::string& a_name,const std::string& a_title)
      -  :m_file(a_file)  
      +  :m_file(a_file)
         ,m_parent(0)
         ,m_is_valid(false)
         ,m_name(a_name)
      @@ -89,7 +89,7 @@ public:
                   directory* a_parent, //assume a_parent not nul.
                   const std::string& a_name,
                   const std::string& a_title)
      -  :m_file(a_file)  
      +  :m_file(a_file)
         ,m_parent(a_parent)
         ,m_is_valid(false)
         ,m_name(a_name)
      @@ -116,7 +116,7 @@ public:
             m_file.out() << "tools::wroot::directory::directory :"
                          << " directory name " << sout(m_name)
                          << " cannot contain a slash."
      -                   << std::endl; 
      +                   << std::endl;
             return; //FIXME : throw
           }
       
      @@ -160,7 +160,7 @@ public:
                          << " key.write_self() failed."
                          << std::endl;
             return; //FIXME : throw
      -    }  
      +    }
           uint32 n;
           if(!key->write_file(m_file,n)) {
             m_file.out() << "tools::wroot::directory::directory :"
      @@ -168,7 +168,7 @@ public:
                          << " cannot write key to file."
                          << std::endl;
             return; //FIXME : throw
      -    }  
      +    }
       
           m_is_valid = true;
         }
      @@ -202,13 +202,13 @@ public:
           // Create a sub-directory and return a pointer to the created directory.
           // Note that the directory name cannot contain slashes.
           if(a_name.empty()) {
      -      m_file.out() << "tools::wroot::directory::mkdir :" 
      -                   << " directory name cannot be \"\"." 
      +      m_file.out() << "tools::wroot::directory::mkdir :"
      +                   << " directory name cannot be \"\"."
                          << std::endl;
             return 0;
           }
           if(a_name.find('/')!=std::string::npos) {
      -      m_file.out() << "tools::wroot::directory::mkdir :" 
      +      m_file.out() << "tools::wroot::directory::mkdir :"
                          << " " << sout(a_name)
                          << " cannot contain a slash."
                          << std::endl;
      @@ -216,7 +216,7 @@ public:
           }
           directory* dir = new directory(m_file,this,a_name,a_title.empty()?a_name:a_title);
           if(!dir->is_valid()) {
      -      m_file.out() << "tools::wroot::directory::mkdir :" 
      +      m_file.out() << "tools::wroot::directory::mkdir :"
                          << " directory badly created."
                          << std::endl;
             delete dir;
      @@ -267,8 +267,8 @@ public:
       
           if(m_file.verbose()) {
             m_file.out() << "tools::wroot::key::to_buffer :"
      -          << " nbytes keys : " << m_nbytes_keys 
      -          << ", pos keys : " << m_seek_keys 
      +          << " nbytes keys : " << m_nbytes_keys
      +          << ", pos keys : " << m_seek_keys
                 << std::endl;
           }
           return true;
      @@ -318,7 +318,7 @@ public:
                          << std::endl;
             return false; //it will write keys of objects.
           }
      -  
      +
           a_nbytes = nbytes;
           return true;
         }
      @@ -365,7 +365,7 @@ protected:
       
         key* find_key(const std::string& a_name) {
           if(m_file.verbose()) {
      -      m_file.out() << "tools::wroot::directory::find_key :" 
      +      m_file.out() << "tools::wroot::directory::find_key :"
                          << " " << sout(a_name) << " ..."
                          << std::endl;
           }
      @@ -417,12 +417,12 @@ protected:
          {tools_lforit(key*,m_keys,it) {
             if(!((*it)->to_buffer(wb,m_file.verbose()))) return false;
           }}}
      -  
      +
           m_seek_keys = headerkey.seek_key();
           m_nbytes_keys = headerkey.number_of_bytes();
       
           if(m_file.verbose()) {
      -      m_file.out() << "tools::wroot::directory::write_keys :" 
      +      m_file.out() << "tools::wroot::directory::write_keys :"
                          << " write header key"
                          << " " << sout(m_name)
                          << " " << sout(m_title)
      @@ -436,11 +436,11 @@ protected:
       
           headerkey.set_cycle(1);
           if(!headerkey.write_self(m_file)) {
      -      m_file.out() << "tools::wroot::directory::write_keys :" 
      +      m_file.out() << "tools::wroot::directory::write_keys :"
                          << " key.write_self() failed."
                          << std::endl;
             return false;
      -    }  
      +    }
       
           uint32 n;
           return headerkey.write_file(m_file,n);
      @@ -458,7 +458,7 @@ protected:
             return false;
           }
           // do not overwrite the name/title part
      -    seek pointer = m_seek_directory + m_nbytes_name; 
      +    seek pointer = m_seek_directory + m_nbytes_name;
           //fModified = false;
           if(!m_file.set_pos(pointer)) {
             delete [] header;
      @@ -479,9 +479,9 @@ protected:
         bool write_object(iobject& a_obj,uint32& a_nbytes){
           buffer bref(m_file.out(),m_file.byte_swap(),256*128); //32768
           if(!a_obj.stream(bref)) {
      -      m_file.out() << "tools::wroot::directory::write_object :" 
      +      m_file.out() << "tools::wroot::directory::write_object :"
                          << " cannot stream object of store class name "
      -                   << " " << sout(a_obj.store_class_name()) << "." 
      +                   << " " << sout(a_obj.store_class_name()) << "."
                          << std::endl;
             a_nbytes = 0;
             return false;
      @@ -521,22 +521,22 @@ protected:
       
           uint16 cycle = append_key(key);
           key->set_cycle(cycle);
      -    
      +
           if(!key->write_self(m_file)) {
      -      m_file.out() << "tools::wroot::directory::write_object :" 
      +      m_file.out() << "tools::wroot::directory::write_object :"
                          << " key.write_self() failed."
                          << std::endl;
             return false;
      -    }  
      +    }
       
           //FIXME m_file.sumBuffer(key->object_size()); //uncompressed data size.
      -  
      +
           if(m_file.verbose()) {
      -      m_file.out() << "tools::wroot::directory::_write_buffer :" 
      +      m_file.out() << "tools::wroot::directory::_write_buffer :"
                          << " " << sout(a_obj.name()) << "."
                          << std::endl;
           }
      -    
      +
           return key->write_file(m_file,a_nbytes);
         }
       
      diff --git a/source/analysis/g4tools/include/tools/wroot/element b/source/analysis/g4tools/include/tools/wroot/element
      index 4b4fb33af2..30a904ec73 100644
      --- a/source/analysis/g4tools/include/tools/wroot/element
      +++ b/source/analysis/g4tools/include/tools/wroot/element
      @@ -149,7 +149,7 @@ public:
         }
       protected: //Named
         std::string fName;
      -  std::string fTitle;  
      +  std::string fTitle;
       protected:
         int fType;            //element type
         int fSize;            //sizeof element
      @@ -226,7 +226,7 @@ public:
         streamer_basic_type(const streamer_basic_type& a_from)
         :ibo(a_from),streamer_element(a_from)
         {}
      -  streamer_basic_type& operator=(const streamer_basic_type& a_from){ 
      +  streamer_basic_type& operator=(const streamer_basic_type& a_from){
           streamer_element::operator=(a_from);
           return *this;
         }
      @@ -438,7 +438,7 @@ public:
         streamer_string(const streamer_string& a_from):ibo(a_from),streamer_element(a_from){}
         streamer_string& operator=(const streamer_string& a_from){streamer_element::operator=(a_from);return *this;}
       };
      - 
      +
       
       class streamer_object : public streamer_element {
       public: //ibo
      diff --git a/source/analysis/g4tools/include/tools/wroot/file b/source/analysis/g4tools/include/tools/wroot/file
      index 388d07dc0d..092676fb39 100644
      --- a/source/analysis/g4tools/include/tools/wroot/file
      +++ b/source/analysis/g4tools/include/tools/wroot/file
      @@ -14,7 +14,7 @@
       #include "../platform"
       
       #include "../path"
      -	
      +
       #include 
       
       #include 
      @@ -68,7 +68,7 @@ public: //ifile
           if (::lseek(m_file, a_offset, whence) < 0) {
       #endif
             m_out << "tools::wroot::file::set_pos :"
      -            << " cannot set position " << a_offset 
      +            << " cannot set position " << a_offset
                   << " in file " << sout(m_path) << "."
                   << std::endl;
             return false;
      @@ -103,7 +103,7 @@ public: //ifile
           typedef int ssize_t;
       #endif
           ssize_t siz;
      -    while ((siz = ::write(m_file,a_buffer,a_length)) < 0 && 
      +    while ((siz = ::write(m_file,a_buffer,a_length)) < 0 &&
                   error_number() == EINTR) reset_error_number();
       
           if(siz < 0) {
      @@ -128,9 +128,9 @@ public: //ifile
           static const uint32 ROOT_MAJOR_VERSION = 4;
           static const uint32 ROOT_MINOR_VERSION = 0;
           static const uint32 ROOT_PATCH_VERSION = 0;
      -    return 
      -      10000 * ROOT_MAJOR_VERSION + 
      -      100 * ROOT_MINOR_VERSION + 
      +    return
      +      10000 * ROOT_MAJOR_VERSION +
      +      100 * ROOT_MINOR_VERSION +
             ROOT_PATCH_VERSION;
         }
       
      @@ -151,7 +151,7 @@ public: //ifile
                   << " error in fsync() for file " << sout(m_path) << "."
                   << std::endl;
             return false;
      -    } 
      +    }
       #endif
           return true;
         }
      @@ -178,7 +178,7 @@ public: //ifile
           if(cxlevel && (nbytes>256)) {
             compress_func func;
             if(!ziper('Z',func)) {
      -        //m_out << "tools::wroot::directory::write_object :" 
      +        //m_out << "tools::wroot::directory::write_object :"
               //      << " zlib ziper not found."
               //      << std::endl;
               a_kbuf = (char*)a_buffer.buf();
      @@ -188,7 +188,7 @@ public: //ifile
               const uint32 kMAXBUF = 0xffffff;
               const uint32 HDRSIZE = 9;
               uint32 nbuffers = nbytes/kMAXBUF;
      -        uint32 buflen = nbytes+HDRSIZE*(nbuffers+1); 
      +        uint32 buflen = nbytes+HDRSIZE*(nbuffers+1);
               a_kbuf = new char[buflen];
               a_kdel = true;
               char* src = (char*)a_buffer.buf();
      @@ -208,7 +208,7 @@ public: //ifile
                 a_klen += nout;
                 src += kMAXBUF;
                 nzip += kMAXBUF;
      -        }    
      +        }
               //::printf("debug : compress : end : %u %u\n",nbytes,klen);
             }
           } else {
      @@ -274,14 +274,14 @@ public:
           m_free_segs.push_back(new free_seg(m_out,m_BEGIN,START_BIG_FILE()));
       
           // Write Directory info :
      -    uint32 namelen = 
      -      key::std_string_record_size(m_path) + 
      +    uint32 namelen =
      +      key::std_string_record_size(m_path) +
             key::std_string_record_size(m_title);
           uint32 nbytes = namelen + m_root_directory.record_size();
           wroot::key key(m_out,*this,0,m_path,m_title,"TFile",nbytes); // It does a (*this).set_END().
       
           // m_nbytes_name = start point of directory info from key head.
      -    m_nbytes_name = key.key_length() + namelen; 
      +    m_nbytes_name = key.key_length() + namelen;
           m_root_directory.set_nbytes_name(m_nbytes_name);
           m_root_directory.set_seek_directory(key.seek_key()); //at EOF.
       
      @@ -302,15 +302,15 @@ public:
           if(m_verbose) {
             m_out << "tools::wroot::file::file :"
                   << " write key ("
      -            << namelen 
      -            << ", " 
      +            << namelen
      +            << ", "
                   << m_root_directory.record_size()
      -            << ", " 
      +            << ", "
                   << nbytes
                   << ", "
                   << m_nbytes_name
                   << ", "
      -            << key.seek_key() 
      +            << key.seek_key()
                   << ")."
                   << std::endl;
           }
      @@ -346,7 +346,7 @@ protected:
         :ifile(a_from)
         ,m_out(a_from.m_out)
         ,m_root_directory(get_me())
      -  { 
      +  {
       #ifdef TOOLS_MEM
           mem::increment(s_class().c_str());
       #endif
      @@ -475,7 +475,7 @@ protected:
           // false in case of failure.
           struct stat finfo;
           if (::stat(a_path.c_str(),&finfo) < 0) return false;
      -#ifdef _MSC_VER 
      +#ifdef _MSC_VER
           if (finfo.st_mode & S_IFDIR)
             return (::_rmdir(a_path.c_str())==-1 ? false : true);
           else
      @@ -549,7 +549,7 @@ protected:
           buffer bref(m_out,byte_swap(),256);
       
           if(!sinfos.stream(bref)) {
      -      m_out << "tools::wroot::file::write_streamer_infos :" 
      +      m_out << "tools::wroot::file::write_streamer_infos :"
                   << " cannot stream obj_list."
                   << std::endl;
             return false;
      @@ -569,7 +569,7 @@ protected:
       
           //key.set_cycle(1);
           if(!key.write_self(*this)) {
      -      m_out << "tools::wroot::file::write_streamer_infos :" 
      +      m_out << "tools::wroot::file::write_streamer_infos :"
                   << " key.write_self() failed."
                   << std::endl;
             return false;
      @@ -597,7 +597,7 @@ protected:
           //    GAPSIZE = -(Number of bytes occupied by the record).
       
           if(m_free_segs.empty()) {
      -      m_out << "tools::wroot::file::make_free_seg :" 
      +      m_out << "tools::wroot::file::make_free_seg :"
                   << " free_seg list should not be empty here."
                   << std::endl;
             return false;
      @@ -605,12 +605,12 @@ protected:
       
           free_seg* newfree = add_free(m_free_segs,a_first,a_last);
           if(!newfree) {
      -      m_out << "tools::wroot::file::make_free_seg :" 
      +      m_out << "tools::wroot::file::make_free_seg :"
                   << " add_free failed."
                   << std::endl;
             return false;
           }
      - 
      +
           seek nfirst = newfree->first();
           seek nlast = newfree->last();
       
      @@ -640,7 +640,7 @@ protected:
           // Delete old record if it exists :
           if(m_seek_free){
             if(!make_free_seg(m_seek_free, m_seek_free + m_nbytes_free -1)) {
      -        m_out << "tools::wroot::file::write_free_segments :" 
      +        m_out << "tools::wroot::file::write_free_segments :"
                     << " key.write_self() failed."
                     << std::endl;
               return false;
      @@ -671,7 +671,7 @@ protected:
       
           //key.set_cycle(1);
           if(!key.write_self(*this)) {
      -      m_out << "tools::wroot::file::write_free_segments :" 
      +      m_out << "tools::wroot::file::write_free_segments :"
                   << " key.write_self() failed."
                   << std::endl;
             return false;
      @@ -706,14 +706,14 @@ protected:
             a_out << "tools::wroot::directory::zip :"
                   << " target buffer too small."
                   << std::endl;
      -      a_irep = 0; 
      +      a_irep = 0;
             return false;
           }
           if(a_srcsize>0xffffff) {
             a_out << "tools::wroot::directory::zip :"
                   << " source buffer too big."
                   << std::endl;
      -      a_irep = 0; 
      +      a_irep = 0;
             return false;
           }
       
      @@ -725,14 +725,14 @@ protected:
             a_out << "tools::wroot::directory::zip :"
                   << " zipper failed."
                   << std::endl;
      -      a_irep = 0; 
      +      a_irep = 0;
             return false;
           }
           if((HDRSIZE+out_size)>a_tgtsize) {
             a_out << "tools::wroot::directory::zip :"
                   << " target buffer overflow."
                   << std::endl;
      -      a_irep = 0; 
      +      a_irep = 0;
             return false;
           }
       
      @@ -740,11 +740,11 @@ protected:
           a_tgt[0] = 'Z'; // Signature ZLib
           a_tgt[1] = 'L';
           a_tgt[2] = 8; //DEFLATE
      - 
      +
           a_tgt[3] = (char)(out_size & 0xff);
           a_tgt[4] = (char)((out_size >> 8) & 0xff);
           a_tgt[5] = (char)((out_size >> 16) & 0xff);
      - 
      +
           a_tgt[6] = (char)(a_srcsize & 0xff);
           a_tgt[7] = (char)((a_srcsize >> 8) & 0xff);
           a_tgt[8] = (char)((a_srcsize >> 16) & 0xff);
      diff --git a/source/analysis/g4tools/include/tools/wroot/info b/source/analysis/g4tools/include/tools/wroot/info
      index f1010170b6..9c338f1273 100644
      --- a/source/analysis/g4tools/include/tools/wroot/info
      +++ b/source/analysis/g4tools/include/tools/wroot/info
      @@ -45,7 +45,7 @@ public: //ibo
         }
       public:
         virtual void out(std::ostream& a_out) const {
      -    a_out << "streamer_info for class :" 
      +    a_out << "streamer_info for class :"
                 << " " << fName << ", version=" << fStreamedClassVersion
                 << std::endl;
           tools_vforcit(streamer_element*,fElements,it) (*it)->out(a_out);
      @@ -86,7 +86,7 @@ protected:
           fStreamedClassVersion = a_from.fStreamedClassVersion;
           fElements = a_from.fElements;
           return *this;
      -  }  
      +  }
       public:
         void add(streamer_element* a_elem){fElements.push_back(a_elem);}
       protected: //Named
      diff --git a/source/analysis/g4tools/include/tools/wroot/infos b/source/analysis/g4tools/include/tools/wroot/infos
      index 3599f40cb1..68ee0ca881 100644
      --- a/source/analysis/g4tools/include/tools/wroot/infos
      +++ b/source/analysis/g4tools/include/tools/wroot/infos
      @@ -73,7 +73,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
         }}
       
         short TNamed_version = 1;
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TNamed");
         //base :
      @@ -98,7 +98,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
                 << std::endl;
         }}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TStreamerInfo");
         //bases :
      @@ -126,7 +126,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
        }
       
         short TStreamerElement_version = 2;
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TStreamerElement");
         //bases :
      @@ -169,7 +169,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
       
         info->add(new streamer_string("fTypeName","Data type name of data member",72));}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TStreamerBase");
         //bases :
      @@ -185,7 +185,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
         info->add(new streamer_base("TStreamerElement","base class for one element (data member) to be Streamed",0,TStreamerElement_version));
         info->add(new streamer_int("fBaseVersion","version number of the base class",88));}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TStreamerString");
         //bases :
      @@ -197,7 +197,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
         // Elements :
         info->add(new streamer_base("TStreamerElement","base class for one element (data member) to be Streamed",0,TStreamerElement_version));}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TStreamerBasicType");
         //bases :
      @@ -209,7 +209,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
         // Elements :
         info->add(new streamer_base("TStreamerElement","base class for one element (data member) to be Streamed",0,TStreamerElement_version));}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TStreamerBasicPointer");
         //bases :
      @@ -233,7 +233,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
         info->add(new streamer_string("fCountName","name of data member holding the array count",92));
         info->add(new streamer_string("fCountClass","name of the class with the counter",100));}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TStreamerObject");
         //bases :
      @@ -245,7 +245,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
         // Elements :
         info->add(new streamer_base("TStreamerElement","base class for one element (data member) to be Streamed",0,TStreamerElement_version));}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TStreamerObjectPointer");
         //bases :
      @@ -257,7 +257,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
         // Elements :
         info->add(new streamer_base("TStreamerElement","base class for one element (data member) to be Streamed",0,TStreamerElement_version));}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TStreamerObjectAny");
         //bases :
      @@ -269,7 +269,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
         // Elements :
         info->add(new streamer_base("TStreamerElement","base class for one element (data member) to be Streamed",0,TStreamerElement_version));}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TArray");
         //members :
      @@ -286,7 +286,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
         //size_TArray = ofs; //8
         }
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TArrayI");
         //base :
      @@ -306,7 +306,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
         //12
         }
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TArrayD");
         //base :
      @@ -326,7 +326,7 @@ inline void fill_infos_core(obj_list& a_infos,std::ostream& a_out
         //12
         }
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TArrayF");
         //base :
      @@ -449,7 +449,7 @@ inline void fill_infos_graf(obj_list& a_infos,std::ostream& a_out
         const int size_SHORT = 2;
         const int size_FLOAT = 4;
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TAttLine");
         //members :
      @@ -479,7 +479,7 @@ inline void fill_infos_graf(obj_list& a_infos,std::ostream& a_out
                 << std::endl;
         }}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TAttFill");
         //members :
      @@ -502,7 +502,7 @@ inline void fill_infos_graf(obj_list& a_infos,std::ostream& a_out
                 << std::endl;
         }}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TAttMarker");
         //members :
      @@ -555,7 +555,7 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
         short TBranch_version = 8;
         short TLeaf_version = 2;
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TTree");
         //bases :
      @@ -663,7 +663,7 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
         }
       
         //---------------------------------------------------------------------
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TBranch");
         //bases :
      @@ -751,7 +751,7 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
         info->add(new streamer_object("fBaskets","-> List of baskets of this branch",ofs,"TObjArray"));ofs += size_TObjArray;
         ofs += size_INT; //!fNBasketRAM
         ofs += size_POINTER; //!*fBasketRAM
      -  info->add(new streamer_basic_pointer("fBasketBytes","[fMaxBaskets] Lenght of baskets on file",ofs,streamer__info::INT,"fMaxBaskets","TBranch",6,"Int_t*"));ofs += size_POINTER;
      +  info->add(new streamer_basic_pointer("fBasketBytes","[fMaxBaskets] Length of baskets on file",ofs,streamer__info::INT,"fMaxBaskets","TBranch",6,"Int_t*"));ofs += size_POINTER;
         info->add(new streamer_basic_pointer("fBasketEntry","[fMaxBaskets] Table of first entry in eack basket",ofs,streamer__info::INT,"fMaxBaskets","TBranch",6,"Int_t*"));ofs += size_POINTER;
         info->add(new streamer_basic_pointer("fBasketSeek","[fMaxBaskets] Addresses of baskets on file",ofs,streamer__info::INT,"fMaxBaskets","TBranch",6,"Seek_t*"));ofs += size_POINTER;
         ofs += size_POINTER; //!*fTree
      @@ -764,7 +764,7 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
                 << std::endl;
         }}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TBranchObject");
         //bases :
      @@ -784,7 +784,7 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
         }
       
         //---------------------------------------------------------------------
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TBranchElement");
         //bases :
      @@ -818,7 +818,7 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
       
         }
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TLeaf");
         //bases :
      @@ -864,7 +864,7 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
                 << std::endl;
         }}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TLeafS");
         //bases :
      @@ -888,7 +888,7 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
       
         }
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TLeafI");
         //bases :
      @@ -913,7 +913,7 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
         //size_TLeafI = ofs;
         }
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //name :
         scs(check,"TLeafF");
         //bases :
      @@ -938,7 +938,7 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
         //size_TLeafF = ofs;
         }
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TLeafD");
         //bases :
      @@ -960,10 +960,10 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
         info->add(new streamer_base("TLeaf","Leaf: description of a Branch data type",ofs,TLeaf_version));ofs += size_TLeaf();
         info->add(new streamer_double(ofs,"fMinimum","Minimum value if leaf range is specified"));
         info->add(new streamer_double(ofs,"fMaximum","Maximum value if leaf range is specified"));
      - 
      +
         }
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TLeafB");
         //bases :
      @@ -984,10 +984,10 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
         info->add(new streamer_base("TLeaf","Leaf: description of a Branch data type",ofs,TLeaf_version));ofs += size_TLeaf();
         info->add(new streamer_basic_type("fMinimum","Minimum value if leaf range is specified",ofs,streamer__info::CHAR,"Char_t"));ofs += size_CHAR;
         info->add(new streamer_basic_type("fMaximum","Maximum value if leaf range is specified",ofs,streamer__info::CHAR,"Char_t"));ofs += size_CHAR;
      - 
      +
         }
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TLeafC");
         //bases :
      @@ -1010,7 +1010,7 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
         info->add(new streamer_int(ofs,"fMinimum","Minimum value if leaf range is specified"));
         info->add(new streamer_int(ofs,"fMaximum","Maximum value if leaf range is specified"));}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TLeafObject");
         //bases :
      @@ -1029,7 +1029,7 @@ inline void fill_infos_tree(obj_list& a_infos,std::ostream& a_out
         info->add(new streamer_base("TLeaf","Leaf: description of a Branch data type",ofs,TLeaf_version));ofs += size_TLeaf();
         info->add(new streamer_bool(ofs,"fVirtual","Support for Virtuality"));}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TLeafElement");
         //bases :
      @@ -1086,7 +1086,7 @@ inline void fill_infos_histo(obj_list& a_infos,std::ostream& a_ou
         short TAttAxis_version = 4;
       
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TAttAxis");
         //members :
      @@ -1145,7 +1145,7 @@ inline void fill_infos_histo(obj_list& a_infos,std::ostream& a_ou
                 << std::endl;
         }}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TAxis");
         //bases :
      @@ -1166,7 +1166,7 @@ inline void fill_infos_histo(obj_list& a_infos,std::ostream& a_ou
       
         scs(check,"fFirst");
         scs(check,"Int_t");
      -    
      +
         scs(check,"fLast");
         scs(check,"Int_t");
       
      @@ -1201,7 +1201,7 @@ inline void fill_infos_histo(obj_list& a_infos,std::ostream& a_ou
         }}
       
         short TH1_version = 3;
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TH1");
         //bases :
      @@ -1295,7 +1295,7 @@ inline void fill_infos_histo(obj_list& a_infos,std::ostream& a_ou
                 << std::endl;
         }}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TH1F");
         //base :
      @@ -1311,7 +1311,7 @@ inline void fill_infos_histo(obj_list& a_infos,std::ostream& a_ou
       
         int size_TH1D = 0;
         short TH1D_version = 1;
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TH1D");
         //base :
      @@ -1328,7 +1328,7 @@ inline void fill_infos_histo(obj_list& a_infos,std::ostream& a_ou
         //v3-05-07 : 588 = 576 + 12 = ok
         }
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TProfile");
         //base :
      @@ -1369,7 +1369,7 @@ inline void fill_infos_histo(obj_list& a_infos,std::ostream& a_ou
         }
       
         short TH2_version = 3;
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TH2");
         //bases :
      @@ -1403,7 +1403,7 @@ inline void fill_infos_histo(obj_list& a_infos,std::ostream& a_ou
                 << std::endl;
         }}
       
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TH2F");
         //base :
      @@ -1421,7 +1421,7 @@ inline void fill_infos_histo(obj_list& a_infos,std::ostream& a_ou
         }
       
         short TH2D_version = 3;
      - {unsigned int check = 0;  
      + {unsigned int check = 0;
         //this :
         scs(check,"TH2D");
         //base :
      diff --git a/source/analysis/g4tools/include/tools/wroot/key b/source/analysis/g4tools/include/tools/wroot/key
      index 1b610ce219..ee5e52b2a8 100644
      --- a/source/analysis/g4tools/include/tools/wroot/key
      +++ b/source/analysis/g4tools/include/tools/wroot/key
      @@ -214,7 +214,7 @@ public:
                   << ", object name : " << sout(m_object_name)
                   << ", object title : " << sout(m_object_title)
                   << ", object size : " << m_object_size
      -            << "." 
      +            << "."
                   << std::endl;
           }
           return true;
      diff --git a/source/analysis/g4tools/include/tools/wroot/leaf b/source/analysis/g4tools/include/tools/wroot/leaf
      index 956e4e8a39..4fbda37389 100644
      --- a/source/analysis/g4tools/include/tools/wroot/leaf
      +++ b/source/analysis/g4tools/include/tools/wroot/leaf
      @@ -94,7 +94,7 @@ public:
         void set_max(const T& a_value) {m_max = a_value;}
       public:
         const T& variable() const {return m_ref;}
      -  T& variable() {return const_cast(m_ref);}  
      +  T& variable() {return const_cast(m_ref);}
       protected:
         T m_min;    //Minimum value if leaf range is specified
         T m_max;    //Maximum value if leaf range is specified
      @@ -178,7 +178,7 @@ public:
         void set_max(int a_value) {m_max = a_value;}
       public:
         const std::string& variable() const {return m_ref;}
      -  std::string& variable() {return const_cast(m_ref);}  
      +  std::string& variable() {return const_cast(m_ref);}
       protected:
         int m_min; //Minimum value if leaf range is specified
         int m_max; //Maximum value if leaf range is specified
      @@ -251,12 +251,12 @@ public:
       protected:
         leaf_std_vector_ref(const leaf_std_vector_ref& a_from):ibo(a_from),parent(a_from),m_ref(a_from.m_ref){}
         leaf_std_vector_ref& operator=(const leaf_std_vector_ref&){return *this;}
      -public:  
      +public:
         T get_max() const {return m_max;}
         void set_max(const T& a_value) {m_max = a_value;}
       public:
         const std::vector& variable() const {return m_ref;}
      -  std::vector& variable() {return const_cast< std::vector& >(m_ref);}  
      +  std::vector& variable() {return const_cast< std::vector& >(m_ref);}
       protected:
         T m_min;    //Minimum value if leaf range is specified
         T m_max;    //Maximum value if leaf range is specified
      diff --git a/source/analysis/g4tools/include/tools/wroot/member_writer b/source/analysis/g4tools/include/tools/wroot/member_writer
      index 1aef198987..5f20fcbe66 100644
      --- a/source/analysis/g4tools/include/tools/wroot/member_writer
      +++ b/source/analysis/g4tools/include/tools/wroot/member_writer
      @@ -48,7 +48,7 @@ public:
           size_t number = a_v.size();
           std::vector data(number);
           for(size_t index=0;index(data);
         }
      @@ -78,11 +78,11 @@ public:
           return m_buf.write_array2(a_v);
         }
       
      -  virtual bool visit(const std::string&,const istorable& a_v){ 
      +  virtual bool visit(const std::string&,const istorable& a_v){
           // WARNING : can't be called in a object.visit()
           //   over a a_v being a "super" of "object" .
           if(!a_v.visit(*this)) return false;
      -    return true;  
      +    return true;
         }
       public:
         member_writer(buffer& a_buf):m_buf(a_buf){}
      diff --git a/source/analysis/g4tools/include/tools/wroot/mpi_create_basket b/source/analysis/g4tools/include/tools/wroot/mpi_create_basket
      index be492ea824..a9e42b1348 100644
      --- a/source/analysis/g4tools/include/tools/wroot/mpi_create_basket
      +++ b/source/analysis/g4tools/include/tools/wroot/mpi_create_basket
      @@ -10,13 +10,13 @@
       namespace tools {
       namespace wroot {
       
      -inline basket* mpi_create_basket(std::ostream& a_out,impi& a_mpi,bool a_byte_swap,seek a_seek_directory,uint32 a_basket_size) { 
      +inline basket* mpi_create_basket(std::ostream& a_out,impi& a_mpi,bool a_byte_swap,seek a_seek_directory,uint32 a_basket_size) {
         std::string oname;
         if(!a_mpi.sunpack(oname)) return 0;
         std::string otitle;
         if(!a_mpi.sunpack(otitle)) return 0;
       
      -  uint32 last,nev_buf_size,nev;     
      +  uint32 last,nev_buf_size,nev;
         if(!a_mpi.unpack(last)) return 0;
         if(!a_mpi.unpack(nev_buf_size)) return 0;
         if(!a_mpi.unpack(nev)) return 0;
      @@ -27,7 +27,7 @@ inline basket* mpi_create_basket(std::ostream& a_out,impi& a_mpi,bool a_byte_swa
         if(not_null) {
           uint32 n;
           if(!a_mpi.unpack(n,entry_offset)) return 0;
      -  }} 
      +  }}
       
         int* displacement = 0;
        {bool not_null;
      @@ -35,7 +35,7 @@ inline basket* mpi_create_basket(std::ostream& a_out,impi& a_mpi,bool a_byte_swa
         if(not_null) {
           uint32 n;
           if(!a_mpi.unpack(n,displacement)) {delete [] entry_offset;return 0;}
      -  }} 
      +  }}
       
         uint32 _size;
         char* _buffer;
      diff --git a/source/analysis/g4tools/include/tools/wroot/mpi_ntuple_column_wise b/source/analysis/g4tools/include/tools/wroot/mpi_ntuple_column_wise
      index 107e19ef5f..da8b2e2414 100644
      --- a/source/analysis/g4tools/include/tools/wroot/mpi_ntuple_column_wise
      +++ b/source/analysis/g4tools/include/tools/wroot/mpi_ntuple_column_wise
      @@ -18,7 +18,7 @@ namespace wroot {
       
       class mpi_ntuple_column_wise : public base_pntuple_column_wise, public virtual impi_ntuple {
         typedef base_pntuple_column_wise parent;
      -protected:  
      +protected:
         class basket_add : public mpi_basket_add {
           typedef mpi_basket_add parent;
         public:
      @@ -57,7 +57,7 @@ protected:
           }
         protected:
           branch& m_parallel_branch;
      -    std::vector& m_cols;  
      +    std::vector& m_cols;
           bool m_row_mode;
         };
       
      @@ -76,7 +76,7 @@ public:
           tools_vforit(icol*,m_cols,it) (*it)->set_def();
           return true;
         }
      -  
      +
         virtual bool end_fill(impi& a_mpi,int a_dest,int a_tag) {
           uint32 _icol = 0;
           tools_vforit(icol*,m_cols,it) {
      @@ -93,7 +93,7 @@ public:
             }
             if(!status) return false;
           }
      -    
      +
           a_mpi.pack_reset();
           if(!a_mpi.pack(mpi_protocol_end_fill())) return false;
           if(!a_mpi.pack(m_id)) return false;
      @@ -102,7 +102,7 @@ public:
       
           return true;
         }
      -  
      +
       public:
         mpi_ntuple_column_wise(uint32 a_id,std::ostream& a_out,
                                 bool a_byte_swap,uint32 a_compression,seek a_seek_directory,
      @@ -160,7 +160,7 @@ protected:
           a_mpi.pack_reset();
           if(!a_mpi.pack(mpi_protocol_baskets())) return false;
           if(!a_mpi.pack(a_id)) return false;
      -    
      +
           bool status = true;
           uint32 _icol = 0;
           tools_vforit(icol*,a_cols,it) {
      @@ -174,10 +174,10 @@ protected:
             _icol++;
           }
           if(!status) return false;
      -    
      +
           return a_mpi.send_buffer(a_dest,a_tag);
         }
      -  
      +
         static bool flush_remaining_baskets(size_t& a_number,impi& a_mpi,int a_dest,int a_tag,uint32 a_id,std::vector& a_cols) {
           a_number = 0;
           while(ready_to_flush_baskets(a_cols)) {
      @@ -194,16 +194,16 @@ protected:
           }}
           return true;
         }
      -protected:  
      +protected:
         bool end_leaves(impi& a_mpi) const {
       #include "MPI_SET_MAX.icc"
           tools_vforcit(icol*,m_cols,pit) {
             base_leaf* _pleaf = (*pit)->get_leaf();
       
             bool set_done = false;
      -      
      +
             TOOLS_WROOT_MPI_NTUPLE_LEAF_STRING_SET_LENGTH_MAX
      -      
      +
             if(!set_done) {
               if(!a_mpi.pack((uint32)0)) return false;
               if(!a_mpi.pack((int)0)) return false;
      diff --git a/source/analysis/g4tools/include/tools/wroot/mpi_ntuple_row_wise b/source/analysis/g4tools/include/tools/wroot/mpi_ntuple_row_wise
      index 62e73f1e4e..6143f1a90a 100644
      --- a/source/analysis/g4tools/include/tools/wroot/mpi_ntuple_row_wise
      +++ b/source/analysis/g4tools/include/tools/wroot/mpi_ntuple_row_wise
      @@ -27,10 +27,10 @@ public:
           tools_vforit(icol*,m_cols,it) (*it)->set_def();
           return true;
         }
      -  
      +
         virtual bool end_fill(impi& a_mpi,int a_dest,int a_tag) {
           mpi_basket_add _badd(a_mpi,a_dest,a_tag,m_id,0);
      -    if(!m_row_wise_branch.end_pfill(_badd)) return false;    
      +    if(!m_row_wise_branch.end_pfill(_badd)) return false;
       
           a_mpi.pack_reset();
           if(!a_mpi.pack(mpi_protocol_end_fill())) return false;
      @@ -40,7 +40,7 @@ public:
       
           return true;
         }
      -  
      +
       public:
         mpi_ntuple_row_wise(uint32 a_id,std::ostream& a_out,
                             bool a_byte_swap,uint32 a_compression,seek a_seek_directory,
      @@ -63,20 +63,20 @@ protected:
         mpi_ntuple_row_wise& operator=(const mpi_ntuple_row_wise& a_from){parent::operator=(a_from);return *this;}
       protected:
         bool end_leaves(impi& a_mpi) const {
      -    
      +
       #include "MPI_SET_MAX.icc"
      -    
      +
           tools_vforcit(base_leaf*,m_row_wise_branch.leaves(),pit) {
             base_leaf* _pleaf = *pit;
      -      
      +
             bool set_done = false;
      -      
      +
             TOOLS_WROOT_MPI_NTUPLE_LEAF_SET_LENGTH_MAX(char)
             TOOLS_WROOT_MPI_NTUPLE_LEAF_SET_LENGTH_MAX(short)
             TOOLS_WROOT_MPI_NTUPLE_LEAF_SET_LENGTH_MAX(int)
             TOOLS_WROOT_MPI_NTUPLE_LEAF_SET_LENGTH_MAX(float)
             TOOLS_WROOT_MPI_NTUPLE_LEAF_SET_LENGTH_MAX(double)
      -      
      +
             TOOLS_WROOT_MPI_NTUPLE_LEAF_STD_VECTOR_SET_LENGTH_MAX(char)
             TOOLS_WROOT_MPI_NTUPLE_LEAF_STD_VECTOR_SET_LENGTH_MAX(short)
             TOOLS_WROOT_MPI_NTUPLE_LEAF_STD_VECTOR_SET_LENGTH_MAX(int)
      @@ -91,7 +91,7 @@ protected:
       	return false;
             }
           }
      -    
      +
       #undef TOOLS_WROOT_MPI_NTUPLE_SET_MAX
       #undef TOOLS_WROOT_MPI_NTUPLE_STRING_SET_MAX
       
      diff --git a/source/analysis/g4tools/include/tools/wroot/mpi_send_basket b/source/analysis/g4tools/include/tools/wroot/mpi_send_basket
      index 77866af669..c21e0955fd 100644
      --- a/source/analysis/g4tools/include/tools/wroot/mpi_send_basket
      +++ b/source/analysis/g4tools/include/tools/wroot/mpi_send_basket
      @@ -13,28 +13,28 @@ namespace wroot {
       
       inline bool mpi_pack_basket(impi& a_mpi,uint32 a_icol,const basket& a_basket) {
         if(!a_mpi.pack(a_icol)) return false;
      -      
      +
         if(!a_mpi.spack(a_basket.object_name())) return false;
         if(!a_mpi.spack(a_basket.object_title())) return false;
      -  
      +
         if(!a_mpi.pack(a_basket.last())) return false;
         if(!a_mpi.pack(a_basket.nev_buf_size())) return false;
         if(!a_mpi.pack(a_basket.nev())) return false;
      -        
      +
         if(a_basket.entry_offset()) {
           if(!a_mpi.bpack(true)) return false;
           if(!a_mpi.pack(a_basket.nev_buf_size(),a_basket.entry_offset())) return false;
         } else {
           if(!a_mpi.bpack(false)) return false;
         }
      -  
      +
         if(a_basket.displacement()) {
           if(!a_mpi.bpack(true)) return false;
           if(!a_mpi.pack(a_basket.nev_buf_size(),a_basket.displacement())) return false;
         } else {
           if(!a_mpi.bpack(false)) return false;
         }
      -  
      +
         if(!a_mpi.pack(a_basket.datbuf().length(),a_basket.datbuf().buf())) return false;
         return true;
       }
      diff --git a/source/analysis/g4tools/include/tools/wroot/mt_ntuple_column_wise b/source/analysis/g4tools/include/tools/wroot/mt_ntuple_column_wise
      index cb9516bb00..ceb71aecc4 100644
      --- a/source/analysis/g4tools/include/tools/wroot/mt_ntuple_column_wise
      +++ b/source/analysis/g4tools/include/tools/wroot/mt_ntuple_column_wise
      @@ -15,7 +15,7 @@ namespace wroot {
       
       class mt_ntuple_column_wise : public base_pntuple_column_wise, public virtual imt_ntuple {
         typedef base_pntuple_column_wise parent;
      -protected:  
      +protected:
         class basket_add : public mt_basket_add {
           typedef mt_basket_add parent;
         public:
      @@ -64,7 +64,7 @@ protected:
           basket_add& operator=(const basket_add&){return *this;}
         protected:
           branch& m_parallel_branch;
      -    std::vector& m_cols;  
      +    std::vector& m_cols;
           std::vector& m_main_branches;
           bool m_row_mode;
         };
      @@ -77,8 +77,8 @@ public:
                   << " m_main_branches.size() (" << m_main_branches.size() << ") != "
                   << "m_cols.size() (" << m_cols.size() << ")."
                   << std::endl;
      -      return false;	  
      -    }   
      +      return false;
      +    }
          {std::vector::const_iterator itb = m_main_branches.begin();
           tools_vforit(icol*,m_cols,it) {
             branch* main_branch = (*itb);itb++;
      @@ -94,8 +94,8 @@ public:
                   << " m_main_branches.size() (" << m_main_branches.size() << ") != "
                   << "m_cols.size() (" << m_cols.size() << ")."
                   << std::endl;
      -      return false;	  
      -    }   
      +      return false;
      +    }
           std::vector::const_iterator itb = m_main_branches.begin();
           tools_vforit(icol*,m_cols,it) {
             branch* main_branch = (*itb);itb++;
      @@ -130,7 +130,7 @@ public:
             m_nev = 0;
           }
         }
      -  
      +
         mt_ntuple_column_wise(std::ostream& a_out,bool a_byte_swap,uint32 a_compression,seek a_seek_directory,
                               std::vector& a_main_branches,
                               const std::vector& a_basket_sizes,
      @@ -148,7 +148,7 @@ public:
             m_nev = 0;
           }
         }
      -  
      +
       #ifdef tools_wroot_mt_ntuple_column_wise   //g4tools backcomp :
         mt_ntuple_column_wise(std::ostream& a_out,bool a_byte_swap,uint32 a_compression,seek a_seek_directory,
                               std::vector& a_main_branches,
      @@ -211,7 +211,7 @@ protected:
           a_mutex.unlock();
           return status;
         }
      -  
      +
         static bool flush_remaining_baskets(size_t& a_number,imutex& a_mutex,ifile& a_main_file,std::vector& a_cols,std::vector& a_main_branches) {
           a_number = 0;
           while(ready_to_flush_baskets(a_cols)) {
      @@ -228,9 +228,9 @@ protected:
           }}
           return true;
         }
      -  
      +
         bool end_leaves(imutex& a_mutex) const {
      -    
      +
       #include "MT_SET_MAX.icc"
       
           std::vector::const_iterator pit = m_cols.begin();
      @@ -240,18 +240,18 @@ protected:
                     << " branch " << (*mit)->name() << " without leaf." << std::endl;
               return false;
             }
      -      
      +
             base_leaf* _mleaf = *((*mit)->leaves().begin());
             base_leaf* _pleaf = (*pit)->get_leaf(); pit++; //WARNING.
       
             TOOLS_WROOT_MT_NTUPLE_STRING_SET_MAX
      -      
      +
           }
       #undef TOOLS_WROOT_MT_NTUPLE_STRING_SET_MAX
       
           return true;
         }
      -protected:  
      +protected:
         std::vector& m_main_branches;
         bool m_row_mode;
         uint32 m_nev;
      diff --git a/source/analysis/g4tools/include/tools/wroot/mt_ntuple_row_wise b/source/analysis/g4tools/include/tools/wroot/mt_ntuple_row_wise
      index b950c29764..d8a560ef5e 100644
      --- a/source/analysis/g4tools/include/tools/wroot/mt_ntuple_row_wise
      +++ b/source/analysis/g4tools/include/tools/wroot/mt_ntuple_row_wise
      @@ -25,7 +25,7 @@ public:
           return true;
         }
         virtual bool end_fill(imutex& a_mutex,ifile& a_main_file) {
      -    mt_basket_add _badd(a_mutex,a_main_file,m_main_branch);    
      +    mt_basket_add _badd(a_mutex,a_main_file,m_main_branch);
           if(!m_row_wise_branch.end_pfill(_badd)) return false;
           return end_leaves(a_mutex);
         }
      @@ -38,7 +38,7 @@ public:
         :parent(a_out,a_byte_swap,a_compression,a_seek_directory,a_name,a_title,a_basket_size,a_verbose)
         ,m_main_branch(a_main_branch)
         {}
      -  
      +
         mt_ntuple_row_wise(std::ostream& a_out,bool a_byte_swap,uint32 a_compression,seek a_seek_directory,
                            branch& a_main_branch,
                            uint32 a_basket_size,
      @@ -46,7 +46,7 @@ public:
         :parent(a_out,a_byte_swap,a_compression,a_seek_directory,a_basket_size,a_bkg,a_verbose)
         ,m_main_branch(a_main_branch)
         {}
      -  
      +
         virtual ~mt_ntuple_row_wise() {}
       protected:
         mt_ntuple_row_wise(const mt_ntuple_row_wise& a_from)
      @@ -62,7 +62,7 @@ protected:
                   << " m_main_branch.leaves().size() (" << m_main_branch.leaves().size() << ") != "
                   << "m_row_wise_branch.leaves().size() (" << m_row_wise_branch.leaves().size() << ")."
                   << std::endl;
      -      return false;	  
      +      return false;
           }
       
       #include "MT_SET_MAX.icc"
      @@ -79,7 +79,7 @@ protected:
             TOOLS_WROOT_MT_NTUPLE_SET_MAX(double)
       
             TOOLS_WROOT_MT_NTUPLE_STRING_SET_MAX
      -      
      +
           }
       #undef TOOLS_WROOT_MT_NTUPLE_SET_MAX
       #undef TOOLS_WROOT_MT_NTUPLE_STRING_SET_MAX
      diff --git a/source/analysis/g4tools/include/tools/wroot/named b/source/analysis/g4tools/include/tools/wroot/named
      index bf313c34be..a391140a7e 100644
      --- a/source/analysis/g4tools/include/tools/wroot/named
      +++ b/source/analysis/g4tools/include/tools/wroot/named
      @@ -47,7 +47,7 @@ public: //ibo
           if(!a_buffer.write(nobjects)) return false;
           int lowerBound = 0;
           if(!a_buffer.write(lowerBound)) return false;
      -    
      +
           typedef typename std::vector::const_iterator it_t;
           it_t it;
           for(it=std::vector::begin();it!=std::vector::end();++it) {
      @@ -100,7 +100,7 @@ public: //ibo
           if(!a_buffer.write(std::string(""))) return false; //fName
           int nobjects = int(std::vector::size());
           if(!a_buffer.write(nobjects)) return false;
      -    
      +
           typedef typename std::vector::const_iterator it_t;
           it_t it;
           for(it=std::vector::begin();it!=std::vector::end();++it) {
      diff --git a/source/analysis/g4tools/include/tools/wroot/ntuple b/source/analysis/g4tools/include/tools/wroot/ntuple
      index 04b0ce3e9e..dd27ee9d54 100644
      --- a/source/analysis/g4tools/include/tools/wroot/ntuple
      +++ b/source/analysis/g4tools/include/tools/wroot/ntuple
      @@ -46,7 +46,7 @@ public:
         :tree(a_dir,a_bkg.name(),a_bkg.title()),m_row_wise(a_row_wise),m_row_wise_branch(0)
         {
           if(m_row_wise) m_row_wise_branch = create_branch("row_wise_branch");
      -    
      +
           const std::vector& cols = a_bkg.columns();
           tools_vforcit(column_booking,cols,it){
       
      @@ -69,7 +69,7 @@ public:
       	  }\
               }\
             }
      -      
      +
       #define TOOLS_WROOT_NTUPLE_CREATE_VEC_COL(a__type) \
             if((*it).cls_id()==_cid_std_vector()) {\
               std::vector* vec = (std::vector*)(*it).user_obj();\
      @@ -89,15 +89,15 @@ public:
       	  }\
               }\
             }
      -      
      +
             //below types are in sync with rroot/ntuple.
      -      
      +
                  TOOLS_WROOT_NTUPLE_CREATE_COL(char)
             else TOOLS_WROOT_NTUPLE_CREATE_COL(short)
             else TOOLS_WROOT_NTUPLE_CREATE_COL(int)
             else TOOLS_WROOT_NTUPLE_CREATE_COL(float)
             else TOOLS_WROOT_NTUPLE_CREATE_COL(double)
      -      
      +
             else if((*it).cls_id()==_cid(std::string())) {
               std::string* user = (std::string*)(*it).user_obj();
               if(user) {
      @@ -116,7 +116,7 @@ public:
       	  }
               }
             }
      -      
      +
             else TOOLS_WROOT_NTUPLE_CREATE_VEC_COL(char)
             else TOOLS_WROOT_NTUPLE_CREATE_VEC_COL(short)
             else TOOLS_WROOT_NTUPLE_CREATE_VEC_COL(int)
      @@ -154,7 +154,7 @@ public:
               safe_clear(m_cols);
               safe_clear(m_branches);
               return;
      -      }      
      +      }
           }
       #undef TOOLS_WROOT_NTUPLE_CREATE_VEC_COL
       #undef TOOLS_WROOT_NTUPLE_CREATE_COL
      @@ -223,7 +223,7 @@ public:
           m_cols.push_back(col);
           return col;
         }
      -  
      +
         column_vector_string* create_column_vector_string(const std::string& a_name,
                                                           const std::vector& a_def,char a_sep) {
           if(find_named(m_cols,a_name)) return 0;
      @@ -279,7 +279,7 @@ public:
           if(!col) return 0;
           return id_cast >(*col);
         }
      -  
      +
         column_string_ref* find_column_string_ref(const std::string& a_name) {
           icol* col = find_named(m_cols,a_name);
           if(!col) return 0;
      @@ -324,7 +324,7 @@ public:
             a_out << " " << (*it)->name() << std::endl;
           }
         }
      -  
      +
         bool add_row() {
           if(m_cols.empty()) return false;
           tools_vforit(icol*,m_cols,it) (*it)->add();
      @@ -341,7 +341,7 @@ public:
             tools_vforit(icol*,m_cols,it) (*it)->set_basket_size(a_size);
           }
         }
      -  
      +
         ///////////////////////////////////////////////////////////////////////////
         /// for parallelization : /////////////////////////////////////////////////
         ///////////////////////////////////////////////////////////////////////////
      @@ -377,10 +377,10 @@ public:
             m_out << "tools::wroot::ntuple::mpi_add_basket : unpack(icol) failed."<< std::endl;
             return false;
           }
      -	
      -    if(m_row_wise) {    
      +
      +    if(m_row_wise) {
             if(!m_row_wise_branch) return false;
      -      
      +
             basket* basket = mpi_create_basket(m_out,a_impi,
                                                m_dir.file().byte_swap(),m_dir.seek_directory(),
                                                m_row_wise_branch->basket_size());
      @@ -399,13 +399,13 @@ public:
             delete basket;
             m_row_wise_branch->set_tot_bytes(m_row_wise_branch->tot_bytes()+add_bytes);
             m_row_wise_branch->set_zip_bytes(m_row_wise_branch->zip_bytes()+nout);
      -	  
      +
           } else {
             if(icol>=m_cols.size()) {
               m_out << "tools::wroot::ntuple::mpi_add_basket : column index "  << icol << " >= " << m_cols.size() << std::endl;
               return false;
             }
      -      
      +
             branch& _branch = m_cols[icol]->get_branch();
       
             basket* basket = mpi_create_basket(m_out,a_impi,
      @@ -429,7 +429,7 @@ public:
           }
           return true;
         }
      -  
      +
         bool mpi_add_baskets(impi& a_impi) { //column_wise && row_mode only.
           uint32 _icol = 0;
           tools_vforcit(icol*,m_cols,it) {
      @@ -466,9 +466,9 @@ public:
           }
           return true;
         }
      -  
      +
         bool mpi_end_fill(impi& a_impi) {
      -  
      +
       #define TOOLS_WROOT_NTUPLE_SET_LEAF_LENGTH_MAX(a__type) \
                 {leaf_ref* _mleaf_ = _mleaf?id_cast >(*_mleaf):0;\
                   if(_mleaf_) {\
      @@ -480,7 +480,7 @@ public:
                     _mleaf_->set_max(mx(_mx,_mleaf_->get_max()));\
                     set_done = true;\
                   }}
      -	
      +
       #define TOOLS_WROOT_NTUPLE_SET_LEAF_STD_VECTOR_LENGTH_MAX(a__type) \
                 {leaf_std_vector_ref* _mleaf_ = _mleaf?id_cast >(*_mleaf):0;\
                   if(_mleaf_) {\
      @@ -492,7 +492,7 @@ public:
                     _mleaf_->set_max(mx(_mx,_mleaf_->get_max()));\
                     set_done = true;\
                   }}
      -	  
      +
       #define TOOLS_WROOT_NTUPLE_SET_LEAF_STRING_LENGTH_MAX \
                  {leaf_string_ref* _mleaf_ = _mleaf?id_cast(*_mleaf):0;\
                   if(_mleaf_) {\
      @@ -504,43 +504,43 @@ public:
                     _mleaf_->set_max(mx(_mx,_mleaf_->get_max()));\
                     set_done = true;\
                   }}
      -	    
      +
           if(m_row_wise) {
             if(!m_row_wise_branch) return false;
      -      
      +
             tools_vforcit(base_leaf*,m_row_wise_branch->leaves(),mit) {
               base_leaf* _mleaf = *mit;
       
               bool set_done = false;
      -	  
      +
               TOOLS_WROOT_NTUPLE_SET_LEAF_LENGTH_MAX(char)
               TOOLS_WROOT_NTUPLE_SET_LEAF_LENGTH_MAX(short)
               TOOLS_WROOT_NTUPLE_SET_LEAF_LENGTH_MAX(int)
               TOOLS_WROOT_NTUPLE_SET_LEAF_LENGTH_MAX(float)
               TOOLS_WROOT_NTUPLE_SET_LEAF_LENGTH_MAX(double)
      -	    
      +
               TOOLS_WROOT_NTUPLE_SET_LEAF_STD_VECTOR_LENGTH_MAX(char)
               TOOLS_WROOT_NTUPLE_SET_LEAF_STD_VECTOR_LENGTH_MAX(short)
               TOOLS_WROOT_NTUPLE_SET_LEAF_STD_VECTOR_LENGTH_MAX(int)
               TOOLS_WROOT_NTUPLE_SET_LEAF_STD_VECTOR_LENGTH_MAX(float)
               TOOLS_WROOT_NTUPLE_SET_LEAF_STD_VECTOR_LENGTH_MAX(double)
      -	    
      +
               TOOLS_WROOT_NTUPLE_SET_LEAF_STRING_LENGTH_MAX
      -	      
      +
               if(!set_done) {
                 m_out << "tools::wroot::ntuple::mpi_end_fill :"
                       << " leaf " << _mleaf->name() << " with cid " << _mleaf->id_cls() << " not treated." << std::endl;
                 return false;
               }
             }
      -      
      +
           } else { // column wise :
             tools_vforcit(wroot::icol*,m_cols,it) {
               base_leaf* _mleaf = (*it)->get_leaf();
       
               bool set_done = false;
               TOOLS_WROOT_NTUPLE_SET_LEAF_STRING_LENGTH_MAX
      -	
      +
               if(!set_done) {
                 uint32 _len;
                 if(!a_impi.unpack(_len)) return false;
      @@ -549,7 +549,7 @@ public:
               }
             }
           }
      -	
      +
       #undef TOOLS_WROOT_NTUPLE_SET_LEAF_LENGTH_MAX
       #undef TOOLS_WROOT_NTUPLE_SET_LEAF_STD_VECTOR_LENGTH_MAX
       #undef TOOLS_WROOT_NTUPLE_SET_LEAF_STRING_LENGTH_MAX
      diff --git a/source/analysis/g4tools/include/tools/wroot/seek b/source/analysis/g4tools/include/tools/wroot/seek
      index df0689dd2b..3026333c47 100644
      --- a/source/analysis/g4tools/include/tools/wroot/seek
      +++ b/source/analysis/g4tools/include/tools/wroot/seek
      @@ -18,7 +18,7 @@ typedef int seek32;
       
       inline uint32 START_BIG_FILE() {return 2000000000;}
       
      -inline uint32 big_file_version_tag() {return 1000;}  
      +inline uint32 big_file_version_tag() {return 1000;}
       
       }}
       
      diff --git a/source/analysis/g4tools/include/tools/wroot/streamers b/source/analysis/g4tools/include/tools/wroot/streamers
      index d873005357..d123dca5b7 100644
      --- a/source/analysis/g4tools/include/tools/wroot/streamers
      +++ b/source/analysis/g4tools/include/tools/wroot/streamers
      @@ -76,7 +76,7 @@ inline bool axis_stream(buffer& a_buffer,
           if(!a_buffer.write(a_axis.lower_edge())) return false;
           if(!a_buffer.write(a_axis.upper_edge())) return false;
       
      -    // fXbins 
      +    // fXbins
           //if(a_axis.m_fixed) {
           //  std::vector v;
           //  ArrayT dummy(v);
      @@ -184,11 +184,11 @@ inline bool TH_write_1D(buffer& a_buffer,
           if(!a_buffer.write((double)a_h.get_in_range_Sw2())) return false; //idem
       
          {double value;
      -    a_h.get_ith_axis_Sxw(0,value);  
      +    a_h.get_ith_axis_Sxw(0,value);
           if(!a_buffer.write(value)) return false;}
       
          {double value;
      -    a_h.get_ith_axis_Sx2w(0,value);  
      +    a_h.get_ith_axis_Sx2w(0,value);
           if(!a_buffer.write(value)) return false;}
       
           if(!a_buffer.write((double)-1111)) return false; //fMaximum
      @@ -199,13 +199,13 @@ inline bool TH_write_1D(buffer& a_buffer,
       
           if(!a_buffer.write_array(a_bin_Sw2)) return false; //fSumw2 TArrayD
       
      -    // store annotation on fOption    
      +    // store annotation on fOption
           // but try to fool CERN-ROOT in order that it does not
           // understand fOption as.. CERN-ROOT options !
      -   //{std::string opt = " "+fAnnotation;   
      +   //{std::string opt = " "+fAnnotation;
          // opt[0] = 0; //awfull trick
          // if(!a_buffer.write(opt)) return false;} //TString fOption
      -   {std::string opt;   
      +   {std::string opt;
           if(!a_buffer.write(opt)) return false;} //TString fOption
       
           if(!List_empty_stream(a_buffer)) return false; //*TList fFunctions
      @@ -223,11 +223,11 @@ inline bool TH_write_2D(buffer& a_buffer,
         if(!a_buffer.write((double)1)) return false; //ScaleFactor
       
        {double value;
      -  a_h.get_ith_axis_Sxw(1,value);  
      +  a_h.get_ith_axis_Sxw(1,value);
         if(!a_buffer.write(value)) return false;}
       
        {double value;
      -  a_h.get_ith_axis_Sx2w(1,value);  
      +  a_h.get_ith_axis_Sx2w(1,value);
         if(!a_buffer.write(value)) return false;}
       
         if(!a_buffer.write((double)a_h.Sxyw())) return false; //Tsumwxy
      diff --git a/source/analysis/g4tools/include/tools/wroot/to b/source/analysis/g4tools/include/tools/wroot/to
      index aef885c2d9..7326fa5f7b 100644
      --- a/source/analysis/g4tools/include/tools/wroot/to
      +++ b/source/analysis/g4tools/include/tools/wroot/to
      @@ -17,9 +17,9 @@ inline bool to(directory& a_dir,const std::map& a_annot
         std::string sas;
         tools_mforcit(std::string,std::string,a_annotations,it) {
           if(it!=a_annotations.begin()) sas += "\n";
      -    sas += (*it).first;  
      +    sas += (*it).first;
           sas += "\n";
      -    sas += (*it).second;  
      +    sas += (*it).second;
         }
         std::string key_name = "annotations_"+a_histo_name;
         bufobj* bo = new bufobj(a_dir.file().out(),a_dir.file().byte_swap(),256,key_name,"annotations","TNamed");
      @@ -164,7 +164,7 @@ inline bool write_histos(directory& a_dir,const std::vector< std::pair readers;
      @@ -38,7 +38,7 @@ public:
         {
           add_default_readers();
         }
      -  virtual ~aidas(){ 
      +  virtual ~aidas(){
           m_objects.clear(); //it may delete histos, etc...
         }
       protected:
      @@ -212,26 +212,26 @@ protected:
         static raxml_out read_dps(tree& a_tree,std::ostream& a_out,bool a_verbose,void*) {
           std::string sname;
           a_tree.attribute_value(s_name(),sname);
      -  
      +
           if(a_verbose) {
      -      a_out << "tools::xml::aidas::read_dps :" 
      +      a_out << "tools::xml::aidas::read_dps :"
                   << " with name " << sout(sname)
                   << "..." << std::endl;
           }
       
           std::string spath;
           a_tree.attribute_value(s_path(),spath);
      -  
      +
           std::string stitle;
           a_tree.attribute_value(s_title(),stitle);
      -  
      +
           // Booking parameters :
           unsigned int dim = 0;
           if(!a_tree.attribute_value(s_dimension(),dim)) return raxml_out();
      -  
      +
           // Create a BatchLab::DataPointSet :
           histo::dps* dps = new histo::dps(stitle,dim);
      -  
      +
           // Data sub items :
          {looper _for(a_tree);
           while(tree* _tree = _for.next_tree()) {
      @@ -245,12 +245,12 @@ protected:
           std::string sclass = histo::dps::s_class();
       
           if(a_verbose) {
      -      a_out << "tools::xml::aidas::read_dps :" 
      +      a_out << "tools::xml::aidas::read_dps :"
                   << " with name " << sout(sname)
                   << " and title " << sout(stitle)
                   << " done." << std::endl;
           }
      -  
      +
           return raxml_out(hdl,sclass,spath,sname);
         }
       
      @@ -263,9 +263,9 @@ public: //used in BatchLab::XML_DataReader.
       
           std::string sname;
           a_tree.attribute_value(s_name(),sname);
      -  
      +
           if(a_verbose) {
      -      a_out << "tools::xml::aidas::read_histo :" 
      +      a_out << "tools::xml::aidas::read_histo :"
                   << " with name " << sout(sname)
                   << "..." << std::endl;
           }
      @@ -275,13 +275,13 @@ public: //used in BatchLab::XML_DataReader.
       
           std::string stitle;
           a_tree.attribute_value(s_title(),stitle);
      -  
      +
           // Booking parameters :
           std::vector bins(a_dim);
           std::vector mns(a_dim);
           std::vector mxs(a_dim);
           std::vector< std::vector > edges(a_dim);
      -  
      +
           // Jump in subitems to find axes items :
           int not_found = -1;
           unsigned int found = 0;
      @@ -314,7 +314,7 @@ public: //used in BatchLab::XML_DataReader.
               if(edges[iaxis].size()<=2) return raxml_out();
             }
           }
      -    
      +
           // Create a native histogram :
       
           base_handle* hdl = 0;
      @@ -330,7 +330,7 @@ public: //used in BatchLab::XML_DataReader.
       
               // Sub items :
               pd_data hd = histo->get_histo_data();
      -        if(hd.m_bin_number<=0) {delete histo;return raxml_out();}  
      +        if(hd.m_bin_number<=0) {delete histo;return raxml_out();}
       
              {looper _for(a_tree);
               while(tree* _tree = _for.next_tree()) {
      @@ -358,7 +358,7 @@ public: //used in BatchLab::XML_DataReader.
               }
       
               pd_data hd = histo->get_histo_data();
      -        if(hd.m_bin_number<=0) {delete histo;return raxml_out();}  
      +        if(hd.m_bin_number<=0) {delete histo;return raxml_out();}
       
              {looper _for(a_tree);
               while(tree* _tree = _for.next_tree()) {
      @@ -386,7 +386,7 @@ public: //used in BatchLab::XML_DataReader.
               }
       
               pd_data hd(histo->dac());
      -        if(hd.m_bin_number<=0) {delete histo;return raxml_out();}  
      +        if(hd.m_bin_number<=0) {delete histo;return raxml_out();}
       
              {looper _for(a_tree);
               while(tree* _tree = _for.next_tree()) {
      @@ -413,7 +413,7 @@ public: //used in BatchLab::XML_DataReader.
               }
       
               pd_data hd(histo->dac());
      -        if(hd.m_bin_number<=0) {delete histo;return raxml_out();}  
      +        if(hd.m_bin_number<=0) {delete histo;return raxml_out();}
       
              {looper _for(a_tree);
               while(tree* _tree = _for.next_tree()) {
      @@ -442,7 +442,7 @@ public: //used in BatchLab::XML_DataReader.
               }
       
               pd_data hd(histo->dac());
      -        if(hd.m_bin_number<=0) {delete histo;return raxml_out();}  
      +        if(hd.m_bin_number<=0) {delete histo;return raxml_out();}
       
              {looper _for(a_tree);
               while(tree* _tree = _for.next_tree()) {
      @@ -466,12 +466,12 @@ public: //used in BatchLab::XML_DataReader.
           if(!hdl) return raxml_out();
       
           if(a_verbose) {
      -      a_out << "tools::xml::aidas::read_histo :" 
      +      a_out << "tools::xml::aidas::read_histo :"
                   << " with name " << sout(sname)
                   << " and title " << sout(stitle)
                   << " done." << std::endl;
           }
      -  
      +
           return raxml_out(hdl,sclass,spath,sname);
         }
       
      @@ -481,7 +481,7 @@ public: //used in BatchLab::XML_DataReader.
           a_tree.attribute_value(s_name(),sname);
       
           if(a_verbose) {
      -      a_out << "tools::xml::aidas::read_cloud :" 
      +      a_out << "tools::xml::aidas::read_cloud :"
                   << " name " << sout(sname)
                   << "..." << std::endl;
           }
      @@ -517,7 +517,7 @@ public: //used in BatchLab::XML_DataReader.
                 return raxml_out();
               }
             }}
      -  
      +
             hdl = new handle(cloud);
             sclass = histo::c1d::s_class();
       
      @@ -533,7 +533,7 @@ public: //used in BatchLab::XML_DataReader.
                 return raxml_out();
               }
             }}
      -  
      +
             hdl = new handle(cloud);
             sclass = histo::c2d::s_class();
       
      @@ -549,15 +549,15 @@ public: //used in BatchLab::XML_DataReader.
                 return raxml_out();
               }
             }}
      -    
      +
             hdl = new handle(cloud);
             sclass = histo::c3d::s_class();
           }
      -  
      +
           if(!hdl) return raxml_out();
       
           if(a_verbose) {
      -      a_out << "tools::xml::aidas::read_cloud :" 
      +      a_out << "tools::xml::aidas::read_cloud :"
                   << " with name " << sout(sname)
                   << " and title " << sout(stitle)
                   << " done." << std::endl;
      @@ -572,7 +572,7 @@ protected:
         /// read histo ////////////////////////////////////////////////
         ///////////////////////////////////////////////////////////////
         static bool read_axis(
      -   tree& a_tree                      
      +   tree& a_tree
         ,unsigned int a_dim
         ,int& aAxis
         ,bn_t& aNumberOfBins
      @@ -589,27 +589,27 @@ protected:
           aMax = 0;
           aEdges.clear();
           aVariableBins = false;
      -  
      +
           const std::string& tagName = a_tree.tag_name();
      -  
      +
           std::string svalue;
      -  
      +
           if(tagName==s_axis()) {
      -   
      +
            {bn_t ival;
             if(!a_tree.attribute_value(s_numberOfBins(),svalue)) return false;
             if(!to(svalue,ival)) return false;
             aNumberOfBins = ival;}
      -  
      +
             if(!a_tree.attribute_value(s_min(),svalue)) return false;
             if(!to(svalue,aMin)) return false;
      -  
      +
             if(!a_tree.attribute_value(s_max(),svalue)) return false;
             if(!to(svalue,aMax)) return false;
      -  
      +
             if(!a_tree.attribute_value(s_direction(),svalue)) return false;
             if(!axis_index(a_dim,svalue,aAxis)) return false;
      -  
      +
             aEdges.push_back(aMin);
       
            {looper _for(a_tree);
      @@ -627,9 +627,9 @@ protected:
             if(aVariableBins) { // Variable bins histo.
               if(aEdges.size()!=aNumberOfBins+1) return false;
             }
      -  
      -    } 
      -  
      +
      +    }
      +
           return true;
         }
         static bool to_double(const std::string& a_s,double& a_v,std::ostream& a_out,const std::string& a_what) {
      @@ -646,20 +646,20 @@ protected:
       
         static bool read_bins(tree& a_tree,pd_data& aData,std::ostream& a_out,bool a_is_prof){
           const std::string& tagName = a_tree.tag_name();
      -  
      +
           std::string svalue;
      -  
      +
           if(tagName==s_annotation()) { //FIXME
      -  
      +
             return true;
      -   
      +
           } else if(tagName=="statistics") {
      -   
      +
             if(!a_tree.attribute_value(s_entries(),svalue)) return false;
             //unsigned int ival;
             //if(!to(svalue,ival)) return false;
             // aData.fEntries = ival;
      -  
      +
             unsigned int found = 0;
       
            {looper _for(a_tree);
      @@ -669,31 +669,31 @@ protected:
                 double mean,rms;
                 if(!_elem->attribute_value(s_mean(),svalue)) return false;
                 if(!to(svalue,mean)) return false;
      -            
      +
                 if(!_elem->attribute_value(s_rms(),svalue)) return false;
                 if(!to(svalue,rms)) return false;
      -            
      +
                 if(!_elem->attribute_value(s_direction(),svalue)) return false;
                 int iaxis;
                 if(!axis_index(aData.m_dimension,svalue,iaxis)) return false;
      -  
      +
                 //aData.m_axes[iaxis].fSxw = mean; //Temporarily put mean on fSxw.
                 //aData.m_axes[iaxis].fSx2w = rms; //Temporarily put mean on fSx2w.
      -  
      +
                 found++;
               }
             }}
       
             if(found!=aData.m_dimension) return false;
      -  
      +
             return true;
      -  
      +
           } else if(tagName==s_axis()) {
      -   
      +
             return true;
      -  
      -    } 
      -  
      +
      +    }
      +
           unsigned int dimension = 0;
           if(tagName==s_data1d()) {
             dimension = 1;
      @@ -702,21 +702,21 @@ protected:
           } else if(tagName==s_data3d()) {
             dimension = 3;
           }
      -  
      +
           if(dimension) {
      -  
      +
             if(dimension!=aData.m_dimension) return false;
      -  
      +
             std::string sbin;
             sprintf(sbin,32,"bin%dd",dimension);
      -  
      +
            {looper _for(a_tree);
             while(element* _elem = _for.next_element()) {
       
               if(_elem->name()==sbin) {
      -  
      +
                 std::vector is(dimension);
      -  
      +
                 unsigned int entries = 0;
                 double height = 0;
                 double error = 0;
      @@ -729,7 +729,7 @@ protected:
                 double weightedRmsY = 0;
                 double weightedRmsZ = 0;
                 double rms = 0;
      -  
      +
                 // Required :
                 if(!_elem->attribute_value(s_entries(),svalue)) {
                   a_out << "tools::xml::aidas::read_bins :"
      @@ -739,13 +739,13 @@ protected:
                   return false;
                 }
                 if(!to(svalue,entries)) {
      -            a_out << "tools::xml::aidas::read_bins :" 
      -              << " problem converting a entries attribute to an unsigned int." 
      +            a_out << "tools::xml::aidas::read_bins :"
      +              << " problem converting a entries attribute to an unsigned int."
                       << " Value was " << sout(svalue) << "."
                       << std::endl;
                   return false;
                 }
      -  
      +
                 // Optional :
                 bool height_given;
                 if(_elem->attribute_value(s_height(),svalue)) { //FIXME : optional ?
      @@ -753,13 +753,13 @@ protected:
                   height_given = true;
                 } else { // no "height".
                   // It is assumed that at fill time the weight
      -            // argument "w" had always been 1.          
      +            // argument "w" had always been 1.
                   //   w = 1
                   //   sw = entries*1 = entries
                   height = double(entries);
                   height_given = false;
                 }
      -          
      +
                 if(_elem->attribute_value(s_error(),svalue)) { //FIXME : optional ?
                   if(!to_double(svalue,error,a_out,s_error())) return false;
                 } else { // no "error"
      @@ -778,18 +778,18 @@ protected:
                     }
                   } else {
                     // It is assumed that at fill time the weight
      -              // argument "w" had always been 1.          
      +              // argument "w" had always been 1.
                     //   w = 1
                     //   sw2 = entries*(w*w) = entries;
                     //   error = sqrt(sw2) = sqrt(entries);
                     error = ::sqrt(::fabs(double(entries)));
                   }
                 }
      -  
      +
                 if(_elem->attribute_value(s_rms(),svalue)) {
                   if(!to_double(svalue,rms,a_out,s_rms())) return false;
                 }
      -  
      +
                 if(dimension==1) {
                   if(_elem->attribute_value(s_weightedMean(),svalue)) {
                     if(!to_double(svalue,weightedMean,a_out,s_weightedMean())) return false;
      @@ -830,7 +830,7 @@ protected:
                     if(!to_double(svalue,weightedRmsZ,a_out,s_weightedRmsZ())) return false;
                   }
                 }
      -            
      +
                {for(unsigned int index=0;indexattribute_value(s,svalue)) {
      -              a_out << "tools::xml::aidas::read_bins :" 
      +              a_out << "tools::xml::aidas::read_bins :"
                         << " a  has no " << s << std::endl;
                     return false;
                   }
      @@ -850,90 +850,90 @@ protected:
                   } else {
                     int ival = 0;
                     if(!to(svalue,ival)) {
      -                a_out << "tools::xml::aidas::read_bins :" 
      -                    << " problem converting binNum to an int." 
      +                a_out << "tools::xml::aidas::read_bins :"
      +                    << " problem converting binNum to an int."
                           << " Value was " << sout(svalue) << "."
                           << std::endl;
                       return false;
                     }
                     int ibin = ival;
      -              if( (ibin<0) || (ibin>=(int)aData.m_axes[index].bins()) ) { 
      -                a_out << "tools::xml::aidas::read_bins :" 
      -                    << " a binNum is out of range." 
      +              if( (ibin<0) || (ibin>=(int)aData.m_axes[index].bins()) ) {
      +                a_out << "tools::xml::aidas::read_bins :"
      +                    << " a binNum is out of range."
                           << std::endl;
                       return false;
                     }
                     is[index] = ibin;
                   }
                 }}
      -  
      +
                 // If we are here, then we have a valid bin :
                 bn_t offset;
                 histo::get_offset(aData.m_axes,is,offset);
                 aData.m_bin_entries[offset] = entries;
      -  
      +
                 if(!a_is_prof) {
      -  
      +
                   // From histo::base_histo, we have :
                   //  height = sw
                   //  error = sqrt(sw)
                   //  weightedMean = sxw/sw
                   //  weightedRms = sqrt(fabs(sx2w/sw - (sxw/sw)**2))
      -  
      +
                   double sw = height;
                   aData.m_bin_Sw[offset] = sw;
                   aData.m_bin_Sw2[offset] = error * error;
                   if(dimension==1) {
                     aData.m_bin_Sxw[offset][0] = weightedMean * sw;
      -              aData.m_bin_Sx2w[offset][0] = 
      +              aData.m_bin_Sx2w[offset][0] =
                       (weightedRms * weightedRms + weightedMean * weightedMean) * sw;
                   } else if(dimension==2){
                     // X
                     aData.m_bin_Sxw[offset][0] = weightedMeanX * sw;
      -              aData.m_bin_Sx2w[offset][0] = 
      +              aData.m_bin_Sx2w[offset][0] =
                       (weightedRmsX*weightedRmsX + weightedMeanX*weightedMeanX) * sw;
                     // Y :
                     aData.m_bin_Sxw[offset][1] = weightedMeanY * sw;
      -              aData.m_bin_Sx2w[offset][1] = 
      +              aData.m_bin_Sx2w[offset][1] =
                       (weightedRmsY*weightedRmsY + weightedMeanY*weightedMeanY) * sw;
                   } else if(dimension==3){
                     // X
                     aData.m_bin_Sxw[offset][0] = weightedMeanX * sw;
      -              aData.m_bin_Sx2w[offset][0] = 
      +              aData.m_bin_Sx2w[offset][0] =
                       (weightedRmsX*weightedRmsX + weightedMeanX*weightedMeanX) * sw;
                     // Y :
                     aData.m_bin_Sxw[offset][1] = weightedMeanY * sw;
      -              aData.m_bin_Sx2w[offset][1] = 
      +              aData.m_bin_Sx2w[offset][1] =
                       (weightedRmsY*weightedRmsY + weightedMeanY*weightedMeanY) * sw;
                     // Z :
                     aData.m_bin_Sxw[offset][2] = weightedMeanZ * sw;
      -              aData.m_bin_Sx2w[offset][2] = 
      +              aData.m_bin_Sx2w[offset][2] =
                       (weightedRmsZ*weightedRmsZ + weightedMeanZ*weightedMeanZ) * sw;
                   }
      -  
      +
                 } else { // Profile :
      -  
      +
                   // bin writing is :
                   // " height=" << sout(aObj.bin_height(aIndex))
                   // " error=" << sout(aObj.bin_error(aIndex))
                   // " weightedMean=" << sout(aObj.bin_mean(aIndex))
                   // " rms=" << sout(aObj.bin_rms_value(aIndex))
                   // " weightedRms=" << sout(bin_rms(aIndex));
      -  
      +
                   // From inlib profile, we have :
                   //  height = svw / sw
                   //  error = sqrt(fabs(sv2w/sw - (svw/sw)**2))/sqrt(sw)
                   //  rms = sqrt(fabs(sv2w/sw - (svw/sw)**2))
                   //  weightedMean = sxw/sw
                   //  weightedRms = sqrt(fabs(sx2w/sw - (sxw/sw)**2))
      -  
      +
                   // Then :
                   //  sw = (rms/error)**2
                   //  svw = sw * height
                   //  sv2w = sw * (rms**2 + height**2)
                   //  sxw = weightedMean * sw
                   //  sx2w = (weightedRms*weightedRms+weightedMean*weightedMean) * sw;
      -  
      +
                   double sw = 0;
                   if(error==0) {
                     // sv2w/sw = (svw/sw)**2
      @@ -950,19 +950,19 @@ protected:
                   aData.m_bin_Sw2[offset] = 0; //FIXME
                   if(dimension==1) {
                     aData.m_bin_Sxw[offset][0] = weightedMean * sw;
      -              aData.m_bin_Sx2w[offset][0] = 
      +              aData.m_bin_Sx2w[offset][0] =
                       (weightedRms * weightedRms + weightedMean * weightedMean) * sw;
                   } else if(dimension==2){
                     aData.m_bin_Sxw[offset][0] = weightedMeanX * sw;
                     aData.m_bin_Sxw[offset][1] = weightedMeanY * sw;
      -              aData.m_bin_Sx2w[offset][0] = 
      +              aData.m_bin_Sx2w[offset][0] =
                       (weightedRmsX*weightedRmsX + weightedMeanX*weightedMeanX) * sw;
      -              aData.m_bin_Sx2w[offset][1] = 
      +              aData.m_bin_Sx2w[offset][1] =
                       (weightedRmsY*weightedRmsY + weightedMeanY*weightedMeanY) * sw;
                   }
                   aData.m_bin_Svw[offset] = sw * height;
                   aData.m_bin_Sv2w[offset] = sw * (rms * rms + height * height);
      -    
      +
                 }
               }
             }}
      @@ -1030,10 +1030,10 @@ protected:
                                        std::vector& a_booking,
                                        std::ostream& a_out){
           a_found = false;
      -    a_booking.clear();  
      +    a_booking.clear();
       
           const std::string& tag_name = a_tree.tag_name();
      -  
      +
           if(tag_name=="columns") {
       
            {looper _for(a_tree);
      @@ -1042,14 +1042,14 @@ protected:
               if(_elem->name()=="column") {
                 std::string stype;
                 if(!_elem->attribute_value(s_type(),stype)) {
      -            a_out << "tools::xml::aidas::read_ntu_columns :" 
      +            a_out << "tools::xml::aidas::read_ntu_columns :"
                         << " atb type missing on "
                         << std::endl;
                   return false;
                 }
                 std::string sname;
                 if(!_elem->attribute_value(s_name(),sname)) {
      -            a_out << "tools::xml::aidas::read_ntu_columns :" 
      +            a_out << "tools::xml::aidas::read_ntu_columns :"
                         << " atb name missing on "
                         << std::endl;
                   return false;
      @@ -1068,34 +1068,34 @@ protected:
             }}
       
             a_found = true;
      -    } 
      +    }
           return true;
         }
      -  
      +
         static bool read_ntu_rows(tree& a_tree,
                                          aida::base_ntu& a_ntu,
                                          bool& a_found,
                                          std::ostream& a_out){
           a_found = false;
      -  
      +
           const std::string& tag_name = a_tree.tag_name();
      -  
      +
           if(tag_name==s_annotation()) { //FIXME
      -  
      +
             return true;
      -   
      +
           } else if(tag_name==s_columns()) {
      -  
      +
             return true;
      -  
      +
           } else if(tag_name==s_rows()) {
      -  
      +
             // Sub items :
            {looper _for(a_tree);
             while(tree* _tree = _for.next_tree()) {
       
               if(!read_ntu_rows(*_tree,a_ntu,a_found,a_out)) {
      -          a_out << "tools::xml::aidas::read_ntu_rows :" 
      +          a_out << "tools::xml::aidas::read_ntu_rows :"
                       << " sub read_ntu_rows failed."
                       << std::endl;
                 return false;
      @@ -1104,11 +1104,11 @@ protected:
             }}
       
             a_found = true;
      -  
      +
             return true;
      -  
      +
           } else if(tag_name==s_row()) {
      -   
      +
             const std::vector& cols = a_ntu.columns();
       
             std::vector intus;
      @@ -1122,7 +1122,7 @@ protected:
               }
               index++;
             }}
      -  
      +
             std::string svalue;
       
            {unsigned int icol = 0;
      @@ -1132,28 +1132,28 @@ protected:
       
               if(_elem->name()==s_entry()) {
                 if(!_elem->attribute_value(s_value(),svalue)) {
      -            a_out << "tools::xml::aidas::read_ntu_rows :" 
      +            a_out << "tools::xml::aidas::read_ntu_rows :"
                         << " can't get \"value\" attribute." << std::endl;
                   return false;
                 }
                 if(icol>=inot_ntus.size()) {
      -            a_out << "tools::xml::aidas::read_ntu_rows :" 
      +            a_out << "tools::xml::aidas::read_ntu_rows :"
                         << " too much ." << std::endl;
                   return false;
                 }
                 if(inot_ntus[icol]>=cols.size()) {
      -            a_out << "tools::xml::aidas::read_ntu_rows :" 
      +            a_out << "tools::xml::aidas::read_ntu_rows :"
                         << " too much ." << std::endl;
                   return false;
                 }
       
                 aida::base_col* bcol = cols[inot_ntus[icol]];
       
      -          aida::aida_base_col* abcol = 
      +          aida::aida_base_col* abcol =
                 safe_cast(*bcol);
       
                 if(!abcol->s_fill(svalue)) {
      -            a_out << "tools::xml::aidas::read_ntu_rows :" 
      +            a_out << "tools::xml::aidas::read_ntu_rows :"
                         << " can't get \"value\" attribute." << std::endl;
                   return false;
                 }
      @@ -1161,7 +1161,7 @@ protected:
               }
       
             }}}
      -  
      +
             // Sub items (entryITuple) :
            {unsigned int icol = 0;
       
      @@ -1172,31 +1172,31 @@ protected:
               if(  (_tag_name==s_entryITuple())  || //aida.dtd spec.
                    (_tag_name==s_entryTuple())   ){ //backward comp.
                 if(icol>=intus.size()) {
      -            a_out << "tools::xml::aidas::read_ntu_rows :" 
      +            a_out << "tools::xml::aidas::read_ntu_rows :"
                         << " too much ." << std::endl;
                   return false;
      -          }      
      +          }
                 if(intus[icol]>=cols.size()) {
      -            a_out << "tools::xml::aidas::read_ntu_rows :" 
      +            a_out << "tools::xml::aidas::read_ntu_rows :"
                         << " too much ." << std::endl;
                   return false;
      -          }      
      +          }
       
                 aida::base_col* bcol = cols[intus[icol]];
                 aida::aida_col_ntu* col_ntu = safe_cast(*bcol);
                 if(!col_ntu) {
      -            a_out << "tools::xml::aidas::read_ntu_rows :" 
      -                  << " can't cast to bcol_ntu." 
      +            a_out << "tools::xml::aidas::read_ntu_rows :"
      +                  << " can't cast to bcol_ntu."
                         << std::endl;
                   return false;
                 }
                 aida::base_ntu* ntu = col_ntu->get_to_fill();
                 if(!ntu) {
      -            a_out << "tools::xml::aidas::read_ntu_rows :" 
      -                  << " get_to_fill() returned null." 
      +            a_out << "tools::xml::aidas::read_ntu_rows :"
      +                  << " get_to_fill() returned null."
                         << std::endl;
                   return false;
      -          }         
      +          }
       
                {looper _for2(*_tree);
                 while(tree* _tree2 = _for2.next_tree()) {
      @@ -1208,30 +1208,30 @@ protected:
               }
       
             }}}
      -  
      +
             if(!a_ntu.add_row()) {
      -        a_out << "tools::xml::aidas::read_ntu_rows :" 
      +        a_out << "tools::xml::aidas::read_ntu_rows :"
                     << " can't add row to ntuple."
                     << std::endl;
               return false;
             }
      -  
      +
             return true;
      -  
      +
           }
      -  
      -    a_out << "tools::xml::aidas::read_ntu_rows :" 
      +
      +    a_out << "tools::xml::aidas::read_ntu_rows :"
                 << " unknown item class " << sout(tag_name) << std::endl;
      -  
      +
           return false;
         }
       
         static raxml_out read_ntu(tree& a_tree,std::ostream& a_out,bool a_verbose,void*){
           std::string sname;
           a_tree.attribute_value(s_name(),sname);
      -  
      +
           if(a_verbose) {
      -      a_out << "tools::xml::aidas::read_ntu :" 
      +      a_out << "tools::xml::aidas::read_ntu :"
                   << " with name " << sout(sname)
                   << "..." << std::endl;
           }
      @@ -1241,12 +1241,12 @@ protected:
       
           std::string stitle;
           a_tree.attribute_value(s_title(),stitle);
      -  
      +
           //FIXME annotation
      -  
      +
           // Booking parameters :
           std::vector booking;
      -  
      +
           // Jump in subitems to find columns items :
           bool found = false;
       
      @@ -1257,12 +1257,12 @@ protected:
           }}
       
           if(!found) {
      -      a_out << "tools::xml::aidas::read_ntu :" 
      +      a_out << "tools::xml::aidas::read_ntu :"
                   << " for ntuple name " << sout(sname)
                   << " unable to read columns..." << std::endl;
             return raxml_out();
           }
      -  
      +
           // Create a aida::ntuple :
           aida::ntuple* ntu = new aida::ntuple(a_out,stitle);
          {tools_vforcit(colbook,booking,it) {
      @@ -1277,7 +1277,7 @@ protected:
           }}
       
           if(!ntu->columns().size()) { //??? we could have an empty ntu !
      -      a_out << "tools::xml::aidas::read_ntu :" 
      +      a_out << "tools::xml::aidas::read_ntu :"
                   << " for ntuple name " << sout(sname)
                   << " unable to create a aida::ntuple." << std::endl;
             delete ntu;
      @@ -1291,7 +1291,7 @@ protected:
           while(tree* _tree = _for.next_tree()) {
       
             if(!read_ntu_rows(*_tree,*ntu,found,a_out)) {
      -        a_out << "tools::xml::aidas::read_ntu :" 
      +        a_out << "tools::xml::aidas::read_ntu :"
                     << " for ntuple name " << sout(sname)
                     << " unable to read rows." << std::endl;
               delete ntu;
      @@ -1300,13 +1300,13 @@ protected:
             if(found) break;
       
           }}
      -    
      +
           if(a_verbose) {
      -      a_out << "tools::xml::aidas::read_ntu :" 
      +      a_out << "tools::xml::aidas::read_ntu :"
                   << " name " << sout(sname)
                   << " done." << std::endl;
           }
      -    
      +
           std::string sclass = aida::ntuple::s_class();
           return raxml_out(new handle(ntu),sclass,spath,sname);
         }
      @@ -1325,9 +1325,9 @@ protected:
           if(tagName==s_annotation()) { //FIXME
       
             return true;
      - 
      +
           } else if(tagName==s_entries1d()) {
      - 
      +
            {looper _for(a_tree);
             while(element* _elem = _for.next_element()) {
               if(_elem->name()==s_entry1d()) {
      @@ -1341,9 +1341,9 @@ protected:
               }
             }}
             return true;
      -  
      +
           } else if(tagName==s_histogram1d()) {
      -  
      +
             raxml_out ro = read_h1d(a_tree,a_out,a_verbose,0);
             if(ro.cls()==histo::h1d::s_class()) {
               histo::h1d* h = (histo::h1d*)ro.object();
      @@ -1353,26 +1353,26 @@ protected:
               }
             }
             return true;
      -  
      +
           }
      -  
      +
           return false;
         }
      -  
      +
         static bool read_cloud_data(tree& a_tree,
                                     histo::c2d& aCloud,
                                     bool a_verbose,
                                     std::ostream& a_out){
           const std::string& tagName = a_tree.tag_name();
      -  
      +
           std::string svalue;
      -  
      +
           if(tagName==s_annotation()) { //FIXME
      -  
      +
             return true;
      -   
      +
           } else if(tagName==s_entries2d()) {
      -   
      +
            {looper _for(a_tree);
             while(element* _elem = _for.next_element()) {
               if(_elem->name()==s_entry2d()) {
      @@ -1388,9 +1388,9 @@ protected:
               }
             }}
             return true;
      -  
      +
           } else if(tagName==s_histogram2d()) {
      -  
      +
             raxml_out ro = read_h2d(a_tree,a_out,a_verbose,0);
             if(ro.cls()==histo::h2d::s_class()) {
               histo::h2d* h = (histo::h2d*)ro.object();
      @@ -1400,9 +1400,9 @@ protected:
               }
             }
             return true;
      -  
      +
           }
      -  
      +
           return false;
         }
       
      @@ -1411,15 +1411,15 @@ protected:
                                     bool a_verbose,
                                     std::ostream& a_out){
           const std::string& tagName = a_tree.tag_name();
      -  
      +
           std::string svalue;
      -  
      +
           if(tagName==s_annotation()) { //FIXME
      -  
      +
             return true;
      -   
      +
           } else if(tagName==s_entries3d()) {
      -   
      +
            {looper _for(a_tree);
             while(element* _elem = _for.next_element()) {
               if(_elem->name()==s_entry3d()) {
      @@ -1437,9 +1437,9 @@ protected:
               }
             }}
             return true;
      -  
      +
           } else if(tagName==s_histogram3d()) {
      -  
      +
             raxml_out ro = read_h3d(a_tree,a_out,a_verbose,0);
             if(ro.cls()==histo::h3d::s_class()) {
               histo::h3d* h = (histo::h3d*)ro.object();
      @@ -1449,25 +1449,25 @@ protected:
               }
             }
             return true;
      -  
      +
           }
      -  
      +
           return false;
         }
      -  
      +
         static bool read_dps_data(tree& a_tree,histo::dps& a_dps){
           const std::string& tagName = a_tree.tag_name();
       
           std::string svalue;
       
           if(tagName==s_annotation()) { //FIXME
      -  
      +
             return true;
      -   
      +
           } else if(tagName==s_dataPoint()) {
      -   
      +
             histo::data_point& point = a_dps.add_point();
      -  
      +
             unsigned int coord = 0;
       
            {looper _for(a_tree);
      @@ -1484,19 +1484,19 @@ protected:
                 if(_elem->attribute_value(s_errorMinus(),svalue)) {
                   if(!to(svalue,errorMinus)) return false;
                 }
      -  
      +
                 histo::measurement& m = point.coordinate(coord);
                 m.set_value(value);
                 m.set_error_plus(errorPlus);
                 m.set_error_minus(errorMinus);
      -  
      +
                 coord++;
               }
             }}
             return true;
      -  
      +
           }
      -  
      +
           return false;
         }
       
      diff --git a/source/analysis/g4tools/include/tools/xml/element b/source/analysis/g4tools/include/tools/xml/element
      index dc91fe0bd6..6f2cacf9f7 100644
      --- a/source/analysis/g4tools/include/tools/xml/element
      +++ b/source/analysis/g4tools/include/tools/xml/element
      @@ -43,7 +43,7 @@ public:
           mem::increment(s_class().c_str());
       #endif
           m_name = a_name;
      -    m_atbs = a_atbs; 
      +    m_atbs = a_atbs;
           m_value = a_value;
         }
         virtual ~element(){
      @@ -58,7 +58,7 @@ public:
           mem::increment(s_class().c_str());
       #endif
           m_name = a_from.m_name;
      -    m_atbs = a_from.m_atbs; 
      +    m_atbs = a_from.m_atbs;
           m_value = a_from.m_value;
         }
         element& operator=(const element& a_from) {
      @@ -102,7 +102,7 @@ public:
           return to(sv,a_value);
         }
       
      -  
      +
         bool set_attribute_value(const std::string& a_atb,const std::string& a_value) {
           tools_vforit(atb,m_atbs,it) {
             if((*it).first==a_atb) {
      @@ -120,7 +120,7 @@ public:
           for(it=m_atbs.begin();it!=m_atbs.end();) {
             if((*it).first==a_atb) {
               it = m_atbs.erase(it);
      -      } else { 
      +      } else {
               ++it;
             }
           }
      @@ -133,7 +133,7 @@ public:
           }
           replace_(m_value,a_old,a_new);
         }
      -  
      +
       protected:
         std::string m_name;
         std::vector m_atbs;
      diff --git a/source/analysis/g4tools/include/tools/xml/loader b/source/analysis/g4tools/include/tools/xml/loader
      index cd215e363e..a155f5a880 100644
      --- a/source/analysis/g4tools/include/tools/xml/loader
      +++ b/source/analysis/g4tools/include/tools/xml/loader
      @@ -62,7 +62,7 @@ public:
           tools::mem::increment(s_class().c_str());
       #endif
         }
      -  
      +
         virtual ~loader(){
           delete m_compressed_reader;
           clear();
      @@ -137,7 +137,7 @@ public:
           if(m_current) m_current->set_file(a_file);
           return true;
         }
      -  
      +
         bool load_string(const std::string& a_string){
           clear();
           if(!parse_buffer(a_string.size(),a_string.c_str(),
      @@ -149,7 +149,7 @@ public:
           }
           return true;
         }
      -  
      +
         bool load_buffer(size_t aSize,const char* aBuffer){
           clear();
           if(!parse_buffer(aSize,aBuffer,
      @@ -161,7 +161,7 @@ public:
           }
           return true;
         }
      -  
      +
         const tools::xml::tree* top_item() const {return m_current;}
       
         tools::xml::tree* top_item(){return m_current;}
      @@ -175,11 +175,11 @@ public:
           }
           return false;
         }
      -  
      -protected:  
      +
      +protected:
         void clear(){
           // In case of problem, deleting m_current is not sufficient.
      -    delete m_top; 
      +    delete m_top;
           m_top = 0;
           m_current = 0;
         }
      @@ -213,11 +213,11 @@ protected:
             size_t len = tools::mn(l,BUFSIZ); //BUFSIZ in cstdio
             done = len < BUFSIZ ? 1 : 0;
             if(XML_Parse(_parser, buf, (int)len, done)==XML_STATUS_ERROR) {
      -        m_out << "parse_buffer :" 
      -            << " " << XML_ErrorString(XML_GetErrorCode(_parser)) 
      -            << " at line " << (int)XML_GetCurrentLineNumber(_parser) 
      +        m_out << "parse_buffer :"
      +            << " " << XML_ErrorString(XML_GetErrorCode(_parser))
      +            << " at line " << (int)XML_GetCurrentLineNumber(_parser)
                   << " at byte index " << (int)XML_GetCurrentByteIndex(_parser)
      -            << std::endl; 
      +            << std::endl;
              {XML_Index pos = XML_GetCurrentByteIndex(_parser);
               XML_Index pmn = tools::mx(pos-10,0);
               XML_Index pmx = tools::mn(pos+10,XML_Index(aSize)-1);
      @@ -239,20 +239,20 @@ protected:
           XML_ParserFree(_parser);
           return true;
         }
      -  
      +
         bool parse_file(const std::string& a_file,
                         XML_StartElementHandler a_start,XML_EndElementHandler a_end,
                         void* a_tag,bool a_compressed){
           if(m_verbose) {
      -      m_out << "parse_file :" 
      +      m_out << "parse_file :"
                   << " parse file " << tools::sout(a_file) << "..." << std::endl;
           }
           m_errors = 0;
      -  
      +
           bool use_zlib = false;
           if(a_compressed) {
             if(m_verbose) {
      -        m_out << "parse_file :" 
      +        m_out << "parse_file :"
                     << " uncompress requested for file "
                     << tools::sout(a_file) << "."
                     << std::endl;
      @@ -289,11 +289,11 @@ protected:
                   << " can't open file " << a_file << std::endl;
             if(delete_freader) delete freader;
             return false;
      -    } 
      -  
      +    }
      +
           m_depth = 0;
           m_abort = false;
      -  
      +
       #ifdef TOOLS_MEM
           XML_Memory_Handling_Suite mem;
           mem.malloc_fcn = xml_malloc;
      @@ -309,8 +309,8 @@ protected:
           XML_SetCharacterDataHandler(_parser,(XML_CharacterDataHandler)character_data_handler);
           //XML_SetProcessingInstructionHandler(_parser,
           //      processingInstructionHandler);
      -  
      -  
      +
      +
           //char buf[1024 * BUFSIZ];
           char buf[BUFSIZ];
           int done = 0;
      @@ -324,9 +324,9 @@ protected:
             }
             done = len < sizeof(buf) ? 1 : 0;
             if(XML_Parse(_parser, buf, (int)len, done)==XML_STATUS_ERROR) {
      -        m_out << "parse_file :" 
      +        m_out << "parse_file :"
                   << " in file " << tools::sout(a_file)
      -            << " " << XML_ErrorString(XML_GetErrorCode(_parser)) 
      +            << " " << XML_ErrorString(XML_GetErrorCode(_parser))
                   << " at line " << (int)XML_GetCurrentLineNumber(_parser)
                   << std::endl;
               XML_ParserFree(_parser);
      @@ -344,7 +344,7 @@ protected:
           XML_ParserFree(_parser);
           freader->close();
           if(m_verbose) {
      -      m_out << "parse_file :" 
      +      m_out << "parse_file :"
                 << " parse file " << tools::sout(a_file) << " done." << std::endl;
           }
           if(delete_freader) delete freader;
      @@ -363,7 +363,7 @@ protected:
               s[count] = *p;
               count++;
             }
      -    }  
      +    }
           if(count) {
             s.resize(count);
             This->m_value += s;
      @@ -373,139 +373,139 @@ protected:
         static void start_element(void* aUserData,const XML_Char* a_name,const XML_Char** a_atbs){
           loader* This = (loader*)aUserData;
           if(This->m_abort) return; //Do nothing.
      -  
      +
           This->m_depth++;
           This->m_value = "";
      -  
      +
           std::string name = a_name; //Can't be empty
           if(This->is_tag(name)) {
      -  
      +
             if(!This->m_current) {
               if(This->m_depth==1) {
                 // Ok. Head.
               } else {
      -          This->m_out << "start_element :" 
      +          This->m_out << "start_element :"
                     << " no tag with a depth of " << This->m_depth
      -              << std::endl; 
      +              << std::endl;
                 This->m_abort = true;
                 return;
               }
             } else {
               int delta = This->m_current->depth() - This->m_depth;
               if(delta>=1) {
      -          This->m_out << "start_element :" 
      -              << " for element " << tools::sout(name) 
      +          This->m_out << "start_element :"
      +              << " for element " << tools::sout(name)
                     << " tag with a delta depth of " << delta
      -              << std::endl; 
      +              << std::endl;
                 This->m_abort = true;
                 return;
               }
             }
      -  
      +
             std::vector atbs;
            {const XML_Char** a_atts = a_atbs;
             while((*a_atts)&&(*(a_atts+1))) {
               atbs.push_back(tools::xml::tree::atb(*a_atts,*(a_atts+1)));
               a_atts+=2;
             }}
      -  
      +
             tools::xml::tree* parent = This->m_current;
             tools::xml::tree* _tree = This->m_factory.create(name,atbs,parent);
             if(!_tree) {
      -        This->m_out << "start_element :" 
      -            << " can't create a tree for tag " << tools::sout(name) 
      -            << std::endl; 
      +        This->m_out << "start_element :"
      +            << " can't create a tree for tag " << tools::sout(name)
      +            << std::endl;
               This->m_abort = true;
               return;
             }
      -  
      +
             //out << "start_element :" << std::endl;
             //_tree->print_xml(*(This->m_printer),"debug : ");
      -  
      +
             if(parent) parent->add_child(_tree);
       
       /*
             if(This->m_current && !This->m_current->parent()) {
      -        This->m_out << "start_element :" 
      +        This->m_out << "start_element :"
                   << " warning : current tree without parent."
                   << " Potential mem leak."
      -            << std::endl; 
      +            << std::endl;
             }
       */
      -  
      +
             This->m_current = _tree;
             _tree->set_depth(This->m_depth); // Internal only.
      -  
      +
             if(!This->m_top) This->m_top = _tree;
      -  
      +
           } else {
      -  
      +
             if(!This->m_current) {
      -  
      +
               // Can't be in a non-tag without a tag !
      -        This->m_out << "start_element :" 
      -            << " for element " << tools::sout(name) 
      +        This->m_out << "start_element :"
      +            << " for element " << tools::sout(name)
                   << " non-tag without some parent tag."
      -            << std::endl; 
      +            << std::endl;
               This->m_abort = true;
               return;
      -  
      +
             } else {
      -  
      +
               int delta =  This->m_depth - This->m_current->depth();
               if(delta>1) {
      -  
      -          This->m_out << "start_element :" 
      -              << " for element " << tools::sout(name) 
      +
      +          This->m_out << "start_element :"
      +              << " for element " << tools::sout(name)
                     << " grand child of a tag."
      -              << std::endl; 
      +              << std::endl;
                 This->m_abort = true;
                 return;
      -  
      +
               } else if(delta==1) { //ok
      -  
      +
                 This->m_atbs.clear();
                {const XML_Char** a_atts = a_atbs;
                 while((*a_atts)&&(*(a_atts+1))) {
                   This->m_atbs.push_back(tools::xml::tree::atb(*a_atts,*(a_atts+1)));
                   a_atts+=2;
                 }}
      -  
      +
               } else {
      -  
      -          This->m_out << "start_element :" 
      -              << " for element " << tools::sout(name) 
      +
      +          This->m_out << "start_element :"
      +              << " for element " << tools::sout(name)
                     << " non-tag with a delta depth of " << delta
      -              << std::endl; 
      +              << std::endl;
                 This->m_abort = true;
                 return;
      -  
      +
               }
             }
      -  
      +
           }
         }
      -  
      +
       
         static void end_element(void* aUserData,const XML_Char* a_name){
           loader* This = (loader*)aUserData;
           if(This->m_abort) return; //Do nothing.
      -  
      +
           if(This->m_current) {
      -  
      +
             tools::xml::tree* tr = This->m_current;
             int delta = This->m_depth - tr->depth();
             if(delta==0) { //Back to a tag :
      -        
      +
               tools::xml::tree* parent = tr->parent();
      -  
      +
               bool keep = false;
               bool cont = This->visit_end_element(*tr,keep);
               if(keep) {
                 if(parent) {
       /*
                   if(!This->m_current->parent()) {
      -              This->m_out << "end_element :" 
      +              This->m_out << "end_element :"
                         << " warning : current tree without parent (1)."
                         << " Potential mem leak."
                         << std::endl;
      @@ -516,16 +516,16 @@ protected:
               } else {
                 //FIXME : the top could be recreated !
                 if(This->m_top==tr) This->m_top = 0;
      -  
      +
                 if(parent) {
                   parent->remove_child(tr); //delete the tr
                 } else {
                   delete tr;
                 }
      -  
      +
       /*
                 if(!This->m_current->parent()) {
      -            This->m_out << "end_element :" 
      +            This->m_out << "end_element :"
                          << " warning : current tree without parent (2)."
                          << " Potential mem leak."
                          << std::endl;
      @@ -534,28 +534,28 @@ protected:
       
                 This->m_current = parent; //parent could be 0 : ok.
               }
      -  
      +
               if(!cont) This->m_abort = true;
      -  
      +
             } else if(delta==1) { //Back to a child of tag :
      -  
      +
               //FIXME : correct m_value ? (Can we pick the one of a sub item ?)
      -        tr->add_element(std::string(a_name),This->m_atbs,This->m_value); 
      +        tr->add_element(std::string(a_name),This->m_atbs,This->m_value);
               //This->m_value = "";
      -  
      +
             } else {
      -  
      -        This->m_out << "end_element :" 
      -            << " problem for element " << tools::sout(std::string(a_name)) 
      +
      +        This->m_out << "end_element :"
      +            << " problem for element " << tools::sout(std::string(a_name))
                   << " : delta depth of " << delta
      -            << std::endl; 
      +            << std::endl;
               This->m_abort = true;
      -  
      +
             }
      -  
      +
           }
      -  
      -  
      +
      +
           This->m_depth--;
         }
       
      diff --git a/source/analysis/g4tools/include/tools/xml/styles b/source/analysis/g4tools/include/tools/xml/styles
      index 5cd997ef28..6477f21d4c 100644
      --- a/source/analysis/g4tools/include/tools/xml/styles
      +++ b/source/analysis/g4tools/include/tools/xml/styles
      @@ -36,7 +36,7 @@ public:
       
         const sg::cmaps_t& cmaps() const {return m_cmaps;}
         sg::cmaps_t& cmaps() {return m_cmaps;}
      -  
      +
         typedef std::pair style_item_t;
         typedef std::vector style_t;
         typedef std::pair named_style_t;
      @@ -118,7 +118,7 @@ public:
           std::map::const_iterator it = m_styles.find(a_style);
           if(it==m_styles.end()) {a_v.clear();return false;}
           const style_t& sty = (*it).second;
      -    if(!find(sty,a_key,a_v)) {a_v.clear();return false;}   
      +    if(!find(sty,a_key,a_v)) {a_v.clear();return false;}
           return true;
         }
       */
      @@ -143,7 +143,7 @@ public:
                   << " in style " << sout(a_msg) << "."
                   << " can't convert " << sout(_s) << " to value."
                   << std::endl;
      -      return false;   
      +      return false;
           }
           a_v = v;
           return true;
      @@ -229,7 +229,7 @@ public:
                   << " in style " << sout(a_msg) << "."
                   << " can't convert " << sout(s) << " to bool."
                   << std::endl;
      -      return false;   
      +      return false;
           }
           a_v = v;
           return true;
      @@ -255,7 +255,7 @@ public:
       
         // for plotter :
         template  //T = [style,text_style,line_style]
      -  bool res_sg_style(const std::string& a_style,T& a_sg_style) const {   
      +  bool res_sg_style(const std::string& a_style,T& a_sg_style) const {
           //NOTE : a_sg_style is changed according to what is found.
           //       Then it is not fully reset by this method.
           const style_t* sty = find_style(a_style);
      @@ -373,7 +373,7 @@ inline void load_style(styles& a_styles,const tree& a_tree) {
                 << "  -->
           
       
           
      @@ -82,7 +82,8 @@
             ROOT/grey19
             0.015 
             black
      -      arialbd.ttf
      + 
      +      roboto_bold.ttf
             cw
             true
           
      @@ -95,7 +96,8 @@
             ROOT/grey19
             0.015 
             black
      -      arialbd.ttf
      + 
      +      roboto_bold.ttf
             cw
             true
             ROOT 
      @@ -127,10 +129,11 @@
             black
             1
           
      -    
      @@ -138,14 +141,16 @@
             true
             black
             0.6
      -      arialbd.ttf 
      +   
      +      roboto_bold.ttf
             cw
             true
           
           
      @@ -169,10 +174,11 @@
             black
             1
           
      -    
      @@ -180,14 +186,16 @@
             true
             black
             0.6
      -      arialbd.ttf 
      +   
      +      roboto_bold.ttf
             cw
             true
           
           
      @@ -204,7 +212,7 @@
             black
             1
           
      -    
      @@ -236,10 +244,11 @@
             black
             1
           
      -    
      @@ -247,14 +256,16 @@
             true
             black
             0.6
      -      arialbd.ttf 
      +   
      +      roboto_bold.ttf
             cw
             true
           
           
      @@ -313,46 +324,53 @@
       
           
       
           
      -    
       
           
      -    
       
           
      -    
      diff --git a/source/analysis/g4tools/include/tools/xml/wrap_viewplot_fonts_google_style b/source/analysis/g4tools/include/tools/xml/wrap_viewplot_fonts_google_style
      new file mode 100644
      index 0000000000..a3d8ab3a6f
      --- /dev/null
      +++ b/source/analysis/g4tools/include/tools/xml/wrap_viewplot_fonts_google_style
      @@ -0,0 +1,811 @@
      +#ifndef wrap_viewplot_fonts_google_style
      +#define wrap_viewplot_fonts_google_style
      +
      +//
      +//  This file had been produced automatically
      +// by the inlib/wrap program from the file :
      +//    viewplot_fonts_google.style
      +//
      +
      +inline const char** viewplot_fonts_google_style(unsigned int& a_linen){
      +  static const char _0[] = "";
      +  static const char _1[] = "";
      +  static const char _2[] = "  ";
      +  static const char _3[] = "  ";
      +  static const char _4[] = "  ";
      +  static const char _5[] = "  ";
      +  static const char _8[] = "";
      +  static const char _9[] = "  ";
      +  static const char _10[] = "  ";
      +  static const char _11[] = "  ";
      +  static const char _12[] = "  ";
      +  static const char _13[] = "    ";
      +  static const char _14[] = "    ";
      +  static const char _42[] = "    ";
      +  static const char _68[] = "";
      +  static const char _69[] = "";
      +  static const char _70[] = "    ";
      +  static const char _74[] = "";
      +  static const char _75[] = "    ";
      +  static const char _76[] = "    ";
      +  static const char _79[] = "    ";
      +  static const char _89[] = "";
      +  static const char _90[] = "    0.35";
      +  static const char _91[] = "    0.01 ";
      +  static const char _92[] = "    0.005 ";
      +  static const char _93[] = "    ";
      +  static const char _104[] = "";
      +  static const char _105[] = "    ";
      +  static const char _111[] = "";
      +  static const char _112[] = "    ";
      +  static const char _123[] = "    ";
      +  static const char _127[] = "    ";
      +  static const char _131[] = "    ";
      +  static const char _139[] = "    ";
      +  static const char _148[] = "    ";
      +  static const char _156[] = "";
      +  static const char _157[] = "    ";
      +  static const char _168[] = "    ";
      +  static const char _172[] = "    ";
      +  static const char _176[] = "    ";
      +  static const char _184[] = "    ";
      +  static const char _193[] = "    ";
      +  static const char _201[] = "";
      +  static const char _202[] = "    ";
      +  static const char _206[] = "    ";
      +  static const char _210[] = "    ";
      +  static const char _214[] = "    ";
      +  static const char _218[] = "    ";
      +  static const char _222[] = "    ";
      +  static const char _226[] = "";
      +  static const char _227[] = "    ";
      +  static const char _238[] = "    ";
      +  static const char _242[] = "    ";
      +  static const char _246[] = "    ";
      +  static const char _254[] = "    ";
      +  static const char _263[] = "    ";
      +  static const char _271[] = "";
      +  static const char _272[] = "";
      +  static const char _273[] = "    ";
      +  static const char _279[] = "";
      +  static const char _280[] = "    ";
      +  static const char _286[] = "  ";
      +  static const char _287[] = "";
      +  static const char _288[] = "  ";
      +  static const char _289[] = "    0.05";
      +  static const char _290[] = "    0.12";
      +  static const char _291[] = "    0.16";
      +  static const char _292[] = "    0.16";
      +  static const char _293[] = "    0.16";
      +  static const char _294[] = "    0.1";
      +  static const char _295[] = "    0.03";
      +  static const char _296[] = "";
      +  static const char _297[] = "";
      +  static const char _298[] = "    ";
      +  static const char _301[] = "";
      +  static const char _302[] = "    ";
      +  static const char _305[] = "";
      +  static const char _306[] = "    ";
      +  static const char _309[] = "";
      +  static const char _310[] = "    ";
      +  static const char _317[] = "    ";
      +  static const char _323[] = "";
      +  static const char _324[] = "    ";
      +  static const char _331[] = "";
      +  static const char _332[] = "    ";
      +  static const char _339[] = "    ";
      +  static const char _346[] = "";
      +  static const char _347[] = "    ";
      +  static const char _354[] = "    ";
      +  static const char _361[] = "";
      +  static const char _362[] = "    ";
      +  static const char _369[] = "    ";
      +  static const char _376[] = "";
      +  static const char _377[] = "    ";
      +  static const char _380[] = "";
      +  static const char _381[] = "    ";
      +  static const char _387[] = "";
      +  static const char _388[] = "    ";
      +  static const char _394[] = "  ";
      +  static const char _395[] = "";
      +  static const char _396[] = "";
      +  static const char* _lines[] = {
      +_0
      +,_1
      +,_2
      +,_3
      +,_4
      +,_5
      +,_6
      +,_7
      +,_8
      +,_9
      +,_10
      +,_11
      +,_12
      +,_13
      +,_14
      +,_15
      +,_16
      +,_17
      +,_18
      +,_19
      +,_20
      +,_21
      +,_22
      +,_23
      +,_24
      +,_25
      +,_26
      +,_27
      +,_28
      +,_29
      +,_30
      +,_31
      +,_32
      +,_33
      +,_34
      +,_35
      +,_36
      +,_37
      +,_38
      +,_39
      +,_40
      +,_41
      +,_42
      +,_43
      +,_44
      +,_45
      +,_46
      +,_47
      +,_48
      +,_49
      +,_50
      +,_51
      +,_52
      +,_53
      +,_54
      +,_55
      +,_56
      +,_57
      +,_58
      +,_59
      +,_60
      +,_61
      +,_62
      +,_63
      +,_64
      +,_65
      +,_66
      +,_67
      +,_68
      +,_69
      +,_70
      +,_71
      +,_72
      +,_73
      +,_74
      +,_75
      +,_76
      +,_77
      +,_78
      +,_79
      +,_80
      +,_81
      +,_82
      +,_83
      +,_84
      +,_85
      +,_86
      +,_87
      +,_88
      +,_89
      +,_90
      +,_91
      +,_92
      +,_93
      +,_94
      +,_95
      +,_96
      +,_97
      +,_98
      +,_99
      +,_100
      +,_101
      +,_102
      +,_103
      +,_104
      +,_105
      +,_106
      +,_107
      +,_108
      +,_109
      +,_110
      +,_111
      +,_112
      +,_113
      +,_114
      +,_115
      +,_116
      +,_117
      +,_118
      +,_119
      +,_120
      +,_121
      +,_122
      +,_123
      +,_124
      +,_125
      +,_126
      +,_127
      +,_128
      +,_129
      +,_130
      +,_131
      +,_132
      +,_133
      +,_134
      +,_135
      +,_136
      +,_137
      +,_138
      +,_139
      +,_140
      +,_141
      +,_142
      +,_143
      +,_144
      +,_145
      +,_146
      +,_147
      +,_148
      +,_149
      +,_150
      +,_151
      +,_152
      +,_153
      +,_154
      +,_155
      +,_156
      +,_157
      +,_158
      +,_159
      +,_160
      +,_161
      +,_162
      +,_163
      +,_164
      +,_165
      +,_166
      +,_167
      +,_168
      +,_169
      +,_170
      +,_171
      +,_172
      +,_173
      +,_174
      +,_175
      +,_176
      +,_177
      +,_178
      +,_179
      +,_180
      +,_181
      +,_182
      +,_183
      +,_184
      +,_185
      +,_186
      +,_187
      +,_188
      +,_189
      +,_190
      +,_191
      +,_192
      +,_193
      +,_194
      +,_195
      +,_196
      +,_197
      +,_198
      +,_199
      +,_200
      +,_201
      +,_202
      +,_203
      +,_204
      +,_205
      +,_206
      +,_207
      +,_208
      +,_209
      +,_210
      +,_211
      +,_212
      +,_213
      +,_214
      +,_215
      +,_216
      +,_217
      +,_218
      +,_219
      +,_220
      +,_221
      +,_222
      +,_223
      +,_224
      +,_225
      +,_226
      +,_227
      +,_228
      +,_229
      +,_230
      +,_231
      +,_232
      +,_233
      +,_234
      +,_235
      +,_236
      +,_237
      +,_238
      +,_239
      +,_240
      +,_241
      +,_242
      +,_243
      +,_244
      +,_245
      +,_246
      +,_247
      +,_248
      +,_249
      +,_250
      +,_251
      +,_252
      +,_253
      +,_254
      +,_255
      +,_256
      +,_257
      +,_258
      +,_259
      +,_260
      +,_261
      +,_262
      +,_263
      +,_264
      +,_265
      +,_266
      +,_267
      +,_268
      +,_269
      +,_270
      +,_271
      +,_272
      +,_273
      +,_274
      +,_275
      +,_276
      +,_277
      +,_278
      +,_279
      +,_280
      +,_281
      +,_282
      +,_283
      +,_284
      +,_285
      +,_286
      +,_287
      +,_288
      +,_289
      +,_290
      +,_291
      +,_292
      +,_293
      +,_294
      +,_295
      +,_296
      +,_297
      +,_298
      +,_299
      +,_300
      +,_301
      +,_302
      +,_303
      +,_304
      +,_305
      +,_306
      +,_307
      +,_308
      +,_309
      +,_310
      +,_311
      +,_312
      +,_313
      +,_314
      +,_315
      +,_316
      +,_317
      +,_318
      +,_319
      +,_320
      +,_321
      +,_322
      +,_323
      +,_324
      +,_325
      +,_326
      +,_327
      +,_328
      +,_329
      +,_330
      +,_331
      +,_332
      +,_333
      +,_334
      +,_335
      +,_336
      +,_337
      +,_338
      +,_339
      +,_340
      +,_341
      +,_342
      +,_343
      +,_344
      +,_345
      +,_346
      +,_347
      +,_348
      +,_349
      +,_350
      +,_351
      +,_352
      +,_353
      +,_354
      +,_355
      +,_356
      +,_357
      +,_358
      +,_359
      +,_360
      +,_361
      +,_362
      +,_363
      +,_364
      +,_365
      +,_366
      +,_367
      +,_368
      +,_369
      +,_370
      +,_371
      +,_372
      +,_373
      +,_374
      +,_375
      +,_376
      +,_377
      +,_378
      +,_379
      +,_380
      +,_381
      +,_382
      +,_383
      +,_384
      +,_385
      +,_386
      +,_387
      +,_388
      +,_389
      +,_390
      +,_391
      +,_392
      +,_393
      +,_394
      +,_395
      +,_396
      +};
      + a_linen = 397;
      + return _lines;
      +}
      +
      +#endif
      diff --git a/source/analysis/g4tools/include/tools/xml/wrap_viewplot_style b/source/analysis/g4tools/include/tools/xml/wrap_viewplot_style
      deleted file mode 100644
      index 59641fe20f..0000000000
      --- a/source/analysis/g4tools/include/tools/xml/wrap_viewplot_style
      +++ /dev/null
      @@ -1,775 +0,0 @@
      -#ifndef wrap_viewplot_style
      -#define wrap_viewplot_style
      -
      -//
      -//  This file had been produced automatically
      -// by the inlib/wrap program from the file :
      -//    viewplot.style
      -//
      -
      -inline const char** viewplot_style(unsigned int& a_linen){
      -  static const char _0[] = "";
      -  static const char _1[] = "";
      -  static const char _2[] = "  ";
      -  static const char _3[] = "  ";
      -  static const char _4[] = "  ";
      -  static const char _5[] = "  ";
      -  static const char _8[] = "";
      -  static const char _9[] = "  ";
      -  static const char _10[] = "  ";
      -  static const char _11[] = "  ";
      -  static const char _12[] = "  ";
      -  static const char _13[] = "    ";
      -  static const char _14[] = "    ";
      -  static const char _42[] = "    ";
      -  static const char _68[] = "";
      -  static const char _69[] = "";
      -  static const char _70[] = "    ";
      -  static const char _74[] = "";
      -  static const char _75[] = "    ";
      -  static const char _76[] = "    ";
      -  static const char _79[] = "    ";
      -  static const char _88[] = "";
      -  static const char _89[] = "    0.35";
      -  static const char _90[] = "    0.01 ";
      -  static const char _91[] = "    0.005 ";
      -  static const char _92[] = "    ";
      -  static const char _102[] = "";
      -  static const char _103[] = "    ";
      -  static const char _109[] = "";
      -  static const char _110[] = "    ";
      -  static const char _121[] = "    ";
      -  static const char _125[] = "    ";
      -  static const char _129[] = "    ";
      -  static const char _136[] = "    ";
      -  static const char _144[] = "    ";
      -  static const char _151[] = "";
      -  static const char _152[] = "    ";
      -  static const char _163[] = "    ";
      -  static const char _167[] = "    ";
      -  static const char _171[] = "    ";
      -  static const char _178[] = "    ";
      -  static const char _186[] = "    ";
      -  static const char _193[] = "";
      -  static const char _194[] = "    ";
      -  static const char _198[] = "    ";
      -  static const char _202[] = "    ";
      -  static const char _206[] = "    ";
      -  static const char _210[] = "    ";
      -  static const char _214[] = "    ";
      -  static const char _218[] = "";
      -  static const char _219[] = "    ";
      -  static const char _230[] = "    ";
      -  static const char _234[] = "    ";
      -  static const char _238[] = "    ";
      -  static const char _245[] = "    ";
      -  static const char _253[] = "    ";
      -  static const char _260[] = "";
      -  static const char _261[] = "";
      -  static const char _262[] = "    ";
      -  static const char _268[] = "";
      -  static const char _269[] = "    ";
      -  static const char _275[] = "  ";
      -  static const char _276[] = "";
      -  static const char _277[] = "  ";
      -  static const char _278[] = "    0.05";
      -  static const char _279[] = "    0.12";
      -  static const char _280[] = "    0.16";
      -  static const char _281[] = "    0.16";
      -  static const char _282[] = "    0.16";
      -  static const char _283[] = "    0.1";
      -  static const char _284[] = "    0.03";
      -  static const char _285[] = "";
      -  static const char _286[] = "";
      -  static const char _287[] = "    ";
      -  static const char _290[] = "";
      -  static const char _291[] = "    ";
      -  static const char _294[] = "";
      -  static const char _295[] = "    ";
      -  static const char _298[] = "";
      -  static const char _299[] = "    ";
      -  static const char _306[] = "    ";
      -  static const char _312[] = "";
      -  static const char _313[] = "    ";
      -  static const char _319[] = "";
      -  static const char _320[] = "    ";
      -  static const char _326[] = "    ";
      -  static const char _332[] = "";
      -  static const char _333[] = "    ";
      -  static const char _339[] = "    ";
      -  static const char _345[] = "";
      -  static const char _346[] = "    ";
      -  static const char _352[] = "    ";
      -  static const char _358[] = "";
      -  static const char _359[] = "    ";
      -  static const char _362[] = "";
      -  static const char _363[] = "    ";
      -  static const char _369[] = "";
      -  static const char _370[] = "    ";
      -  static const char _376[] = "  ";
      -  static const char _377[] = "";
      -  static const char _378[] = "";
      -  static const char* _lines[] = {
      -_0
      -,_1
      -,_2
      -,_3
      -,_4
      -,_5
      -,_6
      -,_7
      -,_8
      -,_9
      -,_10
      -,_11
      -,_12
      -,_13
      -,_14
      -,_15
      -,_16
      -,_17
      -,_18
      -,_19
      -,_20
      -,_21
      -,_22
      -,_23
      -,_24
      -,_25
      -,_26
      -,_27
      -,_28
      -,_29
      -,_30
      -,_31
      -,_32
      -,_33
      -,_34
      -,_35
      -,_36
      -,_37
      -,_38
      -,_39
      -,_40
      -,_41
      -,_42
      -,_43
      -,_44
      -,_45
      -,_46
      -,_47
      -,_48
      -,_49
      -,_50
      -,_51
      -,_52
      -,_53
      -,_54
      -,_55
      -,_56
      -,_57
      -,_58
      -,_59
      -,_60
      -,_61
      -,_62
      -,_63
      -,_64
      -,_65
      -,_66
      -,_67
      -,_68
      -,_69
      -,_70
      -,_71
      -,_72
      -,_73
      -,_74
      -,_75
      -,_76
      -,_77
      -,_78
      -,_79
      -,_80
      -,_81
      -,_82
      -,_83
      -,_84
      -,_85
      -,_86
      -,_87
      -,_88
      -,_89
      -,_90
      -,_91
      -,_92
      -,_93
      -,_94
      -,_95
      -,_96
      -,_97
      -,_98
      -,_99
      -,_100
      -,_101
      -,_102
      -,_103
      -,_104
      -,_105
      -,_106
      -,_107
      -,_108
      -,_109
      -,_110
      -,_111
      -,_112
      -,_113
      -,_114
      -,_115
      -,_116
      -,_117
      -,_118
      -,_119
      -,_120
      -,_121
      -,_122
      -,_123
      -,_124
      -,_125
      -,_126
      -,_127
      -,_128
      -,_129
      -,_130
      -,_131
      -,_132
      -,_133
      -,_134
      -,_135
      -,_136
      -,_137
      -,_138
      -,_139
      -,_140
      -,_141
      -,_142
      -,_143
      -,_144
      -,_145
      -,_146
      -,_147
      -,_148
      -,_149
      -,_150
      -,_151
      -,_152
      -,_153
      -,_154
      -,_155
      -,_156
      -,_157
      -,_158
      -,_159
      -,_160
      -,_161
      -,_162
      -,_163
      -,_164
      -,_165
      -,_166
      -,_167
      -,_168
      -,_169
      -,_170
      -,_171
      -,_172
      -,_173
      -,_174
      -,_175
      -,_176
      -,_177
      -,_178
      -,_179
      -,_180
      -,_181
      -,_182
      -,_183
      -,_184
      -,_185
      -,_186
      -,_187
      -,_188
      -,_189
      -,_190
      -,_191
      -,_192
      -,_193
      -,_194
      -,_195
      -,_196
      -,_197
      -,_198
      -,_199
      -,_200
      -,_201
      -,_202
      -,_203
      -,_204
      -,_205
      -,_206
      -,_207
      -,_208
      -,_209
      -,_210
      -,_211
      -,_212
      -,_213
      -,_214
      -,_215
      -,_216
      -,_217
      -,_218
      -,_219
      -,_220
      -,_221
      -,_222
      -,_223
      -,_224
      -,_225
      -,_226
      -,_227
      -,_228
      -,_229
      -,_230
      -,_231
      -,_232
      -,_233
      -,_234
      -,_235
      -,_236
      -,_237
      -,_238
      -,_239
      -,_240
      -,_241
      -,_242
      -,_243
      -,_244
      -,_245
      -,_246
      -,_247
      -,_248
      -,_249
      -,_250
      -,_251
      -,_252
      -,_253
      -,_254
      -,_255
      -,_256
      -,_257
      -,_258
      -,_259
      -,_260
      -,_261
      -,_262
      -,_263
      -,_264
      -,_265
      -,_266
      -,_267
      -,_268
      -,_269
      -,_270
      -,_271
      -,_272
      -,_273
      -,_274
      -,_275
      -,_276
      -,_277
      -,_278
      -,_279
      -,_280
      -,_281
      -,_282
      -,_283
      -,_284
      -,_285
      -,_286
      -,_287
      -,_288
      -,_289
      -,_290
      -,_291
      -,_292
      -,_293
      -,_294
      -,_295
      -,_296
      -,_297
      -,_298
      -,_299
      -,_300
      -,_301
      -,_302
      -,_303
      -,_304
      -,_305
      -,_306
      -,_307
      -,_308
      -,_309
      -,_310
      -,_311
      -,_312
      -,_313
      -,_314
      -,_315
      -,_316
      -,_317
      -,_318
      -,_319
      -,_320
      -,_321
      -,_322
      -,_323
      -,_324
      -,_325
      -,_326
      -,_327
      -,_328
      -,_329
      -,_330
      -,_331
      -,_332
      -,_333
      -,_334
      -,_335
      -,_336
      -,_337
      -,_338
      -,_339
      -,_340
      -,_341
      -,_342
      -,_343
      -,_344
      -,_345
      -,_346
      -,_347
      -,_348
      -,_349
      -,_350
      -,_351
      -,_352
      -,_353
      -,_354
      -,_355
      -,_356
      -,_357
      -,_358
      -,_359
      -,_360
      -,_361
      -,_362
      -,_363
      -,_364
      -,_365
      -,_366
      -,_367
      -,_368
      -,_369
      -,_370
      -,_371
      -,_372
      -,_373
      -,_374
      -,_375
      -,_376
      -,_377
      -,_378
      -};
      - a_linen = 379;
      - return _lines;
      -}
      -
      -#endif
      diff --git a/source/analysis/g4tools/include/tools/xml/xml_style b/source/analysis/g4tools/include/tools/xml/xml_style
      index 8d7873c2ee..dc29e1a557 100644
      --- a/source/analysis/g4tools/include/tools/xml/xml_style
      +++ b/source/analysis/g4tools/include/tools/xml/xml_style
      @@ -10,7 +10,7 @@
       
       namespace tools {
       namespace xml {
      -  
      +
       inline bool load_style_file(std::ostream&,const std::string& a_file,tools::xml::styles& a_styles) {
         tools::xml::default_factory factory;
         tools::xml::loader ml(factory,a_styles.out(),false);
      diff --git a/source/analysis/g4tools/include/tools/xpm b/source/analysis/g4tools/include/tools/xpm
      index 4114154ca1..9737e1d9e9 100644
      --- a/source/analysis/g4tools/include/tools/xpm
      +++ b/source/analysis/g4tools/include/tools/xpm
      @@ -30,7 +30,7 @@ inline bool to_xpm(std::ostream& a_out,const std::string& a_file,const std::stri
         }
       
         // get colormap :
      -  
      +
         typedef unsigned int color;
         std::vector colors;
       
      @@ -48,7 +48,7 @@ inline bool to_xpm(std::ostream& a_out,const std::string& a_file,const std::stri
             ca[1] = g;
             ca[2] = b;
             ca[3] = 0;
      -     
      +
             //printf("debug : get : %d %d %d : %lu\n",r,g,b,colors.size());
       
             bool found = false;
      @@ -71,7 +71,7 @@ inline bool to_xpm(std::ostream& a_out,const std::string& a_file,const std::stri
        {for(unsigned char c=0;c<255;c++) {
           if(is_letter(c)||is_digit(c)) {
             chars.push_back(c);
      -    }    
      +    }
         }}
       
         unsigned int base = (unsigned int)chars.size();
      @@ -141,7 +141,7 @@ inline bool to_xpm(std::ostream& a_out,const std::string& a_file,const std::stri
             ca[1] = g;
             ca[2] = b;
             ca[3] = 0;
      -     
      +
             bool found = false;
            {for(unsigned int index=0;index 32.
       protected:
       
      @@ -27,7 +27,7 @@ protected:
         public:
           virtual void write(ZPos,ZPos,ZZ) = 0;
         public:
      -    writer(ZPixel a_pixel):m_pixel(a_pixel){}    
      +    writer(ZPixel a_pixel):m_pixel(a_pixel){}
           virtual ~writer(){}
         public:
           writer(const writer& a_from):m_pixel(a_from.m_pixel){}
      @@ -114,19 +114,19 @@ protected:
           virtual void write(ZPos a_x,ZPos a_y,ZZ) {
             if((a_xm_buffer.m_endX))  return;
             if((a_ym_buffer.m_endY))  return;
      -  
      +
             // Computing must be the same as in WriteScanLine routine.
             ZReal zpoint =
      -        (ZReal)(- m_buffer.m_planeDC 
      +        (ZReal)(- m_buffer.m_planeDC
                       - m_buffer.m_planeAC * a_x
                       - m_buffer.m_planeBC * a_y);
      -  
      +
             // for edge plane quite perpandicular to screen
             //if((zpointm_buffer.m_zmax)) return;
      -  
      +
             unsigned long offset = a_y * m_buffer.m_zbw + a_x;
             ZReal* zbuff = m_buffer.m_zbuffer + offset;
      -  
      +
             if(m_buffer.m_depth_test) {if(zpoint<*zbuff) return;}
       
             ZPixel* zimage = m_buffer.m_zimage  + offset;
      @@ -211,7 +211,7 @@ public:
             m_zbh = 0;
             return false;
           }
      -  
      +
           // Init buffer done by further call to ZBufferErase.
           /*
           unsigned int size = m_zbw * m_zbh;
      @@ -222,7 +222,7 @@ public:
             *zbuffer  = - ZREAL_HUGE();
           }
           */
      -  
      +
           set_clip_region(0,0,m_zbw,m_zbh);
           m_polygon.clear();
           return true;
      @@ -467,7 +467,7 @@ protected:
       
           if(a_beg>a_buffer.m_endX) return;
           if(a_end=(*zbuff))
       //       &&(zpoint>=a_buffer.m_zmin) //for plane quite perpandicular to screen.
      -//       &&(zpoint<=a_buffer.m_zmax) 
      +//       &&(zpoint<=a_buffer.m_zmax)
                 ){
                 *zbuff = zpoint;
       	  *zimage = a_buffer.m_scan_pixel;
      @@ -508,7 +508,7 @@ protected:
           ZZ   dz = a_end.z - a_beg.z;
       
           //  6  2
      -    // 5     1     
      +    // 5     1
           // 7     3
           //  8  4
           scan_writer_1 sw1(a_writer);
      @@ -516,7 +516,7 @@ protected:
           scan_writer_3 sw3(a_writer);
           scan_writer_4 sw4(a_writer);
       
      -    if( (dx==0) && (dy==0) ) { 
      +    if( (dx==0) && (dy==0) ) {
             a_writer.write(a_beg.x,a_beg.y,a_beg.z);
             a_writer.write(a_end.x,a_end.y,a_end.z);
       
      @@ -557,8 +557,8 @@ protected:
       
           ZPos end = a_x + a_dx;
           ZPos beg = a_y;
      -    ZZ incz = a_dz/(ZZ)a_dx; 
      -    if(a_dy==0) { 
      +    ZZ incz = a_dz/(ZZ)a_dx;
      +    if(a_dy==0) {
             a_proc.write(a_x,a_y,a_z,beg);
             while(a_xscanlines;
           pSLL = pPrevSLL->next;
      -    while (pSLL && (pSLL->scanline < scanline)) 
      +    while (pSLL && (pSLL->scanline < scanline))
           {
               pPrevSLL = pSLL;
               pSLL = pSLL->next;
      @@ -52,9 +52,9 @@ inline void InsertEdgeInET (
           /*
            * reassign pSLL (pointer to ScanLineList) if necessary
            */
      -    if ( (pSLL==NULL) || (pSLL->scanline > scanline)) 
      +    if ( (pSLL==NULL) || (pSLL->scanline > scanline))
           {
      -        if (*iSLLBlock > SLLSPERBLOCK-1) 
      +        if (*iSLLBlock > SLLSPERBLOCK-1)
               {
                   tmpSLLBlock = cmem_alloc(1);
                   (*SLLBlock)->next = tmpSLLBlock;
      @@ -75,7 +75,7 @@ inline void InsertEdgeInET (
            */
           prev = (EdgeTableEntry *)NULL;
           start = pSLL->edgelist;
      -    while (start && (start->bres.minor_axis < ETE->bres.minor_axis)) 
      +    while (start && (start->bres.minor_axis < ETE->bres.minor_axis))
           {
               prev = start;
               start = start->next;
      @@ -102,7 +102,7 @@ inline void CreateETandAET (
        *     CreateEdgeTable
        *
        *     This routine creates the edge table for
      - *     scan converting polygons. 
      + *     scan converting polygons.
        *     The Edge Table (ET) looks like:
        *
        *    EdgeTable
      @@ -155,19 +155,19 @@ inline void CreateETandAET (
            *  In this loop we are dealing with two vertices at
            *  a time -- these make up one edge of the polygon.
            */
      -    while (count--) 
      +    while (count--)
           {
               CurrPt = pts++;
       
               /*
                *  find out which point is above and which is below.
                */
      -        if (PrevPt->y > CurrPt->y) 
      +        if (PrevPt->y > CurrPt->y)
               {
                   bottom = PrevPt, top = CurrPt;
                   pETEs->ClockWise = 0;
               }
      -        else 
      +        else
               {
                   bottom = CurrPt, top = PrevPt;
                   pETEs->ClockWise = 1;
      @@ -176,7 +176,7 @@ inline void CreateETandAET (
               /*
                * don't add horizontal edges to the Edge table.
                */
      -        if (bottom->y != top->y) 
      +        if (bottom->y != top->y)
               {
                   pETEs->ymax = (int)(bottom->y-1);  /* -1 so we don't get last scanline */
       
      @@ -212,7 +212,7 @@ inline void LoadAET(EdgeTableEntry* AET,EdgeTableEntry* ETEs) {
         pPrevAET = AET;
         AET = AET->next;
         while(ETEs) {
      -        while (AET && (AET->bres.minor_axis < ETEs->bres.minor_axis)) 
      +        while (AET && (AET->bres.minor_axis < ETEs->bres.minor_axis))
               {
                   pPrevAET = AET;
                   AET = AET->next;
      @@ -235,13 +235,13 @@ inline void ComputeWAET(EdgeTableEntry* AET) {
        *
        *     This routine links the AET by the
        *     nextWETE (winding EdgeTableEntry) link for
      - *     use by the winding number rule.  The final 
      + *     use by the winding number rule.  The final
        *     Active Edge Table (AET) might look something
        *     like:
        *
        *     AET
        *     ----------  ---------   ---------
      - *     |ymax    |  |ymax    |  |ymax    | 
      + *     |ymax    |  |ymax    |  |ymax    |
        *     | ...    |  |...     |  |...     |
        *     |next    |->|next    |->|next    |->...
        *     |nextWETE|  |nextWETE|  |nextWETE|
      @@ -264,7 +264,7 @@ inline void ComputeWAET(EdgeTableEntry* AET) {
                   isInside--;
       
               if (( (inside==0) && (isInside==0) ) ||
      -            ( (inside!=0) && (isInside!=0) )) 
      +            ( (inside!=0) && (isInside!=0) ))
               {
                   pWETE->nextWETE = AET;
                   pWETE = AET;
      @@ -294,7 +294,7 @@ inline int InsertAndSort(EdgeTableEntry* AET) {
                   pETEchase = pETEchase->back;
       
               AET = AET->next;
      -        if (pETEchase != pETEinsert) 
      +        if (pETEchase != pETEinsert)
               {
                   pETEchaseBackTMP = pETEchase->back;
                   pETEinsert->back->next = AET;
      diff --git a/source/analysis/g4tools/include/tools/zb/line b/source/analysis/g4tools/include/tools/zb/line
      index 1a85c79ecf..f30261434f 100644
      --- a/source/analysis/g4tools/include/tools/zb/line
      +++ b/source/analysis/g4tools/include/tools/zb/line
      @@ -3,7 +3,7 @@
       
       #ifndef tools_zb_line
       #define tools_zb_line
      - 
      +
       /* from X/poly.h */
       
       /*
      @@ -140,7 +140,7 @@ typedef struct {
        *     the polygon by incrementing the y coordinate.  We
        *     keep a list of edges which the current scanline crosses,
        *     sorted by x.  This list is called the Active Edge Table (AET)
      - *     As we change the y-coordinate, we update each entry in 
      + *     As we change the y-coordinate, we update each entry in
        *     in the active edge table to reflect the edges new xcoord.
        *     This list must be sorted at each scanline in case
        *     two edges intersect.
      @@ -167,7 +167,7 @@ typedef struct {
        * for the winding number rule
        */
       //#define CLOCKWISE          1
      -//#define COUNTERCLOCKWISE  -1 
      +//#define COUNTERCLOCKWISE  -1
       
       typedef struct _EdgeTableEntry {
            int ymax;             /* ycoord at which we exit this edge. */
      @@ -256,6 +256,6 @@ typedef struct _ScanLineListBlock {
             pAET = pAET->next; \
          } \
       }
      - 
      +
       
       #endif
      diff --git a/source/analysis/g4tools/include/tools/zb/point b/source/analysis/g4tools/include/tools/zb/point
      index 1f079e8c5a..ab6a480fc8 100644
      --- a/source/analysis/g4tools/include/tools/zb/point
      +++ b/source/analysis/g4tools/include/tools/zb/point
      @@ -3,7 +3,7 @@
       
       #ifndef tools_zb_point
       #define tools_zb_point
      - 
      +
       namespace tools {
       namespace zb {
       
      diff --git a/source/analysis/g4tools/include/tools/zb/polygon b/source/analysis/g4tools/include/tools/zb/polygon
      index d83902e724..30edb12fcd 100644
      --- a/source/analysis/g4tools/include/tools/zb/polygon
      +++ b/source/analysis/g4tools/include/tools/zb/polygon
      @@ -34,7 +34,7 @@ public:
           POINTBLOCK* curPtBlock;
           cmem_free(m_pETEs);
           m_pETEn = 0;
      -    for(curPtBlock = m_FirstPtBlock.next; --m_numAllocPtBlocks >= 0;){ 
      +    for(curPtBlock = m_FirstPtBlock.next; --m_numAllocPtBlocks >= 0;){
               POINTBLOCK* tmpPtBlock;
               tmpPtBlock  = curPtBlock->next;
               cmem_free(curPtBlock);
      @@ -82,14 +82,14 @@ public:
       	 ((pts[0].x == pts[1].x) &&
       	  (pts[1].y == pts[2].y) &&
       	  (pts[2].x == pts[3].x) &&
      -	  (pts[3].y == pts[0].y)))) 
      +	  (pts[3].y == pts[0].y))))
             {
               int  xmin,xmax,ymin,ymax;
       	xmin = (int)mn(pts[0].x, pts[2].x);
       	ymin = (int)mn(pts[0].y, pts[2].y);
       	xmax = (int)mx(pts[0].x, pts[2].x);
       	ymax = (int)mx(pts[0].y, pts[2].y);
      -	if ((xmin != xmax) && (ymin != ymax)) 
      +	if ((xmin != xmax) && (ymin != ymax))
       	    {
                     for(y=ymin;y<=ymax;y++)  a_proc(a_tag,xmin  ,xmax  ,y);
       	    }
      @@ -101,7 +101,7 @@ public:
       	cmem_free(m_pETEs);
       	m_pETEn = Count;
       	m_pETEs = cmem_alloc(m_pETEn);
      -	if(m_pETEs==NULL)  
      +	if(m_pETEs==NULL)
       	  {
       	    m_pETEn = 0;
       	    return;
      @@ -114,9 +114,9 @@ public:
       
           curPtBlock     = &m_FirstPtBlock;
           pts            =  m_FirstPtBlock.pts;
      -     
       
      -    if (rule==0) 
      +
      +    if (rule==0)
             {
               /*
                *  for each scanline
      @@ -126,14 +126,14 @@ public:
                    *  Add a new edge to the active edge table when we
                    *  get to the next edge.
                    */
      -            if (pSLL != NULL && y == pSLL->scanline) 
      +            if (pSLL != NULL && y == pSLL->scanline)
       	      {
                       LoadAET(&AET, pSLL->edgelist);
                       pSLL = pSLL->next;
       	      }
                   pPrevAET = &AET;
                   pAET = AET.next;
      - 
      +
                   /*
                    *  for each active edge
                    */
      @@ -142,12 +142,12 @@ public:
                       pts->y = y;
                       pts++;
                       iPts++;
      - 
      +
                       /*
                        *  send out the buffer
                        */
      -                if (iPts == NUMPTSTOBUFFER) 
      -		  { 
      +                if (iPts == NUMPTSTOBUFFER)
      +		  {
                           if(numFullPtBlocks < m_numAllocPtBlocks)
                             {
                               curPtBlock = curPtBlock->next;
      @@ -155,7 +155,7 @@ public:
       		    else
       		      {
       			POINTBLOCK* tmpPtBlock = cmem_alloc(1);
      -                        if(tmpPtBlock==NULL)  
      +                        if(tmpPtBlock==NULL)
       			  {
       			    FreeStorage(SLLBlock.next);
       			    return;
      @@ -175,7 +175,7 @@ public:
                   (void) InsertAndSort(&AET);
               }
             }
      -    else 
      +    else
             {
               /*
                *  for each scanline
      @@ -185,7 +185,7 @@ public:
                    *  Add a new edge to the active edge table when we
                    *  get to the next edge.
                    */
      -            if (pSLL != NULL && y == pSLL->scanline) 
      +            if (pSLL != NULL && y == pSLL->scanline)
       	      {
                       LoadAET(&AET, pSLL->edgelist);
                       ComputeWAET(&AET);
      @@ -194,7 +194,7 @@ public:
                   pPrevAET = &AET;
                   pAET = AET.next;
                   pWETE = pAET;
      - 
      +
                   /*
                    *  for each active edge
                    */
      @@ -208,12 +208,12 @@ public:
                           pts->y = y;
                           pts++;
       		    iPts++;
      - 
      +
                           /*
                            *  send out the buffer
                            */
      -		    if (iPts == NUMPTSTOBUFFER) 
      -		      { 
      +		    if (iPts == NUMPTSTOBUFFER)
      +		      {
       			if(numFullPtBlocks < m_numAllocPtBlocks)
       			  {
       			    curPtBlock = curPtBlock->next;
      @@ -221,7 +221,7 @@ public:
       			else
       			  {
       			    POINTBLOCK* tmpPtBlock = cmem_alloc(1);
      -                            if(tmpPtBlock==NULL)  
      +                            if(tmpPtBlock==NULL)
       			      {
       				FreeStorage(SLLBlock.next);
       				return;
      @@ -239,19 +239,19 @@ public:
                       }
                       EVALUATEEDGEWINDING(pAET, pPrevAET, y, fixWAET)
                   }
      - 
      +
                   /*
                    *  recompute the winding active edge table if
                    *  we just resorted or have exited an edge.
                    */
      -            if ( (InsertAndSort(&AET)!=0) || (fixWAET!=0) ) 
      +            if ( (InsertAndSort(&AET)!=0) || (fixWAET!=0) )
       	      {
                       ComputeWAET(&AET);
                       fixWAET = 0;
       	      }
               }
             }
      -    FreeStorage   (SLLBlock.next);	
      +    FreeStorage   (SLLBlock.next);
       
           ScanPoints (numFullPtBlocks, iPts, &m_FirstPtBlock,a_proc,a_tag);
       
      @@ -265,11 +265,11 @@ protected:
           POINTBLOCK* CurPtBlock;
           int         i;
           CurPtBlock = FirstPtBlock;
      -    for ( ; numFullPtBlocks >= 0; numFullPtBlocks--) 
      +    for ( ; numFullPtBlocks >= 0; numFullPtBlocks--)
             {
               /* the loop uses 2 points per iteration */
               i = numFullPtBlocks!=0 ? NUMPTSTOBUFFER >> 1 : iCurPtBlock >> 1 ;
      -        for (pts = CurPtBlock->pts; i--; pts += 2) 
      +        for (pts = CurPtBlock->pts; i--; pts += 2)
         	{
         	  a_proc (a_tag,(int)(pts->x),(int)pts[1].x,(int)pts->y);
         	}
      diff --git a/source/analysis/g4tools/include/tools/zlib b/source/analysis/g4tools/include/tools/zlib
      index 9f19090104..c1f183ae9a 100644
      --- a/source/analysis/g4tools/include/tools/zlib
      +++ b/source/analysis/g4tools/include/tools/zlib
      @@ -34,7 +34,9 @@ inline bool compress_buffer(std::ostream& a_out,
         stream.zalloc    = (alloc_func)0;
         stream.zfree     = (free_func)0;
         stream.opaque    = (voidpf)0;
      -  
      +  stream.total_in  = 0; /*to quiet Coverity.*/
      +  stream.total_out = 0; /*to quiet Coverity.*/
      +
         int err = deflateInit(&stream,a_level);
         if(err!=Z_OK) {
           a_out << "tools::compress_buffer :"
      @@ -42,7 +44,7 @@ inline bool compress_buffer(std::ostream& a_out,
           a_irep = 0;
           return false;
         }
      -  
      +
         err = deflate(&stream, Z_FINISH);
         if(err!=Z_STREAM_END) {
           deflateEnd(&stream);
      @@ -51,9 +53,9 @@ inline bool compress_buffer(std::ostream& a_out,
           a_irep = 0;
           return false;
         }
      -  
      +
         deflateEnd(&stream);
      -   
      +
         //a_out << "tools::compress_buffer : ok "
         //      << stream.total_out << std::endl;
       
      @@ -76,14 +78,16 @@ inline bool decompress_buffer(std::ostream& a_out,
         stream.zalloc    = (alloc_func)0;
         stream.zfree     = (free_func)0;
         stream.opaque    = (voidpf)0;
      -  
      +  stream.total_in  = 0; /*to quiet Coverity.*/
      +  stream.total_out = 0; /*to quiet Coverity.*/
      +
         int err = inflateInit(&stream);
         if (err != Z_OK) {
           a_out << "tools::decompress_buffer :"
                 << " error " << err << " in zlib/inflateInit." << std::endl;
           return false;
         }
      -  
      +
         err = inflate(&stream, Z_FINISH);
         if (err != Z_STREAM_END) {
           inflateEnd(&stream);
      @@ -91,9 +95,9 @@ inline bool decompress_buffer(std::ostream& a_out,
                 << " error " << err << " in zlib/inflate." << std::endl;
           return false;
         }
      -  
      +
         inflateEnd(&stream);
      -   
      +
         //a_out << "tools::decompress_buffer : zlib : ok "
         //      << stream.total_out << std::endl;
       
      @@ -209,7 +213,7 @@ inline bool gunzip_buffer(std::ostream& a_out,
                 << " error " << err << " in zlib/inflateInit2." << std::endl;
           return false;
         }
      -  
      +
         err = inflate(&stream, Z_FINISH);
         if (err != Z_STREAM_END) {
           inflateEnd(&stream);
      @@ -217,9 +221,9 @@ inline bool gunzip_buffer(std::ostream& a_out,
                 << " error " << err << " in zlib/inflate." << std::endl;
           return false;
         }
      -  
      +
         inflateEnd(&stream);
      -   
      +
         a_irep = stream.total_out;
       
         return true;
      diff --git a/source/analysis/hdf5/include/G4Hdf5AnalysisManager.hh b/source/analysis/hdf5/include/G4Hdf5AnalysisManager.hh
      index 06355574a5..319f6a5758 100644
      --- a/source/analysis/hdf5/include/G4Hdf5AnalysisManager.hh
      +++ b/source/analysis/hdf5/include/G4Hdf5AnalysisManager.hh
      @@ -40,7 +40,7 @@
       #include 
       
       class G4Hdf5FileManager;
      -class G4Hdf5NtupleManager;
      +class G4Hdf5NtupleFileManager;
       
       class G4Hdf5AnalysisManager : public G4ToolsAnalysisManager
       {
      @@ -81,12 +81,10 @@ class G4Hdf5AnalysisManager : public G4ToolsAnalysisManager
           template 
           G4bool WriteHn(const std::vector& htVector,
                          const std::vector& hnVector,
      -                   const G4String& directoryName,
                          const G4String& hnType);
           template 
           G4bool WritePn(const std::vector& htVector,
                          const std::vector& hnVector,
      -                   const G4String& directoryName,
                          const G4String& hnType);
           G4bool WriteDirectory(); 
           G4bool WriteH1(); 
      @@ -97,7 +95,7 @@ class G4Hdf5AnalysisManager : public G4ToolsAnalysisManager
           G4bool Reset();
       
           // data members
      -    G4Hdf5NtupleManager*  fNtupleManager;
      +    std::shared_ptr  fNtupleFileManager;
           std::shared_ptr  fFileManager;
       };
       
      diff --git a/source/analysis/hdf5/include/G4Hdf5AnalysisManager.icc b/source/analysis/hdf5/include/G4Hdf5AnalysisManager.icc
      index 18d85a9882..62209e57ce 100644
      --- a/source/analysis/hdf5/include/G4Hdf5AnalysisManager.icc
      +++ b/source/analysis/hdf5/include/G4Hdf5AnalysisManager.icc
      @@ -26,6 +26,7 @@
       //
       // Author: Ivana Hrivnacova, 20/07/2017 (ivana@ipno.in2p3.fr)
       
      +#include "G4Hdf5NtupleFileManager.hh"
       #include "G4Hdf5NtupleManager.hh"
       #include "G4Hdf5FileManager.hh"
       
      @@ -36,9 +37,12 @@ template 
       inline
       G4bool G4Hdf5AnalysisManager::WriteHn(const std::vector& htVector,
                                             const std::vector& hnVector,
      -                                      const G4String& /*directoryName*/,
                                             const G4String& hnType)
       {
      +  auto directory =  fFileManager->GetHistoDirectory();
      +  // Do nothing if there is no directory
      +  if ( directory < 0 ) return false;
      +
         for ( G4int i=0; iGetActivation();
      @@ -50,9 +54,6 @@ G4bool G4Hdf5AnalysisManager::WriteHn(const std::vector& htVector,
           if ( fState.GetVerboseL3() ) 
             fState.GetVerboseL3()->Message("write", hnType, name);
       #endif
      -    auto directory =  fFileManager->GetHistoDirectory();
      -    // Do nothing if there is no directory
      -    if ( directory < 0 ) return false;
       
           G4bool result
             = tools::hdf5::write_histo(G4cout, directory, name, *ht);
      @@ -63,7 +64,7 @@ G4bool G4Hdf5AnalysisManager::WriteHn(const std::vector& htVector,
                       "Analysis_W022", JustWarning, description);
             return false;       
           } 
      -    fFileManager->LockHistoDirectoryName();
      +    fFileManager->LockDirectoryNames();
         }
       
         return true;
      @@ -74,9 +75,12 @@ template 
       inline
       G4bool G4Hdf5AnalysisManager::WritePn(const std::vector& htVector,
                                             const std::vector& hnVector,
      -                                      const G4String& /*directoryName*/,
                                             const G4String& hnType)
       {
      +  auto directory =  fFileManager->GetHistoDirectory();
      +  // Do nothing if there is no directory
      +  if ( directory < 0 ) return false;
      +
         for ( G4int i=0; iGetActivation();
      @@ -88,9 +92,6 @@ G4bool G4Hdf5AnalysisManager::WritePn(const std::vector& htVector,
           if ( fState.GetVerboseL3() ) 
             fState.GetVerboseL3()->Message("write", hnType, name);
       #endif
      -    auto directory =  fFileManager->GetHistoDirectory();
      -    // Do nothing if there is no directory
      -    if ( directory < 0 ) return false;
       
           G4bool result
             = tools::hdf5::write_profile(G4cout, directory, name, *ht);
      @@ -101,7 +102,7 @@ G4bool G4Hdf5AnalysisManager::WritePn(const std::vector& htVector,
                       "Analysis_W022", JustWarning, description);
             return false;       
           } 
      -    fFileManager->LockHistoDirectoryName();
      +    fFileManager->LockDirectoryNames();
         }
       
         return true;
      @@ -118,28 +119,28 @@ G4bool G4Hdf5AnalysisManager::IsOpenFileImpl() const
       inline
       tools::hdf5::ntuple* G4Hdf5AnalysisManager::GetNtuple() const
       {
      -  return fNtupleManager->GetNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->GetNtuple();
       }  
       
       //_____________________________________________________________________________
       inline
       tools::hdf5::ntuple* G4Hdf5AnalysisManager::GetNtuple(G4int ntupleId) const
       {
      -  return fNtupleManager->GetNtuple(ntupleId);
      +  return fNtupleFileManager->GetNtupleManager()->GetNtuple(ntupleId);
       }  
       
       //_____________________________________________________________________________
       inline
       std::vector::iterator G4Hdf5AnalysisManager::BeginNtuple()
       {
      -  return fNtupleManager->BeginNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->BeginNtuple();
       }  
       
       //_____________________________________________________________________________
       inline
       std::vector::iterator G4Hdf5AnalysisManager::EndNtuple()
       {
      -  return fNtupleManager->EndNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->EndNtuple();
       }  
       
       //_____________________________________________________________________________
      @@ -147,7 +148,7 @@ inline
       std::vector::const_iterator 
       G4Hdf5AnalysisManager::BeginConstNtuple() const
       {
      -  return fNtupleManager->BeginConstNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->BeginConstNtuple();
       }  
       
       //_____________________________________________________________________________
      @@ -155,5 +156,5 @@ inline
       std::vector::const_iterator 
       G4Hdf5AnalysisManager::EndConstNtuple() const
       {
      -  return fNtupleManager->EndConstNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->EndConstNtuple();
       }  
      diff --git a/source/analysis/hdf5/include/G4Hdf5FileManager.hh b/source/analysis/hdf5/include/G4Hdf5FileManager.hh
      index a18d701f35..6aab65347f 100644
      --- a/source/analysis/hdf5/include/G4Hdf5FileManager.hh
      +++ b/source/analysis/hdf5/include/G4Hdf5FileManager.hh
      @@ -31,75 +31,69 @@
       #ifndef G4Hdf5FileManager_h
       #define G4Hdf5FileManager_h 1
       
      -#include "G4VFileManager.hh"
      -#include "G4TNtupleDescription.hh"
      +#include "G4VTFileManager.hh"
       #include "globals.hh"
       
      -#include "tools/hdf5/ntuple"
      +#include "tools/hdf5/ntuple" // for hid_t
       
      -#include 
       #include 
      +#include 
       
      -class G4AnalysisManagerState;
      +using G4Hdf5File = std::tuple;
      +using Hdf5NtupleDescription = G4TNtupleDescription;
       
      -class G4Hdf5FileManager : public G4VFileManager
      +class G4Hdf5FileManager : public G4VTFileManager
       {
         public:
           explicit G4Hdf5FileManager(const G4AnalysisManagerState& state);
           ~G4Hdf5FileManager();
       
      -    // Type aliases
      -    using NtupleType = tools::hdf5::ntuple;
      -    using NtupleDescriptionType = G4TNtupleDescription;
      +    using G4BaseFileManager::GetNtupleFileName;
      +    using G4VTFileManager::WriteFile;
      +    using G4VTFileManager::CloseFile;
       
           // Methods to manipulate output files
           virtual G4bool OpenFile(const G4String& fileName) final;
      -    virtual G4bool WriteFile() final;
      -    virtual G4bool CloseFile() final; 
       
      -    G4bool WriteHistoDirectory();
      -    G4bool WriteNtupleDirectory();
      -    void   CloseAfterHnWrite();
      +    virtual G4String GetFileType() const final { return "hdf5"; }
      +
      +    // Specific methods for files per objects
      +    G4bool CreateNtupleFile(Hdf5NtupleDescription* ntupleDescription);
      +    G4bool CloseNtupleFile(Hdf5NtupleDescription* ntupleDescription); 
       
           // Set methods
           void  SetBasketSize(unsigned int basketSize);
       
           // Get methods
      -    hid_t GetFile() const;
           hid_t GetHistoDirectory() const;
           hid_t GetNtupleDirectory() const;
           unsigned int GetBasketSize() const; 
           
      -   private:
      -    G4bool CreateDirectory(const G4String& directoryType, 
      -                           const G4String& directoryName, hid_t& directory);
      -    G4bool WriteDirectory(const G4String& directoryType, 
      -                          const G4String& directoryName, hid_t& directory);
      +  protected:
      +    // // Methods derived from templated base class
      +    virtual std::shared_ptr CreateFileImpl(const G4String& fileName) final;
      +    virtual G4bool WriteFileImpl(std::shared_ptr file) final;
      +    virtual G4bool CloseFileImpl(std::shared_ptr file) final;    
      +
      +  private:
      +    hid_t CreateDirectory(hid_t& file, const G4String& directoryName, 
      +             const G4String& objectType);
      +    G4String GetNtupleFileName(Hdf5NtupleDescription* ntupleDescription);
       
           // constants
           static const G4String fgkDefaultDirectoryName;
           
           // data members
      -    hid_t  fFile;
      -    hid_t  fHistoDirectory;
      -    hid_t  fNtupleDirectory;
           unsigned int fBasketSize;
       };
       
       // inline functions
       
      -inline void  G4Hdf5FileManager::SetBasketSize(unsigned int basketSize)  
      +//_____________________________________________________________________________
      +inline void G4Hdf5FileManager::SetBasketSize(unsigned int basketSize)  
       { fBasketSize = basketSize; }
       
      -inline hid_t G4Hdf5FileManager::GetFile() const
      -{ return fFile; }
      -
      -inline hid_t G4Hdf5FileManager::GetHistoDirectory() const
      -{ return fHistoDirectory; }
      -
      -inline hid_t G4Hdf5FileManager::GetNtupleDirectory() const
      -{ return fNtupleDirectory; }
      -
      +//_____________________________________________________________________________
       inline unsigned int G4Hdf5FileManager::GetBasketSize() const
       { return fBasketSize; }
       
      diff --git a/source/analysis/hdf5/include/G4Hdf5HnFileManager.hh b/source/analysis/hdf5/include/G4Hdf5HnFileManager.hh
      new file mode 100644
      index 0000000000..11fc1dae1e
      --- /dev/null
      +++ b/source/analysis/hdf5/include/G4Hdf5HnFileManager.hh
      @@ -0,0 +1,65 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// The manager for histogram/profile Hfd5 file output.
      +
      +// Author: Ivana Hrivnacova, 15/09/2020  (ivana@ipno.in2p3.fr)
      +
      +#ifndef G4Hdf5HnFileManager_h
      +#define G4Hdf5HnFileManager_h 1
      +
      +#include "G4VTHnFileManager.hh"
      +
      +#include "tools/hdf5/ntuple" // for hid_t
      +
      +class G4Hdf5FileManager;
      +
      +template 
      +class G4Hdf5HnFileManager : public G4VTHnFileManager
      +{
      +  public:
      +    G4Hdf5HnFileManager(G4Hdf5FileManager* fileManger)
      +      : G4VTHnFileManager(), fFileManager(fileManger) {}    
      +    virtual ~G4Hdf5HnFileManager() {}
      +
      +    // Methods for writing objects
      +    // Write to a new file (the file is closed after write)
      +    virtual G4bool WriteExtra(HT* ht, const G4String& htName, const G4String& fileName) final;
      +    // Write to the default file  (handled with OpenFile()/CloseFile methods)
      +    virtual G4bool Write(HT* ht, const G4String& htName, G4String& fileName) final;
      +
      +  private:       
      +    // Methods
      +    G4bool WriteImpl(hid_t hdirectory, HT* ht, const G4String& htName);
      +    // Data members
      +    G4Hdf5FileManager* fFileManager;
      +};
      +
      +// inline functions
      +
      +#include "G4Hdf5HnFileManager.icc"
      +
      +#endif
      diff --git a/source/analysis/hdf5/include/G4Hdf5HnFileManager.icc b/source/analysis/hdf5/include/G4Hdf5HnFileManager.icc
      new file mode 100644
      index 0000000000..73dd17afcd
      --- /dev/null
      +++ b/source/analysis/hdf5/include/G4Hdf5HnFileManager.icc
      @@ -0,0 +1,140 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +//
      +// Author: Ivana Hrivnacova, 15/09/2020 (ivana@ipno.in2p3.fr)
      +
      +#include "tools/hdf5/header"
      +#include "tools/hdf5/h2file"
      +#include "tools/histo/h1d"
      +#include "tools/histo/h2d"
      +#include "tools/histo/h3d"
      +#include "tools/histo/p1d"
      +#include "tools/histo/p2d"
      +
      +#include "tools/hdf5/h2file"
      +
      +//_____________________________________________________________________________
      +template <>
      +inline
      +G4bool G4Hdf5HnFileManager::WriteImpl(
      +  hid_t hdirectory, tools::histo::p1d* ht, const G4String& htName)
      +{
      +  return tools::hdf5::write_profile(G4cout, hdirectory, htName, *ht);
      +}
      +
      +//_____________________________________________________________________________
      +template <>
      +inline
      +G4bool G4Hdf5HnFileManager::WriteImpl(
      +  hid_t hdirectory, tools::histo::p2d* ht, const G4String& htName)
      +{
      +  return tools::hdf5::write_profile(G4cout, hdirectory, htName, *ht);
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4Hdf5HnFileManager::WriteImpl(
      +  hid_t hdirectory, HT* ht, const G4String& htName)
      +{
      +  return tools::hdf5::write_histo(G4cout, hdirectory, htName, *ht);
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4Hdf5HnFileManager::WriteExtra(
      +  HT* ht, const G4String& htName, const G4String& fileName)
      +{
      +  // create a new file
      +  // create new file
      +  hid_t hfile = ::H5Fcreate(fileName, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);  
      +
      +  // Do nothing if there is no file
      +  // (te error should be handled by caller)
      +  if ( hfile < 0 ) {
      +    G4cerr << "::H5Fcreate failed " << G4endl;
      +    return false;
      +  }
      +
      +  // create a header with general infos :
      +  if(!tools::hdf5::write_header(hfile)) {
      +    G4cerr << "tools::hdf5::write_header() failed." << std::endl;
      +    return false;
      +  }
      +
      +  // Create directories
      +  hid_t hdirectory = tools_H5Gcreate(hfile, "histograms", 0);
      +  if ( hdirectory < 0 ) {
      +    G4cerr << "tools_H5Gcreate failed " << G4endl;
      +    return false;
      +  }
      +
      +  auto result = tools::hdf5::write_atb(hdirectory, "type", "directory");
      +  if ( ! result) {
      +    G4cerr << "tools::hdf5::write_atb failed " << G4endl;
      +    return false;
      +  }
      +
      +  result = WriteImpl(hdirectory, ht, htName);
      +  if ( ! result) {
      +    G4cerr << "Writing HT failed" << G4endl;
      +    return false;
      +  }
      +
      +  // close file
      +  ::H5Gclose(hdirectory);
      +  ::H5Gclose(hfile);
      +  return true;
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4Hdf5HnFileManager::Write(
      +  HT* ht, const G4String& htName, G4String& fileName)
      +{
      +  if (fileName.empty()) {
      +    // should not happen
      +    G4cerr << "!!! Hdf5 file name not defined." << G4endl;
      +    G4cerr << "!!! Write " << htName << " failed." << G4endl;
      +    return false;
      +  }
      +
      +  auto hdirectory = std::get<1>(*fFileManager->GetTFile(fileName));
      +    if ( hdirectory < 0 ) {
      +    G4ExceptionDescription description;
      +    description 
      +      << "Failed to get Hdf5 file " << fileName << " histo directory."; 
      +    G4Exception("G4Hdf5HnFileManager::Write()",
      +                "Analysis_W022", JustWarning, description);
      +    return false;
      +  }
      +
      +  auto result = WriteImpl(hdirectory, ht, htName);
      +  fFileManager->LockDirectoryNames();
      +  return result;
      +}
      diff --git a/source/analysis/hdf5/include/G4Hdf5NtupleFileManager.hh b/source/analysis/hdf5/include/G4Hdf5NtupleFileManager.hh
      new file mode 100644
      index 0000000000..ff7c42842f
      --- /dev/null
      +++ b/source/analysis/hdf5/include/G4Hdf5NtupleFileManager.hh
      @@ -0,0 +1,79 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Manager class for ntuple Hdf5 file output.
      +//
      +// Author: Ivana Hrivnacova, 15/09/2020 (ivana@ipno.in2p3.fr)
      +
      +#ifndef G4Hdf5NtupleFileManager_h
      +#define G4Hdf5NtupleFileManager_h 1
      +
      +#include "G4VNtupleFileManager.hh"
      +#include "globals.hh"
      +
      +class G4Hdf5FileManager;
      +class G4Hdf5NtupleManager;
      +class G4VNtupleManager;
      +class G4NtupleBookingManager;
      +
      +class G4Hdf5NtupleFileManager : public G4VNtupleFileManager
      +{
      +  friend class G4Hdf5AnalysisManager;
      +
      +  public:
      +    explicit G4Hdf5NtupleFileManager(const G4AnalysisManagerState& state);
      +    ~G4Hdf5NtupleFileManager();
      +
      +    virtual std::shared_ptr CreateNtupleManager() override;
      +
      +    // Methods to be performed at file management
      +    virtual G4bool ActionAtOpenFile(const G4String& fileName) override;
      +    virtual G4bool ActionAtWrite() override;
      +    virtual G4bool ActionAtCloseFile(G4bool reset) override;
      +    virtual G4bool Reset() override; 
      +
      +    void SetFileManager(std::shared_ptr fileManager);
      +
      +    std::shared_ptr GetNtupleManager() const;
      +
      +  private:
      +    // methods
      +    G4bool CloseNtupleFiles();
      +
      +    // data members
      +    std::shared_ptr fFileManager;
      +    std::shared_ptr fNtupleManager;     
      +};
      +
      +inline void G4Hdf5NtupleFileManager::SetFileManager(
      +  std::shared_ptr fileManager)
      +{ fFileManager = fileManager; }
      +
      +inline std::shared_ptr G4Hdf5NtupleFileManager::GetNtupleManager() const
      +{ return fNtupleManager; }
      +
      +#endif
      +
      diff --git a/source/analysis/hdf5/include/G4Hdf5NtupleManager.hh b/source/analysis/hdf5/include/G4Hdf5NtupleManager.hh
      index 6faaa530a2..9271f24237 100644
      --- a/source/analysis/hdf5/include/G4Hdf5NtupleManager.hh
      +++ b/source/analysis/hdf5/include/G4Hdf5NtupleManager.hh
      @@ -41,46 +41,45 @@
       
       class G4Hdf5FileManager;
       
      +// Types alias
      +using G4Hdf5File = std::tuple;
      +using Hdf5NtupleDescription = G4TNtupleDescription;
      +
       // template specialization used by this class defined below
       
       template <>
       template <>
      -G4bool G4TNtupleManager::FillNtupleTColumn(
      +G4bool G4TNtupleManager::FillNtupleTColumn(
         G4int ntupleId, G4int columnId, const std::string& value);
       
       
      -class G4Hdf5NtupleManager : public G4TNtupleManager 
      +class G4Hdf5NtupleManager : public G4TNtupleManager 
       {
         friend class G4Hdf5AnalysisManager;
      +  friend class G4Hdf5NtupleFileManager;
       
         public:
           explicit G4Hdf5NtupleManager(const G4AnalysisManagerState& state);
           ~G4Hdf5NtupleManager();
       
         private:
      -    // Types alias
      -    using NtupleType = tools::hdf5::ntuple;
      -    using NtupleDescriptionType = G4TNtupleDescription;
      -
           // Set methods
           void SetFileManager(std::shared_ptr fileManager);
           
           // Access to ntuple vector (needed for Write())
      -    const std::vector& GetNtupleDescriptionVector() const;
      +    const std::vector& GetNtupleDescriptionVector() const;
       
           // Utility function  
      -    void CreateTNtuple(NtupleDescriptionType*  ntupleDescription, G4bool warn);
      +    void CreateTNtuple(Hdf5NtupleDescription* ntupleDescription, G4bool warn);
       
           // Methods from the templated base class
           //
      -    virtual void CreateTNtuple(
      -                    NtupleDescriptionType*  ntupleDescription,
      -                    const G4String& name, const G4String& title) final;
           virtual void CreateTNtupleFromBooking(
      -                    NtupleDescriptionType* ntupleDescription) final;
      +                    Hdf5NtupleDescription* ntupleDescription) final;
       
           virtual void FinishTNtuple(
      -                    NtupleDescriptionType* ntupleDescription,
      +                    Hdf5NtupleDescription* ntupleDescription,
                           G4bool fromBooking) final;
       
           // data members
      @@ -94,13 +93,13 @@ inline void
       G4Hdf5NtupleManager::SetFileManager(std::shared_ptr fileManager)
       { fFileManager = fileManager; }
       
      -inline const std::vector*>& 
      +inline const std::vector& 
       G4Hdf5NtupleManager::GetNtupleDescriptionVector() const
       { return fNtupleDescriptionVector; }
       
       template <>
       template <>
      -inline G4bool G4TNtupleManager::FillNtupleTColumn(
      +inline G4bool G4TNtupleManager::FillNtupleTColumn(
         G4int ntupleId, G4int columnId, const std::string& value)
       {
         if ( fState.GetIsActivation() && ( ! GetActivation(ntupleId) ) ) {
      @@ -150,4 +149,3 @@ inline G4bool G4TNtupleManager::FillNtupleTColumn(
       }
       
       #endif
      -
      diff --git a/source/analysis/hdf5/include/G4Hdf5RFileManager.hh b/source/analysis/hdf5/include/G4Hdf5RFileManager.hh
      index f783fdc70b..2bb01cb5cb 100644
      --- a/source/analysis/hdf5/include/G4Hdf5RFileManager.hh
      +++ b/source/analysis/hdf5/include/G4Hdf5RFileManager.hh
      @@ -44,6 +44,8 @@ class G4Hdf5RFileManager : public G4BaseFileManager
           explicit G4Hdf5RFileManager(const G4AnalysisManagerState& state);
           virtual ~G4Hdf5RFileManager();
       
      +    virtual G4String GetFileType() const final { return "hdf5"; }
      +
           // Get methods
           hid_t GetRFile(const G4String& fileName, G4bool isPerThread) const;
           hid_t GetHistoRDirectory(const G4String& fileName, const G4String& dirName,
      diff --git a/source/analysis/hdf5/sources.cmake b/source/analysis/hdf5/sources.cmake
      index ee16d42161..e84f768168 100644
      --- a/source/analysis/hdf5/sources.cmake
      +++ b/source/analysis/hdf5/sources.cmake
      @@ -13,7 +13,10 @@ geant4_define_module(NAME G4hdf5
           G4Hdf5AnalysisReader.hh
           G4Hdf5AnalysisReader.icc
           G4Hdf5FileManager.hh
      +    G4Hdf5HnFileManager.hh
      +    G4Hdf5HnFileManager.icc
           G4Hdf5NtupleManager.hh
      +    G4Hdf5NtupleFileManager.hh
           G4Hdf5RNtupleManager.hh
           G4Hdf5RFileManager.hh
           g4hdf5_defs.hh
      @@ -23,6 +26,7 @@ geant4_define_module(NAME G4hdf5
           G4Hdf5AnalysisReader.cc
           G4Hdf5FileManager.cc
           G4Hdf5NtupleManager.cc
      +    G4Hdf5NtupleFileManager.cc
           G4Hdf5RFileManager.cc
           G4Hdf5RNtupleManager.cc
         GRANULAR_DEPENDENCIES
      diff --git a/source/analysis/hdf5/src/G4Hdf5AnalysisManager.cc b/source/analysis/hdf5/src/G4Hdf5AnalysisManager.cc
      index c597378b9f..826a2fceba 100644
      --- a/source/analysis/hdf5/src/G4Hdf5AnalysisManager.cc
      +++ b/source/analysis/hdf5/src/G4Hdf5AnalysisManager.cc
      @@ -28,11 +28,14 @@
       
       #include "G4Hdf5AnalysisManager.hh"
       #include "G4Hdf5FileManager.hh"
      -#include "G4Hdf5NtupleManager.hh"
      +#include "G4Hdf5NtupleFileManager.hh"
       #include "G4AnalysisManagerState.hh"
      +#include "G4AnalysisUtilities.hh"
       #include "G4Threading.hh"
       #include "G4AutoLock.hh"
       
      +using namespace G4Analysis;
      +
       // mutex in a file scope
       
       namespace {
      @@ -75,7 +78,7 @@ G4bool G4Hdf5AnalysisManager::IsInstance()
       //_____________________________________________________________________________
       G4Hdf5AnalysisManager::G4Hdf5AnalysisManager(G4bool isMaster)
        : G4ToolsAnalysisManager("Hdf5", isMaster),
      -   fNtupleManager(nullptr),
      +   fNtupleFileManager(nullptr),
          fFileManager(nullptr)
       {
       #ifdef G4MULTITHREADED
      @@ -84,7 +87,7 @@ G4Hdf5AnalysisManager::G4Hdf5AnalysisManager(G4bool isMaster)
           message 
             << "Your HDF5 lib is not built with H5_HAVE_THREADSAFE.";
           G4Exception("G4Hdf5AnalysisManager::G4Hdf5AnalysisManager",
      -                "Analysis_F001", FatalException, message);
      +                "Analysis_F002", FatalException, message);
       #endif
       #endif
       
      @@ -105,11 +108,10 @@ G4Hdf5AnalysisManager::G4Hdf5AnalysisManager(G4bool isMaster)
         SetFileManager(fFileManager);
         fFileManager->SetBasketSize(fgkDefaultBasketSize);
       
      -  // Ntuple manager
      -  fNtupleManager = new G4Hdf5NtupleManager(fState);
      -  fNtupleManager->SetFileManager(fFileManager);
      -  SetNtupleManager(fNtupleManager);
      -      // The managers will be deleted by the base class
      +  // Ntuple file manager
      +  fNtupleFileManager = std::make_shared(fState);
      +  fNtupleFileManager->SetFileManager(fFileManager);
      +  fNtupleFileManager->SetBookingManager(fNtupleBookingManager);
       }
       
       //_____________________________________________________________________________
      @@ -134,8 +136,7 @@ G4bool G4Hdf5AnalysisManager::WriteH1()
         auto result = true;
       
         if ( ! G4Threading::IsWorkerThread() )  {
      -    auto directoryName = fFileManager->GetHistoDirectoryName(); 
      -    result = WriteHn(h1Vector, hnVector, directoryName, "h1");
      +    result = WriteHn(h1Vector, hnVector, "h1");
         }  
         else {
           // The worker manager just adds its histograms to the master
      @@ -159,8 +160,7 @@ G4bool G4Hdf5AnalysisManager::WriteH2()
         auto result = true;
         
         if ( ! G4Threading::IsWorkerThread() )  {
      -    auto directoryName = fFileManager->GetHistoDirectoryName(); 
      -    result = WriteHn(h2Vector, hnVector, directoryName, "h2");
      +    result = WriteHn(h2Vector, hnVector, "h2");
         }  
         else {
           // The worker manager just adds its histograms to the master
      @@ -184,8 +184,7 @@ G4bool G4Hdf5AnalysisManager::WriteH3()
         auto result = true;
         
         if ( ! G4Threading::IsWorkerThread() )  {
      -    auto directoryName = fFileManager->GetHistoDirectoryName(); 
      -    result = WriteHn(h3Vector, hnVector, directoryName, "h3");
      +    result = WriteHn(h3Vector, hnVector, "h3");
         }  
         else {
           // The worker manager just adds its histograms to the master
      @@ -209,8 +208,7 @@ G4bool G4Hdf5AnalysisManager::WriteP1()
         auto result = true;
         
         if ( ! G4Threading::IsWorkerThread() )  {
      -    auto directoryName = fFileManager->GetHistoDirectoryName(); 
      -    result = WritePn(p1Vector, hnVector, directoryName, "p1");
      +    result = WritePn(p1Vector, hnVector, "p1");
         }  
         else {
           // The worker manager just adds its profiles to the master
      @@ -234,8 +232,7 @@ G4bool G4Hdf5AnalysisManager::WriteP2()
         auto result = true;
         
         if ( ! G4Threading::IsWorkerThread() )  {
      -    auto directoryName = fFileManager->GetHistoDirectoryName(); 
      -    result = WritePn(p2Vector, hnVector, directoryName, "p2");
      +    result = WritePn(p2Vector, hnVector, "p2");
         }  
         else {
           // The worker manager just adds its profiles to the master
      @@ -258,7 +255,7 @@ G4bool G4Hdf5AnalysisManager::Reset()
         auto result = G4ToolsAnalysisManager::Reset();
         finalResult = finalResult && result;
         
      -  result = fNtupleManager->Reset(true);
      +  result = fNtupleFileManager->Reset();
         finalResult = finalResult && result;
         
         return finalResult;
      @@ -271,47 +268,34 @@ G4bool G4Hdf5AnalysisManager::Reset()
       //_____________________________________________________________________________
       G4bool G4Hdf5AnalysisManager::OpenFileImpl(const G4String& fileName)
       {
      -  auto finalResult = true;
      -  auto result = fFileManager->SetFileName(fileName);
      -  finalResult = finalResult && result;
      +  // Create ntuple manager(s)
      +  // and set it to base class which takes then their ownership
      +  SetNtupleManager(fNtupleFileManager->CreateNtupleManager());
       
      -#ifdef G4VERBOSE
      -  G4String name = fFileManager->GetFullFileName();
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()->Message("open", "analysis file", name);
      -#endif
      +  auto finalResult = true;
       
         G4AutoLock lock(&openFileMutex);
      -  result = fFileManager->OpenFile(fileName);
      +  auto result = fFileManager->OpenFile(fileName);
         finalResult = finalResult && result;
       
      -  // fNtupleManager->SetNtupleDirectory(fFileManager->GetNtupleDirectory());
      -  fNtupleManager->CreateNtuplesFromBooking();
      +  result = fNtupleFileManager->ActionAtOpenFile(fFileManager->GetFullFileName());
      +  finalResult = finalResult && result;
         lock.unlock();
       
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()->Message("open", "analysis file", name, finalResult);
      -#endif
      -
         return finalResult;
       }  
      -  
      +
       //_____________________________________________________________________________
       G4bool G4Hdf5AnalysisManager::WriteImpl() 
       {
         auto finalResult = true;
       
       #ifdef G4VERBOSE
      -  auto name = fFileManager->GetFullFileName();
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()->Message("write", "files", name);
      +  if ( fState.GetVerboseL4() ) {
      +    fState.GetVerboseL4()->Message("write", "files", "");
      +  }
       #endif
       
      -  // Histo directory
      -  // auto result = fFileManager->WriteHistoDirectory();
      -  // if ( ! result ) return false;
      -
         auto result = WriteH1();
         finalResult = finalResult && result;
       
      @@ -331,10 +315,6 @@ G4bool G4Hdf5AnalysisManager::WriteImpl()
         result = WriteP2();
         finalResult = finalResult && result;
         
      -  // // Ntuple directory
      -  // result = fFileManager->WriteNtupleDirectory();
      -  // if ( ! result ) return false;
      -
         // Write ASCII if activated
         if ( IsAscii() ) {
           result = WriteAscii(fFileManager->GetFileName());
      @@ -342,9 +322,9 @@ G4bool G4Hdf5AnalysisManager::WriteImpl()
         }   
       
       #ifdef G4VERBOSE
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()
      -      ->Message("write", "file", fFileManager->GetFullFileName(), finalResult);
      +  if ( fState.GetVerboseL2() ) {
      +    fState.GetVerboseL2()->Message("write", "files", "", finalResult);
      +  }
       #endif
       
         return finalResult;
      @@ -356,27 +336,25 @@ G4bool G4Hdf5AnalysisManager::CloseFileImpl(G4bool reset)
         auto finalResult = true;
       
         G4AutoLock lock(&closeFileMutex);
      -  auto result = fFileManager->CloseFile();
      +  auto result = fFileManager->CloseFiles();
         finalResult = finalResult && result;
       
         if ( reset ) {
           // reset data
           result = Reset();
      -  } else {
      -    // ntuple must be reset 
      -    result = fNtupleManager->Reset(true);
      -  }
      -  if ( ! result ) {
      +    if ( ! result ) {
             G4ExceptionDescription description;
             description << "      " << "Resetting data failed";
             G4Exception("G4Hdf5AnalysisManager::CloseFile()",
                       "Analysis_W021", JustWarning, description);
      +    }
         }
      -
      -  lock.unlock();
         finalResult = finalResult && result;
       
      -  // No files clean-up as ntuples are not supported in MT mode
      +  result = fNtupleFileManager->ActionAtCloseFile(reset);
      +  finalResult = finalResult && result;
      +
      +  lock.unlock();
       
         return finalResult; 
       }
      diff --git a/source/analysis/hdf5/src/G4Hdf5FileManager.cc b/source/analysis/hdf5/src/G4Hdf5FileManager.cc
      index 52bb6f9a2b..07960f74be 100644
      --- a/source/analysis/hdf5/src/G4Hdf5FileManager.cc
      +++ b/source/analysis/hdf5/src/G4Hdf5FileManager.cc
      @@ -27,24 +27,38 @@
       // Author: Ivana Hrivnacova, 20/07/2017 (ivana@ipno.in2p3.fr)
       
       #include "G4Hdf5FileManager.hh"
      +#include "G4Hdf5HnFileManager.hh"
       #include "G4AnalysisManagerState.hh"
       #include "G4AnalysisUtilities.hh"
      +#include "G4AutoLock.hh"
       
       #include "tools/hdf5/h2file"
       
       using namespace G4Analysis;
      +using namespace tools;
      +
      +//using namespace G4Analysis;
      +
      +namespace {
      +  //Mutex to lock master manager when closing a file
      +  G4Mutex closeFileMutex = G4MUTEX_INITIALIZER;
      +}  
       
       //_____________________________________________________________________________
       const G4String G4Hdf5FileManager::fgkDefaultDirectoryName = "default";
       
       //_____________________________________________________________________________
       G4Hdf5FileManager::G4Hdf5FileManager(const G4AnalysisManagerState& state)
      - : G4VFileManager(state),
      -   fFile(kInvalidId),
      -   fHistoDirectory(kInvalidId),
      -   fNtupleDirectory(kInvalidId),
      + : G4VTFileManager(state),
          fBasketSize(0)          // TO DO: check default value !! (433 in test)
      -{}
      +{
      +  // Create helpers defined in the base class
      +  fH1FileManager = std::make_shared>(this);
      +  fH2FileManager = std::make_shared>(this);
      +  fH3FileManager = std::make_shared>(this);
      +  fP1FileManager = std::make_shared>(this);
      +  fP2FileManager = std::make_shared>(this);  
      +}
       
       //_____________________________________________________________________________
       G4Hdf5FileManager::~G4Hdf5FileManager()
      @@ -55,109 +69,153 @@ G4Hdf5FileManager::~G4Hdf5FileManager()
       //
       
       //_____________________________________________________________________________
      -G4bool G4Hdf5FileManager::CreateDirectory(const G4String& directoryType, 
      -  const G4String& directoryName, hid_t& directory)
      +hid_t G4Hdf5FileManager::CreateDirectory(hid_t& file,
      +  const G4String& directoryName, const G4String& objectType)
       {
       // Method for both histograms and ntuples directories.
      -// For histos: CreateDirectory("histograms", fHistoDirectoryName, fHistoDirectory)
      -// For ntples: CreateDirectory("ntuples", fNtupleDirectoryName, fNtupleDirectory)
       
      +  // return if no file provided
      +  if ( file < 0 ) return false;
      +
      +  // use default directory name if not provided
         auto newDirectoryName = directoryName;
      -
         if ( newDirectoryName == "" ) {
      -    // if ( fDefaultDirectory > 0  ) {
      -    //   // Return the default directory if the name is not set and the default directory
      -    //   // already exists
      -    //   directory = fDefaultDirectory;
      -    //   return true;
      -    // } else {
      -      // Create the default directory if the name is not set and the default directory
      -      // does not yet exist
             newDirectoryName = fgkDefaultDirectoryName;
             newDirectoryName += "_";
      -      newDirectoryName += directoryType;
      +      newDirectoryName += objectType;
         }
      -  
      +
       #ifdef G4VERBOSE
         if ( fState.GetVerboseL4() ) {
      -    G4String message = "directory for ";
      -    message += directoryType;
      -    fState.GetVerboseL4()->Message("create", message, newDirectoryName);
      +    fState.GetVerboseL4()
      +      ->Message("create", "directory for " + objectType, newDirectoryName);
         }
       #endif
      -  
      -  directory = tools_H5Gcreate(fFile, newDirectoryName, 0);
      +
      +  auto success = true;
      +
      +  // create directory
      +  auto directory = tools_H5Gcreate(file, newDirectoryName, 0);
              // 0 seems to be an optional parameter. The web doc does not say what should
              // be the default value but 0 is what is found in examples, and in the code, if we pass 0, clearly some
              // default value is taken.
      -
         if ( directory < 0 ) {
           G4ExceptionDescription description;
      -    description << "      " 
      +    description << "      "
                       << "cannot create directory " << directoryName;
           G4Exception("G4Hdf5FileManager::CreateDirectory()",
                       "Analysis_W001", JustWarning, description);
      -    return false;       
      -  }  
      -#ifdef G4VERBOSE
      +    success = false;
      +  }
         else {
      -    if ( fState.GetVerboseL2() ) {
      -    G4String message = "directory for ";
      -    message += directoryType;
      -      fState.GetVerboseL2()->Message("create", message, newDirectoryName);
      +    // write atb (header?)
      +    auto result = hdf5::write_atb(directory, "type", "directory");
      +    if ( !result) {
      +      G4ExceptionDescription description;
      +      description << "      "
      +                  << "write_atb class failed for " << directoryName;
      +      G4Exception("G4Hdf5FileManager::CreateDirectory()",
      +                  "Analysis_W001", JustWarning, description);
      +      success = false;
           }
      -  }    
      +  }
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL2() ) {
      +    fState.GetVerboseL2()
      +      ->Message("create", "directory for " + objectType, newDirectoryName, success);
      +  }
       #endif
      +  return directory;
      +}
      +
      +//_____________________________________________________________________________
      +G4String G4Hdf5FileManager::GetNtupleFileName(Hdf5NtupleDescription* ntupleDescription)
      +{
      +  // get ntuple file name 
      +  auto ntupleFileName = ntupleDescription->fFileName;
      +  if ( ntupleFileName.size() ) {
      +    // update filename per object per thread
      +    ntupleFileName = GetTnFileName(ntupleFileName, GetFileType());
      +  } else {
      +    // get default file name
      +    ntupleFileName = GetFullFileName();
      +  }
      +  return ntupleFileName;
      +}  
      +
      +// 
      +// protected methods
      +//
      +
      +//_____________________________________________________________________________
      +std::shared_ptr G4Hdf5FileManager::CreateFileImpl(const G4String& fileName)
      +{
      +  // create a new file
      +  hid_t file = ::H5Fcreate(fileName, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);
      +
      +  // Do nothing if there is no file
      +  // (the error should be handled by caller)
      +  if ( file < 0 ) {
      +    G4ExceptionDescription description;
      +    description << "      " << "::H5Fcreate failed " << fileName;
      +    G4Exception("G4Hdf5AnalysisManager::CreateFileImpl()",
      +                "Analysis_W001", JustWarning, description);
      +    return std::make_shared(-1, -1, -1);
      +  }
      +
      +  // create a header with general infos
      +  if(!tools::hdf5::write_header(file)) {
      +    G4ExceptionDescription description;
      +    description << "      " << "tools::hdf5::write_header() failed for " << fileName;
      +    G4Exception("G4Hdf5AnalysisManager::CreateFileImpl()",
      +                "Analysis_W001", JustWarning, description);
      +    return std::make_shared(-1, -1, -1);
      +  }
      +
      +  // create histo directory
      +  auto hdirectory
      +    = CreateDirectory(file, fHistoDirectoryName, "histograms");
      +  if ( hdirectory < 0 ) {
      +    // Warnin is issued in CreateDirectory
      +    return std::make_shared(-1, -1, -1);
      +  }
      +
      +  // create ntuple directory
      +  auto ndirectory
      +    = CreateDirectory(file, fNtupleDirectoryName, "ntuples");
      +  if ( ndirectory < 0 ) {
      +    // Warnin is issued in CreateDirectory
      +    return std::make_shared(-1, -1, -1);
      +  }
      +
      +  return std::make_shared(file, hdirectory, ndirectory);
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4Hdf5FileManager::WriteFileImpl(std::shared_ptr /*file*/)
      +{
      +  // Nothing to be done here
         return true;
       }
       
       //_____________________________________________________________________________
      -#ifdef G4VERBOSE
      -G4bool G4Hdf5FileManager::WriteDirectory(const G4String& directoryType,
      -   const G4String& directoryName, hid_t& directory)
      -#else
      -G4bool G4Hdf5FileManager::WriteDirectory(const G4String& /*directoryType*/,
      -   const G4String& directoryName, hid_t& directory)
      -#endif  
      +G4bool G4Hdf5FileManager::CloseFileImpl(std::shared_ptr file)
       {
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) {
      -    G4String message = "directory for ";
      -    message += directoryType;
      -    fState.GetVerboseL4()
      -      ->Message("write", message, directoryName);
      -  }
      -#endif
      -  
      -  auto result 
      -    = tools::hdf5::write_atb(directory, "type", "directory");
      +  if ( ! file ) return false;
       
      -  if ( ! result ) {
      -    G4ExceptionDescription description;
      -    description << "      " 
      -                << "cannot write directory " << directoryName;
      -    G4Exception("G4Hdf5FileManager::WriteDirectory()",
      -                "Analysis_W001", JustWarning, description);
      -    // close 
      -    // ::H5Gclose(histos);
      -    // ::H5Fclose(file);
      +  G4AutoLock lock(&closeFileMutex);
       
      -    return false;
      -  }  
      -#ifdef G4VERBOSE
      -  else {
      -    if ( fState.GetVerboseL2() ) {
      -    G4String message = "directory for ";
      -    message += directoryType;
      -      fState.GetVerboseL2()->Message("write", message, fHistoDirectoryName);
      -    }
      -  }    
      -#endif
      +  ::H5Gclose(std::get<1>(*file));
      +  ::H5Gclose(std::get<2>(*file));
      +  ::H5Fclose(std::get<0>(*file));
       
      -  return result;
      +  lock.unlock();
      +
      +  return true;
       }
      - 
      -// 
      +
      +//
       // public methods
       //
       
      @@ -165,102 +223,79 @@ G4bool G4Hdf5FileManager::WriteDirectory(const G4String& /*directoryType*/,
       G4bool G4Hdf5FileManager::OpenFile(const G4String& fileName)
       {
         // Keep file name
      -  fFileName =  fileName;
      +  fFileName = fileName;
         auto name = GetFullFileName();
      -  
      -  // delete previous file if exists
      -  //if ( fFile ) delete fFile;
      +
      +  if ( fFile ) {
      +    G4ExceptionDescription description;
      +    description 
      +      << "File " << fileName << " already exists."; 
      +    G4Exception("G4Hdf5FileManager::OpenFile()",
      +                "Analysis_W001", JustWarning, description);
      +    fFile.reset();
      +  }
       
         // create new file
      -  fFile = ::H5Fcreate(name, H5F_ACC_TRUNC, H5P_DEFAULT, H5P_DEFAULT);  
      -  if ( fFile < 0 ) {
      +  fFile = CreateTFile(name);
      +  if ( ! fFile ) {
           G4ExceptionDescription description;
      -    description << "      " << "Cannot open file " << fileName;
      -    G4Exception("G4Hdf5AnalysisManager::OpenFile()",
      +    description << "Failed to create file " << fileName;
      +    G4Exception("G4Hdf5FileManager::OpenFile()",
                       "Analysis_W001", JustWarning, description);
           return false;
         }
       
      -  // Create directories
      -  if ( ! CreateDirectory("histograms", fHistoDirectoryName, fHistoDirectory) ) return false;
      -  if ( ! CreateDirectory("ntuples", fNtupleDirectoryName, fNtupleDirectory) ) return false;
      -
      -  // // Open ntuple files
      -  // OpenNtupleFiles();
      -
      -  // Write directories
      -  if ( ! WriteHistoDirectory() ) return false;
      -  if ( ! WriteNtupleDirectory() ) return false;
      -
      -  fLockFileName = true;
      -  fLockHistoDirectoryName = true;
      -  fLockNtupleDirectoryName = true;
      -
      +  fLockDirectoryNames = true;
         fIsOpenFile = true;
       
         return true;
       }
        
       //_____________________________________________________________________________
      -G4bool G4Hdf5FileManager::WriteFile() 
      +G4bool G4Hdf5FileManager::CreateNtupleFile(
      +  Hdf5NtupleDescription* ntupleDescription)
       {
      -  // Nothing to be done here
      -  return true;
      +  // get ntuple file name per object
      +  auto ntupleFileName = GetNtupleFileName(ntupleDescription);
      +
      +  auto file = GetTFile(ntupleFileName, false);
      +  if (! file) {
      +    file = CreateTFile(ntupleFileName);
      +  }
      +  ntupleDescription->fFile = file;
      +
      +  return (ntupleDescription->fFile != nullptr);
       }
       
       //_____________________________________________________________________________
      -G4bool G4Hdf5FileManager::CloseFile()
      +G4bool G4Hdf5FileManager::CloseNtupleFile(
      +  Hdf5NtupleDescription* ntupleDescription)
       {
         // Do nothing if there is no file
      -  if ( fFile < 0 ) return true;
      +  if ( ! ntupleDescription->fFile ) return true;
       
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()->Message("close", "file", GetFullFileName());
      -#endif
      +  // Ntuple files will be closed with CloseFiles() calls
      +  ntupleDescription->fFile.reset();
       
      -  if ( fHistoDirectory >= 0 ) {
      -    ::H5Gclose(fHistoDirectory);
      -  }
      -  if ( fNtupleDirectory >= 0 ) {
      -    ::H5Gclose(fNtupleDirectory);
      -  }
      -  ::H5Fclose(fFile);
      +  // Notify not empty file
      +  auto ntupleFileName = GetNtupleFileName(ntupleDescription);
      +  auto result = SetIsEmpty(ntupleFileName, ! ntupleDescription->fHasFill);
       
      -  fLockFileName = false;
      -  fIsOpenFile = false;
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()->Message("close", "file", GetFullFileName(), true);
      -#endif
      -
      -  // CHECK
      -  // the result not returned from hdf5 
      -
      -  return true;
      +  return result;
       }
       
       //_____________________________________________________________________________
      -G4bool G4Hdf5FileManager::WriteHistoDirectory()
      +hid_t G4Hdf5FileManager::GetHistoDirectory() const
       {
      -  return WriteDirectory("histograms", fHistoDirectoryName, fHistoDirectory);
      +  if ( ! fFile ) return kInvalidId;
      +
      +  return std::get<1>(*fFile);
       }
       
       //_____________________________________________________________________________
      -G4bool G4Hdf5FileManager::WriteNtupleDirectory()
      +hid_t G4Hdf5FileManager::GetNtupleDirectory() const
       {
      -  return WriteDirectory("ntuples", fNtupleDirectoryName, fNtupleDirectory);
      +  if ( ! fFile ) return kInvalidId;
      +
      +  return std::get<2>(*fFile);
       }
      -
      -//_____________________________________________________________________________
      -void G4Hdf5FileManager::CloseAfterHnWrite()
      -{
      -  if ( fHistoDirectory >= 0 ) {
      -    ::H5Gclose(fHistoDirectory);
      -  }
      -  ::H5Fclose(fFile);
      -}
      -
      -
      -
      diff --git a/source/analysis/hdf5/src/G4Hdf5NtupleFileManager.cc b/source/analysis/hdf5/src/G4Hdf5NtupleFileManager.cc
      new file mode 100644
      index 0000000000..bb353dd252
      --- /dev/null
      +++ b/source/analysis/hdf5/src/G4Hdf5NtupleFileManager.cc
      @@ -0,0 +1,150 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Author: Ivana Hrivnacova, 15/09/2020  (ivana@ipno.in2p3.fr)
      +
      +#include "G4Hdf5NtupleFileManager.hh"
      +#include "G4Hdf5NtupleManager.hh"
      +#include "G4Hdf5FileManager.hh"
      +#include "G4AnalysisManagerState.hh"
      +#include "G4AnalysisUtilities.hh"
      +
      +#include "G4Threading.hh"
      +
      +#include 
      +
      +using namespace G4Analysis;
      +
      +// 
      +// utility methods
      +//
      +
      +//_____________________________________________________________________________
      +G4Hdf5NtupleFileManager::G4Hdf5NtupleFileManager(const G4AnalysisManagerState& state)
      + : G4VNtupleFileManager(state, "hdf5"),
      +   fFileManager(nullptr),
      +   fNtupleManager(nullptr)
      +{}
      +
      +//_____________________________________________________________________________
      +G4Hdf5NtupleFileManager::~G4Hdf5NtupleFileManager()
      +{}
      +
      +// 
      +// private methods
      +//
      +
      +//_____________________________________________________________________________
      +G4bool G4Hdf5NtupleFileManager::CloseNtupleFiles()
      +{
      + // Close ntuple files
      +
      +  auto finalResult = true;
      +  auto ntupleVector = fNtupleManager->GetNtupleDescriptionVector();
      +  for ( auto ntupleDescription : ntupleVector) {
      +    auto result = fFileManager->CloseNtupleFile(ntupleDescription);
      +    finalResult = finalResult && result;
      +  }
      +
      +  return finalResult;
      +}
      +
      +//
      +// public methods
      +//
      +
      +//_____________________________________________________________________________
      +std::shared_ptr G4Hdf5NtupleFileManager::CreateNtupleManager()
      +{
      +
      +  // The managers will be deleted by the base class
      +  fNtupleManager = std::make_shared(fState);
      +  fNtupleManager->SetFileManager(fFileManager);
      +
      +  return fNtupleManager;
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4Hdf5NtupleFileManager::ActionAtOpenFile(const G4String& /*fileName*/)
      +{
      +  // Create ntuples if they are booked  
      +  // (The files will be created with creating ntuples)
      +  fNtupleManager->CreateNtuplesFromBooking(
      +    fBookingManager->GetNtupleBookingVector());
      +
      +  return true;
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4Hdf5NtupleFileManager::ActionAtWrite()
      +{
      +  // notify that ntuple file is not empty
      +
      +  auto finalResult = true;
      +
      +  // Notify that ntuple files are not empty
      +  auto ntupleVector
      +    = fNtupleManager->GetNtupleDescriptionVector();
      +
      +  for ( auto ntupleDescription : ntupleVector) {
      +    if (ntupleDescription->fFile) {
      +      auto result = fFileManager->SetIsEmpty(ntupleDescription->fFileName, false);
      +      finalResult = finalResult && result;
      +    }
      +  }
      +
      +  return finalResult;
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4Hdf5NtupleFileManager::ActionAtCloseFile(G4bool reset)
      +{
      +  auto finalResult = true;
      +
      +  // Close ntuple files
      +  auto result = CloseNtupleFiles();
      +  finalResult = finalResult && result;
      +
      +  if ( ! reset ) {
      +    // The ntuples must be always reset when closing file) 
      +    result = Reset();
      +    if ( ! result ) {
      +      G4ExceptionDescription description;
      +      description << "      " << "Resetting data failed";
      +      G4Exception("G4Hdf5NtupleFileManager::CloseFile()",
      +                "Analysis_W021", JustWarning, description);
      +    }
      +    finalResult = finalResult && result;
      +  }
      +
      +  return finalResult;
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4Hdf5NtupleFileManager::Reset()
      +{
      +  return fNtupleManager->Reset(true);
      +}
      diff --git a/source/analysis/hdf5/src/G4Hdf5NtupleManager.cc b/source/analysis/hdf5/src/G4Hdf5NtupleManager.cc
      index 99b11085da..5212df3273 100644
      --- a/source/analysis/hdf5/src/G4Hdf5NtupleManager.cc
      +++ b/source/analysis/hdf5/src/G4Hdf5NtupleManager.cc
      @@ -41,7 +41,7 @@ using namespace G4Analysis;
       
       //_____________________________________________________________________________
       G4Hdf5NtupleManager::G4Hdf5NtupleManager(const G4AnalysisManagerState& state)
      - : G4TNtupleManager(state),
      + : G4TNtupleManager(state),
          fFileManager(nullptr)
       {}
       
      @@ -54,26 +54,30 @@ G4Hdf5NtupleManager::~G4Hdf5NtupleManager()
       //
       //_____________________________________________________________________________
       void G4Hdf5NtupleManager::CreateTNtuple(
      -  NtupleDescriptionType*  ntupleDescription, G4bool warn)
      +  Hdf5NtupleDescription* ntupleDescription, G4bool warn)
       {
       // Ntuple will be created from ntupleDescription if file is open,
       // return with or without warning otherwise
       
      -  // create a file for this ntuple
      -  // if ( ! fFileManager->CreateNtupleFile(ntupleDescription) ) return;
      +  // Get ntuple file from ntuple description
      +  auto ntupleFile = ntupleDescription->fFile;
      +  if (! ntupleFile) {
      +    ntupleFile = fFileManager->GetFile();
      +  }
       
      -  // Check ntuple directory
      -  if ( fFileManager->GetNtupleDirectory() < 0 ) {
      -    if ( warn ) {
      -      G4String inFunction = "G4Hdf5NtupleManager::::CreateTNtupleFromBooking";
      +  // Check file
      +  if ( ! ntupleFile ) {
      +    if (warn) {
      +      G4String inFunction = "G4Hdf5NtupleManager::::CreateTNtuple";
             G4ExceptionDescription description;
             description << "      " 
      -        << "Cannot create ntuple. Ntuple directory does not exist." << G4endl;
      +        << "Cannot create ntuple. Ntuple file does not exist." << G4endl;
             G4Exception(inFunction, "Analysis_W002", JustWarning, description);
           }
           return;
         }
       
      +  auto directory = std::get<2>(*ntupleFile);
         auto basketSize = fFileManager->GetBasketSize();
         // auto compressionLevel = fState.GetCompressionLevel();
         auto compressionLevel = 0;
      @@ -81,31 +85,28 @@ void G4Hdf5NtupleManager::CreateTNtuple(
         // create ntuple
         ntupleDescription->fNtuple
           = new tools::hdf5::ntuple(
      -            G4cout, fFileManager->GetNtupleDirectory(), ntupleDescription->fNtupleBooking, 
      +            G4cout, directory, ntupleDescription->fNtupleBooking,
                   compressionLevel, basketSize);
       
         fNtupleVector.push_back(ntupleDescription->fNtuple);  
       }
       
      -//_____________________________________________________________________________
      -void G4Hdf5NtupleManager::CreateTNtuple(
      -  G4TNtupleDescription* /*ntupleDescription*/,
      -  const G4String& /*name*/, const G4String& /*title*/)
      -{
      -  // Ntuple will be created at finish ntuple from ntuple_booking
      -}
      -
       //_____________________________________________________________________________
       void G4Hdf5NtupleManager::CreateTNtupleFromBooking(
      -  G4TNtupleDescription* ntupleDescription)
      +  Hdf5NtupleDescription* ntupleDescription)
       {
      +  // Create file if file name per object is set
      +  if ( ntupleDescription->fFileName.size() ) {
      +    fFileManager->CreateNtupleFile(ntupleDescription);
      +  }
      +
         // Create ntuple from booking and print a warning if file is not open
         CreateTNtuple(ntupleDescription, true);
       }
       
       //_____________________________________________________________________________
       void G4Hdf5NtupleManager::FinishTNtuple(
      -  G4TNtupleDescription* ntupleDescription,
      +  Hdf5NtupleDescription* ntupleDescription,
         G4bool /*fromBooking*/)
       {
         if ( ! ntupleDescription->fNtuple ) {
      @@ -113,6 +114,6 @@ void G4Hdf5NtupleManager::FinishTNtuple(
           CreateTNtuple(ntupleDescription, false);
         }
       
      -  fFileManager->LockNtupleDirectoryName();
      +  fFileManager->LockDirectoryNames();
       }
       
      diff --git a/source/analysis/hntools/include/G4MPIToolsManager.hh b/source/analysis/hntools/include/G4MPIToolsManager.hh
      index 0345aee331..f354d04351 100644
      --- a/source/analysis/hntools/include/G4MPIToolsManager.hh
      +++ b/source/analysis/hntools/include/G4MPIToolsManager.hh
      @@ -148,7 +148,7 @@ G4bool G4MPIToolsManager::Receive(G4int nofActiveT,
           if ( G4int(hs.size()) != nofActiveT ) {
             G4ExceptionDescription description;
             description << "    srank: " << srank << " : got " << hs.size() << " objects, "
      -                  << "while " << nofActiveT  << " were exepected." << G4endl;
      +                  << "while " << nofActiveT  << " were expected." << G4endl;
             G4Exception("G4H1ToolsManager::Receieve",
                     "Analysis_W031", JustWarning, description);
             return false;
      diff --git a/source/analysis/hntools/include/G4ToolsAnalysisManager.hh b/source/analysis/hntools/include/G4ToolsAnalysisManager.hh
      index 7e800795e1..4bf4cb5700 100644
      --- a/source/analysis/hntools/include/G4ToolsAnalysisManager.hh
      +++ b/source/analysis/hntools/include/G4ToolsAnalysisManager.hh
      @@ -74,7 +74,7 @@ class G4ToolsAnalysisManager : public  G4VAnalysisManager
                                     G4bool onlyIfActive = true) const;
           tools::histo::p2d*  GetP2(G4int id, G4bool warn = true,
                                     G4bool onlyIfActive = true) const;
      -    
      +
           // Iterators
           std::vector::iterator BeginH1();
           std::vector::iterator EndH1();
      diff --git a/source/analysis/hntools/src/G4ToolsAnalysisManager.cc b/source/analysis/hntools/src/G4ToolsAnalysisManager.cc
      index 7bd7068eb4..ea691c563f 100644
      --- a/source/analysis/hntools/src/G4ToolsAnalysisManager.cc
      +++ b/source/analysis/hntools/src/G4ToolsAnalysisManager.cc
      @@ -34,6 +34,7 @@
       #include "G4P2ToolsManager.hh"
       #include "G4PlotManager.hh"
       #include "G4MPIToolsManager.hh"
      +#include "G4AnalysisUtilities.hh"
       
       G4ThreadLocal G4ToolsAnalysisManager* G4ToolsAnalysisManager::fgToolsInstance = nullptr;
       
      @@ -203,5 +204,3 @@ G4bool G4ToolsAnalysisManager::Reset()
         
         return finalResult;
       }  
      - 
      -
      diff --git a/source/analysis/management/include/G4AnalysisManagerState.hh b/source/analysis/management/include/G4AnalysisManagerState.hh
      index 7e2cac55ba..b4ececde99 100644
      --- a/source/analysis/management/include/G4AnalysisManagerState.hh
      +++ b/source/analysis/management/include/G4AnalysisManagerState.hh
      @@ -119,5 +119,4 @@ inline const G4AnalysisVerbose* G4AnalysisManagerState::GetVerboseL4() const
       inline G4int  G4AnalysisManagerState::GetCompressionLevel() const
       { return fCompressionLevel; }
       
      -#endif  
      -
      +#endif
      diff --git a/source/analysis/management/include/G4AnalysisMessenger.hh b/source/analysis/management/include/G4AnalysisMessenger.hh
      index 3fe8c65c9b..6e199afc7b 100644
      --- a/source/analysis/management/include/G4AnalysisMessenger.hh
      +++ b/source/analysis/management/include/G4AnalysisMessenger.hh
      @@ -63,9 +63,9 @@ class G4AnalysisMessenger : public G4UImessenger
           // methods
           void SetH1HnManager(G4HnManager& h1HnManager);
           void SetH2HnManager(G4HnManager& h2HnManager);
      -    void SetH3HnManager(G4HnManager& h2HnManager);
      -    void SetP1HnManager(G4HnManager& h1HnManager);
      -    void SetP2HnManager(G4HnManager& h2HnManager);
      +    void SetH3HnManager(G4HnManager& h3HnManager);
      +    void SetP1HnManager(G4HnManager& p1HnManager);
      +    void SetP2HnManager(G4HnManager& p2HnManager);
       
           // methods
           virtual void SetNewValue(G4UIcommand* command, G4String value) final;
      diff --git a/source/analysis/management/include/G4AnalysisUtilities.hh b/source/analysis/management/include/G4AnalysisUtilities.hh
      index d0ca41ea61..faf044f0b4 100644
      --- a/source/analysis/management/include/G4AnalysisUtilities.hh
      +++ b/source/analysis/management/include/G4AnalysisUtilities.hh
      @@ -38,9 +38,7 @@
       
       enum class G4AnalysisOutput {
         kCsv,
      -#ifdef TOOLS_USE_HDF5
         kHdf5,
      -#endif
         kRoot,
         kXml,
         kNone
      @@ -90,8 +88,68 @@ std::unique_ptr make_unique(Args&&... args)
       
       // get output type from name
       G4AnalysisOutput GetOutput(const G4String& outputName, G4bool warn = true);
      +size_t GetOutputId(const G4String& outputName, G4bool warn = true);
       G4String GetOutputName(G4AnalysisOutput outputType);
       
      +// get short hnType from the tools object
      +template 
      +G4String GetHnType()
      +{
      +  // tools::histo::h1d etc.
      +  G4String hnTypeLong = HT::s_class();
      +
      +  // tools::histo::h1d -> h1 etc.
      +  return hnTypeLong.substr(14, 2);
      +}
      +
      +// File names utilities
      +
      +// Get file base name (without dot)
      +G4String GetBaseName(const G4String& fileName);
      +
      +// Get file base extension (without dot)
      +G4String GetExtension(const G4String& fileName,
      +            const G4String& defaultExtension = "");
      +
      +// Compose and return the histogram or profile specific file name:
      +// - add _hn_hnName suffix to the file base name
      +// - add file extension if not present
      +G4String GetHnFileName(
      +            const G4String& fileName,
      +            const G4String& fileType, 
      +            const G4String& hnType, 
      +            const G4String& hnName);
      +
      +// Compose and return the ntuple specific file name:
      +// - add _nt_ntupleName suffix to the file base name
      +// - add _tN suffix if called on thread worker
      +// - add file extension if not present
      +G4String GetNtupleFileName(
      +            const G4String& fileName,
      +            const G4String& fileType, 
      +            const G4String& ntupleName);
      +
      +// Compose and return the ntuple specific file name:
      +// - add _nt_ntupleName suffix to the file base name
      +// - add _tN suffix if called on thread worker
      +// - add file extension if not present
      +G4String GetNtupleFileName(
      +            const G4String& fileName,
      +            const G4String& fileType, 
      +            G4int ntupleFileNumber);
      +
      +// Update file base name with the thread suffix:
      +// - add _tN suffix if called on thread worker
      +// - add file extension if not present
      +G4String GetTnFileName(
      +            const G4String& fileName,
      +            const G4String& fileType);
      +
      +// Generate plot file name for an output file name
      +G4String GetPlotFileName(const G4String& fileName);
      +
      +}
      +
       /*
       // make possible to print enumerators in class enum as integer
       template 
      @@ -102,10 +160,5 @@ auto as_integer(Enumeration const value)
       }
       */
       
      -}
      -
       #endif
       
      -
      -
      -
      diff --git a/source/analysis/management/include/G4AnalysisVerbose.hh b/source/analysis/management/include/G4AnalysisVerbose.hh
      index 6e8a167201..c01e2fe512 100644
      --- a/source/analysis/management/include/G4AnalysisVerbose.hh
      +++ b/source/analysis/management/include/G4AnalysisVerbose.hh
      @@ -36,7 +36,7 @@
       class G4AnalysisVerbose
       {
         public:
      -    G4AnalysisVerbose(const G4String& type, G4int verboseLevel);
      +    G4AnalysisVerbose(G4int verboseLevel);
           ~G4AnalysisVerbose();
       
           void Message(const G4String& action, 
      @@ -52,7 +52,6 @@ class G4AnalysisVerbose
         private:
           // data members
           //
      -    G4String fType;
           G4String fToBeDoneText;
           G4String fDoneText;
           G4String fFailureText;
      diff --git a/source/analysis/management/include/G4BaseFileManager.hh b/source/analysis/management/include/G4BaseFileManager.hh
      index 4d63193b6b..42837c0fdf 100644
      --- a/source/analysis/management/include/G4BaseFileManager.hh
      +++ b/source/analysis/management/include/G4BaseFileManager.hh
      @@ -34,6 +34,8 @@
       #include "G4AnalysisManagerState.hh"
       #include "globals.hh"
       
      +#include 
      +
       class G4BaseFileManager
       {
         public:
      @@ -42,17 +44,22 @@ class G4BaseFileManager
       
           virtual G4bool SetFileName(const G4String& fileName);
             // Set the base file name (without extension)
      -      // If the current file name is already in use
      -      // setting is not performed and false is returned
      +    virtual G4String GetFileType() const;
      +      // Return the manager type (starts with a lowercase letter)
      +
      +    void AddFileName(const G4String& fileName);
      +      // For handling multiple files
      +      // Save file name in a vector if not yet present
           
           G4String GetFileName() const;
             // Return the base file name (without extension)
      -
           G4String GetFullFileName(const G4String& baseFileName = "",
                                    G4bool isPerThread = true) const;
             // Compose and return the full file name:
             // - add _tN suffix to the file base name if isPerThread
      -      // - add file extension if not present
      +      // - add file extension if not present and available in state
      +    const std::vector& GetFileNames() const;
      +     // Return the file names vector
       
           G4String GetHnFileName(const G4String& hnType, 
                                  const G4String& hnName) const;
      @@ -74,26 +81,25 @@ class G4BaseFileManager
           G4String GetPlotFileName() const;
             // Return the file name for batch plotting output
       
      -    G4String GetFileType() const;                 
      -     // Return the manager file type (starts with a lowercase letter)
      -
         protected:
      -    // utility function
      -    G4String TakeOffExtension(G4String& name) const;
      -  
           // data members
           const G4AnalysisManagerState& fState;
      -    G4String fFileName;
      +    G4String fFileName;  // to be changed in fDefaultFileName
      +    std::vector fFileNames;
       };
       
       inline G4bool G4BaseFileManager::SetFileName(const G4String& fileName) {
      +  // CHECK if still needed in this base class
         fFileName = fileName;
         return true;
       }  
       
       inline G4String G4BaseFileManager::GetFileName() const {
         return fFileName;
      -}  
      -  
      -#endif
      +}
       
      +inline const std::vector& G4BaseFileManager::GetFileNames() const {
      +  return fFileNames;
      +}
      +
      +#endif
      diff --git a/source/analysis/management/include/G4BaseNtupleManager.hh b/source/analysis/management/include/G4BaseNtupleManager.hh
      index 7cbf74323a..540c29edff 100644
      --- a/source/analysis/management/include/G4BaseNtupleManager.hh
      +++ b/source/analysis/management/include/G4BaseNtupleManager.hh
      @@ -25,7 +25,7 @@
       //
       
       // The base class for Ntuple managers. 
      -// It implements commen functions independent from the output type. 
      +// It implements common functions independent from the output type. 
       //
       // Author: Ivana Hrivnacova, 20/07/2017 (ivana@ipno.in2p3.fr)
       
      @@ -47,33 +47,7 @@ class G4BaseNtupleManager : public G4VNtupleManager
       
         protected:
           // Methods for handling ntuples
      -    virtual G4int CreateNtuple(const G4String& name, const G4String& title) = 0;
      -
      -    // Create columns in the last created ntuple
      -    virtual G4int CreateNtupleIColumn(const G4String& name, 
      -                              std::vector* vector) final;
      -    virtual G4int CreateNtupleFColumn(const G4String& name,
      -                              std::vector* vector)  final;
      -    virtual G4int CreateNtupleDColumn(const G4String& name,
      -                              std::vector* vector) final;
      -    virtual G4int CreateNtupleSColumn(const G4String& name);
      -    virtual void  FinishNtuple()  final;   
      -
      -    // Create columns in the ntuple with given id
      -    virtual G4int CreateNtupleIColumn(G4int ntupleId, const G4String& name,
      -                                      std::vector* vector) = 0;
      -    virtual G4int CreateNtupleFColumn(G4int ntupleId, const G4String& name,
      -                                      std::vector* vector) = 0;
      -    virtual G4int CreateNtupleDColumn(G4int ntupleId, const G4String& name,
      -                                      std::vector* vector) = 0;
      -    virtual G4int CreateNtupleSColumn(G4int ntupleId, const G4String& name) = 0;
      -    virtual void  FinishNtuple(G4int ntupleId) = 0; 
      -        
      -    // The ntuple column ids are generated automatically starting from 0; 
      -    // with the following function it is possible to change it 
      -    // to start from another value
      -    virtual G4bool SetFirstNtupleColumnId(G4int firstId) final; 
      -    G4int  GetFirstNtupleColumnId() const final;
      +    virtual G4int CreateNtuple(G4NtupleBooking* booking) = 0;
       
           // Methods to fill ntuples
           // Methods for ntuple with id = FirstNtupleId                     
      @@ -90,20 +64,13 @@ class G4BaseNtupleManager : public G4VNtupleManager
           virtual G4bool FillNtupleSColumn(G4int ntupleId, G4int columnId, 
                                            const G4String& value) = 0;
           virtual G4bool AddNtupleRow(G4int ntupleId) = 0;
      -   
      +
      +    // Fisrt column id
      +    virtual G4bool SetFirstNtupleColumnId(G4int firstId) final;
      +
         protected:
           G4int   fFirstNtupleColumnId;
      -    G4bool  fLockFirstNtupleColumnId;
      -
      -  private:
      -    // methods
      -    G4int GetCurrentNtupleId() const;
       };
      -// inline functions
       
      -inline G4int G4BaseNtupleManager::GetFirstNtupleColumnId() const {
      -  return fFirstNtupleColumnId;
      -}  
      -    
       #endif
       
      diff --git a/source/analysis/management/include/G4HnInformation.hh b/source/analysis/management/include/G4HnInformation.hh
      index 39d9163674..3d33ed9e7c 100644
      --- a/source/analysis/management/include/G4HnInformation.hh
      +++ b/source/analysis/management/include/G4HnInformation.hh
      @@ -100,7 +100,8 @@ class G4HnInformation
               fIsLogAxis({ false, false, false }),
               fActivation(true),
               fAscii(false),
      -        fPlotting(false) { fHnDimensionInformations.reserve(nofDimensions); }
      +        fPlotting(false),
      +        fFileName("") { fHnDimensionInformations.reserve(nofDimensions); }
       
           // Deleted default constructor
           G4HnInformation() = delete; 
      @@ -116,6 +117,7 @@ class G4HnInformation
           void SetActivation(G4bool activation);
           void SetAscii(G4bool ascii);
           void SetPlotting(G4bool plotting);
      +    void SetFileName(G4String fileName);
         
           // Get methods
           G4String GetName() const;
      @@ -124,6 +126,7 @@ class G4HnInformation
           G4bool  GetActivation() const;
           G4bool  GetAscii() const;
           G4bool  GetPlotting() const;
      +    G4String GetFileName() const;
       
         private:
           // Data members
      @@ -133,6 +136,7 @@ class G4HnInformation
           G4bool   fActivation;
           G4bool   fAscii;  
           G4bool   fPlotting;
      +    G4String fFileName;
       };
       
       // inline functions
      @@ -175,6 +179,9 @@ inline void G4HnInformation::SetAscii(G4bool ascii)
       inline void G4HnInformation::SetPlotting(G4bool plotting)
       { fPlotting = plotting; }
       
      +inline void G4HnInformation::SetFileName(G4String fileName)
      +{ fFileName = fileName; }
      +
       inline G4String G4HnInformation::GetName() const
       { return fName; }
       
      @@ -193,4 +200,7 @@ inline G4bool  G4HnInformation::GetAscii() const
       inline G4bool  G4HnInformation::GetPlotting() const
       { return fPlotting; }
       
      -#endif  
      +inline G4String G4HnInformation::GetFileName() const
      +{ return fFileName; }
      +
      +#endif
      diff --git a/source/analysis/management/include/G4HnManager.hh b/source/analysis/management/include/G4HnManager.hh
      index d4315ac38e..51a69694a2 100644
      --- a/source/analysis/management/include/G4HnManager.hh
      +++ b/source/analysis/management/include/G4HnManager.hh
      @@ -39,6 +39,8 @@
       
       #include 
       
      +class G4VFileManager;
      +
       class G4HnManager : public G4BaseAnalysisManager
       {
         public:
      @@ -82,13 +84,18 @@ class G4HnManager : public G4BaseAnalysisManager
           // return true otherwise
           G4bool IsPlotting() const;
       
      +    // Return false if there is no object with a specific file name
      +    G4bool IsFileName() const;
      +
           // Function implementing public analysis manager interface
           //
           void  SetActivation(G4bool activation);
           void  SetActivation(G4int id, G4bool activation);
           void  SetAscii(G4int id, G4bool ascii);
      -    void  SetPlotting(G4bool plotting);
           void  SetPlotting(G4int id, G4bool plotting);
      +    void  SetPlotting(G4bool plotting);
      +    void  SetFileName(G4int id, const G4String& fileName);
      +    void  SetFileName(const G4String& fileName);
           G4bool  SetXAxisIsLog(G4int id, G4bool isLogAxis);
           G4bool  SetYAxisIsLog(G4int id, G4bool isLogAxis);
           G4bool  SetZAxisIsLog(G4int id, G4bool isLogAxis);
      @@ -105,16 +112,26 @@ class G4HnManager : public G4BaseAnalysisManager
           G4bool   GetActivation(G4int id) const;
           G4bool   GetAscii(G4int id) const;
           G4bool   GetPlotting(G4int id) const;
      +    G4String GetFileName(G4int id) const;
      +
      +    void SetFileManager(std::shared_ptr fileManager);
       
         private:
      +    // Methods
      +    void  SetActivation(G4HnInformation* info, G4bool activation);
      +    void  SetPlotting(G4HnInformation* info, G4bool plotting);
      +    void  SetFileName(G4HnInformation* info, const G4String& fileName);
      +
           // Data members
           G4String  fHnType;
           G4int     fNofActiveObjects;
           G4int     fNofAsciiObjects;
           G4int     fNofPlottingObjects;
      +    G4int     fNofFileNameObjects;
       
           // Additional histograms/ntuple properties not included in tools
           std::vector fHnVector;
      +    std::shared_ptr fFileManager;
       };
       
       inline G4int G4HnManager::GetNofHns() const
      @@ -126,5 +143,8 @@ inline G4String G4HnManager::GetHnType() const
       inline const std::vector& G4HnManager::GetHnVector() const
       { return fHnVector; }
       
      +inline void G4HnManager::SetFileManager(std::shared_ptr fileManager)
      +{ fFileManager = fileManager; }
      +
       #endif
       
      diff --git a/source/analysis/management/include/G4HnMessenger.hh b/source/analysis/management/include/G4HnMessenger.hh
      index b3cd5f84cb..4499d3863d 100644
      --- a/source/analysis/management/include/G4HnMessenger.hh
      +++ b/source/analysis/management/include/G4HnMessenger.hh
      @@ -42,6 +42,7 @@ class G4AnalysisMessengerHelper;
       class G4UIcommand;
       class G4UIcmdWithABool;
       class G4UIcmdWithAnInteger;
      +class G4UIcmdWithAString;
       
       class G4HnMessenger : public G4UImessenger
       {
      @@ -58,16 +59,20 @@ class G4HnMessenger : public G4UImessenger
           void SetHnActivationToAllCmd();
           void SetHnPlottingCmd();
           void SetHnPlottingToAllCmd();
      +    void SetHnFileNameCmd();
      +    void SetHnFileNameToAllCmd();
        
           G4HnManager&  fManager; ///< Associated class
           std::unique_ptr   fHelper;
       
      -    std::unique_ptr  fSetHnAsciiCmd;   
      -    std::unique_ptr       fSetHnActivationCmd;   
      -    std::unique_ptr  fSetHnActivationAllCmd;   
      -    std::unique_ptr       fSetHnPlottingCmd;   
      -    std::unique_ptr  fSetHnPlottingAllCmd;   
      +    std::unique_ptr  fSetHnAsciiCmd;
      +    std::unique_ptr        fSetHnActivationCmd;
      +    std::unique_ptr   fSetHnActivationAllCmd;
      +    std::unique_ptr        fSetHnPlottingCmd;
      +    std::unique_ptr   fSetHnPlottingAllCmd;
      +    std::unique_ptr        fSetHnFileNameCmd;
      +    std::unique_ptr fSetHnFileNameAllCmd;
       };
      -  
      +
       #endif
       
      diff --git a/source/analysis/management/include/G4NtupleBookingManager.hh b/source/analysis/management/include/G4NtupleBookingManager.hh
      new file mode 100644
      index 0000000000..cfd790aa2f
      --- /dev/null
      +++ b/source/analysis/management/include/G4NtupleBookingManager.hh
      @@ -0,0 +1,143 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Class template for ntuple managers for all output types.
      +//
      +// Author: Ivana Hrivnacova, 19/06/2015  (ivana@ipno.in2p3.fr)
      +
      +#ifndef G4NtupleBookingManager_h
      +#define G4NtupleBookingManager_h 1
      +
      +#include "G4BaseAnalysisManager.hh"
      +#include "globals.hh"
      +
      +#include "tools/ntuple_booking"
      +
      +#include 
      +
      +struct G4NtupleBooking
      +{
      +  G4NtupleBooking() 
      +    :  fNtupleBooking(),
      +       fFileName(),
      +       fActivation(true) {}
      +
      +  ~G4NtupleBooking() {}    
      +
      +  tools::ntuple_booking fNtupleBooking;
      +  G4String fFileName;
      +  G4bool fActivation;
      +};
      +
      +class G4NtupleBookingManager : public G4BaseAnalysisManager
      +{
      +  // Disable using the object managers outside G4VAnalysisManager and
      +  // its messenger
      +  friend class G4VAnalysisManager;
      +
      +  public:
      +    explicit G4NtupleBookingManager(const G4AnalysisManagerState& state);
      +    ~G4NtupleBookingManager();
      +
      +    const std::vector& GetNtupleBookingVector() const;
      +
      +    // File type
      +    // (only one output file type allowed for ntuples)
      +    void SetFileType(const G4String& fileType);
      +    G4String GetFileType() const;
      +    G4bool IsEmpty() const;
      +
      +  protected:
      +    // Methods to create ntuples
      +    //
      +    G4int CreateNtuple(const G4String& name, const G4String& title);
      +
      +    // Create columns in the last created ntuple (from base class)
      +    // Create columns in the last created ntuple
      +    G4int CreateNtupleIColumn(const G4String& name, 
      +                              std::vector* vector);
      +    G4int CreateNtupleFColumn(const G4String& name,
      +                              std::vector* vector) ;
      +    G4int CreateNtupleDColumn(const G4String& name,
      +                              std::vector* vector);
      +    G4int CreateNtupleSColumn(const G4String& name);
      +    G4NtupleBooking*  FinishNtuple() ;   
      +
      +    // Create columns in the ntuple with given id
      +    G4int CreateNtupleIColumn(G4int ntupleId, 
      +                    const G4String& name, std::vector* vector);
      +    G4int CreateNtupleFColumn(G4int ntupleId, 
      +                    const G4String& name, std::vector* vector);
      +    G4int CreateNtupleDColumn(G4int ntupleId, 
      +                    const G4String& name, std::vector* vector);
      +    G4int CreateNtupleSColumn(G4int ntupleId, const G4String& name);
      +    G4NtupleBooking*  FinishNtuple(G4int ntupleId);
      +
      +    // The ntuple column ids are generated automatically starting from 0; 
      +    // with the following function it is possible to change it 
      +    // to start from another value
      +    G4bool SetFirstNtupleColumnId(G4int firstId); 
      +    G4int  GetFirstNtupleColumnId() const;
      +
      +    // Activation option
      +    //
      +    void  SetActivation(G4bool activation);
      +    void  SetActivation(G4int ntupleId, G4bool activation);
      +    G4bool  GetActivation(G4int ntupleId) const;
      +
      +    // // File name option
      +    void  SetFileName(const G4String& fileName);
      +    void  SetFileName(G4int id, const G4String& fileName);
      +    G4String GetFileName(G4int id) const;
      +
      +    // Access methods
      +    G4int GetNofNtupleBookings() const;
      +    // G4int GetNofNtuples() const;
      +
      +    // Data members
      +    std::vector fNtupleBookingVector;
      +
      +  private:
      +    // methods
      +    // Common implementation
      +    G4NtupleBooking*  GetNtupleBookingInFunction(
      +                                        G4int id, 
      +                                        G4String function,
      +                                        G4bool warn = true) const;
      +    template  
      +    G4int CreateNtupleTColumn(G4int ntupleId, 
      +                    const G4String& name, std::vector* vector);
      +    G4int GetCurrentNtupleId() const;
      +
      +    // data members
      +    G4String fFileType;
      +    G4int    fFirstNtupleColumnId;
      +    G4bool   fLockFirstNtupleColumnId;
      +};
      +
      +#include "G4NtupleBookingManager.icc"
      +
      +#endif
      diff --git a/source/analysis/management/include/G4NtupleBookingManager.icc b/source/analysis/management/include/G4NtupleBookingManager.icc
      new file mode 100644
      index 0000000000..25fa7753ef
      --- /dev/null
      +++ b/source/analysis/management/include/G4NtupleBookingManager.icc
      @@ -0,0 +1,106 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +#include "G4AnalysisManagerState.hh"
      +#include "G4AnalysisUtilities.hh"
      +
      +//
      +// private functions
      +//
      +
      +//_____________________________________________________________________________
      +template 
      +G4int G4NtupleBookingManager::CreateNtupleTColumn(
      +  G4int ntupleId, const G4String& name, std::vector* vector)
      +{
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL4() ) {
      +    G4ExceptionDescription description;
      +    description << name << " ntupleId " << ntupleId; 
      +    fState.GetVerboseL4()->Message("create", "ntuple T column", description);
      +  }  
      +#endif
      +  
      +  auto g4NtupleBooking 
      +    = GetNtupleBookingInFunction(ntupleId, "CreateNtupleTColumn");
      +  if ( ! g4NtupleBooking )  return G4Analysis::kInvalidId;   
      +    
      +  // Save column info in booking
      +  auto& ntupleBooking = g4NtupleBooking->fNtupleBooking;
      +  auto index = ntupleBooking.columns().size();
      +  if ( ! vector )
      +    ntupleBooking.template add_column(name);
      +  else
      +    ntupleBooking.template add_column(name, *vector);
      + 
      +  // Create column if ntuple already exists
      +  // CreateTColumnInNtuple(ntupleBooking, name, vector);
      +  fLockFirstNtupleColumnId = true;
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL2() ) {
      +    G4ExceptionDescription description;
      +    description << name << " ntupleId " << ntupleId; 
      +    fState.GetVerboseL2()->Message("create", "ntuple T column", description);
      +  }  
      +#endif
      +
      +  return G4int(index + fFirstNtupleColumnId);
      +}
      +
      +//_____________________________________________________________________________
      +inline G4int G4NtupleBookingManager::GetNofNtupleBookings() const
      +{
      +  return G4int(fNtupleBookingVector.size());
      +}
      +
      +//_____________________________________________________________________________
      +inline G4int  G4NtupleBookingManager::GetCurrentNtupleId() const
      +{
      +  return  GetNofNtupleBookings() + fFirstId - 1;
      +}
      +
      +//
      +// public functions
      +//
      +
      +//_____________________________________________________________________________
      +inline const std::vector& 
      +G4NtupleBookingManager::GetNtupleBookingVector() const
      +{
      +  return fNtupleBookingVector;
      +}
      +
      +//_____________________________________________________________________________
      +inline G4int G4NtupleBookingManager::GetFirstNtupleColumnId() const {
      +  return fFirstNtupleColumnId;
      +}
      +
      +//_____________________________________________________________________________
      +inline G4String G4NtupleBookingManager::GetFileType() const
      +{
      +  return fFileType;
      +}
      diff --git a/source/analysis/management/include/G4NtupleMessenger.hh b/source/analysis/management/include/G4NtupleMessenger.hh
      index ff31b69b90..2461cc25de 100644
      --- a/source/analysis/management/include/G4NtupleMessenger.hh
      +++ b/source/analysis/management/include/G4NtupleMessenger.hh
      @@ -40,6 +40,7 @@
       class G4VAnalysisManager;
       class G4UIcommand;
       class G4UIcmdWithABool;
      +class G4UIcmdWithAString;
       
       class G4NtupleMessenger : public G4UImessenger
       {
      @@ -53,13 +54,17 @@ class G4NtupleMessenger : public G4UImessenger
         private:
           void SetActivationCmd();
           void SetActivationToAllCmd();
      +    void SetFileNameCmd();
      +    void SetFileNameToAllCmd();
        
           G4VAnalysisManager*  fManager; ///< Associated class
           
      -    std::unique_ptr     fNtupleDir;   
      -    std::unique_ptr       fSetActivationCmd;   
      -    std::unique_ptr  fSetActivationAllCmd;   
      +    std::unique_ptr      fNtupleDir;
      +    std::unique_ptr        fSetActivationCmd;
      +    std::unique_ptr   fSetActivationAllCmd;
      +    std::unique_ptr        fSetFileNameCmd;
      +    std::unique_ptr fSetFileNameAllCmd;
       };
      -  
      +
       #endif
       
      diff --git a/source/analysis/management/include/G4TFileInformation.hh b/source/analysis/management/include/G4TFileInformation.hh
      new file mode 100644
      index 0000000000..998a2be5c4
      --- /dev/null
      +++ b/source/analysis/management/include/G4TFileInformation.hh
      @@ -0,0 +1,59 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Structure templated containing the information related to an ntuple
      +// for all output types.
      +//
      +// Author: Ivana Hrivnacova, 19/06/2015  (ivana@ipno.in2p3.fr)
      +
      +#ifndef G4TFileInformation_h
      +#define G4TFileInformation_h 1
      +
      +#include "globals.hh"
      +
      +#include 
      +
      +template 
      +struct G4TFileInformation
      +{
      +  G4TFileInformation(const G4String fileName) 
      +    :  fFileName(fileName),
      +       fFile(nullptr),
      +       fIsOpen(false),
      +       fIsEmpty(true),
      +       fIsDeleted(false) {}
      +
      +  ~G4TFileInformation()
      +      {}    
      +
      +  G4String fFileName;
      +  std::shared_ptr fFile;
      +  G4bool fIsOpen;
      +  G4bool fIsEmpty;
      +  G4bool fIsDeleted;
      +};
      +
      +#endif
      diff --git a/source/analysis/management/include/G4TFileManager.hh b/source/analysis/management/include/G4TFileManager.hh
      new file mode 100644
      index 0000000000..48e8653175
      --- /dev/null
      +++ b/source/analysis/management/include/G4TFileManager.hh
      @@ -0,0 +1,85 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Author: Ivana Hrivnacova, 18/06/2013  (ivana@ipno.in2p3.fr)
      +
      +#ifndef G4TFileManager_h
      +#define G4TFileManager_h 1
      +
      +#include "G4TFileInformation.hh"
      +
      +#include 
      +#include 
      +
      +template 
      +class G4TFileManager
      +{
      +  public:
      +    explicit G4TFileManager(const G4AnalysisManagerState& state);
      +    virtual ~G4TFileManager();
      +   
      +    // Per file methods
      +    // (implements all tests and warnings, fills the map)
      +    std::shared_ptr CreateTFile(const G4String& fileName);
      +    G4bool WriteTFile(const G4String& fileName);
      +    G4bool CloseTFile(const G4String& fileName);
      +    G4bool SetIsEmpty(const G4String& fileName, G4bool isEmpty);
      +    //
      +    std::shared_ptr GetTFile(const G4String& fileName, G4bool warn = true) const;
      +
      +    // Methods applied to all registered files
      +    G4bool OpenFiles();
      +    G4bool WriteFiles();
      +    G4bool CloseFiles();
      +    G4bool DeleteEmptyFiles();
      +
      +  protected:
      +    // Methods to be implemented per file type manipulate file
      +    virtual std::shared_ptr CreateFileImpl(const G4String& fileName) = 0;
      +    virtual G4bool WriteFileImpl(std::shared_ptr file) = 0;
      +    virtual G4bool CloseFileImpl(std::shared_ptr file) = 0;
      +
      +  private:
      +    // Methods
      +    void FileNotFoundException(const G4String& fileName, 
      +          const G4String& functionName) const;
      +    G4TFileInformation* GetFileInfoInFunction(const G4String& fileName, 
      +      G4String functionName, G4bool warn = true) const;
      +    std::shared_ptr GetFileInFunction(const G4String& fileName, 
      +      G4String functionName, G4bool warn = true) const;
      +
      +    G4bool WriteTFile(std::shared_ptr file, const G4String& fileName);
      +    G4bool CloseTFile(std::shared_ptr file, const G4String& fileName);
      +    G4bool DeleteEmptyFile(const G4String& fileName);
      +
      +    // Data members
      +    const G4AnalysisManagerState& fAMState;
      +    std::map*> fFileMap;
      + };
      +
      +#include "G4TFileManager.icc"
      +
      +#endif
      diff --git a/source/analysis/management/include/G4TFileManager.icc b/source/analysis/management/include/G4TFileManager.icc
      new file mode 100644
      index 0000000000..368a58a155
      --- /dev/null
      +++ b/source/analysis/management/include/G4TFileManager.icc
      @@ -0,0 +1,410 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Author: Ivana Hrivnacova, 18/06/2013  (ivana@ipno.in2p3.fr)
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4TFileManager::G4TFileManager(const G4AnalysisManagerState& state)
      + : fAMState(state)
      +{}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4TFileManager::~G4TFileManager()
      +{
      +  for ( auto mapElement : fFileMap ) {
      +    delete mapElement.second;
      +  }
      +}
      +
      +//
      +// private functions
      +//
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +void 
      +G4TFileManager::FileNotFoundException(const G4String& fileName, 
      +                      const G4String& functionName) const
      +{
      +  G4ExceptionDescription description;
      +  description 
      +    << "Failed to get file " << fileName;
      +  G4Exception(functionName, "Analysis_W011", JustWarning, description);
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4TFileInformation* 
      +G4TFileManager::GetFileInfoInFunction(const G4String& fileName, 
      +                      G4String functionName, G4bool warn ) const
      +{
      +  // Find the file information in the map
      +  auto it = fFileMap.find(fileName);
      +  if ( it == fFileMap.end() ) {
      +    if (warn) {
      +      FileNotFoundException(fileName, functionName);
      +    }
      +    return nullptr;
      +  }
      +
      +  return it->second;
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +std::shared_ptr 
      +G4TFileManager::GetFileInFunction(const G4String& fileName,
      +                      G4String functionName, G4bool warn) const
      +{
      +  // Find the file information in the map
      +  auto fileInfo = GetFileInfoInFunction(fileName, functionName, warn);
      +  if (! fileInfo) return nullptr;
      +
      +  // Check if the file is open
      +  if ( ! fileInfo->fFile ) {
      +    if (warn) {
      +      FileNotFoundException(fileName, functionName);
      +    }
      +    return nullptr;    
      +  }
      +
      +  return fileInfo->fFile;
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +#ifdef G4VERBOSE
      +G4bool G4TFileManager::WriteTFile(std::shared_ptr file, const G4String& fileName)
      +#else
      +G4bool G4TFileManager::WriteTFile(std::shared_ptr file, const G4String& /*fileName*/)
      +#endif
      +{
      +#ifdef G4VERBOSE
      +  if ( fAMState.GetVerboseL4() ) 
      +    fAMState.GetVerboseL4()->Message("write", "file", fileName);
      +#endif
      +
      +  // Write the found file
      +  auto result = WriteFileImpl(file);
      +
      +#ifdef G4VERBOSE
      +  if ( fAMState.GetVerboseL1() ) 
      +    fAMState.GetVerboseL1()->Message("write", "file", fileName);
      +#endif
      +
      +  return result;
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +#ifdef G4VERBOSE
      +G4bool G4TFileManager::CloseTFile(std::shared_ptr file, const G4String& fileName)
      +#else
      +G4bool G4TFileManager::CloseTFile(std::shared_ptr file, const G4String& /*fileName*/)
      +#endif
      +{
      +#ifdef G4VERBOSE
      +  if ( fAMState.GetVerboseL4() ) 
      +    fAMState.GetVerboseL4()->Message("close", "file", fileName);
      +#endif
      +
      +  // Close the found file
      +  auto result = CloseFileImpl(file);
      +
      +#ifdef G4VERBOSE
      +  if ( fAMState.GetVerboseL1() ) 
      +    fAMState.GetVerboseL1()->Message("close", "file", fileName);
      +#endif
      +
      +  return result;
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4TFileManager::DeleteEmptyFile(const G4String& fileName)
      +{
      +#ifdef G4VERBOSE
      +  if ( fAMState.GetVerboseL4() ) {
      +    fAMState.GetVerboseL4()->Message("delete", "empty file", fileName);
      +  }
      +#endif
      +
      +  auto result = ! std::remove(fileName);
      +
      +#ifdef G4VERBOSE
      +  if ( fAMState.GetVerboseL1() ) {
      +    fAMState.GetVerboseL1()->Message("delete", "empty file", fileName, result);
      +  }
      +#endif
      +
      +  return result;
      +}
      +
      +//
      +// public functions
      +//
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +std::shared_ptr G4TFileManager::CreateTFile(const G4String& fileName)
      +{
      +  // Check if file already exists
      +  if ( GetFileInFunction(fileName, "CreateTFile", false) ) {
      +    G4ExceptionDescription description;
      +    description 
      +      << "File " << fileName << " already exists."; 
      +    G4Exception("G4TFileManager::CreateTFile",
      +                "Analysis_W001", JustWarning, description);
      +    // return it->second->fFile;
      +    return nullptr;
      +  }
      +
      +  auto fileInformation = GetFileInfoInFunction(fileName, "CreateTFile", false);
      +  if ( ! fileInformation ) {
      +#ifdef G4VERBOSE
      +    if ( fAMState.GetVerboseL4() ) { 
      +      fAMState.GetVerboseL4()->Message("create", "fileInformation", fileName);
      +    }
      +#endif
      +    // Create file information and save it in the map
      +    fileInformation = new G4TFileInformation(fileName);
      +    fFileMap[fileName] = fileInformation;
      +  }
      +
      +  // Create file and save it in fileInformation
      +#ifdef G4VERBOSE
      +  if ( fAMState.GetVerboseL4() ) { 
      +    fAMState.GetVerboseL4()->Message("create", "file", fileName);
      +  }
      +#endif
      +
      +  // Let concrete class create a file
      +  auto file = CreateFileImpl(fileName);
      +  if ( ! file ) {
      +    G4ExceptionDescription description;
      +    description 
      +      << "Failed to create file " << fileName;
      +    G4Exception("G4TFileManager::CreateTFile",
      +                "Analysis_W001", JustWarning, description);
      +    return nullptr;
      +  }
      +  // Save file in fileInformation
      +  fileInformation->fFile = file;
      +  fileInformation->fIsOpen = true;
      +  fileInformation->fIsEmpty = true;
      +  fileInformation->fIsDeleted = false;
      +
      +#ifdef G4VERBOSE
      +  if ( fAMState.GetVerboseL1() ) {
      +    fAMState.GetVerboseL1()->Message("create", "file", fileName);
      +  }
      +#endif
      +
      +  // Return created file
      +  return file;
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4TFileManager::WriteTFile(const G4String& fileName)
      +{
      +  // Find the file in the map
      +  auto file = GetFileInFunction(fileName, "WriteTFile");
      +  // Warning is issued in GetFileInfoFunction
      +  if (! file) return false;
      +
      +  return WriteTFile(file, fileName);
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4TFileManager::CloseTFile(const G4String& fileName)
      +{
      +  // Find the file information in the map
      +  auto fileInfo = GetFileInfoInFunction(fileName, "CloseTFile");
      +  // Warning is issued in GetFileInfoFunction
      +  if ( ! fileInfo ) return false;
      +
      +  // Do nothing if file is not open
      +  if ( ! fileInfo->fIsOpen ) return false;
      +
      +  // Get file from the file information
      +  auto file = fileInfo->fFile;
      +  if ( ! file ) {
      +    FileNotFoundException(fileName, "CloseTFile");
      +    return false;
      +  }
      +
      +  auto result = CloseTFile(file, fileName);
      +
      +  // Update the file information
      +  fileInfo->fFile.reset();
      +  fileInfo->fIsOpen = false;
      +
      +  return result;
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4TFileManager::SetIsEmpty(const G4String& fileName, G4bool isEmpty)
      +{
      +  // Find the file information in the map
      +  auto fileInfo = GetFileInfoInFunction(fileName, "SetIsEmpty");
      +
      +  // Warning is issued in GetFileFunction
      +  if ( ! fileInfo ) return false;
      +
      +#ifdef G4VERBOSE
      +  if ( fAMState.GetVerboseL4() ) {
      +    fAMState.GetVerboseL4()->Message("notify not empty", "file", fileName);
      +  }
      +#endif
      +
      +  // Set notification to file information
      +  if ( fileInfo->fIsEmpty ) {
      +    // do not revert information if file is not empty
      +    fileInfo->fIsEmpty = isEmpty;
      +  }
      +
      +#ifdef G4VERBOSE
      +  if ( fAMState.GetVerboseL2() ) {
      +    fAMState.GetVerboseL2()->Message("notify not empty", "file", fileName);
      +  }
      +#endif
      +
      +  return true;
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +std::shared_ptr G4TFileManager::GetTFile(
      +  const G4String& fileName, G4bool warn) const
      +{
      +  // Find the file information in the map
      +  return GetFileInFunction(fileName, "GetTFile", warn);
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4TFileManager::OpenFiles()
      +{
      +  bool finalResult = true;
      +  for ( auto mapElement : fFileMap ) {
      +     auto fileInformation = mapElement.second;
      +     // Do nothing if file was open by user explicitly
      +     if ( fileInformation->fFile ) {
      +       G4cout << " ... skipping open file for " << fileInformation->fFileName << G4endl;
      +       continue;
      +     }
      +     
      +     auto result = CreateTFile(fileInformation->fFileName);
      +     finalResult = result && finalResult;
      +  }
      +  return finalResult;
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4TFileManager::WriteFiles()
      +{
      +  bool finalResult = true;
      +  for ( auto mapElement : fFileMap ) {
      +     auto fileInformation = mapElement.second;
      +     if ( ! fileInformation->fIsOpen ) {
      +       // G4cout << "skipping write for file " << fileInformation->fFileName << G4endl;
      +       continue;
      +     }
      +     auto result = WriteTFile(fileInformation->fFile, fileInformation->fFileName);
      +     finalResult = result && finalResult;
      +  }
      +  return finalResult;
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4TFileManager::CloseFiles()
      +{
      +  bool finalResult = true;
      +  for ( auto mapElement : fFileMap ) {
      +     auto fileInformation = mapElement.second;
      +     if ( ! fileInformation->fIsOpen ) {
      +       // G4cout << "skipping close for file " << fileInformation->fFileName << G4endl;
      +       continue;
      +     }
      +     auto result = CloseTFile(fileInformation->fFile, fileInformation->fFileName);
      +     finalResult = result && finalResult;
      +
      +     // Update file information
      +     fileInformation->fFile.reset();
      +     fileInformation->fIsOpen = false;
      +  }
      +
      +  // As the files were set to nullptr, clear should not be needed
      +  // fFileMap.clear();
      +
      +  return finalResult;  
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4TFileManager::DeleteEmptyFiles()
      +{
      +  bool finalResult = true;
      +  for ( auto mapElement : fFileMap ) {
      +    auto fileInformation = mapElement.second;
      +    if ( (! fileInformation->fIsEmpty) || fileInformation->fIsDeleted ) {
      +      // G4cout << "skipping delete for file " << fileInformation->fFileName << G4endl;
      +      continue;
      +    }
      +
      +    auto result = DeleteEmptyFile(fileInformation->fFileName);
      +    finalResult = result && finalResult;
      +
      +    // Update file information
      +    fileInformation->fIsDeleted = true;
      +  }
      +
      +  return finalResult;
      +}
      diff --git a/source/analysis/management/include/G4THnManager.hh b/source/analysis/management/include/G4THnManager.hh
      index ae549aed52..df8c586b87 100644
      --- a/source/analysis/management/include/G4THnManager.hh
      +++ b/source/analysis/management/include/G4THnManager.hh
      @@ -31,6 +31,7 @@
       #ifndef G4THnManager_h
       #define G4THnManager_h 1
       
      +#include "G4Threading.hh"
       #include "G4Fcn.hh"
       #include "G4BinScheme.hh"
       #include "globals.hh"
      @@ -55,11 +56,13 @@ class G4THnManager
           // Return true if the H1 vector is empty
           G4bool IsEmpty() const;   
       
      -  protected:
      -
           // Method for merge (MT)
           void  AddTVector(const std::vector& tVector);
       
      +    // New method for merge
      +    void  Merge(G4Mutex& mergeMutex, G4THnManager* masterInstance);
      +
      +  protected:
           // Iterators
           typename std::vector::iterator BeginT();
           typename std::vector::iterator EndT();
      diff --git a/source/analysis/management/include/G4THnManager.icc b/source/analysis/management/include/G4THnManager.icc
      index 9016dbbd11..c6b54531a1 100644
      --- a/source/analysis/management/include/G4THnManager.icc
      +++ b/source/analysis/management/include/G4THnManager.icc
      @@ -29,6 +29,7 @@
       #include "G4AnalysisManagerState.hh"
       #include "G4HnManager.hh"
       #include "G4AnalysisUtilities.hh"
      +#include "G4AutoLock.hh"
       
       #include 
       
      @@ -135,6 +136,16 @@ void G4THnManager::AddTVector(const std::vector& tVector)
       #endif
       }  
       
      +//_____________________________________________________________________________
      +template 
      +void  G4THnManager::Merge(
      +  G4Mutex& mergeMutex, G4THnManager* masterInstance)
      +{
      +  G4AutoLock lH1(&mergeMutex);
      +  masterInstance->AddTVector(fTVector);
      +  lH1.unlock();
      +}
      +
       //_____________________________________________________________________________
       template 
       typename std::vector::iterator G4THnManager::BeginT()
      diff --git a/source/analysis/management/include/G4TNtupleDescription.hh b/source/analysis/management/include/G4TNtupleDescription.hh
      index 4278ece512..96d7332406 100644
      --- a/source/analysis/management/include/G4TNtupleDescription.hh
      +++ b/source/analysis/management/include/G4TNtupleDescription.hh
      @@ -32,32 +32,37 @@
       #ifndef G4TNtupleDescription_h
       #define G4TNtupleDescription_h 1
       
      +#include "G4NtupleBookingManager.hh"
       #include "globals.hh"
       
       #include "tools/ntuple_booking"
       
       #include 
       
      -template 
      +template 
       struct G4TNtupleDescription
       {
      -  G4TNtupleDescription() 
      +  G4TNtupleDescription(G4NtupleBooking* g4NtupleBooking) 
           :  fFile(nullptr),
              fNtuple(nullptr),
      -       fNtupleBooking(),
      -       fActivation(true),
      -       fIsNtupleOwner(true) {}
      +       fNtupleBooking(g4NtupleBooking->fNtupleBooking),
      +       fFileName(g4NtupleBooking->fFileName),
      +       fActivation(g4NtupleBooking->fActivation),
      +       fIsNtupleOwner(true),
      +       fHasFill(false) {}
       
         ~G4TNtupleDescription()
      -      {  delete fFile;
      -         if ( fIsNtupleOwner ) delete fNtuple;
      +      {  
      +        if ( fIsNtupleOwner ) delete fNtuple;
             }    
       
      -  std::ofstream* fFile;    
      -  TNTUPLE* fNtuple; 
      +  std::shared_ptr fFile;
      +  TN* fNtuple; 
         tools::ntuple_booking fNtupleBooking; 
      +  G4String fFileName;
         G4bool fActivation;
         G4bool fIsNtupleOwner;
      +  G4bool fHasFill;
       };
       
       #endif  
      diff --git a/source/analysis/management/include/G4TNtupleManager.hh b/source/analysis/management/include/G4TNtupleManager.hh
      index bc04cbe54e..04eb18155b 100644
      --- a/source/analysis/management/include/G4TNtupleManager.hh
      +++ b/source/analysis/management/include/G4TNtupleManager.hh
      @@ -37,7 +37,8 @@
       
       #include 
       
      -template 
      +// TN - ntuple type, TF - file type
      +template 
       class G4TNtupleManager : public G4BaseNtupleManager {
       
         public:
      @@ -46,29 +47,15 @@ class G4TNtupleManager : public G4BaseNtupleManager {
       
         protected:
           // Methods to manipulate ntuples  
      -    virtual void CreateNtuplesFromBooking();
      -    G4bool IsEmpty() const;
      +    virtual G4int CreateNtuple(G4NtupleBooking* ntupleBooking) override;
      +
      +    virtual void CreateNtuplesFromBooking(
      +                   const std::vector& ntupleBookings);
      +    // virtual void CreateNtuplesFromBooking();
           virtual G4bool Reset(G4bool deleteNtuple);
       
           // Methods to create ntuples
      -    //
      -    virtual G4int CreateNtuple(const G4String& name, const G4String& title) override;
      -
      -    // Create columns in the last created ntuple (from base class)
      -    using G4BaseNtupleManager::CreateNtupleIColumn;
      -    using G4BaseNtupleManager::CreateNtupleFColumn;
      -    using G4BaseNtupleManager::CreateNtupleDColumn;
      -    using G4BaseNtupleManager::CreateNtupleSColumn;
      -    using G4BaseNtupleManager::FinishNtuple; 
      -    // Create columns in the ntuple with given id
      -    virtual G4int CreateNtupleIColumn(G4int ntupleId, 
      -                    const G4String& name, std::vector* vector) final;
      -    virtual G4int CreateNtupleFColumn(G4int ntupleId, 
      -                    const G4String& name, std::vector* vector) final;
      -    virtual G4int CreateNtupleDColumn(G4int ntupleId, 
      -                    const G4String& name, std::vector* vector) final;
      -    virtual G4int CreateNtupleSColumn(G4int ntupleId, const G4String& name) final;
      -    virtual void  FinishNtuple(G4int ntupleId) final;   
      +    // are implemented in G4NtupleBookingManager base class
       
           // Methods to fill ntuples
           // Methods for ntuple with id = FirstNtupleId (from base class)                    
      @@ -92,49 +79,43 @@ class G4TNtupleManager : public G4BaseNtupleManager {
           virtual G4bool  GetActivation(G4int ntupleId) const final;
       
           // Access methods
      -    TNTUPLE* GetNtuple() const;
      -    TNTUPLE* GetNtuple(G4int ntupleId) const;
      +    TN* GetNtuple() const;
      +    TN* GetNtuple(G4int ntupleId) const;
           virtual G4int GetNofNtuples() const final;
      -    virtual G4int GetNofNtupleBookings() const override;
       
           // Iterators
      -    typename std::vector::iterator BeginNtuple();  
      -    typename std::vector::iterator EndNtuple();
      -    typename std::vector::const_iterator BeginConstNtuple() const;
      -    typename std::vector::const_iterator EndConstNtuple() const;
      +    typename std::vector::iterator BeginNtuple();  
      +    typename std::vector::iterator EndNtuple();
      +    typename std::vector::const_iterator BeginConstNtuple() const;
      +    typename std::vector::const_iterator EndConstNtuple() const;
        
           // Data members
      -    std::vector*> fNtupleDescriptionVector;
      -    std::vector fNtupleVector;
      +    std::vector*> fNtupleDescriptionVector;
      +    std::vector fNtupleVector;
       
         private:
           // methods
      -   
      +
           // Fuctions which are specific to output type
           //
           virtual void CreateTNtupleFromBooking(
      -                    G4TNtupleDescription* ntupleDescription) = 0;
      +                    G4TNtupleDescription* ntupleDescription) = 0;
       
           virtual void FinishTNtuple(
      -                    G4TNtupleDescription* ntupleDescription,
      +                    G4TNtupleDescription* ntupleDescription,
                           G4bool fromBooking) = 0;
       
           // Common implementation
           //
       
      -    G4TNtupleDescription*  GetNtupleDescriptionInFunction(G4int id, 
      +    G4TNtupleDescription*  GetNtupleDescriptionInFunction(G4int id, 
                                               G4String function,
                                               G4bool warn = true) const;
      -    TNTUPLE*  GetNtupleInFunction(G4int id, 
      -                                  G4String function,
      -                                  G4bool warn = true) const;
      -
      -    // template functions for creating/filling ntuple columns
      -
      -    template  
      -    G4int CreateNtupleTColumn(G4int ntupleId, 
      -                    const G4String& name, std::vector* vector);
      +    TN*  GetNtupleInFunction(G4int id, 
      +                             G4String function,
      +                             G4bool warn = true) const;
       
      +    // template functions for filling ntuple columns
           template  
           G4bool FillNtupleTColumn(G4int ntupleId, G4int columnId, const T& value);
       };
      diff --git a/source/analysis/management/include/G4TNtupleManager.icc b/source/analysis/management/include/G4TNtupleManager.icc
      index 65a8659b4a..e381fd6559 100644
      --- a/source/analysis/management/include/G4TNtupleManager.icc
      +++ b/source/analysis/management/include/G4TNtupleManager.icc
      @@ -32,8 +32,8 @@
       //
       
       //_____________________________________________________________________________
      -template 
      -G4TNtupleManager::G4TNtupleManager(
      +template 
      +G4TNtupleManager::G4TNtupleManager(
         const G4AnalysisManagerState& state)
         : G4BaseNtupleManager(state),
           fNtupleDescriptionVector(),
      @@ -41,8 +41,8 @@ G4TNtupleManager::G4TNtupleManager(
       {}
       
       //_____________________________________________________________________________
      -template 
      -G4TNtupleManager::~G4TNtupleManager()
      +template 
      +G4TNtupleManager::~G4TNtupleManager()
       {  
         for ( auto ntupleDescription : fNtupleDescriptionVector ) {
           delete ntupleDescription;
      @@ -50,11 +50,11 @@ G4TNtupleManager::~G4TNtupleManager()
       }
       
       //_____________________________________________________________________________
      -template 
      -G4TNtupleDescription*
      -G4TNtupleManager::GetNtupleDescriptionInFunction(
      +template 
      +G4TNtupleDescription*
      +G4TNtupleManager::GetNtupleDescriptionInFunction(
         G4int id, G4String functionName, G4bool warn) const
      -{                                      
      +{
         auto index = id - fFirstId;
         if ( index < 0 || index >= G4int(fNtupleDescriptionVector.size()) ) {
           if ( warn) {
      @@ -66,14 +66,13 @@ G4TNtupleManager::GetNtupleDescriptionInFunction(
           }
           return nullptr;         
         }
      -  
      +
         return fNtupleDescriptionVector[index];
       }
       
       //_____________________________________________________________________________
      -template 
      -TNTUPLE*  
      -G4TNtupleManager::GetNtupleInFunction(
      +template 
      +TN* G4TNtupleManager::GetNtupleInFunction(
         G4int id, G4String functionName, G4bool warn) const
       {
         auto ntupleDescription = GetNtupleDescriptionInFunction(id, functionName);
      @@ -94,50 +93,9 @@ G4TNtupleManager::GetNtupleInFunction(
       }
       
       //_____________________________________________________________________________
      -template 
      +template 
       template 
      -G4int G4TNtupleManager::CreateNtupleTColumn(
      -  G4int ntupleId, const G4String& name, std::vector* vector)
      -{
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) {
      -    G4ExceptionDescription description;
      -    description << name << " ntupleId " << ntupleId; 
      -    fState.GetVerboseL4()->Message("create", "ntuple T column", description);
      -  }  
      -#endif
      -  
      -  auto ntupleDescription = GetNtupleDescriptionInFunction(ntupleId, "CreateNtupleTColumn");
      -  if ( ! ntupleDescription )  return G4Analysis::kInvalidId;   
      -    
      -  // Save column info in booking
      -  auto& ntupleBooking = ntupleDescription->fNtupleBooking;
      -  auto index = ntupleBooking.columns().size();
      -  if ( ! vector )
      -    ntupleBooking.template add_column(name);
      -  else
      -    ntupleBooking.template add_column(name, *vector);
      - 
      -  // Create column if ntuple already exists
      -  // CreateTColumnInNtuple(ntupleDescription, name, vector);
      -  fLockFirstNtupleColumnId = true;
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL2() ) {
      -    G4ExceptionDescription description;
      -    description << name << " ntupleId " << ntupleId; 
      -    fState.GetVerboseL2()->Message("create", "ntuple T column", description);
      -  }  
      -#endif
      -
      -  return G4int(index + fFirstNtupleColumnId);       
      -
      -}
      -
      -//_____________________________________________________________________________
      -template 
      -template 
      -G4bool G4TNtupleManager::FillNtupleTColumn(
      +G4bool G4TNtupleManager::FillNtupleTColumn(
         G4int ntupleId, G4int columnId, const T& value)
       {
         if ( fState.GetIsActivation() && ( ! GetActivation(ntupleId) ) ) {
      @@ -162,7 +120,7 @@ G4bool G4TNtupleManager::FillNtupleTColumn(
         auto icolumn =  ntuple->columns()[index];
       
         // get column and check its type
      -  auto column = dynamic_cast* >(icolumn);
      +  auto column = dynamic_cast* >(icolumn);
         if ( ! column ) {
           G4ExceptionDescription description;
           description << " Column type does not match: "
      @@ -191,201 +149,121 @@ G4bool G4TNtupleManager::FillNtupleTColumn(
       //
       
       //_____________________________________________________________________________
      -template 
      -void G4TNtupleManager::CreateNtuplesFromBooking()
      +template 
      +G4int G4TNtupleManager::CreateNtuple(G4NtupleBooking* ntupleBooking)
       {
      -// Create ntuple from ntuple_booking.
      +  // This ntuple id
      +  auto ntupleId = G4int(fNtupleDescriptionVector.size()) + fFirstId;
       
      -  for ( auto ntupleDescription : fNtupleDescriptionVector ) {
      +  // Create ntuple description from ntuple booking.
      +  auto ntupleDescription = new G4TNtupleDescription(ntupleBooking);
      +  fNtupleDescriptionVector.push_back(ntupleDescription);
       
      -    // Do not create ntuple if it is inactivated 
      -    if ( fState.GetIsActivation() && ( ! ntupleDescription->fActivation ) ) continue;
      +  // Do not create ntuple if it is inactivated 
      +  if ( fState.GetIsActivation() && 
      +       ( ! ntupleDescription->fActivation ) ) return G4Analysis::kInvalidId;
           
      -    // Do not create ntuple if it already exists
      -    if ( ntupleDescription->fNtuple ) continue;
      -    
      -#ifdef G4VERBOSE
      -    if ( fState.GetVerboseL4() ) 
      -      fState.GetVerboseL4()
      -        ->Message("create from booking", "ntuple", 
      -                   ntupleDescription->fNtupleBooking.name());
      -#endif
      -
      -    // create ntuple
      -    CreateTNtupleFromBooking(ntupleDescription);
      -
      -    // finish created ntuple
      -    auto fromBooking = true;
      -    FinishTNtuple(ntupleDescription, fromBooking);
      -
      -#ifdef G4VERBOSE
      -    if ( fState.GetVerboseL3() ) 
      -      fState.GetVerboseL3()
      -        ->Message("create from booking", "ntuple", 
      -                  ntupleDescription->fNtupleBooking.name());
      -#endif
      -  }
      -}   
      -
      -//_____________________________________________________________________________
      -template 
      -G4bool 
      -G4TNtupleManager::IsEmpty() const
      -{
      -  return ! fNtupleDescriptionVector.size();
      -}  
      - 
      -//_____________________________________________________________________________
      -template 
      -G4bool 
      -G4TNtupleManager::Reset(G4bool deleteNtuple)
      -{
      -  for ( auto ntupleDescription : fNtupleDescriptionVector ) {
      -    if ( deleteNtuple ) {
      -      delete ntupleDescription->fNtuple;
      -    }  
      -    ntupleDescription->fNtuple = 0;
      +  // Do not create ntuple if it already exists
      +  if ( ntupleDescription->fNtuple ) {
      +    G4ExceptionDescription description;
      +    description 
      +      << "Ntuple " << ntupleId << " already exists.";
      +    G4Exception("G4TNtupleManager::CreateNtuple",
      +                "Analysis_W002", JustWarning, description);
      +    return ntupleId;
         }
       
      -  fNtupleVector.clear(); 
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL4() ) 
      +    fState.GetVerboseL4()
      +      ->Message("create from booking", "ntuple", 
      +                ntupleDescription->fNtupleBooking.name());
      +#endif
      +
      +  // create ntuple
      +  CreateTNtupleFromBooking(ntupleDescription);
      +
      +  // finish created ntuple
      +  auto fromBooking = true;
      +  FinishTNtuple(ntupleDescription, fromBooking);
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL3() ) 
      +    fState.GetVerboseL3()
      +      ->Message("create from booking", "ntuple", 
      +                ntupleDescription->fNtupleBooking.name());
      +#endif
      +
      +  return ntupleId;      
      +}
      +
      +
      +//_____________________________________________________________________________
      +template 
      +void G4TNtupleManager::CreateNtuplesFromBooking(
      +  const std::vector& ntupleBookings)
      +{
      +// Create ntuple from ntuple bookings.
      +
      +  // Create ntuple descriptions from ntuple booking.
      +  for ( auto ntupleBooking : ntupleBookings ) {
      +    CreateNtuple(ntupleBooking);
      +  }
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +G4bool 
      +G4TNtupleManager::Reset(G4bool /*deleteNtuple*/)
      +{
      +  for ( auto ntupleDescription : fNtupleDescriptionVector ) {
      +    // if ( deleteNtuple ) {
      +    //   delete ntupleDescription->fNtuple;
      +    // }
      +    // ntupleDescription->fNtuple = 0;
      +    delete ntupleDescription;
      +  }
      +
      +  fNtupleDescriptionVector.clear();
      +  fNtupleVector.clear();
         
         return true;
       }  
       
       //_____________________________________________________________________________
      -template 
      -G4int G4TNtupleManager::CreateNtuple(
      -  const G4String& name, const G4String& title)
      -{
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()->Message("create", "ntuple", name);
      -#endif
      -
      -  // Create ntuple description
      -  auto index = fNtupleDescriptionVector.size();
      -  auto ntupleDescription = new G4TNtupleDescription();
      -  fNtupleDescriptionVector.push_back(ntupleDescription);  
      -
      -  // Save name & title in ntuple booking
      -  ntupleDescription->fNtupleBooking.set_name(name);
      -  ntupleDescription->fNtupleBooking.set_title(title);
      -
      -  // Create ntuple
      -  // CreateTNtuple(ntupleDescription, name, title);
      -  fLockFirstId = true;
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL2() ) {
      -    G4ExceptionDescription description;
      -    description << name << " ntupleId " << index + fFirstId;
      -    fState.GetVerboseL2()->Message("create", "ntuple", description);
      -  } 
      -#endif
      -
      -  return G4int(index + fFirstId);
      -}                                         
      -
      -//_____________________________________________________________________________
      -template 
      -G4int G4TNtupleManager::CreateNtupleIColumn(
      -  G4int ntupleId, const G4String& name, std::vector* vector)
      -{
      -  return CreateNtupleTColumn(ntupleId, name, vector);
      -}                                         
      -
      -//_____________________________________________________________________________
      -template 
      -G4int G4TNtupleManager::CreateNtupleFColumn(
      -  G4int ntupleId, const G4String& name, std::vector* vector)
      -{
      -  return CreateNtupleTColumn(ntupleId, name, vector);
      -}                                         
      -
      -
      -//_____________________________________________________________________________
      -template 
      -G4int G4TNtupleManager::CreateNtupleDColumn(
      -  G4int ntupleId, const G4String& name, std::vector* vector)
      -{
      -  return CreateNtupleTColumn(ntupleId, name, vector);
      -}                                         
      -
      -//_____________________________________________________________________________
      -template 
      -G4int G4TNtupleManager::CreateNtupleSColumn(
      -  G4int ntupleId, const G4String& name)
      -{
      -  return CreateNtupleTColumn(ntupleId, name, nullptr);
      -}  
      -
      -//_____________________________________________________________________________
      -template 
      -void G4TNtupleManager::FinishNtuple(
      -  G4int ntupleId)
      -{ 
      -  auto ntupleDescription = GetNtupleDescriptionInFunction(ntupleId, "FinishNtuple");
      -  if ( ! ntupleDescription )  return;   
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) {
      -    G4ExceptionDescription description;
      -    description << ntupleDescription->fNtupleBooking.name() << " ntupleId " << ntupleId; 
      -    fState.GetVerboseL4()->Message("finish", "ntuple", description);
      -  }  
      -#endif
      -
      -  // check that ntuple was really created
      -  // auto ntuple = GetNtupleInFunction(ntupleId, "FinishNtuple", false);
      -  // if ( ! ntuple )  return;   
      -      // The test has to be now done in the FinishTNtuple implementations
      -
      -  auto fromBooking = false;
      -  FinishTNtuple(ntupleDescription, fromBooking);
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL2() ) {
      -    G4ExceptionDescription description;
      -    description << ntupleDescription->fNtupleBooking.name() << " ntupleId " << ntupleId; 
      -    fState.GetVerboseL2()->Message("finish", "ntuple", description);
      -  }  
      -#endif
      -}
      -
      -//_____________________________________________________________________________
      -template 
      -G4bool G4TNtupleManager::FillNtupleIColumn(
      +template 
      +G4bool G4TNtupleManager::FillNtupleIColumn(
         G4int ntupleId, G4int columnId, G4int value)
       {
         return FillNtupleTColumn(ntupleId, columnId, value);
       }                                         
       //_____________________________________________________________________________
      -template 
      -G4bool G4TNtupleManager::FillNtupleFColumn(
      +template 
      +G4bool G4TNtupleManager::FillNtupleFColumn(
         G4int ntupleId, G4int columnId, G4float value)
       {
         return FillNtupleTColumn(ntupleId, columnId, value);
       }                                         
       
       //_____________________________________________________________________________
      -template 
      -G4bool G4TNtupleManager::FillNtupleDColumn(
      +template 
      +G4bool G4TNtupleManager::FillNtupleDColumn(
         G4int ntupleId, G4int columnId, G4double value)
       {
         return FillNtupleTColumn(ntupleId, columnId, value);
       }                                         
       
       //_____________________________________________________________________________
      -template 
      -G4bool G4TNtupleManager::FillNtupleSColumn(
      +template 
      +G4bool G4TNtupleManager::FillNtupleSColumn(
         G4int ntupleId, G4int columnId, const G4String& value)
       {
         return FillNtupleTColumn(ntupleId, columnId, value);
       }                                         
       
       //_____________________________________________________________________________
      -template 
      -G4bool G4TNtupleManager::AddNtupleRow(
      +template 
      +G4bool G4TNtupleManager::AddNtupleRow(
         G4int ntupleId)
       { 
         if ( fState.GetIsActivation() && ( ! GetActivation(ntupleId) ) ) {
      @@ -401,7 +279,10 @@ G4bool G4TNtupleManager::AddNtupleRow(
         }  
       #endif
       
      -  auto ntuple = GetNtupleInFunction(ntupleId, "AddNtupleRow");
      +  auto ntupleDescription = GetNtupleDescriptionInFunction(ntupleId, "AddNtupleRow");
      +  if ( ! ntupleDescription ) return false;
      +
      +  auto ntuple = ntupleDescription->fNtuple;
         if ( ! ntuple ) return false;
         
         auto result = ntuple->add_row();
      @@ -413,11 +294,13 @@ G4bool G4TNtupleManager::AddNtupleRow(
                       "Analysis_W002", JustWarning, description);
         }         
       
      +  ntupleDescription->fHasFill = true;
      +
       #ifdef G4VERBOSE
      -  if ( fState.GetVerboseL2() ) {
      +  if ( fState.GetVerboseL4() ) {
           G4ExceptionDescription description;
           description << " ntupleId " << ntupleId;  
      -    fState.GetVerboseL2()->Message("add", "ntuple row", description);
      +    fState.GetVerboseL4()->Message("add", "ntuple row", description);
         }  
       #endif
       
      @@ -425,8 +308,8 @@ G4bool G4TNtupleManager::AddNtupleRow(
       }
       
       //_____________________________________________________________________________
      -template 
      -void  G4TNtupleManager::SetActivation(
      +template 
      +void  G4TNtupleManager::SetActivation(
         G4bool activation)
       {
         for ( auto ntupleDescription : fNtupleDescriptionVector ) {
      @@ -435,8 +318,8 @@ void  G4TNtupleManager::SetActivation(
       }
       
       //_____________________________________________________________________________
      -template 
      -void  G4TNtupleManager::SetActivation(
      +template 
      +void  G4TNtupleManager::SetActivation(
         G4int ntupleId, G4bool activation)
       {
         auto ntupleDescription = GetNtupleDescriptionInFunction(ntupleId, "SetActivation");
      @@ -446,8 +329,8 @@ void  G4TNtupleManager::SetActivation(
       }
       
       //_____________________________________________________________________________
      -template 
      -G4bool  G4TNtupleManager::GetActivation(
      +template 
      +G4bool  G4TNtupleManager::GetActivation(
         G4int ntupleId) const
       {
         auto ntupleDescription = GetNtupleDescriptionInFunction(ntupleId, "GetActivation");
      @@ -457,17 +340,17 @@ G4bool  G4TNtupleManager::GetActivation(
       }
       
       //_____________________________________________________________________________
      -template 
      -TNTUPLE* 
      -G4TNtupleManager::GetNtuple() const
      +template 
      +TN* 
      +G4TNtupleManager::GetNtuple() const
       {
         return GetNtuple(fFirstId);
       }  
       
       //_____________________________________________________________________________
      -template 
      -TNTUPLE* 
      -G4TNtupleManager::GetNtuple(G4int ntupleId) const
      +template 
      +TN* 
      +G4TNtupleManager::GetNtuple(G4int ntupleId) const
       {
         auto ntupleDescription = GetNtupleDescriptionInFunction(ntupleId, "GetNtuple");
         if ( ! ntupleDescription ) return nullptr; 
      @@ -476,47 +359,40 @@ G4TNtupleManager::GetNtuple(G4int ntupleId) const
       }  
       
       //_____________________________________________________________________________
      -template 
      -typename std::vector::iterator 
      -G4TNtupleManager::BeginNtuple()
      +template 
      +typename std::vector::iterator 
      +G4TNtupleManager::BeginNtuple()
       { 
         return fNtupleVector.begin();
       }
       
       //_____________________________________________________________________________
      -template 
      -typename std::vector::iterator 
      -G4TNtupleManager::EndNtuple()
      +template 
      +typename std::vector::iterator 
      +G4TNtupleManager::EndNtuple()
       { 
         return fNtupleVector.end(); 
       }
       
       //_____________________________________________________________________________
      -template 
      -typename std::vector::const_iterator 
      -G4TNtupleManager::BeginConstNtuple() const
      +template 
      +typename std::vector::const_iterator 
      +G4TNtupleManager::BeginConstNtuple() const
       { 
         return fNtupleVector.begin();
       }
       
       //_____________________________________________________________________________
      -template 
      -typename std::vector::const_iterator 
      -G4TNtupleManager::EndConstNtuple() const
      +template 
      +typename std::vector::const_iterator 
      +G4TNtupleManager::EndConstNtuple() const
       { 
         return fNtupleVector.end();
       }
       
       //_____________________________________________________________________________
      -template 
      -G4int G4TNtupleManager::GetNofNtuples() const
      +template 
      +G4int G4TNtupleManager::GetNofNtuples() const
       { 
         return G4int(fNtupleVector.size());
       }
      -
      -//_____________________________________________________________________________
      -template 
      -G4int G4TNtupleManager::GetNofNtupleBookings() const
      -{ 
      -  return G4int(fNtupleDescriptionVector.size());
      -}
      diff --git a/source/analysis/management/include/G4VAnalysisManager.hh b/source/analysis/management/include/G4VAnalysisManager.hh
      index 990243b1a0..de78e3f5a9 100644
      --- a/source/analysis/management/include/G4VAnalysisManager.hh
      +++ b/source/analysis/management/include/G4VAnalysisManager.hh
      @@ -46,6 +46,7 @@
       
       
       class G4AnalysisMessenger;
      +class G4NtupleBookingManager;
       class G4HnManager;
       class G4VH1Manager;
       class G4VH2Manager;
      @@ -71,8 +72,8 @@ class G4VAnalysisManager
           // Methods for handling files 
           G4bool OpenFile(const G4String& fileName = "");
           G4bool Write(); 
      -    G4bool CloseFile(G4bool reset = true); 
      -    G4bool Merge(tools::histo::hmpi* hmpi);   
      +    G4bool CloseFile(G4bool reset = true);
      +    G4bool Merge(tools::histo::hmpi* hmpi);
           G4bool Plot();
           G4bool IsOpenFile() const;
       
      @@ -420,29 +421,36 @@ class G4VAnalysisManager
           void  SetH1Activation(G4int id, G4bool activation);
           void  SetH1Ascii(G4int id, G4bool ascii);
           void  SetH1Plotting(G4int id, G4bool plotting);
      +    void  SetH1FileName(G4int id, const G4String& fileName);
           //
           void  SetH2Activation(G4bool activation);
           void  SetH2Activation(G4int id, G4bool activation);
           void  SetH2Ascii(G4int id, G4bool ascii);
           void  SetH2Plotting(G4int id, G4bool plotting);
      +    void  SetH2FileName(G4int id, const G4String& fileName);
           //
           void  SetH3Activation(G4bool activation);
           void  SetH3Activation(G4int id, G4bool activation);
           void  SetH3Ascii(G4int id, G4bool ascii);
           void  SetH3Plotting(G4int id, G4bool plotting);
      +    void  SetH3FileName(G4int id, const G4String& fileName);
           //
           void  SetP1Activation(G4bool activation);
           void  SetP1Activation(G4int id, G4bool activation);
           void  SetP1Ascii(G4int id, G4bool ascii);
           void  SetP1Plotting(G4int id, G4bool plotting);
      +    void  SetP1FileName(G4int id, const G4String& fileName);
           //
           void  SetP2Activation(G4bool activation);
           void  SetP2Activation(G4int id, G4bool activation);
           void  SetP2Ascii(G4int id, G4bool ascii);
           void  SetP2Plotting(G4int id, G4bool plotting);
      +    void  SetP2FileName(G4int id, const G4String& fileName);
           //
           void  SetNtupleActivation(G4bool activation);
           void  SetNtupleActivation(G4int id, G4bool activation);
      +    void  SetNtupleFileName(const G4String& fileName);
      +    void  SetNtupleFileName(G4int id, const G4String& fileName);
       
           
           // Access to histogram & profiles parameters
      @@ -499,6 +507,7 @@ class G4VAnalysisManager
           G4bool   GetH1Activation(G4int id) const;
           G4bool   GetH1Ascii(G4int id) const;
           G4bool   GetH1Plotting(G4int id) const;
      +    G4String GetH1FileName(G4int id) const;
           //
           G4String GetH2Name(G4int id) const;
           G4double GetH2XUnit(G4int id) const;
      @@ -531,7 +540,8 @@ class G4VAnalysisManager
           G4bool   GetP2Plotting(G4int id) const;
           //
           G4bool   GetNtupleActivation(G4int id) const;
      -    
      +    G4String GetNtupleFileName(G4int id) const;
      +
           // Setters for histogram & profiles attributes for plotting
           //
           G4bool SetH1Title(G4int id, const G4String& title);
      @@ -632,7 +642,7 @@ class G4VAnalysisManager
           void SetH3Manager(G4VH3Manager* h3Manager);
           void SetP1Manager(G4VP1Manager* p1Manager);
           void SetP2Manager(G4VP2Manager* p2Manager);
      -    void SetNtupleManager(G4VNtupleManager* ntupleManager);   
      +    void SetNtupleManager(std::shared_ptr ntupleManager);
           void SetFileManager(std::shared_ptr fileManager);
           void SetPlotManager(std::shared_ptr plotManager);
       
      @@ -647,10 +657,12 @@ class G4VAnalysisManager
           G4AnalysisManagerState fState;
           std::shared_ptr  fVFileManager;
           std::shared_ptr   fPlotManager;
      +    std::shared_ptr fNtupleBookingManager;
      +    std::shared_ptr fVNtupleManager;
       
         private:
           // data members
      -    std::unique_ptr fMessenger;
      +    std::unique_ptr  fMessenger;
           std::shared_ptr   fH1HnManager;
           std::shared_ptr   fH2HnManager;
           std::shared_ptr   fH3HnManager;
      @@ -661,8 +673,6 @@ class G4VAnalysisManager
           std::unique_ptr  fVH3Manager;
           std::unique_ptr  fVP1Manager;
           std::unique_ptr  fVP2Manager;
      -    // std::shared_ptr fVNtupleManager;
      -    G4VNtupleManager* fVNtupleManager;
       };
       
       // inline functions
      diff --git a/source/analysis/management/include/G4VAnalysisManager.icc b/source/analysis/management/include/G4VAnalysisManager.icc
      index 25f34ef72d..3d91d64cc5 100644
      --- a/source/analysis/management/include/G4VAnalysisManager.icc
      +++ b/source/analysis/management/include/G4VAnalysisManager.icc
      @@ -25,6 +25,7 @@
       //
       
       #include "G4HnManager.hh"
      +#include "G4NtupleBookingManager.hh"
       #include "G4VH1Manager.hh"
       #include "G4VH2Manager.hh"
       #include "G4VH3Manager.hh"
      @@ -713,8 +714,13 @@ G4bool G4VAnalysisManager::GetP2Plotting(G4int id) const
       inline 
       G4bool G4VAnalysisManager::GetNtupleActivation(G4int id) const
       {
      -  return fVNtupleManager->GetActivation(id);
      -}  
      +  if ( fVNtupleManager ) {
      +    return fVNtupleManager->GetActivation(id);
      +  } else {
      +    return fNtupleBookingManager->GetActivation(id);
      +
      +  }
      +}
       
       //_____________________________________________________________________________
       inline 
      diff --git a/source/analysis/management/include/G4VAnalysisReader.icc b/source/analysis/management/include/G4VAnalysisReader.icc
      index 596abb7fdb..4ba72315c0 100644
      --- a/source/analysis/management/include/G4VAnalysisReader.icc
      +++ b/source/analysis/management/include/G4VAnalysisReader.icc
      @@ -508,7 +508,7 @@ G4int G4VAnalysisReader::GetVerboseLevel() const
       inline
       G4String G4VAnalysisReader::GetType() const 
       {
      -  return fState.GetType();
      +  return fFileManager->GetFileType();
       }                 
       
       //_____________________________________________________________________________
      diff --git a/source/analysis/management/include/G4VFileManager.hh b/source/analysis/management/include/G4VFileManager.hh
      index 4fd6abc301..c8773ffc30 100644
      --- a/source/analysis/management/include/G4VFileManager.hh
      +++ b/source/analysis/management/include/G4VFileManager.hh
      @@ -32,61 +32,111 @@
       #define G4VFileManager_h 1
       
       #include "G4BaseFileManager.hh"
      +#include "G4VTHnFileManager.hh"
       #include "globals.hh"
       
      +namespace tools {
      +namespace histo { 
      +class h1d; 
      +class h2d; 
      +class h3d; 
      +class p1d; 
      +class p2d; 
      +}
      +}
      +
       class G4VFileManager : public G4BaseFileManager
       {
         public:
           explicit G4VFileManager(const G4AnalysisManagerState& state);
           virtual ~G4VFileManager();
          
      -    // Methods to manipulate files
      +    // Method to open default file
           virtual G4bool OpenFile(const G4String& fileName) = 0;
      -    virtual G4bool WriteFile() = 0;
      -    virtual G4bool CloseFile() = 0; 
      -    
      -    // Methods for handling files and directories names
      -    //
      -    virtual G4bool SetFileName(const G4String& fileName) final;
      -    
      -    void LockHistoDirectoryName();
      -    void LockNtupleDirectoryName();
       
      +    // Methods applied to file per name
      +    virtual G4bool CreateFile(const G4String& fileName) = 0;
      +    virtual G4bool WriteFile(const G4String& fileName) = 0;
      +    virtual G4bool CloseFile(const G4String& fileName) = 0;
      +    virtual G4bool SetIsEmpty(const G4String& fileName, G4bool isEmpty) = 0;
      +
      +    // Methods applied to all registered files
      +    virtual G4bool WriteFiles() = 0;
      +    virtual G4bool CloseFiles() = 0;
      +    virtual G4bool DeleteEmptyFiles() = 0;
      +
      +    // Methods for handling files and directories names
      +    virtual G4bool SetFileName(const G4String& fileName) final;
           G4bool SetHistoDirectoryName(const G4String& dirName);
      -    G4bool SetNtupleDirectoryName(const G4String& dirName); 
      +    G4bool SetNtupleDirectoryName(const G4String& dirName);
      +
      +    void LockDirectoryNames();
       
           G4bool IsOpenFile() const;
           G4String GetHistoDirectoryName() const;
           G4String GetNtupleDirectoryName() const;
       
      +    // Access to helpers
      +    template 
      +    std::shared_ptr> GetHnFileManager() const;
      +
         protected:
           // data members
      -    G4bool   fIsOpenFile;
           G4String fHistoDirectoryName;
           G4String fNtupleDirectoryName; 
      -    G4bool   fLockFileName;     
      -    G4bool   fLockHistoDirectoryName;     
      -    G4bool   fLockNtupleDirectoryName;
      +    G4bool   fIsOpenFile;
      +    G4bool   fLockDirectoryNames;     
      +
      +    // FileManagers per object type
      +    std::shared_ptr> fH1FileManager;
      +    std::shared_ptr> fH2FileManager;
      +    std::shared_ptr> fH3FileManager;
      +    std::shared_ptr> fP1FileManager;
      +    std::shared_ptr> fP2FileManager;
       };
       
       // inline functions
       
      +inline void G4VFileManager::LockDirectoryNames()
      +{ fLockDirectoryNames = true; }
      +
       inline G4bool G4VFileManager::IsOpenFile() const
       { return fIsOpenFile; }
       
      -inline void G4VFileManager::LockHistoDirectoryName()
      -{ fLockHistoDirectoryName = true; }
      +inline G4String G4VFileManager::GetHistoDirectoryName() const 
      +{ return fHistoDirectoryName; }  
       
      -inline void G4VFileManager::LockNtupleDirectoryName()
      -{ fLockNtupleDirectoryName = true; }
      +inline G4String G4VFileManager::GetNtupleDirectoryName() const 
      +{ return fNtupleDirectoryName; }
       
      +template <>
      +inline
      +std::shared_ptr> 
      +G4VFileManager::GetHnFileManager() const
      +{   return fH1FileManager; }
       
      -inline G4String G4VFileManager::GetHistoDirectoryName() const {
      -  return fHistoDirectoryName;
      -}  
      +template <>
      +inline
      +std::shared_ptr> 
      +G4VFileManager::GetHnFileManager() const
      +{ return fH2FileManager; }
      +
      +template <>
      +inline
      +std::shared_ptr> 
      +G4VFileManager::GetHnFileManager() const
      +{ return fH3FileManager; }
      +
      +template <>
      +inline
      +std::shared_ptr> 
      +G4VFileManager::GetHnFileManager() const
      +{ return fP1FileManager; }
      +
      +template <>
      +inline
      +std::shared_ptr> 
      +G4VFileManager::GetHnFileManager() const
      +{ return fP2FileManager; }
       
      -inline G4String G4VFileManager::GetNtupleDirectoryName() const {
      -  return fNtupleDirectoryName;
      -}  
      -  
       #endif
      diff --git a/source/analysis/management/include/G4VNtupleFileManager.hh b/source/analysis/management/include/G4VNtupleFileManager.hh
      new file mode 100644
      index 0000000000..7e3f0a4b87
      --- /dev/null
      +++ b/source/analysis/management/include/G4VNtupleFileManager.hh
      @@ -0,0 +1,96 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// The abstract base class for ntuple file output.
      +//
      +// Author: Ivana Hrivnacova, 15/09/2020  (ivana@ipno.in2p3.fr)
      +
      +#ifndef G4VNtupleFileManager_h
      +#define G4VNtupleFileManager_h 1
      +
      +#include "G4AnalysisManagerState.hh"
      +#include "globals.hh"
      +
      +class G4VNtupleManager;
      +class G4NtupleBookingManager;
      +
      +class G4VNtupleFileManager
      +{
      +  // Disable using the object managers outside G4VAnalysisManager and
      +  // its messenger
      +  friend class G4VAnalysisManager;
      +
      +  public:
      +    explicit G4VNtupleFileManager(const G4AnalysisManagerState& state,
      +                                  const G4String& fileType);
      +    virtual ~G4VNtupleFileManager();
      +
      +    // deleted copy constructor & assignment operator
      +    G4VNtupleFileManager(const G4VNtupleFileManager& rhs) = delete;
      +    G4VNtupleFileManager& operator=(const G4VNtupleFileManager& rhs) = delete;
      +
      +    // MT/MPI
      +    virtual void SetNtupleMerging(G4bool mergeNtuples, 
      +                   G4int nofReducedNtupleFiles = 0);
      +    virtual void SetNtupleRowWise(G4bool rowWise, G4bool rowMode = true);
      +    virtual void SetBasketSize(unsigned int basketSize);
      +    virtual void SetBasketEntries(unsigned int basketEntries);
      +
      +    virtual std::shared_ptr CreateNtupleManager() = 0;
      +    virtual void SetBookingManager(std::shared_ptr bookingManager);
      +
      +    // Methods to be performed at file management
      +    virtual G4bool ActionAtOpenFile(const G4String& /*fileName*/) = 0;
      +    virtual G4bool ActionAtWrite() = 0;
      +    virtual G4bool ActionAtCloseFile(G4bool /*reset*/) = 0;
      +    virtual G4bool Reset() = 0;
      +    virtual G4bool IsNtupleMergingSupported() const;
      +
      +    // Get methods
      +    G4String GetFileType() const;
      +
      +  protected:
      +    // static data members
      +    const G4AnalysisManagerState& fState;
      +    G4String  fFileType; 
      +    std::shared_ptr fBookingManager;
      +};
      +
      +// inline functions
      +
      +inline void G4VNtupleFileManager::SetBookingManager(
      +  std::shared_ptr bookingManager)
      +{ fBookingManager = bookingManager; }
      +
      +inline G4bool G4VNtupleFileManager::IsNtupleMergingSupported() const {
      +  return false;
      +}
      +
      +inline G4String G4VNtupleFileManager::GetFileType() const {
      +  return fFileType;
      +}
      +
      +#endif
      diff --git a/source/analysis/management/include/G4VNtupleManager.hh b/source/analysis/management/include/G4VNtupleManager.hh
      index a11e539d1d..cd91169b7c 100644
      --- a/source/analysis/management/include/G4VNtupleManager.hh
      +++ b/source/analysis/management/include/G4VNtupleManager.hh
      @@ -37,6 +37,8 @@
       
       #include 
       
      +struct G4NtupleBooking;
      +
       class G4VNtupleManager : public G4BaseAnalysisManager
       {
         // Disable using the object managers outside G4VAnalysisManager and
      @@ -54,33 +56,33 @@ class G4VNtupleManager : public G4BaseAnalysisManager
       
         protected:
           // Methods for handling ntuples
      -    virtual G4int CreateNtuple(const G4String& name, const G4String& title) = 0;
      +    virtual G4int CreateNtuple(G4NtupleBooking* booking) = 0;
       
      -    // Create columns in the last created ntuple
      -    virtual G4int CreateNtupleIColumn(const G4String& name, 
      -                              std::vector* vector) = 0;
      -    virtual G4int CreateNtupleFColumn(const G4String& name,
      -                              std::vector* vector) = 0;
      -    virtual G4int CreateNtupleDColumn(const G4String& name,
      -                              std::vector* vector) = 0;
      -    virtual G4int CreateNtupleSColumn(const G4String& name) = 0;
      -    virtual void  FinishNtuple() = 0;   
      +    // // Create columns in the last created ntuple
      +    // virtual G4int CreateNtupleIColumn(const G4String& name, 
      +    //                           std::vector* vector) = 0;
      +    // virtual G4int CreateNtupleFColumn(const G4String& name,
      +    //                           std::vector* vector) = 0;
      +    // virtual G4int CreateNtupleDColumn(const G4String& name,
      +    //                           std::vector* vector) = 0;
      +    // virtual G4int CreateNtupleSColumn(const G4String& name) = 0;
      +    // virtual void  FinishNtuple() = 0;   
       
      -    // Create columns in the ntuple with given id
      -    virtual G4int CreateNtupleIColumn(G4int ntupleId, const G4String& name,
      -                                      std::vector* vector) = 0;
      -    virtual G4int CreateNtupleFColumn(G4int ntupleId, const G4String& name,
      -                                      std::vector* vector) = 0;
      -    virtual G4int CreateNtupleDColumn(G4int ntupleId, const G4String& name,
      -                                      std::vector* vector) = 0;
      -    virtual G4int CreateNtupleSColumn(G4int ntupleId, const G4String& name) = 0;
      -    virtual void  FinishNtuple(G4int ntupleId) = 0; 
      +    // // Create columns in the ntuple with given id
      +    // virtual G4int CreateNtupleIColumn(G4int ntupleId, const G4String& name,
      +    //                                   std::vector* vector) = 0;
      +    // virtual G4int CreateNtupleFColumn(G4int ntupleId, const G4String& name,
      +    //                                   std::vector* vector) = 0;
      +    // virtual G4int CreateNtupleDColumn(G4int ntupleId, const G4String& name,
      +    //                                   std::vector* vector) = 0;
      +    // virtual G4int CreateNtupleSColumn(G4int ntupleId, const G4String& name) = 0;
      +    // virtual void  FinishNtuple(G4int ntupleId) = 0; 
           
           // The ntuple column ids are generated automatically starting from 0; 
           // with the following function it is possible to change it 
           // to start from another value
      -    virtual G4bool SetFirstNtupleColumnId(G4int firstId) = 0; 
      -    virtual G4int  GetFirstNtupleColumnId() const = 0;
      +    // virtual void   SetFirstNtupleColumnId(G4int firstId) = 0; 
      +    // virtual G4int  GetFirstNtupleColumnId() const = 0;
       
           // Methods to fill ntuples
           // Methods for ntuple with id = FirstNtupleId                     
      @@ -103,9 +105,17 @@ class G4VNtupleManager : public G4BaseAnalysisManager
           virtual void  SetActivation(G4int id, G4bool activation) = 0;
           virtual G4bool  GetActivation(G4int id) const = 0;
       
      +    // // File name option
      +    // virtual void  SetFileName(const G4String& fileName) = 0;
      +    // virtual void  SetFileName(G4int id, const G4String& fileName) = 0;
      +    // virtual G4String GetFileName(G4int id) const = 0;
      +
           // Access methods
           virtual G4int GetNofNtuples() const = 0;
      -    virtual G4int GetNofNtupleBookings() const = 0;
      +    // virtual G4int GetNofNtupleBookings() const = 0;
      +
      +    // Set first column Id
      +    virtual G4bool SetFirstNtupleColumnId(G4int firstId) = 0;
       };
       
       #endif
      diff --git a/source/analysis/management/include/G4VTFileManager.hh b/source/analysis/management/include/G4VTFileManager.hh
      new file mode 100644
      index 0000000000..8535f34fab
      --- /dev/null
      +++ b/source/analysis/management/include/G4VTFileManager.hh
      @@ -0,0 +1,141 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// The common implementaion of G4VFileManager functions via G4TFileManager.
      +
      +// Author: Ivana Hrivnacova, 18/06/2013  (ivana@ipno.in2p3.fr)
      +
      +#ifndef G4VTFileManager_h
      +#define G4VTFileManager_h 1
      +
      +#include "G4VFileManager.hh"
      +#include "G4TNtupleDescription.hh"
      +#include "G4TFileManager.hh"
      +#include "globals.hh"
      +
      +#include "tools/wcsv_ntuple"
      +
      +template 
      +class G4VTFileManager : public G4VFileManager,
      +                        public G4TFileManager
      +{
      +  public:
      +    explicit G4VTFileManager(const G4AnalysisManagerState& state)
      +      : G4VFileManager(state), G4TFileManager(state), fFile(nullptr) {}
      +    ~G4VTFileManager() {}
      +
      +    using G4VFileManager::WriteFile;
      +    using G4VFileManager::CloseFile;
      +
      +    // Methods applied to file per name
      +    virtual G4bool CreateFile(const G4String& fileName) final;
      +    virtual G4bool WriteFile(const G4String& fileName) final;
      +    virtual G4bool CloseFile(const G4String& fileName) final;
      +    virtual G4bool SetIsEmpty(const G4String& fileName, G4bool isEmpty) final;
      +
      +    // Methods applied to all registered files
      +    virtual G4bool WriteFiles() final;
      +    virtual G4bool CloseFiles() final;
      +    virtual G4bool DeleteEmptyFiles() final;
      +
      +    // Get method
      +    std::shared_ptr GetFile() const;
      +
      +  protected:
      +    // Data members
      +    // Default file - created at OpenFile call
      +    std::shared_ptr fFile;
      +};
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4VTFileManager::CreateFile(const G4String& fileName)
      +{
      +  return (G4TFileManager::CreateTFile(fileName) != nullptr);
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4VTFileManager::WriteFile(const G4String& fileName)
      +{
      +  return G4TFileManager::WriteTFile(fileName);
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4VTFileManager::CloseFile(const G4String& fileName)
      +{
      +  return G4TFileManager::CloseTFile(fileName);
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4VTFileManager::SetIsEmpty(const G4String& fileName, G4bool isEmpty)
      +{
      +  return G4TFileManager::SetIsEmpty(fileName, isEmpty);
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4VTFileManager::WriteFiles()
      +{
      +  return G4TFileManager::WriteFiles();
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4VTFileManager::CloseFiles()
      +{
      +  auto result = G4TFileManager::CloseFiles();
      +
      +  fIsOpenFile = false;
      +  fFile.reset();
      +
      +  return result;
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline
      +G4bool G4VTFileManager::DeleteEmptyFiles()
      +{
      +  return G4TFileManager::DeleteEmptyFiles();
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +inline std::shared_ptr G4VTFileManager::GetFile() const
      +{
      +  return fFile;
      +}
      +
      +#endif
      diff --git a/source/analysis/management/include/G4VTHnFileManager.hh b/source/analysis/management/include/G4VTHnFileManager.hh
      new file mode 100644
      index 0000000000..0b0ca8ca52
      --- /dev/null
      +++ b/source/analysis/management/include/G4VTHnFileManager.hh
      @@ -0,0 +1,53 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Templated base class for histogram/profile file output.
      +//
      +// Author: Ivana Hrivnacova, 15/09/2020  (ivana@ipno.in2p3.fr)
      +
      +#ifndef G4VTHnFileManager_h
      +#define G4VTHnFileManager_h 1
      +
      +#include "G4BaseFileManager.hh"
      +#include "globals.hh"
      +
      +class G4AnalysisManagerState;
      +
      +template 
      +class G4VTHnFileManager
      +{
      +  public:
      +    G4VTHnFileManager() {}
      +    virtual ~G4VTHnFileManager() {}
      +
      +    // Methods for writing objects
      +    // Write a single object to an extra file (the file is closed after write)
      +    virtual G4bool WriteExtra(HT* ht, const G4String& htName, const G4String& fileName) = 0;
      +    // Write to an open file  (handled with OpenFile()/CloseFile methods)
      +    virtual G4bool Write(HT* ht, const G4String& htName, G4String& fileName) = 0;
      +};
      +
      +#endif
      diff --git a/source/analysis/management/sources.cmake b/source/analysis/management/sources.cmake
      index 290607971b..bd1d928387 100644
      --- a/source/analysis/management/sources.cmake
      +++ b/source/analysis/management/sources.cmake
      @@ -29,6 +29,8 @@ geant4_define_module(NAME G4analysismng
           G4H3Messenger.hh
           G4P1Messenger.hh
           G4P2Messenger.hh
      +    G4NtupleBookingManager.hh
      +    G4NtupleBookingManager.icc
           G4NtupleMessenger.hh
           G4HnInformation.hh
           G4HnManager.hh
      @@ -36,6 +38,9 @@ geant4_define_module(NAME G4analysismng
           G4PlotManager.hh
           G4PlotMessenger.hh
           G4PlotParameters.hh
      +    G4TFileInformation.hh
      +    G4TFileManager.hh
      +    G4TFileManager.icc
           G4THnManager.hh
           G4THnManager.icc
           G4TNtupleDescription.hh
      @@ -52,10 +57,13 @@ geant4_define_module(NAME G4analysismng
           G4VH1Manager.hh
           G4VH2Manager.hh
           G4VH3Manager.hh
      +    G4VNtupleFileManager.hh
           G4VNtupleManager.hh
           G4VP1Manager.hh
           G4VP2Manager.hh
           G4VRNtupleManager.hh
      +    G4VTFileManager.hh
      +    G4VTHnFileManager.hh
         SOURCES
           G4AnalysisVerbose.cc
           G4AnalysisManagerState.cc
      @@ -74,6 +82,7 @@ geant4_define_module(NAME G4analysismng
           G4H3Messenger.cc
           G4P1Messenger.cc
           G4P2Messenger.cc
      +    G4NtupleBookingManager.cc
           G4NtupleMessenger.cc
           G4HnManager.cc
           G4HnMessenger.cc
      @@ -83,6 +92,7 @@ geant4_define_module(NAME G4analysismng
           G4VAnalysisManager.cc
           G4VAnalysisReader.cc
           G4VFileManager.cc
      +    G4VNtupleFileManager.cc
         GRANULAR_DEPENDENCIES
           G4globman
           G4intercoms
      diff --git a/source/analysis/management/src/G4AnalysisManagerState.cc b/source/analysis/management/src/G4AnalysisManagerState.cc
      index 1c891f649d..c0fcc53509 100644
      --- a/source/analysis/management/src/G4AnalysisManagerState.cc
      +++ b/source/analysis/management/src/G4AnalysisManagerState.cc
      @@ -39,10 +39,10 @@ G4AnalysisManagerState::G4AnalysisManagerState(
          fIsActivation(false),
          fVerboseLevel(0),
          fCompressionLevel(1),
      -   fVerboseL1(type,1),
      -   fVerboseL2(type,2),
      -   fVerboseL3(type,3),
      -   fVerboseL4(type,4),
      +   fVerboseL1(1),
      +   fVerboseL2(2),
      +   fVerboseL3(3),
      +   fVerboseL4(4),
          fpVerboseL1(0),
          fpVerboseL2(0),
          fpVerboseL3(0),
      @@ -62,34 +62,33 @@ void G4AnalysisManagerState::SetVerboseLevel(G4int verboseLevel)
         fVerboseLevel = verboseLevel;
         
         if ( verboseLevel == 0 ) {
      -    fpVerboseL1 = 0;
      -    fpVerboseL2 = 0;
      -    fpVerboseL3 = 0;
      -    fpVerboseL4 = 0;
      +    fpVerboseL1 = nullptr;
      +    fpVerboseL2 = nullptr;
      +    fpVerboseL3 = nullptr;
      +    fpVerboseL4 = nullptr;
         }
         else if ( verboseLevel == 1 ) {  
           fpVerboseL1 = &fVerboseL1;
      -    fpVerboseL2 = 0;
      -    fpVerboseL3 = 0;
      -    fpVerboseL4 = 0;
      +    fpVerboseL2 = nullptr;
      +    fpVerboseL3 = nullptr;
      +    fpVerboseL4 = nullptr;
         }
         else if ( verboseLevel == 2 ) {  
           fpVerboseL1 = &fVerboseL1;
           fpVerboseL2 = &fVerboseL2;
      -    fpVerboseL3 = 0;
      -    fpVerboseL4 = 0;
      +    fpVerboseL3 = nullptr;
      +    fpVerboseL4 = nullptr;
         }
         else if ( verboseLevel == 3 ) {  
           fpVerboseL1 = &fVerboseL1;
           fpVerboseL2 = &fVerboseL2;
           fpVerboseL3 = &fVerboseL3;
      -    fpVerboseL4 = 0;
      +    fpVerboseL4 = nullptr;
         }
      -  else {
      +  else if ( verboseLevel > 3 ) {
           fpVerboseL1 = &fVerboseL1;
           fpVerboseL2 = &fVerboseL2;
           fpVerboseL3 = &fVerboseL3;
           fpVerboseL4 = &fVerboseL4;
         }
      -}  
      -
      +}
      diff --git a/source/analysis/management/src/G4AnalysisMessenger.cc b/source/analysis/management/src/G4AnalysisMessenger.cc
      index 827fa78a0f..28b043c32f 100644
      --- a/source/analysis/management/src/G4AnalysisMessenger.cc
      +++ b/source/analysis/management/src/G4AnalysisMessenger.cc
      @@ -115,9 +115,9 @@ void G4AnalysisMessenger::SetH2HnManager(G4HnManager& h2HnManager)
       }  
       
       //_____________________________________________________________________________
      -void G4AnalysisMessenger::SetH3HnManager(G4HnManager& h2HnManager)
      +void G4AnalysisMessenger::SetH3HnManager(G4HnManager& h3HnManager)
       {
      -  fH2HnMessenger = G4Analysis::make_unique(h2HnManager);
      +  fH3HnMessenger = G4Analysis::make_unique(h3HnManager);
       }  
       
       //_____________________________________________________________________________
      diff --git a/source/analysis/management/src/G4AnalysisMessengerHelper.cc b/source/analysis/management/src/G4AnalysisMessengerHelper.cc
      index b4c60efcb6..66dad816cc 100644
      --- a/source/analysis/management/src/G4AnalysisMessengerHelper.cc
      +++ b/source/analysis/management/src/G4AnalysisMessengerHelper.cc
      @@ -348,7 +348,7 @@ void G4AnalysisMessengerHelper::WarnAboutSetCommands() const
       {
         G4ExceptionDescription description;
         description 
      -    << "Command setX, setY, setZ must be called sucessively in this order. " << G4endl
      +    << "Command setX, setY, setZ must be called successively in this order. " << G4endl
           << "Command was ignored." << G4endl;
         G4String methodName(Update("G4UHNTYPE_Messenger::SetNewValue"));  
         G4Exception(methodName,
      diff --git a/source/analysis/management/src/G4AnalysisUtilities.cc b/source/analysis/management/src/G4AnalysisUtilities.cc
      index ba15f2873c..1fe29f7445 100644
      --- a/source/analysis/management/src/G4AnalysisUtilities.cc
      +++ b/source/analysis/management/src/G4AnalysisUtilities.cc
      @@ -30,6 +30,7 @@
       #include "G4BinScheme.hh"
       #include "G4UnitsTable.hh"
       #include "G4String.hh"
      +#include "G4Threading.hh"
       
       namespace {
       
      @@ -190,9 +191,7 @@ void  Tokenize(const G4String& line, std::vector& tokens)
       //_____________________________________________________________________________
       G4AnalysisOutput GetOutput(const G4String& outputName, G4bool warn) {
         if      ( outputName == "csv"  )  { return G4AnalysisOutput::kCsv;  }
      -#ifdef TOOLS_USE_HDF5
         else if ( outputName == "hdf5" )  { return G4AnalysisOutput::kHdf5; }
      -#endif
         else if ( outputName == "root" )  { return G4AnalysisOutput::kRoot; }
         else if ( outputName == "xml"  )  { return G4AnalysisOutput::kXml;  }
         else if ( outputName == "none" )  { return G4AnalysisOutput::kNone; }
      @@ -202,7 +201,7 @@ G4AnalysisOutput GetOutput(const G4String& outputName, G4bool warn) {
             description 
               << "    \"" << outputName << "\" output type is not supported." << G4endl;
             G4Exception("G4Analysis::GetOutputType",
      -                  "Analysis_W013", JustWarning, description);
      +                  "Analysis_W051", JustWarning, description);
           }
           return G4AnalysisOutput::kNone; 
         }
      @@ -214,11 +213,9 @@ G4String GetOutputName(G4AnalysisOutput output) {
           case G4AnalysisOutput::kCsv:
             return "csv";
             break;
      -#ifdef TOOLS_USE_HDF5
           case G4AnalysisOutput::kHdf5: 
             return "hdf5";
             break;
      -#endif
           case G4AnalysisOutput::kRoot: 
             return "root";
             break;
      @@ -235,8 +232,171 @@ G4String GetOutputName(G4AnalysisOutput output) {
           << "    \"" << static_cast(output) << "\" is not handled." << G4endl
           << "    " << "none type will be used.";
         G4Exception("G4Analysis::GetOutputName",
      -              "Analysis_W013", JustWarning, description);
      +              "Analysis_W051", JustWarning, description);
         return "none";
       }
       
      +//_____________________________________________________________________________
      +G4String GetBaseName(const G4String& fileName)
      +{
      +// Get file base name (without dot)
      +
      +  G4String name = fileName;
      +  if ( name.rfind(".") != std::string::npos ) { 
      +    name = name.substr(0, name.rfind("."));
      +  }
      +  return name;
      +}    
      +
      +//_____________________________________________________________________________
      +G4String GetExtension(const G4String& fileName,
      +                      const G4String& defaultExtension)
      +{
      +// Get file base extension (without dot)
      +// If fileName is provided without extension, return defaultExtension
      +
      +  G4String extension;
      +  if ( fileName.rfind(".") != std::string::npos ) { 
      +    extension = fileName.substr(fileName.rfind(".") + 1);
      +  }
      +  if ( ! extension.size() ) {
      +    extension = defaultExtension;
      +  }
      +  return extension;
      +}
      +
      +//_____________________________________________________________________________
      +G4String GetHnFileName(
      +            const G4String& fileName,
      +            const G4String& fileType, 
      +            const G4String& hnType, 
      +            const G4String& hnName)
      +{
      +// Compose and return the histogram or profile specific file name:
      +// - add _hn_hnName suffix to the file base name
      +// - add file extension if not present
      +
      +  auto name = GetBaseName(fileName);
      + 
      +  // Add _hnType_hnName
      +  name.append("_");
      +  name.append(hnType);
      +  name.append("_");
      +  name.append(hnName);
      +
      +  // Add file extension
      +  auto extension = GetExtension(fileName, fileType);
      +  if ( extension.size() ) {
      +    name.append(".");
      +    name.append(extension);
      +  }
      +
      +  return name;
      +}
      +
      +//_____________________________________________________________________________
      +G4String GetNtupleFileName(
      +            const G4String& fileName,
      +            const G4String& fileType, 
      +            const G4String& ntupleName)
      +{
      +// Compose and return the ntuple specific file name:
      +// - add _nt_ntupleName suffix to the file base name
      +// - add _tN suffix if called on thread worker
      +// - add file extension if not present
      +
      +  auto name = GetBaseName(fileName);
      +    
      +  // Add ntupleName
      +  name.append("_nt_");
      +  name.append(ntupleName);
      +
      +  // Add thread Id to a file name if MT processing
      +  if ( ! G4Threading::IsMasterThread() ) {
      +    std::ostringstream os;
      +    os << G4Threading::G4GetThreadId();
      +    name.append("_t");
      +    name.append(os.str());
      +  }  
      +
      +  // Add file extension
      +  auto extension = GetExtension(fileName, fileType);
      +  if ( extension.size() ) {
      +    name.append(".");
      +    name.append(extension);
      +  }
      +  
      +  return name;
      +}
      +
      +//_____________________________________________________________________________
      +G4String GetNtupleFileName(
      +            const G4String& fileName,
      +            const G4String& fileType, 
      +            G4int ntupleFileNumber)
      +{
      +// Compose and return the ntuple specific file name:
      +// - add _mFN suffix to the file base name where FN = ntupleFileNumber
      +// - add file extension if not present
      +
      +  auto name = GetBaseName(fileName);
      +    
      +  // Add _M followed by ntupleFileNumber
      +  std::ostringstream os;
      +  os << ntupleFileNumber;
      +  name.append("_m");
      +  name.append(os.str());
      +
      +  // Add file extension
      +  auto extension = GetExtension(fileName, fileType);
      +  if ( extension.size() ) {
      +    name.append(".");
      +    name.append(extension);
      +  }
      +  
      +  return name;
      +}
      +
      +//_____________________________________________________________________________
      +G4String GetTnFileName(
      +            const G4String& fileName,
      +            const G4String& fileType)
      +{
      +// Update file base name with the thread suffix:
      +// - add _tN suffix if called on thread worker
      +// - add file extension if not present
      +
      +  auto name = GetBaseName(fileName);
      +
      +  // Add thread Id to a file name if MT processing
      +  if ( !  G4Threading::IsMasterThread() ) {
      +    std::ostringstream os;
      +    os << G4Threading::G4GetThreadId();
      +    name.append("_t");
      +    name.append(os.str());
      +  }
      +
      +  // Add file extension
      +  auto extension = GetExtension(fileName, fileType);
      +  if ( extension.size() ) {
      +    name.append(".");
      +    name.append(extension);
      +  }
      +
      +  return name;
      +}
      +
      +//_____________________________________________________________________________
      +G4String GetPlotFileName(const G4String& fileName)
      +{
      +// Generate plot file name for an output file name
      +
      +  auto name = GetBaseName(fileName);
      +
      +  // Add .ps extension
      +  name.append(".ps");
      +
      +  return name;
      +}
      +
       }
      diff --git a/source/analysis/management/src/G4AnalysisVerbose.cc b/source/analysis/management/src/G4AnalysisVerbose.cc
      index c303cf918f..be534332e6 100644
      --- a/source/analysis/management/src/G4AnalysisVerbose.cc
      +++ b/source/analysis/management/src/G4AnalysisVerbose.cc
      @@ -32,9 +32,8 @@
       #include 
       
       //_____________________________________________________________________________
      -G4AnalysisVerbose::G4AnalysisVerbose(const G4String& type, G4int verboseLevel)
      - : fType(type),
      -   fToBeDoneText(),
      +G4AnalysisVerbose::G4AnalysisVerbose(G4int verboseLevel)
      + : fToBeDoneText(),
          fDoneText(),
          fFailureText()
       {
      @@ -64,17 +63,17 @@ void G4AnalysisVerbose::Message(const G4String& action,
                << fToBeDoneText
                << action
                << " "
      -         << fType
      -         << " "
      -         << object 
      +         << object;
      +  if ( objectName.size() ) {
      +    G4cout
                << " : "
      -         << objectName 
      -         << " ";
      +         << objectName;
      +  }
       
         if ( success )
      -     G4cout << fDoneText;
      +     G4cout << " " << fDoneText;
         else   
      -     G4cout << fFailureText;
      +     G4cout << " " << fFailureText;
               
         G4cout << G4endl;
       }  
      @@ -89,9 +88,7 @@ void G4AnalysisVerbose::Message(const G4String& action,
                << fToBeDoneText
                << action
                << " "
      -         << fType
      -         << " "
      -         << object 
      +         << object
                << " : "
                << description.str() 
                << " ";
      @@ -103,4 +100,3 @@ void G4AnalysisVerbose::Message(const G4String& action,
               
         G4cout << G4endl;
       }  
      -  
      diff --git a/source/analysis/management/src/G4BaseFileManager.cc b/source/analysis/management/src/G4BaseFileManager.cc
      index 22b551d16c..7380b1636d 100644
      --- a/source/analysis/management/src/G4BaseFileManager.cc
      +++ b/source/analysis/management/src/G4BaseFileManager.cc
      @@ -27,13 +27,15 @@
       // Author: Ivana Hrivnacova, 10/09/2014  (ivana@ipno.in2p3.fr)
       
       #include "G4BaseFileManager.hh"
      +#include "G4AnalysisUtilities.hh"
       
       #include "G4Threading.hh"
       
       //_____________________________________________________________________________
       G4BaseFileManager::G4BaseFileManager(const G4AnalysisManagerState& state)
         : fState(state),
      -    fFileName("")
      +    fFileName(""),
      +    fFileNames()
       {
       }
       
      @@ -42,132 +44,21 @@ G4BaseFileManager::~G4BaseFileManager()
       {
       }
       
      -// 
      -// private methods
      -//
      -
      -//_____________________________________________________________________________
      -G4String G4BaseFileManager::TakeOffExtension(G4String& name) const
      -{
      -  G4String extension;
      -  if ( name.rfind(".") != std::string::npos ) { 
      -    extension = name.substr(name.rfind("."));
      -    name = name.substr(0, name.rfind("."));
      -  }
      -  else {
      -    extension = ".";
      -    extension.append(GetFileType());
      -  }
      -  return extension;
      -}    
      -
       // 
       // public methods
       //
       
       //_____________________________________________________________________________
      -G4String G4BaseFileManager::GetFullFileName(const G4String& baseFileName,
      -                                            G4bool isPerThread) const 
      -{  
      -  G4String name(baseFileName);
      -  if ( name == "" ) name = fFileName;
      -
      -  // Take out file extension
      -  G4String extension = TakeOffExtension(name);
      -    
      -  // Add thread Id to a file name if MT processing
      -  if ( isPerThread && ! fState.GetIsMaster() ) {
      -    std::ostringstream os;
      -    os << G4Threading::G4GetThreadId();
      -    name.append("_t");
      -    name.append(os.str());
      -  }  
      -
      -  // Add (back if it was present) file extension
      -  name.append(extension);
      -
      -  return name;
      -}  
      -
      -//_____________________________________________________________________________
      -G4String G4BaseFileManager::GetNtupleFileName(const G4String& ntupleName) const 
      -{  
      -  G4String name(fFileName);
      -
      -  // Take out file extension
      -  auto extension = TakeOffExtension(name);
      -    
      -  // Add ntupleName
      -  name.append("_nt_");
      -  name.append(ntupleName);
      -
      -  // Add thread Id to a file name if MT processing
      -  if ( ! fState.GetIsMaster() ) {
      -    std::ostringstream os;
      -    os << G4Threading::G4GetThreadId();
      -    name.append("_t");
      -    name.append(os.str());
      -  }  
      -
      -  // Add (back if it was present) file extension
      -  name.append(extension);
      -  
      -  return name;
      -}  
      -
      -//_____________________________________________________________________________
      -G4String G4BaseFileManager::GetNtupleFileName(G4int ntupleFileNumber) const 
      -{  
      -  G4String name(fFileName);
      -
      -  // Take out file extension
      -  auto extension = TakeOffExtension(name);
      -    
      -  // Add _M followed by ntupleFileNumber
      -  std::ostringstream os;
      -  os << ntupleFileNumber;
      -  name.append("_m");
      -  name.append(os.str());
      -
      -  // Add (back if it was present) file extension
      -  name.append(extension);
      -  
      -  return name;
      -}  
      -
      -//_____________________________________________________________________________
      -G4String G4BaseFileManager::GetHnFileName(const G4String& hnType,
      -                                          const G4String& hnName) const
      +void G4BaseFileManager::AddFileName(const G4String& fileName)
       {
      -  G4String name(fFileName);
      +  // G4cout << "registering " << fileName << " in manager of " << GetFileType() << G4endl;
       
      -  // Take out file extension
      -  auto extension = TakeOffExtension(name);
      - 
      -  // Add _hnType_hnName
      -  name.append("_");
      -  name.append(hnType);
      -  name.append("_");
      -  name.append(hnName);
      +  // Do nothing in file name is already present
      +  for ( auto name : fFileNames ) {
      +    if ( name == fileName ) return;
      +  }
       
      -  // Add (back if it was present) file extension
      -  name.append(extension);
      -
      -  return name;
      -}
      -
      -//_____________________________________________________________________________
      -G4String G4BaseFileManager::GetPlotFileName() const
      -{
      -  G4String name(fFileName);
      -
      -  // Take out file extension
      -  auto extension = TakeOffExtension(name);
      -
      -  // Add .ps extension
      -  name.append(".ps");
      -
      -  return name;
      +  fFileNames.push_back(fileName);
       }
       
       //_____________________________________________________________________________
      @@ -176,6 +67,59 @@ G4String G4BaseFileManager::GetFileType() const
         G4String fileType = fState.GetType();
         fileType.toLower();
         return fileType;
      -}                 
      +}
      +
      +//_____________________________________________________________________________
      +G4String G4BaseFileManager::GetFullFileName(const G4String& baseFileName,
      +                                            G4bool isPerThread) const
      +{
      +  G4String fileName(baseFileName);
      +  if ( fileName == "" ) fileName = fFileName;
      +
      +  // Take out file extension
      +  auto name = G4Analysis::GetBaseName(fileName);
      +
      +  // Add thread Id to a file name if MT processing
      +  if ( isPerThread && ! fState.GetIsMaster() ) {
      +    std::ostringstream os;
      +    os << G4Threading::G4GetThreadId();
      +    name.append("_t");
      +    name.append(os.str());
      +  }
      +
      +  // Add (back if it was present or is defined) file extension
      +  auto extension = G4Analysis::GetExtension(fileName, GetFileType());
      +  if ( extension.size() ) {
      +    name.append(".");
      +    name.append(extension);
      +  }
      +
      +  return name;
      +}
      +
      +//_____________________________________________________________________________
      +G4String G4BaseFileManager::GetHnFileName(const G4String& hnType,
      +                                          const G4String& hnName) const
      +{
      +  return G4Analysis::GetHnFileName(fFileName, GetFileType(), hnType, hnName);
      +}
      +
      +//_____________________________________________________________________________
      +G4String G4BaseFileManager::GetNtupleFileName(const G4String& ntupleName) const 
      +{  
      +  return G4Analysis::GetNtupleFileName(fFileName, GetFileType(), ntupleName);
      +}  
      +
      +//_____________________________________________________________________________
      +G4String G4BaseFileManager::GetNtupleFileName(G4int ntupleFileNumber) const 
      +{  
      +  return G4Analysis::GetNtupleFileName(fFileName, GetFileType(), ntupleFileNumber);
      +}  
      +
      +//_____________________________________________________________________________
      +G4String G4BaseFileManager::GetPlotFileName() const
      +{
      +  return G4Analysis::GetPlotFileName(fFileName);
      +}
       
       
      diff --git a/source/analysis/management/src/G4BaseNtupleManager.cc b/source/analysis/management/src/G4BaseNtupleManager.cc
      index 27feabdb20..dca3ab3373 100644
      --- a/source/analysis/management/src/G4BaseNtupleManager.cc
      +++ b/source/analysis/management/src/G4BaseNtupleManager.cc
      @@ -31,8 +31,8 @@
       //_____________________________________________________________________________
       G4BaseNtupleManager::G4BaseNtupleManager(const G4AnalysisManagerState& state)
         : G4VNtupleManager(state),
      -    fFirstNtupleColumnId(0),
      -    fLockFirstNtupleColumnId(false)
      +    fFirstNtupleColumnId(0)
      +    // fLockFirstNtupleColumnId(false)
       {}
       
       //_____________________________________________________________________________
      @@ -40,53 +40,6 @@ G4BaseNtupleManager::~G4BaseNtupleManager()
       {
       }
       
      -//
      -// private methods
      -//
      -
      -//_____________________________________________________________________________
      -G4int  G4BaseNtupleManager::GetCurrentNtupleId() const
      -{
      -  return  GetNofNtupleBookings() + fFirstId - 1;
      -}
      -
      -//
      -// protected methods
      -//
      -
      -//_____________________________________________________________________________
      -G4int G4BaseNtupleManager::CreateNtupleIColumn(const G4String& name, 
      -                                               std::vector* vector)
      -{
      -  return CreateNtupleIColumn(GetCurrentNtupleId(), name, vector);
      -}
      -
      -//_____________________________________________________________________________
      -G4int G4BaseNtupleManager::CreateNtupleFColumn(const G4String& name,
      -                                               std::vector* vector)
      -{
      -  return CreateNtupleFColumn(GetCurrentNtupleId(), name, vector);
      -}
      -
      -//_____________________________________________________________________________
      -G4int G4BaseNtupleManager::CreateNtupleDColumn(const G4String& name,
      -                                               std::vector* vector)
      -{
      -  return CreateNtupleDColumn(GetCurrentNtupleId(), name, vector);
      -}
      -
      -//_____________________________________________________________________________
      -G4int G4BaseNtupleManager::CreateNtupleSColumn(const G4String& name)
      -{
      -  return CreateNtupleSColumn(GetCurrentNtupleId(), name);
      -}
      -
      -//_____________________________________________________________________________
      -void  G4BaseNtupleManager::FinishNtuple()
      -{
      -  return FinishNtuple(GetCurrentNtupleId());
      -}
      -
       //_____________________________________________________________________________
       G4bool G4BaseNtupleManager::FillNtupleIColumn(G4int id, G4int value)
       {
      @@ -118,18 +71,8 @@ G4bool G4BaseNtupleManager::AddNtupleRow()
       }
       
       //_____________________________________________________________________________
      -G4bool G4BaseNtupleManager::SetFirstNtupleColumnId(G4int firstId) 
      -{ 
      -  if ( fLockFirstNtupleColumnId ) {
      -    G4ExceptionDescription description;
      -    description 
      -      << "Cannot set FirstNtupleColumnId as its value was already used.";
      -    G4Exception("G4BaseNtupleManager::SetFirstNtupleColumnId()",
      -                "Analysis_W013", JustWarning, description);
      -    return false;
      -  }              
      -
      -  fFirstNtupleColumnId = firstId; 
      +G4bool G4BaseNtupleManager::SetFirstNtupleColumnId(G4int firstId)
      +{
      +  fFirstNtupleColumnId = firstId;
         return true;
       }
      -
      diff --git a/source/analysis/management/src/G4HnManager.cc b/source/analysis/management/src/G4HnManager.cc
      index ff5118fac5..775c25f4a3 100644
      --- a/source/analysis/management/src/G4HnManager.cc
      +++ b/source/analysis/management/src/G4HnManager.cc
      @@ -27,6 +27,7 @@
       // Author: Ivana Hrivnacova, 18/06/2013  (ivana@ipno.in2p3.fr)
       
       #include "G4HnManager.hh"
      +#include "G4VFileManager.hh"
       #include "G4AnalysisUtilities.hh"
       
       using namespace G4Analysis;
      @@ -39,15 +40,78 @@ G4HnManager::G4HnManager(const G4String& hnType,
           fNofActiveObjects(0),
           fNofAsciiObjects(0),
           fNofPlottingObjects(0),
      -    fHnVector()
      +    fNofFileNameObjects(0),
      +    fHnVector(),
      +    fFileManager(nullptr)
       {
       }
       
       //_____________________________________________________________________________
       G4HnManager::~G4HnManager()
       {
      -  for ( auto hnInformation : fHnVector ) {
      -    delete hnInformation;
      +  for ( auto info : fHnVector ) {
      +    delete info;
      +  }
      +}
      +
      +//
      +// private methods
      +//
      +
      +//_____________________________________________________________________________
      +void  G4HnManager::SetActivation(G4HnInformation* info, G4bool activation)
      +{
      +// Set activation to a given object
      +
      +  // Do nothing if activation does not change
      +  if ( info->GetActivation() == activation ) return;
      +
      +  // Change activation and account it in fNofActiveObjects
      +  info->SetActivation(activation);
      +  if ( activation )
      +    fNofActiveObjects++;
      +  else
      +    fNofActiveObjects--;
      +}
      +
      +//_____________________________________________________________________________
      +void  G4HnManager::SetPlotting(G4HnInformation* info, G4bool plotting)
      +{
      +  // Do nothing if ascii does not change
      +  if ( info->GetPlotting() == plotting ) return;
      +
      +  // Change Plotting and account it in fNofPlottingObjects
      +  info->SetPlotting(plotting);
      +  if ( plotting )
      +    fNofPlottingObjects++;
      +  else
      +    fNofPlottingObjects--;
      +}
      +
      +//_____________________________________________________________________________
      +void  G4HnManager::SetFileName(G4HnInformation* info, const G4String& fileName)
      +{
      +  // Do nothing if file name does not change
      +  if ( info->GetFileName() == fileName ) return;
      +
      +  // Save the info and account a new file name if file manager
      +  info->SetFileName(fileName);
      +  if (fFileManager) {
      +    fFileManager->AddFileName(fileName);
      +  } else {
      +    G4ExceptionDescription description;
      +    description
      +      << "Failed to set fileName " << fileName << " for object " << info->GetName() << G4endl
      +      << "File manager is not set.";
      +    G4Exception("G4HnManager::SetFileName",
      +                "Analysis_W012", JustWarning, description);
      +    return;
      +  }
      +
      +  if ( fileName != "" ) {
      +    fNofFileNameObjects++;
      +  } else {
      +    fNofFileNameObjects--;
         }
       }
       
      @@ -58,11 +122,11 @@ G4HnManager::~G4HnManager()
       //_____________________________________________________________________________
       G4HnInformation*  G4HnManager::AddHnInformation(const G4String& name, G4int nofDimensions)
       {
      -  auto hnInformation = new G4HnInformation(name, nofDimensions);
      -  fHnVector.push_back(hnInformation);
      +  auto info = new G4HnInformation(name, nofDimensions);
      +  fHnVector.push_back(info);
         ++fNofActiveObjects;
       
      -  return hnInformation;
      +  return info;
       }  
       
       //_____________________________________________________________________________
      @@ -92,11 +156,11 @@ G4HnDimensionInformation* G4HnManager::GetHnDimensionInformation(G4int id,
                                       G4int dimension,
                                       G4String functionName, G4bool warn) const
       {
      -  auto hnInformation = GetHnInformation(id, functionName, warn);
      -  if ( ! hnInformation ) return nullptr; 
      +  auto info = GetHnInformation(id, functionName, warn);
      +  if ( ! info ) return nullptr;
       
      -  return hnInformation->GetHnDimensionInformation(dimension);
      -}    
      +  return info->GetHnDimensionInformation(dimension);
      +}
       
       //_____________________________________________________________________________
       G4bool G4HnManager::IsActive() const
      @@ -116,6 +180,12 @@ G4bool G4HnManager::IsPlotting() const
         return ( fNofPlottingObjects > 0 );
       }  
       
      +//_____________________________________________________________________________
      +G4bool G4HnManager::IsFileName() const
      +{
      +  return ( fNofFileNameObjects > 0 );
      +}
      +
       //_____________________________________________________________________________
       void  G4HnManager::SetActivation(G4int id, G4bool activation)
       {
      @@ -125,15 +195,7 @@ void  G4HnManager::SetActivation(G4int id, G4bool activation)
       
         if ( ! info ) return;
       
      -  // Do nothing if activation does not change
      -  if ( info->GetActivation() == activation ) return;
      -  
      -  // Change activation and account it in fNofActiveObjects
      -  info->SetActivation(activation);
      -  if ( activation ) 
      -    fNofActiveObjects++;
      -  else
      -    fNofActiveObjects--;   
      +  SetActivation(info, activation);
       }    
       
       //_____________________________________________________________________________
      @@ -146,18 +208,9 @@ void  G4HnManager::SetActivation(G4bool activation)
         //   G4HnInformation* info = *it;
       
         for ( auto info : fHnVector )  {
      -
      -    // Do nothing if activation does not change
      -    if ( info->GetActivation() == activation ) continue;
      -  
      -    // Change activation and account it in fNofActiveObjects
      -    info->SetActivation(activation);
      -    if ( activation ) 
      -      fNofActiveObjects++;
      -    else
      -      fNofActiveObjects--; 
      -  }     
      -}    
      +    SetActivation(info, activation);
      +  }
      +}
       
       //_____________________________________________________________________________
       void  G4HnManager::SetAscii(G4int id, G4bool ascii)
      @@ -184,16 +237,8 @@ void  G4HnManager::SetPlotting(G4int id, G4bool plotting)
       
         if ( ! info ) return;
       
      -  // Do nothing if ascii does not change
      -  if ( info->GetPlotting() == plotting ) return;
      -  
      -  // Change Plotting and account it in fNofPlottingObjects
      -  info->SetPlotting(plotting);
      -  if ( plotting ) 
      -    fNofPlottingObjects++;
      -  else
      -    fNofPlottingObjects--;   
      -}    
      +  SetPlotting(info, plotting);
      +}
       
       //_____________________________________________________________________________
       void  G4HnManager::SetPlotting(G4bool plotting)
      @@ -201,17 +246,28 @@ void  G4HnManager::SetPlotting(G4bool plotting)
       // Set plotting to all objects of the given type
       
         for ( auto info : fHnVector )  {
      +    SetPlotting(info, plotting);
      +  }
      +}
       
      -    // Do nothing if plotting does not change
      -    if ( info->GetPlotting() == plotting ) continue;
      -  
      -    // Change plotting and account it in fNofActiveObjects
      -    info->SetPlotting(plotting);
      -    if ( plotting ) 
      -      fNofPlottingObjects++;
      -    else
      -      fNofPlottingObjects--; 
      -  }     
      +//_____________________________________________________________________________
      +void  G4HnManager::SetFileName(G4int id, const G4String& fileName)
      +{
      +  auto info = GetHnInformation(id, "SetFileName");
      +
      +  if ( ! info ) return;
      +
      +  SetFileName(info, fileName);
      +}    
      +
      +//_____________________________________________________________________________
      +void  G4HnManager::SetFileName(const G4String& fileName)
      +{
      +// Set plotting to all objects of the given type
      +
      +  for ( auto info : fHnVector )  {
      +    SetFileName(info, fileName);
      +  }
       }    
       
       //_____________________________________________________________________________
      @@ -345,4 +401,14 @@ G4bool G4HnManager::GetPlotting(G4int id) const
         if ( ! info ) return false;
         
         return info->GetPlotting();
      -}    
      +}
      +
      +//_____________________________________________________________________________
      +G4String G4HnManager::GetFileName(G4int id) const
      +{
      +  auto info = GetHnInformation(id, "GetFileName");
      +
      +  if ( ! info ) return "";
      +    
      +  return info->GetFileName();
      +}
      diff --git a/source/analysis/management/src/G4HnMessenger.cc b/source/analysis/management/src/G4HnMessenger.cc
      index 531ddd73f9..d89f18bb57 100644
      --- a/source/analysis/management/src/G4HnMessenger.cc
      +++ b/source/analysis/management/src/G4HnMessenger.cc
      @@ -35,6 +35,7 @@
       #include "G4UIparameter.hh"
       #include "G4UIcmdWithAnInteger.hh"
       #include "G4UIcmdWithABool.hh"
      +#include "G4UIcmdWithAString.hh"
       
       using namespace G4Analysis;
       
      @@ -48,7 +49,9 @@ G4HnMessenger::G4HnMessenger(G4HnManager& manager)
           fSetHnActivationCmd(nullptr),
           fSetHnActivationAllCmd(nullptr),
           fSetHnPlottingCmd(nullptr),
      -    fSetHnPlottingAllCmd(nullptr)
      +    fSetHnPlottingAllCmd(nullptr),
      +    fSetHnFileNameCmd(nullptr),
      +    fSetHnFileNameAllCmd(nullptr)
       { 
         G4String hnType = fManager.GetHnType();
         hnType.toLower();
      @@ -59,6 +62,8 @@ G4HnMessenger::G4HnMessenger(G4HnManager& manager)
         SetHnActivationToAllCmd();
         SetHnPlottingCmd();
         SetHnPlottingToAllCmd();
      +  SetHnFileNameCmd();
      +  SetHnFileNameToAllCmd();
       }
       
       //_____________________________________________________________________________
      @@ -142,6 +147,36 @@ void G4HnMessenger::SetHnPlottingToAllCmd()
         fSetHnPlottingAllCmd->SetParameterName("Plotting",false);
       }  
       
      +//_____________________________________________________________________________
      +void G4HnMessenger::SetHnFileNameCmd()
      +{
      +  auto hnId = new G4UIparameter("id", 'i', false);
      +  hnId->SetGuidance(fHelper->Update("OBJECT id"));
      +  hnId->SetParameterRange("id>=0");
      +
      +  auto hnFileName = new G4UIparameter("hnFileName", 's', true);
      +  hnFileName->SetGuidance(fHelper->Update("OBJECT output file name"));
      +  hnFileName->SetDefaultValue("none");
      +
      +  fSetHnFileNameCmd
      +    = G4Analysis::make_unique(fHelper->Update("/analysis/HNTYPE_/setFileName"), this);
      +  fSetHnFileNameCmd->SetGuidance(
      +      fHelper->Update("Set the NDIM_D LOBJECT of given id output file name"));
      +  fSetHnFileNameCmd->SetParameter(hnId);
      +  fSetHnFileNameCmd->SetParameter(hnFileName);
      +  fSetHnFileNameCmd->AvailableForStates(G4State_PreInit, G4State_Idle);
      +}
      +
      +//_____________________________________________________________________________
      +void G4HnMessenger::SetHnFileNameToAllCmd()
      +{
      +  fSetHnFileNameAllCmd
      +    = G4Analysis::make_unique(fHelper->Update("/analysis/HNTYPE_/setFileNameToAll"), this);
      +  fSetHnFileNameAllCmd->SetGuidance(
      +    fHelper->Update("Set output file name for all NDIM_D LOBJECTs"));
      +  fSetHnFileNameAllCmd->SetParameterName("FileName",false);
      +}
      +
       //
       // public methods
       //
      @@ -149,11 +184,11 @@ void G4HnMessenger::SetHnPlottingToAllCmd()
       //_____________________________________________________________________________
       void G4HnMessenger::SetNewValue(G4UIcommand* command, G4String newValues)
       {
      -  if ( command == fSetHnAsciiCmd.get() ) { 
      +  if ( command == fSetHnAsciiCmd.get() ) {
           auto id = fSetHnAsciiCmd->GetNewIntValue(newValues);
      -    fManager.SetAscii(id, true); 
      -  }      
      -  else if ( command == fSetHnActivationCmd.get() ) { 
      +    fManager.SetAscii(id, true);
      +  }
      +  else if ( command == fSetHnActivationCmd.get() ) {
           // tokenize parameters in a vector
           std::vector parameters;
           G4Analysis::Tokenize(newValues, parameters);
      @@ -162,18 +197,18 @@ void G4HnMessenger::SetNewValue(G4UIcommand* command, G4String newValues)
             auto counter = 0;
             auto id = G4UIcommand::ConvertToInt(parameters[counter++]);
             auto activation = G4UIcommand::ConvertToBool(parameters[counter++]);
      -      fManager.SetActivation(id, activation);     
      +      fManager.SetActivation(id, activation);
           }
           else {
             // Should never happen but let's check anyway for consistency
             fHelper->WarnAboutParameters(command, parameters.size());
      -    }  
      +    }
         }
      -  else if ( command == fSetHnActivationAllCmd.get() ) { 
      +  else if ( command == fSetHnActivationAllCmd.get() ) {
           auto activation = fSetHnActivationAllCmd->GetNewBoolValue(newValues);
           fManager.SetActivation(activation);
      -  }  
      -  else if ( command == fSetHnPlottingCmd.get() ) { 
      +  }
      +  else if ( command == fSetHnPlottingCmd.get() ) {
           // tokenize parameters in a vector
           std::vector parameters;
           G4Analysis::Tokenize(newValues, parameters);
      @@ -182,15 +217,35 @@ void G4HnMessenger::SetNewValue(G4UIcommand* command, G4String newValues)
             auto counter = 0;
             auto id = G4UIcommand::ConvertToInt(parameters[counter++]);
             auto activation = G4UIcommand::ConvertToBool(parameters[counter++]);
      -      fManager.SetPlotting(id, activation);     
      +      fManager.SetPlotting(id, activation);
           }
           else {
             // Should never happen but let's check anyway for consistency
             fHelper->WarnAboutParameters(command, parameters.size());
      -    }  
      +    }
         }
         else if ( command == fSetHnPlottingAllCmd.get() ) { 
           auto activation = fSetHnPlottingAllCmd->GetNewBoolValue(newValues);
           fManager.SetPlotting(activation);
      -  }  
      -}  
      +  }
      +  else if ( command == fSetHnFileNameCmd.get() ) {
      +    // tokenize parameters in a vector
      +    std::vector parameters;
      +    G4Analysis::Tokenize(newValues, parameters);
      +    // check consistency
      +    if ( parameters.size() == command->GetParameterEntries() ) {
      +      auto counter = 0;
      +      auto id = G4UIcommand::ConvertToInt(parameters[counter++]);
      +      auto fileName = parameters[counter++];
      +      fManager.SetFileName(id, fileName);
      +    }
      +    else {
      +      // Should never happen but let's check anyway for consistency
      +      fHelper->WarnAboutParameters(command, parameters.size());
      +    }
      +  }
      +  else if ( command == fSetHnFileNameAllCmd.get() ) {
      +    auto fileName = newValues;
      +    fManager.SetFileName(fileName);
      +  }
      +}
      diff --git a/source/analysis/management/src/G4NtupleBookingManager.cc b/source/analysis/management/src/G4NtupleBookingManager.cc
      new file mode 100644
      index 0000000000..03681595cf
      --- /dev/null
      +++ b/source/analysis/management/src/G4NtupleBookingManager.cc
      @@ -0,0 +1,332 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Author: Ivana Hrivnacova, 01/09/2020  (ivana@ipno.in2p3.fr)
      +
      +#include "G4NtupleBookingManager.hh"
      +#include "G4AnalysisManagerState.hh"
      +#include "G4AnalysisUtilities.hh"
      +
      +using namespace G4Analysis;
      +
      +//
      +// private template functions
      +//
      +
      +//_____________________________________________________________________________
      +G4NtupleBookingManager::G4NtupleBookingManager(
      +  const G4AnalysisManagerState& state)
      +  : G4BaseAnalysisManager(state),
      +    fNtupleBookingVector(),
      +    fFileType(),
      +    fFirstNtupleColumnId(0),
      +    fLockFirstNtupleColumnId(false)    
      +{}
      +
      +//_____________________________________________________________________________
      +G4NtupleBookingManager::~G4NtupleBookingManager()
      +{  
      +  for ( auto ntupleBooking : fNtupleBookingVector ) {
      +    delete ntupleBooking;
      +  }   
      +}
      +
      +//_____________________________________________________________________________
      +G4NtupleBooking*
      +G4NtupleBookingManager::GetNtupleBookingInFunction(
      +  G4int id, G4String functionName, G4bool warn) const
      +{                                      
      +  auto index = id - fFirstId;
      +  if ( index < 0 || index >= G4int(fNtupleBookingVector.size()) ) {
      +    if ( warn) {
      +      G4String inFunction = "G4NtupleBookingManager::";
      +      inFunction += functionName;
      +      G4ExceptionDescription description;
      +      description << "      " << "ntuple booking " << id << " does not exist.";
      +      G4Exception(inFunction, "Analysis_W011", JustWarning, description);
      +    }
      +    return nullptr;         
      +  }
      +  
      +  return fNtupleBookingVector[index];
      +}
      +
      +//
      +// protected functions
      +//
      +
      +//_____________________________________________________________________________
      +G4bool G4NtupleBookingManager::IsEmpty() const
      +{
      +  return ! fNtupleBookingVector.size();
      +}  
      + 
      +//_____________________________________________________________________________
      +G4int G4NtupleBookingManager::CreateNtuple(
      +  const G4String& name, const G4String& title)
      +{
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL4() ) 
      +    fState.GetVerboseL4()->Message("create", "ntuple booking", name);
      +#endif
      +
      +  // Create ntuple description
      +  auto index = fNtupleBookingVector.size();
      +  auto ntupleBooking = new G4NtupleBooking();
      +  fNtupleBookingVector.push_back(ntupleBooking);
      +
      +  // Save name & title in ntuple booking
      +  ntupleBooking->fNtupleBooking.set_name(name);
      +  ntupleBooking->fNtupleBooking.set_title(title);
      +
      +  // Create ntuple
      +  fLockFirstId = true;
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL2() ) {
      +    G4ExceptionDescription description;
      +    description << name << " ntupleId " << index + fFirstId;
      +    fState.GetVerboseL2()->Message("create", "ntuple booking", description);
      +  } 
      +#endif
      +
      +  return G4int(index + fFirstId);
      +}                                         
      +
      +//_____________________________________________________________________________
      +G4int G4NtupleBookingManager::CreateNtupleIColumn(const G4String& name, 
      +                                               std::vector* vector)
      +{
      +  return CreateNtupleIColumn(GetCurrentNtupleId(), name, vector);
      +}
      +
      +//_____________________________________________________________________________
      +G4int G4NtupleBookingManager::CreateNtupleFColumn(const G4String& name,
      +                                               std::vector* vector)
      +{
      +  return CreateNtupleFColumn(GetCurrentNtupleId(), name, vector);
      +}
      +
      +//_____________________________________________________________________________
      +G4int G4NtupleBookingManager::CreateNtupleDColumn(const G4String& name,
      +                                               std::vector* vector)
      +{
      +  return CreateNtupleDColumn(GetCurrentNtupleId(), name, vector);
      +}
      +
      +//_____________________________________________________________________________
      +G4int G4NtupleBookingManager::CreateNtupleSColumn(const G4String& name)
      +{
      +  return CreateNtupleSColumn(GetCurrentNtupleId(), name);
      +}
      +
      +//_____________________________________________________________________________
      +G4NtupleBooking*  G4NtupleBookingManager::FinishNtuple()
      +{
      +  return FinishNtuple(GetCurrentNtupleId());
      +}
      +
      +//_____________________________________________________________________________
      +G4int G4NtupleBookingManager::CreateNtupleIColumn(
      +  G4int ntupleId, const G4String& name, std::vector* vector)
      +{
      +  return CreateNtupleTColumn(ntupleId, name, vector);
      +}                                         
      +
      +//_____________________________________________________________________________
      +G4int G4NtupleBookingManager::CreateNtupleFColumn(
      +  G4int ntupleId, const G4String& name, std::vector* vector)
      +{
      +  return CreateNtupleTColumn(ntupleId, name, vector);
      +}                                         
      +
      +//_____________________________________________________________________________
      +G4int G4NtupleBookingManager::CreateNtupleDColumn(
      +  G4int ntupleId, const G4String& name, std::vector* vector)
      +{
      +  return CreateNtupleTColumn(ntupleId, name, vector);
      +}                                         
      +
      +//_____________________________________________________________________________
      +G4int G4NtupleBookingManager::CreateNtupleSColumn(
      +  G4int ntupleId, const G4String& name)
      +{
      +  return CreateNtupleTColumn(ntupleId, name, nullptr);
      +}  
      +
      +//_____________________________________________________________________________
      +G4NtupleBooking*  G4NtupleBookingManager::FinishNtuple(
      +  G4int ntupleId)
      +{ 
      +  // Nothing to be done for booking,
      +  return GetNtupleBookingInFunction(ntupleId, "FinishNtuple");
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4NtupleBookingManager::SetFirstNtupleColumnId(G4int firstId) 
      +{ 
      +  if ( fLockFirstNtupleColumnId ) {
      +    G4ExceptionDescription description;
      +    description 
      +      << "Cannot set FirstNtupleColumnId as its value was already used.";
      +    G4Exception("G4BaseNtupleManager::SetFirstNtupleColumnId()",
      +                "Analysis_W013", JustWarning, description);
      +    return false;
      +  }              
      +
      +  fFirstNtupleColumnId = firstId; 
      +  return true;
      +}
      +
      +//_____________________________________________________________________________
      +void  G4NtupleBookingManager::SetActivation(
      +  G4bool activation)
      +{
      +  for ( auto ntupleBooking : fNtupleBookingVector ) {
      +    ntupleBooking->fActivation = activation;
      +  } 
      +}
      +
      +//_____________________________________________________________________________
      +void  G4NtupleBookingManager::SetActivation(
      +  G4int ntupleId, G4bool activation)
      +{
      +  auto ntupleBooking 
      +    = GetNtupleBookingInFunction(ntupleId, "SetActivation");
      +  if ( ! ntupleBooking ) return;
      +
      +  ntupleBooking->fActivation = activation;
      +}
      +
      +//_____________________________________________________________________________
      +G4bool  G4NtupleBookingManager::GetActivation(
      +  G4int ntupleId) const
      +{
      +  auto ntupleBooking 
      +    = GetNtupleBookingInFunction(ntupleId, "GetActivation");
      +  if ( ! ntupleBooking ) return false;
      +
      +  return ntupleBooking->fActivation;
      +}
      +
      +//_____________________________________________________________________________
      +void  G4NtupleBookingManager::SetFileName(
      +  const G4String& fileName)
      +{
      +  for ( auto ntupleBooking : fNtupleBookingVector ) {
      +    ntupleBooking->fFileName = fileName;
      +  }
      +}
      +
      +//_____________________________________________________________________________
      +void  G4NtupleBookingManager::SetFileName(
      +  G4int ntupleId, const G4String& fileName)
      +{
      +  auto ntupleBooking
      +    = GetNtupleBookingInFunction(ntupleId, "SetFileName");
      +  if ( ! ntupleBooking ) return;
      +
      +  // Do nothing if file name does not change
      +  if ( ntupleBooking->fFileName == fileName ) return;
      +
      +  auto ntupleFileName = fileName;
      +  auto extension = GetExtension(fileName);
      +  if ( extension.size() ) {
      +    // Check if valid extension (if present)
      +    auto output = G4Analysis::GetOutput(extension);
      +    if ( output == G4AnalysisOutput::kNone ) {
      +      G4ExceptionDescription description;
      +      description
      +        << "The file extension " << extension << "is not supported.";
      +      G4Exception("G4NtupleBookingManager::SetFileName",
      +                  "Analysis_W051", JustWarning, description);
      +      return;
      +    }
      +  }
      +  else {
      +    if ( fFileType.size() ) {
      +      //add extension if missing and file type is defined
      +      ntupleFileName = fileName + "." + fFileType;
      +    }
      +  }
      +
      +  // Save the fileName in booking
      +  // If extension is still missing (possible with generic manager),
      +  // it will be completed with the default one at OpenFile
      +  ntupleBooking->fFileName = ntupleFileName;
      +}
      +
      +//_____________________________________________________________________________
      +G4String  G4NtupleBookingManager::GetFileName(
      +  G4int ntupleId) const
      +{
      +  auto ntupleBooking
      +    = GetNtupleBookingInFunction(ntupleId, "GetFileName");
      +  if ( ! ntupleBooking ) return "";
      +
      +  return ntupleBooking->fFileName;
      +}
      +
      +//
      +// public methods
      +//
      +
      +//_____________________________________________________________________________
      +void G4NtupleBookingManager::SetFileType(const G4String& fileType)
      +{
      +  // do nothing if file type is defined and is same
      +  if ( fFileType == fileType ) return;
      +
      +  // save the type
      +  fFileType = fileType;
      +
      +  // Give warning and redefine file extension in bookings
      +  // with file name of different fileTypes
      +  for ( auto ntupleBooking : fNtupleBookingVector ) {
      +
      +    if ( ! (ntupleBooking->fFileName).size() ) continue;
      +
      +    auto extension = GetExtension(ntupleBooking->fFileName);
      +    if ( fFileType == extension ) continue;
      +
      +    // multiple file types are not suported
      +    auto baseFileName = GetBaseName(ntupleBooking->fFileName);
      +    auto ntupleFileName = baseFileName + "." + fFileType;
      +    if ( extension.size()) {
      +    G4ExceptionDescription description;
      +      description
      +        << "Writing ntuples in files of different output types "
      +        << fFileType << ", " << extension << " is not supported." << G4endl
      +        << "Ntuple " << ntupleBooking->fNtupleBooking.name()
      +        << " will be written in " << ntupleFileName;
      +      G4Exception("G4NtupleBookingManager::SetFileType",
      +                  "Analysis_W051", JustWarning, description);
      +    }
      +
      +    // Save the info in ntuple description
      +    ntupleBooking->fFileName = ntupleFileName;
      +  }
      +}
      diff --git a/source/analysis/management/src/G4NtupleMessenger.cc b/source/analysis/management/src/G4NtupleMessenger.cc
      index 00f60dddac..aeedb8dff8 100644
      --- a/source/analysis/management/src/G4NtupleMessenger.cc
      +++ b/source/analysis/management/src/G4NtupleMessenger.cc
      @@ -33,23 +33,44 @@
       #include "G4UIcommand.hh"
       #include "G4UIparameter.hh"
       #include "G4UIcmdWithABool.hh"
      +#include "G4UIcmdWithAString.hh"
       
       #include 
       
       using namespace G4Analysis;
       
      +namespace {
      +
      +void WrongParametersException(
      +  const G4String& commandName, std::size_t got, std::size_t expected)
      +{
      +  G4ExceptionDescription description;
      +  description
      +    << "Got wrong number of \"" << commandName
      +    << "\" parameters: " << got << " instead of " << expected
      +    << " expected" << G4endl;
      +  G4Exception("G4NtupleMessenger::SetNewValue",
      +              "Analysis_W013", JustWarning, description);
      +}
      +
      +}
      +
       //_____________________________________________________________________________
       G4NtupleMessenger::G4NtupleMessenger(G4VAnalysisManager* manager)
         : G4UImessenger(),
           fManager(manager),
           fSetActivationCmd(nullptr),
      -    fSetActivationAllCmd(nullptr)
      +    fSetActivationAllCmd(nullptr),
      +    fSetFileNameCmd(nullptr),
      +    fSetFileNameAllCmd(nullptr)
       {
         fNtupleDir = G4Analysis::make_unique("/analysis/ntuple/");
         fNtupleDir->SetGuidance("ntuple control");
         
         SetActivationCmd();
         SetActivationToAllCmd();
      +  SetFileNameCmd();
      +  SetFileNameToAllCmd();
       }
       
       //_____________________________________________________________________________
      @@ -91,6 +112,36 @@ void G4NtupleMessenger::SetActivationToAllCmd()
         fSetActivationAllCmd->SetParameterName("AllNtupleActivation",false);
       }  
         
      +//_____________________________________________________________________________
      +void G4NtupleMessenger::SetFileNameCmd()
      +{
      +  auto ntupleId = new G4UIparameter("NtupleId", 'i', false);
      +  ntupleId->SetGuidance("Ntuple id");
      +  ntupleId->SetParameterRange("NtupleId>=0");
      +
      +  auto ntupleFileName = new G4UIparameter("NtupleFileName", 's', true);
      +  ntupleFileName->SetGuidance("Ntuple file name");
      +  ntupleFileName->SetDefaultValue("none");
      +
      +  fSetFileNameCmd = G4Analysis::make_unique("/analysis/ntuple/setFileName", this);
      +  G4String guidance("Set file name for the ntuple of given id");
      +
      +  fSetFileNameCmd->SetGuidance(guidance);
      +  fSetFileNameCmd->SetParameter(ntupleId);
      +  fSetFileNameCmd->SetParameter(ntupleFileName);
      +  fSetFileNameCmd->AvailableForStates(G4State_PreInit, G4State_Idle);
      +}
      +
      +//_____________________________________________________________________________
      +void G4NtupleMessenger::SetFileNameToAllCmd()
      +{
      +  fSetFileNameAllCmd
      +    = G4Analysis::make_unique("/analysis/ntuple/setFileNameToAll", this);
      +  G4String guidance("Set file name to all ntuples");
      +  fSetFileNameAllCmd->SetGuidance(guidance);
      +  fSetFileNameAllCmd->SetParameterName("AllNtupleFileName",false);
      +}
      +
       //
       // public methods
       //
      @@ -111,18 +162,33 @@ void G4NtupleMessenger::SetNewValue(G4UIcommand* command, G4String newValues)
           }
           else {
             // Should never happen but let's check anyway for consistency
      -      G4ExceptionDescription description;
      -      description 
      -        << "Got wrong number of \"" << command->GetCommandName() 
      -        << "\" parameters: " << parameters.size()
      -        << " instead of " << command->GetParameterEntries() 
      -        << " expected" << G4endl;
      -      G4Exception("G4NtupleMessenger::SetNewValue",
      -                  "Analysis_W013", JustWarning, description);
      +      WrongParametersException(command->GetCommandName(),
      +        parameters.size(),command->GetParameterEntries());
           }  
         }
         else if ( command == fSetActivationAllCmd.get() ) {
           auto activation = fSetActivationAllCmd->GetNewBoolValue(newValues);
           fManager->SetNtupleActivation(activation);
         }  
      -}  
      +  else if ( command == fSetFileNameCmd.get() ) {
      +    // tokenize parameters in a vector
      +    std::vector parameters;
      +    G4Analysis::Tokenize(newValues, parameters);
      +    // check consistency
      +    if ( parameters.size() == command->GetParameterEntries() ) {
      +      auto counter = 0;
      +      auto id = G4UIcommand::ConvertToInt(parameters[counter++]);
      +      auto fileName = parameters[counter++];
      +      fManager->SetNtupleFileName(id, fileName);
      +    }
      +    else {
      +      // Should never happen but let's check anyway for consistency
      +      WrongParametersException(command->GetCommandName(),
      +        parameters.size(),command->GetParameterEntries());
      +    }
      +  }
      +  else if ( command == fSetFileNameAllCmd.get() ) {
      +    auto fileName = newValues;
      +    fManager->SetNtupleFileName(fileName);
      +  }
      +}
      diff --git a/source/analysis/management/src/G4P1Messenger.cc b/source/analysis/management/src/G4P1Messenger.cc
      index 3c0d1bc5fb..0bafbab632 100644
      --- a/source/analysis/management/src/G4P1Messenger.cc
      +++ b/source/analysis/management/src/G4P1Messenger.cc
      @@ -49,6 +49,7 @@ G4P1Messenger::G4P1Messenger(G4VAnalysisManager* manager)
           fSetP1TitleCmd(nullptr), 
           fSetP1XAxisCmd(nullptr), 
           fSetP1YAxisCmd(nullptr),
      +    fXId(-1),
           fXData()
       {  
         fHelper = G4Analysis::make_unique("p1");
      diff --git a/source/analysis/management/src/G4P2Messenger.cc b/source/analysis/management/src/G4P2Messenger.cc
      index 9526caca69..9eb06fbead 100644
      --- a/source/analysis/management/src/G4P2Messenger.cc
      +++ b/source/analysis/management/src/G4P2Messenger.cc
      @@ -51,7 +51,11 @@ G4P2Messenger::G4P2Messenger(G4VAnalysisManager* manager)
           fSetP2ZCmd(nullptr),
           fSetP2TitleCmd(nullptr), 
           fSetP2XAxisCmd(nullptr), 
      -    fSetP2YAxisCmd(nullptr)
      +    fSetP2YAxisCmd(nullptr),
      +    fXId(-1),
      +    fYId(-1),
      +    fXData(),
      +    fYData()
       {  
         fHelper = G4Analysis::make_unique("p2");
       
      diff --git a/source/analysis/management/src/G4PlotManager.cc b/source/analysis/management/src/G4PlotManager.cc
      index a2fa619f96..5f99f799f9 100644
      --- a/source/analysis/management/src/G4PlotManager.cc
      +++ b/source/analysis/management/src/G4PlotManager.cc
      @@ -33,7 +33,7 @@
       #if defined(TOOLS_USE_FREETYPE)
       #include 
       #include 
      -#include  
      +#include 
         //inlib/xml/viewplot.style file embeded in an inline function.
       
       namespace {
      @@ -127,7 +127,7 @@ void regions_style(tools::sg::plots& a_plots,float a_plotter_scale = 1) {
       bool load_embeded_styles(tools::xml::styles& a_styles) {
         std::string ss;
         unsigned int linen;
      -  const char** lines = viewplot_style(linen);
      +  const char** lines = viewplot_fonts_google_style(linen);
         for(unsigned int index=0;index
       
      @@ -44,6 +45,7 @@ using namespace G4Analysis;
       
       namespace {
       
      +//_____________________________________________________________________________
       void NtupleMergingWarning(const G4String& functionName, 
                                 const G4String& outputType)
       {
      @@ -62,6 +64,8 @@ G4VAnalysisManager::G4VAnalysisManager(const G4String& type, G4bool isMaster)
        : fState(type, isMaster),
          fVFileManager(nullptr),
          fPlotManager(nullptr),
      +   fNtupleBookingManager(nullptr),
      +   fVNtupleManager(nullptr),
          fMessenger(G4Analysis::make_unique(this)),
          fH1HnManager(nullptr),
          fH2HnManager(nullptr),
      @@ -72,16 +76,15 @@ G4VAnalysisManager::G4VAnalysisManager(const G4String& type, G4bool isMaster)
          fVH2Manager(nullptr),
          fVH3Manager(nullptr),
          fVP1Manager(nullptr),
      -   fVP2Manager(nullptr),
      -   fVNtupleManager(nullptr)
      +   fVP2Manager(nullptr)
       {
      -  //fMessenger = G4Analysis::make_unique(this);
      +   fNtupleBookingManager = std::make_shared(fState);
       }
       
       //_____________________________________________________________________________
       G4VAnalysisManager::~G4VAnalysisManager()
       {
      -  delete fVNtupleManager;
      +  // delete fVNtupleManager;
       }
       
       // 
      @@ -94,7 +97,8 @@ void G4VAnalysisManager::SetH1Manager(G4VH1Manager* h1Manager)
         fVH1Manager.reset(h1Manager);
         fH1HnManager = h1Manager->GetHnManager();
         fMessenger->SetH1HnManager(*fH1HnManager);
      -} 
      +  if (fVFileManager != nullptr ) fH1HnManager->SetFileManager(fVFileManager);
      +}
       
       //_____________________________________________________________________________
       void G4VAnalysisManager::SetH2Manager(G4VH2Manager* h2Manager)
      @@ -102,7 +106,8 @@ void G4VAnalysisManager::SetH2Manager(G4VH2Manager* h2Manager)
         fVH2Manager.reset(h2Manager);
         fH2HnManager = h2Manager->GetHnManager();
         fMessenger->SetH2HnManager(*fH2HnManager);
      -}  
      +  if (fVFileManager != nullptr ) fH2HnManager->SetFileManager(fVFileManager);
      +}
       
       //_____________________________________________________________________________
       void G4VAnalysisManager::SetH3Manager(G4VH3Manager* h3Manager)
      @@ -110,7 +115,8 @@ void G4VAnalysisManager::SetH3Manager(G4VH3Manager* h3Manager)
         fVH3Manager.reset(h3Manager);
         fH3HnManager = h3Manager->GetHnManager();
         fMessenger->SetH3HnManager(*fH3HnManager);
      -}  
      +  if (fVFileManager != nullptr ) fH3HnManager->SetFileManager(fVFileManager);
      +}
       
       //_____________________________________________________________________________
       void G4VAnalysisManager::SetP1Manager(G4VP1Manager* p1Manager)
      @@ -118,7 +124,8 @@ void G4VAnalysisManager::SetP1Manager(G4VP1Manager* p1Manager)
         fVP1Manager.reset(p1Manager);
         fP1HnManager = p1Manager->GetHnManager();
         fMessenger->SetP1HnManager(*fP1HnManager);
      -} 
      +  if (fVFileManager != nullptr ) fP1HnManager->SetFileManager(fVFileManager);
      +}
       
       //_____________________________________________________________________________
       void G4VAnalysisManager::SetP2Manager(G4VP2Manager* p2Manager)
      @@ -126,19 +133,27 @@ void G4VAnalysisManager::SetP2Manager(G4VP2Manager* p2Manager)
         fVP2Manager.reset(p2Manager);
         fP2HnManager = p2Manager->GetHnManager();
         fMessenger->SetP2HnManager(*fP2HnManager);
      -} 
      +  if (fVFileManager != nullptr ) fP2HnManager->SetFileManager(fVFileManager);
      +}
       
       //_____________________________________________________________________________
      -void G4VAnalysisManager::SetNtupleManager(G4VNtupleManager* ntupleManager)
      +void G4VAnalysisManager::SetNtupleManager(std::shared_ptr ntupleManager)
       {
      -  // fVNtupleManager.reset(ntupleManager);
         fVNtupleManager = ntupleManager;
      -}  
      +  fVNtupleManager->SetFirstId(fNtupleBookingManager->GetFirstId());
      +  fVNtupleManager->SetFirstNtupleColumnId(fNtupleBookingManager->GetFirstNtupleColumnId());
      +}
       
       //_____________________________________________________________________________
       void G4VAnalysisManager::SetFileManager(std::shared_ptr fileManager)
       {
         fVFileManager = fileManager;
      +
      +  if ( fH1HnManager != nullptr ) fH1HnManager->SetFileManager(fileManager);
      +  if ( fH2HnManager != nullptr ) fH2HnManager->SetFileManager(fileManager);
      +  if ( fH3HnManager != nullptr ) fH3HnManager->SetFileManager(fileManager);
      +  if ( fP1HnManager != nullptr ) fP1HnManager->SetFileManager(fileManager);
      +  if ( fP2HnManager != nullptr ) fP2HnManager->SetFileManager(fileManager);
       }  
       
       //_____________________________________________________________________________
      @@ -218,7 +233,7 @@ G4bool G4VAnalysisManager::OpenFile(const G4String& fileName)
             return false;
           }           
           return OpenFileImpl(fVFileManager->GetFileName());
      -  }  
      +  }
       } 
       
       //_____________________________________________________________________________
      @@ -753,7 +768,7 @@ G4int G4VAnalysisManager::CreateNtuple(const G4String& name,
       {
         if ( ! CheckName(name, "Ntuple") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtuple(name, title);
      +  return fNtupleBookingManager->CreateNtuple(name, title);
       }                                         
       
       //_____________________________________________________________________________
      @@ -761,7 +776,7 @@ G4int G4VAnalysisManager::CreateNtupleIColumn(const G4String& name)
       {
         if ( ! CheckName(name, "NtupleIColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleIColumn(name, 0);
      +  return fNtupleBookingManager->CreateNtupleIColumn(name, 0);
       }  
       
       //_____________________________________________________________________________
      @@ -769,7 +784,7 @@ G4int G4VAnalysisManager::CreateNtupleFColumn(const G4String& name)
       {
         if ( ! CheckName(name, "NtupleFColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleFColumn(name, 0);
      +  return fNtupleBookingManager->CreateNtupleFColumn(name, 0);
       }  
       
       //_____________________________________________________________________________
      @@ -777,7 +792,7 @@ G4int G4VAnalysisManager::CreateNtupleDColumn(const G4String& name)
       {
         if ( ! CheckName(name, "NtupleDColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleDColumn(name, 0);
      +  return fNtupleBookingManager->CreateNtupleDColumn(name, 0);
       }  
       
       //_____________________________________________________________________________
      @@ -785,7 +800,7 @@ G4int G4VAnalysisManager::CreateNtupleSColumn(const G4String& name)
       {
         if ( ! CheckName(name, "NtupleSColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleSColumn(name);
      +  return fNtupleBookingManager->CreateNtupleSColumn(name);
       }  
       
       //_____________________________________________________________________________
      @@ -794,7 +809,7 @@ G4int G4VAnalysisManager::CreateNtupleIColumn(const G4String& name,
       {
         if ( ! CheckName(name, "NtupleIColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleIColumn(name, &vector);
      +  return fNtupleBookingManager->CreateNtupleIColumn(name, &vector);
       }  
       
       //_____________________________________________________________________________
      @@ -803,7 +818,7 @@ G4int G4VAnalysisManager::CreateNtupleFColumn(const G4String& name,
       {
         if ( ! CheckName(name, "NtupleFColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleFColumn(name, &vector);
      +  return fNtupleBookingManager->CreateNtupleFColumn(name, &vector);
       }  
       
       //_____________________________________________________________________________
      @@ -812,13 +827,17 @@ G4int G4VAnalysisManager::CreateNtupleDColumn(const G4String& name,
       {
         if ( ! CheckName(name, "NtupleDColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleDColumn(name, &vector);
      +  return fNtupleBookingManager->CreateNtupleDColumn(name, &vector);
       }  
       
       //_____________________________________________________________________________
       void G4VAnalysisManager::FinishNtuple()
       { 
      -  return fVNtupleManager->FinishNtuple();
      +  auto ntupleBooking = fNtupleBookingManager->FinishNtuple();
      +
      +  if ( fVNtupleManager ) {
      +    fVNtupleManager->CreateNtuple(ntupleBooking);
      +  }
       }
       
       //_____________________________________________________________________________
      @@ -865,7 +884,7 @@ G4int G4VAnalysisManager::CreateNtupleIColumn(G4int ntupleId,
       {
         if ( ! CheckName(name, "NtupleIColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleIColumn(ntupleId, name, 0);
      +  return fNtupleBookingManager->CreateNtupleIColumn(ntupleId, name, 0);
       }                                         
       
       //_____________________________________________________________________________
      @@ -874,7 +893,7 @@ G4int G4VAnalysisManager::CreateNtupleFColumn(G4int ntupleId,
       {
         if ( ! CheckName(name, "NtupleFColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleFColumn(ntupleId, name, 0);
      +  return fNtupleBookingManager->CreateNtupleFColumn(ntupleId, name, 0);
       }                                         
       
       
      @@ -884,7 +903,7 @@ G4int G4VAnalysisManager::CreateNtupleDColumn(G4int ntupleId,
       {
         if ( ! CheckName(name, "NtupleDColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleDColumn(ntupleId, name, 0);
      +  return fNtupleBookingManager->CreateNtupleDColumn(ntupleId, name, 0);
       }                                         
       
       //_____________________________________________________________________________
      @@ -893,7 +912,7 @@ G4int G4VAnalysisManager::CreateNtupleSColumn(G4int ntupleId,
       {
         if ( ! CheckName(name, "NtupleSColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleSColumn(ntupleId, name);
      +  return fNtupleBookingManager->CreateNtupleSColumn(ntupleId, name);
       }                                         
       
       //_____________________________________________________________________________
      @@ -903,7 +922,7 @@ G4int G4VAnalysisManager::CreateNtupleIColumn(G4int ntupleId,
       {
         if ( ! CheckName(name, "NtupleIColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleIColumn(ntupleId, name, &vector);
      +  return fNtupleBookingManager->CreateNtupleIColumn(ntupleId, name, &vector);
       }  
       
       //_____________________________________________________________________________
      @@ -913,7 +932,7 @@ G4int G4VAnalysisManager::CreateNtupleFColumn(G4int ntupleId,
       {
         if ( ! CheckName(name, "NtupleFColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleFColumn(ntupleId, name, &vector);
      +  return fNtupleBookingManager->CreateNtupleFColumn(ntupleId, name, &vector);
       }  
       
       //_____________________________________________________________________________
      @@ -923,13 +942,17 @@ G4int G4VAnalysisManager::CreateNtupleDColumn(G4int ntupleId,
       {
         if ( ! CheckName(name, "NtupleDColumn") ) return kInvalidId;
       
      -  return fVNtupleManager->CreateNtupleDColumn(ntupleId, name, &vector);
      +  return fNtupleBookingManager->CreateNtupleDColumn(ntupleId, name, &vector);
       }  
       
       //_____________________________________________________________________________
       void G4VAnalysisManager::FinishNtuple(G4int ntupleId)
       { 
      -  return fVNtupleManager->FinishNtuple(ntupleId);
      +  auto ntupleBooking = fNtupleBookingManager->FinishNtuple(ntupleId);
      +
      +  if ( fVNtupleManager ) {
      +    fVNtupleManager->CreateNtuple(ntupleBooking);
      +  }
       }
          
       //_____________________________________________________________________________
      @@ -996,13 +1019,33 @@ G4bool G4VAnalysisManager::SetFirstP2Id(G4int firstId)
       //_____________________________________________________________________________
       G4bool G4VAnalysisManager::SetFirstNtupleId(G4int firstId) 
       {
      -  return fVNtupleManager->SetFirstId(firstId);
      +  auto finalResult = true;
      +
      +  auto result = fNtupleBookingManager->SetFirstId(firstId);
      +  finalResult = finalResult && result;
      +
      +  if ( fVNtupleManager ) {
      +    result = fVNtupleManager->SetFirstId(firstId);
      +    finalResult = finalResult && result;
      +  }
      +
      +  return finalResult;
       }  
       
       //_____________________________________________________________________________
       G4bool G4VAnalysisManager::SetFirstNtupleColumnId(G4int firstId) 
       {
      -  return fVNtupleManager->SetFirstNtupleColumnId(firstId);
      +  auto finalResult = true;
      +
      +  auto result = fNtupleBookingManager->SetFirstNtupleColumnId(firstId);
      +  finalResult = finalResult && result;
      +
      +  if ( fVNtupleManager ) {
      +    result = fVNtupleManager->SetFirstNtupleColumnId(firstId);
      +    finalResult = finalResult && result;
      +  }
      +
      +  return finalResult;
       }
       
       // Fill methods in .icc
      @@ -1098,7 +1141,7 @@ G4int G4VAnalysisManager::GetFirstNtupleId() const
       {
       // Return first Ntuple id
       
      -  return fVNtupleManager->GetFirstId();
      +  return fNtupleBookingManager->GetFirstId();
       }  
       
       //_____________________________________________________________________________
      @@ -1106,7 +1149,7 @@ G4int G4VAnalysisManager::GetFirstNtupleColumnId() const
       {
       // Return first Ntuple column id
       
      -  return fVNtupleManager->GetFirstNtupleColumnId();
      +  return fNtupleBookingManager->GetFirstNtupleColumnId();
       }  
       
       //_____________________________________________________________________________
      @@ -1175,6 +1218,12 @@ void  G4VAnalysisManager::SetH1Plotting(G4int id, G4bool plotting)
         fH1HnManager->SetPlotting(id, plotting);
       }    
       
      +//_____________________________________________________________________________
      +void  G4VAnalysisManager::SetH1FileName(G4int id, const G4String& fileName)
      +{
      +  fH1HnManager->SetFileName(id, fileName);  
      +}
      +
       //_____________________________________________________________________________
       void  G4VAnalysisManager::SetH2Activation(G4int id, G4bool activation)
       {
      @@ -1203,6 +1252,12 @@ void  G4VAnalysisManager::SetH2Plotting(G4int id, G4bool plotting)
         fH2HnManager->SetPlotting(id, plotting);
       }    
       
      +//_____________________________________________________________________________
      +void  G4VAnalysisManager::SetH2FileName(G4int id, const G4String& fileName)
      +{
      +  fH2HnManager->SetFileName(id, fileName);  
      +}
      +
       //_____________________________________________________________________________
       void  G4VAnalysisManager::SetH3Activation(G4int id, G4bool activation)
       {
      @@ -1231,6 +1286,12 @@ void  G4VAnalysisManager::SetH3Plotting(G4int id, G4bool plotting)
         fH3HnManager->SetPlotting(id, plotting);
       }
       
      +//_____________________________________________________________________________
      +void  G4VAnalysisManager::SetH3FileName(G4int id, const G4String& fileName)
      +{
      +  fH3HnManager->SetFileName(id, fileName);  
      +}
      +
       //_____________________________________________________________________________
       void  G4VAnalysisManager::SetP1Activation(G4int id, G4bool activation)
       {
      @@ -1259,6 +1320,12 @@ void  G4VAnalysisManager::SetP1Plotting(G4int id, G4bool plotting)
         fP1HnManager->SetPlotting(id, plotting);
       }  
       
      +//_____________________________________________________________________________
      +void  G4VAnalysisManager::SetP1FileName(G4int id, const G4String& fileName)
      +{
      +  fP1HnManager->SetFileName(id, fileName);  
      +}
      +
       //_____________________________________________________________________________
       void  G4VAnalysisManager::SetP2Activation(G4int id, G4bool activation)
       {
      @@ -1287,21 +1354,49 @@ void  G4VAnalysisManager::SetP2Plotting(G4int id, G4bool plotting)
         fP2HnManager->SetPlotting(id, plotting);
       } 
       
      +//_____________________________________________________________________________
      +void  G4VAnalysisManager::SetP2FileName(G4int id, const G4String& fileName)
      +{
      +  fP2HnManager->SetFileName(id, fileName);  
      +}
      +
       //_____________________________________________________________________________
       void  G4VAnalysisManager::SetNtupleActivation(G4int id, G4bool activation)
       {
      -// Set activation to a given P2 object
      +// Set activation to a given ntuple object
       
      -  fVNtupleManager->SetActivation(id, activation);
      -}    
      +  fNtupleBookingManager->SetActivation(id, activation);
      +  if ( fVNtupleManager ) {
      +    fVNtupleManager->SetActivation(id, activation);
      +  }
      +}
       
       //_____________________________________________________________________________
       void  G4VAnalysisManager::SetNtupleActivation(G4bool activation)
       {
      +// Set activation to all ntuple objects
      +
      +  fNtupleBookingManager->SetActivation(activation);
      +  if ( fVNtupleManager ) {
      +    fVNtupleManager->SetActivation(activation);
      +  }
      +}
      +
      +//_____________________________________________________________________________
      +void  G4VAnalysisManager::SetNtupleFileName(G4int id, const G4String& fileName)
      +{
      +// Set activation to a given P2 object
      +
      +  fNtupleBookingManager->SetFileName(id, fileName);
      +}
      +
      +//_____________________________________________________________________________
      +void  G4VAnalysisManager::SetNtupleFileName(const G4String& fileName)
      +{
       // Set activation to all P2 objects
       
      -  fVNtupleManager->SetActivation(activation);
      -}    
      +  fNtupleBookingManager->SetFileName(fileName);
      +}
       
       // Access methods in .icc
       
      diff --git a/source/analysis/management/src/G4VFileManager.cc b/source/analysis/management/src/G4VFileManager.cc
      index 2e7ccddf20..ffd830640d 100644
      --- a/source/analysis/management/src/G4VFileManager.cc
      +++ b/source/analysis/management/src/G4VFileManager.cc
      @@ -28,18 +28,22 @@
       
       #include "G4VFileManager.hh"
       #include "G4AnalysisManagerState.hh"
      +#include "G4AnalysisUtilities.hh"
       
       #include "G4Threading.hh"
       
       //_____________________________________________________________________________
       G4VFileManager::G4VFileManager(const G4AnalysisManagerState& state)
         : G4BaseFileManager(state),
      -    fIsOpenFile(false),
           fHistoDirectoryName(""), 
           fNtupleDirectoryName(""),
      -    fLockFileName(false),
      -    fLockHistoDirectoryName(false), 
      -    fLockNtupleDirectoryName(false)
      +    fIsOpenFile(false),
      +    fLockDirectoryNames(false), 
      +    fH1FileManager(nullptr),
      +    fH2FileManager(nullptr),
      +    fH3FileManager(nullptr),
      +    fP1FileManager(nullptr),
      +    fP2FileManager(nullptr)
       {}
       
       //_____________________________________________________________________________
      @@ -53,22 +57,28 @@ G4VFileManager::~G4VFileManager()
       //_____________________________________________________________________________
       G4bool G4VFileManager::SetFileName(const G4String& fileName) 
       {
      -  if ( fLockFileName ) {
      +  // Check extension
      +  auto name = fileName;
      +  auto extension = G4Analysis::GetExtension(fileName);
      +  if ( extension.size() && GetFileType().size() && extension != GetFileType() ) {
      +    // replace extension
      +    name = G4Analysis::GetBaseName(fileName) + "." + GetFileType();
           G4ExceptionDescription description;
           description 
      -      << "Cannot set File name as its value was already used.";
      +      << fileName << " file extension is not valid for " 
      +      << GetFileType() << " output." << G4endl
      +      << name << " will be used.";
           G4Exception("G4VFileManager::SetFileName()",
                       "Analysis_W012", JustWarning, description);
      -    return false;
      -  }              
      +  } 
       
      -  return G4BaseFileManager::SetFileName(fileName);
      -}  
      +  return G4BaseFileManager::SetFileName(name);
      +}
       
       //_____________________________________________________________________________
       G4bool G4VFileManager::SetHistoDirectoryName(const G4String& dirName) 
       {
      -  if ( fLockHistoDirectoryName ) {
      +  if ( fLockDirectoryNames ) {
           G4ExceptionDescription description;
           description 
             << "Cannot set Histo directory name as its value was already used.";
      @@ -84,7 +94,7 @@ G4bool G4VFileManager::SetHistoDirectoryName(const G4String& dirName)
       //_____________________________________________________________________________
       G4bool G4VFileManager::SetNtupleDirectoryName(const G4String& dirName) 
       {
      -  if ( fLockNtupleDirectoryName ) {
      +  if ( fLockDirectoryNames ) {
           G4ExceptionDescription description;
           description 
             << "Cannot set Ntuple directory name as its value was already used.";
      @@ -95,4 +105,4 @@ G4bool G4VFileManager::SetNtupleDirectoryName(const G4String& dirName)
       
         fNtupleDirectoryName = dirName;
         return true;
      -}  
      +}
      diff --git a/source/analysis/management/src/G4VNtupleFileManager.cc b/source/analysis/management/src/G4VNtupleFileManager.cc
      new file mode 100644
      index 0000000000..afc4efe48d
      --- /dev/null
      +++ b/source/analysis/management/src/G4VNtupleFileManager.cc
      @@ -0,0 +1,98 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Author: Ivana Hrivnacova, 15/09/2020  (ivana@ipno.in2p3.fr)
      +
      +#include "G4VNtupleFileManager.hh"
      +#include "globals.hh"
      +
      +#include 
      +
      +namespace {
      +
      +//_____________________________________________________________________________
      +void NtupleMergingWarning(const G4String& functionName, 
      +                          const G4String& outputType)
      +{
      +  G4ExceptionDescription description;
      +  description
      +    << "      " << "Ntuple merging is not available with "
      +    << outputType << " output." << G4endl
      +    << "      " << "Setting is ignored.";
      +  G4Exception(functionName, "Analysis_W041", JustWarning, description);  
      +}
      +
      +}
      +
      +//_____________________________________________________________________________
      +G4VNtupleFileManager::G4VNtupleFileManager(const G4AnalysisManagerState& state,
      +  const G4String& fileType)
      + : fState(state),
      +   fFileType(fileType),
      +   fBookingManager(nullptr) 
      +{}
      +
      +//_____________________________________________________________________________
      +G4VNtupleFileManager::~G4VNtupleFileManager() 
      +{}
      +
      +//_____________________________________________________________________________
      +void G4VNtupleFileManager::SetNtupleMerging(G4bool /*mergeNtuples*/, 
      +                   G4int /*nofReducedNtupleFiles*/)
      +{
      +// The function is overridden in the managers which supports ntuple merging
      +// Here we give just a warning that the feature is not available.
      +
      +  NtupleMergingWarning("G4VNtupleFileManager::SetNtupleMerging", fFileType);
      +}
      +
      +//_____________________________________________________________________________
      +void G4VNtupleFileManager::SetNtupleRowWise(G4bool /*rowWise*/, 
      +                                          G4bool /*rowMode*/)
      +{
      +// The function is overridden in the managers which supports ntuple merging
      +// Here we give just a warning that the feature is not available.
      +
      +  NtupleMergingWarning("G4VNtupleFileManager::SetNtupleRowWise", fFileType);
      +}
      +
      +//_____________________________________________________________________________
      +void G4VNtupleFileManager::SetBasketSize(unsigned int /*basketSize*/)
      +{
      +// The function is overridden in the managers which supports ntuple merging
      +// Here we give just a warning that the feature is not available.
      +
      +  NtupleMergingWarning("G4VNtupleFileManager::SetBasketSize", fFileType);
      +}
      +
      +//_____________________________________________________________________________
      +void G4VNtupleFileManager::SetBasketEntries(unsigned int /*basketEntries*/)
      +{
      +// The function is overridden in the managers which supports ntuple merging
      +// Here we give just a warning that the feature is not available.
      +
      +  NtupleMergingWarning("G4VNtupleFileManager::SetBasketEntries", fFileType);
      +}
      diff --git a/source/analysis/root/include/G4RootAnalysisManager.hh b/source/analysis/root/include/G4RootAnalysisManager.hh
      index 0c4e09aa4e..008e21167f 100644
      --- a/source/analysis/root/include/G4RootAnalysisManager.hh
      +++ b/source/analysis/root/include/G4RootAnalysisManager.hh
      @@ -41,9 +41,7 @@
       #include 
       
       class G4RootFileManager;
      -class G4RootNtupleManager;
      -class G4RootMainNtupleManager;
      -class G4RootPNtupleManager;
      +class G4RootNtupleFileManager;
       
       namespace tools {
       namespace wroot {
      @@ -51,12 +49,6 @@ class directory;
       }
       }
       
      -enum class G4NtupleMergeMode {
      -  kNone,
      -  kMain,
      -  kSlave
      -};
      -
       class G4RootAnalysisManager : public  G4ToolsAnalysisManager
       {
         friend class G4RootMpiAnalysisManager;
      @@ -89,11 +81,11 @@ class G4RootAnalysisManager : public  G4ToolsAnalysisManager
         protected:
           // virtual methods from base class
           virtual G4bool OpenFileImpl(const G4String& fileName) override;
      -    virtual G4bool WriteImpl() final;
      +    virtual G4bool WriteImpl() override;
           virtual G4bool CloseFileImpl(G4bool reset) override; 
           virtual G4bool IsOpenFileImpl() const final;
      +
           // virtual functions (overriden in MPI implementation)
      -    virtual G4bool WriteNtuple();
           virtual G4bool Reset();
       
         private:
      @@ -102,17 +94,9 @@ class G4RootAnalysisManager : public  G4ToolsAnalysisManager
           static G4ThreadLocal G4RootAnalysisManager* fgInstance;
       
           // methods
      -    void SetNtupleMergingMode(G4bool mergeNtuples, 
      -                              G4int nofNtupleFiles);
      -    void ClearNtupleManagers();
      -    void CreateNtupleManagers();
      -    G4int  GetNtupleFileNumber();
      -    G4bool ResetNtuple();
      -
           template 
           G4bool WriteT(const std::vector& htVector,
                         const std::vector& hnVector,
      -                  tools::wroot::directory* directory,
                         const G4String& hnType);
           G4bool WriteH1();
           G4bool WriteH2();
      @@ -121,13 +105,8 @@ class G4RootAnalysisManager : public  G4ToolsAnalysisManager
           G4bool WriteP2();
       
           // data members 
      -    G4int   fNofNtupleFiles;
      -    G4bool  fNtupleRowWise;
      -    G4bool  fNtupleRowMode;
      -    G4NtupleMergeMode      fNtupleMergeMode;
      -    G4RootNtupleManager*   fNtupleManager; 
      -    G4RootPNtupleManager*  fSlaveNtupleManager;
           std::shared_ptr fFileManager;
      +    std::shared_ptr fNtupleFileManager;
       };
       
       #include "G4RootAnalysisManager.icc"
      diff --git a/source/analysis/root/include/G4RootAnalysisManager.icc b/source/analysis/root/include/G4RootAnalysisManager.icc
      index d39b0962ba..c0a1e4cbde 100644
      --- a/source/analysis/root/include/G4RootAnalysisManager.icc
      +++ b/source/analysis/root/include/G4RootAnalysisManager.icc
      @@ -25,6 +25,7 @@
       //
       
       #include "G4RootNtupleManager.hh"
      +#include "G4RootNtupleFileManager.hh"
       #include "G4RootFileManager.hh"
       
       #include "tools/wroot/to"
      @@ -35,12 +36,13 @@ template 
       inline 
       G4bool G4RootAnalysisManager::WriteT(const std::vector& htVector,
                                            const std::vector& hnVector,
      -                                     tools::wroot::directory* directory,
                                            const G4String& hnType)
       {
         // Do nothing if there is no file
      -  if ( ! directory ) return true;
      +  if ( ! fFileManager->GetFile() ) return true;
       
      +  auto directory = std::get<1>(*fFileManager->GetFile()); 
      +  
         for ( G4int i=0; iGetActivation();
      @@ -77,28 +79,28 @@ G4bool G4RootAnalysisManager::IsOpenFileImpl() const
       inline
       tools::wroot::ntuple* G4RootAnalysisManager::GetNtuple() const
       {
      -  return fNtupleManager->GetNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->GetNtuple();
       }  
       
       //_____________________________________________________________________________
       inline
       tools::wroot::ntuple* G4RootAnalysisManager::GetNtuple(G4int ntupleId) const
       {
      -  return fNtupleManager->GetNtuple(ntupleId);
      +  return fNtupleFileManager->GetNtupleManager()->GetNtuple(ntupleId);
       }  
       
       //_____________________________________________________________________________
       inline
       std::vector::iterator G4RootAnalysisManager::BeginNtuple()
       {
      -  return fNtupleManager->BeginNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->BeginNtuple();
       }  
       
       //_____________________________________________________________________________
       inline
       std::vector::iterator G4RootAnalysisManager::EndNtuple()
       {
      -  return fNtupleManager->EndNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->EndNtuple();
       }  
       
       //_____________________________________________________________________________
      @@ -106,7 +108,7 @@ inline
       std::vector::const_iterator 
       G4RootAnalysisManager::BeginConstNtuple() const
       {
      -  return fNtupleManager->BeginConstNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->BeginConstNtuple();
       }  
       
       //_____________________________________________________________________________
      @@ -114,5 +116,5 @@ inline
       std::vector::const_iterator 
       G4RootAnalysisManager::EndConstNtuple() const
       {
      -  return fNtupleManager->EndConstNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->EndConstNtuple();
       }  
      diff --git a/source/processes/hadronic/processes/include/G4XibZeroInelasticProcess.hh b/source/analysis/root/include/G4RootFileDef.hh
      similarity index 76%
      rename from source/processes/hadronic/processes/include/G4XibZeroInelasticProcess.hh
      rename to source/analysis/root/include/G4RootFileDef.hh
      index dccc7bc9f8..8f0978161e 100644
      --- a/source/processes/hadronic/processes/include/G4XibZeroInelasticProcess.hh
      +++ b/source/analysis/root/include/G4RootFileDef.hh
      @@ -23,24 +23,24 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      -#ifndef G4XibZeroInelasticProcess_h
      -#define G4XibZeroInelasticProcess_h 1
       
      -// Author: Alberto Ribon (CERN) 2019
      - 
      -// Class Description
      -// Process for xi_b0 Inelastic scattering 
      -// Class Description - End
      +// Manager class for Root ntuples.
      +// It implements functions specific to Root ntuples in sequential mode.
      +//
      +// Author: Ivana Hrivnacova, 18/06/2013  (ivana@ipno.in2p3.fr)
       
      -#include "G4HadronInelasticProcess.hh"
      - 
      +#ifndef G4RootFile_h
      +#define G4RootFile_h 1
       
      -class G4XibZeroInelasticProcess : public G4HadronInelasticProcess {
      -  public:  
      -    G4XibZeroInelasticProcess( const G4String& processName = "xi_b0Inelastic" );
      -    ~G4XibZeroInelasticProcess() {}
      -    virtual void ProcessDescription( std::ostream& outFile ) const;
      -};
      +namespace tools {
      +namespace wroot {
      +class directory;
      +class file;
      +}
      +}
      +
      +using G4RootFile = std::tuple,
      +                              tools::wroot::directory*,
      +                              tools::wroot::directory*>;
       
       #endif
      -
      diff --git a/source/analysis/root/include/G4RootFileManager.hh b/source/analysis/root/include/G4RootFileManager.hh
      index 3ebb118929..1db3b51fa9 100644
      --- a/source/analysis/root/include/G4RootFileManager.hh
      +++ b/source/analysis/root/include/G4RootFileManager.hh
      @@ -31,85 +31,92 @@
       #ifndef G4RootFileManager_h
       #define G4RootFileManager_h 1
       
      -#include "G4VFileManager.hh"
      +#include "G4VTFileManager.hh"
      +#include "G4RootFileDef.hh"
       #include "globals.hh"
       
       #include 
       #include 
      +#include 
       
       namespace tools {
      -namespace wroot { 
      -class file; 
      -class directory;
      -}
      +namespace wroot{
      +class ntuple;  
       }  
      +}
       
      -class G4RootFileManager : public G4VFileManager
      +// Types alias
      +using RootNtupleDescription = G4TNtupleDescription;
      +
      +class G4RootFileManager : public G4VTFileManager
       {
         public:
           explicit G4RootFileManager(const G4AnalysisManagerState& state);
           virtual ~G4RootFileManager();
       
      -    // Methods to manipulate file
      -    virtual G4bool OpenFile(const G4String& fileName) final;
      -    virtual G4bool WriteFile() final;
      -    virtual G4bool CloseFile() final; 
      +    using G4BaseFileManager::GetNtupleFileName;
      +    using G4VTFileManager::WriteFile;
      +    using G4VTFileManager::CloseFile;
      +
      +    // Methods to manipulate file from base classes
      +    virtual G4bool OpenFile(const G4String& fileName) final;
      +
      +    virtual G4String GetFileType() const final { return "root"; }
      +
      +    // Specific methods for files per objects
      +    std::shared_ptr CreateNtupleFile(RootNtupleDescription* ntupleDescription, 
      +                                  G4int mainNumber = -1);
      +    std::shared_ptr GetNtupleFile(RootNtupleDescription* ntupleDescription, 
      +                                  G4bool perThread = true,
      +                                  G4int mainNumber = -1) const;
      +    G4bool WriteNtupleFile(RootNtupleDescription* ntupleDescription);
      +    G4bool CloseNtupleFile(RootNtupleDescription* ntupleDescription); 
       
      -    G4bool CreateHistoDirectory();
      -    G4bool CreateNtupleDirectory();
      -    
           // Set methods
      -    void  SetNofNtupleFiles(G4int nofFiles);
           void  SetBasketSize(unsigned int basketSize);
           void  SetBasketEntries(unsigned int basketEntries);
       
           // Get methods
      -    tools::wroot::directory* GetHistoDirectory() const;
      -    tools::wroot::directory* GetNtupleDirectory() const;
      -    std::shared_ptr GetNtupleFile(G4int index) const;
      -    tools::wroot::directory* GetMainNtupleDirectory(G4int index) const;
           unsigned int GetBasketSize() const;
           unsigned int GetBasketEntries() const;
       
      +  protected:
      +    // Methods derived from templated base class
      +    virtual std::shared_ptr CreateFileImpl(const G4String& fileName) final;
      +    virtual G4bool WriteFileImpl(std::shared_ptr file) final;
      +    virtual G4bool CloseFileImpl(std::shared_ptr file) final;    
      +
         private:
           // methods
      -    G4bool OpenNtupleFiles();
      -    G4bool WriteFile(std::shared_ptr rfile, 
      -                     const G4String& fileName);
      -    G4bool CloseFile(std::shared_ptr rfile, 
      -                     const G4String& fileName);
      +    tools::wroot::directory* CreateDirectory(
      +                               std::shared_ptr rfile,
      +                               const G4String& directoryName, 
      +                               const G4String& objectType) const;
      +    G4String GetNtupleFileName(
      +                RootNtupleDescription* ntupleDescription, 
      +                G4bool perThread = true,
      +                G4int mainNumber = -1) const;
       
           // data members
      -    std::shared_ptr  fFile;
      -    tools::wroot::directory*  fHistoDirectory;
      -    tools::wroot::directory*  fNtupleDirectory;
      -    G4int  fNofNtupleFiles;
      -    std::vector >  fNtupleFiles;
      -    std::vector  fMainNtupleDirectories;
           unsigned int fBasketSize;
           unsigned int fBasketEntries;
       };
       
       // inline functions
       
      -inline void  G4RootFileManager::SetNofNtupleFiles(G4int nofFiles)  
      -{ fNofNtupleFiles = nofFiles; }
      -
      +//_____________________________________________________________________________
       inline void  G4RootFileManager::SetBasketSize(unsigned int basketSize)  
       { fBasketSize = basketSize; }
       
      +//_____________________________________________________________________________
       inline void  G4RootFileManager::SetBasketEntries(unsigned int basketEntries)  
       { fBasketEntries = basketEntries; }
       
      -inline tools::wroot::directory* G4RootFileManager::GetHistoDirectory() const
      -{ return fHistoDirectory; }
      -
      -inline tools::wroot::directory* G4RootFileManager::GetNtupleDirectory() const
      -{ return fNtupleDirectory; }
      -
      +//_____________________________________________________________________________
       inline unsigned int G4RootFileManager::GetBasketSize() const
       { return fBasketSize; }
       
      +//_____________________________________________________________________________
       inline unsigned int G4RootFileManager::GetBasketEntries() const
       { return fBasketEntries; }
       
      diff --git a/source/analysis/root/include/G4RootHnFileManager.hh b/source/analysis/root/include/G4RootHnFileManager.hh
      new file mode 100644
      index 0000000000..2abaac3763
      --- /dev/null
      +++ b/source/analysis/root/include/G4RootHnFileManager.hh
      @@ -0,0 +1,64 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// The manager for histogram/profile Root file output.
      +
      +// Author: Ivana Hrivnacova, 15/09/2020  (ivana@ipno.in2p3.fr)
      +
      +#ifndef G4RootHnFileManager_h
      +#define G4RootHnFileManager_h 1
      +
      +#include "G4VTHnFileManager.hh"
      +#include "globals.hh"
      +
      +class G4RootFileManager;
      +
      +template 
      +class G4RootHnFileManager : public G4VTHnFileManager
      +{
      +  public:
      +    G4RootHnFileManager(G4RootFileManager* fileManger)
      +      : G4VTHnFileManager(), fFileManager(fileManger) {}
      +    virtual ~G4RootHnFileManager() {}
      +
      +    // Methods for writing objects
      +    // Write to a new file (the file is closed after write)
      +    virtual G4bool WriteExtra(HT* ht, const G4String& htName, const G4String& fileName) final;
      +    // Write to the default file  (handled with OpenFile()/CloseFile methods)
      +    virtual G4bool Write(HT* ht, const G4String& htName, G4String& fileName) final;
      +
      +  private:       
      +    // Methods
      +    G4bool Write(tools::wroot::directory* directory, HT* ht, const G4String& htName);
      +
      +    // Data members
      +    G4RootFileManager* fFileManager;
      +};
      +
      +#include "G4RootHnFileManager.icc"
      +
      +#endif
      +
      diff --git a/source/analysis/root/include/G4RootHnFileManager.icc b/source/analysis/root/include/G4RootHnFileManager.icc
      new file mode 100644
      index 0000000000..daf38afe74
      --- /dev/null
      +++ b/source/analysis/root/include/G4RootHnFileManager.icc
      @@ -0,0 +1,101 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Author: Ivana Hrivnacova, 15/09/2020  (ivana@ipno.in2p3.fr)
      +
      +#include "tools/wroot/to"
      +#include "tools/wroot/file"
      +#include "tools/zlib"
      +
      +//_____________________________________________________________________________
      +template 
      +G4bool G4RootHnFileManager::Write(
      +  tools::wroot::directory* directory, HT* ht, const G4String& htName)
      +{
      +  // write histpgram
      +  return to(*directory, *ht, htName);
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +G4bool G4RootHnFileManager::WriteExtra(
      +  HT* ht, const G4String& htName, const G4String& fileName)
      +{
      +  auto finalResult = true;
      +  auto result = true;
      +
      +  // // create a new file
      +  tools::wroot::file* rfile = new tools::wroot::file(G4cout, fileName);
      +  // TO DO
      +  // rfile->add_ziper('Z', tools::compress_buffer);
      +  // rfile->set_compression(fState.GetCompressionLevel());
      +  if ( ! rfile ) return false;
      +
      +  // no directory supported in this mode
      +  auto hdirectory = &(rfile->dir());
      +  if ( ! hdirectory ) return false;
      +
      +  // write histo
      +  result = Write(hdirectory, ht, htName);
      +  finalResult = result && finalResult;
      +
      +  // write file
      +  unsigned int n;
      +  result = rfile->write(n);
      +  finalResult = result && finalResult;
      +
      +  // close file
      +  rfile->close();
      +
      +  return finalResult;
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +G4bool G4RootHnFileManager::Write(
      +  HT* ht, const G4String& htName, G4String& fileName)
      +{
      +  if ( fileName.empty()) {
      +    // should not happen
      +    G4cerr << "!!! Root file name not defined." << G4endl;
      +    G4cerr << "!!! Write " << htName << " failed." << G4endl;
      +    return false;
      +  }
      +
      +  auto hdirectory = std::get<1>(*fFileManager->GetTFile(fileName));
      +  if ( hdirectory == nullptr ) {
      +    G4ExceptionDescription description;
      +    description 
      +      << "Failed to get Root file " << fileName << " histo directory."; 
      +    G4Exception("G4RootHnFileManager::Write()",
      +                "Analysis_W022", JustWarning, description);
      +    return false;
      +  }
      +
      +  auto result = Write(hdirectory, ht, htName);
      +  fFileManager->LockDirectoryNames();
      +  return result;
      +}
      diff --git a/source/analysis/root/include/G4RootMainNtupleManager.hh b/source/analysis/root/include/G4RootMainNtupleManager.hh
      index e07c3d2d29..05966ff991 100644
      --- a/source/analysis/root/include/G4RootMainNtupleManager.hh
      +++ b/source/analysis/root/include/G4RootMainNtupleManager.hh
      @@ -32,81 +32,74 @@
       #define G4RootMainNtupleManager_h 1
       
       #include "G4BaseAnalysisManager.hh"
      +#include "G4NtupleBookingManager.hh"
       #include "G4TNtupleDescription.hh"
       #include "G4RootNtupleManager.hh"
      +#include "G4RootFileDef.hh"
       #include "globals.hh"
       
       #include 
       
      +class G4RootFileManager;
       class G4RootNtupleManager;
      +class G4NtupleBookingManager;
       
       namespace tools {
       namespace wroot {
      -class file;
       class ntuple;
       }
       }
       
      +// Types alias
      +using RootNtupleDescription = G4TNtupleDescription;
      +
       class G4RootMainNtupleManager : public G4BaseAnalysisManager
       {
         friend class G4RootPNtupleManager;
         friend class G4RootNtupleManager;
       
         public:
      -    explicit G4RootMainNtupleManager(G4RootNtupleManager* ntupleBuilder,
      -                                     G4bool rowWise,
      -                                     const G4AnalysisManagerState& state);
      +    explicit G4RootMainNtupleManager(
      +               G4RootNtupleManager* ntupleBuilder,
      +               G4NtupleBookingManager* bookingManager,
      +               G4bool rowWise, G4int fileNumber,
      +               const G4AnalysisManagerState& state);
           ~G4RootMainNtupleManager();
       
         protected:
      -    // Types alias
      -    using NtupleType = tools::wroot::ntuple;
      -    using NtupleDescriptionType = G4TNtupleDescription;
      -
           // Methods to manipulate ntuples  
      -    void   CreateNtuple(const tools::ntuple_booking& ntupleBooking, G4bool warn = true);
      -    void   CreateNtuplesFromBooking();
      +    void   CreateNtuple(RootNtupleDescription* ntupleDescription, G4bool warn = true);
           G4bool Merge();
           G4bool Reset(G4bool deleteNtuple);
       
           // Set/get methods
      -    void SetNtupleFile(std::shared_ptr rfile);
      -    void SetNtupleDirectory(tools::wroot::directory*  directory);
      +    void SetFileManager(std::shared_ptr fileManager);
           void SetRowWise(G4bool rowWise);
      -    std::shared_ptr GetNtupleFile() const;
      -    tools::wroot::directory*  GetNtupleDirectory() const;
      +    std::shared_ptr GetNtupleFile(RootNtupleDescription* ntupleDescription) const;
       
           // Access functions
      -    const std::vector& GetNtupleDescriptionVector() 
      -      { return fNtupleBuilder->GetNtupleDescriptionVector(); }
           const std::vector& GetNtupleVector() 
             { return fNtupleVector; }
           unsigned int GetBasketEntries() const;
       
         private:
           // Data members
      -    G4RootNtupleManager*  fNtupleBuilder;
      +    G4RootNtupleManager* fNtupleBuilder;
      +    G4NtupleBookingManager* fBookingManager;
      +    std::shared_ptr fFileManager;
           G4bool  fRowWise;
      -    std::shared_ptr  fNtupleFile;
      -    tools::wroot::directory*  fNtupleDirectory;
      -    std::vector   fNtupleVector;
      +    G4int  fFileNumber;
      +    std::vector  fNtupleVector;
      +    std::vector  fNtupleDescriptionVector;
       };
       
      -inline void G4RootMainNtupleManager::SetNtupleFile(std::shared_ptr rfile) 
      -{ fNtupleFile = rfile; }
      -
      -inline void G4RootMainNtupleManager::SetNtupleDirectory(tools::wroot::directory*  directory)
      -{ fNtupleDirectory = directory; }
      +inline void  G4RootMainNtupleManager::SetFileManager(
      +  std::shared_ptr fileManager)
      +{ fFileManager = fileManager; }
       
       inline void G4RootMainNtupleManager::SetRowWise(G4bool rowWise)
       { fRowWise = rowWise; }
       
      -inline std::shared_ptr G4RootMainNtupleManager::GetNtupleFile() const 
      -{ return fNtupleFile; }
      -
      -inline tools::wroot::directory*  G4RootMainNtupleManager::GetNtupleDirectory() const
      -{ return fNtupleDirectory; }
      -
       inline unsigned int G4RootMainNtupleManager::GetBasketEntries() const
       { return fNtupleBuilder->GetBasketEntries(); }
       
      diff --git a/source/analysis/root/include/G4RootNtupleFileManager.hh b/source/analysis/root/include/G4RootNtupleFileManager.hh
      new file mode 100644
      index 0000000000..9611ed776e
      --- /dev/null
      +++ b/source/analysis/root/include/G4RootNtupleFileManager.hh
      @@ -0,0 +1,111 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Manager class for ntuple Root file output,
      +// provides handling Root ntuple managers in parallel processing.
      +
      +// Author: Ivana Hrivnacova, 18/06/2013  (ivana@ipno.in2p3.fr)
      +
      +#ifndef G4RootNtupleFileManager_h
      +#define G4RootNtupleFileManager_h 1
      +
      +#include "G4VNtupleFileManager.hh"
      +
      +class G4RootFileManager;
      +class G4RootNtupleManager;
      +class G4RootPNtupleManager;
      +class G4VNtupleManager;
      +class G4NtupleBookingManager;
      +
      +enum class G4NtupleMergeMode {
      +  kNone,
      +  kMain,
      +  kSlave
      +};
      +
      +class G4RootNtupleFileManager : public G4VNtupleFileManager
      +{
      +  friend class G4RootMpiNtupleFileManager;
      +
      +  public:
      +    explicit G4RootNtupleFileManager(const G4AnalysisManagerState& state);
      +    virtual ~G4RootNtupleFileManager();
      +
      +    // MT/MPI
      +    virtual void SetNtupleMerging(G4bool mergeNtuples, 
      +                   G4int nofReducedNtupleFiles = 0) override;
      +    virtual void SetNtupleRowWise(G4bool rowWise, G4bool rowMode = true) override;
      +    virtual void SetBasketSize(unsigned int basketSize) override;
      +    virtual void SetBasketEntries(unsigned int basketEntries) override;
      +
      +    // virtual methods from base class
      +    virtual G4bool ActionAtOpenFile(const G4String& fileName) override;
      +    virtual G4bool ActionAtWrite() override;
      +    virtual G4bool ActionAtCloseFile(G4bool reset) override; 
      +    virtual G4bool Reset() override;
      +    virtual G4bool IsNtupleMergingSupported() const override;
      +    
      +    virtual std::shared_ptr CreateNtupleManager() override;
      +
      +    void SetFileManager(std::shared_ptr fileManager);
      +
      +    G4NtupleMergeMode GetMergeMode() const;
      +    std::shared_ptr GetNtupleManager() const;
      +
      +  private:
      +    // static data members
      +    static G4RootNtupleFileManager* fgMasterInstance;
      +
      +    void  SetNtupleMergingMode(G4bool mergeNtuples, G4int nofNtupleFiles);
      +    G4int GetNtupleFileNumber();
      +    G4bool CloseNtupleFiles();
      +
      +    // data members 
      +    G4bool  fIsInitialized;
      +    G4int   fNofNtupleFiles;
      +    G4bool  fNtupleRowWise;
      +    G4bool  fNtupleRowMode;
      +    G4NtupleMergeMode      fNtupleMergeMode;
      +    std::shared_ptr  fNtupleManager; 
      +    std::shared_ptr fSlaveNtupleManager;
      +
      +    std::shared_ptr fFileManager;
      +};
      +
      +inline void G4RootNtupleFileManager::SetFileManager(
      +  std::shared_ptr fileManager)
      +{ fFileManager = fileManager; }
      +
      +inline G4NtupleMergeMode G4RootNtupleFileManager::GetMergeMode() const
      +{ return fNtupleMergeMode; }
      +
      +inline G4bool G4RootNtupleFileManager::IsNtupleMergingSupported() const
      +{ return true; }
      +
      +inline std::shared_ptr G4RootNtupleFileManager::GetNtupleManager() const
      +{ return fNtupleManager; }
      +
      +#endif
      diff --git a/source/analysis/root/include/G4RootNtupleManager.hh b/source/analysis/root/include/G4RootNtupleManager.hh
      index a03b0b7d22..c9c9933536 100644
      --- a/source/analysis/root/include/G4RootNtupleManager.hh
      +++ b/source/analysis/root/include/G4RootNtupleManager.hh
      @@ -25,7 +25,7 @@
       //
       
       // Manager class for Root ntuples.
      -// It implements functions specific to Root ntuples.
      +// It implements functions specific to Root ntuples in sequential mode.
       //
       // Author: Ivana Hrivnacova, 18/06/2013  (ivana@ipno.in2p3.fr)
       
      @@ -33,160 +33,73 @@
       #define G4RootNtupleManager_h 1
       
       #include "G4TNtupleManager.hh"
      +#include "G4RootFileDef.hh"
       #include "globals.hh"
       
       #include "tools/wroot/ntuple"
       
       class G4RootMainNtupleManager;
      +class G4NtupleBookingManager;
       class G4RootFileManager;
       
      -namespace tools {
      -namespace wroot {
      -class directory;
      -}
      -}
      -
      -enum class G4NtupleCreateMode {
      -  kNoMergeBeforeOpen,
      -  kNoMergeAfterOpen,
      -  kMainBeforeOpen,
      -  kMainAfterOpen,
      -  kUndefined
      -};
      +// Types alias
      +using RootNtupleDescription = G4TNtupleDescription;
       
       // template specializations used by this class defined below
       
       template <>
       template <>
      -G4bool G4TNtupleManager::FillNtupleTColumn(
      +G4bool G4TNtupleManager::FillNtupleTColumn(
         G4int ntupleId, G4int columnId, const std::string& value);
       
       
      -class G4RootNtupleManager : public G4TNtupleManager 
      +class G4RootNtupleManager : public G4TNtupleManager 
       {
         friend class G4RootAnalysisManager;
         friend class G4RootMainNtupleManager;
      -  friend class G4RootMpiAnalysisManager;
      +  friend class G4RootNtupleFileManager;
      +  friend class G4RootMpiNtupleFileManager;
         friend class G4RootMpiNtupleManager;
       
         public:
           explicit G4RootNtupleManager(const G4AnalysisManagerState& state,
      -                                 G4int nofMainManagers,
      -                                 G4bool rowWise, G4bool rowMode);
      +                std::shared_ptr bookingManger,
      +                G4int nofMainManagers, G4int nofReducedFiles,
      +                G4bool rowWise, G4bool rowMode);
           virtual ~G4RootNtupleManager();
       
          private:
      -    // Types alias
      -    using NtupleType = tools::wroot::ntuple;
      -    using NtupleDescriptionType = G4TNtupleDescription;
      -
      -    // Functions specific to the output type
      -
      -    void SetNtupleDirectory(tools::wroot::directory* directory);
      -    void SetFileManager(std::shared_ptr fileManager);
      -    
      -    // Utility function  
      -    void CreateTNtuple(NtupleDescriptionType*  ntupleDescription);
      -
           // Methods from the templated base class
      -
           virtual void CreateTNtupleFromBooking(
      -                    NtupleDescriptionType*  ntupleDescription) final;
      -
      +                    RootNtupleDescription*  ntupleDescription) final;
           virtual void FinishTNtuple(
      -                    NtupleDescriptionType*  ntupleDescription,
      +                    RootNtupleDescription*  ntupleDescription,
                           G4bool fromBooking) final;
      -
      -    virtual G4bool Reset(G4bool deleteNtuple);
      -
      -    // Method for merging
      -    //
      +    virtual G4bool Reset(G4bool deleteNtuple) final;
           virtual G4bool Merge();
       
      +    // Set functions
      +    void SetFileManager(std::shared_ptr fileManager);
      +    void SetNtupleFile(std::shared_ptr file);
      +    void SetNtupleRowWise(G4bool rowWise, G4bool rowMode);
      +
           // Access functions
      -    //
      -    const std::vector& GetNtupleDescriptionVector() const;
      -    G4RootMainNtupleManager* GetMainNtupleManager(G4int index) const;
      +    const std::vector& GetNtupleDescriptionVector() const;
      +    std::shared_ptr GetMainNtupleManager(G4int index) const;
           unsigned int GetBasketSize() const;
           unsigned int GetBasketEntries() const;
       
      -    // Utility functions
      -    //
      -    void SetCreateMode();
      -    void SetNtupleRowWise(G4bool rowWise, G4bool rowMode);
      -
           // data members
           //
      -    G4NtupleCreateMode fCreateMode;
           std::shared_ptr fFileManager;
      -    tools::wroot::directory*  fNtupleDirectory;
      -    std::vector  fMainNtupleManagers;
      +    std::vector>  fMainNtupleManagers;
      +    std::shared_ptr fNtupleFile;
           G4bool fRowWise;
           G4bool fRowMode;
       };    
       
      -// inline functions
      -
      -inline void 
      -G4RootNtupleManager::SetNtupleDirectory(tools::wroot::directory* directory) 
      -{ fNtupleDirectory = directory; }
      -
      -inline void 
      -G4RootNtupleManager::SetFileManager(std::shared_ptr fileManager)
      -{ fFileManager = fileManager; }
      -
      -inline const std::vector* >& 
      -G4RootNtupleManager::GetNtupleDescriptionVector() const
      -{ return fNtupleDescriptionVector; }
      -
      -//_____________________________________________________________________________
      -template <>
      -template <>
      -inline G4bool G4TNtupleManager::FillNtupleTColumn(
      -  G4int ntupleId, G4int columnId, const std::string& value)
      -{
      -  if ( fState.GetIsActivation() && ( ! GetActivation(ntupleId) ) ) {
      -    //G4cout << "Skipping FillNtupleIColumn for " << ntupleId << G4endl; 
      -    return false; 
      -  }  
      -
      -  auto ntuple = GetNtupleInFunction(ntupleId, "FillNtupleTColumn");
      -  if ( ! ntuple ) return false;
      -
      -  auto index = columnId - fFirstNtupleColumnId;
      -  if ( index < 0 || index >= G4int(ntuple->columns().size()) ) {
      -    G4ExceptionDescription description;
      -    description << "      "  << "ntupleId " << ntupleId
      -                << " columnId " << columnId << " does not exist.";
      -    G4Exception("G4RootNtupleManager::FillNtupleTColumn()",
      -                "Analysis_W011", JustWarning, description);
      -    return false;
      -  }
      -
      -  auto icolumn =  ntuple->columns()[index];
      -  auto column = dynamic_cast(icolumn);
      -  if ( ! column ) {
      -    G4ExceptionDescription description;
      -    description << " Column type does not match: "
      -                << " ntupleId " << ntupleId  
      -                << " columnId " << columnId << " value " << value;
      -    G4Exception("G4RootNtupleManager:FillNtupleColumn",
      -                "Analysis_W011", JustWarning, description);
      -    return false;
      -  } 
      -
      -  column->fill(value);
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) {
      -    G4ExceptionDescription description;
      -    description << " ntupleId " << ntupleId  
      -                << " columnId " << columnId << " value " << value;
      -    fState.GetVerboseL4()->Message("fill", "ntuple T column", description);
      -  }  
      -#endif
      -  return true;  
      -}
      +#include "G4RootNtupleManager.icc"
       
       #endif
       
      diff --git a/source/analysis/root/include/G4RootNtupleManager.icc b/source/analysis/root/include/G4RootNtupleManager.icc
      new file mode 100644
      index 0000000000..51dead7d61
      --- /dev/null
      +++ b/source/analysis/root/include/G4RootNtupleManager.icc
      @@ -0,0 +1,90 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Author: Ivana Hrivnacova, 18/06/2013  (ivana@ipno.in2p3.fr)
      +
      +//_____________________________________________________________________________
      +inline void G4RootNtupleManager::SetNtupleFile(std::shared_ptr file) 
      +{
      +  fNtupleFile = file;
      +}
      +
      +//_____________________________________________________________________________
      +inline const 
      +std::vector* >& 
      +G4RootNtupleManager::GetNtupleDescriptionVector() const
      +{
      +  return fNtupleDescriptionVector;
      +}
      +
      +//_____________________________________________________________________________
      +template <>
      +template <>
      +inline G4bool G4TNtupleManager::FillNtupleTColumn(
      +  G4int ntupleId, G4int columnId, const std::string& value)
      +{
      +  if ( fState.GetIsActivation() && ( ! GetActivation(ntupleId) ) ) {
      +    //G4cout << "Skipping FillNtupleIColumn for " << ntupleId << G4endl; 
      +    return false; 
      +  }  
      +
      +  auto ntuple = GetNtupleInFunction(ntupleId, "FillNtupleTColumn");
      +  if ( ! ntuple ) return false;
      +
      +  auto index = columnId - fFirstNtupleColumnId;
      +  if ( index < 0 || index >= G4int(ntuple->columns().size()) ) {
      +    G4ExceptionDescription description;
      +    description << "      "  << "ntupleId " << ntupleId
      +                << " columnId " << columnId << " does not exist.";
      +    G4Exception("G4RootNtupleManager::FillNtupleTColumn()",
      +                "Analysis_W011", JustWarning, description);
      +    return false;
      +  }
      +
      +  auto icolumn =  ntuple->columns()[index];
      +  auto column = dynamic_cast(icolumn);
      +  if ( ! column ) {
      +    G4ExceptionDescription description;
      +    description << " Column type does not match: "
      +                << " ntupleId " << ntupleId  
      +                << " columnId " << columnId << " value " << value;
      +    G4Exception("G4RootNtupleManager:FillNtupleColumn",
      +                "Analysis_W011", JustWarning, description);
      +    return false;
      +  } 
      +
      +  column->fill(value);
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL4() ) {
      +    G4ExceptionDescription description;
      +    description << " ntupleId " << ntupleId  
      +                << " columnId " << columnId << " value " << value;
      +    fState.GetVerboseL4()->Message("fill", "ntuple T column", description);
      +  }  
      +#endif
      +  return true;  
      +}
      diff --git a/source/analysis/root/include/G4RootPNtupleDescription.hh b/source/analysis/root/include/G4RootPNtupleDescription.hh
      index de4dc3b7be..31450d90f1 100644
      --- a/source/analysis/root/include/G4RootPNtupleDescription.hh
      +++ b/source/analysis/root/include/G4RootPNtupleDescription.hh
      @@ -31,6 +31,8 @@
       #ifndef G4RootPNtupleDescription_h
       #define G4RootPNtupleDescription_h 1
       
      +#include "G4TNtupleDescription.hh"
      +#include "G4RootFileDef.hh"
       #include "globals.hh"
       
       #include "tools/ntuple_booking"
      @@ -41,34 +43,30 @@
       
       namespace tools {
       namespace wroot {
      -class file;
       class branch;
      +class ntuple;
       }
       }
       
      +using RootNtupleDescription = G4TNtupleDescription;
      +
       struct G4RootPNtupleDescription
       {
      -  G4RootPNtupleDescription() 
      -    :  fFile(nullptr),
      +  G4RootPNtupleDescription(G4NtupleBooking* g4NtupleBooking) 
      +    :  fDescription(g4NtupleBooking),
              fNtuple(nullptr),
              fBasePNtuple(nullptr),
      -       fMainBranches(),
      -       fNtupleBooking(),
      -       fActivation(true),
      -       fIsNtupleOwner(true) {}
      +       fMainBranches() {}
       
         ~G4RootPNtupleDescription()
             {
      -         if ( fIsNtupleOwner ) delete fNtuple;
      +         if ( fDescription.fIsNtupleOwner ) delete fNtuple;
             }    
       
      -  tools::wroot::file* fFile;    
      +  RootNtupleDescription fDescription;
         tools::wroot::imt_ntuple* fNtuple;
         tools::wroot::base_pntuple* fBasePNtuple;
         std::vector fMainBranches; 
      -  tools::ntuple_booking fNtupleBooking; 
      -  G4bool fActivation;
      -  G4bool fIsNtupleOwner;
       };
       
       #endif  
      diff --git a/source/analysis/root/include/G4RootPNtupleManager.hh b/source/analysis/root/include/G4RootPNtupleManager.hh
      index 2a01399234..6c772b0b1d 100644
      --- a/source/analysis/root/include/G4RootPNtupleManager.hh
      +++ b/source/analysis/root/include/G4RootPNtupleManager.hh
      @@ -75,48 +75,29 @@ protected:
         G4AutoLock& m_mutex;
       };
       
      -class G4RootPNtupleManager : public G4BaseNtupleManager 
      +class G4RootPNtupleManager : public G4BaseNtupleManager
       {
         friend class G4RootAnalysisManager;
      +  friend class G4RootNtupleFileManager;
       
         public:
      -    explicit G4RootPNtupleManager(G4RootMainNtupleManager* main,
      -                                  const G4AnalysisManagerState& state,
      +    explicit G4RootPNtupleManager(const G4AnalysisManagerState& state,
      +                                  std::shared_ptr bookingManger,
      +                                  std::shared_ptr main,
                                         G4bool rowWise, G4bool rowMode);
           ~G4RootPNtupleManager();
       
         private:
      -    enum class G4PNtupleCreateMode {
      -      kSlaveBeforeOpen,
      -      kSlaveAfterOpen,
      -      kUndefined
      -    };
      -
           // Methods to manipulate ntuples
      -    void CreateNtuple(G4RootPNtupleDescription* ntupleDescription,
      -                      tools::wroot::ntuple* mainNtuple);
      +    void CreateNtupleFromMain(G4RootPNtupleDescription* ntupleDescription,
      +                              tools::wroot::ntuple* mainNtuple);
      +    // void CreateNtupleFromMain(G4NtupleBooking* g4NtupleBooking,
      +    //                           tools::wroot::ntuple* mainNtuple);
           void CreateNtuplesFromMain();
       
           // Methods to create ntuples
           //
      -    virtual G4int CreateNtuple(const G4String& name, const G4String& title) final;
      -
      -    // Create columns in the last created ntuple (from base class)
      -    using G4BaseNtupleManager::CreateNtupleIColumn;
      -    using G4BaseNtupleManager::CreateNtupleFColumn;
      -    using G4BaseNtupleManager::CreateNtupleDColumn;
      -    using G4BaseNtupleManager::CreateNtupleSColumn;
      -    using G4BaseNtupleManager::FinishNtuple; 
      -
      -    // Create columns in the ntuple with given id
      -    virtual G4int CreateNtupleIColumn(G4int ntupleId, 
      -                    const G4String& name, std::vector* vector) override;
      -    virtual G4int CreateNtupleFColumn(G4int ntupleId, 
      -                    const G4String& name, std::vector* vector) override;
      -    virtual G4int CreateNtupleDColumn(G4int ntupleId, 
      -                    const G4String& name, std::vector* vector) override;
      -    virtual G4int CreateNtupleSColumn(G4int ntupleId, const G4String& name) override;
      -    virtual void  FinishNtuple(G4int ntupleId) override;   
      +    virtual G4int CreateNtuple(G4NtupleBooking* booking) final;
       
           // Methods to fill ntuples
           // Methods for ntuple with id = FirstNtupleId (from base class)                    
      @@ -142,11 +123,9 @@ class G4RootPNtupleManager : public G4BaseNtupleManager
           virtual void  SetActivation(G4bool activation) final;
           virtual void  SetActivation(G4int ntupleId, G4bool activation) final;
           virtual G4bool  GetActivation(G4int ntupleId) const final;
      -    virtual G4bool  IsEmpty() const final;
       
           // Access methods
           virtual G4int GetNofNtuples() const final;
      -    virtual G4int GetNofNtupleBookings() const final;
       
           // Set methods
           void SetNtupleRowWise(G4bool rowWise, G4bool rowMode);
      @@ -159,14 +138,6 @@ class G4RootPNtupleManager : public G4BaseNtupleManager
           tools::wroot::ntuple*  
             GetMainNtupleInFunction(G4int id, G4String function, G4bool warn = true) const;
       
      -    template  
      -    G4int CreateNtupleTColumn(G4int ntupleId, 
      -                    const G4String& name, std::vector* vector);
      -
      -    template  
      -    G4int CreateNtupleTColumn(
      -                    const G4String& name, std::vector* vector);
      -
           template  
           G4bool FillNtupleTColumn(G4int ntupleId, G4int columnId, const T& value);
       
      @@ -174,184 +145,14 @@ class G4RootPNtupleManager : public G4BaseNtupleManager
           G4bool FillNtupleTColumn(G4int columnId, const T& value);
       
           // Data members
      -    G4PNtupleCreateMode  fCreateMode;
      -    G4RootMainNtupleManager*  fMainNtupleManager;
      +    std::shared_ptr fBookingManager;
      +    std::shared_ptr  fMainNtupleManager;
           std::vector fNtupleDescriptionVector;
           std::vector fNtupleVector;
           G4bool fRowWise;
           G4bool fRowMode;
       };
       
      -// inline functions
      -
      -//_____________________________________________________________________________
      -template 
      -G4int G4RootPNtupleManager::CreateNtupleTColumn(
      -  G4int ntupleId, const G4String& name, std::vector* vector)
      -{
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) {
      -    G4ExceptionDescription description;
      -    description << name << " ntupleId " << ntupleId; 
      -    fState.GetVerboseL4()->Message("create", "pntuple T column", description);
      -  }  
      -#endif
      -  
      -  auto ntupleDescription = GetNtupleDescriptionInFunction(ntupleId, "CreateNtupleTColumn");
      -  if ( ! ntupleDescription )  return G4Analysis::kInvalidId;   
      -    
      -  // Save column info in booking
      -  auto& ntupleBooking = ntupleDescription->fNtupleBooking;
      -  auto index = ntupleBooking.columns().size();
      -  if ( ! vector )
      -    ntupleBooking.template add_column(name);
      -  else
      -    ntupleBooking.template add_column(name, *vector);
      - 
      -  fLockFirstNtupleColumnId = true;
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL2() ) {
      -    G4ExceptionDescription description;
      -    description << name << " ntupleId " << ntupleId; 
      -    fState.GetVerboseL2()->Message("create", "pntuple T column", description);
      -  }  
      -#endif
      -
      -  return index + fFirstNtupleColumnId;       
      -
      -}
      -
      -//_____________________________________________________________________________
      -template  
      -G4int G4RootPNtupleManager::CreateNtupleTColumn(
      -  const G4String& name, std::vector* vector)
      -{
      -  auto ntupleId = fNtupleDescriptionVector.size() + fFirstId - 1;
      -  return CreateNtupleTColumn(ntupleId, name, vector);
      -}
      -
      -//_____________________________________________________________________________
      -template <>
      -inline G4bool G4RootPNtupleManager::FillNtupleTColumn(
      -  G4int ntupleId, G4int columnId, const std::string& value)
      -{
      -  if ( fState.GetIsActivation() && ( ! GetActivation(ntupleId) ) ) {
      -    G4cout << "Skipping FillNtupleIColumn for " << ntupleId << G4endl; 
      -    return false; 
      -  } 
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) {
      -    G4ExceptionDescription description;
      -    description << " ntupleId " << ntupleId  
      -                << " columnId " << columnId << " value " << value;
      -    fState.GetVerboseL4()->Message("fill", "pntuple T column", description);
      -  }  
      -#endif
      -
      -  auto ntuple = GetNtupleInFunction(ntupleId, "FillNtupleTColumn");
      -  if ( ! ntuple ) return false;
      -
      -  auto index = columnId - fFirstNtupleColumnId;
      -  if ( index < 0 || index >= G4int(ntuple->columns().size()) ) {
      -    G4ExceptionDescription description;
      -    description << "      "  << "ntupleId " << ntupleId
      -                << " columnId " << columnId << " does not exist.";
      -    G4Exception("G4RootNtupleManager::FillNtupleTColumn()",
      -                "Analysis_W011", JustWarning, description);
      -    return false;
      -  }
      -
      -  auto icolumn =  ntuple->columns()[index];
      -  auto column = dynamic_cast(icolumn);
      -  if ( ! column ) {
      -    G4ExceptionDescription description;
      -    description << " Column type does not match: "
      -                << " ntupleId " << ntupleId  
      -                << " columnId " << columnId << " value " << value;
      -    G4Exception("G4RootNtupleManager:FillNtupleColumn",
      -                "Analysis_W011", JustWarning, description);
      -    return false;
      -  } 
      -
      -  column->fill(value);
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) {
      -    G4ExceptionDescription description;
      -    description << " ntupleId " << ntupleId  
      -                << " columnId " << columnId << " value " << value;
      -    fState.GetVerboseL4()->Message("done fill", "pntuple T column", description);
      -  }  
      -#endif
      -  return true;  
      -}
      -
      -//_____________________________________________________________________________
      -template 
      -G4bool G4RootPNtupleManager::FillNtupleTColumn(
      -  G4int ntupleId, G4int columnId, const T& value)
      -{
      -  if ( fState.GetIsActivation() && ( ! GetActivation(ntupleId) ) ) {
      -    G4cout << "Skipping FillNtupleIColumn for " << ntupleId << G4endl; 
      -    return false; 
      -  }  
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) {
      -    G4ExceptionDescription description;
      -    description << " ntupleId " << ntupleId  
      -                << " columnId " << columnId << " value " << value;
      -    fState.GetVerboseL4()->Message("fill", "pntuple T column", description);
      -  }  
      -#endif
      -
      -  // get ntuple
      -  auto ntuple = GetNtupleInFunction(ntupleId, "FillNtupleTColumn");
      -  if ( ! ntuple ) return false;
      -
      -  // get generic column
      -  auto index = columnId - fFirstNtupleColumnId;
      -  if ( index < 0 || index >= G4int(ntuple->columns().size()) ) {
      -    G4ExceptionDescription description;
      -    description << "      "  << "ntupleId " << ntupleId
      -                << " columnId " << columnId << " does not exist.";
      -    G4Exception("G4TNtupleManager::FillNtupleTColumn()",
      -                "Analysis_W011", JustWarning, description);
      -    return false;
      -  }
      -  auto icolumn =  ntuple->columns()[index];
      -
      -  // get column and check its type
      -  auto column = dynamic_cast* >(icolumn);
      -  if ( ! column ) {
      -    G4ExceptionDescription description;
      -    description << " Column type does not match: "
      -                << " ntupleId " << ntupleId  
      -                << " columnId " << columnId << " value " << value;
      -    G4Exception("G4TNtupleManager:FillNtupleTColumn",
      -                "Analysis_W011", JustWarning, description);
      -    return false;
      -  } 
      -
      -  column->fill(value);
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) {
      -    G4ExceptionDescription description;
      -    description << " ntupleId " << ntupleId  
      -                << " columnId " << columnId << " value " << value;
      -    fState.GetVerboseL4()->Message("done fill", "pntuple T column", description);
      -  }  
      -#endif
      -  return true;  
      -}
      -
      -//_____________________________________________________________________________
      -template  
      -G4bool G4RootPNtupleManager::FillNtupleTColumn(G4int columnId, const T& value) {
      -  return FillNtupleTColumn(0, columnId, value);
      -}
      +#include "G4RootPNtupleManager.icc"
       
       #endif
      diff --git a/source/analysis/root/include/G4RootPNtupleManager.icc b/source/analysis/root/include/G4RootPNtupleManager.icc
      new file mode 100644
      index 0000000000..982273c5a1
      --- /dev/null
      +++ b/source/analysis/root/include/G4RootPNtupleManager.icc
      @@ -0,0 +1,150 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Author: Ivana Hrivnacova, 04/10/2016  (ivana@ipno.in2p3.fr)
      +
      +//_____________________________________________________________________________
      +template <>
      +inline G4bool G4RootPNtupleManager::FillNtupleTColumn(
      +  G4int ntupleId, G4int columnId, const std::string& value)
      +{
      +  if ( fState.GetIsActivation() && ( ! GetActivation(ntupleId) ) ) {
      +    G4cout << "Skipping FillNtupleIColumn for " << ntupleId << G4endl; 
      +    return false; 
      +  } 
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL4() ) {
      +    G4ExceptionDescription description;
      +    description << " ntupleId " << ntupleId  
      +                << " columnId " << columnId << " value " << value;
      +    fState.GetVerboseL4()->Message("fill", "pntuple T column", description);
      +  }  
      +#endif
      +
      +  auto ntuple = GetNtupleInFunction(ntupleId, "FillNtupleTColumn");
      +  if ( ! ntuple ) return false;
      +
      +  auto index = columnId - fFirstNtupleColumnId;
      +  if ( index < 0 || index >= G4int(ntuple->columns().size()) ) {
      +    G4ExceptionDescription description;
      +    description << "      "  << "ntupleId " << ntupleId
      +                << " columnId " << columnId << " does not exist.";
      +    G4Exception("G4RootNtupleManager::FillNtupleTColumn()",
      +                "Analysis_W011", JustWarning, description);
      +    return false;
      +  }
      +
      +  auto icolumn =  ntuple->columns()[index];
      +  auto column = dynamic_cast(icolumn);
      +  if ( ! column ) {
      +    G4ExceptionDescription description;
      +    description << " Column type does not match: "
      +                << " ntupleId " << ntupleId  
      +                << " columnId " << columnId << " value " << value;
      +    G4Exception("G4RootNtupleManager:FillNtupleColumn",
      +                "Analysis_W011", JustWarning, description);
      +    return false;
      +  } 
      +
      +  column->fill(value);
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL4() ) {
      +    G4ExceptionDescription description;
      +    description << " ntupleId " << ntupleId  
      +                << " columnId " << columnId << " value " << value;
      +    fState.GetVerboseL4()->Message("done fill", "pntuple T column", description);
      +  }  
      +#endif
      +  return true;  
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +G4bool G4RootPNtupleManager::FillNtupleTColumn(
      +  G4int ntupleId, G4int columnId, const T& value)
      +{
      +  if ( fState.GetIsActivation() && ( ! GetActivation(ntupleId) ) ) {
      +    G4cout << "Skipping FillNtupleIColumn for " << ntupleId << G4endl; 
      +    return false; 
      +  }  
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL4() ) {
      +    G4ExceptionDescription description;
      +    description << " ntupleId " << ntupleId  
      +                << " columnId " << columnId << " value " << value;
      +    fState.GetVerboseL4()->Message("fill", "pntuple T column", description);
      +  }  
      +#endif
      +
      +  // get ntuple
      +  auto ntuple = GetNtupleInFunction(ntupleId, "FillNtupleTColumn");
      +  if ( ! ntuple ) return false;
      +
      +  // get generic column
      +  auto index = columnId - fFirstNtupleColumnId;
      +  if ( index < 0 || index >= G4int(ntuple->columns().size()) ) {
      +    G4ExceptionDescription description;
      +    description << "      "  << "ntupleId " << ntupleId
      +                << " columnId " << columnId << " does not exist.";
      +    G4Exception("G4TNtupleManager::FillNtupleTColumn()",
      +                "Analysis_W011", JustWarning, description);
      +    return false;
      +  }
      +  auto icolumn =  ntuple->columns()[index];
      +
      +  // get column and check its type
      +  auto column = dynamic_cast* >(icolumn);
      +  if ( ! column ) {
      +    G4ExceptionDescription description;
      +    description << " Column type does not match: "
      +                << " ntupleId " << ntupleId  
      +                << " columnId " << columnId << " value " << value;
      +    G4Exception("G4TNtupleManager:FillNtupleTColumn",
      +                "Analysis_W011", JustWarning, description);
      +    return false;
      +  } 
      +
      +  column->fill(value);
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL4() ) {
      +    G4ExceptionDescription description;
      +    description << " ntupleId " << ntupleId  
      +                << " columnId " << columnId << " value " << value;
      +    fState.GetVerboseL4()->Message("done fill", "pntuple T column", description);
      +  }  
      +#endif
      +  return true;  
      +}
      +
      +//_____________________________________________________________________________
      +template  
      +G4bool G4RootPNtupleManager::FillNtupleTColumn(G4int columnId, const T& value) {
      +  return FillNtupleTColumn(0, columnId, value);
      +}
      diff --git a/source/analysis/root/include/G4RootRFileManager.hh b/source/analysis/root/include/G4RootRFileManager.hh
      index f5dab43111..d98e3432a9 100644
      --- a/source/analysis/root/include/G4RootRFileManager.hh
      +++ b/source/analysis/root/include/G4RootRFileManager.hh
      @@ -49,6 +49,8 @@ class G4RootRFileManager : public G4BaseFileManager
           explicit G4RootRFileManager(const G4AnalysisManagerState& state);
           virtual ~G4RootRFileManager();
       
      +    virtual G4String GetFileType() const final { return "Root"; }
      +
           // Methods to manipulate input files
           virtual G4bool OpenRFile(const G4String& fileName,
                                    G4bool isPerThread);
      diff --git a/source/analysis/root/sources.cmake b/source/analysis/root/sources.cmake
      index c164230f8e..ed1de8f0fc 100644
      --- a/source/analysis/root/sources.cmake
      +++ b/source/analysis/root/sources.cmake
      @@ -12,11 +12,17 @@ geant4_define_module(NAME G4root
           G4RootAnalysisManager.icc
           G4RootAnalysisReader.hh
           G4RootAnalysisReader.icc
      +    G4RootFileDef.hh
           G4RootFileManager.hh
      +    G4RootHnFileManager.hh
      +    G4RootHnFileManager.icc
           G4RootMainNtupleManager.hh
      +    G4RootNtupleFileManager.hh
           G4RootNtupleManager.hh
      +    G4RootNtupleManager.icc
           G4RootPNtupleDescription.hh
           G4RootPNtupleManager.hh
      +    G4RootPNtupleManager.icc
           G4RootRFileManager.hh
           G4RootRNtupleManager.hh
           g4root_defs.hh
      @@ -26,6 +32,7 @@ geant4_define_module(NAME G4root
           G4RootAnalysisReader.cc
           G4RootFileManager.cc
           G4RootMainNtupleManager.cc
      +    G4RootNtupleFileManager.cc
           G4RootNtupleManager.cc
           G4RootPNtupleManager.cc
           G4RootRFileManager.cc
      diff --git a/source/analysis/root/src/G4RootAnalysisManager.cc b/source/analysis/root/src/G4RootAnalysisManager.cc
      index 91ad9f97f1..7fb8246c72 100644
      --- a/source/analysis/root/src/G4RootAnalysisManager.cc
      +++ b/source/analysis/root/src/G4RootAnalysisManager.cc
      @@ -28,11 +28,10 @@
       
       #include "G4RootAnalysisManager.hh"
       #include "G4RootFileManager.hh"
      -#include "G4RootNtupleManager.hh"
      -#include "G4RootMainNtupleManager.hh"
      -#include "G4RootPNtupleManager.hh"
      +#include "G4RootNtupleFileManager.hh"
       #include "G4AnalysisVerbose.hh"
       #include "G4AnalysisManagerState.hh"
      +#include "G4AnalysisUtilities.hh"
       
       #include "G4Threading.hh"
       #include "G4AutoLock.hh"
      @@ -40,6 +39,8 @@
       #include 
       #include 
       
      +using namespace G4Analysis;
      +
       // mutex in a file scope
       
       namespace {
      @@ -78,13 +79,8 @@ G4bool G4RootAnalysisManager::IsInstance()
       //_____________________________________________________________________________
       G4RootAnalysisManager::G4RootAnalysisManager(G4bool isMaster)
        : G4ToolsAnalysisManager("Root", isMaster),
      -   fNofNtupleFiles(0),
      -   fNtupleRowWise(false),
      -   fNtupleRowMode(true),
      -   fNtupleMergeMode(G4NtupleMergeMode::kNone),
      -   fNtupleManager(nullptr),
      -   fSlaveNtupleManager(nullptr),
      -   fFileManager(nullptr)
      +   fFileManager(nullptr),
      +   fNtupleFileManager(nullptr)
       {
         if ( ( isMaster && fgMasterInstance ) || ( fgInstance ) ) {
           G4ExceptionDescription description;
      @@ -104,14 +100,10 @@ G4RootAnalysisManager::G4RootAnalysisManager(G4bool isMaster)
         fFileManager->SetBasketSize(fgkDefaultBasketSize);
         fFileManager->SetBasketEntries(fgkDefaultBasketEntries);
       
      -  // Do not merge ntuples by default
      -  // Merging may require user code migration as analysis manager
      -  // must be created both on master and workers.
      -  auto mergeNtuples = false;
      -  SetNtupleMergingMode(mergeNtuples, fNofNtupleFiles);
      -
      -  // Create ntuple managers
      -  CreateNtupleManagers();
      +  // Ntuple file manager
      +  fNtupleFileManager = std::make_shared(fState);
      +  fNtupleFileManager->SetFileManager(fFileManager);
      +  fNtupleFileManager->SetBookingManager(fNtupleBookingManager);
       }
         
       //_____________________________________________________________________________
      @@ -125,190 +117,6 @@ G4RootAnalysisManager::~G4RootAnalysisManager()
       // private methods
       //
       
      -//_____________________________________________________________________________
      -void G4RootAnalysisManager::SetNtupleMergingMode(G4bool mergeNtuples, 
      -                                                 G4int nofNtupleFiles)
      -
      -{
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()
      -      ->Message("set", "ntuple merging mode", "");
      -#endif
      -
      -  auto canMerge = true;
      -
      -  // Illegal situations
      -  if ( mergeNtuples && ( ! G4Threading::IsMultithreadedApplication() ) ) {
      -    if ( nofNtupleFiles > 0 ) {
      -      G4ExceptionDescription description;
      -      description 
      -        << "      " << "Merging ntuples is not applicable in sequential application." 
      -        << G4endl 
      -        << "      " << "Setting was ignored.";
      -        G4Exception("G4RootAnalysisManager::SetNtupleMergingMode()",
      -                  "Analysis_W013", JustWarning, description);
      -    }
      -    canMerge = false;      
      -  }
      -
      -  // Illegal situations
      -  if ( mergeNtuples && G4Threading::IsMultithreadedApplication() &&
      -       ( ! fgMasterInstance ) ) {
      -    G4ExceptionDescription description;
      -    description 
      -      << "      " << "Merging ntuples requires G4AnalysisManager instance on master." 
      -      << G4endl 
      -      << "      " << "Setting was ignored.";
      -      G4Exception("G4RootAnalysisManager::SetNtupleMergingMode()",
      -                "Analysis_W013", JustWarning, description);
      -    canMerge = false;      
      -  }
      -
      -  G4String mergingMode;
      -  if ( ( ! mergeNtuples ) || ( ! canMerge ) ) {
      -    fNtupleMergeMode = G4NtupleMergeMode::kNone;
      -    mergingMode = "G4NtupleMergeMode::kNone";
      -  }
      -  else {
      -    // Set the number of reduced ntuple files
      -    fNofNtupleFiles = nofNtupleFiles;
      -  
      -    // Check the number of reduced ntuple files
      -    // if ( fNofNtupleFiles < 0 || fNofNtupleFiles > nofThreads ) {
      -    if ( fNofNtupleFiles < 0  ) {
      -      G4ExceptionDescription description;
      -      description 
      -        << "      " << "Number of reduced files must be [0, nofThreads]."
      -        << G4endl 
      -        << "      " << "Cannot set  " <<  nofNtupleFiles
      -        // << " files when nofThreads is " << nofThreads << G4endl   
      -        << " files" << G4endl   
      -        << "      " << "Ntuples will be merged in a single file.";
      -        G4Exception("G4RootAnalysisManager::SetNtupleMergingMode()",
      -                  "Analysis_W013", JustWarning, description);
      -      fNofNtupleFiles = 0;
      -    }
      -  
      -    // if ( fNofNtupleFiles == nofThreads ) {
      -    //   // add warning that no merging will be applied
      -    //   fNtupleMergeMode = G4NtupleMergeMode::kNone;
      -    //   fNofNtupleFiles = 0;
      -    //   mergingMode = "G4NtupleMergeMode::kNone";
      -    // }
      -    // else {
      -    //   G4bool isMaster = ! G4Threading::IsWorkerThread();
      -    //   if ( isMaster ) {
      -    //     fNtupleMergeMode = G4NtupleMergeMode::kMain;
      -    //     mergingMode = "G4NtupleMergeMode::kMain";
      -    //   } else {
      -    //     fNtupleMergeMode = G4NtupleMergeMode::kSlave;    
      -    //     mergingMode = "G4NtupleMergeMode::kSlave";
      -    //   }
      -    // }
      -
      -    // Forced merging mode
      -    G4bool isMaster = ! G4Threading::IsWorkerThread();
      -    if ( isMaster ) {
      -      fNtupleMergeMode = G4NtupleMergeMode::kMain;
      -      mergingMode = "G4NtupleMergeMode::kMain";
      -    } else {
      -      fNtupleMergeMode = G4NtupleMergeMode::kSlave;    
      -      mergingMode = "G4NtupleMergeMode::kSlave";
      -    }
      -  }
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL2() ) 
      -    fState.GetVerboseL2()
      -      ->Message("set", "ntuple merging mode", mergingMode);
      -#endif
      -}
      -
      -//_____________________________________________________________________________
      -void G4RootAnalysisManager::ClearNtupleManagers()
      -{
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()->Message("clear", "ntuple managers", "");
      -#endif
      -
      -  if ( fNtupleMergeMode != G4NtupleMergeMode::kSlave ) {
      -    // Do not reset master ntuple manager
      -    delete fNtupleManager;
      -    fNtupleManager = nullptr;
      -    // SetNtupleManager(fNtupleManager);
      -  }
      -
      -  delete fSlaveNtupleManager;
      -  fSlaveNtupleManager = nullptr;
      -  
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL3() ) 
      -    fState.GetVerboseL3()->Message("clear", "ntuple managers", "");
      -#endif
      -}
      -
      -//_____________________________________________________________________________
      -void G4RootAnalysisManager::CreateNtupleManagers()
      -{
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()->Message("create", "ntuple managers", "");
      -#endif
      -
      -  switch ( fNtupleMergeMode )
      -  {
      -    case G4NtupleMergeMode::kNone:
      -      fNtupleManager = new G4RootNtupleManager(fState, 0, fNtupleRowWise, fNtupleRowMode);
      -      fNtupleManager->SetFileManager(fFileManager);
      -      SetNtupleManager(fNtupleManager);
      -      break;
      -
      -    case G4NtupleMergeMode::kMain: {
      -      G4int nofMainManagers = fNofNtupleFiles;
      -      if ( ! nofMainManagers ) nofMainManagers = 1;
      -             // create one manager if merging required into the histos & profiles files
      -      fNtupleManager 
      -        = new G4RootNtupleManager(fState, nofMainManagers, fNtupleRowWise, fNtupleRowMode);
      -      fNtupleManager->SetFileManager(fFileManager);
      -      SetNtupleManager(fNtupleManager);
      -      break;
      -    }
      -
      -    case G4NtupleMergeMode::kSlave:
      -      fNtupleManager = fgMasterInstance->fNtupleManager;
      -        // The master class is used only in Get* functions
      -      auto mainNtupleManager 
      -        = fNtupleManager->GetMainNtupleManager(GetNtupleFileNumber()); 
      -      fSlaveNtupleManager 
      -        = new G4RootPNtupleManager(mainNtupleManager, fState, fNtupleRowWise, fNtupleRowMode); 
      -      SetNtupleManager(fSlaveNtupleManager);
      -      break;
      -  }
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL3() ) 
      -    fState.GetVerboseL3()->Message("create", "ntuple managers", "");
      -#endif
      -}
      -
      -//_____________________________________________________________________________
      -G4int G4RootAnalysisManager::GetNtupleFileNumber()
      -{
      -  if ( ! fNofNtupleFiles ) return 0;
      -
      -  G4int nofMainManagers = fNofNtupleFiles;
      -  if ( ! nofMainManagers ) nofMainManagers = 1;
      -
      -  // Debug - check G4Threading::GetNumberOfRunningWorkerThreads()
      -  G4cout << "In GetNtupleFileNumber: "
      -         << G4Threading::GetNumberOfRunningWorkerThreads() << G4endl;
      -
      -  auto fileNumber = G4Threading::G4GetThreadId() % nofMainManagers;
      -  return fileNumber;
      -}
      -
       //_____________________________________________________________________________
       G4bool G4RootAnalysisManager::WriteH1()
       {
      @@ -320,8 +128,7 @@ G4bool G4RootAnalysisManager::WriteH1()
         auto result = true;
       
         if ( ! G4Threading::IsWorkerThread() )  {
      -    auto directory = fFileManager->GetHistoDirectory(); 
      -    result = WriteT(h1Vector, hnVector, directory, "h1");
      +    result = WriteT(h1Vector, hnVector, "h1");
         }  
         else {
           // The worker manager just adds its histograms to the master
      @@ -345,8 +152,7 @@ G4bool G4RootAnalysisManager::WriteH2()
         auto result = true;
         
         if ( ! G4Threading::IsWorkerThread() )  {
      -    auto directory = fFileManager->GetHistoDirectory(); 
      -    result = WriteT(h2Vector, hnVector, directory, "h2");
      +    result = WriteT(h2Vector, hnVector, "h2");
         }  
         else {
           // The worker manager just adds its histograms to the master
      @@ -370,8 +176,7 @@ G4bool G4RootAnalysisManager::WriteH3()
         auto result = true;
         
         if ( ! G4Threading::IsWorkerThread() )  {
      -    auto directory = fFileManager->GetHistoDirectory(); 
      -    result = WriteT(h3Vector, hnVector, directory, "h3");
      +    result = WriteT(h3Vector, hnVector, "h3");
         }  
         else {
           // The worker manager just adds its histograms to the master
      @@ -395,8 +200,7 @@ G4bool G4RootAnalysisManager::WriteP1()
         auto result = true;
         
         if ( ! G4Threading::IsWorkerThread() )  {
      -    auto directory = fFileManager->GetHistoDirectory(); 
      -    result = WriteT(p1Vector, hnVector, directory, "p1");
      +    result = WriteT(p1Vector, hnVector, "p1");
         }  
         else {
           // The worker manager just adds its histograms to the master
      @@ -420,8 +224,7 @@ G4bool G4RootAnalysisManager::WriteP2()
         auto result = true;
         
         if ( ! G4Threading::IsWorkerThread() )  {
      -    auto directory = fFileManager->GetHistoDirectory(); 
      -    result = WriteT(p2Vector, hnVector, directory, "p2");
      +    result = WriteT(p2Vector, hnVector, "p2");
         }  
         else {
           // The worker manager just adds its histograms to the master
      @@ -434,56 +237,6 @@ G4bool G4RootAnalysisManager::WriteP2()
         return result;
       }
           
      -//_____________________________________________________________________________
      -G4bool G4RootAnalysisManager::WriteNtuple()
      -{
      -  if ( fNtupleMergeMode == G4NtupleMergeMode::kNone ) return true;
      -  
      -  auto finalResult = true;
      -
      -  G4String ntupleType;
      -  if ( fNtupleMergeMode == G4NtupleMergeMode::kMain ) ntupleType = "main ntuples";
      -  if ( fNtupleMergeMode == G4NtupleMergeMode::kSlave ) ntupleType = "slave ntuples";
      -
      -#ifdef G4VERBOSE 
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()->Message("merge", ntupleType, "");
      -#endif
      -
      -  if ( fNtupleMergeMode == G4NtupleMergeMode::kMain )  {
      -    auto result = fNtupleManager->Merge();
      -    finalResult = result && finalResult;
      -  }  
      -  
      -  if ( fNtupleMergeMode == G4NtupleMergeMode::kSlave ) {
      -    auto result = fSlaveNtupleManager->Merge();
      -    finalResult = result && finalResult;
      -  }
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()->Message("merge", ntupleType, "");
      -#endif
      -  
      -  return finalResult;
      -}
      -    
      -//_____________________________________________________________________________
      -G4bool G4RootAnalysisManager::ResetNtuple()
      -{
      -// Reset histograms and ntuple
      -
      -  auto finalResult = true;
      -  
      -  if ( fNtupleMergeMode == G4NtupleMergeMode::kNone || 
      -       fNtupleMergeMode == G4NtupleMergeMode::kMain )  {
      -    auto result = fNtupleManager->Reset(false);
      -    finalResult = result && finalResult;
      -  }  
      -
      -  return finalResult;
      -}
      -
       //_____________________________________________________________________________
       G4bool G4RootAnalysisManager::Reset()
       {
      @@ -494,7 +247,7 @@ G4bool G4RootAnalysisManager::Reset()
         auto result = G4ToolsAnalysisManager::Reset();
         finalResult = finalResult && result;
         
      -  result = ResetNtuple();
      +  result = fNtupleFileManager->Reset();
         finalResult = result && finalResult;
         
         return finalResult;
      @@ -507,67 +260,36 @@ G4bool G4RootAnalysisManager::Reset()
       //_____________________________________________________________________________
       G4bool G4RootAnalysisManager::OpenFileImpl(const G4String& fileName)
       {
      +  // Create ntuple manager(s)
      +  // and set it to base class which takes then their ownership
      +  SetNtupleManager(fNtupleFileManager->CreateNtupleManager());
      +
         auto finalResult = true;
      -  auto result = fFileManager->SetFileName(fileName);
      +
      +  // Open file
      +  if ( fNtupleFileManager->GetMergeMode() != G4NtupleMergeMode::kSlave )  {
      +    auto result = fFileManager->OpenFile(fileName);
      +    finalResult = finalResult && result;
      +  }
      +
      +  // Open ntuple file(s) and create ntuples from bookings
      +  auto result = fNtupleFileManager->ActionAtOpenFile(fFileManager->GetFullFileName());
         finalResult = finalResult && result;
       
      -  if ( fNtupleMergeMode == G4NtupleMergeMode::kNone )  {
      -
      -#ifdef G4VERBOSE
      -    G4String name = fFileManager->GetFullFileName();
      -    if ( fState.GetVerboseL4() ) 
      -      fState.GetVerboseL4()->Message("open", "analysis file", name);
      -#endif
      -
      -    result = fFileManager->OpenFile(fileName);
      -    finalResult = finalResult && result;
      -    
      -    fNtupleManager->SetNtupleDirectory(fFileManager->GetNtupleDirectory());
      -
      -    fNtupleManager->CreateNtuplesFromBooking();
      -
      -#ifdef G4VERBOSE
      -    if ( fState.GetVerboseL1() ) 
      -      fState.GetVerboseL1()->Message("open", "analysis file", name, finalResult);
      -#endif
      -  
      -  }
      -
      -  if ( fNtupleMergeMode == G4NtupleMergeMode::kMain )  {
      -
      -#ifdef G4VERBOSE
      -    G4String name = fFileManager->GetFullFileName();
      -    if ( fState.GetVerboseL4() ) 
      -      fState.GetVerboseL4()->Message("open", "main analysis file", name);
      -#endif
      -
      -    fFileManager->SetNofNtupleFiles(fNofNtupleFiles);
      -    result = fFileManager->OpenFile(fileName);
      -    finalResult = finalResult && result;
      -
      -    fNtupleManager->CreateNtuplesFromBooking();
      -
      -#ifdef G4VERBOSE
      -    if ( fState.GetVerboseL1() ) 
      -      fState.GetVerboseL1()->Message("open", "main analysis file", name, finalResult);
      -#endif  
      -  }
      -
      -  if ( fNtupleMergeMode == G4NtupleMergeMode::kSlave )  {
      -    G4cout << "Going to create slave ntuples from main" << G4endl;
      -    // No file is open by Slave manager
      -    fSlaveNtupleManager->CreateNtuplesFromMain();
      -  }
      -
         return finalResult;
       }  
      -  
      +
       //_____________________________________________________________________________
       G4bool G4RootAnalysisManager::WriteImpl() 
       {
       
         auto finalResult = true;
       
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL4() ) 
      +    fState.GetVerboseL4()->Message("write", "files", "");
      +#endif
      +
         if ( ! fgMasterInstance && 
              ( ( ! fH1Manager->IsEmpty() ) || ( ! fH2Manager->IsEmpty() ) || 
                ( ! fH3Manager->IsEmpty() ) || ( ! fP1Manager->IsEmpty() ) || 
      @@ -602,12 +324,13 @@ G4bool G4RootAnalysisManager::WriteImpl()
         finalResult = finalResult && result;
       
         // Ntuples
      -  result = WriteNtuple();
      +  result = fNtupleFileManager->ActionAtWrite();
         finalResult = finalResult && result;
       
         // File
      -  if ( fNtupleMergeMode != G4NtupleMergeMode::kSlave )  {
      -    result = fFileManager->WriteFile();
      +  if ( fNtupleFileManager->GetMergeMode() != G4NtupleMergeMode::kSlave )  {
      +    // write all open files
      +    result = fFileManager->WriteFiles();
           finalResult = finalResult && result;
         }
       
      @@ -617,6 +340,12 @@ G4bool G4RootAnalysisManager::WriteImpl()
           finalResult = finalResult && result;
         }   
       
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL2() ) {
      +    fState.GetVerboseL2()->Message("write", "files", "", finalResult);
      +  }
      +#endif
      +
         return finalResult;
       }
       
      @@ -625,46 +354,51 @@ G4bool G4RootAnalysisManager::CloseFileImpl(G4bool reset)
       {
         auto finalResult = true;
       
      -  G4bool isNtupleManagerEmpty = fNtupleManager->IsEmpty();
      -    // the ntuple decription vector is cleared on Reset()
      -    // in kNoMergeAfterOpen ntuple manager mode 
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL4() ) 
      +    fState.GetVerboseL4()->Message("close", "files", "");
      +#endif
       
         auto result = true;
         if ( reset ) {
           result = Reset();
      -  } else {
      -    // ntuple must be reset 
      -    result = ResetNtuple();
      -  }
      -  if ( ! result ) {
      -    G4ExceptionDescription description;
      -    description << "      " << "Resetting data failed";
      -    G4Exception("G4RootAnalysisManager::CloseFile()",
      -              "Analysis_W021", JustWarning, description);
      +    if ( ! result ) {
      +      G4ExceptionDescription description;
      +      description << "      " << "Resetting data failed";
      +      G4Exception("G4RootAnalysisManager::CloseFile()",
      +                "Analysis_W021", JustWarning, description);
      +    }
         } 
         finalResult = finalResult && result;
       
      -  if ( fNtupleMergeMode != G4NtupleMergeMode::kSlave )  {
      -    // close file
      -    fFileManager->CloseFile(); 
      +  result = fNtupleFileManager->ActionAtCloseFile(reset);
      +  finalResult = finalResult && result;
      +
      +  if ( fNtupleFileManager->GetMergeMode() != G4NtupleMergeMode::kSlave )  {
      +    // close all open files
      +    result = fFileManager->CloseFiles();
      +    finalResult = finalResult && result;
         }
       
         // No files clean-up in sequential mode
         if ( ! G4Threading::IsMultithreadedApplication() )  return finalResult;
       
      +  G4bool isNtupleManagerEmpty = fNtupleBookingManager->IsEmpty();
      +
         // Delete files if empty in MT mode
         if ( ( fState.GetIsMaster() && 
                fH1Manager->IsEmpty() && fH2Manager->IsEmpty() && fH3Manager->IsEmpty() &&
                fP1Manager->IsEmpty() && fP2Manager->IsEmpty() && isNtupleManagerEmpty ) ||
              ( ( ! fState.GetIsMaster() ) && isNtupleManagerEmpty &&
      -             fNtupleMergeMode == G4NtupleMergeMode::kNone ) ) {
      +             fNtupleFileManager->GetMergeMode() == G4NtupleMergeMode::kNone ) ) {
      +
           result = ! std::remove(fFileManager->GetFullFileName());
           //  std::remove returns 0 when success
           if ( ! result ) {
             G4ExceptionDescription description;
             description << "      " << "Removing file " 
                         << fFileManager->GetFullFileName() << " failed";
      -      G4Exception("G4XmlAnalysisManager::CloseFile()",
      +      G4Exception("G4RootAnalysisManager::CloseFile()",
                       "Analysis_W021", JustWarning, description);
           }            
           finalResult = finalResult && result;
      @@ -674,6 +408,13 @@ G4bool G4RootAnalysisManager::CloseFileImpl(G4bool reset)
               ->Message("delete", "empty file", fFileManager->GetFullFileName());
       #endif
         }
      +  else {
      +#ifdef G4VERBOSE
      +    if ( fState.GetVerboseL2() ) 
      +      fState.GetVerboseL2()
      +        ->Message("close", "files", "");
      +#endif
      +  }
       
         return finalResult;
       }
      @@ -685,53 +426,14 @@ G4bool G4RootAnalysisManager::CloseFileImpl(G4bool reset)
       //_____________________________________________________________________________
       void G4RootAnalysisManager::SetNtupleMerging(G4bool mergeNtuples, 
                                                    G4int  nofNtupleFiles)
      -
       {
      -  // Set ntuple merging mode 
      -  SetNtupleMergingMode(mergeNtuples, nofNtupleFiles);
      -
      -  // Clear existing managers
      -  ClearNtupleManagers();  
      -
      -  // Re-create managers
      -  CreateNtupleManagers();
      +  fNtupleFileManager->SetNtupleMerging(mergeNtuples, nofNtupleFiles);
       }
       
       //_____________________________________________________________________________
       void G4RootAnalysisManager::SetNtupleRowWise(G4bool rowWise, G4bool rowMode) 
       {
      -#ifdef G4VERBOSE
      -  // Print info even when setting makes no effect
      -  // (as we do not get printed the default setting in the output)
      -  G4String rowWiseMode;
      -  if ( rowWise ) {
      -    rowWiseMode = "row-wise with extra branch";
      -  } 
      -  else if ( rowMode ) {
      -    rowWiseMode = "row-wise";
      -  }
      -  else {
      -    rowWiseMode = "column-wise"; 
      -  }
      -
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()
      -      ->Message("set", "ntuple merging row mode", rowWiseMode);
      -#endif
      -
      -  // Do nothing if the mode is not changed
      -  if ( fNtupleRowWise == rowWise && fNtupleRowMode == rowMode ) return;
      -
      -  fNtupleRowWise = rowWise;
      -  fNtupleRowMode = rowMode;
      -
      -  if ( fNtupleManager ) {
      -    fNtupleManager->SetNtupleRowWise(rowWise, rowMode);
      -  }
      -
      -  if ( fSlaveNtupleManager ) {
      -    fSlaveNtupleManager->SetNtupleRowWise(rowWise, rowMode);
      -  }
      +  fNtupleFileManager->SetNtupleRowWise(rowWise, rowMode);
       }
       
       //_____________________________________________________________________________
      diff --git a/source/analysis/root/src/G4RootFileManager.cc b/source/analysis/root/src/G4RootFileManager.cc
      index bd13eade1b..6e437175c6 100644
      --- a/source/analysis/root/src/G4RootFileManager.cc
      +++ b/source/analysis/root/src/G4RootFileManager.cc
      @@ -27,29 +27,33 @@
       // Author: Ivana Hrivnacova, 15/06/2011  (ivana@ipno.in2p3.fr)
       
       #include "G4RootFileManager.hh"
      +#include "G4RootHnFileManager.hh"
       #include "G4AnalysisManagerState.hh"
       #include "G4AnalysisUtilities.hh"
       
       #include "tools/wroot/file"
      +#include "tools/wroot/to"
       #include "tools/zlib"
       
       #include 
       #include 
       
      +using namespace tools;
       using namespace G4Analysis;
       
       //_____________________________________________________________________________
       G4RootFileManager::G4RootFileManager(const G4AnalysisManagerState& state)
      - : G4VFileManager(state),
      -   fFile(nullptr),
      -   fHistoDirectory(nullptr),
      -   fNtupleDirectory(nullptr),
      -   fNofNtupleFiles(0),
      -   fNtupleFiles(),
      -   fMainNtupleDirectories(),
      + : G4VTFileManager(state),
          fBasketSize(0),
          fBasketEntries(0)
      -{}
      +{
      +  // Create helpers defined in the base class
      +  fH1FileManager = std::make_shared>(this);
      +  fH2FileManager = std::make_shared>(this);
      +  fH3FileManager = std::make_shared>(this);
      +  fP1FileManager = std::make_shared>(this);
      +  fP2FileManager = std::make_shared>(this);
      +}
       
       //_____________________________________________________________________________
       G4RootFileManager::~G4RootFileManager()
      @@ -60,294 +64,222 @@ G4RootFileManager::~G4RootFileManager()
       //
       
       //_____________________________________________________________________________
      -G4bool G4RootFileManager::OpenNtupleFiles()
      +tools::wroot::directory*  G4RootFileManager::CreateDirectory(
      +  std::shared_ptr rfile,
      +#ifdef G4VERBOSE
      +  const G4String& directoryName, const G4String& objectType) const
      +#else
      +  const G4String& directoryName, const G4String& /*objectType*/) const
      +#endif
       {
      -  auto finalResult = true;
      -
      -  for ( auto i = 0; i < fNofNtupleFiles; i++ ) {
      -    
      -    auto name = GetNtupleFileName(i);
      +  if ( ! rfile ) return nullptr;
       
      +  if ( directoryName == "" ) {
      +    // Do not create a new directory if its name is not set
      +    return &(rfile->dir());
      +  }  
      +  
       #ifdef G4VERBOSE
         if ( fState.GetVerboseL4() ) 
           fState.GetVerboseL4()
      -      ->Message("create", "main ntuple file", name);
      +      ->Message("create", "directory for " + objectType, directoryName);
       #endif
      -
      -    // create new file
      -    auto rfile = std::make_shared(G4cout, name);
      -    rfile->add_ziper('Z', tools::compress_buffer);
      -    rfile->set_compression(fState.GetCompressionLevel());
      -    
      -    if ( ! rfile->is_open() ) {
      -      G4ExceptionDescription description;
      -      description << "      " << "Cannot open file " << name;
      -      G4Exception("G4RootAnalysisManager::OpenFile()",
      -                  "Analysis_W001", JustWarning, description);
      -      finalResult = false;
      -    }
      -
      -    // Do not create directory if extra ntuple files
      -    // auto result = CreateNtupleDirectory(rfile);
      -    // finalResult = finalResult && result;
      -    tools::wroot::directory* directory = &rfile->dir();
      -    if ( fNtupleDirectoryName != "" ) {
      -      directory = rfile->dir().mkdir(fNtupleDirectoryName);
      -      if ( ! directory ) {
      -        G4ExceptionDescription description;
      -        description << "      " 
      -                    << "cannot create directory " << fNtupleDirectoryName;
      -        G4Exception("G4RootFileManager::OpenNtupleFiles()",
      -                    "Analysis_W001", JustWarning, description);
      -        directory = &fFile->dir();
      -      }
      -    }       
      -
      -    fNtupleFiles.push_back(rfile);
      -    fMainNtupleDirectories.push_back(directory);
      -
      +  
      +  auto directory = rfile->dir().mkdir(directoryName);
      +  if ( ! directory ) {
      +    G4ExceptionDescription description;
      +    description << "      " 
      +                << "cannot create directory " << directoryName;
      +    G4Exception("G4RootFileManager::CreateDirectory()",
      +              "Analysis_W001", JustWarning, description);
      +    return nullptr;       
      +  }       
       #ifdef G4VERBOSE
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()
      -      ->Message("create", "main ntuple file", name);
      +  else {
      +    if ( fState.GetVerboseL2() ) 
      +      fState.GetVerboseL2()
      +        ->Message("create", "directory for " + objectType, directoryName);
      +  }    
       #endif
      +  return directory;
      +}
       
      +//_____________________________________________________________________________
      +G4String G4RootFileManager::GetNtupleFileName(
      +                              RootNtupleDescription* ntupleDescription,
      +                              G4bool perThread,
      +                              G4int mainNumber) const
      +{
      +  // get ntuple file name
      +
      +  auto ntupleFileName = ntupleDescription->fFileName;
      +  if ( ntupleFileName.size() ) {
      +    if ( perThread ) {
      +      ntupleFileName = GetTnFileName(ntupleFileName, GetFileType());
      +    }
      +  } else {
      +    // get default file name
      +    ntupleFileName = GetFullFileName(fFileName, perThread);
         }
       
      -  return finalResult;
      +  // update filename per mainNumber
      +  if ( mainNumber > -1 ) {
      +    // update filename per mainNumber
      +    ntupleFileName 
      +      = G4Analysis::GetNtupleFileName(ntupleFileName, GetFileType(), mainNumber);
      +  }
      +
      +  return ntupleFileName;
       }  
       
      -//_____________________________________________________________________________
      -G4bool G4RootFileManager::WriteFile(std::shared_ptr rfile, 
      -#ifdef G4VERBOSE
      -                                    const G4String& fileName)
      -#else
      -                                    const G4String& /*fileName*/)
      -#endif
      -{
      -  // Do nothing if there is no file
      -  if ( ! fIsOpenFile ) return true;
      +//
      +// protected methods
      +//
       
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()->Message("write", "file", fileName);
      -#endif
      +//_____________________________________________________________________________
      +std::shared_ptr 
      +G4RootFileManager::CreateFileImpl(const G4String& fileName)
      +{
      +  // create file
      +  std::shared_ptr file = std::make_shared(G4cout, fileName);
      +  file->add_ziper('Z',compress_buffer);
      +  file->set_compression(fState.GetCompressionLevel());
      +  
      +  if ( ! file->is_open() ) {
      +    G4ExceptionDescription description;
      +    description << "      " << "Cannot create file " << fileName;
      +    G4Exception("G4RootFileManager::CreateFileImpl()",
      +                "Analysis_W001", JustWarning, description);
      +    return std::make_shared(nullptr, nullptr, nullptr);
      +  }
      +
      +  // create histo directory
      +  tools::wroot::directory* hdirectory 
      +    = CreateDirectory(file, fHistoDirectoryName, "histograms");
      +  if ( ! hdirectory ) {
      +    // Warning is issued in CreateDirectory
      +    return std::make_shared(nullptr, nullptr, nullptr);
      +  } 
      +
      +  // create ntuple directory
      +  tools::wroot::directory* ndirectory 
      +    = CreateDirectory(file, fNtupleDirectoryName, "ntuples");
      +  if ( ! ndirectory ) {
      +    // Warning is issued in CreateDirectory
      +    return std::make_shared(nullptr, nullptr, nullptr);
      +  } 
      +
      +  return std::make_shared(file, hdirectory, ndirectory);
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4RootFileManager::WriteFileImpl(std::shared_ptr file)
      +{
      +// New prototype: called by G4TFileManager base classe
      +
      +  if ( ! file ) return false;
       
         unsigned int n;
      -  auto result = rfile->write(n);
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()->Message("write", "file", fileName, result);
      -#endif
      -
      -  return result;
      +  return std::get<0>(*file)->write(n);
       }
      -  
      +
       //_____________________________________________________________________________
      -G4bool G4RootFileManager::CloseFile(std::shared_ptr rfile, 
      -#ifdef G4VERBOSE
      -                                    const G4String& fileName)
      -#else
      -                                    const G4String& /*fileName*/)
      -#endif
      +G4bool G4RootFileManager::CloseFileImpl(std::shared_ptr file)    
       {
      -  // Do nothing if there is no file
      -  if ( ! fIsOpenFile ) return true;
      +// New prototype: called by G4TFileManager base classe
       
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()->Message("close", "file", fileName);
      -#endif
      +  if ( ! file ) return false;
       
      -  rfile->close();
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()->Message("close", "file", fileName, true);
      -#endif
      +  // close file
      +  std::get<0>(*file)->close();
       
         return true;
       }
      -  
      +
       //
       // public methods
       //
       //_____________________________________________________________________________
       G4bool G4RootFileManager::OpenFile(const G4String& fileName)
       {
      +// Open default file
      +
         // Keep file name
         fFileName =  fileName;
         auto name = GetFullFileName();
      -  
      -  // delete previous file if exists
      -  //if ( fFile ) delete fFile;
       
      -  // create new file
      -  fFile = std::make_shared(G4cout, name);
      -  fFile->add_ziper('Z',tools::compress_buffer);
      -  fFile->set_compression(fState.GetCompressionLevel());
      -  
      -  if ( ! fFile->is_open() ) {
      -    fFile = nullptr;
      +  if ( fFile ) {
           G4ExceptionDescription description;
      -    description << "      " << "Cannot open file " << fileName;
      -    G4Exception("G4RootAnalysisManager::OpenFile()",
      +    description << "File " << fileName << " already exists.";
      +    G4Exception("G4RootFileManager::OpenFile()",
      +                "Analysis_W001", JustWarning, description);
      +    fFile.reset();
      +  }
      +
      +  // Create file (and save in in the file map)
      +  fFile = CreateTFile(name);
      +  if ( ! fFile ) {
      +    G4ExceptionDescription description;
      +    description << "Failed to create file " << fileName;
      +    G4Exception("G4RootFileManager::OpenFile()",
                       "Analysis_W001", JustWarning, description);
           return false;
         }
       
      -  // Create directories
      -  if ( ! CreateHistoDirectory() ) return false;
      -  if ( ! CreateNtupleDirectory() ) return false;
      -
      -  // Open ntuple files
      -  OpenNtupleFiles();
      -
      -  fLockFileName = true;
      -  fLockHistoDirectoryName = true;
      -  fLockNtupleDirectoryName = true;
      -
         fIsOpenFile = true;
      +  fLockDirectoryNames = true;
       
         return true;
      -}  
      +}
       
       //_____________________________________________________________________________
      -G4bool G4RootFileManager:: WriteFile()
      +std::shared_ptr G4RootFileManager::CreateNtupleFile(
      +  RootNtupleDescription* ntupleDescription, G4int mainNumber)
      +{
      +  // get ntuple file name per object
      +  auto perThread = true;
      +  auto ntupleFileName = GetNtupleFileName(ntupleDescription, perThread, mainNumber);
      +
      +  auto file = GetTFile(ntupleFileName, false);
      +  if (! file) {
      +    file = CreateTFile(ntupleFileName);
      +  }
      +
      +  // register file in ntuple description only if it is not main ntuple file
      +  // (main ntuple files are managed in main ntuple manager)
      +  if ( mainNumber == -1 ) {
      +    ntupleDescription->fFile = file;
      +  }
      +
      +  return file;
      +}
      +
      +//_____________________________________________________________________________
      +std::shared_ptr G4RootFileManager::GetNtupleFile(
      +  RootNtupleDescription* ntupleDescription,  G4bool perThread, G4int mainNumber) const
      +{
      +  // get ntuple file name per object
      +  auto ntupleFileName = GetNtupleFileName(ntupleDescription, perThread, mainNumber);
      +
      +  return GetTFile(ntupleFileName, false);
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4RootFileManager::CloseNtupleFile(
      +  RootNtupleDescription* ntupleDescription)
       {
         auto finalResult = true;
       
      -  auto result = WriteFile(fFile, GetFullFileName());
      -  finalResult = finalResult && result;
      -
      -  auto counter = 0;
      -  for ( auto ntupleFile : fNtupleFiles ) {
      -    result = WriteFile(ntupleFile, GetNtupleFileName(counter++));
      -    finalResult = finalResult && result;
      +  if ( ntupleDescription->fFile ) {
      +    // Ntuple files are registered in file manager map.
      +    // they will be closed with CloseFiles() calls
      +    ntupleDescription->fFile.reset();
      +    // Notify not empty file
      +    auto ntupleFileName = GetNtupleFileName(ntupleDescription);
      +    auto result = SetIsEmpty(ntupleFileName, ! ntupleDescription->fHasFill);
      +    finalResult = result && finalResult;
         }
      +
         return finalResult;
       }
       
      -//_____________________________________________________________________________
      -G4bool G4RootFileManager::CloseFile()
      -{
      -  auto finalResult = true;
      -
      -  auto result = CloseFile(fFile, GetFullFileName());
      -  finalResult = finalResult && result;
      -
      -  auto counter = 0;
      -  for ( auto ntupleFile : fNtupleFiles ) {
      -    result = CloseFile(ntupleFile, GetNtupleFileName(counter++));
      -    finalResult = finalResult && result;
      -  }
      -
      -  fLockFileName = false;
      -  fIsOpenFile = false;
      -
      -  return finalResult;
      -} 
      -   
      -//_____________________________________________________________________________
      -G4bool G4RootFileManager::CreateHistoDirectory()
      -{
      -  if ( fHistoDirectoryName == "" ) {
      -    // Do not create a new directory if its name is not set
      -    fHistoDirectory = &(fFile->dir());
      -    return true;
      -  }  
      -  
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()
      -      ->Message("create", "directory for histograms", fHistoDirectoryName);
      -#endif
      -  
      -  fHistoDirectory = fFile->dir().mkdir(fHistoDirectoryName);
      -  if ( ! fHistoDirectory ) {
      -    G4ExceptionDescription description;
      -    description << "      " 
      -                << "cannot create directory " << fHistoDirectoryName;
      -    G4Exception("G4RootFileManager::CreateHistoDirectory()",
      -              "Analysis_W001", JustWarning, description);
      -    return false;       
      -  }       
      -#ifdef G4VERBOSE
      -  else {
      -    if ( fState.GetVerboseL2() ) 
      -      fState.GetVerboseL2()
      -        ->Message("create", "directory for histograms", fHistoDirectoryName);
      -  }    
      -#endif
      -  return true;
      -}
      -
      -//_____________________________________________________________________________
      -G4bool G4RootFileManager::CreateNtupleDirectory()
      -{
      -  if ( fNtupleDirectoryName == "" ) {
      -    // Do not create a new directory if its name is not set
      -    fNtupleDirectory = &(fFile->dir());
      -    return true;
      -  }  
      -  
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()
      -      ->Message("create", "directory for ntuples", fNtupleDirectoryName);
      -#endif
      -
      -  fNtupleDirectory = fFile->dir().mkdir(fNtupleDirectoryName);
      -  if ( ! fNtupleDirectory ) {
      -    G4ExceptionDescription description;
      -    description << "      " 
      -                << "cannot create directory " << fNtupleDirectoryName;
      -    G4Exception("G4RootFileManager::CreateNtupleDirectory()",
      -                "Analysis_W001", JustWarning, description);
      -    return false;       
      -  }       
      -#ifdef G4VERBOSE
      -  else {
      -    if ( fState.GetVerboseL2() ) 
      -      fState.GetVerboseL2()
      -        ->Message("create", "directory for ntuples", fNtupleDirectoryName);
      -  }    
      -#endif
      -  return true;
      -}
      -
      -//_____________________________________________________________________________
      -std::shared_ptr 
      -G4RootFileManager::GetNtupleFile(G4int index) const
      -{ 
      -  if ( index==0 && ( ! fNtupleFiles.size() ) ) return fFile;
      -
      -  if ( index < 0 || index >= G4int(fNtupleFiles.size()) ) {
      -    G4String inFunction = "G4RootFileManager::GetNtupleFile()";
      -    G4ExceptionDescription description;
      -    description << "      " << "ntuple file " << index << " does not exist.";
      -    G4Exception(inFunction, "Analysis_W011", JustWarning, description);
      -    return nullptr;         
      -  }
      -
      -  return fNtupleFiles[index]; 
      -}
      -
      -//_____________________________________________________________________________
      -tools::wroot::directory*
      -G4RootFileManager::GetMainNtupleDirectory(G4int index) const
      -{ 
      -  if ( index==0 && ( ! fMainNtupleDirectories.size() ) ) return fNtupleDirectory;
      -
      -  if ( index < 0 || index >= G4int(fMainNtupleDirectories.size()) ) {
      -    G4String inFunction = "G4RootFileManager::GetMainNtupleDirectory()";
      -    G4ExceptionDescription description;
      -    description << "      " << "main ntuple directory " << index << " does not exist.";
      -    G4Exception(inFunction, "Analysis_W011", JustWarning, description);
      -    return nullptr;         
      -  }
      -
      -  return fMainNtupleDirectories[index]; 
      -}
      -
      diff --git a/source/analysis/root/src/G4RootMainNtupleManager.cc b/source/analysis/root/src/G4RootMainNtupleManager.cc
      index f4301b8d58..16ab891898 100644
      --- a/source/analysis/root/src/G4RootMainNtupleManager.cc
      +++ b/source/analysis/root/src/G4RootMainNtupleManager.cc
      @@ -27,6 +27,7 @@
       // Author: Ivana Hrivnacova, 04/10/2016  (ivana@ipno.in2p3.fr)
       
       #include "G4RootMainNtupleManager.hh"
      +#include "G4RootFileManager.hh"
       #include "G4RootNtupleManager.hh"
       #include "G4AnalysisUtilities.hh"
       
      @@ -34,14 +35,20 @@
       #include "tools/wroot/ntuple"
       
       //_____________________________________________________________________________
      -G4RootMainNtupleManager::G4RootMainNtupleManager(G4RootNtupleManager* ntupleBuilder,
      -                                                 G4bool rowWise,
      -                                                 const G4AnalysisManagerState& state)
      +G4RootMainNtupleManager::G4RootMainNtupleManager(
      +                G4RootNtupleManager* ntupleBuilder,
      +                G4NtupleBookingManager* bookingManager,
      +                G4bool rowWise,
      +                G4int fileNumber,
      +                const G4AnalysisManagerState& state)
        : G4BaseAnalysisManager(state),
          fNtupleBuilder(ntupleBuilder),
      +   fBookingManager(bookingManager),
      +   fFileManager(nullptr),
          fRowWise(rowWise),
      -   fNtupleDirectory(nullptr),
      -   fNtupleVector()
      +   fFileNumber(fileNumber),
      +   fNtupleVector(),
      +   fNtupleDescriptionVector()
       {}
       
       //_____________________________________________________________________________
      @@ -55,25 +62,28 @@ G4RootMainNtupleManager::~G4RootMainNtupleManager()
       //
       
       //_____________________________________________________________________________
      -void G4RootMainNtupleManager::CreateNtuple(const tools::ntuple_booking& ntupleBooking,
      +void G4RootMainNtupleManager::CreateNtuple(RootNtupleDescription* ntupleDescription,
                                                  G4bool warn)
       {
       // Create ntuple from booking if file was open
       
      -  // Check that file is set
      -  if ( ! fNtupleDirectory ) {
      +  // Get/Create main ntuple file
      +  auto ntupleFile = fFileManager->CreateNtupleFile(ntupleDescription, fFileNumber);
      +  if ( ! ntupleFile ) {
           if ( warn ) {
             G4ExceptionDescription description;
             description 
      -        << "      " << "Ntuple file must be defined first." 
      -        << G4endl 
      -        << "      " << "Cannot create main ntuples from builder.";
      -        G4Exception("G4RootAnalysisManager::CreateNtuplesFromBooking",
      +        << "Ntuple file must be defined first."  << G4endl 
      +        << "Cannot create main ntuple.";
      +        G4Exception("G4RootMainAnalysisManager::CreateNtuple",
                         "Analysis_W002", JustWarning, description);
             }
           return;
         }
       
      +  // Get ntuple booking
      +  auto ntupleBooking = ntupleDescription->fNtupleBooking;
      +
       #ifdef G4VERBOSE
         if ( fState.GetVerboseL4() ) 
           fState.GetVerboseL4()
      @@ -81,12 +91,13 @@ void G4RootMainNtupleManager::CreateNtuple(const tools::ntuple_booking& ntupleBo
       #endif
       
         // Create ntuple
      -  auto ntuple = new tools::wroot::ntuple(*fNtupleDirectory, ntupleBooking, fRowWise);
      +  auto ntuple = new tools::wroot::ntuple(*std::get<2>(*ntupleFile), ntupleBooking, fRowWise);
                // ntuple object is deleted automatically when closing a file
         auto basketSize = fNtupleBuilder->GetBasketSize();
         ntuple->set_basket_size(basketSize);
       
         fNtupleVector.push_back(ntuple);
      +  fNtupleDescriptionVector.push_back(ntupleDescription);
       
       #ifdef G4VERBOSE
         if ( fState.GetVerboseL3() ) 
      @@ -95,36 +106,20 @@ void G4RootMainNtupleManager::CreateNtuple(const tools::ntuple_booking& ntupleBo
       #endif
       }
       
      -//_____________________________________________________________________________
      -void G4RootMainNtupleManager::CreateNtuplesFromBooking()
      -{
      -// Create ntuple from booking in master 
      -
      -  // Check that file is set
      -  if ( ! fNtupleDirectory ) {
      -    G4ExceptionDescription description;
      -    description 
      -      << "      " << "Ntuple file must be defined first." 
      -      << G4endl 
      -      << "      " << "Cannot create main ntuples from builder.";
      -      G4Exception("G4RootAnalysisManager::CreateNtuplesFromBooking",
      -                "Analysis_W002", JustWarning, description);
      -    return;
      -  }
      -
      -  auto& ntupleDescriptionVector 
      -    = fNtupleBuilder->GetNtupleDescriptionVector();
      -
      -  for ( auto ntupleDescription : ntupleDescriptionVector ) {    
      -    CreateNtuple(ntupleDescription->fNtupleBooking);
      -  }
      -}   
      -
       //_____________________________________________________________________________
       G4bool G4RootMainNtupleManager::Merge()
       {
      +  std::size_t counter = 0;
      +
         for ( auto ntuple : fNtupleVector ) {
           ntuple->merge_number_of_entries();
      +
      +    // Notify ntuple description that file is not empty
      +    if ( ntuple->entries() ) {
      +      auto ntupleDescription = fNtupleDescriptionVector.at(counter);
      +      ntupleDescription->fHasFill = true;
      +    }
      +    ++counter;
         }
       
         return true;
      @@ -140,6 +135,15 @@ G4bool G4RootMainNtupleManager::Reset(G4bool deleteNtuple)
         }
       
         fNtupleVector.clear(); 
      +  fNtupleDescriptionVector.clear(); 
         
         return true;
       }
      +
      +//_____________________________________________________________________________
      +std::shared_ptr 
      +G4RootMainNtupleManager::GetNtupleFile(RootNtupleDescription* ntupleDescription) const
      +{ 
      +  auto perThread = false;
      +  return fFileManager->GetNtupleFile(ntupleDescription, perThread, fFileNumber);
      +}
      diff --git a/source/analysis/root/src/G4RootNtupleFileManager.cc b/source/analysis/root/src/G4RootNtupleFileManager.cc
      new file mode 100644
      index 0000000000..09d4a03e39
      --- /dev/null
      +++ b/source/analysis/root/src/G4RootNtupleFileManager.cc
      @@ -0,0 +1,460 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Author: Ivana Hrivnacova, 15/09/2020 (ivana@ipno.in2p3.fr)
      +
      +#include "G4RootNtupleFileManager.hh"
      +#include "G4RootFileManager.hh"
      +#include "G4RootNtupleManager.hh"
      +#include "G4RootMainNtupleManager.hh"
      +#include "G4RootPNtupleManager.hh"
      +#include "G4VAnalysisManager.hh"
      +#include "G4AnalysisVerbose.hh"
      +#include "G4AnalysisManagerState.hh"
      +#include "G4AnalysisUtilities.hh"
      +
      +#include "G4Threading.hh"
      +#include "G4AutoLock.hh"
      +
      +#include 
      +#include 
      +
      +namespace {
      +
      +void MergingException(const G4String& functionName,
      +                      G4ExceptionDescription& description)
      +{
      +  G4String inFunction = "G4RootNtupleFileManager::" + functionName;
      +  G4Exception(inFunction, "Analysis_W013", JustWarning, description);
      +}
      +
      +}
      +
      +using namespace G4Analysis;
      +using std::make_shared;
      +
      +G4RootNtupleFileManager* G4RootNtupleFileManager::fgMasterInstance = nullptr;
      +
      +//_____________________________________________________________________________
      +G4RootNtupleFileManager::G4RootNtupleFileManager(const G4AnalysisManagerState& state)
      + : G4VNtupleFileManager(state, "root"),
      +   fIsInitialized(false),
      +   fNofNtupleFiles(0),
      +   fNtupleRowWise(false),
      +   fNtupleRowMode(true),
      +   fNtupleMergeMode(G4NtupleMergeMode::kNone),
      +   fNtupleManager(nullptr),
      +   fSlaveNtupleManager(nullptr),
      +   fFileManager(nullptr)
      +{
      +  if ( G4Threading::IsMasterThread() && fgMasterInstance ) {
      +    G4ExceptionDescription description;
      +    description 
      +      << "      " 
      +      << "G4RootNtupleFileManager already exists." 
      +      << "Cannot create another instance.";
      +    G4Exception("G4RootNtupleFileManager::G4RootNtupleFileManager()",
      +                "Analysis_F001", FatalException, description);
      +  }
      +  if ( G4Threading::IsMasterThread() ) fgMasterInstance = this;
      +
      +  // Do not merge ntuples by default
      +  // Merging may require user code migration as analysis manager
      +  // must be created both on master and workers.
      +  auto mergeNtuples = false;
      +  SetNtupleMergingMode(mergeNtuples, fNofNtupleFiles);
      +}
      +
      +//_____________________________________________________________________________
      +G4RootNtupleFileManager::~G4RootNtupleFileManager()
      +{
      +  if ( fState.GetIsMaster() ) fgMasterInstance = nullptr;  
      +}
      +
      +// 
      +// private methods
      +//
      +
      +//_____________________________________________________________________________
      +void G4RootNtupleFileManager::SetNtupleMergingMode(G4bool mergeNtuples, 
      +                                                 G4int nofNtupleFiles)
      +
      +{
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL4() ) {
      +    fState.GetVerboseL4()->Message("set", "ntuple merging mode", "");
      +  }
      +#endif
      +
      +  auto canMerge = true;
      +
      +  // Illegal situations
      +  if ( mergeNtuples && ( ! G4Threading::IsMultithreadedApplication() ) ) {
      +    G4ExceptionDescription description;
      +    description
      +      << "Merging ntuples is not applicable in sequential application." << G4endl
      +      << "Setting was ignored.";
      +      MergingException("SetNtupleMergingMode", description);
      +    canMerge = false;      
      +  }
      +
      +  // Illegal situations
      +  if ( mergeNtuples && G4Threading::IsMultithreadedApplication() &&
      +       ( ! fgMasterInstance ) ) {
      +    G4ExceptionDescription description;
      +    description
      +      << "Merging ntuples requires G4AnalysisManager instance on master." << G4endl
      +      << "Setting was ignored.";
      +    MergingException("SetNtupleMergingMode", description);
      +    canMerge = false;      
      +  }
      +
      +  G4String mergingMode;
      +  if ( ( ! mergeNtuples ) || ( ! canMerge ) ) {
      +    fNtupleMergeMode = G4NtupleMergeMode::kNone;
      +    mergingMode = "G4NtupleMergeMode::kNone";
      +  }
      +  else {
      +    // Set the number of reduced ntuple files
      +    fNofNtupleFiles = nofNtupleFiles;
      +  
      +    // Check the number of reduced ntuple files
      +    if ( fNofNtupleFiles < 0  ) {
      +      G4ExceptionDescription description;
      +      description 
      +        << "Number of reduced files must be [0, nofThreads]." << G4endl 
      +        << "Cannot set  " <<  nofNtupleFiles << " files" << G4endl   
      +        << "Ntuples will be merged in a single file.";
      +      MergingException("SetNtupleMergingMode", description);
      +      fNofNtupleFiles = 0;
      +    }
      +  
      +    // Forced merging mode
      +    G4bool isMaster = ! G4Threading::IsWorkerThread();
      +    if ( isMaster ) {
      +      fNtupleMergeMode = G4NtupleMergeMode::kMain;
      +      mergingMode = "G4NtupleMergeMode::kMain";
      +    } else {
      +      fNtupleMergeMode = G4NtupleMergeMode::kSlave;    
      +      mergingMode = "G4NtupleMergeMode::kSlave";
      +    }
      +  }
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL2() ) {
      +    fState.GetVerboseL2()->Message("set", "ntuple merging mode", mergingMode);
      +  }
      +#endif
      +}
      +
      +//_____________________________________________________________________________
      +G4int G4RootNtupleFileManager::GetNtupleFileNumber()
      +{
      +  if ( ! fNofNtupleFiles ) return 0;
      +
      +  G4int nofMainManagers = fNofNtupleFiles;
      +  if ( ! nofMainManagers ) nofMainManagers = 1;
      +
      +  auto fileNumber = G4Threading::G4GetThreadId() % nofMainManagers;
      +  return fileNumber;
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4RootNtupleFileManager::CloseNtupleFiles()
      +{
      + // Close ntuple files
      +
      +  auto finalResult = true;
      +  auto ntupleVector = fNtupleManager->GetNtupleDescriptionVector();
      +  for ( auto ntupleDescription : ntupleVector) {
      +    auto result = fFileManager->CloseNtupleFile(ntupleDescription);
      +    finalResult = finalResult && result;
      +  }
      +
      +  return finalResult;
      +}
      +
      +// 
      +// public methods
      +//
      +
      +//_____________________________________________________________________________
      +void G4RootNtupleFileManager::SetNtupleMerging(G4bool mergeNtuples, 
      +                                               G4int  nofNtupleFiles)
      +
      +{
      +  if ( fIsInitialized ) {
      +      G4ExceptionDescription description;
      +      description 
      +        << "Cannot change merging mode." << G4endl
      +        << "The function must be called before OpenFile().";
      +      MergingException("SetNtupleMerging", description);
      +      return;
      +  }
      +
      +  // Set ntuple merging mode 
      +  SetNtupleMergingMode(mergeNtuples, nofNtupleFiles);
      +}
      +
      +//_____________________________________________________________________________
      +void G4RootNtupleFileManager::SetNtupleRowWise(G4bool rowWise, G4bool rowMode) 
      +{
      +#ifdef G4VERBOSE
      +  // Print info even when setting makes no effect
      +  // (as we do not get printed the default setting in the output)
      +  G4String rowWiseMode;
      +  if ( rowWise ) {
      +    rowWiseMode = "row-wise with extra branch";
      +  } 
      +  else if ( rowMode ) {
      +    rowWiseMode = "row-wise";
      +  }
      +  else {
      +    rowWiseMode = "column-wise"; 
      +  }
      +
      +  if ( fState.GetVerboseL1() ) 
      +    fState.GetVerboseL1()
      +      ->Message("set", "ntuple merging row mode", rowWiseMode);
      +#endif
      +
      +  // Do nothing if the mode is not changed
      +  if ( fNtupleRowWise == rowWise && fNtupleRowMode == rowMode ) return;
      +
      +  fNtupleRowWise = rowWise;
      +  fNtupleRowMode = rowMode;
      +
      +  if ( fNtupleManager ) {
      +    fNtupleManager->SetNtupleRowWise(rowWise, rowMode);
      +  }
      +
      +  if ( fSlaveNtupleManager ) {
      +    fSlaveNtupleManager->SetNtupleRowWise(rowWise, rowMode);
      +  }
      +}
      +
      +//_____________________________________________________________________________
      +void G4RootNtupleFileManager::SetBasketSize(unsigned int basketSize) 
      +{
      +  fFileManager->SetBasketSize(basketSize);
      +}
      +
      +//_____________________________________________________________________________
      +void G4RootNtupleFileManager::SetBasketEntries(unsigned int basketEntries)
      +{
      +  fFileManager->SetBasketEntries(basketEntries);
      +}
      +
      +//_____________________________________________________________________________
      +std::shared_ptr G4RootNtupleFileManager::CreateNtupleManager()
      +{
      +// Create and return ntuple manager.
      +// If ntuple merging is activated, managers of different types are created
      +// on master/worker.
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL4() ) 
      +    fState.GetVerboseL4()->Message("create", "ntuple manager", "");
      +#endif
      +
      +  // Check that file manager and anaysis manager are set !
      +
      +  std::shared_ptr activeNtupleManager = nullptr;
      +  switch ( fNtupleMergeMode )
      +  {
      +    case G4NtupleMergeMode::kNone:
      +      fNtupleManager 
      +        = make_shared(
      +            fState, fBookingManager, 0, 0, fNtupleRowWise, fNtupleRowMode);
      +      fNtupleManager->SetFileManager(fFileManager);
      +      activeNtupleManager = fNtupleManager;
      +      break;
      +
      +    case G4NtupleMergeMode::kMain: {
      +      G4int nofMainManagers = fNofNtupleFiles;
      +      if ( ! nofMainManagers ) nofMainManagers = 1;
      +             // create one manager if merging required into the histos & profiles files
      +      fNtupleManager 
      +        = make_shared(
      +            fState, fBookingManager, nofMainManagers, fNofNtupleFiles, fNtupleRowWise, fNtupleRowMode);
      +      fNtupleManager->SetFileManager(fFileManager);
      +      activeNtupleManager = fNtupleManager;
      +      break;
      +    }
      +
      +    case G4NtupleMergeMode::kSlave:
      +      fNtupleManager = fgMasterInstance->fNtupleManager;
      +        // The master class is used only in Get* functions
      +      auto mainNtupleManager 
      +        = fNtupleManager->GetMainNtupleManager(GetNtupleFileNumber()); 
      +      fSlaveNtupleManager 
      +        = make_shared(
      +            fState, fgMasterInstance->fBookingManager, mainNtupleManager, fNtupleRowWise, fNtupleRowMode); 
      +      activeNtupleManager = fSlaveNtupleManager;
      +      break;
      +  }
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL3() ) {
      +    G4String mergeMode;
      +    switch ( fNtupleMergeMode ) {
      +      case G4NtupleMergeMode::kNone:
      +        mergeMode = "";
      +        break;
      +      case G4NtupleMergeMode::kMain:
      +        mergeMode = "main ";
      +        break;
      +      case G4NtupleMergeMode::kSlave:
      +        mergeMode = "slave ";
      +        break;
      +    }
      +    fState.GetVerboseL3()->Message("create", mergeMode + "ntuple manager", "");
      +  }
      +#endif
      +
      +  fIsInitialized = true;
      +
      +  return activeNtupleManager;
      +}
      +
      +//_____________________________________________________________________________
      +#ifdef G4VERBOSE
      +G4bool G4RootNtupleFileManager::ActionAtOpenFile(const G4String& fileName)
      +#else
      +G4bool G4RootNtupleFileManager::ActionAtOpenFile(const G4String& /*fileName*/)
      +#endif
      +{
      +  // Check if fNtupleBookingManager is set
      +
      +  auto finalResult = true;
      +
      +  if ( fNtupleMergeMode == G4NtupleMergeMode::kNone || 
      +       fNtupleMergeMode == G4NtupleMergeMode::kMain )  {
      +
      +#ifdef G4VERBOSE
      +    G4String objectType = "analysis file";
      +    if ( fNtupleMergeMode == G4NtupleMergeMode::kMain ) {
      +      objectType = "main analysis file";
      +    }
      +    if ( fState.GetVerboseL4() ) 
      +      fState.GetVerboseL4()->Message("open", objectType, fileName);
      +#endif
      +
      +    // Creating files is triggered from CreateNtuple
      +    fNtupleManager->CreateNtuplesFromBooking(
      +      fBookingManager->GetNtupleBookingVector());
      +
      +#ifdef G4VERBOSE
      +    if ( fState.GetVerboseL1() )  {
      +      fState.GetVerboseL1()->Message("open", objectType, fileName, finalResult);
      +    }
      +#endif
      +  }
      +
      +  if ( fNtupleMergeMode == G4NtupleMergeMode::kSlave )  {
      +    // G4cout << "Going to create slave ntuples from main" << G4endl;
      +    fSlaveNtupleManager->CreateNtuplesFromMain();
      +  }
      +
      +  return finalResult;
      +}  
      +  
      +//_____________________________________________________________________________
      +G4bool G4RootNtupleFileManager::ActionAtWrite()
      +{
      +  if ( fNtupleMergeMode == G4NtupleMergeMode::kNone ) {
      +    return true;
      +  }
      +  
      +  auto finalResult = true;
      +
      +  G4String ntupleType;
      +  if ( fNtupleMergeMode == G4NtupleMergeMode::kMain ) ntupleType = "main ntuples";
      +  if ( fNtupleMergeMode == G4NtupleMergeMode::kSlave ) ntupleType = "slave ntuples";
      +
      +#ifdef G4VERBOSE 
      +  if ( fState.GetVerboseL4() ) 
      +    fState.GetVerboseL4()->Message("merge", ntupleType, "");
      +#endif
      +
      +  if ( fNtupleMergeMode == G4NtupleMergeMode::kMain )  {
      +    auto result = fNtupleManager->Merge();
      +    finalResult = result && finalResult;
      +  }  
      +  
      +  if ( fNtupleMergeMode == G4NtupleMergeMode::kSlave ) {
      +    auto result = fSlaveNtupleManager->Merge();
      +    finalResult = result && finalResult;
      +  }
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL1() ) 
      +    fState.GetVerboseL1()->Message("merge", ntupleType, "");
      +#endif
      +  
      +  return finalResult;
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4RootNtupleFileManager::ActionAtCloseFile(G4bool reset)
      +{
      +  auto finalResult = true;
      +
      +  // close files
      +  if ( fNtupleMergeMode != G4NtupleMergeMode::kSlave )  {
      +    auto result = CloseNtupleFiles();
      +    finalResult = finalResult && result;
      +  }
      +
      +  if ( ! reset ) {
      +    // The ntuples must be always reset when closing file) 
      +    auto result = Reset();
      +    if ( ! result ) {
      +      G4ExceptionDescription description;
      +      description << "      " << "Resetting data failed";
      +      G4Exception("G4RootNtupleFileManager::CloseFile()",
      +                "Analysis_W021", JustWarning, description);
      +    }
      +    finalResult = finalResult && result;
      +  }
      +
      +  return finalResult;
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4RootNtupleFileManager::Reset()
      +{
      +// Reset ntuples
      +
      +  auto result = true;
      +  
      +  if ( fNtupleMergeMode == G4NtupleMergeMode::kNone || 
      +       fNtupleMergeMode == G4NtupleMergeMode::kMain )  {
      +    result = fNtupleManager->Reset(false);
      +  }  
      +
      +  return result;
      +}
      diff --git a/source/analysis/root/src/G4RootNtupleManager.cc b/source/analysis/root/src/G4RootNtupleManager.cc
      index ad526990a3..ea081cd4aa 100644
      --- a/source/analysis/root/src/G4RootNtupleManager.cc
      +++ b/source/analysis/root/src/G4RootNtupleManager.cc
      @@ -38,19 +38,25 @@ using namespace G4Analysis;
       
       //_____________________________________________________________________________
       G4RootNtupleManager::G4RootNtupleManager(const G4AnalysisManagerState& state,
      -                                         G4int nofMainManagers,
      -                                         G4bool rowWise, G4bool rowMode)
      - : G4TNtupleManager(state),
      -   fCreateMode(G4NtupleCreateMode::kUndefined),
      +                       std::shared_ptr bookingManger,
      +                       G4int nofMainManagers, G4int nofFiles,
      +                       G4bool rowWise, G4bool rowMode)
      + : G4TNtupleManager(state),
          fFileManager(nullptr),
      -   fNtupleDirectory(nullptr),
          fMainNtupleManagers(),
      +   fNtupleFile(nullptr),
          fRowWise(rowWise),
          fRowMode(rowMode)
       {
         for ( G4int i=0; i(
      +        this, bookingManger.get(), rowWise, fileNumber, fState));
         }
       }
       
      @@ -62,161 +68,65 @@ G4RootNtupleManager::~G4RootNtupleManager()
       // private methods
       //
       
      -//_____________________________________________________________________________
      -void G4RootNtupleManager::SetCreateMode()
      -{
      -// Set create mode if not yet defined, or reset it if ntuples are defined both
      -// before and after open file 
      -
      -#ifdef G4VERBOSE
      -    if ( fState.GetVerboseL4() ) 
      -      fState.GetVerboseL4()
      -        ->Message("set", "ntuple create mode", "");
      -#endif
      -
      -  G4String createMode;
      -  if ( fCreateMode == G4NtupleCreateMode::kUndefined ) {
      -    if ( fMainNtupleManagers.size() ) {
      -      if ( fFileManager->GetNtupleFile(0) ) {
      -        fCreateMode = G4NtupleCreateMode::kMainAfterOpen;
      -        createMode = "G4NtupleCreateMode::kMainAfterOpen";
      -      } else {
      -        fCreateMode = G4NtupleCreateMode::kMainBeforeOpen;
      -        createMode = "G4NtupleCreateMode::kMainBeforeOpen";
      -      }
      -    }
      -    else {
      -      if ( fNtupleDirectory ) {
      -        fCreateMode = G4NtupleCreateMode::kNoMergeAfterOpen;
      -        createMode = "G4NtupleCreateMode::kNoMergeAfterOpen";
      -      } else {
      -        fCreateMode = G4NtupleCreateMode::kNoMergeBeforeOpen;
      -        createMode = "G4NtupleCreateMode::kNoMergeBeforeOpen";
      -      }
      -    }
      -  }
      -  
      -  if ( fCreateMode == G4NtupleCreateMode::kNoMergeBeforeOpen &&
      -    fFileManager->GetNtupleFile(0) )  {
      -    fCreateMode = G4NtupleCreateMode::kNoMergeAfterOpen;
      -    createMode = "G4NtupleCreateMode::kNoMergeAfterOpen";
      -  }
      -
      -  if ( fCreateMode == G4NtupleCreateMode::kMainBeforeOpen &&
      -       fFileManager->GetNtupleFile(0) )  {
      -    fCreateMode = G4NtupleCreateMode::kMainAfterOpen;
      -    createMode = "G4NtupleCreateMode::kMainAfterOpen";
      -  }
      -
      -#ifdef G4VERBOSE
      -    if ( fState.GetVerboseL2() ) 
      -      fState.GetVerboseL2()
      -        ->Message("set", "ntuple create mode", createMode);
      -#endif
      -}
      -
      -//_____________________________________________________________________________
      -void G4RootNtupleManager::SetNtupleRowWise(G4bool rowWise, G4bool rowMode)
      -{
      -// Set rowWise mode and propagate it to main ntuple managers
      -
      -  fRowWise = rowWise;
      -  fRowMode = rowMode;
      -
      -  for (auto& mainNtupleManager : fMainNtupleManagers ) {
      -    mainNtupleManager->SetRowWise(rowWise);
      -  }
      -}
      -
      -
      -//_____________________________________________________________________________
      -void  G4RootNtupleManager::CreateTNtuple(
      -  G4TNtupleDescription* ntupleDescription)
      -{
      -  if ( ! fNtupleDirectory ) {
      -    G4String inFunction = "G4RootNtupleManager::::CreateTNtuple";
      -    G4ExceptionDescription description;
      -    description << "      " 
      -      << "Cannot create ntuple. Ntuple directory does not exist." << G4endl;
      -    G4Exception(inFunction, "Analysis_W002", JustWarning, description);
      -    return;
      -  }
      -  
      -  ntupleDescription->fNtuple
      -    = new tools::wroot::ntuple(
      -            *fNtupleDirectory, ntupleDescription->fNtupleBooking, fRowWise);
      -  
      -  auto basketSize = fFileManager->GetBasketSize();
      -  ntupleDescription->fNtuple->set_basket_size(basketSize);
      -  
      -  ntupleDescription->fIsNtupleOwner = false;  
      -         // ntuple object is deleted automatically when closing a file
      -  fNtupleVector.push_back(ntupleDescription->fNtuple);
      -}
      -
       //_____________________________________________________________________________
       void G4RootNtupleManager::CreateTNtupleFromBooking(
      -  G4TNtupleDescription* ntupleDescription)
      +  RootNtupleDescription* ntupleDescription)
       {
      -  if ( fCreateMode == G4NtupleCreateMode::kNoMergeBeforeOpen ) {
      +  if ( ! fMainNtupleManagers.size() ) {
      +    // No merging
      +    if ( ntupleDescription->fNtuple ) {
      +      G4String inFunction = "G4RootNtupleManager::::CreateTNtupleFromBooking";
      +      G4ExceptionDescription description;
      +      description << "Cannot create ntuple. Ntuple already exists." << G4endl;
      +      G4Exception(inFunction, "Analysis_W002", JustWarning, description);
      +      return;
      +    }        
         
      -    CreateTNtuple(ntupleDescription);
      -  }
      -  
      -  if ( fCreateMode == G4NtupleCreateMode::kMainBeforeOpen ) {
      -    auto counter = 0;
      +    // Create ntuple file from ntuple description
      +    auto ntupleFile = fFileManager->CreateNtupleFile(ntupleDescription);
      +    if ( ! ntupleFile ) {
      +      G4String inFunction = "G4RootNtupleManager::::CreateTNtupleFromBooking";
      +      G4ExceptionDescription description;
      +      description << "Cannot create ntuple. Ntuple file does not exist." << G4endl;
      +      G4Exception(inFunction, "Analysis_W002", JustWarning, description);
      +      return;
      +    }
      +    
      +    auto directory = std::get<2>(*ntupleFile);
      +    ntupleDescription->fNtuple
      +      = new tools::wroot::ntuple(
      +              *directory, ntupleDescription->fNtupleBooking, fRowWise);
      +    
      +    auto basketSize = fFileManager->GetBasketSize();
      +    ntupleDescription->fNtuple->set_basket_size(basketSize);
      +    
      +    ntupleDescription->fIsNtupleOwner = false;  
      +           // ntuple object is deleted automatically when closing a file
      +    fNtupleVector.push_back(ntupleDescription->fNtuple);
      +  } 
      +  else {
      +    // Merging activated  
           for ( auto manager : fMainNtupleManagers ) {
      -      if ( ! manager->GetNtupleVector().size() ) {
      -        // Create only once !!
      -        manager->SetNtupleFile(fFileManager->GetNtupleFile(counter));
      -        manager->SetNtupleDirectory(fFileManager->GetMainNtupleDirectory(counter++));
      -        manager->CreateNtuplesFromBooking();
      -      }
      +      manager->CreateNtuple(ntupleDescription);
           }
         }
       }
       
       //_____________________________________________________________________________
       void G4RootNtupleManager::FinishTNtuple(
      -  G4TNtupleDescription* ntupleDescription,
      -  G4bool fromBooking)
      +  RootNtupleDescription* /*ntupleDescription*/, G4bool /*fromBooking*/)
       {
      -// Create main ntuples
      -
      -  // Set create mode if not yet defined
      -  if ( ! fromBooking ) {
      -    SetCreateMode();
      -  }
      -
      -  // Create ntuple if file is open
      -  if ( fCreateMode == G4NtupleCreateMode::kNoMergeAfterOpen ) {
      -    CreateTNtuple(ntupleDescription);
      -  }
      -
      -  // Create main ntuples if file is open
      -  if ( fCreateMode == G4NtupleCreateMode::kMainAfterOpen ) {
      -    auto counter = 0;
      -    for ( auto manager : fMainNtupleManagers ) {
      -      auto warn = true;
      -      manager->SetNtupleFile(fFileManager->GetNtupleFile(counter));
      -      manager->SetNtupleDirectory(fFileManager->GetMainNtupleDirectory(counter++));
      -      manager->CreateNtuple(ntupleDescription->fNtupleBooking, warn);
      -    }
      -  }
      +  // nothing to be done
       }
       
       //_____________________________________________________________________________
       G4bool G4RootNtupleManager::Reset(G4bool deleteNtuple)
       {
      -  G4TNtupleManager ::Reset(deleteNtuple);
      +  G4TNtupleManager ::Reset(deleteNtuple);
           // this will clear ntuple vector
       
      -  if ( fCreateMode == G4NtupleCreateMode::kNoMergeAfterOpen ) {
      -    // clear also ntuple description vector
      -    fNtupleDescriptionVector.clear();
      -  }
      -
         auto finalResult = true;
      +
         for ( auto manager : fMainNtupleManagers ) {
           auto result = manager->Reset(false);
           finalResult = result && finalResult;
      @@ -239,7 +149,31 @@ G4bool G4RootNtupleManager::Merge()
       }
       
       //_____________________________________________________________________________
      -G4RootMainNtupleManager* G4RootNtupleManager::GetMainNtupleManager(G4int index) const
      +void  G4RootNtupleManager::SetFileManager(std::shared_ptr fileManager)
      +{ 
      +  fFileManager = fileManager; 
      +
      +  for ( auto mainNtupleManager : fMainNtupleManagers) {
      +    mainNtupleManager->SetFileManager(fileManager);
      +  }
      +}
      +
      +//_____________________________________________________________________________
      +void G4RootNtupleManager::SetNtupleRowWise(G4bool rowWise, G4bool rowMode)
      +{
      +// Set rowWise mode and propagate it to main ntuple managers
      +
      +  fRowWise = rowWise;
      +  fRowMode = rowMode;
      +
      +  for (auto& mainNtupleManager : fMainNtupleManagers ) {
      +    mainNtupleManager->SetRowWise(rowWise);
      +  }
      +}
      +
      +//_____________________________________________________________________________
      +std::shared_ptr
      +G4RootNtupleManager::GetMainNtupleManager(G4int index) const
       {
         if ( index < 0 || index >= G4int(fMainNtupleManagers.size()) ) {
           G4String inFunction = "G4RootNtupleManager::::GetMainNtupleManager";
      diff --git a/source/analysis/root/src/G4RootPNtupleManager.cc b/source/analysis/root/src/G4RootPNtupleManager.cc
      index 955f470532..01d1a52203 100644
      --- a/source/analysis/root/src/G4RootPNtupleManager.cc
      +++ b/source/analysis/root/src/G4RootPNtupleManager.cc
      @@ -26,6 +26,7 @@
       //
       // Author: Ivana Hrivnacova, 04/10/2016  (ivana@ipno.in2p3.fr)
       
      +#include "G4NtupleBookingManager.hh"
       #include "G4RootPNtupleManager.hh"
       #include "G4RootMainNtupleManager.hh"
       #include "G4AnalysisUtilities.hh"
      @@ -35,17 +36,31 @@
       
       // mutex in a file scope
       namespace {
      -  //Mutex to lock master manager when adding ntuple row and ending fill
      -  G4Mutex pntupleMutex = G4MUTEX_INITIALIZER;
      +
      +//Mutex to lock master manager when adding ntuple row and ending fill
      +G4Mutex pntupleMutex = G4MUTEX_INITIALIZER;
      +
      +//_____________________________________________________________________________
      +void NotExistException(const G4String& what, G4int id, const G4String& functionName)
      +{
      +  G4String inFunction = "G4RootPNtupleManager::";
      +  inFunction += functionName;
      +  G4ExceptionDescription description;
      +  description << what << " id= " << id << " does not exist.";
      +  G4Exception(inFunction, "Analysis_W011", JustWarning, description);
      +}
      +
       }
       
       //_____________________________________________________________________________
      -G4RootPNtupleManager::G4RootPNtupleManager(G4RootMainNtupleManager* main,
      -                                           const G4AnalysisManagerState& state,
      -                                           G4bool rowWise, G4bool rowMode)
      +G4RootPNtupleManager::G4RootPNtupleManager(const G4AnalysisManagerState& state,
      +                        std::shared_ptr bookingManger,
      +                        std::shared_ptr main,
      +                        G4bool rowWise, G4bool rowMode)
        : G4BaseNtupleManager(state),
      -   fCreateMode(G4PNtupleCreateMode::kUndefined),
      +   fBookingManager(bookingManger),
          fMainNtupleManager(main),
      +   fNtupleDescriptionVector(),
          fNtupleVector(),
          fRowWise(rowWise),
          fRowMode(rowMode)
      @@ -71,11 +86,7 @@ G4RootPNtupleManager::GetNtupleDescriptionInFunction(
         auto index = id - fFirstId;
         if ( index < 0 || index >= G4int(fNtupleDescriptionVector.size()) ) {
           if ( warn) {
      -      G4String inFunction = "G4RootPNtupleManager::";
      -      inFunction += functionName;
      -      G4ExceptionDescription description;
      -      description << "      " << "ntuple " << id << " does not exist.";
      -      G4Exception(inFunction, "Analysis_W011", JustWarning, description);
      +      NotExistException("ntuple description", id, functionName);
           }
           return nullptr;         
         }
      @@ -93,11 +104,7 @@ tools::wroot::base_pntuple*
       
         if ( ! ntupleDescription->fBasePNtuple ) {
           if ( warn ) {
      -      G4String inFunction = "G4RootPNtupleManager::";
      -      inFunction += functionName;
      -      G4ExceptionDescription description;
      -      description << "      "  << "ntupleId " << id << " does not exist.";
      -      G4Exception(inFunction, "Analysis_W011", JustWarning, description);
      +      NotExistException("ntuple", id, functionName);
           }
           return nullptr;
         }  
      @@ -109,17 +116,12 @@ tools::wroot::ntuple*
       G4RootPNtupleManager::GetMainNtupleInFunction(
         G4int id, G4String functionName, G4bool warn) const
       {                                      
      -  auto& mainNtupleVector
      -     = fMainNtupleManager->GetNtupleVector();
      -  
      +  auto& mainNtupleVector = fMainNtupleManager->GetNtupleVector();
      +
         auto index = id - fFirstId;
         if ( index < 0 || index >= G4int(mainNtupleVector.size()) ) {
           if ( warn) {
      -      G4String inFunction = "G4RootPNtupleManager::";
      -      inFunction += functionName;
      -      G4ExceptionDescription description;
      -      description << "      " << "main ntuple " << id << " does not exist.";
      -      G4Exception(inFunction, "Analysis_W011", JustWarning, description);
      +      NotExistException("main ntuple", id, functionName);
           }
           return nullptr;         
         }
      @@ -127,28 +129,38 @@ G4RootPNtupleManager::GetMainNtupleInFunction(
         return mainNtupleVector[index];
       }
       
      -
       //
       // protected functions
       //
       
       //_____________________________________________________________________________
      -void G4RootPNtupleManager::CreateNtuple(G4RootPNtupleDescription* ntupleDescription,
      -                                        tools::wroot::ntuple* mainNtuple)
      +void G4RootPNtupleManager::CreateNtupleFromMain(
      +                             G4RootPNtupleDescription* ntupleDescription,
      +                             tools::wroot::ntuple* mainNtuple)
       {
       #ifdef G4VERBOSE
      -    if ( fState.GetVerboseL4() ) 
      -      fState.GetVerboseL4()
      -        ->Message("create from main", "pntuple", mainNtuple->name());
      +  if ( fState.GetVerboseL4() ) {
      +    fState.GetVerboseL4()
      +      ->Message("create from main", "pntuple", mainNtuple->name());
      +  }
       #endif
       
      -  auto rfile = fMainNtupleManager->GetNtupleFile();
      -  // auto directory = fMainNtupleManager->GetNtupleDirectory();
      +  auto file = fMainNtupleManager->GetNtupleFile(&ntupleDescription->fDescription);
      +  if ( ! file ) {
      +    G4String inFunction = "G4RootPNtupleManager::::CreateNtupleFromMain";
      +    G4ExceptionDescription description;
      +    description
      +      << "Cannot create pntuple. Main ntuple file does not exist." << G4endl;
      +    G4Exception(inFunction, "Analysis_W002", JustWarning, description);
      +    return;
      +  }
      +
      +  ntupleDescription->fDescription.fFile = file;
       
         // Get parameters from ntupleDescription
      -  ntupleDescription->fFile = rfile.get();
         mainNtuple->get_branches(ntupleDescription->fMainBranches);
       
      +  auto rfile = std::get<0>(*file);
         G4bool verbose = true;
         if ( fRowWise ) {
           auto mainBranch = mainNtuple->get_row_wise_branch();
      @@ -157,7 +169,7 @@ void G4RootPNtupleManager::CreateNtuple(G4RootPNtupleDescription* ntupleDescript
                     G4cout, rfile->byte_swap(), rfile->compression(),
                     mainNtuple->dir().seek_directory(),
                     *mainBranch, mainBranch->basket_size(), 
      -              ntupleDescription->fNtupleBooking, verbose);
      +              ntupleDescription->fDescription.fNtupleBooking, verbose);
       
           ntupleDescription->fNtuple
             = static_cast(mtNtuple);
      @@ -176,7 +188,7 @@ void G4RootPNtupleManager::CreateNtuple(G4RootPNtupleDescription* ntupleDescript
                   G4cout, rfile->byte_swap(), rfile->compression(),
                   mainNtuple->dir().seek_directory(),
                   ntupleDescription->fMainBranches, basketSizes,
      -            ntupleDescription->fNtupleBooking, 
      +            ntupleDescription->fDescription.fNtupleBooking, 
                   fRowMode, basketEntries, verbose);
           
           ntupleDescription->fNtuple
      @@ -185,15 +197,15 @@ void G4RootPNtupleManager::CreateNtuple(G4RootPNtupleDescription* ntupleDescript
             = static_cast(mtNtuple);
         }
       
      -  ntupleDescription->fIsNtupleOwner = true;  
      +  ntupleDescription->fDescription.fIsNtupleOwner = true;  
         //        // pntuple object is not deleted automatically
         fNtupleVector.push_back(ntupleDescription->fNtuple);  
       
      -
       #ifdef G4VERBOSE
      -    if ( fState.GetVerboseL3() ) 
      -      fState.GetVerboseL3()
      -        ->Message("create from main", "pntuple", mainNtuple->name());
      +  if ( fState.GetVerboseL3() ) {
      +    fState.GetVerboseL3()
      +      ->Message("create from main", "pntuple", mainNtuple->name());
      +  }
       #endif
       }
       
      @@ -201,125 +213,34 @@ void G4RootPNtupleManager::CreateNtuple(G4RootPNtupleDescription* ntupleDescript
       void G4RootPNtupleManager::CreateNtuplesFromMain()
       {
       // Create ntuple from booking (if not yet done) and main ntuple 
      -// This function is called from G4AnalysisManager::OpenFile.
      +// This function is called from G4RootNtupleFileManager::ActionAtOpenFile.
       
      -  if ( fCreateMode == G4PNtupleCreateMode::kUndefined ) {
      -    if ( fNtupleDescriptionVector.size() ) {
      -      fCreateMode = G4PNtupleCreateMode::kSlaveBeforeOpen;
      -      // G4cout << "Create mode: kSlaveBeforeOpen" <<  G4endl;
      -    } else {
      -      fCreateMode = G4PNtupleCreateMode::kSlaveAfterOpen;
      -      // G4cout << "Create mode: kSlaveAfterOpen" <<  G4endl;
      -    }
      +  // Create pntuple descriptions from ntuple booking.
      +  auto g4NtupleBookings = fBookingManager->GetNtupleBookingVector();
      +  for ( auto g4NtupleBooking : g4NtupleBookings ) {
      +    auto ntupleDescription = new G4RootPNtupleDescription(g4NtupleBooking);
      +    // Save g4booking, activation in pntuple booking
      +    fNtupleDescriptionVector.push_back(ntupleDescription);  
         }
       
      -  if ( fCreateMode == G4PNtupleCreateMode::kSlaveAfterOpen ) {
      -    // ntuples are not yet booked
      -    // G4cout << "Ntuples are not yet booked ?" <<  G4endl;
      -    return;
      -  }
      -
      -  auto& mainNtupleVector
      -     = fMainNtupleManager->GetNtupleVector();
      +  auto& mainNtupleVector = fMainNtupleManager->GetNtupleVector();
       
         G4int lcounter = 0;
      -  for ( auto mainNtuple : mainNtupleVector ) {
      -    
      -    auto& ntupleDescription 
      -      = fNtupleDescriptionVector[lcounter++];
      -    CreateNtuple(ntupleDescription, mainNtuple);
      +  for ( auto mainNtuple : mainNtupleVector ) {    
      +    auto& ntupleDescription = fNtupleDescriptionVector[lcounter++];
      +    CreateNtupleFromMain(ntupleDescription, mainNtuple);
         }
       }
       
       //_____________________________________________________________________________
      -G4int G4RootPNtupleManager::CreateNtuple(
      -  const G4String& name, const G4String& title)
      +G4int G4RootPNtupleManager::CreateNtuple(G4NtupleBooking* /*booking*/)
       {
      -// Create pntuple description with ntuple_booking
      +// Create pntuple from g4 ntuple booking.
      +// Nothing to be done here.
       
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()->Message("create", "pntuple booking", name);
      -#endif
      -
      -  // Set create mode if not yet defined
      -  if ( fCreateMode == G4PNtupleCreateMode::kUndefined ) {
      -    if ( fMainNtupleManager->GetNtupleFile() ) {
      -      fCreateMode = G4PNtupleCreateMode::kSlaveAfterOpen;
      -    } else {
      -      fCreateMode = G4PNtupleCreateMode::kSlaveBeforeOpen;
      -    }
      -  }
      -
      -  // Create ntuple description
      -  auto index = fNtupleDescriptionVector.size();
      -  auto ntupleDescription = new G4RootPNtupleDescription();
      -  fNtupleDescriptionVector.push_back(ntupleDescription);  
      -
      -  // Save name & title in ntuple booking
      -  ntupleDescription->fNtupleBooking.set_name(name);
      -  ntupleDescription->fNtupleBooking.set_title(title);
      -
      -  fLockFirstId = true;
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL2() ) {
      -    G4ExceptionDescription description;
      -    description << name << " ntupleId " << index + fFirstId;
      -    fState.GetVerboseL2()->Message("create", "pntuple booking", description);
      -  } 
      -#endif
      -
      -  return index + fFirstId;
      +  return G4Analysis::kInvalidId;
       }                                         
       
      -//_____________________________________________________________________________
      -G4int G4RootPNtupleManager::CreateNtupleIColumn(
      -  G4int ntupleId, const G4String& name, std::vector* vector)
      -{
      -  return CreateNtupleTColumn(ntupleId, name, vector);
      -}                                         
      -
      -//_____________________________________________________________________________
      -G4int G4RootPNtupleManager::CreateNtupleFColumn(
      -  G4int ntupleId, const G4String& name, std::vector* vector)
      -{
      -  return CreateNtupleTColumn(ntupleId, name, vector);
      -}                                         
      -
      -
      -//_____________________________________________________________________________
      -G4int G4RootPNtupleManager::CreateNtupleDColumn(
      -  G4int ntupleId, const G4String& name, std::vector* vector)
      -{
      -  return CreateNtupleTColumn(ntupleId, name, vector);
      -}                                         
      -
      -//_____________________________________________________________________________
      -G4int G4RootPNtupleManager::CreateNtupleSColumn(
      -  G4int ntupleId, const G4String& name)
      -{
      -  return CreateNtupleTColumn(ntupleId, name, nullptr);
      -}  
      -
      -//_____________________________________________________________________________
      -void G4RootPNtupleManager::FinishNtuple(G4int ntupleId)
      -{ 
      -// create ntuple if file was open
      -
      -  // if ( fMainNtupleManager->GetNtupleFile() ) {
      -  if ( fCreateMode == G4PNtupleCreateMode::kSlaveAfterOpen ) {
      -    auto ntupleDescription 
      -      = GetNtupleDescriptionInFunction(ntupleId, "FinishNtuple");
      -    if ( ! ntupleDescription ) return;
      -
      -    auto mainNtuple = GetMainNtupleInFunction(ntupleId, "FinishNtuple");
      -    if ( ! mainNtuple ) return;
      -    
      -    CreateNtuple(ntupleDescription, mainNtuple);
      -  }
      -}
      -
       //_____________________________________________________________________________
       G4bool G4RootPNtupleManager::FillNtupleIColumn(
         G4int ntupleId, G4int columnId, G4int value)
      @@ -367,20 +288,23 @@ G4bool G4RootPNtupleManager::AddNtupleRow(G4int ntupleId)
         auto ntupleDescription = GetNtupleDescriptionInFunction(ntupleId, "AddNtupleRow");
         if ( ! ntupleDescription ) return false;
         
      +  auto rfile = std::get<0>(*ntupleDescription->fDescription.fFile);
      +
         G4AutoLock lock(&pntupleMutex);
         lock.unlock();
         mutex toolsLock(lock);
         auto result 
      -    = ntupleDescription->fNtuple
      -      ->add_row(toolsLock, *ntupleDescription->fFile);
      +    = ntupleDescription->fNtuple->add_row(toolsLock, *rfile);
       
         if ( ! result ) {
           G4ExceptionDescription description;
           description << "      " << " ntupleId " << ntupleId 
                       << "adding row has failed.";
           G4Exception("G4RootPNtupleManager::AddNtupleRow()",
      -                "Analysis_W002", JustWarning, description);
      -  }         
      +                "Analysis_W022", JustWarning, description);
      +  }
      +
      +  ntupleDescription->fDescription.fHasFill = true;
       
       #ifdef G4VERBOSE
         if ( fState.GetVerboseL3() ) {
      @@ -399,29 +323,32 @@ G4bool G4RootPNtupleManager::Merge()
         for ( auto ntupleDescription : fNtupleDescriptionVector) {
       
           // skip inactivated ntuples
      -    if(!ntupleDescription->fActivation || !ntupleDescription->fNtuple)
      +    if(!ntupleDescription->fDescription.fActivation || !ntupleDescription->fNtuple) {
      +      // G4cout << "skipping inactive ntuple " << G4endl;
             continue;
      +    }
       
       #ifdef G4VERBOSE
           if ( fState.GetVerboseL4() ) {
             fState.GetVerboseL4()
      -        ->Message("merge", "pntuple", ntupleDescription->fNtupleBooking.name());
      +        ->Message("merge", "pntuple", ntupleDescription->fDescription.fNtupleBooking.name());
           }  
       #endif
         
      +    auto rfile = std::get<0>(*ntupleDescription->fDescription.fFile);
      +
           G4AutoLock lock(&pntupleMutex);
           lock.unlock();
           mutex toolsLock(lock);
           auto result 
      -      = ntupleDescription->fNtuple
      -        ->end_fill(toolsLock, *ntupleDescription->fFile);
      +      = ntupleDescription->fNtuple->end_fill(toolsLock, *rfile);
       
           if ( ! result ) {
             G4ExceptionDescription description;
      -      description << "      " << " ntuple " << ntupleDescription->fNtupleBooking.name()
      +      description << "      " << " ntuple " << ntupleDescription->fDescription.fNtupleBooking.name()
                         << "end fill has failed.";
             G4Exception("G4RootPNtupleManager::Merge()",
      -                  "Analysis_W002", JustWarning, description);
      +                  "Analysis_W031", JustWarning, description);
           }
       
           delete ntupleDescription->fNtuple;
      @@ -430,7 +357,7 @@ G4bool G4RootPNtupleManager::Merge()
       #ifdef G4VERBOSE
           if ( fState.GetVerboseL3() ) {
             fState.GetVerboseL3()
      -        ->Message("merge", "pntuple", ntupleDescription->fNtupleBooking.name());
      +        ->Message("merge", "pntuple", ntupleDescription->fDescription.fNtupleBooking.name());
           }  
       #endif
         }
      @@ -459,7 +386,7 @@ void  G4RootPNtupleManager::SetActivation(
         G4bool activation)
       {
         for ( auto ntupleDescription : fNtupleDescriptionVector ) {
      -    ntupleDescription->fActivation = activation;
      +    ntupleDescription->fDescription.fActivation = activation;
         } 
       }
       
      @@ -471,7 +398,7 @@ void  G4RootPNtupleManager::SetActivation(
         auto ntupleDescription = GetNtupleDescriptionInFunction(ntupleId, "SetActivation");
         if ( ! ntupleDescription ) return;
       
      -  ntupleDescription->fActivation = activation;
      +  ntupleDescription->fDescription.fActivation = activation;
       }
       
       //_____________________________________________________________________________
      @@ -481,7 +408,7 @@ G4bool  G4RootPNtupleManager::GetActivation(
         auto ntupleDescription = GetNtupleDescriptionInFunction(ntupleId, "GetActivation");
         if ( ! ntupleDescription ) return false;
       
      -  return ntupleDescription->fActivation;
      +  return ntupleDescription->fDescription.fActivation;
       }
       
       //_____________________________________________________________________________
      @@ -490,18 +417,6 @@ G4int G4RootPNtupleManager::GetNofNtuples() const
         return fNtupleVector.size();
       }
       
      -//_____________________________________________________________________________
      -G4int G4RootPNtupleManager::GetNofNtupleBookings() const
      -{
      -  return fNtupleDescriptionVector.size();
      -}
      -
      -//_____________________________________________________________________________
      -G4bool G4RootPNtupleManager::IsEmpty() const
      -{
      -  return ! fNtupleDescriptionVector.size();
      -}  
      -
       //_____________________________________________________________________________
       void G4RootPNtupleManager::SetNtupleRowWise(G4bool rowWise, G4bool rowMode)
       { 
      diff --git a/source/analysis/root/src/G4RootRFileManager.cc b/source/analysis/root/src/G4RootRFileManager.cc
      index 6ffde00c4f..255c5e0fa4 100644
      --- a/source/analysis/root/src/G4RootRFileManager.cc
      +++ b/source/analysis/root/src/G4RootRFileManager.cc
      @@ -28,6 +28,7 @@
       
       #include "G4RootRFileManager.hh"
       #include "G4AnalysisManagerState.hh"
      +#include "G4AnalysisUtilities.hh"
       
       #include "tools/rroot/file"
       #include 
      diff --git a/source/analysis/xml/include/G4XmlAnalysisManager.hh b/source/analysis/xml/include/G4XmlAnalysisManager.hh
      index 0cba8327a4..d6722e9ca9 100644
      --- a/source/analysis/xml/include/G4XmlAnalysisManager.hh
      +++ b/source/analysis/xml/include/G4XmlAnalysisManager.hh
      @@ -40,7 +40,7 @@
       #include 
       
       class G4XmlFileManager;
      -class G4XmlNtupleManager;
      +class G4XmlNtupleFileManager;
       
       class G4XmlAnalysisManager : public G4ToolsAnalysisManager
       {
      @@ -90,8 +90,8 @@ class G4XmlAnalysisManager : public G4ToolsAnalysisManager
           G4bool Reset();
       
           // data members
      -    G4XmlNtupleManager*  fNtupleManager;
           std::shared_ptr  fFileManager;
      +    std::shared_ptr  fNtupleFileManager;
       };
       
       #include "G4XmlAnalysisManager.icc"
      diff --git a/source/analysis/xml/include/G4XmlAnalysisManager.icc b/source/analysis/xml/include/G4XmlAnalysisManager.icc
      index e541ea295f..141ca901db 100644
      --- a/source/analysis/xml/include/G4XmlAnalysisManager.icc
      +++ b/source/analysis/xml/include/G4XmlAnalysisManager.icc
      @@ -24,6 +24,7 @@
       // ********************************************************************
       //
       
      +#include "G4XmlNtupleFileManager.hh"
       #include "G4XmlNtupleManager.hh"
       #include "G4XmlFileManager.hh"
       
      @@ -50,7 +51,7 @@ G4bool G4XmlAnalysisManager::WriteT(const std::vector& htVector,
       #endif
           G4String path = "/";
           path.append(directoryName);
      -    std::shared_ptr hnFile = fFileManager->GetHnFile();
      +    std::shared_ptr hnFile = fFileManager->GetFile();
           // Do nothing if there is no file
           if ( ! hnFile.get() ) return false;
       
      @@ -63,7 +64,7 @@ G4bool G4XmlAnalysisManager::WriteT(const std::vector& htVector,
                       "Analysis_W022", JustWarning, description);
             return false;       
           } 
      -    fFileManager->LockHistoDirectoryName();
      +    fFileManager->LockDirectoryNames();
         }
       
         return true;
      @@ -80,28 +81,28 @@ G4bool G4XmlAnalysisManager::IsOpenFileImpl() const
       inline
       tools::waxml::ntuple* G4XmlAnalysisManager::GetNtuple() const
       {
      -  return fNtupleManager->GetNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->GetNtuple();
       }  
       
       //_____________________________________________________________________________
       inline
       tools::waxml::ntuple* G4XmlAnalysisManager::GetNtuple(G4int ntupleId) const
       {
      -  return fNtupleManager->GetNtuple(ntupleId);
      +  return fNtupleFileManager->GetNtupleManager()->GetNtuple(ntupleId);
       }  
       
       //_____________________________________________________________________________
       inline
       std::vector::iterator G4XmlAnalysisManager::BeginNtuple()
       {
      -  return fNtupleManager->BeginNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->BeginNtuple();
       }  
       
       //_____________________________________________________________________________
       inline
       std::vector::iterator G4XmlAnalysisManager::EndNtuple()
       {
      -  return fNtupleManager->EndNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->EndNtuple();
       }  
       
       //_____________________________________________________________________________
      @@ -109,7 +110,7 @@ inline
       std::vector::const_iterator 
       G4XmlAnalysisManager::BeginConstNtuple() const
       {
      -  return fNtupleManager->BeginConstNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->BeginConstNtuple();
       }  
       
       //_____________________________________________________________________________
      @@ -117,5 +118,5 @@ inline
       std::vector::const_iterator 
       G4XmlAnalysisManager::EndConstNtuple() const
       {
      -  return fNtupleManager->EndConstNtuple();
      +  return fNtupleFileManager->GetNtupleManager()->EndConstNtuple();
       }  
      diff --git a/source/analysis/xml/include/G4XmlFileManager.hh b/source/analysis/xml/include/G4XmlFileManager.hh
      index fadd65b96b..fb7308f565 100644
      --- a/source/analysis/xml/include/G4XmlFileManager.hh
      +++ b/source/analysis/xml/include/G4XmlFileManager.hh
      @@ -31,8 +31,9 @@
       #ifndef G4XmlFileManager_h
       #define G4XmlFileManager_h 1
       
      -#include "G4VFileManager.hh"
      +#include "G4VTFileManager.hh"
       #include "G4TNtupleDescription.hh"
      +#include "G4TFileManager.hh"
       #include "globals.hh"
       
       #include "tools/waxml/ntuple"
      @@ -40,40 +41,39 @@
       #include 
       #include 
       
      +// Type aliases
      +using XmlNtupleDescription = G4TNtupleDescription;
      +
       class G4AnalysisManagerState;
       
      -class G4XmlFileManager : public G4VFileManager
      +class G4XmlFileManager : public G4VTFileManager
       {
         public:
           explicit G4XmlFileManager(const G4AnalysisManagerState& state);
           ~G4XmlFileManager();
       
      -    // Type aliases
      -    using NtupleType = tools::waxml::ntuple;
      -    using NtupleDescriptionType = G4TNtupleDescription;
      +    using G4BaseFileManager::GetNtupleFileName;
      +    using G4VTFileManager::WriteFile;
      +    using G4VTFileManager::CloseFile;
       
           // Methods to manipulate output files
           virtual G4bool OpenFile(const G4String& fileName) final;
      -    virtual G4bool WriteFile() final;
      -    virtual G4bool CloseFile() final; 
      +
      +    virtual G4String GetFileType() const final { return "xml"; }
       
           // Specific methods for files per objects
      -    G4bool CreateHnFile();
      -    G4bool CloseHnFile(); 
      -    G4bool CreateNtupleFile(NtupleDescriptionType* ntupleDescription);
      -    G4bool CloseNtupleFile(NtupleDescriptionType* ntupleDescription); 
      -    
      -    // Get methods
      -    std::shared_ptr GetHnFile() const;
      +    G4bool CreateNtupleFile(XmlNtupleDescription* ntupleDescription);
      +    G4bool CloseNtupleFile(XmlNtupleDescription* ntupleDescription); 
           
      +  protected:
      +    // Methods derived from templated base class
      +    virtual std::shared_ptr CreateFileImpl(const G4String& fileName) final;
      +    virtual G4bool WriteFileImpl(std::shared_ptr file) final;
      +    virtual G4bool CloseFileImpl(std::shared_ptr file) final;    
      +
          private:
      -    // data members
      -    std::shared_ptr fHnFile;
      +    // utility method
      +    G4String GetNtupleFileName(XmlNtupleDescription* ntupleDescription);
       };
       
      -// inline functions
      -
      -inline std::shared_ptr G4XmlFileManager::GetHnFile() const
      -{ return fHnFile; }
      -
       #endif
      diff --git a/source/processes/hadronic/processes/include/G4BMesonMinusInelasticProcess.hh b/source/analysis/xml/include/G4XmlHnFileManager.hh
      similarity index 65%
      rename from source/processes/hadronic/processes/include/G4BMesonMinusInelasticProcess.hh
      rename to source/analysis/xml/include/G4XmlHnFileManager.hh
      index 26e5cbd30f..aebf8cb378 100644
      --- a/source/processes/hadronic/processes/include/G4BMesonMinusInelasticProcess.hh
      +++ b/source/analysis/xml/include/G4XmlHnFileManager.hh
      @@ -23,24 +23,39 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      -#ifndef G4BMesonMinusInelasticProcess_h
      -#define G4BMesonMinusInelasticProcess_h 1
       
      -// Author: Alberto Ribon (CERN) 2019
      - 
      -// Class Description
      -// Process for B- Inelastic scattering 
      -// Class Description - End
      +// The manager histogram/profile Xml file output.
       
      -#include "G4HadronInelasticProcess.hh"
      - 
      +// Author: Ivana Hrivnacova, 15/09/2020  (ivana@ipno.in2p3.fr)
       
      -class G4BMesonMinusInelasticProcess : public G4HadronInelasticProcess {
      -  public:  
      -    G4BMesonMinusInelasticProcess( const G4String& processName = "B-Inelastic" );
      -    ~G4BMesonMinusInelasticProcess() {}
      -    virtual void ProcessDescription( std::ostream& outFile ) const;
      +#ifndef G4XmlHnFileManager_h
      +#define G4XmlHnFileManager_h 1
      +
      +#include "G4VTHnFileManager.hh"
      +
      +class G4XmlFileManager;
      +
      +template 
      +class G4XmlHnFileManager : public G4VTHnFileManager
      +{
      +  public:
      +    G4XmlHnFileManager(G4XmlFileManager* fileManger)
      +      : G4VTHnFileManager(), fFileManager(fileManger) {}
      +    virtual ~G4XmlHnFileManager() {}
      +
      +    // Methods for writing objects
      +    // Write to a new file (the file is closed after write)
      +    virtual G4bool WriteExtra(HT* ht, const G4String& htName, const G4String& fileName) final;
      +    // Write to the default file (handled with OpenFile()/CloseFile methods)
      +    virtual G4bool Write(HT* ht, const G4String& htName, G4String& fileName) final;
      +
      +  private:       
      +    // Data members
      +    G4XmlFileManager* fFileManager;
       };
       
      -#endif
      +// inline functions
       
      +#include "G4XmlHnFileManager.icc"
      +
      +#endif
      diff --git a/source/analysis/xml/include/G4XmlHnFileManager.icc b/source/analysis/xml/include/G4XmlHnFileManager.icc
      new file mode 100644
      index 0000000000..b95778c6f6
      --- /dev/null
      +++ b/source/analysis/xml/include/G4XmlHnFileManager.icc
      @@ -0,0 +1,92 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Author: Ivana Hrivnacova, 15/09/2020  (ivana@ipno.in2p3.fr)
      +
      +#include "tools/waxml/histos"
      +#include "tools/waxml/begend"
      +
      +//_____________________________________________________________________________
      +template 
      +G4bool G4XmlHnFileManager::WriteExtra(
      +  HT* ht, const G4String& htName, const G4String& fileName)
      +{
      +  // create a new file
      +  std::ofstream hnFile(fileName);
      +
      +  // Do nothing if there is no file
      +  if ( ! hnFile.is_open() ) return false;
      +
      +  // Write file opening
      +  tools::waxml::begin(hnFile);
      +
      +  // no directory supported in this mode
      +  G4String path = "/";
      +
      +  // write histo
      +  auto result = tools::waxml::write(hnFile, *ht, path, htName);
      +  if ( ! result) {
      +    // TO DO: give an exception about failure
      +    return false;
      +  }
      +
      +  // close file
      +  tools::waxml::end(hnFile);
      +  hnFile.close();
      +  return true;
      +}
      +
      +//_____________________________________________________________________________
      +template 
      +G4bool G4XmlHnFileManager::Write(
      +  HT* ht, const G4String& htName,  G4String& fileName)
      +{  
      +  if ( fileName.empty()) {
      +    // should not happen
      +    G4cerr << "!!! Xml file name not defined." << G4endl;
      +    G4cerr << "!!! Write " << htName << " failed." << G4endl;
      +    return false;
      +  }
      +
      +  auto hnFile = fFileManager->GetTFile(fileName);
      +  if ( hnFile == nullptr ) {
      +    // TO DO: give an exception, 
      +    // this prototype can be used only with OpenFile() mode
      +    G4ExceptionDescription description;
      +    description 
      +      << "Failed to get Xml file " << fileName; 
      +    G4Exception("G4XmlHnFileManager::Write()",
      +                "Analysis_W022", JustWarning, description);
      +    return false;
      +  }
      +
      +  G4String path = "/";
      +  path.append(fFileManager->GetHistoDirectoryName());
      +
      +  auto result = tools::waxml::write(*hnFile, *ht, path, htName);
      +  fFileManager->LockDirectoryNames();
      +  return result;
      +}
      diff --git a/source/analysis/xml/include/G4XmlNtupleFileManager.hh b/source/analysis/xml/include/G4XmlNtupleFileManager.hh
      new file mode 100644
      index 0000000000..42839d547b
      --- /dev/null
      +++ b/source/analysis/xml/include/G4XmlNtupleFileManager.hh
      @@ -0,0 +1,81 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Manager class for ntuple Xml file output.
      +//
      +// Author: Ivana Hrivnacova, 15/09/2020 (ivana@ipno.in2p3.fr)
      +
      +#ifndef G4XmlNtupleFileManager_h
      +#define G4XmlNtupleFileManager_h 1
      +
      +#include "G4VNtupleFileManager.hh"
      +#include "globals.hh"
      +
      +#include "tools/waxml/ntuple"
      +
      +#include 
      +
      +class G4XmlFileManager;
      +class G4XmlNtupleManager;
      +
      +class G4XmlNtupleFileManager : public G4VNtupleFileManager
      +{
      +  public:
      +    explicit G4XmlNtupleFileManager(const G4AnalysisManagerState& state);
      +    ~G4XmlNtupleFileManager();
      +    
      +    virtual std::shared_ptr CreateNtupleManager() override;
      +
      +    // Methods to be performed at file management
      +    virtual G4bool ActionAtOpenFile(const G4String& fileName) override;
      +    virtual G4bool ActionAtWrite() override;
      +    virtual G4bool ActionAtCloseFile(G4bool reset) override;
      +    virtual G4bool Reset() override; 
      +
      +    void SetFileManager(std::shared_ptr fileManager);
      +
      +    std::shared_ptr GetNtupleManager() const;
      +
      +  private:
      +    // methods
      +    G4bool CloseNtupleFiles();
      +
      +    // data members
      +    std::shared_ptr  fFileManager;
      +    std::shared_ptr  fNtupleManager;
      +};
      +
      +// inline functions
      +
      +inline void G4XmlNtupleFileManager::SetFileManager(
      +  std::shared_ptr fileManager)
      +{ fFileManager = fileManager; }
      +
      +inline std::shared_ptr G4XmlNtupleFileManager::GetNtupleManager() const
      +{ return fNtupleManager; }
      +
      +#endif
      +
      diff --git a/source/analysis/xml/include/G4XmlNtupleManager.hh b/source/analysis/xml/include/G4XmlNtupleManager.hh
      index 1f1666e74a..3aae86b5e8 100644
      --- a/source/analysis/xml/include/G4XmlNtupleManager.hh
      +++ b/source/analysis/xml/include/G4XmlNtupleManager.hh
      @@ -39,40 +39,38 @@
       #include 
       #include 
       
      +// Types alias
      +using XmlNtupleDescription = G4TNtupleDescription;
      +
       class G4XmlFileManager;
       
      -class G4XmlNtupleManager : public G4TNtupleManager 
      +class G4XmlNtupleManager : public G4TNtupleManager 
       {
         friend class G4XmlAnalysisManager;
      +  friend class G4XmlNtupleFileManager;
       
         public:
           explicit G4XmlNtupleManager(const G4AnalysisManagerState& state);
           ~G4XmlNtupleManager();
       
         private:
      -    // Types alias
      -    using NtupleType = tools::waxml::ntuple;
      -    using NtupleDescriptionType = G4TNtupleDescription;
      -
           // Functions specific to the output type
           //
      -    
      +
           // Set methods
           void SetFileManager(std::shared_ptr fileManager);
           
           // Access to ntuple vector (needed for Write())
      -    const std::vector& GetNtupleDescriptionVector() const;
      +    const std::vector& GetNtupleDescriptionVector() const;
       
           // Methods from the templated base class
           //
      -    virtual void CreateTNtuple(
      -                    NtupleDescriptionType*  ntupleDescription,
      -                    const G4String& name, const G4String& title) final;
           virtual void CreateTNtupleFromBooking(
      -                    NtupleDescriptionType* ntupleDescription) final;
      +                    XmlNtupleDescription* ntupleDescription) final;
       
           virtual void FinishTNtuple(
      -                    NtupleDescriptionType* ntupleDescription,
      +                    XmlNtupleDescription* ntupleDescription,
                           G4bool fromBooking) final;
       
           // data members
      @@ -86,7 +84,7 @@ inline void
       G4XmlNtupleManager::SetFileManager(std::shared_ptr fileManager)
       { fFileManager = fileManager; }
       
      -inline const std::vector*>& 
      +inline const std::vector*>& 
       G4XmlNtupleManager::GetNtupleDescriptionVector() const
       { return fNtupleDescriptionVector; }
       
      diff --git a/source/analysis/xml/include/G4XmlRFileManager.hh b/source/analysis/xml/include/G4XmlRFileManager.hh
      index 9e87c9cfb3..5a58678f09 100644
      --- a/source/analysis/xml/include/G4XmlRFileManager.hh
      +++ b/source/analysis/xml/include/G4XmlRFileManager.hh
      @@ -46,6 +46,8 @@ class G4XmlRFileManager : public G4BaseFileManager
           explicit G4XmlRFileManager(const G4AnalysisManagerState& state);
           ~G4XmlRFileManager();
       
      +    virtual G4String GetFileType() const final { return "xml"; }
      +
           // Methods to manipulate input files
           virtual G4bool OpenRFile(const G4String& fileName);
       
      diff --git a/source/analysis/xml/sources.cmake b/source/analysis/xml/sources.cmake
      index af22ef195e..6ac79a8f05 100644
      --- a/source/analysis/xml/sources.cmake
      +++ b/source/analysis/xml/sources.cmake
      @@ -14,6 +14,9 @@ geant4_define_module(NAME G4xml
           G4XmlAnalysisReader.hh
           G4XmlAnalysisReader.icc
           G4XmlFileManager.hh
      +    G4XmlHnFileManager.hh
      +    G4XmlHnFileManager.icc
      +    G4XmlNtupleFileManager.hh
           G4XmlNtupleManager.hh
           G4XmlRFileManager.hh
           G4XmlRNtupleManager.hh
      @@ -22,6 +25,7 @@ geant4_define_module(NAME G4xml
         SOURCES
           G4XmlAnalysisManager.cc
           G4XmlAnalysisReader.cc
      +    G4XmlNtupleFileManager.cc
           G4XmlFileManager.cc
           G4XmlNtupleManager.cc
           G4XmlRFileManager.cc
      diff --git a/source/analysis/xml/src/G4XmlAnalysisManager.cc b/source/analysis/xml/src/G4XmlAnalysisManager.cc
      index 0f62c64020..05ca36eeb6 100644
      --- a/source/analysis/xml/src/G4XmlAnalysisManager.cc
      +++ b/source/analysis/xml/src/G4XmlAnalysisManager.cc
      @@ -28,11 +28,14 @@
       
       #include "G4XmlAnalysisManager.hh"
       #include "G4XmlFileManager.hh"
      -#include "G4XmlNtupleManager.hh"
      +#include "G4XmlNtupleFileManager.hh"
       #include "G4AnalysisManagerState.hh"
      +#include "G4AnalysisUtilities.hh"
       #include "G4Threading.hh"
       #include "G4AutoLock.hh"
       
      +using std::make_shared;
      +
       // mutex in a file scope
       
       namespace {
      @@ -71,8 +74,8 @@ G4bool G4XmlAnalysisManager::IsInstance()
       //_____________________________________________________________________________
       G4XmlAnalysisManager::G4XmlAnalysisManager(G4bool isMaster)
        : G4ToolsAnalysisManager("Xml", isMaster),
      -   fNtupleManager(nullptr),
      -   fFileManager(nullptr)
      +   fFileManager(nullptr),
      +   fNtupleFileManager(nullptr)
       {
         if ( ( isMaster && fgMasterInstance ) || ( fgInstance ) ) {
           G4ExceptionDescription description;
      @@ -86,15 +89,14 @@ G4XmlAnalysisManager::G4XmlAnalysisManager(G4bool isMaster)
         if ( isMaster ) fgMasterInstance = this;
         fgInstance = this;
         
      -  // Create managers
      -  fNtupleManager = new G4XmlNtupleManager(fState);
      +  // File Manager
         fFileManager = std::make_shared(fState);
      -  fNtupleManager->SetFileManager(fFileManager);
      -      // The managers will be deleted by the base class
      -  
      -  // Set managers to base class which takes then their ownership
      -  SetNtupleManager(fNtupleManager);
         SetFileManager(fFileManager);
      +
      +  // Ntuple file manager
      +  fNtupleFileManager = std::make_shared(fState);
      +  fNtupleFileManager->SetFileManager(fFileManager);
      +  fNtupleFileManager->SetBookingManager(fNtupleBookingManager);
       }
       
       //_____________________________________________________________________________
      @@ -233,32 +235,6 @@ G4bool G4XmlAnalysisManager::WriteP2()
         return result;
       }
           
      -//_____________________________________________________________________________
      -G4bool G4XmlAnalysisManager::WriteNtuple()
      -{
      -  auto ntupleVector = fNtupleManager->GetNtupleDescriptionVector();
      -
      -  for ( auto ntuple : ntupleVector ) {
      -    if ( ntuple->fNtuple ) ntuple->fNtuple->write_trailer();
      -  }
      -  
      -  return true;
      -}  
      -
      -//_____________________________________________________________________________
      -G4bool G4XmlAnalysisManager::CloseNtupleFiles()
      -{
      -  auto ntupleDescriptionVector = fNtupleManager->GetNtupleDescriptionVector();
      -
      -  // Close ntuple files
      -  for ( auto ntupleDescription : ntupleDescriptionVector) {
      -    fFileManager->CloseNtupleFile((ntupleDescription));
      -  }
      -  
      -  return true;
      -}    
      -
      -
       //_____________________________________________________________________________
       G4bool G4XmlAnalysisManager::Reset()
       {
      @@ -269,12 +245,12 @@ G4bool G4XmlAnalysisManager::Reset()
         auto result = G4ToolsAnalysisManager::Reset();
         finalResult = finalResult && result;
         
      -  result = fNtupleManager->Reset(true);
      +  result = fNtupleFileManager->Reset();
         finalResult = finalResult && result;
         
         return finalResult;
       }  
      - 
      +
       // 
       // protected methods
       //
      @@ -282,36 +258,20 @@ G4bool G4XmlAnalysisManager::Reset()
       //_____________________________________________________________________________
       G4bool G4XmlAnalysisManager::OpenFileImpl(const G4String& fileName)
       {
      +  // Create ntuple manager(s)
      +  // and set it to base class which takes then their ownership
      +  SetNtupleManager(fNtupleFileManager->CreateNtupleManager());
      +
         auto finalResult = true;
      -  auto result = fFileManager->SetFileName(fileName);
      +
      +  // Save file name in file manager
      +  auto result = fFileManager->OpenFile(fileName);
         finalResult = finalResult && result;
       
      -#ifdef G4VERBOSE
      -  auto name = fFileManager->GetFullFileName();
      -  if ( fState.GetVerboseL4() ) {
      -    fState.GetVerboseL4()->Message("open", "analysis file", name);
      -  }  
      -#endif
      -
      -  // Only lock file name in file manager
      -  result = fFileManager->OpenFile(fileName);
      +  // Open ntuple files and create ntuples from bookings
      +  result = fNtupleFileManager->ActionAtOpenFile(fFileManager->GetFullFileName());
         finalResult = finalResult && result;
       
      -  // Create histograms file (on master)
      -  if ( fState.GetIsMaster() ) {
      -    result = fFileManager->CreateHnFile();
      -    finalResult = finalResult && result;
      -  }  
      -
      -  // Create ntuples if they are booked
      -  // (The files will be created with creating ntuples)
      -  fNtupleManager->CreateNtuplesFromBooking();
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()->Message("open", "analysis file", name, finalResult);
      -#endif
      -  
         return finalResult;
       }  
         
      @@ -321,13 +281,13 @@ G4bool G4XmlAnalysisManager::WriteImpl()
         auto finalResult = true;
       
       #ifdef G4VERBOSE
      -  auto name = fFileManager->GetFullFileName();
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()->Message("write", "files", name);
      +  if ( fState.GetVerboseL4() ) {
      +    fState.GetVerboseL4()->Message("write", "files", "");
      +  }
       #endif
       
         // ntuples 
      -  WriteNtuple();
      +  fNtupleFileManager->ActionAtWrite();
       
         if ( ! fgMasterInstance && 
              ( ( ! fH1Manager->IsEmpty() ) || ( ! fH2Manager->IsEmpty() ) || 
      @@ -341,10 +301,6 @@ G4bool G4XmlAnalysisManager::WriteImpl()
             << "      " << "Histogram data will not be merged.";
             G4Exception("G4XmlAnalysisManager::Write()",
                       "Analysis_W031", JustWarning, description);
      -                
      -    // Create Hn file per thread
      -    auto result = fFileManager->CreateHnFile();
      -    if ( ! result ) return false;       
         }
       
         // H1
      @@ -371,12 +327,12 @@ G4bool G4XmlAnalysisManager::WriteImpl()
         if ( IsAscii() ) {
           result = WriteAscii(fFileManager->GetFileName());
           finalResult = finalResult && result;
      -  }   
      +  }
       
       #ifdef G4VERBOSE
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()
      -      ->Message("write", "file", fFileManager->GetFullFileName(), finalResult);
      +  if ( fState.GetVerboseL2() ) {
      +    fState.GetVerboseL2()->Message("write", "files", "", finalResult);
      +  }
       #endif
       
         return finalResult;
      @@ -392,36 +348,33 @@ G4bool G4XmlAnalysisManager::CloseFileImpl(G4bool reset)
           fState.GetVerboseL4()->Message("close", "files", "");
       #endif
       
      -  // Unlock file name only
      -  auto result = fFileManager->CloseFile();
      +  // close open files
      +  auto result = fFileManager->CloseFiles();
         finalResult = finalResult && result;
         
         // Close Hn file
      -  result = fFileManager->CloseHnFile();  
      -  finalResult = finalResult && result;
      +  // result = fFileManager->CloseHnFile();  
      +  // finalResult = finalResult && result;
         
         // Close ntuple files
      -  result = CloseNtupleFiles();
      +  result = fNtupleFileManager->ActionAtCloseFile(reset);
         finalResult = finalResult && result;
       
      -  // reset data
      +  // Reset data
         if ( reset ) {
           result = Reset();
      -  } else {
      -    // ntuple must be reset 
      -    result = fNtupleManager->Reset(true);
      +    if ( ! result ) {
      +        G4ExceptionDescription description;
      +        description << "      " << "Resetting data failed";
      +        G4Exception("G4XmlAnalysisManager::CloseFile()",
      +                  "Analysis_W021", JustWarning, description);
      +    }
      +    finalResult = finalResult && result;
         }
      -  if ( ! result ) {
      -      G4ExceptionDescription description;
      -      description << "      " << "Resetting data failed";
      -      G4Exception("G4XmlAnalysisManager::CloseFile()",
      -                "Analysis_W021", JustWarning, description);
      -  } 
      -  finalResult = finalResult && result;
       
         // delete files if empty
         // (ntuple files are created only if an ntuple is created)
      -  if ( fFileManager->GetHnFile().get() && 
      +  if ( fFileManager->GetFile() &&
              fH1Manager->IsEmpty() && fH2Manager->IsEmpty() && fH3Manager->IsEmpty() &&
              fP1Manager->IsEmpty() && fP2Manager->IsEmpty() ) {
           result = ! std::remove(fFileManager->GetFullFileName());
      diff --git a/source/analysis/xml/src/G4XmlFileManager.cc b/source/analysis/xml/src/G4XmlFileManager.cc
      index d5b91d8a44..fed3cc7b0e 100644
      --- a/source/analysis/xml/src/G4XmlFileManager.cc
      +++ b/source/analysis/xml/src/G4XmlFileManager.cc
      @@ -27,24 +27,90 @@
       // Author: Ivana Hrivnacova, 18/06/2013  (ivana@ipno.in2p3.fr)
       
       #include "G4XmlFileManager.hh"
      +#include "G4XmlHnFileManager.hh"
       #include "G4AnalysisManagerState.hh"
       #include "G4AnalysisUtilities.hh"
       
       #include "tools/waxml/begend"
       
       using namespace G4Analysis;
      +using namespace tools;
       
       //_____________________________________________________________________________
       G4XmlFileManager::G4XmlFileManager(const G4AnalysisManagerState& state)
      - : G4VFileManager(state),
      -   fHnFile(nullptr)
      + : G4VTFileManager(state)
       {
      +  // Create helpers defined in the base class
      +  fH1FileManager = std::make_shared>(this);
      +  fH2FileManager = std::make_shared>(this);
      +  fH3FileManager = std::make_shared>(this);
      +  fP1FileManager = std::make_shared>(this);
      +  fP2FileManager = std::make_shared>(this);
       }
       
       //_____________________________________________________________________________
       G4XmlFileManager::~G4XmlFileManager()
       {}
       
      +// 
      +// private methods
      +//
      +
      +//_____________________________________________________________________________
      +G4String G4XmlFileManager::GetNtupleFileName(XmlNtupleDescription* ntupleDescription)
      +{
      +  // get ntuple file name
      +  auto ntupleFileName = ntupleDescription->fFileName;
      +  if ( ntupleFileName.size() ) {
      +    // update filename per object per thread
      +    ntupleFileName = GetTnFileName(ntupleFileName, GetFileType());
      +  } else {
      +    // compose ntuple file name from the default file name
      +    ntupleFileName = GetNtupleFileName(ntupleDescription->fNtupleBooking.name());
      +  }
      +  return ntupleFileName;
      +}  
      +
      +// 
      +// protected methods
      +//
      +
      +//_____________________________________________________________________________
      +std::shared_ptr G4XmlFileManager::CreateFileImpl(const G4String& fileName)
      +{
      +  std::shared_ptr file = std::make_shared(fileName);
      +  if ( file->fail() ) {
      +    file = nullptr;
      +    G4ExceptionDescription description;
      +    description << "      " << "Cannot create file " << fileName;
      +    G4Exception("G4XmlFileManager::CreateFileImpl()",
      +              "Analysis_W001", JustWarning, description);
      +    return nullptr;
      +  }
      +
      +  waxml::begin(*file);
      +  return file;
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4XmlFileManager::WriteFileImpl(std::shared_ptr /*file*/)
      +{
      +  // Nothing to be done here
      +  return true;  
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4XmlFileManager::CloseFileImpl(std::shared_ptr file)    
      +{
      +  if ( ! file ) return false;
      +
      +  // close file
      +  waxml::end(*file);
      +  file->close(); 
      +
      +  return true;
      +}
      +
       // 
       // public methods
       //
      @@ -54,144 +120,108 @@ G4bool G4XmlFileManager::OpenFile(const G4String& fileName)
       {
         // Keep and locks file name
         fFileName =  fileName;
      -  fLockFileName = true;
      +  auto name = GetFullFileName(fFileName);
      +
      +  if ( fFile ) {
      +    G4ExceptionDescription description;
      +    description << "File " << fileName << " already exists.";
      +    G4Exception("G4XmlFileManager::OpenFile()",
      +                "Analysis_W001", JustWarning, description);
      +    fFile.reset();
      +  }
      +
      +  // Create histograms file (on master)
      +  if ( fState.GetIsMaster() ) {
      +    // Create file (and save in in the file map (on master only)
      +    fFile = CreateTFile(name);
      +    if ( ! fFile) {
      +      G4ExceptionDescription description;
      +      description << "Failed to create file " << fileName;
      +      G4Exception("G4XmlFileManager::OpenFile()",
      +                  "Analysis_W001", JustWarning, description);
      +      return false;
      +    }
      +  }
      +
         fIsOpenFile = true;
       
         return true;
       }  
         
      -//_____________________________________________________________________________
      -G4bool G4XmlFileManager::WriteFile() 
      -{
      -  // Nothing to be done here
      -  return true;
      -}
      -
      -//_____________________________________________________________________________
      -G4bool G4XmlFileManager::CloseFile()
      -{
      -  // Unlock file name
      -  
      -  fLockFileName = false;
      -  fIsOpenFile = false;
      -  return true; 
      -} 
      -   
      -//_____________________________________________________________________________
      -G4bool G4XmlFileManager::CreateHnFile()
      -{
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()->Message("create", "histo file", GetFullFileName());
      -#endif
      -  
      -  // delete a previous file if it exists
      -  //if ( fHnFile ) delete fHnFile; 
      -  
      -  fHnFile = std::make_shared(GetFullFileName());
      -  if ( fHnFile->fail() ) {
      -    fHnFile = nullptr;
      -    G4ExceptionDescription description;
      -    description << "      " << "Cannot open file " << GetFullFileName();
      -    G4Exception("G4XmlFileManager::CreateHnFile()",
      -              "Analysis_W001", JustWarning, description);
      -    return false;
      -  }
      -
      -  tools::waxml::begin(*fHnFile);
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()->Message("create", "histo file", GetFullFileName());
      -#endif
      -
      -  return true;
      -}  
      -
      -//_____________________________________________________________________________
      -G4bool G4XmlFileManager::CloseHnFile()
      -{
      -  // No file may be open if no master manager is instantiated
      -  // and no histograms were booked
      -  if ( ! fHnFile.get() ) return true;
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()->Message("close", "histo file", GetFullFileName());
      -#endif
      -
      -  // close file
      -  tools::waxml::end(*fHnFile);
      -  fHnFile->close(); 
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()->Message("close", "histo file", GetFullFileName());
      -#endif
      -
      -
      -  return true; 
      -} 
      -   
       //_____________________________________________________________________________
       G4bool G4XmlFileManager::CreateNtupleFile(
      -  G4TNtupleDescription* ntupleDescription)
      +  XmlNtupleDescription* ntupleDescription)
       {
      -  G4String ntupleName = ntupleDescription->fNtupleBooking.name();
      +  // get ntuple file name per object (if defined)
      +  auto ntupleFileName = GetNtupleFileName(ntupleDescription);
       
       #ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()
      -      ->Message("create", "ntuple file", GetNtupleFileName(ntupleName));
      -#endif
      -
      -  auto ntupleFile = new std::ofstream(GetNtupleFileName(ntupleName));
      -  if ( ntupleFile->fail() ) {
      -    delete ntupleFile;
      -    G4ExceptionDescription description;
      -    description << "      " << "Cannot open file " 
      -                << GetNtupleFileName(ntupleName);
      -    G4Exception("G4XmlFileManager::CreateNtupleFile()",
      -                "Analysis_W001", JustWarning, description);
      -    return false;
      +  if ( fState.GetVerboseL4() ) {
      +    fState.GetVerboseL4()->Message("create", "ntuple file", ntupleFileName);
         }
      -  
      -  tools::waxml::begin(*ntupleFile);
      -  ntupleDescription->fFile = ntupleFile;
      -
      -#ifdef G4VERBOSE
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()
      -      ->Message("create", "ntuple file", GetNtupleFileName(ntupleName));
       #endif
       
      -  return true;
      +  // update file name if it is already in use
      +  while ( GetTFile(ntupleFileName, false) ) {
      +    // the file is already in use
      +    auto oldName = ntupleDescription->fFileName;
      +    auto newName = GetBaseName(oldName) + "_bis." + GetExtension(oldName);
      +    ntupleDescription->fFileName = newName;
      +
      +    G4ExceptionDescription description;
      +    description
      +      << "Ntuple filename " << oldName << " is already in use." << G4endl
      +      << "It will be replaced with : " << newName;
      +    G4Exception("G4XmlFileManager::CreateFileImpl()",
      +                "Analysis_W001", JustWarning, description);
      +
      +    ntupleFileName = GetNtupleFileName(ntupleDescription);
      +  }
      +
      +  ntupleDescription->fFile = CreateTFile(ntupleFileName);
      +
      +#ifdef G4VERBOSE
      +  if ( fState.GetVerboseL2() ) {
      +    fState.GetVerboseL2()->Message("create", "ntuple file", ntupleFileName);
      +  }
      +#endif
      +
      +  return (ntupleDescription->fFile != nullptr);
       }  
       
       //_____________________________________________________________________________
       G4bool G4XmlFileManager::CloseNtupleFile(
      -  G4TNtupleDescription* ntupleDescription)
      +  XmlNtupleDescription* ntupleDescription)
       {
         // Do nothing if there is no file
         if ( ! ntupleDescription->fFile ) return true;
       
      -  G4String ntupleName = ntupleDescription->fNtupleBooking.name();
      +  auto finalResult = true;
      +
      +  auto ntupleFileName = GetNtupleFileName(ntupleDescription);
       
       #ifdef G4VERBOSE
      -  if ( fState.GetVerboseL4() ) 
      -    fState.GetVerboseL4()
      -      ->Message("close", "ntuple file", GetNtupleFileName(ntupleName));
      +  if ( fState.GetVerboseL4() ) {
      +    fState.GetVerboseL4()->Message("close", "ntuple file", ntupleFileName);
      +  }
       #endif
       
         // close file
      -  tools::waxml::end(*(ntupleDescription->fFile));
      -  ntupleDescription->fFile->close(); 
      +  auto result = CloseTFile(ntupleFileName);
      +  finalResult = result && finalResult;
      +
      +  // Notify not empty file
      +  result = SetIsEmpty(ntupleFileName, ! ntupleDescription->fHasFill);
      +  finalResult = result && finalResult;
      +
      +  // Reset file info in ntuple description
      +  ntupleDescription->fFile.reset();
       
       #ifdef G4VERBOSE
      -  if ( fState.GetVerboseL1() ) 
      -    fState.GetVerboseL1()
      -      ->Message("close", "ntuple file", GetNtupleFileName(ntupleName));
      +  if ( fState.GetVerboseL2() ) {
      +    fState.GetVerboseL2()->Message("close", "ntuple file", ntupleFileName);
      +  }
       #endif
       
      -  return true; 
      -} 
      -   
      +  return result; 
      +}
      diff --git a/source/analysis/xml/src/G4XmlNtupleFileManager.cc b/source/analysis/xml/src/G4XmlNtupleFileManager.cc
      new file mode 100644
      index 0000000000..c289f43614
      --- /dev/null
      +++ b/source/analysis/xml/src/G4XmlNtupleFileManager.cc
      @@ -0,0 +1,136 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +// Author: Ivana Hrivnacova, 18/06/2013  (ivana@ipno.in2p3.fr)
      +
      +#include "G4XmlNtupleFileManager.hh"
      +#include "G4XmlFileManager.hh"
      +#include "G4XmlNtupleManager.hh"
      +#include "G4AnalysisManagerState.hh"
      +#include "G4AnalysisUtilities.hh"
      +#include "G4Threading.hh"
      +#include "G4AutoLock.hh"
      +
      +using std::make_shared;
      +
      +//_____________________________________________________________________________
      +G4XmlNtupleFileManager::G4XmlNtupleFileManager(const G4AnalysisManagerState& state)
      + : G4VNtupleFileManager(state, "csv"),
      +   fFileManager(nullptr),
      +   fNtupleManager(nullptr)
      +{}
      +
      +//_____________________________________________________________________________
      +G4XmlNtupleFileManager::~G4XmlNtupleFileManager()
      +{}
      +
      +// 
      +// private methods
      +//
      +
      +//_____________________________________________________________________________
      +G4bool G4XmlNtupleFileManager::CloseNtupleFiles()
      +{
      + // Close ntuple files
      +
      +  auto finalResult = true;
      +  auto ntupleVector = fNtupleManager->GetNtupleDescriptionVector();
      +  for ( auto ntupleDescription : ntupleVector) {
      +    auto result = fFileManager->CloseNtupleFile(ntupleDescription);
      +    finalResult = finalResult && result;
      +  }
      +
      +  return finalResult;
      +}    
      +
      +// 
      +// public methods
      +//
      +
      +//_____________________________________________________________________________
      +std::shared_ptr G4XmlNtupleFileManager::CreateNtupleManager()
      +{
      +  fNtupleManager = std::make_shared(fState);
      +  fNtupleManager->SetFileManager(fFileManager);
      +  
      +  return fNtupleManager;
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4XmlNtupleFileManager::ActionAtOpenFile(const G4String& /*fileName*/)
      +{
      +  // Create ntuples if they are booked
      +  // (The files will be created with creating ntuples)
      +  fNtupleManager->CreateNtuplesFromBooking(
      +    fBookingManager->GetNtupleBookingVector());
      +  
      +  return true;
      +}  
      +  
      +//_____________________________________________________________________________
      +G4bool G4XmlNtupleFileManager::ActionAtWrite() 
      +{
      +  auto ntupleVector = fNtupleManager->GetNtupleDescriptionVector();
      +
      +  for ( auto ntuple : ntupleVector ) {
      +    if ( ntuple->fNtuple ) ntuple->fNtuple->write_trailer();
      +  }
      +  
      +  return true;
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4XmlNtupleFileManager::ActionAtCloseFile(G4bool reset)
      +{
      +  auto finalResult = true;
      +  
      +  // Close ntuple files
      +  auto result = CloseNtupleFiles();
      +  finalResult = finalResult && result;
      +
      +  // Reset data
      +  if ( ! reset ) {
      +    result = Reset();
      +    if ( ! result ) {
      +        G4ExceptionDescription description;
      +        description << "      " << "Resetting data failed";
      +        G4Exception("G4XmlNtupleFileManager::CloseFile()",
      +                  "Analysis_W021", JustWarning, description);
      +    }
      +    finalResult = finalResult && result;
      +  }
      +
      +  return finalResult; 
      +}
      +
      +//_____________________________________________________________________________
      +G4bool G4XmlNtupleFileManager::Reset()
      +{
      +// Reset histograms and ntuple
      +
      +  return fNtupleManager->Reset(true);
      +}  
      + 
      diff --git a/source/analysis/xml/src/G4XmlNtupleManager.cc b/source/analysis/xml/src/G4XmlNtupleManager.cc
      index 4bdac78a2f..c39e890fdd 100644
      --- a/source/analysis/xml/src/G4XmlNtupleManager.cc
      +++ b/source/analysis/xml/src/G4XmlNtupleManager.cc
      @@ -42,7 +42,7 @@ using namespace G4Analysis;
       
       //_____________________________________________________________________________
       G4XmlNtupleManager::G4XmlNtupleManager(const G4AnalysisManagerState& state)
      - : G4TNtupleManager(state),
      + : G4TNtupleManager(state),
          fFileManager(nullptr)
       {}
       
      @@ -54,26 +54,9 @@ G4XmlNtupleManager::~G4XmlNtupleManager()
       // private methods
       //
       
      -//_____________________________________________________________________________
      -void G4XmlNtupleManager::CreateTNtuple(
      -  G4TNtupleDescription* ntupleDescription,
      -  const G4String& /*name*/, const G4String& /*title*/)
      -{
      -  // Create ntuple if the file is open (what means here that
      -  // a filename was already set)
      -  if ( fFileManager->GetFileName().size() ) {
      -    if ( fFileManager->CreateNtupleFile(ntupleDescription) ) {
      -      ntupleDescription->fNtuple 
      -        = new tools::waxml::ntuple(*(ntupleDescription->fFile));
      -           // ntuple object is deleted when closing a file
      -      fNtupleVector.push_back(ntupleDescription->fNtuple);       
      -    }       
      -  }
      -}
      -
       //_____________________________________________________________________________
       void G4XmlNtupleManager::CreateTNtupleFromBooking(
      -  G4TNtupleDescription* ntupleDescription)
      +  XmlNtupleDescription* ntupleDescription)
       {
           // create a file for this ntuple
           if ( ! fFileManager->CreateNtupleFile(ntupleDescription) ) return;
      @@ -87,7 +70,7 @@ void G4XmlNtupleManager::CreateTNtupleFromBooking(
       
       //_____________________________________________________________________________
       void G4XmlNtupleManager::FinishTNtuple(
      -  G4TNtupleDescription* ntupleDescription,
      +  XmlNtupleDescription* ntupleDescription,
         G4bool /*fromBooking*/)
       
       {
      @@ -99,11 +82,20 @@ void G4XmlNtupleManager::FinishTNtuple(
           CreateTNtupleFromBooking(ntupleDescription);
         }
       
      +  // Return if creating ntuple failed
      +  if ( ! ntupleDescription->fNtuple ) {
      +    G4ExceptionDescription description;
      +    description << "Creating ntuple has failed. ";
      +    G4Exception("G4XmlNtupleManager::FinishTNtuple()",
      +                "Analysis_W022", JustWarning, description);
      +    return;
      +  }
      +
         // Write header
         G4String path = "/";
         path.append(fFileManager->GetNtupleDirectoryName());
         ntupleDescription->fNtuple
           ->write_header(path, ntupleDescription->fNtupleBooking.name(), 
                          ntupleDescription->fNtupleBooking.title());  
      -  fFileManager->LockNtupleDirectoryName();
      +  fFileManager->LockDirectoryNames();
       }
      diff --git a/source/analysis/xml/src/G4XmlRFileManager.cc b/source/analysis/xml/src/G4XmlRFileManager.cc
      index 8be0e9fd11..6f1108da68 100644
      --- a/source/analysis/xml/src/G4XmlRFileManager.cc
      +++ b/source/analysis/xml/src/G4XmlRFileManager.cc
      @@ -28,6 +28,7 @@
       
       #include "G4XmlRFileManager.hh"
       #include "G4AnalysisManagerState.hh"
      +#include "G4AnalysisUtilities.hh"
       
       #include "tools/waxml/begend"
       
      diff --git a/source/analysis/xml/src/G4XmlRNtupleManager.cc b/source/analysis/xml/src/G4XmlRNtupleManager.cc
      index 0b280d07c7..7b6ede9b93 100644
      --- a/source/analysis/xml/src/G4XmlRNtupleManager.cc
      +++ b/source/analysis/xml/src/G4XmlRNtupleManager.cc
      @@ -100,7 +100,7 @@ G4bool G4XmlRNtupleManager::SetNtupleIColumn(G4int ntupleId,
         if ( fState.GetVerboseL2() ) {
           G4ExceptionDescription description;
           description << " ntupleId " << ntupleId << " " << columnName;  
      -    fState.GetVerboseL2()->Message("set", "ntuple I colum", description, true);
      +    fState.GetVerboseL2()->Message("set", "ntuple I column", description, true);
         }  
       #endif
       
      @@ -138,7 +138,7 @@ G4bool G4XmlRNtupleManager::SetNtupleFColumn(G4int ntupleId,
         if ( fState.GetVerboseL2() ) {
           G4ExceptionDescription description;
           description << " ntupleId " << ntupleId << " " << columnName;  
      -    fState.GetVerboseL2()->Message("set", "ntuple F colum", description, true);
      +    fState.GetVerboseL2()->Message("set", "ntuple F column", description, true);
         }  
       #endif
       
      @@ -176,7 +176,7 @@ G4bool G4XmlRNtupleManager::SetNtupleDColumn(G4int ntupleId,
         if ( fState.GetVerboseL2() ) {
           G4ExceptionDescription description;
           description << " ntupleId " << ntupleId << " " << columnName;  
      -    fState.GetVerboseL2()->Message("set", "ntuple D colum", description, true);
      +    fState.GetVerboseL2()->Message("set", "ntuple D column", description, true);
         }  
       #endif
       
      diff --git a/source/digits_hits/detector/History b/source/digits_hits/detector/History
      index e8386ba06f..89704ac8ec 100644
      --- a/source/digits_hits/detector/History
      +++ b/source/digits_hits/detector/History
      @@ -15,6 +15,19 @@ committal in the CVS repository !
            ----------------------------------------------------------
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
      +
      +Sep 12, 2020 B. Morgan (det-V10-06-02)
      +- Apply typo fixes from Gurkan Myczko (https://github.com/Geant4/geant4/pull/15)
      +
      +Sep 23, 2020  M.Asai (det-V10-06-01)
      +- G4VScoreHistFiller and G4TScoreHistFiller :
      +  Adding 2D and 3D histogram and 1P and 2P profile graph options.
      +
      +Sep 7, 2020  M.Asai (det-V10-06-00)
      +- Introducing G4VScoreHistFiller and G4TScoreHistFiller that allow scorers to fill
      +  histograms defined by G4Analysis
      +- G4VPrimitivePlotter.hh is moved from digits_hits/util.
      +
       April 28, 2020  John Apostolakis
       - Added ComputeSolid methods to G4VPrimitiveScorer
       
      @@ -28,8 +41,8 @@ June 4, 2007, A.Howard
       
       May 31, 2007, A.Howard
       - Removed classes associated with old biasing/scoring scheme:
      -  G4CellScoreComposer, G4CellScoreValues, G4CellStoreScorer 
      -  (in module tag: "digits_hits-V08-03-02") 
      +  G4CellScoreComposer, G4CellScoreValues, G4CellStoreScorer
      +  (in module tag: "digits_hits-V08-03-02")
       - Files remain on the HEAD for testing purposes
       
       Jul,  1st 2004 G.Cosmo
      diff --git a/source/digits_hits/detector/include/G4TScoreHistFiller.hh b/source/digits_hits/detector/include/G4TScoreHistFiller.hh
      new file mode 100644
      index 0000000000..6387002cd4
      --- /dev/null
      +++ b/source/digits_hits/detector/include/G4TScoreHistFiller.hh
      @@ -0,0 +1,91 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +#ifndef G4TScoreHistFiller_h
      +#define G4TScoreHistFiller_h 1
      +
      +#include "G4VScoreHistFiller.hh"
      +#include "globals.hh"
      +
      +#include 
      +
      +// class description:
      +//
      +// This class implements filling histogram
      +// In order to avoid introducing dependency on the analysis category,
      +// the analysis manager type is defined via template.
      +//
      +// Created : M. Asai (Sept. 2020)
      +//
      +
      +template 
      +class G4TScoreHistFiller : public G4VScoreHistFiller
      +{
      +  public: 
      +    G4TScoreHistFiller();
      +    virtual ~G4TScoreHistFiller();
      +    
      +    // methods
      +    virtual void FillH1(G4int id, G4double value, G4double weight = 1.0);
      +    virtual void FillH2(G4int id, G4double xvalue, G4double yvalue,
      +                  G4double weight = 1.0);
      +    virtual void FillH3(G4int id,
      +                  G4double xvalue, G4double yvalue, G4double zvalue,
      +                  G4double weight = 1.0);
      +    virtual void FillP1(G4int id, G4double xvalue, G4double yvalue,
      +                  G4double weight = 1.0);
      +    virtual void FillP2(G4int id,
      +                  G4double xvalue, G4double yvalue, G4double zvalue,
      +                  G4double weight = 1.0);
      +
      +    virtual G4bool CheckH1(G4int id);
      +    virtual G4bool CheckH2(G4int id);
      +    virtual G4bool CheckH3(G4int id);
      +    virtual G4bool CheckP1(G4int id);
      +    virtual G4bool CheckP2(G4int id);
      +
      +    void SetVerboseLevel(G4int value);
      +    G4int GetVerboseLevel() const
      +    { return fVerboseLevel; }
      +
      +  protected:
      +    // methods
      +    virtual G4VScoreHistFiller* CreateInstance() const;
      +
      +  private:
      +    // methods
      +    void CreateAnalysisManager();
      +
      +    // data members
      +    T*       fAnalysisManager = nullptr;
      +    G4int    fVerboseLevel = 0;
      +    G4bool   fHasAnalysisManager = false;
      +    G4bool   fIsInitialized = false;
      +};
      +
      +#include "G4TScoreHistFiller.icc"
      +
      +#endif
      diff --git a/source/digits_hits/detector/include/G4TScoreHistFiller.icc b/source/digits_hits/detector/include/G4TScoreHistFiller.icc
      new file mode 100644
      index 0000000000..e427deed77
      --- /dev/null
      +++ b/source/digits_hits/detector/include/G4TScoreHistFiller.icc
      @@ -0,0 +1,228 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// class description:
      +//
      +// This class implements filling histogram
      +// In order to avoid introducing dependency on the analysis category,
      +// the analysis manager type is defined via template.
      +//
      +// Created : M. Asai (Sept. 2020)
      +//
      +//
      +
      +template 
      +G4TScoreHistFiller::G4TScoreHistFiller()
      +{;}
      +
      +template 
      +G4TScoreHistFiller::~G4TScoreHistFiller()
      +{
      +  if( fHasAnalysisManager )
      +  { delete fAnalysisManager; }
      +}
      +
      +template 
      +void G4TScoreHistFiller::CreateAnalysisManager()
      +{
      +  // create analysis manager
      +  if( ! T::IsInstance() ) fHasAnalysisManager = true;
      +  fAnalysisManager = T::Instance();
      + 
      +  fAnalysisManager->SetVerboseLevel(fVerboseLevel);
      +}
      +
      +template 
      +G4VScoreHistFiller* G4TScoreHistFiller::CreateInstance() const
      +{
      +  auto instance = new G4TScoreHistFiller();
      +  instance->SetVerboseLevel(fVerboseLevel);
      +
      +  return instance;
      +}
      +
      +template 
      +void G4TScoreHistFiller::SetVerboseLevel(G4int value)
      +{ 
      +  fVerboseLevel = value; 
      +  if( fAnalysisManager ) {
      +    fAnalysisManager->SetVerboseLevel(value);
      +  }
      +}
      +
      +template 
      +void G4TScoreHistFiller::FillH1(G4int id, G4double value, G4double weight)
      +{
      +  if( !fAnalysisManager ) 
      +  { CreateAnalysisManager(); }
      +
      +  if( ! CheckH1(id) ) {
      +    G4ExceptionDescription description;
      +    description
      +      << "      "
      +      << "Cannot fill histogram id=" << id << ". Histogram is not defined.";
      +    G4Exception("G4TScoreHistFiller::FillH1",
      +                "Digits_hits_utils_001", JustWarning, description);
      +
      +    return;
      +  }
      +
      +  fAnalysisManager->FillH1(id, value, weight);
      +
      +#ifdef G4VERBOSE
      +  if( fVerboseLevel > 1 ) {
      +    G4cout << "--- done G4TScoreHistFiller::FillH1 : id = " << id << G4endl;
      +  }
      +#endif
      +}
      +
      +template 
      +void G4TScoreHistFiller::FillH2(G4int id, G4double xvalue, G4double yvalue,
      +                             G4double weight)
      +{
      +  if( !fAnalysisManager )
      +  { CreateAnalysisManager(); }
      +
      +  if( ! CheckH2(id) ) {
      +    G4ExceptionDescription description;
      +    description
      +      << "      "
      +      << "Cannot fill histogram id=" << id << ". Histogram is not defined.";
      +    G4Exception("G4TScoreHistFiller::FillH2",
      +                "Digits_hits_utils_001", JustWarning, description);
      +
      +    return;
      +  }
      +
      +  fAnalysisManager->FillH2(id, xvalue, yvalue, weight);
      +
      +#ifdef G4VERBOSE
      +  if( fVerboseLevel > 1 ) {
      +    G4cout << "--- done G4TScoreHistFiller::FillH2 : id = " << id << G4endl;
      +  }
      +#endif
      +}
      +
      +template 
      +void G4TScoreHistFiller::FillH3(G4int id, G4double xvalue, G4double yvalue,
      +                             G4double zvalue, G4double weight)
      +{
      +  if( !fAnalysisManager )
      +  { CreateAnalysisManager(); }
      +
      +  if( ! CheckH3(id) ) {
      +    G4ExceptionDescription description;
      +    description
      +      << "      "
      +      << "Cannot fill histogram id=" << id << ". Histogram is not defined.";
      +    G4Exception("G4TScoreHistFiller::FillH3",
      +                "Digits_hits_utils_001", JustWarning, description);
      +
      +    return;
      +  }
      +
      +  fAnalysisManager->FillH3(id, xvalue, yvalue, zvalue, weight);
      +
      +#ifdef G4VERBOSE
      +  if( fVerboseLevel > 1 ) {
      +    G4cout << "--- done G4TScoreHistFiller::FillH3 : id = " << id << G4endl;
      +  }
      +#endif
      +}
      +
      +template 
      +void G4TScoreHistFiller::FillP1(G4int id, G4double xvalue, G4double yvalue,
      +                             G4double weight)
      +{
      +  if( !fAnalysisManager )
      +  { CreateAnalysisManager(); }
      +
      +  if( ! CheckP1(id) ) {
      +    G4ExceptionDescription description;
      +    description
      +      << "      "
      +      << "Cannot fill histogram id=" << id << ". Histogram is not defined.";
      +    G4Exception("G4TScoreHistFiller::FillP1",
      +                "Digits_hits_utils_001", JustWarning, description);
      +
      +    return;
      +  }
      +
      +  fAnalysisManager->FillP1(id, xvalue, yvalue, weight);
      +
      +#ifdef G4VERBOSE
      +  if( fVerboseLevel > 1 ) {
      +    G4cout << "--- done G4TScoreHistFiller::FillP1 : id = " << id << G4endl;
      +  }
      +#endif
      +}
      +
      +template 
      +void G4TScoreHistFiller::FillP2(G4int id, G4double xvalue, G4double yvalue,
      +                             G4double zvalue, G4double weight)
      +{
      +  if( !fAnalysisManager )
      +  { CreateAnalysisManager(); }
      +
      +  if( ! CheckP2(id) ) {
      +    G4ExceptionDescription description;
      +    description
      +      << "      "
      +      << "Cannot fill histogram id=" << id << ". Histogram is not defined.";
      +    G4Exception("G4TScoreHistFiller::FillP2",
      +                "Digits_hits_utils_001", JustWarning, description);
      +
      +    return;
      +  }
      +
      +  fAnalysisManager->FillP2(id, xvalue, yvalue, zvalue, weight);
      +
      +#ifdef G4VERBOSE
      +  if( fVerboseLevel > 1 ) {
      +    G4cout << "--- done G4TScoreHistFiller::FillP2 : id = " << id << G4endl;
      +  }
      +#endif
      +}
      +
      +template 
      +G4bool G4TScoreHistFiller::CheckH1(G4int id)
      +{ return (fAnalysisManager->GetH1(id) != nullptr); }
      +
      +template 
      +G4bool G4TScoreHistFiller::CheckH2(G4int id)
      +{ return (fAnalysisManager->GetH2(id) != nullptr); }
      +
      +template 
      +G4bool G4TScoreHistFiller::CheckH3(G4int id)
      +{ return (fAnalysisManager->GetH3(id) != nullptr); }
      +
      +template 
      +G4bool G4TScoreHistFiller::CheckP1(G4int id)
      +{ return (fAnalysisManager->GetP1(id) != nullptr); }
      +
      +template 
      +G4bool G4TScoreHistFiller::CheckP2(G4int id)
      +{ return (fAnalysisManager->GetP2(id) != nullptr); }
      +
      diff --git a/source/digits_hits/utils/include/G4VPrimitivePlotter.hh b/source/digits_hits/detector/include/G4VPrimitivePlotter.hh
      similarity index 100%
      rename from source/digits_hits/utils/include/G4VPrimitivePlotter.hh
      rename to source/digits_hits/detector/include/G4VPrimitivePlotter.hh
      diff --git a/source/digits_hits/detector/include/G4VScoreHistFiller.hh b/source/digits_hits/detector/include/G4VScoreHistFiller.hh
      new file mode 100644
      index 0000000000..dd6632a26f
      --- /dev/null
      +++ b/source/digits_hits/detector/include/G4VScoreHistFiller.hh
      @@ -0,0 +1,84 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// Class G4VScoreHistFiller
      +//
      +// Class description:
      +//  Abstract base class that defines functions to fill histogram and
      +//  profile plot. This class avoids the direct dependency to G4Analysis
      +//  category. Template class G4TScoreHistFiller should be used by the
      +//  user to specify the type of the file format.
      +//
      +//  Created: M. Asai (Sept. 2020)
      +//
      +
      +#ifndef G4VScoreHistFiller_h
      +#define G4VScoreHistFiller_h 1
      +
      +#include "G4Threading.hh"
      +#include "globals.hh"
      +
      +// class description:
      +//
      +// This class implements the interface for filling histograms from scorer
      +// type vith Geant4 analysis tools.
      +
      +class G4VScoreHistFiller
      +{
      +  public: 
      +    virtual ~G4VScoreHistFiller();
      +
      +    // static method
      +    static G4VScoreHistFiller* Instance();
      +
      +    // methods
      +    virtual void FillH1(G4int id, G4double value, G4double weight = 1.0) = 0;
      +    virtual void FillH2(G4int id, G4double xvalue, G4double yvalue,
      +                  G4double weight = 1.0) = 0;
      +    virtual void FillH3(G4int id,
      +                  G4double xvalue, G4double yvalue, G4double zvalue,
      +                  G4double weight = 1.0) = 0;
      +    virtual void FillP1(G4int id, G4double xvalue, G4double yvalue,
      +                  G4double weight = 1.0) = 0;
      +    virtual void FillP2(G4int id,
      +                  G4double xvalue, G4double yvalue, G4double zvalue,
      +                  G4double weight = 1.0) = 0;
      +
      +    virtual G4bool CheckH1(G4int id) = 0;
      +    virtual G4bool CheckH2(G4int id) = 0;
      +    virtual G4bool CheckH3(G4int id) = 0;
      +    virtual G4bool CheckP1(G4int id) = 0;
      +    virtual G4bool CheckP2(G4int id) = 0;
      +
      +  protected:
      +    G4VScoreHistFiller();
      +    virtual G4VScoreHistFiller* CreateInstance() const = 0;
      +
      +    // static data members
      +    static G4VScoreHistFiller* fgMasterInstance;    
      +    static G4ThreadLocal G4VScoreHistFiller* fgInstance;    
      +};
      +
      +#endif
      diff --git a/source/digits_hits/detector/sources.cmake b/source/digits_hits/detector/sources.cmake
      index 73cd21fd67..5efd14d294 100644
      --- a/source/digits_hits/detector/sources.cmake
      +++ b/source/digits_hits/detector/sources.cmake
      @@ -19,9 +19,13 @@ geant4_define_module(NAME G4detector
           G4SensitiveVolumeList.hh
           G4SensitiveVolumeList.icc
           G4TrackLogger.hh
      +    G4TScoreHistFiller.hh
      +    G4TScoreHistFiller.icc
      +    G4VPrimitivePlotter.hh
           G4VPrimitiveScorer.hh
           G4VReadOutGeometry.hh
           G4VSDFilter.hh
      +    G4VScoreHistFiller.hh
           G4VSensitiveDetector.hh
           G4MultiSensitiveDetector.hh
         SOURCES
      @@ -36,6 +40,7 @@ geant4_define_module(NAME G4detector
           G4VPrimitiveScorer.cc
           G4VReadOutGeometry.cc
           G4VSDFilter.cc
      +    G4VScoreHistFiller.cc
           G4VSensitiveDetector.cc
           G4MultiSensitiveDetector.cc
         GRANULAR_DEPENDENCIES
      diff --git a/source/digits_hits/detector/src/G4SDStructure.cc b/source/digits_hits/detector/src/G4SDStructure.cc
      index a0f2cc016d..9906a91f8e 100644
      --- a/source/digits_hits/detector/src/G4SDStructure.cc
      +++ b/source/digits_hits/detector/src/G4SDStructure.cc
      @@ -85,7 +85,7 @@ void G4SDStructure::AddNewDetector(G4VSensitiveDetector*aSD,
       #ifdef G4VERBOSE
             G4ExceptionDescription ed;
             ed << aSD->GetName() << " had already been stored in "
      -         << pathName << ". Object pointer is overwitten.\n";
      +         << pathName << ". Object pointer is overwritten.\n";
             ed << "It's users' responsibility to delete the old sensitive detector object.";
             G4Exception("G4SDStructure::AddNewDetector()","DET1010",JustWarning,ed);
       #endif
      diff --git a/source/digits_hits/detector/src/G4VScoreHistFiller.cc b/source/digits_hits/detector/src/G4VScoreHistFiller.cc
      new file mode 100644
      index 0000000000..6e14a0128d
      --- /dev/null
      +++ b/source/digits_hits/detector/src/G4VScoreHistFiller.cc
      @@ -0,0 +1,90 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// Class G4VScoreHistFiller
      +//
      +// Class description:
      +//  Abstract base class that defines functions to fill histogram and
      +//  profile plot. This class avoids the direct dependency to G4Analysis
      +//  category. Template class G4TScoreHistFiller should be used by the
      +//  user to specify the type of the file format.
      +//
      +//  Created: M. Asai (Sept. 2020)
      +//
      +//
      +
      +#include "G4VScoreHistFiller.hh"
      +
      +G4VScoreHistFiller* G4VScoreHistFiller::fgMasterInstance = nullptr;    
      +G4ThreadLocal G4VScoreHistFiller* G4VScoreHistFiller::fgInstance = nullptr;    
      +
      +G4VScoreHistFiller* G4VScoreHistFiller::Instance()
      +{
      +// This function invokes creating the objects on workes,
      +// The master instance should be created by the user 
      +// via the concrete class constructor
      +
      +  G4bool isMaster = ! G4Threading::IsWorkerThread();
      +
      +  if ( ( ! isMaster ) && ( ! fgInstance ) ) {
      +    if ( fgMasterInstance ) {
      +      fgInstance = fgMasterInstance->CreateInstance();
      +    }
      +  }
      +
      +  return fgInstance;
      +}    
      +
      +G4VScoreHistFiller::G4VScoreHistFiller()
      +{
      +  G4bool isMaster = ! G4Threading::IsWorkerThread();
      +
      +  if ( isMaster && fgMasterInstance  ) {
      +    G4ExceptionDescription description;
      +    description 
      +      << "      " 
      +      << "G4VScoreHistFiller on master already exists." 
      +      << "Cannot create another instance.";
      +    G4Exception("G4VScoreHistFiller::G4VScoreHistFiller()",
      +                "Analysis_F001", FatalException, description);
      +  }
      +  if ( fgInstance ) {
      +    G4ExceptionDescription description;
      +    description 
      +      << "      " 
      +      << "G4VScoreHistFiller on worker already exists." 
      +      << "Cannot create another instance.";
      +    G4Exception("G4VScoreHistFiller::G4VScoreHistFiller()",
      +                "Analysis_F001", FatalException, description);
      +  }
      +  if ( isMaster ) fgMasterInstance = this;
      +  fgInstance = this;
      +}
      +
      +G4VScoreHistFiller::~G4VScoreHistFiller()
      +{
      +  fgInstance = 0;
      +}
      +
      diff --git a/source/digits_hits/scorer/History b/source/digits_hits/scorer/History
      index 9974b55c15..816045390f 100644
      --- a/source/digits_hits/scorer/History
      +++ b/source/digits_hits/scorer/History
      @@ -16,6 +16,17 @@ committal in the CVS repository !
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
       
      +October 6, 2020  Makoto Asai (detscorer-V10-06-01)
      +- Migrate following scorers to use G4PrimitivePlotter to directly fill histograms.
      +   G4PSCellFlux G4PSCylinderSurfaceCurrent G4PSCylinderSurfaceFlux G4PSDoseDeposit
      +   G4PSEnergyDeposit G4PSFlatSurfaceCurrent G4PSFlatSurfaceFlux G4PSMinKinEAtGeneration
      +   G4PSNofSecondary G4PSNofStep G4PSPassageCellCurrent G4PSPassageCellFlux
      +   G4PSPassageTrackLength G4PSTrackCounter
      +
      +September 3, 2020  Makoto Asai (detscorer-V10-06-00)
      +- Introduing a new scorer G4PSVolumeFlux
      +- Use G4VPrimitivePlotter base class to allow scorers to directly fill histograms
      +
       February 2 2015  Gabriele Cosmo  (detscorer-V10-01-00)
       - Fix to sources.cmake script to include missing dependency on external library.
       
      diff --git a/source/digits_hits/scorer/include/G4PSCellFlux.hh b/source/digits_hits/scorer/include/G4PSCellFlux.hh
      index 920b09c926..789561881a 100644
      --- a/source/digits_hits/scorer/include/G4PSCellFlux.hh
      +++ b/source/digits_hits/scorer/include/G4PSCellFlux.hh
      @@ -29,7 +29,7 @@
       #ifndef G4PSCellFlux_h
       #define G4PSCellFlux_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       
       class G4VSolid;
      @@ -49,11 +49,13 @@ class G4VSolid;
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
       // 2010-07-22   Add weighted option
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. cell flux * track weight (y)         (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
       
      -class G4PSCellFlux : public G4VPrimitiveScorer
      +class G4PSCellFlux : public G4VPrimitivePlotter
       {
          public: // with description
             G4PSCellFlux(G4String name, G4int depth=0);
      diff --git a/source/digits_hits/scorer/include/G4PSCylinderSurfaceCurrent.hh b/source/digits_hits/scorer/include/G4PSCylinderSurfaceCurrent.hh
      index 0569230dd1..7d096c9e42 100644
      --- a/source/digits_hits/scorer/include/G4PSCylinderSurfaceCurrent.hh
      +++ b/source/digits_hits/scorer/include/G4PSCylinderSurfaceCurrent.hh
      @@ -29,11 +29,12 @@
       #ifndef G4PSCylinderSurfaceCurrent_h
       #define G4PSCylinderSurfaceCurrent_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       
       #include "G4Tubs.hh"
       #include "G4PSDirectionFlag.hh"
      +
       ////////////////////////////////////////////////////////////////////////////////
       // (Description)
       //   This is a primitive scorer class for scoring Surface Current.
      @@ -51,10 +52,12 @@
       //
       // Created: 2007-03-21  Tsukasa ASO
       // 2010-07-22   Introduce Unit specification.
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. surface current * track weight (y)             (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
      -class G4PSCylinderSurfaceCurrent : public G4VPrimitiveScorer
      +class G4PSCylinderSurfaceCurrent : public G4VPrimitivePlotter
       {
        
         public: // with description
      diff --git a/source/digits_hits/scorer/include/G4PSCylinderSurfaceFlux.hh b/source/digits_hits/scorer/include/G4PSCylinderSurfaceFlux.hh
      index 8c62f7368f..440ad2080f 100644
      --- a/source/digits_hits/scorer/include/G4PSCylinderSurfaceFlux.hh
      +++ b/source/digits_hits/scorer/include/G4PSCylinderSurfaceFlux.hh
      @@ -29,7 +29,7 @@
       #ifndef G4PSCylinderSurfaceFlux_h
       #define G4PSCylinderSurfaceFlux_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       #include "G4Tubs.hh"
       #include "G4PSDirectionFlag.hh"
      @@ -52,10 +52,12 @@
       // Created: 2007-03-29  Tsukasa ASO
       // 2010-07-22   Introduce Unit specification.
       // 2010-07-22   Add weighted and divideByArea options
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. surface flux * track weight (y)        (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
      -class G4PSCylinderSurfaceFlux : public G4VPrimitiveScorer
      +class G4PSCylinderSurfaceFlux : public G4VPrimitivePlotter
       {
         public: // with description
             G4PSCylinderSurfaceFlux(G4String name,G4int direction, G4int depth=0);
      diff --git a/source/digits_hits/scorer/include/G4PSDoseDeposit.hh b/source/digits_hits/scorer/include/G4PSDoseDeposit.hh
      index fa4d5bc20b..3d59c9f0f2 100644
      --- a/source/digits_hits/scorer/include/G4PSDoseDeposit.hh
      +++ b/source/digits_hits/scorer/include/G4PSDoseDeposit.hh
      @@ -29,7 +29,7 @@
       #ifndef G4PSDoseDeposit_h
       #define G4PSDoseDeposit_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       
       ////////////////////////////////////////////////////////////////////////////////
      @@ -38,10 +38,12 @@
       //
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of dose deposit (x)
      +//              vs. weight (y) (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
      -class G4PSDoseDeposit : public G4VPrimitiveScorer
      +class G4PSDoseDeposit : public G4VPrimitivePlotter
       {
        public: // with description
             G4PSDoseDeposit(G4String name, G4int depth=0);
      diff --git a/source/digits_hits/scorer/include/G4PSEnergyDeposit.hh b/source/digits_hits/scorer/include/G4PSEnergyDeposit.hh
      index a636e0f803..80f2262ffd 100644
      --- a/source/digits_hits/scorer/include/G4PSEnergyDeposit.hh
      +++ b/source/digits_hits/scorer/include/G4PSEnergyDeposit.hh
      @@ -29,7 +29,7 @@
       #ifndef G4PSEnergyDeposit_h
       #define G4PSEnergyDeposit_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       
       ////////////////////////////////////////////////////////////////////////////////
      @@ -39,9 +39,12 @@
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura
       // 2010-07-22   Introduce Unit specification.
       // 
      +// 2020-09-03   Use G4VPrimitivePlotter and fill 1-D histo of energy deposit (x)
      +//              vs. track weight (y)                   (Makoto Asai)
      +//
       ///////////////////////////////////////////////////////////////////////////////
       
      -class G4PSEnergyDeposit : public G4VPrimitiveScorer
      +class G4PSEnergyDeposit : public G4VPrimitivePlotter
       {
        
        public: // with description
      diff --git a/source/digits_hits/scorer/include/G4PSFlatSurfaceCurrent.hh b/source/digits_hits/scorer/include/G4PSFlatSurfaceCurrent.hh
      index 3337edc000..ea11e84896 100644
      --- a/source/digits_hits/scorer/include/G4PSFlatSurfaceCurrent.hh
      +++ b/source/digits_hits/scorer/include/G4PSFlatSurfaceCurrent.hh
      @@ -29,7 +29,7 @@
       #ifndef G4PSFlatSurfaceCurrent_h
       #define G4PSFlatSurfaceCurrent_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       
       #include "G4Box.hh"
      @@ -53,10 +53,12 @@
       // 17-Nov-2005 T.Aso, Bug fix for area definition.
       // 31-Mar-2007 T.Aso, Add option for normalizing by the area.
       // 2010-07-22   Introduce Unit specification.
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. Surface Current * track weight (y)    (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
      -class G4PSFlatSurfaceCurrent : public G4VPrimitiveScorer
      +class G4PSFlatSurfaceCurrent : public G4VPrimitivePlotter
       {
        
         public: // with description
      diff --git a/source/digits_hits/scorer/include/G4PSFlatSurfaceFlux.hh b/source/digits_hits/scorer/include/G4PSFlatSurfaceFlux.hh
      index dc00d0ae11..87c5006b50 100644
      --- a/source/digits_hits/scorer/include/G4PSFlatSurfaceFlux.hh
      +++ b/source/digits_hits/scorer/include/G4PSFlatSurfaceFlux.hh
      @@ -29,7 +29,7 @@
       #ifndef G4PSFlatSurfaceFlux_h
       #define G4PSFlatSurfaceFlux_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       #include "G4Box.hh"
       #include "G4PSDirectionFlag.hh"
      @@ -56,9 +56,11 @@
       // 29-Mar-2007  T.Aso,  Bug fix for momentum direction at outgoing flux.
       // 2010-07-22   Introduce Unit specification.
       // 2010-07-22   Add weighted and divideByArea options
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. cell flux * track weight             (Makoto Asai)
       ///////////////////////////////////////////////////////////////////////////////
       
      -class G4PSFlatSurfaceFlux : public G4VPrimitiveScorer
      +class G4PSFlatSurfaceFlux : public G4VPrimitivePlotter
       {
         public: // with description
             G4PSFlatSurfaceFlux(G4String name,G4int direction, G4int depth=0);
      diff --git a/source/digits_hits/scorer/include/G4PSMinKinEAtGeneration.hh b/source/digits_hits/scorer/include/G4PSMinKinEAtGeneration.hh
      index 9b21429e2d..1824a55ba9 100644
      --- a/source/digits_hits/scorer/include/G4PSMinKinEAtGeneration.hh
      +++ b/source/digits_hits/scorer/include/G4PSMinKinEAtGeneration.hh
      @@ -29,7 +29,7 @@
       #ifndef G4PSMinKinEAtGeneration_h
       #define G4PSMinKinEAtGeneration_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       
       ////////////////////////////////////////////////////////////////////////////////
      @@ -39,12 +39,14 @@
       //
       // Created: 2005-11-17  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. track weight (y)                 (Makoto Asai)
       //
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
       
      -class G4PSMinKinEAtGeneration : public G4VPrimitiveScorer
      +class G4PSMinKinEAtGeneration : public G4VPrimitivePlotter
       {
        
        public: // with description
      diff --git a/source/digits_hits/scorer/include/G4PSNofSecondary.hh b/source/digits_hits/scorer/include/G4PSNofSecondary.hh
      index 9ec4a352f8..0cacb4386e 100644
      --- a/source/digits_hits/scorer/include/G4PSNofSecondary.hh
      +++ b/source/digits_hits/scorer/include/G4PSNofSecondary.hh
      @@ -29,7 +29,7 @@
       #ifndef G4PSNofSecondary_h
       #define G4PSNofSecondary_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       #include "G4ParticleTable.hh"
       
      @@ -44,12 +44,14 @@
       //                       particleDef is not set, it accepts all secondaies.
       //                       But onece user sets it, it accepts only the particle.
       //          2010-07-22   Introduce Unit specification.
      -//
      +//          2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic
      +//                       energy of the secondary in MeV (x) vs. track weight (y) 
      +//                       (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
       
      -class G4PSNofSecondary : public G4VPrimitiveScorer
      +class G4PSNofSecondary : public G4VPrimitivePlotter
       {
        
        public: // with description
      diff --git a/source/digits_hits/scorer/include/G4PSNofStep.hh b/source/digits_hits/scorer/include/G4PSNofStep.hh
      index 8799b35d13..b9dccd1bb0 100644
      --- a/source/digits_hits/scorer/include/G4PSNofStep.hh
      +++ b/source/digits_hits/scorer/include/G4PSNofStep.hh
      @@ -29,7 +29,7 @@
       #ifndef G4PSNofStep_h
       #define G4PSNofStep_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       
       ////////////////////////////////////////////////////////////////////////////////
      @@ -38,11 +38,13 @@
       // 
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of step length 
      +//              in mm vs. number of steps (not weighted)        (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
       
      -class G4PSNofStep : public G4VPrimitiveScorer
      +class G4PSNofStep : public G4VPrimitivePlotter
       {
        
        public: // with description
      diff --git a/source/digits_hits/scorer/include/G4PSPassageCellCurrent.hh b/source/digits_hits/scorer/include/G4PSPassageCellCurrent.hh
      index 99fed6f90a..b94d6b65d8 100644
      --- a/source/digits_hits/scorer/include/G4PSPassageCellCurrent.hh
      +++ b/source/digits_hits/scorer/include/G4PSPassageCellCurrent.hh
      @@ -29,7 +29,7 @@
       #ifndef G4PSPassageCellCurrent_h
       #define G4PSPassageCellCurrent_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       
       ////////////////////////////////////////////////////////////////////////////////
      @@ -41,11 +41,13 @@
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
       // 2010-07-22   Add weighted option
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. current * track weight (y)               (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
       
      -class G4PSPassageCellCurrent : public G4VPrimitiveScorer
      +class G4PSPassageCellCurrent : public G4VPrimitivePlotter
       {
        
         public: // with description
      diff --git a/source/digits_hits/scorer/include/G4PSPassageCellFlux.hh b/source/digits_hits/scorer/include/G4PSPassageCellFlux.hh
      index 96bd8545b7..9b491afc40 100644
      --- a/source/digits_hits/scorer/include/G4PSPassageCellFlux.hh
      +++ b/source/digits_hits/scorer/include/G4PSPassageCellFlux.hh
      @@ -29,7 +29,7 @@
       #ifndef G4PSPassageCellFlux_h
       #define G4PSPassageCellFlux_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       
       ////////////////////////////////////////////////////////////////////////////////
      @@ -45,10 +45,12 @@
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
       // 2010-07-22   Add weighted option
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. cell flux * track weight (y)                (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
      -class G4PSPassageCellFlux : public G4VPrimitiveScorer
      +class G4PSPassageCellFlux : public G4VPrimitivePlotter
       {
        
         public: // with description
      diff --git a/source/digits_hits/scorer/include/G4PSPassageTrackLength.hh b/source/digits_hits/scorer/include/G4PSPassageTrackLength.hh
      index 22caec3b84..8b9d15d060 100644
      --- a/source/digits_hits/scorer/include/G4PSPassageTrackLength.hh
      +++ b/source/digits_hits/scorer/include/G4PSPassageTrackLength.hh
      @@ -29,7 +29,7 @@
       #ifndef G4PSPassageTrackLength_h
       #define G4PSPassageTrackLength_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       
       ////////////////////////////////////////////////////////////////////////////////
      @@ -40,10 +40,12 @@
       //
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of track length 
      +//              vs. number of tracks (not weighted)             (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
      -class G4PSPassageTrackLength : public G4VPrimitiveScorer
      +class G4PSPassageTrackLength : public G4VPrimitivePlotter
       {
        
         public: // with description
      diff --git a/source/digits_hits/scorer/include/G4PSTrackCounter.hh b/source/digits_hits/scorer/include/G4PSTrackCounter.hh
      index 6bccb3c513..a02ecc377a 100644
      --- a/source/digits_hits/scorer/include/G4PSTrackCounter.hh
      +++ b/source/digits_hits/scorer/include/G4PSTrackCounter.hh
      @@ -29,7 +29,7 @@
       #ifndef G4PSTrackCounter_h
       #define G4PSTrackCounter_h 1
       
      -#include "G4VPrimitiveScorer.hh"
      +#include "G4VPrimitivePlotter.hh"
       #include "G4THitsMap.hh"
       
       #include "G4PSDirectionFlag.hh"
      @@ -40,10 +40,12 @@
       //
       // Created: 2007-02-02  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy
      +//              in MeV (x) vs. weighted number of track (y)    (Makoto Asai)
       //
       ///////////////////////////////////////////////////////////////////////////////
       
      -class G4PSTrackCounter : public G4VPrimitiveScorer
      +class G4PSTrackCounter : public G4VPrimitivePlotter
       {
        
        public: // with description
      diff --git a/source/digits_hits/scorer/include/G4PSVolumeFlux.hh b/source/digits_hits/scorer/include/G4PSVolumeFlux.hh
      new file mode 100644
      index 0000000000..221196be4d
      --- /dev/null
      +++ b/source/digits_hits/scorer/include/G4PSVolumeFlux.hh
      @@ -0,0 +1,74 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// Class G4PSVolumeFlux
      +//
      +// Class description:
      +//  Scorer that scores number of tracks coming into the associated volume.
      +//  Optionally number of tracks can be divided by the surface area to
      +//  score the volume current and divided by cos(theta) for volume flux
      +//  where theta is the incident angle
      +//
      +//  - Created   M. Asai, Sept. 2020
      +
      +#ifndef G4PSVolumeFlux_h
      +#define G4PSVolumeFlux_h 1
      +
      +#include "G4VPrimitivePlotter.hh"
      +#include "G4THitsMap.hh"
      +#include "G4PSDirectionFlag.hh"
      +
      +class G4PSVolumeFlux : public G4VPrimitivePlotter
      +{
      +  public: // with description
      +      G4PSVolumeFlux(G4String name,G4int direction=1, G4int depth=0);
      +      virtual ~G4PSVolumeFlux();
      +
      +  protected: // with description
      +      virtual G4bool ProcessHits(G4Step*,G4TouchableHistory*);
      +
      +  public: 
      +      virtual void Initialize(G4HCofThisEvent*);
      +      virtual void EndOfEvent(G4HCofThisEvent*);
      +      virtual void clear();
      +      virtual void DrawAll();
      +      virtual void PrintAll();
      +
      +  private:
      +      G4int  HCID;
      +      G4int  fDirection;
      +      G4THitsMap* EvtMap;
      +      G4bool divare = false; // divide by the surface area
      +      G4bool divcos = false; // divide by cos(theta)
      +
      +  public:
      +      void SetDivAre(G4bool val)
      +      { divare = val; }
      +      void SetDivCos(G4bool val)
      +      { divcos = val; }
      +};
      +
      +#endif
      +
      diff --git a/source/digits_hits/scorer/include/G4PSVolumeFlux3D.hh b/source/digits_hits/scorer/include/G4PSVolumeFlux3D.hh
      new file mode 100644
      index 0000000000..179ba9d1bb
      --- /dev/null
      +++ b/source/digits_hits/scorer/include/G4PSVolumeFlux3D.hh
      @@ -0,0 +1,58 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// Class G4PSVolumeFlux3D
      +//
      +// Class description:
      +//  3-dimentional extension of G4PSVolumeFlux scorer. This scorer should
      +//  be assigned to 3-dimensional mesh.
      +//
      +//  - Created   M. Asai, Sept. 2020
      +//
      +//
      +
      +#ifndef G4PSVolumeFlux3D_h
      +#define G4PSVolumeFlux3D_h 1
      +
      +#include "G4PSVolumeFlux.hh"
      +
      +class G4PSVolumeFlux3D : public G4PSVolumeFlux
      +{
      + 
      + public: // with description
      +      G4PSVolumeFlux3D(G4String name, G4int direction=1,
      +		     G4int ni=1,G4int nj=1, G4int nk=1,
      +		     G4int depi=2, G4int depj=1, G4int depk=0);
      +
      +      virtual ~G4PSVolumeFlux3D();
      +
      +  protected: // with description
      +      virtual G4int GetIndex(G4Step*);
      +
      +  private:
      +      G4int fDepthi, fDepthj, fDepthk;
      +
      +};
      +#endif
      diff --git a/source/digits_hits/scorer/sources.cmake b/source/digits_hits/scorer/sources.cmake
      index ec0aa8a1d0..340bb8bd2b 100644
      --- a/source/digits_hits/scorer/sources.cmake
      +++ b/source/digits_hits/scorer/sources.cmake
      @@ -56,6 +56,8 @@ geant4_define_module(NAME G4detscorer
           G4PSTrackCounter3D.hh
           G4PSTrackLength.hh
           G4PSTrackLength3D.hh
      +    G4PSVolumeFlux.hh
      +    G4PSVolumeFlux3D.hh
           G4SDChargedFilter.hh
           G4SDKineticEnergyFilter.hh
           G4SDNeutralFilter.hh
      @@ -109,6 +111,8 @@ geant4_define_module(NAME G4detscorer
           G4PSTrackCounter3D.cc
           G4PSTrackLength.cc
           G4PSTrackLength3D.cc
      +    G4PSVolumeFlux.cc
      +    G4PSVolumeFlux3D.cc
           G4SDChargedFilter.cc
           G4SDKineticEnergyFilter.cc
           G4SDNeutralFilter.cc
      diff --git a/source/digits_hits/scorer/src/G4PSCellFlux.cc b/source/digits_hits/scorer/src/G4PSCellFlux.cc
      index e2e2373a33..dbacdc568b 100644
      --- a/source/digits_hits/scorer/src/G4PSCellFlux.cc
      +++ b/source/digits_hits/scorer/src/G4PSCellFlux.cc
      @@ -34,6 +34,8 @@
       #include "G4VPhysicalVolume.hh"
       #include "G4VPVParameterisation.hh"
       #include "G4UnitsTable.hh"
      +#include "G4VScoreHistFiller.hh"
      +
       ///////////////////////////////////////////////////////////////////////////////
       // (Description)
       //   This is a primitive scorer class for scoring cell flux.
      @@ -48,11 +50,13 @@
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
       // 2010-07-22   Add weighted option
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. cell flux * track weight (y)         (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
       G4PSCellFlux::G4PSCellFlux(G4String name, G4int depth)
      -    :G4VPrimitiveScorer(name,depth),HCID(-1),EvtMap(0),weighted(true)
      +    :G4VPrimitivePlotter(name,depth),HCID(-1),EvtMap(0),weighted(true)
       {
           DefineUnitAndCategory();
           SetUnit("percm2");
      @@ -60,7 +64,7 @@ G4PSCellFlux::G4PSCellFlux(G4String name, G4int depth)
       }
       
       G4PSCellFlux::G4PSCellFlux(G4String name, const G4String& unit, G4int depth)
      -    :G4VPrimitiveScorer(name,depth),HCID(-1),EvtMap(0),weighted(true)
      +    :G4VPrimitivePlotter(name,depth),HCID(-1),EvtMap(0),weighted(true)
       {
           DefineUnitAndCategory();
           SetUnit(unit);
      @@ -84,6 +88,20 @@ G4bool G4PSCellFlux::ProcessHits(G4Step* aStep,G4TouchableHistory*)
         G4int index = GetIndex(aStep);
         EvtMap->add(index,CellFlux);
       
      +  if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +  {
      +    auto filler = G4VScoreHistFiller::Instance();
      +    if(!filler)
      +    {
      +      G4Exception("G4PSCellFlux::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +    }
      +    else
      +    {
      +      filler->FillH1(hitIDMap[index],aStep->GetPreStepPoint()->GetKineticEnergy(),CellFlux);
      +    }
      +  }
      +
         return TRUE;
       }
       
      diff --git a/source/digits_hits/scorer/src/G4PSCylinderSurfaceCurrent.cc b/source/digits_hits/scorer/src/G4PSCylinderSurfaceCurrent.cc
      index 0531fcf7ba..9be7c5d1f6 100644
      --- a/source/digits_hits/scorer/src/G4PSCylinderSurfaceCurrent.cc
      +++ b/source/digits_hits/scorer/src/G4PSCylinderSurfaceCurrent.cc
      @@ -36,6 +36,8 @@
       #include "G4VPVParameterisation.hh"
       #include "G4UnitsTable.hh"
       #include "G4GeometryTolerance.hh"
      +#include "G4VScoreHistFiller.hh"
      +
       ////////////////////////////////////////////////////////////////////////////////
       // (Description)
       //   This is a primitive scorer class for scoring only Surface Current.
      @@ -49,13 +51,15 @@
       //
       // Created: 2007-03-21  Tsukasa ASO
       // 2010-07-22   Introduce Unit specification.
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. surface current * track weight (y)             (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
       
       G4PSCylinderSurfaceCurrent::G4PSCylinderSurfaceCurrent(G4String name, 
       					 G4int direction, G4int depth)
      -  :G4VPrimitiveScorer(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
      +  :G4VPrimitivePlotter(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
          weighted(true),divideByArea(true)
       {
           DefineUnitAndCategory();
      @@ -66,7 +70,7 @@ G4PSCylinderSurfaceCurrent::G4PSCylinderSurfaceCurrent(G4String name,
       						       G4int direction, 
       						       const G4String& unit,
       						       G4int depth)
      -  :G4VPrimitiveScorer(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
      +  :G4VPrimitivePlotter(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
          weighted(true),divideByArea(true)
       {
           DefineUnitAndCategory();
      @@ -100,6 +104,20 @@ G4bool G4PSCylinderSurfaceCurrent::ProcessHits(G4Step* aStep,G4TouchableHistory*
       
             G4int index = GetIndex(aStep);
             EvtMap->add(index,current);
      +
      +      if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +      {
      +        auto filler = G4VScoreHistFiller::Instance();
      +        if(!filler)
      +        {
      +           G4Exception("G4PSCylinderSurfaceCurrent::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +        }
      +        else
      +        {
      +          filler->FillH1(hitIDMap[index],preStep->GetKineticEnergy(),current);
      +        }
      +      }
           }
       
         }
      diff --git a/source/digits_hits/scorer/src/G4PSCylinderSurfaceFlux.cc b/source/digits_hits/scorer/src/G4PSCylinderSurfaceFlux.cc
      index bd37c99408..cd667c88c5 100644
      --- a/source/digits_hits/scorer/src/G4PSCylinderSurfaceFlux.cc
      +++ b/source/digits_hits/scorer/src/G4PSCylinderSurfaceFlux.cc
      @@ -36,6 +36,8 @@
       #include "G4VPVParameterisation.hh"
       #include "G4UnitsTable.hh"
       #include "G4GeometryTolerance.hh"
      +#include "G4VScoreHistFiller.hh"
      +
       // ////////////////////////////////////////////////////////////////////////////////
       // (Description)
       //   This is a primitive scorer class for scoring Surface Flux.
      @@ -52,11 +54,14 @@
       // 2010-07-22   Introduce Unit specification.
       // 2010-07-22   Add weighted and divideByArea options
       // 2011-02-21   Get correct momentum direction in Flux_Out.
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. surface flux * track weight (y)        (Makoto Asai)
      +//
       ///////////////////////////////////////////////////////////////////////////////
       
       G4PSCylinderSurfaceFlux::G4PSCylinderSurfaceFlux(G4String name, 
       						 G4int direction, G4int depth)
      -    : G4VPrimitiveScorer(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
      +    : G4VPrimitivePlotter(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
             weighted(true),divideByArea(true)
       {
           DefineUnitAndCategory();
      @@ -67,7 +72,7 @@ G4PSCylinderSurfaceFlux::G4PSCylinderSurfaceFlux(G4String name,
       						 G4int direction, 
       						 const G4String& unit, 
       						 G4int depth)
      -    : G4VPrimitiveScorer(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
      +    : G4VPrimitivePlotter(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
             weighted(true),divideByArea(true)
       {
           DefineUnitAndCategory();
      @@ -124,6 +129,21 @@ G4bool G4PSCylinderSurfaceFlux::ProcessHits(G4Step* aStep,G4TouchableHistory*)
             //Flux with angle.
             G4int index = GetIndex(aStep);
             EvtMap->add(index,flux);
      +
      +      if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +      {
      +        auto filler = G4VScoreHistFiller::Instance();
      +        if(!filler)
      +        {
      +          G4Exception("G4PSCylinderSurfaceFlux::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +        }
      +        else
      +        {
      +          filler->FillH1(hitIDMap[index],thisStep->GetKineticEnergy(),flux);
      +        }
      +      }
      +
             return TRUE;
           }else{
             return FALSE;
      diff --git a/source/digits_hits/scorer/src/G4PSDoseDeposit.cc b/source/digits_hits/scorer/src/G4PSDoseDeposit.cc
      index bf677cf6cd..c804eb1ea2 100644
      --- a/source/digits_hits/scorer/src/G4PSDoseDeposit.cc
      +++ b/source/digits_hits/scorer/src/G4PSDoseDeposit.cc
      @@ -31,6 +31,7 @@
       #include "G4VPhysicalVolume.hh"
       #include "G4VPVParameterisation.hh"
       #include "G4UnitsTable.hh"
      +#include "G4VScoreHistFiller.hh"
       
       ////////////////////////////////////////////////////////////////////////////////
       // (Description)
      @@ -39,18 +40,20 @@
       //
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of dose deposit (x)
      +//              vs. weight (y) (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
       G4PSDoseDeposit::G4PSDoseDeposit(G4String name, G4int depth)
      -  :G4VPrimitiveScorer(name,depth),HCID(-1),EvtMap(0)
      +  :G4VPrimitivePlotter(name,depth),HCID(-1),EvtMap(0)
       {
           SetUnit("Gy");
       }
       
       G4PSDoseDeposit::G4PSDoseDeposit(G4String name, const G4String& unit,
       				 G4int depth)
      -  :G4VPrimitiveScorer(name,depth),HCID(-1),EvtMap(0)
      +  :G4VPrimitivePlotter(name,depth),HCID(-1),EvtMap(0)
       {
           SetUnit(unit);
       }
      @@ -70,9 +73,25 @@ G4bool G4PSDoseDeposit::ProcessHits(G4Step* aStep,G4TouchableHistory*)
       
         G4double density = aStep->GetTrack()->GetStep()->GetPreStepPoint()->GetMaterial()->GetDensity();
         G4double dose    = edep / ( density * cubicVolume );
      -  dose *= aStep->GetPreStepPoint()->GetWeight(); 
      +  G4double wei = aStep->GetPreStepPoint()->GetWeight(); 
         G4int  index = GetIndex(aStep);
      -  EvtMap->add(index,dose);  
      +  G4double dosew = dose*wei;
      +  EvtMap->add(index,dosew);  
      +
      +  if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +  {
      +    auto filler = G4VScoreHistFiller::Instance();
      +    if(!filler)
      +    {
      +      G4Exception("G4PSDoseDeposit::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +    }
      +    else
      +    {
      +      filler->FillH1(hitIDMap[index],dose,wei);
      +    }
      +  }
      +
         return TRUE;
       }
       
      diff --git a/source/digits_hits/scorer/src/G4PSEnergyDeposit.cc b/source/digits_hits/scorer/src/G4PSEnergyDeposit.cc
      index c65d326b0c..59c8fe8331 100644
      --- a/source/digits_hits/scorer/src/G4PSEnergyDeposit.cc
      +++ b/source/digits_hits/scorer/src/G4PSEnergyDeposit.cc
      @@ -27,6 +27,7 @@
       //
       // G4PSEnergyDeposit
       #include "G4PSEnergyDeposit.hh"
      +#include "G4VScoreHistFiller.hh"
       #include "G4UnitsTable.hh"
       ////////////////////////////////////////////////////////////////////////////////
       // Description:
      @@ -34,18 +35,20 @@
       // 
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
      +// 2020-09-03   Use G4VPrimitivePlotter and fill 1-D histo of energy deposit (x)
      +//              vs. track weight (y)                   (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
       G4PSEnergyDeposit::G4PSEnergyDeposit(G4String name, G4int depth)
      -  :G4VPrimitiveScorer(name,depth),HCID(-1),EvtMap(0)
      +  :G4VPrimitivePlotter(name,depth),HCID(-1),EvtMap(0)
       {
         SetUnit("MeV");
       }
       
       G4PSEnergyDeposit::G4PSEnergyDeposit(G4String name, const G4String& unit, 
       				     G4int depth)
      -  :G4VPrimitiveScorer(name,depth),HCID(-1),EvtMap(0)
      +  :G4VPrimitivePlotter(name,depth),HCID(-1),EvtMap(0)
       {
         SetUnit(unit);
       }
      @@ -57,9 +60,25 @@ G4bool G4PSEnergyDeposit::ProcessHits(G4Step* aStep,G4TouchableHistory*)
       {
         G4double edep = aStep->GetTotalEnergyDeposit();
         if ( edep == 0. ) return FALSE;
      -  edep *= aStep->GetPreStepPoint()->GetWeight(); // (Particle Weight)
      +  G4double wei = aStep->GetPreStepPoint()->GetWeight(); // (Particle Weight)
         G4int  index = GetIndex(aStep);
      -  EvtMap->add(index,edep);  
      +  G4double edepwei = edep*wei;
      +  EvtMap->add(index,edepwei);  
      +
      +  if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +  {
      +    auto filler = G4VScoreHistFiller::Instance();
      +    if(!filler)
      +    {
      +      G4Exception("G4PSEnergyDeposit::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +    }
      +    else
      +    {
      +      filler->FillH1(hitIDMap[index],edep,wei);
      +    }
      +  }
      +
         return TRUE;
       }
       
      @@ -101,3 +120,4 @@ void G4PSEnergyDeposit::SetUnit(const G4String& unit)
       {
       	CheckAndSetUnit(unit,"Energy");
       }
      +
      diff --git a/source/digits_hits/scorer/src/G4PSFlatSurfaceCurrent.cc b/source/digits_hits/scorer/src/G4PSFlatSurfaceCurrent.cc
      index 62e7180103..9e6c7de2df 100644
      --- a/source/digits_hits/scorer/src/G4PSFlatSurfaceCurrent.cc
      +++ b/source/digits_hits/scorer/src/G4PSFlatSurfaceCurrent.cc
      @@ -36,6 +36,8 @@
       #include "G4VPVParameterisation.hh"
       #include "G4UnitsTable.hh"
       #include "G4GeometryTolerance.hh"
      +#include "G4VScoreHistFiller.hh"
      +
       ////////////////////////////////////////////////////////////////////////////////
       // (Description)
       //   This is a primitive scorer class for scoring only Surface Flux.
      @@ -51,13 +53,15 @@
       // 17-Nov-2005 T.Aso, Bug fix for area definition.
       // 31-Mar-2007 T.Aso, Add option for normalizing by the area.
       // 2010-07-22   Introduce Unit specification.
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. Surface Current * track weight (y)    (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
       
       G4PSFlatSurfaceCurrent::G4PSFlatSurfaceCurrent(G4String name, 
       					 G4int direction, G4int depth)
      -    :G4VPrimitiveScorer(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
      +    :G4VPrimitivePlotter(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
            weighted(true),divideByArea(true)
       {
           DefineUnitAndCategory();
      @@ -68,7 +72,7 @@ G4PSFlatSurfaceCurrent::G4PSFlatSurfaceCurrent(G4String name,
       					       G4int direction, 
       					       const G4String& unit, 
       					       G4int depth)
      -    :G4VPrimitiveScorer(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
      +    :G4VPrimitivePlotter(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
            weighted(true),divideByArea(true)
       {
           DefineUnitAndCategory();
      @@ -110,6 +114,21 @@ G4bool G4PSFlatSurfaceCurrent::ProcessHits(G4Step* aStep,G4TouchableHistory*)
       	   current = current/square;  // Normalized by Area
              }
              EvtMap->add(index,current);
      +
      +       if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +       {
      +         auto filler = G4VScoreHistFiller::Instance();
      +         if(!filler)
      +         {
      +           G4Exception("G4PSFlatSurfaceCurrent::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +         }
      +         else
      +         {
      +           filler->FillH1(hitIDMap[index],preStep->GetKineticEnergy(),current);
      +         }
      +       }
      +
          }
         }
       
      diff --git a/source/digits_hits/scorer/src/G4PSFlatSurfaceFlux.cc b/source/digits_hits/scorer/src/G4PSFlatSurfaceFlux.cc
      index 51bb736f7f..ff0af2683c 100644
      --- a/source/digits_hits/scorer/src/G4PSFlatSurfaceFlux.cc
      +++ b/source/digits_hits/scorer/src/G4PSFlatSurfaceFlux.cc
      @@ -36,6 +36,8 @@
       #include "G4VPVParameterisation.hh"
       #include "G4UnitsTable.hh"
       #include "G4GeometryTolerance.hh"
      +#include "G4VScoreHistFiller.hh"
      +
       ////////////////////////////////////////////////////////////////////////////////
       // (Description)
       //   This is a primitive scorer class for scoring Surface Flux.
      @@ -54,11 +56,13 @@
       // 29-Mar-2007  T.Aso,  Bug fix for momentum direction at outgoing flux.
       // 2010-07-22   Introduce Unit specification.
       // 2010-07-22   Add weighted and divideByAre options
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. cell flux * track weight             (Makoto Asai)
       ///////////////////////////////////////////////////////////////////////////////
       
       G4PSFlatSurfaceFlux::G4PSFlatSurfaceFlux(G4String name, 
       					 G4int direction, G4int depth)
      -  : G4VPrimitiveScorer(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
      +  : G4VPrimitivePlotter(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
           weighted(true),divideByArea(true)
       {
           DefineUnitAndCategory();
      @@ -69,7 +73,7 @@ G4PSFlatSurfaceFlux::G4PSFlatSurfaceFlux(G4String name,
       					 G4int direction, 
       					 const G4String& unit,
       					 G4int depth)
      -  : G4VPrimitiveScorer(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
      +  : G4VPrimitivePlotter(name,depth),HCID(-1),fDirection(direction),EvtMap(0),
           weighted(true),divideByArea(true)
       {
           DefineUnitAndCategory();
      @@ -129,6 +133,21 @@ G4bool G4PSFlatSurfaceFlux::ProcessHits(G4Step* aStep,G4TouchableHistory*)
             //
             G4int index = GetIndex(aStep);
             EvtMap->add(index,flux);
      +
      +      if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +      {
      +        auto filler = G4VScoreHistFiller::Instance();
      +        if(!filler)
      +        {
      +          G4Exception("G4PSFlatSurfaceFlux::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +        }
      +        else
      +        {
      +          filler->FillH1(hitIDMap[index],preStep->GetKineticEnergy(),flux);
      +        }
      +      }
      +
           }
         }
       #ifdef debug
      diff --git a/source/digits_hits/scorer/src/G4PSMinKinEAtGeneration.cc b/source/digits_hits/scorer/src/G4PSMinKinEAtGeneration.cc
      index 0db5752b3f..3cedb41445 100644
      --- a/source/digits_hits/scorer/src/G4PSMinKinEAtGeneration.cc
      +++ b/source/digits_hits/scorer/src/G4PSMinKinEAtGeneration.cc
      @@ -28,6 +28,7 @@
       // G4PSMinKinEAtGeneration
       #include "G4PSMinKinEAtGeneration.hh"
       #include "G4UnitsTable.hh"
      +#include "G4VScoreHistFiller.hh"
       
       // (Description)
       //   This is a primitive scorer class for scoring minimum energy of
      @@ -36,10 +37,12 @@
       // Created: 2005-11-17  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
       // 2011-09-09   Modify comment in PrintAll().  T.Aso
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. track weight (y)                 (Makoto Asai)
       //
       
       G4PSMinKinEAtGeneration::G4PSMinKinEAtGeneration(G4String name, G4int depth)
      -  :G4VPrimitiveScorer(name,depth),HCID(-1),EvtMap(0)
      +  :G4VPrimitivePlotter(name,depth),HCID(-1),EvtMap(0)
       {
           SetUnit("MeV");
       }
      @@ -47,7 +50,7 @@ G4PSMinKinEAtGeneration::G4PSMinKinEAtGeneration(G4String name, G4int depth)
       G4PSMinKinEAtGeneration::G4PSMinKinEAtGeneration(G4String name, 
       						 const G4String& unit,
       						 G4int depth)
      -  :G4VPrimitiveScorer(name,depth),HCID(-1),EvtMap(0)
      +  :G4VPrimitivePlotter(name,depth),HCID(-1),EvtMap(0)
       {
           SetUnit(unit);
       }
      @@ -76,10 +79,24 @@ G4bool G4PSMinKinEAtGeneration::ProcessHits(G4Step* aStep,G4TouchableHistory*)
         //
       
         // -Kinetic energy of this particle at the starting point.
      +  G4int  index = GetIndex(aStep);
         G4double kinetic = aStep->GetPreStepPoint()->GetKineticEnergy();
       
      +  if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +  {
      +    auto filler = G4VScoreHistFiller::Instance();
      +    if(!filler)
      +    {
      +      G4Exception("G4PSMinKinEAtGeneration::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +    }
      +    else
      +    {
      +      filler->FillH1(hitIDMap[index],kinetic,aStep->GetPreStepPoint()->GetWeight());
      +    }
      +  }
      +
         // -Stored value in the current HitsMap.
      -  G4int  index = GetIndex(aStep);
         G4double*   mapValue=  ((*EvtMap)[index]);
       
         // -
      diff --git a/source/digits_hits/scorer/src/G4PSNofSecondary.cc b/source/digits_hits/scorer/src/G4PSNofSecondary.cc
      index d326af6fac..b7e0236052 100644
      --- a/source/digits_hits/scorer/src/G4PSNofSecondary.cc
      +++ b/source/digits_hits/scorer/src/G4PSNofSecondary.cc
      @@ -27,6 +27,7 @@
       //
       // G4PSNofSecondary
       #include "G4PSNofSecondary.hh"
      +#include "G4VScoreHistFiller.hh"
       
       // (Description)
       //   This is a primitive scorer class for scoring number of secondaries 
      @@ -34,10 +35,13 @@
       //
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // Modify:  2011-09-09  T.Aso modify comment in PrintAll().
      +//          2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic
      +//                       energy of the secondary in MeV (x) vs. track weight (y)
      +//                       (Makoto Asai)
       //
       
       G4PSNofSecondary::G4PSNofSecondary(G4String name, G4int depth)
      -    :G4VPrimitiveScorer(name,depth),HCID(-1),EvtMap(0),particleDef(0),
      +    :G4VPrimitivePlotter(name,depth),HCID(-1),EvtMap(0),particleDef(0),
            weighted(true)
       {;}
       
      @@ -59,6 +63,21 @@ G4bool G4PSNofSecondary::ProcessHits(G4Step* aStep,G4TouchableHistory*)
         G4double weight = 1.0;
         if ( weighted ) weight *= aStep->GetPreStepPoint()->GetWeight();
         EvtMap->add(index,weight);  
      +
      +  if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +  {
      +    auto filler = G4VScoreHistFiller::Instance();
      +    if(!filler)
      +    {
      +      G4Exception("G4PSVolumeFlux::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +    }
      +    else
      +    {
      +      filler->FillH1(hitIDMap[index],aStep->GetPreStepPoint()->GetKineticEnergy(),weight);
      +    }
      +  }
      +
         return TRUE;
       }
       
      diff --git a/source/digits_hits/scorer/src/G4PSNofStep.cc b/source/digits_hits/scorer/src/G4PSNofStep.cc
      index 88ed76483d..94f5d62bac 100644
      --- a/source/digits_hits/scorer/src/G4PSNofStep.cc
      +++ b/source/digits_hits/scorer/src/G4PSNofStep.cc
      @@ -28,6 +28,7 @@
       // G4PSNofStep
       #include "G4PSNofStep.hh"
       #include "G4UnitsTable.hh"
      +#include "G4VScoreHistFiller.hh"
       
       // (Description)
       //   This is a primitive scorer class for scoring number of steps in the
      @@ -35,10 +36,12 @@
       //
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of step length
      +//              in mm vs. number of steps (not weighted)        (Makoto Asai)
       //
       
       G4PSNofStep::G4PSNofStep(G4String name, G4int depth)
      -    :G4VPrimitiveScorer(name,depth),HCID(-1),EvtMap(0),boundaryFlag(false)
      +    :G4VPrimitivePlotter(name,depth),HCID(-1),EvtMap(0),boundaryFlag(false)
       {
           SetUnit("");
       }
      @@ -54,6 +57,21 @@ G4bool G4PSNofStep::ProcessHits(G4Step* aStep,G4TouchableHistory*)
         G4int  index = GetIndex(aStep);
         G4double val = 1.0;
         EvtMap->add(index,val);  
      +
      +  if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +  {
      +    auto filler = G4VScoreHistFiller::Instance();
      +    if(!filler)
      +    {
      +      G4Exception("G4PSNofStep::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +    }
      +    else
      +    {
      +      filler->FillH1(hitIDMap[index],aStep->GetStepLength(),val);
      +    }
      +  }
      +
         return TRUE;
       }
       
      diff --git a/source/digits_hits/scorer/src/G4PSPassageCellCurrent.cc b/source/digits_hits/scorer/src/G4PSPassageCellCurrent.cc
      index 846ec4670e..04b37ca67f 100644
      --- a/source/digits_hits/scorer/src/G4PSPassageCellCurrent.cc
      +++ b/source/digits_hits/scorer/src/G4PSPassageCellCurrent.cc
      @@ -31,6 +31,8 @@
       #include "G4Track.hh"
       #include "G4VSolid.hh"
       #include "G4UnitsTable.hh"
      +#include "G4VScoreHistFiller.hh"
      +
       ////////////////////////////////////////////////////////////////////////////////
       // (Description)
       //   This is a primitive scorer class for scoring number of tracks,
      @@ -40,11 +42,13 @@
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
       // 2010-07-22   Add weighted option
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. current * track weight (y)               (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
       G4PSPassageCellCurrent::G4PSPassageCellCurrent(G4String name, G4int depth)
      -    :G4VPrimitiveScorer(name,depth),HCID(-1),fCurrentTrkID(-1),fCurrent(0),
      +    :G4VPrimitivePlotter(name,depth),HCID(-1),fCurrentTrkID(-1),fCurrent(0),
            EvtMap(0),weighted(true)
       {
           SetUnit("");
      @@ -57,9 +61,25 @@ G4bool G4PSPassageCellCurrent::ProcessHits(G4Step* aStep,G4TouchableHistory*)
       {
       
         if ( IsPassed(aStep) ) {
      +    fCurrent = 1.;
           if(weighted) fCurrent = aStep->GetPreStepPoint()->GetWeight();
           G4int index = GetIndex(aStep);
           EvtMap->add(index,fCurrent);
      +
      +    if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +    {
      +      auto filler = G4VScoreHistFiller::Instance();
      +      if(!filler)
      +      {
      +        G4Exception("G4PSVolumeFlux::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +      }
      +      else
      +      {
      +        filler->FillH1(hitIDMap[index],aStep->GetPreStepPoint()->GetKineticEnergy(),fCurrent);
      +      }
      +    }
      +
         }
       
         return TRUE;
      diff --git a/source/digits_hits/scorer/src/G4PSPassageCellFlux.cc b/source/digits_hits/scorer/src/G4PSPassageCellFlux.cc
      index 7a043fc07f..76f5dc0825 100644
      --- a/source/digits_hits/scorer/src/G4PSPassageCellFlux.cc
      +++ b/source/digits_hits/scorer/src/G4PSPassageCellFlux.cc
      @@ -35,6 +35,8 @@
       #include "G4VPhysicalVolume.hh"
       #include "G4VPVParameterisation.hh"
       #include "G4UnitsTable.hh"
      +#include "G4VScoreHistFiller.hh"
      +
       ////////////////////////////////////////////////////////////////////////////////
       // (Description)
       //   This is a primitive scorer class for scoring cell flux.
      @@ -48,11 +50,13 @@
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
       // 2010-07-22   Add weighted option
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of kinetic energy (x)
      +//              vs. cell flux * track weight (y)                (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
       G4PSPassageCellFlux::G4PSPassageCellFlux(G4String name, G4int depth)
      -  : G4VPrimitiveScorer(name,depth),HCID(-1),fCurrentTrkID(-1),fCellFlux(0),
      +  : G4VPrimitivePlotter(name,depth),HCID(-1),fCurrentTrkID(-1),fCellFlux(0),
           EvtMap(0),weighted(true)
       {
           DefineUnitAndCategory();
      @@ -61,7 +65,7 @@ G4PSPassageCellFlux::G4PSPassageCellFlux(G4String name, G4int depth)
       
       G4PSPassageCellFlux::G4PSPassageCellFlux(G4String name, const G4String& unit,
       					 G4int depth)
      -  : G4VPrimitiveScorer(name,depth),HCID(-1),fCurrentTrkID(-1),fCellFlux(0),
      +  : G4VPrimitivePlotter(name,depth),HCID(-1),fCurrentTrkID(-1),fCellFlux(0),
           EvtMap(0),weighted(true)
       {
           DefineUnitAndCategory();
      @@ -83,6 +87,21 @@ G4bool G4PSPassageCellFlux::ProcessHits(G4Step* aStep,G4TouchableHistory*)
           fCellFlux /= cubicVolume;
           G4int index = GetIndex(aStep);
           EvtMap->add(index,fCellFlux);
      +
      +    if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +    {
      +      auto filler = G4VScoreHistFiller::Instance();
      +      if(!filler)
      +      {
      +        G4Exception("G4PSPassageCellFlux::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +      }
      +      else
      +      {
      +        filler->FillH1(hitIDMap[index],aStep->GetPreStepPoint()->GetKineticEnergy(),fCellFlux);
      +      }
      +    }
      +
         }
       
         return TRUE;
      diff --git a/source/digits_hits/scorer/src/G4PSPassageTrackLength.cc b/source/digits_hits/scorer/src/G4PSPassageTrackLength.cc
      index 641f08d8f3..be82fff1aa 100644
      --- a/source/digits_hits/scorer/src/G4PSPassageTrackLength.cc
      +++ b/source/digits_hits/scorer/src/G4PSPassageTrackLength.cc
      @@ -30,6 +30,7 @@
       #include "G4StepStatus.hh"
       #include "G4Track.hh"
       #include "G4UnitsTable.hh"
      +#include "G4VScoreHistFiller.hh"
       
       ////////////////////////////////////////////////////////////////////////////////
       // (Description)
      @@ -39,11 +40,13 @@
       //
       // Created: 2005-11-14  Tsukasa ASO, Akinori Kimura.
       // 2010-07-22   Introduce Unit specification.
      +// 2020-10-06   Use G4VPrimitivePlotter and fill 1-D histo of track length 
      +//              vs. number of tracks (not weighted)             (Makoto Asai)
       // 
       ///////////////////////////////////////////////////////////////////////////////
       
       G4PSPassageTrackLength::G4PSPassageTrackLength(G4String name, G4int depth)
      -  :G4VPrimitiveScorer(name,depth),HCID(-1),fCurrentTrkID(-1),fTrackLength(0.),
      +  :G4VPrimitivePlotter(name,depth),HCID(-1),fCurrentTrkID(-1),fTrackLength(0.),
          EvtMap(0),weighted(false)
       {
           SetUnit("mm");
      @@ -52,7 +55,7 @@ G4PSPassageTrackLength::G4PSPassageTrackLength(G4String name, G4int depth)
       G4PSPassageTrackLength::G4PSPassageTrackLength(G4String name, 
       					       const G4String& unit, 
       					       G4int depth)
      -  :G4VPrimitiveScorer(name,depth),HCID(-1),fCurrentTrkID(-1),fTrackLength(0.),
      +  :G4VPrimitivePlotter(name,depth),HCID(-1),fCurrentTrkID(-1),fTrackLength(0.),
          EvtMap(0),weighted(false)
       {
           SetUnit(unit);
      @@ -68,6 +71,21 @@ G4bool G4PSPassageTrackLength::ProcessHits(G4Step* aStep,G4TouchableHistory*)
         if ( IsPassed(aStep) ) {
           G4int index = GetIndex(aStep);
           EvtMap->add(index,fTrackLength);
      +
      +    if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +    {
      +      auto filler = G4VScoreHistFiller::Instance();
      +      if(!filler)
      +      {
      +        G4Exception("G4PSPassageTrackLength::ProcessHits","SCORER0123",JustWarning,
      +               "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +      }
      +      else
      +      {
      +        filler->FillH1(hitIDMap[index],fTrackLength,1.);
      +      }
      +    }
      +
         }
       
         return TRUE;
      diff --git a/source/digits_hits/scorer/src/G4PSTrackCounter.cc b/source/digits_hits/scorer/src/G4PSTrackCounter.cc
      index cd8e3f3b6e..bb9c55265d 100644
      --- a/source/digits_hits/scorer/src/G4PSTrackCounter.cc
      +++ b/source/digits_hits/scorer/src/G4PSTrackCounter.cc
      @@ -28,6 +28,7 @@
       // G4PSTrackCounter
       #include "G4PSTrackCounter.hh"
       #include "G4UnitsTable.hh"
      +#include "G4VScoreHistFiller.hh"
       
       ///////////////////////////////////////////////////////////////////////////////
       // (Description)
      @@ -39,7 +40,7 @@
       ///////////////////////////////////////////////////////////////////////////////
       
       G4PSTrackCounter::G4PSTrackCounter(G4String name, G4int direction, G4int depth)
      -  :G4VPrimitiveScorer(name,depth),HCID(-1),fDirection(direction),
      +  :G4VPrimitivePlotter(name,depth),HCID(-1),fDirection(direction),
          EvtMap(0),weighted(false)
       {
        SetUnit("");
      @@ -77,6 +78,21 @@ G4bool G4PSTrackCounter::ProcessHits(G4Step* aStep,G4TouchableHistory*)
             G4double val = 1.0;
             if(weighted) val *= aStep->GetPreStepPoint()->GetWeight();
             EvtMap->add(index,val);  
      +
      +      if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +      {
      +        auto filler = G4VScoreHistFiller::Instance();
      +        if(!filler)
      +        {
      +          G4Exception("G4PSTrackCounter::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +        }
      +        else
      +        {
      +          filler->FillH1(hitIDMap[index],aStep->GetPreStepPoint()->GetKineticEnergy(),val);
      +        }
      +      }
      +
         }
       
         return TRUE;
      diff --git a/source/digits_hits/scorer/src/G4PSVolumeFlux.cc b/source/digits_hits/scorer/src/G4PSVolumeFlux.cc
      new file mode 100644
      index 0000000000..211714e3b9
      --- /dev/null
      +++ b/source/digits_hits/scorer/src/G4PSVolumeFlux.cc
      @@ -0,0 +1,160 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// Class G4PSVolumeFlux
      +//
      +// Class description:
      +//  Scorer that scores number of tracks coming into the associated volume.
      +//  Optionally number of tracks can be divided by the surface area to
      +//  score the volume current and divided by cos(theta) for volume flux
      +//  where theta is the incident angle
      +//
      +//  - Created   M. Asai, Sept. 2020
      +//
      +//
      +#include "G4PSVolumeFlux.hh"
      +
      +#include "G4SystemOfUnits.hh"
      +#include "G4StepStatus.hh"
      +#include "G4Track.hh"
      +#include "G4VSolid.hh"
      +#include "G4VPhysicalVolume.hh"
      +#include "G4VPVParameterisation.hh"
      +#include "G4UnitsTable.hh"
      +#include "G4GeometryTolerance.hh"
      +#include "G4VScoreHistFiller.hh"
      +
      +G4PSVolumeFlux::G4PSVolumeFlux(G4String name, G4int direction, G4int depth)
      +: G4VPrimitivePlotter(name,depth),HCID(-1),fDirection(direction),EvtMap(nullptr)
      +{;}
      +
      +G4PSVolumeFlux::~G4PSVolumeFlux()
      +{;}
      +
      +G4bool G4PSVolumeFlux::ProcessHits(G4Step* aStep,G4TouchableHistory*)
      +{
      +  G4StepPoint* preStepPoint = aStep->GetPreStepPoint();
      +  G4StepPoint* postStepPoint = aStep->GetPostStepPoint();
      +  G4StepPoint* thisStepPoint = nullptr;
      +  if(fDirection==1) // Score only the inward particle
      +  {
      +    if(preStepPoint->GetStepStatus()==fGeomBoundary)
      +    { thisStepPoint = preStepPoint; }
      +    else
      +    { return false; }
      +  }
      +  else if(fDirection==2) // Score only the outward particle
      +  {
      +    if(postStepPoint->GetStepStatus()==fGeomBoundary)
      +    { thisStepPoint = postStepPoint; }
      +    else
      +    { return false; }
      +  }
      +
      +  G4double flux = preStepPoint->GetWeight();
      +
      +  if(divare||divcos)
      +  {
      +    G4VPhysicalVolume* physVol = preStepPoint->GetPhysicalVolume();
      +    G4VPVParameterisation* physParam = physVol->GetParameterisation();
      +    G4VSolid * solid = nullptr;
      +    if(physParam)
      +    { // for parameterized volume
      +      auto idx = ((G4TouchableHistory*)(preStepPoint->GetTouchable()))->GetReplicaNumber(indexDepth);
      +      solid = physParam->ComputeSolid(idx, physVol);
      +      solid->ComputeDimensions(physParam,idx,physVol);
      +    }
      +    else
      +    { // for ordinary volume
      +      solid = physVol->GetLogicalVolume()->GetSolid();
      +    }
      +
      +    if(divare)
      +    { flux /= solid->GetSurfaceArea(); }
      +
      +    if(divcos)
      +    {
      +      G4TouchableHandle theTouchable = thisStepPoint->GetTouchableHandle();
      +      G4ThreeVector pdirection = thisStepPoint->GetMomentumDirection();
      +      G4ThreeVector localdir = theTouchable->GetHistory()->GetTopTransform().TransformAxis(pdirection);
      +      G4ThreeVector globalPos = thisStepPoint->GetPosition();
      +      G4ThreeVector localPos = theTouchable->GetHistory()->GetTopTransform().TransformPoint(globalPos);
      +      G4ThreeVector surfNormal = solid->SurfaceNormal(localPos);
      +      G4double cosT = surfNormal.cosTheta(localdir);
      +      if(cosT!=0.) flux /= std::abs(cosT);
      +    }
      +  }
      +
      +  G4int index = GetIndex(aStep);
      +  EvtMap->add(index,flux);
      +
      +  if(hitIDMap.size()>0 && hitIDMap.find(index)!=hitIDMap.end())
      +  {
      +    auto filler = G4VScoreHistFiller::Instance();
      +    if(!filler)
      +    {
      +      G4Exception("G4PSVolumeFlux::ProcessHits","SCORER0123",JustWarning,
      +             "G4TScoreHistFiller is not instantiated!! Histogram is not filled.");
      +    }
      +    else
      +    {
      +      filler->FillH1(hitIDMap[index],thisStepPoint->GetKineticEnergy(),flux);
      +    }
      +  }
      +
      +  return true;
      +}
      +
      +void G4PSVolumeFlux::Initialize(G4HCofThisEvent* HCE)
      +{
      +  if ( HCID < 0 ) HCID = GetCollectionID(0);
      +  EvtMap = new G4THitsMap(GetMultiFunctionalDetector()->GetName(), GetName());
      +  HCE->AddHitsCollection(HCID, (G4VHitsCollection*)EvtMap);
      +}
      +
      +void G4PSVolumeFlux::EndOfEvent(G4HCofThisEvent*)
      +{;}
      +
      +void G4PSVolumeFlux::clear(){
      +  EvtMap->clear();
      +}
      +
      +void G4PSVolumeFlux::DrawAll()
      +{;}
      +
      +void G4PSVolumeFlux::PrintAll()
      +{
      +  G4cout << " MultiFunctionalDet  " << detector->GetName() << G4endl;
      +  G4cout << " PrimitiveScorer" << GetName() <entries() << G4endl;
      +  std::map::iterator itr = EvtMap->GetMap()->begin();
      +  for(; itr != EvtMap->GetMap()->end(); itr++) {
      +    G4cout << "  copy no.: " << itr->first
      +	   << "  flux  : " << *(itr->second)
      +	   << G4endl;
      +  }
      +}
      +
      +
      diff --git a/source/processes/hadronic/processes/src/G4DMesonPlusInelasticProcess.cc b/source/digits_hits/scorer/src/G4PSVolumeFlux3D.cc
      similarity index 65%
      rename from source/processes/hadronic/processes/src/G4DMesonPlusInelasticProcess.cc
      rename to source/digits_hits/scorer/src/G4PSVolumeFlux3D.cc
      index fa6ff93e64..c993273581 100644
      --- a/source/processes/hadronic/processes/src/G4DMesonPlusInelasticProcess.cc
      +++ b/source/digits_hits/scorer/src/G4PSVolumeFlux3D.cc
      @@ -23,18 +23,39 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      -#include "G4DMesonPlusInelasticProcess.hh"
      -#include "G4DMesonPlus.hh"
      -#include 
      +// Class G4PSVolumeFlux3D
      +//
      +// Class description:
      +//  3-dimentional extension of G4PSVolumeFlux scorer. This scorer should
      +//  be assigned to 3-dimensional mesh.
      +//
      +//  - Created   M. Asai, Sept. 2020
      +//
      +//
      +//
      +// G4PSVolumeFlux3D
      +#include "G4PSVolumeFlux3D.hh"
       
      -
      -G4DMesonPlusInelasticProcess::G4DMesonPlusInelasticProcess( const G4String& name )
      - :G4HadronInelasticProcess( name, G4DMesonPlus::Definition() ) {}
      -
      -
      -void G4DMesonPlusInelasticProcess::ProcessDescription( std::ostream& outFile ) const {
      -  outFile << "G4DMesonPlusInelasticProcess handles the inelastic scattering of\n" 
      -          << "D+ from nuclei by invoking one or more hadronic models and one\n"
      -          << "or more hadronic cross section sets.\n";
      +G4PSVolumeFlux3D::G4PSVolumeFlux3D(G4String name,G4int direction,
      +			       G4int ni, G4int nj, G4int nk,
      +			       G4int depi, G4int depj, G4int depk)
      +    :G4PSVolumeFlux(name,direction),
      +     fDepthi(depi),fDepthj(depj),fDepthk(depk)
      +{
      +  fNi=ni;
      +  fNj=nj;
      +  fNk=nk;
       }
       
      +G4PSVolumeFlux3D::~G4PSVolumeFlux3D()
      +{;}
      +
      +G4int G4PSVolumeFlux3D::GetIndex(G4Step* aStep)
      +{
      +  const G4VTouchable* touchable = aStep->GetPreStepPoint()->GetTouchable();
      +  G4int i = touchable->GetReplicaNumber(fDepthi);
      +  G4int j = touchable->GetReplicaNumber(fDepthj);
      +  G4int k = touchable->GetReplicaNumber(fDepthk);
      +  
      +  return i*fNj*fNk+j*fNk+k;
      +}
      diff --git a/source/digits_hits/utils/History b/source/digits_hits/utils/History
      index 4cb56f48d6..1b90db4fbb 100644
      --- a/source/digits_hits/utils/History
      +++ b/source/digits_hits/utils/History
      @@ -16,6 +16,17 @@ committal in the CVS repository !
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
       
      +November 15th, 2020  M.Asai (detutils-V10-06-10)
      +- Adding Mutex lock to G4ScoringProbe::SetMaterial() to avoid the
      +  race condition.
      +
      +September 16th, 2020  M.Asai (detutils-V10-06-09)
      +- Adding /score/fill1D command that lets a primitive scorer to 
      +  directly fill a 1D histogram.
      +
      +September 3rd, 2020  M.Asai (detutils-V10-06-08)
      +- Move G4VPrimitivePlotter.hh to digits_hits/detector
      +
       April 29th, 2020  M.Asai (detutils-V10-06-07)
       - G4ScoringProbe.cc : Minor cosmetic changes.
       
      diff --git a/source/digits_hits/utils/include/G4ScoreQuantityMessenger.hh b/source/digits_hits/utils/include/G4ScoreQuantityMessenger.hh
      index 031aacbb33..1b7bb6a99d 100644
      --- a/source/digits_hits/utils/include/G4ScoreQuantityMessenger.hh
      +++ b/source/digits_hits/utils/include/G4ScoreQuantityMessenger.hh
      @@ -103,6 +103,7 @@ class G4ScoreQuantityMessenger: public G4UImessenger
           G4UIcommand*          qPassTrackLengthCmd;
           G4UIcommand*          qFlatSurfCurrCmd;
           G4UIcommand*          qFlatSurfFluxCmd;
      +    G4UIcommand*          qVolFluxCmd;
       //    G4UIcommand*          qSphereSurfCurrCmd;
       //    G4UIcommand*          qSphereSurfFluxCmd;
       //    G4UIcommand*          qCylSurfCurrCmd;
      diff --git a/source/digits_hits/utils/include/G4ScoringMessenger.hh b/source/digits_hits/utils/include/G4ScoringMessenger.hh
      index 6c3fa21512..588e803d54 100644
      --- a/source/digits_hits/utils/include/G4ScoringMessenger.hh
      +++ b/source/digits_hits/utils/include/G4ScoringMessenger.hh
      @@ -75,8 +75,8 @@ class G4ScoringMessenger: public G4UImessenger
         protected:    
       
           void FillTokenVec(G4String newValues,G4TokenVec& token);
      -
           void MeshBinCommand(G4VScoringMesh* mesh, G4TokenVec& token);
      +    void Fill1D(G4UIcommand* cmd, G4String newValues);
       
         private:
       
      @@ -138,6 +138,8 @@ class G4ScoringMessenger: public G4UImessenger
           G4UIcommand * dumpQtyWithFactorCmd;
           G4UIcommand * dumpAllQtsWithFactorCmd;
           //
      +    // Command for direcly plotting to a histogram
      +    G4UIcommand * fill1DCmd;
       
       };
       
      diff --git a/source/digits_hits/utils/sources.cmake b/source/digits_hits/utils/sources.cmake
      index 2dbe38b0fe..f31d8cbfa2 100644
      --- a/source/digits_hits/utils/sources.cmake
      +++ b/source/digits_hits/utils/sources.cmake
      @@ -10,7 +10,6 @@ geant4_define_module(NAME G4detutils
         HEADERS
           G4DefaultLinearColorMap.hh
           G4ScoreLogColorMap.hh
      -    G4VPrimitivePlotter.hh
           G4VScoreNtupleWriter.hh
           G4TScoreNtupleWriter.hh
           G4TScoreNtupleWriter.icc
      diff --git a/source/digits_hits/utils/src/G4ScoreQuantityMessenger.cc b/source/digits_hits/utils/src/G4ScoreQuantityMessenger.cc
      index 3ebd63d13a..752fe8eae0 100644
      --- a/source/digits_hits/utils/src/G4ScoreQuantityMessenger.cc
      +++ b/source/digits_hits/utils/src/G4ScoreQuantityMessenger.cc
      @@ -62,6 +62,7 @@
       #include "G4PSSphereSurfaceFlux3D.hh"
       #include "G4PSCylinderSurfaceCurrent3D.hh"
       #include "G4PSCylinderSurfaceFlux3D.hh"
      +#include "G4PSVolumeFlux3D.hh"
       #include "G4PSNofCollision3D.hh"
       #include "G4PSPopulation3D.hh"
       #include "G4PSTrackCounter3D.hh"
      @@ -217,6 +218,7 @@ G4ScoreQuantityMessenger::~G4ScoreQuantityMessenger()
           delete          qPassTrackLengthCmd;
           delete          qFlatSurfCurrCmd;
           delete          qFlatSurfFluxCmd;
      +    delete          qVolFluxCmd;
       //    delete          qSphereSurfCurrCmd;
       //    delete          qSphereSurfFluxCmd;
       //    delete          qCylSurfCurrCmd;
      @@ -437,6 +439,17 @@ void G4ScoreQuantityMessenger::SetNewValue(G4UIcommand * command,G4String newVal
                     }
                     mesh->SetPrimitiveScorer(ps);
                 }
      +      } else if(command== qVolFluxCmd) {
      +          if( CheckMeshPS(mesh, token[0],command )) {
      +              G4PSVolumeFlux* ps = nullptr;
      +              if(shape==MeshShape::realWorldLogVol || shape==MeshShape::probe)
      +              { ps = new G4PSVolumeFlux(token[0],StoI(token[2]),mesh->GetCopyNumberLevel()); }
      +              else
      +              { ps = new G4PSVolumeFlux3D(token[0],StoI(token[2])); }
      +              ps->SetDivCos(StoI(token[1]));
      +              mesh->SetPrimitiveScorer(ps);
      +          }
      +
       //    } else if(command== qSphereSurfCurrCmd){
       //        if( CheckMeshPS(mesh, token[0],command )) {
       //            G4PSSphereSurfaceCurrent3D* ps = 
      diff --git a/source/digits_hits/utils/src/G4ScoreQuantityMessengerQCmd.cc b/source/digits_hits/utils/src/G4ScoreQuantityMessengerQCmd.cc
      index eeb405dd88..b97b197821 100644
      --- a/source/digits_hits/utils/src/G4ScoreQuantityMessengerQCmd.cc
      +++ b/source/digits_hits/utils/src/G4ScoreQuantityMessengerQCmd.cc
      @@ -58,6 +58,7 @@
       #include "G4PSSphereSurfaceFlux3D.hh"
       #include "G4PSCylinderSurfaceCurrent3D.hh"
       #include "G4PSCylinderSurfaceFlux3D.hh"
      +#include "G4PSVolumeFlux3D.hh"
       #include "G4PSNofCollision3D.hh"
       #include "G4PSPopulation3D.hh"
       #include "G4PSTrackCounter3D.hh"
      @@ -291,6 +292,24 @@ void G4ScoreQuantityMessenger::QuantityCommands()
         param->SetDefaultValue("percm2");
         qFlatSurfFluxCmd->SetParameter(param);
         //
      +
      +  qVolFluxCmd = new G4UIcommand("/score/quantity/volumeFlux",this);
      +  qVolFluxCmd->SetGuidance("Volume flux scorer.");
      +  qVolFluxCmd->SetGuidance("This scorer scores the number of particles getting into the volume without normalized by the surface area.");
      +  qVolFluxCmd->SetGuidance("[usage] /score/quantity/volumeFlux qname divcos dflag");
      +  qVolFluxCmd->SetGuidance("  qname  :(String) scorer name");
      +  qVolFluxCmd->SetGuidance("  divcos :(Bool) divide by cos(theta), where theta is the incident angle (default : false)");
      +  qVolFluxCmd->SetGuidance("  dflag  :(Int) direction, 1 : inward (default), 2 : outward");
      +  param = new G4UIparameter("qname",'s',false);
      +  qVolFluxCmd->SetParameter(param);
      +  param = new G4UIparameter("divcos",'b',true);
      +  param->SetDefaultValue(false);
      +  qVolFluxCmd->SetParameter(param);
      +  param = new G4UIparameter("dflag",'i',true);
      +  param->SetParameterRange("dflag>=1 && dflag<=2");
      +  param->SetDefaultValue(1);
      +  qVolFluxCmd->SetParameter(param);
      +
       //  qSphereSurfCurrCmd = new G4UIcommand("/score/quantity/sphereSurfaceCurrent",this);
       //  qSphereSurfCurrCmd->SetGuidance("Sphere surface current Scorer.");
       //  qSphereSurfCurrCmd->
      diff --git a/source/digits_hits/utils/src/G4ScoringMessenger.cc b/source/digits_hits/utils/src/G4ScoringMessenger.cc
      index 9496663dc5..50a4857ba0 100644
      --- a/source/digits_hits/utils/src/G4ScoringMessenger.cc
      +++ b/source/digits_hits/utils/src/G4ScoringMessenger.cc
      @@ -24,7 +24,6 @@
       // ********************************************************************
       //
       //
      -//
       // ---------------------------------------------------------------------
       
       #include "G4ScoringMessenger.hh"
      @@ -360,6 +359,23 @@ G4ScoringMessenger::G4ScoringMessenger(G4ScoringManager* SManager)
         dumpAllQtsWithFactorCmd->SetParameter(param);
         dumpAllQtsWithFactorCmd->SetToBeBroadcasted(false);
       
      +  fill1DCmd = new G4UIcommand("/score/fill1D", this);
      +  fill1DCmd->SetGuidance("Let a primitive scorer fill 1-D histogram");
      +  fill1DCmd->SetGuidance("Before using this command, primitive scorer must be defined and assigned.");
      +  fill1DCmd->SetGuidance("Also before using this command, a histogram has to be defined by /analysis/h1/create command.");
      +  fill1DCmd->SetGuidance("This command is available only for real-world volume or probe.");
      +  fill1DCmd->SetGuidance("Please note that this command has to be applied to each copy number of the scoring volume.");
      +  fill1DCmd->SetGuidance("If same histogram ID is used more than once, more than one scorers fill that histogram.");
      +  param = new G4UIparameter("histID", 'i', false);
      +  fill1DCmd->SetParameter(param);
      +  param = new G4UIparameter("meshName", 's', false);
      +  fill1DCmd->SetParameter(param);
      +  param = new G4UIparameter("scorerName", 's', false);
      +  fill1DCmd->SetParameter(param);
      +  param = new G4UIparameter("copyNo", 'i', true);
      +  param->SetDefaultValue(0);
      +  fill1DCmd->SetParameter(param);
      +
       }
       
       G4ScoringMessenger::~G4ScoringMessenger()
      @@ -411,6 +427,7 @@ G4ScoringMessenger::~G4ScoringMessenger()
           delete     dumpQtyWithFactorCmd;
           delete     dumpAllQtsToFileCmd;
           delete     dumpAllQtsWithFactorCmd;
      +    delete     fill1DCmd;
           //
           delete scoreDir;
       }
      @@ -510,6 +527,8 @@ void G4ScoringMessenger::SetNewValue(G4UIcommand * command,G4String newVal)
             fSMan->SetFactor(fac);
             fSMan->DumpAllQuantitiesToFile(meshName, fileName, option);
             fSMan->SetFactor(1.0);
      +  } else if(command==fill1DCmd) {
      +      Fill1D(command,newVal);
         } else if(command==verboseCmd) { 
             fSMan->SetVerboseLevel(verboseCmd->GetNewIntValue(newVal)); 
         } else if(command==meshBoxCreateCmd) {
      @@ -827,4 +846,66 @@ void G4ScoringMessenger::MeshBinCommand(G4VScoringMesh* mesh,G4TokenVec& token){
           mesh->SetNumberOfSegments(nSegment);
       }
       
      - 
      +#include "G4VPrimitivePlotter.hh"
      +#include "G4VScoreHistFiller.hh"
      +
      +void G4ScoringMessenger::Fill1D(G4UIcommand* cmd, G4String newVal) 
      +{
      +  using MeshShape = G4VScoringMesh::MeshShape;
      +
      +  G4Tokenizer next(newVal);
      +  G4int histID = StoI(next());
      +  G4String meshName = next();
      +  G4String primName = next();
      +  G4int copyNo = StoI(next());
      +
      +  auto filler = G4VScoreHistFiller::Instance();
      +  if(!filler)
      +  {
      +    G4ExceptionDescription ed;
      +    ed << "G4TScoreHistFiller is not instantiated in this application.";
      +    cmd->CommandFailed(ed);
      +    return;
      +  }
      +  //
      +  // To do : check the validity of histID
      +  //
      +
      +  auto sm = G4ScoringManager::GetScoringManagerIfExist();
      +  auto mesh = sm->FindMesh(meshName);
      +  if(mesh==nullptr)
      +  {
      +    G4ExceptionDescription ed;
      +    ed << "Mesh name <" << meshName << "> is not found.";
      +    cmd->CommandFailed(ed);
      +    return;
      +  }
      +  auto shape = mesh->GetShape();
      +  if(shape!=MeshShape::realWorldLogVol && shape!=MeshShape::probe)
      +  {
      +    G4ExceptionDescription ed;
      +    ed << "Mesh <" << meshName << "> is not real-world logical volume or probe.";
      +    cmd->CommandFailed(ed);
      +    return;
      +  }
      +
      +  auto prim = mesh->GetPrimitiveScorer(primName);
      +  if(prim==nullptr)
      +  {
      +    G4ExceptionDescription ed;
      +    ed << "Primitive scorer name <" << primName << "> is not found.";
      +    cmd->CommandFailed(ed);
      +    return;
      +  }
      +  auto pp = dynamic_cast(prim);
      +  if(pp==nullptr)
      +  {
      +    G4ExceptionDescription ed;
      +    ed << "Primitive scorer <" << primName << "> does not support direct histogram filling.";
      +    cmd->CommandFailed(ed);
      +    return;
      +  }
      +
      +  pp->Plot(copyNo,histID);
      +}
      +
      diff --git a/source/digits_hits/utils/src/G4ScoringProbe.cc b/source/digits_hits/utils/src/G4ScoringProbe.cc
      index 0acaaa3e63..1c93e99fbb 100644
      --- a/source/digits_hits/utils/src/G4ScoringProbe.cc
      +++ b/source/digits_hits/utils/src/G4ScoringProbe.cc
      @@ -117,6 +117,7 @@ void G4ScoringProbe::SetupGeometry(G4VPhysicalVolume* worldPhys)
       
       G4bool G4ScoringProbe::SetMaterial(G4String val)
       {
      +  G4AutoLock l(&logvolmutex);
         if(val == "none")
         {
           layeredMaterialName = val;
      diff --git a/source/error_propagation/History b/source/error_propagation/History
      index 61116eb775..6ec8a7c1b5 100644
      --- a/source/error_propagation/History
      +++ b/source/error_propagation/History
      @@ -16,6 +16,11 @@ committal in the CVS repository !
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
       
      +8-Sep-2020 - G.Cosmo (error-propagation-V10-06-01)
      +- Fixed Coverity defects warnings in G4ErrorPropagator for unreachable code.
      +  Implemented move assignment operators in G4ErrorSymMatrix, G4ErrorSymMatrix,
      +  G4ErrorFreeTrajParam, G4ErrorTrajState and G4ErrorSurfaceTrajParam.
      +
       9-Dec-2019 - B.Morgan (error-propagation-V10-06-00)
       - Cleanup CMake build, removing obsolete granular library option and
         explicit include_directories.
      diff --git a/source/error_propagation/include/G4ErrorFreeTrajParam.hh b/source/error_propagation/include/G4ErrorFreeTrajParam.hh
      index eb823217c1..93ee60a338 100644
      --- a/source/error_propagation/include/G4ErrorFreeTrajParam.hh
      +++ b/source/error_propagation/include/G4ErrorFreeTrajParam.hh
      @@ -54,8 +54,16 @@ class G4ErrorFreeTrajParam
         G4ErrorFreeTrajParam( const G4Point3D& pos, const G4Vector3D& mom );
           // build parameters from position and momentum
       
      +  G4ErrorFreeTrajParam(const G4ErrorFreeTrajParam&) = default;
      +  G4ErrorFreeTrajParam(G4ErrorFreeTrajParam&&) = default;
      +    // The copy and move constructors
      +
         virtual ~G4ErrorFreeTrajParam(){}
       
      +  G4ErrorFreeTrajParam& operator = (const G4ErrorFreeTrajParam&) = default;
      +  G4ErrorFreeTrajParam& operator = (G4ErrorFreeTrajParam&&) = default;
      +    // The copy and move assignment operators
      +
         void Update( const G4Track* aTrack );
           // update parameters from G4Track
       
      diff --git a/source/error_propagation/include/G4ErrorMatrix.hh b/source/error_propagation/include/G4ErrorMatrix.hh
      old mode 100755
      new mode 100644
      index f6d579fc8d..9a47e76d9e
      --- a/source/error_propagation/include/G4ErrorMatrix.hh
      +++ b/source/error_propagation/include/G4ErrorMatrix.hh
      @@ -61,7 +61,8 @@ class G4ErrorMatrix
          // are set to 1.0.
       
          G4ErrorMatrix(const G4ErrorMatrix &m1);
      -   // Copy constructor.
      +   G4ErrorMatrix(G4ErrorMatrix &&) = default;
      +   // Copy and move constructor.
       
          G4ErrorMatrix(const G4ErrorSymMatrix &m1);
          // Constructors from G4ErrorSymG4ErrorMatrix, DiagG4ErrorMatrix and Vector.
      @@ -95,7 +96,8 @@ class G4ErrorMatrix
       
          G4ErrorMatrix & operator = ( const G4ErrorMatrix &m2);
          G4ErrorMatrix & operator = ( const G4ErrorSymMatrix &m2);
      -   // Assignment operators.
      +   G4ErrorMatrix & operator = (G4ErrorMatrix &&) = default;
      +   // Assignment and move operators.
       
          G4ErrorMatrix operator- () const;
          // unary minus, ie. flip the sign of each element.
      diff --git a/source/error_propagation/include/G4ErrorSurfaceTrajParam.hh b/source/error_propagation/include/G4ErrorSurfaceTrajParam.hh
      index 6a57adba0f..165bae1c69 100644
      --- a/source/error_propagation/include/G4ErrorSurfaceTrajParam.hh
      +++ b/source/error_propagation/include/G4ErrorSurfaceTrajParam.hh
      @@ -58,8 +58,17 @@ class G4ErrorSurfaceTrajParam
                                  const G4Vector3D& vecV, const G4Vector3D& vecW );
         G4ErrorSurfaceTrajParam( const G4Point3D& pos, const G4Vector3D& mom,
                                  const G4Plane3D& plane );
      +
      +  G4ErrorSurfaceTrajParam(const G4ErrorSurfaceTrajParam&) = default;
      +  G4ErrorSurfaceTrajParam(G4ErrorSurfaceTrajParam&&) = default;
      +    // The copy and move constructors
      +
         virtual ~G4ErrorSurfaceTrajParam(){}
       
      +  G4ErrorSurfaceTrajParam& operator = (const G4ErrorSurfaceTrajParam&) = default;
      +  G4ErrorSurfaceTrajParam& operator = (G4ErrorSurfaceTrajParam&&) = default;
      +    // The copy and move assignment operators
      +
         friend
           std::ostream& operator<<(std::ostream&, const G4ErrorSurfaceTrajParam& ts);
         
      diff --git a/source/error_propagation/include/G4ErrorSymMatrix.hh b/source/error_propagation/include/G4ErrorSymMatrix.hh
      old mode 100755
      new mode 100644
      index 883ed0d268..27670f7569
      --- a/source/error_propagation/include/G4ErrorSymMatrix.hh
      +++ b/source/error_propagation/include/G4ErrorSymMatrix.hh
      @@ -55,7 +55,8 @@ class G4ErrorSymMatrix
          // matrix, 1 means the identity matrix.
       
          G4ErrorSymMatrix(const G4ErrorSymMatrix &m1);
      -   // Copy constructor.
      +   G4ErrorSymMatrix(G4ErrorSymMatrix &&) = default;
      +   // Copy and move constructor.
       
          // Constructor from DiagMatrix
       
      @@ -94,7 +95,9 @@ class G4ErrorSymMatrix
          // Add or subtract a G4ErrorSymMatrix.
       
          G4ErrorSymMatrix & operator=( const G4ErrorSymMatrix &m2);
      -   // Assignment operators. Notice that there is no G4ErrorSymMatrix = Matrix.
      +   G4ErrorSymMatrix & operator=(G4ErrorSymMatrix &&) = default;
      +   // Assignment and move operators.
      +   // Notice that there is no G4ErrorSymMatrix = Matrix.
       
          G4ErrorSymMatrix operator- () const;
          // unary minus, ie. flip the sign of each element.
      diff --git a/source/error_propagation/include/G4ErrorSymMatrix.icc b/source/error_propagation/include/G4ErrorSymMatrix.icc
      old mode 100755
      new mode 100644
      diff --git a/source/error_propagation/include/G4ErrorTrajState.hh b/source/error_propagation/include/G4ErrorTrajState.hh
      index 042bb34f43..06f73e6d8e 100644
      --- a/source/error_propagation/include/G4ErrorTrajState.hh
      +++ b/source/error_propagation/include/G4ErrorTrajState.hh
      @@ -56,8 +56,16 @@ class G4ErrorTrajState
                           const G4ErrorTrajErr& errmat = G4ErrorTrajErr(5,0) );
           // Constructor by providing particle, position and momentum
       
      +  G4ErrorTrajState(const G4ErrorTrajState&);
      +  G4ErrorTrajState(G4ErrorTrajState&&);
      +    // The copy and move constructors
      +
         virtual ~G4ErrorTrajState(){}
       
      +  G4ErrorTrajState& operator = (const G4ErrorTrajState&);
      +  G4ErrorTrajState& operator = (G4ErrorTrajState&&);
      +    // The copy and move assignment operators
      +
         void SetData( const G4String& partType, const G4Point3D& pos,
                       const G4Vector3D& mom );
           // Set particle, position and momentum
      @@ -123,14 +131,14 @@ class G4ErrorTrajState
         G4String fParticleType;
         G4Point3D fPosition;
         G4Vector3D fMomentum;
      -  G4double fCharge;
      +  G4double fCharge = 0.;
         G4ErrorTrajErr fError;
       
         G4eTSType theTSType;
       
      -  G4Track* theG4Track;
      +  G4Track* theG4Track = nullptr;
       
      -  G4int iverbose;
      +  G4int iverbose = 0;
       };
       
       #endif
      diff --git a/source/error_propagation/src/G4ErrorPropagator.cc b/source/error_propagation/src/G4ErrorPropagator.cc
      index e6b221b775..b6178ad6e5 100644
      --- a/source/error_propagation/src/G4ErrorPropagator.cc
      +++ b/source/error_propagation/src/G4ErrorPropagator.cc
      @@ -525,7 +525,6 @@ void G4ErrorPropagator::GetFinalTrajState( G4ErrorTrajState* currentTS,
       //-------------------------------------------------------------------------
       G4bool G4ErrorPropagator::CheckIfLastStep( G4Track* aTrack )
       {
      -  G4bool exception = 0;
         G4bool lastG4eStep = false;
         G4ErrorPropagatorData* g4edata =
           G4ErrorPropagatorData::GetErrorPropagatorData();
      @@ -558,48 +557,26 @@ G4bool G4ErrorPropagator::CheckIfLastStep( G4Track* aTrack )
           //      give a n error/warning
           //
           lastG4eStep = true;
      -    if( exception )
      +    if( verbose >= 1 )
           {
             std::ostringstream message;
             message << "Track extrapolated until end of World" << G4endl
      -              << "without finding the defined target!";
      +              << "without finding the defined target.";
             G4Exception("G4ErrorPropagator::CheckIfLastStep()",
      -                  "InvalidSetup", FatalException, message);
      -    }
      -    else
      -    {
      -      if( verbose >= 1 )
      -      {
      -        std::ostringstream message;
      -        message << "Track extrapolated until end of World" << G4endl
      -                << "without finding the defined target.";
      -        G4Exception("G4ErrorPropagator::CheckIfLastStep()",
      -                    "GEANT4e-Notification", JustWarning, message);
      -      }
      +                  "GEANT4e-Notification", JustWarning, message);
           }
         }  //----- not last step from G4e, but track is stopped (energy exhausted)
         else if( aTrack->GetTrackStatus() == fStopAndKill )
         { 
      -    if( exception )
      +    if( verbose >= 1 )
           {
             std::ostringstream message;
             message << "Track extrapolated until energy is exhausted" << G4endl
      -              << "without finding the defined target!";
      +              << "without finding the defined target.";
             G4Exception("G4ErrorPropagator::CheckIfLastStep()",
      -                  "InvalidSetup", FatalException, message);
      -    }
      -    else
      -    {
      -      if( verbose >= 1 )
      -      {
      -        std::ostringstream message;
      -        message << "Track extrapolated until energy is exhausted" << G4endl
      -                << "without finding the defined target.";
      -        G4Exception("G4ErrorPropagator::CheckIfLastStep()",
      -                    "GEANT4e-Notification", JustWarning, message);
      -      }
      -      lastG4eStep = 1;
      +                  "GEANT4e-Notification", JustWarning, message);
           }
      +    lastG4eStep = 1;
         }
       
       #ifdef G4EVERBOSE
      diff --git a/source/error_propagation/src/G4ErrorTrajState.cc b/source/error_propagation/src/G4ErrorTrajState.cc
      index b3e05536c0..87565f8463 100644
      --- a/source/error_propagation/src/G4ErrorTrajState.cc
      +++ b/source/error_propagation/src/G4ErrorTrajState.cc
      @@ -41,13 +41,73 @@ G4ErrorTrajState::G4ErrorTrajState( const G4String& partType,
                                           const G4Point3D& pos,
                                           const G4Vector3D& mom,
                                           const G4ErrorTrajErr& errmat)
      -  : fParticleType(partType), fPosition(pos), fMomentum(mom), fCharge(0.),
      -    fError(errmat), theTSType(G4eTS_FREE), theG4Track(0)
      +  : fParticleType(partType), fPosition(pos), fMomentum(mom),
      +    fError(errmat), theTSType(G4eTS_FREE)
       {
         iverbose = G4ErrorPropagatorData::verbose();
       }
       
       
      +//--------------------------------------------------------------------------
      +G4ErrorTrajState::G4ErrorTrajState(const G4ErrorTrajState& ts)
      +{
      +  *this = ts; 
      +}
      +
      +
      +//--------------------------------------------------------------------------
      +G4ErrorTrajState::G4ErrorTrajState(G4ErrorTrajState&& ts)
      +  : fParticleType(ts.fParticleType), fPosition(ts.fPosition),
      +    fMomentum(ts.fMomentum), fCharge(ts.fCharge),
      +    fError(ts.fError), theTSType(ts.theTSType),
      +    theG4Track(ts.theG4Track), iverbose(ts.iverbose)
      +{
      +  // Release data from source object
      +  ts.theG4Track = nullptr;
      +}
      +
      +
      +//--------------------------------------------------------------------------
      +G4ErrorTrajState& G4ErrorTrajState::operator = (const G4ErrorTrajState& ts)
      +{
      +  if(this != &ts)
      +  {
      +    fParticleType = ts.fParticleType;
      +    fPosition = ts.fPosition;
      +    fMomentum = ts.fMomentum;
      +    fCharge = ts.fCharge;
      +    fError = ts.fError;
      +    theTSType = ts.theTSType;
      +    iverbose = ts.iverbose;
      +    delete theG4Track;
      +    theG4Track = new G4Track(*ts.theG4Track);
      +  }
      +  return *this;
      +}
      +
      +
      +//--------------------------------------------------------------------------
      +G4ErrorTrajState& G4ErrorTrajState::operator = (G4ErrorTrajState&& ts)
      +{
      +  if(this != &ts)
      +  {
      +    fParticleType = ts.fParticleType;
      +    fPosition = ts.fPosition;
      +    fMomentum = ts.fMomentum;
      +    fCharge = ts.fCharge;
      +    fError = ts.fError;
      +    theTSType = ts.theTSType;
      +    iverbose = ts.iverbose;
      +    delete theG4Track;
      +    theG4Track = ts.theG4Track;
      +
      +    // Release data from source object
      +    ts.theG4Track = nullptr;
      +  }
      +  return *this;
      +}
      +
      +
       //--------------------------------------------------------------------------
       G4int G4ErrorTrajState::PropagateError( const G4Track* )
       { 
      @@ -85,7 +145,7 @@ void G4ErrorTrajState::BuildCharge()
       {
         G4ParticleTable* particleTable = G4ParticleTable::GetParticleTable();
         G4ParticleDefinition* particle = particleTable->FindParticle(fParticleType); 
      -  if( particle == 0)
      +  if( particle == nullptr )
         {
           std::ostringstream message;
           message << "Particle type not defined: " << fParticleType;
      diff --git a/source/event/CMakeLists.txt b/source/event/CMakeLists.txt
      index 13e19cc23d..62fccd2b35 100644
      --- a/source/event/CMakeLists.txt
      +++ b/source/event/CMakeLists.txt
      @@ -9,13 +9,4 @@ add_definitions(-DG4EVENT_ALLOC_EXPORT)
       
       geant4_global_library_target(COMPONENTS sources.cmake)
       
      -# Enable smart stack
      -if(GEANT4_USE_SMARTSTACK)
      -  if(TARGET G4event)
      -    target_compile_definitions(G4event PUBLIC G4_USESMARTSTACK)
      -  endif()
       
      -  if(TARGET G4event-static)
      -    target_compile_definitions(G4event-static PUBLIC G4_USESMARTSTACK)
      -  endif()
      -endif()
      \ No newline at end of file
      diff --git a/source/event/History b/source/event/History
      index 83a3884fe2..6b0d1a5fcf 100644
      --- a/source/event/History
      +++ b/source/event/History
      @@ -16,6 +16,20 @@ committal in the CVS repository !
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
       
      +November 20th, 2020 B.Morgan (event-V10-06-09)
      +- Bugfix of build to ensure SmartStack preprocessor define is propagated.
      +  No changes to code.
      +
      +November 12th, 2020 - Jonathan Madsen (event-V10-06-08)
      +- Added event profiler
      +
      +November 16th, 2020 G.Cosmo (event-V10-06-07)
      +- Fixed typos in printed-out text. Addressing problem report #2285.
      +
      +September 30th, 2020 M.Asai (event-V10-06-06)
      +- G4SPSPosDistribution.cc: Fix misleading error message. Addressing to
      +  Bugzilla report #2275.
      +
       April 29th, 2020 M.Asai (event-V10-06-05)
       - G4GeneralParticleSourceMessenger: command structure clean-up.
       
      @@ -57,11 +71,11 @@ October 1st, 2019 M. Asai (event-V10-05-05)
         Addressing to Bugzilla report #2177.
       
       June 3rd, 2019 M.Asai (event-V10-05-04)
      -- G4SPSPosDistribution::GetConfineVolume() now returns 
      +- G4SPSPosDistribution::GetConfineVolume() now returns
         const G4String&.
       
       May 29th, 2019 M.Asai (event-V10-05-03)
      -- G4SPSPosDistribution.hh: Add get methods for volume confinement 
      +- G4SPSPosDistribution.hh: Add get methods for volume confinement
         based on the Geant4 GitHub user request.
       
       March 11th, 2019 G.Cosmo (event-V10-05-02)
      @@ -71,13 +85,13 @@ January 31st, 2019 I.Hrivnacova
       - Merged GitHub PR #4: all Boolean operators now return G4bool.
       
       January 28th, 2019 M.Asai (event-V10-05-01)
      -- G4HEPEvtInterface.cc : Clean up G4Exception seviorities when 
      +- G4HEPEvtInterface.cc : Clean up G4Exception seviorities when
         end-of-file is detected.
       
       December 14th, 2018 M.Asai (event-V10-05-00)
       - G4PrimaryTransformer.cc : Allowing absolute zero proper decay time.
         Co-working with particles-V10-05-00 and decay-V10-05-00.
      - 
      +
       November 9th, 2018 G.Cosmo (event-V10-04-08)
       - Fixed printout typos.
       
      @@ -99,7 +113,7 @@ March 16, 2018  M.Asai (event-V10-04-04)
         report #2040.
       
       February 8, 2018  Dennis Wright  (event-V10-04-03)
      -- add deprecation warning for /gun/ionL in 
      +- add deprecation warning for /gun/ionL in
         G4ParticleGunMessenger::SetNewValue()
       
       January 9, 2018, M.Asai (event-V10-04-02)
      @@ -149,7 +163,7 @@ July 22, 2016 L.Desorgher  (event-V10-02-05)
       - Modification of G4AdjointStackingAction to remove compilation error on Windows.
       
       July 21, 2016 L.Desorgher  (event-V10-02-04)
      -- Modification of G4AdjointStackingAction 
      +- Modification of G4AdjointStackingAction
       for the implementation of the splitting of the reverse MC tracking.
       
       May 16th, 2016 A.Dotti (event-V10-02-03)
      @@ -174,9 +188,9 @@ June 6th, 2015 A.Dotti (event-V10-01-07)
         of out-of-bound index.
       
       June 5th, 2015 A.Dotti (event-V10-01-06)
      -- Further refinement for bug #1744: address case in which 
      -  /gps/source/clear is used  
      -- Increase verbosity of error message for GPS in case 
      +- Further refinement for bug #1744: address case in which
      +  /gps/source/clear is used
      +- Increase verbosity of error message for GPS in case
         no sources are defined
       
       May 28th, 2015 A.Dotti (event-V10-01-05)
      @@ -189,13 +203,13 @@ April 6th, 2015 A.Dotti (event-V10-01-04)
       - Coverity fixes
       
       February 20th, 2015 A.Dotti (event-V10-01-03)
      -- Clean code and remove not needed thread-local data that 
      -  need to be shared for UI commands to work properly 
      +- Clean code and remove not needed thread-local data that
      +  need to be shared for UI commands to work properly
         (bug introduced in previous tag)
       
       February 20th, 2015 A.Dotti (event-V10-01-02)
       - Bug fixing: bringing back of sharing of random generator for SPSPosDistribution class, wrongly made thread-local
      - 
      +
       February 19th, 2015 A.Dotti (event-V10-01-01)
       - Bug fixing for unused variable
       
      @@ -242,7 +256,7 @@ Aug 29th, 2014  A.Dotti (event-V10-00-07)
       - Coverity fix #56594
       
       July 21st, 2014 A.Dotti (event-V10-00-06)
      -- Fix for bug #1656: G4SPSPosDistribution::GenerateOne() not 
      +- Fix for bug #1656: G4SPSPosDistribution::GenerateOne() not
         working correctly for GeneratePointsOnSurface() and
         GeneratePointsInVolume()
       
      @@ -254,11 +268,11 @@ June 4th, 2014 A.Dotti (event-V10-00-04)
       - Small changes to G4SPSEneDistribution: further memory reduction
       
       June 4th, 2013  L.Desorgher (event-V10-00-03)
      -- G4AdjointPrimaryGenerator: Add splitting of fwd gamma primaries to improve 
      -  convergence of G4RMC. 
      +- G4AdjointPrimaryGenerator: Add splitting of fwd gamma primaries to improve
      +  convergence of G4RMC.
       
       June 3rd, 2014 A.Dotti (event-V10-00-02)
      -- First implementation of memory reduction mechanism in MT 
      +- First implementation of memory reduction mechanism in MT
         courtesy of Andrew Green (Manchester U).
       
       February 21st, 2014  M.Asai (event-V10-00-01)
      @@ -272,12 +286,12 @@ January 23rd, 2014  M.Asai (event-V10-00-00)
       November 7th, 2013  L.Desorgher (event-V09-06-21)
       - Modification of adjoint classes to migrate to the new RMC schema where reverse
        and forward trackings of  equivalent adjoint and forward primaries are processed
      - in the same events. This in preparation for the migration to the G4MT mode. 
      + in the same events. This in preparation for the migration to the G4MT mode.
       
       September 9th, 2013  M.Asai (event-V09-06-20)
       - Change the warning message in G4StackManager on missing process
         manager to be issued only when the verbose level is greater than 0.
      -  
      +
       September 6th, 2013  M.Asai (event-V09-06-19)
       - Fix incorrect initialization in G4ParticleGunMessenger class for
         /gun/ionL command.
      @@ -325,7 +339,7 @@ June 7th, 2013, M.Asai (event-V09-06-08)
         constructor of G4EventManager to reduce the use of TLS pointer.
       
       June 7th, 2013, L.Desorgher (event-V09-06-07)
      -- Remove the call of aSolid->SurfaceNormal() in  G4AdjointPosOnPhysVolGenerator::GenerateAPositionOnASolidBoundary that was 
      +- Remove the call of aSolid->SurfaceNormal() in  G4AdjointPosOnPhysVolGenerator::GenerateAPositionOnASolidBoundary that was
         generating warnings. Suggested by G. Cosmo
       
       May 26th, 2013, M.Asai (event-V09-06-06)
      @@ -356,7 +370,7 @@ December 3rd, 2012, M.Asai (event-V09-06-00)
       - Remove obsolete classes G4CellScorer and G4CellScorerStore.
       
       November 27th, 2012, Hisaya Kurashige (event-V09-05-17)
      -- Add clearAndDestory() method to G4TrackStack and G4SmartTrackStack 
      +- Add clearAndDestory() method to G4TrackStack and G4SmartTrackStack
         and use this method in G4StackManager::clear()
         This fixes problem with memory leak
       
      @@ -374,11 +388,11 @@ November 5th, 2012, P. Mato (event-V09-05-14)
           example-ext-radioactivedecay-rdecay01, example-nov-n04
       
       November 2nd, 2012, M.Asai (event-V09-05-13)
      -- Removed inline keyword from G4EventManager::AbortEvent() to prevent incorrect 
      +- Removed inline keyword from G4EventManager::AbortEvent() to prevent incorrect
         inlining for VC++ if SmartStack is used.
       
       October 15th, 2012, M.Asai (event-V09-05-12)
      -- Added warning messages to G4CennScorer and G4CellScorerStore classes which will 
      +- Added warning messages to G4CennScorer and G4CellScorerStore classes which will
       be dropped fromversion 10.0.
       
       October 11th, 2012, P.Mato (event-V09-05-11)
      @@ -388,11 +402,11 @@ October 10th, 2012, P.Mato (event-V09-05-10)
       - Fixed problem with new implementation of G4StackManager::TransferOneStackedTrack
       
       October 5th, 2012, P.Mato (event-V09-05-09)
      -- Fixed problem with G4SmartTrackStack not to use particle defitions 
      +- Fixed problem with G4SmartTrackStack not to use particle defitions
         pointers and use PDG code instead
       
       October 5th, 2012, S. Kamperis, P.Mato (event-V09-05-08)
      -- G4StackTrack, G4StackedTrack: Changed the implementation of G4StackTrack to use a 
      +- G4StackTrack, G4StackedTrack: Changed the implementation of G4StackTrack to use a
         std::vector (by value!) instead of double linked list. Performance
         has been measured to be 35% better with a simple test program in test/testStackManager.cc
       
      @@ -414,13 +428,13 @@ May 24th, 2012, G.Cosmo (event-V09-05-05)
       - Fixed trivial cases of variable shadowing.
       
       April 2nd, 2012, L.Desorgher (event-V09-05-04)
      -- Correction for orthogonalization of rotation matrix in  
      +- Correction for orthogonalization of rotation matrix in
         G4SPSPosDistribution::GenerateRotationMatrices() as suggested by
         Joaquin Phoenix (bug report #1299)
       
       March 8th, 2012, M.Asai (event-V09-05-03)
       - Correct the location of G4Exception to the constructor of
      -  G4UserEventAction. 
      +  G4UserEventAction.
       
       March 6th, 2012, M.Asai (event-V09-05-02)
       - Add dummy copy constructor and = operator to G4Event. (bug report 1277)
      @@ -429,7 +443,7 @@ January 12th, 2012, L.Desorgher (event-V09-05-01)
       - Correction for settings of sigmaX and sigmaY in
         G4SPSPosDistribution::SetBeamSigmaInR () as suggested by
         Guan, Fada (bug report #1278).
      -  
      +
       November 10th, 2011, M.Asai (event-V09-04-09)
       - Fixing Coverity warnings.
       
      @@ -452,7 +466,7 @@ June 18th, 2011, H.Kurashige (event-V09-04-04)
       - Modify G4ParticleGun (and related) to use momentum direction
       
       June 16th, 2011, H.Kurashige (event-V09-04-03)
      -- Fix bugs in G4HEPEvtInterface. 
      +- Fix bugs in G4HEPEvtInterface.
         In creation of G4PrimaryParticle, only PDG code is given to the constructor. Then mass and momentum is set .
       - Modify G4RayShooter and G4SingleParticleSource to use kinetic energy and momentum direction
         instead of momentum.
      @@ -460,10 +474,10 @@ June 16th, 2011, H.Kurashige (event-V09-04-03)
       June 14th, 2011, H.Kurashige (event-V09-04-02)
       - Modify G4ParticleGun and G4PrimaryTransformer to use kinetic energy and momentum direction
         instead of momentum.
      -  (It requires particles-V09-04-06) 
      +  (It requires particles-V09-04-06)
       
       May 20th, 2011, B.Morgan (event-V09-04-01)
      -- CMakeLists.txt : Added G4EVENT_ALLOC_EXPORT compiler definition via 
      +- CMakeLists.txt : Added G4EVENT_ALLOC_EXPORT compiler definition via
         add_definitions so it's applied to all sources in this module.
       
       February 10th, 2011, M.Asai (event-V09-04-00)
      @@ -482,20 +496,20 @@ Novemver 10th, 2010, F.Lei (event-V09-03-08)
          /gps/hist/file your_file_name
       - Further update of the auto energy biasing implementation
       - Bug fix (new implementation) in the Spline interpolation implementation
      -- Bug fix in the Logarithm interpolation implementation (alpha = -1 case).   
      +- Bug fix in the Logarithm interpolation implementation (alpha = -1 case).
       
       November 8th, 2010, M.Asai (event-V09-03-07)
       - Setting touchable history of the origin to G4Track.
       
      -November 2nd, 2010, F.Lei 
      +November 2nd, 2010, F.Lei
       - Implemented concrete destructor for G4SPSEneDistribution (bug #1149)
       - Added automatic energy biasing scheme. Users now can bias the energy distribution
      -  sampling to a given power-law distribution (index alpha) via the UI command  
      +  sampling to a given power-law distribution (index alpha) via the UI command
           /gps/ene/biasAlpha alpha
         Files affected are
       	G4SingleParticleSource.hh .cc
      -	G4SPSEneDistribution.hh .cc  
      -	G4SPSRandomGenerator.hh .cc  
      +	G4SPSEneDistribution.hh .cc
      +	G4SPSRandomGenerator.hh .cc
       	G4GeneralParticleSourceMessenger.hh .cc
       
       October 27th, 2010, G.Cosmo (event-V09-03-06)
      @@ -532,15 +546,15 @@ November 6, 2009, L.Desorgher (event-V09-02-04)
         New classes are G4AdjointPosOnPhysVolGenerator,G4AdjointPrimaryGenerator, G4AdjointStackingAction
       
       September 16, 2009, M.Asai (event-V09-02-03)
      -- Improved the logic in G4SmartTrackStack. 
      +- Improved the logic in G4SmartTrackStack.
       - Added /event/stack/verbose to have a short report of peak number of tracks in
         the urgent stack.
       
       August 17, 2009, M.Asai (event-V09-02-02)
       - Introducing G4SmartTrackStack class. By using this new stack as the urgent stack of
         G4StackManager, the next track poped up from the stack is not necessarily the last
      -  track stored in the stack, but the track of same particle type as the previous one, 
      -  as long as such a track exists in the urgent stack. This mechanism is expected to 
      +  track stored in the stack, but the track of same particle type as the previous one,
      +  as long as such a track exists in the urgent stack. This mechanism is expected to
         improve the performance for ultra-large scale simulation such as LHC, by increasing
         the cashe hit rate of the physics tables.
       - The use of G4SmartTrackStack is optional. To use it, uncomment the "#define" line
      @@ -594,10 +608,10 @@ March 5, 2007, M.Asai (event-V08-02-00)
       default for random number status.
       
       November 17, 2006, F.Lei (event-V08-01-03)
      -- Improved implementation of flat_sampling (biasing) for multiple sources in GPS. 
      +- Improved implementation of flat_sampling (biasing) for multiple sources in GPS.
       
       November 17, 2006, F.Lei (event-V08-01-02)
      -- First implementation of flat_sampling (biasing) for multiple sources. 
      +- First implementation of flat_sampling (biasing) for multiple sources.
       
       November 10, 2006, F.Lei (event-V08-01-01)
       - Added line 468 to for initialization to G4PSEneDistribution.cc
      @@ -643,7 +657,7 @@ October 20, 2005, Joseph Perl (event-V07-01-01)
       - Tag to co-work with vis-V07-01-05.
       
       Oct 17, 2005 Jane Tinslay
      -- Modify GNUmakefile to follow intercoms->graphics_reps migration for 
      +- Modify GNUmakefile to follow intercoms->graphics_reps migration for
         G4VGraphicsScene and G4VVisManager
       
       Sep 05, 2005, F.Lei (event-V07-01-00)
      @@ -656,13 +670,13 @@ May 30, 2005, M.Asai (event-V07-00-04)
       - Modify G4PrimaryTransformer to accept exotic particles.
       
       May 10, 2005, F.Lei  (event-V07-00-03)
      -- commentingt out line 157 in G4SinglePariclesource.cc. Fixing a bug in 
      +- commentingt out line 157 in G4SinglePariclesource.cc. Fixing a bug in
          particle weight
       
       Apr 26, 2005, M.Asai (event-V07-00-02)
       - Modify G4PrimaryTransformer
        - to accept shortlived primary particle with proper decay table,
      - - to issue a warning message if a shortlived primary does not have decay table nor 
      + - to issue a warning message if a shortlived primary does not have decay table nor
          pre-assigned decay mode,
        - and to add a new virtual method to alter the conversion of such shortlived into
          a track (default implementation converts it).
      @@ -720,17 +734,17 @@ May 04, 2004, M.Asai (event-V06-01-03)
         to G4EventManager.
       
       Apr, 26, 2004, F. Lei (event-V06-01-02)
      -- Restored a few methods to G4GeneralParticleSource.hh to maintain backward 
      -  compatibility. 
      +- Restored a few methods to G4GeneralParticleSource.hh to maintain backward
      +  compatibility.
       
       Apr, 5, 2004, F. Lei (event-V06-01-01)
      -- Added "UserWRTSurace = true", "UserAngRef= flase" to constructor of 
      +- Added "UserWRTSurace = true", "UserAngRef= flase" to constructor of
         G4SPSAngDistribution.
       - Apply the Max/Min angle limits to the User defined angular distribution case.
       - New formula for conevrting integral spectrum to differential one.
      - 
      -Apr, 1, 2004, F. Lei (event-V06-01-00) 
      -- Major design iteration of the G4GeneralParticleSource class. The following 
      +
      +Apr, 1, 2004, F. Lei (event-V06-01-00)
      +- Major design iteration of the G4GeneralParticleSource class. The following
         new classes have been added:
       	- G4SingleParticleSource
       	- G4SPSEneDistribution
      @@ -738,7 +752,7 @@ Apr, 1, 2004, F. Lei (event-V06-01-00)
       	- G4SPSPosDistribution
       	- G4SPSRandomGenerator
         See http://reat.space.qinetiq.com/gps for more details of the changes.
      -	
      +
       Mar. 15, 2004, M.Asai (event-V06-00-01)
       - LocateGlobalPointAndSetup() method of G4Navigator is now invoked at the
         beginning of each event to reset the navigator.
      @@ -783,7 +797,7 @@ Aug 13 2003, M.Asai (event-V05-02-03)
         Now they have negative trackID.
       
       Aug 11 2003, M.Asai (event-V05-02-02)
      -- Maintain links between pre-assigned decay products and corresponding primary 
      +- Maintain links between pre-assigned decay products and corresponding primary
         particle. Becuse of this, G4PrimaryParticle objects of pre-assigned decay
         have proper track ID.
       
      @@ -898,9 +912,9 @@ Aug 17 2001, M.Asai (event-V03-02-04)
       - G4EventManager.cc is debugged according to bug report 289.
       
       July 19 2001, M.Asai (event-V03-02-03)
      -- Tagged 
      +- Tagged
       
      -July 19 2001, F.Lei 
      +July 19 2001, F.Lei
       - Most commands under G4ParticleGun class are now available under GPS
       
           e.g..
      @@ -973,13 +987,13 @@ Feb 5 2001, M.Asai (event-V03-00-00)
       
       Jan 26 2001, F. Lei
       - bug fixing in G4GeneralSourceParticle.cc
      - replace: 
      + replace:
                 posphi = acos(tx/sin(posthe));
      - 
      +
        with:
      -          if (posthe != 0. && posthe != pi) 
      -             posphi = acos(tx/sin(posthe)); 
      -          else 
      +          if (posthe != 0. && posthe != pi)
      +             posphi = acos(tx/sin(posthe));
      +          else
                    posphi = 0.0;
       	  endif
       
      @@ -994,7 +1008,7 @@ Nov 10 2000, F.Lei
          G4GeneralParticleSource::GenerateCoslawFlux()
       -    some bug fixing:
                 i) dclared ' G4int count' in all ****Interpolation functions
      -          ii) added ' return (0.) ' to GenerateUserDefTheta and GenerateUserDefPhi 
      +          ii) added ' return (0.) ' to GenerateUserDefTheta and GenerateUserDefPhi
                     as default.
       	  iii) changed
       	       #include 
      @@ -1006,10 +1020,10 @@ Nov 9 2000, M.Asai (tag event-V02-00-02)
       
       Oct 31 2000, F.Lei
         G4GeneralParticleSource:
      -  G4GeneralParticleSourceMessenger: 
      +  G4GeneralParticleSourceMessenger:
        	G4GeneralParticleSource is an alternative primary source
      -	generator to G4ParticleGun. It has all the functions of 
      -	G4ParticleGun plus many options for specifing the primary 
      +	generator to G4ParticleGun. It has all the functions of
      +	G4ParticleGun plus many options for specifing the primary
       	event particle and vertex.
       
        - added  -I$(G4BASE)/global/HEPNumerics/include \
      @@ -1025,7 +1039,7 @@ Oct 19 2000, M.Asai (tag event-V02-00-01)
         G4PrimaryVertex : Add weight
         G4PrimaryTransformer : Use G4PrimaryParticle::GetCharge to give dynamic charge
                                in G4DynamicParticle
      -                       : Set weight of G4Track 
      +                       : Set weight of G4Track
       
       July 22 2000, M.Asai (tag event-V02-00-00)
       - Adding some new Set methods to G4PrimaryVertex and G4PrimaryParticle
      diff --git a/source/event/include/G4Event.hh b/source/event/include/G4Event.hh
      index 586aee6db9..fa3b5b995a 100644
      --- a/source/event/include/G4Event.hh
      +++ b/source/event/include/G4Event.hh
      @@ -47,13 +47,16 @@
       #include "G4DCofThisEvent.hh"
       #include "G4TrajectoryContainer.hh"
       #include "G4VUserEventInformation.hh"
      +#include "G4Profiler.hh"
       
       class G4VHitsCollection;
       
       class G4Event 
       {
         public:
      +  using ProfilerConfig = G4ProfilerConfig;
       
      + public:
           G4Event();
           G4Event(G4int evID);
          ~G4Event();
      diff --git a/source/event/include/G4EventManager.hh b/source/event/include/G4EventManager.hh
      index 7b0d03036f..623861bb17 100644
      --- a/source/event/include/G4EventManager.hh
      +++ b/source/event/include/G4EventManager.hh
      @@ -55,8 +55,10 @@ class G4VUserEventInformation;
       
       class G4EventManager 
       {
      -  public:
      + public:
      +  using ProfilerConfig = G4ProfilerConfig;
       
      + public:
           static G4EventManager* GetEventManager();
             // This method returns the singleton pointer of G4EventManager.
       
      @@ -183,6 +185,9 @@ class G4EventManager
           G4String randomNumberStatusToG4Event;
       
           G4StateManager* stateManager = nullptr;
      +
      + private:
      +  std::unique_ptr eventProfiler;
       };
       
       #endif
      diff --git a/source/event/sources.cmake b/source/event/sources.cmake
      index a2aacf05e4..0fa1c7cbec 100644
      --- a/source/event/sources.cmake
      +++ b/source/event/sources.cmake
      @@ -108,6 +108,12 @@ geant4_define_module(NAME G4event
           G4track
           G4tracking
         LINK_LIBRARIES
      +    ${timemory_LIBRARIES}
       )
       
       # List any source specific properties here
      +# Enable smart stack
      +if(GEANT4_USE_SMARTSTACK)
      +  geant4_module_compile_definitions(G4event PUBLIC G4_USESMARTSTACK)
      +endif()
      +
      diff --git a/source/event/src/G4EventManager.cc b/source/event/src/G4EventManager.cc
      index 3e368fad9f..d2135dc197 100644
      --- a/source/event/src/G4EventManager.cc
      +++ b/source/event/src/G4EventManager.cc
      @@ -40,6 +40,8 @@
       #include "G4TransportationManager.hh"
       #include "G4Navigator.hh"
       #include "Randomize.hh"
      +#include "G4Profiler.hh"
      +#include "G4TiMemory.hh"
       
       G4ThreadLocal G4EventManager* G4EventManager::fpEventManager = nullptr;
       
      @@ -128,6 +130,10 @@ void G4EventManager::DoProcessing(G4Event* anEvent)
       
         if(userEventAction) userEventAction->BeginOfEventAction(currentEvent);
       
      +#if defined(GEANT4_USE_TIMEMORY)
      +  eventProfiler.reset(new ProfilerConfig(currentEvent));
      +#endif
      +
       #ifdef G4VERBOSE
         if ( verboseLevel > 1 )
         {
      @@ -247,6 +253,10 @@ void G4EventManager::DoProcessing(G4Event* anEvent)
           sdManager->TerminateCurrentEvent(currentEvent->GetHCofThisEvent());
         }
       
      +#if defined(GEANT4_USE_TIMEMORY)
      +  eventProfiler.reset();
      +#endif
      +
         if(userEventAction)
         {
           userEventAction->EndOfEventAction(currentEvent);
      diff --git a/source/event/src/G4PrimaryTransformer.cc b/source/event/src/G4PrimaryTransformer.cc
      index 76da00adf9..1c363b59b3 100644
      --- a/source/event/src/G4PrimaryTransformer.cc
      +++ b/source/event/src/G4PrimaryTransformer.cc
      @@ -144,7 +144,7 @@ GenerateSingleTrack( G4PrimaryParticle* primaryParticle,
           if(verboseLevel>1)
           {
             G4cout << "Primary particle (" << partDef->GetParticleName()
      -             << ") --- Transfered with momentum "
      +             << ") --- Transferred with momentum "
                    << primaryParticle->GetMomentum()
                    << G4endl;
           }
      diff --git a/source/event/src/G4SPSPosDistribution.cc b/source/event/src/G4SPSPosDistribution.cc
      index 60ab1da415..80bf69aece 100644
      --- a/source/event/src/G4SPSPosDistribution.cc
      +++ b/source/event/src/G4SPSPosDistribution.cc
      @@ -267,6 +267,14 @@ void G4SPSPosDistribution::ConfineSourceToVolume(const G4String& Vname)
         VolName = Vname;
         if(verbosityLevel == 2) { G4cout << VolName << G4endl; }
       
      +  if(VolName=="NULL")
      +  {
      +    if(verbosityLevel >= 1)
      +    { G4cout << "Volume confinement is set off." << G4endl; }
      +    Confine = false;
      +    return;
      +  }
      +
         G4VPhysicalVolume* tempPV = nullptr;
         G4PhysicalVolumeStore* PVStore = nullptr;
         G4String theRequiredVolumeName = VolName;
      @@ -299,7 +307,7 @@ void G4SPSPosDistribution::ConfineSourceToVolume(const G4String& Vname)
         }
         else
         {
      -    G4cout << " **** Error: Volume does not exist **** " << G4endl;
      +    G4cout << " **** Error: Volume <" << VolName << "> does not exist **** " << G4endl;
           G4cout << " Ignoring confine condition" << G4endl;
           Confine = false;
           VolName = "NULL";
      @@ -1165,7 +1173,7 @@ void G4SPSPosDistribution::GeneratePointsInVolume(G4ThreeVector& pos)
         }
         else
         {
      -    G4cout << "Error: Volume Shape Doesnt Exist" << G4endl;
      +    G4cout << "Error: Volume Shape does not exist" << G4endl;
         }
       
         RandPos.setX(x);
      diff --git a/source/externals/CMakeLists.txt b/source/externals/CMakeLists.txt
      index 3860fde48b..612d95ff9f 100644
      --- a/source/externals/CMakeLists.txt
      +++ b/source/externals/CMakeLists.txt
      @@ -2,74 +2,55 @@
       # CMakeLists.txt
       # Module : G4externals
       # Package: Geant4.src.G4externals
      -#
      -# Intermediate level CMakeLists.txt - just process subdirectories
      -#
      -# Created on : 02/06/2011
      -#
      -# $Date$
      -# $Revision$
      -# $Author$
      -#
       #------------------------------------------------------------------------------
       
      -#----------------------------------------------------------------------------
      -# We only need internal CLHEP if it was requested
      -#
      +# - Recurse into subdirectories as needed
       if(NOT GEANT4_USE_SYSTEM_CLHEP)
      -    add_subdirectory(clhep)
      +  add_subdirectory(clhep)
       endif()
       
      -#----------------------------------------------------------------------------
      -# We only need internal expat if it was requested
      -#
       if(NOT GEANT4_USE_SYSTEM_EXPAT)
      -    add_subdirectory(expat)
      +  add_subdirectory(expat)
       endif()
       
      -#----------------------------------------------------------------------------
      -# Geant4 internal ZLIB build optional
      -#
       if(NOT GEANT4_USE_SYSTEM_ZLIB)
      -    add_subdirectory(zlib)
      +  add_subdirectory(zlib)
       endif()
       
      -#----------------------------------------------------------------------------
      -# Geant4 internal PTL build optional
      -#
      +# PTL requires additional pre and post inclusion steps as it's a true subproject
       if(NOT GEANT4_USE_SYSTEM_PTL)
      -    set(CMAKE_INSTALL_CONFIGDIR ${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}-${${PROJECT_NAME}_VERSION}
      +  set(CMAKE_INSTALL_CONFIGDIR ${CMAKE_INSTALL_LIBDIR}/${PROJECT_NAME}-${${PROJECT_NAME}_VERSION}
               CACHE PATH "CMake install directory" FORCE)
      -    add_subdirectory(ptl)
      -    # Needs to be in defined category list for static/shared to be linked correctly.
      -    set_property(GLOBAL APPEND PROPERTY GEANT4_DEFINED_CATEGORIES G4ptl)
      +  add_subdirectory(ptl)
      +  # Needs to be in defined category list for static/shared to be linked correctly.
      +  set_property(GLOBAL APPEND PROPERTY GEANT4_DEFINED_CATEGORIES G4ptl)
       endif()
       
       #----------------------------------------------------------------------------
       # Alias the tasking libraries to Geant4 target naming convention
       #
       if(TARGET ptl-shared)
      -    add_library(G4ptl INTERFACE)
      -    add_library(PTL::ptl-shared ALIAS ptl-shared)
      -    target_link_libraries(G4ptl INTERFACE PTL::ptl-shared)
      -    install(TARGETS G4ptl
      -      EXPORT Geant4LibraryDepends
      -      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime
      -      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Runtime
      -      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Development
      -      INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME})
      -    add_library(Geant4::G4ptl ALIAS G4ptl)
      +  add_library(G4ptl INTERFACE)
      +  add_library(PTL::ptl-shared ALIAS ptl-shared)
      +  target_link_libraries(G4ptl INTERFACE PTL::ptl-shared)
      +  install(TARGETS G4ptl
      +    EXPORT Geant4LibraryDepends
      +    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime
      +    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Runtime
      +    ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Development
      +    INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME})
      +  add_library(Geant4::G4ptl ALIAS G4ptl)
       endif()
       
       if(TARGET ptl-static)
      -    add_library(G4ptl-static INTERFACE)
      -    add_library(PTL::ptl-static ALIAS ptl-static)
      -    target_link_libraries(G4ptl-static INTERFACE PTL::ptl-static)
      -    install(TARGETS G4ptl-static
      -      EXPORT Geant4LibraryDepends
      -      RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime
      -      LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Runtime
      -      ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Development
      -      INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME})
      -    add_library(Geant4::G4ptl-static ALIAS G4ptl-static)
      +  add_library(G4ptl-static INTERFACE)
      +  add_library(PTL::ptl-static ALIAS ptl-static)
      +  target_link_libraries(G4ptl-static INTERFACE PTL::ptl-static)
      +  install(TARGETS G4ptl-static
      +    EXPORT Geant4LibraryDepends
      +    RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR} COMPONENT Runtime
      +    LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Runtime
      +    ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR} COMPONENT Development
      +    INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME})
      +  add_library(Geant4::G4ptl-static ALIAS G4ptl-static)
       endif()
      diff --git a/source/externals/History b/source/externals/History
      index 2ae4bbbb72..b4bc5e5c31 100644
      --- a/source/externals/History
      +++ b/source/externals/History
      @@ -16,6 +16,29 @@ committal in the CVS repository !
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
       
      +11 November 2020 - G.Cosmo (externals-V10-06-05)
      +- Synchronised with CLHEP-2.4.4.0:
      +  o Removed obsolete #pragma interface/implementation in Vector classes.
      +  o Get rid of switch statement in operator()/operator[] of Hep3Vector
      +    Replaced dx/dy/dz with operator[] in Hep3Vector.
      +    Replaced private dx/dy/dz with public x()/y()/z() in Hep3Vector
      +  o Added missing includes in Vector and Random classes for translation
      +    unit encapsulation.
      +
      +17 July 2020 - G.Cosmo (externals-V10-06-04)
      +- CLHEP: Updated values in SystemOfUnits.h and PhysicalConstants.h for:
      +  - e_SI, electron charge
      +  - h_Planck, Planck constant
      +  - Avogadro, Avogadro constant
      +  - k_Boltzmann, Boltzmann constant
      +  based on May 2019 redefinition of SI units. References:
      +  https://en.wikipedia.org/wiki/2019_redefinition_of_the_SI_base_units
      +  https://www.britannica.com/science/electron-charge.
      +
      +14 July 2020 - G. Cosmo (externals-V10-06-03)
      +- CLHEP: Use 32-bit internal seeds types coherently in MixMaxRng.
      +  Addressing CLHEP JIRA ticket #156.
      +
       10 June 2020 - J. Madsen (externals-V10-06-02)
       - Migrated PTL's used of CMAKE_BINARY_DIR to PROJECT_BINARY_DIR
       - Fixed PTLConfig.cmake.in for testing
      diff --git a/source/externals/clhep/History b/source/externals/clhep/History
      index fc413533a1..4b7d78b787 100644
      --- a/source/externals/clhep/History
      +++ b/source/externals/clhep/History
      @@ -16,6 +16,38 @@ committal in the CVS repository !
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
       
      +11 November 2020 - G.Cosmo
      +- Synchronised with CLHEP-2.4.4.0:
      +  * Vector (G.Amadio )
      +    o Removed obsolete #pragma interface/implementation
      +      These pragmas are obsolete since GCC 2.7.2.
      +      https://gcc.gnu.org/onlinedocs/gcc/C_002b_002b-Interface.html.
      +    o Get rid of switch statement in operator()/operator[] of Hep3Vector
      +      Replaced dx/dy/dz with operator[] in Hep3Vector
      +      Note: The substitution of x()/y()/z() in operator() is necessary to
      +            avoid infinite recursion, as x()/y()/z() are now defined in terms
      +            of operator[] instead.
      +    o Replaced private dx/dy/dz with public x()/y()/z() in Hep3Vector
      +      This is in preparation to change the data layout of Hep3Vector
      +      by replacing the private dx/dy/dz members with a vector, data[3],
      +      to allow us to remove the inefficient switch from operator[]().
      +  * Vector, Random (V.Vassilev )
      +    o Added missing includes for translation unit encapsulation.
      +
      +17 July 2020 - G.Cosmo
      +- Updated values in SystemOfUnits.h and PhysicalConstants.h for:
      +  - e_SI, electron charge
      +  - h_Planck, Planck constant
      +  - Avogadro, Avogadro constant
      +  - k_Boltzmann, Boltzmann constant
      +  based on May 2019 redefinition of SI units. References:
      +  https://en.wikipedia.org/wiki/2019_redefinition_of_the_SI_base_units
      +  https://www.britannica.com/science/electron-charge. 
      +
      +14 July 2020 - K.Savvidis, G.Cosmo
      +- Use 32-bit internal seeds types coherently in MixMaxRng.
      +  Addressing CLHEP JIRA ticket #156.
      +
       19 November 2019 - G.Cosmo
       - Fixed warnings for cases of implicit type conversions in
         Rand*Ziggurat classes.
      diff --git a/source/externals/clhep/include/CLHEP/Random/MixMaxRng.h b/source/externals/clhep/include/CLHEP/Random/MixMaxRng.h
      index e4891f6106..5c616c4f4a 100644
      --- a/source/externals/clhep/include/CLHEP/Random/MixMaxRng.h
      +++ b/source/externals/clhep/include/CLHEP/Random/MixMaxRng.h
      @@ -43,8 +43,8 @@ namespace CLHEP {
         * @ingroup random
         */
       
      -typedef unsigned long int myID_t;
      -typedef unsigned long long int myuint_t;
      +using myID_t = std::uint32_t;
      +using myuint_t = unsigned long long int;
       
       class MixMaxRng: public HepRandomEngine {
       
      diff --git a/source/externals/clhep/include/CLHEP/Random/SeedTable.h b/source/externals/clhep/include/CLHEP/Random/SeedTable.h
      index f27407acb3..a5db91b529 100644
      --- a/source/externals/clhep/include/CLHEP/Random/SeedTable.h
      +++ b/source/externals/clhep/include/CLHEP/Random/SeedTable.h
      @@ -18,6 +18,8 @@
       #ifndef SeedTable_h
       #define SeedTable_h 1
       
      +#include "CLHEP/Random/Random.h"
      +
       namespace CLHEP {
       
       const long HepRandom::seedTable[215][2] = {
      diff --git a/source/externals/clhep/include/CLHEP/Random/engineIDulong.h b/source/externals/clhep/include/CLHEP/Random/engineIDulong.h
      index c0fa5b40c6..ea84d67435 100644
      --- a/source/externals/clhep/include/CLHEP/Random/engineIDulong.h
      +++ b/source/externals/clhep/include/CLHEP/Random/engineIDulong.h
      @@ -15,6 +15,8 @@
       #ifndef engineIDulong_h
       #define engineIDulong_h 1
       
      +#include 
      +
       namespace CLHEP {
       
       unsigned long crc32ul(const std::string & s);
      diff --git a/source/externals/clhep/include/CLHEP/Units/PhysicalConstants.h b/source/externals/clhep/include/CLHEP/Units/PhysicalConstants.h
      index 2cfd0bceef..b23ec05757 100644
      --- a/source/externals/clhep/include/CLHEP/Units/PhysicalConstants.h
      +++ b/source/externals/clhep/include/CLHEP/Units/PhysicalConstants.h
      @@ -34,6 +34,7 @@
       //          and pressure; also added Gas threshold.
       // 29.04.08   use PDG 2006 values
       // 03.11.08   use PDG 2008 values
      +// 17.07.20   use PDG 2019 values
       
       #ifndef HEP_PHYSICAL_CONSTANTS_H
       #define HEP_PHYSICAL_CONSTANTS_H
      @@ -45,7 +46,7 @@ namespace CLHEP {
       //
       // 
       //
      -static constexpr double Avogadro = 6.02214179e+23/mole;
      +static constexpr double Avogadro = 6.02214076e+23/mole;
       
       //
       // c   = 299.792458 mm/ns
      @@ -59,7 +60,7 @@ static constexpr double c_squared = c_light * c_light;
       // hbar  = 6.58212e-13 MeV*ns
       // hbarc = 197.32705e-12 MeV*mm
       //
      -static constexpr double h_Planck      = 6.62606896e-34 * joule*s;
      +static constexpr double h_Planck      = 6.62607015e-34 * joule*s;
       static constexpr double hbar_Planck   = h_Planck/twopi;
       static constexpr double hbarc         = hbar_Planck * c_light;
       static constexpr double hbarc_squared = hbarc * hbarc;
      @@ -107,7 +108,7 @@ static constexpr double twopi_mc2_rcl2 = twopi*electron_mass_c2
       //
       //
       //
      -static constexpr double k_Boltzmann = 8.617343e-11 * MeV/kelvin;
      +static constexpr double k_Boltzmann = 8.617333e-11 * MeV/kelvin;
       
       //
       //
      diff --git a/source/externals/clhep/include/CLHEP/Units/SystemOfUnits.h b/source/externals/clhep/include/CLHEP/Units/SystemOfUnits.h
      index a443ba5a79..f549ba2bfc 100644
      --- a/source/externals/clhep/include/CLHEP/Units/SystemOfUnits.h
      +++ b/source/externals/clhep/include/CLHEP/Units/SystemOfUnits.h
      @@ -41,6 +41,7 @@
       // 03.11.08   use PDG 2008 value of e_SI
       // 19.08.15   added liter and its sub units (mma)
       // 12.01.16   added symbols for microsecond (us) and picosecond (ps) (mma)
      +// 17.07.20   use PDG 2019 value of e_SI
       
       #ifndef HEP_SYSTEM_OF_UNITS_H
       #define HEP_SYSTEM_OF_UNITS_H
      @@ -154,7 +155,7 @@ namespace CLHEP {
         // Electric charge [Q]
         //
         static constexpr double eplus = 1. ;// positron charge
      -  static constexpr double e_SI  = 1.602176487e-19;// positron charge in coulomb
      +  static constexpr double e_SI  = 1.602176634e-19;// positron charge in coulomb
         static constexpr double coulomb = eplus/e_SI;// coulomb = 6.24150 e+18 * eplus
       
         //
      diff --git a/source/externals/clhep/include/CLHEP/Utility/defs.h b/source/externals/clhep/include/CLHEP/Utility/defs.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/clhep/include/CLHEP/Vector/Boost.h b/source/externals/clhep/include/CLHEP/Vector/Boost.h
      index b57152bf2b..2c6adbc985 100644
      --- a/source/externals/clhep/include/CLHEP/Vector/Boost.h
      +++ b/source/externals/clhep/include/CLHEP/Vector/Boost.h
      @@ -19,10 +19,6 @@
       #ifndef HEP_BOOST_H
       #define HEP_BOOST_H
       
      -#ifdef GNUPRAGMA
      -#pragma interface
      -#endif
      -
       #include "CLHEP/Vector/RotationInterfaces.h"
       #include "CLHEP/Vector/BoostX.h"
       #include "CLHEP/Vector/BoostY.h"
      diff --git a/source/externals/clhep/include/CLHEP/Vector/BoostX.h b/source/externals/clhep/include/CLHEP/Vector/BoostX.h
      index fbda2e23ad..ba0b9b4437 100644
      --- a/source/externals/clhep/include/CLHEP/Vector/BoostX.h
      +++ b/source/externals/clhep/include/CLHEP/Vector/BoostX.h
      @@ -19,10 +19,6 @@
       #ifndef HEP_BOOSTX_H
       #define HEP_BOOSTX_H
       
      -#ifdef GNUPRAGMA
      -#pragma interface
      -#endif
      -
       #include "CLHEP/Vector/RotationInterfaces.h"
       #include "CLHEP/Vector/LorentzVector.h"
       
      diff --git a/source/externals/clhep/include/CLHEP/Vector/BoostY.h b/source/externals/clhep/include/CLHEP/Vector/BoostY.h
      index 46a42c60e3..e7d7495169 100644
      --- a/source/externals/clhep/include/CLHEP/Vector/BoostY.h
      +++ b/source/externals/clhep/include/CLHEP/Vector/BoostY.h
      @@ -19,10 +19,6 @@
       #ifndef HEP_BOOSTY_H
       #define HEP_BOOSTY_H
       
      -#ifdef GNUPRAGMA
      -#pragma interface
      -#endif
      -
       #include "CLHEP/Vector/RotationInterfaces.h"
       #include "CLHEP/Vector/LorentzVector.h"
       
      diff --git a/source/externals/clhep/include/CLHEP/Vector/BoostZ.h b/source/externals/clhep/include/CLHEP/Vector/BoostZ.h
      index a1f5f3038f..9518d00fde 100644
      --- a/source/externals/clhep/include/CLHEP/Vector/BoostZ.h
      +++ b/source/externals/clhep/include/CLHEP/Vector/BoostZ.h
      @@ -19,10 +19,6 @@
       #ifndef HEP_BOOSTZ_H
       #define HEP_BOOSTZ_H
       
      -#ifdef GNUPRAGMA
      -#pragma interface
      -#endif
      -
       #include "CLHEP/Vector/RotationInterfaces.h"
       #include "CLHEP/Vector/LorentzVector.h"
       
      diff --git a/source/externals/clhep/include/CLHEP/Vector/LorentzRotation.h b/source/externals/clhep/include/CLHEP/Vector/LorentzRotation.h
      index efdc31399b..d8031b803f 100644
      --- a/source/externals/clhep/include/CLHEP/Vector/LorentzRotation.h
      +++ b/source/externals/clhep/include/CLHEP/Vector/LorentzRotation.h
      @@ -22,10 +22,6 @@
       #ifndef HEP_LORENTZROTATION_H
       #define HEP_LORENTZROTATION_H
       
      -#ifdef GNUPRAGMA
      -#pragma interface
      -#endif
      -
       #include "CLHEP/Vector/RotationInterfaces.h"
       #include "CLHEP/Vector/Rotation.h" 
       #include "CLHEP/Vector/Boost.h" 
      diff --git a/source/externals/clhep/include/CLHEP/Vector/LorentzVector.h b/source/externals/clhep/include/CLHEP/Vector/LorentzVector.h
      index c12696ede0..6f6f4f12b3 100644
      --- a/source/externals/clhep/include/CLHEP/Vector/LorentzVector.h
      +++ b/source/externals/clhep/include/CLHEP/Vector/LorentzVector.h
      @@ -20,10 +20,6 @@
       #ifndef HEP_LORENTZVECTOR_H
       #define HEP_LORENTZVECTOR_H
       
      -#ifdef GNUPRAGMA
      -#pragma interface
      -#endif
      -
       #include 
       #include "CLHEP/Vector/ThreeVector.h"
       
      diff --git a/source/externals/clhep/include/CLHEP/Vector/Rotation.h b/source/externals/clhep/include/CLHEP/Vector/Rotation.h
      index 56e3ad3649..a4fff7abb0 100644
      --- a/source/externals/clhep/include/CLHEP/Vector/Rotation.h
      +++ b/source/externals/clhep/include/CLHEP/Vector/Rotation.h
      @@ -20,10 +20,6 @@
       #ifndef HEP_ROTATION_H
       #define HEP_ROTATION_H
       
      -#ifdef GNUPRAGMA
      -#pragma interface
      -#endif
      -
       #include "CLHEP/Vector/RotationInterfaces.h"
       #include "CLHEP/Vector/RotationX.h"
       #include "CLHEP/Vector/RotationY.h"
      diff --git a/source/externals/clhep/include/CLHEP/Vector/RotationX.h b/source/externals/clhep/include/CLHEP/Vector/RotationX.h
      index 8d27d606b9..6e776589da 100644
      --- a/source/externals/clhep/include/CLHEP/Vector/RotationX.h
      +++ b/source/externals/clhep/include/CLHEP/Vector/RotationX.h
      @@ -20,10 +20,6 @@
       #ifndef HEP_ROTATIONX_H
       #define HEP_ROTATIONX_H
       
      -#ifdef GNUPRAGMA
      -#pragma interface
      -#endif
      -
       #include "CLHEP/Vector/RotationInterfaces.h"
       
       namespace CLHEP  {
      diff --git a/source/externals/clhep/include/CLHEP/Vector/RotationY.h b/source/externals/clhep/include/CLHEP/Vector/RotationY.h
      index 994bdc565d..106882f84c 100644
      --- a/source/externals/clhep/include/CLHEP/Vector/RotationY.h
      +++ b/source/externals/clhep/include/CLHEP/Vector/RotationY.h
      @@ -20,10 +20,6 @@
       #ifndef HEP_ROTATIONY_H
       #define HEP_ROTATIONY_H
       
      -#ifdef GNUPRAGMA
      -#pragma interface
      -#endif
      -
       #include "CLHEP/Vector/RotationInterfaces.h"
       
       namespace CLHEP {
      diff --git a/source/externals/clhep/include/CLHEP/Vector/RotationZ.h b/source/externals/clhep/include/CLHEP/Vector/RotationZ.h
      index 121bc89cc7..cc6bba8fc9 100644
      --- a/source/externals/clhep/include/CLHEP/Vector/RotationZ.h
      +++ b/source/externals/clhep/include/CLHEP/Vector/RotationZ.h
      @@ -20,10 +20,6 @@
       #ifndef HEP_ROTATIONZ_H
       #define HEP_ROTATIONZ_H
       
      -#ifdef GNUPRAGMA
      -#pragma interface
      -#endif
      -
       #include "CLHEP/Vector/RotationInterfaces.h"
       
       namespace CLHEP {
      diff --git a/source/externals/clhep/include/CLHEP/Vector/ThreeVector.h b/source/externals/clhep/include/CLHEP/Vector/ThreeVector.h
      index b6edb23912..a50d7a05d1 100644
      --- a/source/externals/clhep/include/CLHEP/Vector/ThreeVector.h
      +++ b/source/externals/clhep/include/CLHEP/Vector/ThreeVector.h
      @@ -20,10 +20,6 @@
       #ifndef HEP_THREEVECTOR_H
       #define HEP_THREEVECTOR_H
       
      -#ifdef GNUPRAGMA
      -#pragma interface
      -#endif
      -
       #include 
       #include "CLHEP/Utility/defs.h"
       
      @@ -392,9 +388,7 @@ protected:
       
       protected:
       
      -  double dx;
      -  double dy;
      -  double dz;
      +  double data[3];
         // The components.
       
         DLL_API static double tolerance;
      diff --git a/source/externals/clhep/include/CLHEP/Vector/ThreeVector.icc b/source/externals/clhep/include/CLHEP/Vector/ThreeVector.icc
      index 72d18d7d06..56990c3bdd 100644
      --- a/source/externals/clhep/include/CLHEP/Vector/ThreeVector.icc
      +++ b/source/externals/clhep/include/CLHEP/Vector/ThreeVector.icc
      @@ -17,50 +17,33 @@ namespace CLHEP {
       
       // x, y, z
       
      -inline double & Hep3Vector::operator[] (int i)       { return operator()(i); }
      -inline double   Hep3Vector::operator[] (int i) const { return operator()(i); }
      +inline double & Hep3Vector::operator[] (int i)       { return data[i]; }
      +inline double   Hep3Vector::operator[] (int i) const { return data[i]; }
       
      -inline double Hep3Vector::x() const { return dx; }
      -inline double Hep3Vector::y() const { return dy; }
      -inline double Hep3Vector::z() const { return dz; }
      +inline double Hep3Vector::x() const { return (*this)[X]; }
      +inline double Hep3Vector::y() const { return (*this)[Y]; }
      +inline double Hep3Vector::z() const { return (*this)[Z]; }
       
      -inline double Hep3Vector::getX() const { return dx; }
      -inline double Hep3Vector::getY() const { return dy; }
      -inline double Hep3Vector::getZ() const { return dz; }
      +inline double Hep3Vector::getX() const { return (*this)[X]; }
      +inline double Hep3Vector::getY() const { return (*this)[Y]; }
      +inline double Hep3Vector::getZ() const { return (*this)[Z]; }
       
      -inline void Hep3Vector::setX(double x1) { dx = x1; }
      -inline void Hep3Vector::setY(double y1) { dy = y1; }
      -inline void Hep3Vector::setZ(double z1) { dz = z1; }
      +inline void Hep3Vector::setX(double x) { (*this)[X] = x; }
      +inline void Hep3Vector::setY(double y) { (*this)[Y] = y; }
      +inline void Hep3Vector::setZ(double z) { (*this)[Z] = z; }
       
      -inline void Hep3Vector::set(double x1, double y1, double z1) { 
      -  dx = x1; 
      -  dy = y1; 
      -  dz = z1; 
      +inline void Hep3Vector::set(double x, double y, double z) {
      +  (*this)[X] = x;
      +  (*this)[Y] = y;
      +  (*this)[Z] = z;
       }
       
       inline double Hep3Vector::operator () (int i) const {
      -  switch(i) {
      -  case X:
      -    return x();
      -  case Y:
      -    return y();
      -  case Z:
      -    return z();
      -  }
      -  return 0.;
      +  return data[i];
       }
       
       inline double & Hep3Vector::operator () (int i) {
      -  static double dummy;
      -  switch(i) {
      -  case X:
      -    return dx;
      -  case Y:
      -    return dy;
      -  case Z:
      -    return dz;
      -  }
      -  return dummy;
      +  return data[i];
       }
       
       // --------------
      @@ -111,23 +94,21 @@ inline void Hep3Vector::setRhoPhiZ
       // ------------
       
       inline Hep3Vector::Hep3Vector()
      -  : dx(0.), dy(0.), dz(0.) {}
      -inline Hep3Vector::Hep3Vector(double x1)
      -  : dx(x1), dy(0.), dz(0.) {}
      -inline Hep3Vector::Hep3Vector(double x1, double y1)
      -  : dx(x1), dy(y1), dz(0.) {}
      -inline Hep3Vector::Hep3Vector(double x1, double y1, double z1)
      -  : dx(x1), dy(y1), dz(z1) {}
      +  : data{0.0, 0.0, 0.0} {}
      +inline Hep3Vector::Hep3Vector(double x)
      +  : data{ x , 0.0, 0.0} {}
      +inline Hep3Vector::Hep3Vector(double x, double y)
      +  : data{ x ,  y , 0.0} {}
      +inline Hep3Vector::Hep3Vector(double x, double y, double z)
      +  : data{ x ,  y ,  z } {}
       
       inline Hep3Vector::Hep3Vector(const Hep3Vector & p)
      -: dx(p.dx), dy(p.dy), dz(p.dz) {}
      +  : data{p.x(), p.y(), p.z()} {}
       
       inline Hep3Vector::~Hep3Vector() {}
       
       inline Hep3Vector & Hep3Vector::operator = (const Hep3Vector & p) {
      -  dx = p.dx;
      -  dy = p.dy;
      -  dz = p.dz;
      +  set(p.x(), p.y(), p.z());
         return *this;
       }
       
      @@ -137,15 +118,15 @@ inline Hep3Vector & Hep3Vector::operator = (const Hep3Vector & p) {
       
       // r, theta, phi
       
      -inline double Hep3Vector::mag2() const { return dx*dx + dy*dy + dz*dz; }
      +inline double Hep3Vector::mag2() const { return x()*x() + y()*y() + z()*z(); }
       inline double Hep3Vector::mag()  const { return std::sqrt(mag2()); }
       inline double Hep3Vector::r()    const { return mag(); }
       
       inline double Hep3Vector::theta() 	const {
      -  return dx == 0.0 && dy == 0.0 && dz == 0.0 ? 0.0 : std::atan2(perp(),dz);
      +  return x() == 0.0 && y() == 0.0 && z() == 0.0 ? 0.0 : std::atan2(perp(),z());
       }
       inline double Hep3Vector::phi() const {
      -  return dx == 0.0 && dy == 0.0 ? 0.0 : std::atan2(dy,dx);
      +  return x() == 0.0 && y() == 0.0 ? 0.0 : std::atan2(y(),x());
       }
       
       inline double Hep3Vector::getR()     const { return mag();   }
      @@ -155,12 +136,12 @@ inline double Hep3Vector::angle()    const { return theta(); }
       
       inline double Hep3Vector::cosTheta() const {
         double ptot = mag();
      -  return ptot == 0.0 ? 1.0 : dz/ptot;
      +  return ptot == 0.0 ? 1.0 : z()/ptot;
       }
       
       inline double Hep3Vector::cos2Theta() const {
         double ptot2 = mag2();
      -  return ptot2 == 0.0 ? 1.0 : dz*dz/ptot2;
      +  return ptot2 == 0.0 ? 1.0 : z()*z()/ptot2;
       }
       
       inline void Hep3Vector::setR(double r1) { setMag(r1); }
      @@ -181,7 +162,7 @@ inline void Hep3Vector::setPhi(double ph) {
       
       // perp, eta, 
       
      -inline double Hep3Vector::perp2()  const { return dx*dx + dy*dy; }
      +inline double Hep3Vector::perp2()  const { return x()*x() + y()*y(); }
       inline double Hep3Vector::perp()   const { return std::sqrt(perp2()); }
       inline double Hep3Vector::rho()    const { return perp();  }
       inline double Hep3Vector::eta()    const { return pseudoRapidity();}
      @@ -192,8 +173,8 @@ inline double Hep3Vector::getEta() const { return pseudoRapidity();}
       inline void Hep3Vector::setPerp(double r1) {
         double p = perp();
         if (p != 0.0) {
      -    dx *= r1/p;
      -    dy *= r1/p;
      +    (*this)[X] *= r1/p;
      +    (*this)[Y] *= r1/p;
         }
       }
       inline void Hep3Vector::setRho(double rho1) { setPerp (rho1); }
      @@ -219,27 +200,27 @@ inline double Hep3Vector::getTolerance () {
       // ----------
       
       inline Hep3Vector& Hep3Vector::operator += (const Hep3Vector & p) {
      -  dx += p.x();
      -  dy += p.y();
      -  dz += p.z();
      +  (*this)[X] += p.x();
      +  (*this)[Y] += p.y();
      +  (*this)[Z] += p.z();
         return *this;
       }
       
       inline Hep3Vector& Hep3Vector::operator -= (const Hep3Vector & p) {
      -  dx -= p.x();
      -  dy -= p.y();
      -  dz -= p.z();
      +  (*this)[X] -= p.x();
      +  (*this)[Y] -= p.y();
      +  (*this)[Z] -= p.z();
         return *this;
       }
       
       inline Hep3Vector Hep3Vector::operator - () const {
      -  return Hep3Vector(-dx, -dy, -dz);
      +  return Hep3Vector(-x(), -y(), -z());
       }
       
       inline Hep3Vector& Hep3Vector::operator *= (double a) {
      -  dx *= a;
      -  dy *= a;
      -  dz *= a;
      +  (*this)[X] *= a;
      +  (*this)[Y] *= a;
      +  (*this)[Z] *= a;
         return *this;
       }
       
      @@ -252,11 +233,11 @@ inline double Hep3Vector::diff2(const Hep3Vector & p) const {
       }
       
       inline double Hep3Vector::dot(const Hep3Vector & p) const {
      -  return dx*p.x() + dy*p.y() + dz*p.z();
      +  return x()*p.x() + y()*p.y() + z()*p.z();
       }
       
       inline Hep3Vector Hep3Vector::cross(const Hep3Vector & p) const {
      -  return Hep3Vector(dy*p.z()-p.y()*dz, dz*p.x()-p.z()*dx, dx*p.y()-p.x()*dy);
      +  return Hep3Vector(y()*p.z()-p.y()*z(), z()*p.x()-p.z()*x(), x()*p.y()-p.x()*y());
       }
       
       inline double Hep3Vector::perp2(const Hep3Vector & p)  const {
      @@ -270,10 +251,10 @@ inline double Hep3Vector::perp(const Hep3Vector & p) const {
       }
       
       inline Hep3Vector Hep3Vector::perpPart () const {
      -  return Hep3Vector (dx, dy, 0);
      +  return Hep3Vector (x(), y(), 0);
       }
       inline Hep3Vector Hep3Vector::project () const {
      -  return Hep3Vector (0, 0, dz);
      +  return Hep3Vector (0, 0, z());
       }
       
       inline Hep3Vector Hep3Vector::perpPart (const Hep3Vector & v2) const {
      @@ -303,13 +284,13 @@ inline Hep3Vector Hep3Vector::unit() const {
       }
       
       inline Hep3Vector Hep3Vector::orthogonal() const {
      -  double xx = dx < 0.0 ? -dx : dx;
      -  double yy = dy < 0.0 ? -dy : dy;
      -  double zz = dz < 0.0 ? -dz : dz;
      +  double xx = x() < 0.0 ? -x() : x();
      +  double yy = y() < 0.0 ? -y() : y();
      +  double zz = z() < 0.0 ? -z() : z();
         if (xx < yy) {
      -    return xx < zz ? Hep3Vector(0,dz,-dy) : Hep3Vector(dy,-dx,0);
      +    return xx < zz ? Hep3Vector(0,z(),-y()) : Hep3Vector(y(),-x(),0);
         }else{
      -    return yy < zz ? Hep3Vector(-dz,0,dx) : Hep3Vector(dy,-dx,0);
      +    return yy < zz ? Hep3Vector(-z(),0,x()) : Hep3Vector(y(),-x(),0);
         }
       }
       
      diff --git a/source/externals/clhep/include/CLHEP/Vector/TwoVector.h b/source/externals/clhep/include/CLHEP/Vector/TwoVector.h
      index 40e2d0aa53..09c98e3fcc 100644
      --- a/source/externals/clhep/include/CLHEP/Vector/TwoVector.h
      +++ b/source/externals/clhep/include/CLHEP/Vector/TwoVector.h
      @@ -20,10 +20,6 @@
       #ifndef HEP_TWOVECTOR_H
       #define HEP_TWOVECTOR_H
       
      -#ifdef GNUPRAGMA
      -#pragma interface
      -#endif
      -
       #include 
       
       #include "CLHEP/Vector/ThreeVector.h" 
      diff --git a/source/externals/clhep/src/AxisAngle.cc b/source/externals/clhep/src/AxisAngle.cc
      index 56da77b9f8..99bbf4d91a 100644
      --- a/source/externals/clhep/src/AxisAngle.cc
      +++ b/source/externals/clhep/src/AxisAngle.cc
      @@ -12,6 +12,10 @@
       // ----------------------------------------------------------------------
       
       #include "CLHEP/Vector/AxisAngle.h"
      +#include "CLHEP/Vector/ThreeVector.h"
      +
      +#include 
      +#include 
       
       namespace CLHEP  {
       
      diff --git a/source/externals/clhep/src/Boost.cc b/source/externals/clhep/src/Boost.cc
      index 61b9ab1b4f..a22fee4ece 100644
      --- a/source/externals/clhep/src/Boost.cc
      +++ b/source/externals/clhep/src/Boost.cc
      @@ -6,14 +6,13 @@
       // This is the implementation of the HepBoost class.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/Boost.h"
       #include "CLHEP/Vector/Rotation.h"
       #include "CLHEP/Vector/LorentzRotation.h"
       
      +#include 
      +#include 
      +
       namespace CLHEP  {
       
       // ----------  Constructors and Assignment:
      diff --git a/source/externals/clhep/src/BoostX.cc b/source/externals/clhep/src/BoostX.cc
      index 2aa0e59112..683216ce3e 100644
      --- a/source/externals/clhep/src/BoostX.cc
      +++ b/source/externals/clhep/src/BoostX.cc
      @@ -6,15 +6,14 @@
       // This is the implementation of the HepBoostX class.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/BoostX.h"
       #include "CLHEP/Vector/Boost.h"
       #include "CLHEP/Vector/Rotation.h"
       #include "CLHEP/Vector/LorentzRotation.h"
       
      +#include 
      +#include 
      +
       namespace CLHEP  {
       
       
      diff --git a/source/externals/clhep/src/BoostY.cc b/source/externals/clhep/src/BoostY.cc
      index 7f4a5e1356..61e4529a9e 100644
      --- a/source/externals/clhep/src/BoostY.cc
      +++ b/source/externals/clhep/src/BoostY.cc
      @@ -6,15 +6,14 @@
       // This is the implementation of the HepBoostY class.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/BoostY.h"
       #include "CLHEP/Vector/Boost.h"
       #include "CLHEP/Vector/Rotation.h"
       #include "CLHEP/Vector/LorentzRotation.h"
       
      +#include 
      +#include 
      +
       namespace CLHEP  {
       
       // ----------  Constructors and Assignment:
      diff --git a/source/externals/clhep/src/BoostZ.cc b/source/externals/clhep/src/BoostZ.cc
      index 334d298db4..5dd8fca05e 100644
      --- a/source/externals/clhep/src/BoostZ.cc
      +++ b/source/externals/clhep/src/BoostZ.cc
      @@ -6,15 +6,14 @@
       // This is the implementation of the HepBoostZ class.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/BoostZ.h"
       #include "CLHEP/Vector/Boost.h"
       #include "CLHEP/Vector/Rotation.h"
       #include "CLHEP/Vector/LorentzRotation.h"
       
      +#include 
      +#include 
      +
       namespace CLHEP  {
       
       // ----------  Constructors and Assignment:
      diff --git a/source/externals/clhep/src/DoubConv.cc b/source/externals/clhep/src/DoubConv.cc
      index 76bf94f22a..e461ccebed 100644
      --- a/source/externals/clhep/src/DoubConv.cc
      +++ b/source/externals/clhep/src/DoubConv.cc
      @@ -9,6 +9,7 @@
       
       #include 
       #include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/DualRand.cc b/source/externals/clhep/src/DualRand.cc
      index 8067a5f75d..ada9f45e1f 100644
      --- a/source/externals/clhep/src/DualRand.cc
      +++ b/source/externals/clhep/src/DualRand.cc
      @@ -54,7 +54,11 @@
       #include "CLHEP/Random/engineIDulong.h"
       #include "CLHEP/Utility/atomic_int.h"
       
      +#include 
      +#include 
       #include 	// for strcmp
      +#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/EngineFactory.cc b/source/externals/clhep/src/EngineFactory.cc
      index 84d83afd8c..909f3d7db3 100644
      --- a/source/externals/clhep/src/EngineFactory.cc
      +++ b/source/externals/clhep/src/EngineFactory.cc
      @@ -23,6 +23,7 @@
       #include "CLHEP/Random/engineIDulong.h"
       #include 
       #include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/EulerAngles.cc b/source/externals/clhep/src/EulerAngles.cc
      index 41db92b719..a454431087 100644
      --- a/source/externals/clhep/src/EulerAngles.cc
      +++ b/source/externals/clhep/src/EulerAngles.cc
      @@ -25,6 +25,7 @@
       
       #include "CLHEP/Vector/ThreeVector.h"
       
      +#include 
       #include 
       
       namespace CLHEP  {
      diff --git a/source/externals/clhep/src/JamesRandom.cc b/source/externals/clhep/src/JamesRandom.cc
      index b965b6f3aa..6cacec5c6c 100644
      --- a/source/externals/clhep/src/JamesRandom.cc
      +++ b/source/externals/clhep/src/JamesRandom.cc
      @@ -41,9 +41,13 @@
       #include "CLHEP/Random/DoubConv.h"
       #include "CLHEP/Utility/atomic_int.h"
       
      -#include 	// for strcmp
      +#include 
       #include 
       #include 
      +#include 
      +#include 	// for strcmp
      +#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/LorentzRotation.cc b/source/externals/clhep/src/LorentzRotation.cc
      index 139b9c6f7b..2584c8b97a 100644
      --- a/source/externals/clhep/src/LorentzRotation.cc
      +++ b/source/externals/clhep/src/LorentzRotation.cc
      @@ -8,14 +8,11 @@
       // Some ZOOM methods involving construction from columns and decomposition 
       // into boost*rotation are split off into LorentzRotationC and LorentzRotationD
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/LorentzRotation.h"
       
      -#include 
      +#include 
       #include 
      +#include 
       
       namespace CLHEP  {
       
      @@ -85,7 +82,7 @@ double HepLorentzRotation::operator () (int i, int j) const {
           if (j == 2) { return tz(); } 
           if (j == 3) { return tt(); } 
         } 
      -  std::cerr << "HepLorentzRotation subscripting: bad indeces "
      +  std::cerr << "HepLorentzRotation subscripting: bad indices "
       	    << "(" << i << "," << j << ")\n";
         return 0.0;
       } 
      diff --git a/source/externals/clhep/src/LorentzRotationC.cc b/source/externals/clhep/src/LorentzRotationC.cc
      index 4497592161..a7a0db5aa4 100644
      --- a/source/externals/clhep/src/LorentzRotationC.cc
      +++ b/source/externals/clhep/src/LorentzRotationC.cc
      @@ -7,14 +7,11 @@
       // which is concerned with setting or constructing the transformation based 
       // on 4 supplied columns or rows.
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/LorentzRotation.h"
       #include "CLHEP/Vector/LorentzVector.h"
       
       #include 
      +#include 
       
       namespace CLHEP  {
       
      diff --git a/source/externals/clhep/src/LorentzRotationD.cc b/source/externals/clhep/src/LorentzRotationD.cc
      index 552382dcca..9750c7f5d6 100644
      --- a/source/externals/clhep/src/LorentzRotationD.cc
      +++ b/source/externals/clhep/src/LorentzRotationD.cc
      @@ -6,12 +6,11 @@
       // This is the implementation of those parts of the HepLorentzRotation class
       // which involve decomposition into Boost*Rotation.
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/LorentzRotation.h"
       
      +#include 
      +#include 
      +
       namespace CLHEP  {
       
       // ----------  Decomposition:
      diff --git a/source/externals/clhep/src/LorentzVector.cc b/source/externals/clhep/src/LorentzVector.cc
      index 9fe256d9ef..f8efbd4eba 100644
      --- a/source/externals/clhep/src/LorentzVector.cc
      +++ b/source/externals/clhep/src/LorentzVector.cc
      @@ -8,12 +8,9 @@
       // Rotation.cc or LorentzRotation.cc
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/LorentzVector.h"
       
      +#include 
       #include 
       
       namespace CLHEP  {
      diff --git a/source/externals/clhep/src/LorentzVectorB.cc b/source/externals/clhep/src/LorentzVectorB.cc
      index 62df5dbc31..3f5eb419e6 100644
      --- a/source/externals/clhep/src/LorentzVectorB.cc
      +++ b/source/externals/clhep/src/LorentzVectorB.cc
      @@ -9,12 +9,11 @@
       // HepLorentzRotation class.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/LorentzVector.h"
       
      +#include 
      +#include 
      +
       namespace CLHEP  {
       
       //-*********
      diff --git a/source/externals/clhep/src/LorentzVectorC.cc b/source/externals/clhep/src/LorentzVectorC.cc
      index 2db8914c92..e95f3ed185 100644
      --- a/source/externals/clhep/src/LorentzVectorC.cc
      +++ b/source/externals/clhep/src/LorentzVectorC.cc
      @@ -11,13 +11,10 @@
       // pp.phi() - w.getV().phi() with pp.deltaRPhi(w.getV()) which behaves 
       // correctly across the 2pi boundary.
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/LorentzVector.h"
       
       #include 
      +#include 
       
       namespace CLHEP  {
       
      diff --git a/source/externals/clhep/src/LorentzVectorK.cc b/source/externals/clhep/src/LorentzVectorK.cc
      index b73935d701..c5aef73e64 100644
      --- a/source/externals/clhep/src/LorentzVectorK.cc
      +++ b/source/externals/clhep/src/LorentzVectorK.cc
      @@ -8,13 +8,10 @@
       // kinematic properties.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/LorentzVector.h"
       
       #include 
      +#include 
       
       namespace CLHEP  {
       
      diff --git a/source/externals/clhep/src/LorentzVectorL.cc b/source/externals/clhep/src/LorentzVectorL.cc
      index 1a414cd155..f28858ac2e 100644
      --- a/source/externals/clhep/src/LorentzVectorL.cc
      +++ b/source/externals/clhep/src/LorentzVectorL.cc
      @@ -8,10 +8,6 @@
       // of the LorentzRotation.cc code module.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/LorentzVector.h"
       #include "CLHEP/Vector/LorentzRotation.h"
       
      diff --git a/source/externals/clhep/src/LorentzVectorR.cc b/source/externals/clhep/src/LorentzVectorR.cc
      index 4e4149e95b..bcb5ec66a2 100644
      --- a/source/externals/clhep/src/LorentzVectorR.cc
      +++ b/source/externals/clhep/src/LorentzVectorR.cc
      @@ -8,10 +8,6 @@
       // of the Rotation.cc code module.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/LorentzVector.h"
       
       namespace CLHEP  {
      diff --git a/source/externals/clhep/src/MTwistEngine.cc b/source/externals/clhep/src/MTwistEngine.cc
      index c9ff2f732e..5ba5a0688f 100644
      --- a/source/externals/clhep/src/MTwistEngine.cc
      +++ b/source/externals/clhep/src/MTwistEngine.cc
      @@ -24,7 +24,7 @@
       //                - Modified use of the various exponents of 2
       //                  to avoid per-instance space overhead and
       //                  correct the rounding procedure              16 Sep 1998
      -// J. Marfaffino  - Remove dependence on hepString class        13 May 1999
      +// J. Marraffino  - Remove dependence on hepString class        13 May 1999
       // M. Fischler    - In restore, checkFile for file not found    03 Dec 2004
       // M. Fischler    - Methods for distrib. instacne save/restore  12/8/04    
       // M. Fischler    - split get() into tag validation and 
      @@ -43,8 +43,11 @@
       #include "CLHEP/Random/engineIDulong.h"
       #include "CLHEP/Utility/atomic_int.h"
       
      -#include 	// for strcmp
      -#include 	// for std::abs(int)
      +#include 
      +#include 
      +#include 
      +#include         // for strcmp
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/MixMaxRng.cc b/source/externals/clhep/src/MixMaxRng.cc
      index 5ee3faea29..fe81f2b11c 100644
      --- a/source/externals/clhep/src/MixMaxRng.cc
      +++ b/source/externals/clhep/src/MixMaxRng.cc
      @@ -35,8 +35,11 @@
       #include "CLHEP/Random/engineIDulong.h"
       #include "CLHEP/Utility/atomic_int.h"
       
      -#include         // for strcmp
      +#include 
       #include 
      +#include 
      +#include         // for strcmp
      +#include 
       
       const unsigned long MASK32=0xffffffff;
       
      @@ -221,24 +224,24 @@ void MixMaxRng::setSeed(long longSeed, int /* extraSeed */)
       
       void MixMaxRng::setSeeds(const long* Seeds, int seedNum)
       {
      -   unsigned long seed0, seed1= 0, seed2= 0, seed3= 0;
      +   myID_t seed0, seed1= 0, seed2= 0, seed3= 0;
       
          if( seedNum < 1 ) {  // Assuming at least 2 seeds in vector...
      -       seed0= static_cast(Seeds[0]) & MASK32;
      -       seed1= static_cast(Seeds[1]) & MASK32;
      +       seed0= static_cast(Seeds[0]) & MASK32;
      +       seed1= static_cast(Seeds[1]) & MASK32;
          } 
          else
          {
            if( seedNum < 4 ) {
      -       seed0= static_cast(Seeds[0]) & MASK32;
      -       if( seedNum > 1){ seed1= static_cast(Seeds[1]) & MASK32; }
      -       if( seedNum > 2){ seed2= static_cast(Seeds[2]) & MASK32; }
      +       seed0= static_cast(Seeds[0]) & MASK32;
      +       if( seedNum > 1){ seed1= static_cast(Seeds[1]) & MASK32; }
      +       if( seedNum > 2){ seed2= static_cast(Seeds[2]) & MASK32; }
            }
            if( seedNum >= 4 ) {
      -       seed0= static_cast(Seeds[0]) & MASK32;
      -       seed1= static_cast(Seeds[1]) & MASK32;
      -       seed2= static_cast(Seeds[2]) & MASK32;
      -       seed3= static_cast(Seeds[3]) & MASK32;
      +       seed0= static_cast(Seeds[0]) & MASK32;
      +       seed1= static_cast(Seeds[1]) & MASK32;
      +       seed2= static_cast(Seeds[2]) & MASK32;
      +       seed3= static_cast(Seeds[3]) & MASK32;
            }
          }
          theSeed = Seeds[0];
      diff --git a/source/externals/clhep/src/NonRandomEngine.cc b/source/externals/clhep/src/NonRandomEngine.cc
      index dd89f38617..aec100bbfc 100644
      --- a/source/externals/clhep/src/NonRandomEngine.cc
      +++ b/source/externals/clhep/src/NonRandomEngine.cc
      @@ -20,10 +20,11 @@
       #include "CLHEP/Random/NonRandomEngine.h"
       #include "CLHEP/Random/engineIDulong.h"
       #include "CLHEP/Random/DoubConv.h"
      +#include 
       #include 
       #include 
       #include 
      -#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RandBinomial.cc b/source/externals/clhep/src/RandBinomial.cc
      index 66b6df4244..cda224ea59 100644
      --- a/source/externals/clhep/src/RandBinomial.cc
      +++ b/source/externals/clhep/src/RandBinomial.cc
      @@ -20,6 +20,8 @@
       #include "CLHEP/Utility/thread_local.h"
       #include 	// for min() and max()
       #include 	// for exp()
      +#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RandBit.cc b/source/externals/clhep/src/RandBit.cc
      index 0ec748ec97..9dda260e41 100644
      --- a/source/externals/clhep/src/RandBit.cc
      +++ b/source/externals/clhep/src/RandBit.cc
      @@ -14,6 +14,7 @@
       // =======================================================================
       
       #include "CLHEP/Random/RandBit.h"
      +#include 
       #include 
       
       namespace CLHEP {
      diff --git a/source/externals/clhep/src/RandBreitWigner.cc b/source/externals/clhep/src/RandBreitWigner.cc
      index 965ef0e517..22149a0ffb 100644
      --- a/source/externals/clhep/src/RandBreitWigner.cc
      +++ b/source/externals/clhep/src/RandBreitWigner.cc
      @@ -23,6 +23,9 @@
       #include "CLHEP/Random/DoubConv.h"
       #include 	// for min() and max()
       #include 
      +#include 
      +#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RandChiSquare.cc b/source/externals/clhep/src/RandChiSquare.cc
      index bf5b88be57..11d3523a82 100644
      --- a/source/externals/clhep/src/RandChiSquare.cc
      +++ b/source/externals/clhep/src/RandChiSquare.cc
      @@ -18,6 +18,9 @@
       #include "CLHEP/Random/DoubConv.h"
       #include "CLHEP/Utility/thread_local.h"
       #include 	// for std::log()
      +#include 
      +#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RandExpZiggurat.cc b/source/externals/clhep/src/RandExpZiggurat.cc
      index 5dcd3004cb..f253b174a9 100644
      --- a/source/externals/clhep/src/RandExpZiggurat.cc
      +++ b/source/externals/clhep/src/RandExpZiggurat.cc
      @@ -2,8 +2,9 @@
       
       #include "CLHEP/Random/RandExpZiggurat.h"
       
      -#include 
       #include 	// for std::log()
      +#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RandExponential.cc b/source/externals/clhep/src/RandExponential.cc
      index b322430ac8..347449bb52 100644
      --- a/source/externals/clhep/src/RandExponential.cc
      +++ b/source/externals/clhep/src/RandExponential.cc
      @@ -20,6 +20,10 @@
       
       #include "CLHEP/Random/RandExponential.h"
       #include "CLHEP/Random/DoubConv.h"
      +#include 
      +#include 
      +#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RandFlat.cc b/source/externals/clhep/src/RandFlat.cc
      index 47bb3f3cfd..a6209081db 100644
      --- a/source/externals/clhep/src/RandFlat.cc
      +++ b/source/externals/clhep/src/RandFlat.cc
      @@ -28,7 +28,10 @@
       
       #include "CLHEP/Random/RandFlat.h"
       #include "CLHEP/Random/DoubConv.h"
      +#include 
      +#include 
       #include 	// for strcmp
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RandGamma.cc b/source/externals/clhep/src/RandGamma.cc
      index 8723e50039..07f5a365d5 100644
      --- a/source/externals/clhep/src/RandGamma.cc
      +++ b/source/externals/clhep/src/RandGamma.cc
      @@ -18,6 +18,9 @@
       #include "CLHEP/Random/DoubConv.h"
       #include "CLHEP/Utility/thread_local.h"
       #include 	// for std::log()
      +#include 
      +#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RandGauss.cc b/source/externals/clhep/src/RandGauss.cc
      index 4738d00f5d..abb2c08d5b 100644
      --- a/source/externals/clhep/src/RandGauss.cc
      +++ b/source/externals/clhep/src/RandGauss.cc
      @@ -33,8 +33,11 @@
       
       #include "CLHEP/Random/RandGauss.h"
       #include "CLHEP/Random/DoubConv.h"
      -#include 	// for strcmp
       #include 	// for std::log()
      +#include 
      +#include 	// for strcmp
      +#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RandGeneral.cc b/source/externals/clhep/src/RandGeneral.cc
      index d0561005f3..18036e3971 100644
      --- a/source/externals/clhep/src/RandGeneral.cc
      +++ b/source/externals/clhep/src/RandGeneral.cc
      @@ -49,6 +49,9 @@
       #include "CLHEP/Random/RandGeneral.h"
       #include "CLHEP/Random/DoubConv.h"
       #include 
      +#include 
      +#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RandPoisson.cc b/source/externals/clhep/src/RandPoisson.cc
      index dbf66667a0..c4ed0bd78f 100644
      --- a/source/externals/clhep/src/RandPoisson.cc
      +++ b/source/externals/clhep/src/RandPoisson.cc
      @@ -28,6 +28,9 @@
       #include "CLHEP/Units/PhysicalConstants.h"
       #include "CLHEP/Random/DoubConv.h"
       #include 	// for std::floor()
      +#include 
      +#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RandPoissonQ.cc b/source/externals/clhep/src/RandPoissonQ.cc
      index 9d6abbe1e8..3247ac9a7c 100644
      --- a/source/externals/clhep/src/RandPoissonQ.cc
      +++ b/source/externals/clhep/src/RandPoissonQ.cc
      @@ -21,7 +21,7 @@
       //		    can never be properly captured without also saveing the
       //		    state of RandGauss!  RandGaussQ is, on the other hand,
       //		    stateless except for the engine used.
      -// M Fisculer	  - Modified use of wrong engine when shoot (anEngine, mean)
      +// M Fischler	  - Modified use of wrong engine when shoot (anEngine, mean)
       //		    is called.  This flaw was preventing any hope of proper
       //		    saving and restoring in the instance cases.
       // M Fischler     - fireArray using defaultMean 2/10/05
      @@ -42,6 +42,9 @@
       #include "CLHEP/Random/Stat.h"
       #include "CLHEP/Utility/thread_local.h"
       #include 	// for std::pow()
      +#include 
      +#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RandStudentT.cc b/source/externals/clhep/src/RandStudentT.cc
      index 6112ce9188..b15e39287c 100644
      --- a/source/externals/clhep/src/RandStudentT.cc
      +++ b/source/externals/clhep/src/RandStudentT.cc
      @@ -17,10 +17,14 @@
       // =======================================================================
       
       #include 
      -#include 	// for std::log() std::exp()
       #include "CLHEP/Random/RandStudentT.h"
       #include "CLHEP/Random/DoubConv.h"
       
      +#include 	// for std::log() std::exp()
      +#include 
      +#include 
      +#include 
      +
       namespace CLHEP {
       
       std::string RandStudentT::name() const {return "RandStudentT";}
      diff --git a/source/externals/clhep/src/Random.cc b/source/externals/clhep/src/Random.cc
      index 664148151d..3c510576af 100644
      --- a/source/externals/clhep/src/Random.cc
      +++ b/source/externals/clhep/src/Random.cc
      @@ -17,7 +17,6 @@
       //                  initialisation of static generator: 5th Jan 1999
       // =======================================================================
       
      -#include 
       #include "CLHEP/Random/MixMaxRng.h"
       #include "CLHEP/Random/Random.h"
       #include "CLHEP/Random/StaticRandomStates.h"
      @@ -31,6 +30,11 @@
       
       #include "CLHEP/Random/SeedTable.h"
       
      +#include 
      +#include 
      +#include 
      +#include 
      +
       namespace CLHEP {
       
         namespace {
      diff --git a/source/externals/clhep/src/RandomEngine.cc b/source/externals/clhep/src/RandomEngine.cc
      index 4b1e47c5a5..dfefb7f4eb 100644
      --- a/source/externals/clhep/src/RandomEngine.cc
      +++ b/source/externals/clhep/src/RandomEngine.cc
      @@ -17,6 +17,9 @@
       #include "CLHEP/Random/RandomEngine.h"
       #include "CLHEP/Random/EngineFactory.h"
       
      +#include 
      +#include 
      +
       //------------------------- HepRandomEngine ------------------------------
       
       namespace CLHEP {
      diff --git a/source/externals/clhep/src/RanecuEngine.cc b/source/externals/clhep/src/RanecuEngine.cc
      index 5627f26883..20041173f8 100644
      --- a/source/externals/clhep/src/RanecuEngine.cc
      +++ b/source/externals/clhep/src/RanecuEngine.cc
      @@ -41,9 +41,13 @@
       #include "CLHEP/Random/engineIDulong.h"
       #include "CLHEP/Utility/atomic_int.h"
       
      -#include 	// for strcmp
      -#include 
      +#include 
       #include 
      +#include 
      +#include 
      +#include 
      +#include 	// for strcmp
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/Ranlux64Engine.cc b/source/externals/clhep/src/Ranlux64Engine.cc
      index c0daae0db1..f2017fefef 100644
      --- a/source/externals/clhep/src/Ranlux64Engine.cc
      +++ b/source/externals/clhep/src/Ranlux64Engine.cc
      @@ -58,9 +58,12 @@
       #include "CLHEP/Random/DoubConv.h"
       #include "CLHEP/Utility/atomic_int.h"
       
      -#include 	// for strcmp
      +#include 
       #include 	// for std::abs(int)
      +#include 
       #include        // for numeric_limits
      +#include 	// for strcmp
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RanluxEngine.cc b/source/externals/clhep/src/RanluxEngine.cc
      index 88f95cdad4..0df9e15017 100644
      --- a/source/externals/clhep/src/RanluxEngine.cc
      +++ b/source/externals/clhep/src/RanluxEngine.cc
      @@ -41,8 +41,12 @@
       #include "CLHEP/Random/engineIDulong.h"
       #include "CLHEP/Utility/atomic_int.h"
       
      -#include 	// for strcmp
      +#include 
       #include 	// for std::abs(int)
      +#include 
      +#include 	// for strcmp
      +#include 
      +#include 
       
       namespace CLHEP {
       
      diff --git a/source/externals/clhep/src/RanshiEngine.cc b/source/externals/clhep/src/RanshiEngine.cc
      index 4a4185a045..f1d5f46cfe 100644
      --- a/source/externals/clhep/src/RanshiEngine.cc
      +++ b/source/externals/clhep/src/RanshiEngine.cc
      @@ -37,8 +37,11 @@
       #include "CLHEP/Random/engineIDulong.h"
       #include "CLHEP/Utility/atomic_int.h"
       
      +#include 
       #include 	// for strcmp
       #include 
      +#include 
      +#include 
       
       // don't generate warnings about agressive loop optimization
       #if defined __GNUC__ 
      diff --git a/source/externals/clhep/src/Rotation.cc b/source/externals/clhep/src/Rotation.cc
      index 3cb84979dd..ed1ffea788 100644
      --- a/source/externals/clhep/src/Rotation.cc
      +++ b/source/externals/clhep/src/Rotation.cc
      @@ -7,10 +7,6 @@
       // were present in the original CLHEP before the merge with ZOOM PhysicsVectors.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/Rotation.h"
       #include "CLHEP/Units/PhysicalConstants.h"
       
      diff --git a/source/externals/clhep/src/RotationA.cc b/source/externals/clhep/src/RotationA.cc
      index 1d4b631f20..fd8e9e35f3 100644
      --- a/source/externals/clhep/src/RotationA.cc
      +++ b/source/externals/clhep/src/RotationA.cc
      @@ -8,10 +8,6 @@
       // the angle/axis representation of a Rotation.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/Rotation.h"
       #include "CLHEP/Units/PhysicalConstants.h"
       
      diff --git a/source/externals/clhep/src/RotationC.cc b/source/externals/clhep/src/RotationC.cc
      index 0ed2483f71..aab86cf0a5 100644
      --- a/source/externals/clhep/src/RotationC.cc
      +++ b/source/externals/clhep/src/RotationC.cc
      @@ -9,13 +9,10 @@
       // rectifying a rotation matrix which may have drifted due to roundoff.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/Rotation.h"
       
       #include 
      +#include 
       
       namespace CLHEP  {
       
      diff --git a/source/externals/clhep/src/RotationE.cc b/source/externals/clhep/src/RotationE.cc
      index ccc79db859..98fe972cd2 100644
      --- a/source/externals/clhep/src/RotationE.cc
      +++ b/source/externals/clhep/src/RotationE.cc
      @@ -11,15 +11,12 @@
       //                   answers in the case where theta is near 0 of pi, and
       //                   the matrix is not a perfect rotation (due to roundoff).
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/Rotation.h"
       #include "CLHEP/Vector/EulerAngles.h"
       #include "CLHEP/Units/PhysicalConstants.h"
       
       #include 
      +#include 
       
       namespace CLHEP  {
       
      diff --git a/source/externals/clhep/src/RotationIO.cc b/source/externals/clhep/src/RotationIO.cc
      index 24528fca2d..a9723f2995 100644
      --- a/source/externals/clhep/src/RotationIO.cc
      +++ b/source/externals/clhep/src/RotationIO.cc
      @@ -7,10 +7,6 @@
       // which was introduced when ZOOM PhysicsVectors was merged in.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/Rotation.h"
       
       #include 
      diff --git a/source/externals/clhep/src/RotationInterfaces.cc b/source/externals/clhep/src/RotationInterfaces.cc
      index e87dfb0ff5..153fa51855 100644
      --- a/source/externals/clhep/src/RotationInterfaces.cc
      +++ b/source/externals/clhep/src/RotationInterfaces.cc
      @@ -7,10 +7,6 @@
       // and Hep3RotationInterface classes which are neither inline nor pure virtual.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/RotationInterfaces.h"
       
       namespace CLHEP  {
      diff --git a/source/externals/clhep/src/RotationL.cc b/source/externals/clhep/src/RotationL.cc
      index 846e69af5f..5f1f15bbb6 100644
      --- a/source/externals/clhep/src/RotationL.cc
      +++ b/source/externals/clhep/src/RotationL.cc
      @@ -8,10 +8,6 @@
       // pulling in of LorentzTransformation related code units.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/Rotation.h"
       #include "CLHEP/Vector/LorentzRotation.h"
       
      diff --git a/source/externals/clhep/src/RotationP.cc b/source/externals/clhep/src/RotationP.cc
      index ec00c9274d..0f17c5e7be 100644
      --- a/source/externals/clhep/src/RotationP.cc
      +++ b/source/externals/clhep/src/RotationP.cc
      @@ -9,10 +9,6 @@
       // the rotation matrix, or I/O.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/Rotation.h"
       
       #include 
      diff --git a/source/externals/clhep/src/RotationX.cc b/source/externals/clhep/src/RotationX.cc
      index d250a75c86..4f8a5fe234 100644
      --- a/source/externals/clhep/src/RotationX.cc
      +++ b/source/externals/clhep/src/RotationX.cc
      @@ -7,10 +7,6 @@
       // were introduced when ZOOM PhysicsVectors was merged in.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/RotationX.h"
       #include "CLHEP/Vector/AxisAngle.h"
       #include "CLHEP/Vector/EulerAngles.h"
      diff --git a/source/externals/clhep/src/RotationY.cc b/source/externals/clhep/src/RotationY.cc
      index 4ca64a9cf6..38dc108c47 100644
      --- a/source/externals/clhep/src/RotationY.cc
      +++ b/source/externals/clhep/src/RotationY.cc
      @@ -7,10 +7,6 @@
       // were introduced when ZOOM PhysicsVectors was merged in.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/RotationY.h"
       #include "CLHEP/Vector/AxisAngle.h"
       #include "CLHEP/Vector/EulerAngles.h"
      diff --git a/source/externals/clhep/src/RotationZ.cc b/source/externals/clhep/src/RotationZ.cc
      index 63820e62ee..2aef33cc82 100644
      --- a/source/externals/clhep/src/RotationZ.cc
      +++ b/source/externals/clhep/src/RotationZ.cc
      @@ -7,10 +7,6 @@
       // were introduced when ZOOM PhysicsVectors was merged in.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/RotationZ.h"
       #include "CLHEP/Vector/AxisAngle.h"
       #include "CLHEP/Vector/EulerAngles.h"
      diff --git a/source/externals/clhep/src/SpaceVector.cc b/source/externals/clhep/src/SpaceVector.cc
      index e9c7f60c28..69e013a252 100644
      --- a/source/externals/clhep/src/SpaceVector.cc
      +++ b/source/externals/clhep/src/SpaceVector.cc
      @@ -14,10 +14,6 @@
       // SpaceVectorP.cc	Intrinsic properties and methods involving second vector
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/ThreeVector.h"
       #include "CLHEP/Units/PhysicalConstants.h"
       
      @@ -46,10 +42,10 @@ void Hep3Vector::setSpherical (
       //      << "Spherical coordinates set with theta not in [0, PI]" << std::endl;
       //	// No special return needed if warning is ignored.
       //  }
      -  dz = r1 * std::cos(theta1);
         double rho1 ( r1*std::sin(theta1));
      -  dy = rho1 * std::sin (phi1);
      -  dx = rho1 * std::cos (phi1);
      +  setZ(r1 * std::cos(theta1));
      +  setY(rho1 * std::sin (phi1));
      +  setX(rho1 * std::cos (phi1));
         return;
       } /* setSpherical (r, theta1, phi1) */
       
      @@ -62,9 +58,9 @@ void Hep3Vector::setCylindrical (
       //      << "Cylindrical coordinates supplied with negative Rho" << std::endl;
       //    // No special return needed if warning is ignored.
       //  }
      -  dz = z1;
      -  dy = rho1 * std::sin (phi1);
      -  dx = rho1 * std::cos (phi1);
      +  setZ(z1);
      +  setY(rho1 * std::sin (phi1));
      +  setX(rho1 * std::cos (phi1));
         return;
       } /* setCylindrical (r, phi, z) */
       
      @@ -76,7 +72,7 @@ void Hep3Vector::setRhoPhiTheta (
           std::cerr << "Hep3Vector::setRhoPhiTheta() - "
             << "Attempt set vector components rho, phi, theta with zero rho -- "
             << "zero vector is returned, ignoring theta and phi" << std::endl;
      -    dx = 0; dy = 0; dz = 0;
      +    set(0.0, 0.0, 0.0);
           return;
         }
       //  if ( (theta1 == 0) || (theta1 == CLHEP::pi) ) {
      @@ -89,9 +85,9 @@ void Hep3Vector::setRhoPhiTheta (
       //      << "Rho, phi, theta set with theta not in [0, PI]" << std::endl;
       //	// No special return needed if warning is ignored.
       //  }
      -  dz = rho1 / std::tan (theta1);
      -  dy = rho1 * std::sin (phi1);
      -  dx = rho1 * std::cos (phi1);
      +  setZ(rho1 / std::tan (theta1));
      +  setY(rho1 * std::sin (phi1));
      +  setX(rho1 * std::cos (phi1));
         return;
       } /* setCyl (rho, phi, theta) */
       
      @@ -103,13 +99,13 @@ void Hep3Vector::setRhoPhiEta (
           std::cerr << "Hep3Vector::setRhoPhiEta() - "
             << "Attempt set vector components rho, phi, eta with zero rho -- "
             << "zero vector is returned, ignoring eta and phi" << std::endl;
      -    dx = 0; dy = 0; dz = 0;
      +    set(0.0, 0.0, 0.0);
           return;
         }
         double theta1 (2 * std::atan ( std::exp (-eta1) ));
      -  dz = rho1 / std::tan (theta1);
      -  dy = rho1 * std::sin (phi1);
      -  dx = rho1 * std::cos (phi1);
      +  setZ(rho1 / std::tan (theta1));
      +  setY(rho1 * std::sin (phi1));
      +  setX(rho1 * std::cos (phi1));
         return;
       } /* setCyl (rho, phi, eta) */
       
      @@ -120,17 +116,17 @@ void Hep3Vector::setRhoPhiEta (
       //************
       
       int Hep3Vector::compare (const Hep3Vector & v) const {
      -  if       ( dz > v.dz ) {
      +  if       ( z() > v.z() ) {
           return 1;
      -  } else if ( dz < v.dz ) {
      +  } else if ( z() < v.z() ) {
           return -1;
      -  } else if ( dy > v.dy ) {
      +  } else if ( y() > v.y() ) {
           return 1;
      -  } else if ( dy < v.dy ) {
      +  } else if ( y() < v.y() ) {
           return -1;
      -  } else if ( dx > v.dx ) {
      +  } else if ( x() > v.x() ) {
           return 1;
      -  } else if ( dx < v.dx ) {
      +  } else if ( x() < v.x() ) {
           return -1;
         } else {
           return 0;
      @@ -205,9 +201,9 @@ bool Hep3Vector::isParallel (const Hep3Vector & v,
         // At this point we know v1v2 can be squared.
       
         Hep3Vector v1Xv2 ( cross(v) );
      -  if (  (std::fabs (v1Xv2.dx) > TOOBIG) ||
      -        (std::fabs (v1Xv2.dy) > TOOBIG) ||
      -        (std::fabs (v1Xv2.dz) > TOOBIG) ) {
      +  if (  (std::fabs (v1Xv2.x()) > TOOBIG) ||
      +        (std::fabs (v1Xv2.y()) > TOOBIG) ||
      +        (std::fabs (v1Xv2.z()) > TOOBIG) ) {
           return false;
         }
                           
      @@ -256,9 +252,9 @@ bool Hep3Vector::isOrthogonal (const Hep3Vector & v,
         // At this point we know v1v2 can be squared.
       
         Hep3Vector eps_v1Xv2 ( cross(epsilon*v) );
      -  if (  (std::fabs (eps_v1Xv2.dx) > TOOBIG) ||
      -        (std::fabs (eps_v1Xv2.dy) > TOOBIG) ||
      -        (std::fabs (eps_v1Xv2.dz) > TOOBIG) ) {
      +  if (  (std::fabs (eps_v1Xv2.x()) > TOOBIG) ||
      +        (std::fabs (eps_v1Xv2.y()) > TOOBIG) ||
      +        (std::fabs (eps_v1Xv2.z()) > TOOBIG) ) {
           return true;
         }
       
      diff --git a/source/externals/clhep/src/SpaceVectorD.cc b/source/externals/clhep/src/SpaceVectorD.cc
      index 3fc199d2f9..90a80b7d41 100644
      --- a/source/externals/clhep/src/SpaceVectorD.cc
      +++ b/source/externals/clhep/src/SpaceVectorD.cc
      @@ -8,10 +8,6 @@
       // the esoteric concepts of polar/azimuthal angular decomposition.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/ThreeVector.h"
       
       #include 
      diff --git a/source/externals/clhep/src/SpaceVectorP.cc b/source/externals/clhep/src/SpaceVectorP.cc
      index 5d85426ba2..313bc00faf 100644
      --- a/source/externals/clhep/src/SpaceVectorP.cc
      +++ b/source/externals/clhep/src/SpaceVectorP.cc
      @@ -10,10 +10,6 @@
       // intrinsic properties or propeties relative to a second vector.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/ThreeVector.h"
       
       #include 
      @@ -52,18 +48,18 @@ double Hep3Vector::gamma() const {
       }
       
       double Hep3Vector::rapidity() const {
      -//  if (std::fabs(dz) == 1) {
      +//  if (std::fabs(z()) == 1) {
       //    std::cerr << "Hep3Vector::rapidity() - "
       //      << "Rapidity in Z direction taken for Hep3Vector with |Z| = 1 -- \n"
       //      << "the log should return infinity" <, std::endl;
       //  }
      -//  if (std::fabs(dz) > 1) {
      +//  if (std::fabs(z()) > 1) {
       //    std::cerr << "Hep3Vector::rapidity() - "
       //      << "Rapidity in Z direction taken for Hep3Vector with |Z| > 1 -- \n"
       //      << "the log would return a NAN" << std::endl;
       //  }
         // Want inverse std::tanh(dz):
      -  return (.5 * std::log((1+dz)/(1-dz)) );
      +  return (.5 * std::log((1+z())/(1-z())) );
       }
       
       double Hep3Vector::coLinearRapidity() const {
      diff --git a/source/externals/clhep/src/SpaceVectorR.cc b/source/externals/clhep/src/SpaceVectorR.cc
      index 75cc79eef5..1c10e00ddf 100644
      --- a/source/externals/clhep/src/SpaceVectorR.cc
      +++ b/source/externals/clhep/src/SpaceVectorR.cc
      @@ -8,14 +8,13 @@
       // the concepts of rotation.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/ThreeVector.h"
       #include "CLHEP/Vector/AxisAngle.h"
       #include "CLHEP/Vector/EulerAngles.h"
       
      +#include 
      +#include 
      +
       namespace CLHEP  {
       
       //-************************
      @@ -42,30 +41,28 @@ Hep3Vector & Hep3Vector::rotate (const Hep3Vector & axis,
         double rz;
       
         { double  ocdux = ocd * ux;
      -    rx = dx * ( cd + ocdux * ux           ) +
      -         dy * (      ocdux * uy - sd * uz ) +
      -         dz * (      ocdux * uz + sd * uy ) ;
      +    rx = x() * ( cd + ocdux * ux           ) +
      +         y() * (      ocdux * uy - sd * uz ) +
      +         z() * (      ocdux * uz + sd * uy ) ;
         }
       
         { double  ocduy = ocd * uy;
      -    ry = dy * ( cd + ocduy * uy           ) +
      -         dz * (      ocduy * uz - sd * ux ) +
      -         dx * (      ocduy * ux + sd * uz ) ;
      +    ry = y() * ( cd + ocduy * uy           ) +
      +         z() * (      ocduy * uz - sd * ux ) +
      +         x() * (      ocduy * ux + sd * uz ) ;
         }
       
         { double  ocduz = ocd * uz;
      -    rz = dz * ( cd + ocduz * uz           ) +
      -         dx * (      ocduz * ux - sd * uy ) +
      -         dy * (      ocduz * uy + sd * ux ) ;
      +    rz = z() * ( cd + ocduz * uz           ) +
      +         x() * (      ocduz * ux - sd * uy ) +
      +         y() * (      ocduz * uy + sd * ux ) ;
         }
       
      -  dx = rx;
      -  dy = ry;
      -  dz = rz;
      -
      +  set(rx, ry, rz);
         return *this;
       } /* rotate */
       
      +
       //-****************************
       // rotate by three euler angles
       //-****************************
      @@ -83,22 +80,19 @@ Hep3Vector & Hep3Vector::rotate (double phi1,
         double sinTheta = std::sin( theta1 ), cosTheta1 = std::cos( theta1 );
         double sinPsi   = std::sin( psi1   ), cosPsi   = std::cos( psi1   );
       
      -  rx = 	(cosPsi * cosPhi   - cosTheta1 * sinPsi * sinPhi)   * dx  +
      -	(cosPsi * sinPhi   + cosTheta1 * sinPsi * cosPhi)   * dy  +
      -  	(sinPsi * sinTheta)				   * dz  ;
      +  rx = 	(cosPsi * cosPhi   - cosTheta1 * sinPsi * sinPhi)   * x()  +
      +	(cosPsi * sinPhi   + cosTheta1 * sinPsi * cosPhi)   * y()  +
      +  	(sinPsi * sinTheta)				   * z()  ;
       
      -  ry = 	(- sinPsi * cosPhi - cosTheta1 * cosPsi * sinPhi)   * dx  +
      -	(- sinPsi * sinPhi + cosTheta1 * cosPsi * cosPhi)   * dy  +
      -  	(cosPsi * sinTheta)				   * dz  ;
      +  ry = 	(- sinPsi * cosPhi - cosTheta1 * cosPsi * sinPhi)   * x()  +
      +	(- sinPsi * sinPhi + cosTheta1 * cosPsi * cosPhi)   * y()  +
      +  	(cosPsi * sinTheta)				   * z()  ;
       
      -  rz = 	(sinTheta * sinPhi)				   * dx  +
      -  	(- sinTheta * cosPhi)				   * dy  +
      -	(cosTheta1)					   * dz  ;
      -
      -  dx = rx;
      -  dy = ry;
      -  dz = rz;
      +  rz = 	(sinTheta * sinPhi)				   * x()  +
      +  	(- sinTheta * cosPhi)				   * y()  +
      +	(cosTheta1)					   * z()  ;
       
      +  set(rx, ry, rz);
         return *this;
       
       } /* rotate */
      diff --git a/source/externals/clhep/src/StaticRandomStates.cc b/source/externals/clhep/src/StaticRandomStates.cc
      index 71181a1910..6744717ba6 100644
      --- a/source/externals/clhep/src/StaticRandomStates.cc
      +++ b/source/externals/clhep/src/StaticRandomStates.cc
      @@ -16,6 +16,7 @@
       #include "CLHEP/Random/StaticRandomStates.h"
       #include "CLHEP/Random/RandGauss.h"
       #include "CLHEP/Random/RandFlat.h"
      +#include 
       #include 
       #include 
       
      diff --git a/source/externals/clhep/src/ThreeVector.cc b/source/externals/clhep/src/ThreeVector.cc
      index c276a250e3..3b6665d57c 100644
      --- a/source/externals/clhep/src/ThreeVector.cc
      +++ b/source/externals/clhep/src/ThreeVector.cc
      @@ -9,10 +9,6 @@
       // would couple in all the HepRotation methods.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/ThreeVector.h"
       #include "CLHEP/Units/PhysicalConstants.h"
       
      @@ -42,15 +38,17 @@ Hep3Vector & Hep3Vector::rotateUz(const Hep3Vector& NewUzVector) {
         double u3 = NewUzVector.z();
         double up = u1*u1 + u2*u2;
       
      -  if (up>0) {
      -      up = std::sqrt(up);
      -      double px = dx,  py = dy,  pz = dz;
      -      dx = (u1*u3*px - u2*py)/up + u1*pz;
      -      dy = (u2*u3*px + u1*py)/up + u2*pz;
      -      dz =    -up*px +             u3*pz;
      -    }
      -  else if (u3 < 0.) { dx = -dx; dz = -dz; }      // phi=0  teta=pi
      -  else {};
      +  if (up > 0) {
      +    up = std::sqrt(up);
      +    double px = (u1 * u3 * x() - u2 * y()) / up + u1 * z();
      +    double py = (u2 * u3 * x() + u1 * y()) / up + u2 * z();
      +    double pz = -up * x() + u3 * z();
      +    set(px, py, pz);
      +  } else if (u3 < 0.) {
      +    setX(-x());
      +    setZ(-z());
      +  } // phi=0  teta=pi
      +
         return *this;
       }
       
      @@ -89,30 +87,30 @@ const Hep3Vector HepZHat(0.0, 0.0, 1.0);
       Hep3Vector & Hep3Vector::rotateX (double phi1) {
         double sinphi = std::sin(phi1);
         double cosphi = std::cos(phi1);
      -  double ty;
      -  ty = dy * cosphi - dz * sinphi;
      -  dz = dz * cosphi + dy * sinphi;
      -  dy = ty;
      +  double ty = y() * cosphi - z() * sinphi;
      +  double tz = z() * cosphi + y() * sinphi;
      +  setY(ty);
      +  setZ(tz);
         return *this;
       } /* rotateX */
       
       Hep3Vector & Hep3Vector::rotateY (double phi1) {
         double sinphi = std::sin(phi1);
         double cosphi = std::cos(phi1);
      -  double tz;
      -  tz = dz * cosphi - dx * sinphi;
      -  dx = dx * cosphi + dz * sinphi;
      -  dz = tz;
      +  double tx = x() * cosphi + z() * sinphi;
      +  double tz = z() * cosphi - x() * sinphi;
      +  setX(tx);
      +  setZ(tz);
         return *this;
       } /* rotateY */
       
       Hep3Vector & Hep3Vector::rotateZ (double phi1) {
         double sinphi = std::sin(phi1);
         double cosphi = std::cos(phi1);
      -  double tx;
      -  tx = dx * cosphi - dy * sinphi;
      -  dy = dy * cosphi + dx * sinphi;
      -  dx = tx;
      +  double tx = x() * cosphi - y() * sinphi;
      +  double ty = y() * cosphi + x() * sinphi;
      +  setX(tx);
      +  setY(ty);
         return *this;
       } /* rotateZ */
       
      @@ -182,8 +180,8 @@ double Hep3Vector::cos2Theta(const Hep3Vector & q) const {
       void Hep3Vector::setEta (double eta1) {
         double phi1 = 0;
         double r1;
      -  if ( (dx == 0) && (dy == 0) ) {
      -    if (dz == 0) {
      +  if ( (x() == 0) && (y() == 0) ) {
      +    if (z() == 0) {
             std::cerr << "Hep3Vector::setEta() - "
                       << "Attempt to set eta of zero vector -- vector is unchanged"
                       << std::endl;
      @@ -192,7 +190,7 @@ void Hep3Vector::setEta (double eta1) {
         std::cerr << "Hep3Vector::setEta() - "
                   << "Attempt to set eta of vector along Z axis -- will use phi = 0"
                   << std::endl;
      -    r1 = std::fabs(dz);
      +    r1 = std::fabs(z());
         } else {
           r1 = getR();
           phi1 = getPhi();
      @@ -200,10 +198,10 @@ void Hep3Vector::setEta (double eta1) {
         double tanHalfTheta = std::exp ( -eta1 );
         double cosTheta1 =
               (1 - tanHalfTheta*tanHalfTheta) / (1 + tanHalfTheta*tanHalfTheta);
      -  dz = r1 * cosTheta1;
         double rho1 = r1*std::sqrt(1 - cosTheta1*cosTheta1);
      -  dy = rho1 * std::sin (phi1);
      -  dx = rho1 * std::cos (phi1);
      +  setZ(r1 * cosTheta1);
      +  setY(rho1 * std::sin (phi1));
      +  setX(rho1 * std::cos (phi1));
         return;
       }
       
      @@ -211,26 +209,26 @@ void Hep3Vector::setCylTheta (double theta1) {
       
         // In cylindrical coords, set theta while keeping rho and phi fixed
       
      -  if ( (dx == 0) && (dy == 0) ) {
      -    if (dz == 0) {
      +  if ( (x() == 0) && (y() == 0) ) {
      +    if (z() == 0) {
             std::cerr << "Hep3Vector::setCylTheta() - "
                       << "Attempt to set cylTheta of zero vector -- vector is unchanged"
                       << std::endl;
             return;
           }
           if (theta1 == 0) {
      -      dz = std::fabs(dz);
      +      setZ(std::fabs(z()));
             return;
           }
           if (theta1 == CLHEP::pi) {
      -      dz = -std::fabs(dz);
      +      setZ(-std::fabs(z()));
             return;
           }
           std::cerr << "Hep3Vector::setCylTheta() - "
             << "Attempt set cylindrical theta of vector along Z axis "
             << "to a non-trivial value, while keeping rho fixed -- "
             << "will return zero vector" << std::endl;
      -    dz = 0;
      +    setZ(0.0);
           return;
         }
         if ( (theta1 < 0) || (theta1 > CLHEP::pi) ) {
      @@ -246,12 +244,12 @@ void Hep3Vector::setCylTheta (double theta1) {
             << "Attempt to set cylindrical theta to 0 or PI "
             << "while keeping rho fixed -- infinite Z will be computed"
             << std::endl;
      -      dz = (theta1==0) ? 1.0E72 : -1.0E72;
      +      setZ((theta1==0) ? 1.0E72 : -1.0E72);
           return;
         }
      -  dz = rho1 / std::tan (theta1);
      -  dy = rho1 * std::sin (phi1);
      -  dx = rho1 * std::cos (phi1);
      +  setZ(rho1 / std::tan (theta1));
      +  setY(rho1 * std::sin (phi1));
      +  setX(rho1 * std::cos (phi1));
       
       } /* setCylTheta */
       
      @@ -266,47 +264,44 @@ void Hep3Vector::setCylEta (double eta1) {
               //-| ZMthrows to say eta rather than theta.  Besides, we assumedly
               //-| need not check for theta of 0 or PI.
       
      -  if ( (dx == 0) && (dy == 0) ) {
      -    if (dz == 0) {
      +  if ( (x() == 0) && (y() == 0) ) {
      +    if (z() == 0) {
             std::cerr << "Hep3Vector::setCylEta() - "
               << "Attempt to set cylEta of zero vector -- vector is unchanged"
               << std::endl;
             return;
           }
           if (theta1 == 0) {
      -      dz = std::fabs(dz);
      +      setZ(std::fabs(z()));
             return;
           }
           if (theta1 == CLHEP::pi) {
      -      dz = -std::fabs(dz);
      +      setZ(-std::fabs(z()));
             return;
           }
           std::cerr << "Hep3Vector::setCylEta() - "
             << "Attempt set cylindrical eta of vector along Z axis "
             << "to a non-trivial value, while keeping rho fixed -- "
             << "will return zero vector" << std::endl;
      -    dz = 0;
      +    setZ(0.0);
           return;
         }
         double phi1 (getPhi());
         double rho1 = getRho();
      -  dz = rho1 / std::tan (theta1);
      -  dy = rho1 * std::sin (phi1);
      -  dx = rho1 * std::cos (phi1);
      +  setZ(rho1 / std::tan (theta1));
      +  setY(rho1 * std::sin (phi1));
      +  setX(rho1 * std::cos (phi1));
       
       } /* setCylEta */
       
       
      -Hep3Vector operator/  ( const Hep3Vector & v1, double c ) {
      +Hep3Vector operator/ ( const Hep3Vector & v1, double c ) {
       //  if (c == 0) {
       //    std::cerr << "Hep3Vector::operator/ () - "
       //      << "Attempt to divide vector by 0 -- "
       //      << "will produce infinities and/or NANs" << std::endl;
       //  } 
      -  double   oneOverC = 1.0/c;
      -  return Hep3Vector  (  v1.x() * oneOverC,
      -                        v1.y() * oneOverC,
      -                        v1.z() * oneOverC );
      +  return v1 * (1.0/c);
       } /* v / c */
       
       Hep3Vector & Hep3Vector::operator/= (double c) {
      @@ -316,10 +311,7 @@ Hep3Vector & Hep3Vector::operator/= (double c) {
       //      << "division by zero would produce infinite or NAN components"
       //      << std::endl;
       //  }
      -  double oneOverC = 1.0/c;
      -  dx *= oneOverC;
      -  dy *= oneOverC;
      -  dz *= oneOverC;
      +  *this *= 1.0/c;
         return *this;
       }
       
      diff --git a/source/externals/clhep/src/ThreeVectorR.cc b/source/externals/clhep/src/ThreeVectorR.cc
      index 974806edf8..b891bff125 100644
      --- a/source/externals/clhep/src/ThreeVectorR.cc
      +++ b/source/externals/clhep/src/ThreeVectorR.cc
      @@ -8,10 +8,6 @@
       // out of ThreeVector.cc.
       //
       
      -#ifdef GNUPRAGMA
      -#pragma implementation
      -#endif
      -
       #include "CLHEP/Vector/ThreeVector.h"
       #include "CLHEP/Vector/Rotation.h"
       
      diff --git a/source/externals/expat/CMakeLists.txt b/source/externals/expat/CMakeLists.txt
      index cebcfde50c..392fd582a6 100644
      --- a/source/externals/expat/CMakeLists.txt
      +++ b/source/externals/expat/CMakeLists.txt
      @@ -1,44 +1,118 @@
      -#------------------------------------------------------------------------------
      -# CMakeLists.txt
      -# Module : G4expat
      -# Package: Geant4.src.G4externals.G4expat
      +# - Build for Geant4-vendored version of Expat
       #
      -# CMakeLists.txt for single level library that may be build global or granular
      -#
      -# Created on: 02/06/2011
      -#
      -# $Date$
      -# $Revision$
      -# $Author$
      -#
      -#------------------------------------------------------------------------------
      +# It largely reproduces Expat's core CMake script for checks/defines
      +# but replaces the library build with Geant4 specifics for naming
      +# an installing.
       
      -include(Geant4MacroLibraryTargets)
      -if(GEANT4_BUILD_GRANULAR_LIBS)
      -    GEANT4_GRANULAR_LIBRARY_TARGET(COMPONENT sources.cmake)
      -else()
      -    GEANT4_GLOBAL_LIBRARY_TARGET(COMPONENTS sources.cmake)
      +#----------------------------------------------------------------------------
      +# - Expat core build
      +set(XML_CONTEXT_BYTES 1024)
      +set(XML_DTD 1)
      +set(XML_NS 1)
      +
      +include(CheckIncludeFile)
      +include(CheckIncludeFiles)
      +include(CheckFunctionExists)
      +include(CheckSymbolExists)
      +include(TestBigEndian)
      +
      +check_include_file("dlfcn.h" HAVE_DLFCN_H)
      +check_include_file("fcntl.h" HAVE_FCNTL_H)
      +check_include_file("inttypes.h" HAVE_INTTYPES_H)
      +check_include_file("memory.h" HAVE_MEMORY_H)
      +check_include_file("stdint.h" HAVE_STDINT_H)
      +check_include_file("stdlib.h" HAVE_STDLIB_H)
      +check_include_file("strings.h" HAVE_STRINGS_H)
      +check_include_file("string.h" HAVE_STRING_H)
      +check_include_file("sys/stat.h" HAVE_SYS_STAT_H)
      +check_include_file("sys/types.h" HAVE_SYS_TYPES_H)
      +check_include_file("unistd.h" HAVE_UNISTD_H)
      +
      +check_function_exists("getpagesize" HAVE_GETPAGESIZE)
      +check_function_exists("bcopy" HAVE_BCOPY)
      +check_symbol_exists("memmove" "string.h" HAVE_MEMMOVE)
      +check_function_exists("mmap" HAVE_MMAP)
      +
      +#/* Define to 1 if you have the ANSI C header files. */
      +check_include_files("stdlib.h;stdarg.h;string.h;float.h" STDC_HEADERS)
      +
      +test_big_endian(WORDS_BIGENDIAN)
      +#/* 1234 = LIL_ENDIAN, 4321 = BIGENDIAN */
      +if(WORDS_BIGENDIAN)
      +  set(BYTEORDER 4321)
      +else(WORDS_BIGENDIAN)
      +  set(BYTEORDER 1234)
      +endif(WORDS_BIGENDIAN)
      +
      +if(HAVE_SYS_TYPES_H)
      +  check_symbol_exists("off_t" "sys/types.h" OFF_T)
      +  check_symbol_exists("size_t" "sys/types.h" SIZE_T)
      +else(HAVE_SYS_TYPES_H)
      +  set(OFF_T "long")
      +  set(SIZE_T "unsigned")
      +endif(HAVE_SYS_TYPES_H)
      +
      +configure_file(expat_config.h.cmake expat_config.h)
      +add_definitions(-DHAVE_EXPAT_CONFIG_H)
      +
      +if(MSVC)
      +  add_definitions(-D_CRT_SECURE_NO_WARNINGS -wd4996)
       endif()
       
      -# - Ensure clients of the static expat library use the XML_STATIC
      -# preprocessor def
      -if(TARGET G4expat-static)
      -  target_compile_definitions(G4expat-static PUBLIC XML_STATIC)
      -endif()
      +#----------------------------------------------------------------------------
      +# - Geant4 Integration
      +# Use geant4_add_library to create G4expat and static variant if needed
      +set(G4expat_HEADERS
      +  include/expat_external.h
      +  include/expat.h
      +  ${CMAKE_CURRENT_BINARY_DIR}/expat_config.h)
       
      -# Externals are a special case during migration to new CMake system.
      -# To ensure compatibility with both old and new systems, need
      -# to set INCLUDE_DIRECTORIES usage requirement. Does not affect
      -# build-time inc dirs, simply propagates public includes to
      -# clients who link to G4expat target inside Geant4
      +set(G4expat_SOURCES
      +  ${CMAKE_CURRENT_BINARY_DIR}/expat_config.h
      +  src/amigaconfig.h
      +  src/ascii.h
      +  src/asciitab.h
      +  src/iasciitab.h
      +  src/internal.h
      +  src/latin1tab.h
      +  src/macconfig.h
      +  src/nametab.h
      +  src/utf8tab.h
      +  src/winconfig.h
      +  src/xmlparse.cc
      +  src/xmlrole.cc
      +  src/xmlrole.h
      +  src/xmltok.cc
      +  src/xmltok.h
      +  src/xmltok_impl.cc
      +  src/xmltok_impl.h
      +  src/xmltok_ns.cc)
      +
      +
      +# - Create target(s) and set usage requirements
      +geant4_library_target(NAME G4expat SOURCES ${G4expat_SOURCES} ${G4expat_HEADERS})
       foreach(__g4expat_target G4expat G4expat-static)
         if(TARGET ${__g4expat_target})
           target_include_directories(${__g4expat_target}
             PUBLIC
               $
      -      PRIVATE
               $
      -      )
      +      PRIVATE
      +        $
      +    )
         endif()
       endforeach()
       
      +if(TARGET G4expat-static)
      +  target_compile_definitions(G4expat-static PUBLIC XML_STATIC)
      +endif()
      +
      +# - Ensure the header directory gets added to the list of ones to export
      +set_property(GLOBAL APPEND PROPERTY GEANT4_BUILDTREE_INCLUDE_DIRS
      +  ${CMAKE_CURRENT_SOURCE_DIR}/include
      +)
      +
      +# Install headers alongside Geant4
      +install(FILES ${G4expat_HEADERS}
      +  DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}/${PROJECT_NAME}
      +  COMPONENT Development)
      diff --git a/source/externals/expat/COPYING b/source/externals/expat/COPYING
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/History b/source/externals/expat/History
      index ee5e48a16d..a43ce82160 100644
      --- a/source/externals/expat/History
      +++ b/source/externals/expat/History
      @@ -14,6 +14,10 @@ committal in the CVS repository !
            ----------------------------------------------------------
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
      +20-October-2020: Ben Morgan (expat-V10-06-00)
      +- Migrate build of G4expat to locally defined targets, allowing
      +  cleaner specification of usage requirements. Fixes GitLab Issue #44.
      +
       03-February-2017: Ben Morgan expat-V10-03-00
       - Set interface include directories on G4expat{-static} targets
         in CMakeLists.txt. This provides the needed interface to allow transparent
      @@ -22,7 +26,7 @@ committal in the CVS repository !
         interface for consistency with other targets.
       
       24-September-2015: Ben Morgan  expat-V10-01-01
      -- CMakeLists.txt : Add XML_STATIC to public compile definitions 
      +- CMakeLists.txt : Add XML_STATIC to public compile definitions
         of G4expat-static. Required on Windows platforms to ensure correct
         linkage of symbols in static mode.
       
      @@ -49,8 +53,8 @@ committal in the CVS repository !
       12-May-2011: Gunter Folger			expat-V09-04-00
       - Keep only Geant4 relevant parts of expat, lay out adapted to Geant4:
         GNUmakefile, and src & include
      -     
       
      -     
      +
      +
       April-2011: Gunter Folger			expat-2.0.1
       - Files of orginal expat 2.0.1 release, no G4 mods.
      diff --git a/source/externals/expat/README b/source/externals/expat/README
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/expat_config.h.cmake b/source/externals/expat/expat_config.h.cmake
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/include/expat.h b/source/externals/expat/include/expat.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/include/expat_external.h b/source/externals/expat/include/expat_external.h
      old mode 100755
      new mode 100644
      index 2c03284ea2..a8553ffc21
      --- a/source/externals/expat/include/expat_external.h
      +++ b/source/externals/expat/include/expat_external.h
      @@ -97,7 +97,7 @@ typedef char XML_LChar;
       
       #ifdef XML_LARGE_SIZE  /* Use large integers for file/stream positions. */
       #if defined(XML_USE_MSC_EXTENSIONS) && _MSC_VER < 1400
      -typedef __int64 XML_Index; 
      +typedef __int64 XML_Index;
       typedef unsigned __int64 XML_Size;
       #else
       typedef long long XML_Index;
      diff --git a/source/externals/expat/sources.cmake b/source/externals/expat/sources.cmake
      deleted file mode 100644
      index bdb7f5c6bb..0000000000
      --- a/source/externals/expat/sources.cmake
      +++ /dev/null
      @@ -1,113 +0,0 @@
      -#------------------------------------------------------------------------------
      -# sources.cmake
      -# Module : G4expat
      -# Package: Geant4.src.G4externals.G4expat
      -#
      -# Sources description for a library.
      -# Lists the sources and headers of the code explicitely.
      -# Lists include paths needed.
      -# Lists the internal granular and global dependencies of the library.
      -# Source specific properties should be added at the end.
      -#
      -# Created on : 02/06/2011
      -#
      -#
      -#------------------------------------------------------------------------------
      -
      -# List external includes needed.
      -
      -# List internal includes needed.
      -# Private headers are in src and for CMake need generated config file
      -include_directories(${CMAKE_CURRENT_BINARY_DIR})
      -include_directories(src)
      -
      -# Configure as per expat's CMake scripts, always taking defaults
      -set(XML_CONTEXT_BYTES 1024)
      -set(XML_DTD 1)
      -set(XML_NS 1)
      -
      -include(CheckIncludeFile)
      -include(CheckIncludeFiles)
      -include(CheckFunctionExists)
      -include(CheckSymbolExists)
      -include(TestBigEndian)
      -
      -check_include_file("dlfcn.h" HAVE_DLFCN_H)
      -check_include_file("fcntl.h" HAVE_FCNTL_H)
      -check_include_file("inttypes.h" HAVE_INTTYPES_H)
      -check_include_file("memory.h" HAVE_MEMORY_H)
      -check_include_file("stdint.h" HAVE_STDINT_H)
      -check_include_file("stdlib.h" HAVE_STDLIB_H)
      -check_include_file("strings.h" HAVE_STRINGS_H)
      -check_include_file("string.h" HAVE_STRING_H)
      -check_include_file("sys/stat.h" HAVE_SYS_STAT_H)
      -check_include_file("sys/types.h" HAVE_SYS_TYPES_H)
      -check_include_file("unistd.h" HAVE_UNISTD_H)
      -
      -check_function_exists("getpagesize" HAVE_GETPAGESIZE)
      -check_function_exists("bcopy" HAVE_BCOPY)
      -check_symbol_exists("memmove" "string.h" HAVE_MEMMOVE)
      -check_function_exists("mmap" HAVE_MMAP)
      -
      -#/* Define to 1 if you have the ANSI C header files. */
      -check_include_files("stdlib.h;stdarg.h;string.h;float.h" STDC_HEADERS)
      -
      -test_big_endian(WORDS_BIGENDIAN)
      -#/* 1234 = LIL_ENDIAN, 4321 = BIGENDIAN */
      -if(WORDS_BIGENDIAN)
      -    set(BYTEORDER 4321)
      -else(WORDS_BIGENDIAN)
      -    set(BYTEORDER 1234)
      -endif(WORDS_BIGENDIAN)
      -
      -if(HAVE_SYS_TYPES_H)
      -    check_symbol_exists("off_t" "sys/types.h" OFF_T)
      -    check_symbol_exists("size_t" "sys/types.h" SIZE_T)
      -else(HAVE_SYS_TYPES_H)
      -    set(OFF_T "long")
      -    set(SIZE_T "unsigned")
      -endif(HAVE_SYS_TYPES_H)
      -
      -configure_file(expat_config.h.cmake expat_config.h)
      -add_definitions(-DHAVE_EXPAT_CONFIG_H)
      -
      -if(MSVC)
      -  add_definitions(-D_CRT_SECURE_NO_WARNINGS -wd4996)
      -endif()
      -
      -#
      -# Define the Geant4 Module.
      -#
      -include(Geant4MacroDefineModule)
      -GEANT4_DEFINE_MODULE(NAME G4expat
      -    HEADERS
      -        expat_external.h
      -        expat.h
      -    SOURCES
      -        ${CMAKE_CURRENT_BINARY_DIR}/expat_config.h
      -        amigaconfig.h
      -        ascii.h
      -        asciitab.h
      -        iasciitab.h
      -        internal.h
      -        latin1tab.h
      -        macconfig.h
      -        nametab.h
      -        utf8tab.h
      -        winconfig.h
      -        xmlparse.cc
      -        xmlrole.cc
      -        xmlrole.h
      -        xmltok.cc
      -        xmltok.h
      -        xmltok_impl.cc
      -        xmltok_impl.h
      -        xmltok_ns.cc
      -)
      -
      -# List any source specific properties here
      -if(GEANT4_USE_NEW_CMAKE)
      -  geant4_module_include_directories(G4expat
      -    PUBLIC $
      -    )
      -endif()
      diff --git a/source/externals/expat/src/amigaconfig.h b/source/externals/expat/src/amigaconfig.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/ascii.h b/source/externals/expat/src/ascii.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/asciitab.h b/source/externals/expat/src/asciitab.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/iasciitab.h b/source/externals/expat/src/iasciitab.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/internal.h b/source/externals/expat/src/internal.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/latin1tab.h b/source/externals/expat/src/latin1tab.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/macconfig.h b/source/externals/expat/src/macconfig.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/nametab.h b/source/externals/expat/src/nametab.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/utf8tab.h b/source/externals/expat/src/utf8tab.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/winconfig.h b/source/externals/expat/src/winconfig.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/xmlparse.cc b/source/externals/expat/src/xmlparse.cc
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/xmlrole.cc b/source/externals/expat/src/xmlrole.cc
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/xmlrole.h b/source/externals/expat/src/xmlrole.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/xmltok.cc b/source/externals/expat/src/xmltok.cc
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/xmltok.h b/source/externals/expat/src/xmltok.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/xmltok_impl.cc b/source/externals/expat/src/xmltok_impl.cc
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/xmltok_impl.h b/source/externals/expat/src/xmltok_impl.h
      old mode 100755
      new mode 100644
      diff --git a/source/externals/expat/src/xmltok_ns.cc b/source/externals/expat/src/xmltok_ns.cc
      old mode 100755
      new mode 100644
      diff --git a/source/externals/ptl/CMakeLists.txt b/source/externals/ptl/CMakeLists.txt
      index 1da0b0d5c0..50887e9dcc 100644
      --- a/source/externals/ptl/CMakeLists.txt
      +++ b/source/externals/ptl/CMakeLists.txt
      @@ -81,7 +81,7 @@ file(GLOB_RECURSE ptl_headers ${CMAKE_CURRENT_LIST_DIR}/include/PTL/*.hh
       file(GLOB_RECURSE ptl_sources ${CMAKE_CURRENT_LIST_DIR}/src/*.cc)
       
       get_property(PTL_INTERFACE_LIBRARIES GLOBAL PROPERTY ${PROJECT_NAME}_INTERFACE_LIBRARIES)
      -
      +export(TARGETS ${PTL_INTERFACE_LIBRARIES} FILE ${PROJECT_BINARY_DIR}/${PROJECT_NAME}-interface.cmake)
       ################################################################################
       #                                                                              #
       #                              PTL Library                                     #
      @@ -89,7 +89,6 @@ get_property(PTL_INTERFACE_LIBRARIES GLOBAL PROPERTY ${PROJECT_NAME}_INTERFACE_L
       ################################################################################
       
       if(BUILD_SHARED_LIBS)
      -
           build_library(VERSION
               TYPE SHARED
               TARGET_NAME ptl-shared
      @@ -106,8 +105,7 @@ if(BUILD_SHARED_LIBS)
               $)
       
           list(APPEND INSTALL_LIBRARIES ptl-shared)
      -    export(TARGETS ptl-shared ${PTL_INTERFACE_LIBRARIES}
      -        FILE ${PROJECT_BINARY_DIR}/${PROJECT_NAME}-shared.cmake)
      +    export(TARGETS ptl-shared FILE ${PROJECT_BINARY_DIR}/${PROJECT_NAME}-shared.cmake)
       endif()
       
       if(BUILD_STATIC_LIBS)
      @@ -115,7 +113,7 @@ if(BUILD_STATIC_LIBS)
           build_library(
               TYPE STATIC
               TARGET_NAME ptl-static
      -        OUTPUT_NAME G4ptl
      +        OUTPUT_NAME $,G4ptl-static,G4ptl>
               SOURCES ${ptl_headers} ${ptl_sources}
               EXTRA_ARGS POSITION_INDEPENDENT_CODE ON)
       
      @@ -127,8 +125,7 @@ if(BUILD_STATIC_LIBS)
               $)
       
           list(APPEND INSTALL_LIBRARIES ptl-static)
      -    export(TARGETS ptl-static ${PTL_INTERFACE_LIBRARIES}
      -        FILE ${PROJECT_BINARY_DIR}/${PROJECT_NAME}-static.cmake)
      +    export(TARGETS ptl-static FILE ${PROJECT_BINARY_DIR}/${PROJECT_NAME}-static.cmake)
       endif()
       
       
      @@ -140,9 +137,10 @@ endif()
       
       # Install the targets and export libraries
       install(TARGETS ${INSTALL_LIBRARIES}
      -    DESTINATION ${CMAKE_INSTALL_LIBDIR}
           EXPORT ${PROJECT_NAME}Targets
      -    COMPONENT development)
      +    ARCHIVE DESTINATION "${CMAKE_INSTALL_LIBDIR}" COMPONENT development
      +    LIBRARY DESTINATION "${CMAKE_INSTALL_LIBDIR}" COMPONENT runtime
      +    RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT runtime)
       
       # install export
       install(EXPORT ${PROJECT_NAME}Targets
      diff --git a/source/externals/ptl/History b/source/externals/ptl/History
      index 449f89061d..15f982f6c3 100644
      --- a/source/externals/ptl/History
      +++ b/source/externals/ptl/History
      @@ -16,6 +16,34 @@ committal in the code repository !
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
       
      +2 Nov 2020 - B.Morgan (ptl-V10-06-08)
      +- BUGFIX #2286: Install PTL DLL/archive into appropriate platform dependent
      +  locations.
      +
      +20 Oct 2020 - B.Morgan (ptl-V10-06-07)
      +- Export interface targets used by both static and shared variants of
      +  PTL to a dedicated file in the build directory. Required to avoid
      +  missing/double definitions of targets when building Geant4/PTL with
      +  shared/static at the same time.
      +
      +5 Oct 2020 - J.Madsen(ptl-V10-06-06)
      +- Stability fixes for ensuring that stack variables are copied
      +  into task-group functions
      +
      +23 Sept 2020 - J.Madsen (ptl-V10-06-05)
      +- All template parameters using leading underscore followed by
      +  capital letter have been replaced --> reserved for standard library
      +- TaskGroup and TBBTaskGroup support non-aggregating join function
      +- Arguments are copied into tuple for tasks
      +
      +12 Sept 2020 - J.Madsen (ptl-V10-06-04)
      +- Fixed issues with PTL::ThreadPool destruction.
      +  - For some ill-advised reason, the original impl detached the threads
      +    instead of joining them to ensure they were deleted
      +- Created generic execute_on_all_threads member function for thread pool
      +  - this handles the complexity of performing this operation w/ TBB
      +- cleaned up the inconsistent naming in PTL::ThreadPool
      +
       23 June 2020 - J.Madsen (ptl-V10-06-03)
       - Tweaked VTaskGroup to use a vector instead of list
       - Declared the default ctor/dtor/assign-op for
      diff --git a/source/externals/ptl/cmake/Templates/PTLConfig.cmake.in b/source/externals/ptl/cmake/Templates/PTLConfig.cmake.in
      index 142fa5309b..1b807a8ece 100644
      --- a/source/externals/ptl/cmake/Templates/PTLConfig.cmake.in
      +++ b/source/externals/ptl/cmake/Templates/PTLConfig.cmake.in
      @@ -85,6 +85,10 @@ else()
               find_package(TBB @TBB_VERSION@ REQUIRED)
           endif()
       
      +    if(NOT TARGET @LIBNAME@-compile-options)
      +      include("@PROJECT_BINARY_DIR@/@PROJECT_NAME@-interface.cmake")
      +    endif()
      +
           foreach(_COMPONENT ${_PTL_AVAILABLE_COMPONENTS})
               if(NOT TARGET @LIBNAME@-${_COMPONENT})
                   include("@PROJECT_BINARY_DIR@/@PROJECT_NAME@-${_COMPONENT}.cmake")
      @@ -106,21 +110,6 @@ endif()
       set(@PROJECT_NAME@_INCLUDE_DIRS ${@PROJECT_NAME@_INCLUDE_DIR})
       
       
      -#------------------------------------------------------------------------------#
      -#   CXX standard
      -#
      -if(DEFINED CMAKE_CXX_STANDARD)
      -    if("${CMAKE_CXX_STANDARD}" VERSION_LESS 11)
      -        set(CMAKE_CXX_STANDARD 11)
      -        set(CMAKE_CXX_STANDARD_REQUIRED ON)
      -    endif()
      -else(DEFINED CMAKE_CXX_STANDARD)
      -    set(CMAKE_CXX_STANDARD @CMAKE_CXX_STANDARD@)
      -endif(DEFINED CMAKE_CXX_STANDARD)
      -
      -set(CMAKE_CXX_STANDARD_REQUIRED ON)
      -
      -
       #------------------------------------------------------------------------------#
       #   Linking type
       #
      diff --git a/source/externals/ptl/include/PTL/AutoLock.hh b/source/externals/ptl/include/PTL/AutoLock.hh
      index ccad6eb12c..a2f74c6c30 100644
      --- a/source/externals/ptl/include/PTL/AutoLock.hh
      +++ b/source/externals/ptl/include/PTL/AutoLock.hh
      @@ -255,15 +255,15 @@ namespace PTL
       // Note: Note that TemplateAutoLock by itself is not thread-safe and
       //       cannot be shared among threads due to the locked switch
       //
      -template 
      -class TemplateAutoLock : public std::unique_lock<_Mutex_t>
      +template 
      +class TemplateAutoLock : public std::unique_lock
       {
       public:
           //------------------------------------------------------------------------//
           // Some useful typedefs
           //------------------------------------------------------------------------//
      -    typedef std::unique_lock<_Mutex_t>         unique_lock_t;
      -    typedef TemplateAutoLock<_Mutex_t>         this_type;
      +    typedef std::unique_lock           unique_lock_t;
      +    typedef TemplateAutoLock           this_type;
           typedef typename unique_lock_t::mutex_type mutex_type;
       
       public:
      @@ -350,26 +350,26 @@ public:
       
       private:
       // helpful macros
      -#define _is_stand_mutex(_Tp) (std::is_same<_Tp, Mutex>::value)
      -#define _is_recur_mutex(_Tp) (std::is_same<_Tp, RecursiveMutex>::value)
      -#define _is_other_mutex(_Tp) (!_is_stand_mutex(_Tp) && !_is_recur_mutex(_Tp))
      +#define _is_stand_mutex(Tp) (std::is_same::value)
      +#define _is_recur_mutex(Tp) (std::is_same::value)
      +#define _is_other_mutex(Tp) (!_is_stand_mutex(Tp) && !_is_recur_mutex(Tp))
       
      -    template ::type = 0>
      +    template ::type = 0>
           std::string GetTypeString()
           {
               return "AutoLock";
           }
       
      -    template ::type = 0>
      +    template ::type = 0>
           std::string GetTypeString()
           {
               return "AutoLock";
           }
       
      -    template ::type = 0>
      +    template ::type = 0>
           std::string GetTypeString()
           {
               return "AutoLock";
      @@ -381,8 +381,8 @@ private:
       #undef _is_other_mutex
       
           // used in _lock_deferred chrono variants to avoid ununsed-variable warning
      -    template 
      -    void suppress_unused_variable(const _Tp&)
      +    template 
      +    void suppress_unused_variable(const Tp&)
           {}
       
           //========================================================================//
      @@ -485,7 +485,7 @@ typedef TemplateAutoLock RecursiveAutoLock;
       
       // provide abbriviated type if another mutex type is desired to be used
       // aside from above
      -template 
      -using TAutoLock = TemplateAutoLock<_Tp>;
      +template 
      +using TAutoLock = TemplateAutoLock;
       
       }  // namespace PTL
      diff --git a/source/externals/ptl/include/PTL/Globals.hh b/source/externals/ptl/include/PTL/Globals.hh
      index b19074ecad..4f6beaa742 100644
      --- a/source/externals/ptl/include/PTL/Globals.hh
      +++ b/source/externals/ptl/include/PTL/Globals.hh
      @@ -42,7 +42,7 @@
       
       #if !defined(PTL_FOLD_EXPRESSION)
       #    define PTL_FOLD_EXPRESSION(...)                                                     \
      -        ::PTL::details::consume_parameters(                                              \
      +        ::PTL::mpl::consume_parameters(                                                  \
                   ::std::initializer_list{ (__VA_ARGS__, 0)... })
       #endif
       
      @@ -55,7 +55,7 @@ template 
       using enable_if_t = typename std::enable_if::type;
       
       // for pre-C++14 tuple expansion to arguments
      -namespace details
      +namespace mpl
       {
       //--------------------------------------------------------------------------------------//
       
      @@ -71,84 +71,83 @@ namespace impl
       //--------------------------------------------------------------------------------------//
       // Stores a tuple of indices.  Used by tuple and pair, and by bind() to
       // extract the elements in a tuple.
      -template 
      -struct _Index_tuple
      +template 
      +struct Index_tuple
       {};
       
      -// Concatenates two _Index_tuples.
      -template 
      -struct _Itup_cat;
      +// Concatenates two Index_tuples.
      +template 
      +struct Itup_cat;
       
      -template 
      -struct _Itup_cat<_Index_tuple<_Ind1...>, _Index_tuple<_Ind2...>>
      +template 
      +struct Itup_cat, Index_tuple>
       {
      -    using __type = _Index_tuple<_Ind1..., (_Ind2 + sizeof...(_Ind1))...>;
      +    using __type = Index_tuple;
       };
       
      -// Builds an _Index_tuple<0, 1, 2, ..., _Num-1>.
      -template 
      -struct _Build_index_tuple
      -: _Itup_cat::__type,
      -            typename _Build_index_tuple<_Num - _Num / 2>::__type>
      +// Builds an Index_tuple<0, 1, 2, ..., NumT-1>.
      +template 
      +struct Build_index_tuple
      +: Itup_cat::__type,
      +           typename Build_index_tuple::__type>
       {};
       
       template <>
      -struct _Build_index_tuple<1>
      +struct Build_index_tuple<1>
       {
      -    typedef _Index_tuple<0> __type;
      +    typedef Index_tuple<0> __type;
       };
       
       template <>
      -struct _Build_index_tuple<0>
      +struct Build_index_tuple<0>
       {
      -    typedef _Index_tuple<> __type;
      +    typedef Index_tuple<> __type;
       };
       
       /// Class template integer_sequence
      -template 
      +template 
       struct integer_sequence
       {
      -    typedef _Tp             value_type;
      -    static constexpr size_t size() noexcept { return sizeof...(_Idx); }
      +    typedef Tp              value_type;
      +    static constexpr size_t size() noexcept { return sizeof...(Idx); }
       };
       
      -template ::__type>
      -struct _Make_integer_sequence;
      +template ::__type>
      +struct Make_integer_sequence;
       
      -template 
      -struct _Make_integer_sequence<_Tp, _Num, _Index_tuple<_Idx...>>
      +template 
      +struct Make_integer_sequence>
       {
      -    static_assert(_Num >= 0, "Cannot make integer sequence of negative length");
      +    static_assert(NumT >= 0, "Cannot make integer sequence of negative length");
       
      -    typedef integer_sequence<_Tp, static_cast<_Tp>(_Idx)...> __type;
      +    typedef integer_sequence(Idx)...> __type;
       };
       
       /// Alias template make_integer_sequence
      -template 
      -using make_integer_sequence = typename _Make_integer_sequence<_Tp, _Num>::__type;
      +template 
      +using make_integer_sequence = typename Make_integer_sequence::__type;
       
       /// Alias template index_sequence
      -template 
      -using index_sequence = integer_sequence;
      +template 
      +using index_sequence = integer_sequence;
       
       /// Alias template make_index_sequence
      -template 
      -using make_index_sequence = make_integer_sequence;
      +template 
      +using make_index_sequence = make_integer_sequence;
       
       /// Alias template index_sequence_for
      -template 
      -using index_sequence_for = make_index_sequence;
      +template 
      +using index_sequence_for = make_index_sequence;
       
      -template 
      -using index_type_t = decay_t(std::declval()))>;
      +template 
      +using index_type_t = decay_t(std::declval()))>;
       
      -template 
      -static inline void
      -apply(_Fn&& __f, _Tuple&& __t, impl::index_sequence<_Idx...>)
      +template 
      +static inline auto
      +apply(FnT&& __f, TupleT&& __t, impl::index_sequence)
      +    -> decltype(std::forward(__f)(std::get(__t)...))
       {
      -    std::forward<_Fn>(__f)(std::get<_Idx>(std::forward<_Tuple>(__t))...);
      -    // __f(std::get<_Idx>(std::forward<_Tuple>(__t))...);
      +    return std::forward(__f)(std::get(__t)...);
       }
       
       //--------------------------------------------------------------------------------------//
      @@ -158,29 +157,29 @@ apply(_Fn&& __f, _Tuple&& __t, impl::index_sequence<_Idx...>)
       //--------------------------------------------------------------------------------------//
       
       /// Alias template index_sequence
      -template 
      -using index_sequence = impl::integer_sequence;
      +template 
      +using index_sequence = impl::integer_sequence;
       
       /// Alias template make_index_sequence
      -template 
      -using make_index_sequence = impl::make_integer_sequence;
      +template 
      +using make_index_sequence = impl::make_integer_sequence;
       
       /// Alias template index_sequence_for
      -template 
      -using index_sequence_for = impl::make_index_sequence;
      +template 
      +using index_sequence_for = impl::make_index_sequence;
       
      -template 
      +template 
       static inline void
      -apply(_Fn&& __f, _Tuple&& __t)
      +apply(FnT&& __f, TupleT&& __t)
       {
      -    constexpr auto _N = std::tuple_size<_Tuple>::value;
      -    impl::apply(std::forward<_Fn>(__f), std::forward<_Tuple>(__t),
      -                impl::make_index_sequence<_N>{});
      +    constexpr auto N = std::tuple_size::value;
      +    impl::apply(std::forward(__f), std::forward(__t),
      +                impl::make_index_sequence{});
       }
       
       //--------------------------------------------------------------------------------------//
       
      -}  // namespace details
      +}  // namespace mpl
       
       namespace thread_pool
       {
      @@ -192,7 +191,6 @@ static const short STOPPED = 2;
       static const short NONINIT = 3;
       
       }  // namespace state
      -
       }  // namespace thread_pool
       
       //--------------------------------------------------------------------------------------//
      diff --git a/source/externals/ptl/include/PTL/TBBTaskGroup.hh b/source/externals/ptl/include/PTL/TBBTaskGroup.hh
      index c83c9cc734..d59e48a646 100644
      --- a/source/externals/ptl/include/PTL/TBBTaskGroup.hh
      +++ b/source/externals/ptl/include/PTL/TBBTaskGroup.hh
      @@ -64,11 +64,11 @@ public:
           typedef typename base_type::packaged_task_type                   packaged_task_type;
           typedef typename base_type::future_type                          future_type;
           typedef typename base_type::promise_type                         promise_type;
      -    typedef typename base_type::template JoinFunction::Type join_type;
      +    typedef typename JoinFunction::Type                     join_type;
           typedef tbb::task_group                                          tbb_task_group_t;
           //------------------------------------------------------------------------//
           template 
      -    using task_type = Task;
      +    using task_type = Task...>;
           //------------------------------------------------------------------------//
       
       public:
      @@ -119,36 +119,40 @@ public:
       public:
           //------------------------------------------------------------------------//
           template 
      -    task_type* wrap(Func&& func, Args&&... args)
      +    task_type* wrap(Func&& func, Args... args)
           {
      -        return operator+=(new task_type(this, std::forward(func),
      -                                                 std::forward(args)...));
      +        return operator+=(
      +            new task_type(this, std::forward(func), args...));
           }
       
       public:
           //------------------------------------------------------------------------//
           template 
      -    void run(Func&& func, Args&&... args)
      +    void run(Func&& func, Args... args)
           {
      -        auto _task = wrap(std::forward(func), std::forward(args)...);
      +        auto _func = [=]() { return func(args...); };
      +        auto _task = wrap(std::move(_func));
               auto _lamb = [=]() { (*_task)(); };
               m_tbb_task_group->run(_lamb);
           }
           //------------------------------------------------------------------------//
           template 
      -    void exec(Func&& func, Args&&... args)
      +    void exec(Func&& func, Args... args)
           {
      -        run(std::forward(func), std::forward(args)...);
      +        auto _func = [=]() { return func(args...); };
      +        auto _task = wrap(std::move(_func));
      +        auto _lamb = [=]() { (*_task)(); };
      +        m_tbb_task_group->run(_lamb);
           }
           //------------------------------------------------------------------------//
           template ::value, int> = 0>
      -    void parallel_for(uintmax_t nitr, uintmax_t, Func&& func, Args&&... args)
      +    void parallel_for(uintmax_t nitr, uintmax_t, Func&& func, Args... args)
           {
               tbb::parallel_for(tbb::blocked_range(0, nitr),
                                 [&](const tbb::blocked_range& range) {
                                     for(size_t i = range.begin(); i != range.end(); ++i)
      -                                  func(std::forward(args)...);
      +                                  func(args...);
                                 });
           }
       
      @@ -175,18 +179,22 @@ public:
       
           //------------------------------------------------------------------------//
           // wait to finish
      -    template ::value, int> = 0>
      +    template ::value, int> = 0>
           inline Up join(Up accum = {})
           {
               this->wait();
               for(auto& itr : m_task_set)
      -            accum = m_join(std::ref(accum), std::forward(itr.get()));
      +        {
      +            using RetT = decay_t;
      +            accum      = m_join(std::ref(accum), std::forward(itr.get()));
      +        }
               this->clear();
               return accum;
           }
           //------------------------------------------------------------------------//
           // wait to finish
      -    template ::value, int> = 0>
      +    template ::value && std::is_void::value, int> = 0>
           inline void join()
           {
               this->wait();
      @@ -195,6 +203,20 @@ public:
               m_join();
               this->clear();
           }
      +    //------------------------------------------------------------------------//
      +    // wait to finish
      +    template ::value && !std::is_void::value, int> = 0>
      +    inline void join()
      +    {
      +        this->wait();
      +        for(auto& itr : m_task_set)
      +        {
      +            using RetT = decay_t;
      +            m_join(std::forward(itr.get()));
      +        }
      +        this->clear();
      +    }
       
       protected:
           // Protected variables
      diff --git a/source/externals/ptl/include/PTL/Task.hh b/source/externals/ptl/include/PTL/Task.hh
      index 9b9302750e..0574eb37ab 100644
      --- a/source/externals/ptl/include/PTL/Task.hh
      +++ b/source/externals/ptl/include/PTL/Task.hh
      @@ -46,38 +46,38 @@ class ThreadPool;
       //======================================================================================//
       
       /// \brief The task class is supplied to thread_pool.
      -template 
      +template 
       class PackagedTask : public VTask
       {
       public:
      -    typedef PackagedTask<_Ret, _Args...>       this_type;
      -    typedef std::promise<_Ret>                 promise_type;
      -    typedef std::future<_Ret>                  future_type;
      -    typedef std::packaged_task<_Ret(_Args...)> packaged_task_type;
      -    typedef _Ret                               result_type;
      -    typedef std::tuple<_Args...>               tuple_type;
      +    typedef PackagedTask       this_type;
      +    typedef std::promise                promise_type;
      +    typedef std::future                 future_type;
      +    typedef std::packaged_task packaged_task_type;
      +    typedef RetT                              result_type;
      +    typedef std::tuple               tuple_type;
       
       public:
           // pass a free function pointer
      -    template 
      -    PackagedTask(_Func&& func, _Args&&... args)
      +    template 
      +    PackagedTask(FuncT&& func, Args... args)
           : VTask()
      -    , m_ptask(std::forward<_Func>(func))
      -    , m_args(std::forward<_Args>(args)...)
      +    , m_ptask(std::forward(func))
      +    , m_args(args...)
           {}
       
      -    template 
      -    PackagedTask(VTaskGroup* tg, _Func&& func, _Args&&... args)
      +    template 
      +    PackagedTask(VTaskGroup* tg, FuncT&& func, Args... args)
           : VTask(tg)
      -    , m_ptask(std::forward<_Func>(func))
      -    , m_args(std::forward<_Args>(args)...)
      +    , m_ptask(std::forward(func))
      +    , m_args(args...)
           {}
       
      -    template 
      -    PackagedTask(ThreadPool* _pool, _Func&& func, _Args&&... args)
      +    template 
      +    PackagedTask(ThreadPool* _pool, FuncT&& func, Args... args)
           : VTask(_pool)
      -    , m_ptask(std::forward<_Func>(func))
      -    , m_args(std::forward<_Args>(args)...)
      +    , m_ptask(std::forward(func))
      +    , m_args(args...)
           {}
       
           virtual ~PackagedTask() {}
      @@ -86,8 +86,7 @@ public:
           // execution operator
           virtual void operator()() override
           {
      -        details::apply(std::forward(m_ptask),
      -                       std::forward(m_args));
      +        mpl::apply(std::move(m_ptask), std::move(m_args));
           }
           future_type  get_future() { return m_ptask.get_future(); }
           virtual bool is_native_task() const override { return true; }
      @@ -100,37 +99,37 @@ private:
       //======================================================================================//
       
       /// \brief The task class is supplied to thread_pool.
      -template 
      +template 
       class Task : public VTask
       {
       public:
      -    typedef Task<_Ret, _Args...>               this_type;
      -    typedef std::promise<_Ret>                 promise_type;
      -    typedef std::future<_Ret>                  future_type;
      -    typedef std::packaged_task<_Ret(_Args...)> packaged_task_type;
      -    typedef _Ret                               result_type;
      -    typedef std::tuple<_Args...>               tuple_type;
      +    typedef Task               this_type;
      +    typedef std::promise                promise_type;
      +    typedef std::future                 future_type;
      +    typedef std::packaged_task packaged_task_type;
      +    typedef RetT                              result_type;
      +    typedef std::tuple               tuple_type;
       
       public:
      -    template 
      -    Task(_Func&& func, _Args&&... args)
      +    template 
      +    Task(FuncT&& func, Args... args)
           : VTask()
      -    , m_ptask(std::forward<_Func>(func))
      -    , m_args(std::forward<_Args>(args)...)
      +    , m_ptask(std::forward(func))
      +    , m_args(args...)
           {}
       
      -    template 
      -    Task(VTaskGroup* tg, _Func&& func, _Args&&... args)
      +    template 
      +    Task(VTaskGroup* tg, FuncT&& func, Args... args)
           : VTask(tg)
      -    , m_ptask(std::forward<_Func>(func))
      -    , m_args(std::forward<_Args>(args)...)
      +    , m_ptask(std::forward(func))
      +    , m_args(args...)
           {}
       
      -    template 
      -    Task(ThreadPool* tp, _Func&& func, _Args&&... args)
      +    template 
      +    Task(ThreadPool* tp, FuncT&& func, Args... args)
           : VTask(tp)
      -    , m_ptask(std::forward<_Func>(func))
      -    , m_args(std::forward<_Args>(args)...)
      +    , m_ptask(std::forward(func))
      +    , m_args(args...)
           {}
       
           virtual ~Task() {}
      @@ -139,8 +138,7 @@ public:
           // execution operator
           virtual void operator()() final
           {
      -        details::apply(std::forward(m_ptask),
      -                       std::forward(m_args));
      +        mpl::apply(std::move(m_ptask), std::move(m_args));
               // decrements the task-group counter on active tasks
               // when the counter is < 2, if the thread owning the task group is
               // sleeping at the TaskGroup::wait(), it signals the thread to wake
      @@ -160,33 +158,33 @@ private:
       //======================================================================================//
       
       /// \brief The task class is supplied to thread_pool.
      -template 
      -class Task<_Ret, void> : public VTask
      +template 
      +class Task : public VTask
       {
       public:
      -    typedef Task<_Ret>                 this_type;
      -    typedef std::promise<_Ret>         promise_type;
      -    typedef std::future<_Ret>          future_type;
      -    typedef std::packaged_task<_Ret()> packaged_task_type;
      -    typedef _Ret                       result_type;
      +    typedef Task                 this_type;
      +    typedef std::promise         promise_type;
      +    typedef std::future          future_type;
      +    typedef std::packaged_task packaged_task_type;
      +    typedef RetT                       result_type;
       
       public:
      -    template 
      -    Task(_Func&& func)
      +    template 
      +    Task(FuncT&& func)
           : VTask()
      -    , m_ptask(std::forward<_Func>(func))
      +    , m_ptask(std::forward(func))
           {}
       
      -    template 
      -    Task(VTaskGroup* tg, _Func&& func)
      +    template 
      +    Task(VTaskGroup* tg, FuncT&& func)
           : VTask(tg)
      -    , m_ptask(std::forward<_Func>(func))
      +    , m_ptask(std::forward(func))
           {}
       
      -    template 
      -    Task(ThreadPool* tp, _Func&& func)
      +    template 
      +    Task(ThreadPool* tp, FuncT&& func)
           : VTask(tp)
      -    , m_ptask(std::forward<_Func>(func))
      +    , m_ptask(std::forward(func))
           {}
       
           virtual ~Task() {}
      @@ -218,30 +216,30 @@ template <>
       class Task : public VTask
       {
       public:
      -    typedef void                       _Ret;
      +    typedef void                       RetT;
           typedef Task           this_type;
      -    typedef std::promise<_Ret>         promise_type;
      -    typedef std::future<_Ret>          future_type;
      -    typedef std::packaged_task<_Ret()> packaged_task_type;
      -    typedef _Ret                       result_type;
      +    typedef std::promise         promise_type;
      +    typedef std::future          future_type;
      +    typedef std::packaged_task packaged_task_type;
      +    typedef RetT                       result_type;
       
       public:
      -    template 
      -    explicit Task(_Func&& func)
      +    template 
      +    explicit Task(FuncT&& func)
           : VTask()
      -    , m_ptask(std::forward<_Func>(func))
      +    , m_ptask(std::forward(func))
           {}
       
      -    template 
      -    Task(VTaskGroup* tg, _Func&& func)
      +    template 
      +    Task(VTaskGroup* tg, FuncT&& func)
           : VTask(tg)
      -    , m_ptask(std::forward<_Func>(func))
      +    , m_ptask(std::forward(func))
           {}
       
      -    template 
      -    Task(ThreadPool* tp, _Func&& func)
      +    template 
      +    Task(ThreadPool* tp, FuncT&& func)
           : VTask(tp)
      -    , m_ptask(std::forward<_Func>(func))
      +    , m_ptask(std::forward(func))
           {}
       
           virtual ~Task() {}
      diff --git a/source/externals/ptl/include/PTL/TaskGroup.hh b/source/externals/ptl/include/PTL/TaskGroup.hh
      index 48dc5111dd..34697e82d8 100644
      --- a/source/externals/ptl/include/PTL/TaskGroup.hh
      +++ b/source/externals/ptl/include/PTL/TaskGroup.hh
      @@ -51,70 +51,97 @@ class ThreadPool;
       
       //--------------------------------------------------------------------------------------//
       
      +#if !defined(PTL_DEFAULT_OBJECT)
      +#    define PTL_DEFAULT_OBJECT(NAME)                                                     \
      +        NAME()                = default;                                                 \
      +        ~NAME()               = default;                                                 \
      +        NAME(const NAME&)     = default;                                                 \
      +        NAME(NAME&&) noexcept = default;                                                 \
      +        NAME& operator=(const NAME&) = default;                                          \
      +        NAME& operator=(NAME&&) noexcept = default;
      +#endif
      +
      +//--------------------------------------------------------------------------------------//
      +
      +template 
      +struct JoinFunction
      +{
      +public:
      +    using Type = std::function;
      +
      +public:
      +    PTL_DEFAULT_OBJECT(JoinFunction)
      +
      +    template 
      +    JoinFunction(Func&& func)
      +    : m_func(std::forward(func))
      +    {}
      +
      +    template 
      +    JoinT& operator()(Args&&... args)
      +    {
      +        return std::move(m_func(std::forward(args)...));
      +    }
      +
      +private:
      +    Type m_func = [](JoinT& lhs, JoinArg&&) { return lhs; };
      +};
      +
      +//--------------------------------------------------------------------------------------//
      +
      +template 
      +struct JoinFunction
      +{
      +public:
      +    using Type = std::function;
      +
      +public:
      +    PTL_DEFAULT_OBJECT(JoinFunction)
      +
      +    template 
      +    JoinFunction(Func&& func)
      +    : m_func(std::forward(func))
      +    {}
      +
      +    template 
      +    void operator()(Args&&... args)
      +    {
      +        m_func(std::forward(args)...);
      +    }
      +
      +private:
      +    Type m_func = [](JoinArg) {};
      +};
      +
      +//--------------------------------------------------------------------------------------//
      +
      +template <>
      +struct JoinFunction
      +{
      +public:
      +    using Type = std::function;
      +
      +public:
      +    PTL_DEFAULT_OBJECT(JoinFunction)
      +
      +    template 
      +    JoinFunction(Func&& func)
      +    : m_func(std::forward(func))
      +    {}
      +
      +    void operator()() { m_func(); }
      +
      +private:
      +    Type m_func = []() {};
      +};
      +
      +//--------------------------------------------------------------------------------------//
      +
       template 
       class TaskGroup
       : public VTaskGroup
       , public TaskAllocator>
       {
      -protected:
      -    //----------------------------------------------------------------------------------//
      -    template 
      -    struct JoinFunction
      -    {
      -    public:
      -        typedef std::function Type;
      -
      -    public:
      -        JoinFunction()                    = default;
      -        ~JoinFunction()                   = default;
      -        JoinFunction(const JoinFunction&) = default;
      -        JoinFunction(JoinFunction&&)      = default;
      -
      -        JoinFunction& operator=(const JoinFunction&) = default;
      -        JoinFunction& operator=(JoinFunction&&) = default;
      -
      -        template 
      -        JoinFunction(Func&& func)
      -        : m_func(std::forward(func))
      -        {}
      -
      -        template 
      -        JoinT& operator()(Args&&... args)
      -        {
      -            return std::move(m_func(std::forward(args)...));
      -        }
      -
      -    private:
      -        Type m_func = [](JoinT& lhs, JoinArg&&) { return lhs; };
      -    };
      -    //----------------------------------------------------------------------------------//
      -    template 
      -    struct JoinFunction
      -    {
      -    public:
      -        typedef std::function Type;
      -
      -    public:
      -        JoinFunction()                    = default;
      -        ~JoinFunction()                   = default;
      -        JoinFunction(const JoinFunction&) = default;
      -        JoinFunction(JoinFunction&&)      = default;
      -
      -        JoinFunction& operator=(const JoinFunction&) = default;
      -        JoinFunction& operator=(JoinFunction&&) = default;
      -
      -        template 
      -        JoinFunction(Func&& func)
      -        : m_func(std::forward(func))
      -        {}
      -
      -        void operator()() { m_func(); }
      -
      -    private:
      -        Type m_func = []() {};
      -    };
      -    //----------------------------------------------------------------------------------//
      -
       public:
           //------------------------------------------------------------------------//
           typedef decay_t                                 ArgTp;
      @@ -131,7 +158,7 @@ public:
           typedef typename task_list_t::const_reverse_iterator const_reverse_iterator;
           //------------------------------------------------------------------------//
           template 
      -    using task_type = Task;
      +    using task_type = Task...>;
           //------------------------------------------------------------------------//
       
       public:
      @@ -176,29 +203,29 @@ public:
       public:
           //------------------------------------------------------------------------//
           template 
      -    task_type* wrap(Func&& func, Args&&... args)
      +    task_type* wrap(Func&& func, Args... args)
           {
      -        return operator+=(new task_type(this, std::forward(func),
      -                                                 std::forward(args)...));
      +        return operator+=(
      +            new task_type(this, std::forward(func), args...));
           }
       
       public:
           //------------------------------------------------------------------------//
           template 
      -    void exec(Func&& func, Args&&... args)
      +    void exec(Func&& func, Args... args)
           {
      -        m_pool->add_task(wrap(std::forward(func), std::forward(args)...));
      +        m_pool->add_task(wrap(std::forward(func), args...));
           }
           //------------------------------------------------------------------------//
           template 
      -    void run(Func&& func, Args&&... args)
      +    void run(Func&& func, Args... args)
           {
      -        m_pool->add_task(wrap(std::forward(func), std::forward(args)...));
      +        m_pool->add_task(wrap(std::forward(func), args...));
           }
           //------------------------------------------------------------------------//
           template 
           void parallel_for(const intmax_t& nitr, const intmax_t& chunks, Func&& func,
      -                      Args&&... args)
      +                      Args... args)
           {
               auto nsplit = nitr / chunks;
               auto nmod   = nitr % chunks;
      @@ -208,8 +235,7 @@ public:
               {
                   auto _beg = n * chunks;
                   auto _end = (n + 1) * chunks + ((n + 1 == nsplit) ? nmod : 0);
      -            run(std::forward(func), std::move(_beg), std::move(_end),
      -                std::forward(args)...);
      +            run(std::forward(func), std::move(_beg), std::move(_end), args...);
               }
           }
       
      @@ -244,21 +270,22 @@ public:
       
           //------------------------------------------------------------------------//
           // wait to finish
      -    template ::value, int> = 0>
      +    template ::value, int> = 0>
           inline Up join(Up accum = {})
           {
               this->wait();
               for(auto& itr : m_task_set)
               {
      -            using RetType = decltype(itr.get());
      -            accum = std::move(m_join(std::ref(accum), std::forward(itr.get())));
      +            using RetT = decay_t;
      +            accum = std::move(m_join(std::ref(accum), std::forward(itr.get())));
               }
               this->clear();
               return accum;
           }
           //------------------------------------------------------------------------//
           // wait to finish
      -    template ::value, int> = 0>
      +    template ::value && std::is_void::value, int> = 0>
           inline void join()
           {
               this->wait();
      @@ -268,6 +295,20 @@ public:
               this->clear();
           }
           //------------------------------------------------------------------------//
      +    // wait to finish
      +    template ::value && !std::is_void::value, int> = 0>
      +    inline void join()
      +    {
      +        this->wait();
      +        for(auto& itr : m_task_set)
      +        {
      +            using RetT = decay_t;
      +            m_join(std::forward(itr.get()));
      +        }
      +        this->clear();
      +    }
      +    //------------------------------------------------------------------------//
           // clear the task result history
           void clear()
           {
      diff --git a/source/externals/ptl/include/PTL/TaskManager.hh b/source/externals/ptl/include/PTL/TaskManager.hh
      index b4e70fbad0..4b7557f7b6 100644
      --- a/source/externals/ptl/include/PTL/TaskManager.hh
      +++ b/source/externals/ptl/include/PTL/TaskManager.hh
      @@ -30,6 +30,7 @@
       
       #pragma once
       
      +#include "PTL/Globals.hh"
       #include "PTL/TBBTaskGroup.hh"
       #include "PTL/Task.hh"
       #include "PTL/TaskGroup.hh"
      @@ -52,9 +53,6 @@ public:
           typedef TaskManager           this_type;
           typedef ThreadPool::size_type size_type;
       
      -    template 
      -    using enable_if_t = typename std::enable_if<_Bp, _Tp>::type;
      -
       public:
           // Constructor and Destructors
           explicit TaskManager(ThreadPool*);
      @@ -89,8 +87,8 @@ public:
           //------------------------------------------------------------------------//
           // direct insertion of a task
           //------------------------------------------------------------------------//
      -    template 
      -    void exec(Task<_Args...>* _task)
      +    template 
      +    void exec(Task* _task)
           {
               m_pool->add_task(_task);
           }
      @@ -98,39 +96,40 @@ public:
           //------------------------------------------------------------------------//
           // direct insertion of a packaged_task
           //------------------------------------------------------------------------//
      -    template 
      -    std::future<_Ret> async(_Func&& func, _Args&&... args)
      +    template 
      +    std::future async(FuncT&& func, Args&&... args)
           {
      -        typedef PackagedTask<_Ret, _Args...> task_type;
      +        typedef PackagedTask  task_type;
               typedef task_type*                   task_pointer;
       
               task_pointer _ptask =
      -            new task_type(std::forward<_Func>(func), std::forward<_Args>(args)...);
      -        std::future<_Ret> _f = _ptask->get_future();
      +            new task_type(std::forward(func), std::forward(args)...);
      +        std::future _f = _ptask->get_future();
               m_pool->add_task(_ptask);
               return _f;
           }
           //------------------------------------------------------------------------//
      -    template 
      -    std::future<_Ret> async(_Func&& func)
      +    template 
      +    std::future async(FuncT&& func)
           {
      -        typedef PackagedTask<_Ret> task_type;
      +        typedef PackagedTask task_type;
               typedef task_type*         task_pointer;
       
      -        task_pointer      _ptask = new task_type(std::forward<_Func>(func));
      -        std::future<_Ret> _f     = _ptask->get_future();
      +        task_pointer      _ptask = new task_type(std::forward(func));
      +        std::future _f     = _ptask->get_future();
               m_pool->add_task(_ptask);
               return _f;
           }
           //------------------------------------------------------------------------//
      -    template ::type>
      -    auto async(_Func&& func, _Args&&... args) -> std::future<_Ret>
      +    template 
      +    auto async(FuncT&& func, Args... args)
      +        -> std::future>
           {
      -        typedef PackagedTask<_Ret, _Args...> task_type;
      +        using RetT = decay_t;
      +        typedef PackagedTask task_type;
       
               auto _ptask =
      -            new task_type(std::forward<_Func>(func), std::forward<_Args>(args)...);
      +            new task_type(std::forward(func), std::forward(args)...);
               auto _f = _ptask->get_future();
               m_pool->add_task(_ptask);
               return _f;
      @@ -141,59 +140,59 @@ public:
           //------------------------------------------------------------------------//
           // public wrap functions
           //------------------------------------------------------------------------//
      -    template 
      -    Task<_Ret, _Arg, _Args...>* wrap(TaskGroup<_Ret, _Arg>& tg, _Func&& func,
      -                                     _Args&&... args)
      +    template 
      +    Task* wrap(TaskGroup& tg, FuncT&& func,
      +                                    Args&&... args)
           {
      -        return tg.wrap(std::forward<_Func>(func), std::forward<_Args>(args)...);
      +        return tg.wrap(std::forward(func), std::forward(args)...);
           }
           //------------------------------------------------------------------------//
      -    template 
      -    Task<_Ret, _Arg>* wrap(TaskGroup<_Ret, _Arg>& tg, _Func&& func)
      +    template 
      +    Task* wrap(TaskGroup& tg, FuncT&& func)
           {
      -        return tg.wrap(std::forward<_Func>(func));
      +        return tg.wrap(std::forward(func));
           }
       
       public:
           //------------------------------------------------------------------------//
           // public exec functions
           //------------------------------------------------------------------------//
      -    template 
      -    void exec(TaskGroup<_Ret, _Arg>& tg, _Func&& func, _Args&&... args)
      +    template 
      +    void exec(TaskGroup& tg, FuncT&& func, Args&&... args)
           {
      -        tg.exec(std::forward<_Func>(func), std::forward<_Args>(args)...);
      +        tg.exec(std::forward(func), std::forward(args)...);
           }
           //------------------------------------------------------------------------//
      -    template 
      -    void exec(TaskGroup<_Ret, _Arg>& tg, _Func&& func)
      +    template 
      +    void exec(TaskGroup& tg, FuncT&& func)
           {
      -        tg.exec(std::forward<_Func>(func));
      +        tg.exec(std::forward(func));
           }
           //------------------------------------------------------------------------//
      -    template 
      -    void rexec(TaskGroup<_Ret, _Arg>& tg, _Func&& func, _Args&&... args)
      +    template 
      +    void rexec(TaskGroup& tg, FuncT&& func, Args&&... args)
           {
      -        tg.exec(std::forward<_Func>(func), std::forward<_Args>(args)...);
      +        tg.exec(std::forward(func), std::forward(args)...);
           }
           //------------------------------------------------------------------------//
      -    template 
      -    void rexec(TaskGroup<_Ret, _Arg>& tg, _Func&& func)
      +    template 
      +    void rexec(TaskGroup& tg, FuncT&& func)
           {
      -        tg.exec(std::forward<_Func>(func));
      +        tg.exec(std::forward(func));
           }
           //------------------------------------------------------------------------//
           // public exec functions (void specializations)
           //------------------------------------------------------------------------//
      -    template 
      -    void rexec(TaskGroup& tg, _Func&& func, _Args&&... args)
      +    template 
      +    void rexec(TaskGroup& tg, FuncT&& func, Args&&... args)
           {
      -        tg.exec(std::forward<_Func>(func), std::forward<_Args>(args)...);
      +        tg.exec(std::forward(func), std::forward(args)...);
           }
           //------------------------------------------------------------------------//
      -    template 
      -    void rexec(TaskGroup& tg, _Func&& func)
      +    template 
      +    void rexec(TaskGroup& tg, FuncT&& func)
           {
      -        tg.exec(std::forward<_Func>(func));
      +        tg.exec(std::forward(func));
           }
           //------------------------------------------------------------------------//
       
      @@ -201,39 +200,39 @@ public:
           //------------------------------------------------------------------------//
           // public wrap functions using TBB tasks
           //------------------------------------------------------------------------//
      -    template 
      -    Task<_Ret, _Arg, _Args...>* wrap(TBBTaskGroup<_Ret, _Arg>& tg, _Func&& func,
      -                                     _Args&&... args)
      +    template 
      +    Task* wrap(TBBTaskGroup& tg, FuncT&& func,
      +                                    Args&&... args)
           {
      -        return tg.wrap(std::forward<_Func>(func), std::forward<_Args>(args)...);
      +        return tg.wrap(std::forward(func), std::forward(args)...);
           }
           //------------------------------------------------------------------------//
      -    template 
      -    Task<_Ret, _Arg>* wrap(TBBTaskGroup<_Ret, _Arg>& tg, _Func&& func)
      +    template 
      +    Task* wrap(TBBTaskGroup& tg, FuncT&& func)
           {
      -        return tg.wrap(std::forward<_Func>(func));
      +        return tg.wrap(std::forward(func));
           }
       
           //------------------------------------------------------------------------//
           // public exec functions using TBB tasks
           //------------------------------------------------------------------------//
      -    template 
      -    void exec(TBBTaskGroup<_Ret, _Arg>& tg, _Func&& func, _Args&&... args)
      +    template 
      +    void exec(TBBTaskGroup& tg, FuncT&& func, Args&&... args)
           {
      -        tg.exec(std::forward<_Func>(func), std::forward<_Args>(args)...);
      +        tg.exec(std::forward(func), std::forward(args)...);
           }
           //------------------------------------------------------------------------//
      -    template 
      -    void exec(TBBTaskGroup<_Ret, _Arg>& tg, _Func&& func)
      +    template 
      +    void exec(TBBTaskGroup& tg, FuncT&& func)
           {
      -        tg.exec(std::forward<_Func>(func));
      +        tg.exec(std::forward(func));
           }
           //------------------------------------------------------------------------//
       #endif
       
       protected:
           // Protected variables
      -    ThreadPool* m_pool;
      +    ThreadPool* m_pool = nullptr;
       
       private:
           static TaskManager*& fgInstance();
      diff --git a/source/externals/ptl/include/PTL/TaskRunManager.hh b/source/externals/ptl/include/PTL/TaskRunManager.hh
      index aa7b7c1bb5..e31f57a634 100644
      --- a/source/externals/ptl/include/PTL/TaskRunManager.hh
      +++ b/source/externals/ptl/include/PTL/TaskRunManager.hh
      @@ -44,8 +44,6 @@ class TaskManager;
       class TaskRunManager
       {
       public:
      -    typedef TaskGroup    RunTaskGroup;
      -    typedef TBBTaskGroup RunTaskGroupTBB;
           typedef TaskRunManager*    pointer;
       
       public:
      diff --git a/source/externals/ptl/include/PTL/ThreadData.hh b/source/externals/ptl/include/PTL/ThreadData.hh
      index e1c18d25d0..f6ba2e8d72 100644
      --- a/source/externals/ptl/include/PTL/ThreadData.hh
      +++ b/source/externals/ptl/include/PTL/ThreadData.hh
      @@ -55,14 +55,14 @@ public:
           // dummy wait
           inline void wait() {}
           // run function
      -    template 
      -    inline void run(_Func f)
      +    template 
      +    inline void run(FuncT f)
           {
               f();
           }
           // run and wait
      -    template 
      -    inline void run_and_wait(_Func f)
      +    template 
      +    inline void run_and_wait(FuncT f)
           {
               f();
           }
      @@ -99,8 +99,8 @@ class VUserTaskQueue;
       class ThreadData
       {
       public:
      -    template 
      -    using TaskStack = std::deque<_Tp>;
      +    template 
      +    using TaskStack = std::deque;
       
           ThreadData(ThreadPool* tp);
           ~ThreadData();
      diff --git a/source/externals/ptl/include/PTL/ThreadPool.hh b/source/externals/ptl/include/PTL/ThreadPool.hh
      index 12982d4649..8b6665d253 100644
      --- a/source/externals/ptl/include/PTL/ThreadPool.hh
      +++ b/source/externals/ptl/include/PTL/ThreadPool.hh
      @@ -53,6 +53,7 @@
       #include 
       #include 
       #include 
      +#include 
       #include 
       #include 
       #include 
      @@ -62,8 +63,8 @@ namespace PTL
       class ThreadPool
       {
       public:
      -    template 
      -    using uomap = std::unordered_map<_KeyType, _MappedType, std::hash<_HashType>>;
      +    template 
      +    using uomap = std::unordered_map>;
       
           // pod-types
           using size_type        = size_t;
      @@ -82,8 +83,9 @@ public:
           typedef std::vector             bool_list_t;
           typedef std::map thread_id_map_t;
           typedef std::map thread_index_map_t;
      -    typedef std::function         initialize_func_t;
      +    using thread_vec_t = std::vector;
           // functions
      +    typedef std::function             initialize_func_t;
           typedef std::function affinity_func_t;
       
       public:
      @@ -110,6 +112,9 @@ public:
           size_type destroy_threadpool();              // destroy the threads
           size_type stop_thread();
       
      +    template 
      +    void execute_on_all_threads(FuncT&& _func);
      +
       public:
           // Public functions related to TBB
           static bool using_tbb();
      @@ -121,8 +126,8 @@ public:
           size_type add_task(task_pointer task, int bin = -1);
           // size_type add_thread_task(ThreadId id, task_pointer&& task);
           // add a generic container with iterator
      -    template 
      -    size_type add_tasks(_List_t&);
      +    template 
      +    size_type add_tasks(ListT&);
       
           Thread* get_thread(size_type _n) const;
           Thread* get_thread(std::thread::id id) const;
      @@ -161,14 +166,14 @@ public:
           void set_affinity(affinity_func_t f) { m_affinity_func = f; }
           void set_affinity(intmax_t i, Thread&);
       
      -    void SetVerbose(int n) { m_verbose = n; }
      -    int  GetVerbose() const { return m_verbose; }
      +    void set_verbose(int n) { m_verbose = n; }
      +    int  get_verbose() const { return m_verbose; }
           bool is_master() const { return ThisThread::get_id() == m_master_tid; }
       
       public:
           // read FORCE_NUM_THREADS environment variable
      -    static const thread_id_map_t& GetThreadIDs();
      -    static uintmax_t              GetThisThreadID();
      +    static const thread_id_map_t& get_thread_ids();
      +    static uintmax_t              get_this_thread_id();
       
       protected:
           void execute_thread(VUserTaskQueue*);  // function thread sits in
      @@ -214,6 +219,7 @@ private:
           bool_list_t   m_is_stopped;    // lets thread know to stop
           thread_list_t m_main_threads;  // storage for active threads
           thread_list_t m_stop_threads;  // storage for stopped threads
      +    thread_vec_t  m_threads;
       
           // task queue
           task_queue_t*     m_task_queue;
      @@ -332,9 +338,9 @@ ThreadPool::add_task(task_pointer task, int bin)
           return static_cast(insert(task, bin));
       }
       //--------------------------------------------------------------------------------------//
      -template 
      +template 
       inline ThreadPool::size_type
      -ThreadPool::add_tasks(_List_t& c)
      +ThreadPool::add_tasks(ListT& c)
       {
           if(!m_alive_flag)  // if we haven't built thread-pool, just execute
           {
      @@ -363,6 +369,117 @@ ThreadPool::add_tasks(_List_t& c)
       
           return c_size;
       }
      +//--------------------------------------------------------------------------------------//
      +template 
      +inline void
      +ThreadPool::execute_on_all_threads(FuncT&& _func)
      +{
      +    if(m_tbb_tp && m_tbb_task_group)
      +    {
      +#if defined(PTL_USE_TBB)
      +        // TBB lazily activates threads to process tasks and the master thread
      +        // participates in processing the tasks so getting a specific
      +        // function to execute only on the worker threads requires some trickery
      +        //
      +        auto                      master_tid = ThisThread::get_id();
      +        std::set _first;
      +        Mutex                     _mutex;
      +        // init function which executes function and returns 1 only once
      +        auto _init = [&]() {
      +            static thread_local int _once = 0;
      +            _mutex.lock();
      +            if(_first.find(std::this_thread::get_id()) == _first.end())
      +            {
      +                // we need to reset this thread-local static for multiple invocations
      +                // of the same template instantiation
      +                _once = 0;
      +                _first.insert(std::this_thread::get_id());
      +            }
      +            _mutex.unlock();
      +            if(_once++ == 0)
      +            {
      +                _func();
      +                return 1;
      +            }
      +            return 0;
      +        };
      +        // consumes approximately N milliseconds of cpu time
      +        auto _consume = [](long n) {
      +            using stl_mutex_t   = std::mutex;
      +            using unique_lock_t = std::unique_lock;
      +            // a mutex held by one lock
      +            stl_mutex_t mutex;
      +            // acquire lock
      +            unique_lock_t hold_lk(mutex);
      +            // associate but defer
      +            unique_lock_t try_lk(mutex, std::defer_lock);
      +            // get current time
      +            auto now = std::chrono::steady_clock::now();
      +            // try until time point
      +            while(std::chrono::steady_clock::now() < (now + std::chrono::milliseconds(n)))
      +                try_lk.try_lock();
      +        };
      +        // this will collect the number of threads which have
      +        // executed the _init function above
      +        std::atomic _total_init{ 0 };
      +        // this is the task passed to the task-group
      +        auto _init_task = [&]() {
      +            int _ret = 0;
      +            // don't let the master thread execute the function
      +            if(ThisThread::get_id() != master_tid)
      +            {
      +                // execute the function
      +                _ret = _init();
      +                // add the result
      +                _total_init += _ret;
      +            }
      +            // if the function did not return anything, put it to sleep
      +            // so TBB will wake other threads to execute the remaining tasks
      +            if(_ret == 0)
      +                _consume(100);
      +        };
      +
      +        // TBB won't oversubscribe so we need to limit by ncores - 1
      +        size_t nitr  = 0;
      +        size_t _maxp = tbb_global_control()->active_value(
      +            tbb::global_control::max_allowed_parallelism);
      +        size_t _sz         = size();
      +        size_t _ncore      = Threading::GetNumberOfCores() - 1;
      +        size_t _num        = std::min(_maxp, std::min(_sz, _ncore));
      +        auto   _fname      = __FUNCTION__;
      +        auto   _write_info = [&]() {
      +            std::cerr << "[" << _fname << "]> Total initalized: " << _total_init
      +                      << ", expected: " << _num << ", max-parallel: " << _maxp
      +                      << ", size: " << _sz << ", ncore: " << _ncore << std::endl;
      +        };
      +        while(_total_init < _num)
      +        {
      +            auto _n = _num;
      +            while(--_n > 0)
      +                m_tbb_task_group->run(_init_task);
      +            m_tbb_task_group->wait();
      +            // don't loop infinitely but use a strict condition
      +            if(nitr++ > 2 * (_num + 1) && (_total_init - 1) == _num)
      +            {
      +                _write_info();
      +                break;
      +            }
      +            // at this point we need to exit
      +            if(nitr > 4 * (_ncore + 1))
      +            {
      +                _write_info();
      +                break;
      +            }
      +        }
      +        if(get_verbose() > 3)
      +            _write_info();
      +#endif
      +    }
      +    else if(get_queue())
      +    {
      +        get_queue()->ExecuteOnAllThreads(this, std::forward(_func));
      +    }
      +}
       //======================================================================================//
       
       }  // namespace PTL
      diff --git a/source/externals/ptl/include/PTL/Threading.hh b/source/externals/ptl/include/PTL/Threading.hh
      index 2e63778db9..39f7c2a01e 100644
      --- a/source/externals/ptl/include/PTL/Threading.hh
      +++ b/source/externals/ptl/include/PTL/Threading.hh
      @@ -42,12 +42,12 @@ namespace PTL
       #define THREADSLEEP(tick) std::this_thread::sleep_for(std::chrono::seconds(tick))
       
       // will be used in the future when migrating threading to task-based style
      -template 
      -using Future = std::future<_Tp>;
      -template 
      -using SharedFuture = std::shared_future<_Tp>;
      -template 
      -using Promise = std::promise<_Tp>;
      +template 
      +using Future = std::future;
      +template 
      +using SharedFuture = std::shared_future;
      +template 
      +using Promise = std::promise;
       
       //
       //          NOTE ON Tasking SERIAL BUILDS AND MUTEX/UNIQUE_LOCK
      @@ -94,12 +94,12 @@ using namespace std::this_thread;
       
       // will be used in the future when migrating threading to task-based style
       // and are currently used in unit tests
      -template 
      -using Promise = std::promise<_Tp>;
      -template 
      -using Future = std::future<_Tp>;
      -template 
      -using SharedFuture = std::shared_future<_Tp>;
      +template 
      +using Promise = std::promise;
      +template 
      +using Future = std::future;
      +template 
      +using SharedFuture = std::shared_future;
       
       // Some useful types
       typedef void* ThreadFunReturnType;
      @@ -113,7 +113,7 @@ typedef int (*thread_unlock)(Mutex*);
       //		a template class "Cache" that required a static
       //		mutex for specific to type T:
       //			AutoLock l(TypeMutex>());
      -template 
      +template 
       Mutex&
       TypeMutex(const unsigned int& _n = 0)
       {
      @@ -135,7 +135,7 @@ TypeMutex(const unsigned int& _n = 0)
       //		a template class "Cache" that required a static
       //		recursive_mutex for specific to type T:
       //			RecursiveAutoLock l(TypeRecursiveMutex>());
      -template 
      +template 
       RecursiveMutex&
       TypeRecursiveMutex(const unsigned int& _n = 0)
       {
      @@ -175,11 +175,11 @@ typedef std::thread::id Pid_t;
       
       // Instead of previous macro taking one argument, define function taking
       // unlimited arguments
      -template 
      +template 
       void
      -THREADCREATE(_Worker*& worker, _Func func, _Args... args)
      +THREADCREATE(WorkerT*& worker, FuncT func, Args... args)
       {
      -    *worker = Thread(func, std::forward<_Args>(args)...);
      +    *worker = Thread(func, std::forward(args)...);
       }
       
       // Conditions
      diff --git a/source/externals/ptl/include/PTL/Tuple.hh b/source/externals/ptl/include/PTL/Tuple.hh
      index 6bde1bff21..e200b4020e 100644
      --- a/source/externals/ptl/include/PTL/Tuple.hh
      +++ b/source/externals/ptl/include/PTL/Tuple.hh
      @@ -25,10 +25,10 @@
       
       namespace PTL
       {
      -template 
      +template 
       struct SmallerThanT
       {
      -    static constexpr bool value = sizeof(_Tp) < sizeof(_Up);
      +    static constexpr bool value = sizeof(Tp) < sizeof(Up);
       };
       
       //======================================================================================//
      @@ -38,54 +38,54 @@ struct SmallerThanT
       // useful to work with sequences of compile-time values, such as the bounds of a
       // multidimensional array or indices into another typelist.
       
      -template 
      +template 
       struct CTValue
       {
      -    static constexpr _Tp value = Value;
      +    static constexpr Tp value = Value;
       };
       
       //======================================================================================//
       
      -template ::value && !std::is_final<_Tp>::value>
      +template ::value && !std::is_final::value>
       class TupleElt;
       
       //--------------------------------------------------------------------------------------//
       //  specialization that does not satisfy is_class<> and not is_final<>
       //
      -template 
      -class TupleElt
      +template 
      +class TupleElt
       {
      -    _Tp value;
      +    Tp value;
       
       public:
           TupleElt() = default;
       
      -    template 
      -    TupleElt(_Up&& other)
      -    : value(std::forward<_Up>(other))
      +    template 
      +    TupleElt(Up&& other)
      +    : value(std::forward(other))
           {}
       
      -    _Tp&       get() { return value; }
      -    _Tp const& get() const { return value; }
      +    Tp&       get() { return value; }
      +    Tp const& get() const { return value; }
       };
       
       //--------------------------------------------------------------------------------------//
       //  specialization that does satisfy is_class<> and not is_final<>
       //
      -template 
      -class TupleElt : private _Tp
      +template 
      +class TupleElt : private Tp
       {
       public:
           TupleElt() = default;
       
      -    template 
      -    explicit TupleElt(_Up&& other)
      -    : _Tp(std::forward<_Up>(other))
      +    template 
      +    explicit TupleElt(Up&& other)
      +    : Tp(std::forward(other))
           {}
       
      -    _Tp&       get() { return *this; }
      -    const _Tp& get() const { return *this; }
      +    Tp&       get() { return *this; }
      +    const Tp& get() const { return *this; }
       };
       
       //======================================================================================//
      @@ -141,8 +141,8 @@ get(Tuple& t) -> decltype(get_height(t
           return get_height(t);
       }
       
      -template 
      -using TypeList = Tuple<_Tp...>;
      +template 
      +using TypeList = Tuple;
       
       //======================================================================================//
       
      diff --git a/source/externals/ptl/include/PTL/Types.hh b/source/externals/ptl/include/PTL/Types.hh
      index a71f3b9e46..a3b1d703e0 100644
      --- a/source/externals/ptl/include/PTL/Types.hh
      +++ b/source/externals/ptl/include/PTL/Types.hh
      @@ -126,15 +126,15 @@ public:
           static void set_max_depth(const int64_t& val) { fmax_depth = val; }
           static bool is_enabled() { return fenabled; }
       
      -    template ::value>::type* = nullptr>
      +    template ::value>::type* = nullptr>
           static bool enable()
           {
               return fenabled && fmax_depth > count();
           }
           // the void type is consider the global setting
      -    template ::value>::type* = nullptr>
      +    template ::value>::type* = nullptr>
           static bool enable()
           {
               return void_type::is_enabled() && void_type::max_depth() > count() && fenabled &&
      diff --git a/source/externals/ptl/include/PTL/Utility.hh b/source/externals/ptl/include/PTL/Utility.hh
      index 8a022eb66e..2966824c8c 100644
      --- a/source/externals/ptl/include/PTL/Utility.hh
      +++ b/source/externals/ptl/include/PTL/Utility.hh
      @@ -39,20 +39,20 @@ namespace PTL
       //--------------------------------------------------------------------------------------//
       // use this function to get rid of "unused parameter" warnings
       //
      -template 
      +template 
       void
      -ConsumeParameters(_Args...)
      +ConsumeParameters(Args...)
       {}
       
       //--------------------------------------------------------------------------------------//
       // a non-string environment option with a string identifier
      -template 
      -using EnvChoice = std::tuple<_Tp, std::string, std::string>;
      +template 
      +using EnvChoice = std::tuple;
       
       //--------------------------------------------------------------------------------------//
       // list of environment choices with non-string and string identifiers
      -template 
      -using EnvChoiceList = std::set>;
      +template 
      +using EnvChoiceList = std::set>;
       
       //--------------------------------------------------------------------------------------//
       
      @@ -72,8 +72,8 @@ public:
           }
       
       public:
      -    template 
      -    void insert(const std::string& env_id, _Tp val)
      +    template 
      +    void insert(const std::string& env_id, Tp val)
           {
               std::stringstream ss;
               ss << std::boolalpha << val;
      @@ -91,10 +91,10 @@ public:
               m_mutex.unlock();
           }
       
      -    template 
      -    void insert(const std::string& env_id, EnvChoice<_Tp> choice)
      +    template 
      +    void insert(const std::string& env_id, EnvChoice choice)
           {
      -        _Tp&         val      = std::get<0>(choice);
      +        Tp&          val      = std::get<0>(choice);
               std::string& str_val  = std::get<1>(choice);
               std::string& descript = std::get<2>(choice);
       
      @@ -150,23 +150,23 @@ private:
       //          GetEnv("FORCENUMBEROFTHREADS",
       //                          std::thread::hardware_concurrency());
       //
      -template 
      -_Tp
      -GetEnv(const std::string& env_id, _Tp _default = _Tp())
      +template 
      +Tp
      +GetEnv(const std::string& env_id, Tp _default = Tp())
       {
           char* env_var = std::getenv(env_id.c_str());
           if(env_var)
           {
               std::string        str_var = std::string(env_var);
               std::istringstream iss(str_var);
      -        _Tp                var = _Tp();
      +        Tp                 var = Tp();
               iss >> var;
               // record value defined by environment
      -        EnvSettings::GetInstance()->insert<_Tp>(env_id, var);
      +        EnvSettings::GetInstance()->insert(env_id, var);
               return var;
           }
           // record default value
      -    EnvSettings::GetInstance()->insert<_Tp>(env_id, _default);
      +    EnvSettings::GetInstance()->insert(env_id, _default);
       
           // return default if not specified in environment
           return _default;
      @@ -207,25 +207,25 @@ GetEnv(const std::string& env_id, bool _default)
       //--------------------------------------------------------------------------------------//
       //  overload for GetEnv + message when set
       //
      -template 
      -_Tp
      -GetEnv(const std::string& env_id, _Tp _default, const std::string& msg)
      +template 
      +Tp
      +GetEnv(const std::string& env_id, Tp _default, const std::string& msg)
       {
           char* env_var = std::getenv(env_id.c_str());
           if(env_var)
           {
               std::string        str_var = std::string(env_var);
               std::istringstream iss(str_var);
      -        _Tp                var = _Tp();
      +        Tp                 var = Tp();
               iss >> var;
               std::cout << "Environment variable \"" << env_id << "\" enabled with "
                         << "value == " << var << ". " << msg << std::endl;
               // record value defined by environment
      -        EnvSettings::GetInstance()->insert<_Tp>(env_id, var);
      +        EnvSettings::GetInstance()->insert(env_id, var);
               return var;
           }
           // record default value
      -    EnvSettings::GetInstance()->insert<_Tp>(env_id, _default);
      +    EnvSettings::GetInstance()->insert(env_id, _default);
       
           // return default if not specified in environment
           return _default;
      @@ -241,9 +241,9 @@ GetEnv(const std::string& env_id, _Tp _default, const std::string& msg)
       //
       //      int eInterp = GetEnv("INTERPOLATION", choices, CUBIC);
       //
      -template 
      -_Tp
      -GetEnv(const std::string& env_id, const EnvChoiceList<_Tp>& _choices, _Tp _default)
      +template 
      +Tp
      +GetEnv(const std::string& env_id, const EnvChoiceList& _choices, Tp _default)
       {
           auto asupper = [](std::string var) {
               for(auto& itr : var)
      @@ -256,7 +256,7 @@ GetEnv(const std::string& env_id, const EnvChoiceList<_Tp>& _choices, _Tp _defau
           {
               std::string str_var = std::string(env_var);
               std::string upp_var = asupper(str_var);
      -        _Tp         var     = _Tp();
      +        Tp          var     = Tp();
               // check to see if string matches a choice
               for(const auto& itr : _choices)
               {
      @@ -302,7 +302,7 @@ GetEnv(const std::string& env_id, const EnvChoiceList<_Tp>& _choices, _Tp _defau
               }
       
           // record default value
      -    EnvSettings::GetInstance()->insert(env_id, EnvChoice<_Tp>(_default, _name, _desc));
      +    EnvSettings::GetInstance()->insert(env_id, EnvChoice(_default, _name, _desc));
       
           // return default if not specified in environment
           return _default;
      @@ -310,9 +310,9 @@ GetEnv(const std::string& env_id, const EnvChoiceList<_Tp>& _choices, _Tp _defau
       
       //--------------------------------------------------------------------------------------//
       
      -template 
      -_Tp
      -GetChoice(const EnvChoiceList<_Tp>& _choices, const std::string str_var)
      +template 
      +Tp
      +GetChoice(const EnvChoiceList& _choices, const std::string str_var)
       {
           auto asupper = [](std::string var) {
               for(auto& itr : var)
      @@ -321,7 +321,7 @@ GetChoice(const EnvChoiceList<_Tp>& _choices, const std::string str_var)
           };
       
           std::string upp_var = asupper(str_var);
      -    _Tp         var     = _Tp();
      +    Tp          var     = Tp();
           // check to see if string matches a choice
           for(const auto& itr : _choices)
           {
      diff --git a/source/externals/ptl/include/PTL/VTaskGroup.hh b/source/externals/ptl/include/PTL/VTaskGroup.hh
      index c5a828a767..3616b62e7c 100644
      --- a/source/externals/ptl/include/PTL/VTaskGroup.hh
      +++ b/source/externals/ptl/include/PTL/VTaskGroup.hh
      @@ -50,15 +50,13 @@ namespace PTL
       {
       class ThreadPool;
       
      -#define _MOVE_MEMBER(_member) _member = std::move(rhs._member)
      -
       class VTaskGroup
       {
       public:
      -    template 
      -    using container_type = std::vector<_Tp>;
      -    template 
      -    using list_type = std::vector<_Tp>;
      +    template 
      +    using container_type = std::vector;
      +    template 
      +    using list_type = std::vector;
       
           typedef VTaskGroup                   this_type;
           typedef std::thread::id              tid_type;
      @@ -154,7 +152,4 @@ VTaskGroup::clear()
       
       //--------------------------------------------------------------------------------------//
       
      -// don't pollute
      -#undef _MOVE_MEMBER
      -
       }  // namespace PTL
      diff --git a/source/externals/ptl/include/PTL/VUserTaskQueue.hh b/source/externals/ptl/include/PTL/VUserTaskQueue.hh
      index 0c084b9011..5f6a6c0619 100644
      --- a/source/externals/ptl/include/PTL/VUserTaskQueue.hh
      +++ b/source/externals/ptl/include/PTL/VUserTaskQueue.hh
      @@ -114,44 +114,43 @@ public:
           // virtual uintmax_t operator--(int) = 0;
       
       public:
      -    template 
      -    static auto ContainerToTupleImpl(_Container&& container,
      -                                     details::index_sequence)
      -        -> decltype(std::make_tuple(std::forward<_Container>(container)[Idx]...))
      +    template 
      +    static auto ContainerToTupleImpl(ContainerT&& container, mpl::index_sequence)
      +        -> decltype(std::make_tuple(std::forward(container)[Idx]...))
           {
      -        return std::make_tuple(std::forward<_Container>(container)[Idx]...);
      +        return std::make_tuple(std::forward(container)[Idx]...);
           }
       
      -    template 
      -    static auto ContainerToTuple(_Container&& container)
      -        -> decltype(ContainerToTupleImpl(std::forward<_Container>(container),
      -                                         details::make_index_sequence<_N>{}))
      +    template 
      +    static auto ContainerToTuple(ContainerT&& container)
      +        -> decltype(ContainerToTupleImpl(std::forward(container),
      +                                         mpl::make_index_sequence{}))
           {
      -        return ContainerToTupleImpl(std::forward<_Container>(container),
      -                                    details::make_index_sequence<_N>{});
      +        return ContainerToTupleImpl(std::forward(container),
      +                                    mpl::make_index_sequence{});
           }
       
      -    template  = 0>
      -    static void _Executor(_Tuple&& _t)
      +    template  = 0>
      +    static void TExecutor(TupleT&& _t)
           {
      -        if(std::get<_N>(_t).get())
      -            (*(std::get<_N>(_t)))();
      +        if(std::get(_t).get())
      +            (*(std::get(_t)))();
           }
       
      -    template  = 0>
      -    static void _Executor(_Tuple&& _t)
      +    template  = 0>
      +    static void TExecutor(TupleT&& _t)
           {
      -        if(std::get<_N>(_t).get())
      -            (*(std::get<_N>(_t)))();
      -        _Executor<_N + 1, _Nt, _Tuple>(std::forward<_Tuple>(_t));
      +        if(std::get(_t).get())
      +            (*(std::get(_t)))();
      +        TExecutor(std::forward(_t));
           }
       
      -    template >::value>
      -    static void Executor(_Tuple&& __t)
      +    template >::value>
      +    static void Executor(TupleT&& __t)
           {
      -        _Executor<0, _N - 1, _Tuple>(std::forward<_Tuple>(__t));
      +        TExecutor<0, N - 1, TupleT>(std::forward(__t));
           }
       
           template ("PTL_VERBOSE", m_verbose);
       
      -    auto master_id = GetThisThreadID();
      +    auto master_id = get_this_thread_id();
           if(master_id != 0 && m_verbose > 1)
               std::cerr << "ThreadPool created on non-master slave" << std::endl;
       
           thread_data() = new ThreadData(this);
       
      -    // initialize after GetThisThreadID so master is zero
      +    // initialize after get_this_thread_id so master is zero
           this->initialize_threadpool(pool_size);
       
           if(!m_task_queue)
      @@ -171,76 +171,20 @@ ThreadPool::ThreadPool(const size_type& pool_size, VUserTaskQueue* task_queue,
       
       ThreadPool::~ThreadPool()
       {
      -    //------------------------------------------------------------------------//
      -    // set state to stopped
      -    m_pool_state->store(thread_pool::state::STOPPED);
      -
      -    //------------------------------------------------------------------------//
      -    // notify all threads we are shutting down
      -    m_task_lock->lock();
      -    CONDITIONBROADCAST(m_task_cond.get());
      -    m_task_lock->unlock();
      -
      -    //--------------------------------------------------------------------//
      -    // set to dead
      -    m_alive_flag->store(false);
      -
      -    //--------------------------------------------------------------------//
      -    // delete tbb task scheduler
      -#ifdef PTL_USE_TBB
      -    if(m_tbb_tp && tbb_global_control())
      +    if(m_alive_flag->load())
           {
      -        tbb_global_control_t*& _global_control = tbb_global_control();
      -        delete _global_control;
      -        _global_control = nullptr;
      -        m_tbb_tp        = false;
      -        std::cout << "ThreadPool [TBB] destroyed" << std::endl;
      +        std::cerr << "Warning! ThreadPool was not properly destroyed! Call "
      +                     "destroy_threadpool() before deleting the ThreadPool object to "
      +                     "eliminate this message."
      +                  << std::endl;
      +        m_pool_state->store(thread_pool::state::STOPPED);
      +        m_task_lock->lock();
      +        CONDITIONBROADCAST(m_task_cond.get());
      +        m_task_lock->unlock();
      +        for(auto& itr : m_threads)
      +            itr.join();
      +        m_threads.clear();
           }
      -
      -    //--------------------------------------------------------------------//
      -    // delete tbb task-group
      -    if(m_tbb_task_group)
      -    {
      -        m_tbb_task_group->wait();
      -        delete m_tbb_task_group;
      -        m_tbb_task_group = nullptr;
      -    }
      -#endif
      -
      -    auto _tid = std::this_thread::get_id();
      -    if(f_thread_ids.find(_tid) != f_thread_ids.end())
      -        f_thread_ids.erase(f_thread_ids.find(_tid));
      -
      -    for(auto& itr : m_main_threads)
      -        if(f_thread_ids.find(itr) != f_thread_ids.end())
      -            f_thread_ids.erase(f_thread_ids.find(itr));
      -
      -    m_thread_awake.reset();
      -
      -    std::cout << "ThreadPool destroyed" << std::endl;
      -
      -    /*
      -    // Release resources
      -    if(m_pool_state.load() != thread_pool::state::STOPPED)
      -    {
      -        size_type ret = destroy_threadpool();
      -        while(ret > 0)
      -            ret = stop_thread();
      -    }
      -
      -    // wait until thread pool is fully destroyed
      -    while(is_alive())
      -        ;
      -
      -    // delete thread-local allocator and erase thread IDS
      -    auto      _tid = std::this_thread::get_id();
      -
      -    if(f_thread_ids.find(_tid) != f_thread_ids.end())
      -        f_thread_ids.erase(f_thread_ids.find(_tid));
      -
      -    // deleted by ThreadData
      -    // delete m_task_queue;
      -    */
       }
       
       //======================================================================================//
      @@ -319,25 +263,6 @@ ThreadPool::initialize_threadpool(size_type proposed_size)
                   m_tbb_task_group = new tbb_task_group_t();
               return m_pool_size;
           }
      -
      -    // NOLINT(readability-else-after-return)
      -    if(f_use_tbb && tbb_global_control())
      -    {
      -        m_tbb_tp                               = false;
      -        tbb_global_control_t*& _global_control = tbb_global_control();
      -        if(_global_control)
      -        {
      -            delete _global_control;
      -            _global_control = nullptr;
      -        }
      -        // delete task group (used for async)
      -        if(m_tbb_task_group)
      -        {
      -            m_tbb_task_group->wait();
      -            delete m_tbb_task_group;
      -            m_tbb_task_group = nullptr;
      -        }
      -    }
       #endif
       
           m_alive_flag->store(true);
      @@ -379,24 +304,24 @@ ThreadPool::initialize_threadpool(size_type proposed_size)
               m_is_joined.reserve(proposed_size);
           }
       
      -    auto this_tid = GetThisThreadID();
      +    auto this_tid = get_this_thread_id();
           for(size_type i = m_pool_size; i < proposed_size; ++i)
           {
               // add the threads
               try
               {
      -            Thread tid(ThreadPool::start_thread, this, this_tid + i + 1);
      +            Thread thr(ThreadPool::start_thread, this, this_tid + i + 1);
                   // only reaches here if successful creation of thread
                   ++m_pool_size;
                   // store thread
      -            m_main_threads.push_back(tid.get_id());
      +            m_main_threads.push_back(thr.get_id());
                   // list of joined thread booleans
                   m_is_joined.push_back(false);
                   // set the affinity
                   if(m_use_affinity)
      -                set_affinity(i, tid);
      -            // detach
      -            tid.detach();
      +                set_affinity(i, thr);
      +            // store
      +            m_threads.emplace_back(std::move(thr));
               } catch(std::runtime_error& e)
               {
                   std::cerr << e.what() << std::endl;  // issue creating thread
      @@ -450,6 +375,12 @@ ThreadPool::destroy_threadpool()
           //--------------------------------------------------------------------//
           // handle tbb task scheduler
       #ifdef PTL_USE_TBB
      +    if(m_tbb_task_group)
      +    {
      +        m_tbb_task_group->wait();
      +        delete m_tbb_task_group;
      +        m_tbb_task_group = nullptr;
      +    }
           if(m_tbb_tp && tbb_global_control())
           {
               tbb_global_control_t*& _global_control = tbb_global_control();
      @@ -458,12 +389,6 @@ ThreadPool::destroy_threadpool()
               m_tbb_tp        = false;
               std::cout << "ThreadPool [TBB] destroyed" << std::endl;
           }
      -    if(m_tbb_task_group)
      -    {
      -        m_tbb_task_group->wait();
      -        delete m_tbb_task_group;
      -        m_tbb_task_group = nullptr;
      -    }
       #endif
       
           if(!m_alive_flag->load())
      @@ -488,6 +413,11 @@ ThreadPool::destroy_threadpool()
       
           for(size_type i = 0; i < m_is_joined.size(); i++)
           {
      +        //--------------------------------------------------------------------//
      +        //
      +        if(i < m_threads.size())
      +            m_threads.at(i).join();
      +
               //--------------------------------------------------------------------//
               // if its joined already, nothing else needs to be done
               if(m_is_joined.at(i))
      @@ -517,9 +447,9 @@ ThreadPool::destroy_threadpool()
               //--------------------------------------------------------------------//
           }
       
      +    m_threads.clear();
           m_main_threads.clear();
           m_is_joined.clear();
      -
           m_alive_flag->store(false);
       
           auto start   = std::chrono::steady_clock::now();
      diff --git a/source/externals/ptl/src/UserTaskQueue.cc b/source/externals/ptl/src/UserTaskQueue.cc
      index c4ab5ba7f5..65cfeca465 100644
      --- a/source/externals/ptl/src/UserTaskQueue.cc
      +++ b/source/externals/ptl/src/UserTaskQueue.cc
      @@ -37,8 +37,8 @@ using namespace PTL;
       UserTaskQueue::UserTaskQueue(intmax_t nworkers, UserTaskQueue* parent)
       : VUserTaskQueue(nworkers)
       , m_is_clone((parent) ? true : false)
      -, m_thread_bin((parent) ? (ThreadPool::GetThisThreadID() % (nworkers + 1)) : 0)
      -, m_insert_bin((parent) ? (ThreadPool::GetThisThreadID() % (nworkers + 1)) : 0)
      +, m_thread_bin((parent) ? (ThreadPool::get_this_thread_id() % (nworkers + 1)) : 0)
      +, m_insert_bin((parent) ? (ThreadPool::get_this_thread_id() % (nworkers + 1)) : 0)
       , m_hold((parent) ? parent->m_hold : new std::atomic_bool(false))
       , m_ntasks((parent) ? parent->m_ntasks : new std::atomic_uintmax_t(0))
       , m_subqueues((parent) ? parent->m_subqueues : new TaskSubQueueContainer())
      @@ -55,7 +55,7 @@ UserTaskQueue::UserTaskQueue(intmax_t nworkers, UserTaskQueue* parent)
           {
               RecursiveAutoLock l(TypeRecursiveMutex());
               std::stringstream ss;
      -        ss << ThreadPool::GetThisThreadID() << "> " << ThisThread::get_id() << " ["
      +        ss << ThreadPool::get_this_thread_id() << "> " << ThisThread::get_id() << " ["
                  << __FUNCTION__ << ":" << __LINE__ << "] "
                  << "this = " << this << ", "
                  << "clone = " << std::boolalpha << m_is_clone << ", "
      @@ -128,7 +128,7 @@ UserTaskQueue::GetThreadBin() const
       {
           // get a thread id number
           static thread_local intmax_t tl_bin =
      -        (m_thread_bin + ThreadPool::GetThisThreadID()) % (m_workers + 1);
      +        (m_thread_bin + ThreadPool::get_this_thread_id()) % (m_workers + 1);
           return tl_bin;
       }
       
      diff --git a/source/externals/ptl/src/VTask.cc b/source/externals/ptl/src/VTask.cc
      index a062bb2768..c0769589e7 100644
      --- a/source/externals/ptl/src/VTask.cc
      +++ b/source/externals/ptl/src/VTask.cc
      @@ -78,7 +78,7 @@ VTask::operator--()
                       m_group->task_cond()->notify_all();
                   } catch(std::system_error& e)
                   {
      -                auto     tid = ThreadPool::GetThisThreadID();
      +                auto     tid = ThreadPool::get_this_thread_id();
                       AutoLock l(TypeMutex(), std::defer_lock);
                       if(!l.owns_lock())
                           l.lock();
      diff --git a/source/externals/zlib/History b/source/externals/zlib/History
      index e744b6ae1b..c33527443e 100644
      --- a/source/externals/zlib/History
      +++ b/source/externals/zlib/History
      @@ -19,6 +19,10 @@ committal in the CVS repository !
       History file for G4 zlib package
       --------------------------------
       
      +29 October 2020 Ben Morgan (zlib-V10-06-01)
      +- sources.cmake: remove include of obsolete CMake module,
      +  update for full migration to new CMake system.
      +
       28 May 2020 Ben Morgan (zlib-V10-06-00)
       - sources.cmake: Add needed include directories to G4zlib
         module when using new cmake system.
      diff --git a/source/externals/zlib/sources.cmake b/source/externals/zlib/sources.cmake
      index 4b820cdef1..6c22021bc4 100644
      --- a/source/externals/zlib/sources.cmake
      +++ b/source/externals/zlib/sources.cmake
      @@ -85,8 +85,6 @@ configure_file(	${CMAKE_CURRENT_SOURCE_DIR}/src/zconf.h.cmakein
       #
       # Define the Geant4 Module.
       #
      -include(Geant4MacroDefineModule)
      -#
       #   headers listed under Sources are internal zlib headers
       #   Private headers are in src!
       include_directories(include)
      @@ -137,9 +135,6 @@ GEANT4_DEFINE_MODULE(NAME G4zlib
           LINK_LIBRARIES
       )
       # List any source specific properties here
      -# List any source specific properties here
      -if(GEANT4_USE_NEW_CMAKE)
      -  geant4_module_include_directories(G4zlib
      -    PUBLIC $
      -    )
      -endif()
      +geant4_module_include_directories(G4zlib
      +  PUBLIC $
      +)
      diff --git a/source/g3tog4/include/G3toG4Defs.hh b/source/g3tog4/include/G3toG4Defs.hh
      old mode 100755
      new mode 100644
      diff --git a/source/geometry/History b/source/geometry/History
      index d87130aaa0..3cb0fd5d3d 100644
      --- a/source/geometry/History
      +++ b/source/geometry/History
      @@ -16,13 +16,17 @@ committal in the CVS repository !
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
       
      +November 16, 2020 Gabriele Cosmo           geometry-V10-06-01
      +--------------------------------
      +- Fixed typos in printed-out text. Addressing problem report #2285.
      +
       December 10, 2019 Ben Morgan               geometry-V10-06-00
       ----------------------------
       - Cleanup CMake build, removing obsolete granular library options and
         explicit include_directories.
       
      -June  5, 2019 J.Apostolakis                 geometry-V10-05-01
      ----------------------------
      +June  5, 2019 John Apostolakis             geometry-V10-05-01
      +------------------------------
       - Change CMakeLists.txt in test directories to allow optional use
         with integrated testing, while keeping existing use case for
         one-target builds when G4TARGET is defined.
      diff --git a/source/geometry/biasing/include/G4VGCellFinder.hh b/source/geometry/biasing/include/G4VGCellFinder.hh
      index 65192dbf68..42fba1c3a8 100644
      --- a/source/geometry/biasing/include/G4VGCellFinder.hh
      +++ b/source/geometry/biasing/include/G4VGCellFinder.hh
      @@ -29,7 +29,7 @@
       //
       // An interface of an GCellFinder. The G4GeometryCell is obtained
       // in the parallel geometry from G4VParallelStepper and in the
      -// mass geometry from G4Step. This interface allows to implement
      +// mass geometry from G4Step. This interface allows one to implement
       // the two different ways to get a G4GeometryCell used by a process.
       
       // Author: Michael Dressel (CERN), 2002
      diff --git a/source/geometry/magneticfield/History b/source/geometry/magneticfield/History
      index b05f2e057b..606ea6bb25 100644
      --- a/source/geometry/magneticfield/History
      +++ b/source/geometry/magneticfield/History
      @@ -15,6 +15,84 @@ committal in the CVS repository !
            ----------------------------------------------------------
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
      +November 26, 2020 J.Apostolakis                   - field-V10-06-09
      +-------------------------------
      +- Fix to enable G4TDormandPrince45 to be used with G4InterpolationDriver.
      +
      +  This fix was needed because G4Interpolation driver creates additional
      +  copies of the stepper class.  Due to this it must obtain the equation
      +  with the type of the templated stepper.
      +
      +  For a stepper to be used with 'G4InterpolationDriver', it must
      +  implement the method
      +     Equation_type  GetSpecificEquation()
      +  Templated steppers must ensure that the return type 'Equation_type'
      +  is the specific equation type of the template.
      +
      +  This method was added to G4DormandPrince745 and G4TDormandPrince745.
      +
      +October 12, 2020 J.Apostolakis                    - field-V10-06-08
      +------------------------------
      +- Fixes & refinements - mostly in templated classes, tests.
      +  Compilation fixes, e.g. missing include .
      +  Refinements, e.g. int -> unsigned int in templates
      +
      +October 9, 2020 J.Apostolakis                     - field-V10-06-07
      +-----------------------------
      +- Configure G4ChordFinder to use templated G4TDormandPrince45 as the
      +  default stepper for magnetic fields (when one is not chosen 
      +  explicitly by the application.)
      +
      +October 9, 2020 J.Apostolakis & J. Xie           - field-V10-06-06
      +--------------------------------------
      +- Adapted classes that avoid virtual calls for field, equation, stepper
      +  created by Josh Xie (Google Summer of Code 2014), supervised by
      +  S. Wenzel & J.A.
      +
      +  The revised design and implementations include:
      +   * equation of motion templated on the field type;
      +   * steppers templated on the type of equation and the number of integration
      +     variables.
      +  In addition the key methods are marked as 'inline' to enable compilers, where
      +  they judge possible, to embed them and avoid any function calls.
      +
      +  These classes can be combined also with the templated drivers
      +  (G4IntegrationStepper, G4FSALIntegrationStepper and/or G4InterpolationDriver
      +  to avoid virtual calls in all the levels up to the chord finder's call to
      +  the integration driver. ]
      +
      +  The types of stepper currently available are
      +  i) the originally developed intermediate order stepper:
      +
      +   - Name (templated) -  original  --   Order/    - Comments
      +                                           / Embdedded
      +   ==============================================================================
      +   G4TClassicalRK4:     G4ClassicalRK4   4th / no   robust, old default
      +   G4TCashKarpRKF45:    G4CashKarpRKF45  5th / yes  first embedded RK in G4
      +
      +  ii) the original low order steppers (for specialised uses)   
      +   G4TSimpleHeum:       G4SimpleHeum     3rd / no  lower order alternative
      +   G4TSimpleRunge:      G4SimpleRunge    2nd / no  very low order
      +   G4TExplicitEuler:    G4ExplicitEuler  1st / no  lowest order - for checks only
      +
      +  and
      +  iii) some newly adapted stepper(s) /  ( J.A. Oct 2020 )
      +   G4TDormandPrince45  G4DormandPrince745 5th/ yes  default / preferred
      +   ==============================================================================
      +   
      +  Note: Additional lower-order steppers are not yet available.
      +        'Vector' steppers (using blaze) are not supported.
      +
      +  Experimental versions of fields with inline methods:
      +     G4TUniformMagField,  G4TQuadrupoleMagField
      +  are included to show how the field evaluation GetFieldValue can also be inlined.
      +
      +  Note 2:
      +  Steppers which are not embedded obtain their error estimates by
      +  breaking the step into two halves, then comparing with the whole step.
      +  As a result many more field / derivative evaluations are needed than
      +  embedded steppers of the same order, but the reliability of their error
      +  estimation has different properties; so it may be more robust in some cases. )
       
       June 15, 2020 G.Cosmo                            - field-V10-06-05
       ---------------------
      diff --git a/source/geometry/magneticfield/include/G4BulirschStoerDriver.icc b/source/geometry/magneticfield/include/G4BulirschStoerDriver.icc
      index dc2b9b6016..8f535c1297 100644
      --- a/source/geometry/magneticfield/include/G4BulirschStoerDriver.icc
      +++ b/source/geometry/magneticfield/include/G4BulirschStoerDriver.icc
      @@ -29,6 +29,8 @@
       // Supervision: John Apostolakis, CERN
       // --------------------------------------------------------------------
       
      +#include 
      +
       #include "G4LineSection.hh"
       #include "G4FieldUtils.hh"
       
      diff --git a/source/geometry/magneticfield/include/G4ChordFinder.hh b/source/geometry/magneticfield/include/G4ChordFinder.hh
      index 393809905b..1f3a4b9ab7 100644
      --- a/source/geometry/magneticfield/include/G4ChordFinder.hh
      +++ b/source/geometry/magneticfield/include/G4ChordFinder.hh
      @@ -59,7 +59,7 @@ class G4ChordFinder
                            G4double         stepMinimum = 1.0e-2, // * mm 
                            G4MagIntegratorStepper* pItsStepper = nullptr,
                            // G4bool           useHigherEfficiencyStepper = true,
      -                     G4bool           useFSALstepper = false  );
      +                     G4int            stepperDriverChoice = 2  );
               // A constructor that creates defaults for all "children" classes.
               //
               // The type of equation of motion is fixed.
      diff --git a/source/geometry/magneticfield/include/G4DormandPrince745.hh b/source/geometry/magneticfield/include/G4DormandPrince745.hh
      index 384818ec62..e5850aa26b 100644
      --- a/source/geometry/magneticfield/include/G4DormandPrince745.hh
      +++ b/source/geometry/magneticfield/include/G4DormandPrince745.hh
      @@ -75,6 +75,9 @@ class G4DormandPrince745 : public G4MagIntegratorStepper
       
           virtual G4int IntegratorOrder() const override { return 4; }
       
      +    const G4String& StepperType() const        { return gStepperType; }
      +    const G4String& StepperDescription() const { return gStepperDescription; }
      +   
           const field_utils::State& GetYOut() const { return fyOut; }
       
           void Interpolate4thOrder(G4double yOut[], G4double tau) const;
      @@ -82,12 +85,17 @@ class G4DormandPrince745 : public G4MagIntegratorStepper
           void SetupInterpolation5thOrder();
           void Interpolate5thOrder(G4double yOut[], G4double tau) const;
       
      +    G4EquationOfMotion* GetSpecificEquation() { return GetEquationOfMotion(); }
      +   
         private:
      +    // Name and description of this steppers - plus details of its implementation
      +    static const G4String gStepperType;
      +    static const G4String gStepperDescription;
      +    // const unsigned int fIntegratorOrder = 4;  // Should it not be 5 ? 
       
           field_utils::State ak2, ak3, ak4, ak5, ak6, ak7, ak8, ak9;
           field_utils::State fyIn, fyOut, fdydxIn;
       
           G4double fLastStepLength = -1.0;
      -
       };
       #endif
      diff --git a/source/geometry/magneticfield/include/G4FieldUtils.hh b/source/geometry/magneticfield/include/G4FieldUtils.hh
      index c827596d3c..39a1b2bb15 100644
      --- a/source/geometry/magneticfield/include/G4FieldUtils.hh
      +++ b/source/geometry/magneticfield/include/G4FieldUtils.hh
      @@ -44,6 +44,9 @@ namespace field_utils
       
         using State = G4double[G4FieldTrack::ncompSVEC];
       
      +  template 
      +  using ShortState = G4double[N];
      +   
         enum class Value3D
         {
           Position = 0,
      diff --git a/source/geometry/magneticfield/include/G4InterpolationDriver.icc b/source/geometry/magneticfield/include/G4InterpolationDriver.icc
      index 24e439a2d3..b3ccea72c1 100644
      --- a/source/geometry/magneticfield/include/G4InterpolationDriver.icc
      +++ b/source/geometry/magneticfield/include/G4InterpolationDriver.icc
      @@ -57,7 +57,7 @@ G4InterpolationDriver ( G4double hminimum, T* pStepper,
           for (G4int i = 0; i < Base::GetMaxNoSteps(); ++i) 
           {
               fSteppers.push_back({
      -            std::unique_ptr(new T(pStepper->GetEquationOfMotion(), 
      +            std::unique_ptr(new T(pStepper->GetSpecificEquation(),   // Interpolating stepper must have this!
                                            pStepper->GetNumberOfVariables()) ),
                   DBL_MAX, -DBL_MAX, 0.0
               });
      diff --git a/source/geometry/magneticfield/include/G4TCachedMagneticField.hh b/source/geometry/magneticfield/include/G4TCachedMagneticField.hh
      new file mode 100644
      index 0000000000..fd25932926
      --- /dev/null
      +++ b/source/geometry/magneticfield/include/G4TCachedMagneticField.hh
      @@ -0,0 +1,151 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +#ifndef TCACHED_MAGNETIC_FIELD_DEF
      +#define TCACHED_MAGNETIC_FIELD_DEF
      +
      +#include "G4Types.hh"
      +#include "G4ThreeVector.hh"
      +#include "G4MagneticField.hh"
      +
      +template 
      +class G4TCachedMagneticField : public G4MagneticField
      +{
      + public:  // with description
      +  G4TCachedMagneticField(T_Field* pTField, G4double distance)
      +    : G4MagneticField()
      +    , fLastLocation(DBL_MAX, DBL_MAX, DBL_MAX)
      +    , fLastValue(DBL_MAX, DBL_MAX, DBL_MAX)
      +    , fCountCalls(0)
      +    , fCountEvaluations(0)
      +  {
      +    fpMagneticField = pTField;
      +    fDistanceConst  = distance;
      +
      +    // G4cout << " Cached-B-Field constructor> Distance = " << distance <<
      +    // G4endl;
      +    this->ClearCounts();
      +  }
      +
      +  G4TCachedMagneticField(const G4TCachedMagneticField& rightCMF)
      +  {
      +    fpMagneticField = rightCMF.fpMagneticField;
      +    fDistanceConst  = rightCMF.fDistanceConst;
      +    fLastLocation   = rightCMF.fLastLocation;
      +    fLastValue      = rightCMF.fLastValue;
      +    this->ClearCounts();
      +  }
      +
      +  G4TCachedMagneticField* Clone() const
      +  {
      +    G4cout << "Clone is called" << G4endl;
      +    // Cannot use copy constructor: I need to clone the associated magnetif
      +    // field
      +    T_Field* aF = this->fpMagneticField->T_Field::Clone();
      +    G4TCachedMagneticField* cloned =
      +      new G4TCachedMagneticField(aF, this->fDistanceConst);
      +    cloned->fLastLocation = this->fLastLocation;
      +    cloned->fLastValue    = this->fLastValue;
      +    return cloned;
      +  }
      +
      +  virtual ~G4TCachedMagneticField() { ; }
      +  // Constructor and destructor. No actions.
      +
      +  void ReportStatistics()
      +  {
      +    G4cout << " Cached field: " << G4endl
      +           << "   Number of calls:        " << fCountCalls << G4endl
      +           << "   Number of evaluations : " << fCountEvaluations << G4endl;
      +  }
      +
      +  virtual void GetFieldValue(const G4double Point[4], G4double* Bfield) const
      +  {
      +    G4ThreeVector newLocation(Point[0], Point[1], Point[2]);
      +
      +    G4double distSq = (newLocation - fLastLocation).mag2();
      +    fCountCalls++;
      +    if(distSq < fDistanceConst * fDistanceConst)
      +    {
      +      Bfield[0] = fLastValue.x();
      +      Bfield[1] = fLastValue.y();
      +      Bfield[2] = fLastValue.z();
      +    }
      +    else
      +    {
      +      // G4CachedMagneticField* thisNonC=
      +      // const_cast(this);
      +      fpMagneticField->T_Field::GetFieldValue(Point, Bfield);
      +      // G4cout << " Evaluating. " << G4endl;
      +      fCountEvaluations++;
      +      // thisNonC->
      +      fLastLocation = G4ThreeVector(Point[0], Point[1], Point[2]);
      +      // thisNonC->
      +      fLastValue = G4ThreeVector(Bfield[0], Bfield[1], Bfield[2]);
      +    }
      +  }
      +
      +  G4double GetConstDistance() const { return fDistanceConst; }
      +  void SetConstDistance(G4double dist) { fDistanceConst = dist; }
      +
      +  G4int GetCountCalls() const { return fCountCalls; }
      +  G4int GetCountEvaluations() const { return fCountEvaluations; }
      +  void ClearCounts()
      +  {
      +    fCountCalls       = 0;
      +    fCountEvaluations = 0;
      +  }
      +
      +  G4TCachedMagneticField& operator=(const G4TCachedMagneticField& right)
      +  {
      +    if(&right == this)
      +      return *this;
      +
      +    fpMagneticField = right.fpMagneticField;
      +
      +    fDistanceConst= right.fDistanceConst;
      +    fLastLocation = right.fLastLocation;
      +    fLastValue = right.fLastValue;
      +
      +    fCountCalls = 0;
      +    fCountEvaluations = 0;
      +    
      +    return *this;
      + }
      +
      + private:
      +  T_Field* fpMagneticField;
      +  // When the field is evaluated within this distance it will not change
      +  G4double fDistanceConst;
      +  // Caching state
      +  mutable G4ThreeVector fLastLocation;
      +  mutable G4ThreeVector fLastValue;
      +
      + protected:
      +  mutable G4int fCountCalls, fCountEvaluations;
      +};
      +
      +#endif /* TCACHED_MAGNETIC_FIELD_DEF */
      diff --git a/source/geometry/magneticfield/include/G4TCashKarpRKF45.hh b/source/geometry/magneticfield/include/G4TCashKarpRKF45.hh
      new file mode 100644
      index 0000000000..c301ec2b4c
      --- /dev/null
      +++ b/source/geometry/magneticfield/include/G4TCashKarpRKF45.hh
      @@ -0,0 +1,321 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4TCashKarpRKF45 
      +//
      +// Class description:
      +//
      +// Templated version of Cash-Karp 4th/5th order embedded stepper
      +//
      +// Knowing the type (class) of the equation of motion enables a non-
      +// virtual call of its methods. 
      +// As an embedded 5th order method, it requires fewer field evaluations
      +// (1 initial + 5 others per step = 6 per step) than ClassicalRK4 and 
      +// also non-embedded methods of the same order.
      +//
      +// Can be used to enable use of non-virtual calls for field, equation,
      +//   and stepper - potentially with inlined methods.
      +//
      +// Created: Josh Xie  June 2014 (supported by Google Summer of Code 2014 )
      +// Supervisors:  Sandro Wenzel, John Apostolakis (CERN)
      +//
      +// Adapted from G4CashKarpRKF45 class
      +// --------------------------------------------------------------------
      +// Original description (G4CashKarpRKF45):
      +// The Cash-Karp Runge-Kutta-Fehlberg 4/5 method is an embedded fourth
      +// order method (giving fifth-order accuracy) for the solution of an ODE.
      +// Two different fourth order estimates are calculated; their difference
      +// gives an error estimate. [ref. Numerical Recipes in C, 2nd Edition]
      +// Used to integrate the equations of motion of a particle in a field.
      +// Original Authors: J.Apostolakis, V.Grichine - 30.01.1997
      +
      +#ifndef G4T_CASH_KARP_RKF45_HH
      +#define G4T_CASH_KARP_RKF45_HH
      +
      +#include 
      +
      +#include "G4LineSection.hh"
      +#include "G4MagIntegratorStepper.hh"
      +
      +template 
      +class G4TCashKarpRKF45 : public G4MagIntegratorStepper
      +{
      + public:
      +
      +  G4TCashKarpRKF45(T_Equation* EqRhs, // G4int noIntegrationVariables = 6,
      +                    G4bool primary = true);
      +
      +  virtual ~G4TCashKarpRKF45();
      +
      +  inline void
      +  StepWithError(const G4double yInput[], // * __restrict__ yInput,
      +                const G4double dydx[],   // * __restrict__ dydx,
      +                G4double Step,
      +                G4double yOut[],         // * __restrict__ yOut,
      +                G4double yErr[] );       // * __restrict__ yErr);
      +
      +  virtual void Stepper(const G4double yInput[],
      +                       const G4double dydx[],
      +                       G4double hstep,
      +                       G4double yOutput[],
      +                       G4double yError[]) override final;
      +  
      +  // __attribute__((always_inline))
      +  void RightHandSideInl( const G4double y[],  // * __restrict__  y,
      +                               G4double dydx[] ) // * __restrict__  dydx )
      +  {
      +    fEquation_Rhs->T_Equation::RightHandSide(y, dydx);
      +  }
      +
      +  inline G4double DistChord() const override;
      +
      +  inline G4int IntegratorOrder() const override { return 4; }
      +
      + private:
      +  G4TCashKarpRKF45(const G4TCashKarpRKF45&);
      +  G4TCashKarpRKF45& operator=(const G4TCashKarpRKF45&);
      +  // private copy constructor and assignment operator.
      +
      + private:
      +  G4double ak2[N], ak3[N], ak4[N], ak5[N], ak6[N], ak7[N], yTemp[N], yIn[N];
      +  // scratch space
      +
      +  G4double fLastStepLength= 0.0;
      +  G4double* fLastInitialVector;
      +  G4double* fLastFinalVector;
      +  G4double* fLastDyDx;
      +  G4double* fMidVector;
      +  G4double* fMidError;
      +  // for DistChord calculations
      +
      +  G4TCashKarpRKF45* fAuxStepper = nullptr;   
      +  // ... or G4TCashKarpRKF45* fAuxStepper;
      +  T_Equation* fEquation_Rhs;
      +};
      +
      +/////////////////////////////////////////////////////////////////////
      +//
      +// Constructor
      +//
      +template 
      +G4TCashKarpRKF45::G4TCashKarpRKF45(T_Equation* EqRhs,
      +                                                 G4bool primary)
      +    : G4MagIntegratorStepper(dynamic_cast(EqRhs), N )
      +    , fEquation_Rhs(EqRhs)
      +{
      +  if( dynamic_cast(EqRhs) == nullptr )
      +  {
      +    G4Exception("G4TCashKarpRKF45: constructor", "GeomField0001",
      +                FatalException, "Equation is not an G4EquationOfMotion.");      
      +  }
      +    
      +  fLastInitialVector = new G4double[N];
      +  fLastFinalVector   = new G4double[N];
      +  fLastDyDx          = new G4double[N];
      +  
      +  fMidVector = new G4double[N];
      +  fMidError  = new G4double[N];
      +  
      +  if(primary)
      +  {
      +     fAuxStepper = new G4TCashKarpRKF45 (EqRhs, !primary);
      +  }
      +}
      +
      +template 
      +G4TCashKarpRKF45::~G4TCashKarpRKF45()
      +{
      +  delete[] fLastInitialVector;
      +  delete[] fLastFinalVector;
      +  delete[] fLastDyDx;
      +  delete[] fMidVector;
      +  delete[] fMidError;
      +  
      +  delete fAuxStepper;
      +}
      +
      +//////////////////////////////////////////////////////////////////////
      +//
      +// Given values for n = 6 variables yIn[0,...,n-1]
      +// known  at x, use the fifth-order Cash-Karp Runge-
      +// Kutta-Fehlberg-4-5 method to advance the solution over an interval
      +// Step and return the incremented variables as yOut[0,...,n-1]. Also
      +// return an estimate of the local truncation error yErr[] using the
      +// embedded 4th-order method. The equation's method is called (inline)
      +// via RightHandSideInl(y,dydx), which returns derivatives dydx for y .
      +//
      +template 
      +inline void
      +G4TCashKarpRKF45::StepWithError(const G4double* yInput,
      +                                              const G4double* dydx,
      +                                              G4double Step,
      +                                              G4double * yOut,
      +                                              G4double * yErr)
      +{
      +  // const G4double a2 = 0.2 , a3 = 0.3 , a4 = 0.6 , a5 = 1.0 , a6 = 0.875;
      +
      +  const G4double b21 = 0.2, b31 = 3.0 / 40.0, b32 = 9.0 / 40.0, b41 = 0.3,
      +                 b42 = -0.9, b43 = 1.2,
      +     
      +                 b51 = -11.0 / 54.0, b52 = 2.5, b53 = -70.0 / 27.0,
      +                 b54 = 35.0 / 27.0,
      +
      +                 b61 = 1631.0 / 55296.0, b62 = 175.0 / 512.0,
      +                 b63 = 575.0 / 13824.0, b64 = 44275.0 / 110592.0,
      +                 b65 = 253.0 / 4096.0,
      +
      +                 c1 = 37.0 / 378.0, c3 = 250.0 / 621.0, c4 = 125.0 / 594.0,
      +                 c6 = 512.0 / 1771.0, dc5 = -277.0 / 14336.0;
      +
      +  const G4double dc1 = c1 - 2825.0 / 27648.0, dc3 = c3 - 18575.0 / 48384.0,
      +                 dc4 = c4 - 13525.0 / 55296.0, dc6 = c6 - 0.25;
      +
      +  // Initialise time to t0, needed when it is not updated by the integration.
      +  //       [ Note: Only for time dependent fields (usually electric)
      +  //                 is it neccessary to integrate the time.]
      +  // yOut[7] = yTemp[7]   = yIn[7];
      +
      +  //  Saving yInput because yInput and yOut can be aliases for same array
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +    yIn[i] = yInput[i];
      +  }
      +  // RightHandSideInl(yIn, dydx) ;              // 1st Step
      +
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +    yTemp[i] = yIn[i] + b21 * Step * dydx[i];
      +  }
      +  this->RightHandSideInl(yTemp, ak2);  // 2nd Step
      +
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +    yTemp[i] = yIn[i] + Step * (b31 * dydx[i] + b32 * ak2[i]);
      +  }
      +  this->RightHandSideInl(yTemp, ak3);  // 3rd Step
      +  
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +    yTemp[i] = yIn[i] + Step * (b41 * dydx[i] + b42 * ak2[i] + b43 * ak3[i]);
      +  }
      +  this->RightHandSideInl(yTemp, ak4);  // 4th Step
      +  
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +    yTemp[i] = yIn[i] + Step * (b51 * dydx[i] + b52 * ak2[i] + b53 * ak3[i] +
      +                                b54 * ak4[i]);
      +  }
      +  this->RightHandSideInl(yTemp, ak5);  // 5th Step
      +  
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +    yTemp[i] = yIn[i] + Step * (b61 * dydx[i] + b62 * ak2[i] + b63 * ak3[i] +
      +                                b64 * ak4[i] + b65 * ak5[i]);
      +  }
      +  this->RightHandSideInl(yTemp, ak6);  // 6th Step
      +
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +    // Accumulate increments with proper weights
      +     
      +    yOut[i] = yIn[i] +
      +       Step * (c1 * dydx[i] + c3 * ak3[i] + c4 * ak4[i] + c6 * ak6[i]);
      +  }
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +    // Estimate error as difference between 4th and
      +    // 5th order methods
      +     
      +    yErr[i] = Step * (dc1 * dydx[i] + dc3 * ak3[i] + dc4 * ak4[i] +
      +                      dc5 * ak5[i] + dc6 * ak6[i]);
      +  }
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +    // Store Input and Final values, for possible use in calculating chord
      +    fLastInitialVector[i] = yIn[i];
      +    fLastFinalVector[i]   = yOut[i];
      +    fLastDyDx[i]          = dydx[i];
      +  }
      +  // NormaliseTangentVector( yOut ); // Not wanted
      +  
      +  fLastStepLength = Step;
      +  
      +  return;
      +}
      +
      +template 
      +inline G4double 
      +G4TCashKarpRKF45::DistChord() const     
      +{
      +  G4double distLine, distChord;
      +  G4ThreeVector initialPoint, finalPoint, midPoint;
      +  
      +  // Store last initial and final points (they will be overwritten in
      +  // self-Stepper call!)
      +  initialPoint = G4ThreeVector(fLastInitialVector[0], fLastInitialVector[1],
      +                               fLastInitialVector[2]);
      +  finalPoint   = G4ThreeVector(fLastFinalVector[0], fLastFinalVector[1],
      +                               fLastFinalVector[2]);
      +
      +  // Do half a step using StepNoErr
      +  
      +  fAuxStepper->G4TCashKarpRKF45::Stepper(fLastInitialVector, fLastDyDx,
      +                                         0.5 * fLastStepLength, fMidVector,
      +                                         fMidError);
      +  
      +  midPoint = G4ThreeVector(fMidVector[0], fMidVector[1], fMidVector[2]);
      +  
      +  // Use stored values of Initial and Endpoint + new Midpoint to evaluate
      +  //  distance of Chord
      +  
      +  if(initialPoint != finalPoint)
      +  {
      +    distLine  = G4LineSection::Distline(midPoint, initialPoint, finalPoint);
      +    distChord = distLine;
      +  }
      +  else
      +  {
      +    distChord = (midPoint - initialPoint).mag();
      +  }
      +  return distChord;
      +}
      +
      +template 
      +inline void
      +G4TCashKarpRKF45::Stepper(const G4double yInput[],
      +                                        const G4double dydx[],
      +                                        G4double Step,
      +                                        G4double yOutput[],
      +                                        G4double yError[])
      +{
      +  assert( yOutput != yInput );
      +  assert( yError  != yInput );
      +  
      +  StepWithError( yInput, dydx, Step, yOutput, yError);
      +}
      +
      +
      +
      +#endif /* G4TCashKARP_RKF45_hh */
      diff --git a/source/geometry/magneticfield/include/G4TClassicalRK4.hh b/source/geometry/magneticfield/include/G4TClassicalRK4.hh
      new file mode 100644
      index 0000000000..afc269969d
      --- /dev/null
      +++ b/source/geometry/magneticfield/include/G4TClassicalRK4.hh
      @@ -0,0 +1,154 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4TClassicalRK4
      +//
      +// Class description:
      +//
      +// Templated version of G4ClassicalRK4
      +//
      +//
      +// Created: Josh Xie  (supported by Google Summer of Code 2014 )
      +// Supervisors:  Sandro Wenzel, John Apostolakis (CERN)
      +// Adapted from G4G4TClassicalRK4 class
      +// --------------------------------------------------------------------
      +#include "G4ThreeVector.hh"
      +#include "G4MagIntegratorStepper.hh"
      +#include "G4TMagErrorStepper.hh"
      +
      +template 
      +class G4TClassicalRK4
      +  : public G4TMagErrorStepper, T_Equation, N>
      +{
      + public:  // with description
      +  static constexpr G4double IntegratorCorrection = 1. / ((1 << 4) - 1);
      +
      +  G4TClassicalRK4(T_Equation* EqRhs, G4int numberOfVariables = 8);
      +
      +  virtual ~G4TClassicalRK4() { ; }
      +
      +  void RightHandSideInl(G4double y[],
      +                     G4double dydx[])
      +  {
      +    fEquation_Rhs->T_Equation::RightHandSide(y, dydx);
      +  }
      +
      +  // A stepper that does not know about errors.
      +  // It is used by the MagErrorStepper stepper.
      +
      +  inline  // __attribute__((always_inline))
      +  void DumbStepper(const G4double yIn[],
      +                   const G4double dydx[],
      +                   G4double h,
      +                   G4double yOut[]);
      +
      + public:  // without description
      +  G4int IntegratorOrder() const { return 4; }
      +
      +  G4TClassicalRK4(const G4TClassicalRK4&) = delete;
      +  G4TClassicalRK4& operator=(const G4TClassicalRK4&) = delete;
      +  // No copy constructor and assignment operator.
      +
      + private:
      +  // G4int fNumberOfVariables ; // is set default to 6 in constructor
      +  G4double dydxm[N < 8 ? 8 : N];
      +  G4double dydxt[N < 8 ? 8 : N];
      +  G4double yt[N < 8 ? 8 : N];
      +  // scratch space - not state
      +
      +  T_Equation* fEquation_Rhs;
      +};
      +
      +template 
      +G4TClassicalRK4::
      +G4TClassicalRK4(T_Equation* EqRhs, G4int numberOfVariables)
      +   : G4TMagErrorStepper, T_Equation, N>(
      +      EqRhs, numberOfVariables > 8 ? numberOfVariables : 8 )
      +   , fEquation_Rhs(EqRhs)
      +{
      +  // unsigned int noVariables = std::max(numberOfVariables, 8);  // For Time .. 7+1
      +  if( dynamic_cast(EqRhs) == nullptr )
      +  {
      +    G4Exception("G4TClassicalRK4: constructor", "GeomField0001",
      +                FatalException, "Equation is not an G4EquationOfMotion.");      
      +  }
      +}
      +
      +template 
      +void
      +G4TClassicalRK4::DumbStepper(const G4double yIn[],
      +                                           const G4double dydx[],
      +                                           G4double h,
      +                                           G4double yOut[]) 
      +// Given values for the variables y[0,..,n-1] and their derivatives
      +// dydx[0,...,n-1] known at x, use the classical 4th Runge-Kutta
      +// method to advance the solution over an interval h and return the
      +// incremented variables as yout[0,...,n-1], which not be a distinct
      +// array from y. The user supplies the routine RightHandSide(x,y,dydx),
      +// which returns derivatives dydx at x. The source is routine rk4 from
      +// NRC p. 712-713 .
      +{
      +  G4double hh = h * 0.5, h6 = h / 6.0;
      +  
      +  // Initialise time to t0, needed when it is not updated by the integration.
      +  //        [ Note: Only for time dependent fields (usually electric)
      +  //                  is it neccessary to integrate the time.]
      +  yt[7]   = yIn[7];
      +  yOut[7] = yIn[7];
      +  
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +     yt[i] = yIn[i] + hh * dydx[i];  // 1st Step K1=h*dydx
      +  }
      +  this->RightHandSideInl(yt, dydxt);  // 2nd Step K2=h*dydxt
      +  
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +     yt[i] = yIn[i] + hh * dydxt[i];
      +  }
      +  this->RightHandSideInl(yt, dydxm);  // 3rd Step K3=h*dydxm
      +  
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +     yt[i] = yIn[i] + h * dydxm[i];
      +     dydxm[i] += dydxt[i];  // now dydxm=(K2+K3)/h
      +  }
      +  this->RightHandSideInl(yt, dydxt);  // 4th Step K4=h*dydxt
      +  
      +  for(unsigned int i = 0; i < N; ++i)  // Final RK4 output
      +  {
      +     yOut[i] = yIn[i] + h6 * (dydx[i] + dydxt[i] +
      +                              2.0 * dydxm[i]);  //+K1/6+K4/6+(K2+K3)/3
      +  }
      +  if(N == 12)
      +  {
      +     this->NormalisePolarizationVector(yOut);
      +  }
      +  
      +}  // end of DumbStepper ....................................................
      +
      +// template 
      +// G4TClassicalRK4::
      +
      diff --git a/source/geometry/magneticfield/include/G4TDormandPrince45.hh b/source/geometry/magneticfield/include/G4TDormandPrince45.hh
      new file mode 100644
      index 0000000000..5dd9360dbb
      --- /dev/null
      +++ b/source/geometry/magneticfield/include/G4TDormandPrince45.hh
      @@ -0,0 +1,593 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4TDormandPrince45
      +//
      +// Class desription:
      +//
      +//  An implementation of the 5th order embedded RK method from the paper:
      +//  J. R. Dormand and P. J. Prince, "A family of embedded Runge-Kutta formulae"
      +//  Journal of computational and applied Math., vol.6, no.1, pp.19-26, 1980.
      +//
      +//  DormandPrince7 - 5(4) embedded RK method
      +//
      +
      +// Created: Somnath Banerjee, Google Summer of Code 2015, 25 May 2015
      +// Supervision: John Apostolakis, CERN
      +// --------------------------------------------------------------------
      +#ifndef G4TDORMAND_PRINCE_45_HH
      +#define G4TDORMAND_PRINCE_45_HH
      +
      +#include 
      +#include "G4MagIntegratorStepper.hh"
      +#include "G4FieldUtils.hh"
      +
      +template 
      +class G4TDormandPrince45 : public G4MagIntegratorStepper
      +{
      +  public:
      +
      +    G4TDormandPrince45(T_Equation* equation );
      +    G4TDormandPrince45(T_Equation* equation, G4int numVar ); // must have numVar == N
      +   
      +    inline void
      +    StepWithError(const G4double yInput[],
      +                  const G4double dydx[],
      +                  G4double hstep,
      +                  G4double yOutput[],
      +                  G4double yError[] ) ;
      +   
      +    virtual void Stepper(const G4double yInput[],
      +                         const G4double dydx[],
      +                         G4double hstep,
      +                         G4double yOutput[],
      +                         G4double yError[]) override final;
      +
      +    inline
      +    void StepWithFinalDerivate(const G4double yInput[],   
      +                               const G4double dydx[],
      +                               G4double hstep,
      +                               G4double yOutput[],
      +                               G4double yError[],
      +                               G4double dydxOutput[]);
      +   
      +    inline void SetupInterpolation() {}
      +
      +    void Interpolate(G4double tau, G4double yOut[]) const
      +    {
      +        Interpolate4thOrder(yOut, tau);
      +    }
      +      // For calculating the output at the tau fraction of Step
      +
      +    virtual G4double DistChord() const override final;
      +
      +    virtual G4int IntegratorOrder() const override { return 4; }
      +
      +    const field_utils::ShortState& GetYOut() const { return fyOut; }
      +
      +    void Interpolate4thOrder(G4double yOut[], G4double tau) const;
      +
      +    void SetupInterpolation5thOrder();
      +    void Interpolate5thOrder(G4double yOut[], G4double tau) const;
      +  
      +    // __attribute__((always_inline))
      +    void RightHandSideInl( const G4double y[],
      +                                 G4double dydx[] )
      +    {
      +      fEquation_Rhs->T_Equation::RightHandSide(y, dydx);
      +    }
      +
      +    inline
      +    void Stepper(const G4double yInput[],  const G4double dydx[],
      +                 G4double hstep,           G4double yOutput[],
      +                 G4double yError[],        G4double dydxOutput[])
      +    {
      +         StepWithFinalDerivate(yInput, dydx, hstep,
      +                               yOutput, yError, dydxOutput);
      +    }
      +
      +   T_Equation* GetSpecificEquation() { return fEquation_Rhs; }
      +   
      +    static constexpr int N8=  N > 8 ?  N : 8;  //  y[
      +   
      +  private:
      +
      +    field_utils::ShortState  ak2, ak3, ak4, ak5, ak6, ak7, ak8, ak9; 
      +    field_utils::ShortState fyIn;
      +    field_utils::ShortState  fyOut, fdydxIn;
      +
      +    // - Simpler :
      +    // field_utils::State ak2, ak3, ak4, ak5, ak6, ak7, ak8, ak9;
      +    // field_utils::State fyIn, fyOut, fdydxIn;
      +
      +    G4double fLastStepLength = -1.0;
      +    T_Equation* fEquation_Rhs;
      +};
      +
      +// G4TDormandPrince745 implementation -- borrowed from G4DormandPrince745
      +//
      +// DormandPrince7 - 5(4) non-FSAL
      +// definition of the stepper() method that evaluates one step in
      +// field propagation.
      +// The coefficients and the algorithm have been adapted from
      +//
      +// J. R. Dormand and P. J. Prince, "A family of embedded Runge-Kutta formulae"
      +// Journal of computational and applied Math., vol.6, no.1, pp.19-26, 1980.
      +//
      +// The Butcher table of the Dormand-Prince-7-4-5 method is as follows :
      +//
      +//    0   |
      +//    1/5 | 1/5
      +//    3/10| 3/40       9/40
      +//    4/5 | 44/45      56/15      32/9
      +//    8/9 | 19372/6561 25360/2187 64448/6561  212/729
      +//    1   | 9017/3168  355/33     46732/5247  49/176  5103/18656
      +//    1   | 35/384     0          500/1113    125/192 2187/6784    11/84
      +//    ------------------------------------------------------------------------
      +//          35/384     0          500/1113    125/192 2187/6784    11/84    0
      +//          5179/57600 0          7571/16695  393/640 92097/339200 187/2100 1/40
      +//
      +// Created: Somnath Banerjee, Google Summer of Code 2015, 25 May 2015
      +// Supervision: John Apostolakis, CERN
      +// --------------------------------------------------------------------
      +
      +#include "G4LineSection.hh"
      +
      +#include 
      +
      +// using namespace field_utils;
      +
      +/////////////////////////////////////////////////////////////////////
      +// Constructor
      +//
      +template 
      +G4TDormandPrince45::G4TDormandPrince45(T_Equation* equation )
      +    : G4MagIntegratorStepper(dynamic_cast(equation), N )
      +    , fEquation_Rhs(equation)
      +{
      +  // assert( dynamic_cast(equation) != nullptr );
      +  if( dynamic_cast(equation) == nullptr )
      +  {
      +    G4Exception("G4TDormandPrince745: constructor", "GeomField0001",
      +                FatalException, "T_Equation is not an G4EquationOfMotion.");
      +  }
      +
      +  /***
      +  assert( equation->GetNumberOfVariables == N );
      +  if( equation->GetNumberOfVariables != N ){
      +    G4ExceptionDescription msg;
      +    msg << "Equation has an incompatible number of variables." ;
      +    msg << "   template N = " << N << " equation-Nvar= "
      +        << equation->GetNumberOfVariables;
      +    G4Exception("G4TCashKarpRKF45: constructor", "GeomField0001",
      +                FatalException, msg );
      +   } ****/
      +}
      +
      +template 
      +G4TDormandPrince45::G4TDormandPrince45(T_Equation* equation, G4int numVar )
      +    : G4TDormandPrince45(equation )
      +{
      +  if( numVar != G4int(N)){
      +    G4ExceptionDescription msg;
      +    msg << "Equation has an incompatible number of variables." ;
      +    msg << "   template N = " << N
      +        << "   argument numVar = " << numVar ;
      +    //    << " equation-Nvar= " << equation->GetNumberOfVariables(); // --> Expected later
      +    G4Exception("G4TCashKarpRKF45: constructor", "GeomField0001",
      +                   FatalErrorInArgument, msg );
      +  }
      +  assert( numVar == N );
      +}
      +
      +template 
      +inline void G4TDormandPrince45::
      +StepWithFinalDerivate(const G4double yInput[],
      +                      const G4double dydx[],
      +                      G4double hstep,
      +                      G4double yOutput[],
      +                      G4double yError[],
      +                      G4double dydxOutput[])
      +{
      +  StepWithError(yInput, dydx, hstep, yOutput, yError);
      +  field_utils::copy(dydxOutput, ak7, N);
      +}
      +
      +// Stepper
      +//
      +// Passing in the value of yInput[],the first time dydx[] and Step length
      +// Giving back yOut and yErr arrays for output and error respectively
      +//
      +
      +template 
      +inline void
      +G4TDormandPrince45::StepWithError(const G4double yInput[],
      +                                                const G4double dydx[],
      +                                                G4double hstep,
      +                                                G4double yOut[],
      +                                                G4double yErr[] )
      +{
      +    // The parameters of the Butcher tableu
      +    //
      +    constexpr G4double b21 = 0.2,
      +                   b31 = 3.0 / 40.0, b32 = 9.0 / 40.0,
      +                   b41 = 44.0 / 45.0, b42 = -56.0 / 15.0, b43 = 32.0/9.0,
      +
      +        b51 = 19372.0 / 6561.0, b52 = -25360.0 / 2187.0, b53 = 64448.0 / 6561.0,
      +        b54 = -212.0 / 729.0,
      +        
      +        b61 = 9017.0 / 3168.0 , b62 =   -355.0 / 33.0,
      +        b63 = 46732.0 / 5247.0, b64 = 49.0 / 176.0,
      +        b65 = -5103.0 / 18656.0,
      +        
      +        b71 = 35.0 / 384.0, b72 = 0.,
      +        b73 = 500.0 / 1113.0, b74 = 125.0 / 192.0,
      +        b75 = -2187.0 / 6784.0, b76 = 11.0 / 84.0,
      +    
      +    //Sum of columns, sum(bij) = ei
      +    //    e1 = 0. ,
      +    //    e2 = 1.0/5.0 ,
      +    //    e3 = 3.0/10.0 ,
      +    //    e4 = 4.0/5.0 ,
      +    //    e5 = 8.0/9.0 ,
      +    //    e6 = 1.0 ,
      +    //    e7 = 1.0 ,
      +    
      +    // Difference between the higher and the lower order method coeff. :
      +    // b7j are the coefficients of higher order
      +    
      +        dc1 = -(b71 - 5179.0 / 57600.0),
      +        dc2 = -(b72 - .0),
      +        dc3 = -(b73 - 7571.0 / 16695.0),
      +        dc4 = -(b74 - 393.0 / 640.0),
      +        dc5 = -(b75 + 92097.0 / 339200.0),
      +        dc6 = -(b76 - 187.0 / 2100.0),
      +        dc7 = -(- 1.0 / 40.0);
      +    
      +    // const G4int numberOfVariables = GetNumberOfVariables();
      +    //   The number of variables to be integrated over    
      +    field_utils::ShortState yTemp;
      +    
      +    yOut[7] = yTemp[7]  = fyIn[7] = yInput[7];  // Pass along the time - used in RightHandSide
      +    
      +    //  Saving yInput because yInput and yOut can be aliases for same array
      +    //
      +    for(unsigned int i = 0; i < N; ++i)
      +    {
      +        fyIn[i]  = yInput[i];
      +        yTemp[i] = yInput[i] + b21 * hstep * dydx[i];
      +    }
      +    RightHandSideInl(yTemp, ak2);              // 2nd stage
      +    
      +    for(unsigned int i = 0; i < N; ++i)
      +    {
      +        yTemp[i] = fyIn[i] + hstep * (b31 * dydx[i] + b32 * ak2[i]);
      +    }
      +    RightHandSideInl(yTemp, ak3);              // 3rd stage
      +    
      +    for(unsigned int i = 0; i < N; ++i)
      +    {
      +        yTemp[i] = fyIn[i] + hstep * (
      +            b41 * dydx[i] + b42 * ak2[i] + b43 * ak3[i]);
      +    }
      +    RightHandSideInl(yTemp, ak4);              // 4th stage
      +    
      +    for(unsigned int i = 0; i < N; ++i)
      +    {
      +        yTemp[i] = fyIn[i] + hstep * (
      +            b51 * dydx[i] + b52 * ak2[i] + b53 * ak3[i] + b54 * ak4[i]);
      +    }
      +    RightHandSideInl(yTemp, ak5);              // 5th stage
      +    
      +    for(unsigned int i = 0; i < N; ++i)
      +    {
      +        yTemp[i] = fyIn[i] + hstep * (
      +            b61 * dydx[i] + b62 * ak2[i] + 
      +            b63 * ak3[i] + b64 * ak4[i] + b65 * ak5[i]);
      +    }
      +    RightHandSideInl(yTemp, ak6);              // 6th stage
      +    
      +    for(unsigned int i = 0; i < N; ++i)
      +    {
      +        yOut[i] = fyIn[i] + hstep * (
      +            b71 * dydx[i] + b72 * ak2[i] + b73 * ak3[i] +
      +            b74 * ak4[i] + b75 * ak5[i] + b76 * ak6[i]);
      +    }
      +    RightHandSideInl(yOut, ak7);               // 7th and Final stage
      +    
      +    for(unsigned int i = 0; i < N; ++i)
      +    {
      +        yErr[i] = hstep * (
      +            dc1 * dydx[i] + dc2 * ak2[i] + 
      +            dc3 * ak3[i] + dc4 * ak4[i] +
      +            dc5 * ak5[i] + dc6 * ak6[i] + dc7 * ak7[i]
      +        ) + 1.5e-18;
      +
      +        // Store Input and Final values, for possible use in calculating chord
      +        //
      +        fyOut[i] = yOut[i];
      +        fdydxIn[i] = dydx[i];        
      +    }
      +    
      +    fLastStepLength = hstep;
      +}
      +
      +
      +template 
      +inline void
      +G4TDormandPrince45::Stepper(const G4double yInput[],
      +                                          const G4double dydx[],
      +                                          G4double Step,
      +                                          G4double yOutput[],
      +                                          G4double yError[])
      +{
      +  assert( yOutput != yInput );
      +  assert( yError  != yInput );
      +  
      +  StepWithError( yInput, dydx, Step, yOutput, yError);
      +}
      +
      +template 
      +G4double
      +G4TDormandPrince45::DistChord() const
      +{
      +    // Coefficients were taken from Some Practical Runge-Kutta Formulas
      +    // by Lawrence F. Shampine, page 149, c*
      +    //
      +    const G4double hf1 = 6025192743.0 / 30085553152.0,
      +                   hf3 = 51252292925.0 / 65400821598.0,
      +                   hf4 = - 2691868925.0 / 45128329728.0,
      +                   hf5 = 187940372067.0 / 1594534317056.0,
      +                   hf6 = - 1776094331.0 / 19743644256.0,
      +                   hf7 = 11237099.0 / 235043384.0;
      +
      +    G4ThreeVector mid;
      +
      +    for(unsigned int i = 0; i < 3; ++i) 
      +    {
      +        mid[i] = fyIn[i] + 0.5 * fLastStepLength * (
      +            hf1 * fdydxIn[i] + hf3 * ak3[i] + 
      +            hf4 * ak4[i] + hf5 * ak5[i] + hf6 * ak6[i] + hf7 * ak7[i]);
      +    }
      +
      +    const G4ThreeVector begin = makeVector(fyIn, field_utils::Value3D::Position);
      +    const G4ThreeVector end = makeVector(fyOut,  field_utils::Value3D::Position);
      +
      +    return G4LineSection::Distline(mid, begin, end);
      +}
      +
      +// The lower (4th) order interpolant given by Dormand and Prince:
      +//        J. R. Dormand and P. J. Prince, "Runge-Kutta triples"
      +//        Computers & Mathematics with Applications, vol. 12, no. 9,
      +//        pp. 1007-1017, 1986.
      +//
      +template 
      +void
      +G4TDormandPrince45::
      +Interpolate4thOrder(G4double yOut[], G4double tau) const
      +{
      +    // const G4int numberOfVariables = GetNumberOfVariables();
      +    
      +    const G4double tau2 = tau * tau,
      +                   tau3 = tau * tau2,
      +                   tau4 = tau2 * tau2;
      +
      +    const G4double bf1 = 1.0 / 11282082432.0 * (
      +        157015080.0 * tau4 - 13107642775.0 * tau3 + 34969693132.0 * tau2 - 
      +        32272833064.0 * tau + 11282082432.0);
      +
      +    const G4double bf3 = - 100.0 / 32700410799.0 * tau * (
      +        15701508.0 * tau3 - 914128567.0 * tau2 + 2074956840.0 * tau - 
      +        1323431896.0);
      +    
      +    const G4double bf4 = 25.0 / 5641041216.0 * tau * (
      +        94209048.0 * tau3 - 1518414297.0 * tau2 + 2460397220.0 * tau - 
      +        889289856.0);
      +    
      +    const G4double bf5 = - 2187.0 / 199316789632.0 * tau * (
      +        52338360.0 * tau3 - 451824525.0 * tau2 + 687873124.0 * tau - 
      +        259006536.0);
      +
      +    const G4double bf6 = 11.0 / 2467955532.0 * tau * (
      +        106151040.0 * tau3 - 661884105.0 * tau2 + 
      +        946554244.0 * tau - 361440756.0);
      +    
      +    const G4double bf7 = 1.0 / 29380423.0 * tau * (1.0 - tau) * (
      +        8293050.0 * tau2 - 82437520.0 * tau + 44764047.0);
      +
      +    for(unsigned int i = 0; i < N; ++i)
      +    {
      +        yOut[i] = fyIn[i] + fLastStepLength * tau * (
      +            bf1 * fdydxIn[i] + bf3 * ak3[i] + bf4 * ak4[i] + 
      +            bf5 * ak5[i] + bf6 * ak6[i] + bf7 * ak7[i]);
      +    }
      +}
      +
      +// Following interpolant of order 5 was given by Baker,Dormand,Gilmore, Prince :
      +//        T. S. Baker, J. R. Dormand, J. P. Gilmore, and P. J. Prince,
      +//        "Continuous approximation with embedded Runge-Kutta methods"
      +//        Applied Numerical Mathematics, vol. 22, no. 1, pp. 51-62, 1996.
      +//
      +// Calculating the extra stages for the interpolant
      +//
      +template 
      +void G4TDormandPrince45::SetupInterpolation5thOrder()
      +{
      +    // Coefficients for the additional stages
      +    //
      +    const G4double b81 = 6245.0 / 62208.0,
      +                   b82 = 0.0,
      +                   b83 = 8875.0 / 103032.0,
      +                   b84 = -125.0 / 1728.0,
      +                   b85 = 801.0 / 13568.0,
      +                   b86 = -13519.0 / 368064.0,
      +                   b87 = 11105.0 / 368064.0,
      +        
      +                   b91 = 632855.0 / 4478976.0,
      +                   b92 = 0.0,
      +                   b93 = 4146875.0 / 6491016.0,
      +                   b94 = 5490625.0 /14183424.0,
      +                   b95 = -15975.0 / 108544.0,
      +                   b96 = 8295925.0 / 220286304.0,
      +                   b97 = -1779595.0 / 62938944.0,
      +                   b98 = -805.0 / 4104.0;
      +    
      +    // const G4int numberOfVariables = GetNumberOfVariables();
      +    field_utils::ShortState yTemp;
      +
      +    // Evaluate the extra stages
      +    //
      +    for(unsigned int i = 0; i < N; ++i)
      +    {
      +        yTemp[i] = fyIn[i] + fLastStepLength * (
      +            b81 * fdydxIn[i] + b82 * ak2[i] + b83 * ak3[i] +
      +            b84 * ak4[i] + b85 * ak5[i] + b86 * ak6[i] +
      +            b87 * ak7[i]
      +        );
      +    }
      +    RightHandSideInl(yTemp, ak8);          // 8th Stage
      +    
      +    for(unsigned int i = 0; i < N; ++i)
      +    {
      +        yTemp[i] = fyIn[i] + fLastStepLength * (
      +            b91 * fdydxIn[i] + b92 * ak2[i] + b93 * ak3[i] +
      +            b94 * ak4[i] + b95 * ak5[i] + b96 * ak6[i] +
      +            b97 * ak7[i] + b98 * ak8[i]
      +        );
      +    }
      +    RightHandSideInl(yTemp, ak9);          // 9th Stage
      +}
      +
      +// Calculating the interpolated result yOut with the coefficients
      +//
      +template 
      +void G4TDormandPrince45::
      +Interpolate5thOrder(G4double yOut[], G4double tau) const
      +{
      +    // Define the coefficients for the polynomials
      +    //
      +    G4double bi[10][5];
      +    
      +    //  COEFFICIENTS OF   bi[1]
      +    bi[1][0] = 1.0,
      +    bi[1][1] = -38039.0 / 7040.0,
      +    bi[1][2] = 125923.0 / 10560.0,
      +    bi[1][3] = -19683.0 / 1760.0,
      +    bi[1][4] = 3303.0 / 880.0,
      +    //  --------------------------------------------------------
      +    //
      +    //  COEFFICIENTS OF  bi[2]
      +    bi[2][0] = 0.0,
      +    bi[2][1] = 0.0,
      +    bi[2][2] = 0.0,
      +    bi[2][3] = 0.0,
      +    bi[2][4] = 0.0,
      +    //  --------------------------------------------------------
      +    //
      +    //  COEFFICIENTS OF  bi[3]
      +    bi[3][0] = 0.0,
      +    bi[3][1] = -12500.0 / 4081.0,
      +    bi[3][2] = 205000.0 / 12243.0,
      +    bi[3][3] = -90000.0 / 4081.0,
      +    bi[3][4] = 36000.0 / 4081.0,
      +    //  --------------------------------------------------------
      +    //
      +    //  COEFFICIENTS OF  bi[4]
      +    bi[4][0] = 0.0,
      +    bi[4][1] = -3125.0 / 704.0,
      +    bi[4][2] = 25625.0 / 1056.0,
      +    bi[4][3] = -5625.0 / 176.0,
      +    bi[4][4] = 1125.0 / 88.0,
      +    //  --------------------------------------------------------
      +    //
      +    //  COEFFICIENTS OF  bi[5]
      +    bi[5][0] = 0.0,
      +    bi[5][1] = 164025.0 / 74624.0,
      +    bi[5][2] = -448335.0 / 37312.0,
      +    bi[5][3] = 295245.0 / 18656.0,
      +    bi[5][4] = -59049.0 / 9328.0,
      +    //  --------------------------------------------------------
      +    //
      +    //  COEFFICIENTS OF  bi[6]
      +    bi[6][0] = 0.0,
      +    bi[6][1] = -25.0 / 28.0,
      +    bi[6][2] = 205.0 / 42.0,
      +    bi[6][3] = -45.0 / 7.0,
      +    bi[6][4] = 18.0 / 7.0,
      +    //  --------------------------------------------------------
      +    //
      +    //  COEFFICIENTS OF  bi[7]
      +    bi[7][0] = 0.0,
      +    bi[7][1] = -2.0 / 11.0,
      +    bi[7][2] = 73.0 / 55.0,
      +    bi[7][3] = -171.0 / 55.0,
      +    bi[7][4] = 108.0 / 55.0,
      +    //  --------------------------------------------------------
      +    //
      +    //  COEFFICIENTS OF  bi[8]
      +    bi[8][0] = 0.0,
      +    bi[8][1] = 189.0 / 22.0,
      +    bi[8][2] = -1593.0 / 55.0,
      +    bi[8][3] = 3537.0 / 110.0,
      +    bi[8][4] = -648.0 / 55.0,
      +    //  --------------------------------------------------------
      +    //
      +    //  COEFFICIENTS OF  bi[9]
      +    bi[9][0] = 0.0,
      +    bi[9][1] = 351.0 / 110.0,
      +    bi[9][2] = -999.0 / 55.0,
      +    bi[9][3] = 2943.0 / 110.0,
      +    bi[9][4] = -648.0 / 55.0;
      +    //  --------------------------------------------------------
      +        
      +    // Calculating the polynomials
      + 
      +    G4double b[10];
      +    std::memset(b, 0.0, sizeof(b));
      +
      +    G4double tauPower = 1.0;
      +    for(G4int j = 0; j <= 4; ++j)
      +    {       
      +       for(G4int iStage = 1; iStage <= 9; ++iStage)
      +       {
      +          b[iStage] += bi[iStage][j] * tauPower;
      +       }
      +       tauPower *= tau;       
      +    }
      +
      +    // const G4int numberOfVariables = GetNumberOfVariables();
      +    const G4double stepLen = fLastStepLength * tau;
      +    for(G4int i = 0; i < N; ++i)
      +    {
      +        yOut[i] = fyIn[i] + stepLen * (
      +            b[1] * fdydxIn[i] + b[2] * ak2[i] + b[3] * ak3[i] +
      +            b[4] * ak4[i] + b[5] * ak5[i] + b[6] * ak6[i] +
      +            b[7] * ak7[i] + b[8] * ak8[i] + b[9] * ak9[i]
      +        );
      +    }
      +}
      +
      +
      +#endif
      diff --git a/source/geometry/magneticfield/include/G4TExplicitEuler.hh b/source/geometry/magneticfield/include/G4TExplicitEuler.hh
      new file mode 100644
      index 0000000000..a88e0a7ca8
      --- /dev/null
      +++ b/source/geometry/magneticfield/include/G4TExplicitEuler.hh
      @@ -0,0 +1,101 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4TExplicitEuler
      +//
      +// Class description:
      +//
      +// Templated version of G4ExplicitEuler
      +//
      +//
      +// Created: Josh Xie, June 2014  (supported by Google Summer of Code 2014 )
      +// 
      +// Supervisors:  Sandro Wenzel, John Apostolakis (CERN)
      +// Adapted from G4G4TExplicitEuler class
      +// -------------------------------------------------------------------
      +//
      +// Information from G4Explicit Euler:
      +// ----------------------------------
      +// Explicit Euler stepper for magnetic field: x_1 = x_0 + h * dx_0.
      +// The simplistic approach to solving linear differential equations.
      +// Take the current derivative and add it to the current position.
      +// 
      +// Created: W.Wander , 12.09.1997
      +// -------------------------------------------------------------------
      +
      +// --------------------------------------------------------------------
      +#ifndef G4TExplicitEuler_HH
      +#define G4TExplicitEuler_HH
      +
      +#include "G4TMagErrorStepper.hh"
      +#include "G4ThreeVector.hh"
      +
      +template 
      +class G4TExplicitEuler
      +  : public G4TMagErrorStepper, T_Equation, N>
      +{
      + public:  // with description
      +  static constexpr double IntegratorCorrection = 1.;
      +
      +  G4TExplicitEuler(T_Equation* EqRhs, G4int numberOfVariables = N)
      +    : G4TMagErrorStepper, T_Equation, N>(
      +        EqRhs, numberOfVariables)
      +    , fEquation_Rhs(EqRhs)
      +  {
      +    if( numberOfVariables != N ){
      +       G4ExceptionDescription msg;
      +       msg << "Equation has an incompatible number of variables." ;
      +       msg << "   template N = " << N << " equation-Nvar= "
      +           << numberOfVariables;
      +       G4Exception("G4TExplicitEuler: constructor", "GeomField0003",
      +                   FatalErrorInArgument, msg );
      +    }
      +  }
      +   
      +  ~G4TExplicitEuler() { ; }
      +
      +  inline void DumbStepper(const G4double yIn[],
      +                          const G4double dydx[],
      +                          G4double h, G4double yOut[]) // override final
      +  {
      +    // Initialise time to t0, needed when it is not updated by the integration.
      +    // yOut[7] = yIn[7];   //  Better to set it to NaN;  // TODO
      +
      +    for(G4int i = 0; i < N; ++i)
      +    {
      +      yOut[i] = yIn[i] + h * dydx[i];  // 1st and only Step
      +    }
      +
      +    return;
      +  }
      +
      + public:  // without description
      +  G4int IntegratorOrder() const { return 1; }
      +
      + private:
      +  T_Equation* fEquation_Rhs;
      +};
      +
      +#endif /* G4TExplicitEuler_HH */
      diff --git a/source/geometry/magneticfield/include/G4TMagErrorStepper.hh b/source/geometry/magneticfield/include/G4TMagErrorStepper.hh
      new file mode 100644
      index 0000000000..6da94b3ea6
      --- /dev/null
      +++ b/source/geometry/magneticfield/include/G4TMagErrorStepper.hh
      @@ -0,0 +1,181 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4TMagErrorStepper
      +//
      +// Class description:
      +//
      +// Templated version of G4MagErrorStepper
      +//
      +//
      +// Created: Josh Xie  (supported by Google Summer of Code 2014 )
      +// Supervisors:  Sandro Wenzel, John Apostolakis (CERN)
      +// Adapted from G4G4TMagErrorStepper class
      +// --------------------------------------------------------------------
      +#ifndef G4TMAG_ERROR_STEPPER_HH
      +#define G4TMAG_ERROR_STEPPER_HH
      +
      +#include "G4Types.hh"
      +#include "G4MagIntegratorStepper.hh"
      +#include "G4ThreeVector.hh"
      +#include "G4LineSection.hh"
      +
      +template 
      +class G4TMagErrorStepper : public G4MagIntegratorStepper
      +{
      + public:  // with description
      +  G4TMagErrorStepper(T_Equation* EqRhs, G4int numberOfVariables,
      +                     G4int numStateVariables = 12)
      +    : G4MagIntegratorStepper(EqRhs, numberOfVariables, numStateVariables)
      +    , fEquation_Rhs(EqRhs)
      +  {
      +    // G4int nvar = std::max(this->GetNumberOfVariables(), 8);
      +  }
      +
      +  virtual ~G4TMagErrorStepper() { ; }
      +
      +  inline void RightHandSide(G4double y[], G4double dydx[])
      +  {
      +    fEquation_Rhs->T_Equation::RightHandSide(y, dydx);
      +  }
      +
      +  inline void Stepper(const G4double yInput[], const G4double dydx[],
      +                      G4double hstep, G4double yOutput[], G4double yError[]) override final;
      + 
      +  inline G4double DistChord() const override final;
      +
      + private:
      +  G4TMagErrorStepper(const G4TMagErrorStepper&);
      +  G4TMagErrorStepper& operator=(const G4TMagErrorStepper&);
      +  // Private copy constructor and assignment operator.
      +
      + private:
      +  // STATE
      +  G4ThreeVector fInitialPoint, fMidPoint, fFinalPoint;
      +  // Data stored in order to find the chord
      +
      +  // Dependent Objects, owned --- part of the STATE
      +  G4double yInitial[N < 8 ? 8 : N];
      +  G4double yMiddle[N < 8 ? 8 : N];
      +  G4double dydxMid[N < 8 ? 8 : N];
      +  G4double yOneStep[N < 8 ? 8 : N];
      +  // The following arrays are used only for temporary storage
      +  // they are allocated at the class level only for efficiency -
      +  // so that calls to new and delete are not made in Stepper().
      +
      +  T_Equation* fEquation_Rhs;
      +};
      +
      +// ------------   Implementation -----------------------
      +
      +template 
      +void G4TMagErrorStepper::
      +Stepper(const G4double yInput[],
      +        const G4double dydx[],
      +              G4double hstep,
      +              G4double yOutput[],
      +              G4double yError[])
      +// The stepper for the Runge Kutta integration. The stepsize
      +// is fixed, with the Step size given by hstep.
      +// Integrates ODE starting values y[0 to N].
      +// Outputs yout[] and its estimated error yerr[].
      +{
      +  const unsigned int maxvar = GetNumberOfStateVariables();
      +  
      +  //  Saving yInput because yInput and yOutput can be aliases for same array
      +  for(unsigned int i = 0; i < N; ++i)
      +     yInitial[i] = yInput[i];
      +  yInitial[7] =
      +     yInput[7];  // Copy the time in case ... even if not really needed
      +  yMiddle[7]  = yInput[7];  // Copy the time from initial value
      +  yOneStep[7] = yInput[7];  // As it contributes to final value of yOutput ?
      +  // yOutput[7] = yInput[7];  // -> dumb stepper does it too for RK4
      +  for(unsigned int i = N; i < maxvar; ++i)
      +     yOutput[i] = yInput[i];
      +
      +  G4double halfStep = hstep * 0.5;
      +  
      +  // Do two half steps
      +  
      +  static_cast(this)->DumbStepper(yInitial, dydx, halfStep,
      +                                               yMiddle);
      +  this->RightHandSide(yMiddle, dydxMid);
      +  static_cast(this)->DumbStepper(yMiddle, dydxMid, halfStep,
      +                                             yOutput);
      +  
      +  // Store midpoint, chord calculation
      +  
      +  fMidPoint = G4ThreeVector(yMiddle[0], yMiddle[1], yMiddle[2]);
      +  
      +  // Do a full Step
      +  static_cast(this)->DumbStepper(yInitial, dydx, hstep, yOneStep);
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +    yError[i] = yOutput[i] - yOneStep[i];
      +    yOutput[i] +=
      +       yError[i] *
      +       T_Stepper::IntegratorCorrection;  // Provides accuracy increased
      +    // by 1 order via the
      +    // Richardson Extrapolation
      +  }
      +
      +  fInitialPoint = G4ThreeVector(yInitial[0], yInitial[1], yInitial[2]);
      +  fFinalPoint   = G4ThreeVector(yOutput[0], yOutput[1], yOutput[2]);
      +  
      +  return;
      +}
      +
      +
      +template 
      +inline G4double
      +G4TMagErrorStepper::DistChord() const
      +{
      +  // Estimate the maximum distance from the curve to the chord
      +  //
      +  //  We estimate this using the distance of the midpoint to
      +  //  chord (the line between
      +  //
      +  //  Method below is good only for angle deviations < 2 pi,
      +  //   This restriction should not a problem for the Runge cutta methods,
      +  //   which generally cannot integrate accurately for large angle deviations.
      +  G4double distLine, distChord;
      +
      +  if(fInitialPoint != fFinalPoint)
      +  {
      +    distLine = G4LineSection::Distline(fMidPoint, fInitialPoint, fFinalPoint);
      +    // This is a class method that gives distance of Mid
      +    //  from the Chord between the Initial and Final points.
      +    
      +    distChord = distLine;
      +  }
      +  else
      +  {
      +     distChord = (fMidPoint - fInitialPoint).mag();
      +  }
      +  
      +  return distChord;
      +}
      +
      +#endif /* G4TMagErrorStepper_HH */
      diff --git a/source/geometry/magneticfield/include/G4TMagFieldEquation.hh b/source/geometry/magneticfield/include/G4TMagFieldEquation.hh
      new file mode 100644
      index 0000000000..7bd6d7f8a7
      --- /dev/null
      +++ b/source/geometry/magneticfield/include/G4TMagFieldEquation.hh
      @@ -0,0 +1,101 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4TMagFieldEquation
      +//
      +// Class description:
      +//
      +// Templated version of equation of motion of a particle in a pure magnetic field.
      +// Enables use of inlined code for field, equation, stepper, driver,
      +// avoiding all virtual calls.
      +//
      +// Adapted from G4Mag_UsualEqRhs.hh
      +// --------------------------------------------------------------------
      +// Created: Josh Xie  (Google Summer of Code 2014 )
      +// Adapted from G4Mag_UsualEqRhs
      +// 
      +// #include "G4ChargeState.hh"
      +#include "G4Mag_UsualEqRhs.hh"
      +
      +template 
      +
      +class G4TMagFieldEquation : public G4Mag_UsualEqRhs
      +{
      +  public:
      +
      +    G4TMagFieldEquation(T_Field* f)
      +       : G4Mag_UsualEqRhs(f)
      +    {
      +            itsField = f;
      +    }
      +
      +    virtual ~G4TMagFieldEquation(){;}
      +
      +    inline void GetFieldValue(const G4double Point[4],
      +                              G4double Field[]) const
      +    {
      +      itsField->T_Field::GetFieldValue(Point, Field);
      +    }
      +
      +    inline void TEvaluateRhsGivenB( const G4double y[],
      +                                    const G4double B[3],
      +                                    G4double dydx[] ) const
      +    {
      +      G4double momentum_mag_square = y[3]*y[3] + y[4]*y[4] + y[5]*y[5];
      +      G4double inv_momentum_magnitude = 1.0 / std::sqrt( momentum_mag_square );
      +      G4double cof = FCof()*inv_momentum_magnitude;
      +      
      +      dydx[0] = y[3]*inv_momentum_magnitude;       //  (d/ds)x = Vx/V
      +      dydx[1] = y[4]*inv_momentum_magnitude;       //  (d/ds)y = Vy/V
      +      dydx[2] = y[5]*inv_momentum_magnitude;       //  (d/ds)z = Vz/V
      +      
      +      dydx[3] = cof*(y[4]*B[2] - y[5]*B[1]) ;  // Ax = a*(Vy*Bz - Vz*By)
      +      dydx[4] = cof*(y[5]*B[0] - y[3]*B[2]) ;  // Ay = a*(Vz*Bx - Vx*Bz)
      +      dydx[5] = cof*(y[3]*B[1] - y[4]*B[0]) ;  // Az = a*(Vx*By - Vy*Bx)
      +      
      +      return ;
      +    }
      +
      +    __attribute__((always_inline)) 
      +    void RightHandSide(const G4double y[], G4double dydx[] )
      +    //	const
      +    {
      +      G4double Field[G4maximum_number_of_field_components]; 
      +      G4double  PositionAndTime[4];
      +      PositionAndTime[0] = y[0];
      +      PositionAndTime[1] = y[1];
      +      PositionAndTime[2] = y[2];
      +      PositionAndTime[3] = y[7];   
      +      GetFieldValue(PositionAndTime, Field) ;
      +      TEvaluateRhsGivenB(y, Field, dydx);
      +    }
      +   
      +private:
      +  enum { G4maximum_number_of_field_components = 24 };
      +
      +  // Dependent objects
      +  T_Field *itsField;
      +};
      +
      diff --git a/source/geometry/magneticfield/include/G4TQuadrupoleMagField.hh b/source/geometry/magneticfield/include/G4TQuadrupoleMagField.hh
      new file mode 100644
      index 0000000000..3372e2b773
      --- /dev/null
      +++ b/source/geometry/magneticfield/include/G4TQuadrupoleMagField.hh
      @@ -0,0 +1,113 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4TMagFieldEquation
      +//
      +// Class description:
      +//
      +// Templated version of  motion of quadrupole magnetic field.
      +// Enables testing of inlined code for field, equation, stepper, driver,
      +// avoiding all virtual calls.
      +//
      +// --------------------------------------------------------------------
      +// Created: Josh Xie  (Google Summer of Code 2014 )
      +// Adapted from G4QuadrupoleMagField  ( of June 2014 .... )
      +//
      +
      +#ifndef G4T_QUADRUPOLE_MAGFIELD_HH
      +#define G4T_QUADRUPOLE_MAGFIELD_HH
      +
      +#include "G4ThreeVector.hh"
      +#include "G4RotationMatrix.hh"
      +#include "G4MagneticField.hh"
      +
      +static G4RotationMatrix IdentityMatrix; 
      +
      +class G4TQuadrupoleMagField : public G4MagneticField 
      +{
      +  public: // with description
      +
      +  G4TQuadrupoleMagField(G4double pGradient)
      +  {
      +    fGradient = pGradient ;
      +    fOrigin   = G4ThreeVector( 0.0, 0.0, 0.0) ;
      +    fpMatrix  = &IdentityMatrix;
      +  }
      +
      +        G4TQuadrupoleMagField(G4double pGradient, 
      +                G4ThreeVector pOrigin, 
      +                G4RotationMatrix* pMatrix)
      +        {
      +            fGradient    = pGradient ;
      +            fOrigin      = pOrigin ;
      +            fpMatrix     = pMatrix ;
      +        }
      +
      +        virtual ~G4TQuadrupoleMagField() {;}
      +
      +        inline void GetFieldValue(const G4double y[7],
      +                G4double B[3]     ) const
      +        {
      +            G4ThreeVector r_global = G4ThreeVector(
      +                    y[0] - fOrigin.x(), 
      +                    y[1] - fOrigin.y(), 
      +                    y[2] - fOrigin.z());
      +
      +            G4ThreeVector r_local = G4ThreeVector(
      +                    fpMatrix->colX() * r_global,
      +                    fpMatrix->colY() * r_global,
      +                    fpMatrix->colZ() * r_global);
      +
      +            G4ThreeVector B_local = G4ThreeVector(
      +                    fGradient * r_local.y(),
      +                    fGradient * r_local.x(),
      +                    0);
      +
      +            G4ThreeVector B_global = G4ThreeVector(
      +                    fpMatrix->inverse().rowX() * B_local,
      +                    fpMatrix->inverse().rowY() * B_local,
      +                    fpMatrix->inverse().rowZ() * B_local);
      +
      +            B[0] = B_global.x() ;
      +            B[1] = B_global.y() ;
      +            B[2] = B_global.z() ;
      +        }
      +
      +        G4TQuadrupoleMagField* Clone() const
      +        {
      +            //TODO: Can the fpMatrix be shared??
      +            return new G4TQuadrupoleMagField(this->fGradient,
      +                    this->fOrigin,
      +                    this->fpMatrix);
      +        }
      +
      +    private:
      +
      +        G4double          fGradient;
      +        G4ThreeVector     fOrigin;
      +        G4RotationMatrix* fpMatrix;
      +};
      +#endif
      +
      diff --git a/source/geometry/magneticfield/include/G4TSimpleHeum.hh b/source/geometry/magneticfield/include/G4TSimpleHeum.hh
      new file mode 100644
      index 0000000000..025707c8bc
      --- /dev/null
      +++ b/source/geometry/magneticfield/include/G4TSimpleHeum.hh
      @@ -0,0 +1,140 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4TSimpleHeum
      +//
      +// Class description:
      +//
      +// Templated version of G4SimpleHeum
      +//
      +// Created: Josh Xie  (supported by Google Summer of Code 2014 )
      +// Supervisors:  Sandro Wenzel, John Apostolakis (CERN)
      +// --------------------------------------------------------------------
      +// Adapted from G4G4TSimpleHeum class
      +// Original desription:
      +//
      +// Simple Heum stepper for magnetic field:
      +//        x_1 = x_0  +
      +//              h * 1/4 * dx(t0,x0)  +
      +//                  3/4 * dx(t0+2/3*h, x0+2/3*h*(dx(t0+h/3,x0+h/3*dx(t0,x0)))) 
      +//
      +// Third order solver.
      +// Created: W.Wander , 12/09/1997
      +// --------------------------------------------------------------------
      +
      +#ifndef TSIMPLEHEUM_HH
      +#define TSIMPLEHEUM_HH
      +
      +#include 
      +#include "G4TMagErrorStepper.hh"
      +#include "G4ThreeVector.hh"
      +
      +template 
      +class G4TSimpleHeum
      +  : public G4TMagErrorStepper, T_Equation, N>
      +{
      + public:  // with description
      +  constexpr static unsigned int gIntegratorOrder = 3;
      +  static constexpr double IntegratorCorrection= 1.0 /
      +                                                ((1<T_Equation::RightHandSide(y, dydx);
      +  }
      +
      +  inline void DumbStepper(const G4double yIn[],
      +                          const G4double dydx[],
      +                          G4double h, G4double yOut[]); // override final
      +
      + public:  // without description
      +  G4int IntegratorOrder() const { return gIntegratorOrder; }
      +
      + private:
      +  G4int fNumberOfVariables;
      +
      +  G4double dydxTemp[N];
      +  G4double dydxTemp2[N];
      +  G4double yTemp[N];
      +  G4double yTemp2[N];
      +  // scratch space
      +   
      +  T_Equation* fEquation_Rhs;
      +};
      +
      +template 
      +G4TSimpleHeum::G4TSimpleHeum(T_Equation* EqRhs,
      +                unsigned int numberOfVariables )
      +    : G4TMagErrorStepper, T_Equation, N>(
      +        EqRhs, numberOfVariables)
      +    , fNumberOfVariables(numberOfVariables)
      +    , fEquation_Rhs(EqRhs)
      +{
      +  assert(fNumberOfVariables == N);
      +  if( dynamic_cast(EqRhs) == nullptr )
      +  {
      +    G4Exception("G4TSimpleHeum: constructor", "GeomField0001",
      +                FatalException, "Equation is not an G4EquationOfMotion.");      
      +  }    
      +}
      +
      +template 
      +inline void
      +G4TSimpleHeum::DumbStepper(const G4double yIn[],
      +                                         const G4double dydx[],
      +                                         G4double h, G4double yOut[])
      +{
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +     yTemp[i] = yIn[i] + (1.0 / 3.0) * h * dydx[i];
      +  }
      +  
      +  this->RightHandSide(yTemp, dydxTemp);
      +  
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +     yTemp2[i] = yIn[i] + (2.0 / 3.0) * h * dydxTemp[i];
      +  }
      +  
      +  this->RightHandSide(yTemp2, dydxTemp2);
      +  
      +  for(unsigned int i = 0; i < N; ++i)
      +  {
      +     yOut[i] = yIn[i] + h * (0.25 * dydx[i] + 0.75 * dydxTemp2[i]);
      +  }
      +  
      +  if(fNumberOfVariables == 12)
      +  {
      +     this->NormalisePolarizationVector(yOut);
      +  }
      +}
      +
      +#endif /* TSIMPLEHEUM_HH */
      diff --git a/source/geometry/magneticfield/include/G4TSimpleRunge.hh b/source/geometry/magneticfield/include/G4TSimpleRunge.hh
      new file mode 100644
      index 0000000000..2ab15bea97
      --- /dev/null
      +++ b/source/geometry/magneticfield/include/G4TSimpleRunge.hh
      @@ -0,0 +1,102 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4TSimpleRunge
      +//
      +// Class description:
      +//
      +// Templated version of G4SimpleRunge
      +//
      +//
      +// Created: Josh Xie  (supported by Google Summer of Code 2014 )
      +// Supervisors:  Sandro Wenzel, John Apostolakis (CERN)
      +// Adapted from G4G4TSimpleRunge class
      +// --------------------------------------------------------------------
      +#ifndef G4TSimpleRunge_HH
      +#define G4TSimpleRunge_HH
      +
      +#include 
      +#include "G4TMagErrorStepper.hh"
      +#include "G4ThreeVector.hh"
      +
      +template 
      +class G4TSimpleRunge
      +  : public G4TMagErrorStepper, T_Equation, N>
      +{
      + public:  // with description
      +  static constexpr double IntegratorCorrection = 1. / ((1 << 2) - 1);
      +
      +  G4TSimpleRunge(T_Equation* EqRhs, G4int numberOfVariables = 6)
      +    : G4TMagErrorStepper, T_Equation, N>(
      +        EqRhs, numberOfVariables)
      +    , fNumberOfVariables(numberOfVariables)
      +    , fEquation_Rhs(EqRhs)
      +      
      +  {
      +    // default GetNumberOfStateVariables() == 12
      +    assert(this->GetNumberOfStateVariables() <= 12);
      +  }
      +
      +  ~G4TSimpleRunge() { ; }
      +
      +  inline void RightHandSide(G4double y[],
      +                            G4double dydx[])
      +  {
      +    fEquation_Rhs->T_Equation::RightHandSide(y, dydx);
      +  }
      +
      +  inline void DumbStepper(const G4double yIn[],
      +                          const G4double dydx[],
      +                          G4double h, G4double yOut[]) // override final
      +  {
      +    // Initialise time to t0, needed when it is not updated by the integration.
      +    yTemp[7] = yOut[7] = yIn[7];  //  Better to set it to NaN;  // TODO
      +
      +    for(G4int i = 0; i < N; ++i)
      +    {
      +      yTemp[i] = yIn[i] + 0.5 * h * dydx[i];
      +    }
      +
      +    this->RightHandSide(yTemp, dydxTemp);
      +
      +    for(G4int i = 0; i < N; ++i)
      +    {
      +      yOut[i] = yIn[i] + h * (dydxTemp[i]);
      +    }
      +  }
      +
      + public:  // without description
      +  inline G4int IntegratorOrder() const { return 2; }
      +
      + private:
      +  G4int fNumberOfVariables;
      +  G4double dydxTemp[N > 12 ? N : 12];
      +  G4double yTemp[N > 12 ? N : 12];
      +
      +  T_Equation* fEquation_Rhs;
      +  // scratch space
      +};
      +
      +#endif /* G4TSimpleRunge_HH */
      diff --git a/source/geometry/magneticfield/include/G4TUniformMagneticField.hh b/source/geometry/magneticfield/include/G4TUniformMagneticField.hh
      new file mode 100644
      index 0000000000..88a2370b03
      --- /dev/null
      +++ b/source/geometry/magneticfield/include/G4TUniformMagneticField.hh
      @@ -0,0 +1,114 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +
      +#ifndef G4UniformMagneticField_HH
      +#define G4UniformMagneticField_HH
      +
      +#include "G4Types.hh"
      +#include "G4ThreeVector.hh"
      +#include "G4MagneticField.hh"
      +
      +class G4TUniformMagneticField : public G4MagneticField
      +{
      +  public:  // with description
      +
      +    G4TUniformMagneticField(const G4ThreeVector& FieldVector ) 
      +    // A field with value equal to FieldVector.
      +    {
      +      fFieldComponents[0] = FieldVector.x();
      +      fFieldComponents[1] = FieldVector.y();
      +      fFieldComponents[2] = FieldVector.z();
      +    }
      +   
      +
      +    G4TUniformMagneticField(G4double vField,
      +                            G4double vTheta,
      +                            G4double vPhi     ) 
      +    {
      +      if ( (vField<0) || (vTheta<0) || (vTheta>pi) || (vPhi<0) || (vPhi>twopi) )
      +      {
      +         G4Exception("G4TUniformMagneticField::G4TUniformMagneticField()",
      +                     "GeomField0002", FatalException, "Invalid parameters.") ;
      +      }
      +      fFieldComponents[0] = vField*std::sin(vTheta)*std::cos(vPhi) ;
      +      fFieldComponents[1] = vField*std::sin(vTheta)*std::sin(vPhi) ;
      +      fFieldComponents[2] = vField*std::cos(vTheta) ;
      +    }
      +
      +    virtual ~G4TUniformMagneticField() {;}
      +
      +    G4TUniformMagneticField(const G4TUniformMagneticField &p)
      +       : G4MagneticField(p)
      +    {
      +       for (G4int i=0; i<3; ++i)
      +          fFieldComponents[i] = p.fFieldComponents[i];
      +    }
      +   
      +    G4TUniformMagneticField& operator = (const G4TUniformMagneticField &p)
      +            // Copy constructor and assignment operator.
      +    {
      +      if (&p == this) return *this;
      +      for (G4int i=0; i<3; ++i)
      +         fFieldComponents[i] = p.fFieldComponents[i];
      +      return *this;
      +    }
      +
      +    inline void GetFieldValue(const G4double yTrack[4],
      +                              G4double *B) const 
      +    {
      +       B[0]= fFieldComponents[0] ;
      +       B[1]= fFieldComponents[1] ;
      +       B[2]= fFieldComponents[2] ;
      +    }
      +   
      +    void SetFieldValue(const G4ThreeVector& newFieldVector)
      +    {
      +       fFieldComponents[0] = newFieldVector.x();
      +       fFieldComponents[1] = newFieldVector.y();
      +       fFieldComponents[2] = newFieldVector.z();
      +    }
      +
      +    G4ThreeVector GetConstantFieldValue() const
      +    {
      +       G4ThreeVector B(fFieldComponents[0],
      +                       fFieldComponents[1],
      +                       fFieldComponents[2]);
      +       return B;
      +    }
      +    // Return the field value
      +   
      +    virtual G4TUniformMagneticField* Clone() const
      +    { 
      +       return new G4TUniformMagneticField( G4ThreeVector(this->fFieldComponents[0],
      +                                                         this->fFieldComponents[1],
      +                                                         this->fFieldComponents[2]) );
      +    }
      +
      +    private:
      +        G4double fFieldComponents[3] ;
      +};
      +
      +#endif
      diff --git a/source/geometry/magneticfield/sources.cmake b/source/geometry/magneticfield/sources.cmake
      index a9a893aba2..cf726600b6 100644
      --- a/source/geometry/magneticfield/sources.cmake
      +++ b/source/geometry/magneticfield/sources.cmake
      @@ -98,6 +98,17 @@ geant4_define_module(NAME G4magneticfield
           G4RKIntegrationDriver.icc
           G4SimpleHeum.hh
           G4SimpleRunge.hh
      +    G4TExplicitEuler.hh
      +    G4TSimpleHeum.hh
      +    G4TSimpleRunge.hh
      +    G4TCashKarpRKF45.hh    
      +    G4TClassicalRK4.hh
      +    G4TDormandPrince45.hh
      +    G4TMagFieldEquation.hh
      +    G4TMagErrorStepper.hh
      +    G4TQuadrupoleMagField.hh
      +    G4TUniformMagneticField.hh
      +    G4TCachedMagneticField.hh
           G4TrialsCounter.hh
           G4TrialsCounter.icc
           G4TsitourasRK45.hh
      diff --git a/source/geometry/magneticfield/src/G4ChordFinder.cc b/source/geometry/magneticfield/src/G4ChordFinder.cc
      index 1d859d25f5..f921bbc02b 100644
      --- a/source/geometry/magneticfield/src/G4ChordFinder.cc
      +++ b/source/geometry/magneticfield/src/G4ChordFinder.cc
      @@ -37,35 +37,46 @@
       #include "G4MagIntegratorDriver.hh"
       // #include "G4ClassicalRK4.hh"
       // #include "G4CashKarpRKF45.hh"
      +// #include "G4NystromRK4.hh"
       // #include "G4BogackiShampine23.hh"
       // #include "G4BogackiShampine45.hh"
      +
       #include "G4DormandPrince745.hh"
       
      -// New FSAL type driver / steppers -----
      +// New templated stepper(s) -- avoid virtual calls to equation rhs
      +#include "G4TDormandPrince45.hh"
      +
      +// FSAL type driver / steppers -----
       #include "G4FSALIntegrationDriver.hh"
       #include "G4VFSALIntegrationStepper.hh"
       #include "G4RK547FEq1.hh"
       // #include "G4RK547FEq2.hh"
       // #include "G4RK547FEq3.hh"
      -#include "G4NystromRK4.hh"
      -
      -// New FSAL type driver / steppers -----
      -#include "G4IntegrationDriver.hh"
      -#include "G4InterpolationDriver.hh"
       // #include "G4FSALBogackiShampine45.hh"
       // #include "G4FSALDormandPrince745.hh"
      +
      +// Templated type drivers -----
      +#include "G4IntegrationDriver.hh"
      +#include "G4InterpolationDriver.hh"
      +
       #include "G4HelixHeum.hh"
       #include "G4BFieldIntegrationDriver.hh"
       
      +#include "G4CachedMagneticField.hh"
      +
       #include 
       
      +static G4bool gVerboseCtor = false; // true;
      +
       // ..........................................................................
       
       G4ChordFinder::G4ChordFinder(G4VIntegrationDriver* pIntegrationDriver)
         : fDefaultDeltaChord(0.25 * mm), fIntgrDriver(pIntegrationDriver)
       {
         // Simple constructor -- it does not create equation
      -
      +  if( gVerboseCtor )
      +    G4cout << "G4ChordFinder: Simple constructor -- it uses pre-existing driver." << G4endl;
      +   
         fDeltaChord = fDefaultDeltaChord;       // Parameters
       }
       
      @@ -75,45 +86,71 @@ G4ChordFinder::G4ChordFinder(G4VIntegrationDriver* pIntegrationDriver)
       G4ChordFinder::G4ChordFinder( G4MagneticField*        theMagField,
                                     G4double                stepMinimum,
                                     G4MagIntegratorStepper* pItsStepper,
      -                              G4bool                  useFSALstepper )
      +                              G4int               stepperDriverId )
         : fDefaultDeltaChord(0.25 * mm)
       {
         // Construct the Chord Finder
         // by creating in inverse order the Driver, the Stepper and EqRhs ...
      -
      +  constexpr G4int nVar6 = 6;   // Components integrated in Usual Equation of motion
      +  
         fDeltaChord = fDefaultDeltaChord;       // Parameters
       
      -  using NewFsalStepperType = G4RK547FEq1; // or 2 or 3
      -  const char* NewFSALStepperName =
      -      "G4RK574FEq1> FSAL 4th/5th order 7-stage 'Equilibrium-type' #1.";
      +  // stepperDriverId = 2;
      +  
      +  G4bool useFSALstepper=      (stepperDriverId == 1);
      +  G4bool useTemplatedStepper= (stepperDriverId == 2);
      +  G4bool useRegularStepper  = (stepperDriverId == 3);
      +  // G4bool useBFieldDriver    = !useRegularStepper && !useFSALstepper && !useTemplatedStepper;
      +  
      +  // G4bool useRegularStepper  = !stepperDriverId != 3) && !useFSALStepper && !useTemplatedStepper;
      +  // If it's not 0, 1 or 2 then 'BFieldDriver' which combines DoPri5 (short) and helix is used.
      +  
      +  using EquationType = G4Mag_UsualEqRhs;
      +  
      +  using TemplatedStepperType =
      +         G4TDormandPrince45; // 5th order embedded method. High efficiency.
      +  const char* TemplatedStepperName = 
      +      "G4TDormandPrince745 (templated Dormand-Prince45, aka DoPri5): 5th/4th Order 7-stage embedded";
      +  
         using RegularStepperType =
      -         G4DormandPrince745; // 5th order embedded method. High efficiency.
      +         G4DormandPrince745; // 5th order embedded method. High efficiency.     
                // G4ClassicalRK4;        // The old default
                // G4CashKarpRKF45;       // First embedded method in G4
                // G4BogackiShampine45;   // High efficiency 5th order embedded method
                // G4NystromRK4;          // Nystrom stepper 4th order 
                // G4RK547FEq1;  // or 2 or 3 
         const char* RegularStepperName = 
      -      "G4DormandPrince745 (aka DOPRI5): 5th/4th Order 7-stage embedded stepper";
      +      "G4DormandPrince745 (aka DOPRI5): 5th/4th Order 7-stage embedded";
             // "BogackiShampine 45 (Embedded 5th/4th Order, 7-stage)";
             // "Nystrom stepper 4th order";
       
      -  // Configurable
      -  G4bool forceFSALstepper = false; //  Choice - true to enable !!
      -  G4bool recallFSALflag  = useFSALstepper;
      -  useFSALstepper   = forceFSALstepper || useFSALstepper;
      -
      +  using NewFsalStepperType = G4DormandPrince745; // Now works -- 2020.10.08
      +                                                 //  Was G4RK547FEq1; // or 2 or 3
      +  const char* NewFSALStepperName =
      +      "G4RK574FEq1> FSAL 4th/5th order 7-stage 'Equilibrium-type' #1.";
      +  
       #ifdef G4DEBUG_FIELD
      +  static G4bool verboseDebug = true;
      +  if( verboseDebug )
      +  {
            G4cout << "G4ChordFinder 2nd Constructor called. " << G4endl;
      -     G4cout << " Parameters: " << G4endl;
      -     G4cout << "    useFSAL stepper= " << useFSALstepper
      -            << " (request = " << recallFSALflag 
      -            << " force FSAL = " << forceFSALstepper << " )" << G4endl;
      +     G4cout << " Arguments: " << G4endl
      +            << " - min step = " << stepMinimum << G4endl
      +            << " - stepper ptr provided : "
      +            << ( pItsStepper==nullptr ? " no  " : " yes " ) << G4endl;
      +     if( pItsStepper==nullptr )
      +        G4cout << " - stepper/driver Id = " << stepperDriverId << " i.e. "
      +               << "  useFSAL = " << useFSALstepper
      +               << "  , useTemplated = " << useTemplatedStepper
      +               << "  , useRegular = " << useRegularStepper
      +               << "  , useFSAL = " << useFSALstepper        
      +               << G4endl;
      +  }
       #endif
       
         // useHigherStepper = forceHigherEffiencyStepper || useHigherStepper;
      -  
      -  G4Mag_EqRhs* pEquation = new G4Mag_UsualEqRhs(theMagField);
      +
      +  EquationType* pEquation = new G4Mag_UsualEqRhs(theMagField);
         fEquation = pEquation;                            
       
         // G4MagIntegratorStepper* regularStepper = nullptr;
      @@ -126,41 +163,87 @@ G4ChordFinder::G4ChordFinder( G4MagneticField*        theMagField,
       
         if( pItsStepper != nullptr )
         {
      -#if 0     
      -     // G4cout << " G4ChordFinder: Creating G4IntegrationDriver with "
      -     //        << " stepMinimum = " << stepMinimum
      -     //        << " numVar= " << pItsStepper->GetNumberOfVariables() << G4endl;
      -     // Type is not known - so must use old class
      +     if( gVerboseCtor )
      +       G4cout << " G4ChordFinder: Creating G4IntegrationDriver with "
      +              << " stepMinimum = " << stepMinimum
      +              << " numVar= " << pItsStepper->GetNumberOfVariables() << G4endl;
      +     // Stepper type is not known - so must use base class G4MagIntegratorStepper
            fIntgrDriver = new G4IntegrationDriver(
               stepMinimum, pItsStepper, pItsStepper->GetNumberOfVariables());
      -#else
      -     G4cout << " G4ChordFinder: Creating G4MagInt_Driver with "
      -            << " stepMinimum = " << stepMinimum
      -            << " numVar= " << pItsStepper->GetNumberOfVariables() << G4endl;     
      -     fIntgrDriver = new G4MagInt_Driver( stepMinimum, pItsStepper,
      -                                         pItsStepper->GetNumberOfVariables());
      -#endif     
      +
      +     // -- Older:
      +     // G4cout << " G4ChordFinder: Creating G4MagInt_Driver with " ...
      +     // Type is not known - so must use old class     
      +     // fIntgrDriver = new G4MagInt_Driver( stepMinimum, pItsStepper,
      +     //                                 pItsStepper->GetNumberOfVariables());
         }
      -  else if ( !useFSALstepper )
      +  else if ( useTemplatedStepper )
         {
      +     if( gVerboseCtor )
      +        G4cout << " G4ChordFinder: Creating Templated Stepper of type> "
      +               << TemplatedStepperName << G4endl;
            // RegularStepperType* regularStepper = nullptr; // To check the exception
      -     auto regularStepper = new RegularStepperType(pEquation);
      +     auto templatedStepper = new TemplatedStepperType(pEquation);
            //                    *** ******************
            //
            // Alternative - for G4NystromRK4:
            // = new G4NystromRK4(pEquation, 0.1*mm );
      -     fRegularStepperOwned = regularStepper;
      -
      -     if( regularStepper == nullptr )
      +     fRegularStepperOwned = templatedStepper;
      +     if( templatedStepper == nullptr )
            {
      -        message << "Stepper instantiation FAILED." << G4endl;        
      +        message << "Templated Stepper instantiation FAILED." << G4endl;        
               message << "G4ChordFinder: Attempted to instantiate "
      -                << RegularStepperName << " type stepper " << G4endl;
      -        G4Exception("G4ChordFinder::G4ChordFinder()",
      -                    "GeomField1001", JustWarning, message);
      +                << TemplatedStepperName << " type stepper " << G4endl;
               errorInStepperCreation = true;
            }
            else
      +     {
      +        fIntgrDriver = new G4IntegrationDriver(
      +           stepMinimum, templatedStepper, nVar6 );
      +        if( gVerboseCtor )
      +           G4cout << " G4ChordFinder: Using G4IntegrationDriver. " << G4endl;
      +     }
      +     
      +  }
      +  else if ( useRegularStepper   )  // Plain stepper -- not double ...
      +  {
      +     auto regularStepper = new RegularStepperType(pEquation);
      +     //                    *** ******************     
      +     fRegularStepperOwned = regularStepper;
      +
      +     if( gVerboseCtor )
      +        G4cout << " G4ChordFinder: Creating Driver for regular stepper.";
      +     
      +     if( regularStepper == nullptr )
      +     {
      +        message << "Regular Stepper instantiation FAILED." << G4endl;        
      +        message << "G4ChordFinder: Attempted to instantiate "
      +                << RegularStepperName << " type stepper " << G4endl;
      +        errorInStepperCreation = true;
      +     }
      +     else
      +     {
      +        auto dp5= dynamic_cast(regularStepper);
      +        if( dp5 ) {
      +           fIntgrDriver = new G4InterpolationDriver(
      +                                  stepMinimum, dp5, nVar6 );           
      +           if( gVerboseCtor )
      +              G4cout << " Using InterpolationDriver " << G4endl;
      +        } else {
      +           fIntgrDriver = new G4IntegrationDriver(
      +                                  stepMinimum, regularStepper, nVar6 );
      +           if( gVerboseCtor )
      +              G4cout << " Using IntegrationDriver " << G4endl;
      +        }
      +     }
      +  }
      +  else if ( !useFSALstepper )
      +  {
      +     auto regularStepper = new G4DormandPrince745(pEquation);
      +     //                    *** ******************
      +     //
      +     fRegularStepperOwned = regularStepper;
      +     
            {        
               using SmallStepDriver = G4InterpolationDriver;
               using LargeStepDriver = G4IntegrationDriver;
      @@ -245,9 +328,13 @@ G4ChordFinder::G4ChordFinder( G4MagneticField*        theMagField,
            const std::string BoolName[2]= { "False", "True" }; 
            errmsg << "  Configuration:  (constructor arguments) " << G4endl        
                   << "    provided Stepper = " << pItsStepper << G4endl
      -            << "    use FSAL stepper = " << BoolName[useFSALstepper]
      -            << " (request = " << BoolName[recallFSALflag]
      -            << " force FSAL = " << BoolName[forceFSALstepper] << " )"
      +            << " stepper/driver Id = " << stepperDriverId << " i.e. "
      +            << "   useTemplated = " << BoolName[useTemplatedStepper]
      +            << "   useRegular = " << BoolName[useRegularStepper]
      +            << "   useFSAL = " << BoolName[useFSALstepper]
      +            << "   using combo BField Driver = " <<
      +                   BoolName[ ! (useFSALstepper||useTemplatedStepper
      +                               || useRegularStepper ) ] 
                   << G4endl;
            errmsg << message.str(); 
            errmsg << "Aborting.";
      diff --git a/source/geometry/magneticfield/src/G4DormandPrince745.cc b/source/geometry/magneticfield/src/G4DormandPrince745.cc
      index ae7d39fa24..e81271869f 100644
      --- a/source/geometry/magneticfield/src/G4DormandPrince745.cc
      +++ b/source/geometry/magneticfield/src/G4DormandPrince745.cc
      @@ -57,6 +57,13 @@
       
       using namespace field_utils;
       
      +const G4String G4DormandPrince745::gStepperType =
      +     G4String("G4DormandPrince745: 5th order");
      +
      +const G4String G4DormandPrince745::gStepperDescription= G4String(
      +   "Embedeed 5th order Runge-Kutta stepper - 7 stages, FSAL, Interpolating.");
      +
      +
       G4DormandPrince745::G4DormandPrince745(G4EquationOfMotion* equation,
                                              G4int noIntegrationVariables)
           : G4MagIntegratorStepper(equation, noIntegrationVariables)
      @@ -71,7 +78,7 @@ void G4DormandPrince745::Stepper(const G4double yInput[],
                                              G4double dydxOutput[])
       {
         Stepper(yInput, dydx, hstep, yOutput, yError);
      -  copy(dydxOutput, ak7);
      +  field_utils::copy(dydxOutput, ak7);
       }
       
       // Stepper
      diff --git a/source/geometry/magneticfield/src/G4MagIntegratorStepper.cc b/source/geometry/magneticfield/src/G4MagIntegratorStepper.cc
      index 50deb109bb..6f62eca05b 100644
      --- a/source/geometry/magneticfield/src/G4MagIntegratorStepper.cc
      +++ b/source/geometry/magneticfield/src/G4MagIntegratorStepper.cc
      @@ -28,6 +28,7 @@
       // Author: J.Apostolakis, CERN - 15.01.1997
       // --------------------------------------------------------------------
       
      +#include 
       #include "G4MagIntegratorStepper.hh"
       
       // Constructor for stepper abstract base class. 
      @@ -43,4 +44,9 @@ G4MagIntegratorStepper( G4EquationOfMotion* Equation,
           fNoStateVariables(std::max(num_state_vars,8)),
           fIsFSAL(isFSAL)
       {
      +  if( Equation == nullptr ) {
      +     G4Exception( "G4MagIntegratorStepper::G4MagIntegratorStepper", "GeomField0003",
      +                  FatalErrorInArgument, "Must have non-null equation." );
      +  }
      +  assert( Equation != nullptr );
       }
      diff --git a/source/geometry/management/History b/source/geometry/management/History
      index acef467177..2dce4b010c 100644
      --- a/source/geometry/management/History
      +++ b/source/geometry/management/History
      @@ -15,7 +15,13 @@ commit in the repository !
            ----------------------------------------------------------
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
      -May 28, 2019 B.Morgan (geommng-V10-06-04)
      +November 8, 2020 E.Tcherniaev (geommng-V10-06-06)
      +- Bug fix in calculation of normal in G4UAdapter::DistanceToOut()
      +
      +October 28, 2020 Ben Morgan (geommng-V10-06-05)
      +- Remove include of obsolete CMake module
      +
      +May 28, 2020 B.Morgan (geommng-V10-06-04)
       - When using new CMake build, add location of generated G4GeomConfig.hh
         header to public include directories of G4geometrymng module.
       
      diff --git a/source/geometry/management/include/G4UAdapter.hh b/source/geometry/management/include/G4UAdapter.hh
      index dd3849e9e6..493fb3dafd 100644
      --- a/source/geometry/management/include/G4UAdapter.hh
      +++ b/source/geometry/management/include/G4UAdapter.hh
      @@ -366,19 +366,12 @@ DistanceToOut(const G4ThreeVector& pt, const G4ThreeVector& d,
         U3Vector v(d.x(), d.y(), d.z());
       
         G4double dist = UnplacedVolume_t::DistanceToOut(p, v, kInfinity);
      -  if(calcNorm) // *norm=n, but only after calcNorm check and if convex volume
      +  if(calcNorm)
         {
      -    if (UnplacedVolume_t::IsConvex())
      -    {
      -      U3Vector n, hitpoint = p + dist * v;
      -      UnplacedVolume_t::Normal(hitpoint, n);
      -      *validNorm = true;
      -      norm->set(n.x(), n.y(), n.z());
      -    }
      -    else
      -    {
      -      *validNorm = false;
      -    }
      +    *validNorm = UnplacedVolume_t::IsConvex();
      +    U3Vector n, hitpoint = p + dist * v;
      +    UnplacedVolume_t::Normal(hitpoint, n);
      +    norm->set(n.x(), n.y(), n.z());
         }
       
         // Apply Geant4 distance conventions
      diff --git a/source/geometry/management/sources.cmake b/source/geometry/management/sources.cmake
      index e91ff81855..112649638f 100644
      --- a/source/geometry/management/sources.cmake
      +++ b/source/geometry/management/sources.cmake
      @@ -125,8 +125,6 @@ geant4_define_module(NAME G4geometrymng
       
       # List any source specific properties here
       # For new system, must explicitly add path for generated header 
      -if(GEANT4_USE_NEW_CMAKE)
      -  geant4_module_include_directories(G4geometrymng
      -    PUBLIC $
      -    )
      -endif()
      +geant4_module_include_directories(G4geometrymng
      +  PUBLIC $
      +  )
      diff --git a/source/geometry/management/src/G4ReflectedSolid.cc b/source/geometry/management/src/G4ReflectedSolid.cc
      index 026b322734..40b61a51ce 100644
      --- a/source/geometry/management/src/G4ReflectedSolid.cc
      +++ b/source/geometry/management/src/G4ReflectedSolid.cc
      @@ -218,7 +218,7 @@ G4ReflectedSolid::CalculateExtent( const EAxis pAxis,
         // Separation of transformations. Calculation of the extent is done
         // in a reflection of the global space. In such way, the voxel is
         // reflected, but the solid is transformed just by G4AffineTransform.
      -  // It allows to use CalculateExtent() of the solid.
      +  // It allows one to use CalculateExtent() of the solid.
       
         // Reflect voxel limits in Z
         //
      diff --git a/source/geometry/navigation/History b/source/geometry/navigation/History
      index 3378bf574b..316f622150 100644
      --- a/source/geometry/navigation/History
      +++ b/source/geometry/navigation/History
      @@ -16,6 +16,18 @@ committal in the CVS repository !
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
       
      +October 15, 2020 - G.Cosmo (geomnav-V10-06-08)
      +--------------------------
      +- G4ReplicaNavigation: relaxed condition for step correction in ComputeStep().
      +
      +October 13, 2020 - E.Tcherniaev (geomnav-V10-06-07)
      +-------------------------------
      +- Added G4GeomTestVolume::TestOverlapInTree().
      +
      +September 8, 2020 - G.Cosmo (geomnav-V10-06-06)
      +---------------------------
      +- Fixed Coverity defects in G4RegularNavigation for uninitialised data.
      +
       June 15, 2020 - G.Cosmo (geomnav-V10-06-05)
       -----------------------
       - Fixed Coverity defects in G4LocatorChangeRecord and some code cleanup.
      diff --git a/source/geometry/navigation/include/G4GeomTestVolume.hh b/source/geometry/navigation/include/G4GeomTestVolume.hh
      index 2cb8bbd2db..c3bbc94584 100644
      --- a/source/geometry/navigation/include/G4GeomTestVolume.hh
      +++ b/source/geometry/navigation/include/G4GeomTestVolume.hh
      @@ -64,6 +64,10 @@ class G4GeomTestVolume
           void SetErrorsThreshold(G4int max);
             // Get/Set maximum number of errors to report (default set to 1)
       
      +    void TestOverlapInTree() const;
      +      // Check overlaps in the volume tree without
      +      // dublication in identical logical volumes
      +
           void TestRecursiveOverlap( G4int sLevel=0, G4int depth=-1 );
             // Activate overlaps check, propagating recursively to the daughters,
             // with possibility of specifying the initial level in the volume tree
      diff --git a/source/geometry/navigation/include/G4RegularNavigation.hh b/source/geometry/navigation/include/G4RegularNavigation.hh
      index 1e7398d9a9..96075e884c 100644
      --- a/source/geometry/navigation/include/G4RegularNavigation.hh
      +++ b/source/geometry/navigation/include/G4RegularNavigation.hh
      @@ -124,18 +124,16 @@ class G4RegularNavigation
           G4double kCarTolerance;  
           G4double fMinStep;
        
      -    G4bool fLastStepWasZero;
      +    G4bool fLastStepWasZero = false;
             // Whether the last ComputeStep moved Zero. Used to check for edges.
      -    G4int fNumberZeroSteps;
      +    G4int fNumberZeroSteps = 0;
             // Number of preceding moves that were Zero. Reset to 0 after finite step
      -    G4int fActionThreshold_NoZeroSteps;  
      +    G4int fActionThreshold_NoZeroSteps = 2;  
             // After this many failed/zero steps, act (push etc) 
      -    G4int fAbandonThreshold_NoZeroSteps; 
      +    G4int fAbandonThreshold_NoZeroSteps = 25; 
             // After this many failed/zero steps, abandon track
      -    G4int fNoStepsAllowed;
      +    G4int fNoStepsAllowed = 10000;
             // Maximum number of steps a track can travel skipping voxels (if there are more, track is assumed to be stuck and it is killed)
      -    G4bool fWarnPush;
      -      // Send warning message that a stuck particle has been pushed
       };
       
       #endif
      diff --git a/source/geometry/navigation/src/G4GeomTestVolume.cc b/source/geometry/navigation/src/G4GeomTestVolume.cc
      index 839ac20f30..fb6904bd65 100644
      --- a/source/geometry/navigation/src/G4GeomTestVolume.cc
      +++ b/source/geometry/navigation/src/G4GeomTestVolume.cc
      @@ -28,6 +28,7 @@
       // Author: G.Cosmo, CERN
       // --------------------------------------------------------------------
       
      +#include 
       #include 
       
       #include "G4GeomTestVolume.hh"
      @@ -116,6 +117,55 @@ void G4GeomTestVolume::SetErrorsThreshold(G4int max)
         maxErr = max;
       }
       
      +//
      +// Test overlap in tree
      +//
      +void G4GeomTestVolume::TestOverlapInTree() const
      +{
      +  std::queue volumes;
      +  std::set checked;
      +
      +  volumes.push(target);
      +  while (!volumes.empty())
      +  {
      +    G4VPhysicalVolume* current = volumes.front();
      +    volumes.pop();
      +
      +    // check overlaps for daughters
      +    G4LogicalVolume* logical = current->GetLogicalVolume();
      +    G4int ndaughters = logical->GetNoDaughters();
      +    for (G4int i=0; iGetDaughter(i);
      +      daughter->CheckOverlaps(resolution, tolerance, verbosity, maxErr);
      +    }
      +
      +    // append the queue of volumes
      +    G4LogicalVolume* previousLogical = nullptr;
      +    for (G4int i=0; iGetDaughter(i);
      +      G4LogicalVolume* daughterLogical = daughter->GetLogicalVolume();
      +      if (daughterLogical->GetNoDaughters() == 0) continue;
      +      G4bool found = (daughterLogical == previousLogical);
      +      if (!found) found = (checked.find(daughterLogical) != checked.cend());
      +      if (!found)
      +      {
      +        checked.emplace(daughterLogical);
      +        previousLogical = daughterLogical;
      +        volumes.push(daughter);
      +      }
      +      else
      +      {
      +        if (verbosity)
      +          G4cout << "Checking overlaps in tree of volume " << daughter->GetName()
      +                 << " (" << daughterLogical->GetSolid()->GetEntityType() << ")"
      +                 << " is omitted, to avoid duplication" << G4endl;
      +      }
      +    }
      +  }
      +}
      +
       //
       // TestRecursiveOverlap
       //
      diff --git a/source/geometry/navigation/src/G4GeometryMessenger.cc b/source/geometry/navigation/src/G4GeometryMessenger.cc
      index 3c0d6fe606..c590794d05 100644
      --- a/source/geometry/navigation/src/G4GeometryMessenger.cc
      +++ b/source/geometry/navigation/src/G4GeometryMessenger.cc
      @@ -95,7 +95,7 @@ G4GeometryMessenger::G4GeometryMessenger(G4TransportationManager* tman)
       
         pchkCmd = new G4UIcmdWithABool( "/geometry/navigator/push_notify", this );
         pchkCmd->SetGuidance( "Set navigator verbosity push notifications." );
      -  pchkCmd->SetGuidance( "This allows to disable/re-enable verbosity in" );
      +  pchkCmd->SetGuidance( "This allows one to disable/re-enable verbosity in" );
         pchkCmd->SetGuidance( "navigation, when tracks may get stuck and require" );
         pchkCmd->SetGuidance( "one artificial push along the direction by the" );
         pchkCmd->SetGuidance( "navigator. Notification is active by default." );
      diff --git a/source/geometry/navigation/src/G4RegularNavigation.cc b/source/geometry/navigation/src/G4RegularNavigation.cc
      index 5044a2aa03..d985e216bf 100644
      --- a/source/geometry/navigation/src/G4RegularNavigation.cc
      +++ b/source/geometry/navigation/src/G4RegularNavigation.cc
      @@ -43,11 +43,6 @@ G4RegularNavigation::G4RegularNavigation()
       {
         kCarTolerance = G4GeometryTolerance::GetInstance()->GetSurfaceTolerance();
         fMinStep = 101*kCarTolerance;
      -
      -  fActionThreshold_NoZeroSteps  = 2;
      -  fAbandonThreshold_NoZeroSteps = 25;
      -  fNoStepsAllowed = 10000;
      -  fWarnPush = true;
       }
       
       
      @@ -226,7 +221,7 @@ G4double G4RegularNavigation::ComputeStepSkippingEqualMaterials(
           if( fLastStepWasZero )
           {
             ++fNumberZeroSteps;
      -      //#ifdef G4DEBUG_NAVIGATION
      +#ifdef G4DEBUG_NAVIGATION
             if( fNumberZeroSteps > 1 )
             {
               G4ThreeVector pGlobalpoint = history.GetTransform(ide)
      @@ -238,34 +233,29 @@ G4double G4RegularNavigation::ComputeStepSkippingEqualMaterials(
       	       << ", Step= " << newStep
       	       << G4endl;
             }
      -      //#endif
      +#endif
             if( fNumberZeroSteps > fActionThreshold_NoZeroSteps-1 )
             {
       	// Act to recover this stuck track. Pushing it along direction
       	//
       	newStep = std::min(101*kCarTolerance*std::pow(10,fNumberZeroSteps-2),0.1);
       #ifdef G4VERBOSE
      -	if (fWarnPush)
      -	{
      -          G4ThreeVector pGlobalpoint = history.GetTransform(ide)
      +        G4ThreeVector pGlobalpoint = history.GetTransform(ide)
                                              .InverseTransformPoint(localPoint);
      -	  std::ostringstream message;
      -	  message.precision(16);
      -	  message << "Track stuck or not moving." << G4endl
      -		  << "          Track stuck, not moving for " 
      -		  << fNumberZeroSteps << " steps" << G4endl
      -		  << "- at point " << pGlobalpoint
      -		  << " (local point " << localPoint << ")" << G4endl
      -		  << "        local direction: " << localDirection 
      -		  << "          Potential geometry or navigation problem !"
      -		  << G4endl
      -		  << "          Trying pushing it of " << newStep << " mm ...";
      -	  G4Exception("G4RegularNavigation::ComputeStepSkippingEqualMaterials()",
      -		      "GeomRegNav1002",
      -		      JustWarning,
      -		      message,
      -		      "Potential overlap in geometry!");
      -	}
      +	std::ostringstream message;
      +	message.precision(16);
      +	message << "Track stuck or not moving." << G4endl
      +                << "          Track stuck, not moving for " 
      +                << fNumberZeroSteps << " steps" << G4endl
      +                << "- at point " << pGlobalpoint
      +                << " (local point " << localPoint << ")" << G4endl
      +                << "        local direction: " << localDirection 
      +                << "          Potential geometry or navigation problem !"
      +                << G4endl
      +                << "          Trying pushing it of " << newStep << " mm ...";
      +        G4Exception("G4RegularNavigation::ComputeStepSkippingEqualMaterials()",
      +                    "GeomRegNav1002", JustWarning, message,
      +                    "Potential overlap in geometry!");
       #endif
             }
             if( fNumberZeroSteps > fAbandonThreshold_NoZeroSteps-1 )
      diff --git a/source/geometry/navigation/src/G4ReplicaNavigation.cc b/source/geometry/navigation/src/G4ReplicaNavigation.cc
      index 7355c9fb59..d5860d63ab 100644
      --- a/source/geometry/navigation/src/G4ReplicaNavigation.cc
      +++ b/source/geometry/navigation/src/G4ReplicaNavigation.cc
      @@ -923,8 +923,7 @@ G4ReplicaNavigation::ComputeStep(const G4ThreeVector& globalPoint,
         // Requires further investigation and eventually reimplementation of
         // LevelLocate() to take into account point and direction ...
         //
      -  if  ( ( (ourStepGetSolid()->Inside(localPoint)==kSurface ) )
      +  if( ourStep 2*kCarTolerance)  // limit to thickness of surfaces
         {
      @@ -163,7 +163,7 @@ void G4Box::SetYHalfLength(G4double dy)
         fCubicVolume = 0.;
         fSurfaceArea = 0.;
         fRebuildPolyhedron = true;
      -} 
      +}
       
       //////////////////////////////////////////////////////////////////////////
       //
      @@ -186,7 +186,7 @@ void G4Box::SetZHalfLength(G4double dz)
         fCubicVolume = 0.;
         fSurfaceArea = 0.;
         fRebuildPolyhedron = true;
      -} 
      +}
       
       //////////////////////////////////////////////////////////////////////////
       //
      @@ -252,8 +252,8 @@ EInside G4Box::Inside(const G4ThreeVector& p) const
                         std::abs(p.x())-fDx,
                         std::abs(p.y())-fDy),
                         std::abs(p.z())-fDz);
      -  if (dist > delta) return kOutside;
      -  return (dist > -delta) ? kSurface : kInside;
      +  return (dist > delta) ? kOutside :
      +    ((dist > -delta) ? kSurface : kInside);
       }
       
       //////////////////////////////////////////////////////////////////////////
      @@ -278,7 +278,7 @@ G4ThreeVector G4Box::SurfaceNormal( const G4ThreeVector& p) const
         else
         {
           // Point is not on the surface
      -    // 
      +    //
       #ifdef G4CSGDEBUG
           std::ostringstream message;
           G4int oldprc = message.precision(16);
      @@ -353,7 +353,7 @@ G4double G4Box::DistanceToIn(const G4ThreeVector& p,
       }
       
       //////////////////////////////////////////////////////////////////////////
      -// 
      +//
       // Appoximate distance to box.
       // Returns largest perpendicular distance to the closest x/y/z sides of
       // the box, which is the most fast estimation of the shortest distance to box
      @@ -361,9 +361,10 @@ G4double G4Box::DistanceToIn(const G4ThreeVector& p,
       
       G4double G4Box::DistanceToIn(const G4ThreeVector& p) const
       {
      -  G4double dist = std::max(std::max(std::abs(p.x())-fDx,
      -                                    std::abs(p.y())-fDy),
      -                           std::abs(p.z())-fDz);
      +  G4double dist = std::max(std::max(
      +                  std::abs(p.x())-fDx,
      +                  std::abs(p.y())-fDy),
      +                  std::abs(p.z())-fDz);
         return (dist > 0) ? dist : 0.;
       }
       
      @@ -456,9 +457,10 @@ G4double G4Box::DistanceToOut(const G4ThreeVector& p) const
           DumpInfo();
         }
       #endif
      -  G4double dist = std::min(std::min(fDx-std::abs(p.x()),
      -                                    fDy-std::abs(p.y())),
      -                           fDz-std::abs(p.z()));
      +  G4double dist = std::min(std::min(
      +                  fDx-std::abs(p.x()),
      +                  fDy-std::abs(p.y())),
      +                  fDz-std::abs(p.z()));
         return (dist > 0) ? dist : 0.;
       }
       
      @@ -493,29 +495,27 @@ std::ostream& G4Box::StreamInfo(std::ostream& os) const
       
       //////////////////////////////////////////////////////////////////////////
       //
      -// GetPointOnSurface
      -//
      -// Return a point (G4ThreeVector) randomly and uniformly selected
      -// on the solid surface
      +// Return a point randomly and uniformly selected on the surface
       
       G4ThreeVector G4Box::GetPointOnSurface() const
       {
         G4double sxy = fDx*fDy, sxz = fDx*fDz, syz = fDy*fDz;
      -  G4double select = (sxy + sxz + syz)*G4UniformRand();
      +  G4double select = (sxy + sxz + syz)*G4QuickRand();
      +  G4double u = 2.*G4QuickRand() - 1.;
      +  G4double v = 2.*G4QuickRand() - 1.;
       
         if (select < sxy)
      -    return G4ThreeVector((2.*G4UniformRand() - 1.)*fDx,
      -                         (2.*G4UniformRand() - 1.)*fDy,
      -                         (select < 0.5*sxy) ? -fDz : fDz);
      -
      -  if (select < sxy + sxz)
      -    return G4ThreeVector((2.*G4UniformRand() - 1.)*fDx,
      -                         (select < sxy + 0.5*sxz) ? -fDy : fDy,
      -                         (2.*G4UniformRand() - 1.)*fDz);
      +    return G4ThreeVector(u*fDx,
      +                         v*fDy,
      +                         ((select < 0.5*sxy) ? -fDz : fDz));
      +  else if (select < sxy + sxz)
      +    return G4ThreeVector(u*fDx,
      +                         ((select < sxy + 0.5*sxz) ? -fDy : fDy),
      +                         v*fDz);
         else
      -    return G4ThreeVector((select < sxy + sxz + 0.5*syz) ? -fDx : fDx,
      -                         (2.*G4UniformRand() - 1.)*fDy,
      -                         (2.*G4UniformRand() - 1.)*fDz);
      +    return G4ThreeVector(((select < sxy + sxz + 0.5*syz) ? -fDx : fDx),
      +                         u*fDy,
      +                         v*fDz);
       }
       
       //////////////////////////////////////////////////////////////////////////
      diff --git a/source/geometry/solids/CSG/src/G4CSGSolid.cc b/source/geometry/solids/CSG/src/G4CSGSolid.cc
      index d57999030a..125ea2bdb5 100644
      --- a/source/geometry/solids/CSG/src/G4CSGSolid.cc
      +++ b/source/geometry/solids/CSG/src/G4CSGSolid.cc
      @@ -31,8 +31,7 @@
       #include 
       
       #include "G4CSGSolid.hh"
      -#include "Randomize.hh"
      -#include "G4RandomTools.hh"
      +#include "G4QuickRand.hh"
       #include "G4Polyhedron.hh"
       
       #include "G4AutoLock.hh"
      @@ -45,7 +44,7 @@ namespace
       //////////////////////////////////////////////////////////////////////////
       //
       // Constructor
      -//  - Base class constructor 
      +//  - Base class constructor
       
       G4CSGSolid::G4CSGSolid(const G4String& name) :
         G4VSolid(name)
      @@ -67,7 +66,7 @@ G4CSGSolid::G4CSGSolid( __void__& a )
       // Destructor
       //
       
      -G4CSGSolid::~G4CSGSolid() 
      +G4CSGSolid::~G4CSGSolid()
       {
         delete fpPolyhedron; fpPolyhedron = nullptr;
       }
      @@ -87,7 +86,7 @@ G4CSGSolid::G4CSGSolid(const G4CSGSolid& rhs)
       //
       // Assignment operator
       
      -G4CSGSolid& G4CSGSolid::operator = (const G4CSGSolid& rhs) 
      +G4CSGSolid& G4CSGSolid::operator = (const G4CSGSolid& rhs)
       {
          // Check assignment to self
          //
      @@ -105,11 +104,13 @@ G4CSGSolid& G4CSGSolid::operator = (const G4CSGSolid& rhs)
          delete fpPolyhedron; fpPolyhedron = nullptr;
       
          return *this;
      -}  
      +}
       
       G4double G4CSGSolid::GetRadiusInRing(G4double rmin, G4double rmax) const
       {
      -  return G4RandomRadiusInRing(rmin, rmax);
      +  G4double k = G4QuickRand();
      +  return (rmin <= 0) ? rmax*std::sqrt(k)
      +                     : std::sqrt(k*rmax*rmax + (1. - k)*rmin*rmin);
       }
       
       std::ostream& G4CSGSolid::StreamInfo(std::ostream& os) const
      diff --git a/source/geometry/solids/CSG/src/G4CutTubs.cc b/source/geometry/solids/CSG/src/G4CutTubs.cc
      index 7756400779..a0863e834a 100644
      --- a/source/geometry/solids/CSG/src/G4CutTubs.cc
      +++ b/source/geometry/solids/CSG/src/G4CutTubs.cc
      @@ -22,7 +22,7 @@
       // * use  in  resulting  scientific  publications,  and indicate your *
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
      -// 
      +//
       // G4CutTubs implementation
       //
       // 01.06.11 T.Nikitina - Derived from G4Tubs
      @@ -41,12 +41,17 @@
       #include "G4BoundingEnvelope.hh"
       
       #include "G4VPVParameterisation.hh"
      -
      -#include "Randomize.hh"
      -
      -#include "meshdefs.hh"
      +#include "G4QuickRand.hh"
       
       #include "G4VGraphicsScene.hh"
      +#include "G4Polyhedron.hh"
      +
      +#include "G4AutoLock.hh"
      +
      +namespace
      +{
      +  G4Mutex zminmaxMutex = G4MUTEX_INITIALIZER;
      +}
       
       using namespace CLHEP;
       
      @@ -60,7 +65,8 @@ G4CutTubs::G4CutTubs( const G4String &pName,
                             G4double pDz,
                             G4double pSPhi, G4double pDPhi,
                             G4ThreeVector pLowNorm,G4ThreeVector pHighNorm )
      -  : G4CSGSolid(pName), fRMin(pRMin), fRMax(pRMax), fDz(pDz), fSPhi(0), fDPhi(0)
      +  : G4CSGSolid(pName), fRMin(pRMin), fRMax(pRMax), fDz(pDz),
      +    fSPhi(0.), fDPhi(0.), fZMin(0.), fZMax(0.)
       {
         kRadTolerance = G4GeometryTolerance::GetInstance()->GetRadialTolerance();
         kAngTolerance = G4GeometryTolerance::GetInstance()->GetAngularTolerance();
      @@ -84,8 +90,8 @@ G4CutTubs::G4CutTubs( const G4String &pName,
           G4Exception("G4CutTubs::G4CutTubs()", "GeomSolids0002", FatalException, message);
         }
       
      -  // Check angles                                                                          
      -  //                                                                                       
      +  // Check angles
      +  //
         CheckPhiAngles(pSPhi, pDPhi);
       
         // Check on Cutted Planes Normals
      @@ -97,18 +103,18 @@ G4CutTubs::G4CutTubs( const G4String &pName,
           std::ostringstream message;
           message << "Inexisting Low/High Normal to Z plane or Parallel to Z."
                   << G4endl
      -            << "Normals to Z plane are (" << pLowNorm <<" and "
      -            << pHighNorm << ") in solid: " << GetName();
      +            << "Normals to Z plane are " << pLowNorm << " and "
      +            << pHighNorm << " in solid: " << GetName() << " \n";
           G4Exception("G4CutTubs::G4CutTubs()", "GeomSolids1001",
                       JustWarning, message, "Should use G4Tubs!");
         }
       
         // If Normal is (0,0,0),means parallel to R, give it value of (0,0,+/-1)
      -  // 
      +  //
         if (pLowNorm.mag2() == 0.)  { pLowNorm.setZ(-1.); }
         if (pHighNorm.mag2()== 0.)  { pHighNorm.setZ(1.); }
       
      -  // Given Normals to Cut Planes have to be an unit vectors. 
      +  // Given Normals to Cut Planes have to be an unit vectors.
         // Normalize if it is needed.
         //
         if (pLowNorm.mag2() != 1.)  { pLowNorm  = pLowNorm.unit();  }
      @@ -132,21 +138,26 @@ G4CutTubs::G4CutTubs( const G4String &pName,
         fLowNorm  = pLowNorm;
         fHighNorm = pHighNorm;
       
      -  // Check Intersection of cut planes. They MUST NOT Intersect
      +  // Check intersection of cut planes, they MUST NOT intersect
      +  // each other inside the lateral surface
         //
      -  // This check has been disabled as too strict.
      -  // See problem report #1887
      -  //
      -  // if(IsCrossingCutPlanes())
      -  // {
      -  //   std::ostringstream message;
      -  //   message << "Invalid Low or High Normal to Z plane; "
      -  //           << "Crossing Cutted Planes." << G4endl
      -  //           << "Invalid Norm to Z plane (" << pLowNorm << " and "
      -  //           << pHighNorm << ") in solid: " << GetName();
      -  //   G4Exception("G4CutTubs::G4CutTubs()", "GeomSolids0002",
      -  //               FatalException, message);
      -  // }
      +  if(IsCrossingCutPlanes())
      +  {
      +    std::ostringstream message;
      +    message << "Invalid normals to Z plane in solid : " << GetName() << G4endl
      +            << "Cut planes are crossing inside lateral surface !!!\n"
      +            << " Solid type: G4CutTubs\n"
      +            << " Parameters: \n"
      +            << "    inner radius : " << fRMin/mm << " mm \n"
      +            << "    outer radius : " << fRMax/mm << " mm \n"
      +            << "    half length Z: " << fDz/mm << " mm \n"
      +            << "    starting phi : " << fSPhi/degree << " degrees \n"
      +            << "    delta phi    : " << fDPhi/degree << " degrees \n"
      +            << "    low Norm     : " << fLowNorm << "  \n"
      +            << "    high Norm    : " << fHighNorm;
      +    G4Exception("G4CutTubs::G4CutTubs()", "GeomSolids0002",
      +                FatalException, message);
      +  }
       }
       
       ///////////////////////////////////////////////////////////////////////
      @@ -156,7 +167,7 @@ G4CutTubs::G4CutTubs( const G4String &pName,
       //
       G4CutTubs::G4CutTubs( __void__& a )
         : G4CSGSolid(a), kRadTolerance(0.), kAngTolerance(0.),
      -    fRMin(0.), fRMax(0.), fDz(0.), fSPhi(0.), fDPhi(0.),
      +    fRMin(0.), fRMax(0.), fDz(0.), fSPhi(0.), fDPhi(0.), fZMin(0.), fZMax(0.),
           sinCPhi(0.), cosCPhi(0.), cosHDPhi(0.), cosHDPhiOT(0.), cosHDPhiIT(0.),
           sinSPhi(0.), cosSPhi(0.), sinEPhi(0.), cosEPhi(0.),
           halfCarTolerance(0.), halfRadTolerance(0.), halfAngTolerance(0.),
      @@ -181,6 +192,7 @@ G4CutTubs::G4CutTubs(const G4CutTubs& rhs)
           kRadTolerance(rhs.kRadTolerance), kAngTolerance(rhs.kAngTolerance),
           fRMin(rhs.fRMin), fRMax(rhs.fRMax), fDz(rhs.fDz),
           fSPhi(rhs.fSPhi), fDPhi(rhs.fDPhi),
      +    fZMin(rhs.fZMin), fZMax(rhs.fZMax),
           sinCPhi(rhs.sinCPhi), cosCPhi(rhs.cosCPhi), cosHDPhi(rhs.cosHDPhi),
           cosHDPhiOT(rhs.cosHDPhiOT), cosHDPhiIT(rhs.cosHDPhiIT),
           sinSPhi(rhs.sinSPhi), cosSPhi(rhs.cosSPhi),
      @@ -197,7 +209,7 @@ G4CutTubs::G4CutTubs(const G4CutTubs& rhs)
       //
       // Assignment operator
       
      -G4CutTubs& G4CutTubs::operator = (const G4CutTubs& rhs) 
      +G4CutTubs& G4CutTubs::operator = (const G4CutTubs& rhs)
       {
          // Check assignment to self
          //
      @@ -212,6 +224,7 @@ G4CutTubs& G4CutTubs::operator = (const G4CutTubs& rhs)
          kRadTolerance = rhs.kRadTolerance; kAngTolerance = rhs.kAngTolerance;
          fRMin = rhs.fRMin; fRMax = rhs.fRMax; fDz = rhs.fDz;
          fSPhi = rhs.fSPhi; fDPhi = rhs.fDPhi;
      +   fZMin = rhs.fZMin; fZMax = rhs.fZMax;
          sinCPhi = rhs.sinCPhi; cosCPhi = rhs.cosCPhi;
          cosHDPhiOT = rhs.cosHDPhiOT; cosHDPhiIT = rhs.cosHDPhiIT;
          sinSPhi = rhs.sinSPhi; cosSPhi = rhs.cosSPhi;
      @@ -225,6 +238,111 @@ G4CutTubs& G4CutTubs::operator = (const G4CutTubs& rhs)
          return *this;
       }
       
      +//////////////////////////////////////////////////////////////////////////
      +//
      +// Get volume
      +
      +G4double G4CutTubs::GetCubicVolume()
      +{
      +  constexpr G4int nphi = 200, nrho = 100;
      +
      +  if (fCubicVolume == 0.)
      +  {
      +    // get parameters
      +    G4double rmin = GetInnerRadius();
      +    G4double rmax = GetOuterRadius();
      +    G4double dz   = GetZHalfLength();
      +    G4double sphi = GetStartPhiAngle();
      +    G4double dphi = GetDeltaPhiAngle();
      +
      +    // calculate volume
      +    G4double volume = dz*dphi*(rmax*rmax - rmin*rmin);
      +    if (dphi < twopi) // make recalculation
      +    {
      +      // set values for calculation of h - distance between
      +      // opposite points on bases
      +      G4ThreeVector nbot = GetLowNorm();
      +      G4ThreeVector ntop = GetHighNorm();
      +      G4double nx = nbot.x()/nbot.z() - ntop.x()/ntop.z();
      +      G4double ny = nbot.y()/nbot.z() - ntop.y()/ntop.z();
      +
      +      // compute volume by integration
      +      G4double delrho = (rmax - rmin)/nrho;
      +      G4double delphi = dphi/nphi;
      +      volume = 0.;
      +      for (G4int irho=0; irho pi)
      @@ -270,10 +388,10 @@ void G4CutTubs::BoundingLimits(G4ThreeVector& pMin, G4ThreeVector& pMax) const
         }
         else
         {
      -    G4double z1 = -rmin*(norm.x()*cosSphi + norm.y()*sinSphi)/norm.z() - dz;  
      -    G4double z2 = -rmin*(norm.x()*cosEphi + norm.y()*sinEphi)/norm.z() - dz;  
      -    G4double z3 = -rmax*(norm.x()*cosSphi + norm.y()*sinSphi)/norm.z() - dz;  
      -    G4double z4 = -rmax*(norm.x()*cosEphi + norm.y()*sinEphi)/norm.z() - dz;  
      +    G4double z1 = -rmin*(norm.x()*cosSphi + norm.y()*sinSphi)/norm.z() - dz;
      +    G4double z2 = -rmin*(norm.x()*cosEphi + norm.y()*sinEphi)/norm.z() - dz;
      +    G4double z3 = -rmax*(norm.x()*cosSphi + norm.y()*sinSphi)/norm.z() - dz;
      +    G4double z4 = -rmax*(norm.x()*cosEphi + norm.y()*sinEphi)/norm.z() - dz;
           zmin = std::min(std::min(std::min(z1,z2),z3),z4);
         }
       
      @@ -282,8 +400,8 @@ void G4CutTubs::BoundingLimits(G4ThreeVector& pMin, G4ThreeVector& pMax) const
         G4double zmax;
         norm = GetHighNorm();
         mag  = std::sqrt(norm.x()*norm.x() + norm.y()*norm.y());
      -  topx = (mag == 0) ? 0 : -rmax*norm.x()/mag; 
      -  topy = (mag == 0) ? 0 : -rmax*norm.y()/mag; 
      +  topx = (mag == 0) ? 0 : -rmax*norm.x()/mag;
      +  topy = (mag == 0) ? 0 : -rmax*norm.y()/mag;
         dists =  sinSphi*topx - cosSphi*topy;
         diste = -sinEphi*topx + cosEphi*topy;
         if (dphi > pi)
      @@ -302,10 +420,10 @@ void G4CutTubs::BoundingLimits(G4ThreeVector& pMin, G4ThreeVector& pMax) const
         }
         else
         {
      -    G4double z1 = -rmin*(norm.x()*cosSphi + norm.y()*sinSphi)/norm.z() + dz;  
      -    G4double z2 = -rmin*(norm.x()*cosEphi + norm.y()*sinEphi)/norm.z() + dz;  
      -    G4double z3 = -rmax*(norm.x()*cosSphi + norm.y()*sinSphi)/norm.z() + dz;  
      -    G4double z4 = -rmax*(norm.x()*cosEphi + norm.y()*sinEphi)/norm.z() + dz;  
      +    G4double z1 = -rmin*(norm.x()*cosSphi + norm.y()*sinSphi)/norm.z() + dz;
      +    G4double z2 = -rmin*(norm.x()*cosEphi + norm.y()*sinEphi)/norm.z() + dz;
      +    G4double z3 = -rmax*(norm.x()*cosSphi + norm.y()*sinSphi)/norm.z() + dz;
      +    G4double z4 = -rmax*(norm.x()*cosEphi + norm.y()*sinEphi)/norm.z() + dz;
           zmax = std::max(std::max(std::max(z1,z2),z3),z4);
         }
       
      @@ -349,7 +467,7 @@ void G4CutTubs::BoundingLimits(G4ThreeVector& pMin, G4ThreeVector& pMax) const
       G4bool G4CutTubs::CalculateExtent( const EAxis              pAxis,
                                          const G4VoxelLimits&     pVoxelLimit,
                                          const G4AffineTransform& pTransform,
      -                                         G4double&          pMin, 
      +                                         G4double&          pMin,
                                                G4double&          pMax    ) const
       {
         G4ThreeVector bmin, bmax;
      @@ -559,34 +677,34 @@ G4ThreeVector G4CutTubs::SurfaceNormal( const G4ThreeVector& p ) const
         // dist to Low Cut
         //
         distZLow =std::fabs((p+vZ).dot(fLowNorm));
      - 
      +
         // dist to High Cut
         //
         distZHigh = std::fabs((p-vZ).dot(fHighNorm));
       
      -  if (!fPhiFullCutTube)    // Protected against (0,0,z) 
      +  if (!fPhiFullCutTube)    // Protected against (0,0,z)
         {
           if ( rho > halfCarTolerance )
           {
             pPhi = std::atan2(p.y(),p.x());
      -    
      +
             if(pPhi  < fSPhi- halfCarTolerance)           { pPhi += twopi; }
             else if(pPhi > fSPhi+fDPhi+ halfCarTolerance) { pPhi -= twopi; }
       
      -      distSPhi = std::fabs(pPhi - fSPhi);       
      -      distEPhi = std::fabs(pPhi - fSPhi - fDPhi); 
      +      distSPhi = std::fabs(pPhi - fSPhi);
      +      distEPhi = std::fabs(pPhi - fSPhi - fDPhi);
           }
           else if( !fRMin )
           {
      -      distSPhi = 0.; 
      -      distEPhi = 0.; 
      +      distSPhi = 0.;
      +      distEPhi = 0.;
           }
           nPs = G4ThreeVector( sinSPhi, -cosSPhi, 0 );
           nPe = G4ThreeVector( -sinEPhi, cosEPhi, 0 );
         }
         if ( rho > halfCarTolerance ) { nR = G4ThreeVector(p.x()/rho,p.y()/rho,0); }
       
      -  if( distRMax <= halfCarTolerance ) 
      +  if( distRMax <= halfCarTolerance )
         {
           ++noSurfaces;
           sumnorm += nR;
      @@ -596,25 +714,25 @@ G4ThreeVector G4CutTubs::SurfaceNormal( const G4ThreeVector& p ) const
           ++noSurfaces;
           sumnorm -= nR;
         }
      -  if( fDPhi < twopi )   
      +  if( fDPhi < twopi )
         {
      -    if (distSPhi <= halfAngTolerance)  
      +    if (distSPhi <= halfAngTolerance)
           {
             ++noSurfaces;
             sumnorm += nPs;
           }
      -    if (distEPhi <= halfAngTolerance)  
      +    if (distEPhi <= halfAngTolerance)
           {
             ++noSurfaces;
             sumnorm += nPe;
           }
         }
      -  if (distZLow <= halfCarTolerance)  
      +  if (distZLow <= halfCarTolerance)
         {
           ++noSurfaces;
           sumnorm += fLowNorm;
         }
      -  if (distZHigh <= halfCarTolerance)  
      +  if (distZHigh <= halfCarTolerance)
         {
           ++noSurfaces;
           sumnorm += fHighNorm;
      @@ -628,7 +746,7 @@ G4ThreeVector G4CutTubs::SurfaceNormal( const G4ThreeVector& p ) const
           G4cout<< "G4CutTubs::SN ( "< distZLow )  { norm = fHighNorm ; }
             else                         { norm = fLowNorm; }
             break ;
      @@ -759,8 +877,8 @@ G4ThreeVector G4CutTubs::ApproxSurfaceNormal( const G4ThreeVector& p ) const
                         "GeomSolids1002", JustWarning,
                         "Undefined side for valid surface normal to solid.");
             break ;
      -    }    
      -  }                
      +    }
      +  }
         return norm;
       }
       
      @@ -770,7 +888,7 @@ G4ThreeVector G4CutTubs::ApproxSurfaceNormal( const G4ThreeVector& p ) const
       // Calculate distance to shape from outside, along normalised vector
       // - return kInfinity if no intersection, or intersection distance <= tolerance
       //
      -// - Compute the intersection with the z planes 
      +// - Compute the intersection with the z planes
       //        - if at valid r, phi, return
       //
       // -> If point is outer outer radius, compute intersection with rmax
      @@ -794,11 +912,11 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
         G4double tolORMax2, tolIRMin2;
         const G4double dRmax = 100.*fRMax;
         G4ThreeVector vZ=G4ThreeVector(0,0,fDz);
      -  
      +
         // Intersection point variables
         //
         G4double Dist, sd=0, xi, yi, zi, rho2, inum, iden, cosPsi, Comp,calf ;
      -  G4double t1, t2, t3, b, c, d ;     // Quadratic solver variables 
      +  G4double t1, t2, t3, b, c, d ;     // Quadratic solver variables
         G4double distZLow,distZHigh;
         // Calculate tolerant rmin and rmax
       
      @@ -901,7 +1019,7 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
           else
           {
             if ( sd=0) { sd=kInfinity; }
               return sd ;  // On/outside extent, and heading away
             }              // -> cannot intersect
      @@ -926,7 +1044,7 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
         {
           b = t2/t1 ;
           c = t3 - fRMax*fRMax ;
      -    
      +
           if ((t3 >= tolORMax2) && (t2<0))   // This also handles the tangent case
           {
             // Try outer cylinder intersection, c=(t3-fRMax*fRMax)/t1;
      @@ -943,7 +1061,7 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
                 {               // 64 bits systems. Split long distances and recompute
                   G4double fTerm = sd-std::fmod(sd,dRmax);
                   sd = fTerm + DistanceToIn(p+fTerm*v,v);
      -          } 
      +          }
                 // Check z intersection
                 //
                 zi = p.z() + sd*v.z() ;
      @@ -973,7 +1091,7 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
               }    //  end if (sd>=0)
             }      //  end if (d>=0)
           }        //  end if (r>=fRMax)
      -    else 
      +    else
           {
             // Inside outer radius :
             // check not inside, and heading through tubs (-> 0 to in)
      @@ -991,11 +1109,11 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
                 {
                   // In the old version, the small negative tangent for the point
                   // on surface was not taken in account, and returning 0.0 ...
      -            // New version: check the tangent for the point on surface and 
      +            // New version: check the tangent for the point on surface and
                   // if no intersection, return kInfinity, if intersection instead
                   // return sd.
                   //
      -            c = t3-fRMax*fRMax; 
      +            c = t3-fRMax*fRMax;
                   if ( c<=0.0 )
                   {
                     return 0.0;
      @@ -1007,26 +1125,26 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
                     if ( d>=0.0 )
                     {
                       snxt = c/(-b+std::sqrt(d)); // using safe solution
      -                                            // for quadratic equation 
      +                                            // for quadratic equation
                       if ( snxt < halfCarTolerance ) { snxt=0; }
                       return snxt ;
      -              }      
      +              }
                     else
                     {
                       return kInfinity;
                     }
                   }
      -          } 
      +          }
               }
               else
      -        {   
      +        {
                 // In the old version, the small negative tangent for the point
                 // on surface was not taken in account, and returning 0.0 ...
      -          // New version: check the tangent for the point on surface and 
      +          // New version: check the tangent for the point on surface and
                 // if no intersection, return kInfinity, if intersection instead
                 // return sd.
                 //
      -          c = t3 - fRMax*fRMax; 
      +          c = t3 - fRMax*fRMax;
                 if ( c<=0.0 )
                 {
                   return 0.0;
      @@ -1038,10 +1156,10 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
                   if ( d>=0.0 )
                   {
                     snxt= c/(-b+std::sqrt(d)); // using safe solution
      -                                         // for quadratic equation 
      +                                         // for quadratic equation
                     if ( snxt < halfCarTolerance ) { snxt=0; }
                     return snxt ;
      -            }      
      +            }
                   else
                   {
                     return kInfinity;
      @@ -1049,8 +1167,8 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
                 }
               } // end if   (!fPhiFullCutTube)
             }   // end if   (t3>tolIRMin2)
      -    }     // end if   (Inside Outer Radius) 
      -      
      +    }     // end if   (Inside Outer Radius)
      +
           if ( fRMin )    // Try inner cylinder intersection
           {
             c = (t3 - fRMin*fRMin)/t1 ;
      @@ -1059,7 +1177,7 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
             {
               // Always want 2nd root - we are outside and know rmax Hit was bad
               // - If on surface of rmin also need farthest root
      -        
      +
               sd =( b > 0. )? c/(-b - std::sqrt(d)) : (-b + std::sqrt(d));
               if (sd >= -10*halfCarTolerance)  // check forwards
               {
      @@ -1070,7 +1188,7 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
                 {             // 64 bits systems. Split long distances and recompute
                   G4double fTerm = sd-std::fmod(sd,dRmax);
                   sd = fTerm + DistanceToIn(p+fTerm*v,v);
      -          } 
      +          }
                 zi = p.z() + sd*v.z() ;
                 xi = p.x() + sd*v.x() ;
                 yi = p.y() + sd*v.y() ;
      @@ -1084,7 +1202,7 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
                     //
                     if ( fPhiFullCutTube )
                     {
      -                return sd ; 
      +                return sd ;
                     }
                     else
                     {
      @@ -1118,7 +1236,7 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
           // First phi surface (Starting phi)
           //
           Comp = v.x()*sinSPhi - v.y()*cosSPhi ;
      -                
      +
           if ( Comp < 0 )  // Component in outwards normal dirn
           {
             Dist = (p.y()*cosSPhi - p.x()*sinSPhi) ;
      @@ -1137,7 +1255,7 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
                      -(zi+fDz)*fLowNorm.z())>-halfCarTolerance)
                 {
                   if ((-xi*fHighNorm.x()-yi*fHighNorm.y()
      -                 +(fDz-zi)*fHighNorm.z())>-halfCarTolerance) 
      +                 +(fDz-zi)*fHighNorm.z())>-halfCarTolerance)
                   {
                     rho2 = xi*xi + yi*yi ;
                     if ( ( (rho2 >= tolIRMin2) && (rho2 <= tolIRMax2) )
      @@ -1156,13 +1274,13 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
                   }   //two Z conditions
                 }
               }
      -      }    
      +      }
           }
      -      
      +
           // Second phi surface (Ending phi)
           //
           Comp = -(v.x()*sinEPhi - v.y()*cosEPhi) ;
      -        
      +
           if (Comp < 0 )  // Component in outwards normal dirn
           {
             Dist = -(p.y()*cosEPhi - p.x()*sinEPhi) ;
      @@ -1207,18 +1325,18 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p,
               }
             }
           }         //  Comp < 0
      -  }           //  !fPhiFullTube 
      +  }           //  !fPhiFullTube
         if ( snxt If point is outer outer radius, compute intersection with rmax
      @@ -1273,11 +1391,11 @@ G4double G4CutTubs::DistanceToIn( const G4ThreeVector& p ) const
            // Psi=angle from central phi to point
            //
            cosPsi = (p.x()*cosCPhi + p.y()*sinCPhi)/rho ;
      -     
      +
            if ( cosPsi < cosHDPhi )
            {
              // Point lies outside phi range
      - 
      +
              if ( (p.y()*cosCPhi - p.x()*sinCPhi) <= 0 )
              {
                safePhi = std::fabs(p.x()*sinSPhi - p.y()*cosSPhi) ;
      @@ -1312,11 +1430,11 @@ G4double G4CutTubs::DistanceToOut( const G4ThreeVector& p,
         G4double deltaR, t1, t2, t3, b, c, d2, roMin2 ;
         G4double distZLow,distZHigh,calfH,calfL;
         G4ThreeVector vZ=G4ThreeVector(0,0,fDz);
      - 
      +
         // Vars for phi intersection:
         //
         G4double pDistS, compS, pDistE, compE, sphi2, xi, yi, vphi, roi2 ;
      - 
      +
         // Z plane intersection
         // Distances to ZCut(Low/High)
       
      @@ -1350,7 +1468,7 @@ G4double G4CutTubs::DistanceToOut( const G4ThreeVector& p,
        }
         if ( calfL>0)
         {
      -   
      +
           if ( distZLow < halfCarTolerance )
           {
             sz = -distZLow/calfL ;
      @@ -1358,7 +1476,7 @@ G4double G4CutTubs::DistanceToOut( const G4ThreeVector& p,
             snxt=sz;
             side = kMZ ;
             }
      -      
      +
           }
           else
           {
      @@ -1396,7 +1514,7 @@ G4double G4CutTubs::DistanceToOut( const G4ThreeVector& p,
         if ( t1 > 0 ) // Check not parallel
         {
           // Calculate srd, r exit distance
      -     
      +
           if ( (t2 >= 0.0) && (roi2 > fRMax*(fRMax + kRadTolerance)) )
           {
             // Delta r not negative => leaving via rmax
      @@ -1420,17 +1538,17 @@ G4double G4CutTubs::DistanceToOut( const G4ThreeVector& p,
               // On tolerant boundary & heading outwards (or perpendicular to)
               // outer radial surface -> leaving immediately
       
      -        if ( calcNorm ) 
      +        if ( calcNorm )
               {
                 *n         = G4ThreeVector(p.x()/fRMax,p.y()/fRMax,0) ;
                 *validNorm = true ;
               }
               return snxt = 0 ; // Leaving by rmax immediately
             }
      -    }             
      +    }
           else if ( t2 < 0. ) // i.e.  t2 < 0; Possible rmin intersection
           {
      -      roMin2 = t3 - t2*t2/t1 ; // min ro2 of the plane of movement 
      +      roMin2 = t3 - t2*t2/t1 ; // min ro2 of the plane of movement
       
             if ( fRMin && (roMin2 < fRMin*(fRMin - kRadTolerance)) )
             {
      @@ -1446,7 +1564,7 @@ G4double G4CutTubs::DistanceToOut( const G4ThreeVector& p,
       
                 if (deltaR > kRadTolerance*fRMin)
                 {
      -            srd = c/(-b+std::sqrt(d2)); 
      +            srd = c/(-b+std::sqrt(d2));
                   sider = kRMin ;
                 }
                 else
      @@ -1505,11 +1623,11 @@ G4double G4CutTubs::DistanceToOut( const G4ThreeVector& p,
       
           if ( !fPhiFullCutTube )
           {
      -      // add angle calculation with correction 
      +      // add angle calculation with correction
             // of the difference in domain of atan2 and Sphi
             //
             vphi = std::atan2(v.y(),v.x()) ;
      -     
      +
             if ( vphi < fSPhi - halfAngTolerance  )             { vphi += twopi; }
             else if ( vphi > fSPhi + fDPhi + halfAngTolerance ) { vphi -= twopi; }
       
      @@ -1525,25 +1643,25 @@ G4double G4CutTubs::DistanceToOut( const G4ThreeVector& p,
       
               compS   = -sinSPhi*v.x() + cosSPhi*v.y() ;
               compE   =  sinEPhi*v.x() - cosEPhi*v.y() ;
      -       
      +
               sidephi = kNull;
      -        
      +
               if( ( (fDPhi <= pi) && ( (pDistS <= halfCarTolerance)
                                     && (pDistE <= halfCarTolerance) ) )
                || ( (fDPhi >  pi) && !((pDistS >  halfCarTolerance)
                                     && (pDistE >  halfCarTolerance) ) )  )
               {
                 // Inside both phi *full* planes
      -          
      +
                 if ( compS < 0 )
                 {
                   sphi = pDistS/compS ;
      -            
      +
                   if (sphi >= -halfCarTolerance)
                   {
                     xi = p.x() + sphi*v.x() ;
                     yi = p.y() + sphi*v.y() ;
      -              
      +
                     // Check intersecting with correct half-plane
                     // (if not -> no intersect)
                     //
      @@ -1567,8 +1685,8 @@ G4double G4CutTubs::DistanceToOut( const G4ThreeVector& p,
                       if ( pDistS > -halfCarTolerance )
                       {
                         sphi = 0.0 ; // Leave by sphi immediately
      -                }    
      -              }       
      +                }
      +              }
                   }
                   else
                   {
      @@ -1583,14 +1701,14 @@ G4double G4CutTubs::DistanceToOut( const G4ThreeVector& p,
                 if ( compE < 0 )
                 {
                   sphi2 = pDistE/compE ;
      -            
      +
                   // Only check further if < starting phi intersection
                   //
                   if ( (sphi2 > -halfCarTolerance) && (sphi2 < sphi) )
                   {
                     xi = p.x() + sphi2*v.x() ;
                     yi = p.y() + sphi2*v.y() ;
      -              
      +
                     if ((std::fabs(xi)<=kCarTolerance)&&(std::fabs(yi)<=kCarTolerance))
                     {
                       // Leaving via ending phi
      @@ -1602,8 +1720,8 @@ G4double G4CutTubs::DistanceToOut( const G4ThreeVector& p,
                         if ( pDistE <= -halfCarTolerance )  { sphi = sphi2 ; }
                         else                                { sphi = 0.0 ;   }
                       }
      -              } 
      -              else    // Check intersecting with correct half-plane 
      +              }
      +              else    // Check intersecting with correct half-plane
       
                     if ( (yi*cosCPhi-xi*sinCPhi) >= 0)
                     {
      @@ -1625,7 +1743,7 @@ G4double G4CutTubs::DistanceToOut( const G4ThreeVector& p,
             {
               // On z axis + travel not || to z axis -> if phi of vector direction
               // within phi of shape, Step limited by rmax, else Step =0
      -               
      +
               if ( (fSPhi - halfAngTolerance <= vphi)
                  && (vphi <= fSPhi + fDPhi + halfAngTolerance ) )
               {
      @@ -1633,7 +1751,7 @@ G4double G4CutTubs::DistanceToOut( const G4ThreeVector& p,
               }
               else
               {
      -          sidephi = kSPhi ; // arbitrary 
      +          sidephi = kSPhi ; // arbitrary
                 sphi    = 0.0 ;
               }
             }
      @@ -1810,7 +1928,7 @@ std::ostream& G4CutTubs::StreamInfo( std::ostream& os ) const
            << "    half length Z: " << fDz/mm << " mm \n"
            << "    starting phi : " << fSPhi/degree << " degrees \n"
            << "    delta phi    : " << fDPhi/degree << " degrees \n"
      -     << "    low Norm     : " << fLowNorm     << "  \n" 
      +     << "    low Norm     : " << fLowNorm     << "  \n"
            << "    high Norm    : "  <=0) && (chose < aOne) )
      +  // Set array of surface areas
      +  G4double sbase = 0.5*dphi*(rrmax - rrmin);
      +  G4double sbot = sbase/std::abs(nbot.z());
      +  G4double stop = sbase/std::abs(ntop.z());
      +  G4double scut = (dphi == twopi) ? 0. : hmax*(rmax - rmin);
      +  G4double ssurf[6] = { scut, scut, sbot, stop, dphi*rmax*hmax, dphi*rmin*hmax };
      +  ssurf[1] += ssurf[0];
      +  ssurf[2] += ssurf[1];
      +  ssurf[3] += ssurf[2];
      +  ssurf[4] += ssurf[3];
      +  ssurf[5] += ssurf[4];
      +
      +  constexpr G4int ntry = 100000;
      +  for (G4int i=0; i= aOne) && (chose < aOne + aTwo) )
      -  {
      -    xRand = fRMin*cosphi;
      -    yRand = fRMin*sinphi;
      -    zRand = G4RandFlat::shoot(GetCutZ(G4ThreeVector(xRand,yRand,-fDz)),
      -                              GetCutZ(G4ThreeVector(xRand,yRand,fDz)));
      -    return G4ThreeVector  (xRand, yRand, zRand);
      -  }
      -  else if( (chose >= aOne + aTwo) && (chose < aOne + aTwo + aThr) )
      -  {
      -    xRand = rRand*cosphi;
      -    yRand = rRand*sinphi;
      -    zRand = GetCutZ(G4ThreeVector(xRand,yRand,fDz));
      -    return G4ThreeVector  (xRand, yRand, zRand);
      -  }
      -  else if( (chose >= aOne + aTwo + aThr) && (chose < aOne + aTwo + 2.*aThr) )
      -  {
      -    xRand = rRand*cosphi;
      -    yRand = rRand*sinphi;
      -    zRand = GetCutZ(G4ThreeVector(xRand,yRand,-fDz));
      -    return G4ThreeVector  (xRand, yRand, zRand);
      -  }
      -  else if( (chose >= aOne + aTwo + 2.*aThr)
      -        && (chose < aOne + aTwo + 2.*aThr + aFou) )
      -  {
      -    xRand = rRand*cosSPhi;
      -    yRand = rRand*sinSPhi;
      -    zRand = G4RandFlat::shoot(GetCutZ(G4ThreeVector(xRand,yRand,-fDz)),
      -                              GetCutZ(G4ThreeVector(xRand,yRand,fDz)));
      -    return G4ThreeVector  (xRand, yRand, zRand);
      -  }
      -  else
      -  {
      -    xRand = rRand*cosEPhi;
      -    yRand = rRand*sinEPhi;
      -    zRand = G4RandFlat::shoot(GetCutZ(G4ThreeVector(xRand,yRand,-fDz)),
      -                              GetCutZ(G4ThreeVector(xRand,yRand,fDz)));
      -    return G4ThreeVector  (xRand, yRand, zRand);
      +    // Select surface
      +    G4double select = ssurf[5]*G4QuickRand();
      +    G4int k = 5;
      +    k -= (select <= ssurf[4]);
      +    k -= (select <= ssurf[3]);
      +    k -= (select <= ssurf[2]);
      +    k -= (select <= ssurf[1]);
      +    k -= (select <= ssurf[0]);
      +
      +    // Generate point on selected surface (rejection sampling)
      +    G4ThreeVector p(0,0,0);
      +    switch(k)
      +    {
      +      case 0: // cut at start phi
      +      {
      +        G4double r = rmin + (rmax - rmin)*G4QuickRand();
      +        p.set(r*cosSPhi, r*sinSPhi, fZMin + hmax*G4QuickRand());
      +        break;
      +      }
      +      case 1: // cut at end phi
      +      {
      +        G4double r = rmin + (rmax - rmin)*G4QuickRand();
      +        p.set(r*cosEPhi, r*sinEPhi, fZMin + hmax*G4QuickRand());
      +        break;
      +      }
      +      case 2: // base at low z
      +      {
      +        G4double r = std::sqrt(rrmin + (rrmax - rrmin)*G4QuickRand());
      +        G4double phi = sphi + dphi*G4QuickRand();
      +        G4double x = r*std::cos(phi);
      +        G4double y = r*std::sin(phi);
      +        G4double z = -fDz - (x*nbot.x() + y*nbot.y())/nbot.z();
      +        return G4ThreeVector(x, y, z);
      +      }
      +      case 3: // base at high z
      +      {
      +        G4double r = std::sqrt(rrmin + (rrmax - rrmin)*G4QuickRand());
      +        G4double phi = sphi + dphi*G4QuickRand();
      +        G4double x = r*std::cos(phi);
      +        G4double y = r*std::sin(phi);
      +        G4double z = fDz - (x*ntop.x() + y*ntop.y())/ntop.z();
      +        return G4ThreeVector(x, y, z);
      +      }
      +      case 4: // external lateral surface
      +      {
      +        G4double phi = sphi + dphi*G4QuickRand();
      +        G4double z = fZMin + hmax*G4QuickRand();
      +        G4double x = rmax*std::cos(phi);
      +        G4double y = rmax*std::sin(phi);
      +        p.set(x, y, z);
      +        break;
      +      }
      +      case 5: // internal lateral surface
      +      {
      +        G4double phi = sphi + dphi*G4QuickRand();
      +        G4double z = fZMin + hmax*G4QuickRand();
      +        G4double x = rmin*std::cos(phi);
      +        G4double y = rmin*std::sin(phi);
      +        p.set(x, y, z);
      +        break;
      +      }
      +    }
      +    if ((ntop.dot(p) - fDz*ntop.z()) > 0.) continue;
      +    if ((nbot.dot(p) + fDz*nbot.z()) > 0.) continue;
      +    return p;
         }
      +  // Just in case, if all attempts to generate a point have failed
      +  // Normally should never happen
      +  G4double x = rmax*std::cos(sphi + 0.5*dphi);
      +  G4double y = rmax*std::sin(sphi + 0.5*dphi);
      +  G4double z = fDz - (x*ntop.x() + y*ntop.y())/ntop.z();
      +  return G4ThreeVector(x, y, z);
       }
       
       ///////////////////////////////////////////////////////////////////////////
       //
       // Methods for visualisation
       
      -void G4CutTubs::DescribeYourselfTo ( G4VGraphicsScene& scene ) const 
      +void G4CutTubs::DescribeYourselfTo ( G4VGraphicsScene& scene ) const
       {
         scene.AddSolid (*this) ;
       }
       
      -G4Polyhedron* G4CutTubs::CreatePolyhedron () const 
      +G4Polyhedron* G4CutTubs::CreatePolyhedron () const
       {
         typedef G4double G4double3[3];
         typedef G4int G4int4[4];
      @@ -1910,7 +2072,7 @@ G4Polyhedron* G4CutTubs::CreatePolyhedron () const
         G4Polyhedron *ph1 = new G4PolyhedronTubs (fRMin, fRMax, fDz, fSPhi, fDPhi);
         G4int nn=ph1->GetNoVertices();
         G4int nf=ph1->GetNoFacets();
      -  G4double3* xyz = new G4double3[nn];  // number of nodes 
      +  G4double3* xyz = new G4double3[nn];  // number of nodes
         G4int4*  faces = new G4int4[nf] ;    // number of faces
       
         for(G4int i=0; izXHigh1) ||(zXLow2>zXHigh2)
      -    || (zYLow1>zYHigh1) ||(zYLow2>zYHigh2))  { return true; }
      +  // set values for calculation of h - distance between
      +  // opposite points on bases
      +  G4ThreeVector nbot = GetLowNorm();
      +  G4ThreeVector ntop = GetHighNorm();
      +  if (std::abs(nbot.z()) < kCarTolerance) return true;
      +  if (std::abs(ntop.z()) < kCarTolerance) return true;
      +  G4double nx = nbot.x()/nbot.z() - ntop.x()/ntop.z();
      +  G4double ny = nbot.y()/nbot.z() - ntop.y()/ntop.z();
       
      +  // check points
      +  G4double cosphi = GetCosStartPhi();
      +  G4double sinphi = GetSinStartPhi();
      +  G4double delphi = GetDeltaPhiAngle()/npoints;
      +  G4double cosdel = std::cos(delphi);
      +  G4double sindel = std::sin(delphi);
      +  G4double hzero = 2.*GetZHalfLength()/GetOuterRadius();
      +  for (G4int i=0; itwopi)  { phiLow-=twopi; }
      -  }
      -  for (i=0; i<2; ++i)
      -  {
      -    if (phiHigh<0)  { phiHigh+=twopi; }
      -    G4double ddp = phiHigh-fSPhi;
      -    if (ddp<0)  { ddp += twopi; }
      -    if (ddp <= fDPhi)
      -    {
      -      xc = fRMin*std::cos(phiHigh);
      -      yc = fRMin*std::sin(phiHigh);
      -      z1 = GetCutZ(G4ThreeVector(xc, yc, fDz));
      -      xc = fRMax*std::cos(phiHigh);
      -      yc = fRMax*std::sin(phiHigh);
      -      z1 = std::min(z1, GetCutZ(G4ThreeVector(xc, yc, fDz)));
      -      if (in_range_hi)  { zmax = std::min(zmax, z1); }
      -      else              { zmax = z1; }
      -      in_range_hi = true;
      -    }
      -    phiHigh += pi;
      -    if (phiHigh>twopi)  { phiHigh-=twopi; }
      -  }
      -
      -  xc = fRMin*cosSPhi;
      -  yc = fRMin*sinSPhi;
      -  z[0] = GetCutZ(G4ThreeVector(xc, yc, -fDz));
      -  z[4] = GetCutZ(G4ThreeVector(xc, yc, fDz));
      - 
      -  xc = fRMin*cosEPhi;
      -  yc = fRMin*sinEPhi;
      -  z[1] = GetCutZ(G4ThreeVector(xc, yc, -fDz));
      -  z[5] = GetCutZ(G4ThreeVector(xc, yc, fDz));
      - 
      -  xc = fRMax*cosSPhi;
      -  yc = fRMax*sinSPhi;
      -  z[2] = GetCutZ(G4ThreeVector(xc, yc, -fDz));
      -  z[6] = GetCutZ(G4ThreeVector(xc, yc, fDz));
      - 
      -  xc = fRMax*cosEPhi;
      -  yc = fRMax*sinEPhi;
      -  z[3] = GetCutZ(G4ThreeVector(xc, yc, -fDz));
      -  z[7] = GetCutZ(G4ThreeVector(xc, yc, fDz));
      - 
      -  // Find min/max
      -
      -  z1=z[0];
      -  for (i = 1; i < 4; ++i)
      -  {
      -    if(z[i] < z[i-1])z1=z[i];
      -  }
      -    
      -  if (in_range_low)
      -  {
      -    zmin = std::min(zmin, z1);
      -  }
      -  else
      -  {
      -    zmin = z1;
      -  }
      -  z1=z[4];
      -  for (i = 1; i < 4; ++i)
      -  {
      -    if(z[4+i] > z[4+i-1])  { z1=z[4+i]; }
      -  }
      -
      -  if (in_range_hi)  { zmax = std::max(zmax, z1); }
      -  else              { zmax = z1; }
      -}
       #endif
      diff --git a/source/geometry/solids/CSG/src/G4Trap.cc b/source/geometry/solids/CSG/src/G4Trap.cc
      index 1655dc2827..d03c49d0f2 100644
      --- a/source/geometry/solids/CSG/src/G4Trap.cc
      +++ b/source/geometry/solids/CSG/src/G4Trap.cc
      @@ -28,7 +28,7 @@
       // 21.03.95 P.Kent: Modified for `tolerant' geometry
       // 09.09.96 V.Grichine: Final modifications before to commit
       // 08.12.97 J.Allison: Added "nominal" constructor and method SetAllParameters
      -// 28.04.05 V.Grichine: new SurfaceNormal according to J.Apostolakis proposal 
      +// 28.04.05 V.Grichine: new SurfaceNormal according to J.Apostolakis proposal
       // 18.04.17 E.Tcherniaev: complete revision, speed-up
       // --------------------------------------------------------------------
       
      @@ -45,7 +45,7 @@
       
       #include "G4VPVParameterisation.hh"
       
      -#include "Randomize.hh"
      +#include "G4QuickRand.hh"
       
       #include "G4VGraphicsScene.hh"
       #include "G4Polyhedron.hh"
      @@ -54,7 +54,7 @@ using namespace CLHEP;
       
       //////////////////////////////////////////////////////////////////////////
       //
      -// Constructor - check and set half-widths as well as angles: 
      +// Constructor - check and set half-widths as well as angles:
       // final check of coplanarity
       
       G4Trap::G4Trap( const G4String& pName,
      @@ -79,8 +79,8 @@ G4Trap::G4Trap( const G4String& pName,
       
       //////////////////////////////////////////////////////////////////////////
       //
      -// Constructor - Design of trapezoid based on 8 G4ThreeVector parameters, 
      -// which are its vertices. Checking of planarity with preparation of 
      +// Constructor - Design of trapezoid based on 8 G4ThreeVector parameters,
      +// which are its vertices. Checking of planarity with preparation of
       // fPlanes[] and than calculation of other members
       
       G4Trap::G4Trap( const G4String& pName,
      @@ -116,11 +116,11 @@ G4Trap::G4Trap( const G4String& pName,
           G4Exception("G4Trap::G4Trap()", "GeomSolids0002",
                       FatalException, message);
         }
      -    
      +
         // Set parameters
         //
         fDz = (pt[7]).z();
      -      
      +
         fDy1     = ((pt[2]).y()-(pt[1]).y())*0.5;
         fDx1     = ((pt[1]).x()-(pt[0]).x())*0.5;
         fDx2     = ((pt[3]).x()-(pt[2]).x())*0.5;
      @@ -244,6 +244,7 @@ G4Trap::G4Trap(const G4Trap& rhs)
           fDy2(rhs.fDy2), fDx3(rhs.fDx3), fDx4(rhs.fDx4), fTalpha2(rhs.fTalpha2)
       {
         for (G4int i=0; i<4; ++i) { fPlanes[i] = rhs.fPlanes[i]; }
      +  for (G4int i=0; i<6; ++i) { fAreas[i] = rhs.fAreas[i]; }
         fTrapType = rhs.fTrapType;
       }
       
      @@ -251,7 +252,7 @@ G4Trap::G4Trap(const G4Trap& rhs)
       //
       // Assignment operator
       
      -G4Trap& G4Trap::operator = (const G4Trap& rhs) 
      +G4Trap& G4Trap::operator = (const G4Trap& rhs)
       {
         // Check assignment to self
         //
      @@ -268,6 +269,7 @@ G4Trap& G4Trap::operator = (const G4Trap& rhs)
         fDy1 = rhs.fDy1; fDx1 = rhs.fDx1; fDx2 = rhs.fDx2; fTalpha1 = rhs.fTalpha1;
         fDy2 = rhs.fDy2; fDx3 = rhs.fDx3; fDx4 = rhs.fDx4; fTalpha2 = rhs.fTalpha2;
         for (G4int i=0; i<4; ++i) { fPlanes[i] = rhs.fPlanes[i]; }
      +  for (G4int i=0; i<6; ++i) { fAreas[i] = rhs.fAreas[i]; }
         fTrapType = rhs.fTrapType;
         return *this;
       }
      @@ -358,8 +360,8 @@ void G4Trap::MakePlanes()
       
       void G4Trap::MakePlanes(const G4ThreeVector pt[8])
       {
      -  G4int iface[4][4] = { {0,4,5,1}, {2,3,7,6}, {0,2,6,4}, {1,5,7,3} };
      -  G4String side[4] = { "~-Y", "~+Y", "~-X", "~+X" };
      +  constexpr G4int iface[4][4] = { {0,4,5,1}, {2,3,7,6}, {0,2,6,4}, {1,5,7,3} };
      +  const static G4String side[4] = { "~-Y", "~+Y", "~-X", "~+X" };
       
         for (G4int i=0; i<4; ++i)
         {
      @@ -385,6 +387,70 @@ void G4Trap::MakePlanes(const G4ThreeVector pt[8])
                       FatalException, message);
         }
       
      +  // Re-compute parameters
      +  SetCachedValues();
      +}
      +
      +//////////////////////////////////////////////////////////////////////////
      +//
      +// Calculate the coef's of the plane p1->p2->p3->p4->p1
      +// where the ThreeVectors 1-4 are in anti-clockwise order when viewed
      +// from infront of the plane (i.e. from normal direction).
      +//
      +// Return true if the points are coplanar, false otherwise
      +
      +G4bool G4Trap::MakePlane( const G4ThreeVector& p1,
      +                          const G4ThreeVector& p2,
      +                          const G4ThreeVector& p3,
      +                          const G4ThreeVector& p4,
      +                                TrapSidePlane& plane )
      +{
      +  G4ThreeVector normal = ((p4 - p2).cross(p3 - p1)).unit();
      +  if (std::abs(normal.x()) < DBL_EPSILON) normal.setX(0);
      +  if (std::abs(normal.y()) < DBL_EPSILON) normal.setY(0);
      +  if (std::abs(normal.z()) < DBL_EPSILON) normal.setZ(0);
      +  normal = normal.unit();
      +
      +  G4ThreeVector centre = (p1 + p2 + p3 + p4)*0.25;
      +  plane.a =  normal.x();
      +  plane.b =  normal.y();
      +  plane.c =  normal.z();
      +  plane.d = -normal.dot(centre);
      +
      +  // compute distances and check planarity
      +  G4double d1 = std::abs(normal.dot(p1) + plane.d);
      +  G4double d2 = std::abs(normal.dot(p2) + plane.d);
      +  G4double d3 = std::abs(normal.dot(p3) + plane.d);
      +  G4double d4 = std::abs(normal.dot(p4) + plane.d);
      +  G4double dmax = std::max(std::max(std::max(d1,d2),d3),d4);
      +
      +  return (dmax > 1000 * kCarTolerance) ? false : true;
      +}
      +
      +//////////////////////////////////////////////////////////////////////////
      +//
      +// Recompute parameters using planes
      +
      +void G4Trap::SetCachedValues()
      +{
      +  // Set indeces
      +  constexpr  G4int iface[6][4] =
      +      { {0,1,3,2}, {0,4,5,1}, {2,3,7,6}, {0,2,6,4}, {1,5,7,3}, {4,6,7,5} };
      +
      +  // Get vertices
      +  G4ThreeVector pt[8];
      +  GetVertices(pt);
      +
      +  // Set face areas
      +  for (G4int i=0; i<6; ++i)
      +  {
      +    fAreas[i] = G4GeomTools::QuadAreaNormal(pt[iface[i][0]],
      +                                            pt[iface[i][1]],
      +                                            pt[iface[i][2]],
      +                                            pt[iface[i][3]]).mag();
      +  }
      +  for (G4int i=1; i<6; ++i) { fAreas[i] += fAreas[i - 1]; }
      +
         // Define type of trapezoid
         fTrapType = 0;
         if (fPlanes[0].b  == -1 && fPlanes[1].b == 1 &&
      @@ -415,43 +481,7 @@ void G4Trap::MakePlanes(const G4ThreeVector pt[8])
         }
       }
       
      -///////////////////////////////////////////////////////////////////////
      -//
      -// Calculate the coef's of the plane p1->p2->p3->p4->p1
      -// where the ThreeVectors 1-4 are in anti-clockwise order when viewed
      -// from infront of the plane (i.e. from normal direction).
      -//
      -// Return true if the points are coplanar, false otherwise
      -
      -G4bool G4Trap::MakePlane( const G4ThreeVector& p1,
      -                          const G4ThreeVector& p2,
      -                          const G4ThreeVector& p3,
      -                          const G4ThreeVector& p4,
      -                                TrapSidePlane& plane )
      -{
      -  G4ThreeVector normal = ((p4 - p2).cross(p3 - p1)).unit();
      -  if (std::abs(normal.x()) < DBL_EPSILON) normal.setX(0); 
      -  if (std::abs(normal.y()) < DBL_EPSILON) normal.setY(0); 
      -  if (std::abs(normal.z()) < DBL_EPSILON) normal.setZ(0); 
      -  normal = normal.unit();
      -
      -  G4ThreeVector centre = (p1 + p2 + p3 + p4)*0.25;
      -  plane.a =  normal.x();
      -  plane.b =  normal.y();
      -  plane.c =  normal.z();
      -  plane.d = -normal.dot(centre);
      -
      -  // compute distances and check planarity
      -  G4double d1 = std::abs(normal.dot(p1) + plane.d);
      -  G4double d2 = std::abs(normal.dot(p2) + plane.d);
      -  G4double d3 = std::abs(normal.dot(p3) + plane.d);
      -  G4double d4 = std::abs(normal.dot(p4) + plane.d);
      -  G4double dmax = std::max(std::max(std::max(d1,d2),d3),d4);
      -  
      -  return (dmax > 1000 * kCarTolerance) ? false : true;
      -}
      -
      -///////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // Get volume
       
      @@ -461,7 +491,7 @@ G4double G4Trap::GetCubicVolume()
         {
           G4ThreeVector pt[8];
           GetVertices(pt);
      - 
      +
           G4double dz  = pt[4].z() - pt[0].z();
           G4double dy1 = pt[2].y() - pt[0].y();
           G4double dx1 = pt[1].x() - pt[0].x();
      @@ -476,7 +506,7 @@ G4double G4Trap::GetCubicVolume()
         return fCubicVolume;
       }
       
      -///////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // Get surface area
       
      @@ -500,7 +530,7 @@ G4double G4Trap::GetSurfaceArea()
         return fSurfaceArea;
       }
       
      -///////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // Dispatch to parameterisation for replication mechanism dimension
       // computation & modification.
      @@ -512,7 +542,7 @@ void G4Trap::ComputeDimensions(       G4VPVParameterisation* p,
         p->ComputeDimensions(*this,n,pRep);
       }
       
      -///////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // Get bounding box
       
      @@ -552,7 +582,7 @@ void G4Trap::BoundingLimits(G4ThreeVector& pMin, G4ThreeVector& pMax) const
         }
       }
       
      -///////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // Calculate extent under transform and specified limit
       
      @@ -601,7 +631,7 @@ G4bool G4Trap::CalculateExtent( const EAxis pAxis,
         return exist;
       }
       
      -///////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // Return whether point is inside/outside/on_surface
       
      @@ -661,10 +691,10 @@ EInside G4Trap::Inside( const G4ThreeVector& p ) const
               ((dist > -halfCarTolerance) ? kSurface : kInside);
           }
         }
      -  return kOutside; 
      +  return kOutside;
       }
       
      -///////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // Determine side, and return corresponding normal
       
      @@ -765,7 +795,7 @@ G4ThreeVector G4Trap::SurfaceNormal( const G4ThreeVector& p ) const
         }
       }
       
      -///////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // Algorithm for SurfaceNormal() following the original specification
       // for points not on the surface
      @@ -789,7 +819,7 @@ G4ThreeVector G4Trap::ApproxSurfaceNormal( const G4ThreeVector& p ) const
           return G4ThreeVector(0, 0, (p.z() < 0) ? -1 : 1);
       }
       
      -///////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // Calculate distance to shape from outside
       //  - return kInfinity if no intersection
      @@ -802,7 +832,7 @@ G4double G4Trap::DistanceToIn(const G4ThreeVector& p,
         if ((std::abs(p.z()) - fDz) >= -halfCarTolerance && p.z()*v.z() >= 0)
           return kInfinity;
         G4double invz = (-v.z() == 0) ? DBL_MAX : -1./v.z();
      -  G4double dz = (invz < 0) ? fDz : -fDz; 
      +  G4double dz = (invz < 0) ? fDz : -fDz;
         G4double tzmin = (p.z() + dz)*invz;
         G4double tzmax = (p.z() - dz)*invz;
       
      @@ -811,7 +841,7 @@ G4double G4Trap::DistanceToIn(const G4ThreeVector& p,
         G4double tymin = 0, tymax = DBL_MAX;
         G4int i = 0;
         for ( ; i<2; ++i)
      -  { 
      +  {
           G4double cosa = fPlanes[i].b*v.y() + fPlanes[i].c*v.z();
           G4double dist = fPlanes[i].b*p.y() + fPlanes[i].c*p.z() + fPlanes[i].d;
           if (dist >= -halfCarTolerance)
      @@ -824,14 +854,14 @@ G4double G4Trap::DistanceToIn(const G4ThreeVector& p,
           {
             G4double tmp  = -dist/cosa;
             if (tymax > tmp) tymax = tmp;
      -    } 
      +    }
         }
       
         // Z intersections
         //
         G4double txmin = 0, txmax = DBL_MAX;
         for ( ; i<4; ++i)
      -  { 
      +  {
           G4double cosa = fPlanes[i].a*v.x()+fPlanes[i].b*v.y()+fPlanes[i].c*v.z();
           G4double dist = fPlanes[i].a*p.x()+fPlanes[i].b*p.y()+fPlanes[i].c*p.z() +
                           fPlanes[i].d;
      @@ -845,19 +875,19 @@ G4double G4Trap::DistanceToIn(const G4ThreeVector& p,
           {
             G4double tmp  = -dist/cosa;
             if (txmax > tmp) txmax = tmp;
      -    } 
      +    }
         }
       
         // Find distance
         //
         G4double tmin = std::max(std::max(txmin,tymin),tzmin);
         G4double tmax = std::min(std::min(txmax,tymax),tzmax);
      -     
      +
         if (tmax <= tmin + halfCarTolerance) return kInfinity; // touch or no hit
         return (tmin < halfCarTolerance ) ? 0. : tmin;
       }
       
      -////////////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // Calculate exact shortest distance to any boundary from outside
       // This is the best fast estimation of the shortest distance to trap
      @@ -914,7 +944,7 @@ G4double G4Trap::DistanceToIn( const G4ThreeVector& p ) const
         return 0.;
       }
       
      -////////////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // Calculate distance to surface of shape from inside and
       // find normal at exit point, if required
      @@ -987,7 +1017,7 @@ G4double G4Trap::DistanceToOut(const G4ThreeVector& p, const G4ThreeVector& v,
       
         // Set normal, if required, and return distance
         //
      -  if (calcNorm) 
      +  if (calcNorm)
         {
           *validNorm = true;
           if (iside < 0)
      @@ -998,7 +1028,7 @@ G4double G4Trap::DistanceToOut(const G4ThreeVector& p, const G4ThreeVector& v,
         return tmax;
       }
       
      -////////////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // Calculate exact shortest distance to any boundary from inside
       // - Returns 0 is ThreeVector outside
      @@ -1015,7 +1045,7 @@ G4double G4Trap::DistanceToOut( const G4ThreeVector& p ) const
           message << "   p.x() = " << p.x()/mm << " mm\n";
           message << "   p.y() = " << p.y()/mm << " mm\n";
           message << "   p.z() = " << p.z()/mm << " mm";
      -    G4cout.precision(oldprc) ;
      +    G4cout.precision(oldprc);
           G4Exception("G4Trap::DistanceToOut(p)", "GeomSolids1002",
                       JustWarning, message );
           DumpInfo();
      @@ -1070,7 +1100,7 @@ G4double G4Trap::DistanceToOut( const G4ThreeVector& p ) const
         return 0.;
       }
       
      -////////////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // GetEntityType
       
      @@ -1099,7 +1129,7 @@ std::ostream& G4Trap::StreamInfo( std::ostream& os ) const
                                              +fTthetaSphi*fTthetaSphi));
         G4double alpha1 = std::atan(fTalpha1);
         G4double alpha2 = std::atan(fTalpha2);
      -  G4String signDegree = "\u00B0"; 
      +  G4String signDegree = "\u00B0";
       
         G4int oldprc = os.precision(16);
         os << "-----------------------------------------------------------\n"
      @@ -1142,38 +1172,29 @@ void G4Trap::GetVertices(G4ThreeVector pt[8]) const
         }
       }
       
      -/////////////////////////////////////////////////////////////////////////
      +//////////////////////////////////////////////////////////////////////////
       //
       // Generate random point on the surface
       
       G4ThreeVector G4Trap::GetPointOnSurface() const
       {
      -  G4ThreeVector pt[8];
      -  G4int iface [6][4] =
      -    { {0,1,3,2}, {0,4,5,1}, {2,3,7,6}, {0,2,6,4}, {1,5,7,3}, {4,6,7,5} }; 
      -  G4double sface[6];
      +  // Set indeces
      +  constexpr G4int iface [6][4] =
      +    { {0,1,3,2}, {0,4,5,1}, {2,3,7,6}, {0,2,6,4}, {1,5,7,3}, {4,6,7,5} };
       
      +  // Set vertices
      +  G4ThreeVector pt[8];
         GetVertices(pt);
      -  G4double stotal = 0;
      -  for (G4int i=0; i<6; ++i)
      -  {
      -    G4double ss = G4GeomTools::QuadAreaNormal(pt[iface[i][0]],
      -                                              pt[iface[i][1]],
      -                                              pt[iface[i][2]],
      -                                              pt[iface[i][3]]).mag();
      -    stotal  += ss;
      -    sface[i] = stotal;
      -  }
       
         // Select face
         //
      -  G4double select = stotal*G4UniformRand();
      +  G4double select = fAreas[5]*G4QuickRand();
         G4int k = 5;
      -  if (select <= sface[4]) k = 4;
      -  if (select <= sface[3]) k = 3;
      -  if (select <= sface[2]) k = 2;
      -  if (select <= sface[1]) k = 1;
      -  if (select <= sface[0]) k = 0;
      +  k -= (select <= fAreas[4]);
      +  k -= (select <= fAreas[3]);
      +  k -= (select <= fAreas[2]);
      +  k -= (select <= fAreas[1]);
      +  k -= (select <= fAreas[0]);
       
         // Select sub-triangle
         //
      @@ -1181,14 +1202,13 @@ G4ThreeVector G4Trap::GetPointOnSurface() const
         G4int i1 = iface[k][1];
         G4int i2 = iface[k][2];
         G4int i3 = iface[k][3];
      -  G4double s1 = G4GeomTools::TriangleAreaNormal(pt[i0],pt[i1],pt[i3]).mag();
         G4double s2 = G4GeomTools::TriangleAreaNormal(pt[i2],pt[i1],pt[i3]).mag();
      -  if ((s1+s2)*G4UniformRand() > s1) i0 = i2;
      +  if (select > fAreas[k] - s2) i0 = i2;
       
         // Generate point
         //
      -  G4double u = G4UniformRand();
      -  G4double v = G4UniformRand();
      +  G4double u = G4QuickRand();
      +  G4double v = G4QuickRand();
         if (u + v > 1.) { u = 1. - u; v = 1. - v; }
         return (1.-u-v)*pt[i0] + u*pt[i1] + v*pt[i3];
       }
      diff --git a/source/geometry/solids/CSG/src/G4Trd.cc b/source/geometry/solids/CSG/src/G4Trd.cc
      index d68e75c7bf..0921404fef 100644
      --- a/source/geometry/solids/CSG/src/G4Trd.cc
      +++ b/source/geometry/solids/CSG/src/G4Trd.cc
      @@ -26,7 +26,7 @@
       // Implementation for G4Trd class
       //
       // 12.01.95 P.Kent: First version
      -// 28.04.05 V.Grichine: new SurfaceNormal according to J.Apostolakis proposal 
      +// 28.04.05 V.Grichine: new SurfaceNormal according to J.Apostolakis proposal
       // 25.05.17 E.Tcherniaev: complete revision, speed-up
       // --------------------------------------------------------------------
       
      @@ -39,7 +39,7 @@
       #include "G4VoxelLimits.hh"
       #include "G4AffineTransform.hh"
       #include "G4BoundingEnvelope.hh"
      -#include "Randomize.hh"
      +#include "G4QuickRand.hh"
       
       #include "G4VPVParameterisation.hh"
       
      @@ -89,7 +89,8 @@ G4Trd::~G4Trd()
       G4Trd::G4Trd(const G4Trd& rhs)
         : G4CSGSolid(rhs), halfCarTolerance(rhs.halfCarTolerance),
           fDx1(rhs.fDx1), fDx2(rhs.fDx2),
      -    fDy1(rhs.fDy1), fDy2(rhs.fDy2), fDz(rhs.fDz)
      +    fDy1(rhs.fDy1), fDy2(rhs.fDy2), fDz(rhs.fDz),
      +    fHx(rhs.fHx), fHy(rhs.fHy)
       {
         for (G4int i=0; i<4; ++i) { fPlanes[i] = rhs.fPlanes[i]; }
       }
      @@ -114,6 +115,7 @@ G4Trd& G4Trd::operator = (const G4Trd& rhs)
          fDx1 = rhs.fDx1; fDx2 = rhs.fDx2;
          fDy1 = rhs.fDy1; fDy2 = rhs.fDy2;
          fDz = rhs.fDz;
      +   fHx = rhs.fHx; fHy = rhs.fHy;
          for (G4int i=0; i<4; ++i) { fPlanes[i] = rhs.fPlanes[i]; }
       
          return *this;
      @@ -171,14 +173,14 @@ void G4Trd::MakePlanes()
         G4double dx = fDx1 - fDx2;
         G4double dy = fDy1 - fDy2;
         G4double dz = 2*fDz;
      -  G4double magx = std::sqrt(dx*dx + dz*dz);
      -  G4double magy = std::sqrt(dy*dy + dz*dz);
      +  fHx = std::sqrt(dy*dy + dz*dz);
      +  fHy = std::sqrt(dx*dx + dz*dz);
       
      -  // Set -Y & +Y planes
      +  // Set X planes at -Y & +Y
         //
         fPlanes[0].a =  0.;
      -  fPlanes[0].b = -dz/magy;
      -  fPlanes[0].c =  dy/magy;
      +  fPlanes[0].b = -dz/fHx;
      +  fPlanes[0].c =  dy/fHx;
         fPlanes[0].d = fPlanes[0].b*fDy1 + fPlanes[0].c*fDz;
       
         fPlanes[1].a =  fPlanes[0].a;
      @@ -186,11 +188,11 @@ void G4Trd::MakePlanes()
         fPlanes[1].c =  fPlanes[0].c;
         fPlanes[1].d =  fPlanes[0].d;
       
      -  // Set -X & +X planes
      +  // Set Y planes at -X & +X
         //
      -  fPlanes[2].a = -dz/magx;
      +  fPlanes[2].a = -dz/fHy;
         fPlanes[2].b =  0.;
      -  fPlanes[2].c =  dx/magx;
      +  fPlanes[2].c =  dx/fHy;
         fPlanes[2].d = fPlanes[2].a*fDx1 + fPlanes[2].c*fDz;
       
         fPlanes[3].a = -fPlanes[2].a;
      @@ -222,9 +224,7 @@ G4double G4Trd::GetSurfaceArea()
         if (fSurfaceArea == 0.)
         {
           fSurfaceArea =
      -      4*(fDx1*fDy1+fDx2*fDy2) +
      -      2*(fDy1+fDy2)*std::hypot(fDx1-fDx2,2*fDz) +
      -      2*(fDx1+fDx2)*std::hypot(fDy1-fDy2,2*fDz);
      +      4*(fDx1*fDy1 + fDx2*fDy2) + 2*(fDx1+fDx2)*fHx + 2*(fDy1+fDy2)*fHy;
         }
         return fSurfaceArea;
       }
      @@ -328,7 +328,7 @@ G4bool G4Trd::CalculateExtent( const EAxis pAxis,
       // Return whether point inside/outside/on surface, using tolerance
       
       EInside G4Trd::Inside( const G4ThreeVector& p ) const
      -{  
      +{
         G4double dx = fPlanes[3].a*std::abs(p.x())+fPlanes[3].c*p.z()+fPlanes[3].d;
         G4double dy = fPlanes[1].b*std::abs(p.y())+fPlanes[1].c*p.z()+fPlanes[1].d;
         G4double dxy = std::max(dx,dy);
      @@ -336,8 +336,8 @@ EInside G4Trd::Inside( const G4ThreeVector& p ) const
         G4double dz = std::abs(p.z())-fDz;
         G4double dist = std::max(dz,dxy);
       
      -  if (dist > halfCarTolerance) return kOutside;
      -  return (dist > -halfCarTolerance) ? kSurface : kInside;
      +  return (dist > halfCarTolerance) ? kOutside :
      +    ((dist > -halfCarTolerance) ? kSurface : kInside);
       }
       
       //////////////////////////////////////////////////////////////////////////
      @@ -457,7 +457,7 @@ G4double G4Trd::DistanceToIn(const G4ThreeVector& p,
         if ((std::abs(p.z()) - fDz) >= -halfCarTolerance && p.z()*v.z() >= 0)
           return kInfinity;
         G4double invz = (-v.z() == 0) ? DBL_MAX : -1./v.z();
      -  G4double dz = (invz < 0) ? fDz : -fDz; 
      +  G4double dz = (invz < 0) ? fDz : -fDz;
         G4double tzmin = (p.z() + dz)*invz;
         G4double tzmax = (p.z() - dz)*invz;
       
      @@ -626,7 +626,7 @@ G4double G4Trd::DistanceToOut(const G4ThreeVector& p, const G4ThreeVector& v,
       
         // Set normal, if required, and return distance
         //
      -  if (calcNorm) 
      +  if (calcNorm)
         {
           *validNorm = true;
           if (iside < 0)
      @@ -654,7 +654,7 @@ G4double G4Trd::DistanceToOut( const G4ThreeVector& p ) const
           message << "   p.x() = " << p.x()/mm << " mm\n";
           message << "   p.y() = " << p.y()/mm << " mm\n";
           message << "   p.z() = " << p.z()/mm << " mm";
      -    G4cout.precision(oldprc) ;
      +    G4cout.precision(oldprc);
           G4Exception("G4Trd::DistanceToOut(p)", "GeomSolids1002",
                       JustWarning, message );
           DumpInfo();
      @@ -666,7 +666,7 @@ G4double G4Trd::DistanceToOut( const G4ThreeVector& p ) const
       
         G4double dz = std::abs(p.z())-fDz;
         G4double dist = std::max(dz,dxy);
      -  
      +
         return (dist < 0) ? -dist : 0.;
       }
       
      @@ -717,56 +717,79 @@ std::ostream& G4Trd::StreamInfo( std::ostream& os ) const
       
       G4ThreeVector G4Trd::GetPointOnSurface() const
       {
      -  // Set vertices
      -  //
      -  G4ThreeVector pt[8];
      -  pt[0].set(-fDx1,-fDy1,-fDz);
      -  pt[1].set( fDx1,-fDy1,-fDz);
      -  pt[2].set(-fDx1, fDy1,-fDz);
      -  pt[3].set( fDx1, fDy1,-fDz);
      -  pt[4].set(-fDx2,-fDy2, fDz);
      -  pt[5].set( fDx2,-fDy2, fDz);
      -  pt[6].set(-fDx2, fDy2, fDz);
      -  pt[7].set( fDx2, fDy2, fDz);
      -
      -  // Set faces  (-Z, -Y, +Y, -X, +X, +Z)
      -  //
      -  G4int iface [6][4] =
      -    { {0,1,3,2}, {0,4,5,1}, {2,3,7,6}, {0,2,6,4}, {1,5,7,3}, {4,6,7,5} };
      -
         // Set areas
      -  // 
      -  G4double sxz = (fDy1 + fDy2)*std::hypot(fDx1 - fDx2, 2*fDz);
      -  G4double syz = (fDx1 + fDx2)*std::hypot(fDy1 - fDy2, 2*fDz);
      -  G4double sface[6] = { 4*fDx1*fDy1, syz, syz, sxz, sxz, 4*fDx2*fDy2 };
      -  for (G4int i=1; i<6; ++i) { sface[i] += sface[i-1]; }
      +  //
      +  G4double sxz = (fDx1 + fDx2)*fHx;
      +  G4double syz = (fDy1 + fDy2)*fHy;
      +  G4double ssurf[6] = { 4.*fDx1*fDy1, sxz, sxz, syz, syz, 4.*fDx2*fDy2 };
      +  ssurf[1] += ssurf[0];
      +  ssurf[2] += ssurf[1];
      +  ssurf[3] += ssurf[2];
      +  ssurf[4] += ssurf[3];
      +  ssurf[5] += ssurf[4];
       
         // Select face
         //
      -  G4double select = sface[5]*G4UniformRand();
      +  G4double select = ssurf[5]*G4QuickRand();
         G4int k = 5;
      -  if (select <= sface[4]) k = 4;
      -  if (select <= sface[3]) k = 3;
      -  if (select <= sface[2]) k = 2;
      -  if (select <= sface[1]) k = 1;
      -  if (select <= sface[0]) k = 0;
      +  k -= (select <= ssurf[4]);
      +  k -= (select <= ssurf[3]);
      +  k -= (select <= ssurf[2]);
      +  k -= (select <= ssurf[1]);
      +  k -= (select <= ssurf[0]);
       
      -  // Select sub-triangle
      +  // Generate point on selected surface
         //
      -  G4int i0 = iface[k][0];
      -  G4int i1 = iface[k][1];
      -  G4int i2 = iface[k][2];
      -  G4int i3 = iface[k][3];
      -  G4double s1 = G4GeomTools::TriangleAreaNormal(pt[i0],pt[i1],pt[i3]).mag();
      -  G4double s2 = G4GeomTools::TriangleAreaNormal(pt[i2],pt[i1],pt[i3]).mag();
      -  if ((s1+s2)*G4UniformRand() > s1) i0 = i2;
      -
      -  // Generate point
      -  //
      -  G4double u = G4UniformRand();
      -  G4double v = G4UniformRand();
      -  if (u + v > 1.) { u = 1. - u; v = 1. - v; }
      -  return (1.-u-v)*pt[i0] + u*pt[i1] + v*pt[i3];
      +  G4double u = G4QuickRand();
      +  G4double v = G4QuickRand();
      +  switch(k)
      +  {
      +    case 0: // base at -Z
      +    {
      +      return G4ThreeVector((2.*u - 1.)*fDx1, (2.*v - 1.)*fDy1, -fDz);
      +    }
      +    case 1: // X face at -Y
      +    {
      +      if (u + v > 1.) { u = 1. - u; v = 1. - v; }
      +      G4ThreeVector p0(-fDx1,-fDy1,-fDz);
      +      G4ThreeVector p1( fDx2,-fDy2, fDz);
      +      return (select <= ssurf[0] + fDx1*fHx) ?
      +        (1. - u - v)*p0 + u*p1 + v*G4ThreeVector( fDx1,-fDy1,-fDz) :
      +        (1. - u - v)*p0 + u*p1 + v*G4ThreeVector(-fDx2,-fDy2, fDz);
      +    }
      +    case 2: // X face at +Y
      +    {
      +      if (u + v > 1.) { u = 1. - u; v = 1. - v; }
      +      G4ThreeVector p0( fDx1, fDy1,-fDz);
      +      G4ThreeVector p1(-fDx2, fDy2, fDz);
      +      return (select <= ssurf[1] + fDx1*fHx) ?
      +        (1. - u - v)*p0 + u*p1 + v*G4ThreeVector(-fDx1, fDy1,-fDz) :
      +        (1. - u - v)*p0 + u*p1 + v*G4ThreeVector( fDx2, fDy2, fDz);
      +    }
      +    case 3: // Y face at -X
      +    {
      +      if (u + v > 1.) { u = 1. - u; v = 1. - v; }
      +      G4ThreeVector p0(-fDx1, fDy1,-fDz);
      +      G4ThreeVector p1(-fDx2,-fDy2, fDz);
      +      return (select <= ssurf[2] + fDy1*fHy) ?
      +        (1. - u - v)*p0 + u*p1 + v*G4ThreeVector(-fDx1,-fDy1,-fDz) :
      +        (1. - u - v)*p0 + u*p1 + v*G4ThreeVector(-fDx2, fDy2, fDz);
      +    }
      +    case 4: // Y face at +X
      +    {
      +      if (u + v > 1.) { u = 1. - u; v = 1. - v; }
      +      G4ThreeVector p0( fDx1,-fDy1,-fDz);
      +      G4ThreeVector p1( fDx2, fDy2, fDz);
      +      return (select <= ssurf[3] + fDy1*fHy) ?
      +        (1. - u - v)*p0 + u*p1 + v*G4ThreeVector( fDx1, fDy1,-fDz) :
      +        (1. - u - v)*p0 + u*p1 + v*G4ThreeVector( fDx2,-fDy2, fDz);
      +    }
      +    case 5: // base at +Z
      +    {
      +      return G4ThreeVector((2.*u - 1.)*fDx2, (2.*v - 1.)*fDy2, fDz);
      +    }
      +  }
      +  return G4ThreeVector(0., 0., 0.);
       }
       
       //////////////////////////////////////////////////////////////////////////
      diff --git a/source/geometry/solids/CSG/src/G4Tubs.cc b/source/geometry/solids/CSG/src/G4Tubs.cc
      index 2212c915a4..341241e0fd 100644
      --- a/source/geometry/solids/CSG/src/G4Tubs.cc
      +++ b/source/geometry/solids/CSG/src/G4Tubs.cc
      @@ -43,12 +43,10 @@
       #include "G4BoundingEnvelope.hh"
       
       #include "G4VPVParameterisation.hh"
      -
      -#include "Randomize.hh"
      -
      -#include "meshdefs.hh"
      +#include "G4QuickRand.hh"
       
       #include "G4VGraphicsScene.hh"
      +#include "G4Polyhedron.hh"
       
       using namespace CLHEP;
       
      @@ -103,7 +101,7 @@ G4Tubs::G4Tubs( __void__& a )
           fRMin(0.), fRMax(0.), fDz(0.), fSPhi(0.), fDPhi(0.),
           sinCPhi(0.), cosCPhi(0.), cosHDPhi(0.), cosHDPhiOT(0.), cosHDPhiIT(0.),
           sinSPhi(0.), cosSPhi(0.), sinEPhi(0.), cosEPhi(0.),
      -    fPhiFullTube(false), fInvRmax(0.), fInvRmin(0.),    
      +    fPhiFullTube(false), fInvRmax(0.), fInvRmin(0.),
           halfCarTolerance(0.), halfRadTolerance(0.),
           halfAngTolerance(0.)
       {
      @@ -141,7 +139,7 @@ G4Tubs::G4Tubs(const G4Tubs& rhs)
       //
       // Assignment operator
       
      -G4Tubs& G4Tubs::operator = (const G4Tubs& rhs) 
      +G4Tubs& G4Tubs::operator = (const G4Tubs& rhs)
       {
          // Check assignment to self
          //
      @@ -232,7 +230,7 @@ void G4Tubs::BoundingLimits(G4ThreeVector& pMin, G4ThreeVector& pMax) const
       G4bool G4Tubs::CalculateExtent( const EAxis              pAxis,
                                       const G4VoxelLimits&     pVoxelLimit,
                                       const G4AffineTransform& pTransform,
      -                                      G4double&          pMin, 
      +                                      G4double&          pMin,
                                             G4double&          pMax    ) const
       {
         G4ThreeVector bmin, bmax;
      @@ -352,7 +350,7 @@ EInside G4Tubs::Inside( const G4ThreeVector& p ) const
           else       { tolRMin = 0 ; }
       
           tolRMax = fRMax - halfRadTolerance ;
      -      
      +
           if ((r2 >= tolRMin*tolRMin) && (r2 <= tolRMax*tolRMax))
           {
             if ( fPhiFullTube )
      @@ -378,7 +376,7 @@ EInside G4Tubs::Inside( const G4ThreeVector& p ) const
                 {
                   if ( (std::fabs(pPhi) < halfAngTolerance)
                     && (std::fabs(fSPhi + fDPhi - twopi) < halfAngTolerance) )
      -            { 
      +            {
                     pPhi += twopi ; // 0 <= pPhi < 2pi
                   }
                   if ( (pPhi >= fSPhi + halfAngTolerance)
      @@ -406,7 +404,7 @@ EInside G4Tubs::Inside( const G4ThreeVector& p ) const
                     in = kInside ;
                   }
                 }
      -        }                    
      +        }
             }
           }
           else  // Try generous boundaries
      @@ -431,7 +429,7 @@ EInside G4Tubs::Inside( const G4ThreeVector& p ) const
                 {
                   if ( (std::fabs(pPhi) < halfAngTolerance)
                     && (std::fabs(fSPhi + fDPhi - twopi) < halfAngTolerance) )
      -            { 
      +            {
                     pPhi += twopi ; // 0 <= pPhi < 2pi
                   }
                   if ( (pPhi >= fSPhi - halfAngTolerance)
      @@ -476,7 +474,7 @@ EInside G4Tubs::Inside( const G4ThreeVector& p ) const
               {
                 if ( (std::fabs(pPhi) < halfAngTolerance)
                   && (std::fabs(fSPhi + fDPhi - twopi) < halfAngTolerance) )
      -          { 
      +          {
                   pPhi += twopi ; // 0 <= pPhi < 2pi
                 }
                 if ( (pPhi >= fSPhi - halfAngTolerance)
      @@ -493,7 +491,7 @@ EInside G4Tubs::Inside( const G4ThreeVector& p ) const
                 {
                   in = kSurface ;
                 }
      -        }      
      +        }
             }
           }
         }
      @@ -523,22 +521,22 @@ G4ThreeVector G4Tubs::SurfaceNormal( const G4ThreeVector& p ) const
         distRMax = std::fabs(rho - fRMax);
         distZ    = std::fabs(std::fabs(p.z()) - fDz);
       
      -  if (!fPhiFullTube)    // Protected against (0,0,z) 
      +  if (!fPhiFullTube)    // Protected against (0,0,z)
         {
           if ( rho > halfCarTolerance )
           {
             pPhi = std::atan2(p.y(),p.x());
      -    
      +
             if (pPhi  < fSPhi-halfCarTolerance)            { pPhi += twopi; }
             else if (pPhi > fSPhi+fDPhi+halfCarTolerance)  { pPhi -= twopi; }
       
      -      distSPhi = std::fabs( pPhi - fSPhi );       
      -      distEPhi = std::fabs( pPhi - fSPhi - fDPhi ); 
      +      distSPhi = std::fabs( pPhi - fSPhi );
      +      distEPhi = std::fabs( pPhi - fSPhi - fDPhi );
           }
           else if ( !fRMin )
           {
      -      distSPhi = 0.; 
      -      distEPhi = 0.; 
      +      distSPhi = 0.;
      +      distEPhi = 0.;
           }
           nPs = G4ThreeVector( sinSPhi, -cosSPhi, 0 );
           nPe = G4ThreeVector( -sinEPhi, cosEPhi, 0 );
      @@ -555,20 +553,20 @@ G4ThreeVector G4Tubs::SurfaceNormal( const G4ThreeVector& p ) const
           ++noSurfaces;
           sumnorm -= nR;
         }
      -  if( fDPhi < twopi )   
      +  if( fDPhi < twopi )
         {
      -    if (distSPhi <= halfAngTolerance)  
      +    if (distSPhi <= halfAngTolerance)
           {
             ++noSurfaces;
             sumnorm += nPs;
           }
      -    if (distEPhi <= halfAngTolerance)  
      +    if (distEPhi <= halfAngTolerance)
           {
             ++noSurfaces;
             sumnorm += nPe;
           }
         }
      -  if (distZ <= halfCarTolerance)  
      +  if (distZ <= halfCarTolerance)
         {
           ++noSurfaces;
           if ( p.z() >= 0.)  { sumnorm += nZ; }
      @@ -583,7 +581,7 @@ G4ThreeVector G4Tubs::SurfaceNormal( const G4ThreeVector& p ) const
           G4cout<< "G4Tubs::SN ( "< 0 )  { norm = G4ThreeVector(0,0,1) ; }
             else              { norm = G4ThreeVector(0,0,-1); }
             break ;
      @@ -702,8 +700,8 @@ G4ThreeVector G4Tubs::ApproxSurfaceNormal( const G4ThreeVector& p ) const
                         "GeomSolids1002", JustWarning,
                         "Undefined side for valid surface normal to solid.");
             break ;
      -    }    
      -  }                
      +    }
      +  }
         return norm;
       }
       
      @@ -713,7 +711,7 @@ G4ThreeVector G4Tubs::ApproxSurfaceNormal( const G4ThreeVector& p ) const
       // Calculate distance to shape from outside, along normalised vector
       // - return kInfinity if no intersection, or intersection distance <= tolerance
       //
      -// - Compute the intersection with the z planes 
      +// - Compute the intersection with the z planes
       //        - if at valid r, phi, return
       //
       // -> If point is outer outer radius, compute intersection with rmax
      @@ -740,8 +738,8 @@ G4double G4Tubs::DistanceToIn( const G4ThreeVector& p,
         // Intersection point variables
         //
         G4double Dist, sd, xi, yi, zi, rho2, inum, iden, cosPsi, Comp ;
      -  G4double t1, t2, t3, b, c, d ;     // Quadratic solver variables 
      -  
      +  G4double t1, t2, t3, b, c, d ;     // Quadratic solver variables
      +
         // Calculate tolerant rmin and rmax
       
         if (fRMin > kRadTolerance)
      @@ -837,7 +835,7 @@ G4double G4Tubs::DistanceToIn( const G4ThreeVector& p,
                 {               // 64 bits systems. Split long distances and recompute
                   G4double fTerm = sd-std::fmod(sd,dRmax);
                   sd = fTerm + DistanceToIn(p+fTerm*v,v);
      -          } 
      +          }
                 // Check z intersection
                 //
                 zi = p.z() + sd*v.z() ;
      @@ -860,7 +858,7 @@ G4double G4Tubs::DistanceToIn( const G4ThreeVector& p,
               }    //  end if (sd>=0)
             }      //  end if (d>=0)
           }        //  end if (r>=fRMax)
      -    else 
      +    else
           {
             // Inside outer radius :
             // check not inside, and heading through tubs (-> 0 to in)
      @@ -878,11 +876,11 @@ G4double G4Tubs::DistanceToIn( const G4ThreeVector& p,
                 {
                   // In the old version, the small negative tangent for the point
                   // on surface was not taken in account, and returning 0.0 ...
      -            // New version: check the tangent for the point on surface and 
      +            // New version: check the tangent for the point on surface and
                   // if no intersection, return kInfinity, if intersection instead
                   // return sd.
                   //
      -            c = t3-fRMax*fRMax; 
      +            c = t3-fRMax*fRMax;
                   if ( c<=0.0 )
                   {
                     return 0.0;
      @@ -894,26 +892,26 @@ G4double G4Tubs::DistanceToIn( const G4ThreeVector& p,
                     if ( d>=0.0 )
                     {
                       snxt = c/(-b+std::sqrt(d)); // using safe solution
      -                                            // for quadratic equation 
      +                                            // for quadratic equation
                       if ( snxt < halfCarTolerance ) { snxt=0; }
                       return snxt ;
      -              }      
      +              }
                     else
                     {
                       return kInfinity;
                     }
                   }
      -          } 
      +          }
               }
               else
      -        {   
      +        {
                 // In the old version, the small negative tangent for the point
                 // on surface was not taken in account, and returning 0.0 ...
      -          // New version: check the tangent for the point on surface and 
      +          // New version: check the tangent for the point on surface and
                 // if no intersection, return kInfinity, if intersection instead
                 // return sd.
                 //
      -          c = t3 - fRMax*fRMax; 
      +          c = t3 - fRMax*fRMax;
                 if ( c<=0.0 )
                 {
                   return 0.0;
      @@ -925,10 +923,10 @@ G4double G4Tubs::DistanceToIn( const G4ThreeVector& p,
                   if ( d>=0.0 )
                   {
                     snxt= c/(-b+std::sqrt(d)); // using safe solution
      -                                         // for quadratic equation 
      +                                         // for quadratic equation
                     if ( snxt < halfCarTolerance ) { snxt=0; }
                     return snxt ;
      -            }      
      +            }
                   else
                   {
                     return kInfinity;
      @@ -936,7 +934,7 @@ G4double G4Tubs::DistanceToIn( const G4ThreeVector& p,
                 }
               } // end if   (!fPhiFullTube)
             }   // end if   (t3>tolIRMin2)
      -    }     // end if   (Inside Outer Radius) 
      +    }     // end if   (Inside Outer Radius)
           if ( fRMin )    // Try inner cylinder intersection
           {
             c = (t3 - fRMin*fRMin)/t1 ;
      @@ -956,7 +954,7 @@ G4double G4Tubs::DistanceToIn( const G4ThreeVector& p,
                 {               // 64 bits systems. Split long distances and recompute
                   G4double fTerm = sd-std::fmod(sd,dRmax);
                   sd = fTerm + DistanceToIn(p+fTerm*v,v);
      -          } 
      +          }
                 zi = p.z() + sd*v.z() ;
                 if (std::fabs(zi) <= tolODz)
                 {
      @@ -964,7 +962,7 @@ G4double G4Tubs::DistanceToIn( const G4ThreeVector& p,
                   //
                   if ( fPhiFullTube )
                   {
      -              return sd ; 
      +              return sd ;
                   }
                   else
                   {
      @@ -999,7 +997,7 @@ G4double G4Tubs::DistanceToIn( const G4ThreeVector& p,
           // First phi surface (Starting phi)
           //
           Comp    = v.x()*sinSPhi - v.y()*cosSPhi ;
      -                    
      +
           if ( Comp < 0 )  // Component in outwards normal dirn
           {
             Dist = (p.y()*cosSPhi - p.x()*sinSPhi) ;
      @@ -1033,13 +1031,13 @@ G4double G4Tubs::DistanceToIn( const G4ThreeVector& p,
                   }
                 }
               }
      -      }    
      +      }
           }
      -      
      +
           // Second phi surface (Ending phi)
       
           Comp    = -(v.x()*sinEPhi - v.y()*cosEPhi) ;
      -        
      +
           if (Comp < 0 )  // Component in outwards normal dirn
           {
             Dist = -(p.y()*cosEPhi - p.x()*sinEPhi) ;
      @@ -1074,17 +1072,17 @@ G4double G4Tubs::DistanceToIn( const G4ThreeVector& p,
               }
             }
           }         //  Comp < 0
      -  }           //  !fPhiFullTube 
      +  }           //  !fPhiFullTube
         if ( snxt If point is outer outer radius, compute intersection with rmax
      @@ -1124,7 +1122,7 @@ G4double G4Tubs::DistanceToIn( const G4ThreeVector& p ) const
           // Psi=angle from central phi to point
           //
           cosPsi = (p.x()*cosCPhi + p.y()*sinCPhi)/rho ;
      -    
      +
           if ( cosPsi < cosHDPhi )
           {
             // Point lies outside phi range
      @@ -1158,11 +1156,11 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p,
         ESide side=kNull , sider=kNull, sidephi=kNull ;
         G4double snxt, srd=kInfinity, sphi=kInfinity, pdist ;
         G4double deltaR, t1, t2, t3, b, c, d2, roMin2 ;
      -  
      +
         // Vars for phi intersection:
       
         G4double pDistS, compS, pDistE, compE, sphi2, xi, yi, vphi, roi2 ;
      - 
      +
         // Z plane intersection
       
         if (v.z() > 0 )
      @@ -1229,7 +1227,7 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p,
         if ( t1 > 0 ) // Check not parallel
         {
           // Calculate srd, r exit distance
      -     
      +
           if ( (t2 >= 0.0) && (roi2 > fRMax*(fRMax + kRadTolerance)) )
           {
             // Delta r not negative => leaving via rmax
      @@ -1253,7 +1251,7 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p,
               // On tolerant boundary & heading outwards (or perpendicular to)
               // outer radial surface -> leaving immediately
       
      -        if ( calcNorm ) 
      +        if ( calcNorm )
               {
                 G4double invRho = FastInverseRxy( p, fInvRmax, kNormTolerance );
                 *n         = G4ThreeVector(p.x()*invRho,p.y()*invRho,0) ;
      @@ -1261,10 +1259,10 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p,
               }
               return snxt = 0 ; // Leaving by rmax immediately
             }
      -    }             
      +    }
           else if ( t2 < 0. ) // i.e.  t2 < 0; Possible rmin intersection
           {
      -      roMin2 = t3 - t2*t2/t1 ; // min ro2 of the plane of movement 
      +      roMin2 = t3 - t2*t2/t1 ; // min ro2 of the plane of movement
       
             if ( fRMin && (roMin2 < fRMin*(fRMin - kRadTolerance)) )
             {
      @@ -1280,7 +1278,7 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p,
       
                 if (deltaR > kRadTolerance*fRMin)
                 {
      -            srd = c/(-b+std::sqrt(d2)); 
      +            srd = c/(-b+std::sqrt(d2));
                   sider = kRMin ;
                 }
                 else
      @@ -1307,7 +1305,7 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p,
                   if (calcNorm)
                   {
                     G4double invRho = FastInverseRxy( p, fInvRmax, kNormTolerance );
      -              *n = G4ThreeVector(p.x()*invRho,p.y()*invRho,0) ;               
      +              *n = G4ThreeVector(p.x()*invRho,p.y()*invRho,0) ;
                     *validNorm = true ;
                   }
                   return snxt = 0.0;
      @@ -1339,16 +1337,16 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p,
               }
             }
           }
      -    
      +
           // Phi Intersection
       
           if ( !fPhiFullTube )
           {
      -      // add angle calculation with correction 
      +      // add angle calculation with correction
             // of the difference in domain of atan2 and Sphi
             //
             vphi = std::atan2(v.y(),v.x()) ;
      -     
      +
             if ( vphi < fSPhi - halfAngTolerance  )             { vphi += twopi; }
             else if ( vphi > fSPhi + fDPhi + halfAngTolerance ) { vphi -= twopi; }
       
      @@ -1364,25 +1362,25 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p,
       
               compS = -sinSPhi*v.x() + cosSPhi*v.y() ;
               compE =  sinEPhi*v.x() - cosEPhi*v.y() ;
      -       
      +
               sidephi = kNull;
      -        
      +
               if( ( (fDPhi <= pi) && ( (pDistS <= halfCarTolerance)
                                     && (pDistE <= halfCarTolerance) ) )
                || ( (fDPhi >  pi) && !((pDistS >  halfCarTolerance)
                                     && (pDistE >  halfCarTolerance) ) )  )
               {
                 // Inside both phi *full* planes
      -          
      +
                 if ( compS < 0 )
                 {
                   sphi = pDistS/compS ;
      -            
      +
                   if (sphi >= -halfCarTolerance)
                   {
                     xi = p.x() + sphi*v.x() ;
                     yi = p.y() + sphi*v.y() ;
      -              
      +
                     // Check intersecting with correct half-plane
                     // (if not -> no intersect)
                     //
      @@ -1405,8 +1403,8 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p,
                       if ( pDistS > -halfCarTolerance )
                       {
                         sphi = 0.0 ; // Leave by sphi immediately
      -                }    
      -              }       
      +                }
      +              }
                   }
                   else
                   {
      @@ -1421,14 +1419,14 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p,
                 if ( compE < 0 )
                 {
                   sphi2 = pDistE/compE ;
      -            
      +
                   // Only check further if < starting phi intersection
                   //
                   if ( (sphi2 > -halfCarTolerance) && (sphi2 < sphi) )
                   {
                     xi = p.x() + sphi2*v.x() ;
                     yi = p.y() + sphi2*v.y() ;
      -              
      +
                     if((std::fabs(xi)<=kCarTolerance)&&(std::fabs(yi)<=kCarTolerance))
                     {
                       // Leaving via ending phi
      @@ -1440,8 +1438,8 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p,
                         if ( pDistE <= -halfCarTolerance )  { sphi = sphi2 ; }
                         else                                { sphi = 0.0 ;   }
                       }
      -              } 
      -              else    // Check intersecting with correct half-plane 
      +              }
      +              else    // Check intersecting with correct half-plane
       
                     if ( (yi*cosCPhi-xi*sinCPhi) >= 0)
                     {
      @@ -1463,7 +1461,7 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p,
             {
               // On z axis + travel not || to z axis -> if phi of vector direction
               // within phi of shape, Step limited by rmax, else Step =0
      -               
      +
               if ( (fSPhi - halfAngTolerance <= vphi)
                  && (vphi <= fSPhi + fDPhi + halfAngTolerance ) )
               {
      @@ -1471,7 +1469,7 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p,
               }
               else
               {
      -          sidephi = kSPhi ; // arbitrary 
      +          sidephi = kSPhi ; // arbitrary
                 sphi    = 0.0 ;
               }
             }
      @@ -1596,7 +1594,7 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p ) const
         {
           safeR1 = rho   - fRMin ;
           safeR2 = fRMax - rho ;
      - 
      +
           if ( safeR1 < safeR2 ) { safe = safeR1 ; }
           else                   { safe = safeR2 ; }
         }
      @@ -1624,7 +1622,7 @@ G4double G4Tubs::DistanceToOut( const G4ThreeVector& p ) const
         }
         if ( safe < 0 )  { safe = 0 ; }
       
      -  return safe ;  
      +  return safe ;
       }
       
       //////////////////////////////////////////////////////////////////////////
      @@ -1674,80 +1672,91 @@ std::ostream& G4Tubs::StreamInfo( std::ostream& os ) const
       
       G4ThreeVector G4Tubs::GetPointOnSurface() const
       {
      -  G4double xRand, yRand, zRand, phi, cosphi, sinphi, chose,
      -           aOne, aTwo, aThr, aFou;
      -  G4double rRand;
      +  G4double Rmax = fRMax;
      +  G4double Rmin = fRMin;
      +  G4double hz = 2.*fDz;       // height
      +  G4double lext = fDPhi*Rmax; // length of external circular arc
      +  G4double lint = fDPhi*Rmin; // length of internal circular arc
       
      -  aOne = 2.*fDz*fDPhi*fRMax;
      -  aTwo = 2.*fDz*fDPhi*fRMin;
      -  aThr = 0.5*fDPhi*(fRMax*fRMax-fRMin*fRMin);
      -  aFou = 2.*fDz*(fRMax-fRMin);
      +  // Set array of surface areas
      +  //
      +  G4double RRmax = Rmax * Rmax;
      +  G4double RRmin = Rmin * Rmin;
      +  G4double sbase = 0.5*fDPhi*(RRmax - RRmin);
      +  G4double scut = (fDPhi == twopi) ? 0. : hz*(Rmax - Rmin);
      +  G4double ssurf[6] = { scut, scut, sbase, sbase, hz*lext, hz*lint };
      +  ssurf[1] += ssurf[0];
      +  ssurf[2] += ssurf[1];
      +  ssurf[3] += ssurf[2];
      +  ssurf[4] += ssurf[3];
      +  ssurf[5] += ssurf[4];
       
      -  phi    = G4RandFlat::shoot(fSPhi, fSPhi+fDPhi);
      -  cosphi = std::cos(phi);
      -  sinphi = std::sin(phi);
      +  // Select surface
      +  //
      +  G4double select = ssurf[5]*G4QuickRand();
      +  G4int k = 5;
      +  k -= (select <= ssurf[4]);
      +  k -= (select <= ssurf[3]);
      +  k -= (select <= ssurf[2]);
      +  k -= (select <= ssurf[1]);
      +  k -= (select <= ssurf[0]);
       
      -  rRand  = GetRadiusInRing(fRMin,fRMax);
      -  
      -  if( (fSPhi == 0) && (fDPhi == twopi) ) { aFou = 0; }
      -  
      -  chose  = G4RandFlat::shoot(0.,aOne+aTwo+2.*aThr+2.*aFou);
      -
      -  if( (chose >=0) && (chose < aOne) )
      +  // Generate point on selected surface
      +  //
      +  switch(k)
         {
      -    xRand = fRMax*cosphi;
      -    yRand = fRMax*sinphi;
      -    zRand = G4RandFlat::shoot(-1.*fDz,fDz);
      -    return G4ThreeVector  (xRand, yRand, zRand);
      -  }
      -  else if( (chose >= aOne) && (chose < aOne + aTwo) )
      -  {
      -    xRand = fRMin*cosphi;
      -    yRand = fRMin*sinphi;
      -    zRand = G4RandFlat::shoot(-1.*fDz,fDz);
      -    return G4ThreeVector  (xRand, yRand, zRand);
      -  }
      -  else if( (chose >= aOne + aTwo) && (chose < aOne + aTwo + aThr) )
      -  {
      -    xRand = rRand*cosphi;
      -    yRand = rRand*sinphi;
      -    zRand = fDz;
      -    return G4ThreeVector  (xRand, yRand, zRand);
      -  }
      -  else if( (chose >= aOne + aTwo + aThr) && (chose < aOne + aTwo + 2.*aThr) )
      -  {
      -    xRand = rRand*cosphi;
      -    yRand = rRand*sinphi;
      -    zRand = -1.*fDz;
      -    return G4ThreeVector  (xRand, yRand, zRand);
      -  }
      -  else if( (chose >= aOne + aTwo + 2.*aThr)
      -        && (chose < aOne + aTwo + 2.*aThr + aFou) )
      -  {
      -    xRand = rRand*cosSPhi;
      -    yRand = rRand*sinSPhi;
      -    zRand = G4RandFlat::shoot(-1.*fDz,fDz);
      -    return G4ThreeVector  (xRand, yRand, zRand);
      -  }
      -  else
      -  {
      -    xRand = rRand*cosEPhi;
      -    yRand = rRand*sinEPhi;
      -    zRand = G4RandFlat::shoot(-1.*fDz,fDz);
      -    return G4ThreeVector  (xRand, yRand, zRand);
      +    case 0: // start phi cut
      +    {
      +      G4double r = Rmin + (Rmax - Rmin)*G4QuickRand();
      +      return G4ThreeVector(r*cosSPhi, r*sinSPhi, hz*G4QuickRand() - fDz);
      +    }
      +    case 1: // end phi cut
      +    {
      +      G4double r = Rmin + (Rmax - Rmin)*G4QuickRand();
      +      return G4ThreeVector(r*cosEPhi, r*sinEPhi, hz*G4QuickRand() - fDz);
      +    }
      +    case 2: // base at -dz
      +    {
      +      G4double r = std::sqrt(RRmin + (RRmax - RRmin)*G4QuickRand());
      +      G4double phi = fSPhi + fDPhi*G4QuickRand();
      +      return G4ThreeVector(r*std::cos(phi), r*std::sin(phi), -fDz);
      +    }
      +    case 3: // base at +dz
      +    {
      +      G4double r = std::sqrt(RRmin + (RRmax - RRmin)*G4QuickRand());
      +      G4double phi = fSPhi + fDPhi*G4QuickRand();
      +      return G4ThreeVector(r*std::cos(phi), r*std::sin(phi), fDz);
      +    }
      +    case 4: // external lateral surface
      +    {
      +      G4double phi = fSPhi + fDPhi*G4QuickRand();
      +      G4double z = hz*G4QuickRand() - fDz;
      +      G4double x = Rmax*std::cos(phi);
      +      G4double y = Rmax*std::sin(phi);
      +      return G4ThreeVector(x,y,z);
      +    }
      +    case 5: // internal lateral surface
      +    {
      +      G4double phi = fSPhi + fDPhi*G4QuickRand();
      +      G4double z = hz*G4QuickRand() - fDz;
      +      G4double x = Rmin*std::cos(phi);
      +      G4double y = Rmin*std::sin(phi);
      +      return G4ThreeVector(x,y,z);
      +    }
         }
      +  return G4ThreeVector(0., 0., 0.);
       }
       
       ///////////////////////////////////////////////////////////////////////////
       //
       // Methods for visualisation
       
      -void G4Tubs::DescribeYourselfTo ( G4VGraphicsScene& scene ) const 
      +void G4Tubs::DescribeYourselfTo ( G4VGraphicsScene& scene ) const
       {
         scene.AddSolid (*this) ;
       }
       
      -G4Polyhedron* G4Tubs::CreatePolyhedron () const 
      +G4Polyhedron* G4Tubs::CreatePolyhedron () const
       {
         return new G4PolyhedronTubs (fRMin, fRMax, fDz, fSPhi, fDPhi) ;
       }
      diff --git a/source/geometry/solids/specific/History b/source/geometry/solids/specific/History
      index eae51ac1e0..32af616dc4 100644
      --- a/source/geometry/solids/specific/History
      +++ b/source/geometry/solids/specific/History
      @@ -16,6 +16,20 @@ committal in the source repository !
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
       
      +30-October-2020 E.Tcherniaev       (geom-specific-V10-06-10)
      +- G4Polycone: Revised GetPointOnSurface();
      +  Added protected auxiliary method SetSurfaceElements();
      +  Removed GetPointOnCone(), GetPointOnTubs(), GetPointOnCut(), GetPointOnRing();
      +- G4GenericPolycone: Revised GetPointOnSurface();
      +  Added protected auxiliary method SetSurfaceElements();
      +- G4Polyhedra: Revised GetPointOnSurface();
      +  Added protected auxiliary method SetSurfaceElements();
      +  Removed GetPointOnPlane(), GetPointOnTriangle();
      +
      +01-October-2020 E.Tcherniaev       (geom-specific-V10-06-09)
      +- G4Polycone, G4GenericPolycone, G4Polyhedra:
      +  implemented GetSurfaceArea(), GetCubicVolume().
      +
       May  21, 2020 Guilherme Lima       (geom-specific-V10-06-08)
       ----------------------------
       - Fix constructor signatures in G4UExtrudedSolid wrappers, to match those in G4 version.
      diff --git a/source/geometry/solids/specific/include/G4GenericPolycone.hh b/source/geometry/solids/specific/include/G4GenericPolycone.hh
      index 73173344ab..a48bc645ec 100644
      --- a/source/geometry/solids/specific/include/G4GenericPolycone.hh
      +++ b/source/geometry/solids/specific/include/G4GenericPolycone.hh
      @@ -88,6 +88,9 @@ class G4GenericPolycone : public G4VCSGfaceted
                                const G4AffineTransform& pTransform,
                                G4double& pmin, G4double& pmax) const;
       
      +  G4double GetCubicVolume();
      +  G4double GetSurfaceArea();
      +
         G4ThreeVector GetPointOnSurface() const;
       
         G4GeometryType GetEntityType() const;
      @@ -135,6 +138,8 @@ class G4GenericPolycone : public G4VCSGfaceted
       
         // Methods for random point generation
       
      +  void SetSurfaceElements() const;
      +
        protected:  // without description
       
         // Here are our parameters
      @@ -145,9 +150,10 @@ class G4GenericPolycone : public G4VCSGfaceted
         G4int    numCorner;           // number RZ points
         G4PolyconeSideRZ* corners = nullptr;  // corner r,z points
       
      -  // Our quick test
      +  G4EnclosingCylinder* enclosingCylinder = nullptr; // Our quick test
       
      -  G4EnclosingCylinder* enclosingCylinder = nullptr;
      +  struct surface_element { G4double area = 0.; G4int i0 = 0, i1 = 0, i2 = 0; };
      +  mutable std::vector* fElements = nullptr;
       };
       
       #include "G4GenericPolycone.icc"
      diff --git a/source/geometry/solids/specific/include/G4Polycone.hh b/source/geometry/solids/specific/include/G4Polycone.hh
      index 88937ab393..1fe5eac172 100644
      --- a/source/geometry/solids/specific/include/G4Polycone.hh
      +++ b/source/geometry/solids/specific/include/G4Polycone.hh
      @@ -106,6 +106,9 @@ class G4Polycone : public G4VCSGfaceted
                                const G4AffineTransform& pTransform,
                                G4double& pmin, G4double& pmax) const;
       
      +  G4double GetCubicVolume();
      +  G4double GetSurfaceArea();
      +
         G4ThreeVector GetPointOnSurface() const;
       
         void ComputeDimensions(       G4VPVParameterisation* p,
      @@ -161,23 +164,7 @@ class G4Polycone : public G4VCSGfaceted
       
         // Methods for random point generation
       
      -  G4ThreeVector GetPointOnCone(G4double fRmin1, G4double fRmax1,
      -                               G4double fRmin2, G4double fRmax2,
      -                               G4double zOne,   G4double zTwo,
      -                               G4double& totArea) const;
      -
      -  G4ThreeVector GetPointOnTubs(G4double fRMin, G4double fRMax,
      -                               G4double zOne,  G4double zTwo,
      -                               G4double& totArea) const;
      -
      -  G4ThreeVector GetPointOnCut(G4double fRMin1, G4double fRMax1,
      -                              G4double fRMin2, G4double fRMax2,
      -                              G4double zOne,   G4double zTwo,
      -                              G4double& totArea) const;
      -
      -  G4ThreeVector GetPointOnRing(G4double fRMin, G4double fRMax,
      -                               G4double fRMin2, G4double fRMax2,
      -                               G4double zOne) const;
      +  void SetSurfaceElements() const;
       
        protected:  // without description
       
      @@ -190,10 +177,10 @@ class G4Polycone : public G4VCSGfaceted
         G4PolyconeSideRZ* corners = nullptr;  // Corner r,z points
         G4PolyconeHistorical* original_parameters = nullptr;  // Original input params
       
      -  // Our quick test
      -
      -  G4EnclosingCylinder* enclosingCylinder = nullptr;
      +  G4EnclosingCylinder* enclosingCylinder = nullptr; // Our quick test
       
      +  struct surface_element { G4double area = 0.; G4int i0 = 0, i1 = 0, i2 = 0; };
      +  mutable std::vector* fElements = nullptr;
       };
       
       #include "G4Polycone.icc"
      diff --git a/source/geometry/solids/specific/include/G4Polyhedra.hh b/source/geometry/solids/specific/include/G4Polyhedra.hh
      index 69be94b516..114a811cf3 100644
      --- a/source/geometry/solids/specific/include/G4Polyhedra.hh
      +++ b/source/geometry/solids/specific/include/G4Polyhedra.hh
      @@ -115,6 +115,9 @@ class G4Polyhedra : public G4VCSGfaceted
       
         G4VSolid* Clone() const;
       
      +  G4double GetCubicVolume();
      +  G4double GetSurfaceArea();
      +
         G4ThreeVector GetPointOnSurface() const;
       
         std::ostream& StreamInfo( std::ostream& os ) const;
      @@ -172,11 +175,7 @@ class G4Polyhedra : public G4VCSGfaceted
       
         // Methods for generation of random points on surface
       
      -  G4ThreeVector GetPointOnPlane(G4ThreeVector p0, G4ThreeVector p1,
      -                                G4ThreeVector p2, G4ThreeVector p3) const;
      -  G4ThreeVector GetPointOnTriangle(G4ThreeVector p0, G4ThreeVector p1,
      -                                   G4ThreeVector p2) const;
      -  G4ThreeVector GetPointOnSurfaceCorners() const;
      +  void SetSurfaceElements() const;
       
        protected:  // without description
       
      @@ -190,6 +189,9 @@ class G4Polyhedra : public G4VCSGfaceted
         G4PolyhedraHistorical* original_parameters = nullptr; // original input params
       
         G4EnclosingCylinder* enclosingCylinder = nullptr;
      +
      +  struct surface_element { G4double area = 0.; G4int i0 = 0, i1 = 0, i2 = 0; };
      +  mutable std::vector* fElements = nullptr;
       };
       
       #include "G4Polyhedra.icc"
      diff --git a/source/geometry/solids/specific/src/G4GenericPolycone.cc b/source/geometry/solids/specific/src/G4GenericPolycone.cc
      index 07c3479d69..eea3805281 100644
      --- a/source/geometry/solids/specific/src/G4GenericPolycone.cc
      +++ b/source/geometry/solids/specific/src/G4GenericPolycone.cc
      @@ -40,30 +40,35 @@
       #include "G4AffineTransform.hh"
       #include "G4BoundingEnvelope.hh"
       
      -#include "Randomize.hh"
      +#include "G4QuickRand.hh"
       
       #include "G4Polyhedron.hh"
       #include "G4EnclosingCylinder.hh"
       #include "G4ReduciblePolygon.hh"
       #include "G4VPVParameterisation.hh"
       
      +namespace
      +{
      +  G4Mutex surface_elementsMutex = G4MUTEX_INITIALIZER;
      +}
      +
       using namespace CLHEP;
       
       // Constructor (generic parameters)
       //
      -G4GenericPolycone::G4GenericPolycone( const G4String& name, 
      +G4GenericPolycone::G4GenericPolycone( const G4String& name,
                                     G4double phiStart,
                                     G4double phiTotal,
                                     G4int    numRZ,
                               const G4double r[],
                               const G4double z[]   )
         : G4VCSGfaceted( name )
      -{ 
      -  
      +{
      +
         G4ReduciblePolygon *rz = new G4ReduciblePolygon( r, z, numRZ );
      -  
      +
         Create( phiStart, phiTotal, rz );
      -  
      +
         // Set original_parameters struct for consistency
         //
         //SetOriginalParameters(rz);
      @@ -91,7 +96,7 @@ void G4GenericPolycone::Create( G4double phiStart,
           G4Exception("G4GenericPolycone::Create()", "GeomSolids0002",
                       FatalErrorInArgument, message);
         }
      -    
      +
         G4double rzArea = rz->Area();
         if (rzArea < -kCarTolerance)
         {
      @@ -105,9 +110,9 @@ void G4GenericPolycone::Create( G4double phiStart,
           G4Exception("G4GenericPolycone::Create()", "GeomSolids0002",
                       FatalErrorInArgument, message);
         }
      -    
      +
         if ( (!rz->RemoveDuplicateVertices( kCarTolerance ))
      -    || (!rz->RemoveRedundantVertices( kCarTolerance ))     ) 
      +    || (!rz->RemoveRedundantVertices( kCarTolerance ))     )
         {
           std::ostringstream message;
           message << "Illegal input parameters - " << GetName() << G4endl
      @@ -116,7 +121,7 @@ void G4GenericPolycone::Create( G4double phiStart,
                       FatalErrorInArgument, message);
         }
       
      -  if (rz->CrossesItself(1/kInfinity)) 
      +  if (rz->CrossesItself(1/kInfinity))
         {
           std::ostringstream message;
           message << "Illegal input parameters - " << GetName() << G4endl
      @@ -140,21 +145,21 @@ void G4GenericPolycone::Create( G4double phiStart,
         else
         {
           phiIsOpen = true;
      -    
      +
           //
           // Convert phi into our convention
           //
           startPhi = phiStart;
           while( startPhi < 0 )    // Loop checking, 13.08.2015, G.Cosmo
             startPhi += twopi;
      -    
      +
           endPhi = phiStart+phiTotal;
           while( endPhi < startPhi )    // Loop checking, 13.08.2015, G.Cosmo
             endPhi += twopi;
         }
      -  
      +
         //
      -  // Allocate corner array. 
      +  // Allocate corner array.
         //
         corners = new G4PolyconeSideRZ[numCorner];
       
      @@ -162,7 +167,7 @@ void G4GenericPolycone::Create( G4double phiStart,
         // Copy corners
         //
         G4ReduciblePolygonIterator iterRZ(rz);
      -  
      +
         G4PolyconeSideRZ* next = corners;
         iterRZ.Begin();
         do    // Loop checking, 13.08.2015, G.Cosmo
      @@ -170,13 +175,13 @@ void G4GenericPolycone::Create( G4double phiStart,
           next->r = iterRZ.GetA();
           next->z = iterRZ.GetB();
         } while( ++next, iterRZ.Next() );
      -  
      +
         //
         // Allocate face pointer array
         //
         numFace = phiIsOpen ? numCorner+2 : numCorner;
         faces = new G4VCSGface*[numFace];
      -  
      +
         //
         // Construct conical faces
         //
      @@ -192,9 +197,9 @@ void G4GenericPolycone::Create( G4double phiStart,
           if (next >= corners+numCorner) next = corners;
           nextNext = next+1;
           if (nextNext >= corners+numCorner) nextNext = corners;
      -    
      +
           if (corner->r < 1/kInfinity && next->r < 1/kInfinity) continue;
      -    
      +
           //
           // We must decide here if we can dare declare one of our faces
           // as having a "valid" normal (i.e. allBehind = true). This
      @@ -215,11 +220,11 @@ void G4GenericPolycone::Create( G4double phiStart,
             allBehind = !rz->BisectedBy( corner->r, corner->z,
                        next->r, next->z, kCarTolerance );
           }
      -    
      +
           *face++ = new G4PolyconeSide( prev, corner, next, nextNext,
                       startPhi, endPhi-startPhi, phiIsOpen, allBehind );
         } while( prev=corner, corner=next, corner > corners );
      -  
      +
         if (phiIsOpen)
         {
           //
      @@ -228,12 +233,12 @@ void G4GenericPolycone::Create( G4double phiStart,
           *face++ = new G4PolyPhiFace( rz, startPhi, 0, endPhi  );
           *face++ = new G4PolyPhiFace( rz, endPhi,   0, startPhi );
         }
      -  
      +
         //
         // We might have dropped a face or two: recalculate numFace
         //
         numFace = face-faces;
      -  
      +
         //
         // Make enclosingCylinder
         //
      @@ -255,6 +260,12 @@ G4GenericPolycone::~G4GenericPolycone()
       {
         delete [] corners;
         delete enclosingCylinder;
      +  delete fElements;
      +  delete fpPolyhedron;
      +  corners = nullptr;
      +  enclosingCylinder = nullptr;
      +  fElements = nullptr;
      +  fpPolyhedron = nullptr;
       }
       
       // Copy constructor
      @@ -271,16 +282,16 @@ G4GenericPolycone&
       G4GenericPolycone::operator=( const G4GenericPolycone& source )
       {
         if (this == &source) return *this;
      -  
      +
         G4VCSGfaceted::operator=( source );
      -  
      +
         delete [] corners;
         // if (original_parameters) delete original_parameters;
      -  
      +
         delete enclosingCylinder;
      -  
      +
         CopyStuff( source );
      -  
      +
         return *this;
       }
       
      @@ -300,20 +311,29 @@ void G4GenericPolycone::CopyStuff( const G4GenericPolycone& source )
         // The corner array
         //
         corners = new G4PolyconeSideRZ[numCorner];
      -  
      +
         G4PolyconeSideRZ  *corn = corners,
               *sourceCorn = source.corners;
         do    // Loop checking, 13.08.2015, G.Cosmo
         {
           *corn = *sourceCorn;
         } while( ++sourceCorn, ++corn < corners+numCorner );
      -  
      +
         //
         // Enclosing cylinder
         //
         enclosingCylinder = new G4EnclosingCylinder( *source.enclosingCylinder );
       
      +  //
      +  // Surface elements
      +  //
      +  delete fElements;
      +  fElements = nullptr;
      +
      +  // Polyhedron
      +  //
         fRebuildPolyhedron = false;
      +  delete fpPolyhedron;
         fpPolyhedron = nullptr;
       }
       
      @@ -360,7 +380,7 @@ G4double G4GenericPolycone::DistanceToIn( const G4ThreeVector& p,
         //
         if (enclosingCylinder->ShouldMiss(p,v))
           return kInfinity;
      -  
      +
         //
         // Long answer
         //
      @@ -595,7 +615,7 @@ std::ostream& G4GenericPolycone::StreamInfo( std::ostream& os ) const
            << "    starting phi angle : " << startPhi/degree << " degrees \n"
            << "    ending phi angle   : " << endPhi/degree << " degrees \n";
         G4int i=0;
      - 
      +
         os << "    number of RZ points: " << numCorner << "\n"
            << "              RZ values (corners): \n";
            for (i=0; i;
      +  G4double sarea = 0.;
      +  G4int nrz = GetNumRZCorner();
      +
      +  // set lateral surface elements
      +  G4double dphi = GetEndPhi() - GetStartPhi();
      +  G4int ia = nrz - 1;
      +  for (G4int ib=0; ibpush_back(selem);
      +  }
      +
      +  // set elements for phi cuts
      +  if (IsOpen())
      +  {
      +    G4TwoVectorList contourRZ;
      +    std::vector triangles;
      +    for (G4int i=0; ipush_back(selem); // start phi
      +      sarea += stria;
      +      selem.area = sarea;
      +      selem.i0 += nrz;
      +      fElements->push_back(selem); // end phi
      +    }
      +  }
      +}
      +
      +//////////////////////////////////////////////////////////////////////////
      +//
      +// Generate random point on surface
      +
      +G4ThreeVector G4GenericPolycone::GetPointOnSurface() const
      +{
      +  // Set surface elements
      +  if (!fElements)
      +  {
      +    G4AutoLock l(&surface_elementsMutex);
      +    SetSurfaceElements();
      +    l.unlock();
      +  }
      +
      +  // Select surface element
      +  G4GenericPolycone::surface_element selem;
      +  selem = fElements->back();
      +  G4double select = selem.area*G4QuickRand();
      +  auto it = std::lower_bound(fElements->begin(), fElements->end(), select,
      +                             [](const G4GenericPolycone::surface_element& x, G4double val)
      +                             -> G4bool { return x.area < val; });
      +
      +  // Generate random point
      +  G4double r = 0, z = 0, phi = 0;
      +  G4double u = G4QuickRand();
      +  G4double v = G4QuickRand();
      +  G4int i0 = (*it).i0;
      +  G4int i1 = (*it).i1;
      +  G4int i2 = (*it).i2;
      +  if (i2 < 0) // lateral surface
      +  {
      +    G4PolyconeSideRZ p0 = GetCorner(i0);
      +    G4PolyconeSideRZ p1 = GetCorner(i1);
      +    if (p1.r < p0.r)
      +    {
      +      p0 = GetCorner(i1);
      +      p1 = GetCorner(i0);
      +    }
      +    if (p1.r - p0.r < kCarTolerance) // cylindrical surface
      +    {
      +      r = (p1.r - p0.r)*u + p0.r;
      +      z = (p1.z - p0.z)*u + p0.z;
      +    }
      +    else // conical surface
      +    {
      +      r = std::sqrt(p1.r*p1.r*u + p0.r*p0.r*(1. - u));
      +      z = p0.z + (p1.z - p0.z)*(r - p0.r)/(p1.r - p0.r);
      +    }
      +    phi = (GetEndPhi() - GetStartPhi())*v + GetStartPhi();
      +  }
      +  else // phi cut
      +  {
      +    G4int nrz = GetNumRZCorner();
      +    phi = (i0 < nrz) ? GetStartPhi() : GetEndPhi();
      +    if (i0 >= nrz) { i0 -= nrz; }
      +    G4PolyconeSideRZ p0 = GetCorner(i0);
      +    G4PolyconeSideRZ p1 = GetCorner(i1);
      +    G4PolyconeSideRZ p2 = GetCorner(i2);
      +    if (u + v > 1.) { u = 1. - u; v = 1. - v; }
      +    r = (p1.r - p0.r)*u +  (p2.r - p0.r)*v + p0.r;
      +    z = (p1.z - p0.z)*u +  (p2.z - p0.z)*v + p0.z;
      +  }
      +  return G4ThreeVector(r*std::cos(phi), r*std::sin(phi), z);
      +}
      +
      +//////////////////////////////////////////////////////////////////////////
      +//
      +// CreatePolyhedron
      +
       G4Polyhedron* G4GenericPolycone::CreatePolyhedron() const
      -{ 
      +{
           // The following code prepares for:
           // HepPolyhedron::createPolyhedron(int Nnodes, int Nfaces,
           //                                  const double xyz[][3],
      @@ -635,8 +838,8 @@ G4Polyhedron* G4GenericPolycone::CreatePolyhedron() const
            * array starts from 1 (like in fortran). The indexes can be positive
            * or negative. Negative sign means that the corresponding edge is
            * invisible. The normal of the face should be directed to exterior
      -     * of the polyhedron. 
      -     * 
      +     * of the polyhedron.
      +     *
            * @param  Nnodes number of nodes
            * @param  Nfaces number of faces
            * @param  xyz    nodes
      diff --git a/source/geometry/solids/specific/src/G4Polycone.cc b/source/geometry/solids/specific/src/G4Polycone.cc
      index 1e06fdfbf6..caae44192b 100644
      --- a/source/geometry/solids/specific/src/G4Polycone.cc
      +++ b/source/geometry/solids/specific/src/G4Polycone.cc
      @@ -40,17 +40,22 @@
       #include "G4AffineTransform.hh"
       #include "G4BoundingEnvelope.hh"
       
      -#include "Randomize.hh"
      +#include "G4QuickRand.hh"
       
       #include "G4EnclosingCylinder.hh"
       #include "G4ReduciblePolygon.hh"
       #include "G4VPVParameterisation.hh"
       
      +namespace
      +{
      +  G4Mutex surface_elementsMutex = G4MUTEX_INITIALIZER;
      +}
      +
       using namespace CLHEP;
       
       // Constructor (GEANT3 style parameters)
      -//  
      -G4Polycone::G4Polycone( const G4String& name, 
      +//
      +G4Polycone::G4Polycone( const G4String& name,
                                     G4double phiStart,
                                     G4double phiTotal,
                                     G4int numZPlanes,
      @@ -63,7 +68,7 @@ G4Polycone::G4Polycone( const G4String& name,
         // Some historical ugliness
         //
         original_parameters = new G4PolyconeHistorical();
      -  
      +
         original_parameters->Start_angle = phiStart;
         original_parameters->Opening_angle = phiTotal;
         original_parameters->Num_z_planes = numZPlanes;
      @@ -72,7 +77,7 @@ G4Polycone::G4Polycone( const G4String& name,
         original_parameters->Rmax = new G4double[numZPlanes];
       
         for (G4int i=0; irOuter[i])
           {
             DumpInfo();
      @@ -102,7 +107,7 @@ G4Polycone::G4Polycone( const G4String& name,
               G4Exception("G4Polycone::G4Polycone()", "GeomSolids0002",
                           FatalErrorInArgument, message);
             }
      -    } 
      +    }
           original_parameters->Z_values[i] = zPlane[i];
           original_parameters->Rmin[i] = rInner[i];
           original_parameters->Rmax[i] = rOuter[i];
      @@ -113,33 +118,33 @@ G4Polycone::G4Polycone( const G4String& name,
         //
         G4ReduciblePolygon *rz =
           new G4ReduciblePolygon( rInner, rOuter, zPlane, numZPlanes );
      -  
      +
         //
         // Do the real work
         //
         Create( phiStart, phiTotal, rz );
      -  
      +
         delete rz;
       }
       
       // Constructor (generic parameters)
       //
      -G4Polycone::G4Polycone( const G4String& name, 
      +G4Polycone::G4Polycone( const G4String& name,
                                     G4double phiStart,
                                     G4double phiTotal,
                                     G4int    numRZ,
                               const G4double r[],
                               const G4double z[]   )
         : G4VCSGfaceted( name )
      -{ 
      -  
      +{
      +
         G4ReduciblePolygon* rz = new G4ReduciblePolygon( r, z, numRZ );
      -  
      +
         Create( phiStart, phiTotal, rz );
      -  
      +
         // Set original_parameters struct for consistency
         //
      -  
      +
         G4bool convertible = SetOriginalParameters(rz);
       
         if(!convertible)
      @@ -179,7 +184,7 @@ void G4Polycone::Create( G4double phiStart,
           G4Exception("G4Polycone::Create()", "GeomSolids0002",
                       FatalErrorInArgument, message);
         }
      -    
      +
         G4double rzArea = rz->Area();
         if (rzArea < -kCarTolerance)
         {
      @@ -193,9 +198,9 @@ void G4Polycone::Create( G4double phiStart,
           G4Exception("G4Polycone::Create()", "GeomSolids0002",
                       FatalErrorInArgument, message);
         }
      -    
      +
         if ( (!rz->RemoveDuplicateVertices( kCarTolerance ))
      -    || (!rz->RemoveRedundantVertices( kCarTolerance )) ) 
      +    || (!rz->RemoveRedundantVertices( kCarTolerance )) )
         {
           std::ostringstream message;
           message << "Illegal input parameters - " << GetName() << G4endl
      @@ -204,7 +209,7 @@ void G4Polycone::Create( G4double phiStart,
                       FatalErrorInArgument, message);
         }
       
      -  if (rz->CrossesItself(1/kInfinity)) 
      +  if (rz->CrossesItself(1/kInfinity))
         {
           std::ostringstream message;
           message << "Illegal input parameters - " << GetName() << G4endl
      @@ -228,21 +233,21 @@ void G4Polycone::Create( G4double phiStart,
         else
         {
           phiIsOpen = true;
      -    
      +
           //
           // Convert phi into our convention
           //
           startPhi = phiStart;
           while( startPhi < 0. )    // Loop checking, 13.08.2015, G.Cosmo
             startPhi += twopi;
      -    
      +
           endPhi = phiStart+phiTotal;
           while( endPhi < startPhi )    // Loop checking, 13.08.2015, G.Cosmo
             endPhi += twopi;
         }
      -  
      +
         //
      -  // Allocate corner array. 
      +  // Allocate corner array.
         //
         corners = new G4PolyconeSideRZ[numCorner];
       
      @@ -250,7 +255,7 @@ void G4Polycone::Create( G4double phiStart,
         // Copy corners
         //
         G4ReduciblePolygonIterator iterRZ(rz);
      -  
      +
         G4PolyconeSideRZ *next = corners;
         iterRZ.Begin();
         do    // Loop checking, 13.08.2015, G.Cosmo
      @@ -258,13 +263,13 @@ void G4Polycone::Create( G4double phiStart,
           next->r = iterRZ.GetA();
           next->z = iterRZ.GetB();
         } while( ++next, iterRZ.Next() );
      -  
      +
         //
         // Allocate face pointer array
         //
         numFace = phiIsOpen ? numCorner+2 : numCorner;
         faces = new G4VCSGface*[numFace];
      -  
      +
         //
         // Construct conical faces
         //
      @@ -280,9 +285,9 @@ void G4Polycone::Create( G4double phiStart,
           if (next >= corners+numCorner) next = corners;
           nextNext = next+1;
           if (nextNext >= corners+numCorner) nextNext = corners;
      -    
      +
           if (corner->r < 1/kInfinity && next->r < 1/kInfinity) continue;
      -    
      +
           //
           // We must decide here if we can dare declare one of our faces
           // as having a "valid" normal (i.e. allBehind = true). This
      @@ -303,11 +308,11 @@ void G4Polycone::Create( G4double phiStart,
             allBehind = !rz->BisectedBy( corner->r, corner->z,
                        next->r, next->z, kCarTolerance );
           }
      -    
      +
           *face++ = new G4PolyconeSide( prev, corner, next, nextNext,
                       startPhi, endPhi-startPhi, phiIsOpen, allBehind );
         } while( prev=corner, corner=next, corner > corners );
      -  
      +
         if (phiIsOpen)
         {
           //
      @@ -316,12 +321,12 @@ void G4Polycone::Create( G4double phiStart,
           *face++ = new G4PolyPhiFace( rz, startPhi, 0, endPhi  );
           *face++ = new G4PolyPhiFace( rz, endPhi,   0, startPhi );
         }
      -  
      +
         //
         // We might have dropped a face or two: recalculate numFace
         //
         numFace = face-faces;
      -  
      +
         //
         // Make enclosingCylinder
         //
      @@ -346,6 +351,13 @@ G4Polycone::~G4Polycone()
         delete [] corners;
         delete original_parameters;
         delete enclosingCylinder;
      +  delete fElements;
      +  delete fpPolyhedron;
      +  corners = nullptr;
      +  original_parameters = nullptr;
      +  enclosingCylinder = nullptr;
      +  fElements = nullptr;
      +  fpPolyhedron = nullptr;
       }
       
       // Copy constructor
      @@ -361,16 +373,16 @@ G4Polycone::G4Polycone( const G4Polycone& source )
       G4Polycone &G4Polycone::operator=( const G4Polycone& source )
       {
         if (this == &source) return *this;
      -  
      +
         G4VCSGfaceted::operator=( source );
      -  
      +
         delete [] corners;
         if (original_parameters) delete original_parameters;
      -  
      +
         delete enclosingCylinder;
      -  
      +
         CopyStuff( source );
      -  
      +
         return *this;
       }
       
      @@ -383,21 +395,21 @@ void G4Polycone::CopyStuff( const G4Polycone& source )
         //
         startPhi  = source.startPhi;
         endPhi    = source.endPhi;
      -  phiIsOpen  = source.phiIsOpen;
      -  numCorner  = source.numCorner;
      +  phiIsOpen = source.phiIsOpen;
      +  numCorner = source.numCorner;
       
         //
         // The corner array
         //
         corners = new G4PolyconeSideRZ[numCorner];
      -  
      +
         G4PolyconeSideRZ* corn = corners,
                         * sourceCorn = source.corners;
         do    // Loop checking, 13.08.2015, G.Cosmo
         {
           *corn = *sourceCorn;
         } while( ++sourceCorn, ++corn < corners+numCorner );
      -  
      +
         //
         // Original parameters
         //
      @@ -406,13 +418,23 @@ void G4Polycone::CopyStuff( const G4Polycone& source )
           original_parameters =
             new G4PolyconeHistorical( *source.original_parameters );
         }
      -  
      +
         //
         // Enclosing cylinder
         //
         enclosingCylinder = new G4EnclosingCylinder( *source.enclosingCylinder );
       
      +  //
      +  // Surface elements
      +  //
      +  delete fElements;
      +  fElements = nullptr;
      +
      +  //
      +  // Polyhedron
      +  //
         fRebuildPolyhedron = false;
      +  delete fpPolyhedron;
         fpPolyhedron = nullptr;
       }
       
      @@ -426,6 +448,10 @@ G4bool G4Polycone::Reset()
         G4VCSGfaceted::DeleteStuff();
         delete [] corners;
         delete enclosingCylinder;
      +  delete fElements;
      +  corners = nullptr;
      +  fElements = nullptr;
      +  enclosingCylinder = nullptr;
       
         //
         // Rebuild polycone
      @@ -473,7 +499,7 @@ G4double G4Polycone::DistanceToIn( const G4ThreeVector& p,
         //
         if (enclosingCylinder->ShouldMiss(p,v))
           return kInfinity;
      -  
      +
         //
         // Long answer
         //
      @@ -701,7 +727,7 @@ std::ostream& G4Polycone::StreamInfo( std::ostream& os ) const
            << "    starting phi angle : " << startPhi/degree << " degrees \n"
            << "    ending phi angle   : " << endPhi/degree << " degrees \n";
         G4int i=0;
      -  
      +
           G4int numPlanes = original_parameters->Num_z_planes;
           os << "    number of Z planes: " << numPlanes << "\n"
              << "              Z values: \n";
      @@ -722,7 +748,7 @@ std::ostream& G4Polycone::StreamInfo( std::ostream& os ) const
             os << "              Z plane " << i << ": "
                << original_parameters->Rmax[i] << "\n";
           }
      -  
      +
         os << "    number of RZ points: " << numCorner << "\n"
            << "              RZ values (corners): \n";
            for (i=0; i= 0.) && (chose < Aone) )
      -  {
      -    if(fRmax1 != fRmax2)
      -    {
      -      zRand = G4RandFlat::shoot(-1.*afDz,afDz); 
      -      point = G4ThreeVector (rone*cosu*(qone-zRand),
      -                             rone*sinu*(qone-zRand), zRand);
      -    }
      -    else
      -    {
      -      point = G4ThreeVector(fRmax1*cosu, fRmax1*sinu,
      -                            G4RandFlat::shoot(-1.*afDz,afDz));
      -     
      -    }
      -  }
      -  else if(chose >= Aone && chose < Aone + Atwo)
      -  {
      -    if(fRmin1 != fRmin2)
      -    { 
      -      zRand = G4RandFlat::shoot(-1.*afDz,afDz); 
      -      point = G4ThreeVector (rtwo*cosu*(qtwo-zRand),
      -                             rtwo*sinu*(qtwo-zRand), zRand);
      -      
      -    }
      -    else
      -    {
      -      point = G4ThreeVector(fRmin1*cosu, fRmin1*sinu,
      -                            G4RandFlat::shoot(-1.*afDz,afDz));
      -    }
      -  }
      -  else if( (chose >= Aone + Atwo + Afive) && (chose < Aone + Atwo + 2.*Afive) )
      -  {
      -    zRand  = G4RandFlat::shoot(-1.*afDz,afDz);
      -    rmin   = fRmin2-((zRand-fDz)/(2.*fDz))*(fRmin1-fRmin2);
      -    rmax   = fRmax2-((zRand-fDz)/(2.*fDz))*(fRmax1-fRmax2);
      -    rRand1 = std::sqrt(G4RandFlat::shoot()*(sqr(rmax)-sqr(rmin))+sqr(rmin));
      -    point  = G4ThreeVector (rRand1*std::cos(startPhi),
      -                            rRand1*std::sin(startPhi), zRand);
      -  }
      -  else
      -  { 
      -    zRand  = G4RandFlat::shoot(-1.*afDz,afDz); 
      -    rmin   = fRmin2-((zRand-fDz)/(2.*fDz))*(fRmin1-fRmin2);
      -    rmax   = fRmax2-((zRand-fDz)/(2.*fDz))*(fRmax1-fRmax2);
      -    rRand1 = std::sqrt(G4RandFlat::shoot()*(sqr(rmax)-sqr(rmin))+sqr(rmin));
      -    point  = G4ThreeVector (rRand1*std::cos(endPhi),
      -                            rRand1*std::sin(endPhi), zRand);
      -   
      -  }
      -  
      -  return point+offset;
      -}
      -
      -// GetPointOnTubs
      -//
      -// Auxiliary method for GetPoint On Surface
      -//
      -G4ThreeVector G4Polycone::GetPointOnTubs(G4double fRMin, G4double fRMax,
      -                                         G4double zOne,  G4double zTwo,
      -                                         G4double& totArea) const
      -{ 
      -  G4double xRand,yRand,zRand,phi,cosphi,sinphi,chose,
      -           aOne,aTwo,aFou,rRand,fDz,fSPhi,fDPhi;
      -  fDz = std::fabs(0.5*(zTwo-zOne));
      -  fSPhi = startPhi;
      -  fDPhi = endPhi-startPhi;
      -  
      -  aOne = 2.*fDz*fDPhi*fRMax;
      -  aTwo = 2.*fDz*fDPhi*fRMin;
      -  aFou = 2.*fDz*(fRMax-fRMin);
      -  totArea = aOne+aTwo+2.*aFou;
      -  phi    = G4RandFlat::shoot(startPhi,endPhi);
      -  cosphi = std::cos(phi);
      -  sinphi = std::sin(phi);
      -  rRand  = fRMin + (fRMax-fRMin)*std::sqrt(G4RandFlat::shoot());
      - 
      -  if(startPhi == 0. && endPhi == twopi) 
      -    aFou = 0.;
      -  
      -  chose  = G4RandFlat::shoot(0.,aOne+aTwo+2.*aFou);
      -  if( (chose >= 0.) && (chose < aOne) )
      -  {
      -    xRand = fRMax*cosphi;
      -    yRand = fRMax*sinphi;
      -    zRand = G4RandFlat::shoot(-1.*fDz,fDz);
      -    return G4ThreeVector(xRand, yRand, zRand+0.5*(zTwo+zOne));
      -  }
      -  else if( (chose >= aOne) && (chose < aOne + aTwo) )
      -  {
      -    xRand = fRMin*cosphi;
      -    yRand = fRMin*sinphi;
      -    zRand = G4RandFlat::shoot(-1.*fDz,fDz);
      -    return G4ThreeVector(xRand, yRand, zRand+0.5*(zTwo+zOne));
      -  }
      -  else if( (chose >= aOne+aTwo) && (chose A1) { rRand1=rRand2; }
      -  
      -  xRand = rRand1*cosphi;
      -  yRand = rRand1*sinphi;
      -
      -  return G4ThreeVector(xRand, yRand, zOne);
      +  return fCubicVolume;
       }
       
      -// GetPointOnCut
      +//////////////////////////////////////////////////////////////////////////
       //
      -// Auxiliary method for Get Point On Surface
      -//
      -G4ThreeVector G4Polycone::GetPointOnCut(G4double fRMin1, G4double fRMax1,
      -                                        G4double fRMin2, G4double fRMax2,
      -                                        G4double zOne,  G4double zTwo,
      -                                        G4double& totArea) const
      -{   if(zOne==zTwo)
      +// Return surface area
      +
      +G4double G4Polycone::GetSurfaceArea()
      +{
      +  if (fSurfaceArea == 0.)
      +  {
      +    // phi cut area
      +    G4int nrz = GetNumRZCorner();
      +    G4double scut = 0.;
      +    if (IsOpen())
           {
      -      return GetPointOnRing(fRMin1, fRMax1,fRMin2,fRMax2,zOne);
      +      G4PolyconeSideRZ a = GetCorner(nrz - 1);
      +      for (G4int i=0; i;
      +  G4double total = 0.;
      +  G4int nrz = GetNumRZCorner();
      +
      +  // set lateral surface elements
      +  G4double dphi = GetEndPhi() - GetStartPhi();
      +  G4int ia = nrz - 1;
      +  for (G4int ib=0; ibpush_back(selem);
      +  }
      +
      +  // set elements for phi cuts
      +  if (IsOpen())
      +  {
      +    G4TwoVectorList contourRZ;
      +    std::vector triangles;
      +    for (G4int i=0; ipush_back(selem); // start phi
      +      total += stria;
      +      selem.area = total;
      +      selem.i0 += nrz;
      +      fElements->push_back(selem); // end phi
      +    }
      +  }
      +}
      +
      +//////////////////////////////////////////////////////////////////////////
      +//
      +// Generate random point on surface
      +
       G4ThreeVector G4Polycone::GetPointOnSurface() const
       {
      -    G4double Area=0.,totArea=0.,Achose1=0.,Achose2=0.,phi,cosphi,sinphi,rRand;
      -    G4int i=0;
      -    G4int numPlanes = original_parameters->Num_z_planes;
      -  
      -    phi = G4RandFlat::shoot(startPhi,endPhi);
      -    cosphi = std::cos(phi);
      -    sinphi = std::sin(phi);
      +  // Set surface elements
      +  if (!fElements)
      +  {
      +    G4AutoLock l(&surface_elementsMutex);
      +    SetSurfaceElements();
      +    l.unlock();
      +  }
       
      -    rRand = original_parameters->Rmin[0] +
      -      ( (original_parameters->Rmax[0]-original_parameters->Rmin[0])
      -        * std::sqrt(G4RandFlat::shoot()) );
      +  // Select surface element
      +  G4Polycone::surface_element selem;
      +  selem = fElements->back();
      +  G4double select = selem.area*G4QuickRand();
      +  auto it = std::lower_bound(fElements->begin(), fElements->end(), select,
      +                             [](const G4Polycone::surface_element& x, G4double val)
      +                             -> G4bool { return x.area < val; });
       
      -    std::vector areas;       // (numPlanes+1);
      -    std::vector points; // (numPlanes-1);
      -  
      -    areas.push_back(pi*(sqr(original_parameters->Rmax[0])
      -                       -sqr(original_parameters->Rmin[0])));
      -
      -    for(i=0; iRmin[i]+original_parameters->Rmin[i+1])
      -           * std::sqrt(sqr(original_parameters->Rmin[i]
      -                      -original_parameters->Rmin[i+1])+
      -                       sqr(original_parameters->Z_values[i+1]
      -                      -original_parameters->Z_values[i]));
      -
      -      Area += (original_parameters->Rmax[i]+original_parameters->Rmax[i+1])
      -            * std::sqrt(sqr(original_parameters->Rmax[i]
      -                       -original_parameters->Rmax[i+1])+
      -                        sqr(original_parameters->Z_values[i+1]
      -                       -original_parameters->Z_values[i]));
      -
      -      Area *= 0.5*(endPhi-startPhi);
      -    
      -      if(startPhi==0.&& endPhi == twopi)
      -      {
      -        Area += std::fabs(original_parameters->Z_values[i+1]
      -                         -original_parameters->Z_values[i])*
      -                         (original_parameters->Rmax[i]
      -                         +original_parameters->Rmax[i+1]
      -                         -original_parameters->Rmin[i]
      -                         -original_parameters->Rmin[i+1]);
      -      }
      -      areas.push_back(Area);
      -      totArea += Area;
      +      p0 = GetCorner(i1);
      +      p1 = GetCorner(i0);
           }
      -  
      -    areas.push_back(pi*(sqr(original_parameters->Rmax[numPlanes-1])-
      -                        sqr(original_parameters->Rmin[numPlanes-1])));
      -  
      -    totArea += (areas[0]+areas[numPlanes]);
      -    G4double chose = G4RandFlat::shoot(0.,totArea);
      -
      -    if( (chose>=0.) && (choseZ_values[0]);
      +      r = (p1.r - p0.r)*u + p0.r;
      +      z = (p1.z - p0.z)*u + p0.z;
           }
      -  
      -    for (i=0; i=Achose1 && choseRmin[i],
      -                             original_parameters->Rmax[i],
      -                             original_parameters->Rmin[i+1],
      -                             original_parameters->Rmax[i+1],
      -                             original_parameters->Z_values[i],
      -                             original_parameters->Z_values[i+1], Area);
      -      }
      +      r = std::sqrt(p1.r*p1.r*u + p0.r*p0.r*(1. - u));
      +      z = p0.z + (p1.z - p0.z)*(r - p0.r)/(p1.r - p0.r);
           }
      -
      -    rRand = original_parameters->Rmin[numPlanes-1] +
      -      ( (original_parameters->Rmax[numPlanes-1]-original_parameters->Rmin[numPlanes-1])
      -        * std::sqrt(G4RandFlat::shoot()) );
      -
      -    return G4ThreeVector(rRand*cosphi,rRand*sinphi,
      -                         original_parameters->Z_values[numPlanes-1]);  
      - 
      +    phi = (GetEndPhi() - GetStartPhi())*v + GetStartPhi();
      +  }
      +  else // phi cut
      +  {
      +    G4int nrz = GetNumRZCorner();
      +    phi = (i0 < nrz) ? GetStartPhi() : GetEndPhi();
      +    if (i0 >= nrz) { i0 -= nrz; }
      +    G4PolyconeSideRZ p0 = GetCorner(i0);
      +    G4PolyconeSideRZ p1 = GetCorner(i1);
      +    G4PolyconeSideRZ p2 = GetCorner(i2);
      +    if (u + v > 1.) { u = 1. - u; v = 1. - v; }
      +    r = (p1.r - p0.r)*u +  (p2.r - p0.r)*v + p0.r;
      +    z = (p1.z - p0.z)*u +  (p2.z - p0.z)*v + p0.z;
      +  }
      +  return G4ThreeVector(r*std::cos(phi), r*std::sin(phi), z);
       }
       
      -// CreatePolyhedron
      +//////////////////////////////////////////////////////////////////////////
       //
      +// CreatePolyhedron
      +
       G4Polyhedron* G4Polycone::CreatePolyhedron() const
      -{ 
      +{
         //
         // This has to be fixed in visualization. Fake it for the moment.
      -  // 
      -  
      +  //
      +
           return new G4PolyhedronPcon( original_parameters->Start_angle,
                                        original_parameters->Opening_angle,
                                        original_parameters->Num_z_planes,
      @@ -1053,12 +973,12 @@ G4Polyhedron* G4Polycone::CreatePolyhedron() const
       //
       G4bool  G4Polycone::SetOriginalParameters(G4ReduciblePolygon* rz)
       {
      -  G4int numPlanes = numCorner;  
      +  G4int numPlanes = numCorner;
         G4bool isConvertible = true;
         G4double Zmax=rz->Bmax();
         rz->StartWithZMin();
       
      -  // Prepare vectors for storage 
      +  // Prepare vectors for storage
         //
         std::vector Z;
         std::vector Rmin;
      @@ -1074,24 +994,24 @@ G4bool  G4Polycone::SetOriginalParameters(G4ReduciblePolygon* rz)
         G4double Zprev=Z[0];
         if (Zprev == corners[1].z)
         {
      -    Rmin.push_back(corners[0].r);  
      -    Rmax.push_back (corners[1].r);icurr=1; 
      +    Rmin.push_back(corners[0].r);
      +    Rmax.push_back (corners[1].r);icurr=1;
         }
         else if (Zprev == corners[numPlanes-1].z)
         {
      -    Rmin.push_back(corners[numPlanes-1].r);  
      +    Rmin.push_back(corners[numPlanes-1].r);
           Rmax.push_back (corners[0].r);
      -    icurl=numPlanes-1;  
      +    icurl=numPlanes-1;
         }
         else
         {
      -    Rmin.push_back(corners[0].r);  
      +    Rmin.push_back(corners[0].r);
           Rmax.push_back (corners[0].r);
         }
       
         // next planes until last
         //
      -  G4int inextr=0, inextl=0; 
      +  G4int inextr=0, inextl=0;
         for (G4int i=0; i < numPlanes-2; ++i)
         {
           inextr=1+icurr;
      @@ -1103,7 +1023,7 @@ G4bool  G4Polycone::SetOriginalParameters(G4ReduciblePolygon* rz)
           G4double Zright = corners[inextr].z;
           if(Zright > Zleft)  // Next plane will be Zleft
           {
      -      Z.push_back(Zleft);  
      +      Z.push_back(Zleft);
             countPlanes++;
             G4double difZr=corners[inextr].z - corners[icurr].z;
             G4double difZl=corners[inextl].z - corners[icurl].z;
      @@ -1119,7 +1039,7 @@ G4bool  G4Polycone::SetOriginalParameters(G4ReduciblePolygon* rz)
               {
                 Rmin.push_back(corners[inextl].r);
                 Rmax.push_back(corners[icurr].r + (Zleft-corners[icurr].z)/difZr
      -                                *(corners[inextr].r - corners[icurr].r)); 
      +                                *(corners[inextr].r - corners[icurr].r));
               }
             }
             else if (difZl >= kCarTolerance)
      @@ -1144,18 +1064,18 @@ G4bool  G4Polycone::SetOriginalParameters(G4ReduciblePolygon* rz)
           }
           else if(std::fabs(Zright-Zleft)Z_values = new G4double[countPlanes];
          original_parameters->Rmin = new G4double[countPlanes];
          original_parameters->Rmax = new G4double[countPlanes];
      -  
      +
          for(G4int j=0; j < countPlanes; ++j)
          {
            original_parameters->Z_values[j] = Z[j];
      @@ -1225,7 +1145,7 @@ G4bool  G4Polycone::SetOriginalParameters(G4ReduciblePolygon* rz)
          original_parameters->Start_angle = startPhi;
          original_parameters->Opening_angle = endPhi-startPhi;
          original_parameters->Num_z_planes = countPlanes;
      - 
      +
         }
         else  // Set parameters(r,z) with Rmin==0 as convention
         {
      @@ -1240,7 +1160,7 @@ G4bool  G4Polycone::SetOriginalParameters(G4ReduciblePolygon* rz)
           original_parameters->Z_values = new G4double[numPlanes];
           original_parameters->Rmin = new G4double[numPlanes];
           original_parameters->Rmax = new G4double[numPlanes];
      -  
      +
           for(G4int j=0; j < numPlanes; ++j)
           {
             original_parameters->Z_values[j] = corners[j].z;
      diff --git a/source/geometry/solids/specific/src/G4Polyhedra.cc b/source/geometry/solids/specific/src/G4Polyhedra.cc
      index e84640e0a9..c01b39322f 100644
      --- a/source/geometry/solids/specific/src/G4Polyhedra.cc
      +++ b/source/geometry/solids/specific/src/G4Polyhedra.cc
      @@ -51,24 +51,27 @@
       #include "G4AffineTransform.hh"
       #include "G4BoundingEnvelope.hh"
       
      -#include "Randomize.hh"
      +#include "G4QuickRand.hh"
       
       #include "G4EnclosingCylinder.hh"
       #include "G4ReduciblePolygon.hh"
       #include "G4VPVParameterisation.hh"
       
      -#include 
      +namespace
      +{
      +  G4Mutex surface_elementsMutex = G4MUTEX_INITIALIZER;
      +}
       
       using namespace CLHEP;
       
       // Constructor (GEANT3 style parameters)
       //
       // GEANT3 PGON radii are specified in the distance to the norm of each face.
      -//  
      -G4Polyhedra::G4Polyhedra( const G4String& name, 
      +//
      +G4Polyhedra::G4Polyhedra( const G4String& name,
                                       G4double phiStart,
                                       G4double thePhiTotal,
      -                                G4int theNumSide,  
      +                                G4int theNumSide,
                                       G4int numZPlanes,
                                 const G4double zPlane[],
                                 const G4double rInner[],
      @@ -96,7 +99,7 @@ G4Polyhedra::G4Polyhedra( const G4String& name,
         // Some historical stuff
         //
         original_parameters = new G4PolyhedraHistorical;
      -  
      +
         original_parameters->numSide = theNumSide;
         original_parameters->Start_angle = phiStart;
         original_parameters->Opening_angle = phiTotal;
      @@ -129,34 +132,34 @@ G4Polyhedra::G4Polyhedra( const G4String& name,
           original_parameters->Rmin[i] = rInner[i]/convertRad;
           original_parameters->Rmax[i] = rOuter[i]/convertRad;
         }
      -  
      -  
      +
      +
         //
         // Build RZ polygon using special PCON/PGON GEANT3 constructor
         //
         G4ReduciblePolygon* rz =
           new G4ReduciblePolygon( rInner, rOuter, zPlane, numZPlanes );
         rz->ScaleA( 1/convertRad );
      -  
      +
         //
         // Do the real work
         //
         Create( phiStart, phiTotal, theNumSide, rz );
      -  
      +
         delete rz;
       }
       
       // Constructor (generic parameters)
       //
      -G4Polyhedra::G4Polyhedra( const G4String& name, 
      +G4Polyhedra::G4Polyhedra( const G4String& name,
                                       G4double phiStart,
                                       G4double phiTotal,
      -                                G4int    theNumSide,  
      +                                G4int    theNumSide,
                                       G4int    numRZ,
                                 const G4double r[],
                                 const G4double z[]   )
         : G4VCSGfaceted( name ), genericPgon(true)
      -{ 
      +{
         if (theNumSide <= 0)
         {
           std::ostringstream message;
      @@ -167,13 +170,13 @@ G4Polyhedra::G4Polyhedra( const G4String& name,
         }
       
         G4ReduciblePolygon* rz = new G4ReduciblePolygon( r, z, numRZ );
      -  
      +
         Create( phiStart, phiTotal, theNumSide, rz );
      -  
      +
         // Set original_parameters struct for consistency
         //
         SetOriginalParameters(rz);
      -   
      +
         delete rz;
       }
       
      @@ -184,7 +187,7 @@ G4Polyhedra::G4Polyhedra( const G4String& name,
       //
       void G4Polyhedra::Create( G4double phiStart,
                                 G4double phiTotal,
      -                          G4int    theNumSide,  
      +                          G4int    theNumSide,
                                 G4ReduciblePolygon* rz  )
       {
         //
      @@ -212,9 +215,9 @@ void G4Polyhedra::Create( G4double phiStart,
           G4Exception("G4Polyhedra::Create()", "GeomSolids0002",
                       FatalErrorInArgument, message);
         }
      -    
      +
         if ( (!rz->RemoveDuplicateVertices( kCarTolerance ))
      -    || (!rz->RemoveRedundantVertices( kCarTolerance )) ) 
      +    || (!rz->RemoveRedundantVertices( kCarTolerance )) )
         {
           std::ostringstream message;
           message << "Illegal input parameters - " << GetName() << G4endl
      @@ -223,7 +226,7 @@ void G4Polyhedra::Create( G4double phiStart,
                       FatalErrorInArgument, message);
         }
       
      -  if (rz->CrossesItself( 1/kInfinity )) 
      +  if (rz->CrossesItself( 1/kInfinity ))
         {
           std::ostringstream message;
           message << "Illegal input parameters - " << GetName() << G4endl
      @@ -250,7 +253,7 @@ void G4Polyhedra::Create( G4double phiStart,
         else
         {
           phiIsOpen = true;
      -    
      +
           //
           // Convert phi into our convention
           //
      @@ -258,14 +261,14 @@ void G4Polyhedra::Create( G4double phiStart,
           while( endPhi < startPhi )    // Loop checking, 13.08.2015, G.Cosmo
             endPhi += twopi;
         }
      -  
      +
         //
         // Save number sides
         //
         numSide = theNumSide;
      -  
      +
         //
      -  // Allocate corner array. 
      +  // Allocate corner array.
         //
         corners = new G4PolyhedraSideRZ[numCorner];
       
      @@ -273,7 +276,7 @@ void G4Polyhedra::Create( G4double phiStart,
         // Copy corners
         //
         G4ReduciblePolygonIterator iterRZ(rz);
      -  
      +
         G4PolyhedraSideRZ *next = corners;
         iterRZ.Begin();
         do    // Loop checking, 13.08.2015, G.Cosmo
      @@ -281,13 +284,13 @@ void G4Polyhedra::Create( G4double phiStart,
           next->r = iterRZ.GetA();
           next->z = iterRZ.GetB();
         } while( ++next, iterRZ.Next() );
      -  
      +
         //
         // Allocate face pointer array
         //
         numFace = phiIsOpen ? numCorner+2 : numCorner;
         faces = new G4VCSGface*[numFace];
      -  
      +
         //
         // Construct side faces
         //
      @@ -306,7 +309,7 @@ void G4Polyhedra::Create( G4double phiStart,
           if (next >= corners+numCorner) next = corners;
           nextNext = next+1;
           if (nextNext >= corners+numCorner) nextNext = corners;
      -    
      +
           if (corner->r < 1/kInfinity && next->r < 1/kInfinity) continue;
       /*
           // We must decide here if we can dare declare one of our faces
      @@ -333,7 +336,7 @@ void G4Polyhedra::Create( G4double phiStart,
           *face++ = new G4PolyhedraSide( prev, corner, next, nextNext,
                        numSide, startPhi, endPhi-startPhi, phiIsOpen );
         } while( prev=corner, corner=next, corner > corners );
      -  
      +
         if (phiIsOpen)
         {
           //
      @@ -342,12 +345,12 @@ void G4Polyhedra::Create( G4double phiStart,
           *face++ = new G4PolyPhiFace( rz, startPhi, phiTotal/numSide, endPhi );
           *face++ = new G4PolyPhiFace( rz, endPhi,   phiTotal/numSide, startPhi );
         }
      -  
      +
         //
         // We might have dropped a face or two: recalculate numFace
         //
         numFace = face-faces;
      -  
      +
         //
         // Make enclosingCylinder
         //
      @@ -370,6 +373,13 @@ G4Polyhedra::~G4Polyhedra()
         delete [] corners;
         delete original_parameters;
         delete enclosingCylinder;
      +  delete fElements;
      +  delete fpPolyhedron;
      +  corners = nullptr;
      +  original_parameters = nullptr;
      +  enclosingCylinder = nullptr;
      +  fElements = nullptr;
      +  fpPolyhedron = nullptr;
       }
       
       // Copy constructor
      @@ -387,13 +397,13 @@ G4Polyhedra &G4Polyhedra::operator=( const G4Polyhedra& source )
         if (this == &source) return *this;
       
         G4VCSGfaceted::operator=( source );
      -  
      +
         delete [] corners;
         delete original_parameters;
         delete enclosingCylinder;
      -  
      +
         CopyStuff( source );
      -  
      +
         return *this;
       }
       
      @@ -415,14 +425,14 @@ void G4Polyhedra::CopyStuff( const G4Polyhedra& source )
         // The corner array
         //
         corners = new G4PolyhedraSideRZ[numCorner];
      -  
      +
         G4PolyhedraSideRZ* corn = corners,
                          * sourceCorn = source.corners;
         do    // Loop checking, 13.08.2015, G.Cosmo
         {
           *corn = *sourceCorn;
         } while( ++sourceCorn, ++corn < corners+numCorner );
      -  
      +
         //
         // Original parameters
         //
      @@ -431,13 +441,23 @@ void G4Polyhedra::CopyStuff( const G4Polyhedra& source )
           original_parameters =
             new G4PolyhedraHistorical( *source.original_parameters );
         }
      -  
      +
         //
         // Enclosing cylinder
         //
         enclosingCylinder = new G4EnclosingCylinder( *source.enclosingCylinder );
       
      +  //
      +  // Surface elements
      +  //
      +  delete fElements;
      +  fElements = nullptr;
      +
      +  //
      +  // Polyhedron
      +  //
         fRebuildPolyhedron = false;
      +  delete fpPolyhedron;
         fpPolyhedron = nullptr;
       }
       
      @@ -464,6 +484,10 @@ G4bool G4Polyhedra::Reset()
         G4VCSGfaceted::DeleteStuff();
         delete [] corners;
         delete enclosingCylinder;
      +  delete fElements;
      +  corners = nullptr;
      +  fElements = nullptr;
      +  enclosingCylinder = nullptr;
       
         //
         // Rebuild polyhedra
      @@ -512,7 +536,7 @@ G4double G4Polyhedra::DistanceToIn( const G4ThreeVector& p,
         //
         if (enclosingCylinder->ShouldMiss(p,v))
           return kInfinity;
      -  
      +
         //
         // Long answer
         //
      @@ -783,274 +807,235 @@ std::ostream& G4Polyhedra::StreamInfo( std::ostream& os ) const
         return os;
       }
       
      -// GetPointOnPlane
      +//////////////////////////////////////////////////////////////////////////
       //
      -// Auxiliary method for get point on surface
      -//
      -G4ThreeVector
      -G4Polyhedra::GetPointOnPlane(G4ThreeVector p0, G4ThreeVector p1, 
      -                             G4ThreeVector p2, G4ThreeVector p3) const
      +// Return volume
      +
      +G4double G4Polyhedra::GetCubicVolume()
       {
      -  G4double lambda1, lambda2, chose,aOne,aTwo;
      -  G4ThreeVector t, u, v, w, Area, normal;
      -  aOne = 1.;
      -  aTwo = 1.;
      -
      -  t = p1 - p0;
      -  u = p2 - p1;
      -  v = p3 - p2;
      -  w = p0 - p3;
      -
      -  chose = G4RandFlat::shoot(0.,aOne+aTwo);
      -  if( (chose>=0.) && (chose < aOne) )
      +  if (fCubicVolume == 0.)
         {
      -    lambda1 = G4RandFlat::shoot(0.,1.);
      -    lambda2 = G4RandFlat::shoot(0.,lambda1);
      -    return (p2+lambda1*v+lambda2*w);    
      +    G4double total = 0.;
      +    G4int nrz = GetNumRZCorner();
      +    G4PolyhedraSideRZ a = GetCorner(nrz - 1);
      +    for (G4int i=0; i;
      +  G4double total = 0.;
      +  G4int nrz = GetNumRZCorner();
      +
      +  // set lateral surface elements
      +  G4double dphi = (GetEndPhi() - GetStartPhi())/GetNumSide();
      +  G4double cosa = std::cos(dphi);
      +  G4double sina = std::sin(dphi);
      +  G4int ia = nrz - 1;
      +  for (G4int ib=0; ib 0.)
      +    {
      +      selem.i2 = -1;
      +      total += GetNumSide()*(G4GeomTools::TriangleAreaNormal(p1, p2, p3)).mag();
      +      selem.area = total;
      +      fElements->push_back(selem);
      +    }
      +    if (b.r > 0.)
      +    {
      +      selem.i2 = -2;
      +      total += GetNumSide()*(G4GeomTools::TriangleAreaNormal(p1, p3, p4)).mag();
      +      selem.area = total;
      +      fElements->push_back(selem);
      +    }
         }
       
      -  lambda1 = G4RandFlat::shoot(0.,1.);
      -  lambda2 = G4RandFlat::shoot(0.,lambda1);
      -  return (p0+lambda1*t+lambda2*u);
      +  // set elements for phi cuts
      +  if (IsOpen())
      +  {
      +    G4TwoVectorList contourRZ;
      +    std::vector triangles;
      +    for (G4int i=0; ipush_back(selem); // start phi
      +      total += stria;
      +      selem.area = total;
      +      selem.i0 += nrz;
      +      fElements->push_back(selem); // end phi
      +    }
      +  }
       }
       
      -// GetPointOnTriangle
      +//////////////////////////////////////////////////////////////////////////
       //
      -// Auxiliary method for get point on surface
      -//
      -G4ThreeVector G4Polyhedra::GetPointOnTriangle(G4ThreeVector p1,
      -                                              G4ThreeVector p2,
      -                                              G4ThreeVector p3) const
      -{
      -  G4double lambda1,lambda2;
      -  G4ThreeVector v=p3-p1, w=p1-p2;
      +// Generate random point on surface
       
      -  lambda1 = G4RandFlat::shoot(0.,1.);
      -  lambda2 = G4RandFlat::shoot(0.,lambda1);
      -
      -  return (p2 + lambda1*w + lambda2*v);
      -}
      -
      -// GetPointOnSurface
      -//
       G4ThreeVector G4Polyhedra::GetPointOnSurface() const
       {
      -  if( !genericPgon )  // Polyhedra by faces
      +  // Set surface elements
      +  if (!fElements)
         {
      -    G4int j, numPlanes = original_parameters->Num_z_planes, Flag=0;
      -    G4double chose, totArea=0., Achose1, Achose2,
      -             rad1, rad2, sinphi1, sinphi2, cosphi1, cosphi2; 
      -    G4double a, b, l2, rang, totalPhi, ksi,
      -             area, aTop=0., aBottom=0., zVal=0.;
      +    G4AutoLock l(&surface_elementsMutex);
      +    SetSurfaceElements();
      +    l.unlock();
      +  }
       
      -    G4ThreeVector p0, p1, p2, p3;
      -    std::vector aVector1;
      -    std::vector aVector2;
      -    std::vector aVector3;
      +  // Select surface element
      +  G4Polyhedra::surface_element selem;
      +  selem = fElements->back();
      +  G4double select = selem.area*G4QuickRand();
      +  auto it = std::lower_bound(fElements->begin(), fElements->end(), select,
      +                             [](const G4Polyhedra::surface_element& x, G4double val)
      +                             -> G4bool { return x.area < val; });
       
      -    totalPhi= (phiIsOpen) ? (endPhi-startPhi) : twopi;
      -    ksi = totalPhi/numSide;
      -    G4double cosksi = std::cos(ksi/2.);
      -
      -    // Below we generate the areas relevant to our solid
      -    //
      -    for(j=0; j 1.) { u = 1. - u; v = 1. - v; }
      +  G4int i0 = (*it).i0;
      +  G4int i1 = (*it).i1;
      +  G4int i2 = (*it).i2;
      +  if (i2 < 0) // lateral surface
      +  {
      +    // sample point
      +    G4int nside = GetNumSide();
      +    G4double dphi = (GetEndPhi() - GetStartPhi())/nside;
      +    G4double cosa = std::cos(dphi);
      +    G4double sina = std::sin(dphi);
      +    G4PolyhedraSideRZ a = GetCorner(i0);
      +    G4PolyhedraSideRZ b = GetCorner(i1);
      +    G4ThreeVector p0(a.r, 0, a.z);
      +    G4ThreeVector p1(b.r, 0, b.z);
      +    G4ThreeVector p2(b.r*cosa, b.r*sina, b.z);
      +    if (i2 == -1) p1.set(a.r*cosa, a.r*sina, a.z);
      +    p0 += (p1 - p0)*u + (p2 - p0)*v;
      +    // find selected side and rotate point
      +    G4double scurr = (*it).area;
      +    G4double sprev = (it == fElements->begin()) ? 0. : (*(--it)).area;
      +    G4int iside = nside*(select - sprev)/(scurr - sprev);
      +    if (iside == 0 && GetStartPhi() == 0.)
           {
      -      a = original_parameters->Rmax[j+1];
      -      b = original_parameters->Rmax[j];
      -      l2 = sqr(original_parameters->Z_values[j]
      -              -original_parameters->Z_values[j+1]) + sqr(b-a);
      -      area = std::sqrt(l2-sqr((a-b)*cosksi))*(a+b)*cosksi;
      -      aVector1.push_back(area);
      -    }
      -
      -    for(j=0; jRmin[j+1];//*cosksi;
      -      b = original_parameters->Rmin[j];//*cosksi;
      -      l2 = sqr(original_parameters->Z_values[j]
      -              -original_parameters->Z_values[j+1]) + sqr(b-a);
      -      area = std::sqrt(l2-sqr((a-b)*cosksi))*(a+b)*cosksi;
      -      aVector2.push_back(area);
      -    }
      -  
      -    for(j=0; jRmax[j]
      -                               -original_parameters->Rmin[j]
      -                               +original_parameters->Rmax[j+1]
      -                               -original_parameters->Rmin[j+1])
      -        *std::fabs(original_parameters->Z_values[j+1]
      -                  -original_parameters->Z_values[j]));
      -      }
      -      else { aVector3.push_back(0.); } 
      -    }
      -  
      -    for(j=0; jRmax[numPlanes-1] != 0.)
      -    {
      -      a = original_parameters->Rmax[numPlanes-1];
      -      b = original_parameters->Rmin[numPlanes-1];
      -      l2 = sqr(a-b);
      -      aTop = std::sqrt(l2-sqr((a-b)*cosksi))*(a+b)*cosksi; 
      -    }
      -
      -    if(original_parameters->Rmax[0] != 0.)
      -    {
      -      a = original_parameters->Rmax[0];
      -      b = original_parameters->Rmin[0];
      -      l2 = sqr(a-b);
      -      aBottom = std::sqrt(l2-sqr((a-b)*cosksi))*(a+b)*cosksi; 
      -    }
      -
      -    Achose1 = 0.;
      -    Achose2 = numSide*(aVector1[0]+aVector2[0])+2.*aVector3[0];
      -
      -    chose = G4RandFlat::shoot(0.,totArea+aTop+aBottom);
      -    if( (chose >= 0.) && (chose < aTop + aBottom) )
      -    {
      -      chose = G4RandFlat::shoot(startPhi,startPhi+totalPhi);
      -      rang = std::floor((chose-startPhi)/ksi-0.01);
      -      if(rang<0) { rang=0; }
      -      rang = std::fabs(rang);  
      -      sinphi1 = std::sin(startPhi+rang*ksi);
      -      sinphi2 = std::sin(startPhi+(rang+1)*ksi);
      -      cosphi1 = std::cos(startPhi+rang*ksi);
      -      cosphi2 = std::cos(startPhi+(rang+1)*ksi);
      -      chose = G4RandFlat::shoot(0., aTop + aBottom);
      -      if(chose>=0. && choseRmin[numPlanes-1];
      -        rad2 = original_parameters->Rmax[numPlanes-1];
      -        zVal = original_parameters->Z_values[numPlanes-1]; 
      -      }
      -      else 
      -      {
      -        rad1 = original_parameters->Rmin[0];
      -        rad2 = original_parameters->Rmax[0];
      -        zVal = original_parameters->Z_values[0]; 
      -      }
      -      p0 = G4ThreeVector(rad1*cosphi1,rad1*sinphi1,zVal);
      -      p1 = G4ThreeVector(rad2*cosphi1,rad2*sinphi1,zVal);
      -      p2 = G4ThreeVector(rad2*cosphi2,rad2*sinphi2,zVal);
      -      p3 = G4ThreeVector(rad1*cosphi2,rad1*sinphi2,zVal);
      -      return GetPointOnPlane(p0,p1,p2,p3); 
      +      x = p0.x();
      +      y = p0.y();
      +      z = p0.z();
           }
           else
           {
      -      for (j=0; j= Achose1) && (chose < Achose2)) || (j == numPlanes-2) )
      -        { 
      -          Flag = j; break; 
      -        }
      -        Achose1 += numSide*(aVector1[j]+aVector2[j])+2.*aVector3[j];
      -        Achose2 = Achose1 + numSide*(aVector1[j+1]+aVector2[j+1])
      -                          + 2.*aVector3[j+1];
      -      }
      +      if (iside == nside) --iside; // iside must be less then nside
      +      G4double phi = iside*dphi + GetStartPhi();
      +      G4double cosphi = std::cos(phi);
      +      G4double sinphi = std::sin(phi);
      +      x = p0.x()*cosphi - p0.y()*sinphi;
      +      y = p0.x()*sinphi + p0.y()*cosphi;
      +      z = p0.z();
           }
      -
      -    // At this point we have chosen a subsection
      -    // between to adjacent plane cuts...
      -
      -    j = Flag; 
      -    
      -    totArea = numSide*(aVector1[j]+aVector2[j])+2.*aVector3[j];
      -    chose = G4RandFlat::shoot(0.,totArea);
      -  
      -    if( (chose>=0.) && (choseRmax[j];
      -      rad2 = original_parameters->Rmax[j+1];
      -      sinphi1 = std::sin(startPhi+rang*ksi);
      -      sinphi2 = std::sin(startPhi+(rang+1)*ksi);
      -      cosphi1 = std::cos(startPhi+rang*ksi);
      -      cosphi2 = std::cos(startPhi+(rang+1)*ksi);
      -      zVal = original_parameters->Z_values[j];
      -    
      -      p0 = G4ThreeVector(rad1*cosphi1,rad1*sinphi1,zVal);
      -      p1 = G4ThreeVector(rad1*cosphi2,rad1*sinphi2,zVal);
      -
      -      zVal = original_parameters->Z_values[j+1];
      -
      -      p2 = G4ThreeVector(rad2*cosphi2,rad2*sinphi2,zVal);
      -      p3 = G4ThreeVector(rad2*cosphi1,rad2*sinphi1,zVal);
      -      return GetPointOnPlane(p0,p1,p2,p3);
      -    }
      -    else if ( (chose >= numSide*aVector1[j])
      -           && (chose <= numSide*(aVector1[j]+aVector2[j])) )
      -    {
      -      chose = G4RandFlat::shoot(startPhi,startPhi+totalPhi);
      -      rang = std::floor((chose-startPhi)/ksi-0.01);
      -      if(rang<0) { rang=0; }
      -      rang = std::fabs(rang);
      -      rad1 = original_parameters->Rmin[j];
      -      rad2 = original_parameters->Rmin[j+1];
      -      sinphi1 = std::sin(startPhi+rang*ksi);
      -      sinphi2 = std::sin(startPhi+(rang+1)*ksi);
      -      cosphi1 = std::cos(startPhi+rang*ksi);
      -      cosphi2 = std::cos(startPhi+(rang+1)*ksi);
      -      zVal = original_parameters->Z_values[j];
      -
      -      p0 = G4ThreeVector(rad1*cosphi1,rad1*sinphi1,zVal);
      -      p1 = G4ThreeVector(rad1*cosphi2,rad1*sinphi2,zVal);
      -
      -      zVal = original_parameters->Z_values[j+1];
      -    
      -      p2 = G4ThreeVector(rad2*cosphi2,rad2*sinphi2,zVal);
      -      p3 = G4ThreeVector(rad2*cosphi1,rad2*sinphi1,zVal);
      -      return GetPointOnPlane(p0,p1,p2,p3);
      -    }
      -
      -    chose = G4RandFlat::shoot(0.,2.2);
      -    if( (chose>=0.) && (chose < 1.) )
      -    {
      -      rang = startPhi;
      -    }
      -    else
      -    {
      -      rang = endPhi;
      -    } 
      -
      -    cosphi1 = std::cos(rang); rad1 = original_parameters->Rmin[j];
      -    sinphi1 = std::sin(rang); rad2 = original_parameters->Rmax[j];
      -
      -    p0 = G4ThreeVector(rad1*cosphi1,rad1*sinphi1,
      -                       original_parameters->Z_values[j]);
      -    p1 = G4ThreeVector(rad2*cosphi1,rad2*sinphi1,
      -                       original_parameters->Z_values[j]);
      -
      -    rad1 = original_parameters->Rmax[j+1];
      -    rad2 = original_parameters->Rmin[j+1];
      -
      -    p2 = G4ThreeVector(rad1*cosphi1,rad1*sinphi1,
      -                       original_parameters->Z_values[j+1]);
      -    p3 = G4ThreeVector(rad2*cosphi1,rad2*sinphi1,
      -                       original_parameters->Z_values[j+1]);
      -    return GetPointOnPlane(p0,p1,p2,p3);
         }
      -  else  // Generic polyhedra
      +  else // phi cut
         {
      -    return GetPointOnSurfaceGeneric(); 
      +    G4int nrz = GetNumRZCorner();
      +    G4double phi = (i0 < nrz) ? GetStartPhi() : GetEndPhi();
      +    if (i0 >= nrz) { i0 -= nrz; }
      +    G4PolyhedraSideRZ p0 = GetCorner(i0);
      +    G4PolyhedraSideRZ p1 = GetCorner(i1);
      +    G4PolyhedraSideRZ p2 = GetCorner(i2);
      +    G4double r = (p1.r - p0.r)*u + (p2.r - p0.r)*v + p0.r;
      +    x = r*std::cos(phi);
      +    y = r*std::sin(phi);
      +    z = (p1.z - p0.z)*u + (p2.z - p0.z)*v + p0.z;
         }
      +  return G4ThreeVector(x, y, z);
       }
       
      -// CreatePolyhedron
      +//////////////////////////////////////////////////////////////////////////
       //
      +// CreatePolyhedron
      +
       G4Polyhedron* G4Polyhedra::CreatePolyhedron() const
      -{ 
      +{
         if (!genericPgon)
         {
           return new G4PolyhedronPgon( original_parameters->Start_angle,
      @@ -1077,8 +1062,8 @@ G4Polyhedron* G4Polyhedra::CreatePolyhedron() const
            * array starts from 1 (like in fortran). The indexes can be positive
            * or negative. Negative sign means that the corresponding edge is
            * invisible. The normal of the face should be directed to exterior
      -     * of the polyhedron. 
      -     * 
      +     * of the polyhedron.
      +     *
            * @param  Nnodes number of nodes
            * @param  Nfaces number of faces
            * @param  xyz    nodes
      @@ -1309,12 +1294,12 @@ G4Polyhedron* G4Polyhedra::CreatePolyhedron() const
       //
       void G4Polyhedra::SetOriginalParameters(G4ReduciblePolygon* rz)
       {
      -  G4int numPlanes = numCorner;  
      +  G4int numPlanes = numCorner;
         G4bool isConvertible = true;
         G4double Zmax=rz->Bmax();
         rz->StartWithZMin();
       
      -  // Prepare vectors for storage 
      +  // Prepare vectors for storage
         //
         std::vector Z;
         std::vector Rmin;
      @@ -1330,24 +1315,24 @@ void G4Polyhedra::SetOriginalParameters(G4ReduciblePolygon* rz)
         G4double Zprev=Z[0];
         if (Zprev == corners[1].z)
         {
      -    Rmin.push_back(corners[0].r);  
      -    Rmax.push_back (corners[1].r);icurr=1; 
      +    Rmin.push_back(corners[0].r);
      +    Rmax.push_back (corners[1].r);icurr=1;
         }
         else if (Zprev == corners[numPlanes-1].z)
         {
      -    Rmin.push_back(corners[numPlanes-1].r);  
      +    Rmin.push_back(corners[numPlanes-1].r);
           Rmax.push_back (corners[0].r);
      -    icurl=numPlanes-1;  
      +    icurl=numPlanes-1;
         }
         else
         {
      -    Rmin.push_back(corners[0].r);  
      +    Rmin.push_back(corners[0].r);
           Rmax.push_back (corners[0].r);
         }
       
         // next planes until last
         //
      -  G4int inextr=0, inextl=0; 
      +  G4int inextr=0, inextl=0;
         for (G4int i=0; i < numPlanes-2; ++i)
         {
           inextr=1+icurr;
      @@ -1359,7 +1344,7 @@ void G4Polyhedra::SetOriginalParameters(G4ReduciblePolygon* rz)
           G4double Zright = corners[inextr].z;
           if(Zright>Zleft)
           {
      -      Z.push_back(Zleft);  
      +      Z.push_back(Zleft);
             countPlanes++;
             G4double difZr=corners[inextr].z - corners[icurr].z;
             G4double difZl=corners[inextl].z - corners[icurl].z;
      @@ -1375,7 +1360,7 @@ void G4Polyhedra::SetOriginalParameters(G4ReduciblePolygon* rz)
               {
                 Rmin.push_back(corners[inextl].r);
                 Rmax.push_back(corners[icurr].r + (Zleft-corners[icurr].z)/difZr
      -                                *(corners[inextr].r - corners[icurr].r)); 
      +                                *(corners[inextr].r - corners[icurr].r));
               }
             }
             else if (difZl >= kCarTolerance)
      @@ -1400,18 +1385,18 @@ void G4Polyhedra::SetOriginalParameters(G4ReduciblePolygon* rz)
           }
           else if(std::fabs(Zright-Zleft)Z_values = new G4double[countPlanes];
          original_parameters->Rmin = new G4double[countPlanes];
          original_parameters->Rmax = new G4double[countPlanes];
      -  
      +
          for(G4int j=0; j < countPlanes; ++j)
          {
            original_parameters->Z_values[j] = Z[j];
      @@ -1482,7 +1467,7 @@ void G4Polyhedra::SetOriginalParameters(G4ReduciblePolygon* rz)
          original_parameters->Start_angle = startPhi;
          original_parameters->Opening_angle = endPhi-startPhi;
          original_parameters->Num_z_planes = countPlanes;
      - 
      +
         }
         else  // Set parameters(r,z) with Rmin==0 as convention
         {
      @@ -1498,7 +1483,7 @@ void G4Polyhedra::SetOriginalParameters(G4ReduciblePolygon* rz)
           original_parameters->Z_values = new G4double[numPlanes];
           original_parameters->Rmin = new G4double[numPlanes];
           original_parameters->Rmax = new G4double[numPlanes];
      -  
      +
           for(G4int j=0; j < numPlanes; ++j)
           {
             original_parameters->Z_values[j] = corners[j].z;
      diff --git a/source/geometry/solids/specific/src/G4UGenericPolycone.cc b/source/geometry/solids/specific/src/G4UGenericPolycone.cc
      index dda4aa4fad..2cf925c726 100644
      --- a/source/geometry/solids/specific/src/G4UGenericPolycone.cc
      +++ b/source/geometry/solids/specific/src/G4UGenericPolycone.cc
      @@ -383,7 +383,7 @@ G4Polyhedron* G4UGenericPolycone::CreatePolyhedron() const
           // Here is an extract from the header file HepPolyhedron.h:
           /**
            * Creates user defined polyhedron.
      -     * This function allows to the user to define arbitrary polyhedron.
      +     * This function allows one to the user to define arbitrary polyhedron.
            * The faces of the polyhedron should be either triangles or planar
            * quadrilateral. Nodes of a face are defined by indexes pointing to
            * the elements in the xyz array. Numeration of the elements in the
      diff --git a/source/geometry/solids/specific/src/G4UPolycone.cc b/source/geometry/solids/specific/src/G4UPolycone.cc
      index 4f92788170..cfae3df4da 100644
      --- a/source/geometry/solids/specific/src/G4UPolycone.cc
      +++ b/source/geometry/solids/specific/src/G4UPolycone.cc
      @@ -266,7 +266,7 @@ G4bool G4UPolycone::Reset()
           message << "Solid " << GetName() << " built using generic construct."
                   << G4endl << "Not applicable to the generic construct !";
           G4Exception("G4UPolycone::Reset()", "GeomSolids1001",
      -                JustWarning, message, "Parameters NOT resetted.");
      +                JustWarning, message, "Parameters NOT reset.");
           return true;  // error code set
         }
       
      diff --git a/source/geometry/solids/specific/src/G4UPolyhedra.cc b/source/geometry/solids/specific/src/G4UPolyhedra.cc
      index a470e996e9..4eff74b7db 100644
      --- a/source/geometry/solids/specific/src/G4UPolyhedra.cc
      +++ b/source/geometry/solids/specific/src/G4UPolyhedra.cc
      @@ -284,7 +284,7 @@ G4bool G4UPolyhedra::Reset()
           message << "Solid " << GetName() << " built using generic construct."
                   << G4endl << "Not applicable to the generic construct !";
           G4Exception("G4UPolyhedra::Reset()", "GeomSolids1001",
      -                JustWarning, message, "Parameters NOT resetted.");
      +                JustWarning, message, "Parameters NOT reset.");
           return true;  // error code set
         }
       
      @@ -614,7 +614,7 @@ G4Polyhedron* G4UPolyhedra::CreatePolyhedron() const
           // Here is an extract from the header file HepPolyhedron.h:
           /**
            * Creates user defined polyhedron.
      -     * This function allows to the user to define arbitrary polyhedron.
      +     * This function allows the user to define arbitrary polyhedron.
            * The faces of the polyhedron should be either triangles or planar
            * quadrilateral. Nodes of a face are defined by indexes pointing to
            * the elements in the xyz array. Numeration of the elements in the
      diff --git a/source/geometry/volumes/History b/source/geometry/volumes/History
      index 69f2e88f28..0cbe6a09f1 100644
      --- a/source/geometry/volumes/History
      +++ b/source/geometry/volumes/History
      @@ -16,6 +16,18 @@ commit in the repository !
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
       
      +October 11th, 2020 E.Tcherniaev            - geomvol-V10-06-03
      +- G4PVPlacement::CheckOverlaps(): Added keeping of bounding box from
      +  previous solid and complementory comparison of bounding spheres.
      +
      +October 7th, 2020 G.Cosmo                  - geomvol-V10-06-02
      +- Minor update to G4LogicalBorderSurface.
      +
      +October 6th, 2020 G.Cosmo                  - geomvol-V10-06-01
      +- Use std::map instead of std::vector to define G4LogicalBorderSurfaceTable,
      +  to speedup search of surfaces in large tables.
      +  Based on GitHub PR #6 by J.Brodsky.
      +
       December 10th, 2019 B.Morgan               - geomvol-V10-06-00
       - Cleanup CMake build, removing obsolete granular library options and
         explicit include_directories.
      diff --git a/source/geometry/volumes/include/G4AssemblyVolume.hh b/source/geometry/volumes/include/G4AssemblyVolume.hh
      index f2d18eed02..56fc716ac0 100644
      --- a/source/geometry/volumes/include/G4AssemblyVolume.hh
      +++ b/source/geometry/volumes/include/G4AssemblyVolume.hh
      @@ -28,7 +28,7 @@
       // Class description:
       //
       // G4AssemblyVolume is a helper class to make the build process of geometry
      -// easier. It allows to combine several volumes together in an arbitrary way
      +// easier. It allows one to combine several volumes together in an arbitrary way
       // in 3D space and then work with the result as with a single logical volume
       // for placement.
       // The resulting objects are independent copies of each of the assembled
      diff --git a/source/geometry/volumes/include/G4LogicalBorderSurface.hh b/source/geometry/volumes/include/G4LogicalBorderSurface.hh
      index 95ef77356d..21aa59ee93 100644
      --- a/source/geometry/volumes/include/G4LogicalBorderSurface.hh
      +++ b/source/geometry/volumes/include/G4LogicalBorderSurface.hh
      @@ -31,12 +31,11 @@
       // of two physical volumes.
       
       // Author: John Apostolakis (John.Apostolakis@cern.ch), 17-06-1997
      -//
       // --------------------------------------------------------------------
      -#ifndef G4LogicalBorderSurface_h
      -#define G4LogicalBorderSurface_h 1
      +#ifndef G4LogicalBorderSurface_hh
      +#define G4LogicalBorderSurface_hh 1
       
      -#include 
      +#include 
       
       #include "G4LogicalSurface.hh"
       #include "G4VPhysicalVolume.hh"
      @@ -44,7 +43,9 @@
       class G4VPhysicalVolume;
       class G4LogicalBorderSurface;
       
      -using G4LogicalBorderSurfaceTable = std::vector;
      +using G4LogicalBorderSurfaceTable
      +      = std::map, G4LogicalBorderSurface*>;
       
       class G4LogicalBorderSurface : public G4LogicalSurface
       {
      @@ -99,5 +100,5 @@ class G4LogicalBorderSurface : public G4LogicalSurface
       
       #include "G4LogicalBorderSurface.icc"
       
      -#endif /* G4LogicalBorderSurface_h */
      +#endif
       
      diff --git a/source/geometry/volumes/include/G4LogicalSkinSurface.hh b/source/geometry/volumes/include/G4LogicalSkinSurface.hh
      index e05b12d14a..d863ef9fa2 100644
      --- a/source/geometry/volumes/include/G4LogicalSkinSurface.hh
      +++ b/source/geometry/volumes/include/G4LogicalSkinSurface.hh
      @@ -31,10 +31,9 @@
       // volume.
       
       // Author: John Apostolakis (John.Apostolakis@cern.ch), 16-06-1997
      -//
      -// ----------------------------------------------------------------------
      -#ifndef G4LogicalSkinSurface_h
      -#define G4LogicalSkinSurface_h 1
      +// --------------------------------------------------------------------
      +#ifndef G4LogicalSkinSurface_hh
      +#define G4LogicalSkinSurface_hh 1
       
       #include 
       
      @@ -48,7 +47,7 @@ using G4LogicalSkinSurfaceTable = std::vector;
       class G4LogicalSkinSurface : public G4LogicalSurface 
       {
       
      -  public:  // with description
      +  public:
       
           G4LogicalSkinSurface( const G4String& name,
                                       G4LogicalVolume* vol,
      @@ -71,7 +70,7 @@ class G4LogicalSkinSurface : public G4LogicalSurface
       
           static void CleanSurfaceTable();
           static const G4LogicalSkinSurfaceTable* GetSurfaceTable();
      -    static size_t GetNumberOfSkinSurfaces();
      +    static std::size_t GetNumberOfSkinSurfaces();
           static void DumpInfo(); // const 
             // To handle with the table of surfaces.
       
      @@ -91,5 +90,5 @@ class G4LogicalSkinSurface : public G4LogicalSurface
       
       #include "G4LogicalSkinSurface.icc"
       
      -#endif /* G4LogicalSkinSurface_h */
      +#endif
       
      diff --git a/source/geometry/volumes/src/G4LogicalBorderSurface.cc b/source/geometry/volumes/src/G4LogicalBorderSurface.cc
      index 6d623dec21..f4928014e7 100644
      --- a/source/geometry/volumes/src/G4LogicalBorderSurface.cc
      +++ b/source/geometry/volumes/src/G4LogicalBorderSurface.cc
      @@ -29,7 +29,7 @@
       // of two physical volumes.
       //
       // Author: John Apostolakis (John.Apostolakis@cern.ch), 26-06-1997
      -// ----------------------------------------------------------------------
      +// --------------------------------------------------------------------
       
       #include "G4LogicalBorderSurface.hh"
       #include "G4VPhysicalVolume.hh"
      @@ -49,14 +49,14 @@ G4LogicalBorderSurface(const G4String& name,
         : G4LogicalSurface(name, surfaceProperty),
           Volume1(vol1), Volume2(vol2)
       {
      -  if (!theBorderSurfaceTable)
      +  if (theBorderSurfaceTable == nullptr)
         {
           theBorderSurfaceTable = new G4LogicalBorderSurfaceTable;
         }
       
         // Store in the table of Surfaces
         //
      -  theBorderSurfaceTable->push_back(this);
      +  theBorderSurfaceTable->insert(std::make_pair(std::make_pair(vol1,vol2),this));
       }
       
       G4LogicalBorderSurface::~G4LogicalBorderSurface()
      @@ -92,7 +92,7 @@ const G4LogicalBorderSurfaceTable* G4LogicalBorderSurface::GetSurfaceTable()
         return theBorderSurfaceTable;
       }
       
      -size_t G4LogicalBorderSurface::GetNumberOfBorderSurfaces()
      +std::size_t G4LogicalBorderSurface::GetNumberOfBorderSurfaces()
       {
         if (theBorderSurfaceTable != nullptr)
         {
      @@ -107,14 +107,10 @@ G4LogicalBorderSurface::GetSurface(const G4VPhysicalVolume* vol1,
       {
         if (theBorderSurfaceTable != nullptr)
         {
      -    for(auto pos = theBorderSurfaceTable->cbegin();
      -        pos != theBorderSurfaceTable->cend(); ++pos)
      -    {
      -      if( (*pos)->GetVolume1() == vol1 && (*pos)->GetVolume2() == vol2 )
      -      { return *pos; }
      -    }
      +    auto pos = theBorderSurfaceTable->find(std::make_pair(vol1,vol2));
      +    if(pos != theBorderSurfaceTable->cend()) return pos->second;
         }
      -  return 0;
      +  return nullptr;
       }
       
       // Dump info for known surfaces
      @@ -129,11 +125,11 @@ void G4LogicalBorderSurface::DumpInfo()
           for(auto pos = theBorderSurfaceTable->cbegin();
               pos != theBorderSurfaceTable->cend(); ++pos)
           {
      -      G4cout << (*pos)->GetName() << " : " << G4endl
      +      G4LogicalBorderSurface* pSurf = pos->second;
      +      G4cout << pSurf->GetName() << " : " << G4endl
                    << " Border of volumes "
      -             << (*pos)->GetVolume1()->GetName() << " and " 
      -             << (*pos)->GetVolume2()->GetName()
      -             << G4endl;
      +             << pSurf->GetVolume1()->GetName() << " and " 
      +             << pSurf->GetVolume2()->GetName() << G4endl;
           }
         }
         G4cout << G4endl;
      @@ -146,7 +142,7 @@ void G4LogicalBorderSurface::CleanSurfaceTable()
           for(auto pos = theBorderSurfaceTable->cbegin();
               pos != theBorderSurfaceTable->cend(); ++pos)
           {
      -      if (*pos)  { delete *pos; }
      +      if (pos->second)  { delete pos->second; }
           }
           theBorderSurfaceTable->clear();
         }
      diff --git a/source/geometry/volumes/src/G4LogicalSkinSurface.cc b/source/geometry/volumes/src/G4LogicalSkinSurface.cc
      index c75c5ad40a..7d51dd7c60 100644
      --- a/source/geometry/volumes/src/G4LogicalSkinSurface.cc
      +++ b/source/geometry/volumes/src/G4LogicalSkinSurface.cc
      @@ -29,7 +29,7 @@
       // logical volume.
       //
       // Author: John Apostolakis (John.Apostolakis@cern.ch), 26-06-1997
      -// ----------------------------------------------------------------------
      +// --------------------------------------------------------------------
       
       #include "G4LogicalSkinSurface.hh"
       #include "G4LogicalVolume.hh"
      diff --git a/source/geometry/volumes/src/G4PVPlacement.cc b/source/geometry/volumes/src/G4PVPlacement.cc
      index a0dbfbed28..31ed9e41d7 100644
      --- a/source/geometry/volumes/src/G4PVPlacement.cc
      +++ b/source/geometry/volumes/src/G4PVPlacement.cc
      @@ -22,7 +22,7 @@
       // * use  in  resulting  scientific  publications,  and indicate your *
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
      -// 
      +//
       // class G4PVPlacement Implementation
       //
       // ----------------------------------------------------------------------
      @@ -163,7 +163,7 @@ G4PVPlacement::~G4PVPlacement()
       //
       G4bool G4PVPlacement::IsMany() const
       {
      -  return fmany; 
      +  return fmany;
       }
       
       // ----------------------------------------------------------------------
      @@ -215,7 +215,7 @@ GetReplicationData( EAxis&, G4int&, G4double&, G4double&, G4bool& ) const
       G4bool G4PVPlacement::IsRegularStructure() const
       {
         return false;
      -}           
      +}
       
       // ----------------------------------------------------------------------
       // IsRegularRepeatedStructure
      @@ -224,8 +224,8 @@ G4bool G4PVPlacement::IsRegularStructure() const
       //
       G4int G4PVPlacement::GetRegularStructureId() const
       {
      -  return 0;  
      -}           
      +  return 0;
      +}
       
       // ----------------------------------------------------------------------
       // VolumeType
      @@ -294,6 +294,8 @@ G4bool G4PVPlacement::CheckOverlaps(G4int res, G4double tol,
           ymax = std::max(ymax, points[i].y());
           zmax = std::max(zmax, points[i].z());
         }
      +  G4ThreeVector scenter(0.5*(xmax+xmin), 0.5*(ymax+ymin), 0.5*(zmax+zmin));
      +  G4double sradius = 0.5*G4ThreeVector(xmax-xmin, ymax-ymin, zmax-zmin).mag();
       
         // Check overlap with the mother volume
         //
      @@ -332,21 +334,27 @@ G4bool G4PVPlacement::CheckOverlaps(G4int res, G4double tol,
       
         // Checking overlaps with each 'sister' volume
         //
      +  G4VSolid* previous = nullptr;
      +  G4ThreeVector pmin_local(0.,0.,0.), pmax_local(0.,0.,0.);
      +
         for (size_t k = 0; k < motherLog->GetNoDaughters(); ++k)
         {
           G4VPhysicalVolume* daughter = motherLog->GetDaughter(k);
           if (daughter == this) continue;
      -    G4VSolid* daughterSolid = daughter->GetLogicalVolume()->GetSolid();
      -    G4AffineTransform Td(daughter->GetRotation(), daughter->GetTranslation());
       
      +    G4AffineTransform Td(daughter->GetRotation(), daughter->GetTranslation());
      +    G4VSolid* daughterSolid = daughter->GetLogicalVolume()->GetSolid();
      +    if (previous != daughterSolid)
      +    {
      +      daughterSolid->BoundingLimits(pmin_local, pmax_local);
      +      previous = daughterSolid;
      +    }
           G4double distout = -kInfinity;
           G4ThreeVector plocal;
           if (!Td.IsRotated()) {
             G4ThreeVector offset = Td.NetTranslation();
      -      G4ThreeVector pmin, pmax;
      -      daughterSolid->BoundingLimits(pmin, pmax);
      -      pmin += offset;
      -      pmax += offset;
      +      G4ThreeVector pmin(pmin_local + offset);
      +      G4ThreeVector pmax(pmax_local + offset);
             if (pmin.x() >= xmax) continue;
             if (pmin.y() >= ymax) continue;
             if (pmin.z() >= zmax) continue;
      @@ -364,7 +372,7 @@ G4bool G4PVPlacement::CheckOverlaps(G4int res, G4double tol,
               if (p.z() >= pmax.z()) continue;
               G4ThreeVector md = p - offset;
               if (daughterSolid->Inside(md) == kInside)
      -	{
      +        {
                 G4double dtmp = daughterSolid->DistanceToOut(md);
                 if (dtmp <= tol) continue;
                 distout = dtmp;
      @@ -372,9 +380,20 @@ G4bool G4PVPlacement::CheckOverlaps(G4int res, G4double tol,
                 break;
               }
             }
      -    } else {
      -      G4ThreeVector pmin, pmax;
      -      daughterSolid->BoundingLimits(pmin, pmax);
      +    }
      +    else
      +    {
      +      G4ThreeVector pmin(pmin_local), pmax(pmax_local);
      +      G4ThreeVector dcenter = Td.TransformPoint(0.5*(pmin + pmax));
      +      G4double dradius = 0.5*((pmax - pmin).mag());
      +      if ((scenter - dcenter).mag2() >= (sradius + dradius)*(sradius + dradius)) continue;
      +      if (dcenter.x() - dradius >= xmax) continue;
      +      if (dcenter.y() - dradius >= ymax) continue;
      +      if (dcenter.z() - dradius >= zmax) continue;
      +      if (dcenter.x() + dradius <= xmin) continue;
      +      if (dcenter.y() + dradius <= ymin) continue;
      +      if (dcenter.z() + dradius <= zmin) continue;
      +
             G4ThreeVector pbox[8] = {
               G4ThreeVector(pmin.x(), pmin.y(), pmin.z()),
               G4ThreeVector(pmax.x(), pmin.y(), pmin.z()),
      @@ -414,13 +433,13 @@ G4bool G4PVPlacement::CheckOverlaps(G4int res, G4double tol,
               if (p.z() <= dzmin) continue;
               G4ThreeVector md = Td.InverseTransformPoint(p);
               if (daughterSolid->Inside(md) == kInside)
      -	{
      +        {
                 G4double dtmp = daughterSolid->DistanceToOut(md);
                 if (dtmp <= tol) continue;
                 distout = dtmp;
                 plocal = md;
                 break;
      -	}
      +        }
             }
           }
       
      @@ -503,12 +522,12 @@ G4bool G4PVPlacement::CheckOverlaps(G4int res, G4double tol,
       // argument into it.
       //
       // NOTE: Ownership of the returned pointer is left to the caller !
      -//       No entity is currently responsible to delete this memory. 
      +//       No entity is currently responsible to delete this memory.
       //
       G4RotationMatrix*
       G4PVPlacement::NewPtrRotMatrix(const G4RotationMatrix &RotMat)
       {
      -  G4RotationMatrix* pRotMatrix; 
      +  G4RotationMatrix* pRotMatrix;
         if ( RotMat.isIdentity() )
         {
            pRotMatrix = nullptr;
      @@ -516,6 +535,6 @@ G4PVPlacement::NewPtrRotMatrix(const G4RotationMatrix &RotMat)
         else
         {
            pRotMatrix = new G4RotationMatrix(RotMat);
      -  }    
      +  }
         return pRotMatrix;
       }
      diff --git a/source/global/History b/source/global/History
      index 7f3c42e1a6..2044e56f63 100644
      --- a/source/global/History
      +++ b/source/global/History
      @@ -16,6 +16,66 @@ commit in the repository !
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
       
      +December 2, 2020 Gabriele (global-V10-06-27)
      +- Removed condition restricting to __x86_64__ architectures for macOS
      +  configuration in tls.hh.
      +
      +November 21, 2020 Gabriele Cosmo (global-V10-06-26)
      +- Fixed compilation warnings in G4Profiler.
      +- Updated tag IDs for release 10.7.
      +
      +November 12, 2020 Jonathan Madsen (global-V10-06-25)
      +- Added new G4Profiler.hh header
      +- Implemented new profiling routines which allow per-{run,event,track,step}
      +  configuration w.r.t. when to profiler, what to collect in the profiler,
      +  and how to label the entries.
      +  Also, includes user-profiling config and macros.
      +- Use of TIMEMORY_AUTO_TIMER is now deprecated.
      +
      +October 29, 2020 Ben Morgan (global-V10-06-25)
      +- Always use new CMake system.
      +
      +October 30, 2020 Gabriele Cosmo (global-V10-06-24)
      +- Updated tag IDs for geant4-10-06-ref-10.
      +
      +October 20, 2020 Jonathan Madsen (global-V10-06-23)
      +- Added G4Backtrace.hh for printing backtraces from raised signals
      +- This is a more generic implementation of G4FPEDetection and can
      +  catch FPE issues but, by default, does not interfere with it.
      +- The default backtraced signals are: SIGQUIT, SIGILL, SIGABRT, SIGKILL,
      +  SIGBUS, SIGSEGV.
      +- The default signals can be overridden within user-code before and
      +  after the creation of the run-manager (See "Usage" section in G4Backtrace.hh)
      +- The default signals can be overridden via environment variable
      +  G4BACKTRACE.
      +
      +September 30, 2020 Gabriele Cosmo (global-V10-06-22)
      +- Updated tag IDs for geant4-10-06-ref-09.
      +
      +September 25, 2020 Vladimir Ivanchenko (global-V10-06-21)
      +- G4PhysicsLinearVector, G4PhysicsLogVector - fixed scale of energy; this
      +  problem does not affect results in general; it fix data table scale
      +  and may change dEdx and cross sections numerically on small level.
      +
      +  September 24, 2020 Gabriele Cosmo (global-V10-06-20)
      +- Re-instate static pointer for 'masterG4coutDestination' in G4coutDestination
      +  with proper symbol exporting on Windows (necessary for MT builds).
      +  Restores trapping of G4cout from workers in Qt GUI.
      +
      +August 31, 2020 Gabriele Cosmo (global-V10-06-19)
      +- Updated tag IDs for geant4-10-06-ref-08.
      +
      +August 4, 2020 Daren Sawkey (global-V10-06-18)
      +- New G4PhysicsOrderedFreeVector(std::vector, std::vector) constructor.
      +
      +July 23, 2020 Gabriele Cosmo (global-V10-06-17)
      +- Updated tag IDs for geant4-10-06-ref-07.
      +
      +July 17, 2020 Gabriele Cosmo (global-V10-06-16)
      +- Updated e_SI value for electron charge in G4SIunits.h, based
      +  on May 2019 redefinition of SI units.
      +  Reference: https://www.britannica.com/science/electron-charge.
      +
       June 26, 2020 Gabriele Cosmo (global-V10-06-15)
       - Updated tag IDs for geant4-10-06-ref-06.
       
      diff --git a/source/global/management/include/G4Backtrace.hh b/source/global/management/include/G4Backtrace.hh
      new file mode 100644
      index 0000000000..366661d0b4
      --- /dev/null
      +++ b/source/global/management/include/G4Backtrace.hh
      @@ -0,0 +1,811 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4Backtrace
      +//
      +// Description:
      +//
      +//  Prints backtraces after signals are caught. Available on Unix.
      +//
      +// Usage:
      +//  A standard set of signals are enabled by default:
      +//
      +//     SIGQUIT, SIGILL, SIGABRT, SIGKILL, SIGBUS, SIGSEGV
      +//
      +//  These should not interfere with debuggers and/or G4FPEDetection.
      +//  In order to turn off handling for one or more signals, one can do:
      +//
      +//    G4BackTrace::DefaultSignals() = std::set{};
      +//    G4BackTrace::DefaultSignals() = std::set{ SIGSEGV };
      +//
      +//  and so on, *before* creating the run-manager. After the run-manager
      +//  has been created, one should disable the signals:
      +//
      +//    G4BackTrace::Disable(G4BackTrace::DefaultSignals());
      +//
      +//  Additionally, at runtime, the environment variable "G4BACKTRACE" can
      +//  be set to select a specific set of signals or none, e.g. in bash:
      +//
      +//    export G4BACKTRACE="SIGQUIT,SIGSEGV"
      +//    export G4BACKTRACE="none"
      +//
      +//  The environment variable is case-insensitive and can use any of the
      +//  following delimiters: space, comma, semi-colon, colon
      +//
      +// Author: J.Madsen, 19 October 2020
      +// --------------------------------------------------------------------
      +
      +#ifndef G4Backtrace_hh
      +#define G4Backtrace_hh 1
      +
      +#include "G4Types.hh"
      +#include "G4String.hh"
      +#include "G4Threading.hh"
      +
      +#if defined(__APPLE__) || defined(__MACH__)
      +#  if !defined(G4MACOS)
      +#    define G4MACOS
      +#  endif
      +#  if !defined(G4UNIX)
      +#    define G4UNIX
      +#  endif
      +#elif defined(__linux__) || defined(__linux) || defined(linux) ||              \
      +  defined(__gnu_linux__)
      +#  if !defined(G4LINUX)
      +#    define G4LINUX
      +#  endif
      +#  if !defined(G4UNIX)
      +#    define G4UNIX
      +#  endif
      +#elif defined(__unix__) || defined(__unix) || defined(unix)
      +#  if !defined(G4UNIX)
      +#    define G4UNIX
      +#  endif
      +#endif
      +
      +#if defined(G4UNIX)
      +#  include 
      +#  include 
      +#  include 
      +#endif
      +
      +#if defined(G4LINUX)
      +#  include 
      +#endif
      +
      +#include 
      +#include 
      +#include 
      +
      +template 
      +using G4ResultOf_t = typename std::result_of::type;
      +
      +// compatible OS and compiler
      +#if defined(G4UNIX) &&                                                         \
      +  (defined(__GNUC__) || defined(__clang__) || defined(_INTEL_COMPILER))
      +#  if !defined(G4SIGNAL_AVAILABLE)
      +#    define G4SIGNAL_AVAILABLE
      +#  endif
      +#  if !defined(G4DEMANGLE_AVAILABLE)
      +#    define G4DEMANGLE_AVAILABLE
      +#  endif
      +#endif
      +
      +#if !defined(G4PSIGINFO_AVAILABLE)
      +#  if _XOPEN_SOURCE >= 700 || _POSIX_C_SOURCE >= 200809L
      +#    define G4PSIGINFO_AVAILABLE 1
      +#  else
      +#    define G4PSIGINFO_AVAILABLE 0
      +#  endif
      +#endif
      +
      +//----------------------------------------------------------------------------//
      +
      +inline G4String G4Demangle(const char* _str)
      +{
      +#if defined(G4DEMANGLE_AVAILABLE)
      +  // demangling a string when delimiting
      +  int _status = 0;
      +  char* _ret  = ::abi::__cxa_demangle(_str, nullptr, nullptr, &_status);
      +  if(_ret && _status == 0)
      +    return G4String(const_cast(_ret));
      +  return _str;
      +#else
      +  return _str;
      +#endif
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +inline G4String G4Demangle(const G4String& _str)
      +{
      +  return G4Demangle(_str.c_str());
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +template 
      +inline G4String G4Demangle()
      +{
      +  return G4Demangle(typeid(Tp).name());
      +}
      +
      +//----------------------------------------------------------------------------//
      +//
      +//      ONLY IF G4SIGNAL_AVAILABLE
      +//
      +//----------------------------------------------------------------------------//
      +//
      +#if defined(G4SIGNAL_AVAILABLE)
      +//
      +//  these are not in the original POSIX.1-1990 standard so we are defining
      +//  them in case the OS hasn't
      +//  POSIX-1.2001
      +#  ifndef SIGTRAP
      +#    define SIGTRAP 5
      +#  endif
      +//  not specified in POSIX.1-2001, but nevertheless appears on most other
      +//  UNIX systems, where its default action is typically to terminate the
      +//  process with a core dump.
      +#  ifndef SIGEMT
      +#    define SIGEMT 7
      +#  endif
      +//  POSIX-1.2001
      +#  ifndef SIGURG
      +#    define SIGURG 16
      +#  endif
      +//  POSIX-1.2001
      +#  ifndef SIGXCPU
      +#    define SIGXCPU 24
      +#  endif
      +//  POSIX-1.2001
      +#  ifndef SIGXFSZ
      +#    define SIGXFSZ 25
      +#  endif
      +//  POSIX-1.2001
      +#  ifndef SIGVTALRM
      +#    define SIGVTALRM 26
      +#  endif
      +//  POSIX-1.2001
      +#  ifndef SIGPROF
      +#    define SIGPROF 27
      +#  endif
      +//  POSIX-1.2001
      +#  ifndef SIGINFO
      +#    define SIGINFO 29
      +#  endif
      +
      +//----------------------------------------------------------------------------//
      +
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +
      +//----------------------------------------------------------------------------//
      +
      +class G4Backtrace
      +{
      + public:
      +  using sigaction_t   = struct sigaction;
      +  using exit_action_t = std::function;
      +  using frame_func_t  = std::function;
      +  using signal_set_t  = std::set;
      +
      + public:
      +  struct actions
      +  {
      +    using id_entry_t = std::tuple;
      +    using id_list_t  = std::vector;
      +
      +    std::shared_ptr lock        = std::make_shared();
      +    std::map is_active           = {};
      +    std::map current      = {};
      +    std::map previous     = {};
      +    std::vector exit_actions = {};
      +    const id_list_t identifiers             = {
      +      id_entry_t("SIGHUP", SIGHUP, "terminal line hangup"),
      +      id_entry_t("SIGINT", SIGINT, "interrupt program"),
      +      id_entry_t("SIGQUIT", SIGQUIT, "quit program"),
      +      id_entry_t("SIGILL", SIGILL, "illegal instruction"),
      +      id_entry_t("SIGTRAP", SIGTRAP, "trace trap"),
      +      id_entry_t("SIGABRT", SIGABRT, "abort program (formerly SIGIOT)"),
      +      id_entry_t("SIGEMT", SIGEMT, "emulate instruction executed"),
      +      id_entry_t("SIGFPE", SIGFPE, "floating-point exception"),
      +      id_entry_t("SIGKILL", SIGKILL, "kill program"),
      +      id_entry_t("SIGBUS", SIGBUS, "bus error"),
      +      id_entry_t("SIGSEGV", SIGSEGV, "segmentation violation"),
      +      id_entry_t("SIGSYS", SIGSYS, "non-existent system call invoked"),
      +      id_entry_t("SIGPIPE", SIGPIPE, "write on a pipe with no reader"),
      +      id_entry_t("SIGALRM", SIGALRM, "real-time timer expired"),
      +      id_entry_t("SIGTERM", SIGTERM, "software termination signal"),
      +      id_entry_t("SIGURG", SIGURG, "urgent condition present on socket"),
      +      id_entry_t("SIGSTOP", SIGSTOP, "stop (cannot be caught or ignored)"),
      +      id_entry_t("SIGTSTP", SIGTSTP, "stop signal generated from keyboard"),
      +      id_entry_t("SIGCONT", SIGCONT, "continue after stop"),
      +      id_entry_t("SIGCHLD", SIGCHLD, "child status has changed"),
      +      id_entry_t("SIGTTIN", SIGTTIN,
      +                 "background read attempted from control terminal"),
      +      id_entry_t("SIGTTOU", SIGTTOU,
      +                 "background write attempted to control terminal"),
      +      id_entry_t("SIGIO ", SIGIO, "I/O is possible on a descriptor"),
      +      id_entry_t("SIGXCPU", SIGXCPU, "cpu time limit exceeded"),
      +      id_entry_t("SIGXFSZ", SIGXFSZ, "file size limit exceeded"),
      +      id_entry_t("SIGVTALRM", SIGVTALRM, "virtual time alarm"),
      +      id_entry_t("SIGPROF", SIGPROF, "profiling timer alarm"),
      +      id_entry_t("SIGWINCH", SIGWINCH, "Window size change"),
      +      id_entry_t("SIGINFO", SIGINFO, "status request from keyboard"),
      +      id_entry_t("SIGUSR1", SIGUSR1, "User defined signal 1"),
      +      id_entry_t("SIGUSR2", SIGUSR2, "User defined signal 2")
      +    };
      +  };
      +
      + public:
      +  // a functor called for each frame in the backtrace
      +  static frame_func_t& FrameFunctor();
      +  // default set of signals
      +  static signal_set_t& DefaultSignals();
      +  // the signal handler
      +  static void Handler(int sig, siginfo_t* sinfo, void* context);
      +  // information message about the signal, performs exit-actions
      +  // and prints back-trace
      +  static void Message(int sig, siginfo_t* sinfo, std::ostream&);
      +  // calls user-provided functions after signal is caught but before abort
      +  static void ExitAction(int sig);
      +  // enable signals via a string (which is tokenized)
      +  static int Enable(const std::string&);
      +  // enable signals via set of integers, anything less than zero is ignored
      +  static int Enable(const signal_set_t& _signals = DefaultSignals());
      +  // disable signals
      +  static int Disable(signal_set_t _signals = {});
      +  // gets the numeric value for a signal name
      +  static int GetSignal(const std::string&);
      +  // provides a description of the signal
      +  static std::string Description(int sig);
      +
      +  // adds an exit action
      +  template 
      +  static void AddExitAction(FuncT&& func);
      +
      +  // gets a backtrace of "Depth" frames. The offset parameter is used
      +  // to ignore initial frames (such as this function). A callback
      +  // can be provided to inspect and/or tweak the frame string
      +  template 
      +  static std::array, Depth> GetMangled(
      +    FuncT&& func = FrameFunctor());
      +
      +  // gets a demangled backtrace of "Depth" frames. The offset parameter is
      +  // used to ignore initial frames (such as this function). A callback
      +  // can be provided to inspect and/or tweak the frame string
      +  template 
      +  static std::array, Depth> GetDemangled(
      +    FuncT&& func = FrameFunctor());
      +
      + private:
      +  static actions& GetData()
      +  {
      +    static auto _instance = actions{};
      +    return _instance;
      +  }
      +};
      +
      +//----------------------------------------------------------------------------//
      +
      +// a functor called for each frame in the backtrace
      +inline G4Backtrace::frame_func_t& G4Backtrace::FrameFunctor()
      +{
      +  static frame_func_t _instance = [](const char* inp) { return G4String(inp); };
      +  return _instance;
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +// default set of signals
      +inline G4Backtrace::signal_set_t& G4Backtrace::DefaultSignals()
      +{
      +  static signal_set_t _instance = { SIGQUIT, SIGILL, SIGABRT,
      +                                    SIGKILL, SIGBUS, SIGSEGV };
      +  return _instance;
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +template 
      +inline void G4Backtrace::AddExitAction(FuncT&& func)
      +{
      +  GetData().exit_actions.emplace_back(std::forward(func));
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +inline void G4Backtrace::ExitAction(int sig)
      +{
      +  for(auto& itr : GetData().exit_actions)
      +    itr(sig);
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +template 
      +inline std::array, Depth>
      +G4Backtrace::GetMangled(FuncT&& func)
      +{
      +  static_assert((Depth - Offset) >= 1, "Error Depth - Offset should be >= 1");
      +
      +  using type = G4ResultOf_t;
      +  // destination
      +  std::array btrace;
      +  btrace.fill((std::is_pointer::value) ? nullptr : type{});
      +
      +  // plus one for this stack-frame
      +  std::array buffer;
      +  // size of returned buffer
      +  auto sz = backtrace(buffer.data(), Depth + Offset);
      +  // size of relevant data
      +  auto n = sz - Offset;
      +
      +  // skip ahead (Offset + 1) stack frames
      +  char** bsym = backtrace_symbols(buffer.data() + Offset, n);
      +
      +  // report errors
      +  if(bsym == nullptr)
      +    perror("backtrace_symbols");
      +  else
      +  {
      +    for(decltype(n) i = 0; i < n; ++i)
      +      btrace[i] = func(bsym[i]);
      +    free(bsym);
      +  }
      +  return btrace;
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +template 
      +inline std::array, Depth>
      +G4Backtrace::GetDemangled(FuncT&& func)
      +{
      +  auto demangle_bt = [&](const char* cstr) {
      +    auto _trim = [](std::string& _sub, size_t& _len) {
      +      size_t _pos = 0;
      +      while((_pos = _sub.find_first_of(' ')) == 0)
      +      {
      +        _sub = _sub.erase(_pos, 1);
      +        --_len;
      +      }
      +      while((_pos = _sub.find_last_of(' ')) == _sub.length() - 1)
      +      {
      +        _sub = _sub.substr(0, _sub.length() - 1);
      +        --_len;
      +      }
      +      return _sub;
      +    };
      +
      +    auto str = G4Demangle(std::string(cstr));
      +    auto beg = str.find("(");
      +    if(beg == std::string::npos)
      +    {
      +      beg = str.find("_Z");
      +      if(beg != std::string::npos)
      +        beg -= 1;
      +    }
      +    auto end = str.find("+", beg);
      +    if(beg != std::string::npos && end != std::string::npos)
      +    {
      +      auto len = end - (beg + 1);
      +      auto sub = str.substr(beg + 1, len);
      +      auto dem = G4Demangle(_trim(sub, len));
      +      str      = str.replace(beg + 1, len, dem);
      +    }
      +    else if(beg != std::string::npos)
      +    {
      +      auto len = str.length() - (beg + 1);
      +      auto sub = str.substr(beg + 1, len);
      +      auto dem = G4Demangle(_trim(sub, len));
      +      str      = str.replace(beg + 1, len, dem);
      +    }
      +    else if(end != std::string::npos)
      +    {
      +      auto len = end;
      +      auto sub = str.substr(beg, len);
      +      auto dem = G4Demangle(_trim(sub, len));
      +      str      = str.replace(beg, len, dem);
      +    }
      +    return func(str.c_str());
      +  };
      +  return GetMangled(demangle_bt);
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +inline void G4Backtrace::Message(int sig, siginfo_t* sinfo, std::ostream& os)
      +{
      +  std::stringstream message;
      +  message << "\n### CAUGHT SIGNAL: " << sig << " ### ";
      +  if(sinfo)
      +    message << "address: " << sinfo->si_addr << ", ";
      +  message << Description(sig) << ". ";
      +
      +  if(sig == SIGSEGV)
      +  {
      +    if(sinfo)
      +    {
      +      switch(sinfo->si_code)
      +      {
      +        case SEGV_MAPERR:
      +          message << "Address not mapped to object.";
      +          break;
      +        case SEGV_ACCERR:
      +          message << "Invalid permissions for mapped object.";
      +          break;
      +        default:
      +          message << "Unknown segmentation fault error: " << sinfo->si_code
      +                  << ".";
      +          break;
      +      }
      +    }
      +    else
      +    {
      +      message << "Segmentation fault (unknown).";
      +    }
      +  }
      +  else if(sig == SIGFPE)
      +  {
      +    if(sinfo)
      +    {
      +      switch(sinfo->si_code)
      +      {
      +        case FE_DIVBYZERO:
      +          message << "Floating point divide by zero.";
      +          break;
      +        case FE_OVERFLOW:
      +          message << "Floating point overflow.";
      +          break;
      +        case FE_UNDERFLOW:
      +          message << "Floating point underflow.";
      +          break;
      +        case FE_INEXACT:
      +          message << "Floating point inexact result.";
      +          break;
      +        case FE_INVALID:
      +          message << "Floating point invalid operation.";
      +          break;
      +        default:
      +          message << "Unknown floating point exception error: "
      +                  << sinfo->si_code << ".";
      +          break;
      +      }
      +    }
      +    else
      +    {
      +      message << "Unknown floating point exception";
      +      if(sinfo)
      +        message << ": " << sinfo->si_code;
      +      message << ". ";
      +    }
      +  }
      +
      +  message << std::endl;
      +  try
      +  {
      +    sigignore(sig);
      +    ExitAction(sig);
      +  } catch(std::exception& e)
      +  {
      +    std::cerr << "ExitAction(" << sig << ") threw an exception" << std::endl;
      +    std::cerr << e.what() << std::endl;
      +  }
      +
      +  auto bt = GetDemangled<256, 3>(FrameFunctor());
      +  std::stringstream prefix;
      +  prefix << "[PID=" << getpid() << ", TID=" << G4Threading::G4GetThreadId()
      +         << "]";
      +  std::vector btvec;
      +  for(auto& itr : bt)
      +  {
      +    if(itr.length() > 0)
      +      btvec.emplace_back(std::move(itr));
      +  }
      +  std::stringstream serr;
      +  serr << "\nBacktrace:\n";
      +  auto _w = std::log10(btvec.size()) + 1;
      +  for(size_t i = 0; i < btvec.size(); ++i)
      +  {
      +    serr << prefix.str() << "[" << std::setw(_w) << std::right << i << '/'
      +         << std::setw(_w) << std::right << btvec.size() << "]> " << std::left
      +         << btvec.at(i) << '\n';
      +  }
      +  os << serr.str().c_str() << '\n';
      +  os << message.str() << std::flush;
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +inline void G4Backtrace::Handler(int sig, siginfo_t* sinfo, void*)
      +{
      +  std::unique_lock lk{ *(GetData().lock) };
      +
      +  {
      +    std::stringstream msg;
      +    Message(sig, sinfo, msg);
      +    std::cerr << msg.str() << std::flush;
      +  }
      +
      +  std::stringstream msg;
      +  msg << "\n\n";
      +
      +  if(sinfo && G4PSIGINFO_AVAILABLE > 0)
      +  {
      +#  if G4PSIGINFO_AVAILABLE > 0
      +    psiginfo(sinfo, msg.str().c_str());
      +#  endif
      +  }
      +  else
      +  {
      +    std::cerr << msg.str() << std::endl;
      +  }
      +
      +  // ignore any termination signals
      +  sigignore(SIGKILL);
      +  sigignore(SIGTERM);
      +  sigignore(SIGABRT);
      +  abort();
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +inline int G4Backtrace::Enable(const signal_set_t& _signals)
      +{
      +  static bool _first = true;
      +  std::unique_lock lk{ *(GetData().lock) };
      +  if(_first)
      +  {
      +    std::string _msg = "!!! G4Backtrace is activated !!!";
      +    std::stringstream _filler;
      +    std::stringstream _spacer;
      +    _filler.fill('#');
      +    _filler << std::setw(_msg.length()) << "";
      +    _spacer << std::setw(10) << "";
      +    std::cout << "\n\n"
      +              << _spacer.str() << _filler.str() << "\n"
      +              << _spacer.str() << _msg << "\n"
      +              << _spacer.str() << _filler.str() << "\n\n"
      +              << std::flush;
      +  }
      +  _first  = false;
      +  int cnt = 0;
      +  for(auto& itr : _signals)
      +  {
      +    if(itr < 0)
      +      continue;
      +    if(GetData().is_active[itr])
      +      continue;
      +    ++cnt;
      +    sigfillset(&(GetData().current[itr].sa_mask));
      +    sigdelset(&(GetData().current[itr].sa_mask), itr);
      +    GetData().current[itr].sa_sigaction = &Handler;
      +    GetData().current[itr].sa_flags     = SA_SIGINFO;
      +    sigaction(itr, &(GetData().current[itr]), &(GetData().previous[itr]));
      +  }
      +  return cnt;
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +inline int G4Backtrace::Enable(const std::string& _signals)
      +{
      +  if(_signals.empty())
      +    return 0;
      +
      +  auto _add_signal = [](std::string sig, signal_set_t& _targ) {
      +    if(!sig.empty())
      +    {
      +      for(auto& itr : sig)
      +        itr = toupper(itr);
      +      _targ.insert(G4Backtrace::GetSignal(sig));
      +    }
      +  };
      +
      +  const std::regex wsp_re("[ ,;:\t\n]+");
      +  auto _maxid  = GetData().identifiers.size();
      +  auto _result = std::vector(_maxid, "");
      +  std::copy(
      +    std::sregex_token_iterator(_signals.begin(), _signals.end(), wsp_re, -1),
      +    std::sregex_token_iterator(), _result.begin());
      +  signal_set_t _sigset{};
      +  for(auto& itr : _result)
      +    _add_signal(itr, _sigset);
      +  return Enable(_sigset);
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +inline int G4Backtrace::Disable(signal_set_t _signals)
      +{
      +  std::unique_lock lk{ *(GetData().lock) };
      +
      +  if(_signals.empty())
      +  {
      +    for(auto& itr : GetData().is_active)
      +      _signals.insert(itr.first);
      +  }
      +
      +  int cnt = 0;
      +  for(auto& itr : _signals)
      +  {
      +    if(itr < 0)
      +      continue;
      +    if(!GetData().is_active[itr])
      +      continue;
      +    ++cnt;
      +    sigaction(itr, &(GetData().previous[itr]), nullptr);
      +    GetData().current.erase(itr);
      +    GetData().is_active[itr] = false;
      +  }
      +  return cnt;
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +inline int G4Backtrace::GetSignal(const std::string& sid)
      +{
      +  for(auto&& itr : GetData().identifiers)
      +  {
      +    if(std::get<0>(itr) == sid)
      +      return std::get<1>(itr);
      +  }
      +  return -1;
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +inline std::string G4Backtrace::Description(int sig)
      +{
      +  for(auto&& itr : GetData().identifiers)
      +  {
      +    if(std::get<1>(itr) == sig)
      +    {
      +      std::stringstream ss;
      +      ss << " signal = " << std::setw(8) << std::get<0>(itr)
      +         << ", value = " << std::setw(4) << std::get<1>(itr)
      +         << ", description = " << std::get<2>(itr);
      +      return ss.str();
      +    }
      +  }
      +  std::stringstream ss;
      +  ss << " signal = " << std::setw(8) << "unknown"
      +     << ", value = " << std::setw(4) << sig;
      +  return ss.str();
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +#else
      +
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +
      +// dummy implementation
      +class G4Backtrace
      +{
      + public:
      +  struct fake_siginfo
      +  {};
      +  struct fake_sigaction
      +  {};
      +
      +  using siginfo_t = fake_siginfo;
      +  using sigaction_t = fake_sigaction;
      +  using exit_action_t = std::function;
      +  using frame_func_t = std::function;
      +  using signal_set_t = std::set;
      +
      + public:
      +  struct actions
      +  {
      +    using id_entry_t = std::tuple;
      +    using id_list_t = std::vector;
      +
      +    std::map is_active = {};
      +    std::map current = {};
      +    std::map previous = {};
      +    std::vector exit_actions = {};
      +    const id_list_t identifiers = {};
      +  };
      +
      + public:
      +  static void Handler(int, siginfo_t*, void*) {}
      +  static void Message(int, siginfo_t*, std::ostream&) {}
      +  static void ExitAction(int) {}
      +  static int Enable(const std::string&) { return 0; }
      +  static int Enable(const signal_set_t& = DefaultSignals()) { return 0; }
      +  static int Disable(signal_set_t = {}) { return 0; }
      +  static int GetSignal(const std::string&) { return -1; }
      +  static std::string Description(int) { return std::string{}; }
      +
      +  template 
      +  static void AddExitAction(FuncT&&)
      +  {}
      +
      +  template 
      +  static std::array, Depth> GetMangled(
      +    FuncT&& func = FrameFunctor())
      +  {
      +    using type = G4ResultOf_t;
      +    auto ret = std::array{};
      +    ret.fill(func(""));
      +    return ret;
      +  }
      +
      +  template 
      +  static std::array, Depth> GetDemangled(
      +    FuncT&& func = FrameFunctor())
      +  {
      +    using type = G4ResultOf_t;
      +    auto ret = std::array{};
      +    ret.fill(func(""));
      +    return ret;
      +  }
      +
      +  // a functor called for each frame in the backtrace
      +  static frame_func_t& FrameFunctor()
      +  {
      +    static frame_func_t _instance = [](const char* _s) { return G4String(_s); };
      +    return _instance;
      +  }
      +
      +  // default set of signals
      +  static signal_set_t& DefaultSignals()
      +  {
      +    static signal_set_t _instance = {};
      +    return _instance;
      +  }
      +
      +  static actions& GetData()
      +  {
      +    static auto _instance = actions{};
      +    return _instance;
      +  }
      +};
      +
      +//----------------------------------------------------------------------------//
      +
      +#endif  // G4SIGNAL_AVAILABLE
      +#endif  // G4Backtrace_hh
      diff --git a/source/global/management/include/G4PhysicsOrderedFreeVector.hh b/source/global/management/include/G4PhysicsOrderedFreeVector.hh
      index 5a1a65a695..a58469840b 100644
      --- a/source/global/management/include/G4PhysicsOrderedFreeVector.hh
      +++ b/source/global/management/include/G4PhysicsOrderedFreeVector.hh
      @@ -51,6 +51,8 @@ class G4PhysicsOrderedFreeVector : public G4PhysicsVector
         // The vector will be filled from extern file using Retrieve()
         // or InsertValues() methods
       
      +  G4PhysicsOrderedFreeVector(const std::vector& Energies,
      +                             const std::vector& Values);
         G4PhysicsOrderedFreeVector(G4double* Energies, G4double* Values,
                                    std::size_t VectorLength);
         // The vector is filled in this constructor.
      diff --git a/source/global/management/include/G4Profiler.hh b/source/global/management/include/G4Profiler.hh
      new file mode 100644
      index 0000000000..2e5ca2e5ff
      --- /dev/null
      +++ b/source/global/management/include/G4Profiler.hh
      @@ -0,0 +1,561 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4Profiler
      +//
      +// Class description:
      +//
      +// Class providing the internal profiling interface for Geant4.
      +
      +// Author: Jonathan Madsen, LBNL - November 2020
      +// --------------------------------------------------------------------
      +#ifndef G4Profiler_hh
      +#define G4Profiler_hh 1
      +
      +// Fundamental definitions
      +#ifndef G4GMAKE
      +#  include "G4GlobalConfig.hh"
      +#endif
      +
      +// for meta-programming stuff
      +#include "G4Profiler.icc"
      +
      +#if defined(GEANT4_USE_TIMEMORY)
      +#  include 
      +#endif
      +
      +#include "globals.hh"
      +
      +#include 
      +#include 
      +#include 
      +#include 
      +#include 
      +#include 
      +#include 
      +#include 
      +
      +//----------------------------------------------------------------------------//
      +
      +class G4Run;
      +class G4Event;
      +class G4Track;
      +class G4Step;
      +
      +struct G4ProfileType
      +{
      +  enum : size_t
      +  {
      +    Run = 0,
      +    Event,
      +    Track,
      +    Step,
      +    User,
      +    TypeEnd
      +  };
      +};
      +
      +struct G4ProfileOp
      +{
      +  enum : int
      +  {
      +    Query = 0,
      +    Label,
      +    Tool
      +  };
      +};
      +
      +//----------------------------------------------------------------------------//
      +
      +class G4Profiler
      +{
      + public:
      +  using array_type = std::array;
      +
      +#if defined(GEANT4_USE_TIMEMORY)
      +  using ArgumentParser = tim::argparse::argument_parser;
      +#else
      +  struct ArgumentParser
      +  {
      +    explicit ArgumentParser(std::string) {}
      +  };
      +#endif
      +
      +  static void Configure(const std::vector& args);
      +  static void Configure(int argc, char** argv);
      +  static void Configure(ArgumentParser&, const std::vector& args);
      +  static void Configure(ArgumentParser&, int argc, char** argv);
      +  static void Finalize();
      +
      +  static bool GetEnabled(size_t v) { return GetEnabled().at(v); }
      +  static void SetEnabled(size_t v, bool val) { GetEnabled().at(v) = val; }
      +
      +  static bool GetPerEvent() { return GetPerEventImpl(); }
      +  static void SetPerEvent(bool val) { GetPerEventImpl() = val; }
      +
      + private:
      +  static array_type& GetEnabled();
      +  static bool& GetPerEventImpl()
      +  {
      +    static bool _value = false;
      +    return _value;
      +  }
      +};
      +
      +//----------------------------------------------------------------------------//
      +//  maps enumerations to types
      +//
      +template 
      +struct G4ProfilerObject
      +{
      +  using type = void;
      +};
      +
      +template 
      +using G4ProfilerObject_t = typename G4ProfilerObject::type;
      +
      +template <>
      +struct G4ProfilerObject
      +{
      +  using type = const G4Run*;
      +};
      +
      +template <>
      +struct G4ProfilerObject
      +{
      +  using type = const G4Event*;
      +};
      +
      +template <>
      +struct G4ProfilerObject
      +{
      +  using type = const G4Track*;
      +};
      +
      +template <>
      +struct G4ProfilerObject
      +{
      +  using type = const G4Step*;
      +};
      +
      +template <>
      +struct G4ProfilerObject
      +{
      +  using type = const std::string&;
      +};
      +
      +//----------------------------------------------------------------------------//
      +// default set of profiler args
      +template 
      +struct G4ProfilerArgs
      +{
      +  // this resolves to the G4ProfilerObject type-trait above, e.g.
      +  // "const G4Step*" when category is G4ProfileType::Step
      +  using value_type = G4ProfilerObject_t;
      +
      +  // two-dimensional type-list where each inner type-list is a set
      +  // of arguments to support creating a profiler type from
      +  using type = G4TypeList;
      +  // so above means there are functors in use which apply:
      +  //
      +  //  G4StepProfiler _profiler(const G4Step*);
      +  //
      +};
      +
      +template 
      +using G4ProfilerArgs_t = typename G4ProfilerArgs::type;
      +
      +//----------------------------------------------------------------------------//
      +
      +template >
      +struct G4ProfilerFunctors
      +{
      +  using type = G4Impl::Functors_t>;
      +};
      +
      +template 
      +using G4ProfilerFunctors_t =
      +  typename G4ProfilerFunctors>::type;
      +
      +//----------------------------------------------------------------------------//
      +
      +#ifdef GEANT4_USE_TIMEMORY
      +
      +// Pre-declare the timemory component that will be used
      +namespace tim
      +{
      +  namespace component
      +  {
      +    template 
      +    struct user_bundle;
      +  }  // namespace component
      +
      +  template 
      +  class auto_tuple;
      +
      +  template 
      +  class auto_bundle;
      +}  // namespace tim
      +
      +namespace g4tim
      +{
      +  using namespace tim;
      +  using tim::component::user_bundle;
      +
      +  struct G4api : public tim::concepts::api
      +  {};
      +
      +  using ProfilerArgparser = argparse::argument_parser;
      +
      +}  // namespace g4tim
      +
      +using G4RunProfiler   = g4tim::user_bundle;
      +using G4EventProfiler = g4tim::user_bundle;
      +using G4TrackProfiler = g4tim::user_bundle;
      +using G4StepProfiler  = g4tim::user_bundle;
      +using G4UserProfiler  = g4tim::user_bundle;
      +
      +template 
      +using G4ProfilerBundle = g4tim::auto_bundle;
      +
      +#else
      +
      +namespace g4tim
      +{
      +  struct ProfilerArgparser
      +  {};
      +
      +  /// this provides a dummy wrapper for the profiling
      +  template 
      +  struct handler
      +  {
      +    template 
      +    handler(Args&&...)
      +    {}
      +    ~handler() = default;
      +    handler(const handler&) = default;
      +    handler(handler&&) = default;
      +    handler& operator=(const handler&) = default;
      +    handler& operator=(handler&&) = default;
      +
      +    void record() {}
      +    template 
      +    void start(Args&&...)
      +    {}
      +    template 
      +    void stop(Args&&...)
      +    {}
      +    void push() {}
      +    void pop() {}
      +    void reset() {}
      +    void report_at_exit(bool) {}
      +    template 
      +    void mark_begin(Args&&...)
      +    {}
      +    template 
      +    void mark_end(Args&&...)
      +    {}
      +    friend std::ostream& operator<<(std::ostream& os, const handler&)
      +    {
      +      return os;
      +    }
      +  };
      +
      +  template 
      +  struct user_bundle
      +  {
      +    template 
      +    user_bundle(Args&&...)
      +    {}
      +
      +    template 
      +    static void configure(Args&&...)
      +    {}
      +
      +    static void reset() {}
      +  };
      +
      +}  // namespace g4tim
      +
      +using G4RunProfiler = g4tim::handler<>;
      +using G4EventProfiler = g4tim::handler<>;
      +using G4TrackProfiler = g4tim::handler<>;
      +using G4StepProfiler = g4tim::handler<>;
      +using G4UserProfiler = g4tim::handler<>;
      +
      +template 
      +using G4ProfilerBundle = g4tim::handler;
      +
      +#endif
      +
      +//----------------------------------------------------------------------------//
      +
      +/// @brief G4ProfilerConfig
      +/// This class is used to determine whether to activate profiling in the code
      +///
      +/// @example extended/parallel/ThreadsafeScorers/ts_scorers.cc
      +/// The main for this file contains an example for configuring the G4Profiler
      +/// for G4Track and G4Step
      +///
      +template 
      +class G4ProfilerConfig
      +{
      + public:
      +  using type = G4ProfilerBundle>;
      +  using this_type = G4ProfilerConfig;
      +
      +  static constexpr size_t arg_sets =
      +    G4TypeListSize>::value;
      +
      +  using QueryFunc_t = G4ProfilerFunctors_t;
      +  using LabelFunc_t = G4ProfilerFunctors_t;
      +  using ToolFunc_t  = std::tuple>;
      +
      + public:
      +  // when constructed with no args, should call operator()
      +  G4ProfilerConfig() = default;
      +
      +  // constructor calls Query(...), Label(...), Tool(...)
      +  template 
      +  G4ProfilerConfig(Arg, Args...);
      +
      +  // will delete m_bundle is allocated
      +  ~G4ProfilerConfig();
      +
      +  // default the move-constructor and move-assignment
      +  G4ProfilerConfig(G4ProfilerConfig&&) = default;
      +  G4ProfilerConfig& operator=(G4ProfilerConfig&&) = default;
      +
      +  // do not allow copy-construct and copy-assign bc of raw pointer
      +  G4ProfilerConfig(const G4ProfilerConfig&) = delete;
      +  G4ProfilerConfig& operator=(const G4ProfilerConfig&) = delete;
      +
      +  // if constructed without args, this function should be called
      +  template 
      +  bool operator()(Args...);
      +
      +  // provide nullptr check
      +  operator bool() const { return (m_bundle != nullptr); }
      +
      + private:
      +  type* m_bundle = nullptr;
      +
      +  static QueryFunc_t& GetQueries()
      +  {
      +    static QueryFunc_t _value;
      +    return _value;
      +  }
      +
      +  static LabelFunc_t& GetLables()
      +  {
      +    static LabelFunc_t _value;
      +    return _value;
      +  }
      +
      +  static ToolFunc_t& GetTools()
      +  {
      +    static ToolFunc_t _value;
      +    return _value;
      +  }
      +
      + public:
      +  // invokes the functor that determines whether to enable profiling
      +  template 
      +  static bool Query(Args... _args);
      +
      +  // invokes the functor for generating a Label when profiling is enabled
      +  template 
      +  static std::string Label(Args... _args);
      +
      +  // invokes the functor for configuring a Tool instance
      +  template 
      +  static type* Tool(const std::string&);
      +
      +  using QueryHandler_t = FuncHandler;
      +  using LabelHandler_t = FuncHandler;
      +  using ToolHandler_t  = FuncHandler;
      +
      +  static QueryHandler_t GetQueryFunctor();
      +  static QueryHandler_t GetFallbackQueryFunctor();
      +
      +  static LabelHandler_t GetLabelFunctor();
      +  static LabelHandler_t GetFallbackLabelFunctor();
      +
      +  static ToolHandler_t GetToolFunctor();
      +  static ToolHandler_t GetFallbackToolFunctor();
      +
      + private:
      +  template 
      +  using conditional_t = typename std::conditional::type;
      +
      +  // this provides the global statics for the functors
      +  template 
      +  struct PersistentSettings
      +  {
      +    // determine the functor type
      +    using functor_type = conditional_t<
      +      Idx == G4ProfileOp::Query, QueryFunc_t,
      +      conditional_t>;
      +
      +    PersistentSettings()  = default;
      +    ~PersistentSettings() = default;
      +    // default member initialization
      +    functor_type m_functor;
      +  };
      +
      +  template 
      +  static PersistentSettings& GetPersistentFallback();
      +
      +  template 
      +  static PersistentSettings& GetPersistent();
      +};
      +
      +//----------------------------------------------------------------------------//
      +
      +// alias for getting type
      +template 
      +using G4ProfilerConfig_t = typename G4ProfilerConfig::type;
      +
      +// ----------------------------------------------------------------------
      +
      +template 
      +template 
      +G4ProfilerConfig::G4ProfilerConfig(Arg _arg, Args... _args)
      +{
      +  this->operator()(_arg, _args...);
      +}
      +
      +// ----------------------------------------------------------------------
      +
      +template 
      +template 
      +bool G4ProfilerConfig::operator()(Args... _args)
      +{
      +  if(Query(_args...))
      +  {
      +    m_bundle = Tool(Label(_args...));
      +    if(m_bundle)
      +      m_bundle->start(_args...);
      +    return (m_bundle != nullptr);
      +  }
      +  return false;
      +}
      +
      +// ----------------------------------------------------------------------
      +
      +// invokes the functor that determines whether to enable profiling
      +template 
      +template 
      +bool G4ProfilerConfig::Query(Args... _args)
      +{
      +  return QueryHandler_t{ GetPersistent().m_functor }(
      +    _args...);
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +// invokes the functor for generating a label when profiling is enabled
      +template 
      +template 
      +std::string G4ProfilerConfig::Label(Args... _args)
      +{
      +  return LabelHandler_t{ GetPersistent().m_functor }(
      +    _args...);
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +// invokes the functor for configuring a tool instance
      +template 
      +template 
      +typename G4ProfilerConfig::type* G4ProfilerConfig::Tool(
      +  const std::string& _args)
      +{
      +  return ToolHandler_t{ GetPersistent().m_functor }(_args);
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +// ensure that any implicit instantiations of the G4ProfilerConfig
      +// are not done in another translation units because we will
      +// explicitly instantiate G4ProfilerConfig in the .cc file
      +
      +// line breaks make this much harder to read
      +// clang-format off
      +extern template class G4ProfilerConfig;
      +extern template class G4ProfilerConfig;
      +extern template class G4ProfilerConfig;
      +extern template class G4ProfilerConfig;
      +extern template class G4ProfilerConfig;
      +extern template G4ProfilerConfig::G4ProfilerConfig(const G4Run*);
      +extern template G4ProfilerConfig::G4ProfilerConfig(const G4Event*);
      +extern template G4ProfilerConfig::G4ProfilerConfig(const G4Track*);
      +extern template G4ProfilerConfig::G4ProfilerConfig(const G4Step*);
      +extern template G4ProfilerConfig::G4ProfilerConfig(const std::string&);
      +// clang-format on
      +
      +//----------------------------------------------------------------------------//
      +
      +#ifndef GEANT4_USE_TIMEMORY
      +
      +#  include 
      +#  include 
      +
      +#endif
      +
      +#if defined(GEANT4_USE_TIMEMORY)
      +// two macros below create a unique variable name based on the line number
      +#  define G4USER_PROFILER_VAR_JOIN(X, Y) X##Y
      +#  define G4USER_PROFILER_VAR(Y) G4USER_PROFILER_VAR_JOIN(g4user_profiler_, Y)
      +
      +// inserts just the string
      +#  define G4USER_SCOPED_PROFILE(...)                                           \
      +    G4ProfilerConfig G4USER_PROFILER_VAR(__LINE__)(       \
      +      TIMEMORY_JOIN("", __VA_ARGS__))
      +
      +// inserts the function
      +#  define G4USER_SCOPED_PROFILE_FUNC(...)                                      \
      +    G4ProfilerConfig G4USER_PROFILER_VAR(__LINE__)(       \
      +      TIMEMORY_JOIN("", __FUNCTION__, "/", __VA_ARGS__))
      +
      +// inserts the function and file
      +#  define G4USER_SCOPED_PROFILE_FUNC_FILE(...)                                 \
      +    G4ProfilerConfig G4USER_PROFILER_VAR(__LINE__)(       \
      +      TIMEMORY_JOIN("", __FUNCTION__, '@', __FILE__, '/', __VA_ARGS__))
      +
      +// inserts the function, file, and line number
      +#  define G4USER_SCOPED_PROFILE_FUNC_FILE_LINE(...)                            \
      +    G4ProfilerConfig G4USER_PROFILER_VAR(__LINE__)(       \
      +      TIMEMORY_JOIN("", __FUNCTION__, '@', __FILE__, ':', __LINE__, '/',       \
      +                    __VA_ARGS__))
      +#else
      +#  define G4USER_SCOPED_PROFILE(...)
      +#  define G4USER_SCOPED_PROFILE_FUNC(...)
      +#  define G4USER_SCOPED_PROFILE_FUNC_FILE(...)
      +#  define G4USER_SCOPED_PROFILE_FUNC_FILE_LINE(...)
      +#endif
      +
      +#endif  // G4Profiler_hh
      diff --git a/source/global/management/include/G4Profiler.icc b/source/global/management/include/G4Profiler.icc
      new file mode 100644
      index 0000000000..5ff43cc24d
      --- /dev/null
      +++ b/source/global/management/include/G4Profiler.icc
      @@ -0,0 +1,391 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4Profiler
      +//
      +// Template definition file
      +//
      +// Author: Jonathan Madsen, LBNL - November 2020
      +// --------------------------------------------------------------------
      +
      +#if !defined(G4PROFILER_ICC_)
      +#  define G4PROFILER_ICC_ 1
      +
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +#  include 
      +
      +// for index_sequence implementation
      +#  include "PTL/Globals.hh"
      +
      +#  if defined(GEANT4_USE_TIMEMORY)
      +#    include 
      +#  endif
      +
      +#  if !defined(GEANT4_FOLD_EXPRESSION)
      +#    define GEANT4_FOLD_EXPRESSION(...)                                        \
      +      ::G4Impl::consume_parameters(                                            \
      +        ::std::initializer_list{ (__VA_ARGS__, 0)... })
      +#  endif
      +
      +#  if !defined(G4PROFILER_ARG_SET)
      +#    define G4PROFILER_ARG_SET(...) G4TypeList<__VA_ARGS__>
      +#  endif
      +
      +//----------------------------------------------------------------------------//
      +// lightweight (w.r.t. compile-time) alternative to std::tuple that doesn't
      +// store anything and cannot be instantiated because it has no definition. This
      +// guards against meta-programming mistakes where:
      +//    std::function
      +// ends up as
      +//    std::function)>
      +template 
      +struct G4TypeList;
      +
      +// this is used in G4Impl::Functors to add a common set of arguments to all of
      +// the functors
      +template 
      +struct G4CommonTypeList;
      +
      +//--------------------------------------------------------------------------------------//
      +//
      +template 
      +struct G4TypeListSize;
      +
      +template 
      +struct G4TypeListSize>
      +{
      +  static constexpr size_t value = sizeof...(Types);
      +};
      +
      +template 
      +struct G4TypeListSize>
      +{
      +  static constexpr size_t value = std::tuple_size>::value;
      +};
      +
      +namespace G4Impl
      +{
      +  template 
      +  std::string demangle()
      +  {
      +#  if defined(GEANT4_USE_TIMEMORY)
      +    return tim::demangle();
      +#  else
      +    return typeid(Tp).name();
      +#  endif
      +  }
      +
      +  template 
      +  void consume_parameters(Tp&&...)
      +  {}
      +  //------------------------------------------------------------------------//
      +  // don't provide a definition that works without G4TypeList
      +  template 
      +  struct Functors;
      +  //------------------------------------------------------------------------//
      +  template 
      +  struct Functors>
      +  {
      +    using type = std::function;
      +  };
      +  //------------------------------------------------------------------------//
      +  template 
      +  struct Functors, G4TypeList>
      +  {
      +    using type = std::function;
      +  };
      +  //------------------------------------------------------------------------//
      +  template 
      +  struct Functors, Tail...>>
      +  {
      +    using type = std::tuple,
      +                            typename Functors::type...>;
      +  };
      +  //------------------------------------------------------------------------//
      +  template 
      +  struct Functors,
      +                  G4TypeList, Tail...>>
      +  {
      +    using type = std::tuple<
      +      std::function,
      +      typename Functors, Tail>::type...>;
      +  };
      +  //------------------------------------------------------------------------//
      +  template 
      +  using Functors_t = typename Functors::type;
      +
      +}  // namespace G4Impl
      +
      +//
      +//  this allows the generic invocation or assignment of a functor
      +//
      +template 
      +struct FuncHandler
      +{
      +  using this_type = FuncHandler;
      +
      +  // until Geant4 updates to C++14 as a minimum
      +  template 
      +  using decay_t = typename std::decay::type;
      +  template 
      +  using enable_if_t = typename std::enable_if::type;
      +  template 
      +  using index_sequence = PTL::mpl::index_sequence;
      +  template 
      +  using make_index_sequence = PTL::mpl::make_index_sequence;
      +
      +  static constexpr size_t size = std::tuple_size::value;
      +
      +  FuncHandler(FuncT& _functors)
      +    : m_functors(_functors)
      +  {}
      +
      +  // overloading the assignment operator will let users
      +  // be able to use one method for the G4ProfilerConfig
      +  // despite the potential variants. Thus this is valid:
      +  //
      +  // GetLabelFunctor() = [](int i) { return std::to_string(i); }
      +  // GetLabelFunctor() = [](float v) { return std::to_string(v); }
      +  //
      +  // but will only compile for types that are explicitly
      +  // supported --> the assign function iterates through the
      +  // specific variants at compile-time
      +  template 
      +  void operator=(Func&& f)
      +  {
      +    assign(m_functors, std::forward(f), 0, make_index_sequence{});
      +  }
      +
      + private:
      +  FuncT& m_functors;
      +
      +  template 
      +  static enable_if_t, bool>::value, Tp>
      +  get_default_return_value()
      +  {
      +    return false;
      +  }
      +
      +  template 
      +  static enable_if_t, std::string>::value, Tp>
      +  get_default_return_value()
      +  {
      +    // this may return an ugly mangled name but will at least but useful
      +    // and can be demangled with c++filt
      +    return std::string("label-functor-not-set-for-") + G4Impl::demangle();
      +  }
      +
      +  template 
      +  static enable_if_t>::value, Tp>
      +  get_default_return_value()
      +  {
      +    return nullptr;
      +  }
      +
      + private:
      +  using return_t = decay_t;
      +
      +  //
      +  //  NOTE: All references to "iterations" in the comments
      +  //  below refer to compile-time iterations, which are
      +  //  implemented through recusion below. Iterations stop
      +  //  when a valid statement has been found and thus necessitates
      +  //  four versions of the same function: two of these functions
      +  //  handle the end of the recursion 'sizeof...(Tail) == 0'
      +  //  and the first of these functions (1.a) is used if a valid
      +  //  statement is found and the second (1.b, if reached) introduces
      +  //  a compilation error. The third and fourth start the iteration
      +  //  when 'sizeof...(Tail) > 0'. If a valid statement is found
      +  //  in the third function (2.a), recursion stops. If not, the
      +  //  iteration is continued to the next index via the fourth
      +  //  function (2.b).
      +  //
      +
      +  // INVOKE 1.a
      +  //
      +  // this is the end of the iteration through the potential
      +  // functor variants and the trailing '->' tests whether the
      +  // functor can be called with the given arguments. The
      +  // 'int' as the second parameter ensures (through overload
      +  // resolution rules) that this gets tested before the
      +  // function after this (1.b).
      +  // If the size of 'FuncT' is equal to 1, then this is also
      +  // the start of the iteration through the potential functor
      +  // variants.
      +  template  = 0>
      +  static auto invoke(Tp& _obj, int, index_sequence,
      +                     Args&&... _args)
      +    -> decltype(std::get(_obj)(std::forward(_args)...), return_t{})
      +  {
      +    // if the functor has been set, then execute it
      +    if(std::get(_obj))
      +      return std::get(_obj)(std::forward(_args)...);
      +    else
      +    {
      +      std::stringstream ss;
      +      ss << "Error! Functor "
      +         << G4Impl::demangle(_obj))>()
      +         << " was not set for " << G4Impl::demangle();
      +      throw std::runtime_error(ss.str());
      +    }
      +    // the default for booleans should return false
      +    return get_default_return_value();
      +  }
      +
      +  // INVOKE 1.b
      +  //
      +  // this is the end of the iteration through the potential
      +  // functor variants and if this function is reached during
      +  // compile-time, this means that the given arguments are
      +  // not supported by any of the functors and will fail to
      +  // compile. The 'long' as the second parameter ensures that
      +  // it has lower precedence than the one above
      +  template  = 0>
      +  static auto invoke(Tp&, long, index_sequence, Args&&...)
      +    -> return_t
      +  {
      +    // this will cause a failure at compile-time.
      +    // this ensures that this static assert is dependent
      +    // on this function getting instantiated, simply putting
      +    // 'false' here would result in compile-time failure
      +    // even if no code ever instantiated this function
      +    static_assert(!std::is_same::value, "Error! No valid functor!");
      +    throw std::runtime_error(
      +      "Error! No valid functor! This should have caused a compilation error!");
      +    return return_t{};
      +  }
      +
      +  // INVOKE 2.a
      +  //
      +  // If the size of 'FuncT' is greater than one, this is the
      +  // start of the iteration through the potential functor variants.
      +  // This version will be used if the X in '-> decltype(X, Y)'
      +  // is valid. If it is not valid, then overload resolution
      +  // rules will dictate that the compiler will move on to the
      +  // 'invoke' member function 2.b
      +  template  0), int> = 0>
      +  static auto invoke(Tp& _obj, int, index_sequence,
      +                     Args&&... _args)
      +    -> decltype(std::get(_obj)(std::forward(_args)...), return_t{})
      +  {
      +    return std::get(_obj)(std::forward(_args)...);
      +  }
      +
      +  // INVOKE 2.b
      +  //
      +  // If the above test was not valid, we discard the current index
      +  // ('Idx') and proceed to the next index. If there is only
      +  // one index remaining, then this will call proceed to the
      +  // first invoke member function (1.a). If there are multiple
      +  // indexes remaining, then this will proceed to the previous
      +  // invoke member function (2.a) and this will continue until
      +  // a valid match is found or will fail to compile.
      +  template  0), int> = 0>
      +  static auto invoke(Tp& _obj, long, index_sequence,
      +                     Args&&... _args)
      +    -> decltype(invoke(_obj, 0, index_sequence{},
      +                       std::forward(_args)...))
      +  {
      +    return invoke(_obj, 0, index_sequence{},
      +                  std::forward(_args)...);
      +  }
      +
      + private:
      +  // this uses the same principles as the invoke member function.
      +  // See the comments there.
      +  template  = 0>
      +  static auto assign(LhsT& _lhs, RhsT&& _rhs, int, index_sequence)
      +    -> decltype((std::get(_lhs) = std::forward(_rhs)), void())
      +  {
      +    std::get(_lhs) = std::forward(_rhs);
      +  }
      +
      +  // this uses the same principles as the invoke member function.
      +  // See the comments there.
      +  template  = 0>
      +  static void assign(LhsT&, RhsT&&, long, index_sequence)
      +  {
      +    // this will cause a failure at compile-time.
      +    // this ensures that this static assert is dependent
      +    // on this function getting instantiated, simply putting
      +    // 'false' here would result in compile-time failure
      +    // even if no code ever instantiated this function
      +    static_assert(!std::is_same::value,
      +                  "Error! No valid functor assignment!");
      +    throw std::runtime_error(
      +      "Error! No valid functor! This should have caused a compilation error!");
      +  }
      +
      +  // this uses the same principles as the invoke member function.
      +  // See the comments there.
      +  template  0), int> = 0>
      +  static auto assign(LhsT& _lhs, RhsT&& _rhs, int, index_sequence)
      +    -> decltype((std::get(_lhs) = std::forward(_rhs)), void())
      +  {
      +    std::get(_lhs) = std::forward(_rhs);
      +  }
      +
      +  // this uses the same principles as the invoke member function.
      +  // See the comments there.
      +  template  0), int> = 0>
      +  static void assign(LhsT& _lhs, RhsT&& _rhs, long,
      +                     index_sequence)
      +  {
      +    assign(_lhs, std::forward(_rhs), 0, index_sequence{});
      +  }
      +
      + public:
      +  // overloading the call operator makes it generic to call
      +  // the functors but will only compile for types that are
      +  // explicitly supported --> the invoke function iterates
      +  // through the specific variants at compile-time to
      +  // ensure using SFINAE
      +  template 
      +  auto operator()(Args&&... _args)
      +    -> decltype(std::declval().invoke(std::declval(), 0,
      +                                                 make_index_sequence{},
      +                                                 std::forward(_args)...))
      +  {
      +    return invoke(m_functors, 0, make_index_sequence{},
      +                  std::forward(_args)...);
      +  }
      +};
      +
      +//----------------------------------------------------------------------------//
      +
      +#endif
      diff --git a/source/global/management/include/G4SIunits.hh b/source/global/management/include/G4SIunits.hh
      index 0ae88789ac..ba8edf3ca4 100644
      --- a/source/global/management/include/G4SIunits.hh
      +++ b/source/global/management/include/G4SIunits.hh
      @@ -175,7 +175,7 @@ static constexpr double nanoampere  = 1.e-9 * ampere;
       // Electric charge [Q]
       //
       static constexpr double coulomb = ampere * second;
      -static constexpr double e_SI  = 1.602176487e-19;  // positron charge in coulomb
      +static constexpr double e_SI  = 1.602176634e-19;  // positron charge in coulomb
       static constexpr double eplus = e_SI * coulomb;   // positron charge
       
       //
      diff --git a/source/global/management/include/G4TiMemory.hh b/source/global/management/include/G4TiMemory.hh
      index 92cb0d5d0d..41e2b3f1ea 100644
      --- a/source/global/management/include/G4TiMemory.hh
      +++ b/source/global/management/include/G4TiMemory.hh
      @@ -41,30 +41,39 @@
       
       #include "globals.hh"
       
      +#include 
      +#include 
      +#include 
      +#include 
      +
       //----------------------------------------------------------------------------//
      +
       #ifdef GEANT4_USE_TIMEMORY
       
       #  include 
       
      -using G4AutoTimer = tim::auto_timer;
      +namespace g4tim
      +{
      +using namespace tim;
      +}  // namespace g4tim
      +
      +using G4AutoTimer = g4tim::auto_timer;
       
       #else
       
       #  include 
       #  include 
       
      -namespace tim
      +namespace g4tim
       {
      -  template 
      -  void timemory_init(_Args...)
      -  {}
      -  inline void timemory_finalize() {}
      -  inline void print_env() {}
       
         /// this provides "functionality" for *_HANDLE macros
         /// and can be omitted if these macros are not utilized
         struct dummy
         {
      +    template 
      +    static void configure(_Args&&...)
      +    {}
           template 
           dummy(_Args&&...)
           {}
      @@ -74,10 +83,12 @@ namespace tim
           dummy& operator=(const dummy&) = default;
           dummy& operator=(dummy&&) = default;
       
      +    void record() {}
           void start() {}
           void stop() {}
      -    void conditional_start() {}
      -    void conditional_stop() {}
      +    void push() {}
      +    void pop() {}
      +    void reset() {}
           void report_at_exit(bool) {}
           template 
           void mark_begin(_Args&&...)
      @@ -91,7 +102,7 @@ namespace tim
           }
         };
       
      -}  // namespace tim
      +}  // namespace g4tim
       
       // startup/shutdown/configure
       #  define TIMEMORY_INIT(...)
      @@ -128,8 +139,8 @@ namespace tim
       #  define TIMEMORY_CALIPER_TYPE_APPLY(...)
       
       // get an object
      -#  define TIMEMORY_BLANK_HANDLE(...) tim::dummy()
      -#  define TIMEMORY_BASIC_HANDLE(...) tim::dummy()
      +#    define TIMEMORY_BLANK_HANDLE(...) g4tim::dummy()
      +#    define TIMEMORY_BASIC_HANDLE(...) g4tim::dummy()
       #  define TIMEMORY_HANDLE(...) tim::dummy()
       
       // get a pointer to an object
      @@ -152,7 +163,7 @@ namespace tim
       #  define TIMEMORY_DEBUG_BASIC_AUTO_TIMER(...)
       #  define TIMEMORY_DEBUG_AUTO_TIMER(...)
       
      -using G4AutoTimer = tim::dummy;
      +using G4AutoTimer = g4tim::dummy;
       
       #endif
       
      diff --git a/source/global/management/include/G4Types.hh b/source/global/management/include/G4Types.hh
      index 0e789fdb2e..334815d579 100644
      --- a/source/global/management/include/G4Types.hh
      +++ b/source/global/management/include/G4Types.hh
      @@ -59,13 +59,16 @@
       //
       #  if defined G4GLOB_ALLOC_EXPORT
       #    define G4GLOB_DLL G4DLLEXPORT
      +#    define G4MTGLOB_DLL __declspec(dllexport)
       #  else
       #    define G4GLOB_DLL G4DLLIMPORT
      +#    define G4MTGLOB_DLL __declspec(dllimport)
       #  endif
       #else
       #  define G4DLLEXPORT
       #  define G4DLLIMPORT
       #  define G4GLOB_DLL
      +#  define G4MTGLOB_DLL
       #endif
       
       #include 
      diff --git a/source/global/management/include/G4Version.hh b/source/global/management/include/G4Version.hh
      index 5545a20619..df55d0a505 100644
      --- a/source/global/management/include/G4Version.hh
      +++ b/source/global/management/include/G4Version.hh
      @@ -44,7 +44,7 @@
       #endif
       
       #ifndef G4VERSION_TAG
      -#  define G4VERSION_TAG "$Name: geant4-10-07-beta-01 $"
      +#  define G4VERSION_TAG "$Name: geant4-10-07 $"
       #endif
       
       // as variables
      @@ -53,10 +53,10 @@
       #include "G4Types.hh"
       
       #ifdef G4MULTITHREADED
      -static const G4String G4Version = "$Name: geant4-10-07-beta-01 [MT]$";
      +static const G4String G4Version = "$Name: geant4-10-07 [MT]$";
       #else
      -static const G4String G4Version = "$Name: geant4-10-07-beta-01 $";
      +static const G4String G4Version = "$Name: geant4-10-07 $";
       #endif
      -static const G4String G4Date = "(26-June-2020)";
      +static const G4String G4Date = "(4-December-2020)";
       
       #endif
      diff --git a/source/global/management/include/G4coutDestination.hh b/source/global/management/include/G4coutDestination.hh
      index 1676020857..9841e55358 100644
      --- a/source/global/management/include/G4coutDestination.hh
      +++ b/source/global/management/include/G4coutDestination.hh
      @@ -44,6 +44,7 @@
       class G4coutDestination
       {
        public:
      +
         G4coutDestination() = default;
         virtual ~G4coutDestination();
         // Note: limitation on ICC for MIC cannot use 'default'
      @@ -83,7 +84,8 @@ class G4coutDestination
         // Transformers cannot remove an error message from stream
       
        protected:
      -  G4coutDestination* masterG4coutDestination = nullptr;
      +
      +  G4MTGLOB_DLL static G4coutDestination* masterG4coutDestination;
         // For MT: if master G4coutDestination derived class wants to
         // intercept the thread outputs, derived class should set this pointer.
         // Needed for some G4UIsession like GUIs
      diff --git a/source/global/management/include/tls.hh b/source/global/management/include/tls.hh
      index 5c5e2c20be..98f3b326c4 100644
      --- a/source/global/management/include/tls.hh
      +++ b/source/global/management/include/tls.hh
      @@ -38,7 +38,7 @@
       #  define G4_TLS 1
       
       #  if defined(G4MULTITHREADED)
      -#    if(defined(__MACH__) && defined(__clang__) && defined(__x86_64__)) ||     \
      +#    if(defined(__MACH__) && defined(__clang__)) ||                            \
             (defined(__linux__) && defined(__clang__))
       #      define G4ThreadLocalStatic static thread_local
       #      define G4ThreadLocal thread_local
      diff --git a/source/global/management/sources.cmake b/source/global/management/sources.cmake
      index e11bce49d8..8bc897e811 100644
      --- a/source/global/management/sources.cmake
      +++ b/source/global/management/sources.cmake
      @@ -42,6 +42,7 @@ geant4_define_module(NAME G4globman
           G4AllocatorList.hh
           G4ApplicationState.hh
           G4AutoLock.hh
      +    G4Backtrace.hh
           G4BuffercoutDestination.hh
           G4Cache.hh
           G4CacheDetails.hh
      @@ -81,6 +82,8 @@ geant4_define_module(NAME G4globman
           G4Physics2DVector.hh
           G4Physics2DVector.icc
           G4Pow.hh
      +    G4Profiler.hh
      +    G4Profiler.icc
           G4ReferenceCountedHandle.hh
           G4RotationMatrix.hh
           G4SIunits.hh
      @@ -138,6 +141,7 @@ geant4_define_module(NAME G4globman
           G4PhysicsVector.cc
           G4Physics2DVector.cc
           G4Pow.cc
      +    G4Profiler.cc
           G4ReferenceCountedHandle.cc
           G4SliceTimer.cc
           G4StateManager.cc
      @@ -150,12 +154,11 @@ geant4_define_module(NAME G4globman
         LINK_LIBRARIES
           ${CLHEP_LIBRARIES}
           ${timemory_LIBRARIES}
      +    ${PTL_LIBRARIES}  # for index_sequence implementation. Remove after C++14
       )
       
       # List any source specific properties here
      -# For new system, must explicitly add path for generated header 
      -if(GEANT4_USE_NEW_CMAKE)
      -  geant4_module_include_directories(G4globman
      -    PUBLIC $
      -    )
      -endif()
      +# For new system, must explicitly add path for generated header
      +geant4_module_include_directories(G4globman
      +  PUBLIC $
      +)
      diff --git a/source/global/management/src/G4PhysicsLinearVector.cc b/source/global/management/src/G4PhysicsLinearVector.cc
      index f6f17781c6..097ffbeb5a 100644
      --- a/source/global/management/src/G4PhysicsLinearVector.cc
      +++ b/source/global/management/src/G4PhysicsLinearVector.cc
      @@ -61,7 +61,7 @@ G4PhysicsLinearVector::G4PhysicsLinearVector(G4double theEmin, G4double theEmax,
         }
         type = T_G4PhysicsLinearVector;
       
      -  invdBin = 1. / ((theEmax - theEmin) / (G4double) numberOfNodes);
      +  invdBin = 1. / ((theEmax - theEmin) / (G4double) (numberOfNodes - 1));
         baseBin = theEmin * invdBin;
       
         dataVector.reserve(numberOfNodes);
      diff --git a/source/global/management/src/G4PhysicsLogVector.cc b/source/global/management/src/G4PhysicsLogVector.cc
      index 3965c8c2f2..ac791f0ac9 100644
      --- a/source/global/management/src/G4PhysicsLogVector.cc
      +++ b/source/global/management/src/G4PhysicsLogVector.cc
      @@ -63,7 +63,7 @@ G4PhysicsLogVector::G4PhysicsLogVector(G4double theEmin, G4double theEmax,
         }
         type = T_G4PhysicsLogVector;
       
      -  invdBin = 1. / (G4Log(theEmax / theEmin) / (G4double) numberOfNodes);
      +  invdBin = 1. / (G4Log(theEmax / theEmin) / (G4double) (numberOfNodes - 1));
         baseBin = G4Log(theEmin) * invdBin;
       
         dataVector.reserve(numberOfNodes);
      diff --git a/source/global/management/src/G4PhysicsOrderedFreeVector.cc b/source/global/management/src/G4PhysicsOrderedFreeVector.cc
      index f12c59e0d0..73ad909103 100644
      --- a/source/global/management/src/G4PhysicsOrderedFreeVector.cc
      +++ b/source/global/management/src/G4PhysicsOrderedFreeVector.cc
      @@ -57,6 +57,30 @@ G4PhysicsOrderedFreeVector::G4PhysicsOrderedFreeVector(G4double* Energies,
         }
       }
       
      +// --------------------------------------------------------------------
      +G4PhysicsOrderedFreeVector::G4PhysicsOrderedFreeVector(
      +  const std::vector& Energies, const std::vector& Values)
      +  : G4PhysicsVector()
      +{
      +  if(Energies.size() != Values.size())
      +  {
      +    G4ExceptionDescription ed;
      +    ed << "The sizes of the two std::vector arguments must be the same";
      +    G4Exception("G4PhysicsOrderedFreeVector::G4PhysicsOrderedFreeVector()",
      +                "glob04", FatalException, ed);
      +  }
      +
      +  type = T_G4PhysicsOrderedFreeVector;
      +
      +  dataVector.reserve(Energies.size());
      +  binVector.reserve(Energies.size());
      +
      +  for(std::size_t i = 0; i < Energies.size(); ++i)
      +  {
      +    InsertValues(Energies[i], Values[i]);
      +  }
      +}
      +
       // --------------------------------------------------------------------
       G4PhysicsOrderedFreeVector::~G4PhysicsOrderedFreeVector() {}
       
      diff --git a/source/global/management/src/G4Profiler.cc b/source/global/management/src/G4Profiler.cc
      new file mode 100644
      index 0000000000..b2bb80cdbf
      --- /dev/null
      +++ b/source/global/management/src/G4Profiler.cc
      @@ -0,0 +1,588 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4Profiler class implementation
      +//
      +// Author: J.Madsen (LBL), Aug 2020
      +// --------------------------------------------------------------------
      +
      +#include "G4Profiler.hh"
      +#include "G4TiMemory.hh"
      +
      +#if defined(GEANT4_USE_TIMEMORY)
      +#  include 
      +#endif
      +
      +#include 
      +#include 
      +
      +//---------------------------------------------------------------------------//
      +
      +typename G4Profiler::array_type& G4Profiler::GetEnabled()
      +{
      +  static array_type _instance = []() {
      +    array_type _tmp{};
      +    _tmp.fill(false);
      +    // environment settings introduce the defaults
      +    // but will be overridden by messenger and/or command line
      +    _tmp.at(G4ProfileType::Run)   = G4GetEnv("G4PROFILE_RUN", true);
      +    _tmp.at(G4ProfileType::Event) = G4GetEnv("G4PROFILE_EVENT", false);
      +    _tmp.at(G4ProfileType::Track) = G4GetEnv("G4PROFILE_TRACK", false);
      +    _tmp.at(G4ProfileType::Step)  = G4GetEnv("G4PROFILE_STEP", false);
      +    _tmp.at(G4ProfileType::User)  = G4GetEnv("G4PROFILE_USER", true);
      +    return _tmp;
      +  }();
      +  return _instance;
      +}
      +
      +//---------------------------------------------------------------------------//
      +
      +void G4Profiler::Configure(int argc, char** argv)
      +{
      +#if defined(GEANT4_USE_TIMEMORY)
      +  tim::timemory_init(argc, argv);
      +  std::vector _args;
      +  for(int i = 0; i < argc; ++i)
      +    _args.push_back(argv[i]);
      +  Configure(_args);
      +#else
      +  G4Impl::consume_parameters(argc, argv);
      +#endif
      +}
      +//---------------------------------------------------------------------------//
      +
      +void G4Profiler::Configure(ArgumentParser& parser, int argc, char** argv)
      +{
      +#if defined(GEANT4_USE_TIMEMORY)
      +  tim::timemory_init(argc, argv);
      +  std::vector _args;
      +  for(int i = 0; i < argc; ++i)
      +    _args.push_back(argv[i]);
      +  Configure(parser, _args);
      +#else
      +  G4Impl::consume_parameters(parser, argc, argv);
      +#endif
      +}
      +
      +//---------------------------------------------------------------------------//
      +
      +void G4Profiler::Configure(const std::vector& args)
      +{
      +#if defined(GEANT4_USE_TIMEMORY)
      +  if(args.empty())
      +    return;
      +  ArgumentParser p{ args.at(0) };
      +  Configure(p, args);
      +#else
      +  G4Impl::consume_parameters(args);
      +#endif
      +}
      +
      +//---------------------------------------------------------------------------//
      +
      +void G4Profiler::Configure(ArgumentParser& parser,
      +                           const std::vector& args)
      +{
      +#if defined(GEANT4_USE_TIMEMORY)
      +  using parser_t     = ArgumentParser;
      +  using parser_err_t = typename parser_t::result_type;
      +
      +  if(args.empty())
      +    return;
      +
      +  static std::mutex mtx;
      +  std::unique_lock lk(mtx);
      +
      +  static auto tid = std::this_thread::get_id();
      +  if(std::this_thread::get_id() != tid)
      +    return;
      +
      +  // std::cout << "Arguments:";
      +  // for(auto itr : args)
      +  //  std::cout << " " << itr;
      +  // std::cout << std::endl;
      +
      +  auto help_action = [](parser_t& p) {
      +    p.print_help();
      +    exit(EXIT_FAILURE);
      +  };
      +
      +  parser.enable_help();
      +  parser.on_error([=](parser_t& p, parser_err_t _err) {
      +    std::cerr << _err << std::endl;
      +    help_action(p);
      +  });
      +
      +  auto get_bool = [](const std::string& _str, bool _default) {
      +    if(_str.empty())
      +      return _default;
      +    using namespace std::regex_constants;
      +    const auto regex_config = egrep | icase;
      +    if(std::regex_match(_str, std::regex("on|true|yes|1", regex_config)))
      +      return true;
      +    else if(std::regex_match(_str, std::regex("off|false|no|0", regex_config)))
      +      return false;
      +    return _default;
      +  };
      +  //
      +  //  Collection control
      +  //
      +  parser.add_argument()
      +    .names({ "-p", "--profile" })
      +    .description("Profiler modes")
      +    .choices({ "run", "event", "track", "step", "user" })
      +    .action([&](parser_t& p) {
      +      using namespace std::regex_constants;
      +      const auto regex_config = egrep | icase;
      +      for(auto&& itr : p.get>("profile"))
      +      {
      +        if(std::regex_match(itr, std::regex("run", regex_config)))
      +          G4Profiler::SetEnabled(G4ProfileType::Run, true);
      +        else if(std::regex_match(itr, std::regex("event", regex_config)))
      +          G4Profiler::SetEnabled(G4ProfileType::Event, true);
      +        else if(std::regex_match(itr, std::regex("track", regex_config)))
      +          G4Profiler::SetEnabled(G4ProfileType::Track, true);
      +        else if(std::regex_match(itr, std::regex("step", regex_config)))
      +          G4Profiler::SetEnabled(G4ProfileType::Step, true);
      +        else if(std::regex_match(itr, std::regex("user", regex_config)))
      +          G4Profiler::SetEnabled(G4ProfileType::User, true);
      +      }
      +    });
      +  //
      +  //  Component controls
      +  //
      +  parser.add_argument()
      +    .names({ "-r", "--run-components" })
      +    .description("Components for run profiling (see 'timemory-avail -s')")
      +    .action([&](parser_t& p) {
      +      G4RunProfiler::reset();
      +      tim::configure(
      +        p.get>("run-components"));
      +    });
      +  parser.add_argument()
      +    .names({ "-e", "--event-components" })
      +    .description("Components for event profiling (see 'timemory-avail -s')")
      +    .action([&](parser_t& p) {
      +      G4EventProfiler::reset();
      +      tim::configure(
      +        p.get>("event-components"));
      +    });
      +  parser.add_argument()
      +    .names({ "-t", "--track-components" })
      +    .description("Components for track profiling (see 'timemory-avail -s')")
      +    .action([&](parser_t& p) {
      +      G4TrackProfiler::reset();
      +      tim::configure(
      +        p.get>("track-components"));
      +    });
      +  parser.add_argument()
      +    .names({ "-s", "--step-components" })
      +    .description("Components for step profiling (see 'timemory-avail -s')")
      +    .action([&](parser_t& p) {
      +      G4StepProfiler::reset();
      +      tim::configure(
      +        p.get>("step-components"));
      +    });
      +  parser.add_argument()
      +    .names({ "-u", "--user-components" })
      +    .description("Components for user profiling (see 'timemory-avail -s')")
      +    .action([&](parser_t& p) {
      +      G4StepProfiler::reset();
      +      tim::configure(
      +        p.get>("user-components"));
      +    });
      +  //
      +  //  Display controls
      +  //
      +  parser.add_argument()
      +    .names({ "-H", "--hierarchy", "--tree" })
      +    .description("Display the results as a call-stack hierarchy.")
      +    .max_count(1)
      +    .action([&](parser_t& p) {
      +      tim::settings::flat_profile() =
      +        !get_bool(p.get("tree"), true);
      +    });
      +  parser.add_argument()
      +    .names({ "-F", "--flat" })
      +    .description("Display the results as a flat call-stack")
      +    .max_count(1)
      +    .action([&](parser_t& p) {
      +      tim::settings::flat_profile() =
      +        get_bool(p.get("flat"), true);
      +    });
      +  parser.add_argument()
      +    .names({ "-T", "--timeline" })
      +    .description(
      +      "Do not merge duplicate entries at the same call-stack position")
      +    .max_count(1)
      +    .action([&](parser_t& p) {
      +      tim::settings::timeline_profile() =
      +        get_bool(p.get("timeline"), true);
      +    });
      +  parser.add_argument()
      +    .names({ "--per-thread" })
      +    .description(
      +      "Display the results for each individual thread (default: aggregation)")
      +    .max_count(1)
      +    .action([&](parser_t& p) {
      +      tim::settings::flat_profile() =
      +        get_bool(p.get("per-thread"), true);
      +    });
      +  parser.add_argument()
      +    .names({ "--per-event" })
      +    .description("Each G4Event is a unique entry")
      +    .max_count(1)
      +    .action([&](parser_t& p) {
      +      tim::settings::timeline_profile() =
      +        get_bool(p.get("per-event"), true);
      +    });
      +  //
      +  //  Output controls
      +  //
      +  parser.add_argument()
      +    .names({ "-D", "--dart" })
      +    .description("Enable Dart output (CTest/CDash data tracking)")
      +    .max_count(1)
      +    .action([&](parser_t& p) {
      +      tim::settings::dart_output() = get_bool(p.get("dart"), true);
      +    });
      +  parser.add_argument()
      +    .names({ "-J", "--json" })
      +    .description("Enable JSON output")
      +    .max_count(1)
      +    .action([&](parser_t& p) {
      +      tim::settings::json_output() = get_bool(p.get("json"), true);
      +    });
      +  parser.add_argument()
      +    .names({ "-P", "--plot" })
      +    .description("Plot the JSON output")
      +    .max_count(1)
      +    .action([&](parser_t& p) {
      +      tim::settings::plot_output() = get_bool(p.get("plot"), true);
      +    });
      +  parser.add_argument()
      +    .names({ "-X", "--text" })
      +    .description("Enable TEXT output")
      +    .max_count(1)
      +    .action([&](parser_t& p) {
      +      tim::settings::text_output() = get_bool(p.get("text"), true);
      +    });
      +  parser.add_argument()
      +    .names({ "-C", "--cout" })
      +    .description("Enable output to terminal")
      +    .max_count(1)
      +    .action([&](parser_t& p) {
      +      tim::settings::cout_output() = get_bool(p.get("cout"), true);
      +    });
      +  parser.add_argument()
      +    .names({ "-O", "--output-path" })
      +    .description("Set the output directory")
      +    .count(1)
      +    .action([&](parser_t& p) {
      +      tim::settings::output_path() = p.get("output-path");
      +    });
      +  parser.add_argument()
      +    .names({ "-W", "--hw-counters" })
      +    .description(
      +      "Set the hardware counters to collect (see 'timemory-avail -H')")
      +    .action([&](parser_t& p) {
      +      tim::settings::papi_events() = p.get("hw-counters");
      +    });
      +
      +  tim::settings::time_output() = true;
      +  tim::settings::time_format() = "%F_%I.%M_%p";
      +
      +  auto err = parser.parse(args);
      +  if(err)
      +  {
      +    std::cout << "Error! " << err << std::endl;
      +    help_action(parser);
      +  }
      +
      +#else
      +  G4Impl::consume_parameters(parser, args);
      +#endif
      +}
      +
      +//---------------------------------------------------------------------------//
      +
      +void G4Profiler::Finalize()
      +{
      +#if defined(GEANT4_USE_TIMEMORY)
      +  // generally safe to call multiple times but just in case
      +  // it is not necessary to call from worker threads, calling
      +  // once on master will merge any threads that accumulated
      +  // results. If a thread is destroyed, before finalize is
      +  // called on master thread, then it will merge itself into
      +  // the master thread before terminating. The biggest issue
      +  // is when finalize is never called on any threads (including
      +  // the master) so finalization happens after main exits. When
      +  // this happens, the order that data gets deleted is very
      +  // hard to predict so it commonly results in a segfault. Thus,
      +  // if the user does not call this function and does not
      +  // delete G4RunManager, a segfault is quite likely.
      +  static thread_local bool _once = false;
      +  if(!_once)
      +    tim::timemory_finalize();
      +  _once = true;
      +#endif
      +}
      +
      +//---------------------------------------------------------------------------//
      +
      +template 
      +template 
      +typename G4ProfilerConfig::template PersistentSettings&
      +G4ProfilerConfig::GetPersistentFallback()
      +{
      +  // G4RunManager::ConfigureProfilers() assigns defaults to these lambdas
      +  // based on environment variables. The users should (generally) not modify
      +  // these.
      +  static PersistentSettings _instance = PersistentSettings{};
      +  return _instance;
      +}
      +
      +//---------------------------------------------------------------------------//
      +
      +template 
      +template 
      +typename G4ProfilerConfig::template PersistentSettings&
      +G4ProfilerConfig::GetPersistent()
      +{
      +  //
      +  //  The pointers here automatically initialize on the first
      +  //  invocation on a thread and a reference is returned so they
      +  //  can be cleanly "leaked" at the application termination. Assignment
      +  //  is thread-safe and this scheme avoids having to deal with getters
      +  //  and setters. It is designed such that we can set defaults but
      +  //  the user can override them at any time.
      +  //
      +  // the first global instance copies from the fallback rountines, which are
      +  // assigned defaults in G4RunManager::ConfigureProfilers() but if the user
      +  // assigns new settings before creating G4RunManager, those defaults will
      +  // be ignored
      +  static PersistentSettings* _instance =
      +    new PersistentSettings(GetPersistentFallback());
      +  static thread_local PersistentSettings* _tlinstance = [=]() {
      +    static std::mutex mtx;
      +    std::unique_lock lk(mtx);
      +    // If this is the primary thread, just return the global instance from
      +    // above. Modifying that instance will result in all threads created later
      +    // to inherit those settings
      +    static bool _first = true;
      +    if(_first)  // below uses comma operator to assign to false before return
      +      return ((_first = false), _instance);
      +    // if not first, make a copy from the primary thread
      +    return new PersistentSettings(*_instance);
      +  }();
      +  return *_tlinstance;
      +}
      +
      +// ----------------------------------------------------------------------
      +
      +template 
      +G4ProfilerConfig::~G4ProfilerConfig()
      +{
      +  delete m_bundle;
      +}
      +
      +//----------------------------------------------------------------------------//
      +// primary (utilized) versions
      +//
      +template 
      +typename G4ProfilerConfig::QueryHandler_t
      +G4ProfilerConfig::GetQueryFunctor()
      +{
      +  return QueryHandler_t{ GetPersistent().m_functor };
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +template 
      +typename G4ProfilerConfig::LabelHandler_t
      +G4ProfilerConfig::GetLabelFunctor()
      +{
      +  return LabelHandler_t{ GetPersistent().m_functor };
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +template 
      +typename G4ProfilerConfig::ToolHandler_t
      +G4ProfilerConfig::GetToolFunctor()
      +{
      +  return ToolHandler_t{ GetPersistent().m_functor };
      +}
      +
      +//----------------------------------------------------------------------------//
      +// fallback versions
      +//
      +template 
      +typename G4ProfilerConfig::QueryHandler_t
      +G4ProfilerConfig::GetFallbackQueryFunctor()
      +{
      +  return QueryHandler_t{
      +    GetPersistentFallback().m_functor
      +  };
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +template 
      +typename G4ProfilerConfig::LabelHandler_t
      +G4ProfilerConfig::GetFallbackLabelFunctor()
      +{
      +  return LabelHandler_t{
      +    GetPersistentFallback().m_functor
      +  };
      +}
      +
      +//----------------------------------------------------------------------------//
      +
      +template 
      +typename G4ProfilerConfig::ToolHandler_t
      +G4ProfilerConfig::GetFallbackToolFunctor()
      +{
      +  return ToolHandler_t{ GetPersistentFallback().m_functor };
      +}
      +
      +//---------------------------------------------------------------------------//
      +
      +class G4Run;
      +class G4Event;
      +class G4Track;
      +class G4Step;
      +
      +using G4ProfType      = G4ProfileType;
      +using RunProfConfig   = G4ProfilerConfig;
      +using EventProfConfig = G4ProfilerConfig;
      +using TrackProfConfig = G4ProfilerConfig;
      +using StepProfConfig  = G4ProfilerConfig;
      +using UserProfConfig  = G4ProfilerConfig;
      +
      +//---------------------------------------------------------------------------//
      +
      +// force instantiations
      +template class G4ProfilerConfig;
      +template class G4ProfilerConfig;
      +template class G4ProfilerConfig;
      +template class G4ProfilerConfig;
      +template class G4ProfilerConfig;
      +template G4ProfilerConfig::G4ProfilerConfig(const G4Run*);
      +template G4ProfilerConfig::G4ProfilerConfig(const G4Event*);
      +template G4ProfilerConfig::G4ProfilerConfig(const G4Track*);
      +template G4ProfilerConfig::G4ProfilerConfig(const G4Step*);
      +template G4ProfilerConfig::G4ProfilerConfig(
      +  const std::string&);
      +
      +#define G4PROFILE_INSTANTIATION(TYPE)                                          \
      +  template TYPE::PersistentSettings&                       \
      +  TYPE::GetPersistentFallback();                           \
      +  template TYPE::PersistentSettings&                       \
      +  TYPE::GetPersistentFallback();                           \
      +  template TYPE::PersistentSettings&                        \
      +  TYPE::GetPersistentFallback();                            \
      +                                                                               \
      +  template TYPE::PersistentSettings&                       \
      +  TYPE::GetPersistent();                                   \
      +  template TYPE::PersistentSettings&                       \
      +  TYPE::GetPersistent();                                   \
      +  template TYPE::PersistentSettings&                        \
      +  TYPE::GetPersistent();
      +
      +G4PROFILE_INSTANTIATION(RunProfConfig)
      +G4PROFILE_INSTANTIATION(EventProfConfig)
      +G4PROFILE_INSTANTIATION(TrackProfConfig)
      +G4PROFILE_INSTANTIATION(StepProfConfig)
      +G4PROFILE_INSTANTIATION(UserProfConfig)
      +
      +//---------------------------------------------------------------------------//
      +
      +#if !defined(GEANT4_USE_TIMEMORY)
      +#  define TIMEMORY_WEAK_PREFIX
      +#  define TIMEMORY_WEAK_POSTFIX
      +#endif
      +
      +//---------------------------------------------------------------------------//
      +
      +extern "C"
      +{
      +  // this allows the default setup to be overridden by linking
      +  // in an custom extern C function into the application
      +  TIMEMORY_WEAK_PREFIX
      +  void G4ProfilerInit(void) TIMEMORY_WEAK_POSTFIX;
      +
      +  // this gets executed when the library gets loaded
      +  void G4ProfilerInit(void)
      +  {
      +#ifdef GEANT4_USE_TIMEMORY
      +
      +    // guard against re-initialization
      +    static bool _once = false;
      +    if(_once)
      +      return;
      +    _once = true;
      +
      +    puts(">>> G4ProfilerInit <<<");
      +
      +    //
      +    // the default settings
      +    //
      +    // large profiles can take a very long time to plot
      +    tim::settings::plot_output() = false;
      +    // large profiles can take quite a bit of console space
      +    tim::settings::cout_output() = false;
      +    // this creates a subdirectory with the timestamp of the run
      +    tim::settings::time_output() = false;
      +    // see `man 3 strftime` for formatting keys
      +    tim::settings::time_format() = "%F_%I.%M_%p";
      +    // set the default precision for timing
      +    tim::settings::timing_precision() = 6;
      +    // set the minimum width for outputs
      +    tim::settings::width() = 12;
      +    // set dart reports (when enabled) to only print the first entry
      +    tim::settings::dart_count() = 1;
      +    // set dart reports (when enabled) to use the component label
      +    // instead of the string identifer of the entry, e.g.
      +    // >>> G4Run/0 ... peak_rss ... 50 MB would report
      +    // 'peak_rss 50 MB' not 'G4Run/0 50 MB'
      +    tim::settings::dart_label() = true;
      +
      +    // allow environment overrides of the defaults
      +    tim::settings::parse();
      +#endif
      +  }
      +}  // extern "C"
      +
      +//---------------------------------------------------------------------------//
      +
      +#ifdef GEANT4_USE_TIMEMORY
      +namespace
      +{
      +  static bool profiler_is_initialized = (G4ProfilerInit(), true);
      +}
      +#endif
      +
      +//---------------------------------------------------------------------------//
      diff --git a/source/global/management/src/G4coutDestination.cc b/source/global/management/src/G4coutDestination.cc
      index bb256e45e6..da72c3343c 100644
      --- a/source/global/management/src/G4coutDestination.cc
      +++ b/source/global/management/src/G4coutDestination.cc
      @@ -32,6 +32,8 @@
       
       #include 
       
      +G4coutDestination* G4coutDestination::masterG4coutDestination = nullptr;
      +
       // --------------------------------------------------------------------
       G4coutDestination::~G4coutDestination() {}
       
      diff --git a/source/graphics_reps/History b/source/graphics_reps/History
      index 18f3bd82f7..b714d95fcc 100644
      --- a/source/graphics_reps/History
      +++ b/source/graphics_reps/History
      @@ -19,6 +19,16 @@ committal in the CVS repository !
       History file for graphics_reps category
       ---------------------------------------
       
      +01 December 2020 Evgueni Tcherniaev (greps-V10-06-06)
      +- HepPolyhedron: revised HepPolyhedronHype,
      +  it addresses problem report #2295.
      +
      +16 November 2020 Gabriele Cosmo (greps-V10-06-05)
      +- Fixed typos in printed-out text. Addressing problem report #2285.
      +
      +24 July 2020  Evgueni Tcherniaev (greps-V10-06-04)
      +- BooleanProcessor::assembleFace(): fixed minor Coverity defect
      +
       04 March 2020. John Allison  (greps-V10-06-03)
       - operator<<(...const std::map*):
         o Improve deprecation message.
      diff --git a/source/graphics_reps/src/BooleanProcessor.src b/source/graphics_reps/src/BooleanProcessor.src
      index 62d0883d40..e438caea5f 100644
      --- a/source/graphics_reps/src/BooleanProcessor.src
      +++ b/source/graphics_reps/src/BooleanProcessor.src
      @@ -1052,7 +1052,7 @@ void BooleanProcessor::assembleFace(int what, int iface)
       {
         //   A S S E M B L E   N E W   F A C E 
       
      -  int ihead;      // head of the list of edges for new face
      +  int ihead = 0;  // head of the list of edges for new face
         int icur;       // current edge in the list - last edge inserted to the list
         int *ilink;     // pointer to the current link 
         int ifirst;     // first node of a contour
      diff --git a/source/graphics_reps/src/G4VisAttributes.cc b/source/graphics_reps/src/G4VisAttributes.cc
      index 0ecb939bdf..22c5f7c22a 100644
      --- a/source/graphics_reps/src/G4VisAttributes.cc
      +++ b/source/graphics_reps/src/G4VisAttributes.cc
      @@ -233,7 +233,7 @@ void G4VisAttributes::SetForceLineSegmentsPerCircle (G4int nSegments) {
           nSegments = nSegmentsMin;
           G4cout <<
             "G4VisAttributes::SetForcedLineSegmentsPerCircle: attempt to set the"
      -      "\nnumber of line segements per circle < " << nSegmentsMin
      +      "\nnumber of line segments per circle < " << nSegmentsMin
                << "; forced to " << nSegments << G4endl;
         }
         fForcedLineSegmentsPerCircle = nSegments;
      diff --git a/source/graphics_reps/src/HepPolyhedron.cc b/source/graphics_reps/src/HepPolyhedron.cc
      index 1488507f8b..8cbd891fd9 100644
      --- a/source/graphics_reps/src/HepPolyhedron.cc
      +++ b/source/graphics_reps/src/HepPolyhedron.cc
      @@ -1665,6 +1665,7 @@ HepPolyhedronHype::HepPolyhedronHype(G4double r1,
        *                                                                     *
        * Name: HepPolyhedronHype                           Date:    14.04.08 *
        * Author: Tatiana Nikitina (CERN)                   Revised: 14.04.08 *
      + *         Evgueni Tcherniaev                                 01.12.20 *
        *                                                                     *
        * Function: Constructor for Hype                                      *
        *                                                                     *
      @@ -1676,19 +1677,15 @@ HepPolyhedronHype::HepPolyhedronHype(G4double r1,
        *                                                                     *
        ***********************************************************************/
       {
      -  static const G4double wholeCircle=twopi;
      +  static const G4double wholeCircle = twopi;
       
         //   C H E C K   I N P U T   P A R A M E T E R S
       
         G4int k = 0;
      -  if (r2 < 0. || r1 < 0. )        k = 1;
      -  if (r1 > r2 )                   k = 1;
      -  if (r1 == r2)                   k = 1;
      -
      +  if (r1 < 0. || r2 < 0. || r1 >= r2) k = 1;
         if (halfZ <= 0.) k += 2;
      - 
      -  if (sqrtan1<0.||sqrtan2<0.) k += 4;  
      - 
      +  if (sqrtan1 < 0.|| sqrtan2 < 0.) k += 4;
      +
         if (k != 0)
         {
           std::cerr << "HepPolyhedronHype: error in input parameters";
      @@ -1702,42 +1699,35 @@ HepPolyhedronHype::HepPolyhedronHype(G4double r1,
                     << std::endl;
           return;
         }
      -  
      +
         //   P R E P A R E   T W O   P O L Y L I N E S
       
      -  G4int n = GetNumberOfRotationSteps();
      -  G4double dz = 2.*halfZ / n;
      -  G4double k1 = r1*r1;
      -  G4double k2 = r2*r2;
      +  G4int ns = std::max(3, GetNumberOfRotationSteps()/4);
      +  G4int nz1 = (sqrtan1 == 0.) ? 2 : ns + 1;
      +  G4int nz2 = (sqrtan2 == 0.) ? 2 : ns + 1;
      +  G4double* zz = new G4double[nz1 + nz2];
      +  G4double* rr = new G4double[nz1 + nz2];
       
      -  G4double *zz = new G4double[n+n+1], *rr = new G4double[n+n+1];
      -
      -  zz[0] = halfZ;
      -  rr[0] = std::sqrt(sqrtan2*halfZ*halfZ+k2);
      -
      -  for(G4int i = 1; i < n-1; i++)
      +  // external polyline
      +  G4double dz2 = 2.*halfZ/(nz2 - 1);
      +  for(G4int i = 0; i < nz2; ++i)
         {
      -    zz[i] = zz[i-1] - dz;
      -    rr[i] =std::sqrt(sqrtan2*zz[i]*zz[i]+k2);
      +    zz[i] = halfZ - dz2*i;
      +    rr[i] = std::sqrt(sqrtan2*zz[i]*zz[i] + r2*r2);
         }
       
      -  zz[n-1] = -halfZ;
      -  rr[n-1] = rr[0];
      -
      -  zz[n] = halfZ;
      -  rr[n] =  std::sqrt(sqrtan1*halfZ*halfZ+k1);
      -
      -  for(G4int i = n+1; i < n+n; i++)
      +  // internal polyline
      +  G4double dz1 = 2.*halfZ/(nz1 - 1);
      +  for(G4int i = 0; i < nz1; ++i)
         {
      -    zz[i] = zz[i-1] - dz;
      -    rr[i] =std::sqrt(sqrtan1*zz[i]*zz[i]+k1);
      +    G4int j = nz2 + i;
      +    zz[j] = halfZ - dz1*i;
      +    rr[j] = std::sqrt(sqrtan1*zz[j]*zz[j] + r1*r1);
         }
      -  zz[n+n] = -halfZ;
      -  rr[n+n] = rr[n];
       
         //   R O T A T E    P O L Y L I N E S
       
      -  RotateAroundZ(0, 0., wholeCircle, n, n, zz, rr, -1, -1); 
      +  RotateAroundZ(0, 0., wholeCircle, nz2, nz1, zz, rr, -1, -1);
         SetReferences();
       
         delete [] zz;
      diff --git a/source/intercoms/History b/source/intercoms/History
      index a37367bdab..b41b574850 100644
      --- a/source/intercoms/History
      +++ b/source/intercoms/History
      @@ -16,6 +16,22 @@ committal in the CVS repository !
            * Reverse chronological order (last date on top), please *
            ----------------------------------------------------------
       
      +12 November, 2020  J. Madsen (intercoms-V10-06-06)
      +- Added G4ProfilerMessenger
      +- See examples/extended/parallel/ThreadsafeScorers/run.mac for example usage
      +
      +30 September, 2020  M. Asai (intercoms-V10-06-05)
      +- Adding a new parameter type 'L' for long int type.
      +- Adding parameter range check for long int.
      +- Introduing G4UIcmdWithALongInt command type.
      +
      +29 September, 2020  A. Zaborowska (intercoms-V10-06-04)
      +- Add StoL method for parsing string to long int.
      +
      +25 August, 2020  G. Cosmo (intercoms-V10-06-03)
      +- Revision for c++11 constructs, code cleanup and formatting.
      +- Fixed Coverity defect for uninitialised data in G4UImanager.
      +
       18 May, 2020  G. Cosmo (intercoms-V10-06-02)
       - Removed unnecessary use of deprecated G4USE_STD11 flag in G4AnyMethod.
         Also indicated in GitHub PR#13.
      @@ -71,7 +87,7 @@ committal in the CVS repository !
         Bug report #2068.
       
       26 June, 2018 K. Murakami (intercoms-V10-04-03)
      -- G4G4InteractorMessenger.cc ::fix compilation warning for -Wunused-result
      +- G4InteractorMessenger.cc: fixed compilation warning for -Wunused-result
       
       17 May, 2018 J. Madsen (intercoms-V10-04-02)
       - updated "thread-local-static-var" model to
      @@ -79,7 +95,7 @@ committal in the CVS repository !
         which fixes Windows DLL + MT
       
       20 December, 2017 Makoto Asai (intercoms-V10-04-01)
      -- G4UIcommand, G4UImanager: additional implementation for adding 
      +- G4UIcommand, G4UImanager: additional implementation for adding
         a mechanism of carrying back error message from the messenger
         if a command is rejected due to the target class or the messenger.
       
      @@ -96,12 +112,12 @@ committal in the CVS repository !
       
       27 July, 2017 Ivana Hrivnacova (intercoms-V10-03-02)
       - Explicitly remove constness by means of remove_const.
      -  Fixing problem report #1803 (with the patch provided here).  
      +  Fixing problem report #1803 (with the patch provided here).
       
       30 May, 2017 Ivana Hrivnacova (intercoms-V10-03-01)
       - Fixed G4GenericMessenger::Command::SetUnit:
         Do not ignore setting and issue a warning when running sequantial application
      -  built against Geant4 libraries compiled with MT enabled 
      +  built against Geant4 libraries compiled with MT enabled
       
       8 February, 2017 Makoto Asai (intercoms-V10-03-00)
       - Introducing /control/useDoublePrecision command to use 17 digits
      @@ -115,7 +131,7 @@ committal in the CVS repository !
       - G4UIcontrolMessenger : improve /control/getVal command.
       
       5 August, 2016 Makoto Asai (intercoms-V10-02-01, -02 and -03)
      -- G4UIcontrolMessenger : added new commands ifBatch, 
      +- G4UIcontrolMessenger : added new commands ifBatch,
         ifInteractive, doifBatch and doifInteractive.
       
       25 July, 2016 Makoto Asai (intercoms-V10-02-00)
      @@ -130,7 +146,7 @@ committal in the CVS repository !
         track down "using namespace std" issues in various processes packages
       
       22 May, 2015 Robert Hatcher (intercoms-V10-01-01)
      -- Deal with implementation of remove_reference in G4AnyMethod for cases 
      +- Deal with implementation of remove_reference in G4AnyMethod for cases
         where one is compiling with the C++11 standard or clang and a
         "using namespace std" causes a clash
       
      @@ -138,7 +154,7 @@ committal in the CVS repository !
       - Using new IsMasterThread() function as suggested by J.Allison
       
       05 November, 2014  Robert Hatcher  (intercoms-V10-00-15)
      -- Rename a few inline method parameter names from 's' to 's0' 
      +- Rename a few inline method parameter names from 's' to 's0'
         to avoid a clash with CLHEP global 's'
       
       23 October, 2014 A. Dotti (intercoms-V10-00-14)
      @@ -161,7 +177,7 @@ to be registered to the G4UImanager of the master thread.
       - G4UImanager.hh : Change threadId from private to public
       
       12 August, 2014 L. Garnier (intercoms-V10-00-08)
      -- G4UImanager.hh : add "G4MTcoutDestination* GetThreadCout()" 
      +- G4UImanager.hh : add "G4MTcoutDestination* GetThreadCout()"
         to get the cout destination of this thread
       
       4 May, 2014 M. Asai (intercoms-V10-00-07)
      @@ -181,7 +197,7 @@ to be registered to the G4UImanager of the master thread.
         Addressing old problem report #1527.
       
       9 April, 2014 L. Garnier (intercoms-V10-00-03)
      -- Fix DEV-140 : "/control/macroPath" now also apply to macros 
      +- Fix DEV-140 : "/control/macroPath" now also apply to macros
         called inside a loop.
       
       16 March, 2014 M. Asai (intercoms-V10-00-02)
      @@ -213,7 +229,7 @@ to be registered to the G4UImanager of the master thread.
       
       20 November, 2013 M. Asai (intercoms-V09-06-13)
       - Fix G4UIcmdWith3VectorAndUnit and G4UIcmdWithADoubleAndUnit.
      -  Since version 9.3, they do not check and reject incorrect unit 
      +  Since version 9.3, they do not check and reject incorrect unit
         but instead misinterpret and accept with wrong value.
       
       5 November, 2013 M. Asai (intercoms-V09-06-12)
      @@ -224,8 +240,8 @@ to be registered to the G4UImanager of the master thread.
         avoid Windows linking problems.
       
       29 October, 2013 P. Mato (intercoms-V09-06-10)
      -- Fixed problem with G4GenericMessenger reported by Ivana that SetUnit 
      -  and SetRange were not working together. Fixed variable shadowing in 
      +- Fixed problem with G4GenericMessenger reported by Ivana that SetUnit
      +  and SetRange were not working together. Fixed variable shadowing in
         G4AnyType.hh.
       
       25 September, 2013 M. Asai (intercoms-V09-06-09)
      @@ -252,7 +268,7 @@ to be registered to the G4UImanager of the master thread.
       - Introducing /control/cout/ command category for handling thread-local cout/cerr.
       
       14 March, 2013 A. Dotti (intercoms-V09-06-04)
      -- Changing signature for GetCommandStack() 
      +- Changing signature for GetCommandStack()
       
       12 March, 2013 M. Asai (intercoms-V09-06-03)
       - Adding flags for commands to be boradcasted to thread-local UI mamaners.
      @@ -285,13 +301,14 @@ February 08, 2013 J.Jacquemier (intercoms-V09-06-00)
        - Fixed on executing a macro file containing Windows return codes.
       
       2 October, 2012 P. Mato (intercoms-V09-05-03)
      - - Added some protection when getting the value of a command which is a method 
      + - Added some protection when getting the value of a command which is a method
       
       1 October, 2012 P. Mato (intercoms-V09-05-02)
        - Fixed windows warning
       
       27 September, 2012 P. Mato (intercoms-V09-05-01)
      - - Added initial version of the G4GenericMessenger class. The use can be seen in the testGenericMessenger.cc unit test.
      + - Added initial version of the G4GenericMessenger class.
      +   The use can be seen in the testGenericMessenger.cc unit test.
        - Added G4AnyType and G4AnyMethod class to support G4Generic Messenger.
       
       23 May, 2012 G.Cosmo (intercoms-V09-05-00)
      @@ -319,7 +336,7 @@ February 08, 2013 J.Jacquemier (intercoms-V09-06-00)
        - Range check of UI commands care for units.
          * G4UIcommahd::DoIt() method is changed to virtual.
          * G4UIcmdWithADoubleAndUnit/G4UIcmdWith3VectorAndUnit: add DoIt() method.
      - 
      +
       19 May 2010 L. Garnier (intercoms-V09-03-01)
        - G4UIManager : Add field to get GUI Window session
       
      @@ -339,7 +356,7 @@ February 08, 2013 J.Jacquemier (intercoms-V09-06-00)
       7th May 2009, Laurent Garnier
        - G4UIcommandTree : Add a new function to complete a command path with
          maximum characters guess.
      - - G4UIcommandTree : FindCommandTree will now return current tree when 
      + - G4UIcommandTree : FindCommandTree will now return current tree when
          command path is "/"
       
       21 November, 2008 K.Murakami (intercoms-V09-01-01)
      @@ -362,7 +379,7 @@ July 16, 2007 K.Murakami (intercoms-V09-00-00)
         * bug fixed for the treatment of the last line
         * add support for continued line by \, _
         * string after '#' is treated as comment
      -  * white spaces at the head of a line are allowed. 
      +  * white spaces at the head of a line are allowed.
       
       June 6, 2007, M.Asai
       - Introducing /control/getEnv and /control/echo commands.
      @@ -416,7 +433,7 @@ May 16, 2004, M.Asai (intercoms-V06-01-01)
       May 16, 2004, M.Asai (intercoms-V06-01-00)
       - Introducing static methods in G4UIcommand class for conversion between
         a string and a value. Some implementation of derived classes are modified
      -  accordingly. 
      +  accordingly.
       
       Jun 07, 2003, G.Cosmo (intercoms-V05-01-02)
       - G4UItokenNum.hh: corrected implementation of operator=().
      @@ -508,7 +525,7 @@ Oct 5, 2001, M.Asai (intercoms-V03-02-10)
       
       Oct 4, 2001, M.Asai (intercoms-V03-02-09)
       - Correction for string parameter starting with a space.
      -- Recurrent variables 
      +- Recurrent variables
       
       Oct 1, 2001, M.Asai (intercoms-V03-02-08)
       - Introducing a functionality of "shell variables".
      diff --git a/source/intercoms/include/G4AnyMethod.hh b/source/intercoms/include/G4AnyMethod.hh
      index ef103de97e..720cd01cbb 100644
      --- a/source/intercoms/include/G4AnyMethod.hh
      +++ b/source/intercoms/include/G4AnyMethod.hh
      @@ -23,8 +23,13 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4AnyMethod
       //
      +// Class description:
       //
      +// The G4AnyMethod class represents any object method.
      +// The class only holds a member pointer.
      +
       // See http://www.boost.org/libs/any for Documentation.
       // Copyright Kevlin Henney, 2000, 2001, 2002. All rights reserved.
       //
      @@ -38,175 +43,213 @@
       //        with features contributed and bugs found by
       //        Ed Brey, Mark Rodgers, Peter Dimov, and James Curran
       // when:  July 2001
      -// where: tested with BCC 5.5, MSVC 6.0, and g++ 2.95
      -
      -#ifndef G4AnyMethod_h
      -#define G4AnyMethod_h 1
      -
      +// --------------------------------------------------------------------
      +#ifndef G4AnyMethod_hh
      +#define G4AnyMethod_hh 1
       
       #include 
       
       /** Bad Argument exception */
      -class G4BadArgument: public std::bad_cast {
      -public:
      +class G4BadArgument : public std::bad_cast
      +{
      + public:
         G4BadArgument() {}
      -  virtual const char* what() const throw() {
      +  virtual const char* what() const throw()
      +  {
           return "G4BadArgument: failed operator()";
         }
       };
       
       #include 
      -using std::remove_reference;
       using std::remove_const;
      +using std::remove_reference;
       
      -/**
      - * @class G4AnyMethod G4AnyMethod.hh
      - * This class represents any object method. The class only holds a member pointer.
      - */
      -class G4AnyMethod {
      -public:
      -  /** contructor */
      -  G4AnyMethod(): fContent(0), narg(0) {}
      -  template  G4AnyMethod(S (T::*f)()) : narg(0) {
      -    fContent = new FuncRef(f);
      -  }
      -  template  G4AnyMethod(S (T::*f)(A0)) : narg(1) {
      -    fContent = new FuncRef1(f);
      -  }
      -  template  G4AnyMethod(S (T::*f)(A0,A1)) : narg(2) {
      -    fContent = new FuncRef2(f);
      -  }
      -  G4AnyMethod(const G4AnyMethod &other):
      -  fContent(other.fContent ? other.fContent->Clone() : 0),narg(other.narg) {}
      -  /** destructor */
      -  ~G4AnyMethod() {
      -    delete fContent;
      -  }
      -  
      -  G4AnyMethod& Swap(G4AnyMethod& rhs) {
      -    std::swap(fContent, rhs.fContent);
      -    std::swap(narg, rhs.narg);
      -    return *this;
      -  }
      -  /** Asignment operator */
      -  template   G4AnyMethod& operator =(S (T::*f)()) {
      -    G4AnyMethod(f).Swap(*this);
      -    narg = 0;
      -    return *this;
      -  }
      -  template  G4AnyMethod& operator =(S (T::*f)(A0)) {
      -    G4AnyMethod(f).Swap(*this);
      -    narg = 1;
      -    return *this;
      -  }
      -  template  G4AnyMethod& operator =(S (T::*f)(A0, A1)) {
      -    G4AnyMethod(f).Swap(*this);
      -    narg = 1;
      -    return *this;
      -  }
      -  /** Asigment operator */
      -  G4AnyMethod& operator =(const G4AnyMethod& rhs) {
      -    G4AnyMethod(rhs).Swap(*this);
      -    narg = rhs.narg;
      -    return *this;
      -  }
      -  /** Query */
      -  bool Empty() const {
      -    return !fContent;
      -  }
      -  /** call operator */
      -  void operator()(void* obj) {
      -    fContent->operator()(obj);
      -  }
      -  void operator()(void* obj, const std::string& a0) {
      -    fContent->operator()(obj, a0);
      -  }
      -  /** Number of arguments */
      -  size_t NArg() const { return narg; }
      -  
      -  const std::type_info& ArgType(size_t n = 0) const {
      -    return fContent ? fContent->ArgType(n) : typeid(void);
      -  }
      -  
      -private:
      -  class Placeholder {
      +class G4AnyMethod
      +{
         public:
      -    Placeholder() {}
      -    virtual ~Placeholder() {}
      -    virtual Placeholder* Clone() const = 0;
      -    virtual void operator()(void*) = 0;
      -    virtual void operator()(void*,const std::string&) = 0;
      -    virtual const std::type_info& ArgType(size_t) const = 0;
      -  };
      -  
      -  template  struct FuncRef: public Placeholder {
      -    FuncRef(S (T::*f)()) : fRef(f) {}
      -    
      -    virtual void operator()(void* obj) {
      -      ((T*)obj->*fRef)();
      -    }
      -    virtual void operator()(void*, const std::string&) {
      -      throw G4BadArgument();
      -    }
      -    virtual Placeholder* Clone() const {
      -      return new FuncRef(fRef);
      -    }
      -    virtual const std::type_info& ArgType(size_t) const {
      -      return typeid(void);
      -    }
      -    S (T::*fRef)();
      -  };
      -  
      -  template  struct FuncRef1: public Placeholder {
      -    typedef typename remove_const::type>::type  nakedA0;
       
      -    FuncRef1(S (T::*f)(A0)) : fRef(f) {}
      -    
      -    virtual void operator()(void*) {
      -      throw G4BadArgument();
      -    }
      -    virtual void operator()(void* obj, const std::string& s0) {
      -      nakedA0 a0;
      -      std::stringstream strs(s0);
      -      strs >> a0;
      -      ((T*)obj->*fRef)(a0);
      -    }
      -    virtual Placeholder* Clone() const {
      -      return new FuncRef1(fRef);
      -    }
      -    virtual const std::type_info& ArgType(size_t) const {
      -      return typeid(A0);
      -    }
      -    S (T::*fRef)(A0);
      -  };
      +    /** contructors */
       
      -  template  struct FuncRef2: public Placeholder {
      -    typedef typename remove_const::type>::type  nakedA0;
      -    typedef typename remove_const::type>::type  nakedA1;
      -    
      -    FuncRef2(S (T::*f)(A0, A1)) : fRef(f) {}
      -    
      -    virtual void operator()(void*) {
      -      throw G4BadArgument();
      +    G4AnyMethod()
      +    {}
      +
      +    template 
      +    G4AnyMethod(S (T::*f)())
      +    {
      +      fContent = new FuncRef(f);
           }
      -    virtual void operator()(void* obj, const std::string& s0) {
      -      nakedA0 a0;
      -      nakedA1 a1;
      -      std::stringstream strs(s0);
      -      strs >> a0 >> a1;
      -      ((T*)obj->*fRef)(a0, a1);
      +
      +    template 
      +    G4AnyMethod(S (T::*f)(A0))
      +      : narg(1)
      +    {
      +      fContent = new FuncRef1(f);
           }
      -    virtual Placeholder* Clone() const {
      -      return new FuncRef2(fRef);
      +
      +    template 
      +    G4AnyMethod(S (T::*f)(A0, A1))
      +      : narg(2)
      +    {
      +      fContent = new FuncRef2(f);
           }
      -    virtual const std::type_info& ArgType(size_t i) const {
      -      return i == 0 ? typeid(A0) : typeid(A1);
      +
      +    G4AnyMethod(const G4AnyMethod& other)
      +      : fContent(other.fContent ? other.fContent->Clone() : nullptr)
      +      , narg(other.narg)
      +    {}
      +
      +    /** destructor */
      +
      +    ~G4AnyMethod() { delete fContent; }
      +
      +    G4AnyMethod& Swap(G4AnyMethod& rhs)
      +    {
      +      std::swap(fContent, rhs.fContent);
      +      std::swap(narg, rhs.narg);
      +      return *this;
           }
      -    S (T::*fRef)(A0, A1);
      -  };
      -  
      -  Placeholder* fContent;
      -  size_t narg;
      +
      +    /** Assignment operators */
      +
      +    template 
      +    G4AnyMethod& operator=(S (T::*f)())
      +    {
      +      G4AnyMethod(f).Swap(*this);
      +      narg = 0;
      +      return *this;
      +    }
      +
      +    template 
      +    G4AnyMethod& operator=(S (T::*f)(A0))
      +    {
      +      G4AnyMethod(f).Swap(*this);
      +      narg = 1;
      +      return *this;
      +    }
      +    template 
      +    G4AnyMethod& operator=(S (T::*f)(A0, A1))
      +    {
      +      G4AnyMethod(f).Swap(*this);
      +      narg = 1;
      +      return *this;
      +    }
      +
      +    G4AnyMethod& operator=(const G4AnyMethod& rhs)
      +    {
      +      G4AnyMethod(rhs).Swap(*this);
      +      narg = rhs.narg;
      +      return *this;
      +    }
      +
      +    /** Query */
      +
      +    G4bool Empty() const { return !fContent; }
      +
      +    /** call operators */
      +
      +    void operator()(void* obj) { fContent->operator()(obj); }
      +    void operator()(void* obj, const std::string& a0)
      +    {
      +      fContent->operator()(obj, a0);
      +    }
      +
      +    /** Number of arguments */
      +
      +    std::size_t NArg() const { return narg; }
      +
      +    const std::type_info& ArgType(size_t n = 0) const
      +    {
      +      return fContent ? fContent->ArgType(n) : typeid(void);
      +    }
      +
      +  private:
      +
      +    class Placeholder
      +    {
      +      public:
      +
      +        Placeholder() {}
      +        virtual ~Placeholder() {}
      +        virtual Placeholder* Clone() const                  = 0;
      +        virtual void operator()(void*)                      = 0;
      +        virtual void operator()(void*, const std::string&)  = 0;
      +        virtual const std::type_info& ArgType(size_t) const = 0;
      +    };
      +
      +    template 
      +    struct FuncRef : public Placeholder
      +    {
      +      FuncRef(S (T::*f)())
      +        : fRef(f)
      +      {}
      +
      +      virtual void operator()(void* obj) { ((T*) obj->*fRef)(); }
      +      virtual void operator()(void*, const std::string&)
      +      {
      +        throw G4BadArgument();
      +      }
      +      virtual Placeholder* Clone() const { return new FuncRef(fRef); }
      +      virtual const std::type_info& ArgType(std::size_t) const
      +      {
      +        return typeid(void);
      +      }
      +      S (T::*fRef)();
      +    };
      +
      +    template 
      +    struct FuncRef1 : public Placeholder
      +    {
      +      typedef
      +      typename remove_const::type>::type nakedA0;
      +
      +      FuncRef1(S (T::*f)(A0))
      +        : fRef(f)
      +      {}
      +
      +      virtual void operator()(void*) { throw G4BadArgument(); }
      +      virtual void operator()(void* obj, const std::string& s0)
      +      {
      +        nakedA0 a0;
      +        std::stringstream strs(s0);
      +        strs >> a0;
      +        ((T*) obj->*fRef)(a0);
      +      }
      +      virtual Placeholder* Clone() const { return new FuncRef1(fRef); }
      +      virtual const std::type_info& ArgType(size_t) const { return typeid(A0); }
      +      S (T::*fRef)(A0);
      +    };
      +
      +    template 
      +    struct FuncRef2 : public Placeholder
      +    {
      +      typedef
      +      typename remove_const::type>::type nakedA0;
      +      typedef
      +      typename remove_const::type>::type nakedA1;
      +
      +      FuncRef2(S (T::*f)(A0, A1))
      +        : fRef(f)
      +      {}
      +
      +      virtual void operator()(void*) { throw G4BadArgument(); }
      +      virtual void operator()(void* obj, const std::string& s0)
      +      {
      +        nakedA0 a0;
      +        nakedA1 a1;
      +        std::stringstream strs(s0);
      +        strs >> a0 >> a1;
      +        ((T*) obj->*fRef)(a0, a1);
      +      }
      +      virtual Placeholder* Clone() const { return new FuncRef2(fRef); }
      +      virtual const std::type_info& ArgType(size_t i) const
      +      {
      +        return i == 0 ? typeid(A0) : typeid(A1);
      +      }
      +      S (T::*fRef)(A0, A1);
      +    };
      +
      +    Placeholder* fContent = nullptr;
      +    std::size_t narg = 0;
       };
       
       #endif
      diff --git a/source/intercoms/include/G4AnyType.hh b/source/intercoms/include/G4AnyType.hh
      index d423c4810c..0e720d806b 100644
      --- a/source/intercoms/include/G4AnyType.hh
      +++ b/source/intercoms/include/G4AnyType.hh
      @@ -23,8 +23,13 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4AnyType
       //
      -//
      +// Class description:
      +// 
      +// The class G4AnyType represents any data type.
      +// The class only holds a reference to the type and not the value.
      +
       // See http://www.boost.org/libs/any for Documentation.
       // Copyright Kevlin Henney, 2000, 2001, 2002. All rights reserved.
       //
      @@ -38,10 +43,9 @@
       //        with features contributed and bugs found by
       //        Ed Brey, Mark Rodgers, Peter Dimov, and James Curran
       // when:  July 2001
      -// where: tested with BCC 5.5, MSVC 6.0, and g++ 2.95
      -
      -#ifndef G4AnyType_h
      -#define G4AnyType_h 1
      +// --------------------------------------------------------------------
      +#ifndef G4AnyType_hh
      +#define G4AnyType_hh 1
       
       #include 
       #include 
      @@ -51,176 +55,223 @@
       #include "G4UIcommand.hh"
       
       class G4String;
      -namespace CLHEP {
      +namespace CLHEP
      +{
         class Hep3Vector;
       }
       
      -/**
      - * @class G4AnyType G4AnyType.hh
      - * This class represents any data type. The class only holds a reference to the type and not the value.
      - */
      -class  G4AnyType {  
      -public:
      -  /** Constructor */
      -  G4AnyType():
      -  fContent(0) {}
      -  
      -  /** Constructor */
      -  template  G4AnyType(ValueType &value):
      -  fContent(new Ref(value)) {}
      -  
      -  /** Copy Constructor */
      -  G4AnyType(const G4AnyType &other):
      -  fContent(other.fContent ? other.fContent->Clone() : 0) {}
      -  
      -  /** Dtor */
      -  ~G4AnyType() {
      -    delete fContent;
      -  }
      -  
      -  /** bool operator */
      -  operator bool() {
      -    return !Empty();
      -  }
      -  /** Modifier */
      -  G4AnyType& Swap(G4AnyType& rhs) {
      -    std::swap(fContent, rhs.fContent);
      -    return *this;
      -  }
      -  /** Modifier */
      -  template  G4AnyType& operator =(const ValueType& rhs) {
      -    G4AnyType(rhs).Swap(*this);
      -    return *this;
      -  }
      -  /** Modifier */
      -  G4AnyType& operator =(const G4AnyType& rhs) {
      -    G4AnyType(rhs).Swap(*this);
      -    return *this;
      -  }
      -  /** Query */
      -  bool Empty() const {
      -    return !fContent;
      -  }
      -  /** Query */
      -  const std::type_info& TypeInfo() const {
      -    return fContent ? fContent->TypeInfo() : typeid(void);
      -  }
      -  /** Adress */
      -  void* Address() const {
      -    return fContent ? fContent->Address() : 0;
      -  }
      -  /** String conversion */
      -  std::string ToString() const {
      -    return fContent->ToString();
      -  }
      -  /** String conversion */
      -  void FromString(const std::string& val) {
      -    fContent->FromString(val);
      -  }
      -private:
      -  /**
      -   * @class Placeholder G4AnyType.h G4AnyType.h
      -   */
      -  class Placeholder {
      +class G4AnyType
      +{
         public:
      -    /** Constructor */
      -    Placeholder() {}
      +
      +    /** Constructors */
      +
      +    G4AnyType()
      +    {}
      +
      +    template 
      +    G4AnyType(ValueType& value)
      +      : fContent(new Ref(value))
      +    {}
      +
      +    /** Copy Constructor */
      +
      +    G4AnyType(const G4AnyType& other)
      +      : fContent(other.fContent ? other.fContent->Clone() : 0)
      +    {}
      +
           /** Destructor */
      -    virtual ~Placeholder() {}
      -    /** Query */
      -    virtual const std::type_info& TypeInfo() const = 0;
      -    /** Query */
      -    virtual Placeholder* Clone() const = 0;
      -    /** Query */
      -    virtual void* Address() const = 0;
      -    /** ToString */
      -    virtual std::string ToString() const = 0;
      -    /** FromString */
      -    virtual void FromString(const std::string& val) = 0;
      -  };
      -  
      -  template  class Ref: public Placeholder {
      -  public:
      -    /** Constructor */
      -    Ref(ValueType& value): fRef(value) {}
      -    /** Query */
      -    virtual const std::type_info& TypeInfo() const {
      -      return typeid(ValueType);
      +
      +    ~G4AnyType() { delete fContent; }
      +
      +    /** bool operator */
      +
      +    operator bool() { return !Empty(); }
      +
      +    /** Modifiers */
      +
      +    G4AnyType& Swap(G4AnyType& rhs)
      +    {
      +      std::swap(fContent, rhs.fContent);
      +      return *this;
           }
      -    /** Clone */
      -    virtual Placeholder* Clone() const {
      -      return new Ref(fRef);
      +
      +    template 
      +    G4AnyType& operator=(const ValueType& rhs)
      +    {
      +      G4AnyType(rhs).Swap(*this);
      +      return *this;
           }
      +
      +    G4AnyType& operator=(const G4AnyType& rhs)
      +    {
      +      G4AnyType(rhs).Swap(*this);
      +      return *this;
      +    }
      +
      +    /** Queries */
      +
      +    G4bool Empty() const { return !fContent; }
      +
      +    const std::type_info& TypeInfo() const
      +    {
      +      return fContent ? fContent->TypeInfo() : typeid(void);
      +    }
      +
           /** Address */
      -    virtual void* Address() const {
      -      return (void*) (&fRef);
      -    }
      -    /** ToString */
      -    virtual std::string ToString() const {
      -      std::stringstream ss;
      -      ss << fRef;
      -      return ss.str();
      -    }
      -    /** FromString */
      -    virtual void FromString(const std::string& val) {
      -      std::stringstream ss(val);
      -      ss >> fRef;
      -    }
      +
      +    void* Address() const { return fContent ? fContent->Address() : 0; }
      +
      +    /** String conversions */
      +
      +    std::string ToString() const { return fContent->ToString(); }
      +
      +    void FromString(const std::string& val) { fContent->FromString(val); }
      +
      +  private:
      +
      +    class Placeholder
      +    {
      +      public:
      +   
      +        Placeholder() {}
      +
      +        virtual ~Placeholder() {}
      +
      +        /** Queries */
      +
      +        virtual const std::type_info& TypeInfo() const = 0;
      +
      +        virtual Placeholder* Clone() const = 0;
      +
      +        virtual void* Address() const = 0;
      +
      +        /** ToString */
      +
      +        virtual std::string ToString() const = 0;
      +
      +        /** FromString */
      +
      +        virtual void FromString(const std::string& val) = 0;
      +    };
      +
      +    template 
      +    class Ref : public Placeholder
      +    {
      +      public:
      +
      +        /** Constructor */
      +
      +        Ref(ValueType& value)
      +          : fRef(value)
      +        {}
      +
      +        /** Query */
      +
      +        virtual const std::type_info& TypeInfo() const
      +        {
      +          return typeid(ValueType);
      +        }
      +
      +        /** Clone */
      +
      +        virtual Placeholder* Clone() const { return new Ref(fRef); }
      +
      +        /** Address */
      +
      +        virtual void* Address() const { return (void*) (&fRef); }
      +
      +        /** ToString */
      +
      +        virtual std::string ToString() const
      +        {
      +          std::stringstream ss;
      +          ss << fRef;
      +          return ss.str();
      +        }
      +
      +        /** FromString */
      +
      +        virtual void FromString(const std::string& val)
      +        {
      +          std::stringstream ss(val);
      +          ss >> fRef;
      +        }
      +
      +        ValueType& fRef;  // representation
      +    };
      +
           /** representation */
      -    ValueType& fRef;
      -  };
      -  /** representation */
      -  template  friend ValueType* any_cast(G4AnyType*);
      -  /** representation */
      -  Placeholder* fContent;
      +
      +    template 
      +    friend ValueType* any_cast(G4AnyType*);
      +
      +    Placeholder* fContent = nullptr;
       };
       
      -/**
      - * Specializations
      - */
      +//
      +// Specializations
      +//
       
      -template <> inline void G4AnyType::Ref::FromString(const std::string& val)  {
      +template <>
      +inline void G4AnyType::Ref::FromString(const std::string& val)
      +{
         fRef = G4UIcommand::ConvertToBool(val.c_str());
       }
       
      -template <> inline void G4AnyType::Ref::FromString(const std::string& val)  {
      -  if (val[0] == '"' ) fRef = val.substr(1,val.size()-2);
      -  else fRef = val;
      +template <>
      +inline void G4AnyType::Ref::FromString(const std::string& val)
      +{
      +  if(val[0] == '"')
      +    fRef = val.substr(1, val.size() - 2);
      +  else
      +    fRef = val;
       }
       
      -template <> inline void G4AnyType::Ref::FromString(const std::string& val)  {
      +template <>
      +inline void G4AnyType::Ref::FromString(const std::string& val)
      +{
         fRef = G4UIcommand::ConvertTo3Vector(val.c_str());
       }
       
      -
       /**
        * @class G4BadAnyCast G4AnyType.h Reflex/G4AnyType.h
        * @author K. Henney
        */
      -class G4BadAnyCast: public std::bad_cast {
      -public:
      -  /** Constructor */
      -  G4BadAnyCast() {}
      -  
      -  /** Query */
      -  virtual const char* what() const throw() {
      -    return "G4BadAnyCast: failed conversion using any_cast";
      -  }
      +class G4BadAnyCast : public std::bad_cast
      +{
      +  public:
      +
      +    G4BadAnyCast() {}
      +
      +    virtual const char* what() const throw()
      +    {
      +      return "G4BadAnyCast: failed conversion using any_cast";
      +    }
       };
       
       /** value */
      -template  ValueType* any_cast(G4AnyType* operand) {
      +
      +template 
      +ValueType* any_cast(G4AnyType* operand)
      +{
         return operand && operand->TypeInfo() == typeid(ValueType)
      -  ? &static_cast*>(operand->fContent)->fRef : 0;
      +           ? &static_cast*>(operand->fContent)->fRef
      +           : nullptr;
       }
      -/** value */
      -template  const ValueType* any_cast(const G4AnyType* operand) {
      +
      +template 
      +const ValueType* any_cast(const G4AnyType* operand)
      +{
         return any_cast(const_cast(operand));
       }
      -/** value */
      -template  ValueType any_cast(const G4AnyType& operand) {
      +
      +template 
      +ValueType any_cast(const G4AnyType& operand)
      +{
         const ValueType* result = any_cast(&operand);
      -  if (!result) {
      +  if(!result)
      +  {
           throw G4BadAnyCast();
         }
         return *result;
      diff --git a/source/intercoms/include/G4GenericMessenger.hh b/source/intercoms/include/G4GenericMessenger.hh
      index 5f8a8a9926..acd28abe56 100644
      --- a/source/intercoms/include/G4GenericMessenger.hh
      +++ b/source/intercoms/include/G4GenericMessenger.hh
      @@ -23,11 +23,16 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4GenericMessenger
       //
      +// Class description:
       //
      +// A generic messenger class.
       
      -#ifndef G4GenericMessenger_h
      -#define G4GenericMessenger_h 1
      +// Author: P.Mato, CERN - 27 September 2012
      +// --------------------------------------------------------------------
      +#ifndef G4GenericMessenger_hh
      +#define G4GenericMessenger_hh 1
       
       #include "G4UImessenger.hh"
       #include "G4UIcommand.hh"
      @@ -40,76 +45,158 @@
       
       class G4UIdirectory;
       
      -/// This class is generic messenger.
      -
       class G4GenericMessenger : public G4UImessenger
       {
      -public:
      -  /// Contructor
      -  G4GenericMessenger(void* obj, const G4String& dir = "", const G4String& doc = "");
      -  /// Destructor
      -  virtual ~G4GenericMessenger();
      -  /// The concrete, but generic implementation of this method.
      -  virtual G4String GetCurrentValue(G4UIcommand* command);
      -  /// The concrete, generic  implementation of this method converts the string "newValue" to action.
      -  virtual void SetNewValue(G4UIcommand* command, G4String newValue);
      -  
      -public:
      -  struct Command {
      -    enum UnitSpec {UnitCategory, UnitDefault};
      -    Command(G4UIcommand* cmd, const std::type_info& ti) : command(cmd), type(&ti) {}
      -    Command() : command(0), type(0) {}
      -    //    Command& operator =(const Command& rhs) { command = rhs.command; type = rhs.type; }
      -    Command& SetStates(G4ApplicationState s0) {command->AvailableForStates(s0); return *this;}
      -    Command& SetStates(G4ApplicationState s0, G4ApplicationState s1) {command->AvailableForStates(s0, s1); return *this;}
      -    Command& SetStates(G4ApplicationState s0, G4ApplicationState s1, G4ApplicationState s2){command->AvailableForStates(s0,s1,s2); return *this;}
      -    Command& SetStates(G4ApplicationState s0, G4ApplicationState s1, G4ApplicationState s2, G4ApplicationState s3) {command->AvailableForStates(s0,s1,s2,s3); return *this;}
      -    Command& SetStates(G4ApplicationState s0, G4ApplicationState s1, G4ApplicationState s2, G4ApplicationState s3, G4ApplicationState s4) {command->AvailableForStates(s0,s1,s2,s3,s4); return *this;}
      -    Command& SetRange(const G4String& range) {command->SetRange(range.c_str()); return *this;}
      -    Command& SetGuidance(const G4String& s0) { command->SetGuidance(s0); return *this; }
      -    Command& SetUnit(const G4String&, UnitSpec = UnitDefault);
      -    Command& SetUnitCategory(const G4String& u) {return SetUnit(u, UnitCategory);}
      -    Command& SetDefaultUnit(const G4String& u) {return SetUnit(u, UnitDefault);}
      -    Command& SetParameterName(const G4String&, G4bool, G4bool =false);
      -    Command& SetDefaultValue(const G4String&);
      -    Command& SetCandidates(const G4String&);
      -    Command& SetToBeBroadcasted(G4bool s0) { command->SetToBeBroadcasted(s0); return *this; }
      -    Command& SetToBeFlushed(G4bool s0) { command->SetToBeFlushed(s0); return *this; }
      -    Command& SetWorkerThreadOnly(G4bool s0) { command->SetWorkerThreadOnly(s0); return *this; }
      -    
      -    G4UIcommand* command;
      -    const std::type_info* type;
      -  };
      -  struct Property : public Command {
      -    Property(const G4AnyType& var, G4UIcommand* cmd) : Command(cmd, var.TypeInfo()) , variable(var) {}
      -    Property() {}
      -    G4AnyType variable;
      -  };
      -  struct Method : public Command {
      -    Method(const G4AnyMethod& fun, void* obj, G4UIcommand* cmd) : Command(cmd, fun.ArgType()), method(fun), object(obj) {}
      -    Method() : object(0) {}
      -    G4AnyMethod method;
      -    void* object;
      -  };
      -  
      -  ///Declare Methods
      -  Command& DeclareProperty(const G4String& name, const G4AnyType& variable, const G4String& doc = "");
      -  Command& DeclarePropertyWithUnit
      -   (const G4String& name, const G4String& defaultUnit, const G4AnyType& variable, const G4String& doc = "");
      -  Command& DeclareMethod(const G4String& name, const G4AnyMethod& fun, const G4String& doc = "");
      -  Command& DeclareMethodWithUnit
      -   (const G4String& name, const G4String& defaultUnit, const G4AnyMethod& fun, const G4String& doc = "");
      -  void SetDirectory(const G4String& dir) {directory = dir;}
      -  void SetGuidance(const G4String& s);
      -    
      -private:
      -  std::map properties;
      -  std::map methods;
      -  G4UIdirectory* dircmd;
      -  G4String directory;
      -  void* object;
      +  public:
      +
      +    G4GenericMessenger(void* obj, const G4String& dir = "",
      +                       const G4String& doc = "");
      +      // Contructor
      +
      +    virtual ~G4GenericMessenger();
      +      // Destructor
      +
      +    virtual G4String GetCurrentValue(G4UIcommand* command);
      +      // The concrete, but generic implementation of this method.
      +
      +    virtual void SetNewValue(G4UIcommand* command, G4String newValue);
      +      // The concrete, generic  implementation of this method converts
      +      // the string "newValue" to action.
      +
      +  public:
      +
      +    struct Command
      +    {
      +      enum UnitSpec
      +      {
      +        UnitCategory,
      +        UnitDefault
      +      };
      +      Command(G4UIcommand* cmd, const std::type_info& ti)
      +        : command(cmd)
      +        , type(&ti)
      +      {}
      +      Command()
      +      {}
      +
      +      Command& SetStates(G4ApplicationState s0)
      +      {
      +        command->AvailableForStates(s0);
      +        return *this;
      +      }
      +      Command& SetStates(G4ApplicationState s0, G4ApplicationState s1)
      +      {
      +        command->AvailableForStates(s0, s1);
      +        return *this;
      +      }
      +      Command& SetStates(G4ApplicationState s0, G4ApplicationState s1,
      +                         G4ApplicationState s2)
      +      {
      +        command->AvailableForStates(s0, s1, s2);
      +        return *this;
      +      }
      +      Command& SetStates(G4ApplicationState s0, G4ApplicationState s1,
      +                         G4ApplicationState s2, G4ApplicationState s3)
      +      {
      +        command->AvailableForStates(s0, s1, s2, s3);
      +        return *this;
      +      }
      +      Command& SetStates(G4ApplicationState s0, G4ApplicationState s1,
      +                         G4ApplicationState s2, G4ApplicationState s3,
      +                         G4ApplicationState s4)
      +      {
      +        command->AvailableForStates(s0, s1, s2, s3, s4);
      +        return *this;
      +      }
      +      Command& SetRange(const G4String& range)
      +      {
      +        command->SetRange(range.c_str());
      +        return *this;
      +      }
      +      Command& SetGuidance(const G4String& s0)
      +      {
      +        command->SetGuidance(s0);
      +        return *this;
      +      }
      +      Command& SetUnit(const G4String&, UnitSpec = UnitDefault);
      +      Command& SetUnitCategory(const G4String& u)
      +      {
      +        return SetUnit(u, UnitCategory);
      +      }
      +      Command& SetDefaultUnit(const G4String& u)
      +      {
      +        return SetUnit(u, UnitDefault);
      +      }
      +      Command& SetParameterName(const G4String&, G4bool, G4bool = false);
      +      Command& SetDefaultValue(const G4String&);
      +      Command& SetCandidates(const G4String&);
      +      Command& SetToBeBroadcasted(G4bool s0)
      +      {
      +        command->SetToBeBroadcasted(s0);
      +        return *this;
      +      }
      +      Command& SetToBeFlushed(G4bool s0)
      +      {
      +        command->SetToBeFlushed(s0);
      +        return *this;
      +      }
      +      Command& SetWorkerThreadOnly(G4bool s0)
      +      {
      +        command->SetWorkerThreadOnly(s0);
      +        return *this;
      +      }
      +
      +      G4UIcommand* command = nullptr;
      +      const std::type_info* type = nullptr;
      +    };
      +
      +    struct Property : public Command
      +    {
      +      Property(const G4AnyType& var, G4UIcommand* cmd)
      +        : Command(cmd, var.TypeInfo())
      +        , variable(var)
      +      {}
      +      Property() {}
      +      G4AnyType variable;
      +    };
      +
      +    struct Method : public Command
      +    {
      +      Method(const G4AnyMethod& fun, void* obj, G4UIcommand* cmd)
      +        : Command(cmd, fun.ArgType())
      +        , method(fun)
      +        , object(obj)
      +      {}
      +      Method()
      +      {}
      +      G4AnyMethod method;
      +      void* object = nullptr;
      +    };
      +
      +    // Declare Methods
      +
      +    Command& DeclareProperty(const G4String& name, const G4AnyType& variable,
      +                             const G4String& doc = "");
      +    Command& DeclarePropertyWithUnit(const G4String& name,
      +                                     const G4String& defaultUnit,
      +                                     const G4AnyType& variable,
      +                                     const G4String& doc = "");
      +    Command& DeclareMethod(const G4String& name, const G4AnyMethod& fun,
      +                           const G4String& doc = "");
      +    Command& DeclareMethodWithUnit(const G4String& name,
      +                                   const G4String& defaultUnit,
      +                                   const G4AnyMethod& fun,
      +                                   const G4String& doc = "");
      +    void SetDirectory(const G4String& dir) { directory = dir; }
      +    void SetGuidance(const G4String& s);
      +
      +  private:
      +
      +    std::map properties;
      +    std::map methods;
      +    G4UIdirectory* dircmd = nullptr;
      +    G4String directory;
      +    void* object = nullptr;
       };
       
      -
       #endif
      -
      diff --git a/source/intercoms/include/G4LocalThreadCoutMessenger.hh b/source/intercoms/include/G4LocalThreadCoutMessenger.hh
      index 3059889495..5260067758 100644
      --- a/source/intercoms/include/G4LocalThreadCoutMessenger.hh
      +++ b/source/intercoms/include/G4LocalThreadCoutMessenger.hh
      @@ -23,15 +23,16 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4LocalThreadCoutMessenger
       //
      +// Class description
       //
      -// class description
      -//
      -// This class is the messenger for handling cout/cerr of local thread
      -//
      +// This class is the messenger for handling cout/cerr of a local thread
       
      -#ifndef G4LocalThreadCoutMessenger_h
      -#define G4LocalThreadCoutMessenger_h 1
      +// Author: M.Asai, 2013
      +// --------------------------------------------------------------------
      +#ifndef G4LocalThreadCoutMessenger_hh
      +#define G4LocalThreadCoutMessenger_hh 1
       
       #include "globals.hh"
       #include "G4UImessenger.hh"
      @@ -42,25 +43,24 @@ class G4UIcmdWithABool;
       class G4UIcmdWithAString;
       class G4UIcmdWithAnInteger;
       
      -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
      -
      -class G4LocalThreadCoutMessenger: public G4UImessenger
      +class G4LocalThreadCoutMessenger : public G4UImessenger
       {
         public:
      +
           G4LocalThreadCoutMessenger();
      -   ~G4LocalThreadCoutMessenger();
      -    
      +    ~G4LocalThreadCoutMessenger();
      +
           void SetNewValue(G4UIcommand*, G4String);
      -    
      -  private:    
      -    G4UIdirectory*             coutDir;
      -    G4UIcommand*               coutFileNameCmd;
      -    G4UIcommand*               cerrFileNameCmd;
      -    G4UIcmdWithABool*      bufferCoutCmd;
      -    G4UIcmdWithAString*    prefixCmd;
      -    G4UIcmdWithAnInteger*  ignoreCmd;
      -    G4UIcmdWithABool*      ignoreInitCmd;
      +
      +  private:
      +
      +    G4UIdirectory* coutDir = nullptr;
      +    G4UIcommand* coutFileNameCmd = nullptr;
      +    G4UIcommand* cerrFileNameCmd = nullptr;
      +    G4UIcmdWithABool* bufferCoutCmd = nullptr;
      +    G4UIcmdWithAString* prefixCmd = nullptr;
      +    G4UIcmdWithAnInteger* ignoreCmd = nullptr;
      +    G4UIcmdWithABool* ignoreInitCmd = nullptr;
       };
       
       #endif
      -
      diff --git a/source/intercoms/include/G4ProfilerMessenger.hh b/source/intercoms/include/G4ProfilerMessenger.hh
      new file mode 100644
      index 0000000000..5ffd334d68
      --- /dev/null
      +++ b/source/intercoms/include/G4ProfilerMessenger.hh
      @@ -0,0 +1,83 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +//
      +//
      +// class description
      +//
      +// This class is the messenger of the class which maintain the profiling
      +// controls (located in global/management/include/G4Profiler.hh).
      +// In general, it forwards to the argument parser provided by timemory
      +
      +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
      +
      +#ifndef G4ProfilerMessenger_h
      +#define G4ProfilerMessenger_h 1
      +
      +#include "globals.hh"
      +#include "G4UImessenger.hh"
      +#include "G4Profiler.hh"
      +
      +class G4UIdirectory;
      +class G4UIcmdWithAString;
      +class G4UIcmdWithABool;
      +
      +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
      +
      +class G4ProfilerMessenger : public G4UImessenger
      +{
      + public:
      +  G4ProfilerMessenger();
      +  ~G4ProfilerMessenger();
      +
      +  // no copy but move is fine
      +  G4ProfilerMessenger(const G4ProfilerMessenger&) = delete;
      +  G4ProfilerMessenger(G4ProfilerMessenger&&)      = default;
      +
      +  // no copy but move is fine
      +  G4ProfilerMessenger& operator=(const G4ProfilerMessenger&) = delete;
      +  G4ProfilerMessenger& operator=(G4ProfilerMessenger&&) = default;
      +
      +  void SetNewValue(G4UIcommand*, G4String);
      +  // G4String GetCurrentValue(G4UIcommand* command);
      +
      + private:
      +  using stringcmd_pair  = std::pair;
      +  using boolcmd_pair    = std::pair;
      +  using directory_array = std::array;
      +  using stringcmd_array = std::array;
      +  using boolcmd_array   = std::array;
      +  using boolcmd_vector  = std::vector;
      +
      +  G4UIdirectory* profileDirectory;
      +  G4UIdirectory* profileOutputDirectory;
      +  directory_array profileTypeDirs;
      +
      +  boolcmd_array profileEnableCmds;
      +  boolcmd_vector profileGeneralCmds;
      +  stringcmd_array profileCompCmds;
      +};
      +
      +#endif
      diff --git a/source/intercoms/include/G4UIaliasList.hh b/source/intercoms/include/G4UIaliasList.hh
      index 40b4799edb..1c1e11c3ad 100644
      --- a/source/intercoms/include/G4UIaliasList.hh
      +++ b/source/intercoms/include/G4UIaliasList.hh
      @@ -23,47 +23,44 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIaliasList
       //
      +// Class description:
       //
      +// This class is exclusively used by G4UImanager for handling the
      +// alias list.
       
      -#ifndef G4UIaliasList_h
      -#define G4UIaliasList_h 1
      +// Author: M.Asai, 1 October 2001
      +// --------------------------------------------------------------------
      +#ifndef G4UIaliasList_hh
      +#define G4UIaliasList_hh 1
       
      -
      -#include "globals.hh"
       #include 
       
      -// class description:
      -//
      -//  This class is exclusively used by G4UImanager for handling the
      -// alias list.
      -// 
      +#include "globals.hh"
       
      -class G4UIaliasList 
      +class G4UIaliasList
       {
         public:
      -      G4UIaliasList();
      -      ~G4UIaliasList();
      +
      +    G4UIaliasList();
      +    ~G4UIaliasList();
      +
      +    void RemoveAlias(const char* aliasName);
      +    void ChangeAlias(const char* aliasName, const char* aliasValue);
      +    G4String* FindAlias(const char* aliasName);
      +    void List();
       
         private:
      -      G4bool operator==(const G4UIaliasList &right) const;
      -      G4bool operator!=(const G4UIaliasList &right) const;
       
      -  public:
      -      void RemoveAlias(const char* aliasName);
      -      void ChangeAlias(const char* aliasName, const char* aliasValue);
      -      G4String* FindAlias(const char* aliasName);
      -      void List();
      +    G4bool operator==(const G4UIaliasList& right) const;
      +    G4bool operator!=(const G4UIaliasList& right) const;
       
      -  private:
      -      void AddNewAlias(const char* aliasName, const char* aliasValue);
      -      G4int FindAliasID(const char* aliasName);
      -
      -  private:
      -      std::vector alias;
      -      std::vector value;
      +    void AddNewAlias(const char* aliasName, const char* aliasValue);
      +    G4int FindAliasID(const char* aliasName);
       
      +    std::vector alias;
      +    std::vector value;
       };
       
       #endif
      -
      diff --git a/source/intercoms/include/G4UIbatch.hh b/source/intercoms/include/G4UIbatch.hh
      index 1067ad8edc..e601cf03c8 100644
      --- a/source/intercoms/include/G4UIbatch.hh
      +++ b/source/intercoms/include/G4UIbatch.hh
      @@ -23,59 +23,56 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIbatch
       //
      -// ====================================================================
      -//   G4UIbatch.hh
      +// Class description:
       //
      -//  This is a concrete class of G4UIsession.
      -//
      -//  This class object is instantiated by G4UImanager at every time 
      -//  when "/control/execute macro_file" command is executed.
      -//  Also in the case of pure batch mode with a macro file, 
      -//  this class can be used as other ordinary G4UIsession 
      -//  concrete classes, i.e. SessionStart() is invoked in main().
      -// ====================================================================
      -#ifndef G4UI_BATCH_H
      -#define G4UI_BATCH_H 1
      +// This is a concrete class of G4UIsession.
      +// This class object is instantiated by G4UImanager every time
      +// the "/control/execute macro_file" command is executed.
      +// Also, in the case of pure batch mode with a macro file,
      +// this class can be used as other ordinary G4UIsession
      +// concrete classes, i.e. SessionStart() is invoked in main().
      +
      +// Author: M.Asai, 2000
      +// --------------------------------------------------------------------
      +#ifndef G4UI_BATCH_HH
      +#define G4UI_BATCH_HH 1
       
      -#include "G4UIsession.hh"
       #include 
       
      -// ====================================================================
      -//
      -// class definition
      -//
      -// ====================================================================
      +#include "G4UIsession.hh"
       
      -class G4UIbatch : public G4UIsession {
      -private:
      -  G4UIsession* previousSession;
      +class G4UIbatch : public G4UIsession
      +{
      +  public:
       
      -  std::ifstream macroStream;
      -  G4bool isOpened;
      +    G4UIbatch(const char* fileName, G4UIsession* prevSession = nullptr);
      +      // "prevSession" must be null if this class is constructed from main().
       
      -  //static G4bool commandFailed;
      +    ~G4UIbatch();
       
      -  // get command from a batch script file
      -  G4String ReadCommand();
      -  G4int ExecCommand(const G4String& command);
      +    inline G4UIsession* GetPreviousSession() const;
       
      -public:
      -  G4UIbatch(const char* fileName, G4UIsession* prevSession=0);
      -  //  "prevSession" must be 0 if this class is constructed
      -  //  from main().
      +    virtual G4UIsession* SessionStart();
      +    virtual void PauseSessionStart(const G4String& Prompt);
       
      -  ~G4UIbatch();
      -  
      -  G4UIsession* GetPreviousSession() const;
      +  private:
       
      -  virtual G4UIsession* SessionStart();
      -  virtual void PauseSessionStart(const G4String& Prompt);
      +    G4String ReadCommand();
      +      // Get command from a batch script file
       
      +    G4int ExecCommand(const G4String& command);
      +
      +    G4UIsession* previousSession = nullptr;
      +
      +    std::ifstream macroStream;
      +    G4bool isOpened = false;
       };
       
      -// ============================================================================
      -// inlines
      +// --------------------------------------------------------------------
      +// Inline methods
      +// --------------------------------------------------------------------
       
       inline G4UIsession* G4UIbatch::GetPreviousSession() const
       {
      diff --git a/source/intercoms/include/G4UIbridge.hh b/source/intercoms/include/G4UIbridge.hh
      index 06f877d775..0da8c09117 100644
      --- a/source/intercoms/include/G4UIbridge.hh
      +++ b/source/intercoms/include/G4UIbridge.hh
      @@ -23,57 +23,43 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIbridge
       //
      -// ====================================================================
      -//   G4UIbridge.hh
      +// Class description:
       //
      -//  This is a concrete class of G4UIsession.
      -//
      -//  This class object is instantiated by G4UImanager at every time 
      -//  when "/control/execute macro_file" command is executed.
      -//  Also in the case of pure batch mode with a macro file, 
      -//  this class can be used as other ordinary G4UIsession 
      -//  concrete classes, i.e. SessionStart() is invoked in main().
      -// ====================================================================
      -#ifndef G4UIbridge_H
      -#define G4UIbridge_H 1
      +// This class is to be used for MT mode.
      +// Register a particular thread-local G4UImanager with a UI command
      +// directory name. When a UI command is issued in the master thread
      +// that starts with this registered directory name, it is immediately
      +// forwarded to the registered G4UImanager. Such forwarded command
      +// is not processed in the master thread nor by other worker thread
      +
      +// Author: A.Dotti, 2013
      +// --------------------------------------------------------------------
      +#ifndef G4UIbridge_hh
      +#define G4UIbridge_hh 1
       
      -class G4UImanager;
       #include "globals.hh"
       
      -// ====================================================================
      -//
      -// class definition
      -//
      -//  G4UIbridge:
      -//   To be used for MT mode. 
      -//   Register a particular thread-local G4UImanager with a UI command
      -//   directory name. When a UI command is issued in the master thread
      -//   that starts with this redistered directory name, it is immediately
      -//   forwarded to the registered G4UImanager. Such forwarded command 
      -//   is not processed in the master thread nor other worker thread.
      -//
      -// ====================================================================
      +class G4UImanager;
       
      -class G4UIbridge 
      +class G4UIbridge
       {
      - public:
      -  G4UIbridge(G4UImanager* localUI,G4String dir);
      -  ~G4UIbridge();
      +  public:
       
      -  G4int ApplyCommand(const G4String& aCmd);
      +    G4UIbridge(G4UImanager* localUI, G4String dir);
      +    ~G4UIbridge();
       
      - private:
      -  G4UImanager* localUImanager;
      -  G4String dirName;
      +    G4int ApplyCommand(const G4String& aCmd);
       
      - public:
      -  inline G4UImanager* LocalUI() const
      -  { return localUImanager; }
      -  inline G4String DirName() const
      -  { return dirName; }
      -  inline G4int DirLength() const
      -  { return dirName.length(); }
      +    inline G4UImanager* LocalUI() const { return localUImanager; }
      +    inline const G4String& DirName() const { return dirName; }
      +    inline G4int DirLength() const { return dirName.length(); }
      +
      +  private:
      +
      +    G4UImanager* localUImanager = nullptr;
      +    G4String dirName;
       };
       
       #endif
      diff --git a/source/intercoms/include/G4UIcmdWith3Vector.hh b/source/intercoms/include/G4UIcmdWith3Vector.hh
      index 3cf89774c3..f8f3c50cd4 100644
      --- a/source/intercoms/include/G4UIcmdWith3Vector.hh
      +++ b/source/intercoms/include/G4UIcmdWith3Vector.hh
      @@ -23,46 +23,51 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWith3Vector
       //
      +// Class description:
       //
      -//
      +// A concrete class of G4UIcommand. The command defined by this class
      +// takes three double values.
      +// General information of G4UIcommand is given in G4UIcommand.hh
       
      -#ifndef G4UIcmdWith3Vector_H
      -#define G4UIcmdWith3Vector_H 1
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UIcmdWith3Vector_hh
      +#define G4UIcmdWith3Vector_hh 1
       
       #include "G4UIcommand.hh"
       #include "G4ThreeVector.hh"
       
      -// class description:
      -//  A concrete class of G4UIcommand. The command defined by this class
      -// takes three double values.
      -//  General information of G4UIcommand is given in G4UIcommand.hh.
      -
       class G4UIcmdWith3Vector : public G4UIcommand
       {
      -  public: // with description
      -    G4UIcmdWith3Vector
      -    (const char * theCommandPath,G4UImessenger * theMessenger);
      -    //  Constructor. The command string with full path directory
      -    // and the pointer to the messenger must be given.
      +  public:
      +
      +    G4UIcmdWith3Vector(const char* theCommandPath, G4UImessenger* theMessenger);
      +      // Constructor. The command string with full path directory
      +      // and the pointer to the messenger must be given
      +
           static G4ThreeVector GetNew3VectorValue(const char* paramString);
      -    //  Convert string which represents three double values to
      -    // G4ThreeVector.
      -    void SetParameterName(const char * theNameX,const char * theNameY,
      -      const char * theNameZ,G4bool omittable,G4bool currentAsDefault=false);
      -    //  Set the parameter names for three parameters. Names are used by
      -    // the range checking routine.
      -    //  If "omittable" is set as true, the user of this command can ommit
      -    // the value(s) when he/she applies the command. If "omittable" is false,
      -    // the user must supply all three values.
      -    //  "currentAsDefault" flag is valid only if "omittable" is true. If this
      -    // flag is true, the current values are used as the default values when the 
      -    // user ommit some of the parameters. If this flag is false, the values
      -    // given by the next SetDefaultValue() method are used. 
      +      // Convert string which represents three double values to
      +      // G4ThreeVector
      +
      +    void SetParameterName(const char* theNameX, const char* theNameY,
      +                          const char* theNameZ, G4bool omittable,
      +                          G4bool currentAsDefault = false);
      +      // Set the parameter names for three parameters. Names are used by
      +      // the range checking function.
      +      // If "omittable" is set as true, the user of this command can omit
      +      // the value(s) when the command is applied. If "omittable" is false,
      +      // the user must supply all three values.
      +      // "currentAsDefault" flag is valid only if "omittable" is true. If this
      +      // flag is true, the current values are used as the default values when
      +      // the user omits some of the parameters. If this flag is false, the
      +      // values given by the next SetDefaultValue() method are used
      +
           void SetDefaultValue(G4ThreeVector defVal);
      -    //  Set the default values of the parameters. These default values are used
      -    // when the user of this command ommits some of the parameter values, and
      -    // "ommitable" is true and "currentAsDefault" is false.
      +      // Set the default values of the parameters. These default values are
      +      // used when the user of this command omits some of the parameter values,
      +      // and "omittable" is true and "currentAsDefault" is false
       };
       
       #endif
      diff --git a/source/intercoms/include/G4UIcmdWith3VectorAndUnit.hh b/source/intercoms/include/G4UIcmdWith3VectorAndUnit.hh
      index d154c49cde..5bfcd371b3 100644
      --- a/source/intercoms/include/G4UIcmdWith3VectorAndUnit.hh
      +++ b/source/intercoms/include/G4UIcmdWith3VectorAndUnit.hh
      @@ -23,80 +23,94 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWith3VectorAndUnit
       //
      +// Class description:
       //
      -//
      +// A concrete class of G4UIcommand. The command defined by this class
      +// takes three double values and a unit.
      +// General information of G4UIcommand is given in G4UIcommand.hh
       
      -#ifndef G4UIcmdWith3VectorAndUnit_H
      -#define G4UIcmdWith3VectorAndUnit_H 1
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UIcmdWith3VectorAndUnit_hh
      +#define G4UIcmdWith3VectorAndUnit_hh 1
       
       #include "G4UIcommand.hh"
       #include "G4ThreeVector.hh"
       
      -// class description:
      -//  A concrete class of G4UIcommand. The command defined by this class
      -// takes three double values and a unit.
      -//  General information of G4UIcommand is given in G4UIcommand.hh.
      -
       class G4UIcmdWith3VectorAndUnit : public G4UIcommand
       {
      -  public: // with description
      -    G4UIcmdWith3VectorAndUnit
      -    (const char * theCommandPath,G4UImessenger * theMessenger);
      -    //  Constructor. The command string with full path directory
      -    // and the pointer to the messenger must be given.
      +  public:
      +
      +    G4UIcmdWith3VectorAndUnit(const char* theCommandPath,
      +                              G4UImessenger* theMessenger);
      +      // Constructor. The command string with full path directory
      +      // and the pointer to the messenger must be given
      +
           virtual G4int DoIt(G4String parameterList);
      +
           static G4ThreeVector GetNew3VectorValue(const char* paramString);
      -    //  Convert string which represents three double values and a unit to
      -    // G4ThreeVector. Values are converted to the Geant4 internal unit.
      +      // Convert string which represents three double values and a unit to
      +      // G4ThreeVector. Values are converted to the Geant4 internal unit
      +
           static G4ThreeVector GetNew3VectorRawValue(const char* paramString);
      -    //  Convert string which represents three double values and a unit to
      -    // G4ThreeVector. Values are NOT converted to the Geant4 internal unit
      -    // but just as the given string.
      +      // Convert string which represents three double values and a unit to
      +      // G4ThreeVector. Values are NOT converted to the Geant4 internal unit
      +      // but just as the given string
      +
           static G4double GetNewUnitValue(const char* paramString);
      -    //  Convert the unit string to the value of the unit. "paramString"
      -    // must contain three double values AND a unit string.
      +      // Convert the unit string to the value of the unit. "paramString"
      +      // must contain three double values AND a unit string
      +
           G4String ConvertToStringWithBestUnit(G4ThreeVector vec);
      -    //  Convert a 3 vector value to a string of digits and unit. Best unit is
      -    // chosen from the unit category of default unit (in case SetDefaultUnit()
      -    //  is defined) or category defined by SetUnitCategory().
      +      // Convert a 3 vector value to a string of digits and unit. Best unit is
      +      // chosen from the unit category of default unit (in case SetDefaultUnit()
      +      // is defined) or category defined by SetUnitCategory()
      +
           G4String ConvertToStringWithDefaultUnit(G4ThreeVector vec);
      -    //  Convert a 3 vector value to a string of digits and unit. Best unit is
      -    // chosen from the category defined by SetUnitCategory() in case default
      -    // unit is not defined.
      -    void SetParameterName(const char * theNameX,const char * theNameY,
      -      const char * theNameZ,G4bool omittable,G4bool currentAsDefault=false);
      -    //  Set the parameter names for three parameters. Names are used by
      -    // the range checking routine.
      -    //  If "omittable" is set as true, the user of this command can ommit
      -    // the value(s) when he/she applies the command. If "omittable" is false,
      -    // the user must supply all three values.
      -    //  "currentAsDefault" flag is valid only if "omittable" is true. If this
      -    // flag is true, the current values are used as the default values when the
      -    // user ommit some of the parameters. If this flag is false, the values
      -    // given by the next SetDefaultValue() method are used.
      +      // Convert a 3 vector value to a string of digits and unit. Best unit is
      +      // chosen from the category defined by SetUnitCategory() in case default
      +      // unit is not defined
      +
      +    void SetParameterName(const char* theNameX, const char* theNameY,
      +                          const char* theNameZ, G4bool omittable,
      +                          G4bool currentAsDefault = false);
      +      // Set the parameter names for three parameters. Names are used by
      +      // the range checking routine.
      +      // If "omittable" is set as true, the user of this command can omit
      +      // the value(s) when the command is applied. If "omittable" is false,
      +      // the user must supply all three values.
      +      // "currentAsDefault" flag is valid only if "omittable" is true. If this
      +      // flag is true, the current values are used as the default values when
      +      // the user omit some of the parameters. If this flag is false, the values
      +      // given by the next SetDefaultValue() method are used
      +
           void SetDefaultValue(G4ThreeVector defVal);
      -    //  Set the default values of the parameters. These default values are used
      -    // when the user of this command ommits some of the parameter values, and
      -    // "ommitable" is true and "currentAsDefault" is false.
      -    void SetUnitCategory(const char * unitCategory);
      -    void SetUnitCandidates(const char * candidateList);
      -    void SetDefaultUnit(const char * defUnit);
      -    //  These three methods must be used alternatively.
      -    //  The user cannot ommit the unit as the fourth parameter of the command if
      -    // SetUnitCategory() or SetUnitCandidates() is used, while the unit defined
      -    // by SetDefaultUnit() method is used as the default unit so that the user can
      -    // ommits the fourth parameter.
      -    //  SetUnitCategory() defines the category of the units which will be accepted.
      -    // The available categories can be found in G4SystemOfUnits.hh in global category.
      -    // Only the units categorized in the given category are accepted as the fourth
      -    // parameter of the command.
      -    //  SetUnitCandidates() defines the candidates of units. Units listed in the
      -    // argument of this method must be separated by space(s). Only the units listed
      -    // in the candidate list are accepted as the fourth parameter of the command.
      -    //  SetDefaultUnit() defines the default unit and also it defines the category
      -    // of the allowed units. Thus only the units categorized as the given default
      -    // unit will be accepted.
      +      // Set the default values of the parameters. These default values are used
      +      // when the user of this command omits some of the parameter values, and
      +      // "omittable" is true and "currentAsDefault" is false
      +
      +    void SetUnitCategory(const char* unitCategory);
      +    void SetUnitCandidates(const char* candidateList);
      +    void SetDefaultUnit(const char* defUnit);
      +      // These three methods must be used alternatively.
      +      // The user cannot omit the unit as the fourth parameter of the command
      +      // if SetUnitCategory() or SetUnitCandidates() is used, while the unit
      +      // defined by SetDefaultUnit() method is used as the default unit so that
      +      // the user can omit the fourth parameter.
      +      // SetUnitCategory() defines the category of the units which will be
      +      // accepted.
      +      // The available categories can be found in G4SystemOfUnits.hh in 'global'
      +      // category. Only the units categorized in the given category are accepted
      +      // as the fourth parameter of the command.
      +      // SetUnitCandidates() defines the candidates of units. Units listed in
      +      // the argument of this method must be separated by space(s). Only the
      +      // units listed in the candidate list are accepted as the fourth parameter
      +      // of the command.
      +      // SetDefaultUnit() defines the default unit and also defines the category
      +      // of the allowed units. Thus only the units categorized as the given
      +      // default unit will be accepted.
       };
       
       #endif
      diff --git a/source/intercoms/include/G4UIcmdWithABool.hh b/source/intercoms/include/G4UIcmdWithABool.hh
      index 16c4c3c610..7b5c58e519 100644
      --- a/source/intercoms/include/G4UIcmdWithABool.hh
      +++ b/source/intercoms/include/G4UIcmdWithABool.hh
      @@ -23,47 +23,51 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWithABool
       //
      +// Class description:
       //
      -//
      +// A concrete class of G4UIcommand. The command defined by this class
      +// takes a Boolean value. Boolean value can be in the following notations:
      +//    TRUE :
      +//       1 t T true TRUE
      +//    FALSE :
      +//       0 f F false FALSE
      +// General information of G4UIcommand is given in G4UIcommand.hh
       
      -#ifndef G4UIcmdWithABool_H
      -#define G4UIcmdWithABool_H 1
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UIcmdWithABool_hh
      +#define G4UIcmdWithABool_hh 1
       
       #include "G4UIcommand.hh"
       
      -// class description:
      -//  A concrete class of G4UIcommand. The command defined by this class
      -// takes a boolean value. Boolean value can be the following notations.
      -//    TRUE : 
      -//       1 t T true TRUE
      -//    FALSE : 
      -//       0 f F false FALSE
      -//  General information of G4UIcommand is given in G4UIcommand.hh.
      -
       class G4UIcmdWithABool : public G4UIcommand
       {
      -  public: // with description
      -    G4UIcmdWithABool
      -    (const char * theCommandPath,G4UImessenger * theMessenger);
      -    //  Constructor. The command string with full path directory
      -    // and the pointer to the messenger must be given.
      +  public:
      +
      +    G4UIcmdWithABool(const char* theCommandPath, G4UImessenger* theMessenger);
      +      // Constructor. The command string with full path directory
      +      // and the pointer to the messenger must be given
      +
           static G4bool GetNewBoolValue(const char* paramString);
      -    //  Convert string which represents a boolean value to G4bool.
      -    void SetParameterName(const char * theName,G4bool omittable,
      -                          G4bool currentAsDefault=false);
      -    //  Set the parameter name for a boolean parameter.
      -    //  If "omittable" is set as true, the user of this command can ommit
      -    // the value when he/she applies the command. If "omittable" is false,
      -    // the user must supply a boolean value.
      -    //  "currentAsDefault" flag is valid only if "omittable" is true. If this
      -    // flag is true, the current value is used as the default value when the 
      -    // user ommit the parameter. If this flag is false, the value given by the 
      -    // next SetDefaultValue() method is used.
      +      // Convert string which represents a boolean value to G4bool
      +
      +    void SetParameterName(const char* theName, G4bool omittable,
      +                          G4bool currentAsDefault = false);
      +      // Set the parameter name for a Boolean parameter.
      +      // If "omittable" is set as true, the user of this command can omit
      +      // the value when the command is applied. If "omittable" is false,
      +      // the user must supply a Boolean value.
      +      // "currentAsDefault" flag is valid only if "omittable" is true. If this
      +      // flag is true, the current value is used as the default value when the
      +      // user omits the parameter. If this flag is false, the value given by the
      +      // next SetDefaultValue() method is used
      +
           void SetDefaultValue(G4bool defVal);
      -    //  Set the default value of the parameter. This default value is used
      -    // when the user of this command ommits the parameter value, and
      -    // "ommitable" is true and "currentAsDefault" is false.
      +      // Set the default value of the parameter. This default value is used
      +      // when the user of this command omits the parameter value, and
      +      // "omittable" is true and "currentAsDefault" is false
       };
       
       #endif
      diff --git a/source/intercoms/include/G4UIcmdWithADouble.hh b/source/intercoms/include/G4UIcmdWithADouble.hh
      index c6e97d2aee..de0e388ca1 100644
      --- a/source/intercoms/include/G4UIcmdWithADouble.hh
      +++ b/source/intercoms/include/G4UIcmdWithADouble.hh
      @@ -23,43 +23,47 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWithADouble
       //
      +// Class description:
       //
      -//
      +// A concrete class of G4UIcommand. The command defined by this class
      +// takes a double value.
      +// General information of G4UIcommand is given in G4UIcommand.hh
       
      -#ifndef G4UIcmdWithADouble_H
      -#define G4UIcmdWithADouble_H 1
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UIcmdWithADouble_hh
      +#define G4UIcmdWithADouble_hh 1
       
       #include "G4UIcommand.hh"
       
      -// class description:
      -//  A concrete class of G4UIcommand. The command defined by this class
      -// takes a double value.
      -//  General information of G4UIcommand is given in G4UIcommand.hh.
      -
       class G4UIcmdWithADouble : public G4UIcommand
       {
      -  public: // with description
      -    G4UIcmdWithADouble
      -    (const char * theCommandPath,G4UImessenger * theMessenger);
      -    //  Constructor. The command string with full path directory
      -    // and the pointer to the messenger must be given.
      +  public:
      +
      +    G4UIcmdWithADouble(const char* theCommandPath, G4UImessenger* theMessenger);
      +      // Constructor. The command string with full path directory
      +      // and the pointer to the messenger must be given
      +
           static G4double GetNewDoubleValue(const char* paramString);
      -    //  Convert string which represents a double value to a double.
      -    void SetParameterName(const char * theName,G4bool omittable,
      -                          G4bool currentAsDefault=false);
      -    //  Set the parameter name. The name is used by the range checking.
      -    //  If "omittable" is set as true, the user of this command can ommit
      -    // the value when he/she applies the command. If "omittable" is false,
      -    // the user must supply a double value.
      -    //  "currentAsDefault" flag is valid only if "omittable" is true. If this
      -    // flag is true, the current value is used as the default value when the 
      -    // user ommit the parameter. If this flag is false, the value given by the 
      -    // next SetDefaultValue() method is used.
      +      // Convert string which represents a double value to a double
      +
      +    void SetParameterName(const char* theName, G4bool omittable,
      +                          G4bool currentAsDefault = false);
      +      // Set the parameter name. The name is used by the range checking.
      +      // If "omittable" is set as true, the user of this command can omit
      +      // the value when the command is applied. If "omittable" is false,
      +      // the user must supply a double value.
      +      // "currentAsDefault" flag is valid only if "omittable" is true. If this
      +      // flag is true, the current value is used as the default value when the
      +      // user omits the parameter. If this flag is false, the value given by
      +      // the next SetDefaultValue() method is used
      +
           void SetDefaultValue(G4double defVal);
      -    //  Set the default value of the parameter. This default value is used
      -    // when the user of this command ommits the parameter value, and
      -    // "ommitable" is true and "currentAsDefault" is false.
      +      // Set the default value of the parameter. This default value is used
      +      // when the user of this command omits the parameter value, and
      +      // "omittable" is true and "currentAsDefault" is false
       };
       
       #endif
      diff --git a/source/intercoms/include/G4UIcmdWithADoubleAndUnit.hh b/source/intercoms/include/G4UIcmdWithADoubleAndUnit.hh
      index b9ecba2719..a6ab9258bb 100644
      --- a/source/intercoms/include/G4UIcmdWithADoubleAndUnit.hh
      +++ b/source/intercoms/include/G4UIcmdWithADoubleAndUnit.hh
      @@ -23,79 +23,92 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWithADoubleAndUnit
       //
      +// Class description:
       //
      -//
      +// A concrete class of G4UIcommand. The command defined by this class
      +// takes a double value and a unit string.
      +// General information of G4UIcommand is given in G4UIcommand.hh
       
      -#ifndef G4UIcmdWithADoubleAndUnit_H
      -#define G4UIcmdWithADoubleAndUnit_H 1
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UIcmdWithADoubleAndUnit_hh
      +#define G4UIcmdWithADoubleAndUnit_hh 1
       
       #include "G4UIcommand.hh"
       
      -// class description:
      -//  A concrete class of G4UIcommand. The command defined by this class
      -// takes a double value and a unit string.
      -//  General information of G4UIcommand is given in G4UIcommand.hh.
      -
       class G4UIcmdWithADoubleAndUnit : public G4UIcommand
       {
      -  public: // with description
      -    G4UIcmdWithADoubleAndUnit
      -    (const char * theCommandPath,G4UImessenger * theMessenger);
      -    //  Constructor. The command string with full path directory
      -    // and the pointer to the messenger must be given.
      +  public:
      +
      +    G4UIcmdWithADoubleAndUnit(const char* theCommandPath,
      +                              G4UImessenger* theMessenger);
      +      // Constructor. The command string with full path directory
      +      // and the pointer to the messenger must be given
      +
           virtual G4int DoIt(G4String parameterList);
      +
           static G4double GetNewDoubleValue(const char* paramString);
      -    //  Convert string which represents a double value and a unit to
      -    // double. Value is converted to the Geant4 internal unit.
      +      // Convert string which represents a double value and a unit to
      +      // double. Value is converted to the Geant4 internal unit
      +
           static G4double GetNewDoubleRawValue(const char* paramString);
      -    //  Convert string which represents a double value and a unit to
      -    // double. Value is NOT converted to the Geant4 internal unit
      -    // but just as the given string.
      +      // Convert string which represents a double value and a unit to
      +      // double. Value is NOT converted to the Geant4 internal unit
      +      // but just as the given string
      +
           static G4double GetNewUnitValue(const char* paramString);
      -    //  Convert the unit string to the value of the unit. "paramString"
      -    // must contain a double value AND a unit string.
      +      // Convert the unit string to the value of the unit. "paramString"
      +      // must contain a double value AND a unit string
      +
           G4String ConvertToStringWithBestUnit(G4double val);
      -    //  Convert a double value to a string of digits and unit. Best unit is
      -    // chosen from the unit category of default unit (in case SetDefaultUnit()
      -    //  is defined) or category defined by SetUnitCategory().
      +      // Convert a double value to a string of digits and unit. Best unit is
      +      // chosen from the unit category of default unit (in case SetDefaultUnit()
      +      // is defined) or category defined by SetUnitCategory()
      +
           G4String ConvertToStringWithDefaultUnit(G4double val);
      -    //  Convert a double value to a string of digits and unit. Best unit is
      -    // chosen from the category defined by SetUnitCategory() in case default
      -    // unit is not defined.
      -    void SetParameterName(const char * theName,G4bool omittable,
      -                          G4bool currentAsDefault=false);
      -    //  Set the parameter name for double parameterxs. Name is used by
      -    // the range checking routine.
      -    //  If "omittable" is set as true, the user of this command can ommit
      -    // the value when he/she applies the command. If "omittable" is false,
      -    // the user must supply a value.
      -    //  "currentAsDefault" flag is valid only if "omittable" is true. If this
      -    // flag is true, the current value is used as the default value when the
      -    // user ommit the double parameter. If this flag is false, the value
      -    // given by the next SetDefaultValue() method is used.
      +      // Convert a double value to a string of digits and unit. Best unit is
      +      // chosen from the category defined by SetUnitCategory() in case default
      +      // unit is not defined
      +
      +    void SetParameterName(const char* theName, G4bool omittable,
      +                          G4bool currentAsDefault = false);
      +      // Set the parameter name for double parameters. Name is used by
      +      // the range checking function.
      +      // If "omittable" is set as true, the user of this command can omit
      +      // the value when the command is applied. If "omittable" is false,
      +      // the user must supply a value.
      +      // "currentAsDefault" flag is valid only if "omittable" is true. If this
      +      // flag is true, the current value is used as the default value when the
      +      // user omits the double parameter. If this flag is false, the value
      +      // given by the next SetDefaultValue() method is used
      +
           void SetDefaultValue(G4double defVal);
      -    //  Set the default value of the parameter. This default value is used
      -    // when the user of this command ommits the parameter value, and
      -    // "ommitable" is true and "curreutAsDefault" is false.
      -    void SetUnitCategory(const char * unitCategory);
      -    void SetUnitCandidates(const char * candidateList);
      -    void SetDefaultUnit(const char * defUnit);
      -    //  These three methods must be used alternatively.
      -    //  The user cannot ommit the unit as the second parameter of the command if
      -    // SetUnitCategory() or SetUnitCandidates() is used, while the unit defined
      -    // by SetDefaultUnit() method is used as the default unit so that the user can
      -    // ommits the second parameter.
      -    //  SetUnitCategory() defines the category of the units which will be accepted.
      -    // The available categories can be found in G4SystemOfUnits.hh in global category.
      -    // Only the units categorized in the given category are accepted as the second
      -    // parameter of the command.
      -    //  SetUnitCandidates() defines the candidates of units. Units listed in the
      -    // argument of this method must be separated by space(s). Only the units listed
      -    // in the candidate list are accepted as the second parameter of the command.
      -    //  SetDefaultUnit() defines the default unit and also it defines the category
      -    // of the allowed units. Thus only the units categorized as the given default
      -    // unit will be accepted.
      +      // Set the default value of the parameter. This default value is used
      +      // when the user of this command omits the parameter value, and
      +      // "omittable" is true and "currentAsDefault" is false
      +
      +    void SetUnitCategory(const char* unitCategory);
      +    void SetUnitCandidates(const char* candidateList);
      +    void SetDefaultUnit(const char* defUnit);
      +      // These three methods must be used alternatively.
      +      // The user cannot omit the unit as the second parameter of the command
      +      // if SetUnitCategory() or SetUnitCandidates() is used, while the unit
      +      // defined by SetDefaultUnit() method is used as the default unit so that
      +      // the user can omit the second parameter.
      +      // SetUnitCategory() defines the category of the units which will be
      +      // accepted.
      +      // The available categories can be found in G4SystemOfUnits.hh in 'global'
      +      // category. Only the units categorized in the given category are accepted
      +      // as the second parameter of the command.
      +      // SetUnitCandidates() defines the candidates of units. Units listed in
      +      // the argument of this method must be separated by space(s). Only the
      +      // units listed in the candidate list are accepted as the second parameter
      +      // of the command.
      +      // SetDefaultUnit() defines the default unit and also defines the category
      +      // of the allowed units. Thus only the units categorized as the given
      +      // default unit will be accepted
       };
       
       #endif
      diff --git a/source/intercoms/include/G4UIcmdWithALongInt.hh b/source/intercoms/include/G4UIcmdWithALongInt.hh
      new file mode 100644
      index 0000000000..b79df1427e
      --- /dev/null
      +++ b/source/intercoms/include/G4UIcmdWithALongInt.hh
      @@ -0,0 +1,69 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4UIcmdWithALongInt
      +//
      +// Class description:
      +//
      +// A concrete class of G4UIcommand. The command defined by this class
      +// takes a long int value.
      +// General information of G4UIcommand is given in G4UIcommand.hh
      +
      +// Author: M.Asai, 2020
      +// --------------------------------------------------------------------
      +#ifndef G4UIcmdWithALongInt_hh
      +#define G4UIcmdWithALongInt_hh 1
      +
      +#include "G4UIcommand.hh"
      +
      +class G4UIcmdWithALongInt : public G4UIcommand
      +{
      +  public:
      +
      +    G4UIcmdWithALongInt(const char* commandPath, G4UImessenger* messenger);
      +      // Constructor. The command string with full path directory
      +      // and the pointer to the messenger must be given
      +
      +    static G4long GetNewLongIntValue(const char* paramString);
      +      // Convert string to long int
      +
      +    void SetParameterName(const char* theName, G4bool omittable,
      +                          G4bool currentAsDefault = false);
      +      // Set the parameter name. The name is used by the range checking.
      +      // If "omittable" is set as true, the user of this command can omit
      +      // the value when the command is applied. If "omittable" is false,
      +      // the user must supply an integer value.
      +      // "currentAsDefault" flag is valid only if "omittable" is true. If this
      +      // flag is true, the current value is used as the default value when the
      +      // user omits the parameter. If this flag is false, the value given by
      +      // the next SetDefaultValue() method is used
      +
      +    void SetDefaultValue(G4long defVal);
      +      // Set the default value of the parameter. This default value is used
      +      // when the user of this command omits the parameter value, and
      +      // "omittable" is true and "currentAsDefault" is false
      +};
      +
      +#endif
      diff --git a/source/intercoms/include/G4UIcmdWithAString.hh b/source/intercoms/include/G4UIcmdWithAString.hh
      index 418220b893..a965780aa9 100644
      --- a/source/intercoms/include/G4UIcmdWithAString.hh
      +++ b/source/intercoms/include/G4UIcmdWithAString.hh
      @@ -23,45 +23,48 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWithAString
       //
      +// Class description:
       //
      -//
      +// A concrete class of G4UIcommand. The command defined by this class
      +// takes a string. In case the parameter string contains space(s), it
      +// must be enclosed by double-quotations (").
      +// General information of G4UIcommand is given in G4UIcommand.hh
       
      -#ifndef G4UIcmdWithAString_H
      -#define G4UIcmdWithAString_H 1
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UIcmdWithAString_hh
      +#define G4UIcmdWithAString_hh 1
       
       #include "G4UIcommand.hh"
       
      -// class description:
      -//  A concrete class of G4UIcommand. The command defined by this class
      -// takes a string. Incase the parameter string contains space(s), it
      -// must be enclosed by double-quotations (").
      -//  General information of G4UIcommand is given in G4UIcommand.hh.
      -
       class G4UIcmdWithAString : public G4UIcommand
       {
      -  public: // with description
      -    G4UIcmdWithAString
      -    (const char * theCommandPath,G4UImessenger * theMessenger);
      -    //  Constructor. The command string with full path directory
      -    // and the pointer to the messenger must be given.
      -    void SetParameterName(const char * theName,G4bool omittable,
      -                          G4bool currentAsDefault=false);
      -    //  Set the parameter name.
      -    //  If "omittable" is set as true, the user of this command can ommit
      -    // the value when he/she applies the command. If "omittable" is false,
      -    // the user must supply the parameter string.
      -    //  "currentAsDefault" flag is valid only if "omittable" is true. If this
      -    // flag is true, the current value is used as the default value when the 
      -    // user ommit the parameter. If this flag is false, the value given by the 
      -    // next SetDefaultValue() method is used.
      -    void SetCandidates(const char * candidateList);
      -    //  Defines the candidates of the parameter string. Candidates listed in
      -    // the argument must be separated by space(s).
      -    void SetDefaultValue(const char * defVal);
      -    //  Set the default value of the parameter. This default value is used
      -    // when the user of this command ommits the parameter value, and
      -    // "ommitable" is true and "curreutAsDefault" is false.
      +  public:
      +
      +    G4UIcmdWithAString(const char* theCommandPath, G4UImessenger* theMessenger);
      +      // Constructor. The command string with full path directory
      +      // and the pointer to the messenger must be given
      +
      +    void SetParameterName(const char* theName, G4bool omittable,
      +                          G4bool currentAsDefault = false);
      +      // If "omittable" is set to true, the user of this command can omit
      +      // the value when the command is applied. If "omittable" is false,
      +      // the user must supply the parameter string.
      +      // "currentAsDefault" flag is valid only if "omittable" is true. If this
      +      // flag is true, the current value is used as the default value when the
      +      // user omits the parameter. If this flag is false, the value given by the
      +      // next SetDefaultValue() method is used
      +
      +    void SetCandidates(const char* candidateList);
      +      // Defines the candidates of the parameter string. Candidates listed in
      +      // the argument must be separated by space(s)
      +
      +    void SetDefaultValue(const char* defVal);
      +      // Set the default value of the parameter. This default value is used
      +      // when the user of this command omits the parameter value, and
      +      // "omittable" is true and "currentAsDefault" is false
       };
       
       #endif
      diff --git a/source/intercoms/include/G4UIcmdWithAnInteger.hh b/source/intercoms/include/G4UIcmdWithAnInteger.hh
      index 587e433a52..0322d4edb0 100644
      --- a/source/intercoms/include/G4UIcmdWithAnInteger.hh
      +++ b/source/intercoms/include/G4UIcmdWithAnInteger.hh
      @@ -23,43 +23,47 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWithAnInteger
       //
      +// Class description:
       //
      -//
      +// A concrete class of G4UIcommand. The command defined by this class
      +// takes an integer value.
      +// General information of G4UIcommand is given in G4UIcommand.hh
       
      -#ifndef G4UIcmdWithAnInteger_H
      -#define G4UIcmdWithAnInteger_H 1
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UIcmdWithAnInteger_hh
      +#define G4UIcmdWithAnInteger_hh 1
       
       #include "G4UIcommand.hh"
       
      -// class description:
      -//  A concrete class of G4UIcommand. The command defined by this class
      -// takes an integer value.
      -//  General information of G4UIcommand is given in G4UIcommand.hh.
      -
       class G4UIcmdWithAnInteger : public G4UIcommand
       {
      -  public: // with description
      -    G4UIcmdWithAnInteger
      -    (const char * theCommandPath,G4UImessenger * theMessenger);
      -    //  Constructor. The command string with full path directory
      -    // and the pointer to the messenger must be given.
      +  public:
      +
      +    G4UIcmdWithAnInteger(const char* commandPath, G4UImessenger* messenger);
      +      // Constructor. The command string with full path directory
      +      // and the pointer to the messenger must be given
      +
           static G4int GetNewIntValue(const char* paramString);
      -    //  Convert string which represents an integer to an integer.
      -    void SetParameterName(const char * theName,G4bool omittable,
      -                          G4bool currentAsDefault=false);
      -    //  Set the parameter name. The name is used by the range checking.
      -    //  If "omittable" is set as true, the user of this command can ommit
      -    // the value when he/she applies the command. If "omittable" is false,
      -    // the user must supply an integer value.
      -    //  "currentAsDefault" flag is valid only if "omittable" is true. If this
      -    // flag is true, the current value is used as the default value when the 
      -    // user ommit the parameter. If this flag is false, the value given by the 
      -    // next SetDefaultValue() method is used.
      +      // Convert string which represents an integer to an integer
      +
      +    void SetParameterName(const char* theName, G4bool omittable,
      +                          G4bool currentAsDefault = false);
      +      // Set the parameter name. The name is used by the range checking.
      +      // If "omittable" is set as true, the user of this command can omit
      +      // the value when the command is applied. If "omittable" is false,
      +      // the user must supply an integer value.
      +      // "currentAsDefault" flag is valid only if "omittable" is true. If this
      +      // flag is true, the current value is used as the default value when the
      +      // user omits the parameter. If this flag is false, the value given by
      +      // the next SetDefaultValue() method is used
      +
           void SetDefaultValue(G4int defVal);
      -    //  Set the default value of the parameter. This default value is used
      -    // when the user of this command ommits the parameter value, and
      -    // "ommitable" is true and "currentAsDefault" is false.
      +      // Set the default value of the parameter. This default value is used
      +      // when the user of this command omits the parameter value, and
      +      // "omittable" is true and "currentAsDefault" is false
       };
       
       #endif
      diff --git a/source/intercoms/include/G4UIcmdWithoutParameter.hh b/source/intercoms/include/G4UIcmdWithoutParameter.hh
      index b6b49f3ae3..4cfb8b7384 100644
      --- a/source/intercoms/include/G4UIcmdWithoutParameter.hh
      +++ b/source/intercoms/include/G4UIcmdWithoutParameter.hh
      @@ -23,27 +23,29 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWithoutParameter
       //
      +// Class description:
       //
      -//
      +// A concrete class of G4UIcommand. The command defined by this class
      +// takes no parameter argument.
      +// General information of G4UIcommand is given in G4UIcommand.hh
       
      -#ifndef G4UIcmdWithoutParameter_H
      -#define G4UIcmdWithoutParameter_H 1
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UIcmdWithoutParameter_hh
      +#define G4UIcmdWithoutParameter_hh 1
       
       #include "G4UIcommand.hh"
       
      -// class description:
      -//  A concrete class of G4UIcommand. The command defined by this class
      -// takes no parameter argument.
      -//  General information of G4UIcommand is given in G4UIcommand.hh.
      -
       class G4UIcmdWithoutParameter : public G4UIcommand
       {
      -  public: // with description
      -    G4UIcmdWithoutParameter
      -    (const char * theCommandPath,G4UImessenger * theMessenger);
      -    //  Constructor. The command string with full path directory
      -    // and the pointer to the messenger must be given.
      +  public:
      +
      +    G4UIcmdWithoutParameter(const char* theCommandPath,
      +                            G4UImessenger* theMessenger);
      +      // Constructor. The command string with full path directory
      +      // and the pointer to the messenger must be given
       };
       
       #endif
      diff --git a/source/intercoms/include/G4UIcommand.hh b/source/intercoms/include/G4UIcommand.hh
      index 74b453841e..61bbcf5467 100644
      --- a/source/intercoms/include/G4UIcommand.hh
      +++ b/source/intercoms/include/G4UIcommand.hh
      @@ -24,236 +24,242 @@
       // ********************************************************************
       //
       // G4UIcommand
      +//
      +// Class description:
      +//
      +// This G4UIcommand is the "concrete" base class which represents a command
      +// used by Geant4 (G)UI. The user can use this class in case the parameter
      +// arguments of a command are not suitable with respect to the derived command
      +// classes.
      +// Some methods defined in this base class are used by the derived classes
       
      -// Author: Makoto Asai (SLAC)
      +// Author: Makoto Asai (SLAC), 1998
       // --------------------------------------------------------------------
       #ifndef G4UIcommand_hh
       #define G4UIcommand_hh 1
       
      +#include 
      +
       #include "G4UIparameter.hh"
      -class G4UImessenger;
       #include "globals.hh"
       #include "G4ApplicationState.hh"
      -#include 
       #include "G4UItokenNum.hh"
       #include "G4ThreeVector.hh"
       
      -// class description:
      -//
      -//  This G4UIcommand is the "concrete" base class which represents a command
      -// used by Geant4 (G)UI. The user can use this class in case the parameter
      -// arguments of a command are not suitable with respect to the derived command
      -// classes.
      -//  Some methods defined in this base class are used by the derived classes.
      -//
      +class G4UImessenger;
       
       class G4UIcommand
       {
         public:
      -      G4UIcommand();
      -  public: // with description
      -      G4UIcommand(const char * theCommandPath, G4UImessenger * theMessenger,
      -                  G4bool tBB = true);
      -      //  Constructor. The command string with full path directory
      +
      +    G4UIcommand();
      +      // Dummy default constructor
      +
      +    G4UIcommand(const char* theCommandPath, G4UImessenger* theMessenger,
      +                G4bool tBB = true);
      +      // Constructor. The command string with full path directory
             // and the pointer to the messenger must be given.
             // If tBB is set to false, this command won't be sent to worker threads.
             // This tBB parameter could be changed with SetToBeBroadcasted() method
      -      // except for G4UIdirectory.
      +      // except for G4UIdirectory
       
      -  public:
      -      virtual ~G4UIcommand();
      +    virtual ~G4UIcommand();
       
      -      G4bool operator==(const G4UIcommand &right) const;
      -      G4bool operator!=(const G4UIcommand &right) const;
      +    G4bool operator==(const G4UIcommand& right) const;
      +    G4bool operator!=(const G4UIcommand& right) const;
       
      -      virtual G4int DoIt(G4String parameterList);
      -      G4String GetCurrentValue();
      -  public: // with description
      -      void AvailableForStates(G4ApplicationState s1);
      -      void AvailableForStates(G4ApplicationState s1,G4ApplicationState s2);
      -      void AvailableForStates(G4ApplicationState s1,G4ApplicationState s2,
      -                              G4ApplicationState s3);
      -      void AvailableForStates(G4ApplicationState s1,G4ApplicationState s2,
      -                              G4ApplicationState s3,G4ApplicationState s4);
      -      void AvailableForStates(G4ApplicationState s1,G4ApplicationState s2,
      -                              G4ApplicationState s3,G4ApplicationState s4,
      -                              G4ApplicationState s5);
      -      //  These methods define the states where the command is available.
      +    virtual G4int DoIt(G4String parameterList);
      +
      +    G4String GetCurrentValue();
      +
      +    void AvailableForStates(G4ApplicationState s1);
      +    void AvailableForStates(G4ApplicationState s1, G4ApplicationState s2);
      +    void AvailableForStates(G4ApplicationState s1, G4ApplicationState s2,
      +                            G4ApplicationState s3);
      +    void AvailableForStates(G4ApplicationState s1, G4ApplicationState s2,
      +                            G4ApplicationState s3, G4ApplicationState s4);
      +    void AvailableForStates(G4ApplicationState s1, G4ApplicationState s2,
      +                            G4ApplicationState s3, G4ApplicationState s4,
      +                            G4ApplicationState s5);
      +      // These methods define the states where the command is available.
             // Once one of these commands is invoked, the command application will
      -      // be denied when Geant4 is NOT in the assigned states.
      -  public:
      -      G4bool IsAvailable();
      -      virtual void List();
      +      // be denied when Geant4 is NOT in the assigned states
       
      -  public: // with description
      -      static G4String ConvertToString(G4bool boolVal);
      -      static G4String ConvertToString(G4int intValue);
      -      static G4String ConvertToString(G4double doubleValue);
      -      static G4String ConvertToString(G4double doubleValue,const char* unitName);
      -      static G4String ConvertToString(G4ThreeVector vec);
      -      static G4String ConvertToString(G4ThreeVector vec,const char* unitName);
      -      // Static methods for conversion from value(s) to a string. These methods are to be
      -      // used by GetCurrentValues() methods of concrete messengers.
      +    G4bool IsAvailable();
       
      -      static G4bool ConvertToBool(const char* st);
      -      static G4int ConvertToInt(const char* st);
      -      static G4double ConvertToDouble(const char* st);
      -      static G4double ConvertToDimensionedDouble(const char* st);
      -      static G4ThreeVector ConvertTo3Vector(const char* st);
      -      static G4ThreeVector ConvertToDimensioned3Vector(const char* st);
      -      // Static methods for conversion from a string to a value of the returning type.
      -      // These methods are to be used directly by SetNewValues() methods of concrete
      -      // messengers, or GetNewXXXValue() of classes derived from this G4UIcommand class.
      +    virtual void List();
       
      -      static G4double ValueOf(const char* unitName);
      -      static G4String CategoryOf(const char* unitName);
      -      static G4String UnitsList(const char* unitCategory);
      -      // Static methods for unit and its category.
      +    static G4String ConvertToString(G4bool boolVal);
      +    static G4String ConvertToString(G4int intValue);
      +    static G4String ConvertToString(G4long longValue);
      +    static G4String ConvertToString(G4double doubleValue);
      +    static G4String ConvertToString(G4double doubleValue, const char* unitName);
      +    static G4String ConvertToString(G4ThreeVector vec);
      +    static G4String ConvertToString(G4ThreeVector vec, const char* unitName);
      +      // Static methods for conversion from value(s) to a string.
      +      // These methods are to be used by GetCurrentValues() methods
      +      // of concrete messengers
       
      -  private:
      -      void G4UIcommandCommonConstructorCode (const char * theCommandPath);
      -      G4UImessenger *messenger;
      -      G4String commandPath;
      -      G4String commandName;
      -      G4String rangeString;
      -      std::vector parameter;
      -      std::vector commandGuidance;
      -      std::vector availabelStateList;
      +    static G4bool ConvertToBool(const char* st);
      +    static G4int ConvertToInt(const char* st);
      +    static G4long ConvertToLongInt(const char* st);
      +    static G4double ConvertToDouble(const char* st);
      +    static G4double ConvertToDimensionedDouble(const char* st);
      +    static G4ThreeVector ConvertTo3Vector(const char* st);
      +    static G4ThreeVector ConvertToDimensioned3Vector(const char* st);
      +      // Static methods for conversion from a string to a value of the returning
      +      // type. These methods are to be used directly by SetNewValues() methods
      +      // of concrete messengers, or GetNewXXXValue() of classes derived from
      +      // this G4UIcommand class
       
      -  public: // with description
      -      inline void SetRange(const char* rs)
      -      { rangeString = rs; }
      -      //  Defines the range the command parameter(s) can take.
      -      //  The variable name(s) appear in the range expression must be same
      +    static G4double ValueOf(const char* unitName);
      +    static G4String CategoryOf(const char* unitName);
      +    static G4String UnitsList(const char* unitCategory);
      +      // Static methods for unit and its category
      +
      +    inline void SetRange(const char* rs) { rangeString = rs; }
      +      // Defines the range the command parameter(s) can take.
      +      // The variable name(s) appear in the range expression must be the same
             // as the name(s) of the parameter(s).
      -      //  All the C++ syntax of relational operators are allowed for the
      -      // range expression.
      -  public:
      -      inline const G4String & GetRange() const
      -      { return rangeString; };
      -      inline size_t GetGuidanceEntries() const
      -      { return commandGuidance.size(); }
      -      inline const G4String & GetGuidanceLine(G4int i) const
      -      { return commandGuidance[i]; }
      -      inline const G4String & GetCommandPath() const
      -      { return commandPath; }
      -      inline const G4String & GetCommandName() const
      -      { return commandName; }
      -      inline size_t GetParameterEntries() const
      -      { return parameter.size(); }
      -      inline G4UIparameter * GetParameter(G4int i) const
      -      { return parameter[i]; }
      -      inline std::vector* GetStateList()
      -      { return &availabelStateList; }
      -      inline G4UImessenger * GetMessenger() const
      -      { return messenger; }
      -  public: // with description
      -      inline void SetParameter(G4UIparameter *const newParameter)
      -      {
      -        parameter.push_back( newParameter );
      -        newVal.resize( parameter.size() );
      -      }
      -      //  Defines a parameter. This method is used by the derived command classes
      -      // but the user can directly use this command when he/she defines a command
      -      // by hem(her)self without using the derived class. For this case, the order
      -      // of the parameters is the order of invoking this method.
      -      inline void SetGuidance(const char * aGuidance)
      -      {
      -        commandGuidance.push_back( G4String( aGuidance ) );
      -      }
      -      //  Adds a guidance line. Unlimitted number of invokation of this method is
      -      // allowed. The given lines of guidance will appear for the help. The first
      -      // line of the guidance will be used as the title of the command, i.e. one
      -      // line list of the commands.
      -  public:
      -      inline const G4String GetTitle() const
      -      {
      -        if(commandGuidance.size() == 0)
      -          { return G4String("...Title not available..."); }
      -        else
      -          { return commandGuidance[0]; }
      -      }
      +      // All the C++ syntax of relational operators are allowed for the
      +      // range expression
       
      -  protected:
      -    G4bool toBeBroadcasted;
      -    G4bool toBeFlushed;
      -    G4bool workerThreadOnly;
      +    inline const G4String& GetRange() const { return rangeString; }
      +    inline std::size_t GetGuidanceEntries() const
      +    {
      +      return commandGuidance.size();
      +    }
      +    inline const G4String& GetGuidanceLine(G4int i) const
      +    {
      +      return commandGuidance[i];
      +    }
      +    inline const G4String& GetCommandPath() const { return commandPath; }
      +    inline const G4String& GetCommandName() const { return commandName; }
      +    inline std::size_t GetParameterEntries() const { return parameter.size(); }
      +    inline G4UIparameter* GetParameter(G4int i) const { return parameter[i]; }
      +    inline std::vector* GetStateList()
      +    {
      +      return &availabelStateList;
      +    }
      +    inline G4UImessenger* GetMessenger() const { return messenger; }
       
      -  public:
      -    inline void SetToBeBroadcasted(G4bool val)
      -    { toBeBroadcasted = val; }
      -    inline G4bool ToBeBroadcasted() const
      -    { return toBeBroadcasted; }
      -    inline void SetToBeFlushed(G4bool val)
      -    { toBeFlushed = val; }
      -    inline G4bool ToBeFlushed() const
      -    { return toBeFlushed; }
      -    inline void SetWorkerThreadOnly(G4bool val=true)
      -    { workerThreadOnly = val; }
      -    inline G4bool IsWorkerThreadOnly() const
      -    { return workerThreadOnly; }
      +    inline void SetParameter(G4UIparameter* const newParameter)
      +      // Defines a parameter. This method is used by the derived command
      +      // classes but the user can directly use this command when defining
      +      // a command, without using the derived class. For this case, the order
      +      // of the parameters is the order of invoking this method
      +    {
      +      parameter.push_back(newParameter);
      +      newVal.resize(parameter.size());
      +    }
       
      -  protected:
      -    G4int commandFailureCode;
      -    G4String failureDescription;
      +    inline void SetGuidance(const char* aGuidance)
      +      // Adds a guidance line. Unlimited times of invokation of this method is
      +      // allowed. The given lines of guidance will appear for the help.
      +      // The first line of the guidance will be used as the title of the
      +      // command, i.e. one line list of the commands
      +    {
      +      commandGuidance.push_back(G4String(aGuidance));
      +    }
       
      -  public:
      -    inline void CommandFailed( G4int errCode, G4ExceptionDescription& ed )
      -    { commandFailureCode = errCode; failureDescription = ed.str(); }
      -    inline void CommandFailed( G4ExceptionDescription& ed )
      -    { commandFailureCode = 1; failureDescription = ed.str(); }
      -    inline G4int IfCommandFailed() 
      -    { return commandFailureCode; }
      -    inline G4String& GetFailureDescription()
      -    { return failureDescription; }
      +    inline const G4String GetTitle() const
      +    {
      +      return (commandGuidance.size() == 0)
      +             ? G4String("...Title not available...")
      +             : commandGuidance[0];
      +    }
      +
      +    inline void SetToBeBroadcasted(G4bool val) { toBeBroadcasted = val; }
      +    inline G4bool ToBeBroadcasted() const { return toBeBroadcasted; }
      +    inline void SetToBeFlushed(G4bool val) { toBeFlushed = val; }
      +    inline G4bool ToBeFlushed() const { return toBeFlushed; }
      +    inline void SetWorkerThreadOnly(G4bool val = true) { workerThreadOnly=val; }
      +    inline G4bool IsWorkerThreadOnly() const { return workerThreadOnly; }
      +
      +    inline void CommandFailed(G4int errCode, G4ExceptionDescription& ed)
      +    {
      +      commandFailureCode = errCode;
      +      failureDescription = ed.str();
      +    }
      +    inline void CommandFailed(G4ExceptionDescription& ed)
      +    {
      +      commandFailureCode = 1;
      +      failureDescription = ed.str();
      +    }
      +    inline G4int IfCommandFailed() { return commandFailureCode; }
      +    inline const G4String& GetFailureDescription() {return failureDescription;}
           inline void ResetFailure()
      -    { commandFailureCode = 0; failureDescription = ""; }
      -    
      +    {
      +      commandFailureCode = 0;
      +      failureDescription = "";
      +    }
      +
         protected:
      -    G4int CheckNewValue(const char* newValue);
       
           // --- the following is used by CheckNewValue() --------
      -  protected:
      -    using yystype = G4UItokenNum::yystype;
      +    using yystype  = G4UItokenNum::yystype;
           using tokenNum = G4UItokenNum::tokenNum;
      +
      +    G4int CheckNewValue(const char* newValue);
      +
      +    G4bool toBeBroadcasted = false;
      +    G4bool toBeFlushed = false;
      +    G4bool workerThreadOnly = false;
      +
      +    G4int commandFailureCode = 0;
      +    G4String failureDescription = "";
      +
         private:
      +
      +    void G4UIcommandCommonConstructorCode(const char* theCommandPath);
      +
           G4int TypeCheck(const char* t);
           G4int RangeCheck(const char* t);
      -    G4int IsInt(const char* str, short maxLength);
      +    G4int IsInt(const char* str, short maxLength); // used for both int and long int
           G4int IsDouble(const char* str);
           G4int ExpectExponent(const char* str);
           //  syntax nodes
      -    yystype Expression( void );
      -    yystype LogicalORExpression( void );
      -    yystype LogicalANDExpression( void );
      -    yystype EqualityExpression ( void );
      -    yystype RelationalExpression( void );
      -    yystype AdditiveExpression( void );
      -    yystype MultiplicativeExpression( void );
      -    yystype UnaryExpression( void );
      -    yystype PrimaryExpression( void );
      +    yystype Expression(void);
      +    yystype LogicalORExpression(void);
      +    yystype LogicalANDExpression(void);
      +    yystype EqualityExpression(void);
      +    yystype RelationalExpression(void);
      +    yystype AdditiveExpression(void);
      +    yystype MultiplicativeExpression(void);
      +    yystype UnaryExpression(void);
      +    yystype PrimaryExpression(void);
           //  semantics routines
      -    G4int Eval2( yystype arg1, G4int op, yystype arg2 );
      -    G4int CompareInt( G4int arg1, G4int op, G4int arg2);
      -    G4int CompareDouble( G4double arg1, G4int op, G4double arg2);
      +    G4int Eval2(yystype arg1, G4int op, yystype arg2);
      +    G4int CompareInt(G4int arg1, G4int op, G4int arg2);
      +    G4int CompareLong(G4long arg1, G4int op, G4long arg2);
      +    G4int CompareDouble(G4double arg1, G4int op, G4double arg2);
           //  utility
      -    tokenNum Yylex( void );      // returns next token
      -    unsigned IndexOf( const char* ); // returns the index of the var name
      -    unsigned IsParameter( const char* ); // returns 1 or 0
      -    G4int G4UIpGetc( void );      // read one char from rangeBuf
      -    G4int G4UIpUngetc( G4int c );   // put back
      -    G4int Backslash( G4int c );
      -    G4int Follow( G4int expect, G4int ifyes, G4int ifno );
      -    G4String TokenToStr(G4int token);
      -    void PrintToken(void);      // for debug
      -    //  data
      +    tokenNum Yylex(void);               // returns next token
      +    unsigned IndexOf(const char*);      // returns the index of the var name
      +    unsigned IsParameter(const char*);  // returns 1 or 0
      +    G4int G4UIpGetc(void);              // read one char from rangeBuf
      +    G4int G4UIpUngetc(G4int c);         // put back
      +    G4int Backslash(G4int c);
      +    G4int Follow(G4int expect, G4int ifyes, G4int ifno);
      +    //G4String TokenToStr(G4int token);
      +    //void PrintToken(void);  // for debug
      +
      +    // Data -----------------------------------------------------------
      +
      +    G4UImessenger* messenger = nullptr;
      +    G4String commandPath;
      +    G4String commandName;
      +    G4String rangeString;
      +    std::vector parameter;
      +    std::vector commandGuidance;
      +    std::vector availabelStateList;
      +
           G4String rangeBuf;
      -    G4int bp;                      // buffer pointer for rangeBuf
      -    tokenNum token;
      +    G4int bp = 0;  // buffer pointer for rangeBuf
      +    tokenNum token = G4UItokenNum::IDENTIFIER;
           yystype yylval;
      -    std::vector  newVal;
      -    G4int paramERR;
      +    std::vector newVal;
      +    G4int paramERR = 0;
       };
       
       #endif
      -
      diff --git a/source/intercoms/include/G4UIcommandStatus.hh b/source/intercoms/include/G4UIcommandStatus.hh
      index 21b6237fa8..c3cced97f2 100644
      --- a/source/intercoms/include/G4UIcommandStatus.hh
      +++ b/source/intercoms/include/G4UIcommandStatus.hh
      @@ -23,15 +23,20 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcommandStatus
       //
      +// Description:
       //
      +// Enumeration of all states associated to a UI command
       
      -#ifndef G4UIcommandStatus_h
      -#define G4UIcommandStatus_h 1
      +// Author: Makoto Asai (SLAC), 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UIcommandStatus_hh
      +#define G4UIcommandStatus_hh 1
       
       enum G4UIcommandStatus
       {
      -  fCommandSucceeded         =   0,
      +  fCommandSucceeded         = 0,
         fCommandNotFound          = 100,
         fIllegalApplicationState  = 200,
         fParameterOutOfRange      = 300,
      diff --git a/source/intercoms/include/G4UIcommandTree.hh b/source/intercoms/include/G4UIcommandTree.hh
      index 1945730471..86255ee6ab 100644
      --- a/source/intercoms/include/G4UIcommandTree.hh
      +++ b/source/intercoms/include/G4UIcommandTree.hh
      @@ -23,89 +23,74 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcommandTree
       //
      +// Class description:
       //
      +// This class is exclusively used by G4UImanager for handling the
      +// tree structure of the commands. The user MUST NOT construct/use
      +// this class object
       
      -#ifndef G4UIcommandTree_h
      -#define G4UIcommandTree_h 1
      +// Author: Makoto Asai (SLAC), 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UIcommandTree_hh
      +#define G4UIcommandTree_hh 1
       
      -
      -#include "G4UIcommand.hh"
      -#include "globals.hh"
       #include 
       
      -// class description:
      -//
      -//  This class is exclusively used by G4UImanager for handling the
      -// tree structure of the commands. The user MUST NOT construct/use
      -// this class object.
      +#include "globals.hh"
      +#include "G4UIcommand.hh"
       
      -class G4UIcommandTree 
      +class G4UIcommandTree
       {
         public:
      -      G4UIcommandTree();
      -      G4UIcommandTree(const char * thePathName);
      -      ~G4UIcommandTree();
      -      G4bool operator==(const G4UIcommandTree &right) const;
      -      G4bool operator!=(const G4UIcommandTree &right) const;
       
      -  public:
      -      void AddNewCommand(G4UIcommand * newCommand, G4bool workerThreadOnly=false);
      -      void RemoveCommand(G4UIcommand * aCommand, G4bool workerThreadOnly=false);
      -      G4UIcommand* FindPath(const char* commandPath) const;
      -      G4UIcommandTree* FindCommandTree(const char* commandPath);
      -      G4String CompleteCommandPath(const G4String& commandPath);
      -      G4String GetFirstMatchedString(const G4String&,const G4String&) const;
      -      // Complete most available caracters in common into command path in the command line
      -      // given
      +    G4UIcommandTree();
      +    G4UIcommandTree(const char* thePathName);
       
      -      void List() const;
      -      void ListCurrent() const;
      -      void ListCurrentWithNum() const;
      -      void CreateHTML();
      +    ~G4UIcommandTree();
      +
      +    G4bool operator==(const G4UIcommandTree& right) const;
      +    G4bool operator!=(const G4UIcommandTree& right) const;
      +
      +    void AddNewCommand(G4UIcommand* newCommand, G4bool workerThreadOnly = false);
      +    void RemoveCommand(G4UIcommand* aCommand, G4bool workerThreadOnly = false);
      +    G4UIcommand* FindPath(const char* commandPath) const;
      +    G4UIcommandTree* FindCommandTree(const char* commandPath);
      +    G4String GetFirstMatchedString(const G4String&, const G4String&) const;
      +
      +    G4String CompleteCommandPath(const G4String& commandPath);
      +      // Complete most available characters in common into command path in the
      +      // command line given
      +
      +    void List() const;
      +    void ListCurrent() const;
      +    void ListCurrentWithNum() const;
      +    void CreateHTML();
      +
      +    inline const G4UIcommand* GetGuidance() const { return guidance; }
      +    inline const G4String& GetPathName() const { return pathName; }
      +    inline G4int GetTreeEntry() const { return G4int(tree.size()); }
      +    inline G4int GetCommandEntry() const { return G4int(command.size()); }
      +    inline G4UIcommandTree* GetTree(G4int i) { return tree[i - 1]; }
      +    G4UIcommandTree* GetTree(const char* comNameC);
      +    inline G4UIcommand* GetCommand(G4int i) { return command[i - 1]; }
      +    inline const G4String GetTitle() const
      +    {
      +      return (guidance == nullptr) ? G4String("...Title not available...")
      +                                   : guidance->GetTitle();
      +    }
       
         private:
      -      G4String CreateFileName(const char* pName);
      -      G4String ModStr(const char* strS);
       
      -      std::vector command;
      -      std::vector tree;
      -      G4UIcommand *guidance;
      -      G4String pathName;
      -      G4bool broadcastCommands;
      -
      -  public:
      -      inline const G4UIcommand * GetGuidance() const
      -      { return guidance; };
      -      inline const G4String GetPathName() const
      -      { return pathName; };
      -      inline G4int GetTreeEntry() const
      -      { return G4int(tree.size()); };
      -      inline G4int GetCommandEntry() const
      -      { return G4int(command.size()); };
      -      inline G4UIcommandTree * GetTree(G4int i)
      -      { return tree[i-1]; };
      -      inline G4UIcommandTree * GetTree(const char* comNameC)
      -      { 
      -        G4String comName = comNameC;
      -        for( size_t i=0; i < tree.size(); i++)
      -        {
      -          if( comName == tree[i]->GetPathName() )
      -          { return tree[i]; }
      -        }
      -        return NULL;
      -      };
      -      inline G4UIcommand * GetCommand(G4int i)
      -      { return command[i-1]; };
      -      inline const G4String GetTitle() const
      -      { 
      -	    if(guidance==NULL)
      -	    { return G4String("...Title not available..."); }
      -    	else
      -	    { return guidance->GetTitle(); }
      -      };
      +    G4String CreateFileName(const char* pName);
      +    G4String ModStr(const char* strS);
       
      +    std::vector command;
      +    std::vector tree;
      +    G4UIcommand* guidance = nullptr;
      +    G4String pathName;
      +    G4bool broadcastCommands = true;
       };
       
       #endif
      -
      diff --git a/source/intercoms/include/G4UIcontrolMessenger.hh b/source/intercoms/include/G4UIcontrolMessenger.hh
      index 7adb2ab8d2..aebb6effa3 100644
      --- a/source/intercoms/include/G4UIcontrolMessenger.hh
      +++ b/source/intercoms/include/G4UIcontrolMessenger.hh
      @@ -23,26 +23,14 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcontrolMessenger
       //
      +// Class description:
       //
      -
      -#ifndef G4UIcontrolMessenger_h
      -#define G4UIcontrolMessenger_h 1
      -
      -#include "G4UImessenger.hh"
      -
      -class G4UIdirectory;
      -class G4UIcmdWithAString;
      -class G4UIcmdWithABool;
      -class G4UIcmdWithAnInteger;
      -class G4UIcmdWithoutParameter;
      -class G4UIcommand;
      -
      -// class description:
      -//  This class is a concrete class of G4UImessenger which defines
      +// This class is a concrete class of G4UImessenger which defines
       // commands affecting to the G4UImanager. Commands defined by
      -// this messenger are
      -//   /control/ 
      +// this messenger are:
      +//   /control/
       //   /control/macroPath
       //   /control/execute
       //   /control/loop
      @@ -75,49 +63,64 @@ class G4UIcommand;
       //   /control/doifBatch
       //   /control/doifInteractive
       
      -class G4UIcontrolMessenger : public G4UImessenger 
      +// Author: Makoto Asai, SLAC - 2001
      +// --------------------------------------------------------------------
      +#ifndef G4UIcontrolMessenger_hh
      +#define G4UIcontrolMessenger_hh 1
      +
      +#include "G4UImessenger.hh"
      +
      +class G4UIdirectory;
      +class G4UIcmdWithAString;
      +class G4UIcmdWithABool;
      +class G4UIcmdWithAnInteger;
      +class G4UIcmdWithoutParameter;
      +class G4UIcommand;
      +
      +class G4UIcontrolMessenger : public G4UImessenger
       {
         public:
      -      G4UIcontrolMessenger();
      -      ~G4UIcontrolMessenger();
      -      void SetNewValue(G4UIcommand * command,G4String newValue);
      -      G4String GetCurrentValue(G4UIcommand * command);
      +
      +    G4UIcontrolMessenger();
      +    ~G4UIcontrolMessenger();
      +    void SetNewValue(G4UIcommand* command, G4String newValue);
      +    G4String GetCurrentValue(G4UIcommand* command);
       
         private:
      -      G4UIdirectory * controlDirectory;
      -      G4UIcmdWithAString * macroPathCommand;
      -      G4UIcmdWithAString * ExecuteCommand;
      -      G4UIcmdWithAnInteger * suppressAbortionCommand;
      -      G4UIcmdWithAnInteger * verboseCommand;
      -      G4UIcmdWithABool * doublePrecCommand;
      -      G4UIcmdWithAString * historyCommand;
      -      G4UIcmdWithoutParameter * stopStoreHistoryCommand;
      -      G4UIcommand * aliasCommand;
      -      G4UIcmdWithAString * unaliasCommand;
      -      G4UIcmdWithoutParameter * listAliasCommand;
      -      G4UIcmdWithAString * getEnvCmd;
      -      G4UIcommand * getValCmd;
      -      G4UIcmdWithAString * echoCmd;
      -      G4UIcmdWithAString * shellCommand;
      -      G4UIcommand * loopCommand;
      -      G4UIcommand * foreachCommand;
      -      G4UIcmdWithAString * ManualCommand;
      -      G4UIcmdWithAString * HTMLCommand;
      -      G4UIcmdWithAnInteger * maxStoredHistCommand;
      -      G4UIcommand * ifCommand;
      -      G4UIcommand * doifCommand;
      -      G4UIcommand * addCommand;
      -      G4UIcommand * subtractCommand;
      -      G4UIcommand * multiplyCommand;
      -      G4UIcommand * divideCommand;
      -      G4UIcommand * remainderCommand;
      -      G4UIcommand * strifCommand;
      -      G4UIcommand * strdoifCommand;
      -      G4UIcmdWithAString * ifBatchCommand;
      -      G4UIcmdWithAString * ifInteractiveCommand;
      -      G4UIcmdWithAString * doifBatchCommand;
      -      G4UIcmdWithAString * doifInteractiveCommand;
      +
      +    G4UIdirectory* controlDirectory = nullptr;
      +    G4UIcmdWithAString* macroPathCommand = nullptr;
      +    G4UIcmdWithAString* ExecuteCommand = nullptr;
      +    G4UIcmdWithAnInteger* suppressAbortionCommand = nullptr;
      +    G4UIcmdWithAnInteger* verboseCommand = nullptr;
      +    G4UIcmdWithABool* doublePrecCommand = nullptr;
      +    G4UIcmdWithAString* historyCommand = nullptr;
      +    G4UIcmdWithoutParameter* stopStoreHistoryCommand = nullptr;
      +    G4UIcommand* aliasCommand = nullptr;
      +    G4UIcmdWithAString* unaliasCommand = nullptr;
      +    G4UIcmdWithoutParameter* listAliasCommand = nullptr;
      +    G4UIcmdWithAString* getEnvCmd = nullptr;
      +    G4UIcommand* getValCmd = nullptr;
      +    G4UIcmdWithAString* echoCmd = nullptr;
      +    G4UIcmdWithAString* shellCommand = nullptr;
      +    G4UIcommand* loopCommand = nullptr;
      +    G4UIcommand* foreachCommand = nullptr;
      +    G4UIcmdWithAString* ManualCommand = nullptr;
      +    G4UIcmdWithAString* HTMLCommand = nullptr;
      +    G4UIcmdWithAnInteger* maxStoredHistCommand = nullptr;
      +    G4UIcommand* ifCommand = nullptr;
      +    G4UIcommand* doifCommand = nullptr;
      +    G4UIcommand* addCommand = nullptr;
      +    G4UIcommand* subtractCommand = nullptr;
      +    G4UIcommand* multiplyCommand = nullptr;
      +    G4UIcommand* divideCommand = nullptr;
      +    G4UIcommand* remainderCommand = nullptr;
      +    G4UIcommand* strifCommand = nullptr;
      +    G4UIcommand* strdoifCommand = nullptr;
      +    G4UIcmdWithAString* ifBatchCommand = nullptr;
      +    G4UIcmdWithAString* ifInteractiveCommand = nullptr;
      +    G4UIcmdWithAString* doifBatchCommand = nullptr;
      +    G4UIcmdWithAString* doifInteractiveCommand = nullptr;
       };
       
       #endif
      -
      diff --git a/source/intercoms/include/G4UIdirectory.hh b/source/intercoms/include/G4UIdirectory.hh
      index f7ae69df68..0d5cbb987b 100644
      --- a/source/intercoms/include/G4UIdirectory.hh
      +++ b/source/intercoms/include/G4UIdirectory.hh
      @@ -23,27 +23,30 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIdirectory
       //
      +// Class description:
       //
      -//
      +// A concrete class of G4UIcommand. This class defines a command
      +// directory which can have commands.
      +// General information of G4UIcommand is given in G4UIcommand.hh
       
      -#ifndef G4UIdirectory_H
      -#define G4UIdirectory_H 1
      +// Author: Makoto Asai, 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UIdirectory_hh
      +#define G4UIdirectory_hh 1
       
       #include "G4UIcommand.hh"
       
      -// class description:
      -//  A concrete class of G4UIcommand. This class defines a command
      -// directory which can have commands.
      -//  General information of G4UIcommand is given in G4UIcommand.hh.
      -
       class G4UIdirectory : public G4UIcommand
       {
      -  public: // with description
      -    G4UIdirectory(char * theCommandPath,G4bool commandsToBeBroadcasted = true);
      -    G4UIdirectory(const char * theCommandPath,G4bool commandsToBeBroadcasted = true);
      -    // Constructors. The argument is a full path directory which
      -    // starts and ends with "/".
      +  public:
      +
      +    G4UIdirectory(char* theCommandPath, G4bool commandsToBeBroadcasted = true);
      +    G4UIdirectory(const char* theCommandPath,
      +                  G4bool commandsToBeBroadcasted = true);
      +      // Constructors. The argument is a full path directory which
      +      // starts and ends with "/".
       };
       
       #endif
      diff --git a/source/intercoms/include/G4UImanager.hh b/source/intercoms/include/G4UImanager.hh
      index 567543fc19..a5cfe616dd 100644
      --- a/source/intercoms/include/G4UImanager.hh
      +++ b/source/intercoms/include/G4UImanager.hh
      @@ -23,16 +23,22 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UImanager
       //
      +// Class description:
       //
      +// This is a singleton class which controls the command manipulation
      +// and the user interface(s)
       
      -#ifndef G4UImanager_h
      -#define G4UImanager_h 1
      -
      -#include "globals.hh"
      +// Author: Makoto Asai, 1997
      +// --------------------------------------------------------------------
      +#ifndef G4UImanager_hh
      +#define G4UImanager_hh 1
       
       #include 
       #include 
      +
      +#include "globals.hh"
       #include "icomsdefs.hh"
       #include "G4VStateDependent.hh"
       #include "G4UIcommandStatus.hh"
      @@ -46,267 +52,251 @@ class G4LocalThreadCoutMessenger;
       class G4UIaliasList;
       class G4MTcoutDestination;
       class G4UIbridge;
      -
      -// class description:
      -//
      -//  This is a singlton class which controls the command manipulation
      -// and the user interface(s). The constructor of this class MUST NOT
      -// invoked by the user.
      -//
      +class G4ProfilerMessenger;
       
       class G4UImanager : public G4VStateDependent
       {
      -  public: // with description
      -      static G4UImanager * GetUIpointer();
      -      static G4UImanager * GetMasterUIpointer();
      -      //  A static method to get the pointer to the only existing object
      -      // of this class.
      -
      -  protected:
      -      G4UImanager();
         public:
      -      ~G4UImanager();
      -  private:
      -      G4UImanager(const G4UImanager &right);
      -      const G4UImanager & operator=(const G4UImanager &right);
      -      G4bool operator==(const G4UImanager &right) const;
      -      G4bool operator!=(const G4UImanager &right) const;
       
      -  public: // with description
      -      G4String GetCurrentValues(const char * aCommand);
      -      //  This method returns a string which represents the current value(s)
      +    static G4UImanager* GetUIpointer();
      +    static G4UImanager* GetMasterUIpointer();
      +      // A static method to get the pointer to the only existing object
      +      // of this class
      +
      +    ~G4UImanager();
      +
      +    G4UImanager(const G4UImanager&) = delete;
      +    const G4UImanager& operator=(const G4UImanager&) = delete;
      +    G4bool operator==(const G4UImanager&) const = delete;
      +    G4bool operator!=(const G4UImanager&) const = delete;
      +
      +    G4String GetCurrentValues(const char* aCommand);
      +      // This method returns a string which represents the current value(s)
             // of the parameter(s) of the specified command. Null string will be
             // returned if the given command is not defined or the command does
      -      // not support the GetCurrentValues() method.
      -      void AddNewCommand(G4UIcommand * newCommand);
      -      //  This method register a new command.
      -      void RemoveCommand(G4UIcommand * aCommand);
      -      //  This command remove the registered command. After invokation of this
      -      // command, that particular command cannot be applied.
      -      void ExecuteMacroFile(const char * fileName);
      -      //  A macro file defined by the argument will be read by G4UIbatch object.
      -      void Loop(const char * macroFile,const char * variableName,
      -                   G4double initialValue,G4double finalValue,G4double stepSize=1.0);
      -      // Execute a macro file more than once with a loop counter.
      -      void Foreach(const char * macroFile,const char * variableName,
      -                                                        const char * candidates);
      -      // Execute a macro file more than once with an aliased variable which takes
      -      // a value in the candidate list.
      -      G4int ApplyCommand(const char * aCommand);
      -      G4int ApplyCommand(const G4String& aCommand);
      -      //  A command (and parameter(s)) given
      +      // not support the GetCurrentValues() method
      +
      +    void AddNewCommand(G4UIcommand* newCommand);
      +      // This method register a new command
      +
      +    void RemoveCommand(G4UIcommand* aCommand);
      +      // This command removes the registered command. After invokation of this
      +      // command, that particular command cannot be applied
      +
      +    void ExecuteMacroFile(const char* fileName);
      +      // A macro file defined by the argument will be read by G4UIbatch object
      +
      +    void Loop(const char* macroFile, const char* variableName,
      +              G4double initialValue, G4double finalValue,
      +              G4double stepSize = 1.0);
      +      // Execute a macro file more than once with a loop counter
      +
      +    void Foreach(const char* macroFile, const char* variableName,
      +                 const char* candidates);
      +      // Execute a macro file more than once with an aliased variable which
      +      // takes a value in the candidate list
      +
      +    G4int ApplyCommand(const char* aCommand);
      +    G4int ApplyCommand(const G4String& aCommand);
      +      // A command (and parameter(s)) given
             // by the method's argument will be applied. Zero will be returned in
             // case the command is successfully executed. Positive non-zero value
      -      // will be returned if the command couldn't be executed. The meaning of
      -      // this non-zero value is the following.
      +      // will be returned if the command cannot be executed. The meaning of
      +      // this non-zero value is the following:
             //   The returned number : xyy
             //        x00 : G4CommandStatus.hh enumeration
             //         yy : the problematic parameter (first found)
      -      void StoreHistory(const char* fileName = "G4history.macro");
      -      void StoreHistory(G4bool historySwitch,
      -                        const char* fileName = "G4history.macro");
      -      //  The executed commands will be stored in the defined file. If
      -      // "historySwitch" is false, saving will be suspended.
      -      void ListCommands(const char* direc);
      -      //  All commands registored under the given directory will be listed to
      -      // G4cout.
      -      void SetAlias(const char * aliasLine);
      -      //  Define an alias. The first word of "aliasLine" string is the
      +
      +    void StoreHistory(const char* fileName = "G4history.macro");
      +    void StoreHistory(G4bool historySwitch,
      +                      const char* fileName = "G4history.macro");
      +      // The executed commands will be stored in the defined file. If
      +      // "historySwitch" is false, saving will be suspended
      +
      +    void ListCommands(const char* direc);
      +      // All commands registered under the given directory will be listed to
      +      // standard output
      +
      +    void SetAlias(const char* aliasLine);
      +      // Define an alias. The first word of "aliasLine" string is the
             // alias name and the remaining word(s) is(are) string value
      -      // to be aliased.
      -      void RemoveAlias(const char * aliasName);
      -      //  Remove the defined alias.
      -      void ListAlias();
      -      //  Print all aliases.
      -      G4String SolveAlias(const char* aCmd);
      -      //  Convert a command string which contains alias(es).
      -      void CreateHTML(const char* dir = "/");
      -      //  Generate HTML files for defined UI commands
      +      // to be aliased
       
      -  private:
      -      void AddWorkerCommand(G4UIcommand * newCommand);
      -      void RemoveWorkerCommand(G4UIcommand * aCommand);
      +    void RemoveAlias(const char* aliasName);
      +      // Remove the defined alias
       
      -  public:
      -      void LoopS(const char* valueList);
      -      void ForeachS(const char* valueList);
      -      //  These methods are used by G4UIcontrolMessenger to use Loop() and Foreach() methods.
      -      virtual G4bool Notify(G4ApplicationState requestedState);
      -      //  This method is exclusively invoked by G4StateManager and the user
      -      // must not use this method.
      +    void ListAlias();
      +      // Print all aliases
       
      -  private:
      -      void PauseSession(const char* msg);
      -      void CreateMessenger();
      -      G4UIcommandTree* FindDirectory(const char* dirName);
      +    G4String SolveAlias(const char* aCmd);
      +      // Convert a command string which contains alias(es)
       
      -  //public:
      -  // following three methods will be removed quite soon.
      -  //    void Interact();
      -  //    void Interact(const char * promptCharacters);
      +    void CreateHTML(const char* dir = "/");
      +      // Generate HTML files for defined UI commands
       
      -  private:
      -      G4ICOMS_DLL static G4UImanager*& fUImanager(); // thread-local
      -      G4ICOMS_DLL static G4bool& fUImanagerHasBeenKilled(); // thread-local
      -      G4ICOMS_DLL static G4UImanager*& fMasterUImanager();
      -      G4UIcommandTree * treeTop;
      -      G4UIsession * session;
      -      G4UIsession * g4UIWindow;
      -      G4UIcontrolMessenger * UImessenger;
      -      G4UnitsMessenger * UnitsMessenger;
      -      G4LocalThreadCoutMessenger * CoutMessenger;
      -      G4String savedParameters;
      -      G4UIcommand * savedCommand;
      -      G4int verboseLevel;
      -      std::ofstream historyFile;
      -      G4bool saveHistory;
      -      std::vector histVec;
      -      G4UIaliasList* aliasList;
      -      G4int maxHistSize;
      -      G4bool pauseAtBeginOfEvent;
      -      G4bool pauseAtEndOfEvent;
      -      G4String searchPath;
      -      std::vector searchDirs;
      +    void LoopS(const char* valueList);
      +    void ForeachS(const char* valueList);
      +      // These methods are used by G4UIcontrolMessenger to use Loop()
      +      // and Foreach() methods
       
      -  public: // with description
      -      G4String GetCurrentStringValue(const char * aCommand,
      -        G4int parameterNumber=1, G4bool reGet=true);
      -      G4int GetCurrentIntValue(const char * aCommand,
      -        G4int parameterNumber=1, G4bool reGet=true);
      -      G4double GetCurrentDoubleValue(const char * aCommand,
      -        G4int parameterNumber=1, G4bool reGet=true);
      -      G4String GetCurrentStringValue(const char * aCommand,
      -        const char * aParameterName, G4bool reGet=true);
      -      G4int GetCurrentIntValue(const char * aCommand,
      -        const char * aParameterName, G4bool reGet=true);
      -      G4double GetCurrentDoubleValue(const char * aCommand,
      -        const char * aParameterName, G4bool reGet=true);
      -      //  These six methods returns the current value of a parameter of the
      +    virtual G4bool Notify(G4ApplicationState requestedState);
      +      // This method is exclusively invoked by G4StateManager
      +
      +    G4String GetCurrentStringValue(const char* aCommand,
      +                                   G4int parameterNumber = 1,
      +                                   G4bool reGet          = true);
      +    G4int GetCurrentIntValue(const char* aCommand, G4int parameterNumber = 1,
      +                             G4bool reGet = true);
      +    G4double GetCurrentDoubleValue(const char* aCommand,
      +                                   G4int parameterNumber = 1,
      +                                   G4bool reGet          = true);
      +    G4String GetCurrentStringValue(const char* aCommand,
      +                                   const char* aParameterName,
      +                                   G4bool reGet = true);
      +    G4int GetCurrentIntValue(const char* aCommand, const char* aParameterName,
      +                             G4bool reGet = true);
      +    G4double GetCurrentDoubleValue(const char* aCommand,
      +                                   const char* aParameterName,
      +                                 G4bool reGet = true);
      +      // These six methods return the current value of a parameter of the
             // given command. For the first three methods, the ordering number of
             // the parameter (1 is the first parameter) can be given, whereas,
             // other three methods can give the parameter name.
      -      //  If "reGet" is true, actual request of returning the current value
      +      // If "reGet" is true, actual request of returning the current value
             // will be sent to the corresponding messenger, while, if it is false,
             // the value stored in G4Umanager will be used. The later case is valid
      -      // for the sequential invokation for the same command.
      +      // for the sequential invokation for the same command
       
      -      inline void SetPauseAtBeginOfEvent(G4bool vl)
      -      { pauseAtBeginOfEvent = vl; }
      -      inline G4bool GetPauseAtBeginOfEvent() const
      -      { return pauseAtBeginOfEvent; }
      -      inline void SetPauseAtEndOfEvent(G4bool vl)
      -      { pauseAtEndOfEvent = vl; }
      -      inline G4bool GetPauseAtEndOfEvent() const
      -      { return pauseAtEndOfEvent; }
      -      //  If the boolean flags are true, Pause() method of G4StateManager is invoked
      -      // at the very begining (before generating a G4Event object) or at the end of
      -      // each event. So that, in case a (G)UI session is defined, the user can interact.
      +    inline void SetPauseAtBeginOfEvent(G4bool vl) { pauseAtBeginOfEvent = vl; }
      +    inline G4bool GetPauseAtBeginOfEvent() const { return pauseAtBeginOfEvent; }
      +    inline void SetPauseAtEndOfEvent(G4bool vl) { pauseAtEndOfEvent = vl; }
      +    inline G4bool GetPauseAtEndOfEvent() const { return pauseAtEndOfEvent; }
      +      // If the Boolean flags are true, Pause() method of G4StateManager is
      +      // invoked at the very beginning (before generating a G4Event object)
      +      // or at the end of each event. So that, in case a (G)UI session is
      +      // defined, the user can interact
       
      +    inline G4UIcommandTree* GetTree() const { return treeTop; }
      +    inline G4UIsession* GetSession() const { return session; }
      +    inline G4UIsession* GetG4UIWindow() const { return g4UIWindow; }
       
      -  public:
      -      inline G4UIcommandTree * GetTree() const
      -      { return treeTop; }
      -      inline G4UIsession * GetSession() const
      -      { return session; }
      -      inline G4UIsession * GetG4UIWindow() const
      -      { return g4UIWindow; }
      -  public: // with description
      -      inline void SetSession(G4UIsession *const value)
      -      { session = value; }
      -      inline void SetG4UIWindow(G4UIsession *const value)
      -      { g4UIWindow = value; }
      -      //  This method defines the active (G)UI session.
      -     void SetCoutDestination(G4UIsession *const value);
      -     //  This method defines the destination of G4cout/G4cerr stream.
      -     // For usual cases, this method will be invoked by a concrete
      -     // (G)UI session class object and thus the user needs not to invoke
      -     // this method by him(her)self.
      +    inline void SetSession(G4UIsession* const value) { session = value; }
      +    inline void SetG4UIWindow(G4UIsession* const value) { g4UIWindow = value; }
      +      // These methods define the active (G)UI session
       
      -  public:
      -      inline void SetVerboseLevel(G4int val)
      -      { verboseLevel = val; }
      -      inline G4int GetVerboseLevel() const
      -      { return verboseLevel; }
      -      inline G4int GetNumberOfHistory() const
      -      { return G4int(histVec.size()); }
      -      inline G4String GetPreviousCommand(G4int i) const
      +    void SetCoutDestination(G4UIsession* const value);
      +      // This method defines the destination of G4cout/G4cerr stream.
      +      // For usual cases, this method will be invoked by a concrete
      +      // (G)UI session class object and thus the user needs not to invoke this
      +
      +    inline void SetVerboseLevel(G4int val) { verboseLevel = val; }
      +    inline G4int GetVerboseLevel() const { return verboseLevel; }
      +    inline G4int GetNumberOfHistory() const { return G4int(histVec.size()); }
      +    inline G4String GetPreviousCommand(G4int i) const
      +    {
      +      G4String st;
      +      if(i >= 0 && i < G4int(histVec.size()))
             {
      -        G4String st;
      -        if(i>=0 && i* bridges; 
      -      G4bool ignoreCmdNotFound;
      -      G4bool stackCommandsForBroadcast;
      -      std::vector* commandStack;
      -
      -  public:
      -      inline void SetMasterUIManager(G4bool val)
      +    inline void SetMasterUIManager(G4bool val)
      +    {
      +      isMaster = val;
      +      stackCommandsForBroadcast = val;
      +      if(val && !bridges)
             {
      -        isMaster = val;
      -        //ignoreCmdNotFound = val;
      -        stackCommandsForBroadcast = val;
      -        if(val&&!bridges)
      -        {
      -           bridges = new std::vector;
      -           fMasterUImanager() = this;
      -        }
      +        bridges            = new std::vector;
      +        fMasterUImanager() = this;
             }
      -      inline void SetIgnoreCmdNotFound(G4bool val)
      -      { ignoreCmdNotFound = val; }
      +    }
      +    inline void SetIgnoreCmdNotFound(G4bool val) { ignoreCmdNotFound = val; }
       
      -      std::vector* GetCommandStack();
      -      void RegisterBridge(G4UIbridge* brg);
      +    std::vector* GetCommandStack();
      +    void RegisterBridge(G4UIbridge* brg);
       
      -      void SetUpForAThread(G4int tId);
      -      //Setups as before but for a non-worker thread (e.g. vis)
      -      void SetUpForSpecialThread(G4String aPrefix);
      -    
      -      inline G4int GetThreadID() const
      -      { return threadID; }
      +    void SetUpForAThread(G4int tId);
      +      // Setups as above but for a non-worker thread (e.g. vis)
      +
      +    void SetUpForSpecialThread(G4String aPrefix);
      +
      +    inline G4int GetThreadID() const { return threadID; }
      +
      +    void SetCoutFileName(const G4String& fileN = "G4cout.txt",
      +                         G4bool ifAppend       = true);
      +    void SetCerrFileName(const G4String& fileN = "G4cerr.txt",
      +                         G4bool ifAppend       = true);
      +    void SetThreadPrefixString(const G4String& s = "W");
      +    void SetThreadUseBuffer(G4bool flg = true);
      +    void SetThreadIgnore(G4int tid = 0);
      +    void SetThreadIgnoreInit(G4bool flg = true);
      +    inline G4MTcoutDestination* GetThreadCout() { return threadCout; }
      +
      +    static void UseDoublePrecisionStr(G4bool val);
      +    static G4bool DoublePrecisionStr();
      +
      +    inline G4int GetLastReturnCode() const { return lastRC; }
      +
      +  protected:
      +
      +    G4UImanager();
       
         private:
      -      G4int threadID;
      -      G4MTcoutDestination* threadCout;
      -      G4ICOMS_DLL static G4int igThreadID;
       
      -  public:
      -      void SetCoutFileName(const G4String& fileN = "G4cout.txt", G4bool ifAppend = true);
      -      void SetCerrFileName(const G4String& fileN = "G4cerr.txt", G4bool ifAppend = true);
      -      void SetThreadPrefixString(const G4String& s = "W");
      -      void SetThreadUseBuffer(G4bool flg = true);
      -      void SetThreadIgnore(G4int tid = 0);
      -      void SetThreadIgnoreInit(G4bool flg = true);
      -      inline G4MTcoutDestination* GetThreadCout() {return threadCout;};
      - 
      +    void AddWorkerCommand(G4UIcommand* newCommand);
      +    void RemoveWorkerCommand(G4UIcommand* aCommand);
      +
      +    void PauseSession(const char* msg);
      +    void CreateMessenger();
      +    G4UIcommandTree* FindDirectory(const char* dirName);
      +
         private:
      -      G4ICOMS_DLL static G4bool doublePrecisionStr;
       
      -  public:
      -      static void UseDoublePrecisionStr(G4bool val);
      -      static G4bool DoublePrecisionStr();
      - 
      -  private:
      -      G4int lastRC;
      -  public:
      -      G4int GetLastReturnCode() const
      -      { return lastRC; }
      +    G4ICOMS_DLL static G4UImanager*& fUImanager();         // thread-local
      +    G4ICOMS_DLL static G4bool& fUImanagerHasBeenKilled();  // thread-local
      +    G4ICOMS_DLL static G4UImanager*& fMasterUImanager();
      +    G4UIcommandTree* treeTop = nullptr;
      +    G4UIsession* session = nullptr;
      +    G4UIsession* g4UIWindow = nullptr;
      +    G4UIcontrolMessenger* UImessenger = nullptr;
      +    G4UnitsMessenger* UnitsMessenger = nullptr;
      +    G4LocalThreadCoutMessenger* CoutMessenger = nullptr;
      +    G4ProfilerMessenger* ProfileMessenger     = nullptr;
      +    G4String savedParameters;
      +    G4UIcommand* savedCommand = nullptr;
      +    G4int verboseLevel = 0;
      +    std::ofstream historyFile;
      +    G4bool saveHistory = false;
      +    std::vector histVec;
      +    G4UIaliasList* aliasList = nullptr;
      +    G4int maxHistSize = 20;
      +    G4bool pauseAtBeginOfEvent = false;
      +    G4bool pauseAtEndOfEvent = false;
      +    G4String searchPath = "";
      +    std::vector searchDirs;
       
      +    G4bool isMaster = false;
      +    std::vector* bridges = nullptr;
      +    G4bool ignoreCmdNotFound = false;
      +    G4bool stackCommandsForBroadcast = false;
      +    std::vector* commandStack = nullptr;
      +
      +    G4int threadID = -1;
      +    G4MTcoutDestination* threadCout = nullptr;
      +    G4ICOMS_DLL static G4int igThreadID;
      +
      +    G4ICOMS_DLL static G4bool doublePrecisionStr;
      +
      +    G4int lastRC = 0;
       };
       
       #endif
      diff --git a/source/intercoms/include/G4UImessenger.hh b/source/intercoms/include/G4UImessenger.hh
      index aa36129697..037476e580 100644
      --- a/source/intercoms/include/G4UImessenger.hh
      +++ b/source/intercoms/include/G4UImessenger.hh
      @@ -23,89 +23,102 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UImessenger
       //
      +// Class description:
       //
      +// This class is the base class representing a messenger which keeps all basic
      +// commands. The user who wants to define some commands must create his/her
      +// own concrete class derived from this class. The user's concrete messenger
      +// must have a responsibility of creating and deleting commands. Also, it must
      +// take care of the delivering of the commands to the destination class and
      +// provide the current value(s) of the parameter(s)
       
      -#ifndef G4UImessenger_h
      -#define G4UImessenger_h 1
      +// Author: Makoto Asai, 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UImessenger_hh
      +#define G4UImessenger_hh 1
       
       #include "globals.hh"
       #include "G4ios.hh"
       #include "G4UIdirectory.hh"
       
      -// class description:
      -//
      -//  This class is the base class which represents a messenger which maintains
      -// the commands. The user who wants to define some commands must create his/her
      -// own concrete class derived from this class. The user's concrete messenger
      -// must have a responsibility of creating and deleting commands. Also, it must
      -// take care the delivering of the command to the destination class and replying
      -// the current value(s) of the parameter(s).
      -//
      -
      -class G4UImessenger 
      +class G4UImessenger
       {
      -  public: // with description
      -      G4UImessenger();
      -      G4UImessenger(const G4String& path, const G4String& dsc,
      -                    G4bool commandsToBeBroadcasted = true);
      -      // Constructor. In the implementation of the concrete messenger, all commands
      -      // related to the messenger must be constructed.
      -      virtual ~G4UImessenger();
      -      // Destructor. In the implementation of the concrete messenger, all commands
      -      // defined in the constructor must be deleted.
      -      virtual G4String GetCurrentValue(G4UIcommand * command);
      -      // The concrete implementation of this method gets the current value(s) of the
      -      // parameter(s) of the given command from the destination class, converts the
      -      // value(s) to a string, and returns the string. Conversion could be done by
      -      // the ConvertToString() method of corresponding G4UIcmdXXX classes if the
      -      // the command is an object of these G4UIcmdXXX classes.
      -      virtual void SetNewValue(G4UIcommand * command,G4String newValue);
      -      // The concrete implementation of this method converts the string "newValue"
      -      // to value(s) of type(s) of the parameter(s). Convert methods corresponding
      -      // to the type of the command can be used if the command is an object of
      -      // G4UIcmdXXX classes.
      -
         public:
      -      G4bool operator == (const G4UImessenger& messenger) const;
      +
      +    G4UImessenger();
      +    G4UImessenger(const G4String& path, const G4String& dsc,
      +                  G4bool commandsToBeBroadcasted = true);
      +      // Constructor. In the implementation of the concrete messenger,
      +      // all commands related to the messenger must be constructed
      +
      +    virtual ~G4UImessenger();
      +      // Destructor. In the implementation of the concrete messenger,
      +      // all commands defined in the constructor must be deleted
      +
      +    virtual G4String GetCurrentValue(G4UIcommand* command);
      +      // The concrete implementation of this method gets the current value(s)
      +      // of the parameter(s) of the given command from the destination class,
      +      // converts the value(s) to a string, and returns the string.
      +      // Conversion could be done by the ConvertToString() method of
      +      // corresponding G4UIcmdXXX classes if the command is an object of
      +      // these G4UIcmdXXX classes
      +
      +    virtual void SetNewValue(G4UIcommand* command, G4String newValue);
      +      // The concrete implementation of this method converts the string
      +      // "newValue" to value(s) of type(s) of the parameter(s).
      +      // Converted methods corresponding to the type of the command can be
      +      // used if the command is an object of G4UIcmdXXX classes
      +
      +    G4bool operator==(const G4UImessenger& messenger) const;
      +    G4bool operator!=(const G4UImessenger& messenger) const;
      +
      +    inline G4bool CommandsShouldBeInMaster() const
      +    {
      +      return commandsShouldBeInMaster;
      +    }
       
         protected:
      -      G4String ItoS(G4int i);
      -      G4String DtoS(G4double a);
      -      G4String BtoS(G4bool b);
      -      G4int    StoI(G4String s);
      -      G4double StoD(G4String s);
      -      G4bool   StoB(G4String s);
      +
      +    G4String ItoS(G4int i);
      +    G4String DtoS(G4double a);
      +    G4String BtoS(G4bool b);
      +    G4int StoI(G4String s);
      +    G4long StoL(G4String s);
      +    G4double StoD(G4String s);
      +    G4bool StoB(G4String s);
      +
      +    void AddUIcommand(G4UIcommand* newCommand);
      +
      +    void CreateDirectory(const G4String& path, const G4String& dsc,
      +                         G4bool commandsToBeBroadcasted = true);
      +    template 
      +    T* CreateCommand(const G4String& cname, const G4String& dsc);
      +      // Shortcut way for creating directory and commands
       
         protected:
      -      void AddUIcommand(G4UIcommand * newCommand);
      -  
      -      // shortcut way for creating directory and commands
      -      G4UIdirectory* baseDir; // used if new object is created
      -      G4String baseDirName;   // used if dir already exists
      -      void CreateDirectory(const G4String& path, const G4String& dsc,
      -                           G4bool commandsToBeBroadcasted=true);
      -      template  T* CreateCommand(const G4String& cname, 
      -                                             const G4String& dsc);
       
      -  protected:
      -      G4bool commandsShouldBeInMaster;
      -  public:
      -      G4bool CommandsShouldBeInMaster() const
      -      { return commandsShouldBeInMaster; }
      +    G4UIdirectory* baseDir = nullptr;  // used if new object is created
      +    G4String baseDirName = "";    // used if dir already exists
      +    G4bool commandsShouldBeInMaster = false;
       };
       
      +// Inline template implementations
      +
       template 
       T* G4UImessenger::CreateCommand(const G4String& cname, const G4String& dsc)
       {
         G4String path;
      -  if( cname(0) != '/' ) {
      +  if(cname(0) != '/')
      +  {
           path = baseDirName + cname;
      -    if (path(0) != '/') path = "/" + path;
      +    if(path(0) != '/')
      +      path = "/" + path;
         }
       
         T* command = new T(path.c_str(), this);
      -  command-> SetGuidance(dsc.c_str());
      +  command->SetGuidance(dsc.c_str());
       
         return command;
       }
      diff --git a/source/intercoms/include/G4UIparameter.hh b/source/intercoms/include/G4UIparameter.hh
      index 3f9690fca6..ecd92a8862 100644
      --- a/source/intercoms/include/G4UIparameter.hh
      +++ b/source/intercoms/include/G4UIparameter.hh
      @@ -23,169 +23,168 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIparameter
       //
      +// Class description:
       //
      -// 
      -// ---------------------------------------------------------------------
      +// This class represents a parameter which will be taken by a G4UIcommand
      +// object. In case a command is defined by constructing G4UIcmdXXX class,
      +// it automatically creates necessary parameter objects, thus the user needs
      +// not to create parameter object(s). In case the user wants to create a
      +// command directly instantiated by G4UIcommand class, he/she must create
      +// a parameter object(s)
       
      -#ifndef G4UIparameter_h
      -#define G4UIparameter_h 1
      +// Author: Makoto Asai, 1997
      +// --------------------------------------------------------------------
      +#ifndef G4UIparameter_hh
      +#define G4UIparameter_hh 1
       
       #include "globals.hh"
       #include "G4UItokenNum.hh"
       
      -// class description:
      -//
      -//  This class represents a parameter which will be taken by a G4UIcommand
      -// object. In case a command is defined by constructing G4UIcmdXXX class,
      -// it automatically creates necessary parameter objects, thus the user needs 
      -// not to create parameter object(s) by him/herself. In case the user wants 
      -// to create a command directly instansiated by G4UIcommand class, he/she
      -// must create parameter object(s) by him/herself.
      -
      -class G4UIparameter 
      +class G4UIparameter
       {
      -  public: // with description
      -      G4UIparameter();
      -      G4UIparameter(char theType);
      -      G4UIparameter(const char * theName, char theType, G4bool theOmittable);
      +  public:
      +
      +    G4UIparameter();
      +    G4UIparameter(char theType);
      +    G4UIparameter(const char* theName, char theType, G4bool theOmittable);
             // Constructors, where "theName" is the name of the parameter which will
             // be used by the range checking, "theType" is the type of the parameter
      -      // (currently "b" (boolean), "i" (integer), "d" (double), and "s" (string)
      -      // are supported), and "theOmittable" is a boolean flag to set whether
      -      // the user of the command can ommit the parameter or not. If "theOmittable"
      -      // is true, the default value must be given.
      -      ~G4UIparameter();
      -      // Destructor. When a command is destructed, the delete operator(s) for 
      -      // associating parameter(s) are AUTOMATICALLY invoked. Thus the user needs 
      -      // NOT to invoke this by him/herself.
      +      // (currently "b" (Boolean), "i" (integer), "l" (long int), "d" (double)
      +      // and "s" (string) are supported). 
      +      // "theOmittable" is a Boolean flag to set whether
      +      // the user of the command can omit the parameter or not.
      +      // If "theOmittable" is true, the default value must be given
       
      -  public:
      -      G4bool operator==(const G4UIparameter &right) const;
      -      G4bool operator!=(const G4UIparameter &right) const;
      +    ~G4UIparameter();
      +      // Destructor. When a command is destructed, the delete operator(s) of the
      +      // associated parameter(s) are AUTOMATICALLY invoked
       
      -      G4int CheckNewValue(const char* newValue);
      -      void List();
      +    G4bool operator==(const G4UIparameter& right) const;
      +    G4bool operator!=(const G4UIparameter& right) const;
       
      -  private:
      -      G4String parameterName;
      -      G4String parameterGuidance;
      -      G4String defaultValue;
      -      G4String parameterRange;
      -      G4String parameterCandidate;
      -      char parameterType;
      -      G4bool omittable;
      -      G4bool currentAsDefaultFlag;
      -      G4int widget;
      +    G4int CheckNewValue(const char* newValue);
      +    void List();
       
      -  public: // with description
      -      inline void SetDefaultValue(const char * theDefaultValue)
      -      { defaultValue = theDefaultValue; }
      -      void SetDefaultValue(G4int theDefaultValue);
      -      void SetDefaultValue(G4double theDefaultValue);
      -      // These methods set the default value of the parameter.
      -      void SetDefaultUnit(const char * theDefaultUnit);
      +    inline void SetDefaultValue(const char* theDefaultValue)
      +    {
      +      defaultValue = theDefaultValue;
      +    }
      +    void SetDefaultValue(G4int theDefaultValue);
      +    void SetDefaultValue(G4long theDefaultValue);
      +    void SetDefaultValue(G4double theDefaultValue);
      +      // These methods set the default value of the parameter
      +
      +    void SetDefaultUnit(const char* theDefaultUnit);
             // This method can be used for a string-type parameter that is
             // used to specify a unit. This method is valid only for a
      -      // string-type parameter. With this set-method, not only the
      -      // default unit but also candidate units that belong to the
      -      // same unit category (a.k.a. dimension) as the default unit.
      -  public:
      -      inline G4String GetDefaultValue() const
      -      { return defaultValue; }
      -      inline char GetParameterType() const
      -      { return parameterType; }
      +      // string-type parameter
       
      -  public: // with description
      -      inline void SetParameterRange(const char * theRange)
      -      { parameterRange = theRange; }
      -      //  Defines the range the parameter can take.
      -      //  The variable name appear in the range expression must be same
      -      // as the name of the parameter.
      -      //  All the C++ syntax of relational operators are allowed for the
      -      // range expression.
      -  public:
      -      inline G4String GetParameterRange() const
      -      { return parameterRange; }
      -    
      -    // parameterName
      -      inline void SetParameterName(const char * theName)
      -      { parameterName = theName; }
      -      inline G4String GetParameterName() const
      -      { return parameterName; }
      -    
      -  public: // with description
      -      inline void SetParameterCandidates(const char * theString)
      -      { parameterCandidate = theString; }
      -      //  This method is meaningful if the type of the parameter is string.
      -      // The candidates listed in the argument must be separated by space(s).
      -  public:
      -      inline G4String GetParameterCandidates() const
      -      { return parameterCandidate; }
      -    
      -    // omittable
      -      inline void SetOmittable(G4bool om)
      -      { omittable = om; }
      -      inline G4bool IsOmittable() const
      -      { return omittable; }
      -    
      -    // currentAsDefaultFlag
      -      inline void SetCurrentAsDefault(G4bool val)
      -      { currentAsDefaultFlag = val; }
      -      inline G4bool GetCurrentAsDefault() const
      -      { return currentAsDefaultFlag; }
      -    
      -    // out of date methods
      -      inline void SetWidget(G4int theWidget)
      -      { widget = theWidget; }
      -      inline const G4String GetParameterGuidance() const
      -      { return parameterGuidance; }
      -      inline void SetGuidance(const char * theGuidance)
      -      { parameterGuidance = theGuidance; }
      +    inline const G4String& GetDefaultValue() const { return defaultValue; }
      +    inline char GetParameterType() const { return parameterType; }
      +
      +    inline void SetParameterRange(const char* theRange)
      +      // Defines the range the parameter can take.
      +      // The variable name appearing in the range expression must be the
      +      // same as the name of the parameter.
      +      // All the C++ syntax of relational operators are allowed for the
      +      // range expression
      +    {
      +      parameterRange = theRange;
      +    }
      +
      +    inline const G4String& GetParameterRange() const { return parameterRange; }
      +
      +    inline void SetParameterName(const char* pName) { parameterName = pName; }
      +    inline const G4String& GetParameterName() const { return parameterName; }
      +
      +    inline void SetParameterCandidates(const char* theString)
      +      // This method is meaningful if the type of the parameter is string.
      +      // The candidates listed in the argument must be separated by space(s)
      +    {
      +      parameterCandidate = theString;
      +    }
      +
      +    inline const G4String& GetParameterCandidates() const
      +    {
      +      return parameterCandidate;
      +    }
      +
      +    inline void SetOmittable(G4bool om) { omittable = om; }
      +    inline G4bool IsOmittable() const { return omittable; }
      +
      +    inline void SetCurrentAsDefault(G4bool val) { currentAsDefaultFlag = val; }
      +    inline G4bool GetCurrentAsDefault() const { return currentAsDefaultFlag; }
      +
      +    // Obsolete methods
      +    //
      +    inline void SetWidget(G4int theWidget) { widget = theWidget; }
      +    inline const G4String& GetParameterGuidance() const
      +    {
      +      return parameterGuidance;
      +    }
      +    inline void SetGuidance(const char* theGuidance)
      +    {
      +      parameterGuidance = theGuidance;
      +    }
       
         protected:
      -    using yystype = G4UItokenNum::yystype;
      +
      +    using yystype  = G4UItokenNum::yystype;
           using tokenNum = G4UItokenNum::tokenNum;
      +
         private:
      +
           // --- the following is used by CheckNewValue() -------
      -    G4int TypeCheck(const char* newValue );
      -    G4int RangeCheck(const char* newValue );
      -    G4int CandidateCheck(const char* newValue );
      -    G4int IsInt(const char* str, short maxDigit);
      +    G4int TypeCheck(const char* newValue);
      +    G4int RangeCheck(const char* newValue);
      +    G4int CandidateCheck(const char* newValue);
      +    G4int IsInt(const char* str, short maxDigit); // used for both int and long int
           G4int IsDouble(const char* str);
           G4int ExpectExponent(const char* str);
           //  syntax nodes
      -    yystype Expression( void );
      -    yystype LogicalORExpression( void );
      -    yystype LogicalANDExpression( void );
      -    yystype EqualityExpression ( void );
      -    yystype RelationalExpression( void );
      -    yystype AdditiveExpression( void );
      -    yystype MultiplicativeExpression( void );
      -    yystype UnaryExpression( void );
      -    yystype PrimaryExpression( void );
      +    yystype Expression(void);
      +    yystype LogicalORExpression(void);
      +    yystype LogicalANDExpression(void);
      +    yystype EqualityExpression(void);
      +    yystype RelationalExpression(void);
      +    yystype AdditiveExpression(void);
      +    yystype MultiplicativeExpression(void);
      +    yystype UnaryExpression(void);
      +    yystype PrimaryExpression(void);
           //  semantics routines
      -    G4int Eval2( yystype arg1, G4int op, yystype arg2 );
      -    G4int CompareInt( G4int arg1, G4int op, G4int arg2);
      -    G4int CompareDouble( double arg1, G4int op, double arg2);
      -    //  utility 
      -    tokenNum Yylex( void );     // returns next token
      -    G4int G4UIpGetc( void );     // read one char from rangeBuf
      -    G4int G4UIpUngetc( G4int c );  // put back  
      -    G4int Backslash( G4int c );
      -    G4int Follow( G4int expect, G4int ifyes, G4int ifno );
      -    G4String TokenToStr(G4int token);
      -    //void PrintToken(void);  // debug
      -    //  data
      +    G4int Eval2(yystype arg1, G4int op, yystype arg2);
      +    G4int CompareInt(G4int arg1, G4int op, G4int arg2);
      +    G4int CompareLong(G4long arg1, G4int op, G4long arg2);
      +    G4int CompareDouble(double arg1, G4int op, double arg2);
      +    //  utility
      +    tokenNum Yylex(void);        // returns next token
      +    G4int G4UIpGetc(void);       // read one char from rangeBuf
      +    G4int G4UIpUngetc(G4int c);  // put back
      +    G4int Backslash(G4int c);
      +    G4int Follow(G4int expect, G4int ifyes, G4int ifno);
      +    //G4String TokenToStr(G4int token);
      +
      +    // data -----------------------------------------------------------
      +
      +    G4String parameterName;
      +    G4String parameterGuidance;
      +    G4String defaultValue;
      +    G4String parameterRange;
      +    G4String parameterCandidate;
      +    char parameterType = '\0';
      +    G4bool omittable = false;
      +    G4bool currentAsDefaultFlag = false;
      +    G4int widget = 0;
      +
      +    //------------ CheckNewValue() related data members ---------------
           G4String rangeBuf;
      -    G4int bp;                  // buffer pointer for rangeBuf
      -    tokenNum token;
      +    G4int bp = 0;  // buffer pointer for rangeBuf
      +    tokenNum token = G4UItokenNum::NONE;
           yystype yylval;
           yystype newVal;
      -    G4int paramERR;
      -   //------------ end of CheckNewValue() related member --------------
      -
      +    G4int paramERR = 0;
       };
       
       #endif
      -
      diff --git a/source/intercoms/include/G4UIsession.hh b/source/intercoms/include/G4UIsession.hh
      index 2e102dc34d..b7f32f07bc 100644
      --- a/source/intercoms/include/G4UIsession.hh
      +++ b/source/intercoms/include/G4UIsession.hh
      @@ -23,54 +23,50 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIsession
       //
      +// Class description:
       //
      -// $id$
      +// This is a base class of all (G)UI sessions.
      +// SessionStart() method should be called to start the session
       
      -#ifndef G4UIsession_h
      -#define G4UIsession_h 1
      +// Author: Makoto Asai, 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UIsession_hh
      +#define G4UIsession_hh 1
       
       #include "G4coutDestination.hh"
       #include "globals.hh"
       #include "icomsdefs.hh"
       
      -// class description:
      -//
      -//  This is a base class of all (G)UI session.
      -//  SessionStart() method should be called to start the session.
      -//
      -
       class G4UIsession : public G4coutDestination
       {
      -  // Base class of UI/GUI session
      -  
         public:
      -      G4UIsession();
      -      G4UIsession(G4int iBatch);
      -      virtual ~G4UIsession();
       
      -      virtual G4UIsession * SessionStart();
      +    G4UIsession();
      +    G4UIsession(G4int iBatch);
      +    virtual ~G4UIsession();
      +
      +    virtual G4UIsession* SessionStart();
             // This method will be invoked by main().
      -      // Optionally, it can be invoked by another session.
      -      
      -      virtual void PauseSessionStart(const G4String& Prompt);
      +      // Optionally, it can be invoked by another session
      +
      +    virtual void PauseSessionStart(const G4String& Prompt);
             // This method will be invoked by G4UImanager
      -      // when G4kernel becomes to Pause state.
      -      
      -      virtual G4int ReceiveG4cout(const G4String& coutString);
      -      virtual G4int ReceiveG4cerr(const G4String& cerrString);
      -      // These two methods will be invoked by G4strstreambuf.
      +      // when the kernel comes to Pause state
      +
      +    virtual G4int ReceiveG4cout(const G4String& coutString);
      +    virtual G4int ReceiveG4cerr(const G4String& cerrString);
      +      // These two methods will be invoked by G4strstreambuf
      +
      +    static G4int InSession();
      +    inline G4int GetLastReturnCode() const { return lastRC; }
       
         protected:
      -      G4ICOMS_DLL static G4int inSession;
      -      G4int ifBatch;
      -      G4int lastRC;
      -  public:
      -      static G4int InSession() { return inSession; }
      -      G4int GetLastReturnCode() const { return lastRC; }
      +
      +    G4ICOMS_DLL static G4int inSession;
      +    G4int ifBatch = 0;
      +    G4int lastRC = 0;
       };
       
      -
      -
       #endif
      -
      diff --git a/source/intercoms/include/G4UItokenNum.hh b/source/intercoms/include/G4UItokenNum.hh
      index da6b8019d6..0c1c0f9a15 100644
      --- a/source/intercoms/include/G4UItokenNum.hh
      +++ b/source/intercoms/include/G4UItokenNum.hh
      @@ -23,68 +23,80 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UItokenNum
       //
      +// Description:
       //
      -// G4UItokenNum.hh
      +// Namespace with enumerator of tokens
       
      +// Author: Makoto Asai, 1998
      +// --------------------------------------------------------------------
       #ifndef G4UItokenNum_hh
       #define G4UItokenNum_hh 1
      +
       #include "globals.hh"
       
       namespace G4UItokenNum
       {
      -enum tokenNum
      -{
      -  NONE       = 0,
      -  IDENTIFIER = 257,
      -  CONSTINT   = 258,
      -  CONSTDOUBLE= 259,
      -  CONSTCHAR  = 260,
      -  CONSTSTRING= 261,
      -  GT         = 262,
      -  GE         = 263,
      -  LT         = 264,
      -  LE         = 265,
      -  EQ         = 266,
      -  NE         = 267,
      -  //LOGICALNOT = 268,
      -  LOGICALOR  = 269,
      -  LOGICALAND = 270,
      -  SCAREAMER  = 33,
      -  LPAREN     = 40,
      -  PLUS       = 43,
      -  MINUS      = 45
      -};
      +  enum tokenNum
      +  {
      +    NONE        = 0,
      +    IDENTIFIER  = 257,
      +    CONSTINT    = 258,
      +    CONSTDOUBLE = 259,
      +    CONSTCHAR   = 260,
      +    CONSTSTRING = 261,
      +    GT          = 262,
      +    GE          = 263,
      +    LT          = 264,
      +    LE          = 265,
      +    EQ          = 266,
      +    NE          = 267,
      +    // LOGICALNOT = 268,
      +    CONSTLONG   = 268,
      +    LOGICALOR  = 269,
      +    LOGICALAND = 270,
      +    SCAREAMER  = 33,
      +    LPAREN     = 40,
      +    PLUS       = 43,
      +    MINUS      = 45
      +  };
       
      -typedef struct yystype
      -{
      +  typedef struct yystype
      +  {
           tokenNum type;
           G4double D;
      -    G4int    I;
      -    char     C;
      +    G4int I;
      +    G4long L;
      +    char C;
           G4String S;
       
      -    yystype() : type(tokenNum::NONE), D(0.0), I(0), C(' '), S("")
      -    {
      -    }
      +    yystype()
      +      : type(tokenNum::NONE)
      +      , D(0.0)
      +      , I(0)
      +      , L(0)
      +      , C(' ')
      +      , S("")
      +    {}
           G4bool operator==(const yystype& right) const
           {
      -      return (this == &right)?1:0;
      +      return (this == &right) ? 1 : 0;
           }
           yystype& operator=(const yystype& right)
           {
      -      if (&right==this) return *this;
      +      if(&right == this)
      +        return *this;
             type = right.type;
      -      D = right.D;
      -      I = right.I;
      -      C = right.C;
      -      S = right.S;
      +      D    = right.D;
      +      I    = right.I;
      +      L    = right.L;
      +      C    = right.C;
      +      S    = right.S;
             return *this;
           }
      -    yystype(const yystype& right)
      -    {
      -      *this=right;
      -    }
      -} yystype;
      -}
      +    yystype(const yystype& right) { *this = right; }
      +  } yystype;
      +}  // namespace G4UItokenNum
      +
       #endif
      diff --git a/source/intercoms/include/G4UnitsMessenger.hh b/source/intercoms/include/G4UnitsMessenger.hh
      index f066f47201..15e23ff6cd 100644
      --- a/source/intercoms/include/G4UnitsMessenger.hh
      +++ b/source/intercoms/include/G4UnitsMessenger.hh
      @@ -23,19 +23,17 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UnitsMessenger
       //
      +// Class description
       //
      -// class description
      -//
      -// This class is the messenger of the class which maintain the table of Units.
      -// (located in global/management/include/G4UnitsTable.hh)
      -// Its contains the commands to interact with the table of Units 
      +// This class is the messenger for the table of units G4UnitsTable.
      +// It contains the commands to interact with the table of Units
       
      -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
      -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
      -
      -#ifndef G4UnitsMessenger_h
      -#define G4UnitsMessenger_h 1
      +// Author: Michel Maire, 1998
      +// --------------------------------------------------------------------
      +#ifndef G4UnitsMessenger_hh
      +#define G4UnitsMessenger_hh 1
       
       #include "globals.hh"
       #include "G4UImessenger.hh"
      @@ -43,20 +41,19 @@
       class G4UIdirectory;
       class G4UIcmdWithoutParameter;
       
      -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
      -
      -class G4UnitsMessenger: public G4UImessenger
      +class G4UnitsMessenger : public G4UImessenger
       {
         public:
      +
           G4UnitsMessenger();
      -   ~G4UnitsMessenger();
      -    
      +    ~G4UnitsMessenger();
      +
           void SetNewValue(G4UIcommand*, G4String);
      -    
      -  private:    
      -    G4UIdirectory*             UnitsTableDir;
      -    G4UIcmdWithoutParameter*   ListCmd;
      +
      +  private:
      +
      +    G4UIdirectory* UnitsTableDir = nullptr;
      +    G4UIcmdWithoutParameter* ListCmd = nullptr;
       };
       
       #endif
      -
      diff --git a/source/intercoms/include/G4VFlavoredParallelWorld.hh b/source/intercoms/include/G4VFlavoredParallelWorld.hh
      index 0c5d829ad3..74796357a7 100644
      --- a/source/intercoms/include/G4VFlavoredParallelWorld.hh
      +++ b/source/intercoms/include/G4VFlavoredParallelWorld.hh
      @@ -23,27 +23,27 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4VFlavoredParallelWorld
       //
      +// Class description:
       //
      -// 
      -// Abstract interface for GEANT4 Flavored Parallel World.
      -// P. Mora de Freitas & M. Verderi 14/April/1999.
      -//
      +// Abstract interface for Flavored Parallel World.
       
      +// Authors: P. Mora de Freitas & M. Verderi,  14 April 1999
      +// --------------------------------------------------------------------
       #ifndef G4VFLAVOREDPARALLELWORLD_HH
      -#define G4VFLAVOREDPARALLELWORLD_HH
      +#define G4VFLAVOREDPARALLELWORLD_HH 1
       
       class G4VPhysicalVolume;
       
      -class G4VFlavoredParallelWorld {
      +class G4VFlavoredParallelWorld
      +{
      +  public:
       
      -public:
      +    virtual ~G4VFlavoredParallelWorld() {}
       
      -  virtual ~G4VFlavoredParallelWorld () {}
      -
      -  // G4VFlavoredParallelWorld Interface for visualisation.
      -
      -  virtual 
      -  G4VPhysicalVolume* GetThePhysicalVolumeWorld() const =0;
      +    virtual G4VPhysicalVolume* GetThePhysicalVolumeWorld() const = 0;
      +      // Interface for visualisation
       };
      +
       #endif
      diff --git a/source/intercoms/include/G4VGlobalFastSimulationManager.hh b/source/intercoms/include/G4VGlobalFastSimulationManager.hh
      index 7d09ab49f3..b4d9570d93 100644
      --- a/source/intercoms/include/G4VGlobalFastSimulationManager.hh
      +++ b/source/intercoms/include/G4VGlobalFastSimulationManager.hh
      @@ -23,36 +23,31 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      -//
      -//
      -// 
      -// Abstract interface for GEANT4 Global Fast Simulation Manager.
      -// P. Mora de Freitas & M. Verderi 14/April/1999.
      +// G4VGlobalFastSimulationManager
       //
       // Class description:
       //
      -// G4GlobalFastSimulationManager is a "Singleton", i.e., only one instance 
      -// of it may exist. This is ensured by making the constructor private.
      +// Abstract interface for Global Fast Simulation Manager
      +// G4GlobalFastSimulationManager is a "Singleton".
      +// This class is an abstract interface for G4GlobalFastSimulationManager.
      +// It has the public access function GetConcreteInstance(), which is used
      +// to obtain a pointer to the concrete G4GlobalFastSimulationManager, should
      +// it exist. Then:
       //
      -// G4VGlobalFastSimulationManager is an abstract interface for the
      -// G4GlobalFastSimulationManager one. It has the public access function
      -// GetConcreteInstance(), which is used to obtain a pointer to the concrete 
      -// G4GlobalFastSimulationManager, should it exist. After
      -//
      -// G4VGlobalFastSimulationManager* pVFSMan =  
      +// G4VGlobalFastSimulationManager* pVFSMan =
       //     G4VGlobalFastSimulationManager::GetConcreteInstance ();
       //
      -// pVFSMan points to the real (concrete) G4GlobalFastSimulationManager if
      -// at least a parameterisation envelope exists, otherwise is zero.  
      +// 'pVFSMan' points to the real (concrete) G4GlobalFastSimulationManager if
      +// at least a parameterisation envelope exists, otherwise is null.
       //
       // Thus all code must be protected, for example by:
      -//   if (pVFSMan) 
      -//    G4FlavoredParallelWorld* =
      -//      pVFSMan -> GetFlavoredWorldForThis(p);
      -//
      +//  if (pVFSMan)
      +//    G4FlavoredParallelWorld* = pVFSMan -> GetFlavoredWorldForThis(p);
       
      +// Authors: P. Mora de Freitas & M. Verderi, 14 April 1999
      +// --------------------------------------------------------------------
       #ifndef G4VGLOBALFASTSIMULATIONMANAGER_HH
      -#define G4VGLOBALFASTSIMULATIONMANAGER_HH
      +#define G4VGLOBALFASTSIMULATIONMANAGER_HH 1
       
       #include "G4Types.hh"
       #include "icomsdefs.hh"
      @@ -62,27 +57,26 @@ class G4ParticleDefinition;
       
       class G4VGlobalFastSimulationManager
       {
      +  public:
       
      -public:  // with description
      +    static G4VGlobalFastSimulationManager* GetConcreteInstance();
      +      // Returns pointer to the actual Global Fast Simulation manager if
      +      // at least a parameterisation envelope exists
       
      -  static G4VGlobalFastSimulationManager* GetConcreteInstance ();
      -    // Returns pointer to actual Global Fast Simulation manager if
      -    // at least a parameterisation envelope exists. Always check value.
      +    virtual ~G4VGlobalFastSimulationManager() {}
       
      -  virtual ~G4VGlobalFastSimulationManager () {}
      +    virtual G4VFlavoredParallelWorld* GetFlavoredWorldForThis(
      +                                                     G4ParticleDefinition*) = 0;
      +      // VGlobalFastSimulationManager interface for visualisation
       
      -  virtual
      -  G4VFlavoredParallelWorld* GetFlavoredWorldForThis(G4ParticleDefinition*)=0;
      -    // VGlobalFastSimulationManager interface for visualisation.
      +  protected:
       
      -protected:
      -
      -  static void SetConcreteInstance (G4VGlobalFastSimulationManager*);
      -    // Sets the pointer to actual Global Fast Simulation manager.
      -
      -  G4ICOMS_DLL static G4ThreadLocal G4VGlobalFastSimulationManager* fpConcreteInstance;  
      -    // Pointer to real G4GlobalFastSimulationManager.
      +    static void SetConcreteInstance(G4VGlobalFastSimulationManager*);
      +      // Sets the pointer to the actual Global Fast Simulation manager
       
      +    G4ICOMS_DLL
      +    static G4ThreadLocal G4VGlobalFastSimulationManager* fpConcreteInstance;
      +      // Pointer to real G4GlobalFastSimulationManager
       };
       
       #endif
      diff --git a/source/intercoms/include/icomsdefs.hh b/source/intercoms/include/icomsdefs.hh
      index 41bd1e06c3..35a5ab23bf 100644
      --- a/source/intercoms/include/icomsdefs.hh
      +++ b/source/intercoms/include/icomsdefs.hh
      @@ -23,28 +23,26 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      -//
      -//
      -//
       // Defines for Windows DLLs import/export
      -//
       
      +// Author: G.Cosmo, CERN
      +// --------------------------------------------------------------------
       #ifndef G4ICOMSWDEFS_HH
      -#define G4ICOMSWDEFS_HH
      +#define G4ICOMSWDEFS_HH 1
       
       #include "G4Types.hh"
       
       #ifdef WIN32
      -  //
      -  // Unique identifier for intercoms module
      -  //
      -  #if defined G4ICOMS_ALLOC_EXPORT
      -    #define G4ICOMS_DLL G4DLLEXPORT
      -  #else
      -    #define G4ICOMS_DLL G4DLLIMPORT
      -  #endif
      +//
      +// Unique identifier for intercoms module
      +//
      +#  if defined G4ICOMS_ALLOC_EXPORT
      +#    define G4ICOMS_DLL G4DLLEXPORT
      +#  else
      +#    define G4ICOMS_DLL G4DLLIMPORT
      +#  endif
       #else
      -  #define G4ICOMS_DLL
      +#  define G4ICOMS_DLL
       #endif
       
       #endif /* G4ICOMSWDEFS_HH */
      diff --git a/source/intercoms/sources.cmake b/source/intercoms/sources.cmake
      index 4b3539a5f6..f82272103e 100644
      --- a/source/intercoms/sources.cmake
      +++ b/source/intercoms/sources.cmake
      @@ -12,6 +12,7 @@ geant4_define_module(NAME G4intercoms
           G4AnyType.hh
           G4GenericMessenger.hh
           G4LocalThreadCoutMessenger.hh
      +    G4ProfilerMessenger.hh
           G4UIaliasList.hh
           G4UIbatch.hh
           G4UIbridge.hh
      @@ -22,6 +23,7 @@ geant4_define_module(NAME G4intercoms
           G4UIcmdWithADoubleAndUnit.hh
           G4UIcmdWithAString.hh
           G4UIcmdWithAnInteger.hh
      +    G4UIcmdWithALongInt.hh
           G4UIcmdWithoutParameter.hh
           G4UIcommand.hh
           G4UIcommandStatus.hh
      @@ -40,6 +42,7 @@ geant4_define_module(NAME G4intercoms
         SOURCES
           G4LocalThreadCoutMessenger.cc
           G4GenericMessenger.cc
      +    G4ProfilerMessenger.cc
           G4UIaliasList.cc
           G4UIbatch.cc
           G4UIbridge.cc
      @@ -50,6 +53,7 @@ geant4_define_module(NAME G4intercoms
           G4UIcmdWithADoubleAndUnit.cc
           G4UIcmdWithAString.cc
           G4UIcmdWithAnInteger.cc
      +    G4UIcmdWithALongInt.cc
           G4UIcmdWithoutParameter.cc
           G4UIcommand.cc
           G4UIcommandTree.cc
      @@ -66,6 +70,7 @@ geant4_define_module(NAME G4intercoms
         GLOBAL_DEPENDENCIES
           G4global
         LINK_LIBRARIES
      +    ${timemory_LIBRARIES}
       )
       
       # List any source specific properties here
      diff --git a/source/intercoms/src/G4GenericMessenger.cc b/source/intercoms/src/G4GenericMessenger.cc
      index 5cca2f41ee..f204f58456 100644
      --- a/source/intercoms/src/G4GenericMessenger.cc
      +++ b/source/intercoms/src/G4GenericMessenger.cc
      @@ -22,8 +22,10 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4GenericMessenger
       //
      -//
      +// Author: P.Mato, CERN - 27 September 2012
      +// --------------------------------------------------------------------
       
       #include "G4GenericMessenger.hh"
       #include "G4Types.hh"
      @@ -36,206 +38,283 @@
       
       #include 
       
      -class G4InvalidUICommand: public std::bad_cast {
      -public:
      -  G4InvalidUICommand() {}
      -  virtual const char* what() const throw() {
      -    return "G4InvalidUICommand: command does not exists or is of invalid type";
      -  }
      +class G4InvalidUICommand : public std::bad_cast
      +{
      +  public:
      +
      +    G4InvalidUICommand() {}
      +    virtual const char* what() const throw()
      +    {
      +      return "G4InvalidUICommand: command does not exist or is of invalid type";
      +    }
       };
       
      -
      -G4GenericMessenger::G4GenericMessenger(void* obj, const G4String& dir, const G4String& doc): directory(dir), object(obj) {
      +G4GenericMessenger::G4GenericMessenger(void* obj, const G4String& dir,
      +                                       const G4String& doc)
      +  : directory(dir)
      +  , object(obj)
      +{
         // Check if parent commnand is already existing.
      -  // In fact there is no way to check this. UImanager->GetTree()->FindPath() will always rerurn NULL is a dicrectory is given
      -  size_t pos = dir.find_last_of('/', dir.size()-2);
      -  while(pos != 0 && pos != std::string::npos) {
      -    G4UIdirectory* d = new G4UIdirectory(dir.substr(0,pos+1).c_str());
      +  // In fact there is no way to check this. UImanager->GetTree()->FindPath()
      +  // will always rerurn NULL is a dicrectory is given
      +  std::size_t pos = dir.find_last_of('/', dir.size() - 2);
      +  while(pos != 0 && pos != std::string::npos)
      +  {
      +    G4UIdirectory* d  = new G4UIdirectory(dir.substr(0, pos + 1).c_str());
           G4String guidance = "Commands for ";
      -    guidance += dir.substr(1,pos-1);
      +    guidance += dir.substr(1, pos - 1);
           d->SetGuidance(guidance);
      -    pos = dir.find_last_of('/', pos-1);
      +    pos = dir.find_last_of('/', pos - 1);
         }
         dircmd = new G4UIdirectory(dir);
         dircmd->SetGuidance(doc);
       }
       
      -G4GenericMessenger::~G4GenericMessenger() {
      +G4GenericMessenger::~G4GenericMessenger()
      +{
         delete dircmd;
      -  for (std::map::iterator i = properties.begin(); i != properties.end(); i++) delete i->second.command;
      -  for (std::map::iterator i = methods.begin(); i != methods.end(); i++) delete i->second.command;
      +  for(auto i = properties.cbegin(); i != properties.cend(); ++i)
      +    delete i->second.command;
      +  for(auto i = methods.cbegin(); i != methods.cend(); ++i)
      +    delete i->second.command;
       }
       
      -
      -G4GenericMessenger::Command&
      -G4GenericMessenger::DeclareProperty(const G4String& name, const G4AnyType& var, const G4String& doc) {
      -  G4String fullpath = directory+name;
      -  G4UIcommand* cmd = new G4UIcommand(fullpath.c_str(), this);
      -  if(doc != "") cmd->SetGuidance(doc);  
      +G4GenericMessenger::Command& G4GenericMessenger::DeclareProperty(
      +  const G4String& name, const G4AnyType& var, const G4String& doc)
      +{
      +  G4String fullpath = directory + name;
      +  G4UIcommand* cmd  = new G4UIcommand(fullpath.c_str(), this);
      +  if(doc != "")
      +    cmd->SetGuidance(doc);
         char ptype;
         if(var.TypeInfo() == typeid(int) || var.TypeInfo() == typeid(long) ||
      -     var.TypeInfo() == typeid(unsigned int) || var.TypeInfo() == typeid(unsigned long)) ptype = 'i';
      -  else if(var.TypeInfo() == typeid(float) || var.TypeInfo() == typeid(double)) ptype = 'd';
      -  else if(var.TypeInfo() == typeid(bool)) ptype = 'b';
      -  else if(var.TypeInfo() == typeid(G4String)) ptype = 's';
      -  else ptype = 's';
      +     var.TypeInfo() == typeid(unsigned int) ||
      +     var.TypeInfo() == typeid(unsigned long))
      +    ptype = 'i';
      +  else if(var.TypeInfo() == typeid(float) || var.TypeInfo() == typeid(double))
      +    ptype = 'd';
      +  else if(var.TypeInfo() == typeid(bool))
      +    ptype = 'b';
      +  else if(var.TypeInfo() == typeid(G4String))
      +    ptype = 's';
      +  else
      +    ptype = 's';
         cmd->SetParameter(new G4UIparameter("value", ptype, false));
         return properties[name] = Property(var, cmd);
       }
       
      -
      -G4GenericMessenger::Command& G4GenericMessenger::DeclarePropertyWithUnit
      -(const G4String& name, const G4String& defaultUnit, const G4AnyType& var, const G4String& doc) {
      -  if(var.TypeInfo()!=typeid(float) && var.TypeInfo()!=typeid(double) && var.TypeInfo()!= typeid(G4ThreeVector))
      -  { return DeclareProperty(name,var,doc); }
      -  G4String fullpath = directory+name;
      +G4GenericMessenger::Command& G4GenericMessenger::DeclarePropertyWithUnit(
      +  const G4String& name, const G4String& defaultUnit, const G4AnyType& var,
      +  const G4String& doc)
      +{
      +  if(var.TypeInfo() != typeid(float) && var.TypeInfo() != typeid(double) &&
      +     var.TypeInfo() != typeid(G4ThreeVector))
      +  {
      +    return DeclareProperty(name, var, doc);
      +  }
      +  G4String fullpath = directory + name;
         G4UIcommand* cmd;
      -  if(var.TypeInfo()==typeid(float) || var.TypeInfo()==typeid(double))
      +  if(var.TypeInfo() == typeid(float) || var.TypeInfo() == typeid(double))
         {
           cmd = new G4UIcmdWithADoubleAndUnit(fullpath.c_str(), this);
      -    (static_cast(cmd))->SetParameterName("value",false,false);
      +    (static_cast(cmd))
      +      ->SetParameterName("value", false, false);
           (static_cast(cmd))->SetDefaultUnit(defaultUnit);
         }
         else
         {
           cmd = new G4UIcmdWith3VectorAndUnit(fullpath.c_str(), this);
      -    (static_cast(cmd))->SetParameterName("valueX","valueY","valueZ",false,false);
      +    (static_cast(cmd))
      +      ->SetParameterName("valueX", "valueY", "valueZ", false, false);
           (static_cast(cmd))->SetDefaultUnit(defaultUnit);
         }
       
      -  if(doc != "") cmd->SetGuidance(doc);
      +  if(doc != "")
      +    cmd->SetGuidance(doc);
         return properties[name] = Property(var, cmd);
       }
       
      -
      -G4GenericMessenger::Command&
      -G4GenericMessenger::DeclareMethod(const G4String& name, const G4AnyMethod& fun, const G4String& doc) {
      -  G4String fullpath = directory+name;
      -  G4UIcommand* cmd = new G4UIcommand(fullpath.c_str(), this);
      -  if(doc != "") cmd->SetGuidance(doc);
      -  for (size_t i = 0; i < fun.NArg(); i++) {
      +G4GenericMessenger::Command& G4GenericMessenger::DeclareMethod(
      +  const G4String& name, const G4AnyMethod& fun, const G4String& doc)
      +{
      +  G4String fullpath = directory + name;
      +  G4UIcommand* cmd  = new G4UIcommand(fullpath.c_str(), this);
      +  if(doc != "")
      +    cmd->SetGuidance(doc);
      +  for(std::size_t i = 0; i < fun.NArg(); ++i)
      +  {
           cmd->SetParameter(new G4UIparameter("arg", 's', false));
         }
         return methods[name] = Method(fun, object, cmd);
       }
       
      -G4GenericMessenger::Command& G4GenericMessenger::DeclareMethodWithUnit
      - (const G4String& name, const G4String& defaultUnit, const G4AnyMethod& fun, const G4String& doc) {
      -  G4String fullpath = directory+name;
      -  if(fun.NArg()!=1) {
      +G4GenericMessenger::Command& G4GenericMessenger::DeclareMethodWithUnit(
      +  const G4String& name, const G4String& defaultUnit, const G4AnyMethod& fun,
      +  const G4String& doc)
      +{
      +  G4String fullpath = directory + name;
      +  if(fun.NArg() != 1)
      +  {
           G4ExceptionDescription ed;
      -    ed<<"G4GenericMessenger::DeclareMethodWithUnit() does not support a method that has more than\n"
      -      <<"one arguments (or no argument). Please use G4GenericMessenger::DeclareMethod method for\n"
      -      <<"your command <"<.";
      -    G4Exception("G4GenericMessenger::DeclareMethodWithUnit()","Intercom70002",FatalException,ed);
      +    ed << "G4GenericMessenger::DeclareMethodWithUnit() does not support a "
      +          "method that has more than\n"
      +       << "one arguments (or no argument). Please use "
      +          "G4GenericMessenger::DeclareMethod method for\n"
      +       << "your command <" << fullpath << ">.";
      +    G4Exception("G4GenericMessenger::DeclareMethodWithUnit()", "Intercom70002",
      +                FatalException, ed);
         }
         G4UIcommand* cmd = new G4UIcmdWithADoubleAndUnit(fullpath.c_str(), this);
      -  (static_cast(cmd))->SetParameterName("value",false,false);
      +  (static_cast(cmd))
      +    ->SetParameterName("value", false, false);
         (static_cast(cmd))->SetDefaultUnit(defaultUnit);
      -  if(doc != "") cmd->SetGuidance(doc);
      +  if(doc != "")
      +    cmd->SetGuidance(doc);
         return methods[name] = Method(fun, object, cmd);
       }
       
      -  
      -G4String G4GenericMessenger::GetCurrentValue(G4UIcommand* command) {
      -  if ( properties.find(command->GetCommandName()) != properties.end()) {
      +G4String G4GenericMessenger::GetCurrentValue(G4UIcommand* command)
      +{
      +  if(properties.find(command->GetCommandName()) != properties.cend())
      +  {
           Property& p = properties[command->GetCommandName()];
           return p.variable.ToString();
         }
      -  else if ( methods.find(command->GetCommandName()) != methods.end()) {
      -    G4cout<<" GetCurrentValue() is not available for a command defined by G4GenericMessenger::DeclareMethod()."<GetCommandName()) != methods.cend())
      +  {
      +    G4cout << " GetCurrentValue() is not available for a command defined by "
      +              "G4GenericMessenger::DeclareMethod()."
      +           << G4endl;
           return G4String();
         }
      -  else {
      +  else
      +  {
           throw G4InvalidUICommand();
         }
       }
       
      -void G4GenericMessenger::SetNewValue(G4UIcommand* command, G4String newValue) {
      +void G4GenericMessenger::SetNewValue(G4UIcommand* command, G4String newValue)
      +{
         // Check if there are units on this commands
      -  if (typeid(*command) == typeid(G4UIcmdWithADoubleAndUnit)) {
      -    newValue = G4UIcommand::ConvertToString(G4UIcommand::ConvertToDimensionedDouble(newValue));
      +  if(typeid(*command) == typeid(G4UIcmdWithADoubleAndUnit))
      +  {
      +    newValue = G4UIcommand::ConvertToString(
      +      G4UIcommand::ConvertToDimensionedDouble(newValue));
         }
      -  else if (typeid(*command) == typeid(G4UIcmdWith3VectorAndUnit)) {
      -    newValue = G4UIcommand::ConvertToString(G4UIcommand::ConvertToDimensioned3Vector(newValue));
      +  else if(typeid(*command) == typeid(G4UIcmdWith3VectorAndUnit))
      +  {
      +    newValue = G4UIcommand::ConvertToString(
      +      G4UIcommand::ConvertToDimensioned3Vector(newValue));
         }
      -  
      -  if ( properties.find(command->GetCommandName()) != properties.end()) {
      +
      +  if(properties.find(command->GetCommandName()) != properties.cend())
      +  {
           Property& p = properties[command->GetCommandName()];
           p.variable.FromString(newValue);
         }
      -  else if (methods.find(command->GetCommandName()) != methods.end()) {
      +  else if(methods.find(command->GetCommandName()) != methods.cend())
      +  {
           Method& m = methods[command->GetCommandName()];
           if(m.method.NArg() == 0)
             m.method.operator()(m.object);
      -    else if (m.method.NArg() > 0) {
      -      m.method.operator()(m.object,newValue);
      +    else if(m.method.NArg() > 0)
      +    {
      +      m.method.operator()(m.object, newValue);
           }
      -    else {
      +    else
      +    {
             throw G4InvalidUICommand();
           }
         }
       }
       
      -
      -void G4GenericMessenger::SetGuidance(const G4String& s) {
      +void G4GenericMessenger::SetGuidance(const G4String& s)
      +{
         dircmd->SetGuidance(s);
       }
       
      -G4GenericMessenger::Command& G4GenericMessenger::Command::SetUnit(const G4String& unit, UnitSpec spec) {
      +G4GenericMessenger::Command& G4GenericMessenger::Command::SetUnit(
      +  const G4String& unit, UnitSpec spec)
      +{
         // Change the type of command (unfortunatelly this is done a posteriory)
      -  // We need to delete the old command before creating the new one and therefore we need to recover the information
      -  // before the deletetion
      -  if ( G4Threading::IsMultithreadedApplication() ) {
      +  // We need to delete the old command before creating the new one and therefore
      +  // we need to recover the information before the deletetion
      +  if(G4Threading::IsMultithreadedApplication())
      +  {
           G4String cmdpath = command->GetCommandPath();
           G4ExceptionDescription ed;
      -    ed<<"G4GenericMessenger::Command::SetUnit() is thread-unsafe and should not be used\n"
      -      <<"in multi-threaded mode. For your command <"<, use\n"
      -      <<" DeclarePropertyWithUnit(const G4String& name, const G4String& defaultUnit,\n"
      -      <<"                         const G4AnyType& variable, const G4String& doc)\n"
      -      <<"or\n"
      -      <<" DeclareMethodWithUnit(const G4String& name, const G4String& defaultUnit,\n"
      -      <<"                       const G4AnyType& variable, const G4String& doc)\n"
      -      <<"to define a command with a unit <"<.";
      -    if(spec!=UnitDefault) { ed<<"\nPlease use a default unit instead of unit category."; }
      -    G4Exception("G4GenericMessenger::Command::SetUnit()","Intercom70001",FatalException,ed);
      +    ed << "G4GenericMessenger::Command::SetUnit() is thread-unsafe and should "
      +          "not be used\n"
      +       << "in multi-threaded mode. For your command <" << cmdpath << ">, use\n"
      +       << " DeclarePropertyWithUnit(const G4String& name, const G4String& "
      +          "defaultUnit,\n"
      +       << "                         const G4AnyType& variable, const G4String& "
      +          "doc)\n"
      +       << "or\n"
      +       << " DeclareMethodWithUnit(const G4String& name, const G4String& "
      +          "defaultUnit,\n"
      +       << "                       const G4AnyType& variable, const G4String& "
      +          "doc)\n"
      +       << "to define a command with a unit <" << unit << ">.";
      +    if(spec != UnitDefault)
      +    {
      +      ed << "\nPlease use a default unit instead of unit category.";
      +    }
      +    G4Exception("G4GenericMessenger::Command::SetUnit()", "Intercom70001",
      +                FatalException, ed);
           return *this;
         }
       
      -  G4String cmdpath = command->GetCommandPath();
      +  G4String cmdpath         = command->GetCommandPath();
         G4UImessenger* messenger = command->GetMessenger();
      -  G4String range = command->GetRange();
      +  G4String range           = command->GetRange();
         std::vector guidance;
      -  G4String par_name = command->GetParameter(0)->GetParameterName();
      +  G4String par_name   = command->GetParameter(0)->GetParameterName();
         G4bool par_omitable = command->GetParameter(0)->IsOmittable();
      -  for (size_t i = 0; i < command->GetGuidanceEntries(); ++i) guidance.push_back(command->GetGuidanceLine(i));
      -  // Before deleting the command we need to add a fake one to avoid deleting the directory entry and with its guidance
      -  G4UIcommand tmp((cmdpath+"_tmp").c_str(), messenger);
      +  for(std::size_t i = 0; i < command->GetGuidanceEntries(); ++i)
      +    guidance.push_back(command->GetGuidanceLine(i));
      +  // Before deleting the command we need to add a fake one to avoid deleting
      +  // the directory entry and with its guidance
      +  G4UIcommand tmp((cmdpath + "_tmp").c_str(), messenger);
         delete command;
       
      -  if (*type == typeid(float) || *type == typeid(double) ) {
      -    G4UIcmdWithADoubleAndUnit* cmd_t = new G4UIcmdWithADoubleAndUnit(cmdpath, messenger);
      -    if(spec == UnitDefault) cmd_t->SetDefaultUnit(unit);
      -    else if(spec == UnitCategory) cmd_t->SetUnitCategory(unit);
      +  if(*type == typeid(float) || *type == typeid(double))
      +  {
      +    G4UIcmdWithADoubleAndUnit* cmd_t =
      +      new G4UIcmdWithADoubleAndUnit(cmdpath, messenger);
      +    if(spec == UnitDefault)
      +      cmd_t->SetDefaultUnit(unit);
      +    else if(spec == UnitCategory)
      +      cmd_t->SetUnitCategory(unit);
           cmd_t->SetParameterName(par_name, par_omitable);
           command = cmd_t;
         }
      -  else if (*type == typeid(G4ThreeVector)) {
      -    G4UIcmdWith3VectorAndUnit* cmd_t = new G4UIcmdWith3VectorAndUnit(cmdpath, messenger);
      -    if(spec == UnitDefault) cmd_t->SetDefaultUnit(unit);
      -    else if(spec == UnitCategory) cmd_t->SetUnitCategory(unit);
      +  else if(*type == typeid(G4ThreeVector))
      +  {
      +    G4UIcmdWith3VectorAndUnit* cmd_t =
      +      new G4UIcmdWith3VectorAndUnit(cmdpath, messenger);
      +    if(spec == UnitDefault)
      +      cmd_t->SetDefaultUnit(unit);
      +    else if(spec == UnitCategory)
      +      cmd_t->SetUnitCategory(unit);
           command = cmd_t;
         }
      -  else {
      -    G4cerr << "Only parameters of type  or  can be associated with units" << G4endl;
      +  else
      +  {
      +    G4cerr << "Only parameters of type  or  can be associated "
      +              "with units"
      +           << G4endl;
           return *this;
         }
      -  for (size_t i = 0; i < guidance.size(); i++) command->SetGuidance(guidance[i]);
      +  for(std::size_t i = 0; i < guidance.size(); ++i)
      +    command->SetGuidance(guidance[i]);
         command->SetRange(range);
         return *this;
       }
       
      -G4GenericMessenger::Command& G4GenericMessenger::Command::SetParameterName(const G4String& name,G4bool omittable, G4bool currentAsDefault) {
      +G4GenericMessenger::Command& G4GenericMessenger::Command::SetParameterName(
      +  const G4String& name, G4bool omittable, G4bool currentAsDefault)
      +{
         G4UIparameter* theParam = command->GetParameter(0);
         theParam->SetParameterName(name);
         theParam->SetOmittable(omittable);
      @@ -243,17 +322,18 @@ G4GenericMessenger::Command& G4GenericMessenger::Command::SetParameterName(const
         return *this;
       }
       
      -G4GenericMessenger::Command& G4GenericMessenger::Command::SetCandidates(const G4String& candList) {
      -  G4UIparameter * theParam = command->GetParameter(0);
      +G4GenericMessenger::Command& G4GenericMessenger::Command::SetCandidates(
      +  const G4String& candList)
      +{
      +  G4UIparameter* theParam = command->GetParameter(0);
         theParam->SetParameterCandidates(candList);
         return *this;
       }
       
      -G4GenericMessenger::Command& G4GenericMessenger::Command::SetDefaultValue(const G4String& defVal) {
      -  G4UIparameter * theParam = command->GetParameter(0);
      +G4GenericMessenger::Command& G4GenericMessenger::Command::SetDefaultValue(
      +  const G4String& defVal)
      +{
      +  G4UIparameter* theParam = command->GetParameter(0);
         theParam->SetDefaultValue(defVal);
         return *this;
       }
      -
      -
      -
      diff --git a/source/intercoms/src/G4LocalThreadCoutMessenger.cc b/source/intercoms/src/G4LocalThreadCoutMessenger.cc
      index 65f54684a1..0246da9fd5 100644
      --- a/source/intercoms/src/G4LocalThreadCoutMessenger.cc
      +++ b/source/intercoms/src/G4LocalThreadCoutMessenger.cc
      @@ -23,6 +23,10 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4LocalThreadCoutMessenger
      +//
      +// Author: M.Asai, 2013
      +// --------------------------------------------------------------------
       
       #include "G4LocalThreadCoutMessenger.hh"
       
      @@ -36,71 +40,90 @@
       #include "G4UIparameter.hh"
       #include "G4Tokenizer.hh"
       
      +// --------------------------------------------------------------------
       G4LocalThreadCoutMessenger::G4LocalThreadCoutMessenger()
      -{ 
      +{
         coutDir = new G4UIdirectory("/control/cout/");
         coutDir->SetGuidance("Control cout/cerr for local thread.");
       
      -  coutFileNameCmd = new G4UIcommand("/control/cout/setCoutFile",this);
      -  coutFileNameCmd->SetGuidance("Send G4cout stream to a file dedicated to a thread. ");
      -  coutFileNameCmd->SetGuidance("To have a display output, use special keyword \"**Screen**\".");
      -  coutFileNameCmd->SetGuidance("If append flag is true output is appended to file,");
      +  coutFileNameCmd = new G4UIcommand("/control/cout/setCoutFile", this);
      +  coutFileNameCmd->SetGuidance(
      +    "Send G4cout stream to a file dedicated to a thread. ");
      +  coutFileNameCmd->SetGuidance(
      +    "To have a display output, use special keyword \"**Screen**\".");
      +  coutFileNameCmd->SetGuidance(
      +    "If append flag is true output is appended to file,");
         coutFileNameCmd->SetGuidance("otherwise file output is overwritten.");
      -  coutFileNameCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
      -  G4UIparameter* pp = new G4UIparameter("fileName",'s',true);
      +  coutFileNameCmd->AvailableForStates(G4State_PreInit, G4State_Idle);
      +  G4UIparameter* pp = new G4UIparameter("fileName", 's', true);
         pp->SetDefaultValue("**Screen**");
         coutFileNameCmd->SetParameter(pp);
      -  pp= new G4UIparameter("append",'b',true);
      +  pp = new G4UIparameter("append", 'b', true);
         pp->SetDefaultValue(true);
         coutFileNameCmd->SetParameter(pp);
       
      -  cerrFileNameCmd = new G4UIcommand("/control/cout/setCerrFile",this);
      -  cerrFileNameCmd->SetGuidance("Send G4cerr stream to a file dedicated to a thread. ");
      -  cerrFileNameCmd->SetGuidance("To have a display output, use special keyword \"**Screen**\".");
      -  cerrFileNameCmd->SetGuidance("If append flag is true output is appended to file,");
      +  cerrFileNameCmd = new G4UIcommand("/control/cout/setCerrFile", this);
      +  cerrFileNameCmd->SetGuidance(
      +    "Send G4cerr stream to a file dedicated to a thread. ");
      +  cerrFileNameCmd->SetGuidance(
      +    "To have a display output, use special keyword \"**Screen**\".");
      +  cerrFileNameCmd->SetGuidance(
      +    "If append flag is true output is appended to file,");
         cerrFileNameCmd->SetGuidance("otherwise file output is overwritten.");
      -  cerrFileNameCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
      -  pp = new G4UIparameter("fileName",'s',true);
      +  cerrFileNameCmd->AvailableForStates(G4State_PreInit, G4State_Idle);
      +  pp = new G4UIparameter("fileName", 's', true);
         pp->SetDefaultValue("**Screen**");
         cerrFileNameCmd->SetParameter(pp);
      -  pp= new G4UIparameter("append",'b',true);
      +  pp = new G4UIparameter("append", 'b', true);
         pp->SetDefaultValue(true);
         cerrFileNameCmd->SetParameter(pp);
       
      -  bufferCoutCmd = new G4UIcmdWithABool("/control/cout/useBuffer",this);
      +  bufferCoutCmd = new G4UIcmdWithABool("/control/cout/useBuffer", this);
         bufferCoutCmd->SetGuidance("Send cout and/or cerr stream to a buffer.");
      -  bufferCoutCmd->SetGuidance("The buffered text will be printed at the end of the job");
      -  bufferCoutCmd->SetGuidance("for each thread at a time, so that output of each thread is grouped.");
      -  bufferCoutCmd->SetGuidance("This command has no effect if output goes to a file.");
      -  bufferCoutCmd->SetParameterName("flag",true);
      +  bufferCoutCmd->SetGuidance(
      +    "The buffered text will be printed at the end of the job");
      +  bufferCoutCmd->SetGuidance(
      +    "for each thread at a time, so that output of each thread is grouped.");
      +  bufferCoutCmd->SetGuidance(
      +    "This command has no effect if output goes to a file.");
      +  bufferCoutCmd->SetParameterName("flag", true);
         bufferCoutCmd->SetDefaultValue(true);
      -  bufferCoutCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
      +  bufferCoutCmd->AvailableForStates(G4State_PreInit, G4State_Idle);
       
      -  prefixCmd = new G4UIcmdWithAString("/control/cout/prefixString",this);
      -  prefixCmd->SetGuidance("Set the prefix string for each cout/cerr line from a thread.");
      -  prefixCmd->SetParameterName("prefix",true);
      +  prefixCmd = new G4UIcmdWithAString("/control/cout/prefixString", this);
      +  prefixCmd->SetGuidance(
      +    "Set the prefix string for each cout/cerr line from a thread.");
      +  prefixCmd->SetParameterName("prefix", true);
         prefixCmd->SetDefaultValue("G4WT");
      -  prefixCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
      +  prefixCmd->AvailableForStates(G4State_PreInit, G4State_Idle);
       
      -  ignoreCmd = new G4UIcmdWithAnInteger("/control/cout/ignoreThreadsExcept",this);
      +  ignoreCmd =
      +    new G4UIcmdWithAnInteger("/control/cout/ignoreThreadsExcept", this);
         ignoreCmd->SetGuidance("Omit cout from threads except the specified one.");
      -  ignoreCmd->SetGuidance("This command takes effect only if cout destination is screen without buffering.");
      -  ignoreCmd->SetGuidance("If specified thread ID is greater than the number of threads,");
      -  ignoreCmd->SetGuidance("no cout is displayed from worker threads. -1 to reset.");
      +  ignoreCmd->SetGuidance("This command takes effect only if cout destination "
      +                         "is screen without buffering.");
      +  ignoreCmd->SetGuidance(
      +    "If specified thread ID is greater than the number of threads,");
      +  ignoreCmd->SetGuidance(
      +    "no cout is displayed from worker threads. -1 to reset.");
         ignoreCmd->SetGuidance("This command does not affect to cerr.");
      -  ignoreCmd->SetParameterName("threadID",true);
      +  ignoreCmd->SetParameterName("threadID", true);
         ignoreCmd->SetDefaultValue(0);
      -  ignoreCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
      +  ignoreCmd->AvailableForStates(G4State_PreInit, G4State_Idle);
       
      -  ignoreInitCmd = new G4UIcmdWithABool("/control/cout/ignoreInitializationCout",this);
      -  ignoreInitCmd->SetGuidance("Omit cout from threads during initialization, as they should be identical to the master thread.");
      -  ignoreInitCmd->SetGuidance("This command takes effect only if cout destination is screen without buffering.");
      +  ignoreInitCmd =
      +    new G4UIcmdWithABool("/control/cout/ignoreInitializationCout", this);
      +  ignoreInitCmd->SetGuidance("Omit cout from threads during initialization, as "
      +                             "they should be identical to the master thread.");
      +  ignoreInitCmd->SetGuidance("This command takes effect only if cout "
      +                             "destination is screen without buffering.");
         ignoreInitCmd->SetGuidance("This command does not affect to cerr.");
      -  ignoreInitCmd->SetParameterName("IgnoreInit",true);
      +  ignoreInitCmd->SetParameterName("IgnoreInit", true);
         ignoreInitCmd->SetDefaultValue(true);
      -  ignoreInitCmd->AvailableForStates(G4State_PreInit,G4State_Idle);
      +  ignoreInitCmd->AvailableForStates(G4State_PreInit, G4State_Idle);
       }
       
      +// --------------------------------------------------------------------
       G4LocalThreadCoutMessenger::~G4LocalThreadCoutMessenger()
       {
         delete coutFileNameCmd;
      @@ -112,30 +135,39 @@ G4LocalThreadCoutMessenger::~G4LocalThreadCoutMessenger()
         delete coutDir;
       }
       
      -void G4LocalThreadCoutMessenger::SetNewValue(G4UIcommand* command,G4String newVal)
      -{  
      -  G4UImanager * UI = G4UImanager::GetUIpointer();
      +// --------------------------------------------------------------------
      +void G4LocalThreadCoutMessenger::SetNewValue(G4UIcommand* command,
      +                                             G4String newVal)
      +{
      +  G4UImanager* UI = G4UImanager::GetUIpointer();
         if(command == coutFileNameCmd)
         {
           G4Tokenizer next(newVal);
           G4String fn = next();
      -    G4bool af = StoB(next());
      -    UI->SetCoutFileName(fn,af);
      +    G4bool af   = StoB(next());
      +    UI->SetCoutFileName(fn, af);
         }
         else if(command == cerrFileNameCmd)
         {
           G4Tokenizer next(newVal);
           G4String fn = next();
      -    G4bool af = StoB(next());
      -    UI->SetCerrFileName(fn,af);
      +    G4bool af   = StoB(next());
      +    UI->SetCerrFileName(fn, af);
         }
         else if(command == bufferCoutCmd)
      -  { UI->SetThreadUseBuffer(StoB(newVal)); }
      +  {
      +    UI->SetThreadUseBuffer(StoB(newVal));
      +  }
         else if(command == prefixCmd)
      -  { UI->SetThreadPrefixString(newVal); }
      +  {
      +    UI->SetThreadPrefixString(newVal);
      +  }
         else if(command == ignoreCmd)
      -  { UI->SetThreadIgnore(StoI(newVal)); }
      +  {
      +    UI->SetThreadIgnore(StoI(newVal));
      +  }
         else if(command == ignoreInitCmd)
      -  { UI->SetThreadIgnoreInit(StoB(newVal)); }
      +  {
      +    UI->SetThreadIgnoreInit(StoB(newVal));
      +  }
       }
      -
      diff --git a/source/intercoms/src/G4ProfilerMessenger.cc b/source/intercoms/src/G4ProfilerMessenger.cc
      new file mode 100644
      index 0000000000..0a046dbaf5
      --- /dev/null
      +++ b/source/intercoms/src/G4ProfilerMessenger.cc
      @@ -0,0 +1,209 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +//
      +//
      +//
      +
      +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
      +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
      +
      +#include "G4ProfilerMessenger.hh"
      +
      +#include "G4Profiler.hh"
      +#include "G4UIdirectory.hh"
      +#include "G4UIcmdWithABool.hh"
      +#include "G4UIcmdWithAString.hh"
      +#include "G4TiMemory.hh"
      +
      +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
      +
      +using Type = G4ProfileType;
      +
      +G4ProfilerMessenger::G4ProfilerMessenger()
      +{
      +  profileDirectory = new G4UIdirectory("/profiler/");
      +  profileDirectory->SetGuidance("Profiler controls.");
      +
      +  profileOutputDirectory = new G4UIdirectory("/profiler/output/");
      +  profileOutputDirectory->SetGuidance(
      +    "Control the output modes of the profiler.");
      +
      +#define CREATE_DIR(IDX, DIR, GUIDANCE)                                         \
      +  profileTypeDirs.at(IDX) = new G4UIdirectory(DIR);                            \
      +  profileTypeDirs.at(IDX)->SetGuidance(GUIDANCE)
      +
      +  CREATE_DIR(Type::Run, "/profiler/run/",
      +             "Profiler controls at the G4Run level");
      +  CREATE_DIR(Type::Event, "/profiler/event/",
      +             "Profiler controls at the G4Event level");
      +  CREATE_DIR(Type::Track, "/profiler/track/",
      +             "Profiler controls at the G4Track level");
      +  CREATE_DIR(Type::Step, "/profiler/step/",
      +             "Profiler controls at the G4Step level");
      +  CREATE_DIR(Type::User, "/profiler/user/",
      +             "Profiler controls within user code");
      +
      +#define SET_ENABLED_CMD(IDX, CMD, CMDLINE, DEFAULT, GUIDANCE)                  \
      +  profileEnableCmds.at(IDX).second = CMDLINE;                                  \
      +  profileEnableCmds.at(IDX).first  = new G4UIcmdWithABool(CMD, this);          \
      +  profileEnableCmds.at(IDX).first->SetDefaultValue(DEFAULT);                   \
      +  profileEnableCmds.at(IDX).first->SetGuidance(GUIDANCE);                      \
      +  profileEnableCmds.at(IDX).first->AvailableForStates(G4State_PreInit,         \
      +                                                      G4State_Idle)
      +
      +  SET_ENABLED_CMD(Type::Run, "/profiler/run/enable", "run", true,
      +                  "Record metrics for each G4Run");
      +  SET_ENABLED_CMD(Type::Event, "/profiler/event/enable", "event", true,
      +                  "Record metrics for each G4Event");
      +  SET_ENABLED_CMD(Type::Track, "/profiler/track/enable", "track", false,
      +                  "Record metrics for each G4Track");
      +  SET_ENABLED_CMD(Type::Step, "/profiler/step/enable", "step", false,
      +                  "Record metrics for each G4Step");
      +  SET_ENABLED_CMD(Type::User, "/profiler/user/enable", "user", true,
      +                  "Record metrics for user specified profiling instances");
      +
      +#define SET_COMPONENTS_CMD(IDX, CMD, CMDLINE, DEFAULTS, GUIDANCE)              \
      +  profileCompCmds.at(IDX).second = CMDLINE;                                    \
      +  profileCompCmds.at(IDX).first  = new G4UIcmdWithAString(CMD, this);          \
      +  profileCompCmds.at(IDX).first->SetDefaultValue(DEFAULTS);                    \
      +  profileCompCmds.at(IDX).first->SetGuidance(GUIDANCE);                        \
      +  profileCompCmds.at(IDX).first->AvailableForStates(G4State_PreInit,           \
      +                                                    G4State_Idle)
      +
      +  G4String comps = "wall_clock, cpu_clock, cpu_util, peak_rss";
      +
      +  SET_COMPONENTS_CMD(
      +    Type::Run, "/profiler/run/components", "--run-components", comps,
      +    "Measurment types to record for each G4Run (see `timemory-avail -s`)");
      +  SET_COMPONENTS_CMD(
      +    Type::Event, "/profiler/event/components", "--event-components", comps,
      +    "Measurment types to record for each G4Event (see `timemory-avail -s`)");
      +  SET_COMPONENTS_CMD(
      +    Type::Track, "/profiler/track/components", "--track-components", comps,
      +    "Measurment types to record for each G4Track (see `timemory-avail -s`)");
      +  SET_COMPONENTS_CMD(
      +    Type::Step, "/profiler/step/components", "--step-components", comps,
      +    "Measurment types to record for each G4Step (see `timemory-avail -s`)");
      +  SET_COMPONENTS_CMD(Type::User, "/profiler/user/components",
      +                     "--user-components", comps,
      +                     "Measurment types to record for user specified profiling "
      +                     "instances (see `timemory-avail -s`)");
      +
      +#define SET_OUTPUT_CMD(CMD, CMDLINE, DEFAULT, GUIDANCE)                        \
      +  profileGeneralCmds.push_back({ new G4UIcmdWithABool(CMD, this), CMDLINE });  \
      +  profileGeneralCmds.back().first->SetDefaultValue(DEFAULT);                   \
      +  profileGeneralCmds.back().first->SetGuidance(GUIDANCE);                      \
      +  profileGeneralCmds.back().first->AvailableForStates(G4State_PreInit,         \
      +                                                      G4State_Idle)
      +
      +  SET_OUTPUT_CMD("/profiler/output/dart", "--dart", false,
      +                 "Enabled Dart output (CTest/CDash data tracking)");
      +  SET_OUTPUT_CMD("/profiler/output/json", "--json", true,
      +                 "Enabled JSON output");
      +  SET_OUTPUT_CMD("/profiler/output/text", "--text", true,
      +                 "Enabled text output");
      +  SET_OUTPUT_CMD("/profiler/output/cout", "--cout", false,
      +                 "Enabled output to console");
      +  SET_OUTPUT_CMD("/profiler/output/plot", "--plot", false,
      +                 "Enabled plotting JSON output");
      +
      +  SET_OUTPUT_CMD("/profiler/tree", "--tree", true,
      +                 "Display the results as a call-stack hierarchy.");
      +  SET_OUTPUT_CMD("/profiler/flat", "--flat", false,
      +                 "Display the results as a flat call-stack");
      +  SET_OUTPUT_CMD("/profiler/timeline", "--timeline", false,
      +                 "Do not merge duplicate entries at the same call-stack "
      +                 "position. May be combined with tree or flat profiles.");
      +  SET_OUTPUT_CMD(
      +    "/profiler/per_thread", "--per-thread", false,
      +    "Display the results for each individual thread (default: aggregation)");
      +  SET_OUTPUT_CMD(
      +    "/profiler/per_event", "--per-event", false,
      +    "Display the results for each individual G4event (default: aggregation)");
      +}
      +
      +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
      +
      +G4ProfilerMessenger::~G4ProfilerMessenger()
      +{
      +  delete profileDirectory;
      +  for(auto& itr : profileTypeDirs)
      +    delete itr;
      +  for(auto& itr : profileEnableCmds)
      +    delete itr.first;
      +  for(auto& itr : profileGeneralCmds)
      +    delete itr.first;
      +  for(auto& itr : profileCompCmds)
      +    delete itr.first;
      +}
      +
      +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
      +
      +void G4ProfilerMessenger::SetNewValue(G4UIcommand* command, G4String value)
      +{
      +  for(size_t i = 0; i < static_cast(G4ProfileType::TypeEnd); ++i)
      +  {
      +    G4UIcmdWithABool* ui = profileEnableCmds.at(i).first;
      +    if(command == ui)
      +    {
      +      G4Profiler::SetEnabled(i, ui->GetNewBoolValue(value));
      +      return;
      +    }
      +  }
      +
      +  // pass the commands to the timemory argparser
      +  std::vector command_line = { "G4ProfilerMessenger" };
      +
      +  for(auto& itr : profileGeneralCmds)
      +  {
      +    G4UIcmdWithABool* ui = itr.first;
      +    if(command == ui)
      +    {
      +      command_line.push_back(itr.second);
      +      command_line.push_back(value);
      +      break;
      +    }
      +  }
      +
      +  for(auto& itr : profileCompCmds)
      +  {
      +    G4UIcmdWithAString* ui = itr.first;
      +    if(command == ui)
      +    {
      +      command_line.push_back(itr.second);
      +#if defined(GEANT4_USE_TIMEMORY)
      +      for(auto vitr : tim::delimit(value, ", ;"))
      +        command_line.push_back(vitr);
      +#endif
      +      break;
      +    }
      +  }
      +
      +  if(command_line.size() > 1)
      +    G4Profiler::Configure(command_line);
      +}
      +
      +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo....
      diff --git a/source/intercoms/src/G4UIaliasList.cc b/source/intercoms/src/G4UIaliasList.cc
      index faa802b0e2..12b5d795e2 100644
      --- a/source/intercoms/src/G4UIaliasList.cc
      +++ b/source/intercoms/src/G4UIaliasList.cc
      @@ -23,39 +23,46 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIaliasList
       //
      -//
      +// Author: M.Asai, 1 October 2001
      +// --------------------------------------------------------------------
       
       #include "G4UIaliasList.hh"
       #include "G4ios.hh"
       
      -G4UIaliasList::G4UIaliasList()
      -{ }
      +// --------------------------------------------------------------------
      +G4UIaliasList::G4UIaliasList() {}
       
      +// --------------------------------------------------------------------
       G4UIaliasList::~G4UIaliasList()
       {
      -  G4int i;
         G4int n_treeEntry = alias.size();
      -  for( i=0; i < n_treeEntry; i++ )
      -  { delete alias[i]; 
      -    delete value[i]; }
      +  for(G4int i = 0; i < n_treeEntry; ++i)
      +  {
      +    delete alias[i];
      +    delete value[i];
      +  }
       }
       
      -G4bool G4UIaliasList::operator==(const G4UIaliasList &right) const
      +// --------------------------------------------------------------------
      +G4bool G4UIaliasList::operator==(const G4UIaliasList& right) const
       {
      -  return ( this == &right );
      +  return (this == &right);
       }
       
      -G4bool G4UIaliasList::operator!=(const G4UIaliasList &right) const
      +// --------------------------------------------------------------------
      +G4bool G4UIaliasList::operator!=(const G4UIaliasList& right) const
       {
      -  return ( this != &right );
      +  return (this != &right);
       }
       
      +// --------------------------------------------------------------------
       void G4UIaliasList::AddNewAlias(const char* aliasName, const char* aliasValue)
       {
         if(FindAlias(aliasName))
         {
      -    G4cerr << "Alias <" << aliasName << "> already exist. Command ignored."
      +    G4cerr << "Alias <" << aliasName << "> already exists. Command ignored."
                  << G4endl;
           return;
         }
      @@ -65,64 +72,75 @@ void G4UIaliasList::AddNewAlias(const char* aliasName, const char* aliasValue)
         value.push_back(newValue);
       }
       
      +// --------------------------------------------------------------------
       void G4UIaliasList::RemoveAlias(const char* aliasName)
       {
         G4int i = FindAliasID(aliasName);
      -  if(i<0)
      +  if(i < 0)
         {
           G4cerr << "Alias <" << aliasName << "> does not exist. Command ignored."
                  << G4endl;
           return;
         }
      -  alias.erase(alias.begin()+i);
      -  value.erase(value.begin()+i);
      +  alias.erase(alias.begin() + i);
      +  value.erase(value.begin() + i);
       }
       
      +// --------------------------------------------------------------------
       void G4UIaliasList::ChangeAlias(const char* aliasName, const char* aliasValue)
       {
         G4int i = FindAliasID(aliasName);
      -  if(i<0)
      +  if(i < 0)
         {
      -    AddNewAlias(aliasName,aliasValue);
      +    AddNewAlias(aliasName, aliasValue);
           return;
         }
         *(value[i]) = aliasValue;
       }
       
      +// --------------------------------------------------------------------
       G4String* G4UIaliasList::FindAlias(const char* aliasName)
       {
         G4int i = FindAliasID(aliasName);
      -  if(i<0)
      -  { return 0; }
      +  if(i < 0)
      +  {
      +    return 0;
      +  }
         return value[i];
       }
       
      +// --------------------------------------------------------------------
       G4int G4UIaliasList::FindAliasID(const char* aliasName)
       {
         G4int i_entry = alias.size();
      -  for(G4int i=0;i*(alias[i2]))
      +  for(G4int i1 = 0; i1 < i_entry - 1; ++i1)
      +    for(G4int i2 = i1 + 1; i2 < i_entry; ++i2)
           {
      -      G4String* tmp = alias[i1];
      -      alias[i1] = alias[i2];
      -      alias[i2] = tmp;
      -      tmp = value[i1];
      -      value[i1] = value[i2];
      -      value[i2] = tmp;
      +      if(*(alias[i1]) > *(alias[i2]))
      +      {
      +        G4String* tmp = alias[i1];
      +        alias[i1]     = alias[i2];
      +        alias[i2]     = tmp;
      +        tmp           = value[i1];
      +        value[i1]     = value[i2];
      +        value[i2]     = tmp;
      +      }
           }
      +
      +  for(G4int i = 0; i < i_entry; ++i)
      +  {
      +    G4cout << "  " << *(alias[i]) << " : " << *(value[i]) << G4endl;
         }
      -
      -  for(G4int i=0;i
       #include 
       
      -////////////////////////////////////////////////////////////////////////
      +// --------------------------------------------------------------------
       static void Tokenize(const G4String& str, std::vector& tokens)
      -////////////////////////////////////////////////////////////////////////
       {
      -  const char* delimiter= " ";
      +  const char* delimiter = " ";
       
      -  G4String::size_type pos0= str.find_first_not_of(delimiter);
      -  G4String::size_type pos = str.find_first_of(delimiter, pos0);
      +  G4String::size_type pos0 = str.find_first_not_of(delimiter);
      +  G4String::size_type pos  = str.find_first_of(delimiter, pos0);
       
      -  while (pos != G4String::npos || pos0 != G4String::npos) {
      -    if (str[pos0] == '\"') {
      -      pos = str.find_first_of("\"", pos0+1);
      -      if(pos != G4String::npos) pos++;
      +  while(pos != G4String::npos || pos0 != G4String::npos)
      +  {
      +    if(str[pos0] == '\"')
      +    {
      +      pos = str.find_first_of("\"", pos0 + 1);
      +      if(pos != G4String::npos)
      +        pos++;
           }
      -    if (str[pos0] == '\'') {
      -      pos = str.find_first_of("\'", pos0+1);
      -      if(pos != G4String::npos) pos++;
      +    if(str[pos0] == '\'')
      +    {
      +      pos = str.find_first_of("\'", pos0 + 1);
      +      if(pos != G4String::npos)
      +        pos++;
           }
       
      -    tokens.push_back(str.substr(pos0, pos-pos0));
      +    tokens.push_back(str.substr(pos0, pos - pos0));
           pos0 = str.find_first_not_of(delimiter, pos);
      -    pos = str.find_first_of(delimiter, pos0);
      +    pos  = str.find_first_of(delimiter, pos0);
         }
       }
       
      -// ====================================================================
      -//
      -// class description
      -//
      -// ====================================================================
      -
      -////////////////////////////////////////////////////////////////////
      +// --------------------------------------------------------------------
       G4UIbatch::G4UIbatch(const char* fileName, G4UIsession* prevSession)
      -  : G4UIsession(1),
      -    previousSession(prevSession), isOpened(false)
      -////////////////////////////////////////////////////////////////////
      +  : G4UIsession(1)
      +  , previousSession(prevSession)
       {
         macroStream.open(fileName, std::ios::in);
      -  if(macroStream.fail()) {
      -    G4cerr << "ERROR: Can not open a macro file <"
      -           << fileName << ">. Set macro path with \"/control/macroPath\" if needed."
      +  if(macroStream.fail())
      +  {
      +    G4cerr << "ERROR: Can not open a macro file <" << fileName
      +           << ">. Set macro path with \"/control/macroPath\" if needed."
                  << G4endl;
           lastRC = fParameterUnreadable;
      -  } else {
      -    isOpened= true;
      +  }
      +  else
      +  {
      +    isOpened = true;
         }
       
      -  G4UImanager::GetUIpointer()-> SetSession(this);
      +  G4UImanager::GetUIpointer()->SetSession(this);
       }
       
      -
      -///////////////////////
      +// --------------------------------------------------------------------
       G4UIbatch::~G4UIbatch()
      -///////////////////////
       {
      -  if(isOpened) macroStream.close();
      +  if(isOpened)
      +    macroStream.close();
       }
       
      -
      -/////////////////////////////////
      +// --------------------------------------------------------------------
       G4String G4UIbatch::ReadCommand()
      -/////////////////////////////////
       {
      -  enum { BUFSIZE= 4096 };
      -  static G4ThreadLocal char *linebuf = 0 ; if (!linebuf) linebuf = new  char [BUFSIZE];
      +  enum
      +  {
      +    BUFSIZE = 4096
      +  };
      +  static G4ThreadLocal char* linebuf = 0;
      +  if(!linebuf)
      +    linebuf = new char[BUFSIZE];
         const char ctrM = 0x0d;
       
      -  G4String cmdtotal= "";
      -  G4bool qcontinued= false;
      -  while(macroStream.good()) {
      +  G4String cmdtotal = "";
      +  G4bool qcontinued = false;
      +  while(macroStream.good())
      +  {
           macroStream.getline(linebuf, BUFSIZE);
       
           G4String cmdline(linebuf);
       
           // TAB-> ' ' conversion
      -    str_size nb=0;
      -    while ((nb= cmdline.find('\t',nb)) != G4String::npos) {
      +    str_size nb = 0;
      +    while((nb = cmdline.find('\t', nb)) != G4String::npos)
      +    {
             cmdline.replace(nb, 1, " ");
           }
       
           // strip
      -    cmdline= cmdline.strip(G4String::both);
      -    cmdline= cmdline.strip(G4String::trailing, ctrM);
      +    cmdline = cmdline.strip(G4String::both);
      +    cmdline = cmdline.strip(G4String::trailing, ctrM);
       
           // skip null line if single line
      -    if(!qcontinued && cmdline.size()==0) continue;
      +    if(!qcontinued && cmdline.size() == 0)
      +      continue;
       
           // '#' is treated as echoing something
      -    if(cmdline[(size_t)0]=='#') return cmdline;
      +    if(cmdline[(std::size_t) 0] == '#')
      +      return cmdline;
       
           // tokenize...
           std::vector tokens;
           Tokenize(cmdline, tokens);
      -    qcontinued= false;
      -    for (G4int i=0; i< G4int(tokens.size()); i++) {
      +    qcontinued = false;
      +    for(G4int i = 0; i < G4int(tokens.size()); ++i)
      +    {
             // string after '#" is ignored
      -      if(tokens[i][(size_t)0] == '#' ) break;
      +      if(tokens[i][(std::size_t) 0] == '#')
      +        break;
             // '\' or '_' is treated as continued line.
      -      if(tokens[i] == '\\' || tokens[i] == '_' ) {
      -        qcontinued= true;
      +      if(tokens[i] == '\\' || tokens[i] == '_')
      +      {
      +        qcontinued = true;
               // check nothing after line continuation character
      -        if( i != G4int(tokens.size())-1) {
      -          G4Exception("G4UIbatch::ReadCommand","UI0003",
      -             JustWarning,
      -             "unexpected character after line continuation character");
      +        if(i != G4int(tokens.size()) - 1)
      +        {
      +          G4Exception("G4UIbatch::ReadCommand", "UI0003", JustWarning,
      +                      "unexpected character after line continuation character");
               }
      -        break; // stop parsing
      +        break;  // stop parsing
             }
      -      cmdtotal+= tokens[i];
      -      cmdtotal+= " ";
      +      cmdtotal += tokens[i];
      +      cmdtotal += " ";
           }
       
      -    if(qcontinued) continue; // read the next line
      +    if(qcontinued)
      +      continue;  // read the next line
       
      -    if(cmdtotal.size() != 0) break;
      -    if(macroStream.eof()) break;
      +    if(cmdtotal.size() != 0)
      +      break;
      +    if(macroStream.eof())
      +      break;
         }
       
         // strip again
      -  cmdtotal= cmdtotal.strip(G4String::both);
      +  cmdtotal = cmdtotal.strip(G4String::both);
       
         // finally,
      -  if(macroStream.eof() && cmdtotal.size()==0) {
      +  if(macroStream.eof() && cmdtotal.size() == 0)
      +  {
           return "exit";
         }
       
         return cmdtotal;
       }
       
      -
      -/////////////////////////////////////////////////////
      +// --------------------------------------------------------------------
       G4int G4UIbatch::ExecCommand(const G4String& command)
      -/////////////////////////////////////////////////////
       {
      -  G4UImanager* UI= G4UImanager::GetUIpointer();
      -  G4int rc= UI-> ApplyCommand(command);
      +  G4UImanager* UI = G4UImanager::GetUIpointer();
      +  G4int rc        = UI->ApplyCommand(command);
       
      -  switch(rc) {
      -  case fCommandSucceeded:
      -    break;
      -  case fCommandNotFound:
      -    G4cerr << "***** COMMAND NOT FOUND <"
      -           << command << "> *****" << G4endl;
      -    break;
      -  case fIllegalApplicationState:
      -    G4cerr << "***** Illegal application state <"
      -           << command << "> *****" << G4endl;
      -    break;
      -  default:
      -    G4int pn= rc%100;
      -    G4cerr << "***** Illegal parameter (" << pn << ") <"
      -           << command << "> *****" << G4endl;
      +  switch(rc)
      +  {
      +    case fCommandSucceeded:
      +      break;
      +    case fCommandNotFound:
      +      G4cerr << "***** COMMAND NOT FOUND <" << command << "> *****" << G4endl;
      +      break;
      +    case fIllegalApplicationState:
      +      G4cerr << "***** Illegal application state <" << command << "> *****"
      +             << G4endl;
      +      break;
      +    default:
      +      G4int pn = rc % 100;
      +      G4cerr << "***** Illegal parameter (" << pn << ") <" << command
      +             << "> *****" << G4endl;
         }
       
         return rc;
       }
       
      -
      -///////////////////////////////////////
      -G4UIsession * G4UIbatch::SessionStart()
      -///////////////////////////////////////
      +// --------------------------------------------------------------------
      +G4UIsession* G4UIbatch::SessionStart()
       {
      -  if(!isOpened) return previousSession;
      +  if(!isOpened)
      +    return previousSession;
       
      -  while(1) {
      +  while(1)
      +  {
           G4String newCommand = ReadCommand();
       
      -    if(newCommand == "exit") {
      +    if(newCommand == "exit")
      +    {
             break;
           }
       
           // just echo something
      -    if( newCommand[(size_t)0] == '#') {
      -      if(G4UImanager::GetUIpointer()-> GetVerboseLevel()==2) {
      +    if(newCommand[(std::size_t) 0] == '#')
      +    {
      +      if(G4UImanager::GetUIpointer()->GetVerboseLevel() == 2)
      +      {
               G4cout << newCommand << G4endl;
             }
             continue;
           }
       
           // execute command
      -    G4int rc= ExecCommand(newCommand);
      -    if(rc != fCommandSucceeded) {
      +    G4int rc = ExecCommand(newCommand);
      +    if(rc != fCommandSucceeded)
      +    {
             G4cerr << G4endl << "***** Batch is interrupted!! *****" << G4endl;
             lastRC = rc;
             break;
      @@ -224,10 +239,8 @@ G4UIsession * G4UIbatch::SessionStart()
         return previousSession;
       }
       
      -
      -/////////////////////////////////////////////////////////
      +// --------------------------------------------------------------------
       void G4UIbatch::PauseSessionStart(const G4String& Prompt)
      -/////////////////////////////////////////////////////////
       {
         G4cout << "Pause session <" << Prompt << "> start." << G4endl;
       
      @@ -235,4 +248,3 @@ void G4UIbatch::PauseSessionStart(const G4String& Prompt)
       
         G4cout << "Pause session <" << Prompt << "> Terminate." << G4endl;
       }
      -
      diff --git a/source/intercoms/src/G4UIbridge.cc b/source/intercoms/src/G4UIbridge.cc
      index 4eeaa16734..c87eb8e587 100644
      --- a/source/intercoms/src/G4UIbridge.cc
      +++ b/source/intercoms/src/G4UIbridge.cc
      @@ -23,46 +23,52 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIbridge
       //
      -// ====================================================================
      -//   G4UIbridge.cc
      -//
      -// ====================================================================
      +// Author: A.Dotti, 2013
      +// --------------------------------------------------------------------
       #include "G4UIbridge.hh"
       #include "G4UImanager.hh"
       
      -////////////////////////////////////////////////////////////////////
      +// --------------------------------------------------------------------
       G4UIbridge::G4UIbridge(G4UImanager* localUI, G4String dir)
      -: localUImanager(localUI)
      -////////////////////////////////////////////////////////////////////
      +  : localUImanager(localUI)
       {
         // make sure dirName starts and ends with '/'
      -  if(dir(0,1)=="/")
      -  { dirName = dir; }
      +  if(dir(0, 1) == "/")
      +  {
      +    dirName = dir;
      +  }
         else
      -  { dirName = "/"+dir; }
      -  if(dirName(dirName.length()-1,1)!="/") 
      -  { dirName += "/"; }
      +  {
      +    dirName = "/" + dir;
      +  }
      +  if(dirName(dirName.length() - 1, 1) != "/")
      +  {
      +    dirName += "/";
      +  }
       
         // register to the master G4UImanager
         G4UImanager* masterUI = G4UImanager::GetMasterUIpointer();
         if(masterUI)
      -  { masterUI->RegisterBridge(this); }
      +  {
      +    masterUI->RegisterBridge(this);
      +  }
         else
         {
      -    G4Exception("G4UIbridge::G4UIbridge()","UI7001",FatalException,
      -     "G4UImanager for the master thread is not yet instantiated. Instantiate G4MTRunManager first.");
      +    G4Exception("G4UIbridge::G4UIbridge()", "UI7001", FatalException,
      +                "G4UImanager for the master thread is not yet instantiated. "
      +                "Instantiate G4MTRunManager first.");
         }
       }
       
      -
      -///////////////////////
      +// --------------------------------------------------------------------
       G4UIbridge::~G4UIbridge()
      -///////////////////////
      -{;}
      +{
      +}
       
      -/////////////////////////////////
      +// --------------------------------------------------------------------
       G4int G4UIbridge::ApplyCommand(const G4String& aCmd)
      -/////////////////////////////////
      -{ return localUImanager->ApplyCommand(aCmd); }
      -
      +{
      +  return localUImanager->ApplyCommand(aCmd);
      +}
      diff --git a/source/intercoms/src/G4UIcmdWith3Vector.cc b/source/intercoms/src/G4UIcmdWith3Vector.cc
      index 166e1194ec..f9adb3a117 100644
      --- a/source/intercoms/src/G4UIcmdWith3Vector.cc
      +++ b/source/intercoms/src/G4UIcmdWith3Vector.cc
      @@ -23,54 +23,60 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWith3Vector
       //
      -//
      -//
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
       
       #include "G4UIcmdWith3Vector.hh"
       
      -G4UIcmdWith3Vector::G4UIcmdWith3Vector
      -(const char * theCommandPath,G4UImessenger * theMessenger)
      -:G4UIcommand(theCommandPath,theMessenger)
      +// --------------------------------------------------------------------
      +G4UIcmdWith3Vector::G4UIcmdWith3Vector(const char* theCommandPath,
      +                                       G4UImessenger* theMessenger)
      +  : G4UIcommand(theCommandPath, theMessenger)
       {
      -  G4UIparameter * dblParamX = new G4UIparameter('d');
      +  G4UIparameter* dblParamX = new G4UIparameter('d');
         SetParameter(dblParamX);
      -  G4UIparameter * dblParamY = new G4UIparameter('d');
      +  G4UIparameter* dblParamY = new G4UIparameter('d');
         SetParameter(dblParamY);
      -  G4UIparameter * dblParamZ = new G4UIparameter('d');
      +  G4UIparameter* dblParamZ = new G4UIparameter('d');
         SetParameter(dblParamZ);
       }
       
      +// --------------------------------------------------------------------
       G4ThreeVector G4UIcmdWith3Vector::GetNew3VectorValue(const char* paramString)
       {
         return ConvertTo3Vector(paramString);
       }
       
      -void G4UIcmdWith3Vector::SetParameterName
      -(const char * theNameX,const char * theNameY,const char * theNameZ,
      -G4bool omittable,G4bool currentAsDefault)
      +// --------------------------------------------------------------------
      +void G4UIcmdWith3Vector::SetParameterName(const char* theNameX,
      +                                          const char* theNameY,
      +                                          const char* theNameZ,
      +                                          G4bool omittable,
      +                                          G4bool currentAsDefault)
       {
      -  G4UIparameter * theParamX = GetParameter(0);
      +  G4UIparameter* theParamX = GetParameter(0);
         theParamX->SetParameterName(theNameX);
         theParamX->SetOmittable(omittable);
         theParamX->SetCurrentAsDefault(currentAsDefault);
      -  G4UIparameter * theParamY = GetParameter(1);
      +  G4UIparameter* theParamY = GetParameter(1);
         theParamY->SetParameterName(theNameY);
         theParamY->SetOmittable(omittable);
         theParamY->SetCurrentAsDefault(currentAsDefault);
      -  G4UIparameter * theParamZ = GetParameter(2);
      +  G4UIparameter* theParamZ = GetParameter(2);
         theParamZ->SetParameterName(theNameZ);
         theParamZ->SetOmittable(omittable);
         theParamZ->SetCurrentAsDefault(currentAsDefault);
       }
       
      +// --------------------------------------------------------------------
       void G4UIcmdWith3Vector::SetDefaultValue(G4ThreeVector vec)
       {
      -  G4UIparameter * theParamX = GetParameter(0);
      +  G4UIparameter* theParamX = GetParameter(0);
         theParamX->SetDefaultValue(vec.x());
      -  G4UIparameter * theParamY = GetParameter(1);
      +  G4UIparameter* theParamY = GetParameter(1);
         theParamY->SetDefaultValue(vec.y());
      -  G4UIparameter * theParamZ = GetParameter(2);
      +  G4UIparameter* theParamZ = GetParameter(2);
         theParamZ->SetDefaultValue(vec.z());
       }
      -
      diff --git a/source/intercoms/src/G4UIcmdWith3VectorAndUnit.cc b/source/intercoms/src/G4UIcmdWith3VectorAndUnit.cc
      index 67029da450..5003eebe4f 100644
      --- a/source/intercoms/src/G4UIcmdWith3VectorAndUnit.cc
      +++ b/source/intercoms/src/G4UIcmdWith3VectorAndUnit.cc
      @@ -23,9 +23,10 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWith3VectorAndUnit
       //
      -//
      -//
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
       
       #include "G4UIcmdWith3VectorAndUnit.hh"
       #include "G4Tokenizer.hh"
      @@ -33,37 +34,43 @@
       #include "G4UIcommandStatus.hh"
       #include 
       
      -G4UIcmdWith3VectorAndUnit::G4UIcmdWith3VectorAndUnit
      -(const char * theCommandPath,G4UImessenger * theMessenger)
      -:G4UIcommand(theCommandPath,theMessenger)
      +// --------------------------------------------------------------------
      +G4UIcmdWith3VectorAndUnit::G4UIcmdWith3VectorAndUnit(
      +  const char* theCommandPath, G4UImessenger* theMessenger)
      +  : G4UIcommand(theCommandPath, theMessenger)
       {
      -  G4UIparameter * dblParamX = new G4UIparameter('d');
      +  G4UIparameter* dblParamX = new G4UIparameter('d');
         SetParameter(dblParamX);
      -  G4UIparameter * dblParamY = new G4UIparameter('d');
      +  G4UIparameter* dblParamY = new G4UIparameter('d');
         SetParameter(dblParamY);
      -  G4UIparameter * dblParamZ = new G4UIparameter('d');
      +  G4UIparameter* dblParamZ = new G4UIparameter('d');
         SetParameter(dblParamZ);
      -  G4UIparameter * untParam = new G4UIparameter('s');
      +  G4UIparameter* untParam = new G4UIparameter('s');
         SetParameter(untParam);
         untParam->SetParameterName("Unit");
       }
       
      +// --------------------------------------------------------------------
       G4int G4UIcmdWith3VectorAndUnit::DoIt(G4String parameterList)
       {
         std::vector token_vector;
         G4Tokenizer tkn(parameterList);
         G4String str;
      -  while( (str = tkn()) != "" ) {
      +  while((str = tkn()) != "")
      +  {
           token_vector.push_back(str);
         }
       
         // convert a value in default unit
         G4String converted_parameter;
      -  G4String default_unit = GetParameter(3)-> GetDefaultValue();
      -  if (default_unit != "" && token_vector.size() >= 4) {
      -    if(CategoryOf(token_vector[3])!=CategoryOf(default_unit))
      -    { return fParameterOutOfCandidates+3; }
      -    G4double value_given = ValueOf(token_vector[3]);
      +  G4String default_unit = GetParameter(3)->GetDefaultValue();
      +  if(default_unit != "" && token_vector.size() >= 4)
      +  {
      +    if(CategoryOf(token_vector[3]) != CategoryOf(default_unit))
      +    {
      +      return fParameterOutOfCandidates + 3;
      +    }
      +    G4double value_given   = ValueOf(token_vector[3]);
           G4double value_default = ValueOf(default_unit);
           G4double x = ConvertToDouble(token_vector[0]) * value_given / value_default;
           G4double y = ConvertToDouble(token_vector[1]) * value_given / value_default;
      @@ -77,23 +84,30 @@ G4int G4UIcmdWith3VectorAndUnit::DoIt(G4String parameterList)
           converted_parameter += ConvertToString(z);
           converted_parameter += " ";
           converted_parameter += default_unit;
      -    for ( size_t i=4 ; i< token_vector.size(); i++) {
      +    for(std::size_t i = 4; i < token_vector.size(); ++i)
      +    {
             converted_parameter += " ";
             converted_parameter += token_vector[i];
           }
      -  } else {
      +  }
      +  else
      +  {
           converted_parameter = parameterList;
         }
       
         return G4UIcommand::DoIt(converted_parameter);
       }
       
      -G4ThreeVector G4UIcmdWith3VectorAndUnit::GetNew3VectorValue(const char* paramString)
      +// --------------------------------------------------------------------
      +G4ThreeVector G4UIcmdWith3VectorAndUnit::GetNew3VectorValue(
      +  const char* paramString)
       {
         return ConvertToDimensioned3Vector(paramString);
       }
       
      -G4ThreeVector G4UIcmdWith3VectorAndUnit::GetNew3VectorRawValue(const char* paramString)
      +// --------------------------------------------------------------------
      +G4ThreeVector G4UIcmdWith3VectorAndUnit::GetNew3VectorRawValue(
      +  const char* paramString)
       {
         G4double vx;
         G4double vy;
      @@ -101,9 +115,10 @@ G4ThreeVector G4UIcmdWith3VectorAndUnit::GetNew3VectorRawValue(const char* param
         char unts[30];
         std::istringstream is(paramString);
         is >> vx >> vy >> vz >> unts;
      -  return G4ThreeVector(vx,vy,vz);
      +  return G4ThreeVector(vx, vy, vz);
       }
       
      +// --------------------------------------------------------------------
       G4double G4UIcmdWith3VectorAndUnit::GetNewUnitValue(const char* paramString)
       {
         G4double vx;
      @@ -116,76 +131,90 @@ G4double G4UIcmdWith3VectorAndUnit::GetNewUnitValue(const char* paramString)
         return ValueOf(unt);
       }
       
      -G4String G4UIcmdWith3VectorAndUnit::ConvertToStringWithBestUnit(G4ThreeVector vec)
      +// --------------------------------------------------------------------
      +G4String G4UIcmdWith3VectorAndUnit::ConvertToStringWithBestUnit(
      +  G4ThreeVector vec)
       {
         G4UIparameter* unitParam = GetParameter(3);
      -  G4String canList = unitParam->GetParameterCandidates();
      +  G4String canList         = unitParam->GetParameterCandidates();
         G4Tokenizer candidateTokenizer(canList);
         G4String aToken = candidateTokenizer();
       
         std::ostringstream os;
      -  os << G4BestUnit(vec,CategoryOf(aToken));
      +  os << G4BestUnit(vec, CategoryOf(aToken));
         G4String st = os.str();
       
         return st;
       }
       
      -G4String G4UIcmdWith3VectorAndUnit::ConvertToStringWithDefaultUnit(G4ThreeVector vec)
      +// --------------------------------------------------------------------
      +G4String G4UIcmdWith3VectorAndUnit::ConvertToStringWithDefaultUnit(
      +  G4ThreeVector vec)
       {
         G4UIparameter* unitParam = GetParameter(3);
         G4String st;
         if(unitParam->IsOmittable())
      -  { st = ConvertToString(vec,unitParam->GetDefaultValue()); }
      +  {
      +    st = ConvertToString(vec, unitParam->GetDefaultValue());
      +  }
         else
      -  { st = ConvertToStringWithBestUnit(vec); }
      +  {
      +    st = ConvertToStringWithBestUnit(vec);
      +  }
         return st;
       }
       
      -void G4UIcmdWith3VectorAndUnit::SetParameterName
      -(const char * theNameX,const char * theNameY,const char * theNameZ,
      -G4bool omittable,G4bool currentAsDefault)
      +// --------------------------------------------------------------------
      +void G4UIcmdWith3VectorAndUnit::SetParameterName(const char* theNameX,
      +                                                 const char* theNameY,
      +                                                 const char* theNameZ,
      +                                                 G4bool omittable,
      +                                                 G4bool currentAsDefault)
       {
      -  G4UIparameter * theParamX = GetParameter(0);
      +  G4UIparameter* theParamX = GetParameter(0);
         theParamX->SetParameterName(theNameX);
         theParamX->SetOmittable(omittable);
         theParamX->SetCurrentAsDefault(currentAsDefault);
      -  G4UIparameter * theParamY = GetParameter(1);
      +  G4UIparameter* theParamY = GetParameter(1);
         theParamY->SetParameterName(theNameY);
         theParamY->SetOmittable(omittable);
         theParamY->SetCurrentAsDefault(currentAsDefault);
      -  G4UIparameter * theParamZ = GetParameter(2);
      +  G4UIparameter* theParamZ = GetParameter(2);
         theParamZ->SetParameterName(theNameZ);
         theParamZ->SetOmittable(omittable);
         theParamZ->SetCurrentAsDefault(currentAsDefault);
       }
       
      +// --------------------------------------------------------------------
       void G4UIcmdWith3VectorAndUnit::SetDefaultValue(G4ThreeVector vec)
       {
      -  G4UIparameter * theParamX = GetParameter(0);
      +  G4UIparameter* theParamX = GetParameter(0);
         theParamX->SetDefaultValue(vec.x());
      -  G4UIparameter * theParamY = GetParameter(1);
      +  G4UIparameter* theParamY = GetParameter(1);
         theParamY->SetDefaultValue(vec.y());
      -  G4UIparameter * theParamZ = GetParameter(2);
      +  G4UIparameter* theParamZ = GetParameter(2);
         theParamZ->SetDefaultValue(vec.z());
       }
       
      -void G4UIcmdWith3VectorAndUnit::SetUnitCategory(const char * unitCategory)
      +// --------------------------------------------------------------------
      +void G4UIcmdWith3VectorAndUnit::SetUnitCategory(const char* unitCategory)
       {
         SetUnitCandidates(UnitsList(unitCategory));
       }
       
      -void G4UIcmdWith3VectorAndUnit::SetUnitCandidates(const char * candidateList)
      +// --------------------------------------------------------------------
      +void G4UIcmdWith3VectorAndUnit::SetUnitCandidates(const char* candidateList)
       {
      -  G4UIparameter * untParam = GetParameter(3);
      -  G4String canList = candidateList;
      +  G4UIparameter* untParam = GetParameter(3);
      +  G4String canList        = candidateList;
         untParam->SetParameterCandidates(canList);
       }
       
      -void G4UIcmdWith3VectorAndUnit::SetDefaultUnit(const char * defUnit)
      +// --------------------------------------------------------------------
      +void G4UIcmdWith3VectorAndUnit::SetDefaultUnit(const char* defUnit)
       {
      -  G4UIparameter * untParam = GetParameter(3);
      +  G4UIparameter* untParam = GetParameter(3);
         untParam->SetOmittable(true);
         untParam->SetDefaultValue(defUnit);
         SetUnitCategory(CategoryOf(defUnit));
       }
      -
      diff --git a/source/intercoms/src/G4UIcmdWithABool.cc b/source/intercoms/src/G4UIcmdWithABool.cc
      index 6df57759bd..0a784b8be2 100644
      --- a/source/intercoms/src/G4UIcmdWithABool.cc
      +++ b/source/intercoms/src/G4UIcmdWithABool.cc
      @@ -23,37 +23,41 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWithABool
       //
      -//
      -//
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
       
       #include "G4UIcmdWithABool.hh"
       
      -G4UIcmdWithABool::G4UIcmdWithABool
      -(const char * theCommandPath,G4UImessenger * theMessenger)
      -:G4UIcommand(theCommandPath,theMessenger)
      +// --------------------------------------------------------------------
      +G4UIcmdWithABool::G4UIcmdWithABool(const char* theCommandPath,
      +                                   G4UImessenger* theMessenger)
      +  : G4UIcommand(theCommandPath, theMessenger)
       {
      -  G4UIparameter * blParam = new G4UIparameter('b');
      +  G4UIparameter* blParam = new G4UIparameter('b');
         SetParameter(blParam);
       }
       
      +// --------------------------------------------------------------------
       G4bool G4UIcmdWithABool::GetNewBoolValue(const char* paramString)
       {
         return ConvertToBool(paramString);
       }
       
      -void G4UIcmdWithABool::SetParameterName
      -(const char * theName,G4bool omittable,G4bool currentAsDefault)
      +// --------------------------------------------------------------------
      +void G4UIcmdWithABool::SetParameterName(const char* theName, G4bool omittable,
      +                                        G4bool currentAsDefault)
       {
      -  G4UIparameter * theParam = GetParameter(0);
      +  G4UIparameter* theParam = GetParameter(0);
         theParam->SetParameterName(theName);
         theParam->SetOmittable(omittable);
         theParam->SetCurrentAsDefault(currentAsDefault);
       }
       
      +// --------------------------------------------------------------------
       void G4UIcmdWithABool::SetDefaultValue(G4bool defVal)
       {
      -  G4UIparameter * theParam = GetParameter(0);
      +  G4UIparameter* theParam = GetParameter(0);
         theParam->SetDefaultValue(defVal);
       }
      -
      diff --git a/source/intercoms/src/G4UIcmdWithADouble.cc b/source/intercoms/src/G4UIcmdWithADouble.cc
      index f20a1eb571..3d45a5b5ef 100644
      --- a/source/intercoms/src/G4UIcmdWithADouble.cc
      +++ b/source/intercoms/src/G4UIcmdWithADouble.cc
      @@ -23,37 +23,41 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWithADouble
       //
      -//
      -//
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
       
       #include "G4UIcmdWithADouble.hh"
       
      -G4UIcmdWithADouble::G4UIcmdWithADouble
      -(const char * theCommandPath,G4UImessenger * theMessenger)
      -:G4UIcommand(theCommandPath,theMessenger)
      +// --------------------------------------------------------------------
      +G4UIcmdWithADouble::G4UIcmdWithADouble(const char* theCommandPath,
      +                                       G4UImessenger* theMessenger)
      +  : G4UIcommand(theCommandPath, theMessenger)
       {
      -  G4UIparameter * dblParam = new G4UIparameter('d');
      +  G4UIparameter* dblParam = new G4UIparameter('d');
         SetParameter(dblParam);
       }
       
      +// --------------------------------------------------------------------
       G4double G4UIcmdWithADouble::GetNewDoubleValue(const char* paramString)
       {
         return ConvertToDouble(paramString);
       }
       
      -void G4UIcmdWithADouble::SetParameterName
      -(const char * theName,G4bool omittable,G4bool currentAsDefault)
      +// --------------------------------------------------------------------
      +void G4UIcmdWithADouble::SetParameterName(const char* theName, G4bool omittable,
      +                                          G4bool currentAsDefault)
       {
      -  G4UIparameter * theParam = GetParameter(0);
      +  G4UIparameter* theParam = GetParameter(0);
         theParam->SetParameterName(theName);
         theParam->SetOmittable(omittable);
         theParam->SetCurrentAsDefault(currentAsDefault);
       }
       
      +// --------------------------------------------------------------------
       void G4UIcmdWithADouble::SetDefaultValue(G4double defVal)
       {
      -  G4UIparameter * theParam = GetParameter(0);
      +  G4UIparameter* theParam = GetParameter(0);
         theParam->SetDefaultValue(defVal);
       }
      -
      diff --git a/source/intercoms/src/G4UIcmdWithADoubleAndUnit.cc b/source/intercoms/src/G4UIcmdWithADoubleAndUnit.cc
      index b903013dd7..053a02dc33 100644
      --- a/source/intercoms/src/G4UIcmdWithADoubleAndUnit.cc
      +++ b/source/intercoms/src/G4UIcmdWithADoubleAndUnit.cc
      @@ -23,9 +23,10 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWithADoubleAndUnit
       //
      -//
      -//
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
       
       #include "G4UIcmdWithADoubleAndUnit.hh"
       #include "G4Tokenizer.hh"
      @@ -34,57 +35,69 @@
       #include 
       #include 
       
      -G4UIcmdWithADoubleAndUnit::G4UIcmdWithADoubleAndUnit
      -(const char * theCommandPath,G4UImessenger * theMessenger)
      -:G4UIcommand(theCommandPath,theMessenger)
      +// --------------------------------------------------------------------
      +G4UIcmdWithADoubleAndUnit::G4UIcmdWithADoubleAndUnit(
      +  const char* theCommandPath, G4UImessenger* theMessenger)
      +  : G4UIcommand(theCommandPath, theMessenger)
       {
      -  G4UIparameter * dblParam = new G4UIparameter('d');
      +  G4UIparameter* dblParam = new G4UIparameter('d');
         SetParameter(dblParam);
      -  G4UIparameter * untParam = new G4UIparameter('s');
      +  G4UIparameter* untParam = new G4UIparameter('s');
         SetParameter(untParam);
         untParam->SetParameterName("Unit");
       }
       
      +// --------------------------------------------------------------------
       G4int G4UIcmdWithADoubleAndUnit::DoIt(G4String parameterList)
       {
         std::vector token_vector;
         G4Tokenizer tkn(parameterList);
         G4String str;
      -  while( (str = tkn()) != "" ) {
      +  while((str = tkn()) != "")
      +  {
           token_vector.push_back(str);
         }
       
         // convert a value in default unit
         G4String converted_parameter;
      -  G4String default_unit = GetParameter(1)-> GetDefaultValue();
      -  if (default_unit != "" && token_vector.size() >= 2) {
      -    if(CategoryOf(token_vector[1])!=CategoryOf(default_unit))
      -    { return fParameterOutOfCandidates+1; }
      -    G4double value_given = ValueOf(token_vector[1]);
      +  G4String default_unit = GetParameter(1)->GetDefaultValue();
      +  if(default_unit != "" && token_vector.size() >= 2)
      +  {
      +    if(CategoryOf(token_vector[1]) != CategoryOf(default_unit))
      +    {
      +      return fParameterOutOfCandidates + 1;
      +    }
      +    G4double value_given   = ValueOf(token_vector[1]);
           G4double value_default = ValueOf(default_unit);
      -    G4double value = ConvertToDouble(token_vector[0])
      -                      * value_given / value_default;
      +    G4double value =
      +      ConvertToDouble(token_vector[0]) * value_given / value_default;
           // reconstruct parameter list
           converted_parameter += ConvertToString(value);
           converted_parameter += " ";
           converted_parameter += default_unit;
      -    for ( size_t i=2 ; i< token_vector.size(); i++) {
      +    for(std::size_t i = 2; i < token_vector.size(); ++i)
      +    {
             converted_parameter += " ";
             converted_parameter += token_vector[i];
           }
      -  } else {
      +  }
      +  else
      +  {
           converted_parameter = parameterList;
         }
       
         return G4UIcommand::DoIt(converted_parameter);
       }
       
      +// --------------------------------------------------------------------
       G4double G4UIcmdWithADoubleAndUnit::GetNewDoubleValue(const char* paramString)
       {
         return ConvertToDimensionedDouble(paramString);
       }
       
      -G4double G4UIcmdWithADoubleAndUnit::GetNewDoubleRawValue(const char* paramString)
      +// --------------------------------------------------------------------
      +G4double G4UIcmdWithADoubleAndUnit::GetNewDoubleRawValue(
      +  const char* paramString)
       {
         G4double vl;
         char unts[30];
      @@ -95,6 +108,7 @@ G4double G4UIcmdWithADoubleAndUnit::GetNewDoubleRawValue(const char* paramString
         return vl;
       }
       
      +// --------------------------------------------------------------------
       G4double G4UIcmdWithADoubleAndUnit::GetNewUnitValue(const char* paramString)
       {
         G4double vl;
      @@ -107,62 +121,73 @@ G4double G4UIcmdWithADoubleAndUnit::GetNewUnitValue(const char* paramString)
         return ValueOf(unt);
       }
       
      +// --------------------------------------------------------------------
       G4String G4UIcmdWithADoubleAndUnit::ConvertToStringWithBestUnit(G4double val)
       {
         G4UIparameter* unitParam = GetParameter(1);
      -  G4String canList = unitParam->GetParameterCandidates();
      +  G4String canList         = unitParam->GetParameterCandidates();
         G4Tokenizer candidateTokenizer(canList);
         G4String aToken = candidateTokenizer();
         std::ostringstream os;
      -  os << G4BestUnit(val,CategoryOf(aToken));
      +  os << G4BestUnit(val, CategoryOf(aToken));
       
         G4String st = os.str();
         return st;
       }
       
      +// --------------------------------------------------------------------
       G4String G4UIcmdWithADoubleAndUnit::ConvertToStringWithDefaultUnit(G4double val)
       {
         G4UIparameter* unitParam = GetParameter(1);
         G4String st;
         if(unitParam->IsOmittable())
      -  { st = ConvertToString(val,unitParam->GetDefaultValue()); }
      +  {
      +    st = ConvertToString(val, unitParam->GetDefaultValue());
      +  }
         else
      -  { st = ConvertToStringWithBestUnit(val); }
      +  {
      +    st = ConvertToStringWithBestUnit(val);
      +  }
         return st;
       }
       
      -void G4UIcmdWithADoubleAndUnit::SetParameterName
      -(const char * theName,G4bool omittable,G4bool currentAsDefault)
      +// --------------------------------------------------------------------
      +void G4UIcmdWithADoubleAndUnit::SetParameterName(const char* theName,
      +                                                 G4bool omittable,
      +                                                 G4bool currentAsDefault)
       {
      -  G4UIparameter * theParam = GetParameter(0);
      +  G4UIparameter* theParam = GetParameter(0);
         theParam->SetParameterName(theName);
         theParam->SetOmittable(omittable);
         theParam->SetCurrentAsDefault(currentAsDefault);
       }
       
      +// --------------------------------------------------------------------
       void G4UIcmdWithADoubleAndUnit::SetDefaultValue(G4double defVal)
       {
      -  G4UIparameter * theParam = GetParameter(0);
      +  G4UIparameter* theParam = GetParameter(0);
         theParam->SetDefaultValue(defVal);
       }
       
      -void G4UIcmdWithADoubleAndUnit::SetUnitCategory(const char * unitCategory)
      +// --------------------------------------------------------------------
      +void G4UIcmdWithADoubleAndUnit::SetUnitCategory(const char* unitCategory)
       {
         SetUnitCandidates(UnitsList(unitCategory));
       }
       
      -void G4UIcmdWithADoubleAndUnit::SetUnitCandidates(const char * candidateList)
      +// --------------------------------------------------------------------
      +void G4UIcmdWithADoubleAndUnit::SetUnitCandidates(const char* candidateList)
       {
      -  G4UIparameter * untParam = GetParameter(1);
      -  G4String canList = candidateList;
      +  G4UIparameter* untParam = GetParameter(1);
      +  G4String canList        = candidateList;
         untParam->SetParameterCandidates(canList);
       }
       
      -void G4UIcmdWithADoubleAndUnit::SetDefaultUnit(const char * defUnit)
      +// --------------------------------------------------------------------
      +void G4UIcmdWithADoubleAndUnit::SetDefaultUnit(const char* defUnit)
       {
      -  G4UIparameter * untParam = GetParameter(1);
      +  G4UIparameter* untParam = GetParameter(1);
         untParam->SetOmittable(true);
         untParam->SetDefaultValue(defUnit);
         SetUnitCategory(CategoryOf(defUnit));
       }
      -
      diff --git a/source/intercoms/src/G4UIcmdWithALongInt.cc b/source/intercoms/src/G4UIcmdWithALongInt.cc
      new file mode 100644
      index 0000000000..75a7990e61
      --- /dev/null
      +++ b/source/intercoms/src/G4UIcmdWithALongInt.cc
      @@ -0,0 +1,64 @@
      +//
      +// ********************************************************************
      +// * License and Disclaimer                                           *
      +// *                                                                  *
      +// * The  Geant4 software  is  copyright of the Copyright Holders  of *
      +// * the Geant4 Collaboration.  It is provided  under  the terms  and *
      +// * conditions of the Geant4 Software License,  included in the file *
      +// * LICENSE and available at  http://cern.ch/geant4/license .  These *
      +// * include a list of copyright holders.                             *
      +// *                                                                  *
      +// * Neither the authors of this software system, nor their employing *
      +// * institutes,nor the agencies providing financial support for this *
      +// * work  make  any representation or  warranty, express or implied, *
      +// * regarding  this  software system or assume any liability for its *
      +// * use.  Please see the license in the file  LICENSE  and URL above *
      +// * for the full disclaimer and the limitation of liability.         *
      +// *                                                                  *
      +// * This  code  implementation is the result of  the  scientific and *
      +// * technical work of the GEANT4 collaboration.                      *
      +// * By using,  copying,  modifying or  distributing the software (or *
      +// * any work based  on the software)  you  agree  to acknowledge its *
      +// * use  in  resulting  scientific  publications,  and indicate your *
      +// * acceptance of all terms of the Geant4 Software license.          *
      +// ********************************************************************
      +//
      +// G4UIcmdWithALongInt
      +//
      +// Author: M.Asai, 2020
      +// --------------------------------------------------------------------
      +
      +#include "G4UIcmdWithALongInt.hh"
      +
      +// --------------------------------------------------------------------
      +G4UIcmdWithALongInt::G4UIcmdWithALongInt(const char* theCommandPath,
      +                                           G4UImessenger* theMessenger)
      +  : G4UIcommand(theCommandPath, theMessenger)
      +{
      +  G4UIparameter* longParam = new G4UIparameter('l');
      +  SetParameter(longParam);
      +}
      +
      +// --------------------------------------------------------------------
      +G4long G4UIcmdWithALongInt::GetNewLongIntValue(const char* paramString)
      +{
      +  return ConvertToLongInt(paramString);
      +}
      +
      +// --------------------------------------------------------------------
      +void G4UIcmdWithALongInt::SetParameterName(const char* theName,
      +                                            G4bool omittable,
      +                                            G4bool currentAsDefault)
      +{
      +  G4UIparameter* theParam = GetParameter(0);
      +  theParam->SetParameterName(theName);
      +  theParam->SetOmittable(omittable);
      +  theParam->SetCurrentAsDefault(currentAsDefault);
      +}
      +
      +// --------------------------------------------------------------------
      +void G4UIcmdWithALongInt::SetDefaultValue(G4long defVal)
      +{
      +  G4UIparameter* theParam = GetParameter(0);
      +  theParam->SetDefaultValue(defVal);
      +}
      diff --git a/source/intercoms/src/G4UIcmdWithAString.cc b/source/intercoms/src/G4UIcmdWithAString.cc
      index 60990150ca..5c51e0bbd2 100644
      --- a/source/intercoms/src/G4UIcmdWithAString.cc
      +++ b/source/intercoms/src/G4UIcmdWithAString.cc
      @@ -23,39 +23,43 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWithAString
       //
      -//
      -//
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
       
       #include "G4UIcmdWithAString.hh"
       
      -G4UIcmdWithAString::G4UIcmdWithAString
      -(const char * theCommandPath,G4UImessenger * theMessenger)
      -:G4UIcommand(theCommandPath,theMessenger)
      +// --------------------------------------------------------------------
      +G4UIcmdWithAString::G4UIcmdWithAString(const char* theCommandPath,
      +                                       G4UImessenger* theMessenger)
      +  : G4UIcommand(theCommandPath, theMessenger)
       {
      -  G4UIparameter * strParam = new G4UIparameter('s');
      +  G4UIparameter* strParam = new G4UIparameter('s');
         SetParameter(strParam);
       }
       
      -void G4UIcmdWithAString::SetParameterName
      -(const char * theName,G4bool omittable,G4bool currentAsDefault)
      +// --------------------------------------------------------------------
      +void G4UIcmdWithAString::SetParameterName(const char* theName, G4bool omittable,
      +                                          G4bool currentAsDefault)
       {
      -  G4UIparameter * theParam = GetParameter(0);
      +  G4UIparameter* theParam = GetParameter(0);
         theParam->SetParameterName(theName);
         theParam->SetOmittable(omittable);
         theParam->SetCurrentAsDefault(currentAsDefault);
       }
       
      -void G4UIcmdWithAString::SetCandidates(const char * candidateList)
      +// --------------------------------------------------------------------
      +void G4UIcmdWithAString::SetCandidates(const char* candidateList)
       {
      -  G4UIparameter * theParam = GetParameter(0);
      -  G4String canList = candidateList;
      +  G4UIparameter* theParam = GetParameter(0);
      +  G4String canList        = candidateList;
         theParam->SetParameterCandidates(canList);
       }
       
      -void G4UIcmdWithAString::SetDefaultValue(const char * defVal)
      +// --------------------------------------------------------------------
      +void G4UIcmdWithAString::SetDefaultValue(const char* defVal)
       {
      -  G4UIparameter * theParam = GetParameter(0);
      +  G4UIparameter* theParam = GetParameter(0);
         theParam->SetDefaultValue(defVal);
       }
      -
      diff --git a/source/intercoms/src/G4UIcmdWithAnInteger.cc b/source/intercoms/src/G4UIcmdWithAnInteger.cc
      index 56466ab08b..7723f70d7e 100644
      --- a/source/intercoms/src/G4UIcmdWithAnInteger.cc
      +++ b/source/intercoms/src/G4UIcmdWithAnInteger.cc
      @@ -23,37 +23,42 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWithAnInteger
       //
      -//
      -//
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
       
       #include "G4UIcmdWithAnInteger.hh"
       
      -G4UIcmdWithAnInteger::G4UIcmdWithAnInteger
      -(const char * theCommandPath,G4UImessenger * theMessenger)
      -:G4UIcommand(theCommandPath,theMessenger)
      +// --------------------------------------------------------------------
      +G4UIcmdWithAnInteger::G4UIcmdWithAnInteger(const char* theCommandPath,
      +                                           G4UImessenger* theMessenger)
      +  : G4UIcommand(theCommandPath, theMessenger)
       {
      -  G4UIparameter * intParam = new G4UIparameter('i');
      +  G4UIparameter* intParam = new G4UIparameter('i');
         SetParameter(intParam);
       }
       
      +// --------------------------------------------------------------------
       G4int G4UIcmdWithAnInteger::GetNewIntValue(const char* paramString)
       {
         return ConvertToInt(paramString);
       }
       
      -void G4UIcmdWithAnInteger::SetParameterName
      -(const char * theName,G4bool omittable,G4bool currentAsDefault)
      +// --------------------------------------------------------------------
      +void G4UIcmdWithAnInteger::SetParameterName(const char* theName,
      +                                            G4bool omittable,
      +                                            G4bool currentAsDefault)
       {
      -  G4UIparameter * theParam = GetParameter(0);
      +  G4UIparameter* theParam = GetParameter(0);
         theParam->SetParameterName(theName);
         theParam->SetOmittable(omittable);
         theParam->SetCurrentAsDefault(currentAsDefault);
       }
       
      +// --------------------------------------------------------------------
       void G4UIcmdWithAnInteger::SetDefaultValue(G4int defVal)
       {
      -  G4UIparameter * theParam = GetParameter(0);
      +  G4UIparameter* theParam = GetParameter(0);
         theParam->SetDefaultValue(defVal);
       }
      -
      diff --git a/source/intercoms/src/G4UIcmdWithoutParameter.cc b/source/intercoms/src/G4UIcmdWithoutParameter.cc
      index 1a5bf1d721..0a6b0a031c 100644
      --- a/source/intercoms/src/G4UIcmdWithoutParameter.cc
      +++ b/source/intercoms/src/G4UIcmdWithoutParameter.cc
      @@ -23,14 +23,16 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcmdWithoutParameter
       //
      -//
      -//
      +// Author: M.Asai, 1998
      +// --------------------------------------------------------------------
       
       #include "G4UIcmdWithoutParameter.hh"
       
      -G4UIcmdWithoutParameter::G4UIcmdWithoutParameter
      -(const char * theCommandPath,G4UImessenger * theMessenger)
      -:G4UIcommand(theCommandPath,theMessenger)
      -{;}
      -
      +// --------------------------------------------------------------------
      +G4UIcmdWithoutParameter::G4UIcmdWithoutParameter(const char* theCommandPath,
      +                                                 G4UImessenger* theMessenger)
      +  : G4UIcommand(theCommandPath, theMessenger)
      +{
      +}
      diff --git a/source/intercoms/src/G4UIcommand.cc b/source/intercoms/src/G4UIcommand.cc
      index c40e161096..f154311185 100644
      --- a/source/intercoms/src/G4UIcommand.cc
      +++ b/source/intercoms/src/G4UIcommand.cc
      @@ -23,7 +23,9 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      -// Author: Makoto Asai (SLAC)
      +// G4UIcommand
      +//
      +// Author: Makoto Asai (SLAC), 1998
       // --------------------------------------------------------------------
       
       #include "G4UIcommand.hh"
      @@ -38,25 +40,26 @@
       #include 
       
       #include "G4UItokenNum.hh"
      +
      +#include "G4Threading.hh"
      +
       using namespace G4UItokenNum;
       
      +// --------------------------------------------------------------------
       G4UIcommand::G4UIcommand()
      -  : messenger(0), toBeBroadcasted(false), toBeFlushed(false), workerThreadOnly(false),
      -    commandFailureCode(0), failureDescription(""),
      -    bp(0), token(IDENTIFIER),paramERR(0)
       {
       }
       
      -G4UIcommand::G4UIcommand(const char * theCommandPath,
      -     G4UImessenger * theMessenger, G4bool tBB)
      -:messenger(theMessenger),toBeBroadcasted(tBB),toBeFlushed(false), workerThreadOnly(false),
      -    commandFailureCode(0), failureDescription(""),
      -    bp(0), token(IDENTIFIER),paramERR(0)
      +// --------------------------------------------------------------------
      +G4UIcommand::G4UIcommand(const char* theCommandPath,
      +                         G4UImessenger* theMessenger, G4bool tBB)
      +  : toBeBroadcasted(tBB)
      +  , messenger(theMessenger)
       {
         G4String comStr = theCommandPath;
         if(!theMessenger)
      -  { // this must be a directory
      -    if(comStr(comStr.length()-1)!='/')
      +  {  // this must be a directory
      +    if(comStr(comStr.length() - 1) != '/')
           {
             G4cerr << "G4UIcommand Warning : " << G4endl;
             G4cerr << "  <" << theCommandPath << "> must be a directory." << G4endl;
      @@ -64,7 +67,7 @@ G4UIcommand::G4UIcommand(const char * theCommandPath,
             comStr += "/";
           }
         }
      -  G4UIcommandCommonConstructorCode (comStr);
      +  G4UIcommandCommonConstructorCode(comStr);
         G4String nullString;
         availabelStateList.clear();
         availabelStateList.push_back(G4State_PreInit);
      @@ -75,177 +78,205 @@ G4UIcommand::G4UIcommand(const char * theCommandPath,
         availabelStateList.push_back(G4State_Abort);
       }
       
      -#ifdef G4MULTITHREADED
      -#include "G4Threading.hh"
      -#endif
      -
      -void G4UIcommand::G4UIcommandCommonConstructorCode
      -(const char * theCommandPath)
      -{ 
      -  commandPath = theCommandPath;
      -  commandName = theCommandPath;
      +// --------------------------------------------------------------------
      +void G4UIcommand::G4UIcommandCommonConstructorCode(const char* theCommandPath)
      +{
      +  commandPath            = theCommandPath;
      +  commandName            = theCommandPath;
         G4int commandNameIndex = commandName.last('/');
      -  commandName.remove(0,commandNameIndex+1);
      +  commandName.remove(0, commandNameIndex + 1);
       #ifdef G4MULTITHREADED
      -  if(messenger && messenger->CommandsShouldBeInMaster()
      -     && G4Threading::IsWorkerThread())
      +  if(messenger && messenger->CommandsShouldBeInMaster() &&
      +     G4Threading::IsWorkerThread())
         {
           toBeBroadcasted = false;
           G4UImanager::GetMasterUIpointer()->AddNewCommand(this);
         }
         else
      -  { G4UImanager::GetUIpointer()->AddNewCommand(this); }
      +  {
      +    G4UImanager::GetUIpointer()->AddNewCommand(this);
      +  }
       #else
         G4UImanager::GetUIpointer()->AddNewCommand(this);
       #endif
       }
       
      +// --------------------------------------------------------------------
       G4UIcommand::~G4UIcommand()
       {
         G4UImanager* fUImanager = G4UImanager::GetUIpointer();
      -  if(fUImanager) fUImanager->RemoveCommand(this);
      -  
      +  if(fUImanager)
      +  {
      +    fUImanager->RemoveCommand(this);
      +  }
      +
         G4int n_parameterEntry = parameter.size();
      -  for( G4int i_thParameter=0; i_thParameter < n_parameterEntry; i_thParameter++ )
      -  { delete parameter[i_thParameter]; }
      +  for(G4int i_thParameter = 0; i_thParameter < n_parameterEntry;
      +      ++i_thParameter)
      +  {
      +    delete parameter[i_thParameter];
      +  }
         parameter.clear();
       }
       
      -G4bool G4UIcommand::operator==(const G4UIcommand &right) const
      +// --------------------------------------------------------------------
      +G4bool G4UIcommand::operator==(const G4UIcommand& right) const
       {
      -  return ( commandPath == right.GetCommandPath() );
      +  return (commandPath == right.GetCommandPath());
       }
       
      -G4bool G4UIcommand::operator!=(const G4UIcommand &right) const
      +// --------------------------------------------------------------------
      +G4bool G4UIcommand::operator!=(const G4UIcommand& right) const
       {
      -  return ( commandPath != right.GetCommandPath() );
      +  return (commandPath != right.GetCommandPath());
       }
       
      -#include "G4Threading.hh"
      -
      +// --------------------------------------------------------------------
       G4int G4UIcommand::DoIt(G4String parameterList)
       {
         G4String correctParameters;
         G4int n_parameterEntry = parameter.size();
      -  if( n_parameterEntry != 0 )
      +  if(n_parameterEntry != 0)
         {
           G4String aToken;
           G4String correctToken;
      -    G4Tokenizer parameterToken( parameterList );
      -    for( G4int i_thParameter=0; i_thParameter 0)
             {
               correctParameters.append(" ");
             }
             aToken = parameterToken();
      -      if( aToken.length()>0 && aToken(0)=='"' )
      +      if(aToken.length() > 0 && aToken(0) == '"')
             {
      -        while( aToken(aToken.length()-1) != '"'
      -               || ( aToken.length()==1 && aToken(0)=='"' ))
      +        while(aToken(aToken.length() - 1) != '"' ||
      +              (aToken.length() == 1 && aToken(0) == '"'))
               {
                 G4String additionalToken = parameterToken();
      -          if( additionalToken.isNull() )
      -          { return fParameterUnreadable+i_thParameter; }
      +          if(additionalToken.isNull())
      +          {
      +            return fParameterUnreadable + i_thParameter;
      +          }
                 aToken += " ";
                 aToken += additionalToken;
               }
             }
      -      else if(i_thParameter==n_parameterEntry-1 && parameter[i_thParameter]->GetParameterType()=='s')
      +      else if(i_thParameter == n_parameterEntry - 1 &&
      +              parameter[i_thParameter]->GetParameterType() == 's')
             {
               G4String anotherToken;
      -        while(!((anotherToken=parameterToken()).isNull()))
      +        while(!((anotherToken = parameterToken()).isNull()))
               {
                 G4int idxs = anotherToken.index("#");
      -          if(idxs==G4int(std::string::npos))
      +          if(idxs == G4int(std::string::npos))
                 {
                   aToken += " ";
                   aToken += anotherToken;
                 }
      -          else if(idxs>0)
      +          else if(idxs > 0)
                 {
                   aToken += " ";
      -            aToken += anotherToken(0,idxs);
      +            aToken += anotherToken(0, idxs);
                   break;
                 }
                 else
      -          { break; }
      +          {
      +            break;
      +          }
               }
             }
       
      -      if( aToken.isNull() || aToken == "!" )
      +      if(aToken.isNull() || aToken == "!")
             {
               if(parameter[i_thParameter]->IsOmittable())
      -        { 
      +        {
                 if(parameter[i_thParameter]->GetCurrentAsDefault())
                 {
                   G4Tokenizer cvSt(messenger->GetCurrentValue(this));
                   G4String parVal;
      -            for(G4int ii=0;iiGetDefaultValue()); }
      +          {
      +            correctParameters.append(
      +              parameter[i_thParameter]->GetDefaultValue());
      +          }
               }
               else
      -        { return fParameterUnreadable+i_thParameter; }
      +        {
      +          return fParameterUnreadable + i_thParameter;
      +        }
             }
             else
             {
      -        G4int stat = parameter[i_thParameter]->CheckNewValue( aToken );
      -        if(stat) return stat+i_thParameter;
      +        G4int stat = parameter[i_thParameter]->CheckNewValue(aToken);
      +        if(stat)
      +          return stat + i_thParameter;
               correctParameters.append(aToken);
             }
           }
         }
       
      -  if(CheckNewValue( correctParameters ))
      -  { return fParameterOutOfRange+99; }
      +  if(CheckNewValue(correctParameters))
      +  {
      +    return fParameterOutOfRange + 99;
      +  }
       
      -  if(workerThreadOnly && G4Threading::IsMasterThread()) return 0;
      +  if(workerThreadOnly && G4Threading::IsMasterThread())
      +    return 0;
       
      -  messenger->SetNewValue( this, correctParameters );
      +  messenger->SetNewValue(this, correctParameters);
         return 0;
       }
       
      +// --------------------------------------------------------------------
       G4String G4UIcommand::GetCurrentValue()
       {
         return messenger->GetCurrentValue(this);
       }
       
      +// --------------------------------------------------------------------
       void G4UIcommand::AvailableForStates(G4ApplicationState s1)
       {
         availabelStateList.clear();
         availabelStateList.push_back(s1);
       }
       
      +// --------------------------------------------------------------------
       void G4UIcommand::AvailableForStates(G4ApplicationState s1,
                                            G4ApplicationState s2)
       {
      @@ -254,6 +285,7 @@ void G4UIcommand::AvailableForStates(G4ApplicationState s1,
         availabelStateList.push_back(s2);
       }
       
      +// --------------------------------------------------------------------
       void G4UIcommand::AvailableForStates(G4ApplicationState s1,
                                            G4ApplicationState s2,
                                            G4ApplicationState s3)
      @@ -264,6 +296,7 @@ void G4UIcommand::AvailableForStates(G4ApplicationState s1,
         availabelStateList.push_back(s3);
       }
       
      +// --------------------------------------------------------------------
       void G4UIcommand::AvailableForStates(G4ApplicationState s1,
                                            G4ApplicationState s2,
                                            G4ApplicationState s3,
      @@ -276,6 +309,7 @@ void G4UIcommand::AvailableForStates(G4ApplicationState s1,
         availabelStateList.push_back(s4);
       }
       
      +// --------------------------------------------------------------------
       void G4UIcommand::AvailableForStates(G4ApplicationState s1,
                                            G4ApplicationState s2,
                                            G4ApplicationState s3,
      @@ -290,95 +324,118 @@ void G4UIcommand::AvailableForStates(G4ApplicationState s1,
         availabelStateList.push_back(s5);
       }
       
      +// --------------------------------------------------------------------
       G4bool G4UIcommand::IsAvailable()
       {
         G4bool av = false;
      -  G4ApplicationState currentState 
      -   = G4StateManager::GetStateManager()->GetCurrentState();
      -   
      +  G4ApplicationState currentState =
      +    G4StateManager::GetStateManager()->GetCurrentState();
      +
         G4int nState = availabelStateList.size();
      -  for(G4int i=0;iGetName()==unitCategory) break; }
      -  if(i==UTbl.size())
      -  { 
      -    G4cerr << "Unit category <" << unitCategory << "> is not defined." << G4endl;
      +  std::size_t i;
      +  for(i = 0; i < UTbl.size(); ++i)
      +  {
      +    if(UTbl[i]->GetName() == unitCategory)
      +      break;
      +  }
      +  if(i == UTbl.size())
      +  {
      +    G4cerr << "Unit category <" << unitCategory << "> is not defined."
      +           << G4endl;
           return retStr;
         }
         G4UnitsContainer& UCnt = UTbl[i]->GetUnitsList();
      -  retStr = UCnt[0]->GetSymbol();
      -  G4int je = UCnt.size();
      -  for(G4int j=1;jGetSymbol();
      +  G4int je               = UCnt.size();
      +  for(G4int j = 1; j < je; ++j)
         {
           retStr += " ";
           retStr += UCnt[j]->GetSymbol();
         }
      -  for(G4int k=0;kGetName();
         }
         return retStr;
       }
      -  
      +
      +// --------------------------------------------------------------------
       void G4UIcommand::List()
       {
         G4cout << G4endl;
         G4cout << G4endl;
      -  if(commandPath(commandPath.length()-1)!='/')
      -  { G4cout << "Command " << commandPath << G4endl; }
      +  if(commandPath(commandPath.length() - 1) != '/')
      +  {
      +    G4cout << "Command " << commandPath << G4endl;
      +  }
         if(workerThreadOnly)
      -  { G4cout << "    ---- available only in worker thread" << G4endl; }
      +  {
      +    G4cout << "    ---- available only in worker thread" << G4endl;
      +  }
         G4cout << "Guidance :" << G4endl;
         G4int n_guidanceEntry = commandGuidance.size();
      -  for( G4int i_thGuidance=0; i_thGuidance < n_guidanceEntry; i_thGuidance++ )
      -  { G4cout << commandGuidance[i_thGuidance] << G4endl; }
      -  if( ! rangeString.isNull() )
      -  { G4cout << " Range of parameters : " << rangeString << G4endl; }
      -  G4int n_parameterEntry = parameter.size();
      -  if( n_parameterEntry > 0 )
      +  for(G4int i_thGuidance = 0; i_thGuidance < n_guidanceEntry; ++i_thGuidance)
         {
      -    for( G4int i_thParameter=0; i_thParameterList(); }
      +    G4cout << commandGuidance[i_thGuidance] << G4endl;
      +  }
      +  if(!rangeString.isNull())
      +  {
      +    G4cout << " Range of parameters : " << rangeString << G4endl;
      +  }
      +  G4int n_parameterEntry = parameter.size();
      +  if(n_parameterEntry > 0)
      +  {
      +    for(G4int i_thParameter = 0; i_thParameter < n_parameterEntry;
      +        ++i_thParameter)
      +    {
      +      parameter[i_thParameter]->List();
      +    }
         }
         G4cout << G4endl;
       }
       
      +// --------------------------------------------------------------------
       G4String G4UIcommand::ConvertToString(G4bool boolVal)
       {
         G4String vl = "0";
      -  if(boolVal) vl = "1";
      +  if(boolVal)
      +    vl = "1";
         return vl;
       }
       
      +// --------------------------------------------------------------------
       G4String G4UIcommand::ConvertToString(G4int intValue)
       {
         std::ostringstream os;
      @@ -387,66 +444,102 @@ G4String G4UIcommand::ConvertToString(G4int intValue)
         return vl;
       }
       
      +// --------------------------------------------------------------------
      +G4String G4UIcommand::ConvertToString(G4long longValue)
      +{
      +  std::ostringstream os;
      +  os << longValue;
      +  G4String vl = os.str();
      +  return vl;
      +}
      +
      +// --------------------------------------------------------------------
       G4String G4UIcommand::ConvertToString(G4double doubleValue)
       {
         std::ostringstream os;
         if(G4UImanager::DoublePrecisionStr())
      -  { os << std::setprecision(17) << doubleValue; }
      +  {
      +    os << std::setprecision(17) << doubleValue;
      +  }
         else
      -  { os << doubleValue; }
      +  {
      +    os << doubleValue;
      +  }
         G4String vl = os.str();
         return vl;
       }
       
      -G4String G4UIcommand::ConvertToString(G4double doubleValue,const char* unitName)
      +// --------------------------------------------------------------------
      +G4String G4UIcommand::ConvertToString(G4double doubleValue,
      +                                      const char* unitName)
       {
         G4String unt = unitName;
      -  G4double uv = ValueOf(unitName);
      +  G4double uv  = ValueOf(unitName);
       
         std::ostringstream os;
         if(G4UImanager::DoublePrecisionStr())
      -  { os << std::setprecision(17) << doubleValue/uv << " " << unitName; }
      +  {
      +    os << std::setprecision(17) << doubleValue / uv << " " << unitName;
      +  }
         else
      -  { os << doubleValue/uv << " " << unitName; }
      +  {
      +    os << doubleValue / uv << " " << unitName;
      +  }
         G4String vl = os.str();
         return vl;
       }
       
      +// --------------------------------------------------------------------
       G4String G4UIcommand::ConvertToString(G4ThreeVector vec)
       {
         std::ostringstream os;
         if(G4UImanager::DoublePrecisionStr())
      -  { os << std::setprecision(17) << vec.x() << " " << vec.y() << " " << vec.z(); }
      +  {
      +    os << std::setprecision(17) << vec.x() << " " << vec.y() << " " << vec.z();
      +  }
         else
      -  { os << vec.x() << " " << vec.y() << " " << vec.z(); }
      +  {
      +    os << vec.x() << " " << vec.y() << " " << vec.z();
      +  }
         G4String vl = os.str();
         return vl;
       }
       
      -G4String G4UIcommand::ConvertToString(G4ThreeVector vec,const char* unitName)
      +// --------------------------------------------------------------------
      +G4String G4UIcommand::ConvertToString(G4ThreeVector vec, const char* unitName)
       {
         G4String unt = unitName;
      -  G4double uv = ValueOf(unitName);
      +  G4double uv  = ValueOf(unitName);
       
         std::ostringstream os;
         if(G4UImanager::DoublePrecisionStr())
      -  { os << std::setprecision(17) << vec.x()/uv << " " << vec.y()/uv << " " << vec.z()/uv << " " << unitName; }
      +  {
      +    os << std::setprecision(17) << vec.x() / uv << " " << vec.y() / uv << " "
      +       << vec.z() / uv << " " << unitName;
      +  }
         else
      -  { os << vec.x()/uv << " " << vec.y()/uv << " " << vec.z()/uv << " " << unitName; }
      +  {
      +    os << vec.x() / uv << " " << vec.y() / uv << " " << vec.z() / uv << " "
      +       << unitName;
      +  }
         G4String vl = os.str();
         return vl;
       }
       
      +// --------------------------------------------------------------------
       G4bool G4UIcommand::ConvertToBool(const char* st)
       {
         G4String v = st;
         v.toUpper();
         G4bool vl = false;
      -  if( v=="Y" || v=="YES" || v=="1" || v=="T" || v=="TRUE" )
      -  { vl = true; }
      +  if(v == "Y" || v == "YES" || v == "1" || v == "T" || v == "TRUE")
      +  {
      +    vl = true;
      +  }
         return vl;
       }
       
      +// --------------------------------------------------------------------
       G4int G4UIcommand::ConvertToInt(const char* st)
       {
         G4int vl;
      @@ -455,6 +548,16 @@ G4int G4UIcommand::ConvertToInt(const char* st)
         return vl;
       }
       
      +// --------------------------------------------------------------------
      +G4long G4UIcommand::ConvertToLongInt(const char* st)
      +{
      +  G4long vl;
      +  std::istringstream is(st);
      +  is >> vl;
      +  return vl;
      +}
      +
      +// --------------------------------------------------------------------
       G4double G4UIcommand::ConvertToDouble(const char* st)
       {
         G4double vl;
      @@ -463,6 +566,7 @@ G4double G4UIcommand::ConvertToDouble(const char* st)
         return vl;
       }
       
      +// --------------------------------------------------------------------
       G4double G4UIcommand::ConvertToDimensionedDouble(const char* st)
       {
         G4double vl;
      @@ -472,9 +576,10 @@ G4double G4UIcommand::ConvertToDimensionedDouble(const char* st)
         is >> vl >> unts;
         G4String unt = unts;
       
      -  return (vl*ValueOf(unt));
      +  return (vl * ValueOf(unt));
       }
       
      +// --------------------------------------------------------------------
       G4ThreeVector G4UIcommand::ConvertTo3Vector(const char* st)
       {
         G4double vx;
      @@ -482,9 +587,10 @@ G4ThreeVector G4UIcommand::ConvertTo3Vector(const char* st)
         G4double vz;
         std::istringstream is(st);
         is >> vx >> vy >> vz;
      -  return G4ThreeVector(vx,vy,vz);
      +  return G4ThreeVector(vx, vy, vz);
       }
       
      +// --------------------------------------------------------------------
       G4ThreeVector G4UIcommand::ConvertToDimensioned3Vector(const char* st)
       {
         G4double vx;
      @@ -494,690 +600,1006 @@ G4ThreeVector G4UIcommand::ConvertToDimensioned3Vector(const char* st)
         std::istringstream is(st);
         is >> vx >> vy >> vz >> unts;
         G4String unt = unts;
      -  G4double uv = ValueOf(unt);
      -  return G4ThreeVector(vx*uv,vy*uv,vz*uv);
      +  G4double uv  = ValueOf(unt);
      +  return G4ThreeVector(vx * uv, vy * uv, vz * uv);
       }
       
      +// ----- the following is used by CheckNewValue()  --------------------
       
      -// ----- the following is used by CheckNewValue()  ------------
      +#include   // isalpha(), toupper()
       
      -
      -#include           // isalpha(), toupper()
      -
      -//#include "checkNewValue_debug.icc"
      -//#define DEBUG 1
      -
      -G4int G4UIcommand::
      -CheckNewValue(const char * newValue)
      +G4int G4UIcommand::CheckNewValue(const char* newValue)
       {
      -   yystype result;
      -   // if( TypeCheck(newValue) == 0 ) return 1;
      -   if( ! rangeString.isNull() )
      -   { if( RangeCheck(newValue) == 0 ) return fParameterOutOfRange; }
      -   return 0;  // succeeded
      +  yystype result;
      +  // if( TypeCheck(newValue) == 0 ) return 1;
      +  if(!rangeString.isNull())
      +  {
      +    if(RangeCheck(newValue) == 0)
      +      return fParameterOutOfRange;
      +  }
      +  return 0;  // succeeded
       }
       
      -// ------------------ type check routines -------------------
      -
      -G4int G4UIcommand::
      -TypeCheck(const char * t)
      +// --------------------------------------------------------------------
      +G4int G4UIcommand::TypeCheck(const char* t)
       {
      -    G4String aNewValue;
      -    char type;
      -    std::istringstream is(t);
      -    for (unsigned i=0; i< parameter.size(); i++) {
      -        is >> aNewValue;
      -        type = toupper(parameter[i]->GetParameterType());
      -        switch ( type ) {
      -            case 'D':
      -                if( IsDouble(aNewValue)==0 ){
      -                    G4cerr << aNewValue << ": double value expected."
      -                         << G4endl;
      -                    return 0;
      -                } break;
      -            case 'I':
      -                if( IsInt(aNewValue,20)==0 ){
      -                    G4cerr <> aNewValue;
      +    type = toupper(parameter[i]->GetParameterType());
      +    switch(type)
      +    {
      +      case 'D':
      +        if(IsDouble(aNewValue) == 0)
      +        {
      +          G4cerr << aNewValue << ": double value expected." << G4endl;
      +          return 0;
               }
      +        break;
      +      case 'I':
      +        if(IsInt(aNewValue, 10) == 0)
      +        {
      +          G4cerr << aNewValue << ": integer expected." << G4endl;
      +          return 0;
      +        }
      +        break;
      +      case 'L':
      +        if(IsInt(aNewValue, 20) == 0)
      +        {
      +          G4cerr << aNewValue << ": long int expected." << G4endl;
      +          return 0;
      +        }
      +        break;
      +      case 'S':
      +        break;
      +      case 'B':
      +        aNewValue.toUpper();
      +        if(aNewValue == "Y" || aNewValue == "N" || aNewValue == "YES" ||
      +           aNewValue == "NO" || aNewValue == "1" || aNewValue == "0" ||
      +           aNewValue == "T" || aNewValue == "F" || aNewValue == "TRUE" ||
      +           aNewValue == "FALSE")
      +          return 1;
      +        else
      +          return 0;
      +        break;
      +      default:;
           }
      +  }
      +  return 1;
      +}
      +
      +// --------------------------------------------------------------------
      +G4int G4UIcommand::IsInt(const char* buf, short maxDigits)
      +{
      +  const char* p = buf;
      +  G4int length  = 0;
      +  if(*p == '+' || *p == '-')
      +  {
      +    ++p;
      +  }
      +  if(isdigit((G4int)(*p)))
      +  {
      +    while(isdigit((G4int)(*p)))
      +    {
      +      ++p;
      +      ++length;
      +    }
      +    if(*p == '\0')
      +    {
      +      if(length > maxDigits)
      +      {
      +        G4cerr << "digit length exceeds" << G4endl;
      +        return 0;
      +      }
      +      return 1;
      +    }
      +    else
      +    {
      +      // G4cerr <<"illegal character after int:"< maxDigits) {
      -                G4cerr <<"digit length exceeds"<GetParameterType());
      -        switch ( type ) {
      -            case 'D':  is >> newVal[i].D;  break;
      -            case 'I':  is >> newVal[i].I;  break;
      -            case 'S':  is >> newVal[i].S;  break;
      -            case 'B':  is >> newVal[i].C;  break;
      -            default:  ;
      +  const char* p = buf;
      +  switch(*p)
      +  {
      +    case '+':
      +    case '-':
      +      ++p;
      +      if(isdigit(*p))
      +      {
      +        while(isdigit((G4int)(*p)))
      +        {
      +          ++p;
               }
      -   }
      -   // PrintToken();          // Print tokens (consumes all tokens)
      -   token= Yylex();
      -   result = Expression();
      +        switch(*p)
      +        {
      +          case '\0':
      +            return 1;
      +            // break;
      +          case 'E':
      +          case 'e':
      +            return ExpectExponent(++p);
      +            // break;
      +          case '.':
      +            ++p;
      +            if(*p == '\0')
      +              return 1;
      +            if(*p == 'e' || *p == 'E')
      +              return ExpectExponent(++p);
      +            if(isdigit(*p))
      +            {
      +              while(isdigit((G4int)(*p)))
      +              {
      +                ++p;
      +              }
      +              if(*p == '\0')
      +                return 1;
      +              if(*p == 'e' || *p == 'E')
      +                return ExpectExponent(++p);
      +            }
      +            else
      +              return 0;
      +            break;
      +          default:
      +            return 0;
      +        }
      +      }
      +      if(*p == '.')
      +      {
      +        ++p;
      +        if(isdigit(*p))
      +        {
      +          while(isdigit((G4int)(*p)))
      +          {
      +            ++p;
      +          }
      +          if(*p == '\0')
      +            return 1;
      +          if(*p == 'e' || *p == 'E')
      +            return ExpectExponent(++p);
      +        }
      +      }
      +      break;
      +    case '.':
      +      ++p;
      +      if(isdigit(*p))
      +      {
      +        while(isdigit((G4int)(*p)))
      +        {
      +          ++p;
      +        }
      +        if(*p == '\0')
      +          return 1;
      +        if(*p == 'e' || *p == 'E')
      +          return ExpectExponent(++p);
      +      }
      +      break;
      +    default:  // digit is expected
      +      if(isdigit(*p))
      +      {
      +        while(isdigit((G4int)(*p)))
      +        {
      +          ++p;
      +        }
      +        if(*p == '\0')
      +          return 1;
      +        if(*p == 'e' || *p == 'E')
      +          return ExpectExponent(++p);
      +        if(*p == '.')
      +        {
      +          ++p;
      +          if(*p == '\0')
      +            return 1;
      +          if(*p == 'e' || *p == 'E')
      +            return ExpectExponent(++p);
      +          if(isdigit(*p))
      +          {
      +            while(isdigit((G4int)(*p)))
      +            {
      +              ++p;
      +            }
      +            if(*p == '\0')
      +              return 1;
      +            if(*p == 'e' || *p == 'E')
      +              return ExpectExponent(++p);
      +          }
      +        }
      +      }
      +  }
      +  return 0;
      +}
       
      -   if( paramERR == 1 ) return 0;
      -   if( result.type != CONSTINT) {
      -      G4cerr << "Illegal Expression in parameter range." << G4endl;
      -      return 0;
      -   }
      -   if ( result.I ) return 1;
      -   G4cerr << "parameter out of range: "<< rangeString << G4endl;
      -   return 0;
      +// --------------------------------------------------------------------
      +G4int G4UIcommand::RangeCheck(const char* t)
      +{
      +  yystype result;
      +  char type;
      +  bp = 0;  // reset buffer pointer for G4UIpGetc()
      +  std::istringstream is(t);
      +  for(unsigned i = 0; i < parameter.size(); ++i)
      +  {
      +    type = toupper(parameter[i]->GetParameterType());
      +    switch(type)
      +    {
      +      case 'D':
      +        is >> newVal[i].D;
      +        break;
      +      case 'I':
      +        is >> newVal[i].I;
      +        break;
      +      case 'L':
      +        is >> newVal[i].L;
      +        break;
      +      case 'S':
      +        is >> newVal[i].S;
      +        break;
      +      case 'B':
      +        is >> newVal[i].C;
      +        break;
      +      default:;
      +    }
      +  }
      +  // PrintToken();          // Print tokens (consumes all tokens)
      +  token  = Yylex();
      +  result = Expression();
      +
      +  if(paramERR == 1)
      +    return 0;
      +  if(result.type != CONSTINT)
      +  {
      +    G4cerr << "Illegal Expression in parameter range." << G4endl;
      +    return 0;
      +  }
      +  if(result.I)
      +    return 1;
      +  G4cerr << "parameter out of range: " << rangeString << G4endl;
      +  return 0;
       }
       
       // ------------------ syntax node functions  ------------------
      -yystype G4UIcommand:: 
      -Expression(void)
      +
      +yystype G4UIcommand::Expression(void)
       {
      -    yystype result;
      -    #ifdef DEBUG
      -        G4cerr << " Expression()" << G4endl;
      -    #endif
      -    result = LogicalORExpression();
      -    return result;
      +  yystype result;
      +#ifdef DEBUG
      +  G4cerr << " Expression()" << G4endl;
      +#endif
      +  result = LogicalORExpression();
      +  return result;
       }
       
      -yystype G4UIcommand:: 
      -LogicalORExpression(void)
      +// --------------------------------------------------------------------
      +yystype G4UIcommand::LogicalORExpression(void)
       {
      -    yystype result;
      -    yystype p;
      -    p = LogicalANDExpression();
      -    if( token != LOGICALOR)  return p;
      -    if( p.type == CONSTSTRING || p.type == IDENTIFIER ) {
      -        G4cerr << "Parameter range: illegal type at '||'" << G4endl;
      -        paramERR = 1;
      -    }
      -    result.I = p.I;
      -    while (token == LOGICALOR) 
      -    {  
      -        token = Yylex();
      -        p = LogicalANDExpression();
      -        if( p.type == CONSTSTRING || p.type == IDENTIFIER ) {
      -            G4cerr << "Parameter range: illegal type at '||'" <GetParameterType());
      -        switch ( newValtype ) {
      -            case 'I': 
      -                if( arg2.type == CONSTINT ) {
      -                    return CompareInt( newVal[i].I, op, arg2.I );
      -//===================================================================
      -// MA - 2018.07.23
      -                } else if( arg2.type == IDENTIFIER ) {
      -                  unsigned iii = IndexOf( arg2.S );
      -                  char newValtype2 = toupper(parameter[iii]->GetParameterType());
      -                  if( newValtype2 == 'I' ) {
      -                    return CompareInt( newVal[i].I, op, newVal[iii].I );
      -                  } else if( newValtype2 == 'D' ) {
      -                    G4cerr << "Warning : Integer is compared with double : "
      -                           << rangeString << G4endl;
      -                    return CompareDouble( newVal[i].I, op, newVal[iii].D );
      -                  }
      -//===================================================================
      -                } else {
      -                    G4cerr << "integer operand expected for "
      -                         <<  rangeString 
      -                         << '.' << G4endl;
      -                } break;
      -            case 'D':
      -                if( arg2.type == CONSTDOUBLE ) {
      -                    return CompareDouble( newVal[i].D, op, arg2.D );
      -                } else if ( arg2.type == CONSTINT ) {  // integral promotion
      -                    return CompareDouble( newVal[i].D, op, arg2.I );
      -//===================================================================
      -// MA - 2018.07.23
      -                } else if( arg2.type == IDENTIFIER ) {
      -                  unsigned iii = IndexOf( arg2.S );
      -                  char newValtype2 = toupper(parameter[iii]->GetParameterType());
      -                  if( newValtype2 == 'I' ) {
      -                    return CompareDouble( newVal[i].D, op, newVal[iii].I );
      -                  } else if( newValtype2 == 'D' ) {
      -                    return CompareDouble( newVal[i].D, op, newVal[iii].D );
      -                  }
      -//===================================================================
      -                } break;
      -            default: ;
      -        }
      -    }
      -    if( arg2.type == IDENTIFIER) {
      -        unsigned i = IndexOf( arg2.S );
      -        newValtype = toupper(parameter[i]->GetParameterType());
      -        switch ( newValtype ) {
      -            case 'I': 
      -                if( arg1.type == CONSTINT ) {
      -                    return CompareInt( arg1.I, op, newVal[i].I );
      -                } else {
      -                    G4cerr << "integer operand expected for "
      -                         <<  rangeString
      -                         << '.' << G4endl;
      -                } break;
      -            case 'D':
      -                if( arg1.type == CONSTDOUBLE ) {
      -                    return CompareDouble( arg1.D, op, newVal[i].D );
      -                } else
      -                if ( arg1.type == CONSTINT ) {  // integral promotion
      -                    return CompareDouble( arg1.I, op, newVal[i].D );
      -                } break;
      -            default: ;
      -        }
      -    }
      -    return 0;
      -}
      -
      -G4int G4UIcommand::
      -CompareInt(G4int arg1, G4int op, G4int arg2)
      -{   
      -    G4int result=-1;
      -    G4String opr;
      -    switch (op) {
      -       case GT:  result = ( arg1 >  arg2); opr= ">" ;  break;
      -       case GE:  result = ( arg1 >= arg2); opr= ">=";  break;
      -       case LT:  result = ( arg1 <  arg2); opr= "<" ;  break;
      -       case LE:  result = ( arg1 <= arg2); opr= "<=";  break;
      -       case EQ:  result = ( arg1 == arg2); opr= "==";  break;
      -       case NE:  result = ( arg1 != arg2); opr= "!=";  break;
      -       default: 
      -           G4cerr << "Parameter range: error at CompareInt" << G4endl;
      -           paramERR = 1;
      -    }
      -    #ifdef DEBUG
      -        G4cerr << "CompareInt "
      -             << arg1 << " " << opr << arg2 
      -             << " result: " << result
      -             << G4endl;
      -    #endif
      -    return result;
      -}
      -
      -G4int G4UIcommand::
      -CompareDouble(G4double arg1, G4int op, G4double arg2)
      -{   
      -    G4int result=-1;
      -    G4String opr;
      -    switch (op) {
      -        case GT:  result = ( arg1 >  arg2); opr= ">";   break;
      -        case GE:  result = ( arg1 >= arg2); opr= ">=";  break;
      -        case LT:  result = ( arg1 <  arg2); opr= "<";   break;
      -        case LE:  result = ( arg1 <= arg2); opr= "<=";  break;
      -        case EQ:  result = ( arg1 == arg2); opr= "==";  break;
      -        case NE:  result = ( arg1 != arg2); opr= "!=";  break;
      -        default:
      -           G4cerr << "Parameter range: error at CompareDouble"
      -                << G4endl;
      -           paramERR = 1;
      -    }
      -    #ifdef DEBUG
      -        G4cerr << "CompareDouble " 
      -             << arg1 <<" " << opr << " "<< arg2
      -             << " result: " << result
      -             << G4endl;
      -    #endif
      -    return result;
      -}
      -
      -unsigned G4UIcommand::
      -IndexOf(const char* nam)
      -{
      -    unsigned i;
      -    G4String pname;
      -    for( i=0;  i GetParameterName();
      -        if( pname == nam ) {
      -            return i;
      -        }
      -    }
      -    paramERR = 1;
      -    G4cerr << "parameter name:"< GetParameterName();
      -        if( pname == nam ) return 1;
      -    }
      -    return 0;
      -}
      -
      -
      -// --------------------- utility functions --------------------------
      -
      -tokenNum G4UIcommand::
      -Yylex()         // reads input and returns token number, KR486
      -{               // (returns EOF)
      -    G4int c;             
      -    G4String buf;
      -
      -    while(( c= G4UIpGetc())==' '|| c=='\t' || c== '\n' )
      -        ;
      -    if (c== EOF)
      -        return (tokenNum)EOF;            // KR488 
      -    buf= "";
      -    if (isdigit(c) || c== '.') {         // I or D
      -        do {
      -             buf += G4String((unsigned char)c);
      -             c=G4UIpGetc();
      -         }  while (c=='.' || isdigit(c) || 
      -                   c=='e' || c=='E' || c=='+' || c=='-');
      -         G4UIpUngetc(c);
      -         const char* t = buf;
      -	 std::istringstream is(t);
      -         if ( IsInt(buf.data(),20) ) {
      -             is >> yylval.I;
      -             return  CONSTINT;
      -         } else 
      -         if ( IsDouble(buf.data()) ) {
      -             is >> yylval.D;
      -             return  CONSTDOUBLE;
      -         } else {
      -             G4cerr << buf<<": numeric format error."<':   return (tokenNum) Follow('=', GE,        GT);
      -      case '<':   return (tokenNum) Follow('=', LE,        LT);
      -      case '=':   return (tokenNum) Follow('=', EQ,        '=');
      -      case '!':   return (tokenNum) Follow('=', NE,        '!');
      -      case '|':   return (tokenNum) Follow('|', LOGICALOR, '|');
      -      case '&':   return (tokenNum) Follow('&', LOGICALAND, '&');
      +        break;
      +      case CONSTDOUBLE:
      +        result.I += (p.D != 0.0);
      +        result.type = CONSTINT;
      +        break;
             default:
      -          return (tokenNum) c;
      +        G4cerr << "Parameter range: unknown type" << G4endl;
      +        paramERR = 1;
           }
      +  }
      +  return result;
       }
       
      -
      -G4int G4UIcommand::
      -Follow(G4int expect, G4int ifyes, G4int ifno)
      +// --------------------------------------------------------------------
      +yystype G4UIcommand::LogicalANDExpression(void)
       {
      -    G4int c = G4UIpGetc();
      -    if ( c== expect)
      -          return ifyes;
      -    G4UIpUngetc(c);
      -    return ifno;
      +  yystype result;
      +  yystype p;
      +  p = EqualityExpression();
      +  if(token != LOGICALAND)
      +    return p;
      +  if(p.type == CONSTSTRING || p.type == IDENTIFIER)
      +  {
      +    G4cerr << "Parameter range: illegal type at '&&'" << G4endl;
      +    paramERR = 1;
      +  }
      +  result.I = p.I;
      +  while(token == LOGICALAND)
      +  {
      +    token = Yylex();
      +    p     = EqualityExpression();
      +    if(p.type == CONSTSTRING || p.type == IDENTIFIER)
      +    {
      +      G4cerr << "Parameter range: illegal type at '&&'" << G4endl;
      +      paramERR = 1;
      +    }
      +    switch(p.type)
      +    {
      +      case CONSTINT:
      +        result.I *= p.I;
      +        result.type = CONSTINT;
      +        break;
      +      case CONSTLONG:
      +        result.I *= (p.L != 0L);
      +        result.type = CONSTINT;
      +        break;
      +      case CONSTDOUBLE:
      +        result.I *= (p.D != 0.0);
      +        result.type = CONSTINT;
      +        break;
      +      default:
      +        G4cerr << "Parameter range: unknown type." << G4endl;
      +        paramERR = 1;
      +    }
      +  }
      +  return result;
       }
       
      -//------------------ low level routines -----------------------------
      -G4int G4UIcommand::
      -G4UIpGetc() {                        // emulation of getc() 
      -    G4int length = rangeString.length();
      -    if( bp < length)
      -        return  rangeString(bp++);
      -    else 
      -        return EOF;
      -}
      -G4int G4UIcommand::
      -G4UIpUngetc(G4int c) {                 // emulation of ungetc() 
      -    if (c<0) return -1;
      -    if (bp >0 && c == rangeString(bp-1)) {
      -         --bp;
      -    } else {
      -         G4cerr << "G4UIpUngetc() failed." << G4endl;
      -         G4cerr << "bp="<GetParameterType());
      +    switch(newValtype)
      +    {
      +      case 'I':
      +        if(arg2.type == CONSTINT)
      +        {
      +          return CompareInt(newVal[i].I, op, arg2.I);
      +          //===================================================================
      +          // MA - 2018.07.23
      +        }
      +        else if(arg2.type == IDENTIFIER)
      +        {
      +          unsigned iii     = IndexOf(arg2.S);
      +          char newValtype2 = toupper(parameter[iii]->GetParameterType());
      +          if(newValtype2 == 'I')
      +          {
      +            return CompareInt(newVal[i].I, op, newVal[iii].I);
      +          }
      +          else if(newValtype2 == 'L')
      +          {
      +            G4cerr << "Warning : Integer is compared with long int : "
      +                   << rangeString << G4endl;
      +            return CompareLong(newVal[i].I, op, newVal[iii].L);
      +          }
      +          else if(newValtype2 == 'D')
      +          {
      +            G4cerr << "Warning : Integer is compared with double : "
      +                   << rangeString << G4endl;
      +            return CompareDouble(newVal[i].I, op, newVal[iii].D);
      +          }
      +          //===================================================================
      +        }
      +        else
      +        {
      +          G4cerr << "integer operand expected for " << rangeString << '.'
      +                 << G4endl;
      +        }
      +        break;
      +      case 'L':
      +        if(arg2.type == CONSTINT)
      +        {
      +          return CompareLong(newVal[i].L, op, arg2.I);
      +        }
      +        else if(arg2.type == CONSTLONG)
      +        {
      +          return CompareLong(newVal[i].L, op, arg2.L);
      +        }
      +        else if(arg2.type == IDENTIFIER)
      +        {
      +          unsigned iii     = IndexOf(arg2.S);
      +          char newValtype2 = toupper(parameter[iii]->GetParameterType());
      +          if(newValtype2 == 'I')
      +          {
      +            return CompareLong(newVal[i].L, op, newVal[iii].I);
      +          }
      +          if(newValtype2 == 'L')
      +          {
      +            return CompareLong(newVal[i].L, op, newVal[iii].L);
      +          }
      +          else if(newValtype2 == 'D')
      +          {
      +            G4cerr << "Warning : Long int is compared with double : "
      +                   << rangeString << G4endl;
      +            return CompareDouble(newVal[i].L, op, newVal[iii].D);
      +          }
      +          //===================================================================
      +        }
      +        else
      +        {
      +          G4cerr << "integer operand expected for " << rangeString << '.'
      +                 << G4endl;
      +        }
      +        break;
      +      case 'D':
      +        if(arg2.type == CONSTDOUBLE)
      +        {
      +          return CompareDouble(newVal[i].D, op, arg2.D);
      +        }
      +        else if(arg2.type == CONSTINT)
      +        {  // integral promotion
      +          return CompareDouble(newVal[i].D, op, arg2.I);
      +          //===================================================================
      +          // MA - 2018.07.23
      +        }
      +        else if(arg2.type == CONSTLONG)
      +        {
      +          return CompareDouble(newVal[i].D, op, arg2.L);
      +        }
      +        else if(arg2.type == IDENTIFIER)
      +        {
      +          unsigned iii     = IndexOf(arg2.S);
      +          char newValtype2 = toupper(parameter[iii]->GetParameterType());
      +          if(newValtype2 == 'I')
      +          {
      +            return CompareDouble(newVal[i].D, op, newVal[iii].I);
      +          }
      +          else if(newValtype2 == 'L')
      +          {
      +            return CompareDouble(newVal[i].D, op, newVal[iii].L);
      +          }
      +          else if(newValtype2 == 'D')
      +          {
      +            return CompareDouble(newVal[i].D, op, newVal[iii].D);
      +          }
      +          //===================================================================
      +        }
      +        break;
      +      default:;
      +    }
      +  }
      +  if(arg2.type == IDENTIFIER)
      +  {
      +    unsigned i = IndexOf(arg2.S);
      +    newValtype = toupper(parameter[i]->GetParameterType());
      +    switch(newValtype)
      +    {
      +      case 'I':
      +        if(arg1.type == CONSTINT)
      +        {
      +          return CompareInt(arg1.I, op, newVal[i].I);
      +        }
      +        else
      +        {
      +          G4cerr << "integer operand expected for " << rangeString << '.'
      +                 << G4endl;
      +        }
      +        break;
      +      case 'L':
      +        if(arg1.type == CONSTLONG)
      +        {
      +          return CompareLong(arg1.L, op, newVal[i].L);
      +        }
      +        else
      +        {
      +          G4cerr << "long int operand expected for " << rangeString << '.'
      +                 << G4endl;
      +        }
      +        break;
      +      case 'D':
      +        if(arg1.type == CONSTDOUBLE)
      +        {
      +          return CompareDouble(arg1.D, op, newVal[i].D);
      +        }
      +        else if(arg1.type == CONSTINT)
      +        {  // integral promotion
      +          return CompareDouble(arg1.I, op, newVal[i].D);
      +        }
      +        break;
      +      default:;
      +    }
      +  }
      +  return 0;
      +}
      +
      +// --------------------------------------------------------------------
      +G4int G4UIcommand::CompareInt(G4int arg1, G4int op, G4int arg2)
      +{
      +  G4int result = -1;
      +  G4String opr;
      +  switch(op)
      +  {
      +    case GT:
      +      result = (arg1 > arg2);
      +      opr    = ">";
      +      break;
      +    case GE:
      +      result = (arg1 >= arg2);
      +      opr    = ">=";
      +      break;
      +    case LT:
      +      result = (arg1 < arg2);
      +      opr    = "<";
      +      break;
      +    case LE:
      +      result = (arg1 <= arg2);
      +      opr    = "<=";
      +      break;
      +    case EQ:
      +      result = (arg1 == arg2);
      +      opr    = "==";
      +      break;
      +    case NE:
      +      result = (arg1 != arg2);
      +      opr    = "!=";
      +      break;
      +    default:
      +      G4cerr << "Parameter range: error at CompareInt" << G4endl;
      +      paramERR = 1;
      +  }
      +#ifdef DEBUG
      +  G4cerr << "CompareInt " << arg1 << " " << opr << arg2 << " result: " << result
      +         << G4endl;
      +#endif
      +  return result;
      +}
      +
      +// --------------------------------------------------------------------
      +G4int G4UIcommand::CompareLong(G4long arg1, G4int op, G4long arg2)
      +{
      +  G4int result = -1;
      +  G4String opr;
      +  switch(op)
      +  {
      +    case GT:
      +      result = (arg1 > arg2);
      +      opr    = ">";
      +      break;
      +    case GE:
      +      result = (arg1 >= arg2);
      +      opr    = ">=";
      +      break;
      +    case LT:
      +      result = (arg1 < arg2);
      +      opr    = "<";
      +      break;
      +    case LE:
      +      result = (arg1 <= arg2);
      +      opr    = "<=";
      +      break;
      +    case EQ:
      +      result = (arg1 == arg2);
      +      opr    = "==";
      +      break;
      +    case NE:
      +      result = (arg1 != arg2);
      +      opr    = "!=";
      +      break;
      +    default:
      +      G4cerr << "Parameter range: error at CompareInt" << G4endl;
      +      paramERR = 1;
      +  }
      +#ifdef DEBUG
      +  G4cerr << "CompareInt " << arg1 << " " << opr << arg2 << " result: " << result
      +         << G4endl;
      +#endif
      +  return result;
      +}
      +
      +// --------------------------------------------------------------------
      +G4int G4UIcommand::CompareDouble(G4double arg1, G4int op, G4double arg2)
      +{
      +  G4int result = -1;
      +  G4String opr;
      +  switch(op)
      +  {
      +    case GT:
      +      result = (arg1 > arg2);
      +      opr    = ">";
      +      break;
      +    case GE:
      +      result = (arg1 >= arg2);
      +      opr    = ">=";
      +      break;
      +    case LT:
      +      result = (arg1 < arg2);
      +      opr    = "<";
      +      break;
      +    case LE:
      +      result = (arg1 <= arg2);
      +      opr    = "<=";
      +      break;
      +    case EQ:
      +      result = (arg1 == arg2);
      +      opr    = "==";
      +      break;
      +    case NE:
      +      result = (arg1 != arg2);
      +      opr    = "!=";
      +      break;
      +    default:
      +      G4cerr << "Parameter range: error at CompareDouble" << G4endl;
      +      paramERR = 1;
      +  }
      +#ifdef DEBUG
      +  G4cerr << "CompareDouble " << arg1 << " " << opr << " " << arg2
      +         << " result: " << result << G4endl;
      +#endif
      +  return result;
      +}
      +
      +// --------------------------------------------------------------------
      +unsigned G4UIcommand::IndexOf(const char* nam)
      +{
      +  unsigned i;
      +  G4String pname;
      +  for(i = 0; i < parameter.size(); ++i)
      +  {
      +    pname = parameter[i]->GetParameterName();
      +    if(pname == nam)
      +    {
      +      return i;
      +    }
      +  }
      +  paramERR = 1;
      +  G4cerr << "parameter name:" << nam << " not found." << G4endl;
      +  return 0;
      +}
      +
      +// --------------------------------------------------------------------
      +unsigned G4UIcommand::IsParameter(const char* nam)
      +{
      +  G4String pname;
      +  for(unsigned i = 0; i < parameter.size(); ++i)
      +  {
      +    pname = parameter[i]->GetParameterName();
      +    if(pname == nam)
      +      return 1;
      +  }
      +  return 0;
      +}
      +
      +// --------------------- utility functions ----------------------------
      +
      +tokenNum G4UIcommand::Yylex()  // reads input and returns token number, KR486
      +{                              // (returns EOF)
      +  G4int c;
      +  G4String buf;
      +
      +  while((c = G4UIpGetc()) == ' ' || c == '\t' || c == '\n')
      +    ;
      +  if(c == EOF)
      +    return (tokenNum) EOF;  // KR488
      +  buf = "";
      +  if(isdigit(c) || c == '.')
      +  {  // I or D
      +    do
      +    {
      +      buf += G4String((unsigned char) c);
      +      c = G4UIpGetc();
      +    } while(c == '.' || isdigit(c) || c == 'e' || c == 'E' || c == '+' ||
      +            c == '-');
      +    G4UIpUngetc(c);
      +    const char* t = buf;
      +    std::istringstream is(t);
      +    if(IsInt(buf.data(), 20))
      +    {
      +      is >> yylval.I;
      +      return CONSTINT;
      +    }
      +    else if(IsDouble(buf.data()))
      +    {
      +      is >> yylval.D;
      +      return CONSTDOUBLE;
      +    }
      +    else
      +    {
      +      G4cerr << buf << ": numeric format error." << G4endl;
      +    }
      +  }
      +  buf = "";
      +  if(isalpha(c) || c == '_')
      +  {  // IDENTIFIER
      +    do
      +    {
      +      buf += G4String((unsigned char) c);
      +    } while((c = G4UIpGetc()) != EOF && (isalnum(c) || c == '_'));
      +    G4UIpUngetc(c);
      +    if(IsParameter(buf))
      +    {
      +      yylval.S = buf;
      +      return IDENTIFIER;
      +    }
      +    else
      +    {
      +      G4cerr << buf << " is not a parameter name." << G4endl;
      +      paramERR = 1;
      +    }
      +  }
      +  switch(c)
      +  {
      +    case '>':
      +      return (tokenNum) Follow('=', GE, GT);
      +    case '<':
      +      return (tokenNum) Follow('=', LE, LT);
      +    case '=':
      +      return (tokenNum) Follow('=', EQ, '=');
      +    case '!':
      +      return (tokenNum) Follow('=', NE, '!');
      +    case '|':
      +      return (tokenNum) Follow('|', LOGICALOR, '|');
      +    case '&':
      +      return (tokenNum) Follow('&', LOGICALAND, '&');
      +    default:
      +      return (tokenNum) c;
      +  }
      +}
      +
      +// --------------------------------------------------------------------
      +G4int G4UIcommand::Follow(G4int expect, G4int ifyes, G4int ifno)
      +{
      +  G4int c = G4UIpGetc();
      +  if(c == expect)
      +    return ifyes;
      +  G4UIpUngetc(c);
      +  return ifno;
      +}
      +
      +//------------------ low level routines -------------------------------
      +
      +G4int G4UIcommand::G4UIpGetc()
      +{  // emulation of getc()
      +  G4int length = rangeString.length();
      +  if(bp < length)
      +    return rangeString(bp++);
      +  else
      +    return EOF;
      +}
      +
      +// --------------------------------------------------------------------
      +G4int G4UIcommand::G4UIpUngetc(G4int c)
      +{  // emulation of ungetc()
      +  if(c < 0)
      +    return -1;
      +  if(bp > 0 && c == rangeString(bp - 1))
      +  {
      +    --bp;
      +  }
      +  else
      +  {
      +    G4cerr << "G4UIpUngetc() failed." << G4endl;
      +    G4cerr << "bp=" << bp << " c=" << c << " pR(bp-1)=" << rangeString(bp - 1)
      +           << G4endl;
      +    paramERR = 1;
      +    return -1;
      +  }
      +  return 0;
       }
      diff --git a/source/intercoms/src/G4UIcommandTree.cc b/source/intercoms/src/G4UIcommandTree.cc
      index bc7d92d3d3..2b1fe4c9af 100644
      --- a/source/intercoms/src/G4UIcommandTree.cc
      +++ b/source/intercoms/src/G4UIcommandTree.cc
      @@ -23,117 +23,138 @@
       // * acceptance of all terms of the Geant4 Software license.          *
       // ********************************************************************
       //
      +// G4UIcommandTree
       //
      -//
      +// Author: Makoto Asai (SLAC), 1998
      +// --------------------------------------------------------------------
       
       #include "G4UIcommandTree.hh"
       #include "G4StateManager.hh"
       #include 
       #include "G4ios.hh"
       
      +// --------------------------------------------------------------------
       G4UIcommandTree::G4UIcommandTree()
      -:guidance(NULL),broadcastCommands(true)
      -{ }
      +{
      +}
       
      -G4UIcommandTree::G4UIcommandTree(const char * thePathName)
      -:guidance(NULL),broadcastCommands(true)
      +// --------------------------------------------------------------------
      +G4UIcommandTree::G4UIcommandTree(const char* thePathName)
       {
         pathName = thePathName;
       }
       
      +// --------------------------------------------------------------------
       G4UIcommandTree::~G4UIcommandTree()
       {
         G4int i;
         G4int n_treeEntry = tree.size();
      -  for( i=0; i < n_treeEntry; i++ )
      -  { delete tree[i]; }
      +  for(i = 0; i < n_treeEntry; ++i)
      +  {
      +    delete tree[i];
      +  }
       }
       
      -G4bool G4UIcommandTree::operator==(const G4UIcommandTree &right) const
      +// --------------------------------------------------------------------
      +G4bool G4UIcommandTree::operator==(const G4UIcommandTree& right) const
       {
      -  return ( pathName == right.GetPathName() );
      +  return (pathName == right.GetPathName());
       }
       
      -G4bool G4UIcommandTree::operator!=(const G4UIcommandTree &right) const
      +// --------------------------------------------------------------------
      +G4bool G4UIcommandTree::operator!=(const G4UIcommandTree& right) const
       {
      -  return ( pathName != right.GetPathName() );
      +  return (pathName != right.GetPathName());
       }
       
      -void G4UIcommandTree::AddNewCommand(G4UIcommand *newCommand, G4bool workerThreadOnly)
      +// --------------------------------------------------------------------
      +void G4UIcommandTree::AddNewCommand(G4UIcommand* newCommand,
      +                                    G4bool workerThreadOnly)
       {
      -  G4String commandPath = newCommand->GetCommandPath();
      +  G4String commandPath   = newCommand->GetCommandPath();
         G4String remainingPath = commandPath;
      -  remainingPath.remove(0,pathName.length());
      -  if( remainingPath.isNull() )
      +  remainingPath.remove(0, pathName.length());
      +  if(remainingPath.isNull())
         {
           if(!guidance)
           {
             guidance = newCommand;
      -      if(!(newCommand->ToBeBroadcasted())) broadcastCommands = false;
      -      if(workerThreadOnly) newCommand->SetWorkerThreadOnly();
      +      if(!(newCommand->ToBeBroadcasted()))
      +        broadcastCommands = false;
      +      if(workerThreadOnly)
      +        newCommand->SetWorkerThreadOnly();
           }
           return;
         }
         G4int i = remainingPath.first('/');
      -  if( i == G4int(std::string::npos) )
      +  if(i == G4int(std::string::npos))
         {
           // Find command
           G4int n_commandEntry = command.size();
      -    for( G4int i_thCommand = 0; i_thCommand < n_commandEntry; i_thCommand++ )
      +    for(G4int i_thCommand = 0; i_thCommand < n_commandEntry; ++i_thCommand)
           {
      -      if( remainingPath == command[i_thCommand]->GetCommandName() )
      -      { return; }
      +      if(remainingPath == command[i_thCommand]->GetCommandName())
      +      {
      +        return;
      +      }
           }
      -    if(!broadcastCommands) newCommand->SetToBeBroadcasted(false);
      -    if(workerThreadOnly) newCommand->SetWorkerThreadOnly();
      -    command.push_back( newCommand );
      +    if(!broadcastCommands)
      +      newCommand->SetToBeBroadcasted(false);
      +    if(workerThreadOnly)
      +      newCommand->SetWorkerThreadOnly();
      +    command.push_back(newCommand);
           return;
         }
         else
         {
           // Find path
           G4String nextPath = pathName;
      -    nextPath.append(remainingPath(0,i+1));
      +    nextPath.append(remainingPath(0, i + 1));
           G4int n_treeEntry = tree.size();
      -    for( G4int i_thTree = 0; i_thTree < n_treeEntry; i_thTree++ )
      +    for(G4int i_thTree = 0; i_thTree < n_treeEntry; ++i_thTree)
           {
      -      if( nextPath == tree[i_thTree]->GetPathName() )
      -      { 
      -        if(!broadcastCommands) newCommand->SetToBeBroadcasted(false);
      -	tree[i_thTree]->AddNewCommand( newCommand, workerThreadOnly );
      -	return; 
      +      if(nextPath == tree[i_thTree]->GetPathName())
      +      {
      +        if(!broadcastCommands)
      +          newCommand->SetToBeBroadcasted(false);
      +        tree[i_thTree]->AddNewCommand(newCommand, workerThreadOnly);
      +        return;
             }
           }
      -    G4UIcommandTree * newTree = new G4UIcommandTree( nextPath );
      -    tree.push_back( newTree );
      -    if(!broadcastCommands) newCommand->SetToBeBroadcasted(false);
      -    newTree->AddNewCommand( newCommand, workerThreadOnly );
      +    G4UIcommandTree* newTree = new G4UIcommandTree(nextPath);
      +    tree.push_back(newTree);
      +    if(!broadcastCommands)
      +      newCommand->SetToBeBroadcasted(false);
      +    newTree->AddNewCommand(newCommand, workerThreadOnly);
           return;
         }
       }
       
      -void G4UIcommandTree::RemoveCommand(G4UIcommand *aCommand, G4bool workerThreadOnly)
      +// --------------------------------------------------------------------
      +void G4UIcommandTree::RemoveCommand(G4UIcommand* aCommand,
      +                                    G4bool workerThreadOnly)
       {
      -  if(workerThreadOnly && !(aCommand->IsWorkerThreadOnly())) return;
      -  G4String commandPath = aCommand->GetCommandPath();
      +  if(workerThreadOnly && !(aCommand->IsWorkerThreadOnly()))
      +    return;
      +  G4String commandPath   = aCommand->GetCommandPath();
         G4String remainingPath = commandPath;
      -  remainingPath.remove(0,pathName.length());
      -  if( remainingPath.isNull() )
      +  remainingPath.remove(0, pathName.length());
      +  if(remainingPath.isNull())
         {
      -    guidance = NULL;
      +    guidance = nullptr;
         }
         else
         {
           G4int i = remainingPath.first('/');
      -    if( i == G4int(std::string::npos) )
      +    if(i == G4int(std::string::npos))
           {
             // Find command
             G4int n_commandEntry = command.size();
      -      for( G4int i_thCommand = 0; i_thCommand < n_commandEntry; i_thCommand++ )
      +      for(G4int i_thCommand = 0; i_thCommand < n_commandEntry; ++i_thCommand)
             {
      -        if( remainingPath == command[i_thCommand]->GetCommandName() )
      -        { 
      -          command.erase(command.begin()+i_thCommand);
      +        if(remainingPath == command[i_thCommand]->GetCommandName())
      +        {
      +          command.erase(command.begin() + i_thCommand);
                 break;
               }
             }
      @@ -142,191 +163,223 @@ void G4UIcommandTree::RemoveCommand(G4UIcommand *aCommand, G4bool workerThreadOn
           {
             // Find path
             G4String nextPath = pathName;
      -      nextPath.append(remainingPath(0,i+1));
      +      nextPath.append(remainingPath(0, i + 1));
             G4int n_treeEntry = tree.size();
      -      for( G4int i_thTree = 0; i_thTree < n_treeEntry; i_thTree++ )
      +      for(G4int i_thTree = 0; i_thTree < n_treeEntry; ++i_thTree)
             {
      -        if( nextPath == tree[i_thTree]->GetPathName() )
      -        { 
      -    	  tree[i_thTree]->RemoveCommand( aCommand );
      -    	  G4int n_commandRemain = tree[i_thTree]->GetCommandEntry();
      -        G4int n_treeRemain = tree[i_thTree]-> GetTreeEntry();
      -    	  if(n_commandRemain == 0 && n_treeRemain == 0)
      -    	  {
      -    	    G4UIcommandTree * emptyTree = tree[i_thTree];
      -    	    tree.erase(tree.begin()+i_thTree);
      -    	    delete emptyTree;
      -    	  }
      -    	  break;
      +        if(nextPath == tree[i_thTree]->GetPathName())
      +        {
      +          tree[i_thTree]->RemoveCommand(aCommand);
      +          G4int n_commandRemain = tree[i_thTree]->GetCommandEntry();
      +          G4int n_treeRemain    = tree[i_thTree]->GetTreeEntry();
      +          if(n_commandRemain == 0 && n_treeRemain == 0)
      +          {
      +            G4UIcommandTree* emptyTree = tree[i_thTree];
      +            tree.erase(tree.begin() + i_thTree);
      +            delete emptyTree;
      +          }
      +          break;
               }
             }
           }
         }
       }
       
      -// L. Garnier 01.28.08 This function has not a good name. In fact, it try
      -// to match a command name, not a path. It should be rename as FindCommandName
      -
      -G4UIcommand * G4UIcommandTree::FindPath(const char* commandPath) const
      +// --------------------------------------------------------------------
      +G4UIcommand* G4UIcommandTree::FindPath(const char* commandPath) const
       {
      +  // This function tries to match a command name
      +
         G4String remainingPath = commandPath;
      -  if( remainingPath.index( pathName ) == std::string::npos )
      -  { return NULL; }
      -  remainingPath.remove(0,pathName.length());
      +  if(remainingPath.index(pathName) == std::string::npos)
      +  {
      +    return nullptr;
      +  }
      +  remainingPath.remove(0, pathName.length());
         G4int i = remainingPath.first('/');
      -  if( i == G4int(std::string::npos) )
      +  if(i == G4int(std::string::npos))
         {
           // Find command
           G4int n_commandEntry = command.size();
      -    for( G4int i_thCommand = 0; i_thCommand < n_commandEntry; i_thCommand++ )
      +    for(G4int i_thCommand = 0; i_thCommand < n_commandEntry; ++i_thCommand)
           {
      -      if( remainingPath == command[i_thCommand]->GetCommandName() )
      -      { return command[i_thCommand]; }
      +      if(remainingPath == command[i_thCommand]->GetCommandName())
      +      {
      +        return command[i_thCommand];
      +      }
           }
         }
         else
         {
           // Find path
           G4String nextPath = pathName;
      -    nextPath.append(remainingPath(0,i+1));
      +    nextPath.append(remainingPath(0, i + 1));
           G4int n_treeEntry = tree.size();
      -    for( G4int i_thTree = 0; i_thTree < n_treeEntry; i_thTree++ )
      +    for(G4int i_thTree = 0; i_thTree < n_treeEntry; ++i_thTree)
           {
      -      if( nextPath == tree[i_thTree]->GetPathName() )
      -      { return tree[i_thTree]->FindPath( commandPath ); }
      +      if(nextPath == tree[i_thTree]->GetPathName())
      +      {
      +        return tree[i_thTree]->FindPath(commandPath);
      +      }
           }
         }
      -  return NULL;
      +  return nullptr;
       }
       
      -
      -/**
      - * Try to match a command or a path with the one given.
      - * @commandPath : command or path to match
      - * @return the commandTree found or NULL if not
      - */
      +// --------------------------------------------------------------------
       G4UIcommandTree* G4UIcommandTree::FindCommandTree(const char* commandPath)
       {
      +  // Try to match a command or a path with the one given.
      +  // @commandPath : command or path to match
      +  // @return the commandTree found or nullptr if not
      +
         G4String remainingPath = commandPath;
      -  if( remainingPath.index( pathName ) == std::string::npos )
      -  { return NULL; }
      -  remainingPath.remove(0,pathName.length());
      +  if(remainingPath.index(pathName) == std::string::npos)
      +  {
      +    return nullptr;
      +  }
      +  remainingPath.remove(0, pathName.length());
         G4int i = remainingPath.first('/');
      -  if( i != G4int(std::string::npos) )
      +  if(i != G4int(std::string::npos))
         {
           // Find path
           G4String nextPath = pathName;
      -    nextPath.append(remainingPath(0,i+1));
      +    nextPath.append(remainingPath(0, i + 1));
           G4int n_treeEntry = tree.size();
      -    for( G4int i_thTree = 0; i_thTree < n_treeEntry; i_thTree++ )
      +    for(G4int i_thTree = 0; i_thTree < n_treeEntry; ++i_thTree)
           {
      -      if (tree[i_thTree]->GetPathName() == commandPath) {
      +      if(tree[i_thTree]->GetPathName() == commandPath)
      +      {
               return tree[i_thTree];
             }
      -      else if( nextPath == tree[i_thTree]->GetPathName() ) {
      -        return tree[i_thTree]->FindCommandTree( commandPath );
      +      else if(nextPath == tree[i_thTree]->GetPathName())
      +      {
      +        return tree[i_thTree]->FindCommandTree(commandPath);
             }
           }
      -  } else {
      +  }
      +  else
      +  {
           return this;
         }
      -  return NULL;
      +  return nullptr;
       }
       
      +// --------------------------------------------------------------------
       G4String G4UIcommandTree::CompleteCommandPath(const G4String& aCommandPath)
       {
      -  G4String pName = aCommandPath;
      +  G4String pName         = aCommandPath;
         G4String remainingPath = aCommandPath;
      -  G4String empty = "";
      -  G4String matchingPath = empty;
      +  G4String empty         = "";
      +  G4String matchingPath  = empty;
       
         // find the tree
      -  G4int jpre= pName.last('/');
      -  if(jpre != G4int(G4String::npos)) pName.remove(jpre+1);
      +  G4int jpre = pName.last('/');
      +  if(jpre != G4int(G4String::npos))
      +    pName.remove(jpre + 1);
         G4UIcommandTree* aTree = FindCommandTree(pName);
       
      -  if (!aTree) {
      +  if(!aTree)
      +  {
           return empty;
         }
      -  
      -  if( pName.index( pName ) == std::string::npos ) return empty;
      +
      +  if(pName.index(pName) == std::string::npos)
      +    return empty;
       
         std::vector paths;
       
         // list matched directories/commands
         G4String strtmp;
      -  G4int nMatch= 0;
      +  G4int nMatch = 0;
      +
      +  G4int Ndir = aTree->GetTreeEntry();
      +  G4int Ncmd = aTree->GetCommandEntry();
       
      -  int Ndir= aTree-> GetTreeEntry();
      -  int Ncmd= aTree-> GetCommandEntry();
      -  
         // directory ...
      -  for(G4int idir=1; idir<=Ndir; idir++) {
      -    G4String fpdir= aTree-> GetTree(idir)-> GetPathName();
      +  for(G4int idir = 1; idir <= Ndir; ++idir)
      +  {
      +    G4String fpdir = aTree->GetTree(idir)->GetPathName();
           // matching test
      -    if( fpdir.index(remainingPath, 0) == 0) {
      -      if(nMatch==0) {
      +    if(fpdir.index(remainingPath, 0) == 0)
      +    {
      +      if(nMatch == 0)
      +      {
               matchingPath = fpdir;
      -      } else {
      -        matchingPath = GetFirstMatchedString(fpdir,matchingPath);
             }
      -      nMatch++;
      +      else
      +      {
      +        matchingPath = GetFirstMatchedString(fpdir, matchingPath);
      +      }
      +      ++nMatch;
             paths.push_back(fpdir);
           }
         }
      -  
      -  if (paths.size()>=2) {
      -    G4cout << "Matching directories :" << G4endl; 
      -    for( unsigned int i_thCommand = 0; i_thCommand < paths.size(); i_thCommand++ ) {
      -      G4cout << paths[i_thCommand] << G4endl; 
      +
      +  if(paths.size() >= 2)
      +  {
      +    G4cout << "Matching directories :" << G4endl;
      +    for(unsigned int i_thCommand = 0; i_thCommand < paths.size(); ++i_thCommand)
      +    {
      +      G4cout << paths[i_thCommand] << G4endl;
           }
         }
      -  
      +
         // command ...
         std::vector commands;
       
      -  for(G4int icmd=1; icmd<=Ncmd; icmd++){
      -    G4String fpcmd= aTree-> GetPathName() +
      -                    aTree-> GetCommand(icmd) -> GetCommandName();
      +  for(G4int icmd = 1; icmd <= Ncmd; ++icmd)
      +  {
      +    G4String fpcmd =
      +      aTree->GetPathName() + aTree->GetCommand(icmd)->GetCommandName();
           // matching test
      -    if( fpcmd.index(remainingPath, 0) ==0) {
      -      if(nMatch==0) {
      -        matchingPath= fpcmd + " ";
      -      } else {
      -        strtmp= fpcmd + " ";
      -        matchingPath= GetFirstMatchedString(matchingPath, strtmp);
      +    if(fpcmd.index(remainingPath, 0) == 0)
      +    {
      +      if(nMatch == 0)
      +      {
      +        matchingPath = fpcmd + " ";
      +      }
      +      else
      +      {
      +        strtmp       = fpcmd + " ";
      +        matchingPath = GetFirstMatchedString(matchingPath, strtmp);
             }
             nMatch++;
      -      commands.push_back(fpcmd+" ");
      +      commands.push_back(fpcmd + " ");
           }
         }
       
      -  if (commands.size()>=2) {
      -    G4cout << "Matching commands :" << G4endl; 
      -    for( unsigned int i_thCommand = 0; i_thCommand < commands.size(); i_thCommand++ ) {
      -      G4cout << commands[i_thCommand] << G4endl; 
      +  if(commands.size() >= 2)
      +  {
      +    G4cout << "Matching commands :" << G4endl;
      +    for(unsigned int i_thCommand = 0; i_thCommand < commands.size();
      +        ++i_thCommand)
      +    {
      +      G4cout << commands[i_thCommand] << G4endl;
           }
         }
       
         return matchingPath;
       }
       
      -
      -////////////////////////////////////////////////////////////////////
      -G4String G4UIcommandTree::GetFirstMatchedString(const G4String& str1, 
      -					 const G4String& str2) const
      -////////////////////////////////////////////////////////////////////
      +// --------------------------------------------------------------------
      +G4String G4UIcommandTree::GetFirstMatchedString(const G4String& str1,
      +                                                const G4String& str2) const
       {
      -  int nlen1= str1.length();
      -  int nlen2= str2.length();
      +  G4int nlen1 = str1.length();
      +  G4int nlen2 = str2.length();
       
      -  int nmin = nlen1List();
      +  if(guidance != nullptr)
      +    guidance->List();
         G4cout << " Sub-directories : " << G4endl;
         G4int n_treeEntry = tree.size();
      -  for( G4int i_thTree = 0; i_thTree < n_treeEntry; i_thTree++ )
      -  { 
      +  for(G4int i_thTree = 0; i_thTree < n_treeEntry; ++i_thTree)
      +  {
           G4cout << "   " << tree[i_thTree]->GetPathName();
           if(tree[i_thTree]->GetGuidance() &&
              tree[i_thTree]->GetGuidance()->IsWorkerThreadOnly())
      -    { G4cout << " @ "; }
      +    {
      +      G4cout << " @ ";
      +    }
           else
      -    { G4cout << "   "; }
      +    {
      +      G4cout << "   ";
      +    }
           G4cout << tree[i_thTree]->GetTitle() << G4endl;
         }
         G4cout << " Commands : " << G4endl;
         G4int n_commandEntry = command.size();
      -  for( G4int i_thCommand = 0; i_thCommand < n_commandEntry; i_thCommand++ )
      +  for(G4int i_thCommand = 0; i_thCommand < n_commandEntry; ++i_thCommand)
         {
           G4cout << "   " << command[i_thCommand]->GetCommandName();
           if(command[i_thCommand]->IsWorkerThreadOnly())
      -    { G4cout << " @ "; }
      +    {
      +      G4cout << " @ ";
      +    }
           else
      -    { G4cout << " * "; }
      +    {
      +      G4cout << " * ";
      +    }
           G4cout << command[i_thCommand]->GetTitle() << G4endl;
         }
       }
       
      +// --------------------------------------------------------------------
       void G4UIcommandTree::ListCurrentWithNum() const
       {
         G4cout << "Command directory path : " << pathName << G4endl;
      -  if( guidance != NULL ) guidance->List();
      +  if(guidance != nullptr)
      +    guidance->List();
         G4int i = 0;
         G4cout << " Sub-directories : " << G4endl;
         G4int n_treeEntry = tree.size();
      -  for( G4int i_thTree = 0; i_thTree < n_treeEntry; i_thTree++ )
      +  for(G4int i_thTree = 0; i_thTree < n_treeEntry; ++i_thTree)
         {
      -    i++;
      -    G4cout << " " << i << ") " << tree[i_thTree]->GetPathName() 
      -	 << "   " << tree[i_thTree]->GetTitle() << G4endl;
      +    ++i;
      +    G4cout << " " << i << ") " << tree[i_thTree]->GetPathName() << "   "
      +           << tree[i_thTree]->GetTitle() << G4endl;
         }
         G4cout << " Commands : " << G4endl;
         G4int n_commandEntry = command.size();
      -  for( G4int i_thCommand = 0; i_thCommand < n_commandEntry; i_thCommand++ )
      +  for(G4int i_thCommand = 0; i_thCommand < n_commandEntry; ++i_thCommand)
         {
      -    i++;
      -    G4cout << " " << i << ") " << command[i_thCommand]->GetCommandName() 
      -	 << " * " << command[i_thCommand]->GetTitle() << G4endl;
      +    ++i;
      +    G4cout << " " << i << ") " << command[i_thCommand]->GetCommandName()
      +           << " * " << command[i_thCommand]->GetTitle() << G4endl;
         }
       }
       
      +// --------------------------------------------------------------------
       void G4UIcommandTree::List() const
       {
         ListCurrent();
         G4int n_commandEntry = command.size();
      -  for( G4int i_thCommand = 0; i_thCommand < n_commandEntry; i_thCommand++ )
      +  for(G4int i_thCommand = 0; i_thCommand < n_commandEntry; ++i_thCommand)
         {
           command[i_thCommand]->List();
         }
         G4int n_treeEntry = tree.size();
      -  for( G4int i_thTree = 0; i_thTree < n_treeEntry; i_thTree++ )
      +  for(G4int i_thTree = 0; i_thTree < n_treeEntry; ++i_thTree)
         {
           tree[i_thTree]->List();
         }
       }
       
      +// --------------------------------------------------------------------
       G4String G4UIcommandTree::CreateFileName(const char* pName)
       {
         G4String fn = pName;
         G4int idxs;
      -  while((idxs=fn.index("/"))!=G4int(std::string::npos))
      -  { fn(idxs) = '_'; }
      +  while((idxs = fn.index("/")) != G4int(std::string::npos))
      +  {
      +    fn(idxs) = '_';
      +  }
         fn += ".html";
         return fn;
       }
       
      +// --------------------------------------------------------------------
       G4String G4UIcommandTree::ModStr(const char* strS)
       {
         G4String sx;
         G4String str = strS;
      -  for(G4int i=0;i':
      -      sx += ">"; break;
      -    case '&':
      -      sx += "&"; break;
      -    default:
      -      sx += c;
      +      case '<':
      +        sx += "<";
      +        break;
      +      case '>':
      +        sx += ">";
      +        break;
      +      case '&':
      +        sx += "&";
      +        break;
      +      default:
      +        sx += c;
           }
         }
         return sx;
       }
       
      +// --------------------------------------------------------------------
       void G4UIcommandTree::CreateHTML()
       {
         G4String ofileName = CreateFileName(pathName);
         std::ofstream oF(ofileName, std::ios::out);
       
      -  oF << "Commands in " << ModStr(pathName) << "" << G4endl;
      -  oF << "

      " << ModStr(pathName) << "

      " << G4endl; + oF << "Commands in " << ModStr(pathName) + << "" << G4endl; + oF << "

      " << ModStr(pathName) << "

      " + << G4endl; - if( guidance != nullptr ) + if(guidance != nullptr) { - for(size_t i=0;iGetGuidanceEntries();++i) - { oF << ModStr(guidance->GetGuidanceLine(i)) << "
      " << G4endl; } + for(std::size_t i = 0; i < guidance->GetGuidanceEntries(); ++i) + { + oF << ModStr(guidance->GetGuidanceLine(i)) << "
      " << G4endl; + } } oF << "


      " << G4endl; - + oF << "

      Sub-directories :


      " << G4endl; - + oF << "

      Commands :

      " << G4endl; - for( size_t i_thCommand = 0; i_thCommand < command.size(); ++i_thCommand ) + for(std::size_t i_thCommand = 0; i_thCommand < command.size(); ++i_thCommand) { G4UIcommand* cmd = command[i_thCommand]; oF << "


      " << ModStr(cmd->GetCommandName()); - if(cmd->GetParameterEntries()>0) + if(cmd->GetParameterEntries() > 0) { - for(size_t i_thParam=0;i_thParamGetParameterEntries();++i_thParam) - { oF << " [" << ModStr(cmd->GetParameter(i_thParam)->GetParameterName()) << "]"; } + for(std::size_t i_thParam = 0; i_thParam < cmd->GetParameterEntries(); + ++i_thParam) + { + oF << " [" + << ModStr(cmd->GetParameter(i_thParam)->GetParameterName()) + << "]"; + } } oF << "" << G4endl; oF << "

      " << G4endl; - for(size_t i=0;iGetGuidanceEntries();++i) - { oF << ModStr(cmd->GetGuidanceLine(i)) << "
      " << G4endl; } + for(std::size_t i = 0; i < cmd->GetGuidanceEntries(); ++i) + { + oF << ModStr(cmd->GetGuidanceLine(i)) << "
      " << G4endl; + } if(!(cmd->GetRange()).isNull()) - { oF << "

      Range : " << ModStr(cmd->GetRange()) << G4endl; } + { + oF << "

      Range : " << ModStr(cmd->GetRange()) << G4endl; + } std::vector* availabelStateList = cmd->GetStateList(); - if(availabelStateList->size()==6) - { oF << "

      Available at all Geant4 states." << G4endl; } + if(availabelStateList->size() == 6) + { + oF << "

      Available at all Geant4 states." << G4endl; + } else { oF << "

      Available Geant4 state(s) : "; - for(size_t ias=0;iassize();++ias) - { oF << G4StateManager::GetStateManager()->GetStateString((*availabelStateList)[ias]) << " " << G4endl; } + for(std::size_t ias = 0; ias < availabelStateList->size(); ++ias) + { + oF << G4StateManager::GetStateManager()->GetStateString( + (*availabelStateList)[ias]) + << " " << G4endl; + } } - if(cmd->GetParameterEntries()>0) + if(cmd->GetParameterEntries() > 0) { oF << "

      Parameters" << G4endl; - for(size_t i_thParam=0;i_thParamGetParameterEntries();++i_thParam) + for(std::size_t i_thParam = 0; i_thParam < cmd->GetParameterEntries(); + ++i_thParam) { G4UIparameter* prm = cmd->GetParameter(i_thParam); oF << "
      " << ModStr(prm->GetParameterName()) << G4endl; oF << "type " << prm->GetParameterType() << G4endl; oF << ""; if(prm->IsOmittable()) - { + { oF << "Omittable : "; if(prm->GetCurrentAsDefault()) - { oF << "current value is used as the default value." << G4endl; } + { + oF << "current value is used as the default value." << G4endl; + } else - { oF << "default value = " << prm->GetDefaultValue() << G4endl; } + { + oF << "default value = " << prm->GetDefaultValue() << G4endl; + } } oF << ""; if(!(prm->GetParameterRange()).isNull()) - { oF << "Parameter range : " << ModStr(prm->GetParameterRange()) << G4endl; } + { + oF << "Parameter range : " << ModStr(prm->GetParameterRange()) + << G4endl; + } else if(!(prm->GetParameterCandidates()).isNull()) - { oF << "Parameter candidates : " << ModStr(prm->GetParameterCandidates()) << G4endl; } + { + oF << "Parameter candidates : " + << ModStr(prm->GetParameterCandidates()) << G4endl; + } } oF << "
      " << G4endl; } - } - + oF << "
      " << G4endl; oF.close(); } +// -------------------------------------------------------------------- +G4UIcommandTree* G4UIcommandTree::GetTree(const char* comNameC) +{ + G4String comName = comNameC; + for(std::size_t i = 0; i < tree.size(); ++i) + { + if(comName == tree[i]->GetPathName()) + { + return tree[i]; + } + } + return nullptr; +} diff --git a/source/intercoms/src/G4UIcontrolMessenger.cc b/source/intercoms/src/G4UIcontrolMessenger.cc index 6bd4f2e8ae..a728a4eeab 100644 --- a/source/intercoms/src/G4UIcontrolMessenger.cc +++ b/source/intercoms/src/G4UIcontrolMessenger.cc @@ -23,8 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4UIcontrolMessenger // -// +// Author: Makoto Asai, SLAC - 2001 +// -------------------------------------------------------------------- #include #include "G4UIcontrolMessenger.hh" @@ -43,289 +45,326 @@ #include "G4ios.hh" +// -------------------------------------------------------------------- G4UIcontrolMessenger::G4UIcontrolMessenger() { controlDirectory = new G4UIdirectory("/control/"); controlDirectory->SetGuidance("UI control commands."); - macroPathCommand = new G4UIcmdWithAString("/control/macroPath",this); - macroPathCommand->SetGuidance("Set macro search path" + macroPathCommand = new G4UIcmdWithAString("/control/macroPath", this); + macroPathCommand->SetGuidance("Set macro search path" " with colon-separated list."); - macroPathCommand->SetParameterName("path",false); + macroPathCommand->SetParameterName("path", false); - ExecuteCommand = new G4UIcmdWithAString("/control/execute",this); + ExecuteCommand = new G4UIcmdWithAString("/control/execute", this); ExecuteCommand->SetGuidance("Execute a macro file."); - ExecuteCommand->SetParameterName("fileName",false); + ExecuteCommand->SetParameterName("fileName", false); ExecuteCommand->SetToBeBroadcasted(false); - loopCommand = new G4UIcommand("/control/loop",this); + loopCommand = new G4UIcommand("/control/loop", this); loopCommand->SetGuidance("Execute a macro file more than once."); loopCommand->SetGuidance("Loop counter can be used as an aliased variable."); - G4UIparameter* param1 = new G4UIparameter("macroFile",'s',false); + G4UIparameter* param1 = new G4UIparameter("macroFile", 's', false); loopCommand->SetParameter(param1); - G4UIparameter* param2 = new G4UIparameter("counterName",'s',false); + G4UIparameter* param2 = new G4UIparameter("counterName", 's', false); loopCommand->SetParameter(param2); - G4UIparameter* param3 = new G4UIparameter("initialValue",'d',false); + G4UIparameter* param3 = new G4UIparameter("initialValue", 'd', false); loopCommand->SetParameter(param3); - G4UIparameter* param4 = new G4UIparameter("finalValue",'d',false); + G4UIparameter* param4 = new G4UIparameter("finalValue", 'd', false); loopCommand->SetParameter(param4); - G4UIparameter* param5 = new G4UIparameter("stepSize",'d',true); + G4UIparameter* param5 = new G4UIparameter("stepSize", 'd', true); param5->SetDefaultValue(1.0); loopCommand->SetParameter(param5); loopCommand->SetToBeBroadcasted(false); - foreachCommand = new G4UIcommand("/control/foreach",this); + foreachCommand = new G4UIcommand("/control/foreach", this); foreachCommand->SetGuidance("Execute a macro file more than once."); - foreachCommand->SetGuidance("Loop counter can be used as an aliased variable."); + foreachCommand->SetGuidance( + "Loop counter can be used as an aliased variable."); foreachCommand->SetGuidance("Values must be separated by a space."); - G4UIparameter* param6 = new G4UIparameter("macroFile",'s',false); + G4UIparameter* param6 = new G4UIparameter("macroFile", 's', false); foreachCommand->SetParameter(param6); - G4UIparameter* param7 = new G4UIparameter("counterName",'s',false); + G4UIparameter* param7 = new G4UIparameter("counterName", 's', false); foreachCommand->SetParameter(param7); - G4UIparameter* param8 = new G4UIparameter("valueList",'s',false); + G4UIparameter* param8 = new G4UIparameter("valueList", 's', false); foreachCommand->SetParameter(param8); foreachCommand->SetToBeBroadcasted(false); - - suppressAbortionCommand = new G4UIcmdWithAnInteger("/control/suppressAbortion",this); - suppressAbortionCommand->SetGuidance("Suppress the program abortion caused by G4Exception."); - suppressAbortionCommand->SetGuidance("Suppression level = 0 : no suppression"); - suppressAbortionCommand->SetGuidance(" = 1 : suppress during EventProc state"); - suppressAbortionCommand->SetGuidance(" = 2 : full suppression, i.e. no abortion by G4Exception"); - suppressAbortionCommand->SetGuidance("When abortion is suppressed, you will get error messages issued by G4Exception,"); - suppressAbortionCommand->SetGuidance("and there is NO guarantee for the correct result after the G4Exception error message."); - suppressAbortionCommand->SetParameterName("level",true); + + suppressAbortionCommand = + new G4UIcmdWithAnInteger("/control/suppressAbortion", this); + suppressAbortionCommand->SetGuidance( + "Suppress the program abortion caused by G4Exception."); + suppressAbortionCommand->SetGuidance( + "Suppression level = 0 : no suppression"); + suppressAbortionCommand->SetGuidance( + " = 1 : suppress during EventProc state"); + suppressAbortionCommand->SetGuidance( + " = 2 : full suppression, i.e. no abortion by " + "G4Exception"); + suppressAbortionCommand->SetGuidance( + "When abortion is suppressed, you will get error messages issued by " + "G4Exception,"); + suppressAbortionCommand->SetGuidance( + "and there is NO guarantee for the correct result after the G4Exception " + "error message."); + suppressAbortionCommand->SetParameterName("level", true); suppressAbortionCommand->SetRange("level >= 0 && level <= 2"); suppressAbortionCommand->SetDefaultValue(0); - verboseCommand = new G4UIcmdWithAnInteger("/control/verbose",this); + verboseCommand = new G4UIcmdWithAnInteger("/control/verbose", this); verboseCommand->SetGuidance("Applied command will also be shown on screen."); verboseCommand->SetGuidance("This command is useful with MACRO file."); verboseCommand->SetGuidance(" 0 : silent"); verboseCommand->SetGuidance(" 1 : only the valid commands are shown."); verboseCommand->SetGuidance(" 2 : comment lines are also shown (default)."); - verboseCommand->SetParameterName("switch",true); + verboseCommand->SetParameterName("switch", true); verboseCommand->SetRange("switch >= 0 && switch <=2"); verboseCommand->SetDefaultValue(2); - - doublePrecCommand = new G4UIcmdWithABool("/control/useDoublePrecision",this); - doublePrecCommand->SetGuidance("Use double precision for printing out the current parameter value(s)."); - doublePrecCommand->SetParameterName("useDoublePrecision",true); + + doublePrecCommand = new G4UIcmdWithABool("/control/useDoublePrecision", this); + doublePrecCommand->SetGuidance( + "Use double precision for printing out the current parameter value(s)."); + doublePrecCommand->SetParameterName("useDoublePrecision", true); doublePrecCommand->SetDefaultValue(true); - historyCommand = new G4UIcmdWithAString("/control/saveHistory",this); + historyCommand = new G4UIcmdWithAString("/control/saveHistory", this); historyCommand->SetGuidance("Store command history to a file."); historyCommand->SetGuidance("Defaul file name is G4history.macro."); - historyCommand->SetParameterName("fileName",true); + historyCommand->SetParameterName("fileName", true); historyCommand->SetDefaultValue("G4History.macro"); - - stopStoreHistoryCommand - = new G4UIcmdWithoutParameter("/control/stopSavingHistory",this); + + stopStoreHistoryCommand = + new G4UIcmdWithoutParameter("/control/stopSavingHistory", this); stopStoreHistoryCommand->SetGuidance("Stop saving history file."); - aliasCommand = new G4UIcommand("/control/alias",this); + aliasCommand = new G4UIcommand("/control/alias", this); aliasCommand->SetGuidance("Set an alias."); aliasCommand->SetGuidance("String can be aliased by this command."); aliasCommand->SetGuidance("The string may contain one or more spaces,"); - aliasCommand->SetGuidance("the string must be enclosed by double quotes (\")."); + aliasCommand->SetGuidance( + "the string must be enclosed by double quotes (\")."); aliasCommand->SetGuidance("To use an alias, enclose the alias name with"); aliasCommand->SetGuidance("parenthesis \"{\" and \"}\"."); - G4UIparameter* aliasNameParam = new G4UIparameter("aliasName",'s',false); + G4UIparameter* aliasNameParam = new G4UIparameter("aliasName", 's', false); aliasCommand->SetParameter(aliasNameParam); - G4UIparameter* aliasValueParam = new G4UIparameter("aliasValue",'s',false); + G4UIparameter* aliasValueParam = new G4UIparameter("aliasValue", 's', false); aliasCommand->SetParameter(aliasValueParam); - unaliasCommand = new G4UIcmdWithAString("/control/unalias",this); + unaliasCommand = new G4UIcmdWithAString("/control/unalias", this); unaliasCommand->SetGuidance("Remove an alias."); - unaliasCommand->SetParameterName("aliasName",false); + unaliasCommand->SetParameterName("aliasName", false); - listAliasCommand = new G4UIcmdWithoutParameter("/control/listAlias",this); + listAliasCommand = new G4UIcmdWithoutParameter("/control/listAlias", this); listAliasCommand->SetGuidance("List aliases."); - getEnvCmd = new G4UIcmdWithAString("/control/getEnv",this); - getEnvCmd->SetGuidance("Get a shell environment variable and define it as an alias."); + getEnvCmd = new G4UIcmdWithAString("/control/getEnv", this); + getEnvCmd->SetGuidance( + "Get a shell environment variable and define it as an alias."); - getValCmd = new G4UIcommand("/control/getVal",this); - getValCmd->SetGuidance("Get the current value of the UI command and define it as an alias."); - getValCmd->SetGuidance("Command is ignored if the UI command does not support GetCurrentValue()."); + getValCmd = new G4UIcommand("/control/getVal", this); + getValCmd->SetGuidance( + "Get the current value of the UI command and define it as an alias."); + getValCmd->SetGuidance( + "Command is ignored if the UI command does not support GetCurrentValue()."); getValCmd->SetGuidance(" Syntax : "); - G4UIparameter* aliName = new G4UIparameter("alias_name",'s',false); + G4UIparameter* aliName = new G4UIparameter("alias_name", 's', false); getValCmd->SetParameter(aliName); - G4UIparameter* comName = new G4UIparameter("UI_command",'s',false); + G4UIparameter* comName = new G4UIparameter("UI_command", 's', false); getValCmd->SetParameter(comName); - G4UIparameter* iIdxParam = new G4UIparameter("iIdx",'i',true); + G4UIparameter* iIdxParam = new G4UIparameter("iIdx", 'i', true); iIdxParam->SetDefaultValue(0); getValCmd->SetParameter(iIdxParam); - echoCmd = new G4UIcmdWithAString("/control/echo",this); + echoCmd = new G4UIcmdWithAString("/control/echo", this); echoCmd->SetGuidance("Display the aliased value."); - shellCommand = new G4UIcmdWithAString("/control/shell",this); + shellCommand = new G4UIcmdWithAString("/control/shell", this); shellCommand->SetGuidance("Execute a (Unix) SHELL command."); - ManualCommand = new G4UIcmdWithAString("/control/manual",this); + ManualCommand = new G4UIcmdWithAString("/control/manual", this); ManualCommand->SetGuidance("Display all of sub-directories and commands."); ManualCommand->SetGuidance("Directory path should be given by FULL-PATH."); - ManualCommand->SetParameterName("dirPath",true); + ManualCommand->SetParameterName("dirPath", true); ManualCommand->SetDefaultValue("/"); ManualCommand->SetToBeBroadcasted(false); - HTMLCommand = new G4UIcmdWithAString("/control/createHTML",this); - HTMLCommand->SetGuidance("Generate HTML files for all of sub-directories and commands."); + HTMLCommand = new G4UIcmdWithAString("/control/createHTML", this); + HTMLCommand->SetGuidance( + "Generate HTML files for all of sub-directories and commands."); HTMLCommand->SetGuidance("Directory path should be given by FULL-PATH."); - HTMLCommand->SetParameterName("dirPath",true); + HTMLCommand->SetParameterName("dirPath", true); HTMLCommand->SetDefaultValue("/"); HTMLCommand->SetToBeBroadcasted(false); - maxStoredHistCommand = new G4UIcmdWithAnInteger("/control/maximumStoredHistory",this); - maxStoredHistCommand->SetGuidance("Set maximum number of stored UI commands."); - maxStoredHistCommand->SetParameterName("max",true); + maxStoredHistCommand = + new G4UIcmdWithAnInteger("/control/maximumStoredHistory", this); + maxStoredHistCommand->SetGuidance( + "Set maximum number of stored UI commands."); + maxStoredHistCommand->SetParameterName("max", true); maxStoredHistCommand->SetDefaultValue(20); - ifCommand = new G4UIcommand("/control/if",this); + ifCommand = new G4UIcommand("/control/if", this); ifCommand->SetGuidance("Execute a macro file if the expression is true."); ifCommand->SetGuidance(" Syntax : "); - G4UIparameter* leftParam = new G4UIparameter("left",'d',false); + G4UIparameter* leftParam = new G4UIparameter("left", 'd', false); ifCommand->SetParameter(leftParam); - G4UIparameter* compParam = new G4UIparameter("comp",'s',false); + G4UIparameter* compParam = new G4UIparameter("comp", 's', false); compParam->SetParameterCandidates("> >= < <= == !="); ifCommand->SetParameter(compParam); - G4UIparameter* rightParam = new G4UIparameter("right",'d',false); + G4UIparameter* rightParam = new G4UIparameter("right", 'd', false); ifCommand->SetParameter(rightParam); - G4UIparameter* macroFileParam = new G4UIparameter("macroFile",'s',false); + G4UIparameter* macroFileParam = new G4UIparameter("macroFile", 's', false); ifCommand->SetParameter(macroFileParam); ifCommand->SetToBeBroadcasted(false); - doifCommand = new G4UIcommand("/control/doif",this); + doifCommand = new G4UIcommand("/control/doif", this); doifCommand->SetGuidance("Execute a UI command if the expression is true."); doifCommand->SetGuidance(" Syntax : "); - G4UIparameter* doleftParam = new G4UIparameter("left",'d',false); + G4UIparameter* doleftParam = new G4UIparameter("left", 'd', false); doifCommand->SetParameter(doleftParam); - G4UIparameter* docompParam = new G4UIparameter("comp",'s',false); + G4UIparameter* docompParam = new G4UIparameter("comp", 's', false); docompParam->SetParameterCandidates("> >= < <= == !="); doifCommand->SetParameter(docompParam); - G4UIparameter* dorightParam = new G4UIparameter("right",'d',false); + G4UIparameter* dorightParam = new G4UIparameter("right", 'd', false); doifCommand->SetParameter(dorightParam); - G4UIparameter* comParam = new G4UIparameter("UI_command",'s',false); + G4UIparameter* comParam = new G4UIparameter("UI_command", 's', false); doifCommand->SetParameter(comParam); doifCommand->SetToBeBroadcasted(false); - addCommand = new G4UIcommand("/control/add",this); + addCommand = new G4UIcommand("/control/add", this); addCommand->SetGuidance("Define a new alias as the sum of two values."); addCommand->SetGuidance(" Syntax : "); - addCommand->SetGuidance(" may be an already existing alias. If it is the case,"); + addCommand->SetGuidance( + " may be an already existing alias. If it is the case,"); addCommand->SetGuidance(" aliased value is alternated."); - G4UIparameter* newAlias1 = new G4UIparameter("new_alias",'s',false); + G4UIparameter* newAlias1 = new G4UIparameter("new_alias", 's', false); addCommand->SetParameter(newAlias1); - G4UIparameter* val1a = new G4UIparameter("value1",'d',false); + G4UIparameter* val1a = new G4UIparameter("value1", 'd', false); addCommand->SetParameter(val1a); - G4UIparameter* val1b = new G4UIparameter("value2",'d',false); + G4UIparameter* val1b = new G4UIparameter("value2", 'd', false); addCommand->SetParameter(val1b); addCommand->SetToBeBroadcasted(false); - subtractCommand = new G4UIcommand("/control/subtract",this); - subtractCommand->SetGuidance("Define a new alias as the subtraction of two values."); + subtractCommand = new G4UIcommand("/control/subtract", this); + subtractCommand->SetGuidance( + "Define a new alias as the subtraction of two values."); subtractCommand->SetGuidance(" Syntax : "); - subtractCommand->SetGuidance(" may be an already existing alias. If it is the case,"); + subtractCommand->SetGuidance( + " may be an already existing alias. If it is the case,"); subtractCommand->SetGuidance(" aliased value is alternated."); - G4UIparameter* newAlias2 = new G4UIparameter("new_alias",'s',false); + G4UIparameter* newAlias2 = new G4UIparameter("new_alias", 's', false); subtractCommand->SetParameter(newAlias2); - G4UIparameter* val2a = new G4UIparameter("value1",'d',false); + G4UIparameter* val2a = new G4UIparameter("value1", 'd', false); subtractCommand->SetParameter(val2a); - G4UIparameter* val2b = new G4UIparameter("value2",'d',false); + G4UIparameter* val2b = new G4UIparameter("value2", 'd', false); subtractCommand->SetParameter(val2b); subtractCommand->SetToBeBroadcasted(false); - multiplyCommand = new G4UIcommand("/control/multiply",this); - multiplyCommand->SetGuidance("Define a new alias as the multiplication of two values."); + multiplyCommand = new G4UIcommand("/control/multiply", this); + multiplyCommand->SetGuidance( + "Define a new alias as the multiplication of two values."); multiplyCommand->SetGuidance(" Syntax : "); - multiplyCommand->SetGuidance(" may be an already existing alias. If it is the case,"); + multiplyCommand->SetGuidance( + " may be an already existing alias. If it is the case,"); multiplyCommand->SetGuidance(" aliased value is alternated."); - G4UIparameter* newAlias3 = new G4UIparameter("new_alias",'s',false); + G4UIparameter* newAlias3 = new G4UIparameter("new_alias", 's', false); multiplyCommand->SetParameter(newAlias3); - G4UIparameter* val3a = new G4UIparameter("value1",'d',false); + G4UIparameter* val3a = new G4UIparameter("value1", 'd', false); multiplyCommand->SetParameter(val3a); - G4UIparameter* val3b = new G4UIparameter("value2",'d',false); + G4UIparameter* val3b = new G4UIparameter("value2", 'd', false); multiplyCommand->SetParameter(val3b); multiplyCommand->SetToBeBroadcasted(false); - divideCommand = new G4UIcommand("/control/divide",this); - divideCommand->SetGuidance("Define a new alias as the division of two values."); + divideCommand = new G4UIcommand("/control/divide", this); + divideCommand->SetGuidance( + "Define a new alias as the division of two values."); divideCommand->SetGuidance(" Syntax : "); - divideCommand->SetGuidance(" may be an already existing alias. If it is the case,"); + divideCommand->SetGuidance( + " may be an already existing alias. If it is the case,"); divideCommand->SetGuidance(" aliased value is alternated."); - G4UIparameter* newAlias4 = new G4UIparameter("new_alias",'s',false); + G4UIparameter* newAlias4 = new G4UIparameter("new_alias", 's', false); divideCommand->SetParameter(newAlias4); - G4UIparameter* val4a = new G4UIparameter("value1",'d',false); + G4UIparameter* val4a = new G4UIparameter("value1", 'd', false); divideCommand->SetParameter(val4a); - G4UIparameter* val4b = new G4UIparameter("value2",'d',false); + G4UIparameter* val4b = new G4UIparameter("value2", 'd', false); val4b->SetParameterRange("value2 != 0."); divideCommand->SetParameter(val4b); divideCommand->SetToBeBroadcasted(false); - remainderCommand = new G4UIcommand("/control/remainder",this); - remainderCommand->SetGuidance("Define a new alias as the remainder of two values."); + remainderCommand = new G4UIcommand("/control/remainder", this); + remainderCommand->SetGuidance( + "Define a new alias as the remainder of two values."); remainderCommand->SetGuidance(" Syntax : "); - remainderCommand->SetGuidance(" may be an already existing alias. If it is the case,"); + remainderCommand->SetGuidance( + " may be an already existing alias. If it is the case,"); remainderCommand->SetGuidance(" aliased value is alternated."); - G4UIparameter* newAlias5 = new G4UIparameter("new_alias",'s',false); + G4UIparameter* newAlias5 = new G4UIparameter("new_alias", 's', false); remainderCommand->SetParameter(newAlias5); - G4UIparameter* val5a = new G4UIparameter("value1",'i',false); + G4UIparameter* val5a = new G4UIparameter("value1", 'i', false); remainderCommand->SetParameter(val5a); - G4UIparameter* val5b = new G4UIparameter("value2",'i',false); + G4UIparameter* val5b = new G4UIparameter("value2", 'i', false); val4b->SetParameterRange("value2 != 0"); remainderCommand->SetParameter(val5b); remainderCommand->SetToBeBroadcasted(false); - strifCommand = new G4UIcommand("/control/strif",this); + strifCommand = new G4UIcommand("/control/strif", this); strifCommand->SetGuidance("Execute a macro file if the expression is true."); strifCommand->SetGuidance(" Syntax : "); - G4UIparameter* strleftParam = new G4UIparameter("left",'s',false); + G4UIparameter* strleftParam = new G4UIparameter("left", 's', false); strifCommand->SetParameter(strleftParam); - G4UIparameter* strcompParam = new G4UIparameter("comp",'s',false); + G4UIparameter* strcompParam = new G4UIparameter("comp", 's', false); strcompParam->SetParameterCandidates("== !="); strifCommand->SetParameter(strcompParam); - G4UIparameter* strrightParam = new G4UIparameter("right",'s',false); + G4UIparameter* strrightParam = new G4UIparameter("right", 's', false); strifCommand->SetParameter(strrightParam); - G4UIparameter* strmacroFileParam = new G4UIparameter("macroFile",'s',false); + G4UIparameter* strmacroFileParam = new G4UIparameter("macroFile", 's', false); strifCommand->SetParameter(strmacroFileParam); strifCommand->SetToBeBroadcasted(false); - strdoifCommand = new G4UIcommand("/control/strdoif",this); - strdoifCommand->SetGuidance("Execute a UI command if the expression is true."); - strdoifCommand->SetGuidance(" Syntax : "); - G4UIparameter* strdoleftParam = new G4UIparameter("left",'s',false); + strdoifCommand = new G4UIcommand("/control/strdoif", this); + strdoifCommand->SetGuidance( + "Execute a UI command if the expression is true."); + strdoifCommand->SetGuidance( + " Syntax : "); + G4UIparameter* strdoleftParam = new G4UIparameter("left", 's', false); strdoifCommand->SetParameter(strdoleftParam); - G4UIparameter* strdocompParam = new G4UIparameter("comp",'s',false); + G4UIparameter* strdocompParam = new G4UIparameter("comp", 's', false); strdocompParam->SetParameterCandidates("== !="); strdoifCommand->SetParameter(strdocompParam); - G4UIparameter* strdorightParam = new G4UIparameter("right",'s',false); + G4UIparameter* strdorightParam = new G4UIparameter("right", 's', false); strdoifCommand->SetParameter(strdorightParam); - G4UIparameter* strdomacroFileParam = new G4UIparameter("UI_command",'s',false); + G4UIparameter* strdomacroFileParam = + new G4UIparameter("UI_command", 's', false); strdoifCommand->SetParameter(strdomacroFileParam); strdoifCommand->SetToBeBroadcasted(false); - ifBatchCommand = new G4UIcmdWithAString("/control/ifBatch",this); - ifBatchCommand->SetGuidance("Execute a macro file if program is running in batch mode."); - ifBatchCommand->SetParameterName("macroFile",false); + ifBatchCommand = new G4UIcmdWithAString("/control/ifBatch", this); + ifBatchCommand->SetGuidance( + "Execute a macro file if program is running in batch mode."); + ifBatchCommand->SetParameterName("macroFile", false); ifBatchCommand->SetToBeBroadcasted(false); - ifInteractiveCommand = new G4UIcmdWithAString("/control/ifInteractive",this); - ifInteractiveCommand->SetGuidance("Execute a macro file if program is running in interactive mode."); - ifInteractiveCommand->SetParameterName("macroFile",false); + ifInteractiveCommand = new G4UIcmdWithAString("/control/ifInteractive", this); + ifInteractiveCommand->SetGuidance( + "Execute a macro file if program is running in interactive mode."); + ifInteractiveCommand->SetParameterName("macroFile", false); ifInteractiveCommand->SetToBeBroadcasted(false); - doifBatchCommand = new G4UIcmdWithAString("/control/doifBatch",this); - doifBatchCommand->SetGuidance("Execute a UI command if program is running in batch mode."); - doifBatchCommand->SetParameterName("UIcommand",false); + doifBatchCommand = new G4UIcmdWithAString("/control/doifBatch", this); + doifBatchCommand->SetGuidance( + "Execute a UI command if program is running in batch mode."); + doifBatchCommand->SetParameterName("UIcommand", false); doifBatchCommand->SetToBeBroadcasted(false); - doifInteractiveCommand = new G4UIcmdWithAString("/control/doifInteractive",this); - doifInteractiveCommand->SetGuidance("Execute a UI command if program is running in interactive mode."); - doifInteractiveCommand->SetParameterName("UIcommand",false); + doifInteractiveCommand = + new G4UIcmdWithAString("/control/doifInteractive", this); + doifInteractiveCommand->SetGuidance( + "Execute a UI command if program is running in interactive mode."); + doifInteractiveCommand->SetParameterName("UIcommand", false); doifInteractiveCommand->SetToBeBroadcasted(false); - } +// -------------------------------------------------------------------- G4UIcontrolMessenger::~G4UIcontrolMessenger() { delete macroPathCommand; @@ -344,7 +383,7 @@ G4UIcontrolMessenger::~G4UIcontrolMessenger() delete echoCmd; delete shellCommand; delete loopCommand; - delete foreachCommand; + delete foreachCommand; delete HTMLCommand; delete maxStoredHistCommand; delete ifCommand; @@ -360,118 +399,127 @@ G4UIcontrolMessenger::~G4UIcontrolMessenger() delete ifInteractiveCommand; delete doifBatchCommand; delete doifInteractiveCommand; - delete controlDirectory; } -void G4UIcontrolMessenger::SetNewValue(G4UIcommand * command,G4String newValue) +// -------------------------------------------------------------------- +void G4UIcontrolMessenger::SetNewValue(G4UIcommand* command, G4String newValue) { - G4UImanager * UI = G4UImanager::GetUIpointer(); + G4UImanager* UI = G4UImanager::GetUIpointer(); - if( command == macroPathCommand) { - UI-> SetMacroSearchPath(newValue); - UI-> ParseMacroSearchPath(); - } - if(command==ExecuteCommand) + if(command == macroPathCommand) + { + UI->SetMacroSearchPath(newValue); + UI->ParseMacroSearchPath(); + } + if(command == ExecuteCommand) { command->ResetFailure(); - UI-> ExecuteMacroFile(UI-> FindMacroPath(newValue)); + UI->ExecuteMacroFile(UI->FindMacroPath(newValue)); if(UI->GetLastReturnCode() != 0) { G4ExceptionDescription ed; ed << "Command aborted (" << UI->GetLastReturnCode() << ")"; - command->CommandFailed(UI->GetLastReturnCode(),ed); + command->CommandFailed(UI->GetLastReturnCode(), ed); } } - if(command==suppressAbortionCommand) + if(command == suppressAbortionCommand) { - G4StateManager::GetStateManager()->SetSuppressAbortion(suppressAbortionCommand->GetNewIntValue(newValue)); + G4StateManager::GetStateManager()->SetSuppressAbortion( + suppressAbortionCommand->GetNewIntValue(newValue)); } - if(command==verboseCommand) + if(command == verboseCommand) { UI->SetVerboseLevel(verboseCommand->GetNewIntValue(newValue)); } - if(command==doublePrecCommand) + if(command == doublePrecCommand) { - G4UImanager::UseDoublePrecisionStr(doublePrecCommand->GetNewBoolValue(newValue)); + G4UImanager::UseDoublePrecisionStr( + doublePrecCommand->GetNewBoolValue(newValue)); } - if(command==historyCommand) + if(command == historyCommand) { - UI->StoreHistory(newValue); + UI->StoreHistory(newValue); } - if(command==stopStoreHistoryCommand) + if(command == stopStoreHistoryCommand) { - UI->StoreHistory(false); + UI->StoreHistory(false); } - if(command==ManualCommand) + if(command == ManualCommand) { UI->ListCommands(newValue); } - if(command==aliasCommand) + if(command == aliasCommand) { UI->SetAlias(newValue); } - if(command==unaliasCommand) + if(command == unaliasCommand) { UI->RemoveAlias(newValue); } - if(command==listAliasCommand) + if(command == listAliasCommand) { UI->ListAlias(); } - if(command==getEnvCmd) + if(command == getEnvCmd) { command->ResetFailure(); if(std::getenv(newValue)) - { + { G4String st = newValue; st += " "; st += std::getenv(newValue); UI->SetAlias(st.c_str()); } else - { + { G4ExceptionDescription ed; - ed << "<" << newValue << "> is not defined as a shell variable. Command ignored."; + ed << "<" << newValue + << "> is not defined as a shell variable. Command ignored."; command->CommandFailed(ed); } } - if(command==getValCmd) + if(command == getValCmd) { G4Tokenizer next(newValue); G4String aliName = next(); - G4String com = next(); - G4String curVal = UI->GetCurrentValues(com); + G4String com = next(); + G4String curVal = UI->GetCurrentValues(com); if(!(curVal.isNull())) - { + { G4String theValue = curVal; - G4String iIdx = next(); + G4String iIdx = next(); if(!(iIdx.isNull())) { G4int idx = StoI(iIdx); G4Tokenizer nextVal(curVal); - for(G4int i = 0;i<=idx;i++) - { theValue = nextVal(); } + for(G4int i = 0; i <= idx; i++) + { + theValue = nextVal(); + } } G4String st = "/control/alias "; st += aliName + " " + theValue; UI->ApplyCommand(st); } } - if(command==echoCmd) - { G4cout << UI->SolveAlias(newValue) << G4endl; } - if(command==shellCommand) + if(command == echoCmd) + { + G4cout << UI->SolveAlias(newValue) << G4endl; + } + if(command == shellCommand) { command->ResetFailure(); int rc = system(newValue); - if ( rc < 0 ) - { + if(rc < 0) + { G4ExceptionDescription ed; - ed << "<" << newValue << "> is not a valid shell command. Command ignored."; + ed << "<" << newValue + << "> is not a valid shell command. Command ignored."; command->CommandFailed(ed); } } - if(command==loopCommand) + if(command == loopCommand) { command->ResetFailure(); UI->LoopS(newValue); @@ -479,10 +527,10 @@ void G4UIcontrolMessenger::SetNewValue(G4UIcommand * command,G4String newValue) { G4ExceptionDescription ed; ed << "Command aborted (" << UI->GetLastReturnCode() << ")"; - command->CommandFailed(UI->GetLastReturnCode(),ed); + command->CommandFailed(UI->GetLastReturnCode(), ed); } } - if(command==foreachCommand) + if(command == foreachCommand) { command->ResetFailure(); UI->ForeachS(newValue); @@ -490,211 +538,253 @@ void G4UIcontrolMessenger::SetNewValue(G4UIcommand * command,G4String newValue) { G4ExceptionDescription ed; ed << "Command aborted (" << UI->GetLastReturnCode() << ")"; - command->CommandFailed(UI->GetLastReturnCode(),ed); + command->CommandFailed(UI->GetLastReturnCode(), ed); } } - if(command==HTMLCommand) + if(command == HTMLCommand) { UI->CreateHTML(newValue); } - if(command==maxStoredHistCommand) + if(command == maxStoredHistCommand) { UI->SetMaxHistSize(maxStoredHistCommand->GetNewIntValue(newValue)); } - if(command==ifCommand) + if(command == ifCommand) { G4Tokenizer next(newValue); - G4double l = StoD(next()); + G4double l = StoD(next()); G4String comp = next(); - G4double r = StoD(next()); - G4String mac = next(); - G4bool x = false; - if(comp==">") x = (l>r); - else if(comp==">=") x = (l>=r); - else if(comp=="<") x = (lExecuteMacroFile(mac); + G4double r = StoD(next()); + G4String mac = next(); + G4bool x = false; + if(comp == ">") + x = (l > r); + else if(comp == ">=") + x = (l >= r); + else if(comp == "<") + x = (l < r); + else if(comp == "<=") + x = (l <= r); + else if(comp == "==") + x = (l == r); + else if(comp == "!=") + x = (l != r); + if(x) + UI->ExecuteMacroFile(mac); } - if(command==doifCommand) + if(command == doifCommand) { G4Tokenizer next(newValue); - G4double l = StoD(next()); + G4double l = StoD(next()); G4String comp = next(); - G4double r = StoD(next()); + G4double r = StoD(next()); G4String c1 = next(); G4String ca; - while(!((ca=next()).isNull())) + while(!((ca = next()).isNull())) { c1 += " "; c1 += ca; } - if(c1(0)=='"') + if(c1(0) == '"') { G4String strippedValue; - if(c1(c1.length()-1)=='"') - { strippedValue = c1(1,c1.length()-2); } + if(c1(c1.length() - 1) == '"') + { + strippedValue = c1(1, c1.length() - 2); + } else - { strippedValue = c1(1,c1.length()-1); } + { + strippedValue = c1(1, c1.length() - 1); + } c1 = strippedValue; } G4bool x = false; - if(comp==">") x = (l>r); - else if(comp==">=") x = (l>=r); - else if(comp=="<") x = (lApplyCommand(c1); + if(comp == ">") + x = (l > r); + else if(comp == ">=") + x = (l >= r); + else if(comp == "<") + x = (l < r); + else if(comp == "<=") + x = (l <= r); + else if(comp == "==") + x = (l == r); + else if(comp == "!=") + x = (l != r); + if(x) + UI->ApplyCommand(c1); } - if(command==addCommand) + if(command == addCommand) { G4Tokenizer next(newValue); G4String newA = next(); - G4double l = StoD(next()); - G4double r = StoD(next()); - G4String st = "/control/alias "; + G4double l = StoD(next()); + G4double r = StoD(next()); + G4String st = "/control/alias "; st += newA; st += " "; - st += DtoS(l+r); + st += DtoS(l + r); UI->ApplyCommand(st); } - if(command==subtractCommand) + if(command == subtractCommand) { G4Tokenizer next(newValue); G4String newA = next(); - G4double l = StoD(next()); - G4double r = StoD(next()); - G4String st = "/control/alias "; + G4double l = StoD(next()); + G4double r = StoD(next()); + G4String st = "/control/alias "; st += newA; st += " "; - st += DtoS(l-r); + st += DtoS(l - r); UI->ApplyCommand(st); } - if(command==multiplyCommand) + if(command == multiplyCommand) { G4Tokenizer next(newValue); G4String newA = next(); - G4double l = StoD(next()); - G4double r = StoD(next()); - G4String st = "/control/alias "; + G4double l = StoD(next()); + G4double r = StoD(next()); + G4String st = "/control/alias "; st += newA; st += " "; - st += DtoS(l*r); + st += DtoS(l * r); UI->ApplyCommand(st); } - if(command==divideCommand) + if(command == divideCommand) { G4Tokenizer next(newValue); G4String newA = next(); - G4double l = StoD(next()); - G4double r = StoD(next()); - G4String st = "/control/alias "; + G4double l = StoD(next()); + G4double r = StoD(next()); + G4String st = "/control/alias "; st += newA; st += " "; - st += DtoS(l/r); + st += DtoS(l / r); UI->ApplyCommand(st); } - if(command==remainderCommand) + if(command == remainderCommand) { G4Tokenizer next(newValue); G4String newA = next(); - G4int l = StoI(next()); - G4int r = StoI(next()); - G4String st = "/control/alias "; + G4int l = StoI(next()); + G4int r = StoI(next()); + G4String st = "/control/alias "; st += newA; st += " "; - st += DtoS(l%r); + st += DtoS(l % r); UI->ApplyCommand(st); } - if(command==strifCommand) + if(command == strifCommand) { G4Tokenizer next(newValue); - G4String l = next(); + G4String l = next(); G4String comp = next(); - G4String r = next(); - G4String mac = next(); - G4bool x = false; - if(comp=="==") { x = (l==r); } - else if(comp=="!=") { x = (l!=r); } - if(x) UI->ExecuteMacroFile(mac); + G4String r = next(); + G4String mac = next(); + G4bool x = false; + if(comp == "==") + { + x = (l == r); + } + else if(comp == "!=") + { + x = (l != r); + } + if(x) + UI->ExecuteMacroFile(mac); } - if(command==strdoifCommand) + if(command == strdoifCommand) { G4Tokenizer next(newValue); - G4String l = next(); + G4String l = next(); G4String comp = next(); - G4String r = next(); + G4String r = next(); G4String c1 = next(); G4String ca; - while(!((ca=next()).isNull())) + while(!((ca = next()).isNull())) { c1 += " "; c1 += ca; } - if(c1(0)=='"') + if(c1(0) == '"') { G4String strippedValue; - if(c1(c1.length()-1)=='"') - { strippedValue = c1(1,c1.length()-2); } + if(c1(c1.length() - 1) == '"') + { + strippedValue = c1(1, c1.length() - 2); + } else - { strippedValue = c1(1,c1.length()-1); } + { + strippedValue = c1(1, c1.length() - 1); + } c1 = strippedValue; } G4bool x = false; - if(comp=="==") { x = (l==r); } - else if(comp=="!=") { x = (l!=r); } - if(x) UI->ApplyCommand(c1); + if(comp == "==") + { + x = (l == r); + } + else if(comp == "!=") + { + x = (l != r); + } + if(x) + UI->ApplyCommand(c1); } - if(command==ifBatchCommand) + if(command == ifBatchCommand) { - if(G4UIsession::InSession()==0) UI->ExecuteMacroFile(UI->FindMacroPath(newValue)); + if(G4UIsession::InSession() == 0) + UI->ExecuteMacroFile(UI->FindMacroPath(newValue)); } - if(command==ifInteractiveCommand) + if(command == ifInteractiveCommand) { - if(G4UIsession::InSession()>0) UI->ExecuteMacroFile(UI->FindMacroPath(newValue)); + if(G4UIsession::InSession() > 0) + UI->ExecuteMacroFile(UI->FindMacroPath(newValue)); } - if(command==doifBatchCommand) + if(command == doifBatchCommand) { - if(G4UIsession::InSession()==0) UI->ApplyCommand(newValue); + if(G4UIsession::InSession() == 0) + UI->ApplyCommand(newValue); } - if(command==doifInteractiveCommand) + if(command == doifInteractiveCommand) { - if(G4UIsession::InSession()>0) UI->ApplyCommand(newValue); + if(G4UIsession::InSession() > 0) + UI->ApplyCommand(newValue); } } -G4String G4UIcontrolMessenger::GetCurrentValue(G4UIcommand * command) +// -------------------------------------------------------------------- +G4String G4UIcontrolMessenger::GetCurrentValue(G4UIcommand* command) { - G4UImanager * UI = G4UImanager::GetUIpointer(); + G4UImanager* UI = G4UImanager::GetUIpointer(); G4String currentValue; - - if( command == macroPathCommand ) { - currentValue = UI-> GetMacroSearchPath(); + + if(command == macroPathCommand) + { + currentValue = UI->GetMacroSearchPath(); } - if(command==verboseCommand) + if(command == verboseCommand) { currentValue = verboseCommand->ConvertToString(UI->GetVerboseLevel()); } - if(command==doublePrecCommand) + if(command == doublePrecCommand) { - currentValue = doublePrecCommand->ConvertToString(G4UImanager::DoublePrecisionStr()); + currentValue = + doublePrecCommand->ConvertToString(G4UImanager::DoublePrecisionStr()); } - if(command==suppressAbortionCommand) + if(command == suppressAbortionCommand) { - currentValue = suppressAbortionCommand->ConvertToString(G4StateManager::GetStateManager()->GetSuppressAbortion()); + currentValue = suppressAbortionCommand->ConvertToString( + G4StateManager::GetStateManager()->GetSuppressAbortion()); } - if(command==maxStoredHistCommand) + if(command == maxStoredHistCommand) { currentValue = maxStoredHistCommand->ConvertToString(UI->GetMaxHistSize()); } - + return currentValue; } - - diff --git a/source/intercoms/src/G4UIdirectory.cc b/source/intercoms/src/G4UIdirectory.cc index 13657349e7..56077bdef9 100644 --- a/source/intercoms/src/G4UIdirectory.cc +++ b/source/intercoms/src/G4UIdirectory.cc @@ -23,17 +23,23 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4UIdirectory // -// -// +// Author: Makoto Asai, 1998 +// -------------------------------------------------------------------- #include "G4UIdirectory.hh" -G4UIdirectory::G4UIdirectory(char * theCommandPath,G4bool commandsToBeBroadcasted) -:G4UIcommand(theCommandPath,NULL,commandsToBeBroadcasted) -{;} - -G4UIdirectory::G4UIdirectory(const char * theCommandPath,G4bool commandsToBeBroadcasted) -:G4UIcommand(theCommandPath,NULL,commandsToBeBroadcasted) -{;} +// -------------------------------------------------------------------- +G4UIdirectory::G4UIdirectory(char* theCommandPath, + G4bool commandsToBeBroadcasted) + : G4UIcommand(theCommandPath, nullptr, commandsToBeBroadcasted) +{ +} +// -------------------------------------------------------------------- +G4UIdirectory::G4UIdirectory(const char* theCommandPath, + G4bool commandsToBeBroadcasted) + : G4UIcommand(theCommandPath, nullptr, commandsToBeBroadcasted) +{ +} diff --git a/source/intercoms/src/G4UImanager.cc b/source/intercoms/src/G4UImanager.cc index 9ec858bcbf..3617144f5a 100644 --- a/source/intercoms/src/G4UImanager.cc +++ b/source/intercoms/src/G4UImanager.cc @@ -23,10 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4UImanager // -// -// -// --------------------------------------------------------------------- +// Author: Makoto Asai, 1997 +// -------------------------------------------------------------------- #include "G4UImanager.hh" #include "G4UIcommandTree.hh" @@ -36,6 +36,7 @@ #include "G4UIcontrolMessenger.hh" #include "G4UnitsMessenger.hh" #include "G4LocalThreadCoutMessenger.hh" +#include "G4ProfilerMessenger.hh" #include "G4ios.hh" #include "G4strstreambuf.hh" #include "G4StateManager.hh" @@ -48,30 +49,34 @@ #include #include -G4UImanager*& G4UImanager::fUImanager() -{ - G4ThreadLocalStatic G4UImanager* _instance = nullptr; - return _instance; -} - -G4bool& G4UImanager::fUImanagerHasBeenKilled() -{ - G4ThreadLocalStatic bool _instance = false; - return _instance; -} - -G4UImanager*& G4UImanager::fMasterUImanager() -{ - static G4UImanager* _instance = nullptr; - return _instance; -} G4bool G4UImanager::doublePrecisionStr = false; - G4int G4UImanager::igThreadID = -1; -G4UImanager * G4UImanager::GetUIpointer() +// -------------------------------------------------------------------- +G4UImanager*& G4UImanager::fUImanager() { - if(!fUImanager()) + G4ThreadLocalStatic G4UImanager* _instance = nullptr; + return _instance; +} + +// -------------------------------------------------------------------- +G4bool& G4UImanager::fUImanagerHasBeenKilled() +{ + G4ThreadLocalStatic G4bool _instance = false; + return _instance; +} + +// -------------------------------------------------------------------- +G4UImanager*& G4UImanager::fMasterUImanager() +{ + static G4UImanager* _instance = nullptr; + return _instance; +} + +// -------------------------------------------------------------------- +G4UImanager* G4UImanager::GetUIpointer() +{ + if(fUImanager() == nullptr) { if(!fUImanagerHasBeenKilled()) { @@ -82,115 +87,85 @@ G4UImanager * G4UImanager::GetUIpointer() return fUImanager(); } -G4UImanager * G4UImanager::GetMasterUIpointer() -{ return fMasterUImanager(); } - -G4UImanager::G4UImanager() - : G4VStateDependent(true), - UImessenger(0), UnitsMessenger(0), CoutMessenger(0), - isMaster(false),bridges(0), - ignoreCmdNotFound(false), stackCommandsForBroadcast(false), - threadID(-1), threadCout(0), lastRC(0) +// -------------------------------------------------------------------- +G4UImanager* G4UImanager::GetMasterUIpointer() { - savedCommand = 0; - treeTop = new G4UIcommandTree("/"); - aliasList = new G4UIaliasList; - G4String nullString; - savedParameters = nullString; - verboseLevel = 0; - saveHistory = false; - session = nullptr; - g4UIWindow = nullptr; + return fMasterUImanager(); +} + +// -------------------------------------------------------------------- +G4UImanager::G4UImanager() + : G4VStateDependent(true) +{ + treeTop = new G4UIcommandTree("/"); + aliasList = new G4UIaliasList; SetCoutDestination(session); - pauseAtBeginOfEvent = false; - pauseAtEndOfEvent = false; - maxHistSize = 20; - searchPath=""; commandStack = new std::vector; } +// -------------------------------------------------------------------- void G4UImanager::CreateMessenger() { - UImessenger = new G4UIcontrolMessenger; - UnitsMessenger = new G4UnitsMessenger; - CoutMessenger = new G4LocalThreadCoutMessenger; + UImessenger = new G4UIcontrolMessenger; + UnitsMessenger = new G4UnitsMessenger; + CoutMessenger = new G4LocalThreadCoutMessenger; + ProfileMessenger = new G4ProfilerMessenger; } +// -------------------------------------------------------------------- G4UImanager::~G4UImanager() { - if(bridges) + if(bridges != nullptr) { - std::vector::iterator itr = bridges->begin(); - for(;itr!=bridges->end();itr++) - { delete *itr; } + for(auto itr = bridges->cbegin(); itr != bridges->cend(); ++itr) + { + delete *itr; + } delete bridges; } SetCoutDestination(nullptr); histVec.clear(); - if(saveHistory) historyFile.close(); + if(saveHistory) + historyFile.close(); delete CoutMessenger; + delete ProfileMessenger; delete UnitsMessenger; delete UImessenger; delete treeTop; delete aliasList; fUImanagerHasBeenKilled() = true; - fUImanager() = nullptr; - if(commandStack) + fUImanager() = nullptr; + if(commandStack != nullptr) { commandStack->clear(); delete commandStack; } - if(threadID >= 0) + if(threadID >= 0) { - if(threadCout) delete threadCout; + delete threadCout; G4iosFinalization(); threadID = -1; } } -G4UImanager::G4UImanager(const G4UImanager& ui) - : G4VStateDependent(true) +// -------------------------------------------------------------------- +void G4UImanager::UseDoublePrecisionStr(G4bool val) { - UImessenger = ui.UImessenger; - UnitsMessenger = ui.UnitsMessenger; - aliasList = ui.aliasList; - g4UIWindow = ui.g4UIWindow; - savedCommand= ui.savedCommand; - session = ui.session; - treeTop = ui.treeTop; - verboseLevel = ui.verboseLevel; - saveHistory = ui.saveHistory; - CoutMessenger = 0; - maxHistSize = ui.maxHistSize; - pauseAtBeginOfEvent = ui.pauseAtBeginOfEvent; - pauseAtEndOfEvent = ui.pauseAtEndOfEvent; - isMaster = ui.isMaster; - bridges = ui.bridges; - ignoreCmdNotFound = ui.ignoreCmdNotFound; - stackCommandsForBroadcast = ui.stackCommandsForBroadcast; - commandStack = ui.commandStack; - threadID = ui.threadID; - threadCout = ui.threadCout; - CreateMessenger(); + doublePrecisionStr = val; } -const G4UImanager & G4UImanager::operator=(const G4UImanager &right) -{ return right; } -G4bool G4UImanager::operator==(const G4UImanager &right) const -{ return (this==&right); } -G4bool G4UImanager::operator!=(const G4UImanager &right) const -{ return (this!=&right); } - -void G4UImanager::UseDoublePrecisionStr(G4bool val) -{ doublePrecisionStr = val; } +// -------------------------------------------------------------------- G4bool G4UImanager::DoublePrecisionStr() -{ return doublePrecisionStr; } +{ + return doublePrecisionStr; +} -G4String G4UImanager::GetCurrentValues(const char * aCommand) +// -------------------------------------------------------------------- +G4String G4UImanager::GetCurrentValues(const char* aCommand) { G4String theCommand = aCommand; - savedCommand = treeTop->FindPath( theCommand ); - if( savedCommand == nullptr ) + savedCommand = treeTop->FindPath(theCommand); + if(savedCommand == nullptr) { G4cerr << "command not found" << G4endl; return G4String(); @@ -198,20 +173,22 @@ G4String G4UImanager::GetCurrentValues(const char * aCommand) return savedCommand->GetCurrentValue(); } -G4String G4UImanager::GetCurrentStringValue(const char * aCommand, -G4int parameterNumber, G4bool reGet) +// -------------------------------------------------------------------- +G4String G4UImanager::GetCurrentStringValue(const char* aCommand, + G4int parameterNumber, G4bool reGet) { if(reGet || savedCommand == nullptr) { - savedParameters = GetCurrentValues( aCommand ); + savedParameters = GetCurrentValues(aCommand); } - G4Tokenizer savedToken( savedParameters ); + G4Tokenizer savedToken(savedParameters); G4String token; - for(G4int i_thParameter=0;i_thParameterGetParameterEntries();++i) + for(std::size_t i = 0; i < savedCommand->GetParameterEntries(); ++i) { - if( aParameterName == - savedCommand->GetParameter(i)->GetParameterName() ) - return GetCurrentStringValue(aCommand,i+1,false); + if(aParameterName == savedCommand->GetParameter(i)->GetParameterName()) + return GetCurrentStringValue(aCommand, i + 1, false); } return G4String(); } -G4int G4UImanager::GetCurrentIntValue(const char * aCommand, -const char * aParameterName, G4bool reGet) +// -------------------------------------------------------------------- +G4int G4UImanager::GetCurrentIntValue(const char* aCommand, + const char* aParameterName, G4bool reGet) { G4String targetParameter = - GetCurrentStringValue( aCommand, aParameterName, reGet ); + GetCurrentStringValue(aCommand, aParameterName, reGet); G4int value; const char* t = targetParameter; std::istringstream is(t); @@ -248,11 +227,12 @@ const char * aParameterName, G4bool reGet) return value; } -G4int G4UImanager::GetCurrentIntValue(const char * aCommand, -G4int parameterNumber, G4bool reGet) +// -------------------------------------------------------------------- +G4int G4UImanager::GetCurrentIntValue(const char* aCommand, + G4int parameterNumber, G4bool reGet) { G4String targetParameter = - GetCurrentStringValue( aCommand, parameterNumber, reGet ); + GetCurrentStringValue(aCommand, parameterNumber, reGet); G4int value; const char* t = targetParameter; std::istringstream is(t); @@ -260,11 +240,13 @@ G4int parameterNumber, G4bool reGet) return value; } -G4double G4UImanager::GetCurrentDoubleValue(const char * aCommand, -const char * aParameterName, G4bool reGet) +// -------------------------------------------------------------------- +G4double G4UImanager::GetCurrentDoubleValue(const char* aCommand, + const char* aParameterName, + G4bool reGet) { G4String targetParameter = - GetCurrentStringValue( aCommand, aParameterName, reGet ); + GetCurrentStringValue(aCommand, aParameterName, reGet); G4double value; const char* t = targetParameter; std::istringstream is(t); @@ -272,11 +254,12 @@ const char * aParameterName, G4bool reGet) return value; } -G4double G4UImanager::GetCurrentDoubleValue(const char * aCommand, -G4int parameterNumber, G4bool reGet) +// -------------------------------------------------------------------- +G4double G4UImanager::GetCurrentDoubleValue(const char* aCommand, + G4int parameterNumber, G4bool reGet) { G4String targetParameter = - GetCurrentStringValue( aCommand, parameterNumber, reGet ); + GetCurrentStringValue(aCommand, parameterNumber, reGet); G4double value; const char* t = targetParameter; std::istringstream is(t); @@ -284,41 +267,51 @@ G4int parameterNumber, G4bool reGet) return value; } -void G4UImanager::AddNewCommand(G4UIcommand * newCommand) +// -------------------------------------------------------------------- +void G4UImanager::AddNewCommand(G4UIcommand* newCommand) { - treeTop->AddNewCommand( newCommand ); - if(fMasterUImanager()!=0&&G4Threading::G4GetThreadId()==0) - { fMasterUImanager()->AddWorkerCommand(newCommand); } + treeTop->AddNewCommand(newCommand); + if(fMasterUImanager() != nullptr && G4Threading::G4GetThreadId() == 0) + { + fMasterUImanager()->AddWorkerCommand(newCommand); + } } -void G4UImanager::AddWorkerCommand(G4UIcommand * newCommand) +// -------------------------------------------------------------------- +void G4UImanager::AddWorkerCommand(G4UIcommand* newCommand) { - treeTop->AddNewCommand( newCommand, true ); + treeTop->AddNewCommand(newCommand, true); } -void G4UImanager::RemoveCommand(G4UIcommand * aCommand) +// -------------------------------------------------------------------- +void G4UImanager::RemoveCommand(G4UIcommand* aCommand) { - treeTop->RemoveCommand( aCommand ); - if(fMasterUImanager()!=0&&G4Threading::G4GetThreadId()==0) - { fMasterUImanager()->RemoveWorkerCommand(aCommand); } + treeTop->RemoveCommand(aCommand); + if(fMasterUImanager() != nullptr && G4Threading::G4GetThreadId() == 0) + { + fMasterUImanager()->RemoveWorkerCommand(aCommand); + } } -void G4UImanager::RemoveWorkerCommand(G4UIcommand * aCommand) +// -------------------------------------------------------------------- +void G4UImanager::RemoveWorkerCommand(G4UIcommand* aCommand) { - treeTop->RemoveCommand( aCommand, true ); + treeTop->RemoveCommand(aCommand, true); } -void G4UImanager::ExecuteMacroFile(const char * fileName) +// -------------------------------------------------------------------- +void G4UImanager::ExecuteMacroFile(const char* fileName) { - G4UIsession* batchSession = new G4UIbatch(fileName,session); - session = batchSession; - lastRC = 0; + G4UIsession* batchSession = new G4UIbatch(fileName, session); + session = batchSession; + lastRC = 0; G4UIsession* previousSession = session->SessionStart(); - lastRC = session->GetLastReturnCode(); + lastRC = session->GetLastReturnCode(); delete session; session = previousSession; } +// -------------------------------------------------------------------- void G4UImanager::LoopS(const char* valueList) { G4String vl = valueList; @@ -336,33 +329,39 @@ void G4UImanager::LoopS(const char* valueList) G4double d2; G4double d3; is >> d1 >> d2 >> d3; - Loop(mf,vn,d1,d2,d3); + Loop(mf, vn, d1, d2, d3); } -void G4UImanager::Loop(const char * macroFile,const char * variableName, - G4double initialValue,G4double finalValue,G4double stepSize) +// -------------------------------------------------------------------- +void G4UImanager::Loop(const char* macroFile, const char* variableName, + G4double initialValue, G4double finalValue, + G4double stepSize) { G4String cd; - if (stepSize > 0) { - for(G4double d=initialValue;d<=finalValue;d+=stepSize) - { - std::ostringstream os; - os << d; - cd += os.str(); - cd += " "; - } - } else { - for(G4double d=initialValue;d>=finalValue;d+=stepSize) - { - std::ostringstream os; - os << d; - cd += os.str(); - cd += " "; - } + if(stepSize > 0) + { + for(G4double d = initialValue; d <= finalValue; d += stepSize) + { + std::ostringstream os; + os << d; + cd += os.str(); + cd += " "; + } } - Foreach(macroFile,variableName,cd); + else + { + for(G4double d = initialValue; d >= finalValue; d += stepSize) + { + std::ostringstream os; + os << d; + cd += os.str(); + cd += " "; + } + } + Foreach(macroFile, variableName, cd); } +// -------------------------------------------------------------------- void G4UImanager::ForeachS(const char* valueList) { G4String vl = valueList; @@ -371,87 +370,98 @@ void G4UImanager::ForeachS(const char* valueList) G4String vn = parameterToken(); G4String c1 = parameterToken(); G4String ca; - while(!((ca=parameterToken()).isNull())) + while(!((ca = parameterToken()).isNull())) { c1 += " "; c1 += ca; } G4String aliasValue = c1; - if(aliasValue(0)=='"') + if(aliasValue(0) == '"') { G4String strippedValue; - if(aliasValue(aliasValue.length()-1)=='"') - { strippedValue = aliasValue(1,aliasValue.length()-2); } + if(aliasValue(aliasValue.length() - 1) == '"') + { + strippedValue = aliasValue(1, aliasValue.length() - 2); + } else - { strippedValue = aliasValue(1,aliasValue.length()-1); } + { + strippedValue = aliasValue(1, aliasValue.length() - 1); + } aliasValue = strippedValue; } -// Foreach(mf,vn,c1); - Foreach(mf,vn,aliasValue); + // Foreach(mf,vn,c1); + Foreach(mf, vn, aliasValue); } -void G4UImanager::Foreach(const char * macroFile,const char * variableName, - const char * candidates) +// -------------------------------------------------------------------- +void G4UImanager::Foreach(const char* macroFile, const char* variableName, + const char* candidates) { G4String candidatesString = candidates; - G4Tokenizer parameterToken( candidatesString ); + G4Tokenizer parameterToken(candidatesString); G4String cd; - while(!((cd=parameterToken()).isNull())) + while(!((cd = parameterToken()).isNull())) { G4String vl = variableName; vl += " "; vl += cd; SetAlias(vl); ExecuteMacroFile(FindMacroPath(macroFile)); - if(lastRC!=0) + if(lastRC != 0) { G4ExceptionDescription ed; ed << "Loop aborted due to a command execution error - " << "error code " << lastRC; - G4Exception("G4UImanager::Foreach","UIMAN0201",JustWarning,ed); + G4Exception("G4UImanager::Foreach", "UIMAN0201", JustWarning, ed); break; } } } - +// -------------------------------------------------------------------- G4String G4UImanager::SolveAlias(const char* aCmd) { G4String aCommand = aCmd; - G4int ia = aCommand.index("{"); - G4int iz = aCommand.index("#"); - while((ia != G4int(std::string::npos))&&((iz==G4int(std::string::npos))||(ia0) subs = aCommand(0,ia); - G4String alis = aCommand(ia+1,ibx-ia-1); - G4String rems = aCommand(ibx+1,aCommand.length()-ibx); - // G4cout << "<" << subs << "> <" << alis << "> <" << rems << ">" << G4endl; + if(ia > 0) + subs = aCommand(0, ia); + G4String alis = aCommand(ia + 1, ibx - ia - 1); + G4String rems = aCommand(ibx + 1, aCommand.length() - ibx); G4String* alVal = aliasList->FindAlias(alis); if(!alVal) { @@ -459,32 +469,34 @@ G4String G4UImanager::SolveAlias(const char* aCmd) G4String nullStr; return nullStr; } - aCommand = subs+(*alVal)+rems; - ia = aCommand.index("{"); + aCommand = subs + (*alVal) + rems; + ia = aCommand.index("{"); } return aCommand; } +// -------------------------------------------------------------------- G4int G4UImanager::ApplyCommand(const G4String& aCmd) { return ApplyCommand(aCmd.data()); } -#include "G4Threading.hh" - -G4int G4UImanager::ApplyCommand(const char * aCmd) +// -------------------------------------------------------------------- +G4int G4UImanager::ApplyCommand(const char* aCmd) { G4String aCommand = SolveAlias(aCmd); - if(aCommand.isNull()) return fAliasNotFound; - if(verboseLevel) G4cout << aCommand << G4endl; + if(aCommand.isNull()) + return fAliasNotFound; + if(verboseLevel) + G4cout << aCommand << G4endl; G4String commandString; G4String commandParameter; - size_t i = aCommand.index(" "); - if( i != std::string::npos ) + std::size_t i = aCommand.index(" "); + if(i != std::string::npos) { - commandString = aCommand(0,i); - commandParameter = aCommand(i+1,aCommand.length()-(i+1)); + commandString = aCommand(0, i); + commandParameter = aCommand(i + 1, aCommand.length() - (i + 1)); } else { @@ -493,65 +505,82 @@ G4int G4UImanager::ApplyCommand(const char * aCmd) // remove doubled slash G4int len = commandString.length(); - G4int ll = 0; + G4int ll = 0; G4String a1; G4String a2; - while(ll::iterator itr = bridges->begin(); - for(;itr!=bridges->end();itr++) { - G4int leng = (*itr)->DirLength(); - if(commandString(0,leng)==(*itr)->DirName()) - { return (*itr)->LocalUI()->ApplyCommand(commandString+" "+commandParameter); } + ++ll; } } - G4UIcommand * targetCommand = treeTop->FindPath( commandString ); - if( targetCommand == nullptr ) + if(isMaster && bridges != nullptr) + { + for(auto itr = bridges->cbegin(); itr != bridges->cend(); ++itr) + { + G4int leng = (*itr)->DirLength(); + if(commandString(0, leng) == (*itr)->DirName()) + { + return (*itr)->LocalUI()->ApplyCommand(commandString + " " + + commandParameter); + } + } + } + + G4UIcommand* targetCommand = treeTop->FindPath(commandString); + if(targetCommand == nullptr) { if(ignoreCmdNotFound) { if(stackCommandsForBroadcast) - { commandStack->push_back(commandString+" "+commandParameter); } + { + commandStack->push_back(commandString + " " + commandParameter); + } return fCommandSucceeded; } else - { return fCommandNotFound; } + { + return fCommandNotFound; + } } if(stackCommandsForBroadcast && targetCommand->ToBeBroadcasted()) - { commandStack->push_back(commandString+" "+commandParameter); } + { + commandStack->push_back(commandString + " " + commandParameter); + } if(!(targetCommand->IsAvailable())) - { return fIllegalApplicationState; } + { + return fIllegalApplicationState; + } - if(saveHistory) historyFile << aCommand << G4endl; - if( G4int(histVec.size()) >= maxHistSize ) - { histVec.erase(histVec.begin()); } + if(saveHistory) + historyFile << aCommand << G4endl; + if(G4int(histVec.size()) >= maxHistSize) + { + histVec.erase(histVec.begin()); + } histVec.push_back(aCommand); targetCommand->ResetFailure(); - G4int commandFailureCode = targetCommand->DoIt( commandParameter ); - if(commandFailureCode==0) + G4int commandFailureCode = targetCommand->DoIt(commandParameter); + if(commandFailureCode == 0) { G4int additionalFailureCode = targetCommand->IfCommandFailed(); if(additionalFailureCode > 0) @@ -559,24 +588,29 @@ G4int G4UImanager::ApplyCommand(const char * aCmd) G4ExceptionDescription msg; msg << targetCommand->GetFailureDescription() << "\n" << "Error code : " << additionalFailureCode; - G4Exception("G4UImanager::ApplyCommand","UIMAN0123", - JustWarning,msg); + G4Exception("G4UImanager::ApplyCommand", "UIMAN0123", JustWarning, msg); commandFailureCode += additionalFailureCode; } } return commandFailureCode; } +// -------------------------------------------------------------------- void G4UImanager::StoreHistory(const char* fileName) -{ StoreHistory(true,fileName); } +{ + StoreHistory(true, fileName); +} -void G4UImanager::StoreHistory(G4bool historySwitch,const char* fileName) +// -------------------------------------------------------------------- +void G4UImanager::StoreHistory(G4bool historySwitch, const char* fileName) { if(historySwitch) { if(saveHistory) - { historyFile.close(); } - historyFile.open((char*)fileName); + { + historyFile.close(); + } + historyFile.open((char*) fileName); saveHistory = true; } else @@ -587,187 +621,214 @@ void G4UImanager::StoreHistory(G4bool historySwitch,const char* fileName) saveHistory = historySwitch; } +// -------------------------------------------------------------------- void G4UImanager::PauseSession(const char* msg) { - if(session) session->PauseSessionStart(msg); + if(session) + session->PauseSessionStart(msg); } +// -------------------------------------------------------------------- void G4UImanager::ListCommands(const char* direct) { G4UIcommandTree* comTree = FindDirectory(direct); - if(comTree) - { comTree->List(); } + if(comTree != nullptr) + { + comTree->List(); + } else - { G4cout << direct << " is not found." << G4endl; } + { + G4cout << direct << " is not found." << G4endl; + } } +// -------------------------------------------------------------------- G4UIcommandTree* G4UImanager::FindDirectory(const char* dirName) { - G4String aDirName = dirName; + G4String aDirName = dirName; G4String targetDir = aDirName.strip(G4String::both); - if( targetDir( targetDir.length()-1 ) != '/' ) - { targetDir += "/"; } - G4UIcommandTree* comTree = treeTop; - if( targetDir == "/" ) - { return comTree; } - G4int idx = 1; - while( idx < G4int(targetDir.length())-1 ) + if(targetDir(targetDir.length() - 1) != '/') { - G4int i = targetDir.index("/",idx); - G4String targetDirString = targetDir(0,i+1); - comTree = comTree->GetTree(targetDirString); - if( comTree == nullptr ) - { return nullptr; } - idx = i+1; + targetDir += "/"; + } + G4UIcommandTree* comTree = treeTop; + if(targetDir == "/") + { + return comTree; + } + G4int idx = 1; + while(idx < G4int(targetDir.length()) - 1) + { + G4int i = targetDir.index("/", idx); + G4String targetDirString = targetDir(0, i + 1); + comTree = comTree->GetTree(targetDirString); + if(comTree == nullptr) + { + return nullptr; + } + idx = i + 1; } return comTree; } +// -------------------------------------------------------------------- G4bool G4UImanager::Notify(G4ApplicationState requestedState) { - //G4cout << G4StateManager::GetStateManager()->GetStateString(requestedState) << " <--- " << G4StateManager::GetStateManager()->GetStateString(G4StateManager::GetStateManager()->GetPreviousState()) << G4endl; if(pauseAtBeginOfEvent) { - if(requestedState==G4State_EventProc && - G4StateManager::GetStateManager()->GetPreviousState()==G4State_GeomClosed) - { PauseSession("BeginOfEvent"); } + if(requestedState == G4State_EventProc && + G4StateManager::GetStateManager()->GetPreviousState() == + G4State_GeomClosed) + { + PauseSession("BeginOfEvent"); + } } if(pauseAtEndOfEvent) { - if(requestedState==G4State_GeomClosed && - G4StateManager::GetStateManager()->GetPreviousState()==G4State_EventProc) - { PauseSession("EndOfEvent"); } + if(requestedState == G4State_GeomClosed && + G4StateManager::GetStateManager()->GetPreviousState() == + G4State_EventProc) + { + PauseSession("EndOfEvent"); + } } return true; } -//void G4UImanager::Interact() -//{ -// Interact(G4String("G4> ")); -//} - -//void G4UImanager::Interact(const char * pC) -//{ -// G4cerr << "G4UImanager::Interact() is out of date and is not used anymore." << G4endl; -// G4cerr << "This method will be removed shortly!!!" << G4endl; -// G4cerr << "In case of main() use" << G4endl; -// G4cerr << " G4UIsession * session = new G4UIterminal;" << G4endl; -// G4cerr << " session->SessionStart();" << G4endl; -// G4cerr << "In other cases use" << G4endl; -// G4cerr << " G4StateManager::GetStateManager()->Pause();" << G4endl; -//} - - - -void G4UImanager::SetCoutDestination(G4UIsession *const value) +// -------------------------------------------------------------------- +void G4UImanager::SetCoutDestination(G4UIsession* const value) { - G4coutbuf.SetDestination(value); - G4cerrbuf.SetDestination(value); + G4coutbuf.SetDestination(value); + G4cerrbuf.SetDestination(value); } -void G4UImanager::SetAlias(const char * aliasLine) +// -------------------------------------------------------------------- +void G4UImanager::SetAlias(const char* aliasLine) { - G4String aLine = aliasLine; - G4int i = aLine.index(" "); - G4String aliasName = aLine(0,i); - G4String aliasValue = aLine(i+1,aLine.length()-(i+1)); - if(aliasValue(0)=='"') + G4String aLine = aliasLine; + G4int i = aLine.index(" "); + G4String aliasName = aLine(0, i); + G4String aliasValue = aLine(i + 1, aLine.length() - (i + 1)); + if(aliasValue(0) == '"') { G4String strippedValue; - if(aliasValue(aliasValue.length()-1)=='"') - { strippedValue = aliasValue(1,aliasValue.length()-2); } + if(aliasValue(aliasValue.length() - 1) == '"') + { + strippedValue = aliasValue(1, aliasValue.length() - 2); + } else - { strippedValue = aliasValue(1,aliasValue.length()-1); } + { + strippedValue = aliasValue(1, aliasValue.length() - 1); + } aliasValue = strippedValue; } - aliasList->ChangeAlias(aliasName,aliasValue); + aliasList->ChangeAlias(aliasName, aliasValue); } -void G4UImanager::RemoveAlias(const char * aliasName) +// -------------------------------------------------------------------- +void G4UImanager::RemoveAlias(const char* aliasName) { - G4String aL = aliasName; + G4String aL = aliasName; G4String targetAlias = aL.strip(G4String::both); aliasList->RemoveAlias(targetAlias); } +// -------------------------------------------------------------------- void G4UImanager::ListAlias() { aliasList->List(); } +// -------------------------------------------------------------------- void G4UImanager::CreateHTML(const char* dir) { G4UIcommandTree* tr = FindDirectory(dir); - if(tr!=0) - { tr->CreateHTML(); } + if(tr != nullptr) + { + tr->CreateHTML(); + } else - { G4cerr << "Directory <" << dir << "> is not found." << G4endl; } + { + G4cerr << "Directory <" << dir << "> is not found." << G4endl; + } } +// -------------------------------------------------------------------- void G4UImanager::ParseMacroSearchPath() { searchDirs.clear(); - size_t idxfirst = 0; - size_t idxend = 0; - G4String pathstring = ""; - while( (idxend = searchPath.index(':', idxfirst)) != G4String::npos) { - pathstring = searchPath.substr(idxfirst, idxend-idxfirst); - if(pathstring.size() != 0) searchDirs.push_back(pathstring); + std::size_t idxfirst = 0; + std::size_t idxend = 0; + G4String pathstring = ""; + while((idxend = searchPath.index(':', idxfirst)) != G4String::npos) + { + pathstring = searchPath.substr(idxfirst, idxend - idxfirst); + if(pathstring.size() != 0) + searchDirs.push_back(pathstring); idxfirst = idxend + 1; } - pathstring = searchPath.substr(idxfirst, searchPath.size()-idxfirst); - if(pathstring.size() != 0) searchDirs.push_back(pathstring); + pathstring = searchPath.substr(idxfirst, searchPath.size() - idxfirst); + if(pathstring.size() != 0) + searchDirs.push_back(pathstring); } - +// -------------------------------------------------------------------- static G4bool FileFound(const G4String& fname) { G4bool qopen = false; std::ifstream fs; fs.open(fname.c_str(), std::ios::in); - if(fs.good()) { + if(fs.good()) + { fs.close(); qopen = true; } return qopen; } +// -------------------------------------------------------------------- G4String G4UImanager::FindMacroPath(const G4String& fname) const { G4String macrofile = fname; - for (size_t i = 0; i < searchDirs.size(); i++) { + for(std::size_t i = 0; i < searchDirs.size(); ++i) + { G4String fullpath = searchDirs[i] + "/" + fname; - if ( FileFound(fullpath) ) { + if(FileFound(fullpath)) + { macrofile = fullpath; break; } } - return macrofile; } +// -------------------------------------------------------------------- std::vector* G4UImanager::GetCommandStack() { std::vector* returnValue = commandStack; - commandStack = new std::vector; + commandStack = new std::vector; return returnValue; } +// -------------------------------------------------------------------- void G4UImanager::RegisterBridge(G4UIbridge* brg) { - if(brg->LocalUI()==this) + if(brg->LocalUI() == this) { - G4Exception("G4UImanager::RegisterBridge()","UI7002",FatalException, - "G4UIBridge cannot bridge between same object."); + G4Exception("G4UImanager::RegisterBridge()", "UI7002", FatalException, + "G4UIBridge cannot bridge between same object."); } else - { bridges->push_back(brg); } + { + bridges->push_back(brg); + } } +// -------------------------------------------------------------------- void G4UImanager::SetUpForAThread(G4int tId) { threadID = tId; @@ -776,64 +837,78 @@ void G4UImanager::SetUpForAThread(G4int tId) threadCout->SetIgnoreCout(igThreadID); } +// -------------------------------------------------------------------- void G4UImanager::SetUpForSpecialThread(G4String pref) { - threadID = G4Threading::GENERICTHREAD_ID; - G4Threading::G4SetThreadId(threadID); - G4iosInitialization(); - threadCout = new G4MTcoutDestination(threadID); - threadCout->SetPrefixString(pref); - threadCout->SetIgnoreCout(igThreadID); + threadID = G4Threading::GENERICTHREAD_ID; + G4Threading::G4SetThreadId(threadID); + G4iosInitialization(); + threadCout = new G4MTcoutDestination(threadID); + threadCout->SetPrefixString(pref); + threadCout->SetIgnoreCout(igThreadID); } +// -------------------------------------------------------------------- void G4UImanager::SetCoutFileName(const G4String& fileN, G4bool ifAppend) { // for sequential mode, ignore this method. - if(threadID<0) return; + if(threadID < 0) + return; if(fileN == "**Screen**") - { threadCout->SetCoutFileName(fileN,ifAppend); } + { + threadCout->SetCoutFileName(fileN, ifAppend); + } else { std::stringstream fn; - fn<<"G4W_"<SetCoutFileName(fn.str(),ifAppend); + fn << "G4W_" << threadID << "_" << fileN; + threadCout->SetCoutFileName(fn.str(), ifAppend); } } +// -------------------------------------------------------------------- void G4UImanager::SetCerrFileName(const G4String& fileN, G4bool ifAppend) { // for sequential mode, ignore this method. - if(threadID<0) return; + if(threadID < 0) + return; if(fileN == "**Screen**") - { threadCout->SetCerrFileName(fileN,ifAppend); } + { + threadCout->SetCerrFileName(fileN, ifAppend); + } else { std::stringstream fn; - fn<<"G4W_"<SetCerrFileName(fn.str(),ifAppend); + fn << "G4W_" << threadID << "_" << fileN; + threadCout->SetCerrFileName(fn.str(), ifAppend); } } +// -------------------------------------------------------------------- void G4UImanager::SetThreadPrefixString(const G4String& s) { // for sequential mode, ignore this method. - if(threadID<0) return; + if(threadID < 0) + return; threadCout->SetPrefixString(s); } +// -------------------------------------------------------------------- void G4UImanager::SetThreadUseBuffer(G4bool flg) { // for sequential mode, ignore this method. - if(threadID<0) return; + if(threadID < 0) + return; threadCout->EnableBuffering(flg); } +// -------------------------------------------------------------------- void G4UImanager::SetThreadIgnore(G4int tid) { // for sequential mode, ignore this method. - if(threadID<0) + if(threadID < 0) { igThreadID = tid; return; @@ -841,10 +916,13 @@ void G4UImanager::SetThreadIgnore(G4int tid) threadCout->SetIgnoreCout(tid); } +// -------------------------------------------------------------------- void G4UImanager::SetThreadIgnoreInit(G4bool flg) { // for sequential mode, ignore this method. - if(threadID<0) { return; } + if(threadID < 0) + { + return; + } threadCout->SetIgnoreInit(flg); } - diff --git a/source/intercoms/src/G4UImessenger.cc b/source/intercoms/src/G4UImessenger.cc index d8ac3fcd5e..49504a5463 100644 --- a/source/intercoms/src/G4UImessenger.cc +++ b/source/intercoms/src/G4UImessenger.cc @@ -23,8 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4UImessenger // -// +// Author: Makoto Asai, 1998 +// -------------------------------------------------------------------- #include "G4UImessenger.hh" #include "G4UImanager.hh" @@ -34,36 +36,49 @@ #include "G4ios.hh" #include +// -------------------------------------------------------------------- G4UImessenger::G4UImessenger() - : baseDir(NULL), baseDirName(""), commandsShouldBeInMaster(false) -{ +{ } +// -------------------------------------------------------------------- G4UImessenger::G4UImessenger(const G4String& path, const G4String& dsc, G4bool commandsToBeBroadcasted) - : baseDir(NULL), baseDirName(""), commandsShouldBeInMaster(false) { CreateDirectory(path, dsc, commandsToBeBroadcasted); } +// -------------------------------------------------------------------- G4UImessenger::~G4UImessenger() { - if(baseDir) delete baseDir; + delete baseDir; } -G4String G4UImessenger::GetCurrentValue(G4UIcommand*) -{ +// -------------------------------------------------------------------- +G4String G4UImessenger::GetCurrentValue(G4UIcommand*) +{ G4String nullString; return nullString; } -void G4UImessenger::SetNewValue(G4UIcommand*,G4String) -{ ; } +// -------------------------------------------------------------------- +void G4UImessenger::SetNewValue(G4UIcommand*, G4String) +{ +} -G4bool G4UImessenger::operator == (const G4UImessenger& messenger) const { +// -------------------------------------------------------------------- +G4bool G4UImessenger::operator==(const G4UImessenger& messenger) const +{ return this == &messenger; } +// -------------------------------------------------------------------- +G4bool G4UImessenger::operator!=(const G4UImessenger& messenger) const +{ + return this != &messenger; +} + +// -------------------------------------------------------------------- G4String G4UImessenger::ItoS(G4int i) { std::ostringstream os; @@ -71,6 +86,7 @@ G4String G4UImessenger::ItoS(G4int i) return G4String(os.str()); } +// -------------------------------------------------------------------- G4String G4UImessenger::DtoS(G4double a) { std::ostringstream os; @@ -78,13 +94,16 @@ G4String G4UImessenger::DtoS(G4double a) return G4String(os.str()); } +// -------------------------------------------------------------------- G4String G4UImessenger::BtoS(G4bool b) { G4String vl = "0"; - if(b) vl = "true"; + if(b) + vl = "true"; return vl; } +// -------------------------------------------------------------------- G4int G4UImessenger::StoI(G4String str) { G4int vl; @@ -94,6 +113,17 @@ G4int G4UImessenger::StoI(G4String str) return vl; } +// -------------------------------------------------------------------- +G4long G4UImessenger::StoL(G4String str) +{ + G4long vl; + const char* t = str; + std::istringstream is(t); + is >> vl; + return vl; +} + +// -------------------------------------------------------------------- G4double G4UImessenger::StoD(G4String str) { G4double vl; @@ -103,37 +133,45 @@ G4double G4UImessenger::StoD(G4String str) return vl; } +// -------------------------------------------------------------------- G4bool G4UImessenger::StoB(G4String str) { G4String v = str; v.toUpper(); G4bool vl = false; - if( v=="Y" || v=="YES" || v=="1" || v=="T" || v=="TRUE" ) - { vl = true; } + if(v == "Y" || v == "YES" || v == "1" || v == "T" || v == "TRUE") + { + vl = true; + } return vl; } - -void G4UImessenger::AddUIcommand(G4UIcommand * newCommand) +// -------------------------------------------------------------------- +void G4UImessenger::AddUIcommand(G4UIcommand* newCommand) { - G4cerr << "Warning : Old style definition of G4UIcommand <" + G4cerr << "Warning : Old style definition of G4UIcommand <" << newCommand->GetCommandPath() << ">." << G4endl; } +// -------------------------------------------------------------------- void G4UImessenger::CreateDirectory(const G4String& path, const G4String& dsc, - G4bool commandsToBeBroadcasted) + G4bool commandsToBeBroadcasted) { G4UImanager* ui = G4UImanager::GetUIpointer(); G4String fullpath = path; - if(fullpath(fullpath.length()-1) != '/') fullpath.append("/"); + if(fullpath(fullpath.length() - 1) != '/') + fullpath.append("/"); - G4UIcommandTree* tree= ui-> GetTree()-> FindCommandTree(fullpath.c_str()); - if (tree) { - baseDirName = tree-> GetPathName(); - } else { - baseDir = new G4UIdirectory(fullpath.c_str(),commandsToBeBroadcasted); + G4UIcommandTree* tree = ui->GetTree()->FindCommandTree(fullpath.c_str()); + if(tree != nullptr) + { + baseDirName = tree->GetPathName(); + } + else + { + baseDir = new G4UIdirectory(fullpath.c_str(), commandsToBeBroadcasted); baseDirName = fullpath; - baseDir-> SetGuidance(dsc.c_str()); + baseDir->SetGuidance(dsc.c_str()); } } diff --git a/source/intercoms/src/G4UIparameter.cc b/source/intercoms/src/G4UIparameter.cc index 6b5aeee795..e53c0fd5de 100644 --- a/source/intercoms/src/G4UIparameter.cc +++ b/source/intercoms/src/G4UIparameter.cc @@ -23,99 +23,89 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4UIparameter // -// +// Author: Makoto Asai, 1997 +// -------------------------------------------------------------------- #include "G4UIparameter.hh" #include "G4UIcommandStatus.hh" #include "G4Tokenizer.hh" #include "G4ios.hh" -#include +#include "G4UIcommand.hh" + +#include +#include // for CheckNewValue() -#include "G4UItokenNum.hh" using namespace G4UItokenNum; -G4UIparameter::G4UIparameter():paramERR(0) +// -------------------------------------------------------------------- +G4UIparameter::G4UIparameter() { - G4String nullString; - parameterName = nullString; - parameterType = '\0'; - omittable = false; - parameterGuidance = nullString; - defaultValue = nullString; - parameterRange = nullString; - currentAsDefaultFlag = false; - parameterCandidate = nullString; - widget = 0; - bp = 0; - token = NONE; } -G4UIparameter::G4UIparameter(char theType):paramERR(0) +// -------------------------------------------------------------------- +G4UIparameter::G4UIparameter(char theType) { - G4String nullString; - parameterName = nullString; - parameterType = theType; - omittable = false; - parameterGuidance = nullString; - defaultValue = nullString; - parameterRange = nullString; - currentAsDefaultFlag = false; - parameterCandidate = nullString; - widget = 0; - bp = 0; - token = NONE; + parameterType = theType; } -G4UIparameter::G4UIparameter(const char * theName, char theType, G4bool theOmittable):paramERR(0) +// -------------------------------------------------------------------- +G4UIparameter::G4UIparameter(const char* theName, char theType, + G4bool theOmittable) { parameterName = theName; parameterType = theType; - omittable = theOmittable; - G4String nullString; - parameterGuidance = nullString; - defaultValue = nullString; - parameterRange = nullString; - currentAsDefaultFlag = false; - parameterCandidate = nullString; - widget = 0; - bp = 0; - token = NONE; + omittable = theOmittable; } +// -------------------------------------------------------------------- G4UIparameter::~G4UIparameter() -{ } - -G4bool G4UIparameter::operator==(const G4UIparameter &right) const { - return ( this == &right ); } -G4bool G4UIparameter::operator!=(const G4UIparameter &right) const +// -------------------------------------------------------------------- +G4bool G4UIparameter::operator==(const G4UIparameter& right) const { - return ( this != &right ); + return (this == &right); } +// -------------------------------------------------------------------- +G4bool G4UIparameter::operator!=(const G4UIparameter& right) const +{ + return (this != &right); +} + +// -------------------------------------------------------------------- void G4UIparameter::List() { G4cout << G4endl << "Parameter : " << parameterName << G4endl; - if( ! parameterGuidance.isNull() ) - G4cout << parameterGuidance << G4endl ; + if(!parameterGuidance.isNull()) + G4cout << parameterGuidance << G4endl; G4cout << " Parameter type : " << parameterType << G4endl; if(omittable) - { G4cout << " Omittable : True" << G4endl; } + { + G4cout << " Omittable : True" << G4endl; + } else - { G4cout << " Omittable : False" << G4endl; } - if( currentAsDefaultFlag ) - { G4cout << " Default value : taken from the current value" << G4endl; } - else if( ! defaultValue.isNull() ) - { G4cout << " Default value : " << defaultValue << G4endl; } - if( ! parameterRange.isNull() ) - G4cout << " Parameter range : " << parameterRange << G4endl; - if( ! parameterCandidate.isNull() ) - G4cout << " Candidates : " << parameterCandidate << G4endl; + { + G4cout << " Omittable : False" << G4endl; + } + if(currentAsDefaultFlag) + { + G4cout << " Default value : taken from the current value" << G4endl; + } + else if(!defaultValue.isNull()) + { + G4cout << " Default value : " << defaultValue << G4endl; + } + if(!parameterRange.isNull()) + G4cout << " Parameter range : " << parameterRange << G4endl; + if(!parameterCandidate.isNull()) + G4cout << " Candidates : " << parameterCandidate << G4endl; } +// -------------------------------------------------------------------- void G4UIparameter::SetDefaultValue(G4int theDefaultValue) { std::ostringstream os; @@ -123,6 +113,15 @@ void G4UIparameter::SetDefaultValue(G4int theDefaultValue) defaultValue = os.str(); } +// -------------------------------------------------------------------- +void G4UIparameter::SetDefaultValue(G4long theDefaultValue) +{ + std::ostringstream os; + os << theDefaultValue; + defaultValue = os.str(); +} + +// -------------------------------------------------------------------- void G4UIparameter::SetDefaultValue(G4double theDefaultValue) { std::ostringstream os; @@ -130,651 +129,948 @@ void G4UIparameter::SetDefaultValue(G4double theDefaultValue) defaultValue = os.str(); } -#include "G4UIcommand.hh" -void G4UIparameter::SetDefaultUnit(const char * theDefaultUnit) +// -------------------------------------------------------------------- +void G4UIparameter::SetDefaultUnit(const char* theDefaultUnit) { - char type = toupper( parameterType ); - if( type != 'S' ) + char type = toupper(parameterType); + if(type != 'S') { G4ExceptionDescription ed; - ed << "This method can be used only for a string-type parameter that is used to specify a unit.\n" + ed << "This method can be used only for a string-type parameter that is " + "used to specify a unit.\n" << "This parameter <" << parameterName << "> is defined as "; - switch(type) { - case 'D': ed <<"double."; break; - case 'I': ed <<"integer."; break; - case 'B': ed <<"bool."; break; - default: ed <<"undefined."; + switch(type) + { + case 'D': + ed << "double."; + break; + case 'I': + ed << "integer."; + break; + case 'L': + ed << "long int."; + break; + case 'B': + ed << "bool."; + break; + default: + ed << "undefined."; } - G4Exception("G4UIparameter::SetDefaultUnit","INTERCOM2010",FatalException,ed); + G4Exception("G4UIparameter::SetDefaultUnit", "INTERCOM2010", FatalException, + ed); } SetDefaultValue(theDefaultUnit); - SetParameterCandidates(G4UIcommand::UnitsList(G4UIcommand::CategoryOf(theDefaultUnit))); + SetParameterCandidates( + G4UIcommand::UnitsList(G4UIcommand::CategoryOf(theDefaultUnit))); } - -// ---------- CheckNewValue() related routines ----------- -#include -#include "G4UItokenNum.hh" + +// ---------- CheckNewValue() related routines ------------------------ //#include "checkNewValue_debug.icc" //#define DEBUG 1 -G4int G4UIparameter:: -CheckNewValue(const char* newValue ) { - if( TypeCheck(newValue) == 0) return fParameterUnreadable; - if( ! parameterRange.isNull() ) - { if( RangeCheck(newValue) == 0 ) return fParameterOutOfRange; } - if( ! parameterCandidate.isNull() ) - { if( CandidateCheck(newValue) == 0 ) return fParameterOutOfCandidates; } - return 0; // succeeded +// -------------------------------------------------------------------- +G4int G4UIparameter::CheckNewValue(const char* newValue) +{ + if(TypeCheck(newValue) == 0) + return fParameterUnreadable; + if(!parameterRange.isNull()) + { + if(RangeCheck(newValue) == 0) + return fParameterOutOfRange; + } + if(!parameterCandidate.isNull()) + { + if(CandidateCheck(newValue) == 0) + return fParameterOutOfCandidates; + } + return 0; // succeeded } -G4int G4UIparameter:: -CandidateCheck(const char* newValue) { - G4Tokenizer candidateTokenizer(parameterCandidate); - G4String aToken; - G4int iToken = 0; - while( ! (aToken=candidateTokenizer()).isNull() ) +// -------------------------------------------------------------------- +G4int G4UIparameter::CandidateCheck(const char* newValue) +{ + G4Tokenizer candidateTokenizer(parameterCandidate); + G4String aToken; + G4int iToken = 0; + while(!(aToken = candidateTokenizer()).isNull()) + { + ++iToken; + if(aToken == newValue) + return iToken; + } + G4cerr << "parameter value (" << newValue + << ") is not listed in the candidate List." << G4endl; + return 0; +} + +// -------------------------------------------------------------------- +G4int G4UIparameter::RangeCheck(const char* newValue) +{ + yystype result; + bp = 0; // reset buffer pointer for G4UIpGetc() + std::istringstream is(newValue); + char type = toupper(parameterType); + switch(type) + { + case 'D': + is >> newVal.D; + break; + case 'I': + is >> newVal.I; + break; + case 'L': + is >> newVal.L; + break; + default:; + } + // PrintToken(); // Print tokens (consumes all tokens) + token = Yylex(); + result = Expression(); + if(paramERR == 1) return 0; + if(result.type != CONSTINT) + { + G4cerr << "Illegal Expression in parameter range." << G4endl; + return 0; + } + if(result.I) return 1; + G4cerr << "parameter out of range: " << parameterRange << G4endl; + return 0; +} + +// -------------------------------------------------------------------- +G4int G4UIparameter::TypeCheck(const char* newValue) +{ + G4String newValueString(newValue); + char type = toupper(parameterType); + switch(type) + { + case 'D': + if(IsDouble(newValueString.data()) == 0) + { + G4cerr << newValue << ": double value expected." << G4endl; + return 0; + } + break; + case 'I': + if(IsInt(newValueString.data(), 10) == 0) + { + G4cerr << newValue << ": integer expected." << G4endl; + return 0; + } + break; + case 'L': + if(IsInt(newValueString.data(), 20) == 0) + { + G4cerr << newValue << ": long int expected." << G4endl; + return 0; + } + break; + case 'S': + break; + case 'B': + newValueString.toUpper(); + if(newValueString == "Y" || newValueString == "N" || + newValueString == "YES" || newValueString == "NO" || + newValueString == "1" || newValueString == "0" || + newValueString == "T" || newValueString == "F" || + newValueString == "TRUE" || newValueString == "FALSE") + return 1; + else + { + G4cerr << newValue << ": bool expected." << G4endl; + return 0; + } + default:; + } + return 1; +} + +// -------------------------------------------------------------------- +G4int G4UIparameter::IsInt(const char* buf, + short maxDigits) // do not allow any std::ws +{ + const char* p = buf; + G4int length = 0; + if(*p == '+' || *p == '-') + { + ++p; + } + if(isdigit((G4int)(*p))) + { + while(isdigit((G4int)(*p))) { - iToken++; - if(aToken==newValue) return iToken; - } - G4cerr << "parameter value (" << newValue - << ") is not listed in the candidate List." << G4endl; - return 0; -} - -G4int G4UIparameter:: -RangeCheck(const char* newValue) { - yystype result; - bp = 0; // reset buffer pointer for G4UIpGetc() - std::istringstream is(newValue); - char type = toupper( parameterType ); - switch (type) { - case 'D': { is >> newVal.D; } break; - case 'I': { is >> newVal.I; } break; - default: ; + ++p; + ++length; } - // PrintToken(); // Print tokens (consumes all tokens) - token= Yylex(); - result = Expression(); - if( paramERR == 1 ) return 0; - if( result.type != CONSTINT) { - G4cerr << "Illegal Expression in parameter range." << G4endl; - return 0; - } - if ( result.I ) return 1; - G4cerr << "parameter out of range: "<< parameterRange << G4endl; - return 0; + if(*p == '\0') + { + if(length > maxDigits) + { + G4cerr << "digit length exceeds" << G4endl; + return 0; + } + return 1; + } + else + { + // G4cerr <<"illegal character after int:"< maxDigits) { - G4cerr <<"digit length exceeds"< arg2); opr= ">" ; break; - case GE: result = ( arg1 >= arg2); opr= ">="; break; - case LT: result = ( arg1 < arg2); opr= "<" ; break; - case LE: result = ( arg1 <= arg2); opr= "<="; break; - case EQ: result = ( arg1 == arg2); opr= "=="; break; - case NE: result = ( arg1 != arg2); opr= "!="; break; - default: - G4cerr << "Parameter range: error at CompareInt" << G4endl; - paramERR = 1; - } - #ifdef DEBUG - G4cerr << "CompareInt " - << arg1 << " " << opr << arg2 - << " result: " << result - << G4endl; - #endif - return result; +// -------------------------------------------------------------------- +G4int G4UIparameter::CompareInt(G4int arg1, G4int op, G4int arg2) +{ + G4int result = -1; + G4String opr; + switch(op) + { + case GT: + result = (arg1 > arg2); + opr = ">"; + break; + case GE: + result = (arg1 >= arg2); + opr = ">="; + break; + case LT: + result = (arg1 < arg2); + opr = "<"; + break; + case LE: + result = (arg1 <= arg2); + opr = "<="; + break; + case EQ: + result = (arg1 == arg2); + opr = "=="; + break; + case NE: + result = (arg1 != arg2); + opr = "!="; + break; + default: + G4cerr << "Parameter range: error at CompareInt" << G4endl; + paramERR = 1; + } +#ifdef DEBUG + G4cerr << "CompareInt " << arg1 << " " << opr << arg2 << " result: " << result + << G4endl; +#endif + return result; } -G4int G4UIparameter:: -CompareDouble(G4double arg1, G4int op, G4double arg2) -{ - G4int result=-1; - G4String opr; - switch (op) { - case GT: result = ( arg1 > arg2); opr= ">"; break; - case GE: result = ( arg1 >= arg2); opr= ">="; break; - case LT: result = ( arg1 < arg2); opr= "<"; break; - case LE: result = ( arg1 <= arg2); opr= "<="; break; - case EQ: result = ( arg1 == arg2); opr= "=="; break; - case NE: result = ( arg1 != arg2); opr= "!="; break; - default: - G4cerr << "Parameter range: error at CompareDouble" << G4endl; - paramERR = 1; - } - #ifdef DEBUG - G4cerr << "CompareDouble " - << arg1 <<" " << opr << " "<< arg2 - << " result: " << result - << G4endl; - #endif - return result; +// -------------------------------------------------------------------- +G4int G4UIparameter::CompareLong(G4long arg1, G4int op, G4long arg2) +{ + G4int result = -1; + G4String opr; + switch(op) + { + case GT: + result = (arg1 > arg2); + opr = ">"; + break; + case GE: + result = (arg1 >= arg2); + opr = ">="; + break; + case LT: + result = (arg1 < arg2); + opr = "<"; + break; + case LE: + result = (arg1 <= arg2); + opr = "<="; + break; + case EQ: + result = (arg1 == arg2); + opr = "=="; + break; + case NE: + result = (arg1 != arg2); + opr = "!="; + break; + default: + G4cerr << "Parameter range: error at CompareInt" << G4endl; + paramERR = 1; + } +#ifdef DEBUG + G4cerr << "CompareInt " << arg1 << " " << opr << arg2 << " result: " << result + << G4endl; +#endif + return result; +} + +// -------------------------------------------------------------------- +G4int G4UIparameter::CompareDouble(G4double arg1, G4int op, G4double arg2) +{ + G4int result = -1; + G4String opr; + switch(op) + { + case GT: + result = (arg1 > arg2); + opr = ">"; + break; + case GE: + result = (arg1 >= arg2); + opr = ">="; + break; + case LT: + result = (arg1 < arg2); + opr = "<"; + break; + case LE: + result = (arg1 <= arg2); + opr = "<="; + break; + case EQ: + result = (arg1 == arg2); + opr = "=="; + break; + case NE: + result = (arg1 != arg2); + opr = "!="; + break; + default: + G4cerr << "Parameter range: error at CompareDouble" << G4endl; + paramERR = 1; + } +#ifdef DEBUG + G4cerr << "CompareDouble " << arg1 << " " << opr << " " << arg2 + << " result: " << result << G4endl; +#endif + return result; } // --------------------- utility functions -------------------------- -tokenNum G4UIparameter:: -Yylex() // reads input and returns token number KR486 -{ // (returns EOF) - G4int c; - G4String buf; +tokenNum G4UIparameter::Yylex() // reads input and returns token number KR486 +{ // (returns EOF) + G4int c; + G4String buf; - while(( c= G4UIpGetc())==' '|| c=='\t' || c== '\n' ) - ; - if (c== EOF) - return (tokenNum)EOF; // KR488 - buf= ""; - if (isdigit(c) || c== '.') { // I or D - do { - buf += G4String((unsigned char)c); - c=G4UIpGetc(); - } while (c=='.' || isdigit(c) || - c=='e' || c=='E' || c=='+' || c=='-'); - G4UIpUngetc(c); - const char* t = buf; - std::istringstream is(t); - if ( IsInt(buf.data(),20) ) { - is >> yylval.I; - return CONSTINT; - } else - if ( IsDouble(buf.data()) ) { - is >> yylval.D; - return CONSTDOUBLE; - } else { - G4cerr << buf<<": numeric format error."<> yylval.I; + return CONSTINT; } - buf=""; - if (isalpha(c)|| c=='_') { // IDENTIFIER - do { - buf += G4String((unsigned char)c); - } while ((c=G4UIpGetc()) != EOF && (isalnum(c) || c=='_')); - G4UIpUngetc(c); - if( buf == parameterName ) { - yylval.S =buf; - return IDENTIFIER; - } else { - G4cerr << buf << " is not a parameter name."<< G4endl; - paramERR = 1; - } + else if(IsDouble(buf.data())) + { + is >> yylval.D; + return CONSTDOUBLE; } - switch (c) { - case '>': return (tokenNum) Follow('=', GE, GT); - case '<': return (tokenNum) Follow('=', LE, LT); - case '=': return (tokenNum) Follow('=', EQ, '='); - case '!': return (tokenNum) Follow('=', NE, '!'); - case '|': return (tokenNum) Follow('|', LOGICALOR, '|'); - case '&': return (tokenNum) Follow('&', LOGICALAND, '&'); - default: - return (tokenNum) c; + else + { + G4cerr << buf << ": numeric format error." << G4endl; } + } + buf = ""; + if(isalpha(c) || c == '_') + { // IDENTIFIER + do + { + buf += G4String((unsigned char) c); + } while((c = G4UIpGetc()) != EOF && (isalnum(c) || c == '_')); + G4UIpUngetc(c); + if(buf == parameterName) + { + yylval.S = buf; + return IDENTIFIER; + } + else + { + G4cerr << buf << " is not a parameter name." << G4endl; + paramERR = 1; + } + } + switch(c) + { + case '>': + return (tokenNum) Follow('=', GE, GT); + case '<': + return (tokenNum) Follow('=', LE, LT); + case '=': + return (tokenNum) Follow('=', EQ, '='); + case '!': + return (tokenNum) Follow('=', NE, '!'); + case '|': + return (tokenNum) Follow('|', LOGICALOR, '|'); + case '&': + return (tokenNum) Follow('&', LOGICALAND, '&'); + default: + return (tokenNum) c; + } } - -G4int G4UIparameter:: -Follow(G4int expect, G4int ifyes, G4int ifno) +// -------------------------------------------------------------------- +G4int G4UIparameter::Follow(G4int expect, G4int ifyes, G4int ifno) { - G4int c = G4UIpGetc(); - if ( c== expect) - return ifyes; - G4UIpUngetc(c); - return ifno; + G4int c = G4UIpGetc(); + if(c == expect) + return ifyes; + G4UIpUngetc(c); + return ifno; } //------------------ low level routines ----------------------------- -G4int G4UIparameter:: -G4UIpGetc() { // emulation of getc() - G4int length = parameterRange.length(); - if( bp < length) - return parameterRange(bp++); - else - return EOF; + +G4int G4UIparameter::G4UIpGetc() +{ // emulation of getc() + G4int length = parameterRange.length(); + if(bp < length) + return parameterRange(bp++); + else + return EOF; } -G4int G4UIparameter:: -G4UIpUngetc(G4int c) { // emulation of ungetc() - if (c<0) return -1; - if (bp >0 && c == parameterRange(bp-1)) { - --bp; - } else { - G4cerr << "G4UIpUngetc() failed." << G4endl; - G4cerr << "bp="<SetGuidance("Available units."); - - ListCmd = new G4UIcmdWithoutParameter("/units/list",this); + + ListCmd = new G4UIcmdWithoutParameter("/units/list", this); ListCmd->SetGuidance("full list of available units."); } -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - +// -------------------------------------------------------------------- G4UnitsMessenger::~G4UnitsMessenger() { delete ListCmd; delete UnitsTableDir; } -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -void G4UnitsMessenger::SetNewValue(G4UIcommand* command,G4String) -{ - if (command == ListCmd) - { G4UnitDefinition::PrintUnitsTable(); } +// -------------------------------------------------------------------- +void G4UnitsMessenger::SetNewValue(G4UIcommand* command, G4String) +{ + if(command == ListCmd) + { + G4UnitDefinition::PrintUnitsTable(); + } } - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... diff --git a/source/intercoms/src/G4VGlobalFastSimulationManager.cc b/source/intercoms/src/G4VGlobalFastSimulationManager.cc index 27161160d1..9308d8b90b 100644 --- a/source/intercoms/src/G4VGlobalFastSimulationManager.cc +++ b/source/intercoms/src/G4VGlobalFastSimulationManager.cc @@ -23,26 +23,26 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4VGlobalFastSimulationManager // -// -// -// Abstract interface for GEANT4 Global Fast Simulation Manager. -// P. Mora de Freitas & M. Verderi 14/April/1999. +// Authors: P. Mora de Freitas & M. Verderi, 14 April 1999 +// -------------------------------------------------------------------- #include "G4VGlobalFastSimulationManager.hh" -G4ThreadLocal G4VGlobalFastSimulationManager* -G4VGlobalFastSimulationManager::fpConcreteInstance = 0; +G4ThreadLocal G4VGlobalFastSimulationManager* + G4VGlobalFastSimulationManager::fpConcreteInstance = nullptr; -G4VGlobalFastSimulationManager* -G4VGlobalFastSimulationManager::GetConcreteInstance () +// -------------------------------------------------------------------- +G4VGlobalFastSimulationManager* +G4VGlobalFastSimulationManager::GetConcreteInstance() { return fpConcreteInstance; } -void -G4VGlobalFastSimulationManager:: -SetConcreteInstance (G4VGlobalFastSimulationManager* m) +// -------------------------------------------------------------------- +void G4VGlobalFastSimulationManager::SetConcreteInstance( + G4VGlobalFastSimulationManager* m) { fpConcreteInstance = m; } diff --git a/source/interfaces/GAG/src/G4UIGAG.cc b/source/interfaces/GAG/src/G4UIGAG.cc index 31b7077b8a..f3249a2db5 100644 --- a/source/interfaces/GAG/src/G4UIGAG.cc +++ b/source/interfaces/GAG/src/G4UIGAG.cc @@ -531,7 +531,7 @@ G4UIcommandTree * G4UIGAG::FindDirPath(const G4String& newCommand) void G4UIGAG::SendCommandProperties(G4UIcommandTree * tree) { if( tree == NULL ) { - G4cerr << "GetTree() returnes null." << G4endl; + G4cerr << "GetTree() returns null." << G4endl; return; } if (uiMode == java_mode){ @@ -549,7 +549,7 @@ void G4UIGAG::SendCommandProperties(G4UIcommandTree * tree) void G4UIGAG::SendParameterProperties(G4UIcommandTree * tree) { if( tree == NULL ) { - G4cerr << "GetTree() returnes null." << G4endl; + G4cerr << "GetTree() returns null." << G4endl; return; } if (uiMode == java_mode){ diff --git a/source/interfaces/GAG/src/G4UIGainServer.cc b/source/interfaces/GAG/src/G4UIGainServer.cc index 08f5da59a2..34ad902510 100644 --- a/source/interfaces/GAG/src/G4UIGainServer.cc +++ b/source/interfaces/GAG/src/G4UIGainServer.cc @@ -647,7 +647,7 @@ G4UIcommandTree* G4UIGainServer::FindDirPath(G4String newCommand){ void G4UIGainServer::SendCommandProperties(G4UIcommandTree* tree){ ////////////////////////////////////////////////////////// if( tree == NULL ) { - G4cerr << "GetTree() returnes null." << G4endl; + G4cerr << "GetTree() returns null." << G4endl; return; } if (uiMode == java_mode){ @@ -662,7 +662,7 @@ void G4UIGainServer::SendCommandProperties(G4UIcommandTree* tree){ void G4UIGainServer::SendParameterProperties(G4UIcommandTree* tree){ //////////////////////////////////////////////////////////// if( tree == NULL ) { - G4cerr << "GetTree() returnes null." << G4endl; + G4cerr << "GetTree() returns null." << G4endl; return; } if (uiMode == java_mode){ diff --git a/source/interfaces/History b/source/interfaces/History index 523804484b..81a3a3d5d7 100644 --- a/source/interfaces/History +++ b/source/interfaces/History @@ -16,6 +16,36 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +29 November 2020 Gabriele Cosmo (interfaces-V10-06-11) +- G4UIQt.cc: protected MT code within G4MULTITHREADED in workaround + introduced previously. + +09 November 2020 John Allison (interfaces-V10-06-10) +- G4UIQt.cc: + o Re "workaround" (interfaces-V10-06-08), it seems workers write + to std::cout/cerr anyway (is that a bug?) so limit this workaround + to the master thread. + +16 November 2020 Gabriele Cosmo (interfaces-V10-06-09) +- Fixed typos in printed-out text. Addressing problem report #2285. + +09 November 2020 John Allison (interfaces-V10-06-08) +- G4UIQt.cc: + o As a workaround to the problem of loss of output in the case of + a crash or G4Exception: + - Send G4cout/cerr also to std::cout/cerr so that output is not lost. + +21 September 2020 John Allison (interfaces-V10-06-07) +- G4Qt.cc: Add the following to fix a problem with Windows - see + https://geant4-forum.web.cern.ch/t/blue-screen-when-running-b1-example-using-qt/3144 +#ifdef WIN32 + qApp->setAttribute( Qt::AA_UseDesktopOpenGL ); +#endif + +28 August 2020 Ben Morgan (interfaces-V10-06-06) +- GEANT4_USE_INVENTOR for SoXt activates use of Xm, so we do not + need to check for use of inventor in setting up Xt, only GEANT4_USE_XM. + 19 June 2020 John Allison (interfaces-V10-06-05) - Fix Qt 5.15 deprecation warnings. diff --git a/source/interfaces/basic/src/G4UIQt.cc b/source/interfaces/basic/src/G4UIQt.cc index 6179f55b70..82b271de2c 100644 --- a/source/interfaces/basic/src/G4UIQt.cc +++ b/source/interfaces/basic/src/G4UIQt.cc @@ -2018,6 +2018,13 @@ G4int G4UIQt::ReceiveG4cout ( return ReceiveG4cerr(aString); } + // Workaround so that output is not lost after crash or G4Exception + // It seems workers write to std::cout anyway, so limit this to the master +#ifdef G4MULTITHREADED + if (G4Threading::IsMasterThread()) +#endif + std::cout << aString; + QStringList newStr; // Add to string @@ -2060,6 +2067,14 @@ G4int G4UIQt::ReceiveG4cerr ( #ifdef G4MULTITHREADED G4AutoLock al(&ReceiveG4cerrMutex); #endif + + // Workaround so that output is not lost after crash or G4Exception + // It seems workers write to std::cerr anyway, so limit this to the master +#ifdef G4MULTITHREADED + if (G4Threading::IsMasterThread()) +#endif + std::cerr << aString; + QStringList newStr; // Add to string @@ -4586,7 +4601,7 @@ void G4UIQt::ChangePerspectiveOrtho(const QString& action) { if (list.at(i)->data().toString () == action) { list.at(i)->setChecked(TRUE); checked = list.at(i)->data().toString (); - } else if (list.at(i)->data().toString () == "persepective") { + } else if (list.at(i)->data().toString () == "perspective") { list.at(i)->setChecked(FALSE); } else if (list.at(i)->data().toString () == "ortho") { list.at(i)->setChecked(FALSE); diff --git a/source/interfaces/basic/src/G4UIWt.cc b/source/interfaces/basic/src/G4UIWt.cc index f9de492998..bf50a72be5 100644 --- a/source/interfaces/basic/src/G4UIWt.cc +++ b/source/interfaces/basic/src/G4UIWt.cc @@ -2768,7 +2768,7 @@ void G4UIWt::ChangePerspectiveOrthoCallback(const Wt::WString& /* action */) { if (list.at(i)->data().toString () == action) { list.at(i)->setChecked(TRUE); checked = list.at(i)->data().toString (); - } else if (list.at(i)->data().toString () == "persepective") { + } else if (list.at(i)->data().toString () == "perspective") { list.at(i)->setChecked(FALSE); } else if (list.at(i)->data().toString () == "ortho") { list.at(i)->setChecked(FALSE); diff --git a/source/interfaces/common/sources.cmake b/source/interfaces/common/sources.cmake index a6ff4ee643..54adbc0c12 100644 --- a/source/interfaces/common/sources.cmake +++ b/source/interfaces/common/sources.cmake @@ -65,8 +65,8 @@ if(MSVC) add_definitions(-DG4INTY_BUILD_WIN32) endif() -# X11 options - we only need this for Xm and/or Inventor UI -if(UNIX AND (GEANT4_USE_XM OR GEANT4_USE_INVENTOR)) +# X11 options - we only need this for Xm (and Inventor, which activates XM) +if(UNIX AND GEANT4_USE_XM) # Add the sources list(APPEND G4INTERFACES_COMMON_MODULE_HEADERS G4Xt.hh) list(APPEND G4INTERFACES_COMMON_MODULE_SOURCES G4Xt.cc) diff --git a/source/interfaces/common/src/G4Qt.cc b/source/interfaces/common/src/G4Qt.cc index 56c9a49516..ec9c07ffc9 100644 --- a/source/interfaces/common/src/G4Qt.cc +++ b/source/interfaces/common/src/G4Qt.cc @@ -112,6 +112,9 @@ G4Qt::G4Qt ( int *p_argn = (int*)malloc(sizeof(int)); *p_argn = argn; +#ifdef WIN32 + qApp->setAttribute( Qt::AA_UseDesktopOpenGL ); +#endif new QApplication (*p_argn, args); if(!qApp) { diff --git a/source/materials/GNUmakefile b/source/materials/GNUmakefile index 400474c071..e1153f9fd2 100644 --- a/source/materials/GNUmakefile +++ b/source/materials/GNUmakefile @@ -4,19 +4,29 @@ name := G4materials -GLOBLIBS = libG4intercoms.lib libG4global.lib ifndef G4INSTALL G4INSTALL = ../.. endif +GLOBLIBS = libG4intercoms.lib libG4global.lib + +ifdef G4LIB_BUILD_ZLIB + GLOBLIBS += libG4zlib.lib +endif + include $(G4INSTALL)/config/architecture.gmk CPPFLAGS += -I$(G4BASE)/global/management/include \ -I$(G4BASE)/global/HEPRandom/include \ -I$(G4BASE)/global/HEPGeometry/include \ - -I$(G4BASE)/intercoms/include - + -I$(G4BASE)/intercoms/include + +ifdef G4LIB_BUILD_ZLIB + CPPFLAGS += -I$(G4BASE)/externals/zlib/include +endif + + include $(G4INSTALL)/config/common.gmk .PHONY: global diff --git a/source/materials/History b/source/materials/History index d493779e52..b09485b0e5 100644 --- a/source/materials/History +++ b/source/materials/History @@ -16,6 +16,42 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +16-11-20 G.Cosmo (materials-V10-06-12) +- Fixed typos in printed-out text. Addressing problem report #2285. + +10-11-20 V.Ivanchenko (materials-V10-06-11) +- G4MicroElecMaterialStructure - fixed Coverity warnings (initialize + all members of the class) + +04-11-20 D.Sawkey (materials-V10-06-10) +- G4OpticalSurface:Add protection against access optical LUT out of + array bounds. Addresses bug 2287. + +28-10-20 V.Ivanchenko (materials-V10-06-09) +- G4MicroElecMaterialStructure, G4MicroElecSiStructure classes are moved + from electromagnetic/lowenergy. These new classes developed by ONERA + and CEA group and provided by D. Lambert. The code was updated - no + dependence on G4ParticleDefinition + +20-10-20 D. Sawkey (materials-V10-06-08) +- G4Element, G4NistManager, G4NistMaterialBuilder: spellcheck cout text + +08-10-20 D. Sawkey (materials-V10-06-07) +- G4OpticalSurface: store REALSURFACE optical data files zlib-compressed. + +05-10-20 D. Sawkey (materials-V10-06-06) +- G4SurfaceProperty, G4OpticalSurface: apply clang-format style guidelines, + use virtual/override/nullptr keywords; add method to select file to read; + replace long if/else with switch/case + +20-08-20 V.Ivanchenko (materials-V10-06-05) +- G4Material - added two new public methods to add elements to a material + according to ATLAS request + +04-08-20 D. Sawkey (materials-V10-06-04) +- G4MaterialPropertiesTable: add new methods to access/add properties with + G4String and std::vector + 26-05-20 A. Howard (materials-V10-06-03) - G4MaterialPropertiesTable, G4MaterialPropertiesIndex: add new properties for allowing a second wavelength shifter in the same material diff --git a/source/materials/include/G4Material.hh b/source/materials/include/G4Material.hh index 7550497c30..f6116f8825 100644 --- a/source/materials/include/G4Material.hh +++ b/source/materials/include/G4Material.hh @@ -153,14 +153,18 @@ public: // with description // Add an element, giving number of atoms // void AddElement(G4Element* element, //the element - G4int nAtoms); //nb of atoms in - // a molecule + G4int nAtoms); //nb of atoms in a molecule + inline + void AddElementByNumberOfAtoms(G4Element* elm, G4int nAtoms) {AddElement(elm, nAtoms);} + // // Add an element or material, giving fraction of mass // void AddElement (G4Element* element , //the element G4double fraction); //fractionOfMass - + inline + void AddElementByMassFraction(G4Element* elm, G4double frac) {AddElement(elm, frac);} + void AddMaterial(G4Material* material, //the material G4double fraction); //fractionOfMass diff --git a/source/materials/include/G4MaterialPropertiesTable.hh b/source/materials/include/G4MaterialPropertiesTable.hh index a64c316b06..5c121fe265 100644 --- a/source/materials/include/G4MaterialPropertiesTable.hh +++ b/source/materials/include/G4MaterialPropertiesTable.hh @@ -46,7 +46,6 @@ // 1999-10-29 add method and class descriptors // 1997-03-25 by Peter Gumplinger // > cosmetics (only) -// mail: gum@triumf.ca // //////////////////////////////////////////////////////////////////////// @@ -76,10 +75,16 @@ class G4MaterialPropertiesTable public: // With description + inline void AddConstProperty(const G4String& key, + G4double PropertyValue); inline void AddConstProperty(const char *key, G4double PropertyValue); // Add a new property to the table by giving a key-name and value + G4MaterialPropertyVector* AddProperty(const G4String& key, + const std::vector& photonEnergies, + const std::vector& propertyValues); + G4MaterialPropertyVector* AddProperty(const char *key, G4double *PhotonEnergies, G4double *PropertyValues, @@ -87,22 +92,27 @@ class G4MaterialPropertiesTable // Add a new property to the table by giving a key-name and the // arrays x and y of size NumEntries. + void AddProperty(const G4String& key, G4MaterialPropertyVector* opv); void AddProperty(const char *key, G4MaterialPropertyVector *opv); // Add a new property to the table by giving a key-name and an // already constructed G4MaterialPropertyVector. + inline void RemoveConstProperty(const G4String& key); inline void RemoveConstProperty(const char *key); // Remove a constant property from the table. + inline void RemoveProperty(const G4String& key); inline void RemoveProperty(const char *key); // Remove a property from the table. + G4double GetConstProperty(const G4String& key) const; G4double GetConstProperty(const char *key) const; // Get the constant property from the table corresponding to the key-name G4double GetConstProperty(const G4int index) const; // Get the constant property from the table corresponding to the key-index + G4bool ConstPropertyExists(const G4String& key) const; G4bool ConstPropertyExists(const char *key) const; // Return true if a const property 'key' exists. @@ -111,12 +121,16 @@ class G4MaterialPropertiesTable G4MaterialPropertyVector* GetProperty(const char *key, G4bool warning=false); + G4MaterialPropertyVector* GetProperty(const G4String& key, + G4bool warning=false); // Get the property from the table corresponding to the key-name. G4MaterialPropertyVector* GetProperty(const G4int index, G4bool warning=false); // Get the property from the table corresponding to the key-index. + void AddEntry(const G4String& key, G4double aPhotonEnergy, + G4double aPropertyValue); void AddEntry(const char *key, G4double aPhotonEnergy, G4double aPropertyValue); // Add a new entry (pair of numbers) to the table for a given key. diff --git a/source/materials/include/G4MaterialPropertiesTable.icc b/source/materials/include/G4MaterialPropertiesTable.icc index b6fddbe7a8..136bf04c7d 100644 --- a/source/materials/include/G4MaterialPropertiesTable.icc +++ b/source/materials/include/G4MaterialPropertiesTable.icc @@ -34,38 +34,57 @@ // Created: 1996-02-08 // Author: Juliet Armstrong // Updated: moved to inline -// mail: gum@triumf.ca // //////////////////////////////////////////////////////////////////////// +inline +void G4MaterialPropertiesTable::AddConstProperty(const G4String& key, + G4double PropertyValue) +{ + // Provides a way of adding a constant property to the Material Properties + // Table given a key + if (std::find(G4MaterialConstPropertyName.begin(), + G4MaterialConstPropertyName.end(), key) == + G4MaterialConstPropertyName.end()) { + G4MaterialConstPropertyName.push_back(key); + } + G4int index = GetConstPropertyIndex(key); + + MCP[index] = PropertyValue; +} + inline void G4MaterialPropertiesTable::AddConstProperty(const char *key, G4double PropertyValue) { // Provides a way of adding a constant property to the Material Properties // Table given a key - G4String k(key); - if (std::find(G4MaterialConstPropertyName.begin(), - G4MaterialConstPropertyName.end(), k) == - G4MaterialConstPropertyName.end()) { - G4MaterialConstPropertyName.push_back(k); - } - G4int index = GetConstPropertyIndex(k); - - MCP[index] = PropertyValue; + AddConstProperty(G4String(key), PropertyValue); } inline -void G4MaterialPropertiesTable::RemoveConstProperty(const char *key) +void G4MaterialPropertiesTable::RemoveConstProperty(const G4String& key) { - G4int index = GetConstPropertyIndex(G4String(key)); + G4int index = GetConstPropertyIndex(key); MCP.erase(index); } inline -void G4MaterialPropertiesTable::RemoveProperty(const char *key) +void G4MaterialPropertiesTable::RemoveConstProperty(const char *key) { - G4int index = GetPropertyIndex(G4String(key)); + GetConstPropertyIndex(G4String(key)); +} + +inline +void G4MaterialPropertiesTable::RemoveProperty(const G4String& key) +{ + G4int index = GetPropertyIndex(key); MP.erase(index); } + +inline +void G4MaterialPropertiesTable::RemoveProperty(const char *key) +{ + RemoveProperty(G4String(key)); +} diff --git a/source/materials/include/G4MaterialPropertyVector.hh b/source/materials/include/G4MaterialPropertyVector.hh index b5cd025bd2..ebacc43fc0 100644 --- a/source/materials/include/G4MaterialPropertyVector.hh +++ b/source/materials/include/G4MaterialPropertyVector.hh @@ -41,7 +41,6 @@ // Author: Juliet Armstrong // Updated: 2011-10-13 by Peter Gumplinger // remove the class: simply typedef to G4PhysicsOrderedFreeVector -// mail: gum@triumf.ca // //////////////////////////////////////////////////////////////////////// diff --git a/source/materials/include/G4MicroElecMaterialStructure.hh b/source/materials/include/G4MicroElecMaterialStructure.hh new file mode 100644 index 0000000000..e6b2abecd9 --- /dev/null +++ b/source/materials/include/G4MicroElecMaterialStructure.hh @@ -0,0 +1,124 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// G4MicroElecMaterialStructure.hh, 2011/08/29 A.Valentin, M. Raine are with CEA [a] +// 2020/05/20 P. Caron, C. Inguimbert are with ONERA [b] +// Q. Gibaru is with CEA [a], ONERA [b] and CNES [c] +// M. Raine and D. Lambert are with CEA [a] +// +// A part of this work has been funded by the French space agency(CNES[c]) +// [a] CEA, DAM, DIF - 91297 ARPAJON, France +// [b] ONERA - DPHY, 2 avenue E.Belin, 31055 Toulouse, France +// [c] CNES, 18 av.E.Belin, 31401 Toulouse CEDEX, France +// +// Based on the following publications +// - A.Valentin, M. Raine, +// Inelastic cross-sections of low energy electrons in silicon +// for the simulation of heavy ion tracks with the Geant4-DNA toolkit, +// NSS Conf. Record 2010, pp. 80-85 +// https://doi.org/10.1109/NSSMIC.2010.5873720 +// +// - A.Valentin, M. Raine, M.Gaillardin, P.Paillet +// Geant4 physics processes for microdosimetry simulation: +// very low energy electromagnetic models for electrons in Silicon, +// https://doi.org/10.1016/j.nimb.2012.06.007 +// NIM B, vol. 288, pp. 66-73, 2012, part A +// heavy ions in Si, NIM B, vol. 287, pp. 124-129, 2012, part B +// https://doi.org/10.1016/j.nimb.2012.07.028 +// +// - M. Raine, M. Gaillardin, P. Paillet +// Geant4 physics processes for silicon microdosimetry simulation: +// Improvements and extension of the energy-range validity up to 10 GeV/nucleon +// NIM B, vol. 325, pp. 97-100, 2014 +// https://doi.org/10.1016/j.nimb.2014.01.014 +// +// - J. Pierron, C. Inguimbert, M. Belhaj, T. Gineste, J. Puech, M. Raine +// Electron emission yield for low energy electrons: +// Monte Carlo simulation and experimental comparison for Al, Ag, and Si +// Journal of Applied Physics 121 (2017) 215107. +// https://doi.org/10.1063/1.4984761 +// +// - P. Caron, +// Study of Electron-Induced Single-Event Upset in Integrated Memory Devices +// PHD, 16th October 2019 +// +// - Q.Gibaru, C.Inguimbert, P.Caron, M.Raine, D.Lambert, J.Puech, +// Geant4 physics processes for microdosimetry and secondary electron emission simulation : +// Extension of MicroElec to very low energies and new materials +// NIM B, 2020, in review. +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef G4MICROELECMATERIALSTRUCTURE_HH +#define G4MICROELECMATERIALSTRUCTURE_HH 1 + +#include "globals.hh" +#include "G4Material.hh" +#include + +class G4MicroElecMaterialStructure +{ +public: + G4MicroElecMaterialStructure(const G4String& matName = ""); + virtual ~G4MicroElecMaterialStructure(); + + void ReadMaterialFile(); + G4double Energy(G4int level); + G4int NumberOfLevels() { return nLevels; } + G4double GetZ(G4int Shell); + G4double ConvertUnit(const G4String& unitName); + G4double GetEnergyGap() { return energyGap; } + G4double GetInitialEnergy() { return initialEnergy; } + G4int GetEADL_Enumerator(G4int shell) { return EADL_Enumerator[shell]; }; + G4double GetWorkFunction() { return workFunction; }; + G4String GetMaterialName() { return materialName; }; + G4double GetLimitEnergy(G4int level); + G4double GetElasticModelLowLimit() {return limitElastic[0];} + G4double GetElasticModelHighLimit() { return limitElastic[1]; } + G4double GetInelasticModelLowLimit(G4int pdg); + G4double GetInelasticModelHighLimit(G4int pdg); + G4bool IsShellWeaklyBound(G4int level); + +private: + // private elements + G4int nLevels = 3; // Number of levels of material + G4bool isCompound = false; + G4String materialName = ""; + std::vector isShellWeaklyBoundVector; + std::vector energyConstant; + std::vector LimitEnergy; + std::vector EADL_Enumerator; + G4double workFunction = 0.0; + G4double initialEnergy = 0.0; + std::vector compoundShellZ; + G4double Z = 0.0; + G4double energyGap = 0.0; + G4double limitElastic[2] = { 0,0 }; + G4double limitInelastic[4] = { 0,0,0,0 }; +}; + +#endif diff --git a/source/processes/electromagnetic/lowenergy/include/G4MicroElecSiStructure.hh b/source/materials/include/G4MicroElecSiStructure.hh similarity index 100% rename from source/processes/electromagnetic/lowenergy/include/G4MicroElecSiStructure.hh rename to source/materials/include/G4MicroElecSiStructure.hh diff --git a/source/materials/include/G4OpticalSurface.hh b/source/materials/include/G4OpticalSurface.hh index 5956bdb894..eb19af9069 100644 --- a/source/materials/include/G4OpticalSurface.hh +++ b/source/materials/include/G4OpticalSurface.hh @@ -25,7 +25,7 @@ // // // -// +// //////////////////////////////////////////////////////////////////////// // G4OpticalSurface Definition //////////////////////////////////////////////////////////////////////// @@ -36,18 +36,13 @@ // Created: 1997-06-26 // Author: Peter Gumplinger // Updated: 1999-10-29 add method and class descriptors -// 2017-02-24 Mariele Stockhoff add DAVIS model -// mail: gum@triumf.ca +// 2017-02-24 Mariele Stockhoff add DAVIS model // //////////////////////////////////////////////////////////////////////// #ifndef G4OpticalSurface_h #define G4OpticalSurface_h 1 -///////////// -// Includes -///////////// - #include "G4Types.hh" #include "G4Physics2DVector.hh" #include "G4SurfaceProperty.hh" @@ -60,238 +55,240 @@ enum G4OpticalSurfaceFinish { - polished, // smooth perfectly polished surface - polishedfrontpainted, // smooth top-layer (front) paint - polishedbackpainted, // same is 'polished' but with a back-paint + polished, // smooth perfectly polished surface + polishedfrontpainted, // smooth top-layer (front) paint + polishedbackpainted, // same is 'polished' but with a back-paint - ground, // rough surface - groundfrontpainted, // rough top-layer (front) paint - groundbackpainted, // same as 'ground' but with a back-paint + ground, // rough surface + groundfrontpainted, // rough top-layer (front) paint + groundbackpainted, // same as 'ground' but with a back-paint - polishedlumirrorair, // mechanically polished surface, with lumirror - polishedlumirrorglue, // mechanically polished surface, with lumirror & meltmount - polishedair, // mechanically polished surface - polishedteflonair, // mechanically polished surface, with teflon - polishedtioair, // mechanically polished surface, with tio paint - polishedtyvekair, // mechanically polished surface, with tyvek - polishedvm2000air, // mechanically polished surface, with esr film - polishedvm2000glue, // mechanically polished surface, with esr film & meltmount + // for LBNL LUT model + polishedlumirrorair, // mechanically polished surface, with lumirror + polishedlumirrorglue, // mechanically polished surface, with lumirror & + // meltmount + polishedair, // mechanically polished surface + polishedteflonair, // mechanically polished surface, with teflon + polishedtioair, // mechanically polished surface, with tio paint + polishedtyvekair, // mechanically polished surface, with tyvek + polishedvm2000air, // mechanically polished surface, with esr film + polishedvm2000glue, // mechanically polished surface, with esr film & + // meltmount - etchedlumirrorair, // chemically etched surface, with lumirror - etchedlumirrorglue, // chemically etched surface, with lumirror & meltmount - etchedair, // chemically etched surface - etchedteflonair, // chemically etched surface, with teflon - etchedtioair, // chemically etched surface, with tio paint - etchedtyvekair, // chemically etched surface, with tyvek - etchedvm2000air, // chemically etched surface, with esr film - etchedvm2000glue, // chemically etched surface, with esr film & meltmount + etchedlumirrorair, // chemically etched surface, with lumirror + etchedlumirrorglue, // chemically etched surface, with lumirror & meltmount + etchedair, // chemically etched surface + etchedteflonair, // chemically etched surface, with teflon + etchedtioair, // chemically etched surface, with tio paint + etchedtyvekair, // chemically etched surface, with tyvek + etchedvm2000air, // chemically etched surface, with esr film + etchedvm2000glue, // chemically etched surface, with esr film & meltmount - groundlumirrorair, // rough-cut surface, with lumirror - groundlumirrorglue, // rough-cut surface, with lumirror & meltmount - groundair, // rough-cut surface - groundteflonair, // rough-cut surface, with teflon - groundtioair, // rough-cut surface, with tio paint - groundtyvekair, // rough-cut surface, with tyvek - groundvm2000air, // rough-cut surface, with esr film - groundvm2000glue, // rough-cut surface, with esr film & meltmount - - // for DAVIS model - Rough_LUT, //rough surface - RoughTeflon_LUT, //rough surface wrapped in Teflon tape - RoughESR_LUT, //rough surface wrapped with ESR - RoughESRGrease_LUT, //rough surface wrapped with ESR - //and coupled with opical grease - Polished_LUT, //polished surface - PolishedTeflon_LUT, //polished surface wrapped in Teflon tape - PolishedESR_LUT, //polished surface wrapped with ESR - PolishedESRGrease_LUT, //polished surface wrapped with ESR - //and coupled with opical grease - Detector_LUT //polished surface with optical grease + groundlumirrorair, // rough-cut surface, with lumirror + groundlumirrorglue, // rough-cut surface, with lumirror & meltmount + groundair, // rough-cut surface + groundteflonair, // rough-cut surface, with teflon + groundtioair, // rough-cut surface, with tio paint + groundtyvekair, // rough-cut surface, with tyvek + groundvm2000air, // rough-cut surface, with esr film + groundvm2000glue, // rough-cut surface, with esr film & meltmount + + // for DAVIS model + Rough_LUT, // rough surface + RoughTeflon_LUT, // rough surface wrapped in Teflon tape + RoughESR_LUT, // rough surface wrapped with ESR + RoughESRGrease_LUT, // rough surface wrapped with ESR + // and coupled with optical grease + Polished_LUT, // polished surface + PolishedTeflon_LUT, // polished surface wrapped in Teflon tape + PolishedESR_LUT, // polished surface wrapped with ESR + PolishedESRGrease_LUT, // polished surface wrapped with ESR + // and coupled with optical grease + Detector_LUT // polished surface with optical grease }; enum G4OpticalSurfaceModel { - glisur, // original GEANT3 model - unified, // UNIFIED model - LUT, // Look-Up-Table model - DAVIS, // DAVIS model - dichroic // dichroic filter + glisur, // original GEANT3 model + unified, // UNIFIED model + LUT, // Look-Up-Table model (LBNL model) + DAVIS, // DAVIS model + dichroic // dichroic filter }; class G4MaterialPropertiesTable; -///////////////////// -// Class Definition -///////////////////// - class G4OpticalSurface : public G4SurfaceProperty { + public: + G4OpticalSurface(const G4OpticalSurface& right); + G4OpticalSurface& operator=(const G4OpticalSurface& right); -public: // Without description - - ////////////// - // Operators - ////////////// - - G4OpticalSurface(const G4OpticalSurface &right); - G4OpticalSurface & operator=(const G4OpticalSurface &right); - - G4bool operator==(const G4OpticalSurface &right) const; - G4bool operator!=(const G4OpticalSurface &right) const; + G4bool operator==(const G4OpticalSurface& right) const; + G4bool operator!=(const G4OpticalSurface& right) const; -public: // With description + G4OpticalSurface(const G4String& name, G4OpticalSurfaceModel model = glisur, + G4OpticalSurfaceFinish finish = polished, + G4SurfaceType type = dielectric_dielectric, + G4double value = 1.0); + // Constructor of an optical surface object. - //////////////////////////////// - // Constructors and Destructor - //////////////////////////////// + virtual ~G4OpticalSurface(); - G4OpticalSurface(const G4String& name, - G4OpticalSurfaceModel model = glisur, - G4OpticalSurfaceFinish finish = polished, - G4SurfaceType type = dielectric_dielectric, - G4double value = 1.0); - // Constructor of an optical surface object. + void SetType(const G4SurfaceType& type) override; -public: // Without description + inline G4OpticalSurfaceFinish GetFinish() const { return theFinish; } + // Returns the optical surface finish. + void SetFinish(const G4OpticalSurfaceFinish); + // Sets the optical surface finish. - virtual ~G4OpticalSurface(); + inline G4OpticalSurfaceModel GetModel() const { return theModel; } + // Returns the optical surface model used. + inline void SetModel(const G4OpticalSurfaceModel model) { theModel = model; } + // Sets the optical surface model to be followed. - //////////// - // Methods - //////////// + inline G4double GetSigmaAlpha() const { return sigma_alpha; } + // Returns an unified model surface parameter. + inline void SetSigmaAlpha(const G4double s_a) { sigma_alpha = s_a; } + // Sets an unified model surface parameter. - // public methods + G4double GetPolish() const { return polish; } + // Returns the optical surface polish type. + inline void SetPolish(const G4double plsh) { polish = plsh; } + // Sets the optical surface polish type. -public: // With description + inline G4MaterialPropertiesTable* GetMaterialPropertiesTable() const + { + return theMaterialPropertiesTable; + } + // Retrieves the pointer of the G4MaterialPropertiesTable + // attached to optical surface. - void SetType(const G4SurfaceType& type); + inline void SetMaterialPropertiesTable(G4MaterialPropertiesTable* anMPT) + { + theMaterialPropertiesTable = anMPT; + } + // Attaches a G4MaterialPropertiesTable to the optical surface. - inline G4OpticalSurfaceFinish GetFinish() const { return theFinish; } - // Returns the optical surface finish. - void SetFinish(const G4OpticalSurfaceFinish ); - // Sets the optical surface finish. + void DumpInfo() const; + // Prints information about the optical surface. - inline G4OpticalSurfaceModel GetModel() const { return theModel; } - // Returns the optical surface model used. - inline void SetModel(const G4OpticalSurfaceModel model) - { theModel = model; } - // Sets the optical surface model to be followed. + void ReadDataFile(void); + // call the correct ReadXXXFile - inline G4double GetSigmaAlpha() const { return sigma_alpha; } - // Returns an unified model surface parameter. - inline void SetSigmaAlpha(const G4double s_a) { sigma_alpha = s_a; } - // Sets an unified model surface parameter. + void ReadCompressedFile(G4String, std::istringstream&); + // read a zlib-compressed file - G4double GetPolish() const { return polish; } - // Returns the optical surface polish type. - inline void SetPolish(const G4double plsh) { polish=plsh; } - // Sets the optical surface polish type. + void ReadLUTFile(void); + // Method to read the Look-Up-Table into array AngularDistribution - inline G4MaterialPropertiesTable* GetMaterialPropertiesTable() const - { return theMaterialPropertiesTable; } - // Retrieves the pointer of the G4MaterialPropertiesTable - // attached to optical surface. + inline G4double GetAngularDistributionValue(G4int, G4int, G4int); - inline void SetMaterialPropertiesTable(G4MaterialPropertiesTable *anMPT) - { theMaterialPropertiesTable = anMPT; } - // Attaches a G4MaterialPropertiesTable to the optical surface. + // for DAVIS model - void DumpInfo() const; - // Prints information about the optical surface. + inline G4double GetAngularDistributionValueLUT(G4int); + // Returns the AngularDistributionValue - void ReadLUTFile(void); - // Method to read the Look-Up-Table into array AngularDistribution + void ReadLUTDAVISFile(void); + // Method to read the Davis Look-Up-Table into array AngularDistribution - inline G4double GetAngularDistributionValue(G4int, G4int, G4int); - - // for DAVIS model + void ReadReflectivityLUTFile(void); + // Method to read the Look-Up-Table for reflectivity - inline G4double GetAngularDistributionValueLUT(G4int); - // Returns the AngularDistributionValue + inline G4double GetReflectivityLUTValue(G4int); + // Returns the reflectivity value from the Davis Look-Up-Table - void ReadLUTDAVISFile(void); - // Method to read the Davis Look-Up-Table into array AngularDistribution - - void ReadReflectivityLUTFile(void); - // Method to read the Look-Up-Table for reflectivity - - inline G4double GetReflectivityLUTValue(G4int); - // Returns the reflectivity value from the Davis Look-Up-Table - - G4int GetInmax(void) const; - // Returns the number of lines in the Davis Look-Up-Table + G4int GetInmax(void) const; + // Returns the number of lines in the Davis Look-Up-Table - G4int GetLUTbins(void) const; - // Returns the number of probability values per incidentangle + G4int GetLUTbins(void) const; + // Returns the number of probability values per incidentangle - G4int GetRefMax(void) const; - // Returns the number of reflectivity values per angle - - G4int GetThetaIndexMax(void) const; - G4int GetPhiIndexMax(void) const; + G4int GetRefMax(void) const; + // Returns the number of reflectivity values per angle - void ReadDichroicFile(void); - // Method to read the dichroic surface data file into Dichroic + G4int GetThetaIndexMax(void) const; + G4int GetPhiIndexMax(void) const; - inline G4Physics2DVector* GetDichroicVector(); + void ReadDichroicFile(void); + // Method to read the dichroic surface data file into Dichroic -private: + inline G4Physics2DVector* GetDichroicVector(); -// ------------------ -// Basic data members ( To define an optical surface) -// ------------------ + private: + G4OpticalSurfaceModel theModel; // Surface model + G4OpticalSurfaceFinish theFinish; // Surface finish - G4OpticalSurfaceModel theModel; // Surface model - G4OpticalSurfaceFinish theFinish; // Surface finish + G4double sigma_alpha; // The sigma of micro-facet polar angle + G4double polish; // Polish parameter in glisur model - G4double sigma_alpha; // The sigma of micro-facet polar angle - G4double polish; // Polish parameter in glisur model + G4MaterialPropertiesTable* theMaterialPropertiesTable; - G4MaterialPropertiesTable* theMaterialPropertiesTable; + static const G4int incidentIndexMax = 91; + static const G4int thetaIndexMax = 45; + static const G4int phiIndexMax = 37; - static const G4int incidentIndexMax = 91; - static const G4int thetaIndexMax = 45; - static const G4int phiIndexMax = 37; + G4float* AngularDistribution; + G4Physics2DVector* DichroicVector; - G4float* AngularDistribution; - G4Physics2DVector* DichroicVector; - - // for DAVIS model - static const G4int indexmax = 7280001; // 3640001; - static const G4int RefMax = 90; - static const G4int LUTbins =20000; - G4float* AngularDistributionLUT; - G4float* Reflectivity; + // for DAVIS model + static const G4int indexmax = 7280001; // 3640001; + static const G4int RefMax = 90; + static const G4int LUTbins = 20000; + G4float* AngularDistributionLUT; + G4float* Reflectivity; }; //////////////////// // Inline methods //////////////////// -inline - G4double G4OpticalSurface::GetAngularDistributionValue(G4int angleIncident, - G4int thetaIndex, - G4int phiIndex) +inline G4double G4OpticalSurface::GetAngularDistributionValue( + G4int angleIncident, G4int thetaIndex, G4int phiIndex) { - return AngularDistribution[angleIncident+ - thetaIndex*incidentIndexMax+ - phiIndex*thetaIndexMax*incidentIndexMax]; + G4int product = angleIncident * thetaIndex * phiIndex; + if(product < 0 || product >= incidentIndexMax * thetaIndexMax * phiIndexMax) + { + G4ExceptionDescription ed; + ed << "Index angleIncident: " << angleIncident + << " thetaIndex: " << thetaIndex << " phiIndex: " << phiIndex + << " out of range!"; + G4Exception("G4OpticalSurface::GetAngularDistributionValue", "mat317", + FatalException, ed); + return 0.; + } + return (G4double) + AngularDistribution[angleIncident + thetaIndex * incidentIndexMax + + phiIndex * thetaIndexMax * incidentIndexMax]; } -inline - G4double G4OpticalSurface::GetAngularDistributionValueLUT(G4int i) +inline G4double G4OpticalSurface::GetAngularDistributionValueLUT(G4int i) { - return AngularDistributionLUT[i]; + if(i < 0 || i >= indexmax) + { + G4ExceptionDescription ed; + ed << "Index " << i << " out of range!"; + G4Exception("G4OpticalSurface::GetAngularDistributionValueLUT", "mat318", + FatalException, ed); + return 0.; + } + return (G4double) AngularDistributionLUT[i]; } -inline - G4double G4OpticalSurface::GetReflectivityLUTValue(G4int i) +inline G4double G4OpticalSurface::GetReflectivityLUTValue(G4int i) { - return Reflectivity[i]; + if(i < 0 || i >= RefMax) + { + G4ExceptionDescription ed; + ed << "Index " << i << " out of range!"; + G4Exception("G4OpticalSurface::GetReflectivityLUTValue", "mat319", + FatalException, ed); + return 0.; + } + return (G4double) Reflectivity[i]; } -inline - G4Physics2DVector* G4OpticalSurface::GetDichroicVector() +inline G4Physics2DVector* G4OpticalSurface::GetDichroicVector() { return DichroicVector; } diff --git a/source/materials/include/G4SurfaceProperty.hh b/source/materials/include/G4SurfaceProperty.hh index 3890fa83e9..02173b3ed4 100644 --- a/source/materials/include/G4SurfaceProperty.hh +++ b/source/materials/include/G4SurfaceProperty.hh @@ -25,7 +25,7 @@ // // // -// +// //////////////////////////////////////////////////////////////////////// // G4SurfaceProperty Definition //////////////////////////////////////////////////////////////////////// @@ -33,7 +33,7 @@ // Class Description: // // A base class describing a surface property. -// Derived classes are G4Opticalsurface, G4Firovsurface, etc. +// Derived classes are G4Opticalsurface, G4Firovsurface, etc. // Contains the enumeration G4SurfaceType. // File: G4SurfaceProperty.hh @@ -42,16 +42,12 @@ // Version: 1.0 // Created: 13-10-2003 // Author: Fan Lei -// Updated: Mariele Stockhoff 2017-02-24 add DAVIS model +// Updated: Mariele Stockhoff 2017-02-24 add DAVIS model //////////////////////////////////////////////////////////////////////// #ifndef G4SurfaceProperty_h #define G4SurfaceProperty_h 1 -///////////// -// Includes -///////////// - #include #include "G4Types.hh" @@ -63,81 +59,47 @@ typedef std::vector G4SurfacePropertyTable; enum G4SurfaceType { - dielectric_metal, // dielectric-metal interface - dielectric_dielectric, // dielectric-dielectric interface - dielectric_LUT, // dielectric-Look-Up-Table interface - dielectric_LUTDAVIS, // dielectric-Look-Up-Table DAVIS interface - dielectric_dichroic, // dichroic filter interface - firsov, // for Firsov Process - x_ray // for x-ray mirror process + dielectric_metal, // dielectric-metal interface + dielectric_dielectric, // dielectric-dielectric interface + dielectric_LUT, // dielectric-Look-Up-Table interface + dielectric_LUTDAVIS, // dielectric-Look-Up-Table DAVIS interface + dielectric_dichroic, // dichroic filter interface + firsov, // for Firsov Process + x_ray // for x-ray mirror process }; -///////////////////// -// Class Definition -///////////////////// - class G4SurfaceProperty { - public: // Without description + public: + G4SurfaceProperty(const G4String& name, G4SurfaceType type = x_ray); + // Constructor of a X-ray optical surface object. - ////////////// - // Operators - ////////////// + G4SurfaceProperty(); + virtual ~G4SurfaceProperty(); - // G4SurfaceProperty(const G4SurfaceProperty &right); - // const G4SurfaceProperty & operator=(const G4SurfaceProperty &right); + const G4String& GetName() const { return theName; } + // Returns the surface name. + void SetName(const G4String& name) { theName = name; } + // Sets the surface name. - // G4bool operator==(const G4SurfaceProperty &right) const; - // G4bool operator!=(const G4SurfaceProperty &right) const; + const G4SurfaceType& GetType() const { return theType; } + // Returns the surface type. + virtual void SetType(const G4SurfaceType& type) { theType = type; } + // Sets the surface type. - public: // With description + static void CleanSurfacePropertyTable(); + static const G4SurfacePropertyTable* GetSurfacePropertyTable(); + static size_t GetNumberOfSurfaceProperties(); + static void DumpTableInfo(); + // To handle the table of surface properties. - //////////////////////////////// - // Constructors and Destructor - //////////////////////////////// + protected: + G4String theName; // Surface name - G4SurfaceProperty(const G4String& name, G4SurfaceType type = x_ray); - // Constructor of a X-ray optical surface object. + G4SurfaceType theType; // Surface type - public: // Without description - - G4SurfaceProperty(); - virtual ~G4SurfaceProperty(); - - //////////// - // Methods - //////////// - - public: // With description - - const G4String& GetName() const { return theName; } - // Returns the surface name. - void SetName(const G4String& name) { theName = name; } - // Sets the surface name. - - const G4SurfaceType& GetType() const { return theType; } - // Returns the surface type. - void SetType(const G4SurfaceType& type) { theType = type; } - // Sets the surface type. - - static void CleanSurfacePropertyTable(); - static const G4SurfacePropertyTable* GetSurfacePropertyTable(); - static size_t GetNumberOfSurfaceProperties(); - static void DumpTableInfo(); - // To handle the table of surface properties. - - protected: - - // ------------------ - // Basic data members ( To define surface property) - // ------------------ - - G4String theName; // Surface name - - G4SurfaceType theType; // Surface type - - static G4SurfacePropertyTable theSurfacePropertyTable; - // The static Table of SurfaceProperties. + static G4SurfacePropertyTable theSurfacePropertyTable; + // The static Table of SurfaceProperties. }; #endif /* G4SurfaceProperty_h */ diff --git a/source/materials/include/G4UCNMaterialPropertiesTable.hh b/source/materials/include/G4UCNMaterialPropertiesTable.hh old mode 100755 new mode 100644 diff --git a/source/materials/include/G4UCNMicroRoughnessHelper.hh b/source/materials/include/G4UCNMicroRoughnessHelper.hh old mode 100755 new mode 100644 diff --git a/source/materials/sources.cmake b/source/materials/sources.cmake index 26da250aee..c1c1482859 100644 --- a/source/materials/sources.cmake +++ b/source/materials/sources.cmake @@ -34,11 +34,13 @@ geant4_define_module(NAME G4materials G4LatticeLogical.hh G4LatticePhysical.hh G4Material.hh - G4MaterialPropertiesIndex.hh + G4MaterialPropertiesIndex.hh G4MaterialPropertiesTable.hh G4MaterialPropertiesTable.icc G4MaterialPropertyVector.hh G4MaterialTable.hh + G4MicroElecMaterialStructure.hh + G4MicroElecSiStructure.hh G4NistElementBuilder.hh G4NistManager.hh G4NistMaterialBuilder.hh @@ -73,6 +75,8 @@ geant4_define_module(NAME G4materials G4LatticePhysical.cc G4Material.cc G4MaterialPropertiesTable.cc + G4MicroElecMaterialStructure.cc + G4MicroElecSiStructure.cc G4NistElementBuilder.cc G4NistManager.cc G4NistMaterialBuilder.cc @@ -90,6 +94,7 @@ geant4_define_module(NAME G4materials G4global G4intercoms LINK_LIBRARIES + ${ZLIB_LIBRARIES} ) # List any source specific properties here diff --git a/source/materials/src/G4Element.cc b/source/materials/src/G4Element.cc index 13d7df73cc..b2880a9efe 100644 --- a/source/materials/src/G4Element.cc +++ b/source/materials/src/G4Element.cc @@ -78,7 +78,7 @@ G4Element::G4Element(const G4String& name, const G4String& symbol, G4int iz = G4lrint(zeff); if (iz < 1) { G4ExceptionDescription ed; - ed << "Fail to create G4Element " << name + ed << "Failed to create G4Element " << name << " Z= " << zeff << " < 1 !"; G4Exception ("G4Element::G4Element()", "mat011", FatalException, ed); } @@ -99,7 +99,7 @@ G4Element::G4Element(const G4String& name, const G4String& symbol, if (fNeff < zeff) { G4ExceptionDescription ed; - ed << "Fail to create G4Element " << name + ed << "Failed to create G4Element " << name << " with Z= " << zeff << " N= " << fNeff << " N < Z is not allowed" << G4endl; G4Exception("G4Element::G4Element()", "mat012", FatalException, ed); @@ -134,9 +134,9 @@ G4Element::G4Element(const G4String& name, if(0 >= nIsotopes) { G4ExceptionDescription ed; - ed << "Fail to create G4Element " << name + ed << "Failed to create G4Element " << name << " <" << symbol << "> with " << nIsotopes - << " isotopes"; + << " isotopes."; G4Exception ("G4Element::G4Element()", "mat012", FatalException, ed); } else { theIsotopeVector = new G4IsotopeVector(n,0); @@ -152,7 +152,7 @@ void G4Element::AddIsotope(G4Isotope* isotope, G4double abundance) { if (theIsotopeVector == 0) { G4ExceptionDescription ed; - ed << "Fail to add Isotope to G4Element " << fName + ed << "Failed to add Isotope to G4Element " << fName << " with Z= " << fZeff << " N= " << fNeff; G4Exception ("G4Element::AddIsotope()", "mat013", FatalException, ed); return; @@ -165,7 +165,7 @@ void G4Element::AddIsotope(G4Isotope* isotope, G4double abundance) if (fNumberOfIsotopes==0) { fZeff = G4double(iz); } else if (G4double(iz) != fZeff) { G4ExceptionDescription ed; - ed << "Fail to add Isotope Z= " << iz << " to G4Element " << fName + ed << "Failed to add Isotope Z= " << iz << " to G4Element " << fName << " with different Z= " << fZeff << fNeff; G4Exception ("G4Element::AddIsotope()", "mat014", FatalException, ed); return; @@ -177,8 +177,8 @@ void G4Element::AddIsotope(G4Isotope* isotope, G4double abundance) } else { G4ExceptionDescription ed; - ed << "Fail to add Isotope Z= " << iz << " to G4Element " << fName - << " - more isotopes than declaired "; + ed << "Failed to add Isotope Z= " << iz << " to G4Element " << fName + << " - more isotopes than declared."; G4Exception ("G4Element::AddIsotope()", "mat015", FatalException, ed); return; } diff --git a/source/materials/src/G4MaterialPropertiesTable.cc b/source/materials/src/G4MaterialPropertiesTable.cc index 1d25acb2d9..716e11922f 100644 --- a/source/materials/src/G4MaterialPropertiesTable.cc +++ b/source/materials/src/G4MaterialPropertiesTable.cc @@ -41,7 +41,6 @@ // by John Allison // 1997-03-26 by Peter Gumplinger // > cosmetics (only) -// mail: gum@triumf.ca // //////////////////////////////////////////////////////////////////////// @@ -233,13 +232,17 @@ G4double G4MaterialPropertiesTable::GetConstProperty(const G4int index) const return 0.; } -G4double G4MaterialPropertiesTable::GetConstProperty(const char *key) const +G4double G4MaterialPropertiesTable::GetConstProperty(const G4String& key) const { // Returns the constant material property corresponding to a key // fatal exception if property not found - const G4int index = GetConstPropertyIndex(G4String(key)); - return GetConstProperty(index); + return GetConstProperty(GetConstPropertyIndex(key)); +} + +G4double G4MaterialPropertiesTable::GetConstProperty(const char *key) const +{ + return GetConstProperty(G4String(key)); } G4bool G4MaterialPropertiesTable::ConstPropertyExists(const G4int index) const @@ -252,20 +255,29 @@ G4bool G4MaterialPropertiesTable::ConstPropertyExists(const G4int index) const return false; } -G4bool G4MaterialPropertiesTable::ConstPropertyExists(const char *key) const +G4bool G4MaterialPropertiesTable::ConstPropertyExists(const G4String& key) const { // Returns true if a const property 'key' exists - const G4int index = GetConstPropertyIndex(G4String(key)); - return ConstPropertyExists(index); + return ConstPropertyExists(GetConstPropertyIndex(key)); } +G4bool G4MaterialPropertiesTable::ConstPropertyExists(const char *key) const +{ + return ConstPropertyExists(G4String(key)); +} + +G4MaterialPropertyVector* +G4MaterialPropertiesTable::GetProperty(const G4String& key, G4bool warning) +{ + // Returns a Material Property Vector corresponding to a key + const G4int index = GetPropertyIndex(key, warning); + return GetProperty(index); +} G4MaterialPropertyVector* G4MaterialPropertiesTable::GetProperty(const char *key, G4bool warning) { - // Returns a Material Property Vector corresponding to a key - const G4int index = GetPropertyIndex(G4String(key), warning); - return GetProperty(index); + return GetProperty(G4String(key), warning); } G4MaterialPropertyVector* @@ -284,6 +296,39 @@ G4MaterialPropertiesTable::GetProperty(const G4int index, G4bool warning) return nullptr; } +G4MaterialPropertyVector* G4MaterialPropertiesTable::AddProperty( + const G4String& key, + const std::vector& photonEnergies, + const std::vector& propertyValues) +{ + if (photonEnergies.size() != propertyValues.size()) { + G4ExceptionDescription ed; + ed << "AddProperty error!"; + G4Exception("G4MaterialPropertiesTable::AddProperty()", "mat210", + FatalException, ed); + } + + // if the key doesn't exist, add it + if (std::find(G4MaterialPropertyName.begin(), + G4MaterialPropertyName.end(), key) == + G4MaterialPropertyName.end()) { + G4MaterialPropertyName.push_back(key); + } + + G4MaterialPropertyVector *mpv = new G4MaterialPropertyVector(photonEnergies, + propertyValues); + G4int index = GetPropertyIndex(key); + MP[index] = mpv; + + // if key is RINDEX, we calculate GROUPVEL - + // contribution from Tao Lin (IHEP, the JUNO experiment) + if (key=="RINDEX") { + CalculateGROUPVEL(); + } + + return mpv; +} + G4MaterialPropertyVector* G4MaterialPropertiesTable::AddProperty( const char *key, G4double *PhotonEnergies, @@ -293,62 +338,53 @@ G4MaterialPropertyVector* G4MaterialPropertiesTable::AddProperty( // Provides a way of adding a property to the Material Properties // Table given a pair of numbers and a key G4String k(key); + std::vector energies; + std::vector values; + for (G4int i=0; i> filler >> type; + materialName = filler; + if (type == "Compound") {isCompound = true; Z = 0; } + else { isCompound = false; Z = std::stoi(type); } + while(!fichier.eof()) { + + getline(fichier, filler); + std::stringstream line(filler); + + if (filler(0) == '#' || filler.empty()) {continue;} + + line >> varLength; + line >> nameParameter; + line >> unitName; + unitValue = ConvertUnit(unitName); + + for (int i = 0; i < varLength; i++) + { + line >> data; data = data*unitValue; + + if (nameParameter == "WorkFunction") workFunction = data; + if (nameParameter == "EnergyGap") energyGap = data; + + if (nameParameter == "EnergyPeak") energyConstant.push_back(data); + if (nameParameter == "EnergyLimit") LimitEnergy.push_back(data); + if (nameParameter == "EADL") EADL_Enumerator.push_back(data); + + if (nameParameter == "WeaklyBoundShell") + {if (data == 0) { isShellWeaklyBoundVector.push_back(false); } + else {isShellWeaklyBoundVector.push_back(true);}} + + if (nameParameter == "WeaklyBoundInitialEnergy") initialEnergy = data; + + if (nameParameter == "ShellAtomicNumber") compoundShellZ.push_back(data); + + if (nameParameter == "DielectricModelLowEnergyLimit_e") limitInelastic[0]=data; + if (nameParameter == "DielectricModelHighEnergyLimit_e") limitInelastic[1] = data; + if (nameParameter == "DielectricModelLowEnergyLimit_p") limitInelastic[2] = data; + if (nameParameter == "DielectricModelHighEnergyLimit_p") limitInelastic[3] = data; + + if (nameParameter == "ElasticModelLowEnergyLimit") limitElastic[0] = data; + if (nameParameter == "ElasticModelHighEnergyLimit") limitElastic[1] = data; + } + } + fichier.close(); // on ferme le fichier + } + else { + G4String str = "file "; + str += fileName.str() + " not found!"; + G4Exception("G4MicroElecMaterialStructure::ReadMaterialFile", "em0002", FatalException, str); + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecMaterialStructure::Energy(G4int level) +{ + return (level >= 0 && level < nLevels) ? energyConstant[level] : 0.0; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecMaterialStructure::GetZ(G4int Shell) +{ + if (Shell >= 0 && Shell < nLevels) { + if (!isCompound) return Z; + else return compoundShellZ[Shell]; + } + else return 0; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecMaterialStructure::ConvertUnit(const G4String& unitName) +{ + G4double unitValue = 0; + if (unitName == "meV") unitValue = 1e-3*CLHEP::eV; + else if (unitName == "eV") unitValue = CLHEP::eV; + else if (unitName == "keV") unitValue = CLHEP::keV; + else if (unitName == "MeV") unitValue = CLHEP::MeV; + else if (unitName == "noUnit") unitValue = 1; + + return unitValue; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecMaterialStructure::GetLimitEnergy(G4int level) +{ + G4double E = LimitEnergy[level]; + if (IsShellWeaklyBound(level)) { E = energyGap+ initialEnergy; } + return E; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecMaterialStructure::GetInelasticModelLowLimit(G4int pdg) +{ + G4double res = 0.0; + if (pdg == 11) res = limitInelastic[0]; + else if (pdg == 2212) res = limitInelastic[2]; + return res; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecMaterialStructure::GetInelasticModelHighLimit(G4int pdg) +{ + G4double res = 0.0; + if (pdg == 11) res = limitInelastic[1]; + else if (pdg == 2212) res = limitInelastic[3]; + return res; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4bool G4MicroElecMaterialStructure::IsShellWeaklyBound(G4int level) +{ + return isShellWeaklyBoundVector[level]; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + diff --git a/source/processes/electromagnetic/lowenergy/src/G4MicroElecSiStructure.cc b/source/materials/src/G4MicroElecSiStructure.cc similarity index 100% rename from source/processes/electromagnetic/lowenergy/src/G4MicroElecSiStructure.cc rename to source/materials/src/G4MicroElecSiStructure.cc diff --git a/source/materials/src/G4NistManager.cc b/source/materials/src/G4NistManager.cc index c5ee1ae65e..8c0314d4df 100644 --- a/source/materials/src/G4NistManager.cc +++ b/source/materials/src/G4NistManager.cc @@ -128,7 +128,7 @@ G4NistManager::BuildMaterialWithNewDensity(const G4String& name, if(bmat) { G4cout << "G4NistManager::BuildMaterialWithNewDensity ERROR: " << G4endl; G4cout << " New material <" << name << "> cannot be built because material" - << " with the same name already exist" << G4endl; + << " with the same name already exists." << G4endl; G4Exception("G4NistManager::BuildMaterialWithNewDensity()", "mat101", FatalException, "Wrong material name"); return 0; @@ -138,7 +138,7 @@ G4NistManager::BuildMaterialWithNewDensity(const G4String& name, G4cout << "G4NistManager::BuildMaterialWithNewDensity ERROR: " << G4endl; G4cout << " New material <" << name << "> cannot be built because " << G4endl; - G4cout << " base material <" << basename << "> does not exist" << G4endl; + G4cout << " base material <" << basename << "> does not exist." << G4endl; G4Exception("G4NistManager::BuildMaterialWithNewDensity()", "mat102", FatalException, "Wrong material name"); return 0; diff --git a/source/materials/src/G4NistMaterialBuilder.cc b/source/materials/src/G4NistMaterialBuilder.cc index 075c1b94e1..2dc968355a 100644 --- a/source/materials/src/G4NistMaterialBuilder.cc +++ b/source/materials/src/G4NistMaterialBuilder.cc @@ -149,7 +149,7 @@ G4Material* G4NistMaterialBuilder::BuildNistMaterial(const G4String& name, if( (verbose == 1 && warning) || verbose > 1) { G4cout << "G4NistMaterialBuilder::FindOrBuildMaterial WARNING:" << " material <" << name - << "> is not found out" << G4endl; + << "> is not found." << G4endl; } return mat; } @@ -208,11 +208,11 @@ G4Material* G4NistMaterialBuilder::BuildMaterial(G4int i) G4Element* el = elmBuilder->FindOrBuildElement(Z); if(!el) { G4cout << "G4NistMaterialBuilder::BuildMaterial:" - << " ERROR: elements Z= " << Z << " is not found " + << " ERROR: elements Z= " << Z << " is not found" << " for material " << names[i] << G4endl; G4Exception("G4NistMaterialBuilder::BuildMaterial()", "mat103", - FatalException, "Fail to construct material"); + FatalException, "Failed to construct material"); return 0; } if(atomCount[i]) { @@ -258,7 +258,7 @@ G4Material* G4NistMaterialBuilder::ConstructNewMaterial( if(mat) { G4cout << "G4NistMaterialBuilder::ConstructNewMaterial:" << " WARNING: the material <" << name - << "> is already exist" << G4endl; + << "> already exists." << G4endl; G4cout << " New material will NOT be built!" << G4endl; return mat; @@ -309,7 +309,7 @@ G4Material* G4NistMaterialBuilder::ConstructNewMaterial( if(mat) { G4cout << "G4NistMaterialBuilder::ConstructNewMaterial:" << " WARNING: the material <" << name - << "> is already exist" << G4endl; + << "> already exists." << G4endl; G4cout << " New material will NOT be built!" << G4endl; return mat; @@ -356,7 +356,7 @@ G4Material* G4NistMaterialBuilder::ConstructNewGasMaterial( if(mat) { G4cout << "G4NistMaterialBuilder::ConstructNewGasMaterial:" << " WARNING: the material <" << name - << "> is already exist" << G4endl; + << "> already exists." << G4endl; G4cout << " New material will NOT be built!" << G4endl; return mat; @@ -366,14 +366,14 @@ G4Material* G4NistMaterialBuilder::ConstructNewGasMaterial( if(!bmat) { G4cout << "G4NistMaterialBuilder::ConstructNewGasMaterial:" << " WARNING: the Name <" << nameDB - << "> is NOT in the DB: no new gas will be constructed" + << "> is NOT in the database: no new gas will be constructed." << G4endl; return 0; } if(bmat->GetState() != kStateGas) { G4cout << "G4NistMaterialBuilder::ConstructNewGasMaterial:" << " WARNING: <" << nameDB - << "> is NOT a gas - no new gas will be constructed" + << "> is NOT a gas - no new gas will be constructed." << G4endl; return 0; } @@ -406,7 +406,7 @@ G4Material* G4NistMaterialBuilder::ConstructNewIdealGasMaterial( if(mat) { G4cout << "G4NistMaterialBuilder::ConstructNewMaterial:" << " WARNING: the material <" << name - << "> is already exist" << G4endl; + << "> already exists." << G4endl; G4cout << " New material will NOT be built!" << G4endl; return mat; @@ -467,10 +467,10 @@ void G4NistMaterialBuilder::AddMaterial(const G4String& nameMat, G4double dens, if (nCurrent != 0) { G4cout << "G4NistMaterialBuilder::AddMaterial WARNING: previous " - << "mixture " << nMaterials << " " << names[nMaterials] + << "mixture " << nMaterials << " " << names[nMaterials] << " is not yet complete!" << G4endl; - G4cout << " New material " << nameMat << " will not be added" + G4cout << " New material " << nameMat << " will not be added." << G4endl; return; } @@ -501,7 +501,7 @@ void G4NistMaterialBuilder::AddMaterial(const G4String& nameMat, G4double dens, ++nMaterials; if(verbose > 1) { - G4cout << "New material " << nameMat << " is prepeared; " + G4cout << "New material " << nameMat << " is prepared; " << " nMaterials= " << nMaterials << " nComponents= " << nComponents << " nCurrent= " << nCurrent @@ -536,7 +536,7 @@ void G4NistMaterialBuilder::ListMaterials(const G4String& mnam) const } else { G4cout << "### G4NistMaterialBuilder::ListMaterials: Warning " - << mnam << " list is not known" << G4endl; + << mnam << " list is not known." << G4endl; } } @@ -648,7 +648,7 @@ G4NistMaterialBuilder::AddGas(const G4String& nameMat, G4double t, G4double p) } } G4cout << "WARNING: G4NistMaterialBuilder::AddGas problem: there is no " - << nameMat << " in the list of materials;" + << nameMat << " in the list of materials." << G4endl; } diff --git a/source/materials/src/G4OpticalSurface.cc b/source/materials/src/G4OpticalSurface.cc index 83b9ab99be..e8decf3650 100644 --- a/source/materials/src/G4OpticalSurface.cc +++ b/source/materials/src/G4OpticalSurface.cc @@ -24,7 +24,7 @@ // ******************************************************************** // // -// +// //////////////////////////////////////////////////////////////////////// // Optical Surface Class Implementation //////////////////////////////////////////////////////////////////////// @@ -34,553 +34,493 @@ // Version: 2.0 // Created: 1997-06-26 // Author: Peter Gumplinger -// updated: 2017-02-24 Mariele Stockhoff add DAVIS model -// mail: gum@triumf.ca +// updated: 2017-02-24 Mariele Stockhoff add DAVIS model //////////////////////////////////////////////////////////////////////// #include #include +#include -//#include "G4ios.hh" #include "globals.hh" #include "G4OpticalSurface.hh" -///////////////////////// -// Class Implementation -///////////////////////// - - ////////////// - // Operators - ////////////// - G4OpticalSurface& G4OpticalSurface::operator=(const G4OpticalSurface& right) { - if (this != &right) - { - theName = right.theName; - theType = right.theType; - theModel = right.theModel; - theFinish = right.theFinish; - sigma_alpha = right.sigma_alpha; - polish = right.polish; - theMaterialPropertiesTable = right.theMaterialPropertiesTable; + if(this != &right) + { + theName = right.theName; + theType = right.theType; + theModel = right.theModel; + theFinish = right.theFinish; + sigma_alpha = right.sigma_alpha; + polish = right.polish; + theMaterialPropertiesTable = right.theMaterialPropertiesTable; - if (AngularDistribution) delete [] AngularDistribution; - AngularDistribution = - new G4float[incidentIndexMax*thetaIndexMax*phiIndexMax]; - *(AngularDistribution) = *(right.AngularDistribution); + if(AngularDistribution) + delete[] AngularDistribution; + AngularDistribution = + new G4float[incidentIndexMax * thetaIndexMax * phiIndexMax]; + *(AngularDistribution) = *(right.AngularDistribution); - if (AngularDistributionLUT) delete [] AngularDistributionLUT; - AngularDistributionLUT = new G4float[indexmax]; - *(AngularDistributionLUT) = *(right.AngularDistributionLUT); - - if (Reflectivity) delete [] Reflectivity; - Reflectivity = new G4float[RefMax]; - *(Reflectivity) = *(right.Reflectivity); - - if (DichroicVector) delete DichroicVector; - DichroicVector = new G4Physics2DVector(); - *DichroicVector = *(right.DichroicVector); - } + if(AngularDistributionLUT) + delete[] AngularDistributionLUT; + AngularDistributionLUT = new G4float[indexmax]; + *(AngularDistributionLUT) = *(right.AngularDistributionLUT); + + if(Reflectivity) + delete[] Reflectivity; + Reflectivity = new G4float[RefMax]; + *(Reflectivity) = *(right.Reflectivity); + + if(DichroicVector) + delete DichroicVector; + DichroicVector = new G4Physics2DVector(); + *DichroicVector = *(right.DichroicVector); + } return *this; } - ///////////////// - // Constructors - ///////////////// - G4OpticalSurface::G4OpticalSurface(const G4String& name, G4OpticalSurfaceModel model, G4OpticalSurfaceFinish finish, - G4SurfaceType type, - G4double value) - : G4SurfaceProperty(name,type), - theModel(model), - theFinish(finish), - theMaterialPropertiesTable(0) + G4SurfaceType type, G4double value) + : G4SurfaceProperty(name, type) + , theModel(model) + , theFinish(finish) + , theMaterialPropertiesTable(nullptr) { - if ( model == glisur ){ - polish = value; - sigma_alpha = 0.0; - } - else if ( model == unified ) { - sigma_alpha = value; - polish = 0.0; - } - else if ( model == LUT ) { - sigma_alpha = value; - polish = 0.0; - } - else if ( model == dichroic ) { - sigma_alpha = value; - polish = 0.0; - } - else if ( model == DAVIS ) { - sigma_alpha = value; - polish = 0.0; - } - else { - G4Exception("G4OpticalSurface::G4OpticalSurface()", "mat309", - FatalException, - "Constructor called with INVALID model."); - } + AngularDistribution = nullptr; - AngularDistribution = NULL; + AngularDistributionLUT = nullptr; + Reflectivity = nullptr; - AngularDistributionLUT = NULL; - Reflectivity = NULL; - - DichroicVector = NULL; + DichroicVector = nullptr; - if (type == dielectric_LUT) { - AngularDistribution = - new G4float[incidentIndexMax*thetaIndexMax*phiIndexMax]; - ReadLUTFile(); - } - - if (type == dielectric_LUTDAVIS) { - AngularDistributionLUT = new G4float[indexmax]; - ReadLUTDAVISFile(); - - Reflectivity = new G4float[RefMax]; - ReadReflectivityLUTFile(); - } - - if (type == dielectric_dichroic) { - DichroicVector = new G4Physics2DVector(); - ReadDichroicFile(); - } + switch(theModel) + { + case glisur: + polish = value; + sigma_alpha = 0.0; + break; + case LUT: + case dichroic: + case DAVIS: + ReadDataFile(); + // fall through + case unified: + sigma_alpha = value; + polish = 0.0; + break; + default: + G4Exception("G4OpticalSurface::G4OpticalSurface()", "mat309", + FatalException, "Constructor called with INVALID model."); + } } G4OpticalSurface::~G4OpticalSurface() { - if (AngularDistribution) delete [] AngularDistribution; + if(AngularDistribution) + delete[] AngularDistribution; - if (AngularDistributionLUT) delete [] AngularDistributionLUT; - if (Reflectivity) delete [] Reflectivity; + if(AngularDistributionLUT) + delete[] AngularDistributionLUT; + if(Reflectivity) + delete[] Reflectivity; - if (DichroicVector) delete DichroicVector; + if(DichroicVector) + delete DichroicVector; } -G4OpticalSurface::G4OpticalSurface(const G4OpticalSurface &right) - : G4SurfaceProperty(right.theName,right.theType) +G4OpticalSurface::G4OpticalSurface(const G4OpticalSurface& right) + : G4SurfaceProperty(right.theName, right.theType) { - *this = right; - this->theName = right.theName; - this->theType = right.theType; - this->theModel = right.theModel; - this->theFinish = right.theFinish; - this->sigma_alpha = right.sigma_alpha; - this->polish = right.polish; - this->theMaterialPropertiesTable = right.theMaterialPropertiesTable; - - if (this->AngularDistribution) delete [] AngularDistribution; - this->AngularDistribution = - new G4float[incidentIndexMax*thetaIndexMax*phiIndexMax]; - *(this->AngularDistribution) = *(right.AngularDistribution); - - if (this->AngularDistributionLUT) delete [] AngularDistributionLUT; - this->AngularDistributionLUT = new G4float[indexmax]; - *(this->AngularDistributionLUT) = *(right.AngularDistributionLUT); - if (this->Reflectivity) delete [] Reflectivity; - this->Reflectivity = new G4float[RefMax]; - *(this->Reflectivity) = *(right.Reflectivity); + *this = right; + this->theName = right.theName; + this->theType = right.theType; + this->theModel = right.theModel; + this->theFinish = right.theFinish; + this->sigma_alpha = right.sigma_alpha; + this->polish = right.polish; + this->theMaterialPropertiesTable = right.theMaterialPropertiesTable; - if (this->DichroicVector) delete DichroicVector; - this->DichroicVector = new G4Physics2DVector(); - *(this->DichroicVector) = *(right.DichroicVector); + if(this->AngularDistribution) + delete[] AngularDistribution; + this->AngularDistribution = + new G4float[incidentIndexMax * thetaIndexMax * phiIndexMax]; + *(this->AngularDistribution) = *(right.AngularDistribution); + + if(this->AngularDistributionLUT) + delete[] AngularDistributionLUT; + this->AngularDistributionLUT = new G4float[indexmax]; + *(this->AngularDistributionLUT) = *(right.AngularDistributionLUT); + if(this->Reflectivity) + delete[] Reflectivity; + this->Reflectivity = new G4float[RefMax]; + *(this->Reflectivity) = *(right.Reflectivity); + + if(this->DichroicVector) + delete DichroicVector; + this->DichroicVector = new G4Physics2DVector(); + *(this->DichroicVector) = *(right.DichroicVector); } -G4bool G4OpticalSurface::operator==(const G4OpticalSurface &right) const +G4bool G4OpticalSurface::operator==(const G4OpticalSurface& right) const { - return (this == (G4OpticalSurface *) &right); + return (this == (G4OpticalSurface*) &right); } -G4bool G4OpticalSurface::operator!=(const G4OpticalSurface &right) const +G4bool G4OpticalSurface::operator!=(const G4OpticalSurface& right) const { - return (this != (G4OpticalSurface *) &right); -} - //////////// - // Methods - //////////// - -G4int G4OpticalSurface::GetInmax(void) const -{ - return indexmax; + return (this != (G4OpticalSurface*) &right); } -G4int G4OpticalSurface::GetLUTbins(void) const -{ - return LUTbins; -} +G4int G4OpticalSurface::GetInmax(void) const { return indexmax; } -G4int G4OpticalSurface::GetRefMax(void) const -{ - return RefMax; -} - -G4int G4OpticalSurface::GetThetaIndexMax(void) const -{ - return thetaIndexMax; -} +G4int G4OpticalSurface::GetLUTbins(void) const { return LUTbins; } -G4int G4OpticalSurface::GetPhiIndexMax(void) const -{ - return phiIndexMax; -} +G4int G4OpticalSurface::GetRefMax(void) const { return RefMax; } -void G4OpticalSurface::DumpInfo() const +G4int G4OpticalSurface::GetThetaIndexMax(void) const { return thetaIndexMax; } + +G4int G4OpticalSurface::GetPhiIndexMax(void) const { return phiIndexMax; } + +void G4OpticalSurface::DumpInfo() const { - // Dump info for surface + // Dump info for surface - G4cout << - " Surface type = " << G4int(theType) << G4endl << - " Surface finish = " << G4int(theFinish) << G4endl << - " Surface model = " << G4int(theModel) << G4endl; + G4cout << " Surface type = " << G4int(theType) << G4endl + << " Surface finish = " << G4int(theFinish) << G4endl + << " Surface model = " << G4int(theModel) << G4endl << G4endl + << " Surface parameter " << G4endl << " ----------------- " + << G4endl; - G4cout << G4endl; - - G4cout << " Surface parameter " << G4endl; - G4cout << " ----------------- " << G4endl; - if (theModel == glisur ){ - G4cout << polish << G4endl; - } - else if (theModel == LUT ){ - G4cout << sigma_alpha << G4endl; - } - else { - G4cout << sigma_alpha << G4endl; - } - G4cout << G4endl; + if(theModel == glisur) + { + G4cout << " polish: " << polish << G4endl; + } + else + { + G4cout << " sigma_alpha: " << sigma_alpha << G4endl; + } + G4cout << G4endl; } void G4OpticalSurface::SetType(const G4SurfaceType& type) { theType = type; - - if (type == dielectric_LUTDAVIS) { - if (!AngularDistributionLUT) AngularDistributionLUT = - new G4float[indexmax]; - ReadLUTDAVISFile(); - } - - if (type == dielectric_LUT) { - if (!AngularDistribution) AngularDistribution = - new G4float[incidentIndexMax*thetaIndexMax*phiIndexMax]; - - ReadLUTFile(); - } - if (type == dielectric_dichroic) { - if (!DichroicVector) DichroicVector = new G4Physics2DVector(); - ReadDichroicFile(); - } + ReadDataFile(); } void G4OpticalSurface::SetFinish(const G4OpticalSurfaceFinish finish) { theFinish = finish; - if (theType == dielectric_LUT) { - if (!AngularDistribution) AngularDistribution = - new G4float[incidentIndexMax*thetaIndexMax*phiIndexMax]; - ReadLUTFile(); - } - - if (theType == dielectric_LUTDAVIS) { - if (!AngularDistributionLUT) AngularDistributionLUT = - new G4float[indexmax]; - ReadLUTDAVISFile(); + ReadDataFile(); +} - if (!Reflectivity) Reflectivity = new G4float[RefMax]; - ReadReflectivityLUTFile(); - } +void G4OpticalSurface::ReadDataFile() +{ + // type and finish can be set in either order. Thus, we can't check + // for consistency. Need to read file on setting either type or finish. + switch(theType) + { + case dielectric_LUT: + if(!AngularDistribution) + AngularDistribution = + new G4float[incidentIndexMax * thetaIndexMax * phiIndexMax]; + ReadLUTFile(); + break; + case dielectric_LUTDAVIS: + if(!AngularDistributionLUT) + AngularDistributionLUT = new G4float[indexmax]; + ReadLUTDAVISFile(); - if (theType == dielectric_dichroic) { - if (!DichroicVector) DichroicVector = new G4Physics2DVector(); - ReadDichroicFile(); + if(!Reflectivity) + Reflectivity = new G4float[RefMax]; + ReadReflectivityLUTFile(); + break; + case dielectric_dichroic: + if(!DichroicVector) + DichroicVector = new G4Physics2DVector(); + ReadDichroicFile(); + break; + default: + break; } } void G4OpticalSurface::ReadLUTFile() { - G4String readLUTFileName = " "; + G4String readLUTFileName; - if (theFinish == polishedlumirrorglue) { - readLUTFileName = "PolishedLumirrorGlue.dat"; - } - else if (theFinish == polishedlumirrorair) { - readLUTFileName = "PolishedLumirror.dat"; - } - else if (theFinish == polishedteflonair) { - readLUTFileName = "PolishedTeflon.dat"; - } - else if (theFinish == polishedtioair) { - readLUTFileName = "PolishedTiO.dat"; - } - else if (theFinish == polishedtyvekair) { - readLUTFileName = "PolishedTyvek.dat"; - } - else if (theFinish == polishedvm2000glue) { - readLUTFileName = "PolishedVM2000Glue.dat"; - } - else if (theFinish == polishedvm2000air) { - readLUTFileName = "PolishedVM2000.dat"; - } - else if (theFinish == etchedlumirrorglue) { - readLUTFileName = "EtchedLumirrorGlue.dat"; - } - else if (theFinish == etchedlumirrorair) { - readLUTFileName = "EtchedLumirror.dat"; - } - else if (theFinish == etchedteflonair) { - readLUTFileName = "EtchedTeflon.dat"; - } - else if (theFinish == etchedtioair) { - readLUTFileName = "EtchedTiO.dat"; - } - else if (theFinish == etchedtyvekair) { - readLUTFileName = "EtchedTyvek.dat"; - } - else if (theFinish == etchedvm2000glue) { - readLUTFileName = "EtchedVM2000Glue.dat"; - } - else if (theFinish == etchedvm2000air) { - readLUTFileName = "EtchedVM2000.dat"; - } - else if (theFinish == groundlumirrorglue) { - readLUTFileName = "GroundLumirrorGlue.dat"; - } - else if (theFinish == groundlumirrorair) { - readLUTFileName = "GroundLumirror.dat"; - } - else if (theFinish == groundteflonair) { - readLUTFileName = "GroundTeflon.dat"; - } - else if (theFinish == groundtioair) { - readLUTFileName = "GroundTiO.dat"; - } - else if (theFinish == groundtyvekair) { - readLUTFileName = "GroundTyvek.dat"; - } - else if (theFinish == groundvm2000glue) { - readLUTFileName = "GroundVM2000Glue.dat"; - } - else if (theFinish == groundvm2000air) { - readLUTFileName = "GroundVM2000.dat"; + switch(theFinish) + { + case polishedlumirrorglue: + readLUTFileName = "PolishedLumirrorGlue.z"; + break; + case polishedlumirrorair: + readLUTFileName = "PolishedLumirror.z"; + break; + case polishedteflonair: + readLUTFileName = "PolishedTeflon.z"; + break; + case polishedtioair: + readLUTFileName = "PolishedTiO.z"; + break; + case polishedtyvekair: + readLUTFileName = "PolishedTyvek.z"; + break; + case polishedvm2000glue: + readLUTFileName = "PolishedVM2000Glue.z"; + break; + case polishedvm2000air: + readLUTFileName = "PolishedVM2000.z"; + break; + case etchedlumirrorglue: + readLUTFileName = "EtchedLumirrorGlue.z"; + break; + case etchedlumirrorair: + readLUTFileName = "EtchedLumirror.z"; + break; + case etchedteflonair: + readLUTFileName = "EtchedTeflon.z"; + break; + case etchedtioair: + readLUTFileName = "EtchedTiO.z"; + break; + case etchedtyvekair: + readLUTFileName = "EtchedTyvek.z"; + break; + case etchedvm2000glue: + readLUTFileName = "EtchedVM2000Glue.z"; + break; + case etchedvm2000air: + readLUTFileName = "EtchedVM2000.z"; + break; + case groundlumirrorglue: + readLUTFileName = "GroundLumirrorGlue.z"; + break; + case groundlumirrorair: + readLUTFileName = "GroundLumirror.z"; + break; + case groundteflonair: + readLUTFileName = "GroundTeflon.z"; + break; + case groundtioair: + readLUTFileName = "GroundTiO.z"; + break; + case groundtyvekair: + readLUTFileName = "GroundTyvek.z"; + break; + case groundvm2000glue: + readLUTFileName = "GroundVM2000Glue.z"; + break; + case groundvm2000air: + readLUTFileName = "GroundVM2000.z"; + break; + default: + return; } - if (readLUTFileName == " ") return; + std::istringstream iss; + ReadCompressedFile(readLUTFileName, iss); - char* path = std::getenv("G4REALSURFACEDATA"); - if (!path) { - G4String excep = - "G4OpBoundaryProcess - G4REALSURFACEDATA environment variable not set"; - G4Exception("G4OpticalSurface::ReadLUTFile()", "mat310", - FatalException, excep); - return; + size_t idxmax = incidentIndexMax * thetaIndexMax * phiIndexMax; + for(size_t i = 0; i < idxmax; ++i) + { + iss >> AngularDistribution[i]; } - G4String pathString(path); - - readLUTFileName = pathString + "/" + readLUTFileName; - - std::ifstream readLUTFileHandle(readLUTFileName, std::ios::in); - - if (readLUTFileHandle) { - G4int idxmax = incidentIndexMax*thetaIndexMax*phiIndexMax; - for (G4int i = 0; i> AngularDistribution[i]; - } - if (!readLUTFileHandle.bad()) { - G4cout <<"LUT - data file: "<< readLUTFileName <<" read in! "<< G4endl; - } - else { - G4String excep="LUT - data file: "+readLUTFileName+" not read propery"; - G4Exception("G4OpticalSurface::ReadLUTFile()", "mat312", - FatalException, excep); - return; - } - } - else { - G4String excep ="LUT - data file: "+readLUTFileName+" not found"; - G4Exception("G4OpticalSurface::ReadLUTFile()", "mat311", - FatalException, excep); - return; - } - readLUTFileHandle.close(); + G4cout << "LUT - data file: " << readLUTFileName << " read in! " << G4endl; } void G4OpticalSurface::ReadLUTDAVISFile() { - G4String readLUTDAVISFileName = " "; + G4String readLUTDAVISFileName; - if (theFinish == Rough_LUT) { - readLUTDAVISFileName = "Rough_LUT.dat"; - }else if (theFinish == RoughTeflon_LUT) { - readLUTDAVISFileName = "RoughTeflon_LUT.dat"; - }else if (theFinish == RoughESR_LUT) { - readLUTDAVISFileName = "RoughESR_LUT.dat"; - }else if (theFinish == RoughESRGrease_LUT) { - readLUTDAVISFileName = "RoughESRGrease_LUT.dat"; - }else if (theFinish == Polished_LUT) { - readLUTDAVISFileName = "Polished_LUT.dat"; - }else if (theFinish == PolishedTeflon_LUT) { - readLUTDAVISFileName = "PolishedTeflon_LUT.dat"; - }else if (theFinish == PolishedESR_LUT) { - readLUTDAVISFileName = "PolishedESR_LUT.dat"; - }else if (theFinish == PolishedESRGrease_LUT) { - readLUTDAVISFileName = "PolishedESRGrease_LUT.dat"; - }else if (theFinish == Detector_LUT) { - readLUTDAVISFileName = "Detector_LUT.dat"; + switch(theFinish) + { + case Rough_LUT: + readLUTDAVISFileName = "Rough_LUT.z"; + break; + case RoughTeflon_LUT: + readLUTDAVISFileName = "RoughTeflon_LUT.z"; + break; + case RoughESR_LUT: + readLUTDAVISFileName = "RoughESR_LUT.z"; + break; + case RoughESRGrease_LUT: + readLUTDAVISFileName = "RoughESRGrease_LUT.z"; + break; + case Polished_LUT: + readLUTDAVISFileName = "Polished_LUT.z"; + break; + case PolishedTeflon_LUT: + readLUTDAVISFileName = "PolishedTeflon_LUT.z"; + break; + case PolishedESR_LUT: + readLUTDAVISFileName = "PolishedESR_LUT.z"; + break; + case PolishedESRGrease_LUT: + readLUTDAVISFileName = "PolishedESRGrease_LUT.z"; + break; + case Detector_LUT: + readLUTDAVISFileName = "Detector_LUT.z"; + break; + default: + return; } - if (readLUTDAVISFileName == " ") return; + std::istringstream iss; + ReadCompressedFile(readLUTDAVISFileName, iss); - char* path = std::getenv("G4REALSURFACEDATA"); - if (!path) { - G4String excep = - "G4OpBoundaryProcess - G4REALSURFACEDATA environment variable not set"; - G4Exception("G4OpticalSurface::ReadLUTDAVISFile()", "mat310", - FatalException, excep); - return; + for(size_t i = 0; i < indexmax; ++i) + { + iss >> AngularDistributionLUT[i]; } - G4String pathString(path); - - readLUTDAVISFileName = pathString + "/" + readLUTDAVISFileName; - - std::ifstream readLUTDAVISFileHandle(readLUTDAVISFileName, std::ios::in); - - if (readLUTDAVISFileHandle) { - - for (G4int i = 0; i> AngularDistributionLUT[i]; - } - if (!readLUTDAVISFileHandle.bad()) { - G4cout <<"LUT DAVIS - data file: " << - readLUTDAVISFileName << " read in! " << G4endl; - } - else { - G4String excep="LUT DAVIS- data file: "+readLUTDAVISFileName+" not read propery"; - G4Exception("G4OpticalSurface::ReadLUTFile()", "mat312", - FatalException, excep); - return; - } - } - else { - G4String excep ="LUT DAVIS- data file: "+readLUTDAVISFileName+" not found"; - G4Exception("G4OpticalSurface::ReadLUTFile()", "mat311", - FatalException, excep); - return; - } - readLUTDAVISFileHandle.close(); + G4cout << "LUT DAVIS - data file: " << readLUTDAVISFileName << " read in! " + << G4endl; } void G4OpticalSurface::ReadReflectivityLUTFile() { - G4String readReflectivityLUTFileName = " "; + G4String readReflectivityLUTFileName; - if (theFinish == Rough_LUT) { - readReflectivityLUTFileName = "Rough_LUTR.dat"; - } - if (theFinish == RoughTeflon_LUT) { - readReflectivityLUTFileName = "RoughTeflon_LUTR.dat"; - } - if (theFinish== RoughESR_LUT) { - readReflectivityLUTFileName = "RoughESR_LUTR.dat"; - } - if (theFinish == RoughESRGrease_LUT) { - readReflectivityLUTFileName = "RoughESRGrease_LUTR.dat"; - } - if (theFinish== Polished_LUT) { - readReflectivityLUTFileName = "Polished_LUTR.dat"; - } - if (theFinish == PolishedTeflon_LUT) { - readReflectivityLUTFileName = "PolishedTeflon_LUTR.dat"; - } - if (theFinish== PolishedESR_LUT) { - readReflectivityLUTFileName = "PolishedESR_LUTR.dat"; - } - if (theFinish== PolishedESRGrease_LUT) { - readReflectivityLUTFileName = "PolishedESRGrease_LUTR.dat"; - } - if (theFinish== Detector_LUT) { - readReflectivityLUTFileName = "Detector_LUTR.dat"; + switch(theFinish) + { + case Rough_LUT: + readReflectivityLUTFileName = "Rough_LUTR.z"; + break; + case RoughTeflon_LUT: + readReflectivityLUTFileName = "RoughTeflon_LUTR.z"; + break; + case RoughESR_LUT: + readReflectivityLUTFileName = "RoughESR_LUTR.z"; + break; + case RoughESRGrease_LUT: + readReflectivityLUTFileName = "RoughESRGrease_LUTR.z"; + break; + case Polished_LUT: + readReflectivityLUTFileName = "Polished_LUTR.z"; + break; + case PolishedTeflon_LUT: + readReflectivityLUTFileName = "PolishedTeflon_LUTR.z"; + break; + case PolishedESR_LUT: + readReflectivityLUTFileName = "PolishedESR_LUTR.z"; + break; + case PolishedESRGrease_LUT: + readReflectivityLUTFileName = "PolishedESRGrease_LUTR.z"; + break; + case Detector_LUT: + readReflectivityLUTFileName = "Detector_LUTR.z"; + break; + default: + return; } - if (readReflectivityLUTFileName == " ") return; + std::istringstream iss; + ReadCompressedFile(readReflectivityLUTFileName, iss); - char* path = std::getenv("G4REALSURFACEDATA"); - if (!path) { - G4String excep = - "G4OpBoundaryProcess - G4REALSURFACEDATA environment variable not set"; - G4Exception("G4OpticalSurface::ReadReflectivityLUTFile()", "mat310", - FatalException, excep); - return; + for(size_t i = 0; i < RefMax; ++i) + { + iss >> Reflectivity[i]; } - G4String pathString(path); + G4cout << "LUT DAVIS - reflectivity data file: " + << readReflectivityLUTFileName << " read in! " << G4endl; +} - readReflectivityLUTFileName = pathString + "/" + readReflectivityLUTFileName; - - std::ifstream readReflectivityLUTFileHandle(readReflectivityLUTFileName, - std::ios::in); - - if (readReflectivityLUTFileHandle) { - for (G4int i = 0; i> Reflectivity[i]; - } - if (!readReflectivityLUTFileHandle.bad()) { - G4cout << "Reflectivity LUT DAVIS - data file: " << - readReflectivityLUTFileName << " read in! " << G4endl; - } - else { - G4String excep="Reflectivity LUT DAVIS- data file: "+readReflectivityLUTFileName+" not read propery"; - G4Exception("G4OpticalSurface::ReadReflectivityLUTFile()", "mat312", - FatalException, excep); - return; - } +// uncompress one data file into the input string stream +void G4OpticalSurface::ReadCompressedFile(G4String filename, + std::istringstream& iss) +{ + G4String* dataString = nullptr; + G4String path = std::getenv("G4REALSURFACEDATA"); + G4String compfilename = path + "/" + filename; + // create input stream with binary mode operation and position at end of file + std::ifstream in(compfilename, std::ios::binary | std::ios::ate); + if(in.good()) + { + // get current position in the stream (was set to the end) + int fileSize = in.tellg(); + // set current position being the beginning of the stream + in.seekg(0, std::ios::beg); + // create (zlib) byte buffer for the data + Bytef* compdata = new Bytef[fileSize]; + while(in) + { + in.read((char*) compdata, fileSize); + } + // create (zlib) byte buffer for the uncompressed data + uLongf complen = (uLongf)(fileSize * 4); + Bytef* uncompdata = new Bytef[complen]; + while(Z_OK != uncompress(uncompdata, &complen, compdata, fileSize)) + { + // increase uncompressed byte buffer + delete[] uncompdata; + complen *= 2; + uncompdata = new Bytef[complen]; + } + // delete the compressed data buffer + delete[] compdata; + // create a string from uncompressed data (will be deallocated by caller) + dataString = new G4String((char*) uncompdata, (long) complen); + // delete the uncompressed data buffer + delete[] uncompdata; } - else { - G4String excep ="Reflectivity LUT DAVIS - data file: "+readReflectivityLUTFileName+" not found"; - G4Exception("G4OpticalSurface::ReadReflectivityLUTFile()", "mat311", - FatalException, excep); - return; + else + { + G4ExceptionDescription ed; + ed << "Problem while trying to read " + compfilename + " data file.\n"; + G4Exception("G4OpticalSurface::ReadCompressedFile", "mat316", + FatalException, ed); + return; + } + // create the input string stream from the data string + if(dataString) + { + iss.str(*dataString); + in.close(); + delete dataString; + G4cout << "G4OpticalSurface: data file " << compfilename + << " successfully read in." << G4endl; } - readReflectivityLUTFileHandle.close(); } void G4OpticalSurface::ReadDichroicFile() { const char* datadir = std::getenv("G4DICHROICDATA"); - if(!datadir) { - G4Exception("G4OpticalSurface::ReadDichroicFile()","mat313", - FatalException,"Environment variable G4DICHROICDATA not defined"); + if(!datadir) + { + G4Exception("G4OpticalSurface::ReadDichroicFile()", "mat313", + FatalException, + "Environment variable G4DICHROICDATA not defined"); return; } std::ostringstream ost; ost << datadir; std::ifstream fin(ost.str().c_str()); - if( !fin.is_open()) { + if(!fin.is_open()) + { G4ExceptionDescription ed; ed << "Dichroic surface data file <" << ost.str().c_str() << "> is not opened!" << G4endl; - G4Exception("G4OpticalSurface::ReadDichroicFile()","mat314", - FatalException,ed," "); + G4Exception("G4OpticalSurface::ReadDichroicFile()", "mat314", + FatalException, ed, " "); return; } - if( !(DichroicVector->Retrieve(fin)) ) { + if(!(DichroicVector->Retrieve(fin))) + { G4ExceptionDescription ed; ed << "Dichroic surface data file <" << ost.str().c_str() << "> is not opened!" << G4endl; - G4Exception("G4OpticalSurface::ReadDichroicFile()","mat315", - FatalException,ed," "); + G4Exception("G4OpticalSurface::ReadDichroicFile()", "mat315", + FatalException, ed, " "); return; } -// DichroicVector->SetBicubicInterpolation(true); + // DichroicVector->SetBicubicInterpolation(true); G4cout << " *** Dichroic surface data file *** " << G4endl; @@ -590,40 +530,34 @@ void G4OpticalSurface::ReadDichroicFile() G4cout << "numberOfXNodes: " << numberOfXNodes << G4endl; G4cout << "numberOfYNodes: " << numberOfYNodes << G4endl; - if (0 > numberOfXNodes || numberOfXNodes >= INT_MAX) numberOfXNodes = 0; - if (0 > numberOfYNodes || numberOfYNodes >= INT_MAX) numberOfYNodes = 0; + if(0 > numberOfXNodes || numberOfXNodes >= INT_MAX) + numberOfXNodes = 0; + if(0 > numberOfYNodes || numberOfYNodes >= INT_MAX) + numberOfYNodes = 0; - G4PV2DDataVector xVector; - G4PV2DDataVector yVector; + G4PV2DDataVector xVector; + G4PV2DDataVector yVector; - xVector.resize(numberOfXNodes,0.); - yVector.resize(numberOfYNodes,0.); + xVector.resize(numberOfXNodes, 0.); + yVector.resize(numberOfYNodes, 0.); - for(G4int i = 0; iGetX(i) << G4endl; - xVector[i] = DichroicVector->GetX(i); + for(G4int i = 0; i < numberOfXNodes; ++i) + { + G4cout << "i: " << DichroicVector->GetX(i) << G4endl; + xVector[i] = DichroicVector->GetX(i); } - for(G4int j = 0; jGetY(j) << G4endl; - yVector[j] = DichroicVector->GetY(j); + for(G4int j = 0; j < numberOfYNodes; ++j) + { + G4cout << "j: " << DichroicVector->GetY(j) << G4endl; + yVector[j] = DichroicVector->GetY(j); } - for(G4int j = 0; jGetValue(i,j) << G4endl; - } + for(G4int j = 0; j < numberOfYNodes; ++j) + { + for(G4int i = 0; i < numberOfXNodes; ++i) + { + G4cout << " i: " << i << " j: " << j << " " + << DichroicVector->GetValue(i, j) << G4endl; + } } - -// G4int idx, idy; - -// for(G4int j = 0; jValue(x,y,idx,idy) << G4endl; -// } -// } - } diff --git a/source/materials/src/G4SurfaceProperty.cc b/source/materials/src/G4SurfaceProperty.cc index db88dc7ce9..46a0f40cc6 100644 --- a/source/materials/src/G4SurfaceProperty.cc +++ b/source/materials/src/G4SurfaceProperty.cc @@ -25,7 +25,7 @@ // // // -// +// //////////////////////////////////////////////////////////////////////// // G4SurfaceProperty Implementation //////////////////////////////////////////////////////////////////////// @@ -33,7 +33,7 @@ // Class Description: // // A base class describing a surface property. -// Derived classes are G4Opticalsurface, G4Firovsurface, etc. +// Derived classes are G4Opticalsurface, G4Firovsurface, etc. // // File: G4SurfaceProperty.cc // Version: 1.0 @@ -48,32 +48,21 @@ G4SurfacePropertyTable G4SurfaceProperty::theSurfacePropertyTable; -// -// Constructor and destructor -// -G4SurfaceProperty::G4SurfaceProperty( const G4String& name, - G4SurfaceType type ) - : theName(name), theType(type) +G4SurfaceProperty::G4SurfaceProperty(const G4String& name, G4SurfaceType type) + : theName(name) + , theType(type) { theSurfacePropertyTable.push_back(this); } -// -// Dummy constructor -// G4SurfaceProperty::G4SurfaceProperty() - : theName("Dielectric"), theType(dielectric_metal) + : theName("Dielectric") + , theType(dielectric_metal) { theSurfacePropertyTable.push_back(this); } -G4SurfaceProperty::~G4SurfaceProperty() -{ -} - -// -// Methods -// +G4SurfaceProperty::~G4SurfaceProperty() {} const G4SurfacePropertyTable* G4SurfaceProperty::GetSurfacePropertyTable() { @@ -86,18 +75,16 @@ size_t G4SurfaceProperty::GetNumberOfSurfaceProperties() } // Dump info for known surface properties -// void G4SurfaceProperty::DumpTableInfo() { G4cout << "***** Surface Property Table : Nb of Surface Properties = " << GetNumberOfSurfaceProperties() << " *****" << G4endl; - for (size_t i=0; iGetName() << " : " << G4endl - << " Surface Property type = " - << pSurfaceProperty->GetType() + << " Surface Property type = " << pSurfaceProperty->GetType() << G4endl; } G4cout << G4endl; @@ -107,10 +94,11 @@ void G4SurfaceProperty::CleanSurfacePropertyTable() { DumpTableInfo(); G4SurfacePropertyTable::iterator pos; - for(pos=theSurfacePropertyTable.begin(); - pos!=theSurfacePropertyTable.end(); pos++) + for(pos = theSurfacePropertyTable.begin(); + pos != theSurfacePropertyTable.end(); pos++) { - if (*pos) delete *pos; + if(*pos) + delete *pos; } theSurfacePropertyTable.clear(); DumpTableInfo(); diff --git a/source/materials/src/G4UCNMaterialPropertiesTable.cc b/source/materials/src/G4UCNMaterialPropertiesTable.cc old mode 100755 new mode 100644 index fb9d1e4c4a..a858b63780 --- a/source/materials/src/G4UCNMaterialPropertiesTable.cc +++ b/source/materials/src/G4UCNMaterialPropertiesTable.cc @@ -245,7 +245,7 @@ G4double G4UCNMaterialPropertiesTable:: GetMRIntProbability(G4double theta_i, G4double Energy) { if (!theMicroRoughnessTable) { - G4cout << "Dont have theMicroRoughnessTable" << G4endl; + G4cout << "Do not have theMicroRoughnessTable" << G4endl; return 0.; } diff --git a/source/materials/src/G4UCNMicroRoughnessHelper.cc b/source/materials/src/G4UCNMicroRoughnessHelper.cc old mode 100755 new mode 100644 diff --git a/source/parameterisations/gflash/History b/source/parameterisations/gflash/History index c29600df1d..bdc512f9f3 100644 --- a/source/parameterisations/gflash/History +++ b/source/parameterisations/gflash/History @@ -15,6 +15,8 @@ committal in the CVS repository ! ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Sep 23rd, 2020, B. Morgan (gflash-V10-06-02) +- Remove no longer required include_directories Apr 17th, 2020, A. Zaborowska (gflash-V10-06-01) - Substitute Gamma calculation with STL following GitHub PR#3 from Marco Savelli. @@ -25,7 +27,7 @@ Mar 26, 2020, I. Semeniouk (gflash-V10-06-00) - GFlashHomoShowerParameterisation, GVFlashHomoShowerTuning, GFlashSamplingShowerParameterisation,GFlashSamplingShowerTuning: GFlashXXXShowerTuning deleted locally in Destractor - of GFlashXXXShowerParameterisation class + of GFlashXXXShowerParameterisation class Oct 30st, 2019, A. Zaborowska (gflash-V10-05-01) - Add possibility to use sensitive detector from parallel world. @@ -103,7 +105,7 @@ Nov 28th, 2005 G.Cosmo (gflash-V07-01-01) ---------------------- - Migration to for GFlashShowerModelMessenger. -Oct 4th, 2005 G.Cosmo (gflash-V07-01-00) +Oct 4th, 2005 G.Cosmo (gflash-V07-01-00) --------------------- - Corrected typo to name GFlashHomoShowerParamterisation, to become GFlashHomoShowerParameterisation. Replaced affected files. @@ -111,26 +113,26 @@ Oct 4th, 2005 G.Cosmo (gflash-V07-01-00) - Fixed usage of random numbers in GFlashHomoShowerParameterisation to allow for event reproducibility. -Jul 15th, 2005 J.Weng +Jul 15th, 2005 J.Weng --------------------- - Added overflow protection in method GenerateRadius() for GFlashHomoShowerParamterisation. -Jun 22nd, 2005 G.Cosmo (gflash-V07-00-04) +Jun 22nd, 2005 G.Cosmo (gflash-V07-00-04) ---------------------- - Corrected signature for IntegrateNspLongitudinal() to remove const qualifier. Problem detected on SUN-CC. -Jun 9th, 2005 G.Cosmo (gflash-V07-00-03) +Jun 9th, 2005 G.Cosmo (gflash-V07-00-03) --------------------- - Fixed compilation warnings on SUN-CC for hiding of class attributes. -Apr 22nd, 2005 G.Cosmo (gflash-V07-00-02) +Apr 22nd, 2005 G.Cosmo (gflash-V07-00-02) ---------------------- - GFlashShowerModel.cc: fixed problem of possible undefined operation on 'NlateralInside' and 'NSpotDeposited'. Compilation warning on gcc-4.0. -Jan 13th, 2005 H.P.Wellisch (gflash-V07-00-01) +Jan 13th, 2005 H.P.Wellisch (gflash-V07-00-01) --------------------------- - Fix in GFlashHitMaker for treatment of detector sensitivity. diff --git a/source/parameterisations/gflash/sources.cmake b/source/parameterisations/gflash/sources.cmake index fe04ca8810..5ece347f62 100644 --- a/source/parameterisations/gflash/sources.cmake +++ b/source/parameterisations/gflash/sources.cmake @@ -14,39 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/detector/include) -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/hits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/graphics_reps/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/muons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/parameterisation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4gflash HEADERS G4GFlashSpot.hh diff --git a/source/particles/History b/source/particles/History index 471958436e..27367c6b59 100644 --- a/source/particles/History +++ b/source/particles/History @@ -16,6 +16,13 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +- 16 November 2020 Gabriele Cosmo (particles-V10-06-10) +- Fixed typos in printed-out text. Addressing problem report #2285. + +- 24 July 2020 Alberto Ribon (particles-V10-06-09) + G4ShortLivedConstructor : improved the (constitutent) masses of + heavy diquarks. + - 29 April 2020 Gabriele Cosmo (particles-V10-06-08) Fixed Coverity warning diff --git a/source/particles/management/src/G4IonTable.cc b/source/particles/management/src/G4IonTable.cc index e21f218697..83edb1eb09 100644 --- a/source/particles/management/src/G4IonTable.cc +++ b/source/particles/management/src/G4IonTable.cc @@ -1536,7 +1536,7 @@ void G4IonTable::clear() #ifdef G4VERBOSE if (GetVerboseLevel()>2) { - G4cout << "G4IonTable::Clear() : number of Ion regsitered = "; + G4cout << "G4IonTable::Clear() : number of Ion registered = "; G4cout << fIonList->size() << G4endl; } #endif diff --git a/source/particles/management/src/G4PhaseSpaceDecayChannel.cc b/source/particles/management/src/G4PhaseSpaceDecayChannel.cc index cb50829717..eb50bbec43 100644 --- a/source/particles/management/src/G4PhaseSpaceDecayChannel.cc +++ b/source/particles/management/src/G4PhaseSpaceDecayChannel.cc @@ -754,7 +754,7 @@ G4DecayProducts* G4PhaseSpaceDecayChannel::ManyBodyDecayIt() #ifdef G4VERBOSE if (GetVerboseLevel()>1) { - G4cout << "Start calulation of daughters momentum vector " << G4endl; + G4cout << "Start calculation of daughters momentum vector " << G4endl; } #endif diff --git a/source/particles/shortlived/src/G4ShortLivedConstructor.cc b/source/particles/shortlived/src/G4ShortLivedConstructor.cc index f501c5ac06..9647766c56 100644 --- a/source/particles/shortlived/src/G4ShortLivedConstructor.cc +++ b/source/particles/shortlived/src/G4ShortLivedConstructor.cc @@ -316,7 +316,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // cd0-Diquark particle = new G4DiQuarks( - "cd0_diquark", 7.1*MeV, 0.0*MeV, 1./3.*eplus, + "cd0_diquark", 1286.1*MeV, 0.0*MeV, 1./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, 4101, @@ -324,7 +324,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // cd1-Diquark particle = new G4DiQuarks( - "cd1_diquark", 7.0*MeV, 0.0*MeV, 1./3.*eplus, + "cd1_diquark", 1286.0*MeV, 0.0*MeV, 1./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, 4103, @@ -332,7 +332,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // cu0-Diquark particle = new G4DiQuarks( - "cu0_diquark", 7.1*MeV, 0.0*MeV, 4./3.*eplus, + "cu0_diquark", 1283.1*MeV, 0.0*MeV, 4./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, 4201, @@ -340,7 +340,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // cu1-Diquark particle = new G4DiQuarks( - "cu1_diquark", 7.0*MeV, 0.0*MeV, 4./3.*eplus, + "cu1_diquark", 1283.0*MeV, 0.0*MeV, 4./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, 4203, @@ -348,7 +348,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // cs0-Diquark particle = new G4DiQuarks( - "cs0_diquark", 7.1*MeV, 0.0*MeV, 1./3.*eplus, + "cs0_diquark", 1380.1*MeV, 0.0*MeV, 1./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, 4301, @@ -356,7 +356,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // cs1-Diquark particle = new G4DiQuarks( - "cs1_diquark", 7.0*MeV, 0.0*MeV, 1./3.*eplus, + "cs1_diquark", 1380.0*MeV, 0.0*MeV, 1./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, 4303, @@ -364,7 +364,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // cc1-Diquark particle = new G4DiQuarks( - "cc1_diquark", 7.0*MeV, 0.0*MeV, 4./3.*eplus, + "cc1_diquark", 2565.0*MeV, 0.0*MeV, 4./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, 4403, @@ -374,7 +374,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // bd0-Diquark particle = new G4DiQuarks( - "bd0_diquark", 7.1*MeV, 0.0*MeV, -2./3.*eplus, + "bd0_diquark", 4186.1*MeV, 0.0*MeV, -2./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, 5101, @@ -382,7 +382,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // bd1-Diquark particle = new G4DiQuarks( - "bd1_diquark", 7.0*MeV, 0.0*MeV, -2./3.*eplus, + "bd1_diquark", 4186.0*MeV, 0.0*MeV, -2./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, 5103, @@ -390,7 +390,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // bu0-Diquark particle = new G4DiQuarks( - "bu0_diquark", 7.1*MeV, 0.0*MeV, 1./3.*eplus, + "bu0_diquark", 4183.1*MeV, 0.0*MeV, 1./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, 5201, @@ -398,7 +398,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // bu1-Diquark particle = new G4DiQuarks( - "bu1_diquark", 7.0*MeV, 0.0*MeV, 1./3.*eplus, + "bu1_diquark", 4183.0*MeV, 0.0*MeV, 1./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, 5203, @@ -406,7 +406,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // bs0-Diquark particle = new G4DiQuarks( - "bs0_diquark", 7.1*MeV, 0.0*MeV, -2./3.*eplus, + "bs0_diquark", 4280.1*MeV, 0.0*MeV, -2./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, 5301, @@ -414,7 +414,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // bs1-Diquark particle = new G4DiQuarks( - "bs1_diquark", 7.0*MeV, 0.0*MeV, -2./3.*eplus, + "bs1_diquark", 4280.0*MeV, 0.0*MeV, -2./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, 5303, @@ -422,7 +422,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // bc0-Diquark particle = new G4DiQuarks( - "bc0_diquark", 7.1*MeV, 0.0*MeV, 1./3.*eplus, + "bc0_diquark", 5465.1*MeV, 0.0*MeV, 1./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, 5401, @@ -430,7 +430,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // bc1-Diquark particle = new G4DiQuarks( - "bc1_diquark", 7.0*MeV, 0.0*MeV, 1./3.*eplus, + "bc1_diquark", 5465.0*MeV, 0.0*MeV, 1./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, 5403, @@ -438,7 +438,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // bb1-Diquark particle = new G4DiQuarks( - "bb1_diquark", 7.0*MeV, 0.0*MeV, 2./3.*eplus, + "bb1_diquark", 8365.0*MeV, 0.0*MeV, -2./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, 5503, @@ -448,7 +448,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti cd0-Diquark particle = new G4DiQuarks( - "anti_cd0_diquark", 7.1*MeV, 0.0*MeV, -1./3.*eplus, + "anti_cd0_diquark", 1286.1*MeV, 0.0*MeV, -1./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, -4101, @@ -456,7 +456,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti cd1-Diquark particle = new G4DiQuarks( - "anti_cd1_diquark", 7.0*MeV, 0.0*MeV, -1./3.*eplus, + "anti_cd1_diquark", 1286.0*MeV, 0.0*MeV, -1./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, -4103, @@ -464,7 +464,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti cu0-Diquark particle = new G4DiQuarks( - "anti_cu0_diquark", 7.1*MeV, 0.0*MeV, -4./3.*eplus, + "anti_cu0_diquark", 1283.1*MeV, 0.0*MeV, -4./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, -4201, @@ -472,7 +472,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti cu1-Diquark particle = new G4DiQuarks( - "anti_cu1_diquark", 7.0*MeV, 0.0*MeV, -4./3.*eplus, + "anti_cu1_diquark", 1283.0*MeV, 0.0*MeV, -4./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, -4203, @@ -480,7 +480,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti cs0-Diquark particle = new G4DiQuarks( - "anti_cs0_diquark", 7.1*MeV, 0.0*MeV, -1./3.*eplus, + "anti_cs0_diquark", 1380.1*MeV, 0.0*MeV, -1./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, -4301, @@ -488,7 +488,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti cs1-Diquark particle = new G4DiQuarks( - "anti_cs1_diquark", 7.0*MeV, 0.0*MeV, -1./3.*eplus, + "anti_cs1_diquark", 1380.0*MeV, 0.0*MeV, -1./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, -4303, @@ -496,7 +496,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti cc1-Diquark particle = new G4DiQuarks( - "anti_cc1_diquark", 7.0*MeV, 0.0*MeV, -4./3.*eplus, + "anti_cc1_diquark", 2565.0*MeV, 0.0*MeV, -4./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, -4403, @@ -506,7 +506,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti bd0-Diquark particle = new G4DiQuarks( - "anti_bd0_diquark", 7.1*MeV, 0.0*MeV, +2./3.*eplus, + "anti_bd0_diquark", 4186.1*MeV, 0.0*MeV, +2./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, -5101, @@ -514,7 +514,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti bd1-Diquark particle = new G4DiQuarks( - "anti_bd1_diquark", 7.0*MeV, 0.0*MeV, +2./3.*eplus, + "anti_bd1_diquark", 4186.0*MeV, 0.0*MeV, +2./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, -5103, @@ -522,7 +522,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti bu0-Diquark particle = new G4DiQuarks( - "anti_bu0_diquark", 7.1*MeV, 0.0*MeV, -1./3.*eplus, + "anti_bu0_diquark", 4183.1*MeV, 0.0*MeV, -1./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, -5201, @@ -530,7 +530,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti bu1-Diquark particle = new G4DiQuarks( - "anti_bu1_diquark", 7.0*MeV, 0.0*MeV, -1./3.*eplus, + "anti_bu1_diquark", 4183.0*MeV, 0.0*MeV, -1./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, -5203, @@ -538,7 +538,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti bs0-Diquark particle = new G4DiQuarks( - "anti_bs0_diquark", 7.1*MeV, 0.0*MeV, +2./3.*eplus, + "anti_bs0_diquark", 4280.1*MeV, 0.0*MeV, +2./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, -5301, @@ -546,7 +546,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti bs1-Diquark particle = new G4DiQuarks( - "anti_bs1_diquark", 7.0*MeV, 0.0*MeV, +2./3.*eplus, + "anti_bs1_diquark", 4280.0*MeV, 0.0*MeV, +2./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, -5303, @@ -554,7 +554,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti bc0-Diquark particle = new G4DiQuarks( - "anti_bc0_diquark", 7.1*MeV, 0.0*MeV, -1./3.*eplus, + "anti_bc0_diquark", 5465.1*MeV, 0.0*MeV, -1./3.*eplus, 0, +1, 0, 0, +0, 0, "diquarks", 0, 0, -5401, @@ -562,7 +562,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti bc1-Diquark particle = new G4DiQuarks( - "anti_bc1_diquark", 7.0*MeV, 0.0*MeV, -1./3.*eplus, + "anti_bc1_diquark", 5465.0*MeV, 0.0*MeV, -1./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, -5403, @@ -570,7 +570,7 @@ void G4ShortLivedConstructor::ConstructQuarks() // anti bb1-Diquark particle = new G4DiQuarks( - "anti_bb1_diquark", 7.0*MeV, 0.0*MeV, -2./3.*eplus, + "anti_bb1_diquark", 8365.0*MeV, 0.0*MeV, 2./3.*eplus, 2, +1, 0, 2, +0, 0, "diquarks", 0, 0, -5503, diff --git a/source/persistency/History b/source/persistency/History index ef7be6ac9b..e65c9b7ec2 100644 --- a/source/persistency/History +++ b/source/persistency/History @@ -15,6 +15,12 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +16 November, 20 G.Cosmo (persistency-V10-06-02) +- Fixed typos in printed-out text. Addressing problem report #2285. + +7 October, 20 G.Cosmo (persistency-V10-06-01) +- Minor c++11 review. Code cleanup and formatting. + 11 December, 19 B.Morgan (persistency-V10-06-00) - Cleanup CMake build, removing obsolete granular library options and explicit include_directories. diff --git a/source/persistency/ascii/History b/source/persistency/ascii/History index 202ce25b69..24acda3381 100644 --- a/source/persistency/ascii/History +++ b/source/persistency/ascii/History @@ -15,6 +15,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +8 October 2020 - G.Cosmo (ascii-V10-06-02) +- Minor c++11 review. Code cleanup and formatting. + 4 March 2020 - P.Arce (ascii-V10-06-01) - G4tgbGeometryDumper.cc: Fix coverity warnings - G4tgbVolume.cc: Fix coverity warnings diff --git a/source/persistency/ascii/include/G4tgbDetectorBuilder.hh b/source/persistency/ascii/include/G4tgbDetectorBuilder.hh index 00ac9fc645..c6ae9809e5 100644 --- a/source/persistency/ascii/include/G4tgbDetectorBuilder.hh +++ b/source/persistency/ascii/include/G4tgbDetectorBuilder.hh @@ -23,46 +23,31 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbDetectorBuilder +// G4tgbDetectorBuilder // // Class description: // // Builder of transient detector. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #ifndef G4tgbDetectorBuilder_hh -#define G4tgbDetectorBuilder_hh +#define G4tgbDetectorBuilder_hh 1 #include "globals.hh" - -#include -#include -#include - -#include "G4VSolid.hh" -#include "G4LogicalVolume.hh" #include "G4VPhysicalVolume.hh" -class G4tgbVolume; class G4tgrVolume; - -//-------------------------------------------------------------------------- -class G4tgbDetectorBuilder -{ - public: // with description - G4tgbDetectorBuilder(); - virtual ~G4tgbDetectorBuilder(); +class G4tgbDetectorBuilder +{ + public: - virtual const G4tgrVolume* ReadDetector(); - virtual G4VPhysicalVolume* ConstructDetector( const G4tgrVolume* tgrVoltop ); + G4tgbDetectorBuilder(); + virtual ~G4tgbDetectorBuilder(); + virtual const G4tgrVolume* ReadDetector(); + virtual G4VPhysicalVolume* ConstructDetector(const G4tgrVolume* tgrVoltop); }; #endif diff --git a/source/persistency/ascii/include/G4tgbDetectorConstruction.hh b/source/persistency/ascii/include/G4tgbDetectorConstruction.hh index d4e568ffab..698b159eec 100644 --- a/source/persistency/ascii/include/G4tgbDetectorConstruction.hh +++ b/source/persistency/ascii/include/G4tgbDetectorConstruction.hh @@ -23,10 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbDetectorConstruction +// G4tgbDetectorConstruction // // Class description: // @@ -34,12 +31,10 @@ // It passes to the G4RunManager the top volume in the hierarchy // constructed in G4tgbVolumeMgr. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbDetectorConstruction_H -#define G4tgbDetectorConstruction_H 1 +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbDetectorConstruction_hh +#define G4tgbDetectorConstruction_hh 1 #include "globals.hh" @@ -47,12 +42,12 @@ class G4VPhysicalVolume; class G4tgbDetectorConstruction { - public: // with description + public: - G4tgbDetectorConstruction(); - ~G4tgbDetectorConstruction(); - - G4VPhysicalVolume* Construct(); + G4tgbDetectorConstruction(); + ~G4tgbDetectorConstruction(); + + G4VPhysicalVolume* Construct(); }; #endif diff --git a/source/persistency/ascii/include/G4tgbElement.hh b/source/persistency/ascii/include/G4tgbElement.hh index c87d8aaab6..03840fbcb9 100644 --- a/source/persistency/ascii/include/G4tgbElement.hh +++ b/source/persistency/ascii/include/G4tgbElement.hh @@ -23,60 +23,45 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbElement +// G4tgbElement // // Class description: // // Transient class of a chemical element; builds a G4Element. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbElement_h -#define G4tgbElement_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbElement_hh +#define G4tgbElement_hh 1 #include #include +#include "globals.hh" #include "G4tgrElement.hh" #include "G4Element.hh" -//-------------------------------------------------------------------------- - class G4tgbElement -{ +{ + public: - public: // with description + G4tgbElement() {} + ~G4tgbElement() {} - G4tgbElement(){} - ~G4tgbElement(){} + G4tgbElement(G4tgrElement* hg); + // Construct the G4tgbElement from the corresponding HgElement - G4tgbElement( G4tgrElement* hg ); - // Construct the G4tgbElement from the corresponding HgElement - - G4Element* BuildG4ElementSimple(); - G4Element* BuildG4ElementFromIsotopes(); - // Build a G4Element out of this HElement + G4Element* BuildG4ElementSimple(); + G4Element* BuildG4ElementFromIsotopes(); + // Build a G4Element out of this HElement - const G4String& GetName() const - { - return theTgrElem->GetName(); - } - const G4String& GetType() const - { - return theTgrElem->GetType(); - } + const G4String& GetName() const { return theTgrElem->GetName(); } + const G4String& GetType() const { return theTgrElem->GetType(); } - private: + private: - G4tgrElement* theTgrElem; - G4Element* theG4Elem; + G4tgrElement* theTgrElem = nullptr; + G4Element* theG4Elem = nullptr; }; #endif diff --git a/source/persistency/ascii/include/G4tgbGeometryDumper.hh b/source/persistency/ascii/include/G4tgbGeometryDumper.hh index 4644778929..469b0c1826 100644 --- a/source/persistency/ascii/include/G4tgbGeometryDumper.hh +++ b/source/persistency/ascii/include/G4tgbGeometryDumper.hh @@ -23,27 +23,24 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// class G4tgbGeometryDumper +// G4tgbGeometryDumper // // Class description: // // Class for dumping the whole geometry. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbGeometryDumper_HH -#define G4tgbGeometryDumper_HH - -#include "globals.hh" -#include "G4RotationMatrix.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbGeometryDumper_hh +#define G4tgbGeometryDumper_hh 1 #include #include #include +#include "globals.hh" +#include "G4RotationMatrix.hh" + class G4Material; class G4Element; class G4Isotope; @@ -55,70 +52,67 @@ class G4PVReplica; class G4tgbGeometryDumper { - - public: // with description + public: static G4tgbGeometryDumper* GetInstance(); ~G4tgbGeometryDumper(); - void DumpGeometry(const G4String& fname ); + void DumpGeometry(const G4String& fname); G4VPhysicalVolume* GetTopPhysVol(); - void DumpPhysVol( G4VPhysicalVolume* pv ); - void DumpPVPlacement( G4VPhysicalVolume* pv, const G4String& lvName, - G4int copyNo = -999 ); - void DumpPVParameterised( G4PVParameterised* pv ); - void DumpPVReplica( G4PVReplica* pv, const G4String& lvName ); - G4String DumpLogVol( G4LogicalVolume* lv, G4String extraName = "", - G4VSolid* solid = 0, G4Material* mate = 0); - G4String DumpMaterial( G4Material* mat ); - void DumpElement( G4Element* ele); - void DumpIsotope( G4Isotope* ele); - G4String DumpSolid( G4VSolid* solid, const G4String& extraName = "" ); - void DumpBooleanVolume( const G4String& solidType, G4VSolid* so ); - void DumpSolidParams(G4VSolid * so); - std::vector GetSolidParams( const G4VSolid * so); - void DumpPolySections(G4int zPlanes, G4double* z, - G4double *rmin, G4double *rmax); - G4String DumpRotationMatrix( G4RotationMatrix* rotm ); + void DumpPhysVol(G4VPhysicalVolume* pv); + void DumpPVPlacement(G4VPhysicalVolume* pv, const G4String& lvName, + G4int copyNo = -999); + void DumpPVParameterised(G4PVParameterised* pv); + void DumpPVReplica(G4PVReplica* pv, const G4String& lvName); + G4String DumpLogVol(G4LogicalVolume* lv, const G4String& extraName = "", + G4VSolid* solid = nullptr, G4Material* mate = nullptr); + G4String DumpMaterial(G4Material* mat); + void DumpElement(G4Element* ele); + void DumpIsotope(G4Isotope* ele); + G4String DumpSolid(G4VSolid* solid, const G4String& extraName = ""); + void DumpBooleanVolume(const G4String& solidType, G4VSolid* so); + void DumpSolidParams(G4VSolid* so); + std::vector GetSolidParams(const G4VSolid* so); + void DumpPolySections(G4int zPlanes, G4double* z, G4double* rmin, + G4double* rmax); + G4String DumpRotationMatrix(G4RotationMatrix* rotm); private: G4tgbGeometryDumper(); - private: + std::vector GetPVChildren(G4LogicalVolume* lv); + G4String GetTGSolidType(const G4String& solidtype); + G4double MatDeterminant(G4RotationMatrix* ro); + G4double approxTo0(G4double val); + G4String AddQuotes(const G4String& str); - std::vector GetPVChildren( G4LogicalVolume* lv ); - G4String GetTGSolidType( const G4String& solidtype ); - G4double MatDeterminant(G4RotationMatrix * ro) ; - G4double approxTo0( G4double val ); - G4String AddQuotes( const G4String& str ); - - G4String GetIsotopeName( G4Isotope* ); - template< class TYP> G4String GetObjectName( TYP* obj, - std::map objectsDumped ); - G4bool CheckIfLogVolExists( const G4String& name, G4LogicalVolume* pt ); - G4bool CheckIfPhysVolExists( const G4String& name, G4VPhysicalVolume* ); - G4String LookForExistingRotation( const G4RotationMatrix* rotm ); - G4String SupressRefl( G4String name ); - G4String SubstituteRefl( G4String name ); - G4bool Same2G4Isotopes( G4Isotope* ele1, G4Isotope* ele2 ); - const G4String& FindSolidName( G4VSolid* solid ); + G4String GetIsotopeName(G4Isotope*); + template + G4String GetObjectName(TYP* obj, std::map objectsDumped); + G4bool CheckIfLogVolExists(const G4String& name, G4LogicalVolume* pt); + G4bool CheckIfPhysVolExists(const G4String& name, G4VPhysicalVolume*); + G4String LookForExistingRotation(const G4RotationMatrix* rotm); + G4String SupressRefl(G4String name); + G4String SubstituteRefl(G4String name); + G4bool Same2G4Isotopes(G4Isotope* ele1, G4Isotope* ele2); + const G4String& FindSolidName(G4VSolid* solid); private: static G4ThreadLocal G4tgbGeometryDumper* theInstance; - std::ofstream* theFile; + std::ofstream* theFile = nullptr; - std::map theMaterials; - std::map theElements; - std::map theIsotopes; - std::map theSolids; - std::map theLogVols; - std::map thePhysVols; - std::map theRotMats; + std::map theMaterials; + std::map theElements; + std::map theIsotopes; + std::map theSolids; + std::map theLogVols; + std::map thePhysVols; + std::map theRotMats; - G4int theRotationNumber; + G4int theRotationNumber = 0; }; #endif diff --git a/source/persistency/ascii/include/G4tgbIsotope.hh b/source/persistency/ascii/include/G4tgbIsotope.hh index 4c59b0c7c6..05e81ba307 100644 --- a/source/persistency/ascii/include/G4tgbIsotope.hh +++ b/source/persistency/ascii/include/G4tgbIsotope.hh @@ -23,52 +23,41 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbIsotope +// G4tgbIsotope // // Class description: // // Transient class of an isotope; builds a G4Isotope. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbIsotope_h -#define G4tgbIsotope_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbIsotope_hh +#define G4tgbIsotope_hh 1 #include "globals.hh" -#include -#include - #include "G4tgrIsotope.hh" #include "G4Isotope.hh" -//-------------------------------------------------------------------------- - class G4tgbIsotope { + public: - public: // with description + G4tgbIsotope(); + ~G4tgbIsotope(); - G4tgbIsotope(); - ~G4tgbIsotope(); + G4tgbIsotope(G4tgrIsotope* hg); + // Construct the G4tgbIsotope from the corresponding HgIsotope - G4tgbIsotope( G4tgrIsotope* hg ); - // Construct the G4tgbIsotope from the corresponding HgIsotope + G4Isotope* BuildG4Isotope(); + // Build a G4Isotope out of this HIsotope - G4Isotope* BuildG4Isotope(); - // Build a G4Isotope out of this HIsotope + const G4String& GetName() const { return theTgrIsot->GetName(); } - const G4String& GetName() const { return theTgrIsot->GetName(); } + private: - private: - - G4tgrIsotope* theTgrIsot; - G4Isotope* theG4Isot; + G4tgrIsotope* theTgrIsot = nullptr; + G4Isotope* theG4Isot = nullptr; }; #endif diff --git a/source/persistency/ascii/include/G4tgbMaterial.hh b/source/persistency/ascii/include/G4tgbMaterial.hh index 26637db4de..b87c55ccbf 100644 --- a/source/persistency/ascii/include/G4tgbMaterial.hh +++ b/source/persistency/ascii/include/G4tgbMaterial.hh @@ -23,26 +23,19 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbMaterial +// G4tgbMaterial // // Class description: // // Transient class of a material; builds a G4Material. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbMaterial_h -#define G4tgbMaterial_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbMaterial_hh +#define G4tgbMaterial_hh 1 #include "globals.hh" -#include -#include #include #include "G4tgrMaterial.hh" @@ -51,56 +44,37 @@ class G4tgbMaterial { friend std::ostream& operator<<(std::ostream&, const G4tgbMaterial&); - - public: // with description + + public: G4tgbMaterial(); virtual ~G4tgbMaterial(); - G4tgbMaterial( G4tgrMaterial* tgr ); + G4tgbMaterial(G4tgrMaterial* tgr); virtual G4Material* BuildG4Material() = 0; - const G4String& GetName() const - { - return theTgrMate->GetName(); - } + const G4String& GetName() const { return theTgrMate->GetName(); } - G4double GetDensity() const - { - return theTgrMate->GetDensity(); - } + G4double GetDensity() const { return theTgrMate->GetDensity(); } G4int GetNumberOfMaterials() const { return theTgrMate->GetNumberOfComponents(); } - G4double GetA() const - { - return theTgrMate->GetA(); - } + G4double GetA() const { return theTgrMate->GetA(); } - G4double GetZ() const - { - return theTgrMate->GetZ(); - } + G4double GetZ() const { return theTgrMate->GetZ(); } - const G4String& GetType() const - { - return theTgrMate->GetType(); - } + const G4String& GetType() const { return theTgrMate->GetType(); } - - G4tgrMaterial* GetTgrMate() const - { - return theTgrMate; - } + G4tgrMaterial* GetTgrMate() const { return theTgrMate; } protected: - G4tgrMaterial* theTgrMate; - G4Material* theG4Mate; + G4tgrMaterial* theTgrMate = nullptr; + G4Material* theG4Mate = nullptr; }; #endif diff --git a/source/persistency/ascii/include/G4tgbMaterialMgr.hh b/source/persistency/ascii/include/G4tgbMaterialMgr.hh index 60511692ab..a23393aec1 100644 --- a/source/persistency/ascii/include/G4tgbMaterialMgr.hh +++ b/source/persistency/ascii/include/G4tgbMaterialMgr.hh @@ -23,22 +23,17 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbMaterialMgr +// G4tgbMaterialMgr // // Class description: // // Singleton class to manage the building of transient materials, // as well as the construction of the corresponding G4Material's. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbMaterialMgr_h -#define G4tgbMaterialMgr_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbMaterialMgr_hh +#define G4tgbMaterialMgr_hh 1 #include "globals.hh" @@ -55,19 +50,19 @@ #include "G4Element.hh" #include "G4Material.hh" -typedef std::map< G4String, G4tgbIsotope* > G4mstgbisot; -typedef std::map< G4String, G4tgbElement* > G4mstgbelem; -typedef std::map< G4String, G4tgbMaterial* > G4mstgbmate; -typedef std::map< G4String, G4Isotope* > G4msg4isot; -typedef std::map< G4String, G4Element* > G4msg4elem; -typedef std::map< G4String, G4Material* > G4msg4mate; +using G4mstgbisot = std::map; +using G4mstgbelem = std::map; +using G4mstgbmate = std::map; +using G4msg4isot = std::map; +using G4msg4elem = std::map; +using G4msg4mate = std::map; -class G4tgbMaterialMgr +class G4tgbMaterialMgr { - public: // with description + public: ~G4tgbMaterialMgr(); - + static G4tgbMaterialMgr* GetInstance(); // Get only instance (it it does not exists, create it) @@ -78,45 +73,45 @@ class G4tgbMaterialMgr void CopyMaterials(); // Copy the G4tgrMaterials into G4tgbMaterials - G4Isotope* FindOrBuildG4Isotope(const G4String & name); + G4Isotope* FindOrBuildG4Isotope(const G4String& name); // Look for a G4Isotope that has to exists // (if not found create it from the corresponding G4tgbIsotope) - G4Isotope* FindBuiltG4Isotope(const G4String & name) const; - // Look for a G4Isotope and if not found return 0 + G4Isotope* FindBuiltG4Isotope(const G4String& name) const; + // Look for a G4Isotope and if not found return nullptr G4tgbIsotope* FindG4tgbIsotope(const G4String& name, - G4bool bMustExist = 0) const; - // Look for a G4Isotope and if not found return 0 + G4bool bMustExist = false) const; + // Look for a G4Isotope and if not found return nullptr - G4Element* FindOrBuildG4Element(const G4String & name, - G4bool bMustExist = 1); + G4Element* FindOrBuildG4Element(const G4String& name, + G4bool bMustExist = true); // Look for a G4Element that has to exists by default // (if not found create it from the corresponding G4tgbElement) G4Element* FindBuiltG4Element(const G4String& name) const; - // Look for a G4Element and if not found return 0 + // Look for a G4Element and if not found return nullptr G4tgbElement* FindG4tgbElement(const G4String& name, - G4bool bMustExist = 0) const; - // Look for a G4Element and if not found return 0 + G4bool bMustExist = false) const; + // Look for a G4Element and if not found return nullptr G4Material* FindOrBuildG4Material(const G4String& name, - G4bool bMustExist = 1); - // Look for a G4Material that has to exists by default - // (if not found create it from the corresponding G4tgbMaterial) + G4bool bMustExist = true); + // Look for a G4Material that has to exists by default + // (if not found create it from the corresponding G4tgbMaterial) G4Material* FindBuiltG4Material(const G4String& name) const; - // Look for a G4Material and if not found return 0 + // Look for a G4Material and if not found return nullptr G4tgbMaterial* FindG4tgbMaterial(const G4String& name, - G4bool bMustExist = 0) const; - // Look for a G4tgbMaterial and if not found return 0 + G4bool bMustExist = false) const; + // Look for a G4tgbMaterial and if not found return nullptr - const G4msg4isot GetG4IsotopeList() const { return theG4Isotopes; } - const G4msg4elem GetG4ElementList() const { return theG4Elements; } + const G4msg4isot GetG4IsotopeList() const { return theG4Isotopes; } + const G4msg4elem GetG4ElementList() const { return theG4Elements; } const G4msg4mate GetG4MaterialList() const { return theG4Materials; } - private: + private: G4tgbMaterialMgr(); // Private Constructor - - private: + + private: static G4ThreadLocal G4tgbMaterialMgr* theInstance; @@ -126,11 +121,11 @@ class G4tgbMaterialMgr // List of all tgbElements created G4mstgbmate theG4tgbMaterials; // List of all G4tgbMaterials created - G4msg4isot theG4Isotopes; + G4msg4isot theG4Isotopes; // Container of all G4Isotopes created - G4msg4elem theG4Elements; + G4msg4elem theG4Elements; // Container of all G4Elements created - G4msg4mate theG4Materials; + G4msg4mate theG4Materials; // Container of all G4Materials created }; diff --git a/source/persistency/ascii/include/G4tgbMaterialMixture.hh b/source/persistency/ascii/include/G4tgbMaterialMixture.hh index c9791bdd66..b99bd1cc96 100644 --- a/source/persistency/ascii/include/G4tgbMaterialMixture.hh +++ b/source/persistency/ascii/include/G4tgbMaterialMixture.hh @@ -23,32 +23,23 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbMaterialMixture +// G4tgbMaterialMixture // // Class description: // // Transient class of a material mixture; builds a G4Material mixture. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbMaterialMixture_h -#define G4tgbMaterialMixture_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbMaterialMixture_hh +#define G4tgbMaterialMixture_hh 1 #include "globals.hh" - -#include -#include - #include "G4tgbMaterial.hh" class G4tgbMaterialMixture : public G4tgbMaterial { - public: // with description + public: G4tgbMaterialMixture(); virtual ~G4tgbMaterialMixture(); @@ -58,9 +49,9 @@ class G4tgbMaterialMixture : public G4tgbMaterial virtual const G4String& GetComponent(G4int i) const; virtual G4double GetFraction(G4int i) const; - //Operators + // Operators - G4tgbMaterialMixture& operator=(const G4tgbMaterialMixture&); + G4tgbMaterialMixture& operator=(const G4tgbMaterialMixture&); protected: diff --git a/source/persistency/ascii/include/G4tgbMaterialMixtureByNoAtoms.hh b/source/persistency/ascii/include/G4tgbMaterialMixtureByNoAtoms.hh index 7d50d92001..3c2e3efd3e 100644 --- a/source/persistency/ascii/include/G4tgbMaterialMixtureByNoAtoms.hh +++ b/source/persistency/ascii/include/G4tgbMaterialMixtureByNoAtoms.hh @@ -23,43 +23,32 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbMaterialMixtureByNoAtoms +// G4tgbMaterialMixtureByNoAtoms // // Class description: // // Class to represent a material whose components are given by number of atoms. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbMaterialMixtureByNoAtoms_h -#define G4tgbMaterialMixtureByNoAtoms_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbMaterialMixtureByNoAtoms_hh +#define G4tgbMaterialMixtureByNoAtoms_hh 1 #include "globals.hh" - -#include -#include - #include "G4tgbMaterialMixture.hh" class G4tgbMaterialMixtureByNoAtoms : public G4tgbMaterialMixture { + public: - public: // with description - - G4tgbMaterialMixtureByNoAtoms( G4tgrMaterial* tgr ); + G4tgbMaterialMixtureByNoAtoms(G4tgrMaterial* tgr); G4tgbMaterialMixtureByNoAtoms(); - ~G4tgbMaterialMixtureByNoAtoms(); + ~G4tgbMaterialMixtureByNoAtoms(); G4Material* BuildG4Material(); // Return the associated G4Material and if does not exist build it void TransformToFractionsByWeight(); - }; #endif diff --git a/source/persistency/ascii/include/G4tgbMaterialMixtureByVolume.hh b/source/persistency/ascii/include/G4tgbMaterialMixtureByVolume.hh index 350910d385..6c6594e14d 100644 --- a/source/persistency/ascii/include/G4tgbMaterialMixtureByVolume.hh +++ b/source/persistency/ascii/include/G4tgbMaterialMixtureByVolume.hh @@ -23,36 +23,27 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbMaterialMixtureByVolume +// G4tgbMaterialMixtureByVolume // // Class description: // // Class to represent a material whose components are given by volume. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbMaterialMixtureByVolume_h -#define G4tgbMaterialMixtureByVolume_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbMaterialMixtureByVolume_hh +#define G4tgbMaterialMixtureByVolume_hh 1 #include "globals.hh" - -#include -#include - #include "G4tgbMaterialMixture.hh" class G4tgbMaterialMixtureByVolume : public G4tgbMaterialMixture { - public: // with description + public: G4tgbMaterialMixtureByVolume(); - G4tgbMaterialMixtureByVolume( G4tgrMaterial* tgr ); - ~G4tgbMaterialMixtureByVolume(); + G4tgbMaterialMixtureByVolume(G4tgrMaterial* tgr); + ~G4tgbMaterialMixtureByVolume(); G4Material* BuildG4Material(); // Return the associated G4Material and if does not exist build it diff --git a/source/persistency/ascii/include/G4tgbMaterialMixtureByWeight.hh b/source/persistency/ascii/include/G4tgbMaterialMixtureByWeight.hh index 1cedc0c179..76c04ae691 100644 --- a/source/persistency/ascii/include/G4tgbMaterialMixtureByWeight.hh +++ b/source/persistency/ascii/include/G4tgbMaterialMixtureByWeight.hh @@ -23,36 +23,27 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbMaterialMixtureByWeight +// G4tgbMaterialMixtureByWeight // // Class description: // // Class to represent a material whose components are given by weight fractions. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbMaterialMixtureByWeight_h -#define G4tgbMaterialMixtureByWeight_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbMaterialMixtureByWeight_hh +#define G4tgbMaterialMixtureByWeight_hh 1 #include "globals.hh" - -#include -#include - #include "G4tgbMaterialMixture.hh" class G4tgbMaterialMixtureByWeight : public G4tgbMaterialMixture { - public: // with description + public: G4tgbMaterialMixtureByWeight(); - G4tgbMaterialMixtureByWeight( G4tgrMaterial* tgr ); - ~G4tgbMaterialMixtureByWeight(); + G4tgbMaterialMixtureByWeight(G4tgrMaterial* tgr); + ~G4tgbMaterialMixtureByWeight(); G4Material* BuildG4Material(); // Return the associated G4Material and if does not exist build it diff --git a/source/persistency/ascii/include/G4tgbMaterialSimple.hh b/source/persistency/ascii/include/G4tgbMaterialSimple.hh index 492baeee48..9be128228a 100644 --- a/source/persistency/ascii/include/G4tgbMaterialSimple.hh +++ b/source/persistency/ascii/include/G4tgbMaterialSimple.hh @@ -23,39 +23,30 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbMaterialSimple +// G4tgbMaterialSimple // // Class description: // // Class to represent a simple material definition. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbMaterialSimple_hh +#define G4tgbMaterialSimple_hh 1 -#ifndef G4tgbMaterialSimple_h -#define G4tgbMaterialSimple_h - -#include "globals.hh" - -#include -#include #include +#include "globals.hh" #include "G4tgbMaterial.hh" class G4tgbMaterialSimple : public G4tgbMaterial { + public: - public: // with description - G4tgbMaterialSimple(); - ~G4tgbMaterialSimple(); + ~G4tgbMaterialSimple(); - G4tgbMaterialSimple( G4tgrMaterial* tgr ); + G4tgbMaterialSimple(G4tgrMaterial* tgr); // Fill the data interpreting the list of words read 'wl' friend std::ostream& operator<<(std::ostream&, const G4tgbMaterialSimple&); @@ -63,13 +54,13 @@ class G4tgbMaterialSimple : public G4tgbMaterial G4Material* BuildG4Material(); // Return the associated G4Material and if does not exist build it - G4double GetZ() const {return theZ;} - G4double GetA() const {return theA;} + G4double GetZ() const { return theZ; } + G4double GetA() const { return theA; } private: - G4double theZ; - G4double theA; + G4double theZ = 0.0; + G4double theA = 0.0; }; #endif diff --git a/source/persistency/ascii/include/G4tgbPlaceParamCircle.hh b/source/persistency/ascii/include/G4tgbPlaceParamCircle.hh index 8d8d1135e4..f12b8a885e 100644 --- a/source/persistency/ascii/include/G4tgbPlaceParamCircle.hh +++ b/source/persistency/ascii/include/G4tgbPlaceParamCircle.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbPlaceParamCircle +// G4tgbPlaceParamCircle // // Class description: // // Class to represent simple Cartesian parameterisations along a circle. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbPlaceParamCircle_H -#define G4tgbPlaceParamCircle_H 1 +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbPlaceParamCircle_hh +#define G4tgbPlaceParamCircle_hh 1 #include "globals.hh" @@ -49,14 +44,14 @@ class G4tgrPlaceParameterisation; class G4VPhysicalVolume; class G4tgbPlaceParamCircle : public G4tgbPlaceParameterisation -{ - public: // with description +{ + public: - G4tgbPlaceParamCircle( G4tgrPlaceParameterisation* ); + G4tgbPlaceParamCircle(G4tgrPlaceParameterisation*); ~G4tgbPlaceParamCircle(); void ComputeTransformation(const G4int copyNo, - G4VPhysicalVolume *physVol) const; + G4VPhysicalVolume* physVol) const; private: @@ -64,12 +59,12 @@ class G4tgbPlaceParamCircle : public G4tgbPlaceParameterisation private: - G4double theRadius; + G4double theRadius = 0.0; G4ThreeVector theCircleAxis; G4ThreeVector theDirInPlane; - G4double theStep; - G4double theOffset; + G4double theStep = 0.0; + G4double theOffset = 0.0; }; #endif diff --git a/source/persistency/ascii/include/G4tgbPlaceParamLinear.hh b/source/persistency/ascii/include/G4tgbPlaceParamLinear.hh index a41d1dce57..7a3bea120e 100644 --- a/source/persistency/ascii/include/G4tgbPlaceParamLinear.hh +++ b/source/persistency/ascii/include/G4tgbPlaceParamLinear.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbPlaceParamLinear +// G4tgbPlaceParamLinear // // Class description: // // Class to represent simple Cartesian parameterisations along a line. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbPlaceParamLinear_H -#define G4tgbPlaceParamLinear_H 1 +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbPlaceParamLinear_hh +#define G4tgbPlaceParamLinear_hh 1 #include "globals.hh" @@ -48,18 +43,19 @@ class G4VPhysicalVolume; class G4tgrPlaceParameterisation; class G4tgbPlaceParamLinear : public G4tgbPlaceParameterisation -{ - public: // with description +{ + public: - G4tgbPlaceParamLinear( G4tgrPlaceParameterisation* ); + G4tgbPlaceParamLinear(G4tgrPlaceParameterisation*); ~G4tgbPlaceParamLinear(); void ComputeTransformation(const G4int copyNo, - G4VPhysicalVolume *physVol) const; + G4VPhysicalVolume* physVol) const; + private: G4ThreeVector theDirection; - G4double theStep; - G4double theOffset; + G4double theStep = 0.0; + G4double theOffset = 0.0; }; #endif diff --git a/source/persistency/ascii/include/G4tgbPlaceParamSquare.hh b/source/persistency/ascii/include/G4tgbPlaceParamSquare.hh index 365a3b7220..793e76c233 100644 --- a/source/persistency/ascii/include/G4tgbPlaceParamSquare.hh +++ b/source/persistency/ascii/include/G4tgbPlaceParamSquare.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbPlaceParamSquare +// G4tgbPlaceParamSquare // // Class description: // // Class to represent simple Cartesian parameterisations along a square. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbPlaceParamSquare_H -#define G4tgbPlaceParamSquare_H 1 +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbPlaceParamSquare_hh +#define G4tgbPlaceParamSquare_hh 1 #include "globals.hh" #include "G4tgbPlaceParameterisation.hh" @@ -46,25 +41,25 @@ class G4VPhysicalVolume; class G4tgbPlaceParamSquare : public G4tgbPlaceParameterisation -{ - public: // with description +{ + public: - G4tgbPlaceParamSquare( G4tgrPlaceParameterisation* ); - ~G4tgbPlaceParamSquare(); + G4tgbPlaceParamSquare(G4tgrPlaceParameterisation*); + ~G4tgbPlaceParamSquare(); - void ComputeTransformation(const G4int copyNo, - G4VPhysicalVolume *physVol) const; + void ComputeTransformation(const G4int copyNo, + G4VPhysicalVolume* physVol) const; private: - G4int theNCopies1; - G4int theNCopies2; + G4int theNCopies1 = 0; + G4int theNCopies2 = 0; G4ThreeVector theDirection1; G4ThreeVector theDirection2; - G4double theStep1; - G4double theStep2; - G4double theOffset1; - G4double theOffset2; + G4double theStep1 = 0.0; + G4double theStep2 = 0.0; + G4double theOffset1 = 0.0; + G4double theOffset2 = 0.0; }; #endif diff --git a/source/persistency/ascii/include/G4tgbPlaceParameterisation.hh b/source/persistency/ascii/include/G4tgbPlaceParameterisation.hh index 125570e41e..817fcff5bf 100644 --- a/source/persistency/ascii/include/G4tgbPlaceParameterisation.hh +++ b/source/persistency/ascii/include/G4tgbPlaceParameterisation.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbPlaceParamSquare +// G4tgbPlaceParamSquare // // Class description: // // Class to represent parameterisations of placements. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbPlaceParameterisation_H -#define G4tgbPlaceParameterisation_H 1 +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbPlaceParameterisation_hh +#define G4tgbPlaceParameterisation_hh 1 #include "globals.hh" #include "geomdefs.hh" @@ -50,28 +45,26 @@ class G4VPhysicalVolume; class G4tgrPlaceParameterisation; class G4tgbPlaceParameterisation : public G4VPVParameterisation -{ - public: // with description +{ + public: - G4tgbPlaceParameterisation( G4tgrPlaceParameterisation* tgrParam ); + G4tgbPlaceParameterisation(G4tgrPlaceParameterisation* tgrParam); virtual ~G4tgbPlaceParameterisation(); - virtual void ComputeTransformation(const G4int, G4VPhysicalVolume *) const; + virtual void ComputeTransformation(const G4int, G4VPhysicalVolume*) const; - void CheckNExtraData( G4tgrPlaceParameterisation* tgrParam, - G4int nWcheck, WLSIZEtype st, - const G4String& methodName ); + void CheckNExtraData(G4tgrPlaceParameterisation* tgrParam, G4int nWcheck, + WLSIZEtype st, const G4String& methodName); G4int GetNCopies() const { return theNCopies; } EAxis GetAxis() const { return theAxis; } protected: - G4int theNCopies; - EAxis theAxis; + G4int theNCopies = 0; + EAxis theAxis = kUndefined; G4ThreeVector theTranslation; - G4RotationMatrix* theRotationMatrix; - + G4RotationMatrix* theRotationMatrix = nullptr; }; #endif diff --git a/source/persistency/ascii/include/G4tgbRotationMatrix.hh b/source/persistency/ascii/include/G4tgbRotationMatrix.hh index 727c8662c1..2ce01de183 100644 --- a/source/persistency/ascii/include/G4tgbRotationMatrix.hh +++ b/source/persistency/ascii/include/G4tgbRotationMatrix.hh @@ -23,22 +23,17 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbRotationMatrix +// G4tgbRotationMatrix // // Class description: // // Transient class of a rotation matrix; builds a G4RotationMatrix, // of each rotation matrix. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbRotationMatrix_h -#define G4tgbRotationMatrix_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbRotationMatrix_hh +#define G4tgbRotationMatrix_hh 1 #include "globals.hh" @@ -50,27 +45,26 @@ class G4tgbRotationMatrix { - public: // with description + public: G4tgbRotationMatrix(); - ~G4tgbRotationMatrix(); + ~G4tgbRotationMatrix(); - G4tgbRotationMatrix( G4tgrRotationMatrix* tgr ); + G4tgbRotationMatrix(G4tgrRotationMatrix* tgr); // Construct the G4tgbRotationMatrix (fill its data members) // interpreting the data in the list of words 'wl' - G4RotationMatrix* BuildG4RotMatrix( ); - G4RotationMatrix* BuildG4RotMatrixFrom3( std::vector& values ); - G4RotationMatrix* BuildG4RotMatrixFrom6( std::vector& values ); - G4RotationMatrix* BuildG4RotMatrixFrom9( std::vector& values ); + G4RotationMatrix* BuildG4RotMatrix(); + G4RotationMatrix* BuildG4RotMatrixFrom3(std::vector& values); + G4RotationMatrix* BuildG4RotMatrixFrom6(std::vector& values); + G4RotationMatrix* BuildG4RotMatrixFrom9(std::vector& values); // Build a G4RotationMatrix transforming theValues - G4String GetName() { return theTgrRM->GetName(); } + const G4String& GetName() { return theTgrRM->GetName(); } private: - G4tgrRotationMatrix* theTgrRM; + G4tgrRotationMatrix* theTgrRM = nullptr; }; #endif - diff --git a/source/persistency/ascii/include/G4tgbRotationMatrixMgr.hh b/source/persistency/ascii/include/G4tgbRotationMatrixMgr.hh index b22ebd41d0..5583988471 100644 --- a/source/persistency/ascii/include/G4tgbRotationMatrixMgr.hh +++ b/source/persistency/ascii/include/G4tgbRotationMatrixMgr.hh @@ -23,22 +23,17 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbRotationMatrixMgr +// G4tgbRotationMatrixMgr // // Class description: // // Singleton class to manage the building of transient rotation matrix, // as well as the construction of the corresponding G4RotationMatrix's. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbRotationMatrixMgr_h -#define G4tgbRotationMatrixMgr_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbRotationMatrixMgr_hh +#define G4tgbRotationMatrixMgr_hh 1 #include "globals.hh" @@ -47,32 +42,29 @@ #include "G4tgbRotationMatrix.hh" -typedef std::map< G4String, G4tgbRotationMatrix*, - std::less > G4mstgbrotm; -typedef std::map< G4String, G4RotationMatrix*, - std::less > G4msg4rotm; +using G4mstgbrotm = std::map>; +using G4msg4rotm = std::map>; -class G4tgbRotationMatrixMgr +class G4tgbRotationMatrixMgr { - public: // with description + public: ~G4tgbRotationMatrixMgr(); - + static G4tgbRotationMatrixMgr* GetInstance(); // Get only instance (if it does not exists, create it) G4RotationMatrix* FindOrBuildG4RotMatrix(const G4String& name); // Look for a G4RotationMatrix and if not found create it - // from the corresponding G4tgbRotationMatrix + // from the corresponding G4tgbRotationMatrix G4RotationMatrix* FindG4RotMatrix(const G4String& name); - // Look for a G4RotationMatrix and if not found return 0 + // Look for a G4RotationMatrix and if not found return nullptr G4tgbRotationMatrix* FindOrBuildTgbRotMatrix(const G4String& name); // Look for an G4tgbRotationMatrix and if not found exit G4tgbRotationMatrix* FindTgbRotMatrix(const G4String& name); - // Look for an G4tgbRotationMatrix and if not found return 0 - - public: // without description + // Look for an G4tgbRotationMatrix and if not found return nullptr const G4mstgbrotm GetTgbRotMatList() const { return theTgbRotMats; } const G4msg4rotm& GetG4RotMatList() const { return theG4RotMats; } @@ -83,13 +75,13 @@ class G4tgbRotationMatrixMgr void CopyRotMats(); static G4ThreadLocal G4tgbRotationMatrixMgr* theInstance; - + private: G4mstgbrotm theTgbRotMats; - G4msg4rotm theG4RotMats; + G4msg4rotm theG4RotMats; }; -std::ostream& operator<<(std::ostream&, const G4RotationMatrix &); +std::ostream& operator<<(std::ostream&, const G4RotationMatrix&); #endif diff --git a/source/persistency/ascii/include/G4tgbVolume.hh b/source/persistency/ascii/include/G4tgbVolume.hh index 9bf6d92964..beb549e08c 100644 --- a/source/persistency/ascii/include/G4tgbVolume.hh +++ b/source/persistency/ascii/include/G4tgbVolume.hh @@ -23,35 +23,28 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbVolume +// G4tgbVolume // // Class description: // // Class to manage the geometry info of any detector unit. The detector units // created in this class are essentially transient copies of Geant4 physical // volumes. Thus, they are characterized by a name and the parameters of a -// Geant4 physical volume. +// Geant4 physical volume. // They have associated several detector positions, that can be instances of // G4tgrPlace, G4tgrPlaceDivRep or G4tgrPlaceParameterisation. // Each detector positioning is done inside a parent. As there can be several // parents, we will write one parent for each detector position, even if that // means that parents are repeated. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbVolume_hh +#define G4tgbVolume_hh 1 -#ifndef G4tgbVolume_h -#define G4tgbVolume_h - -#include "globals.hh" - -#include #include +#include "globals.hh" #include "G4tgrVolume.hh" #include "geomdefs.hh" @@ -64,56 +57,55 @@ class G4AssemblyVolume; class G4tgbVolume { - public: // with description + public: G4tgbVolume(); - ~G4tgbVolume(); - G4tgbVolume( G4tgrVolume* vol); + ~G4tgbVolume(); + G4tgbVolume(G4tgrVolume* vol); - void ConstructG4Volumes( const G4tgrPlace* place, - const G4LogicalVolume* parentLV ); + void ConstructG4Volumes(const G4tgrPlace* place, + const G4LogicalVolume* parentLV); // Construct the G4VSolid, G4LogicalVolume and the G4VPhysicalVolume // of copy 'copyNo' - G4VSolid* FindOrConstructG4Solid( const G4tgrSolid* vol); - // Construct the G4VSolid from the data of the corresponding G4tgrVolume. + G4VSolid* FindOrConstructG4Solid(const G4tgrSolid* vol); + // Construct the G4VSolid from the data of the corresponding G4tgrVolume. // Allow to use data from another G4tgrVolume, needed by Boolean solids // (that have to construct two solids and then do the Boolean operation) - G4LogicalVolume* ConstructG4LogVol( const G4VSolid* solid ); + G4LogicalVolume* ConstructG4LogVol(const G4VSolid* solid); // Construct the G4LogicalVolume and then call the construction of // volumes that are positioned inside this LV - G4VPhysicalVolume* ConstructG4PhysVol( const G4tgrPlace* place, - const G4LogicalVolume* currentLV, - const G4LogicalVolume* parentLV ); + G4VPhysicalVolume* ConstructG4PhysVol(const G4tgrPlace* place, + const G4LogicalVolume* currentLV, + const G4LogicalVolume* parentLV); // Construct the G4VPhysicalVolume placing 'curentLV' with position // given by the G4tgrPlace 'copyNo' inside 'parentLV' - void SetCutsInRange( G4LogicalVolume* logvol, - std::map cuts ); - void SetCutsInEnergy( G4LogicalVolume* logvol, - std::map cuts ); + void SetCutsInRange(G4LogicalVolume* logvol, + std::map cuts); + void SetCutsInEnergy(G4LogicalVolume* logvol, + std::map cuts); - - void CheckNoSolidParams( const G4String& solidType, - const unsigned int NoParamExpected, - const unsigned int NoParam ); + void CheckNoSolidParams(const G4String& solidType, + const unsigned int NoParamExpected, + const unsigned int NoParam); // Before building a solid of type 'solydType', check if the number // of paramenters is the expected one - G4VSolid* BuildSolidForDivision( G4VSolid* parentSolid, EAxis axis ); + G4VSolid* BuildSolidForDivision(G4VSolid* parentSolid, EAxis axis); const G4String& GetName() const { return theTgrVolume->GetName(); } G4bool GetVisibility() const { return theTgrVolume->GetVisibility(); } const G4double* GetColour() const { return theTgrVolume->GetColour(); } private: - - G4tgrVolume* theTgrVolume; + + G4tgrVolume* theTgrVolume = nullptr; // The G4tgrVolume to which it corresponds - G4AssemblyVolume* theG4AssemblyVolume; + G4AssemblyVolume* theG4AssemblyVolume = nullptr; }; -#endif +#endif diff --git a/source/persistency/ascii/include/G4tgbVolumeMgr.hh b/source/persistency/ascii/include/G4tgbVolumeMgr.hh index 3b2a6424d1..9b1392eb6a 100644 --- a/source/persistency/ascii/include/G4tgbVolumeMgr.hh +++ b/source/persistency/ascii/include/G4tgbVolumeMgr.hh @@ -23,22 +23,17 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgbVolume +// G4tgbVolumeMgr // // Class description: // // Class to manage volumes: G4VSolids, G4LogicalVolumes, G4VPhysicalVolumes. // It is a singleton, accesed always through calls to GetInstance(). -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgbVolumeMgr_h -#define G4tgbVolumeMgr_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgbVolumeMgr_hh +#define G4tgbVolumeMgr_hh 1 #include "globals.hh" @@ -54,57 +49,56 @@ class G4tgbVolume; class G4tgrVolume; class G4tgbDetectorBuilder; -typedef std::map< G4String, G4tgbVolume* > G4mssvol; -typedef std::multimap< G4String, G4VSolid* > G4mmssol; -typedef std::multimap< G4String, G4LogicalVolume* > G4mmslv; -typedef std::multimap< G4String, G4VPhysicalVolume* > G4mmspv; -typedef std::map< G4LogicalVolume*, G4LogicalVolume* > G4mlvlv; -typedef std::map< G4VPhysicalVolume*, G4VPhysicalVolume* > G4mpvpv; +using G4mssvol = std::map; +using G4mmssol = std::multimap; +using G4mmslv = std::multimap; +using G4mmspv = std::multimap; +using G4mlvlv = std::map; +using G4mpvpv = std::map; -//---------------------------------------------------------------------------- -class G4tgbVolumeMgr -{ - public: // with description +class G4tgbVolumeMgr +{ + public: G4tgbVolumeMgr(); - ~G4tgbVolumeMgr(); + ~G4tgbVolumeMgr(); - static G4tgbVolumeMgr* GetInstance(); - // Get the only instance + static G4tgbVolumeMgr* GetInstance(); + // Get the only instance - void AddTextFile( const G4String& fname ); + void AddTextFile(const G4String& fname); G4VPhysicalVolume* ReadAndConstructDetector(); void CopyVolumes(); // Build a G4tgbVolume per each G4tgbVolume - G4tgbVolume* FindVolume( const G4String& volname); + G4tgbVolume* FindVolume(const G4String& volname); // Find a G4tgbVolume by name - void RegisterMe( const G4tgbVolume* vol ); + void RegisterMe(const G4tgbVolume* vol); // Register a G4tgbVolume - void RegisterMe( const G4VSolid* solid ); + void RegisterMe(const G4VSolid* solid); // Register a G4VSolid - void RegisterMe( const G4LogicalVolume* lv ); + void RegisterMe(const G4LogicalVolume* lv); // Register a G4LogicalVolume - void RegisterMe( const G4VPhysicalVolume* pv ); + void RegisterMe(const G4VPhysicalVolume* pv); // Register a G4VPhysicalVolume - void RegisterChildParentLVs( const G4LogicalVolume* logvol, - const G4LogicalVolume* parentLV ); + void RegisterChildParentLVs(const G4LogicalVolume* logvol, + const G4LogicalVolume* parentLV); // Register a child and its parent LV - G4VSolid* FindG4Solid( const G4String& name ); - // Find if solid already exists, comparing the name and all parameters + G4VSolid* FindG4Solid(const G4String& name); + // Find if solid already exists, comparing the name and all parameters // (could be checked before creating it, but it would be quite // complicated, because it would have to compare the parameters, and // they depend on the type of solid) - G4LogicalVolume* FindG4LogVol( const G4String& theName, - const G4bool bExists = 0 ); + G4LogicalVolume* FindG4LogVol(const G4String& theName, + const G4bool bExists = false); // Find a G4LogicalVolume if it already exists - G4VPhysicalVolume* FindG4PhysVol( const G4String& theName, - const G4bool bExists = 0 ); + G4VPhysicalVolume* FindG4PhysVol(const G4String& theName, + const G4bool bExists = false); // Find a G4VPhysicalVolume if it already exists G4VPhysicalVolume* GetTopPhysVol(); @@ -125,14 +119,18 @@ class G4tgbVolumeMgr void DumpG4PhysVolLeaf(const G4VPhysicalVolume* pv, unsigned int leafDepth); void DumpG4SolidList(); - public: // without description - - const std::multimap< G4String, G4VSolid* >& GetSolids() const - { return theSolids; } - void SetDetectorBuilder( G4tgbDetectorBuilder* db ) - { theDetectorBuilder = db; } + const std::multimap& GetSolids() const + { + return theSolids; + } + void SetDetectorBuilder(G4tgbDetectorBuilder* db) + { + theDetectorBuilder = db; + } G4tgbDetectorBuilder* GetDetectorBuilder() const - { return theDetectorBuilder; } + { + return theDetectorBuilder; + } private: @@ -164,7 +162,7 @@ class G4tgbVolumeMgr // Physical volume tree for inverse navigation (from children to parents): // first is child, then parent - G4tgbDetectorBuilder* theDetectorBuilder; + G4tgbDetectorBuilder* theDetectorBuilder = nullptr; }; #endif diff --git a/source/persistency/ascii/include/G4tgrElement.hh b/source/persistency/ascii/include/G4tgrElement.hh index 3eaa418cc9..81d2afbee6 100644 --- a/source/persistency/ascii/include/G4tgrElement.hh +++ b/source/persistency/ascii/include/G4tgrElement.hh @@ -23,34 +23,29 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrElement +// G4tgrElement // // Class description: // // Transient class of a chemical element. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrElement_h -#define G4tgrElement_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrElement_hh +#define G4tgrElement_hh 1 #include "globals.hh" class G4tgrElement { - public: // with description + public: G4tgrElement(); virtual ~G4tgrElement(); - const G4String& GetName() const { return theName; } + const G4String& GetName() const { return theName; } const G4String& GetSymbol() const { return theSymbol; } - const G4String& GetType() const { return theType; } + const G4String& GetType() const { return theType; } protected: diff --git a/source/persistency/ascii/include/G4tgrElementFromIsotopes.hh b/source/persistency/ascii/include/G4tgrElementFromIsotopes.hh index 5153100d1a..e481a6f7fa 100644 --- a/source/persistency/ascii/include/G4tgrElementFromIsotopes.hh +++ b/source/persistency/ascii/include/G4tgrElementFromIsotopes.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrElementFromIsotopes +// G4tgrElementFromIsotopes // // Class description: // // Transient class of a chemical element. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrElementFromIsotopes_h -#define G4tgrElementFromIsotopes_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrElementFromIsotopes_hh +#define G4tgrElementFromIsotopes_hh 1 #include "globals.hh" @@ -47,27 +42,27 @@ class G4tgrElementFromIsotopes : public G4tgrElement { - public: // with description + public: G4tgrElementFromIsotopes(); - ~G4tgrElementFromIsotopes(); + ~G4tgrElementFromIsotopes(); - G4tgrElementFromIsotopes( const std::vector& wl ); + G4tgrElementFromIsotopes(const std::vector& wl); // Construct the G4tgrElementFromIsotopes (fill its data members) - // interpreting the data in the list of words 'wl' + // interpreting the data in the list of words 'wl' - G4int GetNumberOfIsotopes() const { return theNoIsotopes; } - const G4String& GetComponent( G4int n ) const { return theComponents[n]; } - G4double GetAbundance( G4int n ) const { return theAbundances[n]; } + G4int GetNumberOfIsotopes() const { return theNoIsotopes; } + const G4String& GetComponent(G4int n) const { return theComponents[n]; } + G4double GetAbundance(G4int n) const { return theAbundances[n]; } friend std::ostream& operator<<(std::ostream&, - const G4tgrElementFromIsotopes& ); + const G4tgrElementFromIsotopes&); + private: - G4int theNoIsotopes; + G4int theNoIsotopes = 0; std::vector theComponents; std::vector theAbundances; - }; #endif diff --git a/source/persistency/ascii/include/G4tgrElementSimple.hh b/source/persistency/ascii/include/G4tgrElementSimple.hh index e82d7ef7b4..e0091d44a5 100644 --- a/source/persistency/ascii/include/G4tgrElementSimple.hh +++ b/source/persistency/ascii/include/G4tgrElementSimple.hh @@ -23,49 +23,43 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrElementSimple +// G4tgrElementSimple // // Class description: // // Transient class of a chemical element. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrElementSimple_h -#define G4tgrElementSimple_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrElementSimple_hh +#define G4tgrElementSimple_hh 1 #include +#include "globals.hh" #include "G4tgrElement.hh" class G4tgrElementSimple : public G4tgrElement -{ - public: // with description +{ + public: G4tgrElementSimple(); - ~G4tgrElementSimple(); + ~G4tgrElementSimple(); - G4tgrElementSimple( const std::vector& wl ); + G4tgrElementSimple(const std::vector& wl); // Construct the G4tgrElementSimple (fill its data members) - // interpreting the data in the list of words 'wl' + // interpreting the data in the list of words 'wl' G4double GetZ() const { return theZ; } G4double GetA() const { return theA; } friend std::ostream& operator<<(std::ostream& os, const G4tgrElementSimple& obj); + private: - G4double theZ; - G4double theA; + G4double theZ = 0.0; + G4double theA = 0.0; }; #endif - diff --git a/source/persistency/ascii/include/G4tgrEvaluator.hh b/source/persistency/ascii/include/G4tgrEvaluator.hh index cfbf9a13e0..e3d82cf48e 100644 --- a/source/persistency/ascii/include/G4tgrEvaluator.hh +++ b/source/persistency/ascii/include/G4tgrEvaluator.hh @@ -23,34 +23,29 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrEvaluator +// G4tgrEvaluator // // Class description: // // Simple customised evaluator utility class. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrEvaluator_HH -#define G4tgrEvaluator_HH +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrEvaluator_hh +#define G4tgrEvaluator_hh 1 #include "G4ThreeVector.hh" #include "G4Evaluator.hh" class G4tgrEvaluator : public G4Evaluator { - public: // with description + public: G4tgrEvaluator(); - ~G4tgrEvaluator(); + ~G4tgrEvaluator(); // Constructor & destructor. - void print_error( G4int status ) const; + void print_error(G4int status) const; // Overwritten ERROR_SYNTAX_ERROR message private: diff --git a/source/persistency/ascii/include/G4tgrFileIn.hh b/source/persistency/ascii/include/G4tgrFileIn.hh index 6a597a5d5d..84dcb82de0 100644 --- a/source/persistency/ascii/include/G4tgrFileIn.hh +++ b/source/persistency/ascii/include/G4tgrFileIn.hh @@ -23,40 +23,36 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrFileIn +// G4tgrFileIn // // Class description: // // Singleton for importing file descriptions. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrFileIn_hh +#define G4tgrFileIn_hh 1 -#ifndef G4tgrFileIn_HH -#define G4tgrFileIn_HH - -#include "globals.hh" #include -class G4tgrFileIn +#include "globals.hh" + +class G4tgrFileIn { - public: // with description + public: G4tgrFileIn(); - ~G4tgrFileIn(); + ~G4tgrFileIn(); - static G4tgrFileIn& GetInstance( const G4String& name ); + static G4tgrFileIn& GetInstance(const G4String& name); // Get the only instance opening the file - static G4tgrFileIn& GetInstanceOpened( const G4String& name ); + static G4tgrFileIn& GetInstanceOpened(const G4String& name); // Get the only instance when file should be already opened - - G4int GetWordsInLine( std::vector& wl ); - // Read a line and transform it to a vector of words + + G4int GetWordsInLine(std::vector& wl); + // Read a line and transform it to a vector of words void ErrorInLine(); // Print out an error message indicating the line being read @@ -64,35 +60,35 @@ class G4tgrFileIn // Access data members G4int Nline() { return theLineNo[theCurrentFile]; } - + const G4String& GetName() { return theName; } - - void OpenNewFile( const char* filename ); + + void OpenNewFile(const char* filename); G4bool EndOfFile(); void Close(); - void DumpException( const G4String& sent ); + void DumpException(const G4String& sent); private: - G4tgrFileIn( const G4String& name ) : theCurrentFile(-1), theName(name) {} + G4tgrFileIn(const G4String& name) : theName(name) {} private: - std::vector< std::ifstream* > theFiles; + std::vector theFiles; std::vector theLineNo; // Number of line being read std::vector theNames; - G4int theCurrentFile; + G4int theCurrentFile = -1; // Index of file being read in theFiles - - static G4ThreadLocal std::vector *theInstances; + + static G4ThreadLocal std::vector* theInstances; // Vector of class instances (each one identified by its name) - - G4String theName; + + G4String theName = ""; // Name of file }; -#endif +#endif diff --git a/source/persistency/ascii/include/G4tgrFileReader.hh b/source/persistency/ascii/include/G4tgrFileReader.hh index c407cc05ea..5ebb98f228 100644 --- a/source/persistency/ascii/include/G4tgrFileReader.hh +++ b/source/persistency/ascii/include/G4tgrFileReader.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrFileReader +// G4tgrFileReader // // Class description: // // This service provides access to detector description data. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrFileReader_H -#define G4tgrFileReader_H 1 +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrFileReader_hh +#define G4tgrFileReader_hh 1 #include "globals.hh" @@ -49,17 +44,17 @@ class G4tgrLineProcessor; class G4tgrFileReader { - public: // with description + public: - static G4tgrFileReader* GetInstance(); - // Get the only instance + static G4tgrFileReader* GetInstance(); + // Get the only instance virtual ~G4tgrFileReader(); G4bool ReadFiles(); - void AddTextFile(const G4String& fname) { theTextFiles.push_back( fname ); } - void SetLineProcessor( G4tgrLineProcessor* lp ) { theLineProcessor = lp; } + void AddTextFile(const G4String& fname) { theTextFiles.push_back(fname); } + void SetLineProcessor(G4tgrLineProcessor* lp) { theLineProcessor = lp; } G4tgrLineProcessor* GetLineProcessor() const { return theLineProcessor; } protected: @@ -68,11 +63,10 @@ class G4tgrFileReader private: - static G4ThreadLocal G4tgrFileReader* theInstance; + static G4ThreadLocal G4tgrFileReader* theInstance; std::vector theTextFiles; - G4tgrLineProcessor* theLineProcessor; - + G4tgrLineProcessor* theLineProcessor = nullptr; }; -# endif +#endif diff --git a/source/persistency/ascii/include/G4tgrIsotope.hh b/source/persistency/ascii/include/G4tgrIsotope.hh index 8d9f603cb5..8a463987d1 100644 --- a/source/persistency/ascii/include/G4tgrIsotope.hh +++ b/source/persistency/ascii/include/G4tgrIsotope.hh @@ -23,52 +23,47 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrIsotope +// G4tgrIsotope // // Class description: // // Transient class of a chemical element. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrIsotope_h -#define G4tgrIsotope_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrIsotope_hh +#define G4tgrIsotope_hh 1 #include +#include "globals.hh" + class G4tgrIsotope -{ - public: // with description +{ + public: G4tgrIsotope(); - ~G4tgrIsotope(); + ~G4tgrIsotope(); - G4tgrIsotope( const std::vector& wl ); + G4tgrIsotope(const std::vector& wl); // Construct the G4tgrIsotope (fill its data members) - // interpreting the data in the list of words 'wl' - + // interpreting the data in the list of words 'wl' + // Retrieval methods const G4String& GetName() const { return theName; } - G4int GetZ() const { return theZ; } - G4int GetN() const { return theN; } + G4int GetZ() const { return theZ; } + G4int GetN() const { return theN; } G4double GetA() const { return theA; } friend std::ostream& operator<<(std::ostream& os, const G4tgrIsotope& obj); - - private: - G4String theName; // name of the Isotope - G4int theZ; // atomic number - G4int theN; // number of nucleons - G4double theA; // mass + private: + + G4String theName = ""; // name of the Isotope + G4int theZ = 0; // atomic number + G4int theN = 0; // number of nucleons + G4double theA = 0.0; // mass }; #endif diff --git a/source/persistency/ascii/include/G4tgrLineProcessor.hh b/source/persistency/ascii/include/G4tgrLineProcessor.hh index 4df89babe2..a3a5415276 100644 --- a/source/persistency/ascii/include/G4tgrLineProcessor.hh +++ b/source/persistency/ascii/include/G4tgrLineProcessor.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrIsotope +// G4tgrLineProcessor // // Class description: // // This service provides access to detector description data. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrLineProcessor_H -#define G4tgrLineProcessor_H 1 +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrLineProcessor_hh +#define G4tgrLineProcessor_hh 1 #include "globals.hh" @@ -48,20 +43,20 @@ class G4tgrVolumeMgr; class G4tgrLineProcessor { - public: // with description + public: G4tgrLineProcessor(); virtual ~G4tgrLineProcessor(); - virtual G4bool ProcessLine( const std::vector& wl ); + virtual G4bool ProcessLine(const std::vector& wl); protected: - G4tgrVolume* FindVolume( const G4String& volname ); + G4tgrVolume* FindVolume(const G4String& volname); private: - G4tgrVolumeMgr* volmgr; + G4tgrVolumeMgr* volmgr = nullptr; }; -# endif +#endif diff --git a/source/persistency/ascii/include/G4tgrMaterial.hh b/source/persistency/ascii/include/G4tgrMaterial.hh index 329e75b761..2348ed558a 100644 --- a/source/persistency/ascii/include/G4tgrMaterial.hh +++ b/source/persistency/ascii/include/G4tgrMaterial.hh @@ -23,71 +23,71 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrMaterial +// G4tgrMaterial // // Class description: // // Class to represent a transient material. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- -#ifndef G4tgrMaterial_h -#define G4tgrMaterial_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrMaterial_hh +#define G4tgrMaterial_hh 1 #include "globals.hh" #include "G4Material.hh" class G4tgrMaterial { - public: // with description + public: G4tgrMaterial(); virtual ~G4tgrMaterial(); // Get methods - const G4String& GetName() const { return theName; } + const G4String& GetName() const { return theName; } G4double GetDensity() const { return theDensity; } // Density in g/cm3 - G4int GetNumberOfComponents() const { return theNoComponents; } - const G4String& GetType() const { return theMateType; } + G4int GetNumberOfComponents() const { return theNoComponents; } + const G4String& GetType() const { return theMateType; } - virtual G4double GetA() const = 0; - virtual G4double GetZ() const = 0; + virtual G4double GetA() const = 0; + virtual G4double GetZ() const = 0; virtual const G4String& GetComponent(G4int i) const = 0; - virtual G4double GetFraction(G4int i) = 0; + virtual G4double GetFraction(G4int i) = 0; G4double GetIonisationMeanExcitationEnergy() const - { return theIonisationMeanExcitationEnergy; } + { + return theIonisationMeanExcitationEnergy; + } - void SetIonisationMeanExcitationEnergy( G4double mee ) - { theIonisationMeanExcitationEnergy = mee; } + void SetIonisationMeanExcitationEnergy(G4double mee) + { + theIonisationMeanExcitationEnergy = mee; + } - G4State GetState() const { return theState; } - void SetState( G4String val ); + const G4State& GetState() const { return theState; } + void SetState(const G4String& val); G4double GetTemperature() const { return theTemperature; } - void SetTemperature( G4double val ) { theTemperature = val; } + void SetTemperature(G4double val) { theTemperature = val; } G4double GetPressure() const { return thePressure; } - void SetPressure( G4double val ) { thePressure = val; } + void SetPressure(G4double val) { thePressure = val; } protected: - G4String theName; - G4double theDensity; - G4int theNoComponents; - G4String theMateType; - G4double theIonisationMeanExcitationEnergy; - G4State theState; - G4double theTemperature; - G4double thePressure; + G4String theName = "Material"; + G4double theDensity = 0.0; + G4int theNoComponents = 0; + G4String theMateType = "Material"; + G4double theIonisationMeanExcitationEnergy = -1.0; + G4State theState = kStateUndefined; + G4double theTemperature = 0.0; + G4double thePressure = 0.0; }; #endif diff --git a/source/persistency/ascii/include/G4tgrMaterialFactory.hh b/source/persistency/ascii/include/G4tgrMaterialFactory.hh index af2b658a42..753a116406 100644 --- a/source/persistency/ascii/include/G4tgrMaterialFactory.hh +++ b/source/persistency/ascii/include/G4tgrMaterialFactory.hh @@ -23,26 +23,21 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrMaterialFactory +// G4tgrMaterialFactory // // Class description: // // Singleton class to manage the building of transient materials. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrMaterialFactory_h -#define G4tgrMaterialFactory_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrMaterialFactory_hh +#define G4tgrMaterialFactory_hh 1 #include +#include "globals.hh" + #include "G4tgrIsotope.hh" #include "G4tgrElementSimple.hh" #include "G4tgrElementFromIsotopes.hh" @@ -50,31 +45,33 @@ #include "G4tgrMaterialSimple.hh" #include "G4tgrMaterialMixture.hh" -typedef std::map< G4String, G4tgrIsotope* > G4mstgrisot; -typedef std::map< G4String, G4tgrElement* > G4mstgrelem; -typedef std::map< G4String, G4tgrMaterial* > G4mstgrmate; +using G4mstgrisot = std::map; +using G4mstgrelem = std::map; +using G4mstgrmate = std::map; -class G4tgrMaterialFactory +class G4tgrMaterialFactory { - public: // with decription + public: ~G4tgrMaterialFactory(); - + static G4tgrMaterialFactory* GetInstance(); // Get only instance (it it does not exist, create it) - G4tgrIsotope* AddIsotope( const std::vector& wl ); + G4tgrIsotope* AddIsotope(const std::vector& wl); // Build a G4tgrIsotope - G4tgrElementSimple* AddElementSimple( const std::vector& wl ); + G4tgrElementSimple* AddElementSimple(const std::vector& wl); // Build a G4tgrElementSimple - G4tgrElementFromIsotopes* AddElementFromIsotopes( const std::vector& wl ); + G4tgrElementFromIsotopes* + AddElementFromIsotopes(const std::vector& wl); // Build a G4tgrElementFromIsotopes - G4tgrMaterialSimple* AddMaterialSimple( const std::vector& wl ); + G4tgrMaterialSimple* AddMaterialSimple(const std::vector& wl); // Build a G4tgrMaterialSimple and add it to the Materials list - G4tgrMaterialMixture* AddMaterialMixture( const std::vector& wl, const G4String& mixtType ); + G4tgrMaterialMixture* AddMaterialMixture(const std::vector& wl, + const G4String& mixtType); // Build a G4tgrMaterialByWeight or G4tgrMaterialByNoAtoms // or G4tgrMaterialByVolume and add it to the Materials list @@ -94,11 +91,9 @@ class G4tgrMaterialFactory void DumpMaterialList() const; // Dump detailed list of materials - public: // without description - - const G4mstgrisot& GetIsotopeList() const {return theG4tgrIsotopes; } - const G4mstgrelem& GetElementList() const {return theG4tgrElements; } - const G4mstgrmate& GetMaterialList() const {return theG4tgrMaterials;} + const G4mstgrisot& GetIsotopeList() const { return theG4tgrIsotopes; } + const G4mstgrelem& GetElementList() const { return theG4tgrElements; } + const G4mstgrmate& GetMaterialList() const { return theG4tgrMaterials; } private: @@ -107,7 +102,8 @@ class G4tgrMaterialFactory void ErrorAlreadyExists(const G4String& object, const std::vector& wl, - const G4bool bNoRepeating = true ); + const G4bool bNoRepeating = true); + private: static G4ThreadLocal G4tgrMaterialFactory* theInstance; diff --git a/source/persistency/ascii/include/G4tgrMaterialMixture.hh b/source/persistency/ascii/include/G4tgrMaterialMixture.hh index a30990c410..87ccc60e4c 100644 --- a/source/persistency/ascii/include/G4tgrMaterialMixture.hh +++ b/source/persistency/ascii/include/G4tgrMaterialMixture.hh @@ -23,32 +23,29 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrMaterialMixture +// G4tgrMaterialMixture // // Class description: // // Class to represent a material mixture. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrMaterialMixture_h -#define G4tgrMaterialMixture_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrMaterialMixture_hh +#define G4tgrMaterialMixture_hh 1 #include #include +#include "globals.hh" #include "G4tgrMaterial.hh" class G4tgrMaterialMixture : public G4tgrMaterial { - public: // with description + public: + + G4tgrMaterialMixture(); + ~G4tgrMaterialMixture(); G4tgrMaterialMixture(const G4String& matType, const std::vector& wl); @@ -60,24 +57,17 @@ class G4tgrMaterialMixture : public G4tgrMaterial G4double GetA() const { return 0.; } G4double GetZ() const { return 0.; } - const G4String& GetComponent(G4int i) const { return theComponents[i]; } - G4double GetFraction(G4int i) { return theFractions[i]; } - - G4tgrMaterialMixture operator= (const G4tgrMaterialMixture&); - - public: // without description - - G4tgrMaterialMixture(); - ~G4tgrMaterialMixture(); + const G4String& GetComponent(G4int i) const { return theComponents[i]; } + G4double GetFraction(G4int i) { return theFractions[i]; } protected: - void TransformToFractionsByWeight(){}; + void TransformToFractionsByWeight() {} protected: - std::vector theComponents; - std::vector theFractions; + std::vector theComponents; + std::vector theFractions; }; #endif diff --git a/source/persistency/ascii/include/G4tgrMaterialSimple.hh b/source/persistency/ascii/include/G4tgrMaterialSimple.hh index dae9c180a8..f46026e1ec 100644 --- a/source/persistency/ascii/include/G4tgrMaterialSimple.hh +++ b/source/persistency/ascii/include/G4tgrMaterialSimple.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrMaterialSimple +// G4tgrMaterialSimple // // Class description: // // Class to represent a simple material, i.e. made of a single element. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrMaterialSimple_h -#define G4tgrMaterialSimple_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrMaterialSimple_hh +#define G4tgrMaterialSimple_hh 1 #include "globals.hh" @@ -48,15 +43,16 @@ class G4tgrMaterialSimple : public G4tgrMaterial { - public: // with description - + public: + + G4tgrMaterialSimple(); + ~G4tgrMaterialSimple(); + G4tgrMaterialSimple(const G4String& matType, const std::vector& wl); // Fill the data interpreting the list of words read 'wl' - friend std::ostream& operator<<(std::ostream&, const G4tgrMaterialSimple&); - - G4tgrMaterialSimple& operator= (const G4tgrMaterialSimple&); + friend std::ostream& operator<<(std::ostream&, const G4tgrMaterialSimple&); G4double GetA() const { return theA; } G4double GetZ() const { return theZ; } @@ -64,16 +60,11 @@ class G4tgrMaterialSimple : public G4tgrMaterial const G4String& GetComponent(G4int i) const; G4double GetFraction(G4int i); - public: // without description - - G4tgrMaterialSimple(); - ~G4tgrMaterialSimple(); - private: - G4String name; - G4double theA; - G4double theZ; + G4String name = "MaterialSimple"; + G4double theA = 0.0; + G4double theZ = 0.0; }; #endif diff --git a/source/persistency/ascii/include/G4tgrMessenger.hh b/source/persistency/ascii/include/G4tgrMessenger.hh index 6c9f5e282e..63d656a821 100644 --- a/source/persistency/ascii/include/G4tgrMessenger.hh +++ b/source/persistency/ascii/include/G4tgrMessenger.hh @@ -23,22 +23,17 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrMessenger +// G4tgrMessenger // // Class description: // // Concrete class of G4UImessenger which takes care of commands for // the geometry generation from text file. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrMessenger_h -#define G4tgrMessenger_h 1 +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrMessenger_hh +#define G4tgrMessenger_hh 1 #include "G4UImessenger.hh" @@ -47,20 +42,20 @@ class G4UIcmdWithAnInteger; class G4tgrMessenger : public G4UImessenger { - public: // with description + public: G4tgrMessenger(); - ~G4tgrMessenger(); + ~G4tgrMessenger(); - void SetNewValue(G4UIcommand * command,G4String newValues); - G4String GetCurrentValue(G4UIcommand * command); + void SetNewValue(G4UIcommand* command, G4String newValues); + G4String GetCurrentValue(G4UIcommand* command); static G4int GetVerboseLevel(); - static void SetVerboseLevel( G4int verb ); - + static void SetVerboseLevel(G4int verb); + private: - G4UIdirectory* tgDirectory; - G4UIcmdWithAnInteger* verboseCmd; + G4UIdirectory* tgDirectory = nullptr; + G4UIcmdWithAnInteger* verboseCmd = nullptr; static G4ThreadLocal G4int theVerboseLevel; }; diff --git a/source/persistency/ascii/include/G4tgrParameterMgr.hh b/source/persistency/ascii/include/G4tgrParameterMgr.hh index cd4b26b389..ef98b815f8 100644 --- a/source/persistency/ascii/include/G4tgrParameterMgr.hh +++ b/source/persistency/ascii/include/G4tgrParameterMgr.hh @@ -23,48 +23,42 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrParameterMgr +// G4tgrParameterMgr // // Class description: // // Class to manage parameters. It is a singleton. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrParameterMgr_h -#define G4tgrParameterMgr_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrParameterMgr_hh +#define G4tgrParameterMgr_hh 1 #include #include -typedef std::map< G4String, G4String > G4mapss; +#include "globals.hh" -class G4tgrParameterMgr -{ - public: // with description +using G4mapss = std::map; - static G4tgrParameterMgr* GetInstance(); - // Get the only instance +class G4tgrParameterMgr +{ + public: - void AddParameterNumber( const std::vector& wl, - G4bool mustBeNew = 0 ); - void AddParameterString( const std::vector& wl, - G4bool mustBeNew = 0 ); + static G4tgrParameterMgr* GetInstance(); + // Get the only instance + + void AddParameterNumber(const std::vector& wl, + G4bool mustBeNew = false); + void AddParameterString(const std::vector& wl, + G4bool mustBeNew = false); // Add to theParameterList - void CheckIfNewParameter( const std::vector& wl, - G4bool mustBeNew ); + void CheckIfNewParameter(const std::vector& wl, G4bool mustBeNew); // Check if it is new and that there are 3 words - G4String FindParameter( const G4String& name, G4bool exists = true ); - // Find a Parameter with name 'name'. + G4String FindParameter(const G4String& name, G4bool exists = true); + // Find a Parameter with name 'name'. void DumpList(); // Dump list of parameters @@ -72,7 +66,7 @@ class G4tgrParameterMgr private: G4tgrParameterMgr(); - ~G4tgrParameterMgr(); + ~G4tgrParameterMgr(); private: diff --git a/source/persistency/ascii/include/G4tgrPlace.hh b/source/persistency/ascii/include/G4tgrPlace.hh index 3fc4db2f01..181bc88630 100644 --- a/source/persistency/ascii/include/G4tgrPlace.hh +++ b/source/persistency/ascii/include/G4tgrPlace.hh @@ -23,22 +23,17 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrPlace +// G4tgrPlace // // Class description: // // Abstract base class to describe the position of a G4tgrVolume inside // another G4tgrVolume. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrPlace_h -#define G4tgrPlace_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrPlace_hh +#define G4tgrPlace_hh 1 #include "globals.hh" #include "G4ThreeVector.hh" @@ -47,7 +42,7 @@ class G4tgrVolume; class G4tgrPlace { - public: // with description + public: G4tgrPlace(); virtual ~G4tgrPlace(); @@ -58,24 +53,24 @@ class G4tgrPlace G4tgrVolume* GetVolume() const { return theVolume; } unsigned int GetCopyNo() const { return theCopyNo; } const G4String& GetType() const { return theType; } - void SetVolume( G4tgrVolume* vol ) { theVolume = vol; } - void SetType( const G4String& typ ){ theType = typ; } + void SetVolume(G4tgrVolume* vol) { theVolume = vol; } + void SetType(const G4String& typ) { theType = typ; } virtual G4ThreeVector GetPlacement() const; protected: - G4tgrVolume* theVolume; + G4tgrVolume* theVolume = nullptr; // The detunit to which it belongs - G4String theParentName; + G4String theParentName = ""; // The parent (by name, as we will allow that a child - // is placed in the file before the parent is created) + // is placed in the file before the parent is created) - unsigned int theCopyNo; + unsigned int theCopyNo = 0; // The copy number - G4String theType; + G4String theType = ""; // The type (simple/replica/param) }; diff --git a/source/persistency/ascii/include/G4tgrPlaceDivRep.hh b/source/persistency/ascii/include/G4tgrPlaceDivRep.hh index 0e8f27aab8..110cdd7c90 100644 --- a/source/persistency/ascii/include/G4tgrPlaceDivRep.hh +++ b/source/persistency/ascii/include/G4tgrPlaceDivRep.hh @@ -23,45 +23,43 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrPlaceDivRep +// G4tgrPlaceDivRep // // Class description: // // Class to descripe the position of a G4tgrVolume inside another // G4tgrVolume as a replica, i.e. filling the whole parent volume. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrPlaceDivRep_h -#define G4tgrPlaceDivRep_h - -#include "globals.hh" -#include "geomdefs.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrPlaceDivRep_hh +#define G4tgrPlaceDivRep_hh 1 #include +#include "globals.hh" +#include "geomdefs.hh" #include "G4tgrPlace.hh" -enum G4DivType { DivByNdiv, DivByWidth, DivByNdivAndWidth }; +enum G4DivType +{ + DivByNdiv, + DivByWidth, + DivByNdivAndWidth +}; class G4tgrPlaceDivRep : public G4tgrPlace { - - public: // with description + public: G4tgrPlaceDivRep(); - ~G4tgrPlaceDivRep(); + ~G4tgrPlaceDivRep(); - G4tgrPlaceDivRep( const std::vector& wl ); + G4tgrPlaceDivRep(const std::vector& wl); // Creates an object passing the only data that is fixed // (ndiv, width, offset may be have to be recalculated) - EAxis BuildAxis( const G4String& axisName ); + EAxis BuildAxis(const G4String& axisName); // Access functions @@ -72,21 +70,22 @@ class G4tgrPlaceDivRep : public G4tgrPlace G4DivType GetDivType() const { return theDivType; } void SetParentName(const G4String& parentName) { theParentName=parentName; } - void SetNDiv( G4int ndiv ) { theNDiv = ndiv; } - void SetWidth( G4double width ) { theWidth = width; } - void SetAxis( EAxis axis ) { theAxis = axis; } - void SetOffset( G4double offset ) { theOffset = offset; } - void SetDivType( G4DivType typ ) { theDivType = typ; } - + void SetNDiv(G4int ndiv) { theNDiv = ndiv; } + void SetWidth(G4double width) { theWidth = width; } + void SetAxis(EAxis axis) { theAxis = axis; } + void SetOffset(G4double offset) { theOffset = offset; } + void SetDivType(G4DivType typ) { theDivType = typ; } + friend std::ostream& operator<<(std::ostream& os, const G4tgrPlaceDivRep& obj); + private: - G4int theNDiv; - G4double theWidth; - EAxis theAxis; - G4double theOffset; - G4DivType theDivType; + G4int theNDiv = 0; + G4double theWidth = 0.0; + EAxis theAxis = kUndefined; + G4double theOffset = 0.0; + G4DivType theDivType = DivByNdivAndWidth; }; #endif diff --git a/source/persistency/ascii/include/G4tgrPlaceParameterisation.hh b/source/persistency/ascii/include/G4tgrPlaceParameterisation.hh index 38bf528e9f..5fd14a0d3e 100644 --- a/source/persistency/ascii/include/G4tgrPlaceParameterisation.hh +++ b/source/persistency/ascii/include/G4tgrPlaceParameterisation.hh @@ -23,10 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrPlaceParameterisation +// G4tgrPlaceParameterisation // // Class description: // @@ -36,42 +33,40 @@ // - Parameterisation also of the dimensions // - Parameterisation of the solid type // Data is just stored in this class, without any calculation of the -// positions of each copy +// positions of each copy // :POS_PARAM "volu_name" copyNo "parent_name" "parametrisation_type" // number_copies step offset extra_data(n words). -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrPlaceParameterisation_h -#define G4tgrPlaceParameterisation_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrPlaceParameterisation_hh +#define G4tgrPlaceParameterisation_hh 1 #include +#include "globals.hh" #include "G4tgrPlace.hh" class G4tgrPlaceParameterisation : public G4tgrPlace { - public: // with description + public: G4tgrPlaceParameterisation(); - ~G4tgrPlaceParameterisation(); + ~G4tgrPlaceParameterisation(); - G4tgrPlaceParameterisation( const std::vector& p); + G4tgrPlaceParameterisation(const std::vector& p); // Creates an object passing the parameters // Access functions const G4String& GetParamType() const { return theParamType; } - // GetType returns placement type + // GetType returns placement type std::vector GetExtraData() const { return theExtraData; } const G4String& GetRotMatName() const { return theRotMatName; } friend std::ostream& operator<<(std::ostream& os, const G4tgrPlaceParameterisation& obj); + private: G4String theParamType; diff --git a/source/persistency/ascii/include/G4tgrPlaceSimple.hh b/source/persistency/ascii/include/G4tgrPlaceSimple.hh index 2f75f9072e..45a53e8557 100644 --- a/source/persistency/ascii/include/G4tgrPlaceSimple.hh +++ b/source/persistency/ascii/include/G4tgrPlaceSimple.hh @@ -23,38 +23,32 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrPlaceSimple +// G4tgrPlaceSimple // // Class description: // // Class to describe a simple positioning of a G4tgrVolume inside // another G4tgrVolume. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrPlaceSimple_h -#define G4tgrPlaceSimple_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrPlaceSimple_hh +#define G4tgrPlaceSimple_hh 1 #include +#include "globals.hh" #include "G4ThreeVector.hh" #include "G4tgrPlace.hh" class G4tgrPlaceSimple : public G4tgrPlace { - public: // with description + public: G4tgrPlaceSimple(); - ~G4tgrPlaceSimple(); + ~G4tgrPlaceSimple(); - G4tgrPlaceSimple( const std::vector& wl ); + G4tgrPlaceSimple(const std::vector& wl); // Accessors @@ -63,6 +57,7 @@ class G4tgrPlaceSimple : public G4tgrPlace friend std::ostream& operator<<(std::ostream& os, const G4tgrPlaceSimple& obj); + protected: G4ThreeVector thePlace; diff --git a/source/persistency/ascii/include/G4tgrRotationMatrix.hh b/source/persistency/ascii/include/G4tgrRotationMatrix.hh index ab54e5af78..6d516810ae 100644 --- a/source/persistency/ascii/include/G4tgrRotationMatrix.hh +++ b/source/persistency/ascii/include/G4tgrRotationMatrix.hh @@ -23,51 +23,52 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrRotationMatrix +// G4tgrRotationMatrix // // Class description: // // Transient class of a rotation matrix. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrRotationMatrix_h -#define G4tgrRotationMatrix_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrRotationMatrix_hh +#define G4tgrRotationMatrix_hh 1 #include -enum G4RotMatInputType { rm3, rm6, rm9 }; +#include "globals.hh" + +enum G4RotMatInputType +{ + rm3, + rm6, + rm9 +}; class G4tgrRotationMatrix { - public: // with description + public: G4tgrRotationMatrix(); - ~G4tgrRotationMatrix(); + ~G4tgrRotationMatrix(); - G4tgrRotationMatrix( const std::vector& wl ); + G4tgrRotationMatrix(const std::vector& wl); // Construct the G4tgrRotationMatrix (fill its data members) - // interpreting the data in the list of words 'wl' + // interpreting the data in the list of words 'wl' const G4String& GetName() { return theName; } std::vector& GetValues() { return theValues; } friend std::ostream& operator<<(std::ostream& os, const G4tgrRotationMatrix& obj); + private: - G4String theName; + G4String theName = "Rotation-Matrix"; std::vector theValues; // thetaX,phiX,thetaY,phiY,thetaZ,phiZ; - G4RotMatInputType theInputType; + G4RotMatInputType theInputType = rm9; }; #endif diff --git a/source/persistency/ascii/include/G4tgrRotationMatrixFactory.hh b/source/persistency/ascii/include/G4tgrRotationMatrixFactory.hh index 5796fced5c..99a9c4785c 100644 --- a/source/persistency/ascii/include/G4tgrRotationMatrixFactory.hh +++ b/source/persistency/ascii/include/G4tgrRotationMatrixFactory.hh @@ -23,47 +23,43 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrRotationMatrixFactory +// G4tgrRotationMatrixFactory // // Class description: // // Singleton class to manage the building of transient rotation matrix. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrRotationMatrixFactory_h -#define G4tgrRotationMatrixFactory_h - -#include "globals.hh" -#include "G4tgrRotationMatrix.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrRotationMatrixFactory_hh +#define G4tgrRotationMatrixFactory_hh 1 #include #include -typedef std::map< G4String, G4tgrRotationMatrix* > G4mstgrrotm; +#include "globals.hh" +#include "G4tgrRotationMatrix.hh" -class G4tgrRotationMatrixFactory +using G4mstgrrotm = std::map; + +class G4tgrRotationMatrixFactory { - public: // with desctiption + public: static G4tgrRotationMatrixFactory* GetInstance(); // Get the only instance (it it does not exists, create it) - - G4tgrRotationMatrix* AddRotMatrix( const std::vector& wl ); + + G4tgrRotationMatrix* AddRotMatrix(const std::vector& wl); // Build a G4tgrRotationMatrix and add it to theTgrRotMats G4tgrRotationMatrix* FindRotMatrix(const G4String& rotm); - // Look for an G4tgrRotationMatrix and if not found return 0 + // Look for an G4tgrRotationMatrix and if not found return 0 - const G4mstgrrotm& GetRotMatMap() const - { return theTgrRotMats; } + const G4mstgrrotm& GetRotMatMap() const { return theTgrRotMats; } std::vector GetRotMatList() const - { return theTgrRotMatList; } + { + return theTgrRotMatList; + } void DumpRotmList(); // Dump list of rotation matrices @@ -71,12 +67,12 @@ class G4tgrRotationMatrixFactory private: G4tgrRotationMatrixFactory(); - ~G4tgrRotationMatrixFactory(); + ~G4tgrRotationMatrixFactory(); private: static G4ThreadLocal G4tgrRotationMatrixFactory* theInstance; - + std::vector theTgrRotMatList; G4mstgrrotm theTgrRotMats; }; diff --git a/source/persistency/ascii/include/G4tgrSolid.hh b/source/persistency/ascii/include/G4tgrSolid.hh index c226f238dc..1da17b0dd3 100644 --- a/source/persistency/ascii/include/G4tgrSolid.hh +++ b/source/persistency/ascii/include/G4tgrSolid.hh @@ -23,57 +23,51 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrSolid +// G4tgrSolid // // Class description: // // Base class for management of transient solids. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrSolid_h -#define G4tgrSolid_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrSolid_hh +#define G4tgrSolid_hh 1 #include +#include "globals.hh" #include "G4ThreeVector.hh" class G4tgrSolid { - public: // with description + public: G4tgrSolid(); - G4tgrSolid( const std::vector& wl); + G4tgrSolid(const std::vector& wl); virtual ~G4tgrSolid(); friend std::ostream& operator<<(std::ostream&, const G4tgrSolid&); - // Accessors + // Accessors const G4String& GetName() const { return theName; } const G4String& GetType() const { return theType; } - const std::vector< std::vector* > GetSolidParams() const; + const std::vector*> GetSolidParams() const; virtual const G4String& GetRelativeRotMatName() const; virtual G4ThreeVector GetRelativePlace() const; private: - void FillSolidParams( const std::vector& wl ); + void FillSolidParams(const std::vector& wl); protected: - G4String theName; + G4String theName; // Name of the solid - G4String theType; + G4String theType; // Type of the solid (Simple, Boolean, Box, Tube, ...) - std::vector< std::vector* > theSolidParams; + std::vector*> theSolidParams; // Vectors of parameters }; diff --git a/source/persistency/ascii/include/G4tgrSolidBoolean.hh b/source/persistency/ascii/include/G4tgrSolidBoolean.hh index 6586d10fc4..65180a7232 100644 --- a/source/persistency/ascii/include/G4tgrSolidBoolean.hh +++ b/source/persistency/ascii/include/G4tgrSolidBoolean.hh @@ -23,10 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrSolidBoolean +// G4tgrSolidBoolean // // Class description: // @@ -34,25 +31,22 @@ // the Boolean operation of two solids. The type of operation can be: // Union, Substraction, Intersection. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrSolidBoolean_h -#define G4tgrSolidBoolean_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrSolidBoolean_hh +#define G4tgrSolidBoolean_hh 1 #include +#include "globals.hh" #include "G4tgrSolid.hh" class G4tgrSolidBoolean : public G4tgrSolid { - public: // with description + public: G4tgrSolidBoolean(const std::vector& wl); - ~G4tgrSolidBoolean(); + ~G4tgrSolidBoolean(); friend std::ostream& operator<<(std::ostream&, const G4tgrSolidBoolean&); @@ -62,12 +56,12 @@ class G4tgrSolidBoolean : public G4tgrSolid const G4String& GetRelativeRotMatName() const; G4ThreeVector GetRelativePlace() const; - private: + private: // Solid types (Box, Tube, etc) of the solids composing the Boolean solid - std::vector< std::vector* > theSolidParams; - // Vectors of parameters. + std::vector*> theSolidParams; + // Vectors of parameters. G4String theRelativeRotMatName; G4ThreeVector theRelativePlace; @@ -75,18 +69,16 @@ class G4tgrSolidBoolean : public G4tgrSolid std::vector theSolids; // The two G4tgrSolid's that combine to make this one - }; -inline const G4tgrSolid* G4tgrSolidBoolean::GetSolid( G4int ii ) const -{ +inline const G4tgrSolid* G4tgrSolidBoolean::GetSolid(G4int ii) const +{ if((ii != 0) && (ii != 1)) { std::ostringstream message; - message << "Only two G4tgrSolids (0,1) possible ! Asking for... " - << ii; - G4Exception("G4tgrSolidBoolean::GetSolid()", "InvalidInput", - FatalException, message); + message << "Only two G4tgrSolids (0,1) possible ! Asking for... " << ii; + G4Exception("G4tgrSolidBoolean::GetSolid()", "InvalidInput", FatalException, + message); } return theSolids[ii]; } diff --git a/source/persistency/ascii/include/G4tgrUtils.hh b/source/persistency/ascii/include/G4tgrUtils.hh index f862f4faf8..4ea519d7a2 100644 --- a/source/persistency/ascii/include/G4tgrUtils.hh +++ b/source/persistency/ascii/include/G4tgrUtils.hh @@ -23,82 +23,83 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrUtils +// G4tgrUtils // // Class description: // // Utility class for managing of strings. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrUtils_h -#define G4tgrUtils_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrUtils_hh +#define G4tgrUtils_hh 1 #include #include +#include "globals.hh" #include "G4ThreeVector.hh" #include "G4RotationMatrix.hh" #include "G4tgrEvaluator.hh" -enum WLSIZEtype {WLSIZE_EQ,WLSIZE_NE,WLSIZE_LE,WLSIZE_LT,WLSIZE_GE,WLSIZE_GT}; +enum WLSIZEtype +{ + WLSIZE_EQ, + WLSIZE_NE, + WLSIZE_LE, + WLSIZE_LT, + WLSIZE_GE, + WLSIZE_GT +}; class G4tgrUtils { - public: // with description + public: G4tgrUtils(); - ~G4tgrUtils(); - + ~G4tgrUtils(); + static G4bool IsSeparator(char); - static G4bool IsNumber( const G4String& str); - static G4bool IsInteger( const G4double val, - const G4double precision = 1.e-6 ); - static G4bool IsFunction( const G4String& word ); + static G4bool IsNumber(const G4String& str); + static G4bool IsInteger(const G4double val, + const G4double precision = 1.e-6); + static G4bool IsFunction(const G4String& word); // Checks that every character in a G4String is a number // (also '.' or exponencial notation: 'E') - static G4bool WordIsUnit( const G4String& word ); + static G4bool WordIsUnit(const G4String& word); - static void Dump3v( const G4ThreeVector& vec, const char* msg); + static void Dump3v(const G4ThreeVector& vec, const char* msg); // Dumps a three-vector with a message - static void Dumprm( const G4RotationMatrix& rm, const char* msg); + static void Dumprm(const G4RotationMatrix& rm, const char* msg); // Dumps a rotation matrix with a message - static void DumpVS( const std::vector& wl , const char* msg); + static void DumpVS(const std::vector& wl, const char* msg); // Dumps a vector of G4Strings with a message to cout - static void DumpVS( const std::vector& wl , const char* msg, - std::ostream& outs) ; + static void DumpVS(const std::vector& wl, const char* msg, + std::ostream& outs); // Dumps a vector of G4Strings with a message to outs - static void CheckWLsize( const std::vector& wl, - unsigned int nWCheck, WLSIZEtype st, - const G4String& methodName ); - static G4bool CheckListSize( unsigned int nWreal, - unsigned int nWcheck, WLSIZEtype st, - G4String& outstr ); + static void CheckWLsize(const std::vector& wl, + unsigned int nWCheck, + WLSIZEtype st, const G4String& methodName); + static G4bool CheckListSize(unsigned int nWreal, unsigned int nWcheck, + WLSIZEtype st, G4String& outstr); - static G4String SubColon( const G4String& str ); + static G4String SubColon(const G4String& str); // Return the str without leading ':' - static G4String GetString( const G4String& str ); + static G4String GetString(const G4String& str); // Return the str without leading and trailing '"' and ' ' - static G4double GetDouble( const G4String& str, G4double unitval = 1. ); + static G4double GetDouble(const G4String& str, G4double unitval = 1.); // Convert a G4String to a double, checking that it is really a number - static G4int GetInt( const G4String& str ); + static G4int GetInt(const G4String& str); // Convert a G4String to an integer, checking that it is really an int - static G4bool GetBool( const G4String& str ); + static G4bool GetBool(const G4String& str); // Convert a bool to an integer, checking that it is really a bool - static G4RotationMatrix GetRotationFromDirection( G4ThreeVector dir ); + static G4RotationMatrix GetRotationFromDirection(G4ThreeVector dir); - static G4bool AreWordsEquivalent( const G4String& word1, - const G4String& word2 ); + static G4bool AreWordsEquivalent(const G4String& word1, + const G4String& word2); // Looks if word1 and word2 are equivalent, considering that // word1 may have '*', meaning 'any character' @@ -107,4 +108,4 @@ class G4tgrUtils static G4ThreadLocal G4tgrEvaluator* theEvaluator; }; -#endif +#endif diff --git a/source/persistency/ascii/include/G4tgrVolume.hh b/source/persistency/ascii/include/G4tgrVolume.hh index 05ba536cce..60f46cf74e 100644 --- a/source/persistency/ascii/include/G4tgrVolume.hh +++ b/source/persistency/ascii/include/G4tgrVolume.hh @@ -23,10 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrVolume +// G4tgrVolume // // Class description: // @@ -39,18 +36,16 @@ // parents, one parent for each volume placement will be written, even if that // means that parents are repeated... -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrVolume_h -#define G4tgrVolume_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrVolume_hh +#define G4tgrVolume_hh 1 #include #include +#include "globals.hh" + class G4tgrSolid; class G4tgrPlace; class G4tgrPlaceDivRep; @@ -58,66 +53,66 @@ class G4tgrPlaceParameterisation; class G4tgrVolume { - public: // with description + public: G4tgrVolume(); - G4tgrVolume( const std::vector& wl ); - G4tgrVolume( const G4tgrVolume& vol ); + G4tgrVolume(const std::vector& wl); + G4tgrVolume(const G4tgrVolume& vol); virtual ~G4tgrVolume(); - virtual G4tgrPlace* AddPlace( const std::vector& wl ); + virtual G4tgrPlace* AddPlace(const std::vector& wl); // Add a position with the data read from a ':place' tag - G4tgrPlaceDivRep* AddPlaceReplica( const std::vector& wl ); + G4tgrPlaceDivRep* AddPlaceReplica(const std::vector& wl); // Add a replicated position G4tgrPlaceParameterisation* AddPlaceParam(const std::vector& wl); // Add a parameterised position - void AddVisibility( const std::vector& wl ); + void AddVisibility(const std::vector& wl); // Add visibility flag - void AddRGBColour( const std::vector& wl ); + void AddRGBColour(const std::vector& wl); // Add colour - void AddCheckOverlaps( const std::vector& wl ); + void AddCheckOverlaps(const std::vector& wl); // Add check overlaps flag // Accessors - const G4String& GetName() const {return theName;} - void SetName(const G4String& name) {theName = name;} - const G4String& GetType() const {return theType;} - G4tgrSolid* GetSolid() const {return theSolid;} - const G4String& GetMaterialName() const {return theMaterialName;} + const G4String& GetName() const { return theName; } + void SetName(const G4String& name) { theName = name; } + const G4String& GetType() const { return theType; } + G4tgrSolid* GetSolid() const { return theSolid; } + const G4String& GetMaterialName() const { return theMaterialName; } const std::vector GetPlacements() const {return thePlacements;} - G4bool GetVisibility() const {return theVisibility;} - G4double* GetColour() const {return theRGBColour;} - G4double* GetRGBColour() const {return theRGBColour;} + G4bool GetVisibility() const { return theVisibility; } + G4double* GetColour() const { return theRGBColour; } + G4double* GetRGBColour() const { return theRGBColour; } - G4bool GetCheckOverlaps() const {return theCheckOverlaps;} + G4bool GetCheckOverlaps() const { return theCheckOverlaps; } - virtual G4tgrVolume* GetVolume( G4int ii ) const; + virtual G4tgrVolume* GetVolume(G4int ii) const; friend std::ostream& operator<<(std::ostream& os, const G4tgrVolume& obj); - protected: + protected: - G4String theName; + G4String theName = ""; // Name of the volume - G4String theType; - // Type of the volume - G4String theMaterialName; + G4String theType = ""; + // Type of the volume + G4String theMaterialName = ""; // Material of which the corresponding PV will be made of - G4tgrSolid* theSolid; - // Solid + G4tgrSolid* theSolid = nullptr; + // Solid std::vector thePlacements; - // Vector of placements + // Vector of placements - G4bool theVisibility; - G4double* theRGBColour; - G4bool theCheckOverlaps; + G4bool theVisibility = false; + G4double* theRGBColour = nullptr; + G4bool theCheckOverlaps = false; }; #endif diff --git a/source/persistency/ascii/include/G4tgrVolumeAssembly.hh b/source/persistency/ascii/include/G4tgrVolumeAssembly.hh index c677cbedff..5b7a251c73 100644 --- a/source/persistency/ascii/include/G4tgrVolumeAssembly.hh +++ b/source/persistency/ascii/include/G4tgrVolumeAssembly.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrVolumeAssembly +// G4tgrVolumeAssembly // // Class description: // // Class for keeping the information of assembly volumes. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrVolumeAssembly_h -#define G4tgrVolumeAssembly_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrVolumeAssembly_hh +#define G4tgrVolumeAssembly_hh 1 #include "globals.hh" #include "G4tgrVolume.hh" @@ -45,26 +40,26 @@ class G4tgrVolumeAssembly : public G4tgrVolume { - public: // with description + public: G4tgrVolumeAssembly(); - G4tgrVolumeAssembly( const std::vector& wl ); - ~G4tgrVolumeAssembly(); + G4tgrVolumeAssembly(const std::vector& wl); + ~G4tgrVolumeAssembly(); - virtual G4tgrPlace* AddPlace( const std::vector& wl ); + virtual G4tgrPlace* AddPlace(const std::vector& wl); // Add a position with the data read from a ':place_assembly' tag const G4String& GetComponentName(G4int ii) const - { return theComponentNames[ii]; } - const G4String& GetComponentRM(G4int ii) const - { return theComponentRMs[ii]; } - G4ThreeVector GetComponentPos(G4int ii) const - { return theComponentPos[ii]; } - G4int GetNoComponents() const - { return theComponentNames.size(); } + { + return theComponentNames[ii]; + } + const G4String& GetComponentRM(G4int ii) const {return theComponentRMs[ii];} + G4ThreeVector GetComponentPos(G4int ii) const {return theComponentPos[ii];} + G4int GetNoComponents() const { return theComponentNames.size(); } friend std::ostream& operator<<(std::ostream& os, const G4tgrVolumeAssembly& obj); + protected: std::vector theComponentNames; diff --git a/source/persistency/ascii/include/G4tgrVolumeDivision.hh b/source/persistency/ascii/include/G4tgrVolumeDivision.hh index 0e6fb9d52d..936389a9b7 100644 --- a/source/persistency/ascii/include/G4tgrVolumeDivision.hh +++ b/source/persistency/ascii/include/G4tgrVolumeDivision.hh @@ -23,10 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrVolumeDivision +// G4tgrVolumeDivision // // Class description: // @@ -38,41 +35,34 @@ // :DIV_STEP "volu_name" "parent_name" "material" step // "replica_axis_name" offset -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrVolumeDivision_h -#define G4tgrVolumeDivision_h - -#include "globals.hh" +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrVolumeDivision_hh +#define G4tgrVolumeDivision_hh 1 #include +#include "globals.hh" #include "G4tgrVolume.hh" #include "G4tgrPlaceDivRep.hh" -typedef std::multimap< G4String, G4String > G4mmss; +using G4mmss = std::multimap; -//---------------------------------------------------------------------------- -class G4tgrVolumeDivision : public G4tgrVolume +class G4tgrVolumeDivision : public G4tgrVolume { - public: // with description + public: - G4tgrVolumeDivision( const std::vector& wl ); - ~G4tgrVolumeDivision(); - - // G4bool SetSolid(G4tgrVolume* parentDU, G4bool byStep, - // EAxis axis, G4double div_step, G4double offset); - // Set the solid type and parameters dividing the mother volune + G4tgrVolumeDivision(const std::vector& wl); + ~G4tgrVolumeDivision(); G4tgrPlaceDivRep* GetPlaceDivision() { return thePlaceDiv; } friend std::ostream& operator<<(std::ostream& os, const G4tgrVolumeDivision& obj); + private: - G4tgrPlaceDivRep* thePlaceDiv; + G4tgrPlaceDivRep* thePlaceDiv = nullptr; }; #endif diff --git a/source/persistency/ascii/include/G4tgrVolumeMgr.hh b/source/persistency/ascii/include/G4tgrVolumeMgr.hh index c791015ab4..fb4253d7b6 100644 --- a/source/persistency/ascii/include/G4tgrVolumeMgr.hh +++ b/source/persistency/ascii/include/G4tgrVolumeMgr.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrVolumeMgr +// G4tgrVolumeMgr // // Class description: // // Class to manage the detector units. It is a singleton. -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- - -#ifndef G4tgrVolumeMgr_h -#define G4tgrVolumeMgr_h +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- +#ifndef G4tgrVolumeMgr_hh +#define G4tgrVolumeMgr_hh 1 #include "globals.hh" #include "G4tgrSolid.hh" @@ -50,80 +45,78 @@ #include -typedef std::map< G4String, G4tgrSolid* > G4mapssol; -typedef std::map< G4String, G4tgrVolume* > G4mapsvol; -typedef std::multimap< G4String, const G4tgrPlace* > G4mmapspl; +using G4mapssol = std::map; +using G4mapsvol = std::map; +using G4mmapspl = std::multimap; -//---------------------------------------------------------------------------- -class G4tgrVolumeMgr -{ - public: // with description +class G4tgrVolumeMgr +{ + public: - static G4tgrVolumeMgr* GetInstance(); - // Get the only instance + static G4tgrVolumeMgr* GetInstance(); + // Get the only instance - G4tgrSolid* CreateSolid( const std::vector& wl, G4bool bVOLUtag ); + G4tgrSolid* CreateSolid(const std::vector& wl, G4bool bVOLUtag); - void RegisterParentChild( const G4String& parentName, - const G4tgrPlace* pl ); + void RegisterParentChild(const G4String& parentName, const G4tgrPlace* pl); // Add to theG4tgrVolumeTree - G4tgrSolid* FindSolid( const G4String& name, G4bool exists = false ); + G4tgrSolid* FindSolid(const G4String& name, G4bool exists = false); // Find a G4tgrSolid with name 'name'. If it is not found: - // if exists is true, exit; if exists is false, return 0 + // if exists is true, exit; if exists is false, return nullptr - G4tgrVolume* FindVolume( const G4String& volname, G4bool exists = false ); + G4tgrVolume* FindVolume(const G4String& volname, G4bool exists = false); // Find a G4tgrVolume with name 'volname'. If it is not found: - // if exists is true, exit; if exists is false, return 0 + // if exists is true, exit; if exists is false, return nullptr - std::vector FindVolumes( const G4String& volname, - G4bool exists ); - // Find all G4tgrVolume's with name 'volname'. '*' can be used in the + std::vector FindVolumes(const G4String& volname, + G4bool exists); + // Find all G4tgrVolume's with name 'volname'. '*' can be used in the // name to mean 'any character' or 'any substring'. If it is not found: - // if exists is true, exit; if exists is false, return 0 + // if exists is true, exit; if exists is false, return nullptr - const G4tgrVolume* GetTopVolume(); + const G4tgrVolume* GetTopVolume(); // Find the top of the volume tree std::pair - GetChildren( const G4String& name ); + GetChildren(const G4String& name); // Find the list of G4tgrPlace children of G4tgrVolume 'name' void DumpSummary(); // Dump summary void DumpVolumeTree(); // Dump to cout the tree of G4tgrVolume's - void DumpVolumeLeaf( const G4tgrVolume* vol, unsigned int copyNo, - unsigned int leafDepth); + void DumpVolumeLeaf(const G4tgrVolume* vol, unsigned int copyNo, + unsigned int leafDepth); // Dump a G4tgrVolume indicating its copy no // and its depth (number of ancestors) - void RegisterMe( G4tgrSolid* vol); - void UnRegisterMe( G4tgrSolid* vol ); - void RegisterMe( G4tgrVolume* vol); - void UnRegisterMe( G4tgrVolume* vol ); - void RegisterMe( G4tgrPlace* pl ) { theG4tgrPlaceList.push_back( pl ); } - void RegisterMe( G4tgrIsotope* iso ) { theHgIsotList.push_back( iso ); } - void RegisterMe( G4tgrElement* ele ) { theHgElemList.push_back( ele ); } - void RegisterMe( G4tgrMaterial* mat ) { theHgMateList.push_back( mat ); } - void RegisterMe( G4tgrRotationMatrix* rm ) { theHgRotMList.push_back(rm); } + void RegisterMe(G4tgrSolid* vol); + void UnRegisterMe(G4tgrSolid* vol); + void RegisterMe(G4tgrVolume* vol); + void UnRegisterMe(G4tgrVolume* vol); + void RegisterMe(G4tgrPlace* pl) { theG4tgrPlaceList.push_back(pl); } + void RegisterMe(G4tgrIsotope* iso) { theHgIsotList.push_back(iso); } + void RegisterMe(G4tgrElement* ele) { theHgElemList.push_back(ele); } + void RegisterMe(G4tgrMaterial* mat) { theHgMateList.push_back(mat); } + void RegisterMe(G4tgrRotationMatrix* rm) { theHgRotMList.push_back(rm); } // Accessors - const G4mapssol& GetSolidMap() {return theG4tgrSolidMap;} - const G4mapsvol& GetVolumeMap() {return theG4tgrVolumeMap;} - const G4mmapspl& GetVolumeTree() {return theG4tgrVolumeTree;} - std::vector GetVolumeList() {return theG4tgrVolumeList;} - std::vector GetDetPlaceList() {return theG4tgrPlaceList;} - std::vector GetIsotopeList() {return theHgIsotList;} - std::vector GetElementList() {return theHgElemList;} - std::vector GetMaterialList() {return theHgMateList;} - std::vector GetRotMList() {return theHgRotMList;} + const G4mapssol& GetSolidMap() { return theG4tgrSolidMap; } + const G4mapsvol& GetVolumeMap() { return theG4tgrVolumeMap; } + const G4mmapspl& GetVolumeTree() { return theG4tgrVolumeTree; } + std::vector GetVolumeList() { return theG4tgrVolumeList; } + std::vector GetDetPlaceList() { return theG4tgrPlaceList; } + std::vector GetIsotopeList() { return theHgIsotList; } + std::vector GetElementList() { return theHgElemList; } + std::vector GetMaterialList() { return theHgMateList; } + std::vector GetRotMList() { return theHgRotMList; } private: G4tgrVolumeMgr(); - ~G4tgrVolumeMgr(); + ~G4tgrVolumeMgr(); private: diff --git a/source/persistency/ascii/src/G4tgbDetectorBuilder.cc b/source/persistency/ascii/src/G4tgbDetectorBuilder.cc index b1686464ad..3947b5c704 100644 --- a/source/persistency/ascii/src/G4tgbDetectorBuilder.cc +++ b/source/persistency/ascii/src/G4tgbDetectorBuilder.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbDetectorBuilder implementation // -// -// -// class G4tgbDetectorBuilder - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbVolume.hh" #include "G4tgbDetectorBuilder.hh" @@ -47,48 +43,46 @@ #include "G4tgrMessenger.hh" #include "G4tgbVolumeMgr.hh" - -//--------------------------------------------------------------------- -G4tgbDetectorBuilder::G4tgbDetectorBuilder() +// -------------------------------------------------------------------- +G4tgbDetectorBuilder::G4tgbDetectorBuilder() { } -//--------------------------------------------------------------------- -G4tgbDetectorBuilder::~G4tgbDetectorBuilder() +// -------------------------------------------------------------------- +G4tgbDetectorBuilder::~G4tgbDetectorBuilder() { } -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- const G4tgrVolume* G4tgbDetectorBuilder::ReadDetector() { //------------------- construct g4 geometry - //---------- find top G4tgrVolume + //---------- find top G4tgrVolume G4tgrFileReader::GetInstance()->ReadFiles(); - G4tgrVolumeMgr* tgrVolmgr = G4tgrVolumeMgr::GetInstance(); - const G4tgrVolume* tgrVoltop = tgrVolmgr->GetTopVolume(); + G4tgrVolumeMgr* tgrVolmgr = G4tgrVolumeMgr::GetInstance(); + const G4tgrVolume* tgrVoltop = tgrVolmgr->GetTopVolume(); return tgrVoltop; } - -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- G4VPhysicalVolume* -G4tgbDetectorBuilder::ConstructDetector( const G4tgrVolume* tgrVoltop ) +G4tgbDetectorBuilder::ConstructDetector(const G4tgrVolume* tgrVoltop) { //---------- copy list of G4tgrVolume's to list of G4tgbVolume's // (just a trick to make all GEANT4 volume building in this class) G4tgbVolumeMgr* tgbVolmgr = G4tgbVolumeMgr::GetInstance(); tgbVolmgr->CopyVolumes(); //---------- find corresponding volume in list of G4tgbVolume's - G4tgbVolume* tgbVoltop = tgbVolmgr->FindVolume( tgrVoltop->GetName() ); - + G4tgbVolume* tgbVoltop = tgbVolmgr->FindVolume(tgrVoltop->GetName()); + //---------- ConstructG4Volumes of top G4tgbVolume // (it will recursively build the whole tree) - tgbVoltop->ConstructG4Volumes( 0, (const G4LogicalVolume*)0 ); + tgbVoltop->ConstructG4Volumes(0, (const G4LogicalVolume*) 0); G4VPhysicalVolume* physvol = tgbVolmgr->GetTopPhysVol(); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { G4cout << " G4tgbDetectorConstruction::ConstructDetector() - Volume: " << physvol->GetName() << G4endl; @@ -96,5 +90,4 @@ G4tgbDetectorBuilder::ConstructDetector( const G4tgrVolume* tgrVoltop ) #endif return physvol; - } diff --git a/source/persistency/ascii/src/G4tgbDetectorConstruction.cc b/source/persistency/ascii/src/G4tgbDetectorConstruction.cc index a51fadd6d3..cf7954c0d8 100644 --- a/source/persistency/ascii/src/G4tgbDetectorConstruction.cc +++ b/source/persistency/ascii/src/G4tgbDetectorConstruction.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbDetectorConstruction implementation // -// -// -// class G4tgbDetectorConstruction - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbDetectorConstruction.hh" #include "G4tgbVolume.hh" @@ -40,45 +36,39 @@ #include "G4tgrVolumeMgr.hh" #include "G4tgrMessenger.hh" -#include "G4Material.hh" -#include "G4Box.hh" -#include "G4Tubs.hh" -#include "G4LogicalVolume.hh" -#include "G4ThreeVector.hh" -#include "G4PVPlacement.hh" - -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbDetectorConstruction::G4tgbDetectorConstruction() -{;} +{ +} -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbDetectorConstruction::~G4tgbDetectorConstruction() -{;} +{ +} -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- G4VPhysicalVolume* G4tgbDetectorConstruction::Construct() { //------------------- construct g4 geometry - //---------- find top G4tgrVolume - G4tgrVolumeMgr* tgrVolmgr = G4tgrVolumeMgr::GetInstance(); - const G4tgrVolume* tgrVoltop = tgrVolmgr->GetTopVolume(); + //---------- find top G4tgrVolume + G4tgrVolumeMgr* tgrVolmgr = G4tgrVolumeMgr::GetInstance(); + const G4tgrVolume* tgrVoltop = tgrVolmgr->GetTopVolume(); //---------- copy list of G4tgrVolume's to list of G4tgbVolume's // (just a trick to make all GEANT4 volume building in this class) G4tgbVolumeMgr* tgbVolmgr = G4tgbVolumeMgr::GetInstance(); tgbVolmgr->CopyVolumes(); //---------- find corresponding volume in list of G4tgbVolume's - G4tgbVolume* tgbVoltop = tgbVolmgr->FindVolume( tgrVoltop->GetName() ); - + G4tgbVolume* tgbVoltop = tgbVolmgr->FindVolume(tgrVoltop->GetName()); + //---------- ConstructG4Volumes of top G4tgbVolume // (it will recursively build the whole tree) - tgbVoltop->ConstructG4Volumes( 0, (const G4LogicalVolume*)0 ); - - + tgbVoltop->ConstructG4Volumes(0, (const G4LogicalVolume*) 0); + G4VPhysicalVolume* physvol = (G4tgbVolumeMgr::GetInstance())->GetTopPhysVol(); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { G4cout << " G4tgbDetectorConstruction::Construct() - Volume: " << physvol->GetName() << G4endl; diff --git a/source/persistency/ascii/src/G4tgbElement.cc b/source/persistency/ascii/src/G4tgbElement.cc index 3b57c9a038..26694ce6a1 100644 --- a/source/persistency/ascii/src/G4tgbElement.cc +++ b/source/persistency/ascii/src/G4tgbElement.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbElement // -// -// -// class G4tgbElement - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbElement.hh" #include "G4tgbMaterialMgr.hh" @@ -38,96 +34,89 @@ #include "G4tgrElementFromIsotopes.hh" #include "G4tgrMessenger.hh" - -//---------------------------------------------------------------------- -G4tgbElement::G4tgbElement( G4tgrElement* hg ) +// --------------------------------------------------------------------- +G4tgbElement::G4tgbElement(G4tgrElement* hg) { theTgrElem = hg; - theG4Elem = 0; } - -//---------------------------------------------------------------------- +// --------------------------------------------------------------------- G4Element* G4tgbElement::BuildG4ElementSimple() { - G4Element* elem = 0; + G4Element* elem = nullptr; - //-------- if G4Element not found, construct it - if( theG4Elem == 0 ) - { - //----- construct new G4Element + //-------- if G4Element not found, construct it + if(theG4Elem == nullptr) + { + //----- construct new G4Element G4tgrElementSimple* tgrElem = static_cast(theTgrElem); elem = new G4Element(tgrElem->GetName(), tgrElem->GetSymbol(), - tgrElem->GetZ(), tgrElem->GetA() ); + tgrElem->GetZ(), tgrElem->GetA()); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Constructing new G4Element: " - << *elem << G4endl; + G4cout << " Constructing new G4Element: " << *elem << G4endl; } #endif theG4Elem = elem; } else { - elem = theG4Elem; + elem = theG4Elem; } return elem; } - -//---------------------------------------------------------------------- +// --------------------------------------------------------------------- G4Element* G4tgbElement::BuildG4ElementFromIsotopes() { - G4Element* elem = 0; + G4Element* elem = nullptr; - //-------- if G4Element not found, construct it - if( theG4Elem == 0 ) - { - //----- construct new G4Element - G4tgrElementFromIsotopes* tgrElem - = static_cast(theTgrElem); + //-------- if G4Element not found, construct it + if(theG4Elem == nullptr) + { + //----- construct new G4Element + G4tgrElementFromIsotopes* tgrElem = + static_cast(theTgrElem); elem = new G4Element(tgrElem->GetName(), tgrElem->GetSymbol(), - tgrElem->GetNumberOfIsotopes() ); + tgrElem->GetNumberOfIsotopes()); //----- add isotopes G4Isotope* compIsot; G4tgbMaterialMgr* mf = G4tgbMaterialMgr::GetInstance(); - for( G4int ii = 0; ii < tgrElem->GetNumberOfIsotopes(); ii++) + for(G4int ii = 0; ii < tgrElem->GetNumberOfIsotopes(); ++ii) { // Look if this component is a material - compIsot = mf->FindOrBuildG4Isotope( tgrElem->GetComponent(ii) ); - if( compIsot != 0 ) - { - elem->AddIsotope( compIsot, tgrElem->GetAbundance(ii) ); + compIsot = mf->FindOrBuildG4Isotope(tgrElem->GetComponent(ii)); + if(compIsot != nullptr) + { + elem->AddIsotope(compIsot, tgrElem->GetAbundance(ii)); } else { - G4String ErrMessage = "Component " + tgrElem->GetComponent(ii) - + " of element " + tgrElem->GetName() - + " is not an isotope !"; + G4String ErrMessage = "Component " + tgrElem->GetComponent(ii) + + " of element " + tgrElem->GetName() + + " is not an isotope !"; G4Exception("G4tgbElement::BuildG4ElementFromIsotopes()", - "InvalidSetup", FatalException, ErrMessage ); + "InvalidSetup", FatalException, ErrMessage); } - } + } theG4Elem = elem; } else { - elem = theG4Elem; + elem = theG4Elem; } - #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << " Constructing new G4Element from isotopes: " - << *elem << G4endl; - } + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << " Constructing new G4Element from isotopes: " << *elem << G4endl; + } #endif return elem; diff --git a/source/persistency/ascii/src/G4tgbGeometryDumper.cc b/source/persistency/ascii/src/G4tgbGeometryDumper.cc index 5b9d19c00e..318946d787 100644 --- a/source/persistency/ascii/src/G4tgbGeometryDumper.cc +++ b/source/persistency/ascii/src/G4tgbGeometryDumper.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbGeometryDumper implementation // -// -// -// class G4tgbGeometryDumper - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbGeometryDumper.hh" @@ -75,51 +71,51 @@ #include "G4SystemOfUnits.hh" #include -//------------------------------------------------------------------------ -G4ThreadLocal G4tgbGeometryDumper* G4tgbGeometryDumper::theInstance = 0; +// -------------------------------------------------------------------- +G4ThreadLocal G4tgbGeometryDumper* G4tgbGeometryDumper::theInstance = nullptr; -//------------------------------------------------------------------------ +// -------------------------------------------------------------------- G4tgbGeometryDumper::G4tgbGeometryDumper() - : theFile(0), theRotationNumber(0) { } -//------------------------------------------------------------------------ +// -------------------------------------------------------------------- G4tgbGeometryDumper* G4tgbGeometryDumper::GetInstance() { - if( theInstance == 0 ){ + if(theInstance == nullptr) + { theInstance = new G4tgbGeometryDumper; } - return theInstance; - } -//------------------------------------------------------------------------ -void G4tgbGeometryDumper::DumpGeometry( const G4String& fname ) +// -------------------------------------------------------------------- +void G4tgbGeometryDumper::DumpGeometry(const G4String& fname) { theFile = new std::ofstream(fname); G4VPhysicalVolume* pv = GetTopPhysVol(); - DumpPhysVol( pv ); // dump volume and recursively it will dump all hierarchy + DumpPhysVol(pv); // dump volume and recursively it will dump all hierarchy } -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- G4VPhysicalVolume* G4tgbGeometryDumper::GetTopPhysVol() { G4PhysicalVolumeStore* pvstore = G4PhysicalVolumeStore::GetInstance(); - G4PhysicalVolumeStore::const_iterator ite; - G4VPhysicalVolume* pv = *(pvstore->begin()); - for( ;; ) + G4VPhysicalVolume* pv = *(pvstore->cbegin()); + for(;;) { G4LogicalVolume* lv = pv->GetMotherLogical(); - if( lv == 0 ) { break; } + if(lv == 0) + { + break; + } //----- look for one PV of this LV - for( ite = pvstore->begin(); ite != pvstore->end(); ite++ ) + for(auto ite = pvstore->cbegin(); ite != pvstore->cend(); ++ite) { pv = (*ite); - if( pv->GetLogicalVolume() == lv ) + if(pv->GetLogicalVolume() == lv) { break; } @@ -129,16 +125,14 @@ G4VPhysicalVolume* G4tgbGeometryDumper::GetTopPhysVol() return pv; } - -//------------------------------------------------------------------------ +// -------------------------------------------------------------------- G4tgbGeometryDumper::~G4tgbGeometryDumper() { } -//------------------------------------------------------------------------ -void G4tgbGeometryDumper::DumpPhysVol( G4VPhysicalVolume* pv ) +// -------------------------------------------------------------------- +void G4tgbGeometryDumper::DumpPhysVol(G4VPhysicalVolume* pv) { - //--- Dump logical volume first G4LogicalVolume* lv = pv->GetLogicalVolume(); @@ -148,79 +142,78 @@ void G4tgbGeometryDumper::DumpPhysVol( G4VPhysicalVolume* pv ) // !!WARNING : it must be avoided to reflect a volume hierarchy if children // has also been reflected, as both will have same name - if( reffact->IsReflected( lv ) - && reffact->IsReflected( pv->GetMotherLogical() ) ) { return; } + if(reffact->IsReflected(lv) && reffact->IsReflected(pv->GetMotherLogical())) + { + return; + } + G4bool bVolExists = CheckIfLogVolExists(lv->GetName(), lv); - G4bool bVolExists = CheckIfLogVolExists( lv->GetName(), lv ); - //---- Construct this PV - if( pv->GetMotherLogical() != 0 ) // not WORLD volume + if(pv->GetMotherLogical() != nullptr) // not WORLD volume { - if( !pv->IsReplicated() ) - { - G4String lvName = lv->GetName(); - if( !bVolExists ) - { - lvName = DumpLogVol( lv ); - } - DumpPVPlacement( pv, lvName ); - } - else if( pv->IsParameterised() ) - { - G4PVParameterised* pvparam = (G4PVParameterised*)(pv); - DumpPVParameterised( pvparam ); - } - else + if(!pv->IsReplicated()) { G4String lvName = lv->GetName(); - if( !bVolExists ) + if(!bVolExists) { - lvName = DumpLogVol( lv ); + lvName = DumpLogVol(lv); } - G4PVReplica* pvrepl = (G4PVReplica*)(pv); - DumpPVReplica( pvrepl, lvName ); + DumpPVPlacement(pv, lvName); + } + else if(pv->IsParameterised()) + { + G4PVParameterised* pvparam = (G4PVParameterised*) (pv); + DumpPVParameterised(pvparam); + } + else + { + G4String lvName = lv->GetName(); + if(!bVolExists) + { + lvName = DumpLogVol(lv); + } + G4PVReplica* pvrepl = (G4PVReplica*) (pv); + DumpPVReplica(pvrepl, lvName); } - } - else + else { - DumpLogVol( lv ); + DumpLogVol(lv); } - if( !bVolExists ) + if(!bVolExists) { //---- Construct PV's who has this LV as mother - std::vector pvChildren = GetPVChildren( lv ); - std::vector::const_iterator ite; - for( ite = pvChildren.begin(); ite != pvChildren.end(); ite++ ) + std::vector pvChildren = GetPVChildren(lv); + for(auto ite = pvChildren.cbegin(); ite != pvChildren.cend(); ++ite) { - DumpPhysVol( *ite ); + DumpPhysVol(*ite); } } } -//------------------------------------------------------------------------ -void -G4tgbGeometryDumper::DumpPVPlacement( G4VPhysicalVolume* pv, - const G4String& lvName, G4int copyNo ) +// -------------------------------------------------------------------- +void G4tgbGeometryDumper::DumpPVPlacement(G4VPhysicalVolume* pv, + const G4String& lvName, G4int copyNo) { G4String pvName = pv->GetName(); - + G4RotationMatrix* rotMat = pv->GetRotation(); - if( !rotMat ) rotMat = new G4RotationMatrix(); - + if(rotMat == nullptr) + rotMat = new G4RotationMatrix(); + //---- Check if it is reflected G4ReflectionFactory* reffact = G4ReflectionFactory::Instance(); - G4LogicalVolume* lv = pv->GetLogicalVolume(); - if( reffact->IsReflected( lv ) ) + G4LogicalVolume* lv = pv->GetLogicalVolume(); + if(reffact->IsReflected(lv)) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << " G4tgbGeometryDumper::DumpPVPlacement() - Reflected volume: " - << pv->GetName() << G4endl; - } + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << " G4tgbGeometryDumper::DumpPVPlacement() - Reflected volume: " + << pv->GetName() << G4endl; + } #endif G4ThreeVector colx = rotMat->colX(); G4ThreeVector coly = rotMat->colY(); @@ -228,46 +221,41 @@ G4tgbGeometryDumper::DumpPVPlacement( G4VPhysicalVolume* pv, // apply a Z reflection (reflection matrix is decomposed in new // reflection-free rotation + z-reflection) colz *= -1.; - G4Rep3x3 rottemp(colx.x(),coly.x(),colz.x(), - colx.y(),coly.y(),colz.y(), - colx.z(),coly.z(),colz.z()); + G4Rep3x3 rottemp(colx.x(), coly.x(), colz.x(), colx.y(), coly.y(), colz.y(), + colx.z(), coly.z(), colz.z()); // matrix representation (inverted) *rotMat = G4RotationMatrix(rottemp); *rotMat = (*rotMat).inverse(); pvName += "_refl"; } - G4String rotName = DumpRotationMatrix( rotMat ); + G4String rotName = DumpRotationMatrix(rotMat); G4ThreeVector pos = pv->GetTranslation(); - if( copyNo == -999 ) //for parameterisations copy number is provided + if(copyNo == -999) // for parameterisations copy number is provided { copyNo = pv->GetCopyNo(); } - G4String fullname = pvName - +"#"+G4UIcommand::ConvertToString(copyNo) - +"/"+pv->GetMotherLogical()->GetName(); - - if( !CheckIfPhysVolExists(fullname, pv )) + G4String fullname = pvName + "#" + G4UIcommand::ConvertToString(copyNo) + + "/" + pv->GetMotherLogical()->GetName(); + + if(!CheckIfPhysVolExists(fullname, pv)) { - (*theFile) - << ":PLACE " - << SubstituteRefl(AddQuotes(lvName)) - << " " << copyNo << " " - << SubstituteRefl(AddQuotes(pv->GetMotherLogical()->GetName())) - << " " << AddQuotes(rotName) << " " - << pos.x() << " " << pos.y() << " " << pos.z() << G4endl; - + (*theFile) << ":PLACE " << SubstituteRefl(AddQuotes(lvName)) << " " + << copyNo << " " + << SubstituteRefl(AddQuotes(pv->GetMotherLogical()->GetName())) + << " " << AddQuotes(rotName) << " " << pos.x() << " " << pos.y() + << " " << pos.z() << G4endl; + thePhysVols[fullname] = pv; } } - -//------------------------------------------------------------------------ -void G4tgbGeometryDumper::DumpPVParameterised( G4PVParameterised* pv ) +// -------------------------------------------------------------------- +void G4tgbGeometryDumper::DumpPVParameterised(G4PVParameterised* pv) { G4String pvName = pv->GetName(); - + EAxis axis; G4int nReplicas; G4double width; @@ -277,121 +265,119 @@ void G4tgbGeometryDumper::DumpPVParameterised( G4PVParameterised* pv ) G4VPVParameterisation* param = pv->GetParameterisation(); - G4LogicalVolume* lv = pv->GetLogicalVolume(); - G4VSolid* solid1st = param->ComputeSolid(0, pv); - G4Material* mate1st = param->ComputeMaterial(0, pv ); - std::vector params1st = GetSolidParams( solid1st ); + G4LogicalVolume* lv = pv->GetLogicalVolume(); + G4VSolid* solid1st = param->ComputeSolid(0, pv); + G4Material* mate1st = param->ComputeMaterial(0, pv); + std::vector params1st = GetSolidParams(solid1st); std::vector newParams; G4VSolid* newSolid = solid1st; G4String lvName; - - for( G4int ii = 0; ii < nReplicas; ii++ ) + + for(G4int ii = 0; ii < nReplicas; ++ii) { - G4Material* newMate = param->ComputeMaterial(ii, pv ); - if( solid1st->GetEntityType() == "G4Box") + G4Material* newMate = param->ComputeMaterial(ii, pv); + if(solid1st->GetEntityType() == "G4Box") { - G4Box* box = (G4Box*)(solid1st); - param->ComputeDimensions(*box, ii, pv ); - newParams = GetSolidParams( box ); - newSolid = (G4VSolid*)box; - } - else if( solid1st->GetEntityType() == "G4Tubs") - { - G4Tubs* tubs = (G4Tubs*)(solid1st); - param->ComputeDimensions(*tubs, ii, pv ); - newParams = GetSolidParams( tubs ); - newSolid = (G4VSolid*)tubs; + G4Box* box = (G4Box*) (solid1st); + param->ComputeDimensions(*box, ii, pv); + newParams = GetSolidParams(box); + newSolid = (G4VSolid*) box; } - else if( solid1st->GetEntityType() == "G4Trd") + else if(solid1st->GetEntityType() == "G4Tubs") { - G4Trd* trd = (G4Trd*)(solid1st); - param->ComputeDimensions(*trd, ii, pv ); - newParams = GetSolidParams( trd ); - newSolid = (G4VSolid*)trd; + G4Tubs* tubs = (G4Tubs*) (solid1st); + param->ComputeDimensions(*tubs, ii, pv); + newParams = GetSolidParams(tubs); + newSolid = (G4VSolid*) tubs; } - else if( solid1st->GetEntityType() == "G4Trap") + else if(solid1st->GetEntityType() == "G4Trd") { - G4Trap* trap = (G4Trap*)(solid1st); - param->ComputeDimensions(*trap, ii, pv ); - newParams = GetSolidParams( trap ); - newSolid = (G4VSolid*)trap; + G4Trd* trd = (G4Trd*) (solid1st); + param->ComputeDimensions(*trd, ii, pv); + newParams = GetSolidParams(trd); + newSolid = (G4VSolid*) trd; } - else if( solid1st->GetEntityType() == "G4Cons") + else if(solid1st->GetEntityType() == "G4Trap") { - G4Cons* cons = (G4Cons*)(solid1st); - param->ComputeDimensions(*cons, ii, pv ); - newParams = GetSolidParams( cons ); - newSolid = (G4VSolid*)cons; + G4Trap* trap = (G4Trap*) (solid1st); + param->ComputeDimensions(*trap, ii, pv); + newParams = GetSolidParams(trap); + newSolid = (G4VSolid*) trap; } - else if( solid1st->GetEntityType() == "G4Sphere") + else if(solid1st->GetEntityType() == "G4Cons") { - G4Sphere* sphere = (G4Sphere*)(solid1st); - param->ComputeDimensions(*sphere, ii, pv ); - newParams = GetSolidParams( sphere ); - newSolid = (G4VSolid*)sphere; + G4Cons* cons = (G4Cons*) (solid1st); + param->ComputeDimensions(*cons, ii, pv); + newParams = GetSolidParams(cons); + newSolid = (G4VSolid*) cons; } - else if( solid1st->GetEntityType() == "G4Orb") + else if(solid1st->GetEntityType() == "G4Sphere") { - G4Orb* orb = (G4Orb*)(solid1st); - param->ComputeDimensions(*orb, ii, pv ); - newParams = GetSolidParams( orb ); - newSolid = (G4VSolid*)orb; + G4Sphere* sphere = (G4Sphere*) (solid1st); + param->ComputeDimensions(*sphere, ii, pv); + newParams = GetSolidParams(sphere); + newSolid = (G4VSolid*) sphere; } - else if( solid1st->GetEntityType() == "G4Torus") + else if(solid1st->GetEntityType() == "G4Orb") { - G4Torus* torus = (G4Torus*)(solid1st); - param->ComputeDimensions(*torus, ii, pv ); - newParams = GetSolidParams( torus ); - newSolid = (G4VSolid*)torus; + G4Orb* orb = (G4Orb*) (solid1st); + param->ComputeDimensions(*orb, ii, pv); + newParams = GetSolidParams(orb); + newSolid = (G4VSolid*) orb; } - else if( solid1st->GetEntityType() == "G4Para") + else if(solid1st->GetEntityType() == "G4Torus") { - G4Para* para = (G4Para*)(solid1st); - param->ComputeDimensions(*para, ii, pv ); - newParams = GetSolidParams( para ); - newSolid = (G4VSolid*)para; + G4Torus* torus = (G4Torus*) (solid1st); + param->ComputeDimensions(*torus, ii, pv); + newParams = GetSolidParams(torus); + newSolid = (G4VSolid*) torus; } - else if( solid1st->GetEntityType() == "G4Polycone") + else if(solid1st->GetEntityType() == "G4Para") { - G4Polycone* polycone = (G4Polycone*)(solid1st); - param->ComputeDimensions(*polycone, ii, pv ); - newParams = GetSolidParams( polycone ); - newSolid = (G4VSolid*)polycone; + G4Para* para = (G4Para*) (solid1st); + param->ComputeDimensions(*para, ii, pv); + newParams = GetSolidParams(para); + newSolid = (G4VSolid*) para; } - else if( solid1st->GetEntityType() == "G4Polyhedra") + else if(solid1st->GetEntityType() == "G4Polycone") { - G4Polyhedra* polyhedra = (G4Polyhedra*)(solid1st); - param->ComputeDimensions(*polyhedra, ii, pv ); - newParams = GetSolidParams( polyhedra ); - newSolid = (G4VSolid*)polyhedra; + G4Polycone* polycone = (G4Polycone*) (solid1st); + param->ComputeDimensions(*polycone, ii, pv); + newParams = GetSolidParams(polycone); + newSolid = (G4VSolid*) polycone; } - else if( solid1st->GetEntityType() == "G4Hype") + else if(solid1st->GetEntityType() == "G4Polyhedra") { - G4Hype* hype = (G4Hype*)(solid1st); - param->ComputeDimensions(*hype, ii, pv ); - newParams = GetSolidParams( hype ); - newSolid = (G4VSolid*)hype; + G4Polyhedra* polyhedra = (G4Polyhedra*) (solid1st); + param->ComputeDimensions(*polyhedra, ii, pv); + newParams = GetSolidParams(polyhedra); + newSolid = (G4VSolid*) polyhedra; } - if( ii == 0 || mate1st != newMate || params1st[0] != newParams[0] ) + else if(solid1st->GetEntityType() == "G4Hype") + { + G4Hype* hype = (G4Hype*) (solid1st); + param->ComputeDimensions(*hype, ii, pv); + newParams = GetSolidParams(hype); + newSolid = (G4VSolid*) hype; + } + if(ii == 0 || mate1st != newMate || params1st[0] != newParams[0]) { G4String extraName = ""; - if( ii != 0 ) + if(ii != 0) { - extraName= "#"+G4UIcommand::ConvertToString(ii) - +"/"+pv->GetMotherLogical()->GetName(); + extraName = "#" + G4UIcommand::ConvertToString(ii) + "/" + + pv->GetMotherLogical()->GetName(); } - lvName = DumpLogVol( lv, extraName, newSolid, newMate ); + lvName = DumpLogVol(lv, extraName, newSolid, newMate); } - + param->ComputeTransformation(ii, pv); - DumpPVPlacement( pv, lvName, ii ); + DumpPVPlacement(pv, lvName, ii); } } - -//------------------------------------------------------------------------ -void G4tgbGeometryDumper::DumpPVReplica( G4PVReplica* pv, - const G4String& lvName ) +// -------------------------------------------------------------------- +void G4tgbGeometryDumper::DumpPVReplica(G4PVReplica* pv, const G4String& lvName) { EAxis axis; G4int nReplicas; @@ -400,186 +386,180 @@ void G4tgbGeometryDumper::DumpPVReplica( G4PVReplica* pv, G4bool consuming; pv->GetReplicationData(axis, nReplicas, width, offset, consuming); G4String axisName; - switch (axis ) + switch(axis) { - case kXAxis: - axisName = "X"; - break; - case kYAxis: - axisName = "Y"; - break; - case kZAxis: - axisName = "Z"; - break; - case kRho: - axisName = "R"; - break; - case kPhi: - axisName = "PHI"; - break; - case kRadial3D: - case kUndefined: - G4String ErrMessage = "Unknown axis of replication for volume" - + pv->GetName(); - G4Exception("G4tgbGeometryDumper::DumpPVReplica", - "Wrong axis ", FatalException, ErrMessage); - break; + case kXAxis: + axisName = "X"; + break; + case kYAxis: + axisName = "Y"; + break; + case kZAxis: + axisName = "Z"; + break; + case kRho: + axisName = "R"; + break; + case kPhi: + axisName = "PHI"; + break; + case kRadial3D: + case kUndefined: + G4String ErrMessage = + "Unknown axis of replication for volume" + pv->GetName(); + G4Exception("G4tgbGeometryDumper::DumpPVReplica", "Wrong axis ", + FatalException, ErrMessage); + break; } - G4String fullname = lvName - +"/"+pv->GetMotherLogical()->GetName(); - - if( !CheckIfPhysVolExists(fullname, pv )) + G4String fullname = lvName + "/" + pv->GetMotherLogical()->GetName(); + + if(!CheckIfPhysVolExists(fullname, pv)) { - (*theFile) - << ":REPL " - << SubstituteRefl(AddQuotes(lvName)) - << " " << SubstituteRefl(AddQuotes(pv->GetMotherLogical()->GetName())) - << " " << axisName - << " " << nReplicas; - if( axis != kPhi ) + (*theFile) << ":REPL " << SubstituteRefl(AddQuotes(lvName)) << " " + << SubstituteRefl(AddQuotes(pv->GetMotherLogical()->GetName())) + << " " << axisName << " " << nReplicas; + if(axis != kPhi) { - (*theFile) - << " " << width - << " " << offset << G4endl; - } + (*theFile) << " " << width << " " << offset << G4endl; + } else { - (*theFile) - << " " << width/deg << "*deg" - << " " << offset/deg << "*deg" << G4endl; + (*theFile) << " " << width / deg << "*deg" + << " " << offset / deg << "*deg" << G4endl; } thePhysVols[fullname] = pv; } } - -//------------------------------------------------------------------------ -G4String -G4tgbGeometryDumper::DumpLogVol( G4LogicalVolume* lv, G4String extraName, - G4VSolid* solid, G4Material* mate ) +// -------------------------------------------------------------------- +G4String G4tgbGeometryDumper::DumpLogVol(G4LogicalVolume* lv, + const G4String& extraName, + G4VSolid* solid, + G4Material* mate) { G4String lvName; - - if( extraName == "" ) //--- take out the '_refl' in the name + + if(extraName == "") //--- take out the '_refl' in the name { - lvName = GetObjectName(lv,theLogVols); - } - else + lvName = GetObjectName(lv, theLogVols); + } + else { - lvName = lv->GetName()+extraName; + lvName = lv->GetName() + extraName; } - if( theLogVols.find( lvName ) != theLogVols.end() ) // alredy dumped + if(theLogVols.find(lvName) != theLogVols.cend()) // alredy dumped { return lvName; } - if( !solid ) { solid = lv->GetSolid(); } + if(solid == nullptr) + { + solid = lv->GetSolid(); + } - //---- Dump solid - G4String solidName = DumpSolid( solid, extraName ); + //---- Dump solid + G4String solidName = DumpSolid(solid, extraName); //---- Dump material - if( !mate ) { mate = lv->GetMaterial(); } - G4String mateName = DumpMaterial( mate ); + if(mate == nullptr) + { + mate = lv->GetMaterial(); + } + G4String mateName = DumpMaterial(mate); //---- Dump logical volume (solid + material) (*theFile) << ":VOLU " << SubstituteRefl(AddQuotes(lvName)) << " " - << SupressRefl(AddQuotes(solidName)) - << " " << AddQuotes(mateName) << G4endl; + << SupressRefl(AddQuotes(solidName)) << " " << AddQuotes(mateName) + << G4endl; theLogVols[lvName] = lv; return lvName; } - -//------------------------------------------------------------------------ -G4String G4tgbGeometryDumper::DumpMaterial( G4Material* mat ) +// -------------------------------------------------------------------- +G4String G4tgbGeometryDumper::DumpMaterial(G4Material* mat) { - G4String mateName = GetObjectName(mat,theMaterials); - if( theMaterials.find( mateName ) != theMaterials.end() ) // alredy dumped + G4String mateName = GetObjectName(mat, theMaterials); + if(theMaterials.find(mateName) != theMaterials.cend()) // alredy dumped { return mateName; } - size_t numElements = mat->GetNumberOfElements(); - G4double density = mat->GetDensity()/g*cm3; + std::size_t numElements = mat->GetNumberOfElements(); + G4double density = mat->GetDensity() / g * cm3; - // start tag // - if (numElements == 1) + if(numElements == 1) { - (*theFile) << ":MATE " << AddQuotes(mateName) << " " - << mat->GetZ() << " " << mat->GetA()/(g/mole) << " " - << density << G4endl; + (*theFile) << ":MATE " << AddQuotes(mateName) << " " << mat->GetZ() << " " + << mat->GetA() / (g / mole) << " " << density << G4endl; } else { const G4ElementVector* elems = mat->GetElementVector(); const G4double* fractions = mat->GetFractionVector(); - for (size_t ii = 0; ii < numElements; ii++) + for(std::size_t ii = 0; ii < numElements; ++ii) { - DumpElement( (*elems)[ii] ); + DumpElement((*elems)[ii]); } - (*theFile) << ":MIXT "<< AddQuotes(mateName) << " " - << density << " " << numElements << G4endl; + (*theFile) << ":MIXT " << AddQuotes(mateName) << " " << density << " " + << numElements << G4endl; // close start element tag and get ready to do composit "parts" - for (size_t ii = 0; ii < numElements; ii++) + for(std::size_t ii = 0; ii < numElements; ++ii) { - (*theFile) << " " - << AddQuotes(GetObjectName((*elems)[ii],theElements)) << " " - << fractions[ii] << G4endl; + (*theFile) << " " << AddQuotes(GetObjectName((*elems)[ii], theElements)) + << " " << fractions[ii] << G4endl; } - } - (*theFile) << ":MATE_MEE " << AddQuotes(mateName) << " " - << mat->GetIonisation()->GetMeanExcitationEnergy()/eV - << "*eV" << G4endl; + (*theFile) << ":MATE_MEE " << AddQuotes(mateName) << " " + << mat->GetIonisation()->GetMeanExcitationEnergy() / eV << "*eV" + << G4endl; (*theFile) << ":MATE_TEMPERATURE " << AddQuotes(mateName) << " " - << mat->GetTemperature()/kelvin << "*kelvin" << G4endl; + << mat->GetTemperature() / kelvin << "*kelvin" << G4endl; (*theFile) << ":MATE_PRESSURE " << AddQuotes(mateName) << " " - << mat->GetPressure()/atmosphere << "*atmosphere" << G4endl; + << mat->GetPressure() / atmosphere << "*atmosphere" << G4endl; G4State state = mat->GetState(); - G4String stateStr; - switch (state) { - case kStateUndefined: - stateStr = "Undefined"; - break; - case kStateSolid: - stateStr = "Solid"; - break; - case kStateLiquid: - stateStr = "Liquid"; - break; - case kStateGas: - stateStr = "Gas"; - break; + G4String stateStr; + switch(state) + { + case kStateUndefined: + stateStr = "Undefined"; + break; + case kStateSolid: + stateStr = "Solid"; + break; + case kStateLiquid: + stateStr = "Liquid"; + break; + case kStateGas: + stateStr = "Gas"; + break; } - - (*theFile) << ":MATE_STATE " << AddQuotes(mateName) << " " - << stateStr << G4endl; + + (*theFile) << ":MATE_STATE " << AddQuotes(mateName) << " " << stateStr + << G4endl; theMaterials[mateName] = mat; return mateName; } - -//------------------------------------------------------------------------ -void G4tgbGeometryDumper::DumpElement( G4Element* ele) +// -------------------------------------------------------------------- +void G4tgbGeometryDumper::DumpElement(G4Element* ele) { - G4String elemName = GetObjectName(ele,theElements); + G4String elemName = GetObjectName(ele, theElements); - if( theElements.find( elemName ) != theElements.end() ) // alredy dumped + if(theElements.find(elemName) != theElements.cend()) // alredy dumped { return; } @@ -588,489 +568,552 @@ void G4tgbGeometryDumper::DumpElement( G4Element* ele) // (even if the input are materials), but without symbol // G4String symbol = ele->GetSymbol(); - if( symbol == "" || symbol == " " ) + if(symbol == "" || symbol == " ") { symbol = elemName; } - if( ele->GetNumberOfIsotopes() == 0 ) + if(ele->GetNumberOfIsotopes() == 0) { - (*theFile) << ":ELEM " << AddQuotes(elemName) << " " - << AddQuotes(symbol) << " " << ele->GetZ() << " " - << ele->GetA()/(g/mole) << " " << G4endl; - } - else + (*theFile) << ":ELEM " << AddQuotes(elemName) << " " << AddQuotes(symbol) + << " " << ele->GetZ() << " " << ele->GetA() / (g / mole) << " " + << G4endl; + } + else { const G4IsotopeVector* isots = ele->GetIsotopeVector(); - for (size_t ii = 0; ii < ele->GetNumberOfIsotopes(); ii++) + for(std::size_t ii = 0; ii < ele->GetNumberOfIsotopes(); ++ii) { - DumpIsotope( (*isots)[ii] ); + DumpIsotope((*isots)[ii]); } (*theFile) << ":ELEM_FROM_ISOT " << AddQuotes(elemName) << " " << AddQuotes(symbol) << " " << ele->GetNumberOfIsotopes() << G4endl; - const G4double* fractions = ele->GetRelativeAbundanceVector(); - for (size_t ii = 0; ii < ele->GetNumberOfIsotopes(); ii++) + const G4double* fractions = ele->GetRelativeAbundanceVector(); + for(std::size_t ii = 0; ii < ele->GetNumberOfIsotopes(); ++ii) { - (*theFile) << " " - << AddQuotes(GetObjectName((*isots)[ii],theIsotopes)) << " " - << fractions[ii] << G4endl; + (*theFile) << " " << AddQuotes(GetObjectName((*isots)[ii], theIsotopes)) + << " " << fractions[ii] << G4endl; } } theElements[elemName] = ele; } - -//------------------------------------------------------------------------ -void G4tgbGeometryDumper::DumpIsotope( G4Isotope* isot) +// -------------------------------------------------------------------- +void G4tgbGeometryDumper::DumpIsotope(G4Isotope* isot) { - G4String isotName = GetObjectName(isot,theIsotopes); - if( theIsotopes.find( isotName ) != theIsotopes.end() ) // alredy dumped + G4String isotName = GetObjectName(isot, theIsotopes); + if(theIsotopes.find(isotName) != theIsotopes.cend()) // alredy dumped { return; } - (*theFile) << ":ISOT " << AddQuotes(isotName) << " " - << isot->GetZ() << " " << isot->GetN() << " " - << isot->GetA()/(g/mole) << " " << G4endl; + (*theFile) << ":ISOT " << AddQuotes(isotName) << " " << isot->GetZ() << " " + << isot->GetN() << " " << isot->GetA() / (g / mole) << " " + << G4endl; theIsotopes[isotName] = isot; } - -//------------------------------------------------------------------------ -G4String G4tgbGeometryDumper::DumpSolid( G4VSolid* solid, - const G4String& extraName ) +// -------------------------------------------------------------------- +G4String G4tgbGeometryDumper::DumpSolid(G4VSolid* solid, + const G4String& extraName) { G4String solidName; - if( extraName == "" ) + if(extraName == "") { - solidName = GetObjectName(solid,theSolids); - } - else + solidName = GetObjectName(solid, theSolids); + } + else { - solidName = solid->GetName()+extraName; + solidName = solid->GetName() + extraName; } - if( theSolids.find( solidName ) != theSolids.end() ) // alredy dumped + if(theSolids.find(solidName) != theSolids.cend()) // alredy dumped { return solidName; } G4String solidType = solid->GetEntityType(); - solidType = GetTGSolidType( solidType ); + solidType = GetTGSolidType(solidType); - if (solidType == "UNIONSOLID") + if(solidType == "UNIONSOLID") + { + DumpBooleanVolume("UNION", solid); + } + else if(solidType == "SUBTRACTIONSOLID") + { + DumpBooleanVolume("SUBTRACTION", solid); + } + else if(solidType == "INTERSECTIONSOLID") + { + DumpBooleanVolume("INTERSECTION", solid); + } + else if(solidType == "REFLECTEDSOLID") { - DumpBooleanVolume( "UNION", solid ); - - } else if (solidType == "SUBTRACTIONSOLID") { - DumpBooleanVolume( "SUBTRACTION", solid ); - - } else if (solidType == "INTERSECTIONSOLID") { - DumpBooleanVolume( "INTERSECTION", solid ); - - } else if (solidType == "REFLECTEDSOLID") { G4ReflectedSolid* solidrefl = dynamic_cast(solid); - if (!solidrefl) + if(solidrefl == nullptr) { - G4Exception("G4tgbGeometryDumper::DumpSolid()", - "InvalidType", FatalException, "Invalid reflected solid!"); + G4Exception("G4tgbGeometryDumper::DumpSolid()", "InvalidType", + FatalException, "Invalid reflected solid!"); return solidName; } G4VSolid* solidori = solidrefl->GetConstituentMovedSolid(); - DumpSolid( solidori ); + DumpSolid(solidori); } else { (*theFile) << ":SOLID " << AddQuotes(solidName) << " "; (*theFile) << AddQuotes(solidType) << " "; - DumpSolidParams( solid ); + DumpSolidParams(solid); theSolids[solidName] = solid; } return solidName; } - -//------------------------------------------------------------------------ -void G4tgbGeometryDumper::DumpBooleanVolume( const G4String& solidType, - G4VSolid* so ) +// -------------------------------------------------------------------- +void G4tgbGeometryDumper::DumpBooleanVolume(const G4String& solidType, + G4VSolid* so) { - G4BooleanSolid * bso = dynamic_cast < G4BooleanSolid * > (so); - if (!bso) { return; } - G4VSolid* solid0 = bso->GetConstituentSolid( 0 ); - G4VSolid* solid1 = bso->GetConstituentSolid( 1 ); - G4DisplacedSolid* solid1Disp = 0; - G4bool displaced = dynamic_cast(solid1); - if( displaced ) + G4BooleanSolid* bso = dynamic_cast(so); + if(bso == nullptr) + { + return; + } + G4VSolid* solid0 = bso->GetConstituentSolid(0); + G4VSolid* solid1 = bso->GetConstituentSolid(1); + G4DisplacedSolid* solid1Disp = nullptr; + G4bool displaced = dynamic_cast(solid1); + if(displaced) { solid1Disp = dynamic_cast(solid1); - if (solid1Disp) { + if(solid1Disp != nullptr) + { solid1 = solid1Disp->GetConstituentMovedSolid(); - } else { + } + else + { return; } } - DumpSolid( solid0 ); - DumpSolid( solid1 ); + DumpSolid(solid0); + DumpSolid(solid1); G4String rotName; G4ThreeVector pos; - if( displaced ) + if(displaced) { - pos = solid1Disp->GetObjectTranslation(); // translation is of mother frame - rotName = DumpRotationMatrix( new G4RotationMatrix( (solid1Disp-> - GetTransform().NetRotation()).inverse() ) ); + pos = solid1Disp->GetObjectTranslation(); // translation is of mother frame + rotName = DumpRotationMatrix(new G4RotationMatrix( + (solid1Disp->GetTransform().NetRotation()).inverse())); } else // no displacement { - rotName = DumpRotationMatrix( new G4RotationMatrix ); - pos = G4ThreeVector(); + rotName = DumpRotationMatrix(new G4RotationMatrix); + pos = G4ThreeVector(); } - G4String bsoName = GetObjectName(so,theSolids); - if( theSolids.find( bsoName ) != theSolids.end() ) return; // alredy dumped - G4String solid0Name = FindSolidName( solid0 ); - G4String solid1Name = FindSolidName( solid1 ); + G4String bsoName = GetObjectName(so, theSolids); + if(theSolids.find(bsoName) != theSolids.cend()) + return; // alredy dumped + G4String solid0Name = FindSolidName(solid0); + G4String solid1Name = FindSolidName(solid1); - (*theFile) << ":SOLID " - << AddQuotes(bsoName) << " " - << AddQuotes(solidType) << " " - << AddQuotes(solid0Name) << " " - << AddQuotes(solid1Name) << " " - << AddQuotes(rotName) << " " - << approxTo0(pos.x()) << " " - << approxTo0(pos.y()) << " " - << approxTo0(pos.z()) << " " << G4endl; + (*theFile) << ":SOLID " << AddQuotes(bsoName) << " " << AddQuotes(solidType) + << " " << AddQuotes(solid0Name) << " " << AddQuotes(solid1Name) + << " " << AddQuotes(rotName) << " " << approxTo0(pos.x()) << " " + << approxTo0(pos.y()) << " " << approxTo0(pos.z()) << " " + << G4endl; theSolids[bsoName] = bso; } - -//------------------------------------------------------------------------ -void G4tgbGeometryDumper::DumpSolidParams( G4VSolid * so) +// -------------------------------------------------------------------- +void G4tgbGeometryDumper::DumpSolidParams(G4VSolid* so) { - std::vector params = GetSolidParams( so ); - for( size_t ii = 0 ; ii < params.size(); ii++ ) - { - (*theFile) << params[ii] << " " ; + std::vector params = GetSolidParams(so); + for(std::size_t ii = 0; ii < params.size(); ++ii) + { + (*theFile) << params[ii] << " "; } (*theFile) << G4endl; } - -//------------------------------------------------------------------------ -std::vector G4tgbGeometryDumper::GetSolidParams( const G4VSolid * so) +// -------------------------------------------------------------------- +std::vector G4tgbGeometryDumper::GetSolidParams(const G4VSolid* so) { std::vector params; G4String solidType = so->GetEntityType(); - solidType = GetTGSolidType( solidType ); + solidType = GetTGSolidType(solidType); - if (solidType == "BOX") { - const G4Box * sb = dynamic_cast < const G4Box*>(so); - if (sb) { - params.push_back( sb->GetXHalfLength() ); - params.push_back( sb->GetYHalfLength() ); - params.push_back( sb->GetZHalfLength() ); + if(solidType == "BOX") + { + const G4Box* sb = dynamic_cast(so); + if(sb != nullptr) + { + params.push_back(sb->GetXHalfLength()); + params.push_back(sb->GetYHalfLength()); + params.push_back(sb->GetZHalfLength()); } - } else if (solidType == "TUBS") { - const G4Tubs * tu = dynamic_cast < const G4Tubs * > (so); - if (tu) { - params.push_back( tu->GetInnerRadius() ); - params.push_back( tu->GetOuterRadius() ); - params.push_back( tu->GetZHalfLength() ); - params.push_back( tu->GetStartPhiAngle()/deg ); - params.push_back( tu->GetDeltaPhiAngle()/deg ); + } + else if(solidType == "TUBS") + { + const G4Tubs* tu = dynamic_cast(so); + if(tu != nullptr) + { + params.push_back(tu->GetInnerRadius()); + params.push_back(tu->GetOuterRadius()); + params.push_back(tu->GetZHalfLength()); + params.push_back(tu->GetStartPhiAngle() / deg); + params.push_back(tu->GetDeltaPhiAngle() / deg); } - } else if (solidType == "TRAP") { - const G4Trap * trp = dynamic_cast < const G4Trap * > (so); - if (trp) { + } + else if(solidType == "TRAP") + { + const G4Trap* trp = dynamic_cast(so); + if(trp != nullptr) + { G4ThreeVector symAxis(trp->GetSymAxis()); - params.push_back( trp->GetZHalfLength() ); - params.push_back( symAxis.theta()/deg); - params.push_back( symAxis.phi()/deg); - params.push_back( trp->GetYHalfLength1() ); - params.push_back( trp->GetXHalfLength1() ); - params.push_back( trp->GetXHalfLength2() ); - params.push_back( std::atan(trp->GetTanAlpha1())/deg ); - params.push_back( trp->GetYHalfLength2() ); - params.push_back( trp->GetXHalfLength3() ); - params.push_back( trp->GetXHalfLength4() ); - params.push_back( std::atan(trp->GetTanAlpha2())/deg ); + params.push_back(trp->GetZHalfLength()); + params.push_back(symAxis.theta() / deg); + params.push_back(symAxis.phi() / deg); + params.push_back(trp->GetYHalfLength1()); + params.push_back(trp->GetXHalfLength1()); + params.push_back(trp->GetXHalfLength2()); + params.push_back(std::atan(trp->GetTanAlpha1()) / deg); + params.push_back(trp->GetYHalfLength2()); + params.push_back(trp->GetXHalfLength3()); + params.push_back(trp->GetXHalfLength4()); + params.push_back(std::atan(trp->GetTanAlpha2()) / deg); } - } else if (solidType == "TRD") { - const G4Trd * tr = dynamic_cast < const G4Trd * > (so); - if (tr) { - params.push_back( tr->GetXHalfLength1() ); - params.push_back( tr->GetXHalfLength2() ); - params.push_back( tr->GetYHalfLength1() ); - params.push_back( tr->GetYHalfLength2() ); - params.push_back( tr->GetZHalfLength()); + } + else if(solidType == "TRD") + { + const G4Trd* tr = dynamic_cast(so); + if(tr != nullptr) + { + params.push_back(tr->GetXHalfLength1()); + params.push_back(tr->GetXHalfLength2()); + params.push_back(tr->GetYHalfLength1()); + params.push_back(tr->GetYHalfLength2()); + params.push_back(tr->GetZHalfLength()); } - } else if (solidType == "PARA") { - const G4Para * para = dynamic_cast < const G4Para * > (so); - if (para) { + } + else if(solidType == "PARA") + { + const G4Para* para = dynamic_cast(so); + if(para != nullptr) + { G4ThreeVector symAxis(para->GetSymAxis()); - params.push_back( para->GetXHalfLength()); - params.push_back( para->GetYHalfLength()); - params.push_back( para->GetZHalfLength()); - params.push_back( std::atan(para->GetTanAlpha())/deg); - params.push_back( symAxis.theta()/deg); - params.push_back( symAxis.phi()/deg); + params.push_back(para->GetXHalfLength()); + params.push_back(para->GetYHalfLength()); + params.push_back(para->GetZHalfLength()); + params.push_back(std::atan(para->GetTanAlpha()) / deg); + params.push_back(symAxis.theta() / deg); + params.push_back(symAxis.phi() / deg); } - } else if (solidType == "CONS") { - const G4Cons * cn = dynamic_cast < const G4Cons * > (so); - if (cn) { - params.push_back( cn->GetInnerRadiusMinusZ() ); - params.push_back( cn->GetOuterRadiusMinusZ() ); - params.push_back( cn->GetInnerRadiusPlusZ() ); - params.push_back( cn->GetOuterRadiusPlusZ() ); - params.push_back( cn->GetZHalfLength() ); - params.push_back( cn->GetStartPhiAngle()/deg ); - params.push_back( cn->GetDeltaPhiAngle()/deg ); + } + else if(solidType == "CONS") + { + const G4Cons* cn = dynamic_cast(so); + if(cn != nullptr) + { + params.push_back(cn->GetInnerRadiusMinusZ()); + params.push_back(cn->GetOuterRadiusMinusZ()); + params.push_back(cn->GetInnerRadiusPlusZ()); + params.push_back(cn->GetOuterRadiusPlusZ()); + params.push_back(cn->GetZHalfLength()); + params.push_back(cn->GetStartPhiAngle() / deg); + params.push_back(cn->GetDeltaPhiAngle() / deg); } - } else if (solidType == "SPHERE") { - const G4Sphere * sphere = dynamic_cast < const G4Sphere * > (so); - if (sphere) { - params.push_back( sphere->GetInnerRadius()); - params.push_back( sphere->GetOuterRadius()); - params.push_back( sphere->GetStartPhiAngle()/deg); - params.push_back( sphere->GetDeltaPhiAngle()/deg); - params.push_back( sphere->GetStartThetaAngle()/deg); - params.push_back( sphere->GetDeltaThetaAngle()/deg); + } + else if(solidType == "SPHERE") + { + const G4Sphere* sphere = dynamic_cast(so); + if(sphere != nullptr) + { + params.push_back(sphere->GetInnerRadius()); + params.push_back(sphere->GetOuterRadius()); + params.push_back(sphere->GetStartPhiAngle() / deg); + params.push_back(sphere->GetDeltaPhiAngle() / deg); + params.push_back(sphere->GetStartThetaAngle() / deg); + params.push_back(sphere->GetDeltaThetaAngle() / deg); } - } else if (solidType == "ORB") { - const G4Orb * orb = dynamic_cast < const G4Orb * > (so); - if (orb) { - params.push_back( orb->GetRadius()); + } + else if(solidType == "ORB") + { + const G4Orb* orb = dynamic_cast(so); + if(orb != nullptr) + { + params.push_back(orb->GetRadius()); } - } else if (solidType == "TORUS") { - const G4Torus * torus = dynamic_cast < const G4Torus * > (so); - if (torus) { - params.push_back( torus->GetRmin()); - params.push_back( torus->GetRmax()); - params.push_back( torus->GetRtor()); - params.push_back( torus->GetSPhi()/deg); - params.push_back( torus->GetDPhi()/deg); + } + else if(solidType == "TORUS") + { + const G4Torus* torus = dynamic_cast(so); + if(torus != nullptr) + { + params.push_back(torus->GetRmin()); + params.push_back(torus->GetRmax()); + params.push_back(torus->GetRtor()); + params.push_back(torus->GetSPhi() / deg); + params.push_back(torus->GetDPhi() / deg); } - } else if (solidType == "POLYCONE") { + } + else if(solidType == "POLYCONE") + { //--- Dump RZ corners, as original parameters will not be present // if it was build from RZ corners - const G4Polycone * plc = dynamic_cast < const G4Polycone * > (so); - if (plc) { - G4double angphi = plc->GetStartPhi()/deg; - if( angphi > 180*deg ) { angphi -= 360*deg; } - G4int ncor = plc->GetNumRZCorner(); - params.push_back( angphi ); - params.push_back( plc->GetOriginalParameters()->Opening_angle/deg ); - params.push_back( ncor ); - - for( G4int ii = 0; ii < ncor; ii++ ) + const G4Polycone* plc = dynamic_cast(so); + if(plc != nullptr) + { + G4double angphi = plc->GetStartPhi() / deg; + if(angphi > 180 * deg) { - params.push_back( plc->GetCorner(ii).r ); - params.push_back( plc->GetCorner(ii).z ); + angphi -= 360 * deg; + } + G4int ncor = plc->GetNumRZCorner(); + params.push_back(angphi); + params.push_back(plc->GetOriginalParameters()->Opening_angle / deg); + params.push_back(ncor); + + for(G4int ii = 0; ii < ncor; ++ii) + { + params.push_back(plc->GetCorner(ii).r); + params.push_back(plc->GetCorner(ii).z); } } - } else if (solidType == "GENERICPOLYCONE") { + } + else if(solidType == "GENERICPOLYCONE") + { //--- Dump RZ corners - const G4GenericPolycone * plc = - dynamic_cast < const G4GenericPolycone * > (so); - if (plc) { - G4double angphi = plc->GetStartPhi()/deg; - if( angphi > 180*deg ) { angphi -= 360*deg; } - G4double endphi = plc->GetEndPhi()/deg; - if( endphi > 180*deg ) { endphi -= 360*deg; } - G4int ncor = plc->GetNumRZCorner(); - params.push_back( angphi ); - params.push_back( endphi-angphi ); - params.push_back( ncor ); - - for( G4int ii = 0; ii < ncor; ii++ ) + const G4GenericPolycone* plc = dynamic_cast(so); + if(plc != nullptr) + { + G4double angphi = plc->GetStartPhi() / deg; + if(angphi > 180 * deg) { - params.push_back( plc->GetCorner(ii).r ); - params.push_back( plc->GetCorner(ii).z ); + angphi -= 360 * deg; + } + G4double endphi = plc->GetEndPhi() / deg; + if(endphi > 180 * deg) + { + endphi -= 360 * deg; + } + G4int ncor = plc->GetNumRZCorner(); + params.push_back(angphi); + params.push_back(endphi - angphi); + params.push_back(ncor); + + for(G4int ii = 0; ii < ncor; ++ii) + { + params.push_back(plc->GetCorner(ii).r); + params.push_back(plc->GetCorner(ii).z); } } - } else if (solidType == "POLYHEDRA") { + } + else if(solidType == "POLYHEDRA") + { //--- Dump RZ corners, as original parameters will not be present // if it was build from RZ corners - const G4Polyhedra * ph = (dynamic_cast < const G4Polyhedra * > (so)); - if (ph) { - G4double angphi = ph->GetStartPhi()/deg; - if( angphi > 180*deg ) angphi -= 360*deg; + const G4Polyhedra* ph = (dynamic_cast(so)); + if(ph != nullptr) + { + G4double angphi = ph->GetStartPhi() / deg; + if(angphi > 180 * deg) + angphi -= 360 * deg; G4int ncor = ph->GetNumRZCorner(); - - params.push_back( angphi ); - params.push_back( ph->GetOriginalParameters()->Opening_angle/deg ); - params.push_back( ph->GetNumSide() ); - params.push_back( ncor ); - for( G4int ii = 0; ii < ncor; ii++ ) + params.push_back(angphi); + params.push_back(ph->GetOriginalParameters()->Opening_angle / deg); + params.push_back(ph->GetNumSide()); + params.push_back(ncor); + + for(G4int ii = 0; ii < ncor; ++ii) { - params.push_back( ph->GetCorner(ii).r ); - params.push_back( ph->GetCorner(ii).z ); + params.push_back(ph->GetCorner(ii).r); + params.push_back(ph->GetCorner(ii).z); } } - } else if (solidType == "ELLIPTICALTUBE") { - const G4EllipticalTube * eltu = - dynamic_cast < const G4EllipticalTube * > (so); - if (eltu) { - params.push_back( eltu->GetDx()); - params.push_back( eltu->GetDy()); - params.push_back( eltu->GetDz()); + } + else if(solidType == "ELLIPTICALTUBE") + { + const G4EllipticalTube* eltu = dynamic_cast(so); + if(eltu != nullptr) + { + params.push_back(eltu->GetDx()); + params.push_back(eltu->GetDy()); + params.push_back(eltu->GetDz()); } - } else if (solidType == "ELLIPSOID" ){ - const G4Ellipsoid* dso = dynamic_cast < const G4Ellipsoid * > (so); - if (dso) { - params.push_back( dso->GetSemiAxisMax(0) ); - params.push_back( dso->GetSemiAxisMax(1) ); - params.push_back( dso->GetSemiAxisMax(2) ); - params.push_back( dso->GetZBottomCut() ); - params.push_back( dso->GetZTopCut() ); + } + else if(solidType == "ELLIPSOID") + { + const G4Ellipsoid* dso = dynamic_cast(so); + if(dso != nullptr) + { + params.push_back(dso->GetSemiAxisMax(0)); + params.push_back(dso->GetSemiAxisMax(1)); + params.push_back(dso->GetSemiAxisMax(2)); + params.push_back(dso->GetZBottomCut()); + params.push_back(dso->GetZTopCut()); } - } else if (solidType == "ELLIPTICAL_CONE") { - const G4EllipticalCone * elco = - dynamic_cast < const G4EllipticalCone * > (so); - if (elco) { - params.push_back( elco-> GetSemiAxisX() ); - params.push_back( elco-> GetSemiAxisY() ); - params.push_back( elco-> GetZMax() ); - params.push_back( elco-> GetZTopCut() ); + } + else if(solidType == "ELLIPTICAL_CONE") + { + const G4EllipticalCone* elco = dynamic_cast(so); + if(elco != nullptr) + { + params.push_back(elco->GetSemiAxisX()); + params.push_back(elco->GetSemiAxisY()); + params.push_back(elco->GetZMax()); + params.push_back(elco->GetZTopCut()); } - } else if (solidType == "HYPE") { - const G4Hype* hype = dynamic_cast < const G4Hype * > (so); - if (hype) { - params.push_back( hype->GetInnerRadius()); - params.push_back( hype->GetOuterRadius()); - params.push_back( hype->GetInnerStereo()/deg); - params.push_back( hype->GetOuterStereo()/deg); - params.push_back( 2*hype->GetZHalfLength()); + } + else if(solidType == "HYPE") + { + const G4Hype* hype = dynamic_cast(so); + if(hype != nullptr) + { + params.push_back(hype->GetInnerRadius()); + params.push_back(hype->GetOuterRadius()); + params.push_back(hype->GetInnerStereo() / deg); + params.push_back(hype->GetOuterStereo() / deg); + params.push_back(2 * hype->GetZHalfLength()); } -// } else if( solidType == "TET" ) { - - } else if( solidType == "TWISTEDBOX" ) { - const G4TwistedBox* tbox = dynamic_cast < const G4TwistedBox * > (so); - if (tbox) { - params.push_back( tbox->GetPhiTwist()/deg ); - params.push_back( tbox->GetXHalfLength() ); - params.push_back( tbox->GetYHalfLength() ); - params.push_back( tbox->GetZHalfLength() ); + // } else if( solidType == "TET" ) { + } + else if(solidType == "TWISTEDBOX") + { + const G4TwistedBox* tbox = dynamic_cast(so); + if(tbox != nullptr) + { + params.push_back(tbox->GetPhiTwist() / deg); + params.push_back(tbox->GetXHalfLength()); + params.push_back(tbox->GetYHalfLength()); + params.push_back(tbox->GetZHalfLength()); } - } else if( solidType == "TWISTEDTRAP" ) { - const G4TwistedTrap * ttrap = dynamic_cast < const G4TwistedTrap * > (so); - if (ttrap) { - params.push_back( ttrap->GetPhiTwist()/deg ); - params.push_back( ttrap->GetZHalfLength() ); - params.push_back( ttrap->GetPolarAngleTheta()/deg ); - params.push_back( ttrap->GetAzimuthalAnglePhi()/deg ); - params.push_back( ttrap->GetY1HalfLength() ); - params.push_back( ttrap->GetX1HalfLength() ); - params.push_back( ttrap->GetX2HalfLength() ); - params.push_back( ttrap->GetY2HalfLength() ); - params.push_back( ttrap->GetX3HalfLength() ); - params.push_back( ttrap->GetX4HalfLength() ); - params.push_back( ttrap->GetTiltAngleAlpha()/deg ); + } + else if(solidType == "TWISTEDTRAP") + { + const G4TwistedTrap* ttrap = dynamic_cast(so); + if(ttrap != nullptr) + { + params.push_back(ttrap->GetPhiTwist() / deg); + params.push_back(ttrap->GetZHalfLength()); + params.push_back(ttrap->GetPolarAngleTheta() / deg); + params.push_back(ttrap->GetAzimuthalAnglePhi() / deg); + params.push_back(ttrap->GetY1HalfLength()); + params.push_back(ttrap->GetX1HalfLength()); + params.push_back(ttrap->GetX2HalfLength()); + params.push_back(ttrap->GetY2HalfLength()); + params.push_back(ttrap->GetX3HalfLength()); + params.push_back(ttrap->GetX4HalfLength()); + params.push_back(ttrap->GetTiltAngleAlpha() / deg); } - } else if( solidType == "TWISTEDTRD" ) { - const G4TwistedTrd * ttrd = dynamic_cast < const G4TwistedTrd * > (so); - if (ttrd) { - params.push_back( ttrd->GetX1HalfLength()); - params.push_back( ttrd->GetX2HalfLength() ); - params.push_back( ttrd->GetY1HalfLength() ); - params.push_back( ttrd->GetY2HalfLength() ); - params.push_back( ttrd->GetZHalfLength() ); - params.push_back( ttrd->GetPhiTwist()/deg ); + } + else if(solidType == "TWISTEDTRD") + { + const G4TwistedTrd* ttrd = dynamic_cast(so); + if(ttrd != nullptr) + { + params.push_back(ttrd->GetX1HalfLength()); + params.push_back(ttrd->GetX2HalfLength()); + params.push_back(ttrd->GetY1HalfLength()); + params.push_back(ttrd->GetY2HalfLength()); + params.push_back(ttrd->GetZHalfLength()); + params.push_back(ttrd->GetPhiTwist() / deg); } - } else if( solidType == "TWISTEDTUBS" ) { - const G4TwistedTubs * ttub = dynamic_cast < const G4TwistedTubs * > (so); - if (ttub) { - params.push_back( ttub->GetInnerRadius() ); - params.push_back( ttub->GetOuterRadius() ); - params.push_back( ttub->GetZHalfLength() ); - params.push_back( ttub->GetDPhi()/deg ); - params.push_back( ttub->GetPhiTwist()/deg ); + } + else if(solidType == "TWISTEDTUBS") + { + const G4TwistedTubs* ttub = dynamic_cast(so); + if(ttub != nullptr) + { + params.push_back(ttub->GetInnerRadius()); + params.push_back(ttub->GetOuterRadius()); + params.push_back(ttub->GetZHalfLength()); + params.push_back(ttub->GetDPhi() / deg); + params.push_back(ttub->GetPhiTwist() / deg); } } else { G4String ErrMessage = "Solid type not supported, sorry... " + solidType; - G4Exception("G4tgbGeometryDumpe::DumpSolidParams()", - "NotImplemented", FatalException, ErrMessage); + G4Exception("G4tgbGeometryDumpe::DumpSolidParams()", "NotImplemented", + FatalException, ErrMessage); } - + return params; -} +} - -//------------------------------------------------------------------------ -G4String G4tgbGeometryDumper::DumpRotationMatrix( G4RotationMatrix* rotm ) +// -------------------------------------------------------------------- +G4String G4tgbGeometryDumper::DumpRotationMatrix(G4RotationMatrix* rotm) { - if (!rotm) { rotm = new G4RotationMatrix(); } + if(rotm == nullptr) + { + rotm = new G4RotationMatrix(); + } - G4double de = MatDeterminant(rotm); - G4String rotName = LookForExistingRotation( rotm ); - if( rotName != "" ) { return rotName; } + G4double de = MatDeterminant(rotm); + G4String rotName = LookForExistingRotation(rotm); + if(rotName != "") + { + return rotName; + } - G4ThreeVector v(1.,1.,1.); - if (de < -0.9 ) // a reflection .... + G4ThreeVector v(1., 1., 1.); + if(de < -0.9) // a reflection .... { (*theFile) << ":ROTM "; rotName = "RRM"; rotName += G4UIcommand::ConvertToString(theRotationNumber++); - - (*theFile) << AddQuotes(rotName) << std::setprecision(9) << " " - << approxTo0(rotm->xx()) << " " - << approxTo0(rotm->yx()) << " " - << approxTo0(rotm->zx()) << " " - << approxTo0(rotm->xy()) << " " - << approxTo0(rotm->yy()) << " " - << approxTo0(rotm->zy()) << " " - << approxTo0(rotm->xz()) << " " - << approxTo0(rotm->yz()) << " " - << approxTo0(rotm->zz()) << G4endl; + + (*theFile) << AddQuotes(rotName) << std::setprecision(9) << " " + << approxTo0(rotm->xx()) << " " << approxTo0(rotm->yx()) << " " + << approxTo0(rotm->zx()) << " " << approxTo0(rotm->xy()) << " " + << approxTo0(rotm->yy()) << " " << approxTo0(rotm->zy()) << " " + << approxTo0(rotm->xz()) << " " << approxTo0(rotm->yz()) << " " + << approxTo0(rotm->zz()) << G4endl; } - else if(de > 0.9 ) // a rotation .... + else if(de > 0.9) // a rotation .... { (*theFile) << ":ROTM "; rotName = "RM"; rotName += G4UIcommand::ConvertToString(theRotationNumber++); - - (*theFile) << AddQuotes(rotName) << " " - << approxTo0(rotm->thetaX()/deg) << " " - << approxTo0(rotm->phiX()/deg) << " " - << approxTo0(rotm->thetaY()/deg) << " " - << approxTo0(rotm->phiY()/deg) << " " - << approxTo0(rotm->thetaZ()/deg) << " " - << approxTo0(rotm->phiZ()/deg) << G4endl; + + (*theFile) << AddQuotes(rotName) << " " << approxTo0(rotm->thetaX() / deg) + << " " << approxTo0(rotm->phiX() / deg) << " " + << approxTo0(rotm->thetaY() / deg) << " " + << approxTo0(rotm->phiY() / deg) << " " + << approxTo0(rotm->thetaZ() / deg) << " " + << approxTo0(rotm->phiZ() / deg) << G4endl; } - + theRotMats[rotName] = rotm; return rotName; } - -//------------------------------------------------------------------------ +// -------------------------------------------------------------------- std::vector -G4tgbGeometryDumper::GetPVChildren( G4LogicalVolume* lv ) +G4tgbGeometryDumper::GetPVChildren(G4LogicalVolume* lv) { G4PhysicalVolumeStore* pvstore = G4PhysicalVolumeStore::GetInstance(); - G4PhysicalVolumeStore::const_iterator ite; std::vector children; - for( ite = pvstore->begin(); ite != pvstore->end(); ite++ ) + for(auto ite = pvstore->cbegin(); ite != pvstore->cend(); ++ite) { - if( (*ite)->GetMotherLogical() == lv ) + if((*ite)->GetMotherLogical() == lv) { - children.push_back( *ite ); + children.push_back(*ite); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { G4cout << " G4tgbGeometryDumper::GetPVChildren() - adding children: " - << (*ite)->GetName() << " of " << lv->GetName() << G4endl; + << (*ite)->GetName() << " of " << lv->GetName() << G4endl; } #endif } @@ -1079,127 +1122,127 @@ G4tgbGeometryDumper::GetPVChildren( G4LogicalVolume* lv ) return children; } - -//------------------------------------------------------------------------ -G4String G4tgbGeometryDumper::GetTGSolidType( const G4String& solidType ) +// -------------------------------------------------------------------- +G4String G4tgbGeometryDumper::GetTGSolidType(const G4String& solidType) { - G4String newsolidType = solidType.substr(2,solidType.length() ); - for( size_t ii = 0; ii < newsolidType.length(); ii++ ) + G4String newsolidType = solidType.substr(2, solidType.length()); + for(std::size_t ii = 0; ii < newsolidType.length(); ++ii) { - newsolidType[ii] = toupper(newsolidType[ii] ); + newsolidType[ii] = toupper(newsolidType[ii]); } return newsolidType; } - -//------------------------------------------------------------------------ -G4double G4tgbGeometryDumper::MatDeterminant(G4RotationMatrix * ro) +// -------------------------------------------------------------------- +G4double G4tgbGeometryDumper::MatDeterminant(G4RotationMatrix* ro) { - G4Rep3x3 r = ro->rep3x3(); - return r.xx_*(r.yy_*r.zz_ - r.zy_*r.yz_) - - r.yx_*(r.xy_*r.zz_ - r.zy_*r.xz_) - + r.zx_*(r.xy_*r.yz_ - r.yy_*r.xz_); + G4Rep3x3 r = ro->rep3x3(); + return r.xx_ * (r.yy_ * r.zz_ - r.zy_ * r.yz_) - + r.yx_ * (r.xy_ * r.zz_ - r.zy_ * r.xz_) + + r.zx_ * (r.xy_ * r.yz_ - r.yy_ * r.xz_); } - -//----------------------------------------------------------------------- -G4double G4tgbGeometryDumper::approxTo0( G4double val ) +// -------------------------------------------------------------------- +G4double G4tgbGeometryDumper::approxTo0(G4double val) { - G4double precision = G4GeometryTolerance::GetInstance() - ->GetSurfaceTolerance(); + G4double precision = + G4GeometryTolerance::GetInstance()->GetSurfaceTolerance(); - if( std::fabs(val) < precision ) { val = 0; } + if(std::fabs(val) < precision) + { + val = 0.0; + } return val; } - -//----------------------------------------------------------------------- -G4String G4tgbGeometryDumper::AddQuotes( const G4String& str ) +// -------------------------------------------------------------------- +G4String G4tgbGeometryDumper::AddQuotes(const G4String& str) { //--- look if there is a separating blank G4bool bBlank = FALSE; - size_t siz = str.length(); - for( size_t ii = 0; ii < siz; ii++ ) + std::size_t siz = str.length(); + for(std::size_t ii = 0; ii < siz; ++ii) { - if( str.substr(ii,1) == " " ) + if(str.substr(ii, 1) == " ") { bBlank = TRUE; break; } } G4String str2 = str; - if( bBlank ) + if(bBlank) { str2 = G4String("\"") + str2 + G4String("\""); } return str2; } - -//------------------------------------------------------------------------ -G4String G4tgbGeometryDumper::SupressRefl( G4String name ) +// -------------------------------------------------------------------- +G4String G4tgbGeometryDumper::SupressRefl(G4String name) { G4int irefl = name.rfind("_refl"); - if( irefl != -1 ) + if(irefl != -1) { - name = name.substr( 0, irefl ); + name = name.substr(0, irefl); } return name; } -//------------------------------------------------------------------------ -G4String G4tgbGeometryDumper::SubstituteRefl( G4String name ) +// -------------------------------------------------------------------- +G4String G4tgbGeometryDumper::SubstituteRefl(G4String name) { G4int irefl = name.rfind("_refl"); - if( irefl != -1 ) + if(irefl != -1) { - name = name.substr( 0, irefl ) + "_REFL"; + name = name.substr(0, irefl) + "_REFL"; } return name; } - -//------------------------------------------------------------------------ -G4String G4tgbGeometryDumper::GetIsotopeName( G4Isotope* isot ) +// -------------------------------------------------------------------- +G4String G4tgbGeometryDumper::GetIsotopeName(G4Isotope* isot) { G4String isotName = isot->GetName(); // first look if this is isotope is already dumped, // with original isotope name or new one // - std::map::const_iterator ite; - for( ite = theIsotopes.begin(); ite != theIsotopes.end(); ite++ ) + std::map::const_iterator ite; + for(ite = theIsotopes.cbegin(); ite != theIsotopes.cend(); ++ite) { - if( isot == (*ite).second ) { return (*ite).first; } + if(isot == (*ite).second) + { + return (*ite).first; + } } // Now look if there is another isotope dumped with same name, // and if found add _N to the name // - ite = theIsotopes.find( isotName ); - if( ite != theIsotopes.end() ) // Isotope found with same name + ite = theIsotopes.find(isotName); + if(ite != theIsotopes.cend()) // Isotope found with same name { G4Isotope* isotold = (*ite).second; - if( isot != isotold ) // new isotope it is not the really - { // the same one as isotope found - if( !Same2G4Isotopes(isot, isotold)) - { // if the two have same data, use the old one - G4int ii = 2; // G4Nist does names isotopes of same element - // with same name - for(;;ii++) + if(isot != isotold) // new isotope it is not the really + { // the same one as isotope found + if(!Same2G4Isotopes(isot, isotold)) + { // if the two have same data, use the old one + G4int ii = 2; // G4Nist does names isotopes of same element + // with same name + for(;; ++ii) { - G4String newIsotName = isotName + "_" - + G4UIcommand::ConvertToString(ii); - std::map::const_iterator ite2 = - theIsotopes.find( newIsotName ); - if( ite2 == theIsotopes.end() ) + G4String newIsotName = + isotName + "_" + G4UIcommand::ConvertToString(ii); + std::map::const_iterator ite2 = + theIsotopes.find(newIsotName); + if(ite2 == theIsotopes.cend()) { isotName = newIsotName; break; } else { - if( Same2G4Isotopes( isot, (*ite2).second ) ) + if(Same2G4Isotopes(isot, (*ite2).second)) { isotName = newIsotName; break; @@ -1212,39 +1255,42 @@ G4String G4tgbGeometryDumper::GetIsotopeName( G4Isotope* isot ) return isotName; } - -//------------------------------------------------------------------------ -template< class TYP > G4String G4tgbGeometryDumper:: -GetObjectName( TYP* obj, std::map objectsDumped ) +// -------------------------------------------------------------------- +template +G4String G4tgbGeometryDumper::GetObjectName( + TYP* obj, std::map objectsDumped) { G4String objName = obj->GetName(); // first look if this is objecy is already dumped, // with original object name or new one // - typename std::map::const_iterator ite; - for( ite = objectsDumped.begin(); ite != objectsDumped.end(); ite++ ) + typename std::map::const_iterator ite; + for(ite = objectsDumped.cbegin(); ite != objectsDumped.cend(); ++ite) { - if( obj == (*ite).second ) { return (*ite).first; } + if(obj == (*ite).second) + { + return (*ite).first; + } } // Now look if there is another object dumped with same name, // and if found add _N to the name // - ite = objectsDumped.find( objName ); + ite = objectsDumped.find(objName); - if( ite != objectsDumped.end() ) // Object found with same name + if(ite != objectsDumped.cend()) // Object found with same name { TYP* objold = (*ite).second; - if( obj != objold ) // new object it is not the really - { // the same one as object found + if(obj != objold) // new object it is not the really + { // the same one as object found G4int ii = 2; - for(;;ii++) + for(;; ++ii) { G4String newObjName = objName + "_" + G4UIcommand::ConvertToString(ii); - typename std::map::const_iterator ite2 = - objectsDumped.find( newObjName ); - if( ite2 == objectsDumped.end() ) + typename std::map::const_iterator ite2 = + objectsDumped.find(newObjName); + if(ite2 == objectsDumped.cend()) { objName = newObjName; break; @@ -1255,15 +1301,14 @@ GetObjectName( TYP* obj, std::map objectsDumped ) return objName; } - -//------------------------------------------------------------------------ -G4bool G4tgbGeometryDumper::CheckIfLogVolExists( const G4String& name, - G4LogicalVolume* pt ) +// -------------------------------------------------------------------- +G4bool G4tgbGeometryDumper::CheckIfLogVolExists(const G4String& name, + G4LogicalVolume* pt) { - if( theLogVols.find( name ) != theLogVols.end() ) + if(theLogVols.find(name) != theLogVols.cend()) { G4LogicalVolume* lvnew = (*(theLogVols.find(name))).second; - if( lvnew != pt ) + if(lvnew != pt) { /* //---- Reflected volumes are repeated @@ -1277,29 +1322,28 @@ G4bool G4tgbGeometryDumper::CheckIfLogVolExists( const G4String& name, } */ } - return 1; + return true; } else { - return 0; + return false; } } - -//----------------------------------------------------------------------- -G4bool G4tgbGeometryDumper::CheckIfPhysVolExists( const G4String& name, - G4VPhysicalVolume* pt ) +// -------------------------------------------------------------------- +G4bool G4tgbGeometryDumper::CheckIfPhysVolExists(const G4String& name, + G4VPhysicalVolume* pt) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " G4tgbGeometryDumper::CheckIfPhysVolExists() - " - << name << G4endl; + G4cout << " G4tgbGeometryDumper::CheckIfPhysVolExists() - " << name + << G4endl; } #endif - if( thePhysVols.find( name ) != thePhysVols.end() ) + if(thePhysVols.find(name) != thePhysVols.cend()) { - if( (*(thePhysVols.find(name))).second != pt ) + if((*(thePhysVols.find(name))).second != pt) { // G4String ErrMessage = "Placement found but not same as before: " // + name; @@ -1308,25 +1352,23 @@ G4bool G4tgbGeometryDumper::CheckIfPhysVolExists( const G4String& name, G4cerr << " G4tgbGeometryDumper::CheckIfPhysVolExists () -" << " Placement found but not same as before : " << name << G4endl; } - return 1; + return true; } else { - return 0; + return false; } } - -//----------------------------------------------------------------------- +// -------------------------------------------------------------------- G4String -G4tgbGeometryDumper::LookForExistingRotation( const G4RotationMatrix* rotm ) +G4tgbGeometryDumper::LookForExistingRotation(const G4RotationMatrix* rotm) { G4String rmName = ""; - std::map::const_iterator ite; - for( ite = theRotMats.begin(); ite != theRotMats.end(); ite++ ) + for(auto ite = theRotMats.cbegin(); ite != theRotMats.cend(); ++ite) { - if( (*ite).second->isNear( *rotm ) ) + if((*ite).second->isNear(*rotm)) { rmName = (*ite).first; break; @@ -1335,38 +1377,36 @@ G4tgbGeometryDumper::LookForExistingRotation( const G4RotationMatrix* rotm ) return rmName; } - -//------------------------------------------------------------------------ -G4bool -G4tgbGeometryDumper::Same2G4Isotopes( G4Isotope* isot1, G4Isotope* isot2 ) +// -------------------------------------------------------------------- +G4bool G4tgbGeometryDumper::Same2G4Isotopes(G4Isotope* isot1, G4Isotope* isot2) { - if ( (isot1->GetZ() != isot2->GetZ()) - || (isot1->GetN() != isot2->GetN()) - || (isot1->GetA() != isot2->GetA()) ) + if((isot1->GetZ() != isot2->GetZ()) || (isot1->GetN() != isot2->GetN()) || + (isot1->GetA() != isot2->GetA())) { - return 0; + return false; } else { - return 1; + return true; } } - -//------------------------------------------------------------------------ -const G4String& G4tgbGeometryDumper::FindSolidName( G4VSolid* solid ) +// -------------------------------------------------------------------- +const G4String& G4tgbGeometryDumper::FindSolidName(G4VSolid* solid) { - std::map::const_iterator ite; - for( ite = theSolids.begin(); ite != theSolids.end(); ++ite ) + std::map::const_iterator ite; + for(ite = theSolids.cbegin(); ite != theSolids.cend(); ++ite) + { + if(solid == (*ite).second) { - if( solid == (*ite).second ) { return (*ite).first; - } - } - - if( ite == theSolids.end() ) - { - G4Exception("G4tgbGeometryDumper::FindSolidName()", "ReadError", - FatalException, "Programming error."); + return (*ite).first; } + } + + if(ite == theSolids.cend()) + { + G4Exception("G4tgbGeometryDumper::FindSolidName()", "ReadError", + FatalException, "Programming error."); + } return (*ite).first; } diff --git a/source/persistency/ascii/src/G4tgbIsotope.cc b/source/persistency/ascii/src/G4tgbIsotope.cc index 960b2f0bdb..5722f5a5f7 100644 --- a/source/persistency/ascii/src/G4tgbIsotope.cc +++ b/source/persistency/ascii/src/G4tgbIsotope.cc @@ -23,61 +23,54 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbIsotope // -// -// -// class G4tgbIsotope - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbIsotope.hh" #include "G4tgrMessenger.hh" -//---------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbIsotope::G4tgbIsotope() - : theTgrIsot(0), theG4Isot(0) { } -//---------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbIsotope::~G4tgbIsotope() { } -//---------------------------------------------------------------------- -G4tgbIsotope::G4tgbIsotope( G4tgrIsotope* hg ) +// -------------------------------------------------------------------- +G4tgbIsotope::G4tgbIsotope(G4tgrIsotope* hg) { theTgrIsot = hg; - theG4Isot = 0; } -//---------------------------------------------------------------------- +// -------------------------------------------------------------------- G4Isotope* G4tgbIsotope::BuildG4Isotope() { - G4Isotope* isot = 0; + G4Isotope* isot = nullptr; - //-------- if G4Isotope not found, construct it - if( theG4Isot == 0 ) - { - //----- construct new G4Isotope + //-------- if G4Isotope not found, construct it + if(theG4Isot == nullptr) + { + //----- construct new G4Isotope isot = new G4Isotope(theTgrIsot->GetName(), theTgrIsot->GetZ(), - theTgrIsot->GetN(), theTgrIsot->GetA() ); + theTgrIsot->GetN(), theTgrIsot->GetA()); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << " Constructing new G4Isotope " - << *isot << G4endl; + G4cout << " Constructing new G4Isotope " << *isot << G4endl; } #endif theG4Isot = isot; } else { - isot = theG4Isot; + isot = theG4Isot; } return isot; diff --git a/source/persistency/ascii/src/G4tgbMaterial.cc b/source/persistency/ascii/src/G4tgbMaterial.cc index ddde96355f..31c2449268 100644 --- a/source/persistency/ascii/src/G4tgbMaterial.cc +++ b/source/persistency/ascii/src/G4tgbMaterial.cc @@ -23,33 +23,26 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbMaterial // -// -// -// class G4tgbMaterial - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbMaterial.hh" #include "G4tgrMaterial.hh" - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterial::G4tgbMaterial() - : theTgrMate(0), theG4Mate(0) { } -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterial::~G4tgbMaterial() { } -// ------------------------------------------------------------------------- -G4tgbMaterial::G4tgbMaterial( G4tgrMaterial* hg ) - : theTgrMate(hg), theG4Mate(0) +// -------------------------------------------------------------------- +G4tgbMaterial::G4tgbMaterial(G4tgrMaterial* hg) + : theTgrMate(hg) { } - diff --git a/source/persistency/ascii/src/G4tgbMaterialMgr.cc b/source/persistency/ascii/src/G4tgbMaterialMgr.cc index 083ea7be47..a8779ac7b2 100644 --- a/source/persistency/ascii/src/G4tgbMaterialMgr.cc +++ b/source/persistency/ascii/src/G4tgbMaterialMgr.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbMaterialMgr implementation // -// -// -// class G4tgbMaterialMgr - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbMaterialMgr.hh" #include "G4tgbMaterialMixtureByWeight.hh" @@ -45,20 +41,17 @@ #include "G4tgrMessenger.hh" #include "G4NistManager.hh" +G4ThreadLocal G4tgbMaterialMgr* G4tgbMaterialMgr::theInstance = nullptr; -G4ThreadLocal G4tgbMaterialMgr* G4tgbMaterialMgr::theInstance = 0; - - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialMgr::G4tgbMaterialMgr() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialMgr* G4tgbMaterialMgr::GetInstance() { - if( !theInstance ) + if(theInstance == nullptr) { theInstance = new G4tgbMaterialMgr; theInstance->CopyIsotopes(); @@ -68,111 +61,109 @@ G4tgbMaterialMgr* G4tgbMaterialMgr::GetInstance() return theInstance; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialMgr::~G4tgbMaterialMgr() { - G4mstgbisot::const_iterator isotcite; - for( isotcite = theG4tgbIsotopes.begin(); - isotcite != theG4tgbIsotopes.end(); isotcite++) + for(auto isotcite = theG4tgbIsotopes.cbegin(); + isotcite != theG4tgbIsotopes.cend(); ++isotcite) { - delete (*isotcite).second; + delete(*isotcite).second; } theG4tgbIsotopes.clear(); - G4mstgbelem::const_iterator elemcite; - for( elemcite = theG4tgbElements.begin(); - elemcite != theG4tgbElements.end(); elemcite++) + for(auto elemcite = theG4tgbElements.cbegin(); + elemcite != theG4tgbElements.cend(); ++elemcite) { - delete (*elemcite).second; + delete(*elemcite).second; } theG4tgbElements.clear(); - G4mstgbmate::const_iterator matcite; - for( matcite = theG4tgbMaterials.begin(); - matcite != theG4tgbMaterials.end(); matcite++) + for(auto matcite = theG4tgbMaterials.cbegin(); + matcite != theG4tgbMaterials.cend(); ++matcite) { - delete (*matcite).second; + delete(*matcite).second; } theG4tgbMaterials.clear(); delete theInstance; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgbMaterialMgr::CopyIsotopes() { - const G4mstgrisot tgrIsots - = G4tgrMaterialFactory::GetInstance()->GetIsotopeList(); - G4mstgrisot::const_iterator cite; - for( cite = tgrIsots.begin(); cite != tgrIsots.end(); cite++ ) + const G4mstgrisot tgrIsots = + G4tgrMaterialFactory::GetInstance()->GetIsotopeList(); + for(auto cite = tgrIsots.cbegin(); cite != tgrIsots.cend(); ++cite) { - G4tgrIsotope* tgr = (*cite).second; - G4tgbIsotope* tgb = new G4tgbIsotope( tgr ); + G4tgrIsotope* tgr = (*cite).second; + G4tgbIsotope* tgb = new G4tgbIsotope(tgr); theG4tgbIsotopes[tgb->GetName()] = tgb; } } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgbMaterialMgr::CopyElements() { - const G4mstgrelem tgrElems - = G4tgrMaterialFactory::GetInstance()->GetElementList(); - G4mstgrelem::const_iterator cite; - for( cite = tgrElems.begin(); cite != tgrElems.end(); cite++ ) + const G4mstgrelem tgrElems = + G4tgrMaterialFactory::GetInstance()->GetElementList(); + for(auto cite = tgrElems.cbegin(); cite != tgrElems.cend(); ++cite) { - G4tgrElement* tgr = (*cite).second; - G4tgbElement* tgb = new G4tgbElement( tgr ); + G4tgrElement* tgr = (*cite).second; + G4tgbElement* tgb = new G4tgbElement(tgr); theG4tgbElements[tgb->GetName()] = tgb; } } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgbMaterialMgr::CopyMaterials() { - const G4mstgrmate tgrMates - = G4tgrMaterialFactory::GetInstance()->GetMaterialList(); - G4mstgrmate::const_iterator cite; - for( cite = tgrMates.begin(); cite != tgrMates.end(); cite++ ) + const G4mstgrmate tgrMates = + G4tgrMaterialFactory::GetInstance()->GetMaterialList(); + for(auto cite = tgrMates.cbegin(); cite != tgrMates.cend(); ++cite) { G4tgrMaterial* tgr = (*cite).second; - G4tgbMaterial* tgb = 0; - if( tgr->GetType() == "MaterialSimple" ) { - tgb = new G4tgbMaterialSimple( tgr ); - } else if( tgr->GetType() == "MaterialMixtureByWeight" ) { - tgb = new G4tgbMaterialMixtureByWeight( tgr ); - } else if( tgr->GetType() == "MaterialMixtureByNoAtoms" ) { - tgb = new G4tgbMaterialMixtureByNoAtoms( tgr ); - } else if( tgr->GetType() == "MaterialMixtureByVolume" ) { - tgb = new G4tgbMaterialMixtureByVolume( tgr ); - } else { + G4tgbMaterial* tgb = nullptr; + if(tgr->GetType() == "MaterialSimple") + { + tgb = new G4tgbMaterialSimple(tgr); + } + else if(tgr->GetType() == "MaterialMixtureByWeight") + { + tgb = new G4tgbMaterialMixtureByWeight(tgr); + } + else if(tgr->GetType() == "MaterialMixtureByNoAtoms") + { + tgb = new G4tgbMaterialMixtureByNoAtoms(tgr); + } + else if(tgr->GetType() == "MaterialMixtureByVolume") + { + tgb = new G4tgbMaterialMixtureByVolume(tgr); + } + else + { return; } theG4tgbMaterials[tgb->GetName()] = tgb; } } - -// ------------------------------------------------------------------------- -G4Isotope* G4tgbMaterialMgr::FindOrBuildG4Isotope(const G4String & name) +// -------------------------------------------------------------------- +G4Isotope* G4tgbMaterialMgr::FindOrBuildG4Isotope(const G4String& name) { - G4Isotope* g4isot = FindBuiltG4Isotope( name ); - if( g4isot == 0 ) + G4Isotope* g4isot = FindBuiltG4Isotope(name); + if(g4isot == nullptr) { - G4tgbIsotope* tgbisot = FindG4tgbIsotope( name ); - // FindG4tgbIsotope never returns 0, otherwise if not found, crashes + G4tgbIsotope* tgbisot = FindG4tgbIsotope(name); + // FindG4tgbIsotope never returns nullptr, otherwise if not found, crashes g4isot = tgbisot->BuildG4Isotope(); // Register it - G4String isotname = g4isot->GetName(); + G4String isotname = g4isot->GetName(); theG4Isotopes[isotname] = g4isot; } else - { + { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { G4cout << " G4tgbMaterialMgr::FindOrBuildG4Isotope() -" << " G4Isotope already built: " << g4isot->GetName() << G4endl; @@ -181,123 +172,119 @@ G4Isotope* G4tgbMaterialMgr::FindOrBuildG4Isotope(const G4String & name) } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << " G4tgbMaterialMgr::FindOrBuildG4Isotope() - Isotope: " - << name << G4endl; + G4cout << " G4tgbMaterialMgr::FindOrBuildG4Isotope() - Isotope: " << name + << G4endl; } #endif return g4isot; -} +} - -// ------------------------------------------------------------------------- -G4Isotope* G4tgbMaterialMgr::FindBuiltG4Isotope(const G4String & name) const +// -------------------------------------------------------------------- +G4Isotope* G4tgbMaterialMgr::FindBuiltG4Isotope(const G4String& name) const { - G4Isotope* g4isot = 0; - - G4msg4isot::const_iterator cite = theG4Isotopes.find( name ); - if( cite != theG4Isotopes.end() ) + G4Isotope* g4isot = nullptr; + + G4msg4isot::const_iterator cite = theG4Isotopes.find(name); + if(cite != theG4Isotopes.cend()) { g4isot = (*cite).second; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) - { - G4cout << " G4tgbMaterialMgr::FindBuiltG4Isotope() - Isotope: " - << name << " = " << g4isot << G4endl; - } + if(G4tgrMessenger::GetVerboseLevel() >= 2) + { + G4cout << " G4tgbMaterialMgr::FindBuiltG4Isotope() - Isotope: " << name + << " = " << g4isot << G4endl; + } #endif - - } + } return g4isot; } - -// ------------------------------------------------------------------------- -G4tgbIsotope* G4tgbMaterialMgr::FindG4tgbIsotope(const G4String & name, - G4bool bMustExist ) const +// -------------------------------------------------------------------- +G4tgbIsotope* G4tgbMaterialMgr::FindG4tgbIsotope(const G4String& name, + G4bool bMustExist) const { - G4tgbIsotope* isot = 0; + G4tgbIsotope* isot = nullptr; - G4mstgbisot::const_iterator cite = theG4tgbIsotopes.find( name ); - if( cite != theG4tgbIsotopes.end() ) + G4mstgbisot::const_iterator cite = theG4tgbIsotopes.find(name); + if(cite != theG4tgbIsotopes.cend()) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbMaterialMgr::FindG4tgbIsotope() -" - << " G4tgbIsotope found: " << ( (*cite).second )->GetName() + << " G4tgbIsotope found: " << ((*cite).second)->GetName() << G4endl; } #endif isot = (*cite).second; } - if( (isot == 0) && bMustExist ) + if((isot == nullptr) && bMustExist) { G4String ErrMessage = "Isotope " + name + " not found !"; - G4Exception("G4tgbMaterialMgr::FindG4tgbIsotope()", - "InvalidSetup", FatalException, ErrMessage); + G4Exception("G4tgbMaterialMgr::FindG4tgbIsotope()", "InvalidSetup", + FatalException, ErrMessage); } return isot; } - -// ------------------------------------------------------------------------- -G4Element* G4tgbMaterialMgr::FindOrBuildG4Element(const G4String & name, - G4bool bMustExist ) +// -------------------------------------------------------------------- +G4Element* G4tgbMaterialMgr::FindOrBuildG4Element(const G4String& name, + G4bool bMustExist) { - G4Element* g4elem = FindBuiltG4Element( name ); - if( g4elem == 0 ) + G4Element* g4elem = FindBuiltG4Element(name); + if(g4elem == nullptr) { - G4tgbElement* tgbelem = FindG4tgbElement( name, false ); - if( tgbelem == 0) + G4tgbElement* tgbelem = FindG4tgbElement(name, false); + if(tgbelem == nullptr) { - // If FindG4tgbElement returns 0, look for a G4NISTElement + // If FindG4tgbElement returns nullptr, look for a G4NISTElement G4cout << " G4NistManager::Instance()->FindOrBuildElement( " << G4endl; g4elem = G4NistManager::Instance()->FindOrBuildElement(name); } else { - if( tgbelem->GetType() == "ElementSimple" ) + if(tgbelem->GetType() == "ElementSimple") { g4elem = tgbelem->BuildG4ElementSimple(); } - else if( tgbelem->GetType() == "ElementFromIsotopes" ) + else if(tgbelem->GetType() == "ElementFromIsotopes") { g4elem = tgbelem->BuildG4ElementFromIsotopes(); } else { - G4String ErrMessage = "Element type " + tgbelem->GetType() - + " does not exist !"; - G4Exception("G4tgbMaterialMgr::GetG4Element()", - "InvalidSetup", FatalException, ErrMessage); + G4String ErrMessage = + "Element type " + tgbelem->GetType() + " does not exist !"; + G4Exception("G4tgbMaterialMgr::GetG4Element()", "InvalidSetup", + FatalException, ErrMessage); } } // Register it - if( (g4elem != 0) ) + if((g4elem != nullptr)) { theG4Elements[g4elem->GetName()] = g4elem; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) - { - G4cout << " G4tgbMaterialMgr::FindOrBuildG4Element() - Element: " - << name << G4endl; - } + if(G4tgrMessenger::GetVerboseLevel() >= 2) + { + G4cout << " G4tgbMaterialMgr::FindOrBuildG4Element() - Element: " + << name << G4endl; + } #endif } else { - if( bMustExist ) + if(bMustExist) { G4String ErrMessage = "Element " + name + " not found !"; - G4Exception("G4tgbMaterialMgr::FindOrBuildG4Element()", - "InvalidSetup", FatalException, ErrMessage); + G4Exception("G4tgbMaterialMgr::FindOrBuildG4Element()", "InvalidSetup", + FatalException, ErrMessage); } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbMaterialMgr::FindOrBuildG4Element() - Element: " << name << " not found " << G4endl; @@ -306,82 +293,79 @@ G4Element* G4tgbMaterialMgr::FindOrBuildG4Element(const G4String & name, } } else - { + { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { G4cout << " G4tgbMaterialMgr::GetG4Element() -" - << " G4Element already built: " << g4elem->GetName() << G4endl; + << " G4Element already built: " << g4elem->GetName() << G4endl; } #endif } return g4elem; -} +} - -// ------------------------------------------------------------------------- -G4Element* G4tgbMaterialMgr::FindBuiltG4Element(const G4String & name) const +// -------------------------------------------------------------------- +G4Element* G4tgbMaterialMgr::FindBuiltG4Element(const G4String& name) const { - G4Element* g4elem = 0; - - G4msg4elem::const_iterator cite = theG4Elements.find( name ); - if( cite != theG4Elements.end() ) + G4Element* g4elem = nullptr; + + G4msg4elem::const_iterator cite = theG4Elements.find(name); + if(cite != theG4Elements.cend()) { g4elem = (*cite).second; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << " G4tgbMaterialMgr::FindBuiltG4Element() - Element: " - << name << " = " << g4elem << G4endl; + G4cout << " G4tgbMaterialMgr::FindBuiltG4Element() - Element: " << name + << " = " << g4elem << G4endl; } #endif - } + } return g4elem; } - -// ------------------------------------------------------------------------- -G4tgbElement* G4tgbMaterialMgr::FindG4tgbElement(const G4String & name, - G4bool bMustExist ) const +// -------------------------------------------------------------------- +G4tgbElement* G4tgbMaterialMgr::FindG4tgbElement(const G4String& name, + G4bool bMustExist) const { - G4tgbElement* elem = 0; + G4tgbElement* elem = nullptr; - G4mstgbelem::const_iterator cite = theG4tgbElements.find( name ); - if( cite != theG4tgbElements.end() ) + G4mstgbelem::const_iterator cite = theG4tgbElements.find(name); + if(cite != theG4tgbElements.cend()) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbMaterialMgr::FindG4tgbElement() -" - << " G4tgbElement found: " << ( (*cite).second )->GetName() + << " G4tgbElement found: " << ((*cite).second)->GetName() << G4endl; } #endif elem = (*cite).second; } - if( (elem == 0) && bMustExist ) + if((elem == nullptr) && bMustExist) { G4String ErrMessage = "Element " + name + " not found !"; - G4Exception("G4tgbMaterialMgr::FindG4tgbElement()", - "InvalidSetup", FatalException, ErrMessage); + G4Exception("G4tgbMaterialMgr::FindG4tgbElement()", "InvalidSetup", + FatalException, ErrMessage); } return elem; } - -// ------------------------------------------------------------------------- -G4Material* G4tgbMaterialMgr::FindOrBuildG4Material(const G4String & name, - G4bool bMustExist ) +// -------------------------------------------------------------------- +G4Material* G4tgbMaterialMgr::FindOrBuildG4Material(const G4String& name, + G4bool bMustExist) { - G4Material* g4mate = FindBuiltG4Material( name ); - if( g4mate == 0) + G4Material* g4mate = FindBuiltG4Material(name); + if(g4mate == nullptr) { - G4tgbMaterial* tgbmate = FindG4tgbMaterial( name, false ); - - if( tgbmate == 0) + G4tgbMaterial* tgbmate = FindG4tgbMaterial(name, false); + + if(tgbmate == nullptr) { // if FindG4tgbMaterial() returns 0, look for a G4NISTMaterial g4mate = G4NistManager::Instance()->FindOrBuildMaterial(name); @@ -390,19 +374,19 @@ G4Material* G4tgbMaterialMgr::FindOrBuildG4Material(const G4String & name, { g4mate = tgbmate->BuildG4Material(); - if( tgbmate->GetTgrMate()->GetIonisationMeanExcitationEnergy() != -1. ) + if(tgbmate->GetTgrMate()->GetIonisationMeanExcitationEnergy() != -1.) { - g4mate->GetIonisation()->SetMeanExcitationEnergy(tgbmate-> - GetTgrMate()->GetIonisationMeanExcitationEnergy()); + g4mate->GetIonisation()->SetMeanExcitationEnergy( + tgbmate->GetTgrMate()->GetIonisationMeanExcitationEnergy()); } } // Register it - if( g4mate != 0 ) + if(g4mate != nullptr) { theG4Materials[g4mate->GetName()] = g4mate; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbMaterialMgr::FindOrBuildG4Material() - Material: " << name << G4endl; @@ -411,14 +395,14 @@ G4Material* G4tgbMaterialMgr::FindOrBuildG4Material(const G4String & name, } else { - if( bMustExist ) + if(bMustExist) { G4String ErrMessage = "Material " + name + " not found !"; - G4Exception("G4tgbMaterialMgr::FindOrBuildG4Material()", - "InvalidSetup", FatalException, ErrMessage); - } + G4Exception("G4tgbMaterialMgr::FindOrBuildG4Material()", "InvalidSetup", + FatalException, ErrMessage); + } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbMaterialMgr::FindOrBuildG4Material() - Element: " << name << " not found " << G4endl; @@ -427,9 +411,9 @@ G4Material* G4tgbMaterialMgr::FindOrBuildG4Material(const G4String & name, } } else - { + { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { G4cout << " G4tgbMaterialMgr::FindOrBuildG4Material() -" << " G4Material already built: " << g4mate->GetName() << G4endl; @@ -440,21 +424,20 @@ G4Material* G4tgbMaterialMgr::FindOrBuildG4Material(const G4String & name, return g4mate; } - -// ------------------------------------------------------------------------- -G4Material* G4tgbMaterialMgr::FindBuiltG4Material(const G4String & name) const +// -------------------------------------------------------------------- +G4Material* G4tgbMaterialMgr::FindBuiltG4Material(const G4String& name) const { - G4Material* g4mate = 0; + G4Material* g4mate = nullptr; //---------- look for an existing G4Material - G4msg4mate::const_iterator cite = theG4Materials.find( name ); - if( cite != theG4Materials.end() ) + G4msg4mate::const_iterator cite = theG4Materials.find(name); + if(cite != theG4Materials.cend()) { g4mate = (*cite).second; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << " G4tgbMaterialMgr::FindBuiltG4Material() - Material: " - << name << " = " << g4mate << G4endl; + G4cout << " G4tgbMaterialMgr::FindBuiltG4Material() - Material: " << name + << " = " << g4mate << G4endl; } #endif } @@ -462,31 +445,30 @@ G4Material* G4tgbMaterialMgr::FindBuiltG4Material(const G4String & name) const return g4mate; } - // ------------------------------------------------------------------------- -G4tgbMaterial* G4tgbMaterialMgr::FindG4tgbMaterial(const G4String & name, - G4bool bMustExist ) const +G4tgbMaterial* G4tgbMaterialMgr::FindG4tgbMaterial(const G4String& name, + G4bool bMustExist) const { - G4tgbMaterial* mate = 0; - G4mstgbmate::const_iterator cite = theG4tgbMaterials.find( name ); - if( cite != theG4tgbMaterials.end() ) + G4tgbMaterial* mate = nullptr; + G4mstgbmate::const_iterator cite = theG4tgbMaterials.find(name); + if(cite != theG4tgbMaterials.cend()) { mate = (*cite).second; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbMaterialMgr::FindG4tgbMaterial() -" - << " G4tgbMaterial found: " << ( (*cite).second )->GetName() - << " type " << ( (*cite).second )->GetName() << G4endl; + << " G4tgbMaterial found: " << ((*cite).second)->GetName() + << " type " << ((*cite).second)->GetName() << G4endl; } #endif } - if( (mate == 0) && bMustExist ) + if((mate == nullptr) && bMustExist) { G4String ErrMessage = "Material " + name + " not found !"; - G4Exception("G4tgbMaterialMgr::FindG4tgbMaterial()", - "InvalidSetup", FatalException, ErrMessage); + G4Exception("G4tgbMaterialMgr::FindG4tgbMaterial()", "InvalidSetup", + FatalException, ErrMessage); } return mate; diff --git a/source/persistency/ascii/src/G4tgbMaterialMixture.cc b/source/persistency/ascii/src/G4tgbMaterialMixture.cc index e43b490cf0..9c2788f062 100644 --- a/source/persistency/ascii/src/G4tgbMaterialMixture.cc +++ b/source/persistency/ascii/src/G4tgbMaterialMixture.cc @@ -23,52 +23,43 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbMaterialMixture implementation // -// -// -// class G4tgbMaterialMixture - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbMaterialMixture.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialMixture::G4tgbMaterialMixture() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialMixture::~G4tgbMaterialMixture() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- const G4String& G4tgbMaterialMixture::GetComponent(G4int i) const { - return theTgrMate->GetComponent( i ); + return theTgrMate->GetComponent(i); } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4double G4tgbMaterialMixture::GetFraction(G4int i) const { - return theTgrMate->GetFraction( i ); -} + return theTgrMate->GetFraction(i); +} - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialMixture& G4tgbMaterialMixture::operator=(const G4tgbMaterialMixture&) { - return *this; + return *this; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgbMaterialMixture::TransformToFractionsByWeight() { } diff --git a/source/persistency/ascii/src/G4tgbMaterialMixtureByNoAtoms.cc b/source/persistency/ascii/src/G4tgbMaterialMixtureByNoAtoms.cc index 3e582450da..678afe9af8 100644 --- a/source/persistency/ascii/src/G4tgbMaterialMixtureByNoAtoms.cc +++ b/source/persistency/ascii/src/G4tgbMaterialMixtureByNoAtoms.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbMaterialMixtureByNoAtoms // -// -// -// class G4tgbMaterialMixtureByNoAtoms - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbMaterialMixtureByNoAtoms.hh" @@ -39,48 +35,40 @@ #include "G4tgbMaterialMgr.hh" #include "G4tgrMessenger.hh" - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialMixtureByNoAtoms::G4tgbMaterialMixtureByNoAtoms() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialMixtureByNoAtoms::~G4tgbMaterialMixtureByNoAtoms() { } - -// ------------------------------------------------------------------------- -G4tgbMaterialMixtureByNoAtoms:: -G4tgbMaterialMixtureByNoAtoms( G4tgrMaterial* hg) +// -------------------------------------------------------------------- +G4tgbMaterialMixtureByNoAtoms::G4tgbMaterialMixtureByNoAtoms(G4tgrMaterial* hg) { theTgrMate = hg; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4Material* G4tgbMaterialMixtureByNoAtoms::BuildG4Material() -{ +{ //----- construct new G4Material with components materials (a mixture) - G4Material* mate = new G4Material( theTgrMate->GetName(), - theTgrMate->GetDensity(), - theTgrMate->GetNumberOfComponents(), - theTgrMate->GetState(), - theTgrMate->GetTemperature(), - theTgrMate->GetPressure() ); - #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + G4Material* mate = + new G4Material(theTgrMate->GetName(), theTgrMate->GetDensity(), + theTgrMate->GetNumberOfComponents(), theTgrMate->GetState(), + theTgrMate->GetTemperature(), theTgrMate->GetPressure()); +#ifdef G4VERBOSE + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbMaterialMixtureByNoAtoms::BuildG4Material() -" << " Constructing new G4Material:" - << " " << theTgrMate->GetName() - << " " << theTgrMate->GetDensity()/g*cm3 - << " " << theTgrMate->GetNumberOfComponents() - << " " << theTgrMate->GetState() - << " " << theTgrMate->GetTemperature() + << " " << theTgrMate->GetName() << " " + << theTgrMate->GetDensity() / g * cm3 << " " + << theTgrMate->GetNumberOfComponents() << " " + << theTgrMate->GetState() << " " << theTgrMate->GetTemperature() << " " << theTgrMate->GetPressure() << G4endl; } #endif @@ -89,48 +77,47 @@ G4Material* G4tgbMaterialMixtureByNoAtoms::BuildG4Material() G4Element* compElem; G4tgbMaterialMgr* mf = G4tgbMaterialMgr::GetInstance(); - for( G4int ii = 0; ii < theTgrMate->GetNumberOfComponents(); ii++) + for(G4int ii = 0; ii < theTgrMate->GetNumberOfComponents(); ++ii) { // look if this component is an element - compElem = mf->FindOrBuildG4Element( GetComponent(ii), false ); - if( compElem != 0 ) + compElem = mf->FindOrBuildG4Element(GetComponent(ii), false); + if(compElem != nullptr) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbMaterialMixtureByNoAtoms::BuildG4Material() -" << " Adding component element ..." << G4endl; } #endif // add it by number of atoms - G4cout << compElem->GetName() << " BY NATOMS ele " - << ii << " " << G4int(GetFraction(ii)) << G4endl; - mate->AddElement( compElem, G4int(GetFraction(ii)) ); + G4cout << compElem->GetName() << " BY NATOMS ele " << ii << " " + << G4int(GetFraction(ii)) << G4endl; + mate->AddElement(compElem, G4int(GetFraction(ii))); // if it is not an element look if it is a material } else - { - G4String ErrMessage = "Component " + GetComponent(ii) - + " of material " + theTgrMate->GetName() - + "\n" + "is not an element !"; + { + G4String ErrMessage = "Component " + GetComponent(ii) + " of material " + + theTgrMate->GetName() + "\n" + + "is not an element !"; G4Exception("G4tgbMaterialMixtureByWeight::buildG4Material()", "InvalidSetup", FatalException, ErrMessage); - } + } } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Constructing new G4Material by number of atoms: " - << *mate << G4endl; + G4cout << " Constructing new G4Material by number of atoms: " << *mate + << G4endl; } -#endif +#endif return mate; } - -// ------------------------------------------------------------------------- -void G4tgbMaterialMixtureByNoAtoms::TransformToFractionsByWeight() +// -------------------------------------------------------------------- +void G4tgbMaterialMixtureByNoAtoms::TransformToFractionsByWeight() { } diff --git a/source/persistency/ascii/src/G4tgbMaterialMixtureByVolume.cc b/source/persistency/ascii/src/G4tgbMaterialMixtureByVolume.cc index b8f1d3ff8b..cf8f9fed14 100644 --- a/source/persistency/ascii/src/G4tgbMaterialMixtureByVolume.cc +++ b/source/persistency/ascii/src/G4tgbMaterialMixtureByVolume.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbMaterialMixtureByVolume implementation // -// -// -// class G4tgbMaterialMixtureByVolume - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbMaterialMixtureByVolume.hh" @@ -39,122 +35,113 @@ #include "G4tgbMaterialMgr.hh" #include "G4tgrMessenger.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialMixtureByVolume::G4tgbMaterialMixtureByVolume() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialMixtureByVolume::~G4tgbMaterialMixtureByVolume() { } - -// ------------------------------------------------------------------------- -G4tgbMaterialMixtureByVolume::G4tgbMaterialMixtureByVolume( G4tgrMaterial* hg ) +// -------------------------------------------------------------------- +G4tgbMaterialMixtureByVolume::G4tgbMaterialMixtureByVolume(G4tgrMaterial* hg) { theTgrMate = hg; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4Material* G4tgbMaterialMixtureByVolume::BuildG4Material() { - //----- construct new G4Material with components materials (a mixture) - G4Material* mate = new G4Material( theTgrMate->GetName(), - theTgrMate->GetDensity(), - theTgrMate->GetNumberOfComponents(), - theTgrMate->GetState(), - theTgrMate->GetTemperature(), - theTgrMate->GetPressure() ); + G4Material* mate = + new G4Material(theTgrMate->GetName(), theTgrMate->GetDensity(), + theTgrMate->GetNumberOfComponents(), theTgrMate->GetState(), + theTgrMate->GetTemperature(), theTgrMate->GetPressure()); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbMaterialMixtureByVolume::buildG4Material() -" << " Constructing new G4Material:" - << " " << theTgrMate->GetName() - << " " << theTgrMate->GetDensity()/g*cm3 - << " " << theTgrMate->GetNumberOfComponents() - << " " << theTgrMate->GetState() - << " " << theTgrMate->GetTemperature() + << " " << theTgrMate->GetName() << " " + << theTgrMate->GetDensity() / g * cm3 << " " + << theTgrMate->GetNumberOfComponents() << " " + << theTgrMate->GetState() << " " << theTgrMate->GetTemperature() << " " << theTgrMate->GetPressure() << G4endl; } #endif - + //----- Transform fractions by volume to fractions by weight TransformToFractionsByWeight(); //----- Add components - G4Material* compMate = 0; + G4Material* compMate = nullptr; G4tgbMaterialMgr* mf = G4tgbMaterialMgr::GetInstance(); - for( G4int ii = 0; ii < theTgrMate->GetNumberOfComponents(); ii++) + for(G4int ii = 0; ii < theTgrMate->GetNumberOfComponents(); ++ii) { // Look if this component is a material - compMate = mf->FindOrBuildG4Material( GetComponent(ii) ); - if( compMate != 0 ) - { - // If it is a material add it by weight fraction - mate->AddMaterial( compMate, theFractionsByWeight[ii] ); + compMate = mf->FindOrBuildG4Material(GetComponent(ii)); + if(compMate != nullptr) + { + // If it is a material add it by weight fraction + mate->AddMaterial(compMate, theFractionsByWeight[ii]); } else { - G4String ErrMessage = "Component " + GetComponent(ii) - + " of material " + theTgrMate->GetName() - + "\n" + "is not an element nor a material !"; + G4String ErrMessage = "Component " + GetComponent(ii) + " of material " + + theTgrMate->GetName() + "\n" + + "is not an element nor a material !"; G4Exception("G4tgbMaterialMixtureByVolume::BuildG4Material()", "InvalidSetup", FatalException, ErrMessage); } - } + } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Constructing new G4Material by volume: " << *mate << G4endl; + G4cout << " Constructing new G4Material by volume: " << *mate << G4endl; } -#endif +#endif return mate; } - -// ------------------------------------------------------------------------- -void G4tgbMaterialMixtureByVolume::TransformToFractionsByWeight() -{ +// -------------------------------------------------------------------- +void G4tgbMaterialMixtureByVolume::TransformToFractionsByWeight() +{ G4tgbMaterialMgr* mf = G4tgbMaterialMgr::GetInstance(); - G4Material* compMate = 0; - G4double totalfd = 0.; - for( G4int ii = 0; ii < theTgrMate->GetNumberOfComponents(); ii++ ) + G4Material* compMate = nullptr; + G4double totalfd = 0.; + for(G4int ii = 0; ii < theTgrMate->GetNumberOfComponents(); ++ii) { - compMate = mf->FindOrBuildG4Material( GetComponent(ii) ); - if( compMate != 0 ) + compMate = mf->FindOrBuildG4Material(GetComponent(ii)); + if(compMate != nullptr) { - // If it is a material add it by weight fraction - theFractionsByWeight.push_back( GetFraction(ii)*compMate->GetDensity() ); + // If it is a material add it by weight fraction + theFractionsByWeight.push_back(GetFraction(ii) * compMate->GetDensity()); totalfd += theFractionsByWeight[ii]; } else { - G4String ErrMessage = "Component " + GetComponent(ii) - + " of material " + theTgrMate->GetName() - + "\n" + "is not a material !"; + G4String ErrMessage = "Component " + GetComponent(ii) + " of material " + + theTgrMate->GetName() + "\n" + + "is not a material !"; G4Exception("G4tgbMaterialMixtureByVolume::BuildG4Material()", "InvalidSetup", FatalException, ErrMessage); - } + } } - for( G4int ii = 0; ii < theTgrMate->GetNumberOfComponents(); ii++ ) + for(G4int ii = 0; ii < theTgrMate->GetNumberOfComponents(); ++ii) { theFractionsByWeight[ii] /= totalfd; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbMaterialMixtureByVolume::TransformToFractionsByWeight()" - << " Component " << ii << " : " - << mf->FindOrBuildG4Material( GetComponent(ii) )->GetName() + << " Component " << ii << " : " + << mf->FindOrBuildG4Material(GetComponent(ii))->GetName() << " FractionByVolume= " << GetFraction(ii) - << " FractionByWeight= " << theFractionsByWeight[ii] - << G4endl; + << " FractionByWeight= " << theFractionsByWeight[ii] << G4endl; } #endif } diff --git a/source/persistency/ascii/src/G4tgbMaterialMixtureByWeight.cc b/source/persistency/ascii/src/G4tgbMaterialMixtureByWeight.cc index 88ba1a2e0d..51404ba10b 100644 --- a/source/persistency/ascii/src/G4tgbMaterialMixtureByWeight.cc +++ b/source/persistency/ascii/src/G4tgbMaterialMixtureByWeight.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbMaterialMixtureByWeight // -// -// -// class G4tgbMaterialMixtureByWeight - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbMaterialMixtureByWeight.hh" @@ -39,89 +35,83 @@ #include "G4tgbMaterialMgr.hh" #include "G4tgrMessenger.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialMixtureByWeight::G4tgbMaterialMixtureByWeight() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialMixtureByWeight::~G4tgbMaterialMixtureByWeight() { } - -// ------------------------------------------------------------------------- -G4tgbMaterialMixtureByWeight::G4tgbMaterialMixtureByWeight( G4tgrMaterial* hg ) +// -------------------------------------------------------------------- +G4tgbMaterialMixtureByWeight::G4tgbMaterialMixtureByWeight(G4tgrMaterial* hg) { theTgrMate = hg; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4Material* G4tgbMaterialMixtureByWeight::BuildG4Material() { //----- construct new G4Material with component materials (a mixture) - G4Material* mate = new G4Material( theTgrMate->GetName(), - theTgrMate->GetDensity(), - theTgrMate->GetNumberOfComponents(), - theTgrMate->GetState(), - theTgrMate->GetTemperature(), - theTgrMate->GetPressure() ); + G4Material* mate = + new G4Material(theTgrMate->GetName(), theTgrMate->GetDensity(), + theTgrMate->GetNumberOfComponents(), theTgrMate->GetState(), + theTgrMate->GetTemperature(), theTgrMate->GetPressure()); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbMaterialMixtureByWeight::BuildG4Material() -" << " Constructing new G4Material:" - << " " << theTgrMate->GetName() - << " " << theTgrMate->GetDensity()/g*cm3 - << " " << theTgrMate->GetNumberOfComponents() - << " " << theTgrMate->GetState() - << " " << theTgrMate->GetTemperature() + << " " << theTgrMate->GetName() << " " + << theTgrMate->GetDensity() / g * cm3 << " " + << theTgrMate->GetNumberOfComponents() << " " + << theTgrMate->GetState() << " " << theTgrMate->GetTemperature() << " " << theTgrMate->GetPressure() << G4endl; } #endif - + //--- Add components G4Element* compElem; G4Material* compMate; G4tgbMaterialMgr* mf = G4tgbMaterialMgr::GetInstance(); - for( G4int ii = 0; ii < theTgrMate->GetNumberOfComponents(); ii++) + for(G4int ii = 0; ii < theTgrMate->GetNumberOfComponents(); ++ii) { // Look if this component is an element - compElem = mf->FindOrBuildG4Element( GetComponent(ii), false ); - if( compElem != 0 ) + compElem = mf->FindOrBuildG4Element(GetComponent(ii), false); + if(compElem != nullptr) { - mate->AddElement( compElem, GetFraction( ii ) ); + mate->AddElement(compElem, GetFraction(ii)); } else // If it is not an element, it must be a material - { - compMate = mf->FindOrBuildG4Material( GetComponent(ii) ); - if( compMate != 0 ) - { - // If it is a material add it by weight fraction - mate->AddMaterial( compMate, GetFraction( ii ) ); + { + compMate = mf->FindOrBuildG4Material(GetComponent(ii)); + if(compMate != nullptr) + { + // If it is a material add it by weight fraction + mate->AddMaterial(compMate, GetFraction(ii)); } else { - G4String ErrMessage = "Component " + GetComponent(ii) - + " of material " + theTgrMate->GetName() - + "\n" + "is not an element nor a material !"; + G4String ErrMessage = "Component " + GetComponent(ii) + + " of material " + theTgrMate->GetName() + "\n" + + "is not an element nor a material !"; G4Exception("G4tgbMaterialMixtureByWeight::BuildG4Material()", "InvalidSetup", FatalException, ErrMessage); } - } + } } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Constructing new G4Material by weight: " << *mate << G4endl; - G4cout << " TEMPERATURE " << mate->GetTemperature()/kelvin - << " kelvin " << G4endl; + G4cout << " Constructing new G4Material by weight: " << *mate << G4endl; + G4cout << " TEMPERATURE " << mate->GetTemperature() / kelvin << " kelvin " + << G4endl; } -#endif +#endif return mate; } diff --git a/source/persistency/ascii/src/G4tgbMaterialSimple.cc b/source/persistency/ascii/src/G4tgbMaterialSimple.cc index f69c9b8e65..2ffab205e3 100644 --- a/source/persistency/ascii/src/G4tgbMaterialSimple.cc +++ b/source/persistency/ascii/src/G4tgbMaterialSimple.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbMaterialSimple // -// -// -// class G4tgbMaterialSimple - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbMaterialSimple.hh" @@ -38,40 +34,36 @@ #include "G4tgrMaterialSimple.hh" #include "G4tgrMessenger.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialSimple::G4tgbMaterialSimple() - : theZ(0.), theA(0.) { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbMaterialSimple::~G4tgbMaterialSimple() { } - -// ------------------------------------------------------------------------- -G4tgbMaterialSimple::G4tgbMaterialSimple( G4tgrMaterial* hgmate) +// -------------------------------------------------------------------- +G4tgbMaterialSimple::G4tgbMaterialSimple(G4tgrMaterial* hgmate) { - theTgrMate = hgmate; + theTgrMate = hgmate; G4tgrMaterialSimple* matesimp = static_cast(hgmate); - theZ = matesimp->GetZ(); - theA = matesimp->GetA(); + theZ = matesimp->GetZ(); + theA = matesimp->GetA(); } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4Material* G4tgbMaterialSimple::BuildG4Material() { //----- construct new G4Material with no components (only itself) - G4Material* mate = new G4Material( GetName(), GetZ(), GetA(), - theTgrMate->GetDensity(), - kStateUndefined, STP_Temperature ); - + G4Material* mate = + new G4Material(GetName(), GetZ(), GetA(), theTgrMate->GetDensity(), + kStateUndefined, STP_Temperature); + #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " Constructing new G4Material simple: " << *mate << G4endl; } @@ -80,13 +72,11 @@ G4Material* G4tgbMaterialSimple::BuildG4Material() return mate; } - -// ------------------------------------------------------------------------- -std::ostream& operator<<(std::ostream& os, const G4tgbMaterialSimple& mate) +// -------------------------------------------------------------------- +std::ostream& operator<<(std::ostream& os, const G4tgbMaterialSimple& mate) { os << "Simple Material: " << mate.GetName() << G4endl - << " Z = " << mate.GetZ() - << " A = " << mate.GetA() + << " Z = " << mate.GetZ() << " A = " << mate.GetA() << " density = " << mate.GetDensity() << G4endl; return os; } diff --git a/source/persistency/ascii/src/G4tgbPlaceParamCircle.cc b/source/persistency/ascii/src/G4tgbPlaceParamCircle.cc index e295d55758..2b92617d70 100644 --- a/source/persistency/ascii/src/G4tgbPlaceParamCircle.cc +++ b/source/persistency/ascii/src/G4tgbPlaceParamCircle.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbPlaceParamCircle implementation // -// -// -// class G4tgbPlaceParamCircle - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbPlaceParamCircle.hh" #include "G4tgrPlaceParameterisation.hh" @@ -40,55 +36,59 @@ #include "G4tgrUtils.hh" #include "G4tgrMessenger.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbPlaceParamCircle::~G4tgbPlaceParamCircle() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbPlaceParamCircle:: -G4tgbPlaceParamCircle( G4tgrPlaceParameterisation* tgrParam ) +G4tgbPlaceParamCircle(G4tgrPlaceParameterisation* tgrParam) : G4tgbPlaceParameterisation(tgrParam) { - //---- Get translation and rotation - if( tgrParam->GetParamType() == "CIRCLE" ) + //---- Get translation and rotation + if(tgrParam->GetParamType() == "CIRCLE") { - CheckNExtraData( tgrParam, 7, WLSIZE_EQ, "G4tgbPlaceParamCircle:"); - theCircleAxis = G4ThreeVector( tgrParam->GetExtraData()[4], - tgrParam->GetExtraData()[5], - tgrParam->GetExtraData()[6] ); + CheckNExtraData(tgrParam, 7, WLSIZE_EQ, "G4tgbPlaceParamCircle:"); + theCircleAxis = + G4ThreeVector(tgrParam->GetExtraData()[4], tgrParam->GetExtraData()[5], + tgrParam->GetExtraData()[6]); - G4ThreeVector zaxis(0.,0.,-1.); - if( zaxis.cross(theCircleAxis).mag() > 1.E-6 ) + G4ThreeVector zaxis(0., 0., -1.); + if(zaxis.cross(theCircleAxis).mag() > 1.E-6) { theDirInPlane = zaxis.cross(theCircleAxis); } else - { - theDirInPlane = theCircleAxis.cross(G4ThreeVector(0.,-1.,0.)); + { + theDirInPlane = theCircleAxis.cross(G4ThreeVector(0., -1., 0.)); } theAxis = kZAxis; } else { - CheckNExtraData( tgrParam, 4, WLSIZE_EQ, "G4tgbPlaceParamCircle:"); - if( tgrParam->GetParamType() == "CIRCLE_XY" ) { - theCircleAxis = G4ThreeVector(0.,0.,1.); - theDirInPlane = G4ThreeVector(1.,0.,0.); - theAxis = kZAxis; - } else if( tgrParam->GetParamType() == "CIRCLE_XZ" ) { - theCircleAxis = G4ThreeVector(0.,1.,0.); - theDirInPlane = G4ThreeVector(1.,0.,0.); - theAxis = kYAxis; - } else if( tgrParam->GetParamType() == "CIRCLE_YZ" ) { - theCircleAxis = G4ThreeVector(1.,0.,0.); - theDirInPlane = G4ThreeVector(0.,1.,0.); - theAxis = kXAxis; + CheckNExtraData(tgrParam, 4, WLSIZE_EQ, "G4tgbPlaceParamCircle:"); + if(tgrParam->GetParamType() == "CIRCLE_XY") + { + theCircleAxis = G4ThreeVector(0., 0., 1.); + theDirInPlane = G4ThreeVector(1., 0., 0.); + theAxis = kZAxis; + } + else if(tgrParam->GetParamType() == "CIRCLE_XZ") + { + theCircleAxis = G4ThreeVector(0., 1., 0.); + theDirInPlane = G4ThreeVector(1., 0., 0.); + theAxis = kYAxis; + } + else if(tgrParam->GetParamType() == "CIRCLE_YZ") + { + theCircleAxis = G4ThreeVector(1., 0., 0.); + theDirInPlane = G4ThreeVector(0., 1., 0.); + theAxis = kXAxis; } } - if( theCircleAxis.mag() == 0. ) + if(theCircleAxis.mag() == 0.) { G4Exception("G4tgbPlaceParamCircle::G4tgbPlaceParamCircle()", "InvalidSetup", FatalException, "Circle axis is zero !"); @@ -98,56 +98,53 @@ G4tgbPlaceParamCircle( G4tgrPlaceParameterisation* tgrParam ) theAxis = kZAxis; theNCopies = G4int(tgrParam->GetExtraData()[0]); - theStep = tgrParam->GetExtraData()[1]; - theOffset = tgrParam->GetExtraData()[2]; - theRadius = tgrParam->GetExtraData()[3]; + theStep = tgrParam->GetExtraData()[1]; + theOffset = tgrParam->GetExtraData()[2]; + theRadius = tgrParam->GetExtraData()[3]; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbPlaceParamCircle::G4tgbPlaceParamCircle():" << G4endl << " param type " << tgrParam->GetParamType() << G4endl - << " no copies - " << theNCopies << G4endl - << " step - " << theStep << G4endl - << " offset - " << theOffset << G4endl - << " radius - " << theRadius << G4endl - << " circle axis - " << theCircleAxis << G4endl - << " dir in plane - " << theDirInPlane << G4endl; + << " no copies - " << theNCopies << G4endl << " step - " + << theStep << G4endl << " offset - " << theOffset << G4endl + << " radius - " << theRadius << G4endl << " circle axis - " + << theCircleAxis << G4endl << " dir in plane - " << theDirInPlane + << G4endl; } #endif } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgbPlaceParamCircle:: -ComputeTransformation(const G4int copyNo, G4VPhysicalVolume *physVol) const -{ - G4double posi = theOffset + copyNo*theStep; +ComputeTransformation(const G4int copyNo, G4VPhysicalVolume* physVol) const +{ + G4double posi = theOffset + copyNo * theStep; G4ThreeVector origin = theDirInPlane * theRadius; - origin.rotate( posi, theCircleAxis ); + origin.rotate(posi, theCircleAxis); //----- Calculate rotation matrix (so that all volumes point to the centre) G4RotationMatrix rm; - rm.rotate( -posi, theCircleAxis ); + rm.rotate(-posi, theCircleAxis); //----- Set translation and rotation physVol->SetTranslation(origin); G4RotationMatrix* pvRm = physVol->GetRotation(); - if( pvRm == 0 ) + if(pvRm == nullptr) { pvRm = new G4RotationMatrix; } - *pvRm = *theRotationMatrix * rm; + *pvRm = *theRotationMatrix * rm; physVol->SetRotation(pvRm); - physVol->SetCopyNo( copyNo ); + physVol->SetCopyNo(copyNo); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << " G4tgbPlaceParamCircle::ComputeTransformation():" - << physVol->GetName() << G4endl - << " no copies - " << theNCopies << G4endl - << " centre - " << origin << G4endl + G4cout << " G4tgbPlaceParamCircle::ComputeTransformation():" + << physVol->GetName() << G4endl << " no copies - " << theNCopies + << G4endl << " centre - " << origin << G4endl << " rotation-matrix - " << *pvRm << G4endl; } #endif diff --git a/source/persistency/ascii/src/G4tgbPlaceParamLinear.cc b/source/persistency/ascii/src/G4tgbPlaceParamLinear.cc index cf2a1e6e5c..d486ce3d3d 100644 --- a/source/persistency/ascii/src/G4tgbPlaceParamLinear.cc +++ b/source/persistency/ascii/src/G4tgbPlaceParamLinear.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbPlaceParamLinear implementation // -// -// -// class G4tgbPlaceParamLinear - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbPlaceParamLinear.hh" #include "G4RotationMatrix.hh" @@ -38,42 +34,46 @@ #include "G4tgrMessenger.hh" #include "G4tgrPlaceParameterisation.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbPlaceParamLinear::~G4tgbPlaceParamLinear() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbPlaceParamLinear:: -G4tgbPlaceParamLinear( G4tgrPlaceParameterisation* tgrParam ) +G4tgbPlaceParamLinear(G4tgrPlaceParameterisation* tgrParam) : G4tgbPlaceParameterisation(tgrParam) { - //---- Get translation and rotation - if( tgrParam->GetParamType() == "LINEAR" ) + //---- Get translation and rotation + if(tgrParam->GetParamType() == "LINEAR") { - CheckNExtraData( tgrParam, 6, WLSIZE_EQ, "G4tgbPlaceParamLinear:"); - theDirection = G4ThreeVector( tgrParam->GetExtraData()[3], - tgrParam->GetExtraData()[4], - tgrParam->GetExtraData()[5] ); + CheckNExtraData(tgrParam, 6, WLSIZE_EQ, "G4tgbPlaceParamLinear:"); + theDirection = + G4ThreeVector(tgrParam->GetExtraData()[3], tgrParam->GetExtraData()[4], + tgrParam->GetExtraData()[5]); theAxis = kZAxis; } else { - CheckNExtraData( tgrParam, 3, WLSIZE_EQ, "G4tgbPlaceParamLinear:"); - if( tgrParam->GetParamType() == "LINEAR_X" ) { - theDirection = G4ThreeVector(1.,0.,0.); - theAxis = kXAxis; - } else if( tgrParam->GetParamType() == "LINEAR_Y" ) { - theDirection = G4ThreeVector(0.,1.,0.); - theAxis = kYAxis; - } else if( tgrParam->GetParamType() == "LINEAR_Z" ) { - theDirection = G4ThreeVector(0.,0.,1.); - theAxis = kZAxis; + CheckNExtraData(tgrParam, 3, WLSIZE_EQ, "G4tgbPlaceParamLinear:"); + if(tgrParam->GetParamType() == "LINEAR_X") + { + theDirection = G4ThreeVector(1., 0., 0.); + theAxis = kXAxis; + } + else if(tgrParam->GetParamType() == "LINEAR_Y") + { + theDirection = G4ThreeVector(0., 1., 0.); + theAxis = kYAxis; + } + else if(tgrParam->GetParamType() == "LINEAR_Z") + { + theDirection = G4ThreeVector(0., 0., 1.); + theAxis = kZAxis; } } - if( theDirection.mag() == 0. ) + if(theDirection.mag() == 0.) { G4Exception("G4tgbPlaceParamLinear::G4tgbPlaceParamLinear()", "InvalidSetup", FatalException, "Direction is zero !"); @@ -84,43 +84,40 @@ G4tgbPlaceParamLinear( G4tgrPlaceParameterisation* tgrParam ) } theNCopies = G4int(tgrParam->GetExtraData()[0]); - theStep = tgrParam->GetExtraData()[1]; - theOffset = tgrParam->GetExtraData()[2]; + theStep = tgrParam->GetExtraData()[1]; + theOffset = tgrParam->GetExtraData()[2]; + + theTranslation = G4ThreeVector(0., 0., 0.) + theOffset * theDirection; - theTranslation = G4ThreeVector(0.,0.,0.)+theOffset*theDirection; - #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbPlaceParamLinear::G4tgbPlaceParamLinear(): " << " param type " << tgrParam->GetParamType() << G4endl - << " N copies " << theNCopies << G4endl - << " step " << theStep << G4endl - << " offset " << theOffset << G4endl - << " translation " << theTranslation << G4endl - << " direction " << theDirection << G4endl - << " axis " << theAxis << G4endl; - } + << " N copies " << theNCopies << G4endl << " step " << theStep + << G4endl << " offset " << theOffset << G4endl << " translation " + << theTranslation << G4endl << " direction " << theDirection + << G4endl << " axis " << theAxis << G4endl; + } #endif } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgbPlaceParamLinear:: -ComputeTransformation(const G4int copyNo, G4VPhysicalVolume *physVol) const +ComputeTransformation(const G4int copyNo, G4VPhysicalVolume* physVol) const { - G4ThreeVector origin = theTranslation + copyNo*theStep*theDirection; + G4ThreeVector origin = theTranslation + copyNo * theStep * theDirection; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) - { + if(G4tgrMessenger::GetVerboseLevel() >= 3) + { G4cout << " G4tgbPlaceParamLinear::ComputeTransformation() -" - << physVol->GetName() << G4endl - << " copyNo " << copyNo << " pos " << origin << G4endl; + << physVol->GetName() << G4endl << " copyNo " << copyNo << " pos " + << origin << G4endl; } #endif //----- Set traslation and rotation physVol->SetTranslation(origin); - physVol->SetCopyNo( copyNo ); - physVol->SetRotation( theRotationMatrix ); + physVol->SetCopyNo(copyNo); + physVol->SetRotation(theRotationMatrix); } diff --git a/source/persistency/ascii/src/G4tgbPlaceParamSquare.cc b/source/persistency/ascii/src/G4tgbPlaceParamSquare.cc index 16f775bba2..b44c5dcbc8 100644 --- a/source/persistency/ascii/src/G4tgbPlaceParamSquare.cc +++ b/source/persistency/ascii/src/G4tgbPlaceParamSquare.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbPlaceParamSquare implementation // -// -// -// class G4tgbPlaceParamSquare - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbPlaceParamSquare.hh" #include "G4RotationMatrix.hh" @@ -38,53 +34,52 @@ #include "G4tgrMessenger.hh" #include "G4tgrPlaceParameterisation.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbPlaceParamSquare::~G4tgbPlaceParamSquare() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbPlaceParamSquare:: -G4tgbPlaceParamSquare( G4tgrPlaceParameterisation* tgrParam ) +G4tgbPlaceParamSquare(G4tgrPlaceParameterisation* tgrParam) : G4tgbPlaceParameterisation(tgrParam) { - //---- Get translation and rotation - if( tgrParam->GetParamType() == "SQUARE" ) + //---- Get translation and rotation + if(tgrParam->GetParamType() == "SQUARE") { - CheckNExtraData( tgrParam, 12, WLSIZE_EQ, "G4tgbPlaceParamSquare:"); - theDirection1 = G4ThreeVector( tgrParam->GetExtraData()[6], - tgrParam->GetExtraData()[7], - tgrParam->GetExtraData()[8] ); - theDirection2 = G4ThreeVector( tgrParam->GetExtraData()[9], - tgrParam->GetExtraData()[10], - tgrParam->GetExtraData()[11] ); + CheckNExtraData(tgrParam, 12, WLSIZE_EQ, "G4tgbPlaceParamSquare:"); + theDirection1 = + G4ThreeVector(tgrParam->GetExtraData()[6], tgrParam->GetExtraData()[7], + tgrParam->GetExtraData()[8]); + theDirection2 = + G4ThreeVector(tgrParam->GetExtraData()[9], tgrParam->GetExtraData()[10], + tgrParam->GetExtraData()[11]); theAxis = kZAxis; } else { - CheckNExtraData( tgrParam, 6, WLSIZE_EQ, "G4tgbPlaceParamSquare:"); - if( tgrParam->GetParamType() == "SQUARE_XY" ) + CheckNExtraData(tgrParam, 6, WLSIZE_EQ, "G4tgbPlaceParamSquare:"); + if(tgrParam->GetParamType() == "SQUARE_XY") { - theDirection1 = G4ThreeVector(1.,0.,0.); - theDirection2 = G4ThreeVector(0.,1.,0.); - theAxis = kZAxis; + theDirection1 = G4ThreeVector(1., 0., 0.); + theDirection2 = G4ThreeVector(0., 1., 0.); + theAxis = kZAxis; } - else if( tgrParam->GetParamType() == "SQUARE_YZ" ) + else if(tgrParam->GetParamType() == "SQUARE_YZ") { - theDirection1 = G4ThreeVector(0.,1.,0.); - theDirection2 = G4ThreeVector(0.,0.,1.); - theAxis = kXAxis; + theDirection1 = G4ThreeVector(0., 1., 0.); + theDirection2 = G4ThreeVector(0., 0., 1.); + theAxis = kXAxis; } - else if( tgrParam->GetParamType() == "SQUARE_XZ" ) + else if(tgrParam->GetParamType() == "SQUARE_XZ") { - theDirection1 = G4ThreeVector(1.,0.,0.); - theDirection2 = G4ThreeVector(0.,0.,1.); - theAxis = kYAxis; + theDirection1 = G4ThreeVector(1., 0., 0.); + theDirection2 = G4ThreeVector(0., 0., 1.); + theAxis = kYAxis; } } - if( theDirection1.mag() == 0. ) + if(theDirection1.mag() == 0.) { G4Exception("G4tgbPlaceParamSquare::G4tgbPlaceParamSquare()", "InvalidSetup", FatalException, "Direction1 is zero !"); @@ -93,7 +88,7 @@ G4tgbPlaceParamSquare( G4tgrPlaceParameterisation* tgrParam ) { theDirection1 /= theDirection1.mag(); } - if( theDirection2.mag() == 0. ) + if(theDirection2.mag() == 0.) { G4Exception("G4tgbPlaceParamSquare::G4tgbPlaceParamSquare()", "InvalidSetup", FatalException, "Direction2 is zero !"); @@ -102,67 +97,61 @@ G4tgbPlaceParamSquare( G4tgrPlaceParameterisation* tgrParam ) { theDirection2 /= theDirection2.mag(); } - + theNCopies1 = G4int(tgrParam->GetExtraData()[0]); theNCopies2 = G4int(tgrParam->GetExtraData()[1]); - theStep1 = tgrParam->GetExtraData()[2]; - theStep2 = tgrParam->GetExtraData()[3]; - theOffset1 = tgrParam->GetExtraData()[4]; - theOffset2 = tgrParam->GetExtraData()[5]; + theStep1 = tgrParam->GetExtraData()[2]; + theStep2 = tgrParam->GetExtraData()[3]; + theOffset1 = tgrParam->GetExtraData()[4]; + theOffset2 = tgrParam->GetExtraData()[5]; + + theNCopies = theNCopies1 * theNCopies2; + theTranslation = theOffset1 * theDirection1 + theOffset2 * theDirection2; - theNCopies = theNCopies1 * theNCopies2; - theTranslation = theOffset1*theDirection1 + theOffset2*theDirection2; - #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) - G4cout << "G4tgbPlaceParamSquare: no copies " - << theNCopies << " = " << theNCopies1 - << " X " << theNCopies2 << G4endl - << " offset1 " << theOffset1 << G4endl - << " offset2 " << theOffset1 << G4endl - << " step1 " << theStep1 << G4endl - << " step2 " << theStep2 << G4endl - << " direction1 " << theDirection1 << G4endl - << " direction2 " << theDirection2 << G4endl - << " translation " << theTranslation << G4endl; + if(G4tgrMessenger::GetVerboseLevel() >= 2) + G4cout << "G4tgbPlaceParamSquare: no copies " << theNCopies << " = " + << theNCopies1 << " X " << theNCopies2 << G4endl << " offset1 " + << theOffset1 << G4endl << " offset2 " << theOffset1 << G4endl + << " step1 " << theStep1 << G4endl << " step2 " << theStep2 << G4endl + << " direction1 " << theDirection1 << G4endl << " direction2 " + << theDirection2 << G4endl << " translation " << theTranslation + << G4endl; #endif } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgbPlaceParamSquare:: -ComputeTransformation(const G4int copyNo, G4VPhysicalVolume *physVol) const +ComputeTransformation(const G4int copyNo, G4VPhysicalVolume* physVol) const { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << " G4tgbPlaceParamSquare::ComputeTransformation():" - << physVol->GetName() << G4endl - << " no copies " << theNCopies << G4endl - << " offset1 " << theOffset1 << G4endl - << " offset2 " << theOffset2 << G4endl - << " step1 " << theStep1 << G4endl + G4cout << " G4tgbPlaceParamSquare::ComputeTransformation():" + << physVol->GetName() << G4endl << " no copies " << theNCopies + << G4endl << " offset1 " << theOffset1 << G4endl << " offset2 " + << theOffset2 << G4endl << " step1 " << theStep1 << G4endl << " step2 " << theStep2 << G4endl; } #endif - G4int copyNo1 = copyNo%theNCopies1; - G4int copyNo2 = G4int(copyNo/theNCopies1); - G4double posi1 = copyNo1*theStep1; - G4double posi2 = copyNo2*theStep2; - G4ThreeVector origin = posi1*theDirection1+ posi2*theDirection2; + G4int copyNo1 = copyNo % theNCopies1; + G4int copyNo2 = G4int(copyNo / theNCopies1); + G4double posi1 = copyNo1 * theStep1; + G4double posi2 = copyNo2 * theStep2; + G4ThreeVector origin = posi1 * theDirection1 + posi2 * theDirection2; origin += theTranslation; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << " G4tgbPlaceParamSquare::ComputeTransformation() - " - << copyNo << " = " << copyNo1 << ", X " << copyNo2 << G4endl + G4cout << " G4tgbPlaceParamSquare::ComputeTransformation() - " << copyNo + << " = " << copyNo1 << ", X " << copyNo2 << G4endl << " pos: " << origin << ", axis: " << theAxis << G4endl; } #endif //----- Set traslation and rotation physVol->SetTranslation(origin); - physVol->SetCopyNo( copyNo ); - physVol->SetRotation( theRotationMatrix ); + physVol->SetCopyNo(copyNo); + physVol->SetRotation(theRotationMatrix); } diff --git a/source/persistency/ascii/src/G4tgbPlaceParameterisation.cc b/source/persistency/ascii/src/G4tgbPlaceParameterisation.cc index 00edc5d36a..8074673d58 100644 --- a/source/persistency/ascii/src/G4tgbPlaceParameterisation.cc +++ b/source/persistency/ascii/src/G4tgbPlaceParameterisation.cc @@ -23,13 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbPlaceParameterisation implementation // -// -// class G4tgbPlaceParameterisation - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrPlaceParameterisation.hh" #include "G4tgbPlaceParamCircle.hh" @@ -39,42 +36,45 @@ #include "G4tgbRotationMatrixMgr.hh" #include "G4UIcommand.hh" - +// -------------------------------------------------------------------- G4tgbPlaceParameterisation:: -G4tgbPlaceParameterisation( G4tgrPlaceParameterisation* tgrParam) - : theNCopies(0), theAxis(kUndefined) +G4tgbPlaceParameterisation(G4tgrPlaceParameterisation* tgrParam) { - theRotationMatrix = G4tgbRotationMatrixMgr::GetInstance() - ->FindOrBuildG4RotMatrix( tgrParam->GetRotMatName() ); + theRotationMatrix = + G4tgbRotationMatrixMgr::GetInstance()->FindOrBuildG4RotMatrix( + tgrParam->GetRotMatName()); } +// -------------------------------------------------------------------- G4tgbPlaceParameterisation::~G4tgbPlaceParameterisation() { delete theRotationMatrix; } -void G4tgbPlaceParameterisation:: -ComputeTransformation(const G4int ,G4VPhysicalVolume *) const +// -------------------------------------------------------------------- +void G4tgbPlaceParameterisation::ComputeTransformation(const G4int, + G4VPhysicalVolume*) const { } +// -------------------------------------------------------------------- void G4tgbPlaceParameterisation:: -CheckNExtraData( G4tgrPlaceParameterisation* tgrParam, G4int nWcheck, - WLSIZEtype st, const G4String& methodName ) +CheckNExtraData(G4tgrPlaceParameterisation* tgrParam, G4int nWcheck, + WLSIZEtype st, const G4String& methodName) { std::vector extraData = tgrParam->GetExtraData(); - G4int ndata = extraData.size(); + G4int ndata = extraData.size(); G4String outStr = methodName + " " + tgrParam->GetType() + " "; - G4bool isOK = G4tgrUtils::CheckListSize( ndata, nWcheck, st, outStr ); + G4bool isOK = G4tgrUtils::CheckListSize(ndata, nWcheck, st, outStr); - if( !isOK ) - { - G4String chartmp = G4UIcommand::ConvertToString( nWcheck ); + if(!isOK) + { + G4String chartmp = G4UIcommand::ConvertToString(nWcheck); outStr += chartmp + G4String(" words"); G4cerr << outStr; G4cerr << " NUMBER OF WORDS " << ndata << G4endl; - G4Exception("G4tgbPlaceParameterisation::CheckNExtraData", - "InvalidData", FatalException, "Invalid data size."); + G4Exception("G4tgbPlaceParameterisation::CheckNExtraData", "InvalidData", + FatalException, "Invalid data size."); } } diff --git a/source/persistency/ascii/src/G4tgbRotationMatrix.cc b/source/persistency/ascii/src/G4tgbRotationMatrix.cc index 2a39d41ffa..fce7258c27 100644 --- a/source/persistency/ascii/src/G4tgbRotationMatrix.cc +++ b/source/persistency/ascii/src/G4tgbRotationMatrix.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbRotationMatrix implementation // -// -// -// class G4tgbRotationMatrix - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbRotationMatrix.hh" #include "G4RotationMatrix.hh" @@ -38,136 +34,135 @@ #include "G4tgrUtils.hh" #include "G4UIcommand.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbRotationMatrix::G4tgbRotationMatrix() - : theTgrRM(0) { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbRotationMatrix::~G4tgbRotationMatrix() { } - -// ------------------------------------------------------------------------- -G4tgbRotationMatrix::G4tgbRotationMatrix( G4tgrRotationMatrix* tgr ) +// -------------------------------------------------------------------- +G4tgbRotationMatrix::G4tgbRotationMatrix(G4tgrRotationMatrix* tgr) : theTgrRM(tgr) { } - // ------------------------------------------------------------------------- G4RotationMatrix* G4tgbRotationMatrix::BuildG4RotMatrix() { std::vector values = theTgrRM->GetValues(); - if( values.size() == 3 ) { - return BuildG4RotMatrixFrom3( values ); - } else if( values.size() == 6 ) { - return BuildG4RotMatrixFrom6( values ); - } else if( values.size() == 9 ) { - return BuildG4RotMatrixFrom9( values ); + if(values.size() == 3) + { + return BuildG4RotMatrixFrom3(values); + } + else if(values.size() == 6) + { + return BuildG4RotMatrixFrom6(values); + } + else if(values.size() == 9) + { + return BuildG4RotMatrixFrom9(values); } else { - G4String ErrMessage = "Number of values is: " - + G4UIcommand::ConvertToString(G4int(values.size())) - + G4String(". It should be 3, 6, or 9 !"); - G4Exception("G4tgbRotationMatrix::BuildG4RotMatrix()", - "InvalidData", FatalException, ErrMessage); + G4String ErrMessage = "Number of values is: " + + G4UIcommand::ConvertToString(G4int(values.size())) + + G4String(". It should be 3, 6, or 9 !"); + G4Exception("G4tgbRotationMatrix::BuildG4RotMatrix()", "InvalidData", + FatalException, ErrMessage); } - return 0; + return nullptr; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4RotationMatrix* -G4tgbRotationMatrix::BuildG4RotMatrixFrom3( std::vector& values ) +G4tgbRotationMatrix::BuildG4RotMatrixFrom3(std::vector& values) { G4RotationMatrix* rotMat = new G4RotationMatrix(); - rotMat->rotateX( values[0] ); - rotMat->rotateY( values[1] ); - rotMat->rotateZ( values[2] ); + rotMat->rotateX(values[0]); + rotMat->rotateY(values[1]); + rotMat->rotateZ(values[2]); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Constructing new G4RotationMatrix from 3 numbers " - << GetName() << " : " << *rotMat << G4endl; + G4cout << " Constructing new G4RotationMatrix from 3 numbers " << GetName() + << " : " << *rotMat << G4endl; } #endif return rotMat; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4RotationMatrix* -G4tgbRotationMatrix::BuildG4RotMatrixFrom6( std::vector& values ) +G4tgbRotationMatrix::BuildG4RotMatrixFrom6(std::vector& values) { G4double thetaX = values[0]; - G4double phiX = values[1]; + G4double phiX = values[1]; G4double thetaY = values[2]; - G4double phiY = values[3]; + G4double phiY = values[3]; G4double thetaZ = values[4]; - G4double phiZ = values[5]; + G4double phiZ = values[5]; // build the 3 axis from the values - G4ThreeVector colx(std::sin(thetaX)*std::cos(phiX), - std::sin(thetaX)*std::sin(phiX),std::cos(thetaX)); - G4ThreeVector coly(std::sin(thetaY)*std::cos(phiY), - std::sin(thetaY)*std::sin(phiY),std::cos(thetaY)); - G4ThreeVector colz(std::sin(thetaZ)*std::cos(phiZ), - std::sin(thetaZ)*std::sin(phiZ),std::cos(thetaZ)); + G4ThreeVector colx(std::sin(thetaX) * std::cos(phiX), + std::sin(thetaX) * std::sin(phiX), std::cos(thetaX)); + G4ThreeVector coly(std::sin(thetaY) * std::cos(phiY), + std::sin(thetaY) * std::sin(phiY), std::cos(thetaY)); + G4ThreeVector colz(std::sin(thetaZ) * std::cos(phiZ), + std::sin(thetaZ) * std::sin(phiZ), std::cos(thetaZ)); - // Now create a G4RotationMatrix (HepRotation), which can be left handed. - // This is not foreseen in CLHEP, but can be achieved using the - // constructor which does not check its input arguments! - - G4Rep3x3 rottemp(colx.x(),coly.x(),colz.x(), // matrix representation - colx.y(),coly.y(),colz.y(), // (inverted) - colx.z(),coly.z(),colz.z()); - - G4RotationMatrix* rotMat = new G4RotationMatrix(rottemp); - -#ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << " Constructing new G4RotationMatrix from 6 numbers " - << GetName() << " : " << *rotMat << G4endl; - } -#endif - - return rotMat; -} - -// ------------------------------------------------------------------------- -G4RotationMatrix* -G4tgbRotationMatrix::BuildG4RotMatrixFrom9( std::vector& values ) -{ - // build the 3 axis from the values - G4ThreeVector colx(values[0],values[1],values[2]); - G4ThreeVector coly(values[3],values[4],values[5]); - G4ThreeVector colz(values[6],values[7],values[8]); - - // Now create a G4RotationMatrix (HepRotation), which can be left handed. + // Now create a G4RotationMatrix (HepRotation), which can be left handed. // This is not foreseen in CLHEP, but can be achieved using the // constructor which does not check its input arguments! - G4Rep3x3 rottemp(colx.x(),coly.x(),colz.x(), // matrix representation - colx.y(),coly.y(),colz.y(), // (inverted) - colx.z(),coly.z(),colz.z()); - + G4Rep3x3 rottemp(colx.x(), coly.x(), colz.x(), // matrix representation + colx.y(), coly.y(), colz.y(), // (inverted) + colx.z(), coly.z(), colz.z()); + G4RotationMatrix* rotMat = new G4RotationMatrix(rottemp); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Constructing new G4RotationMatrix from 9 numbers " - << GetName() << " : " << *rotMat << G4endl; + G4cout << " Constructing new G4RotationMatrix from 6 numbers " << GetName() + << " : " << *rotMat << G4endl; + } +#endif + + return rotMat; +} + +// -------------------------------------------------------------------- +G4RotationMatrix* +G4tgbRotationMatrix::BuildG4RotMatrixFrom9(std::vector& values) +{ + // build the 3 axis from the values + G4ThreeVector colx(values[0], values[1], values[2]); + G4ThreeVector coly(values[3], values[4], values[5]); + G4ThreeVector colz(values[6], values[7], values[8]); + + // Now create a G4RotationMatrix (HepRotation), which can be left handed. + // This is not foreseen in CLHEP, but can be achieved using the + // constructor which does not check its input arguments! + + G4Rep3x3 rottemp(colx.x(), coly.x(), colz.x(), // matrix representation + colx.y(), coly.y(), colz.y(), // (inverted) + colx.z(), coly.z(), colz.z()); + + G4RotationMatrix* rotMat = new G4RotationMatrix(rottemp); + +#ifdef G4VERBOSE + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << " Constructing new G4RotationMatrix from 9 numbers " << GetName() + << " : " << *rotMat << G4endl; } #endif diff --git a/source/persistency/ascii/src/G4tgbRotationMatrixMgr.cc b/source/persistency/ascii/src/G4tgbRotationMatrixMgr.cc index 9b2b9acfc8..0b5f00f4a4 100644 --- a/source/persistency/ascii/src/G4tgbRotationMatrixMgr.cc +++ b/source/persistency/ascii/src/G4tgbRotationMatrixMgr.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbRotationMatrixMgr implementation // -// -// -// class G4tgbRotationMatrixMgr - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbRotationMatrixMgr.hh" @@ -38,21 +34,18 @@ #include "G4tgrRotationMatrixFactory.hh" #include "G4tgrMessenger.hh" -// ------------------------------------------------------------------------- +G4ThreadLocal G4tgbRotationMatrixMgr* + G4tgbRotationMatrixMgr::theInstance = nullptr; -G4ThreadLocal G4tgbRotationMatrixMgr * G4tgbRotationMatrixMgr::theInstance = 0; - - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbRotationMatrixMgr::G4tgbRotationMatrixMgr() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbRotationMatrixMgr* G4tgbRotationMatrixMgr::GetInstance() { - if( !theInstance ) + if(theInstance == nullptr) { theInstance = new G4tgbRotationMatrixMgr; theInstance->CopyRotMats(); @@ -60,119 +53,108 @@ G4tgbRotationMatrixMgr* G4tgbRotationMatrixMgr::GetInstance() return theInstance; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbRotationMatrixMgr::~G4tgbRotationMatrixMgr() { - G4mstgbrotm::const_iterator tgbcite; - for( tgbcite = theTgbRotMats.begin(); - tgbcite != theTgbRotMats.end(); tgbcite++) + for(auto tgbcite = theTgbRotMats.cbegin(); + tgbcite != theTgbRotMats.cend(); ++tgbcite) { - delete (*tgbcite).second; + delete(*tgbcite).second; } theTgbRotMats.clear(); delete theInstance; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgbRotationMatrixMgr::CopyRotMats() { G4mstgrrotm tgrRotms = G4tgrRotationMatrixFactory::GetInstance()->GetRotMatMap(); - G4mstgrrotm::iterator cite; - for( cite = tgrRotms.begin(); cite != tgrRotms.end(); cite++ ) + for(auto cite = tgrRotms.cbegin(); cite != tgrRotms.cend(); ++cite) { - G4tgrRotationMatrix* tgr = (*cite).second; - G4tgbRotationMatrix* tgb = new G4tgbRotationMatrix( tgr ); + G4tgrRotationMatrix* tgr = (*cite).second; + G4tgbRotationMatrix* tgb = new G4tgbRotationMatrix(tgr); theTgbRotMats[tgb->GetName()] = tgb; } } - -// ------------------------------------------------------------------------- -G4RotationMatrix* -G4tgbRotationMatrixMgr::FindOrBuildG4RotMatrix(const G4String& name) +// -------------------------------------------------------------------- +G4RotationMatrix* G4tgbRotationMatrixMgr::FindOrBuildG4RotMatrix( + const G4String& name) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << " G4tgbRotationMatrixMgr::FindOrBuildG4RotMatrix() - " - << name << G4endl; + G4cout << " G4tgbRotationMatrixMgr::FindOrBuildG4RotMatrix() - " << name + << G4endl; } #endif - G4RotationMatrix* g4rotm = FindG4RotMatrix( name ); - if( g4rotm == 0 ) + G4RotationMatrix* g4rotm = FindG4RotMatrix(name); + if(g4rotm == nullptr) { - G4tgbRotationMatrix* hrotm = FindOrBuildTgbRotMatrix( name ); + G4tgbRotationMatrix* hrotm = FindOrBuildTgbRotMatrix(name); // GetRotMatrix() never returns 0, otherwise if not found, it crashes g4rotm = hrotm->BuildG4RotMatrix(); } return g4rotm; -} +} - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4RotationMatrix* G4tgbRotationMatrixMgr::FindG4RotMatrix(const G4String& name) { - G4RotationMatrix* g4rotm = 0; + G4RotationMatrix* g4rotm = nullptr; - G4msg4rotm::const_iterator cite = theG4RotMats.find( name ); - if( cite != theG4RotMats.end() ) + G4msg4rotm::const_iterator cite = theG4RotMats.find(name); + if(cite != theG4RotMats.cend()) { g4rotm = (*cite).second; - } + } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbRotationMatrixMgr::FindG4RotMatrix(): " << G4endl << " Name: " << name << " = " << g4rotm << G4endl; } #endif - + return g4rotm; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbRotationMatrix* G4tgbRotationMatrixMgr::FindOrBuildTgbRotMatrix(const G4String& name) { - G4tgbRotationMatrix* rotm = FindTgbRotMatrix( name ); + G4tgbRotationMatrix* rotm = FindTgbRotMatrix(name); - if( rotm == 0 ) + if(rotm == nullptr) { G4String ErrMessage = "Rotation Matrix " + name + " not found !"; G4Exception("G4tgbRotationMatrixFactory::FindOrBuildRotMatrix()", - "InvalidSetup", FatalException, ErrMessage); + "InvalidSetup", FatalException, ErrMessage); } return rotm; } - -// ------------------------------------------------------------------------- -G4tgbRotationMatrix* -G4tgbRotationMatrixMgr::FindTgbRotMatrix(const G4String& name) +// -------------------------------------------------------------------- +G4tgbRotationMatrix* G4tgbRotationMatrixMgr::FindTgbRotMatrix( + const G4String& name) { - G4tgbRotationMatrix* rotm = 0; + G4tgbRotationMatrix* rotm = nullptr; - G4mstgbrotm::const_iterator cite = theTgbRotMats.find( name ); - if( cite != theTgbRotMats.end() ) + G4mstgbrotm::const_iterator cite = theTgbRotMats.find(name); + if(cite != theTgbRotMats.cend()) { rotm = (*cite).second; } return rotm; } - -// ------------------------------------------------------------------------- -std::ostream& operator<<(std::ostream& os , const G4RotationMatrix & rot) +// -------------------------------------------------------------------- +std::ostream& operator<<(std::ostream& os, const G4RotationMatrix& rot) { - os << "[ " - << rot.thetaX()/deg << '\t' << rot.phiX()/deg << '\t' - << rot.thetaY()/deg << '\t' << rot.phiY()/deg << '\t' - << rot.thetaZ()/deg << '\t' << rot.phiZ()/deg << " ]" - << G4endl; + os << "[ " << rot.thetaX() / deg << '\t' << rot.phiX() / deg << '\t' + << rot.thetaY() / deg << '\t' << rot.phiY() / deg << '\t' + << rot.thetaZ() / deg << '\t' << rot.phiZ() / deg << " ]" << G4endl; return os; } diff --git a/source/persistency/ascii/src/G4tgbVolume.cc b/source/persistency/ascii/src/G4tgbVolume.cc index 87d3c9febb..5f14eea307 100644 --- a/source/persistency/ascii/src/G4tgbVolume.cc +++ b/source/persistency/ascii/src/G4tgbVolume.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbVolume implementation // -// -// -// class G4tgbVolume - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbVolume.hh" @@ -105,55 +101,52 @@ #include "G4PhysicalConstants.hh" #include "G4SystemOfUnits.hh" -//------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbVolume::G4tgbVolume() - : theTgrVolume(0), theG4AssemblyVolume(0) { } - -//------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbVolume::~G4tgbVolume() { } - -//------------------------------------------------------------------- -G4tgbVolume::G4tgbVolume( G4tgrVolume* vol) +// -------------------------------------------------------------------- +G4tgbVolume::G4tgbVolume(G4tgrVolume* vol) { theTgrVolume = vol; - theG4AssemblyVolume = 0; } - -//------------------------------------------------------------------- -void G4tgbVolume::ConstructG4Volumes( const G4tgrPlace* place, - const G4LogicalVolume* parentLV ) +// -------------------------------------------------------------------- +void G4tgbVolume::ConstructG4Volumes(const G4tgrPlace* place, + const G4LogicalVolume* parentLV) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << G4endl << "@@@ G4tgbVolume::ConstructG4Volumes - " << GetName() << G4endl; - if( place && parentLV ) G4cout << " place in LV " << parentLV->GetName() << G4endl; + G4cout << G4endl << "@@@ G4tgbVolume::ConstructG4Volumes - " << GetName() + << G4endl; + if(place && parentLV) + G4cout << " place in LV " << parentLV->GetName() << G4endl; } #endif - G4tgbVolumeMgr* g4vmgr = G4tgbVolumeMgr::GetInstance(); - G4LogicalVolume* logvol = g4vmgr->FindG4LogVol( GetName() ); - G4bool bFirstCopy = false; - G4VPhysicalVolume* physvol = 0; - if( logvol == 0 ) + G4tgbVolumeMgr* g4vmgr = G4tgbVolumeMgr::GetInstance(); + G4LogicalVolume* logvol = g4vmgr->FindG4LogVol(GetName()); + G4bool bFirstCopy = false; + G4VPhysicalVolume* physvol = nullptr; + if(logvol == nullptr) { bFirstCopy = true; - if( theTgrVolume->GetType() != "VOLDivision" ) + if(theTgrVolume->GetType() != "VOLDivision") { //--- If first time build solid and LogVol - G4VSolid* solid = FindOrConstructG4Solid( theTgrVolume->GetSolid() ); - if( solid != 0 ) // for G4AssemblyVolume it is 0 + G4VSolid* solid = FindOrConstructG4Solid(theTgrVolume->GetSolid()); + if(solid != nullptr) // for G4AssemblyVolume it is nullptr { - g4vmgr->RegisterMe( solid ); - logvol = ConstructG4LogVol( solid ); - g4vmgr->RegisterMe( logvol ); - g4vmgr->RegisterChildParentLVs( logvol, parentLV ); + g4vmgr->RegisterMe(solid); + logvol = ConstructG4LogVol(solid); + g4vmgr->RegisterMe(logvol); + g4vmgr->RegisterChildParentLVs(logvol, parentLV); } } else @@ -162,18 +155,18 @@ void G4tgbVolume::ConstructG4Volumes( const G4tgrPlace* place, } } //--- Construct PhysVol - physvol = ConstructG4PhysVol( place, logvol, parentLV ); + physvol = ConstructG4PhysVol(place, logvol, parentLV); - if( physvol != 0 ) // 0 for G4AssemblyVolumes + if(physvol != nullptr) // nullptr for G4AssemblyVolumes { - g4vmgr->RegisterMe( physvol ); + g4vmgr->RegisterMe(physvol); - if( logvol == 0 ) // case of divisions + if(logvol == nullptr) // case of divisions { logvol = physvol->GetLogicalVolume(); } } - else + else { return; } @@ -181,627 +174,672 @@ void G4tgbVolume::ConstructG4Volumes( const G4tgrPlace* place, //--- If first copy build children placements in this LogVol if(bFirstCopy) { - std::pair children - = G4tgrVolumeMgr::GetInstance()->GetChildren( GetName() ); - G4mmapspl::iterator cite; - for( cite = children.first; cite != children.second; cite++ ) + std::pair children = + G4tgrVolumeMgr::GetInstance()->GetChildren(GetName()); + for(auto cite = children.first; cite != children.second; ++cite) { - //----- Call G4tgrPlace ->constructG4Volumes + //----- Call G4tgrPlace ->constructG4Volumes //---- find G4tgbVolume corresponding to the G4tgrVolume // pointed by G4tgrPlace - G4tgrPlace* pl = const_cast((*cite).second); - G4tgbVolume* svol = g4vmgr->FindVolume( pl->GetVolume()->GetName() ); + G4tgrPlace* pl = const_cast((*cite).second); + G4tgbVolume* svol = g4vmgr->FindVolume(pl->GetVolume()->GetName()); //--- find copyNo #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << " G4tgbVolume::ConstructG4Volumes - construct daughter " << pl->GetVolume()->GetName() << " # " << pl->GetCopyNo() << G4endl; + G4cout << " G4tgbVolume::ConstructG4Volumes - construct daughter " + << pl->GetVolume()->GetName() << " # " << pl->GetCopyNo() + << G4endl; } #endif - svol->ConstructG4Volumes( pl, logvol ); + svol->ConstructG4Volumes(pl, logvol); } } - } - - -//------------------------------------------------------------------- -G4VSolid* G4tgbVolume::FindOrConstructG4Solid( const G4tgrSolid* sol ) +// -------------------------------------------------------------------- +G4VSolid* G4tgbVolume::FindOrConstructG4Solid(const G4tgrSolid* sol) { - G4double angularTolerance = G4GeometryTolerance::GetInstance() - ->GetAngularTolerance(); + G4double angularTolerance = + G4GeometryTolerance::GetInstance()->GetAngularTolerance(); - if( sol == 0 ) { return 0; } + if(sol == nullptr) + { + return nullptr; + } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbVolume::FindOrConstructG4Solid():" << G4endl - << " SOLID = " << sol << G4endl - << " " << sol->GetName() << " of type " << sol->GetType() - << G4endl; + << " SOLID = " << sol << G4endl << " " << sol->GetName() + << " of type " << sol->GetType() << G4endl; } -#endif +#endif //----- Check if solid exists already - G4VSolid* solid = G4tgbVolumeMgr::GetInstance() - ->FindG4Solid( sol->GetName() ); - if( solid ) { return solid; } + G4VSolid* solid = G4tgbVolumeMgr::GetInstance()->FindG4Solid(sol->GetName()); + if(solid != nullptr) + { + return solid; + } // Give 'sol' as Boolean solids needs to call this method twice #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbVolume::FindOrConstructG4Solid() - " << sol->GetSolidParams().size() << G4endl; } #endif - + std::vector solParam; // In case of BOOLEAN solids, solidParams are taken from components - if( sol->GetSolidParams().size() == 1) - { - solParam = * sol->GetSolidParams()[ 0 ]; + if(sol->GetSolidParams().size() == 1) + { + solParam = *sol->GetSolidParams()[0]; } //----------- instantiate the appropiate G4VSolid type G4String stype = sol->GetType(); G4String sname = sol->GetName(); - if( stype == "BOX" ) + if(stype == "BOX") { - CheckNoSolidParams( stype, 3, solParam.size() ); - solid = new G4Box( sname, solParam[0], solParam[1], solParam[2] ); - + CheckNoSolidParams(stype, 3, solParam.size()); + solid = new G4Box(sname, solParam[0], solParam[1], solParam[2]); } - else if( stype == "TUBE" ) + else if(stype == "TUBE") { - CheckNoSolidParams( stype, 3, solParam.size() ); - solid = new G4Tubs( sname, solParam[0], solParam[1], solParam[2], - 0.*deg, 360.*deg ); + CheckNoSolidParams(stype, 3, solParam.size()); + solid = new G4Tubs(sname, solParam[0], solParam[1], solParam[2], 0. * deg, + 360. * deg); } - else if( stype == "TUBS" ) + else if(stype == "TUBS") { - CheckNoSolidParams( stype, 5, solParam.size() ); + CheckNoSolidParams(stype, 5, solParam.size()); G4double phiDelta = solParam[4]; - if( std::fabs(phiDelta - twopi) < angularTolerance ) { phiDelta = twopi; } - solid = new G4Tubs( sname, solParam[0], solParam[1], solParam[2], - solParam[3], phiDelta ); - } - else if( stype == "TRAP" ) - { - if( solParam.size() == 11 ) + if(std::fabs(phiDelta - twopi) < angularTolerance) { - solid = new G4Trap( sname, solParam[0], solParam[1], solParam[2], - solParam[3], solParam[4], solParam[5], solParam[6], - solParam[7], solParam[8], solParam[9], solParam[10] ); + phiDelta = twopi; } - else if( solParam.size() == 4 ) + solid = new G4Tubs(sname, solParam[0], solParam[1], solParam[2], + solParam[3], phiDelta); + } + else if(stype == "TRAP") + { + if(solParam.size() == 11) { - solid = new G4Trap( sname, solParam[0], solParam[1]/deg, - solParam[2]/deg, solParam[3]); + solid = new G4Trap(sname, solParam[0], solParam[1], solParam[2], + solParam[3], solParam[4], solParam[5], solParam[6], + solParam[7], solParam[8], solParam[9], solParam[10]); + } + else if(solParam.size() == 4) + { + solid = new G4Trap(sname, solParam[0], solParam[1] / deg, + solParam[2] / deg, solParam[3]); } else { G4String ErrMessage1 = "Solid type " + stype; G4String ErrMessage2 = " should have 11 or 4 parameters,\n"; - G4String ErrMessage3 = "and it has " - + G4UIcommand::ConvertToString(G4int(solParam.size())); + G4String ErrMessage3 = + "and it has " + G4UIcommand::ConvertToString(G4int(solParam.size())); G4String ErrMessage = ErrMessage1 + ErrMessage2 + ErrMessage3 + " !"; - G4Exception("G4tgbVolume::FindOrConstructG4Solid()", - "InvalidSetup", FatalException, ErrMessage); + G4Exception("G4tgbVolume::FindOrConstructG4Solid()", "InvalidSetup", + FatalException, ErrMessage); return 0; } - } - else if( stype == "TRD" ) + else if(stype == "TRD") { - CheckNoSolidParams( stype, 5, solParam.size() ); - solid = new G4Trd( sname, solParam[0], solParam[1], solParam[2], - solParam[3], solParam[4] ); + CheckNoSolidParams(stype, 5, solParam.size()); + solid = new G4Trd(sname, solParam[0], solParam[1], solParam[2], solParam[3], + solParam[4]); } - else if( stype == "PARA" ) + else if(stype == "PARA") { - CheckNoSolidParams( stype, 6, solParam.size() ); - solid = new G4Para( sname, solParam[0], solParam[1], solParam[2], - solParam[3], solParam[4], solParam[5] ); + CheckNoSolidParams(stype, 6, solParam.size()); + solid = new G4Para(sname, solParam[0], solParam[1], solParam[2], + solParam[3], solParam[4], solParam[5]); } - else if( stype == "CONE" ) + else if(stype == "CONE") { - CheckNoSolidParams( stype, 5, solParam.size() ); - solid = new G4Cons( sname, solParam[0], solParam[1], solParam[2], - solParam[3], solParam[4], 0., 360.*deg); + CheckNoSolidParams(stype, 5, solParam.size()); + solid = new G4Cons(sname, solParam[0], solParam[1], solParam[2], + solParam[3], solParam[4], 0., 360. * deg); } - else if( stype == "CONS" ) + else if(stype == "CONS") { - CheckNoSolidParams( stype, 7, solParam.size() ); + CheckNoSolidParams(stype, 7, solParam.size()); G4double phiDelta = solParam[6]; - if( std::fabs(phiDelta - twopi) < angularTolerance ) { phiDelta = twopi; } - solid = new G4Cons( sname, solParam[0], solParam[1], solParam[2], - solParam[3], solParam[4], solParam[5], phiDelta); + if(std::fabs(phiDelta - twopi) < angularTolerance) + { + phiDelta = twopi; + } + solid = new G4Cons(sname, solParam[0], solParam[1], solParam[2], + solParam[3], solParam[4], solParam[5], phiDelta); } - else if( stype == "SPHERE" ) + else if(stype == "SPHERE") { - CheckNoSolidParams( stype, 6, solParam.size() ); + CheckNoSolidParams(stype, 6, solParam.size()); G4double phiDelta = solParam[3]; - if( std::fabs(phiDelta - twopi) < angularTolerance ) { phiDelta = twopi; } + if(std::fabs(phiDelta - twopi) < angularTolerance) + { + phiDelta = twopi; + } G4double thetaDelta = solParam[5]; - if( std::fabs(thetaDelta - pi) < angularTolerance ) { thetaDelta = pi; } - solid = new G4Sphere( sname, solParam[0], solParam[1], solParam[2], - phiDelta, solParam[4], thetaDelta); + if(std::fabs(thetaDelta - pi) < angularTolerance) + { + thetaDelta = pi; + } + solid = new G4Sphere(sname, solParam[0], solParam[1], solParam[2], phiDelta, + solParam[4], thetaDelta); } - else if( stype == "ORB" ) + else if(stype == "ORB") { - CheckNoSolidParams( stype, 1, solParam.size() ); - solid = new G4Orb( sname, solParam[0] ); + CheckNoSolidParams(stype, 1, solParam.size()); + solid = new G4Orb(sname, solParam[0]); } - else if( stype == "TORUS" ) + else if(stype == "TORUS") { - CheckNoSolidParams( stype, 5, solParam.size() ); + CheckNoSolidParams(stype, 5, solParam.size()); G4double phiDelta = solParam[4]; - if( std::fabs(phiDelta - twopi) < angularTolerance ) { phiDelta = twopi; } - solid = new G4Torus( sname, solParam[0], solParam[1], solParam[2], - solParam[3], phiDelta ); + if(std::fabs(phiDelta - twopi) < angularTolerance) + { + phiDelta = twopi; + } + solid = new G4Torus(sname, solParam[0], solParam[1], solParam[2], + solParam[3], phiDelta); } - else if( stype == "POLYCONE" ) + else if(stype == "POLYCONE") { - size_t nplanes = size_t(solParam[2]); + std::size_t nplanes = std::size_t(solParam[2]); G4bool genericPoly = false; - if( solParam.size() == 3+nplanes*3 ) - { + if(solParam.size() == 3 + nplanes * 3) + { genericPoly = false; } - else if( solParam.size() == 3+nplanes*2 ) - { + else if(solParam.size() == 3 + nplanes * 2) + { genericPoly = true; } else { G4String Err1 = "Solid type " + stype + " should have "; - G4String Err2 = G4UIcommand::ConvertToString(G4int(3+nplanes*3)) - + " (Z,Rmin,Rmax)\n"; - G4String Err3 = "or " + G4UIcommand::ConvertToString(G4int(3+nplanes*2)); + G4String Err2 = G4UIcommand::ConvertToString(G4int(3 + nplanes * 3)) + + " (Z,Rmin,Rmax)\n"; + G4String Err3 = + "or " + G4UIcommand::ConvertToString(G4int(3 + nplanes * 2)); G4String Err4 = " (RZ corners) parameters,\n"; - G4String Err5 = "and it has " - + G4UIcommand::ConvertToString(G4int(solParam.size())); + G4String Err5 = + "and it has " + G4UIcommand::ConvertToString(G4int(solParam.size())); G4String ErrMessage = Err1 + Err2 + Err3 + Err4 + Err5 + " !"; - G4Exception("G4tgbVolume::FindOrConstructG4Solid()", - "InvalidSetup", FatalException, ErrMessage); - return 0; + G4Exception("G4tgbVolume::FindOrConstructG4Solid()", "InvalidSetup", + FatalException, ErrMessage); + return nullptr; } - if( !genericPoly ) + if(!genericPoly) { - std::vector* z_p = new std::vector; + std::vector* z_p = new std::vector; std::vector* rmin_p = new std::vector; std::vector* rmax_p = new std::vector; - for( size_t ii = 0; ii < nplanes; ii++ ) + for(std::size_t ii = 0; ii < nplanes; ++ii) { - (*z_p).push_back( solParam[3+3*ii] ); - (*rmin_p).push_back( solParam[3+3*ii+1] ); - (*rmax_p).push_back( solParam[3+3*ii+2] ); + (*z_p).push_back(solParam[3 + 3 * ii]); + (*rmin_p).push_back(solParam[3 + 3 * ii + 1]); + (*rmax_p).push_back(solParam[3 + 3 * ii + 2]); } G4double phiTotal = solParam[1]; - if( std::fabs(phiTotal - twopi) < angularTolerance ) { phiTotal = twopi; } - solid = new G4Polycone( sname, solParam[0], phiTotal, // start,delta-phi - nplanes, // sections - &((*z_p)[0]), &((*rmin_p)[0]), &((*rmax_p)[0])); + if(std::fabs(phiTotal - twopi) < angularTolerance) + { + phiTotal = twopi; + } + solid = new G4Polycone(sname, solParam[0], phiTotal, // start,delta-phi + nplanes, // sections + &((*z_p)[0]), &((*rmin_p)[0]), &((*rmax_p)[0])); } else { std::vector* R_c = new std::vector; std::vector* Z_c = new std::vector; - for( size_t ii = 0; ii < nplanes; ii++ ) + for(size_t ii = 0; ii < nplanes; ii++) { - (*R_c).push_back( solParam[3+2*ii] ); - (*Z_c).push_back( solParam[3+2*ii+1] ); + (*R_c).push_back(solParam[3 + 2 * ii]); + (*Z_c).push_back(solParam[3 + 2 * ii + 1]); } G4double phiTotal = solParam[1]; - if( std::fabs(phiTotal - twopi) < angularTolerance ) { phiTotal = twopi; } - solid = new G4GenericPolycone( sname, - solParam[0], phiTotal, // start,delta-phi - nplanes, // sections + if(std::fabs(phiTotal - twopi) < angularTolerance) + { + phiTotal = twopi; + } + solid = + new G4GenericPolycone(sname, solParam[0], phiTotal, // start,delta-phi + nplanes, // sections &((*R_c)[0]), &((*Z_c)[0])); } - } - else if( stype == "POLYHEDRA" ) + else if(stype == "POLYHEDRA") { - size_t nplanes = size_t(solParam[3]); + std::size_t nplanes = std::size_t(solParam[3]); G4bool genericPoly = false; - if( solParam.size() == 4+nplanes*3 ) - { + if(solParam.size() == 4 + nplanes * 3) + { genericPoly = true; } - else if( solParam.size() == 4+nplanes*2 ) - { + else if(solParam.size() == 4 + nplanes * 2) + { genericPoly = false; } else { G4String Err1 = "Solid type " + stype + " should have "; - G4String Err2 = G4UIcommand::ConvertToString(G4int(4+nplanes*3)) - + " (Z,Rmin,Rmax)\n"; - G4String Err3 = "or " + G4UIcommand::ConvertToString(G4int(4+nplanes*2)); + G4String Err2 = G4UIcommand::ConvertToString(G4int(4 + nplanes * 3)) + + " (Z,Rmin,Rmax)\n"; + G4String Err3 = + "or " + G4UIcommand::ConvertToString(G4int(4 + nplanes * 2)); G4String Err4 = " (RZ corners) parameters,\n"; - G4String Err5 = "and it has " - + G4UIcommand::ConvertToString(G4int(solParam.size())); + G4String Err5 = + "and it has " + G4UIcommand::ConvertToString(G4int(solParam.size())); G4String ErrMessage = Err1 + Err2 + Err3 + Err4 + Err5 + " !"; - G4Exception("G4tgbVolume::FindOrConstructG4Solid()", - "InvalidSetup", FatalException, ErrMessage); - return 0; + G4Exception("G4tgbVolume::FindOrConstructG4Solid()", "InvalidSetup", + FatalException, ErrMessage); + return nullptr; } - - if( !genericPoly ) + + if(!genericPoly) { - std::vector* z_p = new std::vector; + std::vector* z_p = new std::vector; std::vector* rmin_p = new std::vector; std::vector* rmax_p = new std::vector; - for( size_t ii = 0; ii < nplanes; ii++ ) + for(std::size_t ii = 0; ii < nplanes; ++ii) { - (*z_p).push_back( solParam[4+3*ii] ); - (*rmin_p).push_back( solParam[4+3*ii+1] ); - (*rmax_p).push_back( solParam[4+3*ii+2] ); + (*z_p).push_back(solParam[4 + 3 * ii]); + (*rmin_p).push_back(solParam[4 + 3 * ii + 1]); + (*rmax_p).push_back(solParam[4 + 3 * ii + 2]); } G4double phiTotal = solParam[1]; - if( std::fabs(phiTotal - twopi) < angularTolerance ) { phiTotal = twopi; } - solid = new G4Polyhedra( sname, solParam[0], phiTotal, - G4int(solParam[2]), nplanes, - &((*z_p)[0]), &((*rmin_p)[0]), &((*rmax_p)[0])); + if(std::fabs(phiTotal - twopi) < angularTolerance) + { + phiTotal = twopi; + } + solid = new G4Polyhedra(sname, solParam[0], phiTotal, G4int(solParam[2]), + nplanes, &((*z_p)[0]), &((*rmin_p)[0]), + &((*rmax_p)[0])); } else { std::vector* R_c = new std::vector; std::vector* Z_c = new std::vector; - for( size_t ii = 0; ii < nplanes; ii++ ) + for(std::size_t ii = 0; ii < nplanes; ++ii) { - (*R_c).push_back( solParam[4+2*ii] ); - (*Z_c).push_back( solParam[4+2*ii+1] ); + (*R_c).push_back(solParam[4 + 2 * ii]); + (*Z_c).push_back(solParam[4 + 2 * ii + 1]); } G4double phiTotal = solParam[1]; - if( std::fabs(phiTotal - twopi) < angularTolerance ) { phiTotal = twopi; } - solid = new G4Polyhedra( sname, solParam[0], phiTotal, - G4int(solParam[2]), nplanes, - &((*R_c)[0]), &((*Z_c)[0])); + if(std::fabs(phiTotal - twopi) < angularTolerance) + { + phiTotal = twopi; + } + solid = new G4Polyhedra(sname, solParam[0], phiTotal, G4int(solParam[2]), + nplanes, &((*R_c)[0]), &((*Z_c)[0])); } } - else if( stype == "ELLIPTICALTUBE" ) + else if(stype == "ELLIPTICALTUBE") { - CheckNoSolidParams( stype, 3, solParam.size() ); - solid = new G4EllipticalTube( sname, solParam[0], solParam[1], solParam[2]); + CheckNoSolidParams(stype, 3, solParam.size()); + solid = new G4EllipticalTube(sname, solParam[0], solParam[1], solParam[2]); } - else if( stype == "ELLIPSOID" ) + else if(stype == "ELLIPSOID") { - CheckNoSolidParams( stype, 5, solParam.size() ); - solid = new G4Ellipsoid( sname, solParam[0], solParam[1], solParam[2], - solParam[3], solParam[4] ); + CheckNoSolidParams(stype, 5, solParam.size()); + solid = new G4Ellipsoid(sname, solParam[0], solParam[1], solParam[2], + solParam[3], solParam[4]); } - else if( stype == "ELLIPTICALCONE" ) + else if(stype == "ELLIPTICALCONE") { - CheckNoSolidParams( stype, 4, solParam.size() ); - solid = new G4EllipticalCone( sname, solParam[0], solParam[1], - solParam[2], solParam[3] ); + CheckNoSolidParams(stype, 4, solParam.size()); + solid = new G4EllipticalCone(sname, solParam[0], solParam[1], solParam[2], + solParam[3]); } - else if( stype == "HYPE" ) + else if(stype == "HYPE") { - CheckNoSolidParams( stype, 5, solParam.size() ); - solid = new G4Hype( sname, solParam[0], solParam[1], solParam[2], - solParam[3], solParam[4] ); + CheckNoSolidParams(stype, 5, solParam.size()); + solid = new G4Hype(sname, solParam[0], solParam[1], solParam[2], + solParam[3], solParam[4]); } - else if( stype == "TET" ) + else if(stype == "TET") { - CheckNoSolidParams( stype, 12, solParam.size() ); + CheckNoSolidParams(stype, 12, solParam.size()); G4ThreeVector anchor(solParam[0], solParam[1], solParam[2]); G4ThreeVector p2(solParam[3], solParam[4], solParam[5]); G4ThreeVector p3(solParam[6], solParam[7], solParam[8]); G4ThreeVector p4(solParam[9], solParam[10], solParam[11]); - solid = new G4Tet( sname, anchor, p2, p3, p4 ); + solid = new G4Tet(sname, anchor, p2, p3, p4); } - else if( stype == "TWISTEDBOX" ) + else if(stype == "TWISTEDBOX") { - CheckNoSolidParams( stype, 4, solParam.size() ); - solid = new G4TwistedBox( sname, solParam[0], solParam[1], - solParam[2], solParam[3]); + CheckNoSolidParams(stype, 4, solParam.size()); + solid = new G4TwistedBox(sname, solParam[0], solParam[1], solParam[2], + solParam[3]); } - else if( stype == "TWISTEDTRAP" ) + else if(stype == "TWISTEDTRAP") { - CheckNoSolidParams( stype, 11, solParam.size() ); - solid = new G4TwistedTrap( sname, solParam[0], solParam[1], solParam[2], + CheckNoSolidParams(stype, 11, solParam.size()); + solid = + new G4TwistedTrap(sname, solParam[0], solParam[1], solParam[2], solParam[3], solParam[4], solParam[5], solParam[6], - solParam[7], solParam[8], solParam[9], solParam[10] ); + solParam[7], solParam[8], solParam[9], solParam[10]); } - else if( stype == "TWISTEDTRD" ) + else if(stype == "TWISTEDTRD") { - CheckNoSolidParams( stype, 6, solParam.size() ); - solid = new G4TwistedTrd( sname, solParam[0], solParam[1], solParam[2], - solParam[3], solParam[4], solParam[5]); + CheckNoSolidParams(stype, 6, solParam.size()); + solid = new G4TwistedTrd(sname, solParam[0], solParam[1], solParam[2], + solParam[3], solParam[4], solParam[5]); } - else if( stype == "TWISTEDTUBS" ) + else if(stype == "TWISTEDTUBS") { - CheckNoSolidParams( stype, 5, solParam.size() ); + CheckNoSolidParams(stype, 5, solParam.size()); G4double phiTotal = solParam[4]; - if( std::fabs(phiTotal - twopi) < angularTolerance ) { phiTotal = twopi; } - solid = new G4TwistedTubs( sname, solParam[0], solParam[1], solParam[2], - solParam[3], phiTotal); - } - else if( stype == "TESSELLATED" ) - { - G4int nFacets = G4int(solParam[0]); - G4int jj = 0; - solid = new G4TessellatedSolid(sname); - G4TessellatedSolid* solidTS = (G4TessellatedSolid*)(solid); - G4VFacet* facet=0; - - for( G4int ii = 0; ii < nFacets; ii++){ - G4int nPoints = G4int(solParam[jj+1]); - if( G4int(solParam.size()) < jj + nPoints*3 + 2 ) { - G4String Err1 = "Too small number of parameters in tesselated solid, it should be at least " + G4UIcommand::ConvertToString(jj + nPoints*3 + 2 ); - G4String Err2 = " facet number " + G4UIcommand::ConvertToString(ii); - G4String Err3 = " number of parameters is " + G4UIcommand::ConvertToString(G4int(solParam.size())); - G4String ErrMessage = Err1 + Err2 + Err3 + " !"; - G4Exception("G4tgbVolume::FindOrConstructG4Solid()", - "InvalidSetup", FatalException, ErrMessage); - return 0; - } - - if( nPoints == 3 ) - { - G4ThreeVector pt0(solParam[jj+2],solParam[jj+3],solParam[jj+4]); - G4ThreeVector vt1(solParam[jj+5],solParam[jj+6],solParam[jj+7]); - G4ThreeVector vt2(solParam[jj+8],solParam[jj+9],solParam[jj+10]); - G4FacetVertexType vertexType = ABSOLUTE; - if( solParam[jj+11] == 0 ) - { - vertexType = ABSOLUTE; - } - else if( solParam[jj+11] == 1 ) - { - vertexType = RELATIVE; - } - else - { - G4String Err1 = "Wrong number of vertex type in tesselated solid, it should be 0 =ABSOLUTE) or 1 (=RELATIVE)"; - G4String Err2 = " facet number " + G4UIcommand::ConvertToString(G4int(ii)); - G4String Err3 = " vertex type is " + G4UIcommand::ConvertToString(solParam[jj+11]); - G4String ErrMessage = Err1 + Err2 + Err3 + " !"; - G4Exception("G4tgbVolume::FindOrConstructG4Solid()", - "InvalidSetup", FatalException, ErrMessage); - return 0; - } - facet = new G4TriangularFacet( pt0, vt1, vt2, vertexType ); - } - else if( nPoints == 4 ) - { - G4ThreeVector pt0(solParam[jj+2],solParam[jj+3],solParam[jj+4]); - G4ThreeVector vt1(solParam[jj+5],solParam[jj+6],solParam[jj+7]); - G4ThreeVector vt2(solParam[jj+8],solParam[jj+9],solParam[jj+10]); - G4ThreeVector vt3(solParam[jj+11],solParam[jj+12],solParam[jj+13]); - G4FacetVertexType vertexType = ABSOLUTE; - if( solParam[jj+14] == 0 ) - { - vertexType = ABSOLUTE; - } - else if( solParam[jj+14] == 1 ) - { - vertexType = RELATIVE; - } - else - { - G4String Err1 = "Wrong number of vertex type in tesselated solid, it should be 0 =ABSOLUTE) or 1 (=RELATIVE)"; - G4String Err2 = " facet number " + G4UIcommand::ConvertToString(G4int(ii)); - G4String Err3 = " vertex type is " + G4UIcommand::ConvertToString(solParam[jj+14]); - G4String ErrMessage = Err1 + Err2 + Err3 + " !"; - G4Exception("G4tgbVolume::FindOrConstructG4Solid()", - "InvalidSetup", FatalException, ErrMessage); - return 0; - } - facet = new G4QuadrangularFacet( pt0, vt1, vt2, vt3, vertexType ); - } - else - { - G4String Err1 = "Wrong number of points in tesselated solid, it should be 3 or 4"; - G4String Err2 = " facet number " + G4UIcommand::ConvertToString(G4int(ii)); - G4String Err3 = " number of points is " + G4UIcommand::ConvertToString(G4int(nPoints)); - G4String ErrMessage = Err1 + Err2 + Err3 + " !"; - G4Exception("G4tgbVolume::FindOrConstructG4Solid()", - "InvalidSetup", FatalException, ErrMessage); - return 0; - } - - solidTS->AddFacet( facet ); - jj += nPoints*3 + 2; + if(std::fabs(phiTotal - twopi) < angularTolerance) + { + phiTotal = twopi; } - - } - else if( stype == "EXTRUDED" ) + solid = new G4TwistedTubs(sname, solParam[0], solParam[1], solParam[2], + solParam[3], phiTotal); + } + else if(stype == "TESSELLATED") + { + G4int nFacets = G4int(solParam[0]); + G4int jj = 0; + solid = new G4TessellatedSolid(sname); + G4TessellatedSolid* solidTS = (G4TessellatedSolid*) (solid); + G4VFacet* facet = nullptr; + + for(G4int ii = 0; ii < nFacets; ++ii) + { + G4int nPoints = G4int(solParam[jj + 1]); + if(G4int(solParam.size()) < jj + nPoints * 3 + 2) + { + G4String Err1 = "Too small number of parameters in tesselated solid, " + "it should be at least " + + G4UIcommand::ConvertToString(jj + nPoints * 3 + 2); + G4String Err2 = " facet number " + G4UIcommand::ConvertToString(ii); + G4String Err3 = " number of parameters is " + + G4UIcommand::ConvertToString(G4int(solParam.size())); + G4String ErrMessage = Err1 + Err2 + Err3 + " !"; + G4Exception("G4tgbVolume::FindOrConstructG4Solid()", "InvalidSetup", + FatalException, ErrMessage); + return nullptr; + } + + if(nPoints == 3) + { + G4ThreeVector pt0(solParam[jj + 2], solParam[jj + 3], solParam[jj + 4]); + G4ThreeVector vt1(solParam[jj + 5], solParam[jj + 6], solParam[jj + 7]); + G4ThreeVector vt2(solParam[jj + 8], solParam[jj + 9], + solParam[jj + 10]); + G4FacetVertexType vertexType = ABSOLUTE; + if(solParam[jj + 11] == 0) + { + vertexType = ABSOLUTE; + } + else if(solParam[jj + 11] == 1) + { + vertexType = RELATIVE; + } + else + { + G4String Err1 = "Wrong number of vertex type in tesselated solid, it " + "should be 0 =ABSOLUTE) or 1 (=RELATIVE)"; + G4String Err2 = + " facet number " + G4UIcommand::ConvertToString(G4int(ii)); + G4String Err3 = " vertex type is " + + G4UIcommand::ConvertToString(solParam[jj + 11]); + G4String ErrMessage = Err1 + Err2 + Err3 + " !"; + G4Exception("G4tgbVolume::FindOrConstructG4Solid()", "InvalidSetup", + FatalException, ErrMessage); + return nullptr; + } + facet = new G4TriangularFacet(pt0, vt1, vt2, vertexType); + } + else if(nPoints == 4) + { + G4ThreeVector pt0(solParam[jj + 2], solParam[jj + 3], solParam[jj + 4]); + G4ThreeVector vt1(solParam[jj + 5], solParam[jj + 6], solParam[jj + 7]); + G4ThreeVector vt2(solParam[jj + 8], solParam[jj + 9], + solParam[jj + 10]); + G4ThreeVector vt3(solParam[jj + 11], solParam[jj + 12], + solParam[jj + 13]); + G4FacetVertexType vertexType = ABSOLUTE; + if(solParam[jj + 14] == 0) + { + vertexType = ABSOLUTE; + } + else if(solParam[jj + 14] == 1) + { + vertexType = RELATIVE; + } + else + { + G4String Err1 = "Wrong number of vertex type in tesselated solid, it " + "should be 0 =ABSOLUTE) or 1 (=RELATIVE)"; + G4String Err2 = + " facet number " + G4UIcommand::ConvertToString(G4int(ii)); + G4String Err3 = " vertex type is " + + G4UIcommand::ConvertToString(solParam[jj + 14]); + G4String ErrMessage = Err1 + Err2 + Err3 + " !"; + G4Exception("G4tgbVolume::FindOrConstructG4Solid()", "InvalidSetup", + FatalException, ErrMessage); + return nullptr; + } + facet = new G4QuadrangularFacet(pt0, vt1, vt2, vt3, vertexType); + } + else + { + G4String Err1 = + "Wrong number of points in tesselated solid, it should be 3 or 4"; + G4String Err2 = + " facet number " + G4UIcommand::ConvertToString(G4int(ii)); + G4String Err3 = " number of points is " + + G4UIcommand::ConvertToString(G4int(nPoints)); + G4String ErrMessage = Err1 + Err2 + Err3 + " !"; + G4Exception("G4tgbVolume::FindOrConstructG4Solid()", "InvalidSetup", + FatalException, ErrMessage); + return nullptr; + } + + solidTS->AddFacet(facet); + jj += nPoints * 3 + 2; + } + } + else if(stype == "EXTRUDED") { std::vector polygonList; std::vector zsectionList; G4int nPolygons = G4int(solParam[0]); - G4int ii = 1; - G4int nMax = nPolygons*2+1; - for( ;ii < nMax; ii+=2 ) + G4int ii = 1; + G4int nMax = nPolygons * 2 + 1; + for(; ii < nMax; ii += 2) { - polygonList.push_back( G4TwoVector(solParam[ii],solParam[ii+1]) ); + polygonList.push_back(G4TwoVector(solParam[ii], solParam[ii + 1])); } G4int nZSections = G4int(solParam[ii]); - nMax = nPolygons*2 + nZSections*4 + 2; - ii++; - for( ; ii < nMax; ii+=4 ) + nMax = nPolygons * 2 + nZSections * 4 + 2; + ++ii; + for(; ii < nMax; ii += 4) { - G4TwoVector offset(solParam[ii+1],solParam[ii+2]); - zsectionList.push_back( G4ExtrudedSolid::ZSection(solParam[ii],offset,solParam[ii+3]) ); + G4TwoVector offset(solParam[ii + 1], solParam[ii + 2]); + zsectionList.push_back( + G4ExtrudedSolid::ZSection(solParam[ii], offset, solParam[ii + 3])); } - solid = new G4ExtrudedSolid( sname, polygonList, zsectionList ); - + solid = new G4ExtrudedSolid(sname, polygonList, zsectionList); } - else if( stype.substr(0,7) == "Boolean" ) + else if(stype.substr(0, 7) == "Boolean") { const G4tgrSolidBoolean* solb = dynamic_cast(sol); - if (!solb) + if(solb == nullptr) { - G4Exception("G4tgbVolume::FindOrConstructG4Solid()", - "InvalidSetup", FatalException, "Invalid Solid pointer"); - return 0; + G4Exception("G4tgbVolume::FindOrConstructG4Solid()", "InvalidSetup", + FatalException, "Invalid Solid pointer"); + return nullptr; } - G4VSolid* sol1 = FindOrConstructG4Solid( solb->GetSolid(0)); - G4VSolid* sol2 = FindOrConstructG4Solid( solb->GetSolid(1)); - G4RotationMatrix* relRotMat = G4tgbRotationMatrixMgr::GetInstance() - ->FindOrBuildG4RotMatrix( sol->GetRelativeRotMatName() ); + G4VSolid* sol1 = FindOrConstructG4Solid(solb->GetSolid(0)); + G4VSolid* sol2 = FindOrConstructG4Solid(solb->GetSolid(1)); + G4RotationMatrix* relRotMat = + G4tgbRotationMatrixMgr::GetInstance()->FindOrBuildG4RotMatrix( + sol->GetRelativeRotMatName()); G4ThreeVector relPlace = solb->GetRelativePlace(); - if( stype == "Boolean_UNION" ) + if(stype == "Boolean_UNION") { - solid = new G4UnionSolid( sname, sol1, sol2, relRotMat, relPlace ); + solid = new G4UnionSolid(sname, sol1, sol2, relRotMat, relPlace); } - else if( stype == "Boolean_SUBTRACTION" ) + else if(stype == "Boolean_SUBTRACTION") { - solid = new G4SubtractionSolid( sname, sol1, sol2, relRotMat, relPlace ); + solid = new G4SubtractionSolid(sname, sol1, sol2, relRotMat, relPlace); } - else if( stype == "Boolean_INTERSECTION" ) + else if(stype == "Boolean_INTERSECTION") { - solid = new G4IntersectionSolid( sname, sol1, sol2, relRotMat, relPlace ); + solid = new G4IntersectionSolid(sname, sol1, sol2, relRotMat, relPlace); } else { G4String ErrMessage = "Unknown Boolean type " + stype; - G4Exception("G4tgbVolume::FindOrConstructG4Solid()", - "InvalidSetup", FatalException, ErrMessage); - return 0; + G4Exception("G4tgbVolume::FindOrConstructG4Solid()", "InvalidSetup", + FatalException, ErrMessage); + return nullptr; } } else { - G4String ErrMessage = "Solids of type " + stype - + " not implemented yet, sorry..."; + G4String ErrMessage = + "Solids of type " + stype + " not implemented yet, sorry..."; G4Exception("G4tgbVolume::FindOrConstructG4Solid()", "NotImplemented", FatalException, ErrMessage); - return 0; - } - + return nullptr; + } + #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbVolume::FindOrConstructG4Solid()" << G4endl - << " Created solid " << sname - << " of type " << solid->GetEntityType() << G4endl; + << " Created solid " << sname << " of type " + << solid->GetEntityType() << G4endl; } #endif #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << " Constructing new G4Solid: " - << *solid << G4endl; - } + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << " Constructing new G4Solid: " << *solid << G4endl; + } #endif - + return solid; } -//------------------------------------------------------------------- -void G4tgbVolume::CheckNoSolidParams( const G4String& solidType, - const unsigned int NoParamExpected, - const unsigned int NoParam ) +// -------------------------------------------------------------------- +void G4tgbVolume::CheckNoSolidParams(const G4String& solidType, + const unsigned int NoParamExpected, + const unsigned int NoParam) { - if( NoParamExpected != NoParam ) + if(NoParamExpected != NoParam) { G4String Err1 = "Solid type " + solidType + " should have "; - G4String Err2 = G4UIcommand::ConvertToString(G4int(NoParamExpected)) - + " parameters,\n"; - G4String Err3 = "and it has " - + G4UIcommand::ConvertToString(G4int(NoParam)); + G4String Err2 = + G4UIcommand::ConvertToString(G4int(NoParamExpected)) + " parameters,\n"; + G4String Err3 = + "and it has " + G4UIcommand::ConvertToString(G4int(NoParam)); G4String ErrMessage = Err1 + Err2 + Err3 + " !"; G4Exception("G4tgbVolume::CheckNoSolidParams()", "InvalidSetup", FatalException, ErrMessage); } } - -//------------------------------------------------------------------- -G4LogicalVolume* G4tgbVolume::ConstructG4LogVol( const G4VSolid* solid ) +// -------------------------------------------------------------------- +G4LogicalVolume* G4tgbVolume::ConstructG4LogVol(const G4VSolid* solid) { G4LogicalVolume* logvol; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbVolume::ConstructG4LogVol() - " << GetName() << G4endl; } #endif //----------- Get the material first - G4Material* mate = G4tgbMaterialMgr::GetInstance() - ->FindOrBuildG4Material( theTgrVolume->GetMaterialName() ); - if( mate == 0 ) + G4Material* mate = G4tgbMaterialMgr::GetInstance()->FindOrBuildG4Material( + theTgrVolume->GetMaterialName()); + if(mate == nullptr) { - G4String ErrMessage = "Material not found " - + theTgrVolume->GetMaterialName() - + " for volume " + GetName() + "."; + G4String ErrMessage = "Material not found " + + theTgrVolume->GetMaterialName() + " for volume " + + GetName() + "."; G4Exception("G4tgbVolume::ConstructG4LogVol()", "InvalidSetup", FatalException, ErrMessage); } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbVolume::ConstructG4LogVol() -" - << " Material constructed: " << mate->GetName() << G4endl; + << " Material constructed: " << mate->GetName() << G4endl; } #endif - + //---------- Construct the LV - logvol = new G4LogicalVolume( const_cast(solid), - const_cast(mate), GetName() ); + logvol = new G4LogicalVolume(const_cast(solid), + const_cast(mate), GetName()); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << " Constructing new G4LogicalVolume: " - << logvol->GetName() << " mate " << mate->GetName() << G4endl; - } + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << " Constructing new G4LogicalVolume: " << logvol->GetName() + << " mate " << mate->GetName() << G4endl; + } #endif - + //---------- Set visibility and colour - if( !GetVisibility() || GetColour()[0] != -1 ) + if(!GetVisibility() || GetColour()[0] != -1) { G4VisAttributes* visAtt = new G4VisAttributes(); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Constructing new G4VisAttributes: " - << *visAtt << G4endl; + G4cout << " Constructing new G4VisAttributes: " << *visAtt << G4endl; } #endif - - if( !GetVisibility() ) + + if(!GetVisibility()) { - visAtt->SetVisibility( GetVisibility() ); + visAtt->SetVisibility(GetVisibility()); } - else if( GetColour()[0] != -1 ) + else if(GetColour()[0] != -1) { // this else should not be necessary, because if the visibility // is set to off, colour should have no effect. But it does not // work: if you set colour and vis off, it is visualized!?!?!? const G4double* col = GetColour(); - if( col[3] == -1. ) + if(col[3] == -1.) { - visAtt->SetColour( G4Colour(col[0],col[1],col[2])); + visAtt->SetColour(G4Colour(col[0], col[1], col[2])); } else { - visAtt->SetColour( G4Colour(col[0],col[1],col[2],col[3])); + visAtt->SetColour(G4Colour(col[0], col[1], col[2], col[3])); } } logvol->SetVisAttributes(visAtt); } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbVolume::ConstructG4LogVol() -" << " Created logical volume: " << GetName() << G4endl; @@ -811,44 +849,42 @@ G4LogicalVolume* G4tgbVolume::ConstructG4LogVol( const G4VSolid* solid ) return logvol; } - -//------------------------------------------------------------------- +// -------------------------------------------------------------------- G4VPhysicalVolume* -G4tgbVolume::ConstructG4PhysVol( const G4tgrPlace* place, - const G4LogicalVolume* currentLV, - const G4LogicalVolume* parentLV ) +G4tgbVolume::ConstructG4PhysVol(const G4tgrPlace* place, + const G4LogicalVolume* currentLV, + const G4LogicalVolume* parentLV) { - G4VPhysicalVolume* physvol = 0; + G4VPhysicalVolume* physvol = nullptr; G4int copyNo; - + //----- Case of placement of top volume - if( place == 0 ) + if(place == nullptr) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << " G4tgbVolume::ConstructG4PhysVol() - World: " - << GetName() << G4endl; + G4cout << " G4tgbVolume::ConstructG4PhysVol() - World: " << GetName() + << G4endl; } #endif - physvol = new G4PVPlacement(0, G4ThreeVector(), - const_cast(currentLV), - GetName(), 0, false, 0, - theTgrVolume->GetCheckOverlaps()); + physvol = new G4PVPlacement( + nullptr, G4ThreeVector(), const_cast(currentLV), + GetName(), 0, false, 0, theTgrVolume->GetCheckOverlaps()); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Constructing new : G4PVPlacement " - << physvol->GetName() << G4endl; + G4cout << " Constructing new : G4PVPlacement " << physvol->GetName() + << G4endl; } #endif } else - { + { copyNo = place->GetCopyNo(); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbVolume::ConstructG4PhysVol() - " << GetName() << G4endl << " inside " << parentLV->GetName() << " copy No: " << copyNo @@ -856,125 +892,122 @@ G4tgbVolume::ConstructG4PhysVol( const G4tgrPlace* place, << " placement type= " << place->GetType() << G4endl; } #endif - - if( theTgrVolume->GetType() == "VOLSimple" ) + + if(theTgrVolume->GetType() == "VOLSimple") { //----- Get placement #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbVolume::ConstructG4PhysVol() - Placement type = " << place->GetType() << G4endl; } #endif - + //--------------- If it is G4tgrPlaceSimple - if( place->GetType() == "PlaceSimple" ) + if(place->GetType() == "PlaceSimple") { //----- Get rotation matrix - G4tgrPlaceSimple* placeSimple = (G4tgrPlaceSimple*)place; - G4String rmName = placeSimple->GetRotMatName(); + G4tgrPlaceSimple* placeSimple = (G4tgrPlaceSimple*) place; + G4String rmName = placeSimple->GetRotMatName(); - G4RotationMatrix* rotmat = G4tgbRotationMatrixMgr::GetInstance() - ->FindOrBuildG4RotMatrix( rmName ); + G4RotationMatrix* rotmat = + G4tgbRotationMatrixMgr::GetInstance()->FindOrBuildG4RotMatrix(rmName); //----- Place volume in mother - G4double check = (rotmat->colX().cross(rotmat->colY()))*rotmat->colZ(); + G4double check = + (rotmat->colX().cross(rotmat->colY())) * rotmat->colZ(); G4double tol = 1.0e-3; //---- Check that matrix is ortogonal - if (1-std::abs(check)>tol) + if(1 - std::abs(check) > tol) { - G4cerr << " Matrix : " << rmName << " " << rotmat->colX() - << " " << rotmat->colY() << " " << rotmat->colZ() << G4endl + G4cerr << " Matrix : " << rmName << " " << rotmat->colX() << " " + << rotmat->colY() << " " << rotmat->colZ() << G4endl << " product x X y * z = " << check << " x X y " << rotmat->colX().cross(rotmat->colY()) << G4endl; G4String ErrMessage = "Rotation is not ortogonal " + rmName + " !"; - G4Exception("G4tgbVolume::ConstructG4PhysVol()", - "InvalidSetup", FatalException, ErrMessage); + G4Exception("G4tgbVolume::ConstructG4PhysVol()", "InvalidSetup", + FatalException, ErrMessage); //---- Check if it is reflection } - else if (1+check<=tol) + else if(1 + check <= tol) { G4Translate3D transl = place->GetPlacement(); G4Transform3D trfrm = transl * G4Rotate3D(*rotmat); - physvol = (G4ReflectionFactory::Instance()->Place(trfrm, GetName(), - const_cast(currentLV), - const_cast(parentLV), - false, copyNo, false )).first; + physvol = + (G4ReflectionFactory::Instance()->Place( + trfrm, GetName(), const_cast(currentLV), + const_cast(parentLV), false, copyNo, false)) + .first; } else { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { G4cout << "Construction new G4VPhysicalVolume" - << " through G4ReflectionFactory " << GetName() - << " in volume " << parentLV->GetName() - << " copyNo " << copyNo - << " position " << place->GetPlacement() - << " ROT " << rotmat->colX() - << " " << rotmat->colY() - << " " << rotmat->colZ() << G4endl; + << " through G4ReflectionFactory " << GetName() + << " in volume " << parentLV->GetName() << " copyNo " + << copyNo << " position " << place->GetPlacement() << " ROT " + << rotmat->colX() << " " << rotmat->colY() << " " + << rotmat->colZ() << G4endl; } #endif - physvol = new G4PVPlacement( rotmat, place->GetPlacement(), - const_cast(currentLV), - GetName(), - const_cast(parentLV), - false, copyNo, - theTgrVolume->GetCheckOverlaps()); + physvol = + new G4PVPlacement(rotmat, place->GetPlacement(), + const_cast(currentLV), + GetName(), const_cast(parentLV), + false, copyNo, theTgrVolume->GetCheckOverlaps()); } - + //--------------- If it is G4tgrPlaceParam } - else if( place->GetType() == "PlaceParam" ) + else if(place->GetType() == "PlaceParam") { - G4tgrPlaceParameterisation* dp = (G4tgrPlaceParameterisation*)(place); + G4tgrPlaceParameterisation* dp = (G4tgrPlaceParameterisation*) (place); //----- See what parameterisation type #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbVolume::ConstructG4PhysVol() -" << G4endl - << " param: " << GetName() << " in " << parentLV->GetName() + << " param: " << GetName() << " in " << parentLV->GetName() << " param type= " << dp->GetParamType() << G4endl; } #endif - - G4tgbPlaceParameterisation * param=0; - - if( (dp->GetParamType() == "CIRCLE") - || (dp->GetParamType() == "CIRCLE_XY") - || (dp->GetParamType() == "CIRCLE_XZ") - || (dp->GetParamType() == "CIRCLE_YZ") ) - { + + G4tgbPlaceParameterisation* param = nullptr; + + if((dp->GetParamType() == "CIRCLE") || + (dp->GetParamType() == "CIRCLE_XY") || + (dp->GetParamType() == "CIRCLE_XZ") || + (dp->GetParamType() == "CIRCLE_YZ")) + { param = new G4tgbPlaceParamCircle(dp); - - } - else if( (dp->GetParamType() == "LINEAR") - || (dp->GetParamType() == "LINEAR_X") - || (dp->GetParamType() == "LINEAR_Y") - || (dp->GetParamType() == "LINEAR_Z") ) - { + } + else if((dp->GetParamType() == "LINEAR") || + (dp->GetParamType() == "LINEAR_X") || + (dp->GetParamType() == "LINEAR_Y") || + (dp->GetParamType() == "LINEAR_Z")) + { param = new G4tgbPlaceParamLinear(dp); - - } - else if( (dp->GetParamType() == "SQUARE") - || (dp->GetParamType() == "SQUARE_XY") - || (dp->GetParamType() == "SQUARE_XZ") - || (dp->GetParamType() == "SQUARE_YZ") ) + } + else if((dp->GetParamType() == "SQUARE") || + (dp->GetParamType() == "SQUARE_XY") || + (dp->GetParamType() == "SQUARE_XZ") || + (dp->GetParamType() == "SQUARE_YZ")) { param = new G4tgbPlaceParamSquare(dp); } else { - G4String ErrMessage = "Parameterisation has wrong type, TYPE: " - + G4String(dp->GetParamType()) + " !"; + G4String ErrMessage = "Parameterisation has wrong type, TYPE: " + + G4String(dp->GetParamType()) + " !"; G4Exception("G4tgbVolume::ConstructG4PhysVol", "WrongArgument", FatalException, ErrMessage); - return 0; + return nullptr; } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { G4cout << " G4tgbVolume::ConstructG4PhysVol() -" << G4endl << " New G4PVParameterised: " << GetName() << " vol " @@ -983,338 +1016,323 @@ G4tgbVolume::ConstructG4PhysVol( const G4tgrPlace* place, << param->GetNCopies() << G4endl; } #endif - physvol = new G4PVParameterised(GetName(), - const_cast(currentLV), - const_cast(parentLV), - EAxis(param->GetAxis()), - param->GetNCopies(), param); + physvol = new G4PVParameterised( + GetName(), const_cast(currentLV), + const_cast(parentLV), EAxis(param->GetAxis()), + param->GetNCopies(), param); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << " Constructing new G4PVParameterised: " - << physvol->GetName() << " in volume " << parentLV->GetName() - << " N copies " << param->GetNCopies() - << " axis " << param->GetAxis() << G4endl; - } -#endif - - } - else if( place->GetType() == "PlaceReplica" ) - { - //--------------- If it is PlaceReplica - G4tgrPlaceDivRep* dpr = (G4tgrPlaceDivRep*)place; - -#ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " G4tgbVolume::ConstructG4PhysVol() -" << G4endl - << " replica" << " " << currentLV->GetName() - << " in " << parentLV->GetName() - << " NDiv " << dpr->GetNDiv() << " Width " << dpr->GetWidth() - << " offset " << dpr->GetOffset() << G4endl; - } -#endif - physvol = new G4PVReplica(GetName(), - const_cast(currentLV), - const_cast(parentLV), - EAxis(dpr->GetAxis()), dpr->GetNDiv(), - dpr->GetWidth(), dpr->GetOffset()); -#ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << " Constructing new G4PVReplica: " - << currentLV->GetName() - << " in " << parentLV->GetName() - << " NDiv " << dpr->GetNDiv() << " Width " << dpr->GetWidth() - << " offset " << dpr->GetOffset() << G4endl; - } + G4cout << " Constructing new G4PVParameterised: " + << physvol->GetName() << " in volume " << parentLV->GetName() + << " N copies " << param->GetNCopies() << " axis " + << param->GetAxis() << G4endl; + } #endif } - } - else if( theTgrVolume->GetType() == "VOLDivision" ) - { - G4tgrVolumeDivision* volr = (G4tgrVolumeDivision*)theTgrVolume; - G4tgrPlaceDivRep* placeDiv = volr->GetPlaceDivision() ; - G4VSolid* solid = BuildSolidForDivision( parentLV->GetSolid(), placeDiv->GetAxis() ); - G4Material* mate = G4tgbMaterialMgr::GetInstance() - ->FindOrBuildG4Material( theTgrVolume->GetMaterialName() ); - G4LogicalVolume* divLV = new G4LogicalVolume(solid, - const_cast(mate), - GetName() ); -#ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + else if(place->GetType() == "PlaceReplica") { - G4cout << " Constructed new G4LogicalVolume for division: " - << divLV->GetName() << " mate " << mate->GetName() << G4endl; + //--------------- If it is PlaceReplica + G4tgrPlaceDivRep* dpr = (G4tgrPlaceDivRep*) place; + +#ifdef G4VERBOSE + if(G4tgrMessenger::GetVerboseLevel() >= 2) + { + G4cout << " G4tgbVolume::ConstructG4PhysVol() -" << G4endl + << " replica" + << " " << currentLV->GetName() << " in " << parentLV->GetName() + << " NDiv " << dpr->GetNDiv() << " Width " << dpr->GetWidth() + << " offset " << dpr->GetOffset() << G4endl; + } +#endif + physvol = new G4PVReplica( + GetName(), const_cast(currentLV), + const_cast(parentLV), EAxis(dpr->GetAxis()), + dpr->GetNDiv(), dpr->GetWidth(), dpr->GetOffset()); +#ifdef G4VERBOSE + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << " Constructing new G4PVReplica: " << currentLV->GetName() + << " in " << parentLV->GetName() << " NDiv " << dpr->GetNDiv() + << " Width " << dpr->GetWidth() << " offset " + << dpr->GetOffset() << G4endl; + } +#endif + } + } + else if(theTgrVolume->GetType() == "VOLDivision") + { + G4tgrVolumeDivision* volr = (G4tgrVolumeDivision*) theTgrVolume; + G4tgrPlaceDivRep* placeDiv = volr->GetPlaceDivision(); + G4VSolid* solid = + BuildSolidForDivision(parentLV->GetSolid(), placeDiv->GetAxis()); + G4Material* mate = G4tgbMaterialMgr::GetInstance()->FindOrBuildG4Material( + theTgrVolume->GetMaterialName()); + G4LogicalVolume* divLV = + new G4LogicalVolume(solid, const_cast(mate), GetName()); +#ifdef G4VERBOSE + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << " Constructed new G4LogicalVolume for division: " + << divLV->GetName() << " mate " << mate->GetName() << G4endl; } #endif - + G4DivType divType = placeDiv->GetDivType(); - switch (divType) + switch(divType) { - case DivByNdiv: - physvol = new G4PVDivision(GetName(), (G4LogicalVolume*)divLV, - const_cast(parentLV), - placeDiv->GetAxis(), placeDiv->GetNDiv(), - placeDiv->GetOffset()); + case DivByNdiv: + physvol = new G4PVDivision(GetName(), (G4LogicalVolume*) divLV, + const_cast(parentLV), + placeDiv->GetAxis(), placeDiv->GetNDiv(), + placeDiv->GetOffset()); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << " Constructing new G4PVDivision by number of divisions: " - << GetName() << " in " << parentLV->GetName() - << " axis " << placeDiv->GetAxis() - << " Ndiv " << placeDiv->GetNDiv() - << " offset " << placeDiv->GetOffset() << G4endl; - } + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << " Constructing new G4PVDivision by number of divisions: " + << GetName() << " in " << parentLV->GetName() << " axis " + << placeDiv->GetAxis() << " Ndiv " << placeDiv->GetNDiv() + << " offset " << placeDiv->GetOffset() << G4endl; + } #endif - break; - case DivByWidth: - physvol = new G4PVDivision(GetName(), (G4LogicalVolume*)divLV, - const_cast(parentLV), - placeDiv->GetAxis(), placeDiv->GetWidth(), - placeDiv->GetOffset()); + break; + case DivByWidth: + physvol = new G4PVDivision(GetName(), (G4LogicalVolume*) divLV, + const_cast(parentLV), + placeDiv->GetAxis(), placeDiv->GetWidth(), + placeDiv->GetOffset()); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << " Constructing new G4PVDivision by width: " - << GetName() << " in " << parentLV->GetName() - << " axis " << placeDiv->GetAxis() - << " width " << placeDiv->GetWidth() - << " offset " << placeDiv->GetOffset() << G4endl; - } + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << " Constructing new G4PVDivision by width: " << GetName() + << " in " << parentLV->GetName() << " axis " + << placeDiv->GetAxis() << " width " << placeDiv->GetWidth() + << " offset " << placeDiv->GetOffset() << G4endl; + } #endif - break; - case DivByNdivAndWidth: - physvol = new G4PVDivision(GetName(), (G4LogicalVolume*)divLV, - const_cast(parentLV), - placeDiv->GetAxis(), placeDiv->GetNDiv(), - placeDiv->GetWidth(), - placeDiv->GetOffset()); + break; + case DivByNdivAndWidth: + physvol = new G4PVDivision( + GetName(), (G4LogicalVolume*) divLV, + const_cast(parentLV), placeDiv->GetAxis(), + placeDiv->GetNDiv(), placeDiv->GetWidth(), placeDiv->GetOffset()); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << " Constructing new G4PVDivision by width" - << " and number of divisions: " - << GetName() << " in " << parentLV->GetName() - << " axis " << placeDiv->GetAxis() - << " Ndiv " << placeDiv->GetNDiv() - << " width " << placeDiv->GetWidth() - << " offset " << placeDiv->GetOffset() << G4endl; - } + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << " Constructing new G4PVDivision by width" + << " and number of divisions: " << GetName() << " in " + << parentLV->GetName() << " axis " << placeDiv->GetAxis() + << " Ndiv " << placeDiv->GetNDiv() << " width " + << placeDiv->GetWidth() << " offset " + << placeDiv->GetOffset() << G4endl; + } #endif - break; + break; } } - else if( theTgrVolume->GetType() == "VOLAssembly" ) + else if(theTgrVolume->GetType() == "VOLAssembly") { // Define one layer as one assembly volume - G4tgrVolumeAssembly * tgrAssembly = (G4tgrVolumeAssembly *)theTgrVolume; + G4tgrVolumeAssembly* tgrAssembly = (G4tgrVolumeAssembly*) theTgrVolume; - if( !theG4AssemblyVolume ) + if(!theG4AssemblyVolume) { theG4AssemblyVolume = new G4AssemblyVolume; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << " Constructing new G4AssemblyVolume: " - << " number of assembly components " - << tgrAssembly->GetNoComponents() << G4endl; - } -#endif + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << " Constructing new G4AssemblyVolume: " + << " number of assembly components " + << tgrAssembly->GetNoComponents() << G4endl; + } +#endif G4tgbVolumeMgr* g4vmgr = G4tgbVolumeMgr::GetInstance(); - for( G4int ii = 0; ii < tgrAssembly->GetNoComponents(); ii++ ) + for(G4int ii = 0; ii < tgrAssembly->GetNoComponents(); ++ii) { // Rotation and translation of a plate inside the assembly - G4ThreeVector transl = tgrAssembly->GetComponentPos(ii); - G4String rmName = tgrAssembly->GetComponentRM(ii); - G4RotationMatrix* rotmat = G4tgbRotationMatrixMgr::GetInstance() - ->FindOrBuildG4RotMatrix( rmName ); - + G4ThreeVector transl = tgrAssembly->GetComponentPos(ii); + G4String rmName = tgrAssembly->GetComponentRM(ii); + G4RotationMatrix* rotmat = + G4tgbRotationMatrixMgr::GetInstance()->FindOrBuildG4RotMatrix( + rmName); + //----- Get G4LogicalVolume of component - G4String lvname = tgrAssembly->GetComponentName(ii); - G4LogicalVolume* logvol = g4vmgr->FindG4LogVol( lvname); - if( logvol == 0 ) + G4String lvname = tgrAssembly->GetComponentName(ii); + G4LogicalVolume* logvol = g4vmgr->FindG4LogVol(lvname); + if(logvol == nullptr) { - g4vmgr->FindVolume( lvname )->ConstructG4Volumes( 0, 0); - logvol = g4vmgr->FindG4LogVol( lvname, true ); + g4vmgr->FindVolume(lvname)->ConstructG4Volumes(0, 0); + logvol = g4vmgr->FindG4LogVol(lvname, true); } // Fill the assembly by the plates - theG4AssemblyVolume->AddPlacedVolume( logvol, transl, rotmat ); + theG4AssemblyVolume->AddPlacedVolume(logvol, transl, rotmat); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << " G4AssemblyVolume->AddPlacedVolume " << ii - << " " << logvol->GetName() - << " translation " << transl - << " rotmat " << rotmat->colX() - << " " << rotmat->colY() - << " " << rotmat->colZ() << G4endl; - } + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << " G4AssemblyVolume->AddPlacedVolume " << ii << " " + << logvol->GetName() << " translation " << transl + << " rotmat " << rotmat->colX() << " " << rotmat->colY() + << " " << rotmat->colZ() << G4endl; + } #endif } } // Rotation and Translation of the assembly inside the world - G4tgrPlaceSimple* placeSimple = (G4tgrPlaceSimple*)place; - G4String rmName = placeSimple->GetRotMatName(); - G4RotationMatrix* rotmat = G4tgbRotationMatrixMgr::GetInstance() - ->FindOrBuildG4RotMatrix( rmName ); + G4tgrPlaceSimple* placeSimple = (G4tgrPlaceSimple*) place; + G4String rmName = placeSimple->GetRotMatName(); + G4RotationMatrix* rotmat = + G4tgbRotationMatrixMgr::GetInstance()->FindOrBuildG4RotMatrix(rmName); G4ThreeVector transl = place->GetPlacement(); G4LogicalVolume* parentLV_nonconst = - const_cast(parentLV); - theG4AssemblyVolume->MakeImprint( parentLV_nonconst, transl, rotmat ); - + const_cast(parentLV); + theG4AssemblyVolume->MakeImprint(parentLV_nonconst, transl, rotmat); } - else // If it is G4tgrVolumeAssembly + else // If it is G4tgrVolumeAssembly { - G4String ErrMessage = "Volume type not supported: " - + theTgrVolume->GetType() + ", sorry..."; + G4String ErrMessage = + "Volume type not supported: " + theTgrVolume->GetType() + ", sorry..."; G4Exception("G4tgbVolume::ConstructG4PhysVol()", "NotImplemented", FatalException, ErrMessage); - } - } + } + } return physvol; } - -//------------------------------------------------------------------- -G4VSolid* G4tgbVolume::BuildSolidForDivision( G4VSolid* parentSolid, EAxis axis ) +// -------------------------------------------------------------------- +G4VSolid* G4tgbVolume::BuildSolidForDivision(G4VSolid* parentSolid, EAxis axis) { - G4VSolid* solid=0; - G4double redf = (parentSolid->GetExtent().GetXmax()-parentSolid->GetExtent().GetXmin()); - redf = std::min(redf,parentSolid->GetExtent().GetYmax()-parentSolid->GetExtent().GetYmin()); - redf = std::min(redf,parentSolid->GetExtent().GetZmax()-parentSolid->GetExtent().GetZmin()); - redf *= 0.001; //make daugther much smaller, to fit in parent + G4VSolid* solid = nullptr; + G4double redf = + (parentSolid->GetExtent().GetXmax() - parentSolid->GetExtent().GetXmin()); + redf = std::min(redf, parentSolid->GetExtent().GetYmax() - + parentSolid->GetExtent().GetYmin()); + redf = std::min(redf, parentSolid->GetExtent().GetZmax() - + parentSolid->GetExtent().GetZmin()); + redf *= 0.001; // make daugther much smaller, to fit in parent - if( parentSolid->GetEntityType() == "G4Box" ) + if(parentSolid->GetEntityType() == "G4Box") { - G4Box* psolid = (G4Box*)(parentSolid); - solid = new G4Box(GetName(), psolid->GetXHalfLength()*redf, - psolid->GetZHalfLength()*redf, - psolid->GetZHalfLength()*redf); - } - else if ( parentSolid->GetEntityType() == "G4Tubs" ) + G4Box* psolid = (G4Box*) (parentSolid); + solid = new G4Box(GetName(), psolid->GetXHalfLength() * redf, + psolid->GetZHalfLength() * redf, + psolid->GetZHalfLength() * redf); + } + else if(parentSolid->GetEntityType() == "G4Tubs") { - G4Tubs* psolid = (G4Tubs*)(parentSolid); - solid = new G4Tubs( GetName(), psolid->GetInnerRadius()*redf, - psolid->GetOuterRadius()*redf, - psolid->GetZHalfLength()*redf, - psolid->GetStartPhiAngle(), - psolid->GetDeltaPhiAngle()); - } - else if ( parentSolid->GetEntityType() == "G4Cons" ) + G4Tubs* psolid = (G4Tubs*) (parentSolid); + solid = new G4Tubs(GetName(), psolid->GetInnerRadius() * redf, + psolid->GetOuterRadius() * redf, + psolid->GetZHalfLength() * redf, + psolid->GetStartPhiAngle(), psolid->GetDeltaPhiAngle()); + } + else if(parentSolid->GetEntityType() == "G4Cons") { - G4Cons* psolid = (G4Cons*)(parentSolid); - solid = new G4Cons( GetName(), psolid->GetInnerRadiusMinusZ()*redf, - psolid->GetOuterRadiusMinusZ()*redf, - psolid->GetInnerRadiusPlusZ()*redf, - psolid->GetOuterRadiusPlusZ()*redf, - psolid->GetZHalfLength()*redf, - psolid->GetStartPhiAngle(), - psolid->GetDeltaPhiAngle()); - } - else if ( parentSolid->GetEntityType() == "G4Trd" ) + G4Cons* psolid = (G4Cons*) (parentSolid); + solid = new G4Cons(GetName(), psolid->GetInnerRadiusMinusZ() * redf, + psolid->GetOuterRadiusMinusZ() * redf, + psolid->GetInnerRadiusPlusZ() * redf, + psolid->GetOuterRadiusPlusZ() * redf, + psolid->GetZHalfLength() * redf, + psolid->GetStartPhiAngle(), psolid->GetDeltaPhiAngle()); + } + else if(parentSolid->GetEntityType() == "G4Trd") { - G4Trd* psolid = (G4Trd*)(parentSolid); + G4Trd* psolid = (G4Trd*) (parentSolid); G4double mpDx1 = psolid->GetXHalfLength1(); G4double mpDx2 = psolid->GetXHalfLength2(); - if( axis == kXAxis && std::fabs(mpDx1 - mpDx2) > G4GeometryTolerance::GetInstance()->GetSurfaceTolerance() ) + if(axis == kXAxis && + std::fabs(mpDx1 - mpDx2) > + G4GeometryTolerance::GetInstance()->GetSurfaceTolerance()) { - solid = new G4Trap( GetName(), psolid->GetZHalfLength()*redf, - psolid->GetYHalfLength1()*redf, - psolid->GetXHalfLength2()*redf, - psolid->GetXHalfLength1()*redf ); - } + solid = new G4Trap(GetName(), psolid->GetZHalfLength() * redf, + psolid->GetYHalfLength1() * redf, + psolid->GetXHalfLength2() * redf, + psolid->GetXHalfLength1() * redf); + } else { - solid = new G4Trd( GetName(), psolid->GetXHalfLength1()*redf, - psolid->GetXHalfLength2()*redf, - psolid->GetYHalfLength1()*redf, - psolid->GetYHalfLength2()*redf, - psolid->GetZHalfLength()*redf); + solid = new G4Trd( + GetName(), psolid->GetXHalfLength1() * redf, + psolid->GetXHalfLength2() * redf, psolid->GetYHalfLength1() * redf, + psolid->GetYHalfLength2() * redf, psolid->GetZHalfLength() * redf); } - - } - else if ( parentSolid->GetEntityType() == "G4Para" ) + } + else if(parentSolid->GetEntityType() == "G4Para") { - G4Para* psolid = (G4Para*)(parentSolid); - solid = new G4Para( GetName(), psolid->GetXHalfLength()*redf, - psolid->GetYHalfLength()*redf, - psolid->GetZHalfLength()*redf, - std::atan(psolid->GetTanAlpha()), - psolid->GetSymAxis().theta(), - psolid->GetSymAxis().phi() ); - } - else if ( parentSolid->GetEntityType() == "G4Polycone" ) + G4Para* psolid = (G4Para*) (parentSolid); + solid = new G4Para( + GetName(), psolid->GetXHalfLength() * redf, + psolid->GetYHalfLength() * redf, psolid->GetZHalfLength() * redf, + std::atan(psolid->GetTanAlpha()), psolid->GetSymAxis().theta(), + psolid->GetSymAxis().phi()); + } + else if(parentSolid->GetEntityType() == "G4Polycone") { - G4Polycone* psolid = (G4Polycone*)(parentSolid); + G4Polycone* psolid = (G4Polycone*) (parentSolid); G4PolyconeHistorical origParam = *(psolid->GetOriginalParameters()); - for( G4int ii = 0; ii < origParam.Num_z_planes; ii++ ) + for(G4int ii = 0; ii < origParam.Num_z_planes; ++ii) { - origParam.Rmin[ii] = origParam.Rmin[ii]*redf; - origParam.Rmax[ii] = origParam.Rmax[ii]*redf; + origParam.Rmin[ii] = origParam.Rmin[ii] * redf; + origParam.Rmax[ii] = origParam.Rmax[ii] * redf; } - solid = new G4Polycone( GetName(), psolid->GetStartPhi(), - psolid->GetEndPhi(), - origParam.Num_z_planes, origParam.Z_values, - origParam.Rmin, origParam.Rmax); - - } - else if ( parentSolid->GetEntityType() == "G4GenericPolycone" ) + solid = new G4Polycone(GetName(), psolid->GetStartPhi(), + psolid->GetEndPhi(), origParam.Num_z_planes, + origParam.Z_values, origParam.Rmin, origParam.Rmax); + } + else if(parentSolid->GetEntityType() == "G4GenericPolycone") { - G4GenericPolycone* psolid = (G4GenericPolycone*)(parentSolid); - const G4int numRZ = psolid->GetNumRZCorner(); - G4double* r = new G4double[numRZ]; - G4double* z = new G4double[numRZ]; - for( G4int ii = 0; ii < numRZ; ii++ ) + G4GenericPolycone* psolid = (G4GenericPolycone*) (parentSolid); + const G4int numRZ = psolid->GetNumRZCorner(); + G4double* r = new G4double[numRZ]; + G4double* z = new G4double[numRZ]; + for(G4int ii = 0; ii < numRZ; ++ii) { r[ii] = psolid->GetCorner(ii).r; z[ii] = psolid->GetCorner(ii).z; } - solid = new G4GenericPolycone( GetName(), psolid->GetStartPhi(), - psolid->GetEndPhi() - psolid->GetStartPhi(), - numRZ, r, z); - delete [] r; delete [] z; - - } - else if ( parentSolid->GetEntityType() == "G4Polyhedra" ) + solid = new G4GenericPolycone(GetName(), psolid->GetStartPhi(), + psolid->GetEndPhi() - psolid->GetStartPhi(), + numRZ, r, z); + delete[] r; + delete[] z; + } + else if(parentSolid->GetEntityType() == "G4Polyhedra") { - G4Polyhedra* psolid = (G4Polyhedra*)(parentSolid); + G4Polyhedra* psolid = (G4Polyhedra*) (parentSolid); G4PolyhedraHistorical origParam = *(psolid->GetOriginalParameters()); - for( G4int ii = 0; ii < origParam.Num_z_planes; ii++ ) + for(G4int ii = 0; ii < origParam.Num_z_planes; ++ii) { - origParam.Rmin[ii] = origParam.Rmin[ii]*redf; - origParam.Rmax[ii] = origParam.Rmax[ii]*redf; + origParam.Rmin[ii] = origParam.Rmin[ii] * redf; + origParam.Rmax[ii] = origParam.Rmax[ii] * redf; } - solid = new G4Polyhedra( GetName(), psolid->GetStartPhi(), - psolid->GetEndPhi(), - psolid->GetNumSide(), - origParam.Num_z_planes, origParam.Z_values, - origParam.Rmin, origParam.Rmax); + solid = + new G4Polyhedra(GetName(), psolid->GetStartPhi(), psolid->GetEndPhi(), + psolid->GetNumSide(), origParam.Num_z_planes, + origParam.Z_values, origParam.Rmin, origParam.Rmax); } else - { - G4String ErrMessage = "Solid type not supported. VOLUME= " + GetName() - + " Solid type= " + parentSolid->GetEntityType() + "\n" - + "Only supported types are: G4Box, G4Tubs, G4Cons," - + " G4Trd, G4Para, G4Polycone, G4Polyhedra."; + { + G4String ErrMessage = "Solid type not supported. VOLUME= " + GetName() + + " Solid type= " + parentSolid->GetEntityType() + + "\n" + + "Only supported types are: G4Box, G4Tubs, G4Cons," + + " G4Trd, G4Para, G4Polycone, G4Polyhedra."; G4Exception("G4tgbVolume::BuildSolidForDivision()", "NotImplemented", FatalException, ErrMessage); - return 0; + return nullptr; } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << " Constructing new G4Solid for division: " - << *solid << G4endl; - } + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << " Constructing new G4Solid for division: " << *solid << G4endl; + } #endif return solid; } - diff --git a/source/persistency/ascii/src/G4tgbVolumeMgr.cc b/source/persistency/ascii/src/G4tgbVolumeMgr.cc index 0ea167c622..89cf334775 100644 --- a/source/persistency/ascii/src/G4tgbVolumeMgr.cc +++ b/source/persistency/ascii/src/G4tgbVolumeMgr.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgbVolumeMgr implementation // -// -// -// class G4tgbVolumeMgr - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgbVolumeMgr.hh" @@ -49,94 +45,86 @@ #include "G4tgrMessenger.hh" #include "G4tgbDetectorBuilder.hh" -G4ThreadLocal G4tgbVolumeMgr* G4tgbVolumeMgr::theInstance = 0; +G4ThreadLocal G4tgbVolumeMgr* G4tgbVolumeMgr::theInstance = nullptr; -//--------------------------------------------------------------------- -G4tgbVolumeMgr::G4tgbVolumeMgr() +// -------------------------------------------------------------------- +G4tgbVolumeMgr::G4tgbVolumeMgr() { - G4ReflectionFactory::Instance()->SetScalePrecision(1.E-6*mm); - // NOTE: problems building matrices with not enough figures, - // like :ROTM RR30 0.866025 0.5 0. -0.5 0.866025 0. 0. 0 -1 + G4ReflectionFactory::Instance()->SetScalePrecision(1.E-6 * mm); + // NOTE: problems building matrices with not enough figures, + // like :ROTM RR30 0.866025 0.5 0. -0.5 0.866025 0. 0. 0 -1 theDetectorBuilder = new G4tgbDetectorBuilder(); } - -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbVolumeMgr::~G4tgbVolumeMgr() { delete theDetectorBuilder; delete theInstance; } - -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgbVolumeMgr* G4tgbVolumeMgr::GetInstance() { - if( !theInstance ) + if(theInstance == nullptr) { theInstance = new G4tgbVolumeMgr(); } return theInstance; } - -//--------------------------------------------------------------------- -void G4tgbVolumeMgr::AddTextFile( const G4String& fname ) +// -------------------------------------------------------------------- +void G4tgbVolumeMgr::AddTextFile(const G4String& fname) { - G4tgrFileReader::GetInstance()->AddTextFile( fname ); + G4tgrFileReader::GetInstance()->AddTextFile(fname); } - -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- G4VPhysicalVolume* G4tgbVolumeMgr::ReadAndConstructDetector() { const G4tgrVolume* tgrVoltop = theDetectorBuilder->ReadDetector(); return theDetectorBuilder->ConstructDetector(tgrVoltop); } - -//--------------------------------------------------------------------- -void G4tgbVolumeMgr::RegisterMe( const G4tgbVolume* vol ) +// -------------------------------------------------------------------- +void G4tgbVolumeMgr::RegisterMe(const G4tgbVolume* vol) { - theVolumeList.insert( G4mssvol::value_type( vol->GetName(), - const_cast(vol) ) ); + theVolumeList.insert( + G4mssvol::value_type(vol->GetName(), const_cast(vol))); } - -//--------------------------------------------------------------------- -void G4tgbVolumeMgr::RegisterMe( const G4VSolid* solid ) +// -------------------------------------------------------------------- +void G4tgbVolumeMgr::RegisterMe(const G4VSolid* solid) { - theSolids.insert( G4mmssol::value_type( solid->GetName(), - const_cast(solid) ) ); + theSolids.insert( + G4mmssol::value_type(solid->GetName(), const_cast(solid))); } - -//--------------------------------------------------------------------- -void G4tgbVolumeMgr::RegisterMe( const G4LogicalVolume* lv ) +// -------------------------------------------------------------------- +void G4tgbVolumeMgr::RegisterMe(const G4LogicalVolume* lv) { - theLVs.insert( G4mmslv::value_type( lv->GetName(), - const_cast(lv) ) ); + theLVs.insert( + G4mmslv::value_type(lv->GetName(), const_cast(lv))); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbVolumeMgr::RegisterMe() - Logical volume registered: " - << lv->GetName() << G4endl; + << lv->GetName() << G4endl; } #endif } -//--------------------------------------------------------------------- -void G4tgbVolumeMgr::RegisterMe( const G4VPhysicalVolume* pv ) +// -------------------------------------------------------------------- +void G4tgbVolumeMgr::RegisterMe(const G4VPhysicalVolume* pv) { - thePVs.insert( G4mmspv::value_type( pv->GetName(), - const_cast(pv) ) ); + thePVs.insert( + G4mmspv::value_type(pv->GetName(), const_cast(pv))); } - -//--------------------------------------------------------------------- -void G4tgbVolumeMgr::RegisterChildParentLVs( const G4LogicalVolume* logvol, - const G4LogicalVolume* parentLV ) +// -------------------------------------------------------------------- +void G4tgbVolumeMgr::RegisterChildParentLVs(const G4LogicalVolume* logvol, + const G4LogicalVolume* parentLV) { theLVInvTree[const_cast(logvol)] = const_cast(parentLV); @@ -144,59 +132,59 @@ void G4tgbVolumeMgr::RegisterChildParentLVs( const G4LogicalVolume* logvol, const_cast(logvol); } -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgbVolumeMgr::CopyVolumes() { //--------- Loop G4tgbVolume's and create a G4tgbVolume for each DetUnit - G4mapsvol::iterator cite; G4mapsvol vollist = G4tgrVolumeMgr::GetInstance()->GetVolumeMap(); - for(cite = vollist.begin(); cite != vollist.end(); cite++) + for(auto cite = vollist.cbegin(); cite != vollist.cend(); ++cite) { - G4tgrVolume* tgrvol = const_cast( (*cite).second ); - G4tgbVolume* svol = new G4tgbVolume( tgrvol ); - RegisterMe( svol ); + G4tgrVolume* tgrvol = const_cast((*cite).second); + G4tgbVolume* svol = new G4tgbVolume(tgrvol); + RegisterMe(svol); } } - -//--------------------------------------------------------------------- -G4tgbVolume* G4tgbVolumeMgr::FindVolume( const G4String& volname) +// -------------------------------------------------------------------- +G4tgbVolume* G4tgbVolumeMgr::FindVolume(const G4String& volname) { - G4mssvol::const_iterator cite = theVolumeList.find( volname ); - if( cite == theVolumeList.end() ) + G4mssvol::const_iterator cite = theVolumeList.find(volname); + if(cite == theVolumeList.cend()) { G4String ErrMessage = "G4tgbVolume not found: " + volname + " !"; - G4Exception("G4tgbVolumeMgr::FindVolume()", "InvalidSetup", - FatalException, ErrMessage); - return (G4tgbVolume*)0; - } else { + G4Exception("G4tgbVolumeMgr::FindVolume()", "InvalidSetup", FatalException, + ErrMessage); + return nullptr; + } + else + { return (*cite).second; } } - -//--------------------------------------------------------------------- -G4VSolid* G4tgbVolumeMgr::FindG4Solid( const G4String& name ) +// -------------------------------------------------------------------- +G4VSolid* G4tgbVolumeMgr::FindG4Solid(const G4String& name) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbVolumeMgr::FindG4Solid() - " << name << G4endl; } #endif - G4VSolid* oldSolid = 0; + G4VSolid* oldSolid = nullptr; std::pair mmssdi; - mmssdi = theSolids.equal_range( name ); + mmssdi = theSolids.equal_range(name); - if( mmssdi.first != mmssdi.second ) { // check there is a solid found + if(mmssdi.first != mmssdi.second) + { // check there is a solid found G4mmssol::const_iterator mmsscite = mmssdi.first; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << " G4tgbVolumeMgr::FindG4Solid() - Solid finding " - << name << G4endl; + G4cout << " G4tgbVolumeMgr::FindG4Solid() - Solid finding " << name + << G4endl; } #endif /* @@ -215,40 +203,39 @@ G4VSolid* G4tgbVolumeMgr::FindG4Solid( const G4String& name ) */ oldSolid = (*mmsscite).second; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " G4tgbVolumeMgr::FindG4Solid() - Solid already found " - << name << G4endl; + G4cout << " G4tgbVolumeMgr::FindG4Solid() - Solid already found " << name + << G4endl; } #endif } - + #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << " G4tgbVolumeMgr::FindG4Solid() - Old solid: " - << oldSolid << G4endl; + G4cout << " G4tgbVolumeMgr::FindG4Solid() - Old solid: " << oldSolid + << G4endl; } #endif return oldSolid; } - -//--------------------------------------------------------------------- -G4LogicalVolume* -G4tgbVolumeMgr::FindG4LogVol( const G4String& name, const G4bool exists ) +// -------------------------------------------------------------------- +G4LogicalVolume* G4tgbVolumeMgr::FindG4LogVol(const G4String& name, + const G4bool exists) { - G4mmslv::const_iterator mscite = theLVs.find( name ); - if( mscite == theLVs.end() ) + G4mmslv::const_iterator mscite = theLVs.find(name); + if(mscite == theLVs.cend()) { - if( exists ) + if(exists) { G4String ErrMessage = "Logical volume name " + name + " not found !"; G4Exception("G4tgbVolumeMgr::FindG4LogVol()", "InvalidSetup", FatalException, ErrMessage); } - return 0; + return nullptr; } else { @@ -256,20 +243,20 @@ G4tgbVolumeMgr::FindG4LogVol( const G4String& name, const G4bool exists ) } } -//--------------------------------------------------------------------- -G4VPhysicalVolume* -G4tgbVolumeMgr::FindG4PhysVol( const G4String& name, const G4bool exists ) +// -------------------------------------------------------------------- +G4VPhysicalVolume* G4tgbVolumeMgr::FindG4PhysVol(const G4String& name, + const G4bool exists) { - G4mmspv::const_iterator mscite = thePVs.find( name ); - if( mscite == thePVs.end() ) + G4mmspv::const_iterator mscite = thePVs.find(name); + if(mscite == thePVs.cend()) { - if( exists ) + if(exists) { G4String ErrMessage = "Physical volume name " + name + " not found !"; G4Exception("G4tgbVolumeMgr::FindG4PhysVol()", "InvalidSetup", FatalException, ErrMessage); } - return 0; + return nullptr; } else { @@ -277,85 +264,80 @@ G4tgbVolumeMgr::FindG4PhysVol( const G4String& name, const G4bool exists ) } } - -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- G4VPhysicalVolume* G4tgbVolumeMgr::GetTopPhysVol() { - G4LogicalVolume* lv = GetTopLogVol(); - G4VPhysicalVolume* pv = ( *(thePVs.find( lv->GetName() )) ).second; + G4LogicalVolume* lv = GetTopLogVol(); + G4VPhysicalVolume* pv = (*(thePVs.find(lv->GetName()))).second; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << " G4tgbVolumeMgr::GetTopPhysVol() - pv: " - << pv->GetName() << G4endl; + G4cout << " G4tgbVolumeMgr::GetTopPhysVol() - pv: " << pv->GetName() + << G4endl; } #endif return pv; } - -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- G4LogicalVolume* G4tgbVolumeMgr::GetTopLogVol() { //----------- Start from any G4LogicalVolume, because if you go upwards - // you will always end at the top + // you will always end at the top #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgbVolumeMgr::GetTopLogVol theLVInvTresize " << theLVInvTree.size() << G4endl; } #endif - if( theLVInvTree.size() == 0 ) - { + if(theLVInvTree.size() == 0) + { G4Exception("G4tgbVolumeMgr::GetTopLogVol()", "InvalidSetup", FatalException, "theLVInvTree has no elements."); } G4LogicalVolume* lv = (*(theLVInvTree.begin())).second; //------- if first element is the top LV, its parent is 0 - if( lv == 0 ) + if(lv == nullptr) { lv = (*(theLVInvTree.begin())).first; - } - else + } + else { - while( (*(theLVInvTree.find( lv ))).second != 0) + while((*(theLVInvTree.find(lv))).second != nullptr) { //---------- get parent of first position - lv = (*(theLVInvTree.find( lv ))).second; + lv = (*(theLVInvTree.find(lv))).second; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << " G4tgbVolumeMgr::GetTopPhysVol: lv " - << lv->GetName() << G4endl; + G4cout << " G4tgbVolumeMgr::GetTopPhysVol: lv " << lv->GetName() + << G4endl; } #endif } } - + return lv; } - -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgbVolumeMgr::BuildPhysVolTree() { -/* - G4PhysicalVolumeStore* pvs = G4PhysicalVolumeStore::GetInstance(); - std::vector::iterator cite; - for( cite = pvs->begin(); cite != pvs->end(); cite++ ) - { - thePVTree[ *cite ] = (*cite)->GetMother(); - thePVInvTree[ (*cite)->GetMother() ] = *cite; - } -*/ + /* + G4PhysicalVolumeStore* pvs = G4PhysicalVolumeStore::GetInstance(); + for( auto cite = pvs->cbegin(); cite != pvs->cend(); ++cite ) + { + thePVTree[ *cite ] = (*cite)->GetMother(); + thePVInvTree[ (*cite)->GetMother() ] = *cite; + } + */ } - -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgbVolumeMgr::DumpSummary() { //---------- Dump number of objects of each class @@ -367,12 +349,12 @@ void G4tgbVolumeMgr::DumpSummary() G4cout << " Number of G4VPhysicalVolume's: " << thePVs.size() << G4endl; G4tgbMaterialMgr* mateMgr = G4tgbMaterialMgr::GetInstance(); - G4cout << " Number of G4Isotope's: " - << mateMgr->GetG4IsotopeList().size() << G4endl; - G4cout << " Number of G4Element's: " - << mateMgr->GetG4ElementList().size() << G4endl; - G4cout << " Number of G4Material's: " - << mateMgr->GetG4MaterialList().size() << G4endl; + G4cout << " Number of G4Isotope's: " << mateMgr->GetG4IsotopeList().size() + << G4endl; + G4cout << " Number of G4Element's: " << mateMgr->GetG4ElementList().size() + << G4endl; + G4cout << " Number of G4Material's: " << mateMgr->GetG4MaterialList().size() + << G4endl; G4tgbRotationMatrixMgr* rotmMgr = G4tgbRotationMatrixMgr::GetInstance(); G4cout << " Number of G4RotationMatrix's: " @@ -384,57 +366,51 @@ void G4tgbVolumeMgr::DumpSummary() DumpG4PhysVolTree(); } - -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgbVolumeMgr::DumpG4SolidList() { - G4mmssol::const_iterator cite; - for( cite = theSolids.begin(); cite != theSolids.end(); cite++) + for(auto cite = theSolids.cbegin(); cite != theSolids.cend(); ++cite) { - G4cout << "G4SOLID: " << (*cite).second->GetName() - << " of type " << (*cite).second->GetEntityType() << G4endl; + G4cout << "G4SOLID: " << (*cite).second->GetName() << " of type " + << (*cite).second->GetEntityType() << G4endl; } -} - +} //--------------------------------------------------------------------- void G4tgbVolumeMgr::DumpG4LogVolTree() { G4cout << " @@@@@@@@@@@@@ DUMPING G4LogicalVolume's Tree " << G4endl; - + G4LogicalVolume* lv = GetTopLogVol(); - + DumpG4LogVolLeaf(lv, 0); } - //--------------------------------------------------------------------- -void G4tgbVolumeMgr::DumpG4LogVolLeaf( const G4LogicalVolume* lv, - unsigned int leafDepth) +void G4tgbVolumeMgr::DumpG4LogVolLeaf(const G4LogicalVolume* lv, + unsigned int leafDepth) { - for( size_t ii=0; ii < leafDepth; ii++ ) + for(std::size_t ii = 0; ii < leafDepth; ++ii) { G4cout << " "; } G4cout << " LV:(" << leafDepth << ")" << lv->GetName() << G4endl; - + //---------- construct the children of this volume // G4LogicalVolume* lvnc = const_cast(lv); // std::pair children // = theLVTree.equal_range( lvnc ); // - // G4mlvlv::iterator cite; - - leafDepth++; - // for( cite = children.first; cite != children.second; cite++ ) + // G4mlvlv::iterator cite; + + ++leafDepth; + // for( cite = children.first; cite != children.second; ++cite ) // { // DumpG4LVLeaf( (*cite)->second, leafDepth ); - // } + // } } - - -//--------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgbVolumeMgr::DumpG4PhysVolTree() { G4cout << " @@@@@@@@@@@@@ DUMPING G4PhysicalVolume's Tree " << G4endl; @@ -444,12 +420,11 @@ void G4tgbVolumeMgr::DumpG4PhysVolTree() DumpG4PhysVolLeaf(pv, 0); } - -//--------------------------------------------------------------------- -void G4tgbVolumeMgr::DumpG4PhysVolLeaf( const G4VPhysicalVolume* pv, - unsigned int leafDepth) +// -------------------------------------------------------------------- +void G4tgbVolumeMgr::DumpG4PhysVolLeaf(const G4VPhysicalVolume* pv, + unsigned int leafDepth) { - for( size_t ii=0; ii < leafDepth; ii++ ) + for(std::size_t ii = 0; ii < leafDepth; ++ii) { G4cout << " "; } @@ -460,10 +435,10 @@ void G4tgbVolumeMgr::DumpG4PhysVolLeaf( const G4VPhysicalVolume* pv, // std::pair children // = thePVTree.equal_range( pvnc ); // - // G4mpvpv::iterator cite; + // G4mpvpv::iterator cite; - leafDepth++; - // for( cite = children.first; cite != children.second; cite++ ) + ++leafDepth; + // for( cite = children.first; cite != children.second; ++cite ) // { // DumpG4PVLeaf( (*cite)->second, leafDepth ); // } diff --git a/source/persistency/ascii/src/G4tgrElement.cc b/source/persistency/ascii/src/G4tgrElement.cc index 9085244955..61a1fd4146 100644 --- a/source/persistency/ascii/src/G4tgrElement.cc +++ b/source/persistency/ascii/src/G4tgrElement.cc @@ -23,21 +23,19 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrElement implementation // -// -// -// class G4tgrElement - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrElement.hh" +// -------------------------------------------------------------------- G4tgrElement::G4tgrElement() { } +// -------------------------------------------------------------------- G4tgrElement::~G4tgrElement() { } diff --git a/source/persistency/ascii/src/G4tgrElementFromIsotopes.cc b/source/persistency/ascii/src/G4tgrElementFromIsotopes.cc index ad305e3a1f..9bdc2fc29f 100644 --- a/source/persistency/ascii/src/G4tgrElementFromIsotopes.cc +++ b/source/persistency/ascii/src/G4tgrElementFromIsotopes.cc @@ -23,68 +23,60 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrElementFromIsotopes implementation // -// -// -// class G4tgrElementFromIsotopes - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrElementFromIsotopes.hh" #include "G4tgrUtils.hh" #include "G4tgrMessenger.hh" - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrElementFromIsotopes::G4tgrElementFromIsotopes() - : theNoIsotopes(0) { } -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrElementFromIsotopes::~G4tgrElementFromIsotopes() { } -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrElementFromIsotopes:: -G4tgrElementFromIsotopes( const std::vector& wl ) +G4tgrElementFromIsotopes(const std::vector& wl) { - //---------- Check for miminum number of words read - G4tgrUtils::CheckWLsize( wl, 6, WLSIZE_GE, + //---------- Check for miminum number of words read + G4tgrUtils::CheckWLsize(wl, 6, WLSIZE_GE, "G4tgrElementFromIsotopes::G4tgrElementFromIsotopes"); - //:ELEM_FROM_ISOT NAME SYMBOL N_ISOT (ISOT_NAME ISOT_ABUNDANCE) + //:ELEM_FROM_ISOT NAME SYMBOL N_ISOT (ISOT_NAME ISOT_ABUNDANCE) - theType = "ElementFromIsotopes"; - theName = G4tgrUtils::GetString( wl[1] ); - theSymbol = G4tgrUtils::GetString( wl[2] ); - theNoIsotopes = G4tgrUtils::GetInt( wl[3] ); + theType = "ElementFromIsotopes"; + theName = G4tgrUtils::GetString(wl[1]); + theSymbol = G4tgrUtils::GetString(wl[2]); + theNoIsotopes = G4tgrUtils::GetInt(wl[3]); - for( G4int ii = 0; ii < theNoIsotopes; ii++ ) + for(G4int ii = 0; ii < theNoIsotopes; ++ii) { - theComponents.push_back( G4tgrUtils::GetString( wl[4+ii*2] ) ); - theAbundances.push_back( G4tgrUtils::GetDouble( wl[4+ii*2+1] ) ); + theComponents.push_back(G4tgrUtils::GetString(wl[4 + ii * 2])); + theAbundances.push_back(G4tgrUtils::GetDouble(wl[4 + ii * 2 + 1])); } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { G4cout << " Created " << *this << G4endl; } #endif } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- std::ostream& operator<<(std::ostream& os, const G4tgrElementFromIsotopes& obj) { - os << "G4tgrElementFromIsotopes= " << obj.theName - << " N isotopes " << obj.theNoIsotopes - << " COMPONENTS " << G4endl; - for(size_t ii = 0; ii < obj.theComponents.size(); ii++ ) - { + os << "G4tgrElementFromIsotopes= " << obj.theName << " N isotopes " + << obj.theNoIsotopes << " COMPONENTS " << G4endl; + for(std::size_t ii = 0; ii < obj.theComponents.size(); ++ii) + { os << obj.theComponents[ii] << " : " << obj.theAbundances[ii]; } os << G4endl; diff --git a/source/persistency/ascii/src/G4tgrElementSimple.cc b/source/persistency/ascii/src/G4tgrElementSimple.cc index 2768a1483c..081b46d95e 100644 --- a/source/persistency/ascii/src/G4tgrElementSimple.cc +++ b/source/persistency/ascii/src/G4tgrElementSimple.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrElementSimple implementation // -// -// -// class G4tgrElementSimple - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrElementSimple.hh" @@ -38,46 +34,42 @@ #include "G4tgrUtils.hh" #include "G4tgrMessenger.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrElementSimple::G4tgrElementSimple() - : theZ(0.), theA(0.) { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrElementSimple::~G4tgrElementSimple() { } - -// ------------------------------------------------------------------------- -G4tgrElementSimple::G4tgrElementSimple( const std::vector& wl ) +// -------------------------------------------------------------------- +G4tgrElementSimple::G4tgrElementSimple(const std::vector& wl) { - //---------- Check for miminum number of words read - G4tgrUtils::CheckWLsize( wl, 5, WLSIZE_EQ, - "G4tgrElementSimple::G4tgrElementSimple"); + //---------- Check for miminum number of words read + G4tgrUtils::CheckWLsize(wl, 5, WLSIZE_EQ, + "G4tgrElementSimple::G4tgrElementSimple"); - theType = "ElementSimple"; - theName = G4tgrUtils::GetString( wl[1] ); - theSymbol = G4tgrUtils::GetString( wl[2] ); - theZ = G4tgrUtils::GetInt( wl[3] ); - theA = G4tgrUtils::GetDouble( wl[4], g/mole); + theType = "ElementSimple"; + theName = G4tgrUtils::GetString(wl[1]); + theSymbol = G4tgrUtils::GetString(wl[2]); + theZ = G4tgrUtils::GetInt(wl[3]); + theA = G4tgrUtils::GetDouble(wl[4], g / mole); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Created " << *this << G4endl; + G4cout << " Created " << *this << G4endl; } #endif } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- std::ostream& operator<<(std::ostream& os, const G4tgrElementSimple& obj) { - os << "G4tgrElementSimple= " << obj.theName - << " Z = " << obj.theZ << " A= " << obj.theA << G4endl; + os << "G4tgrElementSimple= " << obj.theName << " Z = " << obj.theZ + << " A= " << obj.theA << G4endl; return os; } diff --git a/source/persistency/ascii/src/G4tgrEvaluator.cc b/source/persistency/ascii/src/G4tgrEvaluator.cc index 9447ede991..3e0e7de7a8 100644 --- a/source/persistency/ascii/src/G4tgrEvaluator.cc +++ b/source/persistency/ascii/src/G4tgrEvaluator.cc @@ -23,67 +23,60 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrEvaluator implementation // -// -// -// class G4tgrEvaluator - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrEvaluator.hh" #include -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrEvaluator::G4tgrEvaluator() { AddCommonFunctions(); } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrEvaluator::~G4tgrEvaluator() { } - -// ------------------------------------------------------------------------- -void G4tgrEvaluator::print_error( G4int estatus ) const +// -------------------------------------------------------------------- +void G4tgrEvaluator::print_error(G4int estatus) const { - switch (estatus) + switch(estatus) { case ERROR_SYNTAX_ERROR: G4cerr << "G4tgrEvaluator: syntax error!" << G4endl; return; default: - G4Evaluator::print_error(); - return; + G4Evaluator::print_error(); + return; } -} - -G4double fsin( G4double arg ){ return std::sin(arg); } -G4double fcos( G4double arg ){ return std::cos(arg); } -G4double ftan( G4double arg ){ return std::tan(arg); } -G4double fasin( G4double arg ){ return std::asin(arg); } -G4double facos( G4double arg ){ return std::acos(arg); } -G4double fatan( G4double arg ){ return std::atan(arg); } -G4double fatan2( G4double arg1, G4double arg2 ){ return std::atan2(arg1,arg2); } -G4double fsinh( G4double arg ){ return std::sinh(arg); } -G4double fcosh( G4double arg ){ return std::cosh(arg); } -G4double ftanh( G4double arg ){ return std::tanh(arg); } +} + +G4double fsin(G4double arg) { return std::sin(arg); } +G4double fcos(G4double arg) { return std::cos(arg); } +G4double ftan(G4double arg) { return std::tan(arg); } +G4double fasin(G4double arg) { return std::asin(arg); } +G4double facos(G4double arg) { return std::acos(arg); } +G4double fatan(G4double arg) { return std::atan(arg); } +G4double fatan2(G4double arg1, G4double arg2) { return std::atan2(arg1, arg2); } +G4double fsinh(G4double arg) { return std::sinh(arg); } +G4double fcosh(G4double arg) { return std::cosh(arg); } +G4double ftanh(G4double arg) { return std::tanh(arg); } // G4double fasinh( G4double arg ){ return std::asinh(arg); } // G4double facosh( G4double arg ){ return std::acosh(arg); } // G4double fatanh( G4double arg ){ return std::atanh(arg); } -G4double fsqrt( G4double arg ){ return std::sqrt(arg); } -G4double fexp( G4double arg ){ return std::exp(arg); } -G4double flog( G4double arg ){ return std::log(arg); } -G4double flog10( G4double arg ){ return std::log10(arg); } -G4double fpow( G4double arg1, G4double arg2 ){ return std::pow(arg1,arg2); } +G4double fsqrt(G4double arg) { return std::sqrt(arg); } +G4double fexp(G4double arg) { return std::exp(arg); } +G4double flog(G4double arg) { return std::log(arg); } +G4double flog10(G4double arg) { return std::log10(arg); } +G4double fpow(G4double arg1, G4double arg2) { return std::pow(arg1, arg2); } - -//-------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgrEvaluator::AddCommonFunctions() { setFunction("sin", (*fsin)); @@ -96,9 +89,9 @@ void G4tgrEvaluator::AddCommonFunctions() setFunction("sinh", (*fsinh)); setFunction("cosh", (*fcosh)); setFunction("tanh", (*ftanh)); -// setFunction("asinh", (*fasinh)); -// setFunction("acosh", (*facosh)); -// setFunction("atanh", (*fatanh)); + // setFunction("asinh", (*fasinh)); + // setFunction("acosh", (*facosh)); + // setFunction("atanh", (*fatanh)); setFunction("sqrt", (*fsqrt)); setFunction("exp", (*fexp)); setFunction("log", (*flog)); diff --git a/source/persistency/ascii/src/G4tgrFileIn.cc b/source/persistency/ascii/src/G4tgrFileIn.cc index 1d7821ba17..c8f9431f77 100644 --- a/source/persistency/ascii/src/G4tgrFileIn.cc +++ b/source/persistency/ascii/src/G4tgrFileIn.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrFileIn implementation // -// -// -// class G4tgrFileIn - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "globals.hh" @@ -43,101 +39,102 @@ #include "G4tgrUtils.hh" #include "G4UIcommand.hh" -G4ThreadLocal std::vector *G4tgrFileIn::theInstances = 0; +G4ThreadLocal std::vector* G4tgrFileIn::theInstances = nullptr; -//----------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrFileIn::G4tgrFileIn() - : theCurrentFile(-1), theName("") { - if (!theInstances) { theInstances = new std::vector; } + if(theInstances == nullptr) + { + theInstances = new std::vector; + } } - -//----------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrFileIn::~G4tgrFileIn() { - delete theInstances; theInstances=0; -/* - std::vector::const_iterator vfcite; - for( vfcite = theInstances->begin(); vfcite != theInstances->end(); vfcite++) - { - delete *vfcite; - } -*/ + delete theInstances; + theInstances = nullptr; + /* + for( auto vfcite = theInstances->cbegin(); + vfcite != theInstances->cend(); ++vfcite) + { + delete *vfcite; + } + */ } - -//----------------------------------------------------------------------- -G4tgrFileIn& G4tgrFileIn::GetInstance( const G4String& filename ) +// -------------------------------------------------------------------- +G4tgrFileIn& G4tgrFileIn::GetInstance(const G4String& filename) { - if (!theInstances) { theInstances = new std::vector; } + if(theInstances == nullptr) + { + theInstances = new std::vector; + } std::vector::const_iterator vfcite; - for( vfcite = theInstances->begin(); vfcite != theInstances->end(); vfcite++) + for(vfcite = theInstances->cbegin(); vfcite != theInstances->cend(); ++vfcite) { - if( (*vfcite)->GetName() == filename) + if((*vfcite)->GetName() == filename) { return *(*vfcite); } } - G4tgrFileIn* instance = 0; - if( vfcite == theInstances->end() ) + G4tgrFileIn* instance = nullptr; + if(vfcite == theInstances->cend()) { - instance = new G4tgrFileIn( filename ); - - instance->theCurrentFile = -1; - instance->OpenNewFile( filename.c_str() ); + instance = new G4tgrFileIn(filename); - theInstances->push_back( instance ); + instance->theCurrentFile = -1; + instance->OpenNewFile(filename.c_str()); + + theInstances->push_back(instance); } return *instance; } - -//----------------------------------------------------------------------- -void G4tgrFileIn::OpenNewFile( const char* filename ) +// -------------------------------------------------------------------- +void G4tgrFileIn::OpenNewFile(const char* filename) { - theCurrentFile++; + ++theCurrentFile; std::ifstream* fin = new std::ifstream(filename); theFiles.push_back(fin); - theLineNo.push_back( 0 ); + theLineNo.push_back(0); - theNames.push_back( filename ); + theNames.push_back(filename); #ifndef OS_SUN_4_2 - if( !fin->is_open() ) + if(!fin->is_open()) { G4String ErrMessage = "Input file does not exist: " + G4String(filename); - G4Exception("G4tgrFileIn::OpenNewFile()", - "InvalidInput", FatalException, ErrMessage); + G4Exception("G4tgrFileIn::OpenNewFile()", "InvalidInput", FatalException, + ErrMessage); } #endif } - -//----------------------------------------------------------------------- -G4tgrFileIn& G4tgrFileIn::GetInstanceOpened( const G4String& filename ) +// -------------------------------------------------------------------- +G4tgrFileIn& G4tgrFileIn::GetInstanceOpened(const G4String& filename) { G4tgrFileIn& filein = G4tgrFileIn::GetInstance(filename); - if (filein.GetName() != filename ) + if(filein.GetName() != filename) { G4String ErrMessage = "File not opened yet: " + filename; - G4Exception("G4tgrFileIn::GetInstanceOpened()", - "InvalidInput", FatalException, ErrMessage); + G4Exception("G4tgrFileIn::GetInstanceOpened()", "InvalidInput", + FatalException, ErrMessage); } else { return filein; } - return filein; // to avoid compilation warnings + return filein; // to avoid compilation warnings } - -//----------------------------------------------------------------------- -G4int G4tgrFileIn::GetWordsInLine( std::vector& wordlist) +// -------------------------------------------------------------------- +G4int G4tgrFileIn::GetWordsInLine(std::vector& wordlist) { G4int isok = 1; @@ -147,107 +144,119 @@ G4int G4tgrFileIn::GetWordsInLine( std::vector& wordlist) //----- Clear wordlist G4int wsiz = wordlist.size(); G4int ii; - for (ii = 0; ii < wsiz; ii++) + for(ii = 0; ii < wsiz; ++ii) { wordlist.pop_back(); - } + } - //---------- Loop lines while there is an ending '\' or line is blank + //---------- Loop lines while there is an ending '\' or line is blank const G4int NMAXLIN = 1000; - char ltemp[NMAXLIN]; // there won't be lines longer than NMAXLIN characters - for (;;) + char ltemp[NMAXLIN]; // there won't be lines longer than NMAXLIN characters + for(;;) { (theLineNo[theCurrentFile])++; - for ( ii = 0; ii < NMAXLIN; ii++) { ltemp[ii] = ' '; } - theFiles[theCurrentFile]->getline( ltemp, NMAXLIN ); + for(ii = 0; ii < NMAXLIN; ++ii) + { + ltemp[ii] = ' '; + } + theFiles[theCurrentFile]->getline(ltemp, NMAXLIN); //---------- Check for lines longer than NMAXLIN character - for ( ii=0; ii < NMAXLIN; ii++) + for(ii = 0; ii < NMAXLIN; ++ii) { - if ( ltemp[ii] == '\0' ) { break; } + if(ltemp[ii] == '\0') + { + break; + } } - if ( ii == NMAXLIN-1 ) + if(ii == NMAXLIN - 1) { ErrorInLine(); - G4String ErrMessage = "Too long line. Please split it " - + G4String("putting a '\\' at the end!"); + G4String ErrMessage = "Too long line. Please split it " + + G4String("putting a '\\' at the end!"); G4Exception("G4tgrFileIn::GetWordsInLine()", "InvalidInput", FatalException, ErrMessage); } - + //---------- End of file - if ( EndOfFile() ) + if(EndOfFile()) { return 0; } - - //---------- Convert line read to istrstream to split it in words + + //---------- Convert line read to istrstream to split it in words std::istringstream istr_line(ltemp); - + //--------- Count how many words are there in ltemp // this shouln't be needed, but SUN compiler has problems... G4int NoWords = 0; - char* tt = ltemp; + char* tt = ltemp; G4String stemp(ltemp); do { - if( *tt != ' ' && *(tt) != '\0' ) + if(*tt != ' ' && *(tt) != '\0') { - if( tt == ltemp) + if(tt == ltemp) { - NoWords++; + ++NoWords; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << "G4tgrFileIn::GetWordsInLine() - NoWords" - << NoWords << ltemp << G4endl; + G4cout << "G4tgrFileIn::GetWordsInLine() - NoWords" << NoWords + << ltemp << G4endl; } #endif } - else if( *(tt-1) == ' ' || *(tt-1) == '\015' || *(tt-1) == '\t') + else if(*(tt - 1) == ' ' || *(tt - 1) == '\015' || *(tt - 1) == '\t') { - NoWords++; + ++NoWords; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << "G4tgrFileIn::GetWordsInLine() - NoWords" - << NoWords << ltemp << G4endl; + G4cout << "G4tgrFileIn::GetWordsInLine() - NoWords" << NoWords + << ltemp << G4endl; } #endif } } - tt++; - } while((*tt != '\0') && (stemp.length()!=0)); + ++tt; + } while((*tt != '\0') && (stemp.length() != 0)); - if(stemp.length() == 0) { NoWords = 0; } + if(stemp.length() == 0) + { + NoWords = 0; + } //--------- Read words from istr_line and write them into wordlist - for( ii=0; ii < NoWords; ii++) + for(ii = 0; ii < NoWords; ++ii) { stemp = ""; istr_line >> stemp; - if ( stemp.length() == 0 ) { break; } - G4int comment = stemp.find(G4String("//") ); + if(stemp.length() == 0) + { + break; + } + G4int comment = stemp.find(G4String("//")); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { G4cout << "!!!COMMENT" << comment << stemp.c_str() << G4endl; } #endif - if ( comment == 0 ) + if(comment == 0) { - break; + break; } - else if ( comment > 0 ) + else if(comment > 0) { - stemp = stemp.substr( 0, comment ); + stemp = stemp.substr(0, comment); wordlist.push_back(stemp); break; - } + } wordlist.push_back(stemp); } - + // These two algorithms should be the more STL-like way, but they don't // work for files whose lines end without '\015'=TAB (STL problem: doesn't // find end of string??): @@ -256,11 +265,11 @@ G4int G4tgrFileIn::GetWordsInLine( std::vector& wordlist) // copy(G4String_iter, eosl, back_inserter(wordlist)); // typedef istream_iterator G4String_iter; // copy(G4String_iter(istr_line), G4String_iter(), back_inserter(wordlist)); - - if ( wordlist.size() != 0 ) + + if(wordlist.size() != 0) { - if( (*(wordlist.end()-1)).compare("\\") == 0 ) // use '\' to mark - { // continuing line + if((*(wordlist.end() - 1)).compare("\\") == 0) // use '\' to mark + { // continuing line wordlist.pop_back(); } else @@ -269,65 +278,65 @@ G4int G4tgrFileIn::GetWordsInLine( std::vector& wordlist) } } } - + //--------- A pair of double quotes delimits a word, therefore, look for the // case where there is more than one word between two double quotes std::vector wordlist2; - G4String wordq = ""; + G4String wordq = ""; unsigned int imerge = 0; - for( size_t jj = 0; jj < wordlist.size(); jj++) + for(std::size_t jj = 0; jj < wordlist.size(); ++jj) { - if( wordlist[jj].substr(0,1) == "\"" ) + if(wordlist[jj].substr(0, 1) == "\"") { imerge = 1; - } - if( wordlist[jj][ wordlist[jj].size()-1 ] == '\"' ) + } + if(wordlist[jj][wordlist[jj].size() - 1] == '\"') { - if( imerge != 1 ) + if(imerge != 1) { G4String err1 = " word with trailing '\"' while there is no"; G4String err2 = " previous word with leading '\"' in line "; - G4String err = err1 + err2; + G4String err = err1 + err2; DumpException(err); } imerge = 2; } - if( imerge == 0 ) + if(imerge == 0) { - wordlist2.push_back( wordlist[jj] ); + wordlist2.push_back(wordlist[jj]); } - else if( imerge == 1 ) + else if(imerge == 1) { - if( wordq == "" ) + if(wordq == "") { - wordq.append( wordlist[jj].substr(1,wordlist[jj].size()) ); + wordq.append(wordlist[jj].substr(1, wordlist[jj].size())); } else { - wordq.append( wordlist[jj].substr(0,wordlist[jj].size()) ); + wordq.append(wordlist[jj].substr(0, wordlist[jj].size())); } wordq.append(" "); } - else if( imerge == 2 ) + else if(imerge == 2) { - if( wordq == "" ) + if(wordq == "") { - wordq.append( wordlist[jj].substr(1,wordlist[jj].size()-2)); + wordq.append(wordlist[jj].substr(1, wordlist[jj].size() - 2)); } else { - wordq.append( wordlist[jj].substr(0,wordlist[jj].size()-1) ); - } - wordlist2.push_back( wordq ); - wordq = ""; + wordq.append(wordlist[jj].substr(0, wordlist[jj].size() - 1)); + } + wordlist2.push_back(wordq); + wordq = ""; imerge = 0; } } - if( imerge == 1 ) + if(imerge == 1) { G4String err1 = " word with leading '\"' in line while there is no"; G4String err2 = " later word with trailing '\"' in line "; - G4String err = err1 + err2; + G4String err = err1 + err2; DumpException(err); } @@ -336,57 +345,53 @@ G4int G4tgrFileIn::GetWordsInLine( std::vector& wordlist) // Or why not like this (?): // typedef std::istream_iterator string_iter; // std::copy(string_iter(istr_line), string_iter(), back_inserter(wordlist)); - + // check if including a new file - if( wordlist[0] == "#include" ) + if(wordlist[0] == "#include") { - if( wordlist.size() != 2 ) + if(wordlist.size() != 2) { ErrorInLine(); - G4String ErrMessage - = "'#include' should have as second argument, the filename !"; + G4String ErrMessage = + "'#include' should have as second argument, the filename !"; G4Exception("G4tgrFileIn::GetWordsInLine()", "InvalidInput", FatalException, ErrMessage); } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { G4cout << " G4tgrFileIn::GetWordsInLine() - Include found !" << G4endl; } #endif - OpenNewFile( wordlist[1].c_str() ); - isok = GetWordsInLine( wordlist); + OpenNewFile(wordlist[1].c_str()); + isok = GetWordsInLine(wordlist); } return isok; } - -//----------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgrFileIn::ErrorInLine() { - G4cerr << "!! EXITING: ERROR IN LINE No " - << theLineNo[theCurrentFile] << " file: " - << theNames[theCurrentFile] << " : "; + G4cerr << "!! EXITING: ERROR IN LINE No " << theLineNo[theCurrentFile] + << " file: " << theNames[theCurrentFile] << " : "; } - -//----------------------------------------------------------------------- +// -------------------------------------------------------------------- G4bool G4tgrFileIn::EndOfFile() { G4bool isok = theFiles[theCurrentFile]->eof(); - if( isok ) + if(isok) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << " G4tgrFileIn::EndOfFile() - EOF: " - << theCurrentFile << G4endl; + G4cout << " G4tgrFileIn::EndOfFile() - EOF: " << theCurrentFile << G4endl; } #endif - theCurrentFile--; - if( theCurrentFile != -1 ) // Last file will be closed by the user + --theCurrentFile; + if(theCurrentFile != -1) // Last file will be closed by the user { Close(); } @@ -394,15 +399,15 @@ G4bool G4tgrFileIn::EndOfFile() // Only real closing if all files are closed #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << " G4tgrFileIn::EndOfFile() - EOF: " - << isok << " " << theCurrentFile << G4endl; + G4cout << " G4tgrFileIn::EndOfFile() - EOF: " << isok << " " + << theCurrentFile << G4endl; } #endif - if( theCurrentFile != -1 ) - { - return 0; + if(theCurrentFile != -1) + { + return false; } else { @@ -410,31 +415,28 @@ G4bool G4tgrFileIn::EndOfFile() } } - -//----------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgrFileIn::Close() { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << "G4tgrFileIn::Close() - " - << theCurrentFile << ", size " << theFiles.size() << G4endl; + G4cout << "G4tgrFileIn::Close() - " << theCurrentFile << ", size " + << theFiles.size() << G4endl; } #endif - theFiles[theCurrentFile+1]->close(); + theFiles[theCurrentFile + 1]->close(); theFiles.pop_back(); } - -//----------------------------------------------------------------------- -void G4tgrFileIn::DumpException( const G4String& sent ) +// -------------------------------------------------------------------- +void G4tgrFileIn::DumpException(const G4String& sent) { G4String Err1 = sent + " in file " + theName; - G4String Err2 = " line No: " - + G4UIcommand::ConvertToString(theLineNo[theCurrentFile]); + G4String Err2 = + " line No: " + G4UIcommand::ConvertToString(theLineNo[theCurrentFile]); G4String ErrMessage = Err1; - G4Exception("G4tgrFileIn::DumpException()", "FileError", - FatalException, ErrMessage); + G4Exception("G4tgrFileIn::DumpException()", "FileError", FatalException, + ErrMessage); } - diff --git a/source/persistency/ascii/src/G4tgrFileReader.cc b/source/persistency/ascii/src/G4tgrFileReader.cc index 071b5815c3..92982547dc 100644 --- a/source/persistency/ascii/src/G4tgrFileReader.cc +++ b/source/persistency/ascii/src/G4tgrFileReader.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrFileReader implementation // -// -// -// class G4tgrFileReader - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrFileReader.hh" #include "G4tgrParameterMgr.hh" @@ -48,76 +44,75 @@ #include "G4tgrLineProcessor.hh" #include "G4tgrMessenger.hh" +G4ThreadLocal G4tgrFileReader* G4tgrFileReader::theInstance = nullptr; -G4ThreadLocal G4tgrFileReader* G4tgrFileReader::theInstance = 0; - - -//--------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrFileReader::G4tgrFileReader() { theLineProcessor = new G4tgrLineProcessor; } - -//--------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrFileReader::~G4tgrFileReader() { delete theLineProcessor; delete theInstance; } - -//--------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrFileReader* G4tgrFileReader::GetInstance() { - if( !theInstance ) { + if(theInstance == nullptr) + { theInstance = new G4tgrFileReader; } return theInstance; } -//--------------------------------------------------------------- -G4bool G4tgrFileReader::ReadFiles() +// -------------------------------------------------------------------- +G4bool G4tgrFileReader::ReadFiles() { + std::vector wl, wlnew; - std::vector< G4String > wl,wlnew; - #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " Number of geometry data files = " << theTextFiles.size() << G4endl; } #endif - if( theTextFiles.size() == 0 ) + if(theTextFiles.size() == 0) { - G4Exception("G4tgrFileReader::ReadFiles()", "InvalidInput", - FatalException, "No files to read ..."); + G4Exception("G4tgrFileReader::ReadFiles()", "InvalidInput", FatalException, + "No files to read ..."); } - for( size_t ii = 0; ii < theTextFiles.size(); ii++ ) + for(std::size_t ii = 0; ii < theTextFiles.size(); ++ii) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { G4cout << " Reading data file " << theTextFiles[ii] << G4endl; } #endif - - G4tgrFileIn fin = G4tgrFileIn::GetInstance( theTextFiles[ii] ); - + + G4tgrFileIn fin = G4tgrFileIn::GetInstance(theTextFiles[ii]); + G4int nlines = 0; for(;;) { - nlines++; - if(! fin.GetWordsInLine( wlnew ) ) { break; } - // Check if it is continuation line or first line - if( wlnew[0].c_str()[0] != ':' ) + ++nlines; + if(!fin.GetWordsInLine(wlnew)) { - wl.insert( wl.end(), wlnew.begin(), wlnew.end() ); + break; + } + // Check if it is continuation line or first line + if(wlnew[0].c_str()[0] != ':') + { + wl.insert(wl.end(), wlnew.begin(), wlnew.end()); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 4 ) + if(G4tgrMessenger::GetVerboseLevel() >= 4) { G4tgrUtils::DumpVS(wl, "!!!! adding line"); } @@ -128,29 +123,29 @@ G4bool G4tgrFileReader::ReadFiles() { //----- Process previous tag #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 4 ) + if(G4tgrMessenger::GetVerboseLevel() >= 4) { G4tgrUtils::DumpVS(wl, "!!!! line read"); } #endif - if( nlines != 1) // first line has no previous tag + if(nlines != 1) // first line has no previous tag { - if( ! theLineProcessor->ProcessLine( wl ) ) + if(!theLineProcessor->ProcessLine(wl)) { - fin.DumpException( "Tag not found: " + wl[0]); + fin.DumpException("Tag not found: " + wl[0]); } } wl = wlnew; } } - - if( wl.size() != 0 ) + + if(wl.size() != 0) { - if( ! theLineProcessor->ProcessLine( wl ) ) + if(!theLineProcessor->ProcessLine(wl)) { - fin.DumpException( "Tag not found: " + wl[0]); + fin.DumpException("Tag not found: " + wl[0]); } } - } - return 1; + } + return true; } diff --git a/source/persistency/ascii/src/G4tgrIsotope.cc b/source/persistency/ascii/src/G4tgrIsotope.cc index 9b78970ca4..04ba40064b 100644 --- a/source/persistency/ascii/src/G4tgrIsotope.cc +++ b/source/persistency/ascii/src/G4tgrIsotope.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrIsotope implementation // -// -// -// class G4tgrIsotope - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrIsotope.hh" @@ -38,46 +34,40 @@ #include "G4tgrUtils.hh" #include "G4tgrMessenger.hh" - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrIsotope::G4tgrIsotope() - : theName(""), theZ(0), theN(0), theA(0.) { } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrIsotope::~G4tgrIsotope() { } - -//------------------------------------------------------------- -G4tgrIsotope::G4tgrIsotope( const std::vector& wl ) +// -------------------------------------------------------------------- +G4tgrIsotope::G4tgrIsotope(const std::vector& wl) { - //---------- Check for miminum number of words read - G4tgrUtils::CheckWLsize( wl, 5, WLSIZE_EQ, "G4tgrIsotope::G4tgIstotope"); + //---------- Check for miminum number of words read + G4tgrUtils::CheckWLsize(wl, 5, WLSIZE_EQ, "G4tgrIsotope::G4tgIstotope"); - theName = G4tgrUtils::GetString( wl[1] ); - theZ = G4tgrUtils::GetInt( wl[2] ); - theN = G4tgrUtils::GetInt( wl[3] ); - theA = G4tgrUtils::GetDouble( wl[4], g/mole); + theName = G4tgrUtils::GetString(wl[1]); + theZ = G4tgrUtils::GetInt(wl[2]); + theN = G4tgrUtils::GetInt(wl[3]); + theA = G4tgrUtils::GetDouble(wl[4], g / mole); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { G4cout << " Created " << *this << G4endl; } #endif } -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- std::ostream& operator<<(std::ostream& os, const G4tgrIsotope& obj) { - os << "G4tgrIsotope= " << obj.theName - << " Z = " << obj.theZ - << " N= " << obj.theN - << " A= " << obj.theA << G4endl; + os << "G4tgrIsotope= " << obj.theName << " Z = " << obj.theZ + << " N= " << obj.theN << " A= " << obj.theA << G4endl; return os; } diff --git a/source/persistency/ascii/src/G4tgrLineProcessor.cc b/source/persistency/ascii/src/G4tgrLineProcessor.cc index b533a595f9..24ee3308b0 100644 --- a/source/persistency/ascii/src/G4tgrLineProcessor.cc +++ b/source/persistency/ascii/src/G4tgrLineProcessor.cc @@ -23,13 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrLineProcessor // -// -// class G4tgrLineProcessor - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrLineProcessor.hh" @@ -49,282 +46,279 @@ #include "G4tgrRotationMatrixFactory.hh" #include "G4tgrMessenger.hh" - -//--------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrLineProcessor::G4tgrLineProcessor() { volmgr = G4tgrVolumeMgr::GetInstance(); } - -//--------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrLineProcessor::~G4tgrLineProcessor() { } - -//--------------------------------------------------------------- -G4bool G4tgrLineProcessor::ProcessLine( const std::vector& wl ) +// -------------------------------------------------------------------- +G4bool G4tgrLineProcessor::ProcessLine(const std::vector& wl) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { G4tgrUtils::DumpVS(wl, "@@@ Processing input line"); } -#endif +#endif G4String wl0 = wl[0]; - for( size_t ii = 0; ii < wl0.length(); ii++ ) + for(std::size_t ii = 0; ii < wl0.length(); ++ii) { - wl0[ii] = toupper( wl0[ii] ); + wl0[ii] = toupper(wl0[ii]); } //------------------------------- parameter number - if( wl0 == ":P" ) + if(wl0 == ":P") { - G4tgrParameterMgr::GetInstance()->AddParameterNumber( wl ); - - //------------------------------- parameter string - } - else if( wl0 == ":PS" ) - { - G4tgrParameterMgr::GetInstance()->AddParameterString( wl ); + G4tgrParameterMgr::GetInstance()->AddParameterNumber(wl); - //------------------------------- isotope + //------------------------------- parameter string } - else if( wl0 == ":ISOT" ) + else if(wl0 == ":PS") { - G4tgrIsotope* isot = G4tgrMaterialFactory::GetInstance() - ->AddIsotope( wl ); - volmgr->RegisterMe( isot ); + G4tgrParameterMgr::GetInstance()->AddParameterString(wl); - //------------------------------- element + //------------------------------- isotope } - else if( wl0 == ":ELEM" ) + else if(wl0 == ":ISOT") { - G4tgrElementSimple* elem = G4tgrMaterialFactory::GetInstance() - ->AddElementSimple( wl ); - volmgr->RegisterMe( elem ); + G4tgrIsotope* isot = G4tgrMaterialFactory::GetInstance()->AddIsotope(wl); + volmgr->RegisterMe(isot); - //------------------------------- element from isotopes + //------------------------------- element } - else if( wl0 == ":ELEM_FROM_ISOT" ) + else if(wl0 == ":ELEM") + { + G4tgrElementSimple* elem = + G4tgrMaterialFactory::GetInstance()->AddElementSimple(wl); + volmgr->RegisterMe(elem); + + //------------------------------- element from isotopes + } + else if(wl0 == ":ELEM_FROM_ISOT") { //:ELEM_FROM_ISOT NAME SYMBOL N_ISOT (ISOT_NAME ISOT_ABUNDANCE) - G4tgrElementFromIsotopes* elem = G4tgrMaterialFactory::GetInstance() - ->AddElementFromIsotopes( wl ); - volmgr->RegisterMe( elem ); - - //------------------------------- material - } - else if( wl0 == ":MATE" ) - { + G4tgrElementFromIsotopes* elem = + G4tgrMaterialFactory::GetInstance()->AddElementFromIsotopes(wl); + volmgr->RegisterMe(elem); + + //------------------------------- material + } + else if(wl0 == ":MATE") + { + G4tgrMaterialSimple* mate = + G4tgrMaterialFactory::GetInstance()->AddMaterialSimple(wl); + volmgr->RegisterMe(mate); - G4tgrMaterialSimple* mate = G4tgrMaterialFactory::GetInstance() - ->AddMaterialSimple( wl ); - volmgr->RegisterMe( mate ); - //------------------------------- material mixtures & by weight } - else if( (wl0 == ":MIXT") || (wl0 == ":MIXT_BY_WEIGHT") ) + else if((wl0 == ":MIXT") || (wl0 == ":MIXT_BY_WEIGHT")) { - G4tgrMaterialMixture* mate = G4tgrMaterialFactory::GetInstance() - ->AddMaterialMixture( wl, "MaterialMixtureByWeight" ); - volmgr->RegisterMe( mate ); + G4tgrMaterialMixture* mate = + G4tgrMaterialFactory::GetInstance()->AddMaterialMixture( + wl, "MaterialMixtureByWeight"); + volmgr->RegisterMe(mate); //------------------------------- material mixture by number of atoms } - else if( wl0 == ":MIXT_BY_NATOMS" ) + else if(wl0 == ":MIXT_BY_NATOMS") { - G4tgrMaterialMixture* mate = G4tgrMaterialFactory::GetInstance() - ->AddMaterialMixture(wl, "MaterialMixtureByNoAtoms"); - volmgr->RegisterMe( mate ); + G4tgrMaterialMixture* mate = + G4tgrMaterialFactory::GetInstance()->AddMaterialMixture( + wl, "MaterialMixtureByNoAtoms"); + volmgr->RegisterMe(mate); //------------------------------- material mixture by volume } - else if( wl0 == ":MIXT_BY_VOLUME" ) + else if(wl0 == ":MIXT_BY_VOLUME") { - G4tgrMaterialMixture* mate = G4tgrMaterialFactory::GetInstance() - ->AddMaterialMixture( wl, "MaterialMixtureByVolume" ); - volmgr->RegisterMe( mate ); + G4tgrMaterialMixture* mate = + G4tgrMaterialFactory::GetInstance()->AddMaterialMixture( + wl, "MaterialMixtureByVolume"); + volmgr->RegisterMe(mate); //------------------------------- material Mean Excitation Energy of // Ionisation Potential } - else if( wl0 == ":MATE_MEE" ) + else if(wl0 == ":MATE_MEE") { - G4tgrMaterial* mate = G4tgrMaterialFactory::GetInstance() - ->FindMaterial( G4tgrUtils::GetString( wl[1] ) ); - if( mate == 0 ) + G4tgrMaterial* mate = G4tgrMaterialFactory::GetInstance()->FindMaterial( + G4tgrUtils::GetString(wl[1])); + if(mate == 0) { G4Exception("G4tgrLineProcessor::ProcessLine()", "Material not found", - FatalException, G4tgrUtils::GetString( wl[1] ) ); + FatalException, G4tgrUtils::GetString(wl[1])); return false; } - mate->SetIonisationMeanExcitationEnergy( G4tgrUtils::GetDouble( wl[2] ) ); + mate->SetIonisationMeanExcitationEnergy(G4tgrUtils::GetDouble(wl[2])); //------------------------------- material } - else if( wl0 == ":MATE_STATE" ) + else if(wl0 == ":MATE_STATE") { - G4tgrMaterial* mate = G4tgrMaterialFactory::GetInstance() - ->FindMaterial( G4tgrUtils::GetString( wl[1] ) ); - if( mate == 0 ) + G4tgrMaterial* mate = G4tgrMaterialFactory::GetInstance()->FindMaterial( + G4tgrUtils::GetString(wl[1])); + if(mate == 0) { G4Exception("G4tgrLineProcessor::ProcessLine()", "Material not found", - FatalException, wl[1] ); + FatalException, wl[1]); } - mate->SetState( wl[2] ); + mate->SetState(wl[2]); //------------------------------- material } - else if( wl0 == ":MATE_TEMPERATURE" ) + else if(wl0 == ":MATE_TEMPERATURE") { - G4tgrMaterial* mate = G4tgrMaterialFactory::GetInstance() - ->FindMaterial( G4tgrUtils::GetString( wl[1] ) ); - if( mate == 0 ) + G4tgrMaterial* mate = G4tgrMaterialFactory::GetInstance()->FindMaterial( + G4tgrUtils::GetString(wl[1])); + if(mate == 0) { G4Exception("G4tgrLineProcessor::ProcessLine()", "Material not found", - FatalException, wl[1] ); + FatalException, wl[1]); } - mate->SetTemperature( G4tgrUtils::GetDouble( wl[2], kelvin ) ); + mate->SetTemperature(G4tgrUtils::GetDouble(wl[2], kelvin)); //------------------------------- material } - else if( wl0 == ":MATE_PRESSURE" ) + else if(wl0 == ":MATE_PRESSURE") { - G4tgrMaterial* mate = G4tgrMaterialFactory::GetInstance() - ->FindMaterial( G4tgrUtils::GetString( wl[1] ) ); - if( mate == 0 ) + G4tgrMaterial* mate = G4tgrMaterialFactory::GetInstance()->FindMaterial( + G4tgrUtils::GetString(wl[1])); + if(mate == 0) { G4Exception("G4tgrLineProcessor::ProcessLine()", "Material not found", - FatalException, wl[1] ); + FatalException, wl[1]); } - mate->SetPressure( G4tgrUtils::GetDouble( wl[2], atmosphere ) ); + mate->SetPressure(G4tgrUtils::GetDouble(wl[2], atmosphere)); //------------------------------- solid } - else if( wl0 == ":SOLID" ) - { // called from here or from G4tgrVolume::G4tgrVolume - volmgr->CreateSolid( wl, 0 ); + else if(wl0 == ":SOLID") + { // called from here or from G4tgrVolume::G4tgrVolume + volmgr->CreateSolid(wl, 0); //------------------------------- volume } - else if( wl0 == ":VOLU" ) + else if(wl0 == ":VOLU") { - G4tgrVolume* vol = new G4tgrVolume( wl ); - volmgr->RegisterMe( vol ); - + G4tgrVolume* vol = new G4tgrVolume(wl); + volmgr->RegisterMe(vol); + //--------------------------------- single placement } - else if( wl0 == ":PLACE" ) + else if(wl0 == ":PLACE") { - G4tgrVolume* vol = FindVolume( G4tgrUtils::GetString( wl[1] ) ); - G4tgrPlace* vpl = vol->AddPlace( wl ); - volmgr->RegisterMe( vpl ); - + G4tgrVolume* vol = FindVolume(G4tgrUtils::GetString(wl[1])); + G4tgrPlace* vpl = vol->AddPlace(wl); + volmgr->RegisterMe(vpl); + //--------------------------------- parameterisation } - else if( wl0 == ":PLACE_PARAM" ) + else if(wl0 == ":PLACE_PARAM") { - G4tgrVolume* vol = FindVolume( G4tgrUtils::GetString( wl[1] ) ); - G4tgrPlaceParameterisation* vpl = vol->AddPlaceParam( wl ); - volmgr->RegisterMe( vpl ); + G4tgrVolume* vol = FindVolume(G4tgrUtils::GetString(wl[1])); + G4tgrPlaceParameterisation* vpl = vol->AddPlaceParam(wl); + volmgr->RegisterMe(vpl); //--------------------------------- division } - else if( (wl0 == ":DIV_NDIV") || (wl0 == ":DIV_WIDTH") - || (wl0 == ":DIV_NDIV_WIDTH") ) + else if((wl0 == ":DIV_NDIV") || (wl0 == ":DIV_WIDTH") || + (wl0 == ":DIV_NDIV_WIDTH")) { //---------- Create G4tgrVolumeDivision and fill the volume params - G4tgrVolumeDivision* vol = new G4tgrVolumeDivision( wl ); - volmgr->RegisterMe( vol ); + G4tgrVolumeDivision* vol = new G4tgrVolumeDivision(wl); + volmgr->RegisterMe(vol); //--------------------------------- replica } - else if( wl0 == ":REPL" ) + else if(wl0 == ":REPL") { - G4tgrVolume* vol = FindVolume( G4tgrUtils::GetString( wl[1] ) ); - G4tgrPlaceDivRep* vpl = vol->AddPlaceReplica( wl ); - volmgr->RegisterMe( vpl ); - + G4tgrVolume* vol = FindVolume(G4tgrUtils::GetString(wl[1])); + G4tgrPlaceDivRep* vpl = vol->AddPlaceReplica(wl); + volmgr->RegisterMe(vpl); + //----------------------------- assembly volume: definition of components } - else if( wl0 == ":VOLU_ASSEMBLY" ) + else if(wl0 == ":VOLU_ASSEMBLY") { - G4tgrVolumeAssembly* vol = new G4tgrVolumeAssembly( wl ); - volmgr->RegisterMe( vol ); - + G4tgrVolumeAssembly* vol = new G4tgrVolumeAssembly(wl); + volmgr->RegisterMe(vol); + //----------------------------- assembly volume: definition of components } - else if( wl0 == ":PLACE_ASSEMBLY" ) + else if(wl0 == ":PLACE_ASSEMBLY") { - G4tgrVolume* vol = FindVolume( G4tgrUtils::GetString( wl[1] ) ); - G4tgrPlace* vpl = vol->AddPlace( wl ); - volmgr->RegisterMe( vpl ); + G4tgrVolume* vol = FindVolume(G4tgrUtils::GetString(wl[1])); + G4tgrPlace* vpl = vol->AddPlace(wl); + volmgr->RegisterMe(vpl); //--------------------------------- rotation matrix } - else if( wl0 == ":ROTM" ) + else if(wl0 == ":ROTM") { //---------- When second word is ':NEXT/:MNXT' it is used for defining a // rotation matrix that will be used for the next placement/s - G4tgrRotationMatrix* rm = G4tgrRotationMatrixFactory::GetInstance() - ->AddRotMatrix( wl ); - volmgr->RegisterMe( rm ); - + G4tgrRotationMatrix* rm = + G4tgrRotationMatrixFactory::GetInstance()->AddRotMatrix(wl); + volmgr->RegisterMe(rm); + //------------------------------- visualisation } - else if( wl0 == ":VIS" ) + else if(wl0 == ":VIS") { std::vector vols = - volmgr->FindVolumes( G4tgrUtils::GetString( wl[1] ), 1 ); - for( size_t ii = 0; ii < vols.size(); ii++ ) + volmgr->FindVolumes(G4tgrUtils::GetString(wl[1]), 1); + for(std::size_t ii = 0; ii < vols.size(); ++ii) { - vols[ii]->AddVisibility( wl ); + vols[ii]->AddVisibility(wl); } //--------------------------------- colour } - else if( (wl0 == ":COLOUR") || (wl0 == ":COLOR") ) + else if((wl0 == ":COLOUR") || (wl0 == ":COLOR")) { std::vector vols = - volmgr->FindVolumes( G4tgrUtils::GetString( wl[1] ), 1 ); - for( size_t ii = 0; ii < vols.size(); ii++ ) + volmgr->FindVolumes(G4tgrUtils::GetString(wl[1]), 1); + for(std::size_t ii = 0; ii < vols.size(); ++ii) { - vols[ii]->AddRGBColour( wl ); + vols[ii]->AddRGBColour(wl); } //--------------------------------- check overlaps } - else if( wl0 == ":CHECK_OVERLAPS" ) + else if(wl0 == ":CHECK_OVERLAPS") { std::vector vols = - volmgr->FindVolumes( G4tgrUtils::GetString( wl[1] ), 1 ); - for( size_t ii = 0; ii < vols.size(); ii++ ) + volmgr->FindVolumes(G4tgrUtils::GetString(wl[1]), 1); + for(std::size_t ii = 0; ii < vols.size(); ++ii) { - vols[ii]->AddCheckOverlaps( wl ); + vols[ii]->AddCheckOverlaps(wl); } //--------------------------------- ERROR } else { - return 0; - } + return false; + } - return 1; + return true; } - -//--------------------------------------------------------------- -G4tgrVolume* G4tgrLineProcessor::FindVolume( const G4String& volname ) +// -------------------------------------------------------------------- +G4tgrVolume* G4tgrLineProcessor::FindVolume(const G4String& volname) { - G4tgrVolume* vol = volmgr->FindVolume( volname, 1); + G4tgrVolume* vol = volmgr->FindVolume(volname, 1); - if( vol->GetType() == "VOLDivision" ) + if(vol->GetType() == "VOLDivision") { - G4Exception("G4tgrLineProcessor::FindVolume()", - "InvalidSetup", FatalException, + G4Exception("G4tgrLineProcessor::FindVolume()", "InvalidSetup", + FatalException, "Using 'PLACE' for a volume created by a division !"); } diff --git a/source/persistency/ascii/src/G4tgrMaterial.cc b/source/persistency/ascii/src/G4tgrMaterial.cc index 2106e93e2f..6eb1907b41 100644 --- a/source/persistency/ascii/src/G4tgrMaterial.cc +++ b/source/persistency/ascii/src/G4tgrMaterial.cc @@ -23,47 +23,47 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrMaterial implementation // -// -// -// class G4tgrMaterial - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrMaterial.hh" #include "G4PhysicalConstants.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrMaterial::G4tgrMaterial() - : theName("Material"), theDensity(0.), theNoComponents(0), - theMateType("Material"), theIonisationMeanExcitationEnergy(-1.), - theState(kStateUndefined), theTemperature(STP_Temperature), - thePressure(STP_Pressure) + : theTemperature(STP_Temperature) + , thePressure(STP_Pressure) { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrMaterial::~G4tgrMaterial() { } - -// ------------------------------------------------------------------------- -void G4tgrMaterial::SetState( G4String val ) -{ - if( val == "Undefined" ) { +// -------------------------------------------------------------------- +void G4tgrMaterial::SetState(const G4String& val) +{ + if(val == "Undefined") + { theState = kStateUndefined; - } else if( val == "Solid" ) { + } + else if(val == "Solid") + { theState = kStateSolid; - } else if( val == "Liquid" ) { + } + else if(val == "Liquid") + { theState = kStateLiquid; - } else if( val == "Gas" ) { + } + else if(val == "Gas") + { theState = kStateGas; - } else { - + } + else + { G4Exception("G4tgrMaterial::SetState", "Wrong state", FatalErrorInArgument, "Only possible states are Undefined/Solid/Liquid/Gas!"); } diff --git a/source/persistency/ascii/src/G4tgrMaterialFactory.cc b/source/persistency/ascii/src/G4tgrMaterialFactory.cc index 05492144be..f6ecf0bdb5 100644 --- a/source/persistency/ascii/src/G4tgrMaterialFactory.cc +++ b/source/persistency/ascii/src/G4tgrMaterialFactory.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrMaterialFactory implementation // -// -// -// class G4tgrMaterialFactory - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrMaterialFactory.hh" #include "G4tgrUtils.hh" @@ -41,235 +37,220 @@ #include "G4tgrFileReader.hh" #include "G4tgrMessenger.hh" +G4ThreadLocal G4tgrMaterialFactory* G4tgrMaterialFactory::theInstance = nullptr; -G4ThreadLocal G4tgrMaterialFactory* G4tgrMaterialFactory::theInstance = 0; - - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrMaterialFactory::G4tgrMaterialFactory() { } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrMaterialFactory* G4tgrMaterialFactory::GetInstance() { - if( !theInstance ) + if(theInstance == nullptr) { theInstance = new G4tgrMaterialFactory; } return theInstance; } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrMaterialFactory::~G4tgrMaterialFactory() { - G4mstgrisot::iterator isotcite; - for( isotcite = theG4tgrIsotopes.begin(); - isotcite != theG4tgrIsotopes.end(); isotcite++) + for(auto isotcite = theG4tgrIsotopes.cbegin(); + isotcite != theG4tgrIsotopes.cend(); ++isotcite) { - delete (*isotcite).second; + delete(*isotcite).second; } theG4tgrIsotopes.clear(); - G4mstgrelem::iterator elemcite; - for( elemcite = theG4tgrElements.begin(); - elemcite != theG4tgrElements.end(); elemcite++) + for(auto elemcite = theG4tgrElements.cbegin(); + elemcite != theG4tgrElements.cend(); ++elemcite) { - delete (*elemcite).second; + delete(*elemcite).second; } theG4tgrElements.clear(); - G4mstgrmate::iterator matcite; - for( matcite = theG4tgrMaterials.begin(); - matcite != theG4tgrMaterials.end(); matcite++) + for(auto matcite = theG4tgrMaterials.cbegin(); + matcite != theG4tgrMaterials.cend(); ++matcite) { - delete (*matcite).second; + delete(*matcite).second; } theG4tgrMaterials.clear(); delete theInstance; } - -//------------------------------------------------------------- -G4tgrIsotope* -G4tgrMaterialFactory::AddIsotope( const std::vector& wl ) +// -------------------------------------------------------------------- +G4tgrIsotope* G4tgrMaterialFactory::AddIsotope(const std::vector& wl) { //---------- Look if isotope exists - if( FindIsotope( G4tgrUtils::GetString(wl[1]) ) != 0 ) + if(FindIsotope(G4tgrUtils::GetString(wl[1])) != 0) { - ErrorAlreadyExists("isotope", wl ); + ErrorAlreadyExists("isotope", wl); } - - G4tgrIsotope* isot = new G4tgrIsotope( wl ); + + G4tgrIsotope* isot = new G4tgrIsotope(wl); theG4tgrIsotopes[isot->GetName()] = isot; return isot; } -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrElementSimple* -G4tgrMaterialFactory::AddElementSimple( const std::vector& wl ) +G4tgrMaterialFactory::AddElementSimple(const std::vector& wl) { //---------- Look if element exists - if( FindElement( G4tgrUtils::GetString(wl[1]) ) != 0 ) + if(FindElement(G4tgrUtils::GetString(wl[1])) != 0) { - ErrorAlreadyExists("element", wl ); + ErrorAlreadyExists("element", wl); } - - G4tgrElementSimple* elem = new G4tgrElementSimple( wl ); + + G4tgrElementSimple* elem = new G4tgrElementSimple(wl); theG4tgrElements[elem->GetName()] = elem; return elem; } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrElementFromIsotopes* -G4tgrMaterialFactory::AddElementFromIsotopes( const std::vector& wl ) +G4tgrMaterialFactory::AddElementFromIsotopes(const std::vector& wl) { //---------- Look if element exists - if( FindElement( G4tgrUtils::GetString(wl[1]) ) != 0 ) + if(FindElement(G4tgrUtils::GetString(wl[1])) != 0) { - ErrorAlreadyExists("element", wl ); + ErrorAlreadyExists("element", wl); } - - G4tgrElementFromIsotopes* elem = new G4tgrElementFromIsotopes( wl ); + + G4tgrElementFromIsotopes* elem = new G4tgrElementFromIsotopes(wl); theG4tgrElements[elem->GetName()] = elem; return elem; } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrMaterialSimple* -G4tgrMaterialFactory::AddMaterialSimple( const std::vector& wl ) +G4tgrMaterialFactory::AddMaterialSimple(const std::vector& wl) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgrMaterialFactory::AddMaterialSimple" << wl[1] << G4endl; } #endif //---------- Look if material exists - if( FindMaterial( G4tgrUtils::GetString(wl[1]) ) != 0 ) + if(FindMaterial(G4tgrUtils::GetString(wl[1])) != 0) { - ErrorAlreadyExists("material simple", wl ); + ErrorAlreadyExists("material simple", wl); } - G4tgrMaterialSimple* mate = new G4tgrMaterialSimple("MaterialSimple", wl ); + G4tgrMaterialSimple* mate = new G4tgrMaterialSimple("MaterialSimple", wl); //---------- register this material - theG4tgrMaterials[ mate->GetName() ] = mate; - + theG4tgrMaterials[mate->GetName()] = mate; + return mate; } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrMaterialMixture* -G4tgrMaterialFactory::AddMaterialMixture( const std::vector& wl, - const G4String& mixtType ) +G4tgrMaterialFactory::AddMaterialMixture(const std::vector& wl, + const G4String& mixtType) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgrMaterialFactory::AddMaterialMixture " << wl[1] << G4endl; } #endif //---------- Look if material already exists - if( FindMaterial( G4tgrUtils::GetString(wl[1]) ) != 0 ) + if(FindMaterial(G4tgrUtils::GetString(wl[1])) != 0) { - ErrorAlreadyExists("material mixture", wl ); + ErrorAlreadyExists("material mixture", wl); } - G4tgrMaterialMixture* mate; - mate = new G4tgrMaterialMixture( mixtType, wl ); - + G4tgrMaterialMixture* mate; + mate = new G4tgrMaterialMixture(mixtType, wl); + //---------- register this material - theG4tgrMaterials[ mate->GetName() ] = mate; - + theG4tgrMaterials[mate->GetName()] = mate; + return mate; } - -//------------------------------------------------------------- -G4tgrIsotope* G4tgrMaterialFactory::FindIsotope(const G4String & name) const +// -------------------------------------------------------------------- +G4tgrIsotope* G4tgrMaterialFactory::FindIsotope(const G4String& name) const { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << " G4tgrMaterialFactory::FindIsotope() - " << name << G4endl; + G4cout << " G4tgrMaterialFactory::FindIsotope() - " << name << G4endl; } #endif G4mstgrisot::const_iterator cite; - cite = theG4tgrIsotopes.find( name ); - if( cite == theG4tgrIsotopes.end() ) + cite = theG4tgrIsotopes.find(name); + if(cite == theG4tgrIsotopes.cend()) { - return 0; + return nullptr; } else { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << " G4tgrIsotope found: " - << ( (*cite).second )->GetName() << G4endl; + G4cout << " G4tgrIsotope found: " << ((*cite).second)->GetName() + << G4endl; } #endif return (*cite).second; } } - -//------------------------------------------------------------- -G4tgrElement* G4tgrMaterialFactory::FindElement(const G4String & name) const +// -------------------------------------------------------------------- +G4tgrElement* G4tgrMaterialFactory::FindElement(const G4String& name) const { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { G4cout << " G4tgrMaterialFactory::FindElement() - " << name << G4endl; } #endif G4mstgrelem::const_iterator cite; - cite = theG4tgrElements.find( name ); - if( cite == theG4tgrElements.end() ) + cite = theG4tgrElements.find(name); + if(cite == theG4tgrElements.cend()) { - return 0; + return nullptr; } else { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { DumpElementList(); - G4cout << " G4tgrElement found: " - << ( (*cite).second )->GetName() << G4endl; + G4cout << " G4tgrElement found: " << ((*cite).second)->GetName() + << G4endl; } #endif return (*cite).second; } } - -//------------------------------------------------------------- -G4tgrMaterial* G4tgrMaterialFactory::FindMaterial(const G4String & name) const +// -------------------------------------------------------------------- +G4tgrMaterial* G4tgrMaterialFactory::FindMaterial(const G4String& name) const { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { G4cout << " G4tgrMaterialFactory::FindMaterial() - " << name << G4endl; } #endif G4mstgrmate::const_iterator cite; - cite = theG4tgrMaterials.find( name ); - if( cite == theG4tgrMaterials.end() ) + cite = theG4tgrMaterials.find(name); + if(cite == theG4tgrMaterials.cend()) { - return 0; + return nullptr; } else { @@ -277,63 +258,59 @@ G4tgrMaterial* G4tgrMaterialFactory::FindMaterial(const G4String & name) const } } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgrMaterialFactory::DumpIsotopeList() const { G4cout << " @@@@@@@@@@@@@@@@ DUMPING G4tgrIsotope's List " << G4endl; - G4mstgrisot::const_iterator cite; - for(cite = theG4tgrIsotopes.begin(); cite != theG4tgrIsotopes.end(); cite++) + for(auto cite = theG4tgrIsotopes.cbegin(); + cite != theG4tgrIsotopes.cend(); ++cite) { G4cout << " ISOT: " << (*cite).second->GetName() << G4endl; } } - -//------------------------------------------------------------- -void G4tgrMaterialFactory::DumpElementList() const +// -------------------------------------------------------------------- +void G4tgrMaterialFactory::DumpElementList() const { G4cout << " @@@@@@@@@@@@@@@@ DUMPING G4tgrElement's List " << G4endl; - G4mstgrelem::const_iterator cite; - for(cite = theG4tgrElements.begin(); cite != theG4tgrElements.end(); cite++) + for(auto cite = theG4tgrElements.cbegin(); + cite != theG4tgrElements.cend(); ++cite) { G4cout << " ELEM: " << (*cite).second->GetName() << G4endl; } } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgrMaterialFactory::DumpMaterialList() const { G4cout << " @@@@@@@@@@@@@@@@ DUMPING G4tgrMaterial's List " << G4endl; - G4mstgrmate::const_iterator cite; - for(cite = theG4tgrMaterials.begin(); cite != theG4tgrMaterials.end(); cite++) + for(auto cite = theG4tgrMaterials.cbegin(); + cite != theG4tgrMaterials.cend(); ++cite) { G4tgrMaterial* mate = (*cite).second; - G4cout << " MATE: " << mate->GetName() << " Type: " << mate->GetType() + G4cout << " MATE: " << mate->GetName() << " Type: " << mate->GetType() << " NoComponents= " << mate->GetNumberOfComponents() << G4endl; } } - -//------------------------------------------------------------- -void G4tgrMaterialFactory:: -ErrorAlreadyExists(const G4String& object, - const std::vector& wl, const G4bool bNoRepeating ) +// -------------------------------------------------------------------- +void G4tgrMaterialFactory::ErrorAlreadyExists(const G4String& object, + const std::vector& wl, + const G4bool bNoRepeating) { G4String msg = object + G4String(" repeated"); - if( bNoRepeating ) + if(bNoRepeating) { - G4tgrUtils::DumpVS( wl, (G4String("!!!! EXITING: ") + msg).c_str() ); - G4Exception("G4tgrMaterialFactory", "FatalError", - FatalException, "Aborting..."); + G4tgrUtils::DumpVS(wl, (G4String("!!!! EXITING: ") + msg).c_str()); + G4Exception("G4tgrMaterialFactory", "FatalError", FatalException, + "Aborting..."); } else { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4tgrUtils::DumpVS( wl, (G4String("!! WARNING: ") + msg).c_str() ); + G4tgrUtils::DumpVS(wl, (G4String("!! WARNING: ") + msg).c_str()); } #endif } diff --git a/source/persistency/ascii/src/G4tgrMaterialMixture.cc b/source/persistency/ascii/src/G4tgrMaterialMixture.cc index cddcb000a0..18e26c1fa1 100644 --- a/source/persistency/ascii/src/G4tgrMaterialMixture.cc +++ b/source/persistency/ascii/src/G4tgrMaterialMixture.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrMaterialMixture implementation // -// -// -// class G4tgrMaterialMixture - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrMaterialMixture.hh" @@ -38,68 +34,66 @@ #include "G4tgrUtils.hh" #include "G4tgrMessenger.hh" -//----------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrMaterialMixture::G4tgrMaterialMixture() { } - -//----------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrMaterialMixture::~G4tgrMaterialMixture() { } - -//----------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrMaterialMixture::G4tgrMaterialMixture(const G4String& matType, const std::vector& wl) { - //---------- Check for miminum number of words read - G4tgrUtils::CheckWLsize( wl, 6, WLSIZE_GE, - "G4tgrMaterialMixture::G4tgrMaterialMixture" ); + //---------- Check for miminum number of words read + G4tgrUtils::CheckWLsize(wl, 6, WLSIZE_GE, + "G4tgrMaterialMixture::G4tgrMaterialMixture"); theMateType = matType; - - //---------- Fill private data - theName = G4tgrUtils::GetString( wl[1] ); - theDensity = std::fabs(G4tgrUtils::GetDouble( wl[2], g/cm3 ) ); - theNoComponents = G4tgrUtils::GetInt( wl[3] ); - G4tgrUtils::CheckWLsize( wl, 4+theNoComponents*2, WLSIZE_GE, - "G4tgrMaterialMixture::G4tgrMaterialMixture" ); - for(G4int ii=0; ii= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << " G4tgrMaterialMixture::G4tgrMaterialMixture() -" - << " adding component: " << wl[ii*2+4] << " Fraction= " - << G4tgrUtils::GetDouble(wl[ii*2+1+4]) << G4endl; + G4cout << " G4tgrMaterialMixture::G4tgrMaterialMixture() -" + << " adding component: " << wl[ii * 2 + 4] + << " Fraction= " << G4tgrUtils::GetDouble(wl[ii * 2 + 1 + 4]) + << G4endl; } #endif - theComponents.push_back( G4tgrUtils::GetString( wl[ii*2+4] ) ); - theFractions.push_back( G4tgrUtils::GetDouble(wl[ii*2+1+4]) ); + theComponents.push_back(G4tgrUtils::GetString(wl[ii * 2 + 4])); + theFractions.push_back(G4tgrUtils::GetDouble(wl[ii * 2 + 1 + 4])); } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Created " << *this << G4endl; + G4cout << " Created " << *this << G4endl; } #endif } - -//----------------------------------------------------------- -std::ostream& operator<<(std::ostream& os, const G4tgrMaterialMixture& mate) +// -------------------------------------------------------------------- +std::ostream& operator<<(std::ostream& os, const G4tgrMaterialMixture& mate) { os << "G4tgrMaterialMixture=: " << mate.theName << G4endl - << "density= " << mate.theDensity/g*cm3 + << "density= " << mate.theDensity / g * cm3 << " g/cm3. Number of Components: " << mate.theNoComponents << G4endl; - for (G4int ii=0; ii& wl) : name("MaterialSimple") { - //---------- Check for miminum number of words read - G4tgrUtils::CheckWLsize( wl, 5, WLSIZE_EQ, - "G4tgrMaterialSimple::G4tgrMaterialSimple"); + //---------- Check for miminum number of words read + G4tgrUtils::CheckWLsize(wl, 5, WLSIZE_EQ, + "G4tgrMaterialSimple::G4tgrMaterialSimple"); theMateType = matType; - //---------- Fill private data - theName = G4tgrUtils::GetString( wl[1] ); - theZ = G4tgrUtils::GetDouble( wl[2] ); - theA = G4tgrUtils::GetDouble( wl[3], g/mole); - theDensity = G4tgrUtils::GetDouble( wl[4], g/cm3); + //---------- Fill private data + theName = G4tgrUtils::GetString(wl[1]); + theZ = G4tgrUtils::GetDouble(wl[2]); + theA = G4tgrUtils::GetDouble(wl[3], g / mole); + theDensity = G4tgrUtils::GetDouble(wl[4], g / cm3); theNoComponents = 0; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Created " << *this << G4endl; + G4cout << " Created " << *this << G4endl; } #endif } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- const G4String& G4tgrMaterialSimple::GetComponent(G4int ii) const -{ - G4String ErrMessage = "Should never be called for a MaterialSimple - i:" - + G4UIcommand::ConvertToString(ii); - G4Exception("G4tgrMaterialSimple::GetComponent()", - "InvalidCall", FatalException, ErrMessage); +{ + G4String ErrMessage = "Should never be called for a MaterialSimple - i:" + + G4UIcommand::ConvertToString(ii); + G4Exception("G4tgrMaterialSimple::GetComponent()", "InvalidCall", + FatalException, ErrMessage); return name; // dummy, to avoid compilation warnings... } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4double G4tgrMaterialSimple::GetFraction(G4int ii) { - G4String ErrMessage = "Should never be called for a MaterialSimple - i:" - + G4UIcommand::ConvertToString(ii); - G4Exception("G4tgrMaterialSimple::GetFraction()", - "InvalidCall", FatalException, ErrMessage); + G4String ErrMessage = "Should never be called for a MaterialSimple - i:" + + G4UIcommand::ConvertToString(ii); + G4Exception("G4tgrMaterialSimple::GetFraction()", "InvalidCall", + FatalException, ErrMessage); - return 0.; // dummy, to avoid compilation warnings... + return 0.; // dummy, to avoid compilation warnings... } - -//------------------------------------------------------------- -std::ostream& operator<<(std::ostream& os, const G4tgrMaterialSimple& mate) +// -------------------------------------------------------------------- +std::ostream& operator<<(std::ostream& os, const G4tgrMaterialSimple& mate) { - os << "G4tgrMaterialSimple= " << mate.theName - << " Z " << mate.theZ << " A " << mate.theA - << "density= " << mate.theDensity/g*cm3 + os << "G4tgrMaterialSimple= " << mate.theName << " Z " << mate.theZ << " A " + << mate.theA << "density= " << mate.theDensity / g * cm3 << " g/cm3. Number of Components: " << mate.theNoComponents << G4endl; return os; } diff --git a/source/persistency/ascii/src/G4tgrMessenger.cc b/source/persistency/ascii/src/G4tgrMessenger.cc index 3a9a539a5b..0a586c217c 100644 --- a/source/persistency/ascii/src/G4tgrMessenger.cc +++ b/source/persistency/ascii/src/G4tgrMessenger.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrMessenger implementation // -// -// -// class G4tgrMessenger - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrMessenger.hh" #include "G4UIdirectory.hh" @@ -39,22 +35,20 @@ G4ThreadLocal G4int G4tgrMessenger::theVerboseLevel = 0; - // -------------------------------------------------------------------- G4tgrMessenger::G4tgrMessenger() { tgDirectory = new G4UIdirectory("/geometry/textInput/"); tgDirectory->SetGuidance("Geometry from text file control commands."); - verboseCmd = new G4UIcmdWithAnInteger("/geometry/textInput/verbose",this); + verboseCmd = new G4UIcmdWithAnInteger("/geometry/textInput/verbose", this); verboseCmd->SetGuidance("Set Verbose level of geometry text input category."); verboseCmd->SetGuidance(" 0 : Silent"); verboseCmd->SetGuidance(" 1 : info verbosity"); verboseCmd->SetGuidance(" 2 : debug verbosity"); - verboseCmd->SetParameterName("level",false); + verboseCmd->SetParameterName("level", false); verboseCmd->SetRange("level>=0"); } - // -------------------------------------------------------------------- G4tgrMessenger::~G4tgrMessenger() { @@ -62,38 +56,28 @@ G4tgrMessenger::~G4tgrMessenger() delete tgDirectory; } +// -------------------------------------------------------------------- +G4int G4tgrMessenger::GetVerboseLevel() { return theVerboseLevel; } // -------------------------------------------------------------------- -G4int G4tgrMessenger::GetVerboseLevel() -{ - return theVerboseLevel; -} - +void G4tgrMessenger::SetVerboseLevel(G4int verb) { theVerboseLevel = verb; } // -------------------------------------------------------------------- -void G4tgrMessenger::SetVerboseLevel( G4int verb ) +void G4tgrMessenger::SetNewValue(G4UIcommand* command, G4String newValues) { - theVerboseLevel = verb; -} - - -// -------------------------------------------------------------------- -void G4tgrMessenger::SetNewValue(G4UIcommand * command, G4String newValues) -{ - if( command == verboseCmd ) + if(command == verboseCmd) { - G4tgrMessenger::SetVerboseLevel(verboseCmd->GetNewIntValue(newValues)); + G4tgrMessenger::SetVerboseLevel(verboseCmd->GetNewIntValue(newValues)); } } - // -------------------------------------------------------------------- -G4String G4tgrMessenger::GetCurrentValue(G4UIcommand * command) +G4String G4tgrMessenger::GetCurrentValue(G4UIcommand* command) { G4String cv; - if( command == verboseCmd ) - { - cv = verboseCmd->ConvertToString(G4tgrMessenger::GetVerboseLevel()); + if(command == verboseCmd) + { + cv = verboseCmd->ConvertToString(G4tgrMessenger::GetVerboseLevel()); } return cv; } diff --git a/source/persistency/ascii/src/G4tgrParameterMgr.cc b/source/persistency/ascii/src/G4tgrParameterMgr.cc index fa5596b04a..a6570f135d 100644 --- a/source/persistency/ascii/src/G4tgrParameterMgr.cc +++ b/source/persistency/ascii/src/G4tgrParameterMgr.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrParameterMgr implementation // -// -// -// class G4tgrParameterMgr - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrParameterMgr.hh" #include "G4tgrUtils.hh" @@ -40,82 +36,77 @@ #include "G4tgrMessenger.hh" #include "G4UIcommand.hh" -G4ThreadLocal G4tgrParameterMgr* G4tgrParameterMgr::theInstance = 0; +G4ThreadLocal G4tgrParameterMgr* G4tgrParameterMgr::theInstance = nullptr; - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrParameterMgr::G4tgrParameterMgr() { } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrParameterMgr::~G4tgrParameterMgr() { delete theInstance; } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrParameterMgr* G4tgrParameterMgr::GetInstance() { - if( !theInstance ) + if(theInstance == nullptr) { theInstance = new G4tgrParameterMgr; } return theInstance; } - -//------------------------------------------------------------- -void G4tgrParameterMgr::AddParameterNumber( const std::vector& wl, - G4bool mustBeNew ) +// -------------------------------------------------------------------- +void G4tgrParameterMgr::AddParameterNumber(const std::vector& wl, + G4bool mustBeNew) { - CheckIfNewParameter( wl, mustBeNew ); + CheckIfNewParameter(wl, mustBeNew); //----- Convert third argument to double, but then store it as string - // for later use in CLHEP evaluator - G4float val = G4tgrUtils::GetDouble( wl[2] ); - theParameterList[ wl[1] ] = G4UIcommand::ConvertToString( val ); + // for later use in CLHEP evaluator + G4float val = G4tgrUtils::GetDouble(wl[2]); + theParameterList[wl[1]] = G4UIcommand::ConvertToString(val); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgrParameterMgr::AddParameterNumber() -" - << " parameter added " << wl[1] - << " = " << theParameterList[ wl[1] ] << G4endl; + << " parameter added " << wl[1] << " = " << theParameterList[wl[1]] + << G4endl; } #endif } - -//------------------------------------------------------------- -void G4tgrParameterMgr::AddParameterString( const std::vector& wl, - G4bool mustBeNew ) +// -------------------------------------------------------------------- +void G4tgrParameterMgr::AddParameterString(const std::vector& wl, + G4bool mustBeNew) { - CheckIfNewParameter( wl, mustBeNew ); + CheckIfNewParameter(wl, mustBeNew); //----- Store parameter as string - theParameterList[ wl[1] ] = wl[2]; + theParameterList[wl[1]] = wl[2]; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgrParameterMgr::AddParameterString() -" - << " parameter added " << wl[1] - << " = " << theParameterList[ wl[1] ] << G4endl; + << " parameter added " << wl[1] << " = " << theParameterList[wl[1]] + << G4endl; } #endif } -//------------------------------------------------------------- -void G4tgrParameterMgr::CheckIfNewParameter( const std::vector& wl, - G4bool mustBeNew ) +// -------------------------------------------------------------------- +void G4tgrParameterMgr::CheckIfNewParameter(const std::vector& wl, + G4bool mustBeNew) { //---------- Find first if it exists already G4bool existsAlready; - G4mapss::iterator sdite = theParameterList.find( wl[1] ); - if( sdite == theParameterList.end() ) + G4mapss::const_iterator sdite = theParameterList.find(wl[1]); + if(sdite == theParameterList.cend()) { existsAlready = false; } @@ -126,65 +117,63 @@ void G4tgrParameterMgr::CheckIfNewParameter( const std::vector& wl, if(existsAlready) { - if( mustBeNew ) + if(mustBeNew) { G4String ErrMessage = "Parameter already exists... " + wl[1]; - G4Exception("G4tgrParameterMgr::CheckParameter()", - "IllegalConstruct", FatalException, ErrMessage); + G4Exception("G4tgrParameterMgr::CheckParameter()", "IllegalConstruct", + FatalException, ErrMessage); } else { G4String WarMessage = "Parameter already exists... " + wl[1]; - G4Exception("G4tgrParameterMgr::CheckParameter()", - "NotRecommended", JustWarning, WarMessage); + G4Exception("G4tgrParameterMgr::CheckParameter()", "NotRecommended", + JustWarning, WarMessage); } } - - //---------- Check for miminum number of words read - G4tgrUtils::CheckWLsize( wl, 3, WLSIZE_EQ, "Parameter::AddParameter"); + + //---------- Check for miminum number of words read + G4tgrUtils::CheckWLsize(wl, 3, WLSIZE_EQ, "Parameter::AddParameter"); } - -//------------------------------------------------------------- -G4String G4tgrParameterMgr::FindParameter( const G4String& name, G4bool exists ) +// -------------------------------------------------------------------- +G4String G4tgrParameterMgr::FindParameter(const G4String& name, G4bool exists) { G4String par = ""; - - G4mapss::iterator sdite = theParameterList.find( name ); - if( sdite == theParameterList.end() ) + + G4mapss::const_iterator sdite = theParameterList.find(name); + if(sdite == theParameterList.cend()) { - if( exists ) + if(exists) { DumpList(); G4String ErrMessage = "Parameter not found in list: " + name; - G4Exception("G4tgrParameterMgr::FindParameter()", - "InvalidSetup", FatalException, ErrMessage); + G4Exception("G4tgrParameterMgr::FindParameter()", "InvalidSetup", + FatalException, ErrMessage); } } else { exists = 1; - par = ((*sdite).second); + par = ((*sdite).second); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) - { - G4cout << " G4tgrParameterMgr::FindParameter() -" - << " parameter found " << name << " = " << par << G4endl; - } + if(G4tgrMessenger::GetVerboseLevel() >= 3) + { + G4cout << " G4tgrParameterMgr::FindParameter() -" + << " parameter found " << name << " = " << par << G4endl; + } #endif } return par; } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgrParameterMgr::DumpList() { //---------- Dump number of objects of each class G4cout << " @@@@@@@@@@@@@@@@@@ Dumping parameter list " << G4endl; - G4mapss::const_iterator cite; - for( cite = theParameterList.begin();cite != theParameterList.end(); cite++ ) + for(auto cite = theParameterList.cbegin(); + cite != theParameterList.cend(); ++cite) { G4cout << (*cite).first << " = " << (*cite).second << G4endl; } diff --git a/source/persistency/ascii/src/G4tgrPlace.cc b/source/persistency/ascii/src/G4tgrPlace.cc index 7270e3cc64..3628ad21ce 100644 --- a/source/persistency/ascii/src/G4tgrPlace.cc +++ b/source/persistency/ascii/src/G4tgrPlace.cc @@ -23,32 +23,25 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrPlace implementation // -// -// -// class G4tgrPlace - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrPlace.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrPlace::G4tgrPlace() - : theVolume(0), theParentName(""), theCopyNo(0), theType("") { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrPlace::~G4tgrPlace() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4ThreeVector G4tgrPlace::GetPlacement() const { - return G4ThreeVector(0,0,0); // Dummy... + return G4ThreeVector(0, 0, 0); // Dummy... } diff --git a/source/persistency/ascii/src/G4tgrPlaceDivRep.cc b/source/persistency/ascii/src/G4tgrPlaceDivRep.cc index 5fb0f01cd7..067373e378 100644 --- a/source/persistency/ascii/src/G4tgrPlaceDivRep.cc +++ b/source/persistency/ascii/src/G4tgrPlaceDivRep.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrPlaceDivRep implementation // -// -// -// class G4tgrPlaceDivRep - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrPlaceDivRep.hh" @@ -39,37 +35,34 @@ #include "G4tgrMessenger.hh" #include "G4tgrVolume.hh" -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrPlaceDivRep::G4tgrPlaceDivRep() - : theNDiv(0), theWidth(0.), theAxis(kUndefined), - theOffset(0.), theDivType(DivByNdivAndWidth) { } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrPlaceDivRep::~G4tgrPlaceDivRep() { } -//------------------------------------------------------------- -G4tgrPlaceDivRep::G4tgrPlaceDivRep( const std::vector& wl ) +// -------------------------------------------------------------------- +G4tgrPlaceDivRep::G4tgrPlaceDivRep(const std::vector& wl) { theDivType = DivByNdivAndWidth; // Name parent axis nrep width offset - G4tgrUtils::CheckWLsize( wl, 6, WLSIZE_GE, - "G4tgrPlaceDivRep::G4tgrPlaceDivRep" ); - G4tgrUtils::CheckWLsize( wl, 7, WLSIZE_LE, - "G4tgrPlaceDivRep::G4tgrPlaceDivRep" ); + G4tgrUtils::CheckWLsize(wl, 6, WLSIZE_GE, + "G4tgrPlaceDivRep::G4tgrPlaceDivRep"); + G4tgrUtils::CheckWLsize(wl, 7, WLSIZE_LE, + "G4tgrPlaceDivRep::G4tgrPlaceDivRep"); - theParentName = G4tgrUtils::GetString(wl[2]); - theAxis = BuildAxis( G4tgrUtils::GetString(wl[3]) ); - theNDiv = G4tgrUtils::GetInt( wl[4] ); - theWidth = G4tgrUtils::GetDouble(wl[5])*mm; // check if it is deg - if( wl.size() == 7 ) + theParentName = G4tgrUtils::GetString(wl[2]); + theAxis = BuildAxis(G4tgrUtils::GetString(wl[3])); + theNDiv = G4tgrUtils::GetInt(wl[4]); + theWidth = G4tgrUtils::GetDouble(wl[5]) * mm; // check if it is deg + if(wl.size() == 7) { - theOffset = G4tgrUtils::GetDouble(wl[6])*mm; // check if it is deg + theOffset = G4tgrUtils::GetDouble(wl[6]) * mm; // check if it is deg } else { @@ -77,47 +70,53 @@ G4tgrPlaceDivRep::G4tgrPlaceDivRep( const std::vector& wl ) } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Created " << *this << G4endl; + G4cout << " Created " << *this << G4endl; } #endif - } - -//------------------------------------------------------------- -EAxis G4tgrPlaceDivRep::BuildAxis( const G4String& axisName ) +// -------------------------------------------------------------------- +EAxis G4tgrPlaceDivRep::BuildAxis(const G4String& axisName) { - if( axisName == "X" ) { + if(axisName == "X") + { return kXAxis; - } else if( axisName == "Y" ) { + } + else if(axisName == "Y") + { return kYAxis; - } else if( axisName == "Z" ) { + } + else if(axisName == "Z") + { return kZAxis; - } else if( axisName == "R" ) { + } + else if(axisName == "R") + { return kRho; - } else if( axisName == "PHI" ) { + } + else if(axisName == "PHI") + { return kPhi; } else { - G4String ErrMessage = "Axis type not found: " + axisName - + ". Only valid axis are: X, Y, Z, R, PHI !"; - G4Exception("G4tgrVolumeDivision::GetReplicaAxis()", - "InvalidAxis", FatalException, ErrMessage); + G4String ErrMessage = "Axis type not found: " + axisName + + ". Only valid axis are: X, Y, Z, R, PHI !"; + G4Exception("G4tgrVolumeDivision::GetReplicaAxis()", "InvalidAxis", + FatalException, ErrMessage); } - return kXAxis; // to avoid warning errors + return kXAxis; // to avoid warning errors } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- std::ostream& operator<<(std::ostream& os, const G4tgrPlaceDivRep& obj) { - os << "G4tgrPlaceDivRep= in " << obj.theParentName - << " NDiv= " << obj.theNDiv << " Width= " << obj.theWidth - << " Axis= " << obj.theAxis << " Offset= " << obj.theOffset - << " DivType= " << obj.theDivType << G4endl; + os << "G4tgrPlaceDivRep= in " << obj.theParentName << " NDiv= " << obj.theNDiv + << " Width= " << obj.theWidth << " Axis= " << obj.theAxis + << " Offset= " << obj.theOffset << " DivType= " << obj.theDivType + << G4endl; return os; } diff --git a/source/persistency/ascii/src/G4tgrPlaceParameterisation.cc b/source/persistency/ascii/src/G4tgrPlaceParameterisation.cc index df2f9c6385..feacc7e35b 100644 --- a/source/persistency/ascii/src/G4tgrPlaceParameterisation.cc +++ b/source/persistency/ascii/src/G4tgrPlaceParameterisation.cc @@ -23,77 +23,70 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrPlaceParameterisation implementation // -// -// -// class G4tgrPlaceParameterisation - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrPlaceParameterisation.hh" #include "G4tgrUtils.hh" #include "G4tgrVolume.hh" #include "G4tgrMessenger.hh" -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrPlaceParameterisation::G4tgrPlaceParameterisation() { } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrPlaceParameterisation::~G4tgrPlaceParameterisation() { } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrPlaceParameterisation:: -G4tgrPlaceParameterisation( const std::vector& wl ) +G4tgrPlaceParameterisation(const std::vector& wl) { theType = "PlaceParam"; - //---------- Check for exact number of words read - G4tgrUtils::CheckWLsize( wl, 7, WLSIZE_GE, - "G4tgrPlaceParameterisation::ConstructVolume" ); - + //---------- Check for exact number of words read + G4tgrUtils::CheckWLsize(wl, 7, WLSIZE_GE, + "G4tgrPlaceParameterisation::ConstructVolume"); + //---------- the copy No - theCopyNo = G4tgrUtils::GetInt( wl[2] )-1; + theCopyNo = G4tgrUtils::GetInt(wl[2]) - 1; //---------- set the parent name - theParentName = G4tgrUtils::GetString( wl[3] ); + theParentName = G4tgrUtils::GetString(wl[3]); //---------- set the type - theParamType = G4tgrUtils::GetString( wl[4] ); + theParamType = G4tgrUtils::GetString(wl[4]); //---------- set the rotation matrix name theRotMatName = G4tgrUtils::GetString(wl[5]); - - //---------- set the extra data - for( size_t ii = 6; ii < wl.size(); ii++) + + //---------- set the extra data + for(size_t ii = 6; ii < wl.size(); ii++) { - theExtraData.push_back( G4tgrUtils::GetDouble(wl[ii]) ); + theExtraData.push_back(G4tgrUtils::GetDouble(wl[ii])); } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Created " << *this << G4endl; + G4cout << " Created " << *this << G4endl; } #endif } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- std::ostream& operator<<(std::ostream& os, const G4tgrPlaceParameterisation& obj) { os << "G4tgrPlaceParameterisation= in " << obj.theParentName << " ParamTyep = " << obj.theParamType << " RotMatName= " << obj.theRotMatName << " EXTRA DATA= "; - for( size_t ii = 0; ii < obj.theExtraData.size(); ii++ ) + for(size_t ii = 0; ii < obj.theExtraData.size(); ii++) { os << obj.theExtraData[ii] << " "; } @@ -101,4 +94,3 @@ std::ostream& operator<<(std::ostream& os, return os; } - diff --git a/source/persistency/ascii/src/G4tgrPlaceSimple.cc b/source/persistency/ascii/src/G4tgrPlaceSimple.cc index 5d846db823..750e03ae3e 100644 --- a/source/persistency/ascii/src/G4tgrPlaceSimple.cc +++ b/source/persistency/ascii/src/G4tgrPlaceSimple.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrPlaceSimple +// G4tgrPlaceSimple implementation -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrPlaceSimple.hh" @@ -39,57 +35,54 @@ #include "G4tgrVolume.hh" #include "G4tgrMessenger.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrPlaceSimple::G4tgrPlaceSimple() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrPlaceSimple::~G4tgrPlaceSimple() { } - -// ------------------------------------------------------------------------- -G4tgrPlaceSimple::G4tgrPlaceSimple( const std::vector& wl ) +// -------------------------------------------------------------------- +G4tgrPlaceSimple::G4tgrPlaceSimple(const std::vector& wl) { theType = "PlaceSimple"; G4int wl7 = -1; - if( wl.size() == 8 ) // for assembly volume placement, - { // there is no copy number + if(wl.size() == 8) // for assembly volume placement, + { // there is no copy number //---------- set the copy number - theCopyNo = G4tgrUtils::GetInt( wl[2] ); - wl7 = 0; + theCopyNo = G4tgrUtils::GetInt(wl[2]); + wl7 = 0; } //---------- set the parent name - theParentName = G4tgrUtils::GetString( wl[3+wl7] ); + theParentName = G4tgrUtils::GetString(wl[3 + wl7]); //---------- set the position with respect to parent - thePlace = G4ThreeVector( G4tgrUtils::GetDouble(wl[5+wl7])*mm, - G4tgrUtils::GetDouble(wl[6+wl7])*mm, - G4tgrUtils::GetDouble(wl[7+wl7])*mm ); + thePlace = G4ThreeVector(G4tgrUtils::GetDouble(wl[5 + wl7]) * mm, + G4tgrUtils::GetDouble(wl[6 + wl7]) * mm, + G4tgrUtils::GetDouble(wl[7 + wl7]) * mm); //---------- set the rotation matrix name - theRotMatName = G4tgrUtils::GetString(wl[4+wl7]); + theRotMatName = G4tgrUtils::GetString(wl[4 + wl7]); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Created " << *this << G4endl; + G4cout << " Created " << *this << G4endl; } #endif } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- std::ostream& operator<<(std::ostream& os, const G4tgrPlaceSimple& obj) { os << "G4tgrPlaceSimple= in " << obj.theParentName - << " Position= " << obj.thePlace - << " RotMatName= " << obj.theRotMatName << G4endl; - + << " Position= " << obj.thePlace << " RotMatName= " << obj.theRotMatName + << G4endl; + return os; } diff --git a/source/persistency/ascii/src/G4tgrRotationMatrix.cc b/source/persistency/ascii/src/G4tgrRotationMatrix.cc index 0771d437c8..b35afc72c1 100644 --- a/source/persistency/ascii/src/G4tgrRotationMatrix.cc +++ b/source/persistency/ascii/src/G4tgrRotationMatrix.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4tgrRotationMatrix +// G4tgrRotationMatrix implementation -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrRotationMatrix.hh" @@ -39,26 +35,22 @@ #include "G4tgrUtils.hh" #include "G4tgrMessenger.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrRotationMatrix::G4tgrRotationMatrix() - : theName("Rotation-Matrix"), theInputType(rm9) { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrRotationMatrix::~G4tgrRotationMatrix() { } - -// ------------------------------------------------------------------------- -G4tgrRotationMatrix::G4tgrRotationMatrix( const std::vector& wl ) - : theInputType(rm9) +// -------------------------------------------------------------------- +G4tgrRotationMatrix::G4tgrRotationMatrix(const std::vector& wl) { - theName = G4tgrUtils::GetString( wl[1] ); + theName = G4tgrUtils::GetString(wl[1]); - switch( wl.size() ) + switch(wl.size()) { case 5: theInputType = rm3; @@ -70,31 +62,30 @@ G4tgrRotationMatrix::G4tgrRotationMatrix( const std::vector& wl ) theInputType = rm9; break; default: - G4Exception("G4tgrRotationMatrix::G4tgrRotationMatrix()", - "InvalidMatrix", FatalException, - "Input line must have 5, 8 or 11 words."); + G4Exception("G4tgrRotationMatrix::G4tgrRotationMatrix()", "InvalidMatrix", + FatalException, "Input line must have 5, 8 or 11 words."); break; } - + //-------- Fill matrix values - size_t siz = wl.size() - 2; - for( size_t ii = 0; ii < siz; ii++) + std::size_t siz = wl.size() - 2; + for(std::size_t ii = 0; ii < siz; ++ii) { - if( siz == 9 ) + if(siz == 9) { - theValues.push_back( G4tgrUtils::GetDouble( wl[ii+2] ) ); + theValues.push_back(G4tgrUtils::GetDouble(wl[ii + 2])); } else { - theValues.push_back( G4tgrUtils::GetDouble( wl[ii+2] , deg ) ); + theValues.push_back(G4tgrUtils::GetDouble(wl[ii + 2], deg)); } } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgrRotationMatrix::G4tgrRotationMatrix() - Created: " << theName << G4endl; - for( size_t ii = 0; ii < siz; ii++) + for(std::size_t ii = 0; ii < siz; ++ii) { G4cout << " " << theValues[ii]; } @@ -103,14 +94,13 @@ G4tgrRotationMatrix::G4tgrRotationMatrix( const std::vector& wl ) #endif } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- std::ostream& operator<<(std::ostream& os, const G4tgrRotationMatrix& obj) { os << "G4tgrRotationMatrix= " << obj.theName << " InputTyep = " << obj.theInputType << " VALUES= "; - for( size_t ii = 0; ii < obj.theValues.size(); ii++ ) + for(std::size_t ii = 0; ii < obj.theValues.size(); ++ii) { os << obj.theValues[ii] << " "; } diff --git a/source/persistency/ascii/src/G4tgrRotationMatrixFactory.cc b/source/persistency/ascii/src/G4tgrRotationMatrixFactory.cc index 347b56c1e3..8ce1689f01 100644 --- a/source/persistency/ascii/src/G4tgrRotationMatrixFactory.cc +++ b/source/persistency/ascii/src/G4tgrRotationMatrixFactory.cc @@ -23,59 +23,50 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrRotationMatrixFactory implementation // -// -// -// class G4tgrRotationMatrixFactory - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrRotationMatrixFactory.hh" #include "G4tgrMessenger.hh" #include "G4tgrUtils.hh" +G4ThreadLocal G4tgrRotationMatrixFactory* + G4tgrRotationMatrixFactory::theInstance = nullptr; -G4ThreadLocal G4tgrRotationMatrixFactory * G4tgrRotationMatrixFactory::theInstance = 0; - - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrRotationMatrixFactory* G4tgrRotationMatrixFactory::GetInstance() { - if( !theInstance ) + if(theInstance == nullptr) { theInstance = new G4tgrRotationMatrixFactory; } return theInstance; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrRotationMatrixFactory::G4tgrRotationMatrixFactory() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrRotationMatrixFactory::~G4tgrRotationMatrixFactory() { - G4mstgrrotm::iterator cite; - for( cite = theTgrRotMats.begin(); cite != theTgrRotMats.end(); cite++) + for(auto cite = theTgrRotMats.cbegin(); cite != theTgrRotMats.cend(); ++cite) { - delete (*cite).second; + delete(*cite).second; } theTgrRotMats.clear(); delete theInstance; } - -// ------------------------------------------------------------------------- -G4tgrRotationMatrix* -G4tgrRotationMatrixFactory::AddRotMatrix( const std::vector& wl ) +// -------------------------------------------------------------------- +G4tgrRotationMatrix* G4tgrRotationMatrixFactory::AddRotMatrix( + const std::vector& wl) { - //---------- Check for miminum number of words read - if( wl.size() != 5 && wl.size() != 8 && wl.size() != 11 ) + //---------- Check for miminum number of words read + if(wl.size() != 5 && wl.size() != 8 && wl.size() != 11) { G4tgrUtils::DumpVS(wl, "G4tgrRotationMatrixFactory::AddRotMatrix()"); G4Exception("G4tgrRotationMatrixFactory::AddRotMatrix()", "InvalidMatrix", @@ -83,50 +74,47 @@ G4tgrRotationMatrixFactory::AddRotMatrix( const std::vector& wl ) } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << " G4tgrRotationMatrixFactory::AddRotMatrix() - Adding: " - << wl[1] << G4endl; + G4cout << " G4tgrRotationMatrixFactory::AddRotMatrix() - Adding: " << wl[1] + << G4endl; } #endif //---------- Look if rotation matrix exists - if( FindRotMatrix( G4tgrUtils::GetString(wl[1]) ) != 0 ) + if(FindRotMatrix(G4tgrUtils::GetString(wl[1])) != 0) { G4String ErrMessage = "Rotation matrix repeated... " + wl[1]; - G4Exception("G4tgrRotationMatrixFactory::AddRotMatrix()", - "InvalidInput", FatalException, ErrMessage); - } - - G4tgrRotationMatrix* rotm = new G4tgrRotationMatrix( wl ); - theTgrRotMats[ rotm->GetName() ] = rotm; - theTgrRotMatList.push_back( rotm ); - + G4Exception("G4tgrRotationMatrixFactory::AddRotMatrix()", "InvalidInput", + FatalException, ErrMessage); + } + + G4tgrRotationMatrix* rotm = new G4tgrRotationMatrix(wl); + theTgrRotMats[rotm->GetName()] = rotm; + theTgrRotMatList.push_back(rotm); + return rotm; } - -// ------------------------------------------------------------------------- -G4tgrRotationMatrix* -G4tgrRotationMatrixFactory::FindRotMatrix(const G4String& name) +// -------------------------------------------------------------------- +G4tgrRotationMatrix* G4tgrRotationMatrixFactory::FindRotMatrix( + const G4String& name) { - G4tgrRotationMatrix* rotm = 0; + G4tgrRotationMatrix* rotm = nullptr; - G4mstgrrotm::const_iterator cite = theTgrRotMats.find( name ); - if( cite != theTgrRotMats.end() ) - { + G4mstgrrotm::const_iterator cite = theTgrRotMats.find(name); + if(cite != theTgrRotMats.cend()) + { rotm = (*cite).second; - } + } return rotm; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgrRotationMatrixFactory::DumpRotmList() { G4cout << " @@@@@@@@@@@@@@@@ DUMPING G4tgrRotationMatrix's List " << G4endl; - G4mstgrrotm::const_iterator cite; - for(cite = theTgrRotMats.begin(); cite != theTgrRotMats.end(); cite++) + for(auto cite = theTgrRotMats.cbegin(); cite != theTgrRotMats.cend(); ++cite) { G4cout << " ROTM: " << (*cite).second->GetName() << G4endl; } diff --git a/source/persistency/ascii/src/G4tgrSolid.cc b/source/persistency/ascii/src/G4tgrSolid.cc index 46a41b144e..f5a12995e6 100644 --- a/source/persistency/ascii/src/G4tgrSolid.cc +++ b/source/persistency/ascii/src/G4tgrSolid.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrSolid implementation // -// -// -// class G4tgrSolid - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include #include @@ -42,143 +38,165 @@ #include "G4tgrMessenger.hh" #include "G4tgrVolumeMgr.hh" -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrSolid::G4tgrSolid() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrSolid::~G4tgrSolid() { } - -// ------------------------------------------------------------------------- -G4tgrSolid::G4tgrSolid( const std::vector& wl) +// -------------------------------------------------------------------- +G4tgrSolid::G4tgrSolid(const std::vector& wl) { - //---------- set name - theName = G4tgrUtils::GetString( wl[1] ); + //---------- set name + theName = G4tgrUtils::GetString(wl[1]); //---------- set solid type - theType = G4tgrUtils::GetString( wl[2] ); + theType = G4tgrUtils::GetString(wl[2]); //---------- create only vector of theSolidParams - FillSolidParams( wl ); - - G4tgrVolumeMgr::GetInstance()->RegisterMe( this ); + FillSolidParams(wl); + G4tgrVolumeMgr::GetInstance()->RegisterMe(this); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Created " << *this << G4endl; + G4cout << " Created " << *this << G4endl; } #endif - } - -// ------------------------------------------------------------------------- -const std::vector< std::vector* > G4tgrSolid::GetSolidParams() const +// -------------------------------------------------------------------- +const std::vector*> G4tgrSolid::GetSolidParams() const { return theSolidParams; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- const G4String& G4tgrSolid::GetRelativeRotMatName() const { return theName; // Dummy ... } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4ThreeVector G4tgrSolid::GetRelativePlace() const { - return G4ThreeVector(0,0,0); // Dummy... + return G4ThreeVector(0, 0, 0); // Dummy... } - -// ------------------------------------------------------------------------- -void G4tgrSolid::FillSolidParams( const std::vector& wl ) +// -------------------------------------------------------------------- +void G4tgrSolid::FillSolidParams(const std::vector& wl) { //---- Setting which are angle parameters (for dimensions...) - std::map< G4String, std::set > angleParams; + std::map> angleParams; std::set apar; - apar.clear(); apar.insert(3); apar.insert(4); + apar.clear(); + apar.insert(3); + apar.insert(4); angleParams["TUBS"] = apar; - apar.clear(); apar.insert(5); apar.insert(6); + apar.clear(); + apar.insert(5); + apar.insert(6); angleParams["CONS"] = apar; - apar.clear(); apar.insert(3); apar.insert(4); apar.insert(5); + apar.clear(); + apar.insert(3); + apar.insert(4); + apar.insert(5); angleParams["PARA"] = apar; - apar.clear(); apar.insert(1); apar.insert(2); apar.insert(6); apar.insert(10); + apar.clear(); + apar.insert(1); + apar.insert(2); + apar.insert(6); + apar.insert(10); angleParams["TRAP"] = apar; - apar.clear(); apar.insert(2); apar.insert(3); apar.insert(4); apar.insert(5); + apar.clear(); + apar.insert(2); + apar.insert(3); + apar.insert(4); + apar.insert(5); angleParams["SPHERE"] = apar; - apar.clear(); apar.insert(3); apar.insert(4); + apar.clear(); + apar.insert(3); + apar.insert(4); angleParams["TORUS"] = apar; - apar.clear(); apar.insert(0); apar.insert(1); + apar.clear(); + apar.insert(0); + apar.insert(1); angleParams["POLYCONE"] = apar; - apar.clear(); apar.insert(0); apar.insert(1); + apar.clear(); + apar.insert(0); + apar.insert(1); angleParams["POLYHEDRA"] = apar; - apar.clear(); apar.insert(2); apar.insert(3); + apar.clear(); + apar.insert(2); + apar.insert(3); angleParams["HYPE"] = apar; - apar.clear(); apar.insert(0); + apar.clear(); + apar.insert(0); angleParams["TWISTED_BOX"] = apar; - apar.clear(); apar.insert(0); apar.insert(2); apar.insert(3); apar.insert(10); + apar.clear(); + apar.insert(0); + apar.insert(2); + apar.insert(3); + apar.insert(10); angleParams["TWISTED_TRAP"] = apar; - apar.clear(); apar.insert(5); + apar.clear(); + apar.insert(5); angleParams["TWISTED_TRD"] = apar; - apar.clear(); apar.insert(0); apar.insert(4); + apar.clear(); + apar.insert(0); + apar.insert(4); angleParams["TWISTED_TUBS"] = apar; std::vector* vd = new std::vector; - theSolidParams.push_back( vd ); - size_t noParRead = wl.size()-3; + theSolidParams.push_back(vd); + std::size_t noParRead = wl.size() - 3; G4String solidType = wl[2]; //--- Default unit (mm) if length, deg if angle - for(size_t ii = 0; ii < noParRead; ii++) + for(std::size_t ii = 0; ii < noParRead; ++ii) { G4bool isAngle = 0; - std::map< G4String, std::set >::iterator ite - = angleParams.find(solidType); - if( ite != angleParams.end() ) + std::map>::const_iterator ite = + angleParams.find(solidType); + if(ite != angleParams.cend()) { std::set apar2 = (*ite).second; - if( apar2.find(ii) != apar2.end() ) + if(apar2.find(ii) != apar2.cend()) { isAngle = 1; - vd->push_back( G4tgrUtils::GetDouble( wl[3+ii], deg )); + vd->push_back(G4tgrUtils::GetDouble(wl[3 + ii], deg)); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { G4cout << " G4tgrSolid::FillSolidParams() - Angle param found " << solidType << " " << ii << G4endl; } #endif } - } + } if(!isAngle) { - vd->push_back( G4tgrUtils::GetDouble( wl[3+ii] ) ); + vd->push_back(G4tgrUtils::GetDouble(wl[3 + ii])); } } } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- std::ostream& operator<<(std::ostream& os, const G4tgrSolid& sol) { - os << "G4tgrSolid= " << sol.theName - << " of type " << sol.theType << " PARAMS: "; - if( sol.theSolidParams.size() != 0 ) + os << "G4tgrSolid= " << sol.theName << " of type " << sol.theType + << " PARAMS: "; + if(sol.theSolidParams.size() != 0) { - std::vector solpar = *(sol.theSolidParams[0]); - for( size_t ii = 0; ii < solpar.size(); ii++) + std::vector solpar = *(sol.theSolidParams[0]); + for(std::size_t ii = 0; ii < solpar.size(); ++ii) { - os << solpar[ii] << " " ; + os << solpar[ii] << " "; } } os << G4endl; diff --git a/source/persistency/ascii/src/G4tgrSolidBoolean.cc b/source/persistency/ascii/src/G4tgrSolidBoolean.cc index 1dedadcff0..12d45aaca4 100644 --- a/source/persistency/ascii/src/G4tgrSolidBoolean.cc +++ b/source/persistency/ascii/src/G4tgrSolidBoolean.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrSolidBoolean implementation // -// -// -// class G4tgrSolidBoolean - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrSolidBoolean.hh" #include "G4tgrUtils.hh" @@ -39,90 +35,86 @@ #include "G4tgrMessenger.hh" #include "G4tgrFileReader.hh" -// ------------------------------------------------------------------------- -G4tgrSolidBoolean::G4tgrSolidBoolean( const std::vector& wl ) -{ +// -------------------------------------------------------------------- +G4tgrSolidBoolean::G4tgrSolidBoolean(const std::vector& wl) +{ // :SOLID/:VOLU VOLU UNION/SUBS/INTERS VOLU1 VOLU2 ROTM POSX POSY POSZ - if( wl.size() != 9 ) + if(wl.size() != 9) { G4tgrUtils::DumpVS(wl, "G4tgrSolidBoolean::G4tgrSolidBoolean()"); G4Exception("G4tgrSolidBoolean::G4tgrSolidBoolean()", "InvalidInput", FatalException, "Line read with less or more than 9 words."); } - //---------- Set name - theName = G4tgrUtils::GetString( wl[1] ); + //---------- Set name + theName = G4tgrUtils::GetString(wl[1]); G4tgrVolumeMgr* volmgr = G4tgrVolumeMgr::GetInstance(); - const G4tgrSolid* sol1 = volmgr->FindSolid( G4tgrUtils::GetString( wl[3] )); - if( !sol1 ) + const G4tgrSolid* sol1 = volmgr->FindSolid(G4tgrUtils::GetString(wl[3])); + if(sol1 == nullptr) { - sol1 = volmgr->FindVolume( G4tgrUtils::GetString( wl[3] ), 1)->GetSolid(); + sol1 = volmgr->FindVolume(G4tgrUtils::GetString(wl[3]), 1)->GetSolid(); } - const G4tgrSolid* sol2 = volmgr->FindSolid( G4tgrUtils::GetString( wl[4] )); - if( !sol2 ) + const G4tgrSolid* sol2 = volmgr->FindSolid(G4tgrUtils::GetString(wl[4])); + if(sol2 == nullptr) { - sol2 = volmgr->FindVolume( G4tgrUtils::GetString( wl[4] ), 1)->GetSolid(); + sol2 = volmgr->FindVolume(G4tgrUtils::GetString(wl[4]), 1)->GetSolid(); } - theSolids.push_back( sol1 ); - theSolids.push_back( sol2 ); + theSolids.push_back(sol1); + theSolids.push_back(sol2); //---------- Set relative placement and rotation matrix - theRelativeRotMatName = G4tgrUtils::GetString( wl[5] ); - theRelativePlace = G4ThreeVector( G4tgrUtils::GetDouble(wl[6]), - G4tgrUtils::GetDouble(wl[7]), - G4tgrUtils::GetDouble(wl[8]) ); + theRelativeRotMatName = G4tgrUtils::GetString(wl[5]); + theRelativePlace = + G4ThreeVector(G4tgrUtils::GetDouble(wl[6]), G4tgrUtils::GetDouble(wl[7]), + G4tgrUtils::GetDouble(wl[8])); //---------- Set solid type G4String wl2 = wl[2]; - for( size_t ii = 0; ii < wl2.length(); ii++ ) + for(std::size_t ii = 0; ii < wl2.length(); ++ii) { - wl2[ii] = toupper( wl2[ii] ); + wl2[ii] = toupper(wl2[ii]); } theType = "Boolean_" + wl2; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Created " << *this << G4endl; + G4cout << " Created " << *this << G4endl; } #endif - G4tgrVolumeMgr::GetInstance()->RegisterMe( this ); + G4tgrVolumeMgr::GetInstance()->RegisterMe(this); } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrSolidBoolean::~G4tgrSolidBoolean() { } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- const G4String& G4tgrSolidBoolean::GetRelativeRotMatName() const { return theRelativeRotMatName; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- G4ThreeVector G4tgrSolidBoolean::GetRelativePlace() const { return theRelativePlace; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- std::ostream& operator<<(std::ostream& os, const G4tgrSolidBoolean& sol) { os << "G4tgrSolidBoolean= " << sol.theName << " of type " << sol.theType << " PARAMS: "; - if( sol.theSolidParams.size() != 0 ) + if(sol.theSolidParams.size() != 0) { - std::vector solpar = *(sol.theSolidParams[0]); - for( size_t ii = 0; ii < solpar.size(); ii++) + std::vector solpar = *(sol.theSolidParams[0]); + for(std::size_t ii = 0; ii < solpar.size(); ++ii) { - os << solpar[ii] << " " ; + os << solpar[ii] << " "; } } os << G4endl; diff --git a/source/persistency/ascii/src/G4tgrUtils.cc b/source/persistency/ascii/src/G4tgrUtils.cc index fa3efb3909..1196fda7e8 100644 --- a/source/persistency/ascii/src/G4tgrUtils.cc +++ b/source/persistency/ascii/src/G4tgrUtils.cc @@ -23,13 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrUtils implementation // -// -// class G4tgrUtils - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include #include @@ -44,31 +41,31 @@ #include "G4GeometryTolerance.hh" #include "G4UIcommand.hh" +G4ThreadLocal G4tgrEvaluator* G4tgrUtils::theEvaluator = nullptr; -G4ThreadLocal G4tgrEvaluator* G4tgrUtils::theEvaluator = 0 ; - - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrUtils::G4tgrUtils() { - if (!theEvaluator) { theEvaluator= new G4tgrEvaluator; } + if(theEvaluator == nullptr) + { + theEvaluator = new G4tgrEvaluator; + } } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrUtils::~G4tgrUtils() { - delete theEvaluator; theEvaluator = 0; + delete theEvaluator; + theEvaluator = nullptr; } - -//------------------------------------------------------------- -G4bool G4tgrUtils::IsSeparator( const char ch) +// -------------------------------------------------------------------- +G4bool G4tgrUtils::IsSeparator(const char ch) { - char nonCharacters[7] = {"()+-*/"}; - for( size_t ii = 0; ii < 6; ii++ ) + char nonCharacters[7] = { "()+-*/" }; + for(std::size_t ii = 0; ii < 6; ++ii) { - if( ch == nonCharacters[ii] ) + if(ch == nonCharacters[ii]) { return true; } @@ -76,21 +73,24 @@ G4bool G4tgrUtils::IsSeparator( const char ch) return false; } - -//------------------------------------------------------------- -G4bool G4tgrUtils::IsNumber( const G4String& str) +// -------------------------------------------------------------------- +G4bool G4tgrUtils::IsNumber(const G4String& str) { G4int isnum = 1; - G4int numE = 0; - for(size_t ii=0; ii precision ) - { - return 0; + if(G4int(val) / val - 1 > precision) + { + return false; } else - { - return 1; + { + return true; } } - -//------------------------------------------------------------- -void G4tgrUtils::Dump3v( const G4ThreeVector& vec, const char* msg) +// -------------------------------------------------------------------- +void G4tgrUtils::Dump3v(const G4ThreeVector& vec, const char* msg) { - G4cout << msg << std::setprecision(8) - << vec << std::setprecision(6) << G4endl; + G4cout << msg << std::setprecision(8) << vec << std::setprecision(6) + << G4endl; } - -//------------------------------------------------------------- -void G4tgrUtils::Dumprm( const G4RotationMatrix& rm, const char* msg) +// -------------------------------------------------------------------- +void G4tgrUtils::Dumprm(const G4RotationMatrix& rm, const char* msg) { - G4cout << msg << G4endl - << " xx=" << rm.xx() << " yx=" << rm.yx() << " zx=" << rm.zx() << G4endl - << " xy=" << rm.xy() << " yy=" << rm.yy() << " zy=" << rm.zy() << G4endl - << " xz=" << rm.xz() << " yz=" << rm.yz() << " zz=" << rm.zz() << G4endl; + G4cout << msg << G4endl << " xx=" << rm.xx() << " yx=" << rm.yx() + << " zx=" << rm.zx() << G4endl << " xy=" << rm.xy() + << " yy=" << rm.yy() << " zy=" << rm.zy() << G4endl + << " xz=" << rm.xz() << " yz=" << rm.yz() << " zz=" << rm.zz() + << G4endl; } - -//------------------------------------------------------------- -void G4tgrUtils::DumpVS( const std::vector& wl, - const char* msg, std::ostream& outs ) +// -------------------------------------------------------------------- +void G4tgrUtils::DumpVS(const std::vector& wl, const char* msg, + std::ostream& outs) { outs << msg << G4endl; - std::vector::const_iterator ite; - for( ite = wl.begin(); ite != wl.end(); ite++ ) + for(auto ite = wl.cbegin(); ite != wl.cend(); ++ite) { outs << *ite << " "; } outs << G4endl; } - -//------------------------------------------------------------- -void G4tgrUtils::DumpVS( const std::vector& wl , const char* msg) +// -------------------------------------------------------------------- +void G4tgrUtils::DumpVS(const std::vector& wl, const char* msg) { - DumpVS( wl, msg, G4cout); + DumpVS(wl, msg, G4cout); } - -//------------------------------------------------------------- -G4String G4tgrUtils::SubColon( const G4String& str ) +// -------------------------------------------------------------------- +G4String G4tgrUtils::SubColon(const G4String& str) { - if( str.find(':') != 0 ) + if(str.find(':') != 0) { - G4String ErrMessage = "Trying to subtract leading colon from a word\n" - + G4String("that has no leading colon: ") + str; - G4Exception("G4tgrUtils::SubColon()", "ParseError", - FatalException, ErrMessage); + G4String ErrMessage = "Trying to subtract leading colon from a word\n" + + G4String("that has no leading colon: ") + str; + G4Exception("G4tgrUtils::SubColon()", "ParseError", FatalException, + ErrMessage); } - G4String strt = str.substr(1,str.size()-1); + G4String strt = str.substr(1, str.size() - 1); return strt; } - -//------------------------------------------------------------- -G4String G4tgrUtils::GetString( const G4String& str ) +// -------------------------------------------------------------------- +G4String G4tgrUtils::GetString(const G4String& str) { //----------- first check if it is parameter const char* cstr = str.c_str(); - if( cstr[0] == '$' ) + if(cstr[0] == '$') { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { G4cout << " G4tgrUtils::GetString() - Substitute parameter: " - << G4tgrParameterMgr::GetInstance() - ->FindParameter( str.substr(1,str.size())) << G4endl; + << G4tgrParameterMgr::GetInstance()->FindParameter( + str.substr(1, str.size())) + << G4endl; } #endif - return G4tgrParameterMgr::GetInstance() - ->FindParameter( str.substr(1,str.size()) ); + return G4tgrParameterMgr::GetInstance()->FindParameter( + str.substr(1, str.size())); } else { @@ -200,29 +194,42 @@ G4String G4tgrUtils::GetString( const G4String& str ) } } - -//------------------------------------------------------------- -G4double G4tgrUtils::GetDouble( const G4String& str, G4double unitval ) +// -------------------------------------------------------------------- +G4double G4tgrUtils::GetDouble(const G4String& str, G4double unitval) { - if (!theEvaluator) { theEvaluator= new G4tgrEvaluator; } -#ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(!theEvaluator) { - G4cout << "G4tgrUtils::GetDouble() - Processing: " - << str << " default unit " << unitval << G4endl; + theEvaluator = new G4tgrEvaluator; + } +#ifdef G4VERBOSE + if(G4tgrMessenger::GetVerboseLevel() >= 3) + { + G4cout << "G4tgrUtils::GetDouble() - Processing: " << str + << " default unit " << unitval << G4endl; } #endif - if( str == "DBL_MAX" ) { + if(str == "DBL_MAX") + { return DBL_MAX; - }else if( str == "DBL_MIN" ) { + } + else if(str == "DBL_MIN") + { return DBL_MIN; - }else if( str == "FLT_MAX" ) { + } + else if(str == "FLT_MAX") + { return FLT_MAX; - }else if( str == "FLT_MIN" ) { + } + else if(str == "FLT_MIN") + { return FLT_MIN; - }else if( str == "INT_MAX" ) { + } + else if(str == "INT_MAX") + { return INT_MAX; - }else if( str == "INT_MIN" ) { + } + else if(str == "INT_MIN") + { return INT_MIN; } //----- Look for arithmetic symbols, (, ) @@ -230,50 +237,53 @@ G4double G4tgrUtils::GetDouble( const G4String& str, G4double unitval ) std::set separators; separators.insert(-1); G4int strlen = G4int(str.length()); - for(G4int ii=0; ii::const_iterator site, site2; - site = separators.begin(); - site2 = site; site2++; - for( ; site2 != separators.end(); site++,site2++) + site = separators.cbegin(); + site2 = site; + ++site2; + for(; site2 != separators.cend(); ++site, ++site2) { #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << " Loop to find word between " << *site - << " " << *site2 << G4endl; + G4cout << " Loop to find word between " << *site << " " << *site2 + << G4endl; } #endif - if( *site != -1 ) { strnew += str.substr(*site,1); } + if(*site != -1) + { + strnew += str.substr(*site, 1); + } - G4int wlen = (*site2)-(*site)-1; //do not count contiguous separators + G4int wlen = (*site2) - (*site) - 1; // do not count contiguous separators std::string word; if(wlen != 0) { - word = str.substr((*site)+1,(*site2)-(*site)-1); + word = str.substr((*site) + 1, (*site2) - (*site) - 1); } else { @@ -281,140 +291,148 @@ G4double G4tgrUtils::GetDouble( const G4String& str, G4double unitval ) //--- Check number of parentheses continue; } - + #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { G4cout << " Processing word: " << word << G4endl; } #endif //----------- first check if it is parameter const char* cword = word.c_str(); - if( cword[0] == '$' ) + if(cword[0] == '$') { - G4String parstr = G4tgrParameterMgr::GetInstance() - ->FindParameter( word.substr(1,word.size())); - if( parstr.substr(0,1) == "-" ) + G4String parstr = G4tgrParameterMgr::GetInstance()->FindParameter( + word.substr(1, word.size())); + if(parstr.substr(0, 1) == "-") { strnew += "("; } strnew += parstr; - if( parstr.substr(0,1) == "-" ) + if(parstr.substr(0, 1) == "-") { strnew += ")"; } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << " G4tgrutils::GetDouble() - Param found: " - << word << " in string " << str - << " , substituted by " << parstr << G4endl; + G4cout << " G4tgrutils::GetDouble() - Param found: " << word + << " in string " << str << " , substituted by " << parstr + << G4endl; } #endif } else { //----- Get if it is a number - if( IsNumber(word) ) + if(IsNumber(word)) { //--- left separator cannot be ')' - if( (*site != -1) && (cstr[*site] == ')') ) + if((*site != -1) && (cstr[*site] == ')')) { - G4String ErrMessage = "There cannot be a ')' before a number: " - + word + " in string: " + str; - G4Exception("G4tgrUtils::GetDouble()", "ParseError", - FatalException, ErrMessage); + G4String ErrMessage = + "There cannot be a ')' before a number: " + word + + " in string: " + str; + G4Exception("G4tgrUtils::GetDouble()", "ParseError", FatalException, + ErrMessage); } //--- right separator cannot be '(' - if( (*site2 != strlen) && (cstr[*site2] == '(') ) + if((*site2 != strlen) && (cstr[*site2] == '(')) { - G4String ErrMessage = "There cannot be a '(' after a number: " - + word + " in string: " + str; - G4Exception("G4tgrUtils::GetDouble()", "ParseError", - FatalException, ErrMessage); + G4String ErrMessage = + "There cannot be a '(' after a number: " + word + + " in string: " + str; + G4Exception("G4tgrUtils::GetDouble()", "ParseError", FatalException, + ErrMessage); } strnew += word; - + //------ If it is an string, check if it is a unit } else { //--- First character cannot be a digit - if( isdigit(word[0]) ) + if(isdigit(word[0])) { - G4String ErrMessage = "String words cannot start with a digit: " - + word + " in string: " + str; - G4Exception("G4tgrUtils::GetDouble()", "ParseError", - FatalException, ErrMessage ); + G4String ErrMessage = + "String words cannot start with a digit: " + word + + " in string: " + str; + G4Exception("G4tgrUtils::GetDouble()", "ParseError", FatalException, + ErrMessage); } - + //----- Check if it is a function - G4bool bWordOK = false; - if( G4tgrUtils::IsFunction( word ) ) + G4bool bWordOK = false; + if(G4tgrUtils::IsFunction(word)) { //--- It must be followed by '(' - if( (*site2 == strlen) || (cstr[*site2] != '(') ) + if((*site2 == strlen) || (cstr[*site2] != '(')) { - G4String ErrMessage = "There must be a '(' after a function: " - + word + " in string: " + str; - G4Exception("G4tgrUtils::GetDouble()", "ParseError", - FatalException, ErrMessage ); + G4String ErrMessage = + "There must be a '(' after a function: " + word + + " in string: " + str; + G4Exception("G4tgrUtils::GetDouble()", "ParseError", FatalException, + ErrMessage); } strnew += word; - bWordOK = true; - //----- Check if it is a unit + bWordOK = true; + //----- Check if it is a unit } - else if( G4tgrUtils::WordIsUnit( word ) ) + else if(G4tgrUtils::WordIsUnit(word)) { //--- It must be preceded by a * - if( (*site == -1) - || ( (cstr[*site] != '*') && (cstr[*site] != '/') ) ) + if((*site == -1) || ((cstr[*site] != '*') && (cstr[*site] != '/'))) { - G4String ErrMess = "There must be a '*' before a unit definition: " - + word + " in string " + str; - G4Exception("G4tgrUtils::GetDouble()", "ParseError", - FatalException, ErrMess ); + G4String ErrMess = + "There must be a '*' before a unit definition: " + word + + " in string " + str; + G4Exception("G4tgrUtils::GetDouble()", "ParseError", FatalException, + ErrMess); } //--- check that it is indeed a CLHEP unit - if( G4UnitDefinition::GetValueOf(word) != 0. ) + if(G4UnitDefinition::GetValueOf(word) != 0.) { - bWordOK = true; + bWordOK = true; nUnits++; - if( nUnits > 1 ) + if(nUnits > 1) { // G4String ErrMess = "There cannot be two unit definitions: " // + word + " in string " + str; // G4Exception("G4tgrUtils::GetDouble()", "ParseError", // FatalException, ErrMess ); } - strnew += G4UIcommand::ConvertToString( G4UnitDefinition::GetValueOf(word) ); + strnew += + G4UIcommand::ConvertToString(G4UnitDefinition::GetValueOf(word)); } } - if( !bWordOK ) + if(!bWordOK) { - G4String ErrMess = "String word is not a parameter, nor a unit\n" - + G4String("definition nor a function: ") + word - + G4String(" in string: ") + str; - G4Exception("G4tgrUtils::GetDouble()", "ParseError", - FatalException, ErrMess ); + G4String ErrMess = "String word is not a parameter, nor a unit\n" + + G4String("definition nor a function: ") + word + + G4String(" in string: ") + str; + G4Exception("G4tgrUtils::GetDouble()", "ParseError", FatalException, + ErrMess); } } } } - G4double val = theEvaluator->evaluate( strnew.c_str() ); - if (theEvaluator->status() != HepTool::Evaluator::OK) + G4double val = theEvaluator->evaluate(strnew.c_str()); + if(theEvaluator->status() != HepTool::Evaluator::OK) { theEvaluator->print_error(theEvaluator->status()); G4String ErrMessage = "Evaluator error: " + strnew; - G4Exception("G4tgrUtils::GetDouble()", "ParseError", - FatalException, ErrMessage ); + G4Exception("G4tgrUtils::GetDouble()", "ParseError", FatalException, + ErrMessage); + } + + if(nUnits == 0) + { + val *= unitval; } - - if( nUnits == 0 ) { val *= unitval; } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { G4cout << " G4tgrUtils::GetDouble() - RESULT= " << val << G4endl << " from string: " << str << " converted to: " << strnew.c_str() @@ -425,288 +443,255 @@ G4double G4tgrUtils::GetDouble( const G4String& str, G4double unitval ) return val; } - -//------------------------------------------------------------- -G4int G4tgrUtils::GetInt( const G4String& str ) +// -------------------------------------------------------------------- +G4int G4tgrUtils::GetInt(const G4String& str) { //----- Convert it to a number (it can be a parameter) G4double val = GetDouble(str); //----- Check it is an integer - if( !IsInteger(val) ) + if(!IsInteger(val)) { - G4String ErrMessage = G4String("Trying to get the integer from a number") - + G4String(" which is not an integer ") + str; - G4Exception("G4tgrUtils::GetInt()", "ParseError", - FatalException, ErrMessage ); + G4String ErrMessage = G4String("Trying to get the integer from a number") + + G4String(" which is not an integer ") + str; + G4Exception("G4tgrUtils::GetInt()", "ParseError", FatalException, + ErrMessage); } - return G4int( val ); + return G4int(val); } - -//------------------------------------------------------------- -G4bool G4tgrUtils::GetBool( const G4String& str ) +// -------------------------------------------------------------------- +G4bool G4tgrUtils::GetBool(const G4String& str) { G4bool val = false; - + //----------- first check that it is a not number - if( (str == "ON") || (str == "TRUE") ) + if((str == "ON") || (str == "TRUE")) { val = true; } - else if( (str == "OFF") || (str == "FALSE") ) + else if((str == "OFF") || (str == "FALSE")) { val = false; } else { - G4String ErrMessage = G4String("Trying to get a float from a string") - + G4String(" which is not 'ON'/'OFF'/'TRUE'/'FALSE' ") - + str; - G4Exception("G4tgrUtils::GetBool()", "ParseError", - FatalException, ErrMessage ); + G4String ErrMessage = G4String("Trying to get a float from a string") + + G4String(" which is not 'ON'/'OFF'/'TRUE'/'FALSE' ") + + str; + G4Exception("G4tgrUtils::GetBool()", "ParseError", FatalException, + ErrMessage); } return val; } - -//------------------------------------------------------------- -void G4tgrUtils::CheckWLsize( const std::vector& wl, - unsigned int nWcheck, WLSIZEtype st, - const G4String& methodName ) +// -------------------------------------------------------------------- +void G4tgrUtils::CheckWLsize(const std::vector& wl, + unsigned int nWcheck, WLSIZEtype st, + const G4String& methodName) { G4String outStr = methodName + G4String(". Line read with number of words "); unsigned int wlsize = wl.size(); - G4bool isOK = CheckListSize( wlsize, nWcheck, st, outStr ); + G4bool isOK = CheckListSize(wlsize, nWcheck, st, outStr); - if( !isOK ) - { - G4String chartmp = G4UIcommand::ConvertToString( G4int(nWcheck) ); + if(!isOK) + { + G4String chartmp = G4UIcommand::ConvertToString(G4int(nWcheck)); outStr += chartmp + G4String(" words"); - DumpVS( wl, outStr.c_str() ); - G4String ErrMessage = " NUMBER OF WORDS: " - + G4UIcommand::ConvertToString(G4int(wlsize)); - G4Exception("G4tgrUtils::CheckWLsize()", "ParseError", - FatalException, ErrMessage); + DumpVS(wl, outStr.c_str()); + G4String ErrMessage = + " NUMBER OF WORDS: " + G4UIcommand::ConvertToString(G4int(wlsize)); + G4Exception("G4tgrUtils::CheckWLsize()", "ParseError", FatalException, + ErrMessage); } } -//------------------------------------------------------------- -G4bool G4tgrUtils::CheckListSize( unsigned int nWreal, unsigned int nWcheck, - WLSIZEtype st, G4String& outStr ) +// -------------------------------------------------------------------- +G4bool G4tgrUtils::CheckListSize(unsigned int nWreal, unsigned int nWcheck, + WLSIZEtype st, G4String& outStr) { G4bool isOK = true; - switch (st) + switch(st) { - case WLSIZE_EQ: - if( nWreal != nWcheck ) - { - isOK = false; - outStr += G4String("not equal than "); - } - break; - case WLSIZE_NE: - if( nWreal == nWcheck ) - { - isOK = false; - outStr += G4String("equal than "); - } - break; - case WLSIZE_LE: - if( nWreal > nWcheck ) - { - isOK = false; - outStr += G4String("greater than "); - } - break; - case WLSIZE_LT: - if( nWreal >= nWcheck ) - { - isOK = false; - outStr += G4String("greater or equal than "); - } - break; - case WLSIZE_GE: - if( nWreal < nWcheck ) - { - isOK = false; - outStr += G4String("less than "); - } - break; - case WLSIZE_GT: - if( nWreal <= nWcheck ) - { - isOK = false; - outStr += G4String("less or equal than "); - } - break; - default: - G4cerr << " ERROR!! - G4tgrUtils::CheckListSize()" << G4endl - << " Type of WLSIZE type not found " << st << G4endl; - break; + case WLSIZE_EQ: + if(nWreal != nWcheck) + { + isOK = false; + outStr += G4String("not equal than "); + } + break; + case WLSIZE_NE: + if(nWreal == nWcheck) + { + isOK = false; + outStr += G4String("equal than "); + } + break; + case WLSIZE_LE: + if(nWreal > nWcheck) + { + isOK = false; + outStr += G4String("greater than "); + } + break; + case WLSIZE_LT: + if(nWreal >= nWcheck) + { + isOK = false; + outStr += G4String("greater or equal than "); + } + break; + case WLSIZE_GE: + if(nWreal < nWcheck) + { + isOK = false; + outStr += G4String("less than "); + } + break; + case WLSIZE_GT: + if(nWreal <= nWcheck) + { + isOK = false; + outStr += G4String("less or equal than "); + } + break; + default: + G4cerr << " ERROR!! - G4tgrUtils::CheckListSize()" << G4endl + << " Type of WLSIZE type not found " << st << G4endl; + break; } return isOK; } - -//------------------------------------------------------------- -G4bool G4tgrUtils::WordIsUnit( const G4String& word ) +// -------------------------------------------------------------------- +G4bool G4tgrUtils::WordIsUnit(const G4String& word) { return !IsNumber(word); - if( word == "mm" - || word == "cm" - || word == "m" - || word == "km" - || word == "millimeter" - || word == "centimeter" - || word == "meter" - || word == "kilometer" - || word == "parsec" - || word == "micrometer" - || word == "nanometer" - || word == "angstrom" - || word == "fermi" - || word == "nm" - || word == "um" - || word == "pc" - || word == "radian" - || word == "milliradian" - || word == "degree" - || word == "rad" - || word == "mrad" - || word == "deg" - || word == "ns" - || word == "becquerel" - || word == "curie" ) - { + if(word == "mm" || word == "cm" || word == "m" || word == "km" || + word == "millimeter" || word == "centimeter" || word == "meter" || + word == "kilometer" || word == "parsec" || word == "micrometer" || + word == "nanometer" || word == "angstrom" || word == "fermi" || + word == "nm" || word == "um" || word == "pc" || word == "radian" || + word == "milliradian" || word == "degree" || word == "rad" || + word == "mrad" || word == "deg" || word == "ns" || word == "becquerel" || + word == "curie") + { return true; } else - { + { return false; } } - -//------------------------------------------------------------- -G4bool G4tgrUtils::IsFunction( const G4String& word ) +// -------------------------------------------------------------------- +G4bool G4tgrUtils::IsFunction(const G4String& word) { - if( word == "sin" - || word == "cos" - || word == "tan" - || word == "asin" - || word == "acos" - || word == "atan" - || word == "atan2" - || word == "sinh" - || word == "cosh" - || word == "tanh" - || word == "asinh" - || word == "acosh" - || word == "atanh" - || word == "sqrt" - || word == "exp" - || word == "log" - || word == "log10" - || word == "pow" ) - { + if(word == "sin" || word == "cos" || word == "tan" || word == "asin" || + word == "acos" || word == "atan" || word == "atan2" || word == "sinh" || + word == "cosh" || word == "tanh" || word == "asinh" || word == "acosh" || + word == "atanh" || word == "sqrt" || word == "exp" || word == "log" || + word == "log10" || word == "pow") + { return true; } else - { + { return false; } } - -//------------------------------------------------------------- -G4RotationMatrix G4tgrUtils::GetRotationFromDirection( G4ThreeVector dir ) +// -------------------------------------------------------------------- +G4RotationMatrix G4tgrUtils::GetRotationFromDirection(G4ThreeVector dir) { G4RotationMatrix rotation; - if( std::fabs(dir.mag()-1.) > G4GeometryTolerance::GetInstance() - ->GetSurfaceTolerance() ) + if(std::fabs(dir.mag() - 1.) > + G4GeometryTolerance::GetInstance()->GetSurfaceTolerance()) { - G4String WarMessage = "Direction cosines have been normalized to one.\n" - + G4String("They were normalized to ") - + G4UIcommand::ConvertToString(dir.mag()); + G4String WarMessage = "Direction cosines have been normalized to one.\n" + + G4String("They were normalized to ") + + G4UIcommand::ConvertToString(dir.mag()); G4Exception("G4tgrUtils::GetRotationFromDirection()", "WrongArgument", JustWarning, WarMessage); dir /= dir.mag(); - } + } G4double angx = -std::asin(dir.y()); // There are always two solutions angx, angy and PI-angx, // PI+angy, choose first // G4double angy; - if( dir.y() == 1. ) + if(dir.y() == 1.) { angy = 0.; } - else if( dir.y() == 0. ) + else if(dir.y() == 0.) { angy = 0.; } else { - angy = std::asin( dir.x()/std::sqrt(1-dir.y()*dir.y()) ); + angy = std::asin(dir.x() / std::sqrt(1 - dir.y() * dir.y())); } - + // choose between angy and PI-angy - if( dir.z() * std::cos(angx)*std::cos(angy) < 0 ) + if(dir.z() * std::cos(angx) * std::cos(angy) < 0) { angy = pi - angy; } - rotation.rotateX( angx ); - rotation.rotateY( angy ); + rotation.rotateX(angx); + rotation.rotateY(angy); return rotation; -} +} - -//------------------------------------------------------------- -G4bool G4tgrUtils::AreWordsEquivalent( const G4String& word1, - const G4String& word2 ) +// -------------------------------------------------------------------- +G4bool G4tgrUtils::AreWordsEquivalent(const G4String& word1, + const G4String& word2) { G4bool bEqual = true; - std::vector< std::pair > stringPairs; - // start of substring, number of characters + std::vector> stringPairs; + // start of substring, number of characters //--- Get string limits between asterisks in word1 - size_t cStart = 0; - for( ;; ) + std::size_t cStart = 0; + for(;;) { - size_t cAster = word1.find("*",cStart); - if( cAster != std::string::npos ) + size_t cAster = word1.find("*", cStart); + if(cAster != std::string::npos) { - if( cAster == cStart ) + if(cAster == cStart) { - if( cAster != 0 ) + if(cAster != 0) { G4Exception("G4tgrUtils::AreWordsEquivalent()", "A word has two asterisks together, please correct it", - FatalException,("Offending word is: " + word1).c_str() ); + FatalException, ("Offending word is: " + word1).c_str()); } else { // word1 == * - if(word1.size() == 1 ) { return true; } + if(word1.size() == 1) + { + return true; + } } - } - if( cAster!= cStart ) - { - stringPairs.push_back( std::pair(cStart, cAster-cStart) ); } - cStart = cAster+1; + if(cAster != cStart) + { + stringPairs.push_back( + std::pair(cStart, cAster - cStart)); + } + cStart = cAster + 1; } else { - if( cStart == 0 ) + if(cStart == 0) { //--- If there is no asterisk check if they are the same return word1 == word2; @@ -714,21 +699,21 @@ G4bool G4tgrUtils::AreWordsEquivalent( const G4String& word1, break; } } - - //---- Add characters after last asterisk as string pair - if( cStart <= word1.length() ) + + //---- Add characters after last asterisk as string pair + if(cStart <= word1.length()) { - if( word1.length() != cStart ) + if(word1.length() != cStart) { - stringPairs.push_back( std::pair(cStart, - word1.length()-cStart) ); + stringPairs.push_back( + std::pair(cStart, word1.length() - cStart)); } } //--- If there are not asterisk, simple comparison - if( stringPairs.size() == 0 ) + if(stringPairs.size() == 0) { - if( word1 == word2 ) + if(word1 == word2) { return true; } @@ -737,14 +722,14 @@ G4bool G4tgrUtils::AreWordsEquivalent( const G4String& word1, return false; } } - + //--- Find substrings in word2, in same order as in word1 cStart = 0; - for( size_t ii = 0; ii < stringPairs.size(); ii++ ) + for(std::size_t ii = 0; ii < stringPairs.size(); ++ii) { - std::pair spair = stringPairs[ii]; - size_t sFound = word2.find(word1.substr(spair.first, spair.second),cStart); - if( sFound == std::string::npos ) + std::pair spair = stringPairs[ii]; + size_t sFound = word2.find(word1.substr(spair.first, spair.second), cStart); + if(sFound == std::string::npos) { bEqual = false; break; @@ -753,21 +738,21 @@ G4bool G4tgrUtils::AreWordsEquivalent( const G4String& word1, { //---- If there is no asterisk before first character, // the fisrt string pair found has to start at the first character - if( spair.first == 0 && sFound != 0 ) + if(spair.first == 0 && sFound != 0) { bEqual = false; break; //---- If there is no asterisk after last character, // the last string pair found has to end at the last character } - else if( (spair.first+spair.second-1 == word1.length()) - && (sFound+spair.second-1 != word2.length()) ) + else if((spair.first + spair.second - 1 == word1.length()) && + (sFound + spair.second - 1 != word2.length())) { bEqual = false; break; } cStart += spair.second; - } + } } return bEqual; diff --git a/source/persistency/ascii/src/G4tgrVolume.cc b/source/persistency/ascii/src/G4tgrVolume.cc index 195f82b637..b637eef21a 100644 --- a/source/persistency/ascii/src/G4tgrVolume.cc +++ b/source/persistency/ascii/src/G4tgrVolume.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrVolume implementation // -// -// -// class G4tgrVolume - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrVolume.hh" #include "G4tgrUtils.hh" @@ -44,252 +40,233 @@ #include "G4tgrMessenger.hh" #include "G4UIcommand.hh" -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrVolume::G4tgrVolume() - : theName(""), theType(""), - theMaterialName(""), theSolid(0), theVisibility(false), - theRGBColour(0), theCheckOverlaps(false) { } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrVolume::~G4tgrVolume() { - delete [] theRGBColour; + delete[] theRGBColour; } - -//------------------------------------------------------------- -G4tgrVolume::G4tgrVolume( const std::vector& wl) +// -------------------------------------------------------------------- +G4tgrVolume::G4tgrVolume(const std::vector& wl) { theType = "VOLSimple"; - //---------- set name - theName = G4tgrUtils::GetString( wl[1] ); + //---------- set name + theName = G4tgrUtils::GetString(wl[1]); - theVisibility = 1; - theRGBColour = new G4double[4]; - for(size_t ii=0; ii<4; ii++) { theRGBColour[ii] = -1.; } - theCheckOverlaps = 0; + theVisibility = true; + theRGBColour = new G4double[4]; + for(std::size_t ii = 0; ii < 4; ++ii) + { + theRGBColour[ii] = -1.; + } + theCheckOverlaps = false; - if( wl.size() != 4 ) + if(wl.size() != 4) { //:VOLU tag to build a volume creating solid and material //---------- set material name - theMaterialName = G4tgrUtils::GetString( wl[wl.size()-1] ); - + theMaterialName = G4tgrUtils::GetString(wl[wl.size() - 1]); + //---------- create only vector of theSolidParams - theSolid = G4tgrVolumeMgr::GetInstance()->CreateSolid( wl, 1 ); + theSolid = G4tgrVolumeMgr::GetInstance()->CreateSolid(wl, 1); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << "Created from new solid: " - << *this << G4endl; - } + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << "Created from new solid: " << *this << G4endl; + } #endif } else - { - //:VOLU tag to build a volume assigning material to solid - //---------- set material name - theMaterialName = G4tgrUtils::GetString( wl[3] ); - theSolid = G4tgrVolumeMgr::GetInstance()->FindSolid( wl[2], true ); - + { + //:VOLU tag to build a volume assigning material to solid + //---------- set material name + theMaterialName = G4tgrUtils::GetString(wl[3]); + theSolid = G4tgrVolumeMgr::GetInstance()->FindSolid(wl[2], true); + #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) - { - G4cout << "Created from existing solid: " - << *this << G4endl; - } -#endif + if(G4tgrMessenger::GetVerboseLevel() >= 1) + { + G4cout << "Created from existing solid: " << *this << G4endl; } +#endif + } } - -//------------------------------------------------------------------------- -G4tgrVolume::G4tgrVolume( const G4tgrVolume& vol ) +// -------------------------------------------------------------------- +G4tgrVolume::G4tgrVolume(const G4tgrVolume& vol) { - theName = vol.GetName(); - theType = vol.GetType(); - theMaterialName = vol.GetMaterialName(); - theSolid = vol.GetSolid(); - thePlacements = vol.GetPlacements(); - theVisibility = vol.GetVisibility(); - theRGBColour = vol.GetRGBColour(); + theName = vol.GetName(); + theType = vol.GetType(); + theMaterialName = vol.GetMaterialName(); + theSolid = vol.GetSolid(); + thePlacements = vol.GetPlacements(); + theVisibility = vol.GetVisibility(); + theRGBColour = vol.GetRGBColour(); theCheckOverlaps = vol.GetCheckOverlaps(); } - -//------------------------------------------------------------------------- -G4tgrVolume* G4tgrVolume::GetVolume( G4int ii ) const +// -------------------------------------------------------------------- +G4tgrVolume* G4tgrVolume::GetVolume(G4int ii) const { - G4String ErrMessage = "Should only be called for composite solids... " - + G4UIcommand::ConvertToString(ii); - G4Exception("G4tgrVolume::GetVolume()", "InvalidCall", - FatalException, ErrMessage); - return 0; + G4String ErrMessage = "Should only be called for composite solids... " + + G4UIcommand::ConvertToString(ii); + G4Exception("G4tgrVolume::GetVolume()", "InvalidCall", FatalException, + ErrMessage); + return nullptr; } - -//------------------------------------------------------------- -G4tgrPlace* G4tgrVolume::AddPlace( const std::vector& wl ) +// -------------------------------------------------------------------- +G4tgrPlace* G4tgrVolume::AddPlace(const std::vector& wl) { - //---------- Check for exact number of words read - G4tgrUtils::CheckWLsize( wl, 8, WLSIZE_EQ, " G4tgrVolume::AddPlace"); - //---------- set G4tgrPlace - G4tgrPlaceSimple* pl = new G4tgrPlaceSimple( wl ); + //---------- Check for exact number of words read + G4tgrUtils::CheckWLsize(wl, 8, WLSIZE_EQ, " G4tgrVolume::AddPlace"); + //---------- set G4tgrPlace + G4tgrPlaceSimple* pl = new G4tgrPlaceSimple(wl); //---------- check that there is no previous placement in - // the same parent with the same copyNo - std::vector::iterator ite; - for( ite = thePlacements.begin(); ite != thePlacements.end(); ite++) + // the same parent with the same copyNo + for(auto ite = thePlacements.cbegin(); ite != thePlacements.cend(); ++ite) { - if( ((*ite)->GetCopyNo() == pl->GetCopyNo()) - && ((*ite)->GetParentName() == pl->GetParentName()) ) + if(((*ite)->GetCopyNo() == pl->GetCopyNo()) && + ((*ite)->GetParentName() == pl->GetParentName())) { - G4String ErrMessage = "Repeated placement. Volume " - + theName + " in " + pl->GetParentName(); + G4String ErrMessage = + "Repeated placement. Volume " + theName + " in " + pl->GetParentName(); G4Exception("G4tgrVolume::AddPlace()", "InvalidArgument", FatalErrorInArgument, ErrMessage); } - } + } - pl->SetVolume( this ); - thePlacements.push_back( pl ); + pl->SetVolume(this); + thePlacements.push_back(pl); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgrVolume: New placement: " << thePlacements.size() - << " added for Volume " << theName - << " inside " << pl->GetParentName() - << " type " << pl->GetType() << G4endl; + << " added for Volume " << theName << " inside " + << pl->GetParentName() << " type " << pl->GetType() << G4endl; } #endif - //---------- register parent - child - G4tgrVolumeMgr::GetInstance()->RegisterParentChild( pl->GetParentName(), pl ); + //---------- register parent - child + G4tgrVolumeMgr::GetInstance()->RegisterParentChild(pl->GetParentName(), pl); return pl; } - -//------------------------------------------------------------- -G4tgrPlaceDivRep* -G4tgrVolume::AddPlaceReplica( const std::vector& wl ) +// -------------------------------------------------------------------- +G4tgrPlaceDivRep* G4tgrVolume::AddPlaceReplica(const std::vector& wl) { - //---------- Check for exact number of words read - G4tgrUtils::CheckWLsize( wl, 6, WLSIZE_GE, " G4tgrVolume::AddPlaceReplica"); - G4tgrUtils::CheckWLsize( wl, 7, WLSIZE_LE, " G4tgrVolume::AddPlaceReplica"); + //---------- Check for exact number of words read + G4tgrUtils::CheckWLsize(wl, 6, WLSIZE_GE, " G4tgrVolume::AddPlaceReplica"); + G4tgrUtils::CheckWLsize(wl, 7, WLSIZE_LE, " G4tgrVolume::AddPlaceReplica"); - if( (wl.size() == 7) && (G4tgrUtils::GetDouble(wl[6]) != 0.) - && (wl[3] != "PHI") ) + if((wl.size() == 7) && (G4tgrUtils::GetDouble(wl[6]) != 0.) && + (wl[3] != "PHI")) { G4Exception("G4tgrVolume::AddPlaceReplica", "Offset set for replica not along PHI, it will not be used", JustWarning, - G4String("Volume "+wl[1]+" in volume "+wl[2]).c_str()); + G4String("Volume " + wl[1] + " in volume " + wl[2]).c_str()); } - - //---------- set G4tgrPlace - G4tgrPlaceDivRep* pl = new G4tgrPlaceDivRep( wl ); + + //---------- set G4tgrPlace + G4tgrPlaceDivRep* pl = new G4tgrPlaceDivRep(wl); pl->SetType("PlaceReplica"); - pl->SetVolume( this ); - thePlacements.push_back( pl ); + pl->SetVolume(this); + thePlacements.push_back(pl); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgrVolume: New placement replica: " << thePlacements.size() - << " added for Volume " << theName - << " inside " << pl->GetParentName() << G4endl; + << " added for Volume " << theName << " inside " + << pl->GetParentName() << G4endl; } #endif - //---------- register parent - child - G4tgrVolumeMgr::GetInstance()->RegisterParentChild( pl->GetParentName(), pl ); + //---------- register parent - child + G4tgrVolumeMgr::GetInstance()->RegisterParentChild(pl->GetParentName(), pl); return pl; } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrPlaceParameterisation* -G4tgrVolume::AddPlaceParam( const std::vector& wl ) +G4tgrVolume::AddPlaceParam(const std::vector& wl) { //---------- set G4tgrPlaceParameterisation - G4tgrPlaceParameterisation* pl = new G4tgrPlaceParameterisation( wl ); + G4tgrPlaceParameterisation* pl = new G4tgrPlaceParameterisation(wl); - pl->SetVolume( this ); - thePlacements.push_back( pl ); + pl->SetVolume(this); + thePlacements.push_back(pl); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " G4tgrVolume: New placement Param: " << thePlacements.size() - << " added for Volume " << theName - << " inside " << pl->GetParentName() << G4endl; + << " added for Volume " << theName << " inside " + << pl->GetParentName() << G4endl; } #endif - //---------- register parent - child - G4tgrVolumeMgr::GetInstance()->RegisterParentChild( pl->GetParentName(), pl ); + //---------- register parent - child + G4tgrVolumeMgr::GetInstance()->RegisterParentChild(pl->GetParentName(), pl); return pl; } - -//------------------------------------------------------------- -void G4tgrVolume::AddVisibility( const std::vector& wl ) +// -------------------------------------------------------------------- +void G4tgrVolume::AddVisibility(const std::vector& wl) { - //---------- Check for exact number of words read - G4tgrUtils::CheckWLsize( wl, 3, WLSIZE_EQ, " G4tgrVolume::AddVisibility"); + //---------- Check for exact number of words read + G4tgrUtils::CheckWLsize(wl, 3, WLSIZE_EQ, " G4tgrVolume::AddVisibility"); //---------- Set visibility - theVisibility = G4tgrUtils::GetBool( wl[2] ); + theVisibility = G4tgrUtils::GetBool(wl[2]); } - -//------------------------------------------------------------- -void G4tgrVolume::AddRGBColour( const std::vector& wl ) +// -------------------------------------------------------------------- +void G4tgrVolume::AddRGBColour(const std::vector& wl) { - //---------- Check for exact number of words read - G4tgrUtils::CheckWLsize( wl, 5, WLSIZE_GE, " G4tgrVolume::AddRGBColour"); - + //---------- Check for exact number of words read + G4tgrUtils::CheckWLsize(wl, 5, WLSIZE_GE, " G4tgrVolume::AddRGBColour"); + //---------- Set RGB colour - theRGBColour[0] = G4tgrUtils::GetDouble( wl[2] ); - theRGBColour[1] = G4tgrUtils::GetDouble( wl[3] ); - theRGBColour[2] = G4tgrUtils::GetDouble( wl[4] ); + theRGBColour[0] = G4tgrUtils::GetDouble(wl[2]); + theRGBColour[1] = G4tgrUtils::GetDouble(wl[3]); + theRGBColour[2] = G4tgrUtils::GetDouble(wl[4]); ///--------- Set transparency - if( wl.size() == 6 ) + if(wl.size() == 6) { - theRGBColour[3] = G4tgrUtils::GetDouble( wl[5] ); + theRGBColour[3] = G4tgrUtils::GetDouble(wl[5]); } } - -//------------------------------------------------------------- -void G4tgrVolume::AddCheckOverlaps( const std::vector& wl ) +// -------------------------------------------------------------------- +void G4tgrVolume::AddCheckOverlaps(const std::vector& wl) { - //---------- Check for exact number of words read - G4tgrUtils::CheckWLsize( wl, 3, WLSIZE_GE, " G4tgrVolume::AddCheckOverlaps"); - - ///--------- Set check overlaps - theCheckOverlaps = G4tgrUtils::GetBool( wl[2] ); + //---------- Check for exact number of words read + G4tgrUtils::CheckWLsize(wl, 3, WLSIZE_GE, " G4tgrVolume::AddCheckOverlaps"); + ///--------- Set check overlaps + theCheckOverlaps = G4tgrUtils::GetBool(wl[2]); } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- std::ostream& operator<<(std::ostream& os, const G4tgrVolume& obj) { os << "G4tgrVolume= " << obj.theName << " Type= " << obj.theType - << " Material= " << obj.theMaterialName - << " Visibility " << obj.theVisibility - << " Colour " << (obj.theRGBColour)[0] << " " - << (obj.theRGBColour)[1] << " " - << (obj.theRGBColour)[2] << " " - << (obj.theRGBColour)[3] << " " - << " CheckOverlaps " << obj.theCheckOverlaps - << " N placements " << obj.thePlacements.size() << G4endl; - + << " Material= " << obj.theMaterialName << " Visibility " + << obj.theVisibility << " Colour " << (obj.theRGBColour)[0] << " " + << (obj.theRGBColour)[1] << " " << (obj.theRGBColour)[2] << " " + << (obj.theRGBColour)[3] << " " + << " CheckOverlaps " << obj.theCheckOverlaps << " N placements " + << obj.thePlacements.size() << G4endl; + return os; } diff --git a/source/persistency/ascii/src/G4tgrVolumeAssembly.cc b/source/persistency/ascii/src/G4tgrVolumeAssembly.cc index c41643bc97..b1958ee957 100644 --- a/source/persistency/ascii/src/G4tgrVolumeAssembly.cc +++ b/source/persistency/ascii/src/G4tgrVolumeAssembly.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrVolumeAssembly implementation // -// -// -// class G4tgrVolumeAssembly - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrVolumeAssembly.hh" #include "G4tgrUtils.hh" @@ -41,103 +37,99 @@ #include "G4tgrFileReader.hh" #include "G4tgrMessenger.hh" -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrVolumeAssembly::G4tgrVolumeAssembly() { } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrVolumeAssembly::~G4tgrVolumeAssembly() { } - -//------------------------------------------------------------- -G4tgrVolumeAssembly::G4tgrVolumeAssembly( const std::vector& wl ) +// -------------------------------------------------------------------- +G4tgrVolumeAssembly::G4tgrVolumeAssembly(const std::vector& wl) { theType = "VOLAssembly"; - //---------- set name - theName = G4tgrUtils::GetString( wl[1] ); + //---------- set name + theName = G4tgrUtils::GetString(wl[1]); - G4int nVol = G4tgrUtils::GetInt( wl[2] ); + G4int nVol = G4tgrUtils::GetInt(wl[2]); - G4tgrUtils::CheckWLsize( wl, 3+nVol*5, WLSIZE_GE, - "G4tgrVolumeAssembly::G4tgrVolumeAssembly" ); + G4tgrUtils::CheckWLsize(wl, 3 + nVol * 5, WLSIZE_GE, + "G4tgrVolumeAssembly::G4tgrVolumeAssembly"); - - for(G4int ii=0; ii= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { - G4cout << " G4tgrVolumeAssembly::G4tgrVolumeAssembly() -" - << " Adding component: " << ii << " - " << wl[ii+3] << G4endl; + G4cout << " G4tgrVolumeAssembly::G4tgrVolumeAssembly() -" + << " Adding component: " << ii << " - " << wl[ii + 3] << G4endl; } #endif - theComponentNames.push_back(G4tgrUtils::GetString( wl[3+ii+0])); - theComponentRMs.push_back(G4tgrUtils::GetString( wl[3+ii+1])); - theComponentPos.push_back(G4ThreeVector(G4tgrUtils::GetDouble(wl[3+ii+2]), - G4tgrUtils::GetDouble(wl[3+ii+3]), - G4tgrUtils::GetDouble(wl[3+ii+4]))); + theComponentNames.push_back(G4tgrUtils::GetString(wl[3 + ii + 0])); + theComponentRMs.push_back(G4tgrUtils::GetString(wl[3 + ii + 1])); + theComponentPos.push_back( + G4ThreeVector(G4tgrUtils::GetDouble(wl[3 + ii + 2]), + G4tgrUtils::GetDouble(wl[3 + ii + 3]), + G4tgrUtils::GetDouble(wl[3 + ii + 4]))); } theVisibility = 1; - theRGBColour = new G4double[4]; - for (size_t ii=0; ii<4; ii++) { theRGBColour[ii] = -1.; } + theRGBColour = new G4double[4]; + for(std::size_t ii = 0; ii < 4; ++ii) + { + theRGBColour[ii] = -1.; + } - theSolid = 0; + theSolid = nullptr; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Created " << *this << G4endl; + G4cout << " Created " << *this << G4endl; } #endif - } - -//------------------------------------------------------------------------- -G4tgrPlace* G4tgrVolumeAssembly::AddPlace( const std::vector& wl ) +// -------------------------------------------------------------------- +G4tgrPlace* G4tgrVolumeAssembly::AddPlace(const std::vector& wl) { - //---------- Check for exact number of words read - G4tgrUtils::CheckWLsize( wl, 7, WLSIZE_EQ, " G4tgrVolumeAssembly::AddPlace"); + //---------- Check for exact number of words read + G4tgrUtils::CheckWLsize(wl, 7, WLSIZE_EQ, " G4tgrVolumeAssembly::AddPlace"); - //---------- set G4tgrPlace - G4tgrPlaceSimple* pl = new G4tgrPlaceSimple( wl ); + //---------- set G4tgrPlace + G4tgrPlaceSimple* pl = new G4tgrPlaceSimple(wl); - pl->SetVolume( this ); - thePlacements.push_back( pl ); + pl->SetVolume(this); + thePlacements.push_back(pl); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 2 ) + if(G4tgrMessenger::GetVerboseLevel() >= 2) { G4cout << " New placement: " << thePlacements.size() - << " added for Volume " << theName - << " inside " << pl->GetParentName() - << " type " << pl->GetType() << G4endl; + << " added for Volume " << theName << " inside " + << pl->GetParentName() << " type " << pl->GetType() << G4endl; } #endif - //---------- register parent - child - G4tgrVolumeMgr::GetInstance()->RegisterParentChild( pl->GetParentName(), pl ); + //---------- register parent - child + G4tgrVolumeMgr::GetInstance()->RegisterParentChild(pl->GetParentName(), pl); return pl; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- std::ostream& operator<<(std::ostream& os, const G4tgrVolumeAssembly& obj) { os << "G4tgrVolumeAssembly= " << obj.theName; - for( size_t ii = 0; ii < obj.theComponentNames.size(); ii++ ) + for(std::size_t ii = 0; ii < obj.theComponentNames.size(); ++ii) { - os << obj.theComponentNames[ii] << " RotMatName= " - << obj.theComponentRMs[ii] << " Position= " - << obj.theComponentPos[ii].x() << " " - << obj.theComponentPos[ii].y() << " " - << obj.theComponentPos[ii].z(); + os << obj.theComponentNames[ii] + << " RotMatName= " << obj.theComponentRMs[ii] + << " Position= " << obj.theComponentPos[ii].x() << " " + << obj.theComponentPos[ii].y() << " " << obj.theComponentPos[ii].z(); } os << G4endl; diff --git a/source/persistency/ascii/src/G4tgrVolumeDivision.cc b/source/persistency/ascii/src/G4tgrVolumeDivision.cc index a071239530..b193be4699 100644 --- a/source/persistency/ascii/src/G4tgrVolumeDivision.cc +++ b/source/persistency/ascii/src/G4tgrVolumeDivision.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrVolumeDivision implementation // -// -// -// class G4tgrVolumeDivision - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrVolumeDivision.hh" @@ -42,49 +38,48 @@ #include "G4tgrPlaceDivRep.hh" #include "G4tgrMessenger.hh" - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrVolumeDivision::~G4tgrVolumeDivision() { } -//------------------------------------------------------------- -G4tgrVolumeDivision::G4tgrVolumeDivision( const std::vector& wl ) +// -------------------------------------------------------------------- +G4tgrVolumeDivision::G4tgrVolumeDivision(const std::vector& wl) { // wl: NAME PARENT MATERIAL AXIS STEP/NDIV OFFSET - G4tgrUtils::CheckWLsize( wl, 6, WLSIZE_GE, - "G4tgrVolumeDivision::G4tgrVolumeDivision" ); - G4tgrUtils::CheckWLsize( wl, 8, WLSIZE_LE, - "G4tgrVolumeDivision::G4tgrVolumeDivision" ); + G4tgrUtils::CheckWLsize(wl, 6, WLSIZE_GE, + "G4tgrVolumeDivision::G4tgrVolumeDivision"); + G4tgrUtils::CheckWLsize(wl, 8, WLSIZE_LE, + "G4tgrVolumeDivision::G4tgrVolumeDivision"); theType = "VOLDivision"; // :DIV NAME PARENT MATERIAL AXIS STEP/NDIV OFFSET - //---------- set name - theName = G4tgrUtils::GetString( wl[1] ); - + //---------- set name + theName = G4tgrUtils::GetString(wl[1]); + //---------- set the pointer to the parent DU G4String parentName = G4tgrUtils::GetString(wl[2]); - G4tgrVolumeMgr::GetInstance()->FindVolume( parentName, 1); // check existance + G4tgrVolumeMgr::GetInstance()->FindVolume(parentName, 1); // check existance //---------- initialize G4tgrPlace thePlaceDiv = new G4tgrPlaceDivRep(); - thePlaceDiv->SetParentName( parentName ); + thePlaceDiv->SetParentName(parentName); thePlaceDiv->SetType("PlaceDivision"); - thePlaceDiv->SetVolume( this ); + thePlaceDiv->SetVolume(this); //---------- set material name - theMaterialName = G4tgrUtils::GetString( wl[3] ); - - //----- set axis of replica - thePlaceDiv->SetAxis( thePlaceDiv->BuildAxis(G4tgrUtils::GetString(wl[4])) ); + theMaterialName = G4tgrUtils::GetString(wl[3]); - //------ register parent - child - G4tgrVolumeMgr::GetInstance()->RegisterParentChild( parentName, thePlaceDiv ); + //----- set axis of replica + thePlaceDiv->SetAxis(thePlaceDiv->BuildAxis(G4tgrUtils::GetString(wl[4]))); + + //------ register parent - child + G4tgrVolumeMgr::GetInstance()->RegisterParentChild(parentName, thePlaceDiv); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { G4cout << " G4tgrVolumeDivision::G4tgrVolumeDivision() -" << " Replica register parent - child " << G4endl; @@ -93,62 +88,64 @@ G4tgrVolumeDivision::G4tgrVolumeDivision( const std::vector& wl ) //---------- set if division is given by number of divisions of by width G4String wl0 = wl[0]; - for( size_t ii = 0; ii < wl0.length(); ii++ ) + for(std::size_t ii = 0; ii < wl0.length(); ++ii) { - wl0[ii] = toupper( wl0[ii] ); + wl0[ii] = toupper(wl0[ii]); } - if( wl0 == ":DIV_NDIV" ) + if(wl0 == ":DIV_NDIV") { - thePlaceDiv->SetDivType( DivByNdiv ); - thePlaceDiv->SetNDiv( G4tgrUtils::GetInt( wl[5] ) ); - if( wl.size() == 7 ) + thePlaceDiv->SetDivType(DivByNdiv); + thePlaceDiv->SetNDiv(G4tgrUtils::GetInt(wl[5])); + if(wl.size() == 7) { - thePlaceDiv->SetOffset( G4tgrUtils::GetDouble( wl[6] )*mm ); + thePlaceDiv->SetOffset(G4tgrUtils::GetDouble(wl[6]) * mm); } } - else if( wl0 == ":DIV_WIDTH" ) + else if(wl0 == ":DIV_WIDTH") { - thePlaceDiv->SetDivType( DivByWidth ); - thePlaceDiv->SetWidth( G4tgrUtils::GetDouble( wl[5] )*mm ); - if( wl.size() == 7 ) + thePlaceDiv->SetDivType(DivByWidth); + thePlaceDiv->SetWidth(G4tgrUtils::GetDouble(wl[5]) * mm); + if(wl.size() == 7) { - thePlaceDiv->SetOffset( G4tgrUtils::GetDouble( wl[6] )*mm ); + thePlaceDiv->SetOffset(G4tgrUtils::GetDouble(wl[6]) * mm); } } - else if( wl0 == ":DIV_NDIV_WIDTH" ) + else if(wl0 == ":DIV_NDIV_WIDTH") { - thePlaceDiv->SetDivType( DivByNdivAndWidth ); - thePlaceDiv->SetNDiv( G4tgrUtils::GetInt( wl[5] ) ); - thePlaceDiv->SetWidth( G4tgrUtils::GetDouble( wl[6] )*mm ); - if( wl.size() == 8 ) + thePlaceDiv->SetDivType(DivByNdivAndWidth); + thePlaceDiv->SetNDiv(G4tgrUtils::GetInt(wl[5])); + thePlaceDiv->SetWidth(G4tgrUtils::GetDouble(wl[6]) * mm); + if(wl.size() == 8) { - thePlaceDiv->SetOffset( G4tgrUtils::GetDouble( wl[7] )*mm ); + thePlaceDiv->SetOffset(G4tgrUtils::GetDouble(wl[7]) * mm); } } else { G4String ErrMessage = "Division type not supported, sorry... " + wl[0]; - G4Exception("G4tgrVolumeDivision::G4tgrVolumeDivision()", - "NotImplemented", FatalException, ErrMessage); + G4Exception("G4tgrVolumeDivision::G4tgrVolumeDivision()", "NotImplemented", + FatalException, ErrMessage); } theVisibility = 1; - theRGBColour = new G4double[3]; - for(size_t ii=0; ii<3; ii++) { theRGBColour[ii] = -1.; } + theRGBColour = new G4double[3]; + for(std::size_t ii = 0; ii < 3; ++ii) + { + theRGBColour[ii] = -1.; + } #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 1 ) + if(G4tgrMessenger::GetVerboseLevel() >= 1) { - G4cout << " Created " << *this << G4endl; + G4cout << " Created " << *this << G4endl; } #endif - theSolid = 0; + theSolid = nullptr; } - -// ------------------------------------------------------------------------- +// -------------------------------------------------------------------- std::ostream& operator<<(std::ostream& os, const G4tgrVolumeDivision& obj) { os << "G4tgrVolumeDivision= " << obj.theName diff --git a/source/persistency/ascii/src/G4tgrVolumeMgr.cc b/source/persistency/ascii/src/G4tgrVolumeMgr.cc index 03af21a964..5a03f779c2 100644 --- a/source/persistency/ascii/src/G4tgrVolumeMgr.cc +++ b/source/persistency/ascii/src/G4tgrVolumeMgr.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4tgrVolumeMgr implementation // -// -// -// class G4tgrVolumeMgr - -// History: -// - Created. P.Arce, CIEMAT (November 2007) -// ------------------------------------------------------------------------- +// Author: P.Arce, CIEMAT (November 2007) +// -------------------------------------------------------------------- #include "G4tgrVolumeMgr.hh" #include "G4tgrUtils.hh" @@ -41,165 +37,161 @@ #include "G4tgrSolid.hh" #include "G4tgrSolidBoolean.hh" +G4ThreadLocal G4tgrVolumeMgr* G4tgrVolumeMgr::theInstance = nullptr; -G4ThreadLocal G4tgrVolumeMgr* G4tgrVolumeMgr::theInstance = 0; - - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrVolumeMgr::G4tgrVolumeMgr() { } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrVolumeMgr::~G4tgrVolumeMgr() -{ +{ delete theInstance; } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- G4tgrVolumeMgr* G4tgrVolumeMgr::GetInstance() { - if( !theInstance ) + if(theInstance == nullptr) { theInstance = new G4tgrVolumeMgr; } return theInstance; } - -//------------------------------------------------------------------- -G4tgrSolid* -G4tgrVolumeMgr::CreateSolid( const std::vector& wl, G4bool bVOLUtag ) +// -------------------------------------------------------------------- +G4tgrSolid* G4tgrVolumeMgr::CreateSolid(const std::vector& wl, + G4bool bVOLUtag) { - G4tgrSolid* sol = FindSolid( wl[1] ); - if( sol ) + G4tgrSolid* sol = FindSolid(wl[1]); + if(sol != nullptr) { G4String ErrMessage = "Solid already exists... " + wl[1]; - G4Exception("G4tgrVolumeMgr::CreateSolid()", "InvalidSetup", - FatalException, ErrMessage); - } - + G4Exception("G4tgrVolumeMgr::CreateSolid()", "InvalidSetup", FatalException, + ErrMessage); + } + std::vector wlc = wl; - if( bVOLUtag ) { wlc.pop_back(); } + if(bVOLUtag) + { + wlc.pop_back(); + } G4String wl2 = wlc[2]; - for( size_t ii = 0; ii < wl2.length(); ii++ ) + for(std::size_t ii = 0; ii < wl2.length(); ++ii) { - wl2[ii] = toupper( wl2[ii] ); + wl2[ii] = toupper(wl2[ii]); } - if( (wl2 == "UNION") || (wl2 == "SUBTRACTION") || (wl2 == "INTERSECTION") ) + if((wl2 == "UNION") || (wl2 == "SUBTRACTION") || (wl2 == "INTERSECTION")) { //---------- Boolean solid //---------- Create G4tgrSolidBoolean and fill the solid params - sol = new G4tgrSolidBoolean( wlc ); + sol = new G4tgrSolidBoolean(wlc); } else { //---------- Create G4tgrSolidSimple and fill the solid params - sol = new G4tgrSolid( wlc ); + sol = new G4tgrSolid(wlc); } return sol; } -//------------------------------------------------------------------- -void G4tgrVolumeMgr::RegisterMe( G4tgrSolid* sol) +// -------------------------------------------------------------------- +void G4tgrVolumeMgr::RegisterMe(G4tgrSolid* sol) { - if( theG4tgrSolidMap.find( sol->GetName() ) != theG4tgrSolidMap.end() ) + if(theG4tgrSolidMap.find(sol->GetName()) != theG4tgrSolidMap.cend()) { - G4String ErrMessage = "Cannot be two solids with the same name... " - + sol->GetName(); - G4Exception("G4tgrVolumeMgr::RegisterMe()", "InvalidSetup", - FatalException, ErrMessage); + G4String ErrMessage = + "Cannot be two solids with the same name... " + sol->GetName(); + G4Exception("G4tgrVolumeMgr::RegisterMe()", "InvalidSetup", FatalException, + ErrMessage); } - theG4tgrSolidMap.insert(G4mapssol::value_type(sol->GetName(), sol) ); + theG4tgrSolidMap.insert(G4mapssol::value_type(sol->GetName(), sol)); } - -//------------------------------------------------------------- -void G4tgrVolumeMgr::UnRegisterMe( G4tgrSolid* sol ) +// -------------------------------------------------------------------- +void G4tgrVolumeMgr::UnRegisterMe(G4tgrSolid* sol) { - if( theG4tgrSolidMap.find( sol->GetName() ) != theG4tgrSolidMap.end() ) - { - G4String ErrMessage = "Cannot unregister a solid that is not registered... " - + sol->GetName(); - G4Exception("G4tgrSolidMgr::unRegisterMe()", "InvalidSetup", - FatalException, ErrMessage); + if(theG4tgrSolidMap.find(sol->GetName()) != theG4tgrSolidMap.cend()) + { + G4String ErrMessage = + "Cannot unregister a solid that is not registered... " + sol->GetName(); + G4Exception("G4tgrSolidMgr::unRegisterMe()", "InvalidSetup", FatalException, + ErrMessage); } else { - theG4tgrSolidMap.erase( theG4tgrSolidMap.find( sol->GetName() ) ); + theG4tgrSolidMap.erase(theG4tgrSolidMap.find(sol->GetName())); } } - -//------------------------------------------------------------- -void G4tgrVolumeMgr::RegisterMe( G4tgrVolume* vol) +// -------------------------------------------------------------------- +void G4tgrVolumeMgr::RegisterMe(G4tgrVolume* vol) { - theG4tgrVolumeList.push_back( vol ); - if( theG4tgrVolumeMap.find( vol->GetName() ) != theG4tgrVolumeMap.end() ) + theG4tgrVolumeList.push_back(vol); + if(theG4tgrVolumeMap.find(vol->GetName()) != theG4tgrVolumeMap.cend()) { - G4String ErrMessage = "Cannot be two volumes with the same name... " - + vol->GetName(); - G4Exception("G4tgrVolumeMgr::RegisterMe()", "InvalidSetup", - FatalException, ErrMessage); + G4String ErrMessage = + "Cannot be two volumes with the same name... " + vol->GetName(); + G4Exception("G4tgrVolumeMgr::RegisterMe()", "InvalidSetup", FatalException, + ErrMessage); } - theG4tgrVolumeMap.insert(G4mapsvol::value_type(vol->GetName(), vol) ); + theG4tgrVolumeMap.insert(G4mapsvol::value_type(vol->GetName(), vol)); } - -//------------------------------------------------------------- -void G4tgrVolumeMgr::UnRegisterMe( G4tgrVolume* vol ) +// -------------------------------------------------------------------- +void G4tgrVolumeMgr::UnRegisterMe(G4tgrVolume* vol) { - std::vector::iterator ite; - for(ite = theG4tgrVolumeList.begin(); ite != theG4tgrVolumeList.end(); ite++) + std::vector::const_iterator ite; + for(ite = theG4tgrVolumeList.cbegin(); + ite != theG4tgrVolumeList.cend(); ++ite) { - if((*ite) == vol ) { break; } + if((*ite) == vol) + { + break; + } } - if( ite == theG4tgrVolumeList.end() ) - { - G4String ErrMessage = "Cannot unregister a volume not registered... " - + vol->GetName(); + if(ite == theG4tgrVolumeList.cend()) + { + G4String ErrMessage = + "Cannot unregister a volume not registered... " + vol->GetName(); G4Exception("G4tgrVolumeMgr::unRegisterMe()", "InvalidSetup", FatalException, ErrMessage); } else { - theG4tgrVolumeList.erase( ite ); + theG4tgrVolumeList.erase(ite); } - theG4tgrVolumeMap.erase( theG4tgrVolumeMap.find( vol->GetName() ) ); + theG4tgrVolumeMap.erase(theG4tgrVolumeMap.find(vol->GetName())); } - -//------------------------------------------------------------- - -void G4tgrVolumeMgr::RegisterParentChild( const G4String& parentName, - const G4tgrPlace* pl ) -{ - theG4tgrVolumeTree.insert(G4mmapspl::value_type(parentName, pl) ); -} - - -//------------------------------------------------------------- -G4tgrSolid* G4tgrVolumeMgr::FindSolid( const G4String& volname, G4bool exists ) +// -------------------------------------------------------------------- +void G4tgrVolumeMgr::RegisterParentChild(const G4String& parentName, + const G4tgrPlace* pl) { - G4tgrSolid* vol = 0; - - G4mapssol::iterator svite = theG4tgrSolidMap.find( volname ); - if( svite == theG4tgrSolidMap.end() ) + theG4tgrVolumeTree.insert(G4mmapspl::value_type(parentName, pl)); +} + +// -------------------------------------------------------------------- +G4tgrSolid* G4tgrVolumeMgr::FindSolid(const G4String& volname, G4bool exists) +{ + G4tgrSolid* vol = nullptr; + + G4mapssol::const_iterator svite = theG4tgrSolidMap.find(volname); + if(svite == theG4tgrSolidMap.cend()) { - if( exists ) + if(exists) { - for( svite = theG4tgrSolidMap.begin(); - svite != theG4tgrSolidMap.end(); svite++ ) + for(svite = theG4tgrSolidMap.cbegin(); + svite != theG4tgrSolidMap.cend(); ++svite) { G4cerr << " VOL:" << (*svite).first << G4endl; } G4String ErrMessage = "Solid not found... " + volname; - G4Exception("G4tgrVolumeMgr::FindSolid()", "InvalidSetup", - FatalException, ErrMessage); + G4Exception("G4tgrVolumeMgr::FindSolid()", "InvalidSetup", FatalException, + ErrMessage); } } else @@ -210,20 +202,18 @@ G4tgrSolid* G4tgrVolumeMgr::FindSolid( const G4String& volname, G4bool exists ) return vol; } - -//------------------------------------------------------------- -G4tgrVolume* -G4tgrVolumeMgr::FindVolume( const G4String& volname, G4bool exists ) +// -------------------------------------------------------------------- +G4tgrVolume* G4tgrVolumeMgr::FindVolume(const G4String& volname, G4bool exists) { - G4tgrVolume* vol = 0; - - G4mapsvol::iterator svite = theG4tgrVolumeMap.find( volname ); - if( svite == theG4tgrVolumeMap.end() ) + G4tgrVolume* vol = nullptr; + + G4mapsvol::const_iterator svite = theG4tgrVolumeMap.find(volname); + if(svite == theG4tgrVolumeMap.cend()) { - if( exists ) + if(exists) { - for( svite = theG4tgrVolumeMap.begin(); - svite != theG4tgrVolumeMap.end(); svite++ ) + for(svite = theG4tgrVolumeMap.cbegin(); + svite != theG4tgrVolumeMap.cend(); ++svite) { G4cerr << " VOL:" << (*svite).first << G4endl; } @@ -234,8 +224,8 @@ G4tgrVolumeMgr::FindVolume( const G4String& volname, G4bool exists ) else { G4String WarMessage = "Volume does not exists... " + volname; - G4Exception("G4tgrVolumeMgr::FindVolume()", "SearchFailed", - JustWarning, WarMessage); + G4Exception("G4tgrVolumeMgr::FindVolume()", "SearchFailed", JustWarning, + WarMessage); } } else @@ -246,28 +236,28 @@ G4tgrVolumeMgr::FindVolume( const G4String& volname, G4bool exists ) return vol; } -//------------------------------------------------------------- -std::vector -G4tgrVolumeMgr::FindVolumes( const G4String& volname, G4bool exists ) +// -------------------------------------------------------------------- +std::vector G4tgrVolumeMgr::FindVolumes(const G4String& volname, + G4bool exists) { std::vector vols; - - G4mapsvol::iterator svite; - for( svite = theG4tgrVolumeMap.begin(); - svite != theG4tgrVolumeMap.end(); svite++ ) + + G4mapsvol::const_iterator svite; + for(svite = theG4tgrVolumeMap.cbegin(); + svite != theG4tgrVolumeMap.cend(); ++svite) { - if( G4tgrUtils::AreWordsEquivalent( volname, (*svite).second->GetName()) ) + if(G4tgrUtils::AreWordsEquivalent(volname, (*svite).second->GetName())) { - vols.push_back(const_cast((*svite).second) ); + vols.push_back(const_cast((*svite).second)); } } - if( vols.size() == 0 ) + if(vols.size() == 0) { - if( exists ) + if(exists) { - for( svite = theG4tgrVolumeMap.begin(); - svite != theG4tgrVolumeMap.end(); svite++ ) + for(svite = theG4tgrVolumeMap.cbegin(); + svite != theG4tgrVolumeMap.cend(); ++svite) { G4cerr << " VOL:" << (*svite).first << G4endl; } @@ -278,56 +268,53 @@ G4tgrVolumeMgr::FindVolumes( const G4String& volname, G4bool exists ) else { G4String WarMessage = "Volume does not exists... " + volname; - G4Exception("G4tgrVolumeMgr::FindVolumes()", "SearchFailed", - JustWarning, WarMessage); + G4Exception("G4tgrVolumeMgr::FindVolumes()", "SearchFailed", JustWarning, + WarMessage); } } return vols; } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- const G4tgrVolume* G4tgrVolumeMgr::GetTopVolume() { //--- Start from any G4tgrVolume and go upwards until you get to the top. - // Check that indeed all volumes drive to the same top volume + // Check that indeed all volumes drive to the same top volume - const G4tgrVolume* topVol = 0; - G4mapsvol::const_iterator itetv; - for( itetv = theG4tgrVolumeMap.begin(); - itetv != theG4tgrVolumeMap.end(); itetv++ ) + const G4tgrVolume* topVol = nullptr; + for(auto itetv = theG4tgrVolumeMap.cbegin(); + itetv != theG4tgrVolumeMap.cend(); ++itetv) { const G4tgrVolume* vol = (*itetv).second; #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << " G4tgrVolumeMgr::GetTopVolume() - Vol: " - << vol->GetName() << " no place = " - << vol->GetPlacements().size() << G4endl; + G4cout << " G4tgrVolumeMgr::GetTopVolume() - Vol: " << vol->GetName() + << " no place = " << vol->GetPlacements().size() << G4endl; } #endif - - while( vol->GetPlacements().size() != 0 ) + + while(vol->GetPlacements().size() != 0) { - vol = FindVolume((*(vol->GetPlacements()).begin())->GetParentName(), 1); + vol = FindVolume((*(vol->GetPlacements()).cbegin())->GetParentName(), 1); #ifdef G4VERBOSE - if( G4tgrMessenger::GetVerboseLevel() >= 3 ) + if(G4tgrMessenger::GetVerboseLevel() >= 3) { - G4cout << " G4tgrVolumeMgr::GetTopVolume() - Vol: " - << vol->GetName()<< " N place = " - << vol->GetPlacements().size() << G4endl; + G4cout << " G4tgrVolumeMgr::GetTopVolume() - Vol: " << vol->GetName() + << " N place = " << vol->GetPlacements().size() << G4endl; } #endif } - if ( (topVol != 0) && (topVol != vol) - && (topVol->GetType() != "VOLDivision") - && (vol->GetType() != "VOLDivision") ) + if((topVol != nullptr) && (topVol != vol) && + (topVol->GetType() != "VOLDivision") && + (vol->GetType() != "VOLDivision")) { G4Exception("G4tgrVolumeMgr::GetTopVolume()", "Two world volumes found, second will be taken", JustWarning, - (G4String("Both volumes are at the top of a hierarchy: ") - + topVol->GetName() + " & " + vol->GetName() ).c_str()); + (G4String("Both volumes are at the top of a hierarchy: ") + + topVol->GetName() + " & " + vol->GetName()) + .c_str()); } topVol = vol; } @@ -335,92 +322,84 @@ const G4tgrVolume* G4tgrVolumeMgr::GetTopVolume() return topVol; } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- std::pair -G4tgrVolumeMgr::GetChildren( const G4String& name ) +G4tgrVolumeMgr::GetChildren(const G4String& name) { std::pair dite; - dite = theG4tgrVolumeTree.equal_range( name ); + dite = theG4tgrVolumeTree.equal_range(name); return dite; } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgrVolumeMgr::DumpVolumeTree() { G4cout << " @@@@@@@@@@@@@@@@ DUMPING G4tgrVolume's Tree " << G4endl; const G4tgrVolume* vol = GetTopVolume(); - DumpVolumeLeaf( vol, 0, 0); + DumpVolumeLeaf(vol, 0, 0); } - -//------------------------------------------------------------- -void G4tgrVolumeMgr::DumpVolumeLeaf( const G4tgrVolume* vol, - unsigned int copyNo, - unsigned int leafDepth) +// -------------------------------------------------------------------- +void G4tgrVolumeMgr::DumpVolumeLeaf(const G4tgrVolume* vol, unsigned int copyNo, + unsigned int leafDepth) { - for( size_t ii=0; ii < leafDepth; ii++ ) + for(std::size_t ii = 0; ii < leafDepth; ++ii) { G4cout << " "; } - G4cout << " VOL:(" << leafDepth << ")" << vol->GetName() - << " copy No " << copyNo << G4endl; + G4cout << " VOL:(" << leafDepth << ")" << vol->GetName() << " copy No " + << copyNo << G4endl; //---------- construct the children of this VOL - std::pair children - = GetChildren( vol->GetName() ); - G4mmapspl::const_iterator cite; + std::pair children = + GetChildren(vol->GetName()); + G4mmapspl::const_iterator cite; - leafDepth++; - for( cite = children.first; cite != children.second; cite++ ) + ++leafDepth; + for(cite = children.first; cite != children.second; ++cite) { //---- find G4tgrVolume pointed by G4tgrPlace - const G4tgrPlace* pla = (*cite).second; + const G4tgrPlace* pla = (*cite).second; const G4tgrVolume* volchild = pla->GetVolume(); //--- find copyNo unsigned int cn = pla->GetCopyNo(); - DumpVolumeLeaf( volchild, cn, leafDepth ); + DumpVolumeLeaf(volchild, cn, leafDepth); } } - -//------------------------------------------------------------- +// -------------------------------------------------------------------- void G4tgrVolumeMgr::DumpSummary() { //---------- Dump number of objects of each class G4cout << " @@@@@@@@@@@@@@@@@@ Dumping Detector Summary " << G4endl; G4cout << " @@@ Geometry built inside world volume: " << GetTopVolume()->GetName() << G4endl; - G4cout << " Number of G4tgrVolume's: " - << theG4tgrVolumeMap.size() << G4endl; - G4mapsvol::const_iterator cite; + G4cout << " Number of G4tgrVolume's: " << theG4tgrVolumeMap.size() << G4endl; unsigned int nPlace = 0; - for( cite = theG4tgrVolumeMap.begin(); - cite != theG4tgrVolumeMap.end(); cite++ ) + for(auto cite = theG4tgrVolumeMap.cbegin(); + cite != theG4tgrVolumeMap.cend(); ++cite) { nPlace += ((*cite).second)->GetPlacements().size(); } G4cout << " Number of G4tgrPlace's: " << nPlace << G4endl; G4tgrMaterialFactory* matef = G4tgrMaterialFactory::GetInstance(); - G4cout << " Number of G4tgrIsotope's: " - << matef->GetIsotopeList().size() << G4endl; - G4cout << " Number of G4tgrElement's: " - << matef->GetElementList().size() << G4endl; - G4cout << " Number of G4tgrMaterial's: " - << matef->GetMaterialList().size() << G4endl; + G4cout << " Number of G4tgrIsotope's: " << matef->GetIsotopeList().size() + << G4endl; + G4cout << " Number of G4tgrElement's: " << matef->GetElementList().size() + << G4endl; + G4cout << " Number of G4tgrMaterial's: " << matef->GetMaterialList().size() + << G4endl; G4tgrRotationMatrixFactory* rotmf = G4tgrRotationMatrixFactory::GetInstance(); G4cout << " Number of G4tgrRotationMatrix's: " << rotmf->GetRotMatList().size() << G4endl; - //---------- Dump detail list of objects of each class DumpVolumeTree(); - + matef->DumpIsotopeList(); matef->DumpElementList(); matef->DumpMaterialList(); diff --git a/source/persistency/gdml/History b/source/persistency/gdml/History index 52bd65e9ac..b0f5c2058b 100644 --- a/source/persistency/gdml/History +++ b/source/persistency/gdml/History @@ -16,6 +16,22 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +5 November 2020 Witek Pokorski (gdml-V10-06-05) +- Adding new method to the parser SetOutputFileOverwrite(G4bool flag) which +allows to set the flag to enable overwriting of the output GDML file. + +19 October 2020 Witek Pokorski (gdml-V10-06-04) +- Fix for problem 2273 (fixing loops when from == to). + +7 October 2020 Gabriele Cosmo (gdml-V10-06-03) +- Minor c++11 review. Code cleanup and formatting. + +6 October 2020 Gabriele Cosmo (gdml-V10-06-02) +- Use std::map instead of std::vector to iterate on logical-border surfaces + in G4GDMLWriteStructure::GetBorderSurface(). + Based on GitHub PR #6 by J.Brodsky. +- Some code cleanup and formatting in G4GDMLWriteStructure source. + 21 February 2020 Witek Pokorski (gdml-V10-06-01) - Fixed writting out and reading in of const properties of material. @@ -540,7 +556,7 @@ G4MaterialPropertyVector object for identical properties. parsing problems in imported files. 26 February 2009 Tatiana Nikitina (gdml-V09-02-04) -- Corrected treatment of brackets and indeces for matrices in G4GDMLEvaluator. +- Corrected treatment of brackets and indices for matrices in G4GDMLEvaluator. Fixes problem report #1048. 24 February 2009 Gabriele Cosmo (gdml-V09-02-03) diff --git a/source/persistency/gdml/include/G4GDMLAuxStructType.hh b/source/persistency/gdml/include/G4GDMLAuxStructType.hh index 66e79028a3..d19a034916 100644 --- a/source/persistency/gdml/include/G4GDMLAuxStructType.hh +++ b/source/persistency/gdml/include/G4GDMLAuxStructType.hh @@ -23,29 +23,24 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// // struct G4GDMLAuxStructType -// History: -// - Created. Witold Pokorski, March 2015 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLAUXSTRUCTTYPE_INCLUDED_ -#define _G4GDMLAUXSTRUCTTYPE_INCLUDED_ +// Author: Witold Pokorski, March 2015 +// -------------------------------------------------------------------- +#ifndef G4GDMLAUXSTRUCTTYPE_HH +#define G4GDMLAUXSTRUCTTYPE_HH 1 #include #include "G4String.hh" struct G4GDMLAuxStructType { - G4String type; - G4String value; - G4String unit; - std::vector* auxList; + G4String type; + G4String value; + G4String unit; + std::vector* auxList; }; -typedef std::vector G4GDMLAuxListType; +using G4GDMLAuxListType = std::vector; #endif diff --git a/source/persistency/gdml/include/G4GDMLEvaluator.hh b/source/persistency/gdml/include/G4GDMLEvaluator.hh index 1849fec3d9..305ba543c0 100644 --- a/source/persistency/gdml/include/G4GDMLEvaluator.hh +++ b/source/persistency/gdml/include/G4GDMLEvaluator.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLEvaluator +// G4GDMLEvaluator // // Class description: // -// GDML class for evaluation of expressions. +// GDML class for evaluation of expressions -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLEVALUATOR_INCLUDED_ -#define _G4GDMLEVALUATOR_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLEVALUATOR_HH +#define G4GDMLEVALUATOR_HH 1 #include @@ -45,29 +40,28 @@ class G4GDMLEvaluator { + public: - public: + G4GDMLEvaluator(); - G4GDMLEvaluator(); + void Clear(); + void DefineConstant(const G4String&, G4double); + void DefineVariable(const G4String&, G4double); + void DefineMatrix(const G4String&, G4int, std::vector); + void SetVariable(const G4String&, G4double); + G4bool IsVariable(const G4String&) const; + G4String SolveBrackets(const G4String&); + G4double Evaluate(const G4String&); + G4int EvaluateInteger(const G4String&); + G4double GetConstant(const G4String&); + G4double GetVariable(const G4String&); + G4String ConvertToString(G4int ival); + G4String ConvertToString(G4double dval); - void Clear(); - void DefineConstant(const G4String&, G4double); - void DefineVariable(const G4String&, G4double); - void DefineMatrix(const G4String&, G4int, std::vector); - void SetVariable(const G4String&, G4double); - G4bool IsVariable(const G4String&) const; - G4String SolveBrackets(const G4String&); - G4double Evaluate(const G4String&); - G4int EvaluateInteger(const G4String&); - G4double GetConstant(const G4String&); - G4double GetVariable(const G4String&); - G4String ConvertToString(G4int ival); - G4String ConvertToString(G4double dval); + private: - private: - - G4Evaluator eval; - std::vector variableList; + G4Evaluator eval; + std::vector variableList; }; #endif diff --git a/source/persistency/gdml/include/G4GDMLMessenger.hh b/source/persistency/gdml/include/G4GDMLMessenger.hh index 1a9309731e..4e06ba4a53 100644 --- a/source/persistency/gdml/include/G4GDMLMessenger.hh +++ b/source/persistency/gdml/include/G4GDMLMessenger.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLMessenger +// G4GDMLMessenger // // Class description: // // GDML UI messenger. -// History: -// - Created. Witold Pokorski, October 2010 -// ------------------------------------------------------------------------- - -#ifndef G4GDMLMessenger_h -#define G4GDMLMessenger_h 1 +// Author: Witold Pokorski, October 2010 +// -------------------------------------------------------------------- +#ifndef G4GDMLMessenger_hh +#define G4GDMLMessenger_hh 1 #include "globals.hh" #include "G4UImessenger.hh" @@ -52,31 +47,31 @@ class G4UIcmdWithABool; class G4GDMLMessenger : public G4UImessenger { - public: // with description + public: G4GDMLMessenger(G4GDMLParser*); - ~G4GDMLMessenger(); - + ~G4GDMLMessenger(); + void SetNewValue(G4UIcommand*, G4String); - + private: - G4GDMLParser* myParser; - G4LogicalVolume* topvol; - - G4UIdirectory* persistencyDir; - G4UIdirectory* gdmlDir; - G4UIcmdWithAString* ReaderCmd; - G4UIcmdWithAString* WriterCmd; - G4UIcmdWithAString* TopVolCmd; - G4UIcmdWithoutParameter* ClearCmd; - G4UIcmdWithABool* RegionCmd; - G4UIcmdWithABool* EcutsCmd; - G4UIcmdWithABool* SDCmd; - G4UIcmdWithABool* StripCmd; - G4UIcmdWithABool* AppendCmd; + G4GDMLParser* myParser = nullptr; + G4LogicalVolume* topvol = nullptr; - G4bool pFlag; // Append pointers to names flag + G4UIdirectory* persistencyDir = nullptr; + G4UIdirectory* gdmlDir = nullptr; + G4UIcmdWithAString* ReaderCmd = nullptr; + G4UIcmdWithAString* WriterCmd = nullptr; + G4UIcmdWithAString* TopVolCmd = nullptr; + G4UIcmdWithoutParameter* ClearCmd = nullptr; + G4UIcmdWithABool* RegionCmd = nullptr; + G4UIcmdWithABool* EcutsCmd = nullptr; + G4UIcmdWithABool* SDCmd = nullptr; + G4UIcmdWithABool* StripCmd = nullptr; + G4UIcmdWithABool* AppendCmd = nullptr; + + G4bool pFlag = true; // Append pointers to names flag }; #endif diff --git a/source/persistency/gdml/include/G4GDMLParameterisation.hh b/source/persistency/gdml/include/G4GDMLParameterisation.hh index 8184770b47..f898dac808 100644 --- a/source/persistency/gdml/include/G4GDMLParameterisation.hh +++ b/source/persistency/gdml/include/G4GDMLParameterisation.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLParameterisation +// G4GDMLParameterisation // // Class description: // // GDML class for interpretation of parameterisations. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLPARAMETERISATION_INCLUDED_ -#define _G4GDMLPARAMETERISATION_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLPARAMETERISATION_HH +#define G4GDMLPARAMETERISATION_HH 1 #include "G4VPVParameterisation.hh" #include "G4VPhysicalVolume.hh" @@ -64,42 +59,56 @@ class G4GDMLParameterisation : public G4VPVParameterisation { + public: - public: - - struct PARAMETER - { - G4RotationMatrix* pRot; + struct PARAMETER + { + G4RotationMatrix* pRot = nullptr; G4ThreeVector position; G4double dimension[16]; - PARAMETER() : pRot(0) { memset(dimension,0,sizeof(dimension)); } - }; + PARAMETER() + { + memset(dimension, 0, sizeof(dimension)); + } + }; - G4int GetSize() const; - void AddParameter(const PARAMETER&); + G4int GetSize() const; + void AddParameter(const PARAMETER&); - private: + private: - void ComputeTransformation(const G4int,G4VPhysicalVolume*) const; - void ComputeDimensions(G4Box&,const G4int,const G4VPhysicalVolume*) const; - void ComputeDimensions(G4Trd&,const G4int,const G4VPhysicalVolume*) const; - void ComputeDimensions(G4Trap&,const G4int,const G4VPhysicalVolume*) const; - void ComputeDimensions(G4Cons&,const G4int,const G4VPhysicalVolume*) const; - void ComputeDimensions(G4Sphere&,const G4int,const G4VPhysicalVolume*) const; - void ComputeDimensions(G4Orb&,const G4int,const G4VPhysicalVolume*) const; - void ComputeDimensions(G4Ellipsoid&,const G4int,const G4VPhysicalVolume*) const; - void ComputeDimensions(G4Torus&,const G4int,const G4VPhysicalVolume*) const; - void ComputeDimensions(G4Para&,const G4int,const G4VPhysicalVolume*) const; - void ComputeDimensions(G4Hype&,const G4int,const G4VPhysicalVolume*) const; - void ComputeDimensions(G4Tubs&,const G4int,const G4VPhysicalVolume*) const; - void ComputeDimensions(G4Polycone&,const G4int,const G4VPhysicalVolume*) const; - void ComputeDimensions(G4Polyhedra&,const G4int,const G4VPhysicalVolume*) const; + void ComputeTransformation(const G4int, G4VPhysicalVolume*) const; + void ComputeDimensions(G4Box&, const G4int, + const G4VPhysicalVolume*) const; + void ComputeDimensions(G4Trd&, const G4int, + const G4VPhysicalVolume*) const; + void ComputeDimensions(G4Trap&, const G4int, + const G4VPhysicalVolume*) const; + void ComputeDimensions(G4Cons&, const G4int, + const G4VPhysicalVolume*) const; + void ComputeDimensions(G4Sphere&, const G4int, + const G4VPhysicalVolume*) const; + void ComputeDimensions(G4Orb&, const G4int, + const G4VPhysicalVolume*) const; + void ComputeDimensions(G4Ellipsoid&, const G4int, + const G4VPhysicalVolume*) const; + void ComputeDimensions(G4Torus&, const G4int, + const G4VPhysicalVolume*) const; + void ComputeDimensions(G4Para&, const G4int, + const G4VPhysicalVolume*) const; + void ComputeDimensions(G4Hype&, const G4int, + const G4VPhysicalVolume*) const; + void ComputeDimensions(G4Tubs&, const G4int, + const G4VPhysicalVolume*) const; + void ComputeDimensions(G4Polycone&, const G4int, + const G4VPhysicalVolume*) const; + void ComputeDimensions(G4Polyhedra&, const G4int, + const G4VPhysicalVolume*) const; - private: - - std::vector parameterList; + private: + std::vector parameterList; }; #endif diff --git a/source/persistency/gdml/include/G4GDMLParser.hh b/source/persistency/gdml/include/G4GDMLParser.hh index 773a4d244d..622a272128 100644 --- a/source/persistency/gdml/include/G4GDMLParser.hh +++ b/source/persistency/gdml/include/G4GDMLParser.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLParser +// G4GDMLParser // // Class description: // // GDML main parser. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLPARSER_INCLUDED_ -#define _G4GDMLPARSER_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLPARSER_HH +#define G4GDMLPARSER_HH 1 #include "G4GDMLReadStructure.hh" #include "G4GDMLWriteStructure.hh" @@ -49,110 +44,113 @@ #include "G4Navigator.hh" #include "G4Threading.hh" -#define G4GDML_DEFAULT_SCHEMALOCATION G4String("http://service-spi.web.cern.ch/service-spi/app/releases/GDML/schema/gdml.xsd") +#define G4GDML_DEFAULT_SCHEMALOCATION \ + G4String("http://service-spi.web.cern.ch/service-spi/app/releases/GDML/" \ + "schema/gdml.xsd") class G4GDMLParser { - public: // with description + public: - G4GDMLParser(); - G4GDMLParser(G4GDMLReadStructure*); - G4GDMLParser(G4GDMLReadStructure*, G4GDMLWriteStructure*); - ~G4GDMLParser(); - // - // Parser constructors & destructor + G4GDMLParser(); + G4GDMLParser(G4GDMLReadStructure*); + G4GDMLParser(G4GDMLReadStructure*, G4GDMLWriteStructure*); + ~G4GDMLParser(); + // + // Parser constructors & destructor - inline void Read(const G4String& filename, G4bool Validate=true); - // - // Imports geometry with world-volume, specified by the GDML filename - // in input. Validation against schema is activated by default. + inline void Read(const G4String& filename, G4bool Validate = true); + // + // Imports geometry with world-volume, specified by the GDML filename + // in input. Validation against schema is activated by default. - inline void ReadModule(const G4String& filename, G4bool Validate=true); - // - // Imports a single GDML module, specified by the GDML filename - // in input. Validation against schema is activated by default. + inline void ReadModule(const G4String& filename, G4bool Validate = true); + // + // Imports a single GDML module, specified by the GDML filename + // in input. Validation against schema is activated by default. - inline void Write(const G4String& filename, - const G4VPhysicalVolume* pvol = 0, - G4bool storeReferences = true, - const G4String& SchemaLocation = G4GDML_DEFAULT_SCHEMALOCATION); - // - // Exports on a GDML file, specified by 'filename' a geometry tree - // starting from 'pvol' as top volume. Uniqueness of stored entities - // is guaranteed by storing pointer-references by default. - // Alternative path for the schema location can be specified; by default - // the URL to the GDML web site is used. + inline void Write( const G4String& filename, + const G4VPhysicalVolume* pvol = 0, + G4bool storeReferences = true, + const G4String& SchemaLocation = G4GDML_DEFAULT_SCHEMALOCATION); + // + // Exports on a GDML file, specified by 'filename' a geometry tree + // starting from 'pvol' as top volume. Uniqueness of stored entities + // is guaranteed by storing pointer-references by default. + // Alternative path for the schema location can be specified; by default + // the URL to the GDML web site is used. - inline void Write(const G4String& filename, - const G4LogicalVolume* lvol, - G4bool storeReferences = true, - const G4String& SchemaLocation = G4GDML_DEFAULT_SCHEMALOCATION); - // - // Exports on a GDML file, specified by 'filename' a geometry tree - // starting from 'pvol' as top volume. Uniqueness of stored entities - // is guaranteed by storing pointer-references by default. - // Alternative path for the schema location can be specified; by default - // the URL to the GDML web site is used. Same as method above except - // that the logical volume must be provided here. + inline void Write( const G4String& filename, const G4LogicalVolume* lvol, + G4bool storeReferences = true, + const G4String& SchemaLocation = G4GDML_DEFAULT_SCHEMALOCATION); + // + // Exports on a GDML file, specified by 'filename' a geometry tree + // starting from 'pvol' as top volume. Uniqueness of stored entities + // is guaranteed by storing pointer-references by default. + // Alternative path for the schema location can be specified; by default + // the URL to the GDML web site is used. Same as method above except + // that the logical volume must be provided here. - inline G4LogicalVolume* ParseST(const G4String& name, - G4Material* medium, - G4Material* solid); - // - // Imports a tessellated geometry stored as STEP-Tools files - // 'name.geom' and 'name.tree'. It returns a pointer of a generated - // mother volume with 'medium' material associated, including the - // imported tessellated geometry with 'solid' material associated. + inline G4LogicalVolume* ParseST(const G4String& name, G4Material* medium, + G4Material* solid); + // + // Imports a tessellated geometry stored as STEP-Tools files + // 'name.geom' and 'name.tree'. It returns a pointer of a generated + // mother volume with 'medium' material associated, including the + // imported tessellated geometry with 'solid' material associated. - // Methods for Reader - // - inline G4bool IsValid(const G4String& name) const; - inline G4double GetConstant(const G4String& name) const; - inline G4double GetVariable(const G4String& name) const; - inline G4double GetQuantity(const G4String& name) const; - inline G4ThreeVector GetPosition(const G4String& name) const; - inline G4ThreeVector GetRotation(const G4String& name) const; - inline G4ThreeVector GetScale(const G4String& name) const; - inline G4GDMLMatrix GetMatrix(const G4String& name) const; - inline G4LogicalVolume* GetVolume(const G4String& name) const; - inline G4VPhysicalVolume* GetWorldVolume(const G4String& setupName="Default") const; - inline G4GDMLAuxListType GetVolumeAuxiliaryInformation(G4LogicalVolume* lvol) const; - inline const G4GDMLAuxMapType* GetAuxMap() const; - inline const G4GDMLAuxListType* GetAuxList() const; - inline void AddAuxiliary(G4GDMLAuxStructType myaux); - inline void StripNamePointers() const; - inline void SetStripFlag(G4bool); - inline void SetOverlapCheck(G4bool); - inline void SetRegionExport(G4bool); - inline void SetEnergyCutsExport(G4bool); - inline void SetSDExport(G4bool); + // Methods for Reader - inline G4int GetMaxExportLevel() const; // Manage max number of levels - inline void SetMaxExportLevel(G4int); // to export + inline G4bool IsValid(const G4String& name) const; + inline G4double GetConstant(const G4String& name) const; + inline G4double GetVariable(const G4String& name) const; + inline G4double GetQuantity(const G4String& name) const; + inline G4ThreeVector GetPosition(const G4String& name) const; + inline G4ThreeVector GetRotation(const G4String& name) const; + inline G4ThreeVector GetScale(const G4String& name) const; + inline G4GDMLMatrix GetMatrix(const G4String& name) const; + inline G4LogicalVolume* GetVolume(const G4String& name) const; + inline G4VPhysicalVolume* + GetWorldVolume(const G4String& setupName = "Default") const; + inline G4GDMLAuxListType + GetVolumeAuxiliaryInformation(G4LogicalVolume* lvol) const; + inline const G4GDMLAuxMapType* GetAuxMap() const; + inline const G4GDMLAuxListType* GetAuxList() const; + inline void AddAuxiliary(G4GDMLAuxStructType myaux); + inline void StripNamePointers() const; + inline void SetStripFlag(G4bool); + inline void SetOverlapCheck(G4bool); + inline void SetRegionExport(G4bool); + inline void SetEnergyCutsExport(G4bool); + inline void SetSDExport(G4bool); - inline void Clear(); // Clears the evaluator + inline G4int GetMaxExportLevel() const; // Manage max number of levels + inline void SetMaxExportLevel(G4int); // to export - // Methods for Writer - // - inline void AddModule(const G4VPhysicalVolume* const physvol); - inline void AddModule(const G4int depth); - inline void SetAddPointerToName(G4bool set); - inline void AddVolumeAuxiliary(G4GDMLAuxStructType myaux, const G4LogicalVolume* const lvol); + inline void Clear(); // Clears the evaluator + + // Methods for Writer + + inline void AddModule(const G4VPhysicalVolume* const physvol); + inline void AddModule(const G4int depth); + inline void SetAddPointerToName(G4bool set); + inline void AddVolumeAuxiliary(G4GDMLAuxStructType myaux, + const G4LogicalVolume* const lvol); + inline void SetOutputFileOverwrite(G4bool flag); private: - void ImportRegions(); - void ExportRegions(G4bool storeReferences = true); + void ImportRegions(); + void ExportRegions(G4bool storeReferences = true); private: - G4GDMLEvaluator eval; - G4GDMLReadStructure* reader; - G4GDMLWriteStructure* writer; - G4GDMLAuxListType *rlist, *ullist; - G4GDMLMessenger* messenger; - G4bool urcode, uwcode, strip, rexp; - + G4GDMLEvaluator eval; + G4GDMLReadStructure* reader = nullptr; + G4GDMLWriteStructure* writer = nullptr; + G4GDMLAuxListType *rlist = nullptr, *ullist = nullptr; + G4GDMLMessenger* messenger = nullptr; + G4bool urcode = false, uwcode = false, strip = false, rexp = false; }; #include "G4GDMLParser.icc" diff --git a/source/persistency/gdml/include/G4GDMLParser.icc b/source/persistency/gdml/include/G4GDMLParser.icc index 4e1b5e78e7..b0552adf0b 100644 --- a/source/persistency/gdml/include/G4GDMLParser.icc +++ b/source/persistency/gdml/include/G4GDMLParser.icc @@ -23,148 +23,145 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLParser inline methods // -// -// -// class G4GDMLParser inline methods -// -// ------------------------------------------------------------------------- +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- -inline -void G4GDMLParser::Read(const G4String& filename, G4bool validate) -{ - if ( G4Threading::IsMasterThread() ) - { - reader->Read(filename,validate,false,strip); - ImportRegions(); - } -} - -inline -void G4GDMLParser::ReadModule(const G4String& filename, G4bool validate) -{ - if ( G4Threading::IsMasterThread() ) - { - reader->Read(filename,validate,true); - ImportRegions(); - } -} - -inline -void G4GDMLParser::Write(const G4String& filename, - const G4VPhysicalVolume* pvol, - G4bool refs, - const G4String& schemaLocation) +inline void G4GDMLParser::Read(const G4String& filename, G4bool validate) { - if ( G4Threading::IsMasterThread() ) + if(G4Threading::IsMasterThread()) { - const G4int depth = 0; - G4LogicalVolume* lvol = 0; + reader->Read(filename, validate, false, strip); + ImportRegions(); + } +} - if (!pvol) +// -------------------------------------------------------------------- +inline void G4GDMLParser::ReadModule(const G4String& filename, G4bool validate) +{ + if(G4Threading::IsMasterThread()) + { + reader->Read(filename, validate, true); + ImportRegions(); + } +} + +// -------------------------------------------------------------------- +inline void G4GDMLParser::Write(const G4String& filename, + const G4VPhysicalVolume* pvol, G4bool refs, + const G4String& schemaLocation) +{ + if(G4Threading::IsMasterThread()) + { + const G4int depth = 0; + G4LogicalVolume* lvol = nullptr; + + if(pvol == nullptr) { - lvol = G4TransportationManager::GetTransportationManager()-> - GetNavigatorForTracking()->GetWorldVolume()->GetLogicalVolume(); + lvol = G4TransportationManager::GetTransportationManager() + ->GetNavigatorForTracking() + ->GetWorldVolume() + ->GetLogicalVolume(); } else { lvol = pvol->GetLogicalVolume(); } - if (rexp) { ExportRegions(refs); } - writer->Write(filename,lvol,schemaLocation,depth,refs); + if(rexp) + { + ExportRegions(refs); + } + writer->Write(filename, lvol, schemaLocation, depth, refs); } } -inline -void G4GDMLParser::Write(const G4String& filename, - const G4LogicalVolume* lvol, - G4bool refs, - const G4String& schemaLocation) -{ - if ( G4Threading::IsMasterThread() ) +// -------------------------------------------------------------------- +inline void G4GDMLParser::Write(const G4String& filename, + const G4LogicalVolume* lvol, G4bool refs, + const G4String& schemaLocation) +{ + if(G4Threading::IsMasterThread()) { const G4int depth = 0; - if (!lvol) + if(lvol == nullptr) { - lvol = G4TransportationManager::GetTransportationManager()-> - GetNavigatorForTracking()->GetWorldVolume()->GetLogicalVolume(); + lvol = G4TransportationManager::GetTransportationManager() + ->GetNavigatorForTracking() + ->GetWorldVolume() + ->GetLogicalVolume(); } - if (rexp) { ExportRegions(refs); } - writer->Write(filename,lvol,schemaLocation,depth,refs); + if(rexp) + { + ExportRegions(refs); + } + writer->Write(filename, lvol, schemaLocation, depth, refs); } } -inline -G4LogicalVolume* G4GDMLParser::ParseST(const G4String& filename, - G4Material* medium, - G4Material* solid) -{ - if ( G4Threading::IsMasterThread() ) +// -------------------------------------------------------------------- +inline G4LogicalVolume* G4GDMLParser::ParseST(const G4String& filename, + G4Material* medium, + G4Material* solid) +{ + if(G4Threading::IsMasterThread()) { G4STRead STreader; return STreader.Read(filename, medium, solid); } else { - return 0; + return nullptr; } } -// +// -------------------------------------------------------------------- // Methods for Reader -// +// -------------------------------------------------------------------- inline G4bool G4GDMLParser::IsValid(const G4String& name) const { return reader->IsValidID(name); } -inline -G4double G4GDMLParser::GetConstant(const G4String& name) const +inline G4double G4GDMLParser::GetConstant(const G4String& name) const { return reader->GetConstant(name); } -inline -G4double G4GDMLParser::GetVariable(const G4String& name) const +inline G4double G4GDMLParser::GetVariable(const G4String& name) const { return reader->GetVariable(name); } -inline -G4double G4GDMLParser::GetQuantity(const G4String& name) const +inline G4double G4GDMLParser::GetQuantity(const G4String& name) const { return reader->GetQuantity(name); } -inline -G4ThreeVector G4GDMLParser::GetPosition(const G4String& name) const +inline G4ThreeVector G4GDMLParser::GetPosition(const G4String& name) const { return reader->GetPosition(name); } -inline -G4ThreeVector G4GDMLParser::GetRotation(const G4String& name) const +inline G4ThreeVector G4GDMLParser::GetRotation(const G4String& name) const { return reader->GetRotation(name); } -inline -G4ThreeVector G4GDMLParser::GetScale(const G4String& name) const +inline G4ThreeVector G4GDMLParser::GetScale(const G4String& name) const { return reader->GetScale(name); } -inline -G4GDMLMatrix G4GDMLParser::GetMatrix(const G4String& name) const +inline G4GDMLMatrix G4GDMLParser::GetMatrix(const G4String& name) const { return reader->GetMatrix(name); } -inline -G4LogicalVolume* G4GDMLParser::GetVolume(const G4String& name) const +inline G4LogicalVolume* G4GDMLParser::GetVolume(const G4String& name) const { return reader->GetVolume(name); } @@ -175,33 +172,28 @@ G4GDMLParser::GetWorldVolume(const G4String& setupName) const return reader->GetWorldVolume(setupName); } -inline -G4GDMLAuxListType +inline G4GDMLAuxListType G4GDMLParser::GetVolumeAuxiliaryInformation(G4LogicalVolume* logvol) const { return reader->GetVolumeAuxiliaryInformation(logvol); } -inline -const G4GDMLAuxMapType* G4GDMLParser::GetAuxMap() const +inline const G4GDMLAuxMapType* G4GDMLParser::GetAuxMap() const { return reader->GetAuxMap(); } -inline -const G4GDMLAuxListType* G4GDMLParser::GetAuxList() const +inline const G4GDMLAuxListType* G4GDMLParser::GetAuxList() const { return reader->GetAuxList(); } -inline -void G4GDMLParser::AddAuxiliary(G4GDMLAuxStructType myaux) +inline void G4GDMLParser::AddAuxiliary(G4GDMLAuxStructType myaux) { return writer->AddAuxiliary(myaux); } -inline -void G4GDMLParser::StripNamePointers() const +inline void G4GDMLParser::StripNamePointers() const { reader->StripNames(); } @@ -246,31 +238,32 @@ inline void G4GDMLParser::Clear() reader->Clear(); } -// +// -------------------------------------------------------------------- // Methods for Writer -// +// -------------------------------------------------------------------- -inline -void G4GDMLParser::AddModule(const G4VPhysicalVolume* const physvol) +inline void G4GDMLParser::AddModule(const G4VPhysicalVolume* const physvol) { writer->AddModule(physvol); } -inline -void G4GDMLParser::AddModule(const G4int depth) +inline void G4GDMLParser::AddModule(const G4int depth) { writer->AddModule(depth); } -inline -void G4GDMLParser::SetAddPointerToName(G4bool set) +inline void G4GDMLParser::SetAddPointerToName(G4bool set) { writer->SetAddPointerToName(set); } -inline -void G4GDMLParser::AddVolumeAuxiliary(G4GDMLAuxStructType myaux, - const G4LogicalVolume* const lvol) +inline void G4GDMLParser::AddVolumeAuxiliary(G4GDMLAuxStructType myaux, + const G4LogicalVolume* const lvol) { writer->AddVolumeAuxiliary(myaux, lvol); } + +inline void G4GDMLParser::SetOutputFileOverwrite(G4bool flag) +{ + writer->SetOutputFileOverwrite(flag); +} diff --git a/source/persistency/gdml/include/G4GDMLRead.hh b/source/persistency/gdml/include/G4GDMLRead.hh index d0520d54c2..c72858c9e4 100644 --- a/source/persistency/gdml/include/G4GDMLRead.hh +++ b/source/persistency/gdml/include/G4GDMLRead.hh @@ -23,20 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// class G4GDMLRead +// G4GDMLRead // // Class description: // // GDML reader. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLBASE_INCLUDED_ -#define _G4GDMLBASE_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLBASE_HH +#define G4GDMLBASE_HH 1 #include #include @@ -54,113 +50,118 @@ class G4VPhysicalVolume; class G4GDMLErrorHandler : public xercesc::ErrorHandler { - G4bool Suppress; + public: - public: + G4GDMLErrorHandler(const G4bool set) { Suppress = set; } - G4GDMLErrorHandler(const G4bool set) { Suppress = set; } - - void warning(const xercesc::SAXParseException& exception) - { - if (Suppress) { return; } + void warning(const xercesc::SAXParseException& exception) + { + if(Suppress) + { + return; + } char* message = xercesc::XMLString::transcode(exception.getMessage()); G4cout << "G4GDML: VALIDATION WARNING! " << message << " at line: " << exception.getLineNumber() << G4endl; xercesc::XMLString::release(&message); - } + } - void error(const xercesc::SAXParseException& exception) - { - if (Suppress) { return; } + void error(const xercesc::SAXParseException& exception) + { + if(Suppress) + { + return; + } char* message = xercesc::XMLString::transcode(exception.getMessage()); G4cout << "G4GDML: VALIDATION ERROR! " << message << " at line: " << exception.getLineNumber() << G4endl; xercesc::XMLString::release(&message); - } + } - void fatalError(const xercesc::SAXParseException& exception) - { + void fatalError(const xercesc::SAXParseException& exception) + { error(exception); - } - void resetErrors() {} + } + void resetErrors() {} + + private: + + G4bool Suppress = false; }; class G4GDMLRead { + public: - public: // with description + virtual void DefineRead(const xercesc::DOMElement* const) = 0; + virtual void MaterialsRead(const xercesc::DOMElement* const) = 0; + virtual void SetupRead(const xercesc::DOMElement* const) = 0; + virtual void SolidsRead(const xercesc::DOMElement* const) = 0; + virtual void Paramvol_contentRead(const xercesc::DOMElement* const) = 0; + virtual void Volume_contentRead(const xercesc::DOMElement* const) = 0; + virtual void StructureRead(const xercesc::DOMElement* const) = 0; + // + // Pure virtual methods implemented in concrete reader plugin's classes - virtual void DefineRead(const xercesc::DOMElement* const)=0; - virtual void MaterialsRead(const xercesc::DOMElement* const)=0; - virtual void SetupRead(const xercesc::DOMElement* const)=0; - virtual void SolidsRead(const xercesc::DOMElement* const)=0; - virtual void Paramvol_contentRead(const xercesc::DOMElement* const)=0; - virtual void Volume_contentRead(const xercesc::DOMElement* const)=0; - virtual void StructureRead(const xercesc::DOMElement* const)=0; - // - // Pure virtual methods implemented in concrete reader plugin's classes + virtual void ExtensionRead(const xercesc::DOMElement* const); + // + // To be implemented in the client code for handling extensions + // to the GDML schema, identified with the tag "extension". + // The implementation should be placed inside a user-class + // inheriting from G4GDMLReadStructure and being registered + // as argument to G4GDMLParser. - virtual void ExtensionRead(const xercesc::DOMElement* const); - // - // To be implemented in the client code for handling extensions - // to the GDML schema, identified with the tag "extension". - // The implementation should be placed inside a user-class - // inheriting from G4GDMLReadStructure and being registered - // as argument to G4GDMLParser. + virtual void UserinfoRead(const xercesc::DOMElement* const); + // + // Customisable by user to handle "userinfo" extensions to the + // GDML schema, identified by the tag "userinfo". - virtual void UserinfoRead(const xercesc::DOMElement* const); - // - // Customisable by user to handle "userinfo" extensions to the - // GDML schema, identified by the tag "userinfo". + virtual G4LogicalVolume* GetVolume(const G4String&) const = 0; + virtual G4String GetSetup(const G4String&) = 0; + // + // More pure virtual methods implemented in the reader plugin. - virtual G4LogicalVolume* GetVolume(const G4String&) const=0; - virtual G4String GetSetup(const G4String&)=0; - // - // More pure virtual methods implemented in the reader plugin. + void Read(const G4String&, G4bool validation, G4bool isModule, + G4bool strip = true); + // + // Main method for reading GDML files. - void Read(const G4String&, G4bool validation, - G4bool isModule, G4bool strip=true); - // - // Main method for reading GDML files. + void StripNames() const; + void StripName(G4String&) const; + // + // Strip off pointers from entity IDs. - void StripNames() const; - void StripName(G4String&) const; - // - // Strip off pointers from entity IDs. + void OverlapCheck(G4bool); + // + // Activate/de-activate surface check for overlaps (default is off). - void OverlapCheck(G4bool); - // - // Activate/de-activate surface check for overlaps (default is off) + const G4GDMLAuxListType* GetAuxList() const; - const G4GDMLAuxListType* GetAuxList() const; + protected: - - protected: + G4GDMLRead(); + virtual ~G4GDMLRead(); - G4GDMLRead(); - virtual ~G4GDMLRead(); + G4String Transcode(const XMLCh* const); + G4String GenerateName(const G4String& name, G4bool strip = false); + G4String Strip(const G4String&) const; + void GeneratePhysvolName(const G4String&, G4VPhysicalVolume*); + void LoopRead(const xercesc::DOMElement* const, + void (G4GDMLRead::*)(const xercesc::DOMElement* const)); - G4String Transcode(const XMLCh* const); - G4String GenerateName(const G4String& name, G4bool strip=false); - G4String Strip(const G4String&) const; - void GeneratePhysvolName(const G4String&,G4VPhysicalVolume*); - void LoopRead(const xercesc::DOMElement* const, - void(G4GDMLRead::*)(const xercesc::DOMElement* const)); + G4GDMLAuxStructType AuxiliaryRead(const xercesc::DOMElement* const auxElem); - G4GDMLAuxStructType AuxiliaryRead(const xercesc::DOMElement* const auxElem); + protected: - protected: + G4GDMLEvaluator eval; + G4bool validate = true; + G4bool check = false; + G4bool dostrip = true; - G4GDMLEvaluator eval; - G4bool validate; - G4bool check; - G4bool dostrip; - - private: - - G4int inLoop, loopCount; - G4GDMLAuxListType auxGlobalList; + private: + G4int inLoop = 0, loopCount = 0; + G4GDMLAuxListType auxGlobalList; }; #endif diff --git a/source/persistency/gdml/include/G4GDMLReadDefine.hh b/source/persistency/gdml/include/G4GDMLReadDefine.hh index 938e943b83..6d3ab84b4e 100644 --- a/source/persistency/gdml/include/G4GDMLReadDefine.hh +++ b/source/persistency/gdml/include/G4GDMLReadDefine.hh @@ -23,19 +23,17 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// class G4GDMLReadDefine +// G4GDMLReadDefine // // Class description: // // GDML class for positionings and transformations according to // specifications in Geant4. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLREADDEFINE_INCLUDED_ -#define _G4GDMLREADDEFINE_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLREADDEFINE_HH +#define G4GDMLREADDEFINE_HH 1 #include @@ -46,67 +44,65 @@ class G4GDMLMatrix { + public: - public: + G4GDMLMatrix(); + G4GDMLMatrix(std::size_t rows0, std::size_t cols0); + G4GDMLMatrix(const G4GDMLMatrix& rhs); + G4GDMLMatrix& operator=(const G4GDMLMatrix& rhs); + ~G4GDMLMatrix(); - G4GDMLMatrix(); - G4GDMLMatrix(size_t rows0,size_t cols0); - G4GDMLMatrix(const G4GDMLMatrix& rhs); - G4GDMLMatrix& operator=(const G4GDMLMatrix& rhs); - ~G4GDMLMatrix(); + void Set(std::size_t r, std::size_t c, G4double a); + G4double Get(std::size_t r, std::size_t c) const; + std::size_t GetRows() const; + std::size_t GetCols() const; - void Set(size_t r,size_t c,G4double a); - G4double Get(size_t r,size_t c) const; - size_t GetRows() const; - size_t GetCols() const; + private: - private: - - G4double *m; - size_t rows,cols; + G4double* m = nullptr; + std::size_t rows = 0, cols = 0; }; class G4GDMLReadDefine : public G4GDMLRead { + public: - public: + G4bool IsValidID(const G4String&) const; + G4double GetConstant(const G4String&); + G4double GetVariable(const G4String&); + G4double GetQuantity(const G4String&); + G4ThreeVector GetPosition(const G4String&); + G4ThreeVector GetRotation(const G4String&); + G4ThreeVector GetScale(const G4String&); + G4GDMLMatrix GetMatrix(const G4String&); - G4bool IsValidID(const G4String&) const; - G4double GetConstant(const G4String&); - G4double GetVariable(const G4String&); - G4double GetQuantity(const G4String&); - G4ThreeVector GetPosition(const G4String&); - G4ThreeVector GetRotation(const G4String&); - G4ThreeVector GetScale(const G4String&); - G4GDMLMatrix GetMatrix(const G4String&); + virtual void DefineRead(const xercesc::DOMElement* const); - virtual void DefineRead(const xercesc::DOMElement* const); + protected: - protected: + G4GDMLReadDefine(); + virtual ~G4GDMLReadDefine(); - G4GDMLReadDefine(); - virtual ~G4GDMLReadDefine(); + G4RotationMatrix GetRotationMatrix(const G4ThreeVector&); + void VectorRead(const xercesc::DOMElement* const, G4ThreeVector&); + G4String RefRead(const xercesc::DOMElement* const); - G4RotationMatrix GetRotationMatrix(const G4ThreeVector&); - void VectorRead(const xercesc::DOMElement* const,G4ThreeVector&); - G4String RefRead(const xercesc::DOMElement* const); + void ConstantRead(const xercesc::DOMElement* const); + void MatrixRead(const xercesc::DOMElement* const); + void PositionRead(const xercesc::DOMElement* const); + void RotationRead(const xercesc::DOMElement* const); + void ScaleRead(const xercesc::DOMElement* const); + void VariableRead(const xercesc::DOMElement* const); + void QuantityRead(const xercesc::DOMElement* const); + void ExpressionRead(const xercesc::DOMElement* const); - void ConstantRead(const xercesc::DOMElement* const); - void MatrixRead(const xercesc::DOMElement* const); - void PositionRead(const xercesc::DOMElement* const); - void RotationRead(const xercesc::DOMElement* const); - void ScaleRead(const xercesc::DOMElement* const); - void VariableRead(const xercesc::DOMElement* const); - void QuantityRead(const xercesc::DOMElement* const); - void ExpressionRead(const xercesc::DOMElement* const); + protected: - protected: - - std::map quantityMap; - std::map positionMap; - std::map rotationMap; - std::map scaleMap; - std::map matrixMap; + std::map quantityMap; + std::map positionMap; + std::map rotationMap; + std::map scaleMap; + std::map matrixMap; }; #endif diff --git a/source/persistency/gdml/include/G4GDMLReadMaterials.hh b/source/persistency/gdml/include/G4GDMLReadMaterials.hh index d2b9bbb80c..6aa19fb32e 100644 --- a/source/persistency/gdml/include/G4GDMLReadMaterials.hh +++ b/source/persistency/gdml/include/G4GDMLReadMaterials.hh @@ -23,22 +23,17 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLReadMaterials +// G4GDMLReadMaterials // // Class description: // // GDML class for loading isotopes, elements and materials according to // specifications in Geant4. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLREADMATERIALS_INCLUDED_ -#define _G4GDMLREADMATERIALS_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLREADMATERIALS_HH +#define G4GDMLREADMATERIALS_HH 1 #include "G4Types.hh" #include "G4GDMLReadDefine.hh" @@ -47,36 +42,34 @@ class G4Element; class G4Isotope; class G4Material; -class G4GDMLReadMaterials : public G4GDMLReadDefine +class G4GDMLReadMaterials : public G4GDMLReadDefine { + public: - public: + G4Element* GetElement(const G4String&, G4bool verbose = true) const; + G4Isotope* GetIsotope(const G4String&, G4bool verbose = true) const; + G4Material* GetMaterial(const G4String&, G4bool verbose = true) const; - G4Element* GetElement(const G4String&, G4bool verbose=true) const; - G4Isotope* GetIsotope(const G4String&, G4bool verbose=true) const; - G4Material* GetMaterial(const G4String&, G4bool verbose=true) const; + virtual void MaterialsRead(const xercesc::DOMElement* const); - virtual void MaterialsRead(const xercesc::DOMElement* const); + protected: - protected: - - G4GDMLReadMaterials(); - virtual ~G4GDMLReadMaterials(); - - G4double AtomRead(const xercesc::DOMElement* const); - G4int CompositeRead(const xercesc::DOMElement* const,G4String&); - G4double DRead(const xercesc::DOMElement* const); - G4double PRead(const xercesc::DOMElement* const); - G4double TRead(const xercesc::DOMElement* const); - G4double MEERead(const xercesc::DOMElement* const); - void ElementRead(const xercesc::DOMElement* const); - G4double FractionRead(const xercesc::DOMElement* const,G4String&); - void IsotopeRead(const xercesc::DOMElement* const); - void MaterialRead(const xercesc::DOMElement* const); - void MixtureRead(const xercesc::DOMElement* const,G4Element*); - void MixtureRead(const xercesc::DOMElement* const,G4Material*); - void PropertyRead(const xercesc::DOMElement* const,G4Material*); + G4GDMLReadMaterials(); + virtual ~G4GDMLReadMaterials(); + G4double AtomRead(const xercesc::DOMElement* const); + G4int CompositeRead(const xercesc::DOMElement* const, G4String&); + G4double DRead(const xercesc::DOMElement* const); + G4double PRead(const xercesc::DOMElement* const); + G4double TRead(const xercesc::DOMElement* const); + G4double MEERead(const xercesc::DOMElement* const); + void ElementRead(const xercesc::DOMElement* const); + G4double FractionRead(const xercesc::DOMElement* const, G4String&); + void IsotopeRead(const xercesc::DOMElement* const); + void MaterialRead(const xercesc::DOMElement* const); + void MixtureRead(const xercesc::DOMElement* const, G4Element*); + void MixtureRead(const xercesc::DOMElement* const, G4Material*); + void PropertyRead(const xercesc::DOMElement* const, G4Material*); }; #endif diff --git a/source/persistency/gdml/include/G4GDMLReadParamvol.hh b/source/persistency/gdml/include/G4GDMLReadParamvol.hh index 231084289f..5ba68f59c4 100644 --- a/source/persistency/gdml/include/G4GDMLReadParamvol.hh +++ b/source/persistency/gdml/include/G4GDMLReadParamvol.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLReadParamvol +// G4GDMLReadParamvol // // Class description: // // GDML class for importing parameterised geometrical entities. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLREADPARAMVOL_INCLUDED_ -#define _G4GDMLREADPARAMVOL_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLREADPARAMVOL_HH +#define G4GDMLREADPARAMVOL_HH 1 #include "G4GDMLReadSetup.hh" #include "G4GDMLParameterisation.hh" @@ -46,51 +41,50 @@ class G4LogicalVolume; class G4GDMLReadParamvol : public G4GDMLReadSetup { + public: - public: + virtual void ParamvolRead(const xercesc::DOMElement* const, + G4LogicalVolume*); + virtual void Paramvol_contentRead(const xercesc::DOMElement* const); - virtual void ParamvolRead(const xercesc::DOMElement* const,G4LogicalVolume*); + protected: - virtual void Paramvol_contentRead(const xercesc::DOMElement* const); + G4GDMLReadParamvol(); + virtual ~G4GDMLReadParamvol(); - protected: + void Box_dimensionsRead(const xercesc::DOMElement* const, + G4GDMLParameterisation::PARAMETER&); + void Trd_dimensionsRead(const xercesc::DOMElement* const, + G4GDMLParameterisation::PARAMETER&); + void Trap_dimensionsRead(const xercesc::DOMElement* const, + G4GDMLParameterisation::PARAMETER&); + void Tube_dimensionsRead(const xercesc::DOMElement* const, + G4GDMLParameterisation::PARAMETER&); + void Cone_dimensionsRead(const xercesc::DOMElement* const, + G4GDMLParameterisation::PARAMETER&); + void Sphere_dimensionsRead(const xercesc::DOMElement* const, + G4GDMLParameterisation::PARAMETER&); + void Orb_dimensionsRead(const xercesc::DOMElement* const, + G4GDMLParameterisation::PARAMETER&); + void Torus_dimensionsRead(const xercesc::DOMElement* const, + G4GDMLParameterisation::PARAMETER&); + void Ellipsoid_dimensionsRead(const xercesc::DOMElement* const, + G4GDMLParameterisation::PARAMETER&); + void Para_dimensionsRead(const xercesc::DOMElement* const, + G4GDMLParameterisation::PARAMETER&); + void Hype_dimensionsRead(const xercesc::DOMElement* const, + G4GDMLParameterisation::PARAMETER&); + void Polycone_dimensionsRead(const xercesc::DOMElement* const, + G4GDMLParameterisation::PARAMETER&); + void Polyhedra_dimensionsRead(const xercesc::DOMElement* const, + G4GDMLParameterisation::PARAMETER&); + void ParameterisedRead(const xercesc::DOMElement* const); - G4GDMLReadParamvol(); - virtual ~G4GDMLReadParamvol(); + void ParametersRead(const xercesc::DOMElement* const); - void Box_dimensionsRead(const xercesc::DOMElement* const, - G4GDMLParameterisation::PARAMETER&); - void Trd_dimensionsRead(const xercesc::DOMElement* const, - G4GDMLParameterisation::PARAMETER&); - void Trap_dimensionsRead(const xercesc::DOMElement* const, - G4GDMLParameterisation::PARAMETER&); - void Tube_dimensionsRead(const xercesc::DOMElement* const, - G4GDMLParameterisation::PARAMETER&); - void Cone_dimensionsRead(const xercesc::DOMElement* const, - G4GDMLParameterisation::PARAMETER&); - void Sphere_dimensionsRead(const xercesc::DOMElement* const, - G4GDMLParameterisation::PARAMETER&); - void Orb_dimensionsRead(const xercesc::DOMElement* const, - G4GDMLParameterisation::PARAMETER&); - void Torus_dimensionsRead(const xercesc::DOMElement* const, - G4GDMLParameterisation::PARAMETER&); - void Ellipsoid_dimensionsRead(const xercesc::DOMElement* const, - G4GDMLParameterisation::PARAMETER&); - void Para_dimensionsRead(const xercesc::DOMElement* const, - G4GDMLParameterisation::PARAMETER&); - void Hype_dimensionsRead(const xercesc::DOMElement* const, - G4GDMLParameterisation::PARAMETER&); - void Polycone_dimensionsRead(const xercesc::DOMElement* const, - G4GDMLParameterisation::PARAMETER&); - void Polyhedra_dimensionsRead(const xercesc::DOMElement* const, - G4GDMLParameterisation::PARAMETER&); - void ParameterisedRead(const xercesc::DOMElement* const); + protected: - void ParametersRead(const xercesc::DOMElement* const); - - protected: - - G4GDMLParameterisation* parameterisation; + G4GDMLParameterisation* parameterisation = nullptr; }; #endif diff --git a/source/persistency/gdml/include/G4GDMLReadSetup.hh b/source/persistency/gdml/include/G4GDMLReadSetup.hh index 40a3fe841b..e4a7c88fa2 100644 --- a/source/persistency/gdml/include/G4GDMLReadSetup.hh +++ b/source/persistency/gdml/include/G4GDMLReadSetup.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLReadSetup +// G4GDMLReadSetup // // Class description: // // GDML class for geometry setup of solids. -// History: -// - Created. Zoltan Torzsok, November 2007 +// Author: Zoltan Torzsok, November 2007 // ------------------------------------------------------------------------- - -#ifndef _G4GDMLREADSETUP_INCLUDED_ -#define _G4GDMLREADSETUP_INCLUDED_ +#ifndef G4GDMLREADSETUP_HH +#define G4GDMLREADSETUP_HH 1 #include @@ -47,20 +42,20 @@ class G4GDMLReadSetup : public G4GDMLReadSolids { - public: + public: - G4String GetSetup(const G4String&); + G4String GetSetup(const G4String&); - virtual void SetupRead(const xercesc::DOMElement* const element); + virtual void SetupRead(const xercesc::DOMElement* const element); - protected: + protected: - G4GDMLReadSetup(); - virtual ~G4GDMLReadSetup(); + G4GDMLReadSetup(); + virtual ~G4GDMLReadSetup(); - protected: + protected: - std::map setupMap; + std::map setupMap; }; #endif diff --git a/source/persistency/gdml/include/G4GDMLReadSolids.hh b/source/persistency/gdml/include/G4GDMLReadSolids.hh index 500e377938..39c61896ed 100644 --- a/source/persistency/gdml/include/G4GDMLReadSolids.hh +++ b/source/persistency/gdml/include/G4GDMLReadSolids.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLReadSolids +// G4GDMLReadSolids // // Class description: // // GDML class for loading solids according to specifications in Geant4. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLREADSOLIDS_INCLUDED_ -#define _G4GDMLREADSOLIDS_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLREADSOLIDS_HH +#define G4GDMLREADSOLIDS_HH 1 #include "G4Types.hh" #include "G4GDMLReadMaterials.hh" @@ -53,66 +48,82 @@ class G4OpticalSurface; class G4GDMLReadSolids : public G4GDMLReadMaterials { - enum BooleanOp {UNION,SUBTRACTION,INTERSECTION}; + enum BooleanOp + { + UNION, + SUBTRACTION, + INTERSECTION + }; + // typedef struct { G4double rmin,rmax,z; } zplaneType; - typedef struct { G4double r,z; } rzPointType; - - public: + typedef struct + { + G4double r, z; + } rzPointType; - G4VSolid* GetSolid(const G4String&) const; - G4SurfaceProperty* GetSurfaceProperty(const G4String&) const; + public: - virtual void SolidsRead(const xercesc::DOMElement* const); + G4VSolid* GetSolid(const G4String&) const; + G4SurfaceProperty* GetSurfaceProperty(const G4String&) const; - protected: - typedef struct { G4double rmin,rmax,z; } zplaneType; - G4GDMLReadSolids(); - virtual ~G4GDMLReadSolids(); + virtual void SolidsRead(const xercesc::DOMElement* const); - void BooleanRead(const xercesc::DOMElement* const,const BooleanOp); - void BoxRead(const xercesc::DOMElement* const); - void ConeRead(const xercesc::DOMElement* const); - void ElconeRead(const xercesc::DOMElement* const); - void EllipsoidRead(const xercesc::DOMElement* const); - void EltubeRead(const xercesc::DOMElement* const); - void XtruRead(const xercesc::DOMElement* const); - void HypeRead(const xercesc::DOMElement* const); - void MultiUnionNodeRead(const xercesc::DOMElement* const, G4MultiUnion* const); - void MultiUnionRead(const xercesc::DOMElement* const); - void OrbRead(const xercesc::DOMElement* const); - void ParaRead(const xercesc::DOMElement* const); - void ParaboloidRead(const xercesc::DOMElement* const); - void PolyconeRead(const xercesc::DOMElement* const); - void GenericPolyconeRead(const xercesc::DOMElement* const); - void PolyhedraRead(const xercesc::DOMElement* const); - void GenericPolyhedraRead(const xercesc::DOMElement* const); - G4QuadrangularFacet* QuadrangularRead(const xercesc::DOMElement* const); - void ReflectedSolidRead(const xercesc::DOMElement* const); - void ScaledSolidRead(const xercesc::DOMElement* const); - G4ExtrudedSolid::ZSection SectionRead(const xercesc::DOMElement* const,G4double); - void SphereRead(const xercesc::DOMElement* const); - void TessellatedRead(const xercesc::DOMElement* const); - void TetRead(const xercesc::DOMElement* const); - void TorusRead(const xercesc::DOMElement* const); - void GenTrapRead(const xercesc::DOMElement* const); - void TrapRead(const xercesc::DOMElement* const); - void TrdRead(const xercesc::DOMElement* const); - void TubeRead(const xercesc::DOMElement* const); - void CutTubeRead(const xercesc::DOMElement* const); - void TwistedboxRead(const xercesc::DOMElement* const); - void TwistedtrapRead(const xercesc::DOMElement* const); - void TwistedtrdRead(const xercesc::DOMElement* const); - void TwistedtubsRead(const xercesc::DOMElement* const); - G4TriangularFacet* TriangularRead(const xercesc::DOMElement* const); - G4TwoVector TwoDimVertexRead(const xercesc::DOMElement* const,G4double); - zplaneType ZplaneRead(const xercesc::DOMElement* const); - rzPointType RZPointRead(const xercesc::DOMElement* const); - void OpticalSurfaceRead(const xercesc::DOMElement* const); - void PropertyRead(const xercesc::DOMElement* const,G4OpticalSurface*); + protected: -private: - std::map mapOfMatPropVects; - + typedef struct + { + G4double rmin, rmax, z; + } zplaneType; + + G4GDMLReadSolids(); + virtual ~G4GDMLReadSolids(); + + void BooleanRead(const xercesc::DOMElement* const, const BooleanOp); + void BoxRead(const xercesc::DOMElement* const); + void ConeRead(const xercesc::DOMElement* const); + void ElconeRead(const xercesc::DOMElement* const); + void EllipsoidRead(const xercesc::DOMElement* const); + void EltubeRead(const xercesc::DOMElement* const); + void XtruRead(const xercesc::DOMElement* const); + void HypeRead(const xercesc::DOMElement* const); + void MultiUnionNodeRead(const xercesc::DOMElement* const, + G4MultiUnion* const); + void MultiUnionRead(const xercesc::DOMElement* const); + void OrbRead(const xercesc::DOMElement* const); + void ParaRead(const xercesc::DOMElement* const); + void ParaboloidRead(const xercesc::DOMElement* const); + void PolyconeRead(const xercesc::DOMElement* const); + void GenericPolyconeRead(const xercesc::DOMElement* const); + void PolyhedraRead(const xercesc::DOMElement* const); + void GenericPolyhedraRead(const xercesc::DOMElement* const); + G4QuadrangularFacet* QuadrangularRead(const xercesc::DOMElement* const); + void ReflectedSolidRead(const xercesc::DOMElement* const); + void ScaledSolidRead(const xercesc::DOMElement* const); + G4ExtrudedSolid::ZSection SectionRead(const xercesc::DOMElement* const, + G4double); + void SphereRead(const xercesc::DOMElement* const); + void TessellatedRead(const xercesc::DOMElement* const); + void TetRead(const xercesc::DOMElement* const); + void TorusRead(const xercesc::DOMElement* const); + void GenTrapRead(const xercesc::DOMElement* const); + void TrapRead(const xercesc::DOMElement* const); + void TrdRead(const xercesc::DOMElement* const); + void TubeRead(const xercesc::DOMElement* const); + void CutTubeRead(const xercesc::DOMElement* const); + void TwistedboxRead(const xercesc::DOMElement* const); + void TwistedtrapRead(const xercesc::DOMElement* const); + void TwistedtrdRead(const xercesc::DOMElement* const); + void TwistedtubsRead(const xercesc::DOMElement* const); + G4TriangularFacet* TriangularRead(const xercesc::DOMElement* const); + G4TwoVector TwoDimVertexRead(const xercesc::DOMElement* const, G4double); + zplaneType ZplaneRead(const xercesc::DOMElement* const); + rzPointType RZPointRead(const xercesc::DOMElement* const); + void OpticalSurfaceRead(const xercesc::DOMElement* const); + void PropertyRead(const xercesc::DOMElement* const, G4OpticalSurface*); + + private: + + std::map mapOfMatPropVects; }; #endif diff --git a/source/persistency/gdml/include/G4GDMLReadStructure.hh b/source/persistency/gdml/include/G4GDMLReadStructure.hh index 79e582ea7d..6f8774d7c2 100644 --- a/source/persistency/gdml/include/G4GDMLReadStructure.hh +++ b/source/persistency/gdml/include/G4GDMLReadStructure.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLReadStructure +// G4GDMLReadStructure // // Class description: // // GDML class for import of structures. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLREADSTRUCTURE_INCLUDED_ -#define _G4GDMLREADSTRUCTURE_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLREADSTRUCTURE_HH +#define G4GDMLREADSTRUCTURE_HH 1 #include "G4Types.hh" #include "geomdefs.hh" @@ -48,51 +43,50 @@ class G4AssemblyVolume; class G4LogicalVolume; class G4VPhysicalVolume; -typedef std::map G4GDMLAuxMapType; -typedef std::map G4GDMLAssemblyMapType; +using G4GDMLAuxMapType = std::map; +using G4GDMLAssemblyMapType = std::map; class G4GDMLReadStructure : public G4GDMLReadParamvol { + public: - public: + G4GDMLReadStructure(); + virtual ~G4GDMLReadStructure(); - G4GDMLReadStructure(); - virtual ~G4GDMLReadStructure(); + G4VPhysicalVolume* GetPhysvol(const G4String&) const; + G4LogicalVolume* GetVolume(const G4String&) const; + G4AssemblyVolume* GetAssembly(const G4String&) const; + G4GDMLAuxListType GetVolumeAuxiliaryInformation(G4LogicalVolume*) const; + G4VPhysicalVolume* GetWorldVolume(const G4String&); + const G4GDMLAuxMapType* GetAuxMap() const { return &auxMap; } + void Clear(); // Clears internal map and evaluator - G4VPhysicalVolume* GetPhysvol(const G4String&) const; - G4LogicalVolume* GetVolume(const G4String&) const; - G4AssemblyVolume* GetAssembly(const G4String&) const; - G4GDMLAuxListType GetVolumeAuxiliaryInformation(G4LogicalVolume*) const; - G4VPhysicalVolume* GetWorldVolume(const G4String&); - const G4GDMLAuxMapType* GetAuxMap() const {return &auxMap;} - void Clear(); // Clears internal map and evaluator + virtual void VolumeRead(const xercesc::DOMElement* const); + virtual void Volume_contentRead(const xercesc::DOMElement* const); + virtual void StructureRead(const xercesc::DOMElement* const); - virtual void VolumeRead(const xercesc::DOMElement* const); - virtual void Volume_contentRead(const xercesc::DOMElement* const); - virtual void StructureRead(const xercesc::DOMElement* const); + protected: - protected: + void AssemblyRead(const xercesc::DOMElement* const); + void DivisionvolRead(const xercesc::DOMElement* const); + G4LogicalVolume* FileRead(const xercesc::DOMElement* const); + void PhysvolRead(const xercesc::DOMElement* const, + G4AssemblyVolume* assembly = 0); + void ReplicavolRead(const xercesc::DOMElement* const, G4int number); + void ReplicaRead(const xercesc::DOMElement* const replicaElement, + G4LogicalVolume* logvol, G4int number); + EAxis AxisRead(const xercesc::DOMElement* const axisElement); + G4double QuantityRead(const xercesc::DOMElement* const readElement); + void BorderSurfaceRead(const xercesc::DOMElement* const); + void SkinSurfaceRead(const xercesc::DOMElement* const); - void AssemblyRead(const xercesc::DOMElement* const); - void DivisionvolRead(const xercesc::DOMElement* const); - G4LogicalVolume* FileRead(const xercesc::DOMElement* const); - void PhysvolRead(const xercesc::DOMElement* const, - G4AssemblyVolume* assembly=0); - void ReplicavolRead(const xercesc::DOMElement* const, G4int number); - void ReplicaRead(const xercesc::DOMElement* const replicaElement, - G4LogicalVolume* logvol,G4int number); - EAxis AxisRead(const xercesc::DOMElement* const axisElement); - G4double QuantityRead(const xercesc::DOMElement* const readElement); - void BorderSurfaceRead(const xercesc::DOMElement* const); - void SkinSurfaceRead(const xercesc::DOMElement* const); + protected: - protected: - - G4GDMLAuxMapType auxMap; - G4GDMLAssemblyMapType assemblyMap; - G4LogicalVolume *pMotherLogical; - std::map setuptoPV; - G4bool strip; + G4GDMLAuxMapType auxMap; + G4GDMLAssemblyMapType assemblyMap; + G4LogicalVolume* pMotherLogical = nullptr; + std::map setuptoPV; + G4bool strip = false; }; #endif diff --git a/source/persistency/gdml/include/G4GDMLWrite.hh b/source/persistency/gdml/include/G4GDMLWrite.hh index 8cb53ba740..e9d2bf6431 100644 --- a/source/persistency/gdml/include/G4GDMLWrite.hh +++ b/source/persistency/gdml/include/G4GDMLWrite.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLWrite +// G4GDMLWrite // // Class description: // // GDML writer. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLWRITE_INCLUDED_ -#define _G4GDMLWRITE_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLWRITE_HH +#define G4GDMLWRITE_HH 1 #include @@ -55,56 +50,60 @@ class G4VPhysicalVolume; class G4GDMLWrite { - typedef std::map VolumeMapType; - typedef std::map PhysVolumeMapType; - typedef std::map DepthMapType; + using VolumeMapType = std::map; + using PhysVolumeMapType = std::map; + using DepthMapType = std::map; - public: // with description + public: G4Transform3D Write(const G4String& filename, const G4LogicalVolume* const topLog, - const G4String& schemaPath, - const G4int depth, G4bool storeReferences=true); - // - // Main method for writing GDML files. + const G4String& schemaPath, const G4int depth, + G4bool storeReferences = true); + // + // Main method for writing GDML files. void AddModule(const G4VPhysicalVolume* const topVol); void AddModule(const G4int depth); - // - // Split geometry structure in modules, by volume subtree or level + // + // Split geometry structure in modules, by volume subtree or level. void AddAuxiliary(G4GDMLAuxStructType myaux); - // - // Import auxiliary structure + // + // Import auxiliary structure. + + void SetOutputFileOverwrite(G4bool flag); + // + // Set the flag to allow overwriting of the output GDML file static void SetAddPointerToName(G4bool); - // - // Specify if to add or not memory addresses to IDs. + // + // Specify if to add or not memory addresses to IDs. - virtual void DefineWrite(xercesc::DOMElement*)=0; - virtual void MaterialsWrite(xercesc::DOMElement*)=0; - virtual void SolidsWrite(xercesc::DOMElement*)=0; - virtual void StructureWrite(xercesc::DOMElement*)=0; + virtual void DefineWrite(xercesc::DOMElement*) = 0; + virtual void MaterialsWrite(xercesc::DOMElement*) = 0; + virtual void SolidsWrite(xercesc::DOMElement*) = 0; + virtual void StructureWrite(xercesc::DOMElement*) = 0; virtual G4Transform3D TraverseVolumeTree(const G4LogicalVolume* const, - const G4int)=0; - virtual void SurfacesWrite()=0; + const G4int) = 0; + virtual void SurfacesWrite() = 0; virtual void SetupWrite(xercesc::DOMElement*, - const G4LogicalVolume* const)=0; - // - // Pure virtual methods implemented in concrete writer plugin's classes + const G4LogicalVolume* const) = 0; + // + // Pure virtual methods implemented in concrete writer plugin's classes. virtual void ExtensionWrite(xercesc::DOMElement*); virtual void UserinfoWrite(xercesc::DOMElement*); virtual void AddExtension(xercesc::DOMElement*, const G4LogicalVolume* const); - // - // To be implemented in the client code for handling extensions - // to the GDML schema, identified with the tag "extension". - // The implementation should be placed inside a user-class - // inheriting from G4GDMLWriteStructure and being registered - // as argument to G4GDMLParser. + // + // To be implemented in the client code for handling extensions + // to the GDML schema, identified with the tag "extension". + // The implementation should be placed inside a user-class + // inheriting from G4GDMLWriteStructure and being registered + // as argument to G4GDMLParser. - G4String GenerateName(const G4String&,const void* const); + G4String GenerateName(const G4String&, const void* const); protected: @@ -119,7 +118,8 @@ class G4GDMLWrite G4String Modularize(const G4VPhysicalVolume* const topvol, const G4int depth); - void AddAuxInfo(G4GDMLAuxListType* auxInfoList, xercesc::DOMElement* element); + void AddAuxInfo(G4GDMLAuxListType* auxInfoList, + xercesc::DOMElement* element); G4bool FileExists(const G4String&) const; PhysVolumeMapType& PvolumeMap(); @@ -129,11 +129,12 @@ class G4GDMLWrite G4String SchemaLocation; static G4bool addPointerToName; - xercesc::DOMDocument* doc; - xercesc::DOMElement* extElement; - xercesc::DOMElement* userinfoElement; + xercesc::DOMDocument* doc = nullptr; + xercesc::DOMElement* extElement = nullptr; + xercesc::DOMElement* userinfoElement = nullptr; XMLCh tempStr[10000]; G4GDMLAuxListType auxList; + G4bool overwriteOutputFile = false; }; #endif diff --git a/source/persistency/gdml/include/G4GDMLWriteDefine.hh b/source/persistency/gdml/include/G4GDMLWriteDefine.hh index b44d677212..8171c16728 100644 --- a/source/persistency/gdml/include/G4GDMLWriteDefine.hh +++ b/source/persistency/gdml/include/G4GDMLWriteDefine.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLWriteDefine +// G4GDMLWriteDefine // // Class description: // // GDML writer class for positionings and transformations. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLWRITEDEFINE_INCLUDED_ -#define _G4GDMLWRITEDEFINE_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLWRITEDEFINE_HH +#define G4GDMLWRITEDEFINE_HH 1 #include "G4Types.hh" #include "G4ThreeVector.hh" @@ -47,27 +42,38 @@ class G4GDMLWriteDefine : public G4GDMLWrite { - public: G4ThreeVector GetAngles(const G4RotationMatrix&); - void ScaleWrite(xercesc::DOMElement* element, - const G4String& name, const G4ThreeVector& scl) - { Scale_vectorWrite(element,"scale",name,scl); } - void RotationWrite(xercesc::DOMElement* element, - const G4String& name, const G4ThreeVector& rot) - { Rotation_vectorWrite(element,"rotation",name,rot); } - void PositionWrite(xercesc::DOMElement* element, - const G4String& name, const G4ThreeVector& pos) - { Position_vectorWrite(element,"position",name,pos); } - void FirstrotationWrite(xercesc::DOMElement* element, - const G4String& name, const G4ThreeVector& rot) - { Rotation_vectorWrite(element,"firstrotation",name,rot); } - void FirstpositionWrite(xercesc::DOMElement* element, - const G4String& name, const G4ThreeVector& pos) - { Position_vectorWrite(element,"firstposition",name,pos); } + void ScaleWrite(xercesc::DOMElement* element, const G4String& name, + const G4ThreeVector& scl) + { + Scale_vectorWrite(element, "scale", name, scl); + } + void RotationWrite(xercesc::DOMElement* element, const G4String& name, + const G4ThreeVector& rot) + { + Rotation_vectorWrite(element, "rotation", name, rot); + } + void PositionWrite(xercesc::DOMElement* element, const G4String& name, + const G4ThreeVector& pos) + { + Position_vectorWrite(element, "position", name, pos); + } + void FirstrotationWrite(xercesc::DOMElement* element, const G4String& name, + const G4ThreeVector& rot) + { + Rotation_vectorWrite(element, "firstrotation", name, rot); + } + void FirstpositionWrite(xercesc::DOMElement* element, const G4String& name, + const G4ThreeVector& pos) + { + Position_vectorWrite(element, "firstposition", name, pos); + } void AddPosition(const G4String& name, const G4ThreeVector& pos) - { Position_vectorWrite(defineElement,"position",name,pos); } + { + Position_vectorWrite(defineElement, "position", name, pos); + } virtual void DefineWrite(xercesc::DOMElement*); @@ -77,7 +83,7 @@ class G4GDMLWriteDefine : public G4GDMLWrite virtual ~G4GDMLWriteDefine(); void Scale_vectorWrite(xercesc::DOMElement*, const G4String&, - const G4String&, const G4ThreeVector&); + const G4String&, const G4ThreeVector&); void Rotation_vectorWrite(xercesc::DOMElement*, const G4String&, const G4String&, const G4ThreeVector&); void Position_vectorWrite(xercesc::DOMElement*, const G4String&, @@ -88,9 +94,8 @@ class G4GDMLWriteDefine : public G4GDMLWrite static const G4double kRelativePrecision; static const G4double kAngularPrecision; static const G4double kLinearPrecision; - - xercesc::DOMElement* defineElement; + xercesc::DOMElement* defineElement = nullptr; }; #endif diff --git a/source/persistency/gdml/include/G4GDMLWriteMaterials.hh b/source/persistency/gdml/include/G4GDMLWriteMaterials.hh index b54b5480e4..2ed4a39515 100644 --- a/source/persistency/gdml/include/G4GDMLWriteMaterials.hh +++ b/source/persistency/gdml/include/G4GDMLWriteMaterials.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLWriteMaterials +// G4GDMLWriteMaterials // // Class description: // // GDML class for writing materials definitions. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLWRITEMATERIALS_INCLUDED_ -#define _G4GDMLWRITEMATERIALS_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLWRITEMATERIALS_HH +#define G4GDMLWRITEMATERIALS_HH 1 #include "G4Types.hh" #include @@ -52,40 +47,40 @@ class G4MaterialPropertiesTable; class G4GDMLWriteMaterials : public G4GDMLWriteDefine { + public: - public: + void AddIsotope(const G4Isotope* const); + void AddElement(const G4Element* const); + void AddMaterial(const G4Material* const); - void AddIsotope(const G4Isotope* const); - void AddElement(const G4Element* const); - void AddMaterial(const G4Material* const); + virtual void MaterialsWrite(xercesc::DOMElement*); - virtual void MaterialsWrite(xercesc::DOMElement*); + protected: - protected: + G4GDMLWriteMaterials(); + virtual ~G4GDMLWriteMaterials(); - G4GDMLWriteMaterials(); - virtual ~G4GDMLWriteMaterials(); + void AtomWrite(xercesc::DOMElement*, const G4double&); + void DWrite(xercesc::DOMElement*, const G4double&); + void PWrite(xercesc::DOMElement*, const G4double&); + void TWrite(xercesc::DOMElement*, const G4double&); + void MEEWrite(xercesc::DOMElement*, const G4double&); + void IsotopeWrite(const G4Isotope* const); + void ElementWrite(const G4Element* const); + void MaterialWrite(const G4Material* const); + void PropertyWrite(xercesc::DOMElement*, const G4Material* const); + void PropertyVectorWrite(const G4String&, + const G4PhysicsOrderedFreeVector* const); + void PropertyConstWrite(const G4String&, const G4double, + const G4MaterialPropertiesTable*); - void AtomWrite(xercesc::DOMElement*,const G4double&); - void DWrite(xercesc::DOMElement*,const G4double&); - void PWrite(xercesc::DOMElement*,const G4double&); - void TWrite(xercesc::DOMElement*,const G4double&); - void MEEWrite(xercesc::DOMElement*,const G4double&); - void IsotopeWrite(const G4Isotope* const); - void ElementWrite(const G4Element* const); - void MaterialWrite(const G4Material* const); - void PropertyWrite(xercesc::DOMElement*, const G4Material* const); - void PropertyVectorWrite(const G4String&, - const G4PhysicsOrderedFreeVector* const); - void PropertyConstWrite(const G4String&, - const G4double, const G4MaterialPropertiesTable*); - protected: + protected: - std::vector isotopeList; - std::vector elementList; - std::vector materialList; - std::vector propertyList; - xercesc::DOMElement* materialsElement; + std::vector isotopeList; + std::vector elementList; + std::vector materialList; + std::vector propertyList; + xercesc::DOMElement* materialsElement = nullptr; }; #endif diff --git a/source/persistency/gdml/include/G4GDMLWriteParamvol.hh b/source/persistency/gdml/include/G4GDMLWriteParamvol.hh index dc14fa27b6..536455be10 100644 --- a/source/persistency/gdml/include/G4GDMLWriteParamvol.hh +++ b/source/persistency/gdml/include/G4GDMLWriteParamvol.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLWriteParamvol +// G4GDMLWriteParamvol // // Class description: // // GDML class for writing parameterised entities dimensions. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLWRITEPARAMVOL_INCLUDED_ -#define _G4GDMLWRITEPARAMVOL_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLWRITEPARAMVOL_HH +#define G4GDMLWRITEPARAMVOL_HH 1 #include "G4GDMLWriteSetup.hh" @@ -58,35 +53,36 @@ class G4VPhysicalVolume; class G4GDMLWriteParamvol : public G4GDMLWriteSetup { + public: - public: + virtual void ParamvolWrite(xercesc::DOMElement*, + const G4VPhysicalVolume* const); + virtual void ParamvolAlgorithmWrite(xercesc::DOMElement* paramvolElement, + const G4VPhysicalVolume* const paramvol); - virtual void ParamvolWrite(xercesc::DOMElement*, - const G4VPhysicalVolume* const); - virtual void ParamvolAlgorithmWrite(xercesc::DOMElement* paramvolElement, - const G4VPhysicalVolume* const paramvol); + protected: - protected: - - G4GDMLWriteParamvol(); - virtual ~G4GDMLWriteParamvol(); - - void Box_dimensionsWrite(xercesc::DOMElement*, const G4Box* const); - void Trd_dimensionsWrite(xercesc::DOMElement*, const G4Trd* const); - void Trap_dimensionsWrite(xercesc::DOMElement*, const G4Trap* const); - void Tube_dimensionsWrite(xercesc::DOMElement*, const G4Tubs* const); - void Cone_dimensionsWrite(xercesc::DOMElement*, const G4Cons* const); - void Sphere_dimensionsWrite(xercesc::DOMElement*, const G4Sphere* const); - void Orb_dimensionsWrite(xercesc::DOMElement*, const G4Orb* const); - void Torus_dimensionsWrite(xercesc::DOMElement*, const G4Torus* const); - void Ellipsoid_dimensionsWrite(xercesc::DOMElement*, const G4Ellipsoid* const); - void Para_dimensionsWrite(xercesc::DOMElement*, const G4Para* const); - void Hype_dimensionsWrite(xercesc::DOMElement*, const G4Hype* const); - void Polycone_dimensionsWrite(xercesc::DOMElement*, const G4Polycone* const); - void Polyhedra_dimensionsWrite(xercesc::DOMElement*, const G4Polyhedra* const); - void ParametersWrite(xercesc::DOMElement*, - const G4VPhysicalVolume* const, const G4int&); + G4GDMLWriteParamvol(); + virtual ~G4GDMLWriteParamvol(); + void Box_dimensionsWrite(xercesc::DOMElement*, const G4Box* const); + void Trd_dimensionsWrite(xercesc::DOMElement*, const G4Trd* const); + void Trap_dimensionsWrite(xercesc::DOMElement*, const G4Trap* const); + void Tube_dimensionsWrite(xercesc::DOMElement*, const G4Tubs* const); + void Cone_dimensionsWrite(xercesc::DOMElement*, const G4Cons* const); + void Sphere_dimensionsWrite(xercesc::DOMElement*, const G4Sphere* const); + void Orb_dimensionsWrite(xercesc::DOMElement*, const G4Orb* const); + void Torus_dimensionsWrite(xercesc::DOMElement*, const G4Torus* const); + void Ellipsoid_dimensionsWrite(xercesc::DOMElement*, + const G4Ellipsoid* const); + void Para_dimensionsWrite(xercesc::DOMElement*, const G4Para* const); + void Hype_dimensionsWrite(xercesc::DOMElement*, const G4Hype* const); + void Polycone_dimensionsWrite(xercesc::DOMElement*, + const G4Polycone* const); + void Polyhedra_dimensionsWrite(xercesc::DOMElement*, + const G4Polyhedra* const); + void ParametersWrite(xercesc::DOMElement*, const G4VPhysicalVolume* const, + const G4int&); }; #endif diff --git a/source/persistency/gdml/include/G4GDMLWriteSetup.hh b/source/persistency/gdml/include/G4GDMLWriteSetup.hh index eaf0c3e20a..c721b661ae 100644 --- a/source/persistency/gdml/include/G4GDMLWriteSetup.hh +++ b/source/persistency/gdml/include/G4GDMLWriteSetup.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLWriteSetup +// G4GDMLWriteSetup // // Class description: // // GDML writer class for geometry setup of volumes. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLWRITESETUP_INCLUDED_ -#define _G4GDMLWRITESETUP_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLWRITESETUP_HH +#define G4GDMLWRITESETUP_HH 1 #include "G4GDMLWriteSolids.hh" @@ -47,11 +42,10 @@ class G4GDMLWriteSetup : public G4GDMLWriteSolids virtual void SetupWrite(xercesc::DOMElement*, const G4LogicalVolume* const); - protected: - - G4GDMLWriteSetup(); - virtual ~G4GDMLWriteSetup(); + protected: + G4GDMLWriteSetup(); + virtual ~G4GDMLWriteSetup(); }; #endif diff --git a/source/persistency/gdml/include/G4GDMLWriteSolids.hh b/source/persistency/gdml/include/G4GDMLWriteSolids.hh index 1f821345d5..f0fc931485 100644 --- a/source/persistency/gdml/include/G4GDMLWriteSolids.hh +++ b/source/persistency/gdml/include/G4GDMLWriteSolids.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLWriteSolids +// G4GDMLWriteSolids // // Class description: // // GDML class for writing solids. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLWRITESOLIDS_INCLUDED_ -#define _G4GDMLWRITESOLIDS_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLWRITESOLIDS_HH +#define G4GDMLWRITESOLIDS_HH 1 #include "G4Types.hh" @@ -81,75 +76,77 @@ class G4GDMLWriteSolids : public G4GDMLWriteMaterials { public: - G4bool operator()(const G4ThreeVector& t1, const G4ThreeVector& t2 ) const - { - if(t1.x() < t2.x()) - return true; + G4bool operator()(const G4ThreeVector& t1, const G4ThreeVector& t2) const + { + if(t1.x() < t2.x()) + return true; - if(t1.y() < t2.y()) - return true; + if(t1.y() < t2.y()) + return true; - if(t1.z() < t2.z()) - return true; + if(t1.z() < t2.z()) + return true; - return false; - } + return false; + } }; public: - virtual void AddSolid(const G4VSolid* const); - virtual void SolidsWrite(xercesc::DOMElement*); + virtual void AddSolid(const G4VSolid* const); + virtual void SolidsWrite(xercesc::DOMElement*); protected: - G4GDMLWriteSolids(); - virtual ~G4GDMLWriteSolids(); - - void MultiUnionWrite(xercesc::DOMElement* solElement, const G4MultiUnion* const); - void BooleanWrite(xercesc::DOMElement*, const G4BooleanSolid* const); - void ScaledWrite(xercesc::DOMElement*, const G4ScaledSolid* const); - void BoxWrite(xercesc::DOMElement*, const G4Box* const); - void ConeWrite(xercesc::DOMElement*, const G4Cons* const); - void ElconeWrite(xercesc::DOMElement*, const G4EllipticalCone* const); - void EllipsoidWrite(xercesc::DOMElement*, const G4Ellipsoid* const); - void EltubeWrite(xercesc::DOMElement*, const G4EllipticalTube* const); - void XtruWrite(xercesc::DOMElement*, const G4ExtrudedSolid* const); - void HypeWrite(xercesc::DOMElement*, const G4Hype* const); - void OrbWrite(xercesc::DOMElement*, const G4Orb* const); - void ParaWrite(xercesc::DOMElement*, const G4Para* const); - void ParaboloidWrite(xercesc::DOMElement*, const G4Paraboloid* const); - void PolyconeWrite(xercesc::DOMElement*, const G4Polycone* const); - void GenericPolyconeWrite(xercesc::DOMElement*, const G4GenericPolycone* const); - void PolyhedraWrite(xercesc::DOMElement*, const G4Polyhedra* const); - void SphereWrite(xercesc::DOMElement*, const G4Sphere* const); - void TessellatedWrite(xercesc::DOMElement*, const G4TessellatedSolid* const); - void TetWrite(xercesc::DOMElement*, const G4Tet* const); - void TorusWrite(xercesc::DOMElement*, const G4Torus* const); - void GenTrapWrite(xercesc::DOMElement*, const G4GenericTrap* const); - void TrapWrite(xercesc::DOMElement*, const G4Trap* const); - void TrdWrite(xercesc::DOMElement*, const G4Trd* const); - void TubeWrite(xercesc::DOMElement*, const G4Tubs* const); - void CutTubeWrite(xercesc::DOMElement*, const G4CutTubs* const); - void TwistedboxWrite(xercesc::DOMElement*, const G4TwistedBox* const); - void TwistedtrapWrite(xercesc::DOMElement*, const G4TwistedTrap* const); - void TwistedtrdWrite(xercesc::DOMElement*, const G4TwistedTrd* const); - void TwistedtubsWrite(xercesc::DOMElement*, const G4TwistedTubs* const); - void ZplaneWrite(xercesc::DOMElement*, const G4double&, - const G4double&, const G4double&); - void RZPointWrite(xercesc::DOMElement*, const G4double&,const G4double&); - void OpticalSurfaceWrite(xercesc::DOMElement*, - const G4OpticalSurface* const); - void PropertyWrite(xercesc::DOMElement*, const G4OpticalSurface* const); + G4GDMLWriteSolids(); + virtual ~G4GDMLWriteSolids(); + void MultiUnionWrite(xercesc::DOMElement* solElement, + const G4MultiUnion* const); + void BooleanWrite(xercesc::DOMElement*, const G4BooleanSolid* const); + void ScaledWrite(xercesc::DOMElement*, const G4ScaledSolid* const); + void BoxWrite(xercesc::DOMElement*, const G4Box* const); + void ConeWrite(xercesc::DOMElement*, const G4Cons* const); + void ElconeWrite(xercesc::DOMElement*, const G4EllipticalCone* const); + void EllipsoidWrite(xercesc::DOMElement*, const G4Ellipsoid* const); + void EltubeWrite(xercesc::DOMElement*, const G4EllipticalTube* const); + void XtruWrite(xercesc::DOMElement*, const G4ExtrudedSolid* const); + void HypeWrite(xercesc::DOMElement*, const G4Hype* const); + void OrbWrite(xercesc::DOMElement*, const G4Orb* const); + void ParaWrite(xercesc::DOMElement*, const G4Para* const); + void ParaboloidWrite(xercesc::DOMElement*, const G4Paraboloid* const); + void PolyconeWrite(xercesc::DOMElement*, const G4Polycone* const); + void GenericPolyconeWrite(xercesc::DOMElement*, + const G4GenericPolycone* const); + void PolyhedraWrite(xercesc::DOMElement*, const G4Polyhedra* const); + void SphereWrite(xercesc::DOMElement*, const G4Sphere* const); + void TessellatedWrite(xercesc::DOMElement*, + const G4TessellatedSolid* const); + void TetWrite(xercesc::DOMElement*, const G4Tet* const); + void TorusWrite(xercesc::DOMElement*, const G4Torus* const); + void GenTrapWrite(xercesc::DOMElement*, const G4GenericTrap* const); + void TrapWrite(xercesc::DOMElement*, const G4Trap* const); + void TrdWrite(xercesc::DOMElement*, const G4Trd* const); + void TubeWrite(xercesc::DOMElement*, const G4Tubs* const); + void CutTubeWrite(xercesc::DOMElement*, const G4CutTubs* const); + void TwistedboxWrite(xercesc::DOMElement*, const G4TwistedBox* const); + void TwistedtrapWrite(xercesc::DOMElement*, const G4TwistedTrap* const); + void TwistedtrdWrite(xercesc::DOMElement*, const G4TwistedTrd* const); + void TwistedtubsWrite(xercesc::DOMElement*, const G4TwistedTubs* const); + void ZplaneWrite(xercesc::DOMElement*, const G4double&, const G4double&, + const G4double&); + void RZPointWrite(xercesc::DOMElement*, const G4double&, const G4double&); + void OpticalSurfaceWrite(xercesc::DOMElement*, + const G4OpticalSurface* const); + void PropertyWrite(xercesc::DOMElement*, const G4OpticalSurface* const); protected: - std::vector solidList; - xercesc::DOMElement* solidsElement; - static const G4int maxTransforms = 8; // Constant for limiting the number - // of displacements/reflections - // applied to a single solid + std::vector solidList; + xercesc::DOMElement* solidsElement = nullptr; + static const G4int maxTransforms = 8; // Constant for limiting the number + // of displacements/reflections + // applied to a single solid }; #endif diff --git a/source/persistency/gdml/include/G4GDMLWriteStructure.hh b/source/persistency/gdml/include/G4GDMLWriteStructure.hh index 1c0577f6cc..ba6ad2c856 100644 --- a/source/persistency/gdml/include/G4GDMLWriteStructure.hh +++ b/source/persistency/gdml/include/G4GDMLWriteStructure.hh @@ -23,21 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4GDMLWriteStructure +// G4GDMLWriteStructure // // Class description: // // GDML class for export of structures. -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4GDMLWRITESTRUCTURE_INCLUDED_ -#define _G4GDMLWRITESTRUCTURE_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4GDMLWRITESTRUCTURE_HH +#define G4GDMLWRITESTRUCTURE_HH 1 #include "G4Types.hh" #include "G4Transform3D.hh" @@ -55,58 +50,70 @@ class G4AssemblyTriplet; class G4GDMLWriteStructure : public G4GDMLWriteParamvol { + public: - public: + G4GDMLWriteStructure(); + virtual ~G4GDMLWriteStructure(); - G4GDMLWriteStructure(); - virtual ~G4GDMLWriteStructure(); + virtual void StructureWrite(xercesc::DOMElement*); + void AddVolumeAuxiliary(G4GDMLAuxStructType myaux, + const G4LogicalVolume* const); - virtual void StructureWrite(xercesc::DOMElement*); - void AddVolumeAuxiliary(G4GDMLAuxStructType myaux, const G4LogicalVolume* const); + void SetEnergyCutsExport(G4bool); + void SetSDExport(G4bool); - void SetEnergyCutsExport(G4bool); - void SetSDExport(G4bool); + G4int GetMaxExportLevel() const; + void SetMaxExportLevel(G4int); - G4int GetMaxExportLevel() const; - void SetMaxExportLevel(G4int); + protected: - protected: + void DivisionvolWrite(xercesc::DOMElement*, const G4PVDivision* const); + void PhysvolWrite(xercesc::DOMElement*, + const G4VPhysicalVolume* const topVol, + const G4Transform3D& transform, + const G4String& moduleName); + void ReplicavolWrite(xercesc::DOMElement*, const G4VPhysicalVolume* const); + void AssemblyWrite(xercesc::DOMElement*, const int assemblyID); + G4Transform3D TraverseVolumeTree(const G4LogicalVolume* const topVol, + const G4int depth); + void SurfacesWrite(); + void BorderSurfaceCache(const G4LogicalBorderSurface* const); + void SkinSurfaceCache(const G4LogicalSkinSurface* const); + const G4LogicalBorderSurface* GetBorderSurface( + const G4VPhysicalVolume* const); + const G4LogicalSkinSurface* GetSkinSurface(const G4LogicalVolume* const); + G4bool FindOpticalSurface(const G4SurfaceProperty*); + void ExportEnergyCuts(const G4LogicalVolume* const); + void ExportSD(const G4LogicalVolume* const); - void DivisionvolWrite(xercesc::DOMElement*, const G4PVDivision* const); - void PhysvolWrite(xercesc::DOMElement*,const G4VPhysicalVolume* const topVol, - const G4Transform3D& transform, const G4String& moduleName); - void ReplicavolWrite(xercesc::DOMElement*, const G4VPhysicalVolume* const); - void AssemblyWrite(xercesc::DOMElement*, const int assemblyID); - G4Transform3D TraverseVolumeTree(const G4LogicalVolume* const topVol, - const G4int depth); - void SurfacesWrite(); - void BorderSurfaceCache(const G4LogicalBorderSurface* const); - void SkinSurfaceCache(const G4LogicalSkinSurface* const); - const G4LogicalBorderSurface* GetBorderSurface(const G4VPhysicalVolume* const); - const G4LogicalSkinSurface* GetSkinSurface(const G4LogicalVolume* const); - G4bool FindOpticalSurface(const G4SurfaceProperty*); - void ExportEnergyCuts(const G4LogicalVolume* const); - void ExportSD(const G4LogicalVolume* const); + protected: - protected: + xercesc::DOMElement* structureElement = nullptr; + std::vector borderElementVec; + std::vector skinElementVec; + std::map auxmap; - xercesc::DOMElement* structureElement; - std::vector borderElementVec; - std::vector skinElementVec; - std::map auxmap; + private: // cache for optical surfaces... - private: // cache for optical surfaces... + std::vector opt_vec; - std::vector opt_vec; - G4ReflectionFactory* reflFactory; - G4bool cexport; // Flag for optional export of energy cuts per volume - G4bool sdexport; // Flag for optional export of SD per volume - G4int maxLevel; // Maximum number of levels to export - static G4int levelNo; // Counter for level being exported - std::map assemblyVolMap; // Map of phys volumes to assembly IDs - std::map imprintsMap; // Map of phys volumes to imprints IDs - std::vector addedAssemblies; // vector of assemblies IDs already added to the structure + G4ReflectionFactory* reflFactory = nullptr; + G4bool cexport = false; + // Flag for optional export of energy cuts per volume + G4bool sdexport= false; + // Flag for optional export of SD per volume + G4int maxLevel = 0; + // Maximum number of levels to export + static G4int levelNo; + // Counter for level being exported + + std::map assemblyVolMap; + // Map of phys volumes to assembly IDs + std::map imprintsMap; + // Map of phys volumes to imprints IDs + std::vector addedAssemblies; + // Vector of assemblies IDs already added to the structure }; #endif diff --git a/source/persistency/gdml/include/G4STRead.hh b/source/persistency/gdml/include/G4STRead.hh index 79bffedefb..859bfe46a6 100644 --- a/source/persistency/gdml/include/G4STRead.hh +++ b/source/persistency/gdml/include/G4STRead.hh @@ -23,10 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -// class G4STRead +// G4STRead // // Class description: // @@ -34,12 +31,10 @@ // (.geom and .tree structures) generated out of STEP files from // CAD systems (STWriter STEP Tool and similar...). -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- - -#ifndef _G4STREAD_INCLUDED_ -#define _G4STREAD_INCLUDED_ +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- +#ifndef G4STREAD_HH +#define G4STREAD_HH 1 #include #include @@ -53,10 +48,11 @@ class G4LogicalVolume; class G4STRead { - public: // with description + public: G4LogicalVolume* Read(const G4String&, G4Material* mediumMaterial, - G4Material* solidMaterial); + G4Material* solidMaterial); + private: void TessellatedRead(const std::string&); @@ -67,12 +63,13 @@ class G4STRead private: - G4Box* world_box; + G4Box* world_box = nullptr; G4ThreeVector world_extent; - G4Material* solid_material; - G4LogicalVolume* world_volume; + G4Material* solid_material = nullptr; + G4LogicalVolume* world_volume = nullptr; + std::vector tessellatedList; - std::map volumeMap; + std::map volumeMap; }; #endif diff --git a/source/persistency/gdml/schema/gdml.xsd b/source/persistency/gdml/schema/gdml.xsd old mode 100755 new mode 100644 diff --git a/source/persistency/gdml/schema/gdml_core.xsd b/source/persistency/gdml/schema/gdml_core.xsd old mode 100755 new mode 100644 diff --git a/source/persistency/gdml/schema/gdml_define.xsd b/source/persistency/gdml/schema/gdml_define.xsd old mode 100755 new mode 100644 diff --git a/source/persistency/gdml/schema/gdml_materials.xsd b/source/persistency/gdml/schema/gdml_materials.xsd old mode 100755 new mode 100644 diff --git a/source/persistency/gdml/schema/gdml_parameterised.xsd b/source/persistency/gdml/schema/gdml_parameterised.xsd old mode 100755 new mode 100644 diff --git a/source/persistency/gdml/schema/gdml_replicas.xsd b/source/persistency/gdml/schema/gdml_replicas.xsd old mode 100755 new mode 100644 diff --git a/source/persistency/gdml/schema/gdml_solids.xsd b/source/persistency/gdml/schema/gdml_solids.xsd old mode 100755 new mode 100644 diff --git a/source/persistency/gdml/src/G4GDMLEvaluator.cc b/source/persistency/gdml/src/G4GDMLEvaluator.cc index 85ebf06696..f42fb92d95 100644 --- a/source/persistency/gdml/src/G4GDMLEvaluator.cc +++ b/source/persistency/gdml/src/G4GDMLEvaluator.cc @@ -23,13 +23,9 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLEvaluator implementation // -// GEANT4 tag $ Name:$ -// -// class G4GDMLEvaluator Implementation -// -// Original author: Zoltan Torzsok, November 2007 -// +// Author: Zoltan Torzsok, November 2007 // -------------------------------------------------------------------- #include @@ -37,262 +33,297 @@ #include "G4GDMLEvaluator.hh" #include "G4SystemOfUnits.hh" +// -------------------------------------------------------------------- G4GDMLEvaluator::G4GDMLEvaluator() { - eval.clear(); - eval.setStdMath(); - eval.setSystemOfUnits(meter,kilogram,second,ampere,kelvin,mole,candela); + eval.clear(); + eval.setStdMath(); + eval.setSystemOfUnits(meter, kilogram, second, ampere, kelvin, mole, candela); } +// -------------------------------------------------------------------- void G4GDMLEvaluator::Clear() { eval.clear(); eval.setStdMath(); - eval.setSystemOfUnits(meter,kilogram,second,ampere,kelvin,mole,candela); + eval.setSystemOfUnits(meter, kilogram, second, ampere, kelvin, mole, candela); variableList.clear(); } +// -------------------------------------------------------------------- void G4GDMLEvaluator::DefineConstant(const G4String& name, G4double value) { - if (eval.findVariable(name)) - { - G4String error_msg = "Redefinition of constant or variable: "+name; - G4Exception("G4GDMLEvaluator::DefineConstant()", "InvalidExpression", - FatalException, error_msg); - } - eval.setVariable(name.c_str(),value); + if(eval.findVariable(name)) + { + G4String error_msg = "Redefinition of constant or variable: " + name; + G4Exception("G4GDMLEvaluator::DefineConstant()", "InvalidExpression", + FatalException, error_msg); + } + eval.setVariable(name.c_str(), value); } -void G4GDMLEvaluator::DefineVariable(const G4String& name,G4double value) +// -------------------------------------------------------------------- +void G4GDMLEvaluator::DefineVariable(const G4String& name, G4double value) { - if (eval.findVariable(name)) - { - G4String error_msg = "Redefinition of constant or variable: "+name; - G4Exception("G4GDMLEvaluator::DefineVariable()", "InvalidExpression", - FatalException, error_msg); - } - eval.setVariable(name.c_str(),value); - variableList.push_back(name); + if(eval.findVariable(name)) + { + G4String error_msg = "Redefinition of constant or variable: " + name; + G4Exception("G4GDMLEvaluator::DefineVariable()", "InvalidExpression", + FatalException, error_msg); + } + eval.setVariable(name.c_str(), value); + variableList.push_back(name); } -void G4GDMLEvaluator::DefineMatrix(const G4String& name, - G4int coldim, - std::vector valueList) +// -------------------------------------------------------------------- +void G4GDMLEvaluator::DefineMatrix(const G4String& name, G4int coldim, + std::vector valueList) { - const G4int size = valueList.size(); + const G4int size = valueList.size(); - if (size == 0) - { - G4String error_msg = "Matrix '"+name+"' is empty!"; - G4Exception("G4GDMLEvaluator::DefineMatrix()", "InvalidSize", - FatalException, error_msg); - } - /* - if (size == 1) - { - G4String error_msg = "Matrix '" + name - + "' has only one element! " - + "Define a constant instead!!"; - G4Exception("G4GDMLEvaluator::DefineMatrix()", "InvalidSize", - FatalException, error_msg); - } - */ + if(size == 0) + { + G4String error_msg = "Matrix '" + name + "' is empty!"; + G4Exception("G4GDMLEvaluator::DefineMatrix()", "InvalidSize", + FatalException, error_msg); + } + /* + if (size == 1) + { + G4String error_msg = "Matrix '" + name + + "' has only one element! " + + "Define a constant instead!!"; + G4Exception("G4GDMLEvaluator::DefineMatrix()", "InvalidSize", + FatalException, error_msg); + } + */ - if (size % coldim != 0) - { - G4String error_msg = "Matrix '" + name + "' is not filled correctly!"; - G4Exception("G4GDMLEvaluator::DefineMatrix()", "InvalidSize", - FatalException, error_msg); - } + if(size % coldim != 0) + { + G4String error_msg = "Matrix '" + name + "' is not filled correctly!"; + G4Exception("G4GDMLEvaluator::DefineMatrix()", "InvalidSize", + FatalException, error_msg); + } - if ((size == coldim) || (coldim == 1)) // Row- or column matrix - { - for (G4int i=0;iclose) || (open==std::string::npos) || (close==std::string::npos)) - { - G4String error_msg = "Bracket mismatch: " + in; - G4Exception("G4GDMLEvaluator::SolveBrackets()", "InvalidExpression", - FatalException, error_msg); - return in; - } + if((open > close) || (open == std::string::npos) || + (close == std::string::npos)) + { + G4String error_msg = "Bracket mismatch: " + in; + G4Exception("G4GDMLEvaluator::SolveBrackets()", "InvalidExpression", + FatalException, error_msg); + return in; + } - std::string::size_type begin = open; - std::string::size_type end = 0; - std::string::size_type end1 = 0; - std::string out; - out.append(in,0,open); + std::string::size_type begin = open; + std::string::size_type end = 0; + std::string::size_type end1 = 0; + std::string out; + out.append(in, 0, open); - do // Loop for all possible matrix elements in 'in' - { - do // SolveBrackets for one matrix element - { - end = in.find(",",begin+1); - end1= in.find("]",begin+1); - if (end>end1) { end = end1; } - if (end==std::string::npos) { end = close;} - - std::stringstream indexStream; - indexStream << "_" << EvaluateInteger(in.substr(begin+1,end-begin-1))-1; + do // Loop for all possible matrix elements in 'in' + { + do // SolveBrackets for one matrix element + { + end = in.find(",", begin + 1); + end1 = in.find("]", begin + 1); + if(end > end1) + { + end = end1; + } + if(end == std::string::npos) + { + end = close; + } - out.append(indexStream.str()); + std::stringstream indexStream; + indexStream << "_" + << EvaluateInteger(in.substr(begin + 1, end - begin - 1)) - 1; - begin = end; + out.append(indexStream.str()); - } while (endSetGuidance("UI commands specific to persistency."); - + gdmlDir = new G4UIdirectory("/persistency/gdml/"); gdmlDir->SetGuidance("GDML parser and writer."); - - ReaderCmd = new G4UIcmdWithAString("/persistency/gdml/read",this); + + ReaderCmd = new G4UIcmdWithAString("/persistency/gdml/read", this); ReaderCmd->SetGuidance("Read GDML file."); - ReaderCmd->SetParameterName("filename",false); - ReaderCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + ReaderCmd->SetParameterName("filename", false); + ReaderCmd->AvailableForStates(G4State_PreInit, G4State_Idle); ReaderCmd->SetToBeBroadcasted(false); - TopVolCmd = new G4UIcmdWithAString("/persistency/gdml/topvol",this); + TopVolCmd = new G4UIcmdWithAString("/persistency/gdml/topvol", this); TopVolCmd->SetGuidance("Set the top volume for writing the GDML file."); - TopVolCmd->SetParameterName("topvol",false); + TopVolCmd->SetParameterName("topvol", false); TopVolCmd->SetToBeBroadcasted(false); - WriterCmd = new G4UIcmdWithAString("/persistency/gdml/write",this); + WriterCmd = new G4UIcmdWithAString("/persistency/gdml/write", this); WriterCmd->SetGuidance("Write GDML file."); - WriterCmd->SetParameterName("filename",false); + WriterCmd->SetParameterName("filename", false); WriterCmd->AvailableForStates(G4State_Idle); WriterCmd->SetToBeBroadcasted(false); - StripCmd = new G4UIcmdWithABool("/persistency/gdml/strip_pointers",this); + StripCmd = new G4UIcmdWithABool("/persistency/gdml/strip_pointers", this); StripCmd->SetGuidance("Enable/disable stripping of pointers on names"); StripCmd->SetGuidance("when reading a GDML file."); - StripCmd->SetParameterName("strip_pointers",true); + StripCmd->SetParameterName("strip_pointers", true); StripCmd->SetDefaultValue(true); StripCmd->AvailableForStates(G4State_Idle); StripCmd->SetToBeBroadcasted(false); - AppendCmd = new G4UIcmdWithABool("/persistency/gdml/add_pointers",this); + AppendCmd = new G4UIcmdWithABool("/persistency/gdml/add_pointers", this); AppendCmd->SetGuidance("Enable/disable appending of pointers to names"); AppendCmd->SetGuidance("when writing a GDML file."); - AppendCmd->SetParameterName("append_pointers",true); + AppendCmd->SetParameterName("append_pointers", true); AppendCmd->SetDefaultValue(true); AppendCmd->AvailableForStates(G4State_Idle); AppendCmd->SetToBeBroadcasted(false); - RegionCmd = new G4UIcmdWithABool("/persistency/gdml/export_regions",this); + RegionCmd = new G4UIcmdWithABool("/persistency/gdml/export_regions", this); RegionCmd->SetGuidance("Enable export of geometrical regions"); RegionCmd->SetGuidance("for storing production cuts."); - RegionCmd->SetParameterName("export_regions",false); + RegionCmd->SetParameterName("export_regions", false); RegionCmd->SetDefaultValue(false); RegionCmd->AvailableForStates(G4State_Idle); RegionCmd->SetToBeBroadcasted(false); - EcutsCmd = new G4UIcmdWithABool("/persistency/gdml/export_Ecuts",this); + EcutsCmd = new G4UIcmdWithABool("/persistency/gdml/export_Ecuts", this); EcutsCmd->SetGuidance("Enable export of energy cuts associated"); EcutsCmd->SetGuidance("to logical volumes."); EcutsCmd->SetGuidance("NOTE: may increase considerably the size of the"); EcutsCmd->SetGuidance(" GDML file! Information is anyhow not used"); EcutsCmd->SetGuidance(" for import."); - EcutsCmd->SetParameterName("export_Ecuts",false); + EcutsCmd->SetParameterName("export_Ecuts", false); EcutsCmd->SetDefaultValue(false); EcutsCmd->AvailableForStates(G4State_Idle); EcutsCmd->SetToBeBroadcasted(false); - SDCmd = new G4UIcmdWithABool("/persistency/gdml/export_SD",this); + SDCmd = new G4UIcmdWithABool("/persistency/gdml/export_SD", this); SDCmd->SetGuidance("Enable export of SD associated"); SDCmd->SetGuidance("to logical volumes."); - SDCmd->SetParameterName("export_SD",false); + SDCmd->SetParameterName("export_SD", false); SDCmd->SetDefaultValue(false); SDCmd->AvailableForStates(G4State_Idle); SDCmd->SetToBeBroadcasted(false); - ClearCmd = new G4UIcmdWithoutParameter("/persistency/gdml/clear",this); + ClearCmd = new G4UIcmdWithoutParameter("/persistency/gdml/clear", this); ClearCmd->SetGuidance("Clear geometry (before reading a new one from GDML)."); ClearCmd->AvailableForStates(G4State_Idle); ClearCmd->SetToBeBroadcasted(false); } +// -------------------------------------------------------------------- G4GDMLMessenger::~G4GDMLMessenger() { delete ReaderCmd; @@ -134,59 +134,61 @@ G4GDMLMessenger::~G4GDMLMessenger() delete AppendCmd; } +// -------------------------------------------------------------------- void G4GDMLMessenger::SetNewValue(G4UIcommand* command, G4String newValue) -{ - if( command == StripCmd ) +{ + if(command == StripCmd) { G4bool mode = StripCmd->GetNewBoolValue(newValue); myParser->SetStripFlag(mode); } - if( command == AppendCmd ) + if(command == AppendCmd) { pFlag = AppendCmd->GetNewBoolValue(newValue); myParser->SetAddPointerToName(pFlag); } - if( command == ReaderCmd ) - { + if(command == ReaderCmd) + { G4GeometryManager::GetInstance()->OpenGeometry(); myParser->Read(newValue); - G4RunManager::GetRunManager()->DefineWorldVolume(myParser->GetWorldVolume()); + G4RunManager::GetRunManager()->DefineWorldVolume( + myParser->GetWorldVolume()); G4RunManager::GetRunManager()->GeometryDirectlyUpdated(); } - if( command == RegionCmd ) + if(command == RegionCmd) { G4bool mode = RegionCmd->GetNewBoolValue(newValue); myParser->SetRegionExport(mode); } - if( command == EcutsCmd ) + if(command == EcutsCmd) { G4bool mode = EcutsCmd->GetNewBoolValue(newValue); myParser->SetEnergyCutsExport(mode); } - - if( command == SDCmd ) + + if(command == SDCmd) { G4bool mode = SDCmd->GetNewBoolValue(newValue); myParser->SetSDExport(mode); } - - if( command == TopVolCmd ) + + if(command == TopVolCmd) { topvol = G4LogicalVolumeStore::GetInstance()->GetVolume(newValue); } - - if( command == WriterCmd ) + + if(command == WriterCmd) { myParser->Write(newValue, topvol, pFlag); - } + } - if( command == ClearCmd ) - { + if(command == ClearCmd) + { myParser->Clear(); G4RunManager::GetRunManager()->ReinitializeGeometry(true); - } + } } diff --git a/source/persistency/gdml/src/G4GDMLParameterisation.cc b/source/persistency/gdml/src/G4GDMLParameterisation.cc index d3b0056d9f..e56b19fea3 100644 --- a/source/persistency/gdml/src/G4GDMLParameterisation.cc +++ b/source/persistency/gdml/src/G4GDMLParameterisation.cc @@ -23,189 +23,206 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLParameterisation implementation // -// class G4GDMLParameterisation Implementation -// -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- #include "G4GDMLParameterisation.hh" #include "G4PolyconeHistorical.hh" #include "G4PolyhedraHistorical.hh" +// -------------------------------------------------------------------- G4int G4GDMLParameterisation::GetSize() const { - return (G4int)parameterList.size(); + return (G4int) parameterList.size(); } +// -------------------------------------------------------------------- void G4GDMLParameterisation::AddParameter(const PARAMETER& newParameter) { - parameterList.push_back(newParameter); + parameterList.push_back(newParameter); } -void G4GDMLParameterisation:: -ComputeTransformation(const G4int index,G4VPhysicalVolume* physvol) const +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeTransformation( + const G4int index, G4VPhysicalVolume* physvol) const { - physvol->SetTranslation(parameterList[index].position); - physvol->SetRotation(parameterList[index].pRot); + physvol->SetTranslation(parameterList[index].position); + physvol->SetRotation(parameterList[index].pRot); } -void G4GDMLParameterisation:: -ComputeDimensions(G4Box& box,const G4int index,const G4VPhysicalVolume*) const +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeDimensions(G4Box& box, const G4int index, + const G4VPhysicalVolume*) const { - box.SetXHalfLength(parameterList[index].dimension[0]); - box.SetYHalfLength(parameterList[index].dimension[1]); - box.SetZHalfLength(parameterList[index].dimension[2]); + box.SetXHalfLength(parameterList[index].dimension[0]); + box.SetYHalfLength(parameterList[index].dimension[1]); + box.SetZHalfLength(parameterList[index].dimension[2]); } -void G4GDMLParameterisation:: -ComputeDimensions(G4Trd& trd,const G4int index,const G4VPhysicalVolume*) const +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeDimensions(G4Trd& trd, const G4int index, + const G4VPhysicalVolume*) const { - trd.SetXHalfLength1(parameterList[index].dimension[0]); - trd.SetXHalfLength2(parameterList[index].dimension[1]); - trd.SetYHalfLength1(parameterList[index].dimension[2]); - trd.SetYHalfLength2(parameterList[index].dimension[3]); - trd.SetZHalfLength(parameterList[index].dimension[4]); + trd.SetXHalfLength1(parameterList[index].dimension[0]); + trd.SetXHalfLength2(parameterList[index].dimension[1]); + trd.SetYHalfLength1(parameterList[index].dimension[2]); + trd.SetYHalfLength2(parameterList[index].dimension[3]); + trd.SetZHalfLength(parameterList[index].dimension[4]); } -void G4GDMLParameterisation:: -ComputeDimensions(G4Trap& trap,const G4int index,const G4VPhysicalVolume*) const +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeDimensions(G4Trap& trap, const G4int index, + const G4VPhysicalVolume*) const { - trap.SetAllParameters(parameterList[index].dimension[0], // Dz - parameterList[index].dimension[1], // Theta - parameterList[index].dimension[2], // Phi - parameterList[index].dimension[3], // Dy1 - parameterList[index].dimension[4], // Dx1 - parameterList[index].dimension[5], // Dx2 - parameterList[index].dimension[6], // pAlp1, - parameterList[index].dimension[7], // pDy2, - parameterList[index].dimension[8], // pDx3, - parameterList[index].dimension[9], // pDx4, - parameterList[index].dimension[10]); // pAlp2 + trap.SetAllParameters(parameterList[index].dimension[0], // Dz + parameterList[index].dimension[1], // Theta + parameterList[index].dimension[2], // Phi + parameterList[index].dimension[3], // Dy1 + parameterList[index].dimension[4], // Dx1 + parameterList[index].dimension[5], // Dx2 + parameterList[index].dimension[6], // pAlp1, + parameterList[index].dimension[7], // pDy2, + parameterList[index].dimension[8], // pDx3, + parameterList[index].dimension[9], // pDx4, + parameterList[index].dimension[10]); // pAlp2 } -void G4GDMLParameterisation:: -ComputeDimensions(G4Tubs& tubs,const G4int index,const G4VPhysicalVolume*) const +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeDimensions(G4Tubs& tubs, const G4int index, + const G4VPhysicalVolume*) const { - tubs.SetInnerRadius(parameterList[index].dimension[0]); - tubs.SetOuterRadius(parameterList[index].dimension[1]); - tubs.SetZHalfLength(parameterList[index].dimension[2]); - tubs.SetStartPhiAngle(parameterList[index].dimension[3]); - tubs.SetDeltaPhiAngle(parameterList[index].dimension[4]); + tubs.SetInnerRadius(parameterList[index].dimension[0]); + tubs.SetOuterRadius(parameterList[index].dimension[1]); + tubs.SetZHalfLength(parameterList[index].dimension[2]); + tubs.SetStartPhiAngle(parameterList[index].dimension[3]); + tubs.SetDeltaPhiAngle(parameterList[index].dimension[4]); } -void G4GDMLParameterisation:: -ComputeDimensions(G4Cons& cons,const G4int index,const G4VPhysicalVolume*) const +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeDimensions(G4Cons& cons, const G4int index, + const G4VPhysicalVolume*) const { - cons.SetInnerRadiusMinusZ(parameterList[index].dimension[0]); - cons.SetOuterRadiusMinusZ(parameterList[index].dimension[1]); - cons.SetInnerRadiusPlusZ(parameterList[index].dimension[2]); - cons.SetOuterRadiusPlusZ(parameterList[index].dimension[3]); - cons.SetZHalfLength(parameterList[index].dimension[4]); - cons.SetStartPhiAngle(parameterList[index].dimension[5]); - cons.SetDeltaPhiAngle(parameterList[index].dimension[6]); + cons.SetInnerRadiusMinusZ(parameterList[index].dimension[0]); + cons.SetOuterRadiusMinusZ(parameterList[index].dimension[1]); + cons.SetInnerRadiusPlusZ(parameterList[index].dimension[2]); + cons.SetOuterRadiusPlusZ(parameterList[index].dimension[3]); + cons.SetZHalfLength(parameterList[index].dimension[4]); + cons.SetStartPhiAngle(parameterList[index].dimension[5]); + cons.SetDeltaPhiAngle(parameterList[index].dimension[6]); } -void G4GDMLParameterisation:: -ComputeDimensions(G4Sphere& sphere,const G4int index,const G4VPhysicalVolume*) const +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeDimensions(G4Sphere& sphere, + const G4int index, + const G4VPhysicalVolume*) const { - sphere.SetInnerRadius(parameterList[index].dimension[0]); - sphere.SetOuterRadius(parameterList[index].dimension[1]); - sphere.SetStartPhiAngle(parameterList[index].dimension[2]); - sphere.SetDeltaPhiAngle(parameterList[index].dimension[3]); - sphere.SetStartThetaAngle(parameterList[index].dimension[4]); - sphere.SetDeltaThetaAngle(parameterList[index].dimension[5]); + sphere.SetInnerRadius(parameterList[index].dimension[0]); + sphere.SetOuterRadius(parameterList[index].dimension[1]); + sphere.SetStartPhiAngle(parameterList[index].dimension[2]); + sphere.SetDeltaPhiAngle(parameterList[index].dimension[3]); + sphere.SetStartThetaAngle(parameterList[index].dimension[4]); + sphere.SetDeltaThetaAngle(parameterList[index].dimension[5]); } -void G4GDMLParameterisation:: -ComputeDimensions(G4Orb& orb,const G4int index,const G4VPhysicalVolume*) const +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeDimensions(G4Orb& orb, const G4int index, + const G4VPhysicalVolume*) const { - orb.SetRadius(parameterList[index].dimension[0]); + orb.SetRadius(parameterList[index].dimension[0]); } -void G4GDMLParameterisation:: -ComputeDimensions(G4Ellipsoid& ellipsoid,const G4int index,const G4VPhysicalVolume*) const +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeDimensions(G4Ellipsoid& ellipsoid, + const G4int index, + const G4VPhysicalVolume*) const { - ellipsoid.SetSemiAxis(parameterList[index].dimension[0], - parameterList[index].dimension[1], - parameterList[index].dimension[2]); - ellipsoid.SetZCuts(parameterList[index].dimension[3], - parameterList[index].dimension[4]); + ellipsoid.SetSemiAxis(parameterList[index].dimension[0], + parameterList[index].dimension[1], + parameterList[index].dimension[2]); + ellipsoid.SetZCuts(parameterList[index].dimension[3], + parameterList[index].dimension[4]); } -void G4GDMLParameterisation:: -ComputeDimensions(G4Torus& torus,const G4int index,const G4VPhysicalVolume*) const +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeDimensions(G4Torus& torus, + const G4int index, + const G4VPhysicalVolume*) const { - torus.SetAllParameters(parameterList[index].dimension[0], // pRmin - parameterList[index].dimension[1], // pRmax - parameterList[index].dimension[2], // pRtor - parameterList[index].dimension[3], // pSPhi - parameterList[index].dimension[4]); // pDPhi + torus.SetAllParameters(parameterList[index].dimension[0], // pRmin + parameterList[index].dimension[1], // pRmax + parameterList[index].dimension[2], // pRtor + parameterList[index].dimension[3], // pSPhi + parameterList[index].dimension[4]); // pDPhi } -void G4GDMLParameterisation:: -ComputeDimensions(G4Para& para,const G4int index,const G4VPhysicalVolume*) const +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeDimensions(G4Para& para, const G4int index, + const G4VPhysicalVolume*) const { - para.SetXHalfLength(parameterList[index].dimension[0]); - para.SetYHalfLength(parameterList[index].dimension[1]); - para.SetZHalfLength(parameterList[index].dimension[2]); - para.SetAlpha(parameterList[index].dimension[3]); - para.SetTanAlpha(std::tan(parameterList[index].dimension[3])); - para.SetThetaAndPhi(parameterList[index].dimension[4],parameterList[index].dimension[5]); + para.SetXHalfLength(parameterList[index].dimension[0]); + para.SetYHalfLength(parameterList[index].dimension[1]); + para.SetZHalfLength(parameterList[index].dimension[2]); + para.SetAlpha(parameterList[index].dimension[3]); + para.SetTanAlpha(std::tan(parameterList[index].dimension[3])); + para.SetThetaAndPhi(parameterList[index].dimension[4], + parameterList[index].dimension[5]); } -void G4GDMLParameterisation:: -ComputeDimensions(G4Hype& hype,const G4int index,const G4VPhysicalVolume*) const +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeDimensions(G4Hype& hype, const G4int index, + const G4VPhysicalVolume*) const { - hype.SetInnerRadius(parameterList[index].dimension[0]); - hype.SetOuterRadius(parameterList[index].dimension[1]); - hype.SetZHalfLength(parameterList[index].dimension[4]); - hype.SetInnerStereo(parameterList[index].dimension[2]); - hype.SetOuterStereo(parameterList[index].dimension[3]); + hype.SetInnerRadius(parameterList[index].dimension[0]); + hype.SetOuterRadius(parameterList[index].dimension[1]); + hype.SetZHalfLength(parameterList[index].dimension[4]); + hype.SetInnerStereo(parameterList[index].dimension[2]); + hype.SetOuterStereo(parameterList[index].dimension[3]); } -void G4GDMLParameterisation:: -ComputeDimensions(G4Polycone& pcone,const G4int index,const G4VPhysicalVolume*) const +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeDimensions(G4Polycone& pcone, + const G4int index, + const G4VPhysicalVolume*) const { - - G4PolyconeHistorical origparam( *(pcone.GetOriginalParameters()) ); - origparam.Start_angle = parameterList[index].dimension[0]; - origparam.Opening_angle = parameterList[index].dimension[1]; - origparam.Num_z_planes = (G4int) parameterList[index].dimension[2]; - G4int nZplanes = origparam.Num_z_planes; - - for( G4int ii = 0; ii < nZplanes; ii++ ) - { - origparam.Rmin[ii] = parameterList[index].dimension[3+ii*3] ; - origparam.Rmax[ii] = parameterList[index].dimension[4+ii*3] ; - origparam.Z_values[ii] = parameterList[index].dimension[5+ii*3] ; - } + G4PolyconeHistorical origparam(*(pcone.GetOriginalParameters())); + origparam.Start_angle = parameterList[index].dimension[0]; + origparam.Opening_angle = parameterList[index].dimension[1]; + origparam.Num_z_planes = (G4int) parameterList[index].dimension[2]; + G4int nZplanes = origparam.Num_z_planes; - pcone.SetOriginalParameters(&origparam); // copy values & transfer pointers - pcone.Reset(); // reset to new solid parameters - -} - -void G4GDMLParameterisation:: -ComputeDimensions(G4Polyhedra& polyhedra,const G4int index,const G4VPhysicalVolume*) const -{ - G4PolyhedraHistorical origparam( *(polyhedra.GetOriginalParameters()) ); - origparam.Start_angle = parameterList[index].dimension[0]; - origparam.Opening_angle = parameterList[index].dimension[1]; - origparam.Num_z_planes = (G4int) parameterList[index].dimension[2]; - origparam.numSide = (G4int) parameterList[index].dimension[3]; - - G4int nZplanes = origparam.Num_z_planes; - - for( G4int ii = 0; ii < nZplanes; ii++ ) - { - - origparam.Rmin[ii] = parameterList[index].dimension[4+ii*3] ; - origparam.Rmax[ii] = parameterList[index].dimension[5+ii*3] ; - origparam.Z_values[ii] = parameterList[index].dimension[6+ii*3] ; - + for(G4int ii = 0; ii < nZplanes; ++ii) + { + origparam.Rmin[ii] = parameterList[index].dimension[3 + ii * 3]; + origparam.Rmax[ii] = parameterList[index].dimension[4 + ii * 3]; + origparam.Z_values[ii] = parameterList[index].dimension[5 + ii * 3]; } - polyhedra.SetOriginalParameters(&origparam); // copy values & transfer pointers - polyhedra.Reset(); // reset to new solid parameters + + pcone.SetOriginalParameters(&origparam); // copy values & transfer pointers + pcone.Reset(); // reset to new solid parameters +} + +// -------------------------------------------------------------------- +void G4GDMLParameterisation::ComputeDimensions(G4Polyhedra& polyhedra, + const G4int index, + const G4VPhysicalVolume*) const +{ + G4PolyhedraHistorical origparam(*(polyhedra.GetOriginalParameters())); + origparam.Start_angle = parameterList[index].dimension[0]; + origparam.Opening_angle = parameterList[index].dimension[1]; + origparam.Num_z_planes = (G4int) parameterList[index].dimension[2]; + origparam.numSide = (G4int) parameterList[index].dimension[3]; + + G4int nZplanes = origparam.Num_z_planes; + + for(G4int ii = 0; ii < nZplanes; ++ii) + { + origparam.Rmin[ii] = parameterList[index].dimension[4 + ii * 3]; + origparam.Rmax[ii] = parameterList[index].dimension[5 + ii * 3]; + origparam.Z_values[ii] = parameterList[index].dimension[6 + ii * 3]; + } + polyhedra.SetOriginalParameters( + &origparam); // copy values & transfer pointers + polyhedra.Reset(); // reset to new solid parameters } diff --git a/source/persistency/gdml/src/G4GDMLParser.cc b/source/persistency/gdml/src/G4GDMLParser.cc index 1a67085aa7..efb29281b1 100644 --- a/source/persistency/gdml/src/G4GDMLParser.cc +++ b/source/persistency/gdml/src/G4GDMLParser.cc @@ -23,12 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLParser implementation // -// -// -// class G4GDMLParser Implementation -// -// ------------------------------------------------------------------------- +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- #include "G4GDMLParser.hh" @@ -40,211 +38,282 @@ #include "G4ReflectionFactory.hh" #include "G4Track.hh" +// -------------------------------------------------------------------- G4GDMLParser::G4GDMLParser() - : rlist(0), ullist(0), urcode(false), uwcode(false), strip(true), rexp(false) + : strip(true) { - reader = new G4GDMLReadStructure; - writer = new G4GDMLWriteStructure; + reader = new G4GDMLReadStructure; + writer = new G4GDMLWriteStructure; messenger = new G4GDMLMessenger(this); xercesc::XMLPlatformUtils::Initialize(); } +// -------------------------------------------------------------------- G4GDMLParser::G4GDMLParser(G4GDMLReadStructure* extr) - : rlist(0), ullist(0), urcode(true), uwcode(false), strip(true), rexp(false) + : urcode(true), strip(true) { - reader = extr; - writer = new G4GDMLWriteStructure; + reader = extr; + writer = new G4GDMLWriteStructure; messenger = new G4GDMLMessenger(this); xercesc::XMLPlatformUtils::Initialize(); } +// -------------------------------------------------------------------- G4GDMLParser::G4GDMLParser(G4GDMLReadStructure* extr, G4GDMLWriteStructure* extw) - : rlist(0), ullist(0), urcode(true), uwcode(true), strip(true), rexp(false) + : urcode(true), uwcode(true), strip(true) { - reader = extr; - writer = extw; + reader = extr; + writer = extw; messenger = new G4GDMLMessenger(this); xercesc::XMLPlatformUtils::Initialize(); } +// -------------------------------------------------------------------- G4GDMLParser::~G4GDMLParser() { xercesc::XMLPlatformUtils::Terminate(); - if (!urcode) { delete reader; } - if (!uwcode) { delete writer; delete ullist; delete rlist; } + if(!urcode) + { + delete reader; + } + if(!uwcode) + { + delete writer; + delete ullist; + delete rlist; + } delete messenger; } +// -------------------------------------------------------------------- void G4GDMLParser::ImportRegions() { - G4ReflectionFactory* reflFactory = G4ReflectionFactory::Instance(); + G4ReflectionFactory* reflFactory = G4ReflectionFactory::Instance(); const G4GDMLAuxListType* auxInfoList = GetAuxList(); - for(std::vector::const_iterator - iaux = auxInfoList->begin(); iaux != auxInfoList->end(); iaux++ ) + for(auto iaux = auxInfoList->cbegin(); iaux != auxInfoList->cend(); ++iaux) { - if (iaux->type != "Region") return; + if(iaux->type != "Region") + return; G4String name = iaux->value; - if (strip) { reader->StripName(name); } - if (name.contains("DefaultRegionForTheWorld")) continue; - - if (!iaux->auxList) + if(strip) { - G4Exception("G4GDMLParser::ImportRegions()", - "ReadError", FatalException, + reader->StripName(name); + } + if(name.contains("DefaultRegionForTheWorld")) + continue; + + if(!iaux->auxList) + { + G4Exception("G4GDMLParser::ImportRegions()", "ReadError", FatalException, "Invalid definition of geometrical region!"); } else // Create region and loop over all region attributes { - G4Region* aRegion = new G4Region(name); + G4Region* aRegion = new G4Region(name); G4ProductionCuts* pcuts = new G4ProductionCuts(); aRegion->SetProductionCuts(pcuts); - for(std::vector::const_iterator - raux = iaux->auxList->begin(); raux != iaux->auxList->end(); raux++ ) + for(auto raux = iaux->auxList->cbegin(); + raux != iaux->auxList->cend(); ++raux) { const G4String& tag = raux->type; - if (tag=="volume") + if(tag == "volume") { G4String volname = raux->value; - if (strip) { reader->StripName(volname); } - G4LogicalVolume* lvol = G4LogicalVolumeStore::GetInstance()->GetVolume(volname); - aRegion->AddRootLogicalVolume(lvol); - if(reflFactory->IsConstituent(lvol)) aRegion->AddRootLogicalVolume(reflFactory->GetReflectedLV(lvol)); - } else - if (tag=="pcut") - { - const G4String& cvalue = raux->value; - const G4String& cunit = raux->unit; - if (G4UnitDefinition::GetCategory(cunit)!="Length") { - G4Exception("G4GDMLParser::ImportRegions()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - G4double cut = eval.Evaluate(cvalue) * G4UnitDefinition::GetValueOf(cunit); - pcuts->SetProductionCut(cut,"proton"); - } else - if (tag=="ecut") - { - const G4String& cvalue = raux->value; - const G4String& cunit = raux->unit; - if (G4UnitDefinition::GetCategory(cunit)!="Length") { - G4Exception("G4GDMLParser::ImportRegions()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - G4double cut = eval.Evaluate(cvalue) * G4UnitDefinition::GetValueOf(cunit); - pcuts->SetProductionCut(cut,"e-"); - } else - if (tag=="poscut") - { - const G4String& cvalue = raux->value; - const G4String& cunit = raux->unit; - if (G4UnitDefinition::GetCategory(cunit)!="Length") { - G4Exception("G4GDMLParser::ImportRegions()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - G4double cut = eval.Evaluate(cvalue) * G4UnitDefinition::GetValueOf(cunit); - pcuts->SetProductionCut(cut,"e+"); - } else - if (tag=="gamcut") - { - const G4String& cvalue = raux->value; - const G4String& cunit = raux->unit; - if (G4UnitDefinition::GetCategory(cunit)!="Length") { - G4Exception("G4GDMLParser::ImportRegions()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - G4double cut = eval.Evaluate(cvalue) * G4UnitDefinition::GetValueOf(cunit); - pcuts->SetProductionCut(cut,"gamma"); - } else - if (tag=="ulimits") - { - G4double ustepMax=DBL_MAX, utrakMax=DBL_MAX, utimeMax=DBL_MAX; - G4double uekinMin=0., urangMin=0.; - const G4String& ulname = raux->value; - for(std::vector::const_iterator - uaux=raux->auxList->begin(); uaux!=raux->auxList->end(); uaux++ ) + if(strip) { - const G4String& ultag = uaux->type; + reader->StripName(volname); + } + G4LogicalVolume* lvol = + G4LogicalVolumeStore::GetInstance()->GetVolume(volname); + aRegion->AddRootLogicalVolume(lvol); + if(reflFactory->IsConstituent(lvol)) + aRegion->AddRootLogicalVolume(reflFactory->GetReflectedLV(lvol)); + } + else if(tag == "pcut") + { + const G4String& cvalue = raux->value; + const G4String& cunit = raux->unit; + if(G4UnitDefinition::GetCategory(cunit) != "Length") + { + G4Exception("G4GDMLParser::ImportRegions()", "InvalidRead", + FatalException, "Invalid unit for length!"); + } + G4double cut = + eval.Evaluate(cvalue) * G4UnitDefinition::GetValueOf(cunit); + pcuts->SetProductionCut(cut, "proton"); + } + else if(tag == "ecut") + { + const G4String& cvalue = raux->value; + const G4String& cunit = raux->unit; + if(G4UnitDefinition::GetCategory(cunit) != "Length") + { + G4Exception("G4GDMLParser::ImportRegions()", "InvalidRead", + FatalException, "Invalid unit for length!"); + } + G4double cut = + eval.Evaluate(cvalue) * G4UnitDefinition::GetValueOf(cunit); + pcuts->SetProductionCut(cut, "e-"); + } + else if(tag == "poscut") + { + const G4String& cvalue = raux->value; + const G4String& cunit = raux->unit; + if(G4UnitDefinition::GetCategory(cunit) != "Length") + { + G4Exception("G4GDMLParser::ImportRegions()", "InvalidRead", + FatalException, "Invalid unit for length!"); + } + G4double cut = + eval.Evaluate(cvalue) * G4UnitDefinition::GetValueOf(cunit); + pcuts->SetProductionCut(cut, "e+"); + } + else if(tag == "gamcut") + { + const G4String& cvalue = raux->value; + const G4String& cunit = raux->unit; + if(G4UnitDefinition::GetCategory(cunit) != "Length") + { + G4Exception("G4GDMLParser::ImportRegions()", "InvalidRead", + FatalException, "Invalid unit for length!"); + } + G4double cut = + eval.Evaluate(cvalue) * G4UnitDefinition::GetValueOf(cunit); + pcuts->SetProductionCut(cut, "gamma"); + } + else if(tag == "ulimits") + { + G4double ustepMax = DBL_MAX, utrakMax = DBL_MAX, utimeMax = DBL_MAX; + G4double uekinMin = 0., urangMin = 0.; + const G4String& ulname = raux->value; + for(auto uaux = raux->auxList->cbegin(); + uaux != raux->auxList->cend(); ++uaux) + { + const G4String& ultag = uaux->type; const G4String& uvalue = uaux->value; - const G4String& uunit = uaux->unit; + const G4String& uunit = uaux->unit; G4double ulvalue = eval.Evaluate(uvalue) * eval.Evaluate(uunit); - if (ultag=="ustepMax") { ustepMax = ulvalue; } else - if (ultag=="utrakMax") { utrakMax = ulvalue; } else - if (ultag=="utimeMax") { utimeMax = ulvalue; } else - if (ultag=="uekinMin") { uekinMin = ulvalue; } else - if (ultag=="urangMin") { urangMin = ulvalue; } + if(ultag == "ustepMax") + { + ustepMax = ulvalue; + } + else if(ultag == "utrakMax") + { + utrakMax = ulvalue; + } + else if(ultag == "utimeMax") + { + utimeMax = ulvalue; + } + else if(ultag == "uekinMin") + { + uekinMin = ulvalue; + } + else if(ultag == "urangMin") + { + urangMin = ulvalue; + } else { - G4Exception("G4GDMLParser::ImportRegions()", - "ReadError", FatalException, - "Invalid definition of user-limits!"); + G4Exception("G4GDMLParser::ImportRegions()", "ReadError", + FatalException, "Invalid definition of user-limits!"); } } - G4UserLimits* ulimits = new G4UserLimits(ulname, ustepMax, utrakMax, - utimeMax, uekinMin, urangMin); + G4UserLimits* ulimits = new G4UserLimits( + ulname, ustepMax, utrakMax, utimeMax, uekinMin, urangMin); aRegion->SetUserLimits(ulimits); } - else continue; // Ignore unknown tags + else + continue; // Ignore unknown tags } } } } +// -------------------------------------------------------------------- void G4GDMLParser::ExportRegions(G4bool storeReferences) { - G4RegionStore* rstore = G4RegionStore::GetInstance(); + G4RegionStore* rstore = G4RegionStore::GetInstance(); G4ReflectionFactory* reflFactory = G4ReflectionFactory::Instance(); - for (size_t i=0; isize(); ++i) // Skip default regions associated to worlds + for(std::size_t i = 0; i < rstore->size(); ++i) + // Skip default regions associated to worlds { const G4String& tname = (*rstore)[i]->GetName(); - if (tname.contains("DefaultRegionForParallelWorld")) continue; - const G4String& rname = writer->GenerateName(tname,(*rstore)[i]); - rlist = new G4GDMLAuxListType(); - G4GDMLAuxStructType raux = {"Region", rname, "", rlist}; - std::vector::iterator rlvol_iter - = (*rstore)[i]->GetRootLogicalVolumeIterator(); - for (size_t j=0; j<(*rstore)[i]->GetNumberOfRootVolumes(); ++j) + if(tname.contains("DefaultRegionForParallelWorld")) + continue; + const G4String& rname = writer->GenerateName(tname, (*rstore)[i]); + rlist = new G4GDMLAuxListType(); + G4GDMLAuxStructType raux = { "Region", rname, "", rlist }; + auto rlvol_iter = (*rstore)[i]->GetRootLogicalVolumeIterator(); + for(std::size_t j = 0; j < (*rstore)[i]->GetNumberOfRootVolumes(); ++j) { G4LogicalVolume* rlvol = *rlvol_iter; - if(reflFactory->IsReflected(rlvol)) continue; + if(reflFactory->IsReflected(rlvol)) + continue; G4String vname = writer->GenerateName(rlvol->GetName(), rlvol); - if (!storeReferences) { reader->StripName(vname); } - G4GDMLAuxStructType rsubaux = {"volume", vname, "", 0}; + if(!storeReferences) + { + reader->StripName(vname); + } + G4GDMLAuxStructType rsubaux = { "volume", vname, "", 0 }; rlist->push_back(rsubaux); - rlvol_iter++; + ++rlvol_iter; } - G4double gam_cut = (*rstore)[i]->GetProductionCuts()->GetProductionCut("gamma"); - G4GDMLAuxStructType caux1 = {"gamcut", eval.ConvertToString(gam_cut), "mm", 0}; + G4double gam_cut + = (*rstore)[i]->GetProductionCuts()->GetProductionCut("gamma"); + G4GDMLAuxStructType caux1 + = { "gamcut", eval.ConvertToString(gam_cut), "mm", 0 }; rlist->push_back(caux1); G4double e_cut = (*rstore)[i]->GetProductionCuts()->GetProductionCut("e-"); - G4GDMLAuxStructType caux2 = {"ecut", eval.ConvertToString(e_cut), "mm", 0}; + G4GDMLAuxStructType caux2 + = { "ecut", eval.ConvertToString(e_cut), "mm", 0 }; rlist->push_back(caux2); - G4double pos_cut = (*rstore)[i]->GetProductionCuts()->GetProductionCut("e+"); - G4GDMLAuxStructType caux3 = {"poscut", eval.ConvertToString(pos_cut), "mm", 0}; + G4double pos_cut + = (*rstore)[i]->GetProductionCuts()->GetProductionCut("e+"); + G4GDMLAuxStructType caux3 + = { "poscut", eval.ConvertToString(pos_cut), "mm", 0 }; rlist->push_back(caux3); - G4double p_cut = (*rstore)[i]->GetProductionCuts()->GetProductionCut("proton"); - G4GDMLAuxStructType caux4 = {"pcut", eval.ConvertToString(p_cut), "mm", 0}; + G4double p_cut + = (*rstore)[i]->GetProductionCuts()->GetProductionCut("proton"); + G4GDMLAuxStructType caux4 + = { "pcut", eval.ConvertToString(p_cut), "mm", 0 }; rlist->push_back(caux4); - if ((*rstore)[i]->GetUserLimits()) + if((*rstore)[i]->GetUserLimits()) { const G4Track fake_trk; - ullist = new G4GDMLAuxListType(); - const G4String& utype = (*rstore)[i]->GetUserLimits()->GetType(); - G4GDMLAuxStructType uaux = {"ulimits", utype, "mm", ullist}; - G4double max_step = (*rstore)[i]->GetUserLimits()->GetMaxAllowedStep(fake_trk); - G4GDMLAuxStructType ulaux1 = {"ustepMax", eval.ConvertToString(max_step), "mm", 0}; + ullist = new G4GDMLAuxListType(); + const G4String& utype = (*rstore)[i]->GetUserLimits()->GetType(); + G4GDMLAuxStructType uaux = { "ulimits", utype, "mm", ullist }; + G4double max_step + = (*rstore)[i]->GetUserLimits()->GetMaxAllowedStep(fake_trk); + G4GDMLAuxStructType ulaux1 + = { "ustepMax", eval.ConvertToString(max_step), "mm", 0 }; ullist->push_back(ulaux1); - G4double max_trk = (*rstore)[i]->GetUserLimits()->GetUserMaxTrackLength(fake_trk); - G4GDMLAuxStructType ulaux2 = {"utrakMax", eval.ConvertToString(max_trk), "mm", 0}; + G4double max_trk + = (*rstore)[i]->GetUserLimits()->GetUserMaxTrackLength(fake_trk); + G4GDMLAuxStructType ulaux2 + = { "utrakMax", eval.ConvertToString(max_trk), "mm", 0 }; ullist->push_back(ulaux2); - G4double max_time = (*rstore)[i]->GetUserLimits()->GetUserMaxTime(fake_trk); - G4GDMLAuxStructType ulaux3 = {"utimeMax", eval.ConvertToString(max_time), "mm", 0}; + G4double max_time + = (*rstore)[i]->GetUserLimits()->GetUserMaxTime(fake_trk); + G4GDMLAuxStructType ulaux3 + = { "utimeMax", eval.ConvertToString(max_time), "mm", 0 }; ullist->push_back(ulaux3); - G4double min_ekin = (*rstore)[i]->GetUserLimits()->GetUserMinEkine(fake_trk); - G4GDMLAuxStructType ulaux4 = {"uekinMin", eval.ConvertToString(min_ekin), "mm", 0}; + G4double min_ekin + = (*rstore)[i]->GetUserLimits()->GetUserMinEkine(fake_trk); + G4GDMLAuxStructType ulaux4 + = { "uekinMin", eval.ConvertToString(min_ekin), "mm", 0 }; ullist->push_back(ulaux4); - G4double min_rng = (*rstore)[i]->GetUserLimits()->GetUserMinRange(fake_trk); - G4GDMLAuxStructType ulaux5 = {"urangMin", eval.ConvertToString(min_rng), "mm", 0}; + G4double min_rng + = (*rstore)[i]->GetUserLimits()->GetUserMinRange(fake_trk); + G4GDMLAuxStructType ulaux5 + = { "urangMin", eval.ConvertToString(min_rng), "mm", 0 }; ullist->push_back(ulaux5); rlist->push_back(uaux); } diff --git a/source/persistency/gdml/src/G4GDMLRead.cc b/source/persistency/gdml/src/G4GDMLRead.cc index 51f0f81ed8..150a75f564 100644 --- a/source/persistency/gdml/src/G4GDMLRead.cc +++ b/source/persistency/gdml/src/G4GDMLRead.cc @@ -23,12 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLRead implementation // -// class G4GDMLRead Implementation -// -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- #include "globals.hh" @@ -41,437 +39,520 @@ #include "G4LogicalVolumeStore.hh" #include "G4PhysicalVolumeStore.hh" +// -------------------------------------------------------------------- G4GDMLRead::G4GDMLRead() - : validate(true), check(false), dostrip(true), inLoop(0), loopCount(0) { - // Make sure units are defined. - G4UnitDefinition::GetUnitsTable(); + // Make sure units are defined. + G4UnitDefinition::GetUnitsTable(); } +// -------------------------------------------------------------------- G4GDMLRead::~G4GDMLRead() { } +// -------------------------------------------------------------------- G4String G4GDMLRead::Transcode(const XMLCh* const toTranscode) { - char* char_str = xercesc::XMLString::transcode(toTranscode); - G4String my_str(char_str); - xercesc::XMLString::release(&char_str); - return my_str; + char* char_str = xercesc::XMLString::transcode(toTranscode); + G4String my_str(char_str); + xercesc::XMLString::release(&char_str); + return my_str; } +// -------------------------------------------------------------------- void G4GDMLRead::OverlapCheck(G4bool flag) { - check = flag; + check = flag; } +// -------------------------------------------------------------------- G4String G4GDMLRead::GenerateName(const G4String& nameIn, G4bool strip) { - G4String nameOut(nameIn); + G4String nameOut(nameIn); - if (inLoop>0) - { - nameOut = eval.SolveBrackets(nameOut); - } - if (strip) { StripName(nameOut); } - - return nameOut; + if(inLoop > 0) + { + nameOut = eval.SolveBrackets(nameOut); + } + if(strip) + { + StripName(nameOut); + } + + return nameOut; } +// -------------------------------------------------------------------- void G4GDMLRead::GeneratePhysvolName(const G4String& nameIn, G4VPhysicalVolume* physvol) { - G4String nameOut(nameIn); + G4String nameOut(nameIn); - if (nameIn.empty()) - { - std::stringstream stream; - stream << physvol->GetLogicalVolume()->GetName() << "_PV"; - nameOut = stream.str(); - } - nameOut = eval.SolveBrackets(nameOut); + if(nameIn.empty()) + { + std::stringstream stream; + stream << physvol->GetLogicalVolume()->GetName() << "_PV"; + nameOut = stream.str(); + } + nameOut = eval.SolveBrackets(nameOut); - physvol->SetName(nameOut); + physvol->SetName(nameOut); } +// -------------------------------------------------------------------- G4String G4GDMLRead::Strip(const G4String& name) const { G4String sname(name); return sname.remove(sname.find("0x")); } +// -------------------------------------------------------------------- void G4GDMLRead::StripName(G4String& name) const { name.remove(name.find("0x")); } +// -------------------------------------------------------------------- void G4GDMLRead::StripNames() const { // Strips off names of volumes, solids elements and materials from possible // reference pointers or IDs attached to their original identifiers. - G4PhysicalVolumeStore* pvols = G4PhysicalVolumeStore::GetInstance(); - G4LogicalVolumeStore* lvols = G4LogicalVolumeStore::GetInstance(); - G4SolidStore* solids = G4SolidStore::GetInstance(); - const G4ElementTable* elements = G4Element::GetElementTable(); + G4PhysicalVolumeStore* pvols = G4PhysicalVolumeStore::GetInstance(); + G4LogicalVolumeStore* lvols = G4LogicalVolumeStore::GetInstance(); + G4SolidStore* solids = G4SolidStore::GetInstance(); + const G4ElementTable* elements = G4Element::GetElementTable(); const G4MaterialTable* materials = G4Material::GetMaterialTable(); G4cout << "Stripping off GDML names of materials, solids and volumes ..." << G4endl; G4String sname; - size_t i; + std::size_t i; // Solids... // - for (i=0; isize(); ++i) + for(i = 0; i < solids->size(); ++i) { G4VSolid* psol = (*solids)[i]; - sname = psol->GetName(); + sname = psol->GetName(); StripName(sname); psol->SetName(sname); } // Logical volumes... // - for (i=0; isize(); ++i) + for(i = 0; i < lvols->size(); ++i) { G4LogicalVolume* lvol = (*lvols)[i]; - sname = lvol->GetName(); + sname = lvol->GetName(); StripName(sname); lvol->SetName(sname); } // Physical volumes... // - for (i=0; isize(); ++i) + for(i = 0; i < pvols->size(); ++i) { G4VPhysicalVolume* pvol = (*pvols)[i]; - sname = pvol->GetName(); + sname = pvol->GetName(); StripName(sname); pvol->SetName(sname); } // Materials... // - for (i=0; isize(); ++i) + for(i = 0; i < materials->size(); ++i) { G4Material* pmat = (*materials)[i]; - sname = pmat->GetName(); + sname = pmat->GetName(); StripName(sname); pmat->SetName(sname); } // Elements... // - for (i=0; isize(); ++i) + for(i = 0; i < elements->size(); ++i) { G4Element* pelm = (*elements)[i]; - sname = pelm->GetName(); + sname = pelm->GetName(); StripName(sname); pelm->SetName(sname); } } -void G4GDMLRead::LoopRead(const xercesc::DOMElement* const element, - void(G4GDMLRead::*func)(const xercesc::DOMElement* const)) +// -------------------------------------------------------------------- +void G4GDMLRead::LoopRead( const xercesc::DOMElement* const element, + void (G4GDMLRead::*func)(const xercesc::DOMElement* const)) { - G4String var; - G4String from; - G4String to; - G4String step; + G4String var; + G4String from; + G4String to; + G4String step; - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLRead::LoopRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; - } - const G4String attribute_name = Transcode(attribute->getName()); - const G4String attribute_value = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(!attribute) + { + G4Exception("G4GDMLRead::LoopRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attribute_name = Transcode(attribute->getName()); + const G4String attribute_value = Transcode(attribute->getValue()); - if (attribute_name=="for") { var = attribute_value; } else - if (attribute_name=="from") { from = attribute_value; } else - if (attribute_name=="to") { to = attribute_value; } else - if (attribute_name=="step") { step = attribute_value; } - } + if(attribute_name == "for") + { + var = attribute_value; + } + else if(attribute_name == "from") + { + from = attribute_value; + } + else if(attribute_name == "to") + { + to = attribute_value; + } + else if(attribute_name == "step") + { + step = attribute_value; + } + } - if (var.empty()) - { - G4Exception("G4GDMLRead::loopRead()", "InvalidRead", - FatalException, "No variable is determined for loop!"); - } + if(var.empty()) + { + G4Exception("G4GDMLRead::loopRead()", "InvalidRead", FatalException, + "No variable is determined for loop!"); + } - if (!eval.IsVariable(var)) - { - G4Exception("G4GDMLRead::loopRead()", "InvalidRead", - FatalException, "Variable is not defined in loop!"); - } + if(!eval.IsVariable(var)) + { + G4Exception("G4GDMLRead::loopRead()", "InvalidRead", FatalException, + "Variable is not defined in loop!"); + } - G4int _var = eval.EvaluateInteger(var); - G4int _from = eval.EvaluateInteger(from); - G4int _to = eval.EvaluateInteger(to); - G4int _step = eval.EvaluateInteger(step); - - if (!from.empty()) { _var = _from; } + G4int _var = eval.EvaluateInteger(var); + G4int _from = eval.EvaluateInteger(from); + G4int _to = eval.EvaluateInteger(to); + G4int _step = eval.EvaluateInteger(step); - if (_from == _to) - { - G4Exception("G4GDMLRead::loopRead()", "InvalidRead", - FatalException, "Empty loop!"); - } - if ((_from < _to) && (_step <= 0)) - { - G4Exception("G4GDMLRead::loopRead()", "InvalidRead", - FatalException, "Infinite loop!"); - } - if ((_from > _to) && (_step >= 0)) - { - G4Exception("G4GDMLRead::loopRead()", "InvalidRead", - FatalException, "Infinite loop!"); - } + if(!from.empty()) + { + _var = _from; + } - inLoop++; + if((_from < _to) && (_step <= 0)) + { + G4Exception("G4GDMLRead::loopRead()", "InvalidRead", FatalException, + "Infinite loop!"); + } + if((_from > _to) && (_step >= 0)) + { + G4Exception("G4GDMLRead::loopRead()", "InvalidRead", FatalException, + "Infinite loop!"); + } - while (_var <= _to) - { - eval.SetVariable(var,_var); - (this->*func)(element); - _var += _step; - loopCount++; - } + ++inLoop; - inLoop--; - if (!inLoop) { loopCount = 0; } + while(_var <= _to) + { + eval.SetVariable(var, _var); + (this->*func)(element); + _var += _step; + ++loopCount; + } + + --inLoop; + if(!inLoop) + { + loopCount = 0; + } } -G4GDMLAuxStructType G4GDMLRead:: -AuxiliaryRead(const xercesc::DOMElement* const auxiliaryElement) +// -------------------------------------------------------------------- +G4GDMLAuxStructType G4GDMLRead::AuxiliaryRead( + const xercesc::DOMElement* const auxiliaryElement) { - G4GDMLAuxStructType auxstruct = {"","","",0}; - G4GDMLAuxListType* auxList=0; - - const xercesc::DOMNamedNodeMap* const attributes - = auxiliaryElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + G4GDMLAuxStructType auxstruct = { "", "", "", 0 }; + G4GDMLAuxListType* auxList = nullptr; - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + const xercesc::DOMNamedNodeMap* const attributes = + auxiliaryElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(!attribute) + { + G4Exception("G4GDMLRead::AuxiliaryRead()", "InvalidRead", FatalException, + "No attribute found!"); + return auxstruct; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "auxtype") + { + auxstruct.type = attValue; + } + else if(attName == "auxvalue") + { + auxstruct.value = attValue; + } + else if(attName == "auxunit") + { + auxstruct.unit = attValue; + } + } + + for(xercesc::DOMNode* iter = auxiliaryElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } + + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(!child) + { + G4Exception("G4GDMLRead::AuxiliaryRead()", "InvalidRead", FatalException, + "No child found!"); + break; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "auxiliary") + { + if(!auxList) { - G4Exception("G4GDMLRead::AuxiliaryRead()", - "InvalidRead", FatalException, "No attribute found!"); - return auxstruct; + auxList = new G4GDMLAuxListType; } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + auxList->push_back(AuxiliaryRead(child)); + } + } - if (attName=="auxtype") { auxstruct.type = attValue; } else - if (attName=="auxvalue") { auxstruct.value = attValue; } else - if (attName=="auxunit") { auxstruct.unit = attValue; } - } + if(auxList) + { + auxstruct.auxList = auxList; + } - for (xercesc::DOMNode* iter = auxiliaryElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLRead::AuxiliaryRead()", - "InvalidRead", FatalException, "No child found!"); - break; - } - const G4String tag = Transcode(child->getTagName()); - - if (tag=="auxiliary") - { - if(!auxList) { auxList = new G4GDMLAuxListType; } - auxList->push_back(AuxiliaryRead(child)); - } - } - - if (auxList) { auxstruct.auxList = auxList; } - - return auxstruct; + return auxstruct; } +// -------------------------------------------------------------------- void G4GDMLRead::UserinfoRead(const xercesc::DOMElement* const userinfoElement) { #ifdef G4VERBOSE - G4cout << "G4GDML: Reading userinfo..." << G4endl; + G4cout << "G4GDML: Reading userinfo..." << G4endl; #endif - for (xercesc::DOMNode* iter = userinfoElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = userinfoElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLRead::UserinfoRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(!child) + { + G4Exception("G4GDMLRead::UserinfoRead()", "InvalidRead", FatalException, + "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (tag=="auxiliary") - { - auxGlobalList.push_back(AuxiliaryRead(child)); - } - else - { - G4String error_msg = "Unknown tag in structure: " + tag; - G4Exception("G4GDMLRead::UserinfoRead()", - "ReadError", FatalException, error_msg); - } - } + if(tag == "auxiliary") + { + auxGlobalList.push_back(AuxiliaryRead(child)); + } + else + { + G4String error_msg = "Unknown tag in structure: " + tag; + G4Exception("G4GDMLRead::UserinfoRead()", "ReadError", FatalException, + error_msg); + } + } } +// -------------------------------------------------------------------- void G4GDMLRead::ExtensionRead(const xercesc::DOMElement* const) { - G4String error_msg = "No handle to user-code for parsing extensions!"; - G4Exception("G4GDMLRead::ExtensionRead()", - "NotImplemented", JustWarning, error_msg); + G4String error_msg = "No handle to user-code for parsing extensions!"; + G4Exception("G4GDMLRead::ExtensionRead()", "NotImplemented", JustWarning, + error_msg); } -void G4GDMLRead::Read(const G4String& fileName, - G4bool validation, - G4bool isModule, - G4bool strip) +// -------------------------------------------------------------------- +void G4GDMLRead::Read(const G4String& fileName, G4bool validation, + G4bool isModule, G4bool strip) { - dostrip = strip; + dostrip = strip; #ifdef G4VERBOSE - if (isModule) - { - G4cout << "G4GDML: Reading module '" << fileName << "'..." << G4endl; - } - else - { - G4cout << "G4GDML: Reading '" << fileName << "'..." << G4endl; - } + if(isModule) + { + G4cout << "G4GDML: Reading module '" << fileName << "'..." << G4endl; + } + else + { + G4cout << "G4GDML: Reading '" << fileName << "'..." << G4endl; + } #endif - inLoop = 0; - validate = validation; + inLoop = 0; + validate = validation; - xercesc::ErrorHandler* handler = new G4GDMLErrorHandler(!validate); - xercesc::XercesDOMParser* parser = new xercesc::XercesDOMParser; + xercesc::ErrorHandler* handler = new G4GDMLErrorHandler(!validate); + xercesc::XercesDOMParser* parser = new xercesc::XercesDOMParser; - if (validate) - { - parser->setValidationScheme(xercesc::XercesDOMParser::Val_Always); - } - parser->setValidationSchemaFullChecking(validate); - parser->setCreateEntityReferenceNodes(false); - // Entities will be automatically resolved by Xerces + if(validate) + { + parser->setValidationScheme(xercesc::XercesDOMParser::Val_Always); + } + parser->setValidationSchemaFullChecking(validate); + parser->setCreateEntityReferenceNodes(false); + // Entities will be automatically resolved by Xerces - parser->setDoNamespaces(true); - parser->setDoSchema(validate); - parser->setErrorHandler(handler); + parser->setDoNamespaces(true); + parser->setDoSchema(validate); + parser->setErrorHandler(handler); - try { parser->parse(fileName.c_str()); } - catch (const xercesc::XMLException &e) - { G4cout << "G4GDML: " << Transcode(e.getMessage()) << G4endl; } - catch (const xercesc::DOMException &e) - { G4cout << "G4GDML: " << Transcode(e.getMessage()) << G4endl; } + try + { + parser->parse(fileName.c_str()); + } catch(const xercesc::XMLException& e) + { + G4cout << "G4GDML: " << Transcode(e.getMessage()) << G4endl; + } catch(const xercesc::DOMException& e) + { + G4cout << "G4GDML: " << Transcode(e.getMessage()) << G4endl; + } - xercesc::DOMDocument* doc = parser->getDocument(); + xercesc::DOMDocument* doc = parser->getDocument(); - if (!doc) - { - G4String error_msg = "Unable to open document: " + fileName; - G4Exception("G4GDMLRead::Read()", "InvalidRead", - FatalException, error_msg); - return; - } - xercesc::DOMElement* element = doc->getDocumentElement(); + if(doc == nullptr) + { + G4String error_msg = "Unable to open document: " + fileName; + G4Exception("G4GDMLRead::Read()", "InvalidRead", FatalException, error_msg); + return; + } + xercesc::DOMElement* element = doc->getDocumentElement(); - if (!element) - { - std::ostringstream message; - message << "ERROR - Empty document or unable to validate schema!" << G4endl - << " Check Internet connection is ON in case of schema" - << G4endl - << " validation enabled and location defined as URL in" - << G4endl - << " the GDML file - " << fileName << " - being imported!" - << G4endl - << " Otherwise, verify GDML schema server is reachable!"; - G4Exception("G4GDMLRead::Read()", "InvalidRead", FatalException, message); - return; - } + if(element == nullptr ) + { + std::ostringstream message; + message << "ERROR - Empty document or unable to validate schema!" << G4endl + << " Check Internet connection is ON in case of schema" + << G4endl + << " validation enabled and location defined as URL in" + << G4endl << " the GDML file - " << fileName + << " - being imported!" << G4endl + << " Otherwise, verify GDML schema server is reachable!"; + G4Exception("G4GDMLRead::Read()", "InvalidRead", FatalException, message); + return; + } - for (xercesc::DOMNode* iter = element->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = element->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLRead::Read()", "InvalidRead", - FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLRead::Read()", "InvalidRead", FatalException, + "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (tag=="define") { DefineRead(child); } else - if (tag=="materials") { MaterialsRead(child); } else - if (tag=="solids") { SolidsRead(child); } else - if (tag=="setup") { SetupRead(child); } else - if (tag=="structure") { StructureRead(child); } else - if (tag=="userinfo") { UserinfoRead(child); } else - if (tag=="extension") { ExtensionRead(child); } - else - { - G4String error_msg = "Unknown tag in gdml: " + tag; - G4Exception("G4GDMLRead::Read()", "InvalidRead", - FatalException, error_msg); - } - } + if(tag == "define") + { + DefineRead(child); + } + else if(tag == "materials") + { + MaterialsRead(child); + } + else if(tag == "solids") + { + SolidsRead(child); + } + else if(tag == "setup") + { + SetupRead(child); + } + else if(tag == "structure") + { + StructureRead(child); + } + else if(tag == "userinfo") + { + UserinfoRead(child); + } + else if(tag == "extension") + { + ExtensionRead(child); + } + else + { + G4String error_msg = "Unknown tag in gdml: " + tag; + G4Exception("G4GDMLRead::Read()", "InvalidRead", FatalException, + error_msg); + } + } - delete parser; - delete handler; + delete parser; + delete handler; - if (isModule) - { + if(isModule) + { #ifdef G4VERBOSE - G4cout << "G4GDML: Reading module '" << fileName << "' done!" << G4endl; + G4cout << "G4GDML: Reading module '" << fileName << "' done!" << G4endl; #endif - } - else - { - G4cout << "G4GDML: Reading '" << fileName << "' done!" << G4endl; - if (strip) { StripNames(); } - } + } + else + { + G4cout << "G4GDML: Reading '" << fileName << "' done!" << G4endl; + if(strip) + { + StripNames(); + } + } } +// -------------------------------------------------------------------- const G4GDMLAuxListType* G4GDMLRead::GetAuxList() const { - return &auxGlobalList; + return &auxGlobalList; } diff --git a/source/persistency/gdml/src/G4GDMLReadDefine.cc b/source/persistency/gdml/src/G4GDMLReadDefine.cc index 0ae335026b..21bac10ba3 100644 --- a/source/persistency/gdml/src/G4GDMLReadDefine.cc +++ b/source/persistency/gdml/src/G4GDMLReadDefine.cc @@ -23,619 +23,805 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLReadDefine implementation // -// class G4GDMLReadDefine Implementation -// -// Original author: Zoltan Torzsok, November 2007 -// +// Author: Zoltan Torzsok, November 2007 // -------------------------------------------------------------------- #include "G4GDMLReadDefine.hh" #include "G4UnitsTable.hh" +// G4GDMLMatrix ------------------------------------------------------- + +// -------------------------------------------------------------------- G4GDMLMatrix::G4GDMLMatrix() - : m(0), rows(0), cols(0) { } -G4GDMLMatrix::G4GDMLMatrix(size_t rows0, size_t cols0) -{ - if ((rows0==0) || (cols0==0)) - { - G4Exception("G4GDMLMatrix::G4GDMLMatrix(r,c)", "InvalidSetup", - FatalException, "Zero indeces as arguments!?"); - } - rows = rows0; - cols = cols0; - m = new G4double[rows*cols]; +// -------------------------------------------------------------------- +G4GDMLMatrix::G4GDMLMatrix(std::size_t rows0, std::size_t cols0) +{ + if((rows0 == 0) || (cols0 == 0)) + { + G4Exception("G4GDMLMatrix::G4GDMLMatrix(r,c)", "InvalidSetup", + FatalException, "Zero indices as arguments!?"); + } + rows = rows0; + cols = cols0; + m = new G4double[rows * cols]; } +// -------------------------------------------------------------------- G4GDMLMatrix::G4GDMLMatrix(const G4GDMLMatrix& rhs) - : m(0), rows(0), cols(0) { - if (rhs.m) - { - rows = rhs.rows; - cols = rhs.cols; - m = new G4double[rows*cols]; - for (size_t i=0; i=rows || c>=cols) - { - G4Exception("G4GDMLMatrix::set()", "InvalidSetup", - FatalException, "Index out of range!"); - } - m[cols*r+c] = a; -} - -G4double G4GDMLMatrix::Get(size_t r,size_t c) const -{ - if (r>=rows || c>=cols) - { - G4Exception("G4GDMLMatrix::get()", "InvalidSetup", - FatalException, "Index out of range!"); - } - return m[cols*r+c]; -} - -size_t G4GDMLMatrix::GetRows() const +// -------------------------------------------------------------------- +void G4GDMLMatrix::Set(std::size_t r, std::size_t c, G4double a) { - return rows; + if(r >= rows || c >= cols) + { + G4Exception("G4GDMLMatrix::set()", "InvalidSetup", FatalException, + "Index out of range!"); + } + m[cols * r + c] = a; } -size_t G4GDMLMatrix::GetCols() const +// -------------------------------------------------------------------- +G4double G4GDMLMatrix::Get(std::size_t r, std::size_t c) const { - return cols; + if(r >= rows || c >= cols) + { + G4Exception("G4GDMLMatrix::get()", "InvalidSetup", FatalException, + "Index out of range!"); + } + return m[cols * r + c]; } -G4GDMLReadDefine::G4GDMLReadDefine() : G4GDMLRead() +// -------------------------------------------------------------------- +std::size_t G4GDMLMatrix::GetRows() const +{ + return rows; +} + +// -------------------------------------------------------------------- +std::size_t G4GDMLMatrix::GetCols() const +{ + return cols; +} + +// G4GDMLReadDefine --------------------------------------------------- + +// -------------------------------------------------------------------- +G4GDMLReadDefine::G4GDMLReadDefine() + : G4GDMLRead() { } +// -------------------------------------------------------------------- G4GDMLReadDefine::~G4GDMLReadDefine() { } -G4RotationMatrix -G4GDMLReadDefine::GetRotationMatrix(const G4ThreeVector& angles) +// -------------------------------------------------------------------- +G4RotationMatrix G4GDMLReadDefine::GetRotationMatrix( + const G4ThreeVector& angles) { - G4RotationMatrix rot; + G4RotationMatrix rot; - rot.rotateX(angles.x()); - rot.rotateY(angles.y()); - rot.rotateZ(angles.z()); - rot.rectify(); // Rectify matrix from possible roundoff errors + rot.rotateX(angles.x()); + rot.rotateY(angles.y()); + rot.rotateZ(angles.z()); + rot.rectify(); // Rectify matrix from possible roundoff errors - return rot; + return rot; } -void -G4GDMLReadDefine::ConstantRead(const xercesc::DOMElement* const constantElement) +// -------------------------------------------------------------------- +void G4GDMLReadDefine::ConstantRead( + const xercesc::DOMElement* const constantElement) { - G4String name = ""; - G4double value = 0.0; + G4String name = ""; + G4double value = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = constantElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + constantElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* node = attributes->item(attribute_index); - if (node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { continue; } + if(node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(node); + if(attribute == nullptr) + { + G4Exception("G4GDMLRead::ConstantRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = attValue; + } + else if(attName == "value") + { + value = eval.Evaluate(attValue); + } + } + + eval.DefineConstant(name, value); +} + +// -------------------------------------------------------------------- +void G4GDMLReadDefine::ExpressionRead( + const xercesc::DOMElement* const expElement) +{ + G4String name = ""; + G4double value = 0.0; + + const xercesc::DOMNamedNodeMap* const attributes = + expElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); + + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* node = attributes->item(attribute_index); + + if(node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(node); + if(attribute == nullptr) + { + G4Exception("G4GDMLRead::ExpressionRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = attValue; + } + } + + const G4String expValue = Transcode(expElement->getTextContent()); + value = eval.Evaluate(expValue); + eval.DefineConstant(name, value); +} + +// -------------------------------------------------------------------- +void G4GDMLReadDefine::MatrixRead( + const xercesc::DOMElement* const matrixElement) +{ + G4String name = ""; + G4int coldim = 0; + G4String values = ""; + + const xercesc::DOMNamedNodeMap* const attributes = + matrixElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); + + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* node = attributes->item(attribute_index); + + if(node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(node); + if(attribute == nullptr) + { + G4Exception("G4GDMLRead::MatrixRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "coldim") + { + coldim = eval.EvaluateInteger(attValue); + } + else if(attName == "values") + { + values = attValue; + } + } + + std::stringstream MatrixValueStream(values); + std::vector valueList; + + while(!MatrixValueStream.eof()) + { + G4String MatrixValue; + MatrixValueStream >> MatrixValue; + valueList.push_back(eval.Evaluate(MatrixValue)); + } + + eval.DefineMatrix(name, coldim, valueList); + + G4GDMLMatrix matrix(valueList.size() / coldim, coldim); + + for(std::size_t i = 0; i < valueList.size(); ++i) + { + matrix.Set(i / coldim, i % coldim, valueList[i]); + } + + matrixMap[name] = matrix; +} + +// -------------------------------------------------------------------- +void G4GDMLReadDefine::PositionRead( + const xercesc::DOMElement* const positionElement) +{ + G4String name = ""; + G4double unit = 1.0; + G4ThreeVector position(0., 0., 0.); + + const xercesc::DOMNamedNodeMap* const attributes = + positionElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); + + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* node = attributes->item(attribute_index); + + if(node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(node); + if(attribute == nullptr) + { + G4Exception("G4GDMLRead::PositionRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "unit") + { + unit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLRead::ConstantRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadDefine::PositionRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "x") + { + position.setX(eval.Evaluate(attValue)); + } + else if(attName == "y") + { + position.setY(eval.Evaluate(attValue)); + } + else if(attName == "z") + { + position.setZ(eval.Evaluate(attValue)); + } + } - if (attName=="name") { name = attValue; } else - if (attName=="value") { value = eval.Evaluate(attValue); } - } - - eval.DefineConstant(name,value); + positionMap[name] = position * unit; } -void -G4GDMLReadDefine::ExpressionRead(const xercesc::DOMElement* const expElement) +// -------------------------------------------------------------------- +void G4GDMLReadDefine::RotationRead( + const xercesc::DOMElement* const rotationElement) { - G4String name = ""; - G4double value = 0.0; + G4String name = ""; + G4double unit = 1.0; + G4ThreeVector rotation(0., 0., 0.); - const xercesc::DOMNamedNodeMap* const attributes - = expElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + rotationElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* node = attributes->item(attribute_index); - if (node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { continue; } + if(node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(node); + if(attribute == nullptr) + { + G4Exception("G4GDMLRead::RotationRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "unit") + { + unit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") { - G4Exception("G4GDMLRead::ExpressionRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadDefine::RotationRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "x") + { + rotation.setX(eval.Evaluate(attValue)); + } + else if(attName == "y") + { + rotation.setY(eval.Evaluate(attValue)); + } + else if(attName == "z") + { + rotation.setZ(eval.Evaluate(attValue)); + } + } - if (attName=="name") { name = attValue; } - } - - const G4String expValue = Transcode(expElement->getTextContent()); - value = eval.Evaluate(expValue); - eval.DefineConstant(name,value); -} - -void -G4GDMLReadDefine::MatrixRead(const xercesc::DOMElement* const matrixElement) -{ - G4String name = ""; - G4int coldim = 0; - G4String values = ""; - - const xercesc::DOMNamedNodeMap* const attributes - = matrixElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); - - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); - - if (node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { continue; } - - const xercesc::DOMAttr* const attribute - = dynamic_cast(node); - if (!attribute) - { - G4Exception("G4GDMLRead::MatrixRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="coldim") { coldim = eval.EvaluateInteger(attValue); } else - if (attName=="values") { values = attValue; } - } - - std::stringstream MatrixValueStream(values); - std::vector valueList; - - while (!MatrixValueStream.eof()) - { - G4String MatrixValue; - MatrixValueStream >> MatrixValue; - valueList.push_back(eval.Evaluate(MatrixValue)); - } - - eval.DefineMatrix(name,coldim,valueList); - - G4GDMLMatrix matrix(valueList.size()/coldim,coldim); - - for (size_t i=0;igetAttributes(); - XMLSize_t attributeCount = attributes->getLength(); - - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); - - if (node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { continue; } - - const xercesc::DOMAttr* const attribute - = dynamic_cast(node); - if (!attribute) - { - G4Exception("G4GDMLRead::PositionRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="unit") { unit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadDefine::PositionRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="x") { position.setX(eval.Evaluate(attValue)); } else - if (attName=="y") { position.setY(eval.Evaluate(attValue)); } else - if (attName=="z") { position.setZ(eval.Evaluate(attValue)); } - } - - positionMap[name] = position*unit; -} - -void -G4GDMLReadDefine::RotationRead(const xercesc::DOMElement* const rotationElement) -{ - G4String name = ""; - G4double unit = 1.0; - G4ThreeVector rotation(0.,0.,0.); - - const xercesc::DOMNamedNodeMap* const attributes - = rotationElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); - - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); - - if (node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { continue; } - - const xercesc::DOMAttr* const attribute - = dynamic_cast(node); - if (!attribute) - { - G4Exception("G4GDMLRead::RotationRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="unit") { unit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadDefine::RotationRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="x") { rotation.setX(eval.Evaluate(attValue)); } else - if (attName=="y") { rotation.setY(eval.Evaluate(attValue)); } else - if (attName=="z") { rotation.setZ(eval.Evaluate(attValue)); } - } - - rotationMap[name] = rotation*unit; + rotationMap[name] = rotation * unit; } +// -------------------------------------------------------------------- void G4GDMLReadDefine::ScaleRead(const xercesc::DOMElement* const scaleElement) { - G4String name = ""; - G4ThreeVector scale(1.0,1.0,1.0); + G4String name = ""; + G4ThreeVector scale(1.0, 1.0, 1.0); - const xercesc::DOMNamedNodeMap* const attributes - = scaleElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + scaleElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* node = attributes->item(attribute_index); - if (node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { continue; } + if(node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(node); - if (!attribute) - { - G4Exception("G4GDMLRead::ScaleRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(node); + if(attribute == nullptr) + { + G4Exception("G4GDMLRead::ScaleRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="x") { scale.setX(eval.Evaluate(attValue)); } else - if (attName=="y") { scale.setY(eval.Evaluate(attValue)); } else - if (attName=="z") { scale.setZ(eval.Evaluate(attValue)); } - } + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "x") + { + scale.setX(eval.Evaluate(attValue)); + } + else if(attName == "y") + { + scale.setY(eval.Evaluate(attValue)); + } + else if(attName == "z") + { + scale.setZ(eval.Evaluate(attValue)); + } + } - scaleMap[name] = scale; + scaleMap[name] = scale; } -void -G4GDMLReadDefine::VariableRead(const xercesc::DOMElement* const variableElement) +// -------------------------------------------------------------------- +void G4GDMLReadDefine::VariableRead( + const xercesc::DOMElement* const variableElement) { - G4String name = ""; - G4double value = 0.0; + G4String name = ""; + G4double value = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = variableElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + variableElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* node = attributes->item(attribute_index); - if (node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { continue; } + if(node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(node); - if (!attribute) - { - G4Exception("G4GDMLRead::VariableRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(node); + if(attribute == nullptr) + { + G4Exception("G4GDMLRead::VariableRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="name") { name = attValue; } else - if (attName=="value") { value = eval.Evaluate(attValue); } - } + if(attName == "name") + { + name = attValue; + } + else if(attName == "value") + { + value = eval.Evaluate(attValue); + } + } - eval.DefineVariable(name,value); + eval.DefineVariable(name, value); } +// -------------------------------------------------------------------- void G4GDMLReadDefine::QuantityRead(const xercesc::DOMElement* const element) { - G4String name = ""; - G4double unit = 1.0; - G4double value = 0.0; + G4String name = ""; + G4double unit = 1.0; + G4double value = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* node = attributes->item(attribute_index); - if (node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { continue; } + if(node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(node); - if (!attribute) - { - G4Exception("G4GDMLRead::QuantityRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(node); + if(attribute == nullptr) + { + G4Exception("G4GDMLRead::QuantityRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="name") { name = attValue; } else - if (attName=="value") { value = eval.Evaluate(attValue); } else - if (attName=="unit") { unit = G4UnitDefinition::GetValueOf(attValue); } - } + if(attName == "name") + { + name = attValue; + } + else if(attName == "value") + { + value = eval.Evaluate(attValue); + } + else if(attName == "unit") + { + unit = G4UnitDefinition::GetValueOf(attValue); + } + } - quantityMap[name] = value*unit; - eval.DefineConstant(name,value*unit); + quantityMap[name] = value * unit; + eval.DefineConstant(name, value * unit); } -void -G4GDMLReadDefine::DefineRead(const xercesc::DOMElement* const defineElement) +// -------------------------------------------------------------------- +void G4GDMLReadDefine::DefineRead( + const xercesc::DOMElement* const defineElement) { #ifdef G4VERBOSE - G4cout << "G4GDML: Reading definitions..." << G4endl; + G4cout << "G4GDML: Reading definitions..." << G4endl; #endif - for (xercesc::DOMNode* iter = defineElement->getFirstChild(); - iter != 0;iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = defineElement->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLRead::DefineRead()", "InvalidRead", - FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLRead::DefineRead()", "InvalidRead", FatalException, + "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (tag=="constant") { ConstantRead(child); } else - if (tag=="matrix") { MatrixRead(child); } else - if (tag=="position") { PositionRead(child); } else - if (tag=="rotation") { RotationRead(child); } else - if (tag=="scale") { ScaleRead(child); } else - if (tag=="variable") { VariableRead(child); } else - if (tag=="quantity") { QuantityRead(child); } else - if (tag=="expression") { ExpressionRead(child); } - else - { - G4String error_msg = "Unknown tag in define: "+tag; - G4Exception("G4GDMLReadDefine::defineRead()", "ReadError", - FatalException, error_msg); - } - } + if(tag == "constant") + { + ConstantRead(child); + } + else if(tag == "matrix") + { + MatrixRead(child); + } + else if(tag == "position") + { + PositionRead(child); + } + else if(tag == "rotation") + { + RotationRead(child); + } + else if(tag == "scale") + { + ScaleRead(child); + } + else if(tag == "variable") + { + VariableRead(child); + } + else if(tag == "quantity") + { + QuantityRead(child); + } + else if(tag == "expression") + { + ExpressionRead(child); + } + else + { + G4String error_msg = "Unknown tag in define: " + tag; + G4Exception("G4GDMLReadDefine::defineRead()", "ReadError", FatalException, + error_msg); + } + } } -void -G4GDMLReadDefine::VectorRead(const xercesc::DOMElement* const vectorElement, - G4ThreeVector& vec) +// -------------------------------------------------------------------- +void G4GDMLReadDefine::VectorRead( + const xercesc::DOMElement* const vectorElement, G4ThreeVector& vec) { - G4double unit = 1.0; + G4double unit = 1.0; - const xercesc::DOMNamedNodeMap* const attributes - = vectorElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + vectorElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLRead::VectorRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLRead::VectorRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="unit") { unit = G4UnitDefinition::GetValueOf(attValue); } else - if (attName=="x") { vec.setX(eval.Evaluate(attValue)); } else - if (attName=="y") { vec.setY(eval.Evaluate(attValue)); } else - if (attName=="z") { vec.setZ(eval.Evaluate(attValue)); } - } + if(attName == "unit") + { + unit = G4UnitDefinition::GetValueOf(attValue); + } + else if(attName == "x") + { + vec.setX(eval.Evaluate(attValue)); + } + else if(attName == "y") + { + vec.setY(eval.Evaluate(attValue)); + } + else if(attName == "z") + { + vec.setZ(eval.Evaluate(attValue)); + } + } - vec *= unit; + vec *= unit; } +// -------------------------------------------------------------------- G4String G4GDMLReadDefine::RefRead(const xercesc::DOMElement* const element) { - G4String ref; + G4String ref; - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLRead::Read()", "InvalidRead", - FatalException, "No attribute found!"); - return ref; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLRead::Read()", "InvalidRead", FatalException, + "No attribute found!"); + return ref; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="ref") { ref = attValue; } - } + if(attName == "ref") + { + ref = attValue; + } + } - return ref; + return ref; } +// -------------------------------------------------------------------- G4bool G4GDMLReadDefine::IsValidID(const G4String& ref) const { - return eval.IsVariable(ref); + return eval.IsVariable(ref); } +// -------------------------------------------------------------------- G4double G4GDMLReadDefine::GetConstant(const G4String& ref) { - return eval.GetConstant(ref); + return eval.GetConstant(ref); } +// -------------------------------------------------------------------- G4double G4GDMLReadDefine::GetVariable(const G4String& ref) { - return eval.GetVariable(ref); + return eval.GetVariable(ref); } +// -------------------------------------------------------------------- G4double G4GDMLReadDefine::GetQuantity(const G4String& ref) { - if (quantityMap.find(ref) == quantityMap.end()) - { - G4String error_msg = "Quantity '"+ref+"' was not found!"; - G4Exception("G4GDMLReadDefine::getQuantity()", "ReadError", - FatalException, error_msg); - } - return quantityMap[ref]; + if(quantityMap.find(ref) == quantityMap.cend()) + { + G4String error_msg = "Quantity '" + ref + "' was not found!"; + G4Exception("G4GDMLReadDefine::getQuantity()", "ReadError", FatalException, + error_msg); + } + return quantityMap[ref]; } +// -------------------------------------------------------------------- G4ThreeVector G4GDMLReadDefine::GetPosition(const G4String& ref) { - if (positionMap.find(ref) == positionMap.end()) - { - G4String error_msg = "Position '"+ref+"' was not found!"; - G4Exception("G4GDMLReadDefine::getPosition()", "ReadError", - FatalException, error_msg); - } - return positionMap[ref]; + if(positionMap.find(ref) == positionMap.cend()) + { + G4String error_msg = "Position '" + ref + "' was not found!"; + G4Exception("G4GDMLReadDefine::getPosition()", "ReadError", FatalException, + error_msg); + } + return positionMap[ref]; } +// -------------------------------------------------------------------- G4ThreeVector G4GDMLReadDefine::GetRotation(const G4String& ref) { - if (rotationMap.find(ref) == rotationMap.end()) - { - G4String error_msg = "Rotation '"+ref+"' was not found!"; - G4Exception("G4GDMLReadDefine::getRotation()", "ReadError", - FatalException, error_msg); - } - return rotationMap[ref]; + if(rotationMap.find(ref) == rotationMap.cend()) + { + G4String error_msg = "Rotation '" + ref + "' was not found!"; + G4Exception("G4GDMLReadDefine::getRotation()", "ReadError", FatalException, + error_msg); + } + return rotationMap[ref]; } +// -------------------------------------------------------------------- G4ThreeVector G4GDMLReadDefine::GetScale(const G4String& ref) { - if (scaleMap.find(ref) == scaleMap.end()) - { - G4String error_msg = "Scale '"+ref+"' was not found!"; - G4Exception("G4GDMLReadDefine::getScale()", "ReadError", - FatalException, error_msg); - } - return scaleMap[ref]; + if(scaleMap.find(ref) == scaleMap.end()) + { + G4String error_msg = "Scale '" + ref + "' was not found!"; + G4Exception("G4GDMLReadDefine::getScale()", "ReadError", FatalException, + error_msg); + } + return scaleMap[ref]; } +// -------------------------------------------------------------------- G4GDMLMatrix G4GDMLReadDefine::GetMatrix(const G4String& ref) { - if (matrixMap.find(ref) == matrixMap.end()) - { - G4String error_msg = "Matrix '"+ref+"' was not found!"; - G4Exception("G4GDMLReadDefine::getMatrix()", "ReadError", - FatalException, error_msg); - } - return matrixMap[ref]; + if(matrixMap.find(ref) == matrixMap.end()) + { + G4String error_msg = "Matrix '" + ref + "' was not found!"; + G4Exception("G4GDMLReadDefine::getMatrix()", "ReadError", FatalException, + error_msg); + } + return matrixMap[ref]; } diff --git a/source/persistency/gdml/src/G4GDMLReadMaterials.cc b/source/persistency/gdml/src/G4GDMLReadMaterials.cc index bfd8cf5855..ec3840f7cc 100644 --- a/source/persistency/gdml/src/G4GDMLReadMaterials.cc +++ b/source/persistency/gdml/src/G4GDMLReadMaterials.cc @@ -23,13 +23,9 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLReadMaterials implementation // -// GEANT4 tag $ Name:$ -// -// class G4GDMLReadMaterials Implementation -// -// Original author: Zoltan Torzsok, November 2007 -// +// Author: Zoltan Torzsok, November 2007 // -------------------------------------------------------------------- #include "G4GDMLReadMaterials.hh" @@ -42,742 +38,950 @@ #include "G4Material.hh" #include "G4NistManager.hh" -G4GDMLReadMaterials::G4GDMLReadMaterials() : G4GDMLReadDefine() +// -------------------------------------------------------------------- +G4GDMLReadMaterials::G4GDMLReadMaterials() + : G4GDMLReadDefine() { } +// -------------------------------------------------------------------- G4GDMLReadMaterials::~G4GDMLReadMaterials() { } -G4double -G4GDMLReadMaterials::AtomRead(const xercesc::DOMElement* const atomElement) +// -------------------------------------------------------------------- +G4double G4GDMLReadMaterials::AtomRead( + const xercesc::DOMElement* const atomElement) { - G4double value = 0.0; - G4double unit = g/mole; + G4double value = 0.0; + G4double unit = g / mole; - const xercesc::DOMNamedNodeMap* const attributes - = atomElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + atomElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadMaterials::AtomRead()", "InvalidRead", + FatalException, "No attribute found!"); + return value; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "value") + { + value = eval.Evaluate(attValue); + } + else if(attName == "unit") + { + unit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Molar mass") { G4Exception("G4GDMLReadMaterials::AtomRead()", "InvalidRead", - FatalException, "No attribute found!"); - return value; + FatalException, "Invalid unit for atomic mass!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + } - if (attName=="value") { value = eval.Evaluate(attValue); } else - if (attName=="unit") {unit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Molar mass") { - G4Exception("G4GDMLReadMaterials::AtomRead()", "InvalidRead", - FatalException, "Invalid unit for atomic mass!"); } - } - } - - return value*unit; + return value * unit; } -G4int G4GDMLReadMaterials:: -CompositeRead(const xercesc::DOMElement* const compositeElement,G4String& ref) +// -------------------------------------------------------------------- +G4int G4GDMLReadMaterials::CompositeRead( + const xercesc::DOMElement* const compositeElement, G4String& ref) { - G4int n = 0; + G4int n = 0; - const xercesc::DOMNamedNodeMap* const attributes - = compositeElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + compositeElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadMaterials::CompositeRead()", "InvalidRead", - FatalException, "No attribute found!"); - return n; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadMaterials::CompositeRead()", "InvalidRead", + FatalException, "No attribute found!"); + return n; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="n") { n = eval.EvaluateInteger(attValue); } else - if (attName=="ref") { ref = attValue; } - } + if(attName == "n") + { + n = eval.EvaluateInteger(attValue); + } + else if(attName == "ref") + { + ref = attValue; + } + } - return n; + return n; } +// -------------------------------------------------------------------- G4double G4GDMLReadMaterials::DRead(const xercesc::DOMElement* const DElement) { - G4double value = 0.0; - G4double unit = g/cm3; + G4double value = 0.0; + G4double unit = g / cm3; - const xercesc::DOMNamedNodeMap* const attributes - = DElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = DElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadMaterials::DRead()", "InvalidRead", FatalException, + "No attribute found!"); + return value; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "value") + { + value = eval.Evaluate(attValue); + } + else if(attName == "unit") + { + unit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Volumic Mass") { G4Exception("G4GDMLReadMaterials::DRead()", "InvalidRead", - FatalException, "No attribute found!"); - return value; + FatalException, "Invalid unit for density!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + } - if (attName=="value") { value = eval.Evaluate(attValue); } else - if (attName=="unit") { - unit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Volumic Mass") { - G4Exception("G4GDMLReadMaterials::DRead()", "InvalidRead", - FatalException, "Invalid unit for density!"); } - } - } - - return value*unit; + return value * unit; } +// -------------------------------------------------------------------- G4double G4GDMLReadMaterials::PRead(const xercesc::DOMElement* const PElement) { - G4double value = STP_Pressure; - G4double unit = hep_pascal; + G4double value = STP_Pressure; + G4double unit = hep_pascal; - const xercesc::DOMNamedNodeMap* const attributes = PElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = PElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadMaterials::PRead()", "InvalidRead", FatalException, + "No attribute found!"); + return value; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "value") + { + value = eval.Evaluate(attValue); + } + else if(attName == "unit") + { + unit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Pressure") { G4Exception("G4GDMLReadMaterials::PRead()", "InvalidRead", - FatalException, "No attribute found!"); - return value; + FatalException, "Invalid unit for pressure!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + } - if (attName=="value") { value = eval.Evaluate(attValue); } else - if (attName=="unit") { unit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Pressure") { - G4Exception("G4GDMLReadMaterials::PRead()", "InvalidRead", - FatalException, "Invalid unit for pressure!"); } - } - } - - return value*unit; + return value * unit; } +// -------------------------------------------------------------------- G4double G4GDMLReadMaterials::TRead(const xercesc::DOMElement* const TElement) { - G4double value = STP_Temperature; - G4double unit = kelvin; + G4double value = STP_Temperature; + G4double unit = kelvin; - const xercesc::DOMNamedNodeMap* const attributes = TElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = TElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadMaterials::TRead()", "InvalidRead", FatalException, + "No attribute found!"); + return value; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "value") + { + value = eval.Evaluate(attValue); + } + else if(attName == "unit") + { + unit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Temperature") { G4Exception("G4GDMLReadMaterials::TRead()", "InvalidRead", - FatalException, "No attribute found!"); - return value; + FatalException, "Invalid unit for temperature!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + } - if (attName=="value") { value = eval.Evaluate(attValue); } else - if (attName=="unit") { unit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Temperature") { - G4Exception("G4GDMLReadMaterials::TRead()", "InvalidRead", - FatalException, "Invalid unit for temperature!"); } - } - } - - return value*unit; + return value * unit; } +// -------------------------------------------------------------------- G4double G4GDMLReadMaterials::MEERead(const xercesc::DOMElement* const PElement) { - G4double value = -1; - G4double unit = eV; + G4double value = -1; + G4double unit = eV; - const xercesc::DOMNamedNodeMap* const attributes = PElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = PElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadMaterials::MEERead()", "InvalidRead", + FatalException, "No attribute found!"); + return value; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "value") + { + value = eval.Evaluate(attValue); + } + else if(attName == "unit") + { + unit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Energy") { G4Exception("G4GDMLReadMaterials::MEERead()", "InvalidRead", - FatalException, "No attribute found!"); - return value; + FatalException, "Invalid unit for energy!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + } - if (attName=="value") { value = eval.Evaluate(attValue); } else - if (attName=="unit") { unit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Energy") { - G4Exception("G4GDMLReadMaterials::MEERead()", "InvalidRead", - FatalException, "Invalid unit for energy!"); } - } - } - - return value*unit; + return value * unit; } -void G4GDMLReadMaterials:: -ElementRead(const xercesc::DOMElement* const elementElement) +// -------------------------------------------------------------------- +void G4GDMLReadMaterials::ElementRead( + const xercesc::DOMElement* const elementElement) { - G4String name; - G4String formula; - G4double a = 0.0; - G4double Z = 0.0; + G4String name; + G4String formula; + G4double a = 0.0; + G4double Z = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = elementElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + elementElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadMaterials::ElementRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadMaterials::ElementRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="formula") { formula = attValue; } else - if (attName=="Z") { Z = eval.Evaluate(attValue); } - } + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "formula") + { + formula = attValue; + } + else if(attName == "Z") + { + Z = eval.Evaluate(attValue); + } + } - G4int nComponents = 0; + G4int nComponents = 0; - for (xercesc::DOMNode* iter = elementElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = elementElement->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadMaterials::ElementRead()", "InvalidRead", - FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadMaterials::ElementRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (tag=="atom") { a = AtomRead(child); } else - if (tag=="fraction") { nComponents++; } - } + if(tag == "atom") + { + a = AtomRead(child); + } + else if(tag == "fraction") + { + nComponents++; + } + } - if (nComponents>0) - { - MixtureRead(elementElement, - new G4Element(Strip(name),formula,nComponents)); - } - else - { - new G4Element(Strip(name),formula,Z,a); - } + if(nComponents > 0) + { + MixtureRead(elementElement, + new G4Element(Strip(name), formula, nComponents)); + } + else + { + new G4Element(Strip(name), formula, Z, a); + } } -G4double G4GDMLReadMaterials:: -FractionRead(const xercesc::DOMElement* const fractionElement, G4String& ref) +// -------------------------------------------------------------------- +G4double G4GDMLReadMaterials::FractionRead( + const xercesc::DOMElement* const fractionElement, G4String& ref) { - G4double n = 0.0; + G4double n = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = fractionElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + fractionElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadMaterials::FractionRead()", "InvalidRead", - FatalException, "No attribute found!"); - return n; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadMaterials::FractionRead()", "InvalidRead", + FatalException, "No attribute found!"); + return n; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="n") { n = eval.Evaluate(attValue); } else - if (attName=="ref") { ref = attValue; } - } + if(attName == "n") + { + n = eval.Evaluate(attValue); + } + else if(attName == "ref") + { + ref = attValue; + } + } - return n; + return n; } -void G4GDMLReadMaterials:: -IsotopeRead(const xercesc::DOMElement* const isotopeElement) +// -------------------------------------------------------------------- +void G4GDMLReadMaterials::IsotopeRead( + const xercesc::DOMElement* const isotopeElement) { - G4String name; - G4int Z = 0; - G4int N = 0; - G4double a = 0.0; + G4String name; + G4int Z = 0; + G4int N = 0; + G4double a = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = isotopeElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + isotopeElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadMaterials::IsotopeRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadMaterials::IsotopeRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="Z") { Z = eval.EvaluateInteger(attValue); } else - if (attName=="N") { N = eval.EvaluateInteger(attValue); } - } + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "Z") + { + Z = eval.EvaluateInteger(attValue); + } + else if(attName == "N") + { + N = eval.EvaluateInteger(attValue); + } + } - for (xercesc::DOMNode* iter = isotopeElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = isotopeElement->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadMaterials::IsotopeRead()", "InvalidRead", - FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadMaterials::IsotopeRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (tag=="atom") { a = AtomRead(child); } - } + if(tag == "atom") + { + a = AtomRead(child); + } + } - new G4Isotope(Strip(name),Z,N,a); + new G4Isotope(Strip(name), Z, N, a); } -void G4GDMLReadMaterials:: -MaterialRead(const xercesc::DOMElement* const materialElement) +// -------------------------------------------------------------------- +void G4GDMLReadMaterials::MaterialRead( + const xercesc::DOMElement* const materialElement) { - G4String name; - G4double Z = 0.0; - G4double a = 0.0; - G4double D = 0.0; - G4State state = kStateUndefined; - G4double T = STP_Temperature; - G4double P = STP_Pressure; - G4double MEE = -1.0; + G4String name; + G4double Z = 0.0; + G4double a = 0.0; + G4double D = 0.0; + G4State state = kStateUndefined; + G4double T = STP_Temperature; + G4double P = STP_Pressure; + G4double MEE = -1.0; - const xercesc::DOMNamedNodeMap* const attributes - = materialElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + materialElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadMaterials::MaterialRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "Z") + { + Z = eval.Evaluate(attValue); + } + else if(attName == "state") + { + if(attValue == "solid") { - G4Exception("G4GDMLReadMaterials::MaterialRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; + state = kStateSolid; } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="Z") { Z = eval.Evaluate(attValue); } else - if (attName=="state") + else if(attValue == "liquid") { - if (attValue=="solid") { state = kStateSolid; } else - if (attValue=="liquid") { state = kStateLiquid; } else - if (attValue=="gas") { state = kStateGas; } + state = kStateLiquid; } - } - - size_t nComponents = 0; - - for (xercesc::DOMNode* iter = materialElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) + else if(attValue == "gas") { - G4Exception("G4GDMLReadMaterials::MaterialRead()", "InvalidRead", - FatalException, "No child found!"); - return; + state = kStateGas; } - const G4String tag = Transcode(child->getTagName()); + } + } - if (tag=="atom") { a = AtomRead(child); } else - if (tag=="Dref") { D = GetQuantity(GenerateName(RefRead(child))); } else - if (tag=="Pref") { P = GetQuantity(GenerateName(RefRead(child))); } else - if (tag=="Tref") { T = GetQuantity(GenerateName(RefRead(child))); } else - if (tag=="MEEref") { MEE = GetQuantity(GenerateName(RefRead(child))); } else - if (tag=="D") { D = DRead(child); } else - if (tag=="P") { P = PRead(child); } else - if (tag=="T") { T = TRead(child); } else - if (tag=="MEE") { MEE = MEERead(child); } else - if (tag=="fraction" || tag=="composite") { nComponents++; } - } + std::size_t nComponents = 0; - G4Material* material = 0; + for(xercesc::DOMNode* iter = materialElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - if (nComponents==0) - { - material = new G4Material(Strip(name),Z,a,D,state,T,P); - } - else - { - material = new G4Material(Strip(name),D,nComponents,state,T,P); - MixtureRead(materialElement, material); - } - if (MEE != -1) // ionisation potential (mean excitation energy) - { - material->GetIonisation()->SetMeanExcitationEnergy(MEE); - } + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadMaterials::MaterialRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - for (xercesc::DOMNode* iter = materialElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + if(tag == "atom") + { + a = AtomRead(child); + } + else if(tag == "Dref") + { + D = GetQuantity(GenerateName(RefRead(child))); + } + else if(tag == "Pref") + { + P = GetQuantity(GenerateName(RefRead(child))); + } + else if(tag == "Tref") + { + T = GetQuantity(GenerateName(RefRead(child))); + } + else if(tag == "MEEref") + { + MEE = GetQuantity(GenerateName(RefRead(child))); + } + else if(tag == "D") + { + D = DRead(child); + } + else if(tag == "P") + { + P = PRead(child); + } + else if(tag == "T") + { + T = TRead(child); + } + else if(tag == "MEE") + { + MEE = MEERead(child); + } + else if(tag == "fraction" || tag == "composite") + { + nComponents++; + } + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadMaterials::MaterialRead()", "InvalidRead", - FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + G4Material* material = nullptr; - if (tag=="property") { PropertyRead(child,material); } - } + if(nComponents == 0) + { + material = new G4Material(Strip(name), Z, a, D, state, T, P); + } + else + { + material = new G4Material(Strip(name), D, nComponents, state, T, P); + MixtureRead(materialElement, material); + } + if(MEE != -1) // ionisation potential (mean excitation energy) + { + material->GetIonisation()->SetMeanExcitationEnergy(MEE); + } + + for(xercesc::DOMNode* iter = materialElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } + + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadMaterials::MaterialRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "property") + { + PropertyRead(child, material); + } + } } -void G4GDMLReadMaterials:: -MixtureRead(const xercesc::DOMElement *const mixtureElement, G4Element *element) +// -------------------------------------------------------------------- +void G4GDMLReadMaterials::MixtureRead( + const xercesc::DOMElement* const mixtureElement, G4Element* element) { - for (xercesc::DOMNode* iter = mixtureElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = mixtureElement->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadMaterials::MixtureRead()", "InvalidRead", - FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadMaterials::MixtureRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (tag=="fraction") - { - G4String ref; - G4double n = FractionRead(child,ref); - element->AddIsotope(GetIsotope(GenerateName(ref,true)),n); - } - } + if(tag == "fraction") + { + G4String ref; + G4double n = FractionRead(child, ref); + element->AddIsotope(GetIsotope(GenerateName(ref, true)), n); + } + } } -void G4GDMLReadMaterials:: -MixtureRead(const xercesc::DOMElement *const mixtureElement, - G4Material *material) +// -------------------------------------------------------------------- +void G4GDMLReadMaterials::MixtureRead( + const xercesc::DOMElement* const mixtureElement, G4Material* material) { - for (xercesc::DOMNode* iter = mixtureElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = mixtureElement->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadMaterials::MixtureRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "fraction") + { + G4String ref; + G4double n = FractionRead(child, ref); + + G4Material* materialPtr = GetMaterial(GenerateName(ref, true), false); + G4Element* elementPtr = GetElement(GenerateName(ref, true), false); + + if(elementPtr != nullptr) { - G4Exception("G4GDMLReadMaterials::MixtureRead()", "InvalidRead", - FatalException, "No child found!"); - return; + material->AddElement(elementPtr, n); } - const G4String tag = Transcode(child->getTagName()); - - if (tag=="fraction") + else if(materialPtr != nullptr) { - G4String ref; - G4double n = FractionRead(child,ref); - - G4Material *materialPtr = GetMaterial(GenerateName(ref,true), false); - G4Element *elementPtr = GetElement(GenerateName(ref,true), false); - - if (elementPtr != 0) { material->AddElement(elementPtr,n); } else - if (materialPtr != 0) { material->AddMaterial(materialPtr,n); } - - if ((materialPtr == 0) && (elementPtr == 0)) - { - G4String error_msg = "Referenced material/element '" - + GenerateName(ref,true) + "' was not found!"; - G4Exception("G4GDMLReadMaterials::MixtureRead()", "InvalidSetup", - FatalException, error_msg); - } - } - else if (tag=="composite") - { - G4String ref; - G4int n = CompositeRead(child,ref); - - G4Element *elementPtr = GetElement(GenerateName(ref,true)); - material->AddElement(elementPtr,n); + material->AddMaterial(materialPtr, n); } - } -} -void G4GDMLReadMaterials:: -PropertyRead(const xercesc::DOMElement* const propertyElement, - G4Material* material) -{ - G4String name; - G4String ref; - G4GDMLMatrix matrix; - - const xercesc::DOMNamedNodeMap* const attributes - = propertyElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); - - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); - - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } - - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + if((materialPtr == nullptr) && (elementPtr == nullptr)) { - G4Exception("G4GDMLReadMaterials::PropertyRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="ref") { matrix = GetMatrix(ref=attValue); } - } - - /* - if (matrix.GetCols() != 2) - { - G4String error_msg = "Referenced matrix '" + ref - + "' should have \n two columns as a property table for material: " - + material->GetName(); - G4Exception("G4GDMLReadMaterials::PropertyRead()", "InvalidRead", - FatalException, error_msg); - } - */ - - if (matrix.GetRows() == 0) { return; } - - G4MaterialPropertiesTable* matprop=material->GetMaterialPropertiesTable(); - if (!matprop) - { - matprop = new G4MaterialPropertiesTable(); - material->SetMaterialPropertiesTable(matprop); - } - if (matrix.GetCols() == 1) // constant property assumed - { - matprop->AddConstProperty(Strip(name), matrix.Get(0,0)); - } - else // build the material properties vector - { - G4MaterialPropertyVector* propvect = new G4MaterialPropertyVector(); - for (size_t i=0; iInsertValues(matrix.Get(i,0),matrix.Get(i,1)); - } - matprop->AddProperty(Strip(name),propvect); - } -} - -void G4GDMLReadMaterials:: -MaterialsRead(const xercesc::DOMElement* const materialsElement) -{ -#ifdef G4VERBOSE - G4cout << "G4GDML: Reading materials..." << G4endl; -#endif - for (xercesc::DOMNode* iter = materialsElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadMaterials::MaterialsRead()", "InvalidRead", - FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); - - if (tag=="define") { DefineRead(child); } else - if (tag=="element") { ElementRead(child); } else - if (tag=="isotope") { IsotopeRead(child); } else - if (tag=="material") { MaterialRead(child); } - else - { - G4String error_msg = "Unknown tag in materials: " + tag; - G4Exception("G4GDMLReadMaterials::MaterialsRead()", "InvalidSetup", + G4String error_msg = "Referenced material/element '" + + GenerateName(ref, true) + "' was not found!"; + G4Exception("G4GDMLReadMaterials::MixtureRead()", "InvalidSetup", FatalException, error_msg); } - } + } + else if(tag == "composite") + { + G4String ref; + G4int n = CompositeRead(child, ref); + + G4Element* elementPtr = GetElement(GenerateName(ref, true)); + material->AddElement(elementPtr, n); + } + } } -G4Element* G4GDMLReadMaterials:: -GetElement(const G4String& ref, G4bool verbose) const +// -------------------------------------------------------------------- +void G4GDMLReadMaterials::PropertyRead( + const xercesc::DOMElement* const propertyElement, G4Material* material) { - G4Element* elementPtr = G4Element::GetElement(ref,false); + G4String name; + G4String ref; + G4GDMLMatrix matrix; - if (!elementPtr) - { - elementPtr = G4NistManager::Instance()->FindOrBuildElement(ref); - } + const xercesc::DOMNamedNodeMap* const attributes = + propertyElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - if (verbose && !elementPtr) - { - G4String error_msg = "Referenced element '" + ref + "' was not found!"; - G4Exception("G4GDMLReadMaterials::GetElement()", "InvalidRead", - FatalException, error_msg); - } + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - return elementPtr; + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadMaterials::PropertyRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "ref") + { + matrix = GetMatrix(ref = attValue); + } + } + + /* + if (matrix.GetCols() != 2) + { + G4String error_msg = "Referenced matrix '" + ref + + "' should have \n two columns as a property table for material: " + + material->GetName(); + G4Exception("G4GDMLReadMaterials::PropertyRead()", "InvalidRead", + FatalException, error_msg); + } + */ + + if(matrix.GetRows() == 0) + { + return; + } + + G4MaterialPropertiesTable* matprop = material->GetMaterialPropertiesTable(); + if(matprop == nullptr) + { + matprop = new G4MaterialPropertiesTable(); + material->SetMaterialPropertiesTable(matprop); + } + if(matrix.GetCols() == 1) // constant property assumed + { + matprop->AddConstProperty(Strip(name), matrix.Get(0, 0)); + } + else // build the material properties vector + { + G4MaterialPropertyVector* propvect = new G4MaterialPropertyVector(); + for(std::size_t i = 0; i < matrix.GetRows(); ++i) + { + propvect->InsertValues(matrix.Get(i, 0), matrix.Get(i, 1)); + } + matprop->AddProperty(Strip(name), propvect); + } } +// -------------------------------------------------------------------- +void G4GDMLReadMaterials::MaterialsRead( + const xercesc::DOMElement* const materialsElement) +{ +#ifdef G4VERBOSE + G4cout << "G4GDML: Reading materials..." << G4endl; +#endif + for(xercesc::DOMNode* iter = materialsElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } + + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadMaterials::MaterialsRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "define") + { + DefineRead(child); + } + else if(tag == "element") + { + ElementRead(child); + } + else if(tag == "isotope") + { + IsotopeRead(child); + } + else if(tag == "material") + { + MaterialRead(child); + } + else + { + G4String error_msg = "Unknown tag in materials: " + tag; + G4Exception("G4GDMLReadMaterials::MaterialsRead()", "InvalidSetup", + FatalException, error_msg); + } + } +} + +// -------------------------------------------------------------------- +G4Element* G4GDMLReadMaterials::GetElement(const G4String& ref, + G4bool verbose) const +{ + G4Element* elementPtr = G4Element::GetElement(ref, false); + + if(elementPtr == nullptr) + { + elementPtr = G4NistManager::Instance()->FindOrBuildElement(ref); + } + + if(verbose && elementPtr == nullptr) + { + G4String error_msg = "Referenced element '" + ref + "' was not found!"; + G4Exception("G4GDMLReadMaterials::GetElement()", "InvalidRead", + FatalException, error_msg); + } + + return elementPtr; +} + +// -------------------------------------------------------------------- G4Isotope* G4GDMLReadMaterials::GetIsotope(const G4String& ref, G4bool verbose) const { - G4Isotope* isotopePtr = G4Isotope::GetIsotope(ref,false); + G4Isotope* isotopePtr = G4Isotope::GetIsotope(ref, false); - if (verbose && !isotopePtr) - { - G4String error_msg = "Referenced isotope '" + ref + "' was not found!"; - G4Exception("G4GDMLReadMaterials::GetIsotope()", "InvalidRead", - FatalException, error_msg); - } + if(verbose && isotopePtr == nullptr) + { + G4String error_msg = "Referenced isotope '" + ref + "' was not found!"; + G4Exception("G4GDMLReadMaterials::GetIsotope()", "InvalidRead", + FatalException, error_msg); + } - return isotopePtr; + return isotopePtr; } +// -------------------------------------------------------------------- G4Material* G4GDMLReadMaterials::GetMaterial(const G4String& ref, G4bool verbose) const { - G4Material *materialPtr = G4Material::GetMaterial(ref,false); + G4Material* materialPtr = G4Material::GetMaterial(ref, false); - if (!materialPtr) - { - materialPtr = G4NistManager::Instance()->FindOrBuildMaterial(ref); - } + if(materialPtr == nullptr) + { + materialPtr = G4NistManager::Instance()->FindOrBuildMaterial(ref); + } - if (verbose && !materialPtr) - { - G4String error_msg = "Referenced material '" + ref + "' was not found!"; - G4Exception("G4GDMLReadMaterials::GetMaterial()", "InvalidRead", - FatalException, error_msg); - } + if(verbose && materialPtr == nullptr) + { + G4String error_msg = "Referenced material '" + ref + "' was not found!"; + G4Exception("G4GDMLReadMaterials::GetMaterial()", "InvalidRead", + FatalException, error_msg); + } - return materialPtr; + return materialPtr; } diff --git a/source/persistency/gdml/src/G4GDMLReadParamvol.cc b/source/persistency/gdml/src/G4GDMLReadParamvol.cc index 04a1bba6e4..2eba4385d7 100644 --- a/source/persistency/gdml/src/G4GDMLReadParamvol.cc +++ b/source/persistency/gdml/src/G4GDMLReadParamvol.cc @@ -23,12 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLReadParamvol implementation // -// class G4GDMLReadParamvol Implementation -// -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- #include "G4GDMLReadParamvol.hh" #include "G4GDMLReadSolids.hh" @@ -38,8 +36,9 @@ #include "G4VPhysicalVolume.hh" #include "G4UnitsTable.hh" +// -------------------------------------------------------------------- G4GDMLReadParamvol::G4GDMLReadParamvol() - : G4GDMLReadSetup(), parameterisation(0) + : G4GDMLReadSetup() { } @@ -47,972 +46,1314 @@ G4GDMLReadParamvol::~G4GDMLReadParamvol() { } -void G4GDMLReadParamvol:: -Box_dimensionsRead( const xercesc::DOMElement* const element, - G4GDMLParameterisation::PARAMETER& parameter ) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Box_dimensionsRead( + const xercesc::DOMElement* const element, + G4GDMLParameterisation::PARAMETER& parameter) { - G4double lunit = 1.0; + G4double lunit = 1.0; - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::Box_dimensionsRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadParamvol::Box_dimensionsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadParamvol::Box_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "x") + { + parameter.dimension[0] = eval.Evaluate(attValue); + } + else if(attName == "y") + { + parameter.dimension[1] = eval.Evaluate(attValue); + } + else if(attName == "z") + { + parameter.dimension[2] = eval.Evaluate(attValue); + } + } - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadParamvol::Box_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="x") { parameter.dimension[0] = eval.Evaluate(attValue); } else - if (attName=="y") { parameter.dimension[1] = eval.Evaluate(attValue); } else - if (attName=="z") { parameter.dimension[2] = eval.Evaluate(attValue); } - } - - parameter.dimension[0] *= 0.5*lunit; - parameter.dimension[1] *= 0.5*lunit; - parameter.dimension[2] *= 0.5*lunit; + parameter.dimension[0] *= 0.5 * lunit; + parameter.dimension[1] *= 0.5 * lunit; + parameter.dimension[2] *= 0.5 * lunit; } -void G4GDMLReadParamvol:: -Trd_dimensionsRead( const xercesc::DOMElement* const element, - G4GDMLParameterisation::PARAMETER& parameter ) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Trd_dimensionsRead( + const xercesc::DOMElement* const element, + G4GDMLParameterisation::PARAMETER& parameter) { - G4double lunit = 1.0; + G4double lunit = 1.0; - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::Trd_dimensionsRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadParamvol::Trd_dimensionsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadParamvol::Trd_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "x1") + { + parameter.dimension[0] = eval.Evaluate(attValue); + } + else if(attName == "x2") + { + parameter.dimension[1] = eval.Evaluate(attValue); + } + else if(attName == "y1") + { + parameter.dimension[2] = eval.Evaluate(attValue); + } + else if(attName == "y2") + { + parameter.dimension[3] = eval.Evaluate(attValue); + } + else if(attName == "z") + { + parameter.dimension[4] = eval.Evaluate(attValue); + } + } - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadParamvol::Trd_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="x1") { parameter.dimension[0]=eval.Evaluate(attValue); } else - if (attName=="x2") { parameter.dimension[1]=eval.Evaluate(attValue); } else - if (attName=="y1") { parameter.dimension[2]=eval.Evaluate(attValue); } else - if (attName=="y2") { parameter.dimension[3]=eval.Evaluate(attValue); } else - if (attName=="z") { parameter.dimension[4]=eval.Evaluate(attValue); } - } - - parameter.dimension[0] *= 0.5*lunit; - parameter.dimension[1] *= 0.5*lunit; - parameter.dimension[2] *= 0.5*lunit; - parameter.dimension[3] *= 0.5*lunit; - parameter.dimension[4] *= 0.5*lunit; + parameter.dimension[0] *= 0.5 * lunit; + parameter.dimension[1] *= 0.5 * lunit; + parameter.dimension[2] *= 0.5 * lunit; + parameter.dimension[3] *= 0.5 * lunit; + parameter.dimension[4] *= 0.5 * lunit; } -void G4GDMLReadParamvol:: -Trap_dimensionsRead( const xercesc::DOMElement* const element, - G4GDMLParameterisation::PARAMETER& parameter ) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Trap_dimensionsRead( + const xercesc::DOMElement* const element, + G4GDMLParameterisation::PARAMETER& parameter) { - G4double lunit = 1.0; - G4double aunit = 1.0; + G4double lunit = 1.0; + G4double aunit = 1.0; - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::Trap_dimensionsRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadParamvol::Trap_dimensionsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadParamvol::Trap_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadParamvol::Trap_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "z") + { + parameter.dimension[0] = eval.Evaluate(attValue); + } + else if(attName == "theta") + { + parameter.dimension[1] = eval.Evaluate(attValue); + } + else if(attName == "phi") + { + parameter.dimension[2] = eval.Evaluate(attValue); + } + else if(attName == "y1") + { + parameter.dimension[3] = eval.Evaluate(attValue); + } + else if(attName == "x1") + { + parameter.dimension[4] = eval.Evaluate(attValue); + } + else if(attName == "x2") + { + parameter.dimension[5] = eval.Evaluate(attValue); + } + else if(attName == "alpha1") + { + parameter.dimension[6] = eval.Evaluate(attValue); + } + else if(attName == "y2") + { + parameter.dimension[7] = eval.Evaluate(attValue); + } + else if(attName == "x3") + { + parameter.dimension[8] = eval.Evaluate(attValue); + } + else if(attName == "x4") + { + parameter.dimension[9] = eval.Evaluate(attValue); + } + else if(attName == "alpha2") + { + parameter.dimension[10] = eval.Evaluate(attValue); + } + } - if (attName=="lunit") - { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadParamvol::Trap_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") - { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadParamvol::Trap_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="z") - { parameter.dimension[0] = eval.Evaluate(attValue); } else - if (attName=="theta") - { parameter.dimension[1] = eval.Evaluate(attValue); } else - if (attName=="phi") - { parameter.dimension[2] = eval.Evaluate(attValue); } else - if (attName=="y1") - { parameter.dimension[3] = eval.Evaluate(attValue); } else - if (attName=="x1") - { parameter.dimension[4] = eval.Evaluate(attValue); } else - if (attName=="x2") - { parameter.dimension[5] = eval.Evaluate(attValue); } else - if (attName=="alpha1") - { parameter.dimension[6] = eval.Evaluate(attValue); } else - if (attName=="y2") - { parameter.dimension[7] = eval.Evaluate(attValue); } else - if (attName=="x3") - { parameter.dimension[8] = eval.Evaluate(attValue); } else - if (attName=="x4") - { parameter.dimension[9] = eval.Evaluate(attValue); } else - if (attName=="alpha2") - { parameter.dimension[10] = eval.Evaluate(attValue); } - } - - parameter.dimension[0] *= 0.5*lunit; - parameter.dimension[1] *= aunit; - parameter.dimension[2] *= aunit; - parameter.dimension[3] *= 0.5*lunit; - parameter.dimension[4] *= 0.5*lunit; - parameter.dimension[5] *= 0.5*lunit; - parameter.dimension[6] *= aunit; - parameter.dimension[7] *= 0.5*lunit; - parameter.dimension[8] *= 0.5*lunit; - parameter.dimension[9] *= 0.5*lunit; - parameter.dimension[10] *= aunit; + parameter.dimension[0] *= 0.5 * lunit; + parameter.dimension[1] *= aunit; + parameter.dimension[2] *= aunit; + parameter.dimension[3] *= 0.5 * lunit; + parameter.dimension[4] *= 0.5 * lunit; + parameter.dimension[5] *= 0.5 * lunit; + parameter.dimension[6] *= aunit; + parameter.dimension[7] *= 0.5 * lunit; + parameter.dimension[8] *= 0.5 * lunit; + parameter.dimension[9] *= 0.5 * lunit; + parameter.dimension[10] *= aunit; } -void G4GDMLReadParamvol:: -Tube_dimensionsRead( const xercesc::DOMElement* const element, - G4GDMLParameterisation::PARAMETER& parameter ) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Tube_dimensionsRead( + const xercesc::DOMElement* const element, + G4GDMLParameterisation::PARAMETER& parameter) { - G4double lunit = 1.0; - G4double aunit = 1.0; + G4double lunit = 1.0; + G4double aunit = 1.0; - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::Tube_dimensionsRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadParamvol::Tube_dimensionsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadParamvol::Tube_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="lunit") - { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadParamvol::Tube_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") - { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadParamvol::Tube_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="InR") - { parameter.dimension[0] = eval.Evaluate(attValue); } else - if (attName=="OutR") - { parameter.dimension[1] = eval.Evaluate(attValue); } else - if (attName=="hz") - { parameter.dimension[2] = eval.Evaluate(attValue); } else - if (attName=="StartPhi") - { parameter.dimension[3] = eval.Evaluate(attValue); } else - if (attName=="DeltaPhi") - { parameter.dimension[4] = eval.Evaluate(attValue); } - } + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadParamvol::Tube_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "InR") + { + parameter.dimension[0] = eval.Evaluate(attValue); + } + else if(attName == "OutR") + { + parameter.dimension[1] = eval.Evaluate(attValue); + } + else if(attName == "hz") + { + parameter.dimension[2] = eval.Evaluate(attValue); + } + else if(attName == "StartPhi") + { + parameter.dimension[3] = eval.Evaluate(attValue); + } + else if(attName == "DeltaPhi") + { + parameter.dimension[4] = eval.Evaluate(attValue); + } + } - parameter.dimension[0] *= lunit; - parameter.dimension[1] *= lunit; - parameter.dimension[2] *= 0.5*lunit; - parameter.dimension[3] *= aunit; - parameter.dimension[4] *= aunit; + parameter.dimension[0] *= lunit; + parameter.dimension[1] *= lunit; + parameter.dimension[2] *= 0.5 * lunit; + parameter.dimension[3] *= aunit; + parameter.dimension[4] *= aunit; } -void G4GDMLReadParamvol:: -Cone_dimensionsRead( const xercesc::DOMElement* const element, - G4GDMLParameterisation::PARAMETER& parameter ) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Cone_dimensionsRead( + const xercesc::DOMElement* const element, + G4GDMLParameterisation::PARAMETER& parameter) { - G4double lunit = 1.0; - G4double aunit = 1.0; + G4double lunit = 1.0; + G4double aunit = 1.0; - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::Cone_dimensionsRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadParamvol::Cone_dimensionsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadParamvol::Cone_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadParamvol::Cone_dimensions()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "rmin1") + { + parameter.dimension[0] = eval.Evaluate(attValue); + } + else if(attName == "rmax1") + { + parameter.dimension[1] = eval.Evaluate(attValue); + } + else if(attName == "rmin2") + { + parameter.dimension[2] = eval.Evaluate(attValue); + } + else if(attName == "rmax2") + { + parameter.dimension[3] = eval.Evaluate(attValue); + } + else if(attName == "z") + { + parameter.dimension[4] = eval.Evaluate(attValue); + } + else if(attName == "startphi") + { + parameter.dimension[5] = eval.Evaluate(attValue); + } + else if(attName == "deltaphi") + { + parameter.dimension[6] = eval.Evaluate(attValue); + } + } - if (attName=="lunit") - { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadParamvol::Cone_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") - { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadParamvol::Cone_dimensions()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="rmin1") - { parameter.dimension[0] = eval.Evaluate(attValue); } else - if (attName=="rmax1") - { parameter.dimension[1] = eval.Evaluate(attValue); } else - if (attName=="rmin2") - { parameter.dimension[2] = eval.Evaluate(attValue); } else - if (attName=="rmax2") - { parameter.dimension[3] = eval.Evaluate(attValue); } else - if (attName=="z") - { parameter.dimension[4] = eval.Evaluate(attValue); } else - if (attName=="startphi") - { parameter.dimension[5] = eval.Evaluate(attValue); } else - if (attName=="deltaphi") - { parameter.dimension[6] = eval.Evaluate(attValue); } - } - - parameter.dimension[0] *= lunit; - parameter.dimension[1] *= lunit; - parameter.dimension[2] *= lunit; - parameter.dimension[3] *= lunit; - parameter.dimension[4] *= 0.5*lunit; - parameter.dimension[5] *= aunit; - parameter.dimension[6] *= aunit; + parameter.dimension[0] *= lunit; + parameter.dimension[1] *= lunit; + parameter.dimension[2] *= lunit; + parameter.dimension[3] *= lunit; + parameter.dimension[4] *= 0.5 * lunit; + parameter.dimension[5] *= aunit; + parameter.dimension[6] *= aunit; } -void G4GDMLReadParamvol:: -Sphere_dimensionsRead( const xercesc::DOMElement* const element, - G4GDMLParameterisation::PARAMETER& parameter ) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Sphere_dimensionsRead( + const xercesc::DOMElement* const element, + G4GDMLParameterisation::PARAMETER& parameter) { - G4double lunit = 1.0; - G4double aunit = 1.0; + G4double lunit = 1.0; + G4double aunit = 1.0; - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::Sphere_dimensionsRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { G4Exception("G4GDMLReadParamvol::Sphere_dimensionsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + "InvalidRead", FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="lunit") - { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadParamvol::Sphere_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") - { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadParamvol::Sphere_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="rmin") - { parameter.dimension[0] = eval.Evaluate(attValue); } else - if (attName=="rmax") - { parameter.dimension[1] = eval.Evaluate(attValue); } else - if (attName=="startphi") - { parameter.dimension[2] = eval.Evaluate(attValue); } else - if (attName=="deltaphi") - { parameter.dimension[3] = eval.Evaluate(attValue); } else - if (attName=="starttheta") - { parameter.dimension[4] = eval.Evaluate(attValue); } else - if (attName=="deltatheta") - { parameter.dimension[5] = eval.Evaluate(attValue); } - } - - parameter.dimension[0] *= lunit; - parameter.dimension[1] *= lunit; - parameter.dimension[2] *= aunit; - parameter.dimension[3] *= aunit; - parameter.dimension[4] *= aunit; - parameter.dimension[5] *= aunit; -} - -void G4GDMLReadParamvol:: -Orb_dimensionsRead( const xercesc::DOMElement* const element, - G4GDMLParameterisation::PARAMETER& parameter ) -{ - G4double lunit = 1.0; - - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); - - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); - - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } - - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") { - G4Exception("G4GDMLReadParamvol::Orb_dimensionsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadParamvol::Sphere_dimensionsRead()", + "InvalidRead", FatalException, "Invalid unit for angle!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "rmin") + { + parameter.dimension[0] = eval.Evaluate(attValue); + } + else if(attName == "rmax") + { + parameter.dimension[1] = eval.Evaluate(attValue); + } + else if(attName == "startphi") + { + parameter.dimension[2] = eval.Evaluate(attValue); + } + else if(attName == "deltaphi") + { + parameter.dimension[3] = eval.Evaluate(attValue); + } + else if(attName == "starttheta") + { + parameter.dimension[4] = eval.Evaluate(attValue); + } + else if(attName == "deltatheta") + { + parameter.dimension[5] = eval.Evaluate(attValue); + } + } - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); } - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadParamvol::Orb_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - else - if (attName=="r") { parameter.dimension[0] = eval.Evaluate(attValue); } - } - - parameter.dimension[0] *= lunit; + parameter.dimension[0] *= lunit; + parameter.dimension[1] *= lunit; + parameter.dimension[2] *= aunit; + parameter.dimension[3] *= aunit; + parameter.dimension[4] *= aunit; + parameter.dimension[5] *= aunit; } -void G4GDMLReadParamvol:: -Torus_dimensionsRead( const xercesc::DOMElement* const element, - G4GDMLParameterisation::PARAMETER& parameter ) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Orb_dimensionsRead( + const xercesc::DOMElement* const element, + G4GDMLParameterisation::PARAMETER& parameter) { - G4double lunit = 1.0; - G4double aunit = 1.0; + G4double lunit = 1.0; - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::Orb_dimensionsRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + } + if(G4UnitDefinition::GetCategory(attValue) != "Length") + { + G4Exception("G4GDMLReadParamvol::Orb_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); + } + else if(attName == "r") + { + parameter.dimension[0] = eval.Evaluate(attValue); + } + } + + parameter.dimension[0] *= lunit; +} + +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Torus_dimensionsRead( + const xercesc::DOMElement* const element, + G4GDMLParameterisation::PARAMETER& parameter) +{ + G4double lunit = 1.0; + G4double aunit = 1.0; + + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); + + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); + + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::Torus_dimensionsRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadParamvol::Torus_dimensionsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadParamvol::Torus_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadParamvol::Torus_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "rmin") + { + parameter.dimension[0] = eval.Evaluate(attValue); + } + else if(attName == "rmax") + { + parameter.dimension[1] = eval.Evaluate(attValue); + } + else if(attName == "rtor") + { + parameter.dimension[2] = eval.Evaluate(attValue); + } + else if(attName == "startphi") + { + parameter.dimension[3] = eval.Evaluate(attValue); + } + else if(attName == "deltaphi") + { + parameter.dimension[4] = eval.Evaluate(attValue); + } + } - if (attName=="lunit") - { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadParamvol::Torus_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") - { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadParamvol::Torus_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="rmin") - { parameter.dimension[0] = eval.Evaluate(attValue); } else - if (attName=="rmax") - { parameter.dimension[1] = eval.Evaluate(attValue); } else - if (attName=="rtor") - { parameter.dimension[2] = eval.Evaluate(attValue); } else - if (attName=="startphi") - { parameter.dimension[3] = eval.Evaluate(attValue); } else - if (attName=="deltaphi") - { parameter.dimension[4] = eval.Evaluate(attValue); } - } - - parameter.dimension[0] *= lunit; - parameter.dimension[1] *= lunit; - parameter.dimension[2] *= lunit; - parameter.dimension[3] *= aunit; - parameter.dimension[4] *= aunit; + parameter.dimension[0] *= lunit; + parameter.dimension[1] *= lunit; + parameter.dimension[2] *= lunit; + parameter.dimension[3] *= aunit; + parameter.dimension[4] *= aunit; } -void G4GDMLReadParamvol:: -Ellipsoid_dimensionsRead( const xercesc::DOMElement* const element, - G4GDMLParameterisation::PARAMETER& parameter ) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Ellipsoid_dimensionsRead( + const xercesc::DOMElement* const element, + G4GDMLParameterisation::PARAMETER& parameter) { - G4double lunit = 1.0; - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + G4double lunit = 1.0; + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::Ellipsoid_dimensionsRead()", + "InvalidRead", FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { G4Exception("G4GDMLReadParamvol::Ellipsoid_dimensionsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + "InvalidRead", FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "ax") + { + parameter.dimension[0] = eval.Evaluate(attValue); + } + else if(attName == "by") + { + parameter.dimension[1] = eval.Evaluate(attValue); + } + else if(attName == "cz") + { + parameter.dimension[2] = eval.Evaluate(attValue); + } + else if(attName == "zcut1") + { + parameter.dimension[3] = eval.Evaluate(attValue); + } + else if(attName == "zcut2") + { + parameter.dimension[4] = eval.Evaluate(attValue); + } + } - if (attName=="lunit") - { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadParamvol::Ellipsoid_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="ax") - { parameter.dimension[0] = eval.Evaluate(attValue); } else - if (attName=="by") - { parameter.dimension[1] = eval.Evaluate(attValue); } else - if (attName=="cz") - { parameter.dimension[2] = eval.Evaluate(attValue); } else - if (attName=="zcut1") - { parameter.dimension[3] = eval.Evaluate(attValue); } else - if (attName=="zcut2") - { parameter.dimension[4] = eval.Evaluate(attValue); } - } - - parameter.dimension[0] *= lunit; - parameter.dimension[1] *= lunit; - parameter.dimension[2] *= lunit; - parameter.dimension[3] *= lunit; - parameter.dimension[4] *= lunit; + parameter.dimension[0] *= lunit; + parameter.dimension[1] *= lunit; + parameter.dimension[2] *= lunit; + parameter.dimension[3] *= lunit; + parameter.dimension[4] *= lunit; } -void G4GDMLReadParamvol:: -Para_dimensionsRead( const xercesc::DOMElement* const element, - G4GDMLParameterisation::PARAMETER& parameter ) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Para_dimensionsRead( + const xercesc::DOMElement* const element, + G4GDMLParameterisation::PARAMETER& parameter) { - G4double lunit = 1.0; - G4double aunit = 1.0; + G4double lunit = 1.0; + G4double aunit = 1.0; - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::Para_dimensionsRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadParamvol::Para_dimensionsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadParamvol::Para_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="lunit") - { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadParamvol::Para_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") - { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadParamvol::Para_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="x") - { parameter.dimension[0] = eval.Evaluate(attValue); } else - if (attName=="y") - { parameter.dimension[1] = eval.Evaluate(attValue); } else - if (attName=="z") - { parameter.dimension[2] = eval.Evaluate(attValue); } else - if (attName=="alpha") - { parameter.dimension[3] = eval.Evaluate(attValue); } else - if (attName=="theta") - { parameter.dimension[4] = eval.Evaluate(attValue); } else - if (attName=="phi") - { parameter.dimension[5] = eval.Evaluate(attValue); } - } - - parameter.dimension[0] = 0.5*lunit; - parameter.dimension[1] = 0.5*lunit; - parameter.dimension[2] = 0.5*lunit; - parameter.dimension[3] = aunit; - parameter.dimension[4] = aunit; - parameter.dimension[5] = aunit; -} - -void G4GDMLReadParamvol:: -Hype_dimensionsRead( const xercesc::DOMElement* const element, - G4GDMLParameterisation::PARAMETER& parameter ) -{ - G4double lunit = 1.0; - G4double aunit = 1.0; - - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); - - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); - - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } - - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") { - G4Exception("G4GDMLReadParamvol::Hype_dimensionsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadParamvol::Para_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "x") + { + parameter.dimension[0] = eval.Evaluate(attValue); + } + else if(attName == "y") + { + parameter.dimension[1] = eval.Evaluate(attValue); + } + else if(attName == "z") + { + parameter.dimension[2] = eval.Evaluate(attValue); + } + else if(attName == "alpha") + { + parameter.dimension[3] = eval.Evaluate(attValue); + } + else if(attName == "theta") + { + parameter.dimension[4] = eval.Evaluate(attValue); + } + else if(attName == "phi") + { + parameter.dimension[5] = eval.Evaluate(attValue); + } + } - if (attName=="lunit") - { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadParamvol::Hype_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") - { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadParamvol::Hype_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="rmin") - { parameter.dimension[0] = eval.Evaluate(attValue); } else - if (attName=="rmax") - { parameter.dimension[1] = eval.Evaluate(attValue); } else - if (attName=="inst") - { parameter.dimension[2] = eval.Evaluate(attValue); } else - if (attName=="outst") - { parameter.dimension[3] = eval.Evaluate(attValue); } else - if (attName=="z") - { parameter.dimension[4] = eval.Evaluate(attValue); } - } - - parameter.dimension[0] = lunit; - parameter.dimension[1] = lunit; - parameter.dimension[2] = aunit; - parameter.dimension[3] = aunit; - parameter.dimension[4] = 0.5*lunit; + parameter.dimension[0] = 0.5 * lunit; + parameter.dimension[1] = 0.5 * lunit; + parameter.dimension[2] = 0.5 * lunit; + parameter.dimension[3] = aunit; + parameter.dimension[4] = aunit; + parameter.dimension[5] = aunit; } -void G4GDMLReadParamvol:: -Polycone_dimensionsRead( const xercesc::DOMElement* const element, - G4GDMLParameterisation::PARAMETER& parameter ) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Hype_dimensionsRead( + const xercesc::DOMElement* const element, + G4GDMLParameterisation::PARAMETER& parameter) { - G4double lunit = 1.0; - G4double aunit = 1.0; + G4double lunit = 1.0; + G4double aunit = 1.0; - std::vector zplaneList; + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::Hype_dimensionsRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") + { + G4Exception("G4GDMLReadParamvol::Hype_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); + } + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadParamvol::Hype_dimensionsRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "rmin") + { + parameter.dimension[0] = eval.Evaluate(attValue); + } + else if(attName == "rmax") + { + parameter.dimension[1] = eval.Evaluate(attValue); + } + else if(attName == "inst") + { + parameter.dimension[2] = eval.Evaluate(attValue); + } + else if(attName == "outst") + { + parameter.dimension[3] = eval.Evaluate(attValue); + } + else if(attName == "z") + { + parameter.dimension[4] = eval.Evaluate(attValue); + } + } + + parameter.dimension[0] = lunit; + parameter.dimension[1] = lunit; + parameter.dimension[2] = aunit; + parameter.dimension[3] = aunit; + parameter.dimension[4] = 0.5 * lunit; +} + +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Polycone_dimensionsRead( + const xercesc::DOMElement* const element, + G4GDMLParameterisation::PARAMETER& parameter) +{ + G4double lunit = 1.0; + G4double aunit = 1.0; + + std::vector zplaneList; + + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); + + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); + + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::Polycone_dimensionsRead()", + "InvalidRead", FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { G4Exception("G4GDMLReadParamvol::Polycone_dimensionsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + "InvalidRead", FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="lunit") - { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadParamvol::Polycone_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") - { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadParamvol::Polycone_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="startPhi") - { parameter.dimension[0] = eval.Evaluate(attValue); } else - if (attName=="openPhi") - { parameter.dimension[1] = eval.Evaluate(attValue); } else - if (attName=="numRZ") - { parameter.dimension[2] = eval.Evaluate(attValue); } - } - - parameter.dimension[0] *= aunit; - parameter.dimension[1] *= aunit; - - for (xercesc::DOMNode* iter = element->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadParamVol::Polycone_dimensionsRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); - - if (tag=="zplane") { zplaneList.push_back(ZplaneRead(child)); } - } - - G4int numZPlanes = zplaneList.size(); - for (G4int i=0; i zplaneList; - - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); - - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); - - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } - - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") { G4Exception("G4GDMLReadParamvol::Polycone_dimensionsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + "InvalidRead", FatalException, "Invalid unit for angle!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="lunit") - { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadParamvol::Polyhedra_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") - { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadParamvol::Polyhedra_dimensionsRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="startPhi") - { parameter.dimension[0] = eval.Evaluate(attValue); } else - if (attName=="openPhi") - { parameter.dimension[1] = eval.Evaluate(attValue); } else - if (attName=="numRZ") - { parameter.dimension[2] = eval.Evaluate(attValue); } else - if (attName=="numSide") - { parameter.dimension[3] = eval.Evaluate(attValue); } - } + } + else if(attName == "startPhi") + { + parameter.dimension[0] = eval.Evaluate(attValue); + } + else if(attName == "openPhi") + { + parameter.dimension[1] = eval.Evaluate(attValue); + } + else if(attName == "numRZ") + { + parameter.dimension[2] = eval.Evaluate(attValue); + } + } - parameter.dimension[0] *= aunit; - parameter.dimension[1] *= aunit; - - for (xercesc::DOMNode* iter = element->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadParamvo::PolyhedraRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); - - if (tag=="zplane") { zplaneList.push_back(ZplaneRead(child)); } - } + parameter.dimension[0] *= aunit; + parameter.dimension[1] *= aunit; - G4int numZPlanes = zplaneList.size(); - for (G4int i=0; igetFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } + + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadParamVol::Polycone_dimensionsRead()", + "InvalidRead", FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "zplane") + { + zplaneList.push_back(ZplaneRead(child)); + } + } + + G4int numZPlanes = zplaneList.size(); + for(G4int i = 0; i < numZPlanes; ++i) + { + parameter.dimension[3 + i * 3] = zplaneList[i].rmin * lunit; + parameter.dimension[4 + i * 3] = zplaneList[i].rmax * lunit; + parameter.dimension[5 + i * 3] = zplaneList[i].z * lunit; + } } -void G4GDMLReadParamvol:: -ParametersRead(const xercesc::DOMElement* const element) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Polyhedra_dimensionsRead( + const xercesc::DOMElement* const element, + G4GDMLParameterisation::PARAMETER& parameter) { - G4ThreeVector rotation(0.0,0.0,0.0); - G4ThreeVector position(0.0,0.0,0.0); + G4double lunit = 1.0; + G4double aunit = 1.0; - G4GDMLParameterisation::PARAMETER parameter; + std::vector zplaneList; - for (xercesc::DOMNode* iter = element->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); + + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::Polycone_dimensionsRead()", + "InvalidRead", FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadParamvol::ParametersRead()", - "InvalidRead", FatalException, "No child found!"); - return; + G4Exception("G4GDMLReadParamvol::Polyhedra_dimensionsRead()", + "InvalidRead", FatalException, "Invalid unit for length!"); } - const G4String tag = Transcode(child->getTagName()); - if (tag=="rotation") { VectorRead(child,rotation); } else - if (tag=="position") { VectorRead(child,position); } else - if (tag=="positionref") - { position = GetPosition(GenerateName(RefRead(child))); } else - if (tag=="rotationref") - { rotation = GetRotation(GenerateName(RefRead(child))); } else - if (tag=="box_dimensions") { Box_dimensionsRead(child,parameter); } else - if (tag=="trd_dimensions") { Trd_dimensionsRead(child,parameter); } else - if (tag=="trap_dimensions") { Trap_dimensionsRead(child,parameter); } else - if (tag=="tube_dimensions") { Tube_dimensionsRead(child,parameter); } else - if (tag=="cone_dimensions") { Cone_dimensionsRead(child,parameter); } else - if (tag=="sphere_dimensions") { Sphere_dimensionsRead(child,parameter); } else - if (tag=="orb_dimensions") { Orb_dimensionsRead(child,parameter); } else - if (tag=="torus_dimensions") { Torus_dimensionsRead(child,parameter); } else - if (tag=="ellipsoid_dimensions") { Ellipsoid_dimensionsRead(child,parameter); } else - if (tag=="para_dimensions") { Para_dimensionsRead(child,parameter); } else - if (tag=="polycone_dimensions") { Polycone_dimensionsRead(child,parameter); } else - if (tag=="polyhedra_dimensions") { Polyhedra_dimensionsRead(child,parameter); } else - if (tag=="hype_dimensions") { Hype_dimensionsRead(child,parameter); } - else + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") { - G4String error_msg = "Unknown tag in parameters: " + tag; - G4Exception("G4GDMLReadParamvol::ParametersRead()", "ReadError", - FatalException, error_msg); + G4Exception("G4GDMLReadParamvol::Polyhedra_dimensionsRead()", + "InvalidRead", FatalException, "Invalid unit for angle!"); } - } + } + else if(attName == "startPhi") + { + parameter.dimension[0] = eval.Evaluate(attValue); + } + else if(attName == "openPhi") + { + parameter.dimension[1] = eval.Evaluate(attValue); + } + else if(attName == "numRZ") + { + parameter.dimension[2] = eval.Evaluate(attValue); + } + else if(attName == "numSide") + { + parameter.dimension[3] = eval.Evaluate(attValue); + } + } - parameter.pRot = new G4RotationMatrix(); - - parameter.pRot->rotateX(rotation.x()); - parameter.pRot->rotateY(rotation.y()); - parameter.pRot->rotateZ(rotation.z()); + parameter.dimension[0] *= aunit; + parameter.dimension[1] *= aunit; - parameter.position = position; + for(xercesc::DOMNode* iter = element->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - parameterisation->AddParameter(parameter); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadParamvo::PolyhedraRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "zplane") + { + zplaneList.push_back(ZplaneRead(child)); + } + } + + G4int numZPlanes = zplaneList.size(); + for(G4int i = 0; i < numZPlanes; ++i) + { + parameter.dimension[4 + i * 3] = zplaneList[i].rmin * lunit; + parameter.dimension[5 + i * 3] = zplaneList[i].rmax * lunit; + parameter.dimension[6 + i * 3] = zplaneList[i].z * lunit; + } } -void G4GDMLReadParamvol:: -ParameterisedRead(const xercesc::DOMElement* const element) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::ParametersRead( + const xercesc::DOMElement* const element) { - for (xercesc::DOMNode* iter = element->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + G4ThreeVector rotation(0.0, 0.0, 0.0); + G4ThreeVector position(0.0, 0.0, 0.0); - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadParamvol::ParameterisedRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); - - if (tag=="parameters") - { - const xercesc::DOMNamedNodeMap* const attributes - = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexgetFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } + + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadParamvol::ParametersRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + if(tag == "rotation") + { + VectorRead(child, rotation); + } + else if(tag == "position") + { + VectorRead(child, position); + } + else if(tag == "positionref") + { + position = GetPosition(GenerateName(RefRead(child))); + } + else if(tag == "rotationref") + { + rotation = GetRotation(GenerateName(RefRead(child))); + } + else if(tag == "box_dimensions") + { + Box_dimensionsRead(child, parameter); + } + else if(tag == "trd_dimensions") + { + Trd_dimensionsRead(child, parameter); + } + else if(tag == "trap_dimensions") + { + Trap_dimensionsRead(child, parameter); + } + else if(tag == "tube_dimensions") + { + Tube_dimensionsRead(child, parameter); + } + else if(tag == "cone_dimensions") + { + Cone_dimensionsRead(child, parameter); + } + else if(tag == "sphere_dimensions") + { + Sphere_dimensionsRead(child, parameter); + } + else if(tag == "orb_dimensions") + { + Orb_dimensionsRead(child, parameter); + } + else if(tag == "torus_dimensions") + { + Torus_dimensionsRead(child, parameter); + } + else if(tag == "ellipsoid_dimensions") + { + Ellipsoid_dimensionsRead(child, parameter); + } + else if(tag == "para_dimensions") + { + Para_dimensionsRead(child, parameter); + } + else if(tag == "polycone_dimensions") + { + Polycone_dimensionsRead(child, parameter); + } + else if(tag == "polyhedra_dimensions") + { + Polyhedra_dimensionsRead(child, parameter); + } + else if(tag == "hype_dimensions") + { + Hype_dimensionsRead(child, parameter); + } + else + { + G4String error_msg = "Unknown tag in parameters: " + tag; + G4Exception("G4GDMLReadParamvol::ParametersRead()", "ReadError", + FatalException, error_msg); + } + } + + parameter.pRot = new G4RotationMatrix(); + + parameter.pRot->rotateX(rotation.x()); + parameter.pRot->rotateY(rotation.y()); + parameter.pRot->rotateZ(rotation.z()); + + parameter.position = position; + + parameterisation->AddParameter(parameter); +} + +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::ParameterisedRead( + const xercesc::DOMElement* const element) +{ + for(xercesc::DOMNode* iter = element->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } + + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadParamvol::ParameterisedRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "parameters") + { + const xercesc::DOMNamedNodeMap* const attributes = + element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); + + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { - xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } - - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadParamvol::ParameterisedRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="number") { eval.Evaluate(attValue); } + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadParamvol::ParameterisedRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "number") + { + eval.Evaluate(attValue); } - ParametersRead(child); } - else + ParametersRead(child); + } + else + { + if(tag == "loop") { - if (tag=="loop") { LoopRead(child,&G4GDMLRead::Paramvol_contentRead); } + LoopRead(child, &G4GDMLRead::Paramvol_contentRead); } } + } } -void G4GDMLReadParamvol:: -Paramvol_contentRead(const xercesc::DOMElement* const element) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::Paramvol_contentRead( + const xercesc::DOMElement* const element) { - for (xercesc::DOMNode* iter = element->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadParamvol::Paramvol_contentRead()", "InvalidRead", - FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); - if (tag=="parameterised_position_size") { ParameterisedRead(child); }else - if (tag=="loop") { LoopRead(child,&G4GDMLRead::Paramvol_contentRead); } + for(xercesc::DOMNode* iter = element->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; } + + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadParamvol::Paramvol_contentRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + if(tag == "parameterised_position_size") + { + ParameterisedRead(child); + } + else if(tag == "loop") + { + LoopRead(child, &G4GDMLRead::Paramvol_contentRead); + } + } } -void G4GDMLReadParamvol:: -ParamvolRead(const xercesc::DOMElement* const element, G4LogicalVolume* mother) +// -------------------------------------------------------------------- +void G4GDMLReadParamvol::ParamvolRead(const xercesc::DOMElement* const element, + G4LogicalVolume* mother) { - G4String volumeref; + G4String volumeref; - parameterisation = new G4GDMLParameterisation(); - for (xercesc::DOMNode* iter = element->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + parameterisation = new G4GDMLParameterisation(); + for(xercesc::DOMNode* iter = element->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadParamvol::ParamvolRead()", "InvalidRead", - FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadParamvol::ParamvolRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (tag=="volumeref") { volumeref = RefRead(child); } - - } + if(tag == "volumeref") + { + volumeref = RefRead(child); + } + } - Paramvol_contentRead(element); + Paramvol_contentRead(element); - G4LogicalVolume* logvol = GetVolume(GenerateName(volumeref)); + G4LogicalVolume* logvol = GetVolume(GenerateName(volumeref)); - if (parameterisation->GetSize()==0) - { - G4Exception("G4GDMLReadParamvol::ParamvolRead()", - "ReadError", FatalException, - "No parameters are defined in parameterised volume!"); - } - G4String pv_name = logvol->GetName() + "_param"; - new G4PVParameterised(pv_name, logvol, mother, kUndefined, - parameterisation->GetSize(), parameterisation, check); + if(parameterisation->GetSize() == 0) + { + G4Exception("G4GDMLReadParamvol::ParamvolRead()", "ReadError", + FatalException, + "No parameters are defined in parameterised volume!"); + } + G4String pv_name = logvol->GetName() + "_param"; + new G4PVParameterised(pv_name, logvol, mother, kUndefined, + parameterisation->GetSize(), parameterisation, check); } diff --git a/source/persistency/gdml/src/G4GDMLReadSetup.cc b/source/persistency/gdml/src/G4GDMLReadSetup.cc index 145f35048e..8bb9670ba7 100644 --- a/source/persistency/gdml/src/G4GDMLReadSetup.cc +++ b/source/persistency/gdml/src/G4GDMLReadSetup.cc @@ -23,91 +23,105 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLReadSetup implementation // -// class G4GDMLReadSetup Implementation -// -// Original author: Zoltan Torzsok, November 2007 -// +// Author: Zoltan Torzsok, November 2007 // -------------------------------------------------------------------- #include "G4GDMLReadSetup.hh" -G4GDMLReadSetup::G4GDMLReadSetup() : G4GDMLReadSolids() +// -------------------------------------------------------------------- +G4GDMLReadSetup::G4GDMLReadSetup() + : G4GDMLReadSolids() { } +// -------------------------------------------------------------------- G4GDMLReadSetup::~G4GDMLReadSetup() { } +// -------------------------------------------------------------------- G4String G4GDMLReadSetup::GetSetup(const G4String& ref) { - if (setupMap.size() == 1) // If there is only one setup defined, - { // no matter how it is named - return setupMap.begin()->second; - } + if(setupMap.size() == 1) // If there is only one setup defined, + { // no matter how it is named + return setupMap.cbegin()->second; + } - if (setupMap.find(ref) == setupMap.end()) - { + if(setupMap.find(ref) == setupMap.cend()) + { #ifdef G4VERBOSE - std::ostringstream message; - message << "Referenced setup '" << ref << "' was not found!"; - G4Exception("G4GDMLReadSetup::getSetup()", "NullSetup", - JustWarning, message, "Returning NULL pointer!"); + std::ostringstream message; + message << "Referenced setup '" << ref << "' was not found!"; + G4Exception("G4GDMLReadSetup::getSetup()", "NullSetup", JustWarning, + message, "Returning NULL pointer!"); #endif - return ""; - } + return ""; + } - return setupMap[ref]; + return setupMap[ref]; } +// -------------------------------------------------------------------- void G4GDMLReadSetup::SetupRead(const xercesc::DOMElement* const element) { #ifdef G4VERBOSE - G4cout << "G4GDML: Reading setup..." << G4endl; + G4cout << "G4GDML: Reading setup..." << G4endl; #endif - G4String name; + G4String name; - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadSetup::SetupRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSetup::SetupRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="name") { name = attValue; } - } + if(attName == "name") + { + name = attValue; + } + } - for (xercesc::DOMNode* iter = element->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = element->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadSetup::SetupRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadSetup::SetupRead()", "InvalidRead", FatalException, + "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (tag == "world") { setupMap[name] = GenerateName(RefRead(child)); } - } + if(tag == "world") + { + setupMap[name] = GenerateName(RefRead(child)); + } + } } diff --git a/source/persistency/gdml/src/G4GDMLReadSolids.cc b/source/persistency/gdml/src/G4GDMLReadSolids.cc index ec1e5d0264..7eef907987 100644 --- a/source/persistency/gdml/src/G4GDMLReadSolids.cc +++ b/source/persistency/gdml/src/G4GDMLReadSolids.cc @@ -23,11 +23,9 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLReadSolids implementation // -// class G4GDMLReadSolids Implementation -// -// Original author: Zoltan Torzsok, November 2007 -// +// Author: Zoltan Torzsok, November 2007 // -------------------------------------------------------------------- #include "G4GDMLReadSolids.hh" @@ -69,2728 +67,3982 @@ #include "G4UnitsTable.hh" #include "G4SurfaceProperty.hh" -G4GDMLReadSolids::G4GDMLReadSolids() : G4GDMLReadMaterials() +// -------------------------------------------------------------------- +G4GDMLReadSolids::G4GDMLReadSolids() + : G4GDMLReadMaterials() { } +// -------------------------------------------------------------------- G4GDMLReadSolids::~G4GDMLReadSolids() { } -void G4GDMLReadSolids:: -BooleanRead(const xercesc::DOMElement* const booleanElement, const BooleanOp op) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::BooleanRead( + const xercesc::DOMElement* const booleanElement, const BooleanOp op) { - G4String name; - G4String first; - G4String scnd; - G4ThreeVector position(0.0,0.0,0.0); - G4ThreeVector rotation(0.0,0.0,0.0); - G4ThreeVector firstposition(0.0,0.0,0.0); - G4ThreeVector firstrotation(0.0,0.0,0.0); + G4String name; + G4String first; + G4String scnd; + G4ThreeVector position(0.0, 0.0, 0.0); + G4ThreeVector rotation(0.0, 0.0, 0.0); + G4ThreeVector firstposition(0.0, 0.0, 0.0); + G4ThreeVector firstrotation(0.0, 0.0, 0.0); - const xercesc::DOMNamedNodeMap* const attributes - = booleanElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + booleanElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadSolids::BooleanRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::BooleanRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="name") { name = GenerateName(attValue); } - } + if(attName == "name") + { + name = GenerateName(attValue); + } + } - for (xercesc::DOMNode* iter = booleanElement->getFirstChild(); - iter != 0;iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = booleanElement->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadSolids::BooleanRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadSolids::BooleanRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (tag=="first") { first = RefRead(child); } else - if (tag=="second") { scnd = RefRead(child); } else - if (tag=="position") { VectorRead(child,position); } else - if (tag=="rotation") { VectorRead(child,rotation); } else - if (tag=="positionref") - { position = GetPosition(GenerateName(RefRead(child))); } else - if (tag=="rotationref") - { rotation = GetRotation(GenerateName(RefRead(child))); } else - if (tag=="firstposition") { VectorRead(child,firstposition); } else - if (tag=="firstrotation") { VectorRead(child,firstrotation); } else - if (tag=="firstpositionref") - { firstposition = GetPosition(GenerateName(RefRead(child))); } else - if (tag=="firstrotationref") - { firstrotation = GetRotation(GenerateName(RefRead(child))); } - else - { - G4String error_msg = "Unknown tag in boolean solid: " + tag; - G4Exception("G4GDMLReadSolids::BooleanRead()", "ReadError", - FatalException, error_msg); - } - } + if(tag == "first") + { + first = RefRead(child); + } + else if(tag == "second") + { + scnd = RefRead(child); + } + else if(tag == "position") + { + VectorRead(child, position); + } + else if(tag == "rotation") + { + VectorRead(child, rotation); + } + else if(tag == "positionref") + { + position = GetPosition(GenerateName(RefRead(child))); + } + else if(tag == "rotationref") + { + rotation = GetRotation(GenerateName(RefRead(child))); + } + else if(tag == "firstposition") + { + VectorRead(child, firstposition); + } + else if(tag == "firstrotation") + { + VectorRead(child, firstrotation); + } + else if(tag == "firstpositionref") + { + firstposition = GetPosition(GenerateName(RefRead(child))); + } + else if(tag == "firstrotationref") + { + firstrotation = GetRotation(GenerateName(RefRead(child))); + } + else + { + G4String error_msg = "Unknown tag in boolean solid: " + tag; + G4Exception("G4GDMLReadSolids::BooleanRead()", "ReadError", + FatalException, error_msg); + } + } - G4VSolid* firstSolid = GetSolid(GenerateName(first)); - G4VSolid* secondSolid = GetSolid(GenerateName(scnd)); + G4VSolid* firstSolid = GetSolid(GenerateName(first)); + G4VSolid* secondSolid = GetSolid(GenerateName(scnd)); - G4Transform3D transform(GetRotationMatrix(rotation),position); + G4Transform3D transform(GetRotationMatrix(rotation), position); - if (( (firstrotation.x()!=0.0) || (firstrotation.y()!=0.0) - || (firstrotation.z()!=0.0)) - || ( (firstposition.x()!=0.0) || (firstposition.y()!=0.0) - || (firstposition.z()!=0.0))) - { - G4Transform3D firsttransform(GetRotationMatrix(firstrotation), - firstposition); - firstSolid = new G4DisplacedSolid(GenerateName("displaced_"+first), - firstSolid, firsttransform); - } + if(((firstrotation.x() != 0.0) || (firstrotation.y() != 0.0) || + (firstrotation.z() != 0.0)) || + ((firstposition.x() != 0.0) || (firstposition.y() != 0.0) || + (firstposition.z() != 0.0))) + { + G4Transform3D firsttransform(GetRotationMatrix(firstrotation), + firstposition); + firstSolid = new G4DisplacedSolid(GenerateName("displaced_" + first), + firstSolid, firsttransform); + } - if (op==UNION) - { new G4UnionSolid(name,firstSolid,secondSolid,transform); } else - if (op==SUBTRACTION) - { new G4SubtractionSolid(name,firstSolid,secondSolid,transform); } else - if (op==INTERSECTION) - { new G4IntersectionSolid(name,firstSolid,secondSolid,transform); } + if(op == UNION) + { + new G4UnionSolid(name, firstSolid, secondSolid, transform); + } + else if(op == SUBTRACTION) + { + new G4SubtractionSolid(name, firstSolid, secondSolid, transform); + } + else if(op == INTERSECTION) + { + new G4IntersectionSolid(name, firstSolid, secondSolid, transform); + } } +// -------------------------------------------------------------------- void G4GDMLReadSolids::BoxRead(const xercesc::DOMElement* const boxElement) { - G4String name; - G4double lunit = 1.0; - G4double x = 0.0; - G4double y = 0.0; - G4double z = 0.0; + G4String name; + G4double lunit = 1.0; + G4double x = 0.0; + G4double y = 0.0; + G4double z = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = boxElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + boxElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::BoxRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::BoxRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::BoxRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "x") + { + x = eval.Evaluate(attValue); + } + else if(attName == "y") + { + y = eval.Evaluate(attValue); + } + else if(attName == "z") + { + z = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::BoxRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } - else - if (attName=="x") { x = eval.Evaluate(attValue); } else - if (attName=="y") { y = eval.Evaluate(attValue); } else - if (attName=="z") { z = eval.Evaluate(attValue); } - } + x *= 0.5 * lunit; + y *= 0.5 * lunit; + z *= 0.5 * lunit; - x *= 0.5*lunit; - y *= 0.5*lunit; - z *= 0.5*lunit; - - new G4Box(name,x,y,z); + new G4Box(name, x, y, z); } +// -------------------------------------------------------------------- void G4GDMLReadSolids::ConeRead(const xercesc::DOMElement* const coneElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double rmin1 = 0.0; - G4double rmax1 = 0.0; - G4double rmin2 = 0.0; - G4double rmax2 = 0.0; - G4double z = 0.0; - G4double startphi = 0.0; - G4double deltaphi = 0.0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double rmin1 = 0.0; + G4double rmax1 = 0.0; + G4double rmin2 = 0.0; + G4double rmax2 = 0.0; + G4double z = 0.0; + G4double startphi = 0.0; + G4double deltaphi = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = coneElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + coneElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::ConeRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::ConeRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::ConeRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadSolids::ConeRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "rmin1") + { + rmin1 = eval.Evaluate(attValue); + } + else if(attName == "rmax1") + { + rmax1 = eval.Evaluate(attValue); + } + else if(attName == "rmin2") + { + rmin2 = eval.Evaluate(attValue); + } + else if(attName == "rmax2") + { + rmax2 = eval.Evaluate(attValue); + } + else if(attName == "z") + { + z = eval.Evaluate(attValue); + } + else if(attName == "startphi") + { + startphi = eval.Evaluate(attValue); + } + else if(attName == "deltaphi") + { + deltaphi = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::ConeRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::ConeRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="rmin1") { rmin1 = eval.Evaluate(attValue); } else - if (attName=="rmax1") { rmax1 = eval.Evaluate(attValue); } else - if (attName=="rmin2") { rmin2 = eval.Evaluate(attValue); } else - if (attName=="rmax2") { rmax2 = eval.Evaluate(attValue); } else - if (attName=="z") { z = eval.Evaluate(attValue); } else - if (attName=="startphi") { startphi = eval.Evaluate(attValue); } else - if (attName=="deltaphi") { deltaphi = eval.Evaluate(attValue); } - } + rmin1 *= lunit; + rmax1 *= lunit; + rmin2 *= lunit; + rmax2 *= lunit; + z *= 0.5 * lunit; + startphi *= aunit; + deltaphi *= aunit; - rmin1 *= lunit; - rmax1 *= lunit; - rmin2 *= lunit; - rmax2 *= lunit; - z *= 0.5*lunit; - startphi *= aunit; - deltaphi *= aunit; - - new G4Cons(name,rmin1,rmax1,rmin2,rmax2,z,startphi,deltaphi); + new G4Cons(name, rmin1, rmax1, rmin2, rmax2, z, startphi, deltaphi); } -void G4GDMLReadSolids:: -ElconeRead(const xercesc::DOMElement* const elconeElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::ElconeRead( + const xercesc::DOMElement* const elconeElement) { - G4String name; - G4double lunit = 1.0; - G4double dx = 0.0; - G4double dy = 0.0; - G4double zmax = 0.0; - G4double zcut = 0.0; + G4String name; + G4double lunit = 1.0; + G4double dx = 0.0; + G4double dy = 0.0; + G4double zmax = 0.0; + G4double zcut = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = elconeElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + elconeElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::ElconeRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::ElconeRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::ElconeRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "dx") + { + dx = eval.Evaluate(attValue); + } + else if(attName == "dy") + { + dy = eval.Evaluate(attValue); + } + else if(attName == "zmax") + { + zmax = eval.Evaluate(attValue); + } + else if(attName == "zcut") + { + zcut = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::ElconeRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="dx") { dx = eval.Evaluate(attValue); } else - if (attName=="dy") { dy = eval.Evaluate(attValue); } else - if (attName=="zmax") { zmax = eval.Evaluate(attValue); } else - if (attName=="zcut") { zcut = eval.Evaluate(attValue); } - } + zmax *= lunit; + zcut *= lunit; - zmax *= lunit; - zcut *= lunit; - - new G4EllipticalCone(name,dx,dy,zmax,zcut); + new G4EllipticalCone(name, dx, dy, zmax, zcut); } -void G4GDMLReadSolids:: -EllipsoidRead(const xercesc::DOMElement* const ellipsoidElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::EllipsoidRead( + const xercesc::DOMElement* const ellipsoidElement) { - G4String name; - G4double lunit = 1.0; - G4double ax = 0.0; - G4double by = 0.0; - G4double cz = 0.0; - G4double zcut1 = 0.0; - G4double zcut2 = 0.0; + G4String name; + G4double lunit = 1.0; + G4double ax = 0.0; + G4double by = 0.0; + G4double cz = 0.0; + G4double zcut1 = 0.0; + G4double zcut2 = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = ellipsoidElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + ellipsoidElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::EllipsoidRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::EllipsoidRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::EllipsoidRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "ax") + { + ax = eval.Evaluate(attValue); + } + else if(attName == "by") + { + by = eval.Evaluate(attValue); + } + else if(attName == "cz") + { + cz = eval.Evaluate(attValue); + } + else if(attName == "zcut1") + { + zcut1 = eval.Evaluate(attValue); + } + else if(attName == "zcut2") + { + zcut2 = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::EllipsoidRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="ax") { ax = eval.Evaluate(attValue); } else - if (attName=="by") { by = eval.Evaluate(attValue); } else - if (attName=="cz") { cz = eval.Evaluate(attValue); } else - if (attName=="zcut1") { zcut1 = eval.Evaluate(attValue); } else - if (attName=="zcut2") { zcut2 = eval.Evaluate(attValue); } - } + ax *= lunit; + by *= lunit; + cz *= lunit; + zcut1 *= lunit; + zcut2 *= lunit; - ax *= lunit; - by *= lunit; - cz *= lunit; - zcut1 *= lunit; - zcut2 *= lunit; - - new G4Ellipsoid(name,ax,by,cz,zcut1,zcut2); + new G4Ellipsoid(name, ax, by, cz, zcut1, zcut2); } -void G4GDMLReadSolids:: -EltubeRead(const xercesc::DOMElement* const eltubeElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::EltubeRead( + const xercesc::DOMElement* const eltubeElement) { - G4String name; - G4double lunit = 1.0; - G4double dx = 0.0; - G4double dy = 0.0; - G4double dz = 0.0; + G4String name; + G4double lunit = 1.0; + G4double dx = 0.0; + G4double dy = 0.0; + G4double dz = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = eltubeElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + eltubeElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::EltubeRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::EltubeRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::EltubeRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "dx") + { + dx = eval.Evaluate(attValue); + } + else if(attName == "dy") + { + dy = eval.Evaluate(attValue); + } + else if(attName == "dz") + { + dz = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::EltubeRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="dx") { dx = eval.Evaluate(attValue); } else - if (attName=="dy") { dy = eval.Evaluate(attValue); } else - if (attName=="dz") { dz = eval.Evaluate(attValue); } - } + dx *= lunit; + dy *= lunit; + dz *= lunit; - dx *= lunit; - dy *= lunit; - dz *= lunit; - - new G4EllipticalTube(name,dx,dy,dz); + new G4EllipticalTube(name, dx, dy, dz); } +// -------------------------------------------------------------------- void G4GDMLReadSolids::XtruRead(const xercesc::DOMElement* const xtruElement) { - G4String name; - G4double lunit = 1.0; + G4String name; + G4double lunit = 1.0; - const xercesc::DOMNamedNodeMap* const attributes - = xtruElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + xtruElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::XtruRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::XtruRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::XtruRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::XtruRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } - } + std::vector twoDimVertexList; + std::vector sectionList; - std::vector twoDimVertexList; - std::vector sectionList; + for(xercesc::DOMNode* iter = xtruElement->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - for (xercesc::DOMNode* iter = xtruElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadSolids::XtruRead()", "InvalidRead", FatalException, + "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadSolids::XtruRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + if(tag == "twoDimVertex") + { + twoDimVertexList.push_back(TwoDimVertexRead(child, lunit)); + } + else if(tag == "section") + { + sectionList.push_back(SectionRead(child, lunit)); + } + } - if (tag=="twoDimVertex") - { twoDimVertexList.push_back(TwoDimVertexRead(child,lunit)); } else - if (tag=="section") - { sectionList.push_back(SectionRead(child,lunit)); } - } - - new G4ExtrudedSolid(name,twoDimVertexList,sectionList); + new G4ExtrudedSolid(name, twoDimVertexList, sectionList); } +// -------------------------------------------------------------------- void G4GDMLReadSolids::HypeRead(const xercesc::DOMElement* const hypeElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double rmin = 0.0; - G4double rmax = 0.0; - G4double inst = 0.0; - G4double outst = 0.0; - G4double z = 0.0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double rmin = 0.0; + G4double rmax = 0.0; + G4double inst = 0.0; + G4double outst = 0.0; + G4double z = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = hypeElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + hypeElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::HypeRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::HypeRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::HypeRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadSolids::HypeRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "rmin") + { + rmin = eval.Evaluate(attValue); + } + else if(attName == "rmax") + { + rmax = eval.Evaluate(attValue); + } + else if(attName == "inst") + { + inst = eval.Evaluate(attValue); + } + else if(attName == "outst") + { + outst = eval.Evaluate(attValue); + } + else if(attName == "z") + { + z = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::HypeRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::HypeRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="rmin") { rmin = eval.Evaluate(attValue); } else - if (attName=="rmax") { rmax = eval.Evaluate(attValue); } else - if (attName=="inst") { inst = eval.Evaluate(attValue); } else - if (attName=="outst") { outst = eval.Evaluate(attValue); } else - if (attName=="z") { z = eval.Evaluate(attValue); } - } + rmin *= lunit; + rmax *= lunit; + inst *= aunit; + outst *= aunit; + z *= 0.5 * lunit; - rmin *= lunit; - rmax *= lunit; - inst *= aunit; - outst *= aunit; - z *= 0.5*lunit; - - new G4Hype(name,rmin,rmax,inst,outst,z); + new G4Hype(name, rmin, rmax, inst, outst, z); } -void G4GDMLReadSolids:: -MultiUnionNodeRead(const xercesc::DOMElement* const unionNodeElement, - G4MultiUnion* const multiUnionSolid) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::MultiUnionNodeRead( + const xercesc::DOMElement* const unionNodeElement, + G4MultiUnion* const multiUnionSolid) { - G4String name; - G4String solid; - G4ThreeVector position(0.0,0.0,0.0); - G4ThreeVector rotation(0.0,0.0,0.0); + G4String name; + G4String solid; + G4ThreeVector position(0.0, 0.0, 0.0); + G4ThreeVector rotation(0.0, 0.0, 0.0); - const xercesc::DOMNamedNodeMap* const attributes - = unionNodeElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + unionNodeElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadSolids::MultiUnionNodeRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::MultiUnionNodeRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="name") { name = GenerateName(attValue); } - } + if(attName == "name") + { + name = GenerateName(attValue); + } + } - for (xercesc::DOMNode* iter = unionNodeElement->getFirstChild(); - iter != 0;iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = unionNodeElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadSolids::MultiUnionNodeRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadSolids::MultiUnionNodeRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (tag=="position") { VectorRead(child,position); } else - if (tag=="rotation") { VectorRead(child,rotation); } else - if (tag=="positionref") - { position = GetPosition(GenerateName(RefRead(child))); } else - if (tag=="rotationref") - { rotation = GetRotation(GenerateName(RefRead(child))); } else - if (tag=="solid") { solid = RefRead(child); } - else - { - G4String error_msg = "Unknown tag in MultiUnion structure: " + tag; - G4Exception("G4GDMLReadSolids::MultiUnionNodeRead()", "ReadError", - FatalException, error_msg); - } - } - G4VSolid* solidNode = GetSolid(GenerateName(solid)); - G4Transform3D transform(GetRotationMatrix(rotation),position); - multiUnionSolid->AddNode(*solidNode, transform); + if(tag == "position") + { + VectorRead(child, position); + } + else if(tag == "rotation") + { + VectorRead(child, rotation); + } + else if(tag == "positionref") + { + position = GetPosition(GenerateName(RefRead(child))); + } + else if(tag == "rotationref") + { + rotation = GetRotation(GenerateName(RefRead(child))); + } + else if(tag == "solid") + { + solid = RefRead(child); + } + else + { + G4String error_msg = "Unknown tag in MultiUnion structure: " + tag; + G4Exception("G4GDMLReadSolids::MultiUnionNodeRead()", "ReadError", + FatalException, error_msg); + } + } + G4VSolid* solidNode = GetSolid(GenerateName(solid)); + G4Transform3D transform(GetRotationMatrix(rotation), position); + multiUnionSolid->AddNode(*solidNode, transform); } -void G4GDMLReadSolids:: -MultiUnionRead(const xercesc::DOMElement* const unionElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::MultiUnionRead( + const xercesc::DOMElement* const unionElement) { - G4String name; + G4String name; - const xercesc::DOMNamedNodeMap* const attributes - = unionElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + unionElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadSolids::MultiUnionRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::MultiUnionRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="name") { name = GenerateName(attValue); } - } + if(attName == "name") + { + name = GenerateName(attValue); + } + } - G4MultiUnion* multiUnion = new G4MultiUnion(name); + G4MultiUnion* multiUnion = new G4MultiUnion(name); - for (xercesc::DOMNode* iter = unionElement->getFirstChild(); - iter != 0;iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = unionElement->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadSolids::MultiUnionRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadSolids::MultiUnionRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (tag=="multiUnionNode") { MultiUnionNodeRead(child, multiUnion); } - else - { - G4String error_msg = "Unknown tag in MultiUnion structure: " + tag; - G4Exception("G4GDMLReadSolids::MultiUnionRead()", "ReadError", - FatalException, error_msg); - } - } - multiUnion->Voxelize(); + if(tag == "multiUnionNode") + { + MultiUnionNodeRead(child, multiUnion); + } + else + { + G4String error_msg = "Unknown tag in MultiUnion structure: " + tag; + G4Exception("G4GDMLReadSolids::MultiUnionRead()", "ReadError", + FatalException, error_msg); + } + } + multiUnion->Voxelize(); } +// -------------------------------------------------------------------- void G4GDMLReadSolids::OrbRead(const xercesc::DOMElement* const orbElement) { - G4String name; - G4double lunit = 1.0; - G4double r = 0.0; + G4String name; + G4double lunit = 1.0; + G4double r = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = orbElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + orbElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::OrbRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::OrbRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::OrbRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "r") + { + r = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::OrbRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="r") { r = eval.Evaluate(attValue); } - } + r *= lunit; - r *= lunit; - - new G4Orb(name,r); + new G4Orb(name, r); } +// -------------------------------------------------------------------- void G4GDMLReadSolids::ParaRead(const xercesc::DOMElement* const paraElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double x = 0.0; - G4double y = 0.0; - G4double z = 0.0; - G4double alpha = 0.0; - G4double theta = 0.0; - G4double phi = 0.0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double x = 0.0; + G4double y = 0.0; + G4double z = 0.0; + G4double alpha = 0.0; + G4double theta = 0.0; + G4double phi = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = paraElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + paraElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::ParaRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::ParaRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::ParaRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadSolids::ParaRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "x") + { + x = eval.Evaluate(attValue); + } + else if(attName == "y") + { + y = eval.Evaluate(attValue); + } + else if(attName == "z") + { + z = eval.Evaluate(attValue); + } + else if(attName == "alpha") + { + alpha = eval.Evaluate(attValue); + } + else if(attName == "theta") + { + theta = eval.Evaluate(attValue); + } + else if(attName == "phi") + { + phi = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::ParaRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::ParaRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="x") { x = eval.Evaluate(attValue); } else - if (attName=="y") { y = eval.Evaluate(attValue); } else - if (attName=="z") { z = eval.Evaluate(attValue); } else - if (attName=="alpha") { alpha = eval.Evaluate(attValue); } else - if (attName=="theta") { theta = eval.Evaluate(attValue); } else - if (attName=="phi") { phi = eval.Evaluate(attValue); } - } + x *= 0.5 * lunit; + y *= 0.5 * lunit; + z *= 0.5 * lunit; + alpha *= aunit; + theta *= aunit; + phi *= aunit; - x *= 0.5*lunit; - y *= 0.5*lunit; - z *= 0.5*lunit; - alpha *= aunit; - theta *= aunit; - phi *= aunit; - - new G4Para(name,x,y,z,alpha,theta,phi); + new G4Para(name, x, y, z, alpha, theta, phi); } -void G4GDMLReadSolids:: -ParaboloidRead(const xercesc::DOMElement* const paraElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::ParaboloidRead( + const xercesc::DOMElement* const paraElement) { - G4String name; - G4double lunit = 1.0; - G4double rlo = 0.0; - G4double rhi = 0.0; - G4double dz = 0.0; - - const xercesc::DOMNamedNodeMap* const attributes - = paraElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + G4String name; + G4double lunit = 1.0; + G4double rlo = 0.0; + G4double rhi = 0.0; + G4double dz = 0.0; - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + const xercesc::DOMNamedNodeMap* const attributes = + paraElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::ParaboloidRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::ParaboloidRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::ParaboloidRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "rlo") + { + rlo = eval.Evaluate(attValue); + } + else if(attName == "rhi") + { + rhi = eval.Evaluate(attValue); + } + else if(attName == "dz") + { + dz = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::ParaboloidRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="rlo") { rlo = eval.Evaluate(attValue); } else - if (attName=="rhi") { rhi = eval.Evaluate(attValue); } else - if (attName=="dz") { dz = eval.Evaluate(attValue); } - } + rlo *= 1. * lunit; + rhi *= 1. * lunit; + dz *= 1. * lunit; - rlo *= 1.*lunit; - rhi *= 1.*lunit; - dz *= 1.*lunit; - - new G4Paraboloid(name,dz,rlo,rhi); + new G4Paraboloid(name, dz, rlo, rhi); } -void G4GDMLReadSolids:: -PolyconeRead(const xercesc::DOMElement* const polyconeElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::PolyconeRead( + const xercesc::DOMElement* const polyconeElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double startphi = 0.0; - G4double deltaphi = 0.0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double startphi = 0.0; + G4double deltaphi = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = polyconeElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + polyconeElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::PolyconeRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::PolyconeRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::PolyconeRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::PolyconeRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::PolyconeRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="startphi") { startphi = eval.Evaluate(attValue); }else - if (attName=="deltaphi") { deltaphi = eval.Evaluate(attValue); } - } - - startphi *= aunit; - deltaphi *= aunit; - - std::vector zplaneList; - - for (xercesc::DOMNode* iter = polyconeElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") { - G4Exception("G4GDMLReadSolids::PolyconeRead()", - "InvalidRead", FatalException, "No child found!"); - return; + G4Exception("G4GDMLReadSolids::PolyconeRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); } - const G4String tag = Transcode(child->getTagName()); + } + else if(attName == "startphi") + { + startphi = eval.Evaluate(attValue); + } + else if(attName == "deltaphi") + { + deltaphi = eval.Evaluate(attValue); + } + } - if (tag=="zplane") { zplaneList.push_back(ZplaneRead(child)); } - } + startphi *= aunit; + deltaphi *= aunit; - G4int numZPlanes = zplaneList.size(); + std::vector zplaneList; - G4double* rmin_array = new G4double[numZPlanes]; - G4double* rmax_array = new G4double[numZPlanes]; - G4double* z_array = new G4double[numZPlanes]; + for(xercesc::DOMNode* iter = polyconeElement->getFirstChild(); iter!= nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - for (G4int i=0; i(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadSolids::PolyconeRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - new G4Polycone(name,startphi,deltaphi,numZPlanes, - z_array,rmin_array,rmax_array); + if(tag == "zplane") + { + zplaneList.push_back(ZplaneRead(child)); + } + } - delete [] rmin_array; - delete [] rmax_array; - delete [] z_array; + G4int numZPlanes = zplaneList.size(); + + G4double* rmin_array = new G4double[numZPlanes]; + G4double* rmax_array = new G4double[numZPlanes]; + G4double* z_array = new G4double[numZPlanes]; + + for(G4int i = 0; i < numZPlanes; ++i) + { + rmin_array[i] = zplaneList[i].rmin * lunit; + rmax_array[i] = zplaneList[i].rmax * lunit; + z_array[i] = zplaneList[i].z * lunit; + } + + new G4Polycone(name, startphi, deltaphi, numZPlanes, z_array, rmin_array, + rmax_array); + + delete[] rmin_array; + delete[] rmax_array; + delete[] z_array; } -void G4GDMLReadSolids:: -GenericPolyconeRead(const xercesc::DOMElement* const polyconeElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::GenericPolyconeRead( + const xercesc::DOMElement* const polyconeElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double startphi = 0.0; - G4double deltaphi = 0.0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double startphi = 0.0; + G4double deltaphi = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = polyconeElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + polyconeElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::GenericPolyconeRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::GenericPolyconeRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::GenericPolyconeRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::GenericPolyconeRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::GenericPolyconeRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="startphi") { startphi = eval.Evaluate(attValue); }else - if (attName=="deltaphi") { deltaphi = eval.Evaluate(attValue); } - } - - startphi *= aunit; - deltaphi *= aunit; - - std::vector rzPointList; - - for (xercesc::DOMNode* iter = polyconeElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") { - G4Exception("G4GDMLReadSolids::GenericPolyconeRead()", - "InvalidRead", FatalException, "No child found!"); - return; + G4Exception("G4GDMLReadSolids::GenericPolyconeRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); } - const G4String tag = Transcode(child->getTagName()); + } + else if(attName == "startphi") + { + startphi = eval.Evaluate(attValue); + } + else if(attName == "deltaphi") + { + deltaphi = eval.Evaluate(attValue); + } + } - if (tag=="rzpoint") { rzPointList.push_back(RZPointRead(child)); } - } + startphi *= aunit; + deltaphi *= aunit; - G4int numRZPoints = rzPointList.size(); + std::vector rzPointList; - G4double* r_array = new G4double[numRZPoints]; - G4double* z_array = new G4double[numRZPoints]; + for(xercesc::DOMNode* iter = polyconeElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - for (G4int i=0; i(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadSolids::GenericPolyconeRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "rzpoint") + { + rzPointList.push_back(RZPointRead(child)); + } + } + + G4int numRZPoints = rzPointList.size(); + + G4double* r_array = new G4double[numRZPoints]; + G4double* z_array = new G4double[numRZPoints]; + + for(G4int i = 0; i < numRZPoints; ++i) + { + r_array[i] = rzPointList[i].r * lunit; + z_array[i] = rzPointList[i].z * lunit; + } + new G4GenericPolycone(name, startphi, deltaphi, numRZPoints, r_array, + z_array); + delete[] r_array; + delete[] z_array; } -void G4GDMLReadSolids:: -PolyhedraRead(const xercesc::DOMElement* const polyhedraElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::PolyhedraRead( + const xercesc::DOMElement* const polyhedraElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double startphi = 0.0; - G4double deltaphi = 0.0; - G4int numsides = 0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double startphi = 0.0; + G4double deltaphi = 0.0; + G4int numsides = 0; - const xercesc::DOMNamedNodeMap* const attributes - = polyhedraElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + polyhedraElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::PolyhedraRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::PolyhedraRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::PolyhedraRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::PolyhedraRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::PolyhedraRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="startphi") { startphi = eval.Evaluate(attValue); } else - if (attName=="deltaphi") { deltaphi = eval.Evaluate(attValue); } else - if (attName=="numsides") { numsides = eval.EvaluateInteger(attValue); } - } - - startphi *= aunit; - deltaphi *= aunit; - - std::vector zplaneList; - - for (xercesc::DOMNode* iter = polyhedraElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") { - G4Exception("G4GDMLReadSolids::PolyhedraRead()", - "InvalidRead", FatalException, "No child found!"); - return; + G4Exception("G4GDMLReadSolids::PolyhedraRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); } - const G4String tag = Transcode(child->getTagName()); + } + else if(attName == "startphi") + { + startphi = eval.Evaluate(attValue); + } + else if(attName == "deltaphi") + { + deltaphi = eval.Evaluate(attValue); + } + else if(attName == "numsides") + { + numsides = eval.EvaluateInteger(attValue); + } + } - if (tag=="zplane") { zplaneList.push_back(ZplaneRead(child)); } - } + startphi *= aunit; + deltaphi *= aunit; - G4int numZPlanes = zplaneList.size(); + std::vector zplaneList; - G4double* rmin_array = new G4double[numZPlanes]; - G4double* rmax_array = new G4double[numZPlanes]; - G4double* z_array = new G4double[numZPlanes]; + for(xercesc::DOMNode* iter = polyhedraElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - for (G4int i=0; i(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadSolids::PolyhedraRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - new G4Polyhedra(name,startphi,deltaphi,numsides,numZPlanes, - z_array,rmin_array,rmax_array); + if(tag == "zplane") + { + zplaneList.push_back(ZplaneRead(child)); + } + } - delete [] rmin_array; - delete [] rmax_array; - delete [] z_array; + G4int numZPlanes = zplaneList.size(); + + G4double* rmin_array = new G4double[numZPlanes]; + G4double* rmax_array = new G4double[numZPlanes]; + G4double* z_array = new G4double[numZPlanes]; + + for(G4int i = 0; i < numZPlanes; ++i) + { + rmin_array[i] = zplaneList[i].rmin * lunit; + rmax_array[i] = zplaneList[i].rmax * lunit; + z_array[i] = zplaneList[i].z * lunit; + } + + new G4Polyhedra(name, startphi, deltaphi, numsides, numZPlanes, z_array, + rmin_array, rmax_array); + + delete[] rmin_array; + delete[] rmax_array; + delete[] z_array; } -void G4GDMLReadSolids:: -GenericPolyhedraRead(const xercesc::DOMElement* const polyhedraElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::GenericPolyhedraRead( + const xercesc::DOMElement* const polyhedraElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double startphi = 0.0; - G4double deltaphi = 0.0; - G4int numsides = 0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double startphi = 0.0; + G4double deltaphi = 0.0; + G4int numsides = 0; - const xercesc::DOMNamedNodeMap* const attributes - = polyhedraElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + polyhedraElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::GenericPolyhedraRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::GenericPolyhedraRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::GenericPolyhedraRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::GenericPolyhedraRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::GenericPolyhedraRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="startphi") { startphi = eval.Evaluate(attValue); } else - if (attName=="deltaphi") { deltaphi = eval.Evaluate(attValue); } else - if (attName=="numsides") { numsides = eval.EvaluateInteger(attValue); } - } - - startphi *= aunit; - deltaphi *= aunit; - - std::vector rzpointList; - - for (xercesc::DOMNode* iter = polyhedraElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") { - G4Exception("G4GDMLReadSolids::GenericPolyhedraRead()", - "InvalidRead", FatalException, "No child found!"); - return; + G4Exception("G4GDMLReadSolids::GenericPolyhedraRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); } - const G4String tag = Transcode(child->getTagName()); + } + else if(attName == "startphi") + { + startphi = eval.Evaluate(attValue); + } + else if(attName == "deltaphi") + { + deltaphi = eval.Evaluate(attValue); + } + else if(attName == "numsides") + { + numsides = eval.EvaluateInteger(attValue); + } + } - if (tag=="rzpoint") { rzpointList.push_back(RZPointRead(child)); } - } + startphi *= aunit; + deltaphi *= aunit; - G4int numRZPoints = rzpointList.size(); + std::vector rzpointList; - G4double* r_array = new G4double[numRZPoints]; - G4double* z_array = new G4double[numRZPoints]; + for(xercesc::DOMNode* iter = polyhedraElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - for (G4int i=0; i(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadSolids::GenericPolyhedraRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - new G4Polyhedra(name,startphi,deltaphi,numsides,numRZPoints, - r_array,z_array); + if(tag == "rzpoint") + { + rzpointList.push_back(RZPointRead(child)); + } + } - delete [] r_array; - delete [] z_array; + G4int numRZPoints = rzpointList.size(); + + G4double* r_array = new G4double[numRZPoints]; + G4double* z_array = new G4double[numRZPoints]; + + for(G4int i = 0; i < numRZPoints; ++i) + { + r_array[i] = rzpointList[i].r * lunit; + z_array[i] = rzpointList[i].z * lunit; + } + + new G4Polyhedra(name, startphi, deltaphi, numsides, numRZPoints, r_array, + z_array); + + delete[] r_array; + delete[] z_array; } -G4QuadrangularFacet* G4GDMLReadSolids:: -QuadrangularRead(const xercesc::DOMElement* const quadrangularElement) +// -------------------------------------------------------------------- +G4QuadrangularFacet* G4GDMLReadSolids::QuadrangularRead( + const xercesc::DOMElement* const quadrangularElement) { - G4ThreeVector vertex1; - G4ThreeVector vertex2; - G4ThreeVector vertex3; - G4ThreeVector vertex4; - G4FacetVertexType type = ABSOLUTE; - G4double lunit = 1.0; + G4ThreeVector vertex1; + G4ThreeVector vertex2; + G4ThreeVector vertex3; + G4ThreeVector vertex4; + G4FacetVertexType type = ABSOLUTE; + G4double lunit = 1.0; - const xercesc::DOMNamedNodeMap* const attributes - = quadrangularElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + quadrangularElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::QuadrangularRead()", "InvalidRead", + FatalException, "No attribute found!"); + return nullptr; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "vertex1") + { + vertex1 = GetPosition(GenerateName(attValue)); + } + else if(attName == "vertex2") + { + vertex2 = GetPosition(GenerateName(attValue)); + } + else if(attName == "vertex3") + { + vertex3 = GetPosition(GenerateName(attValue)); + } + else if(attName == "vertex4") + { + vertex4 = GetPosition(GenerateName(attValue)); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::QuadrangularRead()", - "InvalidRead", FatalException, "No attribute found!"); - return 0; + G4Exception("G4GDMLReadSolids::QuadrangularRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "type") + { + if(attValue == "RELATIVE") + { + type = RELATIVE; + } + } + } - if (attName=="vertex1") - { vertex1 = GetPosition(GenerateName(attValue)); } else - if (attName=="vertex2") - { vertex2 = GetPosition(GenerateName(attValue)); } else - if (attName=="vertex3") - { vertex3 = GetPosition(GenerateName(attValue)); } else - if (attName=="vertex4") - { vertex4 = GetPosition(GenerateName(attValue)); } else - if (attName=="lunit") - { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::QuadrangularRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="type") - { if (attValue=="RELATIVE") { type = RELATIVE; } } - } - - return new G4QuadrangularFacet(vertex1*lunit,vertex2*lunit, - vertex3*lunit,vertex4*lunit,type); + return new G4QuadrangularFacet(vertex1 * lunit, vertex2 * lunit, + vertex3 * lunit, vertex4 * lunit, type); } -void G4GDMLReadSolids:: -ReflectedSolidRead(const xercesc::DOMElement* const reflectedSolidElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::ReflectedSolidRead( + const xercesc::DOMElement* const reflectedSolidElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4String solid; - G4ThreeVector scale(1.0,1.0,1.0); - G4ThreeVector rotation; - G4ThreeVector position; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4String solid; + G4ThreeVector scale(1.0, 1.0, 1.0); + G4ThreeVector rotation; + G4ThreeVector position; - const xercesc::DOMNamedNodeMap* const attributes - = reflectedSolidElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + reflectedSolidElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::ReflectedSolidRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::ReflectedSolidRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::ReflectedSolidRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadSolids::ReflectedSolidRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "solid") + { + solid = GenerateName(attValue); + } + else if(attName == "sx") + { + scale.setX(eval.Evaluate(attValue)); + } + else if(attName == "sy") + { + scale.setY(eval.Evaluate(attValue)); + } + else if(attName == "sz") + { + scale.setZ(eval.Evaluate(attValue)); + } + else if(attName == "rx") + { + rotation.setX(eval.Evaluate(attValue)); + } + else if(attName == "ry") + { + rotation.setY(eval.Evaluate(attValue)); + } + else if(attName == "rz") + { + rotation.setZ(eval.Evaluate(attValue)); + } + else if(attName == "dx") + { + position.setX(eval.Evaluate(attValue)); + } + else if(attName == "dy") + { + position.setY(eval.Evaluate(attValue)); + } + else if(attName == "dz") + { + position.setZ(eval.Evaluate(attValue)); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::ReflectedSolidRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::ReflectedSolidRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="solid") { solid = GenerateName(attValue); } else - if (attName=="sx") { scale.setX(eval.Evaluate(attValue)); } else - if (attName=="sy") { scale.setY(eval.Evaluate(attValue)); } else - if (attName=="sz") { scale.setZ(eval.Evaluate(attValue)); } else - if (attName=="rx") { rotation.setX(eval.Evaluate(attValue)); } else - if (attName=="ry") { rotation.setY(eval.Evaluate(attValue)); } else - if (attName=="rz") { rotation.setZ(eval.Evaluate(attValue)); } else - if (attName=="dx") { position.setX(eval.Evaluate(attValue)); } else - if (attName=="dy") { position.setY(eval.Evaluate(attValue)); } else - if (attName=="dz") { position.setZ(eval.Evaluate(attValue)); } - } + rotation *= aunit; + position *= lunit; - rotation *= aunit; - position *= lunit; + G4Transform3D transform(GetRotationMatrix(rotation), position); + transform = transform * G4Scale3D(scale.x(), scale.y(), scale.z()); - G4Transform3D transform(GetRotationMatrix(rotation),position); - transform = transform*G4Scale3D(scale.x(),scale.y(),scale.z()); - - new G4ReflectedSolid(name,GetSolid(solid),transform); + new G4ReflectedSolid(name, GetSolid(solid), transform); } -void G4GDMLReadSolids:: -ScaledSolidRead(const xercesc::DOMElement* const scaledSolidElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::ScaledSolidRead( + const xercesc::DOMElement* const scaledSolidElement) { - G4String name; - G4VSolid* solid=0; - G4ThreeVector scale(1.0,1.0,1.0); + G4String name; + G4VSolid* solid = nullptr; + G4ThreeVector scale(1.0, 1.0, 1.0); - const xercesc::DOMNamedNodeMap* const attributes - = scaledSolidElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + scaledSolidElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadSolids::ScaledSolidRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::ScaledSolidRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="name") { name = GenerateName(attValue); } - } + if(attName == "name") + { + name = GenerateName(attValue); + } + } - for (xercesc::DOMNode* iter = scaledSolidElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = scaledSolidElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadSolids::ScaledSolidRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadSolids::ScaledSolidRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (tag=="solidref") - { solid = GetSolid(GenerateName(RefRead(child))); } - else if (tag=="scale") - { VectorRead(child,scale); } - else if (tag=="scaleref") - { scale = GetScale(GenerateName(RefRead(child))); } - else - { - G4String error_msg = "Unknown tag in scaled solid: " + tag; - G4Exception("G4GDMLReadSolids::ScaledSolidRead()", "ReadError", - FatalException, error_msg); - return; - } - } + if(tag == "solidref") + { + solid = GetSolid(GenerateName(RefRead(child))); + } + else if(tag == "scale") + { + VectorRead(child, scale); + } + else if(tag == "scaleref") + { + scale = GetScale(GenerateName(RefRead(child))); + } + else + { + G4String error_msg = "Unknown tag in scaled solid: " + tag; + G4Exception("G4GDMLReadSolids::ScaledSolidRead()", "ReadError", + FatalException, error_msg); + return; + } + } - G4Scale3D transform = G4Scale3D(scale.x(),scale.y(),scale.z()); - - new G4ScaledSolid(name, solid ,transform); + G4Scale3D transform = G4Scale3D(scale.x(), scale.y(), scale.z()); + + new G4ScaledSolid(name, solid, transform); } -G4ExtrudedSolid::ZSection G4GDMLReadSolids:: -SectionRead(const xercesc::DOMElement* const sectionElement,G4double lunit) +// -------------------------------------------------------------------- +G4ExtrudedSolid::ZSection G4GDMLReadSolids::SectionRead( + const xercesc::DOMElement* const sectionElement, G4double lunit) { - G4double zPosition = 0.0; - G4TwoVector Offset; - G4double scalingFactor = 1.0; + G4double zPosition = 0.0; + G4TwoVector Offset; + G4double scalingFactor = 1.0; - const xercesc::DOMNamedNodeMap* const attributes - = sectionElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + sectionElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadSolids::SectionRead()", - "InvalidRead", FatalException, "No attribute found!"); - return G4ExtrudedSolid::ZSection(zPosition,Offset,scalingFactor); - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::SectionRead()", "InvalidRead", + FatalException, "No attribute found!"); + return G4ExtrudedSolid::ZSection(zPosition, Offset, scalingFactor); + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="zPosition") - { zPosition = eval.Evaluate(attValue)*lunit; } else - if (attName=="xOffset") - { Offset.setX(eval.Evaluate(attValue)*lunit); } else - if (attName=="yOffset") - { Offset.setY(eval.Evaluate(attValue)*lunit); } else - if (attName=="scalingFactor") - { scalingFactor = eval.Evaluate(attValue); } - } + if(attName == "zPosition") + { + zPosition = eval.Evaluate(attValue) * lunit; + } + else if(attName == "xOffset") + { + Offset.setX(eval.Evaluate(attValue) * lunit); + } + else if(attName == "yOffset") + { + Offset.setY(eval.Evaluate(attValue) * lunit); + } + else if(attName == "scalingFactor") + { + scalingFactor = eval.Evaluate(attValue); + } + } - return G4ExtrudedSolid::ZSection(zPosition,Offset,scalingFactor); + return G4ExtrudedSolid::ZSection(zPosition, Offset, scalingFactor); } -void G4GDMLReadSolids:: -SphereRead(const xercesc::DOMElement* const sphereElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::SphereRead( + const xercesc::DOMElement* const sphereElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double rmin = 0.0; - G4double rmax = 0.0; - G4double startphi = 0.0; - G4double deltaphi = 0.0; - G4double starttheta = 0.0; - G4double deltatheta = 0.0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double rmin = 0.0; + G4double rmax = 0.0; + G4double startphi = 0.0; + G4double deltaphi = 0.0; + G4double starttheta = 0.0; + G4double deltatheta = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = sphereElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + sphereElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::SphereRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::SphereRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::SphereRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadSolids::SphereRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "rmin") + { + rmin = eval.Evaluate(attValue); + } + else if(attName == "rmax") + { + rmax = eval.Evaluate(attValue); + } + else if(attName == "startphi") + { + startphi = eval.Evaluate(attValue); + } + else if(attName == "deltaphi") + { + deltaphi = eval.Evaluate(attValue); + } + else if(attName == "starttheta") + { + starttheta = eval.Evaluate(attValue); + } + else if(attName == "deltatheta") + { + deltatheta = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::SphereRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::SphereRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="rmin") { rmin = eval.Evaluate(attValue); } else - if (attName=="rmax") { rmax = eval.Evaluate(attValue); } else - if (attName=="startphi") { startphi = eval.Evaluate(attValue); } else - if (attName=="deltaphi") { deltaphi = eval.Evaluate(attValue); } else - if (attName=="starttheta") { starttheta = eval.Evaluate(attValue); } else - if (attName=="deltatheta") { deltatheta = eval.Evaluate(attValue); } - } + rmin *= lunit; + rmax *= lunit; + startphi *= aunit; + deltaphi *= aunit; + starttheta *= aunit; + deltatheta *= aunit; - rmin *= lunit; - rmax *= lunit; - startphi *= aunit; - deltaphi *= aunit; - starttheta *= aunit; - deltatheta *= aunit; - - new G4Sphere(name,rmin,rmax,startphi,deltaphi,starttheta,deltatheta); + new G4Sphere(name, rmin, rmax, startphi, deltaphi, starttheta, deltatheta); } -void G4GDMLReadSolids:: -TessellatedRead(const xercesc::DOMElement* const tessellatedElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::TessellatedRead( + const xercesc::DOMElement* const tessellatedElement) { - G4String name; + G4String name; - const xercesc::DOMNamedNodeMap* const attributes - = tessellatedElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + tessellatedElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadSolids::TessellatedRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::TessellatedRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="name") { name = GenerateName(attValue); } - } - - G4TessellatedSolid *tessellated = new G4TessellatedSolid(name); + if(attName == "name") + { + name = GenerateName(attValue); + } + } - for (xercesc::DOMNode* iter = tessellatedElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + G4TessellatedSolid* tessellated = new G4TessellatedSolid(name); - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadSolids::TessellatedRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + for(xercesc::DOMNode* iter = tessellatedElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - if (tag=="triangular") - { tessellated->AddFacet(TriangularRead(child)); } else - if (tag=="quadrangular") - { tessellated->AddFacet(QuadrangularRead(child)); } - } + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadSolids::TessellatedRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - tessellated->SetSolidClosed(true); + if(tag == "triangular") + { + tessellated->AddFacet(TriangularRead(child)); + } + else if(tag == "quadrangular") + { + tessellated->AddFacet(QuadrangularRead(child)); + } + } + + tessellated->SetSolidClosed(true); } +// -------------------------------------------------------------------- void G4GDMLReadSolids::TetRead(const xercesc::DOMElement* const tetElement) { - G4String name; - G4ThreeVector vertex1; - G4ThreeVector vertex2; - G4ThreeVector vertex3; - G4ThreeVector vertex4; - G4double lunit = 1.0; - - const xercesc::DOMNamedNodeMap* const attributes - = tetElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + G4String name; + G4ThreeVector vertex1; + G4ThreeVector vertex2; + G4ThreeVector vertex3; + G4ThreeVector vertex4; + G4double lunit = 1.0; - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + const xercesc::DOMNamedNodeMap* const attributes = + tetElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::TetRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::TetRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::TetRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "vertex1") + { + vertex1 = GetPosition(GenerateName(attValue)); + } + else if(attName == "vertex2") + { + vertex2 = GetPosition(GenerateName(attValue)); + } + else if(attName == "vertex3") + { + vertex3 = GetPosition(GenerateName(attValue)); + } + else if(attName == "vertex4") + { + vertex4 = GetPosition(GenerateName(attValue)); + } + } - if (attName=="name") - { name = GenerateName(attValue); } else - if (attName=="lunit") - { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::TetRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="vertex1") - { vertex1 = GetPosition(GenerateName(attValue)); } else - if (attName=="vertex2") - { vertex2 = GetPosition(GenerateName(attValue)); } else - if (attName=="vertex3") - { vertex3 = GetPosition(GenerateName(attValue)); } else - if (attName=="vertex4") - { vertex4 = GetPosition(GenerateName(attValue)); } - } - - new G4Tet(name,vertex1*lunit,vertex2*lunit,vertex3*lunit,vertex4*lunit); + new G4Tet(name, vertex1 * lunit, vertex2 * lunit, vertex3 * lunit, + vertex4 * lunit); } +// -------------------------------------------------------------------- void G4GDMLReadSolids::TorusRead(const xercesc::DOMElement* const torusElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double rmin = 0.0; - G4double rmax = 0.0; - G4double rtor = 0.0; - G4double startphi = 0.0; - G4double deltaphi = 0.0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double rmin = 0.0; + G4double rmax = 0.0; + G4double rtor = 0.0; + G4double startphi = 0.0; + G4double deltaphi = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = torusElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + torusElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::TorusRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::TorusRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::TorusRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadSolids::TorusRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "rmin") + { + rmin = eval.Evaluate(attValue); + } + else if(attName == "rmax") + { + rmax = eval.Evaluate(attValue); + } + else if(attName == "rtor") + { + rtor = eval.Evaluate(attValue); + } + else if(attName == "startphi") + { + startphi = eval.Evaluate(attValue); + } + else if(attName == "deltaphi") + { + deltaphi = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::TorusRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::TorusRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="rmin") { rmin = eval.Evaluate(attValue); } else - if (attName=="rmax") { rmax = eval.Evaluate(attValue); } else - if (attName=="rtor") { rtor = eval.Evaluate(attValue); } else - if (attName=="startphi") { startphi = eval.Evaluate(attValue); } else - if (attName=="deltaphi") { deltaphi = eval.Evaluate(attValue); } - } + rmin *= lunit; + rmax *= lunit; + rtor *= lunit; + startphi *= aunit; + deltaphi *= aunit; - rmin *= lunit; - rmax *= lunit; - rtor *= lunit; - startphi *= aunit; - deltaphi *= aunit; - - new G4Torus(name,rmin,rmax,rtor,startphi,deltaphi); + new G4Torus(name, rmin, rmax, rtor, startphi, deltaphi); } -void G4GDMLReadSolids:: -GenTrapRead(const xercesc::DOMElement* const gtrapElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::GenTrapRead( + const xercesc::DOMElement* const gtrapElement) { - G4String name; - G4double lunit = 1.0; - G4double dz =0.0; - G4double v1x=0.0, v1y=0.0, v2x=0.0, v2y=0.0, v3x=0.0, v3y=0.0, - v4x=0.0, v4y=0.0, v5x=0.0, v5y=0.0, v6x=0.0, v6y=0.0, - v7x=0.0, v7y=0.0, v8x=0.0, v8y=0.0; + G4String name; + G4double lunit = 1.0; + G4double dz = 0.0; + G4double v1x = 0.0, v1y = 0.0, v2x = 0.0, v2y = 0.0, v3x = 0.0, v3y = 0.0, + v4x = 0.0, v4y = 0.0, v5x = 0.0, v5y = 0.0, v6x = 0.0, v6y = 0.0, + v7x = 0.0, v7y = 0.0, v8x = 0.0, v8y = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = gtrapElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + gtrapElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::GenTrapRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::GenTrapRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::GenTrapRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "dz") + { + dz = eval.Evaluate(attValue); + } + else if(attName == "v1x") + { + v1x = eval.Evaluate(attValue); + } + else if(attName == "v1y") + { + v1y = eval.Evaluate(attValue); + } + else if(attName == "v2x") + { + v2x = eval.Evaluate(attValue); + } + else if(attName == "v2y") + { + v2y = eval.Evaluate(attValue); + } + else if(attName == "v3x") + { + v3x = eval.Evaluate(attValue); + } + else if(attName == "v3y") + { + v3y = eval.Evaluate(attValue); + } + else if(attName == "v4x") + { + v4x = eval.Evaluate(attValue); + } + else if(attName == "v4y") + { + v4y = eval.Evaluate(attValue); + } + else if(attName == "v5x") + { + v5x = eval.Evaluate(attValue); + } + else if(attName == "v5y") + { + v5y = eval.Evaluate(attValue); + } + else if(attName == "v6x") + { + v6x = eval.Evaluate(attValue); + } + else if(attName == "v6y") + { + v6y = eval.Evaluate(attValue); + } + else if(attName == "v7x") + { + v7x = eval.Evaluate(attValue); + } + else if(attName == "v7y") + { + v7y = eval.Evaluate(attValue); + } + else if(attName == "v8x") + { + v8x = eval.Evaluate(attValue); + } + else if(attName == "v8y") + { + v8y = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::GenTrapRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="dz") { dz = eval.Evaluate(attValue); } else - if (attName=="v1x") { v1x = eval.Evaluate(attValue); } else - if (attName=="v1y") { v1y = eval.Evaluate(attValue); } else - if (attName=="v2x") { v2x = eval.Evaluate(attValue); } else - if (attName=="v2y") { v2y = eval.Evaluate(attValue); } else - if (attName=="v3x") { v3x = eval.Evaluate(attValue); } else - if (attName=="v3y") { v3y = eval.Evaluate(attValue); } else - if (attName=="v4x") { v4x = eval.Evaluate(attValue); } else - if (attName=="v4y") { v4y = eval.Evaluate(attValue); } else - if (attName=="v5x") { v5x = eval.Evaluate(attValue); } else - if (attName=="v5y") { v5y = eval.Evaluate(attValue); } else - if (attName=="v6x") { v6x = eval.Evaluate(attValue); } else - if (attName=="v6y") { v6y = eval.Evaluate(attValue); } else - if (attName=="v7x") { v7x = eval.Evaluate(attValue); } else - if (attName=="v7y") { v7y = eval.Evaluate(attValue); } else - if (attName=="v8x") { v8x = eval.Evaluate(attValue); } else - if (attName=="v8y") { v8y = eval.Evaluate(attValue); } - } - - dz *= lunit; - std::vector vertices; - vertices.push_back(G4TwoVector(v1x*lunit,v1y*lunit)); - vertices.push_back(G4TwoVector(v2x*lunit,v2y*lunit)); - vertices.push_back(G4TwoVector(v3x*lunit,v3y*lunit)); - vertices.push_back(G4TwoVector(v4x*lunit,v4y*lunit)); - vertices.push_back(G4TwoVector(v5x*lunit,v5y*lunit)); - vertices.push_back(G4TwoVector(v6x*lunit,v6y*lunit)); - vertices.push_back(G4TwoVector(v7x*lunit,v7y*lunit)); - vertices.push_back(G4TwoVector(v8x*lunit,v8y*lunit)); - new G4GenericTrap(name,dz,vertices); + dz *= lunit; + std::vector vertices; + vertices.push_back(G4TwoVector(v1x * lunit, v1y * lunit)); + vertices.push_back(G4TwoVector(v2x * lunit, v2y * lunit)); + vertices.push_back(G4TwoVector(v3x * lunit, v3y * lunit)); + vertices.push_back(G4TwoVector(v4x * lunit, v4y * lunit)); + vertices.push_back(G4TwoVector(v5x * lunit, v5y * lunit)); + vertices.push_back(G4TwoVector(v6x * lunit, v6y * lunit)); + vertices.push_back(G4TwoVector(v7x * lunit, v7y * lunit)); + vertices.push_back(G4TwoVector(v8x * lunit, v8y * lunit)); + new G4GenericTrap(name, dz, vertices); } +// -------------------------------------------------------------------- void G4GDMLReadSolids::TrapRead(const xercesc::DOMElement* const trapElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double z = 0.0; - G4double theta = 0.0; - G4double phi = 0.0; - G4double y1 = 0.0; - G4double x1 = 0.0; - G4double x2 = 0.0; - G4double alpha1 = 0.0; - G4double y2 = 0.0; - G4double x3 = 0.0; - G4double x4 = 0.0; - G4double alpha2 = 0.0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double z = 0.0; + G4double theta = 0.0; + G4double phi = 0.0; + G4double y1 = 0.0; + G4double x1 = 0.0; + G4double x2 = 0.0; + G4double alpha1 = 0.0; + G4double y2 = 0.0; + G4double x3 = 0.0; + G4double x4 = 0.0; + G4double alpha2 = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = trapElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + trapElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::TrapRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::TrapRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::TrapRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadSolids::TrapRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "z") + { + z = eval.Evaluate(attValue); + } + else if(attName == "theta") + { + theta = eval.Evaluate(attValue); + } + else if(attName == "phi") + { + phi = eval.Evaluate(attValue); + } + else if(attName == "y1") + { + y1 = eval.Evaluate(attValue); + } + else if(attName == "x1") + { + x1 = eval.Evaluate(attValue); + } + else if(attName == "x2") + { + x2 = eval.Evaluate(attValue); + } + else if(attName == "alpha1") + { + alpha1 = eval.Evaluate(attValue); + } + else if(attName == "y2") + { + y2 = eval.Evaluate(attValue); + } + else if(attName == "x3") + { + x3 = eval.Evaluate(attValue); + } + else if(attName == "x4") + { + x4 = eval.Evaluate(attValue); + } + else if(attName == "alpha2") + { + alpha2 = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::TrapRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::TrapRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="z") { z = eval.Evaluate(attValue); } else - if (attName=="theta") { theta = eval.Evaluate(attValue); } else - if (attName=="phi") { phi = eval.Evaluate(attValue); } else - if (attName=="y1") { y1 = eval.Evaluate(attValue); } else - if (attName=="x1") { x1 = eval.Evaluate(attValue); } else - if (attName=="x2") { x2 = eval.Evaluate(attValue); } else - if (attName=="alpha1") { alpha1 = eval.Evaluate(attValue); } else - if (attName=="y2") { y2 = eval.Evaluate(attValue); } else - if (attName=="x3") { x3 = eval.Evaluate(attValue); } else - if (attName=="x4") { x4 = eval.Evaluate(attValue); } else - if (attName=="alpha2") { alpha2 = eval.Evaluate(attValue); } - } + z *= 0.5 * lunit; + theta *= aunit; + phi *= aunit; + y1 *= 0.5 * lunit; + x1 *= 0.5 * lunit; + x2 *= 0.5 * lunit; + alpha1 *= aunit; + y2 *= 0.5 * lunit; + x3 *= 0.5 * lunit; + x4 *= 0.5 * lunit; + alpha2 *= aunit; - z *= 0.5*lunit; - theta *= aunit; - phi *= aunit; - y1 *= 0.5*lunit; - x1 *= 0.5*lunit; - x2 *= 0.5*lunit; - alpha1 *= aunit; - y2 *= 0.5*lunit; - x3 *= 0.5*lunit; - x4 *= 0.5*lunit; - alpha2 *= aunit; - - new G4Trap(name,z,theta,phi,y1,x1,x2,alpha1,y2,x3,x4,alpha2); + new G4Trap(name, z, theta, phi, y1, x1, x2, alpha1, y2, x3, x4, alpha2); } +// -------------------------------------------------------------------- void G4GDMLReadSolids::TrdRead(const xercesc::DOMElement* const trdElement) { - G4String name; - G4double lunit = 1.0; - G4double x1 = 0.0; - G4double x2 = 0.0; - G4double y1 = 0.0; - G4double y2 = 0.0; - G4double z = 0.0; + G4String name; + G4double lunit = 1.0; + G4double x1 = 0.0; + G4double x2 = 0.0; + G4double y1 = 0.0; + G4double y2 = 0.0; + G4double z = 0.0; - const xercesc::DOMNamedNodeMap* const attributes = trdElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + trdElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::TrdRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::TrdRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::TrdRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "x1") + { + x1 = eval.Evaluate(attValue); + } + else if(attName == "x2") + { + x2 = eval.Evaluate(attValue); + } + else if(attName == "y1") + { + y1 = eval.Evaluate(attValue); + } + else if(attName == "y2") + { + y2 = eval.Evaluate(attValue); + } + else if(attName == "z") + { + z = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::TrdRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="x1") { x1 = eval.Evaluate(attValue); } else - if (attName=="x2") { x2 = eval.Evaluate(attValue); } else - if (attName=="y1") { y1 = eval.Evaluate(attValue); } else - if (attName=="y2") { y2 = eval.Evaluate(attValue); } else - if (attName=="z") { z = eval.Evaluate(attValue); } - } + x1 *= 0.5 * lunit; + x2 *= 0.5 * lunit; + y1 *= 0.5 * lunit; + y2 *= 0.5 * lunit; + z *= 0.5 * lunit; - x1 *= 0.5*lunit; - x2 *= 0.5*lunit; - y1 *= 0.5*lunit; - y2 *= 0.5*lunit; - z *= 0.5*lunit; - - new G4Trd(name,x1,x2,y1,y2,z); + new G4Trd(name, x1, x2, y1, y2, z); } -G4TriangularFacet* G4GDMLReadSolids:: -TriangularRead(const xercesc::DOMElement* const triangularElement) +// -------------------------------------------------------------------- +G4TriangularFacet* G4GDMLReadSolids::TriangularRead( + const xercesc::DOMElement* const triangularElement) { - G4ThreeVector vertex1; - G4ThreeVector vertex2; - G4ThreeVector vertex3; - G4FacetVertexType type = ABSOLUTE; - G4double lunit = 1.0; + G4ThreeVector vertex1; + G4ThreeVector vertex2; + G4ThreeVector vertex3; + G4FacetVertexType type = ABSOLUTE; + G4double lunit = 1.0; - const xercesc::DOMNamedNodeMap* const attributes - = triangularElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + triangularElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::TriangularRead()", "InvalidRead", + FatalException, "No attribute found!"); + return nullptr; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "vertex1") + { + vertex1 = GetPosition(GenerateName(attValue)); + } + else if(attName == "vertex2") + { + vertex2 = GetPosition(GenerateName(attValue)); + } + else if(attName == "vertex3") + { + vertex3 = GetPosition(GenerateName(attValue)); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::TriangularRead()", - "InvalidRead", FatalException, "No attribute found!"); - return 0; + G4Exception("G4GDMLReadSolids::TriangularRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "type") + { + if(attValue == "RELATIVE") + { + type = RELATIVE; + } + } + } - if (attName=="vertex1") - { vertex1 = GetPosition(GenerateName(attValue)); } else - if (attName=="vertex2") - { vertex2 = GetPosition(GenerateName(attValue)); } else - if (attName=="vertex3") - { vertex3 = GetPosition(GenerateName(attValue)); } else - if (attName=="lunit") - { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::TriangularRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="type") - { if (attValue=="RELATIVE") { type = RELATIVE; } } - } - - return new G4TriangularFacet(vertex1*lunit,vertex2*lunit,vertex3*lunit,type); + return new G4TriangularFacet(vertex1 * lunit, vertex2 * lunit, + vertex3 * lunit, type); } +// -------------------------------------------------------------------- void G4GDMLReadSolids::TubeRead(const xercesc::DOMElement* const tubeElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double rmin = 0.0; - G4double rmax = 0.0; - G4double z = 0.0; - G4double startphi = 0.0; - G4double deltaphi = 0.0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double rmin = 0.0; + G4double rmax = 0.0; + G4double z = 0.0; + G4double startphi = 0.0; + G4double deltaphi = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = tubeElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + tubeElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::TubeRead()", "InvalidRead", FatalException, + "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::TubeRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::TubeRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadSolids::TubeRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "rmin") + { + rmin = eval.Evaluate(attValue); + } + else if(attName == "rmax") + { + rmax = eval.Evaluate(attValue); + } + else if(attName == "z") + { + z = eval.Evaluate(attValue); + } + else if(attName == "startphi") + { + startphi = eval.Evaluate(attValue); + } + else if(attName == "deltaphi") + { + deltaphi = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::TubeRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::TubeRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="rmin") { rmin = eval.Evaluate(attValue); } else - if (attName=="rmax") { rmax = eval.Evaluate(attValue); } else - if (attName=="z") { z = eval.Evaluate(attValue); } else - if (attName=="startphi") { startphi = eval.Evaluate(attValue); } else - if (attName=="deltaphi") { deltaphi = eval.Evaluate(attValue); } - } + rmin *= lunit; + rmax *= lunit; + z *= 0.5 * lunit; + startphi *= aunit; + deltaphi *= aunit; - rmin *= lunit; - rmax *= lunit; - z *= 0.5*lunit; - startphi *= aunit; - deltaphi *= aunit; - - new G4Tubs(name,rmin,rmax,z,startphi,deltaphi); + new G4Tubs(name, rmin, rmax, z, startphi, deltaphi); } -void G4GDMLReadSolids::CutTubeRead(const xercesc::DOMElement* const cuttubeElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::CutTubeRead( + const xercesc::DOMElement* const cuttubeElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double rmin = 0.0; - G4double rmax = 0.0; - G4double z = 0.0; - G4double startphi = 0.0; - G4double deltaphi = 0.0; - G4ThreeVector lowNorm(0); - G4ThreeVector highNorm(0); + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double rmin = 0.0; + G4double rmax = 0.0; + G4double z = 0.0; + G4double startphi = 0.0; + G4double deltaphi = 0.0; + G4ThreeVector lowNorm(0); + G4ThreeVector highNorm(0); - const xercesc::DOMNamedNodeMap* const attributes - = cuttubeElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + cuttubeElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::CutTubeRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::CutTubeRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::CutTubeRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadSolids::CutTubeRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "rmin") + { + rmin = eval.Evaluate(attValue); + } + else if(attName == "rmax") + { + rmax = eval.Evaluate(attValue); + } + else if(attName == "z") + { + z = eval.Evaluate(attValue); + } + else if(attName == "startphi") + { + startphi = eval.Evaluate(attValue); + } + else if(attName == "deltaphi") + { + deltaphi = eval.Evaluate(attValue); + } + else if(attName == "lowX") + { + lowNorm.setX(eval.Evaluate(attValue)); + } + else if(attName == "lowY") + { + lowNorm.setY(eval.Evaluate(attValue)); + } + else if(attName == "lowZ") + { + lowNorm.setZ(eval.Evaluate(attValue)); + } + else if(attName == "highX") + { + highNorm.setX(eval.Evaluate(attValue)); + } + else if(attName == "highY") + { + highNorm.setY(eval.Evaluate(attValue)); + } + else if(attName == "highZ") + { + highNorm.setZ(eval.Evaluate(attValue)); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::CutTubeRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::CutTubeRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="rmin") { rmin = eval.Evaluate(attValue); } else - if (attName=="rmax") { rmax = eval.Evaluate(attValue); } else - if (attName=="z") { z = eval.Evaluate(attValue); } else - if (attName=="startphi") { startphi = eval.Evaluate(attValue); } else - if (attName=="deltaphi") { deltaphi = eval.Evaluate(attValue); } else - if (attName=="lowX") { lowNorm.setX (eval.Evaluate(attValue)); } else - if (attName=="lowY") { lowNorm.setY (eval.Evaluate(attValue)); } else - if (attName=="lowZ") { lowNorm.setZ (eval.Evaluate(attValue)); } else - if (attName=="highX") { highNorm.setX (eval.Evaluate(attValue)); } else - if (attName=="highY") { highNorm.setY (eval.Evaluate(attValue)); } else - if (attName=="highZ") { highNorm.setZ (eval.Evaluate(attValue)); } - - } + rmin *= lunit; + rmax *= lunit; + z *= 0.5 * lunit; + startphi *= aunit; + deltaphi *= aunit; - rmin *= lunit; - rmax *= lunit; - z *= 0.5*lunit; - startphi *= aunit; - deltaphi *= aunit; - - new G4CutTubs(name,rmin,rmax,z,startphi,deltaphi,lowNorm,highNorm); + new G4CutTubs(name, rmin, rmax, z, startphi, deltaphi, lowNorm, highNorm); } -void G4GDMLReadSolids:: -TwistedboxRead(const xercesc::DOMElement* const twistedboxElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::TwistedboxRead( + const xercesc::DOMElement* const twistedboxElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double PhiTwist = 0.0; - G4double x = 0.0; - G4double y = 0.0; - G4double z = 0.0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double PhiTwist = 0.0; + G4double x = 0.0; + G4double y = 0.0; + G4double z = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = twistedboxElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + twistedboxElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::TwistedboxRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::TwistedboxRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::TwistedBoxRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadSolids::TwistedboxRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "PhiTwist") + { + PhiTwist = eval.Evaluate(attValue); + } + else if(attName == "x") + { + x = eval.Evaluate(attValue); + } + else if(attName == "y") + { + y = eval.Evaluate(attValue); + } + else if(attName == "z") + { + z = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::TwistedBoxRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::TwistedboxRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="PhiTwist") { PhiTwist = eval.Evaluate(attValue); } else - if (attName=="x") { x = eval.Evaluate(attValue); } else - if (attName=="y") { y = eval.Evaluate(attValue); } else - if (attName=="z") { z = eval.Evaluate(attValue); } - } + PhiTwist *= aunit; + x *= 0.5 * lunit; + y *= 0.5 * lunit; + z *= 0.5 * lunit; - PhiTwist *= aunit; - x *= 0.5*lunit; - y *= 0.5*lunit; - z *= 0.5*lunit; - - new G4TwistedBox(name,PhiTwist,x,y,z); + new G4TwistedBox(name, PhiTwist, x, y, z); } -void G4GDMLReadSolids:: -TwistedtrapRead(const xercesc::DOMElement* const twistedtrapElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::TwistedtrapRead( + const xercesc::DOMElement* const twistedtrapElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double PhiTwist = 0.0; - G4double z = 0.0; - G4double Theta = 0.0; - G4double Phi = 0.0; - G4double y1 = 0.0; - G4double x1 = 0.0; - G4double x2 = 0.0; - G4double y2 = 0.0; - G4double x3 = 0.0; - G4double x4 = 0.0; - G4double Alph = 0.0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double PhiTwist = 0.0; + G4double z = 0.0; + G4double Theta = 0.0; + G4double Phi = 0.0; + G4double y1 = 0.0; + G4double x1 = 0.0; + G4double x2 = 0.0; + G4double y2 = 0.0; + G4double x3 = 0.0; + G4double x4 = 0.0; + G4double Alph = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = twistedtrapElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + twistedtrapElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::TwistedtrapRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::TwistedtrapRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::TwistedtrapRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadSolids::TwistedtrapRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "PhiTwist") + { + PhiTwist = eval.Evaluate(attValue); + } + else if(attName == "z") + { + z = eval.Evaluate(attValue); + } + else if(attName == "Theta") + { + Theta = eval.Evaluate(attValue); + } + else if(attName == "Phi") + { + Phi = eval.Evaluate(attValue); + } + else if(attName == "y1") + { + y1 = eval.Evaluate(attValue); + } + else if(attName == "x1") + { + x1 = eval.Evaluate(attValue); + } + else if(attName == "x2") + { + x2 = eval.Evaluate(attValue); + } + else if(attName == "y2") + { + y2 = eval.Evaluate(attValue); + } + else if(attName == "x3") + { + x3 = eval.Evaluate(attValue); + } + else if(attName == "x4") + { + x4 = eval.Evaluate(attValue); + } + else if(attName == "Alph") + { + Alph = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::TwistedtrapRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::TwistedtrapRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="PhiTwist") { PhiTwist = eval.Evaluate(attValue); } else - if (attName=="z") { z = eval.Evaluate(attValue); } else - if (attName=="Theta") { Theta = eval.Evaluate(attValue); } else - if (attName=="Phi") { Phi = eval.Evaluate(attValue); } else - if (attName=="y1") { y1 = eval.Evaluate(attValue); } else - if (attName=="x1") { x1 = eval.Evaluate(attValue); } else - if (attName=="x2") { x2 = eval.Evaluate(attValue); } else - if (attName=="y2") { y2 = eval.Evaluate(attValue); } else - if (attName=="x3") { x3 = eval.Evaluate(attValue); } else - if (attName=="x4") { x4 = eval.Evaluate(attValue); } else - if (attName=="Alph") { Alph = eval.Evaluate(attValue); } - } + PhiTwist *= aunit; + z *= 0.5 * lunit; + Theta *= aunit; + Phi *= aunit; + Alph *= aunit; + y1 *= 0.5 * lunit; + x1 *= 0.5 * lunit; + x2 *= 0.5 * lunit; + y2 *= 0.5 * lunit; + x3 *= 0.5 * lunit; + x4 *= 0.5 * lunit; - - PhiTwist *= aunit; - z *= 0.5*lunit; - Theta *= aunit; - Phi *= aunit; - Alph *= aunit; - y1 *= 0.5*lunit; - x1 *= 0.5*lunit; - x2 *= 0.5*lunit; - y2 *= 0.5*lunit; - x3 *= 0.5*lunit; - x4 *= 0.5*lunit; - - new G4TwistedTrap(name,PhiTwist,z,Theta,Phi,y1,x1,x2,y2,x3,x4,Alph); + new G4TwistedTrap(name, PhiTwist, z, Theta, Phi, y1, x1, x2, y2, x3, x4, + Alph); } -void G4GDMLReadSolids:: -TwistedtrdRead(const xercesc::DOMElement* const twistedtrdElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::TwistedtrdRead( + const xercesc::DOMElement* const twistedtrdElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double x1 = 0.0; - G4double x2 = 0.0; - G4double y1 = 0.0; - G4double y2 = 0.0; - G4double z = 0.0; - G4double PhiTwist = 0.0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double x1 = 0.0; + G4double x2 = 0.0; + G4double y1 = 0.0; + G4double y2 = 0.0; + G4double z = 0.0; + G4double PhiTwist = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = twistedtrdElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + twistedtrdElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::TwistedtrdRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::TwistedtrdRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::TwistedtrdRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadSolids::TwistedtrdRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "x1") + { + x1 = eval.Evaluate(attValue); + } + else if(attName == "x2") + { + x2 = eval.Evaluate(attValue); + } + else if(attName == "y1") + { + y1 = eval.Evaluate(attValue); + } + else if(attName == "y2") + { + y2 = eval.Evaluate(attValue); + } + else if(attName == "z") + { + z = eval.Evaluate(attValue); + } + else if(attName == "PhiTwist") + { + PhiTwist = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::TwistedtrdRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::TwistedtrdRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="x1") { x1 = eval.Evaluate(attValue); } else - if (attName=="x2") { x2 = eval.Evaluate(attValue); } else - if (attName=="y1") { y1 = eval.Evaluate(attValue); } else - if (attName=="y2") { y2 = eval.Evaluate(attValue); } else - if (attName=="z") { z = eval.Evaluate(attValue); } else - if (attName=="PhiTwist") { PhiTwist = eval.Evaluate(attValue); } - } + x1 *= 0.5 * lunit; + x2 *= 0.5 * lunit; + y1 *= 0.5 * lunit; + y2 *= 0.5 * lunit; + z *= 0.5 * lunit; + PhiTwist *= aunit; - x1 *= 0.5*lunit; - x2 *= 0.5*lunit; - y1 *= 0.5*lunit; - y2 *= 0.5*lunit; - z *= 0.5*lunit; - PhiTwist *= aunit; - - new G4TwistedTrd(name,x1,x2,y1,y2,z,PhiTwist); + new G4TwistedTrd(name, x1, x2, y1, y2, z, PhiTwist); } -void G4GDMLReadSolids:: -TwistedtubsRead(const xercesc::DOMElement* const twistedtubsElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::TwistedtubsRead( + const xercesc::DOMElement* const twistedtubsElement) { - G4String name; - G4double lunit = 1.0; - G4double aunit = 1.0; - G4double twistedangle = 0.0; - G4double endinnerrad = 0.0; - G4double endouterrad = 0.0; - G4double zlen = 0.0; - G4double phi = 0.0; - G4double totphi = 0.0; - G4double midinnerrad = 0.0; - G4double midouterrad = 0.0; - G4double positiveEndz = 0.0; - G4double negativeEndz = 0.0; - G4int nseg = 0; + G4String name; + G4double lunit = 1.0; + G4double aunit = 1.0; + G4double twistedangle = 0.0; + G4double endinnerrad = 0.0; + G4double endouterrad = 0.0; + G4double zlen = 0.0; + G4double phi = 0.0; + G4double totphi = 0.0; + G4double midinnerrad = 0.0; + G4double midouterrad = 0.0; + G4double positiveEndz = 0.0; + G4double negativeEndz = 0.0; + G4int nseg = 0; - const xercesc::DOMNamedNodeMap* const attributes - = twistedtubsElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + twistedtubsElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::TwistedtubsRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "lunit") + { + lunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length") { - G4Exception("G4GDMLReadSolids::TwistedtubsRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; + G4Exception("G4GDMLReadSolids::TwistedtubsRead()", "InvalidRead", + FatalException, "Invalid unit for length!"); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "aunit") + { + aunit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Angle") + { + G4Exception("G4GDMLReadSolids::TwistedtubsRead()", "InvalidRead", + FatalException, "Invalid unit for angle!"); + } + } + else if(attName == "twistedangle") + { + twistedangle = eval.Evaluate(attValue); + } + else if(attName == "endinnerrad") + { + endinnerrad = eval.Evaluate(attValue); + } + else if(attName == "endouterrad") + { + endouterrad = eval.Evaluate(attValue); + } + else if(attName == "zlen") + { + zlen = eval.Evaluate(attValue); + } + else if(attName == "midinnerrad") + { + midinnerrad = eval.Evaluate(attValue); + } + else if(attName == "midouterrad") + { + midouterrad = eval.Evaluate(attValue); + } + else if(attName == "negativeEndz") + { + negativeEndz = eval.Evaluate(attValue); + } + else if(attName == "positiveEndz") + { + positiveEndz = eval.Evaluate(attValue); + } + else if(attName == "nseg") + { + nseg = eval.Evaluate(attValue); + } + else if(attName == "totphi") + { + totphi = eval.Evaluate(attValue); + } + else if(attName == "phi") + { + phi = eval.Evaluate(attValue); + } + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="lunit") { lunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length") { - G4Exception("G4GDMLReadSolids::TwistedtubsRead()", "InvalidRead", - FatalException, "Invalid unit for length!"); } - } else - if (attName=="aunit") { aunit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadSolids::TwistedtubsRead()", "InvalidRead", - FatalException, "Invalid unit for angle!"); } - } else - if (attName=="twistedangle") { twistedangle=eval.Evaluate(attValue); } else - if (attName=="endinnerrad") { endinnerrad=eval.Evaluate(attValue); } else - if (attName=="endouterrad") { endouterrad=eval.Evaluate(attValue); } else - if (attName=="zlen") { zlen = eval.Evaluate(attValue); } else - if (attName=="midinnerrad") { midinnerrad=eval.Evaluate(attValue); } else - if (attName=="midouterrad") { midouterrad=eval.Evaluate(attValue); } else - if (attName=="negativeEndz") { negativeEndz = eval.Evaluate(attValue); } else - if (attName=="positiveEndz") { positiveEndz = eval.Evaluate(attValue); } else - if (attName=="nseg") { nseg = eval.Evaluate(attValue); } else - if (attName=="totphi") { totphi = eval.Evaluate(attValue); } else - if (attName=="phi") { phi = eval.Evaluate(attValue); } - } + twistedangle *= aunit; + endinnerrad *= lunit; + endouterrad *= lunit; + zlen *= 0.5 * lunit; + midinnerrad *= lunit; + midouterrad *= lunit; + positiveEndz *= lunit; + negativeEndz *= lunit; + phi *= aunit; + totphi *= aunit; - twistedangle *= aunit; - endinnerrad *= lunit; - endouterrad *= lunit; - zlen *= 0.5*lunit; - midinnerrad *= lunit; - midouterrad *= lunit; - positiveEndz *= lunit; - negativeEndz *= lunit; - phi *= aunit; - totphi *= aunit; - - if (zlen != 0.0) - { - if (nseg != 0) - new G4TwistedTubs(name,twistedangle,endinnerrad,endouterrad,zlen,nseg,totphi); - else - new G4TwistedTubs(name,twistedangle,endinnerrad,endouterrad,zlen,phi); - } - else - { - if (nseg != 0) - new G4TwistedTubs(name,twistedangle,midinnerrad,midouterrad, - negativeEndz,positiveEndz,nseg,totphi); - else - new G4TwistedTubs(name,twistedangle,midinnerrad,midouterrad, - negativeEndz,positiveEndz,phi); - } + if(zlen != 0.0) + { + if(nseg != 0) + new G4TwistedTubs(name, twistedangle, endinnerrad, endouterrad, zlen, + nseg, totphi); + else + new G4TwistedTubs(name, twistedangle, endinnerrad, endouterrad, zlen, + phi); + } + else + { + if(nseg != 0) + new G4TwistedTubs(name, twistedangle, midinnerrad, midouterrad, + negativeEndz, positiveEndz, nseg, totphi); + else + new G4TwistedTubs(name, twistedangle, midinnerrad, midouterrad, + negativeEndz, positiveEndz, phi); + } } -G4TwoVector G4GDMLReadSolids:: -TwoDimVertexRead(const xercesc::DOMElement* const element, G4double lunit) +// -------------------------------------------------------------------- +G4TwoVector G4GDMLReadSolids::TwoDimVertexRead( + const xercesc::DOMElement* const element, G4double lunit) { - G4TwoVector vec; - - const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + G4TwoVector vec; - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + const xercesc::DOMNamedNodeMap* const attributes = element->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadSolids::TwoDimVertexRead()", - "InvalidRead", FatalException, "No attribute found!"); - return vec; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - if (attName=="x") { vec.setX(eval.Evaluate(attValue)*lunit); } else - if (attName=="y") { vec.setY(eval.Evaluate(attValue)*lunit); } - } + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::TwoDimVertexRead()", "InvalidRead", + FatalException, "No attribute found!"); + return vec; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - return vec; + if(attName == "x") + { + vec.setX(eval.Evaluate(attValue) * lunit); + } + else if(attName == "y") + { + vec.setY(eval.Evaluate(attValue) * lunit); + } + } + + return vec; } -G4GDMLReadSolids::zplaneType G4GDMLReadSolids:: -ZplaneRead(const xercesc::DOMElement* const zplaneElement) +// -------------------------------------------------------------------- +G4GDMLReadSolids::zplaneType G4GDMLReadSolids::ZplaneRead( + const xercesc::DOMElement* const zplaneElement) { - zplaneType zplane = {0.,0.,0.}; + zplaneType zplane = { 0., 0., 0. }; - const xercesc::DOMNamedNodeMap* const attributes - = zplaneElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + zplaneElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* node = attributes->item(attribute_index); - if (node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { continue; } + if(node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(node); - if (!attribute) - { - G4Exception("G4GDMLReadSolids::ZplaneRead()", - "InvalidRead", FatalException, "No attribute found!"); - return zplane; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::ZplaneRead()", "InvalidRead", + FatalException, "No attribute found!"); + return zplane; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="rmin") { zplane.rmin = eval.Evaluate(attValue); } else - if (attName=="rmax") { zplane.rmax = eval.Evaluate(attValue); } else - if (attName=="z") { zplane.z = eval.Evaluate(attValue); } - } + if(attName == "rmin") + { + zplane.rmin = eval.Evaluate(attValue); + } + else if(attName == "rmax") + { + zplane.rmax = eval.Evaluate(attValue); + } + else if(attName == "z") + { + zplane.z = eval.Evaluate(attValue); + } + } - return zplane; + return zplane; } -G4GDMLReadSolids::rzPointType G4GDMLReadSolids:: -RZPointRead(const xercesc::DOMElement* const zplaneElement) + +// -------------------------------------------------------------------- +G4GDMLReadSolids::rzPointType G4GDMLReadSolids::RZPointRead( + const xercesc::DOMElement* const zplaneElement) { - rzPointType rzpoint = {0.,0.}; + rzPointType rzpoint = { 0., 0. }; - const xercesc::DOMNamedNodeMap* const attributes - = zplaneElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + zplaneElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* node = attributes->item(attribute_index); - if (node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { continue; } + if(node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(node); - if (!attribute) - { - G4Exception("G4GDMLReadSolids::RZPointRead()", - "InvalidRead", FatalException, "No attribute found!"); - return rzpoint; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::RZPointRead()", "InvalidRead", + FatalException, "No attribute found!"); + return rzpoint; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="r") { rzpoint.r = eval.Evaluate(attValue); } else - if (attName=="z") { rzpoint.z = eval.Evaluate(attValue); } - } - - return rzpoint; - + if(attName == "r") + { + rzpoint.r = eval.Evaluate(attValue); + } + else if(attName == "z") + { + rzpoint.z = eval.Evaluate(attValue); + } + } + + return rzpoint; } -void G4GDMLReadSolids:: -PropertyRead(const xercesc::DOMElement* const propertyElement, - G4OpticalSurface* opticalsurface) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::PropertyRead( + const xercesc::DOMElement* const propertyElement, + G4OpticalSurface* opticalsurface) { - G4String name; - G4String ref; - G4GDMLMatrix matrix; + G4String name; + G4String ref; + G4GDMLMatrix matrix; - const xercesc::DOMNamedNodeMap* const attributes - = propertyElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + propertyElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::PropertyRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "ref") + { + matrix = GetMatrix(ref = attValue); + } + } + + /* + if (matrix.GetCols() != 2) + { + G4String error_msg = "Referenced matrix '" + ref + + "' should have \n two columns as a property table for + opticalsurface: " + + opticalsurface->GetName(); + G4Exception("G4GDMLReadSolids::PropertyRead()", "InvalidRead", + FatalException, error_msg); + } + */ + + if(matrix.GetRows() == 0) + { + return; + } + + G4MaterialPropertiesTable* matprop = + opticalsurface->GetMaterialPropertiesTable(); + if(matprop == nullptr) + { + matprop = new G4MaterialPropertiesTable(); + opticalsurface->SetMaterialPropertiesTable(matprop); + } + if(matrix.GetCols() == 1) // constant property assumed + { + matprop->AddConstProperty(Strip(name), matrix.Get(0, 0)); + } + else // build the material properties vector + { + G4MaterialPropertyVector* propvect; + // first check if it was already built + if(mapOfMatPropVects.find(Strip(name)) == mapOfMatPropVects.end()) + { + // if not create a new one + propvect = new G4MaterialPropertyVector(); + for(size_t i = 0; i < matrix.GetRows(); i++) { - G4Exception("G4GDMLReadSolids::PropertyRead()", "InvalidRead", - FatalException, "No attribute found!"); - return; + propvect->InsertValues(matrix.Get(i, 0), matrix.Get(i, 1)); } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + // and add it to the list for potential future reuse + mapOfMatPropVects[Strip(name)] = propvect; + } + else + { + propvect = mapOfMatPropVects[Strip(name)]; + } - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="ref") { matrix = GetMatrix(ref=attValue); } - } - - /* - if (matrix.GetCols() != 2) - { - G4String error_msg = "Referenced matrix '" + ref - + "' should have \n two columns as a property table for opticalsurface: " - + opticalsurface->GetName(); - G4Exception("G4GDMLReadSolids::PropertyRead()", "InvalidRead", - FatalException, error_msg); - } - */ - - if (matrix.GetRows() == 0) { return; } - - G4MaterialPropertiesTable* matprop=opticalsurface->GetMaterialPropertiesTable(); - if (!matprop) - { - matprop = new G4MaterialPropertiesTable(); - opticalsurface->SetMaterialPropertiesTable(matprop); - } - if (matrix.GetCols() == 1) // constant property assumed - { - matprop->AddConstProperty(Strip(name), matrix.Get(0,0)); - } - else // build the material properties vector - { - G4MaterialPropertyVector* propvect; - // first check if it was already built - if ( mapOfMatPropVects.find(Strip(name)) == mapOfMatPropVects.end()) - { - // if not create a new one - propvect = new G4MaterialPropertyVector(); - for (size_t i=0; iInsertValues(matrix.Get(i,0),matrix.Get(i,1)); - } - // and add it to the list for potential future reuse - mapOfMatPropVects[Strip(name)] = propvect; - } - else - { - propvect = mapOfMatPropVects[Strip(name)]; - } - - matprop->AddProperty(Strip(name),propvect); - } + matprop->AddProperty(Strip(name), propvect); + } } -void G4GDMLReadSolids:: -OpticalSurfaceRead(const xercesc::DOMElement* const opticalsurfaceElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::OpticalSurfaceRead( + const xercesc::DOMElement* const opticalsurfaceElement) { - G4String name; - G4String smodel; - G4String sfinish; - G4String stype; - G4double value = 0.0; + G4String name; + G4String smodel; + G4String sfinish; + G4String stype; + G4double value = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = opticalsurfaceElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + opticalsurfaceElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadSolids::OpticalSurfaceRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadSolids::OpticalSurfaceRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); - if (attName=="name") { name = GenerateName(attValue); } else - if (attName=="model") { smodel = attValue; } else - if (attName=="finish") { sfinish = attValue; } else - if (attName=="type") { stype = attValue; } else - if (attName=="value") { value = eval.Evaluate(attValue); } - } + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "model") + { + smodel = attValue; + } + else if(attName == "finish") + { + sfinish = attValue; + } + else if(attName == "type") + { + stype = attValue; + } + else if(attName == "value") + { + value = eval.Evaluate(attValue); + } + } - G4OpticalSurfaceModel model; - G4OpticalSurfaceFinish finish; - G4SurfaceType type; - - if ((smodel=="glisur") || (smodel=="0")) { model = glisur; } else - if ((smodel=="unified") || (smodel=="1")) { model = unified; } else - if ((smodel=="LUT") || (smodel=="2")) { model = LUT; } - else { model = dichroic; } + G4OpticalSurfaceModel model; + G4OpticalSurfaceFinish finish; + G4SurfaceType type; - if ((sfinish=="polished") || (sfinish=="0")) - { finish = polished; } else - if ((sfinish=="polishedfrontpainted") || (sfinish=="1")) - { finish = polishedfrontpainted; } else - if ((sfinish=="polishedbackpainted") || (sfinish=="2")) - { finish = polishedbackpainted; } else - if ((sfinish=="ground") || (sfinish=="3")) - { finish = ground; } else - if ((sfinish=="groundfrontpainted") || (sfinish=="4")) - { finish = groundfrontpainted; } else - if ((sfinish=="groundbackpainted") || (sfinish=="5")) - { finish = groundbackpainted; } else - if ((sfinish=="polishedlumirrorair") || (sfinish=="6")) - { finish = polishedlumirrorair; } else - if ((sfinish=="polishedlumirrorglue") || (sfinish=="7")) - { finish = polishedlumirrorglue; } else - if ((sfinish=="polishedair") || (sfinish=="8")) - { finish = polishedair; } else - if ((sfinish=="polishedteflonair") || (sfinish=="9")) - { finish = polishedteflonair; } else - if ((sfinish=="polishedtioair") || (sfinish=="10")) - { finish = polishedtioair; } else - if ((sfinish=="polishedtyvekair") || (sfinish=="11")) - { finish = polishedtyvekair; } else - if ((sfinish=="polishedvm2000air") || (sfinish=="12")) - { finish = polishedvm2000air; } else - if ((sfinish=="polishedvm2000glue") || (sfinish=="13")) - { finish = polishedvm2000glue; } else - if ((sfinish=="etchedlumirrorair") || (sfinish=="14")) - { finish = etchedlumirrorair; } else - if ((sfinish=="etchedlumirrorglue") || (sfinish=="15")) - { finish = etchedlumirrorglue; } else - if ((sfinish=="etchedair") || (sfinish=="16")) - { finish = etchedair; } else - if ((sfinish=="etchedteflonair") || (sfinish=="17")) - { finish = etchedteflonair; } else - if ((sfinish=="etchedtioair") || (sfinish=="18")) - { finish = etchedtioair; } else - if ((sfinish=="etchedtyvekair") || (sfinish=="19")) - { finish = etchedtyvekair; } else - if ((sfinish=="etchedvm2000air") || (sfinish=="20")) - { finish = etchedvm2000air; } else - if ((sfinish=="etchedvm2000glue") || (sfinish=="21")) - { finish = etchedvm2000glue; } else - if ((sfinish=="groundlumirrorair") || (sfinish=="22")) - { finish = groundlumirrorair; } else - if ((sfinish=="groundlumirrorglue") || (sfinish=="23")) - { finish = groundlumirrorglue; } else - if ((sfinish=="groundair") || (sfinish=="24")) - { finish = groundair; } else - if ((sfinish=="groundteflonair") || (sfinish=="25")) - { finish = groundteflonair; } else - if ((sfinish=="groundtioair") || (sfinish=="26")) - { finish = groundtioair; } else - if ((sfinish=="groundtyvekair") || (sfinish=="27")) - { finish = groundtyvekair; } else - if ((sfinish=="groundvm2000air") || (sfinish=="28")) - { finish = groundvm2000air; } - else { finish = groundvm2000glue; } + if((smodel == "glisur") || (smodel == "0")) + { + model = glisur; + } + else if((smodel == "unified") || (smodel == "1")) + { + model = unified; + } + else if((smodel == "LUT") || (smodel == "2")) + { + model = LUT; + } + else + { + model = dichroic; + } - if ((stype=="dielectric_metal") || (stype=="0")) - { type = dielectric_metal; } else - if ((stype=="dielectric_dielectric") || (stype=="1")) - { type = dielectric_dielectric; } else - if ((stype=="dielectric_LUT") || (stype=="2")) - { type = dielectric_LUT; } else - if ((stype=="dielectric_dichroic") || (stype=="3")) - { type = dielectric_dichroic; } else - if ((stype=="firsov") || (stype=="4")) - { type = firsov; } - else { type = x_ray; } + if((sfinish == "polished") || (sfinish == "0")) + { + finish = polished; + } + else if((sfinish == "polishedfrontpainted") || (sfinish == "1")) + { + finish = polishedfrontpainted; + } + else if((sfinish == "polishedbackpainted") || (sfinish == "2")) + { + finish = polishedbackpainted; + } + else if((sfinish == "ground") || (sfinish == "3")) + { + finish = ground; + } + else if((sfinish == "groundfrontpainted") || (sfinish == "4")) + { + finish = groundfrontpainted; + } + else if((sfinish == "groundbackpainted") || (sfinish == "5")) + { + finish = groundbackpainted; + } + else if((sfinish == "polishedlumirrorair") || (sfinish == "6")) + { + finish = polishedlumirrorair; + } + else if((sfinish == "polishedlumirrorglue") || (sfinish == "7")) + { + finish = polishedlumirrorglue; + } + else if((sfinish == "polishedair") || (sfinish == "8")) + { + finish = polishedair; + } + else if((sfinish == "polishedteflonair") || (sfinish == "9")) + { + finish = polishedteflonair; + } + else if((sfinish == "polishedtioair") || (sfinish == "10")) + { + finish = polishedtioair; + } + else if((sfinish == "polishedtyvekair") || (sfinish == "11")) + { + finish = polishedtyvekair; + } + else if((sfinish == "polishedvm2000air") || (sfinish == "12")) + { + finish = polishedvm2000air; + } + else if((sfinish == "polishedvm2000glue") || (sfinish == "13")) + { + finish = polishedvm2000glue; + } + else if((sfinish == "etchedlumirrorair") || (sfinish == "14")) + { + finish = etchedlumirrorair; + } + else if((sfinish == "etchedlumirrorglue") || (sfinish == "15")) + { + finish = etchedlumirrorglue; + } + else if((sfinish == "etchedair") || (sfinish == "16")) + { + finish = etchedair; + } + else if((sfinish == "etchedteflonair") || (sfinish == "17")) + { + finish = etchedteflonair; + } + else if((sfinish == "etchedtioair") || (sfinish == "18")) + { + finish = etchedtioair; + } + else if((sfinish == "etchedtyvekair") || (sfinish == "19")) + { + finish = etchedtyvekair; + } + else if((sfinish == "etchedvm2000air") || (sfinish == "20")) + { + finish = etchedvm2000air; + } + else if((sfinish == "etchedvm2000glue") || (sfinish == "21")) + { + finish = etchedvm2000glue; + } + else if((sfinish == "groundlumirrorair") || (sfinish == "22")) + { + finish = groundlumirrorair; + } + else if((sfinish == "groundlumirrorglue") || (sfinish == "23")) + { + finish = groundlumirrorglue; + } + else if((sfinish == "groundair") || (sfinish == "24")) + { + finish = groundair; + } + else if((sfinish == "groundteflonair") || (sfinish == "25")) + { + finish = groundteflonair; + } + else if((sfinish == "groundtioair") || (sfinish == "26")) + { + finish = groundtioair; + } + else if((sfinish == "groundtyvekair") || (sfinish == "27")) + { + finish = groundtyvekair; + } + else if((sfinish == "groundvm2000air") || (sfinish == "28")) + { + finish = groundvm2000air; + } + else + { + finish = groundvm2000glue; + } - G4OpticalSurface* opticalsurface - = new G4OpticalSurface(name,model,finish,type,value); + if((stype == "dielectric_metal") || (stype == "0")) + { + type = dielectric_metal; + } + else if((stype == "dielectric_dielectric") || (stype == "1")) + { + type = dielectric_dielectric; + } + else if((stype == "dielectric_LUT") || (stype == "2")) + { + type = dielectric_LUT; + } + else if((stype == "dielectric_dichroic") || (stype == "3")) + { + type = dielectric_dichroic; + } + else if((stype == "firsov") || (stype == "4")) + { + type = firsov; + } + else + { + type = x_ray; + } - for (xercesc::DOMNode* iter = opticalsurfaceElement->getFirstChild(); - iter != 0;iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + G4OpticalSurface* opticalsurface = + new G4OpticalSurface(name, model, finish, type, value); - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadSolids::OpticalSurfaceRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + for(xercesc::DOMNode* iter = opticalsurfaceElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - if (tag=="property") { PropertyRead(child,opticalsurface); } - } + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadSolids::OpticalSurfaceRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "property") + { + PropertyRead(child, opticalsurface); + } + } } -void G4GDMLReadSolids::SolidsRead(const xercesc::DOMElement* const solidsElement) +// -------------------------------------------------------------------- +void G4GDMLReadSolids::SolidsRead( + const xercesc::DOMElement* const solidsElement) { #ifdef G4VERBOSE - G4cout << "G4GDML: Reading solids..." << G4endl; + G4cout << "G4GDML: Reading solids..." << G4endl; #endif - for (xercesc::DOMNode* iter = solidsElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = solidsElement->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadSolids::SolidsRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); - if (tag=="define") { DefineRead(child); } else - if (tag=="box") { BoxRead(child); } else - if (tag=="cone") { ConeRead(child); } else - if (tag=="elcone") { ElconeRead(child); } else - if (tag=="ellipsoid") { EllipsoidRead(child); }else - if (tag=="eltube") { EltubeRead(child); } else - if (tag=="xtru") { XtruRead(child); } else - if (tag=="hype") { HypeRead(child); } else - if (tag=="intersection") { BooleanRead(child,INTERSECTION); } else - if (tag=="multiUnion") { MultiUnionRead(child); } else - if (tag=="orb") { OrbRead(child); } else - if (tag=="para") { ParaRead(child); } else - if (tag=="paraboloid") { ParaboloidRead(child); } else - if (tag=="polycone") { PolyconeRead(child); } else - if (tag=="genericPolycone") { GenericPolyconeRead(child); } else - if (tag=="polyhedra") { PolyhedraRead(child); } else - if (tag=="genericPolyhedra") { GenericPolyhedraRead(child); } else - if (tag=="reflectedSolid") { ReflectedSolidRead(child); } else - if (tag=="scaledSolid") { ScaledSolidRead(child); } else - if (tag=="sphere") { SphereRead(child); } else - if (tag=="subtraction") { BooleanRead(child,SUBTRACTION); } else - if (tag=="tessellated") { TessellatedRead(child); } else - if (tag=="tet") { TetRead(child); } else - if (tag=="torus") { TorusRead(child); } else - if (tag=="arb8") { GenTrapRead(child); } else - if (tag=="trap") { TrapRead(child); } else - if (tag=="trd") { TrdRead(child); } else - if (tag=="tube") { TubeRead(child); } else - if (tag=="cutTube") { CutTubeRead(child); } else - if (tag=="twistedbox") { TwistedboxRead(child); } else - if (tag=="twistedtrap") { TwistedtrapRead(child); } else - if (tag=="twistedtrd") { TwistedtrdRead(child); } else - if (tag=="twistedtubs") { TwistedtubsRead(child); } else - if (tag=="union") { BooleanRead(child,UNION); } else - if (tag=="opticalsurface") { OpticalSurfaceRead(child); } else - if (tag=="loop") { LoopRead(child,&G4GDMLRead::SolidsRead); } - else - { - G4String error_msg = "Unknown tag in solids: " + tag; - G4Exception("G4GDMLReadSolids::SolidsRead()", "ReadError", - FatalException, error_msg); - } - } + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadSolids::SolidsRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + if(tag == "define") + { + DefineRead(child); + } + else if(tag == "box") + { + BoxRead(child); + } + else if(tag == "cone") + { + ConeRead(child); + } + else if(tag == "elcone") + { + ElconeRead(child); + } + else if(tag == "ellipsoid") + { + EllipsoidRead(child); + } + else if(tag == "eltube") + { + EltubeRead(child); + } + else if(tag == "xtru") + { + XtruRead(child); + } + else if(tag == "hype") + { + HypeRead(child); + } + else if(tag == "intersection") + { + BooleanRead(child, INTERSECTION); + } + else if(tag == "multiUnion") + { + MultiUnionRead(child); + } + else if(tag == "orb") + { + OrbRead(child); + } + else if(tag == "para") + { + ParaRead(child); + } + else if(tag == "paraboloid") + { + ParaboloidRead(child); + } + else if(tag == "polycone") + { + PolyconeRead(child); + } + else if(tag == "genericPolycone") + { + GenericPolyconeRead(child); + } + else if(tag == "polyhedra") + { + PolyhedraRead(child); + } + else if(tag == "genericPolyhedra") + { + GenericPolyhedraRead(child); + } + else if(tag == "reflectedSolid") + { + ReflectedSolidRead(child); + } + else if(tag == "scaledSolid") + { + ScaledSolidRead(child); + } + else if(tag == "sphere") + { + SphereRead(child); + } + else if(tag == "subtraction") + { + BooleanRead(child, SUBTRACTION); + } + else if(tag == "tessellated") + { + TessellatedRead(child); + } + else if(tag == "tet") + { + TetRead(child); + } + else if(tag == "torus") + { + TorusRead(child); + } + else if(tag == "arb8") + { + GenTrapRead(child); + } + else if(tag == "trap") + { + TrapRead(child); + } + else if(tag == "trd") + { + TrdRead(child); + } + else if(tag == "tube") + { + TubeRead(child); + } + else if(tag == "cutTube") + { + CutTubeRead(child); + } + else if(tag == "twistedbox") + { + TwistedboxRead(child); + } + else if(tag == "twistedtrap") + { + TwistedtrapRead(child); + } + else if(tag == "twistedtrd") + { + TwistedtrdRead(child); + } + else if(tag == "twistedtubs") + { + TwistedtubsRead(child); + } + else if(tag == "union") + { + BooleanRead(child, UNION); + } + else if(tag == "opticalsurface") + { + OpticalSurfaceRead(child); + } + else if(tag == "loop") + { + LoopRead(child, &G4GDMLRead::SolidsRead); + } + else + { + G4String error_msg = "Unknown tag in solids: " + tag; + G4Exception("G4GDMLReadSolids::SolidsRead()", "ReadError", FatalException, + error_msg); + } + } } +// -------------------------------------------------------------------- G4VSolid* G4GDMLReadSolids::GetSolid(const G4String& ref) const { - G4VSolid* solidPtr = G4SolidStore::GetInstance()->GetSolid(ref,false); + G4VSolid* solidPtr = G4SolidStore::GetInstance()->GetSolid(ref, false); - if (!solidPtr) - { - G4String error_msg = "Referenced solid '" + ref + "' was not found!"; - G4Exception("G4GDMLReadSolids::GetSolid()", "ReadError", - FatalException, error_msg); - } + if(solidPtr == nullptr) + { + G4String error_msg = "Referenced solid '" + ref + "' was not found!"; + G4Exception("G4GDMLReadSolids::GetSolid()", "ReadError", FatalException, + error_msg); + } - return solidPtr; + return solidPtr; } -G4SurfaceProperty* G4GDMLReadSolids:: -GetSurfaceProperty(const G4String& ref) const +// -------------------------------------------------------------------- +G4SurfaceProperty* G4GDMLReadSolids::GetSurfaceProperty( + const G4String& ref) const { - const G4SurfacePropertyTable* surfaceList - = G4SurfaceProperty::GetSurfacePropertyTable(); - const size_t surfaceCount = surfaceList->size(); + const G4SurfacePropertyTable* surfaceList = + G4SurfaceProperty::GetSurfacePropertyTable(); + const std::size_t surfaceCount = surfaceList->size(); - for (size_t i=0; iGetName() == ref) { return (*surfaceList)[i]; } - } + for(std::size_t i = 0; i < surfaceCount; ++i) + { + if((*surfaceList)[i]->GetName() == ref) + { + return (*surfaceList)[i]; + } + } - G4String error_msg = "Referenced optical surface '" + ref + "' was not found!"; - G4Exception("G4GDMLReadSolids::GetSurfaceProperty()", "ReadError", - FatalException, error_msg); + G4String error_msg = + "Referenced optical surface '" + ref + "' was not found!"; + G4Exception("G4GDMLReadSolids::GetSurfaceProperty()", "ReadError", + FatalException, error_msg); - return 0; + return nullptr; } diff --git a/source/persistency/gdml/src/G4GDMLReadStructure.cc b/source/persistency/gdml/src/G4GDMLReadStructure.cc index 2d8b3c68b8..63e7dd8961 100644 --- a/source/persistency/gdml/src/G4GDMLReadStructure.cc +++ b/source/persistency/gdml/src/G4GDMLReadStructure.cc @@ -23,11 +23,9 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLReadStructure implementation // -// class G4GDMLReadStructure Implementation -// -// Original author: Zoltan Torzsok, November 2007 -// +// Author: Zoltan Torzsok, November 2007 // -------------------------------------------------------------------- #include "G4GDMLReadStructure.hh" @@ -45,862 +43,1114 @@ #include "G4LogicalSkinSurface.hh" #include "G4VisAttributes.hh" +// -------------------------------------------------------------------- G4GDMLReadStructure::G4GDMLReadStructure() - : G4GDMLReadParamvol(), pMotherLogical(0), strip(false) + : G4GDMLReadParamvol() { } +// -------------------------------------------------------------------- G4GDMLReadStructure::~G4GDMLReadStructure() { } - -void G4GDMLReadStructure:: -BorderSurfaceRead(const xercesc::DOMElement* const bordersurfaceElement) +// -------------------------------------------------------------------- +void G4GDMLReadStructure::BorderSurfaceRead( + const xercesc::DOMElement* const bordersurfaceElement) { - G4String name; - G4VPhysicalVolume* pv1 = 0; - G4VPhysicalVolume* pv2 = 0; - G4SurfaceProperty* prop = 0; - G4int index = 0; + G4String name; + G4VPhysicalVolume* pv1 = nullptr; + G4VPhysicalVolume* pv2 = nullptr; + G4SurfaceProperty* prop = nullptr; + G4int index = 0; - const xercesc::DOMNamedNodeMap* const attributes - = bordersurfaceElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + const xercesc::DOMNamedNodeMap* const attributes = + bordersurfaceElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); - - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } - - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadStructure::BorderSurfaceRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") - { name = GenerateName(attValue); } else - if (attName=="surfaceproperty") - { prop = GetSurfaceProperty(GenerateName(attValue)); } - } - - for (xercesc::DOMNode* iter = bordersurfaceElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadStructure::BorderSurfaceRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); - - if (tag != "physvolref") { continue; } - - if (index==0) - { pv1 = GetPhysvol(GenerateName(RefRead(child))); index++; } else - if (index==1) - { pv2 = GetPhysvol(GenerateName(RefRead(child))); index++; } else - break; - } - - new G4LogicalBorderSurface(Strip(name),pv1,pv2,prop); -} - -void G4GDMLReadStructure:: -DivisionvolRead(const xercesc::DOMElement* const divisionvolElement) -{ - G4String name; - G4double unit = 1.0; - G4double width = 0.0; - G4double offset = 0.0; - G4int number = 0; - EAxis axis = kUndefined; - G4LogicalVolume* logvol = 0; - - const xercesc::DOMNamedNodeMap* const attributes - = divisionvolElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); - G4String unitname; - - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); - - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } - - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadStructure::DivisionvolRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") { name = attValue; } else - if (attName=="unit") { unit = G4UnitDefinition::GetValueOf(attValue); - unitname = G4UnitDefinition::GetCategory(attValue); - } else - if (attName=="width") { width = eval.Evaluate(attValue); } else - if (attName=="offset") { offset = eval.Evaluate(attValue); } else - if (attName=="number") { number = eval.EvaluateInteger(attValue); } else - if (attName=="axis") - { - if (attValue=="kXAxis") { axis = kXAxis; } else - if (attValue=="kYAxis") { axis = kYAxis; } else - if (attValue=="kZAxis") { axis = kZAxis; } else - if (attValue=="kRho") { axis = kRho; } else - if (attValue=="kPhi") { axis = kPhi; } - } - } - - if ( ((axis == kXAxis || axis == kYAxis || axis == kZAxis) && unitname!="Length") || - ((axis == kRho || axis == kPhi) && unitname!="Angle")) { - G4Exception("G4GDMLReadStructure::DivisionvolRead()", "InvalidRead", - FatalException, "Invalid unit!"); } - - width *= unit; - offset *= unit; - - for (xercesc::DOMNode* iter = divisionvolElement->getFirstChild(); - iter != 0;iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadStructure::DivisionvolRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); - - if (tag=="volumeref") { logvol = GetVolume(GenerateName(RefRead(child))); } - } - - if (!logvol) { return; } - - G4PVDivisionFactory::GetInstance(); - G4PhysicalVolumesPair pair; - - G4String pv_name = logvol->GetName() + "_div"; - if ((number != 0) && (width == 0.0)) - { - pair = G4ReflectionFactory::Instance() - ->Divide(pv_name,logvol,pMotherLogical,axis,number,offset); - } - else if ((number == 0) && (width != 0.0)) - { - pair = G4ReflectionFactory::Instance() - ->Divide(pv_name,logvol,pMotherLogical,axis,width,offset); - } - else - { - pair = G4ReflectionFactory::Instance() - ->Divide(pv_name,logvol,pMotherLogical,axis,number,width,offset); - } - - if (pair.first != 0) { GeneratePhysvolName(name,pair.first); } - if (pair.second != 0) { GeneratePhysvolName(name,pair.second); } -} - -G4LogicalVolume* G4GDMLReadStructure:: -FileRead(const xercesc::DOMElement* const fileElement) -{ - G4String name; - G4String volname; - - const xercesc::DOMNamedNodeMap* const attributes - = fileElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); - - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); - - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } - - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadStructure::FileRead()", - "InvalidRead", FatalException, "No attribute found!"); - return 0; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") { name = attValue; } else - if (attName=="volname") { volname = attValue; } - } - - const G4bool isModule = true; - G4GDMLReadStructure structure; - structure.Read(name,validate,isModule); - - // Register existing auxiliar information defined in child module - // - const G4GDMLAuxMapType* aux = structure.GetAuxMap(); - if (!aux->empty()) - { - G4GDMLAuxMapType::const_iterator pos; - for (pos = aux->begin(); pos != aux->end(); ++pos) - { - auxMap.insert(std::make_pair(pos->first,pos->second)); - } - } - - // Return volume structure from child module - // - if (volname.empty()) - { - return structure.GetVolume(structure.GetSetup("Default")); - } - else - { - return structure.GetVolume(structure.GenerateName(volname)); - } -} - -void G4GDMLReadStructure:: -PhysvolRead(const xercesc::DOMElement* const physvolElement, - G4AssemblyVolume* pAssembly) -{ - G4String name; - G4LogicalVolume* logvol = 0; - G4AssemblyVolume* assembly = 0; - G4ThreeVector position(0.0,0.0,0.0); - G4ThreeVector rotation(0.0,0.0,0.0); - G4ThreeVector scale(1.0,1.0,1.0); - G4int copynumber = 0; - - const xercesc::DOMNamedNodeMap* const attributes - = physvolElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); - - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); - - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } - - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadStructure::PhysvolRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") { name = attValue; } - if (attName=="copynumber") { copynumber = eval.EvaluateInteger(attValue); } - } - - for (xercesc::DOMNode* iter = physvolElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadStructure::PhysvolRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); - - if (tag=="volumeref") - { - const G4String& child_name = GenerateName(RefRead(child)); - assembly = GetAssembly(child_name); - if (!assembly) { logvol = GetVolume(child_name); } - } - else if (tag=="file") - { logvol = FileRead(child); } - else if (tag=="position") - { VectorRead(child,position); } - else if (tag=="rotation") - { VectorRead(child,rotation); } - else if (tag=="scale") - { VectorRead(child,scale); } - else if (tag=="positionref") - { position = GetPosition(GenerateName(RefRead(child))); } - else if (tag=="rotationref") - { rotation = GetRotation(GenerateName(RefRead(child))); } - else if (tag=="scaleref") - { scale = GetScale(GenerateName(RefRead(child))); } - else - { - G4String error_msg = "Unknown tag in physvol: " + tag; - G4Exception("G4GDMLReadStructure::PhysvolRead()", "ReadError", - FatalException, error_msg); - return; - } - } - - G4Transform3D transform(GetRotationMatrix(rotation).inverse(),position); - transform = transform*G4Scale3D(scale.x(),scale.y(),scale.z()); - - if (pAssembly) // Fill assembly structure - { - if (assembly) // Case of recursive assemblies - { - pAssembly->AddPlacedAssembly(assembly, transform); - } - if (!logvol) { return; } - pAssembly->AddPlacedVolume(logvol, transform); - } - else // Generate physical volume tree or do assembly imprint - { - if (assembly) - { - assembly->MakeImprint(pMotherLogical, transform, 0, check); - } - else - { - if (!logvol) { return; } - G4String pv_name = logvol->GetName() + "_PV"; - G4PhysicalVolumesPair pair = G4ReflectionFactory::Instance() - ->Place(transform,pv_name,logvol,pMotherLogical,false,copynumber,check); - - if (pair.first != 0) { GeneratePhysvolName(name,pair.first); } - if (pair.second != 0) { GeneratePhysvolName(name,pair.second); } - } - } -} - -void G4GDMLReadStructure:: -ReplicavolRead(const xercesc::DOMElement* const replicavolElement, G4int number) -{ - G4LogicalVolume* logvol = 0; - for (xercesc::DOMNode* iter = replicavolElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { - G4Exception("G4GDMLReadStructure::ReplicavolRead()", - "InvalidRead", FatalException, "No child found!"); + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadStructure::BorderSurfaceRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "surfaceproperty") + { + prop = GetSurfaceProperty(GenerateName(attValue)); + } + } + + for(xercesc::DOMNode* iter = bordersurfaceElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } + + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadStructure::BorderSurfaceRead()", "InvalidRead", + FatalException, "No child found!"); return; } const G4String tag = Transcode(child->getTagName()); - if (tag=="volumeref") + if(tag != "physvolref") + { + continue; + } + + if(index == 0) + { + pv1 = GetPhysvol(GenerateName(RefRead(child))); + ++index; + } + else if(index == 1) + { + pv2 = GetPhysvol(GenerateName(RefRead(child))); + ++index; + } + else + break; + } + + new G4LogicalBorderSurface(Strip(name), pv1, pv2, prop); +} + +// -------------------------------------------------------------------- +void G4GDMLReadStructure::DivisionvolRead( + const xercesc::DOMElement* const divisionvolElement) +{ + G4String name; + G4double unit = 1.0; + G4double width = 0.0; + G4double offset = 0.0; + G4int number = 0; + EAxis axis = kUndefined; + G4LogicalVolume* logvol = nullptr; + + const xercesc::DOMNamedNodeMap* const attributes = + divisionvolElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); + G4String unitname; + + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); + + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadStructure::DivisionvolRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = attValue; + } + else if(attName == "unit") + { + unit = G4UnitDefinition::GetValueOf(attValue); + unitname = G4UnitDefinition::GetCategory(attValue); + } + else if(attName == "width") + { + width = eval.Evaluate(attValue); + } + else if(attName == "offset") + { + offset = eval.Evaluate(attValue); + } + else if(attName == "number") + { + number = eval.EvaluateInteger(attValue); + } + else if(attName == "axis") + { + if(attValue == "kXAxis") + { + axis = kXAxis; + } + else if(attValue == "kYAxis") + { + axis = kYAxis; + } + else if(attValue == "kZAxis") + { + axis = kZAxis; + } + else if(attValue == "kRho") + { + axis = kRho; + } + else if(attValue == "kPhi") + { + axis = kPhi; + } + } + } + + if(((axis == kXAxis || axis == kYAxis || axis == kZAxis) && + unitname != "Length") || + ((axis == kRho || axis == kPhi) && unitname != "Angle")) + { + G4Exception("G4GDMLReadStructure::DivisionvolRead()", "InvalidRead", + FatalException, "Invalid unit!"); + } + + width *= unit; + offset *= unit; + + for(xercesc::DOMNode* iter = divisionvolElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } + + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadStructure::DivisionvolRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "volumeref") { logvol = GetVolume(GenerateName(RefRead(child))); } - else if (tag=="replicate_along_axis") + } + + if(logvol == nullptr) + { + return; + } + + G4PVDivisionFactory::GetInstance(); + G4PhysicalVolumesPair pair; + + G4String pv_name = logvol->GetName() + "_div"; + if((number != 0) && (width == 0.0)) + { + pair = G4ReflectionFactory::Instance()->Divide( + pv_name, logvol, pMotherLogical, axis, number, offset); + } + else if((number == 0) && (width != 0.0)) + { + pair = G4ReflectionFactory::Instance()->Divide( + pv_name, logvol, pMotherLogical, axis, width, offset); + } + else + { + pair = G4ReflectionFactory::Instance()->Divide( + pv_name, logvol, pMotherLogical, axis, number, width, offset); + } + + if(pair.first != nullptr) + { + GeneratePhysvolName(name, pair.first); + } + if(pair.second != nullptr) + { + GeneratePhysvolName(name, pair.second); + } +} + +// -------------------------------------------------------------------- +G4LogicalVolume* G4GDMLReadStructure::FileRead( + const xercesc::DOMElement* const fileElement) +{ + G4String name; + G4String volname; + + const xercesc::DOMNamedNodeMap* const attributes = + fileElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); + + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); + + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { - if (logvol) { ReplicaRead(child,logvol,number); } + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadStructure::FileRead()", "InvalidRead", + FatalException, "No attribute found!"); + return nullptr; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = attValue; + } + else if(attName == "volname") + { + volname = attValue; + } + } + + const G4bool isModule = true; + G4GDMLReadStructure structure; + structure.Read(name, validate, isModule); + + // Register existing auxiliar information defined in child module + // + const G4GDMLAuxMapType* aux = structure.GetAuxMap(); + if(!aux->empty()) + { + for(auto pos = aux->cbegin(); pos != aux->cend(); ++pos) + { + auxMap.insert(std::make_pair(pos->first, pos->second)); + } + } + + // Return volume structure from child module + // + if(volname.empty()) + { + return structure.GetVolume(structure.GetSetup("Default")); + } + else + { + return structure.GetVolume(structure.GenerateName(volname)); + } +} + +// -------------------------------------------------------------------- +void G4GDMLReadStructure::PhysvolRead( + const xercesc::DOMElement* const physvolElement, G4AssemblyVolume* pAssembly) +{ + G4String name; + G4LogicalVolume* logvol = nullptr; + G4AssemblyVolume* assembly = nullptr; + G4ThreeVector position(0.0, 0.0, 0.0); + G4ThreeVector rotation(0.0, 0.0, 0.0); + G4ThreeVector scale(1.0, 1.0, 1.0); + G4int copynumber = 0; + + const xercesc::DOMNamedNodeMap* const attributes = + physvolElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); + + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); + + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadStructure::PhysvolRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = attValue; + } + if(attName == "copynumber") + { + copynumber = eval.EvaluateInteger(attValue); + } + } + + for(xercesc::DOMNode* iter = physvolElement->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } + + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadStructure::PhysvolRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "volumeref") + { + const G4String& child_name = GenerateName(RefRead(child)); + assembly = GetAssembly(child_name); + if(assembly == nullptr) + { + logvol = GetVolume(child_name); + } + } + else if(tag == "file") + { + logvol = FileRead(child); + } + else if(tag == "position") + { + VectorRead(child, position); + } + else if(tag == "rotation") + { + VectorRead(child, rotation); + } + else if(tag == "scale") + { + VectorRead(child, scale); + } + else if(tag == "positionref") + { + position = GetPosition(GenerateName(RefRead(child))); + } + else if(tag == "rotationref") + { + rotation = GetRotation(GenerateName(RefRead(child))); + } + else if(tag == "scaleref") + { + scale = GetScale(GenerateName(RefRead(child))); } else { - G4String error_msg = "Unknown tag in ReplicavolRead: " + tag; - G4Exception("G4GDMLReadStructure::ReplicavolRead()", - "ReadError", FatalException, error_msg); + G4String error_msg = "Unknown tag in physvol: " + tag; + G4Exception("G4GDMLReadStructure::PhysvolRead()", "ReadError", + FatalException, error_msg); + return; + } + } + + G4Transform3D transform(GetRotationMatrix(rotation).inverse(), position); + transform = transform * G4Scale3D(scale.x(), scale.y(), scale.z()); + + if(pAssembly != nullptr) // Fill assembly structure + { + if(assembly != nullptr) // Case of recursive assemblies + { + pAssembly->AddPlacedAssembly(assembly, transform); + } + if(logvol == nullptr) + { + return; + } + pAssembly->AddPlacedVolume(logvol, transform); + } + else // Generate physical volume tree or do assembly imprint + { + if(assembly != nullptr) + { + assembly->MakeImprint(pMotherLogical, transform, 0, check); + } + else + { + if(logvol == nullptr) + { + return; + } + G4String pv_name = logvol->GetName() + "_PV"; + G4PhysicalVolumesPair pair = G4ReflectionFactory::Instance()->Place( + transform, pv_name, logvol, pMotherLogical, false, copynumber, check); + + if(pair.first != nullptr) + { + GeneratePhysvolName(name, pair.first); + } + if(pair.second != nullptr) + { + GeneratePhysvolName(name, pair.second); + } } } } -void G4GDMLReadStructure:: -ReplicaRead(const xercesc::DOMElement* const replicaElement, - G4LogicalVolume* logvol, G4int number) +// -------------------------------------------------------------------- +void G4GDMLReadStructure::ReplicavolRead( + const xercesc::DOMElement* const replicavolElement, G4int number) { - G4double width = 0.0; - G4double offset = 0.0; - G4ThreeVector position(0.0,0.0,0.0); - G4ThreeVector rotation(0.0,0.0,0.0); - EAxis axis = kUndefined; - G4String name; - - for (xercesc::DOMNode* iter = replicaElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + G4LogicalVolume* logvol = nullptr; + for(xercesc::DOMNode* iter = replicavolElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadStructure::ReplicavolRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "volumeref") + { + logvol = GetVolume(GenerateName(RefRead(child))); + } + else if(tag == "replicate_along_axis") + { + if(logvol) { - G4Exception("G4GDMLReadStructure::ReplicaRead()", - "InvalidRead", FatalException, "No child found!"); - return; + ReplicaRead(child, logvol, number); } - const G4String tag = Transcode(child->getTagName()); - - if (tag=="position") - { VectorRead(child,position); } else - if (tag=="rotation") - { VectorRead(child,rotation); } else - if (tag=="positionref") - { position = GetPosition(GenerateName(RefRead(child))); } else - if (tag=="rotationref") - { rotation = GetRotation(GenerateName(RefRead(child))); } else - if (tag=="direction") - { axis=AxisRead(child); } else - if (tag=="width") - { width=QuantityRead(child); } else - if (tag=="offset") - { offset=QuantityRead(child); } - else - { - G4String error_msg = "Unknown tag in ReplicaRead: " + tag; - G4Exception("G4GDMLReadStructure::ReplicaRead()", "ReadError", - FatalException, error_msg); - } - } - - G4String pv_name = logvol->GetName() + "_PV"; - G4PhysicalVolumesPair pair = G4ReflectionFactory::Instance() - ->Replicate(pv_name,logvol,pMotherLogical,axis,number,width,offset); - - if (pair.first != 0) { GeneratePhysvolName(name,pair.first); } - if (pair.second != 0) { GeneratePhysvolName(name,pair.second); } - + } + else + { + G4String error_msg = "Unknown tag in ReplicavolRead: " + tag; + G4Exception("G4GDMLReadStructure::ReplicavolRead()", "ReadError", + FatalException, error_msg); + } + } } -EAxis G4GDMLReadStructure:: -AxisRead(const xercesc::DOMElement* const axisElement) +// -------------------------------------------------------------------- +void G4GDMLReadStructure::ReplicaRead( + const xercesc::DOMElement* const replicaElement, G4LogicalVolume* logvol, + G4int number) { - EAxis axis = kUndefined; + G4double width = 0.0; + G4double offset = 0.0; + G4ThreeVector position(0.0, 0.0, 0.0); + G4ThreeVector rotation(0.0, 0.0, 0.0); + EAxis axis = kUndefined; + G4String name; - const xercesc::DOMNamedNodeMap* const attributes - = axisElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + for(xercesc::DOMNode* iter = replicaElement->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadStructure::ReplicaRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } + if(tag == "position") + { + VectorRead(child, position); + } + else if(tag == "rotation") + { + VectorRead(child, rotation); + } + else if(tag == "positionref") + { + position = GetPosition(GenerateName(RefRead(child))); + } + else if(tag == "rotationref") + { + rotation = GetRotation(GenerateName(RefRead(child))); + } + else if(tag == "direction") + { + axis = AxisRead(child); + } + else if(tag == "width") + { + width = QuantityRead(child); + } + else if(tag == "offset") + { + offset = QuantityRead(child); + } + else + { + G4String error_msg = "Unknown tag in ReplicaRead: " + tag; + G4Exception("G4GDMLReadStructure::ReplicaRead()", "ReadError", + FatalException, error_msg); + } + } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadStructure::AxisRead()", - "InvalidRead", FatalException, "No attribute found!"); - return axis; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - if (attName=="x") - { if( eval.Evaluate(attValue)==1.) {axis=kXAxis;} } - else if (attName=="y") - { if( eval.Evaluate(attValue)==1.) {axis=kYAxis;} } - else if (attName=="z") - { if( eval.Evaluate(attValue)==1.) {axis=kZAxis;} } - else if (attName=="rho") - { if( eval.Evaluate(attValue)==1.) {axis=kRho;} } - else if (attName=="phi") - { if( eval.Evaluate(attValue)==1.) {axis=kPhi;} } - } + G4String pv_name = logvol->GetName() + "_PV"; + G4PhysicalVolumesPair pair = G4ReflectionFactory::Instance()->Replicate( + pv_name, logvol, pMotherLogical, axis, number, width, offset); - return axis; + if(pair.first != nullptr) + { + GeneratePhysvolName(name, pair.first); + } + if(pair.second != nullptr) + { + GeneratePhysvolName(name, pair.second); + } } -G4double G4GDMLReadStructure:: -QuantityRead(const xercesc::DOMElement* const readElement) +// -------------------------------------------------------------------- +EAxis G4GDMLReadStructure::AxisRead( + const xercesc::DOMElement* const axisElement) { - G4double value = 0.0; - G4double unit = 0.0; - const xercesc::DOMNamedNodeMap* const attributes - = readElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + EAxis axis = kUndefined; - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + const xercesc::DOMNamedNodeMap* const attributes = + axisElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); + + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadStructure::AxisRead()", "InvalidRead", + FatalException, "No attribute found!"); + return axis; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + if(attName == "x") + { + if(eval.Evaluate(attValue) == 1.) { - G4Exception("G4GDMLReadStructure::QuantityRead()", - "InvalidRead", FatalException, "No attribute found!"); - return value; + axis = kXAxis; } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); + } + else if(attName == "y") + { + if(eval.Evaluate(attValue) == 1.) + { + axis = kYAxis; + } + } + else if(attName == "z") + { + if(eval.Evaluate(attValue) == 1.) + { + axis = kZAxis; + } + } + else if(attName == "rho") + { + if(eval.Evaluate(attValue) == 1.) + { + axis = kRho; + } + } + else if(attName == "phi") + { + if(eval.Evaluate(attValue) == 1.) + { + axis = kPhi; + } + } + } - if (attName=="unit") { unit = G4UnitDefinition::GetValueOf(attValue); - if (G4UnitDefinition::GetCategory(attValue)!="Length" && G4UnitDefinition::GetCategory(attValue)!="Angle") { - G4Exception("G4GDMLReadStructure::QuantityRead()", "InvalidRead", - FatalException, "Invalid unit for lenght or angle (width, offset)!"); } - } else - if (attName=="value"){ value= eval.Evaluate(attValue); } - } - - return value*unit; + return axis; } -void G4GDMLReadStructure:: -VolumeRead(const xercesc::DOMElement* const volumeElement) +// -------------------------------------------------------------------- +G4double G4GDMLReadStructure::QuantityRead( + const xercesc::DOMElement* const readElement) { - G4VSolid* solidPtr = 0; - G4Material* materialPtr = 0; - G4GDMLAuxListType auxList; - - XMLCh *name_attr = xercesc::XMLString::transcode("name"); - const G4String name = Transcode(volumeElement->getAttribute(name_attr)); - xercesc::XMLString::release(&name_attr); + G4double value = 0.0; + G4double unit = 0.0; + const xercesc::DOMNamedNodeMap* const attributes = + readElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - for (xercesc::DOMNode* iter = volumeElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadStructure::QuantityRead()", "InvalidRead", + FatalException, "No attribute found!"); + return value; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "unit") + { + unit = G4UnitDefinition::GetValueOf(attValue); + if(G4UnitDefinition::GetCategory(attValue) != "Length" && + G4UnitDefinition::GetCategory(attValue) != "Angle") { - G4Exception("G4GDMLReadStructure::VolumeRead()", - "InvalidRead", FatalException, "No child found!"); - return; + G4Exception("G4GDMLReadStructure::QuantityRead()", "InvalidRead", + FatalException, + "Invalid unit for length or angle (width, offset)!"); } - const G4String tag = Transcode(child->getTagName()); + } + else if(attName == "value") + { + value = eval.Evaluate(attValue); + } + } - if (tag=="auxiliary") - { auxList.push_back(AuxiliaryRead(child)); } else - if (tag=="materialref") - { materialPtr = GetMaterial(GenerateName(RefRead(child),true)); } else - if (tag=="solidref") - { solidPtr = GetSolid(GenerateName(RefRead(child))); } - } - - pMotherLogical = new G4LogicalVolume(solidPtr,materialPtr, - GenerateName(name),0,0,0); - - if (!auxList.empty()) { auxMap[pMotherLogical] = auxList; } - - Volume_contentRead(volumeElement); + return value * unit; } -void G4GDMLReadStructure:: -AssemblyRead(const xercesc::DOMElement* const assemblyElement) +// -------------------------------------------------------------------- +void G4GDMLReadStructure::VolumeRead( + const xercesc::DOMElement* const volumeElement) { - XMLCh *name_attr = xercesc::XMLString::transcode("name"); - const G4String name = Transcode(assemblyElement->getAttribute(name_attr)); - xercesc::XMLString::release(&name_attr); + G4VSolid* solidPtr = nullptr; + G4Material* materialPtr = nullptr; + G4GDMLAuxListType auxList; - G4AssemblyVolume* pAssembly = new G4AssemblyVolume(); - assemblyMap.insert(std::make_pair(GenerateName(name), pAssembly)); + XMLCh* name_attr = xercesc::XMLString::transcode("name"); + const G4String name = Transcode(volumeElement->getAttribute(name_attr)); + xercesc::XMLString::release(&name_attr); - for (xercesc::DOMNode* iter = assemblyElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadStructure::AssemblyRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + for(xercesc::DOMNode* iter = volumeElement->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - if (tag=="physvol") - { - PhysvolRead(child, pAssembly); - } - else - { - G4cout << "Unsupported GDML tag '" << tag - << "' for Geant4 assembly structure !" << G4endl; - } - } + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadStructure::VolumeRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "auxiliary") + { + auxList.push_back(AuxiliaryRead(child)); + } + else if(tag == "materialref") + { + materialPtr = GetMaterial(GenerateName(RefRead(child), true)); + } + else if(tag == "solidref") + { + solidPtr = GetSolid(GenerateName(RefRead(child))); + } + } + + pMotherLogical = + new G4LogicalVolume(solidPtr, materialPtr, GenerateName(name), 0, 0, 0); + + if(!auxList.empty()) + { + auxMap[pMotherLogical] = auxList; + } + + Volume_contentRead(volumeElement); } -void G4GDMLReadStructure:: -SkinSurfaceRead(const xercesc::DOMElement* const skinsurfaceElement) +// -------------------------------------------------------------------- +void G4GDMLReadStructure::AssemblyRead( + const xercesc::DOMElement* const assemblyElement) { - G4String name; - G4LogicalVolume* logvol = 0; - G4SurfaceProperty* prop = 0; + XMLCh* name_attr = xercesc::XMLString::transcode("name"); + const G4String name = Transcode(assemblyElement->getAttribute(name_attr)); + xercesc::XMLString::release(&name_attr); - const xercesc::DOMNamedNodeMap* const attributes - = skinsurfaceElement->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); + G4AssemblyVolume* pAssembly = new G4AssemblyVolume(); + assemblyMap.insert(std::make_pair(GenerateName(name), pAssembly)); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + for(xercesc::DOMNode* iter = assemblyElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadStructure::AssemblyRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) - { continue; } - - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadStructure::SkinsurfaceRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - - if (attName=="name") - { name = GenerateName(attValue); } else - if (attName=="surfaceproperty") - { prop = GetSurfaceProperty(GenerateName(attValue)); } - } - - for (xercesc::DOMNode* iter = skinsurfaceElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } - - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadStructure::SkinsurfaceRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); - - if (tag=="volumeref") - { - logvol = GetVolume(GenerateName(RefRead(child))); - } - else - { - G4String error_msg = "Unknown tag in skinsurface: " + tag; - G4Exception("G4GDMLReadStructure::SkinsurfaceRead()", "ReadError", - FatalException, error_msg); - } - } - - new G4LogicalSkinSurface(Strip(name),logvol,prop); + if(tag == "physvol") + { + PhysvolRead(child, pAssembly); + } + else + { + G4cout << "Unsupported GDML tag '" << tag + << "' for Geant4 assembly structure !" << G4endl; + } + } } -void G4GDMLReadStructure:: -Volume_contentRead(const xercesc::DOMElement* const volumeElement) +// -------------------------------------------------------------------- +void G4GDMLReadStructure::SkinSurfaceRead( + const xercesc::DOMElement* const skinsurfaceElement) { - for (xercesc::DOMNode* iter = volumeElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + G4String name; + G4LogicalVolume* logvol = nullptr; + G4SurfaceProperty* prop = nullptr; - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadStructure::Volume_contentRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMNamedNodeMap* const attributes = + skinsurfaceElement->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); - if ((tag=="auxiliary") || (tag=="materialref") || (tag=="solidref")) + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) + { + xercesc::DOMNode* attribute_node = attributes->item(attribute_index); + + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) + { + continue; + } + + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadStructure::SkinsurfaceRead()", "InvalidRead", + FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + + if(attName == "name") + { + name = GenerateName(attValue); + } + else if(attName == "surfaceproperty") + { + prop = GetSurfaceProperty(GenerateName(attValue)); + } + } + + for(xercesc::DOMNode* iter = skinsurfaceElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } + + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadStructure::SkinsurfaceRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if(tag == "volumeref") + { + logvol = GetVolume(GenerateName(RefRead(child))); + } + else + { + G4String error_msg = "Unknown tag in skinsurface: " + tag; + G4Exception("G4GDMLReadStructure::SkinsurfaceRead()", "ReadError", + FatalException, error_msg); + } + } + + new G4LogicalSkinSurface(Strip(name), logvol, prop); +} + +// -------------------------------------------------------------------- +void G4GDMLReadStructure::Volume_contentRead( + const xercesc::DOMElement* const volumeElement) +{ + for(xercesc::DOMNode* iter = volumeElement->getFirstChild(); iter != nullptr; + iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } + + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadStructure::Volume_contentRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); + + if((tag == "auxiliary") || (tag == "materialref") || (tag == "solidref")) + { + // These are already processed in VolumeRead() + } + else if(tag == "paramvol") + { + ParamvolRead(child, pMotherLogical); + } + else if(tag == "physvol") + { + PhysvolRead(child); + } + else if(tag == "replicavol") + { + G4int number = 1; + const xercesc::DOMNamedNodeMap* const attributes = child->getAttributes(); + XMLSize_t attributeCount = attributes->getLength(); + for(XMLSize_t attribute_index = 0; attribute_index < attributeCount; + ++attribute_index) { - // These are already processed in VolumeRead() - } - else if (tag=="paramvol") - { - ParamvolRead(child,pMotherLogical); - } - else if (tag=="physvol") - { - PhysvolRead(child); - } - else if (tag=="replicavol") - { - G4int number = 1; - const xercesc::DOMNamedNodeMap* const attributes - = child->getAttributes(); - XMLSize_t attributeCount = attributes->getLength(); - for (XMLSize_t attribute_index=0; - attribute_indexitem(attribute_index); + if(attribute_node->getNodeType() != xercesc::DOMNode::ATTRIBUTE_NODE) { - xercesc::DOMNode* attribute_node - = attributes->item(attribute_index); - if (attribute_node->getNodeType()!=xercesc::DOMNode::ATTRIBUTE_NODE) - { - continue; - } - const xercesc::DOMAttr* const attribute - = dynamic_cast(attribute_node); - if (!attribute) - { - G4Exception("G4GDMLReadStructure::Volume_contentRead()", - "InvalidRead", FatalException, "No attribute found!"); - return; - } - const G4String attName = Transcode(attribute->getName()); - const G4String attValue = Transcode(attribute->getValue()); - if (attName=="number") - { - number = eval.EvaluateInteger(attValue); - } + continue; + } + const xercesc::DOMAttr* const attribute = + dynamic_cast(attribute_node); + if(attribute == nullptr) + { + G4Exception("G4GDMLReadStructure::Volume_contentRead()", + "InvalidRead", FatalException, "No attribute found!"); + return; + } + const G4String attName = Transcode(attribute->getName()); + const G4String attValue = Transcode(attribute->getValue()); + if(attName == "number") + { + number = eval.EvaluateInteger(attValue); } - ReplicavolRead(child,number); } - else if (tag=="divisionvol") - { - DivisionvolRead(child); - } - else if (tag=="loop") - { - LoopRead(child,&G4GDMLRead::Volume_contentRead); - } - else - { - G4cout << "Treating unknown GDML tag in volume '" << tag - << "' as GDML extension..." << G4endl; - } - } + ReplicavolRead(child, number); + } + else if(tag == "divisionvol") + { + DivisionvolRead(child); + } + else if(tag == "loop") + { + LoopRead(child, &G4GDMLRead::Volume_contentRead); + } + else + { + G4cout << "Treating unknown GDML tag in volume '" << tag + << "' as GDML extension..." << G4endl; + } + } } -void G4GDMLReadStructure:: -StructureRead(const xercesc::DOMElement* const structureElement) +// -------------------------------------------------------------------- +void G4GDMLReadStructure::StructureRead( + const xercesc::DOMElement* const structureElement) { #ifdef G4VERBOSE - G4cout << "G4GDML: Reading structure..." << G4endl; + G4cout << "G4GDML: Reading structure..." << G4endl; #endif - for (xercesc::DOMNode* iter = structureElement->getFirstChild(); - iter != 0; iter = iter->getNextSibling()) - { - if (iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) { continue; } + for(xercesc::DOMNode* iter = structureElement->getFirstChild(); + iter != nullptr; iter = iter->getNextSibling()) + { + if(iter->getNodeType() != xercesc::DOMNode::ELEMENT_NODE) + { + continue; + } - const xercesc::DOMElement* const child - = dynamic_cast(iter); - if (!child) - { - G4Exception("G4GDMLReadStructure::StructureRead()", - "InvalidRead", FatalException, "No child found!"); - return; - } - const G4String tag = Transcode(child->getTagName()); + const xercesc::DOMElement* const child = + dynamic_cast(iter); + if(child == nullptr) + { + G4Exception("G4GDMLReadStructure::StructureRead()", "InvalidRead", + FatalException, "No child found!"); + return; + } + const G4String tag = Transcode(child->getTagName()); - if (tag=="bordersurface") { BorderSurfaceRead(child); } else - if (tag=="skinsurface") { SkinSurfaceRead(child); } else - if (tag=="volume") { VolumeRead(child); } else - if (tag=="assembly") { AssemblyRead(child); } else - if (tag=="loop") { LoopRead(child,&G4GDMLRead::StructureRead); } - else - { - G4String error_msg = "Unknown tag in structure: " + tag; - G4Exception("G4GDMLReadStructure::StructureRead()", - "ReadError", FatalException, error_msg); - } - } + if(tag == "bordersurface") + { + BorderSurfaceRead(child); + } + else if(tag == "skinsurface") + { + SkinSurfaceRead(child); + } + else if(tag == "volume") + { + VolumeRead(child); + } + else if(tag == "assembly") + { + AssemblyRead(child); + } + else if(tag == "loop") + { + LoopRead(child, &G4GDMLRead::StructureRead); + } + else + { + G4String error_msg = "Unknown tag in structure: " + tag; + G4Exception("G4GDMLReadStructure::StructureRead()", "ReadError", + FatalException, error_msg); + } + } } -G4VPhysicalVolume* G4GDMLReadStructure:: -GetPhysvol(const G4String& ref) const +// -------------------------------------------------------------------- +G4VPhysicalVolume* G4GDMLReadStructure::GetPhysvol(const G4String& ref) const { - G4VPhysicalVolume* physvolPtr = - G4PhysicalVolumeStore::GetInstance()->GetVolume(ref,false); + G4VPhysicalVolume* physvolPtr = + G4PhysicalVolumeStore::GetInstance()->GetVolume(ref, false); - if (!physvolPtr) - { - G4String error_msg = "Referenced physvol '" + ref + "' was not found!"; - G4Exception("G4GDMLReadStructure::GetPhysvol()", "ReadError", - FatalException, error_msg); - } + if(physvolPtr == nullptr) + { + G4String error_msg = "Referenced physvol '" + ref + "' was not found!"; + G4Exception("G4GDMLReadStructure::GetPhysvol()", "ReadError", + FatalException, error_msg); + } - return physvolPtr; + return physvolPtr; } -G4LogicalVolume* G4GDMLReadStructure:: -GetVolume(const G4String& ref) const +// -------------------------------------------------------------------- +G4LogicalVolume* G4GDMLReadStructure::GetVolume(const G4String& ref) const { - G4LogicalVolume *volumePtr - = G4LogicalVolumeStore::GetInstance()->GetVolume(ref,false); + G4LogicalVolume* volumePtr = + G4LogicalVolumeStore::GetInstance()->GetVolume(ref, false); - if (!volumePtr) - { - G4String error_msg = "Referenced volume '" + ref + "' was not found!"; - G4Exception("G4GDMLReadStructure::GetVolume()", "ReadError", - FatalException, error_msg); - } + if(volumePtr == nullptr) + { + G4String error_msg = "Referenced volume '" + ref + "' was not found!"; + G4Exception("G4GDMLReadStructure::GetVolume()", "ReadError", FatalException, + error_msg); + } - return volumePtr; + return volumePtr; } -G4AssemblyVolume* G4GDMLReadStructure:: -GetAssembly(const G4String& ref) const +// -------------------------------------------------------------------- +G4AssemblyVolume* G4GDMLReadStructure::GetAssembly(const G4String& ref) const { - G4GDMLAssemblyMapType::const_iterator pos = assemblyMap.find(ref); - if (pos != assemblyMap.end()) { return pos->second; } - return 0; + auto pos = assemblyMap.find(ref); + if(pos != assemblyMap.cend()) + { + return pos->second; + } + return nullptr; } -G4GDMLAuxListType G4GDMLReadStructure:: -GetVolumeAuxiliaryInformation(G4LogicalVolume* logvol) const +// -------------------------------------------------------------------- +G4GDMLAuxListType G4GDMLReadStructure::GetVolumeAuxiliaryInformation( + G4LogicalVolume* logvol) const { - G4GDMLAuxMapType::const_iterator pos = auxMap.find(logvol); - if (pos != auxMap.end()) { return pos->second; } - else { return G4GDMLAuxListType(); } + auto pos = auxMap.find(logvol); + if(pos != auxMap.cend()) + { + return pos->second; + } + else + { + return G4GDMLAuxListType(); + } } -G4VPhysicalVolume* G4GDMLReadStructure:: -GetWorldVolume(const G4String& setupName) +// -------------------------------------------------------------------- +G4VPhysicalVolume* G4GDMLReadStructure::GetWorldVolume( + const G4String& setupName) { - G4String sname = GetSetup(setupName); - if (sname == "") { return 0; } + G4String sname = GetSetup(setupName); + if(sname == "") + { + return nullptr; + } - G4LogicalVolume* volume = GetVolume(GenerateName(sname, dostrip)); - volume->SetVisAttributes(G4VisAttributes::GetInvisible()); + G4LogicalVolume* volume = GetVolume(GenerateName(sname, dostrip)); + volume->SetVisAttributes(G4VisAttributes::GetInvisible()); - G4VPhysicalVolume* pvWorld = 0; + G4VPhysicalVolume* pvWorld = nullptr; - if(setuptoPV[setupName]) - { - pvWorld = setuptoPV[setupName]; - } - else - { - pvWorld = new G4PVPlacement(0,G4ThreeVector(0,0,0),volume, - volume->GetName()+"_PV",0,0,0); - setuptoPV[setupName] = pvWorld; - } - return pvWorld; + if(setuptoPV[setupName]) + { + pvWorld = setuptoPV[setupName]; + } + else + { + pvWorld = new G4PVPlacement(nullptr, G4ThreeVector(0, 0, 0), volume, + volume->GetName() + "_PV", 0, 0, 0); + setuptoPV[setupName] = pvWorld; + } + return pvWorld; } +// -------------------------------------------------------------------- void G4GDMLReadStructure::Clear() { eval.Clear(); diff --git a/source/persistency/gdml/src/G4GDMLWrite.cc b/source/persistency/gdml/src/G4GDMLWrite.cc index a9726c183f..67e1b44d53 100644 --- a/source/persistency/gdml/src/G4GDMLWrite.cc +++ b/source/persistency/gdml/src/G4GDMLWrite.cc @@ -23,12 +23,9 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLWrite implementation // -// -// class G4GDMLWrite Implementation -// -// Original author: Zoltan Torzsok, November 2007 -// +// Author: Zoltan Torzsok, November 2007 // -------------------------------------------------------------------- #include @@ -42,74 +39,85 @@ G4bool G4GDMLWrite::addPointerToName = true; -G4GDMLWrite::G4GDMLWrite() : doc(0), extElement(0) +// -------------------------------------------------------------------- +G4GDMLWrite::G4GDMLWrite() { } +// -------------------------------------------------------------------- G4GDMLWrite::~G4GDMLWrite() { } +// -------------------------------------------------------------------- G4bool G4GDMLWrite::FileExists(const G4String& fname) const { struct stat FileInfo; - return (stat(fname.c_str(),&FileInfo) == 0); + return (stat(fname.c_str(), &FileInfo) == 0); } +// -------------------------------------------------------------------- G4GDMLWrite::VolumeMapType& G4GDMLWrite::VolumeMap() { - static VolumeMapType instance; - return instance; + static VolumeMapType instance; + return instance; } G4GDMLWrite::PhysVolumeMapType& G4GDMLWrite::PvolumeMap() { - static PhysVolumeMapType instance; - return instance; + static PhysVolumeMapType instance; + return instance; } +// -------------------------------------------------------------------- G4GDMLWrite::DepthMapType& G4GDMLWrite::DepthMap() { - static DepthMapType instance; - return instance; + static DepthMapType instance; + return instance; } +// -------------------------------------------------------------------- void G4GDMLWrite::AddExtension(xercesc::DOMElement*, const G4LogicalVolume* const) { - // Empty implementation. To be overwritten by user for specific extensions - // related to attributes associated to volumes + // Empty implementation. To be overwritten by user for specific extensions + // related to attributes associated to volumes } +// -------------------------------------------------------------------- void G4GDMLWrite::ExtensionWrite(xercesc::DOMElement*) { - // Empty implementation. To be overwritten by user for specific extensions + // Empty implementation. To be overwritten by user for specific extensions } +// -------------------------------------------------------------------- void G4GDMLWrite::AddAuxInfo(G4GDMLAuxListType* auxInfoList, xercesc::DOMElement* element) { - for(std::vector::const_iterator - iaux = auxInfoList->begin(); iaux != auxInfoList->end(); iaux++ ) + for(auto iaux = auxInfoList->cbegin(); iaux != auxInfoList->cend(); ++iaux) { xercesc::DOMElement* auxiliaryElement = NewElement("auxiliary"); element->appendChild(auxiliaryElement); - + auxiliaryElement->setAttributeNode(NewAttribute("auxtype", (*iaux).type)); auxiliaryElement->setAttributeNode(NewAttribute("auxvalue", (*iaux).value)); - if (((*iaux).unit)!="") + if(((*iaux).unit) != "") { auxiliaryElement->setAttributeNode(NewAttribute("auxunit", (*iaux).unit)); } - if (iaux->auxList) { AddAuxInfo(iaux->auxList, auxiliaryElement); } + if(iaux->auxList) + { + AddAuxInfo(iaux->auxList, auxiliaryElement); + } } return; } +// -------------------------------------------------------------------- void G4GDMLWrite::UserinfoWrite(xercesc::DOMElement* gdmlElement) { - if(auxList.size()>0) + if(auxList.size() > 0) { #ifdef G4VERBOSE G4cout << "G4GDML: Writing userinfo..." << G4endl; @@ -120,245 +128,267 @@ void G4GDMLWrite::UserinfoWrite(xercesc::DOMElement* gdmlElement) } } +// -------------------------------------------------------------------- G4String G4GDMLWrite::GenerateName(const G4String& name, const void* const ptr) { - G4String nameOut; - std::stringstream stream; stream << name; - if (addPointerToName) { stream << ptr; }; + G4String nameOut; + std::stringstream stream; + stream << name; + if(addPointerToName) + { + stream << ptr; + }; - nameOut=G4String(stream.str()); - std::vector toremove = { ' ', '/', ':', '#', '+' }; - for (auto c: toremove) - { - if(nameOut.contains(c)) - { - std::replace(nameOut.begin(),nameOut.end(),c, '_'); - } - } - return nameOut; + nameOut = G4String(stream.str()); + std::vector toremove = { ' ', '/', ':', '#', '+' }; + for(auto c : toremove) + { + if(nameOut.contains(c)) + { + std::replace(nameOut.begin(), nameOut.end(), c, '_'); + } + } + return nameOut; } +// -------------------------------------------------------------------- xercesc::DOMAttr* G4GDMLWrite::NewAttribute(const G4String& name, const G4String& value) { - xercesc::XMLString::transcode(name,tempStr,9999); - xercesc::DOMAttr* att = doc->createAttribute(tempStr); - xercesc::XMLString::transcode(value,tempStr,9999); - att->setValue(tempStr); - return att; + xercesc::XMLString::transcode(name, tempStr, 9999); + xercesc::DOMAttr* att = doc->createAttribute(tempStr); + xercesc::XMLString::transcode(value, tempStr, 9999); + att->setValue(tempStr); + return att; } +// -------------------------------------------------------------------- xercesc::DOMAttr* G4GDMLWrite::NewAttribute(const G4String& name, const G4double& value) { - xercesc::XMLString::transcode(name,tempStr,9999); - xercesc::DOMAttr* att = doc->createAttribute(tempStr); - std::ostringstream ostream; - ostream.precision(15); - ostream << value; - G4String str = ostream.str(); - xercesc::XMLString::transcode(str,tempStr,9999); - att->setValue(tempStr); - return att; + xercesc::XMLString::transcode(name, tempStr, 9999); + xercesc::DOMAttr* att = doc->createAttribute(tempStr); + std::ostringstream ostream; + ostream.precision(15); + ostream << value; + G4String str = ostream.str(); + xercesc::XMLString::transcode(str, tempStr, 9999); + att->setValue(tempStr); + return att; } +// -------------------------------------------------------------------- xercesc::DOMElement* G4GDMLWrite::NewElement(const G4String& name) { - xercesc::XMLString::transcode(name,tempStr,9999); - return doc->createElement(tempStr); + xercesc::XMLString::transcode(name, tempStr, 9999); + return doc->createElement(tempStr); } +// -------------------------------------------------------------------- G4Transform3D G4GDMLWrite::Write(const G4String& fname, const G4LogicalVolume* const logvol, const G4String& setSchemaLocation, - const G4int depth, - G4bool refs) + const G4int depth, G4bool refs) { - SchemaLocation = setSchemaLocation; - addPointerToName = refs; + SchemaLocation = setSchemaLocation; + addPointerToName = refs; #ifdef G4VERBOSE - if (depth==0) { G4cout << "G4GDML: Writing '" << fname << "'..." << G4endl; } - else { G4cout << "G4GDML: Writing module '" << fname << "'..." << G4endl; } + if(depth == 0) + { + G4cout << "G4GDML: Writing '" << fname << "'..." << G4endl; + } + else + { + G4cout << "G4GDML: Writing module '" << fname << "'..." << G4endl; + } #endif - if (FileExists(fname)) - { - G4String ErrorMessage = "File '"+fname+"' already exists!"; - G4Exception("G4GDMLWrite::Write()", "InvalidSetup", - FatalException, ErrorMessage); - } - - VolumeMap().clear(); // The module map is global for all modules, + if(!overwriteOutputFile && FileExists(fname)) + { + G4String ErrorMessage = "File '" + fname + "' already exists!"; + G4Exception("G4GDMLWrite::Write()", "InvalidSetup", FatalException, + ErrorMessage); + } + + VolumeMap().clear(); // The module map is global for all modules, // so clear it only at once! - xercesc::XMLString::transcode("LS", tempStr, 9999); - xercesc::DOMImplementationRegistry::getDOMImplementation(tempStr); - xercesc::XMLString::transcode("Range", tempStr, 9999); - xercesc::DOMImplementation* impl = - xercesc::DOMImplementationRegistry::getDOMImplementation(tempStr); - xercesc::XMLString::transcode("gdml", tempStr, 9999); - doc = impl->createDocument(0,tempStr,0); - xercesc::DOMElement* gdml = doc->getDocumentElement(); + xercesc::XMLString::transcode("LS", tempStr, 9999); + xercesc::DOMImplementationRegistry::getDOMImplementation(tempStr); + xercesc::XMLString::transcode("Range", tempStr, 9999); + xercesc::DOMImplementation* impl = + xercesc::DOMImplementationRegistry::getDOMImplementation(tempStr); + xercesc::XMLString::transcode("gdml", tempStr, 9999); + doc = impl->createDocument(0, tempStr, 0); + xercesc::DOMElement* gdml = doc->getDocumentElement(); #if XERCES_VERSION_MAJOR >= 3 - // DOM L3 as per Xerces 3.0 API - xercesc::DOMLSSerializer* writer = - ((xercesc::DOMImplementationLS*)impl)->createLSSerializer(); + // DOM L3 as per Xerces 3.0 API + xercesc::DOMLSSerializer* writer = + ((xercesc::DOMImplementationLS*) impl)->createLSSerializer(); - xercesc::DOMConfiguration *dc = writer->getDomConfig(); - dc->setParameter(xercesc::XMLUni::fgDOMWRTFormatPrettyPrint, true); + xercesc::DOMConfiguration* dc = writer->getDomConfig(); + dc->setParameter(xercesc::XMLUni::fgDOMWRTFormatPrettyPrint, true); #else - xercesc::DOMWriter* writer = - ((xercesc::DOMImplementationLS*)impl)->createDOMWriter(); + xercesc::DOMWriter* writer = + ((xercesc::DOMImplementationLS*) impl)->createDOMWriter(); - if (writer->canSetFeature(xercesc::XMLUni::fgDOMWRTFormatPrettyPrint, true)) - writer->setFeature(xercesc::XMLUni::fgDOMWRTFormatPrettyPrint, true); + if(writer->canSetFeature(xercesc::XMLUni::fgDOMWRTFormatPrettyPrint, true)) + writer->setFeature(xercesc::XMLUni::fgDOMWRTFormatPrettyPrint, true); #endif - gdml->setAttributeNode(NewAttribute("xmlns:xsi", - "http://www.w3.org/2001/XMLSchema-instance")); - gdml->setAttributeNode(NewAttribute("xsi:noNamespaceSchemaLocation", - SchemaLocation)); + gdml->setAttributeNode( + NewAttribute("xmlns:xsi", "http://www.w3.org/2001/XMLSchema-instance")); + gdml->setAttributeNode( + NewAttribute("xsi:noNamespaceSchemaLocation", SchemaLocation)); - ExtensionWrite(gdml); - DefineWrite(gdml); - MaterialsWrite(gdml); - SolidsWrite(gdml); - StructureWrite(gdml); - UserinfoWrite(gdml); - SetupWrite(gdml,logvol); + ExtensionWrite(gdml); + DefineWrite(gdml); + MaterialsWrite(gdml); + SolidsWrite(gdml); + StructureWrite(gdml); + UserinfoWrite(gdml); + SetupWrite(gdml, logvol); - G4Transform3D R = TraverseVolumeTree(logvol,depth); + G4Transform3D R = TraverseVolumeTree(logvol, depth); - SurfacesWrite(); - xercesc::XMLFormatTarget *myFormTarget = - new xercesc::LocalFileFormatTarget(fname.c_str()); + SurfacesWrite(); + xercesc::XMLFormatTarget* myFormTarget = + new xercesc::LocalFileFormatTarget(fname.c_str()); - try - { + try + { #if XERCES_VERSION_MAJOR >= 3 - // DOM L3 as per Xerces 3.0 API - xercesc::DOMLSOutput *theOutput = - ((xercesc::DOMImplementationLS*)impl)->createLSOutput(); - theOutput->setByteStream(myFormTarget); - writer->write(doc, theOutput); + // DOM L3 as per Xerces 3.0 API + xercesc::DOMLSOutput* theOutput = + ((xercesc::DOMImplementationLS*) impl)->createLSOutput(); + theOutput->setByteStream(myFormTarget); + writer->write(doc, theOutput); #else - writer->writeNode(myFormTarget, *doc); + writer->writeNode(myFormTarget, *doc); #endif - } - catch (const xercesc::XMLException& toCatch) - { - char* message = xercesc::XMLString::transcode(toCatch.getMessage()); - G4cout << "G4GDML: Exception message is: " << message << G4endl; - xercesc::XMLString::release(&message); - return G4Transform3D::Identity; - } - catch (const xercesc::DOMException& toCatch) - { - char* message = xercesc::XMLString::transcode(toCatch.msg); - G4cout << "G4GDML: Exception message is: " << message << G4endl; - xercesc::XMLString::release(&message); - return G4Transform3D::Identity; - } - catch (...) - { - G4cout << "G4GDML: Unexpected Exception!" << G4endl; - return G4Transform3D::Identity; - } + } catch(const xercesc::XMLException& toCatch) + { + char* message = xercesc::XMLString::transcode(toCatch.getMessage()); + G4cout << "G4GDML: Exception message is: " << message << G4endl; + xercesc::XMLString::release(&message); + return G4Transform3D::Identity; + } catch(const xercesc::DOMException& toCatch) + { + char* message = xercesc::XMLString::transcode(toCatch.msg); + G4cout << "G4GDML: Exception message is: " << message << G4endl; + xercesc::XMLString::release(&message); + return G4Transform3D::Identity; + } catch(...) + { + G4cout << "G4GDML: Unexpected Exception!" << G4endl; + return G4Transform3D::Identity; + } - delete myFormTarget; - writer->release(); + delete myFormTarget; + writer->release(); - if (depth==0) - { - G4cout << "G4GDML: Writing '" << fname << "' done !" << G4endl; - } - else - { + if(depth == 0) + { + G4cout << "G4GDML: Writing '" << fname << "' done !" << G4endl; + } + else + { #ifdef G4VERBOSE - G4cout << "G4GDML: Writing module '" << fname << "' done !" << G4endl; + G4cout << "G4GDML: Writing module '" << fname << "' done !" << G4endl; #endif - } + } - return R; + return R; } +// -------------------------------------------------------------------- void G4GDMLWrite::AddModule(const G4VPhysicalVolume* const physvol) { - G4String fname = GenerateName(physvol->GetName(),physvol); - G4cout << "G4GDML: Adding module '" << fname << "'..." << G4endl; + G4String fname = GenerateName(physvol->GetName(), physvol); + G4cout << "G4GDML: Adding module '" << fname << "'..." << G4endl; - if (physvol == 0) - { - G4Exception("G4GDMLWrite::AddModule()", "InvalidSetup", FatalException, - "Invalid NULL pointer is specified for modularization!"); - return; - } - if (dynamic_cast(physvol)) - { - G4Exception("G4GDMLWrite::AddModule()", "InvalidSetup", FatalException, - "It is not possible to modularize by divisionvol!"); - return; - } - if (physvol->IsParameterised()) - { - G4Exception("G4GDMLWrite::AddModule()", "InvalidSetup", FatalException, - "It is not possible to modularize by parameterised volume!"); - return; - } - if (physvol->IsReplicated()) - { - G4Exception("G4GDMLWrite::AddModule()", "InvalidSetup", FatalException, - "It is not possible to modularize by replicated volume!"); - return; - } + if(physvol == nullptr) + { + G4Exception("G4GDMLWrite::AddModule()", "InvalidSetup", FatalException, + "Invalid NULL pointer is specified for modularization!"); + return; + } + if(dynamic_cast(physvol)) + { + G4Exception("G4GDMLWrite::AddModule()", "InvalidSetup", FatalException, + "It is not possible to modularize by divisionvol!"); + return; + } + if(physvol->IsParameterised()) + { + G4Exception("G4GDMLWrite::AddModule()", "InvalidSetup", FatalException, + "It is not possible to modularize by parameterised volume!"); + return; + } + if(physvol->IsReplicated()) + { + G4Exception("G4GDMLWrite::AddModule()", "InvalidSetup", FatalException, + "It is not possible to modularize by replicated volume!"); + return; + } - PvolumeMap()[physvol] = fname; + PvolumeMap()[physvol] = fname; } +// -------------------------------------------------------------------- void G4GDMLWrite::AddModule(const G4int depth) { - if (depth<0) - { - G4Exception("G4GDMLWrite::AddModule()", "InvalidSetup", FatalException, - "Depth must be a positive number!"); - } - if (DepthMap().find(depth) != DepthMap().end()) - { - G4Exception("G4GDMLWrite::AddModule()", "InvalidSetup", FatalException, - "Adding module(s) at this depth is already requested!"); - } - DepthMap()[depth] = 0; + if(depth < 0) + { + G4Exception("G4GDMLWrite::AddModule()", "InvalidSetup", FatalException, + "Depth must be a positive number!"); + } + if(DepthMap().find(depth) != DepthMap().end()) + { + G4Exception("G4GDMLWrite::AddModule()", "InvalidSetup", FatalException, + "Adding module(s) at this depth is already requested!"); + } + DepthMap()[depth] = 0; } -G4String G4GDMLWrite::Modularize( const G4VPhysicalVolume* const physvol, - const G4int depth ) +// -------------------------------------------------------------------- +G4String G4GDMLWrite::Modularize(const G4VPhysicalVolume* const physvol, + const G4int depth) { - if (PvolumeMap().find(physvol) != PvolumeMap().end()) - { - return PvolumeMap()[physvol]; // Modularize via physvol - } + if(PvolumeMap().find(physvol) != PvolumeMap().cend()) + { + return PvolumeMap()[physvol]; // Modularize via physvol + } - if (DepthMap().find(depth) != DepthMap().end()) // Modularize via depth - { - std::stringstream stream; - stream << "depth" << depth << "_module" << DepthMap()[depth] << ".gdml"; - DepthMap()[depth]++; // There can be more modules at this depth! - return G4String(stream.str()); - } + if(DepthMap().find(depth) != DepthMap().cend()) // Modularize via depth + { + std::stringstream stream; + stream << "depth" << depth << "_module" << DepthMap()[depth] << ".gdml"; + DepthMap()[depth]++; // There can be more modules at this depth! + return G4String(stream.str()); + } - return G4String(""); // Empty string for module name = no modularization + return G4String(""); // Empty string for module name = no modularization // was requested at that level/physvol! } +// -------------------------------------------------------------------- void G4GDMLWrite::AddAuxiliary(G4GDMLAuxStructType myaux) { - auxList.push_back(myaux); + auxList.push_back(myaux); } +// -------------------------------------------------------------------- +void G4GDMLWrite::SetOutputFileOverwrite(G4bool flag) +{ + overwriteOutputFile = flag; +} + +// -------------------------------------------------------------------- void G4GDMLWrite::SetAddPointerToName(G4bool set) { - addPointerToName = set; + addPointerToName = set; } diff --git a/source/persistency/gdml/src/G4GDMLWriteDefine.cc b/source/persistency/gdml/src/G4GDMLWriteDefine.cc index 2acd98bec0..9800aceb49 100644 --- a/source/persistency/gdml/src/G4GDMLWriteDefine.cc +++ b/source/persistency/gdml/src/G4GDMLWriteDefine.cc @@ -23,115 +23,122 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLWriteDefine implementation // -// -// class G4GDMLWriteDefine Implementation -// -// Original author: Zoltan Torzsok, November 2007 -// +// Author: Zoltan Torzsok, November 2007 // -------------------------------------------------------------------- #include "G4GDMLWriteDefine.hh" #include "G4SystemOfUnits.hh" const G4double G4GDMLWriteDefine::kRelativePrecision = DBL_EPSILON; -const G4double G4GDMLWriteDefine::kAngularPrecision = DBL_EPSILON; -const G4double G4GDMLWriteDefine::kLinearPrecision = DBL_EPSILON; +const G4double G4GDMLWriteDefine::kAngularPrecision = DBL_EPSILON; +const G4double G4GDMLWriteDefine::kLinearPrecision = DBL_EPSILON; +// -------------------------------------------------------------------- G4GDMLWriteDefine::G4GDMLWriteDefine() - : G4GDMLWrite(), defineElement(0) + : G4GDMLWrite() { } +// -------------------------------------------------------------------- G4GDMLWriteDefine::~G4GDMLWriteDefine() { } +// -------------------------------------------------------------------- G4ThreeVector G4GDMLWriteDefine::GetAngles(const G4RotationMatrix& mtx) { - G4double x,y,z; - G4RotationMatrix mat = mtx; - mat.rectify(); // Rectify matrix from possible roundoff errors + G4double x, y, z; + G4RotationMatrix mat = mtx; + mat.rectify(); // Rectify matrix from possible roundoff errors - // Direction of rotation given by left-hand rule; clockwise rotation + // Direction of rotation given by left-hand rule; clockwise rotation - static const G4double kMatrixPrecision = 10E-10; - const G4double cosb = std::sqrt(mtx.xx()*mtx.xx()+mtx.yx()*mtx.yx()); + static const G4double kMatrixPrecision = 10E-10; + const G4double cosb = std::sqrt(mtx.xx() * mtx.xx() + mtx.yx() * mtx.yx()); - if (cosb > kMatrixPrecision) - { - x = std::atan2(mtx.zy(),mtx.zz()); - y = std::atan2(-mtx.zx(),cosb); - z = std::atan2(mtx.yx(),mtx.xx()); - } - else - { - x = std::atan2(-mtx.yz(),mtx.yy()); - y = std::atan2(-mtx.zx(),cosb); - z = 0.0; - } + if(cosb > kMatrixPrecision) + { + x = std::atan2(mtx.zy(), mtx.zz()); + y = std::atan2(-mtx.zx(), cosb); + z = std::atan2(mtx.yx(), mtx.xx()); + } + else + { + x = std::atan2(-mtx.yz(), mtx.yy()); + y = std::atan2(-mtx.zx(), cosb); + z = 0.0; + } - return G4ThreeVector(x,y,z); + return G4ThreeVector(x, y, z); } -void G4GDMLWriteDefine:: -Scale_vectorWrite(xercesc::DOMElement* element, const G4String& tag, - const G4String& name, const G4ThreeVector& scl) +// -------------------------------------------------------------------- +void G4GDMLWriteDefine::Scale_vectorWrite(xercesc::DOMElement* element, + const G4String& tag, + const G4String& name, + const G4ThreeVector& scl) { - const G4double x = (std::fabs(scl.x()-1.0) < kRelativePrecision) - ? 1.0 : scl.x(); - const G4double y = (std::fabs(scl.y()-1.0) < kRelativePrecision) - ? 1.0 : scl.y(); - const G4double z = (std::fabs(scl.z()-1.0) < kRelativePrecision) - ? 1.0 : scl.z(); + const G4double x = + (std::fabs(scl.x() - 1.0) < kRelativePrecision) ? 1.0 : scl.x(); + const G4double y = + (std::fabs(scl.y() - 1.0) < kRelativePrecision) ? 1.0 : scl.y(); + const G4double z = + (std::fabs(scl.z() - 1.0) < kRelativePrecision) ? 1.0 : scl.z(); - xercesc::DOMElement* scaleElement = NewElement(tag); - scaleElement->setAttributeNode(NewAttribute("name",name)); - scaleElement->setAttributeNode(NewAttribute("x",x)); - scaleElement->setAttributeNode(NewAttribute("y",y)); - scaleElement->setAttributeNode(NewAttribute("z",z)); - element->appendChild(scaleElement); + xercesc::DOMElement* scaleElement = NewElement(tag); + scaleElement->setAttributeNode(NewAttribute("name", name)); + scaleElement->setAttributeNode(NewAttribute("x", x)); + scaleElement->setAttributeNode(NewAttribute("y", y)); + scaleElement->setAttributeNode(NewAttribute("z", z)); + element->appendChild(scaleElement); } -void G4GDMLWriteDefine:: -Rotation_vectorWrite(xercesc::DOMElement* element, const G4String& tag, - const G4String& name, const G4ThreeVector& rot) +// -------------------------------------------------------------------- +void G4GDMLWriteDefine::Rotation_vectorWrite(xercesc::DOMElement* element, + const G4String& tag, + const G4String& name, + const G4ThreeVector& rot) { - const G4double x = (std::fabs(rot.x()) < kAngularPrecision) ? 0.0 : rot.x(); - const G4double y = (std::fabs(rot.y()) < kAngularPrecision) ? 0.0 : rot.y(); - const G4double z = (std::fabs(rot.z()) < kAngularPrecision) ? 0.0 : rot.z(); + const G4double x = (std::fabs(rot.x()) < kAngularPrecision) ? 0.0 : rot.x(); + const G4double y = (std::fabs(rot.y()) < kAngularPrecision) ? 0.0 : rot.y(); + const G4double z = (std::fabs(rot.z()) < kAngularPrecision) ? 0.0 : rot.z(); - xercesc::DOMElement* rotationElement = NewElement(tag); - rotationElement->setAttributeNode(NewAttribute("name",name)); - rotationElement->setAttributeNode(NewAttribute("x",x/degree)); - rotationElement->setAttributeNode(NewAttribute("y",y/degree)); - rotationElement->setAttributeNode(NewAttribute("z",z/degree)); - rotationElement->setAttributeNode(NewAttribute("unit","deg")); - element->appendChild(rotationElement); + xercesc::DOMElement* rotationElement = NewElement(tag); + rotationElement->setAttributeNode(NewAttribute("name", name)); + rotationElement->setAttributeNode(NewAttribute("x", x / degree)); + rotationElement->setAttributeNode(NewAttribute("y", y / degree)); + rotationElement->setAttributeNode(NewAttribute("z", z / degree)); + rotationElement->setAttributeNode(NewAttribute("unit", "deg")); + element->appendChild(rotationElement); } -void G4GDMLWriteDefine:: -Position_vectorWrite(xercesc::DOMElement* element, const G4String& tag, - const G4String& name, const G4ThreeVector& pos) +// -------------------------------------------------------------------- +void G4GDMLWriteDefine::Position_vectorWrite(xercesc::DOMElement* element, + const G4String& tag, + const G4String& name, + const G4ThreeVector& pos) { - const G4double x = (std::fabs(pos.x()) < kLinearPrecision) ? 0.0 : pos.x(); - const G4double y = (std::fabs(pos.y()) < kLinearPrecision) ? 0.0 : pos.y(); - const G4double z = (std::fabs(pos.z()) < kLinearPrecision) ? 0.0 : pos.z(); + const G4double x = (std::fabs(pos.x()) < kLinearPrecision) ? 0.0 : pos.x(); + const G4double y = (std::fabs(pos.y()) < kLinearPrecision) ? 0.0 : pos.y(); + const G4double z = (std::fabs(pos.z()) < kLinearPrecision) ? 0.0 : pos.z(); - xercesc::DOMElement* positionElement = NewElement(tag); - positionElement->setAttributeNode(NewAttribute("name",name)); - positionElement->setAttributeNode(NewAttribute("x",x/mm)); - positionElement->setAttributeNode(NewAttribute("y",y/mm)); - positionElement->setAttributeNode(NewAttribute("z",z/mm)); - positionElement->setAttributeNode(NewAttribute("unit","mm")); - element->appendChild(positionElement); + xercesc::DOMElement* positionElement = NewElement(tag); + positionElement->setAttributeNode(NewAttribute("name", name)); + positionElement->setAttributeNode(NewAttribute("x", x / mm)); + positionElement->setAttributeNode(NewAttribute("y", y / mm)); + positionElement->setAttributeNode(NewAttribute("z", z / mm)); + positionElement->setAttributeNode(NewAttribute("unit", "mm")); + element->appendChild(positionElement); } +// -------------------------------------------------------------------- void G4GDMLWriteDefine::DefineWrite(xercesc::DOMElement* element) { #ifdef G4VERBOSE - G4cout << "G4GDML: Writing definitions..." << G4endl; + G4cout << "G4GDML: Writing definitions..." << G4endl; #endif - defineElement = NewElement("define"); - element->appendChild(defineElement); + defineElement = NewElement("define"); + element->appendChild(defineElement); } diff --git a/source/persistency/gdml/src/G4GDMLWriteMaterials.cc b/source/persistency/gdml/src/G4GDMLWriteMaterials.cc index ae712f90eb..0b71a678d5 100644 --- a/source/persistency/gdml/src/G4GDMLWriteMaterials.cc +++ b/source/persistency/gdml/src/G4GDMLWriteMaterials.cc @@ -23,12 +23,9 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLWriteMaterials implementation // -// -// class G4GDMLWriteMaterials Implementation -// -// Original author: Zoltan Torzsok, November 2007 -// +// Author: Zoltan Torzsok, November 2007 // -------------------------------------------------------------------- #include @@ -41,310 +38,346 @@ #include "G4Isotope.hh" #include "G4Material.hh" +// -------------------------------------------------------------------- G4GDMLWriteMaterials::G4GDMLWriteMaterials() - : G4GDMLWriteDefine(), materialsElement(0) + : G4GDMLWriteDefine() { } +// -------------------------------------------------------------------- G4GDMLWriteMaterials::~G4GDMLWriteMaterials() { } -void G4GDMLWriteMaterials:: -AtomWrite(xercesc::DOMElement* element,const G4double& a) +// -------------------------------------------------------------------- +void G4GDMLWriteMaterials::AtomWrite(xercesc::DOMElement* element, + const G4double& a) { - xercesc::DOMElement* atomElement = NewElement("atom"); - atomElement->setAttributeNode(NewAttribute("unit","g/mole")); - atomElement->setAttributeNode(NewAttribute("value",a*mole/g)); - element->appendChild(atomElement); + xercesc::DOMElement* atomElement = NewElement("atom"); + atomElement->setAttributeNode(NewAttribute("unit", "g/mole")); + atomElement->setAttributeNode(NewAttribute("value", a * mole / g)); + element->appendChild(atomElement); } -void G4GDMLWriteMaterials:: -DWrite(xercesc::DOMElement* element,const G4double& d) +// -------------------------------------------------------------------- +void G4GDMLWriteMaterials::DWrite(xercesc::DOMElement* element, + const G4double& d) { - xercesc::DOMElement* DElement = NewElement("D"); - DElement->setAttributeNode(NewAttribute("unit","g/cm3")); - DElement->setAttributeNode(NewAttribute("value",d*cm3/g)); - element->appendChild(DElement); + xercesc::DOMElement* DElement = NewElement("D"); + DElement->setAttributeNode(NewAttribute("unit", "g/cm3")); + DElement->setAttributeNode(NewAttribute("value", d * cm3 / g)); + element->appendChild(DElement); } -void G4GDMLWriteMaterials:: -PWrite(xercesc::DOMElement* element,const G4double& P) +// -------------------------------------------------------------------- +void G4GDMLWriteMaterials::PWrite(xercesc::DOMElement* element, + const G4double& P) { - xercesc::DOMElement* PElement = NewElement("P"); - PElement->setAttributeNode(NewAttribute("unit","pascal")); - PElement->setAttributeNode(NewAttribute("value",P/hep_pascal)); - element->appendChild(PElement); + xercesc::DOMElement* PElement = NewElement("P"); + PElement->setAttributeNode(NewAttribute("unit", "pascal")); + PElement->setAttributeNode(NewAttribute("value", P / hep_pascal)); + element->appendChild(PElement); } -void G4GDMLWriteMaterials:: -TWrite(xercesc::DOMElement* element,const G4double& T) +// -------------------------------------------------------------------- +void G4GDMLWriteMaterials::TWrite(xercesc::DOMElement* element, + const G4double& T) { - xercesc::DOMElement* TElement = NewElement("T"); - TElement->setAttributeNode(NewAttribute("unit","K")); - TElement->setAttributeNode(NewAttribute("value",T/kelvin)); - element->appendChild(TElement); + xercesc::DOMElement* TElement = NewElement("T"); + TElement->setAttributeNode(NewAttribute("unit", "K")); + TElement->setAttributeNode(NewAttribute("value", T / kelvin)); + element->appendChild(TElement); } -void G4GDMLWriteMaterials:: -MEEWrite(xercesc::DOMElement* element,const G4double& MEE) +// -------------------------------------------------------------------- +void G4GDMLWriteMaterials::MEEWrite(xercesc::DOMElement* element, + const G4double& MEE) { - xercesc::DOMElement* PElement = NewElement("MEE"); - PElement->setAttributeNode(NewAttribute("unit","eV")); - PElement->setAttributeNode(NewAttribute("value",MEE/electronvolt)); - element->appendChild(PElement); + xercesc::DOMElement* PElement = NewElement("MEE"); + PElement->setAttributeNode(NewAttribute("unit", "eV")); + PElement->setAttributeNode(NewAttribute("value", MEE / electronvolt)); + element->appendChild(PElement); } -void G4GDMLWriteMaterials:: -IsotopeWrite(const G4Isotope* const isotopePtr) +// -------------------------------------------------------------------- +void G4GDMLWriteMaterials::IsotopeWrite(const G4Isotope* const isotopePtr) { - const G4String name = GenerateName(isotopePtr->GetName(),isotopePtr); + const G4String name = GenerateName(isotopePtr->GetName(), isotopePtr); - xercesc::DOMElement* isotopeElement = NewElement("isotope"); - isotopeElement->setAttributeNode(NewAttribute("name",name)); - isotopeElement->setAttributeNode(NewAttribute("N",isotopePtr->GetN())); - isotopeElement->setAttributeNode(NewAttribute("Z",isotopePtr->GetZ())); - materialsElement->appendChild(isotopeElement); - AtomWrite(isotopeElement,isotopePtr->GetA()); + xercesc::DOMElement* isotopeElement = NewElement("isotope"); + isotopeElement->setAttributeNode(NewAttribute("name", name)); + isotopeElement->setAttributeNode(NewAttribute("N", isotopePtr->GetN())); + isotopeElement->setAttributeNode(NewAttribute("Z", isotopePtr->GetZ())); + materialsElement->appendChild(isotopeElement); + AtomWrite(isotopeElement, isotopePtr->GetA()); } +// -------------------------------------------------------------------- void G4GDMLWriteMaterials::ElementWrite(const G4Element* const elementPtr) { - const G4String name = GenerateName(elementPtr->GetName(),elementPtr); + const G4String name = GenerateName(elementPtr->GetName(), elementPtr); - xercesc::DOMElement* elementElement = NewElement("element"); - elementElement->setAttributeNode(NewAttribute("name",name)); + xercesc::DOMElement* elementElement = NewElement("element"); + elementElement->setAttributeNode(NewAttribute("name", name)); - const size_t NumberOfIsotopes = elementPtr->GetNumberOfIsotopes(); + const std::size_t NumberOfIsotopes = elementPtr->GetNumberOfIsotopes(); - if (NumberOfIsotopes>0) - { - const G4double* RelativeAbundanceVector = - elementPtr->GetRelativeAbundanceVector(); - for (size_t i=0;iGetIsotope(i)->GetName(), - elementPtr->GetIsotope(i)); - xercesc::DOMElement* fractionElement = NewElement("fraction"); - fractionElement->setAttributeNode(NewAttribute("n", - RelativeAbundanceVector[i])); - fractionElement->setAttributeNode(NewAttribute("ref",fractionref)); - elementElement->appendChild(fractionElement); - AddIsotope(elementPtr->GetIsotope(i)); - } - } - else - { - elementElement->setAttributeNode(NewAttribute("Z",elementPtr->GetZ())); - AtomWrite(elementElement,elementPtr->GetA()); - } + if(NumberOfIsotopes > 0) + { + const G4double* RelativeAbundanceVector + = elementPtr->GetRelativeAbundanceVector(); + for(std::size_t i = 0; i < NumberOfIsotopes; ++i) + { + G4String fractionref = GenerateName(elementPtr->GetIsotope(i)->GetName(), + elementPtr->GetIsotope(i)); + xercesc::DOMElement* fractionElement = NewElement("fraction"); + fractionElement->setAttributeNode( + NewAttribute("n", RelativeAbundanceVector[i])); + fractionElement->setAttributeNode(NewAttribute("ref", fractionref)); + elementElement->appendChild(fractionElement); + AddIsotope(elementPtr->GetIsotope(i)); + } + } + else + { + elementElement->setAttributeNode(NewAttribute("Z", elementPtr->GetZ())); + AtomWrite(elementElement, elementPtr->GetA()); + } - materialsElement->appendChild(elementElement); - // Append the element AFTER all the possible components are appended! + materialsElement->appendChild(elementElement); + // Append the element AFTER all the possible components are appended! } +// -------------------------------------------------------------------- void G4GDMLWriteMaterials::MaterialWrite(const G4Material* const materialPtr) { - G4String state_str("undefined"); - const G4State state = materialPtr->GetState(); - if (state==kStateSolid) { state_str = "solid"; } else - if (state==kStateLiquid) { state_str = "liquid"; } else - if (state==kStateGas) { state_str = "gas"; } + G4String state_str("undefined"); + const G4State state = materialPtr->GetState(); + if(state == kStateSolid) + { + state_str = "solid"; + } + else if(state == kStateLiquid) + { + state_str = "liquid"; + } + else if(state == kStateGas) + { + state_str = "gas"; + } - const G4String name = GenerateName(materialPtr->GetName(), materialPtr); + const G4String name = GenerateName(materialPtr->GetName(), materialPtr); - xercesc::DOMElement* materialElement = NewElement("material"); - materialElement->setAttributeNode(NewAttribute("name",name)); - materialElement->setAttributeNode(NewAttribute("state",state_str)); + xercesc::DOMElement* materialElement = NewElement("material"); + materialElement->setAttributeNode(NewAttribute("name", name)); + materialElement->setAttributeNode(NewAttribute("state", state_str)); - // Write any property attached to the material... - // - if (materialPtr->GetMaterialPropertiesTable()) - { - PropertyWrite(materialElement, materialPtr); - } + // Write any property attached to the material... + // + if(materialPtr->GetMaterialPropertiesTable()) + { + PropertyWrite(materialElement, materialPtr); + } - if (materialPtr->GetTemperature() != STP_Temperature) - { TWrite(materialElement,materialPtr->GetTemperature()); } - if (materialPtr->GetPressure() != STP_Pressure) - { PWrite(materialElement,materialPtr->GetPressure()); } + if(materialPtr->GetTemperature() != STP_Temperature) + { + TWrite(materialElement, materialPtr->GetTemperature()); + } - // Write Ionisation potential (mean excitation energy) - MEEWrite(materialElement,materialPtr->GetIonisation()->GetMeanExcitationEnergy()); - - DWrite(materialElement,materialPtr->GetDensity()); - - const size_t NumberOfElements = materialPtr->GetNumberOfElements(); + if(materialPtr->GetPressure() != STP_Pressure) + { + PWrite(materialElement, materialPtr->GetPressure()); + } - if ( (NumberOfElements>1) - || ( materialPtr->GetElement(0) - && materialPtr->GetElement(0)->GetNumberOfIsotopes()>1 ) ) - { - const G4double* MassFractionVector = materialPtr->GetFractionVector(); + // Write Ionisation potential (mean excitation energy) + MEEWrite(materialElement, + materialPtr->GetIonisation()->GetMeanExcitationEnergy()); - for (size_t i=0;iGetElement(i)->GetName(), - materialPtr->GetElement(i)); - xercesc::DOMElement* fractionElement = NewElement("fraction"); - fractionElement->setAttributeNode(NewAttribute("n", - MassFractionVector[i])); - fractionElement->setAttributeNode(NewAttribute("ref",fractionref)); - materialElement->appendChild(fractionElement); - AddElement(materialPtr->GetElement(i)); - } - } - else - { - materialElement->setAttributeNode(NewAttribute("Z",materialPtr->GetZ())); - AtomWrite(materialElement,materialPtr->GetA()); - } + DWrite(materialElement, materialPtr->GetDensity()); - // Append the material AFTER all the possible components are appended! - // - materialsElement->appendChild(materialElement); + const std::size_t NumberOfElements = materialPtr->GetNumberOfElements(); + + if((NumberOfElements > 1) || + (materialPtr->GetElement(0) != nullptr && + materialPtr->GetElement(0)->GetNumberOfIsotopes() > 1)) + { + const G4double* MassFractionVector = materialPtr->GetFractionVector(); + + for(std::size_t i = 0; i < NumberOfElements; ++i) + { + const G4String fractionref = GenerateName( + materialPtr->GetElement(i)->GetName(), materialPtr->GetElement(i)); + xercesc::DOMElement* fractionElement = NewElement("fraction"); + fractionElement->setAttributeNode( + NewAttribute("n", MassFractionVector[i])); + fractionElement->setAttributeNode(NewAttribute("ref", fractionref)); + materialElement->appendChild(fractionElement); + AddElement(materialPtr->GetElement(i)); + } + } + else + { + materialElement->setAttributeNode(NewAttribute("Z", materialPtr->GetZ())); + AtomWrite(materialElement, materialPtr->GetA()); + } + + // Append the material AFTER all the possible components are appended! + // + materialsElement->appendChild(materialElement); } -void G4GDMLWriteMaterials::PropertyVectorWrite(const G4String& key, - const G4PhysicsOrderedFreeVector* const pvec) +// -------------------------------------------------------------------- +void G4GDMLWriteMaterials::PropertyVectorWrite( + const G4String& key, const G4PhysicsOrderedFreeVector* const pvec) { - for (size_t i=0; isetAttributeNode(NewAttribute("name", matrixref)); - matrixElement->setAttributeNode(NewAttribute("coldim", "2")); - std::ostringstream pvalues; - for (size_t i=0; iGetVectorLength(); i++) - { - if (i!=0) { pvalues << " "; } - pvalues << pvec->Energy(i) << " " << (*pvec)[i]; - } - matrixElement->setAttributeNode(NewAttribute("values", pvalues.str())); + for(std::size_t i = 0; i < propertyList.size(); ++i) // Check if property is + { // already in the list! + if(propertyList[i] == pvec) + { + return; + } + } + propertyList.push_back(pvec); - defineElement->appendChild(matrixElement); + const G4String matrixref = GenerateName(key, pvec); + xercesc::DOMElement* matrixElement = NewElement("matrix"); + matrixElement->setAttributeNode(NewAttribute("name", matrixref)); + matrixElement->setAttributeNode(NewAttribute("coldim", "2")); + std::ostringstream pvalues; + for(std::size_t i = 0; i < pvec->GetVectorLength(); ++i) + { + if(i != 0) + { + pvalues << " "; + } + pvalues << pvec->Energy(i) << " " << (*pvec)[i]; + } + matrixElement->setAttributeNode(NewAttribute("values", pvalues.str())); + + defineElement->appendChild(matrixElement); } -void G4GDMLWriteMaterials::PropertyConstWrite(const G4String& key, - const G4double pval, const G4MaterialPropertiesTable* ptable) -{ - const G4String matrixref = GenerateName(key, ptable); - xercesc::DOMElement* matrixElement = NewElement("matrix"); - matrixElement->setAttributeNode(NewAttribute("name", matrixref)); - matrixElement->setAttributeNode(NewAttribute("coldim", "1")); - std::ostringstream pvalues; +// -------------------------------------------------------------------- +void G4GDMLWriteMaterials::PropertyConstWrite( + const G4String& key, const G4double pval, + const G4MaterialPropertiesTable* ptable) +{ + const G4String matrixref = GenerateName(key, ptable); + xercesc::DOMElement* matrixElement = NewElement("matrix"); + matrixElement->setAttributeNode(NewAttribute("name", matrixref)); + matrixElement->setAttributeNode(NewAttribute("coldim", "1")); + std::ostringstream pvalues; - pvalues << pval; - matrixElement->setAttributeNode(NewAttribute("values", pvalues.str())); + pvalues << pval; + matrixElement->setAttributeNode(NewAttribute("values", pvalues.str())); - defineElement->appendChild(matrixElement); + defineElement->appendChild(matrixElement); } - +// -------------------------------------------------------------------- void G4GDMLWriteMaterials::PropertyWrite(xercesc::DOMElement* matElement, const G4Material* const mat) { - xercesc::DOMElement* propElement; - G4MaterialPropertiesTable* ptable = mat->GetMaterialPropertiesTable(); + xercesc::DOMElement* propElement; + G4MaterialPropertiesTable* ptable = mat->GetMaterialPropertiesTable(); - const std::map< G4int, G4PhysicsOrderedFreeVector*, - std::less >* pmap = ptable->GetPropertyMap(); - const std::map< G4int, G4double, - std::less >* cmap = ptable->GetConstPropertyMap(); - std::map< G4int, G4PhysicsOrderedFreeVector*, - std::less >::const_iterator mpos; - std::map< G4int, G4double, - std::less >::const_iterator cpos; - - - for (mpos=pmap->begin(); mpos!=pmap->end(); mpos++) - { - propElement = NewElement("property"); - propElement->setAttributeNode(NewAttribute("name", - ptable->GetMaterialPropertyNames()[mpos->first])); - propElement->setAttributeNode(NewAttribute("ref", - GenerateName(ptable->GetMaterialPropertyNames()[mpos->first], - mpos->second))); - if (mpos->second) - { - PropertyVectorWrite(ptable->GetMaterialPropertyNames()[mpos->first], - mpos->second); - matElement->appendChild(propElement); - } - else - { - G4String warn_message = "Null pointer for material property -" - + ptable->GetMaterialPropertyNames()[mpos->first] + "- of material -" - + mat->GetName() + "- !"; - G4Exception("G4GDMLWriteMaterials::PropertyWrite()", "NullPointer", - JustWarning, warn_message); - continue; - } - } - - for (cpos=cmap->begin(); cpos!=cmap->end(); cpos++) - { - propElement = NewElement("property"); - propElement->setAttributeNode(NewAttribute("name", - ptable->GetMaterialConstPropertyNames()[cpos->first])); - propElement-> - setAttributeNode(NewAttribute("ref", - GenerateName(ptable->GetMaterialConstPropertyNames()[cpos->first], - ptable))); - - - PropertyConstWrite(ptable->GetMaterialConstPropertyNames()[cpos->first], - cpos->second, ptable); + auto pmap = ptable->GetPropertyMap(); + auto cmap = ptable->GetConstPropertyMap(); + for(auto mpos = pmap->cbegin(); mpos != pmap->cend(); ++mpos) + { + propElement = NewElement("property"); + propElement->setAttributeNode( + NewAttribute("name", ptable->GetMaterialPropertyNames()[mpos->first])); + propElement->setAttributeNode(NewAttribute( + "ref", GenerateName(ptable->GetMaterialPropertyNames()[mpos->first], + mpos->second))); + if(mpos->second) + { + PropertyVectorWrite(ptable->GetMaterialPropertyNames()[mpos->first], + mpos->second); matElement->appendChild(propElement); - } + } + else + { + G4String warn_message = "Null pointer for material property -" + + ptable->GetMaterialPropertyNames()[mpos->first] + + "- of material -" + mat->GetName() + "- !"; + G4Exception("G4GDMLWriteMaterials::PropertyWrite()", "NullPointer", + JustWarning, warn_message); + continue; + } + } + + for(auto cpos = cmap->cbegin(); cpos != cmap->cend(); ++cpos) + { + propElement = NewElement("property"); + propElement->setAttributeNode(NewAttribute( + "name", ptable->GetMaterialConstPropertyNames()[cpos->first])); + propElement->setAttributeNode(NewAttribute( + "ref", GenerateName(ptable->GetMaterialConstPropertyNames()[cpos->first], + ptable))); + + PropertyConstWrite(ptable->GetMaterialConstPropertyNames()[cpos->first], + cpos->second, ptable); + + matElement->appendChild(propElement); + } } +// -------------------------------------------------------------------- void G4GDMLWriteMaterials::MaterialsWrite(xercesc::DOMElement* element) { #ifdef G4VERBOSE - G4cout << "G4GDML: Writing materials..." << G4endl; + G4cout << "G4GDML: Writing materials..." << G4endl; #endif - materialsElement = NewElement("materials"); - element->appendChild(materialsElement); + materialsElement = NewElement("materials"); + element->appendChild(materialsElement); - isotopeList.clear(); - elementList.clear(); - materialList.clear(); - propertyList.clear(); + isotopeList.clear(); + elementList.clear(); + materialList.clear(); + propertyList.clear(); } +// -------------------------------------------------------------------- void G4GDMLWriteMaterials::AddIsotope(const G4Isotope* const isotopePtr) { - for (size_t i=0; i - setAttributeNode(NewAttribute("x",2.0*box->GetXHalfLength()/mm)); - box_dimensionsElement-> - setAttributeNode(NewAttribute("y",2.0*box->GetYHalfLength()/mm)); - box_dimensionsElement-> - setAttributeNode(NewAttribute("z",2.0*box->GetZHalfLength()/mm)); - box_dimensionsElement-> - setAttributeNode(NewAttribute("lunit","mm")); - parametersElement->appendChild(box_dimensionsElement); + xercesc::DOMElement* box_dimensionsElement = NewElement("box_dimensions"); + box_dimensionsElement->setAttributeNode( + NewAttribute("x", 2.0 * box->GetXHalfLength() / mm)); + box_dimensionsElement->setAttributeNode( + NewAttribute("y", 2.0 * box->GetYHalfLength() / mm)); + box_dimensionsElement->setAttributeNode( + NewAttribute("z", 2.0 * box->GetZHalfLength() / mm)); + box_dimensionsElement->setAttributeNode(NewAttribute("lunit", "mm")); + parametersElement->appendChild(box_dimensionsElement); } -void G4GDMLWriteParamvol:: -Trd_dimensionsWrite(xercesc::DOMElement* parametersElement, - const G4Trd* const trd) +// -------------------------------------------------------------------- +void G4GDMLWriteParamvol::Trd_dimensionsWrite( + xercesc::DOMElement* parametersElement, const G4Trd* const trd) { - xercesc::DOMElement* trd_dimensionsElement = NewElement("trd_dimensions"); - trd_dimensionsElement-> - setAttributeNode(NewAttribute("x1",2.0*trd->GetXHalfLength1()/mm)); - trd_dimensionsElement-> - setAttributeNode(NewAttribute("x2",2.0*trd->GetXHalfLength2()/mm)); - trd_dimensionsElement-> - setAttributeNode(NewAttribute("y1",2.0*trd->GetYHalfLength1()/mm)); - trd_dimensionsElement-> - setAttributeNode(NewAttribute("y2",2.0*trd->GetYHalfLength2()/mm)); - trd_dimensionsElement-> - setAttributeNode(NewAttribute("z",2.0*trd->GetZHalfLength()/mm)); - trd_dimensionsElement-> - setAttributeNode(NewAttribute("lunit","mm")); - parametersElement->appendChild(trd_dimensionsElement); + xercesc::DOMElement* trd_dimensionsElement = NewElement("trd_dimensions"); + trd_dimensionsElement->setAttributeNode( + NewAttribute("x1", 2.0 * trd->GetXHalfLength1() / mm)); + trd_dimensionsElement->setAttributeNode( + NewAttribute("x2", 2.0 * trd->GetXHalfLength2() / mm)); + trd_dimensionsElement->setAttributeNode( + NewAttribute("y1", 2.0 * trd->GetYHalfLength1() / mm)); + trd_dimensionsElement->setAttributeNode( + NewAttribute("y2", 2.0 * trd->GetYHalfLength2() / mm)); + trd_dimensionsElement->setAttributeNode( + NewAttribute("z", 2.0 * trd->GetZHalfLength() / mm)); + trd_dimensionsElement->setAttributeNode(NewAttribute("lunit", "mm")); + parametersElement->appendChild(trd_dimensionsElement); } -void G4GDMLWriteParamvol:: -Trap_dimensionsWrite(xercesc::DOMElement* parametersElement, - const G4Trap* const trap) +// -------------------------------------------------------------------- +void G4GDMLWriteParamvol::Trap_dimensionsWrite( + xercesc::DOMElement* parametersElement, const G4Trap* const trap) { - const G4ThreeVector simaxis = trap->GetSymAxis(); - const G4double phi = (simaxis.z() != 1.0) - ? (std::atan(simaxis.y()/simaxis.x())) : (0.0); - const G4double theta = std::acos(simaxis.z()); - const G4double alpha1 = std::atan(trap->GetTanAlpha1()); - const G4double alpha2 = std::atan(trap->GetTanAlpha2()); + const G4ThreeVector simaxis = trap->GetSymAxis(); + const G4double phi = + (simaxis.z() != 1.0) ? (std::atan(simaxis.y() / simaxis.x())) : (0.0); + const G4double theta = std::acos(simaxis.z()); + const G4double alpha1 = std::atan(trap->GetTanAlpha1()); + const G4double alpha2 = std::atan(trap->GetTanAlpha2()); - xercesc::DOMElement* trap_dimensionsElement = NewElement("trap"); - trap_dimensionsElement-> - setAttributeNode(NewAttribute("z",2.0*trap->GetZHalfLength()/mm)); - trap_dimensionsElement-> - setAttributeNode(NewAttribute("theta",theta/degree)); - trap_dimensionsElement-> - setAttributeNode(NewAttribute("phi",phi/degree)); - trap_dimensionsElement-> - setAttributeNode(NewAttribute("y1",2.0*trap->GetYHalfLength1()/mm)); - trap_dimensionsElement-> - setAttributeNode(NewAttribute("x1",2.0*trap->GetXHalfLength1()/mm)); - trap_dimensionsElement-> - setAttributeNode(NewAttribute("x2",2.0*trap->GetXHalfLength2()/mm)); - trap_dimensionsElement-> - setAttributeNode(NewAttribute("alpha1",alpha1/degree)); - trap_dimensionsElement-> - setAttributeNode(NewAttribute("y2",2.0*trap->GetYHalfLength2()/mm)); - trap_dimensionsElement-> - setAttributeNode(NewAttribute("x3",2.0*trap->GetXHalfLength3()/mm)); - trap_dimensionsElement-> - setAttributeNode(NewAttribute("x4",2.0*trap->GetXHalfLength4()/mm)); - trap_dimensionsElement-> - setAttributeNode(NewAttribute("alpha2",alpha2/degree)); - trap_dimensionsElement-> - setAttributeNode(NewAttribute("aunit","deg")); - trap_dimensionsElement-> - setAttributeNode(NewAttribute("lunit","mm")); - parametersElement->appendChild(trap_dimensionsElement); + xercesc::DOMElement* trap_dimensionsElement = NewElement("trap"); + trap_dimensionsElement->setAttributeNode( + NewAttribute("z", 2.0 * trap->GetZHalfLength() / mm)); + trap_dimensionsElement->setAttributeNode( + NewAttribute("theta", theta / degree)); + trap_dimensionsElement->setAttributeNode(NewAttribute("phi", phi / degree)); + trap_dimensionsElement->setAttributeNode( + NewAttribute("y1", 2.0 * trap->GetYHalfLength1() / mm)); + trap_dimensionsElement->setAttributeNode( + NewAttribute("x1", 2.0 * trap->GetXHalfLength1() / mm)); + trap_dimensionsElement->setAttributeNode( + NewAttribute("x2", 2.0 * trap->GetXHalfLength2() / mm)); + trap_dimensionsElement->setAttributeNode( + NewAttribute("alpha1", alpha1 / degree)); + trap_dimensionsElement->setAttributeNode( + NewAttribute("y2", 2.0 * trap->GetYHalfLength2() / mm)); + trap_dimensionsElement->setAttributeNode( + NewAttribute("x3", 2.0 * trap->GetXHalfLength3() / mm)); + trap_dimensionsElement->setAttributeNode( + NewAttribute("x4", 2.0 * trap->GetXHalfLength4() / mm)); + trap_dimensionsElement->setAttributeNode( + NewAttribute("alpha2", alpha2 / degree)); + trap_dimensionsElement->setAttributeNode(NewAttribute("aunit", "deg")); + trap_dimensionsElement->setAttributeNode(NewAttribute("lunit", "mm")); + parametersElement->appendChild(trap_dimensionsElement); } -void G4GDMLWriteParamvol:: -Tube_dimensionsWrite(xercesc::DOMElement* parametersElement, - const G4Tubs* const tube) +// -------------------------------------------------------------------- +void G4GDMLWriteParamvol::Tube_dimensionsWrite( + xercesc::DOMElement* parametersElement, const G4Tubs* const tube) { - xercesc::DOMElement* tube_dimensionsElement = NewElement("tube_dimensions"); - tube_dimensionsElement-> - setAttributeNode(NewAttribute("InR",tube->GetInnerRadius()/mm)); - tube_dimensionsElement-> - setAttributeNode(NewAttribute("OutR",tube->GetOuterRadius()/mm)); - tube_dimensionsElement-> - setAttributeNode(NewAttribute("hz",2.0*tube->GetZHalfLength()/mm)); - tube_dimensionsElement-> - setAttributeNode(NewAttribute("StartPhi",tube->GetStartPhiAngle()/degree)); - tube_dimensionsElement-> - setAttributeNode(NewAttribute("DeltaPhi",tube->GetDeltaPhiAngle()/degree)); - tube_dimensionsElement-> - setAttributeNode(NewAttribute("aunit","deg")); - tube_dimensionsElement-> - setAttributeNode(NewAttribute("lunit","mm")); - parametersElement->appendChild(tube_dimensionsElement); + xercesc::DOMElement* tube_dimensionsElement = NewElement("tube_dimensions"); + tube_dimensionsElement->setAttributeNode( + NewAttribute("InR", tube->GetInnerRadius() / mm)); + tube_dimensionsElement->setAttributeNode( + NewAttribute("OutR", tube->GetOuterRadius() / mm)); + tube_dimensionsElement->setAttributeNode( + NewAttribute("hz", 2.0 * tube->GetZHalfLength() / mm)); + tube_dimensionsElement->setAttributeNode( + NewAttribute("StartPhi", tube->GetStartPhiAngle() / degree)); + tube_dimensionsElement->setAttributeNode( + NewAttribute("DeltaPhi", tube->GetDeltaPhiAngle() / degree)); + tube_dimensionsElement->setAttributeNode(NewAttribute("aunit", "deg")); + tube_dimensionsElement->setAttributeNode(NewAttribute("lunit", "mm")); + parametersElement->appendChild(tube_dimensionsElement); } - -void G4GDMLWriteParamvol:: -Cone_dimensionsWrite(xercesc::DOMElement* parametersElement, - const G4Cons* const cone) +// -------------------------------------------------------------------- +void G4GDMLWriteParamvol::Cone_dimensionsWrite( + xercesc::DOMElement* parametersElement, const G4Cons* const cone) { - xercesc::DOMElement* cone_dimensionsElement = NewElement("cone_dimensions"); - cone_dimensionsElement-> - setAttributeNode(NewAttribute("rmin1",cone->GetInnerRadiusMinusZ()/mm)); - cone_dimensionsElement-> - setAttributeNode(NewAttribute("rmax1",cone->GetOuterRadiusMinusZ()/mm)); - cone_dimensionsElement-> - setAttributeNode(NewAttribute("rmin2",cone->GetInnerRadiusPlusZ()/mm)); - cone_dimensionsElement-> - setAttributeNode(NewAttribute("rmax2",cone->GetOuterRadiusPlusZ()/mm)); - cone_dimensionsElement-> - setAttributeNode(NewAttribute("z",2.0*cone->GetZHalfLength()/mm)); - cone_dimensionsElement-> - setAttributeNode(NewAttribute("startphi",cone->GetStartPhiAngle()/degree)); - cone_dimensionsElement-> - setAttributeNode(NewAttribute("deltaphi",cone->GetDeltaPhiAngle()/degree)); - cone_dimensionsElement-> - setAttributeNode(NewAttribute("aunit","deg")); - cone_dimensionsElement-> - setAttributeNode(NewAttribute("lunit","mm")); - parametersElement->appendChild(cone_dimensionsElement); + xercesc::DOMElement* cone_dimensionsElement = NewElement("cone_dimensions"); + cone_dimensionsElement->setAttributeNode( + NewAttribute("rmin1", cone->GetInnerRadiusMinusZ() / mm)); + cone_dimensionsElement->setAttributeNode( + NewAttribute("rmax1", cone->GetOuterRadiusMinusZ() / mm)); + cone_dimensionsElement->setAttributeNode( + NewAttribute("rmin2", cone->GetInnerRadiusPlusZ() / mm)); + cone_dimensionsElement->setAttributeNode( + NewAttribute("rmax2", cone->GetOuterRadiusPlusZ() / mm)); + cone_dimensionsElement->setAttributeNode( + NewAttribute("z", 2.0 * cone->GetZHalfLength() / mm)); + cone_dimensionsElement->setAttributeNode( + NewAttribute("startphi", cone->GetStartPhiAngle() / degree)); + cone_dimensionsElement->setAttributeNode( + NewAttribute("deltaphi", cone->GetDeltaPhiAngle() / degree)); + cone_dimensionsElement->setAttributeNode(NewAttribute("aunit", "deg")); + cone_dimensionsElement->setAttributeNode(NewAttribute("lunit", "mm")); + parametersElement->appendChild(cone_dimensionsElement); } -void G4GDMLWriteParamvol:: -Sphere_dimensionsWrite(xercesc::DOMElement* parametersElement, - const G4Sphere* const sphere) +// -------------------------------------------------------------------- +void G4GDMLWriteParamvol::Sphere_dimensionsWrite( + xercesc::DOMElement* parametersElement, const G4Sphere* const sphere) { - xercesc::DOMElement* sphere_dimensionsElement = - NewElement("sphere_dimensions"); - sphere_dimensionsElement->setAttributeNode(NewAttribute("rmin", - sphere->GetInnerRadius()/mm)); - sphere_dimensionsElement->setAttributeNode(NewAttribute("rmax", - sphere->GetOuterRadius()/mm)); - sphere_dimensionsElement->setAttributeNode(NewAttribute("startphi", - sphere->GetStartPhiAngle()/degree)); - sphere_dimensionsElement->setAttributeNode(NewAttribute("deltaphi", - sphere->GetDeltaPhiAngle()/degree)); - sphere_dimensionsElement->setAttributeNode(NewAttribute("starttheta", - sphere->GetStartThetaAngle()/degree)); - sphere_dimensionsElement->setAttributeNode(NewAttribute("deltatheta", - sphere->GetDeltaThetaAngle()/degree)); - sphere_dimensionsElement->setAttributeNode(NewAttribute("aunit","deg")); - sphere_dimensionsElement->setAttributeNode(NewAttribute("lunit","mm")); - parametersElement->appendChild(sphere_dimensionsElement); + xercesc::DOMElement* sphere_dimensionsElement = + NewElement("sphere_dimensions"); + sphere_dimensionsElement->setAttributeNode( + NewAttribute("rmin", sphere->GetInnerRadius() / mm)); + sphere_dimensionsElement->setAttributeNode( + NewAttribute("rmax", sphere->GetOuterRadius() / mm)); + sphere_dimensionsElement->setAttributeNode( + NewAttribute("startphi", sphere->GetStartPhiAngle() / degree)); + sphere_dimensionsElement->setAttributeNode( + NewAttribute("deltaphi", sphere->GetDeltaPhiAngle() / degree)); + sphere_dimensionsElement->setAttributeNode( + NewAttribute("starttheta", sphere->GetStartThetaAngle() / degree)); + sphere_dimensionsElement->setAttributeNode( + NewAttribute("deltatheta", sphere->GetDeltaThetaAngle() / degree)); + sphere_dimensionsElement->setAttributeNode(NewAttribute("aunit", "deg")); + sphere_dimensionsElement->setAttributeNode(NewAttribute("lunit", "mm")); + parametersElement->appendChild(sphere_dimensionsElement); } -void G4GDMLWriteParamvol:: -Orb_dimensionsWrite(xercesc::DOMElement* parametersElement, - const G4Orb* const orb) +// -------------------------------------------------------------------- +void G4GDMLWriteParamvol::Orb_dimensionsWrite( + xercesc::DOMElement* parametersElement, const G4Orb* const orb) { - xercesc::DOMElement* orb_dimensionsElement = NewElement("orb_dimensions"); - orb_dimensionsElement->setAttributeNode(NewAttribute("r", - orb->GetRadius()/mm)); - orb_dimensionsElement->setAttributeNode(NewAttribute("lunit","mm")); - parametersElement->appendChild(orb_dimensionsElement); + xercesc::DOMElement* orb_dimensionsElement = NewElement("orb_dimensions"); + orb_dimensionsElement->setAttributeNode( + NewAttribute("r", orb->GetRadius() / mm)); + orb_dimensionsElement->setAttributeNode(NewAttribute("lunit", "mm")); + parametersElement->appendChild(orb_dimensionsElement); } -void G4GDMLWriteParamvol:: -Torus_dimensionsWrite(xercesc::DOMElement* parametersElement, - const G4Torus* const torus) +// -------------------------------------------------------------------- +void G4GDMLWriteParamvol::Torus_dimensionsWrite( + xercesc::DOMElement* parametersElement, const G4Torus* const torus) { - xercesc::DOMElement* torus_dimensionsElement = - NewElement("torus_dimensions"); - torus_dimensionsElement-> - setAttributeNode(NewAttribute("rmin",torus->GetRmin()/mm)); - torus_dimensionsElement-> - setAttributeNode(NewAttribute("rmax",torus->GetRmax()/mm)); - torus_dimensionsElement-> - setAttributeNode(NewAttribute("rtor",torus->GetRtor()/mm)); - torus_dimensionsElement-> - setAttributeNode(NewAttribute("startphi",torus->GetSPhi()/degree)); - torus_dimensionsElement-> - setAttributeNode(NewAttribute("deltaphi",torus->GetDPhi()/degree)); - torus_dimensionsElement-> - setAttributeNode(NewAttribute("aunit","deg")); - torus_dimensionsElement-> - setAttributeNode(NewAttribute("lunit","mm")); - parametersElement->appendChild(torus_dimensionsElement); + xercesc::DOMElement* torus_dimensionsElement = NewElement("torus_dimensions"); + torus_dimensionsElement->setAttributeNode( + NewAttribute("rmin", torus->GetRmin() / mm)); + torus_dimensionsElement->setAttributeNode( + NewAttribute("rmax", torus->GetRmax() / mm)); + torus_dimensionsElement->setAttributeNode( + NewAttribute("rtor", torus->GetRtor() / mm)); + torus_dimensionsElement->setAttributeNode( + NewAttribute("startphi", torus->GetSPhi() / degree)); + torus_dimensionsElement->setAttributeNode( + NewAttribute("deltaphi", torus->GetDPhi() / degree)); + torus_dimensionsElement->setAttributeNode(NewAttribute("aunit", "deg")); + torus_dimensionsElement->setAttributeNode(NewAttribute("lunit", "mm")); + parametersElement->appendChild(torus_dimensionsElement); } -void G4GDMLWriteParamvol:: -Ellipsoid_dimensionsWrite(xercesc::DOMElement* parametersElement, - const G4Ellipsoid* const ellipsoid) +// -------------------------------------------------------------------- +void G4GDMLWriteParamvol::Ellipsoid_dimensionsWrite( + xercesc::DOMElement* parametersElement, const G4Ellipsoid* const ellipsoid) { - xercesc::DOMElement* ellipsoid_dimensionsElement = - NewElement("ellipsoid_dimensions"); - ellipsoid_dimensionsElement-> - setAttributeNode(NewAttribute("ax",ellipsoid->GetSemiAxisMax(0)/mm)); - ellipsoid_dimensionsElement-> - setAttributeNode(NewAttribute("by",ellipsoid->GetSemiAxisMax(1)/mm)); - ellipsoid_dimensionsElement-> - setAttributeNode(NewAttribute("cz",ellipsoid->GetSemiAxisMax(2)/mm)); - ellipsoid_dimensionsElement-> - setAttributeNode(NewAttribute("zcut1",ellipsoid->GetZBottomCut()/mm)); - ellipsoid_dimensionsElement-> - setAttributeNode(NewAttribute("zcut2",ellipsoid->GetZTopCut()/mm)); - ellipsoid_dimensionsElement-> - setAttributeNode(NewAttribute("lunit","mm")); - parametersElement->appendChild(ellipsoid_dimensionsElement); + xercesc::DOMElement* ellipsoid_dimensionsElement = + NewElement("ellipsoid_dimensions"); + ellipsoid_dimensionsElement->setAttributeNode( + NewAttribute("ax", ellipsoid->GetSemiAxisMax(0) / mm)); + ellipsoid_dimensionsElement->setAttributeNode( + NewAttribute("by", ellipsoid->GetSemiAxisMax(1) / mm)); + ellipsoid_dimensionsElement->setAttributeNode( + NewAttribute("cz", ellipsoid->GetSemiAxisMax(2) / mm)); + ellipsoid_dimensionsElement->setAttributeNode( + NewAttribute("zcut1", ellipsoid->GetZBottomCut() / mm)); + ellipsoid_dimensionsElement->setAttributeNode( + NewAttribute("zcut2", ellipsoid->GetZTopCut() / mm)); + ellipsoid_dimensionsElement->setAttributeNode(NewAttribute("lunit", "mm")); + parametersElement->appendChild(ellipsoid_dimensionsElement); } -void G4GDMLWriteParamvol:: -Para_dimensionsWrite(xercesc::DOMElement* parametersElement, - const G4Para* const para) +// -------------------------------------------------------------------- +void G4GDMLWriteParamvol::Para_dimensionsWrite( + xercesc::DOMElement* parametersElement, const G4Para* const para) { - const G4ThreeVector simaxis = para->GetSymAxis(); + const G4ThreeVector simaxis = para->GetSymAxis(); - const G4double alpha = std::atan(para->GetTanAlpha()); - const G4double theta = std::acos(simaxis.z()); - const G4double phi = (simaxis.z() != 1.0) - ? (std::atan(simaxis.y()/simaxis.x())) : (0.0); + const G4double alpha = std::atan(para->GetTanAlpha()); + const G4double theta = std::acos(simaxis.z()); + const G4double phi = + (simaxis.z() != 1.0) ? (std::atan(simaxis.y() / simaxis.x())) : (0.0); - xercesc::DOMElement* para_dimensionsElement = NewElement("para_dimensions"); - para_dimensionsElement-> - setAttributeNode(NewAttribute("x",2.0*para->GetXHalfLength()/mm)); - para_dimensionsElement-> - setAttributeNode(NewAttribute("y",2.0*para->GetYHalfLength()/mm)); - para_dimensionsElement-> - setAttributeNode(NewAttribute("z",2.0*para->GetZHalfLength()/mm)); - para_dimensionsElement-> - setAttributeNode(NewAttribute("alpha",alpha/degree)); - para_dimensionsElement-> - setAttributeNode(NewAttribute("theta",theta/degree)); - para_dimensionsElement-> - setAttributeNode(NewAttribute("phi",phi/degree)); - para_dimensionsElement-> - setAttributeNode(NewAttribute("aunit","deg")); - para_dimensionsElement-> - setAttributeNode(NewAttribute("lunit","mm")); - parametersElement->appendChild(para_dimensionsElement); + xercesc::DOMElement* para_dimensionsElement = NewElement("para_dimensions"); + para_dimensionsElement->setAttributeNode( + NewAttribute("x", 2.0 * para->GetXHalfLength() / mm)); + para_dimensionsElement->setAttributeNode( + NewAttribute("y", 2.0 * para->GetYHalfLength() / mm)); + para_dimensionsElement->setAttributeNode( + NewAttribute("z", 2.0 * para->GetZHalfLength() / mm)); + para_dimensionsElement->setAttributeNode( + NewAttribute("alpha", alpha / degree)); + para_dimensionsElement->setAttributeNode( + NewAttribute("theta", theta / degree)); + para_dimensionsElement->setAttributeNode(NewAttribute("phi", phi / degree)); + para_dimensionsElement->setAttributeNode(NewAttribute("aunit", "deg")); + para_dimensionsElement->setAttributeNode(NewAttribute("lunit", "mm")); + parametersElement->appendChild(para_dimensionsElement); } -void G4GDMLWriteParamvol:: -Hype_dimensionsWrite(xercesc::DOMElement* parametersElement, - const G4Hype* const hype) +// -------------------------------------------------------------------- +void G4GDMLWriteParamvol::Hype_dimensionsWrite( + xercesc::DOMElement* parametersElement, const G4Hype* const hype) { - xercesc::DOMElement* hype_dimensionsElement = NewElement("hype_dimensions"); - hype_dimensionsElement-> - setAttributeNode(NewAttribute("rmin",hype->GetInnerRadius()/mm)); - hype_dimensionsElement-> - setAttributeNode(NewAttribute("rmax",hype->GetOuterRadius()/mm)); - hype_dimensionsElement-> - setAttributeNode(NewAttribute("inst",hype->GetInnerStereo()/degree)); - hype_dimensionsElement-> - setAttributeNode(NewAttribute("outst",hype->GetOuterStereo()/degree)); - hype_dimensionsElement-> - setAttributeNode(NewAttribute("z",2.0*hype->GetZHalfLength()/mm)); - hype_dimensionsElement-> - setAttributeNode(NewAttribute("aunit","deg")); - hype_dimensionsElement-> - setAttributeNode(NewAttribute("lunit","mm")); - parametersElement->appendChild(hype_dimensionsElement); + xercesc::DOMElement* hype_dimensionsElement = NewElement("hype_dimensions"); + hype_dimensionsElement->setAttributeNode( + NewAttribute("rmin", hype->GetInnerRadius() / mm)); + hype_dimensionsElement->setAttributeNode( + NewAttribute("rmax", hype->GetOuterRadius() / mm)); + hype_dimensionsElement->setAttributeNode( + NewAttribute("inst", hype->GetInnerStereo() / degree)); + hype_dimensionsElement->setAttributeNode( + NewAttribute("outst", hype->GetOuterStereo() / degree)); + hype_dimensionsElement->setAttributeNode( + NewAttribute("z", 2.0 * hype->GetZHalfLength() / mm)); + hype_dimensionsElement->setAttributeNode(NewAttribute("aunit", "deg")); + hype_dimensionsElement->setAttributeNode(NewAttribute("lunit", "mm")); + parametersElement->appendChild(hype_dimensionsElement); } -void G4GDMLWriteParamvol:: -Polycone_dimensionsWrite(xercesc::DOMElement* parametersElement, - const G4Polycone* const pcone) +// -------------------------------------------------------------------- +void G4GDMLWriteParamvol::Polycone_dimensionsWrite( + xercesc::DOMElement* parametersElement, const G4Polycone* const pcone) { - xercesc::DOMElement* pcone_dimensionsElement - = NewElement("polycone_dimensions"); + xercesc::DOMElement* pcone_dimensionsElement = + NewElement("polycone_dimensions"); - pcone_dimensionsElement->setAttributeNode(NewAttribute("numRZ", - pcone->GetOriginalParameters()->Num_z_planes)); - pcone_dimensionsElement->setAttributeNode(NewAttribute("startPhi", - pcone->GetOriginalParameters()->Start_angle/degree)); - pcone_dimensionsElement->setAttributeNode(NewAttribute("openPhi", - pcone->GetOriginalParameters()->Opening_angle/degree)); - pcone_dimensionsElement->setAttributeNode(NewAttribute("aunit","deg")); - pcone_dimensionsElement->setAttributeNode(NewAttribute("lunit","mm")); + pcone_dimensionsElement->setAttributeNode( + NewAttribute("numRZ", pcone->GetOriginalParameters()->Num_z_planes)); + pcone_dimensionsElement->setAttributeNode(NewAttribute( + "startPhi", pcone->GetOriginalParameters()->Start_angle / degree)); + pcone_dimensionsElement->setAttributeNode(NewAttribute( + "openPhi", pcone->GetOriginalParameters()->Opening_angle / degree)); + pcone_dimensionsElement->setAttributeNode(NewAttribute("aunit", "deg")); + pcone_dimensionsElement->setAttributeNode(NewAttribute("lunit", "mm")); - parametersElement->appendChild(pcone_dimensionsElement); - const size_t num_zplanes = pcone->GetOriginalParameters()->Num_z_planes; - const G4double* z_array = pcone->GetOriginalParameters()->Z_values; - const G4double* rmin_array = pcone->GetOriginalParameters()->Rmin; - const G4double* rmax_array = pcone->GetOriginalParameters()->Rmax; + parametersElement->appendChild(pcone_dimensionsElement); + const size_t num_zplanes = pcone->GetOriginalParameters()->Num_z_planes; + const G4double* z_array = pcone->GetOriginalParameters()->Z_values; + const G4double* rmin_array = pcone->GetOriginalParameters()->Rmin; + const G4double* rmax_array = pcone->GetOriginalParameters()->Rmax; - for (size_t i=0; isetAttributeNode(NewAttribute("numRZ", - polyhedra->GetOriginalParameters()->Num_z_planes)); - polyhedra_dimensionsElement->setAttributeNode(NewAttribute("numSide", - polyhedra->GetOriginalParameters()->numSide)); - polyhedra_dimensionsElement->setAttributeNode(NewAttribute("startPhi", - polyhedra->GetOriginalParameters()->Start_angle/degree)); - polyhedra_dimensionsElement->setAttributeNode(NewAttribute("openPhi", - polyhedra->GetOriginalParameters()->Opening_angle/degree)); - polyhedra_dimensionsElement->setAttributeNode(NewAttribute("aunit","deg")); - polyhedra_dimensionsElement->setAttributeNode(NewAttribute("lunit","mm")); + polyhedra_dimensionsElement->setAttributeNode( + NewAttribute("numRZ", polyhedra->GetOriginalParameters()->Num_z_planes)); + polyhedra_dimensionsElement->setAttributeNode( + NewAttribute("numSide", polyhedra->GetOriginalParameters()->numSide)); + polyhedra_dimensionsElement->setAttributeNode(NewAttribute( + "startPhi", polyhedra->GetOriginalParameters()->Start_angle / degree)); + polyhedra_dimensionsElement->setAttributeNode(NewAttribute( + "openPhi", polyhedra->GetOriginalParameters()->Opening_angle / degree)); + polyhedra_dimensionsElement->setAttributeNode(NewAttribute("aunit", "deg")); + polyhedra_dimensionsElement->setAttributeNode(NewAttribute("lunit", "mm")); - parametersElement->appendChild(polyhedra_dimensionsElement); - const size_t num_zplanes = polyhedra->GetOriginalParameters()->Num_z_planes; - const G4double* z_array = polyhedra->GetOriginalParameters()->Z_values; - const G4double* rmin_array = polyhedra->GetOriginalParameters()->Rmin; - const G4double* rmax_array = polyhedra->GetOriginalParameters()->Rmax; + parametersElement->appendChild(polyhedra_dimensionsElement); + const size_t num_zplanes = polyhedra->GetOriginalParameters()->Num_z_planes; + const G4double* z_array = polyhedra->GetOriginalParameters()->Z_values; + const G4double* rmin_array = polyhedra->GetOriginalParameters()->Rmin; + const G4double* rmax_array = polyhedra->GetOriginalParameters()->Rmax; - for (size_t i=0; iGetParameterisation() - ->ComputeTransformation(index, const_cast(paramvol)); - G4ThreeVector Angles; - G4String name = GenerateName(paramvol->GetName(),paramvol); - std::stringstream os; - os.precision(15); - os << index; - G4String sncopie = os.str(); + paramvol->GetParameterisation()->ComputeTransformation( + index, const_cast(paramvol)); + G4ThreeVector Angles; + G4String name = GenerateName(paramvol->GetName(), paramvol); + std::stringstream os; + os.precision(15); + os << index; + G4String sncopie = os.str(); - xercesc::DOMElement* parametersElement = NewElement("parameters"); - parametersElement->setAttributeNode(NewAttribute("number",index+1)); + xercesc::DOMElement* parametersElement = NewElement("parameters"); + parametersElement->setAttributeNode(NewAttribute("number", index + 1)); - PositionWrite(parametersElement, name+sncopie+"_pos", - paramvol->GetObjectTranslation()); - Angles=GetAngles(paramvol->GetObjectRotationValue()); - if (Angles.mag2()>DBL_EPSILON) - { - RotationWrite(parametersElement, name+sncopie+"_rot", - GetAngles(paramvol->GetObjectRotationValue())); - } - paramvolElement->appendChild(parametersElement); + PositionWrite(parametersElement, name + sncopie + "_pos", + paramvol->GetObjectTranslation()); + Angles = GetAngles(paramvol->GetObjectRotationValue()); + if(Angles.mag2() > DBL_EPSILON) + { + RotationWrite(parametersElement, name + sncopie + "_rot", + GetAngles(paramvol->GetObjectRotationValue())); + } + paramvolElement->appendChild(parametersElement); - G4VSolid* solid = paramvol->GetLogicalVolume()->GetSolid(); + G4VSolid* solid = paramvol->GetLogicalVolume()->GetSolid(); - if (G4Box* box = dynamic_cast(solid)) - { - paramvol->GetParameterisation()->ComputeDimensions(*box,index, - const_cast(paramvol)); - Box_dimensionsWrite(parametersElement,box); - } else - if (G4Trd* trd = dynamic_cast(solid)) - { - paramvol->GetParameterisation()->ComputeDimensions(*trd,index, - const_cast(paramvol)); - Trd_dimensionsWrite(parametersElement,trd); - } else - if (G4Trap* trap = dynamic_cast(solid)) - { - paramvol->GetParameterisation()->ComputeDimensions(*trap,index, - const_cast(paramvol)); - Trap_dimensionsWrite(parametersElement,trap); - } else - if (G4Tubs* tube = dynamic_cast(solid)) - { - paramvol->GetParameterisation()->ComputeDimensions(*tube,index, - const_cast(paramvol)); - Tube_dimensionsWrite(parametersElement,tube); - } else - if (G4Cons* cone = dynamic_cast(solid)) - { - paramvol->GetParameterisation()->ComputeDimensions(*cone,index, - const_cast(paramvol)); - Cone_dimensionsWrite(parametersElement,cone); - } else - if (G4Sphere* sphere = dynamic_cast(solid)) - { - paramvol->GetParameterisation()->ComputeDimensions(*sphere,index, - const_cast(paramvol)); - Sphere_dimensionsWrite(parametersElement,sphere); - } else - if (G4Orb* orb = dynamic_cast(solid)) - { - paramvol->GetParameterisation()->ComputeDimensions(*orb,index, - const_cast(paramvol)); - Orb_dimensionsWrite(parametersElement,orb); - } else - if (G4Torus* torus = dynamic_cast(solid)) - { - paramvol->GetParameterisation()->ComputeDimensions(*torus,index, - const_cast(paramvol)); - Torus_dimensionsWrite(parametersElement,torus); - } else - if (G4Ellipsoid* ellipsoid = dynamic_cast(solid)) - { - paramvol->GetParameterisation()->ComputeDimensions(*ellipsoid,index, - const_cast(paramvol)); - Ellipsoid_dimensionsWrite(parametersElement,ellipsoid); - } else - if (G4Para* para = dynamic_cast(solid)) - { - paramvol->GetParameterisation()->ComputeDimensions(*para,index, - const_cast(paramvol)); - Para_dimensionsWrite(parametersElement,para); - } else - if (G4Hype* hype = dynamic_cast(solid)) - { - paramvol->GetParameterisation()->ComputeDimensions(*hype,index, - const_cast(paramvol)); - Hype_dimensionsWrite(parametersElement,hype); - }else - if (G4Polycone* pcone = dynamic_cast(solid)) - { - paramvol->GetParameterisation()->ComputeDimensions(*pcone,index, - const_cast(paramvol)); - Polycone_dimensionsWrite(parametersElement,pcone); - }else - if (G4Polyhedra* polyhedra = dynamic_cast(solid)) - { - paramvol->GetParameterisation()->ComputeDimensions(*polyhedra,index, - const_cast(paramvol)); - Polyhedra_dimensionsWrite(parametersElement,polyhedra); - } - else - { - G4String error_msg = "Solid '" + solid->GetName() - + "' cannot be used in parameterised volume!"; - G4Exception("G4GDMLWriteParamvol::ParametersWrite()", - "InvalidSetup", FatalException, error_msg); - } + if(G4Box* box = dynamic_cast(solid)) + { + paramvol->GetParameterisation()->ComputeDimensions( + *box, index, const_cast(paramvol)); + Box_dimensionsWrite(parametersElement, box); + } + else if(G4Trd* trd = dynamic_cast(solid)) + { + paramvol->GetParameterisation()->ComputeDimensions( + *trd, index, const_cast(paramvol)); + Trd_dimensionsWrite(parametersElement, trd); + } + else if(G4Trap* trap = dynamic_cast(solid)) + { + paramvol->GetParameterisation()->ComputeDimensions( + *trap, index, const_cast(paramvol)); + Trap_dimensionsWrite(parametersElement, trap); + } + else if(G4Tubs* tube = dynamic_cast(solid)) + { + paramvol->GetParameterisation()->ComputeDimensions( + *tube, index, const_cast(paramvol)); + Tube_dimensionsWrite(parametersElement, tube); + } + else if(G4Cons* cone = dynamic_cast(solid)) + { + paramvol->GetParameterisation()->ComputeDimensions( + *cone, index, const_cast(paramvol)); + Cone_dimensionsWrite(parametersElement, cone); + } + else if(G4Sphere* sphere = dynamic_cast(solid)) + { + paramvol->GetParameterisation()->ComputeDimensions( + *sphere, index, const_cast(paramvol)); + Sphere_dimensionsWrite(parametersElement, sphere); + } + else if(G4Orb* orb = dynamic_cast(solid)) + { + paramvol->GetParameterisation()->ComputeDimensions( + *orb, index, const_cast(paramvol)); + Orb_dimensionsWrite(parametersElement, orb); + } + else if(G4Torus* torus = dynamic_cast(solid)) + { + paramvol->GetParameterisation()->ComputeDimensions( + *torus, index, const_cast(paramvol)); + Torus_dimensionsWrite(parametersElement, torus); + } + else if(G4Ellipsoid* ellipsoid = dynamic_cast(solid)) + { + paramvol->GetParameterisation()->ComputeDimensions( + *ellipsoid, index, const_cast(paramvol)); + Ellipsoid_dimensionsWrite(parametersElement, ellipsoid); + } + else if(G4Para* para = dynamic_cast(solid)) + { + paramvol->GetParameterisation()->ComputeDimensions( + *para, index, const_cast(paramvol)); + Para_dimensionsWrite(parametersElement, para); + } + else if(G4Hype* hype = dynamic_cast(solid)) + { + paramvol->GetParameterisation()->ComputeDimensions( + *hype, index, const_cast(paramvol)); + Hype_dimensionsWrite(parametersElement, hype); + } + else if(G4Polycone* pcone = dynamic_cast(solid)) + { + paramvol->GetParameterisation()->ComputeDimensions( + *pcone, index, const_cast(paramvol)); + Polycone_dimensionsWrite(parametersElement, pcone); + } + else if(G4Polyhedra* polyhedra = dynamic_cast(solid)) + { + paramvol->GetParameterisation()->ComputeDimensions( + *polyhedra, index, const_cast(paramvol)); + Polyhedra_dimensionsWrite(parametersElement, polyhedra); + } + else + { + G4String error_msg = "Solid '" + solid->GetName() + + "' cannot be used in parameterised volume!"; + G4Exception("G4GDMLWriteParamvol::ParametersWrite()", "InvalidSetup", + FatalException, error_msg); + } } -void G4GDMLWriteParamvol:: -ParamvolWrite(xercesc::DOMElement* volumeElement, - const G4VPhysicalVolume* const paramvol) +// -------------------------------------------------------------------- +void G4GDMLWriteParamvol::ParamvolWrite(xercesc::DOMElement* volumeElement, + const G4VPhysicalVolume* const paramvol) { - const G4String volumeref = - GenerateName(paramvol->GetLogicalVolume()->GetName(), - paramvol->GetLogicalVolume()); - xercesc::DOMElement* paramvolElement = NewElement("paramvol"); - paramvolElement->setAttributeNode(NewAttribute("ncopies", - paramvol->GetMultiplicity())); - xercesc::DOMElement* volumerefElement = NewElement("volumeref"); - volumerefElement->setAttributeNode(NewAttribute("ref",volumeref)); + const G4String volumeref = GenerateName( + paramvol->GetLogicalVolume()->GetName(), paramvol->GetLogicalVolume()); + xercesc::DOMElement* paramvolElement = NewElement("paramvol"); + paramvolElement->setAttributeNode( + NewAttribute("ncopies", paramvol->GetMultiplicity())); + xercesc::DOMElement* volumerefElement = NewElement("volumeref"); + volumerefElement->setAttributeNode(NewAttribute("ref", volumeref)); - xercesc::DOMElement* algorithmElement = - NewElement("parameterised_position_size"); - paramvolElement->appendChild(volumerefElement); - paramvolElement->appendChild(algorithmElement); - ParamvolAlgorithmWrite(algorithmElement,paramvol); - volumeElement->appendChild(paramvolElement); + xercesc::DOMElement* algorithmElement = + NewElement("parameterised_position_size"); + paramvolElement->appendChild(volumerefElement); + paramvolElement->appendChild(algorithmElement); + ParamvolAlgorithmWrite(algorithmElement, paramvol); + volumeElement->appendChild(paramvolElement); } -void G4GDMLWriteParamvol:: -ParamvolAlgorithmWrite(xercesc::DOMElement* paramvolElement, - const G4VPhysicalVolume* const paramvol) +// -------------------------------------------------------------------- +void G4GDMLWriteParamvol::ParamvolAlgorithmWrite( + xercesc::DOMElement* paramvolElement, const G4VPhysicalVolume* const paramvol) { - const G4String volumeref = - GenerateName(paramvol->GetLogicalVolume()->GetName(), - paramvol->GetLogicalVolume()); - - const G4int parameterCount = paramvol->GetMultiplicity(); + const G4String volumeref = GenerateName( + paramvol->GetLogicalVolume()->GetName(), paramvol->GetLogicalVolume()); - for (G4int i=0; iGetMultiplicity(); + + for(G4int i = 0; i < parameterCount; ++i) + { + ParametersWrite(paramvolElement, paramvol, i); + } } diff --git a/source/persistency/gdml/src/G4GDMLWriteSetup.cc b/source/persistency/gdml/src/G4GDMLWriteSetup.cc index 5bfcefe412..28cb019dd5 100644 --- a/source/persistency/gdml/src/G4GDMLWriteSetup.cc +++ b/source/persistency/gdml/src/G4GDMLWriteSetup.cc @@ -23,39 +23,40 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLWriteSetup implementation // -// -// class G4GDMLWriteSetup Implementation -// -// Original author: Zoltan Torzsok, November 2007 -// +// Author: Zoltan Torzsok, November 2007 // -------------------------------------------------------------------- #include "G4GDMLWriteSetup.hh" #include "G4LogicalVolume.hh" -G4GDMLWriteSetup::G4GDMLWriteSetup() : G4GDMLWriteSolids() +// -------------------------------------------------------------------- +G4GDMLWriteSetup::G4GDMLWriteSetup() + : G4GDMLWriteSolids() { } +// -------------------------------------------------------------------- G4GDMLWriteSetup::~G4GDMLWriteSetup() { } +// -------------------------------------------------------------------- void G4GDMLWriteSetup::SetupWrite(xercesc::DOMElement* gdmlElement, const G4LogicalVolume* const logvol) { #ifdef G4VERBOSE - G4cout << "G4GDML: Writing setup..." << G4endl; + G4cout << "G4GDML: Writing setup..." << G4endl; #endif - const G4String worldref = GenerateName(logvol->GetName(),logvol); + const G4String worldref = GenerateName(logvol->GetName(), logvol); - xercesc::DOMElement* setupElement = NewElement("setup"); - setupElement->setAttributeNode(NewAttribute("version","1.0")); - setupElement->setAttributeNode(NewAttribute("name","Default")); - xercesc::DOMElement* worldElement = NewElement("world"); - worldElement->setAttributeNode(NewAttribute("ref",worldref)); - setupElement->appendChild(worldElement); - gdmlElement->appendChild(setupElement); + xercesc::DOMElement* setupElement = NewElement("setup"); + setupElement->setAttributeNode(NewAttribute("version", "1.0")); + setupElement->setAttributeNode(NewAttribute("name", "Default")); + xercesc::DOMElement* worldElement = NewElement("world"); + worldElement->setAttributeNode(NewAttribute("ref", worldref)); + setupElement->appendChild(worldElement); + gdmlElement->appendChild(setupElement); } diff --git a/source/persistency/gdml/src/G4GDMLWriteSolids.cc b/source/persistency/gdml/src/G4GDMLWriteSolids.cc index c002c57c9a..11560fe356 100644 --- a/source/persistency/gdml/src/G4GDMLWriteSolids.cc +++ b/source/persistency/gdml/src/G4GDMLWriteSolids.cc @@ -23,12 +23,9 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLWriteSolids implementation // -// -// class G4GDMLWriteSolids Implementation -// -// Original author: Zoltan Torzsok, November 2007 -// +// Author: Zoltan Torzsok, November 2007 // -------------------------------------------------------------------- #include "G4GDMLWriteSolids.hh" @@ -70,1182 +67,1259 @@ #include "G4SurfaceProperty.hh" #include "G4MaterialPropertiesTable.hh" +// -------------------------------------------------------------------- G4GDMLWriteSolids::G4GDMLWriteSolids() - : G4GDMLWriteMaterials(), solidsElement(0) + : G4GDMLWriteMaterials() { } +// -------------------------------------------------------------------- G4GDMLWriteSolids::~G4GDMLWriteSolids() { } -void G4GDMLWriteSolids:: -MultiUnionWrite(xercesc::DOMElement* solElement, - const G4MultiUnion* const munionSolid) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::MultiUnionWrite(xercesc::DOMElement* solElement, + const G4MultiUnion* const munionSolid) { - G4int numSolids=munionSolid->GetNumberOfSolids(); - G4String tag("multiUnion"); - - G4VSolid* solid; - G4Transform3D transform; + G4int numSolids = munionSolid->GetNumberOfSolids(); + G4String tag("multiUnion"); - const G4String& name = GenerateName(munionSolid->GetName(),munionSolid); - xercesc::DOMElement* multiUnionElement = NewElement(tag); - multiUnionElement->setAttributeNode(NewAttribute("name",name)); + G4VSolid* solid; + G4Transform3D transform; - for (G4int i=0; iGetSolid(i); - transform = munionSolid->GetTransformation(i); + const G4String& name = GenerateName(munionSolid->GetName(), munionSolid); + xercesc::DOMElement* multiUnionElement = NewElement(tag); + multiUnionElement->setAttributeNode(NewAttribute("name", name)); - HepGeom::Rotate3D rot3d; - HepGeom::Translate3D transl ; - HepGeom::Scale3D scale; - transform.getDecomposition(scale,rot3d,transl); + for(G4int i = 0; i < numSolids; ++i) + { + solid = munionSolid->GetSolid(i); + transform = munionSolid->GetTransformation(i); - G4ThreeVector pos = transl.getTranslation(); - G4RotationMatrix - rotm(CLHEP::HepRep3x3(rot3d.xx(), rot3d.xy(), rot3d.xz(), - rot3d.yx(), rot3d.yy(), rot3d.yz(), - rot3d.zx(), rot3d.zy(), rot3d.zz())); - G4ThreeVector rot = GetAngles(rotm); + HepGeom::Rotate3D rot3d; + HepGeom::Translate3D transl; + HepGeom::Scale3D scale; + transform.getDecomposition(scale, rot3d, transl); - AddSolid(solid); - const G4String& solidref = GenerateName(solid->GetName(),solid); - std::ostringstream os; os << i+1; - const G4String& nodeName = "Node-" + G4String(os.str()); - xercesc::DOMElement* solidElement = NewElement("solid"); - solidElement->setAttributeNode(NewAttribute("ref",solidref)); - xercesc::DOMElement* multiUnionNodeElement = NewElement("multiUnionNode"); - multiUnionNodeElement->setAttributeNode(NewAttribute("name", nodeName)); - multiUnionNodeElement->appendChild(solidElement); // Append solid to node - if ( (std::fabs(pos.x()) > kLinearPrecision) - || (std::fabs(pos.y()) > kLinearPrecision) - || (std::fabs(pos.z()) > kLinearPrecision) ) - { - PositionWrite(multiUnionNodeElement,name+"_pos",pos); - } - if ( (std::fabs(rot.x()) > kAngularPrecision) - || (std::fabs(rot.y()) > kAngularPrecision) - || (std::fabs(rot.z()) > kAngularPrecision) ) - { - RotationWrite(multiUnionNodeElement,name+"_rot",rot); - } - multiUnionElement->appendChild(multiUnionNodeElement); // Append node - } + G4ThreeVector pos = transl.getTranslation(); + G4RotationMatrix rotm(CLHEP::HepRep3x3(rot3d.xx(), rot3d.xy(), rot3d.xz(), + rot3d.yx(), rot3d.yy(), rot3d.yz(), + rot3d.zx(), rot3d.zy(), rot3d.zz())); + G4ThreeVector rot = GetAngles(rotm); - solElement->appendChild(multiUnionElement); - // Add the multiUnion solid AFTER the constituent nodes! -} - -void G4GDMLWriteSolids:: -BooleanWrite(xercesc::DOMElement* solElement, - const G4BooleanSolid* const boolean) -{ - G4int displaced=0; - - G4String tag("undefined"); - if (dynamic_cast(boolean)) - { tag = "intersection"; } else - if (dynamic_cast(boolean)) - { tag = "subtraction"; } else - if (dynamic_cast(boolean)) - { tag = "union"; } - - G4VSolid* firstPtr = const_cast(boolean->GetConstituentSolid(0)); - G4VSolid* secondPtr = const_cast(boolean->GetConstituentSolid(1)); - - G4ThreeVector firstpos,firstrot,pos,rot; - - // Solve possible displacement of referenced solids! - // - while (true) - { - if ( displaced>8 ) - { - G4String ErrorMessage = "The referenced solid '" - + firstPtr->GetName() + - + "in the Boolean shape '" + - + boolean->GetName() + - + "' was displaced too many times!"; - G4Exception("G4GDMLWriteSolids::BooleanWrite()", - "InvalidSetup", FatalException, ErrorMessage); - } - - if (G4DisplacedSolid* disp = dynamic_cast(firstPtr)) - { - firstpos += disp->GetObjectTranslation(); - firstrot += GetAngles(disp->GetObjectRotation()); - firstPtr = disp->GetConstituentMovedSolid(); - displaced++; - continue; - } - break; - } - displaced = 0; - while (true) - { - if ( displaced>maxTransforms ) - { - G4String ErrorMessage = "The referenced solid '" - + secondPtr->GetName() + - + "in the Boolean shape '" + - + boolean->GetName() + - + "' was displaced too many times!"; - G4Exception("G4GDMLWriteSolids::BooleanWrite()", - "InvalidSetup", FatalException, ErrorMessage); - } - - if (G4DisplacedSolid* disp = dynamic_cast(secondPtr)) - { - pos += disp->GetObjectTranslation(); - rot += GetAngles(disp->GetObjectRotation()); - secondPtr = disp->GetConstituentMovedSolid(); - displaced++; - continue; - } - break; - } - - AddSolid(firstPtr); // At first add the constituent solids! - AddSolid(secondPtr); - - const G4String& name = GenerateName(boolean->GetName(),boolean); - const G4String& firstref = GenerateName(firstPtr->GetName(),firstPtr); - const G4String& secondref = GenerateName(secondPtr->GetName(),secondPtr); - - xercesc::DOMElement* booleanElement = NewElement(tag); - booleanElement->setAttributeNode(NewAttribute("name",name)); - xercesc::DOMElement* firstElement = NewElement("first"); - firstElement->setAttributeNode(NewAttribute("ref",firstref)); - booleanElement->appendChild(firstElement); - xercesc::DOMElement* secondElement = NewElement("second"); - secondElement->setAttributeNode(NewAttribute("ref",secondref)); - booleanElement->appendChild(secondElement); - solElement->appendChild(booleanElement); - // Add the boolean solid AFTER the constituent solids! - - if ( (std::fabs(pos.x()) > kLinearPrecision) - || (std::fabs(pos.y()) > kLinearPrecision) - || (std::fabs(pos.z()) > kLinearPrecision) ) - { - PositionWrite(booleanElement,name+"_pos",pos); - } - - if ( (std::fabs(rot.x()) > kAngularPrecision) - || (std::fabs(rot.y()) > kAngularPrecision) - || (std::fabs(rot.z()) > kAngularPrecision) ) - { - RotationWrite(booleanElement,name+"_rot",rot); - } - - if ( (std::fabs(firstpos.x()) > kLinearPrecision) - || (std::fabs(firstpos.y()) > kLinearPrecision) - || (std::fabs(firstpos.z()) > kLinearPrecision) ) - { - FirstpositionWrite(booleanElement,name+"_fpos",firstpos); - } - - if ( (std::fabs(firstrot.x()) > kAngularPrecision) - || (std::fabs(firstrot.y()) > kAngularPrecision) - || (std::fabs(firstrot.z()) > kAngularPrecision) ) - { - FirstrotationWrite(booleanElement,name+"_frot",firstrot); - } -} - -void G4GDMLWriteSolids:: -ScaledWrite(xercesc::DOMElement* solElement, - const G4ScaledSolid* const scaled) -{ - G4String tag("scaledSolid"); - - G4VSolid* solid = const_cast(scaled->GetUnscaledSolid()); - G4Scale3D scale = scaled->GetScaleTransform(); - G4ThreeVector sclVector = G4ThreeVector(scale.xx(), scale.yy(), scale.zz()); - - AddSolid(solid); // Add the constituent solid! - - const G4String& name = GenerateName(scaled->GetName(),scaled); - const G4String& solidref = GenerateName(solid->GetName(),solid); - - xercesc::DOMElement* scaledElement = NewElement(tag); - scaledElement->setAttributeNode(NewAttribute("name",name)); - - xercesc::DOMElement* solidElement = NewElement("solidref"); - solidElement->setAttributeNode(NewAttribute("ref",solidref)); - scaledElement->appendChild(solidElement); - - if ( (std::fabs(scale.xx()) > kLinearPrecision) - && (std::fabs(scale.yy()) > kLinearPrecision) - && (std::fabs(scale.zz()) > kLinearPrecision) ) - { - ScaleWrite(scaledElement, name+"_scl", sclVector); - } - - solElement->appendChild(scaledElement); - // Add the scaled solid AFTER its constituent solid! -} - -void G4GDMLWriteSolids:: -BoxWrite(xercesc::DOMElement* solElement, const G4Box* const box) -{ - const G4String& name = GenerateName(box->GetName(),box); - - xercesc::DOMElement* boxElement = NewElement("box"); - boxElement->setAttributeNode(NewAttribute("name",name)); - boxElement->setAttributeNode(NewAttribute("x",2.0*box->GetXHalfLength()/mm)); - boxElement->setAttributeNode(NewAttribute("y",2.0*box->GetYHalfLength()/mm)); - boxElement->setAttributeNode(NewAttribute("z",2.0*box->GetZHalfLength()/mm)); - boxElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(boxElement); -} - -void G4GDMLWriteSolids:: -ConeWrite(xercesc::DOMElement* solElement, const G4Cons* const cone) -{ - const G4String& name = GenerateName(cone->GetName(),cone); - - xercesc::DOMElement* coneElement = NewElement("cone"); - coneElement->setAttributeNode(NewAttribute("name",name)); - coneElement-> - setAttributeNode(NewAttribute("rmin1",cone->GetInnerRadiusMinusZ()/mm)); - coneElement-> - setAttributeNode(NewAttribute("rmax1",cone->GetOuterRadiusMinusZ()/mm)); - coneElement-> - setAttributeNode(NewAttribute("rmin2",cone->GetInnerRadiusPlusZ()/mm)); - coneElement-> - setAttributeNode(NewAttribute("rmax2",cone->GetOuterRadiusPlusZ()/mm)); - coneElement-> - setAttributeNode(NewAttribute("z",2.0*cone->GetZHalfLength()/mm)); - coneElement-> - setAttributeNode(NewAttribute("startphi",cone->GetStartPhiAngle()/degree)); - coneElement-> - setAttributeNode(NewAttribute("deltaphi",cone->GetDeltaPhiAngle()/degree)); - coneElement->setAttributeNode(NewAttribute("aunit","deg")); - coneElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(coneElement); -} - -void G4GDMLWriteSolids:: -ElconeWrite(xercesc::DOMElement* solElement, - const G4EllipticalCone* const elcone) -{ - const G4String& name = GenerateName(elcone->GetName(),elcone); - - xercesc::DOMElement* elconeElement = NewElement("elcone"); - elconeElement->setAttributeNode(NewAttribute("name",name)); - elconeElement->setAttributeNode(NewAttribute("dx",elcone->GetSemiAxisX()/mm)); - elconeElement->setAttributeNode(NewAttribute("dy",elcone->GetSemiAxisY()/mm)); - elconeElement->setAttributeNode(NewAttribute("zmax",elcone->GetZMax()/mm)); - elconeElement->setAttributeNode(NewAttribute("zcut",elcone->GetZTopCut()/mm)); - elconeElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(elconeElement); -} - -void G4GDMLWriteSolids:: -EllipsoidWrite(xercesc::DOMElement* solElement, - const G4Ellipsoid* const ellipsoid) -{ - const G4String& name = GenerateName(ellipsoid->GetName(),ellipsoid); - - xercesc::DOMElement* ellipsoidElement = NewElement("ellipsoid"); - ellipsoidElement->setAttributeNode(NewAttribute("name",name)); - ellipsoidElement-> - setAttributeNode(NewAttribute("ax",ellipsoid->GetSemiAxisMax(0)/mm)); - ellipsoidElement-> - setAttributeNode(NewAttribute("by",ellipsoid->GetSemiAxisMax(1)/mm)); - ellipsoidElement-> - setAttributeNode(NewAttribute("cz",ellipsoid->GetSemiAxisMax(2)/mm)); - ellipsoidElement-> - setAttributeNode(NewAttribute("zcut1",ellipsoid->GetZBottomCut()/mm)); - ellipsoidElement-> - setAttributeNode(NewAttribute("zcut2",ellipsoid->GetZTopCut()/mm)); - ellipsoidElement-> - setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(ellipsoidElement); -} - -void G4GDMLWriteSolids:: -EltubeWrite(xercesc::DOMElement* solElement, - const G4EllipticalTube* const eltube) -{ - const G4String& name = GenerateName(eltube->GetName(),eltube); - - xercesc::DOMElement* eltubeElement = NewElement("eltube"); - eltubeElement->setAttributeNode(NewAttribute("name",name)); - eltubeElement->setAttributeNode(NewAttribute("dx",eltube->GetDx()/mm)); - eltubeElement->setAttributeNode(NewAttribute("dy",eltube->GetDy()/mm)); - eltubeElement->setAttributeNode(NewAttribute("dz",eltube->GetDz()/mm)); - eltubeElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(eltubeElement); -} - -void G4GDMLWriteSolids:: -XtruWrite(xercesc::DOMElement* solElement, - const G4ExtrudedSolid* const xtru) -{ - const G4String& name = GenerateName(xtru->GetName(),xtru); - - xercesc::DOMElement* xtruElement = NewElement("xtru"); - xtruElement->setAttributeNode(NewAttribute("name",name)); - xtruElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(xtruElement); - - const G4int NumVertex = xtru->GetNofVertices(); - - for (G4int i=0;iappendChild(twoDimVertexElement); - - const G4TwoVector& vertex = xtru->GetVertex(i); - - twoDimVertexElement->setAttributeNode(NewAttribute("x",vertex.x()/mm)); - twoDimVertexElement->setAttributeNode(NewAttribute("y",vertex.y()/mm)); - } - - const G4int NumSection = xtru->GetNofZSections(); - - for (G4int i=0;iappendChild(sectionElement); - - const G4ExtrudedSolid::ZSection section = xtru->GetZSection(i); - - sectionElement->setAttributeNode(NewAttribute("zOrder",i)); - sectionElement->setAttributeNode(NewAttribute("zPosition",section.fZ/mm)); - sectionElement-> - setAttributeNode(NewAttribute("xOffset",section.fOffset.x()/mm)); - sectionElement-> - setAttributeNode(NewAttribute("yOffset",section.fOffset.y()/mm)); - sectionElement-> - setAttributeNode(NewAttribute("scalingFactor",section.fScale)); - } -} - -void G4GDMLWriteSolids:: -HypeWrite(xercesc::DOMElement* solElement, const G4Hype* const hype) -{ - const G4String& name = GenerateName(hype->GetName(),hype); - - xercesc::DOMElement* hypeElement = NewElement("hype"); - hypeElement->setAttributeNode(NewAttribute("name",name)); - hypeElement->setAttributeNode(NewAttribute("rmin", - hype->GetInnerRadius()/mm)); - hypeElement->setAttributeNode(NewAttribute("rmax", - hype->GetOuterRadius()/mm)); - hypeElement->setAttributeNode(NewAttribute("inst", - hype->GetInnerStereo()/degree)); - hypeElement->setAttributeNode(NewAttribute("outst", - hype->GetOuterStereo()/degree)); - hypeElement->setAttributeNode(NewAttribute("z", - 2.0*hype->GetZHalfLength()/mm)); - hypeElement->setAttributeNode(NewAttribute("aunit","deg")); - hypeElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(hypeElement); -} - -void G4GDMLWriteSolids:: -OrbWrite(xercesc::DOMElement* solElement, const G4Orb* const orb) -{ - const G4String& name = GenerateName(orb->GetName(),orb); - - xercesc::DOMElement* orbElement = NewElement("orb"); - orbElement->setAttributeNode(NewAttribute("name",name)); - orbElement->setAttributeNode(NewAttribute("r",orb->GetRadius()/mm)); - orbElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(orbElement); -} - -void G4GDMLWriteSolids:: -ParaWrite(xercesc::DOMElement* solElement, const G4Para* const para) -{ - const G4String& name = GenerateName(para->GetName(),para); - - const G4ThreeVector simaxis = para->GetSymAxis(); - const G4double alpha = std::atan(para->GetTanAlpha()); - const G4double phi = simaxis.phi(); - const G4double theta = simaxis.theta(); - - xercesc::DOMElement* paraElement = NewElement("para"); - paraElement->setAttributeNode(NewAttribute("name",name)); - paraElement->setAttributeNode(NewAttribute("x", - 2.0*para->GetXHalfLength()/mm)); - paraElement->setAttributeNode(NewAttribute("y", - 2.0*para->GetYHalfLength()/mm)); - paraElement->setAttributeNode(NewAttribute("z", - 2.0*para->GetZHalfLength()/mm)); - paraElement->setAttributeNode(NewAttribute("alpha",alpha/degree)); - paraElement->setAttributeNode(NewAttribute("theta",theta/degree)); - paraElement->setAttributeNode(NewAttribute("phi",phi/degree)); - paraElement->setAttributeNode(NewAttribute("aunit","deg")); - paraElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(paraElement); -} - -void G4GDMLWriteSolids:: -ParaboloidWrite(xercesc::DOMElement* solElement, - const G4Paraboloid* const paraboloid) -{ - const G4String& name = GenerateName(paraboloid->GetName(),paraboloid); - - xercesc::DOMElement* paraboloidElement = NewElement("paraboloid"); - paraboloidElement->setAttributeNode(NewAttribute("name",name)); - paraboloidElement->setAttributeNode(NewAttribute("rlo", - paraboloid->GetRadiusMinusZ()/mm)); - paraboloidElement->setAttributeNode(NewAttribute("rhi", - paraboloid->GetRadiusPlusZ()/mm)); - paraboloidElement->setAttributeNode(NewAttribute("dz", - paraboloid->GetZHalfLength()/mm)); - paraboloidElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(paraboloidElement); -} -void G4GDMLWriteSolids:: -PolyconeWrite(xercesc::DOMElement* solElement, - const G4Polycone* const polycone) -{ - const G4String& name = GenerateName(polycone->GetName(),polycone); - - xercesc::DOMElement* polyconeElement = NewElement("polycone"); - polyconeElement->setAttributeNode(NewAttribute("name",name)); - polyconeElement->setAttributeNode(NewAttribute("startphi", - polycone->GetOriginalParameters()->Start_angle/degree)); - polyconeElement->setAttributeNode(NewAttribute("deltaphi", - polycone->GetOriginalParameters()->Opening_angle/degree)); - polyconeElement->setAttributeNode(NewAttribute("aunit","deg")); - polyconeElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(polyconeElement); - - const size_t num_zplanes = polycone->GetOriginalParameters()->Num_z_planes; - const G4double* z_array = polycone->GetOriginalParameters()->Z_values; - const G4double* rmin_array = polycone->GetOriginalParameters()->Rmin; - const G4double* rmax_array = polycone->GetOriginalParameters()->Rmax; - - for (size_t i=0; iGetName(), solid); + std::ostringstream os; + os << i + 1; + const G4String& nodeName = "Node-" + G4String(os.str()); + xercesc::DOMElement* solidElement = NewElement("solid"); + solidElement->setAttributeNode(NewAttribute("ref", solidref)); + xercesc::DOMElement* multiUnionNodeElement = NewElement("multiUnionNode"); + multiUnionNodeElement->setAttributeNode(NewAttribute("name", nodeName)); + multiUnionNodeElement->appendChild(solidElement); // Append solid to node + if((std::fabs(pos.x()) > kLinearPrecision) || + (std::fabs(pos.y()) > kLinearPrecision) || + (std::fabs(pos.z()) > kLinearPrecision)) { - ZplaneWrite(polyconeElement,z_array[i],rmin_array[i],rmax_array[i]); + PositionWrite(multiUnionNodeElement, name + "_pos", pos); } - - -} - -void G4GDMLWriteSolids:: -GenericPolyconeWrite(xercesc::DOMElement* solElement, - const G4GenericPolycone* const polycone) -{ - const G4String& name = GenerateName(polycone->GetName(),polycone); - xercesc::DOMElement* polyconeElement = NewElement("genericPolycone"); - const G4double startPhi=polycone->GetStartPhi(); - polyconeElement->setAttributeNode(NewAttribute("name",name)); - polyconeElement->setAttributeNode(NewAttribute("startphi", - startPhi/degree)); - polyconeElement->setAttributeNode(NewAttribute("deltaphi", - (polycone->GetEndPhi()-startPhi)/degree)); - polyconeElement->setAttributeNode(NewAttribute("aunit","deg")); - polyconeElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(polyconeElement); - - const size_t num_rzpoints = polycone->GetNumRZCorner(); - for (size_t i=0; i kAngularPrecision) || + (std::fabs(rot.y()) > kAngularPrecision) || + (std::fabs(rot.z()) > kAngularPrecision)) { - const G4double r_point=polycone->GetCorner(i).r; - const G4double z_point=polycone->GetCorner(i).z; - RZPointWrite(polyconeElement,r_point,z_point); + RotationWrite(multiUnionNodeElement, name + "_rot", rot); } + multiUnionElement->appendChild(multiUnionNodeElement); // Append node + } + + solElement->appendChild(multiUnionElement); + // Add the multiUnion solid AFTER the constituent nodes! } -void G4GDMLWriteSolids:: -PolyhedraWrite(xercesc::DOMElement* solElement, - const G4Polyhedra* const polyhedra) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::BooleanWrite(xercesc::DOMElement* solElement, + const G4BooleanSolid* const boolean) { - const G4String& name = GenerateName(polyhedra->GetName(),polyhedra); - if(polyhedra->IsGeneric() == false) - { - xercesc::DOMElement* polyhedraElement = NewElement("polyhedra"); - polyhedraElement->setAttributeNode(NewAttribute("name",name)); - polyhedraElement->setAttributeNode(NewAttribute("startphi", - polyhedra->GetOriginalParameters()->Start_angle/degree)); - polyhedraElement->setAttributeNode(NewAttribute("deltaphi", - polyhedra->GetOriginalParameters()->Opening_angle/degree)); - polyhedraElement->setAttributeNode(NewAttribute("numsides", - polyhedra->GetOriginalParameters()->numSide)); - polyhedraElement->setAttributeNode(NewAttribute("aunit","deg")); - polyhedraElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(polyhedraElement); + G4int displaced = 0; - const size_t num_zplanes = - polyhedra->GetOriginalParameters()->Num_z_planes; - const G4double* z_array = - polyhedra->GetOriginalParameters()->Z_values; - const G4double* rmin_array = polyhedra->GetOriginalParameters()->Rmin; - const G4double* rmax_array = polyhedra->GetOriginalParameters()->Rmax; + G4String tag("undefined"); + if(dynamic_cast(boolean)) + { + tag = "intersection"; + } + else if(dynamic_cast(boolean)) + { + tag = "subtraction"; + } + else if(dynamic_cast(boolean)) + { + tag = "union"; + } - const G4double convertRad = - std::cos(0.5*polyhedra->GetOriginalParameters()->Opening_angle - / polyhedra->GetOriginalParameters()->numSide); + G4VSolid* firstPtr = const_cast(boolean->GetConstituentSolid(0)); + G4VSolid* secondPtr = const_cast(boolean->GetConstituentSolid(1)); - for (size_t i=0;isetAttributeNode(NewAttribute("name",name)); - polyhedraElement->setAttributeNode(NewAttribute("startphi", - polyhedra->GetOriginalParameters()->Start_angle/degree)); - polyhedraElement->setAttributeNode(NewAttribute("deltaphi", - polyhedra->GetOriginalParameters()->Opening_angle/degree)); - polyhedraElement->setAttributeNode(NewAttribute("numsides", - polyhedra->GetOriginalParameters()->numSide)); - polyhedraElement->setAttributeNode(NewAttribute("aunit","deg")); - polyhedraElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(polyhedraElement); + G4ThreeVector firstpos, firstrot, pos, rot; - const size_t num_rzpoints = polyhedra->GetNumRZCorner(); - - for (size_t i=0;iGetCorner(i).r; - const G4double z_point = polyhedra->GetCorner(i).z; - RZPointWrite(polyhedraElement,r_point,z_point); - } - } + // Solve possible displacement of referenced solids! + // + while(true) + { + if(displaced > 8) + { + G4String ErrorMessage = "The referenced solid '" + firstPtr->GetName() + + +"in the Boolean shape '" + +boolean->GetName() + + +"' was displaced too many times!"; + G4Exception("G4GDMLWriteSolids::BooleanWrite()", "InvalidSetup", + FatalException, ErrorMessage); + } + + if(G4DisplacedSolid* disp = dynamic_cast(firstPtr)) + { + firstpos += disp->GetObjectTranslation(); + firstrot += GetAngles(disp->GetObjectRotation()); + firstPtr = disp->GetConstituentMovedSolid(); + ++displaced; + continue; + } + break; + } + displaced = 0; + while(true) + { + if(displaced > maxTransforms) + { + G4String ErrorMessage = "The referenced solid '" + secondPtr->GetName() + + +"in the Boolean shape '" + +boolean->GetName() + + +"' was displaced too many times!"; + G4Exception("G4GDMLWriteSolids::BooleanWrite()", "InvalidSetup", + FatalException, ErrorMessage); + } + + if(G4DisplacedSolid* disp = dynamic_cast(secondPtr)) + { + pos += disp->GetObjectTranslation(); + rot += GetAngles(disp->GetObjectRotation()); + secondPtr = disp->GetConstituentMovedSolid(); + ++displaced; + continue; + } + break; + } + + AddSolid(firstPtr); // At first add the constituent solids! + AddSolid(secondPtr); + + const G4String& name = GenerateName(boolean->GetName(), boolean); + const G4String& firstref = GenerateName(firstPtr->GetName(), firstPtr); + const G4String& secondref = GenerateName(secondPtr->GetName(), secondPtr); + + xercesc::DOMElement* booleanElement = NewElement(tag); + booleanElement->setAttributeNode(NewAttribute("name", name)); + xercesc::DOMElement* firstElement = NewElement("first"); + firstElement->setAttributeNode(NewAttribute("ref", firstref)); + booleanElement->appendChild(firstElement); + xercesc::DOMElement* secondElement = NewElement("second"); + secondElement->setAttributeNode(NewAttribute("ref", secondref)); + booleanElement->appendChild(secondElement); + solElement->appendChild(booleanElement); + // Add the boolean solid AFTER the constituent solids! + + if((std::fabs(pos.x()) > kLinearPrecision) || + (std::fabs(pos.y()) > kLinearPrecision) || + (std::fabs(pos.z()) > kLinearPrecision)) + { + PositionWrite(booleanElement, name + "_pos", pos); + } + + if((std::fabs(rot.x()) > kAngularPrecision) || + (std::fabs(rot.y()) > kAngularPrecision) || + (std::fabs(rot.z()) > kAngularPrecision)) + { + RotationWrite(booleanElement, name + "_rot", rot); + } + + if((std::fabs(firstpos.x()) > kLinearPrecision) || + (std::fabs(firstpos.y()) > kLinearPrecision) || + (std::fabs(firstpos.z()) > kLinearPrecision)) + { + FirstpositionWrite(booleanElement, name + "_fpos", firstpos); + } + + if((std::fabs(firstrot.x()) > kAngularPrecision) || + (std::fabs(firstrot.y()) > kAngularPrecision) || + (std::fabs(firstrot.z()) > kAngularPrecision)) + { + FirstrotationWrite(booleanElement, name + "_frot", firstrot); + } } -void G4GDMLWriteSolids:: -SphereWrite(xercesc::DOMElement* solElement, const G4Sphere* const sphere) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::ScaledWrite(xercesc::DOMElement* solElement, + const G4ScaledSolid* const scaled) { - const G4String& name = GenerateName(sphere->GetName(),sphere); + G4String tag("scaledSolid"); - xercesc::DOMElement* sphereElement = NewElement("sphere"); - sphereElement->setAttributeNode(NewAttribute("name",name)); - sphereElement->setAttributeNode(NewAttribute("rmin", - sphere->GetInnerRadius()/mm)); - sphereElement->setAttributeNode(NewAttribute("rmax", - sphere->GetOuterRadius()/mm)); - sphereElement->setAttributeNode(NewAttribute("startphi", - sphere->GetStartPhiAngle()/degree)); - sphereElement->setAttributeNode(NewAttribute("deltaphi", - sphere->GetDeltaPhiAngle()/degree)); - sphereElement->setAttributeNode(NewAttribute("starttheta", - sphere->GetStartThetaAngle()/degree)); - sphereElement->setAttributeNode(NewAttribute("deltatheta", - sphere->GetDeltaThetaAngle()/degree)); - sphereElement->setAttributeNode(NewAttribute("aunit","deg")); - sphereElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(sphereElement); + G4VSolid* solid = const_cast(scaled->GetUnscaledSolid()); + G4Scale3D scale = scaled->GetScaleTransform(); + G4ThreeVector sclVector = G4ThreeVector(scale.xx(), scale.yy(), scale.zz()); + + AddSolid(solid); // Add the constituent solid! + + const G4String& name = GenerateName(scaled->GetName(), scaled); + const G4String& solidref = GenerateName(solid->GetName(), solid); + + xercesc::DOMElement* scaledElement = NewElement(tag); + scaledElement->setAttributeNode(NewAttribute("name", name)); + + xercesc::DOMElement* solidElement = NewElement("solidref"); + solidElement->setAttributeNode(NewAttribute("ref", solidref)); + scaledElement->appendChild(solidElement); + + if((std::fabs(scale.xx()) > kLinearPrecision) && + (std::fabs(scale.yy()) > kLinearPrecision) && + (std::fabs(scale.zz()) > kLinearPrecision)) + { + ScaleWrite(scaledElement, name + "_scl", sclVector); + } + + solElement->appendChild(scaledElement); + // Add the scaled solid AFTER its constituent solid! } -void G4GDMLWriteSolids:: -TessellatedWrite(xercesc::DOMElement* solElement, - const G4TessellatedSolid* const tessellated) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::BoxWrite(xercesc::DOMElement* solElement, + const G4Box* const box) { - const G4String& solid_name = tessellated->GetName(); - const G4String& name = GenerateName(solid_name, tessellated); + const G4String& name = GenerateName(box->GetName(), box); - xercesc::DOMElement* tessellatedElement = NewElement("tessellated"); - tessellatedElement->setAttributeNode(NewAttribute("name",name)); - tessellatedElement->setAttributeNode(NewAttribute("aunit","deg")); - tessellatedElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(tessellatedElement); + xercesc::DOMElement* boxElement = NewElement("box"); + boxElement->setAttributeNode(NewAttribute("name", name)); + boxElement->setAttributeNode( + NewAttribute("x", 2.0 * box->GetXHalfLength() / mm)); + boxElement->setAttributeNode( + NewAttribute("y", 2.0 * box->GetYHalfLength() / mm)); + boxElement->setAttributeNode( + NewAttribute("z", 2.0 * box->GetZHalfLength() / mm)); + boxElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(boxElement); +} - std::map vertexMap; +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::ConeWrite(xercesc::DOMElement* solElement, + const G4Cons* const cone) +{ + const G4String& name = GenerateName(cone->GetName(), cone); - const size_t NumFacets = tessellated->GetNumberOfFacets(); - size_t NumVertex = 0; - - for (size_t i=0;iGetFacet(i); - const size_t NumVertexPerFacet = facet->GetNumberOfVertices(); + xercesc::DOMElement* coneElement = NewElement("cone"); + coneElement->setAttributeNode(NewAttribute("name", name)); + coneElement->setAttributeNode( + NewAttribute("rmin1", cone->GetInnerRadiusMinusZ() / mm)); + coneElement->setAttributeNode( + NewAttribute("rmax1", cone->GetOuterRadiusMinusZ() / mm)); + coneElement->setAttributeNode( + NewAttribute("rmin2", cone->GetInnerRadiusPlusZ() / mm)); + coneElement->setAttributeNode( + NewAttribute("rmax2", cone->GetOuterRadiusPlusZ() / mm)); + coneElement->setAttributeNode( + NewAttribute("z", 2.0 * cone->GetZHalfLength() / mm)); + coneElement->setAttributeNode( + NewAttribute("startphi", cone->GetStartPhiAngle() / degree)); + coneElement->setAttributeNode( + NewAttribute("deltaphi", cone->GetDeltaPhiAngle() / degree)); + coneElement->setAttributeNode(NewAttribute("aunit", "deg")); + coneElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(coneElement); +} - G4String FacetTag; - - if (NumVertexPerFacet==3) { FacetTag="triangular"; } else - if (NumVertexPerFacet==4) { FacetTag="quadrangular"; } - else +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::ElconeWrite(xercesc::DOMElement* solElement, + const G4EllipticalCone* const elcone) +{ + const G4String& name = GenerateName(elcone->GetName(), elcone); + + xercesc::DOMElement* elconeElement = NewElement("elcone"); + elconeElement->setAttributeNode(NewAttribute("name", name)); + elconeElement->setAttributeNode( + NewAttribute("dx", elcone->GetSemiAxisX() / mm)); + elconeElement->setAttributeNode( + NewAttribute("dy", elcone->GetSemiAxisY() / mm)); + elconeElement->setAttributeNode(NewAttribute("zmax", elcone->GetZMax() / mm)); + elconeElement->setAttributeNode( + NewAttribute("zcut", elcone->GetZTopCut() / mm)); + elconeElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(elconeElement); +} + +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::EllipsoidWrite(xercesc::DOMElement* solElement, + const G4Ellipsoid* const ellipsoid) +{ + const G4String& name = GenerateName(ellipsoid->GetName(), ellipsoid); + + xercesc::DOMElement* ellipsoidElement = NewElement("ellipsoid"); + ellipsoidElement->setAttributeNode(NewAttribute("name", name)); + ellipsoidElement->setAttributeNode( + NewAttribute("ax", ellipsoid->GetSemiAxisMax(0) / mm)); + ellipsoidElement->setAttributeNode( + NewAttribute("by", ellipsoid->GetSemiAxisMax(1) / mm)); + ellipsoidElement->setAttributeNode( + NewAttribute("cz", ellipsoid->GetSemiAxisMax(2) / mm)); + ellipsoidElement->setAttributeNode( + NewAttribute("zcut1", ellipsoid->GetZBottomCut() / mm)); + ellipsoidElement->setAttributeNode( + NewAttribute("zcut2", ellipsoid->GetZTopCut() / mm)); + ellipsoidElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(ellipsoidElement); +} + +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::EltubeWrite(xercesc::DOMElement* solElement, + const G4EllipticalTube* const eltube) +{ + const G4String& name = GenerateName(eltube->GetName(), eltube); + + xercesc::DOMElement* eltubeElement = NewElement("eltube"); + eltubeElement->setAttributeNode(NewAttribute("name", name)); + eltubeElement->setAttributeNode(NewAttribute("dx", eltube->GetDx() / mm)); + eltubeElement->setAttributeNode(NewAttribute("dy", eltube->GetDy() / mm)); + eltubeElement->setAttributeNode(NewAttribute("dz", eltube->GetDz() / mm)); + eltubeElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(eltubeElement); +} + +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::XtruWrite(xercesc::DOMElement* solElement, + const G4ExtrudedSolid* const xtru) +{ + const G4String& name = GenerateName(xtru->GetName(), xtru); + + xercesc::DOMElement* xtruElement = NewElement("xtru"); + xtruElement->setAttributeNode(NewAttribute("name", name)); + xtruElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(xtruElement); + + const G4int NumVertex = xtru->GetNofVertices(); + + for(G4int i = 0; i < NumVertex; ++i) + { + xercesc::DOMElement* twoDimVertexElement = NewElement("twoDimVertex"); + xtruElement->appendChild(twoDimVertexElement); + + const G4TwoVector& vertex = xtru->GetVertex(i); + + twoDimVertexElement->setAttributeNode(NewAttribute("x", vertex.x() / mm)); + twoDimVertexElement->setAttributeNode(NewAttribute("y", vertex.y() / mm)); + } + + const G4int NumSection = xtru->GetNofZSections(); + + for(G4int i = 0; i < NumSection; ++i) + { + xercesc::DOMElement* sectionElement = NewElement("section"); + xtruElement->appendChild(sectionElement); + + const G4ExtrudedSolid::ZSection section = xtru->GetZSection(i); + + sectionElement->setAttributeNode(NewAttribute("zOrder", i)); + sectionElement->setAttributeNode( + NewAttribute("zPosition", section.fZ / mm)); + sectionElement->setAttributeNode( + NewAttribute("xOffset", section.fOffset.x() / mm)); + sectionElement->setAttributeNode( + NewAttribute("yOffset", section.fOffset.y() / mm)); + sectionElement->setAttributeNode( + NewAttribute("scalingFactor", section.fScale)); + } +} + +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::HypeWrite(xercesc::DOMElement* solElement, + const G4Hype* const hype) +{ + const G4String& name = GenerateName(hype->GetName(), hype); + + xercesc::DOMElement* hypeElement = NewElement("hype"); + hypeElement->setAttributeNode(NewAttribute("name", name)); + hypeElement->setAttributeNode( + NewAttribute("rmin", hype->GetInnerRadius() / mm)); + hypeElement->setAttributeNode( + NewAttribute("rmax", hype->GetOuterRadius() / mm)); + hypeElement->setAttributeNode( + NewAttribute("inst", hype->GetInnerStereo() / degree)); + hypeElement->setAttributeNode( + NewAttribute("outst", hype->GetOuterStereo() / degree)); + hypeElement->setAttributeNode( + NewAttribute("z", 2.0 * hype->GetZHalfLength() / mm)); + hypeElement->setAttributeNode(NewAttribute("aunit", "deg")); + hypeElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(hypeElement); +} + +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::OrbWrite(xercesc::DOMElement* solElement, + const G4Orb* const orb) +{ + const G4String& name = GenerateName(orb->GetName(), orb); + + xercesc::DOMElement* orbElement = NewElement("orb"); + orbElement->setAttributeNode(NewAttribute("name", name)); + orbElement->setAttributeNode(NewAttribute("r", orb->GetRadius() / mm)); + orbElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(orbElement); +} + +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::ParaWrite(xercesc::DOMElement* solElement, + const G4Para* const para) +{ + const G4String& name = GenerateName(para->GetName(), para); + + const G4ThreeVector simaxis = para->GetSymAxis(); + const G4double alpha = std::atan(para->GetTanAlpha()); + const G4double phi = simaxis.phi(); + const G4double theta = simaxis.theta(); + + xercesc::DOMElement* paraElement = NewElement("para"); + paraElement->setAttributeNode(NewAttribute("name", name)); + paraElement->setAttributeNode( + NewAttribute("x", 2.0 * para->GetXHalfLength() / mm)); + paraElement->setAttributeNode( + NewAttribute("y", 2.0 * para->GetYHalfLength() / mm)); + paraElement->setAttributeNode( + NewAttribute("z", 2.0 * para->GetZHalfLength() / mm)); + paraElement->setAttributeNode(NewAttribute("alpha", alpha / degree)); + paraElement->setAttributeNode(NewAttribute("theta", theta / degree)); + paraElement->setAttributeNode(NewAttribute("phi", phi / degree)); + paraElement->setAttributeNode(NewAttribute("aunit", "deg")); + paraElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(paraElement); +} + +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::ParaboloidWrite(xercesc::DOMElement* solElement, + const G4Paraboloid* const paraboloid) +{ + const G4String& name = GenerateName(paraboloid->GetName(), paraboloid); + + xercesc::DOMElement* paraboloidElement = NewElement("paraboloid"); + paraboloidElement->setAttributeNode(NewAttribute("name", name)); + paraboloidElement->setAttributeNode( + NewAttribute("rlo", paraboloid->GetRadiusMinusZ() / mm)); + paraboloidElement->setAttributeNode( + NewAttribute("rhi", paraboloid->GetRadiusPlusZ() / mm)); + paraboloidElement->setAttributeNode( + NewAttribute("dz", paraboloid->GetZHalfLength() / mm)); + paraboloidElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(paraboloidElement); +} + +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::PolyconeWrite(xercesc::DOMElement* solElement, + const G4Polycone* const polycone) +{ + const G4String& name = GenerateName(polycone->GetName(), polycone); + + xercesc::DOMElement* polyconeElement = NewElement("polycone"); + polyconeElement->setAttributeNode(NewAttribute("name", name)); + polyconeElement->setAttributeNode(NewAttribute( + "startphi", polycone->GetOriginalParameters()->Start_angle / degree)); + polyconeElement->setAttributeNode(NewAttribute( + "deltaphi", polycone->GetOriginalParameters()->Opening_angle / degree)); + polyconeElement->setAttributeNode(NewAttribute("aunit", "deg")); + polyconeElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(polyconeElement); + + const std::size_t num_zplanes + = polycone->GetOriginalParameters()->Num_z_planes; + const G4double* z_array = polycone->GetOriginalParameters()->Z_values; + const G4double* rmin_array = polycone->GetOriginalParameters()->Rmin; + const G4double* rmax_array = polycone->GetOriginalParameters()->Rmax; + + for(std::size_t i = 0; i < num_zplanes; ++i) + { + ZplaneWrite(polyconeElement, z_array[i], rmin_array[i], rmax_array[i]); + } +} + +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::GenericPolyconeWrite( + xercesc::DOMElement* solElement, const G4GenericPolycone* const polycone) +{ + const G4String& name = GenerateName(polycone->GetName(), polycone); + xercesc::DOMElement* polyconeElement = NewElement("genericPolycone"); + const G4double startPhi = polycone->GetStartPhi(); + polyconeElement->setAttributeNode(NewAttribute("name", name)); + polyconeElement->setAttributeNode( + NewAttribute("startphi", startPhi / degree)); + polyconeElement->setAttributeNode( + NewAttribute("deltaphi", (polycone->GetEndPhi() - startPhi) / degree)); + polyconeElement->setAttributeNode(NewAttribute("aunit", "deg")); + polyconeElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(polyconeElement); + + const std::size_t num_rzpoints = polycone->GetNumRZCorner(); + for(std::size_t i = 0; i < num_rzpoints; ++i) + { + const G4double r_point = polycone->GetCorner(i).r; + const G4double z_point = polycone->GetCorner(i).z; + RZPointWrite(polyconeElement, r_point, z_point); + } +} + +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::PolyhedraWrite(xercesc::DOMElement* solElement, + const G4Polyhedra* const polyhedra) +{ + const G4String& name = GenerateName(polyhedra->GetName(), polyhedra); + if(polyhedra->IsGeneric() == false) + { + xercesc::DOMElement* polyhedraElement = NewElement("polyhedra"); + polyhedraElement->setAttributeNode(NewAttribute("name", name)); + polyhedraElement->setAttributeNode(NewAttribute( + "startphi", polyhedra->GetOriginalParameters()->Start_angle / degree)); + polyhedraElement->setAttributeNode(NewAttribute( + "deltaphi", polyhedra->GetOriginalParameters()->Opening_angle / degree)); + polyhedraElement->setAttributeNode( + NewAttribute("numsides", polyhedra->GetOriginalParameters()->numSide)); + polyhedraElement->setAttributeNode(NewAttribute("aunit", "deg")); + polyhedraElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(polyhedraElement); + + const std::size_t num_zplanes + = polyhedra->GetOriginalParameters()->Num_z_planes; + const G4double* z_array = polyhedra->GetOriginalParameters()->Z_values; + const G4double* rmin_array = polyhedra->GetOriginalParameters()->Rmin; + const G4double* rmax_array = polyhedra->GetOriginalParameters()->Rmax; + + const G4double convertRad = + std::cos(0.5 * polyhedra->GetOriginalParameters()->Opening_angle / + polyhedra->GetOriginalParameters()->numSide); + + for(std::size_t i = 0; i < num_zplanes; ++i) + { + ZplaneWrite(polyhedraElement, z_array[i], rmin_array[i] * convertRad, + rmax_array[i] * convertRad); + } + } + else // generic polyhedra + { + xercesc::DOMElement* polyhedraElement = NewElement("genericPolyhedra"); + polyhedraElement->setAttributeNode(NewAttribute("name", name)); + polyhedraElement->setAttributeNode(NewAttribute( + "startphi", polyhedra->GetOriginalParameters()->Start_angle / degree)); + polyhedraElement->setAttributeNode(NewAttribute( + "deltaphi", polyhedra->GetOriginalParameters()->Opening_angle / degree)); + polyhedraElement->setAttributeNode( + NewAttribute("numsides", polyhedra->GetOriginalParameters()->numSide)); + polyhedraElement->setAttributeNode(NewAttribute("aunit", "deg")); + polyhedraElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(polyhedraElement); + + const std::size_t num_rzpoints = polyhedra->GetNumRZCorner(); + + for(std::size_t i = 0; i < num_rzpoints; ++i) + { + const G4double r_point = polyhedra->GetCorner(i).r; + const G4double z_point = polyhedra->GetCorner(i).z; + RZPointWrite(polyhedraElement, r_point, z_point); + } + } +} + +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::SphereWrite(xercesc::DOMElement* solElement, + const G4Sphere* const sphere) +{ + const G4String& name = GenerateName(sphere->GetName(), sphere); + + xercesc::DOMElement* sphereElement = NewElement("sphere"); + sphereElement->setAttributeNode(NewAttribute("name", name)); + sphereElement->setAttributeNode( + NewAttribute("rmin", sphere->GetInnerRadius() / mm)); + sphereElement->setAttributeNode( + NewAttribute("rmax", sphere->GetOuterRadius() / mm)); + sphereElement->setAttributeNode( + NewAttribute("startphi", sphere->GetStartPhiAngle() / degree)); + sphereElement->setAttributeNode( + NewAttribute("deltaphi", sphere->GetDeltaPhiAngle() / degree)); + sphereElement->setAttributeNode( + NewAttribute("starttheta", sphere->GetStartThetaAngle() / degree)); + sphereElement->setAttributeNode( + NewAttribute("deltatheta", sphere->GetDeltaThetaAngle() / degree)); + sphereElement->setAttributeNode(NewAttribute("aunit", "deg")); + sphereElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(sphereElement); +} + +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::TessellatedWrite( + xercesc::DOMElement* solElement, const G4TessellatedSolid* const tessellated) +{ + const G4String& solid_name = tessellated->GetName(); + const G4String& name = GenerateName(solid_name, tessellated); + + xercesc::DOMElement* tessellatedElement = NewElement("tessellated"); + tessellatedElement->setAttributeNode(NewAttribute("name", name)); + tessellatedElement->setAttributeNode(NewAttribute("aunit", "deg")); + tessellatedElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(tessellatedElement); + + std::map vertexMap; + + const std::size_t NumFacets = tessellated->GetNumberOfFacets(); + std::size_t NumVertex = 0; + + for(std::size_t i = 0; i < NumFacets; ++i) + { + const G4VFacet* facet = tessellated->GetFacet(i); + const size_t NumVertexPerFacet = facet->GetNumberOfVertices(); + + G4String FacetTag; + + if(NumVertexPerFacet == 3) + { + FacetTag = "triangular"; + } + else if(NumVertexPerFacet == 4) + { + FacetTag = "quadrangular"; + } + else + { + G4Exception("G4GDMLWriteSolids::TessellatedWrite()", "InvalidSetup", + FatalException, "Facet should contain 3 or 4 vertices!"); + } + + xercesc::DOMElement* facetElement = NewElement(FacetTag); + tessellatedElement->appendChild(facetElement); + + for(std::size_t j = 0; j < NumVertexPerFacet; ++j) + { + std::stringstream name_stream; + std::stringstream ref_stream; + + name_stream << "vertex" << (j + 1); + ref_stream << solid_name << "_v" << NumVertex; + + const G4String& fname = name_stream.str(); // facet's tag variable + G4String ref = ref_stream.str(); // vertex tag to be associated + + // Now search for the existance of the current vertex in the + // map of cached vertices. If existing, do NOT store it as + // position in the GDML file, so avoiding duplication; otherwise + // cache it in the local map and add it as position in the + // "define" section of the GDML file. + + const G4ThreeVector& vertex = facet->GetVertex(j); + + if(vertexMap.find(vertex) != vertexMap.cend()) // Vertex is cached { - G4Exception("G4GDMLWriteSolids::TessellatedWrite()", "InvalidSetup", - FatalException, "Facet should contain 3 or 4 vertices!"); + ref = vertexMap[vertex]; // Set the proper tag for it + } + else // Vertex not found + { + vertexMap.insert(std::make_pair(vertex, ref)); // Cache vertex and ... + AddPosition(ref, vertex); // ... add it to define section! + ++NumVertex; } - xercesc::DOMElement* facetElement = NewElement(FacetTag); - tessellatedElement->appendChild(facetElement); - - for (size_t j=0; jGetVertex(j); - - if(vertexMap.find(vertex) != vertexMap.end()) // Vertex is cached - { - ref = vertexMap[vertex]; // Set the proper tag for it - } - else // Vertex not found - { - vertexMap.insert(std::make_pair(vertex,ref)); // Cache vertex and ... - AddPosition(ref, vertex); // ... add it to define section! - NumVertex++; - } - - // Now create association of the vertex with its facet - // - facetElement->setAttributeNode(NewAttribute(fname,ref)); - } - } + // Now create association of the vertex with its facet + // + facetElement->setAttributeNode(NewAttribute(fname, ref)); + } + } } -void G4GDMLWriteSolids:: -TetWrite(xercesc::DOMElement* solElement, const G4Tet* const tet) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::TetWrite(xercesc::DOMElement* solElement, + const G4Tet* const tet) { - const G4String& solid_name = tet->GetName(); - const G4String& name = GenerateName(solid_name, tet); + const G4String& solid_name = tet->GetName(); + const G4String& name = GenerateName(solid_name, tet); - std::vector vertexList = tet->GetVertices(); + std::vector vertexList = tet->GetVertices(); - xercesc::DOMElement* tetElement = NewElement("tet"); - tetElement->setAttributeNode(NewAttribute("name",name)); - tetElement->setAttributeNode(NewAttribute("vertex1",solid_name+"_v1")); - tetElement->setAttributeNode(NewAttribute("vertex2",solid_name+"_v2")); - tetElement->setAttributeNode(NewAttribute("vertex3",solid_name+"_v3")); - tetElement->setAttributeNode(NewAttribute("vertex4",solid_name+"_v4")); - tetElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(tetElement); + xercesc::DOMElement* tetElement = NewElement("tet"); + tetElement->setAttributeNode(NewAttribute("name", name)); + tetElement->setAttributeNode(NewAttribute("vertex1", solid_name + "_v1")); + tetElement->setAttributeNode(NewAttribute("vertex2", solid_name + "_v2")); + tetElement->setAttributeNode(NewAttribute("vertex3", solid_name + "_v3")); + tetElement->setAttributeNode(NewAttribute("vertex4", solid_name + "_v4")); + tetElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(tetElement); - AddPosition(solid_name+"_v1",vertexList[0]); - AddPosition(solid_name+"_v2",vertexList[1]); - AddPosition(solid_name+"_v3",vertexList[2]); - AddPosition(solid_name+"_v4",vertexList[3]); + AddPosition(solid_name + "_v1", vertexList[0]); + AddPosition(solid_name + "_v2", vertexList[1]); + AddPosition(solid_name + "_v3", vertexList[2]); + AddPosition(solid_name + "_v4", vertexList[3]); } -void G4GDMLWriteSolids:: -TorusWrite(xercesc::DOMElement* solElement, const G4Torus* const torus) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::TorusWrite(xercesc::DOMElement* solElement, + const G4Torus* const torus) { - const G4String& name = GenerateName(torus->GetName(),torus); + const G4String& name = GenerateName(torus->GetName(), torus); - xercesc::DOMElement* torusElement = NewElement("torus"); - torusElement->setAttributeNode(NewAttribute("name",name)); - torusElement->setAttributeNode(NewAttribute("rmin",torus->GetRmin()/mm)); - torusElement->setAttributeNode(NewAttribute("rmax",torus->GetRmax()/mm)); - torusElement->setAttributeNode(NewAttribute("rtor",torus->GetRtor()/mm)); - torusElement-> - setAttributeNode(NewAttribute("startphi",torus->GetSPhi()/degree)); - torusElement-> - setAttributeNode(NewAttribute("deltaphi",torus->GetDPhi()/degree)); - torusElement->setAttributeNode(NewAttribute("aunit","deg")); - torusElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(torusElement); + xercesc::DOMElement* torusElement = NewElement("torus"); + torusElement->setAttributeNode(NewAttribute("name", name)); + torusElement->setAttributeNode(NewAttribute("rmin", torus->GetRmin() / mm)); + torusElement->setAttributeNode(NewAttribute("rmax", torus->GetRmax() / mm)); + torusElement->setAttributeNode(NewAttribute("rtor", torus->GetRtor() / mm)); + torusElement->setAttributeNode( + NewAttribute("startphi", torus->GetSPhi() / degree)); + torusElement->setAttributeNode( + NewAttribute("deltaphi", torus->GetDPhi() / degree)); + torusElement->setAttributeNode(NewAttribute("aunit", "deg")); + torusElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(torusElement); } -void G4GDMLWriteSolids:: -GenTrapWrite(xercesc::DOMElement* solElement, - const G4GenericTrap* const gtrap) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::GenTrapWrite(xercesc::DOMElement* solElement, + const G4GenericTrap* const gtrap) { - const G4String& name = GenerateName(gtrap->GetName(),gtrap); + const G4String& name = GenerateName(gtrap->GetName(), gtrap); - std::vector vertices = gtrap->GetVertices(); + std::vector vertices = gtrap->GetVertices(); - xercesc::DOMElement* gtrapElement = NewElement("arb8"); - gtrapElement->setAttributeNode(NewAttribute("name",name)); - gtrapElement->setAttributeNode(NewAttribute("dz", - gtrap->GetZHalfLength()/mm)); - gtrapElement->setAttributeNode(NewAttribute("v1x", vertices[0].x())); - gtrapElement->setAttributeNode(NewAttribute("v1y", vertices[0].y())); - gtrapElement->setAttributeNode(NewAttribute("v2x", vertices[1].x())); - gtrapElement->setAttributeNode(NewAttribute("v2y", vertices[1].y())); - gtrapElement->setAttributeNode(NewAttribute("v3x", vertices[2].x())); - gtrapElement->setAttributeNode(NewAttribute("v3y", vertices[2].y())); - gtrapElement->setAttributeNode(NewAttribute("v4x", vertices[3].x())); - gtrapElement->setAttributeNode(NewAttribute("v4y", vertices[3].y())); - gtrapElement->setAttributeNode(NewAttribute("v5x", vertices[4].x())); - gtrapElement->setAttributeNode(NewAttribute("v5y", vertices[4].y())); - gtrapElement->setAttributeNode(NewAttribute("v6x", vertices[5].x())); - gtrapElement->setAttributeNode(NewAttribute("v6y", vertices[5].y())); - gtrapElement->setAttributeNode(NewAttribute("v7x", vertices[6].x())); - gtrapElement->setAttributeNode(NewAttribute("v7y", vertices[6].y())); - gtrapElement->setAttributeNode(NewAttribute("v8x", vertices[7].x())); - gtrapElement->setAttributeNode(NewAttribute("v8y", vertices[7].y())); - gtrapElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(gtrapElement); + xercesc::DOMElement* gtrapElement = NewElement("arb8"); + gtrapElement->setAttributeNode(NewAttribute("name", name)); + gtrapElement->setAttributeNode( + NewAttribute("dz", gtrap->GetZHalfLength() / mm)); + gtrapElement->setAttributeNode(NewAttribute("v1x", vertices[0].x())); + gtrapElement->setAttributeNode(NewAttribute("v1y", vertices[0].y())); + gtrapElement->setAttributeNode(NewAttribute("v2x", vertices[1].x())); + gtrapElement->setAttributeNode(NewAttribute("v2y", vertices[1].y())); + gtrapElement->setAttributeNode(NewAttribute("v3x", vertices[2].x())); + gtrapElement->setAttributeNode(NewAttribute("v3y", vertices[2].y())); + gtrapElement->setAttributeNode(NewAttribute("v4x", vertices[3].x())); + gtrapElement->setAttributeNode(NewAttribute("v4y", vertices[3].y())); + gtrapElement->setAttributeNode(NewAttribute("v5x", vertices[4].x())); + gtrapElement->setAttributeNode(NewAttribute("v5y", vertices[4].y())); + gtrapElement->setAttributeNode(NewAttribute("v6x", vertices[5].x())); + gtrapElement->setAttributeNode(NewAttribute("v6y", vertices[5].y())); + gtrapElement->setAttributeNode(NewAttribute("v7x", vertices[6].x())); + gtrapElement->setAttributeNode(NewAttribute("v7y", vertices[6].y())); + gtrapElement->setAttributeNode(NewAttribute("v8x", vertices[7].x())); + gtrapElement->setAttributeNode(NewAttribute("v8y", vertices[7].y())); + gtrapElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(gtrapElement); } -void G4GDMLWriteSolids:: -TrapWrite(xercesc::DOMElement* solElement, const G4Trap* const trap) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::TrapWrite(xercesc::DOMElement* solElement, + const G4Trap* const trap) { - const G4String& name = GenerateName(trap->GetName(),trap); + const G4String& name = GenerateName(trap->GetName(), trap); - const G4ThreeVector& simaxis = trap->GetSymAxis(); - const G4double phi = simaxis.phi(); - const G4double theta = simaxis.theta(); - const G4double alpha1 = std::atan(trap->GetTanAlpha1()); - const G4double alpha2 = std::atan(trap->GetTanAlpha2()); + const G4ThreeVector& simaxis = trap->GetSymAxis(); + const G4double phi = simaxis.phi(); + const G4double theta = simaxis.theta(); + const G4double alpha1 = std::atan(trap->GetTanAlpha1()); + const G4double alpha2 = std::atan(trap->GetTanAlpha2()); - xercesc::DOMElement* trapElement = NewElement("trap"); - trapElement->setAttributeNode(NewAttribute("name",name)); - trapElement->setAttributeNode(NewAttribute("z", - 2.0*trap->GetZHalfLength()/mm)); - trapElement->setAttributeNode(NewAttribute("theta",theta/degree)); - trapElement->setAttributeNode(NewAttribute("phi",phi/degree)); - trapElement->setAttributeNode(NewAttribute("y1", - 2.0*trap->GetYHalfLength1()/mm)); - trapElement->setAttributeNode(NewAttribute("x1", - 2.0*trap->GetXHalfLength1()/mm)); - trapElement->setAttributeNode(NewAttribute("x2", - 2.0*trap->GetXHalfLength2()/mm)); - trapElement->setAttributeNode(NewAttribute("alpha1",alpha1/degree)); - trapElement->setAttributeNode(NewAttribute("y2", - 2.0*trap->GetYHalfLength2()/mm)); - trapElement->setAttributeNode(NewAttribute("x3", - 2.0*trap->GetXHalfLength3()/mm)); - trapElement->setAttributeNode(NewAttribute("x4", - 2.0*trap->GetXHalfLength4()/mm)); - trapElement->setAttributeNode(NewAttribute("alpha2",alpha2/degree)); - trapElement->setAttributeNode(NewAttribute("aunit","deg")); - trapElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(trapElement); + xercesc::DOMElement* trapElement = NewElement("trap"); + trapElement->setAttributeNode(NewAttribute("name", name)); + trapElement->setAttributeNode( + NewAttribute("z", 2.0 * trap->GetZHalfLength() / mm)); + trapElement->setAttributeNode(NewAttribute("theta", theta / degree)); + trapElement->setAttributeNode(NewAttribute("phi", phi / degree)); + trapElement->setAttributeNode( + NewAttribute("y1", 2.0 * trap->GetYHalfLength1() / mm)); + trapElement->setAttributeNode( + NewAttribute("x1", 2.0 * trap->GetXHalfLength1() / mm)); + trapElement->setAttributeNode( + NewAttribute("x2", 2.0 * trap->GetXHalfLength2() / mm)); + trapElement->setAttributeNode(NewAttribute("alpha1", alpha1 / degree)); + trapElement->setAttributeNode( + NewAttribute("y2", 2.0 * trap->GetYHalfLength2() / mm)); + trapElement->setAttributeNode( + NewAttribute("x3", 2.0 * trap->GetXHalfLength3() / mm)); + trapElement->setAttributeNode( + NewAttribute("x4", 2.0 * trap->GetXHalfLength4() / mm)); + trapElement->setAttributeNode(NewAttribute("alpha2", alpha2 / degree)); + trapElement->setAttributeNode(NewAttribute("aunit", "deg")); + trapElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(trapElement); } -void G4GDMLWriteSolids:: -TrdWrite(xercesc::DOMElement* solElement, const G4Trd* const trd) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::TrdWrite(xercesc::DOMElement* solElement, + const G4Trd* const trd) { - const G4String& name = GenerateName(trd->GetName(),trd); + const G4String& name = GenerateName(trd->GetName(), trd); - xercesc::DOMElement* trdElement = NewElement("trd"); - trdElement->setAttributeNode(NewAttribute("name",name)); - trdElement->setAttributeNode(NewAttribute("x1", - 2.0*trd->GetXHalfLength1()/mm)); - trdElement->setAttributeNode(NewAttribute("x2", - 2.0*trd->GetXHalfLength2()/mm)); - trdElement->setAttributeNode(NewAttribute("y1", - 2.0*trd->GetYHalfLength1()/mm)); - trdElement->setAttributeNode(NewAttribute("y2", - 2.0*trd->GetYHalfLength2()/mm)); - trdElement->setAttributeNode(NewAttribute("z", - 2.0*trd->GetZHalfLength()/mm)); - trdElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(trdElement); + xercesc::DOMElement* trdElement = NewElement("trd"); + trdElement->setAttributeNode(NewAttribute("name", name)); + trdElement->setAttributeNode( + NewAttribute("x1", 2.0 * trd->GetXHalfLength1() / mm)); + trdElement->setAttributeNode( + NewAttribute("x2", 2.0 * trd->GetXHalfLength2() / mm)); + trdElement->setAttributeNode( + NewAttribute("y1", 2.0 * trd->GetYHalfLength1() / mm)); + trdElement->setAttributeNode( + NewAttribute("y2", 2.0 * trd->GetYHalfLength2() / mm)); + trdElement->setAttributeNode( + NewAttribute("z", 2.0 * trd->GetZHalfLength() / mm)); + trdElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(trdElement); } -void G4GDMLWriteSolids:: -TubeWrite(xercesc::DOMElement* solElement, const G4Tubs* const tube) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::TubeWrite(xercesc::DOMElement* solElement, + const G4Tubs* const tube) { - const G4String& name = GenerateName(tube->GetName(),tube); + const G4String& name = GenerateName(tube->GetName(), tube); - xercesc::DOMElement* tubeElement = NewElement("tube"); - tubeElement->setAttributeNode(NewAttribute("name",name)); - tubeElement->setAttributeNode(NewAttribute("rmin", - tube->GetInnerRadius()/mm)); - tubeElement->setAttributeNode(NewAttribute("rmax", - tube->GetOuterRadius()/mm)); - tubeElement->setAttributeNode(NewAttribute("z", - 2.0*tube->GetZHalfLength()/mm)); - tubeElement->setAttributeNode(NewAttribute("startphi", - tube->GetStartPhiAngle()/degree)); - tubeElement->setAttributeNode(NewAttribute("deltaphi", - tube->GetDeltaPhiAngle()/degree)); - tubeElement->setAttributeNode(NewAttribute("aunit","deg")); - tubeElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(tubeElement); + xercesc::DOMElement* tubeElement = NewElement("tube"); + tubeElement->setAttributeNode(NewAttribute("name", name)); + tubeElement->setAttributeNode( + NewAttribute("rmin", tube->GetInnerRadius() / mm)); + tubeElement->setAttributeNode( + NewAttribute("rmax", tube->GetOuterRadius() / mm)); + tubeElement->setAttributeNode( + NewAttribute("z", 2.0 * tube->GetZHalfLength() / mm)); + tubeElement->setAttributeNode( + NewAttribute("startphi", tube->GetStartPhiAngle() / degree)); + tubeElement->setAttributeNode( + NewAttribute("deltaphi", tube->GetDeltaPhiAngle() / degree)); + tubeElement->setAttributeNode(NewAttribute("aunit", "deg")); + tubeElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(tubeElement); } -void G4GDMLWriteSolids:: -CutTubeWrite(xercesc::DOMElement* solElement, const G4CutTubs* const cuttube) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::CutTubeWrite(xercesc::DOMElement* solElement, + const G4CutTubs* const cuttube) { - const G4String& name = GenerateName(cuttube->GetName(),cuttube); + const G4String& name = GenerateName(cuttube->GetName(), cuttube); - xercesc::DOMElement* cuttubeElement = NewElement("cutTube"); - cuttubeElement->setAttributeNode(NewAttribute("name",name)); - cuttubeElement->setAttributeNode(NewAttribute("rmin", - cuttube->GetInnerRadius()/mm)); - cuttubeElement->setAttributeNode(NewAttribute("rmax", - cuttube->GetOuterRadius()/mm)); - cuttubeElement->setAttributeNode(NewAttribute("z", - 2.0*cuttube->GetZHalfLength()/mm)); - cuttubeElement->setAttributeNode(NewAttribute("startphi", - cuttube->GetStartPhiAngle()/degree)); - cuttubeElement->setAttributeNode(NewAttribute("deltaphi", - cuttube->GetDeltaPhiAngle()/degree)); - cuttubeElement->setAttributeNode(NewAttribute("lowX", - cuttube->GetLowNorm().getX()/mm)); - cuttubeElement->setAttributeNode(NewAttribute("lowY", - cuttube->GetLowNorm().getY()/mm)); - cuttubeElement->setAttributeNode(NewAttribute("lowZ", - cuttube->GetLowNorm().getZ()/mm)); - cuttubeElement->setAttributeNode(NewAttribute("highX", - cuttube->GetHighNorm().getX()/mm)); - cuttubeElement->setAttributeNode(NewAttribute("highY", - cuttube->GetHighNorm().getY()/mm)); - cuttubeElement->setAttributeNode(NewAttribute("highZ", - cuttube->GetHighNorm().getZ()/mm)); - cuttubeElement->setAttributeNode(NewAttribute("aunit","deg")); - cuttubeElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(cuttubeElement); + xercesc::DOMElement* cuttubeElement = NewElement("cutTube"); + cuttubeElement->setAttributeNode(NewAttribute("name", name)); + cuttubeElement->setAttributeNode( + NewAttribute("rmin", cuttube->GetInnerRadius() / mm)); + cuttubeElement->setAttributeNode( + NewAttribute("rmax", cuttube->GetOuterRadius() / mm)); + cuttubeElement->setAttributeNode( + NewAttribute("z", 2.0 * cuttube->GetZHalfLength() / mm)); + cuttubeElement->setAttributeNode( + NewAttribute("startphi", cuttube->GetStartPhiAngle() / degree)); + cuttubeElement->setAttributeNode( + NewAttribute("deltaphi", cuttube->GetDeltaPhiAngle() / degree)); + cuttubeElement->setAttributeNode( + NewAttribute("lowX", cuttube->GetLowNorm().getX() / mm)); + cuttubeElement->setAttributeNode( + NewAttribute("lowY", cuttube->GetLowNorm().getY() / mm)); + cuttubeElement->setAttributeNode( + NewAttribute("lowZ", cuttube->GetLowNorm().getZ() / mm)); + cuttubeElement->setAttributeNode( + NewAttribute("highX", cuttube->GetHighNorm().getX() / mm)); + cuttubeElement->setAttributeNode( + NewAttribute("highY", cuttube->GetHighNorm().getY() / mm)); + cuttubeElement->setAttributeNode( + NewAttribute("highZ", cuttube->GetHighNorm().getZ() / mm)); + cuttubeElement->setAttributeNode(NewAttribute("aunit", "deg")); + cuttubeElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(cuttubeElement); } -void G4GDMLWriteSolids:: -TwistedboxWrite(xercesc::DOMElement* solElement, - const G4TwistedBox* const twistedbox) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::TwistedboxWrite(xercesc::DOMElement* solElement, + const G4TwistedBox* const twistedbox) { - const G4String& name = GenerateName(twistedbox->GetName(),twistedbox); + const G4String& name = GenerateName(twistedbox->GetName(), twistedbox); - xercesc::DOMElement* twistedboxElement = NewElement("twistedbox"); - twistedboxElement->setAttributeNode(NewAttribute("name",name)); - twistedboxElement->setAttributeNode(NewAttribute("x", - 2.0*twistedbox->GetXHalfLength()/mm)); - twistedboxElement->setAttributeNode(NewAttribute("y", - 2.0*twistedbox->GetYHalfLength()/mm)); - twistedboxElement->setAttributeNode(NewAttribute("z", - 2.0*twistedbox->GetZHalfLength()/mm)); - twistedboxElement->setAttributeNode(NewAttribute("PhiTwist", - twistedbox->GetPhiTwist()/degree)); - twistedboxElement->setAttributeNode(NewAttribute("aunit","deg")); - twistedboxElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(twistedboxElement); + xercesc::DOMElement* twistedboxElement = NewElement("twistedbox"); + twistedboxElement->setAttributeNode(NewAttribute("name", name)); + twistedboxElement->setAttributeNode( + NewAttribute("x", 2.0 * twistedbox->GetXHalfLength() / mm)); + twistedboxElement->setAttributeNode( + NewAttribute("y", 2.0 * twistedbox->GetYHalfLength() / mm)); + twistedboxElement->setAttributeNode( + NewAttribute("z", 2.0 * twistedbox->GetZHalfLength() / mm)); + twistedboxElement->setAttributeNode( + NewAttribute("PhiTwist", twistedbox->GetPhiTwist() / degree)); + twistedboxElement->setAttributeNode(NewAttribute("aunit", "deg")); + twistedboxElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(twistedboxElement); } -void G4GDMLWriteSolids:: -TwistedtrapWrite(xercesc::DOMElement* solElement, - const G4TwistedTrap* const twistedtrap) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::TwistedtrapWrite(xercesc::DOMElement* solElement, + const G4TwistedTrap* const twistedtrap) { - const G4String& name = GenerateName(twistedtrap->GetName(),twistedtrap); + const G4String& name = GenerateName(twistedtrap->GetName(), twistedtrap); - xercesc::DOMElement* twistedtrapElement = NewElement("twistedtrap"); - twistedtrapElement->setAttributeNode(NewAttribute("name",name)); - twistedtrapElement->setAttributeNode(NewAttribute("y1", - 2.0*twistedtrap->GetY1HalfLength()/mm)); - twistedtrapElement->setAttributeNode(NewAttribute("x1", - 2.0*twistedtrap->GetX1HalfLength()/mm)); - twistedtrapElement->setAttributeNode(NewAttribute("x2", - 2.0*twistedtrap->GetX2HalfLength()/mm)); - twistedtrapElement->setAttributeNode(NewAttribute("y2", - 2.0*twistedtrap->GetY2HalfLength()/mm)); - twistedtrapElement->setAttributeNode(NewAttribute("x3", - 2.0*twistedtrap->GetX3HalfLength()/mm)); - twistedtrapElement->setAttributeNode(NewAttribute("x4", - 2.0*twistedtrap->GetX4HalfLength()/mm)); - twistedtrapElement->setAttributeNode(NewAttribute("z", - 2.0*twistedtrap->GetZHalfLength()/mm)); - twistedtrapElement->setAttributeNode(NewAttribute("Alph", - twistedtrap->GetTiltAngleAlpha()/degree)); - twistedtrapElement->setAttributeNode(NewAttribute("Theta", - twistedtrap->GetPolarAngleTheta()/degree)); - twistedtrapElement->setAttributeNode(NewAttribute("Phi", - twistedtrap->GetAzimuthalAnglePhi()/degree)); - twistedtrapElement->setAttributeNode(NewAttribute("PhiTwist", - twistedtrap->GetPhiTwist()/degree)); - twistedtrapElement->setAttributeNode(NewAttribute("aunit","deg")); - twistedtrapElement->setAttributeNode(NewAttribute("lunit","mm")); - - solElement->appendChild(twistedtrapElement); + xercesc::DOMElement* twistedtrapElement = NewElement("twistedtrap"); + twistedtrapElement->setAttributeNode(NewAttribute("name", name)); + twistedtrapElement->setAttributeNode( + NewAttribute("y1", 2.0 * twistedtrap->GetY1HalfLength() / mm)); + twistedtrapElement->setAttributeNode( + NewAttribute("x1", 2.0 * twistedtrap->GetX1HalfLength() / mm)); + twistedtrapElement->setAttributeNode( + NewAttribute("x2", 2.0 * twistedtrap->GetX2HalfLength() / mm)); + twistedtrapElement->setAttributeNode( + NewAttribute("y2", 2.0 * twistedtrap->GetY2HalfLength() / mm)); + twistedtrapElement->setAttributeNode( + NewAttribute("x3", 2.0 * twistedtrap->GetX3HalfLength() / mm)); + twistedtrapElement->setAttributeNode( + NewAttribute("x4", 2.0 * twistedtrap->GetX4HalfLength() / mm)); + twistedtrapElement->setAttributeNode( + NewAttribute("z", 2.0 * twistedtrap->GetZHalfLength() / mm)); + twistedtrapElement->setAttributeNode( + NewAttribute("Alph", twistedtrap->GetTiltAngleAlpha() / degree)); + twistedtrapElement->setAttributeNode( + NewAttribute("Theta", twistedtrap->GetPolarAngleTheta() / degree)); + twistedtrapElement->setAttributeNode( + NewAttribute("Phi", twistedtrap->GetAzimuthalAnglePhi() / degree)); + twistedtrapElement->setAttributeNode( + NewAttribute("PhiTwist", twistedtrap->GetPhiTwist() / degree)); + twistedtrapElement->setAttributeNode(NewAttribute("aunit", "deg")); + twistedtrapElement->setAttributeNode(NewAttribute("lunit", "mm")); + + solElement->appendChild(twistedtrapElement); } -void G4GDMLWriteSolids:: -TwistedtrdWrite(xercesc::DOMElement* solElement, - const G4TwistedTrd* const twistedtrd) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::TwistedtrdWrite(xercesc::DOMElement* solElement, + const G4TwistedTrd* const twistedtrd) { - const G4String& name = GenerateName(twistedtrd->GetName(),twistedtrd); + const G4String& name = GenerateName(twistedtrd->GetName(), twistedtrd); - xercesc::DOMElement* twistedtrdElement = NewElement("twistedtrd"); - twistedtrdElement->setAttributeNode(NewAttribute("name",name)); - twistedtrdElement->setAttributeNode(NewAttribute("x1", - 2.0*twistedtrd->GetX1HalfLength()/mm)); - twistedtrdElement->setAttributeNode(NewAttribute("x2", - 2.0*twistedtrd->GetX2HalfLength()/mm)); - twistedtrdElement->setAttributeNode(NewAttribute("y1", - 2.0*twistedtrd->GetY1HalfLength()/mm)); - twistedtrdElement->setAttributeNode(NewAttribute("y2", - 2.0*twistedtrd->GetY2HalfLength()/mm)); - twistedtrdElement->setAttributeNode(NewAttribute("z", - 2.0*twistedtrd->GetZHalfLength()/mm)); - twistedtrdElement->setAttributeNode(NewAttribute("PhiTwist", - twistedtrd->GetPhiTwist()/degree)); - twistedtrdElement->setAttributeNode(NewAttribute("aunit","deg")); - twistedtrdElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(twistedtrdElement); + xercesc::DOMElement* twistedtrdElement = NewElement("twistedtrd"); + twistedtrdElement->setAttributeNode(NewAttribute("name", name)); + twistedtrdElement->setAttributeNode( + NewAttribute("x1", 2.0 * twistedtrd->GetX1HalfLength() / mm)); + twistedtrdElement->setAttributeNode( + NewAttribute("x2", 2.0 * twistedtrd->GetX2HalfLength() / mm)); + twistedtrdElement->setAttributeNode( + NewAttribute("y1", 2.0 * twistedtrd->GetY1HalfLength() / mm)); + twistedtrdElement->setAttributeNode( + NewAttribute("y2", 2.0 * twistedtrd->GetY2HalfLength() / mm)); + twistedtrdElement->setAttributeNode( + NewAttribute("z", 2.0 * twistedtrd->GetZHalfLength() / mm)); + twistedtrdElement->setAttributeNode( + NewAttribute("PhiTwist", twistedtrd->GetPhiTwist() / degree)); + twistedtrdElement->setAttributeNode(NewAttribute("aunit", "deg")); + twistedtrdElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(twistedtrdElement); } -void G4GDMLWriteSolids:: -TwistedtubsWrite(xercesc::DOMElement* solElement, - const G4TwistedTubs* const twistedtubs) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::TwistedtubsWrite(xercesc::DOMElement* solElement, + const G4TwistedTubs* const twistedtubs) { - const G4String& name = GenerateName(twistedtubs->GetName(),twistedtubs); + const G4String& name = GenerateName(twistedtubs->GetName(), twistedtubs); - xercesc::DOMElement* twistedtubsElement = NewElement("twistedtubs"); - twistedtubsElement->setAttributeNode(NewAttribute("name",name)); - twistedtubsElement->setAttributeNode(NewAttribute("twistedangle", - twistedtubs->GetPhiTwist()/degree)); - twistedtubsElement->setAttributeNode(NewAttribute("midinnerrad", - twistedtubs->GetInnerRadius()/mm)); - twistedtubsElement->setAttributeNode(NewAttribute("midouterrad", - twistedtubs->GetOuterRadius()/mm)); - twistedtubsElement->setAttributeNode(NewAttribute("negativeEndz", - twistedtubs->GetEndZ(0)/mm)); - twistedtubsElement->setAttributeNode(NewAttribute("positiveEndz", - twistedtubs->GetEndZ(1)/mm)); - twistedtubsElement->setAttributeNode(NewAttribute("phi", - twistedtubs->GetDPhi()/degree)); - twistedtubsElement->setAttributeNode(NewAttribute("aunit","deg")); - twistedtubsElement->setAttributeNode(NewAttribute("lunit","mm")); - solElement->appendChild(twistedtubsElement); + xercesc::DOMElement* twistedtubsElement = NewElement("twistedtubs"); + twistedtubsElement->setAttributeNode(NewAttribute("name", name)); + twistedtubsElement->setAttributeNode( + NewAttribute("twistedangle", twistedtubs->GetPhiTwist() / degree)); + twistedtubsElement->setAttributeNode( + NewAttribute("midinnerrad", twistedtubs->GetInnerRadius() / mm)); + twistedtubsElement->setAttributeNode( + NewAttribute("midouterrad", twistedtubs->GetOuterRadius() / mm)); + twistedtubsElement->setAttributeNode( + NewAttribute("negativeEndz", twistedtubs->GetEndZ(0) / mm)); + twistedtubsElement->setAttributeNode( + NewAttribute("positiveEndz", twistedtubs->GetEndZ(1) / mm)); + twistedtubsElement->setAttributeNode( + NewAttribute("phi", twistedtubs->GetDPhi() / degree)); + twistedtubsElement->setAttributeNode(NewAttribute("aunit", "deg")); + twistedtubsElement->setAttributeNode(NewAttribute("lunit", "mm")); + solElement->appendChild(twistedtubsElement); } -void G4GDMLWriteSolids:: -ZplaneWrite(xercesc::DOMElement* element, const G4double& z, - const G4double& rmin, const G4double& rmax) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::ZplaneWrite(xercesc::DOMElement* element, + const G4double& z, const G4double& rmin, + const G4double& rmax) { - xercesc::DOMElement* zplaneElement = NewElement("zplane"); - zplaneElement->setAttributeNode(NewAttribute("z",z/mm)); - zplaneElement->setAttributeNode(NewAttribute("rmin",rmin/mm)); - zplaneElement->setAttributeNode(NewAttribute("rmax",rmax/mm)); - element->appendChild(zplaneElement); + xercesc::DOMElement* zplaneElement = NewElement("zplane"); + zplaneElement->setAttributeNode(NewAttribute("z", z / mm)); + zplaneElement->setAttributeNode(NewAttribute("rmin", rmin / mm)); + zplaneElement->setAttributeNode(NewAttribute("rmax", rmax / mm)); + element->appendChild(zplaneElement); } -void G4GDMLWriteSolids:: -RZPointWrite(xercesc::DOMElement* element, const G4double& r, - const G4double& z) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::RZPointWrite(xercesc::DOMElement* element, + const G4double& r, const G4double& z) { - xercesc::DOMElement* rzpointElement = NewElement("rzpoint"); - rzpointElement->setAttributeNode(NewAttribute("r",r/mm)); - rzpointElement->setAttributeNode(NewAttribute("z",z/mm)); - element->appendChild(rzpointElement); + xercesc::DOMElement* rzpointElement = NewElement("rzpoint"); + rzpointElement->setAttributeNode(NewAttribute("r", r / mm)); + rzpointElement->setAttributeNode(NewAttribute("z", z / mm)); + element->appendChild(rzpointElement); } -void G4GDMLWriteSolids:: -OpticalSurfaceWrite(xercesc::DOMElement* solElement, - const G4OpticalSurface* const surf) +// -------------------------------------------------------------------- +void G4GDMLWriteSolids::OpticalSurfaceWrite(xercesc::DOMElement* solElement, + const G4OpticalSurface* const surf) { - xercesc::DOMElement* optElement = NewElement("opticalsurface"); - G4OpticalSurfaceModel smodel = surf->GetModel(); - G4double sval = (smodel==glisur) ? surf->GetPolish() : surf->GetSigmaAlpha(); - const G4String& name = GenerateName(surf->GetName(), surf); + xercesc::DOMElement* optElement = NewElement("opticalsurface"); + G4OpticalSurfaceModel smodel = surf->GetModel(); + G4double sval = + (smodel == glisur) ? surf->GetPolish() : surf->GetSigmaAlpha(); + const G4String& name = GenerateName(surf->GetName(), surf); - optElement->setAttributeNode(NewAttribute("name", name)); - optElement->setAttributeNode(NewAttribute("model", smodel)); - optElement->setAttributeNode(NewAttribute("finish", surf->GetFinish())); - optElement->setAttributeNode(NewAttribute("type", surf->GetType())); - optElement->setAttributeNode(NewAttribute("value", sval)); + optElement->setAttributeNode(NewAttribute("name", name)); + optElement->setAttributeNode(NewAttribute("model", smodel)); + optElement->setAttributeNode(NewAttribute("finish", surf->GetFinish())); + optElement->setAttributeNode(NewAttribute("type", surf->GetType())); + optElement->setAttributeNode(NewAttribute("value", sval)); - // Write any property attached to the optical surface... - // - if (surf->GetMaterialPropertiesTable()) - { - PropertyWrite(optElement, surf); - } + // Write any property attached to the optical surface... + // + if(surf->GetMaterialPropertiesTable()) + { + PropertyWrite(optElement, surf); + } - solElement->appendChild(optElement); + solElement->appendChild(optElement); } +// -------------------------------------------------------------------- void G4GDMLWriteSolids::PropertyWrite(xercesc::DOMElement* optElement, - const G4OpticalSurface* const surf) + const G4OpticalSurface* const surf) { - xercesc::DOMElement* propElement; - G4MaterialPropertiesTable* ptable = surf->GetMaterialPropertiesTable(); - const std::map< G4int, G4PhysicsOrderedFreeVector*, - std::less >* pmap = ptable->GetPropertyMap(); - const std::map< G4int, G4double, - std::less >* cmap = ptable->GetConstPropertyMap(); - std::map< G4int, G4PhysicsOrderedFreeVector*, - std::less >::const_iterator mpos; - std::map< G4int, G4double, - std::less >::const_iterator cpos; - for (mpos=pmap->begin(); mpos!=pmap->end(); mpos++) - { - propElement = NewElement("property"); - propElement->setAttributeNode(NewAttribute("name", - ptable->GetMaterialPropertyNames()[mpos->first])); - propElement->setAttributeNode(NewAttribute("ref", - GenerateName(ptable->GetMaterialPropertyNames()[mpos->first], - mpos->second))); - if (mpos->second) - { - PropertyVectorWrite(ptable->GetMaterialPropertyNames()[mpos->first], - mpos->second); - optElement->appendChild(propElement); - } - else - { - G4String warn_message = "Null pointer for material property -" - + ptable->GetMaterialPropertyNames()[mpos->first] - + "- of optical surface -" + surf->GetName() + "- !"; - G4Exception("G4GDMLWriteSolids::PropertyWrite()", "NullPointer", - JustWarning, warn_message); - continue; - } - } - for (cpos=cmap->begin(); cpos!=cmap->end(); cpos++) - { - propElement = NewElement("property"); - propElement->setAttributeNode(NewAttribute("name", - ptable->GetMaterialConstPropertyNames()[cpos->first])); - propElement->setAttributeNode(NewAttribute("ref", - ptable->GetMaterialConstPropertyNames()[cpos->first])); - xercesc::DOMElement* constElement = NewElement("constant"); - constElement->setAttributeNode(NewAttribute("name", - ptable->GetMaterialConstPropertyNames()[cpos->first])); - constElement->setAttributeNode(NewAttribute("value", cpos->second)); - defineElement->appendChild(constElement); + xercesc::DOMElement* propElement; + G4MaterialPropertiesTable* ptable = surf->GetMaterialPropertiesTable(); + auto pmap = ptable->GetPropertyMap(); + auto cmap = ptable->GetConstPropertyMap(); + + for(auto mpos = pmap->cbegin(); mpos != pmap->cend(); ++mpos) + { + propElement = NewElement("property"); + propElement->setAttributeNode( + NewAttribute("name", ptable->GetMaterialPropertyNames()[mpos->first])); + propElement->setAttributeNode(NewAttribute( + "ref", GenerateName(ptable->GetMaterialPropertyNames()[mpos->first], + mpos->second))); + if(mpos->second) + { + PropertyVectorWrite(ptable->GetMaterialPropertyNames()[mpos->first], + mpos->second); optElement->appendChild(propElement); - } + } + else + { + G4String warn_message = "Null pointer for material property -" + + ptable->GetMaterialPropertyNames()[mpos->first] + + "- of optical surface -" + surf->GetName() + + "- !"; + G4Exception("G4GDMLWriteSolids::PropertyWrite()", "NullPointer", + JustWarning, warn_message); + continue; + } + } + for(auto cpos = cmap->cbegin(); cpos != cmap->cend(); ++cpos) + { + propElement = NewElement("property"); + propElement->setAttributeNode(NewAttribute( + "name", ptable->GetMaterialConstPropertyNames()[cpos->first])); + propElement->setAttributeNode(NewAttribute( + "ref", ptable->GetMaterialConstPropertyNames()[cpos->first])); + xercesc::DOMElement* constElement = NewElement("constant"); + constElement->setAttributeNode(NewAttribute( + "name", ptable->GetMaterialConstPropertyNames()[cpos->first])); + constElement->setAttributeNode(NewAttribute("value", cpos->second)); + defineElement->appendChild(constElement); + optElement->appendChild(propElement); + } } +// -------------------------------------------------------------------- void G4GDMLWriteSolids::SolidsWrite(xercesc::DOMElement* gdmlElement) { #ifdef G4VERBOSE - G4cout << "G4GDML: Writing solids..." << G4endl; + G4cout << "G4GDML: Writing solids..." << G4endl; #endif - solidsElement = NewElement("solids"); - gdmlElement->appendChild(solidsElement); + solidsElement = NewElement("solids"); + gdmlElement->appendChild(solidsElement); - solidList.clear(); + solidList.clear(); } +// -------------------------------------------------------------------- void G4GDMLWriteSolids::AddSolid(const G4VSolid* const solidPtr) { - for (size_t i=0; i(solidPtr)) - { BooleanWrite(solidsElement,booleanPtr); } else - if (const G4ScaledSolid* const scaledPtr - = dynamic_cast(solidPtr)) - { ScaledWrite(solidsElement,scaledPtr); } else - if (solidPtr->GetEntityType()=="G4MultiUnion") - { const G4MultiUnion* const munionPtr - = static_cast(solidPtr); - MultiUnionWrite(solidsElement,munionPtr); } else - if (solidPtr->GetEntityType()=="G4Box") - { const G4Box* const boxPtr - = static_cast(solidPtr); - BoxWrite(solidsElement,boxPtr); } else - if (solidPtr->GetEntityType()=="G4Cons") - { const G4Cons* const conePtr - = static_cast(solidPtr); - ConeWrite(solidsElement,conePtr); } else - if (solidPtr->GetEntityType()=="G4EllipticalCone") - { const G4EllipticalCone* const elconePtr - = static_cast(solidPtr); - ElconeWrite(solidsElement,elconePtr); } else - if (solidPtr->GetEntityType()=="G4Ellipsoid") - { const G4Ellipsoid* const ellipsoidPtr - = static_cast(solidPtr); - EllipsoidWrite(solidsElement,ellipsoidPtr); } else - if (solidPtr->GetEntityType()=="G4EllipticalTube") - { const G4EllipticalTube* const eltubePtr - = static_cast(solidPtr); - EltubeWrite(solidsElement,eltubePtr); } else - if (solidPtr->GetEntityType()=="G4ExtrudedSolid") - { const G4ExtrudedSolid* const xtruPtr - = static_cast(solidPtr); - XtruWrite(solidsElement,xtruPtr); } else - if (solidPtr->GetEntityType()=="G4Hype") - { const G4Hype* const hypePtr - = static_cast(solidPtr); - HypeWrite(solidsElement,hypePtr); } else - if (solidPtr->GetEntityType()=="G4Orb") - { const G4Orb* const orbPtr - = static_cast(solidPtr); - OrbWrite(solidsElement,orbPtr); } else - if (solidPtr->GetEntityType()=="G4Para") - { const G4Para* const paraPtr - = static_cast(solidPtr); - ParaWrite(solidsElement,paraPtr); } else - if (solidPtr->GetEntityType()=="G4Paraboloid") - { const G4Paraboloid* const paraboloidPtr - = static_cast(solidPtr); - ParaboloidWrite(solidsElement,paraboloidPtr); } else - if (solidPtr->GetEntityType()=="G4Polycone") - { const G4Polycone* const polyconePtr - = static_cast(solidPtr); - PolyconeWrite(solidsElement,polyconePtr); } else - if (solidPtr->GetEntityType()=="G4GenericPolycone") - { const G4GenericPolycone* const genpolyconePtr - = static_cast(solidPtr); - GenericPolyconeWrite(solidsElement,genpolyconePtr); } else - if (solidPtr->GetEntityType()=="G4Polyhedra") - { const G4Polyhedra* const polyhedraPtr - = static_cast(solidPtr); - PolyhedraWrite(solidsElement,polyhedraPtr); } else - if (solidPtr->GetEntityType()=="G4Sphere") - { const G4Sphere* const spherePtr - = static_cast(solidPtr); - SphereWrite(solidsElement,spherePtr); } else - if (solidPtr->GetEntityType()=="G4TessellatedSolid") - { const G4TessellatedSolid* const tessellatedPtr - = static_cast(solidPtr); - TessellatedWrite(solidsElement,tessellatedPtr); } else - if (solidPtr->GetEntityType()=="G4Tet") - { const G4Tet* const tetPtr - = static_cast(solidPtr); - TetWrite(solidsElement,tetPtr); } else - if (solidPtr->GetEntityType()=="G4Torus") - { const G4Torus* const torusPtr - = static_cast(solidPtr); - TorusWrite(solidsElement,torusPtr); } else - if (solidPtr->GetEntityType()=="G4GenericTrap") - { const G4GenericTrap* const gtrapPtr - = static_cast(solidPtr); - GenTrapWrite(solidsElement,gtrapPtr); } else - if (solidPtr->GetEntityType()=="G4Trap") - { const G4Trap* const trapPtr - = static_cast(solidPtr); - TrapWrite(solidsElement,trapPtr); } else - if (solidPtr->GetEntityType()=="G4Trd") - { const G4Trd* const trdPtr - = static_cast(solidPtr); - TrdWrite(solidsElement,trdPtr); } else - if (solidPtr->GetEntityType()=="G4Tubs") - { const G4Tubs* const tubePtr - = static_cast(solidPtr); - TubeWrite(solidsElement,tubePtr); } else - if (solidPtr->GetEntityType()=="G4CutTubs") - { const G4CutTubs* const cuttubePtr - = static_cast(solidPtr); - CutTubeWrite(solidsElement,cuttubePtr); } else - if (solidPtr->GetEntityType()=="G4TwistedBox") - { const G4TwistedBox* const twistedboxPtr - = static_cast(solidPtr); - TwistedboxWrite(solidsElement,twistedboxPtr); } else - if (solidPtr->GetEntityType()=="G4TwistedTrap") - { const G4TwistedTrap* const twistedtrapPtr - = static_cast(solidPtr); - TwistedtrapWrite(solidsElement,twistedtrapPtr); } else - if (solidPtr->GetEntityType()=="G4TwistedTrd") - { const G4TwistedTrd* const twistedtrdPtr - = static_cast(solidPtr); - TwistedtrdWrite(solidsElement,twistedtrdPtr); } else - if (solidPtr->GetEntityType()=="G4TwistedTubs") - { const G4TwistedTubs* const twistedtubsPtr - = static_cast(solidPtr); - TwistedtubsWrite(solidsElement,twistedtubsPtr); } - else - { - G4String error_msg = "Unknown solid: " + solidPtr->GetName() - + "; Type: " + solidPtr->GetEntityType(); - G4Exception("G4GDMLWriteSolids::AddSolid()", "WriteError", - FatalException, error_msg); - } + if(const G4BooleanSolid* const booleanPtr = + dynamic_cast(solidPtr)) + { + BooleanWrite(solidsElement, booleanPtr); + } + else if(const G4ScaledSolid* const scaledPtr = + dynamic_cast(solidPtr)) + { + ScaledWrite(solidsElement, scaledPtr); + } + else if(solidPtr->GetEntityType() == "G4MultiUnion") + { + const G4MultiUnion* const munionPtr = + static_cast(solidPtr); + MultiUnionWrite(solidsElement, munionPtr); + } + else if(solidPtr->GetEntityType() == "G4Box") + { + const G4Box* const boxPtr = static_cast(solidPtr); + BoxWrite(solidsElement, boxPtr); + } + else if(solidPtr->GetEntityType() == "G4Cons") + { + const G4Cons* const conePtr = static_cast(solidPtr); + ConeWrite(solidsElement, conePtr); + } + else if(solidPtr->GetEntityType() == "G4EllipticalCone") + { + const G4EllipticalCone* const elconePtr = + static_cast(solidPtr); + ElconeWrite(solidsElement, elconePtr); + } + else if(solidPtr->GetEntityType() == "G4Ellipsoid") + { + const G4Ellipsoid* const ellipsoidPtr = + static_cast(solidPtr); + EllipsoidWrite(solidsElement, ellipsoidPtr); + } + else if(solidPtr->GetEntityType() == "G4EllipticalTube") + { + const G4EllipticalTube* const eltubePtr = + static_cast(solidPtr); + EltubeWrite(solidsElement, eltubePtr); + } + else if(solidPtr->GetEntityType() == "G4ExtrudedSolid") + { + const G4ExtrudedSolid* const xtruPtr = + static_cast(solidPtr); + XtruWrite(solidsElement, xtruPtr); + } + else if(solidPtr->GetEntityType() == "G4Hype") + { + const G4Hype* const hypePtr = static_cast(solidPtr); + HypeWrite(solidsElement, hypePtr); + } + else if(solidPtr->GetEntityType() == "G4Orb") + { + const G4Orb* const orbPtr = static_cast(solidPtr); + OrbWrite(solidsElement, orbPtr); + } + else if(solidPtr->GetEntityType() == "G4Para") + { + const G4Para* const paraPtr = static_cast(solidPtr); + ParaWrite(solidsElement, paraPtr); + } + else if(solidPtr->GetEntityType() == "G4Paraboloid") + { + const G4Paraboloid* const paraboloidPtr = + static_cast(solidPtr); + ParaboloidWrite(solidsElement, paraboloidPtr); + } + else if(solidPtr->GetEntityType() == "G4Polycone") + { + const G4Polycone* const polyconePtr = + static_cast(solidPtr); + PolyconeWrite(solidsElement, polyconePtr); + } + else if(solidPtr->GetEntityType() == "G4GenericPolycone") + { + const G4GenericPolycone* const genpolyconePtr = + static_cast(solidPtr); + GenericPolyconeWrite(solidsElement, genpolyconePtr); + } + else if(solidPtr->GetEntityType() == "G4Polyhedra") + { + const G4Polyhedra* const polyhedraPtr = + static_cast(solidPtr); + PolyhedraWrite(solidsElement, polyhedraPtr); + } + else if(solidPtr->GetEntityType() == "G4Sphere") + { + const G4Sphere* const spherePtr = static_cast(solidPtr); + SphereWrite(solidsElement, spherePtr); + } + else if(solidPtr->GetEntityType() == "G4TessellatedSolid") + { + const G4TessellatedSolid* const tessellatedPtr = + static_cast(solidPtr); + TessellatedWrite(solidsElement, tessellatedPtr); + } + else if(solidPtr->GetEntityType() == "G4Tet") + { + const G4Tet* const tetPtr = static_cast(solidPtr); + TetWrite(solidsElement, tetPtr); + } + else if(solidPtr->GetEntityType() == "G4Torus") + { + const G4Torus* const torusPtr = static_cast(solidPtr); + TorusWrite(solidsElement, torusPtr); + } + else if(solidPtr->GetEntityType() == "G4GenericTrap") + { + const G4GenericTrap* const gtrapPtr = + static_cast(solidPtr); + GenTrapWrite(solidsElement, gtrapPtr); + } + else if(solidPtr->GetEntityType() == "G4Trap") + { + const G4Trap* const trapPtr = static_cast(solidPtr); + TrapWrite(solidsElement, trapPtr); + } + else if(solidPtr->GetEntityType() == "G4Trd") + { + const G4Trd* const trdPtr = static_cast(solidPtr); + TrdWrite(solidsElement, trdPtr); + } + else if(solidPtr->GetEntityType() == "G4Tubs") + { + const G4Tubs* const tubePtr = static_cast(solidPtr); + TubeWrite(solidsElement, tubePtr); + } + else if(solidPtr->GetEntityType() == "G4CutTubs") + { + const G4CutTubs* const cuttubePtr = static_cast(solidPtr); + CutTubeWrite(solidsElement, cuttubePtr); + } + else if(solidPtr->GetEntityType() == "G4TwistedBox") + { + const G4TwistedBox* const twistedboxPtr = + static_cast(solidPtr); + TwistedboxWrite(solidsElement, twistedboxPtr); + } + else if(solidPtr->GetEntityType() == "G4TwistedTrap") + { + const G4TwistedTrap* const twistedtrapPtr = + static_cast(solidPtr); + TwistedtrapWrite(solidsElement, twistedtrapPtr); + } + else if(solidPtr->GetEntityType() == "G4TwistedTrd") + { + const G4TwistedTrd* const twistedtrdPtr = + static_cast(solidPtr); + TwistedtrdWrite(solidsElement, twistedtrdPtr); + } + else if(solidPtr->GetEntityType() == "G4TwistedTubs") + { + const G4TwistedTubs* const twistedtubsPtr = + static_cast(solidPtr); + TwistedtubsWrite(solidsElement, twistedtubsPtr); + } + else + { + G4String error_msg = "Unknown solid: " + solidPtr->GetName() + + "; Type: " + solidPtr->GetEntityType(); + G4Exception("G4GDMLWriteSolids::AddSolid()", "WriteError", FatalException, + error_msg); + } } diff --git a/source/persistency/gdml/src/G4GDMLWriteStructure.cc b/source/persistency/gdml/src/G4GDMLWriteStructure.cc index 667eb36a0c..42c7c21b76 100644 --- a/source/persistency/gdml/src/G4GDMLWriteStructure.cc +++ b/source/persistency/gdml/src/G4GDMLWriteStructure.cc @@ -23,12 +23,9 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GDMLWriteStructure implementation // -// -// class G4GDMLWriteStructure Implementation -// -// Original author: Zoltan Torzsok, November 2007 -// +// Author: Zoltan Torzsok, November 2007 // -------------------------------------------------------------------- #include "G4GDMLWriteStructure.hh" @@ -60,360 +57,405 @@ G4int G4GDMLWriteStructure::levelNo = 0; // Counter for level being exported +// -------------------------------------------------------------------- G4GDMLWriteStructure::G4GDMLWriteStructure() - : G4GDMLWriteParamvol(), cexport(false), maxLevel(INT_MAX) + : G4GDMLWriteParamvol() + , maxLevel(INT_MAX) { reflFactory = G4ReflectionFactory::Instance(); } +// -------------------------------------------------------------------- G4GDMLWriteStructure::~G4GDMLWriteStructure() { } -void -G4GDMLWriteStructure::DivisionvolWrite(xercesc::DOMElement* volumeElement, - const G4PVDivision* const divisionvol) +// -------------------------------------------------------------------- +void G4GDMLWriteStructure::DivisionvolWrite( + xercesc::DOMElement* volumeElement, const G4PVDivision* const divisionvol) { - EAxis axis = kUndefined; - G4int number = 0; - G4double width = 0.0; - G4double offset = 0.0; - G4bool consuming = false; + EAxis axis = kUndefined; + G4int number = 0; + G4double width = 0.0; + G4double offset = 0.0; + G4bool consuming = false; - divisionvol->GetReplicationData(axis,number,width,offset,consuming); - axis = divisionvol->GetDivisionAxis(); + divisionvol->GetReplicationData(axis, number, width, offset, consuming); + axis = divisionvol->GetDivisionAxis(); - G4String unitString("mm"); - G4String axisString("kUndefined"); - if (axis==kXAxis) { axisString = "kXAxis"; } - else if (axis==kYAxis) { axisString = "kYAxis"; } - else if (axis==kZAxis) { axisString = "kZAxis"; } - else if (axis==kRho) { axisString = "kRho"; } - else if (axis==kPhi) { axisString = "kPhi"; unitString = "rad"; } + G4String unitString("mm"); + G4String axisString("kUndefined"); + if(axis == kXAxis) + { + axisString = "kXAxis"; + } + else if(axis == kYAxis) + { + axisString = "kYAxis"; + } + else if(axis == kZAxis) + { + axisString = "kZAxis"; + } + else if(axis == kRho) + { + axisString = "kRho"; + } + else if(axis == kPhi) + { + axisString = "kPhi"; + unitString = "rad"; + } - const G4String name - = GenerateName(divisionvol->GetName(),divisionvol); - const G4String volumeref - = GenerateName(divisionvol->GetLogicalVolume()->GetName(), - divisionvol->GetLogicalVolume()); + const G4String name = GenerateName(divisionvol->GetName(), divisionvol); + const G4String volumeref = + GenerateName(divisionvol->GetLogicalVolume()->GetName(), + divisionvol->GetLogicalVolume()); - xercesc::DOMElement* divisionvolElement = NewElement("divisionvol"); - divisionvolElement->setAttributeNode(NewAttribute("axis",axisString)); - divisionvolElement->setAttributeNode(NewAttribute("number",number)); - divisionvolElement->setAttributeNode(NewAttribute("width",width)); - divisionvolElement->setAttributeNode(NewAttribute("offset",offset)); - divisionvolElement->setAttributeNode(NewAttribute("unit",unitString)); - xercesc::DOMElement* volumerefElement = NewElement("volumeref"); - volumerefElement->setAttributeNode(NewAttribute("ref",volumeref)); - divisionvolElement->appendChild(volumerefElement); - volumeElement->appendChild(divisionvolElement); + xercesc::DOMElement* divisionvolElement = NewElement("divisionvol"); + divisionvolElement->setAttributeNode(NewAttribute("axis", axisString)); + divisionvolElement->setAttributeNode(NewAttribute("number", number)); + divisionvolElement->setAttributeNode(NewAttribute("width", width)); + divisionvolElement->setAttributeNode(NewAttribute("offset", offset)); + divisionvolElement->setAttributeNode(NewAttribute("unit", unitString)); + xercesc::DOMElement* volumerefElement = NewElement("volumeref"); + volumerefElement->setAttributeNode(NewAttribute("ref", volumeref)); + divisionvolElement->appendChild(volumerefElement); + volumeElement->appendChild(divisionvolElement); } +// -------------------------------------------------------------------- void G4GDMLWriteStructure::PhysvolWrite(xercesc::DOMElement* volumeElement, const G4VPhysicalVolume* const physvol, const G4Transform3D& T, const G4String& ModuleName) { - HepGeom::Scale3D scale; - HepGeom::Rotate3D rotate; - HepGeom::Translate3D translate; + HepGeom::Scale3D scale; + HepGeom::Rotate3D rotate; + HepGeom::Translate3D translate; - T.getDecomposition(scale,rotate,translate); + T.getDecomposition(scale, rotate, translate); - const G4ThreeVector scl(scale(0,0),scale(1,1),scale(2,2)); - const G4ThreeVector rot = GetAngles(rotate.getRotation()); - const G4ThreeVector pos = T.getTranslation(); + const G4ThreeVector scl(scale(0, 0), scale(1, 1), scale(2, 2)); + const G4ThreeVector rot = GetAngles(rotate.getRotation()); + const G4ThreeVector pos = T.getTranslation(); - const G4String name = GenerateName(physvol->GetName(),physvol); - const G4int copynumber = physvol->GetCopyNo(); + const G4String name = GenerateName(physvol->GetName(), physvol); + const G4int copynumber = physvol->GetCopyNo(); - xercesc::DOMElement* physvolElement = NewElement("physvol"); - physvolElement->setAttributeNode(NewAttribute("name",name)); - if (copynumber) physvolElement->setAttributeNode(NewAttribute("copynumber", copynumber)); + xercesc::DOMElement* physvolElement = NewElement("physvol"); + physvolElement->setAttributeNode(NewAttribute("name", name)); + if(copynumber) + { + physvolElement->setAttributeNode(NewAttribute("copynumber", copynumber)); + } - volumeElement->appendChild(physvolElement); + volumeElement->appendChild(physvolElement); - G4LogicalVolume* lv; - // Is it reflected? - if (reflFactory->IsReflected(physvol->GetLogicalVolume())) - { - lv = reflFactory->GetConstituentLV(physvol->GetLogicalVolume()); - } - else - { - lv = physvol->GetLogicalVolume(); - } - - const G4String volumeref = GenerateName(lv->GetName(), lv); + G4LogicalVolume* lv; + // Is it reflected? + if(reflFactory->IsReflected(physvol->GetLogicalVolume())) + { + lv = reflFactory->GetConstituentLV(physvol->GetLogicalVolume()); + } + else + { + lv = physvol->GetLogicalVolume(); + } - if (ModuleName.empty()) - { - xercesc::DOMElement* volumerefElement = NewElement("volumeref"); - volumerefElement->setAttributeNode(NewAttribute("ref",volumeref)); - physvolElement->appendChild(volumerefElement); - } - else - { - xercesc::DOMElement* fileElement = NewElement("file"); - fileElement->setAttributeNode(NewAttribute("name",ModuleName)); - fileElement->setAttributeNode(NewAttribute("volname",volumeref)); - physvolElement->appendChild(fileElement); - } + const G4String volumeref = GenerateName(lv->GetName(), lv); - if (std::fabs(pos.x()) > kLinearPrecision - || std::fabs(pos.y()) > kLinearPrecision - || std::fabs(pos.z()) > kLinearPrecision) - { - PositionWrite(physvolElement,name+"_pos",pos); - } - if (std::fabs(rot.x()) > kAngularPrecision - || std::fabs(rot.y()) > kAngularPrecision - || std::fabs(rot.z()) > kAngularPrecision) - { - RotationWrite(physvolElement,name+"_rot",rot); - } - if (std::fabs(scl.x()-1.0) > kRelativePrecision - || std::fabs(scl.y()-1.0) > kRelativePrecision - || std::fabs(scl.z()-1.0) > kRelativePrecision) - { - ScaleWrite(physvolElement,name+"_scl",scl); - } + if(ModuleName.empty()) + { + xercesc::DOMElement* volumerefElement = NewElement("volumeref"); + volumerefElement->setAttributeNode(NewAttribute("ref", volumeref)); + physvolElement->appendChild(volumerefElement); + } + else + { + xercesc::DOMElement* fileElement = NewElement("file"); + fileElement->setAttributeNode(NewAttribute("name", ModuleName)); + fileElement->setAttributeNode(NewAttribute("volname", volumeref)); + physvolElement->appendChild(fileElement); + } + + if(std::fabs(pos.x()) > kLinearPrecision || + std::fabs(pos.y()) > kLinearPrecision || + std::fabs(pos.z()) > kLinearPrecision) + { + PositionWrite(physvolElement, name + "_pos", pos); + } + if(std::fabs(rot.x()) > kAngularPrecision || + std::fabs(rot.y()) > kAngularPrecision || + std::fabs(rot.z()) > kAngularPrecision) + { + RotationWrite(physvolElement, name + "_rot", rot); + } + if(std::fabs(scl.x() - 1.0) > kRelativePrecision || + std::fabs(scl.y() - 1.0) > kRelativePrecision || + std::fabs(scl.z() - 1.0) > kRelativePrecision) + { + ScaleWrite(physvolElement, name + "_scl", scl); + } } -void G4GDMLWriteStructure::ReplicavolWrite(xercesc::DOMElement* volumeElement, - const G4VPhysicalVolume* const replicavol) +// -------------------------------------------------------------------- +void G4GDMLWriteStructure::ReplicavolWrite( + xercesc::DOMElement* volumeElement, const G4VPhysicalVolume* const replicavol) { - EAxis axis = kUndefined; - G4int number = 0; - G4double width = 0.0; - G4double offset = 0.0; - G4bool consuming = false; - G4String unitString("mm"); + EAxis axis = kUndefined; + G4int number = 0; + G4double width = 0.0; + G4double offset = 0.0; + G4bool consuming = false; + G4String unitString("mm"); - replicavol->GetReplicationData(axis,number,width,offset,consuming); + replicavol->GetReplicationData(axis, number, width, offset, consuming); - const G4String volumeref - = GenerateName(replicavol->GetLogicalVolume()->GetName(), - replicavol->GetLogicalVolume()); + const G4String volumeref = GenerateName( + replicavol->GetLogicalVolume()->GetName(), replicavol->GetLogicalVolume()); - xercesc::DOMElement* replicavolElement = NewElement("replicavol"); - replicavolElement->setAttributeNode(NewAttribute("number",number)); - xercesc::DOMElement* volumerefElement = NewElement("volumeref"); - volumerefElement->setAttributeNode(NewAttribute("ref",volumeref)); - replicavolElement->appendChild(volumerefElement); - xercesc::DOMElement* replicateElement = NewElement("replicate_along_axis"); - replicavolElement->appendChild(replicateElement); + xercesc::DOMElement* replicavolElement = NewElement("replicavol"); + replicavolElement->setAttributeNode(NewAttribute("number", number)); + xercesc::DOMElement* volumerefElement = NewElement("volumeref"); + volumerefElement->setAttributeNode(NewAttribute("ref", volumeref)); + replicavolElement->appendChild(volumerefElement); + xercesc::DOMElement* replicateElement = NewElement("replicate_along_axis"); + replicavolElement->appendChild(replicateElement); - xercesc::DOMElement* dirElement = NewElement("direction"); - if(axis==kXAxis) - { dirElement->setAttributeNode(NewAttribute("x","1")); } - else if(axis==kYAxis) - { dirElement->setAttributeNode(NewAttribute("y","1")); } - else if(axis==kZAxis) - { dirElement->setAttributeNode(NewAttribute("z","1")); } - else if(axis==kRho) - { dirElement->setAttributeNode(NewAttribute("rho","1")); } - else if(axis==kPhi) - { dirElement->setAttributeNode(NewAttribute("phi","1")); - unitString="rad"; } - replicateElement->appendChild(dirElement); + xercesc::DOMElement* dirElement = NewElement("direction"); + if(axis == kXAxis) + { + dirElement->setAttributeNode(NewAttribute("x", "1")); + } + else if(axis == kYAxis) + { + dirElement->setAttributeNode(NewAttribute("y", "1")); + } + else if(axis == kZAxis) + { + dirElement->setAttributeNode(NewAttribute("z", "1")); + } + else if(axis == kRho) + { + dirElement->setAttributeNode(NewAttribute("rho", "1")); + } + else if(axis == kPhi) + { + dirElement->setAttributeNode(NewAttribute("phi", "1")); + unitString = "rad"; + } + replicateElement->appendChild(dirElement); - xercesc::DOMElement* widthElement = NewElement("width"); - widthElement->setAttributeNode(NewAttribute("value",width)); - widthElement->setAttributeNode(NewAttribute("unit",unitString)); - replicateElement->appendChild(widthElement); + xercesc::DOMElement* widthElement = NewElement("width"); + widthElement->setAttributeNode(NewAttribute("value", width)); + widthElement->setAttributeNode(NewAttribute("unit", unitString)); + replicateElement->appendChild(widthElement); - xercesc::DOMElement* offsetElement = NewElement("offset"); - offsetElement->setAttributeNode(NewAttribute("value",offset)); - offsetElement->setAttributeNode(NewAttribute("unit",unitString)); - replicateElement->appendChild(offsetElement); + xercesc::DOMElement* offsetElement = NewElement("offset"); + offsetElement->setAttributeNode(NewAttribute("value", offset)); + offsetElement->setAttributeNode(NewAttribute("unit", unitString)); + replicateElement->appendChild(offsetElement); - volumeElement->appendChild(replicavolElement); + volumeElement->appendChild(replicavolElement); } - +// -------------------------------------------------------------------- void G4GDMLWriteStructure::AssemblyWrite(xercesc::DOMElement* volumeElement, - const int assemblyID) + const G4int assemblyID) { - - G4AssemblyStore* assemblies = G4AssemblyStore::GetInstance(); + G4AssemblyStore* assemblies = G4AssemblyStore::GetInstance(); G4AssemblyVolume* myassembly = assemblies->GetAssembly(assemblyID); - + xercesc::DOMElement* assemblyElement = NewElement("assembly"); G4String name = "Assembly_" + std::to_string(assemblyID); - - assemblyElement->setAttributeNode(NewAttribute("name",name)); - - std::vector::iterator vit = myassembly->GetTripletsIterator(); - - int depth = 0; - const G4String ModuleName; - - for (size_t i5=0; i5TotalTriplets(); i5++) - { - TraverseVolumeTree((*vit).GetVolume(),depth+1); - const G4ThreeVector rot = GetAngles((*vit).GetRotation()->inverse()); - const G4ThreeVector pos = (*vit).GetTranslation(); - - const G4String pname = GenerateName((*vit).GetVolume()->GetName()+"_pv", &(*vit)); - - xercesc::DOMElement* physvolElement = NewElement("physvol"); - physvolElement->setAttributeNode(NewAttribute("name",pname)); - - assemblyElement->appendChild(physvolElement); - - const G4String volumeref = GenerateName((*vit).GetVolume()->GetName(), (*vit).GetVolume()); - - xercesc::DOMElement* volumerefElement = NewElement("volumeref"); - volumerefElement->setAttributeNode(NewAttribute("ref",volumeref)); - physvolElement->appendChild(volumerefElement); - - if (std::fabs(pos.x()) > kLinearPrecision - || std::fabs(pos.y()) > kLinearPrecision - || std::fabs(pos.z()) > kLinearPrecision) - { - PositionWrite(physvolElement,"Position_" + std::to_string(i5), pos); - } - if (std::fabs(rot.x()) > kAngularPrecision - || std::fabs(rot.y()) > kAngularPrecision - || std::fabs(rot.z()) > kAngularPrecision) - { - RotationWrite(physvolElement,"Rotation_" + std::to_string(i5), rot); - } - vit++; + assemblyElement->setAttributeNode(NewAttribute("name", name)); + + auto vit = myassembly->GetTripletsIterator(); + + G4int depth = 0; + const G4String ModuleName; + + for(std::size_t i5 = 0; i5 < myassembly->TotalTriplets(); ++i5) + { + TraverseVolumeTree((*vit).GetVolume(), depth + 1); + + const G4ThreeVector rot = GetAngles((*vit).GetRotation()->inverse()); + const G4ThreeVector pos = (*vit).GetTranslation(); + + const G4String pname = + GenerateName((*vit).GetVolume()->GetName() + "_pv", &(*vit)); + + xercesc::DOMElement* physvolElement = NewElement("physvol"); + physvolElement->setAttributeNode(NewAttribute("name", pname)); + + assemblyElement->appendChild(physvolElement); + + const G4String volumeref = + GenerateName((*vit).GetVolume()->GetName(), (*vit).GetVolume()); + + xercesc::DOMElement* volumerefElement = NewElement("volumeref"); + volumerefElement->setAttributeNode(NewAttribute("ref", volumeref)); + physvolElement->appendChild(volumerefElement); + + if(std::fabs(pos.x()) > kLinearPrecision || + std::fabs(pos.y()) > kLinearPrecision || + std::fabs(pos.z()) > kLinearPrecision) + { + PositionWrite(physvolElement, "Position_" + std::to_string(i5), pos); } + if(std::fabs(rot.x()) > kAngularPrecision || + std::fabs(rot.y()) > kAngularPrecision || + std::fabs(rot.z()) > kAngularPrecision) + { + RotationWrite(physvolElement, "Rotation_" + std::to_string(i5), rot); + } + ++vit; + } + volumeElement->appendChild(assemblyElement); } - -void G4GDMLWriteStructure:: -BorderSurfaceCache(const G4LogicalBorderSurface* const bsurf) +// -------------------------------------------------------------------- +void G4GDMLWriteStructure::BorderSurfaceCache( + const G4LogicalBorderSurface* const bsurf) { - if (!bsurf) { return; } + if(bsurf == nullptr) + { + return; + } - const G4SurfaceProperty* psurf = bsurf->GetSurfaceProperty(); + const G4SurfaceProperty* psurf = bsurf->GetSurfaceProperty(); - // Generate the new element for border-surface - // - const G4String& bsname = GenerateName(bsurf->GetName(), bsurf); - const G4String& psname = GenerateName(psurf->GetName(), psurf); - xercesc::DOMElement* borderElement = NewElement("bordersurface"); - borderElement->setAttributeNode(NewAttribute("name", bsname)); - borderElement->setAttributeNode(NewAttribute("surfaceproperty", psname)); + // Generate the new element for border-surface + // + const G4String& bsname = GenerateName(bsurf->GetName(), bsurf); + const G4String& psname = GenerateName(psurf->GetName(), psurf); + xercesc::DOMElement* borderElement = NewElement("bordersurface"); + borderElement->setAttributeNode(NewAttribute("name", bsname)); + borderElement->setAttributeNode(NewAttribute("surfaceproperty", psname)); - const G4String volumeref1 = GenerateName(bsurf->GetVolume1()->GetName(), - bsurf->GetVolume1()); - const G4String volumeref2 = GenerateName(bsurf->GetVolume2()->GetName(), - bsurf->GetVolume2()); - xercesc::DOMElement* volumerefElement1 = NewElement("physvolref"); - xercesc::DOMElement* volumerefElement2 = NewElement("physvolref"); - volumerefElement1->setAttributeNode(NewAttribute("ref",volumeref1)); - volumerefElement2->setAttributeNode(NewAttribute("ref",volumeref2)); - borderElement->appendChild(volumerefElement1); - borderElement->appendChild(volumerefElement2); + const G4String volumeref1 = + GenerateName(bsurf->GetVolume1()->GetName(), bsurf->GetVolume1()); + const G4String volumeref2 = + GenerateName(bsurf->GetVolume2()->GetName(), bsurf->GetVolume2()); + xercesc::DOMElement* volumerefElement1 = NewElement("physvolref"); + xercesc::DOMElement* volumerefElement2 = NewElement("physvolref"); + volumerefElement1->setAttributeNode(NewAttribute("ref", volumeref1)); + volumerefElement2->setAttributeNode(NewAttribute("ref", volumeref2)); + borderElement->appendChild(volumerefElement1); + borderElement->appendChild(volumerefElement2); - if (FindOpticalSurface(psurf)) - { - const G4OpticalSurface* opsurf = - dynamic_cast(psurf); - if (!opsurf) - { - G4Exception("G4GDMLWriteStructure::BorderSurfaceCache()", - "InvalidSetup", FatalException, "No optical surface found!"); - return; - } - OpticalSurfaceWrite(solidsElement, opsurf); - } + if(FindOpticalSurface(psurf)) + { + const G4OpticalSurface* opsurf = + dynamic_cast(psurf); + if(opsurf == nullptr) + { + G4Exception("G4GDMLWriteStructure::BorderSurfaceCache()", "InvalidSetup", + FatalException, "No optical surface found!"); + return; + } + OpticalSurfaceWrite(solidsElement, opsurf); + } - borderElementVec.push_back(borderElement); + borderElementVec.push_back(borderElement); } -void G4GDMLWriteStructure:: -SkinSurfaceCache(const G4LogicalSkinSurface* const ssurf) +// -------------------------------------------------------------------- +void G4GDMLWriteStructure::SkinSurfaceCache( + const G4LogicalSkinSurface* const ssurf) { - if (!ssurf) { return; } + if(ssurf == nullptr) + { + return; + } - const G4SurfaceProperty* psurf = ssurf->GetSurfaceProperty(); + const G4SurfaceProperty* psurf = ssurf->GetSurfaceProperty(); - // Generate the new element for border-surface - // - const G4String& ssname = GenerateName(ssurf->GetName(), ssurf); - const G4String& psname = GenerateName(psurf->GetName(), psurf); - xercesc::DOMElement* skinElement = NewElement("skinsurface"); - skinElement->setAttributeNode(NewAttribute("name", ssname)); - skinElement->setAttributeNode(NewAttribute("surfaceproperty", psname)); + // Generate the new element for border-surface + // + const G4String& ssname = GenerateName(ssurf->GetName(), ssurf); + const G4String& psname = GenerateName(psurf->GetName(), psurf); + xercesc::DOMElement* skinElement = NewElement("skinsurface"); + skinElement->setAttributeNode(NewAttribute("name", ssname)); + skinElement->setAttributeNode(NewAttribute("surfaceproperty", psname)); - const G4String volumeref = GenerateName(ssurf->GetLogicalVolume()->GetName(), - ssurf->GetLogicalVolume()); - xercesc::DOMElement* volumerefElement = NewElement("volumeref"); - volumerefElement->setAttributeNode(NewAttribute("ref",volumeref)); - skinElement->appendChild(volumerefElement); + const G4String volumeref = GenerateName(ssurf->GetLogicalVolume()->GetName(), + ssurf->GetLogicalVolume()); + xercesc::DOMElement* volumerefElement = NewElement("volumeref"); + volumerefElement->setAttributeNode(NewAttribute("ref", volumeref)); + skinElement->appendChild(volumerefElement); - if (FindOpticalSurface(psurf)) - { - const G4OpticalSurface* opsurf = - dynamic_cast(psurf); - if (!opsurf) - { - G4Exception("G4GDMLWriteStructure::SkinSurfaceCache()", - "InvalidSetup", FatalException, "No optical surface found!"); - return; - } - OpticalSurfaceWrite(solidsElement, opsurf); - } + if(FindOpticalSurface(psurf)) + { + const G4OpticalSurface* opsurf = + dynamic_cast(psurf); + if(opsurf == nullptr) + { + G4Exception("G4GDMLWriteStructure::SkinSurfaceCache()", "InvalidSetup", + FatalException, "No optical surface found!"); + return; + } + OpticalSurfaceWrite(solidsElement, opsurf); + } - skinElementVec.push_back(skinElement); + skinElementVec.push_back(skinElement); } +// -------------------------------------------------------------------- G4bool G4GDMLWriteStructure::FindOpticalSurface(const G4SurfaceProperty* psurf) { - const G4OpticalSurface* osurf = dynamic_cast(psurf); - std::vector::const_iterator pos; - pos = std::find(opt_vec.begin(), opt_vec.end(), osurf); - if (pos != opt_vec.end()) { return false; } // item already created! + const G4OpticalSurface* osurf = dynamic_cast(psurf); + auto pos = std::find(opt_vec.cbegin(), opt_vec.cend(), osurf); + if(pos != opt_vec.cend()) + { + return false; + } // item already created! - opt_vec.push_back(osurf); // cache it for future reference - return true; + opt_vec.push_back(osurf); // cache it for future reference + return true; } -const G4LogicalSkinSurface* -G4GDMLWriteStructure::GetSkinSurface(const G4LogicalVolume* const lvol) +// -------------------------------------------------------------------- +const G4LogicalSkinSurface* G4GDMLWriteStructure::GetSkinSurface( + const G4LogicalVolume* const lvol) { G4LogicalSkinSurface* surf = 0; G4int nsurf = G4LogicalSkinSurface::GetNumberOfSkinSurfaces(); - if (nsurf) + if(nsurf) { const G4LogicalSkinSurfaceTable* stable = - G4LogicalSkinSurface::GetSurfaceTable(); - std::vector::const_iterator pos; - for (pos = stable->begin(); pos != stable->end(); pos++) + G4LogicalSkinSurface::GetSurfaceTable(); + for(auto pos = stable->cbegin(); pos != stable->cend(); ++pos) { - if (lvol == (*pos)->GetLogicalVolume()) + if(lvol == (*pos)->GetLogicalVolume()) { - surf = *pos; break; + surf = *pos; + break; } } } return surf; } -const G4LogicalBorderSurface* -G4GDMLWriteStructure::GetBorderSurface(const G4VPhysicalVolume* const pvol) +// -------------------------------------------------------------------- +const G4LogicalBorderSurface* G4GDMLWriteStructure::GetBorderSurface( + const G4VPhysicalVolume* const pvol) { - G4LogicalBorderSurface* surf = 0; + G4LogicalBorderSurface* surf = nullptr; G4int nsurf = G4LogicalBorderSurface::GetNumberOfBorderSurfaces(); - if (nsurf) + if(nsurf) { const G4LogicalBorderSurfaceTable* btable = - G4LogicalBorderSurface::GetSurfaceTable(); - std::vector::const_iterator pos; - for (pos = btable->begin(); pos != btable->end(); pos++) + G4LogicalBorderSurface::GetSurfaceTable(); + for(auto pos = btable->cbegin(); pos != btable->cend(); ++pos) { - if (pvol == (*pos)->GetVolume1()) // just the first in the couple - { // could be enough? - surf = *pos; // break; + if(pvol == pos->first.first) // just the first in the couple + { // could be enough? + surf = pos->second; // break; BorderSurfaceCache(surf); } } @@ -421,381 +463,410 @@ G4GDMLWriteStructure::GetBorderSurface(const G4VPhysicalVolume* const pvol) return surf; } +// -------------------------------------------------------------------- void G4GDMLWriteStructure::SurfacesWrite() { #ifdef G4VERBOSE - G4cout << "G4GDML: Writing surfaces..." << G4endl; + G4cout << "G4GDML: Writing surfaces..." << G4endl; #endif - std::vector::const_iterator pos; - for (pos = skinElementVec.begin(); pos != skinElementVec.end(); pos++) - { - structureElement->appendChild(*pos); - } - for (pos = borderElementVec.begin(); pos != borderElementVec.end(); pos++) - { - structureElement->appendChild(*pos); - } + for(auto pos = skinElementVec.cbegin(); + pos != skinElementVec.cend(); ++pos) + { + structureElement->appendChild(*pos); + } + for(auto pos = borderElementVec.cbegin(); + pos != borderElementVec.cend(); ++pos) + { + structureElement->appendChild(*pos); + } } +// -------------------------------------------------------------------- void G4GDMLWriteStructure::StructureWrite(xercesc::DOMElement* gdmlElement) { #ifdef G4VERBOSE - G4cout << "G4GDML: Writing structure..." << G4endl; + G4cout << "G4GDML: Writing structure..." << G4endl; #endif - // filling the list of phys volumes that are parts of assemblies + // filling the list of phys volumes that are parts of assemblies - G4AssemblyStore* assemblies = G4AssemblyStore::GetInstance(); + G4AssemblyStore* assemblies = G4AssemblyStore::GetInstance(); - for(G4AssemblyStore::iterator it=assemblies->begin(); it!=assemblies->end(); it++) - { - - std::vector::iterator vit = (*it)->GetVolumesIterator(); - - for (size_t i5=0; i5<(*it)->TotalImprintedVolumes(); i5++) - { - G4String pvname = (*vit)->GetName(); - std::size_t pos = pvname.find("_impr_") + 6; - G4String impID = pvname.substr(pos); - - pos = impID.find("_"); - impID = impID.substr(0, pos); - - assemblyVolMap[*vit] = (*it)->GetAssemblyID(); - imprintsMap[*vit] = std::atoi(impID.c_str()); - vit++; - } - } - - structureElement = NewElement("structure"); - gdmlElement->appendChild(structureElement); + for(auto it = assemblies->cbegin(); it != assemblies->cend(); ++it) + { + auto vit = (*it)->GetVolumesIterator(); + + for(std::size_t i5 = 0; i5 < (*it)->TotalImprintedVolumes(); ++i5) + { + G4String pvname = (*vit)->GetName(); + std::size_t pos = pvname.find("_impr_") + 6; + G4String impID = pvname.substr(pos); + + pos = impID.find("_"); + impID = impID.substr(0, pos); + + assemblyVolMap[*vit] = (*it)->GetAssemblyID(); + imprintsMap[*vit] = std::atoi(impID.c_str()); + ++vit; + } + } + + structureElement = NewElement("structure"); + gdmlElement->appendChild(structureElement); } -G4Transform3D G4GDMLWriteStructure:: -TraverseVolumeTree(const G4LogicalVolume* const volumePtr, const G4int depth) +// -------------------------------------------------------------------- +G4Transform3D G4GDMLWriteStructure::TraverseVolumeTree( + const G4LogicalVolume* const volumePtr, const G4int depth) { - if (VolumeMap().find(volumePtr) != VolumeMap().end()) - { - return VolumeMap()[volumePtr]; // Volume is already processed - } - - G4VSolid* solidPtr = volumePtr->GetSolid(); - G4Transform3D R,invR; - G4int trans=0; + if(VolumeMap().find(volumePtr) != VolumeMap().cend()) + { + return VolumeMap()[volumePtr]; // Volume is already processed + } - std::map::iterator auxiter; + G4VSolid* solidPtr = volumePtr->GetSolid(); + G4Transform3D R, invR; + G4int trans = 0; - levelNo++; + std::map::iterator auxiter; - while (true) // Solve possible displacement/reflection - { // of the referenced solid! - if (trans>maxTransforms) + ++levelNo; + + while(true) // Solve possible displacement/reflection + { // of the referenced solid! + if(trans > maxTransforms) + { + G4String ErrorMessage = "Referenced solid in volume '" + + volumePtr->GetName() + + "' was displaced/reflected too many times!"; + G4Exception("G4GDMLWriteStructure::TraverseVolumeTree()", "InvalidSetup", + FatalException, ErrorMessage); + } + + if(G4ReflectedSolid* refl = dynamic_cast(solidPtr)) + { + R = R * refl->GetTransform3D(); + solidPtr = refl->GetConstituentMovedSolid(); + ++trans; + continue; + } + + if(G4DisplacedSolid* disp = dynamic_cast(solidPtr)) + { + R = R * G4Transform3D(disp->GetObjectRotation(), + disp->GetObjectTranslation()); + solidPtr = disp->GetConstituentMovedSolid(); + ++trans; + continue; + } + + break; + } + + // check if it is a reflected volume + G4LogicalVolume* tmplv = const_cast(volumePtr); + + if(reflFactory->IsReflected(tmplv)) + { + tmplv = reflFactory->GetConstituentLV(tmplv); + if(VolumeMap().find(tmplv) != VolumeMap().cend()) + { + return R; // Volume is already processed + } + } + + // Only compute the inverse when necessary! + // + if(trans > 0) + { + invR = R.inverse(); + } + + const G4String name = GenerateName(tmplv->GetName(), tmplv); + + G4String materialref = "NULL"; + + if(volumePtr->GetMaterial()) + { + materialref = GenerateName(volumePtr->GetMaterial()->GetName(), + volumePtr->GetMaterial()); + } + + const G4String solidref = GenerateName(solidPtr->GetName(), solidPtr); + + xercesc::DOMElement* volumeElement = NewElement("volume"); + volumeElement->setAttributeNode(NewAttribute("name", name)); + xercesc::DOMElement* materialrefElement = NewElement("materialref"); + materialrefElement->setAttributeNode(NewAttribute("ref", materialref)); + volumeElement->appendChild(materialrefElement); + xercesc::DOMElement* solidrefElement = NewElement("solidref"); + solidrefElement->setAttributeNode(NewAttribute("ref", solidref)); + volumeElement->appendChild(solidrefElement); + + G4int daughterCount = volumePtr->GetNoDaughters(); + + if(levelNo == maxLevel) // Stop exporting if reached levels limit + { + daughterCount = 0; + } + + std::vector addedImprints; + + for(G4int i = 0; i < daughterCount; ++i) // Traverse all the children! + { + const G4VPhysicalVolume* const physvol = volumePtr->GetDaughter(i); + const G4String ModuleName = Modularize(physvol, depth); + + G4Transform3D daughterR; + + if(ModuleName.empty()) // Check if subtree requested to be + { // a separate module! + daughterR = TraverseVolumeTree(physvol->GetLogicalVolume(), depth + 1); + } + else + { + G4GDMLWriteStructure writer; + daughterR = writer.Write(ModuleName, physvol->GetLogicalVolume(), + SchemaLocation, depth + 1); + } + + if(const G4PVDivision* const divisionvol = + dynamic_cast(physvol)) // Is it division? + { + if(!G4Transform3D::Identity.isNear(invR * daughterR, kRelativePrecision)) { - G4String ErrorMessage = "Referenced solid in volume '" - + volumePtr->GetName() - + "' was displaced/reflected too many times!"; + G4String ErrorMessage = "Division volume in '" + name + + "' can not be related to reflected solid!"; G4Exception("G4GDMLWriteStructure::TraverseVolumeTree()", "InvalidSetup", FatalException, ErrorMessage); } - - if (G4ReflectedSolid* refl = dynamic_cast(solidPtr)) + DivisionvolWrite(volumeElement, divisionvol); + } + else + { + if(physvol->IsParameterised()) // Is it a paramvol? { - R = R*refl->GetTransform3D(); - solidPtr = refl->GetConstituentMovedSolid(); - trans++; - continue; + if(!G4Transform3D::Identity.isNear(invR * daughterR, + kRelativePrecision)) + { + G4String ErrorMessage = "Parameterised volume in '" + name + + "' can not be related to reflected solid!"; + G4Exception("G4GDMLWriteStructure::TraverseVolumeTree()", + "InvalidSetup", FatalException, ErrorMessage); + } + ParamvolWrite(volumeElement, physvol); } - - if (G4DisplacedSolid* disp = dynamic_cast(solidPtr)) + else { - R = R*G4Transform3D(disp->GetObjectRotation(), - disp->GetObjectTranslation()); - solidPtr = disp->GetConstituentMovedSolid(); - trans++; - continue; + if(physvol->IsReplicated()) // Is it a replicavol? + { + if(!G4Transform3D::Identity.isNear(invR * daughterR, + kRelativePrecision)) + { + G4String ErrorMessage = "Replica volume in '" + name + + "' can not be related to reflected solid!"; + G4Exception("G4GDMLWriteStructure::TraverseVolumeTree()", + "InvalidSetup", FatalException, ErrorMessage); + } + ReplicavolWrite(volumeElement, physvol); + } + else // Is it a physvol or an assembly? + { + if(assemblyVolMap.find(physvol) != assemblyVolMap.cend()) + { + G4int assemblyID = assemblyVolMap[physvol]; + + G4String assemblyref = "Assembly_" + std::to_string(assemblyID); + + // here I need to retrieve the imprint ID + + G4int imprintID = imprintsMap[physvol]; + + // there are 2 steps: + // + // 1) add assembly to the structure if that has not yet been done + // (but after the constituents volumes have been added) + // + + if(std::find(addedAssemblies.cbegin(), addedAssemblies.cend(), + assemblyID) == addedAssemblies.cend()) + { + AssemblyWrite(structureElement, assemblyID); + addedAssemblies.push_back(assemblyID); + } + + // 2) add the assembly (as physical volume) to the mother volume + // (but only once), using it's original position and rotation. + // + + // here I need a check if assembly has been already added to the + // mother volume + if(std::find(addedImprints.cbegin(), addedImprints.cend(), + imprintID) == addedImprints.cend()) + { + G4String imprintname = "Imprint_" + std::to_string(imprintID); + imprintname = GenerateName(imprintname, physvol); + + // I need to get those two from the container of imprints from + // the assembly I have the imprint ID, I need to get pos and rot + // + G4Transform3D& transf = G4AssemblyStore::GetInstance() + ->GetAssembly(assemblyID) + ->GetImprintTransformation(imprintID); + + HepGeom::Scale3D scale; + HepGeom::Rotate3D rotate; + HepGeom::Translate3D translate; + + transf.getDecomposition(scale, rotate, translate); + + const G4ThreeVector scl(scale(0, 0), scale(1, 1), scale(2, 2)); + const G4ThreeVector rot = + GetAngles(rotate.getRotation().inverse()); + const G4ThreeVector pos = transf.getTranslation(); + + // here I need a normal physvol referencing to my assemblyref + + xercesc::DOMElement* physvolElement = NewElement("physvol"); + physvolElement->setAttributeNode( + NewAttribute("name", imprintname)); + + xercesc::DOMElement* volumerefElement = NewElement("volumeref"); + volumerefElement->setAttributeNode( + NewAttribute("ref", assemblyref)); + physvolElement->appendChild(volumerefElement); + + if(std::fabs(pos.x()) > kLinearPrecision || + std::fabs(pos.y()) > kLinearPrecision || + std::fabs(pos.z()) > kLinearPrecision) + { + PositionWrite(physvolElement, imprintname + "_pos", pos); + } + if(std::fabs(rot.x()) > kAngularPrecision || + std::fabs(rot.y()) > kAngularPrecision || + std::fabs(rot.z()) > kAngularPrecision) + { + RotationWrite(physvolElement, imprintname + "_rot", rot); + } + if(std::fabs(scl.x() - 1.0) > kRelativePrecision || + std::fabs(scl.y() - 1.0) > kRelativePrecision || + std::fabs(scl.z() - 1.0) > kRelativePrecision) + { + ScaleWrite(physvolElement, name + "_scl", scl); + } + + volumeElement->appendChild(physvolElement); + // + addedImprints.push_back(imprintID); + } + } + else // not part of assembly, so a normal physical volume + { + G4RotationMatrix rot; + if(physvol->GetFrameRotation() != nullptr) + { + rot = *(physvol->GetFrameRotation()); + } + G4Transform3D P(rot, physvol->GetObjectTranslation()); + + PhysvolWrite(volumeElement, physvol, invR * P * daughterR, + ModuleName); + } + } } + } + // BorderSurfaceCache(GetBorderSurface(physvol)); + GetBorderSurface(physvol); + } - break; - } + if(cexport) + { + ExportEnergyCuts(volumePtr); + } + // Add optional energy cuts - //check if it is a reflected volume - G4LogicalVolume* tmplv = const_cast(volumePtr); - - if (reflFactory->IsReflected(tmplv)) - { - tmplv = reflFactory->GetConstituentLV(tmplv); - if (VolumeMap().find(tmplv) != VolumeMap().end()) - { - return R; // Volume is already processed - } - } - - // Only compute the inverse when necessary! - // - if (trans>0) { invR = R.inverse(); } + if(sdexport) + { + ExportSD(volumePtr); + } + // Add optional SDs - const G4String name - = GenerateName(tmplv->GetName(), tmplv); + // Here write the auxiliary info + // + auxiter = auxmap.find(volumePtr); + if(auxiter != auxmap.cend()) + { + AddAuxInfo(&(auxiter->second), volumeElement); + } - G4String materialref = "NULL"; - - if(volumePtr->GetMaterial()) - { - materialref = GenerateName(volumePtr->GetMaterial()->GetName(), - volumePtr->GetMaterial()); - } - - const G4String solidref - = GenerateName(solidPtr->GetName(),solidPtr); - - xercesc::DOMElement* volumeElement = NewElement("volume"); - volumeElement->setAttributeNode(NewAttribute("name",name)); - xercesc::DOMElement* materialrefElement = NewElement("materialref"); - materialrefElement->setAttributeNode(NewAttribute("ref",materialref)); - volumeElement->appendChild(materialrefElement); - xercesc::DOMElement* solidrefElement = NewElement("solidref"); - solidrefElement->setAttributeNode(NewAttribute("ref",solidref)); - volumeElement->appendChild(solidrefElement); + structureElement->appendChild(volumeElement); + // Append the volume AFTER traversing the children so that + // the order of volumes will be correct! - G4int daughterCount = volumePtr->GetNoDaughters(); + VolumeMap()[tmplv] = R; - if (levelNo == maxLevel) // Stop exporting if reached levels limit - { - daughterCount = 0; - } + AddExtension(volumeElement, volumePtr); + // Add any possible user defined extension attached to a volume - std::vector addedImprints; - - for (G4int i=0;iGetDaughter(i); - const G4String ModuleName = Modularize(physvol,depth); - - G4Transform3D daughterR; - - if (ModuleName.empty()) // Check if subtree requested to be - { // a separate module! - daughterR = TraverseVolumeTree(physvol->GetLogicalVolume(),depth+1); - } - else - { - G4GDMLWriteStructure writer; - daughterR = writer.Write(ModuleName,physvol->GetLogicalVolume(), - SchemaLocation,depth+1); - } - - if (const G4PVDivision* const divisionvol - = dynamic_cast(physvol)) // Is it division? - { - if (!G4Transform3D::Identity.isNear(invR*daughterR,kRelativePrecision)) - { - G4String ErrorMessage = "Division volume in '" + name - + "' can not be related to reflected solid!"; - G4Exception("G4GDMLWriteStructure::TraverseVolumeTree()", - "InvalidSetup", FatalException, ErrorMessage); - } - DivisionvolWrite(volumeElement,divisionvol); - } else - if (physvol->IsParameterised()) // Is it a paramvol? - { - if (!G4Transform3D::Identity.isNear(invR*daughterR,kRelativePrecision)) - { - G4String ErrorMessage = "Parameterised volume in '" + name - + "' can not be related to reflected solid!"; - G4Exception("G4GDMLWriteStructure::TraverseVolumeTree()", - "InvalidSetup", FatalException, ErrorMessage); - } - ParamvolWrite(volumeElement,physvol); - } else - if (physvol->IsReplicated()) // Is it a replicavol? - { - if (!G4Transform3D::Identity.isNear(invR*daughterR,kRelativePrecision)) - { - G4String ErrorMessage = "Replica volume in '" + name - + "' can not be related to reflected solid!"; - G4Exception("G4GDMLWriteStructure::TraverseVolumeTree()", - "InvalidSetup", FatalException, ErrorMessage); - } - ReplicavolWrite(volumeElement,physvol); - } - else // Is it a physvol or an assembly? - { - if(assemblyVolMap.find(physvol) != assemblyVolMap.end()) - { - int assemblyID = assemblyVolMap[physvol]; - - G4String assemblyref = "Assembly_" + std::to_string(assemblyID); + AddMaterial(volumePtr->GetMaterial()); + // Add the involved materials and solids! - // here I need to retrieve the imprint ID + AddSolid(solidPtr); - G4int imprintID = imprintsMap[physvol]; + SkinSurfaceCache(GetSkinSurface(volumePtr)); - // there are 2 steps: - // - // 1) add assembly to the structure if that has not yet been done - // (but after the constituents volumes have been added) - // - - if(std::find(addedAssemblies.begin(), addedAssemblies.end(), assemblyID) == addedAssemblies.end()) - { - AssemblyWrite(structureElement, assemblyID); - addedAssemblies.push_back(assemblyID); - } - - // 2) add the assembly (as physical volume) to the mother volume (but only once), - // using it's original position and rotation. - // - - // here I need a check if assembly has been already added to the mother volume - if(std::find(addedImprints.begin(), addedImprints.end(), imprintID) == addedImprints.end()) - { - G4String imprintname = "Imprint_" + std::to_string(imprintID); - imprintname = GenerateName(imprintname, physvol); - - // I need to get those two from the container of imprints from the assembly - // I have the imprint ID, I need to get pos and rot - // - G4Transform3D& transf = - G4AssemblyStore::GetInstance()->GetAssembly(assemblyID)->GetImprintTransformation(imprintID); - - HepGeom::Scale3D scale; - HepGeom::Rotate3D rotate; - HepGeom::Translate3D translate; - - transf.getDecomposition(scale,rotate,translate); - - const G4ThreeVector scl(scale(0,0),scale(1,1),scale(2,2)); - const G4ThreeVector rot = GetAngles(rotate.getRotation().inverse()); - const G4ThreeVector pos = transf.getTranslation(); - - // here I need a normal physvol referencing to my assemblyref - - xercesc::DOMElement* physvolElement = NewElement("physvol"); - physvolElement->setAttributeNode(NewAttribute("name",imprintname)); - - xercesc::DOMElement* volumerefElement = NewElement("volumeref"); - volumerefElement->setAttributeNode(NewAttribute("ref",assemblyref)); - physvolElement->appendChild(volumerefElement); - - if (std::fabs(pos.x()) > kLinearPrecision - || std::fabs(pos.y()) > kLinearPrecision - || std::fabs(pos.z()) > kLinearPrecision) - { - PositionWrite(physvolElement,imprintname+"_pos",pos); - } - if (std::fabs(rot.x()) > kAngularPrecision - || std::fabs(rot.y()) > kAngularPrecision - || std::fabs(rot.z()) > kAngularPrecision) - { - RotationWrite(physvolElement,imprintname+"_rot",rot); - } - if (std::fabs(scl.x()-1.0) > kRelativePrecision - || std::fabs(scl.y()-1.0) > kRelativePrecision - || std::fabs(scl.z()-1.0) > kRelativePrecision) - { - ScaleWrite(physvolElement,name+"_scl",scl); - } - - volumeElement->appendChild(physvolElement); - // - addedImprints.push_back(imprintID); - } - } - else // not part of assembly, so a normal physical volume - { - G4RotationMatrix rot; - if (physvol->GetFrameRotation() != 0) - { - rot = *(physvol->GetFrameRotation()); - } - G4Transform3D P(rot,physvol->GetObjectTranslation()); - - PhysvolWrite(volumeElement,physvol,invR*P*daughterR,ModuleName); - } - } - // BorderSurfaceCache(GetBorderSurface(physvol)); - GetBorderSurface(physvol); - } - - if (cexport) { ExportEnergyCuts(volumePtr); } - // Add optional energy cuts - - if (sdexport) { ExportSD(volumePtr); } - // Add optional SDs - - // Here write the auxiliary info - // - auxiter = auxmap.find(volumePtr); - if (auxiter != auxmap.end()) - { - AddAuxInfo(&(auxiter->second), volumeElement); - } - - structureElement->appendChild(volumeElement); - // Append the volume AFTER traversing the children so that - // the order of volumes will be correct! - - VolumeMap()[tmplv] = R; - - AddExtension(volumeElement, volumePtr); - // Add any possible user defined extension attached to a volume - - AddMaterial(volumePtr->GetMaterial()); - // Add the involved materials and solids! - - AddSolid(solidPtr); - - SkinSurfaceCache(GetSkinSurface(volumePtr)); - - return R; + return R; } -void -G4GDMLWriteStructure::AddVolumeAuxiliary(G4GDMLAuxStructType myaux, - const G4LogicalVolume* const lvol) +// -------------------------------------------------------------------- +void G4GDMLWriteStructure::AddVolumeAuxiliary(G4GDMLAuxStructType myaux, + const G4LogicalVolume* const lvol) { - std::map::iterator pos = auxmap.find(lvol); + auto pos = auxmap.find(lvol); + + if(pos == auxmap.cend()) + { + auxmap[lvol] = G4GDMLAuxListType(); + } - if (pos == auxmap.end()) { auxmap[lvol] = G4GDMLAuxListType(); } - auxmap[lvol].push_back(myaux); } -void -G4GDMLWriteStructure::SetEnergyCutsExport(G4bool fcuts) +// -------------------------------------------------------------------- +void G4GDMLWriteStructure::SetEnergyCutsExport(G4bool fcuts) { cexport = fcuts; } -void -G4GDMLWriteStructure::ExportEnergyCuts(const G4LogicalVolume* const lvol) +// -------------------------------------------------------------------- +void G4GDMLWriteStructure::ExportEnergyCuts(const G4LogicalVolume* const lvol) { G4GDMLEvaluator eval; - G4ProductionCuts* pcuts = lvol->GetRegion()->GetProductionCuts(); + G4ProductionCuts* pcuts = lvol->GetRegion()->GetProductionCuts(); G4ProductionCutsTable* ctab = G4ProductionCutsTable::GetProductionCutsTable(); - G4Gamma* gamma = G4Gamma::Gamma(); - G4Electron* eminus = G4Electron::Electron(); - G4Positron* eplus = G4Positron::Positron(); - G4Proton* proton = G4Proton::Proton(); + G4Gamma* gamma = G4Gamma::Gamma(); + G4Electron* eminus = G4Electron::Electron(); + G4Positron* eplus = G4Positron::Positron(); + G4Proton* proton = G4Proton::Proton(); - G4double gamma_cut = ctab->ConvertRangeToEnergy(gamma, lvol->GetMaterial(), - pcuts->GetProductionCut("gamma")); - G4double eminus_cut = ctab->ConvertRangeToEnergy(eminus, lvol->GetMaterial(), - pcuts->GetProductionCut("e-")); - G4double eplus_cut = ctab->ConvertRangeToEnergy(eplus, lvol->GetMaterial(), - pcuts->GetProductionCut("e+")); - G4double proton_cut = ctab->ConvertRangeToEnergy(proton, lvol->GetMaterial(), - pcuts->GetProductionCut("proton")); + G4double gamma_cut = ctab->ConvertRangeToEnergy( + gamma, lvol->GetMaterial(), pcuts->GetProductionCut("gamma")); + G4double eminus_cut = ctab->ConvertRangeToEnergy( + eminus, lvol->GetMaterial(), pcuts->GetProductionCut("e-")); + G4double eplus_cut = ctab->ConvertRangeToEnergy( + eplus, lvol->GetMaterial(), pcuts->GetProductionCut("e+")); + G4double proton_cut = ctab->ConvertRangeToEnergy( + proton, lvol->GetMaterial(), pcuts->GetProductionCut("proton")); - G4GDMLAuxStructType gammainfo = {"gammaECut", - eval.ConvertToString(gamma_cut), "MeV", 0}; - G4GDMLAuxStructType eminusinfo = {"electronECut", - eval.ConvertToString(eminus_cut), "MeV", 0}; - G4GDMLAuxStructType eplusinfo = {"positronECut", - eval.ConvertToString(eplus_cut), "MeV", 0}; - G4GDMLAuxStructType protinfo = {"protonECut", - eval.ConvertToString(proton_cut), "MeV", 0}; + G4GDMLAuxStructType gammainfo = { "gammaECut", + eval.ConvertToString(gamma_cut), "MeV", 0 }; + G4GDMLAuxStructType eminusinfo = { "electronECut", + eval.ConvertToString(eminus_cut), "MeV", + 0 }; + G4GDMLAuxStructType eplusinfo = { "positronECut", + eval.ConvertToString(eplus_cut), "MeV", 0 }; + G4GDMLAuxStructType protinfo = { "protonECut", + eval.ConvertToString(proton_cut), "MeV", 0 }; AddVolumeAuxiliary(gammainfo, lvol); AddVolumeAuxiliary(eminusinfo, lvol); @@ -803,43 +874,41 @@ G4GDMLWriteStructure::ExportEnergyCuts(const G4LogicalVolume* const lvol) AddVolumeAuxiliary(protinfo, lvol); } -void -G4GDMLWriteStructure::SetSDExport(G4bool fsd) +// -------------------------------------------------------------------- +void G4GDMLWriteStructure::SetSDExport(G4bool fsd) { sdexport = fsd; } - -void -G4GDMLWriteStructure::ExportSD(const G4LogicalVolume* const lvol) +// -------------------------------------------------------------------- +void G4GDMLWriteStructure::ExportSD(const G4LogicalVolume* const lvol) { G4VSensitiveDetector* sd = lvol->GetSensitiveDetector(); - - if(sd) - { - G4String SDname = sd->GetName(); - - G4GDMLAuxStructType SDinfo = {"SensDet", SDname, "", 0}; - AddVolumeAuxiliary(SDinfo, lvol); - } + + if(sd != nullptr) + { + G4String SDname = sd->GetName(); + + G4GDMLAuxStructType SDinfo = { "SensDet", SDname, "", 0 }; + AddVolumeAuxiliary(SDinfo, lvol); + } } -G4int -G4GDMLWriteStructure::GetMaxExportLevel() const +// -------------------------------------------------------------------- +G4int G4GDMLWriteStructure::GetMaxExportLevel() const { return maxLevel; } -void -G4GDMLWriteStructure::SetMaxExportLevel(G4int level) +// -------------------------------------------------------------------- +void G4GDMLWriteStructure::SetMaxExportLevel(G4int level) { - if (level <= 0) + if(level <= 0) { - G4Exception("G4GDMLWriteStructure::TraverseVolumeTree()", - "InvalidSetup", FatalException, - "Levels to export must be greater than zero!"); + G4Exception("G4GDMLWriteStructure::TraverseVolumeTree()", "InvalidSetup", + FatalException, "Levels to export must be greater than zero!"); return; } maxLevel = level; - levelNo = 0; + levelNo = 0; } diff --git a/source/persistency/gdml/src/G4STRead.cc b/source/persistency/gdml/src/G4STRead.cc index 0bbff77e68..4757a427a3 100644 --- a/source/persistency/gdml/src/G4STRead.cc +++ b/source/persistency/gdml/src/G4STRead.cc @@ -23,12 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4STRead implementation // -// class G4STRead Implementation -// -// History: -// - Created. Zoltan Torzsok, November 2007 -// ------------------------------------------------------------------------- +// Author: Zoltan Torzsok, November 2007 +// -------------------------------------------------------------------- #include @@ -44,248 +42,276 @@ #include "G4AffineTransform.hh" #include "G4VoxelLimits.hh" +// -------------------------------------------------------------------- void G4STRead::TessellatedRead(const std::string& line) { - if (tessellatedList.size()>0) - { - tessellatedList.back()->SetSolidClosed(true); - // Finish the previous solid at first! - } + if(tessellatedList.size() > 0) + { + tessellatedList.back()->SetSolidClosed(true); + // Finish the previous solid at first! + } - std::istringstream stream(line.substr(2)); - - G4String name; - stream >> name; - - G4TessellatedSolid* tessellated = new G4TessellatedSolid(name); - volumeMap[tessellated] = - new G4LogicalVolume(tessellated, solid_material, name+"_LV" , 0, 0, 0); - tessellatedList.push_back(tessellated); + std::istringstream stream(line.substr(2)); + + G4String name; + stream >> name; + + G4TessellatedSolid* tessellated = new G4TessellatedSolid(name); + volumeMap[tessellated] = + new G4LogicalVolume(tessellated, solid_material, name + "_LV", 0, 0, 0); + tessellatedList.push_back(tessellated); #ifdef G4VERBOSE - G4cout << "G4STRead: Reading solid: " << name << G4endl; + G4cout << "G4STRead: Reading solid: " << name << G4endl; #endif } +// -------------------------------------------------------------------- void G4STRead::FacetRead(const std::string& line) { - if (tessellatedList.size()==0) - { - G4Exception("G4STRead::FacetRead()", "ReadError", FatalException, - "A solid must be defined before defining a facet!"); - } + if(tessellatedList.size() == 0) + { + G4Exception("G4STRead::FacetRead()", "ReadError", FatalException, + "A solid must be defined before defining a facet!"); + } - if (line[2]=='3') // Triangular facet - { - G4double x1,y1,z1; - G4double x2,y2,z2; - G4double x3,y3,z3; - - std::istringstream stream(line.substr(4)); - stream >> x1 >> y1 >> z1 >> x2 >> y2 >> z2 >> x3 >> y3 >> z3; - tessellatedList.back()-> - AddFacet(new G4TriangularFacet(G4ThreeVector(x1,y1,z1), - G4ThreeVector(x2,y2,z2), - G4ThreeVector(x3,y3,z3), ABSOLUTE)); - } - else if (line[2]=='4') // Quadrangular facet - { - G4double x1,y1,z1; - G4double x2,y2,z2; - G4double x3,y3,z3; - G4double x4,y4,z4; + if(line[2] == '3') // Triangular facet + { + G4double x1, y1, z1; + G4double x2, y2, z2; + G4double x3, y3, z3; - std::istringstream stream(line.substr(4)); - stream >> x1 >> y1 >> z1 >> x2 >> y2 >> z2 - >> x3 >> y3 >> z3 >> x4 >> y4 >> z4; - tessellatedList.back()-> - AddFacet(new G4QuadrangularFacet(G4ThreeVector(x1,y1,z1), - G4ThreeVector(x2,y2,z2), - G4ThreeVector(x3,y3,z3), - G4ThreeVector(x4,y4,z4), ABSOLUTE)); - } - else - { - G4Exception("G4STRead::FacetRead()", "ReadError", FatalException, - "Number of vertices per facet should be either 3 or 4!"); - } + std::istringstream stream(line.substr(4)); + stream >> x1 >> y1 >> z1 >> x2 >> y2 >> z2 >> x3 >> y3 >> z3; + tessellatedList.back()->AddFacet(new G4TriangularFacet( + G4ThreeVector(x1, y1, z1), G4ThreeVector(x2, y2, z2), + G4ThreeVector(x3, y3, z3), ABSOLUTE)); + } + else if(line[2] == '4') // Quadrangular facet + { + G4double x1, y1, z1; + G4double x2, y2, z2; + G4double x3, y3, z3; + G4double x4, y4, z4; + + std::istringstream stream(line.substr(4)); + stream >> x1 >> y1 >> z1 >> x2 >> y2 >> z2 >> x3 >> y3 >> z3 >> x4 >> y4 >> + z4; + tessellatedList.back()->AddFacet(new G4QuadrangularFacet( + G4ThreeVector(x1, y1, z1), G4ThreeVector(x2, y2, z2), + G4ThreeVector(x3, y3, z3), G4ThreeVector(x4, y4, z4), ABSOLUTE)); + } + else + { + G4Exception("G4STRead::FacetRead()", "ReadError", FatalException, + "Number of vertices per facet should be either 3 or 4!"); + } } +// -------------------------------------------------------------------- void G4STRead::PhysvolRead(const std::string& line) { - G4int level; - G4String name; - G4double r1,r2,r3; - G4double r4,r5,r6; - G4double r7,r8,r9; - G4double pX,pY,pZ; - G4double n1,n2,n3,n4,n5; + G4int level; + G4String name; + G4double r1, r2, r3; + G4double r4, r5, r6; + G4double r7, r8, r9; + G4double pX, pY, pZ; + G4double n1, n2, n3, n4, n5; - std::istringstream stream(line.substr(2)); - stream >> level >> name >> r1 >> r2 >> r3 >> n1 >> r4 >> r5 >> r6 - >> n2 >> r7 >> r8 >> r9 >> n3 >> pX >> pY >> pZ >> n4 >> n5; - std::string::size_type idx = name.rfind("_"); - if (idx!=std::string::npos) - { - name.resize(idx); - } - else - { - G4Exception("G4STRead::PhysvolRead()", "ReadError", - FatalException, "Invalid input stream!"); - return; - } + std::istringstream stream(line.substr(2)); + stream >> level >> name >> r1 >> r2 >> r3 >> n1 >> r4 >> r5 >> r6 >> n2 >> + r7 >> r8 >> r9 >> n3 >> pX >> pY >> pZ >> n4 >> n5; + std::string::size_type idx = name.rfind("_"); + if(idx != std::string::npos) + { + name.resize(idx); + } + else + { + G4Exception("G4STRead::PhysvolRead()", "ReadError", FatalException, + "Invalid input stream!"); + return; + } - G4cout << "G4STRead: Placing tessellated solid: " << name << G4endl; + G4cout << "G4STRead: Placing tessellated solid: " << name << G4endl; - G4TessellatedSolid* tessellated = 0; + G4TessellatedSolid* tessellated = nullptr; - for (size_t i=0; iGetName() == G4String(name)) - { - tessellated = tessellatedList[i]; - break; - } - } + for(std::size_t i = 0; i < tessellatedList.size(); ++i) + { // Find the volume for this physvol! + if(tessellatedList[i]->GetName() == G4String(name)) + { + tessellated = tessellatedList[i]; + break; + } + } - if (tessellated == 0) - { - G4String error_msg = "Referenced solid '" + name + "' not found!"; - G4Exception("G4STRead::PhysvolRead()", "ReadError", - FatalException, error_msg); - } - if (volumeMap.find(tessellated) == volumeMap.end()) - { - G4String error_msg = "Referenced solid '" + name - + "' is not associated with a logical volume!"; - G4Exception("G4STRead::PhysvolRead()", "InvalidSetup", - FatalException, error_msg); - } - const G4RotationMatrix rot(G4ThreeVector(r1,r2,r3), - G4ThreeVector(r4,r5,r6), - G4ThreeVector(r7,r8,r9)); - const G4ThreeVector pos(pX,pY,pZ); + if(tessellated == nullptr) + { + G4String error_msg = "Referenced solid '" + name + "' not found!"; + G4Exception("G4STRead::PhysvolRead()", "ReadError", FatalException, + error_msg); + } + if(volumeMap.find(tessellated) == volumeMap.cend()) + { + G4String error_msg = "Referenced solid '" + name + + "' is not associated with a logical volume!"; + G4Exception("G4STRead::PhysvolRead()", "InvalidSetup", FatalException, + error_msg); + } + const G4RotationMatrix rot(G4ThreeVector(r1, r2, r3), + G4ThreeVector(r4, r5, r6), + G4ThreeVector(r7, r8, r9)); + const G4ThreeVector pos(pX, pY, pZ); - new G4PVPlacement(G4Transform3D(rot.inverse(),pos), - volumeMap[tessellated], name+"_PV", world_volume, 0, 0); - // Note: INVERSE of rotation is needed!!! + new G4PVPlacement(G4Transform3D(rot.inverse(), pos), volumeMap[tessellated], + name + "_PV", world_volume, 0, 0); + // Note: INVERSE of rotation is needed!!! - G4double minx,miny,minz; - G4double maxx,maxy,maxz; - const G4VoxelLimits limits; + G4double minx, miny, minz; + G4double maxx, maxy, maxz; + const G4VoxelLimits limits; - tessellated->CalculateExtent(kXAxis,limits, - G4AffineTransform(rot,pos),minx,maxx); - tessellated->CalculateExtent(kYAxis,limits, - G4AffineTransform(rot,pos),miny,maxy); - tessellated->CalculateExtent(kZAxis,limits, - G4AffineTransform(rot,pos),minz,maxz); + tessellated->CalculateExtent(kXAxis, limits, G4AffineTransform(rot, pos), + minx, maxx); + tessellated->CalculateExtent(kYAxis, limits, G4AffineTransform(rot, pos), + miny, maxy); + tessellated->CalculateExtent(kZAxis, limits, G4AffineTransform(rot, pos), + minz, maxz); - if (world_extent.x() < std::fabs(minx)) - { world_extent.setX(std::fabs(minx)); } - if (world_extent.y() < std::fabs(miny)) - { world_extent.setY(std::fabs(miny)); } - if (world_extent.z() < std::fabs(minz)) - { world_extent.setZ(std::fabs(minz)); } - if (world_extent.x() < std::fabs(maxx)) - { world_extent.setX(std::fabs(maxx)); } - if (world_extent.y() < std::fabs(maxy)) - { world_extent.setY(std::fabs(maxy)); } - if (world_extent.z() < std::fabs(maxz)) - { world_extent.setZ(std::fabs(maxz)); } + if(world_extent.x() < std::fabs(minx)) + { + world_extent.setX(std::fabs(minx)); + } + if(world_extent.y() < std::fabs(miny)) + { + world_extent.setY(std::fabs(miny)); + } + if(world_extent.z() < std::fabs(minz)) + { + world_extent.setZ(std::fabs(minz)); + } + if(world_extent.x() < std::fabs(maxx)) + { + world_extent.setX(std::fabs(maxx)); + } + if(world_extent.y() < std::fabs(maxy)) + { + world_extent.setY(std::fabs(maxy)); + } + if(world_extent.z() < std::fabs(maxz)) + { + world_extent.setZ(std::fabs(maxz)); + } } +// -------------------------------------------------------------------- void G4STRead::ReadGeom(const G4String& name) { #ifdef G4VERBOSE - G4cout << "G4STRead: Reading '" << name << "'..." << G4endl; + G4cout << "G4STRead: Reading '" << name << "'..." << G4endl; #endif - std::ifstream GeomFile(name); - - if (!GeomFile) - { - G4String error_msg = "Cannot open file: " + name; - G4Exception("G4STRead::ReadGeom()", "ReadError", - FatalException, error_msg); - } + std::ifstream GeomFile(name); - tessellatedList.clear(); - volumeMap.clear(); - std::string line; - - while (getline(GeomFile,line)) - { - if (line[0] == 'f') { TessellatedRead(line); } else - if (line[0] == 'p') { FacetRead(line); } - } + if(!GeomFile) + { + G4String error_msg = "Cannot open file: " + name; + G4Exception("G4STRead::ReadGeom()", "ReadError", FatalException, error_msg); + } - if (tessellatedList.size()>0) // Finish the last solid! - { - tessellatedList.back()->SetSolidClosed(true); - } + tessellatedList.clear(); + volumeMap.clear(); + std::string line; - G4cout << "G4STRead: Reading '" << name << "' done." << G4endl; + while(getline(GeomFile, line)) + { + if(line[0] == 'f') + { + TessellatedRead(line); + } + else if(line[0] == 'p') + { + FacetRead(line); + } + } + + if(tessellatedList.size() > 0) // Finish the last solid! + { + tessellatedList.back()->SetSolidClosed(true); + } + + G4cout << "G4STRead: Reading '" << name << "' done." << G4endl; } +// -------------------------------------------------------------------- void G4STRead::ReadTree(const G4String& name) { #ifdef G4VERBOSE - G4cout << "G4STRead: Reading '" << name << "'..." << G4endl; + G4cout << "G4STRead: Reading '" << name << "'..." << G4endl; #endif - std::ifstream TreeFile(name); + std::ifstream TreeFile(name); - if (!TreeFile) - { - G4String error_msg = "Cannot open file: " + name; - G4Exception("G4STRead::ReadTree()", "ReadError", - FatalException, error_msg); - } + if(!TreeFile) + { + G4String error_msg = "Cannot open file: " + name; + G4Exception("G4STRead::ReadTree()", "ReadError", FatalException, error_msg); + } - std::string line; - - while (getline(TreeFile,line)) - { - if (line[0] == 'g') { PhysvolRead(line); } - } + std::string line; - G4cout << "G4STRead: Reading '" << name << "' done." << G4endl; + while(getline(TreeFile, line)) + { + if(line[0] == 'g') + { + PhysvolRead(line); + } + } + + G4cout << "G4STRead: Reading '" << name << "' done." << G4endl; } -G4LogicalVolume* -G4STRead::Read(const G4String& name, G4Material* mediumMaterial, - G4Material* solidMaterial) +// -------------------------------------------------------------------- +G4LogicalVolume* G4STRead::Read(const G4String& name, + G4Material* mediumMaterial, + G4Material* solidMaterial) { - if (mediumMaterial == 0) - { - G4Exception("G4STRead::Read()", "InvalidSetup", FatalException, - "Pointer to medium material is not valid!"); - } - if (solidMaterial == 0) - { - G4Exception("G4STRead::Read()", "InvalidSetup", FatalException, - "Pointer to solid material is not valid!"); - } + if(mediumMaterial == nullptr) + { + G4Exception("G4STRead::Read()", "InvalidSetup", FatalException, + "Pointer to medium material is not valid!"); + } + if(solidMaterial == nullptr) + { + G4Exception("G4STRead::Read()", "InvalidSetup", FatalException, + "Pointer to solid material is not valid!"); + } - solid_material = solidMaterial; + solid_material = solidMaterial; - world_box = new G4Box("TessellatedWorldBox",kInfinity,kInfinity,kInfinity); - // We don't know the extent of the world yet! - world_volume = new G4LogicalVolume(world_box, mediumMaterial, - "TessellatedWorldLV", 0, 0, 0); - world_extent = G4ThreeVector(0,0,0); + world_box = new G4Box("TessellatedWorldBox", kInfinity, kInfinity, kInfinity); + // We don't know the extent of the world yet! + world_volume = new G4LogicalVolume(world_box, mediumMaterial, + "TessellatedWorldLV", 0, 0, 0); + world_extent = G4ThreeVector(0, 0, 0); - ReadGeom(name+".geom"); - ReadTree(name+".tree"); + ReadGeom(name + ".geom"); + ReadTree(name + ".tree"); - // Now setting the world extent ... - // - if (world_box->GetXHalfLength() > world_extent.x()) - { world_box->SetXHalfLength(world_extent.x()); } - if (world_box->GetYHalfLength() > world_extent.y()) - { world_box->SetYHalfLength(world_extent.y()); } - if (world_box->GetZHalfLength() > world_extent.z()) - { world_box->SetZHalfLength(world_extent.z()); } + // Now setting the world extent ... + // + if(world_box->GetXHalfLength() > world_extent.x()) + { + world_box->SetXHalfLength(world_extent.x()); + } + if(world_box->GetYHalfLength() > world_extent.y()) + { + world_box->SetYHalfLength(world_extent.y()); + } + if(world_box->GetZHalfLength() > world_extent.z()) + { + world_box->SetZHalfLength(world_extent.z()); + } - return world_volume; + return world_volume; } diff --git a/source/persistency/mctruth/History b/source/persistency/mctruth/History index fe070d586e..2dce72c253 100644 --- a/source/persistency/mctruth/History +++ b/source/persistency/mctruth/History @@ -15,6 +15,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +8 October, 20 G.Cosmo (mctruth-V10-06-01) +- Minor c++11 review. Code cleanup and formatting. Use of G4 types. + 11 December, 19 B.Morgan (mctruth-V10-06-00) - Cleanup CMake build, removing obsolete granular library options and explicit include_directories. diff --git a/source/persistency/mctruth/include/G4DCIOcatalog.hh b/source/persistency/mctruth/include/G4DCIOcatalog.hh index 95f72abcbf..8f6915288a 100644 --- a/source/persistency/mctruth/include/G4DCIOcatalog.hh +++ b/source/persistency/mctruth/include/G4DCIOcatalog.hh @@ -23,13 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4DCIOcatalog.hh +// G4DCIOcatalog // -// History: -// '01.09.12 Youhei Morita Initial creation +// Class Description: +// +// Catalog for the I/O manager of digits collection for each detector -#ifndef DCIO_CATALOG_HH -#define DCIO_CATALOG_HH 1 +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- +#ifndef G4DCIOCATALOG_HH +#define G4DCIOCATALOG_HH 1 #include #include "G4Types.hh" @@ -37,63 +40,60 @@ class G4VDCIOentry; -typedef std::map > DCIOmap; - -typedef std::map > DCIOstore; - -// Class Description: -// Catalog for the I/O manager of digits collection for each detector. +using DCIOmap = std::map>; +using DCIOstore = std::map>; class G4DCIOcatalog { - public: // With description - G4DCIOcatalog(); + public: + + G4DCIOcatalog(); // Constructor - virtual ~G4DCIOcatalog() {}; + virtual ~G4DCIOcatalog() {} // Destructor - public: // With description - static G4DCIOcatalog* GetDCIOcatalog(); + static G4DCIOcatalog* GetDCIOcatalog(); // Construct G4DCIOcatalog and returns the pointer - void SetVerboseLevel(int v) { m_verbose = v; }; - // Set verbose level. + void SetVerboseLevel(int v) { m_verbose = v; } + // Set verbose level - void RegisterEntry(G4VDCIOentry* d); + void RegisterEntry(G4VDCIOentry* d); // Register I/O manager entry - void RegisterDCIOmanager(G4VPDigitsCollectionIO* d); + void RegisterDCIOmanager(G4VPDigitsCollectionIO* d); // Register I/O manager - G4VDCIOentry* GetEntry(std::string name); + G4VDCIOentry* GetEntry(const G4String& name); // Returns the I/O manager entry - G4VPDigitsCollectionIO* GetDCIOmanager(std::string name); + G4VPDigitsCollectionIO* GetDCIOmanager(const G4String& name); // Returns the registered I/O manager entry - void PrintEntries(); + void PrintEntries(); // Prints the list of I/O manager entries - std::string CurrentDCIOmanager(); + G4String CurrentDCIOmanager(); // Returns the list of I/O managers - void PrintDCIOmanager(); + void PrintDCIOmanager(); // Prints the list of I/O managers - size_t NumberOfDCIOmanager() { return theStore.size(); }; - // Returns the number of registered I/O managers. + std::size_t NumberOfDCIOmanager() { return theStore.size(); } + // Returns the number of registered I/O managers - G4VPDigitsCollectionIO* GetDCIOmanager(int n); + G4VPDigitsCollectionIO* GetDCIOmanager(G4int n); // Returns the n-th registered I/O manager entry - private: - int m_verbose; - static G4ThreadLocal G4DCIOcatalog* f_thePointer; - DCIOmap theCatalog; - DCIOstore theStore; + private: -}; // End of class G4DCIOcatalog + G4int m_verbose = 0; + static G4ThreadLocal G4DCIOcatalog* f_thePointer; + DCIOmap theCatalog; + DCIOstore theStore; +}; #endif - diff --git a/source/persistency/mctruth/include/G4DCIOentryT.hh b/source/persistency/mctruth/include/G4DCIOentryT.hh index b78300c741..f5975d77ed 100644 --- a/source/persistency/mctruth/include/G4DCIOentryT.hh +++ b/source/persistency/mctruth/include/G4DCIOentryT.hh @@ -25,11 +25,14 @@ // // File: G4DCIOentryT.hh // -// History: -// '01.09.12 Youhei Morita Initial creation +// Class Description: +// +// Template class of DigitsCollection I/O Manager for late binding -#ifndef DCIO_ENTRY_T_HH -#define DCIO_ENTRY_T_HH 1 +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- +#ifndef G4DCIOENTRYT_HH +#define G4DCIOENTRYT_HH 1 #include #include "G4Types.hh" @@ -38,50 +41,53 @@ // Class inherited: #include "G4VDCIOentry.hh" -// Class Description: -// Template class of DigitsCollection I/O Manager for late binding - -template class G4DCIOentryT - : public G4VDCIOentry +template +class G4DCIOentryT : public G4VDCIOentry { - public: // With description - G4DCIOentryT(std::string n) - : G4VDCIOentry(n), f_manager(0) + public: + + G4DCIOentryT(std::string n) : G4VDCIOentry(n) + { + if(m_verbose > 2) { - if ( m_verbose > 2 ) { - G4cout << "G4DCIOentryT: Registering DigitsCollection IO manager" - << " for \"" << n << "\"" << G4endl; - } + G4cout << "G4DCIOentryT: Registering DigitsCollection IO manager" + << " for \"" << n << "\"" << G4endl; } + } // Constructor - ~G4DCIOentryT() {}; + ~G4DCIOentryT() {} // Destructor - public: // With description - void CreateDCIOmanager(std::string detName, std::string colName) + void CreateDCIOmanager(const G4String& detName, const G4String& colName) + { + if(f_manager == nullptr) { - if ( f_manager == 0 ) { - f_manager = new T( detName, colName ); - if ( m_verbose > 2 ) { - G4cout << "G4DCIOentryT: Constructing DigitsCollection IO manager" - << " for \"" << detName << "\" " << f_manager << G4endl; - } - G4DCIOcatalog::GetDCIOcatalog()->RegisterDCIOmanager(f_manager); - if ( m_verbose > 2 ) { - G4DCIOcatalog::GetDCIOcatalog()->PrintDCIOmanager(); - } + f_manager = new T(detName, colName); + if(m_verbose > 2) + { + G4cout << "G4DCIOentryT: Constructing DigitsCollection IO manager" + << " for \"" << detName << "\" " << f_manager << G4endl; + } + G4DCIOcatalog::GetDCIOcatalog()->RegisterDCIOmanager(f_manager); + if(m_verbose > 2) + { + G4DCIOcatalog::GetDCIOcatalog()->PrintDCIOmanager(); } } + } // Create a new digits collection I/O manager - void DeleteDCIOmanager() { if (f_manager!=0) delete f_manager; }; + void DeleteDCIOmanager() + { + if(f_manager != nullptr) { delete f_manager; } + } // Delete a digits collection I/O manager - private: - G4VPDigitsCollectionIO* f_manager; + private: -}; // End of class G4DCIOentryT + G4VPDigitsCollectionIO* f_manager = nullptr; + +}; #endif - diff --git a/source/persistency/mctruth/include/G4FileUtilities.hh b/source/persistency/mctruth/include/G4FileUtilities.hh index 22d444d530..b121268b23 100644 --- a/source/persistency/mctruth/include/G4FileUtilities.hh +++ b/source/persistency/mctruth/include/G4FileUtilities.hh @@ -23,15 +23,19 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4FileUtilities.hh +// G4FileUtilities // -// History: -// 01.08.24 Youhei Morita Initial creation +// Class Description: +// +// File utilities to access files with POSIX interface -#ifndef FILE_UTILITIES_HH -#define FILE_UTILITIES_HH 1 +// Author: Youhei Morita, 24.08.2001 +// -------------------------------------------------------------------- +#ifndef G4FILE_UTILITIES_HH +#define G4FILE_UTILITIES_HH 1 #include "G4Types.hh" +#include "G4String.hh" #include #include @@ -42,39 +46,34 @@ #include #include - -// Class Description: -// File utilities to access files with POSIX interface. - class G4FileUtilities { - public: // With description - G4FileUtilities(); + public: + + G4FileUtilities(); // Constructor - ~G4FileUtilities(); + ~G4FileUtilities(); // Destructor - public: // With description - G4bool FileExists(const std::string file); - // checks if the "file" exists. returns true if it does. + G4bool FileExists(const G4String& file); + // checks if the "file" exists. returns true if it does - std::string StrErrNo() const { return ::strerror(errno); }; - // returns the error message of the last system call as string. + std::string StrErrNo() const { return ::strerror(errno); } + // returns the error message of the last system call as string - G4int Shell(std::string str) { return ::system(str.c_str()); }; - // execute the shell command. returns zero if success. + G4int Shell(const G4String& str) { return ::system(str.c_str()); } + // executes the shell command. returns zero if success - G4int CopyFile(const std::string srcFile, const std::string dstFile); - // copies the "srcFile" to "dstFile". returns zero if success. + G4int CopyFile(const G4String& srcFile, const G4String& dstFile); + // copies the "srcFile" to "dstFile". returns zero if success - G4int DeleteFile(const std::string file, const std::string option); - // deletes the "file" with the "option". returns zero if success. + G4int DeleteFile(const G4String& file, const G4String& option); + // deletes the "file" with the "option". returns zero if success - std::string GetEnv(const std::string env) { return ::getenv(env.c_str()); }; - // retuns the value of environment variable as string. + std::string GetEnv(const G4String& env) { return ::getenv(env.c_str()); } + // retuns the value of environment variable as string -}; // End of class G4FileUtilities +}; #endif - diff --git a/source/persistency/mctruth/include/G4HCIOcatalog.hh b/source/persistency/mctruth/include/G4HCIOcatalog.hh index a2059aff4a..5a452e909a 100644 --- a/source/persistency/mctruth/include/G4HCIOcatalog.hh +++ b/source/persistency/mctruth/include/G4HCIOcatalog.hh @@ -23,77 +23,78 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4HCIOcatalog.hh +// G4HCIOcatalog // -// History: -// '01.09.12 Youhei Morita Initial creation +// Class Description: +// +// Catalog for the I/O manager of hits collection for each detector. -#ifndef HCIO_CATALOG_HH -#define HCIO_CATALOG_HH 1 +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- +#ifndef G4HCIOCATALOG_HH +#define G4HCIOCATALOG_HH 1 #include #include "G4Types.hh" +#include "G4String.hh" #include "G4VPHitsCollectionIO.hh" class G4VHCIOentry; -typedef std::map > HCIOmap; +using HCIOmap = std::map>; -typedef std::map > HCIOstore; - -// Class Description: -// Catalog for the I/O manager of hits collection for each detector. +using HCIOstore = std::map>; class G4HCIOcatalog { - public: // With description - G4HCIOcatalog(); + public: + + G4HCIOcatalog(); // Constructor - virtual ~G4HCIOcatalog() {}; + virtual ~G4HCIOcatalog() {} // Destructor - public: // With description - static G4HCIOcatalog* GetHCIOcatalog(); + static G4HCIOcatalog* GetHCIOcatalog(); // Construct G4HCIOcatalog and returns the pointer - void SetVerboseLevel(int v) { m_verbose = v; }; - // Set verbose level. + void SetVerboseLevel(G4int v) { m_verbose = v; } + // Set verbose level - void RegisterEntry(G4VHCIOentry* d); + void RegisterEntry(G4VHCIOentry* d); // Register I/O manager entry - void RegisterHCIOmanager(G4VPHitsCollectionIO* d); + void RegisterHCIOmanager(G4VPHitsCollectionIO* d); // Register I/O manager - G4VHCIOentry* GetEntry(std::string name); + G4VHCIOentry* GetEntry(const G4String& name); // Returns the I/O manager entry - G4VPHitsCollectionIO* GetHCIOmanager(std::string name); + G4VPHitsCollectionIO* GetHCIOmanager(const G4String& name); // Returns the registered I/O manager entry - void PrintEntries(); + void PrintEntries(); // Prints the list of I/O manager entries - std::string CurrentHCIOmanager(); + G4String CurrentHCIOmanager(); // Returns the list of I/O managers - void PrintHCIOmanager(); + void PrintHCIOmanager(); // Prints the list of I/O managers - size_t NumberOfHCIOmanager() { return theStore.size(); }; + std::size_t NumberOfHCIOmanager() { return theStore.size(); } // Returns the number of registered I/O managers. - G4VPHitsCollectionIO* GetHCIOmanager(int n); + G4VPHitsCollectionIO* GetHCIOmanager(G4int n); // Returns the n-th registered I/O manager entry - private: - int m_verbose; - static G4ThreadLocal G4HCIOcatalog* f_thePointer; - HCIOmap theCatalog; - HCIOstore theStore; + private: -}; // End of class G4HCIOcatalog + G4int m_verbose = 0; + static G4ThreadLocal G4HCIOcatalog* f_thePointer; + HCIOmap theCatalog; + HCIOstore theStore; +}; #endif - diff --git a/source/persistency/mctruth/include/G4HCIOentryT.hh b/source/persistency/mctruth/include/G4HCIOentryT.hh index 3eaf3ffb72..4a147a6293 100644 --- a/source/persistency/mctruth/include/G4HCIOentryT.hh +++ b/source/persistency/mctruth/include/G4HCIOentryT.hh @@ -23,65 +23,70 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4HCIOentryT.hh +// G4HCIOentryT // -// History: -// '01.09.12 Youhei Morita Initial creation +// Class Description: +// +// Template class of HitsCollection I/O Manager for late binding. -#ifndef HCIO_ENTRY_T_HH -#define HCIO_ENTRY_T_HH 1 +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- +#ifndef G4HCIOENTRYT_HH +#define G4HCIOENTRYT_HH 1 #include #include "G4Types.hh" #include "G4VPHitsCollectionIO.hh" -// Class inherited: #include "G4VHCIOentry.hh" -// Class Description: -// Template class of HitsCollection I/O Manager for late binding - -template class G4HCIOentryT - : public G4VHCIOentry +template +class G4HCIOentryT : public G4VHCIOentry { - public: // With description - G4HCIOentryT(std::string n) - : G4VHCIOentry(n), f_manager(0) + public: + + G4HCIOentryT(const G4String& n) : G4VHCIOentry(n) + { + if(m_verbose > 2) { - if ( m_verbose > 2 ) { - G4cout << "G4HCIOentryT: Registering HitsCollection IO manager" - << " for \"" << n << "\"" << G4endl; - } + G4cout << "G4HCIOentryT: Registering HitsCollection IO manager" + << " for \"" << n << "\"" << G4endl; } + } // Constructor - ~G4HCIOentryT() {}; + ~G4HCIOentryT() {} // Destructor - public: // With description - void CreateHCIOmanager(std::string detName, std::string colName) + void CreateHCIOmanager(const G4String& detName, const G4String& colName) + { + if(f_manager == nullptr) { - if ( f_manager == 0 ) { - f_manager = new T( detName, colName ); - if ( m_verbose > 2 ) { - G4cout << "G4HCIOentryT: Constructing HitsCollection IO manager" - << " for \"" << detName << "\" " << f_manager << G4endl; - } - G4HCIOcatalog::GetHCIOcatalog()->RegisterHCIOmanager(f_manager); - if ( m_verbose > 2 ) { - G4HCIOcatalog::GetHCIOcatalog()->PrintHCIOmanager(); - } + f_manager = new T(detName, colName); + if(m_verbose > 2) + { + G4cout << "G4HCIOentryT: Constructing HitsCollection IO manager" + << " for \"" << detName << "\" " << f_manager << G4endl; + } + G4HCIOcatalog::GetHCIOcatalog()->RegisterHCIOmanager(f_manager); + if(m_verbose > 2) + { + G4HCIOcatalog::GetHCIOcatalog()->PrintHCIOmanager(); } } + } // Create a new hits collection I/O manager - void DeleteHCIOmanager() { if (f_manager!=0) delete f_manager; }; + void DeleteHCIOmanager() + { + if(f_manager != nullptr) + delete f_manager; + } // Delete a hits collection I/O manager - private: - G4VPHitsCollectionIO* f_manager; + private: -}; // End of class G4HCIOentryT + G4VPHitsCollectionIO* f_manager = nullptr; +}; #endif - diff --git a/source/persistency/mctruth/include/G4MCTEvent.hh b/source/persistency/mctruth/include/G4MCTEvent.hh index c110c15d3d..1e33db36a0 100644 --- a/source/persistency/mctruth/include/G4MCTEvent.hh +++ b/source/persistency/mctruth/include/G4MCTEvent.hh @@ -23,114 +23,140 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// G4MCTEvent.hh -// -// ==================================================================== -#ifndef MCT_EVENT_H -#define MCT_EVENT_H +// G4MCTEvent + +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- +#ifndef G4MCTEVENT_HH +#define G4MCTEVENT_HH 1 -#include "G4Types.hh" #include #include + +#include "G4Types.hh" #include "G4MCTGenParticle.hh" - -// ==================================================================== -// -// class definition -// -// ==================================================================== + class G4MCTGenEvent; class G4MCTSimEvent; class G4MCTSimParticle; -typedef std::map MCTGen2SimParticleMap; -typedef std::map MCTSim2GenParticleMap; +using MCTGen2SimParticleMap = std::map; +using MCTSim2GenParticleMap = std::map; -class G4MCTEvent { -protected: - int eventNumber; - G4MCTGenEvent* genEvent; - G4MCTSimEvent* simEvent; +class G4MCTEvent +{ + public: - // primary table (bidirectional) - MCTGen2SimParticleMap gen2simParticleMap; - MCTSim2GenParticleMap sim2genParticleMap; + G4MCTEvent(); + virtual ~G4MCTEvent(); -public: - G4MCTEvent(); - virtual ~G4MCTEvent(); - - // copy constructor and assignment operator - G4MCTEvent(const G4MCTEvent& right); - const G4MCTEvent& operator=(const G4MCTEvent& right); + inline G4MCTEvent(const G4MCTEvent& right); + inline G4MCTEvent& operator=(const G4MCTEvent& right); + // copy constructor and assignment operator - // set/get functions - void SetEventNumber(int n); - int GetEventNumber() const; + inline void SetEventNumber(G4int n); + inline G4int GetEventNumber() const; + // set/get functions - G4MCTGenEvent* GetGenEvent() const; - G4MCTSimEvent* GetSimEvent() const; + inline G4MCTGenEvent* GetGenEvent() const; + inline G4MCTSimEvent* GetSimEvent() const; - // methods... - int GetNofPrimaries() const; - G4MCTSimParticle* GetSimParticle(const G4MCTGenParticle& genpart) const; - G4MCTGenParticle GetGenParticle(const G4MCTSimParticle* simpart) const; - int AddPrimaryPair(const G4MCTGenParticle& genp, - const G4MCTSimParticle* simp); - void ClearEvent(); - void Print(std::ostream& ostr= std::cout) const; + inline G4int GetNofPrimaries() const; + G4MCTSimParticle* GetSimParticle(const G4MCTGenParticle& genpart) const; + G4MCTGenParticle GetGenParticle(const G4MCTSimParticle* simpart) const; + G4int AddPrimaryPair(const G4MCTGenParticle& genp, + const G4MCTSimParticle* simp); + void ClearEvent(); + void Print(std::ostream& ostr = std::cout) const; - // iterators - typedef MCTGen2SimParticleMap::const_iterator genprimary_const_iterator; - genprimary_const_iterator genprimaries_begin() const; - genprimary_const_iterator genprimaries_end() const; - - typedef MCTSim2GenParticleMap::const_iterator simprimary_const_iterator; - simprimary_const_iterator simprimaries_begin() const; - simprimary_const_iterator simprimaries_end() const; + // iterators + + using genprimary_const_iterator = MCTGen2SimParticleMap::const_iterator; + inline genprimary_const_iterator genprimaries_begin() const; + inline genprimary_const_iterator genprimaries_end() const; + + using simprimary_const_iterator = MCTSim2GenParticleMap::const_iterator; + inline simprimary_const_iterator simprimaries_begin() const; + inline simprimary_const_iterator simprimaries_end() const; + + protected: + + G4int eventNumber = 0; + G4MCTGenEvent* genEvent = nullptr; + G4MCTSimEvent* simEvent = nullptr; + + // primary table (bidirectional) + MCTGen2SimParticleMap gen2simParticleMap; + MCTSim2GenParticleMap sim2genParticleMap; }; // ==================================================================== -// inline functions +// inline methods // ==================================================================== -inline G4MCTEvent::G4MCTEvent(const G4MCTEvent& right) -{ - *this= right; -} - -inline const G4MCTEvent& G4MCTEvent::operator=(const G4MCTEvent& right) -{ - eventNumber= right.eventNumber; +inline G4MCTEvent::G4MCTEvent(const G4MCTEvent& right) { *this = right; } - simEvent= right.simEvent; // shallow copy... - genEvent= right.genEvent; +inline G4MCTEvent& G4MCTEvent::operator=(const G4MCTEvent& right) +{ + eventNumber = right.eventNumber; - gen2simParticleMap= right.gen2simParticleMap; - sim2genParticleMap= right.sim2genParticleMap; + simEvent = right.simEvent; // shallow copy... + genEvent = right.genEvent; + + gen2simParticleMap = right.gen2simParticleMap; + sim2genParticleMap = right.sim2genParticleMap; return *this; } -inline void G4MCTEvent::SetEventNumber(int n) { eventNumber= n; } -inline int G4MCTEvent::GetEventNumber() const { return eventNumber; } +inline void G4MCTEvent::SetEventNumber(G4int n) +{ + eventNumber = n; +} -inline int G4MCTEvent::GetNofPrimaries() const - { return gen2simParticleMap.size(); } -inline G4MCTSimEvent* G4MCTEvent::GetSimEvent() const { return simEvent; } -inline G4MCTGenEvent* G4MCTEvent::GetGenEvent() const { return genEvent; } +inline G4int G4MCTEvent::GetEventNumber() const +{ + return eventNumber; +} + +inline G4int G4MCTEvent::GetNofPrimaries() const +{ + return gen2simParticleMap.size(); +} + +inline G4MCTSimEvent* G4MCTEvent::GetSimEvent() const +{ + return simEvent; +} + +inline G4MCTGenEvent* G4MCTEvent::GetGenEvent() const +{ + return genEvent; +} // iterators -inline G4MCTEvent::genprimary_const_iterator G4MCTEvent::genprimaries_begin() const -{ return gen2simParticleMap.begin(); } +inline +G4MCTEvent::genprimary_const_iterator G4MCTEvent::genprimaries_begin() const +{ + return gen2simParticleMap.cbegin(); +} -inline G4MCTEvent::genprimary_const_iterator G4MCTEvent::genprimaries_end() const -{ return gen2simParticleMap.end(); } +inline +G4MCTEvent::genprimary_const_iterator G4MCTEvent::genprimaries_end() const +{ + return gen2simParticleMap.cend(); +} -inline G4MCTEvent::simprimary_const_iterator G4MCTEvent::simprimaries_begin() const -{ return sim2genParticleMap.begin(); } +inline +G4MCTEvent::simprimary_const_iterator G4MCTEvent::simprimaries_begin() const +{ + return sim2genParticleMap.cbegin(); +} -inline G4MCTEvent::simprimary_const_iterator G4MCTEvent::simprimaries_end() const -{ return sim2genParticleMap.end(); } +inline +G4MCTEvent::simprimary_const_iterator G4MCTEvent::simprimaries_end() const +{ + return sim2genParticleMap.cend(); +} #endif diff --git a/source/persistency/mctruth/include/G4MCTGenEvent.hh b/source/persistency/mctruth/include/G4MCTGenEvent.hh index df04ac242a..b92e8ee31a 100644 --- a/source/persistency/mctruth/include/G4MCTGenEvent.hh +++ b/source/persistency/mctruth/include/G4MCTGenEvent.hh @@ -23,54 +23,52 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// G4MCTGenEvent.hh -// -// ==================================================================== -#ifndef MCT_GEN_EVENT_H -#define MCT_GEN_EVENT_H +// G4MCTGenEvent + +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- +#ifndef G4MCTGENEVENT_HH +#define G4MCTGENEVENT_HH 1 -#include "G4Types.hh" #include #include - -// ==================================================================== -// -// class definition -// -// ==================================================================== -class G4MCTGenEvent { -protected: - std::vector eventList; +#include "G4Types.hh" -public: - G4MCTGenEvent(); - virtual ~G4MCTGenEvent(); - - // copy constructor and assignment operator - G4MCTGenEvent(const G4MCTGenEvent& right); - const G4MCTGenEvent& operator=(const G4MCTGenEvent& right); - - // methods... - int AddGenEvent(const void* genevent); - int GetNofEvents() const; - const void* GetGenEvent(int i); +class G4MCTGenEvent +{ + public: - void ClearEvent(); + G4MCTGenEvent(); + virtual ~G4MCTGenEvent(); + + inline G4MCTGenEvent(const G4MCTGenEvent& right); + inline G4MCTGenEvent& operator=(const G4MCTGenEvent& right); + // copy constructor and assignment operator + + G4int AddGenEvent(const void* genevent); + G4int GetNofEvents() const; + const void* GetGenEvent(G4int i); + + void ClearEvent(); + + protected: + + std::vector eventList; }; // ==================================================================== -// inline functions +// inline methods // ==================================================================== inline G4MCTGenEvent::G4MCTGenEvent(const G4MCTGenEvent& right) { - *this= right; + *this = right; } - -inline const G4MCTGenEvent& G4MCTGenEvent::operator=(const G4MCTGenEvent& right) + +inline G4MCTGenEvent& G4MCTGenEvent::operator=(const G4MCTGenEvent& right) { - eventList= right.eventList; // shallow copy + eventList = right.eventList; // shallow copy return *this; } diff --git a/source/persistency/mctruth/include/G4MCTGenParticle.hh b/source/persistency/mctruth/include/G4MCTGenParticle.hh index b7730efc71..1bcf02e1ee 100644 --- a/source/persistency/mctruth/include/G4MCTGenParticle.hh +++ b/source/persistency/mctruth/include/G4MCTGenParticle.hh @@ -23,16 +23,15 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// G4MCTGenParticle.hh -// -// ==================================================================== -#ifndef MCT_GEN_PARTICLE_H -#define MCT_GEN_PARTICLE_H +// G4MCTGenParticle + +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- +#ifndef G4MCTGENPARTICLE_HH +#define G4MCTGENPARTICLE_HH 1 -#include "G4Types.hh" #include -typedef std::pair G4MCTGenParticle; // +using G4MCTGenParticle = std::pair; // #endif - diff --git a/source/persistency/mctruth/include/G4MCTSimEvent.hh b/source/persistency/mctruth/include/G4MCTSimEvent.hh index 9f19e0f928..3f0a99a1ef 100644 --- a/source/persistency/mctruth/include/G4MCTSimEvent.hh +++ b/source/persistency/mctruth/include/G4MCTSimEvent.hh @@ -23,120 +23,137 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// G4MCTSimEvent.hh -// -// ==================================================================== -#ifndef MCT_SIM_EVENT_H -#define MCT_SIM_EVENT_H +// G4MCTSimEvent + +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- +#ifndef G4MCTSIMEVENT_HH +#define G4MCTSIMEVENT_HH 1 -#include "G4Types.hh" #include #include #include - -// ==================================================================== -// -// class definition -// -// ==================================================================== + +#include "G4Types.hh" + class G4MCTSimParticle; class G4MCTSimVertex; -typedef std::map G4MCTSimParticleContainer; -typedef std::vector G4MCTSimVertexContainer; +using G4MCTSimParticleContainer = std::map; +using G4MCTSimVertexContainer = std::vector; -class G4MCTSimEvent { -protected: -G4MCTSimParticleContainer particleMap; -G4MCTSimVertexContainer vertexVec; - -public: - G4MCTSimEvent(); - ~G4MCTSimEvent(); - - // copy constructor and assignment operator - G4MCTSimEvent(const G4MCTSimEvent& right); - const G4MCTSimEvent& operator=(const G4MCTSimEvent& right); +class G4MCTSimEvent +{ + public: - // methods... - G4bool AddParticle(const G4MCTSimParticle* aparticle); - int GetNofParticles() const; - int GetNofVertices() const; - int GetNofStoredParticles() const; - int GetNofStoredVertices() const; - G4MCTSimParticle* FindParticle(int tid) const; - G4MCTSimVertex* GetVertex(int vid) const; + G4MCTSimEvent(); + ~G4MCTSimEvent(); - void BuildVertexContainer(); - void ClearEvent(); - void Print(std::ostream& ostr= std::cout) const; + inline G4MCTSimEvent(const G4MCTSimEvent& right); + inline G4MCTSimEvent& operator=(const G4MCTSimEvent& right); + // copy constructor and assignment operator - // iterators - typedef G4MCTSimParticleContainer::iterator particle_iterator; - typedef G4MCTSimParticleContainer::const_iterator particle_const_iterator; - particle_iterator particles_begin(); - particle_iterator particles_end(); - particle_const_iterator particles_begin() const; - particle_const_iterator particles_end() const; - - typedef G4MCTSimVertexContainer::iterator vertex_iterator; - typedef G4MCTSimVertexContainer::const_iterator vertex_const_iterator; - vertex_iterator vertices_begin(); - vertex_iterator vertices_end(); - vertex_const_iterator vertices_begin() const; - vertex_const_iterator vertices_end() const; + G4bool AddParticle(const G4MCTSimParticle* aparticle); + inline G4int GetNofParticles() const; + inline G4int GetNofVertices() const; + G4int GetNofStoredParticles() const; + G4int GetNofStoredVertices() const; + G4MCTSimParticle* FindParticle(G4int tid) const; + G4MCTSimVertex* GetVertex(G4int vid) const; + + void BuildVertexContainer(); + void ClearEvent(); + void Print(std::ostream& ostr = std::cout) const; + + // iterators + using particle_iterator = G4MCTSimParticleContainer::iterator; + using particle_const_iterator = G4MCTSimParticleContainer::const_iterator; + inline particle_iterator particles_begin(); + inline particle_iterator particles_end(); + inline particle_const_iterator particles_begin() const; + inline particle_const_iterator particles_end() const; + + using vertex_iterator = G4MCTSimVertexContainer::iterator; + using vertex_const_iterator = G4MCTSimVertexContainer::const_iterator; + inline vertex_iterator vertices_begin(); + inline vertex_iterator vertices_end(); + inline vertex_const_iterator vertices_begin() const; + inline vertex_const_iterator vertices_end() const; + + protected: + + G4MCTSimParticleContainer particleMap; + G4MCTSimVertexContainer vertexVec; }; // ==================================================================== -// inline functions +// inline methods // ==================================================================== inline G4MCTSimEvent::G4MCTSimEvent(const G4MCTSimEvent& right) { - *this= right; + *this = right; } - -inline const G4MCTSimEvent& G4MCTSimEvent::operator=(const G4MCTSimEvent& right) + +inline G4MCTSimEvent& G4MCTSimEvent::operator=(const G4MCTSimEvent& right) { - particleMap= right.particleMap; // shallow copy + particleMap = right.particleMap; // shallow copy return *this; } -inline int G4MCTSimEvent::GetNofParticles() const +inline G4int G4MCTSimEvent::GetNofParticles() const { return particleMap.size(); } -inline int G4MCTSimEvent::GetNofVertices() const +inline G4int G4MCTSimEvent::GetNofVertices() const { return vertexVec.size(); } // iterators inline G4MCTSimEvent::particle_iterator G4MCTSimEvent::particles_begin() -{ return particleMap.begin(); } +{ + return particleMap.begin(); +} inline G4MCTSimEvent::particle_iterator G4MCTSimEvent::particles_end() -{ return particleMap.end(); } +{ + return particleMap.end(); +} -inline G4MCTSimEvent::particle_const_iterator - G4MCTSimEvent::particles_begin() const -{ return particleMap.begin(); } +inline G4MCTSimEvent::particle_const_iterator G4MCTSimEvent::particles_begin() + const +{ + return particleMap.cbegin(); +} -inline G4MCTSimEvent::particle_const_iterator G4MCTSimEvent::particles_end() const -{ return particleMap.end(); } +inline G4MCTSimEvent::particle_const_iterator G4MCTSimEvent::particles_end() + const +{ + return particleMap.cend(); +} inline G4MCTSimEvent::vertex_iterator G4MCTSimEvent::vertices_begin() -{ return vertexVec.begin(); } +{ + return vertexVec.begin(); +} inline G4MCTSimEvent::vertex_iterator G4MCTSimEvent::vertices_end() -{ return vertexVec.end(); } +{ + return vertexVec.end(); +} -inline G4MCTSimEvent::vertex_const_iterator G4MCTSimEvent::vertices_begin() const -{ return vertexVec.begin(); } +inline G4MCTSimEvent::vertex_const_iterator G4MCTSimEvent::vertices_begin() + const +{ + return vertexVec.cbegin(); +} inline G4MCTSimEvent::vertex_const_iterator G4MCTSimEvent::vertices_end() const -{ return vertexVec.end(); } +{ + return vertexVec.cend(); +} #endif diff --git a/source/persistency/mctruth/include/G4MCTSimParticle.hh b/source/persistency/mctruth/include/G4MCTSimParticle.hh index dc5d4a5a04..a4154d382d 100644 --- a/source/persistency/mctruth/include/G4MCTSimParticle.hh +++ b/source/persistency/mctruth/include/G4MCTSimParticle.hh @@ -23,162 +23,207 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// G4MCTSimParticle.hh -// -// ==================================================================== -#ifndef MCT_SIM_PARTICLE_H -#define MCT_SIM_PARTICLE_H +// G4MCTSimParticle + +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- +#ifndef G4MCTSIMPARTICLE_HH +#define G4MCTSIMPARTICLE_HH 1 -#include "G4Types.hh" #include #include #include + +#include "G4Types.hh" #include "G4LorentzVector.hh" -// ==================================================================== -// -// class definition -// -// ==================================================================== class G4MCTSimVertex; class G4MCTSimParticle; -typedef std::vector SimParticleList; +using SimParticleList = std::vector; -class G4MCTSimParticle { -protected: - G4MCTSimParticle* parentParticle; - std::vector associatedParticleList; +class G4MCTSimParticle +{ + public: - std::string name; - int pdgID; - int trackID; - int parentTrackID; - G4bool primaryFlag; - G4LorentzVector momentumAtVertex; - G4MCTSimVertex* vertex; - G4bool storeFlag; - -public: - G4MCTSimParticle(); - G4MCTSimParticle(std::string aname, int apcode, int atid, int ptid, - const G4LorentzVector& p); - G4MCTSimParticle(std::string aname, int apcode, int atid, int ptid, - const G4LorentzVector& p, const G4MCTSimVertex* v); - virtual ~G4MCTSimParticle(); - - // copy constructor and assignment operator - G4MCTSimParticle(const G4MCTSimParticle& right); - const G4MCTSimParticle& operator=(const G4MCTSimParticle& right); + G4MCTSimParticle(); + G4MCTSimParticle(const G4String& aname, + G4int apcode, G4int atid, G4int ptid, + const G4LorentzVector& p); + G4MCTSimParticle(const G4String& aname, + G4int apcode, G4int atid, G4int ptid, + const G4LorentzVector& p, const G4MCTSimVertex* v); + virtual ~G4MCTSimParticle(); - // set/get functions - void SetParentParticle(const G4MCTSimParticle* p); - G4MCTSimParticle* GetParentParticle() const; + inline G4MCTSimParticle(const G4MCTSimParticle& right); + inline G4MCTSimParticle& operator=(const G4MCTSimParticle& right); + // copy constructor and assignment operator - void SetParticleName(std::string aname); - const std::string& GetParticleName() const; + inline void SetParentParticle(const G4MCTSimParticle* p); + inline G4MCTSimParticle* GetParentParticle() const; - void SetPdgID(int id); - int GetPdgID() const; + inline void SetParticleName(std::string aname); + inline const G4String& GetParticleName() const; - void SetTrackID(int id); - int GetTrackID() const; + inline void SetPdgID(G4int id); + inline G4int GetPdgID() const; - void SetParentTrackID(int id); - int GetParentTrackID() const; + inline void SetTrackID(G4int id); + inline G4int GetTrackID() const; - void SetPrimaryFlag(G4bool q); - G4bool GetPrimaryFlag() const; + inline void SetParentTrackID(G4int id); + inline G4int GetParentTrackID() const; - void SetMomentumAtVertex(const G4LorentzVector& p); - const G4LorentzVector& GetMomentumAtVertex() const; + inline void SetPrimaryFlag(G4bool q); + inline G4bool GetPrimaryFlag() const; - void SetVertex(const G4MCTSimVertex* v); - G4MCTSimVertex* GetVertex() const; + inline void SetMomentumAtVertex(const G4LorentzVector& p); + inline const G4LorentzVector& GetMomentumAtVertex() const; - void SetStoreFlag(G4bool q); - G4bool GetStoreFlag() const; + inline void SetVertex(const G4MCTSimVertex* v); + inline G4MCTSimVertex* GetVertex() const; - // methods... - int AssociateParticle(G4MCTSimParticle* p); - int GetNofAssociatedParticles() const; - G4MCTSimParticle* GetAssociatedParticle(int i) const; - int GetTreeLevel() const; - void SetStoreFlagToParentTree(G4bool q=true); + inline void SetStoreFlag(G4bool q); + inline G4bool GetStoreFlag() const; - void Print(std::ostream& ostr= std::cout, G4bool qrevorder=false) const; - void PrintSingle(std::ostream& ostr= std::cout) const; + G4int AssociateParticle(G4MCTSimParticle* p); + G4int GetNofAssociatedParticles() const; + G4MCTSimParticle* GetAssociatedParticle(G4int i) const; + G4int GetTreeLevel() const; + void SetStoreFlagToParentTree(G4bool q = true); + + void Print(std::ostream& ostr = std::cout, G4bool qrevorder = false) const; + void PrintSingle(std::ostream& ostr = std::cout) const; + + protected: + + G4MCTSimParticle* parentParticle = nullptr; + std::vector associatedParticleList; + + G4String name; + G4LorentzVector momentumAtVertex; + G4MCTSimVertex* vertex = nullptr; + G4int pdgID = 0; + G4int trackID = 0; + G4int parentTrackID = 0; + G4bool primaryFlag = false; + G4bool storeFlag = false; }; // ==================================================================== -// inline functions +// inline methods // ==================================================================== + inline G4MCTSimParticle::G4MCTSimParticle(const G4MCTSimParticle& right) { - *this= right; + *this = right; } - -inline const G4MCTSimParticle& - G4MCTSimParticle::operator=(const G4MCTSimParticle& right) -{ - parentParticle= right.parentParticle; - associatedParticleList= right.associatedParticleList; // shallow copy - name= right.name; - pdgID= right.pdgID; - trackID= right.trackID; - parentTrackID= right.parentTrackID; - primaryFlag= right.primaryFlag; - momentumAtVertex= right.momentumAtVertex; - vertex= right.vertex; +inline G4MCTSimParticle& G4MCTSimParticle::operator=( + const G4MCTSimParticle& right) +{ + parentParticle = right.parentParticle; + associatedParticleList = right.associatedParticleList; // shallow copy + + name = right.name; + pdgID = right.pdgID; + trackID = right.trackID; + parentTrackID = right.parentTrackID; + primaryFlag = right.primaryFlag; + momentumAtVertex = right.momentumAtVertex; + vertex = right.vertex; return *this; } inline void G4MCTSimParticle::SetParentParticle(const G4MCTSimParticle* p) -{ parentParticle= const_cast(p); } +{ + parentParticle = const_cast(p); +} inline G4MCTSimParticle* G4MCTSimParticle::GetParentParticle() const -{ return parentParticle; } +{ + return parentParticle; +} -inline void G4MCTSimParticle::SetParticleName(std::string aname) -{ name= aname; } +inline void G4MCTSimParticle::SetParticleName(std::string aname) +{ + name = aname; +} -inline const std::string& G4MCTSimParticle::GetParticleName() const -{ return name; } +inline const G4String& G4MCTSimParticle::GetParticleName() const +{ + return name; +} -inline void G4MCTSimParticle::SetPdgID(int id) { pdgID= id; } +inline void G4MCTSimParticle::SetPdgID(G4int id) +{ + pdgID = id; +} -inline int G4MCTSimParticle::GetPdgID() const { return pdgID; } +inline G4int G4MCTSimParticle::GetPdgID() const +{ + return pdgID; +} -inline void G4MCTSimParticle::SetTrackID(int id) { trackID= id; } +inline void G4MCTSimParticle::SetTrackID(G4int id) +{ + trackID = id; +} -inline int G4MCTSimParticle::GetTrackID() const { return trackID; } +inline G4int G4MCTSimParticle::GetTrackID() const +{ + return trackID; +} -inline void G4MCTSimParticle::SetPrimaryFlag(G4bool q) { primaryFlag= q; } +inline void G4MCTSimParticle::SetPrimaryFlag(G4bool q) +{ + primaryFlag = q; +} -inline G4bool G4MCTSimParticle::GetPrimaryFlag() const { return primaryFlag; } +inline G4bool G4MCTSimParticle::GetPrimaryFlag() const +{ + return primaryFlag; +} -inline void G4MCTSimParticle::SetParentTrackID(int id) -{ parentTrackID= id; } +inline void G4MCTSimParticle::SetParentTrackID(G4int id) +{ + parentTrackID = id; +} -inline int G4MCTSimParticle::GetParentTrackID() const -{ return parentTrackID; } +inline G4int G4MCTSimParticle::GetParentTrackID() const +{ + return parentTrackID; +} -inline void G4MCTSimParticle::SetMomentumAtVertex(const G4LorentzVector& p) -{ momentumAtVertex= p; } +inline void G4MCTSimParticle::SetMomentumAtVertex(const G4LorentzVector& p) +{ + momentumAtVertex = p; +} -inline const G4LorentzVector& G4MCTSimParticle::GetMomentumAtVertex() const -{ return momentumAtVertex; } +inline const G4LorentzVector& G4MCTSimParticle::GetMomentumAtVertex() const +{ + return momentumAtVertex; +} -inline void G4MCTSimParticle::SetVertex(const G4MCTSimVertex* v) -{ vertex= const_cast(v); } +inline void G4MCTSimParticle::SetVertex(const G4MCTSimVertex* v) +{ + vertex = const_cast(v); +} inline G4MCTSimVertex* G4MCTSimParticle::GetVertex() const -{ return vertex; } +{ + return vertex; +} -inline void G4MCTSimParticle::SetStoreFlag(G4bool q) { storeFlag= q; } +inline void G4MCTSimParticle::SetStoreFlag(G4bool q) +{ + storeFlag = q; +} -inline G4bool G4MCTSimParticle::GetStoreFlag() const { return storeFlag; } +inline G4bool G4MCTSimParticle::GetStoreFlag() const +{ + return storeFlag; +} #endif diff --git a/source/persistency/mctruth/include/G4MCTSimVertex.hh b/source/persistency/mctruth/include/G4MCTSimVertex.hh index 9b165fe90f..09168e33c9 100644 --- a/source/persistency/mctruth/include/G4MCTSimVertex.hh +++ b/source/persistency/mctruth/include/G4MCTSimVertex.hh @@ -23,174 +23,216 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// G4MCTSimVertex.hh -// -// ==================================================================== -#ifndef MCT_SIM_VERTEX_H -#define MCT_SIM_VERTEX_H +// G4MCTSimVertex + +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- +#ifndef G4MCTSIMVERTEX_HH +#define G4MCTSIMVERTEX_HH 1 -#include "G4Types.hh" #include #include #include + +#include "G4Types.hh" #include "G4ThreeVector.hh" #include "G4MCTSimParticle.hh" -// ==================================================================== -// -// class definition -// -// ==================================================================== +class G4MCTSimVertex +{ + public: -class G4MCTSimVertex { -private: - int inParticleTrackID; - std::vector outParticleTrackIDList; + G4MCTSimVertex(); + G4MCTSimVertex(const G4ThreeVector& x, G4double t); + G4MCTSimVertex(const G4ThreeVector& x, G4double t, + const G4String& vname, G4int ncopy, + const G4String& pname); + ~G4MCTSimVertex(); - int id; // assigned independently from G4 - G4ThreeVector position; - double time; - std::string volumeName; - int volumeNumber; - std::string creatorProcessName; - G4bool storeFlag; - -public: - G4MCTSimVertex(); - G4MCTSimVertex(const G4ThreeVector& x, double t); - G4MCTSimVertex(const G4ThreeVector& x, double t, - std::string vname, int ncopy, std::string pname); - ~G4MCTSimVertex(); - - // copy constructor and assignment operator - G4MCTSimVertex(const G4MCTSimVertex& right); - const G4MCTSimVertex& operator=(const G4MCTSimVertex& right); + inline G4MCTSimVertex(const G4MCTSimVertex& right); + inline G4MCTSimVertex& operator=(const G4MCTSimVertex& right); + // copy constructor and assignment operator - // set/get functions - void SetID(int i); - int GetID() const; + inline void SetID(G4int i); + inline G4int GetID() const; - void SetPosition(const G4ThreeVector& x); - const G4ThreeVector& GetPosition() const; + inline void SetPosition(const G4ThreeVector& x); + inline const G4ThreeVector& GetPosition() const; - void SetTime(double t); - double GetTime() const; + inline void SetTime(G4double t); + inline G4double GetTime() const; - void SetVolumeName(std::string vname); - const std::string& GetVolumeName() const; + inline void SetVolumeName(const G4String& vname); + inline const G4String& GetVolumeName() const; - void SetVolumeNumber(int n); - int GetVolumeNumber() const; + inline void SetVolumeNumber(G4int n); + inline G4int GetVolumeNumber() const; - void SetCreatorProcessName(std::string pname); - const std::string& GetCreatorProcessName() const; + inline void SetCreatorProcessName(const G4String& pname); + inline const G4String& GetCreatorProcessName() const; - void SetStoreFlag(G4bool q); - G4bool GetStoreFlag() const; + inline void SetStoreFlag(G4bool q); + inline G4bool GetStoreFlag() const; - // methods... - void SetInParticle(const G4MCTSimParticle* in); - void SetInParticle(int in); - int GetInParticleTrackID() const; + inline void SetInParticle(const G4MCTSimParticle* in); + inline void SetInParticle(G4int in); + inline G4int GetInParticleTrackID() const; - int GetNofOutParticles() const; - int AddOutParticle(const G4MCTSimParticle* out); - int AddOutParticle(int out); - int GetOutParticleTrackID(int i) const; + inline G4int GetNofOutParticles() const; + inline G4int AddOutParticle(const G4MCTSimParticle* out); + inline G4int AddOutParticle(G4int out); + inline G4int GetOutParticleTrackID(G4int i) const; - void Print(std::ostream& ostr= std::cout) const; + void Print(std::ostream& ostr = std::cout) const; + + private: + + G4int inParticleTrackID = 0; + std::vector outParticleTrackIDList; + + G4String volumeName = ""; + G4String creatorProcessName = "none"; + G4ThreeVector position; + G4double time = 0.0; + G4int id = -1; // assigned independently from G4 + G4int volumeNumber = -1; + G4bool storeFlag = false; }; // ==================================================================== -// inline functions +// inline methods // ==================================================================== + inline G4MCTSimVertex::G4MCTSimVertex(const G4MCTSimVertex& right) { - *this= right; + *this = right; } - -inline const G4MCTSimVertex& - G4MCTSimVertex::operator=(const G4MCTSimVertex& right) -{ - inParticleTrackID= right.inParticleTrackID; - outParticleTrackIDList= right.outParticleTrackIDList; - id= right.id; - position= right.position; - time= right.time; - volumeName= right.volumeName; - volumeNumber= right.volumeNumber; - creatorProcessName= right.creatorProcessName; +inline G4MCTSimVertex& G4MCTSimVertex::operator=( + const G4MCTSimVertex& right) +{ + inParticleTrackID = right.inParticleTrackID; + outParticleTrackIDList = right.outParticleTrackIDList; + + id = right.id; + position = right.position; + time = right.time; + volumeName = right.volumeName; + volumeNumber = right.volumeNumber; + creatorProcessName = right.creatorProcessName; return *this; } -inline void G4MCTSimVertex::SetID(int i) { id= i; } -inline int G4MCTSimVertex::GetID() const { return id; } +inline void G4MCTSimVertex::SetID(G4int i) +{ + id = i; +} -inline void G4MCTSimVertex::SetPosition(const G4ThreeVector& x) -{ position= x; } +inline G4int G4MCTSimVertex::GetID() const +{ + return id; +} -inline const G4ThreeVector& G4MCTSimVertex::GetPosition() const -{ return position; } +inline void G4MCTSimVertex::SetPosition(const G4ThreeVector& x) +{ + position = x; +} -inline void G4MCTSimVertex::SetTime(double t) -{ time= t; } +inline const G4ThreeVector& G4MCTSimVertex::GetPosition() const +{ + return position; +} -inline double G4MCTSimVertex::GetTime() const -{ return time; } +inline void G4MCTSimVertex::SetTime(G4double t) +{ + time = t; +} -inline void G4MCTSimVertex::SetVolumeName(std::string vname) -{ volumeName= vname; } +inline G4double G4MCTSimVertex::GetTime() const +{ + return time; +} -inline const std::string& G4MCTSimVertex::GetVolumeName() const -{ return volumeName; } +inline void G4MCTSimVertex::SetVolumeName(const G4String& vname) +{ + volumeName = vname; +} -inline void G4MCTSimVertex::SetVolumeNumber(int n) -{ volumeNumber= n; } +inline const G4String& G4MCTSimVertex::GetVolumeName() const +{ + return volumeName; +} -inline int G4MCTSimVertex::GetVolumeNumber() const -{ return volumeNumber; } +inline void G4MCTSimVertex::SetVolumeNumber(G4int n) +{ + volumeNumber = n; +} -inline void G4MCTSimVertex::SetCreatorProcessName(std::string pname) -{ creatorProcessName= pname; } +inline G4int G4MCTSimVertex::GetVolumeNumber() const +{ + return volumeNumber; +} -inline const std::string& G4MCTSimVertex::GetCreatorProcessName() const -{ return creatorProcessName; } +inline void G4MCTSimVertex::SetCreatorProcessName(const G4String& pname) +{ + creatorProcessName = pname; +} -inline void G4MCTSimVertex::SetStoreFlag(G4bool q) { storeFlag= q; } +inline const G4String& G4MCTSimVertex::GetCreatorProcessName() const +{ + return creatorProcessName; +} -inline G4bool G4MCTSimVertex::GetStoreFlag() const { return storeFlag; } +inline void G4MCTSimVertex::SetStoreFlag(G4bool q) +{ + storeFlag = q; +} + +inline G4bool G4MCTSimVertex::GetStoreFlag() const +{ + return storeFlag; +} inline void G4MCTSimVertex::SetInParticle(const G4MCTSimParticle* in) -{ inParticleTrackID= in-> GetTrackID(); } +{ + inParticleTrackID = in->GetTrackID(); +} -inline void G4MCTSimVertex::SetInParticle(int in) -{ inParticleTrackID= in; } +inline void G4MCTSimVertex::SetInParticle(G4int in) +{ + inParticleTrackID = in; +} -inline int G4MCTSimVertex::GetInParticleTrackID() const -{ return inParticleTrackID; } +inline G4int G4MCTSimVertex::GetInParticleTrackID() const +{ + return inParticleTrackID; +} -inline int G4MCTSimVertex::GetNofOutParticles() const -{ return outParticleTrackIDList.size(); } +inline G4int G4MCTSimVertex::GetNofOutParticles() const +{ + return outParticleTrackIDList.size(); +} -inline int G4MCTSimVertex::AddOutParticle(const G4MCTSimParticle* out) -{ +inline G4int G4MCTSimVertex::AddOutParticle(const G4MCTSimParticle* out) +{ outParticleTrackIDList.push_back(out->GetTrackID()); return outParticleTrackIDList.size(); } -inline int G4MCTSimVertex::AddOutParticle(int out) +inline G4int G4MCTSimVertex::AddOutParticle(G4int out) { outParticleTrackIDList.push_back(out); return outParticleTrackIDList.size(); } -inline int G4MCTSimVertex::GetOutParticleTrackID(int i) const +inline G4int G4MCTSimVertex::GetOutParticleTrackID(G4int i) const { - int size= outParticleTrackIDList.size(); - if(i>=0 && i< size) return outParticleTrackIDList[i]; - else return 0; + G4int size = outParticleTrackIDList.size(); + if(i >= 0 && i < size) + return outParticleTrackIDList[i]; + else + return 0; } #endif diff --git a/source/persistency/mctruth/include/G4PersistencyCenter.hh b/source/persistency/mctruth/include/G4PersistencyCenter.hh index cb4e836275..4bb250494f 100644 --- a/source/persistency/mctruth/include/G4PersistencyCenter.hh +++ b/source/persistency/mctruth/include/G4PersistencyCenter.hh @@ -23,13 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4PersistencyCenter.hh +// G4PersistencyCenter // -// History: -// '01.08.10 Youhei Morita Initial creation (with "fadsclass3") +// Class Description: +// +// Class to handle loading of the G4PersistencyManager. -#ifndef PERSISTENCY_CENTER_HH -#define PERSISTENCY_CENTER_HH 1 +// Author: Youhei Morita, 10.08.2001 +// -------------------------------------------------------------------- +#ifndef G4PERSISTENCYCENTER_HH +#define G4PERSISTENCYCENTER_HH 1 #include "G4Types.hh" #include @@ -39,137 +42,140 @@ #include "G4DCIOcatalog.hh" #ifndef WIN32 - #include "G4FileUtilities.hh" +# include "G4FileUtilities.hh" #endif -// Forward Declaration to avoid circular dependencies. +// Forward Declarations class G4PersistencyManager; - -typedef std::map > PMap; -typedef std::map > ObjMap; -typedef std::map > FileMap; - -enum StoreMode { kOn, kOff, kRecycle }; - -typedef std::map > StoreMap; -typedef std::map > BoolMap; - -// Forward Declarations: class G4PersistencyCenterMessenger; -// Class Description: -// Class to handle loading of the G4PersistencyManager. +using PMap = std::map>; +using ObjMap = std::map>; +using FileMap = std::map>; + +enum StoreMode +{ + kOn, + kOff, + kRecycle +}; + +using StoreMap = std::map>; +using BoolMap = std::map>; class G4PersistencyCenter { - public: // With description + public: - static G4PersistencyCenter* GetPersistencyCenter(); - // returns the pointer of singleton G4PersistencyCenter + static G4PersistencyCenter* GetPersistencyCenter(); + // Returns the pointer of singleton G4PersistencyCenter - void SelectSystem(std::string systemName); + void SelectSystem(const G4String& systemName); // Select the persistency package - const std::string CurrentSystem() { return f_currentSystemName; }; - // returns the current persistent package name + const G4String& CurrentSystem() { return f_currentSystemName; } + // Returns the current persistent package name - void SetHepMCObjyReaderFile(std::string file); - // Sets the name of HepMCObjyReader file name. To be called by generator. + void SetHepMCObjyReaderFile(const G4String& file); + // Sets the name of HepMCObjyReader file name. To be called by generator - std::string CurrentHepMCObjyReaderFile(); - // Sets the name of HepMCObjyReader file name. To be called by generator. + G4String CurrentHepMCObjyReaderFile(); + // Sets the name of HepMCObjyReader file name. To be called by generator - void SetStoreMode(std::string objName, StoreMode mode); - // Sets the object store mode. Modes are kOn, kOff or kRecycle. + void SetStoreMode(const G4String& objName, StoreMode mode); + // Sets the object store mode. Modes are kOn, kOff or kRecycle - void SetRetrieveMode(std::string objName, G4bool mode); - // Sets the object retrieve mode. Modes are true or false. + void SetRetrieveMode(const G4String& objName, G4bool mode); + // Sets the object retrieve mode. Modes are true or false - StoreMode CurrentStoreMode(std::string objName); - // returns the current object store mode. + StoreMode CurrentStoreMode(const G4String& objName); + // Returns the current object store mode - G4bool CurrentRetrieveMode(std::string objName); - // returns the current object store mode. + G4bool CurrentRetrieveMode(const G4String& objName); + // Returns the current object store mode - G4bool SetWriteFile(std::string objName, std::string writeFileName); - // Sets the output filename. + G4bool SetWriteFile(const G4String& objName, const G4String& writeFileName); + // Sets the output filename - G4bool SetReadFile(std::string objName, std::string readFileName); - // Sets the input filename. + G4bool SetReadFile(const G4String& objName, const G4String& readFileName); + // Sets the input filename - std::string CurrentWriteFile(std::string objName); - // returns the current output filename. + G4String CurrentWriteFile(const G4String& objName); + // Returns the current output filename - std::string CurrentReadFile(std::string objName); - // returns the current input filename. + G4String CurrentReadFile(const G4String& objName); + // Returns the current input filename - std::string CurrentObject(std::string file); - // returns the current object type + G4String CurrentObject(const G4String& file); + // Returns the current object type - void AddHCIOmanager(std::string detName, std::string colName); - // add a hits colleciton I/O manager to the catalog + void AddHCIOmanager(const G4String& detName, const G4String& colName); + // Adds a hits colleciton I/O manager to the catalog - std::string CurrentHCIOmanager(); + G4String CurrentHCIOmanager(); // Returns a list of registered hits colleciton I/O managers - void AddDCIOmanager(std::string detName); - // add a digits colleciton I/O manager to the catalog + void AddDCIOmanager(const G4String& detName); + // Adds a digits colleciton I/O manager to the catalog - std::string CurrentDCIOmanager(); - // Returns a list of registered digits colleciton I/O managers + G4String CurrentDCIOmanager(); + // Returns a list of registered digits collection I/O managers - void PrintAll(); - // prints the current G4PersistencyCenter settings. + void PrintAll(); + // Prints the current G4PersistencyCenter settings - G4PersistencyManager* CurrentPersistencyManager() { return f_currentManager; }; - // returns the pointer of the currnet G4PersistencyManager. + G4PersistencyManager* CurrentPersistencyManager() + { + return f_currentManager; + } + // Returns the pointer of the current G4PersistencyManager - void SetPersistencyManager(G4PersistencyManager* pm, std::string name); - // returns the pointer of the currnet G4PersistencyManager. + void SetPersistencyManager(G4PersistencyManager* pm, const G4String& name); + // Returns the pointer of the current G4PersistencyManager - G4PersistencyManager* GetPersistencyManager(std::string nam); - // returns the pointer of the currnet G4PersistencyManager with name. + G4PersistencyManager* GetPersistencyManager(const G4String& nam); + // Returns the pointer of the current G4PersistencyManager with name - void RegisterPersistencyManager(G4PersistencyManager* pm); - // registers the persistency manager to the runtime catalog. + void RegisterPersistencyManager(G4PersistencyManager* pm); + // Registers the persistency manager to the runtime catalog - void DeletePersistencyManager(); - // deletes the current G4PersistencyManager. + void DeletePersistencyManager(); + // Deletes the current G4PersistencyManager - void SetVerboseLevel(int v); - // Set verbose level. + void SetVerboseLevel(G4int v); + // Sets verbose level - int VerboseLevel() { return m_verbose; }; - // Return verbose level. + G4int VerboseLevel() { return m_verbose; } + // Returns verbose level - private: + private: - G4PersistencyCenter(); + G4PersistencyCenter(); // Constructor - ~G4PersistencyCenter(); + ~G4PersistencyCenter(); // Destructor - std::string PadString(std::string name, unsigned int width); - // truncate or pad a string up to the width. + G4String PadString(const G4String& name, unsigned int width); + // Truncates or pad a string up to the width - private: - G4PersistencyCenterMessenger* f_theMessenger; - static G4ThreadLocal G4PersistencyCenter* f_thePointer; - G4PersistencyManager* f_currentManager; - std::string f_currentSystemName; - PMap f_theCatalog; - ObjMap f_wrObj; - ObjMap f_rdObj; - FileMap f_writeFileName; - FileMap f_readFileName; - StoreMap f_writeFileMode; - BoolMap f_readFileMode; - G4int m_verbose; + private: + + G4PersistencyCenterMessenger* f_theMessenger = nullptr; + static G4ThreadLocal G4PersistencyCenter* f_thePointer; + G4PersistencyManager* f_currentManager = nullptr; + G4String f_currentSystemName; + PMap f_theCatalog; + ObjMap f_wrObj; + ObjMap f_rdObj; + FileMap f_writeFileName; + FileMap f_readFileName; + StoreMap f_writeFileMode; + BoolMap f_readFileMode; + G4int m_verbose = 0; #ifndef WIN32 - G4FileUtilities f_ut; + G4FileUtilities f_ut; #endif -}; // End of class G4PersistencyCenter +}; #endif - diff --git a/source/persistency/mctruth/include/G4PersistencyCenterMessenger.hh b/source/persistency/mctruth/include/G4PersistencyCenterMessenger.hh index e872e5f9b7..8cf8caa264 100644 --- a/source/persistency/mctruth/include/G4PersistencyCenterMessenger.hh +++ b/source/persistency/mctruth/include/G4PersistencyCenterMessenger.hh @@ -23,13 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4PersistencyCenterMessenger.hh +// G4PersistencyCenterMessenger // -// History: -// 01.07.18 Youhei Morita Initial creation (with "fadsclass") +// Class Description: +// +// User interface messenger class to interface G4PersistencyCenter. -#ifndef PERSISTENCY_CENTER_MESSENGER_HH -#define PERSISTENCY_CENTER_MESSENGER_HH 1 +// Author: Youhei Morita, 18.07.2001 +// -------------------------------------------------------------------- +#ifndef G4PERSISTENCYCENTERMESSENGER_HH +#define G4PERSISTENCYCENTERMESSENGER_HH 1 #include "G4UIcommand.hh" #include "G4UIdirectory.hh" @@ -37,49 +40,44 @@ #include "G4UIcmdWithAString.hh" #include "G4UIcmdWithoutParameter.hh" #include "G4PersistencyCenter.hh" - -// Class inherited: #include "G4UImessenger.hh" -// Class Description: -// User interface messenger class to interface G4PersistencyCenter - -class G4PersistencyCenterMessenger - : public G4UImessenger +class G4PersistencyCenterMessenger : public G4UImessenger { - public: // With description - G4PersistencyCenterMessenger(G4PersistencyCenter* p); + public: + + G4PersistencyCenterMessenger(G4PersistencyCenter* p); // Constructor - ~G4PersistencyCenterMessenger(); + ~G4PersistencyCenterMessenger(); // Destructor - public: // With description - void SetNewValue(G4UIcommand* command, G4String newValues); + void SetNewValue(G4UIcommand* command, G4String newValues); // User interface for setting a new value - G4String GetCurrentValue(G4UIcommand* command); + G4String GetCurrentValue(G4UIcommand* command); // User interface for getting a value - private: - std::string PopWord(std::string text, int n, std::string delim); + private: + + G4String PopWord(const G4String& text, G4int n, const G4String& delim); // Parse text and returns the n-th words separated by delim - private: - G4PersistencyCenter* pc; - G4UIdirectory* directory, *subdir1, *subdir2, - *subdir3, *subdir4, *subdir5; - G4UIcmdWithAnInteger* verboseCmd; - G4UIcmdWithAString* select; - G4UIcmdWithAString* regHitIO; - std::vector wrObj; - std::vector rdObj; - std::vector storeObj; - std::vector setWrFile; - std::vector setRdFile; - G4UIcmdWithoutParameter* printAll; + private: -}; // End of class G4PersistencyCenterMessenger + G4PersistencyCenter* pc = nullptr; + G4UIdirectory *directory = nullptr, + *subdir1 = nullptr, *subdir2 = nullptr, + *subdir3 = nullptr, *subdir4 = nullptr, *subdir5 = nullptr; + G4UIcmdWithAnInteger* verboseCmd = nullptr; + G4UIcmdWithAString* select = nullptr; + G4UIcmdWithAString* regHitIO = nullptr; + std::vector wrObj; + std::vector rdObj; + std::vector storeObj; + std::vector setWrFile; + std::vector setRdFile; + G4UIcmdWithoutParameter* printAll = nullptr; +}; #endif - diff --git a/source/persistency/mctruth/include/G4PersistencyManager.hh b/source/persistency/mctruth/include/G4PersistencyManager.hh index 919fbbf7f5..38198d533a 100644 --- a/source/persistency/mctruth/include/G4PersistencyManager.hh +++ b/source/persistency/mctruth/include/G4PersistencyManager.hh @@ -23,55 +23,33 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4PersistencyManager.hh +// G4PersistencyManager // -// History: -// 01.07.17 Youhei Morita Initial creation (with "fadsclass") - -#ifndef PERSISTENCY_MANAGER_HH -#define PERSISTENCY_MANAGER_HH 1 - -#include "G4Event.hh" - -#include "G4VMCTruthIO.hh" -#include "G4HCIOcatalog.hh" -#include "G4DCIOcatalog.hh" -#include "G4VPEventIO.hh" -#include "G4VPHitIO.hh" -#include "G4VPDigitIO.hh" -#include "G4VTransactionManager.hh" -#include - -class G4PersistencyCenter; - -// Class inherited: -#include "G4VPersistencyManager.hh" - // Class Description: -// Manager base class to handle event store and retrieve operation. -// Actual persistency implementation should be handled with -// derived classes. -// -// Each persistency package should implement derived classes of -// G4VHepMCIO, G4VMCTruthIO, G4VPHitIO, G4VPDigitIO, G4VPEventIO. -// Concreate G4PersistencyManager should implement the methods -// HepMCIO(), MCTruthIO(), HitIO(), DigitIO() and EventIO() to -// return the pointers of the above classes. -// G4PersistencyManager handles the sequence of the storing and -// retrieving of the persistent object of each type, along with -// the transaction handling. -// -// Retrieving a HepMC event: -// +// +// Manager base class to handle event store and retrieve operation. +// Actual persistency implementation should be handled with derived classes. +// +// Each persistency package should implement derived classes of +// G4VHepMCIO, G4VMCTruthIO, G4VPHitIO, G4VPDigitIO, G4VPEventIO. +// Concreate G4PersistencyManager should implement the methods +// HepMCIO(), MCTruthIO(), HitIO(), DigitIO() and EventIO() to +// return the pointers of the above classes. +// G4PersistencyManager handles the sequence of the storing and +// retrieving of the persistent object of each type, along with +// the transaction handling. +// +// Retrieving a HepMC event: +// // G4PersistencyManager::Retrieve( HepMC::GenEvent*& ) // | // | ... StartRead() ... // | // | ... Commit() ... // V -// -// Storing a Geant4 event: -// +// +// Storing a Geant4 event: +// // G4PersistencyManager::Store( G4Pevent* ) // | // | ... StartUpdate() ... @@ -86,9 +64,9 @@ class G4PersistencyCenter; // | // | ... Commit() ... // V -// -// Retrieving a Geant event: -// +// +// Retrieving a Geant4 event: +// // G4PersistencyManager::Retrieve( event ) // | // | ... StartRead() ... @@ -97,97 +75,116 @@ class G4PersistencyCenter; // | // | ... Commit() ... // V -// -// Hit collection and digit collection of each detector component -// should be handled by detector specific I/O manager, which -// should be registered to the G4PersistencyCenter with -// AddHCIOmanager() and AddDCIOmanager(). Usually this is done -// through a command -// +// +// Hit collection and digit collection of each detector component +// should be handled by detector specific I/O manager, which +// should be registered to the G4PersistencyCenter with +// AddHCIOmanager() and AddDCIOmanager(). Usually this is done +// through a command +// // /Persistency/Store/Using/HitIO -// -// which is handled by G4PersistencyCenterMessenger. -// -// A static template declaration of G4HCIOentryT must be -// implementated for each I/O manager. +// +// which is handled by G4PersistencyCenterMessenger. +// +// A static template declaration of G4HCIOentryT must be +// implementated for each I/O manager. -class G4PersistencyManager - : public G4VPersistencyManager +// Author: Youhei Morita, 17.07.2001 +// -------------------------------------------------------------------- +#ifndef G4PERSISTENCYMANAGER_HH +#define G4PERSISTENCYMANAGER_HH 1 + +#include "G4Event.hh" + +#include "G4VMCTruthIO.hh" +#include "G4HCIOcatalog.hh" +#include "G4DCIOcatalog.hh" +#include "G4VPEventIO.hh" +#include "G4VPHitIO.hh" +#include "G4VPDigitIO.hh" +#include "G4VTransactionManager.hh" +#include "G4VPersistencyManager.hh" + +class G4PersistencyCenter; + +class G4PersistencyManager : public G4VPersistencyManager { - friend class G4PersistencyCenter; + friend class G4PersistencyCenter; - public: // With description - G4PersistencyManager(G4PersistencyCenter* pc, std::string n); + public: + + G4PersistencyManager(G4PersistencyCenter* pc, const G4String& n); // Constructor - virtual ~G4PersistencyManager(); + virtual ~G4PersistencyManager(); // Destructor - public: // With description - virtual G4PersistencyManager* Create() {return 0;}; - // Create a new persistency manager. To be used by G4PersistencyManagerT<>. + virtual G4PersistencyManager* Create() { return nullptr; } + // Create a new persistency manager. + // To be used by G4PersistencyManagerT<> - std::string GetName() {return nameMgr;}; + const G4String& GetName() { return nameMgr; } // Get the name of persistency manager - virtual G4VPEventIO* EventIO() { return 0; }; + virtual G4VPEventIO* EventIO() { return nullptr; } // Returns the current event I/O handling manager - // Each derived class should return the pointer of actual manager. + // Each derived class should return the pointer of actual manager - virtual G4VPHitIO* HitIO() { return 0; }; + virtual G4VPHitIO* HitIO() { return nullptr; } // Returns the current hit I/O handling manager - // Each derived class should return the pointer of actual manager. + // Each derived class should return the pointer of actual manager - virtual G4VPDigitIO* DigitIO() { return 0; }; + virtual G4VPDigitIO* DigitIO() { return nullptr; } // Returns the current digit I/O handling manager - // Each derived class should return the pointer of actual manager. + // Each derived class should return the pointer of actual manager - virtual G4VMCTruthIO* MCTruthIO() { return 0; }; + virtual G4VMCTruthIO* MCTruthIO() { return nullptr; } // Returns the current MCTruth I/O handling manager - // Each derived class should return the pointer of actual manager. + // Each derived class should return the pointer of actual manager - virtual G4VTransactionManager* TransactionManager() { return 0; }; + virtual G4VTransactionManager* TransactionManager() { return nullptr; } // Returns the current transaction manager - // Each derived class should return the pointer of actual manager. + // Each derived class should return the pointer of actual manager - virtual void Initialize() {}; + virtual void Initialize() {} // Initialize the persistency package. - // Each derived class should implement the acutal initialization sequence. + // Each derived class should implement the acutal initialization sequence - void SetVerboseLevel(int v); - // Set verbose level. + void SetVerboseLevel(G4int v); + // Set verbose level - G4bool Store(const G4Event* evt); + G4bool Store(const G4Event* evt); // Store the G4Event and its associated objects - G4bool Retrieve(G4Event*& evt); + G4bool Retrieve(G4Event*& evt); // Retrieve the G4Event and its associated objects - G4bool Store(const G4Run*) {return false;}; - // not used + G4bool Store(const G4Run*) { return false; } + // Not used - G4bool Retrieve(G4Run*&) {return false;}; - // not used + G4bool Retrieve(G4Run*&) { return false; } + // Not used - G4bool Store(const G4VPhysicalVolume*) {return false;}; - // not used + G4bool Store(const G4VPhysicalVolume*) { return false; } + // Not used - G4bool Retrieve(G4VPhysicalVolume*&) {return false;}; - // not used + G4bool Retrieve(G4VPhysicalVolume*&) { return false; } + // Not used - protected: - static G4PersistencyManager* GetPersistencyManager(); + protected: + + static G4PersistencyManager* GetPersistencyManager(); // Get the instance of persistency manager - protected: - G4PersistencyCenter* f_pc; - int m_verbose; + protected: - private: - std::string nameMgr; - G4bool f_is_initialized; + G4PersistencyCenter* f_pc = nullptr; + G4int m_verbose = 0; -}; // End of class G4PersistencyManager + private: + + G4String nameMgr; + G4bool f_is_initialized = false; +}; #endif - diff --git a/source/persistency/mctruth/include/G4PersistencyManagerT.hh b/source/persistency/mctruth/include/G4PersistencyManagerT.hh index efb35175a3..bd917f63af 100644 --- a/source/persistency/mctruth/include/G4PersistencyManagerT.hh +++ b/source/persistency/mctruth/include/G4PersistencyManagerT.hh @@ -23,108 +23,123 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4PersistencyManagerT.hh +// G4PersistencyManagerT // -// History: -// '01.08.10 Youhei Morita Initial creation (with "fadsclass3") +// Class Description: +// +// Template class of G4PersistencyManager for late binding. -#ifndef PERSISTENCY_MANAGER_T_HH -#define PERSISTENCY_MANAGER_T_HH 1 +// Author: Youhei Morita, 10.08.2001 +// -------------------------------------------------------------------- +#ifndef G4PERSISTENCYMANAGERT_HH +#define G4PERSISTENCYMANAGERT_HH 1 #include "G4PersistencyCenter.hh" - -// Class inherited: #include "G4PersistencyManager.hh" -// Class Description: -// Template class of G4PersistencyManager for late binding - -template class G4PersistencyManagerT - : public G4PersistencyManager +template +class G4PersistencyManagerT : public G4PersistencyManager { - public: // With description - G4PersistencyManagerT(G4PersistencyCenter* pc, std::string n) - : G4PersistencyManager(pc, n), pm(0) + public: + + G4PersistencyManagerT(G4PersistencyCenter* pc, const G4String& n) + : G4PersistencyManager(pc, n) + { + if(m_verbose > 2) { - if ( m_verbose > 2 ) { - G4cout << "G4PersistencyManagerT: Registering G4PersistencyManager \"" - << n << "\"" << G4endl; - } - G4PersistencyCenter::GetPersistencyCenter()-> - RegisterPersistencyManager(this); + G4cout << "G4PersistencyManagerT: Registering G4PersistencyManager \"" + << n << "\"" << G4endl; } + G4PersistencyCenter::GetPersistencyCenter() + ->RegisterPersistencyManager(this); + } // Constructor - ~G4PersistencyManagerT() {}; + ~G4PersistencyManagerT() {} // Destructor - public: // With description - G4PersistencyManager* Create() - { - pm = new T(f_pc, GetName()); - return pm; - } + G4PersistencyManager* Create() + { + pm = new T(f_pc, GetName()); + return pm; + } // Create a new persistency manager - void Delete() { if (pm!=0) delete pm; }; + void Delete() + { + if(pm != nullptr) delete pm; + } // Delete a persistency mamanger - G4VPEventIO* EventIO() - { - if (pm) return pm->EventIO(); - else return 0; - }; + G4VPEventIO* EventIO() + { + if(pm != nullptr) + return pm->EventIO(); + else + return nullptr; + } // Returns the current event I/O handling manager - G4VPHitIO* HitIO() - { - if (pm) return pm->HitIO(); - else return 0; - }; + G4VPHitIO* HitIO() + { + if(pm != nullptr) + return pm->HitIO(); + else + return nullptr; + } // Returns the current hit I/O handling manager - G4VPDigitIO* DigitIO() - { - if (pm) return pm->DigitIO(); - else return 0; - }; + G4VPDigitIO* DigitIO() + { + if(pm != nullptr) + return pm->DigitIO(); + else + return nullptr; + } // Returns the current digit I/O handling manager - G4VHepMCIO* HepMCIO() - { - if (pm) return pm->HepMCIO(); - else return 0; - }; + G4VHepMCIO* HepMCIO() + { + if(pm != nullptr) + return pm->HepMCIO(); + else + return nullptr; + } // Returns the current digit I/O handling manager - G4VMCTruthIO* MCTruthIO() - { - if (pm) return pm->MCTruthIO(); - else return 0; - }; + G4VMCTruthIO* MCTruthIO() + { + if(pm != nullptr) + return pm->MCTruthIO(); + else + return nullptr; + } // Returns the current digit I/O handling manager - G4VTransactionManager* TransactionManager() - { - if (pm) return pm->TransactionManager(); - else return 0; - }; + G4VTransactionManager* TransactionManager() + { + if(pm != nullptr) + return pm->TransactionManager(); + else + return nullptr; + } // Returns the current transaction manager - void Initialize() {}; + void Initialize() {} // Initialize the persistency package. - void SetVerboseLevel(int v) - { - if (pm) return pm->SetVerboseLevel(); - else return 0; - }; + void SetVerboseLevel(G4int v) + { + if(pm != nullptr) + return pm->SetVerboseLevel(); + else + return nullptr; + } // Sets the verbose level to the persistency manager - private: - G4PersistencyManager* pm; + private: -}; // End of class G4PersistencyManagerT + G4PersistencyManager* pm = nullptr; +}; #endif - diff --git a/source/persistency/mctruth/include/G4Pevent.hh b/source/persistency/mctruth/include/G4Pevent.hh index edbd4b873f..29e70d09d9 100644 --- a/source/persistency/mctruth/include/G4Pevent.hh +++ b/source/persistency/mctruth/include/G4Pevent.hh @@ -23,62 +23,61 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4Pevent.hh +// G4Pevent // -// History: -// '01.11.18 Youhei Morita Initial creation +// Class Description: +// +// Geant4 event object for store. +// +// This class has pointers to MCTruth and G4Event. +// +// In the event store operation, this object will be created in the concrete +// class of G4VPEventIO::Store() method, and will be deleted immediately after +// creating persistent Geant4 event. +// +// In the event retrieve operation, this object will be created in the +// concrete Persistency::Retrieve() method. The retrieved G4Pevent +// has to be deleted by the user method which called the Retrieve(). +// Author: Youhei Morita, 18.11.2001 +// -------------------------------------------------------------------- #ifndef G4PEVENT_HH #define G4PEVENT_HH 1 #include "G4Event.hh" #include "G4MCTEvent.hh" -// Class Description: -// Geant4 event object for store. -// -// This class has pointers to MCTruth and G4Event. -// -// In the event store operation, this object will be created in the concrete -// class of G4VPEventIO::Store() method, and will be deleted immediately after -// creating persistent Geant4 event. -// -// In the event retrieve operation, this object will be created in the -// concrete Persistency::Retrieve() method. The retrieved G4Pevent -// has to be deleted by the user method which called the Retrieve(). - class G4Pevent { - public: // With description - G4Pevent( G4MCTEvent* mctevt, G4Event* g4evt ); + public: + + G4Pevent(G4MCTEvent* mctevt, G4Event* g4evt); // Constructor - ~G4Pevent(); + ~G4Pevent(); // Destructor - public: // With description - int GetEventID() { return m_id; }; - // returns the event ID. + G4int GetEventID() { return m_id; } + // Returns the event ID - G4Event* GetEvent() { return f_g4evt; }; - // returns the G4Event. + G4Event* GetEvent() { return f_g4evt; } + // Returns the G4Event - G4MCTEvent* GetMCTEvent() { return f_mctevt; }; - // returns the MCTruth event. + G4MCTEvent* GetMCTEvent() { return f_mctevt; } + // Returns the MCTruth event - int GetGenEventID() const { return genEventID; }; - // returns the GenEvent ID. + G4int GetGenEventID() const { return genEventID; } + // Returns the GenEvent ID - void SetGenEventID(int id) { genEventID=id; }; - // set the GenEvent ID. + void SetGenEventID(G4int id) { genEventID = id; } + // Sets the GenEvent ID - private: - int genEventID; - G4MCTEvent* f_mctevt; - G4Event* f_g4evt; - int m_id; + private: -}; // End of class G4Pevent + G4MCTEvent* f_mctevt = nullptr; + G4Event* f_g4evt = nullptr; + G4int genEventID = -1; + G4int m_id = -1; +}; #endif - diff --git a/source/persistency/mctruth/include/G4VDCIOentry.hh b/source/persistency/mctruth/include/G4VDCIOentry.hh index c2dca75470..ffa63718cd 100644 --- a/source/persistency/mctruth/include/G4VDCIOentry.hh +++ b/source/persistency/mctruth/include/G4VDCIOentry.hh @@ -23,47 +23,46 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VDCIOentry.hh +// G4VDCIOentry // -// History: -// '01.09.12 Youhei Morita Initial creation +// Class Description: +// +// Abstract base class for digits collection I/O manager entry. -#ifndef VDCIO_ENTRY_T_HH -#define VDCIO_ENTRY_T_HH 1 +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- +#ifndef G4VDCIOENTRYT_HH +#define G4VDCIOENTRYT_HH 1 #include "G4Types.hh" -#include #include "G4PersistencyCenter.hh" -// Class Description: -// Abstract base class for digits collection I/O manager entry - class G4VDCIOentry { - public: // With description - G4VDCIOentry(std::string n); + public: + + G4VDCIOentry(const G4String& n); // Constructor - virtual ~G4VDCIOentry() {} + virtual ~G4VDCIOentry() {} // Destructor - public: // With description - void SetVerboseLevel(G4int v) { m_verbose = v; } - // Set verbose level. + void SetVerboseLevel(G4int v) { m_verbose = v; } + // Sets verbose level - std::string GetName() { return m_name; } + const G4String& GetName() { return m_name; } // Returns the name of the DC I/O manager entry - virtual void CreateDCIOmanager(std::string, std::string) {} + virtual void CreateDCIOmanager(const G4String&, const G4String&) {} // virtual method for creating DC I/O manager for the detector - protected: - G4int m_verbose; + protected: - private: - std::string m_name; + G4int m_verbose = 0; -}; // End of class G4VDCIOentry + private: + + G4String m_name; +}; #endif - diff --git a/source/persistency/mctruth/include/G4VHCIOentry.hh b/source/persistency/mctruth/include/G4VHCIOentry.hh index b93ed591f7..36765174d3 100644 --- a/source/persistency/mctruth/include/G4VHCIOentry.hh +++ b/source/persistency/mctruth/include/G4VHCIOentry.hh @@ -23,47 +23,46 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VHCIOentry.hh +// G4VHCIOentry // -// History: -// '01.09.12 Youhei Morita Initial creation +// Class Description: +// +// Abstract base class for hits collection I/O manager entry. -#ifndef VHCIO_ENTRY_T_HH -#define VHCIO_ENTRY_T_HH 1 +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- +#ifndef G4VHCIOENTRYT_HH +#define G4VHCIOENTRYT_HH 1 #include "G4Types.hh" -#include #include "G4PersistencyCenter.hh" -// Class Description: -// Abstract base class for hits collection I/O manager entry - class G4VHCIOentry { - public: // With description - G4VHCIOentry(std::string n); + public: + + G4VHCIOentry(const G4String& n); // Constructor - virtual ~G4VHCIOentry() {} + virtual ~G4VHCIOentry() {} // Destructor - public: // With description - void SetVerboseLevel(G4int v) { m_verbose = v; } - // Set verbose level. + void SetVerboseLevel(G4int v) { m_verbose = v; } + // Sets verbose level. - std::string GetName() { return m_name; } + const G4String& GetName() { return m_name; } // Returns the name of the HC I/O manager entry - virtual void CreateHCIOmanager(std::string, std::string) {} - // virtual method for creating HC I/O manager for the detector + virtual void CreateHCIOmanager(const G4String&, const G4String&) {} + // Virtual method for creating HC I/O manager for the detector - protected: - G4int m_verbose; + protected: - private: - std::string m_name; + G4int m_verbose = 0; -}; // End of class G4VHCIOentry + private: + + G4String m_name; +}; #endif - diff --git a/source/persistency/mctruth/include/G4VMCTruthIO.hh b/source/persistency/mctruth/include/G4VMCTruthIO.hh index c2dac492b4..f68266f32f 100644 --- a/source/persistency/mctruth/include/G4VMCTruthIO.hh +++ b/source/persistency/mctruth/include/G4VMCTruthIO.hh @@ -23,46 +23,45 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VMCTruthIO.hh +// G4VMCTruthIO // -// History: -// '01.11.18 Youhei Morita Initial creation +// Class Description: +// +// Abstract base class for storing and retrieving MCTruth events. -#ifndef V_M_C_TRUTH_I_O_HH -#define V_M_C_TRUTH_I_O_HH 1 +// Author: Youhei Morita, 18.11.2001 +// -------------------------------------------------------------------- +#ifndef G4VMCTRUTHIO_HH +#define G4VMCTRUTHIO_HH 1 #include "G4MCTEvent.hh" -// Class Description: -// Abstract base class for storing and retrieving MCTruth events. - class G4VMCTruthIO { - public: // With description - G4VMCTruthIO(); + public: + + G4VMCTruthIO(); // Constructor - virtual ~G4VMCTruthIO(); + virtual ~G4VMCTruthIO(); // Destructor - public: // With description - virtual G4bool Store(G4MCTEvent*) =0; + virtual G4bool Store(G4MCTEvent*) = 0; // Pure virtual method for storing MCTruth Event. // Each persistency package should implement a concrete method - // of storing the G4MCTEvent with this signature. + // of storing the G4MCTEvent with this signature - virtual G4bool Retrieve(G4MCTEvent*&) =0; + virtual G4bool Retrieve(G4MCTEvent*&) = 0; // Pure virtual method for retrieving MCTruth Event. // Each persistency package should implement a concrete method - // of storing the G4MCTEvent with this signature. + // of storing the G4MCTEvent with this signature - void SetVerboseLevel(int v) { m_verbose = v; }; + void SetVerboseLevel(G4int v) { m_verbose = v; } // Set verbose level. - protected: - G4int m_verbose; + protected: -}; // End of class G4VMCTruthIO + G4int m_verbose = 0; +}; #endif - diff --git a/source/persistency/mctruth/include/G4VPDigitIO.hh b/source/persistency/mctruth/include/G4VPDigitIO.hh index b4874cfcbc..40beed18b2 100644 --- a/source/persistency/mctruth/include/G4VPDigitIO.hh +++ b/source/persistency/mctruth/include/G4VPDigitIO.hh @@ -23,57 +23,57 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VPDigitIO.hh +// G4VPDigitIO // -// History: -// '01.08.10 Youhei Morita Initial creation (with "fadsclass3") +// Class Description: +// +// Abstract base class for storing and retrieving digit collections. -#ifndef V_P_DIGIT_I_O_HH -#define V_P_DIGIT_I_O_HH 1 +// Author: Youhei Morita, 10.08.2001 +// -------------------------------------------------------------------- +#ifndef G4VPDIGITIO_HH +#define G4VPDIGITIO_HH 1 #include "G4DCofThisEvent.hh" #include "G4DCIOcatalog.hh" #include "G4VPDigitsCollectionIO.hh" -// Class Description: -// Abstract base class for storing and retrieving digit collections - class G4VPDigitIO { - public: // With description - G4VPDigitIO(); + public: + + G4VPDigitIO(); // Constructor - virtual ~G4VPDigitIO() {}; + virtual ~G4VPDigitIO() {} // Destructor - public: // With description - G4VPDigitIO* GetVPDigitIO() { return f_G4VPDigitIO; }; - // Returns the pointer of the digit collection I/O manager. + G4VPDigitIO* GetVPDigitIO() { return f_G4VPDigitIO; } + // Returns the pointer of the digit collection I/O manager - virtual G4bool Store(const G4DCofThisEvent*) =0; + virtual G4bool Store(const G4DCofThisEvent*) = 0; // Pure virtual method for storing digit collections of this event. // Each persistency package should implement a concrete method - // of storing the digit collection of this event with this signature. + // of storing the digit collection of this event with this signature - virtual G4bool Retrieve(G4DCofThisEvent*&) =0; + virtual G4bool Retrieve(G4DCofThisEvent*&) = 0; // Pure virtual method for retrieving digit collections of this event. // Each persistency package should implement a concrete method - // of storing the digit collection of this event with this signature. + // of storing the digit collection of this event with this signature - void SetVerboseLevel(int v); - // Set verbose level. + void SetVerboseLevel(G4int v); + // Sets verbose level - protected: - void SetG4VPDigitIO(G4VPDigitIO* digitMan) { f_G4VPDigitIO = digitMan; }; - // Registers the digit collection I/O manager. + protected: - protected: - G4int m_verbose; - static G4ThreadLocal G4VPDigitIO* f_G4VPDigitIO; - G4DCIOcatalog* f_catalog; + void SetG4VPDigitIO(G4VPDigitIO* digitMan) { f_G4VPDigitIO = digitMan; } + // Registers the digit collection I/O manager -}; // End of class G4VPDigitIO + protected: + + G4int m_verbose = 0; + static G4ThreadLocal G4VPDigitIO* f_G4VPDigitIO; + G4DCIOcatalog* f_catalog = nullptr; +}; #endif - diff --git a/source/persistency/mctruth/include/G4VPDigitsCollectionIO.hh b/source/persistency/mctruth/include/G4VPDigitsCollectionIO.hh index 4673c9016c..707ed33716 100644 --- a/source/persistency/mctruth/include/G4VPDigitsCollectionIO.hh +++ b/source/persistency/mctruth/include/G4VPDigitsCollectionIO.hh @@ -23,57 +23,56 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VPDigitsCollectionIO.hh +// G4VPDigitsCollectionIO // -// History: -// '01.08.16 Youhei Morita Initial creation +// Class Description: +// +// Abstract base class for storing and retrieving digit collections. -#ifndef V_P_DIGITS_COLLECTION_I_O_HH -#define V_P_DIGITS_COLLECTION_I_O_HH 1 +// Author: Youhei Morita, 16.08.2001 +// -------------------------------------------------------------------- +#ifndef G4VPDIGITSCOLLECTIONIO_HH +#define G4VPDIGITSCOLLECTIONIO_HH 1 #include "G4VDigiCollection.hh" -// Class Description: -// Abstract base class for storing and retrieving digit collections - class G4VPDigitsCollectionIO { - public: // With description - G4VPDigitsCollectionIO( std::string detName, std::string colName ); + public: + + G4VPDigitsCollectionIO(const G4String& detName, const G4String& colName); // Constructor - virtual ~G4VPDigitsCollectionIO() {}; + virtual ~G4VPDigitsCollectionIO() {} // Destructor - public: // With description - virtual G4bool Store(const G4VDigiCollection*) =0; + virtual G4bool Store(const G4VDigiCollection*) = 0; // Pure virtual method for storing the digit collection. // Each persistency package should implement a concrete method - // with this signature. + // with this signature - virtual G4bool Retrieve(G4VDigiCollection*&) =0; + virtual G4bool Retrieve(G4VDigiCollection*&) = 0; // Pure virtual method for retrieving the digit collection. // Each persistency package should implement a concrete method - // with this signature. + // with this signature - G4bool operator== (const G4VPDigitsCollectionIO& right) const; - // virtual operator for comparing digit collections with names. + G4bool operator==(const G4VPDigitsCollectionIO& right) const; + // Virtual operator for comparing digit collections with names - std::string DMname() { return f_detName; }; - // Returns the digitizer module name. + const G4String& DMname() { return f_detName; } + // Returns the digitizer module name - std::string CollectionName() { return f_colName; }; - // Returns the digit collection name. + const G4String& CollectionName() { return f_colName; } + // Returns the digit collection name - void SetVerboseLevel(int v) { m_verbose = v; }; + void SetVerboseLevel(G4int v) { m_verbose = v; } // Sets the verbose level - protected: - G4int m_verbose; - std::string f_detName; - std::string f_colName; + protected: -}; // End of class G4VPDigitsCollectionIO + G4int m_verbose = 0; + G4String f_detName; + G4String f_colName; +}; #endif - diff --git a/source/persistency/mctruth/include/G4VPEventIO.hh b/source/persistency/mctruth/include/G4VPEventIO.hh index 07142ac7c0..f6dfb9cd86 100644 --- a/source/persistency/mctruth/include/G4VPEventIO.hh +++ b/source/persistency/mctruth/include/G4VPEventIO.hh @@ -23,50 +23,49 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VPEventIO.hh +// G4VPEventIO // -// History: -// '01.08.10 Youhei Morita Initial creation (with "fadsclass3") +// Class Description: +// +// Abstract base class for storing and retrieving an event object. -#ifndef V_P_EVENT_I_O_HH -#define V_P_EVENT_I_O_HH 1 +// Author: Youhei Morita, 10.08.2001 +// -------------------------------------------------------------------- +#ifndef G4VPEVENTIO_HH +#define G4VPEVENTIO_HH 1 #include "G4Event.hh" #include "G4Pevent.hh" -// Class Description: -// Abstract base class for storing and retrieving an event object - class G4VPEventIO { - public: // With description - G4VPEventIO(); + public: + + G4VPEventIO(); // Constructor - virtual ~G4VPEventIO() {}; + virtual ~G4VPEventIO() {} // Destructor - public: // With description - void SetVerboseLevel(int v) { m_verbose = v; }; - // Set verbose level. + inline void SetVerboseLevel(G4int v) { m_verbose = v; } + // Sets verbose level - inline G4int CurrentEventID() { return m_currentEvtID; }; - // Returns the current event id. + inline G4int CurrentEventID() { return m_currentEvtID; } + // Returns the current event id - virtual G4bool Store( const G4Event* anEvent ) =0; - // Store a Geant4 event. + virtual G4bool Store(const G4Event* anEvent) = 0; + // Store a Geant4 event - virtual G4bool Retrieve( G4Pevent*& anEvent ) =0; - // Retrieve a Geant4 event. + virtual G4bool Retrieve(G4Pevent*& anEvent) = 0; + // Retrieve a Geant4 event - virtual G4bool Retrieve( G4Event*& anEvent ) =0; - // Retrieve a Geant4 event. + virtual G4bool Retrieve(G4Event*& anEvent) = 0; + // Retrieve a Geant4 event - protected: - G4int m_verbose; - G4int m_currentEvtID; + protected: -}; // End of class G4VPEventIO + G4int m_verbose = 0; + G4int m_currentEvtID = 0; +}; #endif - diff --git a/source/persistency/mctruth/include/G4VPHitIO.hh b/source/persistency/mctruth/include/G4VPHitIO.hh index 08efa48cfe..9c609a4adc 100644 --- a/source/persistency/mctruth/include/G4VPHitIO.hh +++ b/source/persistency/mctruth/include/G4VPHitIO.hh @@ -23,57 +23,57 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VPHitIO.hh +// G4VPHitIO // -// History: -// '01.08.10 Youhei Morita Initial creation (with "fadsclass3") +// Class Description: +// +// Abstract base class for storing and retrieving hit collections. -#ifndef V_P_HIT_I_O_HH -#define V_P_HIT_I_O_HH 1 +// Author: Youhei Morita, 10.08.2001 +// -------------------------------------------------------------------- +#ifndef G4VPHITIO_HH +#define G4VPHITIO_HH 1 #include "G4HCofThisEvent.hh" #include "G4HCIOcatalog.hh" #include "G4VPHitsCollectionIO.hh" -// Class Description: -// Abstract base class for storing and retrieving hit collections - class G4VPHitIO { - public: // With description - G4VPHitIO(); + public: + + G4VPHitIO(); // Constructor - virtual ~G4VPHitIO() {}; + virtual ~G4VPHitIO() {} // Destructor - public: // With description - G4VPHitIO* GetVPHitIO() { return f_G4VPHitIO; }; - // Returns the pointer of the hit collection I/O manager. + G4VPHitIO* GetVPHitIO() { return f_G4VPHitIO; } + // Returns the pointer of the hit collection I/O manager - virtual G4bool Store(const G4HCofThisEvent*) =0; + virtual G4bool Store(const G4HCofThisEvent*) = 0; // Pure virtual method for storing hit collections of this event. // Each persistency package should implement a concrete method - // of storing the hit collection of this event with this signature. + // of storing the hit collection of this event with this signature - virtual G4bool Retrieve(G4HCofThisEvent*&) =0; + virtual G4bool Retrieve(G4HCofThisEvent*&) = 0; // Pure virtual method for retrieving hit collections of this event. // Each persistency package should implement a concrete method - // of storing the hit collection of this event with this signature. + // of storing the hit collection of this event with this signature - void SetVerboseLevel(int v); - // Set verbose level. + void SetVerboseLevel(G4int v); + // Sets verbose level - protected: - void SetG4VPHitIO(G4VPHitIO* hitMan) { f_G4VPHitIO = hitMan; }; - // Registers the hit collection I/O manager. + protected: - protected: - G4int m_verbose; - static G4ThreadLocal G4VPHitIO* f_G4VPHitIO; - G4HCIOcatalog* f_catalog; + void SetG4VPHitIO(G4VPHitIO* hitMan) { f_G4VPHitIO = hitMan; } + // Registers the hit collection I/O manager -}; // End of class G4VPHitIO + protected: + + G4int m_verbose = 0; + static G4ThreadLocal G4VPHitIO* f_G4VPHitIO; + G4HCIOcatalog* f_catalog = nullptr; +}; #endif - diff --git a/source/persistency/mctruth/include/G4VPHitsCollectionIO.hh b/source/persistency/mctruth/include/G4VPHitsCollectionIO.hh index ba55891f63..614d5f1788 100644 --- a/source/persistency/mctruth/include/G4VPHitsCollectionIO.hh +++ b/source/persistency/mctruth/include/G4VPHitsCollectionIO.hh @@ -23,57 +23,56 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VPHitsCollectionIO.hh +// G4VPHitsCollectionIO // -// History: -// '01.08.16 Youhei Morita Initial creation +// Class Description: +// +// Abstract base class for storing and retrieving hit collections -#ifndef V_P_HITS_COLLECTION_I_O_HH -#define V_P_HITS_COLLECTION_I_O_HH 1 +// Author: Youhei Morita, 16.08.2001 +// -------------------------------------------------------------------- +#ifndef G4VPHITSCOLLECTIONIO_HH +#define G4VPHITSCOLLECTIONIO_HH 1 #include "G4VHitsCollection.hh" -// Class Description: -// Abstract base class for storing and retrieving hit collections - class G4VPHitsCollectionIO { - public: // With description - G4VPHitsCollectionIO( std::string detName, std::string colName ); + public: + + G4VPHitsCollectionIO(const G4String& detName, const G4String& colName); // Constructor - virtual ~G4VPHitsCollectionIO() {}; + virtual ~G4VPHitsCollectionIO(){}; // Destructor - public: // With description - virtual G4bool Store(const G4VHitsCollection*) =0; + virtual G4bool Store(const G4VHitsCollection*) = 0; // Pure virtual method for storing the hit collection. // Each persistency package should implement a concrete method - // with this signature. + // with this signature - virtual G4bool Retrieve(G4VHitsCollection*&) =0; + virtual G4bool Retrieve(G4VHitsCollection*&) = 0; // Pure virtual method for retrieving the hit collection. // Each persistency package should implement a concrete method - // with this signature. + // with this signature - G4bool operator== (const G4VPHitsCollectionIO& right) const; - // virtual operator for comparing hit collections with names. + G4bool operator==(const G4VPHitsCollectionIO& right) const; + // virtual operator for comparing hit collections with names - std::string SDname() { return f_detName; }; - // Returns the sensitive detector name. + const G4String& SDname() { return f_detName; } + // Returns the sensitive detector name - std::string CollectionName() { return f_colName; }; - // Returns the hit collection name. + const G4String& CollectionName() { return f_colName; } + // Returns the hit collection name - void SetVerboseLevel(int v) { m_verbose = v; }; + void SetVerboseLevel(G4int v) { m_verbose = v; } // Sets the verbose level - protected: - G4int m_verbose; - std::string f_detName; - std::string f_colName; + protected: -}; // End of class G4VPHitsCollectionIO + G4int m_verbose = 0; + G4String f_detName; + G4String f_colName; +}; #endif - diff --git a/source/persistency/mctruth/include/G4VTransactionManager.hh b/source/persistency/mctruth/include/G4VTransactionManager.hh index bb7a07868b..b6a6b6cb98 100644 --- a/source/persistency/mctruth/include/G4VTransactionManager.hh +++ b/source/persistency/mctruth/include/G4VTransactionManager.hh @@ -23,55 +23,55 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VTransactionManager.hh +// G4VTransactionManager // -// History: -// 01.07.18 Youhei Morita Initial creation (with "fadsclass") +// Class Description: +// +// Abstract base class for starting and commiting or aborting data +// transaction. -#ifndef V_TRANSACTION_MANAGER_HH -#define V_TRANSACTION_MANAGER_HH 1 +// Author: Youhei Morita, 18.07.2001 +// -------------------------------------------------------------------- +#ifndef G4VTRANSACTIONMANAGER_HH +#define G4VTRANSACTIONMANAGER_HH 1 #include "G4Types.hh" #include -// Class Description: -// Abstract base class for starting and commiting or aborting data transaction - class G4VTransactionManager { - public: // With description - G4VTransactionManager() : m_verbose(0) {}; + public: + + G4VTransactionManager() {} // Constructor - virtual ~G4VTransactionManager() {}; + virtual ~G4VTransactionManager() {} // Destructor - public: // With description - void SetVerboseLevel(int v) { m_verbose = v; }; - // Set verbose level. + void SetVerboseLevel(int v) { m_verbose = v; } + // Set verbose level - virtual G4bool SelectReadFile(std::string obj, std::string file)=0; - // Set the input file name and open it for the object type "obj". + virtual G4bool SelectReadFile(std::string obj, std::string file) = 0; + // Set the input file name and open it for the object type "obj" - virtual G4bool SelectWriteFile(std::string obj, std::string file)=0; - // Set the output file name and open it for the object type "obj". + virtual G4bool SelectWriteFile(std::string obj, std::string file) = 0; + // Set the output file name and open it for the object type "obj" - virtual G4bool StartUpdate()=0; + virtual G4bool StartUpdate() = 0; // Start an update transaction for event store and retrieve - virtual G4bool StartRead()=0; + virtual G4bool StartRead() = 0; // Start a read-only transaction for event store and retrieve - virtual void Commit()=0; + virtual void Commit() = 0; // commit the transaction for event store and retrieve - virtual void Abort()=0; + virtual void Abort() = 0; // abort the transaction for event store and retrieve - protected: - G4int m_verbose; + protected: -}; // End of class G4VTransactionManager + G4int m_verbose = 0; +}; #endif - diff --git a/source/persistency/mctruth/src/G4DCIOcatalog.cc b/source/persistency/mctruth/src/G4DCIOcatalog.cc index 02bcc3d5da..6daad32af5 100644 --- a/source/persistency/mctruth/src/G4DCIOcatalog.cc +++ b/source/persistency/mctruth/src/G4DCIOcatalog.cc @@ -23,128 +23,138 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4DCIOcatalog.cc +// G4DCIOcatalog implementation // -// History: -// '01.09.12 Youhei Morita Initial creation +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- #include "G4DCIOcatalog.hh" - -// Addtional Include: #include "G4VDCIOentry.hh" -G4ThreadLocal G4DCIOcatalog* G4DCIOcatalog::f_thePointer = 0; +G4ThreadLocal G4DCIOcatalog* G4DCIOcatalog::f_thePointer = nullptr; -// Implementation of Constructor #1 +// -------------------------------------------------------------------- G4DCIOcatalog::G4DCIOcatalog() - : m_verbose(0) -{} +{ +} -// Implementation of GetDCIOcatalog +// -------------------------------------------------------------------- G4DCIOcatalog* G4DCIOcatalog::GetDCIOcatalog() { - if ( f_thePointer == 0 ) f_thePointer = new G4DCIOcatalog; + if(f_thePointer == nullptr) + f_thePointer = new G4DCIOcatalog; return f_thePointer; } -// Implementation of RegisterEntry +// -------------------------------------------------------------------- void G4DCIOcatalog::RegisterEntry(G4VDCIOentry* d) { - if ( m_verbose > 0 ) { - G4cout << "registering I/O manager entry \"" << d->GetName() - << "\" " << d << "." << G4endl; + if(m_verbose > 0) + { + G4cout << "registering I/O manager entry \"" << d->GetName() << "\" " << d + << "." << G4endl; } - if ( theCatalog.find(d->GetName()) != theCatalog.end() ) { + if(theCatalog.find(d->GetName()) != theCatalog.cend()) + { G4cout << "Redefining I/O Managers list " << d->GetName() << G4endl; - } else { + } + else + { theCatalog[d->GetName()] = d; } } -// Implementation of RegisterDCIOmanager +// -------------------------------------------------------------------- void G4DCIOcatalog::RegisterDCIOmanager(G4VPDigitsCollectionIO* d) { - if ( m_verbose > 0 ) { - G4cout << "registering I/O manager \"" << d->DMname() - << "\" " << d << "." << G4endl; + if(m_verbose > 0) + { + G4cout << "registering I/O manager \"" << d->DMname() << "\" " << d << "." + << G4endl; } - if ( theStore.find(d->DMname()) != theStore.end() ) { + if(theStore.find(d->DMname()) != theStore.cend()) + { G4cout << "Redefining I/O Manager " << d->DMname() << G4endl; - } else { + } + else + { theStore[d->DMname()] = d; } } -// Implementation of GetEntry -G4VDCIOentry* G4DCIOcatalog::GetEntry(std::string name) +// -------------------------------------------------------------------- +G4VDCIOentry* G4DCIOcatalog::GetEntry(const G4String& name) { - if ( theCatalog.find(name) == theCatalog.end() ) { - G4cout << "Digit Collection I/O manager entry \"" << name - << "\" not found!" << G4endl; - return 0; - } else { + if(theCatalog.find(name) == theCatalog.cend()) + { + G4cout << "Digit Collection I/O manager entry \"" << name << "\" not found!" + << G4endl; + return nullptr; + } + else + { G4VDCIOentry* ds = theCatalog[name]; return ds; } } -// Implementation of GetDCIOmanager -G4VPDigitsCollectionIO* G4DCIOcatalog::GetDCIOmanager(std::string name) +// -------------------------------------------------------------------- +G4VPDigitsCollectionIO* G4DCIOcatalog::GetDCIOmanager(const G4String& name) { - if ( theStore.find(name) == theStore.end() ) { - G4cout << "Digit Collection I/O manager \"" << name - << "\" not found!" << G4endl; - return 0; - } else { + if(theStore.find(name) == theStore.cend()) + { + G4cout << "Digit Collection I/O manager \"" << name << "\" not found!" + << G4endl; + return nullptr; + } + else + { G4VPDigitsCollectionIO* ds = theStore[name]; return ds; } } -// Implementation of PrintEntries +// -------------------------------------------------------------------- void G4DCIOcatalog::PrintEntries() { G4cout << "I/O manager entries: "; G4cout << theCatalog.size() << G4endl; - DCIOmap::const_iterator it; - for ( it=theCatalog.begin(); it != theCatalog.end(); it++ ) { + for(auto it = theCatalog.cbegin(); it != theCatalog.cend(); ++it) + { G4cout << " --- " << (*it).first << G4endl; } } -// Implementation of CurrentDCIOmanager -std::string G4DCIOcatalog::CurrentDCIOmanager() +// -------------------------------------------------------------------- +G4String G4DCIOcatalog::CurrentDCIOmanager() { - std::string list = ""; - DCIOstore::const_iterator it; - for ( it=theStore.begin(); it != theStore.end(); it++ ) { + G4String list = ""; + for(auto it = theStore.cbegin(); it != theStore.cend(); ++it) + { list += (*it).first + " "; } return list; } -// Implementation of PrintDCIOmanager +// -------------------------------------------------------------------- void G4DCIOcatalog::PrintDCIOmanager() { G4cout << "I/O managers: "; G4cout << theStore.size() << G4endl; - DCIOstore::const_iterator it; - for ( it=theStore.begin(); it != theStore.end(); it++ ) { - G4cout << " --- " << (*it).first - << ", " << (*it).second << "." << G4endl; + for(auto it = theStore.cbegin(); it != theStore.cend(); ++it) + { + G4cout << " --- " << (*it).first << ", " << (*it).second << "." << G4endl; } } -// Implementation of GetDCIOmanager -G4VPDigitsCollectionIO* G4DCIOcatalog::GetDCIOmanager(int n) +// -------------------------------------------------------------------- +G4VPDigitsCollectionIO* G4DCIOcatalog::GetDCIOmanager(G4int n) { - int i = 0; - DCIOstore::const_iterator it; - for ( it=theStore.begin(); it != theStore.end(); it++ ) { - if (i++ == n) return (*it).second; + G4int i = 0; + for(auto it = theStore.cbegin(); it != theStore.cend(); ++it) + { + if(i++ == n) + return (*it).second; } - return 0; + return nullptr; } - -// End of G4DCIOcatalog.cc - diff --git a/source/persistency/mctruth/src/G4FileUtilities.cc b/source/persistency/mctruth/src/G4FileUtilities.cc index a62fac71aa..034c8f4c51 100644 --- a/source/persistency/mctruth/src/G4FileUtilities.cc +++ b/source/persistency/mctruth/src/G4FileUtilities.cc @@ -23,52 +23,57 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4FileUtilities.cc +// G4FileUtilities implementation // -// History: -// 01.08.24 Youhei Morita Initial creation +// Author: Youhei Morita, 24.08.2001 +// -------------------------------------------------------------------- #ifndef WIN32 #include "G4FileUtilities.hh" -// Implementation of Default Constructor +// -------------------------------------------------------------------- G4FileUtilities::G4FileUtilities() { } -// Implementation of Default Destructor +// -------------------------------------------------------------------- G4FileUtilities::~G4FileUtilities() { } -// Implementation of FileExists -G4bool G4FileUtilities::FileExists(const std::string file) +// -------------------------------------------------------------------- +G4bool G4FileUtilities::FileExists(const G4String& file) { - char* c = (char *) file.c_str(); + char* c = (char*) file.c_str(); - G4int fd = ::open( c, O_RDONLY ); + G4int fd = ::open(c, O_RDONLY); // G4int error = errno; - if ( fd != -1 ) { - ::close( fd ); + if(fd != -1) + { + ::close(fd); return true; - } else { + } + else + { return false; } } -// Implementation of CopyFile -G4int G4FileUtilities::CopyFile(const std::string srcFile, const std::string dstFile) +// -------------------------------------------------------------------- +G4int G4FileUtilities::CopyFile(const G4String& srcFile, + const G4String& dstFile) { std::string cmd = "cp " + srcFile + " " + dstFile; - return Shell( cmd ); + return Shell(cmd); } -// Implementation of DeleteFile -G4int G4FileUtilities::DeleteFile(const std::string file, const std::string option) +// -------------------------------------------------------------------- +G4int G4FileUtilities::DeleteFile(const G4String& file, + const G4String& option) { std::string cmd = "rm " + option + " " + file; - return Shell( cmd ); + return Shell(cmd); } #endif diff --git a/source/persistency/mctruth/src/G4HCIOcatalog.cc b/source/persistency/mctruth/src/G4HCIOcatalog.cc index ebb3a56a1e..46bd9b266d 100644 --- a/source/persistency/mctruth/src/G4HCIOcatalog.cc +++ b/source/persistency/mctruth/src/G4HCIOcatalog.cc @@ -23,128 +23,138 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4HCIOcatalog.cc +// G4HCIOcatalog implementation // -// History: -// '01.09.12 Youhei Morita Initial creation +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- #include "G4HCIOcatalog.hh" - -// Addtional Include: #include "G4VHCIOentry.hh" G4ThreadLocal G4HCIOcatalog* G4HCIOcatalog::f_thePointer = 0; -// Implementation of Constructor #1 +// -------------------------------------------------------------------- G4HCIOcatalog::G4HCIOcatalog() - : m_verbose(0) -{} +{ +} -// Implementation of GetHCIOcatalog +// -------------------------------------------------------------------- G4HCIOcatalog* G4HCIOcatalog::GetHCIOcatalog() { - if ( f_thePointer == 0 ) f_thePointer = new G4HCIOcatalog; + if(f_thePointer == nullptr) + f_thePointer = new G4HCIOcatalog; return f_thePointer; } -// Implementation of RegisterEntry +// -------------------------------------------------------------------- void G4HCIOcatalog::RegisterEntry(G4VHCIOentry* d) { - if ( m_verbose > 0 ) { - G4cout << "registering I/O manager entry \"" << d->GetName() - << "\" " << d << "." << G4endl; + if(m_verbose > 0) + { + G4cout << "registering I/O manager entry \"" << d->GetName() << "\" " << d + << "." << G4endl; } - if ( theCatalog.find(d->GetName()) != theCatalog.end() ) { + if(theCatalog.find(d->GetName()) != theCatalog.cend()) + { G4cout << "Redefining I/O Managers list " << d->GetName() << G4endl; - } else { + } + else + { theCatalog[d->GetName()] = d; } } -// Implementation of RegisterHCIOmanager +// -------------------------------------------------------------------- void G4HCIOcatalog::RegisterHCIOmanager(G4VPHitsCollectionIO* d) { - if ( m_verbose > 0 ) { - G4cout << "registering I/O manager \"" << d->SDname() - << "\" " << d << "." << G4endl; + if(m_verbose > 0) + { + G4cout << "registering I/O manager \"" << d->SDname() << "\" " << d << "." + << G4endl; } - if ( theStore.find(d->SDname()) != theStore.end() ) { + if(theStore.find(d->SDname()) != theStore.cend()) + { G4cout << "Redefining I/O Manager " << d->SDname() << G4endl; - } else { + } + else + { theStore[d->SDname()] = d; } } -// Implementation of GetEntry -G4VHCIOentry* G4HCIOcatalog::GetEntry(std::string name) +// -------------------------------------------------------------------- +G4VHCIOentry* G4HCIOcatalog::GetEntry(const G4String& name) { - if ( theCatalog.find(name) == theCatalog.end() ) { - G4cout << "Hit Collection I/O manager entry \"" << name - << "\" not found!" << std::endl; - return 0; - } else { + if(theCatalog.find(name) == theCatalog.end()) + { + G4cout << "Hit Collection I/O manager entry \"" << name << "\" not found!" + << std::endl; + return nullptr; + } + else + { G4VHCIOentry* ds = theCatalog[name]; return ds; } } -// Implementation of GetHCIOmanager -G4VPHitsCollectionIO* G4HCIOcatalog::GetHCIOmanager(std::string name) +// -------------------------------------------------------------------- +G4VPHitsCollectionIO* G4HCIOcatalog::GetHCIOmanager(const G4String& name) { - if ( theStore.find(name) == theStore.end() ) { - G4cout << "Hit Collection I/O manager \"" << name - << "\" not found!" << G4endl; - return 0; - } else { + if(theStore.find(name) == theStore.cend()) + { + G4cout << "Hit Collection I/O manager \"" << name << "\" not found!" + << G4endl; + return nullptr; + } + else + { G4VPHitsCollectionIO* ds = theStore[name]; return ds; } } -// Implementation of PrintEntries +// -------------------------------------------------------------------- void G4HCIOcatalog::PrintEntries() { G4cout << "I/O manager entries: "; G4cout << theCatalog.size() << G4endl; - HCIOmap::const_iterator it; - for ( it=theCatalog.begin(); it != theCatalog.end(); it++ ) { + for(auto it = theCatalog.cbegin(); it != theCatalog.cend(); ++it) + { G4cout << " --- " << (*it).first << G4endl; } } -// Implementation of CurrentHCIOmanager -std::string G4HCIOcatalog::CurrentHCIOmanager() +// -------------------------------------------------------------------- +G4String G4HCIOcatalog::CurrentHCIOmanager() { - std::string list = ""; - HCIOstore::const_iterator it; - for ( it=theStore.begin(); it != theStore.end(); it++ ) { + G4String list = ""; + for(auto it = theStore.cbegin(); it != theStore.cend(); ++it) + { list += (*it).first + " "; } return list; } -// Implementation of PrintHCIOmanager +// -------------------------------------------------------------------- void G4HCIOcatalog::PrintHCIOmanager() { G4cout << "I/O managers: "; G4cout << theStore.size() << G4endl; - HCIOstore::const_iterator it; - for ( it=theStore.begin(); it != theStore.end(); it++ ) { - G4cout << " --- " << (*it).first - << ", " << (*it).second << "." << G4endl; + for(auto it = theStore.cbegin(); it != theStore.cend(); ++it) + { + G4cout << " --- " << (*it).first << ", " << (*it).second << "." << G4endl; } } -// Implementation of GetHCIOmanager -G4VPHitsCollectionIO* G4HCIOcatalog::GetHCIOmanager(int n) +// -------------------------------------------------------------------- +G4VPHitsCollectionIO* G4HCIOcatalog::GetHCIOmanager(G4int n) { - int i = 0; - HCIOstore::const_iterator it; - for ( it=theStore.begin(); it != theStore.end(); it++ ) { - if (i++ == n) return (*it).second; + G4int i = 0; + for(auto it = theStore.cbegin(); it != theStore.cend(); ++it) + { + if(i++ == n) + return (*it).second; } - return 0; + return nullptr; } - -// End of G4HCIOcatalog.cc - diff --git a/source/persistency/mctruth/src/G4MCTEvent.cc b/source/persistency/mctruth/src/G4MCTEvent.cc index f0dc4e7cc3..b4e3bd300a 100644 --- a/source/persistency/mctruth/src/G4MCTEvent.cc +++ b/source/persistency/mctruth/src/G4MCTEvent.cc @@ -23,9 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// G4MCTEvent.cc +// G4MCTEvent implementation // -// ==================================================================== +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- #include "G4ios.hh" #include "G4MCTEvent.hh" @@ -33,84 +34,75 @@ #include "G4MCTSimEvent.hh" #include "G4MCTSimParticle.hh" -// ==================================================================== -// -// class description -// -// ==================================================================== - -//////////////////// +// -------------------------------------------------------------------- G4MCTEvent::G4MCTEvent() - : eventNumber(0) -//////////////////// { - genEvent= new G4MCTGenEvent(); // will be reused. - simEvent= new G4MCTSimEvent(); + genEvent = new G4MCTGenEvent(); // will be reused. + simEvent = new G4MCTSimEvent(); } -///////////////////// +// -------------------------------------------------------------------- G4MCTEvent::~G4MCTEvent() -///////////////////// { delete genEvent; delete simEvent; } -///////////////////////////////////////////////////// -G4MCTSimParticle* G4MCTEvent::GetSimParticle - (const G4MCTGenParticle& genpart) const -///////////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4MCTSimParticle* G4MCTEvent::GetSimParticle( + const G4MCTGenParticle& genpart) const { - MCTGen2SimParticleMap::const_iterator pos= gen2simParticleMap.find(genpart); - if(pos != gen2simParticleMap.end()) { - return pos-> second; - } else { - return 0; + auto pos = gen2simParticleMap.find(genpart); + if(pos != gen2simParticleMap.cend()) + { + return pos->second; + } + else + { + return nullptr; } } -//////////////////////////////////////////////////// -G4MCTGenParticle G4MCTEvent::GetGenParticle - (const G4MCTSimParticle* simpart) const -//////////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4MCTGenParticle G4MCTEvent::GetGenParticle( + const G4MCTSimParticle* simpart) const { - MCTSim2GenParticleMap::const_iterator - pos= sim2genParticleMap.find(const_cast(simpart)); - if(pos != sim2genParticleMap.end()) { - return pos-> second; - } else { - return G4MCTGenParticle((void*)0,(void*)0); + auto pos = sim2genParticleMap.find(const_cast(simpart)); + if(pos != sim2genParticleMap.cend()) + { + return pos->second; + } + else + { + return G4MCTGenParticle((void*) 0, (void*) 0); } } -//////////////////////////////////////////////////////// -int G4MCTEvent::AddPrimaryPair(const G4MCTGenParticle& genp, - const G4MCTSimParticle* simp) -//////////////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4int G4MCTEvent::AddPrimaryPair(const G4MCTGenParticle& genp, + const G4MCTSimParticle* simp) { - gen2simParticleMap.insert(std::make_pair(const_cast(genp), - const_cast(simp))); - sim2genParticleMap.insert(std::make_pair(const_cast(simp), - const_cast(genp))); + gen2simParticleMap.insert(std::make_pair( + const_cast(genp), const_cast(simp))); + sim2genParticleMap.insert(std::make_pair( + const_cast(simp), const_cast(genp))); return gen2simParticleMap.size(); } -/////////////////////////// +// -------------------------------------------------------------------- void G4MCTEvent::ClearEvent() -/////////////////////////// { gen2simParticleMap.clear(); sim2genParticleMap.clear(); - genEvent-> ClearEvent(); - simEvent-> ClearEvent(); + genEvent->ClearEvent(); + simEvent->ClearEvent(); } -////////////////////////////////////////////// +// -------------------------------------------------------------------- void G4MCTEvent::Print(std::ostream& ostr) const -////////////////////////////////////////////// { ostr << "Event#:" << eventNumber << G4endl; - simEvent-> Print(ostr); + simEvent->Print(ostr); } diff --git a/source/persistency/mctruth/src/G4MCTGenEvent.cc b/source/persistency/mctruth/src/G4MCTGenEvent.cc index 5ad76b1256..8ed3b02954 100644 --- a/source/persistency/mctruth/src/G4MCTGenEvent.cc +++ b/source/persistency/mctruth/src/G4MCTGenEvent.cc @@ -23,59 +23,49 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// G4MCTGenEvent.cc +// G4MCTGenEvent implementation // -// ==================================================================== +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- #include "G4MCTGenEvent.hh" -// ==================================================================== -// -// class description -// -// ==================================================================== - -////////////////////////// +// -------------------------------------------------------------------- G4MCTGenEvent::G4MCTGenEvent() -////////////////////////// { } -/////////////////////////// +// -------------------------------------------------------------------- G4MCTGenEvent::~G4MCTGenEvent() -/////////////////////////// { eventList.clear(); } -///////////////////////////////////////////////////////////// -int G4MCTGenEvent::AddGenEvent(const void* genevent) -///////////////////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4int G4MCTGenEvent::AddGenEvent(const void* genevent) { eventList.push_back(const_cast(genevent)); return eventList.size(); } -///////////////////////////////////// -int G4MCTGenEvent::GetNofEvents() const -///////////////////////////////////// +// -------------------------------------------------------------------- +G4int G4MCTGenEvent::GetNofEvents() const { return eventList.size(); } -////////////////////////////////////////////////////// -const void* G4MCTGenEvent::GetGenEvent(int i) -////////////////////////////////////////////////////// +// -------------------------------------------------------------------- +const void* G4MCTGenEvent::GetGenEvent(G4int i) { - int size= eventList.size(); - if(i>=0 && i= 0 && i < size) + return eventList[i]; + else + return nullptr; } - -////////////////////////////// +// -------------------------------------------------------------------- void G4MCTGenEvent::ClearEvent() -////////////////////////////// { eventList.clear(); } diff --git a/source/persistency/mctruth/src/G4MCTSimEvent.cc b/source/persistency/mctruth/src/G4MCTSimEvent.cc index cc50c72f6a..2e4e369117 100644 --- a/source/persistency/mctruth/src/G4MCTSimEvent.cc +++ b/source/persistency/mctruth/src/G4MCTSimEvent.cc @@ -23,155 +23,160 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// G4MCTSimEvent.cc +// G4MCTSimEvent implementation // -// ==================================================================== +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- + #include "G4ios.hh" #include "G4MCTSimEvent.hh" #include "G4MCTSimParticle.hh" #include "G4MCTSimVertex.hh" -// ==================================================================== -// -// class description -// -// ==================================================================== - -////////////////////////// +// -------------------------------------------------------------------- G4MCTSimEvent::G4MCTSimEvent() -////////////////////////// { } -/////////////////////////// +// -------------------------------------------------------------------- G4MCTSimEvent::~G4MCTSimEvent() -/////////////////////////// { ClearEvent(); } -////////////////////////////////////////////////////////////// +// -------------------------------------------------------------------- G4bool G4MCTSimEvent::AddParticle(const G4MCTSimParticle* aparticle) -////////////////////////////////////////////////////////////// + { - G4MCTSimParticle* qpart= const_cast(aparticle); - int trackID= aparticle-> GetTrackID(); - int nc= particleMap.count(trackID); - if(nc==0) { + G4MCTSimParticle* qpart = const_cast(aparticle); + G4int trackID = aparticle->GetTrackID(); + G4int nc = particleMap.count(trackID); + if(nc == 0) + { particleMap.insert(std::make_pair(trackID, qpart)); return true; - } else { + } + else + { return false; } - } -//////////////////////////////////////////////////////// -G4MCTSimParticle* G4MCTSimEvent::FindParticle(int tid) const -//////////////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4MCTSimParticle* G4MCTSimEvent::FindParticle(G4int tid) const { - G4MCTSimParticleContainer::const_iterator pos= particleMap.find(tid); - if(pos != particleMap.end()) { - return pos-> second; - } else { - return 0; + G4MCTSimParticleContainer::const_iterator pos = particleMap.find(tid); + if(pos != particleMap.cend()) + { + return pos->second; + } + else + { + return nullptr; } } -/////////////////////////////////////////////////// -G4MCTSimVertex* G4MCTSimEvent::GetVertex(int vid) const -/////////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4MCTSimVertex* G4MCTSimEvent::GetVertex(G4int vid) const { - int nv= vertexVec.size(); - if(vid>=1 && vid<=nv) { - return vertexVec[vid-1]; - } else { - return 0; + G4int nv = vertexVec.size(); + if(vid >= 1 && vid <= nv) + { + return vertexVec[vid - 1]; + } + else + { + return nullptr; } } -//////////////////////////////////////// +// -------------------------------------------------------------------- void G4MCTSimEvent::BuildVertexContainer() -//////////////////////////////////////// { G4MCTSimParticleContainer::iterator itr; - int vid=1; - for(itr= particleMap.begin(); itr!= particleMap.end(); ++itr) { - G4MCTSimVertex* vertex= itr->second-> GetVertex(); - if(vertex) { - if (vertex-> GetID()<0) { // ID not yet assigned - vertex-> SetID(vid); - vid++; - if (vertex) vertexVec.push_back(vertex); + G4int vid = 1; + for(itr = particleMap.begin(); itr != particleMap.end(); ++itr) + { + G4MCTSimVertex* vertex = itr->second->GetVertex(); + if(vertex) + { + if(vertex->GetID() < 0) + { + vertex->SetID(vid); // ID not yet assigned + ++vid; + if(vertex) + vertexVec.push_back(vertex); } } } } -////////////////////////////// -void G4MCTSimEvent::ClearEvent() -////////////////////////////// +// -------------------------------------------------------------------- +void G4MCTSimEvent::ClearEvent() { G4MCTSimParticleContainer::iterator itr; - for(itr= particleMap.begin(); itr!= particleMap.end(); ++itr) { + for(itr = particleMap.begin(); itr != particleMap.end(); ++itr) + { delete itr->second; } particleMap.clear(); G4MCTSimVertexContainer::iterator itrv; - for(itrv= vertexVec.begin(); itrv!= vertexVec.end(); ++itrv) { - delete (*itrv); + for(itrv = vertexVec.begin(); itrv != vertexVec.end(); ++itrv) + { + delete(*itrv); } vertexVec.clear(); } - -////////////////////////////////////////////// -int G4MCTSimEvent::GetNofStoredParticles() const -////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4int G4MCTSimEvent::GetNofStoredParticles() const { - int n=0; + G4int n = 0; G4MCTSimParticleContainer::const_iterator itr; - for(itr= particleMap.begin(); itr!= particleMap.end(); ++itr) { - if(itr-> second-> GetStoreFlag()) n++; + for(itr = particleMap.cbegin(); itr != particleMap.cend(); ++itr) + { + if(itr->second->GetStoreFlag()) + ++n; } return n; } -///////////////////////////////////////////// -int G4MCTSimEvent::GetNofStoredVertices() const -///////////////////////////////////////////// +// -------------------------------------------------------------------- +G4int G4MCTSimEvent::GetNofStoredVertices() const { - int n=0; + G4int n = 0; G4MCTSimVertexContainer::const_iterator itr; - for(itr= vertexVec.begin(); itr!= vertexVec.end(); ++itr) { - if((*itr)->GetStoreFlag()) n++; + for(itr = vertexVec.cbegin(); itr != vertexVec.cend(); ++itr) + { + if((*itr)->GetStoreFlag()) + ++n; } return n; } - -///////////////////////////////////////////////// +// -------------------------------------------------------------------- void G4MCTSimEvent::Print(std::ostream& ostr) const -///////////////////////////////////////////////// { ostr << "____________________________________________________" - "____________________________" << G4endl; + "____________________________" + << G4endl; ostr << "SimEvent:" << G4endl << G4endl; - ostr << "Current Memory Usage: " - << particleMap.size() << " particles, " - << vertexVec.size() << " vertices." - << G4endl; + ostr << "Current Memory Usage: " << particleMap.size() << " particles, " + << vertexVec.size() << " vertices." << G4endl; ostr << "trk# second-> PrintSingle(ostr); + for(itr = particleMap.cbegin(); itr != particleMap.cend(); ++itr) + { + itr->second->PrintSingle(ostr); } ostr << "____________________________________________________" - "____________________________" << G4endl; + "____________________________" + << G4endl; } diff --git a/source/persistency/mctruth/src/G4MCTSimParticle.cc b/source/persistency/mctruth/src/G4MCTSimParticle.cc index b1dc4bb205..3706484051 100644 --- a/source/persistency/mctruth/src/G4MCTSimParticle.cc +++ b/source/persistency/mctruth/src/G4MCTSimParticle.cc @@ -23,9 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// G4MCTSimParticle.cc +// G4MCTSimParticle implementation // -// ==================================================================== +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- #include #include @@ -37,173 +38,162 @@ #include "G4ios.hh" #include "G4MCTSimVertex.hh" -// ==================================================================== -// -// class description -// -// ==================================================================== - -///////////////////////////////// +// -------------------------------------------------------------------- G4MCTSimParticle::G4MCTSimParticle() - : parentParticle(0), pdgID(0), - trackID(0), parentTrackID(0), - primaryFlag(false), - vertex(0), storeFlag(false) -///////////////////////////////// { } -///////////////////////////////////////////////////////////// -G4MCTSimParticle::G4MCTSimParticle(std::string aname, int apcode, - int atid, int ptid, - const G4LorentzVector& p) - : parentParticle(0), - name(aname), pdgID(apcode), - trackID(atid), parentTrackID(ptid), - primaryFlag(false),momentumAtVertex(p), - vertex(0), storeFlag(false) -/////////////////////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4MCTSimParticle::G4MCTSimParticle(const G4String& aname, + G4int apcode, G4int atid, G4int ptid, + const G4LorentzVector& p) + : name(aname) + , momentumAtVertex(p) + , pdgID(apcode) + , trackID(atid) + , parentTrackID(ptid) { } -///////////////////////////////////////////////////////////// -G4MCTSimParticle::G4MCTSimParticle(std::string aname, int apcode, - int atid, int ptid, - const G4LorentzVector& p, - const G4MCTSimVertex* v ) - : parentParticle(0), - name(aname), pdgID(apcode), - trackID(atid), parentTrackID(ptid), - primaryFlag(false),momentumAtVertex(p), - vertex(const_cast(v)), storeFlag(false) -/////////////////////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4MCTSimParticle::G4MCTSimParticle(const G4String& aname, + G4int apcode, G4int atid, G4int ptid, + const G4LorentzVector& p, + const G4MCTSimVertex* v) + : name(aname) + , momentumAtVertex(p) + , vertex(const_cast(v)) + , pdgID(apcode) + , trackID(atid) + , parentTrackID(ptid) { } -///////////////////////////////// +// -------------------------------------------------------------------- G4MCTSimParticle::~G4MCTSimParticle() -///////////////////////////////// { associatedParticleList.clear(); } -//////////////////////////////////////////////////////// -int G4MCTSimParticle::AssociateParticle(G4MCTSimParticle* p) -//////////////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4int G4MCTSimParticle::AssociateParticle(G4MCTSimParticle* p) { associatedParticleList.push_back(p); - p-> SetParentParticle(this); + p->SetParentParticle(this); return associatedParticleList.size(); } -///////////////////////////////////////////////////// -int G4MCTSimParticle::GetNofAssociatedParticles() const -///////////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4int G4MCTSimParticle::GetNofAssociatedParticles() const { return associatedParticleList.size(); } -////////////////////////////////////////////////////////////////// -G4MCTSimParticle* G4MCTSimParticle::GetAssociatedParticle(int i) const -////////////////////////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4MCTSimParticle* G4MCTSimParticle::GetAssociatedParticle(G4int i) const { - int size= associatedParticleList.size(); - if(i>=0 && i< size) return associatedParticleList[i]; - else return 0; + G4int size = associatedParticleList.size(); + if(i >= 0 && i < size) + return associatedParticleList[i]; + else + return nullptr; } -//////////////////////////////////////// -int G4MCTSimParticle::GetTreeLevel() const -//////////////////////////////////////// +// -------------------------------------------------------------------- +G4int G4MCTSimParticle::GetTreeLevel() const { - const G4MCTSimParticle* p= this; - int nlevel; - for(nlevel=1;;nlevel++) { - p= p-> GetParentParticle(); - if(p==0) return nlevel; + const G4MCTSimParticle* p = this; + G4int nlevel; + for(nlevel = 1;; ++nlevel) + { + p = p->GetParentParticle(); + if(p == nullptr) + return nlevel; } } -///////////////////////////////////////////////////// +// -------------------------------------------------------------------- void G4MCTSimParticle::SetStoreFlagToParentTree(G4bool q) -///////////////////////////////////////////////////// { - storeFlag=q; - if(vertex) vertex-> SetStoreFlag(q); - if(primaryFlag) return; - if(parentParticle) parentParticle-> SetStoreFlagToParentTree(q); + storeFlag = q; + if(vertex) + vertex->SetStoreFlag(q); + if(primaryFlag) + return; + if(parentParticle) + parentParticle->SetStoreFlagToParentTree(q); } - -////////////////////////////////////////////////////////// +// -------------------------------------------------------------------- void G4MCTSimParticle::PrintSingle(std::ostream& ostr) const -////////////////////////////////////////////////////////// { std::ostringstream os; - char cqp=' '; - if(storeFlag) cqp='+'; + char cqp = ' '; + if(storeFlag) + cqp = '+'; os << cqp << trackID << '\0'; std::string stid(os.str()); ostr << std::setw(6) << stid; - //ostr << std::setw(4) << trackID; + // ostr << std::setw(4) << trackID; - if(primaryFlag) ostr << "*"; - else ostr << " "; + if(primaryFlag) + ostr << "*"; + else + ostr << " "; ostr << "<" << std::setw(5) << parentTrackID; ostr.setf(std::ios::fixed); - ostr << ": P(" - << std::setw(7) << std::setprecision(3) << momentumAtVertex.x()/GeV - << "," << std::setw(7) << std::setprecision(3) - << momentumAtVertex.y()/GeV - << "," << std::setw(7) << std::setprecision(3) - << momentumAtVertex.z()/GeV - << "," << std::setw(7) << std::setprecision(3) - << momentumAtVertex.e()/GeV << ") @"; + ostr << ": P(" << std::setw(7) << std::setprecision(3) + << momentumAtVertex.x() / GeV << "," << std::setw(7) + << std::setprecision(3) << momentumAtVertex.y() / GeV << "," + << std::setw(7) << std::setprecision(3) << momentumAtVertex.z() / GeV + << "," << std::setw(7) << std::setprecision(3) + << momentumAtVertex.e() / GeV << ") @"; ostr << name << "(" << pdgID << ")"; - if(vertex) { - ostr << " %" << vertex-> GetCreatorProcessName() << G4endl; + if(vertex != nullptr) + { + ostr << " %" << vertex->GetCreatorProcessName() << G4endl; std::ostringstream osv; - char cqv=' '; - if(vertex->GetStoreFlag()) cqv='+'; - osv << cqv << vertex-> GetID() << '\0'; + char cqv = ' '; + if(vertex->GetStoreFlag()) + cqv = '+'; + osv << cqv << vertex->GetID() << '\0'; std::string svid(osv.str()); ostr << " " << std::setw(6) << svid; - //ostr << " " << std::setw(4) << vertex-> GetID(); + // ostr << " " << std::setw(4) << vertex-> GetID(); ostr.unsetf(std::ios::fixed); - ostr.setf(std::ios::scientific|std::ios::right|std::ios::showpoint); - ostr << "- X(" << std::setw(9) << std::setprecision(2) - << vertex-> GetPosition().x()/mm - << "," << std::setw(9) << std::setprecision(2) - << vertex-> GetPosition().y()/mm - << "," << std::setw(9) << std::setprecision(2) - << vertex-> GetPosition().z()/mm - << "," << std::setw(9) << std::setprecision(2) - << vertex-> GetTime()/ns << ")"; + ostr.setf(std::ios::scientific | std::ios::right | std::ios::showpoint); + ostr << "- X(" << std::setw(9) << std::setprecision(2) + << vertex->GetPosition().x() / mm << "," << std::setw(9) + << std::setprecision(2) << vertex->GetPosition().y() / mm << "," + << std::setw(9) << std::setprecision(2) + << vertex->GetPosition().z() / mm << "," << std::setw(9) + << std::setprecision(2) << vertex->GetTime() / ns << ")"; ostr.unsetf(std::ios::scientific); - - ostr << " @" << vertex-> GetVolumeName() - << "-" << vertex-> GetVolumeNumber(); - } + + ostr << " @" << vertex->GetVolumeName() << "-" << vertex->GetVolumeNumber(); + } ostr << G4endl; - } -//////////////////////////////////////////////////////////////////// +// -------------------------------------------------------------------- void G4MCTSimParticle::Print(std::ostream& ostr, G4bool qrevorder) const -//////////////////////////////////////////////////////////////////// { PrintSingle(ostr); // recursively print associated particles - if (!qrevorder) { // parent -> child - SimParticleList::const_iterator itr; - for(itr= associatedParticleList.begin(); - itr!= associatedParticleList.end(); ++itr) { - (*itr)-> Print(ostr); + if(!qrevorder) + { // parent -> child + for(auto itr = associatedParticleList.cbegin(); + itr != associatedParticleList.cend(); ++itr) + { + (*itr)->Print(ostr); } - } else { // child -> parent - if(parentParticle) parentParticle-> Print(ostr, true); + } + else + { // child -> parent + if(parentParticle) + parentParticle->Print(ostr, true); } } diff --git a/source/persistency/mctruth/src/G4MCTSimVertex.cc b/source/persistency/mctruth/src/G4MCTSimVertex.cc index 0574f8c6b7..92450c4338 100644 --- a/source/persistency/mctruth/src/G4MCTSimVertex.cc +++ b/source/persistency/mctruth/src/G4MCTSimVertex.cc @@ -23,9 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// G4MCTSimVertex.cc +// G4MCTSimVertex implementation // -// ==================================================================== +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- #include #include @@ -37,79 +38,61 @@ #include "G4ios.hh" #include "G4MCTSimParticle.hh" -// ==================================================================== -// -// class description -// -// ==================================================================== - -///////////////////////////////////// -G4MCTSimVertex::G4MCTSimVertex() - : inParticleTrackID(0),id(-1), time(0.), - volumeName(""), volumeNumber(-1), - creatorProcessName("none"), - storeFlag(false) -///////////////////////////////////// +// -------------------------------------------------------------------- +G4MCTSimVertex::G4MCTSimVertex() { } -///////////////////////////////////////////////////////// -G4MCTSimVertex::G4MCTSimVertex(const G4ThreeVector& x, double t) - : inParticleTrackID(0), id(-1), position(x), time(t), - volumeName(""), volumeNumber(-1), - creatorProcessName("none"), storeFlag(false) -///////////////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4MCTSimVertex::G4MCTSimVertex(const G4ThreeVector& x, G4double t) + : position(x) + , time(t) { } -/////////////////////////////////////////////////////////////// -G4MCTSimVertex::G4MCTSimVertex(const G4ThreeVector& x, double t, - std::string vname, int ncopy, std::string pname) - : inParticleTrackID(0), id(-1), position(x), time(t), - volumeName(vname), volumeNumber(ncopy), - creatorProcessName(pname), storeFlag(false) -/////////////////////////////////////////////////////////////// +// -------------------------------------------------------------------- +G4MCTSimVertex::G4MCTSimVertex(const G4ThreeVector& x, G4double t, + const G4String& vname, G4int ncopy, + const G4String& pname) + : volumeName(vname) + , creatorProcessName(pname) + , position(x) + , time(t) + , volumeNumber(ncopy) { } -///////////////////////////// +// -------------------------------------------------------------------- G4MCTSimVertex::~G4MCTSimVertex() -///////////////////////////// { outParticleTrackIDList.clear(); } -////////////////////////////////////////////////// +// -------------------------------------------------------------------- void G4MCTSimVertex::Print(std::ostream& ostr) const -////////////////////////////////////////////////// { std::ostringstream os; - char cq=' '; - if(storeFlag) cq='+'; + char cq = ' '; + if(storeFlag) + cq = '+'; os << cq << id << '\0'; std::string sid(os.str()); - + ostr.unsetf(std::ios::fixed); - ostr.setf(std::ios::scientific|std::ios::right|std::ios::showpoint); - //ostr << std::setw(4) << id; + ostr.setf(std::ios::scientific | std::ios::right | std::ios::showpoint); + // ostr << std::setw(4) << id; ostr << std::setw(6) << sid; - ostr << " : X(" << std::setw(9) << std::setprecision(2) - << position.x()/mm - << "," << std::setw(9) << std::setprecision(2) - << position.y()/mm - << "," << std::setw(9) << std::setprecision(2) - << position.z()/mm - << "," << std::setw(9) << std::setprecision(2) - << time/ns << ")"; + ostr << " : X(" << std::setw(9) << std::setprecision(2) << position.x() / mm + << "," << std::setw(9) << std::setprecision(2) << position.y() / mm + << "," << std::setw(9) << std::setprecision(2) << position.z() / mm + << "," << std::setw(9) << std::setprecision(2) << time / ns << ")"; ostr.unsetf(std::ios::scientific); - ostr << "@" << volumeName - << "-" << volumeNumber - << "%" << creatorProcessName + ostr << "@" << volumeName << "-" << volumeNumber << "%" << creatorProcessName << G4endl; - + ostr << " " << std::setw(4) << inParticleTrackID << "-> "; - size_t np= outParticleTrackIDList.size(); - for (size_t i=0; iApplyCommand("/load "+libs); - if ( st == 0 ) { + if(st == 0) + { pm = GetPersistencyManager("ROOT"); } } - else if (systemName=="ODBMS") + else if(systemName == "ODBMS") { - G4cout<<" G4PersistencyCenter: \"ODBMS\" package is selected."<ApplyCommand("/load "+libs); - if ( st == 0 ) { + if(st == 0) + { pm = GetPersistencyManager("ODBMS"); } } else { - G4cout<<" G4PersistencyCenter: Default is selected."<< G4endl; + G4cout << " G4PersistencyCenter: Default is selected." << G4endl; pm = new G4PersistencyManager(this, "Default"); } - if ( st == 0 ) { + if(st == 0) + { f_currentManager = pm->Create(); - if (f_currentManager!=0) f_currentManager->SetVerboseLevel(m_verbose); + if(f_currentManager != nullptr) + f_currentManager->SetVerboseLevel(m_verbose); f_currentSystemName = systemName; } } -// Implementation of SetHepMCObjyReaderFile -void G4PersistencyCenter::SetHepMCObjyReaderFile(std::string file) +// -------------------------------------------------------------------- +void G4PersistencyCenter::SetHepMCObjyReaderFile(const G4String& file) { - if ( SetReadFile("HepMC", file) ) { + if(SetReadFile("HepMC", file)) + { SetRetrieveMode("HepMC", true); } } -// Implementation of CurrentHepMCObjyReaderFile -std::string G4PersistencyCenter::CurrentHepMCObjyReaderFile() +// -------------------------------------------------------------------- +G4String G4PersistencyCenter::CurrentHepMCObjyReaderFile() { - if ( CurrentRetrieveMode("HepMC") ) { + if(CurrentRetrieveMode("HepMC")) + { return CurrentReadFile("HepMC"); - } else { + } + else + { return ""; } } -// Implementation of SetStoreMode -void G4PersistencyCenter::SetStoreMode(std::string objName, StoreMode mode) +// -------------------------------------------------------------------- +void G4PersistencyCenter::SetStoreMode(const G4String& objName, StoreMode mode) { - if ( (*(f_writeFileName.find(objName))).second != "" ) { + if((*(f_writeFileName.find(objName))).second != "") + { f_writeFileMode[objName] = mode; - } else { - G4cerr << "!! unknown object type " << objName << " for output." - << G4endl; + } + else + { + G4cerr << "!! unknown object type " << objName << " for output." << G4endl; } } -// Implementation of SetRetrieveMode -void G4PersistencyCenter::SetRetrieveMode(std::string objName, G4bool mode) +// -------------------------------------------------------------------- +void G4PersistencyCenter::SetRetrieveMode(const G4String& objName, G4bool mode) { - if ( (*(f_readFileName.find(objName))).second != "" ) { + if((*(f_readFileName.find(objName))).second != "") + { f_readFileMode[objName] = mode; - } else { - G4cerr << "!! unknown object type " << objName << " for input." - << G4endl; + } + else + { + G4cerr << "!! unknown object type " << objName << " for input." << G4endl; } } -// Implementation of CurrentStoreMode -StoreMode G4PersistencyCenter::CurrentStoreMode(std::string objName) +// -------------------------------------------------------------------- +StoreMode G4PersistencyCenter::CurrentStoreMode(const G4String& objName) { - if ( (*(f_writeFileName.find(objName))).second != "" ) { + if((*(f_writeFileName.find(objName))).second != "") + { return f_writeFileMode[objName]; - } else { + } + else + { return kOff; } } -// Implementation of CurrentRetrieveMode -G4bool G4PersistencyCenter::CurrentRetrieveMode(std::string objName) +// -------------------------------------------------------------------- +G4bool G4PersistencyCenter::CurrentRetrieveMode(const G4String& objName) { - if ( (*(f_readFileName.find(objName))).second != "" ) { + if((*(f_readFileName.find(objName))).second != "") + { return f_readFileMode[objName]; - } else { + } + else + { return false; } } -// Implementation of SetWriteFile -G4bool G4PersistencyCenter::SetWriteFile(std::string objName, std::string writeFileName) +// -------------------------------------------------------------------- +G4bool G4PersistencyCenter::SetWriteFile(const G4String& objName, + const G4String& writeFileName) { - if ( (*(f_writeFileName.find(objName))).second != "" ) { + if((*(f_writeFileName.find(objName))).second != "") + { f_writeFileName[objName] = writeFileName; - } else { - G4cerr << "!! unknown object type " << objName << " for output." - << G4endl; + } + else + { + G4cerr << "!! unknown object type " << objName << " for output." << G4endl; return false; } return true; } -// Implementation of SetReadFile -G4bool G4PersistencyCenter::SetReadFile(std::string objName, std::string readFileName) +// -------------------------------------------------------------------- +G4bool G4PersistencyCenter::SetReadFile(const G4String& objName, + const G4String& readFileName) { #ifndef WIN32 - if ( f_ut.FileExists(readFileName) ) + if(f_ut.FileExists(readFileName)) { f_readFileName[objName] = readFileName; } else { - G4cerr << "!! File \"" << objName << "\" does not exist." - << G4endl; + G4cerr << "!! File \"" << objName << "\" does not exist." << G4endl; return false; } #endif return true; } -// Implementation of CurrentWriteFile -std::string G4PersistencyCenter::CurrentWriteFile(std::string objName) +// -------------------------------------------------------------------- +G4String G4PersistencyCenter::CurrentWriteFile(const G4String& objName) { - if ( (*(f_writeFileName.find(objName))).second != "" ) { + if((*(f_writeFileName.find(objName))).second != "") + { return f_writeFileName[objName]; - } else { + } + else + { return "?????"; } } -// Implementation of CurrentReadFile -std::string G4PersistencyCenter::CurrentReadFile(std::string objName) +// -------------------------------------------------------------------- +G4String G4PersistencyCenter::CurrentReadFile(const G4String& objName) { - if ( (*(f_readFileName.find(objName))).second != "" ) { + if((*(f_readFileName.find(objName))).second != "") + { return f_readFileName[objName]; - } else { + } + else + { return "?????"; } } -// Implementation of CurrentObject -std::string G4PersistencyCenter::CurrentObject(std::string file) +// -------------------------------------------------------------------- +G4String G4PersistencyCenter::CurrentObject(const G4String& file) { - FileMap::iterator itr; - for ( itr = f_readFileName.begin(); itr != f_readFileName.end(); itr++ ) { - if ( file == (*itr).second ) return (*itr).first; + for(auto itr = f_readFileName.cbegin(); itr != f_readFileName.cend(); ++itr) + { + if(file == (*itr).second) + return (*itr).first; } - for ( itr = f_writeFileName.begin(); itr != f_writeFileName.end(); itr++ ) { - if ( file == (*itr).second ) return (*itr).first; + for(auto itr = f_writeFileName.cbegin(); itr != f_writeFileName.cend(); ++itr) + { + if(file == (*itr).second) + return (*itr).first; } return "?????"; } -// Implementation of AddHCIOmanager -void G4PersistencyCenter::AddHCIOmanager(std::string detName, std::string colName) +// -------------------------------------------------------------------- +void G4PersistencyCenter::AddHCIOmanager(const G4String& detName, + const G4String& colName) { G4HCIOcatalog* ioc = G4HCIOcatalog::GetHCIOcatalog(); G4VHCIOentry* ioe = ioc->GetEntry(detName); - if ( ioe != 0 ) { + if(ioe != nullptr) + { ioe->CreateHCIOmanager(detName, colName); - } else { + } + else + { G4cerr << "Error! -- HCIO assignment failed for detector " << detName - << ", collection " << colName << G4endl; + << ", collection " << colName << G4endl; } } -// Implementation of CurrentHCIOmanager -std::string G4PersistencyCenter::CurrentHCIOmanager() +// -------------------------------------------------------------------- +G4String G4PersistencyCenter::CurrentHCIOmanager() { G4HCIOcatalog* ioc = G4HCIOcatalog::GetHCIOcatalog(); return ioc->CurrentHCIOmanager(); } -// Implementation of AddDCIOmanager -void G4PersistencyCenter::AddDCIOmanager(std::string detName) +// -------------------------------------------------------------------- +void G4PersistencyCenter::AddDCIOmanager(const G4String& detName) { G4DCIOcatalog* ioc = G4DCIOcatalog::GetDCIOcatalog(); - std::string colName = ""; + G4String colName = ""; G4VDCIOentry* ioe = ioc->GetEntry(detName); - if ( ioe != 0 ) { + if(ioe != nullptr) + { ioe->CreateDCIOmanager(detName, colName); - } else { + } + else + { G4cerr << "Error! -- DCIO assignment failed for detector " << detName - << ", collection " << colName << G4endl; + << ", collection " << colName << G4endl; } } -// Implementation of CurrentDCIOmanager -std::string G4PersistencyCenter::CurrentDCIOmanager() +// -------------------------------------------------------------------- +G4String G4PersistencyCenter::CurrentDCIOmanager() { G4DCIOcatalog* ioc = G4DCIOcatalog::GetDCIOcatalog(); return ioc->CurrentDCIOmanager(); } -// Implementation of PrintAll +// -------------------------------------------------------------------- void G4PersistencyCenter::PrintAll() { G4cout << "Persistency Package: " << CurrentSystem() << G4endl; G4cout << G4endl; - ObjMap::iterator itr; - std::string name; - std::string file; - StoreMode mode; + G4String name, file; + StoreMode mode; G4cout << "Output object types and file names:" << G4endl; - for ( itr = f_wrObj.begin(); itr != f_wrObj.end(); itr++ ) { + for(auto itr = f_wrObj.cbegin(); itr != f_wrObj.cend(); ++itr) + { name = (*itr).second; // disabled HepMC and MCTruth for now - if ( name != "HepMC" && name != "MCTruth" ) { + if(name != "HepMC" && name != "MCTruth") + { G4cout << " Object: " << PadString(name, 9); mode = CurrentStoreMode(name); - if ( mode == kOn ) { + if(mode == kOn) + { G4cout << " "; - } else if ( mode == kOff ) { + } + else if(mode == kOff) + { G4cout << " "; - } else if ( mode == kRecycle ) { + } + else if(mode == kRecycle) + { G4cout << ""; } file = CurrentWriteFile(name); - if ( file == "" ) file = " "; + if(file == "") + file = " "; G4cout << " File: " << file << G4endl; } } G4cout << G4endl; G4cout << "Input object types and file names:" << G4endl; - for ( itr = f_rdObj.begin(); itr != f_rdObj.end(); itr++ ) { + for(auto itr = f_rdObj.cbegin(); itr != f_rdObj.cend(); ++itr) + { name = (*itr).second; // disabled HepMC and MCTruth for now - if ( name != "HepMC" && name != "MCTruth" ) { + if(name != "HepMC" && name != "MCTruth") + { G4cout << " Object: " << PadString(name, 9); - if ( CurrentRetrieveMode(name) ) { + if(CurrentRetrieveMode(name)) + { G4cout << " "; - } else { + } + else + { G4cout << " "; } file = CurrentReadFile(name); - if ( file == "" ) file = " "; + if(file == "") + file = " "; G4cout << " File: " << CurrentReadFile(name) << G4endl; } } G4cout << G4endl; G4HCIOcatalog* hioc = G4HCIOcatalog::GetHCIOcatalog(); - if ( hioc != 0 ) { + if(hioc != nullptr) + { G4cout << "Hit IO Managers:" << G4endl; hioc->PrintEntries(); hioc->PrintHCIOmanager(); G4cout << G4endl; - } else { + } + else + { G4cout << "Hit IO Manager catalog is not registered." << G4endl; } G4DCIOcatalog* dioc = G4DCIOcatalog::GetDCIOcatalog(); - if ( dioc != 0 ) { + if(dioc != nullptr) + { G4cout << "Digit IO Managers:" << G4endl; dioc->PrintEntries(); dioc->PrintDCIOmanager(); G4cout << G4endl; - } else { + } + else + { G4cout << "Digit IO Manager catalog is not registered." << G4endl; } } -// Implementation of SetPersistencyManager +// -------------------------------------------------------------------- void G4PersistencyCenter::SetPersistencyManager(G4PersistencyManager* pm, - std::string name) + const G4String& name) { - f_currentManager=pm; - f_currentSystemName=name; + f_currentManager = pm; + f_currentSystemName = name; } -// Implementation of GetPersistencyManager -G4PersistencyManager* G4PersistencyCenter::GetPersistencyManager(std::string nam) +// -------------------------------------------------------------------- +G4PersistencyManager* +G4PersistencyCenter::GetPersistencyManager(const G4String& nam) { - if (f_theCatalog.find(nam)!=f_theCatalog.end()) + if(f_theCatalog.find(nam) != f_theCatalog.cend()) return f_theCatalog[nam]; - return 0; + return nullptr; } -// Implementation of RegisterPersistencyManager +// -------------------------------------------------------------------- void G4PersistencyCenter::RegisterPersistencyManager(G4PersistencyManager* pm) { - f_theCatalog[pm->GetName()]=pm; + f_theCatalog[pm->GetName()] = pm; } -// Implementation of DeletePersistencyManager +// -------------------------------------------------------------------- void G4PersistencyCenter::DeletePersistencyManager() { - if (f_currentManager!=0) delete f_currentManager; - f_currentManager=0; + if(f_currentManager != nullptr) + delete f_currentManager; + f_currentManager = nullptr; } -// Implementation of SetVerboseLevel -void G4PersistencyCenter::SetVerboseLevel(int v) +// -------------------------------------------------------------------- +void G4PersistencyCenter::SetVerboseLevel(G4int v) { m_verbose = v; - if ( f_currentManager != 0 ) f_currentManager->SetVerboseLevel(m_verbose); + if(f_currentManager != nullptr) + f_currentManager->SetVerboseLevel(m_verbose); } -// Implementation of PadString -std::string G4PersistencyCenter::PadString(std::string name, unsigned int width) +// -------------------------------------------------------------------- +G4String G4PersistencyCenter::PadString(const G4String& name, + unsigned int width) { - if ( name.length() > width ) { - return name.substr(0,width-1) + "#"; - } else { - std::string wname = name; - for ( unsigned int i=0; i < width-name.length(); i++) wname = wname + " "; + if(name.length() > width) + { + return name.substr(0, width - 1) + "#"; + } + else + { + G4String wname = name; + for(unsigned int i = 0; i < width - name.length(); ++i) + wname = wname + " "; return wname; } } - -// End of G4PersistencyCenter.cc diff --git a/source/persistency/mctruth/src/G4PersistencyCenterMessenger.cc b/source/persistency/mctruth/src/G4PersistencyCenterMessenger.cc index d603684c9d..594d053447 100644 --- a/source/persistency/mctruth/src/G4PersistencyCenterMessenger.cc +++ b/source/persistency/mctruth/src/G4PersistencyCenterMessenger.cc @@ -23,37 +23,38 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4PersistencyCenterMessenger.cc +// G4PersistencyCenterMessenger implementation // -// History: -// 01.07.18 Youhei Morita Initial creation (with "fadsclass") +// Author: Youhei Morita, 18.07.2001 +// -------------------------------------------------------------------- #include "G4PersistencyCenterMessenger.hh" -// Implementation of Constructor #1 -G4PersistencyCenterMessenger::G4PersistencyCenterMessenger(G4PersistencyCenter* p) - : pc(p) +// -------------------------------------------------------------------- +G4PersistencyCenterMessenger:: +G4PersistencyCenterMessenger(G4PersistencyCenter* p) + : pc(p) { - std::string name = "/persistency/"; - directory=new G4UIdirectory(name.c_str()); + G4String name = "/persistency/"; + directory = new G4UIdirectory(name.c_str()); directory->SetGuidance("Control commands for Persistency package"); - std::string cmd = name + "verbose"; + G4String cmd = name + "verbose"; - verboseCmd = new G4UIcmdWithAnInteger(cmd.c_str(),this); + verboseCmd = new G4UIcmdWithAnInteger(cmd.c_str(), this); verboseCmd->SetGuidance("Set the verbose level of G4PersistencyManager."); verboseCmd->SetGuidance(" 0 : Silent (default)"); verboseCmd->SetGuidance(" 1 : Display main topics"); verboseCmd->SetGuidance(" 2 : Display event-level topics"); verboseCmd->SetGuidance(" 3 : Display debug information"); - verboseCmd->SetParameterName("level",true); + verboseCmd->SetParameterName("level", true); verboseCmd->SetDefaultValue(0); verboseCmd->SetRange("level >=0 && level <=3"); - std::string vname = name + "select"; + G4String vname = name + "select"; - cmd = vname; - select = new G4UIcmdWithAString(cmd.c_str(),this); + cmd = vname; + select = new G4UIcmdWithAString(cmd.c_str(), this); select->SetGuidance("Selection of a persistency package"); select->SetParameterName("Persistency package name", true, true); select->SetCandidates("ODBMS ROOT None"); @@ -67,18 +68,21 @@ G4PersistencyCenterMessenger::G4PersistencyCenterMessenger(G4PersistencyCenter* wrObj.push_back("MCTruth"); wrObj.push_back("Hits"); - std::string guidance; - int i; + G4String guidance; + G4int i; - for ( i = 0; i < 3; i++ ) + for(i = 0; i < 3; ++i) { - cmd = vname + wrObj[i]; + cmd = vname + wrObj[i]; guidance = "Store " + wrObj[i] + " objects for output"; - storeObj.push_back(new G4UIcmdWithAString(cmd.c_str(),this)); + storeObj.push_back(new G4UIcmdWithAString(cmd.c_str(), this)); storeObj[i]->SetGuidance(guidance.c_str()); - if ( wrObj[i] == "HepMC" ) { + if(wrObj[i] == "HepMC") + { storeObj[i]->SetCandidates("on off recycle"); - } else { + } + else + { storeObj[i]->SetCandidates("on off"); } } @@ -87,47 +91,46 @@ G4PersistencyCenterMessenger::G4PersistencyCenterMessenger(G4PersistencyCenter* subdir2 = new G4UIdirectory(vname.c_str()); subdir2->SetGuidance("Select I/O manager for store"); - cmd = vname + "hitIO"; - regHitIO = new G4UIcmdWithAString(cmd.c_str(),this); + cmd = vname + "hitIO"; + regHitIO = new G4UIcmdWithAString(cmd.c_str(), this); regHitIO->SetGuidance("Resiter Hits I/O Manager"); regHitIO->SetParameterName("Name of Hits I/O Manager", true, true); - vname = name + "set/"; + vname = name + "set/"; subdir3 = new G4UIdirectory(vname.c_str()); - subdir3->SetGuidance("Set various parameters"); + subdir3->SetGuidance("Set various parameters"); vname += "writeFile/"; subdir4 = new G4UIdirectory(vname.c_str()); subdir4->SetGuidance("Set output file names for object types"); - for ( i = 0; i < 3; i++ ) + for(i = 0; i < 3; ++i) { - cmd = vname + wrObj[i]; + cmd = vname + wrObj[i]; guidance = "Set an output file name for " + wrObj[i] + "."; - setWrFile.push_back(new G4UIcmdWithAString(cmd.c_str(),this)); + setWrFile.push_back(new G4UIcmdWithAString(cmd.c_str(), this)); setWrFile[i]->SetGuidance(guidance.c_str()); setWrFile[i]->SetParameterName("file name", true, true); } - vname = name + "set/ReadFile/"; + vname = name + "set/ReadFile/"; subdir5 = new G4UIdirectory(vname.c_str()); subdir5->SetGuidance("Set input file names for object types"); rdObj.push_back("Hits"); - cmd = vname + rdObj[0]; + cmd = vname + rdObj[0]; guidance = "Set an input file name for " + rdObj[0] + "."; - setRdFile.push_back(new G4UIcmdWithAString(cmd.c_str(),this)); + setRdFile.push_back(new G4UIcmdWithAString(cmd.c_str(), this)); setRdFile[0]->SetGuidance(guidance.c_str()); setRdFile[0]->SetParameterName("file name", true, true); - cmd = name + "printall"; - printAll = new G4UIcmdWithoutParameter(cmd.c_str(),this); + cmd = name + "printall"; + printAll = new G4UIcmdWithoutParameter(cmd.c_str(), this); printAll->SetGuidance("Print all parameters."); - } -// Implementation of Destructor #1 +// -------------------------------------------------------------------- G4PersistencyCenterMessenger::~G4PersistencyCenterMessenger() { delete directory; @@ -139,7 +142,7 @@ G4PersistencyCenterMessenger::~G4PersistencyCenterMessenger() delete verboseCmd; delete select; delete regHitIO; - for ( int i = 0; i < 3; i++ ) + for(G4int i = 0; i < 3; ++i) { delete storeObj[i]; delete setWrFile[i]; @@ -148,84 +151,94 @@ G4PersistencyCenterMessenger::~G4PersistencyCenterMessenger() delete printAll; } -// Implementation of SetNewValue -void G4PersistencyCenterMessenger::SetNewValue(G4UIcommand* command, G4String newValues) +// -------------------------------------------------------------------- +void G4PersistencyCenterMessenger::SetNewValue(G4UIcommand* command, + G4String newValues) { - if (command==verboseCmd) + if(command == verboseCmd) { pc->SetVerboseLevel(verboseCmd->GetNewIntValue(newValues)); } - else if (command==select) + else if(command == select) { pc->SelectSystem(newValues); } - else if (command==regHitIO) + else if(command == regHitIO) { - pc->AddHCIOmanager(PopWord(newValues,1," "),PopWord(newValues,2," ")); + pc->AddHCIOmanager(PopWord(newValues, 1, " "), PopWord(newValues, 2, " ")); } - else if (command==setRdFile[0]) + else if(command == setRdFile[0]) { - pc -> SetReadFile ( rdObj[0],newValues); + pc->SetReadFile(rdObj[0], newValues); } - else if (command==printAll) + else if(command == printAll) { pc->PrintAll(); } else { - for( int i=0; i<3; i++ ) { - if( command==storeObj[i] ) + for(G4int i = 0; i < 3; ++i) + { + if(command == storeObj[i]) { StoreMode mode = kOff; - if( newValues == "on" ) { + if(newValues == "on") + { mode = kOn; - } else if ( newValues == "off" ) { - mode = kOff; - } else if ( newValues == "recycle" ) { - mode = kRecycle; - } else { - G4cerr << "Unrecognized keyword - \"" << newValues << "\"." - << G4endl; } - pc->SetStoreMode(wrObj[i],mode); + else if(newValues == "off") + { + mode = kOff; + } + else if(newValues == "recycle") + { + mode = kRecycle; + } + else + { + G4cerr << "Unrecognized keyword - \"" << newValues << "\"." << G4endl; + } + pc->SetStoreMode(wrObj[i], mode); break; } - else if( command==setWrFile[i] ) + else if(command == setWrFile[i]) { - pc->SetWriteFile(wrObj[i],newValues); + pc->SetWriteFile(wrObj[i], newValues); break; } } } } -// Implementation of GetCurrentValue +// -------------------------------------------------------------------- G4String G4PersistencyCenterMessenger::GetCurrentValue(G4UIcommand* command) { - G4String ustr="Undefined"; + G4String ustr = "Undefined"; - if (command==verboseCmd) + if(command == verboseCmd) { return pc->VerboseLevel(); } - else if (command==select) + else if(command == select) { return pc->CurrentSystem(); } - else if (command==regHitIO) + else if(command == regHitIO) { return pc->CurrentHCIOmanager(); } - else if (command==setRdFile[0]) + else if(command == setRdFile[0]) { return pc->CurrentReadFile(rdObj[0]); } else { - for( int i=0; i<3; i++ ) { - if( command==storeObj[i] ) + for(G4int i = 0; i < 3; ++i) + { + if(command == storeObj[i]) { - switch (pc->CurrentStoreMode(wrObj[i])) { + switch(pc->CurrentStoreMode(wrObj[i])) + { case kOn: return "on"; break; @@ -240,7 +253,7 @@ G4String G4PersistencyCenterMessenger::GetCurrentValue(G4UIcommand* command) break; }; } - else if( command==setWrFile[i] ) + else if(command == setWrFile[i]) { return pc->CurrentWriteFile(wrObj[i]); } @@ -250,29 +263,33 @@ G4String G4PersistencyCenterMessenger::GetCurrentValue(G4UIcommand* command) return ustr; } -// Implementation of PopWord -std::string G4PersistencyCenterMessenger::PopWord(std::string text, int n, std::string delim) +// -------------------------------------------------------------------- +G4String G4PersistencyCenterMessenger::PopWord(const G4String& text, G4int n, + const G4String& delim) { - if ( text.length() <= 0 ) return ""; - int p = 0, p0 = 0; - int p1 = 0; - for ( int i = 0; i < n; i++ ) { - p1 = text.find_first_of(delim,p0+1); - while( p1 == p0+1 ) { + if(text.length() <= 0) + return ""; + G4int p = 0, p0 = 0; + G4int p1 = 0; + for(G4int i = 0; i < n; ++i) + { + p1 = text.find_first_of(delim, p0 + 1); + while(p1 == p0 + 1) + { p0 = p1; - p1 = text.find_first_of(delim,p0+1); + p1 = text.find_first_of(delim, p0 + 1); } - p = p0; - if ( p1 < 0 ) { - if ( i+1 < n ) return ""; + p = p0; + if(p1 < 0) + { + if(i + 1 < n) + return ""; p1 = text.length(); break; } p0 = p1; } - if (p > 0) p++; - return text.substr(p,p1-p); + if(p > 0) + ++p; + return text.substr(p, p1 - p); } - -// End of G4PersistencyCenterMessenger.cc - diff --git a/source/persistency/mctruth/src/G4PersistencyManager.cc b/source/persistency/mctruth/src/G4PersistencyManager.cc index d13e4f0fd4..8c044bfd32 100644 --- a/source/persistency/mctruth/src/G4PersistencyManager.cc +++ b/source/persistency/mctruth/src/G4PersistencyManager.cc @@ -23,88 +23,105 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4PersistencyManager.cc +// G4PersistencyManager implementation // -// History: -// 01.07.17 Youhei Morita Initial creation (with "fadsclass") +// Author: Youhei Morita, 17.07.2001 +// -------------------------------------------------------------------- #include "G4PersistencyManager.hh" -// Addtional Include: #include #include "G4PersistencyCenter.hh" -// Implementation of Constructor #1 -G4PersistencyManager::G4PersistencyManager(G4PersistencyCenter* ptc, std::string n) - : f_pc(ptc), nameMgr(n), f_is_initialized(false) +// -------------------------------------------------------------------- +G4PersistencyManager::G4PersistencyManager(G4PersistencyCenter* ptc, + const G4String& n) + : f_pc(ptc) + , nameMgr(n) { m_verbose = f_pc->VerboseLevel(); } -// Implementation of Destructor #1 +// -------------------------------------------------------------------- G4PersistencyManager::~G4PersistencyManager() -{} - -// Implementation of GetPersistencyManager -G4PersistencyManager* G4PersistencyManager::GetPersistencyManager() { - return G4PersistencyCenter::GetPersistencyCenter()->CurrentPersistencyManager(); } -// Implementation of SetVerboseLevel -void G4PersistencyManager::SetVerboseLevel(int v) +// -------------------------------------------------------------------- +G4PersistencyManager* G4PersistencyManager::GetPersistencyManager() +{ + return G4PersistencyCenter::GetPersistencyCenter() + ->CurrentPersistencyManager(); +} + +// -------------------------------------------------------------------- +void G4PersistencyManager::SetVerboseLevel(G4int v) { m_verbose = v; - if ( m_verbose > 2 ) { + if(m_verbose > 2) + { G4cout << "G4PersistencyManager[\"" << nameMgr << "\"," << this - << "]: verbose level is set to " << m_verbose << "." - << G4endl; + << "]: verbose level is set to " << m_verbose << "." << G4endl; } - if ( EventIO() != 0 ) EventIO()->SetVerboseLevel(m_verbose); - if ( MCTruthIO() != 0 ) MCTruthIO()->SetVerboseLevel(m_verbose); - if ( HitIO() != 0 ) HitIO()->SetVerboseLevel(m_verbose); - if ( DigitIO() != 0 ) DigitIO()->SetVerboseLevel(m_verbose); - if (TransactionManager() != 0) TransactionManager()->SetVerboseLevel(m_verbose); + if(EventIO() != nullptr) + EventIO()->SetVerboseLevel(m_verbose); + if(MCTruthIO() != nullptr) + MCTruthIO()->SetVerboseLevel(m_verbose); + if(HitIO() != nullptr) + HitIO()->SetVerboseLevel(m_verbose); + if(DigitIO() != nullptr) + DigitIO()->SetVerboseLevel(m_verbose); + if(TransactionManager() != nullptr) + TransactionManager()->SetVerboseLevel(m_verbose); - size_t i; + std::size_t i; G4HCIOcatalog* hcio = G4HCIOcatalog::GetHCIOcatalog(); - if ( hcio != 0 ) { + if(hcio != nullptr) + { hcio->SetVerboseLevel(m_verbose); - for ( i = 0; i < hcio->NumberOfHCIOmanager(); i++ ) { + for(i = 0; i < hcio->NumberOfHCIOmanager(); ++i) + { hcio->GetHCIOmanager(i)->SetVerboseLevel(m_verbose); } } G4DCIOcatalog* dcio = G4DCIOcatalog::GetDCIOcatalog(); - if ( dcio != 0 ) { + if(dcio != nullptr) + { dcio->SetVerboseLevel(m_verbose); - for ( i = 0; i < dcio->NumberOfDCIOmanager(); i++ ) { + for(i = 0; i < dcio->NumberOfDCIOmanager(); ++i) + { dcio->GetDCIOmanager(i)->SetVerboseLevel(m_verbose); } } } -// Implementation of Store +// -------------------------------------------------------------------- G4bool G4PersistencyManager::Store(const G4Event* evt) { - if ( m_verbose > 2 ) { + if(m_verbose > 2) + { G4cout << "G4PersistencyManager::Store() is called for event# " << evt->GetEventID() << "." << G4endl; } - if ( TransactionManager() == 0 ) return true; + if(TransactionManager() == nullptr) + return true; G4bool is_store = f_pc->CurrentStoreMode("MCTruth") != kOff || - f_pc->CurrentStoreMode("Hits") != kOff || - f_pc->CurrentStoreMode("Digits") != kOff; + f_pc->CurrentStoreMode("Hits") != kOff || + f_pc->CurrentStoreMode("Digits") != kOff; - if ( ! is_store ) return true; + if(!is_store) + return true; // Call package dependent Initialize() // - if ( ! f_is_initialized ) { + if(!f_is_initialized) + { f_is_initialized = true; - if ( m_verbose > 1 ) { + if(m_verbose > 1) + { G4cout << "G4PersistencyManager:: Initializing Transaction ... " << G4endl; } @@ -115,60 +132,74 @@ G4bool G4PersistencyManager::Store(const G4Event* evt) // Start event IO transaction // - if ( TransactionManager()->StartUpdate() ) { - if ( m_verbose > 2 ) { + if(TransactionManager()->StartUpdate()) + { + if(m_verbose > 2) + { G4cout << "G4PersistencyManager: Update transaction started for event#" << evt->GetEventID() << "." << G4endl; } - } else { + } + else + { G4cerr << "TransactionManager::Store(G4Event) - StartUpdate() failed." << G4endl; return false; } - std::string file; - std::string obj; + G4String file; + G4String obj; G4bool stmct = true, st3 = true; // Store MCTruth event // - obj = "MCTruth"; - G4MCTEvent* mctevt = 0; - if ( f_pc->CurrentStoreMode(obj) == kOn ) { - + obj = "MCTruth"; + G4MCTEvent* mctevt = nullptr; + if(f_pc->CurrentStoreMode(obj) == kOn) + { // Note: This part of code will not be activated until a method // to obtain the current pointer of G4MCTEvent* become available. // if ( (mctevt = f_MCTman->GetCurrentEvent()) != 0 ) { - if ( mctevt != 0 ) { + if(mctevt != nullptr) + { file = f_pc->CurrentWriteFile(obj); - if ( TransactionManager()->SelectWriteFile(obj, file) ) { + if(TransactionManager()->SelectWriteFile(obj, file)) + { stmct = MCTruthIO()->Store(mctevt); - if ( stmct && m_verbose > 1 ) { - G4cout << " -- File : " << file << " -- Event# " - << evt->GetEventID() << " -- G4MCTEvent Stored." << G4endl; + if(stmct && m_verbose > 1) + { + G4cout << " -- File : " << file << " -- Event# " << evt->GetEventID() + << " -- G4MCTEvent Stored." << G4endl; } - } else { + } + else + { stmct = false; } - } // end of if ( mctevt != 0 ) + } // end of if ( mctevt != nullptr ) } // Store hits collection // obj = "Hits"; - if ( f_pc->CurrentStoreMode(obj) == kOn ) { - if ( G4HCofThisEvent* hc = evt->GetHCofThisEvent() ) { + if(f_pc->CurrentStoreMode(obj) == kOn) + { + if(G4HCofThisEvent* hc = evt->GetHCofThisEvent()) + { file = f_pc->CurrentWriteFile(obj); - if ( TransactionManager()->SelectWriteFile(obj, file) ) { + if(TransactionManager()->SelectWriteFile(obj, file)) + { st1 = HitIO()->Store(hc); - if ( st1 && m_verbose > 1 ) { - G4cout << " -- File : " << file << " -- Event# " - << evt->GetEventID() + if(st1 && m_verbose > 1) + { + G4cout << " -- File : " << file << " -- Event# " << evt->GetEventID() << " -- Hit Collections Stored." << G4endl; } - } else { + } + else + { st1 = false; } } @@ -177,17 +208,22 @@ G4bool G4PersistencyManager::Store(const G4Event* evt) // Store digits collection // obj = "Digits"; - if ( f_pc->CurrentStoreMode(obj) == kOn ) { - if ( G4DCofThisEvent* dc = evt->GetDCofThisEvent() ) { + if(f_pc->CurrentStoreMode(obj) == kOn) + { + if(G4DCofThisEvent* dc = evt->GetDCofThisEvent()) + { file = f_pc->CurrentWriteFile(obj); - if ( TransactionManager()->SelectWriteFile(obj, file) ) { + if(TransactionManager()->SelectWriteFile(obj, file)) + { st2 = DigitIO()->Store(dc); - if ( st2 && m_verbose > 1 ) { - G4cout << " -- File : " << file << " -- Event# " - << evt->GetEventID() + if(st2 && m_verbose > 1) + { + G4cout << " -- File : " << file << " -- Event# " << evt->GetEventID() << " -- Digit Collections Stored." << G4endl; } - } else { + } + else + { st2 = false; } } @@ -195,29 +231,37 @@ G4bool G4PersistencyManager::Store(const G4Event* evt) // Store this G4EVENT // - if ( mctevt!=0 || evt!=0 ) { - obj = "Hits"; + if(mctevt != 0 || evt != 0) + { + obj = "Hits"; file = f_pc->CurrentWriteFile(obj); - if ( TransactionManager()->SelectWriteFile(obj, file) ) { + if(TransactionManager()->SelectWriteFile(obj, file)) + { st3 = EventIO()->Store(evt); - if ( st3 && m_verbose > 1 ) { + if(st3 && m_verbose > 1) + { G4cout << " -- File name: " << f_pc->CurrentWriteFile("Hits") - << " -- Event# " << evt->GetEventID() + << " -- Event# " << evt->GetEventID() << " -- G4Pevent is Stored." << G4endl; } - } else { + } + else + { st3 = false; } } - + G4bool st = stmct && st1 && st2 && st3; - if ( st ) { + if(st) + { TransactionManager()->Commit(); - if ( m_verbose > 0 ) - G4cout << "G4PersistencyManager: event# " - << evt->GetEventID() << " is stored." << G4endl; - } else { + if(m_verbose > 0) + G4cout << "G4PersistencyManager: event# " << evt->GetEventID() + << " is stored." << G4endl; + } + else + { G4cerr << "G4PersistencyManager::Store(G4Event) - Transaction aborted." << G4endl; TransactionManager()->Abort(); @@ -226,27 +270,31 @@ G4bool G4PersistencyManager::Store(const G4Event* evt) return st; } -// Implementation of Retrieve +// -------------------------------------------------------------------- G4bool G4PersistencyManager::Retrieve(G4Event*& evt) { - if ( m_verbose > 2 ) { - G4cout << "G4PersistencyManager::Retrieve(G4Event*&) is called." - << G4endl; + if(m_verbose > 2) + { + G4cout << "G4PersistencyManager::Retrieve(G4Event*&) is called." << G4endl; } - if ( TransactionManager() == 0 ) return true; + if(TransactionManager() == nullptr) + return true; - if ( f_pc->CurrentRetrieveMode("MCTruth") == false && - f_pc->CurrentRetrieveMode("Hits") == false && - f_pc->CurrentRetrieveMode("Digits") == false ) { + if(f_pc->CurrentRetrieveMode("MCTruth") == false && + f_pc->CurrentRetrieveMode("Hits") == false && + f_pc->CurrentRetrieveMode("Digits") == false) + { return true; } // Call package dependent Initialize() // - if ( ! f_is_initialized ) { + if(!f_is_initialized) + { f_is_initialized = true; - if ( m_verbose > 1 ) { + if(m_verbose > 1) + { G4cout << "G4PersistencyManager:: Initializing Transaction ... " << G4endl; } @@ -255,40 +303,50 @@ G4bool G4PersistencyManager::Retrieve(G4Event*& evt) // Start event IO transaction // - if ( TransactionManager()->StartRead() ) { - if ( m_verbose > 2 ) { - G4cout << "G4PersistencyManager: Read transaction started." - << G4endl; + if(TransactionManager()->StartRead()) + { + if(m_verbose > 2) + { + G4cout << "G4PersistencyManager: Read transaction started." << G4endl; } - } else { + } + else + { G4cerr << "TransactionManager::Retrieve(G4Event) - StartRead() failed." << G4endl; return false; } G4bool st = false; - std::string file; + G4String file; // Retrieve a G4EVENT // - std::string obj = "Hits"; - if ( f_pc->CurrentRetrieveMode(obj) == true ) { + G4String obj = "Hits"; + if(f_pc->CurrentRetrieveMode(obj) == true) + { file = f_pc->CurrentReadFile(obj); - if ( TransactionManager()->SelectReadFile(obj, file) ) { + if(TransactionManager()->SelectReadFile(obj, file)) + { st = EventIO()->Retrieve(evt); - if ( st && m_verbose > 1 ) { - G4cout << " -- File : " << file << " -- Event# " - << evt->GetEventID() + if(st && m_verbose > 1) + { + G4cout << " -- File : " << file << " -- Event# " << evt->GetEventID() << " -- G4Event is Retrieved." << G4endl; } - } else { + } + else + { st = false; } } - if ( st ) { + if(st) + { TransactionManager()->Commit(); - } else { + } + else + { G4cerr << "G4PersistencyManager::Retrieve() - Transaction aborted." << G4endl; TransactionManager()->Abort(); @@ -296,5 +354,3 @@ G4bool G4PersistencyManager::Retrieve(G4Event*& evt) return st; } - -// End of G4PersistencyManager.cc diff --git a/source/persistency/mctruth/src/G4Pevent.cc b/source/persistency/mctruth/src/G4Pevent.cc index 0ee94e9c8c..3237452d4c 100644 --- a/source/persistency/mctruth/src/G4Pevent.cc +++ b/source/persistency/mctruth/src/G4Pevent.cc @@ -23,20 +23,24 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4Pevent.cc +// G4Pevent implementation // -// History: -// '01.11.18 Youhei Morita Initial creation +// Author: Youhei Morita, 18.11.2001 +// -------------------------------------------------------------------- #include "G4Pevent.hh" -G4Pevent::G4Pevent( G4MCTEvent* mctevt, G4Event* g4evt ) - : genEventID(-1), f_mctevt(mctevt), f_g4evt(g4evt) +// -------------------------------------------------------------------- +G4Pevent::G4Pevent(G4MCTEvent* mctevt, G4Event* g4evt) + : f_mctevt(mctevt) + , f_g4evt(g4evt) { m_id = g4evt->GetEventID(); - if (mctevt) genEventID= mctevt->GetEventNumber(); + if(mctevt != nullptr) + genEventID = mctevt->GetEventNumber(); } +// -------------------------------------------------------------------- G4Pevent::~G4Pevent() { delete f_g4evt; diff --git a/source/persistency/mctruth/src/G4VDCIOentry.cc b/source/persistency/mctruth/src/G4VDCIOentry.cc index 961f4b536a..2d5f346211 100644 --- a/source/persistency/mctruth/src/G4VDCIOentry.cc +++ b/source/persistency/mctruth/src/G4VDCIOentry.cc @@ -23,25 +23,20 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VDCIOentry.cc +// G4VDCIOentry implementation // -// History: -// '01.09.12 Youhei Morita Initial creation +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- #include "G4VDCIOentry.hh" - -// Addtional Include: #include "G4DCIOcatalog.hh" -// Implementation of Constructor #1 -G4VDCIOentry::G4VDCIOentry(std::string n) - : m_name(n) +// -------------------------------------------------------------------- +G4VDCIOentry::G4VDCIOentry(const G4String& n) + : m_name(n) { G4DCIOcatalog* c = G4DCIOcatalog::GetDCIOcatalog(); c->RegisterEntry(this); m_verbose = G4PersistencyCenter::GetPersistencyCenter()->VerboseLevel(); } - -// End of G4VDCIOentry.cc - diff --git a/source/persistency/mctruth/src/G4VHCIOentry.cc b/source/persistency/mctruth/src/G4VHCIOentry.cc index def411b12b..fc4afb981a 100644 --- a/source/persistency/mctruth/src/G4VHCIOentry.cc +++ b/source/persistency/mctruth/src/G4VHCIOentry.cc @@ -23,25 +23,20 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VHCIOentry.cc +// G4VHCIOentry implementation // -// History: -// '01.09.12 Youhei Morita Initial creation +// Author: Youhei Morita, 12.09.2001 +// -------------------------------------------------------------------- #include "G4VHCIOentry.hh" - -// Addtional Include: #include "G4HCIOcatalog.hh" -// Implementation of Constructor #1 -G4VHCIOentry::G4VHCIOentry(std::string n) - : m_name(n) +// -------------------------------------------------------------------- +G4VHCIOentry::G4VHCIOentry(const G4String& n) + : m_name(n) { G4HCIOcatalog* c = G4HCIOcatalog::GetHCIOcatalog(); c->RegisterEntry(this); m_verbose = G4PersistencyCenter::GetPersistencyCenter()->VerboseLevel(); } - -// End of G4VHCIOentry.cc - diff --git a/source/persistency/mctruth/src/G4VMCTruthIO.cc b/source/persistency/mctruth/src/G4VMCTruthIO.cc index 4afe12278a..7ad2d52c0f 100644 --- a/source/persistency/mctruth/src/G4VMCTruthIO.cc +++ b/source/persistency/mctruth/src/G4VMCTruthIO.cc @@ -23,12 +23,19 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VMCTruthIO.cc +// G4VMCTruthIO implementation // -// History: -// '01.11.18 Youhei Morita Initial creation +// Author: Youhei Morita, 18.11.2001 +// -------------------------------------------------------------------- #include "G4VMCTruthIO.hh" -G4VMCTruthIO::G4VMCTruthIO() : m_verbose(0) {} -G4VMCTruthIO::~G4VMCTruthIO() {} +// -------------------------------------------------------------------- +G4VMCTruthIO::G4VMCTruthIO() +{ +} + +// -------------------------------------------------------------------- +G4VMCTruthIO::~G4VMCTruthIO() +{ +} diff --git a/source/persistency/mctruth/src/G4VPDigitIO.cc b/source/persistency/mctruth/src/G4VPDigitIO.cc index b5aaf263d9..1f57420f8c 100644 --- a/source/persistency/mctruth/src/G4VPDigitIO.cc +++ b/source/persistency/mctruth/src/G4VPDigitIO.cc @@ -23,33 +23,30 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VPDigitIO.cc +// G4VPDigitIO implementation // -// History: -// '01.08.10 Youhei Morita Initial creation (with "fadsclass3") +// Author: Youhei Morita, 10.08.2001 +// -------------------------------------------------------------------- #include "G4VPDigitIO.hh" -G4ThreadLocal G4VPDigitIO* G4VPDigitIO::f_G4VPDigitIO = 0; +G4ThreadLocal G4VPDigitIO* G4VPDigitIO::f_G4VPDigitIO = nullptr; -// Implementation of Constructor #1 +// -------------------------------------------------------------------- G4VPDigitIO::G4VPDigitIO() - : m_verbose(0) { f_catalog = G4DCIOcatalog::GetDCIOcatalog(); } -// Implementation of SetVerboseLevel -void G4VPDigitIO::SetVerboseLevel(int v) +// -------------------------------------------------------------------- +void G4VPDigitIO::SetVerboseLevel(G4int v) { m_verbose = v; // Loop through the registered Digit I/O managers - for ( size_t i=0; i < f_catalog->NumberOfDCIOmanager(); i++ ) { + for(std::size_t i = 0; i < f_catalog->NumberOfDCIOmanager(); ++i) + { G4VPDigitsCollectionIO* digitIOman = f_catalog->GetDCIOmanager(i); digitIOman->SetVerboseLevel(v); } } - -// End of G4VPDigitIO.cc - diff --git a/source/persistency/mctruth/src/G4VPDigitsCollectionIO.cc b/source/persistency/mctruth/src/G4VPDigitsCollectionIO.cc index 8c7cffa158..1ea8d3cb16 100644 --- a/source/persistency/mctruth/src/G4VPDigitsCollectionIO.cc +++ b/source/persistency/mctruth/src/G4VPDigitsCollectionIO.cc @@ -23,25 +23,24 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VPDigitsCollectionIO.cc +// G4VPDigitsCollectionIO implementation // -// History: -// '01.08.16 Youhei Morita Initial creation +// Author: Youhei Morita, 16.08.2001 +// -------------------------------------------------------------------- #include "G4VPDigitsCollectionIO.hh" -// Implementation of Constructor #1 -G4VPDigitsCollectionIO::G4VPDigitsCollectionIO( std::string detName, - std::string colName ) - : m_verbose(0), f_detName(detName), f_colName(colName) -{} - -// Implementation of operator== -G4bool G4VPDigitsCollectionIO::operator== (const G4VPDigitsCollectionIO& right) const +// -------------------------------------------------------------------- +G4VPDigitsCollectionIO::G4VPDigitsCollectionIO(const G4String& detName, + const G4String& colName) + : f_detName(detName) + , f_colName(colName) { - return ( (f_detName == right.f_detName) && - (f_colName == right.f_colName) ); } -// End of G4VPDigitsCollectionIO.cc - +// -------------------------------------------------------------------- +G4bool G4VPDigitsCollectionIO::operator==( + const G4VPDigitsCollectionIO& right) const +{ + return ((f_detName == right.f_detName) && (f_colName == right.f_colName)); +} diff --git a/source/persistency/mctruth/src/G4VPEventIO.cc b/source/persistency/mctruth/src/G4VPEventIO.cc index 0af850a607..2aa436bf48 100644 --- a/source/persistency/mctruth/src/G4VPEventIO.cc +++ b/source/persistency/mctruth/src/G4VPEventIO.cc @@ -23,17 +23,14 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VPEventIO.cc +// G4VPEventIO implementation // -// History: -// '01.08.10 Youhei Morita Initial creation (with "fadsclass3") +// Author: Youhei Morita, 10.08.2001 +// -------------------------------------------------------------------- #include "G4VPEventIO.hh" -// Implementation of Default Constructor +// -------------------------------------------------------------------- G4VPEventIO::G4VPEventIO() - : m_verbose(0), m_currentEvtID(0) { } - -// End of G4VPEventIO.cc diff --git a/source/persistency/mctruth/src/G4VPHitIO.cc b/source/persistency/mctruth/src/G4VPHitIO.cc index 4452ec8a60..223995672e 100644 --- a/source/persistency/mctruth/src/G4VPHitIO.cc +++ b/source/persistency/mctruth/src/G4VPHitIO.cc @@ -23,33 +23,30 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VPHitIO.cc +// G4VPHitIO implementation // -// History: -// '01.08.10 Youhei Morita Initial creation (with "fadsclass3") +// Author: Youhei Morita, 10.08.2001 +// -------------------------------------------------------------------- #include "G4VPHitIO.hh" -G4ThreadLocal G4VPHitIO* G4VPHitIO::f_G4VPHitIO = 0; +G4ThreadLocal G4VPHitIO* G4VPHitIO::f_G4VPHitIO = nullptr; -// Implementation of Constructor #1 +// -------------------------------------------------------------------- G4VPHitIO::G4VPHitIO() - : m_verbose(0) { f_catalog = G4HCIOcatalog::GetHCIOcatalog(); } -// Implementation of SetVerboseLevel -void G4VPHitIO::SetVerboseLevel(int v) +// -------------------------------------------------------------------- +void G4VPHitIO::SetVerboseLevel(G4int v) { m_verbose = v; // Loop through the registered Hit I/O managers - for ( size_t i=0; i < f_catalog->NumberOfHCIOmanager(); i++ ) { + for(std::size_t i = 0; i < f_catalog->NumberOfHCIOmanager(); ++i) + { G4VPHitsCollectionIO* hitIOman = f_catalog->GetHCIOmanager(i); hitIOman->SetVerboseLevel(v); } } - -// End of G4VPHitIO.cc - diff --git a/source/persistency/mctruth/src/G4VPHitsCollectionIO.cc b/source/persistency/mctruth/src/G4VPHitsCollectionIO.cc index 07e73576fe..13287e8940 100644 --- a/source/persistency/mctruth/src/G4VPHitsCollectionIO.cc +++ b/source/persistency/mctruth/src/G4VPHitsCollectionIO.cc @@ -23,25 +23,23 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// File: G4VPHitsCollectionIO.cc +// G4VPHitsCollectionIO implementation // -// History: -// '01.08.16 Youhei Morita Initial creation +// Author: Youhei Morita, 16.08.2001 +// -------------------------------------------------------------------- #include "G4VPHitsCollectionIO.hh" -// Implementation of Constructor #1 -G4VPHitsCollectionIO::G4VPHitsCollectionIO( std::string detName, - std::string colName ) - : m_verbose(0), f_detName(detName), f_colName(colName) -{} - -// Implementation of operator== -G4bool G4VPHitsCollectionIO::operator== (const G4VPHitsCollectionIO& right) const +// -------------------------------------------------------------------- +G4VPHitsCollectionIO::G4VPHitsCollectionIO(const G4String& detName, + const G4String& colName) + : f_detName(detName) + , f_colName(colName) { - return ( (f_detName == right.f_detName) && - (f_colName == right.f_colName) ); } -// End of G4VPHitsCollectionIO.cc - +// -------------------------------------------------------------------- +G4bool G4VPHitsCollectionIO::operator==(const G4VPHitsCollectionIO& right) const +{ + return ((f_detName == right.f_detName) && (f_colName == right.f_colName)); +} diff --git a/source/physics_lists/History b/source/physics_lists/History index 13c3f611ae..f0c50d005e 100644 --- a/source/physics_lists/History +++ b/source/physics_lists/History @@ -14,6 +14,9 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +23-09-2020, Ben Morgan (physics-lists-V10-06-00) +- Remove no longer required include_directories + 09-09-2014, Witek Pokorski (physics_lists-V10-00-01) - replacing explicite instantiation of cross sections by calls to G4CrossSectionDataSetRegistry (using factory approach) @@ -50,10 +53,10 @@ to G4CrossSectionDataSetRegistry (using factory approach) 11-12-2012, V.Ivanchenko (phys-lists-V09-06-01) - G4HadronInelasticQBBC - removed CHIPS headers - G4HadronElasticPhysics, G4HadronHElasticPhysics - substitute - obsolete CHIPS classes + obsolete CHIPS classes 07-12-2012, V.Ivanchenko (phys-lists-V09-06-00) -- G4EmDNAPhysicsChemistry - substituted obsolete interface +- G4EmDNAPhysicsChemistry - substituted obsolete interface SetModel() by SetEmModel() 23-11-2012, A.Ribon (phys-lists-V09-05-81) @@ -68,13 +71,13 @@ to G4CrossSectionDataSetRegistry (using factory approach) 20-11-2012, V.Ivanchenko (phys-lists-V09-05-78) - G4IonPhysics - added old constructor to provide backward - compatibility with 9.5 (CMS request) + compatibility with 9.5 (CMS request) 06-11-2012, V.Ivanchenko (phys-lists-V09-05-77) - G4EmStandardPhysics_option4 - fixed typo - 2 ionisation for e+- 02-11-2012, V.Ivanchenko (phys-lists-V09-05-76) -- G4EmLivermorePolarizedPhysics - fixed extra error +- G4EmLivermorePolarizedPhysics - fixed extra error 02-11-2012, V.Ivanchenko (phys-lists-V09-05-75) - G4EmLivermorePolarizedPhysics - fixed typo of previous tag @@ -82,7 +85,7 @@ to G4CrossSectionDataSetRegistry (using factory approach) 02-11-2012, V.Ivanchenko (phys-lists-V09-05-74) - In all EM builders use WentzelVI multiple scattering model for e+- above 100 MeV; build transport mean free path for - He3 and He4, do not build for all other ions and heavy hadrons + He3 and He4, do not build for all other ions and heavy hadrons 01-11-2012, A.Ribon (phys-lists-V09-05-73) - Added proper treatment of light anti-ions in G4HadronQElasticPhysics. @@ -104,10 +107,10 @@ to G4CrossSectionDataSetRegistry (using factory approach) - moving Shielding to new XS 30-10-2012, W.Pokorski (phys-lists-V09-05-67) -- moving QBBC, etc, to new XS +- moving QBBC, etc, to new XS 29-10-2012, W.Pokorski (phys-lists-V09-05-66) -- moving QGSP_BERT to new XS +- moving QGSP_BERT to new XS 26-10-2012, W.Pokorski (phys-lists-V09-05-65) - second try with the new ion XS @@ -121,7 +124,7 @@ to G4CrossSectionDataSetRegistry (using factory approach) 20-10-2012, Vladimir Ivanchenko (phys-lists-V09-05-62) - EM builders - substitute obsolete method SetModel() by SetEmModel() - G4VHadronPhysics - include name of the hadron in the name of the process -- G4HadronInelasticQBBC - reuse G4PreCompoundModel if it is already +- G4HadronInelasticQBBC - reuse G4PreCompoundModel if it is already instantiated 19-10-2012, A. Ribon (phys-lists-V09-05-61) @@ -181,7 +184,7 @@ generic physics list, modifying FTFP_BERT to use the registry - G4EmStandardPhysics_option4 - new builder combining standard and low-energy as "the best combination" - G4PhysListFactory - added EM opt4 -- G4EmStandardPhysics_option3, G4EmLivermorePhysics - fixed variable +- G4EmStandardPhysics_option3, G4EmLivermorePhysics - fixed variable shadowing and cleanup 27-09-2012, G.Cosmo (phys-lists-V09-05-47) @@ -207,12 +210,12 @@ generic physics list, modifying FTFP_BERT to use the registry added upper limit 1 MeV for nuclear stopping for CPU performance 27-07-2012, Vladimir Ivanchenko (phys-lists-V09-05-42) -- Substitute G4WHadronElasticPhysics by G4HadronElasticPhysics in +- Substitute G4WHadronElasticPhysics by G4HadronElasticPhysics in all elastic builders -- G4EmStandardPhysics, G4EmStandardPhysics_option1 - use WentzelVI +- G4EmStandardPhysics, G4EmStandardPhysics_option1 - use WentzelVI for pions and kaons - G4EmStandardPhysics_option2 - add Rayleigh scattering -- G4EmStandardPhysics_option3, G4EmLivermorePhysics, +- G4EmStandardPhysics_option3, G4EmLivermorePhysics, G4EmPenelopePhysics - added nuclear stopping for protons and anti_protons, romove upper energy limit for Rayleigh @@ -244,7 +247,7 @@ generic physics list, modifying FTFP_BERT to use the registry - Fixed warnings of shadowed variables. 06-07-2012, A.Ribon (phys-lists-V09-05-33) -- Removed obsolete physics list QGSP_INCL_ABLA +- Removed obsolete physics list QGSP_INCL_ABLA (leaving only QGSP_INCLXX). 26-06-2012, A.Ribon (phys-lists-V09-05-32) @@ -275,10 +278,10 @@ mechanism for Chips cross sections visible effect on CPU was observed 05-05-2012, V.Ivanchenko (phys-lists-V09-05-25) -- Build transport cross section tables for d and t in standard opt0 +- Build transport cross section tables for d and t in standard opt0 05-05-2012, V.Ivanchenko (phys-lists-V09-05-24) -- Build transport cross section tables for He3 and He4 in standard opt0 +- Build transport cross section tables for He3 and He4 in standard opt0 03-06-2012, Witek Pokorski (phys-lists-V09-05-23) - using the new functionality of cross sections registry allowing @@ -289,7 +292,7 @@ to share the cross sections data sets - migrated FTFP_BERT to use the new builders 25-05-2012, Gunter Folger (phys-lists-V09-05-21) -- improve creation of cascade to avoid one instantiation of Preco in +- improve creation of cascade to avoid one instantiation of Preco in G4FTFP{Proton,Neutron,PiK,AntiBarion}Builder.cc 24-05-2012, D. Mancusi (phys-lists-V09-05-20) @@ -299,22 +302,22 @@ to share the cross sections data sets 22-05-2012, D.H. Wright (phys-lists-V09-05-19) - in G4EmExtraPhysics.hh, .cc, change name of class G4VDMuonNuclearModel to G4MuonVDNuclearModel. Requires tag hadr-munuclear-V09-05-03. - + 21-05-2012, M.Kelsey - G4QandFTFStoppingPhysics: Use general G4HadronicAbsorptionBertini. Requires use of hadronic/stopping MHK-20120521. 18-05-2012, V.Ivanchenko (phys-lists-V09-05-18) -- In all EM builders modified method of instantiation of +- In all EM builders modified method of instantiation of multiple scattering: the same process instance is used by mu+ and mu-, for pi+,pi-,K+,K-,proton and anti_protons separate processes which - build internal transport x-section tables, for all others the same + build internal transport x-section tables, for all others the same process instance is used and no table is built; this should reduce total memory for tables and initialisation time; -- In standard builders Opt0, Opt1, Opt2 WentzelVI multiple - scattering and G4eCoulombScattering models are applied for +- In standard builders Opt0, Opt1, Opt2 WentzelVI multiple + scattering and G4eCoulombScattering models are applied for e+ and e- above 100 MeV , below G4UrbanMscModel95 is used - + 14-05-2012, W. Pokorski (phys-lists-V09-05-17) - moving FTFP_BERT_TRV to new Chips XS @@ -364,13 +367,13 @@ to share the cross sections data sets - previous tag was rejected by mistake 15-03-2012, V.Ivanchenko (phys-lists-V09-05-04) -- In all EM builders use the same bremsstrahlung and e+e- pair +- In all EM builders use the same bremsstrahlung and e+e- pair production processes to mu+/mu-, pi+/pi-, K+K-, proton/anti_proton; - expected reduction of memory for physics tables and initialisation + expected reduction of memory for physics tables and initialisation time for EM physics 01-03-2012, V.Ivanchenko (phys-lists-V09-05-03) -- Fixed Coverity warnings in G4HadronInelasticQBBC, all elastic builders, +- Fixed Coverity warnings in G4HadronInelasticQBBC, all elastic builders, all ion builders, G4NeutronTrackingCut, G4StepLimiterBuilder; - G4HadronInelasticQLHEP - remove obsolete @@ -381,7 +384,7 @@ to share the cross sections data sets 23-01-2012 M.Karamitros (phys-lists-V09-05-01) - change G4WaterExcitation -> G4DNAWaterExcitation in G4EmDNAPhysicsChemistry -- G4FTFBuilder, G4QandFTFStoppingPhysics - reduced number of deleted +- G4FTFBuilder, G4QandFTFStoppingPhysics - reduced number of deleted objects to avoid double deletion 18-01-2012, V.Ivanchenko (phys-lists-V09-05-00) @@ -390,7 +393,7 @@ to share the cross sections data sets 18-11-2011, V.Ivanchenko (phys-lists-V09-04-74) - fix in all EM builders - return back old method of definition of - high energy model per particle type, new method provoke + high energy model per particle type, new method provoke enegry non-conservation in hadron calorimetery 15-11-2011, G.Folger (phys-lists-V09-04-73) @@ -406,7 +409,7 @@ to share the cross sections data sets 10-11-2011, G.Folger (phys-lists-V09-04-70) - correct builders/source.cmake for new classes -- G4DataQuestionaire: fix typo in new abla part; replace G4cout by +- G4DataQuestionaire: fix typo in new abla part; replace G4cout by G4ExceptionDescription - QGSP_BERT_ENV: add missing #include "G4QWarnStatus.hh" @@ -425,8 +428,8 @@ to share the cross sections data sets mark unsupported: QGSP_BERT_NOLEP, QGSP_BERT_TRV, make supported: Shielding mark experimental: CHIPS -- EM variants (EMV, EMX, EMY) are now available only from - physics list factory, with the exception of FTFP_BERT_EMV +- EM variants (EMV, EMX, EMY) are now available only from + physics list factory, with the exception of FTFP_BERT_EMV and QGSP_BIC_EMY. The following now raise G4Exception explaining to the user what he needs to do: FTFP_BERT_EMX, QGSP_BERT_EMX, QGSP_BERT_EMV @@ -442,32 +445,32 @@ to share the cross sections data sets to avoid dynamic_cast 08-11-2011, V.Ivanchenko (phys-lists-V09-04-64) -- Removed He3 from elastic builders, because cross section is +- Removed He3 from elastic builders, because cross section is still unavailable -- G4PhysListFactory - implemented selection of EM builder via +- G4PhysListFactory - implemented selection of EM builder via Physics List name - QBBC - cleanup printout and use default EM builder -- G4HadronInelasticQBBC - use Bertini up tp 12 GeV, +- G4HadronInelasticQBBC - use Bertini up tp 12 GeV, FTFP - down to 3 GeV 04-11-2011, M.Karamitros (phys-lists-V09-04-63) - Add History description - + 04-11-2011, M.Karamitros (phys-lists-V09-04-62) - Add G4DNAEmPhysicsChemistry builder - + 04-11-2011, P.Gumplinger (phys-lists-V09-04-60) - change static_cast to dynamic_cast in G4OpticalPhysicsMessenger this is a bug fix - of an old bug! 04-11-2011, T.Koi (phys-lists-V09-04-59) --Fix Xcode warning +-Fix Xcode warning builders/include/G4NeutronLENDBuilder.hh builders/src/G4NeutronLENDBuilder.cc 03-10-2011, V.Ivanchenko (phys-lists-V09-04-58) - Updated mu+-, pi+-, kaon+-, configuration reusing the same - bremsstrahlung and pair production models for particle and + bremsstrahlung and pair production models for particle and anti-particle; by this some memory is saved and expected reduction of initialisation time @@ -493,12 +496,12 @@ to share the cross sections data sets - to be used on top of tag emdna-V09-04-25 21-10-2011, V.Ivanchenko (phys-lists-V09-04-52) -- G4EmStandardPhysics_option1 - use UrbanMsc95 +- G4EmStandardPhysics_option1 - use UrbanMsc95 - G4EmStandardPhysics_option2 - copy of Opt1 with UrbanMsc93 - G4HadronElasticBuilder - He3 x-section from the new AntiNuclei class - to avoid crash in GHEISHA x-sections -- G4HadronDElasticBuilder - x-sections from CHIPS, Diffuse model -- G4HadronHElasticBuilder - alternative x-sections and models + to avoid crash in GHEISHA x-sections +- G4HadronDElasticBuilder - x-sections from CHIPS, Diffuse model +- G4HadronHElasticBuilder - alternative x-sections and models 18-10-2011, A. Ribon (phys-lists-V09-04-51) - Fixed small mistake in builders/sources.cmake. @@ -535,16 +538,16 @@ to share the cross sections data sets fix bug report #1216 14-09-2011, V.Ivanchenko (phys-lists-V09-04-44) -- G4EmStandardPhysics_option1,2 - pi+-, kaon+-, proton, anti_proton +- G4EmStandardPhysics_option1,2 - pi+-, kaon+-, proton, anti_proton use WentzelVI model of multiple scattering -- G4EmStandardPhysics_option2 - e- use Livermore bremsstrahlung +- G4EmStandardPhysics_option2 - e- use Livermore bremsstrahlung below 100 MeV 05-09-2011, A.M., M.K., S.I. (phys-lists-V09-04-43) - Updated sources.cmake in builders for new dna architecture 31-08-2011, A.M., M.K., S.I. (phys-lists-V09-04-42) -- Updated builders/GNUmakefile and builders/sources.cmake +- Updated builders/GNUmakefile and builders/sources.cmake for new DNA architecture. Must be applied on top of tag emdna-V09-04-19 24-08-2011, S. Incerti (phys-lists-V09-04-41) @@ -554,27 +557,27 @@ for new DNA architecture. Must be applied on top of tag emdna-V09-04-19 - G4ChargeExchangePhysics - removed obsolete header 01-08-2011, G.Folger (phys-lists-V09-04-39) -- In HadronPhysicsFTFP_BERT_TRV, change overlap BERT/FTFP to be +- In HadronPhysicsFTFP_BERT_TRV, change overlap BERT/FTFP to be from 3 to 12 GeV, affecting FTFP_BERT_TRV. 14/20-07-2011, G.Folger (phys-lists-V09-04-38) - Add in lists class PhysListUtil. Contains a single function - FindInelasticProcess(), up to now implemeted multiple times -- HadronPhysicsFTFP_BERT_TRV: update to use FTF for antibarions and + FindInelasticProcess(), up to now implemeted multiple times +- HadronPhysicsFTFP_BERT_TRV: update to use FTF for antibarions and Hyperons, and to use CHIPS cross-sections for Hyperons and Kaons. - This make it identical to HadronPhysicsFTFP_BERT, except the - transition energy. -- HadronPhysicsQGSP_FTFP_BERT:update to use FTFP for hyperons + This make it identical to HadronPhysicsFTFP_BERT, except the + transition energy. +- HadronPhysicsQGSP_FTFP_BERT:update to use FTFP for hyperons using G4HyperonFTFPBuilder -- HadronPhysicsFTF_BIC: No longer using LEP for "misc" particles, +- HadronPhysicsFTF_BIC: No longer using LEP for "misc" particles, but use FTFP for: - Antibarions using G4FTFPAntiBarionBuilder - Hyperons using G4HyperonFTFPBuilder and switch to CHIPS cross-section for kaons. 13-07-2011, V.Ivanchenko (phys-lists-V09-04-37) -- G4HadronDElasticPhysics - is done coherently with the - modifications in G4DiffuseElastic class +- G4HadronDElasticPhysics - is done coherently with the + modifications in G4DiffuseElastic class 13-07-2011, V.Ivanchenko (phys-lists-V09-04-36) - Fixed typo in previous tag @@ -594,33 +597,33 @@ for new DNA architecture. Must be applied on top of tag emdna-V09-04-19 20-06-2011, V.Ivanchenko (phys-lists-V09-04-33) - G4EmStandardPhysics_option2 - use relativistic bremsstrahlung for all energies (EM shower shape issue) -- G4EmLivermorePhysics, G4EmLivermorePolarizedPhysics, +- G4EmLivermorePhysics, G4EmLivermorePolarizedPhysics, G4EmPenelopePhysics - use UrbanMscModel95 for e+- 18-06-2011, B.Morgan (phys-lists-V09-04-32) - builders/CMakeLists.txt - added install of OrderingParameterTable. 14-06-2011, V.Ivanchenko (phys-lists-V09-04-31) -- G4HadronElasticPhysics - added LHEP model for anti-nuclei below 100 MeV +- G4HadronElasticPhysics - added LHEP model for anti-nuclei below 100 MeV 13-06-2011, G.Folger (phys-lists-V09-04-30) - fix several small bugs in G4HyperonFTFPBuilder.cc 10-06-2011, G.Folger (phys-lists-V09-04-29) Make use of new features of FTF in FTFP_BERT, and (less) in QGSP_FTFP_BERT: -- Add Builder for Hyperons using FTF and Bertini as models, +- Add Builder for Hyperons using FTF and Bertini as models, G4HyperonFTFPBuilder.{hh,cc} - G4FTFPAntiBarionBuilder.cc: delete cross-section objects -- HadronPhysicsFTFP_BERT: +- HadronPhysicsFTFP_BERT: + use G4HyperonFTFPBuilder, replacing G4MiscCHIPSBuilder - + use/add G4FTFPAntiBarionBuilder for anti barions, -- FTFP_BERT.icc and QGSP_FTFP_BERT.icc uses new IonFTFPBinaryPhysics, + + use/add G4FTFPAntiBarionBuilder for anti barions, +- FTFP_BERT.icc and QGSP_FTFP_BERT.icc uses new IonFTFPBinaryPhysics, replacing LHEP IonPhysics and IonBinaryPhysics, resp. - -- update builders/sources.cmake for new files. + +- update builders/sources.cmake for new files. -10-06-2011, V.Ivanchenko (phys-lists-V09-04-28) +10-06-2011, V.Ivanchenko (phys-lists-V09-04-28) - G4IonFTFPBinaryCascadePhysics - set transition 2-4 GeV - G4HadronInelasticQBBC - added destruction of anti-nuclei cross section component @@ -644,27 +647,27 @@ Make use of new features of FTF in FTFP_BERT, and (less) in QGSP_FTFP_BERT: - Updated GNUmakefile and source.cmake for LEND 04-05-2011, V.Ivanchenko (phys-lists-V09-04-23) -- G4HadronElasticPhysics - use G4AntiNuclElastic model and - G4ComponentAntiNuclNuclearXS +- G4HadronElasticPhysics - use G4AntiNuclElastic model and + G4ComponentAntiNuclNuclearXS - G4HadronInelasticQBBC - use FTFP for all anti-baryons, energy interval FTFP above 2 GeV, Bertini - below 6 GeV -- G4HadronElasticPhysicsXS, G4HadronElasticPhysicsHP, - G4HadronElasticPhysicsLEND - use G4HadronElasticPhysics for all +- G4HadronElasticPhysicsXS, G4HadronElasticPhysicsHP, + G4HadronElasticPhysicsLEND - use G4HadronElasticPhysics for all particles and modified only neutron models and cross sections - G4PhysListFactory - added "ShieldingLEND" - G4EmLivermorePhysics, G4EmLivermorePolarizedPhysics, G4EmDNAPhysics - - added deexcitation + added deexcitation -02-06-2011, T.Koi +02-06-2011, T.Koi - Add LEND builders -- Enable to use LEND model and cross section +- Enable to use LEND model and cross section for low energy neutron in Shielding physics list (Default is still neutron HP package) - Add G4RadioactiveDecayPhysics to Shielding physics list 20-05-2011, S.Incerti (phys-lists-V09-04-22) -- following Vladimir, EM low energy + DNA builders are migrated to the - new approach based on G4PhysicsListHelper +- following Vladimir, EM low energy + DNA builders are migrated to the + new approach based on G4PhysicsListHelper - no integer numbers to identify process order is needed anymore 19-05-2011, V.Ivanchenko (phys-lists-V09-04-21) @@ -684,10 +687,10 @@ Make use of new features of FTF in FTFP_BERT, and (less) in QGSP_FTFP_BERT: model definition for the same energy range (bug was introduced in -16) 26-04-2011,G.Folger (phys-lists-V09-04-17) -- In QGSP_FTFP_BERT use G4IonBinaryCascadePhysics inplace of G4IonPhysics +- In QGSP_FTFP_BERT use G4IonBinaryCascadePhysics inplace of G4IonPhysics 21-04-2011, V.Ivanchenko (phys-lists-V09-04-16) -- G4IonFTFPBinaryCascadePhysics - fixed run time bugs +- G4IonFTFPBinaryCascadePhysics - fixed run time bugs 21-04-2011, V.Ivanchenko (phys-lists-V09-04-15) - G4EmStandardPhysics_option3 - activate Rayleigh Scattering @@ -704,9 +707,9 @@ Make use of new features of FTF in FTFP_BERT, and (less) in QGSP_FTFP_BERT: 28-03-2011, G.Folger (phys-lists-V09-04-13) - Fix coverity issues in many files; most were uninitialised data - members for processes/models. LBE not fixed, requires bigger + members for processes/models. LBE not fixed, requires bigger rework to avoid leaks for processes at program end. -- Correct inclusion of G4UrbanMscModel95 +- Correct inclusion of G4UrbanMscModel95 24-03-2011, V.Ivanchenko (phys-lists-V09-04-12) - G4EmStandardPhysics_option3, G4EmStandardPhysics_option2 - use @@ -714,8 +717,8 @@ Make use of new features of FTF in FTFP_BERT, and (less) in QGSP_FTFP_BERT: 23-03-2011, V.Ivanchenko (phys-lists-V09-04-11) - G4EmStandardPhysics_option3 - experimental change of of options: - - reduced low-energy limit to 10 eV, - - reduced StepFunction parameters per particle type, + - reduced low-energy limit to 10 eV, + - reduced StepFunction parameters per particle type, - added G4RayleighScattering inactive by default. 23-03-2011, G.Cosmo (phys-lists-V09-04-10) @@ -744,10 +747,10 @@ Make use of new features of FTF in FTFP_BERT, and (less) in QGSP_FTFP_BERT: - G4HadronElasticPhysics - added light anti-nuclei - G4FTFPAntiBarionBuilder - added cross section to light anti-nuclei -23-02-2011, J.Apostolakis +23-02-2011, J.Apostolakis - Added builders for anti-deuteron, anti-triton, anti-He and anti-Alpha - Revised QGSP_FTFP_BERT to utilise the new FTF/P processes - changing them for anti-proton, anti-neutron + changing them for anti-proton, anti-neutron adding them also for the above list of light anti-ions (d,t,He3,alpha). 16-02-2011, S.Incerti (phys-lists-V09-04-03) @@ -757,21 +760,21 @@ Make use of new features of FTF in FTFP_BERT, and (less) in QGSP_FTFP_BERT: - Shielding PL corrected .icc file to include correct G4HadronElasticPhysicsHP 05-01-2011, G.Folger (phys-lists-V09-04-01 and phys-lists-V09-03-44) -- QGSP_BERT_NOLEP and QGSP_QEL were missing the include - for G4HadronQElasticPhysics.hh, but included G4HadronElasticPhysics +- QGSP_BERT_NOLEP and QGSP_QEL were missing the include + for G4HadronQElasticPhysics.hh, but included G4HadronElasticPhysics 19-12-2010, V.Ivanchenko (phys-lists-V09-04-00) - G4EmStandardPhysics_option1 - fixed missing line defing polar angle limit (in the release single scattering of muons providing - significant CPU penalty) + significant CPU penalty) 25-11-2010, S.Incerti (phys-lists-V09-03-43) - changed default elastic model in G4EmDNAPhysics.cc 22-11-2010, G.Folger (phys-lists-V09-03-42) -- Fix bug in QGSP_BERT_CHIPS physics list, Kaon cross sections are in CHIPS +- Fix bug in QGSP_BERT_CHIPS physics list, Kaon cross sections are in CHIPS process, not in hadronic framework. - + 22-11-2010, G.Folger (phys-lists-V09-03-41) - Fix bug in new G4CHIPSKaonBuilder @@ -779,7 +782,7 @@ Make use of new features of FTF in FTFP_BERT, and (less) in QGSP_FTFP_BERT: - G4EmStandardPhysics_option1 - enable back ApplyCuts option (CPU effect) - G4EmStandardPhysics_option2, G4EmStandardPhysics_option3 - minor cleanup - QGS_BIC: using G4NeutronCrossSectionXS -- QBBC: +- QBBC: 19-11-2010, V.Ivanchenko (phys-lists-V09-03-39) - G4PhysListFactory - removed obsolete Physics Lists (26 are supported) @@ -791,25 +794,25 @@ Make use of new features of FTF in FTFP_BERT, and (less) in QGSP_FTFP_BERT: GF: - use crosssection with relativistic rise also in all G4QGSBinary, FTFP and FTFBinary builders. -- restore QGSP to be obsolete, not unusable, i.e. remove G4Exception. +- restore QGSP to be obsolete, not unusable, i.e. remove G4Exception. - allow to seperate physics for pion and Kaon, i.e. seperate builders G4{V,}{Pion,Kaon}Builder, G4{LEP,Bertini, QGSP}PionBuilder, and G4ChipKaonBuilder. -- in QGSP_BERT_CHIPS, use Chip G4QInelastic via G4ChipKaonBuilder for Kaons. +- in QGSP_BERT_CHIPS, use Chip G4QInelastic via G4ChipKaonBuilder for Kaons. - delete physics lists: - remove previously blocked lists (FTFP_EMV, QGSC_EFLOW, QGSP_EMX) - - remove obsolete lists, except QGSP ( now blocked) and QGSC_CHIPS, + - remove obsolete lists, except QGSP ( now blocked) and QGSC_CHIPS, ie. removed FTFC, FTFP, LHEP_BERT_HP, LHEP_BERT, LHEP_PRECO_HP, QGSC_EMV, QGSC, QGSC_QGSC, QGSP_BERT_DIF, QGSP_BERT_NQE, QGSP_DIF, QGSP_EMV, QGSP_EMV_NQE, QGSP_NQE, QGSP_QE V.I: - G4EmStandardPhysics_option1 - added WentzelVI model for muons; - disable ApplyCut option for compatibility with 9.2; this option + disable ApplyCut option for compatibility with 9.2; this option can be defined by user via UI command or G4EmProcessOptions class 17-11-2010, G.Folger (phys-lists-V09-03-37) - in builders G4QGSP{Proton, Neutron,Pik}Builder, use crosssection with - relativistic rise, using a combination of previously used cross section + relativistic rise, using a combination of previously used cross section and G4GlauberGribovCrossSection above 91 GeV. 10-11-2010, V.Ivanchenko (phys-lists-V09-03-36) @@ -838,22 +841,22 @@ V.I: - Add the G4OpMieHG scattering process to G4OpticalPhysics builder 20-10-2010, L.Pandola (phys-lists-V09-03-30) -- updated physics list LBE to comply with the new EM design +- updated physics list LBE to comply with the new EM design (use Livermore models rather than LowEnergy processes) 20-10-2010, L.Pandola (phys-lists-V09-03-30) -- updated physics list LBE to comply with the new EM design +- updated physics list LBE to comply with the new EM design (use Livermore models rather than LowEnergy processes) 10-10-2010, V.Ivanchenko (phys-lists-V09-03-29) - anti_deuteron, anti_triton, anti_alpha, anti_He3 are included in all builders except DNA -- G4EmStandardPhysics - WentzelVI model for multiple scattering and +- G4EmStandardPhysics - WentzelVI model for multiple scattering and G4CoulombScattering process for muons are added -- G4EmStandardPhysics_option2 - WentzelVI model for multiple scattering +- G4EmStandardPhysics_option2 - WentzelVI model for multiple scattering is added for pi+-, kaon+-, protons, single scattering - model is not added, because hadron elastic process - should be used + model is not added, because hadron elastic process + should be used 08-10-2010, S. Incerti (phys-lists-V09-03-28) - Added new H excitation model to G4EmDNAPhysics.cc in builders @@ -862,12 +865,12 @@ V.I: - Further Bug fix in G4IonQMDPhysics: use QMD for d, alpha 24-09-2010, V.Ivanchenko (phys-lists-V09-03-26) -- G4HadronElasticPhysics - attempt to use exactly the same cross section - for p and n as in 9.4beta +- G4HadronElasticPhysics - attempt to use exactly the same cross section + for p and n as in 9.4beta 23-09-2010, V.Ivanchenko (phys-lists-V09-03-25) -- G4HadronElasticPhysics, G4HadronElasticPhysicsHP - added CHIPS cross - sections for p and n on Hydrogen and Helium targets +- G4HadronElasticPhysics, G4HadronElasticPhysicsHP - added CHIPS cross + sections for p and n on Hydrogen and Helium targets - G4PhysicsListFactory - return NULL if the name is wrong 09-09-2010, S.Incerti (phys-lists-V09-03-24) @@ -877,14 +880,14 @@ V.I: - Bug fix in G4IonQMDPhysics: wrong energy limit for overlap with BIC 25-08-2010, G.Folger (phys-lists-V09-03-22) -- Correct obsolete ctor of G4HadronElasticPhysics in header +- Correct obsolete ctor of G4HadronElasticPhysics in header 24-08-2010, V.Ivanchenko (phys-lists-V09-03-21) - don't use 17-08-2010, V.Ivanchenko (phys-lists-V09-03-20) - Obsolete G4ParticleWithCut.hh header removed from many .icc files - by H.Kurashige + by H.Kurashige 30-07-2010, V.Ivanchenko (phys-lists-V09-03-19) - In all EM builders use G4ionIonisation for He3 and He4 ions @@ -906,10 +909,10 @@ V.I: 19-06-2010, V.Ivanchenko (phys-lists-V09-03-16) - G4FTFPNeutronBuilder, G4FTFPPiKBuilder, G4FTFPProtonBuilder, - G4QGSPNeutronBuilder, G4QGSPPiKBuilder, G4QGSPProtonBuilder - G4QGSBuilder - added deletion of G4ExcitationHandler, G4QGSMFragmentation + G4QGSPNeutronBuilder, G4QGSPPiKBuilder, G4QGSPProtonBuilder + G4QGSBuilder - added deletion of G4ExcitationHandler, G4QGSMFragmentation HadronPhysicsQGSP_BERT, HadronPhysicsFTFP_BERT, - HadronPhysicsQGSP_FTFP_BERT - added deletion of neutron builder + HadronPhysicsQGSP_FTFP_BERT - added deletion of neutron builder 11-06-2010, G.Folger (phys-lists-V09-03-15) - fix compilation error in G4QPhotoNuclearPhysics @@ -931,20 +934,20 @@ reset of theParticleIterator in G4QPhotoNuclearPhysics - and Barashenkov + Glauber Gribov cross section via G4BGGNucleonInelasticXS for neutron and proton - and JENDL HE cross sections for neutrons - + 08-06-2010, G.Folger (phys-lists-V09-03-12) - 3 more fixes for compilation warnings on unused variables. 07-06-2010, G.Folger (phys-lists-V09-03-11) - remove few leftover declarations for G4bool Quasielastic in .icc files for physics lists, not used any longer - + 04-06-2010, G.Folger (phys-lists-V09-03-10) - New ctor for G4NeutronTrackingCut - Use new ctors in physics lists - QGSP_FTFP_BERT becomes supported (was experimental) - remove previously blocked lists (FTFP_EMV, QGSC_EFLOW, QGSP_EMX) -- remove obsolete lists, except QGSP ( now blocked) and QGSC_CHIPS, +- remove obsolete lists, except QGSP ( now blocked) and QGSC_CHIPS, ie. removed FTFC, FTFP, LHEP_BERT_HP, LHEP_BERT, LHEP_PRECO_HP, QGSC_EMV, QGSC, QGSC_QGSC, QGSP_BERT_DIF, QGSP_BERT_NQE, QGSP_DIF, QGSP_EMV, QGSP_EMV_NQE, QGSP_NQE, QGSP_QE @@ -959,28 +962,28 @@ bug fix for the virtual distructor in G4QElasticPhysics & G4QIonPhysics 03-June, V.Ivanchenko, G.Folger (phys-lists-V09-03-07) - Introduce new ctor for all builders with signature AbcPhysics::AbcPhyics(G4int ver=value); - Existing ctor kept, but updated default arguments to avoid ambigous - signatures. Physicslist not changed to use new ctor yet. + Existing ctor kept, but updated default arguments to avoid ambigous + signatures. Physicslist not changed to use new ctor yet. 03-06-2010, M. Kosov (phys-lists-V09-03-06) -- G4QElasticPhysics substitute for G4HadronQElasticPhysics in the CHIPS Physics List -- G4QIonPhysics substitute for G4IonPhysics in the CHIPS Physics ListList. +- G4QElasticPhysics substitute for G4HadronQElasticPhysics in the CHIPS Physics List +- G4QIonPhysics substitute for G4IonPhysics in the CHIPS Physics ListList. 02-06-2010, V.Ivanchenko (phys-lists-V09-03-05) -- G4EmStandardPhysics_option2 - added G4WentzelVIMscModel for e+- +- G4EmStandardPhysics_option2 - added G4WentzelVIMscModel for e+- - G4EmLivermorePhysics, G4EmPenelopePhysics, G4EmDNAPhysics, G4EmLivermorePolarizedPhysics - added G4GoudsmitSaundersonMscModel for e+-; - - added 1 MeV upper limit for the Livermore + - added 1 MeV upper limit for the Livermore ionisation model (was 1 GeV) 02-06-2010, G.Folger (phys-lists-V09-03-04) -- revise QGSP_FTFP_BERT and FTFP_BERT to - - Use CHIPS G4QInelastic for all "misc" particles, including +- revise QGSP_FTFP_BERT and FTFP_BERT to + - Use CHIPS G4QInelastic for all "misc" particles, including anti-proton, anti-neutron and hyperons. - Use interface to CHIPS cross sections G4QHadronInelasticDataSet for Kaons. - required changes to respective HadronPhysics... classes. + required changes to respective HadronPhysics... classes. 26-05-2010, G.Folger (phys-lists-V09-03-03) - new physics list QGSP_BERT_CHIPS: Use CHIPS G4QInelastic for all @@ -990,7 +993,7 @@ bug fix for the virtual distructor in G4QElasticPhysics & G4QIonPhysics added classes: QGSP_BERT_CHIPS, HadronPhysicsQGSP_BERT_CHIPS, and G4MiscCHIPSBuilder modifed G4PhysListFactory to make new list available. - + 19-05-2010, V.Ivanchenko (phys-lists-V09-03-02) - QBBC - disable multi fragmentation model of deexcitation @@ -999,8 +1002,8 @@ bug fix for the virtual distructor in G4QElasticPhysics & G4QIonPhysics msc processes 29-12-2009, V.Ivanchenko (phys-lists-V09-03-00) -- QBBC - fixed hadron inelastic configuration; instantiated - G4PreCompoundModel and its pointer propagated to +- QBBC - fixed hadron inelastic configuration; instantiated + G4PreCompoundModel and its pointer propagated to all high energy models; use CHIPS for anti-protons to avoid crash in FTF @@ -1017,15 +1020,15 @@ bug fix for the virtual distructor in G4QElasticPhysics & G4QIonPhysics - QBBC - fixed cross sections for hadron elastic 27-11-2009, G.Folger (phys-lists-V09-02-42) -- QGSP_BERT_TRV, change transition energies in HadronPhysicsQGSP_BERT_TRV to +- QGSP_BERT_TRV, change transition energies in HadronPhysicsQGSP_BERT_TRV to use BERT ]0,9.9], LEP [9.5, 15], QGSP [10, inf[ -- QGSP_BERT_NOLEP, use G4HadronQElasticPhysics -- explicitely mark experimental: QGSP_BERT_EMX, QGSP_BERT_TRV, QGSP_FTFP_BERT, +- QGSP_BERT_NOLEP, use G4HadronQElasticPhysics +- explicitely mark experimental: QGSP_BERT_EMX, QGSP_BERT_TRV, QGSP_FTFP_BERT, QGSP_INCL_ABLA -- mark as obsolete: FTFP, QGSP, QGSC, QGSC_CHIPS, QGSC_EMV, QGSC_QGSC +- mark as obsolete: FTFP, QGSP, QGSC, QGSC_CHIPS, QGSC_EMV, QGSC_QGSC - mark supported ( remove experimental) :FTFP_BERT, FTFP_BERT_EMV -- Add initial version of G4IonQMDPhysics - +- Add initial version of G4IonQMDPhysics + 25-11-2009, V.Ivanchenko (phys-lists-V09-02-41) - G4PhysListFactory - update list of supported referenced PhysicsLists - QBBC - updated for the release @@ -1056,7 +1059,7 @@ bug fix for the virtual distructor in G4QElasticPhysics & G4QIonPhysics 10-11-2009, V.Ivanchenko (phys-lists-V09-02-33) - G4EmStandardPhysics_option3, G4EmLivermorePhysics, G4EmPenelopePhysics, - G4EmLivermorePolarizedPhysics - added G4NuclearStopping process for + G4EmLivermorePolarizedPhysics - added G4NuclearStopping process for GenericIon, He3, alpha particles 4-11-2009, P.Gumplinger (phys-lists-V09-02-32) @@ -1069,14 +1072,14 @@ bug fix for the virtual distructor in G4QElasticPhysics & G4QIonPhysics - G4EmDNAPhysics (S.Inserti) updated combined Physics List standard/DNA 30-10-2009, V.Ivanchenko (phys-lists-V09-02-29) -- Review of all EM builders: - - in all builders separate definition of processes for He3 and +- Review of all EM builders: + - in all builders separate definition of processes for He3 and He4 ions; G4eMultipleScattering for e+, e-, - G4MuMultipleScattering for muons; + G4MuMultipleScattering for muons; - G4UrbanMscModel93 for e+- for all builders except Opt0 and Opt1 - G4WentzelVIModel for muons for all builders except Opt0 and Opt1 - G4ParameterizedIonModel for Opt3 and all combined builders - - StepFunction (0.1, 0.02*mm) for ions inside Opt2 + - StepFunction (0.1, 0.02*mm) for ions inside Opt2 30-10-2009, M.Kosov (phys-lists-V09-02-28) - first implementation of the one model CHIPS physics list @@ -1087,9 +1090,9 @@ bug fix for the virtual distructor in G4QElasticPhysics & G4QIonPhysics 04-10-2009, V.Ivanchenko (phys-lists-V09-02-26) - modified QBBC - remove template and move QBBC.icc to QBBC.cc; use a new G4VHadronPhysics interface -- G4HadroHElasticPhysics uses G4WHadronElasticProcess (the result of - redesign of elastic) instead of G4UHadronElasticProcess -- QGSP_BERT_EMV uses G4HadroHElasticPhysics instead of G4HadroElasticPhysics +- G4HadroHElasticPhysics uses G4WHadronElasticProcess (the result of + redesign of elastic) instead of G4UHadronElasticProcess +- QGSP_BERT_EMV uses G4HadroHElasticPhysics instead of G4HadroElasticPhysics 02-10-2009, V.Ivanchenko (phys-lists-V09-02-25) - modified EM standard Physics Lists @@ -1113,16 +1116,16 @@ the non polarized case 03-06-2009, G.Folger (phys-lists-V09-02-21) - no code change -- use versions of phys-lists-V09-02-18 for +- use versions of phys-lists-V09-02-18 for builders/include/G4QGSC_CHIPSNeutronBuilder.hh builders/*/G4QNeutronBuilder.{hh,cc} - + 02-06-2009, G.Folger (phys-lists-V09-02-20) - Rename HadronPhysicsFB68.{hh,cc} to HadronPhysicsFTFP_BERT_TRV.{hh,cc}; required changes in FTFP_BERT_TRV.icc as well. - correct typo in experimental/Unsupported names in FTF_BIC.icc and QGSP_EMX.icc - + 25-05-2009, M.Kosov (phys-lists-V09-02-19) - Two new low energy (<290 MeV) nA CHIPS reactions are implemented in the QGSC_CHIPS physics list (works together with the hadr-chips-inter-V09-02-07 CHIPS tag @@ -1137,7 +1140,7 @@ the non polarized case FTFC LHEP_BERT, LHEP_BERT_HP, LHEP_PRECO_HP QGSP_BERT_DIF, QGSP_BERT_NQE, QGSP_DIF, QGSP_EMV, QGSP_EMV_NQE, - QGSP_NQE, QGSP_QEL + QGSP_NQE, QGSP_QEL 11-05-2009, V.Ivanchenko phys-lists-V09-02-17 - Added new PhysLists with special EM options: FTFP_BERT_EMV, @@ -1149,15 +1152,15 @@ the non polarized case G4EmStandardPhysics, G4EmStandardPhysics_option1 - use 9.2 msc model for e+- G4EmStandardPhysics_option2 - use G4WentzelVIModel for e+- -G4EmStandardPhysics_option3 - use updated G4UrbanMscModel2 and +G4EmStandardPhysics_option3 - use updated G4UrbanMscModel2 and use G4RayleighScattering G4EmLivermorePhysics - upper limit of Livermore models 1 GeV 23-04-2009, J.Apostolakis phys-lists-V09-02-15 - Added MaxEnergy method in FTF builders. -- Added QGSP_FTFP_BERT based on QGSP_BERT replacing the bridging LEP with FTFP, +- Added QGSP_FTFP_BERT based on QGSP_BERT replacing the bridging LEP with FTFP, and transitioning from BERT to FTFP between 7 and 9 GeV; -- Added FB68 as variant of FTFP_BERT with transition between 6 and 8 GeV. +- Added FB68 as variant of FTFP_BERT with transition between 6 and 8 GeV. 20-04-2009, M.Kosov phys-lists-V09-02-14 - Two new physics lists QGSC_QGSC and QGSC_CHIPS are added. @@ -1175,7 +1178,7 @@ G4EmLivermorePhysics - upper limit of Livermore models 1 GeV - Restore History after modification of CHIPS builders - Fixed G4EmLivermorePhysics, G4EmPenelopePhysics - Added new CHIPS PhysLists to the G4PhysListFactory -- Fixed G4HadronInelasticQBBC - cross sections are created by new, +- Fixed G4HadronInelasticQBBC - cross sections are created by new, not by value, fission only instantiated for HP 31-03-2009, V.Ivanchenko phys-lists-V09-02-05 @@ -1234,38 +1237,38 @@ In all EM builders - set inactive for AlongStep for bremsstrahlung and pair 15-10-2008, V.Ivanchenko phys-lists-V09-01-13 In all EM builders: added hadron bemsstrahlung and e+e- pair production - and e-msc for e+-; -G4EmStandardPhysics_option2 - enable "ApplyCuts", disable "SubCutoff" + and e-msc for e+-; +G4EmStandardPhysics_option2 - enable "ApplyCuts", disable "SubCutoff" G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins for tables (60 is the default), StepFunction per particle type 24-09-2008, V.Ivanchenko phys-lists-V09-01-12 - QBBC temporary variant which is equivalent QGSP_BERT without LHEP - for protons, neutrons and pions + for protons, neutrons and pions 17-09-2008, V.Ivanchenko phys-lists-V09-01-11 - G4NeutronTrackingCut - added Set methods to define time and energy limits directly - G4HadronInelasticQBBC, QBBC - use FTF with Binary Casacde, improved cout -04-08-2008, V.Ivanchenko phys-lists-V09-01-10 -- G4EmStandardPhysics_option2 : use mu-msc for all particles, +04-08-2008, V.Ivanchenko phys-lists-V09-01-10 +- G4EmStandardPhysics_option2 : use mu-msc for all particles, switch off "subcut" option, switch on "ApplyCuts" option -- G4EmStandardPhysics_option3 : use e-msc for all particles, - switch off subcutoff +- G4EmStandardPhysics_option3 : use e-msc for all particles, + switch off subcutoff - QBBC - use FTF as a default, remove obsolete methods 30-4-2008, G.Folger phys-lists-V09-01-09 -- Update lists/include/FTF*.icc and lists/include/HadronPhysicsFTF*.icc +- Update lists/include/FTF*.icc and lists/include/HadronPhysicsFTF*.icc to NOT use Quasielastic from Chips, as FTF now has quasi-elastic included - in the FTF model itsself. + in the FTF model itsself. 30-05-2008, V.Ivanchenko phys-lists-V09-01-08 -- GNUmakefile - added electromagnetic/highenergy +- GNUmakefile - added electromagnetic/highenergy - G4EmStandardPhysics_option3 : define linLossLimit per particle type - G4EmStandardPhysics_option2 : define linLossLimit 0.01, - added hadron induced bremsstrahlung and pair production + added hadron induced bremsstrahlung and pair production 19-05-2008, V.Ivanchenko phys-lists-V09-01-07 - removed obsolete class G4HadronProcessStore (similar is available @@ -1279,7 +1282,7 @@ G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins 29-04-2008, V.Ivanchenko phys-lists-V09-01-05 -- fixed link problem +- fixed link problem 25-04-2008, V.Ivanchenko phys-lists-V09-01-04 - Added D and B mesons to all EM bulders G4EmStandardPhysics* @@ -1289,8 +1292,8 @@ G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins 26-03-2008, V.Ivanchenko phys-lists-V09-01-03 26-03-2008, mma -- G4EmStandardPhysics_option3 : SetStepFunction() per particle type - +- G4EmStandardPhysics_option3 : SetStepFunction() per particle type + 18-03-2008, V.Ivanchenko phys-lists-V09-01-02 17-03-2008, mma - cosmetic in G4EmStandardPhysics_ to handle G4EmProcessOptions @@ -1305,7 +1308,7 @@ G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins 16-11-2007, G.Folger phys-list-V09-00-12 - New PL QGSP_BERT_DIF; as QGSP_BERT with projectile diffraction for proton and neutron enabled. - + 26-11-2007, V.Ivanchenko phys-lists-V09-00-11 - QBBC - fixed bug in adding of cross section for pions @@ -1320,7 +1323,7 @@ G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins - QBBC - tuned energy thresholds between string and cascade models 15-11-2007, G.Folger phys-list-V09-00-08 -- New PL QGSC_BERT; use QGSC down to overlap with BERT. LEP not used +- New PL QGSC_BERT; use QGSC down to overlap with BERT. LEP not used for proton,neutron,pions,Kaons, except neutron capture and neutron induced fission @@ -1340,19 +1343,19 @@ G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins - QBBC Physics List upgraded for 9.1 13-11-2007, G.Folger phys-list-V09-00-03 -- Enable use of projectile diffraction in QGSP-like lists, and create +- Enable use of projectile diffraction in QGSP-like lists, and create new list using projectile diffraction QGSP_DIF -- New PL QGS_BIC; like QGSP_BIC, but use binary also for pion and for +- New PL QGS_BIC; like QGSP_BIC, but use binary also for pion and for rescattering via the propagate interface; the deexcitation implicitely uses precompound. - + 31-10-2007, G.Folger phys-list-V09-00-02 - New PL QGSP_BIC2: like QGSP_BIC, but use BIC for low energy pions 19-10-2007, G.Folger phys-list-V09-00-01 - New PL FTFP_BERT: FTFP with Bertini cascade. Crossover from Bertini to FTFP at 4-5 GeV. No LEP for inelastic for p,n,pi,K. -- G4LEPNeutronBuilder.cc: when limit for MaxInelastic is 0, do NOT add +- G4LEPNeutronBuilder.cc: when limit for MaxInelastic is 0, do NOT add LEP for inelastic; needed by above FTFP_BERT. 02-10-2007, V.Ivanchenko phys-lists-V09-00-00 @@ -1370,9 +1373,9 @@ G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins - in QBBC.icc use consistent cross sections for elastic and inelastic 01-06-2007, G.Folger phys-lists-V08-03-04 -- active Quasielastic for FTF lists. Required changes to lists/*/HadronPhysicsFTF*, - and builders/*/G4FTF*Builder.* -- lower threshold for FTF: FTF starts at 4.0 GeV, overlaps with LEP up to 5.0 GeV +- active Quasielastic for FTF lists. Required changes to lists/*/HadronPhysicsFTF*, + and builders/*/G4FTF*Builder.* +- lower threshold for FTF: FTF starts at 4.0 GeV, overlaps with LEP up to 5.0 GeV 24-05-2007, G.Folger phys-lists-V08-03-03 - remove obsolete physics lists LHEP_HP, QGSP_HP, LHEP_BIC, @@ -1392,27 +1395,27 @@ G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins - Create new builders G4EmStandardPhysics_option1 from G4EmStandardPhysics71 G4EmStandardPhysics_option2 from G4EmStandardPhysics72 - Remove definition of name of EM constructor from all PL.icc files, now - name of EM constructor defined inside the constructor itself. + name of EM constructor defined inside the constructor itself. 07-05-2007, G.Folger phys-lists-V08-02-12 - Add QGSP_BERT_TRV; copy of QGSP_BERT, but change to BERT occurs at (5.0 - 5.4) GeV for proton/neutron/pion/Kaon -- Increase Pack version number to 5.2 +- Increase Pack version number to 5.2 02-05-2007, V.Ivanchenko phys-lists-V08-02-11 - Fix bug in EMV seria of Physics Lists - restore high performance 26-04-2007, G.Folger phys-lists-V08-02-10 - - For QGSC, QGSC_EMV, and QGSC_EFLOW enable use of G4QCaptureAtRest() + - For QGSC, QGSC_EMV, and QGSC_EFLOW enable use of G4QCaptureAtRest() also for muons. Mods needed in G4QStoppingPhysics as well. 26-04-2007, G.Folger phys-lists-V08-02-09 - - Modifications for Quasielastic. Added to all QGS physics lists execpt + - Modifications for Quasielastic. Added to all QGS physics lists execpt the two obsolete QGSC_LEAD/QGSC_LEAD_HP. This also required adapting of - HadronsPhysicsXYZ - {QGSP;QGSC;QGSC_EFLOW}{Neutron,Proton,PiK}Builder - - removed unneeded HadronPhysics...{EMV,EMX}; HadronPhysicsLHEP_EMV stays, - as this differs in stopping + - removed unneeded HadronPhysics...{EMV,EMX}; HadronPhysicsLHEP_EMV stays, + as this differs in stopping 16-04-2007, V.Ivanchenko phys-lists-V08-02-08 - QBBC Physics Lists adopt recent upgrades in QGS and FTF @@ -1421,7 +1424,7 @@ G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins - Correct compilation problem with QGSP.icc 30-03-2007, G. Folger phys-lists-V08-02-06 -- Add quasielastic in QGSP; this requiredchanges to +- Add quasielastic in QGSP; this requiredchanges to - QGSP{proton,Neutron,PiK}Builder adds QuasiElasticChannel on conditional flag - HadronPhysicsQGSP passes flag (default=false) to Builders @@ -1446,20 +1449,20 @@ G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins - G4EmStandardPhysics - use G4hMultipleScattering for muons - G4EmStandardPhysics72 use default msc -13-02-2007, A.Howard +13-02-2007, A.Howard - Added set min/max Energy and Inelastic Energy to NeutronHP builder - Fixed special cuts for LBE physics list 15-12-2006, G.Folger - phys-lists-V08-02-00 -- Fix in QGSP_BIC_HP: use HP elastic in this list ( thanks to Alex) +- Fix in QGSP_BIC_HP: use HP elastic in this list ( thanks to Alex) 05.12.2006, G.Folger - phys-lists-V08-01-13 - - add QGSC_EFLOW, using new energy flow method for CHIPS; consequently, - HadronPhysicsQGSC_EFLOW and builders G4QGSCEflow{Proton,Neutron,PiK}Builder + - add QGSC_EFLOW, using new energy flow method for CHIPS; consequently, + HadronPhysicsQGSC_EFLOW and builders G4QGSCEflow{Proton,Neutron,PiK}Builder added as well. QGSC changed to use G4QStringChipsParticleLevelInterface via the builders G4QGS{Proton,Neutron,PiK}Builder; this emulates 8.1 modeling. - + 05.12.2006, G.Cosmo - GNUmakefile: added definition of GLOBLIBS with correct library dependencies to allow for generation of DLLs on Windows. @@ -1474,16 +1477,16 @@ G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins - add QGSC_EMV and QGSP_BIC_HP - correct neutron tracking cut - various small fixes - - update versions numbers + - update versions numbers 21.11.2006, G.Folger - phys-lists-V08-01-09 - - add warning to obsolete physics lists + - add warning to obsolete physics lists (LHEP: _HP, _BIC, BIC_HP, _PRECO, QGSP_HP) - add neutron tracking cut to QGSP and FTF lists without _HP extension 03.11.2006, G.Folger - phys-lists-V08-01-08 - Move physics lists into source tree - Simplify directory/library structure -- delete 2 _GN lists - added for G4 8.1 by mistake, +- delete 2 _GN lists - added for G4 8.1 by mistake, 05.10.2006, V.Ivanchenko - phys-lists-V08-01-07 - QBBC - use LHEP cross section if LHEP option is configured @@ -1522,26 +1525,26 @@ G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins - Fixed activation of LHEp for ions 23.06.2006, V.Ivanchenko - phys-lists-V08-00-13 -- Set dRoverRange=0.8 for EM physics v71 +- Set dRoverRange=0.8 for EM physics v71 - Set emaxLHEP=1 TeV for light ions 21.06.2006, V.Ivanchenko - phys-lists-V08-00-12 -- In QGSP_EMV use EM physics v71 +- In QGSP_EMV use EM physics v71 - Create new QGSP_EMX and use EM physics v72 -21.06.2006, G.Folger +21.06.2006, G.Folger - Update physics list version nyumbers, add 0.1 to all modified lists 20.06.2006, G.Folger - phys-lists-V08-00-11 - Use Bertini cascade for Kaons (K+,K-, K0L, k0S) - Add Binary Cascade for Ions to BIC PhysicsLists (VI) - + 20.06.2006, V.Ivanchenko - phys-lists-V08-00-10 - Add mu-nuclear option to G4EmExtraBuilder - Add commands to G4EmMessenger 17.06.2006, G.Folger - phys-lists-V08-00-09 -- Remove remaining elastic pointers from LHEP builders to +- Remove remaining elastic pointers from LHEP builders to avoid crash at destruction 16.06.2006, V.Ivanchenko - phys-lists-V08-00-08 @@ -1560,7 +1563,7 @@ G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins 14.06.2006, V.Ivanchenko - phys-lists-V08-00-04 - Fix bug in G4QStoppingPhysics -- Use G4QStoppingPhysics in QBBC +- Use G4QStoppingPhysics in QBBC 08.06.2006, V.Ivanchenko - phys-lists-V08-00-03 - Migrade stopping physics to CHIPS for all except LBE and LHEP @@ -1568,7 +1571,7 @@ G4EmStandardPhysics_option3 - added G4LowEnergyRayleigh, set 120 bins 06.06.2006, V.Ivanchenko - phys-lists-V08-00-02 - Fix compilation error at SUN -- Use Bertini for kaons in QBBC +- Use Bertini for kaons in QBBC 03.06.2006, V.Ivanchenko - phys-lists-V08-00-01 - Fix number of destructors diff --git a/source/physics_lists/builders/History b/source/physics_lists/builders/History index 5319ceb0d8..ffb0576c26 100644 --- a/source/physics_lists/builders/History +++ b/source/physics_lists/builders/History @@ -12,6 +12,35 @@ introduced in the code and keeptrack of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- + +19-October-2020 Vladimir Ivanchenko (phys-builders-V10-06-13) +- G4HadronicBuilder - added methods for FTFQGSP_BERT physics + +17-September-2020 Alberto Ribon (phys-builders-V10-06-12) +- G4HadronicBuilder : disabled QGSP for light anti-ions. + +21-August-2020 Vladimir Ivanchenko (phys-builders-V10-06-11) +- G4HadronicBuilder - added methods to configure anti light ions + +01-August-2020 Vladimir Ivanchenko (phys-builders-V10-06-10) +- G4HadronicBuilder - make added optional cross section factor + for systematics studies + +24-Jul-2020 Alberto Ribon (phys-builders-V10-06-09) +- G4HadronicBuilder : added a new method, BuildDecayTableForBCHadrons, + to create some decays for heavy (charmed and bottom) hadrons. + This method is called by the methods BuildBCHadronsFTFP_BERT + and BuildBCHadronsQGSP_FTFP_BERT only if the flag for heavy hadrons + is enabled. + +19-July-2020 Vladimir Ivanchenko (phys-builders-V10-06-08) +- G4HadronicBuilder - make two method private to avoid incorrect + use, do not use Bertini cascade for b-, c - particles and + anti-hyperons (only FTFP model) + +30-June-2020 Vladimir Ivanchenko (phys-builders-V10-06-07) +- G4HadronicBuilder - added BuildElastic(..) method + 26-May-2020 Ben Morgan (phys-builders-V10-06-06) - Remove obsolete GRANULAR_DEPENDENCIES entries diff --git a/source/physics_lists/builders/include/G4HadronicBuilder.hh b/source/physics_lists/builders/include/G4HadronicBuilder.hh index cc0d663029..e6073da806 100644 --- a/source/physics_lists/builders/include/G4HadronicBuilder.hh +++ b/source/physics_lists/builders/include/G4HadronicBuilder.hh @@ -39,25 +39,51 @@ class G4HadronicBuilder { +private: + + // generic methods, Glauber-Gribov cross sections are used. + // if the boolean "bert" is true (false) then Bertini cascade is (not) built; + // when "bert" is false, then FTFP is used down to zero kinetic energy. + + static void BuildFTFP_BERT(const std::vector& particleList, + G4bool bert, const G4String& xsName); + + static void BuildFTFQGSP_BERT(const std::vector& particleList, + G4bool bert, const G4String& xsName); + + static void BuildQGSP_FTFP_BERT(const std::vector& particleList, + G4bool bert, G4bool quasiElastic, + const G4String& xsName); + public: - static void BuildFTFP_BERT(const std::vector& particleList); - - static void BuildQGSP_FTFP_BERT(const std::vector& particleList, G4bool quasiElastic); + // methods to build elastic and inelastic physics per particle category + static void BuildElastic(const std::vector& particleList); static void BuildHyperonsFTFP_BERT(); + static void BuildHyperonsFTFQGSP_BERT(); + static void BuildHyperonsQGSP_FTFP_BERT(G4bool quasiElastic); static void BuildKaonsFTFP_BERT(); + static void BuildKaonsFTFQGSP_BERT(); + static void BuildKaonsQGSP_FTFP_BERT(G4bool quasiElastic); + static void BuildAntiLightIonsFTFP(); + + //static void BuildAntiLightIonsQGSP_FTFP(G4bool quasiElastic); + static void BuildBCHadronsFTFP_BERT(); + static void BuildBCHadronsFTFQGSP_BERT(); + static void BuildBCHadronsQGSP_FTFP_BERT(G4bool quasiElastic); + + // method to create some decays for heavy hadrons + static void BuildDecayTableForBCHadrons(); }; #endif - - diff --git a/source/physics_lists/builders/sources.cmake b/source/physics_lists/builders/sources.cmake index b95bced2a2..cc4fa79f81 100644 --- a/source/physics_lists/builders/sources.cmake +++ b/source/physics_lists/builders/sources.cmake @@ -14,87 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) -include_directories(${EXPAT_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/factory/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/molecules/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/molecules/types/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/models/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/highenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/muons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/xrays/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/coherent_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/incl_physics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/interface/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lend/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lepto_nuclear/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/particle_hp/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/qgsm/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/qmd/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/radioactive_decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/stopping/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/optical/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/run/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4phys_builders HEADERS G4AntiBarionBuilder.hh diff --git a/source/physics_lists/builders/src/G4HadronicBuilder.cc b/source/physics_lists/builders/src/G4HadronicBuilder.cc index 845b61c761..16f88e1a7a 100644 --- a/source/physics_lists/builders/src/G4HadronicBuilder.cc +++ b/source/physics_lists/builders/src/G4HadronicBuilder.cc @@ -31,6 +31,7 @@ #include "G4HadronicBuilder.hh" #include "G4HadParticles.hh" +#include "G4HadProcesses.hh" #include "G4ParticleDefinition.hh" #include "G4ParticleTable.hh" @@ -54,11 +55,16 @@ #include "G4CrossSectionElastic.hh" #include "G4HadronElastic.hh" #include "G4CrossSectionDataSetRegistry.hh" -#include "G4ComponentGGHadronNucleusXsc.hh" + #include "G4HadronElasticProcess.hh" #include "G4HadronInelasticProcess.hh" -void G4HadronicBuilder::BuildFTFP_BERT(const std::vector& partList) { +#include "G4DecayTable.hh" +#include "G4VDecayChannel.hh" +#include "G4PhaseSpaceDecayChannel.hh" + +void G4HadronicBuilder::BuildFTFP_BERT(const std::vector& partList, + G4bool bert, const G4String& xsName) { G4HadronicParameters* param = G4HadronicParameters::Instance(); G4PhysicsListHelper* ph = G4PhysicsListHelper::GetPhysicsListHelper(); @@ -68,40 +74,72 @@ void G4HadronicBuilder::BuildFTFP_BERT(const std::vector& partList) { theStringModel->SetFragmentationModel(new G4ExcitedStringDecay()); theModel->SetHighEnergyGenerator( theStringModel ); theModel->SetTransport( new G4GeneratorPrecompoundInterface() ); - theModel->SetMinEnergy( param->GetMinEnergyTransitionFTF_Cascade() ); theModel->SetMaxEnergy( param->GetMaxEnergy() ); - auto theCascade = new G4CascadeInterface(); - theCascade->SetMaxEnergy( param->GetMaxEnergyTransitionFTF_Cascade() ); + G4CascadeInterface* theCascade = nullptr; + if(bert) { + theCascade = new G4CascadeInterface(); + theCascade->SetMaxEnergy( param->GetMaxEnergyTransitionFTF_Cascade() ); + theModel->SetMinEnergy( param->GetMinEnergyTransitionFTF_Cascade() ); + } - auto xsStore = G4CrossSectionDataSetRegistry::Instance(); - auto xsComponent = xsStore->GetComponentCrossSection("Glauber-Gribov"); - if(xsComponent == nullptr) xsComponent = new G4ComponentGGHadronNucleusXsc(); - auto xsinel = new G4CrossSectionInelastic(xsComponent); - auto xsel = new G4CrossSectionElastic(xsComponent); - - auto elModel = new G4HadronElastic(); + auto xsinel = G4HadProcesses::InelasticXS( xsName ); G4ParticleTable* table = G4ParticleTable::GetParticleTable(); - for( auto & pdg : partList ) { + for( auto & pdg : partList ) { auto part = table->FindParticle( pdg ); if ( part == nullptr ) { continue; } - auto hade = new G4HadronElasticProcess(); - hade->AddDataSet( xsel ); - hade->RegisterMe( elModel ); - ph->RegisterProcess(hade, part); - auto hadi = new G4HadronInelasticProcess( part->GetParticleName()+"Inelastic", part ); hadi->AddDataSet( xsinel ); hadi->RegisterMe( theModel ); - hadi->RegisterMe( theCascade ); + if( theCascade != nullptr ) hadi->RegisterMe( theCascade ); + if( param->ApplyFactorXS() ) hadi->MultiplyCrossSectionBy( param->XSFactorHadronInelastic() ); ph->RegisterProcess(hadi, part); } } -void G4HadronicBuilder::BuildQGSP_FTFP_BERT(const std::vector& partList, G4bool quasiElastic) { +void G4HadronicBuilder::BuildFTFQGSP_BERT(const std::vector& partList, + G4bool bert, const G4String& xsName) { + + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4PhysicsListHelper* ph = G4PhysicsListHelper::GetPhysicsListHelper(); + + auto theModel = new G4TheoFSGenerator("FTFQGSP"); + auto theStringModel = new G4FTFModel(); + theStringModel->SetFragmentationModel(new G4ExcitedStringDecay( new G4QGSMFragmentation() ) ); + theModel->SetHighEnergyGenerator( theStringModel ); + theModel->SetTransport( new G4GeneratorPrecompoundInterface() ); + theModel->SetMaxEnergy( param->GetMaxEnergy() ); + + G4CascadeInterface* theCascade = nullptr; + if(bert) { + theCascade = new G4CascadeInterface(); + theCascade->SetMaxEnergy( param->GetMaxEnergyTransitionFTF_Cascade() ); + theModel->SetMinEnergy( param->GetMinEnergyTransitionFTF_Cascade() ); + } + + auto xsinel = G4HadProcesses::InelasticXS( xsName ); + + G4ParticleTable* table = G4ParticleTable::GetParticleTable(); + for( auto & pdg : partList ) { + + auto part = table->FindParticle( pdg ); + if ( part == nullptr ) { continue; } + + auto hadi = new G4HadronInelasticProcess( part->GetParticleName()+"Inelastic", part ); + hadi->AddDataSet( xsinel ); + hadi->RegisterMe( theModel ); + if( theCascade != nullptr ) hadi->RegisterMe( theCascade ); + if( param->ApplyFactorXS() ) hadi->MultiplyCrossSectionBy( param->XSFactorHadronInelastic() ); + ph->RegisterProcess(hadi, part); + } +} + +void G4HadronicBuilder::BuildQGSP_FTFP_BERT(const std::vector& partList, + G4bool bert, G4bool quasiElastic, + const G4String& xsName) { G4HadronicParameters* param = G4HadronicParameters::Instance(); G4PhysicsListHelper* ph = G4PhysicsListHelper::GetPhysicsListHelper(); @@ -124,19 +162,42 @@ void G4HadronicBuilder::BuildQGSP_FTFP_BERT(const std::vector& partList, theFTFModel->SetFragmentationModel(new G4ExcitedStringDecay()); theLEModel->SetHighEnergyGenerator( theFTFModel ); theLEModel->SetTransport( theTransport ); - theLEModel->SetMinEnergy( param->GetMinEnergyTransitionFTF_Cascade() ); theLEModel->SetMaxEnergy( param->GetMaxEnergyTransitionQGS_FTF() ); - auto theCascade = new G4CascadeInterface(); - theCascade->SetMaxEnergy( param->GetMaxEnergyTransitionFTF_Cascade() ); + G4CascadeInterface* theCascade = nullptr; + if(bert) { + theCascade = new G4CascadeInterface(); + theCascade->SetMaxEnergy( param->GetMaxEnergyTransitionFTF_Cascade() ); + theLEModel->SetMinEnergy( param->GetMinEnergyTransitionFTF_Cascade() ); + } - auto xsStore = G4CrossSectionDataSetRegistry::Instance(); - auto xsComponent = xsStore->GetComponentCrossSection("Glauber-Gribov"); - if(xsComponent == nullptr) xsComponent = new G4ComponentGGHadronNucleusXsc(); - auto xsinel = new G4CrossSectionInelastic(xsComponent); - auto xsel = new G4CrossSectionElastic(xsComponent); + auto xsinel = G4HadProcesses::InelasticXS( xsName ); + + G4ParticleTable* table = G4ParticleTable::GetParticleTable(); + for( auto & pdg : partList ) { + + auto part = table->FindParticle( pdg ); + if ( part == nullptr ) { continue; } + + auto hadi = new G4HadronInelasticProcess( part->GetParticleName()+"Inelastic", part ); + hadi->AddDataSet( xsinel ); + hadi->RegisterMe( theHEModel ); + hadi->RegisterMe( theLEModel ); + if(theCascade != nullptr) hadi->RegisterMe( theCascade ); + if( param->ApplyFactorXS() ) hadi->MultiplyCrossSectionBy( param->XSFactorHadronInelastic() ); + ph->RegisterProcess(hadi, part); + } +} + +void G4HadronicBuilder::BuildElastic(const std::vector& partList) { + + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4PhysicsListHelper* ph = G4PhysicsListHelper::GetPhysicsListHelper(); + + auto xsel = G4HadProcesses::ElasticXS("Glauber-Gribov"); auto elModel = new G4HadronElastic(); + elModel->SetMaxEnergy( param->GetMaxEnergy() ); G4ParticleTable* table = G4ParticleTable::GetParticleTable(); for( auto & pdg : partList ) { @@ -147,41 +208,281 @@ void G4HadronicBuilder::BuildQGSP_FTFP_BERT(const std::vector& partList, auto hade = new G4HadronElasticProcess(); hade->AddDataSet( xsel ); hade->RegisterMe( elModel ); + if( param->ApplyFactorXS() ) hade->MultiplyCrossSectionBy( param->XSFactorHadronElastic() ); ph->RegisterProcess(hade, part); - - auto hadi = new G4HadronInelasticProcess( part->GetParticleName()+"Inelastic", part ); - hadi->AddDataSet( xsinel ); - hadi->RegisterMe( theHEModel ); - hadi->RegisterMe( theLEModel ); - hadi->RegisterMe( theCascade ); - ph->RegisterProcess(hadi, part); } } void G4HadronicBuilder::BuildHyperonsFTFP_BERT() { - BuildFTFP_BERT(G4HadParticles::GetHyperons()); + // For hyperons, Bertini is used at low energies; + // for anti-hyperons, FTFP can be used down to zero kinetic energy. + BuildFTFP_BERT(G4HadParticles::GetHyperons(), true, "Glauber-Gribov"); + BuildFTFP_BERT(G4HadParticles::GetAntiHyperons(), false, "Glauber-Gribov"); } -void G4HadronicBuilder::BuildHyperonsQGSP_FTFP_BERT(G4bool quasiElastic) { - BuildQGSP_FTFP_BERT(G4HadParticles::GetHyperons(), quasiElastic); +void G4HadronicBuilder::BuildHyperonsFTFQGSP_BERT() { + // For hyperons, Bertini is used at low energies; + // for anti-hyperons, FTFP can be used down to zero kinetic energy. + BuildFTFQGSP_BERT(G4HadParticles::GetHyperons(), true, "Glauber-Gribov"); + BuildFTFQGSP_BERT(G4HadParticles::GetAntiHyperons(), false, "Glauber-Gribov"); +} + +void G4HadronicBuilder::BuildHyperonsQGSP_FTFP_BERT(G4bool qElastic) { + // For hyperons, Bertini is used at low energies; + // for anti-hyperons, FTFP can be used down to zero kinetic energy. + // QGSP is used at high energies in all cases. + BuildQGSP_FTFP_BERT(G4HadParticles::GetHyperons(), true, qElastic, "Glauber-Gribov"); + BuildQGSP_FTFP_BERT(G4HadParticles::GetAntiHyperons(), false, qElastic, "Glauber-Gribov"); } void G4HadronicBuilder::BuildKaonsFTFP_BERT() { - BuildFTFP_BERT(G4HadParticles::GetKaons()); + BuildFTFP_BERT(G4HadParticles::GetKaons(), true, "Glauber-Gribov"); } -void G4HadronicBuilder::BuildKaonsQGSP_FTFP_BERT(G4bool quasiElastic) { - BuildQGSP_FTFP_BERT(G4HadParticles::GetKaons(), quasiElastic); +void G4HadronicBuilder::BuildKaonsFTFQGSP_BERT() { + BuildFTFP_BERT(G4HadParticles::GetKaons(), true, "Glauber-Gribov"); } +void G4HadronicBuilder::BuildKaonsQGSP_FTFP_BERT(G4bool qElastic) { + BuildQGSP_FTFP_BERT(G4HadParticles::GetKaons(), true, qElastic, "Glauber-Gribov"); +} + +void G4HadronicBuilder::BuildAntiLightIonsFTFP() { + BuildFTFP_BERT(G4HadParticles::GetLightAntiIons(), false, "AntiAGlauber"); +} + +//void G4HadronicBuilder::BuildAntiLightIonsQGSP_FTFP(G4bool qElastic) { +// Note: currently QGSP cannot be applied for any ion or anti-ion! +// BuildQGSP_FTFP_BERT(G4HadParticles::GetLightAntiIons(), false, qElastic, "AntiAGlauber"); +//} + void G4HadronicBuilder::BuildBCHadronsFTFP_BERT() { if( G4HadronicParameters::Instance()->EnableBCParticles() ) { - BuildFTFP_BERT(G4HadParticles::GetBCHadrons()); + // Bertini is not applicable for charm and bottom hadrons, therefore FTFP is used + // down to zero kinetic energy (but at very low energies, a dummy model is used + // that returns the projectile heavy hadron in the final state). + BuildFTFP_BERT(G4HadParticles::GetBCHadrons(), false, "Glauber-Gribov"); + BuildDecayTableForBCHadrons(); } } -void G4HadronicBuilder::BuildBCHadronsQGSP_FTFP_BERT(G4bool quasiElastic) { +void G4HadronicBuilder::BuildBCHadronsFTFQGSP_BERT() { if( G4HadronicParameters::Instance()->EnableBCParticles() ) { - BuildQGSP_FTFP_BERT(G4HadParticles::GetBCHadrons(), quasiElastic); + // Bertini is not applicable for charm and bottom hadrons, therefore FTFP is used + // down to zero kinetic energy (but at very low energies, a dummy model is used + // that returns the projectile heavy hadron in the final state). + BuildFTFQGSP_BERT(G4HadParticles::GetBCHadrons(), false, "Glauber-Gribov"); + BuildDecayTableForBCHadrons(); } } + +void G4HadronicBuilder::BuildBCHadronsQGSP_FTFP_BERT(G4bool qElastic) { + if( G4HadronicParameters::Instance()->EnableBCParticles() ) { + // Bertini is not applicable for charm and bottom hadrons, therefore FTFP is used + // down to zero kinetic energy (but at very low energies, a dummy model is used + // that returns the projectile heavy hadron in the final state). + // QGSP is used at high energies in all cases. + BuildQGSP_FTFP_BERT(G4HadParticles::GetBCHadrons(), false, qElastic, "Glauber-Gribov"); + BuildDecayTableForBCHadrons(); + } +} + +void G4HadronicBuilder::BuildDecayTableForBCHadrons() { + // Geant4 does not define the decay of most of charmed and bottom hadrons. + // The reason is that most of these heavy hadrons have many different + // decay channels, with a complex dynamics, quite different from the flat + // phase space kinematical treatment used in Geant4 for most of hadronic decays. + // High-energy experiments usually use dedicated Monte Carlo Event Generators + // for the decays of charmed and bottom hadrons; therefore, these heavy + // hadrons, which are passed to Geant4 as primary tracks, have pre-assigned + // decays. Moreover, no charmed or bottom secondary hadrons were created + // in Geant4 hadronic interactions before Geant4 10.7. + // With the extension of Geant4 hadronic interactions to charmed and bottom + // hadrons, in version Geant4 10.7, we do need to define decays in Geant4 + // for these heavy hadrons, for two reasons: + // 1. For testing purposes, unless we pre-assign decays of heavy hadrons + // (as the HEP experiments normally do by using MC Event Generators); + // 2. To avoid crashes (due to missing decay channels) whenever charmed or + // bottom secondary hadrons are produced by Geant4 hadronic interactions, + // even with ordinary (i.e. not heavy) hadron projectiles, because in + // this case we cannot (easily!) pre-assign decays to them. + // Given that 1. is just a convenience for testing, and 2. happens rather + // rarely in practice - because very few primary energetic (i.e. boosted) + // heavy hadrons fly enough to reach the beam pipe or the tracker and + // having an inelastic interaction there, and the very low probability + // to create a heavy hadrons from the string fragmentation in ordinary + // (i.e. not heavy) hadronic interactions - there is no need in practice + // to define accurately the decays of heavy hadrons in Geant4. + // So, for our practical purposes, it is enough to define very simple, + // "dummy" decays of charmed and bottom hadrons. + // Here we use a single, fully hadronic channel, with 2 or 3 or 4 + // daughters, for each of these heavy hadrons, assigning to this single + // decay channel a 100% branching ratio, although in reality such a + // channel is one between hundreds of possible ones (and therefore its + // real branching ratio is typical of a few per-cent); moreover, we treat + // the decay without any dynamics, i.e. with a flat phase space kinematical + // treatment. + // Note that some of the charmed and bottom hadrons such as SigmaC++, + // SigmaC+, SigmaC0, SigmaB+, SigmaB0 and SigmaB- have one dominant + // decay channel (to LambdaC/B + Pion) which is already defined in Geant4. + // This is not the case for EtaC, JPsi and Upsilon, whose decays need to + // be defined here (although they decay so quickly that their hadronic + // interactions can be neglected, as we do for Pi0 and Sigma0). + // Note that our definition of the decay tables for these heavy hadrons + // do not interfere with the pre-assign decays of primary charmed and + // bottom tracks made by the HEP experiments. In fact, pre-assign decays + // have priority over (i.e. override) decay tables. + static G4bool isFirstCall = true; + if ( ! isFirstCall ) return; + isFirstCall = false; + G4ParticleTable* particleTable = G4ParticleTable::GetParticleTable(); + for ( auto & pdg : G4HadParticles::GetBCHadrons() ) { + auto part = particleTable->FindParticle( pdg ); + if ( part == nullptr ) { + G4cout << "G4HadronicBuilder::BuildDecayTableForBCHadrons : ERROR ! particlePDG=" + << pdg << " is not defined !" << G4endl; + continue; + } + if ( part->GetDecayTable() ) { + G4cout << "G4HadronicBuilder::BuildDecayTableForBCHadrons : WARNING ! particlePDG=" + << pdg << " has already a decay table defined !" << G4endl; + continue; + } + G4DecayTable* decayTable = new G4DecayTable; + const G4int numberDecayChannels = 1; + G4VDecayChannel** mode = new G4VDecayChannel*[ numberDecayChannels ]; + switch ( pdg ) { + // Charmed mesons + case 411 : // D+ + mode[0] = new G4PhaseSpaceDecayChannel( "D+", 1.0, 3, "kaon-", "pi+", "pi+" ); + break; + case -411 : // D- + mode[0] = new G4PhaseSpaceDecayChannel( "D-", 1.0, 3, "kaon+", "pi-", "pi-" ); + break; + case 421 : // D0 + mode[0] = new G4PhaseSpaceDecayChannel( "D0", 1.0, 3, "kaon-", "pi+", "pi0" ); + break; + case -421 : // anti_D0 + mode[0] = new G4PhaseSpaceDecayChannel( "anti_D0", 1.0, 3, "kaon+", "pi-", "pi0" ); + break; + case 431 : // Ds+ + mode[0] = new G4PhaseSpaceDecayChannel( "Ds+", 1.0, 3, "kaon+", "kaon-", "pi+" ); + break; + case -431 : // Ds- + mode[0] = new G4PhaseSpaceDecayChannel( "Ds-", 1.0, 3, "kaon-", "kaon+", "pi-" ); + break; + // Bottom mesons + case 521 : // B+ + mode[0] = new G4PhaseSpaceDecayChannel( "B+", 1.0, 2, "anti_D0", "rho+" ); + break; + case -521 : // B- + mode[0] = new G4PhaseSpaceDecayChannel( "B-", 1.0, 2, "D0", "rho-" ); + break; + case 511 : // B0 + mode[0] = new G4PhaseSpaceDecayChannel( "B0", 1.0, 2, "D-", "rho+" ); + break; + case -511 : // anti_B0 + mode[0] = new G4PhaseSpaceDecayChannel( "anti_B0", 1.0, 2, "D+", "rho-" ); + break; + case 531 : // Bs0 + mode[0] = new G4PhaseSpaceDecayChannel( "Bs0", 1.0, 2, "Ds-", "rho+" ); + break; + case -531 : // anti_Bs0 + mode[0] = new G4PhaseSpaceDecayChannel( "anti_Bs0", 1.0, 2, "Ds+", "rho-" ); + break; + case 541 : // Bc+ + mode[0] = new G4PhaseSpaceDecayChannel( "Bc+", 1.0, 2, "J/psi", "pi+" ); + break; + case -541 : // Bc- + mode[0] = new G4PhaseSpaceDecayChannel( "Bc-", 1.0, 2, "J/psi", "pi-" ); + break; + // Charmed baryons (and anti-baryons) + case 4122 : // lambda_c+ + mode[0] = new G4PhaseSpaceDecayChannel( "lambda_c+", 1.0, 3, "proton", "kaon-", "pi+" ); + break; + case -4122 : // anti_lambda_c+ + mode[0] = new G4PhaseSpaceDecayChannel( "anti_lambda_c+", 1.0, 3, "anti_proton", "kaon+", "pi-" ); + break; + case 4232 : // xi_c+ + mode[0] = new G4PhaseSpaceDecayChannel( "xi_c+", 1.0, 3, "sigma+", "kaon-", "pi+" ); + break; + case -4232 : // anti_xi_c+ + mode[0] = new G4PhaseSpaceDecayChannel( "anti_xi_c+", 1.0, 3, "anti_sigma+", "kaon+", "pi-" ); + break; + case 4132 : // xi_c0 + mode[0] = new G4PhaseSpaceDecayChannel( "xi_c0", 1.0, 3, "lambda", "kaon-", "pi+" ); + break; + case -4132 : // anti_xi_c0 + mode[0] = new G4PhaseSpaceDecayChannel( "anti_xi_c0", 1.0, 3, "anti_lambda", "kaon+", "pi-" ); + break; + case 4332 : // omega_c0 + mode[0] = new G4PhaseSpaceDecayChannel( "omega_c0", 1.0, 3, "xi0", "kaon-", "pi+" ); + break; + case -4332 : // anti_omega_c0 + mode[0] = new G4PhaseSpaceDecayChannel( "anti_omega_c0", 1.0, 3, "anti_xi0", "kaon+", "pi-" ); + break; + // Bottom baryons (and anti-baryons) + case 5122 : // lambda_b + mode[0] = new G4PhaseSpaceDecayChannel( "lambda_b", 1.0, 4, "lambda_c+", "pi+", "pi-", "pi-" ); + break; + case -5122 : // anti_lambda_b + mode[0] = new G4PhaseSpaceDecayChannel( "anti_lambda_b", 1.0, 4, "anti_lambda_c+", "pi-", "pi+", "pi+" ); + break; + case 5232 : // xi_b0 + mode[0] = new G4PhaseSpaceDecayChannel( "xi_b0", 1.0, 3, "lambda_c+", "kaon-", "pi0" ); + break; + case -5232 : // anti_xi_b0 + mode[0] = new G4PhaseSpaceDecayChannel( "anti_xi_b0", 1.0, 3, "anti_lambda_c+", "kaon+", "pi0" ); + break; + case 5132 : // xi_b- + mode[0] = new G4PhaseSpaceDecayChannel( "xi_b-", 1.0, 3, "lambda_c+", "kaon-", "pi-" ); + break; + case -5132 : // anti_xi_b- + mode[0] = new G4PhaseSpaceDecayChannel( "anti_xi_b-", 1.0, 3, "anti_lambda_c+", "kaon+", "pi+" ); + break; + case 5332 : // omega_b- + mode[0] = new G4PhaseSpaceDecayChannel( "omega_b-", 1.0, 3, "xi_c+", "kaon-", "pi-" ); + break; + case -5332 : // anti_omega_b- + mode[0] = new G4PhaseSpaceDecayChannel( "anti_omega_b-", 1.0, 3, "anti_xi_c+", "kaon+", "pi+" ); + break; + default : + G4cout << "G4HadronicBuilder::BuildDecayTableForBCHadrons : UNKNOWN particlePDG=" << pdg << G4endl; + } // End of the switch + + for ( G4int index = 0; index < numberDecayChannels; ++index ) decayTable->Insert( mode[index] ); + delete [] mode; + part->SetDecayTable( decayTable ); + } // End of the for loop over heavy hadrons + // Add now the decay for etac, JPsi and Upsilon because these can be produced as + // secondaries in hadronic interactions, while they are not part of the heavy + // hadrons included in G4HadParticles::GetBCHadrons() because they live too shortly + // and therefore their hadronic interactions can be neglected (as we do for pi0 and sigma0). + if ( ! G4Etac::Definition()->GetDecayTable() ) { + G4DecayTable* decayTable = new G4DecayTable; + const G4int numberDecayChannels = 1; + G4VDecayChannel** mode = new G4VDecayChannel*[ numberDecayChannels ]; + mode[0] = new G4PhaseSpaceDecayChannel( "etac", 1.0, 3, "eta", "pi+", "pi-" ); + for ( G4int index = 0; index < numberDecayChannels; ++index ) decayTable->Insert( mode[index] ); + delete [] mode; + G4Etac::Definition()->SetDecayTable( decayTable ); + } + if ( ! G4JPsi::Definition()->GetDecayTable() ) { + G4DecayTable* decayTable = new G4DecayTable; + const G4int numberDecayChannels = 1; + G4VDecayChannel** mode = new G4VDecayChannel*[ numberDecayChannels ]; + mode[0] = new G4PhaseSpaceDecayChannel( "J/psi", 1.0, 3, "pi0", "pi+", "pi-" ); + for ( G4int index = 0; index < numberDecayChannels; ++index ) decayTable->Insert( mode[index] ); + delete [] mode; + G4JPsi::Definition()->SetDecayTable( decayTable ); + } + if ( ! G4Upsilon::Definition()->GetDecayTable() ) { + G4DecayTable* decayTable = new G4DecayTable; + const G4int numberDecayChannels = 1; + G4VDecayChannel** mode = new G4VDecayChannel*[ numberDecayChannels ]; + mode[0] = new G4PhaseSpaceDecayChannel( "Upsilon", 1.0, 3, "eta_prime", "pi+", "pi-" ); + for ( G4int index = 0; index < numberDecayChannels; ++index ) decayTable->Insert( mode[index] ); + delete [] mode; + G4Upsilon::Definition()->SetDecayTable( decayTable ); + } +} diff --git a/source/physics_lists/constructors/decay/History b/source/physics_lists/constructors/decay/History index a13fdc74d5..a59aa4c9cb 100644 --- a/source/physics_lists/constructors/decay/History +++ b/source/physics_lists/constructors/decay/History @@ -13,6 +13,17 @@ introduced in the code and keeptrack of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +18-August-2020 Vladimir Ivanchenko (phys-ctor-decay-V10-06-05) +- G4RadioactiveDecayPhysics - defined EM parameters in ConstructProcess(..) + instead definition inside the constructor + +02-July-2020 Vladimir Ivanchenko (phys-ctor-decay-V10-06-04) +- G4RadioactiveDecayPhysics - improved initialisation: added + EM parameters definition in the class constructor; if atomic + de-excitation is not defined add it in each thread but not + change EM parameters in a thread; should address several + problems reported recently in the Forum and privately + 03-June-2020 Vladimir Ivanchenko (phys-ctor-decay-V10-06-03) - G4RadioactiveDecayPhysics - coherent initialisation with recent updates of initialisation of atomic de-excitation diff --git a/source/physics_lists/constructors/decay/sources.cmake b/source/physics_lists/constructors/decay/sources.cmake index 708ac2ee36..8d852c0de5 100644 --- a/source/physics_lists/constructors/decay/sources.cmake +++ b/source/physics_lists/constructors/decay/sources.cmake @@ -14,75 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/run/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/builders/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/factory/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/stopping/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/qmd/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/coherent_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/incl_physics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/interface/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lend/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lepto_nuclear/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/particle_hp/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/qgsm/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/radioactive_decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4phys_ctor_decay HEADERS G4DecayPhysics.hh diff --git a/source/physics_lists/constructors/decay/src/G4RadioactiveDecayPhysics.cc b/source/physics_lists/constructors/decay/src/G4RadioactiveDecayPhysics.cc index 1e422d726b..bf9dd861fa 100644 --- a/source/physics_lists/constructors/decay/src/G4RadioactiveDecayPhysics.cc +++ b/source/physics_lists/constructors/decay/src/G4RadioactiveDecayPhysics.cc @@ -50,7 +50,7 @@ G4_DECLARE_PHYSCONSTR_FACTORY(G4RadioactiveDecayPhysics); G4RadioactiveDecayPhysics::G4RadioactiveDecayPhysics(G4int) : G4VPhysicsConstructor("G4RadioactiveDecay") { - G4EmParameters::Instance()->AddPhysics("World","G4RadioactiveDecay"); + // hadronic physics extra configuration G4DeexPrecoParameters* deex = G4NuclearLevelData::GetInstance()->GetParameters(); deex->SetStoreICLevelData(true); deex->SetMaxLifeTime(G4NuclideTable::GetInstance()->GetThresholdOfHalfLife() @@ -78,12 +78,16 @@ void G4RadioactiveDecayPhysics::ConstructParticle() void G4RadioactiveDecayPhysics::ConstructProcess() { + // EM physics extra configuration + // this physics constructor should be defined after EM constructor + G4EmParameters::Instance()->SetAugerCascade(true); + G4EmParameters::Instance()->SetDeexcitationIgnoreCut(true); + G4LossTableManager* man = G4LossTableManager::Instance(); G4VAtomDeexcitation* ad = man->AtomDeexcitation(); // EM physics constructors are not used - if(!ad) { - G4EmParameters::Instance()->SetAugerCascade(true); + if( ad == nullptr ) { ad = new G4UAtomicDeexcitation(); man->SetAtomDeexcitation(ad); man->ResetParameters(); diff --git a/source/physics_lists/constructors/electromagnetic/History b/source/physics_lists/constructors/electromagnetic/History index d9144249c5..78de7291e6 100644 --- a/source/physics_lists/constructors/electromagnetic/History +++ b/source/physics_lists/constructors/electromagnetic/History @@ -13,6 +13,38 @@ introduced in the code and keeptrack of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +04 November 2020, V.Ivanchenko (phys-ctor-em-V10-06-20) +- G4GammaGeneralProcess - improved printouts and make some methods + protected + +04 October 2020, V.Ivanchenko (phys-ctor-em-V10-06-19) +- G4GammaGeneralProcess - resolved problem of assigning of + a concrete process define step to post step point + +19 September 2020, V.Ivanchenko (phys-ctor-em-V10-06-18) +- G4EmStandardPhysics_option4 - use ICRU90 data + +05 August 2020, V.Ivanchenko (phys-ctor-em-V10-06-17) +- G4EmBuilder - substitute hardcoded upper limit by the value from the + G4HadronicParameters class + +20 July 2020, D.Sawkey (phys-ctor-em-V10-06-16) +- G4OpticalPhysics, G4OpticalPhysicsMessenger, G4OpticalProcessIndex: + Move optical physics parameters to new G4OpticalParameters class. + G4OpticalPhysicsMessenger removed and replaced by G4OpticalParametersMessenger. + G4OpticalProcessIndex removed, code put in G4OpticalParameters. + +11 July 2020, V.Ivanchenko (phys-ctor-em-V10-06-15) +- G4EmModelActivator - updated msc and PAI configurations to address + concerns reported in problem reports #2052 and #2106 + +6 July 2020, M.Novak (phys-ctor-em-V10-06-14) +- G4EmStandardPhysicsSS - use the new G4eDPWACoulombScatteringModel for e-/e+ + below 100 [MeV] (for testing this new model) + +29 June 2020, V.Ivanchenko (phys-ctor-em-V10-06-13) +- G4EmStandardPhysicsWVI - fixed typo + 15 June 2020, V.Ivanchenko (phys-ctor-em-V10-06-12) - G4EmBuilder - attempt to fix non-reproducibility in the MT mode when radioactive decay is enabled diff --git a/source/physics_lists/constructors/electromagnetic/include/G4EmDNAChemistry_option3.hh b/source/physics_lists/constructors/electromagnetic/include/G4EmDNAChemistry_option3.hh old mode 100755 new mode 100644 diff --git a/source/physics_lists/constructors/electromagnetic/include/G4EmModelActivator.hh b/source/physics_lists/constructors/electromagnetic/include/G4EmModelActivator.hh old mode 100755 new mode 100644 index 425461993c..02b4c59b2f --- a/source/physics_lists/constructors/electromagnetic/include/G4EmModelActivator.hh +++ b/source/physics_lists/constructors/electromagnetic/include/G4EmModelActivator.hh @@ -61,6 +61,9 @@ public: explicit G4EmModelActivator(const G4String& emphys=""); + G4EmModelActivator & operator=(const G4EmModelActivator &right) = delete; + G4EmModelActivator(const G4EmModelActivator&) = delete; + private: void ActivatePAI(); @@ -73,14 +76,11 @@ private: void AddStandardScattering(const G4ParticleDefinition*, G4EmConfigurator*, G4VMscModel*, const G4String&, - G4double, G4double); + G4double, G4double, const G4String&); G4bool HasMsc(G4ProcessManager*) const; - G4VMscModel* GetGSModel(); - - G4EmModelActivator & operator=(const G4EmModelActivator &right) = delete; - G4EmModelActivator(const G4EmModelActivator&) = delete; + void SetMscParameters(const G4ParticleDefinition*, G4VMscModel*, const G4String& phys); G4EmParameters* theParameters; G4String baseName; diff --git a/source/physics_lists/constructors/electromagnetic/include/G4GammaGeneralProcess.hh b/source/physics_lists/constructors/electromagnetic/include/G4GammaGeneralProcess.hh index a97a74d9f9..9ae3b41e44 100644 --- a/source/physics_lists/constructors/electromagnetic/include/G4GammaGeneralProcess.hh +++ b/source/physics_lists/constructors/electromagnetic/include/G4GammaGeneralProcess.hh @@ -59,9 +59,7 @@ class G4ParticleDefinition; class G4VParticleChange; class G4GammaConversionToMuons; class G4HadronicProcess; -class G4LossTableManager; class G4MaterialCutsCouple; -class G4EmParameters; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... @@ -73,7 +71,7 @@ public: virtual ~G4GammaGeneralProcess(); - G4bool IsApplicable(const G4ParticleDefinition&) final; + G4bool IsApplicable(const G4ParticleDefinition&) override; void AddEmProcess(G4VEmProcess*); @@ -81,37 +79,37 @@ public: void AddHadProcess(G4HadronicProcess*); - void ProcessDescription(std::ostream& outFile) const final; + void ProcessDescription(std::ostream& outFile) const override; protected: - void InitialiseProcess(const G4ParticleDefinition*) final; + void InitialiseProcess(const G4ParticleDefinition*) override; public: // Initialise for build of tables - void PreparePhysicsTable(const G4ParticleDefinition&) final; + void PreparePhysicsTable(const G4ParticleDefinition&) override; // Build physics table during initialisation - void BuildPhysicsTable(const G4ParticleDefinition&) final; + void BuildPhysicsTable(const G4ParticleDefinition&) override; // Called before tracking of each new G4Track - void StartTracking(G4Track*) final; + void StartTracking(G4Track*) override; // implementation of virtual method, specific for G4GammaGeneralProcess G4double PostStepGetPhysicalInteractionLength( const G4Track& track, G4double previousStepSize, - G4ForceCondition* condition) final; + G4ForceCondition* condition) override; // implementation of virtual method, specific for G4GammaGeneralProcess - G4VParticleChange* PostStepDoIt(const G4Track&, const G4Step&) final; + G4VParticleChange* PostStepDoIt(const G4Track&, const G4Step&) override; // Store PhysicsTable in a file. // Return false in case of failure at I/O G4bool StorePhysicsTable(const G4ParticleDefinition*, const G4String& directory, - G4bool ascii = false) final; + G4bool ascii = false) override; // Retrieve Physics from a file. // (return true if the Physics Table can be build by using file) @@ -120,40 +118,47 @@ public: // should be placed under the directory specifed by the argument. G4bool RetrievePhysicsTable(const G4ParticleDefinition*, const G4String& directory, - G4bool ascii) final; + G4bool ascii) override; const G4String& GetProcessName() const; G4int GetProcessSubType() const; - G4VEmProcess* GetEmProcess(const G4String& name) final; + G4VEmProcess* GetEmProcess(const G4String& name) override; + + // hide copy constructor and assignment operator + G4GammaGeneralProcess(G4GammaGeneralProcess &) = delete; + G4GammaGeneralProcess & operator= + (const G4GammaGeneralProcess &right) = delete; protected: G4double GetMeanFreePath(const G4Track& track, G4double previousStepSize, - G4ForceCondition* condition) final; + G4ForceCondition* condition) override; + + inline G4double ComputeGeneralLambda(size_t idxe, size_t idxt); + + inline G4double GetProbability(size_t idxt); + + inline void SelectedProcess(const G4Step& track, const G4VProcess* ptr); + + inline G4VParticleChange* SampleEmSecondaries(const G4Track&, const G4Step&, + G4VEmProcess*); + + G4VParticleChange* SampleHadSecondaries(const G4Track&, const G4Step&, + G4HadronicProcess*); private: // It returns the cross section per volume for energy/ material G4double TotalCrossSectionPerVolume(); - inline G4double ComputeGeneralLambda(size_t idxe, size_t idxt); +protected: - inline G4double GetProbability(size_t idxt); - - inline void SelectedProcess(const G4Track& track, G4VProcess* ptr); - - inline G4VParticleChange* SampleSecondaries(const G4Track&, const G4Step&, - G4VEmProcess*); - - G4VParticleChange* SampleSecondaries(const G4Track&, const G4Step&, - G4HadronicProcess*); - - // hide copy constructor and assignment operator - G4GammaGeneralProcess(G4GammaGeneralProcess &); - G4GammaGeneralProcess & operator=(const G4GammaGeneralProcess &right); + G4HadronicProcess* theGammaNuclear; + const G4VProcess* selectedProc; +private: static G4EmDataHandler* theHandler; static const size_t nTables = 15; static G4bool theT[nTables]; @@ -163,9 +168,7 @@ private: G4VEmProcess* theCompton; G4VEmProcess* theConversionEE; G4VEmProcess* theRayleigh; - G4HadronicProcess* theGammaNuclear; G4GammaConversionToMuons* theConversionMM; - G4VProcess* selectedProc; G4double minPEEnergy; G4double minEEEnergy; @@ -201,20 +204,19 @@ inline G4double G4GammaGeneralProcess::GetProbability(size_t idxt) //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... inline void -G4GammaGeneralProcess::SelectedProcess(const G4Track& track, G4VProcess* ptr) +G4GammaGeneralProcess::SelectedProcess(const G4Step& step, const G4VProcess* ptr) { selectedProc = ptr; - const_cast(&track)->SetCreatorProcess(ptr); + step.GetPostStepPoint()->SetProcessDefinedStep(ptr); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -inline G4VParticleChange* -G4GammaGeneralProcess::SampleSecondaries(const G4Track& track, const G4Step& step, - G4VEmProcess* proc) +inline G4VParticleChange* G4GammaGeneralProcess::SampleEmSecondaries( + const G4Track& track, const G4Step& step, G4VEmProcess* proc) { proc->CurrentSetup(currentCouple,preStepKinEnergy); - SelectedProcess(track, proc); + SelectedProcess(step, proc); return proc->PostStepDoIt(track, step); } diff --git a/source/physics_lists/constructors/electromagnetic/include/G4OpticalPhysics.hh b/source/physics_lists/constructors/electromagnetic/include/G4OpticalPhysics.hh index 8cde29f46f..d5d8281b20 100644 --- a/source/physics_lists/constructors/electromagnetic/include/G4OpticalPhysics.hh +++ b/source/physics_lists/constructors/electromagnetic/include/G4OpticalPhysics.hh @@ -42,25 +42,8 @@ #ifndef G4OpticalPhysics_h #define G4OpticalPhysics_h 1 -#include "G4OpticalProcessIndex.hh" -#include "G4OpticalPhysicsMessenger.hh" -#include "G4OpticalSurface.hh" - #include "G4VPhysicsConstructor.hh" -#include "globals.hh" - -#include - -class G4VProcess; -class G4EmSaturation; -class G4Scintillation; -class G4Cerenkov; -class G4OpWLS; -class G4OpWLS2; -class G4OpRayleigh; -class G4OpMieHG; -class G4OpBoundaryProcess; -class G4OpAbsorption; +#include "G4OpticalParameters.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -70,6 +53,7 @@ class G4OpticalPhysics : public G4VPhysicsConstructor G4OpticalPhysics(G4int verbose = 0, const G4String& name = "Optical"); virtual ~G4OpticalPhysics(); + virtual void PrintStatistics() const; protected: @@ -84,10 +68,13 @@ class G4OpticalPhysics : public G4VPhysicsConstructor public: - // configure G4OpticalPhysics builder - void Configure(G4OpticalProcessIndex, G4bool ); + // DEPRECATED + // the methods below are kept for backwards compatibility, and are to be + // removed in future. Please use the methods in + // G4OpticalParameters instead. - void SetTrackSecondariesFirst(G4OpticalProcessIndex, G4bool ); + void Configure(G4OpticalProcessIndex, G4bool); + void SetTrackSecondariesFirst(G4OpticalProcessIndex, G4bool); // Cerenkov void SetMaxNumPhotonsPerStep(G4int); @@ -97,28 +84,28 @@ class G4OpticalPhysics : public G4VPhysicsConstructor void SetCerenkovVerbosity(G4int); // Scintillation - void SetScintillationYieldFactor(G4double ); - void SetScintillationExcitationRatio(G4double ); - void SetScintillationByParticleType(G4bool ); - void SetScintillationTrackInfo(G4bool ); + void SetScintillationYieldFactor(G4double); + void SetScintillationExcitationRatio(G4double); + void SetScintillationByParticleType(G4bool); + void SetScintillationTrackInfo(G4bool); void SetScintillationTrackSecondariesFirst(G4bool); - void SetFiniteRiseTime(G4bool ); - void SetScintillationStackPhotons(G4bool ); + void SetFiniteRiseTime(G4bool); + void SetScintillationStackPhotons(G4bool); void SetScintillationVerbosity(G4int); void SetScintillationEnhancedTimeConstants(G4bool); //void AddScintillationSaturation(G4EmSaturation* ); // WLS - void SetWLSTimeProfile(G4String ); + void SetWLSTimeProfile(G4String); void SetWLSVerbosity(G4int); // WLS2 - void SetWLS2TimeProfile(G4String ); + void SetWLS2TimeProfile(G4String); void SetWLS2Verbosity(G4int); - + //boundary void SetBoundaryVerbosity(G4int); - void SetInvokeSD(G4bool ); + void SetInvokeSD(G4bool); void SetAbsorptionVerbosity(G4int); void SetRayleighVerbosity(G4int); @@ -126,85 +113,8 @@ class G4OpticalPhysics : public G4VPhysicsConstructor private: - // methods - void PrintStatistics() const; + void PrintWarning(G4ExceptionDescription&) const; - // messenger - G4OpticalPhysicsMessenger* fMessenger; - - // The vector of process configuration - std::vector fProcessUse; - - // The vector of track secondaries options; - // the option to track secondaries before finishing their parent track - std::vector fProcessTrackSecondariesFirst; - - // scintillation ///////////////// - static G4ThreadLocal G4Scintillation* fScintillationProcess; - /// scintillation yield factor - G4double fYieldFactor; - - /// scintillation excitation ratio - /// Note: this is to be removed in the next major release. - /// Use material properties SCINTILLATIONYIELD1, 2, 3 instead - G4double fExcitationRatio; - - /// option to set a finite rise-time; Note: the G4Scintillation - /// process expects the user to have set the constant material - /// property FAST/SLOWSCINTILLATIONRISETIME - G4bool fFiniteRiseTime; - - /// option to allow for the light yield to be a function of - /// particle type and deposited energy in case of non-linear - /// light emission in scintillators - G4bool fScintillationByParticleType; - - /// option to allow for G4ScintillationTrackInformation - /// to be attached to a scintillation photon's track - G4bool fScintillationTrackInfo; - - /// option to allow stacking of secondary Scintillation photons - G4bool fScintillationStackPhotons; - - /// new in version 10.7; allow > 2 time constants, and > 1 time - /// constant for scintillation by particle type - G4bool fScintillationEnhancedTimeConstants; - - G4int fScintillationVerbosity; - - ////////////////// Cerenkov - static G4ThreadLocal G4Cerenkov* fCerenkovProcess; - /// max number of Cerenkov photons per step - G4int fMaxNumPhotons; - /// max change of beta per step - G4double fMaxBetaChange; - /// option to allow stacking of secondary Cerenkov photons - G4bool fCerenkovStackPhotons; - G4int fCerenkovVerbosity; - - ///////////////// WLS - static G4ThreadLocal G4OpWLS* fWLSProcess; - G4String fWLSTimeProfileName; - G4int fWLSVerbosity; - - ///////////////// WLS2 - static G4ThreadLocal G4OpWLS2* fWLS2Process; - G4String fWLS2TimeProfileName; - G4int fWLS2Verbosity; - - static G4ThreadLocal G4OpAbsorption* fAbsorptionProcess; - G4int fAbsorptionVerbosity; - - static G4ThreadLocal G4OpRayleigh* fRayleighProcess; - G4int fRayleighVerbosity; - - static G4ThreadLocal G4OpMieHG* fMieProcess; - G4int fMieVerbosity; - - static G4ThreadLocal G4OpBoundaryProcess* fBoundaryProcess; - /// G4OpBoundaryProcess to call InvokeSD method - G4bool fInvokeSD; - G4int fBoundaryVerbosity; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/source/physics_lists/constructors/electromagnetic/sources.cmake b/source/physics_lists/constructors/electromagnetic/sources.cmake index a937872ab4..8e2c354686 100644 --- a/source/physics_lists/constructors/electromagnetic/sources.cmake +++ b/source/physics_lists/constructors/electromagnetic/sources.cmake @@ -14,58 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/builders/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/factory/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/models/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/molecules/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/molecules/types/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/highenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/muons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/xrays/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/optical/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/run/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4phys_ctor_em HEADERS G4EmBuilder.hh @@ -104,8 +55,6 @@ GEANT4_DEFINE_MODULE(NAME G4phys_ctor_em G4EmStandardPhysics_option4.hh G4GammaGeneralProcess.hh G4OpticalPhysics.hh - G4OpticalPhysicsMessenger.hh - G4OpticalProcessIndex.hh SOURCES G4EmBuilder.cc G4EmDNAChemistry.cc @@ -143,7 +92,6 @@ GEANT4_DEFINE_MODULE(NAME G4phys_ctor_em G4EmStandardPhysics_option4.cc G4GammaGeneralProcess.cc G4OpticalPhysics.cc - G4OpticalPhysicsMessenger.cc GRANULAR_DEPENDENCIES G4baryons G4bosons diff --git a/source/physics_lists/constructors/electromagnetic/src/G4EmBuilder.cc b/source/physics_lists/constructors/electromagnetic/src/G4EmBuilder.cc index 0883c8b724..f6631d3098 100644 --- a/source/physics_lists/constructors/electromagnetic/src/G4EmBuilder.cc +++ b/source/physics_lists/constructors/electromagnetic/src/G4EmBuilder.cc @@ -173,7 +173,8 @@ void G4EmBuilder::ConstructCharged(G4hMultipleScattering* hmsc, { G4PhysicsListHelper* ph = G4PhysicsListHelper::GetPhysicsListHelper(); G4EmParameters* param = G4EmParameters::Instance(); - G4bool isHEP = ( param->MaxKinEnergy() > 1.1*CLHEP::GeV ); + G4HadronicParameters* hpar = G4HadronicParameters::Instance(); + G4bool isHEP = ( param->MaxKinEnergy() > hpar->EnergyThresholdForHeavyHadrons() ); // muon bremsstrahlung and pair production G4MuBremsstrahlung* mub = ( isHEP ) ? new G4MuBremsstrahlung() : nullptr; @@ -222,11 +223,11 @@ void G4EmBuilder::ConstructCharged(G4hMultipleScattering* hmsc, // hyperons and anti particles if( isHEP ) { ConstructBasicEmPhysics(hmsc, G4HadParticles::GetHeavyChargedParticles()); - } - // b- and c- charged particles - if( G4HadronicParameters::Instance()->EnableBCParticles() ) { - ConstructBasicEmPhysics(hmsc, G4HadParticles::GetBCChargedHadrons()); + // b- and c- charged particles + if( hpar->EnableBCParticles() ) { + ConstructBasicEmPhysics(hmsc, G4HadParticles::GetBCChargedHadrons()); + } } } diff --git a/source/physics_lists/constructors/electromagnetic/src/G4EmDNAChemistry_option3.cc b/source/physics_lists/constructors/electromagnetic/src/G4EmDNAChemistry_option3.cc old mode 100755 new mode 100644 diff --git a/source/physics_lists/constructors/electromagnetic/src/G4EmModelActivator.cc b/source/physics_lists/constructors/electromagnetic/src/G4EmModelActivator.cc index 7266ef36aa..8803377307 100644 --- a/source/physics_lists/constructors/electromagnetic/src/G4EmModelActivator.cc +++ b/source/physics_lists/constructors/electromagnetic/src/G4EmModelActivator.cc @@ -185,50 +185,35 @@ void G4EmModelActivator::ActivateEmOptions() if("G4EmStandard" == typesPhys[i]) { G4UrbanMscModel* msc = new G4UrbanMscModel(); - msc->SetRangeFactor(0.04); - msc->SetSkin(1); - msc->SetStepLimitType(fUseSafety); - AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy); + AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); msc = new G4UrbanMscModel(); - msc->SetRangeFactor(0.04); - msc->SetSkin(1); - msc->SetStepLimitType(fUseSafety); - AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy); + AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); - } else if("G4EmStandard_opt1" == typesPhys[i] || - "G4EmStandard_opt2" == typesPhys[i]) { + } else if("G4EmStandard_opt1" == typesPhys[i] || "G4EmStandard_opt2" == typesPhys[i]) { G4UrbanMscModel* msc = new G4UrbanMscModel(); - msc->SetStepLimitType(fMinimal); - msc->SetRangeFactor(0.2); - AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy); + AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); msc = new G4UrbanMscModel(); - msc->SetStepLimitType(fMinimal); - msc->SetRangeFactor(0.2); - AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy); + AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); } else if("G4EmStandard_opt3" == typesPhys[i]) { G4DummyModel* dummy = new G4DummyModel(); G4UrbanMscModel* msc = new G4UrbanMscModel(); - msc->SetStepLimitType(fUseDistanceToBoundary); - msc->SetLocked(true); + SetMscParameters(elec, msc, typesPhys[i]); em_config->SetExtraEmModel("e-", "msc", msc, reg); FindOrAddProcess(elec, "CoulombScat"); em_config->SetExtraEmModel("e-", "CoulombScat", dummy, reg); msc = new G4UrbanMscModel(); - msc->SetStepLimitType(fUseDistanceToBoundary); - msc->SetLocked(true); + SetMscParameters(posi, msc, typesPhys[i]); em_config->SetExtraEmModel("e+", "msc", msc, reg); FindOrAddProcess(posi, "CoulombScat"); em_config->SetExtraEmModel("e+", "CoulombScat", dummy, reg); msc = new G4UrbanMscModel(); - msc->SetStepLimitType(fMinimal); - msc->SetRangeFactor(0.2); - msc->SetLocked(true); + SetMscParameters(prot, msc, typesPhys[i]); em_config->SetExtraEmModel("proton", "msc", msc, reg); FindOrAddProcess(prot, "CoulombScat"); em_config->SetExtraEmModel("proton", "CoulombScat", dummy, reg); @@ -249,11 +234,11 @@ void G4EmModelActivator::ActivateEmOptions() em_config->SetExtraEmModel("gamma", "compt", mod, reg); } else if("G4EmStandard_opt4" == typesPhys[i]) { - G4VMscModel* msc = GetGSModel(); - AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy); + G4VMscModel* msc = new G4GoudsmitSaundersonMscModel(); + AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); - msc = GetGSModel(); - AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy); + msc = new G4GoudsmitSaundersonMscModel(); + AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); theParameters->SetNumberOfBinsPerDecade(20); theParameters->SetUseMottCorrection(true); @@ -274,22 +259,20 @@ void G4EmModelActivator::ActivateEmOptions() } else if("G4EmStandardGS" == typesPhys[i]) { G4GoudsmitSaundersonMscModel* msc = new G4GoudsmitSaundersonMscModel(); - msc->SetRangeFactor(0.06); - msc->SetLocked(true); - AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy); + AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); msc = new G4GoudsmitSaundersonMscModel(); - msc->SetRangeFactor(0.06); - msc->SetLocked(true); - AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy); + AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); } else if("G4EmStandardWVI" == typesPhys[i]) { G4WentzelVIModel* msc = new G4WentzelVIModel(); - AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy); + AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); msc = new G4WentzelVIModel(); - AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy); + AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); + theParameters->SetMscThetaLimit(0.15); + if(G4Threading::IsMasterThread()) { theParameters->SetDeexActiveRegion(regnamesPhys[i], true, false, false); } @@ -322,11 +305,11 @@ void G4EmModelActivator::ActivateEmOptions() } else if("G4EmLivermore" == typesPhys[i]) { - G4VMscModel* msc = GetGSModel(); - AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy); + G4VMscModel* msc = new G4GoudsmitSaundersonMscModel(); + AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); - msc = GetGSModel(); - AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy); + msc = new G4GoudsmitSaundersonMscModel(); + AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); mod = new G4LivermorePhotoElectricModel(); em_config->SetExtraEmModel("gamma", "phot", mod, reg); @@ -354,11 +337,11 @@ void G4EmModelActivator::ActivateEmOptions() } else if("G4EmPenelope" == typesPhys[i]) { - G4VMscModel* msc = GetGSModel(); - AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy); + G4VMscModel* msc = new G4GoudsmitSaundersonMscModel(); + AddStandardScattering(elec, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); - msc = GetGSModel(); - AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy); + msc = new G4GoudsmitSaundersonMscModel(); + AddStandardScattering(posi, em_config, msc, reg, mscEnergyLimit, highEnergy, typesPhys[i]); mod = new G4PenelopePhotoElectricModel(); em_config->SetExtraEmModel("gamma", "phot", mod, reg); @@ -392,14 +375,6 @@ void G4EmModelActivator::ActivateEmOptions() } theParameters->DefineRegParamForDeex(adeexc); - } else if("G4RadioactiveDecay" == typesPhys[i]) { - - if(G4Threading::IsMasterThread()) { - theParameters->SetAugerCascade(true); - theParameters->SetDeexcitationIgnoreCut(true); - } - theParameters->DefineRegParamForDeex(adeexc); - } else { if(verbose > 0 && G4Threading::IsMasterThread()) { G4cout << "### G4EmModelActivator::ActivateEmOptions WARNING: \n" @@ -473,6 +448,10 @@ void G4EmModelActivator::ActivatePAI() namep != "eIoni" && namep != "ionIoni") { continue; } } + G4double emin = 50*CLHEP::keV; + if(namep == "eIoni") emin = 110*CLHEP::eV; + else if(namep == "muIoni") emin = 5*CLHEP::keV; + G4VEmModel* em = nullptr; G4VEmFluctuationModel* fm = nullptr; if(typesPAI[i] == "PAIphoton" || typesPAI[i] == "pai_photon") { @@ -484,11 +463,29 @@ void G4EmModelActivator::ActivatePAI() em = mod; fm = mod; } + // added PAI model above low energy limit + em->SetLowEnergyLimit(emin); proc->AddEmModel(0, em, fm, r); + + // added low energy model + if(namep == "eIoni") { + em = new G4MollerBhabhaModel(); + fm = new G4UniversalFluctuation(); + } else if(namep == "ionIoni") { + em = new G4BraggIonModel(); + fm = new G4IonFluctuations(); + } else { + em = new G4BraggModel(); + fm = new G4UniversalFluctuation(); + } + em->SetHighEnergyLimit(emin); + proc->AddEmModel(-1, em, fm, r); + if(verbose > 0) { G4cout << "### G4EmModelActivator: add <" << typesPAI[i] << "> model for " << particlesPAI[i] - << " in the " << regnamesPAI[i] << G4endl; + << " in the " << regnamesPAI[i] + << " Emin(keV)= " << emin/CLHEP::keV << G4endl; } } } @@ -687,34 +684,22 @@ G4bool G4EmModelActivator::HasMsc(G4ProcessManager* pm) const //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4VMscModel* G4EmModelActivator::GetGSModel() -{ - G4GoudsmitSaundersonMscModel* msc = new G4GoudsmitSaundersonMscModel(); - msc->SetStepLimitType(fUseSafetyPlus); - msc->SetRangeFactor(0.08); - msc->SetSkin(3); - msc->SetOptionMottCorrection(true); - msc->SetLocked(true); - return msc; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - void G4EmModelActivator::AddStandardScattering(const G4ParticleDefinition* part, G4EmConfigurator* em_config, G4VMscModel* mscmod, const G4String& reg, - G4double e1, G4double e2) + G4double e1, G4double e2, + const G4String& type) { G4String pname = part->GetParticleName(); // low-energy msc model - mscmod->SetLocked(true); + SetMscParameters(part, mscmod, type); em_config->SetExtraEmModel(pname, "msc", mscmod, reg, 0.0, e1); // high energy msc model G4WentzelVIModel* msc = new G4WentzelVIModel(); - msc->SetLocked(true); + SetMscParameters(part, msc, type); em_config->SetExtraEmModel(pname, "msc", msc, reg, e1, e2); // high energy single scattering model @@ -727,6 +712,32 @@ void G4EmModelActivator::AddStandardScattering(const G4ParticleDefinition* part, //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void G4EmModelActivator::SetMscParameters(const G4ParticleDefinition* part, + G4VMscModel* msc, const G4String& phys) +{ + if(part == G4Electron::Electron() || part == G4Positron::Positron()) { + if(phys == "G4EmStandard_opt1" || phys == "G4EmStandard_opt2") { + msc->SetRangeFactor(0.2); + msc->SetStepLimitType(fMinimal); + } else if(phys == "G4EmStandard_opt3") { + msc->SetStepLimitType(fUseDistanceToBoundary); + } else if(phys == "G4EmStandard_opt4" || phys == "G4EmLivermore" || phys == "G4EmPenelope") { + msc->SetRangeFactor(0.08); + msc->SetStepLimitType(fUseSafetyPlus); + msc->SetSkin(3); + } else if(phys == "G4EmStandardGS") { + msc->SetRangeFactor(0.06); + } + } else { + if(phys != "G4EmStandard" && phys != "G4EmStandard_opt1" && phys != "G4EmStandard_opt2") { + msc->SetLateralDisplasmentFlag(true); + } + } + msc->SetLocked(true); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + void G4EmModelActivator::FindOrAddProcess(const G4ParticleDefinition* part, const G4String& name) { diff --git a/source/physics_lists/constructors/electromagnetic/src/G4EmStandardPhysicsSS.cc b/source/physics_lists/constructors/electromagnetic/src/G4EmStandardPhysicsSS.cc index 38d2074691..23191a6a90 100644 --- a/source/physics_lists/constructors/electromagnetic/src/G4EmStandardPhysicsSS.cc +++ b/source/physics_lists/constructors/electromagnetic/src/G4EmStandardPhysicsSS.cc @@ -68,7 +68,8 @@ #include "G4MuPairProductionModel.hh" #include "G4hBremsstrahlungModel.hh" #include "G4hPairProductionModel.hh" -#include "G4eSingleCoulombScatteringModel.hh" +//#include "G4eSingleCoulombScatteringModel.hh" +#include "G4eDPWACoulombScatteringModel.hh" #include "G4eIonisation.hh" #include "G4eBremsstrahlung.hh" @@ -190,9 +191,10 @@ void G4EmStandardPhysicsSS::ConstructProcess() } else if (particleName == "e-") { G4CoulombScattering* ss = new G4CoulombScattering(); - if(G4EmParameters::Instance()->UseMottCorrection()) { - ss->SetEmModel(new G4eSingleCoulombScatteringModel()); - } + ss->AddEmModel(0, new G4eDPWACoulombScatteringModel()); +// if(G4EmParameters::Instance()->UseMottCorrection()) { +// ss->SetEmModel(new G4eSingleCoulombScatteringModel()); +// } ph->RegisterProcess(new G4eIonisation(), particle); ph->RegisterProcess(new G4eBremsstrahlung(), particle); @@ -201,9 +203,10 @@ void G4EmStandardPhysicsSS::ConstructProcess() } else if (particleName == "e+") { G4CoulombScattering* ss = new G4CoulombScattering(); - if(G4EmParameters::Instance()->UseMottCorrection()) { - ss->SetEmModel(new G4eSingleCoulombScatteringModel()); - } + ss->AddEmModel(0, new G4eDPWACoulombScatteringModel()); +// if(G4EmParameters::Instance()->UseMottCorrection()) { +// ss->SetEmModel(new G4eSingleCoulombScatteringModel()); +// } ph->RegisterProcess(new G4eIonisation(), particle); ph->RegisterProcess(new G4eBremsstrahlung(), particle); @@ -246,7 +249,7 @@ void G4EmStandardPhysicsSS::ConstructProcess() ph->RegisterProcess(kss, particle); } else if (particleName == "proton" || - particleName == "anti_proton") { + particleName == "anti_proton") { G4CoulombScattering* pss = new G4CoulombScattering(); pss->SetEmModel(new G4hCoulombScatteringModel()); @@ -257,11 +260,11 @@ void G4EmStandardPhysicsSS::ConstructProcess() ph->RegisterProcess(pss, particle); } else if (particleName == "B+" || - particleName == "B-" || - particleName == "D+" || - particleName == "D-" || - particleName == "Ds+" || - particleName == "Ds-" || + particleName == "B-" || + particleName == "D+" || + particleName == "D-" || + particleName == "Ds+" || + particleName == "Ds-" || particleName == "anti_He3" || particleName == "anti_alpha" || particleName == "anti_deuteron" || @@ -274,8 +277,8 @@ void G4EmStandardPhysicsSS::ConstructProcess() particleName == "anti_triton" || particleName == "anti_xi_c+" || particleName == "anti_xi-" || - particleName == "deuteron" || - particleName == "lambda_c+" || + particleName == "deuteron" || + particleName == "lambda_c+" || particleName == "omega-" || particleName == "sigma_c+" || particleName == "sigma_c++" || @@ -283,7 +286,7 @@ void G4EmStandardPhysicsSS::ConstructProcess() particleName == "sigma-" || particleName == "tau+" || particleName == "tau-" || - particleName == "triton" || + particleName == "triton" || particleName == "xi_c+" || particleName == "xi-" ) { diff --git a/source/physics_lists/constructors/electromagnetic/src/G4EmStandardPhysicsWVI.cc b/source/physics_lists/constructors/electromagnetic/src/G4EmStandardPhysicsWVI.cc index 5d71e4f1d3..9757bc83fa 100644 --- a/source/physics_lists/constructors/electromagnetic/src/G4EmStandardPhysicsWVI.cc +++ b/source/physics_lists/constructors/electromagnetic/src/G4EmStandardPhysicsWVI.cc @@ -167,7 +167,7 @@ void G4EmStandardPhysicsWVI::ConstructProcess() ph->RegisterProcess(ss, particle); // e+ - particle = G4Electron::Electron(); + particle = G4Positron::Positron(); msc = new G4eMultipleScattering; msc->SetEmModel(new G4WentzelVIModel()); diff --git a/source/physics_lists/constructors/electromagnetic/src/G4EmStandardPhysics_option4.cc b/source/physics_lists/constructors/electromagnetic/src/G4EmStandardPhysics_option4.cc index 2dbf7c8338..4a6ec8688c 100644 --- a/source/physics_lists/constructors/electromagnetic/src/G4EmStandardPhysics_option4.cc +++ b/source/physics_lists/constructors/electromagnetic/src/G4EmStandardPhysics_option4.cc @@ -122,6 +122,7 @@ G4EmStandardPhysics_option4::G4EmStandardPhysics_option4(G4int ver, param->SetMscRangeFactor(0.08); // error-free stepping for e-/e+ msc gs param->SetMuHadLateralDisplacement(true); param->SetFluo(true); + param->SetUseICRU90Data(true); param->SetMaxNIELEnergy(1*CLHEP::MeV); SetPhysicsType(bElectromagnetic); } diff --git a/source/physics_lists/constructors/electromagnetic/src/G4GammaGeneralProcess.cc b/source/physics_lists/constructors/electromagnetic/src/G4GammaGeneralProcess.cc index 8717f61eac..d97719abb3 100644 --- a/source/physics_lists/constructors/electromagnetic/src/G4GammaGeneralProcess.cc +++ b/source/physics_lists/constructors/electromagnetic/src/G4GammaGeneralProcess.cc @@ -154,12 +154,6 @@ void G4GammaGeneralProcess::AddHadProcess(G4HadronicProcess* ptr) void G4GammaGeneralProcess::PreparePhysicsTable(const G4ParticleDefinition& part) { - if(1 < verboseLevel) { - G4cout << "G4GammaGeneralProcess::PreparePhysicsTable() for " - << GetProcessName() - << " and particle " << part.GetParticleName() - << G4endl; - } SetParticle(&part); currentCouple = nullptr; currentMaterial = nullptr; @@ -170,6 +164,13 @@ void G4GammaGeneralProcess::PreparePhysicsTable(const G4ParticleDefinition& part if(isTheMaster) { SetVerboseLevel(theParameters->Verbose()); } else { SetVerboseLevel(theParameters->WorkerVerbose()); } + if(1 < verboseLevel) { + G4cout << "G4GammaGeneralProcess::PreparePhysicsTable() for " + << GetProcessName() + << " and particle " << part.GetParticleName() + << " isMaster: " << isTheMaster << G4endl; + } + if(thePhotoElectric) { thePhotoElectric->PreparePhysicsTable(part); } if(theCompton) { theCompton->PreparePhysicsTable(part); } if(theConversionEE) { theConversionEE->PreparePhysicsTable(part); } @@ -258,32 +259,32 @@ void G4GammaGeneralProcess::BuildPhysicsTable(const G4ParticleDefinition& part) << " and particle " << part.GetParticleName() << G4endl; } - if(thePhotoElectric) { + if(thePhotoElectric != nullptr) { if(!isTheMaster) { thePhotoElectric->SetEmMasterProcess(theHandler->GetMasterProcess(0)); } thePhotoElectric->BuildPhysicsTable(part); } - if(theCompton) { + if(theCompton != nullptr) { if(!isTheMaster) { theCompton->SetEmMasterProcess(theHandler->GetMasterProcess(1)); } theCompton->BuildPhysicsTable(part); } - if(theConversionEE) { + if(theConversionEE != nullptr) { if(!isTheMaster) { theConversionEE->SetEmMasterProcess(theHandler->GetMasterProcess(2)); } theConversionEE->BuildPhysicsTable(part); } - if(theRayleigh) { + if(theRayleigh != nullptr) { if(!isTheMaster) { theRayleigh->SetEmMasterProcess(theHandler->GetMasterProcess(3)); } theRayleigh->BuildPhysicsTable(part); } - if(theGammaNuclear) { theGammaNuclear->BuildPhysicsTable(part); } - if(theConversionMM) { theConversionMM->BuildPhysicsTable(part); } + if(theGammaNuclear != nullptr) { theGammaNuclear->BuildPhysicsTable(part); } + if(theConversionMM != nullptr) { theConversionMM->BuildPhysicsTable(part); } if(isTheMaster) { const G4ProductionCutsTable* theCoupleTable= @@ -595,13 +596,13 @@ G4VParticleChange* G4GammaGeneralProcess::PostStepDoIt(const G4Track& track, switch (idxEnergy) { case 0: if(x <= peLambda) { - return SampleSecondaries(track, step, thePhotoElectric); + return SampleEmSecondaries(track, step, thePhotoElectric); } else { p = GetProbability(1); if(x <= peLambda + (preStepLambda - peLambda)*p) { - return SampleSecondaries(track, step, theCompton); - } else if(theRayleigh) { - return SampleSecondaries(track, step, theRayleigh); + return SampleEmSecondaries(track, step, theCompton); + } else if(theRayleigh != nullptr) { + return SampleEmSecondaries(track, step, theRayleigh); } } break; @@ -609,59 +610,59 @@ G4VParticleChange* G4GammaGeneralProcess::PostStepDoIt(const G4Track& track, case 1: p = GetProbability(3); if(q <= p) { - return SampleSecondaries(track, step, thePhotoElectric); + return SampleEmSecondaries(track, step, thePhotoElectric); } p = GetProbability(4); if(q <= p) { - return SampleSecondaries(track, step, theCompton); + return SampleEmSecondaries(track, step, theCompton); } p = GetProbability(5); if(q <= p) { - if(theRayleigh) { - return SampleSecondaries(track, step, theRayleigh); + if(theRayleigh != nullptr) { + return SampleEmSecondaries(track, step, theRayleigh); } - } else if(theGammaNuclear) { - return SampleSecondaries(track, step, theGammaNuclear); + } else if(theGammaNuclear != nullptr) { + return SampleHadSecondaries(track, step, theGammaNuclear); } break; case 2: p = GetProbability(7); if(q <= p) { - return SampleSecondaries(track, step, theConversionEE); + return SampleEmSecondaries(track, step, theConversionEE); } p = GetProbability(8); if(q <= p) { - return SampleSecondaries(track, step, theCompton); + return SampleEmSecondaries(track, step, theCompton); } p = GetProbability(9); if(q <= p) { - return SampleSecondaries(track, step, thePhotoElectric); - } else if(theGammaNuclear) { - return SampleSecondaries(track, step, theGammaNuclear); + return SampleEmSecondaries(track, step, thePhotoElectric); + } else if(theGammaNuclear != nullptr) { + return SampleHadSecondaries(track, step, theGammaNuclear); } break; case 3: p = 1.0 - GetProbability(11); if(q <= p) { - return SampleSecondaries(track, step, theConversionEE); + return SampleEmSecondaries(track, step, theConversionEE); } p = 1.0 - GetProbability(12); if(q <= p) { - return SampleSecondaries(track, step, theCompton); + return SampleEmSecondaries(track, step, theCompton); } p = 1.0 - GetProbability(13); if(q <= p) { - return SampleSecondaries(track, step, thePhotoElectric); + return SampleEmSecondaries(track, step, thePhotoElectric); } p = 1.0 - GetProbability(14); if(q <= p) { - if(theGammaNuclear) { - return SampleSecondaries(track, step, theGammaNuclear); + if(theGammaNuclear != nullptr) { + return SampleHadSecondaries(track, step, theGammaNuclear); } - } else if(theConversionMM) { - SelectedProcess(track, theConversionMM); + } else if(theConversionMM != nullptr) { + SelectedProcess(step, theConversionMM); return theConversionMM->PostStepDoIt(track, step); } break; @@ -673,13 +674,13 @@ G4VParticleChange* G4GammaGeneralProcess::PostStepDoIt(const G4Track& track, //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -G4VParticleChange* G4GammaGeneralProcess::SampleSecondaries( +G4VParticleChange* G4GammaGeneralProcess::SampleHadSecondaries( const G4Track& track, const G4Step& step, G4HadronicProcess* proc) { - SelectedProcess(track, proc); + SelectedProcess(step, proc); proc->GetCrossSectionDataStore()->ComputeCrossSection(track.GetDynamicParticle(), track.GetMaterial()); - return theGammaNuclear->PostStepDoIt(track, step); + return proc->PostStepDoIt(track, step); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... @@ -690,16 +691,16 @@ G4bool G4GammaGeneralProcess::StorePhysicsTable(const G4ParticleDefinition* part { G4bool yes = true; if(!isTheMaster) { return yes; } - if(thePhotoElectric && + if(thePhotoElectric != nullptr && !thePhotoElectric->StorePhysicsTable(part, directory, ascii)) { yes = false; } - if(theCompton && + if(theCompton != nullptr && !theCompton->StorePhysicsTable(part, directory, ascii)) { yes = false; } - if(theConversionEE && + if(theConversionEE != nullptr && !theConversionEE->StorePhysicsTable(part, directory, ascii)) { yes = false; } - if(theRayleigh && + if(theRayleigh != nullptr && !theRayleigh->StorePhysicsTable(part, directory, ascii)) { yes = false; } @@ -727,16 +728,16 @@ G4GammaGeneralProcess::RetrievePhysicsTable(const G4ParticleDefinition* part, << GetProcessName() << G4endl; } G4bool yes = true; - if(thePhotoElectric && + if(thePhotoElectric != nullptr && !thePhotoElectric->RetrievePhysicsTable(part, directory, ascii)) { yes = false; } - if(theCompton && + if(theCompton != nullptr && !theCompton->RetrievePhysicsTable(part, directory, ascii)) { yes = false; } - if(theConversionEE && + if(theConversionEE != nullptr && !theConversionEE->RetrievePhysicsTable(part, directory, ascii)) { yes = false; } - if(theRayleigh && + if(theRayleigh != nullptr && !theRayleigh->RetrievePhysicsTable(part, directory, ascii)) { yes = false; } @@ -796,13 +797,13 @@ G4int G4GammaGeneralProcess::GetProcessSubType() const G4VEmProcess* G4GammaGeneralProcess::GetEmProcess(const G4String& name) { G4VEmProcess* proc = nullptr; - if(thePhotoElectric && name == thePhotoElectric->GetProcessName()) { + if(thePhotoElectric != nullptr && name == thePhotoElectric->GetProcessName()) { proc = thePhotoElectric; - } else if(theCompton && name == theCompton->GetProcessName()) { + } else if(theCompton != nullptr && name == theCompton->GetProcessName()) { proc = theCompton; - } else if(theConversionEE && name == theConversionEE->GetProcessName()) { + } else if(theConversionEE != nullptr && name == theConversionEE->GetProcessName()) { proc = theConversionEE; - } else if(theRayleigh && name == theRayleigh->GetProcessName()) { + } else if(theRayleigh != nullptr && name == theRayleigh->GetProcessName()) { proc = theRayleigh; } return proc; diff --git a/source/physics_lists/constructors/electromagnetic/src/G4OpticalPhysics.cc b/source/physics_lists/constructors/electromagnetic/src/G4OpticalPhysics.cc index 6fc5b814e5..24d6997c2c 100644 --- a/source/physics_lists/constructors/electromagnetic/src/G4OpticalPhysics.cc +++ b/source/physics_lists/constructors/electromagnetic/src/G4OpticalPhysics.cc @@ -37,8 +37,8 @@ // #include "G4OpticalPhysics.hh" +#include "G4OpticalParameters.hh" -//#include "G4OpticalPhoton.hh" #include "G4OpAbsorption.hh" #include "G4OpRayleigh.hh" #include "G4OpMieHG.hh" @@ -58,155 +58,41 @@ #include "G4PhysicsConstructorFactory.hh" G4_DECLARE_PHYSCONSTR_FACTORY(G4OpticalPhysics); -G4ThreadLocal G4Scintillation* G4OpticalPhysics::fScintillationProcess = nullptr; -G4ThreadLocal G4Cerenkov* G4OpticalPhysics::fCerenkovProcess = nullptr; -G4ThreadLocal G4OpWLS* G4OpticalPhysics::fWLSProcess = nullptr; -G4ThreadLocal G4OpWLS2* G4OpticalPhysics::fWLS2Process = nullptr; -G4ThreadLocal G4OpAbsorption* G4OpticalPhysics::fAbsorptionProcess = nullptr; -G4ThreadLocal G4OpRayleigh* G4OpticalPhysics::fRayleighProcess = nullptr; -G4ThreadLocal G4OpMieHG* G4OpticalPhysics::fMieProcess = nullptr; -G4ThreadLocal G4OpBoundaryProcess* G4OpticalPhysics::fBoundaryProcess = nullptr; - //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - G4OpticalPhysics::G4OpticalPhysics(G4int verbose, const G4String& name) - : G4VPhysicsConstructor(name), - - fYieldFactor(1.), - fExcitationRatio(0.0), - fFiniteRiseTime(false), - fScintillationByParticleType(false), - fScintillationTrackInfo(false), - fScintillationStackPhotons(true), - // fScintillationEnhancedTimeConstants to be set to - // true in the next major release - fScintillationEnhancedTimeConstants(false), - fScintillationVerbosity(0), - fMaxNumPhotons(100), - fMaxBetaChange(10.0), - fCerenkovStackPhotons(true), - fCerenkovVerbosity(0), - fWLSTimeProfileName("delta"), - fWLSVerbosity(0), - fWLS2TimeProfileName("delta"), - fWLS2Verbosity(0), - fAbsorptionVerbosity(0), - fRayleighVerbosity(0), - fMieVerbosity(0), - fInvokeSD(true), - fBoundaryVerbosity(0) - + : G4VPhysicsConstructor(name) { verboseLevel = verbose; - fMessenger = new G4OpticalPhysicsMessenger(this); - - for ( G4int i=0; iSetVerboseLevel(verboseLevel); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - G4OpticalPhysics::~G4OpticalPhysics() -{ - delete fMessenger; - fMessenger = nullptr; -} +{} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - void G4OpticalPhysics::PrintStatistics() const { -// Print all processes activation and their parameters - - for ( G4int i=0; iDump(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - void G4OpticalPhysics::ConstructParticle() { G4OpticalPhoton::OpticalPhotonDefinition(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - void G4OpticalPhysics::ConstructProcess() { if(verboseLevel>0) G4cout <<"G4OpticalPhysics:: Add Optical Physics Processes"<< G4endl; - // A vector of optical processes - std::vector OpProcesses; - - for ( G4int i=0; iSetInvokeSD(fInvokeSD); - OpProcesses[kBoundary] = fBoundaryProcess; - - fWLSProcess = new G4OpWLS(); - fWLSProcess->UseTimeProfile(fWLSTimeProfileName); - OpProcesses[kWLS] = fWLSProcess; - - fWLS2Process = new G4OpWLS2(); - fWLS2Process->UseTimeProfile(fWLS2TimeProfileName); - OpProcesses[kWLS2] = fWLS2Process; - - G4ProcessManager* pManager = nullptr; - pManager = G4OpticalPhoton::OpticalPhoton()->GetProcessManager(); - + G4ProcessManager* pManager = G4OpticalPhoton::OpticalPhoton()->GetProcessManager(); if (!pManager) { G4ExceptionDescription ed; ed << "Optical Photon without a Process Manager"; @@ -215,31 +101,29 @@ void G4OpticalPhysics::ConstructProcess() return; } - for ( G4int i=kAbsorption; i<=kWLS2; i++ ) { - if ( fProcessUse[i] ) { - pManager->AddDiscreteProcess(OpProcesses[i]); - } - } - - fScintillationProcess = new G4Scintillation(); - fScintillationProcess->SetScintillationYieldFactor(fYieldFactor); - fScintillationProcess->SetScintillationExcitationRatio(fExcitationRatio); - fScintillationProcess->SetFiniteRiseTime(fFiniteRiseTime); - fScintillationProcess->SetScintillationByParticleType(fScintillationByParticleType); - fScintillationProcess->SetScintillationTrackInfo(fScintillationTrackInfo); - fScintillationProcess->SetTrackSecondariesFirst(fProcessTrackSecondariesFirst[kScintillation]); - fScintillationProcess->SetStackPhotons(fScintillationStackPhotons); - fScintillationProcess->SetEnhancedTimeConstants(fScintillationEnhancedTimeConstants); - G4EmSaturation* emSaturation = G4LossTableManager::Instance()->EmSaturation(); - fScintillationProcess->AddSaturation(emSaturation); - OpProcesses[kScintillation] = fScintillationProcess; + G4OpAbsorption* absorption = new G4OpAbsorption(); + if (params->GetProcessActivation("OpAbsorption")) pManager->AddDiscreteProcess(absorption); - fCerenkovProcess = new G4Cerenkov(); - fCerenkovProcess->SetMaxNumPhotonsPerStep(fMaxNumPhotons); - fCerenkovProcess->SetMaxBetaChangePerStep(fMaxBetaChange); - fCerenkovProcess->SetTrackSecondariesFirst(fProcessTrackSecondariesFirst[kCerenkov]); - fCerenkovProcess->SetStackPhotons(fCerenkovStackPhotons); - OpProcesses[kCerenkov] = fCerenkovProcess; + G4OpRayleigh* rayleigh = new G4OpRayleigh(); + if (params->GetProcessActivation("OpRayleigh")) pManager->AddDiscreteProcess(rayleigh); + + G4OpMieHG* mie = new G4OpMieHG(); + if (params->GetProcessActivation("OpMieHG")) pManager->AddDiscreteProcess(mie); + + G4OpBoundaryProcess* boundary = new G4OpBoundaryProcess(); + if (params->GetProcessActivation("OpBoundary")) pManager->AddDiscreteProcess(boundary); + + G4OpWLS* wls = new G4OpWLS(); + if (params->GetProcessActivation("OpWLS")) pManager->AddDiscreteProcess(wls); + + G4OpWLS2* wls2 = new G4OpWLS2(); + if (params->GetProcessActivation("OpWLS2")) pManager->AddDiscreteProcess(wls2); + + G4Scintillation* scint = new G4Scintillation(); + G4EmSaturation* emSaturation = G4LossTableManager::Instance()->EmSaturation(); + scint->AddSaturation(emSaturation); + + G4Cerenkov* cerenkov = new G4Cerenkov(); auto myParticleIterator=GetParticleIterator(); myParticleIterator->reset(); @@ -258,243 +142,230 @@ void G4OpticalPhysics::ConstructProcess() return; // else coverity complains for pManager use below } - if( fCerenkovProcess->IsApplicable(*particle) && - fProcessUse[kCerenkov] ) { - pManager->AddProcess(fCerenkovProcess); - pManager->SetProcessOrdering(fCerenkovProcess,idxPostStep); + if (cerenkov->IsApplicable(*particle) && params->GetProcessActivation("Cerenkov")) { + pManager->AddProcess(cerenkov); + pManager->SetProcessOrdering(cerenkov,idxPostStep); } - if( fScintillationProcess->IsApplicable(*particle) && - fProcessUse[kScintillation] ) { - pManager->AddProcess(fScintillationProcess); - pManager->SetProcessOrderingToLast(fScintillationProcess,idxAtRest); - pManager->SetProcessOrderingToLast(fScintillationProcess,idxPostStep); + if (scint->IsApplicable(*particle) && params->GetProcessActivation("Scintillation")) { + pManager->AddProcess(scint); + pManager->SetProcessOrderingToLast(scint,idxAtRest); + pManager->SetProcessOrderingToLast(scint,idxPostStep); } - if( fBoundaryProcess->IsApplicable(*particle) && - fProcessUse[kBoundary] ) { - pManager->SetProcessOrderingToLast(fBoundaryProcess,idxPostStep); + if (boundary->IsApplicable(*particle) && params->GetProcessActivation("OpBoundary")) { + pManager->SetProcessOrderingToLast(boundary,idxPostStep); } } - // Add verbose - for ( G4int i=0; iSetVerboseLevel(verboseLevel); - } - if (verboseLevel > 1) PrintStatistics(); + if (verboseLevel > 1) PrintStatistics(); if (verboseLevel > 0) G4cout << "### " << namePhysics << " physics constructed." << G4endl; } -void G4OpticalPhysics::SetScintillationYieldFactor(G4double val) -{ - fYieldFactor = val; - if (fScintillationProcess) { - fScintillationProcess->SetScintillationYieldFactor(fYieldFactor); - } +// DEPRECATED +// the methods below are kept for backwards compatibility, and are to be +// removed in future. Please use the methods in +// G4OpticalParameters instead. + +void G4OpticalPhysics::Configure(G4OpticalProcessIndex index, G4bool val) { + G4OpticalParameters* params = G4OpticalParameters::Instance(); + if (index == kCerenkov) params->SetProcessActivation("Cerenkov", val); + else if (index == kScintillation) params->SetProcessActivation("Scintillation", val); + else if (index == kAbsorption) params->SetProcessActivation("Absorption", val); + else if (index == kRayleigh) params->SetProcessActivation("Rayleigh", val); + else if (index == kMieHG) params->SetProcessActivation("MieHG", val); + else if (index == kBoundary) params->SetProcessActivation("Boundary", val); + else if (index == kWLS) params->SetProcessActivation("WLS", val); + else if (index == kWLS2) params->SetProcessActivation("WLS2", val); } -void G4OpticalPhysics::SetScintillationExcitationRatio(G4double val) -{ - fExcitationRatio = val; - if (fScintillationProcess) { - fScintillationProcess->SetScintillationExcitationRatio(fExcitationRatio); - } +void G4OpticalPhysics::SetTrackSecondariesFirst(G4OpticalProcessIndex index, G4bool val) { + if (index == kCerenkov) + G4OpticalParameters::Instance()->SetCerenkovTrackSecondariesFirst(val); + else if (index == kScintillation) + G4OpticalParameters::Instance()->SetScintTrackSecondariesFirst(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetTrackSecondariesFirst is deprecated." << G4endl + << "Use G4OpticalParameters::Set[Cerenkov/Scint]TrackSecondariesFirst(G4bool) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetMaxNumPhotonsPerStep(G4int val) -{ -/// Limit step to the specified maximum number of Cerenkov photons - fMaxNumPhotons = val; - if (fCerenkovProcess) { - fCerenkovProcess->SetMaxNumPhotonsPerStep(fMaxNumPhotons); - } +// Cerenkov +void G4OpticalPhysics::SetMaxNumPhotonsPerStep(G4int val) { + G4OpticalParameters::Instance()->SetCerenkovMaxPhotonsPerStep(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetMaxNumPhotonsPerStep is deprecated." << G4endl + << "Use G4OpticalParameters::SetCerenkovMaxPhotonsPerStep(G4int) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetMaxBetaChangePerStep(G4double val) -{ -/// Limit step to the specified maximum change of beta of the parent particle - fMaxBetaChange = val; - if (fCerenkovProcess) { - fCerenkovProcess->SetMaxBetaChangePerStep(fMaxBetaChange); - } +void G4OpticalPhysics::SetMaxBetaChangePerStep(G4double val) { + G4OpticalParameters::Instance()->SetCerenkovMaxBetaChange(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetMaxBetaChangePerStep is deprecated." << G4endl + << "Use G4OpticalParameters::SetCerenkovMaxBetaChange(G4double) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetCerenkovStackPhotons(G4bool val) -{ - fCerenkovStackPhotons = val; - if (fCerenkovProcess) { - fCerenkovProcess->SetStackPhotons(fCerenkovStackPhotons); - } +void G4OpticalPhysics::SetCerenkovStackPhotons(G4bool val) { + G4OpticalParameters::Instance()->SetCerenkovStackPhotons(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetCerenkovStackPhotons is deprecated." << G4endl + << "Use G4OpticalParameters::SetCerenkovStackPhotons(G4int) " + << "instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetCerenkovTrackSecondariesFirst(G4bool val) -{ - fProcessTrackSecondariesFirst[kCerenkov] = val; - if (fCerenkovProcess) { - fCerenkovProcess-> - SetTrackSecondariesFirst(fProcessTrackSecondariesFirst[kCerenkov]); - } +void G4OpticalPhysics::SetCerenkovTrackSecondariesFirst(G4bool val) { + G4OpticalParameters::Instance()->SetCerenkovTrackSecondariesFirst(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetCerenkovTrackSecondariesFirst is deprecated." << G4endl + << "Use G4OpticalParameters::SetCerenkovTrackSecondariesFirst(G4int) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetCerenkovVerbosity(G4int ver) -{ - fCerenkovVerbosity = ver; - if (fCerenkovProcess) { - fCerenkovProcess->SetVerboseLevel(fCerenkovVerbosity); - } +void G4OpticalPhysics::SetCerenkovVerbosity(G4int val) { + G4OpticalParameters::Instance()->SetCerenkovVerboseLevel(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetCerenkovVerbosity is deprecated." << G4endl + << "Use G4OpticalParameters::SetCerenkovVerbosity(G4int) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetWLSTimeProfile(G4String name) -{ -/// Set the WLS time profile (delta or exponential) - fWLSTimeProfileName = name; - if (fWLSProcess) { - fWLSProcess->UseTimeProfile(fWLSTimeProfileName); - } +// Scintillation +void G4OpticalPhysics::SetScintillationYieldFactor(G4double val) { + G4OpticalParameters::Instance()->SetScintYieldFactor(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetScintillationYieldFactor is deprecated." << G4endl + << "Use G4OpticalParameters::SetScintYieldFactor(G4double) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetWLSVerbosity(G4int ver) -{ - fWLSVerbosity = ver; - if (fWLSProcess) { - fWLSProcess->SetVerboseLevel(fWLSVerbosity); - } +void G4OpticalPhysics::SetScintillationExcitationRatio(G4double val) { + G4OpticalParameters::Instance()->SetScintExcitationRatio(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetScintillationExcitationRatio is deprecated." << G4endl + << "Use G4OpticalParameters::SetScintExcitationRatio(G4double) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetWLS2TimeProfile(G4String name) -{ -/// Set the WLS2 time profile (delta or exponential) - fWLS2TimeProfileName = name; - if (fWLS2Process) { - fWLS2Process->UseTimeProfile(fWLS2TimeProfileName); - } +void G4OpticalPhysics::SetScintillationByParticleType(G4bool val) { + G4OpticalParameters::Instance()->SetScintByParticleType(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetScintillationByParticleType is deprecated." << G4endl + << "Use G4OpticalParameters::SetScintByParticleType(G4bool) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetWLS2Verbosity(G4int ver) -{ - fWLS2Verbosity = ver; - if (fWLS2Process) { - fWLS2Process->SetVerboseLevel(fWLS2Verbosity); - } +void G4OpticalPhysics::SetScintillationTrackInfo(G4bool val) { + G4OpticalParameters::Instance()->SetScintTrackInfo(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetScintillationTrackInfo is deprecated." << G4endl + << "Use G4OpticalParameters::SetScintTrackInfo(G4bool) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetScintillationByParticleType(G4bool val) -{ - fScintillationByParticleType = val; - if (fScintillationProcess) { - fScintillationProcess-> - SetScintillationByParticleType(fScintillationByParticleType); - } +void G4OpticalPhysics::SetScintillationTrackSecondariesFirst(G4bool val) { + G4OpticalParameters::Instance()->SetScintTrackSecondariesFirst(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetScintillationTrackSecondariesFirst is deprecated." << G4endl + << "Use G4OpticalParameters::SetScintTrackSecondariesFirst(G4bool) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetScintillationEnhancedTimeConstants(G4bool val) -{ - fScintillationEnhancedTimeConstants = val; - if (fScintillationProcess) { - fScintillationProcess->SetEnhancedTimeConstants(fScintillationEnhancedTimeConstants); - } +void G4OpticalPhysics::SetFiniteRiseTime(G4bool val) { + G4OpticalParameters::Instance()->SetScintFiniteRiseTime(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetFiniteRiseTime is deprecated." << G4endl + << "Use G4OpticalParameters::SetScintFiniteRiseTime(G4bool) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetScintillationTrackSecondariesFirst(G4bool val) -{ - fProcessTrackSecondariesFirst[kScintillation] = val; - if (fScintillationProcess) { - fScintillationProcess-> - SetTrackSecondariesFirst(fProcessTrackSecondariesFirst[kScintillation]); - } +void G4OpticalPhysics::SetScintillationStackPhotons(G4bool val) { + G4OpticalParameters::Instance()->SetScintStackPhotons(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetScintillationStackPhotons is deprecated." << G4endl + << "Use G4OpticalParameters::SetScintStackPhotons(G4bool) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetScintillationTrackInfo(G4bool val) -{ - fScintillationTrackInfo = val; - if (fScintillationProcess) { - fScintillationProcess->SetScintillationTrackInfo(fScintillationTrackInfo); - } +void G4OpticalPhysics::SetScintillationVerbosity(G4int val) { + G4OpticalParameters::Instance()->SetScintVerboseLevel(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetScintillationVerbosity is deprecated." << G4endl + << "Use G4OpticalParameters::SetScintVerboseLevel(G4int) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetScintillationVerbosity(G4int ver) -{ - fScintillationVerbosity = ver; - if (fScintillationProcess) { - fScintillationProcess->SetVerboseLevel(fScintillationVerbosity); - } +void G4OpticalPhysics::SetScintillationEnhancedTimeConstants(G4bool val) { + G4OpticalParameters::Instance()->SetScintEnhancedTimeConstants(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetScintillationEnhanceTimeConstants is deprecated." << G4endl + << "Use G4OpticalParameters::SetScintEnhancedTimeConstants(G4bool) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetAbsorptionVerbosity(G4int ver) -{ - fAbsorptionVerbosity = ver; - if (fAbsorptionProcess) { - fAbsorptionProcess->SetVerboseLevel(fAbsorptionVerbosity); - } +//void AddScintillationSaturation(G4EmSaturation* ); + +// WLS +void G4OpticalPhysics::SetWLSTimeProfile(G4String val) { + G4OpticalParameters::Instance()->SetWLSTimeProfile(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetWLSTimeProfile is deprecated." << G4endl + << "Use G4OpticalParameters::SetWLSTimeProfile(G4String) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetRayleighVerbosity(G4int ver) -{ - fRayleighVerbosity = ver; - if (fRayleighProcess) { - fRayleighProcess->SetVerboseLevel(fRayleighVerbosity); - } +void G4OpticalPhysics::SetWLSVerbosity(G4int val) { + G4OpticalParameters::Instance()->SetWLSVerboseLevel(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetWLSVerbosity is deprecated." << G4endl + << "Use G4OpticalParameters::SetWLSVerboseLevel(G4int) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetMieVerbosity(G4int ver) -{ - fMieVerbosity = ver; - if (fMieProcess) { - fMieProcess->SetVerboseLevel(fMieVerbosity); - } +//boundary +void G4OpticalPhysics::SetBoundaryVerbosity(G4int val) { + G4OpticalParameters::Instance()->SetBoundaryVerboseLevel(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetBoundaryVerbosity is deprecated." << G4endl + << "Use G4OpticalParameters::SetBoundaryVerboseLevel(G4int) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetBoundaryVerbosity(G4int ver) -{ - fBoundaryVerbosity = ver; - if (fBoundaryProcess) { - fBoundaryProcess->SetVerboseLevel(fBoundaryVerbosity); - } +void G4OpticalPhysics::SetInvokeSD(G4bool val) { + G4OpticalParameters::Instance()->SetBoundaryInvokeSD(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetInvokeSD is deprecated." << G4endl + << "Use G4OpticalParameters::SetBoundaryInvokeSD(G4bool) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetTrackSecondariesFirst(G4OpticalProcessIndex index, - G4bool trackSecondariesFirst) -{ - if ( index >= kNoProcess ) return; - if ( fProcessTrackSecondariesFirst[index] == trackSecondariesFirst ) return; - fProcessTrackSecondariesFirst[index] = trackSecondariesFirst; +void G4OpticalPhysics::SetAbsorptionVerbosity(G4int val) { + G4OpticalParameters::Instance()->SetAbsorptionVerboseLevel(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetAbsorptionVerbosity is deprecated." << G4endl + << "Use G4OpticalParameters::SetAbsorptionVerboseLevel(G4int) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetFiniteRiseTime(G4bool b) -{ - fFiniteRiseTime = b; - if (fScintillationProcess) { - fScintillationProcess->SetFiniteRiseTime(fFiniteRiseTime); - } +void G4OpticalPhysics::SetRayleighVerbosity(G4int val) { + G4OpticalParameters::Instance()->SetRayleighVerboseLevel(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetRayleighVerbosity is deprecated." << G4endl + << "Use G4OpticalParameters::SetRayleighVerboseLevel(G4int) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetInvokeSD(G4bool b) -{ - fInvokeSD = b; - if (fBoundaryProcess) { - fBoundaryProcess->SetInvokeSD(fInvokeSD); - } +void G4OpticalPhysics::SetMieVerbosity(G4int val) { + G4OpticalParameters::Instance()->SetMieVerboseLevel(val); + G4ExceptionDescription ed; + ed << "Method G4OpticalPhysics::SetMieVerbosity is deprecated." << G4endl + << "Use G4OpticalParameters::SetMieVerboseLevel(G4int) instead."; + PrintWarning(ed); } -void G4OpticalPhysics::SetScintillationStackPhotons(G4bool stackingFlag) -{ - fScintillationStackPhotons = stackingFlag; - if (fScintillationProcess) { - fScintillationProcess->SetStackPhotons(fScintillationStackPhotons); - } +void G4OpticalPhysics::PrintWarning(G4ExceptionDescription& ed) const { + G4Exception("G4OpticalPhysics", "Optical0021", JustWarning, ed); } -void G4OpticalPhysics::Configure(G4OpticalProcessIndex index, G4bool isUse) -{ - // Configure the physics constructor to use/not use a selected process. - // This method can only be called in PreInit> phase (before execution of - // ConstructProcess). The process is not added to particle's process manager - // and so it cannot be re-activated later in Idle> phase with the command - // /process/activate. - - if ( index >= kNoProcess ) return; - if ( fProcessUse[index] == isUse ) return; - fProcessUse[index] = isUse; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/source/physics_lists/constructors/factory/sources.cmake b/source/physics_lists/constructors/factory/sources.cmake index 4dd0fd1949..6f19ae696b 100644 --- a/source/physics_lists/constructors/factory/sources.cmake +++ b/source/physics_lists/constructors/factory/sources.cmake @@ -14,93 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/digits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/hits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/event/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/builders/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/electromagnetic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/gamma_lepto_nuclear/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/hadron_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/hadron_inelastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/limiters/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/stopping/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/highenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/muons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/xrays/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/coherent_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/gem_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/incl_physics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/interface/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lend/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lepto_nuclear/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/particle_hp/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/qgsm/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/radioactive_decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/stopping/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/optical/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/run/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/tracking/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4phys_ctor_factory HEADERS G4RegisterPhysicsConstructors.icc diff --git a/source/physics_lists/constructors/gamma_lepto_nuclear/History b/source/physics_lists/constructors/gamma_lepto_nuclear/History index e66cb5c454..5a12f94421 100644 --- a/source/physics_lists/constructors/gamma_lepto_nuclear/History +++ b/source/physics_lists/constructors/gamma_lepto_nuclear/History @@ -1,4 +1,4 @@ -------------------------------------------------------------------- +--------------------------------------------------------------------------- ========================================================= Geant4 - an Object-Oriented Toolkit for Simulation in HEP @@ -12,13 +12,18 @@ introduced in the code and keeptrack of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- + +04 November 2020 Vladimir Ivanchenko (phys-ctor-glnuclear-V10-06-04) +- G4EmExtraPhysics, G4EmMessenger - added a flag to enable G4GammaNuclearXS + cross section and possibility to use general process for electron and + positron; fixed several UI commands + 28 May 2020 Ben Morgan (phys-ctor-glnuclear-V10-06-03) - Remove obsolete GRANULAR_DEPENDENCIES entries 29 April 2020 V. Grichine (phys-ctor-glnuclear-V10-06-02) - G4EmExtraPhysics - extension to anti_nu_mu, nu_e and anti_nu_e processes-models - 21 April 2020 Vladimir Ivanchenko (phys-ctor-glnuclear-V10-06-01) - G4EmExtraPhysics, G4EmMessenger - added low-energy limit, set method, and UI command defining low-energy gamma-nuclear model, which are using de-excitation diff --git a/source/physics_lists/constructors/gamma_lepto_nuclear/include/G4EmExtraPhysics.hh b/source/physics_lists/constructors/gamma_lepto_nuclear/include/G4EmExtraPhysics.hh index ca59e67c82..c97483e728 100644 --- a/source/physics_lists/constructors/gamma_lepto_nuclear/include/G4EmExtraPhysics.hh +++ b/source/physics_lists/constructors/gamma_lepto_nuclear/include/G4EmExtraPhysics.hh @@ -80,6 +80,7 @@ public: void NeutrinoActivated(G4bool val); void NuETotXscActivated(G4bool val); + void SetUseGammaNuclearXS(G4bool val); void SetNuEleCcBias(G4double bf); void SetNuEleNcBias(G4double bf); void SetNuNucleusBias(G4double bf); @@ -103,6 +104,7 @@ private: G4bool phadActivated; G4bool fNuActivated; G4bool fNuETotXscActivated; + G4bool fUseGammaNuclearXS; G4double gmumuFactor; G4double pmumuFactor; diff --git a/source/physics_lists/constructors/gamma_lepto_nuclear/include/G4EmMessenger.hh b/source/physics_lists/constructors/gamma_lepto_nuclear/include/G4EmMessenger.hh index 22fcba7633..9582fcc4e6 100644 --- a/source/physics_lists/constructors/gamma_lepto_nuclear/include/G4EmMessenger.hh +++ b/source/physics_lists/constructors/gamma_lepto_nuclear/include/G4EmMessenger.hh @@ -74,6 +74,7 @@ private: G4UIcmdWithABool* thePH; G4UIcmdWithABool* theNu; G4UIcmdWithABool* theNuETX; + G4UIcmdWithABool* theXS; G4UIcmdWithADouble* theGMM1; G4UIcmdWithADouble* thePMM1; diff --git a/source/physics_lists/constructors/gamma_lepto_nuclear/sources.cmake b/source/physics_lists/constructors/gamma_lepto_nuclear/sources.cmake index 9876a9ff18..e08a3bb2f7 100644 --- a/source/physics_lists/constructors/gamma_lepto_nuclear/sources.cmake +++ b/source/physics_lists/constructors/gamma_lepto_nuclear/sources.cmake @@ -14,75 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/run/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/builders/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/factory/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/electromagnetic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/highenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/xrays/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/optical/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/stopping/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/qmd/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/coherent_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/gamma_nuclear/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lepto_nuclear/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lend/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/qgsm/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/radioactive_decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4phys_ctor_glnuclear HEADERS G4BertiniElectroNuclearBuilder.hh diff --git a/source/physics_lists/constructors/gamma_lepto_nuclear/src/G4EmExtraPhysics.cc b/source/physics_lists/constructors/gamma_lepto_nuclear/src/G4EmExtraPhysics.cc index ebe103a13e..a839a87bf6 100644 --- a/source/physics_lists/constructors/gamma_lepto_nuclear/src/G4EmExtraPhysics.cc +++ b/source/physics_lists/constructors/gamma_lepto_nuclear/src/G4EmExtraPhysics.cc @@ -107,6 +107,7 @@ #include "G4GammaGeneralProcess.hh" #include "G4LossTableManager.hh" +#include "G4GammaNuclearXS.hh" #include "G4HadronicParameters.hh" #include "G4PhysicsListHelper.hh" @@ -132,6 +133,7 @@ G4EmExtraPhysics::G4EmExtraPhysics(G4int ver): phadActivated (false), fNuActivated (false), fNuETotXscActivated (false), + fUseGammaNuclearXS(false), gmumuFactor (1.0), pmumuFactor (1.0), phadFactor (1.0), @@ -232,6 +234,11 @@ void G4EmExtraPhysics::NuETotXscActivated(G4bool val) fNuETotXscActivated = val; } +void G4EmExtraPhysics::SetUseGammaNuclearXS(G4bool val) +{ + fUseGammaNuclearXS = val; +} + void G4EmExtraPhysics::SetNuEleCcBias(G4double bf) { if(bf > 0.0) fNuEleCcBias = bf; @@ -437,6 +444,9 @@ void G4EmExtraPhysics::ConstructGammaElectroNuclear() G4PhysicsListHelper* ph = G4PhysicsListHelper::GetPhysicsListHelper(); G4PhotoNuclearProcess* gnuc = new G4PhotoNuclearProcess(); + if(fUseGammaNuclearXS) { + gnuc->AddDataSet(new G4GammaNuclearXS()); + } G4QGSModel< G4GammaParticipants >* theStringModel = new G4QGSModel< G4GammaParticipants >; @@ -468,10 +478,10 @@ void G4EmExtraPhysics::ConstructGammaElectroNuclear() theModel->SetMaxEnergy(param->GetMaxEnergy()); gnuc->RegisterMe(theModel); - G4GammaGeneralProcess* sp = + G4GammaGeneralProcess* gproc = (G4GammaGeneralProcess*)emManager->GetGammaGeneralProcess(); - if(sp) { - sp->AddHadProcess(gnuc); + if(gproc != nullptr) { + gproc->AddHadProcess(gnuc); } else { // LEND may be activated if the general process is not activated ph->RegisterProcess(gnuc, G4Gamma::Gamma()); @@ -483,11 +493,23 @@ void G4EmExtraPhysics::ConstructGammaElectroNuclear() G4PositronNuclearProcess* pnuc = new G4PositronNuclearProcess; G4ElectroVDNuclearModel* eModel = new G4ElectroVDNuclearModel; - enuc->RegisterMe(eModel); - ph->RegisterProcess(enuc, G4Electron::Electron()); + G4GammaGeneralProcess* eproc = + (G4GammaGeneralProcess*)emManager->GetElectronGeneralProcess(); + if(eproc != nullptr) { + eproc->AddHadProcess(enuc); + } else { + enuc->RegisterMe(eModel); + ph->RegisterProcess(enuc, G4Electron::Electron()); + } - pnuc->RegisterMe(eModel); - ph->RegisterProcess(enuc, G4Positron::Positron()); + G4GammaGeneralProcess* pproc = + (G4GammaGeneralProcess*)emManager->GetPositronGeneralProcess(); + if(pproc != nullptr) { + pproc->AddHadProcess(pnuc); + } else { + pnuc->RegisterMe(eModel); + ph->RegisterProcess(enuc, G4Positron::Positron()); + } } } diff --git a/source/physics_lists/constructors/gamma_lepto_nuclear/src/G4EmMessenger.cc b/source/physics_lists/constructors/gamma_lepto_nuclear/src/G4EmMessenger.cc index cfe311291d..82514b97dd 100644 --- a/source/physics_lists/constructors/gamma_lepto_nuclear/src/G4EmMessenger.cc +++ b/source/physics_lists/constructors/gamma_lepto_nuclear/src/G4EmMessenger.cc @@ -73,6 +73,11 @@ G4EmMessenger::G4EmMessenger(G4EmExtraPhysics* ab) theGN->SetGuidance("Switching on gamma nuclear physics."); theGN->AvailableForStates(G4State_PreInit); + // command for gamma nuclear physics. + theXS = new G4UIcmdWithABool("/physics_lists/em/UseGammaNuclearXS",this); + theXS->SetGuidance("Use XS gamma nuclear cross section."); + theXS->AvailableForStates(G4State_PreInit); + // command for lend gamma nuclear physics. theGLENDN = new G4UIcmdWithABool("/physics_lists/em/LENDGammaNuclear",this); theGLENDN->SetGuidance("Switching on LEND gamma nuclear physics."); @@ -164,6 +169,7 @@ G4EmMessenger::~G4EmMessenger() delete theNuNucleusBF; delete theNuDN; delete theGNlowe; + delete theXS; delete aDir1; delete aDir2; @@ -181,14 +187,15 @@ void G4EmMessenger::SetNewValue(G4UIcommand* aComm, G4String aS) if(aComm==thePMM) theB->PositronToMuMu(thePMM->GetNewBoolValue(aS)); if(aComm==thePH) theB->PositronToHadrons(thePH->GetNewBoolValue(aS)); if(aComm==theNu) theB->NeutrinoActivated(theNu->GetNewBoolValue(aS)); - if(aComm==theNuETX) theB->NuETotXscActivated(theNu->GetNewBoolValue(aS)); + if(aComm==theNuETX) theB->NuETotXscActivated(theNuETX->GetNewBoolValue(aS)); + if(aComm==theXS) theB->SetUseGammaNuclearXS(theXS->GetNewBoolValue(aS)); if(aComm==theGMM1) theB->GammaToMuMuFactor(theGMM1->GetNewDoubleValue(aS)); if(aComm==thePMM1) theB->PositronToMuMuFactor(thePMM1->GetNewDoubleValue(aS)); if(aComm==thePH1) theB->PositronToHadronsFactor(thePH1->GetNewDoubleValue(aS)); if(aComm==theNuEleCcBF) theB->SetNuEleCcBias(theNuEleCcBF->GetNewDoubleValue(aS)); - if(aComm==theNuEleNcBF) theB->SetNuEleNcBias(theNuEleCcBF->GetNewDoubleValue(aS)); + if(aComm==theNuEleNcBF) theB->SetNuEleNcBias(theNuEleNcBF->GetNewDoubleValue(aS)); if(aComm==theNuNucleusBF) theB->SetNuNucleusBias(theNuNucleusBF->GetNewDoubleValue(aS)); if(aComm==theGNlowe) theB->GammaNuclearLEModelLimit(theGNlowe->GetNewDoubleValue(aS)); diff --git a/source/physics_lists/constructors/hadron_elastic/History b/source/physics_lists/constructors/hadron_elastic/History index e1c7473c05..5cc3e1a321 100644 --- a/source/physics_lists/constructors/hadron_elastic/History +++ b/source/physics_lists/constructors/hadron_elastic/History @@ -12,6 +12,29 @@ introduced in the code and keeptrack of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- + +01-Oct-2020, V. Ivanchenko (phys-ctor-helastic-V10-06-06) +- G4ThermalNeutrons - use G4PhysListUtils to access neutron elastic + process + +17-Sep-2020, A. Ribon (phys-ctor-helastic-V10-06-05) +- G4HadronHElasticPhysics : added elastic scattering for charm and bottom + hadrons (needed for FTFP_BERT_TRV). + +24-Aug-2020, V. Ivanchenko (phys-ctor-helastic-V10-06-04) +- G4HadronElasticPhysics - use G4HadProcesses and G4PhysListUtil + +01-Aug-2020, V. Ivanchenko (phys-ctor-helastic-V10-06-03) +- G4HadronElasticPhysics - added optional cross section factor + for systematics studies + +20-Jul-2020, V. Ivanchenko (phys-ctor-helastic-V10-06-02) +- G4HadronElasticPhysics - instantiate anti-hyperons + +02-Jul-2020, V. Ivanchenko (phys-ctor-helastic-V10-06-01) +- G4HadronElasticPhysics - use coherently with inelastic physics + builder new utilities: G4HadParticles and G4HadronicBuilder + 30-Apr-2020 Ben Morgan (phys-ctor-helastic-V10-06-00) - Remove obsolete GRANULAR_DEPENDENCIES entries diff --git a/source/physics_lists/constructors/hadron_elastic/sources.cmake b/source/physics_lists/constructors/hadron_elastic/sources.cmake index b114d7d21a..4bb7b7ec1d 100644 --- a/source/physics_lists/constructors/hadron_elastic/sources.cmake +++ b/source/physics_lists/constructors/hadron_elastic/sources.cmake @@ -14,51 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/run/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/builders/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/factory/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/hadron_inelastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/stopping/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/coherent_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lend/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/particle_hp/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4phys_ctor_helastic HEADERS G4ChargeExchangePhysics.hh diff --git a/source/physics_lists/constructors/hadron_elastic/src/G4HadronElasticPhysics.cc b/source/physics_lists/constructors/hadron_elastic/src/G4HadronElasticPhysics.cc index 43758ec358..72be8640df 100644 --- a/source/physics_lists/constructors/hadron_elastic/src/G4HadronElasticPhysics.cc +++ b/source/physics_lists/constructors/hadron_elastic/src/G4HadronElasticPhysics.cc @@ -56,19 +56,18 @@ #include "G4ElasticHadrNucleusHE.hh" #include "G4AntiNuclElastic.hh" -#include "G4ComponentGGHadronNucleusXsc.hh" -#include "G4ComponentGGNuclNuclXsc.hh" - #include "G4BGGNucleonElasticXS.hh" #include "G4BGGPionElasticXS.hh" -#include "G4CrossSectionDataSetRegistry.hh" - #include "G4ChipsProtonElasticXS.hh" #include "G4NeutronElasticXS.hh" -#include "G4CrossSectionElastic.hh" +#include "G4HadronicParameters.hh" +#include "G4HadronicBuilder.hh" +#include "G4HadParticles.hh" +#include "G4HadProcesses.hh" +#include "G4PhysListUtil.hh" // factory #include "G4PhysicsConstructorFactory.hh" @@ -103,146 +102,106 @@ void G4HadronElasticPhysics::ConstructParticle() void G4HadronElasticPhysics::ConstructProcess() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + G4ParticleTable* table = G4ParticleTable::GetParticleTable(); + G4PhysicsListHelper* ph = G4PhysicsListHelper::GetPhysicsListHelper(); + const G4double elimitAntiNuc = 100.*MeV; const G4double delta = 0.1*MeV; + G4double emax = std::max(param->GetMaxEnergy(), elimitAntiNuc+delta); if(verbose > 1) { G4cout << "### HadronElasticPhysics::ConstructProcess: " - << "Elimit for for anti-neuclei " << elimitAntiNuc/GeV << " GeV" + << "Elimit for for anti-neuclei " << elimitAntiNuc/CLHEP::GeV << " GeV" + << " for all hadrons Emax(GeV)= " << emax/CLHEP::GeV << G4endl; } - G4AntiNuclElastic* anuc = new G4AntiNuclElastic(); - anuc->SetMinEnergy(elimitAntiNuc); - G4CrossSectionElastic* anucxs = - new G4CrossSectionElastic(anuc->GetComponentCrossSection()); - G4HadronElastic* lhep0 = new G4HadronElastic(); G4HadronElastic* lhep2 = new G4HadronElastic(); + lhep0->SetMaxEnergy(emax); lhep2->SetMaxEnergy(elimitAntiNuc+delta); G4ElasticHadrNucleusHE* he = new G4ElasticHadrNucleusHE(); + he->SetMaxEnergy(emax); - G4VCrossSectionDataSet* theComponentGGHadronNucleusData = - new G4CrossSectionElastic( new G4ComponentGGHadronNucleusXsc ); + G4AntiNuclElastic* anuc = new G4AntiNuclElastic(); + anuc->SetMinEnergy(elimitAntiNuc); + anuc->SetMaxEnergy(emax); - G4VCrossSectionDataSet* theComponentGGNuclNuclData = - new G4CrossSectionElastic( new G4ComponentGGNuclNuclXsc ); + auto anucxs = G4HadProcesses::ElasticXS("AntiAGlauber"); + auto xsNN = G4HadProcesses::ElasticXS("Glauber-Gribov Nucl-nucl"); - G4HadronElasticProcess* hel = nullptr; + // p + G4ParticleDefinition* particle = G4Proton::Proton(); + G4HadronElasticProcess* hel = new G4HadronElasticProcess(); + hel->AddDataSet(new G4BGGNucleonElasticXS(particle)); + hel->RegisterMe(new G4ChipsElasticModel()); + if( useFactorXS ) hel->MultiplyCrossSectionBy( param->XSFactorNucleonElastic() ); + ph->RegisterProcess(hel, particle); - auto myParticleIterator=GetParticleIterator(); - myParticleIterator->reset(); - while( (*myParticleIterator)() ) - { - G4ParticleDefinition* particle = myParticleIterator->value(); - G4ProcessManager* pmanager = particle->GetProcessManager(); - G4String pname = particle->GetParticleName(); - if(pname == "anti_lambda" || - pname == "anti_omega-" || - pname == "anti_sigma-" || - pname == "anti_sigma0" || - pname == "anti_sigma+" || - pname == "anti_xi-" || - pname == "anti_xi0" || - pname == "lambda" || - pname == "omega-" || - pname == "sigma-" || - pname == "sigma0" || - pname == "sigma+" || - pname == "xi-" || - pname == "xi0" - ) { - - hel = new G4HadronElasticProcess(); - hel->RegisterMe(lhep0); - hel->AddDataSet( theComponentGGHadronNucleusData ); - pmanager->AddDiscreteProcess(hel); - if(verbose > 1) { - G4cout << "### HadronElasticPhysics: " << hel->GetProcessName() - << " added for " << particle->GetParticleName() << G4endl; - } + // n + particle = G4Neutron::Neutron(); + hel = new G4HadronElasticProcess(); + hel->AddDataSet(new G4NeutronElasticXS()); + hel->RegisterMe(new G4ChipsElasticModel()); + if( useFactorXS ) hel->MultiplyCrossSectionBy( param->XSFactorNucleonElastic() ); + ph->RegisterProcess(hel, particle); - } else if(pname == "alpha" || - pname == "deuteron" || - pname == "triton" || - pname == "He3" - ) { - hel = new G4HadronElasticProcess(); - hel->AddDataSet(theComponentGGNuclNuclData); - hel->RegisterMe(lhep0); - pmanager->AddDiscreteProcess(hel); - if(verbose > 1) { - G4cout << "### HadronElasticPhysics: " << hel->GetProcessName() - << " added for " << particle->GetParticleName() << G4endl; - } + // pi+ + particle = G4PionPlus::PionPlus(); + hel = new G4HadronElasticProcess(); + hel->AddDataSet(new G4BGGPionElasticXS(particle)); + hel->RegisterMe(he); + if( useFactorXS ) hel->MultiplyCrossSectionBy( param->XSFactorPionElastic() ); + ph->RegisterProcess(hel, particle); - } else if(pname == "proton") { + // pi- + particle = G4PionMinus::PionMinus(); + hel = new G4HadronElasticProcess(); + hel->AddDataSet(new G4BGGPionElasticXS(particle)); + hel->RegisterMe(he); + if( useFactorXS ) hel->MultiplyCrossSectionBy( param->XSFactorPionElastic() ); + ph->RegisterProcess(hel, particle); + + // kaons + G4HadronicBuilder::BuildElastic( G4HadParticles::GetKaons() ); + + // d, t, He3, alpha + for( auto & pdg : G4HadParticles::GetLightIons() ) { + particle = table->FindParticle( pdg ); + if ( particle == nullptr ) { continue; } + + hel = new G4HadronElasticProcess(); + hel->AddDataSet(xsNN); + hel->RegisterMe(lhep0); + if( useFactorXS ) hel->MultiplyCrossSectionBy( param->XSFactorHadronElastic() ); + ph->RegisterProcess(hel, particle); + } + + // high energy particles + if( emax > param->EnergyThresholdForHeavyHadrons() ) { + + // pbar, nbar, anti light ions + for( auto & pdg : G4HadParticles::GetLightAntiIons() ) { + particle = table->FindParticle( pdg ); + if ( particle == nullptr ) { continue; } hel = new G4HadronElasticProcess(); - hel->AddDataSet(new G4BGGNucleonElasticXS(particle)); - hel->RegisterMe(new G4ChipsElasticModel()); - pmanager->AddDiscreteProcess(hel); - if(verbose > 1) { - G4cout << "### HadronElasticPhysics: " << hel->GetProcessName() - << " added for " << particle->GetParticleName() << G4endl; - } - - } else if(pname == "neutron") { - - hel = new G4HadronElasticProcess(); - hel->AddDataSet(new G4NeutronElasticXS()); - hel->RegisterMe(new G4ChipsElasticModel()); - pmanager->AddDiscreteProcess(hel); - if(verbose > 1) { - G4cout << "### HadronElasticPhysics: " << hel->GetProcessName() - << " added for " << particle->GetParticleName() << G4endl; - } - - } else if (pname == "pi+" || pname == "pi-") { - - hel = new G4HadronElasticProcess(); - hel->AddDataSet(new G4BGGPionElasticXS(particle)); - hel->RegisterMe(he); - pmanager->AddDiscreteProcess(hel); - if(verbose > 1) { - G4cout << "### HadronElasticPhysics: " << hel->GetProcessName() - << " added for " << particle->GetParticleName() << G4endl; - } - - } else if(pname == "kaon-" || - pname == "kaon+" || - pname == "kaon0S" || - pname == "kaon0L" - ) { - - hel = new G4HadronElasticProcess(); - //AR-14Aug2017 : Replaced Gheisha elastic kaon cross sections with - // Grichine's Glauber-Gribov ones. In this way, the - // total (elastic + inelastic) kaon cross sections - // are consistent with the PDG ones. - // For the time being, kept Gheisha elastic as - // final-state model. - hel->AddDataSet( theComponentGGHadronNucleusData ); - hel->RegisterMe(lhep0); - pmanager->AddDiscreteProcess(hel); - if(verbose > 1) { - G4cout << "### HadronElasticPhysics: " << hel->GetProcessName() - << " added for " << particle->GetParticleName() << G4endl; - } - - } else if( - pname == "anti_proton" || - pname == "anti_neutron" || - pname == "anti_alpha" || - pname == "anti_deuteron" || - pname == "anti_triton" || - pname == "anti_He3" ) { - - hel = new G4HadronElasticProcess(); - hel->AddDataSet(anucxs); hel->RegisterMe(lhep2); hel->RegisterMe(anuc); - pmanager->AddDiscreteProcess(hel); + hel->AddDataSet(anucxs); + if( useFactorXS ) hel->MultiplyCrossSectionBy( param->XSFactorHadronElastic() ); + ph->RegisterProcess(hel, particle); + } + + // hyperons + G4HadronicBuilder::BuildElastic( G4HadParticles::GetHyperons() ); + G4HadronicBuilder::BuildElastic( G4HadParticles::GetAntiHyperons() ); + + // b-, c- baryons and mesons + if( G4HadronicParameters::Instance()->EnableBCParticles() ) { + G4HadronicBuilder::BuildElastic( G4HadParticles::GetBCHadrons() ); } } } @@ -250,16 +209,7 @@ void G4HadronElasticPhysics::ConstructProcess() G4HadronicProcess* G4HadronElasticPhysics::GetElasticProcess(const G4ParticleDefinition* part) const { - G4HadronicProcess* hp = nullptr; - G4ProcessVector* pv = part->GetProcessManager()->GetPostStepProcessVector(); - size_t n = pv->size(); - for(size_t i=0; iGetProcessSubType() == fHadronElastic) { - hp = static_cast((*pv)[i]); - break; - } - } - return hp; + return G4PhysListUtil::FindElasticProcess(part); } G4HadronElastic* @@ -268,8 +218,8 @@ G4HadronElasticPhysics::GetElasticModel(const G4ParticleDefinition* part) const G4HadronElastic* mod = nullptr; G4HadronicProcess* hel = GetElasticProcess(part); if(hel) { - std::vector& hi = hel->GetHadronicInteractionList(); - if(hi.size() > 0) { mod = static_cast(hi[0]); } + std::vector& hi = hel->GetHadronicInteractionList(); + if( !hi.empty() ) { mod = static_cast(hi[0]); } } return mod; } diff --git a/source/physics_lists/constructors/hadron_elastic/src/G4HadronHElasticPhysics.cc b/source/physics_lists/constructors/hadron_elastic/src/G4HadronHElasticPhysics.cc index 760e41f662..37806b0a0c 100644 --- a/source/physics_lists/constructors/hadron_elastic/src/G4HadronHElasticPhysics.cc +++ b/source/physics_lists/constructors/hadron_elastic/src/G4HadronHElasticPhysics.cc @@ -73,6 +73,11 @@ #include "G4DiffElasticRatio.hh" #include "G4AutoDelete.hh" +#include "G4HadronicParameters.hh" +#include "G4HadronicBuilder.hh" +#include "G4HadParticles.hh" + + // factory #include "G4PhysicsConstructorFactory.hh" // @@ -302,4 +307,10 @@ void G4HadronHElasticPhysics::ConstructProcess() { } } } + + // Charm and bottom hadrons + if ( G4HadronicParameters::Instance()->EnableBCParticles() ) { + G4HadronicBuilder::BuildElastic( G4HadParticles::GetBCHadrons() ); + } + } diff --git a/source/physics_lists/constructors/hadron_elastic/src/G4ThermalNeutrons.cc b/source/physics_lists/constructors/hadron_elastic/src/G4ThermalNeutrons.cc index f0cd03376b..dbc94a110a 100644 --- a/source/physics_lists/constructors/hadron_elastic/src/G4ThermalNeutrons.cc +++ b/source/physics_lists/constructors/hadron_elastic/src/G4ThermalNeutrons.cc @@ -45,7 +45,7 @@ #include "G4ParticleHPThermalScatteringData.hh" #include "G4BuilderType.hh" - +#include "G4PhysListUtil.hh" #include "G4SystemOfUnits.hh" G4ThermalNeutrons::G4ThermalNeutrons(G4int ver) : @@ -60,7 +60,7 @@ void G4ThermalNeutrons::ConstructProcess() { G4cout << "### " << GetPhysicsName() << " Construct Processes " << G4endl; } G4Neutron* part = G4Neutron::Neutron(); - G4HadronicProcess* hpel = FindElasticProcess(part); + G4HadronicProcess* hpel = G4PhysListUtil::FindElasticProcess(part); if(!hpel) { G4cout << "### " << GetPhysicsName() << " WARNING: Fail to add thermal neutron scattering" << G4endl; diff --git a/source/physics_lists/constructors/hadron_inelastic/History b/source/physics_lists/constructors/hadron_inelastic/History index 0fa7f862d3..03c6a5dbc1 100644 --- a/source/physics_lists/constructors/hadron_inelastic/History +++ b/source/physics_lists/constructors/hadron_inelastic/History @@ -12,7 +12,87 @@ introduced in the code and keeptrack of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- -38-May-2020 Ben Morgan (phys-ctor-hinelastic-V10-06-04) + +26-November-2020, Alberto Ribon (phys-ctor-hinelastic-V10-06-18) +- Update README. + +04-November-2020, Alberto Ribon (phys-ctor-hinelastic-V10-06-17) +- G4HadronPhysicsFTFP_BERT, G4HadronPhysicsQGSP_BERT, G4HadronInelasticQBBC : + enabled charm and bottom hadronic physics (now available in nearly all + physics lists, in particular those of interest for HEP; the main + exception is QGSP_BIC and its derived physics lists, which are + typically used for low-energy applications). + +30-October-2020, Vladimir Ivanchenko (phys-ctor-hinelastic-V10-06-16) +- G4HadronPhysicsINCLXX - use inheritance from the base + class G4HadronPhysicsFTFP_BERT; removed duplicate code; + clean-up; list of models and applicability intervals are the same; + implemented b-, c- particle physics and cross section factor + +19-October-2020, Vladimir Ivanchenko (phys-ctor-hinelastic-V10-06-15) +- G4HadronPhysicsFTF_BIC, G4HadronPhysicsQGS_BIC, + G4HadronPhysicsFTFQGSP_BERT - use inheritance from the base + class G4HadronPhysicsFTFP_BERT; removed duplicate code; + clean-up; list of models and applicability intervals are the same; + implemented b-, c- particle physics and cross section factor + Improved comments and info printouts in other physics classes + G4HadronInelasticQBBC - use G4HadronicBuilder, apply the Binary + cascade to pions below 1.5 GeV + +02-October-2020, Vladimir Ivanchenko (phys-ctor-hinelastic-V10-06-14) +- G4HadronPhysicsNuBeam, G4HadronPhysicsShielding, + G4HadronPhysicsShieldingLEND - use inheritance from the base + class G4HadronPhysicsFTFP_BERT; removed duplicate code; + clean-up; list of models and applicability intervals are the same; + implemented b-, c- particle physics and cross section factor + Improved comments and info printouts in other physics classes + +01-October-2020, Vladimir Ivanchenko (phys-ctor-hinelastic-V10-06-13) +- G4HadronPhysicsQGSP_BERT, G4HadronPhysicsQGSP_FTFP_BERT, + G4HadronPhysicsQGSP_BERT_HP - implement DumpBanner() method +- G4VHadronPhysics - removed unused method + +22-September-2020, Vladimir Ivanchenko (phys-ctor-hinelastic-V10-06-12) +- G4HadronInelasticFTFP_BERT, G4HadronInelasticFTFP_BERT_HP, + G4HadronInelasticFTFP_BERT_ATL, G4HadronInelasticFTFP_BERT_TRV - added + optinal cross section factor for systematics studies; added b-, c- + physics; added more c++11 keywords; removed unused headers + +17-September-2020, Alberto Ribon (phys-ctor-hinelastic-V10-06-11) +- G4HadronInelasticQGSP_BERT and G4HadronInelasticQGSP_BIC : replaced + G4HadronicBuilder::BuildAntiLightIonsQGSP_FTFP with + G4HadronicBuilder::BuildAntiLightIonsFTFP + (because currently QGSP cannot be applied to any ion or anti-ion). + +02-September-2020, Vladimir Ivanchenko (phys-ctor-hinelastic-V10-06-10) +- G4HadronInelasticQGSP_BERT, G4HadronInelasticQGSP_BIC - allow + modification of parameters at PreInit stage +- G4HadronInelasticQGSP_FTFP_BERT - enable b- and c- particle physics + +25-August-2020, Vladimir Ivanchenko (phys-ctor-hinelastic-V10-06-09) +- G4HadronInelasticQGSP_BERT, G4HadronInelasticQGSP_BERT_HP, + G4HadronInelasticQGSP_FTFP_BERT - added optinal cross section factor for + systematics studies; added b-, c- physics; added more c++11 keywords +- G4VHadronPhysics - removed obsolete methods + +21-August-2020, Vladimir Ivanchenko (phys-ctor-hinelastic-V10-06-08) +- G4HadronInelasticQBBC - fixed neutrom and anti-baryon configurations +- G4HadronInelasticQGSP_BIC, G4HadronInelasticQGSP_BIC_HP, + G4HadronInelasticQGSP_BIC_AllHP - added optinal cross section factor for + systematics studies; added b-, c- physics; + +01-August-2020, Vladimir Ivanchenko (phys-ctor-hinelastic-V10-06-07) +- G4HadronInelasticQBBC - added optinal cross section factor for + systematics studies + +19-July-2020, Vladimir Ivanchenko (phys-ctor-hinelastic-V10-06-06) +- G4HadronInelasticQBBC - use correct utility methods + +09-July-2020, Vladimir Ivanchenko (phys-ctor-hinelastic-V10-06-05) +- G4HadronInelasticQBBC - use utilites G4HadParticle and G4HadronicBuilder +- G4VHadronPhysics - removed obsolete methods and thread_local methods + +30-May-2020 Ben Morgan (phys-ctor-hinelastic-V10-06-04) - Remove obsolete GRANULAR_DEPENDENCIES entries 20-May-2020, Alberto Ribon (phys-ctor-hinelastic-V10-06-03) diff --git a/source/physics_lists/constructors/hadron_inelastic/README b/source/physics_lists/constructors/hadron_inelastic/README index c0f6d8ddbf..f9a4cd495c 100644 --- a/source/physics_lists/constructors/hadron_inelastic/README +++ b/source/physics_lists/constructors/hadron_inelastic/README @@ -17,7 +17,7 @@ - final-state: G4NeutronRadCapture - charged pions inelastic: - cross section: Barashenkov-Glauber-Gribov - - final-state: FTFP > 3 GeV; BERT < 6 GeV + - final-state: FTFP > 3 GeV; 1 GeV < BERT < 12 GeV; BIC < 1.5 GeV - kaons inelastic: - cross section: Glauber-Gribov - final-state: FTFP > 3 GeV; BERT < 6 GeV @@ -30,8 +30,11 @@ - anti_hyperons inelastic: - cross section: Glauber-Gribov - final-state: FTFP for all energies + - charm and bottom hadrons inelastic: + - cross section: Glauber-Gribov + - final-state: FTFP for all energies + - G4HadronPhysicsFTFP_BERT ------------------------ Hadron nuclear inelastic processes for all hadrons: @@ -59,8 +62,11 @@ - anti_hyperons inelastic: - cross section: Glauber-Gribov - final-state: FTFP for all energies + - charm and bottom hadrons inelastic: + - cross section: Glauber-Gribov + - final-state: FTFP for all energies + - G4HadronPhysicsFTFP_BERT_ATL ---------------------------- Similar to G4HadronPhysicsFTFP_BERT, with the difference that for proton, @@ -87,9 +93,7 @@ G4HadronPhysicsFTFP_BERT_TRV ---------------------------- - Similar to G4HadronPhysicsFTFP_BERT, with only one difference: - - the inelastic cross sections for hyperons is Glauber-Gribov - (instead of Chips). + The same as G4HadronPhysicsFTFP_BERT. G4HadronPhysicsFTF_BIC @@ -101,6 +105,12 @@ - FTF is coupled with BIC (instead of directly to Precompound/de-excitation). + G4HadronPhysicsQGS_BIC + ---------------------- + Similar to G4HadronPhysicsFTP_BIC, except that QGSP is used above 12 GeV + and FTFP below 25 GeV. + + G4HadronPhysicsFTFQGSP_BERT --------------------------- Similar to G4HadronPhysicsFTFP_BERT, but with QGS fragmentation of strings @@ -109,50 +119,31 @@ G4HadronPhysicsINCLXX --------------------- - Hadron nuclear inelastic processes for all hadrons: + Similar to QGSP_BERT except for: - proton inelastic: - cross section: Barashenkov-Glauber-Gribov (G4BGGNucleonInelasticXS) - final-state: QGSP > 15 GeV; 1 MeV < INCLXX < 20 GeV; Preco < 2 MeV - neutron inelastic: - cross section: G4NeutronInelasticXS - final-state: QGSP > 15 GeV; 1 MeV < INCLXX < 20 GeV; Preco < 2 MeV - neutron capture: - - cross section: G4NeutronCaptureXS - - final-state: G4NeutronRadCapture - charged pions inelastic: - cross section: Barashenkov-Glauber-Gribov - final-state: QGSP > 15 GeV; 1 MeV < INCLXX < 20 GeV; Preco < 2 MeV - kaons inelastic: - cross section: Glauber-Gribov - final-state: QGSP > 14 GeV; BERT < 15 GeV - - hyperons inelastic: - - cross section: Glauber-Gribov - - final-state: QGSP > 12 GeV; 3 GeV < FTFP < 25 GeV; BERT < 6 GeV - - anti_proton and anti_neutron inelastic: - - cross-section: Galoyan-Uzhinsky-Glauber-Gribov - - final-state: QGSP > 12 GeV; FTFP < 25 GeV - - anti_deuteron, anti_triton, anti_He3, and anti_alpha inelastic: - - cross-section: Galoyan-Uzhinsky-Glauber-Gribov - - final-state: FTFP for all energies - - anti_hyperons inelastic: - - cross section: Glauber-Gribov - - final-state: QGSP > 12 GeV; FTFP < 25 GeV - Note: it is possible to specify in the constructor the use of FTFP instead - of QGSP for proton, neutron, charged pions and kaons; - moreover, NeutronHP can also be activated in the constructor, in which - case inelastic, capture and fission below 20 MeV are taken from - NeutronHP (both cross section and final-state). + Note: it is possible to specify in the constructor the use of FTFP + instead of QGSP; + moreover, NeutronHP can also be activated in the constructor, + in which case inelastic, capture and fission below 20 MeV are + taken from NeutronHP (both cross section and final-state). G4HadronPhysicsNuBeam --------------------- - Similar to FTFP_BERT, except for the final-state models of the most frequent - hadrons: + Similar to FTFP_BERT, except for the final-state models of proton: - proton : QGSP with Lund string fragmentation > 100 GeV; - 3 GeV < FTFP < 101 GeV; BERT < 3.5 GeV - - neutron : FTFP > 4 GeV; BERT < 5 GeV - - charged pions : FTFP > 3 GeV; BERT < 3.5 GeV - - kaons : FTFP > 3 GeV; BERT < 3.5 GeV + 3 GeV < FTFP < 101 GeV; BERT < 6 GeV G4HadronPhysicsQGSP_BERT @@ -185,8 +176,17 @@ - anti_hyperons inelastic: - cross section: Glauber-Gribov - final-state: QGSP > 12 GeV; FTFP < 25 GeV + - charm and bottom hadrons inelastic: + - cross section: Glauber-Gribov + - final-state: QGSP > 12 GeV; FTFP < 25 GeV + + +G4HadronPhysicsQGSP_FTFP_BERT + ----------------------------- + Currently it is the same as QGSP_BERT (this was not the case before G4 10.6). + It might be removed in future versions of Geant4. + - G4HadronPhysicsQGSP_BERT_HP --------------------------- Similar to G4HadronPhysicsQGSP_BERT, but with a different treatment of @@ -202,7 +202,7 @@ below 20 MeV; above Gheisha (cross section and final state). Moreover, RadioactiveDecay is activated (as in all the physics lists that use HP). - + G4HadronPhysicsQGSP_BIC ----------------------- Hadron nuclear inelastic processes for all hadrons: @@ -259,57 +259,16 @@ above it: Barashenkov-Glauber-Gribov inelastic cross section; final-state: QGSP > 12 GeV; 3 GeV < FTFP < 25 GeV; 190 MeV < BIC < 6 GeV. - - G4HadronPhysicsQGSP_FTFP_BERT - ----------------------------- - Currently it is the same as QGSP_BERT (this was not the case before G4 10.6). - It might be removed in future versions of Geant4. - - G4HadronPhysicsQGS_BIC - ---------------------- - Similar to G4HadronPhysicsQGSP_BIC, with the following differences: - - For proton and neutron, BIC is used (instead of BERT) below 6 GeV - - For pions, BIC is used below 1.5 GeV, whereas BERT is used in the - interval 1 GeV < BERT < 6 GeV - - Both string models (i.e. QGS and FTF) are coupled with BIC - (instead of directly to Precompound/de-excitation). - - G4HadronPhysicsShielding ------------------------ - Hadron nuclear inelastic processes for all hadrons: - - proton inelastic: - - cross section: Barashenkov-Glauber-Gribov (G4BGGNucleonInelasticXS) - - final-state: FTFP > 3 GeV; BERT < 6 GeV - - neutron inelastic: - - cross section: G4NeutronInelasticXS > 20 MeV; NeutronHP or LEND < 20 MeV - - final-state: FTFP > 3 GeV; 19.9 MeV < BERT < 6 GeV; NeutronHP or LEND < 20 MeV - neutron capture: - - cross section: G4NeutronCaptureXS > 20 MeV; NeutronHP or LEND < 20 MeV - - final-state: G4NeutronRadCapture > 19.9 MeV; NeutronHP or LEND < 20 MeV - neutron fission: - - cross section: Gheisha > 20 MeV; NeutronHP or LEND < 20 MeV - - final-state: Gheisha > 19.9 MeV; NeutronHP or LEND < 20 MeV - - charged pions inelastic: - - cross section: Barashenkov-Glauber-Gribov - - final-state: FTFP > 3 GeV; BERT < 6 GeV - - kaons inelastic: - - cross section: Glauber-Gribov - - final-state: FTFP > 3 GeV; BERT < 6 GeV - - hyperons inelastic: - - cross section: Glauber-Gribov - - final-state: QGSP > 12 GeV; 3 GeV < FTFP < 25 GeV; BERT < 6 GeV - - anti_proton, anti_neutron, anti_deuteron, anti_triton, anti_He3, anti_alpha inelastic: - - cross-section: Galoyan-Uzhinsky-Glauber-Gribov - - final-state: FTFP for all energies - - anti_hyperons inelastic: - - cross section: Glauber-Gribov - - final-state: QGSP > 12 GeV; FTFP < 25 GeV - Moreover, RadioactiveDecay is activated (as in all the physics lists that use HP). + Similar to G4HadronPhysicsFTFP_BERT_HP except for using + JENDLHEInelasticCrossSection for the neutron inelastic cross section + above 20 MeV. Note: the variant "M" of the Shielding physics list has a transition region - between FTFP and BERT - for proton, neutron, pions and kaons - between - 9.5 and 9.9 GeV (instead of 3-6 GeV). + between FTFP and BERT for pions between 9.5 and 9.9 GeV + (instead of 3-6 GeV). + G4HadronPhysicsShieldingLEND ---------------------------- diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronInelasticQBBC.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronInelasticQBBC.hh index 1e7827328e..6677b20664 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronInelasticQBBC.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronInelasticQBBC.hh @@ -41,9 +41,6 @@ #include "globals.hh" #include "G4VHadronPhysics.hh" -class G4ComponentAntiNuclNuclearXS; -class G4ComponentGGHadronNucleusXsc; - class G4HadronInelasticQBBC : public G4VHadronPhysics { public: @@ -56,19 +53,18 @@ public: G4bool chips = false, G4bool hp = false, G4bool glauber = false); - virtual ~G4HadronInelasticQBBC(); + ~G4HadronInelasticQBBC() override; // This method will be invoked in the Construct() method. // each physics process will be instantiated and // registered to the process manager of each particle type void ConstructProcess() override; -private: - // copy constructor and hide assignment operator - G4HadronInelasticQBBC(G4HadronInelasticQBBC &); - G4HadronInelasticQBBC & operator=(const G4HadronInelasticQBBC &right); + G4HadronInelasticQBBC(G4HadronInelasticQBBC &) = delete; + G4HadronInelasticQBBC & operator=(const G4HadronInelasticQBBC &right) = delete; +private: G4int verbose; }; diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT.hh index 8c5440237c..1dedde60b3 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT.hh @@ -34,6 +34,7 @@ // 23.11.2005 G.Folger: migration to non static particles // 08.06.2006 V.Ivanchenko: remove stopping // 19.06.2008 G.Folger: change default for QE to NOT use Chips QE +// 20.09.2020 V.Ivanchenko change design using G4HadProcess utility // //---------------------------------------------------------------------------- // @@ -41,44 +42,32 @@ #define G4HadronPhysicsFTFP_BERT_h 1 #include "globals.hh" -#include "G4ios.hh" #include "G4VPhysicsConstructor.hh" -#include "G4Cache.hh" - -class G4ComponentGGHadronNucleusXsc; -class G4VCrossSectionDataSet; - - class G4HadronPhysicsFTFP_BERT : public G4VPhysicsConstructor { public: G4HadronPhysicsFTFP_BERT(G4int verbose =1); G4HadronPhysicsFTFP_BERT(const G4String& name, G4bool quasiElastic=false); - virtual ~G4HadronPhysicsFTFP_BERT(); + ~G4HadronPhysicsFTFP_BERT() override; - public: - virtual void ConstructParticle() override; - //This will call in order: - // DumpBanner (for master) - // CreateModels - // ExtraConfiguation - virtual void ConstructProcess() override; + void ConstructParticle() override; + void ConstructProcess() override; + + // copy constructor and hide assignment operator + G4HadronPhysicsFTFP_BERT(G4HadronPhysicsFTFP_BERT &) = delete; + G4HadronPhysicsFTFP_BERT & operator = + (const G4HadronPhysicsFTFP_BERT &right) = delete; - // virtual void TerminateWorker() override; protected: - G4bool QuasiElastic; - //This calls the specific ones for the different particles in order - virtual void CreateModels(); + void CreateModels(); virtual void Neutron(); virtual void Proton(); virtual void Pion(); virtual void Kaon(); virtual void Others(); virtual void DumpBanner(); - //This contains extra configurataion specific to this PL - virtual void ExtraConfiguration(); G4double minFTFP_pion; G4double maxBERT_pion; @@ -88,6 +77,9 @@ class G4HadronPhysicsFTFP_BERT : public G4VPhysicsConstructor G4double maxBERT_proton; G4double minFTFP_neutron; G4double maxBERT_neutron; + G4double minBERT_proton; + G4double minBERT_neutron; + G4bool QuasiElastic; }; #endif diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT_ATL.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT_ATL.hh index ddf376ac3f..b28fd38aeb 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT_ATL.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT_ATL.hh @@ -36,6 +36,7 @@ // // Modified: // 18.07.2017 A.Dotti: refactor for allowing new code +// 22.09.2020: V.Ivanchenko change design using G4HadProcess utility //--------------------------------------------------------------------------- // #ifndef G4HadronPhysicsFTFP_BERT_ATL_h @@ -48,15 +49,14 @@ class G4HadronPhysicsFTFP_BERT_ATL : public G4HadronPhysicsFTFP_BERT public: G4HadronPhysicsFTFP_BERT_ATL(G4int verbose =1); G4HadronPhysicsFTFP_BERT_ATL(const G4String& name, G4bool quasiElastic=false); - virtual ~G4HadronPhysicsFTFP_BERT_ATL() {} + ~G4HadronPhysicsFTFP_BERT_ATL() override; - private: - //Modify the minimum needed - virtual void Neutron() override; - virtual void Proton() override; - virtual void Pion() override; - virtual void Kaon() override; - virtual void DumpBanner() override; + void ConstructProcess() override; + + // copy constructor and hide assignment operator + G4HadronPhysicsFTFP_BERT_ATL(G4HadronPhysicsFTFP_BERT_ATL &) = delete; + G4HadronPhysicsFTFP_BERT_ATL & operator = + (const G4HadronPhysicsFTFP_BERT_ATL &right) = delete; }; #endif diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT_HP.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT_HP.hh index efbfccdcfd..e0f656238d 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT_HP.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT_HP.hh @@ -34,6 +34,7 @@ // // Modified: // 18.07.2017: A.Dotti: refactoring code +// 22.09.2020: V.Ivanchenko change design using G4HadProcess utility //---------------------------------------------------------------------------- // #ifndef G4HadronPhysicsFTFP_BERT_HP_h @@ -46,15 +47,11 @@ class G4HadronPhysicsFTFP_BERT_HP : public G4HadronPhysicsFTFP_BERT public: G4HadronPhysicsFTFP_BERT_HP(G4int verbose =1); G4HadronPhysicsFTFP_BERT_HP(const G4String& name, G4bool quasiElastic=false); - virtual ~G4HadronPhysicsFTFP_BERT_HP() {} + ~G4HadronPhysicsFTFP_BERT_HP() override; protected: //Modify the minimum needed - virtual void Neutron() override; - virtual void DumpBanner() override; - virtual void ExtraConfiguration() override; - - double minBERT_neutron; + void Neutron() override; }; #endif diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT_TRV.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT_TRV.hh index eef60ff557..f0730a4792 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT_TRV.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFP_BERT_TRV.hh @@ -36,6 +36,7 @@ // 19.06.2008 G.Folger: change default for QE to NOT use Chips QE // 01.11.2012 W.Pokorski & A.Ribon: use new cross sections // 18.07.2016 A.Dotti: refactor following new code +// 20.09.2020 V.Ivanchenko change design using G4HadProcess utility // //---------------------------------------------------------------------------- // @@ -49,14 +50,12 @@ class G4HadronPhysicsFTFP_BERT_TRV : public G4HadronPhysicsFTFP_BERT public: G4HadronPhysicsFTFP_BERT_TRV(G4int verbose =1); G4HadronPhysicsFTFP_BERT_TRV(const G4String& name, G4bool quasiElastic=false); - virtual ~G4HadronPhysicsFTFP_BERT_TRV() {} + ~G4HadronPhysicsFTFP_BERT_TRV() override; - private: - //Modify the minimum needed - virtual void Pion() override; - virtual void Kaon() override; - //virtual void DumpBanner() override; - virtual void ExtraConfiguration() override; + // copy constructor and hide assignment operator + G4HadronPhysicsFTFP_BERT_TRV(G4HadronPhysicsFTFP_BERT_TRV &) = delete; + G4HadronPhysicsFTFP_BERT_TRV & operator = + (const G4HadronPhysicsFTFP_BERT_TRV &right) = delete; }; #endif diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFQGSP_BERT.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFQGSP_BERT.hh index 60348d43fe..d806493836 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFQGSP_BERT.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTFQGSP_BERT.hh @@ -35,124 +35,34 @@ // Given that it is an experimental, and perhaps temporary, new type of // hadron physics, corresponding builders are not created and everything // is implemented directly in this class. +// +// Modified: +// 19.10.2020 V.Ivanchenko use inheritance from G4HadronPhysicsFTFP_BERT +// //---------------------------------------------------------------------------- // #ifndef G4HadronPhysicsFTFQGSP_BERT_h #define G4HadronPhysicsFTFQGSP_BERT_h 1 -#include "globals.hh" -#include "G4ios.hh" +#include "G4HadronPhysicsFTFP_BERT.hh" -#include "G4VPhysicsConstructor.hh" - -#include "G4NeutronRadCapture.hh" - -#include "G4TheoFSGenerator.hh" -#include "G4ExcitationHandler.hh" -#include "G4PreCompoundModel.hh" -#include "G4GeneratorPrecompoundInterface.hh" -#include "G4FTFModel.hh" -#include "G4QGSMFragmentation.hh" -#include "G4ExcitedStringDecay.hh" -#include "G4CascadeInterface.hh" - -#include "G4HadronCaptureProcess.hh" - -#include "G4NeutronInelasticProcess.hh" -#include "G4ProtonInelasticProcess.hh" -#include "G4PionMinusInelasticProcess.hh" -#include "G4PionPlusInelasticProcess.hh" -#include "G4KaonMinusInelasticProcess.hh" -#include "G4KaonPlusInelasticProcess.hh" -#include "G4KaonZeroLInelasticProcess.hh" -#include "G4KaonZeroSInelasticProcess.hh" - -#include "G4LambdaInelasticProcess.hh" -#include "G4AntiLambdaInelasticProcess.hh" -#include "G4SigmaPlusInelasticProcess.hh" -#include "G4SigmaMinusInelasticProcess.hh" -#include "G4AntiSigmaPlusInelasticProcess.hh" -#include "G4AntiSigmaMinusInelasticProcess.hh" -#include "G4XiZeroInelasticProcess.hh" -#include "G4XiMinusInelasticProcess.hh" -#include "G4AntiXiZeroInelasticProcess.hh" -#include "G4AntiXiMinusInelasticProcess.hh" -#include "G4OmegaMinusInelasticProcess.hh" -#include "G4AntiOmegaMinusInelasticProcess.hh" - -#include "G4AntiProtonInelasticProcess.hh" -#include "G4AntiNeutronInelasticProcess.hh" -#include "G4AntiDeuteronInelasticProcess.hh" -#include "G4AntiTritonInelasticProcess.hh" -#include "G4AntiHe3InelasticProcess.hh" -#include "G4AntiAlphaInelasticProcess.hh" - - -class G4HadronPhysicsFTFQGSP_BERT : public G4VPhysicsConstructor +class G4HadronPhysicsFTFQGSP_BERT : public G4HadronPhysicsFTFP_BERT { public: G4HadronPhysicsFTFQGSP_BERT(G4int verbose =1); G4HadronPhysicsFTFQGSP_BERT(const G4String& name, G4bool quasiElastic=false); virtual ~G4HadronPhysicsFTFQGSP_BERT(); - public: - virtual void ConstructParticle(); - virtual void ConstructProcess(); + void ConstructProcess() override; - private: - void CreateModels(); + // copy constructor and hide assignment operator + G4HadronPhysicsFTFQGSP_BERT(G4HadronPhysicsFTFQGSP_BERT &) = delete; + G4HadronPhysicsFTFQGSP_BERT & operator = + (const G4HadronPhysicsFTFQGSP_BERT &right) = delete; - G4NeutronRadCapture* theNeutronCaptureModel; + protected: + void DumpBanner() override; - G4PreCompoundModel* thePreEquilib; - G4GeneratorPrecompoundInterface* theCascade; - G4FTFModel* theStringModel; - G4ExcitedStringDecay* theStringDecay; - G4QGSMFragmentation* theQGSMFragmentation; - G4ExcitationHandler* theHandler; - - G4TheoFSGenerator* theModel1; - G4TheoFSGenerator* theModel2; - G4TheoFSGenerator* theModel3; - G4CascadeInterface* theBertini1; - G4CascadeInterface* theBertini2; - - G4HadronCaptureProcess* theNeutronCaptureProcess; - - G4NeutronInelasticProcess* theNeutronInelastic; - G4ProtonInelasticProcess* theProtonInelastic; - G4PionMinusInelasticProcess* thePionMinusInelastic; - G4PionPlusInelasticProcess* thePionPlusInelastic; - G4KaonMinusInelasticProcess* theKaonMinusInelastic; - G4KaonPlusInelasticProcess* theKaonPlusInelastic; - G4KaonZeroLInelasticProcess* theKaonZeroLInelastic; - G4KaonZeroSInelasticProcess* theKaonZeroSInelastic; - - G4LambdaInelasticProcess* theLambdaInelastic; - G4AntiLambdaInelasticProcess* theAntiLambdaInelastic; - G4SigmaMinusInelasticProcess* theSigmaMinusInelastic; - G4AntiSigmaMinusInelasticProcess* theAntiSigmaMinusInelastic; - G4SigmaPlusInelasticProcess* theSigmaPlusInelastic; - G4AntiSigmaPlusInelasticProcess* theAntiSigmaPlusInelastic; - G4XiZeroInelasticProcess* theXiZeroInelastic; - G4AntiXiZeroInelasticProcess* theAntiXiZeroInelastic; - G4XiMinusInelasticProcess* theXiMinusInelastic; - G4AntiXiMinusInelasticProcess* theAntiXiMinusInelastic; - G4OmegaMinusInelasticProcess* theOmegaMinusInelastic; - G4AntiOmegaMinusInelasticProcess* theAntiOmegaMinusInelastic; - - G4AntiProtonInelasticProcess* theAntiProtonInelastic; - G4AntiNeutronInelasticProcess* theAntiNeutronInelastic; - G4AntiDeuteronInelasticProcess* theAntiDeuteronInelastic; - G4AntiTritonInelasticProcess* theAntiTritonInelastic; - G4AntiHe3InelasticProcess* theAntiHe3Inelastic; - G4AntiAlphaInelasticProcess* theAntiAlphaInelastic; - - G4VCrossSectionDataSet* thePiXS; - G4VCrossSectionDataSet* theKaonAndHyperonXS; - G4VCrossSectionDataSet* theAntiNucleonXS; - G4VCrossSectionDataSet* theNeutronInelasticXS; - G4VCrossSectionDataSet* theNeutronCaptureXS; }; #endif diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTF_BIC.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTF_BIC.hh index 4e0afa1236..a3f95482ce 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTF_BIC.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsFTF_BIC.hh @@ -31,52 +31,36 @@ // // Modified: // 19.06.2008 G.Folger: change default for QE to NOT use Chips QE +// 18.10.2020 V.Ivanchenko use inheritance from G4HadronPhysicsFTFP_BERT // //---------------------------------------------------------------------------- // #ifndef G4HadronPhysicsFTF_BIC_h #define G4HadronPhysicsFTF_BIC_h 1 -#include "globals.hh" -#include "G4ios.hh" +#include "G4HadronPhysicsFTFP_BERT.hh" -#include "G4VPhysicsConstructor.hh" - - -#include "G4Cache.hh" - -class G4ComponentGGHadronNucleusXsc; -class G4VCrossSectionDataSet; - -class G4HadronPhysicsFTF_BIC : public G4VPhysicsConstructor +class G4HadronPhysicsFTF_BIC : public G4HadronPhysicsFTFP_BERT { public: G4HadronPhysicsFTF_BIC(G4int verbose =1); - G4HadronPhysicsFTF_BIC(const G4String& name,G4bool quasiElastic=false); - virtual ~G4HadronPhysicsFTF_BIC(); + G4HadronPhysicsFTF_BIC(const G4String& name, G4bool quasiElastic=false); + ~G4HadronPhysicsFTF_BIC() override; - virtual void ConstructParticle() override; - virtual void ConstructProcess() override; + // copy constructor and hide assignment operator + G4HadronPhysicsFTF_BIC(G4HadronPhysicsFTF_BIC &) = delete; + G4HadronPhysicsFTF_BIC & operator = + (const G4HadronPhysicsFTF_BIC &right) = delete; protected: - G4bool QuasiElastic; - //This calls the specific ones for the different particles in order - virtual void CreateModels(); - virtual void Neutron(); - virtual void Proton(); - virtual void Pion(); - virtual void Kaon(); - virtual void Others(); - virtual void DumpBanner() {} - //This contains extra configurataion specific to this PL - virtual void ExtraConfiguration(); - + void Neutron() override; + void Proton() override; + void Pion() override; + void Kaon() override; + + private: G4double maxBIC_pion; G4double minBERT_pion; - G4double maxBERT_pion; - G4double maxBERT_kaon; - G4double maxBIC_proton; - G4double maxBIC_neutron; }; #endif diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsINCLXX.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsINCLXX.hh index 6a67eaa6ae..7acaddaf54 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsINCLXX.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsINCLXX.hh @@ -47,9 +47,8 @@ #include "globals.hh" #include "G4ios.hh" -#include "G4VPhysicsConstructor.hh" +#include "G4HadronPhysicsFTFP_BERT.hh" -#include "G4Cache.hh" /** * Build hadronic physics using INCL++, high-energy models (QGSP or FTFP) and * possibly NeutronHP. @@ -60,34 +59,29 @@ * @see G4IonINCLXXBuilder */ -class G4VCrossSectionDataSet; -class G4ComponentGGHadronNucleusXsc; - - -class G4HadronPhysicsINCLXX : public G4VPhysicsConstructor +class G4HadronPhysicsINCLXX : public G4HadronPhysicsFTFP_BERT { public: G4HadronPhysicsINCLXX(G4int verbose =1); G4HadronPhysicsINCLXX(const G4String& name, const G4bool quasiElastic=true, const G4bool neutronHP=false, const G4bool ftfp=false); - virtual ~G4HadronPhysicsINCLXX(); + ~G4HadronPhysicsINCLXX() override; - public: - virtual void ConstructParticle() override; - virtual void ConstructProcess() override; + void ConstructProcess() override; void SetQuasiElastic(G4bool value) {QuasiElastic = value;}; - protected: - virtual void CreateModels(); - virtual void Neutron(); - virtual void Proton(); - virtual void Pion(); - virtual void Kaon(); - virtual void Others(); - //This contains extra configurataion specific to this PL - virtual void ExtraConfiguration(); + G4HadronPhysicsINCLXX(G4HadronPhysicsINCLXX &) = delete; + G4HadronPhysicsINCLXX & operator = + (const G4HadronPhysicsINCLXX &right) = delete; - G4bool QuasiElastic; + protected: + void Neutron() override; + void Proton() override; + void Pion() override; + void Kaon() override; + void Others() override; + + private: G4bool withNeutronHP; G4bool withFTFP; }; diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsNuBeam.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsNuBeam.hh index deeacab252..8e39ccf427 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsNuBeam.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsNuBeam.hh @@ -33,6 +33,8 @@ // // Modified: // 18.07.2017 A.Dotti: refactoring following new standard +// 02.10.2020 V.Ivanchenko: use more methods from G4HadronPhysicsFTFP_BERT +// base class; code clean-up //---------------------------------------------------------------------------- // #ifndef G4HadronPhysicsNuBeam_h @@ -40,50 +42,27 @@ #include "G4HadronPhysicsFTFP_BERT.hh" -//#include "globals.hh" -//#include "G4ios.hh" -// -//#include "G4VPhysicsConstructor.hh" -// -//#include "G4PiKBuilder.hh" -//#include "G4BertiniPiKBuilder.hh" -//#include "G4FTFPPiKBuilder.hh" -// -//#include "G4ProtonBuilder.hh" -//#include "G4BertiniProtonBuilder.hh" -//#include "G4FTFPNeutronBuilder.hh" -//#include "G4FTFPProtonBuilder.hh" -// specific to NuBeam case -//#include "G4QGSPLundStrFragmProtonBuilder.hh" -// -//#include "G4NeutronBuilder.hh" -//#include "G4BertiniNeutronBuilder.hh" -//#include "G4FTFPNeutronBuilder.hh" -// -//#include "G4HyperonFTFPBuilder.hh" -//#include "G4AntiBarionBuilder.hh" -//#include "G4FTFPAntiBarionBuilder.hh" -// -//class G4ComponentGGHadronNucleusXsc; -// - class G4HadronPhysicsNuBeam : public G4HadronPhysicsFTFP_BERT { - public: - G4HadronPhysicsNuBeam(G4int verbose =1); - G4HadronPhysicsNuBeam(const G4String& name, G4bool quasiElastic=false); - virtual ~G4HadronPhysicsNuBeam() {} +public: + G4HadronPhysicsNuBeam(G4int verbose =1); + G4HadronPhysicsNuBeam(const G4String& name, G4bool quasiElastic=false); + ~G4HadronPhysicsNuBeam() override {} - private: - //Modify the minimum needed - virtual void Proton() override; - virtual void Pion() override; - virtual void Kaon() override; - virtual void DumpBanner() override {} + void ConstructProcess() override; - double maxFTFP_proton; + // copy constructor and hide assignment operator + G4HadronPhysicsNuBeam(G4HadronPhysicsNuBeam &) = delete; + G4HadronPhysicsNuBeam & operator = + (const G4HadronPhysicsNuBeam &right) = delete; +protected: + //Modify the minimum needed + virtual void Proton() override; + +private: + G4double maxFTFP_proton; }; #endif diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BERT.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BERT.hh index 569db3ddd8..d0fbc69822 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BERT.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BERT.hh @@ -37,6 +37,7 @@ // 10.12.2007 G.Folger: Add projectilediffrative option for proton/neutron, off by default // 31.10.2012 A.Ribon: Use G4MiscBuilder // 19.03.2013 A.Ribon: Replace LEP with FTFP +// 25.08.2020 V.Ivanchenko change design using G4HadProcess utility // //---------------------------------------------------------------------------- // @@ -44,37 +45,31 @@ #define G4HadronPhysicsQGSP_BERT_h 1 #include "globals.hh" -#include "G4ios.hh" #include "G4VPhysicsConstructor.hh" -#include "G4Cache.hh" - -class G4ComponentGGHadronNucleusXsc; -class G4VCrossSectionDataSet; - class G4HadronPhysicsQGSP_BERT : public G4VPhysicsConstructor { public: G4HadronPhysicsQGSP_BERT(G4int verbose =1); G4HadronPhysicsQGSP_BERT(const G4String& name, G4bool quasiElastic=true); - virtual ~G4HadronPhysicsQGSP_BERT(); + ~G4HadronPhysicsQGSP_BERT() override; - virtual void ConstructParticle() override; - virtual void ConstructProcess() override; + void ConstructParticle() override; + void ConstructProcess() override; + + // copy constructor and hide assignment operator + G4HadronPhysicsQGSP_BERT(G4HadronPhysicsQGSP_BERT &) = delete; + G4HadronPhysicsQGSP_BERT & operator = + (const G4HadronPhysicsQGSP_BERT &right) = delete; protected: - G4bool QuasiElasticFTF; - G4bool QuasiElasticQGS; void CreateModels(); virtual void Neutron(); virtual void Proton(); virtual void Pion(); - virtual void Kaon() { /*Done together w/ Pion*/ } virtual void Others(); - virtual void DumpBanner() {} - //This contains extra configurataion specific to this PL - virtual void ExtraConfiguration(); + virtual void DumpBanner(); G4double minQGSP_proton; G4double minQGSP_neutron; @@ -91,6 +86,9 @@ class G4HadronPhysicsQGSP_BERT : public G4VPhysicsConstructor G4double maxBERT_proton; G4double maxBERT_neutron; G4double maxBERT_pik; + + G4bool QuasiElasticFTF; + G4bool QuasiElasticQGS; }; #endif diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BERT_HP.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BERT_HP.hh index 6b09458a0a..b0a293d178 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BERT_HP.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BERT_HP.hh @@ -35,6 +35,7 @@ // 25.04.2007 G.Folger: Add quasielastic as option, use quasielastic by default // 31.10.2012 A.Ribon: Use G4MiscBuilder // 19.03.2013 A.Ribon: Replace LEP with FTFP +// 20.09.2020 V.Ivanchenko change design using G4HadProcess utility // //---------------------------------------------------------------------------- // @@ -43,44 +44,20 @@ #include "G4HadronPhysicsQGSP_BERT.hh" -//#include "globals.hh" -//#include "G4ios.hh" -// -//#include "G4VPhysicsConstructor.hh" -// -//#include "G4PiKBuilder.hh" -//#include "G4FTFPPiKBuilder.hh" -//#include "G4QGSPPiKBuilder.hh" -//#include "G4BertiniPiKBuilder.hh" -// -//#include "G4ProtonBuilder.hh" -//#include "G4FTFPProtonBuilder.hh" -//#include "G4QGSPProtonBuilder.hh" -//#include "G4BertiniProtonBuilder.hh" -// -//#include "G4NeutronBuilder.hh" -//#include "G4FTFPNeutronBuilder.hh" -//#include "G4QGSPNeutronBuilder.hh" -//#include "G4BertiniNeutronBuilder.hh" -//#include "G4NeutronPHPBuilder.hh" -// -//#include "G4HyperonFTFPBuilder.hh" -//#include "G4AntiBarionBuilder.hh" -//#include "G4FTFPAntiBarionBuilder.hh" -// -//class G4ComponentGGHadronNucleusXsc; -// class G4HadronPhysicsQGSP_BERT_HP : public G4HadronPhysicsQGSP_BERT { public: G4HadronPhysicsQGSP_BERT_HP(G4int verbose =1); G4HadronPhysicsQGSP_BERT_HP(const G4String& name, G4bool quasiElastic=true); - virtual ~G4HadronPhysicsQGSP_BERT_HP() {} + ~G4HadronPhysicsQGSP_BERT_HP() override {} + // copy constructor and hide assignment operator + G4HadronPhysicsQGSP_BERT_HP(G4HadronPhysicsQGSP_BERT_HP &) = delete; + G4HadronPhysicsQGSP_BERT_HP & operator = + (const G4HadronPhysicsQGSP_BERT_HP &right) = delete; protected: - virtual void Neutron() override; - virtual void ExtraConfiguration() override; + void Neutron() override; }; // 2002 by J.P. Wellisch diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BIC.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BIC.hh index 6a259c6961..b19932d926 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BIC.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BIC.hh @@ -36,6 +36,7 @@ // 25.04.2007 G.Folger: Add quasielastic as option, use quasielastic by default // 31.10.2012 A.Ribon: Use G4MiscBuilder // 19.03.2013 A.Ribon: Replace LEP with FTFP and BERT +// 02.10.2020 V.Ivanchenko: added c-,b- particles and cross section biasing // //---------------------------------------------------------------------------- // @@ -46,32 +47,28 @@ #include "G4VPhysicsConstructor.hh" - -#include "G4Cache.hh" - -class G4ComponentGGHadronNucleusXsc; -class G4VCrossSectionDataSet; - class G4HadronPhysicsQGSP_BIC : public G4VPhysicsConstructor { public: G4HadronPhysicsQGSP_BIC(G4int verbose =1); G4HadronPhysicsQGSP_BIC(const G4String& name,G4bool quasiElastic=true); - virtual ~G4HadronPhysicsQGSP_BIC(); + ~G4HadronPhysicsQGSP_BIC() override; void ConstructParticle() override; void ConstructProcess() override; + // copy constructor and hide assignment operator + G4HadronPhysicsQGSP_BIC(G4HadronPhysicsQGSP_BIC &) = delete; + G4HadronPhysicsQGSP_BIC & operator = + (const G4HadronPhysicsQGSP_BIC &right) = delete; + protected: void CreateModels(); virtual void Neutron(); virtual void Proton(); virtual void Pion(); - virtual void Kaon() { /*Done in Pion*/} virtual void Others(); virtual void DumpBanner() {} - //This contains extra configurataion specific to this PL - virtual void ExtraConfiguration(); G4double minQGSP_neutron; G4double minQGSP_proton; @@ -83,6 +80,8 @@ class G4HadronPhysicsQGSP_BIC : public G4VPhysicsConstructor G4double minFTFP_neutron; G4double minFTFP_pik; G4double maxBIC_proton; + G4double minBIC_neutron; + G4double minBIC_proton; G4double maxBIC_neutron; G4double maxBERT_pik; diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BIC_AllHP.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BIC_AllHP.hh index 03ef820bd4..00fff2fd06 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BIC_AllHP.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BIC_AllHP.hh @@ -36,10 +36,15 @@ class G4HadronPhysicsQGSP_BIC_AllHP : public G4HadronPhysicsQGSP_BIC_HP { public: G4HadronPhysicsQGSP_BIC_AllHP( G4int verbose = 1 ); G4HadronPhysicsQGSP_BIC_AllHP( const G4String& name, G4bool quasiElastic = true ); - virtual ~G4HadronPhysicsQGSP_BIC_AllHP() {} + ~G4HadronPhysicsQGSP_BIC_AllHP() override {} + + // copy constructor and hide assignment operator + G4HadronPhysicsQGSP_BIC_AllHP(G4HadronPhysicsQGSP_BIC_AllHP &) = delete; + G4HadronPhysicsQGSP_BIC_AllHP & operator = + (const G4HadronPhysicsQGSP_BIC_AllHP &right) = delete; protected: - virtual void Proton() override; - G4double minBIC_proton; + void Proton() override; + G4double maxHP_proton; }; diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BIC_HP.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BIC_HP.hh index 89918fb516..f2ed2112c2 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BIC_HP.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_BIC_HP.hh @@ -40,6 +40,7 @@ // 05.05.2020 A.Ribon: Use QGSP for antibaryons at high energies // 07.05.2020 A.Ribon: Use QGSP for hyperons (and anti-hyperons) at high energies // 20.05.2020 A.Ribon: Refactoring of the class (keeping same functionalities) +// 02.10.2020 V.Ivanchenko: added c-,b- particles and cross section biasing // //---------------------------------------------------------------------------- @@ -53,11 +54,16 @@ class G4HadronPhysicsQGSP_BIC_HP : public G4HadronPhysicsQGSP_BIC { public: G4HadronPhysicsQGSP_BIC_HP( G4int verbose = 1 ); G4HadronPhysicsQGSP_BIC_HP( const G4String& name, G4bool quasiElastic = true ); - virtual ~G4HadronPhysicsQGSP_BIC_HP() {} + ~G4HadronPhysicsQGSP_BIC_HP() override {}; + + // copy constructor and hide assignment operator + G4HadronPhysicsQGSP_BIC_HP(G4HadronPhysicsQGSP_BIC_HP &) = delete; + G4HadronPhysicsQGSP_BIC_HP & operator = + (const G4HadronPhysicsQGSP_BIC_HP &right) = delete; + protected: - virtual void Neutron() override; - virtual void ExtraConfiguration() override; - G4double minBIC_neutron; + void Neutron() override; + }; #endif diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_FTFP_BERT.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_FTFP_BERT.hh index 8ddc4e61d6..1e6227a778 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_FTFP_BERT.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGSP_FTFP_BERT.hh @@ -33,6 +33,7 @@ // Replace the use of LEP for proton, neutron, pions // // Modified: +// 02.10.2020 V.Ivanchenko: added c-,b- particles and cross section biasing //---------------------------------------------------------------------------- // #ifndef G4HadronPhysicsQGSP_FTFP_BERT_h @@ -40,21 +41,20 @@ #include "globals.hh" -#include "G4ios.hh" - #include "G4HadronPhysicsQGSP_BERT.hh" - class G4HadronPhysicsQGSP_FTFP_BERT : public G4HadronPhysicsQGSP_BERT { public: G4HadronPhysicsQGSP_FTFP_BERT(G4int verbose =1); G4HadronPhysicsQGSP_FTFP_BERT(const G4String& name, G4bool quasiElastic=true); - protected: - //virtual void DumpBanner() override; - G4bool QuasiElastic; -}; + ~G4HadronPhysicsQGSP_FTFP_BERT() override; + // copy constructor and hide assignment operator + G4HadronPhysicsQGSP_FTFP_BERT(G4HadronPhysicsQGSP_FTFP_BERT &) = delete; + G4HadronPhysicsQGSP_FTFP_BERT & operator = + (const G4HadronPhysicsQGSP_FTFP_BERT &right) = delete; +}; #endif diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGS_BIC.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGS_BIC.hh index 21695bee3e..c76a94853d 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGS_BIC.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsQGS_BIC.hh @@ -32,59 +32,36 @@ // created from G4HadronPhysicsQGSP_BIC by H.P.Wellisch // // Modified: +// 18.10.2020 V.Ivanchenko use inheritance from G4HadronPhysicsQGSP_BERT // //---------------------------------------------------------------------------- // #ifndef G4HadronPhysicsQGS_BIC_h #define G4HadronPhysicsQGS_BIC_h 1 -#include "globals.hh" -#include "G4ios.hh" -#include "G4VPhysicsConstructor.hh" -#include "G4Cache.hh" +#include "G4HadronPhysicsQGSP_BERT.hh" -class G4ComponentGGHadronNucleusXsc; -class G4VCrossSectionDataSet; - -class G4HadronPhysicsQGS_BIC : public G4VPhysicsConstructor +class G4HadronPhysicsQGS_BIC : public G4HadronPhysicsQGSP_BERT { public: G4HadronPhysicsQGS_BIC(G4int verbose =1); G4HadronPhysicsQGS_BIC(const G4String& name, G4bool quasiElastic=true); virtual ~G4HadronPhysicsQGS_BIC(); - virtual void ConstructParticle() override; - virtual void ConstructProcess() override; + // copy constructor and hide assignment operator + G4HadronPhysicsQGS_BIC(G4HadronPhysicsQGS_BIC &) = delete; + G4HadronPhysicsQGS_BIC & operator = + (const G4HadronPhysicsQGS_BIC &right) = delete; protected: - void CreateModels(); virtual void Neutron(); virtual void Proton(); virtual void Pion(); - virtual void Kaon(); - virtual void Others(); - virtual void DumpBanner() {} - //This contains extra configurataion specific to this PL - virtual void ExtraConfiguration(); - - //Thread-private data - G4double maxFTF_neutron; - G4double maxFTF_proton; - G4double minFTF_neutron; - G4double minFTF_proton; - G4double maxBIC_neutron; - G4double maxBIC_proton; - - G4double maxFTF_pion; - G4double maxBERT_pion; + + private: G4double minBERT_pion; G4double maxBIC_pion; - G4double maxFTF_kaon; - G4double maxBERT_kaon; - - G4bool QuasiElasticQGS; - G4bool QuasiElasticFTF; }; #endif diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsShielding.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsShielding.hh index 16c58b303d..2c6eae3e0e 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsShielding.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsShielding.hh @@ -35,54 +35,46 @@ // region with values taken from G4HadronicParameters // 2014.08.05 K.L.Genser added provisions for modifing the Bertini to // FTF transition energy region +// 2020.10.02 V.Ivanchenko use inheritence from FTFP_BERT; use hadronic +// utilities; use explicit constructors // //---------------------------------------------------------------------------- // #ifndef G4HadronPhysicsShielding_h #define G4HadronPhysicsShielding_h 1 -#include "globals.hh" -#include "G4ios.hh" -#include +#include "G4HadronPhysicsFTFP_BERT.hh" -#include "G4VPhysicsConstructor.hh" -#include "G4HadronicParameters.hh" - - -class G4HadronPhysicsShielding : public G4VPhysicsConstructor +class G4HadronPhysicsShielding : public G4HadronPhysicsFTFP_BERT { public: - explicit G4HadronPhysicsShielding(G4int verbose=1); - explicit G4HadronPhysicsShielding(const G4String& name, G4bool ); - explicit G4HadronPhysicsShielding(const G4String& name, G4int verbose=1, - G4double minFTFPEnergy=G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(), - G4double maxBertiniEnergy=G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade()); + explicit G4HadronPhysicsShielding(G4int verbose); + explicit G4HadronPhysicsShielding(const G4String& name); + explicit G4HadronPhysicsShielding(const G4String& name = "hInelastic Shielding", + G4bool qe = false); + explicit G4HadronPhysicsShielding(const G4String& name, G4int verbose); + explicit G4HadronPhysicsShielding(const G4String& name, G4int verbose, + G4double minFTFPEnergy, + G4double maxBertiniEnergy); - virtual ~G4HadronPhysicsShielding(); + ~G4HadronPhysicsShielding() override; - public: - virtual void ConstructParticle() override; - virtual void ConstructProcess() override; - void UseLEND( G4String ss="" ){ useLEND_=true; evaluation_=ss; }; + void ConstructProcess() override; + + void UseLEND( const G4String& ss="" ){ useLEND_=true; evaluation_=ss; }; void UnuseLEND(){ useLEND_=false; }; - private: - virtual void CreateModels(); - virtual void Neutron(); - virtual void Proton(); - virtual void Pion(); - virtual void Kaon(); - virtual void Others(); - virtual void DumpBanner(); - //This contains extra configurataion specific to this PL - virtual void ExtraConfiguration(); + // copy constructor and hide assignment operator + G4HadronPhysicsShielding(G4HadronPhysicsShielding &) = delete; + G4HadronPhysicsShielding & operator = + (const G4HadronPhysicsShielding &right) = delete; + + protected: + //Modify the minimum needed + void Neutron() override; G4bool useLEND_; G4String evaluation_; - - const G4double minFTFPEnergy_; - const G4double maxBertiniEnergy_; - const G4double minNonHPNeutronEnergy_; }; #endif diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsShieldingLEND.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsShieldingLEND.hh index 219c6977f0..bbc46b026e 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsShieldingLEND.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4HadronPhysicsShieldingLEND.hh @@ -31,52 +31,34 @@ // Author: 7 Nov 2017 Tatsumi Koi // created from G4HadronPhysicsShielding // +// 02.10.2020 V.Ivanchenko use inheritence from Shielding and cleanup +// utilities; use explicit constructors //---------------------------------------------------------------------------- // #ifndef G4HadronPhysicsShieldingLEND_h #define G4HadronPhysicsShieldingLEND_h 1 -#include "globals.hh" -#include "G4ios.hh" -#include +#include "G4HadronPhysicsShielding.hh" -#include "G4VPhysicsConstructor.hh" -#include "G4HadronicParameters.hh" - - -class G4HadronPhysicsShieldingLEND : public G4VPhysicsConstructor +class G4HadronPhysicsShieldingLEND : public G4HadronPhysicsShielding { public: - explicit G4HadronPhysicsShieldingLEND(G4int verbose=1); - explicit G4HadronPhysicsShieldingLEND(const G4String& name, G4bool ); - explicit G4HadronPhysicsShieldingLEND(const G4String& name, G4int verbose=1, - G4double minFTFPEnergy=G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(), - G4double maxBertiniEnergy=G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade()); - virtual ~G4HadronPhysicsShieldingLEND(); + explicit G4HadronPhysicsShieldingLEND(G4int verbose); + explicit G4HadronPhysicsShieldingLEND(const G4String& name); + explicit G4HadronPhysicsShieldingLEND(const G4String& name = "hInelastic ShieldingLEND", + G4bool qe = false); + explicit G4HadronPhysicsShieldingLEND(const G4String& name, G4int verbose); + explicit G4HadronPhysicsShieldingLEND(const G4String& name, G4int verbose, + G4double minFTFPEnergy, + G4double maxBertiniEnergy); - public: - virtual void ConstructParticle() override; - virtual void ConstructProcess() override; - void UseLEND( G4String ss="" ){ useLEND_=true; evaluation_=ss; }; - void UnuseLEND(){ useLEND_=false; }; + ~G4HadronPhysicsShieldingLEND() override; - private: - virtual void CreateModels(); - virtual void Neutron(); - virtual void Proton(); - virtual void Pion(); - virtual void Kaon(); - virtual void Others(); - virtual void DumpBanner(); - //This contains extra configurataion specific to this PL - virtual void ExtraConfiguration(); + // copy constructor and hide assignment operator + G4HadronPhysicsShieldingLEND(G4HadronPhysicsShieldingLEND &) = delete; + G4HadronPhysicsShieldingLEND & operator = + (const G4HadronPhysicsShieldingLEND &right) = delete; - G4bool useLEND_; - G4String evaluation_; - - const G4double minFTFPEnergy_; - const G4double maxBertiniEnergy_; - const G4double minNonHPNeutronEnergy_; }; #endif diff --git a/source/physics_lists/constructors/hadron_inelastic/include/G4VHadronPhysics.hh b/source/physics_lists/constructors/hadron_inelastic/include/G4VHadronPhysics.hh index d74ca0f176..a05a093ebf 100644 --- a/source/physics_lists/constructors/hadron_inelastic/include/G4VHadronPhysics.hh +++ b/source/physics_lists/constructors/hadron_inelastic/include/G4VHadronPhysics.hh @@ -38,15 +38,13 @@ #define G4VHadronPhysics_h 1 #include "G4VPhysicsConstructor.hh" -#include "G4VHadronModelBuilder.hh" #include "G4CrossSectionInelastic.hh" +#include "G4HadronicInteraction.hh" +#include "G4HadronicProcess.hh" #include "globals.hh" -#include class G4ParticleDefinition; -class G4VCrossSectionDataSet; -class G4HadronicProcess; -class G4HadronicInteraction; +class G4VHadronModelBuilder; class G4VHadronPhysics : public G4VPhysicsConstructor { @@ -55,9 +53,9 @@ public: G4VHadronPhysics(const G4String& name ="hInelastic", G4int verbose = 0); - virtual ~G4VHadronPhysics(); + ~G4VHadronPhysics() override; - virtual void ConstructParticle(); + void ConstructParticle() override; G4HadronicInteraction* BuildModel(G4VHadronModelBuilder*, G4double emin, @@ -67,45 +65,9 @@ public: G4double emin, G4double emax); - void AddInelasticCrossSection(const G4String&, - G4VCrossSectionDataSet*); - - void AddInelasticCrossSection(const G4ParticleDefinition*, - G4VCrossSectionDataSet*); - - void AddElasticCrossSection(const G4String&, - G4VCrossSectionDataSet*); - - void AddElasticCrossSection(const G4ParticleDefinition*, - G4VCrossSectionDataSet*); - - void AddCaptureCrossSection(G4VCrossSectionDataSet*); - - void AddFissionCrossSection(G4VCrossSectionDataSet*); - - G4CrossSectionInelastic* InelasticXS(const G4String& componentName); - -protected: - - G4HadronicProcess* FindInelasticProcess(const G4String&); - - G4HadronicProcess* FindInelasticProcess(const G4ParticleDefinition*); - - G4HadronicProcess* FindElasticProcess(const G4String&); - - G4HadronicProcess* FindElasticProcess(const G4ParticleDefinition*); - - G4HadronicProcess* FindCaptureProcess(); - - G4HadronicProcess* FindFissionProcess(); - -private: - // copy constructor and hide assignment operator - G4VHadronPhysics(G4VHadronPhysics &); - G4VHadronPhysics & operator=(const G4VHadronPhysics &right); - - static G4ThreadLocal std::vector* builders; + G4VHadronPhysics(G4VHadronPhysics &) = delete; + G4VHadronPhysics & operator=(const G4VHadronPhysics &right) = delete; }; diff --git a/source/physics_lists/constructors/hadron_inelastic/sources.cmake b/source/physics_lists/constructors/hadron_inelastic/sources.cmake index d47adb5110..e3915a9326 100644 --- a/source/physics_lists/constructors/hadron_inelastic/sources.cmake +++ b/source/physics_lists/constructors/hadron_inelastic/sources.cmake @@ -14,76 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) -include_directories(${EXPAT_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/run/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/builders/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/factory/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/stopping/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/qmd/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/coherent_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/fission/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/incl_physics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/interface/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lend/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lepto_nuclear/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/particle_hp/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/qgsm/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/radioactive_decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4phys_ctor_hinelastic HEADERS G4HadronInelasticQBBC.hh @@ -104,7 +37,7 @@ GEANT4_DEFINE_MODULE(NAME G4phys_ctor_hinelastic G4HadronPhysicsShielding.hh G4HadronPhysicsShieldingLEND.hh G4VHadronPhysics.hh - G4HadronPhysicsQGSP_BIC_AllHP.hh + G4HadronPhysicsQGSP_BIC_AllHP.hh SOURCES G4HadronInelasticQBBC.cc G4HadronPhysicsFTF_BIC.cc @@ -124,7 +57,7 @@ GEANT4_DEFINE_MODULE(NAME G4phys_ctor_hinelastic G4HadronPhysicsShielding.cc G4HadronPhysicsShieldingLEND.cc G4VHadronPhysics.cc - G4HadronPhysicsQGSP_BIC_AllHP.cc + G4HadronPhysicsQGSP_BIC_AllHP.cc GRANULAR_DEPENDENCIES G4baryons G4bosons diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronInelasticQBBC.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronInelasticQBBC.cc index 1e843c21b1..07b29ee84f 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronInelasticQBBC.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronInelasticQBBC.cc @@ -40,10 +40,15 @@ #include "G4SystemOfUnits.hh" #include "G4HadronInelasticProcess.hh" +#include "G4HadronCaptureProcess.hh" #include "G4HadronicInteraction.hh" #include "G4ParticleDefinition.hh" -#include "G4ProcessManager.hh" + +#include "G4TheoFSGenerator.hh" +#include "G4FTFModel.hh" +#include "G4ExcitedStringDecay.hh" +#include "G4GeneratorPrecompoundInterface.hh" #include "G4BGGNucleonInelasticXS.hh" #include "G4BGGPionInelasticXS.hh" @@ -53,28 +58,18 @@ #include "G4NeutronCaptureXS.hh" #include "G4CrossSectionInelastic.hh" -#include "G4PiNuclearCrossSection.hh" -#include "G4ComponentAntiNuclNuclearXS.hh" -#include "G4CrossSectionPairGG.hh" -#include "G4PiNuclearCrossSection.hh" - -#include "G4QGSBuilder.hh" -#include "G4FTFBuilder.hh" - -#include "G4ComponentGGHadronNucleusXsc.hh" -#include "G4CrossSectionDataSetRegistry.hh" #include "G4CascadeInterface.hh" #include "G4BinaryCascade.hh" #include "G4NeutronRadCapture.hh" #include "G4PreCompoundModel.hh" -#include "G4ExcitationHandler.hh" -#include "G4Evaporation.hh" #include "G4HadronicInteractionRegistry.hh" #include "G4HadronicParameters.hh" #include "G4HadronicBuilder.hh" +#include "G4HadParticles.hh" +#include "G4HadProcesses.hh" // factory #include "G4PhysicsConstructorFactory.hh" @@ -83,7 +78,9 @@ G4_DECLARE_PHYSCONSTR_FACTORY(G4HadronInelasticQBBC); G4HadronInelasticQBBC::G4HadronInelasticQBBC(G4int ver) : G4VHadronPhysics("hInelasticQBBC"),verbose(ver) -{} +{ + G4HadronicParameters::Instance()->SetEnableBCParticles(true); +} G4HadronInelasticQBBC::G4HadronInelasticQBBC(const G4String&, G4int ver, G4bool, G4bool,G4bool, G4bool, G4bool) : G4HadronInelasticQBBC(ver) @@ -94,150 +91,117 @@ G4HadronInelasticQBBC::~G4HadronInelasticQBBC() void G4HadronInelasticQBBC::ConstructProcess() { - if(verbose > 1) { - G4cout << "### HadronInelasticQBBC Construct Process " << G4endl; + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + G4PhysicsListHelper* ph = G4PhysicsListHelper::GetPhysicsListHelper(); + + // configure models + const G4double eminFtf = param->GetMinEnergyTransitionFTF_Cascade(); + const G4double eminBert = 1.0*CLHEP::GeV; + const G4double emaxBic = 1.5*CLHEP::GeV; + const G4double emaxBert = param->GetMaxEnergyTransitionFTF_Cascade(); + const G4double emaxBertPions = 12.*CLHEP::GeV; + const G4double emax = param->GetMaxEnergy(); + + if(G4Threading::IsMasterThread() && verbose > 0) { + G4cout << "### HadronInelasticQBBC Construct Process:\n" + << " Emin(FTFP)= " << eminFtf/CLHEP::GeV + << " GeV; Emax(FTFP)= " << emax/CLHEP::GeV << " GeV\n" + << " Emin(BERT)= " << eminBert/CLHEP::GeV + << " GeV; Emax(BERT)= " << emaxBert/CLHEP::GeV + << " GeV; Emax(BERTpions)= " << emaxBertPions/CLHEP::GeV + << " GeV;\n" << " Emin(BIC) = 0 GeV; Emax(BIC)= " + << emaxBic/CLHEP::GeV << " GeV." << G4endl; } - G4double emax = G4HadronicParameters::Instance()->GetMaxEnergy(); - - //G4cout << "G4HadronInelasticQBBC::ConstructProcess new PRECO"<< G4endl; - // PreCompound and Evaporation models are instantiated here G4PreCompoundModel* thePreCompound = nullptr; G4HadronicInteraction* p = G4HadronicInteractionRegistry::Instance()->FindModel("PRECO"); thePreCompound = static_cast(p); if(!thePreCompound) { thePreCompound = new G4PreCompoundModel(); } - - // configure models - const G4double eminFtf = G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); - const G4double emaxBert = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); - //G4HadronicInteraction* theQGSP = - // BuildModel(new G4QGSBuilder("QGSP",thePreCompound,true,false),12.5*GeV,emax); - G4HadronicInteraction* theFTFP = - BuildModel(new G4FTFBuilder("FTFP",thePreCompound),eminFtf,emax); - G4HadronicInteraction* theFTFP1 = - BuildModel(new G4FTFBuilder("FTFP",thePreCompound),eminFtf,emax); - G4HadronicInteraction* theFTFP2 = - BuildModel(new G4FTFBuilder("FTFP",thePreCompound),0.0,emax); + auto theFTFP = new G4TheoFSGenerator("FTFP"); + auto theStringModel = new G4FTFModel(); + theStringModel->SetFragmentationModel(new G4ExcitedStringDecay()); + theFTFP->SetHighEnergyGenerator( theStringModel ); + theFTFP->SetTransport( new G4GeneratorPrecompoundInterface() ); + theFTFP->SetMinEnergy( eminFtf ); + theFTFP->SetMaxEnergy( emax ); - G4CascadeInterface* casc = new G4CascadeInterface(); - casc->usePreCompoundDeexcitation(); - G4HadronicInteraction* theBERT = NewModel(casc,1.0*GeV,emaxBert); + auto theBERT = new G4CascadeInterface(); + theBERT->SetMinEnergy( eminBert ); + theBERT->SetMaxEnergy( emaxBert ); + theBERT->usePreCompoundDeexcitation(); - casc = new G4CascadeInterface(); - casc->usePreCompoundDeexcitation(); - G4HadronicInteraction* theBERT1 = NewModel(casc,0.0*GeV,emaxBert); + auto theBERT1 = new G4CascadeInterface(); + theBERT1->SetMinEnergy( eminBert ); + theBERT1->SetMaxEnergy( emaxBertPions ); + theBERT1->usePreCompoundDeexcitation(); - //G4cout << "G4HadronInelasticQBBC::ConstructProcess new Binary"<< G4endl; - G4BinaryCascade* bic = new G4BinaryCascade(thePreCompound); - G4HadronicInteraction* theBIC = NewModel(bic,0.0,1.5*GeV); + auto theBIC = new G4BinaryCascade(thePreCompound); + theBIC->SetMaxEnergy( emaxBic ); - // cross sections - G4CrossSectionInelastic* anucxs = InelasticXS("AntiAGlauber"); - if(!anucxs) { - anucxs = new G4CrossSectionInelastic(new G4ComponentAntiNuclNuclearXS()); - } - G4CrossSectionInelastic* kaonxs = - InelasticXS(G4ComponentGGHadronNucleusXsc::Default_Name()); - if(!kaonxs) { - kaonxs = new G4CrossSectionInelastic(new G4ComponentGGHadronNucleusXsc()); - } + // p + G4ParticleDefinition* particle = G4Proton::Proton(); + G4HadronicProcess* hp = + new G4HadronInelasticProcess( particle->GetParticleName()+"Inelastic", particle ); + hp->AddDataSet(new G4ParticleInelasticXS(particle)); + hp->RegisterMe(theFTFP); + hp->RegisterMe(theBERT); + hp->RegisterMe(theBIC); + ph->RegisterProcess(hp, particle); + if( useFactorXS ) hp->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); - G4HadronicProcess* hp; - // loop over particles - auto myParticleIterator=GetParticleIterator(); - myParticleIterator->reset(); - while( (*myParticleIterator)() ) { - G4ParticleDefinition* particle = myParticleIterator->value(); - G4String pname = particle->GetParticleName(); - if(verbose > 1) { - G4cout << "### HadronInelasticQBBC: " << pname << G4endl; - } - - // - // model and X-section configuration per particle type - // - if(pname == "proton") { - hp = FindInelasticProcess(particle); - hp->AddDataSet(new G4ParticleInelasticXS(particle)); - //hp->AddDataSet(new G4BGGNucleonInelasticXS(particle)); - - hp->RegisterMe(theFTFP); - hp->RegisterMe(theBERT); - hp->RegisterMe(theBIC); - - } else if(pname == "neutron") { - hp = FindInelasticProcess(particle); - hp->AddDataSet(new G4NeutronInelasticXS()); - hp->RegisterMe(theFTFP); + // n + particle = G4Neutron::Neutron(); + hp = new G4HadronInelasticProcess( particle->GetParticleName()+"Inelastic", particle ); + hp->AddDataSet(new G4NeutronInelasticXS()); + hp->RegisterMe(theFTFP); + hp->RegisterMe(theBERT); + hp->RegisterMe(theBIC); + ph->RegisterProcess(hp, particle); + if( useFactorXS ) hp->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); - G4HadronicProcess* capture = FindCaptureProcess(); - capture->RegisterMe(new G4NeutronRadCapture()); - hp->RegisterMe(theBERT); - hp->RegisterMe(theBIC); + hp = new G4HadronCaptureProcess("nCapture"); + hp->RegisterMe(new G4NeutronRadCapture()); + ph->RegisterProcess(hp, particle); - } else if(pname == "pi-" || pname == "pi+") { - hp = FindInelasticProcess(particle); - hp->AddDataSet(new G4BGGPionInelasticXS(particle)); - hp->RegisterMe(theFTFP); - hp->RegisterMe(theBERT1); + // pi+ + particle = G4PionPlus::PionPlus(); + hp = new G4HadronInelasticProcess( particle->GetParticleName()+"Inelastic", particle ); + hp->AddDataSet(new G4BGGPionInelasticXS(particle)); + hp->RegisterMe(theFTFP); + hp->RegisterMe(theBERT1); + hp->RegisterMe(theBIC); + ph->RegisterProcess(hp, particle); + if( useFactorXS ) hp->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); - } else if(pname == "kaon-" ) { - hp = FindInelasticProcess(particle); - hp->RegisterMe(theFTFP1); - hp->RegisterMe(theBERT1); - hp->AddDataSet(kaonxs); + // pi- + particle = G4PionMinus::PionMinus(); + hp = new G4HadronInelasticProcess( particle->GetParticleName()+"Inelastic", particle ); + hp->AddDataSet(new G4BGGPionInelasticXS(particle)); + hp->RegisterMe(theFTFP); + hp->RegisterMe(theBERT1); + hp->RegisterMe(theBIC); + ph->RegisterProcess(hp, particle); + if( useFactorXS ) hp->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); - } else if(pname == "kaon+" ) { - hp = FindInelasticProcess(particle); - hp->RegisterMe(theFTFP1); - hp->RegisterMe(theBERT1); - hp->AddDataSet(kaonxs); + // kaons + G4HadronicBuilder::BuildKaonsFTFP_BERT(); - } else if(pname == "kaon0S" || - pname == "kaon0L") { - hp = FindInelasticProcess(particle); - hp->RegisterMe(theFTFP1); - hp->RegisterMe(theBERT1); - hp->AddDataSet(kaonxs); - - } else if(pname == "lambda" || - pname == "omega-" || - pname == "sigma-" || - pname == "sigma+" || - pname == "sigma0" || - pname == "xi-" || - pname == "xi0") { - hp = FindInelasticProcess(particle); - hp->RegisterMe(theFTFP1); - hp->RegisterMe(theBERT1); - hp->AddDataSet(kaonxs); + // high energy particles + if( emax > param->EnergyThresholdForHeavyHadrons() ) { - } else if(pname == "anti_lambda" || - pname == "anti_omega-" || - pname == "anti_sigma-" || - pname == "anti_sigma+" || - pname == "anti_sigma0" || - pname == "anti_xi-" || - pname == "anti_xi0" - ) { - hp = FindInelasticProcess(particle); - hp->RegisterMe(theFTFP2); - hp->AddDataSet(kaonxs); + // pbar, nbar, anti light ions + G4HadronicBuilder::BuildAntiLightIonsFTFP(); - } else if(pname == "anti_alpha" || - pname == "anti_deuteron"|| - pname == "anti_He3" || - pname == "anti_proton" || - pname == "anti_triton" || - pname == "anti_neutron" - ) { - hp = FindInelasticProcess(particle); - hp->RegisterMe(theFTFP2); - hp->AddDataSet(anucxs); - } + // hyperons + G4HadronicBuilder::BuildHyperonsFTFP_BERT(); + + // b-, c- baryons and mesons + if( param->EnableBCParticles() ) { + G4HadronicBuilder::BuildBCHadronsFTFP_BERT(); + } } - G4HadronicBuilder::BuildBCHadronsFTFP_BERT(); } diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT.cc index 50ebfd5170..c0274f6e06 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT.cc @@ -69,6 +69,7 @@ #include "G4MesonConstructor.hh" #include "G4BaryonConstructor.hh" #include "G4ShortLivedConstructor.hh" +#include "G4IonConstructor.hh" #include "G4HadronCaptureProcess.hh" #include "G4NeutronRadCapture.hh" @@ -76,8 +77,7 @@ #include "G4NeutronCaptureXS.hh" #include "G4PhysListUtil.hh" -#include "G4Threading.hh" - +#include "G4HadParticles.hh" #include "G4HadronicParameters.hh" #include "G4HadronicBuilder.hh" @@ -86,22 +86,24 @@ // G4_DECLARE_PHYSCONSTR_FACTORY(G4HadronPhysicsFTFP_BERT); - G4HadronPhysicsFTFP_BERT::G4HadronPhysicsFTFP_BERT(G4int) : - G4HadronPhysicsFTFP_BERT("hInelastic FTFP_BERT",false) {} + G4HadronPhysicsFTFP_BERT("hInelastic FTFP_BERT",false) +{} -G4HadronPhysicsFTFP_BERT::G4HadronPhysicsFTFP_BERT(const G4String& name, G4bool quasiElastic) - : G4VPhysicsConstructor(name) - , QuasiElastic(quasiElastic) +G4HadronPhysicsFTFP_BERT::G4HadronPhysicsFTFP_BERT(const G4String& name, G4bool qe) + : G4VPhysicsConstructor(name), QuasiElastic(qe) { - minFTFP_pion = G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); - maxBERT_pion = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); - minFTFP_kaon = G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); - maxBERT_kaon = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); - minFTFP_proton = G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); - maxBERT_proton = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); - minFTFP_neutron = G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); - maxBERT_neutron = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); + G4HadronicParameters* param = G4HadronicParameters::Instance(); + minFTFP_pion = param->GetMinEnergyTransitionFTF_Cascade(); + maxBERT_pion = param->GetMaxEnergyTransitionFTF_Cascade(); + minFTFP_kaon = param->GetMinEnergyTransitionFTF_Cascade(); + maxBERT_kaon = param->GetMaxEnergyTransitionFTF_Cascade(); + minFTFP_proton = param->GetMinEnergyTransitionFTF_Cascade(); + maxBERT_proton = param->GetMaxEnergyTransitionFTF_Cascade(); + minFTFP_neutron = param->GetMinEnergyTransitionFTF_Cascade(); + maxBERT_neutron = param->GetMaxEnergyTransitionFTF_Cascade(); + minBERT_proton = minBERT_neutron = 0.0; + param->SetEnableBCParticles(true); } G4HadronPhysicsFTFP_BERT::~G4HadronPhysicsFTFP_BERT() @@ -117,12 +119,15 @@ void G4HadronPhysicsFTFP_BERT::ConstructParticle() G4ShortLivedConstructor pShortLivedConstructor; pShortLivedConstructor.ConstructParticle(); + + G4IonConstructor pIonConstructor; + pIonConstructor.ConstructParticle(); } void G4HadronPhysicsFTFP_BERT::DumpBanner() { G4cout << G4endl - << " FTFP_BERT : new threshold between BERT and FTFP is over the interval " << G4endl + << " " << GetPhysicsName() << " : threshold between BERT and FTFP is over the interval " << G4endl << " for pions : " << minFTFP_pion/GeV << " to " << maxBERT_pion/GeV << " GeV" << G4endl << " for kaons : " << minFTFP_kaon/GeV << " to " << maxBERT_kaon/GeV << " GeV" << G4endl << " for proton : " << minFTFP_proton/GeV << " to " << maxBERT_proton/GeV << " GeV" << G4endl @@ -137,11 +142,12 @@ void G4HadronPhysicsFTFP_BERT::CreateModels() Pion(); Kaon(); Others(); - G4HadronicBuilder::BuildBCHadronsFTFP_BERT(); -} +} void G4HadronPhysicsFTFP_BERT::Neutron() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); //General schema: // 1) Create a builder // 2) Call AddBuilder @@ -156,13 +162,27 @@ void G4HadronPhysicsFTFP_BERT::Neutron() auto bertn = new G4BertiniNeutronBuilder; AddBuilder(bertn); neu->RegisterMe(bertn); - bertn->SetMinEnergy(0.0); + bertn->SetMinEnergy(minBERT_neutron); bertn->SetMaxEnergy(maxBERT_neutron); neu->Build(); + + const G4ParticleDefinition* neutron = G4Neutron::Neutron(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(neutron); + if(inel) { + inel->AddDataSet(new G4NeutronInelasticXS()); + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } + G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); + if (capture) { + capture->RegisterMe(new G4NeutronRadCapture()); + } } void G4HadronPhysicsFTFP_BERT::Proton() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto pro = new G4ProtonBuilder; AddBuilder(pro); auto ftfpp = new G4FTFPProtonBuilder(QuasiElastic); @@ -172,12 +192,22 @@ void G4HadronPhysicsFTFP_BERT::Proton() auto bertp = new G4BertiniProtonBuilder; AddBuilder(bertp); pro->RegisterMe(bertp); + bertp->SetMinEnergy(minBERT_proton); bertp->SetMaxEnergy(maxBERT_proton); pro->Build(); + + const G4ParticleDefinition* proton = G4Proton::Proton(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(proton); + if(inel) { + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } } void G4HadronPhysicsFTFP_BERT::Pion() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto pi = new G4PionBuilder; AddBuilder(pi); auto ftfppi = new G4FTFPPionBuilder(QuasiElastic); @@ -189,10 +219,27 @@ void G4HadronPhysicsFTFP_BERT::Pion() pi->RegisterMe(bertpi); bertpi->SetMaxEnergy(maxBERT_pion); pi->Build(); + + // add cross section factor + if( useFactorXS ) { + const G4ParticleDefinition* pion = G4PionPlus::PionPlus(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(pion); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); + } + pion = G4PionMinus::PionMinus(); + inel = G4PhysListUtil::FindInelasticProcess(pion); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); + } + } } void G4HadronPhysicsFTFP_BERT::Kaon() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto k = new G4KaonBuilder; AddBuilder(k); auto ftfpk = new G4FTFPKaonBuilder(QuasiElastic); @@ -204,44 +251,55 @@ void G4HadronPhysicsFTFP_BERT::Kaon() k->RegisterMe(bertk); bertk->SetMaxEnergy(maxBERT_kaon); k->Build(); + + // add cross section factor + if( useFactorXS ) { + G4ParticleTable* table = G4ParticleTable::GetParticleTable(); + for( auto & pdg : G4HadParticles::GetKaons() ) { + auto part = table->FindParticle( pdg ); + if ( part == nullptr ) { continue; } + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(part); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorHadronInelastic() ); + } + } + } } void G4HadronPhysicsFTFP_BERT::Others() { - // Hyperons (and anti-hyperons) - auto hyp = new G4HyperonBuilder; - AddBuilder(hyp); - auto ftfphyp = new G4HyperonFTFPBuilder; - AddBuilder(ftfphyp); - hyp->RegisterMe(ftfphyp); - hyp->Build(); - // Anti-barions - auto abar = new G4AntiBarionBuilder; - AddBuilder(abar); - auto ftfpabar = new G4FTFPAntiBarionBuilder(QuasiElastic); - AddBuilder(ftfpabar); - abar->RegisterMe(ftfpabar); - abar->Build(); + G4HadronicParameters* param = G4HadronicParameters::Instance(); + + // high energy particles + if( param->GetMaxEnergy() > param->EnergyThresholdForHeavyHadrons() ) { + + // anti light ions + G4HadronicBuilder::BuildAntiLightIonsFTFP(); + + // hyperons + G4HadronicBuilder::BuildHyperonsFTFP_BERT(); + + // b-, c- baryons and mesons + if( param->EnableBCParticles() ) { + G4HadronicBuilder::BuildBCHadronsFTFP_BERT(); + } + } } void G4HadronPhysicsFTFP_BERT::ConstructProcess() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + minFTFP_pion = param->GetMinEnergyTransitionFTF_Cascade(); + maxBERT_pion = param->GetMaxEnergyTransitionFTF_Cascade(); + minFTFP_kaon = param->GetMinEnergyTransitionFTF_Cascade(); + maxBERT_kaon = param->GetMaxEnergyTransitionFTF_Cascade(); + minFTFP_proton = param->GetMinEnergyTransitionFTF_Cascade(); + maxBERT_proton = param->GetMaxEnergyTransitionFTF_Cascade(); + minFTFP_neutron = param->GetMinEnergyTransitionFTF_Cascade(); + maxBERT_neutron = param->GetMaxEnergyTransitionFTF_Cascade(); + if(G4Threading::IsMasterThread()) { DumpBanner(); } CreateModels(); - ExtraConfiguration(); -} - -#include "G4ProcessManager.hh" -void G4HadronPhysicsFTFP_BERT::ExtraConfiguration() -{ - //Modify Neutrons - const G4ParticleDefinition* neutron = G4Neutron::Neutron(); - G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(neutron); - if(inel) { inel->AddDataSet(new G4NeutronInelasticXS()); } - G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); - if (capture) { - capture->RegisterMe(new G4NeutronRadCapture()); - } } diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT_ATL.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT_ATL.cc index d9f339301a..9adf74651a 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT_ATL.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT_ATL.cc @@ -38,96 +38,41 @@ #include #include "G4HadronPhysicsFTFP_BERT_ATL.hh" - -#include "G4NeutronBuilder.hh" -#include "G4BertiniNeutronBuilder.hh" -#include "G4FTFPNeutronBuilder.hh" -#include "G4ProtonBuilder.hh" -#include "G4BertiniProtonBuilder.hh" -#include "G4FTFPNeutronBuilder.hh" -#include "G4FTFPProtonBuilder.hh" -#include "G4PiKBuilder.hh" -#include "G4FTFPPiKBuilder.hh" -#include "G4BertiniPiKBuilder.hh" - -#include "globals.hh" -#include "G4ios.hh" #include "G4SystemOfUnits.hh" +#include "G4HadronicParameters.hh" #include "G4PhysicsConstructorFactory.hh" // G4_DECLARE_PHYSCONSTR_FACTORY(G4HadronPhysicsFTFP_BERT_ATL); + G4HadronPhysicsFTFP_BERT_ATL::G4HadronPhysicsFTFP_BERT_ATL(G4int) : G4HadronPhysicsFTFP_BERT_ATL("hInelastic FTFP_BERT_ATL",false) {} G4HadronPhysicsFTFP_BERT_ATL::G4HadronPhysicsFTFP_BERT_ATL(const G4String& name, G4bool quasiElastic) - : G4HadronPhysicsFTFP_BERT(name,quasiElastic) + : G4HadronPhysicsFTFP_BERT(name,quasiElastic) { - //Change configuration parameters of FTFP_BERT - minFTFP_pion = 9.0 * GeV; - maxBERT_pion = 12.0 * GeV; - minFTFP_kaon = 9.0 * GeV; - maxBERT_kaon = 12.0 * GeV; - minFTFP_proton = 9.0 * GeV; - maxBERT_proton = 12.0 * GeV; - minFTFP_neutron = 9.0 * GeV; - maxBERT_neutron = 12.0 * GeV; - QuasiElastic = false; + // Change configuration parameters of FTFP_BERT + // for n, p, pions, and kaons + G4double emin = 9.0*CLHEP::GeV; + G4double emax = 12.0*CLHEP::GeV; + minFTFP_pion = emin; + maxBERT_pion = emax; + minFTFP_kaon = emin; + maxBERT_kaon = emax; + minFTFP_proton = emin; + maxBERT_proton = emax; + minFTFP_neutron = emin; + maxBERT_neutron = emax; } -void G4HadronPhysicsFTFP_BERT_ATL::DumpBanner() -{ - G4cout << " FTFP_BERT_ATL : threshold between BERT and FTFP" - << " is over the interval " << minFTFP_pion/GeV << " to "<< maxBERT_pion/GeV << " GeV." << G4endl; -} +G4HadronPhysicsFTFP_BERT_ATL::~G4HadronPhysicsFTFP_BERT_ATL() +{} -void G4HadronPhysicsFTFP_BERT_ATL::Neutron() +void G4HadronPhysicsFTFP_BERT_ATL::ConstructProcess() { - auto neu = new G4NeutronBuilder; - AddBuilder(neu); - auto ftfpn = new G4FTFPNeutronBuilder(QuasiElastic); - AddBuilder(ftfpn); - neu->RegisterMe(ftfpn); - ftfpn->SetMinEnergy(minFTFP_neutron); - auto bertn = new G4BertiniNeutronBuilder; - AddBuilder(bertn); - neu->RegisterMe(bertn); - bertn->SetMinEnergy(0.0); - bertn->SetMaxEnergy(maxBERT_neutron); - neu->Build(); -} - -void G4HadronPhysicsFTFP_BERT_ATL::Proton() -{ - auto pro = new G4ProtonBuilder; - AddBuilder(pro); - auto ftfpp = new G4FTFPProtonBuilder(QuasiElastic); - AddBuilder(ftfpp); - pro->RegisterMe(ftfpp); - ftfpp->SetMinEnergy(minFTFP_proton); - auto bertp = new G4BertiniProtonBuilder; - AddBuilder(bertp); - pro->RegisterMe(bertp); - bertp->SetMaxEnergy(maxBERT_proton); - pro->Build(); -} - -void G4HadronPhysicsFTFP_BERT_ATL::Pion() -{ - auto pik = new G4PiKBuilder; - AddBuilder(pik); - auto ftfppik = new G4FTFPPiKBuilder(QuasiElastic); - AddBuilder(ftfppik); - ftfppik->SetMinEnergy(minFTFP_pion); - pik->RegisterMe(ftfppik); - auto bertpik = new G4BertiniPiKBuilder(); - AddBuilder(bertpik); - bertpik->SetMaxEnergy(maxBERT_pion); - pik->RegisterMe(bertpik); - pik->Build(); -} - -void G4HadronPhysicsFTFP_BERT_ATL::Kaon() { - //Use combined with pions + if(G4Threading::IsMasterThread()) { + DumpBanner(); + } + CreateModels(); } diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT_HP.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT_HP.cc index b5e3e89061..238f6185fb 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT_HP.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT_HP.cc @@ -69,19 +69,14 @@ G4HadronPhysicsFTFP_BERT_HP::G4HadronPhysicsFTFP_BERT_HP(const G4String& name, G minBERT_neutron = 19.9*MeV; } -void G4HadronPhysicsFTFP_BERT_HP::DumpBanner() -{ - G4cout << G4endl - << " FTFP_BERT_HP : new threshold between BERT and FTFP is over the interval " << G4endl - << " for pions : " << minFTFP_pion/GeV << " to " << maxBERT_pion/GeV << " GeV" << G4endl - << " for kaons : " << minFTFP_kaon/GeV << " to " << maxBERT_kaon/GeV << " GeV" << G4endl - << " for proton : " << minFTFP_proton/GeV << " to " << maxBERT_proton/GeV << " GeV" << G4endl - << " for neutron : " << minFTFP_neutron/GeV << " to " << maxBERT_neutron/GeV << " GeV" << G4endl - << G4endl; -} +G4HadronPhysicsFTFP_BERT_HP::~G4HadronPhysicsFTFP_BERT_HP() +{} void G4HadronPhysicsFTFP_BERT_HP::Neutron() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto neu = new G4NeutronBuilder( true ); // Fission on AddBuilder(neu); auto ftfpneu = new G4FTFPNeutronBuilder(QuasiElastic); @@ -97,12 +92,13 @@ void G4HadronPhysicsFTFP_BERT_HP::Neutron() AddBuilder(hpneu); neu->RegisterMe(hpneu); neu->Build(); -} -void G4HadronPhysicsFTFP_BERT_HP::ExtraConfiguration() -{ - // --- Neutrons --- const G4ParticleDefinition* neutron = G4Neutron::Neutron(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(neutron); + if(inel) { + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } + G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); if (capture) { G4NeutronRadCapture* theNeutronRadCapture = new G4NeutronRadCapture(); diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT_TRV.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT_TRV.cc index ba20620d98..bb4c796f44 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT_TRV.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFP_BERT_TRV.cc @@ -38,22 +38,8 @@ #include #include "G4HadronPhysicsFTFP_BERT_TRV.hh" -#include "G4PiKBuilder.hh" -#include "G4FTFPPiKBuilder.hh" -#include "G4BertiniPiKBuilder.hh" -#include "G4CrossSectionInelastic.hh" -#include "G4HadronCaptureProcess.hh" -#include "G4NeutronRadCapture.hh" -#include "G4NeutronInelasticXS.hh" -#include "G4NeutronCaptureXS.hh" - -#include "globals.hh" -#include "G4ios.hh" #include "G4SystemOfUnits.hh" -#include "G4PhysListUtil.hh" -#include "G4Threading.hh" - #include "G4HadronicParameters.hh" // factory @@ -68,58 +54,8 @@ G4HadronPhysicsFTFP_BERT_TRV::G4HadronPhysicsFTFP_BERT_TRV(G4int) : G4HadronPhysicsFTFP_BERT_TRV::G4HadronPhysicsFTFP_BERT_TRV(const G4String& name, G4bool quasiElastic) : G4HadronPhysicsFTFP_BERT(name,quasiElastic) { - minFTFP_pion = G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); - maxBERT_pion = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); - minFTFP_kaon = G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); - maxBERT_kaon = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); - minFTFP_proton = G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); - maxBERT_proton = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); - minFTFP_neutron = G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); - maxBERT_neutron = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); - QuasiElastic = false; G4HadronicParameters::Instance()->SetEnableBCParticles(true); } -/* -void G4HadronPhysicsFTFP_BERT_TRV::DumpBanner() -{ - G4cout << " Revised FTFTP_BERT_TRV - new threshold between BERT and FTFP " - << " is over the interval " << minFTFP_pion/GeV << " to " << maxBERT_pion/GeV - << " GeV. " << G4endl; - G4cout << " -- quasiElastic was asked to be " << QuasiElastic - << " and it is reset to " << false << G4endl; -} -*/ - -void G4HadronPhysicsFTFP_BERT_TRV::Pion() -{ - auto pik = new G4PiKBuilder; - AddBuilder(pik); - auto ftfppik = new G4FTFPPiKBuilder(QuasiElastic); - AddBuilder(ftfppik); - ftfppik->SetMinEnergy(minFTFP_pion); - pik->RegisterMe(ftfppik); - auto bertpik = new G4BertiniPiKBuilder(); - AddBuilder(bertpik); - bertpik->SetMaxEnergy(maxBERT_pion); - pik->RegisterMe(bertpik); - pik->Build(); -} - -void G4HadronPhysicsFTFP_BERT_TRV::Kaon() { - //Use combined with pions -} - - -void G4HadronPhysicsFTFP_BERT_TRV::ExtraConfiguration() -{ - //Modify Neutrons - const G4ParticleDefinition* neutron = G4Neutron::Neutron(); - G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(neutron); - if(inel) { inel->AddDataSet(new G4NeutronInelasticXS()); } - G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); - if (capture) { - capture->RegisterMe(new G4NeutronRadCapture()); - } -} - +G4HadronPhysicsFTFP_BERT_TRV::~G4HadronPhysicsFTFP_BERT_TRV() +{} diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFQGSP_BERT.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFQGSP_BERT.cc index 750e6f0aca..3934598df2 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFQGSP_BERT.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTFQGSP_BERT.cc @@ -47,28 +47,31 @@ #include "G4ParticleDefinition.hh" #include "G4ParticleTable.hh" -#include "G4MesonConstructor.hh" -#include "G4BaryonConstructor.hh" -#include "G4ShortLivedConstructor.hh" - -#include "G4ComponentGGHadronNucleusXsc.hh" -#include "G4CrossSectionDataSetRegistry.hh" - +#include "G4HadronInelasticProcess.hh" #include "G4HadronCaptureProcess.hh" #include "G4NeutronRadCapture.hh" #include "G4NeutronInelasticXS.hh" #include "G4NeutronCaptureXS.hh" +#include "G4ParticleInelasticXS.hh" -#include "G4ProcessManager.hh" #include "G4BGGNucleonInelasticXS.hh" #include "G4BGGPionInelasticXS.hh" -#include "G4CrossSectionPairGG.hh" -#include "G4ComponentAntiNuclNuclearXS.hh" #include "G4CrossSectionInelastic.hh" +#include "G4TheoFSGenerator.hh" +#include "G4FTFModel.hh" +#include "G4ExcitedStringDecay.hh" +#include "G4GeneratorPrecompoundInterface.hh" +#include "G4CascadeInterface.hh" +#include "G4QGSMFragmentation.hh" + #include "G4PhysListUtil.hh" +#include "G4HadParticles.hh" +#include "G4HadProcesses.hh" #include "G4HadronicParameters.hh" +#include "G4HadronicBuilder.hh" +#include "G4PhysicsListHelper.hh" // factory #include "G4PhysicsConstructorFactory.hh" @@ -76,364 +79,101 @@ G4_DECLARE_PHYSCONSTR_FACTORY(G4HadronPhysicsFTFQGSP_BERT); G4HadronPhysicsFTFQGSP_BERT::G4HadronPhysicsFTFQGSP_BERT(G4int) - : G4VPhysicsConstructor("hInelastic FTFQGSP_BERT") - , theNeutronCaptureModel(0) - , thePreEquilib(0) - , theCascade(0) - , theStringModel(0) - , theStringDecay(0) - , theQGSMFragmentation(0) - , theHandler(0) - , theModel1(0) - , theModel2(0) - , theModel3(0) - , theBertini1(0) - , theBertini2(0) - , theNeutronCaptureProcess(0) - , theNeutronInelastic(0) - , theProtonInelastic(0) - , thePionMinusInelastic(0) - , thePionPlusInelastic(0) - , theKaonMinusInelastic(0) - , theKaonPlusInelastic(0) - , theKaonZeroLInelastic(0) - , theKaonZeroSInelastic(0) - , theLambdaInelastic(0) - , theAntiLambdaInelastic(0) - , theSigmaMinusInelastic(0) - , theAntiSigmaMinusInelastic(0) - , theSigmaPlusInelastic(0) - , theAntiSigmaPlusInelastic(0) - , theXiZeroInelastic(0) - , theAntiXiZeroInelastic(0) - , theXiMinusInelastic(0) - , theAntiXiMinusInelastic(0) - , theOmegaMinusInelastic(0) - , theAntiOmegaMinusInelastic(0) - , theAntiProtonInelastic(0) - , theAntiNeutronInelastic(0) - , theAntiDeuteronInelastic(0) - , theAntiTritonInelastic(0) - , theAntiHe3Inelastic(0) - , theAntiAlphaInelastic(0) - , thePiXS(0) - , theKaonAndHyperonXS(0) - , theAntiNucleonXS(0) - , theNeutronInelasticXS(0) - , theNeutronCaptureXS(0) + : G4HadronPhysicsFTFQGSP_BERT("hInelastic FTFQGSP_BERT", false) {} - -G4HadronPhysicsFTFQGSP_BERT::G4HadronPhysicsFTFQGSP_BERT(const G4String& name, G4bool /* quasiElastic */) - : G4VPhysicsConstructor(name) - , theNeutronCaptureModel(0) - , thePreEquilib(0) - , theCascade(0) - , theStringModel(0) - , theStringDecay(0) - , theQGSMFragmentation(0) - , theHandler(0) - , theModel1(0) - , theModel2(0) - , theModel3(0) - , theBertini1(0) - , theBertini2(0) - , theNeutronCaptureProcess(0) - , theNeutronInelastic(0) - , theProtonInelastic(0) - , thePionMinusInelastic(0) - , thePionPlusInelastic(0) - , theKaonMinusInelastic(0) - , theKaonPlusInelastic(0) - , theKaonZeroLInelastic(0) - , theKaonZeroSInelastic(0) - , theLambdaInelastic(0) - , theAntiLambdaInelastic(0) - , theSigmaMinusInelastic(0) - , theAntiSigmaMinusInelastic(0) - , theSigmaPlusInelastic(0) - , theAntiSigmaPlusInelastic(0) - , theXiZeroInelastic(0) - , theAntiXiZeroInelastic(0) - , theXiMinusInelastic(0) - , theAntiXiMinusInelastic(0) - , theOmegaMinusInelastic(0) - , theAntiOmegaMinusInelastic(0) - , theAntiProtonInelastic(0) - , theAntiNeutronInelastic(0) - , theAntiDeuteronInelastic(0) - , theAntiTritonInelastic(0) - , theAntiHe3Inelastic(0) - , theAntiAlphaInelastic(0) - , thePiXS(0) - , theKaonAndHyperonXS(0) - , theAntiNucleonXS(0) - , theNeutronInelasticXS(0) - , theNeutronCaptureXS(0) +G4HadronPhysicsFTFQGSP_BERT::G4HadronPhysicsFTFQGSP_BERT(const G4String& name, G4bool qe) + : G4HadronPhysicsFTFP_BERT(name, qe) {} - -void G4HadronPhysicsFTFQGSP_BERT::CreateModels() -{ - G4double minFTFP = G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); - G4double maxBERT = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); - G4cout << " FTFQGSP_BERT : similar to FTFP_BERT but with" << G4endl - << " QGS string fragmentation (instead of Lund string fragmentation)." << G4endl; - - theStringModel = new G4FTFModel; - - theStringDecay = new G4ExcitedStringDecay( theQGSMFragmentation = new G4QGSMFragmentation ); - theStringModel->SetFragmentationModel( theStringDecay ); - thePreEquilib = new G4PreCompoundModel( theHandler = new G4ExcitationHandler ); - theCascade = new G4GeneratorPrecompoundInterface( thePreEquilib ); - - // FTF for neutrons, protons, pions, and kaons - theModel1 = new G4TheoFSGenerator( "FTFP" ); - theModel1->SetMinEnergy( minFTFP ); - theModel1->SetMaxEnergy( G4HadronicParameters::Instance()->GetMaxEnergy() ); - theModel1->SetTransport( theCascade ); - theModel1->SetHighEnergyGenerator( theStringModel ); - - // BERT for neutrons, protons, pions, and kaons - theBertini1 = new G4CascadeInterface; - theBertini1->SetMinEnergy( 0.0 ); - theBertini1->SetMaxEnergy( maxBERT ); - - // FTF for hyperons - theModel2 = new G4TheoFSGenerator( "FTFP" ); - theModel2->SetMinEnergy( G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade() ); - theModel2->SetMaxEnergy( G4HadronicParameters::Instance()->GetMaxEnergy() ); - theModel2->SetTransport( theCascade ); - theModel2->SetHighEnergyGenerator( theStringModel ); - - // BERT for hyperons - theBertini2 = new G4CascadeInterface; - theBertini2->SetMinEnergy( 0.0 ); - theBertini2->SetMaxEnergy( G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade() ); - - // FTF for Antibaryons - theModel3 = new G4TheoFSGenerator( "FTFP" ); - theModel3->SetMinEnergy( 0.0 ); - theModel3->SetMaxEnergy( G4HadronicParameters::Instance()->GetMaxEnergy() ); - theModel3->SetTransport( theCascade ); - theModel3->SetHighEnergyGenerator( theStringModel ); - - // Neutron Capture - theNeutronCaptureModel = new G4NeutronRadCapture; - theNeutronCaptureModel->SetMinEnergy( 0.0 ); - theNeutronCaptureModel->SetMaxEnergy( G4HadronicParameters::Instance()->GetMaxEnergy() ); - - // Cross sections - thePiXS = new G4BGGPionInelasticXS( G4PionMinus::Definition() ); - theAntiNucleonXS = new G4CrossSectionInelastic( new G4ComponentAntiNuclNuclearXS ); - theKaonAndHyperonXS = new G4CrossSectionInelastic( new G4ComponentGGHadronNucleusXsc ); - theNeutronInelasticXS = G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet( G4NeutronInelasticXS::Default_Name() ); - theNeutronCaptureXS = G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet( G4NeutronCaptureXS::Default_Name() ); -} - - G4HadronPhysicsFTFQGSP_BERT::~G4HadronPhysicsFTFQGSP_BERT() +{} + +void G4HadronPhysicsFTFQGSP_BERT::DumpBanner() { - delete theStringDecay; - delete theStringModel; - delete thePreEquilib; - delete theCascade; - delete theQGSMFragmentation; + G4HadronPhysicsFTFP_BERT::DumpBanner(); + G4cout << " QGS string fragmentation instead of Lund string fragmentation." + << G4endl; } - -void G4HadronPhysicsFTFQGSP_BERT::ConstructParticle() -{ - G4MesonConstructor pMesonConstructor; - pMesonConstructor.ConstructParticle(); - - G4BaryonConstructor pBaryonConstructor; - pBaryonConstructor.ConstructParticle(); - - G4ShortLivedConstructor pShortLivedConstructor; - pShortLivedConstructor.ConstructParticle(); -} - - -#include "G4ProcessManager.hh" void G4HadronPhysicsFTFQGSP_BERT::ConstructProcess() { - CreateModels(); + if(G4Threading::IsMasterThread()) { + DumpBanner(); + } + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + G4double emax = param->GetMaxEnergy(); + G4PhysicsListHelper* ph = G4PhysicsListHelper::GetPhysicsListHelper(); - G4ProcessManager * aProcMan = 0; + auto theModel = new G4TheoFSGenerator("FTFQGSP"); + auto theStringModel = new G4FTFModel(); + theStringModel->SetFragmentationModel(new G4ExcitedStringDecay( new G4QGSMFragmentation() ) ); + theModel->SetHighEnergyGenerator( theStringModel ); + theModel->SetTransport( new G4GeneratorPrecompoundInterface() ); + theModel->SetMinEnergy( param->GetMinEnergyTransitionFTF_Cascade() ); + theModel->SetMaxEnergy( emax ); - theNeutronInelastic = new G4NeutronInelasticProcess(); - theNeutronInelastic->RegisterMe( theModel1 ); - theNeutronInelastic->RegisterMe( theBertini1 ); - theNeutronInelastic->AddDataSet( new G4BGGNucleonInelasticXS( G4Neutron::Neutron() ) ); - theNeutronInelastic->AddDataSet( theNeutronInelasticXS ); - aProcMan = G4Neutron::Neutron()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theNeutronInelastic ); - theNeutronCaptureProcess = new G4HadronCaptureProcess(); - theNeutronCaptureProcess->RegisterMe( theNeutronCaptureModel ); - aProcMan->AddDiscreteProcess( theNeutronCaptureProcess ); + auto theCascade = new G4CascadeInterface(); + theCascade->SetMaxEnergy( param->GetMaxEnergyTransitionFTF_Cascade() ); - theProtonInelastic = new G4ProtonInelasticProcess(); - theProtonInelastic->RegisterMe( theModel1 ); - theProtonInelastic->RegisterMe( theBertini1 ); - theProtonInelastic->AddDataSet( new G4BGGNucleonInelasticXS( G4Proton::Proton() ) ); - aProcMan = G4Proton::Proton()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theProtonInelastic ); + // p + G4ParticleDefinition* particle = G4Proton::Proton(); + G4HadronicProcess* proc = + new G4HadronInelasticProcess( particle->GetParticleName()+"Inelastic", particle ); + proc->AddDataSet(new G4ParticleInelasticXS(particle)); + proc->RegisterMe(theModel); + proc->RegisterMe(theCascade); + ph->RegisterProcess(proc, particle); + if( useFactorXS ) proc->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); - thePionMinusInelastic = new G4PionMinusInelasticProcess(); - thePionMinusInelastic->RegisterMe( theModel1 ); - thePionMinusInelastic->RegisterMe( theBertini1 ); - thePionMinusInelastic->AddDataSet( thePiXS ); - aProcMan = G4PionMinus::PionMinus()->GetProcessManager(); - aProcMan->AddDiscreteProcess( thePionMinusInelastic ); + // n + particle = G4Neutron::Neutron(); + proc = new G4HadronInelasticProcess( particle->GetParticleName()+"Inelastic", particle ); + proc->AddDataSet(new G4NeutronInelasticXS()); + proc->RegisterMe(theModel); + proc->RegisterMe(theCascade); + ph->RegisterProcess(proc, particle); + if( useFactorXS ) proc->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + + proc = new G4HadronCaptureProcess("nCapture"); + proc->RegisterMe(new G4NeutronRadCapture()); + ph->RegisterProcess(proc, particle); - thePionPlusInelastic = new G4PionPlusInelasticProcess(); - thePionPlusInelastic->RegisterMe( theModel1 ); - thePionPlusInelastic->RegisterMe( theBertini1 ); - thePionPlusInelastic->AddDataSet( thePiXS ); - aProcMan = G4PionPlus::PionPlus()->GetProcessManager(); - aProcMan->AddDiscreteProcess( thePionPlusInelastic ); + // pi+ + particle = G4PionPlus::PionPlus(); + proc = new G4HadronInelasticProcess( particle->GetParticleName()+"Inelastic", particle ); + proc->AddDataSet(new G4BGGPionInelasticXS(particle)); + proc->RegisterMe(theModel); + proc->RegisterMe(theCascade); + ph->RegisterProcess(proc, particle); + if( useFactorXS ) proc->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); - theKaonMinusInelastic = new G4KaonMinusInelasticProcess(); - theKaonMinusInelastic->RegisterMe( theModel1 ); - theKaonMinusInelastic->RegisterMe( theBertini1 ); - theKaonMinusInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4KaonMinus::KaonMinus()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theKaonMinusInelastic ); + // pi- + particle = G4PionMinus::PionMinus(); + proc = new G4HadronInelasticProcess( particle->GetParticleName()+"Inelastic", particle ); + proc->AddDataSet(new G4BGGPionInelasticXS(particle)); + proc->RegisterMe(theModel); + proc->RegisterMe(theCascade); + ph->RegisterProcess(proc, particle); + if( useFactorXS ) proc->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); - theKaonPlusInelastic = new G4KaonPlusInelasticProcess(); - theKaonPlusInelastic->RegisterMe( theModel1 ); - theKaonPlusInelastic->RegisterMe( theBertini1 ); - theKaonPlusInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4KaonPlus::KaonPlus()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theKaonPlusInelastic ); + // kaons + G4HadronicBuilder::BuildKaonsFTFQGSP_BERT(); - theKaonZeroLInelastic = new G4KaonZeroLInelasticProcess(); - theKaonZeroLInelastic->RegisterMe( theModel1 ); - theKaonZeroLInelastic->RegisterMe( theBertini1 ); - theKaonZeroLInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4KaonZeroLong::KaonZeroLong()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theKaonZeroLInelastic ); + // high energy particles + if( emax > param->EnergyThresholdForHeavyHadrons() ) { - theKaonZeroSInelastic = new G4KaonZeroSInelasticProcess(); - theKaonZeroSInelastic->RegisterMe( theModel1 ); - theKaonZeroSInelastic->RegisterMe( theBertini1 ); - theKaonZeroSInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4KaonZeroShort::KaonZeroShort()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theKaonZeroSInelastic ); + // pbar, nbar, anti light ions + G4HadronicBuilder::BuildAntiLightIonsFTFP(); - theLambdaInelastic = new G4LambdaInelasticProcess(); - theLambdaInelastic->RegisterMe( theModel2 ); - theLambdaInelastic->RegisterMe( theBertini2 ); - theLambdaInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4Lambda::Lambda()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theLambdaInelastic ); + // hyperons + G4HadronicBuilder::BuildHyperonsFTFQGSP_BERT(); - theAntiLambdaInelastic = new G4AntiLambdaInelasticProcess(); - theAntiLambdaInelastic->RegisterMe( theModel3 ); - theAntiLambdaInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4AntiLambda::AntiLambda()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theAntiLambdaInelastic ); - - theSigmaMinusInelastic = new G4SigmaMinusInelasticProcess(); - theSigmaMinusInelastic->RegisterMe( theModel2 ); - theSigmaMinusInelastic->RegisterMe( theBertini2 ); - theSigmaMinusInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4SigmaMinus::SigmaMinus()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theSigmaMinusInelastic ); - - theAntiSigmaMinusInelastic = new G4AntiSigmaMinusInelasticProcess(); - theAntiSigmaMinusInelastic->RegisterMe( theModel3 ); - theAntiSigmaMinusInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4AntiSigmaMinus::AntiSigmaMinus()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theAntiSigmaMinusInelastic ); - - theSigmaPlusInelastic = new G4SigmaPlusInelasticProcess(); - theSigmaPlusInelastic->RegisterMe( theModel2 ); - theSigmaPlusInelastic->RegisterMe( theBertini2 ); - theSigmaPlusInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4SigmaPlus::SigmaPlus()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theSigmaPlusInelastic ); - - theAntiSigmaPlusInelastic = new G4AntiSigmaPlusInelasticProcess(); - theAntiSigmaPlusInelastic->RegisterMe( theModel3 ); - theAntiSigmaPlusInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4AntiSigmaPlus::AntiSigmaPlus()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theAntiSigmaPlusInelastic ); - - theXiMinusInelastic = new G4XiMinusInelasticProcess(); - theXiMinusInelastic->RegisterMe( theModel2 ); - theXiMinusInelastic->RegisterMe( theBertini2 ); - theXiMinusInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4XiMinus::XiMinus()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theXiMinusInelastic ); - - theAntiXiMinusInelastic = new G4AntiXiMinusInelasticProcess(); - theAntiXiMinusInelastic->RegisterMe( theModel3 ); - theAntiXiMinusInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4AntiXiMinus::AntiXiMinus()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theAntiXiMinusInelastic ); - - theXiZeroInelastic = new G4XiZeroInelasticProcess(); - theXiZeroInelastic->RegisterMe( theModel2 ); - theXiZeroInelastic->RegisterMe( theBertini2 ); - theXiZeroInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4XiZero::XiZero()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theXiZeroInelastic ); - - theAntiXiZeroInelastic = new G4AntiXiZeroInelasticProcess(); - theAntiXiZeroInelastic->RegisterMe( theModel3 ); - theAntiXiZeroInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4AntiXiZero::AntiXiZero()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theAntiXiZeroInelastic ); - - theOmegaMinusInelastic = new G4OmegaMinusInelasticProcess(); - theOmegaMinusInelastic->RegisterMe( theModel2 ); - theOmegaMinusInelastic->RegisterMe( theBertini2 ); - theOmegaMinusInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4OmegaMinus::OmegaMinus()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theOmegaMinusInelastic ); - - theAntiOmegaMinusInelastic = new G4AntiOmegaMinusInelasticProcess(); - theAntiOmegaMinusInelastic->RegisterMe( theModel3 ); - theAntiOmegaMinusInelastic->AddDataSet( theKaonAndHyperonXS ); - aProcMan = G4AntiOmegaMinus::AntiOmegaMinus()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theAntiOmegaMinusInelastic ); - - theAntiProtonInelastic = new G4AntiProtonInelasticProcess(); - theAntiProtonInelastic->RegisterMe( theModel3 ); - theAntiProtonInelastic->AddDataSet( theAntiNucleonXS ); - aProcMan = G4AntiProton::AntiProton()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theAntiProtonInelastic ); - - theAntiNeutronInelastic = new G4AntiNeutronInelasticProcess(); - theAntiNeutronInelastic->RegisterMe( theModel3 ); - theAntiNeutronInelastic->AddDataSet( theAntiNucleonXS ); - aProcMan = G4AntiNeutron::AntiNeutron()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theAntiNeutronInelastic ); - - theAntiDeuteronInelastic = new G4AntiDeuteronInelasticProcess(); - theAntiDeuteronInelastic->RegisterMe( theModel3 ); - theAntiDeuteronInelastic->AddDataSet( theAntiNucleonXS ); - aProcMan = G4AntiDeuteron::AntiDeuteron()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theAntiDeuteronInelastic ); - - theAntiTritonInelastic = new G4AntiTritonInelasticProcess(); - theAntiTritonInelastic->RegisterMe( theModel3 ); - theAntiTritonInelastic->AddDataSet( theAntiNucleonXS ); - aProcMan = G4AntiTriton::AntiTriton()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theAntiTritonInelastic ); - - theAntiHe3Inelastic = new G4AntiHe3InelasticProcess(); - theAntiHe3Inelastic->RegisterMe( theModel3 ); - theAntiHe3Inelastic->AddDataSet( theAntiNucleonXS ); - aProcMan = G4AntiHe3::AntiHe3()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theAntiHe3Inelastic ); - - theAntiAlphaInelastic = new G4AntiAlphaInelasticProcess(); - theAntiAlphaInelastic->RegisterMe( theModel3 ); - theAntiAlphaInelastic->AddDataSet( theAntiNucleonXS ); - aProcMan = G4AntiAlpha::AntiAlpha()->GetProcessManager(); - aProcMan->AddDiscreteProcess( theAntiAlphaInelastic ); + // b-, c- baryons and mesons + if( param->EnableBCParticles() ) { + G4HadronicBuilder::BuildBCHadronsFTFQGSP_BERT(); + } + } } diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTF_BIC.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTF_BIC.cc index bd0d4bed3a..c2732b1410 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTF_BIC.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsFTF_BIC.cc @@ -41,9 +41,6 @@ #include "G4SystemOfUnits.hh" #include "G4ParticleDefinition.hh" #include "G4ParticleTable.hh" -#include "G4MesonConstructor.hh" -#include "G4BaryonConstructor.hh" -#include "G4ShortLivedConstructor.hh" #include "G4PionBuilder.hh" #include "G4KaonBuilder.hh" #include "G4BinaryPionBuilder.hh" @@ -57,18 +54,14 @@ #include "G4NeutronBuilder.hh" #include "G4FTFBinaryNeutronBuilder.hh" #include "G4BinaryNeutronBuilder.hh" -#include "G4HyperonBuilder.hh" -#include "G4HyperonFTFPBuilder.hh" -#include "G4AntiBarionBuilder.hh" -#include "G4FTFPAntiBarionBuilder.hh" #include "G4ProcessManager.hh" #include "G4ProcessVector.hh" #include "G4HadronCaptureProcess.hh" #include "G4NeutronRadCapture.hh" #include "G4NeutronInelasticXS.hh" #include "G4NeutronCaptureXS.hh" -#include "G4CrossSectionDataSetRegistry.hh" #include "G4PhysListUtil.hh" +#include "G4HadParticles.hh" #include "G4HadronicParameters.hh" #include "G4PhysicsConstructorFactory.hh" @@ -77,12 +70,9 @@ G4_DECLARE_PHYSCONSTR_FACTORY(G4HadronPhysicsFTF_BIC); G4HadronPhysicsFTF_BIC::G4HadronPhysicsFTF_BIC(G4int) : G4HadronPhysicsFTF_BIC("hInelastic FTF_BIC",false) {} -G4HadronPhysicsFTF_BIC::G4HadronPhysicsFTF_BIC(const G4String& name, G4bool quasiElastic) - : G4VPhysicsConstructor(name) - , QuasiElastic(quasiElastic) +G4HadronPhysicsFTF_BIC::G4HadronPhysicsFTF_BIC(const G4String& name, G4bool qe) + : G4HadronPhysicsFTFP_BERT(name, qe) { - maxBIC_neutron = maxBIC_proton = maxBERT_kaon = maxBERT_pion = - G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); maxBIC_pion = 1.5*GeV; minBERT_pion = 1.0*GeV; } @@ -90,17 +80,10 @@ G4HadronPhysicsFTF_BIC::G4HadronPhysicsFTF_BIC(const G4String& name, G4bool quas G4HadronPhysicsFTF_BIC::~G4HadronPhysicsFTF_BIC() {} -void G4HadronPhysicsFTF_BIC::CreateModels() -{ - Neutron(); - Proton(); - Pion(); - Kaon(); - Others(); -} - void G4HadronPhysicsFTF_BIC::Neutron() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); //General schema: // 1) Create a builder // 2) Call AddBuilder @@ -115,12 +98,27 @@ void G4HadronPhysicsFTF_BIC::Neutron() AddBuilder(bicn); neu->RegisterMe(bicn); bicn->SetMinEnergy(0.0); - bicn->SetMaxEnergy(maxBIC_neutron); + bicn->SetMaxEnergy(maxBERT_neutron); neu->Build(); + + // add cross section factor + const G4ParticleDefinition* neutron = G4Neutron::Neutron(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(neutron); + if(inel) { + inel->AddDataSet(new G4NeutronInelasticXS()); + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } + G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); + if (capture) { + capture->RegisterMe(new G4NeutronRadCapture()); + } } void G4HadronPhysicsFTF_BIC::Proton() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto pro = new G4ProtonBuilder; AddBuilder(pro); auto ftfp = new G4FTFBinaryProtonBuilder(QuasiElastic); @@ -129,12 +127,22 @@ void G4HadronPhysicsFTF_BIC::Proton() auto bicp = new G4BinaryProtonBuilder; AddBuilder(bicp); pro->RegisterMe(bicp); - bicp->SetMaxEnergy(maxBIC_proton); + bicp->SetMaxEnergy(maxBERT_proton); pro->Build(); + + // add cross section factor + const G4ParticleDefinition* proton = G4Proton::Proton(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(proton); + if(inel) { + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } } void G4HadronPhysicsFTF_BIC::Pion() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto pi = new G4PionBuilder; AddBuilder(pi); auto ftfpi = new G4FTFBinaryPionBuilder(QuasiElastic); @@ -150,10 +158,27 @@ void G4HadronPhysicsFTF_BIC::Pion() pi->RegisterMe(bicpi); bicpi->SetMaxEnergy(maxBIC_pion); pi->Build(); + + // add cross section factor + if( useFactorXS ) { + const G4ParticleDefinition* pion = G4PionPlus::PionPlus(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(pion); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); + } + pion = G4PionMinus::PionMinus(); + inel = G4PhysListUtil::FindInelasticProcess(pion); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); + } + } } void G4HadronPhysicsFTF_BIC::Kaon() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto k = new G4KaonBuilder; AddBuilder(k); auto ftfk = new G4FTFBinaryKaonBuilder(QuasiElastic); @@ -164,58 +189,17 @@ void G4HadronPhysicsFTF_BIC::Kaon() k->RegisterMe(bertk); bertk->SetMaxEnergy(maxBERT_kaon); k->Build(); + // add cross section factor + if( useFactorXS ) { + G4ParticleTable* table = G4ParticleTable::GetParticleTable(); + for( auto & pdg : G4HadParticles::GetKaons() ) { + auto part = table->FindParticle( pdg ); + if ( part == nullptr ) { continue; } + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(part); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorHadronInelastic() ); + } + } + } } -void G4HadronPhysicsFTF_BIC::Others() -{ - // Hyperons (and anti-hyperons) - auto hyp = new G4HyperonBuilder; - AddBuilder(hyp); - auto ftfphyp = new G4HyperonFTFPBuilder; - AddBuilder(ftfphyp); - hyp->RegisterMe(ftfphyp); - hyp->Build(); - // Anti-barions - auto abar = new G4AntiBarionBuilder; - AddBuilder(abar); - auto ftfpabar = new G4FTFPAntiBarionBuilder(QuasiElastic); - AddBuilder(ftfpabar); - abar->RegisterMe(ftfpabar); - abar->Build(); -} - -void G4HadronPhysicsFTF_BIC::ConstructParticle() -{ - G4MesonConstructor pMesonConstructor; - pMesonConstructor.ConstructParticle(); - - G4BaryonConstructor pBaryonConstructor; - pBaryonConstructor.ConstructParticle(); - - G4ShortLivedConstructor pShortLivedConstructor; - pShortLivedConstructor.ConstructParticle(); -} - -void G4HadronPhysicsFTF_BIC::ConstructProcess() -{ - if(G4Threading::IsMasterThread()) { - DumpBanner(); - } - CreateModels(); - ExtraConfiguration(); -} - -//#include "G4ProcessManager.hh" -#include "G4PhysListUtil.hh" -void G4HadronPhysicsFTF_BIC::ExtraConfiguration() -{ - // --- Neutrons --- - const G4ParticleDefinition* neutron = G4Neutron::Neutron(); - G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(neutron); - if(inel) { inel->AddDataSet(new G4NeutronInelasticXS()); } - G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); - if (capture) { - capture->RegisterMe(new G4NeutronRadCapture()); - } -} - diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsINCLXX.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsINCLXX.cc index 684f1908dc..3ef72e4654 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsINCLXX.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsINCLXX.cc @@ -55,11 +55,6 @@ #include "G4ParticleDefinition.hh" #include "G4ParticleTable.hh" -#include "G4MesonConstructor.hh" -#include "G4BaryonConstructor.hh" -#include "G4ShortLivedConstructor.hh" -#include "G4IonConstructor.hh" - #include "G4PionBuilder.hh" #include "G4KaonBuilder.hh" #include "G4QGSPPionBuilder.hh" @@ -80,13 +75,6 @@ #include "G4INCLXXNeutronBuilder.hh" #include "G4NeutronPHPBuilder.hh" -#include "G4HyperonBuilder.hh" -#include "G4HyperonFTFPBuilder.hh" -#include "G4HyperonQGSPBuilder.hh" -#include "G4AntiBarionBuilder.hh" -#include "G4FTFPAntiBarionBuilder.hh" -#include "G4QGSPAntiBarionBuilder.hh" - #include "G4HadronCaptureProcess.hh" #include "G4NeutronRadCapture.hh" #include "G4NeutronCaptureXS.hh" @@ -94,49 +82,34 @@ #include "G4ParticleHPCaptureData.hh" #include "G4LFission.hh" -#include "G4CrossSectionDataSetRegistry.hh" - #include "G4PhysListUtil.hh" -#include "G4ProcessManager.hh" - +#include "G4HadParticles.hh" #include "G4HadronicParameters.hh" +#include "G4HadronicBuilder.hh" // factory #include "G4PhysicsConstructorFactory.hh" // G4_DECLARE_PHYSCONSTR_FACTORY(G4HadronPhysicsINCLXX); -//Constant for configuration -namespace { - const G4bool quasiElasticFTF= false; // Use built-in quasi-elastic (not add-on) - const G4bool quasiElasticQGS= true; // For QGS, it must use it. -} - G4HadronPhysicsINCLXX::G4HadronPhysicsINCLXX(G4int) : G4HadronPhysicsINCLXX("hInelastic INCLXX") { } G4HadronPhysicsINCLXX::G4HadronPhysicsINCLXX(const G4String& name, const G4bool quasiElastic, const G4bool neutronHP, const G4bool ftfp) - : G4VPhysicsConstructor(name) - , QuasiElastic(quasiElastic) - , withNeutronHP(neutronHP) - , withFTFP(ftfp) + : G4HadronPhysicsFTFP_BERT(name, quasiElastic), + withNeutronHP(neutronHP), + withFTFP(ftfp) { + QuasiElastic = withFTFP ? false : true; + minBERT_neutron = withNeutronHP ? 19.9*MeV : 0.0; } -void G4HadronPhysicsINCLXX::CreateModels() -{ - Neutron(); - Proton(); - Pion(); - Kaon(); - Others(); -} - - void G4HadronPhysicsINCLXX::Neutron() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); //General schema: // 1) Create a builder // 2) Call AddBuilder @@ -146,9 +119,9 @@ void G4HadronPhysicsINCLXX::Neutron() AddBuilder(neu); G4PhysicsBuilderInterface* string = nullptr; if(withFTFP) { - string = new G4FTFPNeutronBuilder(quasiElasticFTF); + string = new G4FTFPNeutronBuilder(QuasiElastic); } else { - string = new G4QGSPNeutronBuilder(quasiElasticQGS); + string = new G4QGSPNeutronBuilder(QuasiElastic); } string->SetMinEnergy(15.*GeV); AddBuilder(string); @@ -161,7 +134,7 @@ void G4HadronPhysicsINCLXX::Neutron() if(withNeutronHP) { inclxxn->UsePreCompound(false); - inclxxn->SetMinEnergy(19.9*MeV); + inclxxn->SetMinEnergy(minBERT_neutron); auto hpn = new G4NeutronPHPBuilder; AddBuilder(hpn); neu->RegisterMe(hpn); @@ -173,17 +146,39 @@ void G4HadronPhysicsINCLXX::Neutron() } neu->Build(); + + const G4ParticleDefinition* neutron = G4Neutron::Neutron(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(neutron); + if(inel) { + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } + G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); + if (capture) { + G4NeutronRadCapture* theNeutronRadCapture = new G4NeutronRadCapture(); + theNeutronRadCapture->SetMinEnergy( minBERT_neutron ); + capture->RegisterMe( theNeutronRadCapture ); + } + G4HadronicProcess* fission = G4PhysListUtil::FindFissionProcess(neutron); + if (fission) { + G4LFission* theNeutronLEPFission = new G4LFission(); + theNeutronLEPFission->SetMinEnergy( minBERT_neutron ); + theNeutronLEPFission->SetMaxEnergy( G4HadronicParameters::Instance()->GetMaxEnergy() ); + fission->RegisterMe( theNeutronLEPFission ); + } } void G4HadronPhysicsINCLXX::Proton() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto pro =new G4ProtonBuilder; AddBuilder(pro); G4PhysicsBuilderInterface* string = nullptr; if(withFTFP) { - string = new G4FTFPProtonBuilder(quasiElasticFTF); + string = new G4FTFPProtonBuilder(QuasiElastic); } else { - string = new G4QGSPProtonBuilder(quasiElasticQGS); + string = new G4QGSPProtonBuilder(QuasiElastic); } string->SetMinEnergy(15.*GeV); AddBuilder(string); @@ -195,17 +190,26 @@ void G4HadronPhysicsINCLXX::Proton() inclxxp->SetMaxEnergy(20.0*GeV); pro->RegisterMe(inclxxp); pro->Build(); + + const G4ParticleDefinition* proton = G4Proton::Proton(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(proton); + if(inel) { + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } } void G4HadronPhysicsINCLXX::Pion() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto pi = new G4PionBuilder; AddBuilder(pi); G4PhysicsBuilderInterface* string = nullptr; if(withFTFP) { - string = new G4FTFPPionBuilder(quasiElasticFTF); + string = new G4FTFPPionBuilder(QuasiElastic); } else { - string = new G4QGSPPionBuilder(quasiElasticQGS); + string = new G4QGSPPionBuilder(QuasiElastic); } string->SetMinEnergy(15.*GeV); AddBuilder(string); @@ -218,17 +222,33 @@ void G4HadronPhysicsINCLXX::Pion() pi->RegisterMe(inclxx); pi->Build(); + + if( useFactorXS ) { + const G4ParticleDefinition* pion = G4PionPlus::PionPlus(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(pion); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); + } + pion = G4PionMinus::PionMinus(); + inel = G4PhysListUtil::FindInelasticProcess(pion); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); + } + } } void G4HadronPhysicsINCLXX::Kaon() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto k = new G4KaonBuilder; AddBuilder(k); G4PhysicsBuilderInterface* string = nullptr; if(withFTFP) { - string = new G4FTFPKaonBuilder(quasiElasticFTF); + string = new G4FTFPKaonBuilder(QuasiElastic); } else { - string = new G4QGSPKaonBuilder(quasiElasticQGS); + string = new G4QGSPKaonBuilder(QuasiElastic); } string->SetMinEnergy(14.*GeV); AddBuilder(string); @@ -241,83 +261,58 @@ void G4HadronPhysicsINCLXX::Kaon() k->RegisterMe(bert); k->Build(); + + if( useFactorXS ) { + G4ParticleTable* table = G4ParticleTable::GetParticleTable(); + for( auto & pdg : G4HadParticles::GetKaons() ) { + auto part = table->FindParticle( pdg ); + if ( part == nullptr ) { continue; } + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(part); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorHadronInelastic() ); + } + } + } } void G4HadronPhysicsINCLXX::Others() { - // Hyperons (and anti-hyperons) - auto hyp = new G4HyperonBuilder; - AddBuilder(hyp); - auto ftfphyp = new G4HyperonFTFPBuilder(quasiElasticFTF); - AddBuilder(ftfphyp); - hyp->RegisterMe(ftfphyp); - if (!withFTFP) { - ftfphyp->SetMaxEnergy(G4HadronicParameters::Instance()->GetMaxEnergyTransitionQGS_FTF()); - auto qgsphyp = new G4HyperonQGSPBuilder(quasiElasticQGS); - AddBuilder(qgsphyp); - qgsphyp->SetMinEnergy(G4HadronicParameters::Instance()->GetMinEnergyTransitionQGS_FTF()); - hyp->RegisterMe(qgsphyp); - } - hyp->Build(); + G4HadronicParameters* param = G4HadronicParameters::Instance(); - // Antibaryons - auto abar = new G4AntiBarionBuilder; - AddBuilder(abar); - auto ftf = new G4FTFPAntiBarionBuilder(quasiElasticFTF); - AddBuilder(ftf); - abar->RegisterMe(ftf); - if (!withFTFP) { - ftf->SetMaxEnergy(G4HadronicParameters::Instance()->GetMaxEnergyTransitionQGS_FTF()); - auto qgs = new G4QGSPAntiBarionBuilder(quasiElasticQGS); - AddBuilder(qgs); - qgs->SetMinEnergy(G4HadronicParameters::Instance()->GetMinEnergyTransitionQGS_FTF()); - abar->RegisterMe(qgs); + // high energy particles + if( param->GetMaxEnergy() > param->EnergyThresholdForHeavyHadrons() ) { + + // anti light ions + G4HadronicBuilder::BuildAntiLightIonsFTFP(); + + if(withFTFP) { + // hyperons + G4HadronicBuilder::BuildHyperonsFTFP_BERT(); + + // b-, c- baryons and mesons + if( param->EnableBCParticles() ) { + G4HadronicBuilder::BuildBCHadronsFTFP_BERT(); + } + } else { + // hyperons + G4HadronicBuilder::BuildHyperonsQGSP_FTFP_BERT(true); + + // b-, c- baryons and mesons + if( param->EnableBCParticles() ) { + G4HadronicBuilder::BuildBCHadronsQGSP_FTFP_BERT(true); + } + } } - abar->Build(); } G4HadronPhysicsINCLXX::~G4HadronPhysicsINCLXX() {} -void G4HadronPhysicsINCLXX::ConstructParticle() -{ - G4MesonConstructor pMesonConstructor; - pMesonConstructor.ConstructParticle(); - - G4BaryonConstructor pBaryonConstructor; - pBaryonConstructor.ConstructParticle(); - - G4ShortLivedConstructor pShortLivedConstructor; - pShortLivedConstructor.ConstructParticle(); - - G4IonConstructor pIonConstructor; - pIonConstructor.ConstructParticle(); -} - void G4HadronPhysicsINCLXX::ConstructProcess() { + if(G4Threading::IsMasterThread()) { + DumpBanner(); + } CreateModels(); - ExtraConfiguration(); } -void G4HadronPhysicsINCLXX::ExtraConfiguration() -{ - // --- Neutrons --- - const G4ParticleDefinition* neutron = G4Neutron::Neutron(); - G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); - if (capture) { - G4NeutronRadCapture* theNeutronRadCapture = new G4NeutronRadCapture(); - capture->RegisterMe(theNeutronRadCapture); - if ( withNeutronHP ) { - capture->AddDataSet( new G4ParticleHPCaptureData ); - theNeutronRadCapture->SetMinEnergy( 19.9*MeV ); - } - } - G4HadronicProcess* fission = G4PhysListUtil::FindFissionProcess(neutron); - if (fission && withNeutronHP) { - G4LFission* theNeutronLEPFission = new G4LFission(); - theNeutronLEPFission->SetMinEnergy( 19.9*MeV ); - theNeutronLEPFission->SetMaxEnergy( G4HadronicParameters::Instance()->GetMaxEnergy() ); - fission->RegisterMe( theNeutronLEPFission ); - } -} diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsNuBeam.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsNuBeam.cc index f4ca517058..a1cfdc6d7d 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsNuBeam.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsNuBeam.cc @@ -40,9 +40,6 @@ #include "G4HadronPhysicsNuBeam.hh" #include "G4QGSPLundStrFragmProtonBuilder.hh" -#include "G4PiKBuilder.hh" -#include "G4FTFPPiKBuilder.hh" -#include "G4BertiniPiKBuilder.hh" #include "G4ProtonBuilder.hh" #include "G4FTFPProtonBuilder.hh" #include "G4BertiniProtonBuilder.hh" @@ -50,31 +47,14 @@ #include "G4ios.hh" #include "G4SystemOfUnits.hh" -//#include "G4ParticleDefinition.hh" -//#include "G4ParticleTable.hh" -// -//#include "G4MesonConstructor.hh" -//#include "G4BaryonConstructor.hh" -//#include "G4ShortLivedConstructor.hh" -// -//#include "G4ComponentGGHadronNucleusXsc.hh" -//#include "G4CrossSectionInelastic.hh" -//#include "G4HadronCaptureProcess.hh" -//#include "G4NeutronRadCapture.hh" -//#include "G4NeutronInelasticXS.hh" -//#include "G4NeutronCaptureXS.hh" -// -//#include "G4CrossSectionDataSetRegistry.hh" -// -//#include "G4PhysListUtil.hh" +#include "G4PhysListUtil.hh" +#include "G4HadronicParameters.hh" // factory #include "G4PhysicsConstructorFactory.hh" // G4_DECLARE_PHYSCONSTR_FACTORY(G4HadronPhysicsNuBeam); -//G4ThreadLocal G4HadronPhysicsNuBeam::ThreadPrivate* G4HadronPhysicsNuBeam::tpdata=0; - G4HadronPhysicsNuBeam::G4HadronPhysicsNuBeam(G4int) : G4HadronPhysicsNuBeam("hInelasticNuBeam",false) {} @@ -82,23 +62,27 @@ G4HadronPhysicsNuBeam::G4HadronPhysicsNuBeam(G4int) : G4HadronPhysicsNuBeam::G4HadronPhysicsNuBeam(const G4String& name, G4bool quasiElastic) : G4HadronPhysicsFTFP_BERT(name,quasiElastic) { - minFTFP_neutron = 4.0*GeV; - maxBERT_neutron = 5.0*GeV; - minFTFP_proton = 3.0*GeV; - maxBERT_proton = 3.5*GeV; - maxFTFP_proton = 101*GeV; - minFTFP_pion = minFTFP_kaon = 3.0*GeV; - maxBERT_pion = maxBERT_kaon = 3.5*GeV; + // specific transition energies should be defined here + //minFTFP_neutron = 4.0*GeV; + //maxBERT_neutron = 5.0*GeV; + minFTFP_proton = 3.0*GeV; + maxFTFP_proton = 101.0*GeV; + //maxBERT_proton = 3.5*GeV; + //minFTFP_pion = minFTFP_kaon = 3.0*GeV; + //maxBERT_pion = maxBERT_kaon = 3.5*GeV; } void G4HadronPhysicsNuBeam::Proton() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto pro = new G4ProtonBuilder; AddBuilder(pro); // this is the new "custom" proton builder, tentatively for NuBeam // - // no need to set the min energy because it's set in the ProBuilder (at 100GeV) + // no need to set the min energy because it's set in the ProBuilder // ... and theMax will be set via Build() // // also explicitly set quasi-elastic key ON for QGS @@ -116,145 +100,25 @@ void G4HadronPhysicsNuBeam::Proton() ftfppro->SetMinEnergy(minFTFP_proton); ftfppro->SetMaxEnergy(maxFTFP_proton); // - // standard Bertini builder, but the validity limit in energy has been moved higher + // standard Bertini builder // auto bertpro = new G4BertiniProtonBuilder; AddBuilder(bertpro); pro->RegisterMe(bertpro); bertpro->SetMaxEnergy(maxBERT_proton); pro->Build(); + + const G4ParticleDefinition* proton = G4Proton::Proton(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(proton); + if(inel) { + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } } -void G4HadronPhysicsNuBeam::Pion() +void G4HadronPhysicsNuBeam::ConstructProcess() { - // this one has energy ranges different from FTFP_BERT, - // namely, Bertini is extended up to 10GeV, and FTFP starts at 7GeV - // - auto pik = new G4PiKBuilder; - AddBuilder(pik); - auto ftfppik = new G4FTFPPiKBuilder(QuasiElastic); - AddBuilder(ftfppik); - ftfppik->SetMinEnergy(minFTFP_pion); - pik->RegisterMe(ftfppik); - auto bertpik = new G4BertiniPiKBuilder(); - AddBuilder(bertpik); - bertpik->SetMaxEnergy(maxBERT_pion); - pik->RegisterMe(bertpik); - pik->Build(); + if(G4Threading::IsMasterThread()) { + DumpBanner(); + } + CreateModels(); } - -void G4HadronPhysicsNuBeam::Kaon() { - //Use combined with pions -} - -//void G4HadronPhysicsNuBeam::CreateModels() -//{ -// // this one has energy ranges different from FTFP_BERT, -// // namely, Bertini is extended up to 10GeV, and FTFP starts at 7GeV -// // -// tpdata->thePiK=new G4PiKBuilder; -// tpdata->theFTFPPiK=new G4FTFPPiKBuilder(QuasiElastic); -// tpdata->thePiK->RegisterMe(tpdata->theFTFPPiK); -// tpdata->theFTFPPiK->SetMinEnergy(3.*GeV); -// tpdata->thePiK->RegisterMe(tpdata->theBertiniPiK=new G4BertiniPiKBuilder); -// tpdata->theBertiniPiK->SetMaxEnergy(3.5*GeV); -// -// // this is "standard" and is the same as in FTFP_BERT -// // -// tpdata->theHyperon=new G4HyperonFTFPBuilder; -// tpdata->theAntiBaryon=new G4AntiBarionBuilder; -// tpdata->theAntiBaryon->RegisterMe(tpdata->theFTFPAntiBaryon=new G4FTFPAntiBarionBuilder(QuasiElastic)); -// -// return; -// -//} - -//G4HadronPhysicsNuBeam::~G4HadronPhysicsNuBeam() -//{ -// if (!tpdata) return; -// -// delete tpdata->theNeutrons; -// delete tpdata->theBertiniNeutron; -// delete tpdata->theFTFPNeutron; -// -// delete tpdata->thePiK; -// delete tpdata->theBertiniPiK; -// delete tpdata->theFTFPPiK; -// -// delete tpdata->thePro; -// delete tpdata->theBertiniPro; -// delete tpdata->theFTFPPro; -// delete tpdata->theQGSPPro; -// -// delete tpdata->theHyperon; -// delete tpdata->theAntiBaryon; -// delete tpdata->theFTFPAntiBaryon; -// -//} - -//void G4HadronPhysicsNuBeam::ConstructParticle() -//{ -// -// G4MesonConstructor pMesonConstructor; -// pMesonConstructor.ConstructParticle(); -// -// G4BaryonConstructor pBaryonConstructor; -// pBaryonConstructor.ConstructParticle(); -// -// G4ShortLivedConstructor pShortLivedConstructor; -// pShortLivedConstructor.ConstructParticle(); -// -// return; -// -//} -// -//#include "G4ProcessManager.hh" -//void G4HadronPhysicsNuBeam::ConstructProcess() -//{ -// -// if ( tpdata == 0 ) tpdata = new ThreadPrivate; -// -// CreateModels(); -// -// tpdata->theNeutrons->Build(); -// tpdata->thePro->Build(); -// tpdata->thePiK->Build(); -// -// // --- Kaons --- -// tpdata->xsKaon = new G4ComponentGGHadronNucleusXsc(); -// G4VCrossSectionDataSet * kaonxs = new G4CrossSectionInelastic(tpdata->xsKaon); -// G4PhysListUtil::FindInelasticProcess(G4KaonMinus::KaonMinus())->AddDataSet(kaonxs); -// G4PhysListUtil::FindInelasticProcess(G4KaonPlus::KaonPlus())->AddDataSet(kaonxs); -// G4PhysListUtil::FindInelasticProcess(G4KaonZeroShort::KaonZeroShort())->AddDataSet(kaonxs); -// G4PhysListUtil::FindInelasticProcess(G4KaonZeroLong::KaonZeroLong())->AddDataSet(kaonxs); -// -// tpdata->theHyperon->Build(); -// tpdata->theAntiBaryon->Build(); -// -// // --- Neutrons --- -// // -// tpdata->xsNeutronInelasticXS = (G4NeutronInelasticXS*)G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet(G4NeutronInelasticXS::Default_Name()); -// G4PhysListUtil::FindInelasticProcess(G4Neutron::Neutron())->AddDataSet(tpdata->xsNeutronInelasticXS); -// -// G4HadronicProcess* capture = 0; -// G4ProcessManager* pmanager = G4Neutron::Neutron()->GetProcessManager(); -// G4ProcessVector* pv = pmanager->GetProcessList(); -// for ( size_t i=0; i < static_cast(pv->size()); ++i ) -// { -// if ( fCapture == ((*pv)[i])->GetProcessSubType() ) -// { -// capture = static_cast((*pv)[i]); -// } -// } -// if ( ! capture ) { -// capture = new G4HadronCaptureProcess("nCapture"); -// pmanager->AddDiscreteProcess(capture); -// } -// tpdata->xsNeutronCaptureXS = (G4NeutronCaptureXS*)G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet(G4NeutronCaptureXS::Default_Name()); -// capture->AddDataSet(tpdata->xsNeutronCaptureXS); -// capture->RegisterMe(new G4NeutronRadCapture()); -// -// return; -// -//} - diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BERT.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BERT.cc index e36ca57acf..e58bc00d91 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BERT.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BERT.cc @@ -68,12 +68,6 @@ #include "G4QGSPNeutronBuilder.hh" #include "G4BertiniNeutronBuilder.hh" -#include "G4HyperonBuilder.hh" -#include "G4HyperonFTFPBuilder.hh" -#include "G4HyperonQGSPBuilder.hh" -#include "G4AntiBarionBuilder.hh" -#include "G4FTFPAntiBarionBuilder.hh" -#include "G4QGSPAntiBarionBuilder.hh" #include "G4MesonConstructor.hh" #include "G4BaryonConstructor.hh" #include "G4ShortLivedConstructor.hh" @@ -83,10 +77,9 @@ #include "G4NeutronRadCapture.hh" #include "G4NeutronInelasticXS.hh" #include "G4NeutronCaptureXS.hh" -#include "G4CrossSectionDataSetRegistry.hh" #include "G4PhysListUtil.hh" -#include "G4ProcessManager.hh" +#include "G4HadParticles.hh" #include "G4HadronicParameters.hh" #include "G4HadronicBuilder.hh" @@ -97,21 +90,22 @@ G4_DECLARE_PHYSCONSTR_FACTORY(G4HadronPhysicsQGSP_BERT); G4HadronPhysicsQGSP_BERT::G4HadronPhysicsQGSP_BERT(G4int) : G4HadronPhysicsQGSP_BERT("hInelastic QGSP_BERT",true) {} -G4HadronPhysicsQGSP_BERT::G4HadronPhysicsQGSP_BERT(const G4String& name, G4bool /*quasiElastic*/) +G4HadronPhysicsQGSP_BERT::G4HadronPhysicsQGSP_BERT(const G4String& name, G4bool) : G4VPhysicsConstructor(name) { - QuasiElasticFTF= false; // Use built-in quasi-elastic (not add-on) - QuasiElasticQGS= true; // For QGS, it must use it. - minQGSP_proton = minQGSP_neutron = minQGSP_pik = - G4HadronicParameters::Instance()->GetMinEnergyTransitionQGS_FTF(); - maxFTFP_proton = maxFTFP_neutron = maxFTFP_pik = - G4HadronicParameters::Instance()->GetMaxEnergyTransitionQGS_FTF(); - minFTFP_proton = minFTFP_neutron = minFTFP_pik = - G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); - maxBERT_proton = maxBERT_neutron = maxBERT_pik = - G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); - minBERT_proton = minBERT_neutron = minBERT_pik = 0.0; - + QuasiElasticFTF= false; // Use built-in quasi-elastic (not add-on) + QuasiElasticQGS= true; // For QGS, it must use it. + G4HadronicParameters* param = G4HadronicParameters::Instance(); + minQGSP_proton = minQGSP_neutron = minQGSP_pik = + param->GetMinEnergyTransitionQGS_FTF(); + maxFTFP_proton = maxFTFP_neutron = maxFTFP_pik = + param->GetMaxEnergyTransitionQGS_FTF(); + minFTFP_proton = minFTFP_neutron = minFTFP_pik = + param->GetMinEnergyTransitionFTF_Cascade(); + maxBERT_proton = maxBERT_neutron = maxBERT_pik = + param->GetMaxEnergyTransitionFTF_Cascade(); + minBERT_proton = minBERT_neutron = minBERT_pik = 0.0; + param->SetEnableBCParticles(true); } void G4HadronPhysicsQGSP_BERT::CreateModels() @@ -119,13 +113,13 @@ void G4HadronPhysicsQGSP_BERT::CreateModels() Neutron(); Proton(); Pion(); - Kaon(); Others(); - G4HadronicBuilder::BuildBCHadronsQGSP_FTFP_BERT(QuasiElasticQGS); } void G4HadronPhysicsQGSP_BERT::Neutron() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); //General schema: // 1) Create a builder // 2) Call AddBuilder @@ -148,10 +142,24 @@ void G4HadronPhysicsQGSP_BERT::Neutron() bert->SetMaxEnergy(maxBERT_neutron); neu->RegisterMe(bert); neu->Build(); + + const G4ParticleDefinition* neutron = G4Neutron::Neutron(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(neutron); + if(inel) { + inel->AddDataSet(new G4NeutronInelasticXS()); + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } + G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); + if (capture) { + capture->RegisterMe(new G4NeutronRadCapture()); + } } void G4HadronPhysicsQGSP_BERT::Proton() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto pro = new G4ProtonBuilder; AddBuilder(pro); auto qgs = new G4QGSPProtonBuilder(QuasiElasticQGS); @@ -169,10 +177,19 @@ void G4HadronPhysicsQGSP_BERT::Proton() bert->SetMaxEnergy(maxBERT_proton); pro->RegisterMe(bert); pro->Build(); + + const G4ParticleDefinition* proton = G4Proton::Proton(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(proton); + if(inel) { + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } } void G4HadronPhysicsQGSP_BERT::Pion() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto pik = new G4PiKBuilder; AddBuilder(pik); auto qgs = new G4QGSPPiKBuilder(QuasiElasticQGS); @@ -190,34 +207,49 @@ void G4HadronPhysicsQGSP_BERT::Pion() bert->SetMaxEnergy(maxBERT_pik); pik->RegisterMe(bert); pik->Build(); + + // add cross section factor + if( useFactorXS ) { + const G4ParticleDefinition* pion = G4PionPlus::PionPlus(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(pion); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); + } + pion = G4PionMinus::PionMinus(); + inel = G4PhysListUtil::FindInelasticProcess(pion); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); + } + G4ParticleTable* table = G4ParticleTable::GetParticleTable(); + for( auto & pdg : G4HadParticles::GetKaons() ) { + auto part = table->FindParticle( pdg ); + if ( part == nullptr ) { continue; } + inel = G4PhysListUtil::FindInelasticProcess(part); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorHadronInelastic() ); + } + } + } } void G4HadronPhysicsQGSP_BERT::Others() { - // Hyperons (and anti-hyperons) - auto hyp = new G4HyperonBuilder; - AddBuilder(hyp); - auto ftfphyp = new G4HyperonFTFPBuilder(QuasiElasticFTF); - AddBuilder(ftfphyp); - ftfphyp->SetMaxEnergy(maxFTFP_proton); - hyp->RegisterMe(ftfphyp); - auto qgsphyp = new G4HyperonQGSPBuilder(QuasiElasticQGS); - AddBuilder(qgsphyp); - qgsphyp->SetMinEnergy(minQGSP_proton); - hyp->RegisterMe(qgsphyp); - hyp->Build(); - // Antibaryons - auto abar = new G4AntiBarionBuilder; - AddBuilder(abar); - auto ftf = new G4FTFPAntiBarionBuilder(QuasiElasticFTF); - AddBuilder(ftf); - ftf->SetMaxEnergy(maxFTFP_proton); - abar->RegisterMe(ftf); - auto qgs = new G4QGSPAntiBarionBuilder(QuasiElasticQGS); - AddBuilder(qgs); - qgs->SetMinEnergy(minQGSP_proton); - abar->RegisterMe(qgs); - abar->Build(); + G4HadronicParameters* param = G4HadronicParameters::Instance(); + + // high energy particles + if( param->GetMaxEnergy() > param->EnergyThresholdForHeavyHadrons() ) { + + // anti light ions + G4HadronicBuilder::BuildAntiLightIonsFTFP(); + + // hyperons + G4HadronicBuilder::BuildHyperonsQGSP_FTFP_BERT(true); + + // b-, c- baryons and mesons + if( param->EnableBCParticles() ) { + G4HadronicBuilder::BuildBCHadronsQGSP_FTFP_BERT(true); + } + } } G4HadronPhysicsQGSP_BERT::~G4HadronPhysicsQGSP_BERT() @@ -238,24 +270,34 @@ void G4HadronPhysicsQGSP_BERT::ConstructParticle() pIonConstructor.ConstructParticle(); } -void G4HadronPhysicsQGSP_BERT::ExtraConfiguration() -{ - //Modify Neutrons - const G4ParticleDefinition* neutron = G4Neutron::Neutron(); - G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(neutron); - if(inel) { inel->AddDataSet(new G4NeutronInelasticXS()); } - G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); - if (capture) { - capture->RegisterMe(new G4NeutronRadCapture()); - } -} - void G4HadronPhysicsQGSP_BERT::ConstructProcess() { + // allow changing of parameters at PreInit + G4HadronicParameters* param = G4HadronicParameters::Instance(); + minQGSP_proton = minQGSP_neutron = minQGSP_pik = + param->GetMinEnergyTransitionQGS_FTF(); + maxFTFP_proton = maxFTFP_neutron = maxFTFP_pik = + param->GetMaxEnergyTransitionQGS_FTF(); + minFTFP_proton = minFTFP_neutron = minFTFP_pik = + param->GetMinEnergyTransitionFTF_Cascade(); + maxBERT_pik = param->GetMaxEnergyTransitionFTF_Cascade(); + if(G4Threading::IsMasterThread()) { DumpBanner(); } CreateModels(); - ExtraConfiguration(); } +void G4HadronPhysicsQGSP_BERT::DumpBanner() +{ + G4cout << G4endl; + G4cout << " " << GetPhysicsName() << " Thresholds: " << G4endl; + G4cout << " 1) between BERT and FTF/P over the interval " + << minFTFP_proton/GeV << " to " << maxBERT_proton/GeV << " GeV. " << G4endl; + G4cout << " 2) between FTF/P and QGS/P over the interval " + << minQGSP_proton/GeV << " to " << maxFTFP_proton/GeV << " GeV. " << G4endl; + G4cout << " -- quasiElastic: " << QuasiElasticQGS << " for QGS " + << " and " << QuasiElasticFTF << " for FTF" << G4endl; +} + + diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BERT_HP.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BERT_HP.cc index 7a78e54a97..f936e7a602 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BERT_HP.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BERT_HP.cc @@ -82,11 +82,14 @@ G4HadronPhysicsQGSP_BERT_HP::G4HadronPhysicsQGSP_BERT_HP(G4int) G4HadronPhysicsQGSP_BERT_HP::G4HadronPhysicsQGSP_BERT_HP(const G4String& name, G4bool /*quasiElastic */ ) : G4HadronPhysicsQGSP_BERT(name) { - minBERT_neutron = 19.9*MeV; + minBERT_neutron = 19.9*MeV; } void G4HadronPhysicsQGSP_BERT_HP::Neutron() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto neu = new G4NeutronBuilder( true ); // Fission on AddBuilder(neu); auto qgs = new G4QGSPNeutronBuilder(QuasiElasticQGS); @@ -107,21 +110,21 @@ void G4HadronPhysicsQGSP_BERT_HP::Neutron() AddBuilder(hp); neu->RegisterMe(hp); neu->Build(); -} -void G4HadronPhysicsQGSP_BERT_HP::ExtraConfiguration() -{ - // --- Neutrons --- const G4ParticleDefinition* neutron = G4Neutron::Neutron(); - G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); - if (capture) { - G4NeutronRadCapture* theNeutronRadCapture = new G4NeutronRadCapture(); - theNeutronRadCapture->SetMinEnergy( minBERT_neutron ); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess( neutron ); + if(inel) { + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } + G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess( neutron ); + if ( capture ) { + G4NeutronRadCapture* theNeutronRadCapture = new G4NeutronRadCapture; + theNeutronRadCapture->SetMinEnergy( minBERT_neutron ); capture->RegisterMe( theNeutronRadCapture ); } - G4HadronicProcess* fission = G4PhysListUtil::FindFissionProcess(neutron); - if (fission) { - G4LFission* theNeutronLEPFission = new G4LFission(); + G4HadronicProcess* fission = G4PhysListUtil::FindFissionProcess( neutron ); + if ( fission ) { + G4LFission* theNeutronLEPFission = new G4LFission; theNeutronLEPFission->SetMinEnergy( minBERT_neutron ); theNeutronLEPFission->SetMaxEnergy( G4HadronicParameters::Instance()->GetMaxEnergy() ); fission->RegisterMe( theNeutronLEPFission ); diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BIC.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BIC.cc index c4a542128d..2e9447fba4 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BIC.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BIC.cc @@ -59,13 +59,6 @@ #include "G4FTFPNeutronBuilder.hh" #include "G4QGSPNeutronBuilder.hh" #include "G4BinaryNeutronBuilder.hh" - -#include "G4HyperonBuilder.hh" -#include "G4HyperonFTFPBuilder.hh" -#include "G4HyperonQGSPBuilder.hh" -#include "G4AntiBarionBuilder.hh" -#include "G4FTFPAntiBarionBuilder.hh" -#include "G4QGSPAntiBarionBuilder.hh" #include "globals.hh" #include "G4ios.hh" #include "G4SystemOfUnits.hh" @@ -83,7 +76,9 @@ #include "G4NeutronCaptureXS.hh" #include "G4PhysListUtil.hh" +#include "G4HadParticles.hh" #include "G4HadronicParameters.hh" +#include "G4HadronicBuilder.hh" #include "G4PhysicsConstructorFactory.hh" @@ -98,14 +93,16 @@ G4HadronPhysicsQGSP_BIC::G4HadronPhysicsQGSP_BIC(const G4String& name, G4bool) { QuasiElasticFTF= false; // Use built-in quasi-elastic (not add-on) QuasiElasticQGS= true; // For QGS, it must use it. + G4HadronicParameters* param = G4HadronicParameters::Instance(); minQGSP_proton = minQGSP_neutron = minQGSP_pik = - G4HadronicParameters::Instance()->GetMinEnergyTransitionQGS_FTF(); + param->GetMinEnergyTransitionQGS_FTF(); maxFTFP_proton = maxFTFP_neutron = maxFTFP_pik = - G4HadronicParameters::Instance()->GetMaxEnergyTransitionQGS_FTF(); + param->GetMaxEnergyTransitionQGS_FTF(); minFTFP_proton = minFTFP_neutron = minFTFP_pik = - G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); + param->GetMinEnergyTransitionFTF_Cascade(); maxBIC_proton = maxBIC_neutron = maxBERT_pik = - G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); + param->GetMaxEnergyTransitionFTF_Cascade(); + minBIC_proton = minBIC_neutron = 0.0; } void G4HadronPhysicsQGSP_BIC::CreateModels() @@ -113,12 +110,14 @@ void G4HadronPhysicsQGSP_BIC::CreateModels() Neutron(); Proton(); Pion(); - Kaon(); Others(); } void G4HadronPhysicsQGSP_BIC::Neutron() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto neu = new G4NeutronBuilder; AddBuilder(neu); auto qgs = new G4QGSPNeutronBuilder(QuasiElasticQGS); @@ -132,13 +131,28 @@ void G4HadronPhysicsQGSP_BIC::Neutron() neu->RegisterMe(ftf); auto bic = new G4BinaryNeutronBuilder; AddBuilder(bic); + bic->SetMinEnergy(minBIC_neutron); bic->SetMaxEnergy(maxBIC_neutron); neu->RegisterMe(bic); neu->Build(); + + const G4ParticleDefinition* neutron = G4Neutron::Neutron(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(neutron); + if(inel) { + inel->AddDataSet(new G4NeutronInelasticXS()); + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } + G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); + if (capture) { + capture->RegisterMe(new G4NeutronRadCapture()); + } } void G4HadronPhysicsQGSP_BIC::Proton() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto pro = new G4ProtonBuilder; AddBuilder(pro); auto qgs = new G4QGSPProtonBuilder(QuasiElasticQGS); @@ -152,14 +166,24 @@ void G4HadronPhysicsQGSP_BIC::Proton() pro->RegisterMe(ftf); auto bic = new G4BinaryProtonBuilder; AddBuilder(bic); + bic->SetMinEnergy(minBIC_proton); bic->SetMaxEnergy(maxBIC_proton); pro->RegisterMe(bic); pro->Build(); + + const G4ParticleDefinition* proton = G4Proton::Proton(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(proton); + if(inel) { + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } } void G4HadronPhysicsQGSP_BIC::Pion() { - auto pik = new G4PiKBuilder; + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + + auto pik = new G4PiKBuilder(); AddBuilder(pik); auto qgs = new G4QGSPPiKBuilder(QuasiElasticQGS); AddBuilder(qgs); @@ -170,39 +194,54 @@ void G4HadronPhysicsQGSP_BIC::Pion() ftf->SetMaxEnergy(maxFTFP_pik); ftf->SetMinEnergy(minFTFP_pik); pik->RegisterMe(ftf); - auto bert = new G4BertiniPiKBuilder; + auto bert = new G4BertiniPiKBuilder(); AddBuilder(bert); bert->SetMaxEnergy(maxBERT_pik); pik->RegisterMe(bert); pik->Build(); + + // add cross section factor + if( useFactorXS ) { + const G4ParticleDefinition* pion = G4PionPlus::PionPlus(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(pion); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); + } + pion = G4PionMinus::PionMinus(); + inel = G4PhysListUtil::FindInelasticProcess(pion); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); + } + G4ParticleTable* table = G4ParticleTable::GetParticleTable(); + for( auto & pdg : G4HadParticles::GetKaons() ) { + auto part = table->FindParticle( pdg ); + if ( part == nullptr ) { continue; } + inel = G4PhysListUtil::FindInelasticProcess(part); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorHadronInelastic() ); + } + } + } } void G4HadronPhysicsQGSP_BIC::Others() { - // Hyperons (and anti-hyperons) - auto hyp = new G4HyperonBuilder; - AddBuilder(hyp); - auto ftfphyp = new G4HyperonFTFPBuilder(QuasiElasticFTF); - AddBuilder(ftfphyp); - ftfphyp->SetMaxEnergy(maxFTFP_proton); - hyp->RegisterMe(ftfphyp); - auto qgsphyp = new G4HyperonQGSPBuilder(QuasiElasticQGS); - AddBuilder(qgsphyp); - qgsphyp->SetMinEnergy(minQGSP_proton); - hyp->RegisterMe(qgsphyp); - hyp->Build(); - // Antibaryons - auto abar = new G4AntiBarionBuilder; - AddBuilder(abar); - auto ftf = new G4FTFPAntiBarionBuilder(QuasiElasticFTF); - AddBuilder(ftf); - ftf->SetMaxEnergy(maxFTFP_proton); - abar->RegisterMe(ftf); - auto qgs = new G4QGSPAntiBarionBuilder(QuasiElasticQGS); - AddBuilder(qgs); - qgs->SetMinEnergy(minQGSP_proton); - abar->RegisterMe(qgs); - abar->Build(); + G4HadronicParameters* param = G4HadronicParameters::Instance(); + + // high energy particles + if( param->GetMaxEnergy() > param->EnergyThresholdForHeavyHadrons() ) { + + // anti light ions + G4HadronicBuilder::BuildAntiLightIonsFTFP(); + + // hyperons + G4HadronicBuilder::BuildHyperonsQGSP_FTFP_BERT(true); + + // b-, c- baryons and mesons + if( param->EnableBCParticles() ) { + G4HadronicBuilder::BuildBCHadronsQGSP_FTFP_BERT(true); + } + } } G4HadronPhysicsQGSP_BIC::~G4HadronPhysicsQGSP_BIC() @@ -225,21 +264,19 @@ void G4HadronPhysicsQGSP_BIC::ConstructParticle() void G4HadronPhysicsQGSP_BIC::ConstructProcess() { + // allow changing of parameters at PreInit + G4HadronicParameters* param = G4HadronicParameters::Instance(); + minQGSP_proton = minQGSP_neutron = minQGSP_pik = + param->GetMinEnergyTransitionQGS_FTF(); + maxFTFP_proton = maxFTFP_neutron = maxFTFP_pik = + param->GetMaxEnergyTransitionQGS_FTF(); + minFTFP_proton = minFTFP_neutron = minFTFP_pik = + param->GetMinEnergyTransitionFTF_Cascade(); + maxBIC_proton = maxBIC_neutron = maxBERT_pik = + param->GetMaxEnergyTransitionFTF_Cascade(); + if(G4Threading::IsMasterThread()) { DumpBanner(); } CreateModels(); - ExtraConfiguration(); -} - -void G4HadronPhysicsQGSP_BIC::ExtraConfiguration() -{ - // --- Neutrons --- - const G4ParticleDefinition* neutron = G4Neutron::Neutron(); - G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(neutron); - if(inel) { inel->AddDataSet(new G4NeutronInelasticXS()); } - G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); - if (capture) { - capture->RegisterMe(new G4NeutronRadCapture()); - } } diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BIC_AllHP.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BIC_AllHP.cc index 516bce26ab..ff6024ddb7 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BIC_AllHP.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BIC_AllHP.cc @@ -54,8 +54,8 @@ G4HadronPhysicsQGSP_BIC_AllHP::G4HadronPhysicsQGSP_BIC_AllHP( G4int ) {} -G4HadronPhysicsQGSP_BIC_AllHP::G4HadronPhysicsQGSP_BIC_AllHP( const G4String& name, G4bool /*quasiElastic */ ) - : G4HadronPhysicsQGSP_BIC_HP( name ) +G4HadronPhysicsQGSP_BIC_AllHP::G4HadronPhysicsQGSP_BIC_AllHP( const G4String& name, G4bool quasiElastic ) + : G4HadronPhysicsQGSP_BIC_HP( name, quasiElastic ) { minBIC_proton = 190.0*CLHEP::MeV; maxHP_proton = 200.0*CLHEP::MeV; @@ -63,6 +63,9 @@ G4HadronPhysicsQGSP_BIC_AllHP::G4HadronPhysicsQGSP_BIC_AllHP( const G4String& na void G4HadronPhysicsQGSP_BIC_AllHP::Proton() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto pro = new G4ProtonBuilder; AddBuilder( pro ); auto qgs = new G4QGSPProtonBuilder( QuasiElasticQGS ); @@ -84,4 +87,10 @@ void G4HadronPhysicsQGSP_BIC_AllHP::Proton() { hp->SetMaxEnergy( maxHP_proton ); pro->RegisterMe( hp ); pro->Build(); + + const G4ParticleDefinition* proton = G4Proton::Proton(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(proton); + if(inel) { + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } } diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BIC_HP.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BIC_HP.cc index 7f33bb0a60..6fa5b0bd37 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BIC_HP.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_BIC_HP.cc @@ -74,15 +74,16 @@ G4HadronPhysicsQGSP_BIC_HP::G4HadronPhysicsQGSP_BIC_HP( G4int ) : G4HadronPhysicsQGSP_BIC_HP( "hInelastic QGSP_BIC_HP" ) {} - -G4HadronPhysicsQGSP_BIC_HP::G4HadronPhysicsQGSP_BIC_HP( const G4String& name, G4bool /*quasiElastic */ ) - : G4HadronPhysicsQGSP_BIC( name ) +G4HadronPhysicsQGSP_BIC_HP::G4HadronPhysicsQGSP_BIC_HP( const G4String& name, G4bool quasiElastic ) + : G4HadronPhysicsQGSP_BIC( name, quasiElastic ) { minBIC_neutron = 19.9*MeV; } - void G4HadronPhysicsQGSP_BIC_HP::Neutron() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + auto neu = new G4NeutronBuilder( true ); // Fission on AddBuilder( neu ); auto qgs = new G4QGSPNeutronBuilder( QuasiElasticQGS ); @@ -103,12 +104,12 @@ void G4HadronPhysicsQGSP_BIC_HP::Neutron() { AddBuilder( hp ); neu->RegisterMe( hp ); neu->Build(); -} - -void G4HadronPhysicsQGSP_BIC_HP::ExtraConfiguration() { - // --- Neutrons --- const G4ParticleDefinition* neutron = G4Neutron::Neutron(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess( neutron ); + if(inel) { + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess( neutron ); if ( capture ) { G4NeutronRadCapture* theNeutronRadCapture = new G4NeutronRadCapture; diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_FTFP_BERT.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_FTFP_BERT.cc index 8db19ab290..94ed7b7151 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_FTFP_BERT.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGSP_FTFP_BERT.cc @@ -44,32 +44,16 @@ G4_DECLARE_PHYSCONSTR_FACTORY(G4HadronPhysicsQGSP_FTFP_BERT); G4HadronPhysicsQGSP_FTFP_BERT::G4HadronPhysicsQGSP_FTFP_BERT(G4int) - : G4HadronPhysicsQGSP_FTFP_BERT("hInelastic QGSP_FTFP_BERT",true) {} + : G4HadronPhysicsQGSP_FTFP_BERT("hInelastic QGSP_FTFP_BERT",true) +{} G4HadronPhysicsQGSP_FTFP_BERT::G4HadronPhysicsQGSP_FTFP_BERT(const G4String& name, G4bool quasiElastic) - : G4HadronPhysicsQGSP_BERT(name,quasiElastic), QuasiElastic(quasiElastic) + : G4HadronPhysicsQGSP_BERT(name,quasiElastic) { - minFTFP_proton = minFTFP_neutron = minFTFP_pik = - G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); - maxBERT_proton = maxBERT_neutron = maxBERT_pik = - G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); G4HadronicParameters::Instance()->SetEnableBCParticles(true); } - -/* -void G4HadronPhysicsQGSP_FTFP_BERT::DumpBanner() -{ - G4cout << " New QGSP_FTFP_BERT physics list, replaces LEP with FTF/P for p/n/pi (/K?)"; - G4cout << " Thresholds: " << G4endl; - G4cout << " 1) between BERT and FTF/P over the interval " - << minFTFP_proton/GeV << " to " << maxBERT_proton/GeV << " GeV. " << G4endl; - G4cout << " 2) between FTF/P and QGS/P over the interval " - << minQGSP_proton/GeV << " to " << maxFTFP_proton/GeV << " GeV. " << G4endl; - G4cout << " -- quasiElastic was asked to be " << QuasiElastic << G4endl - << " Changed to " << QuasiElasticQGS << " for QGS " - << " and to " << QuasiElasticFTF << " (must be false) for FTF" << G4endl; -} -*/ +G4HadronPhysicsQGSP_FTFP_BERT::~G4HadronPhysicsQGSP_FTFP_BERT() +{} diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGS_BIC.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGS_BIC.cc index 0085142134..8c39021864 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGS_BIC.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsQGS_BIC.cc @@ -59,32 +59,19 @@ #include "G4QGSBinaryNeutronBuilder.hh" #include "G4BinaryNeutronBuilder.hh" -#include "G4HyperonBuilder.hh" -#include "G4HyperonFTFPBuilder.hh" -#include "G4HyperonQGSPBuilder.hh" -#include "G4AntiBarionBuilder.hh" -#include "G4FTFPAntiBarionBuilder.hh" -#include "G4QGSPAntiBarionBuilder.hh" - #include "globals.hh" #include "G4ios.hh" #include "G4SystemOfUnits.hh" #include "G4ParticleDefinition.hh" #include "G4ParticleTable.hh" -#include "G4MesonConstructor.hh" -#include "G4BaryonConstructor.hh" -#include "G4ShortLivedConstructor.hh" -#include "G4IonConstructor.hh" - #include "G4HadronCaptureProcess.hh" #include "G4NeutronRadCapture.hh" #include "G4NeutronInelasticXS.hh" #include "G4NeutronCaptureXS.hh" -#include "G4CrossSectionDataSetRegistry.hh" - #include "G4PhysListUtil.hh" +#include "G4HadParticles.hh" #include "G4HadronicParameters.hh" #include "G4PhysicsConstructorFactory.hh" @@ -94,39 +81,20 @@ G4_DECLARE_PHYSCONSTR_FACTORY(G4HadronPhysicsQGS_BIC); G4HadronPhysicsQGS_BIC::G4HadronPhysicsQGS_BIC(G4int) : G4HadronPhysicsQGS_BIC("hInelastic QGS_BIC",true) {} -G4HadronPhysicsQGS_BIC::G4HadronPhysicsQGS_BIC(const G4String& name, G4bool /* quasiElastic */) - : G4VPhysicsConstructor(name) +G4HadronPhysicsQGS_BIC::G4HadronPhysicsQGS_BIC(const G4String& name, G4bool qe) + : G4HadronPhysicsQGSP_BERT(name, qe) { - QuasiElasticFTF= false; // Use built-in quasi-elastic (not add-on) - QuasiElasticQGS= true; // For QGS, it must use it. - - maxFTF_neutron = maxFTF_proton = G4HadronicParameters::Instance()->GetMaxEnergyTransitionQGS_FTF(); - minFTF_neutron = minFTF_proton = G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade(); - maxBIC_neutron = maxBIC_proton = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); - - maxFTF_pion = G4HadronicParameters::Instance()->GetMaxEnergyTransitionQGS_FTF(); - maxBERT_pion = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); minBERT_pion = 1.0*GeV; maxBIC_pion = 1.5*GeV; - - maxFTF_kaon = G4HadronicParameters::Instance()->GetMaxEnergyTransitionQGS_FTF(); - maxBERT_kaon = G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade(); } G4HadronPhysicsQGS_BIC::~G4HadronPhysicsQGS_BIC() {} -void G4HadronPhysicsQGS_BIC::CreateModels() -{ - Neutron(); - Proton(); - Pion(); - Kaon(); - Others(); -} - void G4HadronPhysicsQGS_BIC::Neutron() { + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); //General schema: // 1) Create a builder // 2) Call AddBuilder @@ -134,143 +102,125 @@ void G4HadronPhysicsQGS_BIC::Neutron() // 4) Call builder->Build() auto neu = new G4NeutronBuilder; AddBuilder(neu); - auto qgsneu = new G4QGSBinaryNeutronBuilder(QuasiElasticQGS); - AddBuilder(qgsneu); - neu->RegisterMe(qgsneu); - auto ftfneu = new G4FTFBinaryNeutronBuilder(QuasiElasticFTF); - AddBuilder(ftfneu); - ftfneu->SetMinEnergy(minFTF_neutron); - ftfneu->SetMaxEnergy(maxFTF_neutron); - neu->RegisterMe(ftfneu); + auto qgs = new G4QGSBinaryNeutronBuilder(QuasiElasticQGS); + AddBuilder(qgs); + qgs->SetMinEnergy(minQGSP_neutron); + neu->RegisterMe(qgs); + auto ftf = new G4FTFBinaryNeutronBuilder(QuasiElasticFTF); + AddBuilder(ftf); + ftf->SetMinEnergy(minFTFP_neutron); + ftf->SetMaxEnergy(maxFTFP_neutron); + neu->RegisterMe(ftf); auto bicn = new G4BinaryNeutronBuilder; AddBuilder(bicn); - bicn->SetMaxEnergy(maxBIC_neutron); + bicn->SetMaxEnergy(maxBERT_neutron); neu->RegisterMe(bicn); neu->Build(); -} -void G4HadronPhysicsQGS_BIC::Proton() -{ - auto pro = new G4ProtonBuilder; - AddBuilder(pro); - auto qgs = new G4QGSBinaryProtonBuilder(QuasiElasticQGS); - AddBuilder(qgs); - pro->RegisterMe(qgs); - auto ftf = new G4FTFBinaryProtonBuilder(QuasiElasticFTF); - AddBuilder(ftf); - ftf->SetMinEnergy(minFTF_proton); - ftf->SetMaxEnergy(maxFTF_proton); - pro->RegisterMe(ftf); - auto bic = new G4BinaryProtonBuilder; - AddBuilder(bic); - bic->SetMaxEnergy(maxBIC_proton); - pro->RegisterMe(bic); - pro->Build(); -} - -void G4HadronPhysicsQGS_BIC::Pion() -{ - auto pi = new G4PionBuilder; - AddBuilder(pi); - auto qgs = new G4QGSBinaryPionBuilder(QuasiElasticQGS); - AddBuilder(qgs); - pi->RegisterMe(qgs); - auto ftf = new G4FTFBinaryPionBuilder(QuasiElasticFTF); - AddBuilder(ftf); - ftf->SetMaxEnergy(maxFTF_pion); - pi->RegisterMe(ftf); - auto bert = new G4BertiniPionBuilder; - AddBuilder(bert); - bert->SetMinEnergy(minBERT_pion); - bert->SetMaxEnergy(maxBERT_pion); - pi->RegisterMe(bert); - auto bic = new G4BinaryPionBuilder; - AddBuilder(bic); - bic->SetMaxEnergy(maxBIC_pion); - pi->RegisterMe(bic); - pi->Build(); -} - -void G4HadronPhysicsQGS_BIC::Kaon() -{ - auto k = new G4KaonBuilder; - AddBuilder(k); - auto qgs = new G4QGSBinaryKaonBuilder(QuasiElasticQGS); - AddBuilder(qgs); - k->RegisterMe(qgs); - auto ftf = new G4FTFBinaryKaonBuilder(QuasiElasticFTF); - AddBuilder(ftf); - ftf->SetMaxEnergy(maxFTF_kaon); - k->RegisterMe(ftf); - auto bert = new G4BertiniKaonBuilder; - AddBuilder(bert); - bert->SetMaxEnergy(maxBERT_kaon); - k->RegisterMe(bert); - k->Build(); -} - -void G4HadronPhysicsQGS_BIC::Others() -{ - // Hyperons (and anti-hyperons) - auto hyp = new G4HyperonBuilder; - AddBuilder(hyp); - auto ftfphyp = new G4HyperonFTFPBuilder(QuasiElasticFTF); - AddBuilder(ftfphyp); - ftfphyp->SetMaxEnergy(maxFTF_proton); - hyp->RegisterMe(ftfphyp); - auto qgsphyp = new G4HyperonQGSPBuilder(QuasiElasticQGS); - AddBuilder(qgsphyp); - qgsphyp->SetMinEnergy(G4HadronicParameters::Instance()->GetMinEnergyTransitionQGS_FTF()); - hyp->RegisterMe(qgsphyp); - hyp->Build(); - // Antibaryons - auto abar = new G4AntiBarionBuilder; - AddBuilder(abar); - auto ftf = new G4FTFPAntiBarionBuilder(QuasiElasticFTF); - AddBuilder(ftf); - ftf->SetMaxEnergy(maxFTF_proton); - abar->RegisterMe(ftf); - auto qgs = new G4QGSPAntiBarionBuilder(QuasiElasticQGS); - AddBuilder(qgs); - qgs->SetMinEnergy(G4HadronicParameters::Instance()->GetMinEnergyTransitionQGS_FTF()); - abar->RegisterMe(qgs); - abar->Build(); -} - -void G4HadronPhysicsQGS_BIC::ConstructParticle() -{ - G4MesonConstructor pMesonConstructor; - pMesonConstructor.ConstructParticle(); - - G4BaryonConstructor pBaryonConstructor; - pBaryonConstructor.ConstructParticle(); - - G4ShortLivedConstructor pShortLivedConstructor; - pShortLivedConstructor.ConstructParticle(); - - G4IonConstructor pIonConstructor; - pIonConstructor.ConstructParticle(); -} - -#include "G4ProcessManager.hh" -void G4HadronPhysicsQGS_BIC::ConstructProcess() -{ - if(G4Threading::IsMasterThread()) { - DumpBanner(); - } - CreateModels(); - ExtraConfiguration(); -} - -void G4HadronPhysicsQGS_BIC::ExtraConfiguration() -{ - // --- Neutrons --- const G4ParticleDefinition* neutron = G4Neutron::Neutron(); G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(neutron); - if(inel) { inel->AddDataSet(new G4NeutronInelasticXS()); } + if(inel) { + inel->AddDataSet(new G4NeutronInelasticXS()); + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); if (capture) { capture->RegisterMe(new G4NeutronRadCapture()); } } +void G4HadronPhysicsQGS_BIC::Proton() +{ + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + + auto pro = new G4ProtonBuilder; + AddBuilder(pro); + auto qgs = new G4QGSBinaryProtonBuilder(QuasiElasticQGS); + AddBuilder(qgs); + qgs->SetMinEnergy(minQGSP_proton); + pro->RegisterMe(qgs); + auto ftf = new G4FTFBinaryProtonBuilder(QuasiElasticFTF); + AddBuilder(ftf); + ftf->SetMinEnergy(minFTFP_proton); + ftf->SetMaxEnergy(maxFTFP_proton); + pro->RegisterMe(ftf); + auto bic = new G4BinaryProtonBuilder; + AddBuilder(bic); + bic->SetMaxEnergy(maxBERT_proton); + pro->RegisterMe(bic); + pro->Build(); + + const G4ParticleDefinition* proton = G4Proton::Proton(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(proton); + if(inel) { + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } +} + +void G4HadronPhysicsQGS_BIC::Pion() +{ + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + + auto pi = new G4PionBuilder; + AddBuilder(pi); + auto qgs = new G4QGSBinaryPionBuilder(QuasiElasticQGS); + AddBuilder(qgs); + qgs->SetMinEnergy(minQGSP_pik); + pi->RegisterMe(qgs); + auto ftf = new G4FTFBinaryPionBuilder(QuasiElasticFTF); + AddBuilder(ftf); + ftf->SetMinEnergy(minFTFP_pik); + ftf->SetMaxEnergy(maxFTFP_pik); + pi->RegisterMe(ftf); + auto bert = new G4BertiniPionBuilder; + AddBuilder(bert); + bert->SetMinEnergy(minBERT_pion); + bert->SetMaxEnergy(maxBERT_pik); + pi->RegisterMe(bert); + auto bic = new G4BinaryPionBuilder; + AddBuilder(bic); + bic->SetMaxEnergy(maxBIC_pion); + pi->RegisterMe(bic); + pi->Build(); + + auto k = new G4KaonBuilder; + AddBuilder(k); + auto qgsk = new G4QGSBinaryKaonBuilder(QuasiElasticQGS); + AddBuilder(qgsk); + qgsk->SetMinEnergy(minQGSP_pik); + k->RegisterMe(qgsk); + auto ftfk = new G4FTFBinaryKaonBuilder(QuasiElasticFTF); + AddBuilder(ftfk); + ftfk->SetMaxEnergy(maxFTFP_pik); + k->RegisterMe(ftfk); + auto bertk = new G4BertiniKaonBuilder; + AddBuilder(bertk); + bertk->SetMaxEnergy(maxBERT_pik); + k->RegisterMe(bertk); + k->Build(); + + // add cross section factor + if( useFactorXS ) { + const G4ParticleDefinition* pion = G4PionPlus::PionPlus(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(pion); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); + } + pion = G4PionMinus::PionMinus(); + inel = G4PhysListUtil::FindInelasticProcess(pion); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorPionInelastic() ); + } + G4ParticleTable* table = G4ParticleTable::GetParticleTable(); + for( auto & pdg : G4HadParticles::GetKaons() ) { + auto part = table->FindParticle( pdg ); + if ( part == nullptr ) { continue; } + inel = G4PhysListUtil::FindInelasticProcess(part); + if(inel) { + inel->MultiplyCrossSectionBy( param->XSFactorHadronInelastic() ); + } + } + } +} diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsShielding.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsShielding.cc index a12b1fa94e..e6671653ca 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsShielding.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsShielding.cc @@ -108,205 +108,90 @@ G4_DECLARE_PHYSCONSTR_FACTORY(G4HadronPhysicsShielding); G4HadronPhysicsShielding::G4HadronPhysicsShielding( G4int ) - : G4VPhysicsConstructor("hInelastic Shielding") - , useLEND_(false) - , evaluation_() - , minFTFPEnergy_(G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade()) - , maxBertiniEnergy_(G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade()) - , minNonHPNeutronEnergy_(19.9*MeV) -{} + : G4HadronPhysicsShielding() +{} -G4HadronPhysicsShielding::G4HadronPhysicsShielding(const G4String& name, G4bool /* quasiElastic */) - : G4VPhysicsConstructor(name) - , useLEND_(false) - , evaluation_() - , minFTFPEnergy_(G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade()) - , maxBertiniEnergy_(G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade()) - , minNonHPNeutronEnergy_(19.9*MeV) -{} +G4HadronPhysicsShielding::G4HadronPhysicsShielding(const G4String& name) + : G4HadronPhysicsShielding(name, false) +{} -G4HadronPhysicsShielding::G4HadronPhysicsShielding(const G4String& name, - G4int /*verbose*/, G4double minFTFPEnergy, G4double maxBertiniEnergy) - : G4VPhysicsConstructor(name) - , useLEND_(false) - , evaluation_() - , minFTFPEnergy_(minFTFPEnergy) - , maxBertiniEnergy_(maxBertiniEnergy) - , minNonHPNeutronEnergy_(19.9*MeV) -{} +G4HadronPhysicsShielding::G4HadronPhysicsShielding(const G4String& name, G4bool qe) + : G4HadronPhysicsFTFP_BERT(name, qe), useLEND_(false), evaluation_("") +{ + minBERT_neutron = 19.9*CLHEP::MeV; +} +G4HadronPhysicsShielding::G4HadronPhysicsShielding(const G4String& name, G4int) + : G4HadronPhysicsShielding(name, false) +{} + +G4HadronPhysicsShielding::G4HadronPhysicsShielding(const G4String& name, G4int, + G4double minFTFPEnergy, G4double maxBertiniEnergy) + : G4HadronPhysicsShielding(name, false) +{ + minFTFP_pion = minFTFPEnergy; + maxBERT_pion = maxBertiniEnergy; +} G4HadronPhysicsShielding::~G4HadronPhysicsShielding() {} - -void G4HadronPhysicsShielding::DumpBanner() -{ - G4cout << G4endl - << " Shielding : threshold between BERT and FTFP is over the interval : " - << minFTFPEnergy_/GeV << " to " << maxBertiniEnergy_/GeV << " GeV" << G4endl - << G4endl; -} - - -void G4HadronPhysicsShielding::ConstructParticle() -{ - G4MesonConstructor pMesonConstructor; - pMesonConstructor.ConstructParticle(); - - G4BaryonConstructor pBaryonConstructor; - pBaryonConstructor.ConstructParticle(); - - G4ShortLivedConstructor pShortLivedConstructor; - pShortLivedConstructor.ConstructParticle(); - - G4IonConstructor pIonConstructor; - pIonConstructor.ConstructParticle(); -} - - -void G4HadronPhysicsShielding::CreateModels() -{ - Neutron(); - Proton(); - Pion(); - Kaon(); - Others(); -} - - void G4HadronPhysicsShielding::Neutron() { - auto neu = new G4NeutronBuilder( true ); - AddBuilder( neu ); - auto ftfpn = new G4FTFPNeutronBuilder( false ); - AddBuilder( ftfpn ); - neu->RegisterMe( ftfpn ); - ftfpn->SetMinEnergy( minFTFPEnergy_ ); - auto bertn = new G4BertiniNeutronBuilder; - AddBuilder( bertn ); - neu->RegisterMe( bertn ); - bertn->SetMinEnergy( minNonHPNeutronEnergy_ ); - bertn->SetMaxEnergy( maxBertiniEnergy_ ); - if ( useLEND_ ) { - auto lendn = new G4NeutronLENDBuilder( evaluation_ ); - AddBuilder( lendn ); - neu->RegisterMe( lendn ); + G4HadronicParameters* param = G4HadronicParameters::Instance(); + G4bool useFactorXS = param->ApplyFactorXS(); + + auto neu = new G4NeutronBuilder( true ); // Fission on + AddBuilder(neu); + auto ftfpneu = new G4FTFPNeutronBuilder(QuasiElastic); + AddBuilder(ftfpneu); + ftfpneu->SetMinEnergy(minFTFP_neutron); + neu->RegisterMe(ftfpneu); + auto bertneu = new G4BertiniNeutronBuilder; + AddBuilder(bertneu); + bertneu->SetMaxEnergy(maxBERT_neutron); + bertneu->SetMinEnergy(minBERT_neutron); + neu->RegisterMe(bertneu); + if(useLEND_) { + auto hpneu = new G4NeutronLENDBuilder(evaluation_); + AddBuilder(hpneu); + neu->RegisterMe(hpneu); } else { - auto hpn = new G4NeutronPHPBuilder; - AddBuilder( hpn ); - neu->RegisterMe( hpn ); + auto hpneu = new G4NeutronPHPBuilder; + AddBuilder(hpneu); + neu->RegisterMe(hpneu); } neu->Build(); + + const G4ParticleDefinition* neutron = G4Neutron::Neutron(); + G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess(neutron); + if(inel) { + // Register the G4ParticleHPJENDLHEInelasticData as the 2nd priority. + inel->GetCrossSectionDataStore()->AddDataSet( new G4ParticleHPJENDLHEInelasticData, 1 ); + if( useFactorXS ) inel->MultiplyCrossSectionBy( param->XSFactorNucleonInelastic() ); + } + + G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess(neutron); + if (capture) { + G4NeutronRadCapture* theNeutronRadCapture = new G4NeutronRadCapture(); + theNeutronRadCapture->SetMinEnergy( minBERT_neutron ); + capture->RegisterMe( theNeutronRadCapture ); + } + G4HadronicProcess* fission = G4PhysListUtil::FindFissionProcess(neutron); + if (fission) { + G4LFission* theNeutronLEPFission = new G4LFission(); + theNeutronLEPFission->SetMinEnergy( minBERT_neutron ); + theNeutronLEPFission->SetMaxEnergy( G4HadronicParameters::Instance()->GetMaxEnergy() ); + fission->RegisterMe( theNeutronLEPFission ); + } } - -void G4HadronPhysicsShielding::Proton() -{ - auto pro = new G4ProtonBuilder; - AddBuilder( pro ); - auto ftfpp = new G4FTFPProtonBuilder( false ); - AddBuilder( ftfpp ); - pro->RegisterMe( ftfpp ); - ftfpp->SetMinEnergy( minFTFPEnergy_ ); - auto bertp = new G4BertiniProtonBuilder; - AddBuilder( bertp ); - pro->RegisterMe( bertp ); - bertp->SetMaxEnergy( maxBertiniEnergy_ ); - pro->Build(); -} - - -void G4HadronPhysicsShielding::Pion() -{ - auto pi = new G4PionBuilder; - AddBuilder( pi ); - auto ftfppi = new G4FTFPPionBuilder( false ); - AddBuilder( ftfppi ); - pi->RegisterMe( ftfppi ); - ftfppi->SetMinEnergy( minFTFPEnergy_ ); - auto bertpi = new G4BertiniPionBuilder; - AddBuilder( bertpi ); - pi->RegisterMe( bertpi ); - bertpi->SetMaxEnergy( maxBertiniEnergy_ ); - pi->Build(); -} - - -void G4HadronPhysicsShielding::Kaon() -{ - auto k = new G4KaonBuilder; - AddBuilder( k ); - auto ftfpk = new G4FTFPKaonBuilder( false ); - AddBuilder( ftfpk ); - k->RegisterMe( ftfpk ); - ftfpk->SetMinEnergy( minFTFPEnergy_ ); - auto bertk = new G4BertiniKaonBuilder; - AddBuilder( bertk ); - k->RegisterMe( bertk ); - bertk->SetMaxEnergy( maxBertiniEnergy_ ); - k->Build(); -} - - -void G4HadronPhysicsShielding::Others() -{ - // Hyperons (and anti-hyperons) - auto hyp = new G4HyperonBuilder; - AddBuilder(hyp); - auto ftfphyp = new G4HyperonFTFPBuilder; - AddBuilder(ftfphyp); - hyp->RegisterMe(ftfphyp); - hyp->Build(); - // Anti-barions - auto abar = new G4AntiBarionBuilder; - AddBuilder(abar); - auto ftfpabar = new G4FTFPAntiBarionBuilder; - AddBuilder(ftfpabar); - abar->RegisterMe(ftfpabar); - abar->Build(); -} - - void G4HadronPhysicsShielding::ConstructProcess() { if ( G4Threading::IsMasterThread() ) { DumpBanner(); } CreateModels(); - ExtraConfiguration(); } -void G4HadronPhysicsShielding::ExtraConfiguration() -{ - // Modify cross sections for kaons - auto xsk = new G4ComponentGGHadronNucleusXsc(); - G4VCrossSectionDataSet* kaonxs = new G4CrossSectionInelastic( xsk ); - G4PhysListUtil::FindInelasticProcess( G4KaonMinus::KaonMinus() )->AddDataSet( kaonxs ); - G4PhysListUtil::FindInelasticProcess( G4KaonPlus::KaonPlus() )->AddDataSet( kaonxs ); - G4PhysListUtil::FindInelasticProcess( G4KaonZeroShort::KaonZeroShort() )->AddDataSet( kaonxs ); - G4PhysListUtil::FindInelasticProcess( G4KaonZeroLong::KaonZeroLong() )->AddDataSet( kaonxs ); - - // Modify neutrons - const G4ParticleDefinition* neutron = G4Neutron::Neutron(); - G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess( neutron ); - if ( inel ) { - // Register the G4ParticleHPJENDLHEInelasticData as the 2nd priority. - inel->GetCrossSectionDataStore()->AddDataSet( new G4ParticleHPJENDLHEInelasticData, 1 ); - } - G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess( neutron ); - if ( capture ) { - G4NeutronRadCapture* theNeutronRadCapture = new G4NeutronRadCapture; - theNeutronRadCapture->SetMinEnergy( minNonHPNeutronEnergy_ ); - capture->RegisterMe( theNeutronRadCapture ); - } - G4HadronicProcess* fission = G4PhysListUtil::FindFissionProcess( neutron ); - if ( fission ) { - G4LFission* theNeutronLEPFission = new G4LFission; - theNeutronLEPFission->SetMinEnergy( minNonHPNeutronEnergy_ ); - theNeutronLEPFission->SetMaxEnergy( G4HadronicParameters::Instance()->GetMaxEnergy() ); - fission->RegisterMe( theNeutronLEPFission ); - } -} - diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsShieldingLEND.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsShieldingLEND.cc index ed577bbc26..5a6c7988cb 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsShieldingLEND.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4HadronPhysicsShieldingLEND.cc @@ -35,266 +35,42 @@ // //---------------------------------------------------------------------------- // -#include #include "G4HadronPhysicsShieldingLEND.hh" -#include "globals.hh" -#include "G4ios.hh" -#include "G4SystemOfUnits.hh" -#include "G4ParticleDefinition.hh" -#include "G4ParticleTable.hh" - -#include "G4MesonConstructor.hh" -#include "G4BaryonConstructor.hh" -#include "G4ShortLivedConstructor.hh" -#include "G4IonConstructor.hh" - -#include "G4PionBuilder.hh" -#include "G4BertiniPionBuilder.hh" -#include "G4FTFPPionBuilder.hh" - -#include "G4KaonBuilder.hh" -#include "G4BertiniKaonBuilder.hh" -#include "G4FTFPKaonBuilder.hh" - -#include "G4ProtonBuilder.hh" -#include "G4BertiniProtonBuilder.hh" -#include "G4FTFPNeutronBuilder.hh" -#include "G4FTFPProtonBuilder.hh" - -#include "G4NeutronBuilder.hh" -#include "G4BertiniNeutronBuilder.hh" -#include "G4FTFPNeutronBuilder.hh" -#include "G4NeutronPHPBuilder.hh" - -#include "G4HyperonBuilder.hh" -#include "G4HyperonFTFPBuilder.hh" -#include "G4AntiBarionBuilder.hh" -#include "G4FTFPAntiBarionBuilder.hh" - -#include "G4ParticleHPBGGNucleonInelasticXS.hh" -#include "G4ParticleHPJENDLHEInelasticData.hh" -#include "G4ParticleHPInelasticData.hh" -#include "G4NeutronLENDBuilder.hh" - -#include "G4BGGNucleonInelasticXS.hh" -#include "G4CrossSectionDataSetRegistry.hh" -#include "G4PhysListUtil.hh" - -#include "G4ComponentGGHadronNucleusXsc.hh" -#include "G4CrossSectionInelastic.hh" -#include "G4HadronCaptureProcess.hh" -#include "G4NeutronRadCapture.hh" -#include "G4NeutronCaptureXS.hh" -#include "G4ParticleHPCaptureData.hh" -#include "G4LFission.hh" - -#include "G4CrossSectionDataSetRegistry.hh" -#include "G4PhysListUtil.hh" -#include "G4HadronicParameters.hh" -#include "G4ProcessManager.hh" - // factory #include "G4PhysicsConstructorFactory.hh" // G4_DECLARE_PHYSCONSTR_FACTORY(G4HadronPhysicsShieldingLEND); - G4HadronPhysicsShieldingLEND::G4HadronPhysicsShieldingLEND( G4int ) - : G4VPhysicsConstructor("hInelastic ShieldingLEND") - , useLEND_(false) - , evaluation_() - , minFTFPEnergy_(G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade()) - , maxBertiniEnergy_(G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade()) - , minNonHPNeutronEnergy_(19.9*MeV) -{} + : G4HadronPhysicsShieldingLEND() +{} -G4HadronPhysicsShieldingLEND::G4HadronPhysicsShieldingLEND(const G4String& name, G4bool /* quasiElastic */) - : G4VPhysicsConstructor(name) - , useLEND_(false) - , evaluation_() - , minFTFPEnergy_(G4HadronicParameters::Instance()->GetMinEnergyTransitionFTF_Cascade()) - , maxBertiniEnergy_(G4HadronicParameters::Instance()->GetMaxEnergyTransitionFTF_Cascade()) - , minNonHPNeutronEnergy_(19.9*MeV) -{} +G4HadronPhysicsShieldingLEND::G4HadronPhysicsShieldingLEND(const G4String& name) + : G4HadronPhysicsShieldingLEND(name, false) +{} -G4HadronPhysicsShieldingLEND::G4HadronPhysicsShieldingLEND(const G4String& name, - G4int /*verbose*/, G4double minFTFPEnergy, G4double maxBertiniEnergy) - : G4VPhysicsConstructor(name) - , useLEND_(false) - , evaluation_() - , minFTFPEnergy_(minFTFPEnergy) - , maxBertiniEnergy_(maxBertiniEnergy) - , minNonHPNeutronEnergy_(19.9*MeV) -{} +G4HadronPhysicsShieldingLEND::G4HadronPhysicsShieldingLEND( + const G4String& name, G4bool qe) + : G4HadronPhysicsShielding(name, qe) +{ + useLEND_ = true; +} +G4HadronPhysicsShieldingLEND::G4HadronPhysicsShieldingLEND( + const G4String& name, G4int) + : G4HadronPhysicsShieldingLEND(name, false) +{} + +G4HadronPhysicsShieldingLEND::G4HadronPhysicsShieldingLEND( + const G4String& name, G4int verb, + G4double minFTFPEnergy, G4double maxBertiniEnergy) + : G4HadronPhysicsShielding(name, verb, minFTFPEnergy, maxBertiniEnergy) +{ + useLEND_ = true; +} G4HadronPhysicsShieldingLEND::~G4HadronPhysicsShieldingLEND() {} - -void G4HadronPhysicsShieldingLEND::DumpBanner() -{ - G4cout << G4endl - << " ShieldingLEND : threshold between BERT and FTFP is over the interval : " - << minFTFPEnergy_/GeV << " to " << maxBertiniEnergy_/GeV << " GeV" << G4endl - << G4endl; -} - - -void G4HadronPhysicsShieldingLEND::ConstructParticle() -{ - G4MesonConstructor pMesonConstructor; - pMesonConstructor.ConstructParticle(); - - G4BaryonConstructor pBaryonConstructor; - pBaryonConstructor.ConstructParticle(); - - G4ShortLivedConstructor pShortLivedConstructor; - pShortLivedConstructor.ConstructParticle(); - - G4IonConstructor pIonConstructor; - pIonConstructor.ConstructParticle(); -} - - -void G4HadronPhysicsShieldingLEND::CreateModels() -{ - Neutron(); - Proton(); - Pion(); - Kaon(); - Others(); -} - - -void G4HadronPhysicsShieldingLEND::Neutron() -{ - auto neu = new G4NeutronBuilder( true ); - AddBuilder( neu ); - auto ftfpn = new G4FTFPNeutronBuilder( false ); - AddBuilder( ftfpn ); - neu->RegisterMe( ftfpn ); - ftfpn->SetMinEnergy( minFTFPEnergy_ ); - auto bertn = new G4BertiniNeutronBuilder; - AddBuilder( bertn ); - neu->RegisterMe( bertn ); - bertn->SetMinEnergy( minNonHPNeutronEnergy_ ); - bertn->SetMaxEnergy( maxBertiniEnergy_ ); - auto lendn = new G4NeutronLENDBuilder( evaluation_ ); - AddBuilder( lendn ); - neu->RegisterMe( lendn ); - neu->Build(); -} - - -void G4HadronPhysicsShieldingLEND::Proton() -{ - auto pro = new G4ProtonBuilder; - AddBuilder( pro ); - auto ftfpp = new G4FTFPProtonBuilder( false ); - AddBuilder( ftfpp ); - pro->RegisterMe( ftfpp ); - ftfpp->SetMinEnergy( minFTFPEnergy_ ); - auto bertp = new G4BertiniProtonBuilder; - AddBuilder( bertp ); - pro->RegisterMe( bertp ); - bertp->SetMaxEnergy( maxBertiniEnergy_ ); - pro->Build(); -} - - -void G4HadronPhysicsShieldingLEND::Pion() -{ - auto pi = new G4PionBuilder; - AddBuilder( pi ); - auto ftfppi = new G4FTFPPionBuilder( false ); - AddBuilder( ftfppi ); - pi->RegisterMe( ftfppi ); - ftfppi->SetMinEnergy( minFTFPEnergy_ ); - auto bertpi = new G4BertiniPionBuilder; - AddBuilder( bertpi ); - pi->RegisterMe( bertpi ); - bertpi->SetMaxEnergy( maxBertiniEnergy_ ); - pi->Build(); -} - - -void G4HadronPhysicsShieldingLEND::Kaon() -{ - auto k = new G4KaonBuilder; - AddBuilder( k ); - auto ftfpk = new G4FTFPKaonBuilder( false ); - AddBuilder( ftfpk ); - k->RegisterMe( ftfpk ); - ftfpk->SetMinEnergy( minFTFPEnergy_ ); - auto bertk = new G4BertiniKaonBuilder; - AddBuilder( bertk ); - k->RegisterMe( bertk ); - bertk->SetMaxEnergy( maxBertiniEnergy_ ); - k->Build(); -} - - -void G4HadronPhysicsShieldingLEND::Others() -{ - // Hyperons (and anti-hyperons) - auto hyp = new G4HyperonBuilder; - AddBuilder(hyp); - auto ftfphyp = new G4HyperonFTFPBuilder; - AddBuilder(ftfphyp); - hyp->RegisterMe(ftfphyp); - hyp->Build(); - // Anti-barions - auto abar = new G4AntiBarionBuilder; - AddBuilder(abar); - auto ftfpabar = new G4FTFPAntiBarionBuilder; - AddBuilder(ftfpabar); - abar->RegisterMe(ftfpabar); - abar->Build(); -} - - -void G4HadronPhysicsShieldingLEND::ConstructProcess() -{ - if ( G4Threading::IsMasterThread() ) { - DumpBanner(); - } - CreateModels(); - ExtraConfiguration(); -} - - -void G4HadronPhysicsShieldingLEND::ExtraConfiguration() -{ - // Modify cross sections for kaons - auto xsk = new G4ComponentGGHadronNucleusXsc(); - G4VCrossSectionDataSet* kaonxs = new G4CrossSectionInelastic( xsk ); - G4PhysListUtil::FindInelasticProcess( G4KaonMinus::KaonMinus() )->AddDataSet( kaonxs ); - G4PhysListUtil::FindInelasticProcess( G4KaonPlus::KaonPlus() )->AddDataSet( kaonxs ); - G4PhysListUtil::FindInelasticProcess( G4KaonZeroShort::KaonZeroShort() )->AddDataSet( kaonxs ); - G4PhysListUtil::FindInelasticProcess( G4KaonZeroLong::KaonZeroLong() )->AddDataSet( kaonxs ); - - // Modify neutrons - const G4ParticleDefinition* neutron = G4Neutron::Neutron(); - G4HadronicProcess* inel = G4PhysListUtil::FindInelasticProcess( neutron ); - if ( inel ) { - // Register the G4ParticleHPJENDLHEInelasticData as the 2nd priority. - inel->GetCrossSectionDataStore()->AddDataSet( new G4ParticleHPJENDLHEInelasticData, 1 ); - } - G4HadronicProcess* capture = G4PhysListUtil::FindCaptureProcess( neutron ); - if ( capture ) { - G4NeutronRadCapture* theNeutronRadCapture = new G4NeutronRadCapture; - theNeutronRadCapture->SetMinEnergy( minNonHPNeutronEnergy_ ); - capture->RegisterMe( theNeutronRadCapture ); - } - G4HadronicProcess* fission = G4PhysListUtil::FindFissionProcess( neutron ); - if ( fission ) { - G4LFission* theNeutronLEPFission = new G4LFission; - theNeutronLEPFission->SetMinEnergy( minNonHPNeutronEnergy_ ); - theNeutronLEPFission->SetMaxEnergy( G4HadronicParameters::Instance()->GetMaxEnergy() ); - fission->RegisterMe( theNeutronLEPFission ); - } -} - diff --git a/source/physics_lists/constructors/hadron_inelastic/src/G4VHadronPhysics.cc b/source/physics_lists/constructors/hadron_inelastic/src/G4VHadronPhysics.cc index 663e7b4d07..e5ca4e0f76 100644 --- a/source/physics_lists/constructors/hadron_inelastic/src/G4VHadronPhysics.cc +++ b/source/physics_lists/constructors/hadron_inelastic/src/G4VHadronPhysics.cc @@ -38,13 +38,9 @@ #include "G4VHadronPhysics.hh" #include "G4SystemOfUnits.hh" #include "G4ParticleDefinition.hh" -#include "G4VCrossSectionDataSet.hh" #include "G4HadronicProcessType.hh" #include "G4HadronicProcessStore.hh" -#include "G4HadronInelasticProcess.hh" #include "G4HadronElasticProcess.hh" -#include "G4HadronCaptureProcess.hh" -#include "G4HadronFissionProcess.hh" #include "G4Neutron.hh" #include "G4MesonConstructor.hh" #include "G4BaryonConstructor.hh" @@ -52,9 +48,7 @@ #include "G4ShortLivedConstructor.hh" #include "G4ProcessVector.hh" #include "G4ProcessManager.hh" -#include "G4CrossSectionDataSetRegistry.hh" - -G4ThreadLocal std::vector* G4VHadronPhysics::builders = nullptr; +#include "G4VHadronModelBuilder.hh" G4VHadronPhysics::G4VHadronPhysics(const G4String& aName, G4int verb) : G4VPhysicsConstructor(aName) @@ -67,14 +61,7 @@ G4VHadronPhysics::G4VHadronPhysics(const G4String& aName, G4int verb) } G4VHadronPhysics::~G4VHadronPhysics() -{ - if ( builders ) { - G4int n = builders->size(); - for(G4int i=0; i; - builders->push_back(mBuilder); G4HadronicInteraction* model = mBuilder->GetModel(); model->SetMinEnergy(emin); model->SetMaxEnergy(emax); @@ -128,208 +113,3 @@ G4VHadronPhysics::NewModel(G4HadronicInteraction* model, return model; } -void -G4VHadronPhysics::AddInelasticCrossSection(const G4String& pname, - G4VCrossSectionDataSet* xsec) -{ - const G4ParticleDefinition* p = - G4ParticleTable::GetParticleTable()->FindParticle(pname); - if(!p) { - G4cout << "### G4VHadronPhysics WARNING: fails to find particle " - << pname << G4endl; - } else { - AddInelasticCrossSection(p, xsec); - } -} - -void -G4VHadronPhysics::AddInelasticCrossSection(const G4ParticleDefinition* p, - G4VCrossSectionDataSet* xsec) -{ - if(!p) return; - G4HadronicProcess* had = FindInelasticProcess(p); - if(!had) return; - had->AddDataSet(xsec); - if (verboseLevel>1) { - G4cout << "### G4VHadronPhysics: the inelastic cross section " - << " is added for " << p->GetParticleName() - << G4endl; - } -} - -void -G4VHadronPhysics::AddElasticCrossSection(const G4String& pname, - G4VCrossSectionDataSet* xsec) -{ - const G4ParticleDefinition* p = - G4ParticleTable::GetParticleTable()->FindParticle(pname); - if(!p) { - G4cout << "### G4VHadronPhysics WARNING: fails to find particle " - << pname << G4endl; - } else { - AddElasticCrossSection(p, xsec); - } -} - -void -G4VHadronPhysics::AddElasticCrossSection(const G4ParticleDefinition* p, - G4VCrossSectionDataSet* xsec) -{ - if(!p) return; - G4HadronicProcess* had = FindElasticProcess(p); - if(!had) return; - had->AddDataSet(xsec); - if (verboseLevel>1) { - G4cout << "### G4VHadronPhysics: the inelastic cross section " - << " is added for " << p->GetParticleName() - << G4endl; - } -} - -void -G4VHadronPhysics::AddCaptureCrossSection(G4VCrossSectionDataSet* xsec) -{ - G4HadronicProcess* had = FindCaptureProcess(); - if(!had) return; - had->AddDataSet(xsec); - if (verboseLevel>1) { - G4cout << "### G4VHadronPhysics: the capture cross section " - << " is added for neutron" - << G4endl; - } -} - -void -G4VHadronPhysics::AddFissionCrossSection(G4VCrossSectionDataSet* xsec) -{ - G4HadronicProcess* had = FindFissionProcess(); - if(!had) return; - had->AddDataSet(xsec); - if (verboseLevel>1) { - G4cout << "### G4VHadronPhysics: the fission cross section " - << " is added for neutron" - << G4endl; - } -} - -G4CrossSectionInelastic* -G4VHadronPhysics::InelasticXS(const G4String& cName) -{ - G4VComponentCrossSection* component = - G4CrossSectionDataSetRegistry::Instance()->GetComponentCrossSection(cName); - G4CrossSectionInelastic* ptr = (component) - ? new G4CrossSectionInelastic(component) : nullptr; - return ptr; -} - -G4HadronicProcess* -G4VHadronPhysics::FindInelasticProcess(const G4String& pname) -{ - G4HadronicProcess* had = nullptr; - const G4ParticleDefinition* p = - G4ParticleTable::GetParticleTable()->FindParticle(pname); - if(!p) { - G4cout << "### G4VHadronPhysics WARNING: fails to find particle " - << pname << G4endl; - return had; - } - return FindInelasticProcess(p); -} - -G4HadronicProcess* -G4VHadronPhysics::FindInelasticProcess(const G4ParticleDefinition* p) -{ - G4HadronicProcess* had = nullptr; - if(!p) return had; - G4ProcessManager* pmanager = p->GetProcessManager(); - G4ProcessVector* pv = pmanager->GetProcessList(); - size_t n = pv->size(); - if(0 < n) { - for(size_t i=0; iGetProcessSubType()) { - had = static_cast((*pv)[i]); - return had; - } - } - } - G4ParticleDefinition* part = const_cast(p); - had = new G4HadronInelasticProcess(part->GetParticleName()+"Inelastic",part); - pmanager->AddDiscreteProcess(had); - return had; -} - -G4HadronicProcess* -G4VHadronPhysics::FindElasticProcess(const G4String& pname) -{ - G4HadronicProcess* had = nullptr; - const G4ParticleDefinition* p = - G4ParticleTable::GetParticleTable()->FindParticle(pname); - if(!p) { - G4cout << "### G4VHadronPhysics WARNING: fails to find particle " - << pname << G4endl; - return had; - } - return FindElasticProcess(p); -} - -G4HadronicProcess* -G4VHadronPhysics::FindElasticProcess(const G4ParticleDefinition* p) -{ - G4HadronicProcess* had = nullptr; - if(!p) return had; - G4ProcessManager* pmanager = p->GetProcessManager(); - G4ProcessVector* pv = pmanager->GetProcessList(); - size_t n = pv->size(); - if(0 < n) { - for(size_t i=0; iGetProcessSubType()) { - had = static_cast((*pv)[i]); - return had; - } - } - } - had = new G4HadronElasticProcess("hElastic"); - pmanager->AddDiscreteProcess(had); - return had; -} - -G4HadronicProcess* G4VHadronPhysics::FindCaptureProcess() -{ - G4HadronicProcess* had = nullptr; - G4ProcessManager* pmanager = - G4Neutron::Neutron()->GetProcessManager(); - G4ProcessVector* pv = pmanager->GetProcessList(); - size_t n = pv->size(); - if(0 < n) { - for(size_t i=0; iGetProcessSubType()) { - had = static_cast((*pv)[i]); - return had; - } - } - } - had = new G4HadronCaptureProcess("nCapture"); - pmanager->AddDiscreteProcess(had); - return had; -} - -G4HadronicProcess* G4VHadronPhysics::FindFissionProcess() -{ - G4HadronicProcess* had = nullptr; - G4ProcessManager* pmanager = - G4Neutron::Neutron()->GetProcessManager(); - G4ProcessVector* pv = pmanager->GetProcessList(); - size_t n = pv->size(); - if(0 < n) { - for(size_t i=0; iGetProcessSubType()) { - had = static_cast((*pv)[i]); - return had; - } - } - } - had = new G4HadronFissionProcess("nFission"); - pmanager->AddDiscreteProcess(had); - return had; -} - diff --git a/source/physics_lists/constructors/ions/History b/source/physics_lists/constructors/ions/History index ab86677ee3..0a79e712dd 100644 --- a/source/physics_lists/constructors/ions/History +++ b/source/physics_lists/constructors/ions/History @@ -12,6 +12,10 @@ introduced in the code and keeptrack of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- + +26-November-2020, Alberto Ribon (phys-ctor-ions-V10-06-02) +- Update README. + 30-April-2020, Ben Morgan (phys-ctor-ions-V10-06-01) - Remove obsolete GRANULAR_DEPENDENCIES entries diff --git a/source/physics_lists/constructors/ions/README b/source/physics_lists/constructors/ions/README index c1f381e42b..a2607937c2 100644 --- a/source/physics_lists/constructors/ions/README +++ b/source/physics_lists/constructors/ions/README @@ -21,6 +21,12 @@ ------------ Currently equivalent to G4IonBinaryCascadePhysics. + G4IonPhysicsXS + -------------- + As G4IonPhysics, except that for deuteron, triton, He3 and alpha + the corresponding G4ParticleInelasticXS cross section is used + (instead of G4ComponentGGNuclNuclXsc). + G4IonPhysicsPHP --------------- Similar to G4IonBinaryCascadePhysics, except that ParticleHP (for both @@ -34,6 +40,5 @@ BIC, QMD and FTFP for the final state. These three final-state models are used in the following intervals of projectile kinetic energy: - BIC below 110 MeV/nucleon; - - QMD between 100 and 10'000 MeV/nucleon; - - FTF above 9990 MeV/nucleon. - + - QMD between 100 and 6'000 MeV/nucleon; + - FTF above 5990 MeV/nucleon. diff --git a/source/physics_lists/constructors/ions/sources.cmake b/source/physics_lists/constructors/ions/sources.cmake index 728d38d5f6..41332ff21d 100644 --- a/source/physics_lists/constructors/ions/sources.cmake +++ b/source/physics_lists/constructors/ions/sources.cmake @@ -14,73 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/run/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/builders/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/factory/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/stopping/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/qmd/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/coherent_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/incl_physics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/interface/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lend/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lepto_nuclear/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/particle_hp/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/qgsm/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/radioactive_decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4phys_ctor_ions HEADERS G4IonBinaryCascadePhysics.hh diff --git a/source/physics_lists/constructors/limiters/sources.cmake b/source/physics_lists/constructors/limiters/sources.cmake index 6f98f3c81e..0d42f75a58 100644 --- a/source/physics_lists/constructors/limiters/sources.cmake +++ b/source/physics_lists/constructors/limiters/sources.cmake @@ -14,79 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/biasing/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/run/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/builders/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/factory/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/scoring/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/biasing/generic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/biasing/importance/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/parameterisation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/stopping/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/qmd/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/coherent_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/incl_physics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/interface/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lend/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lepto_nuclear/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/particle_hp/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/qgsm/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/radioactive_decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4phys_ctor_limiters HEADERS G4ImportanceBiasing.hh diff --git a/source/physics_lists/constructors/stopping/sources.cmake b/source/physics_lists/constructors/stopping/sources.cmake index 12c3a026ac..78f6ecf123 100644 --- a/source/physics_lists/constructors/stopping/sources.cmake +++ b/source/physics_lists/constructors/stopping/sources.cmake @@ -14,73 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/run/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/builders/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/factory/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/stopping/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/qmd/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/coherent_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/incl_physics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/interface/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lend/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lepto_nuclear/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/particle_hp/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/qgsm/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/radioactive_decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4phys_ctor_stopping HEADERS G4StoppingPhysics.hh diff --git a/source/physics_lists/lists/History b/source/physics_lists/lists/History index 619d75cfec..75615e3c9c 100644 --- a/source/physics_lists/lists/History +++ b/source/physics_lists/lists/History @@ -12,6 +12,11 @@ introduced in the code and keeptrack of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- + +24-November-2020 Alberto Ribon (phys-lists-V10-06-02) + - LBE : added G4ShortLivedConstructor (to avoid crashes, e.g. when rho0 + is produced by the decay of eta_prime). + 30-April-2020 Ben Morgan (phys-lists-V10-06-01) - Remove obsolete GRANULAR_DEPENDENCIES entries diff --git a/source/physics_lists/lists/sources.cmake b/source/physics_lists/lists/sources.cmake index 537fffab76..4bf8bb668d 100644 --- a/source/physics_lists/lists/sources.cmake +++ b/source/physics_lists/lists/sources.cmake @@ -14,95 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) -include_directories(${EXPAT_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/digits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/hits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/event/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/builders/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/electromagnetic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/factory/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/gamma_lepto_nuclear/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/hadron_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/hadron_inelastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/limiters/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/constructors/stopping/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/highenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/muons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/xrays/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/coherent_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/gem_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/incl_physics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/interface/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lend/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lepto_nuclear/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/particle_hp/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/qgsm/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/radioactive_decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/stopping/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/optical/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/run/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/tracking/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4phys_lists HEADERS FTF_BIC.hh diff --git a/source/physics_lists/lists/src/LBE.cc b/source/physics_lists/lists/src/LBE.cc index edbd0ab7ff..ab308c2236 100644 --- a/source/physics_lists/lists/src/LBE.cc +++ b/source/physics_lists/lists/src/LBE.cc @@ -70,7 +70,7 @@ #include "G4StoppingPhysics.hh" #include "G4HadronicParameters.hh" - +#include "G4ShortLivedConstructor.hh" #include "LBE.hh" // Constructor ///////////////////////////////////////////////////////////// @@ -192,7 +192,8 @@ LBE::~LBE() void LBE::ConstructMyShortLiveds() { // ShortLiveds - ; + G4ShortLivedConstructor pShortLivedConstructor; + pShortLivedConstructor.ConstructParticle(); } diff --git a/source/physics_lists/util/GNUmakefile b/source/physics_lists/util/GNUmakefile index 37af557938..216f6eae12 100644 --- a/source/physics_lists/util/GNUmakefile +++ b/source/physics_lists/util/GNUmakefile @@ -24,8 +24,10 @@ CPPFLAGS += -I$(G4BASE)/global/management/include \ -I$(G4BASE)/particles/hadrons/mesons/include \ -I$(G4BASE)/particles/hadrons/barions/include \ -I$(G4BASE)/particles/hadrons/ions/include \ + -I$(G4BASE)/processes/electromagnetic/utils/include \ -I$(G4BASE)/processes/hadronic/cross_sections/include \ -I$(G4BASE)/processes/hadronic/management/include \ + -I$(G4BASE)/processes/hadronic/models/de_excitation/management/include \ -I$(G4BASE)/processes/hadronic/models/management/include \ -I$(G4BASE)/processes/hadronic/util/include \ -I$(G4BASE)/processes/management/include \ diff --git a/source/physics_lists/util/History b/source/physics_lists/util/History index 7984b1e43b..4ef9b6cb2c 100644 --- a/source/physics_lists/util/History +++ b/source/physics_lists/util/History @@ -12,6 +12,44 @@ introduced in the code and keeptrack of all tags. ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- + +09-October-2020, Gabriele Cosmo (phys-util-V10-06-10) +- Added new dependencies to "processes/electromagnetic/utils" and + "processes/hadronic/models/de_excitation/management" modules in + GNUMakefile. + +07-October-2020, Vladimir Ivanchenko (phys-util-V10-06-09) +- G4PhysListUtil - added utility method InitialiseParameters() + +22-August-2020, Vladimir Ivanchenko (phys-util-V10-06-08) +- G4HadProcesses - added optional GG nucl-nucl cross section + +21-August-2020, Vladimir Ivanchenko (phys-util-V10-06-07) +- G4HadProcesses - use G4PhysListUtil to access processes +- G4PhysListUtil - added method to access elastic x-section + +24-July-2020, Alberto Ribon (phys-util-V10-06-06) +- G4HadParticles : removed eta and eta_prime from the list of + charmed and bottom hadrons; removed the short-lived hadrons + (Sigma0, etac, JPsi, SigmaC++, SigmaC+, SigmaC0, Upsilon, + SigmaB+, SigmaB0, SigmaB-) whose hadronic interactions can be + neglected (consistently with what is done currently in Geant4 + for pi0 and Sigma0) because they decay too quickly. + +19-July-2020, Vladimir Ivanchenko (phys-util-V10-06-05) +- G4HadParticles - subdivide for different methods hyperons and + anti-hyperons + +11-July-2020, Vladimir Ivanchenko (phys-util-V10-06-04) +- G4HadProcesses - new utility class providing access to hadronic + processes and addition of a cross section per particle type + and hadronic process; Using this class it is possible to + customise hadronic cross sections + +01-July-2020, Vladimir Ivanchenko (phys-util-V10-06-03) +- G4HadParticles - separated light anti-particles to the extra + vector and added extra access method + 28-May-2020 Ben Morgan (phys-util-V10-06-02) - Remove obsolete GRANULAR_DEPENDENCIES entries diff --git a/source/physics_lists/util/include/G4HadParticles.hh b/source/physics_lists/util/include/G4HadParticles.hh index 1ffa233f8b..340b4c478d 100644 --- a/source/physics_lists/util/include/G4HadParticles.hh +++ b/source/physics_lists/util/include/G4HadParticles.hh @@ -28,7 +28,7 @@ // // Author V.Ivanchenko 09.05.2020 // -// Collections of pahadrons +// Collections of hadrons pdg codes // #ifndef G4HadParticles_h @@ -44,9 +44,11 @@ public: // several vectors of PDG codes for hadron physics static const std::vector& GetLightHadrons(); static const std::vector& GetHyperons(); + static const std::vector& GetAntiHyperons(); static const std::vector& GetKaons(); static const std::vector& GetBCHadrons(); static const std::vector& GetLightIons(); + static const std::vector& GetLightAntiIons(); // several vectors of PDG codes for EM physics static const std::vector& GetHeavyChargedParticles(); @@ -56,9 +58,11 @@ private: static const std::vector sLightHadrons; static const std::vector sHyperons; + static const std::vector sAntiHyperons; static const std::vector sKaons; static const std::vector sBCHadrons; static const std::vector sLightIons; + static const std::vector sLightAntiIons; static const std::vector sHeavyChargedPart; static const std::vector sBCChargedHadrons; }; diff --git a/source/physics_lists/constructors/electromagnetic/include/G4OpticalProcessIndex.hh b/source/physics_lists/util/include/G4HadProcesses.hh similarity index 52% rename from source/physics_lists/constructors/electromagnetic/include/G4OpticalProcessIndex.hh rename to source/physics_lists/util/include/G4HadProcesses.hh index 8c50ac5143..13d7f30d36 100644 --- a/source/physics_lists/constructors/electromagnetic/include/G4OpticalProcessIndex.hh +++ b/source/physics_lists/util/include/G4HadProcesses.hh @@ -24,63 +24,63 @@ // ******************************************************************** // // -// //--------------------------------------------------------------------------- // -// ClassName: G4OpticalProcessIndex +// ClassName: G4HadProcesses // -// Author: P.Gumplinger 29.09.2011 -// (based on code from I. Hrivnacova) +// Author: 8 July 2020 V.Ivanchenko // // Modified: // +// Description: access to hadronic processes via particle name or pointer +// access or addition of hadronic cross sections +// //---------------------------------------------------------------------------- // -// Enumeration for processes defined in G4OpticalPhysics -// -// The enumeration constants are used as the indices of the instatianted -// processes in the vector of processes; needed to configure G4OpticalPhysics -// (PhysicsList) according to selected process choices. -// - -#ifndef G4OpticalProcessIndex_h -#define G4OpticalProcessIndex_h 1 +#ifndef G4HadProcesses_h +#define G4HadProcesses_h 1 #include "globals.hh" +#include "G4HadronicProcess.hh" +#include "G4ParticleDefinition.hh" +#include "G4CrossSectionInelastic.hh" +#include "G4CrossSectionElastic.hh" -enum G4OpticalProcessIndex { - kCerenkov, ///< Cerenkov process index - kScintillation, ///< Scintillation process index - kAbsorption, ///< Absorption process index - kRayleigh, ///< Rayleigh scattering process index - kMieHG, ///< Mie scattering process index - kBoundary, ///< Boundary process index - kWLS, ///< Wave Length Shifting process index - kWLS2, ///< Second Wave Length Shifting process index - kNoProcess ///< Number of processes, no selected process +class G4VCrossSectionDataSet; + +class G4HadProcesses +{ +public: + + // convert name to pointer + static const G4ParticleDefinition* FindParticle(const G4String&); + + // access to a process + static G4HadronicProcess* FindInelasticProcess(const G4ParticleDefinition*); + static G4HadronicProcess* FindInelasticProcess(const G4String&); + + static G4HadronicProcess* FindElasticProcess(const G4ParticleDefinition*); + static G4HadronicProcess* FindElasticProcess(const G4String&); + + static G4HadronicProcess* FindCaptureProcess(); + + static G4HadronicProcess* FindFissionProcess(); + + // access to cross section by the component name + static G4CrossSectionInelastic* InelasticXS(const G4String& componentName); + static G4CrossSectionElastic* ElasticXS(const G4String& componentName); + + // add extra data set to a particle + static G4bool AddInelasticCrossSection(const G4ParticleDefinition*, G4VCrossSectionDataSet*); + static G4bool AddInelasticCrossSection(const G4String&, G4VCrossSectionDataSet*); + + static G4bool AddElasticCrossSection(const G4ParticleDefinition*, G4VCrossSectionDataSet*); + static G4bool AddElasticCrossSection(const G4String&, G4VCrossSectionDataSet*); + + static G4bool AddCaptureCrossSection(G4VCrossSectionDataSet*); + + static G4bool AddFissionCrossSection(G4VCrossSectionDataSet*); }; -/// Return the name for a given optical process index -G4String G4OpticalProcessName(G4int ); +#endif -//////////////////// -// Inline methods -//////////////////// - -inline -G4String G4OpticalProcessName(G4int processNumber) -{ - switch ( processNumber ) { - case kCerenkov: return "Cerenkov"; - case kScintillation: return "Scintillation"; - case kAbsorption: return "OpAbsorption"; - case kRayleigh: return "OpRayleigh"; - case kMieHG: return "OpMieHG"; - case kBoundary: return "OpBoundary"; - case kWLS: return "OpWLS"; - case kWLS2: return "OpWLS2"; - default: return "NoProcess"; - } -} - -#endif // G4OpticalProcessIndex_h diff --git a/source/physics_lists/util/include/G4PhysListUtil.hh b/source/physics_lists/util/include/G4PhysListUtil.hh index a6fcd06349..29ea58ae34 100644 --- a/source/physics_lists/util/include/G4PhysListUtil.hh +++ b/source/physics_lists/util/include/G4PhysListUtil.hh @@ -47,8 +47,12 @@ class G4PhysListUtil { public: + static void InitialiseParameters(); + static G4HadronicProcess* FindInelasticProcess(const G4ParticleDefinition*); + static G4HadronicProcess* FindElasticProcess(const G4ParticleDefinition*); + static G4HadronicProcess* FindCaptureProcess(const G4ParticleDefinition*); static G4HadronicProcess* FindFissionProcess(const G4ParticleDefinition*); diff --git a/source/physics_lists/util/sources.cmake b/source/physics_lists/util/sources.cmake index ad42c36672..e4f2c67e40 100644 --- a/source/physics_lists/util/sources.cmake +++ b/source/physics_lists/util/sources.cmake @@ -14,93 +14,19 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) -include_directories(${EXPAT_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/digits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/hits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/event/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/physics_lists/builders/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/highenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/muons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/xrays/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/coherent_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/gem_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/incl_physics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/inclxx/interface/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lend/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/lepto_nuclear/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/particle_hp/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/qgsm/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/radioactive_decay/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/stopping/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/optical/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/run/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/tracking/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4physlist_util HEADERS CompileTimeConstraints.hh G4HadParticles.hh + G4HadProcesses.hh G4PhysListUtil.hh G4WarnPLStatus.hh SOURCES G4HadParticles.cc + G4HadProcesses.cc G4PhysListUtil.cc G4WarnPLStatus.cc GRANULAR_DEPENDENCIES @@ -159,7 +85,6 @@ GEANT4_DEFINE_MODULE(NAME G4physlist_util G4navigation G4optical G4partman - G4phys_builders G4procman G4run G4shortlived diff --git a/source/physics_lists/util/src/G4HadParticles.cc b/source/physics_lists/util/src/G4HadParticles.cc index 5e5a097f8e..f6fc76e6fd 100644 --- a/source/physics_lists/util/src/G4HadParticles.cc +++ b/source/physics_lists/util/src/G4HadParticles.cc @@ -31,15 +31,21 @@ #include "G4HadParticles.hh" -// p, n, pi+, pi-, pbar, nbar +// p, n, pi+, pi- const std::vector G4HadParticles::sLightHadrons = { - 2212, 2112, 211, -211, -2212, -2112 + 2212, 2112, 211, -211 }; -// Lambda, Sigma+, Sigma0, Sigma-, Xi0, Xi-, Omega-, anti_hyperons +// Lambda, Sigma+, Sigma-, Xi0, Xi-, Omega- +// (note that Sigma0 has not been included because it decays very quickly) const std::vector G4HadParticles::sHyperons = { - 3122, 3222, 3212, 3112, 3322, 3312, 3334, - -3122, -3222, -3212, -3112, -3322, -3312, -3334 + 3122, 3222, 3112, 3322, 3312, 3334 +}; + +// anti_Lambda, anti_Sigma+, anti_Sigma-, anti_Xi0, anti_Xi-, anti_Omega- +// (note that anti_Sigma0 has not been included because it decays very quickly) +const std::vector G4HadParticles::sAntiHyperons = { + -3122, -3222, -3112, -3322, -3312, -3334 }; // K+, K-, KS, KL @@ -47,26 +53,32 @@ const std::vector G4HadParticles::sKaons = { 321, -321, 310, 130 }; +// Note: etac, JPsi, SigmaC++, SigmaC+, SigmaC0, Upsilon, +// SigmaB+, SigmaB0, SigmaB- are not included because +// they decay very quickly (therefore, their hadronic +// interactions can be neglected, as for pi0 and Sigma0). const std::vector G4HadParticles::sBCHadrons = { // D+, D0, D-, D0bar, Ds+, Ds- 411, 421, -411, -421, 431, -431, // B+, B0, B-, B0bar, Bs0, Bs0bar, Bc+, Bc-, 521, 511, -521, -511, 531, -531, 541, -541, - // eta, eta', etaC, JPsi, Upsilon - 221, 331, 441, 443, 553, - // LambdaC+, SigmaC++, SigmaC+, SigmaC0, XiC+, XiC0, OmegaC0 - 4122, 4222, 4212, 4112, 4232, 4132, 4332, - // LambdaB, SigmaB+, SigmaB0, SigmaB-, XiB0, XiB-, OmegaB- - 5122, 5222, 5212, 5112, 5232, 5132, 5332, - // anti_baryons - -4122, -4222, -4212, -4112, -4232, -4132, -4332, - -5122, -5222, -5212, -5112, -5232, -5132, -5332 + // LambdaC+, XiC+, XiC0, OmegaC0 + 4122, 4232, 4132, 4332, + // LambdaB, XiB0, XiB-, OmegaB- + 5122, 5232, 5132, 5332, + // corresponding anti_baryons + -4122, -4232, -4132, -4332, + -5122, -5232, -5132, -5332 }; -// d, t, He3, alpha, anti-ions +// d, t, He3, alpha const std::vector G4HadParticles::sLightIons = { - 1000010020, 1000010030, 1000020030, 1000020040, - -1000010020, -1000010030, -1000020030, -1000020040, + 1000010020, 1000010030, 1000020030, 1000020040 +}; + +// pbar, nbar, light anti-ions +const std::vector G4HadParticles::sLightAntiIons = { + -2212, -2112, -1000010020, -1000010030, -1000020030, -1000020040 }; // charged particles for EM physics @@ -102,6 +114,11 @@ const std::vector& G4HadParticles::GetHyperons() return sHyperons; } +const std::vector& G4HadParticles::GetAntiHyperons() +{ + return sAntiHyperons; +} + const std::vector& G4HadParticles::GetKaons() { return sKaons; @@ -117,6 +134,11 @@ const std::vector& G4HadParticles::GetLightIons() return sLightIons; } +const std::vector& G4HadParticles::GetLightAntiIons() +{ + return sLightAntiIons; +} + const std::vector& G4HadParticles::GetHeavyChargedParticles() { return sHeavyChargedPart; diff --git a/source/physics_lists/util/src/G4HadProcesses.cc b/source/physics_lists/util/src/G4HadProcesses.cc new file mode 100644 index 0000000000..b53e1d7acb --- /dev/null +++ b/source/physics_lists/util/src/G4HadProcesses.cc @@ -0,0 +1,172 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +//--------------------------------------------------------------------------- +// +// ClassName: G4HadProcesses +// +// Author: 8 July 2020 V.Ivanchenko +// +// Modified: +// +//---------------------------------------------------------------------------- +// + +#include "G4HadProcesses.hh" +#include "G4SystemOfUnits.hh" +#include "G4PhysListUtil.hh" +#include "G4ParticleTable.hh" +#include "G4Neutron.hh" +#include "G4CrossSectionDataSetRegistry.hh" +#include "G4VCrossSectionDataSet.hh" +#include "G4ComponentGGHadronNucleusXsc.hh" +#include "G4ComponentGGNuclNuclXsc.hh" +#include "G4ComponentAntiNuclNuclearXS.hh" + +const G4ParticleDefinition* G4HadProcesses::FindParticle(const G4String& pname) +{ + return G4ParticleTable::GetParticleTable()->FindParticle(pname); +} + +G4HadronicProcess* G4HadProcesses::FindInelasticProcess(const G4ParticleDefinition* ptr) +{ + return G4PhysListUtil::FindInelasticProcess(ptr); +} + +G4HadronicProcess* G4HadProcesses::FindInelasticProcess(const G4String& pname) +{ + return FindInelasticProcess( FindParticle(pname) ); +} + +G4HadronicProcess* G4HadProcesses::FindElasticProcess(const G4ParticleDefinition* ptr) +{ + return G4PhysListUtil::FindElasticProcess(ptr); +} + +G4HadronicProcess* G4HadProcesses::FindElasticProcess(const G4String& pname) +{ + return FindElasticProcess( FindParticle(pname) ); +} + +G4HadronicProcess* G4HadProcesses::FindCaptureProcess() +{ + return G4PhysListUtil::FindCaptureProcess(G4Neutron::Neutron()); +} + +G4HadronicProcess* G4HadProcesses::FindFissionProcess() +{ + return G4PhysListUtil::FindFissionProcess(G4Neutron::Neutron()); +} + +G4CrossSectionInelastic* G4HadProcesses::InelasticXS(const G4String& compName) +{ + G4CrossSectionInelastic* xs = nullptr; + auto comp = G4CrossSectionDataSetRegistry::Instance()->GetComponentCrossSection(compName); + if( comp != nullptr ) { + xs = new G4CrossSectionInelastic(comp); + } else if( "Glauber-Gribov" == compName ) { + xs = new G4CrossSectionInelastic(new G4ComponentGGHadronNucleusXsc()); + } else if( "Glauber-Gribov Nucl-nucl" == compName ) { + xs = new G4CrossSectionInelastic(new G4ComponentGGNuclNuclXsc()); + } else if( "AntiAGlauber" == compName ) { + xs = new G4CrossSectionInelastic(new G4ComponentAntiNuclNuclearXS()); + } + return xs; +} + +G4CrossSectionElastic* G4HadProcesses::ElasticXS(const G4String& compName) +{ + G4CrossSectionElastic* xs = nullptr; + auto comp = G4CrossSectionDataSetRegistry::Instance()->GetComponentCrossSection(compName); + if( comp != nullptr ) { + xs = new G4CrossSectionElastic(comp); + } else if( "Glauber-Gribov" == compName ) { + xs = new G4CrossSectionElastic(new G4ComponentGGHadronNucleusXsc()); + } else if( "Glauber-Gribov Nucl-nucl" == compName ) { + xs = new G4CrossSectionElastic(new G4ComponentGGNuclNuclXsc()); + } else if( "AntiAGlauber" == compName ) { + xs = new G4CrossSectionElastic(new G4ComponentAntiNuclNuclearXS()); + } + return xs; +} + +G4bool G4HadProcesses::AddInelasticCrossSection(const G4ParticleDefinition* ptr, + G4VCrossSectionDataSet* xs) +{ + G4bool isOK(false); + if( ptr != nullptr ) { + G4HadronicProcess* had = FindInelasticProcess( ptr ); + if( had != nullptr ) { + isOK = true; + had->AddDataSet( xs ); + } + } + return isOK; +} + +G4bool G4HadProcesses::AddInelasticCrossSection(const G4String& pname, G4VCrossSectionDataSet* xs) +{ + return AddInelasticCrossSection( FindParticle(pname), xs ); +} + +G4bool G4HadProcesses::AddElasticCrossSection(const G4ParticleDefinition* ptr, G4VCrossSectionDataSet* xs) +{ + G4bool isOK(false); + if( ptr != nullptr ) { + G4HadronicProcess* had = FindElasticProcess( ptr ); + if( had != nullptr ) { + isOK = true; + had->AddDataSet( xs ); + } + } + return isOK; +} + +G4bool G4HadProcesses::AddElasticCrossSection(const G4String& pname, G4VCrossSectionDataSet* xs) +{ + return AddElasticCrossSection( FindParticle(pname), xs ); +} + +G4bool G4HadProcesses::AddCaptureCrossSection(G4VCrossSectionDataSet* xs) +{ + G4bool isOK(false); + G4HadronicProcess* had = FindCaptureProcess(); + if( had != nullptr ) { + isOK = true; + had->AddDataSet( xs ); + } + return isOK; +} + +G4bool G4HadProcesses::AddFissionCrossSection(G4VCrossSectionDataSet* xs) +{ + G4bool isOK(false); + G4HadronicProcess* had = FindFissionProcess(); + if( had != nullptr ) { + isOK = true; + had->AddDataSet( xs ); + } + return isOK; +} diff --git a/source/physics_lists/util/src/G4PhysListUtil.cc b/source/physics_lists/util/src/G4PhysListUtil.cc index a6dcbf33cd..47a075c3f6 100644 --- a/source/physics_lists/util/src/G4PhysListUtil.cc +++ b/source/physics_lists/util/src/G4PhysListUtil.cc @@ -32,6 +32,7 @@ // Author: 2007 Gunter Folger // // Modified: +// 07.10.2020 V.Ivanchenko added InitialiseParameters method // //---------------------------------------------------------------------------- // @@ -40,6 +41,18 @@ #include "G4ProcessManager.hh" #include "G4ProcessVector.hh" +#include "G4NistManager.hh" +#include "G4EmParameters.hh" +#include "G4HadronicParameters.hh" +#include "G4NuclearLevelData.hh" + +void G4PhysListUtil::InitialiseParameters() +{ + G4NistManager::Instance(); + G4EmParameters::Instance()->SetDefaults(); + G4HadronicParameters::Instance(); + G4NuclearLevelData::GetInstance(); +} G4HadronicProcess* G4PhysListUtil::FindInelasticProcess(const G4ParticleDefinition* p) @@ -49,8 +62,27 @@ G4PhysListUtil::FindInelasticProcess(const G4ParticleDefinition* p) G4ProcessVector* pvec = p->GetProcessManager()->GetProcessList(); size_t n = pvec->size(); for(size_t i=0; iGetProcessSubType()) { - had = static_cast((*pvec)[i]); + auto proc = (*pvec)[i]; + if(proc != nullptr && fHadronInelastic == proc->GetProcessSubType()) { + had = static_cast(proc); + break; + } + } + } + return had; +} + +G4HadronicProcess* +G4PhysListUtil::FindElasticProcess(const G4ParticleDefinition* p) +{ + G4HadronicProcess* had = nullptr; + if(p) { + G4ProcessVector* pvec = p->GetProcessManager()->GetProcessList(); + size_t n = pvec->size(); + for(size_t i=0; iGetProcessSubType()) { + had = static_cast(proc); break; } } @@ -66,8 +98,9 @@ G4PhysListUtil::FindCaptureProcess(const G4ParticleDefinition* p) G4ProcessVector* pvec = p->GetProcessManager()->GetProcessList(); size_t n = pvec->size(); for(size_t i=0; iGetProcessSubType()) { - had = static_cast((*pvec)[i]); + auto proc = (*pvec)[i]; + if(proc != nullptr && fCapture == proc->GetProcessSubType()) { + had = static_cast(proc); break; } } @@ -83,8 +116,9 @@ G4PhysListUtil::FindFissionProcess(const G4ParticleDefinition* p) G4ProcessVector* pvec = p->GetProcessManager()->GetProcessList(); size_t n = pvec->size(); for(size_t i=0; iGetProcessSubType()) { - had = static_cast((*pvec)[i]); + auto proc = (*pvec)[i]; + if(proc != nullptr && fFission == proc->GetProcessSubType()) { + had = static_cast(proc); break; } } diff --git a/source/processes/History b/source/processes/History index b7115baa02..10ef453ee1 100644 --- a/source/processes/History +++ b/source/processes/History @@ -16,6 +16,12 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +November 16, 2020 G.Cosmo (processes-V10-06-01) +- Fixed typos in printed-out text. Addressing problem report #2285. + +September 23, 2020 B.Morgan (processes-V10-06-00) +- Remove no longer required include_directories + April 20, 2017 G.Cosmo (processes-V10-03-03) - Tag based on geant4-10-03-ref-03, plus the following: emutils-V10-03-05, hadr-cross-V10-03-02, hadr-casc-V10-03-00, @@ -46,11 +52,11 @@ Apr 27, Mikhail Kosov (processes-cmk-V09-05-00) - hadronic/model/chiral_inv_phase_space moved to hadronic/chips Sep 7, 2011, Gunter Folger (processes-cmk-V09-04-01) -- remove/comment new modules hadronic/{common, incl++/...} from cmake +- remove/comment new modules hadronic/{common, incl++/...} from cmake - Update GNUmakefile and use CMakeLists.txt of processes-V09-04-01 for dna architecture change. -Sep 7, 2011, Gunter Folger (processes-gmk-V09-04-00 and +Sep 7, 2011, Gunter Folger (processes-gmk-V09-04-00 and processes-cmk-V09-04-00) - Update GNUmakefile and use CMakeLists.txt of processes-V09-04-01 for dna architecture change. @@ -92,7 +98,7 @@ May 29, 1999: John Allison electromagnetic/GNUmakefile.. Sep 25: H.Kurashige. -- procman-00-02-05 has tagged +- procman-00-02-05 has tagged Added deleteion of all processes in the destructor of G4ProcessTable Aug 27: HP Wellisch. - collected the fixes in a new processes-tag; trying Harm's improved code. @@ -140,7 +146,7 @@ Aug 10: H.Kurashige (decay-00-02-01) - Modified G4Decay to adapt the removal of G4VProcess::thePhysicsTable Aug 10: H.Kurashige (procman-00-02-01) -- Removed G4VProcess::thePhysicsTable +- Removed G4VProcess::thePhysicsTable Jul 19: HP Wellisch (pro-00-01-05) @@ -155,7 +161,7 @@ Jul 14: HP Wellisch Tagging the process tag as basis for the final validation procedure of geant4-beta. -Jul 09: G.Cosmo +Jul 09: G.Cosmo - Fixed bug in electromagnetics/util/GNUmakefile and in electromagnetics/xrays/GNUmakefile. G4EXEC_BUILD was erroneously set. @@ -184,18 +190,18 @@ optical: head parametrisation: pre-beta01-02 transportation: pre-beta01-02 -Changes to accommodate the material-00-01-01 tag are not +Changes to accommodate the material-00-01-01 tag are not present for the moment. Jul 08: H.Kurashige (procman-00-01-01) -- Removed G4MaterialTable.hh +- Removed G4MaterialTable.hh Jul 07: G.Cosmo - Added models/generator and models/neutron_hp to compile sequence in models/GNUmakefile. Jul 01: HPW tagging pro-00-07-01 - + Jun 30: H.Kurashige procman-00-07-03 - Added G4IVContinuousDiscreteProcess and G4IVRestDiscreteProcess.hh for em-00-07-01 (by Michel) @@ -208,25 +214,25 @@ Jun 30: Paulo & Marc - param-00-07-01 "G4FlavoredParallelWorld" with some improvements; - To starting allowing the vis/draw/Ghosts command - implementation, the + implementation, the - G4VPhysicalVolume* + G4VPhysicalVolume* GetWorldForThis (G4ParticleDefinition *) - from G4GlobalFastSimulationManager becomes + from G4GlobalFastSimulationManager becomes - G4FlavoredParallelWorld* + G4FlavoredParallelWorld* GetFlavoredWorldForThis(G4ParticleDefinition *); - - A few changes in the G4FastSimulationManagerProcess + - A few changes in the G4FastSimulationManagerProcess to deal with these changes. Jun 28:H.Kurashige procman-00-06-03 -- Fixed bugs of InsertAt, SetProcessOrdering methods in G4ProcessManager +- Fixed bugs of InsertAt, SetProcessOrdering methods in G4ProcessManager - Added copy constructor in G4ProcessManager Jun 28:H.Kurashige decay-06-01 -- Modified for new unified cut scheme +- Modified for new unified cut scheme Jun 27: L. Felawka - added new processes G4MuonMinusCaptureatRest and @@ -278,7 +284,7 @@ Apr 23, 98 H.P. Wellisch processes: param param-00-05-01 emlem head - optic head + optic head decay decay-05-01 hadro had-00-06-00 manag head @@ -310,7 +316,7 @@ processes: manag procman-05-01 trans trans-05-01 -the tag were tested with +the tag were tested with * digits+hits hits-00-05-01 * events+tracks alpha05 @@ -328,16 +334,16 @@ the tag were tested with April 20, 98 MMa em-00-05-01 suppression of any 'tracking'cut - ready for alpha06 - + ready for alpha06 + April 16, 98 L. Felawka Replaced compound stopped particle process class "G4HadronAtRest" by individual stopped particle process classes "G4PionMinusAbsorptionAtRest", "G4NeutronCaptureAtRest", "G4AntiProtonAnnihilationAtRest" and "G4AntiNeutronAnnihilationAtRest" - + April 12, 98 H.Kuraashige - Implement new scheme of 'Particle Change'. Please see + Implement new scheme of 'Particle Change'. Please see particle_change.asc in geant4alpha/documents/particles+matter/. Following files have been modified. management: all abstract classes of G4V*Process.hh @@ -369,7 +375,7 @@ April 08, 98 G.Cosmo G4KaonMinusAbsorptionAtRest.cc, G4ReactionDynamics.cc March 24, 98 G.Barrand -- GNUmakefile, hadronic/GNUmakefile, hadronic/models/GNUmakefile : +- GNUmakefile, hadronic/GNUmakefile, hadronic/models/GNUmakefile : MAKESHLIB changed in G4MAKESHLIB March 13 1998, Hans-Peter Wellisch @@ -377,21 +383,21 @@ March 13 1998, Hans-Peter Wellisch had-00-04-02. March 06 1998, Hans-Peter Wellisch -- Tagged the processes, including the new tags on em, para, and +- Tagged the processes, including the new tags on em, para, and had: em-00-04-02, param-00-04-04, had-00-04-01 as pro-00-04-01. March 03 1998, Marc Verderi - The tag param-00-04-02 introduces the possibility for the - parameterisation models to parameterise also particles at + parameterisation models to parameterise also particles at rest. March 02 1998, P.MoradeFreitas -- The param-00-04-01 processes/parameterisation tag introducing +- The param-00-04-01 processes/parameterisation tag introducing the Ghost volumes. March 02 1998, S.Sadilov -- fix processes/hadronic/util/src/GNUmakefile for compiling +- fix processes/hadronic/util/src/GNUmakefile for compiling processes/hadronic/util/src/G4NucleiPropertiesTable.cc on WinNT. Feb 05 1998, G.Cosmo (pro-00-03-03) @@ -439,8 +445,8 @@ and alpha03 of the other cathegories, except for intercoms. January 28, 98 S. Sadilov -- For Win/NT port in GNUmakefile used $OUT_LIB introduced in - GNUmakefile.architecture as positional qualifier for creating +- For Win/NT port in GNUmakefile used $OUT_LIB introduced in + GNUmakefile.architecture as positional qualifier for creating composite-library. January 24, 98 H.Kurashige - (procman-03-01)(decay-03-01) diff --git a/source/processes/biasing/History b/source/processes/biasing/History index 412d387f0a..7d306fec68 100644 --- a/source/processes/biasing/History +++ b/source/processes/biasing/History @@ -16,6 +16,10 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +September 4th, 2020 Gabriele Cosmo (procbiasing-V10-06-01) +- Fixed Coverity defect warnings for data initialisation and leaks in classes + G4WeightCutOffProcess, G4ImportanceProcess and G4WeightWindowProcess. + February 17th, 2020 Vladimir Ivanchenko (procbiasing-V10-06-00) - G4ImportanceProcess: added process type as fParallel diff --git a/source/processes/biasing/generic/sources.cmake b/source/processes/biasing/generic/sources.cmake index 5ea38075d3..61c67092ac 100644 --- a/source/processes/biasing/generic/sources.cmake +++ b/source/processes/biasing/generic/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4biasing_gen # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,33 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/detector/include) -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/hits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/biasing/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4biasing_gen HEADERS G4BiasingHelper.hh diff --git a/source/processes/biasing/importance/History b/source/processes/biasing/importance/History index ab921ac80f..871bb12804 100644 --- a/source/processes/biasing/importance/History +++ b/source/processes/biasing/importance/History @@ -16,6 +16,10 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +September 4th, 2020 G.Cosmo +- Fixed Coverity defect warnings for data initialisation and leaks in classes + G4WeightCutOffProcess, G4ImportanceProcess and G4WeightWindowProcess. + February 17th, 2020 V.Ivanchenko - G4ImportanceProcess: added process type as fParallel diff --git a/source/processes/biasing/importance/include/G4ImportanceProcess.hh b/source/processes/biasing/importance/include/G4ImportanceProcess.hh index 9be22537ae..35ee500e59 100644 --- a/source/processes/biasing/importance/include/G4ImportanceProcess.hh +++ b/source/processes/biasing/importance/include/G4ImportanceProcess.hh @@ -23,22 +23,19 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// ---------------------------------------------------------------------- -// Class G4ImportanceProcess +// G4ImportanceProcess // // Class description: // // Used internally by importance sampling in the "mass" geometry. -// This process is a forced post step process. I will apply +// This process is a forced post step process. It will apply // importance sampling if the particle crosses a boundary in the // "mass" geometry. -// Author: Michael Dressel (Michael.Dressel@cern.ch) -// ---------------------------------------------------------------------- +// Author: Michael Dressel, 2002 +// -------------------------------------------------------------------- #ifndef G4ImportanceProcess_hh -#define G4ImportanceProcess_hh G4ImportanceProcess_hh +#define G4ImportanceProcess_hh 1 #include "G4VProcess.hh" #include "G4VTrackTerminator.hh" @@ -63,9 +60,10 @@ class G4ImportanceProcess : public G4VProcess, public G4VTrackTerminator public: // with description G4ImportanceProcess(const G4VImportanceAlgorithm &aImportanceAlgorithm, - const G4VIStore &aIstore, - const G4VTrackTerminator *TrackTerminator, - const G4String &aName = "ImportanceProcess", G4bool para = false); + const G4VIStore &aIstore, + const G4VTrackTerminator *TrackTerminator, + const G4String &aName = "ImportanceProcess", + G4bool para = false); // creates a G4ParticleChange virtual ~G4ImportanceProcess(); @@ -130,34 +128,34 @@ private: void CopyStep(const G4Step & step); - G4Step * fGhostStep; - G4StepPoint * fGhostPreStepPoint; - G4StepPoint * fGhostPostStepPoint; + G4Step* fGhostStep = nullptr; + G4StepPoint* fGhostPreStepPoint = nullptr; + G4StepPoint* fGhostPostStepPoint = nullptr; - G4ParticleChange *fParticleChange; + G4ParticleChange* fParticleChange = nullptr; const G4VImportanceAlgorithm &fImportanceAlgorithm; - const G4VIStore &fIStore; - G4SamplingPostStepAction *fPostStepAction; + const G4VIStore& fIStore; + G4SamplingPostStepAction* fPostStepAction = nullptr; - G4TransportationManager* fTransportationManager; - G4PathFinder* fPathFinder; + G4TransportationManager* fTransportationManager = nullptr; + G4PathFinder* fPathFinder = nullptr; // ------------------------------- // Navigation in the Ghost World: // ------------------------------- - G4String fGhostWorldName; - G4VPhysicalVolume* fGhostWorld; - G4Navigator* fGhostNavigator; - G4int fNavigatorID; + G4String fGhostWorldName = "NoParallelWorld"; + G4VPhysicalVolume* fGhostWorld = nullptr; + G4Navigator* fGhostNavigator = nullptr; + G4int fNavigatorID = -1; G4TouchableHandle fOldGhostTouchable; G4TouchableHandle fNewGhostTouchable; - G4FieldTrack fFieldTrack; - G4double fGhostSafety; - G4bool fOnBoundary; + G4FieldTrack fFieldTrack = '0'; + G4double fGhostSafety = -1; + G4bool fOnBoundary = false; - G4bool fParaflag; - G4FieldTrack fEndTrack; - ELimited feLimited; + G4bool fParaflag = false; + G4FieldTrack fEndTrack = '0'; + ELimited feLimited = kDoNot; }; diff --git a/source/processes/biasing/importance/include/G4WeightCutOffProcess.hh b/source/processes/biasing/importance/include/G4WeightCutOffProcess.hh index 1f810df1da..b6626282fb 100644 --- a/source/processes/biasing/importance/include/G4WeightCutOffProcess.hh +++ b/source/processes/biasing/importance/include/G4WeightCutOffProcess.hh @@ -23,19 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// ---------------------------------------------------------------------- -// Class G4WeightCutOffProcess +// G4WeightCutOffProcess // // Class description: // // Process for biasing particle-change cutoff. -// Author: Michael Dressel (Michael.Dressel@cern.ch) -// ---------------------------------------------------------------------- +// Author: Michael Dressel, 2002 +// -------------------------------------------------------------------- #ifndef G4WeightCutOffProcess_hh -#define G4WeightCutOffProcess_hh G4WeightCutOffProcess_hh +#define G4WeightCutOffProcess_hh 1 #include "G4VProcess.hh" #include "G4VTrackTerminator.hh" @@ -63,13 +60,15 @@ public: // with description G4double wlimit, G4double isource, G4VIStore *istore, - // const G4VGCellFinder &aGCellFinder, - const G4String &aName = "WeightCutOffProcess", G4bool para = false); + const G4String &aName = "WeightCutOffProcess", + G4bool para = false); // create a G4ParticleChange virtual ~G4WeightCutOffProcess(); // delete the G4ParticleChange + G4WeightCutOffProcess(const G4WeightCutOffProcess &) = delete; + G4WeightCutOffProcess &operator=(const G4WeightCutOffProcess &) = delete; //-------------------------------------------------------------- // Set Parallel World @@ -118,40 +117,35 @@ private: void CopyStep(const G4Step & step); - G4Step * fGhostStep; - G4StepPoint * fGhostPreStepPoint; - G4StepPoint * fGhostPostStepPoint; + G4Step* fGhostStep = nullptr; + G4StepPoint* fGhostPreStepPoint = nullptr; + G4StepPoint* fGhostPostStepPoint = nullptr; - G4WeightCutOffProcess(const G4WeightCutOffProcess &); - G4WeightCutOffProcess &operator=(const G4WeightCutOffProcess &); + G4ParticleChange* fParticleChange = nullptr; + G4double fWeightSurvival = 0.; + G4double fWeightLimit = 0.; + G4double fSourceImportance = 0.; + G4VIStore* fIStore = nullptr; - G4ParticleChange *fParticleChange; - G4double fWeightSurvival; - G4double fWeightLimit; - G4double fSourceImportance; - G4VIStore *fIStore; - // const G4VGCellFinder &fGCellFinder; - - - G4TransportationManager* fTransportationManager; - G4PathFinder* fPathFinder; + G4TransportationManager* fTransportationManager = nullptr; + G4PathFinder* fPathFinder = nullptr; // ------------------------------- // Navigation in the Ghost World: // ------------------------------- - G4String fGhostWorldName; - G4VPhysicalVolume* fGhostWorld; - G4Navigator* fGhostNavigator; - G4int fNavigatorID; + G4String fGhostWorldName = "NoParallelWorld"; + G4VPhysicalVolume* fGhostWorld = nullptr; + G4Navigator* fGhostNavigator = nullptr; + G4int fNavigatorID = -1; G4TouchableHandle fOldGhostTouchable; G4TouchableHandle fNewGhostTouchable; - G4FieldTrack fFieldTrack; - G4double fGhostSafety; - G4bool fOnBoundary; + G4FieldTrack fFieldTrack = '0'; + G4double fGhostSafety = -1; + G4bool fOnBoundary = false; G4bool fParaflag; - G4FieldTrack fEndTrack; - ELimited feLimited; + G4FieldTrack fEndTrack = '0'; + ELimited feLimited = kDoNot; }; #endif diff --git a/source/processes/biasing/importance/include/G4WeightWindowProcess.hh b/source/processes/biasing/importance/include/G4WeightWindowProcess.hh index bb30da8ebb..1be55a8395 100644 --- a/source/processes/biasing/importance/include/G4WeightWindowProcess.hh +++ b/source/processes/biasing/importance/include/G4WeightWindowProcess.hh @@ -23,10 +23,7 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// ---------------------------------------------------------------------- -// Class G4MassWeioghtWindowProcess +// G4WeightWindowProcess // // Class description: // @@ -35,10 +32,10 @@ // weight window biasing on boundaries, collisions // or both according to the G4PlaceOfAction argument. -// Author: Michael Dressel (Michael.Dressel@cern.ch) -// ---------------------------------------------------------------------- -#ifndef G4MassWeioghtWindowProcess_hh -#define G4MassWeioghtWindowProcess_hh G4MassWeioghtWindowProcess_hh +// Author: Michael Dressel, 2002 +// -------------------------------------------------------------------- +#ifndef G4WeightWindowProcess_hh +#define G4WeightWindowProcess_hh 1 #include "G4VProcess.hh" #include "G4VTrackTerminator.hh" @@ -68,8 +65,8 @@ public: // with description const G4VWeightWindowStore &aWWStore, const G4VTrackTerminator *TrackTerminator, G4PlaceOfAction placeOfAction, - const G4String &aName = - "WeightWindowProcess", G4bool para = false); + const G4String &aName = "WeightWindowProcess", + G4bool para = false); // creates a G4ParticleChange virtual ~G4WeightWindowProcess(); @@ -135,35 +132,35 @@ private: void CopyStep(const G4Step & step); - G4Step * fGhostStep; - G4StepPoint * fGhostPreStepPoint; - G4StepPoint * fGhostPostStepPoint; + G4Step* fGhostStep = nullptr; + G4StepPoint* fGhostPreStepPoint = nullptr; + G4StepPoint* fGhostPostStepPoint = nullptr; - G4ParticleChange *fParticleChange; - const G4VWeightWindowAlgorithm &fWeightWindowAlgorithm; - const G4VWeightWindowStore &fWeightWindowStore; - G4SamplingPostStepAction *fPostStepAction; + G4ParticleChange* fParticleChange = nullptr; + const G4VWeightWindowAlgorithm& fWeightWindowAlgorithm; + const G4VWeightWindowStore& fWeightWindowStore; + G4SamplingPostStepAction* fPostStepAction = nullptr; G4PlaceOfAction fPlaceOfAction; - G4TransportationManager* fTransportationManager; - G4PathFinder* fPathFinder; + G4TransportationManager* fTransportationManager = nullptr; + G4PathFinder* fPathFinder = nullptr; // ------------------------------- // Navigation in the Ghost World: // ------------------------------- - G4String fGhostWorldName; - G4VPhysicalVolume* fGhostWorld; - G4Navigator* fGhostNavigator; - G4int fNavigatorID; + G4String fGhostWorldName = "NoParallelWorld"; + G4VPhysicalVolume* fGhostWorld = nullptr; + G4Navigator* fGhostNavigator = nullptr; + G4int fNavigatorID = -1; G4TouchableHandle fOldGhostTouchable; G4TouchableHandle fNewGhostTouchable; - G4FieldTrack fFieldTrack; - G4double fGhostSafety; - G4bool fOnBoundary; + G4FieldTrack fFieldTrack = '0'; + G4double fGhostSafety = -1; + G4bool fOnBoundary = false; - G4bool fParaflag; - G4FieldTrack fEndTrack; - ELimited feLimited; + G4bool fParaflag = false; + G4FieldTrack fEndTrack = '0'; + ELimited feLimited = kDoNot; }; #endif diff --git a/source/processes/biasing/importance/sources.cmake b/source/processes/biasing/importance/sources.cmake index d2474dba18..16922dd826 100644 --- a/source/processes/biasing/importance/sources.cmake +++ b/source/processes/biasing/importance/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4biasing_imp # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,34 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/detector/include) -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/hits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/biasing/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/biasing/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4biasing_imp HEADERS G4GeometrySampler.hh diff --git a/source/processes/biasing/importance/src/G4GeometrySampler.cc b/source/processes/biasing/importance/src/G4GeometrySampler.cc index f5b066bd49..ce0fd72e36 100644 --- a/source/processes/biasing/importance/src/G4GeometrySampler.cc +++ b/source/processes/biasing/importance/src/G4GeometrySampler.cc @@ -128,7 +128,7 @@ G4bool G4GeometrySampler::IsConfigured() const if (fIsConfigured) { G4cout << "WARNING - G4GeometrySampler::IsConfigured()" - << " Some initalization exists, use ClearSampling()" + << " Some initialization exists, use ClearSampling()" << " before a new initialization !" << G4endl; isconf = true; } diff --git a/source/processes/biasing/importance/src/G4ImportanceProcess.cc b/source/processes/biasing/importance/src/G4ImportanceProcess.cc index 9299810900..e7ecc7f932 100644 --- a/source/processes/biasing/importance/src/G4ImportanceProcess.cc +++ b/source/processes/biasing/importance/src/G4ImportanceProcess.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ImportanceProcess // -// -// ---------------------------------------------------------------------- -// GEANT 4 class source file -// -// G4ImportanceProcess.cc -// -// ---------------------------------------------------------------------- +// Author: Michael Dressel, 2002 +// -------------------------------------------------------------------- #include "G4ImportanceProcess.hh" #include "G4VImportanceAlgorithm.hh" @@ -59,13 +55,10 @@ G4ImportanceProcess(const G4VImportanceAlgorithm &aImportanceAlgorithm, fParticleChange(new G4ParticleChange), fImportanceAlgorithm(aImportanceAlgorithm), fIStore(aIstore), - fPostStepAction(0), - fGhostWorldName("NoParallelWorld"),fGhostWorld(0), - fGhostNavigator(0), fNavigatorID(-1), fFieldTrack('0'), - fParaflag(para), fEndTrack('0'), feLimited(kDoNot) + fParaflag(para) { G4cout << "### G4ImportanceProcess:: Creating " << G4endl; - if (TrackTerminator) + if (TrackTerminator != nullptr) { fPostStepAction = new G4SamplingPostStepAction(*TrackTerminator); } @@ -73,7 +66,7 @@ G4ImportanceProcess(const G4VImportanceAlgorithm &aImportanceAlgorithm, { fPostStepAction = new G4SamplingPostStepAction(*this); } - if (!fParticleChange) + if (fParticleChange == nullptr) { G4Exception("G4ImportanceProcess::G4ImportanceProcess()", "FatalError", FatalException, @@ -103,7 +96,7 @@ G4ImportanceProcess::~G4ImportanceProcess() delete fPostStepAction; delete fParticleChange; - // delete fGhostStep; + // delete fGhostStep; // delete fGhostWorld; // delete fGhostNavigator; @@ -159,7 +152,7 @@ void G4ImportanceProcess::StartTracking(G4Track* trk) // G4cout << " G4ParallelWorldScoringProcess::StartTracking" << G4endl; if(fParaflag) { - if(fGhostNavigator) + if(fGhostNavigator != nullptr) { fNavigatorID = fTransportationManager->ActivateNavigator(fGhostNavigator); } else { @@ -437,7 +430,7 @@ AtRestGetPhysicalInteractionLength(const G4Track& , G4VParticleChange* G4ImportanceProcess:: AtRestDoIt(const G4Track&, const G4Step&) { - return 0; + return nullptr; } G4VParticleChange* G4ImportanceProcess:: @@ -448,7 +441,6 @@ AlongStepDoIt(const G4Track& aTrack, const G4Step& ) //AH G4cout << " along step do it " << G4endl; pParticleChange->Initialize(aTrack); return pParticleChange; - // return 0; } void G4ImportanceProcess::CopyStep(const G4Step & step) diff --git a/source/processes/biasing/importance/src/G4WeightCutOffProcess.cc b/source/processes/biasing/importance/src/G4WeightCutOffProcess.cc index c423e153fa..4baf2cff3d 100644 --- a/source/processes/biasing/importance/src/G4WeightCutOffProcess.cc +++ b/source/processes/biasing/importance/src/G4WeightCutOffProcess.cc @@ -23,19 +23,13 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4WeightCutOffProcess // -// -// ---------------------------------------------------------------------- -// GEANT 4 class source file -// -// G4WeightCutOffProcess.cc -// -// ---------------------------------------------------------------------- +// Author: Michael Dressel, 2002 +// -------------------------------------------------------------------- #include "G4WeightCutOffProcess.hh" -//#include "G4VScorer.hh" #include "G4GeometryCellStep.hh" -//#include "G4GCellFinder.hh" #include "G4TouchableHandle.hh" #include "G4VIStore.hh" @@ -55,7 +49,6 @@ G4WeightCutOffProcess(G4double wsurvival, G4double wlimit, G4double isource, G4VIStore *istore, - // const G4VGCellFinder &aGCellFinder, const G4String &aName, G4bool para) : G4VProcess(aName), fParticleChange(new G4ParticleChange), @@ -63,10 +56,7 @@ G4WeightCutOffProcess(G4double wsurvival, fWeightLimit(wlimit), fSourceImportance(isource), fIStore(istore), - // fGCellFinder(aGCellFinder), - fGhostWorldName("NoParallelWorld"), fGhostWorld(0), - fGhostNavigator(0), fNavigatorID(-1), fFieldTrack('0'), - fParaflag(para), fEndTrack('0'), feLimited(kDoNot) + fParaflag(para) { if (!fParticleChange) { @@ -93,7 +83,7 @@ G4WeightCutOffProcess(G4double wsurvival, G4WeightCutOffProcess::~G4WeightCutOffProcess() { delete fParticleChange; - // delete fGhostStep; + // delete fGhostStep; } @@ -139,7 +129,7 @@ void G4WeightCutOffProcess::StartTracking(G4Track* trk) // G4cout << " G4ParallelWorldScoringProcess::StartTracking" << G4endl; if(fParaflag) { - if(fGhostNavigator) + if(fGhostNavigator != nullptr) { fNavigatorID = fTransportationManager->ActivateNavigator(fGhostNavigator); } else { @@ -229,7 +219,7 @@ G4WeightCutOffProcess::PostStepDoIt(const G4Track& aTrack, // G4GeometryCell postCell = fGCellFinder.GetPostGeometryCell(aStep); // G4GeometryCell postCell = fGCellFinder.GetPostGeometryCell(fGhostStep); G4double R = fSourceImportance; - if (fIStore) + if (fIStore != nullptr) { G4double i = fIStore->GetImportance(postCell); if (i>0) @@ -259,7 +249,7 @@ G4WeightCutOffProcess::PostStepDoIt(const G4Track& aTrack, // G4GeometryCell postCell = fGCellFinder.GetPostGeometryCell(aStep); // G4GeometryCell postCell = fGCellFinder.GetPostGeometryCell(fGhostStep); G4double R = fSourceImportance; - if (fIStore) + if (fIStore != nullptr) { G4double i = fIStore->GetImportance(postCell); if (i>0) @@ -376,7 +366,7 @@ AtRestGetPhysicalInteractionLength(const G4Track& , G4VParticleChange* G4WeightCutOffProcess::AtRestDoIt(const G4Track&, const G4Step&) { - return 0; + return nullptr; } G4VParticleChange* @@ -386,8 +376,6 @@ G4WeightCutOffProcess::AlongStepDoIt(const G4Track& track, const G4Step&) // Expecting G4Transportation to move the track pParticleChange->Initialize(track); return pParticleChange; - - // return 0; } void G4WeightCutOffProcess::CopyStep(const G4Step & step) diff --git a/source/processes/biasing/importance/src/G4WeightWindowProcess.cc b/source/processes/biasing/importance/src/G4WeightWindowProcess.cc index c3898c150d..b3b8dd1baa 100644 --- a/source/processes/biasing/importance/src/G4WeightWindowProcess.cc +++ b/source/processes/biasing/importance/src/G4WeightWindowProcess.cc @@ -23,14 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4WeightWindowProcess // -// -// ---------------------------------------------------------------------- -// GEANT 4 class source file -// -// G4WeightWindowProcess.cc -// -// ---------------------------------------------------------------------- +// Author: Michael Dressel, 2002 +// -------------------------------------------------------------------- #include "G4WeightWindowProcess.hh" #include "G4VWeightWindowAlgorithm.hh" @@ -61,13 +57,9 @@ G4WeightWindowProcess::G4WeightWindowProcess( fParticleChange(new G4ParticleChange), fWeightWindowAlgorithm(aWeightWindowAlgorithm), fWeightWindowStore(aWWStore), - fPostStepAction(0), - fPlaceOfAction(placeOfAction), - fGhostWorldName("NoParallelWorld"),fGhostWorld(0), - fGhostNavigator(0), fNavigatorID(-1), fFieldTrack('0'), - fParaflag(), fEndTrack('0'), feLimited(kDoNot) + fPlaceOfAction(placeOfAction) { - if (TrackTerminator) + if (TrackTerminator != nullptr) { fPostStepAction = new G4SamplingPostStepAction(*TrackTerminator); } @@ -75,7 +67,7 @@ G4WeightWindowProcess::G4WeightWindowProcess( { fPostStepAction = new G4SamplingPostStepAction(*this); } - if (!fParticleChange) + if (fParticleChange == nullptr) { G4Exception("G4WeightWindowProcess::G4WeightWindowProcess()", "FatalError", FatalException, @@ -104,7 +96,7 @@ G4WeightWindowProcess::~G4WeightWindowProcess() delete fPostStepAction; delete fParticleChange; - // delete fGhostStep; + // delete fGhostStep; } @@ -151,7 +143,7 @@ void G4WeightWindowProcess::StartTracking(G4Track* trk) // G4cout << " G4ParallelWorldScoringProcess::StartTracking" << G4endl; if(fParaflag) { - if(fGhostNavigator) + if(fGhostNavigator != nullptr) { fNavigatorID = fTransportationManager->ActivateNavigator(fGhostNavigator); } else { @@ -381,7 +373,7 @@ AtRestGetPhysicalInteractionLength(const G4Track& , G4VParticleChange* G4WeightWindowProcess:: AtRestDoIt(const G4Track&, const G4Step&) { - return 0; + return nullptr; } G4VParticleChange* G4WeightWindowProcess:: @@ -391,8 +383,6 @@ AlongStepDoIt(const G4Track& track, const G4Step&) // Expecting G4Transportation to move the track pParticleChange->Initialize(track); return pParticleChange; - - // return 0; } void G4WeightWindowProcess::CopyStep(const G4Step & step) diff --git a/source/processes/biasing/management/include/G4VBiasingOperator.hh b/source/processes/biasing/management/include/G4VBiasingOperator.hh index 36448c31cc..34b145bd23 100644 --- a/source/processes/biasing/management/include/G4VBiasingOperator.hh +++ b/source/processes/biasing/management/include/G4VBiasingOperator.hh @@ -70,7 +70,7 @@ // step and propose a final state. // // This method is the first operator method called, it is called at the -// by the PostStepGetPhysicalInterationLenght(...) method of the +// by the PostStepGetPhysicalInterationLength(...) method of the // G4BiasingProcessInterface. // // 2) physics-based biasing: @@ -95,7 +95,7 @@ // in the operator before returning the related operation to the process. // // This method is the second operator one called in a step, it is called by -// the PostStepGetPhysicalInterationLenght(...) method of the +// the PostStepGetPhysicalInterationLength(...) method of the // G4BiasingProcessInterface. // // b) The biasing of the physics process final state is proposed by: @@ -209,7 +209,7 @@ protected: // -- If a null pointer is returned, the analog -unbiased- behavior is adopted. // -- non-physics-based biasing: // ----------------------------- - // -- [ First operator method called, at the PostStepGetPhysicalInterationLenght(...) level. ] + // -- [ First operator method called, at the PostStepGetPhysicalInterationLength(...) level. ] virtual G4VBiasingOperation* ProposeNonPhysicsBiasingOperation( const G4Track* track, const G4BiasingProcessInterface* callingProcess ) = 0; // -- physics-based biasing: // ------------------------- @@ -220,7 +220,7 @@ protected: // -- The informations provided by the G4BiasingProcessInterface calling process (previous occurrence operation, previous step length, // -- etc.) might be useful for doing this. They will be useful also to decide with continuing with a same operation proposed // -- in the previous step, updating the interaction law taking into account the new G4Track state and the previous step size. - // -- [ Second operator method called, at the PostStepGetPhysicalInterationLenght(...) level. ] + // -- [ Second operator method called, at the PostStepGetPhysicalInterationLength(...) level. ] virtual G4VBiasingOperation* ProposeOccurenceBiasingOperation( const G4Track* track, const G4BiasingProcessInterface* callingProcess ) = 0; // -- [ Third operator method called, at the PostStepDoIt(...) level. ] virtual G4VBiasingOperation* ProposeFinalStateBiasingOperation( const G4Track* track, const G4BiasingProcessInterface* callingProcess ) = 0; @@ -245,9 +245,9 @@ protected: protected: - // ----------------------------------- - // -- Delegation to an other operator: - // ----------------------------------- + // ---------------------------------- + // -- Delegation to another operator: + // ---------------------------------- // -- An operator may wish to select a sequence of operations already implemented in an // -- existing biasing operator. In this case, this operator can delegate its work to // -- the "delegated" one by calling DelegateTo( G4VBiasingOperation* delegated ); @@ -296,7 +296,7 @@ public: - // -- used by biasing process interface, or used by an other operator (not expected to be invoked differently than with these two cases): + // -- used by biasing process interface, or used by another operator (not expected to be invoked differently than with these two cases): public: G4VBiasingOperation* GetProposedOccurenceBiasingOperation( const G4Track* track, const G4BiasingProcessInterface* callingProcess ); G4VBiasingOperation* GetProposedFinalStateBiasingOperation( const G4Track* track, const G4BiasingProcessInterface* callingProcess ); diff --git a/source/processes/biasing/management/sources.cmake b/source/processes/biasing/management/sources.cmake index c48cdbeed9..ee384cd407 100644 --- a/source/processes/biasing/management/sources.cmake +++ b/source/processes/biasing/management/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4biasing_mgt # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,33 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/detector/include) -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/hits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/biasing/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4biasing_mgt HEADERS G4VProcessPlacer.hh diff --git a/source/processes/biasing/management/src/G4VBiasingOperator.cc b/source/processes/biasing/management/src/G4VBiasingOperator.cc index 328475c527..b7e853a8a9 100644 --- a/source/processes/biasing/management/src/G4VBiasingOperator.cc +++ b/source/processes/biasing/management/src/G4VBiasingOperator.cc @@ -66,7 +66,7 @@ void G4VBiasingOperator::AttachTo(const G4LogicalVolume* logical) G4ExceptionDescription ed; ed << "Biasing operator `" << GetName() << "' can not be attached to Logical volume `" - << logical->GetName() << "' which is already used by an other operator !" << G4endl; + << logical->GetName() << "' which is already used by another operator !" << G4endl; G4Exception("G4VBiasingOperator::AttachTo(...)", "BIAS.MNG.01", JustWarning, diff --git a/source/processes/cuts/sources.cmake b/source/processes/cuts/sources.cmake index cd05660934..90c9ad4dc0 100644 --- a/source/processes/cuts/sources.cmake +++ b/source/processes/cuts/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4cuts # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,22 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4cuts HEADERS G4MCCIndexConversionTable.hh diff --git a/source/processes/decay/sources.cmake b/source/processes/decay/sources.cmake index 3e8d4ff9c0..fe6635d2ac 100644 --- a/source/processes/decay/sources.cmake +++ b/source/processes/decay/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4decay # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,29 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/solids/CSG/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4decay HEADERS G4Decay.hh diff --git a/source/processes/electromagnetic/adjoint/include/G4AdjointProcessEquivalentToDirectProcess.hh b/source/processes/electromagnetic/adjoint/include/G4AdjointProcessEquivalentToDirectProcess.hh index f18bf22274..92e221fb03 100644 --- a/source/processes/electromagnetic/adjoint/include/G4AdjointProcessEquivalentToDirectProcess.hh +++ b/source/processes/electromagnetic/adjoint/include/G4AdjointProcessEquivalentToDirectProcess.hh @@ -150,7 +150,7 @@ class G4AdjointProcessEquivalentToDirectProcess : public G4VProcess // (return true if the Physics Table can be build by using file) // (return false if the process has no functionality or in case of failure) // File name should be defined by each process - // and the file should be placed under the directory specifed by the argument. + // and the file should be placed under the directory specified by the argument. //////////////////////////// virtual void StartTracking(G4Track*); virtual void EndTracking(); diff --git a/source/processes/electromagnetic/adjoint/sources.cmake b/source/processes/electromagnetic/adjoint/sources.cmake index db31d48508..46210b33c0 100644 --- a/source/processes/electromagnetic/adjoint/sources.cmake +++ b/source/processes/electromagnetic/adjoint/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4emadjoint # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,37 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/adjoint/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4emadjoint HEADERS G4AdjointAlongStepWeightCorrection.hh diff --git a/source/processes/electromagnetic/dna/History b/source/processes/electromagnetic/dna/History index c9257a25fc..a3dc66f609 100644 --- a/source/processes/electromagnetic/dna/History +++ b/source/processes/electromagnetic/dna/History @@ -14,6 +14,23 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ----------------------------------------------------------* +29-10-2020, G.Cosmo, tag emdna-V10-06-12 +- Fix thread contention on mutable data in G4DNAMolecularMaterial; might + help resolving observed crashes in MT runs. + Some code cleanup. + +27-10-2020, V.Ivanchenko, tag emdna-V10-06-11 +- G4DNAMolecularMaterial - removed commented lines +- History file fixed + +25-10-2020, V.Ivanchenko, tag emdna-V10-06-10 +- G4DNAMolecularMaterial - attempt to fix nightly problems + in chem6 example - do not delete instance of the singleton + +24-10-2020, I. Hrivnacova, tag emdna-V10-06-09 +- Added dependency on analysis/g4tools in GNUmakefile, + required after analysis update (analysis-V10-06-05) + 12-06-2020, S.Incerti, W.G.Shin, tag emdna-V10-06-08 - Fixed coverity warning @@ -1052,7 +1069,7 @@ when the asked item is not found * G4KDMap added * G4DNASmoluchowskiReactionModel : exception description enhanced * G4ITTrackingInteractivity : "Initialize()" method added for simplify - intialization of daughter classes + initialization of daughter classes * G4DNAChemistryManager : AddEmptyLineInOuputFile method added 12-11-2012 M.K tag emdna-V09-05-35 diff --git a/source/processes/electromagnetic/dna/management/include/G4ITReactionChange.hh b/source/processes/electromagnetic/dna/management/include/G4ITReactionChange.hh index b2f078b115..c2adb61aa1 100644 --- a/source/processes/electromagnetic/dna/management/include/G4ITReactionChange.hh +++ b/source/processes/electromagnetic/dna/management/include/G4ITReactionChange.hh @@ -75,7 +75,7 @@ public: // If both parents are not killed therefore // we can used the particle change // you will have to give the pointers - // of your particleChange while intializing + // of your particleChange while initializing // but it might tell you that energy is not // conserved for instance G4VParticleChange* GetParticleChange(const G4Track*); diff --git a/source/processes/electromagnetic/dna/management/include/G4ITTransportationManager.icc b/source/processes/electromagnetic/dna/management/include/G4ITTransportationManager.icc index ccb86ae2fb..20b82751fc 100644 --- a/source/processes/electromagnetic/dna/management/include/G4ITTransportationManager.icc +++ b/source/processes/electromagnetic/dna/management/include/G4ITTransportationManager.icc @@ -98,7 +98,7 @@ G4ITTransportationManager::GetActiveNavigatorsIterator() // ---------------------------------------------------------------------------- // GetNoWorlds() // -// Return the number of registerd worlds. +// Return the number of registered worlds. // inline size_t G4ITTransportationManager::GetNoWorlds() const diff --git a/source/processes/electromagnetic/dna/management/sources.cmake b/source/processes/electromagnetic/dna/management/sources.cmake index 3e53b9fb96..9e4f1c2b92 100644 --- a/source/processes/electromagnetic/dna/management/sources.cmake +++ b/source/processes/electromagnetic/dna/management/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4emlowenergy # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,29 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4emdna-man HEADERS AddClone_def.hh diff --git a/source/processes/electromagnetic/dna/management/src/G4ITModelProcessor.cc b/source/processes/electromagnetic/dna/management/src/G4ITModelProcessor.cc index 4ee88582af..4ebcfe1808 100644 --- a/source/processes/electromagnetic/dna/management/src/G4ITModelProcessor.cc +++ b/source/processes/electromagnetic/dna/management/src/G4ITModelProcessor.cc @@ -254,7 +254,7 @@ fVerbose " current global time." << " This may cause synchronization problem. If the process you" " are using required " - << "such feature please contact the developpers." << G4endl + << "such feature please contact the developers." << G4endl << "The global time in the step manager : " << G4BestUnit(fGlobalTime, "Time") << G4endl diff --git a/source/processes/electromagnetic/dna/models/include/G4DNAELSEPAElasticModel.hh b/source/processes/electromagnetic/dna/models/include/G4DNAELSEPAElasticModel.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/models/include/G4DNAIRT.hh b/source/processes/electromagnetic/dna/models/include/G4DNAIRT.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/models/include/G4DNAPTBAugerModel.hh b/source/processes/electromagnetic/dna/models/include/G4DNAPTBAugerModel.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/models/include/G4DNAPTBElasticModel.hh b/source/processes/electromagnetic/dna/models/include/G4DNAPTBElasticModel.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/models/include/G4DNAPTBExcitationModel.hh b/source/processes/electromagnetic/dna/models/include/G4DNAPTBExcitationModel.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/models/include/G4DNAPTBIonisationModel.hh b/source/processes/electromagnetic/dna/models/include/G4DNAPTBIonisationModel.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/models/include/G4DNAVacuumModel.hh b/source/processes/electromagnetic/dna/models/include/G4DNAVacuumModel.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/models/sources.cmake b/source/processes/electromagnetic/dna/models/sources.cmake index 21574d784f..d4aaf70f13 100644 --- a/source/processes/electromagnetic/dna/models/sources.cmake +++ b/source/processes/electromagnetic/dna/models/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4emlowenergy # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,38 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/molecules/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/molecules/types/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4emdna-models HEADERS G4DNABornAngle.hh @@ -84,7 +55,7 @@ GEANT4_DEFINE_MODULE(NAME G4emdna-models G4DNAPTBIonisationModel.hh G4DNAPTBElasticModel.hh G4DNAPTBExcitationModel.hh - G4DNAPTBAugerModel.hh + G4DNAPTBAugerModel.hh G4DNAScreenedRutherfordElasticModel.hh G4DNATransformElectronModel.hh G4DNAUeharaScreenedRutherfordElasticModel.hh diff --git a/source/processes/electromagnetic/dna/models/src/G4DNABornIonisationModel1.cc b/source/processes/electromagnetic/dna/models/src/G4DNABornIonisationModel1.cc index 7cf0a45069..74d158145c 100644 --- a/source/processes/electromagnetic/dna/models/src/G4DNABornIonisationModel1.cc +++ b/source/processes/electromagnetic/dna/models/src/G4DNABornIonisationModel1.cc @@ -1174,7 +1174,7 @@ G4double G4DNABornIonisationModel1::TransferedEnergy(G4ParticleDefinition* parti nrjTransf21, nrjTransf22); - // zeros are explicitely set + // zeros are explicitly set G4double value = Interpolate(valueK1, valueK2, k, 0., interpolatedvalue2); @@ -1289,7 +1289,7 @@ G4double G4DNABornIonisationModel1::TransferedEnergy(G4ParticleDefinition* parti nrjTransf21, nrjTransf22); - // zeros are explicitely set + // zeros are explicitly set G4double value = Interpolate(valueK1, valueK2, k, 0., interpolatedvalue2); diff --git a/source/processes/electromagnetic/dna/models/src/G4DNABornIonisationModel2.cc b/source/processes/electromagnetic/dna/models/src/G4DNABornIonisationModel2.cc index 1c0b7ef483..23e1ec841d 100644 --- a/source/processes/electromagnetic/dna/models/src/G4DNABornIonisationModel2.cc +++ b/source/processes/electromagnetic/dna/models/src/G4DNABornIonisationModel2.cc @@ -119,7 +119,7 @@ void G4DNABornIonisationModel2::Initialise(const G4ParticleDefinition* particle, "for particle " << particle->GetParticleName() << G4endl; - description << "G4DNABornIonisationModel2 was already initiliased " + description << "G4DNABornIonisationModel2 was already initialised " "for particle:" << fParticleDef->GetParticleName() << G4endl; G4Exception("G4DNABornIonisationModel2::Initialise","bornIonInit", FatalException,description); diff --git a/source/processes/electromagnetic/dna/models/src/G4DNACPA100IonisationModel.cc b/source/processes/electromagnetic/dna/models/src/G4DNACPA100IonisationModel.cc index 3f49102ab0..f8b87d0f02 100644 --- a/source/processes/electromagnetic/dna/models/src/G4DNACPA100IonisationModel.cc +++ b/source/processes/electromagnetic/dna/models/src/G4DNACPA100IonisationModel.cc @@ -979,7 +979,7 @@ G4double G4DNACPA100IonisationModel::RandomTransferedEnergy G4double interpolatedvalue2 = Interpolate(valuePROB21, valuePROB22, random, nrjTransf21, nrjTransf22); - // zero is explicitely set + // zero is explicitly set G4double value = Interpolate(valueK1, valueK2, k, 0., interpolatedvalue2); diff --git a/source/processes/electromagnetic/dna/models/src/G4DNAELSEPAElasticModel.cc b/source/processes/electromagnetic/dna/models/src/G4DNAELSEPAElasticModel.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/models/src/G4DNAEmfietzoglouIonisationModel.cc b/source/processes/electromagnetic/dna/models/src/G4DNAEmfietzoglouIonisationModel.cc index 6e2b33c5b7..5dac3ae2e8 100644 --- a/source/processes/electromagnetic/dna/models/src/G4DNAEmfietzoglouIonisationModel.cc +++ b/source/processes/electromagnetic/dna/models/src/G4DNAEmfietzoglouIonisationModel.cc @@ -934,7 +934,7 @@ G4double G4DNAEmfietzoglouIonisationModel::RandomTransferedEnergy(G4ParticleDefi G4double interpolatedvalue2 = Interpolate(valuePROB21, valuePROB22, random, nrjTransf21, nrjTransf22); - // zeros are explicitely set + // zeros are explicitly set G4double value = Interpolate(valueK1, valueK2, k, 0., interpolatedvalue2); diff --git a/source/processes/electromagnetic/dna/models/src/G4DNAIRT.cc b/source/processes/electromagnetic/dna/models/src/G4DNAIRT.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/models/src/G4DNAPTBAugerModel.cc b/source/processes/electromagnetic/dna/models/src/G4DNAPTBAugerModel.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/models/src/G4DNAPTBExcitationModel.cc b/source/processes/electromagnetic/dna/models/src/G4DNAPTBExcitationModel.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/models/src/G4DNAVacuumModel.cc b/source/processes/electromagnetic/dna/models/src/G4DNAVacuumModel.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/management/GNUmakefile b/source/processes/electromagnetic/dna/molecules/management/GNUmakefile old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/management/include/G4MolecularConfiguration.hh b/source/processes/electromagnetic/dna/molecules/management/include/G4MolecularConfiguration.hh index 2c3f5db224..e51ad9bb65 100644 --- a/source/processes/electromagnetic/dna/molecules/management/include/G4MolecularConfiguration.hh +++ b/source/processes/electromagnetic/dna/molecules/management/include/G4MolecularConfiguration.hh @@ -239,7 +239,7 @@ public: * For the time being, we will consider only one diffusion * coefficient for the all simulation => diffusion in one medium only * If the user needs to use the diffusion in different materials, - * she/he should contact the developpers/mainteners of this package + * she/he should contact the developers/maintainers of this package */ inline void SetDiffusionCoefficient(G4double); diff --git a/source/processes/electromagnetic/dna/molecules/management/include/G4MolecularDissociationChannel.hh b/source/processes/electromagnetic/dna/molecules/management/include/G4MolecularDissociationChannel.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/management/include/G4MolecularDissociationTable.hh b/source/processes/electromagnetic/dna/molecules/management/include/G4MolecularDissociationTable.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/management/include/G4Molecule.hh b/source/processes/electromagnetic/dna/molecules/management/include/G4Molecule.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/management/include/G4MoleculeDefinition.hh b/source/processes/electromagnetic/dna/molecules/management/include/G4MoleculeDefinition.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/management/include/G4VMolecularDissociationDisplacer.hh b/source/processes/electromagnetic/dna/molecules/management/include/G4VMolecularDissociationDisplacer.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/management/sources.cmake b/source/processes/electromagnetic/dna/molecules/management/sources.cmake index d119259a76..661faee97f 100644 --- a/source/processes/electromagnetic/dna/molecules/management/sources.cmake +++ b/source/processes/electromagnetic/dna/molecules/management/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4emlowenergy # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,24 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/management/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4emdna-molman HEADERS G4FakeParticleID.hh diff --git a/source/processes/electromagnetic/dna/molecules/management/src/G4MolecularDissociationChannel.cc b/source/processes/electromagnetic/dna/molecules/management/src/G4MolecularDissociationChannel.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/management/src/G4MolecularDissociationTable.cc b/source/processes/electromagnetic/dna/molecules/management/src/G4MolecularDissociationTable.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/management/src/G4Molecule.cc b/source/processes/electromagnetic/dna/molecules/management/src/G4Molecule.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/management/src/G4MoleculeDefinition.cc b/source/processes/electromagnetic/dna/molecules/management/src/G4MoleculeDefinition.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/management/src/G4VMolecularDissociationDisplacer.cc b/source/processes/electromagnetic/dna/molecules/management/src/G4VMolecularDissociationDisplacer.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/types/GNUmakefile b/source/processes/electromagnetic/dna/molecules/types/GNUmakefile old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/types/include/G4FakeMolecule.hh b/source/processes/electromagnetic/dna/molecules/types/include/G4FakeMolecule.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/types/include/G4HO2.hh b/source/processes/electromagnetic/dna/molecules/types/include/G4HO2.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/types/include/G4O2.hh b/source/processes/electromagnetic/dna/molecules/types/include/G4O2.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/types/include/G4O3.hh b/source/processes/electromagnetic/dna/molecules/types/include/G4O3.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/types/include/G4Oxygen.hh b/source/processes/electromagnetic/dna/molecules/types/include/G4Oxygen.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/types/sources.cmake b/source/processes/electromagnetic/dna/molecules/types/sources.cmake index 99e86ead57..9a23d59b51 100644 --- a/source/processes/electromagnetic/dna/molecules/types/sources.cmake +++ b/source/processes/electromagnetic/dna/molecules/types/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4emlowenergy # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,23 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/molecules/management/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4emdna-moltypes HEADERS G4Electron_aq.hh diff --git a/source/processes/electromagnetic/dna/molecules/types/src/G4FakeMolecule.cc b/source/processes/electromagnetic/dna/molecules/types/src/G4FakeMolecule.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/types/src/G4HO2.cc b/source/processes/electromagnetic/dna/molecules/types/src/G4HO2.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/types/src/G4O2.cc b/source/processes/electromagnetic/dna/molecules/types/src/G4O2.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/types/src/G4O3.cc b/source/processes/electromagnetic/dna/molecules/types/src/G4O3.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/molecules/types/src/G4Oxygen.cc b/source/processes/electromagnetic/dna/molecules/types/src/G4Oxygen.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/processes/include/G4DNAMolecularDissociation.hh b/source/processes/electromagnetic/dna/processes/include/G4DNAMolecularDissociation.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/processes/include/G4DNAWaterDissociationDisplacer.hh b/source/processes/electromagnetic/dna/processes/include/G4DNAWaterDissociationDisplacer.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/processes/sources.cmake b/source/processes/electromagnetic/dna/processes/sources.cmake index e8a26ea70e..b968150cdd 100644 --- a/source/processes/electromagnetic/dna/processes/sources.cmake +++ b/source/processes/electromagnetic/dna/processes/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4emlowenergy # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,41 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/models/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/molecules/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/molecules/types/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4emdna-processes HEADERS G4DNAAttachment.hh diff --git a/source/processes/electromagnetic/dna/processes/src/G4DNAElastic.cc b/source/processes/electromagnetic/dna/processes/src/G4DNAElastic.cc index 990731acf4..a6f3c4fb6a 100644 --- a/source/processes/electromagnetic/dna/processes/src/G4DNAElastic.cc +++ b/source/processes/electromagnetic/dna/processes/src/G4DNAElastic.cc @@ -93,7 +93,7 @@ void G4DNAElastic::InitialiseProcess(const G4ParticleDefinition* p) AddEmModel(1, EmModel()); } - // "alpha" must be explicitely used, not alpha++ + // "alpha" must be explicitly used, not alpha++ else if(name == "helium" || name == "alpha" || name == "alpha+") { if(!EmModel()) diff --git a/source/processes/electromagnetic/dna/processes/src/G4DNAMolecularDissociation.cc b/source/processes/electromagnetic/dna/processes/src/G4DNAMolecularDissociation.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/processes/src/G4DNAWaterDissociationDisplacer.cc b/source/processes/electromagnetic/dna/processes/src/G4DNAWaterDissociationDisplacer.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/utils/GNUmakefile b/source/processes/electromagnetic/dna/utils/GNUmakefile index bf8c2e8255..64c13fb60b 100644 --- a/source/processes/electromagnetic/dna/utils/GNUmakefile +++ b/source/processes/electromagnetic/dna/utils/GNUmakefile @@ -33,6 +33,7 @@ CPPFLAGS += -I$(G4BASE)/global/management/include \ -I$(G4BASE)/processes/electromagnetic/dna/molecules/management/include \ -I$(G4BASE)/processes/electromagnetic/dna/molecules/types/include \ -I$(G4BASE)/processes/electromagnetic/dna/management/include \ + -I$(G4BASE)/analysis/g4tools/include \ -I$(G4BASE)/analysis/management/include include $(G4INSTALL)/config/common.gmk diff --git a/source/processes/electromagnetic/dna/utils/include/G4DNAMolecularMaterial.hh b/source/processes/electromagnetic/dna/utils/include/G4DNAMolecularMaterial.hh index 7db51e9222..9e4da05514 100644 --- a/source/processes/electromagnetic/dna/utils/include/G4DNAMolecularMaterial.hh +++ b/source/processes/electromagnetic/dna/utils/include/G4DNAMolecularMaterial.hh @@ -65,7 +65,7 @@ struct CompareMaterial bool operator()(const G4Material* mat1, const G4Material* mat2) const; }; -typedef std::map ComponentMap; +typedef std::map ComponentMap; /** * \class G4DNAMolecularMaterial @@ -96,7 +96,6 @@ class G4DNAMolecularMaterial: public G4VStateDependent { public: static G4DNAMolecularMaterial* Instance(); - static void DeleteInstance(); void Initialize(); void Clear(); @@ -105,7 +104,7 @@ public: //---------------------------------------------------------------------------- /** - * \fn const std::vector* \ + * \fn const std::vector* \ * GetDensityTableFor(const G4Material* searchedMaterial) const * \brief Retrieve a table of volumetric mass densities (mass per unit volume) * in the G4 unit system for chosen material. @@ -120,10 +119,10 @@ public: * indexed on the (parent) material index. * */ - const std::vector* GetDensityTableFor(const G4Material*) const; + const std::vector* GetDensityTableFor(const G4Material*) const; /** - * \fn const std::vector* \ + * \fn const std::vector* \ * GetNumMolPerVolTableFor(const G4Material* searchedMaterial) const * \brief Retrieve a table of molecular densities (number of molecules per * unit volume) in the G4 unit system for chosen material. @@ -137,7 +136,7 @@ public: * Pointer to a table of molecular densities for the \p searchedMaterial * indexed on the (parent) material index. */ - const std::vector* GetNumMolPerVolTableFor(const G4Material*) const; + const std::vector* GetNumMolPerVolTableFor(const G4Material*) const; inline const std::vector* GetMassFractionTable() const{ return fpCompFractionTable; @@ -233,9 +232,9 @@ protected: G4double fraction); void SearchMolecularMaterial(G4Material* parentMaterial, G4Material* material, - double currentFraction); + G4double currentFraction); - void AddMaterial(const G4Material*, double fraction); + void AddMaterial(const G4Material*, G4double fraction); void PrintNotAMolecularMaterial(const char* methodName, const G4Material* lookForMaterial) const; @@ -245,9 +244,9 @@ protected: std::vector* fpCompDensityTable; std::vector* fpCompNumMolPerVolTable; - mutable std::map*, CompareMaterial> + mutable std::map*, CompareMaterial> fAskedDensityTable; - mutable std::map*, CompareMaterial> + mutable std::map*, CompareMaterial> fAskedNumPerVolTable; mutable std::map fWarningPrinted; diff --git a/source/processes/electromagnetic/dna/utils/include/G4ErrorFunction.hh b/source/processes/electromagnetic/dna/utils/include/G4ErrorFunction.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/dna/utils/sources.cmake b/source/processes/electromagnetic/dna/utils/sources.cmake index 1f02b8400d..26a2ffaff1 100644 --- a/source/processes/electromagnetic/dna/utils/sources.cmake +++ b/source/processes/electromagnetic/dna/utils/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4emlowenergy # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,39 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/molecules/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/dna/molecules/types/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - -include_directories(${CMAKE_SOURCE_DIR}/source/analysis/management/include) # for physchemIO - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4emdna-utils HEADERS G4DNAChemistryManager.hh diff --git a/source/processes/electromagnetic/dna/utils/src/G4DNAMolecularMaterial.cc b/source/processes/electromagnetic/dna/utils/src/G4DNAMolecularMaterial.cc index abcacfaa9f..8b96d8fa0b 100644 --- a/source/processes/electromagnetic/dna/utils/src/G4DNAMolecularMaterial.cc +++ b/source/processes/electromagnetic/dna/utils/src/G4DNAMolecularMaterial.cc @@ -27,9 +27,10 @@ // Author: Mathieu Karamitros // +#include + #include "G4DNAMolecularMaterial.hh" #include "G4Material.hh" -#include #include "G4StateManager.hh" #include "G4Threading.hh" #include "G4AutoLock.hh" @@ -38,35 +39,39 @@ using namespace std; -G4DNAMolecularMaterial* G4DNAMolecularMaterial::fInstance(0); -G4Mutex aMutex = G4MUTEX_INITIALIZER; +G4DNAMolecularMaterial* G4DNAMolecularMaterial::fInstance(nullptr); + +namespace +{ + G4Mutex aMutex = G4MUTEX_INITIALIZER; +} //------------------------------------------------------------------------------ bool CompareMaterial::operator()(const G4Material* mat1, const G4Material* mat2) const { - if (mat1 == 0 && mat2 == 0) return false; //(mat1 == mat2) - if (mat1 == 0) return true; // mat1 < mat2 - if (mat2 == 0) return false; //mat2 < mat1 + if (mat1 == nullptr && mat2 == nullptr) return false; //(mat1 == mat2) + if (mat1 == nullptr) return true; // mat1 < mat2 + if (mat2 == nullptr) return false; //mat2 < mat1 const G4Material* baseMat1 = mat1->GetBaseMaterial(); const G4Material* baseMat2 = mat2->GetBaseMaterial(); - if ((baseMat1 || baseMat2) == 0){ + if (((baseMat1 != nullptr) || (baseMat2 != nullptr)) == false){ // None of the materials derives from a base material return mat1 < mat2; } - else if (baseMat1 && baseMat2){ + else if ((baseMat1 != nullptr) && (baseMat2 != nullptr)){ // Both materials derive from a base material return baseMat1 < baseMat2; } - else if (baseMat1 && (baseMat2 == 0)){ + else if ((baseMat1 != nullptr) && (baseMat2 == nullptr)){ // Only the material 1 derives from a base material return baseMat1 < mat2; } - // only case baseMat1==0 && baseMat2 remains + // only case baseMat1==nullptr && baseMat2 remains return mat1 < baseMat2; } @@ -74,77 +79,67 @@ bool CompareMaterial::operator()(const G4Material* mat1, G4DNAMolecularMaterial* G4DNAMolecularMaterial::Instance() { - if (!fInstance) new G4DNAMolecularMaterial(); + if (!fInstance) fInstance = new G4DNAMolecularMaterial(); return fInstance; } //------------------------------------------------------------------------------ -void G4DNAMolecularMaterial::DeleteInstance() -{ - if (fInstance){ - delete fInstance; - fInstance = 0; - } -} - -//------------------------------------------------------------------------------ - void G4DNAMolecularMaterial::Create() { - fpCompFractionTable = 0; - fpCompDensityTable = 0; - fpCompNumMolPerVolTable = 0; + fpCompFractionTable = nullptr; + fpCompDensityTable = nullptr; + fpCompNumMolPerVolTable = nullptr; fIsInitialized = false; fNMaterials = 0; - fInstance = this; } //------------------------------------------------------------------------------ void G4DNAMolecularMaterial::Clear() { - if (fpCompFractionTable){ + G4AutoLock l2(&aMutex); + if (fpCompFractionTable != nullptr){ fpCompFractionTable->clear(); delete fpCompFractionTable; - fpCompFractionTable = 0; + fpCompFractionTable = nullptr; } - if (fpCompDensityTable){ + if (fpCompDensityTable != nullptr){ fpCompDensityTable->clear(); delete fpCompDensityTable; - fpCompDensityTable = 0; + fpCompDensityTable = nullptr; } - if (fpCompNumMolPerVolTable){ + if (fpCompNumMolPerVolTable != nullptr){ fpCompNumMolPerVolTable->clear(); delete fpCompNumMolPerVolTable; - fpCompNumMolPerVolTable = 0; + fpCompNumMolPerVolTable = nullptr; } - map*, CompareMaterial>::iterator it; + std::map*, CompareMaterial>::iterator it; - for (it = fAskedDensityTable.begin(); it != fAskedDensityTable.end(); it++){ - if (it->second){ + for (it = fAskedDensityTable.begin(); it != fAskedDensityTable.end(); ++it){ + if (it->second != nullptr){ delete it->second; - it->second = 0; + it->second = nullptr; } } - for (it = fAskedNumPerVolTable.begin(); it != fAskedNumPerVolTable.end(); - it++){ - if (it->second){ + for (it = fAskedNumPerVolTable.begin(); it != fAskedNumPerVolTable.end(); ++it){ + if (it->second != nullptr){ delete it->second; - it->second = 0; + it->second = nullptr; } } + l2.unlock(); } + //------------------------------------------------------------------------------ G4DNAMolecularMaterial::G4DNAMolecularMaterial() : G4VStateDependent() { Create(); - fInstance = this; } //------------------------------------------------------------------------------ @@ -155,12 +150,6 @@ G4bool G4DNAMolecularMaterial::Notify(G4ApplicationState requestedState) ->GetPreviousState() == G4State_PreInit){ Initialize(); } - else if (requestedState == G4State_Quit){ -// G4cout << "G4DNAMolecularMaterial::Notify ---> received G4State_Quit" -// << G4endl; - Clear(); - //DeleteInstance(); - } return true; } @@ -187,17 +176,13 @@ G4DNAMolecularMaterial::operator=(const G4DNAMolecularMaterial& rhs) G4DNAMolecularMaterial::~G4DNAMolecularMaterial() { -// G4cout << "Deleting G4DNAMolecularMaterial" << G4endl; Clear(); - fInstance = 0; - //assert(G4StateManager::GetStateManager()->DeregisterDependent(this) == true); } //------------------------------------------------------------------------------ void G4DNAMolecularMaterial::Initialize() { - G4AutoLock l(&aMutex); if (fIsInitialized){ return; } @@ -208,21 +193,21 @@ void G4DNAMolecularMaterial::Initialize() // This is to prevent segment fault if materials are created later on // Actually this creation should not be done - if (fpCompFractionTable == 0){ + G4AutoLock l1(&aMutex); + if (fpCompFractionTable == nullptr){ fpCompFractionTable = new vector(materialTable->size()); } - G4Material* mat(0); + G4Material* mat(nullptr); - for (size_t i = 0; i < fNMaterials; i++){ + for (std::size_t i = 0; i < fNMaterials; ++i){ mat = materialTable->at(i); SearchMolecularMaterial(mat, mat, 1); - - mat = 0; } InitializeDensity(); InitializeNumMolPerVol(); + l1.unlock(); fIsInitialized = true; } @@ -237,23 +222,23 @@ void G4DNAMolecularMaterial::InitializeDensity() G4Material::GetMaterialTable()->size()); G4Material* parentMat; - const G4Material* compMat(0); - double massFraction = -1; - double parentDensity = -1; + const G4Material* compMat(nullptr); + G4double massFraction = -1; + G4double parentDensity = -1; - for (size_t i = 0; i < fNMaterials; i++){ + for (std::size_t i = 0; i < fNMaterials; ++i){ parentMat = materialTable->at(i); ComponentMap& massFractionComp = (*fpCompFractionTable)[i]; ComponentMap& densityComp = (*fpCompDensityTable)[i]; parentDensity = parentMat->GetDensity(); - for (ComponentMap::iterator it = massFractionComp.begin(); - it != massFractionComp.end(); it++){ + for (auto it = massFractionComp.cbegin(); + it != massFractionComp.cend(); ++it){ compMat = it->first; massFraction = it->second; densityComp[compMat] = massFraction * parentDensity; - compMat = 0; + compMat = nullptr; massFraction = -1; } } @@ -275,19 +260,19 @@ void G4DNAMolecularMaterial::InitializeNumMolPerVol() if (fpCompDensityTable){ fpCompNumMolPerVolTable = new vector(fNMaterials); - const G4Material* compMat(0); + const G4Material* compMat(nullptr); - for (size_t i = 0; i < fNMaterials; i++){ + for (std::size_t i = 0; i < fNMaterials; ++i){ ComponentMap& massFractionComp = (*fpCompFractionTable)[i]; ComponentMap& densityComp = (*fpCompDensityTable)[i]; ComponentMap& numMolPerVol = (*fpCompNumMolPerVolTable)[i]; - for (ComponentMap::iterator it = massFractionComp.begin(); - it != massFractionComp.end(); it++){ + for (auto it = massFractionComp.cbegin(); + it != massFractionComp.cend(); ++it){ compMat = it->first; numMolPerVol[compMat] = densityComp[compMat] / compMat->GetMassOfMolecule(); - compMat = 0; + compMat = nullptr; } } } @@ -316,9 +301,9 @@ G4DNAMolecularMaterial::RecordMolecularMaterial(G4Material* parentMaterial, return; } - ComponentMap::iterator it = matComponent.find(molecularMaterial); + auto it = matComponent.find(molecularMaterial); - if (it == matComponent.end()){ + if (it == matComponent.cend()){ matComponent[molecularMaterial] = fraction; } else{ @@ -331,7 +316,7 @@ G4DNAMolecularMaterial::RecordMolecularMaterial(G4Material* parentMaterial, void G4DNAMolecularMaterial::SearchMolecularMaterial(G4Material* parentMaterial, G4Material* material, - double currentFraction) + G4double currentFraction) { if (material->GetMassOfMolecule() != 0.0){ // is a molecular material RecordMolecularMaterial(parentMaterial, material, currentFraction); @@ -341,9 +326,9 @@ void G4DNAMolecularMaterial::SearchMolecularMaterial(G4Material* parentMaterial, G4Material* compMat(nullptr); G4double fraction = -1.; std::map matComponent = material->GetMatComponents(); - std::map::iterator it = matComponent.begin(); + auto it = matComponent.cbegin(); - for (; it != matComponent.end(); it++){ + for (; it != matComponent.cend(); ++it){ compMat = it->first; fraction = it->second; if (compMat->GetMassOfMolecule() == 0.0){ // is not a molecular material @@ -359,7 +344,7 @@ void G4DNAMolecularMaterial::SearchMolecularMaterial(G4Material* parentMaterial, //------------------------------------------------------------------------------ -const std::vector* +const std::vector* G4DNAMolecularMaterial:: GetDensityTableFor(const G4Material* lookForMaterial) const { @@ -390,28 +375,26 @@ GetDensityTableFor(const G4Material* lookForMaterial) const } } - std::map*, CompareMaterial>:: - const_iterator it_askedDensityTable = - fAskedDensityTable.find(lookForMaterial); + auto it_askedDensityTable = fAskedDensityTable.find(lookForMaterial); - if (it_askedDensityTable != fAskedDensityTable.end()){ + if (it_askedDensityTable != fAskedDensityTable.cend()){ return it_askedDensityTable->second; } const G4MaterialTable* materialTable = G4Material::GetMaterialTable(); - std::vector* output = new std::vector(materialTable->size()); + std::vector* output = new std::vector(materialTable->size()); ComponentMap::const_iterator it; G4bool materialWasNotFound = true; - for (size_t i = 0; i < fNMaterials; i++){ + for (std::size_t i = 0; i < fNMaterials; ++i){ ComponentMap& densityTable = (*fpCompDensityTable)[i]; it = densityTable.find(lookForMaterial); - if (it == densityTable.end()){ + if (it == densityTable.cend()){ (*output)[i] = 0.0; } else{ @@ -432,10 +415,10 @@ GetDensityTableFor(const G4Material* lookForMaterial) const //------------------------------------------------------------------------------ -const std::vector* G4DNAMolecularMaterial::GetNumMolPerVolTableFor( +const std::vector* G4DNAMolecularMaterial::GetNumMolPerVolTableFor( const G4Material* lookForMaterial) const { - if(lookForMaterial==0) return nullptr; + if(lookForMaterial==nullptr) return nullptr; if (!fpCompNumMolPerVolTable){ if (fIsInitialized){ @@ -464,27 +447,25 @@ const std::vector* G4DNAMolecularMaterial::GetNumMolPerVolTableFor( } } - std::map*, CompareMaterial>:: - const_iterator it_askedNumMolPerVolTable = - fAskedNumPerVolTable.find(lookForMaterial); - if (it_askedNumMolPerVolTable != fAskedNumPerVolTable.end()){ + auto it_askedNumMolPerVolTable = fAskedNumPerVolTable.find(lookForMaterial); + if (it_askedNumMolPerVolTable != fAskedNumPerVolTable.cend()){ return it_askedNumMolPerVolTable->second; } const G4MaterialTable* materialTable = G4Material::GetMaterialTable(); - std::vector* output = new std::vector(materialTable->size()); + std::vector* output = new std::vector(materialTable->size()); ComponentMap::const_iterator it; G4bool materialWasNotFound = true; - for (size_t i = 0; i < fNMaterials; i++){ + for (std::size_t i = 0; i < fNMaterials; ++i){ ComponentMap& densityTable = (*fpCompNumMolPerVolTable)[i]; it = densityTable.find(lookForMaterial); - if (it == densityTable.end()){ + if (it == densityTable.cend()){ (*output)[i] = 0.0; } else{ @@ -509,10 +490,9 @@ void G4DNAMolecularMaterial:: PrintNotAMolecularMaterial(const char* methodName, const G4Material* lookForMaterial) const { - std::map::iterator it = - fWarningPrinted.find(lookForMaterial); + auto it = fWarningPrinted.find(lookForMaterial); - if (it == fWarningPrinted.end()){ + if (it == fWarningPrinted.cend()){ G4ExceptionDescription exceptionDescription; exceptionDescription << "The material " << lookForMaterial->GetName() << " is not defined as a molecular material." @@ -544,7 +524,7 @@ GetMolecularConfiguration(const G4Material* material) const { int material_id = material->GetIndex(); auto it = fMaterialToMolecularConf.find(material_id); - if(it == fMaterialToMolecularConf.end()) return 0; + if(it == fMaterialToMolecularConf.cend()) return nullptr; return it->second; } @@ -555,7 +535,7 @@ G4DNAMolecularMaterial:: SetMolecularConfiguration(const G4Material* material, G4MolecularConfiguration* molConf) { - assert(material != 0); + assert(material != nullptr); int material_id = material->GetIndex(); fMaterialToMolecularConf[material_id] = molConf; } @@ -566,7 +546,7 @@ void G4DNAMolecularMaterial::SetMolecularConfiguration(const G4Material* material, const G4String& molUserID) { - assert(material != 0); + assert(material != nullptr); int material_id = material->GetIndex(); fMaterialToMolecularConf[material_id] = G4MoleculeTable::Instance()->GetConfiguration(molUserID, true); @@ -580,7 +560,7 @@ G4DNAMolecularMaterial::SetMolecularConfiguration(const G4String& materialName, { G4Material* material = G4Material::GetMaterial(materialName); - if(material == 0){ + if(material == nullptr){ G4cout<< "Material " << materialName << " was not found and therefore won't be linked to " << molUserID << G4endl; @@ -600,7 +580,7 @@ GetNumMoleculePerVolumeUnitForMaterial(const G4Material*) FatalException,"Use standard method: GetNumMolPerVolTableFor" " at the run initialization to retrieve a read-only table used" " during stepping. The method is thread-safe."); - return 0; + return 0.; } //------------------------------------------------------------------------------ @@ -616,5 +596,5 @@ GetNumMolPerVolForComponentInComposite(const G4Material*, FatalException,"Use standard method: GetNumMolPerVolTableFor" " at the run initialization to retrieve a read-only table used" " during stepping. The method is thread-safe."); - return 0; + return 0.; } diff --git a/source/processes/electromagnetic/dna/utils/src/G4ErrorFunction.cc b/source/processes/electromagnetic/dna/utils/src/G4ErrorFunction.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/highenergy/History b/source/processes/electromagnetic/highenergy/History index e38f36db13..99fabea1ba 100644 --- a/source/processes/electromagnetic/highenergy/History +++ b/source/processes/electromagnetic/highenergy/History @@ -16,6 +16,16 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +29 October 2020: V.Ivantchenko (emhighenergy-V10-06-02) +- G4hPairProductionModel, G4hBremsstrahlungModel, G4hPairProduction, + G4hBremsstrahlung - added definition of the energy threshold + for creation of a vertex, when energy transfer is above the + threshold (CMS request) + +01 September 2020: G.Amadio (emhighenergy-V10-06-01) +- G4hPairProductionModel - inherit ComputeDMicroscopicCrossSection + from G4MuPairProductionModel to avoid code duplication + 30 October 2019: I.Semeniouk (emhighenergy-V10-05-06) - G4GammaConversionToMuons - initialisation of the 5D model cuts size diff --git a/source/processes/electromagnetic/highenergy/include/G4hBremsstrahlung.hh b/source/processes/electromagnetic/highenergy/include/G4hBremsstrahlung.hh index 8bb3e3763f..315bb0bca8 100644 --- a/source/processes/electromagnetic/highenergy/include/G4hBremsstrahlung.hh +++ b/source/processes/electromagnetic/highenergy/include/G4hBremsstrahlung.hh @@ -64,23 +64,21 @@ public: explicit G4hBremsstrahlung(const G4String& processName = "hBrems"); - virtual ~G4hBremsstrahlung(); + ~G4hBremsstrahlung() override; - virtual G4bool IsApplicable(const G4ParticleDefinition& p) override; + G4bool IsApplicable(const G4ParticleDefinition& p) override; // print description in html - virtual void ProcessDescription(std::ostream&) const override; - -protected: - - virtual void InitialiseEnergyLossProcess(const G4ParticleDefinition*, - const G4ParticleDefinition*) override; - -private: + void ProcessDescription(std::ostream&) const override; G4hBremsstrahlung & operator=(const G4hBremsstrahlung &right) = delete; G4hBremsstrahlung(const G4hBremsstrahlung&) = delete; +protected: + + void InitialiseEnergyLossProcess(const G4ParticleDefinition*, + const G4ParticleDefinition*) override; + }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... diff --git a/source/processes/electromagnetic/highenergy/include/G4hBremsstrahlungModel.hh b/source/processes/electromagnetic/highenergy/include/G4hBremsstrahlungModel.hh index 7bc3a85731..d51c5bd1c0 100644 --- a/source/processes/electromagnetic/highenergy/include/G4hBremsstrahlungModel.hh +++ b/source/processes/electromagnetic/highenergy/include/G4hBremsstrahlungModel.hh @@ -36,9 +36,6 @@ // Creation date: 28.02.2008 // // Modifications: -// -// - // // Class Description: // @@ -58,22 +55,19 @@ class G4hBremsstrahlungModel : public G4MuBremsstrahlungModel public: explicit G4hBremsstrahlungModel(const G4ParticleDefinition* p = nullptr, - const G4String& nam = "hBrem"); + const G4String& nam = "hBrem"); - virtual ~G4hBremsstrahlungModel(); - -protected: - - virtual G4double ComputeDMicroscopicCrossSection(G4double tkin, - G4double Z, - G4double gammaEnergy) override; -private: + ~G4hBremsstrahlungModel() override; // hide assignment operator G4hBremsstrahlungModel & operator=(const G4hBremsstrahlungModel &right) = delete; G4hBremsstrahlungModel(const G4hBremsstrahlungModel&) = delete; +protected: + + G4double ComputeDMicroscopicCrossSection(G4double tkin, G4double Z, + G4double gammaEnergy) override; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/source/processes/electromagnetic/highenergy/include/G4hPairProduction.hh b/source/processes/electromagnetic/highenergy/include/G4hPairProduction.hh index bedd3893a3..c8f57b59f3 100644 --- a/source/processes/electromagnetic/highenergy/include/G4hPairProduction.hh +++ b/source/processes/electromagnetic/highenergy/include/G4hPairProduction.hh @@ -61,23 +61,21 @@ public: explicit G4hPairProduction(const G4String& processName = "hPairProd"); - virtual ~G4hPairProduction(); + ~G4hPairProduction() override; - virtual G4bool IsApplicable(const G4ParticleDefinition& p) override; + G4bool IsApplicable(const G4ParticleDefinition& p) override; // print description in html - virtual void ProcessDescription(std::ostream&) const override; + void ProcessDescription(std::ostream&) const override; + + G4hPairProduction & operator=(const G4hPairProduction &right) = delete; + G4hPairProduction(const G4hPairProduction&) = delete; protected: virtual void InitialiseEnergyLossProcess(const G4ParticleDefinition*, const G4ParticleDefinition*) override; -private: - - G4hPairProduction & operator=(const G4hPairProduction &right) = delete; - G4hPairProduction(const G4hPairProduction&) = delete; - }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... diff --git a/source/processes/electromagnetic/highenergy/include/G4hPairProductionModel.hh b/source/processes/electromagnetic/highenergy/include/G4hPairProductionModel.hh index 28848d437b..509e24571b 100644 --- a/source/processes/electromagnetic/highenergy/include/G4hPairProductionModel.hh +++ b/source/processes/electromagnetic/highenergy/include/G4hPairProductionModel.hh @@ -60,14 +60,7 @@ public: explicit G4hPairProductionModel(const G4ParticleDefinition* p = nullptr, const G4String& nam = "hPairProd"); - virtual ~G4hPairProductionModel(); - -protected: - - virtual G4double ComputeDMicroscopicCrossSection(G4double tkin, - G4double Z, - G4double pairEnergy) override; -private: + ~G4hPairProductionModel() override; // hide assignment operator G4hPairProductionModel & diff --git a/source/processes/electromagnetic/highenergy/sources.cmake b/source/processes/electromagnetic/highenergy/sources.cmake index afb67fc018..6e8f96b13d 100644 --- a/source/processes/electromagnetic/highenergy/sources.cmake +++ b/source/processes/electromagnetic/highenergy/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4emhighenergy # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,35 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/muons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4emhighenergy HEADERS G4AnnihiToMuPair.hh diff --git a/source/processes/electromagnetic/highenergy/src/G4hBremsstrahlung.cc b/source/processes/electromagnetic/highenergy/src/G4hBremsstrahlung.cc index e5ad26a3d4..a406bd9f6a 100644 --- a/source/processes/electromagnetic/highenergy/src/G4hBremsstrahlung.cc +++ b/source/processes/electromagnetic/highenergy/src/G4hBremsstrahlung.cc @@ -83,6 +83,7 @@ void G4hBremsstrahlung::InitialiseEnergyLossProcess( G4EmParameters* param = G4EmParameters::Instance(); EmModel()->SetLowEnergyLimit(param->MinKinEnergy()); EmModel()->SetHighEnergyLimit(param->MaxKinEnergy()); + EmModel()->SetSecondaryThreshold(param->MuHadBremsstrahlungTh()); AddEmModel(1, EmModel(), fm); } } diff --git a/source/processes/electromagnetic/highenergy/src/G4hBremsstrahlungModel.cc b/source/processes/electromagnetic/highenergy/src/G4hBremsstrahlungModel.cc index bfea6263ff..2801bbe280 100644 --- a/source/processes/electromagnetic/highenergy/src/G4hBremsstrahlungModel.cc +++ b/source/processes/electromagnetic/highenergy/src/G4hBremsstrahlungModel.cc @@ -74,28 +74,26 @@ G4double G4hBremsstrahlungModel::ComputeDMicroscopicCrossSection( { G4double dxsection = 0.; - if( gammaEnergy > tkin) return dxsection ; + if(gammaEnergy > tkin) return dxsection; // G4cout << "G4hBremsstrahlungModel m= " << mass // << " " << particle->GetParticleName() << G4endl; G4double E = tkin + mass ; G4double v = gammaEnergy/E ; - G4double delta = 0.5*mass*mass*v/(E-gammaEnergy) ; + G4double delta = 0.5*mass*mass*v/(E-gammaEnergy); G4double rab0=delta*sqrte ; - G4int iz = G4int(Z); - if(iz < 1) { iz = 1; } + G4int iz = std::max(G4lrint(Z), 1); G4double z13 = 1.0/nist->GetZ13(iz); G4double dn = mass*nist->GetA27(iz)/(70.*MeV); - G4double b = btf; - if(1 == iz) b = bh; + G4double b = (1 == iz) ? bh : btf; // nucleus contribution logarithm G4double rab1=b*z13; G4double fn=G4Log(rab1/(dn*(electron_mass_c2+rab0*rab1))* (mass+delta*(dn*sqrte-2.))) ; - if(fn <0.) fn = 0. ; + fn = std::max(fn, 0.0); G4double x = 1.0 - v; if(particle->GetPDGSpin() != 0) { x += 0.75*v*v; } diff --git a/source/processes/electromagnetic/highenergy/src/G4hPairProduction.cc b/source/processes/electromagnetic/highenergy/src/G4hPairProduction.cc index 444015ff11..ab7f2bc73a 100644 --- a/source/processes/electromagnetic/highenergy/src/G4hPairProduction.cc +++ b/source/processes/electromagnetic/highenergy/src/G4hPairProduction.cc @@ -87,6 +87,7 @@ void G4hPairProduction::InitialiseEnergyLossProcess( G4EmParameters* param = G4EmParameters::Instance(); EmModel()->SetLowEnergyLimit(param->MinKinEnergy()); EmModel()->SetHighEnergyLimit(param->MaxKinEnergy()); + EmModel()->SetSecondaryThreshold(param->MuHadBremsstrahlungTh()); AddEmModel(1, EmModel(), fm); } } diff --git a/source/processes/electromagnetic/highenergy/src/G4hPairProductionModel.cc b/source/processes/electromagnetic/highenergy/src/G4hPairProductionModel.cc index ba34d79f02..67ebd67e7c 100644 --- a/source/processes/electromagnetic/highenergy/src/G4hPairProductionModel.cc +++ b/source/processes/electromagnetic/highenergy/src/G4hPairProductionModel.cc @@ -48,11 +48,6 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... #include "G4hPairProductionModel.hh" -#include "G4PhysicalConstants.hh" -#include "G4Log.hh" -#include "G4Exp.hh" - -using namespace std; G4hPairProductionModel::G4hPairProductionModel(const G4ParticleDefinition* p, const G4String& nam) @@ -65,114 +60,3 @@ G4hPairProductionModel::~G4hPairProductionModel() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -G4double G4hPairProductionModel::ComputeDMicroscopicCrossSection( - G4double tkin, - G4double Z, - G4double pairEnergy) -// differential cross section -{ - static const G4double bbbtf= 183. ; - static const G4double bbbh = 202.4 ; - static const G4double g1tf = 1.95e-5 ; - static const G4double g2tf = 5.3e-5 ; - static const G4double g1h = 4.4e-5 ; - static const G4double g2h = 4.8e-5 ; - - G4double totalEnergy = tkin + particleMass; - G4double residEnergy = totalEnergy - pairEnergy; - G4double massratio = particleMass/electron_mass_c2 ; - G4double massratio2 = massratio*massratio ; - G4double cross = 0.; - - G4double c3 = 0.75*sqrte*particleMass; - if (residEnergy <= c3*z13) { return cross; } - - G4double c7 = 4.*CLHEP::electron_mass_c2; - G4double c8 = 6.*particleMass*particleMass; - G4double alf = c7/pairEnergy; - G4double a3 = 1. - alf; - if (a3 <= 0.) { return cross; } - - // zeta calculation - G4double bbb,g1,g2; - if( Z < 1.5 ) { bbb = bbbh ; g1 = g1h ; g2 = g2h ; } - else { bbb = bbbtf; g1 = g1tf; g2 = g2tf; } - - G4double zeta = 0.; - G4double zeta1 = - 0.073*G4Log(totalEnergy/(particleMass+g1*z23*totalEnergy))-0.26; - if ( zeta1 > 0.) - { - G4double zeta2 = - 0.058*G4Log(totalEnergy/(particleMass+g2*z13*totalEnergy))-0.14; - zeta = zeta1/zeta2 ; - } - - G4double z2 = Z*(Z+zeta); - G4double screen0 = 2.*electron_mass_c2*sqrte*bbb/(z13*pairEnergy); - G4double a0 = totalEnergy*residEnergy; - G4double a1 = pairEnergy*pairEnergy/a0; - G4double bet = 0.5*a1; - G4double xi0 = 0.25*massratio2*a1; - G4double del = c8/a0; - - G4double rta3 = sqrt(a3); - G4double tmnexp = alf/(1. + rta3) + del*rta3; - if(tmnexp >= 1.0) { return cross; } - - G4double tmn = G4Log(tmnexp); - G4double sum = 0.; - - // Gaussian integration in ln(1-ro) ( with 8 points) - for (G4int i=0; i<8; i++) - { - G4double a4 = G4Exp(tmn*xgi[i]); // a4 = (1.-asymmetry) - G4double a5 = a4*(2.-a4) ; - G4double a6 = 1.-a5 ; - G4double a7 = 1.+a6 ; - G4double a9 = 3.+a6 ; - G4double xi = xi0*a5 ; - G4double xii = 1./xi ; - G4double xi1 = 1.+xi ; - G4double screen = screen0*xi1/a5 ; - G4double yeu = 5.-a6+4.*bet*a7 ; - G4double yed = 2.*(1.+3.*bet)*G4Log(3.+xii)-a6-a1*(2.-a6) ; - G4double ye1 = 1.+yeu/yed ; - G4double ale=G4Log(bbb/z13*sqrt(xi1*ye1)/(1.+screen*ye1)) ; - G4double cre = 0.5*G4Log(1.+2.25*z23*xi1*ye1/massratio2) ; - G4double be; - - if (xi <= 1.e3) { - be = ((2.+a6)*(1.+bet)+xi*a9)*G4Log(1.+xii)+(a5-bet)/xi1-a9; - } else { - be = (3.-a6+a1*a7)/(2.*xi); - } - G4double fe = (ale-cre)*be; - if ( fe < 0.) { fe = 0.; } - - G4double ymu = 4.+a6 +3.*bet*a7 ; - G4double ymd = a7*(1.5+a1)*G4Log(3.+xi)+1.-1.5*a6 ; - G4double ym1 = 1.+ymu/ymd ; - G4double alm_crm = G4Log(bbb*massratio/(1.5*z23*(1.+screen*ym1))); - G4double a10,bm; - if ( xi >= 1.e-3) - { - a10 = (1.+a1)*a5 ; - bm = (a7*(1.+1.5*bet)-a10*xii)*G4Log(xi1)+xi*(a5-bet)/xi1+a10; - } else { - bm = (5.-a6+bet*a9)*(xi/2.); - } - - G4double fm = alm_crm*bm; - if ( fm < 0.) { fm = 0.; } - - sum += wgi[i]*a4*(fe+fm/massratio2); - } - - cross = -tmn*sum*factorForCross*z2*residEnergy/(totalEnergy*pairEnergy); - - return cross; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/source/processes/electromagnetic/lowenergy/History b/source/processes/electromagnetic/lowenergy/History index bef969d9fa..10aa11e3fb 100644 --- a/source/processes/electromagnetic/lowenergy/History +++ b/source/processes/electromagnetic/lowenergy/History @@ -15,6 +15,46 @@ committal in the CVS repository ! ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- + +17.11.2020 V.Ivanchenko, emlowen-V10-06-13 +- G4MicroElecInelasticModel_new, G4MicroElecInelastic_new, + G4MicroElecSurface - fixed Coverity warnings (non-initialized + class members or dereferences) + +26.10.2020 V.Ivanchenko, emlowen-V10-06-12 +- removed obsolete G4MuElec* classes +- Added new classes developed by ONERA and CEA group and provided + by D. Lambert: G4MicroElecElasticModel_new, + G4MicroElecInelasticModel_new, G4MicroElecInelastic_new, + G4MicroElecLOPhononModel, G4MicroElecLOPhononModel. + G4MicroElecSiStructure is moved to material category +- G4MicroElecSurface - new boundary process for e- The code is + updated compared with the original: instead of name comparisons + pointers are compared; condition on surface is defined by kCarTolerance; + initialisation is done in the new BuildPhysicsTable(..) method + instead of Initialise(); no dependence on G4Electron; changed + process type and sub-types from optical to electromagnetic. +15.10.2020 L. Pandola, emlowen-V10-06-11 +- Fix Coverity defects and material list in G4PenelopeRayleighModelMI + +12.10.2020 L. Pandola, emlowen-V10-06-10 +- replace std::log with G4Log in Penelope and Livermore models +- use GetZasInt() in Penelope models, when applicable +- fix typo in material name in G4PenelopeRayleighModelMI + +07.10.2020 L. Pandola, emlowen-V10-06-09 +- finalize G4PenelopeRayleighModelMI model of emlowen-V10-06-08: +make it compatible with Unit Tests, revise verbosity + +24.09.2020 G. Paternò, L. Pandola, emlowen-V10-06-08 +- added G4PenelopeRayleighModelMI model and ancillary class G4MIData + (provided by G. Paternò, INFN Ferrara) +- create tests/CMakeLists.txt for Unit Tests and reshape Unit Test + G4PenelopeRayleighTest.cc + +04.09.2020 M. Omer, R. Hajima, L. Pandola, emlowen-V10-06-07 +- Added protections in G4JAEAPolarizedElasticScatteringModel.cc + 11.06.2020 Z. Li, emlowen-V10-06-06 - Add InitialiseForElement() in G4LivermoreGammaConversionModel and G4LivermoreGammaConversion5DModel, which was missing before @@ -1608,7 +1648,7 @@ M. Omer and R. Hajima 25.06.2009, A. Mantero, tag emlowen-V09-02-40 Design update, Bug Fixes and models update for - atomic shell hadronic CS calulation. + atomic shell hadronic CS calculation. 02.06.2009, A.Lechner, tag emlowen-V09-02-39 Bug fix in class G4IonDEDXScalingICRU73: Compilation diff --git a/source/processes/electromagnetic/lowenergy/include/G4AugerData.hh b/source/processes/electromagnetic/lowenergy/include/G4AugerData.hh index 0037a6d161..738836627b 100644 --- a/source/processes/electromagnetic/lowenergy/include/G4AugerData.hh +++ b/source/processes/electromagnetic/lowenergy/include/G4AugerData.hh @@ -98,7 +98,7 @@ public: - // Given the atomic number and the vacancy intial shell index returns + // Given the atomic number and the vacancy initial shell index returns // the AugerTransition object related to that shell G4AugerTransition* GetAugerTransition(G4int Z, G4int vacancyShellIndex); diff --git a/source/processes/electromagnetic/lowenergy/include/G4LivermorePhotoElectricModel.hh b/source/processes/electromagnetic/lowenergy/include/G4LivermorePhotoElectricModel.hh index 9cf98abb92..df851235b6 100644 --- a/source/processes/electromagnetic/lowenergy/include/G4LivermorePhotoElectricModel.hh +++ b/source/processes/electromagnetic/lowenergy/include/G4LivermorePhotoElectricModel.hh @@ -28,7 +28,7 @@ // 30 October 2008 // on base of G4LowEnergyPhotoElectric developed by A.Forti and M.G.Pia // -// 15 Mar 2010 L. Pandola, removed methods to set explicitely fluorescence cuts. +// 15 Mar 2010 L. Pandola, removed methods to set explicitly fluorescence cuts. // Main cuts from G4ProductionCutsTable are always used // 30 May 2011 A Mantero & V Ivanchenko Migration to model design for deexcitation // 22 Oct 2012 A & V Ivanchenko Migration data structure to G4PhysicsVector diff --git a/source/processes/electromagnetic/lowenergy/include/G4LivermorePolarizedPhotoElectricModel.hh b/source/processes/electromagnetic/lowenergy/include/G4LivermorePolarizedPhotoElectricModel.hh index 6e06a9746a..93412218b3 100644 --- a/source/processes/electromagnetic/lowenergy/include/G4LivermorePolarizedPhotoElectricModel.hh +++ b/source/processes/electromagnetic/lowenergy/include/G4LivermorePolarizedPhotoElectricModel.hh @@ -28,7 +28,7 @@ // 30 October 2008 // on base of G4LowEnergyPhotoElectric developed by A.Forti and M.G.Pia // -// 15 Mar 2010 L. Pandola, removed methods to set explicitely fluorescence cuts. +// 15 Mar 2010 L. Pandola, removed methods to set explicitly fluorescence cuts. // Main cuts from G4ProductionCutsTable are always used // 30 May 2011 A Mantero & V Ivanchenko Migration to model design for deexcitation // 22 Oct 2012 A & V Ivanchenko Migration data structure to G4PhysicsVector diff --git a/source/processes/electromagnetic/lowenergy/include/G4MuElecSiStructure.hh b/source/processes/electromagnetic/lowenergy/include/G4MIData.hh old mode 100755 new mode 100644 similarity index 63% rename from source/processes/electromagnetic/lowenergy/include/G4MuElecSiStructure.hh rename to source/processes/electromagnetic/lowenergy/include/G4MIData.hh index 8c43177a95..6946373a4d --- a/source/processes/electromagnetic/lowenergy/include/G4MuElecSiStructure.hh +++ b/source/processes/electromagnetic/lowenergy/include/G4MIData.hh @@ -23,51 +23,51 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// gpaterno, March 2019 // -// G4MuElecSiStructure.hh, 2011/08/29 A.Valentin, M. Raine -// -// Based on the following publications -// -// - Inelastic cross-sections of low energy electrons in silicon -// for the simulation of heavy ion tracks with theGeant4-DNA toolkit, -// NSS Conf. Record 2010, pp. 80-85 -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for electrons in Si, -// NIM B, vol. 288, pp. 66-73, 2012. -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for protons and -// heavy ions in Si, NIM B, vol. 287, pp. 124-129, 2012. -// -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... +#ifndef G4MIData_h +#define G4MIData_h 1 -#ifndef G4MUELECSISTRUCTURE_HH -#define G4MUELECSISTRUCTURE_HH 1 - #include "globals.hh" -#include +#include "G4VMaterialExtension.hh" - -class G4MuElecSiStructure -{ -public: - - G4MuElecSiStructure(); - - virtual ~G4MuElecSiStructure(); - - G4double Energy(G4int level); +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - G4int NumberOfLevels() { return nLevels; } - +class G4MIData : public G4VMaterialExtension { + +public: + G4MIData(const G4String&); + virtual ~G4MIData(); -private: - - // Number of levels of silicon - G4int nLevels; - - std::vector energyConstant; +public: + void Print() const override + {G4cout << "Molecular Interference data for Rayleigh scattering" << G4endl;}; + + void SetFilenameFF(const G4String& filenameff) {fFilenameFF = filenameff;}; + void SetFilenameCS(const G4String& filenamecs) {fFilenameCS = filenamecs;}; + void SetMolWeight(const G4double mw) {fMolWeight = mw;}; + +public: + const G4String& GetFilenameFF() {return fFilenameFF;}; + const G4String& GetFilenameCS() {return fFilenameCS;}; + const G4double& GetMolWeight() {return fMolWeight;}; + +protected: + G4String fFilenameFF; + G4String fFilenameCS; + G4double fMolWeight; }; +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + #endif + + + + + + + diff --git a/source/processes/electromagnetic/lowenergy/include/G4MuElecCrossSectionDataSet.hh b/source/processes/electromagnetic/lowenergy/include/G4MicroElecCrossSectionDataSet_new.hh similarity index 53% rename from source/processes/electromagnetic/lowenergy/include/G4MuElecCrossSectionDataSet.hh rename to source/processes/electromagnetic/lowenergy/include/G4MicroElecCrossSectionDataSet_new.hh index bd166f3f10..bf49cdf530 100644 --- a/source/processes/electromagnetic/lowenergy/include/G4MuElecCrossSectionDataSet.hh +++ b/source/processes/electromagnetic/lowenergy/include/G4MicroElecCrossSectionDataSet_new.hh @@ -27,90 +27,65 @@ // Based on G4DNACrossSectionDataSet // -#ifndef G4MUELECCROSSSECTIONDATASET_HH -#define G4MUELECCROSSSECTIONDATASET_HH 1 +#ifndef G4MICROELECCROSSSECTIONDATASET_HH +#define G4MICROELECCROSSSECTIONDATASET_HH 1 #include - #include "G4ShellEMDataSet.hh" -class G4MuElecCrossSectionDataSet : public G4VEMDataSet +class G4MicroElecCrossSectionDataSet_new : public G4VEMDataSet { - public: - G4MuElecCrossSectionDataSet(G4VDataSetAlgorithm* algo, + G4MicroElecCrossSectionDataSet_new(G4VDataSetAlgorithm* algo, G4double xUnit=CLHEP::MeV, G4double dataUnit=CLHEP::barn); + ~G4MicroElecCrossSectionDataSet_new() override; - virtual ~G4MuElecCrossSectionDataSet(); - - virtual G4double FindValue(G4double e, G4int componentId=0) const; - - virtual void PrintData(void) const; - - virtual const G4VEMDataSet* GetComponent(G4int componentId) const - { return components[componentId]; } - - virtual void AddComponent(G4VEMDataSet* dataSet) - { components.push_back(dataSet); } - - virtual size_t NumberOfComponents(void) const - { return components.size(); } - - virtual const G4DataVector& GetEnergies(G4int componentId) const - { return GetComponent(componentId)->GetEnergies(0); } - - virtual const G4DataVector& GetData(G4int componentId) const - { return GetComponent(componentId)->GetData(0); } - - virtual const G4DataVector& GetLogEnergies(G4int componentId) const - { return GetComponent(componentId)->GetLogEnergies(0); } - - virtual const G4DataVector& GetLogData(G4int componentId) const - { return GetComponent(componentId)->GetLogData(0); } - - virtual void SetEnergiesData(G4DataVector* x, G4DataVector* values, G4int componentId); - - virtual void SetLogEnergiesData(G4DataVector* x, - G4DataVector* values, - G4DataVector* log_x, - G4DataVector* log_values, - G4int componentId); - - virtual G4bool LoadData(const G4String & argFileName); - virtual G4bool LoadNonLogData(const G4String & argFileName); - - virtual G4bool SaveData(const G4String & argFileName) const; - - virtual G4double RandomSelect(G4int /*componentId */) const { return -1.; }; - - - // void CleanUpComponents(); + G4double FindValue(G4double e, G4int componentId=0) const override; + G4double FindShellValue(G4double argEnergy, G4int shell) const; + void PrintData(void) const override; + const G4VEMDataSet* GetComponent(G4int componentId) const override + { return components[componentId]; } + void AddComponent(G4VEMDataSet* dataSet) override + { components.push_back(dataSet); } + size_t NumberOfComponents(void) const override + { return components.size(); } + const G4DataVector& GetEnergies(G4int componentId) const override + { return GetComponent(componentId)->GetEnergies(0); } + const G4DataVector& GetData(G4int componentId) const override + { return GetComponent(componentId)->GetData(0); } + const G4DataVector& GetLogEnergies(G4int componentId) const override + { return GetComponent(componentId)->GetLogEnergies(0); } + const G4DataVector& GetLogData(G4int componentId) const override + { return GetComponent(componentId)->GetLogData(0); } + void SetEnergiesData(G4DataVector* x, G4DataVector* values, G4int componentId) override; + void SetLogEnergiesData(G4DataVector* x, + G4DataVector* values, + G4DataVector* log_x, + G4DataVector* log_values, + G4int componentId) override; + G4bool LoadData(const G4String & argFileName) override; + G4bool LoadNonLogData(const G4String & argFileName) override; + G4bool SaveData(const G4String & argFileName) const override; + G4double RandomSelect(G4int /*componentId */) const override + { return -1.; }; private: + G4MicroElecCrossSectionDataSet_new(); + G4MicroElecCrossSectionDataSet_new(const G4MicroElecCrossSectionDataSet_new & copy); + G4MicroElecCrossSectionDataSet_new& operator=(const G4MicroElecCrossSectionDataSet_new & right); G4String FullFileName(const G4String & argFileName) const; - - // Hide copy constructor and assignment operator - G4MuElecCrossSectionDataSet(); - G4MuElecCrossSectionDataSet(const G4MuElecCrossSectionDataSet & copy); - G4MuElecCrossSectionDataSet& operator=(const G4MuElecCrossSectionDataSet & right); - - std::vector components; // Owned pointers - - G4int z; - - G4VDataSetAlgorithm* algorithm; // Owned pointer - - G4double unitEnergies; - G4double unitData; - G4double GetUnitEnergies() const { return unitEnergies; } G4double GetUnitData() const { return unitData; } const G4VDataSetAlgorithm* GetAlgorithm() const { return algorithm; } - void CleanUpComponents(void); + std::vector components; // Owned pointers + G4int z; + G4VDataSetAlgorithm* algorithm; // Owned pointer + G4double unitEnergies; + G4double unitData; }; -#endif /* G4MuElecCrossSectionDataSet_HH */ +#endif diff --git a/source/processes/electromagnetic/lowenergy/include/G4MicroElecElasticModel_new.hh b/source/processes/electromagnetic/lowenergy/include/G4MicroElecElasticModel_new.hh new file mode 100644 index 0000000000..4da29fcc8c --- /dev/null +++ b/source/processes/electromagnetic/lowenergy/include/G4MicroElecElasticModel_new.hh @@ -0,0 +1,190 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// G4MicroElecElasticModel_new.hh, 2011/08/29 A.Valentin, M. Raine are with CEA [a] +// 2020/05/20 P. Caron, C. Inguimbert are with ONERA [b] +// Q. Gibaru is with CEA [a], ONERA [b] and CNES [c] +// M. Raine and D. Lambert are with CEA [a] +// +// A part of this work has been funded by the French space agency(CNES[c]) +// [a] CEA, DAM, DIF - 91297 ARPAJON, France +// [b] ONERA - DPHY, 2 avenue E.Belin, 31055 Toulouse, France +// [c] CNES, 18 av.E.Belin, 31401 Toulouse CEDEX, France +// +// Based on the following publications +// - A.Valentin, M. Raine, +// Inelastic cross-sections of low energy electrons in silicon +// for the simulation of heavy ion tracks with the Geant4-DNA toolkit, +// NSS Conf. Record 2010, pp. 80-85 +// https://doi.org/10.1109/NSSMIC.2010.5873720 +// +// - A.Valentin, M. Raine, M.Gaillardin, P.Paillet +// Geant4 physics processes for microdosimetry simulation: +// very low energy electromagnetic models for electrons in Silicon, +// https://doi.org/10.1016/j.nimb.2012.06.007 +// NIM B, vol. 288, pp. 66-73, 2012, part A +// heavy ions in Si, NIM B, vol. 287, pp. 124-129, 2012, part B +// https://doi.org/10.1016/j.nimb.2012.07.028 +// +// - M. Raine, M. Gaillardin, P. Paillet +// Geant4 physics processes for silicon microdosimetry simulation: +// Improvements and extension of the energy-range validity up to 10 GeV/nucleon +// NIM B, vol. 325, pp. 97-100, 2014 +// https://doi.org/10.1016/j.nimb.2014.01.014 +// +// - J. Pierron, C. Inguimbert, M. Belhaj, T. Gineste, J. Puech, M. Raine +// Electron emission yield for low energy electrons: +// Monte Carlo simulation and experimental comparison for Al, Ag, and Si +// Journal of Applied Physics 121 (2017) 215107. +// https://doi.org/10.1063/1.4984761 +// +// - P. Caron, +// Study of Electron-Induced Single-Event Upset in Integrated Memory Devices +// PHD, 16th October 2019 +// +// - Q.Gibaru, C.Inguimbert, P.Caron, M.Raine, D.Lambert, J.Puech, +// Geant4 physics processes for microdosimetry and secondary electron emission simulation : +// Extension of MicroElec to very low energies and new materials +// NIM B, 2020, in review. +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef G4MICROELECELASTICMODEL_HH +#define G4MICROELECELASTICMODEL_HH 1 + +#include +#include + +#include "G4MicroElecMaterialStructure.hh" +#include "G4MicroElecCrossSectionDataSet_new.hh" +#include "G4VEmModel.hh" +#include "G4Electron.hh" +#include "G4ParticleChangeForGamma.hh" +#include "G4LogLogInterpolation.hh" +#include "G4ProductionCutsTable.hh" +#include "G4NistManager.hh" + +class G4MicroElecElasticModel_new : public G4VEmModel +{ + +public: + G4MicroElecElasticModel_new(const G4ParticleDefinition* p = 0, + const G4String& nam = "MicroElecElasticModel"); + ~G4MicroElecElasticModel_new() override; + + void Initialise(const G4ParticleDefinition*, const G4DataVector&) override; + + G4double CrossSectionPerVolume(const G4Material* material, + const G4ParticleDefinition* p, + G4double ekin, + G4double emin, + G4double emax) override; + + G4double AcousticCrossSectionPerVolume(G4double ekin, G4double kbz, G4double rho, + G4double cs, G4double Aac, G4double Eac, + G4double prefactor); + + void SampleSecondaries(std::vector*, + const G4MaterialCutsCouple*, + const G4DynamicParticle*, + G4double tmin, + G4double maxEnergy) override; + + void SetKillBelowThreshold (G4double threshold); + + G4double GetKillBelowThreshold () { return killBelowEnergy; } + + G4double DamageEnergy(G4double T,G4double A, G4double Z); + +protected: + G4ParticleChangeForGamma* fParticleChangeForGamma; + +private: + + G4MicroElecElasticModel_new & operator=(const G4MicroElecElasticModel_new &right); + G4MicroElecElasticModel_new(const G4MicroElecElasticModel_new&); + + // Final state + G4double Theta(G4ParticleDefinition * aParticleDefinition, G4double k, G4double integrDiff); + G4double LinLinInterpolate(G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2); + G4double LogLogInterpolate(G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2); + G4double LinLogInterpolate(G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2); + G4double QuadInterpolator(G4double e11, G4double e12, G4double e21, G4double e22, + G4double x11, G4double x12, G4double x21, G4double x22, + G4double t1, G4double t2, G4double t, G4double e); + + G4double RandomizeCosTheta(G4double k); + + G4Material* nistSi = nullptr; + G4double killBelowEnergy; + G4double lowEnergyLimit; + G4double lowEnergyLimitOfModel; + G4double highEnergyLimit; + G4bool isInitialised; + G4int verboseLevel; + // Cross section + typedef std::map > MapFile; + MapFile tableFile; + typedef std::map > MapData; + //MapData tableData; + + typedef std::map > TCSMap; + TCSMap tableTCS; + + //Maps for multilayers + typedef std::map > TriDimensionMap; + + typedef std::map ThetaMap; + ThetaMap thetaDataStorage; //Storage of angles (cumulated) + + typedef std::map* > energyMap; + energyMap eIncidentEnergyStorage; + + typedef std::map > VecMap; + + typedef std::map ProbaMap; + ProbaMap eProbaStorage; //Storage of probabilities for cumulated sections + + typedef std::map > MapStructure; + + MapStructure tableMaterialsStructures; //Structures of all materials simulated + + G4MicroElecMaterialStructure* currentMaterialStructure = nullptr; + typedef std::map > MapEnergy; + MapEnergy lowEnergyLimitTable; + MapEnergy highEnergyLimitTable; + MapEnergy workFunctionTable; + + G4bool killElectron, acousticModelEnabled; + G4String currentMaterialName; + G4bool isOkToBeInitialised; + +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +#endif diff --git a/source/processes/electromagnetic/lowenergy/include/G4MicroElecInelasticModel_new.hh b/source/processes/electromagnetic/lowenergy/include/G4MicroElecInelasticModel_new.hh new file mode 100644 index 0000000000..8dd89efab3 --- /dev/null +++ b/source/processes/electromagnetic/lowenergy/include/G4MicroElecInelasticModel_new.hh @@ -0,0 +1,194 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// G4MicroElecInelasticModel_new.hh, 2011/08/29 A.Valentin, M. Raine are with CEA [a] +// 2020/05/20 P. Caron, C. Inguimbert are with ONERA [b] +// Q. Gibaru is with CEA [a], ONERA [b] and CNES [c] +// M. Raine and D. Lambert are with CEA [a] +// +// A part of this work has been funded by the French space agency(CNES[c]) +// [a] CEA, DAM, DIF - 91297 ARPAJON, France +// [b] ONERA - DPHY, 2 avenue E.Belin, 31055 Toulouse, France +// [c] CNES, 18 av.E.Belin, 31401 Toulouse CEDEX, France +// +// Based on the following publications +// - A.Valentin, M. Raine, +// Inelastic cross-sections of low energy electrons in silicon +// for the simulation of heavy ion tracks with the Geant4-DNA toolkit, +// NSS Conf. Record 2010, pp. 80-85 +// https://doi.org/10.1109/NSSMIC.2010.5873720 +// +// - A.Valentin, M. Raine, M.Gaillardin, P.Paillet +// Geant4 physics processes for microdosimetry simulation: +// very low energy electromagnetic models for electrons in Silicon, +// https://doi.org/10.1016/j.nimb.2012.06.007 +// NIM B, vol. 288, pp. 66-73, 2012, part A +// heavy ions in Si, NIM B, vol. 287, pp. 124-129, 2012, part B +// https://doi.org/10.1016/j.nimb.2012.07.028 +// +// - M. Raine, M. Gaillardin, P. Paillet +// Geant4 physics processes for silicon microdosimetry simulation: +// Improvements and extension of the energy-range validity up to 10 GeV/nucleon +// NIM B, vol. 325, pp. 97-100, 2014 +// https://doi.org/10.1016/j.nimb.2014.01.014 +// +// - J. Pierron, C. Inguimbert, M. Belhaj, T. Gineste, J. Puech, M. Raine +// Electron emission yield for low energy electrons: +// Monte Carlo simulation and experimental comparison for Al, Ag, and Si +// Journal of Applied Physics 121 (2017) 215107. +// https://doi.org/10.1063/1.4984761 +// +// - P. Caron, +// Study of Electron-Induced Single-Event Upset in Integrated Memory Devices +// PHD, 16th October 2019 +// +// - Q.Gibaru, C.Inguimbert, P.Caron, M.Raine, D.Lambert, J.Puech, +// Geant4 physics processes for microdosimetry and secondary electron emission simulation : +// Extension of MicroElec to very low energies and new materials +// NIM B, 2020, in review. +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef G4MICROELECINELASTICMODEL_NEW_HH +#define G4MICROELECINELASTICMODEL_NEW_HH 1 + +#include "globals.hh" +#include "G4VEmModel.hh" +#include "G4ParticleChangeForGamma.hh" +#include "G4ProductionCutsTable.hh" +#include "G4MicroElecMaterialStructure.hh" +#include "G4MicroElecCrossSectionDataSet_new.hh" +#include "G4Electron.hh" +#include "G4Proton.hh" +#include "G4GenericIon.hh" +#include "G4ParticleDefinition.hh" +#include "G4LogLogInterpolation.hh" +#include "G4VAtomDeexcitation.hh" +#include "G4NistManager.hh" + + +class G4MicroElecInelasticModel_new : public G4VEmModel +{ + +public: + + G4MicroElecInelasticModel_new(const G4ParticleDefinition* p = 0, + const G4String& nam = "MicroElecInelasticModel"); + ~G4MicroElecInelasticModel_new() override; + + void Initialise(const G4ParticleDefinition*, const G4DataVector&) override; + + G4double CrossSectionPerVolume(const G4Material* material, + const G4ParticleDefinition* p, + G4double ekin, + G4double emin, + G4double emax) override; + + void SampleSecondaries(std::vector*, + const G4MaterialCutsCouple*, + const G4DynamicParticle*, + G4double tmin, + G4double maxEnergy) override; + + G4double DifferentialCrossSection(const G4ParticleDefinition * aParticleDefinition, + G4double k, G4double energyTransfer, G4int shell); + + G4double ComputeRelativistVelocity(G4double E, G4double mass); + + G4double ComputeElasticQmax(G4double T1i, G4double T2i, G4double m1, G4double m2); + + G4double BKZ(G4double Ep, G4double mp, G4int Zp, G4double EF); + // compute the effective charge according Brandt et Kitagawa theory + + G4double stepFunc(G4double x); + + G4double vrkreussler(G4double v, G4double vF); + +protected: + G4ParticleChangeForGamma* fParticleChangeForGamma = nullptr; + +private: + // + // private methods + // + G4MicroElecInelasticModel_new & operator=(const G4MicroElecInelasticModel_new &right); + G4MicroElecInelasticModel_new(const G4MicroElecInelasticModel_new&); + + G4int RandomSelect(G4double energy,const G4String& particle, G4double originalMass, G4int originalZ ); + + G4double RandomizeCreatedElectronEnergy(G4double secondaryKinetic); + + G4double RandomizeEjectedElectronEnergy(const G4ParticleDefinition * aParticleDefinition, + G4double incomingParticleEnergy, G4int shell, + G4double originalMass, G4int originalZ) ; + + G4double RandomizeEjectedElectronEnergyFromCumulatedDcs(const G4ParticleDefinition*, + G4double k, G4int shell); + + G4double TransferedEnergy(const G4ParticleDefinition*, G4double k, + G4int ionizationLevelIndex, G4double random); + + G4double Interpolate(G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2); + + G4double QuadInterpolator( G4double e11, G4double e12, G4double e21, G4double e22, + G4double x11, G4double x12, G4double x21, G4double x22, + G4double t1, G4double t2, G4double t, G4double e); + // + // private elements + // + G4String currentMaterial = ""; + G4bool fasterCode = false; + //deexcitation manager to produce fluo photns and e- + G4VAtomDeexcitation* fAtomDeexcitation = nullptr; + G4Material* nistSi = nullptr; + std::map > lowEnergyLimit; + std::map > highEnergyLimit; + G4bool isInitialised = false; + G4int verboseLevel = 0; + typedef std::map > MapFile; + typedef std::map > MapData; + typedef std::map > TriDimensionMap; + typedef std::map > VecMap; + //Tables for multilayers + typedef std::map > TCSMap; + TCSMap tableTCS; //TCS tables by particle + typedef std::map* > dataDiffCSMap; + dataDiffCSMap eDiffDatatable, pDiffDatatable; //Transfer probabilities (for slower code) + dataDiffCSMap eNrjTransStorage, pNrjTransStorage; //Transfered energies and corresponding probability (faster code) + typedef std::map* > dataProbaShellMap; + dataProbaShellMap eProbaShellStorage, pProbaShellStorage; //Cumulated Transfer probabilities (faster code) + typedef std::map* > incidentEnergyMap; + incidentEnergyMap eIncidentEnergyStorage, pIncidentEnergyStorage; //Incident energies for interpolation (faster code) + typedef std::map TranfEnergyMap; + TranfEnergyMap eVecmStorage, pVecmStorage; //Transfered energy for interpolation (slower code) + typedef std::map > MapStructure; + MapStructure tableMaterialsStructures; //Structures of all materials simulated + G4MicroElecMaterialStructure* currentMaterialStructure = nullptr; + +}; + +#endif diff --git a/source/processes/electromagnetic/lowenergy/include/G4MicroElecInelastic_new.hh b/source/processes/electromagnetic/lowenergy/include/G4MicroElecInelastic_new.hh new file mode 100644 index 0000000000..0bd25a2a2e --- /dev/null +++ b/source/processes/electromagnetic/lowenergy/include/G4MicroElecInelastic_new.hh @@ -0,0 +1,105 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// G4MicroElecInelastic_new.hh, 2011/08/29 A.Valentin, M. Raine are with CEA [a] +// 2020/05/20 P. Caron, C. Inguimbert are with ONERA [b] +// Q. Gibaru is with CEA [a], ONERA [b] and CNES [c] +// M. Raine and D. Lambert are with CEA [a] +// +// A part of this work has been funded by the French space agency(CNES[c]) +// [a] CEA, DAM, DIF - 91297 ARPAJON, France +// [b] ONERA - DPHY, 2 avenue E.Belin, 31055 Toulouse, France +// [c] CNES, 18 av.E.Belin, 31401 Toulouse CEDEX, France +// +// Based on the following publications +// - A.Valentin, M. Raine, +// Inelastic cross-sections of low energy electrons in silicon +// for the simulation of heavy ion tracks with the Geant4-DNA toolkit, +// NSS Conf. Record 2010, pp. 80-85 +// https://doi.org/10.1109/NSSMIC.2010.5873720 +// +// - A.Valentin, M. Raine, M.Gaillardin, P.Paillet +// Geant4 physics processes for microdosimetry simulation: +// very low energy electromagnetic models for electrons in Silicon, +// https://doi.org/10.1016/j.nimb.2012.06.007 +// NIM B, vol. 288, pp. 66-73, 2012, part A +// heavy ions in Si, NIM B, vol. 287, pp. 124-129, 2012, part B +// https://doi.org/10.1016/j.nimb.2012.07.028 +// +// - M. Raine, M. Gaillardin, P. Paillet +// Geant4 physics processes for silicon microdosimetry simulation: +// Improvements and extension of the energy-range validity up to 10 GeV/nucleon +// NIM B, vol. 325, pp. 97-100, 2014 +// https://doi.org/10.1016/j.nimb.2014.01.014 +// +// - J. Pierron, C. Inguimbert, M. Belhaj, T. Gineste, J. Puech, M. Raine +// Electron emission yield for low energy electrons: +// Monte Carlo simulation and experimental comparison for Al, Ag, and Si +// Journal of Applied Physics 121 (2017) 215107. +// https://doi.org/10.1063/1.4984761 +// +// - P. Caron, +// Study of Electron-Induced Single-Event Upset in Integrated Memory Devices +// PHD, 16th October 2019 +// +// - Q.Gibaru, C.Inguimbert, P.Caron, M.Raine, D.Lambert, J.Puech, +// Geant4 physics processes for microdosimetry and secondary electron emission simulation : +// Extension of MicroElec to very low energies and new materials +// NIM B, 2020, in review. +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef G4MICROELEINELASTIC_HH +#define G4MICROELEINELASTIC_HH 1 + +#include "G4VEmProcess.hh" +#include "G4Electron.hh" +#include "G4Proton.hh" +#include "G4GenericIon.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +class G4MicroElecInelastic_new : public G4VEmProcess +{ +public: + G4MicroElecInelastic_new(const G4String& processName ="MicroElecIonisation", + G4ProcessType type = fElectromagnetic); + ~G4MicroElecInelastic_new() override; + + G4bool IsApplicable(const G4ParticleDefinition&) override; + void PrintInfo() override; + +protected: + void InitialiseProcess(const G4ParticleDefinition*) override; + +private: + G4bool isInitialised = false; +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif diff --git a/source/processes/electromagnetic/lowenergy/include/G4MicroElecLOPhononModel.hh b/source/processes/electromagnetic/lowenergy/include/G4MicroElecLOPhononModel.hh new file mode 100644 index 0000000000..e6a2bea388 --- /dev/null +++ b/source/processes/electromagnetic/lowenergy/include/G4MicroElecLOPhononModel.hh @@ -0,0 +1,94 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// G4MicroElecLOPhononModel.hh, +// 2020/05/20 P. Caron, C. Inguimbert are with ONERA [b] +// Q. Gibaru is with CEA [a], ONERA [b] and CNES [c] +// M. Raine and D. Lambert are with CEA [a] +// +// A part of this work has been funded by the French space agency(CNES[c]) +// [a] CEA, DAM, DIF - 91297 ARPAJON, France +// [b] ONERA - DPHY, 2 avenue E.Belin, 31055 Toulouse, France +// [c] CNES, 18 av.E.Belin, 31401 Toulouse CEDEX, France +// +// Based on the following publications +// +// - Q.Gibaru, C.Inguimbert, P.Caron, M.Raine, D.Lambert, J.Puech, +// Geant4 physics processes for microdosimetry and secondary electron emission simulation : +// Extension of MicroElec to very low energies and new materials +// NIM B, 2020, in review. +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef G4MICROELECLOPHONONMODEL_HH +#define G4MICROELECLOPHONONMODEL_HH 1 + +#include "G4Step.hh" +#include "G4VDiscreteProcess.hh" +#include "G4DynamicParticle.hh" +#include "G4Material.hh" +#include "G4VEmModel.hh" +#include "G4Electron.hh" +#include "G4TransportationManager.hh" +#include "G4ParticleChangeForGamma.hh" + +class G4MicroElecLOPhononModel : public G4VEmModel +{ +public: + G4MicroElecLOPhononModel(const G4ParticleDefinition*p = 0, + const G4String& nam = "G4MicroElecLOPhononModel"); + ~G4MicroElecLOPhononModel() override; + + void Initialise(const G4ParticleDefinition*, const G4DataVector&) override; + + G4double CrossSectionPerVolume(const G4Material* material, + const G4ParticleDefinition* p, + G4double ekin, + G4double emin, + G4double emax) override; + + void SampleSecondaries(std::vector*, + const G4MaterialCutsCouple*, + const G4DynamicParticle*, + G4double tmin, + G4double maxEnergy) override; + +protected: + G4ParticleChangeForGamma* fParticleChangeForGamma; + +private: + G4bool Interband; + G4MicroElecLOPhononModel & operator=(const G4MicroElecLOPhononModel &right); + G4MicroElecLOPhononModel(const G4MicroElecLOPhononModel&); + + G4bool isOkToBeInitialised; + G4bool isInitialised; + G4bool abs = false; + G4double Eprim = 0, signe = -1,phononEnergy=0; +}; + +#endif diff --git a/source/processes/electromagnetic/lowenergy/include/G4MuElecInelastic.hh b/source/processes/electromagnetic/lowenergy/include/G4MicroElecLOPhononScattering.hh old mode 100755 new mode 100644 similarity index 60% rename from source/processes/electromagnetic/lowenergy/include/G4MuElecInelastic.hh rename to source/processes/electromagnetic/lowenergy/include/G4MicroElecLOPhononScattering.hh index 4e354df46f..df9528d28a --- a/source/processes/electromagnetic/lowenergy/include/G4MuElecInelastic.hh +++ b/source/processes/electromagnetic/lowenergy/include/G4MicroElecLOPhononScattering.hh @@ -24,58 +24,53 @@ // ******************************************************************** // // -// G4MuElecInelastic.hh, 2011/08/29 A.Valentin, M. Raine +// G4MicroElecLOPhononModel.hh, +// 2020/05/20 P. Caron, C. Inguimbert are with ONERA [b] +// Q. Gibaru is with CEA [a], ONERA [b] and CNES [c] +// M. Raine and D. Lambert are with CEA [a] +// +// A part of this work has been funded by the French space agency(CNES[c]) +// [a] CEA, DAM, DIF - 91297 ARPAJON, France +// [b] ONERA - DPHY, 2 avenue E.Belin, 31055 Toulouse, France +// [c] CNES, 18 av.E.Belin, 31401 Toulouse CEDEX, France // // Based on the following publications // -// - Inelastic cross-sections of low energy electrons in silicon -// for the simulation of heavy ion tracks with theGeant4-DNA toolkit, -// NSS Conf. Record 2010, pp. 80-85 -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for electrons in Si, -// NIM B, vol. 288, pp. 66-73, 2012. -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for protons and -// heavy ions in Si, NIM B, vol. 287, pp. 124-129, 2012. +// - Q.Gibaru, C.Inguimbert, P.Caron, M.Raine, D.Lambert, J.Puech, +// Geant4 physics processes for microdosimetry and secondary electron emission simulation : +// Extension of MicroElec to very low energies and new materials +// NIM B, 2020, in review. +// // //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#ifndef G4MuElecInelastic_h -#define G4MuElecInelastic_h 1 + +#ifndef G4MICROELECLOPHONONSCATTERING_HH +#define G4MICROELECLOPHONONSCATTERING_HH 1 #include "G4VEmProcess.hh" #include "G4Electron.hh" -#include "G4Proton.hh" -#include "G4GenericIon.hh" - -// Available models -#include "G4MuElecInelasticModel.hh" +#include "G4MicroElecLOPhononModel.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -class G4MuElecInelastic : public G4VEmProcess - +class G4MicroElecLOPhononScattering : public G4VEmProcess { -public: - - G4MuElecInelastic(const G4String& processName ="MuElecIonisation", - G4ProcessType type = fElectromagnetic); - - virtual ~G4MuElecInelastic(); - - virtual G4bool IsApplicable(const G4ParticleDefinition&); +public: + G4MicroElecLOPhononScattering(const G4String& processName = "LOPhononScattering", + G4ProcessType type = fElectromagnetic); + ~G4MicroElecLOPhononScattering() override; + + G4bool IsApplicable(const G4ParticleDefinition&) override; + void PrintInfo() override; - virtual void PrintInfo(); - protected: - - virtual void InitialiseProcess(const G4ParticleDefinition*); - + void InitialiseProcess(const G4ParticleDefinition*) override; + private: - - G4bool isInitialised; + G4bool isInitialised; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -#endif + +#endif diff --git a/source/processes/electromagnetic/lowenergy/include/G4MicroElecSurface.hh b/source/processes/electromagnetic/lowenergy/include/G4MicroElecSurface.hh new file mode 100644 index 0000000000..640196521b --- /dev/null +++ b/source/processes/electromagnetic/lowenergy/include/G4MicroElecSurface.hh @@ -0,0 +1,143 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// G4MicroElecSurface.hh, +// 2020/05/20 P. Caron, C. Inguimbert are with ONERA [b] +// Q. Gibaru is with CEA [a], ONERA [b] and CNES [c] +// D. Lambert is with CEA [a] +// +// A part of this work has been funded by the French space agency(CNES[c]) +// [a] CEA, DAM, DIF - 91297 ARPAJON, France +// [b] ONERA - DPHY, 2 avenue E.Belin, 31055 Toulouse, France +// [c] CNES, 18 av.E.Belin, 31401 Toulouse CEDEX, France +// +// Based on the following publications +// +// - Q.Gibaru, C.Inguimbert, P.Caron, M.Raine, D.Lambert, J.Puech, +// Geant4 physics processes for microdosimetry and secondary electron emission simulation : +// Extension of MicroElec to very low energies and new materials +// NIM B, 2020, in review. +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#ifndef G4MicroElecSurface_h +#define G4MicroElecSurface_h 1 + +///////////// +// Includes +///////////// + +#include "globals.hh" +#include "templates.hh" +#include "geomdefs.hh" +#include "Randomize.hh" +#include "G4ProductionCutsTable.hh" +#include "G4RandomTools.hh" +#include "G4RandomDirection.hh" +#include "G4MicroElecMaterialStructure.hh" +#include "G4Step.hh" +#include "G4VDiscreteProcess.hh" +#include "G4DynamicParticle.hh" +#include "G4Material.hh" +#include "G4LogicalBorderSurface.hh" +#include "G4LogicalSkinSurface.hh" +#include "G4TransportationManager.hh" + +// Class Description: +// Discrete Process -- reflection/refraction at interfaces for electrons. +// Class inherits publicly from G4VDiscreteProcess. +// Class Description - End: + +///////////////////// +// Class Definition +///////////////////// + +enum G4MicroElecSurfaceStatus { UndefinedSurf, + NotAtBoundarySurf, + SameMaterialSurf, + StepTooSmallSurf }; + + +class G4MicroElecSurface : public G4VDiscreteProcess +{ + +public: + + G4MicroElecSurface(const G4String& processName = "MicroElecSurface", + G4ProcessType type = fElectromagnetic); + + ~G4MicroElecSurface() override; + + G4bool IsApplicable(const G4ParticleDefinition& aParticleType) override; + // Returns true -> 'is applicable' only for an electron. + + void SetFlagFranchissement(); + + G4double GetMeanFreePath(const G4Track& , + G4double , + G4ForceCondition* condition) override; + // Returns infinity; i. e. the process does not limit the step, + // but sets the 'Forced' condition for the DoIt to be invoked at + // every step. However, only at a boundary will any action be + // taken. + + G4VParticleChange* PostStepDoIt(const G4Track& aTrack, + const G4Step& aStep) override; + // This is the method implementing boundary processes. + + void BuildPhysicsTable(const G4ParticleDefinition&) override; + // Initialisation + + G4MicroElecSurfaceStatus GetStatus() const; + // Returns the current status. + + G4MicroElecSurface(const G4MicroElecSurface &right) = delete; + G4MicroElecSurface& operator=(const G4MicroElecSurface &right) = delete; + +private: + + G4double GetIncidentAngle(); + + G4ThreeVector Reflexion(const G4StepPoint* PostStepPoint); + + // private elements + typedef std::map > WorkFunctionTable; + WorkFunctionTable tableWF; //Table of all materials simulated + G4double theParticleMomentum; + G4ThreeVector oldMomentum, previousMomentum; + G4ThreeVector theGlobalNormal; + G4ThreeVector theFacetNormal; + G4Material* material1; + G4Material* material2; + G4MicroElecSurfaceStatus theStatus; + G4double kCarTolerance; + G4double ekint, thetat, thetaft, energyThreshold, crossingProbability; + G4bool flag_franchissement_surface, flag_reflexion,flag_normal, teleportToDo, teleportDone, isInitialised; + +}; + +#endif diff --git a/source/processes/electromagnetic/lowenergy/include/G4MuElecElasticModel.hh b/source/processes/electromagnetic/lowenergy/include/G4MuElecElasticModel.hh deleted file mode 100755 index e9d129e0fd..0000000000 --- a/source/processes/electromagnetic/lowenergy/include/G4MuElecElasticModel.hh +++ /dev/null @@ -1,153 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -// -// G4MuElecElasticModel.hh, 2011/08/29 A.Valentin, M. Raine -// -// Based on the following publications -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for electrons in Si, -// NIM B, vol. 288, pp. 66 - 73, 2012. -// -// -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -#ifndef G4MuElecElasticModel_h -#define G4MuElecElasticModel_h 1 - -#include -#include - -#include "G4MuElecCrossSectionDataSet.hh" -#include "G4VEmModel.hh" -#include "G4Electron.hh" -#include "G4ParticleChangeForGamma.hh" -#include "G4LogLogInterpolation.hh" -#include "G4ProductionCutsTable.hh" -#include "G4NistManager.hh" - -class G4MuElecElasticModel : public G4VEmModel -{ - -public: - - G4MuElecElasticModel(const G4ParticleDefinition* p = 0, - const G4String& nam = "MuElecElasticModel"); - - virtual ~G4MuElecElasticModel(); - - virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&); - - virtual G4double CrossSectionPerVolume(const G4Material* material, - const G4ParticleDefinition* p, - G4double ekin, - G4double emin, - G4double emax); - - virtual void SampleSecondaries(std::vector*, - const G4MaterialCutsCouple*, - const G4DynamicParticle*, - G4double tmin, - G4double maxEnergy); - - inline void SetKillBelowThreshold (G4double threshold); - G4double GetKillBelowThreshold () { return killBelowEnergy; } - -protected: - - G4ParticleChangeForGamma* fParticleChangeForGamma; - -private: - - G4Material* nistSi; - G4double killBelowEnergy; - G4double lowEnergyLimit; - G4double lowEnergyLimitOfModel; - G4double highEnergyLimit; - G4bool isInitialised; - G4int verboseLevel; - - // Cross section - - typedef std::map > MapFile; - MapFile tableFile; - - typedef std::map > MapData; - MapData tableData; - - // Final state - - G4double Theta(G4ParticleDefinition * aParticleDefinition, G4double k, G4double integrDiff); - - G4double LogLogInterpolate(G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2); - - G4double LinLogInterpolate(G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2); - - G4double QuadInterpolator(G4double e11, - G4double e12, - G4double e21, - G4double e22, - G4double x11, - G4double x12, - G4double x21, - G4double x22, - G4double t1, - G4double t2, - G4double t, - G4double e); - - typedef std::map > TriDimensionMap; - - TriDimensionMap eDiffCrossSectionData; - std::vector eTdummyVec; - - typedef std::map > VecMap; - VecMap eVecm; - - G4double RandomizeCosTheta(G4double k); - - // - - G4MuElecElasticModel & operator=(const G4MuElecElasticModel &right); - G4MuElecElasticModel(const G4MuElecElasticModel&); - -}; - -inline void G4MuElecElasticModel::SetKillBelowThreshold (G4double threshold) -{ - killBelowEnergy = threshold; - - if (threshold < 5*CLHEP::eV) - { - G4Exception ("*** WARNING : the G4MuElecElasticModel class is not validated below 5 eV !","",JustWarning,"") ; - threshold = 0.025*CLHEP::eV; - } - -} - - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -#endif diff --git a/source/processes/electromagnetic/lowenergy/include/G4MuElecInelasticModel.hh b/source/processes/electromagnetic/lowenergy/include/G4MuElecInelasticModel.hh deleted file mode 100755 index 7cfd5994c7..0000000000 --- a/source/processes/electromagnetic/lowenergy/include/G4MuElecInelasticModel.hh +++ /dev/null @@ -1,162 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -// -// G4MuElecInelasticModel.hh, 2011/08/29 A.Valentin, M. Raine -// -// Based on the following publications -// -// - Inelastic cross-sections of low energy electrons in silicon -// for the simulation of heavy ion tracks with theGeant4-DNA toolkit, -// NSS Conf. Record 2010, pp. 80-85 -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for electrons in Si, -// NIM B, vol. 288, pp. 66-73, 2012. -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for protons and -// heavy ions in Si, NIM B, vol. 287, pp. 124-129, 2012. -// -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -#ifndef G4MuElecInelasticModel_h -#define G4MuElecInelasticModel_h 1 - - -#include "globals.hh" -#include "G4VEmModel.hh" -#include "G4ParticleChangeForGamma.hh" -#include "G4ProductionCutsTable.hh" - -#include "G4MuElecCrossSectionDataSet.hh" -#include "G4Electron.hh" -#include "G4Proton.hh" -#include "G4GenericIon.hh" -#include "G4ParticleDefinition.hh" - -#include "G4LogLogInterpolation.hh" - -#include "G4MuElecSiStructure.hh" -#include "G4VAtomDeexcitation.hh" -#include "G4NistManager.hh" - -class G4MuElecInelasticModel : public G4VEmModel -{ - -public: - - G4MuElecInelasticModel(const G4ParticleDefinition* p = 0, - const G4String& nam = "MuElecInelasticModel"); - - virtual ~G4MuElecInelasticModel(); - - virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&); - - virtual G4double CrossSectionPerVolume( const G4Material* material, - const G4ParticleDefinition* p, - G4double ekin, - G4double emin, - G4double emax); - - virtual void SampleSecondaries(std::vector*, - const G4MaterialCutsCouple*, - const G4DynamicParticle*, - G4double tmin, - G4double maxEnergy); - - double DifferentialCrossSection(G4ParticleDefinition * aParticleDefinition, G4double k, G4double energyTransfer, G4int shell); - -protected: - - G4ParticleChangeForGamma* fParticleChangeForGamma; - -private: - - //deexcitation manager to produce fluo photns and e- - G4VAtomDeexcitation* fAtomDeexcitation; - - G4Material* nistSi; - - std::map > lowEnergyLimit; - std::map > highEnergyLimit; - - G4bool isInitialised; - G4int verboseLevel; - - // Cross section - - typedef std::map > MapFile; - MapFile tableFile; - - typedef std::map > MapData; - MapData tableData; - - // Final state - - G4MuElecSiStructure SiStructure; - - G4double RandomizeEjectedElectronEnergy(G4ParticleDefinition * aParticleDefinition, G4double incomingParticleEnergy, G4int shell) ; - - void RandomizeEjectedElectronDirection(G4ParticleDefinition * aParticleDefinition, G4double incomingParticleEnergy, G4double - outgoingParticleEnergy, G4double & cosTheta, G4double & phi ); - - G4double LogLogInterpolate(G4double e1, G4double e2, G4double e, G4double xs1, G4double xs2); - - G4double QuadInterpolator( G4double e11, - G4double e12, - G4double e21, - G4double e22, - G4double x11, - G4double x12, - G4double x21, - G4double x22, - G4double t1, - G4double t2, - G4double t, - G4double e); - - typedef std::map > TriDimensionMap; - TriDimensionMap eDiffCrossSectionData[7]; - TriDimensionMap pDiffCrossSectionData[7]; - std::vector eTdummyVec; - std::vector pTdummyVec; - - typedef std::map > VecMap; - VecMap eVecm; - VecMap pVecm; - - // Partial cross section - - G4int RandomSelect(G4double energy,const G4String& particle ); - - // - - G4MuElecInelasticModel & operator=(const G4MuElecInelasticModel &right); - G4MuElecInelasticModel(const G4MuElecInelasticModel&); - -}; - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -#endif diff --git a/source/processes/electromagnetic/lowenergy/include/G4PenelopeRayleighModelMI.hh b/source/processes/electromagnetic/lowenergy/include/G4PenelopeRayleighModelMI.hh new file mode 100644 index 0000000000..ef34bbe8ef --- /dev/null +++ b/source/processes/electromagnetic/lowenergy/include/G4PenelopeRayleighModelMI.hh @@ -0,0 +1,168 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// $Id: G4PenelopeRayleighModelMI.hh 75573 2013-11-04 11:48:15Z gcosmo $ +// +// Author: Luciano Pandola and Gianfranco Paternò +// +// ------------------------------------------------------------------- +// History: +// 03 Dec 2009 L. Pandola 1st implementation +// 25 May 2011 L. Pandola Renamed (make v2008 as default Penelope) +// 27 Sep 2013 L. Pandola Migration to MT paradigm +// 20 Aug 2017 G. Paternò Molecular Interference implementation +// 24 Mar 2019 G. Paternò Improved Molecular Interference implementation +// 20 Jun 2020 G. Paternò Read qext separately and leave original atomic form factors +// 27 Aug 2020 G. Paternò Further improvement of MI implementation +// +// ------------------------------------------------------------------- +// Class description: +// Low Energy Electromagnetic Physics, Rayleigh Scattering +// with the model from Penelope, version 2008 +// extended for Molecular Interference Effects +// ------------------------------------------------------------------- +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +#ifndef G4PenelopeRayleighModelMI_HH +#define G4PenelopeRayleighModelMI_HH 1 + +#include "globals.hh" +#include "G4VEmModel.hh" +#include "G4DataVector.hh" +#include "G4ParticleChangeForGamma.hh" + +#include "G4ExtendedMaterial.hh" +#include "G4MIData.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +class G4ParticleDefinition; +class G4DynamicParticle; +class G4MaterialCutsCouple; +class G4Material; +class G4PhysicsFreeVector; +class G4PenelopeSamplingData; + +class G4PenelopeRayleighModelMI : public G4VEmModel +{ + +public: + G4PenelopeRayleighModelMI(const G4ParticleDefinition* p = nullptr, + const G4String& processName = "PenRayleighMI"); + + virtual ~G4PenelopeRayleighModelMI(); + + virtual void Initialise(const G4ParticleDefinition*, const G4DataVector&) override; + virtual void InitialiseLocal(const G4ParticleDefinition*, + G4VEmModel *masterModel) override; + + virtual G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition*, + G4double kinEnergy, + G4double Z, + G4double A = 0, + G4double cut = 0, + G4double emax = DBL_MAX) override; + + //Overriding of parent's (G4VEmModel) method + virtual G4double CrossSectionPerVolume(const G4Material*, + const G4ParticleDefinition*, + G4double kineticEnergy, + G4double cutEnergy = 0., + G4double maxEnergy = DBL_MAX) override; + + virtual void SampleSecondaries(std::vector*, + const G4MaterialCutsCouple*, + const G4DynamicParticle*, + G4double tmin, + G4double maxEnergy) override; + + void SetVerbosityLevel(G4int lev) {verboseLevel = lev;}; + G4int GetVerbosityLevel() {return verboseLevel;}; + + //Testing purposes + void DumpFormFactorTable(const G4Material*); + + //Settings + void SetMIActive(G4bool val){fIsMIActive = val;}; + G4bool IsMIActive(){return fIsMIActive;}; + +private: + G4PenelopeRayleighModelMI& operator=(const G4PenelopeRayleighModelMI &right); + G4PenelopeRayleighModelMI(const G4PenelopeRayleighModelMI&); + void SetParticle(const G4ParticleDefinition*); + + //Helper methods + void ReadDataFile(G4int); + void ClearTables(); + void BuildFormFactorTable(const G4Material*); + void GetPMaxTable(const G4Material*); + G4double GetFSquared(const G4Material*,const G4double); + void InitializeSamplingAlgorithm(const G4Material*); + void ReadMolInterferenceData(const G4String&,const G4String& filename="NULL"); + G4MIData* GetMIData(const G4Material*); + void CalculateThetaAndAngFun(); + G4double CalculateQSquared(G4double angle, G4double energy); + G4double IntegrateFun(G4double y[], G4int n, G4double dTheta); + void LoadKnownMIFFMaterials(); + + + /// Data members + G4ParticleChangeForGamma* fParticleChange; + const G4ParticleDefinition* fParticle; + + //Intrinsic energy limits of the model: cannot be extended by the parent process + G4double fIntrinsicLowEnergyLimit; + G4double fIntrinsicHighEnergyLimit; + + G4int verboseLevel; + G4bool isInitialised; + + //Internal tables and manager methods + std::map *logAtomicCrossSection; + std::map *atomicFormFactor; + std::map *MolInterferenceData; //G. Paternò + + G4DataVector logQSquareGrid; //log(Q^2) grid for interpolation + std::map *logFormFactorTable; //log(Q^2) vs. log(F^2) + + G4DataVector logEnergyGridPMax; //energy grid for PMax (and originally for the x-section) + std::map *pMaxTable; //E vs. Pmax + std::map *samplingTable; + + //Used only for G4EmCalculator and Unit Tests + G4bool fLocalTable; + static const G4int Ntheta = 31415; + G4double fDTheta = {0.0001}; + G4bool fIsMIActive; + G4PhysicsFreeVector* angularFunction; + std::map *fKnownMaterials; + +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +#endif + diff --git a/source/processes/electromagnetic/lowenergy/include/G4QAOLowEnergyLoss.hh b/source/processes/electromagnetic/lowenergy/include/G4QAOLowEnergyLoss.hh index b3f7165bc2..34f5be8022 100644 --- a/source/processes/electromagnetic/lowenergy/include/G4QAOLowEnergyLoss.hh +++ b/source/processes/electromagnetic/lowenergy/include/G4QAOLowEnergyLoss.hh @@ -98,7 +98,7 @@ private: G4double zParticle) const; // returns the energy loss via the quantal harmonic oscillator model - // get number of shell, energy and oscillator strenghts for material + // get number of shell, energy and oscillator strengths for material G4int GetNumberOfShell(const G4Material* material) const; G4double GetShellEnergy(const G4Material* material,G4int nbOfTheShell) const; @@ -117,7 +117,7 @@ private: // Z of element at now avaliable for the model static const G4int materialAvailable[6]; - // number, energy and oscillator strenghts + // number, energy and oscillator strengths // for an harmonic oscillator model of material static const G4int nbofShellForMaterial[6]; static const G4double alShellEnergy[3]; diff --git a/source/processes/electromagnetic/lowenergy/include/G4VecpssrKModel.hh b/source/processes/electromagnetic/lowenergy/include/G4VecpssrKModel.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/lowenergy/include/G4VecpssrLiModel.hh b/source/processes/electromagnetic/lowenergy/include/G4VecpssrLiModel.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/lowenergy/include/G4ecpssrBaseKxsModel.hh b/source/processes/electromagnetic/lowenergy/include/G4ecpssrBaseKxsModel.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/lowenergy/include/G4ecpssrBaseLixsModel.hh b/source/processes/electromagnetic/lowenergy/include/G4ecpssrBaseLixsModel.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/lowenergy/include/G4empCrossSection.hh b/source/processes/electromagnetic/lowenergy/include/G4empCrossSection.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/lowenergy/sources.cmake b/source/processes/electromagnetic/lowenergy/sources.cmake index 92d02c049d..1ced8dfa15 100644 --- a/source/processes/electromagnetic/lowenergy/sources.cmake +++ b/source/processes/electromagnetic/lowenergy/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4emlowenergy # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,35 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4emlowenergy HEADERS G4AtomicDeexcitation.hh @@ -97,7 +71,7 @@ GEANT4_DEFINE_MODULE(NAME G4emlowenergy G4LivermoreBremsstrahlungModel.hh G4LivermoreComptonModel.hh G4LivermoreComptonModifiedModel.hh - G4LivermoreGammaConversion5DModel.hh + G4LivermoreGammaConversion5DModel.hh G4LivermoreGammaConversionModel.hh G4LivermoreGammaConversionModelRC.hh G4LivermoreIonisationCrossSection.hh @@ -115,18 +89,19 @@ GEANT4_DEFINE_MODULE(NAME G4emlowenergy G4LowEPComptonModel.hh G4LowEPPolarizedComptonModel.hh G4LowEWentzelVIModel.hh + G4MIData.hh G4MicroElecCrossSectionDataSet.hh G4MicroElecElastic.hh G4MicroElecElasticModel.hh G4MicroElecInelastic.hh G4MicroElecInelasticModel.hh - G4MicroElecSiStructure.hh - G4MuElecCrossSectionDataSet.hh - G4MuElecElastic.hh - G4MuElecElasticModel.hh - G4MuElecInelastic.hh - G4MuElecInelasticModel.hh - G4MuElecSiStructure.hh + G4MicroElecCrossSectionDataSet_new.hh + G4MicroElecElasticModel_new.hh + G4MicroElecInelastic_new.hh + G4MicroElecInelasticModel_new.hh + G4MicroElecLOPhononModel.hh + G4MicroElecLOPhononScattering.hh + G4MicroElecSurface.hh G4OrlicLiXsModel.hh G4PaulKxsModel.hh G4PenelopeAnnihilationModel.hh @@ -138,11 +113,12 @@ GEANT4_DEFINE_MODULE(NAME G4emlowenergy G4PenelopeGammaConversionModel.hh G4PenelopeIonisationCrossSection.hh G4PenelopeIonisationModel.hh - G4PenelopeIonisationXSHandler.hh + G4PenelopeIonisationXSHandler.hh G4PenelopeOscillator.hh G4PenelopeOscillatorManager.hh G4PenelopePhotoElectricModel.hh G4PenelopeRayleighModel.hh + G4PenelopeRayleighModelMI.hh G4PenelopeSamplingData.hh G4PhotoElectricAngularGeneratorPolarized.hh G4PhotoElectricAngularGeneratorSauterGavrila.hh @@ -220,7 +196,7 @@ GEANT4_DEFINE_MODULE(NAME G4emlowenergy G4LivermoreBremsstrahlungModel.cc G4LivermoreComptonModel.cc G4LivermoreComptonModifiedModel.cc - G4LivermoreGammaConversion5DModel.cc + G4LivermoreGammaConversion5DModel.cc G4LivermoreGammaConversionModel.cc G4LivermoreGammaConversionModelRC.cc G4LivermoreIonisationCrossSection.cc @@ -238,20 +214,21 @@ GEANT4_DEFINE_MODULE(NAME G4emlowenergy G4LowEPComptonModel.cc G4LowEPPolarizedComptonModel.cc G4LowEWentzelVIModel.cc + G4MIData.cc G4MicroElecCrossSectionDataSet.cc G4MicroElecElastic.cc G4MicroElecElasticModel.cc G4MicroElecInelastic.cc G4MicroElecInelasticModel.cc - G4MicroElecSiStructure.cc - G4MuElecCrossSectionDataSet.cc - G4MuElecElastic.cc - G4MuElecElasticModel.cc - G4MuElecInelastic.cc - G4MuElecInelasticModel.cc - G4MuElecSiStructure.cc + G4MicroElecCrossSectionDataSet_new.cc + G4MicroElecElasticModel_new.cc + G4MicroElecInelastic_new.cc + G4MicroElecInelasticModel_new.cc + G4MicroElecLOPhononModel.cc + G4MicroElecLOPhononScattering.cc + G4MicroElecSurface.cc G4OrlicLiXsModel.cc - G4PaulKxsModel.cc + G4PaulKxsModel.cc G4PenelopeAnnihilationModel.cc G4PenelopeBremsstrahlungAngular.cc G4PenelopeBremsstrahlungFS.cc @@ -266,6 +243,7 @@ GEANT4_DEFINE_MODULE(NAME G4emlowenergy G4PenelopeOscillatorManager.cc G4PenelopePhotoElectricModel.cc G4PenelopeRayleighModel.cc + G4PenelopeRayleighModelMI.cc G4PenelopeSamplingData.cc G4PhotoElectricAngularGeneratorPolarized.cc G4PhotoElectricAngularGeneratorSauterGavrila.cc diff --git a/source/processes/electromagnetic/lowenergy/src/G4FluoData.cc b/source/processes/electromagnetic/lowenergy/src/G4FluoData.cc index c1866af99d..31a26140bc 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4FluoData.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4FluoData.cc @@ -330,7 +330,7 @@ void G4FluoData::PrintData() { G4int id = StartShellId(k,i); // let's start from 1 because the first (index = 0) element of the vector - // is the id of the intial vacancy + // is the id of the initial vacancy G4double e = StartShellEnergy(k,i) /MeV; G4double p = StartShellProb(k,i); G4cout << k <<") Shell id: " << id <PutValue(i,10.*i*1e-3,Polarized_ES_Data[Z]->at(i)*1e-22); @@ -326,7 +326,7 @@ G4int energyindex=round(100*photonEnergy0)-1; //G4double theta =45.*CLHEP::pi/180.; //Theta is in degree to call scattering amplitudes G4int theta_in_degree =round(theta*180./CLHEP::pi); - + //theta_in_degree=45; G4double am1=0,am2=0,am3=0,am4=0,aparaSquare=0,aperpSquare=0,apara_aper_Asterisk=0,img_apara_aper_Asterisk=0; @@ -347,7 +347,7 @@ G4int energyindex=round(100*photonEnergy0)-1; G4ThreeVector Polarization_Linear1(0.,0.,0.); G4ThreeVector Polarization_Linear2(0.,0.,0.); G4ThreeVector Polarization_Circular(0.,0.,0.); - + //Stokes parameters for the incoming and outgoing photon G4double Xi1=0, Xi2=0, Xi3=0, Xi1_Prime=0,Xi2_Prime=0,Xi3_Prime=0; @@ -358,13 +358,14 @@ Xi1=gammaPolarization0.x(); Xi2=gammaPolarization0.y(); Xi3=gammaPolarization0.z(); -//Polarization vector must be unit vector -G4double polarization_magnitude=Xi1*Xi1+Xi2*Xi2+Xi3*Xi3; -if ((polarization_magnitude)>1 || (Xi1*Xi1>1) || (Xi2*Xi2>1) || (Xi3*Xi3>1)) -{ - G4cout<<"WARNING: G4JAEAPolarizedElasticScatteringModel is only compatible with a unit polarization vector."<1.05 || (Xi1*Xi1>1.05) || (Xi2*Xi2>1.05) || (Xi3*Xi3>1.05)) + { + G4Exception("G4JAEAPolarizedElasticScatteringModel::SampleSecondaries()","em1006", + JustWarning, + "WARNING: G4JAEAPolarizedElasticScatteringModel is only compatible with a unit polarization vector."); + return; } //Unpolarized gamma rays if (Xi1==0 && Xi2==0 && Xi3==0) @@ -509,10 +510,12 @@ G4double prob2=dsigmaL2/totalSigma; G4double probc=1-(prob1+prob2); //Check the Probability of polarization mixing -if (abs(probc - dsigmaC)>=0.0001) -{ - G4cout<<"WARNING: Polarization mixing might be incorrect."<=0.0001) + { + G4Exception("G4JAEAPolarizedElasticScatteringModel::SampleSecondaries()","em1007", + JustWarning, + "WARNING: Polarization mixing might be incorrect."); + } // Generate outgoing photon direction G4ThreeVector finaldirection(0.0,0.0,0.0); diff --git a/source/processes/electromagnetic/lowenergy/src/G4LivermoreComptonModifiedModel.cc b/source/processes/electromagnetic/lowenergy/src/G4LivermoreComptonModifiedModel.cc index ee1af5c446..16565fa385 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4LivermoreComptonModifiedModel.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4LivermoreComptonModifiedModel.cc @@ -206,7 +206,7 @@ void G4LivermoreComptonModifiedModel::SampleSecondaries(std::vector #include #include -G4MuElecCrossSectionDataSet::G4MuElecCrossSectionDataSet(G4VDataSetAlgorithm* argAlgorithm, +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + + +G4MicroElecCrossSectionDataSet_new::G4MicroElecCrossSectionDataSet_new(G4VDataSetAlgorithm* argAlgorithm, G4double argUnitEnergies, G4double argUnitData) : @@ -43,7 +46,9 @@ G4MuElecCrossSectionDataSet::G4MuElecCrossSectionDataSet(G4VDataSetAlgorithm* ar z = 0; } -G4MuElecCrossSectionDataSet::~G4MuElecCrossSectionDataSet() +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4MicroElecCrossSectionDataSet_new::~G4MicroElecCrossSectionDataSet_new() { CleanUpComponents(); @@ -51,38 +56,41 @@ G4MuElecCrossSectionDataSet::~G4MuElecCrossSectionDataSet() delete algorithm; } -G4bool G4MuElecCrossSectionDataSet::LoadData(const G4String & argFileName) +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + + +G4bool G4MicroElecCrossSectionDataSet_new::LoadData(const G4String & argFileName) { CleanUpComponents(); - + G4cout << "loaddata : " << argFileName << G4endl; G4String fullFileName(FullFileName(argFileName)); std::ifstream in(fullFileName, std::ifstream::binary|std::ifstream::in); - + if (!in.is_open()) { G4String message("Data file \""); message+=fullFileName; message+="\" not found"; - G4Exception("G4MuElecCrossSectionDataSet::LoadData","em0003", - FatalException,message); + G4Exception("G4MicroElecCrossSectionDataSet_new::LoadData","em0003", + FatalException,message); return false; } - + std::vector columns; std::vector log_columns; - + std::stringstream *stream(new std::stringstream); char c; G4bool comment(false); G4bool space(true); G4bool first(true); - + try { while (!in.eof()) { in.get(c); - + switch (c) { case '\r': @@ -91,62 +99,74 @@ G4bool G4MuElecCrossSectionDataSet::LoadData(const G4String & argFileName) { unsigned long i(0); G4double value; - + while (!stream->eof()) { (*stream) >> value; - + while (i>=columns.size()) { - columns.push_back(new G4DataVector); - log_columns.push_back(new G4DataVector); + columns.push_back(new G4DataVector); + log_columns.push_back(new G4DataVector); } - + columns[i]->push_back(value); - -// N. A. Karakatsanis -// A condition is applied to check if negative or zero values are present in the dataset. -// If yes, then a near-zero value is applied to allow the computation of the logarithmic value -// If a value is zero, this simplification is acceptable -// If a value is negative, then it is not acceptable and the data of the particular column of -// logarithmic values should not be used by interpolation methods. -// -// Therefore, G4LogLogInterpolation and G4LinLogLogInterpolation should not be used if negative values are present. -// Instead, G4LinInterpolation is safe in every case -// SemiLogInterpolation is safe only if the energy columns are non-negative -// G4LinLogInterpolation is safe only if the cross section data columns are non-negative - + + // N. A. Karakatsanis + // A condition is applied to check if negative or zero values are present in the dataset. + // If yes, then a near-zero value is applied to allow the computation of the logarithmic value + // If a value is zero, this simplification is acceptable + // If a value is negative, then it is not acceptable and the data of the particular column of + // logarithmic values should not be used by interpolation methods. + // + // Therefore, G4LogLogInterpolation and G4LinLogLogInterpolation should not be used if negative values are present. + // Instead, G4LinInterpolation is safe in every case + // SemiLogInterpolation is safe only if the energy columns are non-negative + // G4LinLogInterpolation is safe only if the cross section data columns are non-negative + if (value <=0.) value = 1e-300; log_columns[i]->push_back(std::log10(value)); - + i++; } - + delete stream; stream=new std::stringstream; } - + first=true; comment=false; space=true; break; - + case '#': comment=true; break; - + case '\t': - case ' ': - space = true; - break; - + c=' '; + break; + //case ' ': + // if (space) + // break; default: - if (comment) { break; } - if (space && (!first)) { (*stream) << ' '; } - - first=false; - (*stream) << c; - space=false; + if ((c==' ') && space) + break; + + if (comment) + break; + + if (c==' ') + space=true; + else + { + if (space && (!first)) + (*stream) << ' '; + + first=false; + (*stream) << c; + space=false; + } } } } @@ -155,43 +175,43 @@ G4bool G4MuElecCrossSectionDataSet::LoadData(const G4String & argFileName) // some implementations of STL could throw a "failture" exception // when read wants read characters after end of file } - + delete stream; - + std::vector::size_type maxI(columns.size()); - + if (maxI<2) { G4String message("Data file \""); message+=fullFileName; message+="\" should have at least two columns"; - G4Exception("G4MuElecCrossSectionDataSet::LoadData","em0005", - FatalException,message); + G4Exception("G4MicroElecCrossSectionDataSet_new::LoadData","em0005", + FatalException,message); return false; } - + std::vector::size_type i(1); while (isize()); - + if (maxJ!=columns[0]->size()) { G4String message("Data file \""); message+=fullFileName; message+="\" has lines with a different number of columns"; - G4Exception("G4MuElecCrossSectionDataSet::LoadData","em0005", + G4Exception("G4MicroElecCrossSectionDataSet_new::LoadData","em0005", FatalException,message); return false; } - + G4DataVector::size_type j(0); - + G4DataVector *argEnergies=new G4DataVector; G4DataVector *argData=new G4DataVector; G4DataVector *argLogEnergies=new G4DataVector; G4DataVector *argLogData=new G4DataVector; - + while(jpush_back(columns[0]->operator[] (j)*GetUnitEnergies()); @@ -200,12 +220,12 @@ G4bool G4MuElecCrossSectionDataSet::LoadData(const G4String & argFileName) argLogData->push_back(log_columns[i]->operator[] (j) + std::log10(GetUnitData())); j++; } - + AddComponent(new G4EMDataSet(i-1, argEnergies, argData, argLogEnergies, argLogData, GetAlgorithm()->Clone(), GetUnitEnergies(), GetUnitData())); - + i++; } - + i=maxI; while (i>0) { @@ -217,8 +237,11 @@ G4bool G4MuElecCrossSectionDataSet::LoadData(const G4String & argFileName) return true; } +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -G4bool G4MuElecCrossSectionDataSet::LoadNonLogData(const G4String & argFileName) + + +G4bool G4MicroElecCrossSectionDataSet_new::LoadNonLogData(const G4String & argFileName) { CleanUpComponents(); @@ -230,7 +253,7 @@ G4bool G4MuElecCrossSectionDataSet::LoadNonLogData(const G4String & argFileName) G4String message("Data file \""); message+=fullFileName; message+="\" not found"; - G4Exception("G4MuElecCrossSectionDataSet::LoadData","em0003", + G4Exception("G4MicroElecCrossSectionDataSet_new::LoadData","em0003", FatalException,message); return false; } @@ -284,19 +307,27 @@ G4bool G4MuElecCrossSectionDataSet::LoadNonLogData(const G4String & argFileName) case '#': comment=true; break; - - case '\t': - case ' ': - space = true; - break; - + default: - if (comment) { break; } - if (space && (!first)) { (*stream) << ' '; } + if( c=='\t') + c=' '; + if( c==' ' && space) + break; - first=false; - (*stream) << c; - space=false; + if (comment) + break; + + if (c==' ') + space=true; + else + { + if (space && (!first)) + (*stream) << ' '; + + first=false; + (*stream) << c; + space=false; + } } } } @@ -315,7 +346,7 @@ G4bool G4MuElecCrossSectionDataSet::LoadNonLogData(const G4String & argFileName) G4String message("Data file \""); message+=fullFileName; message+="\" should have at least two columns"; - G4Exception("G4MuElecCrossSectionDataSet::LoadData","em0005", + G4Exception("G4MicroElecCrossSectionDataSet_new::LoadData","em0005", FatalException,message); return false; } @@ -325,12 +356,13 @@ G4bool G4MuElecCrossSectionDataSet::LoadNonLogData(const G4String & argFileName) { G4DataVector::size_type maxJ(columns[i]->size()); + if (maxJ!=columns[0]->size()) { G4String message("Data file \""); message+=fullFileName; message+="\" has lines with a different number of columns."; - G4Exception("G4MuElecCrossSectionDataSet::LoadData","em0005", + G4Exception("G4MicroElecCrossSectionDataSet_new::LoadData","em0005", FatalException,message); return false; } @@ -362,14 +394,16 @@ G4bool G4MuElecCrossSectionDataSet::LoadNonLogData(const G4String & argFileName) return true; } +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -G4bool G4MuElecCrossSectionDataSet::SaveData(const G4String & argFileName) const + +G4bool G4MicroElecCrossSectionDataSet_new::SaveData(const G4String & argFileName) const { const size_t n(NumberOfComponents()); if (n==0) { - G4Exception("G4MuElecCrossSectionDataSet::SaveData","em0005", + G4Exception("G4MicroElecCrossSectionDataSet_new::SaveData","em0005", FatalException,"Expected at least one component"); return false; @@ -383,7 +417,7 @@ G4bool G4MuElecCrossSectionDataSet::SaveData(const G4String & argFileName) const G4String message("Cannot open \""); message+=fullFileName; message+="\""; - G4Exception("G4MuElecCrossSectionDataSet::SaveData","em0005", + G4Exception("G4MicroElecCrossSectionDataSet_new::SaveData","em0005", FatalException,message); return false; } @@ -431,27 +465,29 @@ G4bool G4MuElecCrossSectionDataSet::SaveData(const G4String & argFileName) const return true; } +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -G4String G4MuElecCrossSectionDataSet::FullFileName(const G4String& argFileName) const +G4String G4MicroElecCrossSectionDataSet_new::FullFileName(const G4String& argFileName) const { - char* path = std::getenv("G4LEDATA"); + + char *path = std::getenv("G4LEDATA"); if (!path) - { - G4Exception("G4MuElecCrossSectionDataSet::FullFileName","em0006", - FatalException,"G4LEDATA environment variable not set."); - - return ""; - } + { + G4Exception("G4MicroElecCrossSectionDataSet_new::Initialise","em0006",FatalException,"G4LEDATA environment variable not set."); + return ""; + } + + //Reading DCS file std::ostringstream fullFileName; - - fullFileName << path << "/" << argFileName << ".dat"; - + fullFileName << path << "/microelec/" << argFileName << ".dat"; return G4String(fullFileName.str().c_str()); } +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -G4double G4MuElecCrossSectionDataSet::FindValue(G4double argEnergy, G4int /* argComponentId */) const + +G4double G4MicroElecCrossSectionDataSet_new::FindValue(G4double argEnergy, G4int /* argComponentId */) const { // Returns the sum over the shells corresponding to e G4double value = 0.; @@ -468,8 +504,17 @@ G4double G4MuElecCrossSectionDataSet::FindValue(G4double argEnergy, G4int /* arg return value; } +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -void G4MuElecCrossSectionDataSet::PrintData(void) const +G4double G4MicroElecCrossSectionDataSet_new::FindShellValue(G4double argEnergy, G4int shell) const +{ + return components.at(shell)->FindValue(argEnergy); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + + +void G4MicroElecCrossSectionDataSet_new::PrintData(void) const { const size_t n(NumberOfComponents()); @@ -486,8 +531,10 @@ void G4MuElecCrossSectionDataSet::PrintData(void) const } } +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -void G4MuElecCrossSectionDataSet::SetEnergiesData(G4DataVector* argEnergies, + +void G4MicroElecCrossSectionDataSet_new::SetEnergiesData(G4DataVector* argEnergies, G4DataVector* argData, G4int argComponentId) { @@ -502,13 +549,14 @@ void G4MuElecCrossSectionDataSet::SetEnergiesData(G4DataVector* argEnergies, std::ostringstream message; message << "Component " << argComponentId << " not found"; - G4Exception("G4MuElecCrossSectionDataSet::SetEnergiesData","em0005", + G4Exception("G4MicroElecCrossSectionDataSet_new::SetEnergiesData","em0005", FatalException,message.str().c_str()); } +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -void G4MuElecCrossSectionDataSet::SetLogEnergiesData(G4DataVector* argEnergies, +void G4MicroElecCrossSectionDataSet_new::SetLogEnergiesData(G4DataVector* argEnergies, G4DataVector* argData, G4DataVector* argLogEnergies, G4DataVector* argLogData, @@ -525,13 +573,14 @@ void G4MuElecCrossSectionDataSet::SetLogEnergiesData(G4DataVector* argEnergies, std::ostringstream message; message << "Component " << argComponentId << " not found"; - G4Exception("G4MuElecCrossSectionDataSet::SetLogEnergiesData","em0005", + G4Exception("G4MicroElecCrossSectionDataSet_new::SetLogEnergiesData","em0005", FatalException,message.str().c_str()); } +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -void G4MuElecCrossSectionDataSet::CleanUpComponents() +void G4MicroElecCrossSectionDataSet_new::CleanUpComponents() { while (!components.empty()) { @@ -540,4 +589,5 @@ void G4MuElecCrossSectionDataSet::CleanUpComponents() } } +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... diff --git a/source/processes/electromagnetic/lowenergy/src/G4MicroElecElasticModel_new.cc b/source/processes/electromagnetic/lowenergy/src/G4MicroElecElasticModel_new.cc new file mode 100644 index 0000000000..cc80fce715 --- /dev/null +++ b/source/processes/electromagnetic/lowenergy/src/G4MicroElecElasticModel_new.cc @@ -0,0 +1,692 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// G4MicroElecElasticModel_new.cc, 2011/08/29 A.Valentin, M. Raine are with CEA [a] +// 2020/05/20 P. Caron, C. Inguimbert are with ONERA [b] +// Q. Gibaru is with CEA [a], ONERA [b] and CNES [c] +// M. Raine and D. Lambert are with CEA [a] +// +// A part of this work has been funded by the French space agency(CNES[c]) +// [a] CEA, DAM, DIF - 91297 ARPAJON, France +// [b] ONERA - DPHY, 2 avenue E.Belin, 31055 Toulouse, France +// [c] CNES, 18 av.E.Belin, 31401 Toulouse CEDEX, France +// +// Based on the following publications +// - A.Valentin, M. Raine, +// Inelastic cross-sections of low energy electrons in silicon +// for the simulation of heavy ion tracks with the Geant4-DNA toolkit, +// NSS Conf. Record 2010, pp. 80-85 +// https://doi.org/10.1109/NSSMIC.2010.5873720 +// +// - A.Valentin, M. Raine, M.Gaillardin, P.Paillet +// Geant4 physics processes for microdosimetry simulation: +// very low energy electromagnetic models for electrons in Silicon, +// https://doi.org/10.1016/j.nimb.2012.06.007 +// NIM B, vol. 288, pp. 66-73, 2012, part A +// heavy ions in Si, NIM B, vol. 287, pp. 124-129, 2012, part B +// https://doi.org/10.1016/j.nimb.2012.07.028 +// +// - M. Raine, M. Gaillardin, P. Paillet +// Geant4 physics processes for silicon microdosimetry simulation: +// Improvements and extension of the energy-range validity up to 10 GeV/nucleon +// NIM B, vol. 325, pp. 97-100, 2014 +// https://doi.org/10.1016/j.nimb.2014.01.014 +// +// - J. Pierron, C. Inguimbert, M. Belhaj, T. Gineste, J. Puech, M. Raine +// Electron emission yield for low energy electrons: +// Monte Carlo simulation and experimental comparison for Al, Ag, and Si +// Journal of Applied Physics 121 (2017) 215107. +// https://doi.org/10.1063/1.4984761 +// +// - P. Caron, +// Study of Electron-Induced Single-Event Upset in Integrated Memory Devices +// PHD, 16th October 2019 +// +// - Q.Gibaru, C.Inguimbert, P.Caron, M.Raine, D.Lambert, J.Puech, +// Geant4 physics processes for microdosimetry and secondary electron emission simulation : +// Extension of MicroElec to very low energies and new materials +// NIM B, 2020, in review. +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +#include "G4MicroElecElasticModel_new.hh" +#include "G4PhysicalConstants.hh" +#include "G4SystemOfUnits.hh" +#include "G4Exp.hh" +#include "G4Material.hh" +#include "G4String.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +using namespace std; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4MicroElecElasticModel_new::G4MicroElecElasticModel_new(const G4ParticleDefinition*, + const G4String& nam) + :G4VEmModel(nam), isInitialised(false) +{ + killBelowEnergy = 0.1*eV; // Minimum e- energy for energy loss by excitation + lowEnergyLimit = 0.1 * eV; + lowEnergyLimitOfModel = 10 * eV; // The model lower energy is 10 eV + highEnergyLimit = 500. * keV; + SetLowEnergyLimit(lowEnergyLimit); + SetHighEnergyLimit(highEnergyLimit); + + verboseLevel= 0; + // Verbosity scale: + // 0 = nothing + // 1 = warning for energy non-conservation + // 2 = details of energy budget + // 3 = calculation of cross sections, file openings, sampling of atoms + // 4 = entering in methods + + if( verboseLevel>0 ) + { + G4cout << "MicroElec Elastic model is constructed " << G4endl + << "Energy range: " + << lowEnergyLimit / eV << " eV - " + << highEnergyLimit / MeV << " MeV" + << G4endl; + } + fParticleChangeForGamma = 0; + + killElectron = false; + acousticModelEnabled = false; + currentMaterialName = ""; + isOkToBeInitialised = false; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4MicroElecElasticModel_new::~G4MicroElecElasticModel_new() +{ + // For total cross section + TCSMap::iterator pos2; + for (pos2 = tableTCS.begin(); pos2 != tableTCS.end(); ++pos2) { + MapData* tableData = pos2->second; + std::map< G4String, G4MicroElecCrossSectionDataSet_new*, std::less >::iterator pos; + for (pos = tableData->begin(); pos != tableData->end(); ++pos) + { + G4MicroElecCrossSectionDataSet_new* table = pos->second; + delete table; + } + delete tableData; + } + + //Clearing DCS maps + + ThetaMap::iterator iterator_angle; + for (iterator_angle = thetaDataStorage.begin(); iterator_angle != thetaDataStorage.end(); ++iterator_angle) { + TriDimensionMap* eDiffCrossSectionData = iterator_angle->second; + eDiffCrossSectionData->clear(); + delete eDiffCrossSectionData; + } + + energyMap::iterator iterator_energy; + for (iterator_energy = eIncidentEnergyStorage.begin(); iterator_energy != eIncidentEnergyStorage.end(); ++iterator_energy) { + std::vector* eTdummyVec = iterator_energy->second; + eTdummyVec->clear(); + delete eTdummyVec; + } + + ProbaMap::iterator iterator_proba; + for (iterator_proba = eProbaStorage.begin(); iterator_proba != eProbaStorage.end(); ++iterator_proba) { + VecMap* eVecm = iterator_proba->second; + eVecm->clear(); + delete eVecm; + } + +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4MicroElecElasticModel_new::Initialise(const G4ParticleDefinition* /*particle*/, + const G4DataVector& /*cuts*/) +{ + if (isOkToBeInitialised == true && isInitialised == false) { + + if (verboseLevel > -1) + G4cout << "Calling G4MicroElecElasticModel_new::Initialise()" << G4endl; + // Energy limits + // Reading of data files + + G4double scaleFactor = 1e-18 * cm * cm; + + G4ProductionCutsTable* theCoupleTable = + G4ProductionCutsTable::GetProductionCutsTable(); + G4int numOfCouples = theCoupleTable->GetTableSize(); + + for (G4int i = 0; i < numOfCouples; ++i) { + const G4Material* material = + theCoupleTable->GetMaterialCutsCouple(i)->GetMaterial(); + + //theCoupleTable->GetMaterialCutsCouple(i)->; + + G4cout << "MicroElasticModel, Material " << i + 1 << " / " << numOfCouples << " : " << material->GetName() << G4endl; + if (material->GetName() == "Vacuum") continue; + + G4String matName = material->GetName().substr(3, material->GetName().size()); + G4cout<< matName<< G4endl; + + currentMaterialStructure = new G4MicroElecMaterialStructure(matName); + lowEnergyLimitTable[matName]=currentMaterialStructure->GetElasticModelLowLimit(); + highEnergyLimitTable[matName]=currentMaterialStructure->GetElasticModelHighLimit(); + workFunctionTable[matName] = currentMaterialStructure->GetWorkFunction(); + + delete currentMaterialStructure; + + G4cout << "Reading TCS file" << G4endl; + G4String fileElectron = "Elastic/elsepa_elastic_cross_e_" + matName; + G4cout << "Elastic Total Cross file : " << fileElectron << G4endl; + + G4ParticleDefinition* electronDef = G4Electron::ElectronDefinition(); + G4String electron = electronDef->GetParticleName(); + + // For total cross section + MapData* tableData = new MapData(); + + G4MicroElecCrossSectionDataSet_new* tableE = new G4MicroElecCrossSectionDataSet_new(new G4LogLogInterpolation, eV, scaleFactor); + tableE->LoadData(fileElectron); + tableData->insert(make_pair(electron, tableE)); + tableTCS[matName] = tableData; //Storage of TCS + + // For final state + char *path = std::getenv("G4LEDATA"); + if (!path) + { + G4Exception("G4MicroElecElasticModel_new::Initialise","em0006",FatalException,"G4LEDATA environment variable not set."); + return; + } + + //Reading DCS file + std::ostringstream eFullFileName; + eFullFileName << path << "/microelec/Elastic/elsepa_elastic_cumulated_diffcross_e_" + matName + ".dat"; + G4cout << "Elastic Cumulated Diff Cross : " << eFullFileName.str().c_str() << G4endl; + std::ifstream eDiffCrossSection(eFullFileName.str().c_str()); + + if (!eDiffCrossSection) + G4Exception("G4MicroElecElasticModel_new::Initialise", "em0003", FatalException, "Missing data file: /microelec/sigmadiff_cumulated_elastic_e_Si.dat"); + + // October 21th, 2014 - Melanie Raine + // Added clear for MT + // Diff Cross Sections in cumulated mode + TriDimensionMap* eDiffCrossSectionData = new TriDimensionMap(); //Angles + std::vector* eTdummyVec = new std::vector; //Incident energy vector + VecMap* eProbVec = new VecMap; //Probabilities + + eTdummyVec->push_back(0.); + + while (!eDiffCrossSection.eof()) + { + double tDummy; //incident energy + double eProb; //Proba + eDiffCrossSection >> tDummy >> eProb; + + // SI : mandatory eVecm initialization + if (tDummy != eTdummyVec->back()) + { + eTdummyVec->push_back(tDummy); //adding values for incident energy points + (*eProbVec)[tDummy].push_back(0.); //adding probability for the first angle, equal to 0 + } + + eDiffCrossSection >> (*eDiffCrossSectionData)[tDummy][eProb]; //adding Angle Value to map + + if (eProb != (*eProbVec)[tDummy].back()) { + (*eProbVec)[tDummy].push_back(eProb); //Adding cumulated proba to map + } + + } + + //Filling maps for the material + thetaDataStorage[matName] = eDiffCrossSectionData; + eIncidentEnergyStorage[matName] = eTdummyVec; + eProbaStorage[matName] = eProbVec; + } + // End final state + + if (verboseLevel > 2) + G4cout << "Loaded cross section files for MicroElec Elastic model" << G4endl; + + if (verboseLevel > 0) + { + G4cout << "MicroElec Elastic model is initialized " << G4endl + << "Energy range: " + << LowEnergyLimit() / eV << " eV - " + << HighEnergyLimit() / MeV << " MeV" + << G4endl; // system("pause"); linux doesn't like + } + + if (isInitialised) { return; } + fParticleChangeForGamma = GetParticleChangeForGamma(); + isInitialised = true; + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecElasticModel_new::CrossSectionPerVolume(const G4Material* material, + const G4ParticleDefinition* p, + G4double ekin, + G4double, + G4double) +{ + if (verboseLevel > 3) + G4cout << "Calling CrossSectionPerVolume() of G4MicroElecElasticModel" << G4endl; + + isOkToBeInitialised = true; + currentMaterialName = material->GetName().substr(3, material->GetName().size()); + const G4DataVector cuts; + Initialise(p, cuts); + // Calculate total cross section for model + MapEnergy::iterator lowEPos; + lowEPos = lowEnergyLimitTable.find(currentMaterialName); + + MapEnergy::iterator highEPos; + highEPos = highEnergyLimitTable.find(currentMaterialName); + + MapEnergy::iterator killEPos; + killEPos = workFunctionTable.find(currentMaterialName); + + if (lowEPos == lowEnergyLimitTable.end() || highEPos == highEnergyLimitTable.end() || killEPos == workFunctionTable.end()) + { + G4String str = "Material "; + str += currentMaterialName + " not found!"; + G4Exception("G4MicroElecElasticModel_new::EnergyLimits", "em0002", FatalException, str); + return 0; + } + else { + // G4cout << "normal elastic " << G4endl; + lowEnergyLimit = lowEPos->second; + highEnergyLimit = highEPos->second; + killBelowEnergy = killEPos->second; + + } + + if (ekin < killBelowEnergy) { + + return DBL_MAX; } + + G4double sigma=0; + + //Phonon for SiO2 + if (currentMaterialName == "SILICON_DIOXIDE" && ekin < 100 * eV) { + acousticModelEnabled = true; + + //Values for SiO2 + G4double kbz = 11.54e9, + rho = 2.2 * 1000, // [g/cm3] * 1000 + cs = 3560, //Sound speed + Ebz = 5.1 * 1.6e-19, + Aac = 17 * Ebz, //A screening parameter + Eac = 3.5 * 1.6e-19, //C deformation potential + prefactor = 2.2;// Facteur pour modifier les MFP + + return AcousticCrossSectionPerVolume(ekin, kbz, rho, cs, Aac, Eac, prefactor); + } + + //Elastic + else { + acousticModelEnabled = false; + + G4double density = material->GetTotNbOfAtomsPerVolume(); + const G4String& particleName = p->GetParticleName(); + + TCSMap::iterator tablepos; + tablepos = tableTCS.find(currentMaterialName); + + if (tablepos != tableTCS.end()) + { + MapData* tableData = tablepos->second; + + if (ekin >= lowEnergyLimit && ekin < highEnergyLimit) + { + std::map< G4String, G4MicroElecCrossSectionDataSet_new*, std::less >::iterator pos; + pos = tableData->find(particleName); + + if (pos != tableData->end()) + { + G4MicroElecCrossSectionDataSet_new* table = pos->second; + if (table != 0) + { + sigma = table->FindValue(ekin); + } + } + else + { + G4Exception("G4MicroElecElasticModel_new::ComputeCrossSectionPerVolume", "em0002", FatalException, "Model not applicable to particle type."); + } + } + else return 1 / DBL_MAX; + } + else + { + G4String str = "Material "; + str += currentMaterialName + " TCS table not found!"; + G4Exception("G4MicroElecElasticModel_new::ComputeCrossSectionPerVolume", "em0002", FatalException, str); + } + + if (verboseLevel > 3) + { + G4cout << "---> Kinetic energy(eV)=" << ekin / eV << G4endl; + G4cout << " - Cross section per Si atom (cm^2)=" << sigma / cm / cm << G4endl; + G4cout << " - Cross section per Si atom (cm^-1)=" << sigma*density / (1. / cm) << G4endl; + } + return sigma*density; + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecElasticModel_new::AcousticCrossSectionPerVolume(G4double ekin, + G4double kbz, + G4double rho, + G4double cs, + G4double Aac, + G4double Eac, + G4double prefactor) +{ + + G4double e = 1.6e-19, + m0 = 9.10938356e-31, + h = 1.0546e-34, + kb = 1.38e-23; + + G4double E = (ekin / eV) * e; + G4double D = (2 / (std::sqrt(2) * std::pow(pi, 2) * std::pow(h, 3))) * (1 + 2 * E) * std::pow(m0, 1.5) * std::sqrt(E); + + // Parametres SiO2 + G4double T = 300, + Ebz = (std::pow(h, 2) * std::pow(kbz, 2)) / (2 * m0), + hwbz = cs * kbz * h, + nbz = 1.0 / (exp(hwbz / (kb * T)) - 1), + Pac; + + if (E < Ebz / 4.0) + { + Pac = ((pi * kb * T) / (h * std::pow(cs, 2) * rho)) * (std::pow(Eac, 2) * D) / (1 + (E / Aac)); + } + + else if (E > Ebz) //Screened relationship + { + Pac = ((2 * pi * m0 * (2 * nbz + 1)) / (h * rho * hwbz)) * std::pow(Eac, 2) * D * E * 2 * std::pow((Aac / E), 2) * (((-E / Aac) / (1 + (E / Aac))) + log(1 + (E / Aac))); + } + else //Linear interpolation + { + G4double fEbz = ((2 * pi * m0 * (2 * nbz + 1)) / (h * rho * hwbz)) * std::pow(Eac, 2) * D * Ebz * 2 * std::pow((Aac / Ebz), 2) * (((-Ebz / Aac) / (1 + (Ebz / Aac))) + log(1 + (Ebz / Aac))); + G4double fEbz4 = ((pi * kb * T) / (h * std::pow(cs, 2) * rho)) * (std::pow(Eac, 2) * D) / (1 + ((Ebz / 4) / Aac)); + G4double alpha = ((fEbz - fEbz4) / (Ebz - (Ebz / 4))); + Pac = alpha * E + (fEbz - alpha * Ebz); + } + + G4double MFP = (std::sqrt(2 * E / m0) / (prefactor * Pac)) * m; + + return 1 / MFP; +} + + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4MicroElecElasticModel_new::SampleSecondaries(std::vector* /*fvect*/, + const G4MaterialCutsCouple* /*couple*/, + const G4DynamicParticle* aDynamicElectron, + G4double, + G4double) +{ + + if (verboseLevel > 3) + G4cout << "Calling SampleSecondaries() of G4MicroElecElasticModel" << G4endl; + + G4double electronEnergy0 = aDynamicElectron->GetKineticEnergy(); + + if (electronEnergy0 < killBelowEnergy) + { + fParticleChangeForGamma->SetProposedKineticEnergy(0.); + fParticleChangeForGamma->ProposeTrackStatus(fStopAndKill); + fParticleChangeForGamma->ProposeLocalEnergyDeposit(electronEnergy0); + return; + } + + if (electronEnergy0 < highEnergyLimit) + { + G4double cosTheta = 0; + if (acousticModelEnabled) + { + cosTheta = 1 - 2 * G4UniformRand(); //Isotrope + } + else if (electronEnergy0 >= lowEnergyLimit) + { + cosTheta = RandomizeCosTheta(electronEnergy0); + } + + G4double phi = 2. * pi * G4UniformRand(); + + G4ThreeVector zVers = aDynamicElectron->GetMomentumDirection(); + G4ThreeVector xVers = zVers.orthogonal(); + G4ThreeVector yVers = zVers.cross(xVers); + + G4double xDir = std::sqrt(1. - cosTheta*cosTheta); + G4double yDir = xDir; + xDir *= std::cos(phi); + yDir *= std::sin(phi); + + G4ThreeVector zPrimeVers((xDir*xVers + yDir*yVers + cosTheta*zVers)); + + fParticleChangeForGamma->ProposeMomentumDirection(zPrimeVers.unit()); + fParticleChangeForGamma->SetProposedKineticEnergy(electronEnergy0); + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecElasticModel_new::DamageEnergy(G4double T,G4double A, G4double Z) +{ + //.................. T in eV!!!!!!!!!!!!! + G4double Z2= Z; + G4double M2= A; + G4double k_d; + G4double epsilon_d; + G4double g_epsilon_d; + G4double E_nu; + + k_d=0.1334*std::pow(Z2,(2./3.))*std::pow(M2,(-1./2.)); + epsilon_d=0.01014*std::pow(Z2,(-7./3.))*(T/eV); + g_epsilon_d= epsilon_d+0.40244*std::pow(epsilon_d,(3./4.))+3.4008*std::pow(epsilon_d,(1./6.)); + + E_nu=1./(1.+ k_d*g_epsilon_d); + + return E_nu; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecElasticModel_new::Theta + (G4ParticleDefinition * particleDefinition, G4double k, G4double integrDiff) +{ + + G4double theta = 0.; + G4double valueT1 = 0; + G4double valueT2 = 0; + G4double valueE21 = 0; + G4double valueE22 = 0; + G4double valueE12 = 0; + G4double valueE11 = 0; + G4double xs11 = 0; + G4double xs12 = 0; + G4double xs21 = 0; + G4double xs22 = 0; + + if (particleDefinition == G4Electron::ElectronDefinition()) + { + ThetaMap::iterator iterator_angle; + iterator_angle = thetaDataStorage.find(currentMaterialName); + + energyMap::iterator iterator_energy; + iterator_energy = eIncidentEnergyStorage.find(currentMaterialName); + + ProbaMap::iterator iterator_proba; + iterator_proba = eProbaStorage.find(currentMaterialName); + + if (iterator_angle != thetaDataStorage.end() && iterator_energy != eIncidentEnergyStorage.end() && iterator_proba != eProbaStorage.end()) + { + TriDimensionMap* eDiffCrossSectionData = iterator_angle->second; //Theta points + std::vector* eTdummyVec = iterator_energy->second; + VecMap* eVecm = iterator_proba->second; + + std::vector::iterator t2 = std::upper_bound(eTdummyVec->begin(), eTdummyVec->end(), k); + std::vector::iterator t1 = t2 - 1; + std::vector::iterator e12 = std::upper_bound((*eVecm)[(*t1)].begin(), (*eVecm)[(*t1)].end(), integrDiff); + std::vector::iterator e11 = e12 - 1; + std::vector::iterator e22 = std::upper_bound((*eVecm)[(*t2)].begin(), (*eVecm)[(*t2)].end(), integrDiff); + std::vector::iterator e21 = e22 - 1; + + valueT1 = *t1; + valueT2 = *t2; + valueE21 = *e21; + valueE22 = *e22; + valueE12 = *e12; + valueE11 = *e11; + + xs11 = (*eDiffCrossSectionData)[valueT1][valueE11]; + xs12 = (*eDiffCrossSectionData)[valueT1][valueE12]; + xs21 = (*eDiffCrossSectionData)[valueT2][valueE21]; + xs22 = (*eDiffCrossSectionData)[valueT2][valueE22]; + } + else + { + G4String str = "Material "; + str += currentMaterialName + " not found!"; + G4Exception("G4MicroElecElasticModel_new::ComputeCrossSectionPerVolume", "em0002", FatalException, str); + } + + } + + if (xs11==0 || xs12==0 ||xs21==0 ||xs22==0) return (0.); + + theta = QuadInterpolator( valueE11, valueE12, + valueE21, valueE22, + xs11, xs12, + xs21, xs22, + valueT1, valueT2, + k, integrDiff ); + + return theta; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecElasticModel_new::LinLogInterpolate(G4double e1, + G4double e2, + G4double e, + G4double xs1, + G4double xs2) +{ + G4double d1 = std::log(xs1); + G4double d2 = std::log(xs2); + G4double value = G4Exp(d1 + (d2 - d1)*(e - e1)/ (e2 - e1)); + return value; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecElasticModel_new::LinLinInterpolate(G4double e1, + G4double e2, + G4double e, + G4double xs1, + G4double xs2) +{ + G4double d1 = xs1; + G4double d2 = xs2; + G4double value = (d1 + (d2 - d1)*(e - e1)/ (e2 - e1)); + return value; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecElasticModel_new::LogLogInterpolate(G4double e1, + G4double e2, + G4double e, + G4double xs1, + G4double xs2) +{ + G4double a = (std::log10(xs2)-std::log10(xs1)) / (std::log10(e2)-std::log10(e1)); + G4double b = std::log10(xs2) - a*std::log10(e2); + G4double sigma = a*std::log10(e) + b; + G4double value = (std::pow(10.,sigma)); + return value; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecElasticModel_new::QuadInterpolator(G4double e11, G4double e12, + G4double e21, G4double e22, + G4double xs11, G4double xs12, + G4double xs21, G4double xs22, + G4double t1, G4double t2, + G4double t, G4double e) +{ + + + // Lin-Lin + G4double interpolatedvalue1 = LinLinInterpolate(e11, e12, e, xs11, xs12); + G4double interpolatedvalue2 = LinLinInterpolate(e21, e22, e, xs21, xs22); + G4double value = LinLinInterpolate(t1, t2, t, interpolatedvalue1, interpolatedvalue2); + + return value; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecElasticModel_new::RandomizeCosTheta(G4double k) +{ + G4double integrdiff=0; + G4double uniformRand=G4UniformRand(); + integrdiff = uniformRand; + + G4double theta=0.; + G4double cosTheta=0.; + theta = Theta(G4Electron::ElectronDefinition(),k/eV,integrdiff); + + cosTheta= std::cos(theta*pi/180.); + + return cosTheta; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + + +void G4MicroElecElasticModel_new::SetKillBelowThreshold (G4double threshold) +{ + killBelowEnergy = threshold; + + if (threshold < 5*CLHEP::eV) + { + G4Exception ("*** WARNING : the G4MicroElecElasticModel class is not validated below 5 eV !","",JustWarning,"") ; + threshold = 5*CLHEP::eV; + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... diff --git a/source/processes/electromagnetic/lowenergy/src/G4MicroElecInelasticModel.cc b/source/processes/electromagnetic/lowenergy/src/G4MicroElecInelasticModel.cc index 3a4da984f8..8280b5c876 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4MicroElecInelasticModel.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4MicroElecInelasticModel.cc @@ -1075,7 +1075,7 @@ G4double G4MicroElecInelasticModel::TransferedEnergy(G4ParticleDefinition* parti nrjTransf21, nrjTransf22); - // zeros are explicitely set + // zeros are explicitly set G4double value = Interpolate(valueK1, valueK2, k, 0., interpolatedvalue2); @@ -1197,7 +1197,7 @@ G4double G4MicroElecInelasticModel::TransferedEnergy(G4ParticleDefinition* parti nrjTransf21, nrjTransf22); - // zeros are explicitely set + // zeros are explicitly set G4double value = Interpolate(valueK1, valueK2, k, 0., interpolatedvalue2); diff --git a/source/processes/electromagnetic/lowenergy/src/G4MicroElecInelasticModel_new.cc b/source/processes/electromagnetic/lowenergy/src/G4MicroElecInelasticModel_new.cc new file mode 100644 index 0000000000..2c9a461cca --- /dev/null +++ b/source/processes/electromagnetic/lowenergy/src/G4MicroElecInelasticModel_new.cc @@ -0,0 +1,1406 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// G4MicroElecInelasticModel_new.cc, 2011/08/29 A.Valentin, M. Raine are with CEA [a] +// 2020/05/20 P. Caron, C. Inguimbert are with ONERA [b] +// Q. Gibaru is with CEA [a], ONERA [b] and CNES [c] +// M. Raine and D. Lambert are with CEA [a] +// +// A part of this work has been funded by the French space agency(CNES[c]) +// [a] CEA, DAM, DIF - 91297 ARPAJON, France +// [b] ONERA - DPHY, 2 avenue E.Belin, 31055 Toulouse, France +// [c] CNES, 18 av.E.Belin, 31401 Toulouse CEDEX, France +// +// Based on the following publications +// - A.Valentin, M. Raine, +// Inelastic cross-sections of low energy electrons in silicon +// for the simulation of heavy ion tracks with the Geant4-DNA toolkit, +// NSS Conf. Record 2010, pp. 80-85 +// https://doi.org/10.1109/NSSMIC.2010.5873720 +// +// - A.Valentin, M. Raine, M.Gaillardin, P.Paillet +// Geant4 physics processes for microdosimetry simulation: +// very low energy electromagnetic models for electrons in Silicon, +// https://doi.org/10.1016/j.nimb.2012.06.007 +// NIM B, vol. 288, pp. 66-73, 2012, part A +// heavy ions in Si, NIM B, vol. 287, pp. 124-129, 2012, part B +// https://doi.org/10.1016/j.nimb.2012.07.028 +// +// - M. Raine, M. Gaillardin, P. Paillet +// Geant4 physics processes for silicon microdosimetry simulation: +// Improvements and extension of the energy-range validity up to 10 GeV/nucleon +// NIM B, vol. 325, pp. 97-100, 2014 +// https://doi.org/10.1016/j.nimb.2014.01.014 +// +// - J. Pierron, C. Inguimbert, M. Belhaj, T. Gineste, J. Puech, M. Raine +// Electron emission yield for low energy electrons: +// Monte Carlo simulation and experimental comparison for Al, Ag, and Si +// Journal of Applied Physics 121 (2017) 215107. +// https://doi.org/10.1063/1.4984761 +// +// - P. Caron, +// Study of Electron-Induced Single-Event Upset in Integrated Memory Devices +// PHD, 16th October 2019 +// +// - Q.Gibaru, C.Inguimbert, P.Caron, M.Raine, D.Lambert, J.Puech, +// Geant4 physics processes for microdosimetry and secondary electron emission simulation : +// Extension of MicroElec to very low energies and new materials +// NIM B, 2020, in review. +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + + +#include "globals.hh" +#include "G4MicroElecInelasticModel_new.hh" +#include "G4PhysicalConstants.hh" +#include "G4SystemOfUnits.hh" +#include "G4ios.hh" +#include "G4UnitsTable.hh" +#include "G4UAtomicDeexcitation.hh" +#include "G4LossTableManager.hh" +#include "G4ionEffectiveCharge.hh" +#include "G4MicroElecMaterialStructure.hh" +#include "G4DeltaAngle.hh" + +#include + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +using namespace std; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4MicroElecInelasticModel_new::G4MicroElecInelasticModel_new( + const G4ParticleDefinition*, const G4String& nam) + :G4VEmModel(nam),isInitialised(false) +{ + + verboseLevel= 0; + // Verbosity scale: + // 0 = nothing + // 1 = warning for energy non-conservation + // 2 = details of energy budget + // 3 = calculation of cross sections, file openings, sampling of atoms + // 4 = entering in methods + + if( verboseLevel>0 ) + { + G4cout << "MicroElec inelastic model is constructed " << G4endl; + } + + //Mark this model as "applicable" for atomic deexcitation + SetDeexcitationFlag(true); + fAtomDeexcitation = 0; + fParticleChangeForGamma = 0; + + // default generator + SetAngularDistribution(new G4DeltaAngle()); + + fasterCode = true; + +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4MicroElecInelasticModel_new::~G4MicroElecInelasticModel_new() +{ + // Cross section + // (0) + TCSMap::iterator pos2; + for (pos2 = tableTCS.begin(); pos2 != tableTCS.end(); ++pos2) { + MapData* tableData = pos2->second; + std::map< G4String, G4MicroElecCrossSectionDataSet_new*, std::less >::iterator pos; + for (pos = tableData->begin(); pos != tableData->end(); ++pos) + { + G4MicroElecCrossSectionDataSet_new* table = pos->second; + delete table; + } + delete tableData; + } + tableTCS.clear(); + + dataDiffCSMap::iterator iterator_proba; + + // (1) + for (iterator_proba = eNrjTransStorage.begin(); iterator_proba != eNrjTransStorage.end(); ++iterator_proba) { + vector* eNrjTransfData = iterator_proba->second; + eNrjTransfData->clear(); + delete eNrjTransfData; + } + eNrjTransStorage.clear(); + + for (iterator_proba = pNrjTransStorage.begin(); iterator_proba != pNrjTransStorage.end(); ++iterator_proba) { + vector* pNrjTransfData = iterator_proba->second; + pNrjTransfData->clear(); + delete pNrjTransfData; + } + pNrjTransStorage.clear(); + + // (2) + for (iterator_proba = eDiffDatatable.begin(); iterator_proba != eDiffDatatable.end(); ++iterator_proba) { + vector* eDiffCrossSectionData = iterator_proba->second; + eDiffCrossSectionData->clear(); + delete eDiffCrossSectionData; + } + eDiffDatatable.clear(); + + for (iterator_proba = pDiffDatatable.begin(); iterator_proba != pDiffDatatable.end(); ++iterator_proba) { + vector* pDiffCrossSectionData = iterator_proba->second; + pDiffCrossSectionData->clear(); + delete pDiffCrossSectionData; + } + pDiffDatatable.clear(); + + // (3) + dataProbaShellMap::iterator iterator_probaShell; + + for (iterator_probaShell = eProbaShellStorage.begin(); iterator_probaShell != eProbaShellStorage.end(); ++iterator_probaShell) { + vector* eProbaShellMap = iterator_probaShell->second; + eProbaShellMap->clear(); + delete eProbaShellMap; + } + eProbaShellStorage.clear(); + + for (iterator_probaShell = pProbaShellStorage.begin(); iterator_probaShell != pProbaShellStorage.end(); ++iterator_probaShell) { + vector* pProbaShellMap = iterator_probaShell->second; + pProbaShellMap->clear(); + delete pProbaShellMap; + } + pProbaShellStorage.clear(); + + // (4) + TranfEnergyMap::iterator iterator_nrjtransf; + for (iterator_nrjtransf = eVecmStorage.begin(); iterator_nrjtransf != eVecmStorage.end(); ++iterator_nrjtransf) { + VecMap* eVecm = iterator_nrjtransf->second; + eVecm->clear(); + delete eVecm; + } + eVecmStorage.clear(); + for (iterator_nrjtransf = pVecmStorage.begin(); iterator_nrjtransf != pVecmStorage.end(); ++iterator_nrjtransf) { + VecMap* pVecm = iterator_nrjtransf->second; + pVecm->clear(); + delete pVecm; + } + pVecmStorage.clear(); + + // (5) + incidentEnergyMap::iterator iterator_energy; + for (iterator_energy = eIncidentEnergyStorage.begin(); iterator_energy != eIncidentEnergyStorage.end(); ++iterator_energy) { + std::vector* eTdummyVec = iterator_energy->second; + eTdummyVec->clear(); + delete eTdummyVec; + } + eIncidentEnergyStorage.clear(); + + for (iterator_energy = pIncidentEnergyStorage.begin(); iterator_energy != pIncidentEnergyStorage.end(); ++iterator_energy) { + std::vector* pTdummyVec = iterator_energy->second; + pTdummyVec->clear(); + delete pTdummyVec; + } + pIncidentEnergyStorage.clear(); + + // (6) + MapStructure::iterator iterator_matStructure; + for (iterator_matStructure = tableMaterialsStructures.begin(); iterator_matStructure != tableMaterialsStructures.end(); ++iterator_matStructure) { + currentMaterialStructure = iterator_matStructure->second; + delete currentMaterialStructure; + } + tableMaterialsStructures.clear(); + currentMaterialStructure = nullptr; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4MicroElecInelasticModel_new::Initialise(const G4ParticleDefinition* particle, + const G4DataVector& /*cuts*/) +{ + if (isInitialised) { return; } + + if (verboseLevel > 3) + G4cout << "Calling G4MicroElecInelasticModel_new::Initialise()" << G4endl; + + char* path = std::getenv("G4LEDATA"); + if (!path) + { + G4Exception("G4MicroElecElasticModel_new::Initialise","em0006",FatalException,"G4LEDATA environment variable not set."); + return; + } + + G4String modelName = "mermin"; + G4cout << "****************************" << G4endl; + G4cout << modelName << " model loaded !" << G4endl; + + // Energy limits + G4ParticleDefinition* electronDef = G4Electron::ElectronDefinition(); + G4ParticleDefinition* protonDef = G4Proton::ProtonDefinition(); + G4String electron = electronDef->GetParticleName(); + G4String proton = protonDef->GetParticleName(); + + G4double scaleFactor = 1.0; + + // *** ELECTRON + lowEnergyLimit[electron] = 2 * eV; + highEnergyLimit[electron] = 10.0 * MeV; + + // Cross section + G4ProductionCutsTable* theCoupleTable = G4ProductionCutsTable::GetProductionCutsTable(); + G4int numOfCouples = theCoupleTable->GetTableSize(); + + for (G4int i = 0; i < numOfCouples; ++i) { + const G4Material* material = theCoupleTable->GetMaterialCutsCouple(i)->GetMaterial(); + G4cout << "Material " << i + 1 << " / " << numOfCouples << " : " << material->GetName() << G4endl; + if (material->GetName() == "Vacuum") continue; + G4String mat = material->GetName().substr(3, material->GetName().size()); + MapData* tableData = new MapData; + currentMaterialStructure = new G4MicroElecMaterialStructure(mat); + + tableMaterialsStructures[mat] = currentMaterialStructure; + if (particle == electronDef) { + //TCS + G4String fileElectron("Inelastic/" + modelName + "_sigma_inelastic_e-_" + mat); + G4cout << fileElectron << G4endl; + G4MicroElecCrossSectionDataSet_new* tableE = new G4MicroElecCrossSectionDataSet_new(new G4LogLogInterpolation, MeV, scaleFactor); + tableE->LoadData(fileElectron); + tableData->insert(make_pair(electron, tableE)); + + // DCS + std::ostringstream eFullFileName; + if (fasterCode) { + eFullFileName << path << "/microelec/Inelastic/cumulated_" + modelName + "_sigmadiff_inelastic_e-_" + mat + ".dat"; + G4cout << "Faster code = true" << G4endl; + G4cout << "Inelastic/cumulated_" + modelName + "_sigmadiff_inelastic_e-_" + mat + ".dat" << G4endl; + } + else { + eFullFileName << path << "/microelec/Inelastic/" + modelName + "_sigmadiff_inelastic_e-_" + mat + ".dat"; + G4cout << "Faster code = false" << G4endl; + G4cout << "Inelastic/" + modelName + "_sigmadiff_inelastic_e-_" + mat + ".dat" << G4endl; + } + + std::ifstream eDiffCrossSection(eFullFileName.str().c_str()); + if (!eDiffCrossSection) + { + std::stringstream ss; + ss << "Missing data " << eFullFileName.str().c_str(); + std::string sortieString = ss.str(); + + if (fasterCode) G4Exception("G4MicroElecInelasticModel_new::Initialise", "em0003", + FatalException, sortieString.c_str()); + + else { + G4Exception("G4MicroElecInelasticModel_new::Initialise", "em0003", + FatalException, "Missing data file:/microelec/sigmadiff_inelastic_e_Si.dat"); + } + } + + // Clear the arrays for re-initialization case (MT mode) + // Octobre 22nd, 2014 - Melanie Raine + //Creating vectors of maps for DCS and Cumulated DCS for the current material. + //Each vector is storing one map for each shell. + + vector* eDiffCrossSectionData = new vector; //Storage of [IncidentEnergy, TransfEnergy, DCS values], used in slower code + vector* eNrjTransfData = new vector; //Storage of possible transfer energies by shell + vector* eProbaShellMap = new vector; //Storage of the vectors containing all cumulated DCS values for an initial energy, by shell + vector* eTdummyVec = new vector; //Storage of incident energies for interpolation + VecMap* eVecm = new VecMap; //Transfered energy map for slower code + + for (int j = 0; j < currentMaterialStructure->NumberOfLevels(); j++) //Filling the map vectors with an empty map for each shell + { + eDiffCrossSectionData->push_back(TriDimensionMap()); + eNrjTransfData->push_back(TriDimensionMap()); + eProbaShellMap->push_back(VecMap()); + } + + eTdummyVec->push_back(0.); + while (!eDiffCrossSection.eof()) + { + G4double tDummy; //incident energy + G4double eDummy; //transfered energy + eDiffCrossSection >> tDummy >> eDummy; + if (tDummy != eTdummyVec->back()) eTdummyVec->push_back(tDummy); + + G4double tmp; //probability + for (int j = 0; j < currentMaterialStructure->NumberOfLevels(); j++) + { + eDiffCrossSection >> tmp; + (*eDiffCrossSectionData)[j][tDummy][eDummy] = tmp; + + if (fasterCode) + { + (*eNrjTransfData)[j][tDummy][(*eDiffCrossSectionData)[j][tDummy][eDummy]] = eDummy; + (*eProbaShellMap)[j][tDummy].push_back((*eDiffCrossSectionData)[j][tDummy][eDummy]); + } + else { // SI - only if eof is not reached ! + if (!eDiffCrossSection.eof()) (*eDiffCrossSectionData)[j][tDummy][eDummy] *= scaleFactor; + (*eVecm)[tDummy].push_back(eDummy); + } + } + } + // + G4cout << "add to material vector" << G4endl; + + //Filing maps for the current material into the master maps + if (fasterCode) { + eNrjTransStorage[mat] = eNrjTransfData; + eProbaShellStorage[mat] = eProbaShellMap; + } + else { + eDiffDatatable[mat] = eDiffCrossSectionData; + eVecmStorage[mat] = eVecm; + } + eIncidentEnergyStorage[mat] = eTdummyVec; + } + + // *** PROTON + if (particle == protonDef) + { + // Cross section + G4String fileProton("Inelastic/" + modelName + "_sigma_inelastic_p_" + mat); G4cout << fileProton << G4endl; + G4MicroElecCrossSectionDataSet_new* tableP = new G4MicroElecCrossSectionDataSet_new(new G4LogLogInterpolation, MeV, scaleFactor); + tableP->LoadData(fileProton); + tableData->insert(make_pair(proton, tableP)); + + // DCS + std::ostringstream pFullFileName; + if (fasterCode) { + pFullFileName << path << "/microelec/Inelastic/cumulated_" + modelName + "_sigmadiff_inelastic_p_" + mat + ".dat"; + G4cout << "Faster code = true" << G4endl; + G4cout << "Inelastic/cumulated_" + modelName + "_sigmadiff_inelastic_p_" + mat + ".dat" << G4endl; + } + else { + pFullFileName << path << "/microelec/Inelastic/" + modelName + "_sigmadiff_inelastic_p_" + mat + ".dat"; + G4cout << "Faster code = false" << G4endl; + G4cout << "Inelastic/" + modelName + "_sigmadiff_inelastic_e-_" + mat + ".dat" << G4endl; + } + + std::ifstream pDiffCrossSection(pFullFileName.str().c_str()); + if (!pDiffCrossSection) + { + if (fasterCode) G4Exception("G4MicroElecInelasticModel_new::Initialise", "em0003", + FatalException, "Missing data file:/microelec/sigmadiff_cumulated_inelastic_p_Si.dat"); + else { + G4Exception("G4MicroElecInelasticModel_new::Initialise", "em0003", + FatalException, "Missing data file:/microelec/sigmadiff_inelastic_p_Si.dat"); + } + } + + // + // Clear the arrays for re-initialization case (MT mode) + // Octobre 22nd, 2014 - Melanie Raine + //Creating vectors of maps for DCS and Cumulated DCS for the current material. + //Each vector is storing one map for each shell. + + vector* pDiffCrossSectionData = new vector; //Storage of [IncidentEnergy, TransfEnergy, DCS values], used in slower code + vector* pNrjTransfData = new vector; //Storage of possible transfer energies by shell + vector* pProbaShellMap = new vector; //Storage of the vectors containing all cumulated DCS values for an initial energy, by shell + vector* pTdummyVec = new vector; //Storage of incident energies for interpolation + VecMap* eVecm = new VecMap; //Transfered energy map for slower code + G4cout << "proton " << currentMaterialStructure->GetMaterialName() << G4endl; + for (int j = 0; j < currentMaterialStructure->NumberOfLevels(); j++) + //Filling the map vectors with an empty map for each shell + { + //G4cout << j << G4endl; + pDiffCrossSectionData->push_back(TriDimensionMap()); + pNrjTransfData->push_back(TriDimensionMap()); + pProbaShellMap->push_back(VecMap()); + } + + pTdummyVec->push_back(0.); + while (!pDiffCrossSection.eof()) + { + G4double tDummy; //incident energy + G4double eDummy; //transfered energy + pDiffCrossSection >> tDummy >> eDummy; + if (tDummy != pTdummyVec->back()) pTdummyVec->push_back(tDummy); + + G4double tmp; //probability + for (int j = 0; j < currentMaterialStructure->NumberOfLevels(); j++) + { + pDiffCrossSection >> tmp; + (*pDiffCrossSectionData)[j][tDummy][eDummy] = tmp; + // ArrayofMaps[j] -> fill with 3DMap(incidentEnergy, + // 2Dmap (transferedEnergy,proba=tmp) ) -> fill map for shell j + // with proba for transfered energy eDummy + + if (fasterCode) + { + (*pNrjTransfData)[j][tDummy][(*pDiffCrossSectionData)[j][tDummy][eDummy]] = eDummy; + (*pProbaShellMap)[j][tDummy].push_back((*pDiffCrossSectionData)[j][tDummy][eDummy]); + } + else { // SI - only if eof is not reached ! + if (!pDiffCrossSection.eof()) (*pDiffCrossSectionData)[j][tDummy][eDummy] *= scaleFactor; + (*eVecm)[tDummy].push_back(eDummy); + } + } + } + + // + G4cout << "add to material vector" << G4endl; + + //Filing maps for the current material into the master maps + if (fasterCode) { + pNrjTransStorage[mat] = pNrjTransfData; + pProbaShellStorage[mat] = pProbaShellMap; + } + else { + pDiffDatatable[mat] = pDiffCrossSectionData; + pVecmStorage[mat] = eVecm; + } + pIncidentEnergyStorage[mat] = pTdummyVec; + } + + + tableTCS[mat] = tableData;} + if (particle==electronDef) + { + SetLowEnergyLimit(lowEnergyLimit[electron]); + SetHighEnergyLimit(highEnergyLimit[electron]); + } + + if (particle==protonDef) + { + SetLowEnergyLimit(100*eV); + SetHighEnergyLimit(10*MeV); + } + + if( verboseLevel>1 ) + { + G4cout << "MicroElec Inelastic model is initialized " << G4endl + << "Energy range: " + << LowEnergyLimit() / keV << " keV - " + << HighEnergyLimit() / MeV << " MeV for " + << particle->GetParticleName() + << " with mass (amu) " << particle->GetPDGMass()/proton_mass_c2 + << " and charge " << particle->GetPDGCharge() + << G4endl << G4endl ; + } + + fAtomDeexcitation = G4LossTableManager::Instance()->AtomDeexcitation(); + + fParticleChangeForGamma = GetParticleChangeForGamma(); + isInitialised = true; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecInelasticModel_new::CrossSectionPerVolume(const G4Material* material, + const G4ParticleDefinition* particleDefinition, + G4double ekin, + G4double, + G4double) +{ + if (verboseLevel > 3) G4cout << "Calling CrossSectionPerVolume() of G4MicroElecInelasticModel" << G4endl; + + G4double density = material->GetTotNbOfAtomsPerVolume(); + + currentMaterial = material->GetName().substr(3, material->GetName().size()); + + MapStructure::iterator structPos; + structPos = tableMaterialsStructures.find(currentMaterial); + + // Calculate total cross section for model + TCSMap::iterator tablepos; + tablepos = tableTCS.find(currentMaterial); + + if (tablepos == tableTCS.end() ) + { + G4String str = "Material "; + str += currentMaterial + " TCS Table not found!"; + G4Exception("G4MicroElecInelasticModel_new::ComputeCrossSectionPerVolume", "em0002", FatalException, str); + return 0; + } + else if(structPos == tableMaterialsStructures.end()) + { + G4String str = "Material "; + str += currentMaterial + " Structure not found!"; + G4Exception("G4MicroElecInelasticModel_new::ComputeCrossSectionPerVolume", "em0002", FatalException, str); + return 0; + } + else { + MapData* tableData = tablepos->second; + currentMaterialStructure = structPos->second; + + G4double sigma = 0; + + const G4String& particleName = particleDefinition->GetParticleName(); + G4String nameLocal = particleName; + G4int pdg = particleDefinition->GetPDGEncoding(); + G4int Z = particleDefinition->GetAtomicNumber(); + + G4double Zeff = 1.0, Zeff2 = Zeff*Zeff; + G4double Mion_c2 = particleDefinition->GetPDGMass(); + + if (Mion_c2 > proton_mass_c2) + { + ekin *= proton_mass_c2 / Mion_c2; + nameLocal = "proton"; + } + + G4double lowLim = currentMaterialStructure->GetInelasticModelLowLimit(pdg); + G4double highLim = currentMaterialStructure->GetInelasticModelHighLimit(pdg); + + if (ekin >= lowLim && ekin < highLim) + { + std::map< G4String, G4MicroElecCrossSectionDataSet_new*, std::less >::iterator pos; + pos = tableData->find(nameLocal); //find particle type + + if (pos != tableData->end()) + { + G4MicroElecCrossSectionDataSet_new* table = pos->second; + if (table != 0) + { + sigma = table->FindValue(ekin); + + if (Mion_c2 > proton_mass_c2) { + sigma = 0.; + for (G4int i = 0; i < currentMaterialStructure->NumberOfLevels(); i++) { + Zeff = BKZ(ekin / (proton_mass_c2 / Mion_c2), Mion_c2 / c_squared, Z, currentMaterialStructure->Energy(i)); // il faut garder le vrai ekin car le calcul à l'interieur de la methode convertie l'énergie en vitesse + Zeff2 = Zeff*Zeff; + sigma += Zeff2*table->FindShellValue(ekin, i); +// il faut utiliser le ekin mis à l'echelle pour chercher la bonne +// valeur dans les tables proton + + } + } + else { + sigma = table->FindValue(ekin); + } + } + } + else + { + G4Exception("G4MicroElecInelasticModel_new::CrossSectionPerVolume", + "em0002", FatalException, + "Model not applicable to particle type."); + } + } + else + { + return 1 / DBL_MAX; + } + + if (verboseLevel > 3) + { + G4cout << "---> Kinetic energy (eV)=" << ekin / eV << G4endl; + G4cout << " - Cross section per Si atom (cm^2)=" << sigma / cm2 << G4endl; + G4cout << " - Cross section per Si atom (cm^-1)=" << sigma*density / (1. / cm) << G4endl; + } + + return (sigma)*density;} + +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4MicroElecInelasticModel_new::SampleSecondaries(std::vector* fvect, + const G4MaterialCutsCouple* couple, + const G4DynamicParticle* particle, + G4double, + G4double) +{ + + if (verboseLevel > 3) + G4cout << "Calling SampleSecondaries() of G4MicroElecInelasticModel" << G4endl; + + G4int pdg = particle->GetParticleDefinition()->GetPDGEncoding(); + G4double lowLim = currentMaterialStructure->GetInelasticModelLowLimit(pdg); + G4double highLim = currentMaterialStructure->GetInelasticModelHighLimit(pdg); + + G4double ekin = particle->GetKineticEnergy(); + G4double k = ekin ; + + G4ParticleDefinition* PartDef = particle->GetDefinition(); + const G4String& particleName = PartDef->GetParticleName(); + G4String nameLocal2 = particleName ; + G4double particleMass = particle->GetDefinition()->GetPDGMass(); + G4double originalMass = particleMass; // a passer en argument dans samplesecondaryenergy pour évaluer correctement Qmax + G4int originalZ = particle->GetDefinition()->GetAtomicNumber(); + + if (particleMass > proton_mass_c2) + { + k *= proton_mass_c2/particleMass ; + PartDef = G4Proton::ProtonDefinition(); + nameLocal2 = "proton" ; + } + + if (k >= lowLim && k < highLim) + { + G4ParticleMomentum primaryDirection = particle->GetMomentumDirection(); + G4double totalEnergy = ekin + particleMass; + G4double pSquare = ekin * (totalEnergy + particleMass); + G4double totalMomentum = std::sqrt(pSquare); + + G4int Shell = 1; + + Shell = RandomSelect(k,nameLocal2,originalMass, originalZ); + + G4double bindingEnergy = currentMaterialStructure->Energy(Shell); + G4double limitEnergy = currentMaterialStructure->GetLimitEnergy(Shell); + + if (verboseLevel > 3) + { + G4cout << "---> Kinetic energy (eV)=" << k/eV << G4endl ; + G4cout << "Shell: " << Shell << ", energy: " << bindingEnergy/eV << G4endl; + } + + // sample deexcitation + + G4int secNumberInit = 0; // need to know at a certain point the energy of secondaries + G4int secNumberFinal = 0; // So I'll make the difference and then sum the energies + + //SI: additional protection if tcs interpolation method is modified + //if (kGetZ(Shell); + G4int shellEnum = currentMaterialStructure->GetEADL_Enumerator(Shell); + if (currentMaterialStructure->IsShellWeaklyBound(Shell)) { shellEnum = -1; } + + if(fAtomDeexcitation && shellEnum >=0) { + // G4cout << "enter if deex and shell 0" << G4endl; + G4AtomicShellEnumerator as = G4AtomicShellEnumerator(shellEnum); + const G4AtomicShell* shell = fAtomDeexcitation->GetAtomicShell(Z, as); + secNumberInit = fvect->size(); + fAtomDeexcitation->GenerateParticles(fvect, shell, Z, 0, 0); + secNumberFinal = fvect->size(); + } + + G4double secondaryKinetic=-1000*eV; + if (!fasterCode) + { + secondaryKinetic = RandomizeEjectedElectronEnergy(PartDef, k, Shell, originalMass, originalZ); + } + else { + secondaryKinetic = RandomizeEjectedElectronEnergyFromCumulatedDcs(PartDef, k, Shell) ; + } + + if (verboseLevel > 3) + { + G4cout << "Ionisation process" << G4endl; + G4cout << "Shell: " << Shell << " Kin. energy (eV)=" << k/eV + << " Sec. energy (eV)=" << secondaryKinetic/eV << G4endl; + } + G4ThreeVector deltaDirection = + GetAngularDistribution()->SampleDirectionForShell(particle, secondaryKinetic, + Z, Shell, + couple->GetMaterial()); + + if (particle->GetDefinition() == G4Electron::ElectronDefinition()) + { + G4double deltaTotalMomentum = std::sqrt(secondaryKinetic*(secondaryKinetic + 2.*electron_mass_c2 )); + + G4double finalPx = totalMomentum*primaryDirection.x() - deltaTotalMomentum*deltaDirection.x(); + G4double finalPy = totalMomentum*primaryDirection.y() - deltaTotalMomentum*deltaDirection.y(); + G4double finalPz = totalMomentum*primaryDirection.z() - deltaTotalMomentum*deltaDirection.z(); + G4double finalMomentum = std::sqrt(finalPx*finalPx + finalPy*finalPy + finalPz*finalPz); + finalPx /= finalMomentum; + finalPy /= finalMomentum; + finalPz /= finalMomentum; + + G4ThreeVector direction; + direction.set(finalPx,finalPy,finalPz); + + fParticleChangeForGamma->ProposeMomentumDirection(direction.unit()) ; + } + else fParticleChangeForGamma->ProposeMomentumDirection(primaryDirection) ; + + // note that secondaryKinetic is the energy of the delta ray, not of all secondaries. + G4double deexSecEnergy = 0; + for (G4int j=secNumberInit; j < secNumberFinal; j++) { + deexSecEnergy = deexSecEnergy + (*fvect)[j]->GetKineticEnergy();} + + fParticleChangeForGamma->SetProposedKineticEnergy(ekin - secondaryKinetic-limitEnergy); //Ef = Ei-(Q-El)-El = Ei-Q + fParticleChangeForGamma->ProposeLocalEnergyDeposit(limitEnergy-deexSecEnergy); + + + if (secondaryKinetic>0) + { + G4DynamicParticle* dp = new G4DynamicParticle(G4Electron::Electron(), deltaDirection, secondaryKinetic); //Esec = Q-El + fvect->push_back(dp); + } + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4double G4MicroElecInelasticModel_new::RandomizeEjectedElectronEnergy( + const G4ParticleDefinition* particleDefinition, + G4double k, G4int shell, G4double originalMass, G4int) +{ + G4double secondaryElectronKineticEnergy=0.; + if (particleDefinition == G4Electron::ElectronDefinition()) + { + G4double maximumEnergyTransfer=k; + G4double crossSectionMaximum = 0.; + G4double minEnergy = currentMaterialStructure->GetLimitEnergy(shell); + G4double maxEnergy = maximumEnergyTransfer; + G4int nEnergySteps = 100; + + G4double value(minEnergy); + G4double stpEnergy(std::pow(maxEnergy/value, 1./static_cast(nEnergySteps-1))); + G4int step(nEnergySteps); + while (step>0) + { + --step; + G4double differentialCrossSection = + DifferentialCrossSection(particleDefinition, k, value, shell); + crossSectionMaximum = std::max(crossSectionMaximum, differentialCrossSection); + value*=stpEnergy; + } + + do + { + secondaryElectronKineticEnergy = G4UniformRand() * + (maximumEnergyTransfer-currentMaterialStructure->GetLimitEnergy(shell)); + } while(G4UniformRand()*crossSectionMaximum > + DifferentialCrossSection(particleDefinition, k, + (secondaryElectronKineticEnergy+currentMaterialStructure->GetLimitEnergy(shell)),shell)); + } + else if (particleDefinition == G4Proton::ProtonDefinition()) + { + G4double maximumEnergyTransfer = + ComputeElasticQmax(k/(proton_mass_c2/originalMass), + currentMaterialStructure->Energy(shell), + originalMass/c_squared, electron_mass_c2/c_squared); + + G4double crossSectionMaximum = 0.; + + G4double minEnergy = currentMaterialStructure->GetLimitEnergy(shell); + G4double maxEnergy = maximumEnergyTransfer; + G4int nEnergySteps = 100; + + G4double value(minEnergy); + G4double stpEnergy(std::pow(maxEnergy/value, 1./static_cast(nEnergySteps-1))); + G4int step(nEnergySteps); + + while (step>0) + { + --step; + G4double differentialCrossSection = + DifferentialCrossSection(particleDefinition, k, value, shell); + crossSectionMaximum = std::max(crossSectionMaximum, differentialCrossSection); + value*=stpEnergy; + } + + G4double energyTransfer = 0.; + do + { + energyTransfer = G4UniformRand() * maximumEnergyTransfer; + } while(G4UniformRand()*crossSectionMaximum > + DifferentialCrossSection(particleDefinition, k,energyTransfer,shell)); + + secondaryElectronKineticEnergy = + energyTransfer-currentMaterialStructure->GetLimitEnergy(shell); + + } + return std::max(secondaryElectronKineticEnergy, 0.0); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4double G4MicroElecInelasticModel_new::RandomizeEjectedElectronEnergyFromCumulatedDcs( + const G4ParticleDefinition* particleDefinition, G4double k, G4int shell) +{ + G4double secondaryElectronKineticEnergy = 0.; + G4double random = G4UniformRand(); + + secondaryElectronKineticEnergy = TransferedEnergy(particleDefinition, k, shell, random) + - currentMaterialStructure->GetLimitEnergy(shell) ; + + if (secondaryElectronKineticEnergy < 0.) { + secondaryElectronKineticEnergy = 0.; + } + return secondaryElectronKineticEnergy; +} + +G4double G4MicroElecInelasticModel_new::TransferedEnergy( + const G4ParticleDefinition* particleDefinition, + G4double k, + G4int ionizationLevelIndex, + G4double random) +{ + G4double nrj = 0.; + G4double valueK1 = 0; + G4double valueK2 = 0; + G4double valuePROB21 = 0; + G4double valuePROB22 = 0; + G4double valuePROB12 = 0; + G4double valuePROB11 = 0; + G4double nrjTransf11 = 0; + G4double nrjTransf12 = 0; + G4double nrjTransf21 = 0; + G4double nrjTransf22 = 0; + + G4double maximumEnergyTransfer1 = 0; + G4double maximumEnergyTransfer2 = 0; + G4double maximumEnergyTransferP = 4.* (electron_mass_c2 / proton_mass_c2) * k; + G4double bindingEnergy = currentMaterialStructure->GetLimitEnergy(ionizationLevelIndex); + + if (particleDefinition == G4Electron::ElectronDefinition()) + { + dataDiffCSMap::iterator iterator_Nrj; + iterator_Nrj = eNrjTransStorage.find(currentMaterial); + + dataProbaShellMap::iterator iterator_Proba; + iterator_Proba = eProbaShellStorage.find(currentMaterial); + + incidentEnergyMap::iterator iterator_Tdummy; + iterator_Tdummy = eIncidentEnergyStorage.find(currentMaterial); + + if(iterator_Nrj == eNrjTransStorage.end() || iterator_Proba == eProbaShellStorage.end() || + iterator_Tdummy == eIncidentEnergyStorage.end()) + { + G4String str = "Material "; + str += currentMaterial + " not found!"; + G4Exception("G4MicroElecInelasticModel_new::TransferedEnergy", "em0002", + FatalException, str); + } + else { + vector* eNrjTransfData = iterator_Nrj->second; //Storage of possible transfer energies + vector* eProbaShellMap = iterator_Proba->second; //Storage of probabilities for energy transfer + vector* eTdummyVec = iterator_Tdummy->second; //Incident energies for interpolation + + // k should be in eV + std::vector::iterator k2 = std::upper_bound(eTdummyVec->begin(), + eTdummyVec->end(), + k); + std::vector::iterator k1 = k2 - 1; + + // SI : the following condition avoids situations where random >last vector element + if (random <= (*eProbaShellMap)[ionizationLevelIndex][(*k1)].back() + && random <= (*eProbaShellMap)[ionizationLevelIndex][(*k2)].back()) + { + std::vector::iterator prob12 = + std::upper_bound((*eProbaShellMap)[ionizationLevelIndex][(*k1)].begin(), + (*eProbaShellMap)[ionizationLevelIndex][(*k1)].end(), + random); + + std::vector::iterator prob11 = prob12 - 1; + + std::vector::iterator prob22 = + std::upper_bound((*eProbaShellMap)[ionizationLevelIndex][(*k2)].begin(), + (*eProbaShellMap)[ionizationLevelIndex][(*k2)].end(), + random); + + std::vector::iterator prob21 = prob22 - 1; + + valueK1 = *k1; + valueK2 = *k2; + valuePROB21 = *prob21; + valuePROB22 = *prob22; + valuePROB12 = *prob12; + valuePROB11 = *prob11; + + // The following condition avoid getting transfered energy < binding energy and forces cumxs = 1 for maximum energy transfer. + if (valuePROB11 == 0) nrjTransf11 = bindingEnergy; + else nrjTransf11 = (*eNrjTransfData)[ionizationLevelIndex][valueK1][valuePROB11]; + if (valuePROB12 == 1) + { + if ((valueK1 + bindingEnergy) / 2. > valueK1) maximumEnergyTransfer1 = valueK1; + else maximumEnergyTransfer1 = (valueK1 + bindingEnergy) / 2.; + + //maximumEnergyTransfer1 = valueK1; + + nrjTransf12 = maximumEnergyTransfer1; + } + else nrjTransf12 = (*eNrjTransfData)[ionizationLevelIndex][valueK1][valuePROB12]; + + if (valuePROB21 == 0) nrjTransf21 = bindingEnergy; + else nrjTransf21 = (*eNrjTransfData)[ionizationLevelIndex][valueK2][valuePROB21]; + if (valuePROB22 == 1) + { + if ((valueK2 + bindingEnergy) / 2. > valueK2) maximumEnergyTransfer2 = valueK2; + else maximumEnergyTransfer2 = (valueK2 + bindingEnergy) / 2.; + + nrjTransf22 = maximumEnergyTransfer2; + } + else nrjTransf22 = (*eNrjTransfData)[ionizationLevelIndex][valueK2][valuePROB22]; + + } + // Avoids cases where cum xs is zero for k1 and is not for k2 (with always k1 (*eProbaShellMap)[ionizationLevelIndex][(*k1)].back()) + { + std::vector::iterator prob22 = + std::upper_bound((*eProbaShellMap)[ionizationLevelIndex][(*k2)].begin(), + (*eProbaShellMap)[ionizationLevelIndex][(*k2)].end(), + random); + + std::vector::iterator prob21 = prob22 - 1; + + valueK1 = *k1; + valueK2 = *k2; + valuePROB21 = *prob21; + valuePROB22 = *prob22; + + nrjTransf21 = (*eNrjTransfData)[ionizationLevelIndex][valueK2][valuePROB21]; + nrjTransf22 = (*eNrjTransfData)[ionizationLevelIndex][valueK2][valuePROB22]; + + G4double interpolatedvalue2 = Interpolate(valuePROB21, + valuePROB22, + random, + nrjTransf21, + nrjTransf22); + + // zeros are explicitly set + G4double value = Interpolate(valueK1, valueK2, k, 0., interpolatedvalue2); + + return value; + } + } + } + else if (particleDefinition == G4Proton::ProtonDefinition()) + { + // k should be in eV + dataDiffCSMap::iterator iterator_Nrj; + iterator_Nrj = pNrjTransStorage.find(currentMaterial); + + dataProbaShellMap::iterator iterator_Proba; + iterator_Proba = pProbaShellStorage.find(currentMaterial); + + incidentEnergyMap::iterator iterator_Tdummy; + iterator_Tdummy = pIncidentEnergyStorage.find(currentMaterial); + + if (iterator_Nrj == pNrjTransStorage.end() || iterator_Proba == pProbaShellStorage.end() || + iterator_Tdummy == pIncidentEnergyStorage.end()) + { + G4String str = "Material "; + str += currentMaterial + " not found!"; + G4Exception("G4MicroElecInelasticModel_new::TransferedEnergy", "em0002", + FatalException, str); + } + else + { + vector* pNrjTransfData = iterator_Nrj->second; //Storage of possible transfer energies + vector* pProbaShellMap = iterator_Proba->second; //Storage of probabilities for energy transfer + vector* pTdummyVec = iterator_Tdummy->second; //Incident energies for interpolation + + std::vector::iterator k2 = std::upper_bound(pTdummyVec->begin(), + pTdummyVec->end(), + k); + + std::vector::iterator k1 = k2 - 1; + + // SI : the following condition avoids situations where random > last vector element, + // for eg. when the last element is zero + if (random <= (*pProbaShellMap)[ionizationLevelIndex][(*k1)].back() + && random <= (*pProbaShellMap)[ionizationLevelIndex][(*k2)].back()) + { + std::vector::iterator prob12 = + std::upper_bound((*pProbaShellMap)[ionizationLevelIndex][(*k1)].begin(), + (*pProbaShellMap)[ionizationLevelIndex][(*k1)].end(), + random); + + std::vector::iterator prob11 = prob12 - 1; + + std::vector::iterator prob22 = + std::upper_bound((*pProbaShellMap)[ionizationLevelIndex][(*k2)].begin(), + (*pProbaShellMap)[ionizationLevelIndex][(*k2)].end(), + random); + + std::vector::iterator prob21 = prob22 - 1; + + valueK1 = *k1; + valueK2 = *k2; + valuePROB21 = *prob21; + valuePROB22 = *prob22; + valuePROB12 = *prob12; + valuePROB11 = *prob11; + + // The following condition avoid getting transfered energy < binding energy + // and forces cumxs = 1 for maximum energy transfer. + if (valuePROB11 == 0) nrjTransf11 = bindingEnergy; + else nrjTransf11 = (*pNrjTransfData)[ionizationLevelIndex][valueK1][valuePROB11]; + + if (valuePROB12 == 1) nrjTransf12 = maximumEnergyTransferP; + else nrjTransf12 = (*pNrjTransfData)[ionizationLevelIndex][valueK1][valuePROB12]; + + if (valuePROB21 == 0) nrjTransf21 = bindingEnergy; + else nrjTransf21 = (*pNrjTransfData)[ionizationLevelIndex][valueK2][valuePROB21]; + + if (valuePROB22 == 1) nrjTransf22 = maximumEnergyTransferP; + else nrjTransf22 = (*pNrjTransfData)[ionizationLevelIndex][valueK2][valuePROB22]; + + } + + // Avoids cases where cum xs is zero for k1 and is not for k2 (with always k1 (*pProbaShellMap)[ionizationLevelIndex][(*k1)].back()) + { + std::vector::iterator prob22 = + std::upper_bound((*pProbaShellMap)[ionizationLevelIndex][(*k2)].begin(), + (*pProbaShellMap)[ionizationLevelIndex][(*k2)].end(), + random); + + std::vector::iterator prob21 = prob22 - 1; + + valueK1 = *k1; + valueK2 = *k2; + valuePROB21 = *prob21; + valuePROB22 = *prob22; + + nrjTransf21 = (*pNrjTransfData)[ionizationLevelIndex][valueK2][valuePROB21]; + nrjTransf22 = (*pNrjTransfData)[ionizationLevelIndex][valueK2][valuePROB22]; + + G4double interpolatedvalue2 = Interpolate(valuePROB21, + valuePROB22, + random, + nrjTransf21, + nrjTransf22); + + // zeros are explicitly set + G4double value = Interpolate(valueK1, valueK2, k, 0., interpolatedvalue2); + + return value; + } + } + } + // End electron and proton cases + + G4double nrjTransfProduct = nrjTransf11 * nrjTransf12 * nrjTransf21 * nrjTransf22; + + if (nrjTransfProduct != 0.) + { + nrj = QuadInterpolator(valuePROB11, + valuePROB12, + valuePROB21, + valuePROB22, + nrjTransf11, + nrjTransf12, + nrjTransf21, + nrjTransf22, + valueK1, + valueK2, + k, + random); + } + + return nrj; +} + +G4double G4MicroElecInelasticModel_new::DifferentialCrossSection( + const G4ParticleDefinition * particleDefinition, + G4double k, + G4double energyTransfer, + G4int LevelIndex) +{ + G4double sigma = 0.; + + if (energyTransfer >= currentMaterialStructure->GetLimitEnergy(LevelIndex)) + { + G4double valueT1 = 0; + G4double valueT2 = 0; + G4double valueE21 = 0; + G4double valueE22 = 0; + G4double valueE12 = 0; + G4double valueE11 = 0; + + G4double xs11 = 0; + G4double xs12 = 0; + G4double xs21 = 0; + G4double xs22 = 0; + + if (particleDefinition == G4Electron::ElectronDefinition()) + { + + dataDiffCSMap::iterator iterator_Proba; + iterator_Proba = eDiffDatatable.find(currentMaterial); + + incidentEnergyMap::iterator iterator_Nrj; + iterator_Nrj = eIncidentEnergyStorage.find(currentMaterial); + + TranfEnergyMap::iterator iterator_TransfNrj; + iterator_TransfNrj = eVecmStorage.find(currentMaterial); + + if (iterator_Proba != eDiffDatatable.end() && iterator_Nrj != eIncidentEnergyStorage.end() + && iterator_TransfNrj!= eVecmStorage.end()) + { + vector* eDiffCrossSectionData = (iterator_Proba->second); + vector* eTdummyVec = iterator_Nrj->second; //Incident energies for interpolation + VecMap* eVecm = iterator_TransfNrj->second; + + // k should be in eV and energy transfer eV also + + std::vector::iterator t2 = std::upper_bound(eTdummyVec->begin(), eTdummyVec->end(), k); + std::vector::iterator t1 = t2 - 1; + // SI : the following condition avoids situations where energyTransfer >last vector element + if (energyTransfer <= (*eVecm)[(*t1)].back() && energyTransfer <= (*eVecm)[(*t2)].back()) + { + std::vector::iterator e12 = std::upper_bound((*eVecm)[(*t1)].begin(), (*eVecm)[(*t1)].end(), energyTransfer); + std::vector::iterator e11 = e12 - 1; + + std::vector::iterator e22 = std::upper_bound((*eVecm)[(*t2)].begin(), (*eVecm)[(*t2)].end(), energyTransfer); + std::vector::iterator e21 = e22 - 1; + + valueT1 = *t1; + valueT2 = *t2; + valueE21 = *e21; + valueE22 = *e22; + valueE12 = *e12; + valueE11 = *e11; + + xs11 = (*eDiffCrossSectionData)[LevelIndex][valueT1][valueE11]; + xs12 = (*eDiffCrossSectionData)[LevelIndex][valueT1][valueE12]; + xs21 = (*eDiffCrossSectionData)[LevelIndex][valueT2][valueE21]; + xs22 = (*eDiffCrossSectionData)[LevelIndex][valueT2][valueE22]; + } + } + else { + G4String str = "Material "; + str += currentMaterial + " not found!"; + G4Exception("G4MicroElecDielectricModels::DifferentialCrossSection", "em0002", FatalException, str); + } + } + + if (particleDefinition == G4Proton::ProtonDefinition()) + { + + dataDiffCSMap::iterator iterator_Proba; + iterator_Proba = pDiffDatatable.find(currentMaterial); + + incidentEnergyMap::iterator iterator_Nrj; + iterator_Nrj = pIncidentEnergyStorage.find(currentMaterial); + + TranfEnergyMap::iterator iterator_TransfNrj; + iterator_TransfNrj = pVecmStorage.find(currentMaterial); + + if (iterator_Proba != pDiffDatatable.end() && iterator_Nrj != pIncidentEnergyStorage.end() + && iterator_TransfNrj != pVecmStorage.end()) + { + vector* pDiffCrossSectionData = (iterator_Proba->second); + vector* pTdummyVec = iterator_Nrj->second; //Incident energies for interpolation + VecMap* pVecm = iterator_TransfNrj->second; + + + // k should be in eV and energy transfer eV also + std::vector::iterator t2 = + std::upper_bound(pTdummyVec->begin(), pTdummyVec->end(), k); + std::vector::iterator t1 = t2 - 1; + if (energyTransfer <= (*pVecm)[(*t1)].back() && energyTransfer <= (*pVecm)[(*t2)].back()) + { + std::vector::iterator e12 = std::upper_bound((*pVecm)[(*t1)].begin(), (*pVecm)[(*t1)].end(), energyTransfer); + std::vector::iterator e11 = e12 - 1; + + std::vector::iterator e22 = std::upper_bound((*pVecm)[(*t2)].begin(), (*pVecm)[(*t2)].end(), energyTransfer); + std::vector::iterator e21 = e22 - 1; + + valueT1 = *t1; + valueT2 = *t2; + valueE21 = *e21; + valueE22 = *e22; + valueE12 = *e12; + valueE11 = *e11; + + xs11 = (*pDiffCrossSectionData)[LevelIndex][valueT1][valueE11]; + xs12 = (*pDiffCrossSectionData)[LevelIndex][valueT1][valueE12]; + xs21 = (*pDiffCrossSectionData)[LevelIndex][valueT2][valueE21]; + xs22 = (*pDiffCrossSectionData)[LevelIndex][valueT2][valueE22]; + } + } + else { + G4String str = "Material "; + str += currentMaterial + " not found!"; + G4Exception("G4MicroElecDielectricModels::DifferentialCrossSection", "em0002", FatalException, str); + } + } + + G4double xsProduct = xs11 * xs12 * xs21 * xs22; + if (xsProduct != 0.) + { + sigma = QuadInterpolator( valueE11, valueE12, + valueE21, valueE22, + xs11, xs12, + xs21, xs22, + valueT1, valueT2, + k, energyTransfer); + } + + } + + return sigma; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + + +G4double G4MicroElecInelasticModel_new::Interpolate(G4double e1, + G4double e2, + G4double e, + G4double xs1, + G4double xs2) +{ + G4double a = (std::log10(xs2)-std::log10(xs1)) / (std::log10(e2)-std::log10(e1)); + G4double b = std::log10(xs2) - a*std::log10(e2); + G4double sigma = a*std::log10(e) + b; + G4double value = (std::pow(10.,sigma)); + return value; + +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4double G4MicroElecInelasticModel_new::QuadInterpolator(G4double e11, G4double e12, + G4double e21, G4double e22, + G4double xs11, G4double xs12, + G4double xs21, G4double xs22, + G4double t1, G4double t2, + G4double t, G4double e) +{ + G4double interpolatedvalue1 = Interpolate(e11, e12, e, xs11, xs12); + G4double interpolatedvalue2 = Interpolate(e21, e22, e, xs21, xs22); + G4double value = Interpolate(t1, t2, t, interpolatedvalue1, interpolatedvalue2); + return value; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4int G4MicroElecInelasticModel_new::RandomSelect(G4double k, const G4String& particle, G4double originalMass, G4int originalZ ) +{ + G4int level = 0; + + TCSMap::iterator tablepos; + tablepos = tableTCS.find(currentMaterial); + MapData* tableData = tablepos->second; + + std::map< G4String,G4MicroElecCrossSectionDataSet_new*,std::less >::iterator pos; + pos = tableData->find(particle); + + std::vector Zeff(currentMaterialStructure->NumberOfLevels(), 1.0); + if(originalMass>proton_mass_c2) { + for(G4int nl=0;nlNumberOfLevels();nl++) { + Zeff[nl] = BKZ(k/(proton_mass_c2/originalMass), originalMass/c_squared, originalZ, currentMaterialStructure->Energy(nl)); + } + } + + if (pos != tableData->end()) + { + G4MicroElecCrossSectionDataSet_new* table = pos->second; + + if (table != 0) + { + G4double* valuesBuffer = new G4double[table->NumberOfComponents()]; + const size_t n(table->NumberOfComponents()); + size_t i(n); + G4double value = 0.; + + while (i>0) + { + i--; + valuesBuffer[i] = table->GetComponent(i)->FindValue(k)*Zeff[i]*Zeff[i]; + value += valuesBuffer[i]; + } + value *= G4UniformRand(); + + i = n; + + while (i > 0) + { + i--; + + if (valuesBuffer[i] > value) + { + delete[] valuesBuffer; + return i; + } + value -= valuesBuffer[i]; + } + + if (valuesBuffer) delete[] valuesBuffer; + + } + } + else + { + G4Exception("G4MicroElecInelasticModel_new::RandomSelect","em0002",FatalException,"Model not applicable to particle type."); + } + + return level; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecInelasticModel_new::ComputeRelativistVelocity(G4double E, G4double mass) { + G4double x = E/mass; + return c_light*std::sqrt(x*(x + 2.0))/(x + 1.0); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecInelasticModel_new::ComputeElasticQmax(G4double T1i, G4double T2i, G4double M1, G4double M2) { + G4double v1i = ComputeRelativistVelocity(T1i, M1); + G4double v2i = ComputeRelativistVelocity(T2i, M2); + + G4double v2f = 2*M1/(M1+M2)*v1i + (M2-M1)/(M1+M2)*-1*v2i; + G4double vtransfer2a = v2f*v2f-v2i*v2i; + + v2f = 2*M1/(M1+M2)*v1i + (M2-M1)/(M1+M2)*v2i; + G4double vtransfer2b = v2f*v2f-v2i*v2i; + + G4double vtransfer2 = std::max(vtransfer2a, vtransfer2b); + return 0.5*M2*vtransfer2; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecInelasticModel_new::stepFunc(G4double x) { + return (x < 0.) ? 1.0 : 0.0; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecInelasticModel_new::vrkreussler(G4double v, G4double vF) { + G4double r = vF*( std::pow(v/vF+1., 3.) - fabs(std::pow(v/vF-1., 3.)) + 4.*(v/vF)*(v/vF) ) + stepFunc(v/vF-1.) * (3./2.*v/vF - 4.*(v/vF)*(v/vF) + 3.*std::pow(v/vF, 3.) - 0.5*std::pow(v/vF, 5.)); + return r/(10.*v/vF); +} + + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecInelasticModel_new::BKZ(G4double Ep, G4double mp, G4int Zp, G4double Eplasmon) { + // need atomic unit conversion + G4double hbar = hbar_Planck, hbar2 = hbar*hbar, me = electron_mass_c2/c_squared, Ry = me*elm_coupling*elm_coupling/(2*hbar2); + G4double hartree = 2*Ry, a0 = Bohr_radius, velocity = a0*hartree/hbar; + G4double vp = ComputeRelativistVelocity(Ep, mp); + + vp /= velocity; + + G4double wp = Eplasmon/hartree; + G4double a = std::pow(4./9./CLHEP::pi, 1./3.); + G4double vF = std::pow(wp*wp/(3.*a*a*a), 1./3.); + G4double c = 0.9; + G4double vr = vrkreussler(vp /*in u.a*/, vF /*in u.a*/); + G4double yr = vr/std::pow(Zp, 2./3.); + G4double q = 0.; + if(Zp==2) q = 1-exp(-c*vr/(Zp-5./16.)); + else q = 1.-exp(-c*(yr-0.07)); + G4double Neq = Zp*(1.-q); + G4double l0 = 0.; + if(Neq<=2) l0 = 3./(Zp-0.3*(Neq-1))/2.; + else l0 = 0.48*std::pow(Neq, 2./3.)/(Zp-Neq/7.); + if(Zp==2) c = 1.0; + else c = 3./2.; + return Zp*(q + c*(1.-q)/vF/vF/2.0 * log(1.+std::pow(2.*l0*vF,2.))); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... diff --git a/source/processes/electromagnetic/lowenergy/src/G4MicroElecInelastic_new.cc b/source/processes/electromagnetic/lowenergy/src/G4MicroElecInelastic_new.cc new file mode 100644 index 0000000000..7cd498ae7e --- /dev/null +++ b/source/processes/electromagnetic/lowenergy/src/G4MicroElecInelastic_new.cc @@ -0,0 +1,134 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// G4MicroElecInelastic_new.cc, 2011/08/29 A.Valentin, M. Raine are with CEA [a] +// 2020/05/20 P. Caron, C. Inguimbert are with ONERA [b] +// Q. Gibaru is with CEA [a], ONERA [b] and CNES [c] +// M. Raine and D. Lambert are with CEA [a] +// +// A part of this work has been funded by the French space agency(CNES[c]) +// [a] CEA, DAM, DIF - 91297 ARPAJON, France +// [b] ONERA - DPHY, 2 avenue E.Belin, 31055 Toulouse, France +// [c] CNES, 18 av.E.Belin, 31401 Toulouse CEDEX, France +// +// Based on the following publications +// - A.Valentin, M. Raine, +// Inelastic cross-sections of low energy electrons in silicon +// for the simulation of heavy ion tracks with the Geant4-DNA toolkit, +// NSS Conf. Record 2010, pp. 80-85 +// https://doi.org/10.1109/NSSMIC.2010.5873720 +// +// - A.Valentin, M. Raine, M.Gaillardin, P.Paillet +// Geant4 physics processes for microdosimetry simulation: +// very low energy electromagnetic models for electrons in Silicon, +// https://doi.org/10.1016/j.nimb.2012.06.007 +// NIM B, vol. 288, pp. 66-73, 2012, part A +// heavy ions in Si, NIM B, vol. 287, pp. 124-129, 2012, part B +// https://doi.org/10.1016/j.nimb.2012.07.028 +// +// - M. Raine, M. Gaillardin, P. Paillet +// Geant4 physics processes for silicon microdosimetry simulation: +// Improvements and extension of the energy-range validity up to 10 GeV/nucleon +// NIM B, vol. 325, pp. 97-100, 2014 +// https://doi.org/10.1016/j.nimb.2014.01.014 +// +// - J. Pierron, C. Inguimbert, M. Belhaj, T. Gineste, J. Puech, M. Raine +// Electron emission yield for low energy electrons: +// Monte Carlo simulation and experimental comparison for Al, Ag, and Si +// Journal of Applied Physics 121 (2017) 215107. +// https://doi.org/10.1063/1.4984761 +// +// - P. Caron, +// Study of Electron-Induced Single-Event Upset in Integrated Memory Devices +// PHD, 16th October 2019 +// +// - Q.Gibaru, C.Inguimbert, P.Caron, M.Raine, D.Lambert, J.Puech, +// Geant4 physics processes for microdosimetry and secondary electron emission simulation : +// Extension of MicroElec to very low energies and new materials +// NIM B, 2020, in review. +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "G4MicroElecInelastic_new.hh" +#include "G4DummyModel.hh" +#include "G4SystemOfUnits.hh" + +#include "G4Alpha.hh" +#include "G4GenericIon.hh" + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +using namespace std; + +G4MicroElecInelastic_new::G4MicroElecInelastic_new(const G4String& processName, + G4ProcessType type) + : G4VEmProcess (processName, type) +{ + SetProcessSubType(53); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4MicroElecInelastic_new::~G4MicroElecInelastic_new() +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4bool G4MicroElecInelastic_new::IsApplicable(const G4ParticleDefinition& p) +{ + return (&p == G4Electron::Electron() || + &p == G4Proton::Proton() || + &p == G4Alpha::Alpha() || + &p == G4GenericIon::GenericIonDefinition()); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4MicroElecInelastic_new::InitialiseProcess(const G4ParticleDefinition* p) +{ + if(!isInitialised) + { + isInitialised = true; + SetBuildTableFlag(false); + G4String name = p->GetParticleName(); + + if(!EmModel(0)) SetEmModel(new G4DummyModel()); + AddEmModel(2, EmModel(0)); + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void G4MicroElecInelastic_new::PrintInfo() +{ + // V.I. printout of models is performed by model manager + // if this extra printout is needed it should be + // protected by verbosity level +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + diff --git a/source/processes/electromagnetic/lowenergy/src/G4MicroElecLOPhononModel.cc b/source/processes/electromagnetic/lowenergy/src/G4MicroElecLOPhononModel.cc new file mode 100644 index 0000000000..a7a31b31a5 --- /dev/null +++ b/source/processes/electromagnetic/lowenergy/src/G4MicroElecLOPhononModel.cc @@ -0,0 +1,181 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// G4MicroElecLOPhononModel.cc, +// 2020/05/20 P. Caron, C. Inguimbert are with ONERA [b] +// Q. Gibaru is with CEA [a], ONERA [b] and CNES [c] +// M. Raine and D. Lambert are with CEA [a] +// +// A part of this work has been funded by the French space agency(CNES[c]) +// [a] CEA, DAM, DIF - 91297 ARPAJON, France +// [b] ONERA - DPHY, 2 avenue E.Belin, 31055 Toulouse, France +// [c] CNES, 18 av.E.Belin, 31401 Toulouse CEDEX, France +// +// Based on the following publications +// +// - J. Pierron, C. Inguimbert, M. Belhaj, T. Gineste, J. Puech, M. Raine +// Electron emission yield for low energy electrons: +// Monte Carlo simulation and experimental comparison for Al, Ag, and Si +// Journal of Applied Physics 121 (2017) 215107. +// https://doi.org/10.1063/1.4984761 +// +// - P. Caron, +// Study of Electron-Induced Single-Event Upset in Integrated Memory Devices +// PHD, 16th October 2019 +// +// - Q.Gibaru, C.Inguimbert, P.Caron, M.Raine, D.Lambert, J.Puech, +// Geant4 physics processes for microdosimetry and secondary electron emission simulation : +// Extension of MicroElec to very low energies and new materials +// NIM B, 2020, in review. +// +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#include "G4MicroElecLOPhononModel.hh" +#include "G4SystemOfUnits.hh" +#include "G4PhysicalConstants.hh" + +G4MicroElecLOPhononModel::G4MicroElecLOPhononModel(const G4ParticleDefinition*, + const G4String& nam) + : G4VEmModel(nam),isInitialised(false) +{ + abs = false; + fParticleChangeForGamma = GetParticleChangeForGamma(); + G4cout << "SiO2 Phonon model is constructed " << G4endl; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4MicroElecLOPhononModel::~G4MicroElecLOPhononModel() +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void G4MicroElecLOPhononModel::Initialise(const G4ParticleDefinition* /*particle*/, + const G4DataVector& /*cuts*/) +{ + + if (isOkToBeInitialised == true && isInitialised == false) { + G4cout << "Calling G4MicroElecLOPhononModel" << "::Initialise()" << G4endl; + + if (isInitialised) { return; } + fParticleChangeForGamma = GetParticleChangeForGamma(); + isInitialised = true; + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4double G4MicroElecLOPhononModel::CrossSectionPerVolume(const G4Material* material, + const G4ParticleDefinition* p, + G4double ekin, + G4double, G4double) +{ + G4double e = CLHEP::eplus / coulomb, + + m0 = CLHEP::electron_mass_c2 / c_squared / kg, + h = CLHEP::hbar_Planck / (m2*kg / s), + eps0 = CLHEP::epsilon0 / (farad / m), + kb = CLHEP::k_Boltzmann / (joule / kelvin); + G4double eps = 9, + einf = 3, + T = 300; + + isOkToBeInitialised = true; + + const G4DataVector cuts; + Initialise(p, cuts); + + if (material->GetName()!="G4_SILICON_DIOXIDE") return 1/DBL_MAX; + + G4double E =(ekin/eV)*e; + + // Parameters SiO2 + eps = 3.84; + einf = 2.25; + phononEnergy = (0.75*0.153+0.25*0.063 )* eV; + G4double hw = (phononEnergy / eV) * e; + G4double n = 1.0 / (std::exp(hw / (kb*T)) - 1); //Phonon distribution + + if (abs) { //Absorption + Eprim = E + hw; + signe = -1; + } + else { //Emission + Eprim = E - hw; + signe = +1; + } + + G4double racine = std::sqrt(1. + ((-signe*hw) / E)); + + G4double P = (std::pow(e, 2) / (4 * pi*eps0*h*h)) * (n + 0.5 + signe*0.5) * ((1 / einf) - (1 / eps)) * std::sqrt(m0 / (2 * E)) *hw* std::log((1 + racine) / (signe * 1 + ((-signe)*racine))); + + G4double MFP = (std::sqrt(2. * E / m0) / P)*m; + + return 2 / MFP; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void G4MicroElecLOPhononModel::SampleSecondaries( + std::vector*, + const G4MaterialCutsCouple*, + const G4DynamicParticle* aDynamicElectron, + G4double, G4double) +{ + + G4double E = aDynamicElectron->GetKineticEnergy(); + + if (abs) { + Eprim = E + phononEnergy; + } + else { + Eprim = E - phononEnergy; + } + G4double rand = G4UniformRand(); + G4double B = (E + Eprim + 2 * std::sqrt(E*Eprim)) / (E + Eprim - 2 * std::sqrt(E*Eprim)); + G4double cosTheta = ((E + Eprim) / (2 * std::sqrt(E*Eprim)))*(1 - std::pow(B, rand)) + std::pow(B, rand); + + if(Interband){ + cosTheta = 1 - 2 * G4UniformRand(); //Isotrope + } + G4double phi = 2. * pi * G4UniformRand(); + G4ThreeVector zVers = aDynamicElectron->GetMomentumDirection(); + G4ThreeVector xVers = zVers.orthogonal(); + G4ThreeVector yVers = zVers.cross(xVers); + + G4double xDir = std::sqrt(1. - cosTheta*cosTheta); + G4double yDir = xDir; + xDir *= std::cos(phi); + yDir *= std::sin(phi); + + G4ThreeVector zPrimeVers((xDir*xVers + yDir*yVers + cosTheta*zVers)); + + fParticleChangeForGamma->ProposeMomentumDirection(zPrimeVers.unit()); + fParticleChangeForGamma->SetProposedKineticEnergy(Eprim); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/source/processes/electromagnetic/lowenergy/src/G4MuElecElastic.cc b/source/processes/electromagnetic/lowenergy/src/G4MicroElecLOPhononScattering.cc old mode 100755 new mode 100644 similarity index 53% rename from source/processes/electromagnetic/lowenergy/src/G4MuElecElastic.cc rename to source/processes/electromagnetic/lowenergy/src/G4MicroElecLOPhononScattering.cc index 3c172b015b..2022612e15 --- a/source/processes/electromagnetic/lowenergy/src/G4MuElecElastic.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4MicroElecLOPhononScattering.cc @@ -24,79 +24,84 @@ // ******************************************************************** // // -// G4MuElecElastic.cc, 2011/08/29 A.Valentin, M. Raine +// G4MicroElecLOPhononScattering.cc, +// 2020/05/20 P. Caron, C. Inguimbert are with ONERA [b] +// Q. Gibaru is with CEA [a], ONERA [b] and CNES [c] +// M. Raine and D. Lambert are with CEA [a] +// +// A part of this work has been funded by the French space agency(CNES[c]) +// [a] CEA, DAM, DIF - 91297 ARPAJON, France +// [b] ONERA - DPHY, 2 avenue E.Belin, 31055 Toulouse, France +// [c] CNES, 18 av.E.Belin, 31401 Toulouse CEDEX, France // // Based on the following publications -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for electrons in Si, -// NIM B, vol. 288, pp. 66 - 73, 2012. +// +// - J. Pierron, C. Inguimbert, M. Belhaj, T. Gineste, J. Puech, M. Raine +// Electron emission yield for low energy electrons: +// Monte Carlo simulation and experimental comparison for Al, Ag, and Si +// Journal of Applied Physics 121 (2017) 215107. +// https://doi.org/10.1063/1.4984761 +// +// - P. Caron, +// Study of Electron-Induced Single-Event Upset in Integrated Memory Devices +// PHD, 16th October 2019 +// +// - Q.Gibaru, C.Inguimbert, P.Caron, M.Raine, D.Lambert, J.Puech, +// Geant4 physics processes for microdosimetry and secondary electron emission simulation : +// Extension of MicroElec to very low energies and new materials +// NIM B, 2020, in review. // // //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -#include "G4MuElecElastic.hh" +#include "G4MicroElecLOPhononScattering.hh" +#include "G4DummyModel.hh" #include "G4SystemOfUnits.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... using namespace std; -G4MuElecElastic::G4MuElecElastic(const G4String& processName, - G4ProcessType type):G4VEmProcess (processName, type), - isInitialised(false) +G4MicroElecLOPhononScattering::G4MicroElecLOPhononScattering( + const G4String& processName, G4ProcessType type) + :G4VEmProcess(processName, type), + isInitialised(false) { SetProcessSubType(51); - - G4cout << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << " The name of the class G4MuElecElastic is changed to G4MicroElecElastic. " << G4endl; - G4cout << " The obsolete class will be REMOVED with the next release of Geant4. " << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << G4endl; - } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -G4MuElecElastic::~G4MuElecElastic() + +G4MicroElecLOPhononScattering::~G4MicroElecLOPhononScattering() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -G4bool G4MuElecElastic::IsApplicable(const G4ParticleDefinition& p) +G4bool G4MicroElecLOPhononScattering::IsApplicable(const G4ParticleDefinition& p) { return (&p == G4Electron::Electron()); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -void G4MuElecElastic::InitialiseProcess(const G4ParticleDefinition*) +void G4MicroElecLOPhononScattering::InitialiseProcess(const G4ParticleDefinition*) { - if(!isInitialised) - { - isInitialised = true; - SetBuildTableFlag(false); - if(!EmModel()) SetEmModel(new G4MuElecElasticModel); - EmModel()->SetLowEnergyLimit(5*eV); - EmModel()->SetHighEnergyLimit(100*MeV); - AddEmModel(1, EmModel()); - } + if (!isInitialised) + { + isInitialised = true; + SetBuildTableFlag(false); + if (!EmModel(0)) SetEmModel(new G4DummyModel()); + AddEmModel(2, EmModel(0)); + } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void G4MuElecElastic::PrintInfo() +void G4MicroElecLOPhononScattering::PrintInfo() { - // V.I. printout of models is perfored by model manager - // if this extra printout is needed it should be - // protected by verbosity level - /* - G4cout - << " Total cross sections computed from " << EmModel()->GetName() << " model" - << G4endl; - */ -} + // V.I. printout of models is performed by model manager + // if this extra printout is needed it should be + // protected by verbosity level +} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/source/processes/electromagnetic/lowenergy/src/G4MicroElecSurface.cc b/source/processes/electromagnetic/lowenergy/src/G4MicroElecSurface.cc new file mode 100644 index 0000000000..982e853c43 --- /dev/null +++ b/source/processes/electromagnetic/lowenergy/src/G4MicroElecSurface.cc @@ -0,0 +1,493 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// G4MicroElecSurface.cc, +// 2020/05/20 P. Caron, C. Inguimbert are with ONERA [b] +// Q. Gibaru is with CEA [a], ONERA [b] and CNES [c] +// M. Raine and D. Lambert are with CEA [a] +// +// A part of this work has been funded by the French space agency(CNES[c]) +// [a] CEA, DAM, DIF - 91297 ARPAJON, France +// [b] ONERA - DPHY, 2 avenue E.Belin, 31055 Toulouse, France +// [c] CNES, 18 av.E.Belin, 31401 Toulouse CEDEX, France +// +// Based on the following publications +// +// - Q.Gibaru, C.Inguimbert, P.Caron, M.Raine, D.Lambert, J.Puech, +// Geant4 physics processes for microdosimetry and secondary electron emission simulation : +// Extension of MicroElec to very low energies and new materials +// NIM B, 2020, in review. +// +// +// - Modèle de transport d'électrons à basse énergie (10 eV- 2 keV) pour +// applications spatiales (OSMOSEE, GEANT4), PhD dissertation, 2017. +// +// +//////////////////////////////////////////////////////////////////////// + +#include "G4MicroElecSurface.hh" + +#include "G4ios.hh" +#include "G4PhysicalConstants.hh" +#include "G4EmProcessSubType.hh" +#include "G4GeometryTolerance.hh" + +#include "G4SystemOfUnits.hh" + + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4MicroElecSurface::G4MicroElecSurface(const G4String& processName,G4ProcessType type) + : G4VDiscreteProcess(processName, type), + oldMomentum(0.,0.,0.), previousMomentum(0.,0.,0.), + theGlobalNormal(0.,0.,0.), theFacetNormal(0.,0.,0.) +{ + if ( verboseLevel > 0) + { + G4cout << GetProcessName() << " is created " << G4endl; + } + + isInitialised=false; + SetProcessSubType(25); + + theStatus = UndefinedSurf; + material1 = nullptr; + material2 = nullptr; + + kCarTolerance = G4GeometryTolerance::GetInstance()->GetSurfaceTolerance(); + theParticleMomentum = 0.; + + flag_franchissement_surface = false; + flag_normal = false; + flag_reflexion = false; + teleportToDo = teleportDone = false; + + ekint = thetat = thetaft = energyThreshold = crossingProbability = 0.0; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4MicroElecSurface::~G4MicroElecSurface() +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4bool +G4MicroElecSurface::IsApplicable(const G4ParticleDefinition& aParticleType) +{ + return ( aParticleType.GetPDGEncoding() == 11 ); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4MicroElecSurface::BuildPhysicsTable(const G4ParticleDefinition&) +{ + if (isInitialised) { return; } + + G4ProductionCutsTable* theCoupleTable = + G4ProductionCutsTable::GetProductionCutsTable(); + G4int numOfCouples = theCoupleTable->GetTableSize(); + G4cout << "G4MicroElecSurface::Initialise: Ncouples= " + << numOfCouples << G4endl; + + for (G4int i = 0; i < numOfCouples; ++i) { + const G4Material* material = + theCoupleTable->GetMaterialCutsCouple(i)->GetMaterial(); + + G4cout << "G4Surface, Material " << i + 1 << " / " << numOfCouples << " : " << material->GetName() << G4endl; + if (material->GetName() == "Vacuum") { tableWF[material->GetName()] = 0; continue; } + G4String mat = material->GetName(); + G4MicroElecMaterialStructure str = G4MicroElecMaterialStructure(mat); + tableWF[mat] = str.GetWorkFunction(); + } + isInitialised = true; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4VParticleChange* G4MicroElecSurface::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) +{ + theStatus = UndefinedSurf; + + //Definition of the parameters for the particle + aParticleChange.Initialize(aTrack); + aParticleChange.ProposeVelocity(aTrack.GetVelocity()); + + G4StepPoint* pPreStepPoint = aStep.GetPreStepPoint(); + G4StepPoint* pPostStepPoint = aStep.GetPostStepPoint(); + + material1 = pPreStepPoint -> GetMaterial(); + material2 = pPostStepPoint -> GetMaterial(); + + const G4DynamicParticle* aParticle = aTrack.GetDynamicParticle(); + + theParticleMomentum = aParticle->GetTotalMomentum(); + previousMomentum = oldMomentum; + oldMomentum = aParticle->GetMomentumDirection(); + + //First case: not a boundary + if (pPostStepPoint->GetStepStatus() != fGeomBoundary || + pPostStepPoint->GetPhysicalVolume() == pPreStepPoint->GetPhysicalVolume()) + { + theStatus = NotAtBoundarySurf; + flag_franchissement_surface = false; + flag_reflexion = false; + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); + + } + theStatus = UndefinedSurf; + + //Third case: same material + if (material1 == material2) + { + theStatus = SameMaterialSurf; + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); + + } + if (verboseLevel > 0) + { + G4cout << G4endl << " Electron at Boundary! " << G4endl; + G4VPhysicalVolume* thePrePV = pPreStepPoint->GetPhysicalVolume(); + G4VPhysicalVolume* thePostPV = pPostStepPoint->GetPhysicalVolume(); + if (thePrePV) G4cout << " thePrePV: " << thePrePV->GetName() << G4endl; + if (thePostPV) G4cout << " thePostPV: " << thePostPV->GetName() << G4endl; + G4cout << " Old Momentum Direction: " << oldMomentum << G4endl; + } + + //Definition of the parameters for the surface + G4ThreeVector theGlobalPoint = pPostStepPoint->GetPosition(); + + G4Navigator* theNavigator = + G4TransportationManager::GetTransportationManager()-> + GetNavigatorForTracking(); + + G4bool valid; + + theGlobalNormal = theNavigator->GetGlobalExitNormal(theGlobalPoint, &valid); + // G4cout << "Global exit normal = " << theGlobalNormal << " valid = " << valid << G4endl; + + if (valid) + { + theGlobalNormal = -theGlobalNormal; + } + else + { + G4ExceptionDescription ed; + ed << " G4MicroElecSurface/PostStepDoIt(): " + << " The Navigator reports that it returned an invalid normal.\n" + << "PV: " << pPreStepPoint->GetPhysicalVolume()->GetName() + << " TrackID= " << aTrack.GetTrackID() + << " Ekin(MeV)= " << aTrack.GetKineticEnergy() + << " position: " << theGlobalPoint + << " direction: " << oldMomentum + << G4endl; + G4Exception("G4MuElecSurf::PostStepDoIt", "OpBoun01", + FatalException, ed, + "Invalid Surface Normal - Geometry must return valid surface normal"); + return 0; + } + + //Exception: the particle is not in the right direction + if (oldMomentum * theGlobalNormal > 0.0) + { + theGlobalNormal = -theGlobalNormal; + } + + //Second case: step too small + //Corrections bug rotation + réflexion + if (aTrack.GetStepLength()<=kCarTolerance) + { + theStatus = StepTooSmallSurf; + if (pPostStepPoint) { + + WorkFunctionTable::iterator postStepWF; + postStepWF = tableWF.find(pPostStepPoint->GetMaterial()->GetName()); + WorkFunctionTable::iterator preStepWF; + preStepWF = tableWF.find(pPreStepPoint->GetMaterial()->GetName()); + + if (postStepWF == tableWF.end()) { + G4String str = "Material "; + str += pPostStepPoint->GetMaterial()->GetName() + " not found!"; + G4Exception("G4Surface::G4Surface", "em0002", FatalException, str); + return 0; + } + + else if (preStepWF == tableWF.end()) { + G4String str = "Material "; + str += pPreStepPoint->GetMaterial()->GetName() + " not found!"; + G4Exception("G4Surface::G4Surface", "em0002", FatalException, str); + return 0; + } + + if (pPreStepPoint->GetMaterial() != pPostStepPoint->GetMaterial()) { + + flag_franchissement_surface = false; + + if (flag_reflexion == true && flag_normal == true) { + aParticleChange.ProposeMomentumDirection(-Reflexion(aStep.GetPostStepPoint())); + flag_reflexion = false; + flag_normal = false; + } + } + } + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); + } + + flag_normal = (theGlobalNormal.x() == 0.0 && theGlobalNormal.y() == 0.0); + + G4LogicalSurface* Surface = nullptr; + + Surface = G4LogicalBorderSurface::GetSurface + (pPreStepPoint ->GetPhysicalVolume(), + pPostStepPoint->GetPhysicalVolume()); + + if (Surface == nullptr) + { + G4bool enteredDaughter=(pPostStepPoint->GetPhysicalVolume() + ->GetMotherLogical() == + pPreStepPoint->GetPhysicalVolume() + ->GetLogicalVolume()); + if(enteredDaughter) + { + Surface = G4LogicalSkinSurface::GetSurface + (pPostStepPoint->GetPhysicalVolume()-> + GetLogicalVolume()); + + if(Surface == nullptr) + Surface = G4LogicalSkinSurface::GetSurface + (pPreStepPoint->GetPhysicalVolume()-> + GetLogicalVolume()); + } + else + { + Surface = G4LogicalSkinSurface::GetSurface + (pPreStepPoint->GetPhysicalVolume()-> + GetLogicalVolume()); + + if(Surface == nullptr) + Surface = G4LogicalSkinSurface::GetSurface + (pPostStepPoint->GetPhysicalVolume()-> + GetLogicalVolume()); + } + } + + + G4VPhysicalVolume* thePrePV = pPreStepPoint->GetPhysicalVolume(); + G4VPhysicalVolume* thePostPV = pPostStepPoint->GetPhysicalVolume(); + + if (thePostPV) + { + WorkFunctionTable::iterator postStepWF; + postStepWF = tableWF.find(thePostPV->GetLogicalVolume()->GetMaterial()->GetName()); + WorkFunctionTable::iterator preStepWF; + preStepWF = tableWF.find(thePrePV->GetLogicalVolume()->GetMaterial()->GetName()); + + if (postStepWF == tableWF.end()) { + G4String str = "Material "; + str += thePostPV->GetLogicalVolume()->GetMaterial()->GetName() + " not found!"; + G4Exception("G4Surface::G4Surface", "em0002", FatalException, str); + return 0; + } + + else if (preStepWF == tableWF.end()) { + G4String str = "Material "; + str += thePrePV->GetLogicalVolume()->GetMaterial()->GetName() + " not found!"; + G4Exception("G4Surface::G4Surface", "em0002", FatalException, str); + return 0; + } + + else + { + G4double thresholdNew = postStepWF->second; + G4double thresholdOld = preStepWF->second; + energyThreshold = thresholdNew - thresholdOld; + } + } + + ekint = pPreStepPoint->GetKineticEnergy(); + thetat= GetIncidentAngle(); //angle d'incidence + G4double ekinNormalt=ekint*std::cos(thetat)*std::cos(thetat); + + G4double atet = std::sqrt(ekint/(ekint+energyThreshold))*std::sin(thetat); + thetaft = (atet > 1.0) ? pi*0.5 : std::asin(atet);//Angle de réfraction + + G4double aleat=G4UniformRand(); + + const G4double waveVectort=std::sqrt(2*9.1093826E-31*1.602176487E-19)/(6.6260755E-34/(2.0*pi)); + + //Parameter for an exponential barrier of potential (Thèse P68) + const G4double at=0.5E-10; + + //G4double modif already declared in .hh + crossingProbability=0; + + G4double kft=waveVectort*std::sqrt(ekint+energyThreshold)*std::cos(thetaft); + G4double kit=waveVectort*std::sqrt(ekinNormalt); + + G4double yy = std::sinh(pi*at*(kit-kft))/std::sinh(pi*at*(kit+kft)); + crossingProbability = 1 - yy*yy; + + //First case: the electron crosses the surface + if((aleat<=crossingProbability)&&(ekint>std::abs(energyThreshold))) + { + if (pPreStepPoint->GetMaterial() != pPostStepPoint->GetMaterial()) { + flag_franchissement_surface = true; + } + + thetaft=std::abs(thetaft-thetat); + + G4ThreeVector zVerst = aStep.GetPostStepPoint()->GetMomentumDirection(); + G4ThreeVector xVerst = zVerst.orthogonal(); + G4ThreeVector yVerst = zVerst.cross(xVerst); + + G4double cost = std::cos(thetaft); + G4double xDirt = std::sqrt(1. - cost*cost); + G4double yDirt = xDirt; + + G4ThreeVector zPrimeVerst = xDirt*xVerst + yDirt*yVerst + cost*zVerst; + + aParticleChange.ProposeMomentumDirection(zPrimeVerst.unit()); + } + else if ((aleat > crossingProbability) && (ekint>std::abs(energyThreshold))) + { + flag_reflexion = true; + if (flag_normal) { aParticleChange.ProposeMomentumDirection(-oldMomentum.unit()); } + else { aParticleChange.ProposeMomentumDirection(Reflexion(aStep.GetPostStepPoint())); } + + } + else { + + if (flag_normal) { aParticleChange.ProposeMomentumDirection(-oldMomentum.unit()); } + else { aParticleChange.ProposeMomentumDirection(Reflexion(aStep.GetPostStepPoint())); } + flag_reflexion = true; + } + + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecSurface::GetMeanFreePath(const G4Track&, G4double, + G4ForceCondition* condition) +{ + *condition = Forced; + return DBL_MAX; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4MicroElecSurface::GetIncidentAngle() +{ + theFacetNormal=theGlobalNormal; + + G4double PdotN = oldMomentum * theFacetNormal; + G4double magP= oldMomentum.mag(); + G4double magN= theFacetNormal.mag(); + + G4double incidentangle = pi - std::acos(PdotN/(magP*magN)); + + return incidentangle; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4ThreeVector G4MicroElecSurface::Reflexion(const G4StepPoint* PostStepPoint) +{ + //Normale + G4double Nx = theGlobalNormal.x(); + G4double Ny = theGlobalNormal.y(); + G4double Nz = theGlobalNormal.z(); + + //PostStepPoint + G4double PSx = PostStepPoint->GetPosition().x(); + G4double PSy = PostStepPoint->GetPosition().y(); + G4double PSz = PostStepPoint->GetPosition().z(); + + //P(alpha,beta,gamma) - PostStep avec translation momentum + G4double alpha = PSx + oldMomentum.x(); + G4double beta = PSy + oldMomentum.y(); + G4double gamma = PSz + oldMomentum.z(); + G4double r = theGlobalNormal.mag(); + G4double x, y, z, d, A, B, PM2x, PM2y, PM2z; + d = -(Nx*PSx + Ny*PSy + Nz*PSz); + + if (Ny == 0 && Nx == 0) { + gamma = -gamma; + } + + else { + if (Ny == 0) { + + A = (Nz*Nz*alpha) + (Nx*Nx*PSx) + (Nx*Nz*(PSz - gamma)); + B = r*r; + + //M(x,y,z) - Projection de P sur la surface + x = A / B; + y = beta; + z = (x - alpha)*(Nz / Nx) + gamma; + } + + else { + + A = (r*r) / Ny; + B = (beta / Ny)*(Nx*Nx + Nz*Nz) - (Nx*alpha + Nz*gamma + d); + + //M(x,y,z) - Projection de P sur la surface + y = B / A; + x = (y - beta)*(Nx / Ny) + alpha; + z = (y - beta)*(Nz / Ny) + gamma; + } + + //Vecteur 2*PM + PM2x = 2 * (x - alpha); PM2y = 2 * (y - beta); PM2z = 2 * (z - gamma); + + //Nouveau point P + alpha += PM2x; beta += PM2y; gamma += PM2z; + + } + + G4ThreeVector newMomentum = G4ThreeVector(alpha-PSx,beta-PSy,gamma-PSz); + + return newMomentum.unit(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4MicroElecSurfaceStatus G4MicroElecSurface::GetStatus() const +{ + return theStatus; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + + +void G4MicroElecSurface::SetFlagFranchissement() +{ + flag_franchissement_surface = false; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + diff --git a/source/processes/electromagnetic/lowenergy/src/G4MuElecElasticModel.cc b/source/processes/electromagnetic/lowenergy/src/G4MuElecElasticModel.cc deleted file mode 100755 index bd09efbe06..0000000000 --- a/source/processes/electromagnetic/lowenergy/src/G4MuElecElasticModel.cc +++ /dev/null @@ -1,433 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -// -// G4MuElecElasticModel.cc, 2011/08/29 A.Valentin, M. Raine -// -// Based on the following publications -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for electrons in Si, -// NIM B, vol. 288, pp. 66 - 73, 2012. -// -// -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - - -#include "G4MuElecElasticModel.hh" -#include "G4PhysicalConstants.hh" -#include "G4SystemOfUnits.hh" -#include "G4Exp.hh" - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -using namespace std; - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -G4MuElecElasticModel::G4MuElecElasticModel(const G4ParticleDefinition*, - const G4String& nam) -:G4VEmModel(nam),isInitialised(false) -{ - - G4cout << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << " The name of the class G4MuElecElasticModel is changed to G4MicroElecElasticModel. " << G4endl; - G4cout << " The obsolete class will be REMOVED with the next release of Geant4. " << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << G4endl; - - nistSi = G4NistManager::Instance()->FindOrBuildMaterial("G4_Si"); - - killBelowEnergy = 16.7 * eV; // Minimum e- energy for energy loss by excitation - lowEnergyLimit = 0 * eV; - lowEnergyLimitOfModel = 5 * eV; // The model lower energy is 5 eV - highEnergyLimit = 100. * MeV; - SetLowEnergyLimit(lowEnergyLimit); - SetHighEnergyLimit(highEnergyLimit); - - verboseLevel= 0; - // Verbosity scale: - // 0 = nothing - // 1 = warning for energy non-conservation - // 2 = details of energy budget - // 3 = calculation of cross sections, file openings, sampling of atoms - // 4 = entering in methods - - if( verboseLevel>0 ) - { - G4cout << "MuElec Elastic model is constructed " << G4endl - << "Energy range: " - << lowEnergyLimit / eV << " eV - " - << highEnergyLimit / keV << " keV" - << G4endl; - } - fParticleChangeForGamma = 0; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -G4MuElecElasticModel::~G4MuElecElasticModel() -{ - // For total cross section - - std::map< G4String,G4MuElecCrossSectionDataSet*,std::less >::iterator pos; - for (pos = tableData.begin(); pos != tableData.end(); ++pos) - { - G4MuElecCrossSectionDataSet* table = pos->second; - delete table; - } - - // For final state - - eVecm.clear(); - -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -void G4MuElecElasticModel::Initialise(const G4ParticleDefinition* /*particle*/, - const G4DataVector& /*cuts*/) -{ - - if (verboseLevel > 3) - G4cout << "Calling G4MuElecElasticModel::Initialise()" << G4endl; - - // Energy limits - - if (LowEnergyLimit() < lowEnergyLimit) - { - G4cout << "G4MuElecElasticModel: low energy limit increased from " << - LowEnergyLimit()/eV << " eV to " << lowEnergyLimit/eV << " eV" << G4endl; - SetLowEnergyLimit(lowEnergyLimit); - } - - if (HighEnergyLimit() > highEnergyLimit) - { - G4cout << "G4MuElecElasticModel: high energy limit decreased from " << - HighEnergyLimit()/MeV << " MeV to " << highEnergyLimit/MeV << " MeV" << G4endl; - SetHighEnergyLimit(highEnergyLimit); - } - - // Reading of data files - - G4double scaleFactor = 1e-18 * cm * cm; - - G4String fileElectron("microelec/sigma_elastic_e_Si"); - - G4ParticleDefinition* electronDef = G4Electron::ElectronDefinition(); - G4String electron; - - // For total cross section - - electron = electronDef->GetParticleName(); - - tableFile[electron] = fileElectron; - - G4MuElecCrossSectionDataSet* tableE = new G4MuElecCrossSectionDataSet(new G4LogLogInterpolation, eV,scaleFactor ); - tableE->LoadData(fileElectron); - tableData[electron] = tableE; - - // For final state - - char *path = std::getenv("G4LEDATA"); - - if (!path) - { - G4Exception("G4MuElecElasticModel::Initialise","em0006",FatalException,"G4LEDATA environment variable not set."); - return; - } - - std::ostringstream eFullFileName; - eFullFileName << path << "/microelec/sigmadiff_elastic_e_Si.dat"; - std::ifstream eDiffCrossSection(eFullFileName.str().c_str()); - - if (!eDiffCrossSection) - G4Exception("G4MuElecElasticModel::Initialise","em0003",FatalException,"Missing data file: /microelec/sigmadiff_elastic_e_Si.dat"); - - eTdummyVec.push_back(0.); - - while(!eDiffCrossSection.eof()) - { - double tDummy; - double eDummy; - eDiffCrossSection>>tDummy>>eDummy; - - // SI : mandatory eVecm initialization - if (tDummy != eTdummyVec.back()) - { - eTdummyVec.push_back(tDummy); - eVecm[tDummy].push_back(0.); - } - - eDiffCrossSection>>eDiffCrossSectionData[tDummy][eDummy]; - - // SI : only if not end of file reached ! - if (!eDiffCrossSection.eof()) eDiffCrossSectionData[tDummy][eDummy]*=scaleFactor; - - if (eDummy != eVecm[tDummy].back()) eVecm[tDummy].push_back(eDummy); - - } - - // End final state - - if (verboseLevel > 2) - G4cout << "Loaded cross section files for MuElec Elastic model" << G4endl; - - if( verboseLevel>0 ) - { - G4cout << "MuElec Elastic model is initialized " << G4endl - << "Energy range: " - << LowEnergyLimit() / eV << " eV - " - << HighEnergyLimit() / keV << " keV" - << G4endl; - } - - if (isInitialised) { return; } - fParticleChangeForGamma = GetParticleChangeForGamma(); - isInitialised = true; - - // InitialiseElementSelectors(particle,cuts); -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -G4double G4MuElecElasticModel::CrossSectionPerVolume(const G4Material* material, - const G4ParticleDefinition* p, - G4double ekin, - G4double, - G4double) -{ - if (verboseLevel > 3) - G4cout << "Calling CrossSectionPerVolume() of G4MuElecElasticModel" << G4endl; - - // Calculate total cross section for model - - G4double sigma=0; - - G4double density = material->GetTotNbOfAtomsPerVolume(); - - if (material == nistSi || material->GetBaseMaterial() == nistSi) - { - const G4String& particleName = p->GetParticleName(); - - if (ekin < highEnergyLimit) - { - //SI : XS must not be zero otherwise sampling of secondaries method ignored - if (ekin < lowEnergyLimitOfModel) ekin = lowEnergyLimitOfModel; - // - - std::map< G4String,G4MuElecCrossSectionDataSet*,std::less >::iterator pos; - pos = tableData.find(particleName); - - if (pos != tableData.end()) - { - G4MuElecCrossSectionDataSet* table = pos->second; - if (table != 0) - { - sigma = table->FindValue(ekin); - } - } - else - { - G4Exception("G4MuElecElasticModel::ComputeCrossSectionPerVolume","em0002",FatalException,"Model not applicable to particle type."); - } - } - - if (verboseLevel > 3) - { - G4cout << "---> Kinetic energy(eV)=" << ekin/eV << G4endl; - G4cout << " - Cross section per Si atom (cm^2)=" << sigma/cm/cm << G4endl; - G4cout << " - Cross section per Si atom (cm^-1)=" << sigma*density/(1./cm) << G4endl; - } - - } - - return sigma*density; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -void G4MuElecElasticModel::SampleSecondaries(std::vector* /*fvect*/, - const G4MaterialCutsCouple* /*couple*/, - const G4DynamicParticle* aDynamicElectron, - G4double, - G4double) -{ - - if (verboseLevel > 3) - G4cout << "Calling SampleSecondaries() of G4MuElecElasticModel" << G4endl; - - G4double electronEnergy0 = aDynamicElectron->GetKineticEnergy(); - - if (electronEnergy0 < killBelowEnergy) - { - fParticleChangeForGamma->ProposeTrackStatus(fStopAndKill); - fParticleChangeForGamma->ProposeLocalEnergyDeposit(electronEnergy0); - return ; - } - - if (electronEnergy0>= killBelowEnergy && electronEnergy0 < highEnergyLimit) - { - G4double cosTheta = RandomizeCosTheta(electronEnergy0); - - G4double phi = 2. * pi * G4UniformRand(); - - G4ThreeVector zVers = aDynamicElectron->GetMomentumDirection(); - G4ThreeVector xVers = zVers.orthogonal(); - G4ThreeVector yVers = zVers.cross(xVers); - - G4double xDir = std::sqrt(1. - cosTheta*cosTheta); - G4double yDir = xDir; - xDir *= std::cos(phi); - yDir *= std::sin(phi); - - G4ThreeVector zPrimeVers((xDir*xVers + yDir*yVers + cosTheta*zVers)); - - fParticleChangeForGamma->ProposeMomentumDirection(zPrimeVers.unit()) ; - - fParticleChangeForGamma->SetProposedKineticEnergy(electronEnergy0); - } - -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -G4double G4MuElecElasticModel::Theta - (G4ParticleDefinition * particleDefinition, G4double k, G4double integrDiff) -{ - - G4double theta = 0.; - G4double valueT1 = 0; - G4double valueT2 = 0; - G4double valueE21 = 0; - G4double valueE22 = 0; - G4double valueE12 = 0; - G4double valueE11 = 0; - G4double xs11 = 0; - G4double xs12 = 0; - G4double xs21 = 0; - G4double xs22 = 0; - - - if (particleDefinition == G4Electron::ElectronDefinition()) - { - std::vector::iterator t2 = std::upper_bound(eTdummyVec.begin(),eTdummyVec.end(), k); - std::vector::iterator t1 = t2-1; - - std::vector::iterator e12 = std::upper_bound(eVecm[(*t1)].begin(),eVecm[(*t1)].end(), integrDiff); - std::vector::iterator e11 = e12-1; - - std::vector::iterator e22 = std::upper_bound(eVecm[(*t2)].begin(),eVecm[(*t2)].end(), integrDiff); - std::vector::iterator e21 = e22-1; - - valueT1 =*t1; - valueT2 =*t2; - valueE21 =*e21; - valueE22 =*e22; - valueE12 =*e12; - valueE11 =*e11; - - xs11 = eDiffCrossSectionData[valueT1][valueE11]; - xs12 = eDiffCrossSectionData[valueT1][valueE12]; - xs21 = eDiffCrossSectionData[valueT2][valueE21]; - xs22 = eDiffCrossSectionData[valueT2][valueE22]; - -} - - if (xs11==0 || xs12==0 ||xs21==0 ||xs22==0) return (0.); - - theta = QuadInterpolator( valueE11, valueE12, - valueE21, valueE22, - xs11, xs12, - xs21, xs22, - valueT1, valueT2, - k, integrDiff ); - - return theta; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -G4double G4MuElecElasticModel::LinLogInterpolate(G4double e1, - G4double e2, - G4double e, - G4double xs1, - G4double xs2) -{ - G4double d1 = std::log(xs1); - G4double d2 = std::log(xs2); - G4double value = G4Exp(d1 + (d2 - d1)*(e - e1)/ (e2 - e1)); - return value; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -G4double G4MuElecElasticModel::LogLogInterpolate(G4double e1, - G4double e2, - G4double e, - G4double xs1, - G4double xs2) -{ - G4double a = (std::log10(xs2)-std::log10(xs1)) / (std::log10(e2)-std::log10(e1)); - G4double b = std::log10(xs2) - a*std::log10(e2); - G4double sigma = a*std::log10(e) + b; - G4double value = (std::pow(10.,sigma)); - return value; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -G4double G4MuElecElasticModel::QuadInterpolator(G4double e11, G4double e12, - G4double e21, G4double e22, - G4double xs11, G4double xs12, - G4double xs21, G4double xs22, - G4double t1, G4double t2, - G4double t, G4double e) -{ -// Lin-Log - G4double interpolatedvalue1 = LinLogInterpolate(e11, e12, e, xs11, xs12); - G4double interpolatedvalue2 = LinLogInterpolate(e21, e22, e, xs21, xs22); - G4double value = LinLogInterpolate(t1, t2, t, interpolatedvalue1, interpolatedvalue2); - return value; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -G4double G4MuElecElasticModel::RandomizeCosTheta(G4double k) -{ - G4double integrdiff=0; - G4double uniformRand=G4UniformRand(); - integrdiff = uniformRand; - - G4double theta=0.; - G4double cosTheta=0.; - theta = Theta(G4Electron::ElectronDefinition(),k/eV,integrdiff); - - cosTheta= std::cos(theta*pi/180); - - return cosTheta; -} diff --git a/source/processes/electromagnetic/lowenergy/src/G4MuElecInelastic.cc b/source/processes/electromagnetic/lowenergy/src/G4MuElecInelastic.cc deleted file mode 100755 index 7df618014a..0000000000 --- a/source/processes/electromagnetic/lowenergy/src/G4MuElecInelastic.cc +++ /dev/null @@ -1,148 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -// -// G4MuElecInelastic.cc, 2011/08/29 A.Valentin, M. Raine -// -// Based on the following publications -// -// - Inelastic cross-sections of low energy electrons in silicon -// for the simulation of heavy ion tracks with theGeant4-DNA toolkit, -// NSS Conf. Record 2010, pp. 80-85. -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for electrons in Si, -// NIM B, vol. 288, pp. 66 - 73, 2012. -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for protons and -// heavy ions in Si, NIM B, vol. 287, pp. 124 - 129, 2012. -// -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - - -#include "G4MuElecInelastic.hh" -#include "G4SystemOfUnits.hh" - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -using namespace std; - -G4MuElecInelastic::G4MuElecInelastic(const G4String& processName, - G4ProcessType type):G4VEmProcess (processName, type), - isInitialised(false) -{ - SetProcessSubType(53); - - G4cout << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << " The name of the class G4MuElecInelastic is changed to G4MicroElecInelastic. " << G4endl; - G4cout << " The obsolete class will be REMOVED with the next release of Geant4. " << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << G4endl; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -G4MuElecInelastic::~G4MuElecInelastic() -{} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -G4bool G4MuElecInelastic::IsApplicable(const G4ParticleDefinition& p) -{ - return (&p == G4Electron::Electron() || - &p == G4Proton::Proton() || - (p.GetPDGCharge() != 0.0 && !p.IsShortLived() && p.GetParticleType() == "nucleus")); -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -void G4MuElecInelastic::InitialiseProcess(const G4ParticleDefinition* p) -{ - if(!isInitialised) - { - isInitialised = true; - SetBuildTableFlag(false); - G4String name = p->GetParticleName(); - - if(name == "e-") - { - if(!EmModel()) SetEmModel(new G4MuElecInelasticModel); - EmModel()->SetLowEnergyLimit(16.7*eV); - EmModel()->SetHighEnergyLimit(100*MeV); - - AddEmModel(1, EmModel()); - } - - else if(name == "proton") - { - if(!EmModel()) SetEmModel(new G4MuElecInelasticModel); - EmModel()->SetLowEnergyLimit(50.*keV); - EmModel()->SetHighEnergyLimit(10*GeV); - - AddEmModel(1, EmModel()); - } - - else if(name == "GenericIon") - { - if(!EmModel()) SetEmModel(new G4MuElecInelasticModel); - EmModel()->SetLowEnergyLimit(50.*keV); - EmModel()->SetHighEnergyLimit(10000.*GeV); - - AddEmModel(1, EmModel()); - } - } -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void G4MuElecInelastic::PrintInfo() -{ - // V.I. printout of models is perfored by model manager - // if this extra printout is needed it should be - // protected by verbosity level - /* - if (EmModel(2)) - { - G4cout - << " Total cross sections computed from " - << EmModel(1)->GetName() - << " and " - << EmModel(2)->GetName() - << " models" - << G4endl; - } - else - { - G4cout - << " Total cross sections computed from " - << EmModel()->GetName() - << G4endl; - } - */ -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/source/processes/electromagnetic/lowenergy/src/G4MuElecInelasticModel.cc b/source/processes/electromagnetic/lowenergy/src/G4MuElecInelasticModel.cc deleted file mode 100755 index d60f638860..0000000000 --- a/source/processes/electromagnetic/lowenergy/src/G4MuElecInelasticModel.cc +++ /dev/null @@ -1,799 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -// -// G4MuElecInelasticModel.cc, 2011/08/29 A.Valentin, M. Raine -// -// Based on the following publications -// -// - Inelastic cross-sections of low energy electrons in silicon -// for the simulation of heavy ion tracks with theGeant4-DNA toolkit, -// NSS Conf. Record 2010, pp. 80-85. -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for electrons in Si, -// NIM B, vol. 288, pp. 66 - 73, 2012. -// - Geant4 physics processes for microdosimetry simulation: -// very low energy electromagnetic models for protons and -// heavy ions in Si, NIM B, vol. 287, pp. 124 - 129, 2012. -// -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -#include "G4MuElecInelasticModel.hh" - -#include "globals.hh" -#include "G4PhysicalConstants.hh" -#include "G4SystemOfUnits.hh" -#include "G4ios.hh" -#include "G4UnitsTable.hh" -#include "G4UAtomicDeexcitation.hh" -#include "G4LossTableManager.hh" -#include "G4ionEffectiveCharge.hh" - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -using namespace std; - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -G4MuElecInelasticModel::G4MuElecInelasticModel(const G4ParticleDefinition*, - const G4String& nam) -:G4VEmModel(nam),fAtomDeexcitation(0),isInitialised(false) -{ - - G4cout << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << " The name of the class G4MuElecInelasticModel is changed to G4MicroElecInelasticModel. " << G4endl; - G4cout << " The obsolete class will be REMOVED with the next release of Geant4. " << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << "*******************************************************************************" << G4endl; - G4cout << G4endl; - - nistSi = G4NistManager::Instance()->FindOrBuildMaterial("G4_Si"); - - verboseLevel= 0; - // Verbosity scale: - // 0 = nothing - // 1 = warning for energy non-conservation - // 2 = details of energy budget - // 3 = calculation of cross sections, file openings, sampling of atoms - // 4 = entering in methods - - if( verboseLevel>0 ) - { - G4cout << "MuElec inelastic model is constructed " << G4endl; - } - - //Mark this model as "applicable" for atomic deexcitation - SetDeexcitationFlag(true); - fParticleChangeForGamma = 0; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -G4MuElecInelasticModel::~G4MuElecInelasticModel() -{ - // Cross section - - std::map< G4String,G4MuElecCrossSectionDataSet*,std::less >::iterator pos; - for (pos = tableData.begin(); pos != tableData.end(); ++pos) - { - G4MuElecCrossSectionDataSet* table = pos->second; - delete table; - } - - // Final state - - eVecm.clear(); - pVecm.clear(); - -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -void G4MuElecInelasticModel::Initialise(const G4ParticleDefinition* particle, - const G4DataVector& /*cuts*/) -{ - - if (verboseLevel > 3) - G4cout << "Calling G4MuElecInelasticModel::Initialise()" << G4endl; - - // Energy limits - - G4String fileElectron("microelec/sigma_inelastic_e_Si"); - G4String fileProton("microelec/sigma_inelastic_p_Si"); - - G4ParticleDefinition* electronDef = G4Electron::ElectronDefinition(); - G4ParticleDefinition* protonDef = G4Proton::ProtonDefinition(); - - G4String electron; - G4String proton; - - G4double scaleFactor = 1e-18 * cm *cm; - - char *path = std::getenv("G4LEDATA"); - - // *** ELECTRON - electron = electronDef->GetParticleName(); - - tableFile[electron] = fileElectron; - - lowEnergyLimit[electron] = 16.7 * eV; - highEnergyLimit[electron] = 100.0 * MeV; - - // Cross section - - G4MuElecCrossSectionDataSet* tableE = new G4MuElecCrossSectionDataSet(new G4LogLogInterpolation, eV,scaleFactor ); - tableE->LoadData(fileElectron); - - tableData[electron] = tableE; - - // Final state - - std::ostringstream eFullFileName; - eFullFileName << path << "/microelec/sigmadiff_inelastic_e_Si.dat"; - std::ifstream eDiffCrossSection(eFullFileName.str().c_str()); - - if (!eDiffCrossSection) - { - G4Exception("G4MuElecInelasticModel::Initialise","em0003",FatalException,"Missing data file:/microelec/sigmadiff_inelastic_e_Si.dat"); - } - - eTdummyVec.push_back(0.); - while(!eDiffCrossSection.eof()) - { - double tDummy; - double eDummy; - eDiffCrossSection>>tDummy>>eDummy; - if (tDummy != eTdummyVec.back()) eTdummyVec.push_back(tDummy); - for (int j=0; j<6; j++) - { - eDiffCrossSection>>eDiffCrossSectionData[j][tDummy][eDummy]; - - // SI - only if eof is not reached ! - if (!eDiffCrossSection.eof()) eDiffCrossSectionData[j][tDummy][eDummy]*=scaleFactor; - - eVecm[tDummy].push_back(eDummy); - - } - } - // - - // *** PROTON - - proton = protonDef->GetParticleName(); - - tableFile[proton] = fileProton; - - lowEnergyLimit[proton] = 50. * keV; - highEnergyLimit[proton] = 10. * GeV; - - // Cross section - - G4MuElecCrossSectionDataSet* tableP = new G4MuElecCrossSectionDataSet(new G4LogLogInterpolation, eV,scaleFactor ); - tableP->LoadData(fileProton); - - tableData[proton] = tableP; - - // Final state - - std::ostringstream pFullFileName; - pFullFileName << path << "/microelec/sigmadiff_inelastic_p_Si.dat"; - std::ifstream pDiffCrossSection(pFullFileName.str().c_str()); - - if (!pDiffCrossSection) - { - G4Exception("G4MuElecInelasticModel::Initialise","em0003",FatalException,"Missing data file:/microelec/sigmadiff_inelastic_p_Si.dat"); - } - - pTdummyVec.push_back(0.); - while(!pDiffCrossSection.eof()) - { - double tDummy; - double eDummy; - pDiffCrossSection>>tDummy>>eDummy; - if (tDummy != pTdummyVec.back()) pTdummyVec.push_back(tDummy); - for (int j=0; j<6; j++) - { - pDiffCrossSection>>pDiffCrossSectionData[j][tDummy][eDummy]; - - // SI - only if eof is not reached ! - if (!pDiffCrossSection.eof()) pDiffCrossSectionData[j][tDummy][eDummy]*=scaleFactor; - - pVecm[tDummy].push_back(eDummy); - } - } - - - if (particle==electronDef) - { - SetLowEnergyLimit(lowEnergyLimit[electron]); - SetHighEnergyLimit(highEnergyLimit[electron]); - } - - if (particle==protonDef) - { - SetLowEnergyLimit(lowEnergyLimit[proton]); - SetHighEnergyLimit(highEnergyLimit[proton]); - } - - if( verboseLevel>0 ) - { - G4cout << "MuElec Inelastic model is initialized " << G4endl - << "Energy range: " - << LowEnergyLimit() / eV << " eV - " - << HighEnergyLimit() / keV << " keV for " - << particle->GetParticleName() - << " with mass (amu) " << particle->GetPDGMass()/proton_mass_c2 - << " and charge " << particle->GetPDGCharge() - << G4endl << G4endl ; - } - - // - - fAtomDeexcitation = G4LossTableManager::Instance()->AtomDeexcitation(); - - if (isInitialised) { return; } - fParticleChangeForGamma = GetParticleChangeForGamma(); - isInitialised = true; - -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -G4double G4MuElecInelasticModel::CrossSectionPerVolume(const G4Material* material, - const G4ParticleDefinition* particleDefinition, - G4double ekin, - G4double, - G4double) -{ - if (verboseLevel > 3) - G4cout << "Calling CrossSectionPerVolume() of G4MuElecInelasticModel" << G4endl; - - G4double density = material->GetTotNbOfAtomsPerVolume(); - - /* if ( - particleDefinition != G4Proton::ProtonDefinition() - && - particleDefinition != G4Electron::ElectronDefinition() - && - particleDefinition != G4GenericIon::GenericIonDefinition() - ) - - return 0;*/ - - // Calculate total cross section for model - - G4double lowLim = 0; - G4double highLim = 0; - G4double sigma=0; - - const G4String& particleName = particleDefinition->GetParticleName(); - G4String nameLocal = particleName ; - - G4double Zeff2 = 1.0; - G4double Mion_c2 = particleDefinition->GetPDGMass(); - - if (Mion_c2 > proton_mass_c2) - { - G4ionEffectiveCharge EffCharge ; - G4double Zeff = EffCharge.EffectiveCharge(particleDefinition, material,ekin); - Zeff2 = Zeff*Zeff; - - if (verboseLevel > 3) - G4cout << "Before scaling : " << G4endl - << "Particle : " << nameLocal << ", mass : " << Mion_c2/proton_mass_c2 << "*mp, charge " << Zeff - << ", Ekin (eV) = " << ekin/eV << G4endl ; - - ekin *= proton_mass_c2/Mion_c2 ; - nameLocal = "proton" ; - - if (verboseLevel > 3) - G4cout << "After scaling : " << G4endl - << "Particle : " << nameLocal << ", Ekin (eV) = " << ekin/eV << G4endl ; - } - - if (material == nistSi || material->GetBaseMaterial() == nistSi) - { - - std::map< G4String,G4double,std::less >::iterator pos1; - pos1 = lowEnergyLimit.find(nameLocal); - if (pos1 != lowEnergyLimit.end()) - { - lowLim = pos1->second; - } - - std::map< G4String,G4double,std::less >::iterator pos2; - pos2 = highEnergyLimit.find(nameLocal); - if (pos2 != highEnergyLimit.end()) - { - highLim = pos2->second; - } - - if (ekin >= lowLim && ekin < highLim) - { - std::map< G4String,G4MuElecCrossSectionDataSet*,std::less >::iterator pos; - pos = tableData.find(nameLocal); - - if (pos != tableData.end()) - { - G4MuElecCrossSectionDataSet* table = pos->second; - if (table != 0) - { - sigma = table->FindValue(ekin); - } - } - else - { - G4Exception("G4MuElecInelasticModel::CrossSectionPerVolume","em0002",FatalException,"Model not applicable to particle type."); - } - } - else - { - if (nameLocal!="e-") - { - // G4cout << "Particle : " << nameLocal << ", Ekin (eV) = " << ekin/eV << G4endl; - // G4cout << "### Warning: particle energy out of bounds! ###" << G4endl; - } - } - - if (verboseLevel > 3) - { - G4cout << "---> Kinetic energy (eV)=" << ekin/eV << G4endl; - G4cout << " - Cross section per Si atom (cm^2)=" << sigma*Zeff2/cm2 << G4endl; - G4cout << " - Cross section per Si atom (cm^-1)=" << sigma*density*Zeff2/(1./cm) << G4endl; - } - - } // if (SiMaterial) - return sigma*density*Zeff2; - - -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - -void G4MuElecInelasticModel::SampleSecondaries(std::vector* fvect, - const G4MaterialCutsCouple* /*couple*/, - const G4DynamicParticle* particle, - G4double, - G4double) -{ - - if (verboseLevel > 3) - G4cout << "Calling SampleSecondaries() of G4MuElecInelasticModel" << G4endl; - - G4double lowLim = 0; - G4double highLim = 0; - - G4double ekin = particle->GetKineticEnergy(); - G4double k = ekin ; - - G4ParticleDefinition* PartDef = particle->GetDefinition(); - const G4String& particleName = PartDef->GetParticleName(); - G4String nameLocal2 = particleName ; - G4double particleMass = particle->GetDefinition()->GetPDGMass(); - - if (particleMass > proton_mass_c2) - { - k *= proton_mass_c2/particleMass ; - PartDef = G4Proton::ProtonDefinition(); - nameLocal2 = "proton" ; - } - - std::map< G4String,G4double,std::less >::iterator pos1; - pos1 = lowEnergyLimit.find(nameLocal2); - - if (pos1 != lowEnergyLimit.end()) - { - lowLim = pos1->second; - } - - std::map< G4String,G4double,std::less >::iterator pos2; - pos2 = highEnergyLimit.find(nameLocal2); - - if (pos2 != highEnergyLimit.end()) - { - highLim = pos2->second; - } - - if (k >= lowLim && k < highLim) - { - G4ParticleMomentum primaryDirection = particle->GetMomentumDirection(); - G4double totalEnergy = ekin + particleMass; - G4double pSquare = ekin * (totalEnergy + particleMass); - G4double totalMomentum = std::sqrt(pSquare); - - G4int Shell = RandomSelect(k,nameLocal2); - G4double bindingEnergy = SiStructure.Energy(Shell); - if (verboseLevel > 3) - { - G4cout << "---> Kinetic energy (eV)=" << k/eV << G4endl ; - G4cout << "Shell: " << Shell << ", energy: " << bindingEnergy/eV << G4endl; - } - - // sample deexcitation - - G4int secNumberInit = 0; // need to know at a certain point the energy of secondaries - G4int secNumberFinal = 0; // So I'll make the difference and then sum the energies - - if(fAtomDeexcitation && Shell > 2) { - G4int Z = 14; - G4AtomicShellEnumerator as = fKShell; - - if (Shell == 4) - { - as = G4AtomicShellEnumerator(1); - } - else if (Shell == 3) - { - as = G4AtomicShellEnumerator(3); - } - - const G4AtomicShell* shell = fAtomDeexcitation->GetAtomicShell(Z, as); - secNumberInit = fvect->size(); - fAtomDeexcitation->GenerateParticles(fvect, shell, Z, 0, 0); - secNumberFinal = fvect->size(); - } - - G4double secondaryKinetic = RandomizeEjectedElectronEnergy(PartDef,k,Shell); - - if (verboseLevel > 3) - { - G4cout << "Ionisation process" << G4endl; - G4cout << "Shell: " << Shell << " Kin. energy (eV)=" << k/eV - << " Sec. energy (eV)=" << secondaryKinetic/eV << G4endl; - } - - G4double cosTheta = 0.; - G4double phi = 0.; - RandomizeEjectedElectronDirection(PartDef, k, secondaryKinetic, cosTheta, phi); - - G4double sinTheta = std::sqrt(1.-cosTheta*cosTheta); - G4double dirX = sinTheta*std::cos(phi); - G4double dirY = sinTheta*std::sin(phi); - G4double dirZ = cosTheta; - G4ThreeVector deltaDirection(dirX,dirY,dirZ); - deltaDirection.rotateUz(primaryDirection); - - //if (particle->GetDefinition() == G4Electron::ElectronDefinition()) - //{ - G4double deltaTotalMomentum = std::sqrt(secondaryKinetic*(secondaryKinetic + 2.*electron_mass_c2 )); - - G4double finalPx = totalMomentum*primaryDirection.x() - deltaTotalMomentum*deltaDirection.x(); - G4double finalPy = totalMomentum*primaryDirection.y() - deltaTotalMomentum*deltaDirection.y(); - G4double finalPz = totalMomentum*primaryDirection.z() - deltaTotalMomentum*deltaDirection.z(); - G4double finalMomentum = std::sqrt(finalPx*finalPx + finalPy*finalPy + finalPz*finalPz); - finalPx /= finalMomentum; - finalPy /= finalMomentum; - finalPz /= finalMomentum; - - G4ThreeVector direction; - direction.set(finalPx,finalPy,finalPz); - - fParticleChangeForGamma->ProposeMomentumDirection(direction.unit()) ; - //} - //else fParticleChangeForGamma->ProposeMomentumDirection(primaryDirection) ; - - // note that secondaryKinetic is the energy of the delta ray, not of all secondaries. - G4double deexSecEnergy = 0; - for (G4int j=secNumberInit; j < secNumberFinal; j++) { - deexSecEnergy = deexSecEnergy + (*fvect)[j]->GetKineticEnergy();} - - fParticleChangeForGamma->SetProposedKineticEnergy(ekin-bindingEnergy-secondaryKinetic); - fParticleChangeForGamma->ProposeLocalEnergyDeposit(bindingEnergy-deexSecEnergy); - - G4DynamicParticle* dp = new G4DynamicParticle (G4Electron::Electron(),deltaDirection,secondaryKinetic) ; - fvect->push_back(dp); - - } - -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -G4double G4MuElecInelasticModel::RandomizeEjectedElectronEnergy(G4ParticleDefinition* particleDefinition, -G4double k, G4int shell) -{ - if (particleDefinition == G4Electron::ElectronDefinition()) - { - G4double maximumEnergyTransfer=0.; - if ((k+SiStructure.Energy(shell))/2. > k) maximumEnergyTransfer=k; - else maximumEnergyTransfer = (k+SiStructure.Energy(shell))/2.; - - G4double crossSectionMaximum = 0.; - - G4double minEnergy = SiStructure.Energy(shell); - G4double maxEnergy = maximumEnergyTransfer; - G4int nEnergySteps = 100; - - G4double value(minEnergy); - G4double stpEnergy(std::pow(maxEnergy/value, 1./static_cast(nEnergySteps-1))); - G4int step(nEnergySteps); - while (step>0) - { - step--; - G4double differentialCrossSection = DifferentialCrossSection(particleDefinition, k/eV, value/eV, shell); - if(differentialCrossSection >= crossSectionMaximum) crossSectionMaximum = differentialCrossSection; - value*=stpEnergy; - } - - - G4double secondaryElectronKineticEnergy=0.; - do - { - secondaryElectronKineticEnergy = G4UniformRand() * (maximumEnergyTransfer-SiStructure.Energy(shell)); - } while(G4UniformRand()*crossSectionMaximum > - DifferentialCrossSection(particleDefinition, k/eV,(secondaryElectronKineticEnergy+SiStructure.Energy(shell))/eV,shell)); - - return secondaryElectronKineticEnergy; - - } - - if (particleDefinition == G4Proton::ProtonDefinition()) - { - G4double maximumEnergyTransfer = 4.* (electron_mass_c2 / proton_mass_c2) * k; - G4double crossSectionMaximum = 0.; - - G4double minEnergy = SiStructure.Energy(shell); - G4double maxEnergy = maximumEnergyTransfer; - G4int nEnergySteps = 100; - - G4double value(minEnergy); - G4double stpEnergy(std::pow(maxEnergy/value, 1./static_cast(nEnergySteps-1))); - G4int step(nEnergySteps); - while (step>0) - { - step--; - G4double differentialCrossSection = DifferentialCrossSection(particleDefinition, k/eV, value/eV, shell); - if(differentialCrossSection >= crossSectionMaximum) crossSectionMaximum = differentialCrossSection; - value*=stpEnergy; - } - G4double secondaryElectronKineticEnergy = 0.; - do - { - secondaryElectronKineticEnergy = G4UniformRand() * (maximumEnergyTransfer-SiStructure.Energy(shell)); - - } while(G4UniformRand()*crossSectionMaximum >= - DifferentialCrossSection(particleDefinition, k/eV,(secondaryElectronKineticEnergy+SiStructure.Energy(shell))/eV,shell)); - return secondaryElectronKineticEnergy; - } - - return 0; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -void G4MuElecInelasticModel::RandomizeEjectedElectronDirection(G4ParticleDefinition* particleDefinition, - G4double k, - G4double secKinetic, - G4double & cosTheta, - G4double & phi ) -{ - if (particleDefinition == G4Electron::ElectronDefinition()) - { - phi = twopi * G4UniformRand(); - G4double sin2O = (1.-secKinetic/k) / (1.+secKinetic/(2.*electron_mass_c2)); - cosTheta = std::sqrt(1.-sin2O); - } - - if (particleDefinition == G4Proton::ProtonDefinition()) - { - G4double maxSecKinetic = 4.* (electron_mass_c2 / proton_mass_c2) * k; - phi = twopi * G4UniformRand(); - cosTheta = std::sqrt(secKinetic / maxSecKinetic); - } - - else - { - G4double maxSecKinetic = 4.* (electron_mass_c2 / particleDefinition->GetPDGMass()) * k; - phi = twopi * G4UniformRand(); - cosTheta = std::sqrt(secKinetic / maxSecKinetic); - } -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -double G4MuElecInelasticModel::DifferentialCrossSection(G4ParticleDefinition * particleDefinition, - G4double k, - G4double energyTransfer, - G4int LevelIndex) -{ - G4double sigma = 0.; - - if (energyTransfer >= SiStructure.Energy(LevelIndex)) - { - G4double valueT1 = 0; - G4double valueT2 = 0; - G4double valueE21 = 0; - G4double valueE22 = 0; - G4double valueE12 = 0; - G4double valueE11 = 0; - - G4double xs11 = 0; - G4double xs12 = 0; - G4double xs21 = 0; - G4double xs22 = 0; - - if (particleDefinition == G4Electron::ElectronDefinition()) - { - // k should be in eV and energy transfer eV also - - std::vector::iterator t2 = std::upper_bound(eTdummyVec.begin(),eTdummyVec.end(), k); - std::vector::iterator t1 = t2-1; - // SI : the following condition avoids situations where energyTransfer >last vector element - if (energyTransfer <= eVecm[(*t1)].back() && energyTransfer <= eVecm[(*t2)].back() ) - { - std::vector::iterator e12 = std::upper_bound(eVecm[(*t1)].begin(),eVecm[(*t1)].end(), energyTransfer); - std::vector::iterator e11 = e12-1; - - std::vector::iterator e22 = std::upper_bound(eVecm[(*t2)].begin(),eVecm[(*t2)].end(), energyTransfer); - std::vector::iterator e21 = e22-1; - - valueT1 =*t1; - valueT2 =*t2; - valueE21 =*e21; - valueE22 =*e22; - valueE12 =*e12; - valueE11 =*e11; - - xs11 = eDiffCrossSectionData[LevelIndex][valueT1][valueE11]; - xs12 = eDiffCrossSectionData[LevelIndex][valueT1][valueE12]; - xs21 = eDiffCrossSectionData[LevelIndex][valueT2][valueE21]; - xs22 = eDiffCrossSectionData[LevelIndex][valueT2][valueE22]; - } - - } - - if (particleDefinition == G4Proton::ProtonDefinition()) - { - // k should be in eV and energy transfer eV also - std::vector::iterator t2 = std::upper_bound(pTdummyVec.begin(),pTdummyVec.end(), k); - std::vector::iterator t1 = t2-1; - if (energyTransfer <= pVecm[(*t1)].back() && energyTransfer <= pVecm[(*t2)].back() ) - { - std::vector::iterator e12 = std::upper_bound(pVecm[(*t1)].begin(),pVecm[(*t1)].end(), energyTransfer); - std::vector::iterator e11 = e12-1; - - std::vector::iterator e22 = std::upper_bound(pVecm[(*t2)].begin(),pVecm[(*t2)].end(), energyTransfer); - std::vector::iterator e21 = e22-1; - - valueT1 =*t1; - valueT2 =*t2; - valueE21 =*e21; - valueE22 =*e22; - valueE12 =*e12; - valueE11 =*e11; - - xs11 = pDiffCrossSectionData[LevelIndex][valueT1][valueE11]; - xs12 = pDiffCrossSectionData[LevelIndex][valueT1][valueE12]; - xs21 = pDiffCrossSectionData[LevelIndex][valueT2][valueE21]; - xs22 = pDiffCrossSectionData[LevelIndex][valueT2][valueE22]; - } - } - - G4double xsProduct = xs11 * xs12 * xs21 * xs22; - if (xsProduct != 0.) - { - sigma = QuadInterpolator( valueE11, valueE12, - valueE21, valueE22, - xs11, xs12, - xs21, xs22, - valueT1, valueT2, - k, energyTransfer); - } - - } - - return sigma; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -G4double G4MuElecInelasticModel::LogLogInterpolate(G4double e1, - G4double e2, - G4double e, - G4double xs1, - G4double xs2) -{ - G4double a = (std::log10(xs2)-std::log10(xs1)) / (std::log10(e2)-std::log10(e1)); - G4double b = std::log10(xs2) - a*std::log10(e2); - G4double sigma = a*std::log10(e) + b; - G4double value = (std::pow(10.,sigma)); - return value; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -G4double G4MuElecInelasticModel::QuadInterpolator(G4double e11, G4double e12, - G4double e21, G4double e22, - G4double xs11, G4double xs12, - G4double xs21, G4double xs22, - G4double t1, G4double t2, - G4double t, G4double e) -{ - G4double interpolatedvalue1 = LogLogInterpolate(e11, e12, e, xs11, xs12); - G4double interpolatedvalue2 = LogLogInterpolate(e21, e22, e, xs21, xs22); - G4double value = LogLogInterpolate(t1, t2, t, interpolatedvalue1, interpolatedvalue2); - return value; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - -G4int G4MuElecInelasticModel::RandomSelect(G4double k, const G4String& particle ) -{ - G4int level = 0; - - std::map< G4String,G4MuElecCrossSectionDataSet*,std::less >::iterator pos; - pos = tableData.find(particle); - - if (pos != tableData.end()) - { - G4MuElecCrossSectionDataSet* table = pos->second; - - if (table != 0) - { - G4double* valuesBuffer = new G4double[table->NumberOfComponents()]; - const size_t n(table->NumberOfComponents()); - size_t i(n); - G4double value = 0.; - - while (i>0) - { - i--; - valuesBuffer[i] = table->GetComponent(i)->FindValue(k); - value += valuesBuffer[i]; - } - - value *= G4UniformRand(); - - i = n; - - while (i > 0) - { - i--; - - if (valuesBuffer[i] > value) - { - delete[] valuesBuffer; - return i; - } - value -= valuesBuffer[i]; - } - - if (valuesBuffer) delete[] valuesBuffer; - - } - } - else - { - G4Exception("G4MuElecInelasticModel::RandomSelect","em0002",FatalException,"Model not applicable to particle type."); - } - - return level; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... - - diff --git a/source/processes/electromagnetic/lowenergy/src/G4PenelopeAnnihilationModel.cc b/source/processes/electromagnetic/lowenergy/src/G4PenelopeAnnihilationModel.cc index 41db41a4ce..f5f2aec421 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4PenelopeAnnihilationModel.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4PenelopeAnnihilationModel.cc @@ -289,7 +289,7 @@ G4double G4PenelopeAnnihilationModel:: ComputeCrossSectionPerElectron(G4double e G4double gamma2 = gamma*gamma; G4double f2 = gamma2-1.0; G4double f1 = std::sqrt(f2); - G4double crossSection = fPielr2*((gamma2+4.0*gamma+1.0)*std::log(gamma+f1)/f2 + G4double crossSection = fPielr2*((gamma2+4.0*gamma+1.0)*G4Log(gamma+f1)/f2 - (gamma+3.0)/f1)/(gamma+1.0); return crossSection; } diff --git a/source/processes/electromagnetic/lowenergy/src/G4PenelopeBremsstrahlungAngular.cc b/source/processes/electromagnetic/lowenergy/src/G4PenelopeBremsstrahlungAngular.cc index 7fc8922dc1..08f66dd387 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4PenelopeBremsstrahlungAngular.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4PenelopeBremsstrahlungAngular.cc @@ -219,7 +219,7 @@ void G4PenelopeBremsstrahlungAngular::PrepareTables(const G4Material* material,G //fill vectors for (k=0;kPutValue(k,pZ[k],std::log(QQ1[k][i][j])); + QQ1vector->PutValue(k,pZ[k],G4Log(QQ1[k][i][j])); QQ2vector->PutValue(k,pZ[k],QQ2[k][i][j]); } @@ -259,7 +259,7 @@ void G4PenelopeBremsstrahlungAngular::PrepareTables(const G4Material* material,G for (j=0;jPutValue(j,pK[j],std::log(Q1[i][j])); //logarithmic + Q1vector->PutValue(j,pK[j],G4Log(Q1[i][j])); //logarithmic Q2vector->PutValue(j,pK[j],Q2[i][j]); } diff --git a/source/processes/electromagnetic/lowenergy/src/G4PenelopeBremsstrahlungFS.cc b/source/processes/electromagnetic/lowenergy/src/G4PenelopeBremsstrahlungFS.cc index 3af0eecde4..24e857af48 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4PenelopeBremsstrahlungFS.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4PenelopeBremsstrahlungFS.cc @@ -338,16 +338,16 @@ void G4PenelopeBremsstrahlungFS::BuildScaledXSTable(const G4Material* material, (G4PhysicsFreeVector*) ((*thePhysicsTable)[ix]); for (size_t ie=0;iePutValue(ie+1,logene,std::log(aValue)); + theVec->PutValue(ie+1,logene,G4Log(aValue)); } //Add fake point at 1 eV using an extrapolation with the derivative //at the first valid point (Penelope approach) G4double derivative = ((*theVec)[2]-(*theVec)[1])/(theVec->Energy(2) - theVec->Energy(1)); - G4double log1eV = std::log(1*eV); + G4double log1eV = G4Log(1*eV); G4double val1eV = (*theVec)[1]+derivative*(log1eV-theVec->Energy(1)); //fake point at very low energy theVec->PutValue(0,log1eV,val1eV); @@ -495,7 +495,7 @@ G4double G4PenelopeBremsstrahlungFS::GetMomentumIntegral(G4double* y, G4double b=dy/dx; G4double a=y1-b*x1; if (momOrder == -1) - ds = a*std::log(xtc/x1)+b*(xtc-x1); + ds = a*G4Log(xtc/x1)+b*(xtc-x1); else if (momOrder == 0) //speed it up, not using pow() ds = a*(xtc-x1) + 0.5*b*(xtc*xtc-x1*x1); else @@ -578,7 +578,7 @@ void G4PenelopeBremsstrahlungFS::InitializeEnergySampling(const G4Material* mate G4double y2=G4Exp((*v2)[ie+1]); G4double B = (y2-y1)/(x2-x1); G4double A = y1-B*x1; - G4double dS = A*std::log(x2/x1)+B*(x2-x1); + G4double dS = A*G4Log(x2/x1)+B*(x2-x1); value += dS; theVec->PutValue(ix,theXGrid[ix],value); } diff --git a/source/processes/electromagnetic/lowenergy/src/G4PenelopeBremsstrahlungModel.cc b/source/processes/electromagnetic/lowenergy/src/G4PenelopeBremsstrahlungModel.cc index 0576195b7a..2c25e2404d 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4PenelopeBremsstrahlungModel.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4PenelopeBremsstrahlungModel.cc @@ -537,7 +537,7 @@ void G4PenelopeBremsstrahlungModel::BuildXSTable(const G4Material* mat,G4double //the 32-point x grid. Interpolation is log-log size_t nBinsX = fPenelopeFSHelper->GetNBinsX(); G4double* tempData = new G4double[nBinsX]; - G4double logene = std::log(energy); + G4double logene = G4Log(energy); for (size_t ix=0;ixGetEffectiveZSquared(mat))); G4double corr = 1.0-G4Exp(-t*(1.2359e-1-t*(6.1274e-2-t* (3.1516e-2-t*(7.7446e-3-t*(1.0595e-3-t* diff --git a/source/processes/electromagnetic/lowenergy/src/G4PenelopeComptonModel.cc b/source/processes/electromagnetic/lowenergy/src/G4PenelopeComptonModel.cc index cd86467435..20ca009730 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4PenelopeComptonModel.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4PenelopeComptonModel.cc @@ -326,7 +326,7 @@ void G4PenelopeComptonModel::SampleSecondaries(std::vector* G4double ek1 = eks-ek2-1.0; G4double taumin = 1.0/ek2; - G4double a1 = std::log(ek2); + G4double a1 = G4Log(ek2); G4double a2 = a1+2.0*ek*(1.0+ek)/(ek2*ek2); G4double TST = 0; @@ -452,10 +452,10 @@ void G4PenelopeComptonModel::SampleSecondaries(std::vector* hartreeFunc = (*theTable)[targetOscillator]->GetHartreeFactor(); oscStren = (*theTable)[targetOscillator]->GetOscillatorStrength(); if (A < 0.5) - pzomc = (std::sqrt(0.5)-std::sqrt(0.5-std::log(2.0*A)))/ + pzomc = (std::sqrt(0.5)-std::sqrt(0.5-G4Log(2.0*A)))/ (std::sqrt(2.0)*hartreeFunc); else - pzomc = (std::sqrt(0.5-std::log(2.0-2.0*A))-std::sqrt(0.5))/ + pzomc = (std::sqrt(0.5-G4Log(2.0-2.0*A))-std::sqrt(0.5))/ (std::sqrt(2.0)*hartreeFunc); } while (pzomc < -1); @@ -657,7 +657,7 @@ void G4PenelopeComptonModel::SampleSecondaries(std::vector* */ - //Always produce explicitely the electron + //Always produce explicitly the electron G4DynamicParticle* electron = 0; G4double xEl = sinThetaE * std::cos(phi+pi); @@ -925,7 +925,7 @@ G4double G4PenelopeComptonModel::KleinNishinaCrossSection(G4double energy, G4double ek1 = eks-ek2-1.0; G4double t0 = 1.0/ek2; - G4double csl = 0.5*eks*t0*t0+ek2*t0+ek1*std::log(t0)-(1.0/t0); + G4double csl = 0.5*eks*t0*t0+ek2*t0+ek1*G4Log(t0)-(1.0/t0); G4PenelopeOscillatorTable* theTable = oscManager->GetOscillatorTableCompton(material); @@ -936,7 +936,7 @@ G4double G4PenelopeComptonModel::KleinNishinaCrossSection(G4double energy, G4double tau=(energy-ionEnergy)/energy; if (tau > t0) { - G4double csu = 0.5*eks*tau*tau+ek2*tau+ek1*std::log(tau)-(1.0/tau); + G4double csu = 0.5*eks*tau*tau+ek2*tau+ek1*G4Log(tau)-(1.0/tau); G4double stre = theOsc->GetOscillatorStrength(); cs += stre*(csu-csl); diff --git a/source/processes/electromagnetic/lowenergy/src/G4PenelopeCrossSection.cc b/source/processes/electromagnetic/lowenergy/src/G4PenelopeCrossSection.cc index 2bcf9134e0..f5005113f1 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4PenelopeCrossSection.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4PenelopeCrossSection.cc @@ -144,35 +144,35 @@ void G4PenelopeCrossSection::AddCrossSectionPoint(size_t binNumber,G4double ener G4cout << "Trying to register more points than originally declared" << G4endl; return; } - G4double logEne = std::log(energy); + G4double logEne = G4Log(energy); //XS0 - G4double val = std::log(std::max(XS0,1e-42*cm2)); //avoid log(0) + G4double val = G4Log(std::max(XS0,1e-42*cm2)); //avoid log(0) theVector->PutValue(binNumber,logEne,val); //XS1 theVector = (G4PhysicsFreeVector*) (*softCrossSections)[1]; - val = std::log(std::max(XS1,1e-42*eV*cm2)); //avoid log(0) + val = G4Log(std::max(XS1,1e-42*eV*cm2)); //avoid log(0) theVector->PutValue(binNumber,logEne,val); //XS2 theVector = (G4PhysicsFreeVector*) (*softCrossSections)[2]; - val = std::log(std::max(XS2,1e-42*eV*eV*cm2)); //avoid log(0) + val = G4Log(std::max(XS2,1e-42*eV*eV*cm2)); //avoid log(0) theVector->PutValue(binNumber,logEne,val); //XH0 theVector = (G4PhysicsFreeVector*) (*hardCrossSections)[0]; - val = std::log(std::max(XH0,1e-42*cm2)); //avoid log(0) + val = G4Log(std::max(XH0,1e-42*cm2)); //avoid log(0) theVector->PutValue(binNumber,logEne,val); //XH1 theVector = (G4PhysicsFreeVector*) (*hardCrossSections)[1]; - val = std::log(std::max(XH1,1e-42*eV*cm2)); //avoid log(0) + val = G4Log(std::max(XH1,1e-42*eV*cm2)); //avoid log(0) theVector->PutValue(binNumber,logEne,val); //XH2 theVector = (G4PhysicsFreeVector*) (*hardCrossSections)[2]; - val = std::log(std::max(XH2,1e-42*eV*eV*cm2)); //avoid log(0) + val = G4Log(std::max(XH2,1e-42*eV*eV*cm2)); //avoid log(0) theVector->PutValue(binNumber,logEne,val); return; @@ -212,8 +212,8 @@ void G4PenelopeCrossSection::AddShellCrossSectionPoint(size_t binNumber, G4cout << "Trying to register more points than originally declared" << G4endl; return; } - G4double logEne = std::log(energy); - G4double val = std::log(std::max(xs,1e-42*cm2)); //avoid log(0) + G4double logEne = G4Log(energy); + G4double val = G4Log(std::max(xs,1e-42*cm2)); //avoid log(0) theVector->PutValue(binNumber,logEne,val); return; @@ -242,7 +242,7 @@ G4double G4PenelopeCrossSection::GetTotalCrossSection(G4double energy) const G4cout << "Soft cross section table looks not filled" << G4endl; return result; } - G4double logene = std::log(energy); + G4double logene = G4Log(energy); G4double logXS = theVector->Value(logene); G4double softXS = G4Exp(logXS); @@ -285,7 +285,7 @@ G4double G4PenelopeCrossSection::GetHardCrossSection(G4double energy) const G4cout << "Hard cross section table looks not filled" << G4endl; return result; } - G4double logene = std::log(energy); + G4double logene = G4Log(energy); G4double logXS = theVector->Value(logene); result = G4Exp(logXS); @@ -315,7 +315,7 @@ G4double G4PenelopeCrossSection::GetSoftStoppingPower(G4double energy) const G4cout << "Soft cross section table looks not filled" << G4endl; return result; } - G4double logene = std::log(energy); + G4double logene = G4Log(energy); G4double logXS = theVector->Value(logene); result = G4Exp(logXS); @@ -352,7 +352,7 @@ G4double G4PenelopeCrossSection::GetShellCrossSection(size_t shellID,G4double en G4cout << "Shell cross section table looks not filled" << G4endl; return result; } - G4double logene = std::log(energy); + G4double logene = G4Log(energy); G4double logXS = theVector->Value(logene); result = G4Exp(logXS); @@ -397,7 +397,7 @@ G4double G4PenelopeCrossSection::GetNormalizedShellCrossSection(size_t shellID,G G4cout << "Shell cross section table looks not filled" << G4endl; return result; } - G4double logene = std::log(energy); + G4double logene = G4Log(energy); G4double logXS = theVector->Value(logene); result = G4Exp(logXS); @@ -439,7 +439,7 @@ void G4PenelopeCrossSection::NormalizeShellCrossSections() normFactor += G4Exp((*theVec)[i]); } - G4double logNormFactor = std::log(normFactor); + G4double logNormFactor = G4Log(normFactor); //Normalize for (size_t shellID=0;shellIDGetNumberOfElements();j++) { - G4int iZ = (G4int) theElementVector->at(j)->GetZ(); + G4int iZ = theElementVector->at(j)->GetZasInt(); //read data files only in the master if (!logAtomicCrossSection->count(iZ)) ReadDataFile(iZ); @@ -263,7 +263,7 @@ G4double G4PenelopeGammaConversionModel::ComputeCrossSectionPerAtom( } G4double cs = 0; - G4double logene = std::log(energy); + G4double logene = G4Log(energy); G4PhysicsFreeVector* theVec = logAtomicCrossSection->find(iZ)->second; @@ -480,7 +480,7 @@ G4PenelopeGammaConversionModel::SampleSecondaries(std::vectorPutValue(i,std::log(ene),std::log(xs)); + theVec->PutValue(i,G4Log(ene),G4Log(xs)); } file.close(); @@ -699,7 +699,7 @@ void G4PenelopeGammaConversionModel::InitializeScreeningFunctions(const G4Materi fMaterialInvScreeningRadius->insert(std::make_pair(material,matRadius)); std::pair myPair(0,0); - G4double f0a = 4.0*std::log(fAtomicScreeningRadius[intZ-1]); + G4double f0a = 4.0*G4Log(fAtomicScreeningRadius[intZ-1]); G4double f0b = f0a - 4.0*fc; myPair.first = f0a; myPair.second = f0b; @@ -732,7 +732,7 @@ G4PenelopeGammaConversionModel::GetScreeningFunctions(G4double B) // std::pair result(0.,0.); G4double BSquared = B*B; - G4double f1 = 2.0-2.0*std::log(1.0+BSquared); + G4double f1 = 2.0-2.0*G4Log(1.0+BSquared); G4double f2 = f1 - 6.66666666e-1; // (-2/3) if (B < 1.0e-10) f1 = f1-twopi*B; @@ -740,7 +740,7 @@ G4PenelopeGammaConversionModel::GetScreeningFunctions(G4double B) { G4double a0 = 4.0*B*std::atan(1./B); f1 = f1 - a0; - f2 += 2.0*BSquared*(4.0-a0-3.0*std::log((1.0+BSquared)/BSquared)); + f2 += 2.0*BSquared*(4.0-a0-3.0*G4Log((1.0+BSquared)/BSquared)); } G4double g1 = 0.5*(3.0*f1-f2); G4double g2 = 0.25*(3.0*f1+f2); diff --git a/source/processes/electromagnetic/lowenergy/src/G4PenelopeIonisationModel.cc b/source/processes/electromagnetic/lowenergy/src/G4PenelopeIonisationModel.cc index f34310f097..e099077e5a 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4PenelopeIonisationModel.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4PenelopeIonisationModel.cc @@ -788,7 +788,7 @@ void G4PenelopeIonisationModel::SampleFinalStateElectron(const G4Material* mat, { cps = kineticEnergy*rb; cp = std::sqrt(cps); - G4double XHDT0 = std::max(std::log(gam2)-beta2-delta,0.); + G4double XHDT0 = std::max(G4Log(gam2)-beta2-delta,0.); if (resEne > 1.0e-6*kineticEnergy) { G4double cpp = std::sqrt((kineticEnergy-resEne)*(kineticEnergy-resEne+2.0*electron_mass_c2)); @@ -801,7 +801,7 @@ void G4PenelopeIonisationModel::SampleFinalStateElectron(const G4Material* mat, } if (QM < cutoffEne) { - XHDL = std::log(cutoffEne*(QM+2.0*electron_mass_c2)/(QM*(cutoffEne+2.0*electron_mass_c2))) + XHDL = G4Log(cutoffEne*(QM+2.0*electron_mass_c2)/(QM*(cutoffEne+2.0*electron_mass_c2))) *invResEne; XHDT = XHDT0*invResEne; } @@ -832,7 +832,7 @@ void G4PenelopeIonisationModel::SampleFinalStateElectron(const G4Material* mat, G4double rl1 = 1.0-rcl; G4double rrl1 = 1.0/rl1; XHC = (amol*(0.5-rcl)+1.0/rcl-rrl1+ - (1.0-amol)*std::log(rcl*rrl1))/EE; + (1.0-amol)*G4Log(rcl*rrl1))/EE; } //Total cross section per molecule for the active shell, in cm2 @@ -1002,7 +1002,7 @@ void G4PenelopeIonisationModel::SampleFinalStatePositron(const G4Material* mat, { cps = kineticEnergy*rb; cp = std::sqrt(cps); - G4double XHDT0 = std::max(std::log(gam2)-beta2-delta,0.); + G4double XHDT0 = std::max(G4Log(gam2)-beta2-delta,0.); if (resEne > 1.0e-6*kineticEnergy) { G4double cpp = std::sqrt((kineticEnergy-resEne)*(kineticEnergy-resEne+2.0*electron_mass_c2)); @@ -1015,7 +1015,7 @@ void G4PenelopeIonisationModel::SampleFinalStatePositron(const G4Material* mat, } if (QM < cutoffEne) { - XHDL = std::log(cutoffEne*(QM+2.0*electron_mass_c2)/(QM*(cutoffEne+2.0*electron_mass_c2))) + XHDL = G4Log(cutoffEne*(QM+2.0*electron_mass_c2)/(QM*(cutoffEne+2.0*electron_mass_c2))) *invResEne; XHDT = XHDT0*invResEne; } @@ -1042,7 +1042,7 @@ void G4PenelopeIonisationModel::SampleFinalStatePositron(const G4Material* mat, if (wcl < wmaxc) { G4double rl1 = 1.0-rcl; - XHC = ((1.0/rcl-1.0)+bha1*std::log(rcl)+bha2*rl1 + XHC = ((1.0/rcl-1.0)+bha1*G4Log(rcl)+bha2*rl1 + (bha3/2.0)*(rcl*rcl-1.0) + (bha4/3.0)*(1.0-rcl*rcl*rcl))/kineticEnergy; } diff --git a/source/processes/electromagnetic/lowenergy/src/G4PenelopeIonisationXSHandler.cc b/source/processes/electromagnetic/lowenergy/src/G4PenelopeIonisationXSHandler.cc index 15ad805c13..7deb40c038 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4PenelopeIonisationXSHandler.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4PenelopeIonisationXSHandler.cc @@ -299,7 +299,7 @@ G4double G4PenelopeIonisationXSHandler::GetDensityCorrection(const G4Material* m G4cout << "Invalid energy " << energy/eV << " eV " << G4endl; return 0; } - G4double logene = std::log(energy); + G4double logene = G4Log(energy); if (theDeltaTable->count(mat)) { @@ -410,12 +410,12 @@ void G4PenelopeIonisationXSHandler::BuildDeltaTable(const G4Material* mat) G4PenelopeOscillator* theOscLocal3 = (*theTable)[i]; G4double wri = theOscLocal3->GetResonanceEnergy(); delta += theOscLocal3->GetOscillatorStrength()* - std::log(1.0+(wl2/(wri*wri))); + G4Log(1.0+(wl2/(wri*wri))); } delta = (delta/totalZ)-wl2/(gamSq*plasmaSq); } energy = std::max(1e-9*eV,energy); //prevents log(0) - theVector->PutValue(bin,std::log(energy),delta); + theVector->PutValue(bin,G4Log(energy),delta); } theDeltaTable->insert(std::make_pair(mat,theVector)); return; @@ -453,7 +453,7 @@ G4DataVector* G4PenelopeIonisationXSHandler::ComputeShellCrossSectionsElectron(G G4double beta = (gammaSq-1.0)/gammaSq; G4double pielr2 = pi*classic_electr_radius*classic_electr_radius; //pi*re^2 G4double constant = pielr2*2.0*electron_mass_c2/beta; - G4double XHDT0 = std::log(gammaSq)-beta; + G4double XHDT0 = G4Log(gammaSq)-beta; G4double cpSq = energy*(energy+2.0*electron_mass_c2); G4double cp = std::sqrt(cpSq); @@ -480,7 +480,7 @@ G4DataVector* G4PenelopeIonisationXSHandler::ComputeShellCrossSectionsElectron(G } G4double SDL1 = 0; if (QM < cutoffEne) - SDL1 = std::log(cutoffEne*(QM+2.0*electron_mass_c2)/(QM*(cutoffEne+2.0*electron_mass_c2))); + SDL1 = G4Log(cutoffEne*(QM+2.0*electron_mass_c2)/(QM*(cutoffEne+2.0*electron_mass_c2))); //Distant transverse interactions if (SDL1) @@ -510,14 +510,14 @@ G4DataVector* G4PenelopeIonisationXSHandler::ComputeShellCrossSectionsElectron(G if (wl < wu-(1e-5*eV)) { H0 += (1.0/(ee-wu)) - (1.0/(ee-wl)) - (1.0/wu) + (1.0/wl) + - (1.0-amol)*std::log(((ee-wu)*wl)/((ee-wl)*wu))/ee + + (1.0-amol)*G4Log(((ee-wu)*wl)/((ee-wl)*wu))/ee + amol*(wu-wl)/(ee*ee); - H1 += std::log(wu/wl)+(ee/(ee-wu))-(ee/(ee-wl)) + - (2.0-amol)*std::log((ee-wu)/(ee-wl)) + + H1 += G4Log(wu/wl)+(ee/(ee-wu))-(ee/(ee-wl)) + + (2.0-amol)*G4Log((ee-wu)/(ee-wl)) + amol*(wu*wu-wl*wl)/(2.0*ee*ee); H2 += (2.0-amol)*(wu-wl)+(wu*(2.0*ee-wu)/(ee-wu)) - (wl*(2.0*ee-wl)/(ee-wl)) + - (3.0-amol)*ee*std::log((ee-wu)/(ee-wl)) + + (3.0-amol)*ee*G4Log((ee-wu)/(ee-wl)) + amol*(wu*wu*wu-wl*wl*wl)/(3.0*ee*ee); wu = wl; } @@ -535,14 +535,14 @@ G4DataVector* G4PenelopeIonisationXSHandler::ComputeShellCrossSectionsElectron(G } S0 += (1.0/(ee-wu))-(1.0/(ee-wl)) - (1.0/wu) + (1.0/wl) + - (1.0-amol)*std::log(((ee-wu)*wl)/((ee-wl)*wu))/ee + + (1.0-amol)*G4Log(((ee-wu)*wl)/((ee-wl)*wu))/ee + amol*(wu-wl)/(ee*ee); - S1 += std::log(wu/wl)+(ee/(ee-wu))-(ee/(ee-wl)) + - (2.0-amol)*std::log((ee-wu)/(ee-wl)) + + S1 += G4Log(wu/wl)+(ee/(ee-wu))-(ee/(ee-wl)) + + (2.0-amol)*G4Log((ee-wu)/(ee-wl)) + amol*(wu*wu-wl*wl)/(2.0*ee*ee); S2 += (2.0-amol)*(wu-wl)+(wu*(2.0*ee-wu)/(ee-wu)) - (wl*(2.0*ee-wl)/(ee-wl)) + - (3.0-amol)*ee*std::log((ee-wu)/(ee-wl)) + + (3.0-amol)*ee*G4Log((ee-wu)/(ee-wl)) + amol*(wu*wu*wu-wl*wl*wl)/(3.0*ee*ee); (*result)[0] = constant*H0; @@ -585,7 +585,7 @@ G4DataVector* G4PenelopeIonisationXSHandler::ComputeShellCrossSectionsPositron(G G4double beta = (gammaSq-1.0)/gammaSq; G4double pielr2 = pi*classic_electr_radius*classic_electr_radius; //pi*re^2 G4double constant = pielr2*2.0*electron_mass_c2/beta; - G4double XHDT0 = std::log(gammaSq)-beta; + G4double XHDT0 = G4Log(gammaSq)-beta; G4double cpSq = energy*(energy+2.0*electron_mass_c2); G4double cp = std::sqrt(cpSq); @@ -618,7 +618,7 @@ G4DataVector* G4PenelopeIonisationXSHandler::ComputeShellCrossSectionsPositron(G } G4double SDL1 = 0; if (QM < cutoffEne) - SDL1 = std::log(cutoffEne*(QM+2.0*electron_mass_c2)/(QM*(cutoffEne+2.0*electron_mass_c2))); + SDL1 = G4Log(cutoffEne*(QM+2.0*electron_mass_c2)/(QM*(cutoffEne+2.0*electron_mass_c2))); //Distant transverse interactions if (SDL1) @@ -650,11 +650,11 @@ G4DataVector* G4PenelopeIonisationXSHandler::ComputeShellCrossSectionsPositron(G { G4double wlSq = wl*wl; G4double wuSq = wu*wu; - H0 += (1.0/wl) - (1.0/wu)- bha1*std::log(wu/wl)/energy + H0 += (1.0/wl) - (1.0/wu)- bha1*G4Log(wu/wl)/energy + bha2*(wu-wl)/energySq - bha3*(wuSq-wlSq)/(2.0*energySq*energy) + bha4*(wuSq*wu-wlSq*wl)/(3.0*energySq*energySq); - H1 += std::log(wu/wl) - bha1*(wu-wl)/energy + H1 += G4Log(wu/wl) - bha1*(wu-wl)/energy + bha2*(wuSq-wlSq)/(2.0*energySq) - bha3*(wuSq*wu-wlSq*wl)/(3.0*energySq*energy) + bha4*(wuSq*wuSq-wlSq*wlSq)/(4.0*energySq*energySq); @@ -680,12 +680,12 @@ G4DataVector* G4PenelopeIonisationXSHandler::ComputeShellCrossSectionsPositron(G G4double wlSq = wl*wl; G4double wuSq = wu*wu; - S0 += (1.0/wl) - (1.0/wu) - bha1*std::log(wu/wl)/energy + S0 += (1.0/wl) - (1.0/wu) - bha1*G4Log(wu/wl)/energy + bha2*(wu-wl)/energySq - bha3*(wuSq-wlSq)/(2.0*energySq*energy) + bha4*(wuSq*wu-wlSq*wl)/(3.0*energySq*energySq); - S1 += std::log(wu/wl) - bha1*(wu-wl)/energy + S1 += G4Log(wu/wl) - bha1*(wu-wl)/energy + bha2*(wuSq-wlSq)/(2.0*energySq) - bha3*(wuSq*wu-wlSq*wl)/(3.0*energySq*energy) + bha4*(wuSq*wuSq-wlSq*wlSq)/(4.0*energySq*energySq); diff --git a/source/processes/electromagnetic/lowenergy/src/G4PenelopeOscillatorManager.cc b/source/processes/electromagnetic/lowenergy/src/G4PenelopeOscillatorManager.cc index 1f49a4ae92..c88109e2f7 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4PenelopeOscillatorManager.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4PenelopeOscillatorManager.cc @@ -486,7 +486,7 @@ void G4PenelopeOscillatorManager::BuildOscillatorTable(const G4Material* materia for (size_t i=0;isize();i++) { G4cout << "Element " << (*elementVector)[i]->GetSymbol() << " (Z = " << - (*elementVector)[i]->GetZ() << ") --> " << + (*elementVector)[i]->GetZasInt() << ") --> " << (*StechiometricFactors)[i] << " atoms/molecule " << G4endl; } } @@ -494,10 +494,10 @@ void G4PenelopeOscillatorManager::BuildOscillatorTable(const G4Material* materia for (G4int i=0;iGetZ(); + G4int iZ = (*elementVector)[i]->GetZasInt(); totalZ += iZ * (*StechiometricFactors)[i]; totalMolecularWeight += (*elementVector)[i]->GetAtomicMassAmu() * (*StechiometricFactors)[i]; - meanExcitationEnergy += iZ*std::log(meanAtomExcitationEnergy[iZ-1])*(*StechiometricFactors)[i]; + meanExcitationEnergy += iZ*G4Log(meanAtomExcitationEnergy[iZ-1])*(*StechiometricFactors)[i]; /* G4cout << iZ << " " << (*StechiometricFactors)[i] << " " << totalZ << " " << totalMolecularWeight/(g/mole) << " " << meanExcitationEnergy << " " << @@ -606,7 +606,7 @@ void G4PenelopeOscillatorManager::BuildOscillatorTable(const G4Material* materia if (verbosityLevel > 1) { - G4cout << "Estimated oscillator strenght and energy of plasmon: " << + G4cout << "Estimated oscillator strength and energy of plasmon: " << conductionStrength << " and " << plasmaEnergy/eV << " eV" << G4endl; } @@ -622,7 +622,7 @@ void G4PenelopeOscillatorManager::BuildOscillatorTable(const G4Material* materia if (verbosityLevel >1 ) G4cout << material->GetName() << " is a conductor " << G4endl; isAConductor = true; - //copy the conduction strenght.. The number is going to change. + //copy the conduction strength.. The number is going to change. G4double conductionStrengthCopy = conductionStrength; G4bool quit = false; for (size_t i = 1; isize() && !quit ;i++) @@ -699,7 +699,7 @@ void G4PenelopeOscillatorManager::BuildOscillatorTable(const G4Material* materia G4double adjustmentFactor = 0; if (helper->size() > 1) { - G4double TST = totalZ*std::log(meanExcitationEnergy/eV); + G4double TST = totalZ*G4Log(meanExcitationEnergy/eV); G4double AALow = 0.1; G4double AAHigh = 10.; do @@ -711,7 +711,7 @@ void G4PenelopeOscillatorManager::BuildOscillatorTable(const G4Material* materia if (i == 0 && isAConductor) { G4double resEne = (*helper)[i].GetResonanceEnergy(); - sumLocal += (*helper)[i].GetOscillatorStrength()*std::log(resEne/eV); + sumLocal += (*helper)[i].GetOscillatorStrength()*G4Log(resEne/eV); } else { @@ -721,7 +721,7 @@ void G4PenelopeOscillatorManager::BuildOscillatorTable(const G4Material* materia 2./3.*(oscStre/totalZ)*Omega*Omega; G4double resEne = std::sqrt(WI2); (*helper)[i].SetResonanceEnergy(resEne); - sumLocal += (*helper)[i].GetOscillatorStrength()*std::log(resEne/eV); + sumLocal += (*helper)[i].GetOscillatorStrength()*G4Log(resEne/eV); } } if (sumLocal < TST) @@ -746,11 +746,11 @@ void G4PenelopeOscillatorManager::BuildOscillatorTable(const G4Material* materia } //Check again for data consistency - G4double xcheck = (*helper)[0].GetOscillatorStrength()*std::log((*helper)[0].GetResonanceEnergy()); + G4double xcheck = (*helper)[0].GetOscillatorStrength()*G4Log((*helper)[0].GetResonanceEnergy()); G4double TST = (*helper)[0].GetOscillatorStrength(); for (size_t i=1;isize();i++) { - xcheck += (*helper)[i].GetOscillatorStrength()*std::log((*helper)[i].GetResonanceEnergy()); + xcheck += (*helper)[i].GetOscillatorStrength()*G4Log((*helper)[i].GetResonanceEnergy()); TST += (*helper)[i].GetOscillatorStrength(); } if (std::fabs(TST-totalZ)>1e-8*totalZ) @@ -813,7 +813,7 @@ void G4PenelopeOscillatorManager::BuildOscillatorTable(const G4Material* materia //COPY THE HELPER (vector of object) to theTable (vector of Pointers). for (size_t i=0;isize();i++) { - //copy content --> one may need it later (e.g. to fill an other table, with variations) + //copy content --> one may need it later (e.g. to fill another table, with variations) G4PenelopeOscillator* theOsc = new G4PenelopeOscillator((*helper)[i]); theTable->push_back(theOsc); } @@ -852,8 +852,8 @@ void G4PenelopeOscillatorManager::BuildOscillatorTable(const G4Material* materia skipLoop = true; if (!skipLoop) { - G4double newRes = G4Exp((oscStre*std::log(resEne)+ - oscStrePlus1*std::log(resEnePlus1)) + G4double newRes = G4Exp((oscStre*G4Log(resEne)+ + oscStrePlus1*G4Log(resEnePlus1)) /(oscStre+oscStrePlus1)); (*theTable)[i]->SetResonanceEnergy(newRes); G4double newIon = (oscStre*ionEne+ @@ -942,7 +942,7 @@ void G4PenelopeOscillatorManager::BuildOscillatorTable(const G4Material* materia //COPY THE HELPER (vector of object) to theTable (vector of Pointers). for (size_t i=0;isize();i++) { - //copy content --> one may need it later (e.g. to fill an other table, with variations) + //copy content --> one may need it later (e.g. to fill another table, with variations) G4PenelopeOscillator* theOsc = new G4PenelopeOscillator((*helper)[i]); theTableC->push_back(theOsc); } diff --git a/source/processes/electromagnetic/lowenergy/src/G4PenelopePhotoElectricModel.cc b/source/processes/electromagnetic/lowenergy/src/G4PenelopePhotoElectricModel.cc index d4c780a92b..7407d7d4f0 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4PenelopePhotoElectricModel.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4PenelopePhotoElectricModel.cc @@ -149,7 +149,7 @@ void G4PenelopePhotoElectricModel::Initialise(const G4ParticleDefinition* partic for (size_t j=0;jGetNumberOfElements();j++) { - G4int iZ = (G4int) theElementVector->at(j)->GetZ(); + G4int iZ = theElementVector->at(j)->GetZasInt(); //read data files only in the master if (!logAtomicShellXS->count(iZ)) ReadDataFile(iZ); @@ -260,7 +260,7 @@ G4double G4PenelopePhotoElectricModel::ComputeCrossSectionPerAtom( "Unable to retrieve the total cross section table"); return 0; } - G4double logene = std::log(energy); + G4double logene = G4Log(energy); G4double logXS = totalXSLog->Value(logene); cross = G4Exp(logXS); @@ -316,7 +316,7 @@ void G4PenelopePhotoElectricModel::SampleSecondaries(std::vectorGetZ(); + G4int Z = anElement->GetZasInt(); if (verboseLevel > 2) G4cout << "Selected " << anElement->GetName() << G4endl; @@ -611,7 +611,7 @@ void G4PenelopePhotoElectricModel::ReadDataFile(G4int Z) G4double aValue = 0; file >> energy ; energy *= eV; - G4double logene = std::log(energy); + G4double logene = G4Log(energy); //loop on the columns for (size_t i=0;iPutValue(k,logene,std::log(aValue)); + theVec->PutValue(k,logene,G4Log(aValue)); } } @@ -686,7 +686,7 @@ G4double G4PenelopePhotoElectricModel::GetShellCrossSection(G4int Z,size_t shell "Unable to retrieve the total cross section table"); return 0; } - G4double logene = std::log(energy); + G4double logene = G4Log(energy); G4double logXS = totalXSLog->Value(logene); G4double cross = G4Exp(logXS); if (cross < 2e-40*cm2) cross = 0; @@ -733,7 +733,7 @@ void G4PenelopePhotoElectricModel::SetParticle(const G4ParticleDefinition* p) size_t G4PenelopePhotoElectricModel::SelectRandomShell(G4int Z,G4double energy) { - G4double logEnergy = std::log(energy); + G4double logEnergy = G4Log(energy); //Check if data have been read (it should be!) if (!logAtomicShellXS->count(Z)) diff --git a/source/processes/electromagnetic/lowenergy/src/G4PenelopeRayleighModel.cc b/source/processes/electromagnetic/lowenergy/src/G4PenelopeRayleighModel.cc index c4f44cb4f9..6494b15984 100644 --- a/source/processes/electromagnetic/lowenergy/src/G4PenelopeRayleighModel.cc +++ b/source/processes/electromagnetic/lowenergy/src/G4PenelopeRayleighModel.cc @@ -74,11 +74,11 @@ G4PenelopeRayleighModel::G4PenelopeRayleighModel(const G4ParticleDefinition* par // 4 = entering in methods //build the energy grid. It is the same for all materials - G4double logenergy = std::log(fIntrinsicLowEnergyLimit/2.); - G4double logmaxenergy = std::log(1.5*fIntrinsicHighEnergyLimit); + G4double logenergy = G4Log(fIntrinsicLowEnergyLimit/2.); + G4double logmaxenergy = G4Log(1.5*fIntrinsicHighEnergyLimit); //finer grid below 160 keV - G4double logtransitionenergy = std::log(160*keV); - G4double logfactor1 = std::log(10.)/250.; + G4double logtransitionenergy = G4Log(160*keV); + G4double logfactor1 = G4Log(10.)/250.; G4double logfactor2 = logfactor1*10; logEnergyGridPMax.push_back(logenergy); do{ @@ -129,7 +129,7 @@ void G4PenelopeRayleighModel::ClearTables() for (auto& item : (*logFormFactorTable)) if (item.second) delete item.second; delete logFormFactorTable; - logFormFactorTable = nullptr; //zero explicitely + logFormFactorTable = nullptr; //zero explicitly } if (pMaxTable) @@ -137,7 +137,7 @@ void G4PenelopeRayleighModel::ClearTables() for (auto& item : (*pMaxTable)) if (item.second) delete item.second; delete pMaxTable; - pMaxTable = nullptr; //zero explicitely + pMaxTable = nullptr; //zero explicitly } if (samplingTable) @@ -145,7 +145,7 @@ void G4PenelopeRayleighModel::ClearTables() for (auto& item : (*samplingTable)) if (item.second) delete item.second; delete samplingTable; - samplingTable = nullptr; //zero explicitely + samplingTable = nullptr; //zero explicitly } return; @@ -198,7 +198,7 @@ void G4PenelopeRayleighModel::Initialise(const G4ParticleDefinition* part, for (size_t j=0;jGetNumberOfElements();j++) { - G4int iZ = (G4int) theElementVector->at(j)->GetZ(); + G4int iZ = theElementVector->at(j)->GetZasInt(); //read data files only in the master if (!logAtomicCrossSection->count(iZ)) ReadDataFile(iZ); @@ -326,7 +326,7 @@ G4double G4PenelopeRayleighModel::ComputeCrossSectionPerAtom(const G4ParticleDef "em2041",FatalException,ed); return 0; } - G4double logene = std::log(energy); + G4double logene = G4Log(energy); G4double logXS = atom->Value(logene); cross = G4Exp(logXS); @@ -394,13 +394,13 @@ void G4PenelopeRayleighModel::BuildFormFactorTable(const G4Material* material) G4double ff2 = 0; //squared form factor for (G4int i=0;iGetZ(); + G4int iZ = (*elementVector)[i]->GetZasInt(); G4PhysicsFreeVector* theAtomVec = atomicFormFactor->find(iZ)->second; G4double f = (*theAtomVec)[k]; //the q-grid is always the same ff2 += f*f*(*StechiometricFactors)[i]; } if (ff2) - theFFVec->PutValue(k,logQSquareGrid[k],std::log(ff2)); //NOTICE: THIS IS log(Q^2) vs. log(F^2) + theFFVec->PutValue(k,logQSquareGrid[k],G4Log(ff2)); //NOTICE: THIS IS log(Q^2) vs. log(F^2) } logFormFactorTable->insert(std::make_pair(material,theFFVec)); @@ -489,7 +489,7 @@ void G4PenelopeRayleighModel::SampleSecondaries(std::vector* G4AutoLock lock(&PenelopeRayleighModelMutex); for (size_t j=0;jGetNumberOfElements();j++) { - G4int iZ = (G4int) theElementVector->at(j)->GetZ(); + G4int iZ = theElementVector->at(j)->GetZasInt(); if (!logAtomicCrossSection->count(iZ)) { lock.lock(); @@ -636,7 +636,7 @@ void G4PenelopeRayleighModel::ReadDataFile(const G4int Z) //dimensional quantities ene *= eV; xs *= cm2; - theVec->PutValue(i,std::log(ene),std::log(xs)); + theVec->PutValue(i,G4Log(ene),G4Log(xs)); if (file.eof() && i != (nPoints-1)) //file ended too early { G4ExceptionDescription ed ; @@ -694,7 +694,7 @@ void G4PenelopeRayleighModel::ReadDataFile(const G4int Z) theFFVec->PutValue(i,q,ff); if (fillQGrid) { - logQSquareGrid.push_back(2.0*std::log(q)); + logQSquareGrid.push_back(2.0*G4Log(q)); } if (file.eof() && i != (nPoints-1)) //file ended too early { @@ -726,7 +726,7 @@ G4double G4PenelopeRayleighModel::GetFSquared(const G4Material* mat, const G4dou //Input value QSquared could be zero: protect the log() below against //the FPE exception //If Q<1e-10, set Q to 1e-10 - G4double logQSquared = (QSquared>1e-10) ? std::log(QSquared) : -23.; + G4double logQSquared = (QSquared>1e-10) ? G4Log(QSquared) : -23.; //last value of the table G4double maxlogQ2 = logQSquareGrid[logQSquareGrid.size()-1]; diff --git a/source/processes/electromagnetic/lowenergy/src/G4PenelopeRayleighModelMI.cc b/source/processes/electromagnetic/lowenergy/src/G4PenelopeRayleighModelMI.cc new file mode 100644 index 0000000000..48c2a655dc --- /dev/null +++ b/source/processes/electromagnetic/lowenergy/src/G4PenelopeRayleighModelMI.cc @@ -0,0 +1,1877 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// $Id: G4PenelopeRayleighModelMI.hh 75573 2013-11-04 11:48:15Z gcosmo $ +// +// Author: Luciano Pandola and Gianfranco Paternò +// +// ------------------------------------------------------------------- +// History: +// 03 Dec 2009 L. Pandola 1st implementation +// 25 May 2011 L. Pandola Renamed (make v2008 as default Penelope) +// 27 Sep 2013 L. Pandola Migration to MT paradigm +// 20 Aug 2017 G. Paternò Molecular Interference implementation +// 24 Mar 2019 G. Paternò Improved Molecular Interference implementation +// 20 Jun 2020 G. Paternò Read qext separately and leave original atomic form factors +// 27 Aug 2020 G. Paternò Further improvement of MI implementation +// +// ------------------------------------------------------------------- +// Class description: +// Low Energy Electromagnetic Physics, Rayleigh Scattering +// with the model from Penelope, version 2008 +// ------------------------------------------------------------------- +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +#include "G4PenelopeRayleighModelMI.hh" + +#include "G4PenelopeSamplingData.hh" +#include "G4ParticleDefinition.hh" +#include "G4MaterialCutsCouple.hh" +#include "G4ProductionCutsTable.hh" +#include "G4DynamicParticle.hh" +#include "G4ElementTable.hh" +#include "G4Element.hh" +#include "G4PhysicsFreeVector.hh" +#include "G4AutoLock.hh" +#include "G4Exp.hh" +#include "G4ExtendedMaterial.hh" +#include "G4CrystalExtension.hh" +#include "G4EmParameters.hh" + +#include "G4PhysicalConstants.hh" +#include "G4SystemOfUnits.hh" +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4PenelopeRayleighModelMI::G4PenelopeRayleighModelMI(const G4ParticleDefinition* part, + const G4String& nam) : + G4VEmModel(nam), + fParticleChange(nullptr),fParticle(nullptr),isInitialised(false),logAtomicCrossSection(nullptr), + atomicFormFactor(nullptr),MolInterferenceData(nullptr),logFormFactorTable(nullptr), + pMaxTable(nullptr),samplingTable(nullptr),fLocalTable(false),fIsMIActive(true), + angularFunction(nullptr), fKnownMaterials(nullptr) +{ + fIntrinsicLowEnergyLimit = 100.0*eV; + fIntrinsicHighEnergyLimit = 100.0*GeV; + //SetLowEnergyLimit(fIntrinsicLowEnergyLimit); + SetHighEnergyLimit(fIntrinsicHighEnergyLimit); + + if (part) SetParticle(part); + + verboseLevel = 0; + // Verbosity scale: + // 0 = nothing + // 1 = warning for energy non-conservation + // 2 = details of energy budget + // 3 = calculation of FF and CS, file openings, sampling of atoms + // 4 = entering in methods + + //build the energy grid. It is the same for all materials + G4double logenergy = G4Log(fIntrinsicLowEnergyLimit/2.); + G4double logmaxenergy = G4Log(1.5*fIntrinsicHighEnergyLimit); + //finer grid below 160 keV + G4double logtransitionenergy = G4Log(160*keV); + G4double logfactor1 = G4Log(10.)/250.; + G4double logfactor2 = logfactor1*10; + logEnergyGridPMax.push_back(logenergy); + do { + if (logenergy < logtransitionenergy) + logenergy += logfactor1; + else + logenergy += logfactor2; + logEnergyGridPMax.push_back(logenergy); + } while (logenergy < logmaxenergy); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4PenelopeRayleighModelMI::~G4PenelopeRayleighModelMI() +{ + if (IsMaster() || fLocalTable) { + + if (logAtomicCrossSection) { + for (auto& item : (*logAtomicCrossSection)) + if (item.second) delete item.second; + delete logAtomicCrossSection; + logAtomicCrossSection = nullptr; + } + + if (atomicFormFactor) { + for (auto& item : (*atomicFormFactor)) + if (item.second) delete item.second; + delete atomicFormFactor; + atomicFormFactor = nullptr; + } + + if (MolInterferenceData) { + for (auto& item : (*MolInterferenceData)) + if (item.second) delete item.second; + delete MolInterferenceData; + MolInterferenceData = nullptr; + } + + if (fKnownMaterials) + { + delete fKnownMaterials; + fKnownMaterials = nullptr; + } + + if (angularFunction) + { + delete angularFunction; + angularFunction = nullptr; + } + + ClearTables(); + + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4PenelopeRayleighModelMI::ClearTables() +{ + /* + if (!IsMaster()) + //Should not be here! + G4Exception("G4PenelopeRayleighModelMI::ClearTables()", + "em0100",FatalException,"Worker thread in this method"); + */ + + if (logFormFactorTable) { + for (auto& item : (*logFormFactorTable)) + if (item.second) delete item.second; + delete logFormFactorTable; + logFormFactorTable = nullptr; //zero explicitly + } + + if (pMaxTable) { + for (auto& item : (*pMaxTable)) + if (item.second) delete item.second; + delete pMaxTable; + pMaxTable = nullptr; //zero explicitly + } + + if (samplingTable) { + for (auto& item : (*samplingTable)) + if (item.second) delete item.second; + delete samplingTable; + samplingTable = nullptr; //zero explicitly + } + + return; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4PenelopeRayleighModelMI::Initialise(const G4ParticleDefinition* part, + const G4DataVector& ) +{ + if (verboseLevel > 3) + G4cout << "Calling G4PenelopeRayleighModelMI::Initialise()" << G4endl; + + SetParticle(part); + + + if (verboseLevel) + G4cout << "# Molecular Interference is " << (fIsMIActive ? "ON" : "OFF") << " #" << G4endl; + + //Only the master model creates/fills/destroys the tables + if (IsMaster() && part == fParticle) { + //clear tables depending on materials, not the atomic ones + ClearTables(); + + //Use here the highest verbosity, from G4EmParameter or local + G4int globVerb = G4EmParameters::Instance()->Verbose(); + if (globVerb > verboseLevel) + { + verboseLevel = globVerb; + if (verboseLevel) + G4cout << "Verbosity level of G4PenelopeRayleighModelMI set to " << verboseLevel << + " from G4EmParameters()" << G4endl; + } + + if (verboseLevel > 3) + G4cout << "Calling G4PenelopeRayleighModelMI::Initialise() [master]" << G4endl; + + //Load the list of known materials and the DCS integration grid + if (fIsMIActive) + { + if (!fKnownMaterials) + fKnownMaterials = new std::map; + if (!fKnownMaterials->size()) + LoadKnownMIFFMaterials(); + if (!angularFunction) + { + //Create and fill once + angularFunction = new G4PhysicsFreeVector(Ntheta); + CalculateThetaAndAngFun(); //angular funtion for DCS integration + } + } + + //create new tables + //logAtomicCrossSection and atomicFormFactor are created only once, + //since they are never cleared + if (!logAtomicCrossSection) + logAtomicCrossSection = new std::map; + + if (!atomicFormFactor) + atomicFormFactor = new std::map; + + if (fIsMIActive && !MolInterferenceData) + MolInterferenceData = new std::map; //G. Paternò + + if (!logFormFactorTable) + logFormFactorTable = new std::map; + + if (!pMaxTable) + pMaxTable = new std::map; + + if (!samplingTable) + samplingTable = new std::map; + + //loop on the used materials + G4ProductionCutsTable* theCoupleTable = G4ProductionCutsTable::GetProductionCutsTable(); + + for (size_t i=0;iGetTableSize();i++) { + const G4Material* material = + theCoupleTable->GetMaterialCutsCouple(i)->GetMaterial(); + const G4ElementVector* theElementVector = material->GetElementVector(); + + for (size_t j=0;jGetNumberOfElements();j++) { + G4int iZ = theElementVector->at(j)->GetZasInt(); + //read data files only in the master + if (!logAtomicCrossSection->count(iZ)) + ReadDataFile(iZ); + } + + //1) Read MI form factors + if (fIsMIActive && !MolInterferenceData->count(material->GetName())) + ReadMolInterferenceData(material->GetName()); + + //2) If the table has not been built for the material, do it! + if (!logFormFactorTable->count(material)) + BuildFormFactorTable(material); + + //3) retrieve or build the sampling table + if (!(samplingTable->count(material))) + InitializeSamplingAlgorithm(material); + + //4) retrieve or build the pMax data + if (!pMaxTable->count(material)) + GetPMaxTable(material); + } + + if (verboseLevel > 1) { + G4cout << G4endl << "Penelope Rayleigh model v2008 is initialized" << G4endl + << "Energy range: " + << LowEnergyLimit() / keV << " keV - " + << HighEnergyLimit() / GeV << " GeV" + << G4endl; + } + + } + + if (isInitialised) + return; + fParticleChange = GetParticleChangeForGamma(); + isInitialised = true; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4PenelopeRayleighModelMI::InitialiseLocal(const G4ParticleDefinition* part, + G4VEmModel *masterModel) +{ + if (verboseLevel > 3) + G4cout << "Calling G4PenelopeRayleighModelMI::InitialiseLocal()" << G4endl; + + //Check that particle matches: one might have multiple master models + //(e.g. for e+ and e-) + if (part == fParticle) { + + //Get the const table pointers from the master to the workers + const G4PenelopeRayleighModelMI* theModel = + static_cast (masterModel); + + //Copy pointers to the data tables + logAtomicCrossSection = theModel->logAtomicCrossSection; + atomicFormFactor = theModel->atomicFormFactor; + MolInterferenceData = theModel->MolInterferenceData; + logFormFactorTable = theModel->logFormFactorTable; + pMaxTable = theModel->pMaxTable; + samplingTable = theModel->samplingTable; + fKnownMaterials = theModel->fKnownMaterials; + angularFunction = theModel->angularFunction; + + //Copy the G4DataVector with the grid + logQSquareGrid = theModel->logQSquareGrid; + + //Same verbosity for all workers, as the master + verboseLevel = theModel->verboseLevel; + + } + + return; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +namespace {G4Mutex PenelopeRayleighModelMutex = G4MUTEX_INITIALIZER;} +G4double G4PenelopeRayleighModelMI::ComputeCrossSectionPerAtom(const G4ParticleDefinition*, + G4double energy, + G4double Z, + G4double, + G4double, + G4double) +{ + //Cross section of Rayleigh scattering in Penelope v2008 is calculated by the EPDL97 + //tabulation, Cuellen et al. (1997), with non-relativistic form factors from Hubbel + //et al. J. Phys. Chem. Ref. Data 4 (1975) 471; Erratum ibid. 6 (1977) 615. + + if (verboseLevel > 3) + G4cout << "Calling CrossSectionPerAtom() of G4PenelopeRayleighModelMI" << G4endl; + + G4int iZ = (G4int) Z; + + //Either Initialize() was not called, or we are in a slave and InitializeLocal() was + //not invoked + if (!logAtomicCrossSection) { + //create a **thread-local** version of the table. Used only for G4EmCalculator and + //Unit Tests + fLocalTable = true; + logAtomicCrossSection = new std::map; + } + + //now it should be ok + if (!logAtomicCrossSection->count(iZ)) { + //If we are here, it means that Initialize() was inkoved, but the MaterialTable was + //not filled up. This can happen in a UnitTest or via G4EmCalculator + if (verboseLevel > 0) { + //Issue a G4Exception (warning) only in verbose mode + G4ExceptionDescription ed; + ed << "Unable to retrieve the cross section table for Z=" << iZ << G4endl; + ed << "This can happen only in Unit Tests or via G4EmCalculator" << G4endl; + G4Exception("G4PenelopeRayleighModelMI::ComputeCrossSectionPerAtom()", + "em2040",JustWarning,ed); + } + + //protect file reading via autolock + G4AutoLock lock(&PenelopeRayleighModelMutex); + ReadDataFile(iZ); + lock.unlock(); + + } + + G4double cross = 0; + + G4PhysicsFreeVector* atom = logAtomicCrossSection->find(iZ)->second; + if (!atom) { + G4ExceptionDescription ed; + ed << "Unable to find Z=" << iZ << " in the atomic cross section table" << G4endl; + G4Exception("G4PenelopeRayleighModelMI::ComputeCrossSectionPerAtom()", + "em2041",FatalException,ed); + return 0; + } + + G4double logene = G4Log(energy); + G4double logXS = atom->Value(logene); + cross = G4Exp(logXS); + + if (verboseLevel > 2) { + G4cout << "Rayleigh cross section at " << energy/keV << " keV for Z=" + << Z << " = " << cross/barn << " barn" << G4endl; + } + + return cross; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4PenelopeRayleighModelMI::CalculateThetaAndAngFun() +{ + G4double theta = 0; + + for(G4int k=0; kPutValue(k,theta,value); + if (verboseLevel > 3) + G4cout << "theta[" << k << "]: " << angularFunction->Energy(k) + << ", angFun[" << k << "]: " << (*angularFunction)[k] << G4endl; + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4PenelopeRayleighModelMI::CalculateQSquared(G4double angle, G4double energy) +{ + G4double lambda,x,q,q2 = 0; + + lambda = hbarc*twopi/energy; + x = 1./lambda*std::sin(angle/2.); + q = 2.*h_Planck*x/(electron_mass_c2/c_light); + + if (verboseLevel > 3) { + G4cout << "E: " << energy/keV << " keV, lambda: " << lambda/nm << " nm" + << ", x: " << x*nm << ", q: " << q << G4endl; + } + + q2 = std::pow(q,2); + + return q2; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +//Overriding of parent's (G4VEmModel) method +G4double G4PenelopeRayleighModelMI::CrossSectionPerVolume(const G4Material* material, + const G4ParticleDefinition* p, + G4double energy, + G4double, + G4double) +{ + //check if we are in a Unit Test (only for the first time) + static G4bool amInAUnitTest = false; + if (G4ProductionCutsTable::GetProductionCutsTable()->GetTableSize() == 0 && !amInAUnitTest) + { + amInAUnitTest = true; + G4ExceptionDescription ed; + ed << "The ProductionCuts table is empty " << G4endl; + ed << "This should happen only in Unit Tests" << G4endl; + G4Exception("G4PenelopeRayleighModelMI::CrossSectionPerVolume()", + "em2019",JustWarning,ed); + } + //If the material does not have a MIFF, continue with the old-style calculation + G4String matname = material->GetName(); + if (amInAUnitTest) + { + //No need to lock, as this is always called in a master + const G4ElementVector* theElementVector = material->GetElementVector(); + //protect file reading via autolock + for (size_t j=0;jGetNumberOfElements();j++) { + G4int iZ = theElementVector->at(j)->GetZasInt(); + if (!logAtomicCrossSection->count(iZ)) { + ReadDataFile(iZ); + } + } + if (fIsMIActive) + ReadMolInterferenceData(matname); + if (!logFormFactorTable->count(material)) + BuildFormFactorTable(material); + if (!(samplingTable->count(material))) + InitializeSamplingAlgorithm(material); + if (!pMaxTable->count(material)) + GetPMaxTable(material); + } + + G4bool useMIFF = fIsMIActive && (MolInterferenceData->count(matname) || matname.find("MedMat") != std::string::npos); + if (!useMIFF) + { + if (verboseLevel > 2) + G4cout << "Rayleigh CS of: " << matname << " calculated through CSperAtom!" << G4endl; + return G4VEmModel::CrossSectionPerVolume(material,p,energy); + } + + // If we are here, it means that we have to integrate the cross section + if (verboseLevel > 2) + G4cout << "Rayleigh CS of: " << matname + << " calculated through integration of the DCS" << G4endl; + + + G4double cs = 0; + + //force null cross-section if below the low-energy edge of the table + if (energy < LowEnergyLimit()) return cs; + + + + + //if the material is a CRYSTAL, forbid this process + if (material->IsExtended() && material->GetName() != "CustomMat") { + G4ExtendedMaterial* extendedmaterial = (G4ExtendedMaterial*)material; + G4CrystalExtension* crystalExtension = (G4CrystalExtension*)extendedmaterial->RetrieveExtension("crystal"); + if (crystalExtension != 0) { + G4cout << "The material has a crystalline structure, a dedicated diffraction model is used!" << G4endl; + return 0; + } + } + + + //GET MATERIAL INFORMATION + + G4double atomDensity = material->GetTotNbOfAtomsPerVolume(); + G4int nElements = material->GetNumberOfElements(); + const G4ElementVector* elementVector = material->GetElementVector(); + const G4double* fractionVector = material->GetFractionVector(); + //const G4double* theAtomNumDensityVector = material-> GetVecNbOfAtomsPerVolume(); + + //Stoichiometric factors + std::vector *StoichiometricFactors = new std::vector; + for (G4int i=0;iGetA()/(g/mole); + StoichiometricFactors->push_back(fraction/atomicWeigth); + } + G4double MaxStoichiometricFactor = 0.; + for (G4int i=0;i MaxStoichiometricFactor) + MaxStoichiometricFactor = (*StoichiometricFactors)[i]; + } + for (G4int i=0;i 2) + G4cout << "Material " << material->GetName() << " has " << atPerMol << " atoms " + << "per molecule and " << moleculeDensity/(cm*cm*cm) << " molecule/cm3" << G4endl; + + //Equivalent molecular weight (dimensionless) + G4double MolWeight = 0.; + for (G4int i=0;iGetA()/(g/mole); + + if (verboseLevel > 2) + G4cout << "Molecular weight of " << matname << ": " << MolWeight << " g/mol" << G4endl; + + G4double IntegrandFun[Ntheta]; + for (G4int k=0; kEnergy(k); //the x-value is called "Energy", but is an angle + G4double F2 = GetFSquared(material,CalculateQSquared(theta,energy)); + IntegrandFun[k] = (*angularFunction)[k]*F2; + } + + G4double constant = pi*classic_electr_radius*classic_electr_radius; + cs = constant*IntegrateFun(IntegrandFun,Ntheta,fDTheta); + + //Now cs is the cross section per molecule, let's calculate the cross section per volume + G4double csvolume = cs*moleculeDensity; + + + //print CS and mfp + if (verboseLevel > 2) + G4cout << "Rayleigh CS of " << matname << " at " << energy/keV + << " keV: " << cs/barn << " barn" + << ", mean free path: " << 1./csvolume/mm << " mm" << G4endl; + + + delete StoichiometricFactors; + + //return CS + return csvolume; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4PenelopeRayleighModelMI::BuildFormFactorTable(const G4Material* material) +{ + if (verboseLevel > 3) + G4cout << "Calling BuildFormFactorTable() of G4PenelopeRayleighModelMI" << G4endl; + + + //GET MATERIAL INFORMATION + G4int nElements = material->GetNumberOfElements(); + const G4ElementVector* elementVector = material->GetElementVector(); + const G4double* fractionVector = material->GetFractionVector(); + + //Stoichiometric factors + std::vector *StoichiometricFactors = new std::vector; + for (G4int i=0;iGetA()/(g/mole); + StoichiometricFactors->push_back(fraction/atomicWeigth); + } + G4double MaxStoichiometricFactor = 0.; + for (G4int i=0;i MaxStoichiometricFactor) + MaxStoichiometricFactor = (*StoichiometricFactors)[i]; + } + if (MaxStoichiometricFactor<1e-16) { + G4ExceptionDescription ed; + ed << "Inconsistent data of atomic composition for " << material->GetName() << G4endl; + G4Exception("G4PenelopeRayleighModelMI::BuildFormFactorTable()", + "em2042",FatalException,ed); + } + for (G4int i=0;iGetA()/(g/mole); + + + //CREATE THE FORM FACTOR TABLE + //First, the form factors are retrieved [F/sqrt(W)]. + //Then, they are squared and multiplied for MolWeight -> F2 [dimensionless]. + //This makes difference for CS calculation, but not for theta sampling. + G4PhysicsFreeVector* theFFVec = new G4PhysicsFreeVector(logQSquareGrid.size()); + theFFVec->SetSpline(true); + + G4String matname = material->GetName(); + G4String aFileNameFF = ""; + + //retrieve MIdata (fFileNameFF) + G4MIData* dataMI = GetMIData(material); + if (dataMI) + aFileNameFF = dataMI->GetFilenameFF(); + + //read the MIFF from a file passed by the user + if (fIsMIActive && aFileNameFF != "") { + if (verboseLevel) + G4cout << "Read MIFF for " << matname << " from custom file: " << aFileNameFF << G4endl; + + ReadMolInterferenceData(matname,aFileNameFF); + G4PhysicsFreeVector* Fvector = MolInterferenceData->find(matname)->second; + + for (size_t k=0;kValue(q); + //G4cout << "QGrid[" << k+1 << "]: " << q << ", F[" << k+1 << "]: " << f << G4endl; + + ff2 = f*f*MolWeight; + if (ff2) theFFVec->PutValue(k,logQSquareGrid[k],G4Log(ff2)); + } + + } + //retrieve the MIFF from the database or use the IAM + else { + //medical material: composition of fat, water, bonematrix, mineral + if (fIsMIActive && matname.find("MedMat") != std::string::npos) { + if (verboseLevel) + G4cout << "Build MIFF from components for " << matname << G4endl; + + //get the material composition from its name + G4int ki, kf=6, ktot=19; + G4double comp[4]; + G4String compstring = matname.substr(kf+1, ktot); + for (size_t j=0; j<4; j++) { + ki = kf+1; + kf = ki+4; + compstring = matname.substr(ki, 4); + comp[j] = atof(compstring.c_str()); + if (verboseLevel > 2) + G4cout << " -- MedMat comp[" << j+1 << "]: " << comp[j] << G4endl; + } + + char* path = std::getenv("G4LEDATA"); + if (!path) { + G4String excep = "G4LEDATA environment variable not set!"; + G4Exception("G4PenelopeRayleighModelMI::BuildFormFactorTable()", + "em0006",FatalException,excep); + } + + if (!MolInterferenceData->count("Fat_MI")) + ReadMolInterferenceData("Fat_MI"); + G4PhysicsFreeVector* fatFF = MolInterferenceData->find("Fat_MI")->second; + + if (!MolInterferenceData->count("Water_MI")) + ReadMolInterferenceData("Water_MI"); + G4PhysicsFreeVector* waterFF = MolInterferenceData->find("Water_MI")->second; + + if (!MolInterferenceData->count("BoneMatrix_MI")) + ReadMolInterferenceData("BoneMatrix_MI"); + G4PhysicsFreeVector* bonematrixFF = MolInterferenceData->find("BoneMatrix_MI")->second; + + if (!MolInterferenceData->count("Mineral_MI")) + ReadMolInterferenceData("Mineral_MI"); + G4PhysicsFreeVector* mineralFF = MolInterferenceData->find("Mineral_MI")->second; + + //get and combine the molecular form factors with interference effect + for (size_t k=0;kValue(q); + G4double fwater = waterFF->Value(q); + G4double fbonematrix = bonematrixFF->Value(q); + G4double fmineral = mineralFF->Value(q); + ff2 = comp[0]*ffat*ffat+comp[1]*fwater*fwater+ + comp[2]*fbonematrix*fbonematrix+comp[3]*fmineral*fmineral; + ff2 *= MolWeight; + if (ff2) theFFVec->PutValue(k,logQSquareGrid[k],G4Log(ff2)); + } + } + //other materials with MIFF (from the database) + else if (fIsMIActive && MolInterferenceData->count(matname)) { + if (verboseLevel) + G4cout << "Read MIFF from database " << matname << G4endl; + G4PhysicsFreeVector* FF = MolInterferenceData->find(matname)->second; + for (size_t k=0;kValue(q); + ff2 = f*f*MolWeight; + if (ff2) theFFVec->PutValue(k,logQSquareGrid[k],G4Log(ff2)); + } + + } + + //IAM + else { + if (verboseLevel) + G4cout << "FF of " << matname << " calculated according to the IAM" << G4endl; + for (size_t k=0;kGetZasInt(); + G4PhysicsFreeVector* theAtomVec = atomicFormFactor->find(iZ)->second; + G4double q = std::pow(G4Exp(logQSquareGrid[k]),0.5); + G4double f = theAtomVec->Value(q); + ff2 += f*f*(*StoichiometricFactors)[i]; + } + if (ff2) theFFVec->PutValue(k,logQSquareGrid[k],G4Log(ff2)); + } + } + } + logFormFactorTable->insert(std::make_pair(material,theFFVec)); + + if (verboseLevel > 3) + DumpFormFactorTable(material); + delete StoichiometricFactors; + + return; + +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4PenelopeRayleighModelMI::SampleSecondaries(std::vector*, + const G4MaterialCutsCouple* couple, + const G4DynamicParticle* aDynamicGamma, + G4double, + G4double) +{ + // Sampling of the Rayleigh final state (namely, scattering angle of the photon) + // from the Penelope2008 model. The scattering angle is sampled from the atomic + // cross section dOmega/d(cosTheta) from Born ("Atomic Phyisics", 1969), disregarding + // anomalous scattering effects. The Form Factor F(Q) function which appears in the + // analytical cross section is retrieved via the method GetFSquared(); atomic data + // are tabulated for F(Q). Form factor for compounds is calculated according to + // the additivity rule. The sampling from the F(Q) is made via a Rational Inverse + // Transform with Aliasing (RITA) algorithm; RITA parameters are calculated once + // for each material and managed by G4PenelopeSamplingData objects. + // The sampling algorithm (rejection method) has efficiency 67% at low energy, and + // increases with energy. For E=100 keV the efficiency is 100% and 86% for + // hydrogen and uranium, respectively. + + if (verboseLevel > 3) + G4cout << "Calling SamplingSecondaries() of G4PenelopeRayleighModelMI" << G4endl; + + G4double photonEnergy0 = aDynamicGamma->GetKineticEnergy(); + + if (photonEnergy0 <= fIntrinsicLowEnergyLimit) { + fParticleChange->ProposeTrackStatus(fStopAndKill); + fParticleChange->SetProposedKineticEnergy(0.); + fParticleChange->ProposeLocalEnergyDeposit(photonEnergy0); + return; + } + + G4ParticleMomentum photonDirection0 = aDynamicGamma->GetMomentumDirection(); + + const G4Material* theMat = couple->GetMaterial(); + + //1) Verify if tables are ready + //Either Initialize() was not called, or we are in a slave and InitializeLocal() was + //not invoked + if (!pMaxTable || !samplingTable || !logAtomicCrossSection || !atomicFormFactor || + !logFormFactorTable) { + //create a **thread-local** version of the table. Used only for G4EmCalculator and + //Unit Tests + fLocalTable = true; + if (!logAtomicCrossSection) + logAtomicCrossSection = new std::map; + if (!atomicFormFactor) + atomicFormFactor = new std::map; + if (!logFormFactorTable) + logFormFactorTable = new std::map; + if (!pMaxTable) + pMaxTable = new std::map; + if (!samplingTable) + samplingTable = new std::map; + if (fIsMIActive && !MolInterferenceData) + MolInterferenceData = new std::map; + } + + if (!samplingTable->count(theMat)) { + //If we are here, it means that Initialize() was inkoved, but the MaterialTable was + //not filled up. This can happen in a UnitTest + if (verboseLevel > 0) { + //Issue a G4Exception (warning) only in verbose mode + G4ExceptionDescription ed; + ed << "Unable to find the samplingTable data for " << + theMat->GetName() << G4endl; + ed << "This can happen only in Unit Tests" << G4endl; + G4Exception("G4PenelopeRayleighModelMI::SampleSecondaries()", + "em2019",JustWarning,ed); + } + const G4ElementVector* theElementVector = theMat->GetElementVector(); + //protect file reading via autolock + G4AutoLock lock(&PenelopeRayleighModelMutex); + for (size_t j=0;jGetNumberOfElements();j++) { + G4int iZ = theElementVector->at(j)->GetZasInt(); + if (!logAtomicCrossSection->count(iZ)) { + lock.lock(); + ReadDataFile(iZ); + lock.unlock(); + } + } + lock.lock(); + + //1) If the table has not been built for the material, do it! + if (!logFormFactorTable->count(theMat)) + BuildFormFactorTable(theMat); + + //2) retrieve or build the sampling table + if (!(samplingTable->count(theMat))) + InitializeSamplingAlgorithm(theMat); + + //3) retrieve or build the pMax data + if (!pMaxTable->count(theMat)) + GetPMaxTable(theMat); + + lock.unlock(); + } + + //Ok, restart the job + G4PenelopeSamplingData* theDataTable = samplingTable->find(theMat)->second; + G4PhysicsFreeVector* thePMax = pMaxTable->find(theMat)->second; + + G4double cosTheta = 1.0; + + //OK, ready to go! + G4double qmax = 2.0*photonEnergy0/electron_mass_c2; //this is non-dimensional now + + if (qmax < 1e-10) { //very low momentum transfer + G4bool loopAgain=false; + do { + loopAgain = false; + cosTheta = 1.0-2.0*G4UniformRand(); + G4double G = 0.5*(1+cosTheta*cosTheta); + if (G4UniformRand()>G) + loopAgain = true; + } while(loopAgain); + } + + else { //larger momentum transfer + + size_t nData = theDataTable->GetNumberOfStoredPoints(); + G4double LastQ2inTheTable = theDataTable->GetX(nData-1); + G4double q2max = std::min(qmax*qmax,LastQ2inTheTable); + + G4bool loopAgain = false; + G4double MaxPValue = thePMax->Value(photonEnergy0); + G4double xx=0; + + //Sampling by rejection method. The rejection function is + //G = 0.5*(1+cos^2(theta)) + do { + loopAgain = false; + G4double RandomMax = G4UniformRand()*MaxPValue; + xx = theDataTable->SampleValue(RandomMax); + + //xx is a random value of q^2 in (0,q2max),sampled according to + //F(Q^2) via the RITA algorithm + if (xx > q2max) + loopAgain = true; + cosTheta = 1.0-2.0*xx/q2max; + G4double G = 0.5*(1+cosTheta*cosTheta); + if (G4UniformRand()>G) + loopAgain = true; + } while(loopAgain); + } + + G4double sinTheta = std::sqrt(1-cosTheta*cosTheta); + + //Scattered photon angles. ( Z - axis along the parent photon) + G4double phi = twopi * G4UniformRand() ; + G4double dirX = sinTheta*std::cos(phi); + G4double dirY = sinTheta*std::sin(phi); + G4double dirZ = cosTheta; + + //Update G4VParticleChange for the scattered photon + G4ThreeVector photonDirection1(dirX, dirY, dirZ); + + photonDirection1.rotateUz(photonDirection0); + fParticleChange->ProposeMomentumDirection(photonDirection1) ; + fParticleChange->SetProposedKineticEnergy(photonEnergy0) ; + + return; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4PenelopeRayleighModelMI::ReadDataFile(const G4int Z) +{ + + if (verboseLevel > 2) { + G4cout << "G4PenelopeRayleighModelMI::ReadDataFile()" << G4endl; + G4cout << "Going to read Rayleigh data files for Z=" << Z << G4endl; + } + + char* path = std::getenv("G4LEDATA"); + if (!path) { + G4String excep = "G4LEDATA environment variable not set!"; + G4Exception("G4PenelopeRayleighModelMI::ReadDataFile()", + "em0006",FatalException,excep); + return; + } + + //Read first the cross section file (all the files have 250 points) + std::ostringstream ost; + if (Z>9) + ost << path << "/penelope/rayleigh/pdgra" << Z << ".p08"; + else + ost << path << "/penelope/rayleigh/pdgra0" << Z << ".p08"; + std::ifstream file(ost.str().c_str()); + + if (!file.is_open()) { + G4String excep = "Data file " + G4String(ost.str()) + " not found!"; + G4Exception("G4PenelopeRayleighModelMI::ReadDataFile()", + "em0003",FatalException,excep); + } + + G4int readZ = 0; + size_t nPoints = 0; + file >> readZ >> nPoints; + + if (readZ != Z || nPoints <= 0 || nPoints >= 5000) { + G4ExceptionDescription ed; + ed << "Corrupted data file for Z=" << Z << G4endl; + G4Exception("G4PenelopeRayleighModelMI::ReadDataFile()", + "em0005",FatalException,ed); + return; + } + + G4PhysicsFreeVector* theVec = new G4PhysicsFreeVector((size_t)nPoints); + G4double ene=0,f1=0,f2=0,xs=0; + for (size_t i=0;i> ene >> f1 >> f2 >> xs; + //dimensional quantities + ene *= eV; + xs *= cm2; + theVec->PutValue(i,G4Log(ene),G4Log(xs)); + if (file.eof() && i != (nPoints-1)) { //file ended too early + G4ExceptionDescription ed ; + ed << "Corrupted data file for Z=" << Z << G4endl; + ed << "Found less than " << nPoints << " entries" << G4endl; + G4Exception("G4PenelopeRayleighModelMI::ReadDataFile()", + "em0005",FatalException,ed); + } + } + + if (!logAtomicCrossSection) { + G4Exception("G4PenelopeRayleighModelMI::ReadDataFile()", + "em2044",FatalException,"Unable to allocate the atomic cross section table"); + delete theVec; + return; + } + logAtomicCrossSection->insert(std::make_pair(Z,theVec)); + file.close(); + + //Then, read the extended momentum transfer file + std::ostringstream ost2; + ost2 << path << "/penelope/rayleigh/MIFF/qext.dat"; + file.open(ost2.str().c_str()); + + if (!file.is_open()) { + G4String excep = "Data file " + G4String(ost2.str()) + " not found!"; + G4Exception("G4PenelopeRayleighModelMI::ReadDataFile()", + "em0003",FatalException,excep); + } + + G4bool fillQGrid = false; + if (!logQSquareGrid.size()) { + fillQGrid = true; + nPoints = 1142; + } + + G4double qext = 0; + if (fillQGrid) { //logQSquareGrid filled only one time + for (size_t i=0;i> qext; + logQSquareGrid.push_back(2.0*G4Log(qext)); + } + } + file.close(); + + //Finally, read the form factor file + std::ostringstream ost3; + if (Z>9) + ost3 << path << "/penelope/rayleigh/pdaff" << Z << ".p08"; + else + ost3 << path << "/penelope/rayleigh/pdaff0" << Z << ".p08"; + file.open(ost3.str().c_str()); + + if (!file.is_open()) { + G4String excep = "Data file " + G4String(ost3.str()) + " not found!"; + G4Exception("G4PenelopeRayleighModelMI::ReadDataFile()", + "em0003",FatalException,excep); + } + + file >> readZ >> nPoints; + + if (readZ != Z || nPoints <= 0 || nPoints >= 5000) { + G4ExceptionDescription ed; + ed << "Corrupted data file for Z=" << Z << G4endl; + G4Exception("G4PenelopeRayleighModelMI::ReadDataFile()", + "em0005",FatalException,ed); + return; + } + + G4PhysicsFreeVector* theFFVec = new G4PhysicsFreeVector((size_t)nPoints); + G4double q=0,ff=0,incoh=0; + for (size_t i=0;i> q >> ff >> incoh; //q and ff are dimensionless (q is in units of (m_e*c)) + theFFVec->PutValue(i,q,ff); + if (file.eof() && i != (nPoints-1)) { //file ended too early + G4ExceptionDescription ed; + ed << "Corrupted data file for Z=" << Z << G4endl; + ed << "Found less than " << nPoints << " entries" << G4endl; + G4Exception("G4PenelopeRayleighModelMI::ReadDataFile()", + "em0005",FatalException,ed); + } + } + + if (!atomicFormFactor) { + G4Exception("G4PenelopeRayleighModelMI::ReadDataFile()", + "em2045",FatalException, + "Unable to allocate the atomicFormFactor data table"); + delete theFFVec; + return; + } + + atomicFormFactor->insert(std::make_pair(Z,theFFVec)); + file.close(); + return; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4PenelopeRayleighModelMI::ReadMolInterferenceData(const G4String& matname, + const G4String& FFfilename) +{ + + if (verboseLevel > 2) { + G4cout << "G4PenelopeRayleighModelMI::ReadMolInterferenceData() for material " << + matname << G4endl; + } + G4bool isLocalFile = (FFfilename != "NULL"); + + char* path = std::getenv("G4LEDATA"); + if (!path) { + G4String excep = "G4LEDATA environment variable not set!"; + G4Exception("G4PenelopeRayleighModelMI::ReadMolInterferenceData()", + "em0006",FatalException,excep); + return; + } + + if (!(fKnownMaterials->count(matname)) && !isLocalFile) //material not found + return; + + G4String aFileName = (isLocalFile) ? FFfilename : fKnownMaterials->find(matname)->second; + + //if the material has a MIFF, read it from the database + if (aFileName != "") { + if (verboseLevel > 2) + G4cout << "ReadMolInterferenceData(). Read material: " << matname << ", filename: " << + aFileName << " " << + (isLocalFile ? "(local)" : "(database)") << G4endl; + std::ifstream file; + std::ostringstream ostIMFF; + if (isLocalFile) + ostIMFF << aFileName; + else + ostIMFF << path << "/penelope/rayleigh/MIFF/" << aFileName; + file.open(ostIMFF.str().c_str()); + + if (!file.is_open()) { + G4String excep = "Data file " + G4String(ostIMFF.str()) + " not found!"; + G4Exception("G4PenelopeRayleighModelMI::ReadMolInterferenceData()", + "em1031",FatalException,excep); + return; + } + + //check the number of points in the file + size_t nPoints = 0; + G4double x=0,y=0; + while (file.good()) { + file >> x >> y; + nPoints++; + } + file.close(); + nPoints--; + if (verboseLevel > 3) + G4cout << "Number of nPoints: " << nPoints << G4endl; + + //read the file + file.open(ostIMFF.str().c_str()); + G4PhysicsFreeVector* theFFVec = new G4PhysicsFreeVector((size_t)nPoints); + G4double q=0,ff=0; + for (size_t i=0; i> q >> ff; + + //q and ff are dimensionless (q is in units of (m_e*c)) + theFFVec->PutValue(i,q,ff); + + //file ended too early + if (file.eof() && i != (nPoints-1)) { + G4ExceptionDescription ed; + ed << "Corrupted data file" << G4endl; + ed << "Found less than " << nPoints << " entries" << G4endl; + G4Exception("G4PenelopeRayleighModelMI::ReadMolInterferenceData()", + "em1005",FatalException,ed); + } + } + if (!MolInterferenceData) { + G4Exception("G4PenelopeRayleighModelMI::ReadMolInterferenceData()", + "em2145",FatalException, + "Unable to allocate the Molecular Interference data table"); + delete theFFVec; + return; + } + file.close(); + MolInterferenceData->insert(std::make_pair(matname,theFFVec)); + } + + return; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4PenelopeRayleighModelMI::GetFSquared(const G4Material* mat, const G4double QSquared) +{ + G4double f2 = 0; + //Input value QSquared could be zero: protect the log() below against + //the FPE exception + + //If Q<1e-10, set Q to 1e-10 + G4double logQSquared = (QSquared>1e-10) ? G4Log(QSquared) : -23.; + //last value of the table + G4double maxlogQ2 = logQSquareGrid[logQSquareGrid.size()-1]; + + //now it should be all right + G4PhysicsFreeVector* theVec = logFormFactorTable->find(mat)->second; + + if (!theVec) { + G4ExceptionDescription ed; + ed << "Unable to retrieve F squared table for " << mat->GetName() << G4endl; + G4Exception("G4PenelopeRayleighModelMI::GetFSquared()", + "em2046",FatalException,ed); + return 0; + } + + if (logQSquared < -20) { //Q < 1e-9 + G4double logf2 = (*theVec)[0]; //first value of the table + f2 = G4Exp(logf2); + } + else if (logQSquared > maxlogQ2) + f2 =0; + else { + //log(Q^2) vs. log(F^2) + G4double logf2 = theVec->Value(logQSquared); + f2 = G4Exp(logf2); + } + + if (verboseLevel > 3) { + G4cout << "G4PenelopeRayleighModelMI::GetFSquared() in " << mat->GetName() << G4endl; + G4cout << "Q^2 = " << QSquared << " (units of 1/(m_e*c)); F^2 = " << f2 << G4endl; + } + return f2; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4PenelopeRayleighModelMI::InitializeSamplingAlgorithm(const G4Material* mat) +{ + + G4double q2min = 0; + G4double q2max = 0; + const size_t np = 150; //hard-coded in Penelope + // G4cout << "Init N= " << logQSquareGrid.size() << G4endl; + for (size_t i=1;i 1e-35) + { + q2max = G4Exp(logQSquareGrid[i-1]); + } + //G4cout << "Q2= " << Q2 << " q2max= " << q2max << G4endl; + } + + size_t nReducedPoints = np/4; + + //check for errors + if (np < 16) + { + G4Exception("G4PenelopeRayleighModelMI::InitializeSamplingAlgorithm()", + "em2047",FatalException, + "Too few points to initialize the sampling algorithm"); + } + if (q2min > (q2max-1e-10)) + { + G4cout << "q2min= " << q2min << " q2max= " << q2max << G4endl; + G4Exception("G4PenelopeRayleighModelMI::InitializeSamplingAlgorithm()", + "em2048",FatalException, + "Too narrow grid to initialize the sampling algorithm"); + } + + //This is subroutine RITAI0 of Penelope + //Create an object of type G4PenelopeRayleighSamplingData --> store in a map::Material* + + //temporary vectors --> Then everything is stored in G4PenelopeSamplingData + G4DataVector* x = new G4DataVector(); + + /******************************************************************************* + Start with a grid of NUNIF points uniformly spaced in the interval q2min,q2max + ********************************************************************************/ + size_t NUNIF = std::min(std::max(((size_t)8),nReducedPoints),np/2); + const G4int nip = 51; //hard-coded in Penelope + + G4double dx = (q2max-q2min)/((G4double) NUNIF-1); + x->push_back(q2min); + for (size_t i=1;ipush_back(app); //increase + } + x->push_back(q2max); + + if (verboseLevel> 3) + G4cout << "Vector x has " << x->size() << " points, while NUNIF = " << NUNIF << G4endl; + + //Allocate temporary storage vectors + G4DataVector* area = new G4DataVector(); + G4DataVector* a = new G4DataVector(); + G4DataVector* b = new G4DataVector(); + G4DataVector* c = new G4DataVector(); + G4DataVector* err = new G4DataVector(); + + for (size_t i=0;ipush_back(pdfk); + pdfmax = std::max(pdfmax,pdfk); + if (k < (nip-1)) + { + G4double xih = xik + 0.5*dxi; + G4double pdfIK = std::max(GetFSquared(mat,xih),0.); + pdfih->push_back(pdfIK); + pdfmax = std::max(pdfmax,pdfIK); + } + } + + //Simpson's integration + G4double cons = dxi*0.5*(1./3.); + sumi->push_back(0.); + for (G4int k=1;kpush_back(next); + } + + G4double lastIntegral = (*sumi)[sumi->size()-1]; + area->push_back(lastIntegral); + //Normalize cumulative function + G4double factor = 1.0/lastIntegral; + for (size_t k=0;ksize();k++) + (*sumi)[k] *= factor; + + //When the PDF vanishes at one of the interval end points, its value is modified + if ((*pdfi)[0] < 1e-35) + (*pdfi)[0] = 1e-5*pdfmax; + if ((*pdfi)[pdfi->size()-1] < 1e-35) + (*pdfi)[pdfi->size()-1] = 1e-5*pdfmax; + + G4double pli = (*pdfi)[0]*factor; + G4double pui = (*pdfi)[pdfi->size()-1]*factor; + G4double B_temp = 1.0-1.0/(pli*pui*dx*dx); + G4double A_temp = (1.0/(pli*dx))-1.0-B_temp; + G4double C_temp = 1.0+A_temp+B_temp; + if (C_temp < 1e-35) + { + a->push_back(0.); + b->push_back(0.); + c->push_back(1.); + } + else + { + a->push_back(A_temp); + b->push_back(B_temp); + c->push_back(C_temp); + } + + //OK, now get ERR(I), the integral of the absolute difference between the rational interpolation + //and the true pdf, extended over the interval (X(I),X(I+1)) + G4int icase = 1; //loop code + G4bool reLoop = false; + err->push_back(0.); + do + { + reLoop = false; + (*err)[i] = 0.; //zero variable + for (G4int k=0;k 0.1*(*area)[i] && icase == 1) + { + (*b)[i] = 0; + (*a)[i] = 0; + (*c)[i] = 1.; + icase = 2; + reLoop = true; + } + }while(reLoop); + + delete pdfi; + delete pdfih; + delete sumi; + } //end of first loop over i + + //Now assign last point + (*x)[x->size()-1] = q2max; + a->push_back(0.); + b->push_back(0.); + c->push_back(0.); + err->push_back(0.); + area->push_back(0.); + + if (x->size() != NUNIF || a->size() != NUNIF || + err->size() != NUNIF || area->size() != NUNIF) + { + G4ExceptionDescription ed; + ed << "Problem in building the Table for Sampling: array dimensions do not match" << G4endl; + G4Exception("G4PenelopeRayleighModelMI::InitializeSamplingAlgorithm()", + "em2049",FatalException,ed); + } + + /******************************************************************************* + New grid points are added by halving the sub-intervals with the largest absolute error + This is done up to np=150 points in the grid + ********************************************************************************/ + do + { + G4double maxError = 0.0; + size_t iErrMax = 0; + for (size_t i=0;isize()-2;i++) + { + //maxError is the lagest of the interval errors err[i] + if ((*err)[i] > maxError) + { + maxError = (*err)[i]; + iErrMax = i; + } + } + + //OK, now I have to insert one new point in the position iErrMax + G4double newx = 0.5*((*x)[iErrMax]+(*x)[iErrMax+1]); + + x->insert(x->begin()+iErrMax+1,newx); + //Add place-holders in the other vectors + area->insert(area->begin()+iErrMax+1,0.); + a->insert(a->begin()+iErrMax+1,0.); + b->insert(b->begin()+iErrMax+1,0.); + c->insert(c->begin()+iErrMax+1,0.); + err->insert(err->begin()+iErrMax+1,0.); + + //Now calculate the other parameters + for (size_t i=iErrMax;i<=iErrMax+1;i++) + { + //Temporary vectors for this loop + G4DataVector* pdfi = new G4DataVector(); + G4DataVector* pdfih = new G4DataVector(); + G4DataVector* sumi = new G4DataVector(); + + G4double dxLocal = (*x)[i+1]-(*x)[i]; + G4double dxi = ((*x)[i+1]-(*x)[i])/(G4double (nip-1)); + G4double pdfmax = 0; + for (G4int k=0;kpush_back(pdfk); + pdfmax = std::max(pdfmax,pdfk); + if (k < (nip-1)) + { + G4double xih = xik + 0.5*dxi; + G4double pdfIK = std::max(GetFSquared(mat,xih),0.); + pdfih->push_back(pdfIK); + pdfmax = std::max(pdfmax,pdfIK); + } + } + + //Simpson's integration + G4double cons = dxi*0.5*(1./3.); + sumi->push_back(0.); + for (G4int k=1;kpush_back(next); + } + G4double lastIntegral = (*sumi)[sumi->size()-1]; + (*area)[i] = lastIntegral; + + //Normalize cumulative function + G4double factor = 1.0/lastIntegral; + for (size_t k=0;ksize();k++) + (*sumi)[k] *= factor; + + //When the PDF vanishes at one of the interval end points, its value is modified + if ((*pdfi)[0] < 1e-35) + (*pdfi)[0] = 1e-5*pdfmax; + if ((*pdfi)[pdfi->size()-1] < 1e-35) + (*pdfi)[pdfi->size()-1] = 1e-5*pdfmax; + + G4double pli = (*pdfi)[0]*factor; + G4double pui = (*pdfi)[pdfi->size()-1]*factor; + G4double B_temp = 1.0-1.0/(pli*pui*dxLocal*dxLocal); + G4double A_temp = (1.0/(pli*dxLocal))-1.0-B_temp; + G4double C_temp = 1.0+A_temp+B_temp; + if (C_temp < 1e-35) + { + (*a)[i]= 0.; + (*b)[i] = 0.; + (*c)[i] = 1; + } + else + { + (*a)[i]= A_temp; + (*b)[i] = B_temp; + (*c)[i] = C_temp; + } + //OK, now get ERR(I), the integral of the absolute difference between the rational interpolation + //and the true pdf, extended over the interval (X(I),X(I+1)) + G4int icase = 1; //loop code + G4bool reLoop = false; + do + { + reLoop = false; + (*err)[i] = 0.; //zero variable + for (G4int k=0;k 0.1*(*area)[i] && icase == 1) + { + (*b)[i] = 0; + (*a)[i] = 0; + (*c)[i] = 1.; + icase = 2; + reLoop = true; + } + }while(reLoop); + delete pdfi; + delete pdfih; + delete sumi; + } + }while(x->size() < np); + + if (x->size() != np || a->size() != np || + err->size() != np || area->size() != np) + { + G4Exception("G4PenelopeRayleighModelMI::InitializeSamplingAlgorithm()", + "em2050",FatalException, + "Problem in building the extended Table for Sampling: array dimensions do not match "); + } + + /******************************************************************************* + Renormalization + ********************************************************************************/ + G4double ws = 0; + for (size_t i=0;ipush_back(0.); + for (size_t i=0;ipush_back(previous+(*area)[i]); + } + (*PAC)[PAC->size()-1] = 1.; + + /******************************************************************************* + Pre-calculated limits for the initial binary search for subsequent sampling + ********************************************************************************/ + + //G4DataVector* ITTL = new G4DataVector(); + std::vector *ITTL = new std::vector; + std::vector *ITTU = new std::vector; + + //Just create place-holders + for (size_t i=0;ipush_back(0); + ITTU->push_back(0); + } + + G4double bin = 1.0/(np-1); + (*ITTL)[0]=0; + for (size_t i=1;i<(np-1);i++) + { + G4double ptst = i*bin; + G4bool found = false; + for (size_t j=(*ITTL)[i-1];j ptst) + { + (*ITTL)[i] = j-1; + (*ITTU)[i-1] = j; + found = true; + } + } + } + (*ITTU)[ITTU->size()-2] = ITTU->size()-1; + (*ITTU)[ITTU->size()-1] = ITTU->size()-1; + (*ITTL)[ITTL->size()-1] = ITTU->size()-2; + + if (ITTU->size() != np || ITTU->size() != np) + { + G4Exception("G4PenelopeRayleighModelMI::InitializeSamplingAlgorithm()", + "em2051",FatalException, + "Problem in building the Limit Tables for Sampling: array dimensions do not match"); + } + + + /******************************************************************************** + Copy tables + ********************************************************************************/ + G4PenelopeSamplingData* theTable = new G4PenelopeSamplingData(np); + for (size_t i=0;iAddPoint((*x)[i],(*PAC)[i],(*a)[i],(*b)[i],(*ITTL)[i],(*ITTU)[i]); + } + + if (verboseLevel > 2) + { + G4cout << "*************************************************************************" << + G4endl; + G4cout << "Sampling table for Penelope Rayleigh scattering in " << mat->GetName() << G4endl; + theTable->DumpTable(); + } + samplingTable->insert(std::make_pair(mat,theTable)); + + + //Clean up temporary vectors + delete x; + delete a; + delete b; + delete c; + delete err; + delete area; + delete PAC; + delete ITTL; + delete ITTU; + + //DONE! + return; + +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4PenelopeRayleighModelMI::GetPMaxTable(const G4Material* mat) +{ + + if (!pMaxTable) + { + G4cout << "G4PenelopeRayleighModelMI::BuildPMaxTable" << G4endl; + G4cout << "Going to instanziate the pMaxTable !" << G4endl; + G4cout << "That should _not_ be here! " << G4endl; + pMaxTable = new std::map; + } + //check if the table is already there + if (pMaxTable->count(mat)) + return; + + //otherwise build it + if (!samplingTable) + { + G4Exception("G4PenelopeRayleighModelMI::GetPMaxTable()", + "em2052",FatalException, + "SamplingTable is not properly instantiated"); + return; + } + + //This should not be: the sampling table is built before the p-table + if (!samplingTable->count(mat)) + { + G4ExceptionDescription ed; + ed << "Sampling table for material " << mat->GetName() << " not found"; + G4Exception("G4PenelopeRayleighModelMI::GetPMaxTable()", + "em2052",FatalException, + ed); + return; + } + + G4PenelopeSamplingData *theTable = samplingTable->find(mat)->second; + size_t tablePoints = theTable->GetNumberOfStoredPoints(); + + size_t nOfEnergyPoints = logEnergyGridPMax.size(); + G4PhysicsFreeVector* theVec = new G4PhysicsFreeVector(nOfEnergyPoints); + + const size_t nip = 51; //hard-coded in Penelope + + for (size_t ie=0;ieGetX(0); + G4double lastQ2 = theTable->GetX(tablePoints-1); + G4double thePMax = 0; + + if (Qm2 > firstQ2) + { + if (Qm2 < lastQ2) + { + //bisection to look for the index of Qm + size_t lowerBound = 0; + size_t upperBound = tablePoints-1; + while (lowerBound <= upperBound) + { + size_t midBin = (lowerBound + upperBound)/2; + if( Qm2 < theTable->GetX(midBin)) + { upperBound = midBin-1; } + else + { lowerBound = midBin+1; } + } + //upperBound is the output (but also lowerBounf --> should be the same!) + G4double Q1 = theTable->GetX(upperBound); + G4double Q2 = Qm2; + G4double DQ = (Q2-Q1)/((G4double)(nip-1)); + G4double theA = theTable->GetA(upperBound); + G4double theB = theTable->GetB(upperBound); + G4double thePAC = theTable->GetPAC(upperBound); + G4DataVector* fun = new G4DataVector(); + for (size_t k=0;kGetX(upperBound+1)-Q1); + G4double con1 = 2.0*theB*tau; + G4double ci = 1.0+theA+theB; + G4double con2 = ci-theA*tau; + G4double etap = 0; + if (std::fabs(con1) > 1.0e-16*std::fabs(con2)) + etap = con2*(1.0-std::sqrt(1.0-2.0*tau*con1/(con2*con2)))/con1; + else + etap = tau/con2; + G4double theFun = (theTable->GetPAC(upperBound+1)-thePAC)* + (1.0+(theA+theB*etap)*etap)*(1.0+(theA+theB*etap)*etap)/ + ((1.0-theB*etap*etap)*ci*(theTable->GetX(upperBound+1)-Q1)); + fun->push_back(theFun); + } + //Now intergrate numerically the fun Cavalieri-Simpson's method + G4DataVector* sum = new G4DataVector; + G4double CONS = DQ*(1./12.); + G4double HCONS = 0.5*CONS; + sum->push_back(0.); + G4double secondPoint = (*sum)[0] + + (5.0*(*fun)[0]+8.0*(*fun)[1]-(*fun)[2])*CONS; + sum->push_back(secondPoint); + for (size_t hh=2;hhpush_back(next); + } + G4double last = (*sum)[nip-2]+(5.0*(*fun)[nip-1]+8.0*(*fun)[nip-2]- + (*fun)[nip-3])*CONS; + sum->push_back(last); + thePMax = thePAC + (*sum)[sum->size()-1]; //last point + delete fun; + delete sum; + } + else + { + thePMax = 1.0; + } + } + else + { + thePMax = theTable->GetPAC(0); + } + + //Write number in the table + theVec->PutValue(ie,energy,thePMax); + } + + pMaxTable->insert(std::make_pair(mat,theVec)); + return; + +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4PenelopeRayleighModelMI::DumpFormFactorTable(const G4Material* mat) +{ + G4cout << "*****************************************************************" << G4endl; + G4cout << "G4PenelopeRayleighModelMI: Form Factor Table for " << mat->GetName() << G4endl; + //try to use the same format as Penelope-Fortran, namely Q (/m_e*c) and F + G4cout << "Q/(m_e*c) F(Q) " << G4endl; + G4cout << "*****************************************************************" << G4endl; + if (!logFormFactorTable->count(mat)) + BuildFormFactorTable(mat); + + G4PhysicsFreeVector* theVec = logFormFactorTable->find(mat)->second; + for (size_t i=0;iGetVectorLength();i++) + { + G4double logQ2 = theVec->GetLowEdgeEnergy(i); + G4double Q = G4Exp(0.5*logQ2); + G4double logF2 = (*theVec)[i]; + G4double F = G4Exp(0.5*logF2); + G4cout << Q << " " << F << G4endl; + } + //DONE + return; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo... + +void G4PenelopeRayleighModelMI::SetParticle(const G4ParticleDefinition* p) +{ + if(!fParticle) { + fParticle = p; + } +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo... +void G4PenelopeRayleighModelMI::LoadKnownMIFFMaterials() +{ + fKnownMaterials->insert(std::pair("Fat_MI","FF_fat_Tartari2002.dat")); + fKnownMaterials->insert(std::pair("Water_MI","FF_water_Tartari2002.dat")); + fKnownMaterials->insert(std::pair("BoneMatrix_MI","FF_bonematrix_Tartari2002.dat")); + fKnownMaterials->insert(std::pair("Mineral_MI","FF_mineral_Tartari2002.dat")); + fKnownMaterials->insert(std::pair("adipose_MI","FF_adipose_Poletti2002.dat")); + fKnownMaterials->insert(std::pair("glandular_MI","FF_glandular_Poletti2002.dat")); + fKnownMaterials->insert(std::pair("breast5050_MI","FF_human_breast_Peplow1998.dat")); + fKnownMaterials->insert(std::pair("carcinoma_MI","FF_carcinoma_Kidane1999.dat")); + fKnownMaterials->insert(std::pair("muscle_MI","FF_pork_muscle_Peplow1998.dat")); + fKnownMaterials->insert(std::pair("kidney_MI","FF_pork_kidney_Peplow1998.dat")); + fKnownMaterials->insert(std::pair("liver_MI","FF_pork_liver_Peplow1998.dat")); + fKnownMaterials->insert(std::pair("heart_MI","FF_pork_heart_Peplow1998.dat")); + fKnownMaterials->insert(std::pair("blood_MI","FF_beef_blood_Peplow1998.dat")); + fKnownMaterials->insert(std::pair("grayMatter_MI","FF_gbrain_DeFelici2008.dat")); + fKnownMaterials->insert(std::pair("whiteMatter_MI","FF_wbrain_DeFelici2008.dat")); + fKnownMaterials->insert(std::pair("bone_MI","FF_bone_King2011.dat")); + fKnownMaterials->insert(std::pair("FatLowX_MI","FF_fat_Tartari2002_joint_lowXdata_ESRF2003.dat")); + fKnownMaterials->insert(std::pair("BoneMatrixLowX_MI","FF_bonematrix_Tartari2002_joint_lowXdata.dat")); + fKnownMaterials->insert(std::pair("PMMALowX_MI", "FF_PMMA_Tartari2002_joint_lowXdata_ESRF2003.dat")); + fKnownMaterials->insert(std::pair("dryBoneLowX_MI","FF_drybone_Tartari2002_joint_lowXdata_ESRF2003.dat")); + fKnownMaterials->insert(std::pair("CIRS30-70_MI","FF_CIRS30-70_Poletti2002.dat")); + fKnownMaterials->insert(std::pair("CIRS50-50_MI","FF_CIRS50-50_Poletti2002.dat")); + fKnownMaterials->insert(std::pair("CIRS70-30_MI","FF_CIRS70-30_Poletti2002.dat")); + fKnownMaterials->insert(std::pair("RMI454_MI", "FF_RMI454_Poletti2002.dat")); + fKnownMaterials->insert(std::pair("PMMA_MI","FF_PMMA_Tartari2002.dat")); + fKnownMaterials->insert(std::pair("Lexan_MI","FF_lexan_Peplow1998.dat")); + fKnownMaterials->insert(std::pair("Kapton_MI","FF_kapton_Peplow1998.dat")); + fKnownMaterials->insert(std::pair("Nylon_MI","FF_nylon_Kosanetzky1987.dat")); + fKnownMaterials->insert(std::pair("Polyethylene_MI","FF_polyethylene_Kosanetzky1987.dat")); + fKnownMaterials->insert(std::pair("Polystyrene_MI","FF_polystyrene_Kosanetzky1987.dat")); + fKnownMaterials->insert(std::pair("Formaline_MI","FF_formaline_Peplow1998.dat")); + fKnownMaterials->insert(std::pair("Acetone_MI","FF_acetone_Cozzini2010.dat")); + fKnownMaterials->insert(std::pair("Hperoxide_MI","FF_Hperoxide_Cozzini2010.dat")); + +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4PenelopeRayleighModelMI::IntegrateFun(G4double y[], G4int n, G4double dTheta) +{ + G4double integral = 0.; + for (G4int k=0; kIsExtended()) { + G4ExtendedMaterial* aEM = (G4ExtendedMaterial*)material; + G4MIData* dataMI = (G4MIData*)aEM->RetrieveExtension("MI"); + return dataMI; + } else { + return nullptr; + } +} diff --git a/source/processes/electromagnetic/lowenergy/src/G4ecpssrBaseKxsModel.cc b/source/processes/electromagnetic/lowenergy/src/G4ecpssrBaseKxsModel.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/lowenergy/src/G4ecpssrBaseLixsModel.cc b/source/processes/electromagnetic/lowenergy/src/G4ecpssrBaseLixsModel.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/lowenergy/src/G4empCrossSection.cc b/source/processes/electromagnetic/lowenergy/src/G4empCrossSection.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/muons/History b/source/processes/electromagnetic/muons/History index d6e791264a..072be57909 100644 --- a/source/processes/electromagnetic/muons/History +++ b/source/processes/electromagnetic/muons/History @@ -16,6 +16,21 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +29 October 20: V.Ivanchenko (emmuons-V10-06-03) +- G4ModifiedMephi - new angular generator for muon/hadron + bremsstrahlung +- G4MuPairProductionModel, G4MuBremmstrahlungModel - updated + sampling of final state using G4ModifiedMephi; implemented + check on energy transfer and if beyond the threshold, kill + primary particle and add it to the list of secondary particles +- G4MuPairProduction, G4MuBremmstrahlung - added definition of + the energy threshold for creation of a vertex, when energy + transfer is above the threshold (CMS request) + +01 September 20: G.Amadio (emmuons-V10-06-02) +- G4MuPairProductionModel - optimize ComputeDMiscroscopicCrossSection + to speedup initialization + 31 January 20: V.Ivanchenko (emmuons-V10-06-01) - G4MuPairProductionModel - fixed Coverity warning diff --git a/source/processes/electromagnetic/muons/include/G4ModifiedMephi.hh b/source/processes/electromagnetic/muons/include/G4ModifiedMephi.hh new file mode 100644 index 0000000000..5642912658 --- /dev/null +++ b/source/processes/electromagnetic/muons/include/G4ModifiedMephi.hh @@ -0,0 +1,90 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// ------------------------------------------------------------------- +// +// GEANT4 Class header file +// +// +// File name: G4ModifiedMephi +// +// Author: V. Ivanchenko +// +// Creation date: 27 October 2020 +// +// Modifications: +// +// Class Description: +// +// Bremsstrahlung Angular Distribution Generation +// A.G. Bogdanov et al., IEEE Trans. Nuc. Sci., Vol.53, No.2, 2006 +// +// ------------------------------------------------------------------- +// + +#ifndef G4ModifiedMephi_h +#define G4ModifiedMephi_h 1 + +#include "G4ios.hh" +#include "globals.hh" +#include "G4VEmAngularDistribution.hh" + +class G4ModifiedMephi : public G4VEmAngularDistribution +{ + +public: + + explicit G4ModifiedMephi(const G4String& name = ""); + + virtual ~G4ModifiedMephi(); + + virtual G4ThreeVector& SampleDirection(const G4DynamicParticle* dp, + G4double gEnergy, G4int Z, + const G4Material* mat = nullptr) final; + + virtual void SamplePairDirections(const G4DynamicParticle* dp, + G4double elecKinEnergy, + G4double posiKinEnergy, + G4ThreeVector& dirElectron, + G4ThreeVector& dirPositron, + G4int Z = 0, + const G4Material* mat = nullptr) final; + + virtual void PrintGeneratorInformation() const final; + + // hide assignment operator + G4ModifiedMephi & operator=(const G4ModifiedMephi &right) = delete; + G4ModifiedMephi(const G4ModifiedMephi&) = delete; + +private: + + G4double SampleCosTheta(G4double primKinEnergy, G4double gEnergy, + G4double mass); + +}; + +#endif + diff --git a/source/processes/electromagnetic/muons/include/G4MuBremsstrahlung.hh b/source/processes/electromagnetic/muons/include/G4MuBremsstrahlung.hh index 20333af9de..da0eb7293f 100644 --- a/source/processes/electromagnetic/muons/include/G4MuBremsstrahlung.hh +++ b/source/processes/electromagnetic/muons/include/G4MuBremsstrahlung.hh @@ -96,16 +96,14 @@ public: // print description in html virtual void ProcessDescription(std::ostream&) const override; + G4MuBremsstrahlung & operator=(const G4MuBremsstrahlung &right) = delete; + G4MuBremsstrahlung(const G4MuBremsstrahlung&) = delete; + protected: virtual void InitialiseEnergyLossProcess(const G4ParticleDefinition*, const G4ParticleDefinition*) override; -private: - - G4MuBremsstrahlung & operator=(const G4MuBremsstrahlung &right) = delete; - G4MuBremsstrahlung(const G4MuBremsstrahlung&) = delete; - protected: G4double lowestKinEnergy; diff --git a/source/processes/electromagnetic/muons/include/G4MuBremsstrahlungModel.hh b/source/processes/electromagnetic/muons/include/G4MuBremsstrahlungModel.hh index cae91e3dff..a6f59f5ad6 100644 --- a/source/processes/electromagnetic/muons/include/G4MuBremsstrahlungModel.hh +++ b/source/processes/electromagnetic/muons/include/G4MuBremsstrahlungModel.hh @@ -47,13 +47,12 @@ // 28-02-08 Reorganized protected methods and members (V.Ivanchenko) // 06-03-08 Remove obsolete methods and members (V.Ivanchenko) // 31-05-13 Use element selectors instead of local data (V.Ivanchenko) -// - // // Class Description: // // Implementation of bremssrahlung by muons - +// A.G. Bogdanov et al., IEEE Trans. Nuc. Sci., Vol.53, No.2, 2006 +// // ------------------------------------------------------------------- // @@ -111,6 +110,11 @@ public: const G4ParticleDefinition*, G4double) override; + // hide assignment operator + G4MuBremsstrahlungModel & + operator=(const G4MuBremsstrahlungModel &right) = delete; + G4MuBremsstrahlungModel(const G4MuBremsstrahlungModel&) = delete; + protected: G4double ComputMuBremLoss(G4double Z, G4double tkin, G4double cut); @@ -125,13 +129,6 @@ protected: inline void SetParticle(const G4ParticleDefinition*); -private: - - // hide assignment operator - G4MuBremsstrahlungModel & - operator=(const G4MuBremsstrahlungModel &right) = delete; - G4MuBremsstrahlungModel(const G4MuBremsstrahlungModel&) = delete; - protected: const G4ParticleDefinition* particle; diff --git a/source/processes/electromagnetic/muons/include/G4MuPairProductionModel.hh b/source/processes/electromagnetic/muons/include/G4MuPairProductionModel.hh index a5e2d909ce..10f190353f 100644 --- a/source/processes/electromagnetic/muons/include/G4MuPairProductionModel.hh +++ b/source/processes/electromagnetic/muons/include/G4MuPairProductionModel.hh @@ -46,13 +46,12 @@ // 12-05-06 Add parameter to SelectRandomAtom (A.Bogdanov) // 11-10-07 Add ignoreCut flag (V.Ivanchenko) // 28-02-08 Reorganized protected methods and members (V.Ivanchenko) - // // Class Description: // // Implementation of e+e- pair production by muons +// A.G. Bogdanov et al., IEEE Trans. Nuc. Sci., Vol.53, No.2, 2006 // - // ------------------------------------------------------------------- // @@ -157,8 +156,6 @@ protected: G4double lnZ; G4int currentZ; - static const G4double xgi[8],wgi[8]; - G4ParticleDefinition* theElectron; G4ParticleDefinition* thePositron; G4ParticleChangeForLoss* fParticleChange; @@ -166,8 +163,6 @@ protected: G4double minPairEnergy; G4double lowestKinEnergy; - G4int nzdat; - // gamma energy bins G4int nYBinPerDecade; size_t nbiny; diff --git a/source/processes/electromagnetic/muons/sources.cmake b/source/processes/electromagnetic/muons/sources.cmake index 1aa5fa9c0b..eb8046d8cf 100644 --- a/source/processes/electromagnetic/muons/sources.cmake +++ b/source/processes/electromagnetic/muons/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4muons # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,36 +14,14 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4muons HEADERS G4EnergyLossForExtrapolator.hh G4ErrorEnergyLoss.hh + G4ModifiedMephi.hh G4MuBetheBlochModel.hh G4MuBremsstrahlung.hh G4MuBremsstrahlungModel.hh @@ -56,6 +34,7 @@ GEANT4_DEFINE_MODULE(NAME G4muons SOURCES G4EnergyLossForExtrapolator.cc G4ErrorEnergyLoss.cc + G4ModifiedMephi.cc G4MuBetheBlochModel.cc G4MuBremsstrahlung.cc G4MuBremsstrahlungModel.cc diff --git a/source/processes/electromagnetic/muons/src/G4ModifiedMephi.cc b/source/processes/electromagnetic/muons/src/G4ModifiedMephi.cc new file mode 100644 index 0000000000..042f93bf34 --- /dev/null +++ b/source/processes/electromagnetic/muons/src/G4ModifiedMephi.cc @@ -0,0 +1,131 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// ------------------------------------------------------------------- +// +// GEANT4 Class file +// +// +// File name: G4ModifiedMephi +// +// Author: V. Ivanchenko +// +// Creation date: 27 October 2020 +// +// Modifications: +// +// +// ------------------------------------------------------------------- +// + +#include "G4ModifiedMephi.hh" +#include "Randomize.hh" +#include "G4Log.hh" +#include + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4ModifiedMephi::G4ModifiedMephi(const G4String&) + : G4VEmAngularDistribution("ModifiedMephi") +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4ModifiedMephi::~G4ModifiedMephi() +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4ThreeVector& +G4ModifiedMephi::SampleDirection(const G4DynamicParticle* dp, + G4double gEnergy, G4int, + const G4Material*) +{ + // Sample gamma angle (Z - axis along the parent particle). + G4double cost = SampleCosTheta(dp->GetKineticEnergy(), gEnergy, + dp->GetDefinition()->GetPDGMass()); + G4double sint = std::sqrt((1.0 - cost)*(1.0 + cost)); + G4double phi = CLHEP::twopi*G4UniformRand(); + + fLocalDirection.set(sint*std::cos(phi), sint*std::sin(phi), cost); + fLocalDirection.rotateUz(dp->GetMomentumDirection()); + + return fLocalDirection; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +G4double G4ModifiedMephi::SampleCosTheta(G4double primKinEnergy, + G4double gEnergy, + G4double mass) +{ + G4double gam = 1.0 + primKinEnergy/mass; + G4double rmax = gam*CLHEP::halfpi*std::min(1.0, gam*mass/gEnergy - 1.0); + G4double rmax2= rmax*rmax; + G4double x = G4UniformRand()*rmax2/(1.0 + rmax2); + + return std::cos(std::sqrt(x/(1.0 - x))/gam); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4ModifiedMephi::SamplePairDirections(const G4DynamicParticle* dp, + G4double elecKinEnergy, + G4double posiKinEnergy, + G4ThreeVector& dirElectron, + G4ThreeVector& dirPositron, + G4int, const G4Material*) +{ + G4double phi = CLHEP::twopi * G4UniformRand(); + G4double sinp = std::sin(phi); + G4double cosp = std::cos(phi); + + G4double ekin = dp->GetKineticEnergy(); + G4double etwo = elecKinEnergy + posiKinEnergy; + G4double mass = dp->GetDefinition()->GetPDGMass(); + + G4double cost = SampleCosTheta(ekin, etwo, mass); + G4double sint = std::sqrt((1.0 - cost)*(1.0 + cost)); + + dirElectron.set(sint*cosp, sint*sinp, cost); + dirElectron.rotateUz(dp->GetMomentumDirection()); + + cost = SampleCosTheta(ekin, etwo, mass); + sint = std::sqrt((1.0 - cost)*(1.0 + cost)); + + dirPositron.set(-sint*cosp, -sint*sinp, cost); + dirPositron.rotateUz(dp->GetMomentumDirection()); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +void G4ModifiedMephi::PrintGeneratorInformation() const +{ + G4cout << "\n" << G4endl; + G4cout << "Angular Generator is Modified Mephi" << G4endl; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... diff --git a/source/processes/electromagnetic/muons/src/G4MuBremsstrahlung.cc b/source/processes/electromagnetic/muons/src/G4MuBremsstrahlung.cc index c26e839622..dac0f0ac3d 100644 --- a/source/processes/electromagnetic/muons/src/G4MuBremsstrahlung.cc +++ b/source/processes/electromagnetic/muons/src/G4MuBremsstrahlung.cc @@ -114,6 +114,7 @@ void G4MuBremsstrahlung::InitialiseEnergyLossProcess( G4EmParameters* param = G4EmParameters::Instance(); EmModel()->SetLowEnergyLimit(param->MinKinEnergy()); EmModel()->SetHighEnergyLimit(param->MaxKinEnergy()); + EmModel()->SetSecondaryThreshold(param->MuHadBremsstrahlungTh()); AddEmModel(1, EmModel(), fm); } } diff --git a/source/processes/electromagnetic/muons/src/G4MuBremsstrahlungModel.cc b/source/processes/electromagnetic/muons/src/G4MuBremsstrahlungModel.cc index fb6af68b62..c0998537ec 100644 --- a/source/processes/electromagnetic/muons/src/G4MuBremsstrahlungModel.cc +++ b/source/processes/electromagnetic/muons/src/G4MuBremsstrahlungModel.cc @@ -72,6 +72,7 @@ #include "G4Element.hh" #include "G4ElementVector.hh" #include "G4ProductionCutsTable.hh" +#include "G4ModifiedMephi.hh" #include "G4ParticleChangeForLoss.hh" #include "G4Log.hh" #include "G4Exp.hh" @@ -116,6 +117,7 @@ G4MuBremsstrahlungModel::G4MuBremsstrahlungModel(const G4ParticleDefinition* p, } } } + SetAngularDistribution(new G4ModifiedMephi()); if(p) { SetParticle(p); } } @@ -376,21 +378,18 @@ void G4MuBremsstrahlungModel::SampleSecondaries( const G4Element* anElement = SelectRandomAtom(couple,particle,kineticEnergy); G4double Z = anElement->GetZ(); - G4double totalEnergy = kineticEnergy + mass; - G4double totalMomentum = sqrt(kineticEnergy*(kineticEnergy + 2.0*mass)); - G4double func1 = tmin* ComputeDMicroscopicCrossSection(kineticEnergy,Z,tmin); G4double lnepksi, epksi; G4double func2; - G4double xmin = G4Log(tmin/MeV); + G4double xmin = G4Log(tmin/CLHEP::MeV); G4double xmax = G4Log(kineticEnergy/tmin); do { lnepksi = xmin + G4UniformRand()*xmax; - epksi = MeV*G4Exp(lnepksi); + epksi = CLHEP::MeV*G4Exp(lnepksi); func2 = epksi*ComputeDMicroscopicCrossSection(kineticEnergy,Z,epksi); // Loop checking, 03-Aug-2015, Vladimir Ivanchenko @@ -400,32 +399,34 @@ void G4MuBremsstrahlungModel::SampleSecondaries( // ===== sample angle ===== - G4double gam = totalEnergy/mass; - G4double rmax = gam*std::min(1.0, totalEnergy/gEnergy - 1.0); - G4double rmax2= rmax*rmax; - G4double x = G4UniformRand()*rmax2/(1.0 + rmax2); + // + // angles of the emitted gamma using general interface - G4double theta = sqrt(x/(1.0 - x))/gam; - G4double sint = sin(theta); - G4double phi = twopi * G4UniformRand() ; - G4double dirx = sint*cos(phi), diry = sint*sin(phi), dirz = cos(theta) ; - - G4ThreeVector gDirection(dirx, diry, dirz); - gDirection.rotateUz(partDirection); - - partDirection *= totalMomentum; - partDirection -= gEnergy*gDirection; - partDirection = partDirection.unit(); - - // primary change - kineticEnergy -= gEnergy; - fParticleChange->SetProposedKineticEnergy(kineticEnergy); - fParticleChange->SetProposedMomentumDirection(partDirection); - - // save secondary - G4DynamicParticle* aGamma = - new G4DynamicParticle(theGamma,gDirection,gEnergy); - vdp->push_back(aGamma); + G4ThreeVector gamDir = + GetAngularDistribution()->SampleDirection(dp, gEnergy, Z, + couple->GetMaterial()); + // create G4DynamicParticle object for the Gamma + G4DynamicParticle* gamma = new G4DynamicParticle(theGamma, gamDir, gEnergy); + vdp->push_back(gamma); + // compute post-interaction kinematics of primary e-/e+ based on + // energy-momentum conservation + const G4double totMomentum = + std::sqrt(kineticEnergy*(kineticEnergy + 2.0*mass)); + G4ThreeVector dir = + (totMomentum*dp->GetMomentumDirection()-gEnergy*gamDir).unit(); + const G4double finalE = kineticEnergy - gEnergy; + // if secondary gamma energy is higher than threshold(very high by default) + // then stop tracking the primary particle and create new secondary e-/e+ + // instead of the primary one + if (gEnergy > SecondaryThreshold()) { + fParticleChange->ProposeTrackStatus(fStopAndKill); + fParticleChange->SetProposedKineticEnergy(0.0); + G4DynamicParticle* newdp = new G4DynamicParticle(particle, dir, finalE); + vdp->push_back(newdp); + } else { // continue tracking the primary e-/e+ otherwise + fParticleChange->SetProposedMomentumDirection(dir); + fParticleChange->SetProposedKineticEnergy(finalE); + } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/source/processes/electromagnetic/muons/src/G4MuPairProduction.cc b/source/processes/electromagnetic/muons/src/G4MuPairProduction.cc index 3b67169cf6..8fd9681773 100644 --- a/source/processes/electromagnetic/muons/src/G4MuPairProduction.cc +++ b/source/processes/electromagnetic/muons/src/G4MuPairProduction.cc @@ -128,6 +128,7 @@ void G4MuPairProduction::InitialiseEnergyLossProcess( G4EmParameters* param = G4EmParameters::Instance(); mod->SetLowEnergyLimit(param->MinKinEnergy()); mod->SetHighEnergyLimit(param->MaxKinEnergy()); + mod->SetSecondaryThreshold(param->MuHadBremsstrahlungTh()); AddEmModel(1, mod, fm); } } diff --git a/source/processes/electromagnetic/muons/src/G4MuPairProductionModel.cc b/source/processes/electromagnetic/muons/src/G4MuPairProductionModel.cc index 749b31efb3..5e27fd8042 100644 --- a/source/processes/electromagnetic/muons/src/G4MuPairProductionModel.cc +++ b/source/processes/electromagnetic/muons/src/G4MuPairProductionModel.cc @@ -82,7 +82,7 @@ #include "G4ElementVector.hh" #include "G4ProductionCutsTable.hh" #include "G4ParticleChangeForLoss.hh" -#include "G4ParticleChangeForGamma.hh" +#include "G4ModifiedMephi.hh" #include "G4Log.hh" #include "G4Exp.hh" #include @@ -94,12 +94,16 @@ // static const G4double ak1 = 6.9; static const G4double ak2 = 1.0; +static const G4int nzdat = 5; static const G4int zdat[5] = {1, 4, 13, 29, 92}; -const G4double G4MuPairProductionModel::xgi[] = - { 0.0199, 0.1017, 0.2372, 0.4083, 0.5917, 0.7628, 0.8983, 0.9801 }; -const G4double G4MuPairProductionModel::wgi[8] = - { 0.0506, 0.1112, 0.1569, 0.1813, 0.1813, 0.1569, 0.1112, 0.0506 }; +static const G4double xgi[] = +{ 0.0198550717512320, 0.1016667612931865, 0.2372337950418355, 0.4082826787521750, + 0.5917173212478250, 0.7627662049581645, 0.8983332387068135, 0.9801449282487680 }; + +static const G4double wgi[] = +{ 0.0506142681451880, 0.1111905172266870, 0.1568533229389435, 0.1813418916891810, + 0.1813418916891810, 0.1568533229389435, 0.1111905172266870, 0.0506142681451880 }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -116,7 +120,6 @@ G4MuPairProductionModel::G4MuPairProductionModel(const G4ParticleDefinition* p, fParticleChange(nullptr), minPairEnergy(4.*electron_mass_c2), lowestKinEnergy(1.0*GeV), - nzdat(5), nYBinPerDecade(4), nbiny(1000), nbine(0), @@ -138,6 +141,7 @@ G4MuPairProductionModel::G4MuPairProductionModel(const G4ParticleDefinition* p, } emin = lowestKinEnergy; emax = 10.*TeV; + SetAngularDistribution(new G4ModifiedMephi()); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -318,100 +322,124 @@ G4double G4MuPairProductionModel::ComputeDMicroscopicCrossSection( static const G4double g1h = 4.4e-5 ; static const G4double g2h = 4.8e-5 ; + if (pairEnergy <= 4.0 * electron_mass_c2) + return 0.0; + G4double totalEnergy = tkin + particleMass; G4double residEnergy = totalEnergy - pairEnergy; - G4double massratio = particleMass/electron_mass_c2; - G4double massratio2 = massratio*massratio; - G4double cross = 0.; - G4double c3 = 0.75*sqrte*particleMass; - if (residEnergy <= c3*z13) { return cross; } + if (residEnergy <= 0.75*sqrte*z13*particleMass) + return 0.0; - static const G4double c7 = 4.*CLHEP::electron_mass_c2; - G4double c8 = 6.*particleMass*particleMass; - G4double alf = c7/pairEnergy; - G4double a3 = 1. - alf; - if (a3 <= 0.) { return cross; } + G4double a0 = 1.0 / (totalEnergy * residEnergy); + G4double alf = 4.0 * electron_mass_c2 / pairEnergy; + G4double rt = sqrt(1.0 - alf); + G4double delta = 6.0 * particleMass * particleMass * a0; + G4double tmnexp = alf/(1.0 + rt) + delta*rt; + + if(tmnexp >= 1.0) { return 0.0; } + + G4double tmn = G4Log(tmnexp); + + G4double massratio = particleMass/electron_mass_c2; + G4double massratio2 = massratio*massratio; + G4double inv_massratio2 = 1.0 / massratio2; // zeta calculation G4double bbb,g1,g2; if( Z < 1.5 ) { bbb = bbbh ; g1 = g1h ; g2 = g2h ; } else { bbb = bbbtf; g1 = g1tf; g2 = g2tf; } - G4double zeta = 0; - G4double zeta1 = - 0.073*G4Log(totalEnergy/(particleMass+g1*z23*totalEnergy))-0.26; - if ( zeta1 > 0.) + G4double zeta = 0.0; + G4double z1exp = totalEnergy / (particleMass + g1*z23*totalEnergy); + + // 35.221047195922 is the root of zeta1(x) = 0.073 * log(x) - 0.26, so the + // condition below is the same as zeta1 > 0.0, but without calling log(x) + if (z1exp > 35.221047195922) { - G4double zeta2 = - 0.058*G4Log(totalEnergy/(particleMass+g2*z13*totalEnergy))-0.14; - zeta = zeta1/zeta2 ; + G4double z2exp = totalEnergy / (particleMass + g2*z13*totalEnergy); + zeta = (0.073 * G4Log(z1exp) - 0.26) / (0.058 * G4Log(z2exp) - 0.14); } G4double z2 = Z*(Z+zeta); G4double screen0 = 2.*electron_mass_c2*sqrte*bbb/(z13*pairEnergy); - G4double a0 = totalEnergy*residEnergy; - G4double a1 = pairEnergy*pairEnergy/a0; - G4double bet = 0.5*a1; - G4double xi0 = 0.25*massratio2*a1; - G4double del = c8/a0; - - G4double rta3 = sqrt(a3); - G4double tmnexp = alf/(1. + rta3) + del*rta3; - if(tmnexp >= 1.0) { return cross; } - - G4double tmn = G4Log(tmnexp); - G4double sum = 0.; + G4double beta = 0.5*pairEnergy*pairEnergy*a0; + G4double xi0 = 0.5*massratio2*beta; // Gaussian integration in ln(1-ro) ( with 8 points) - for (G4int i=0; i<8; ++i) + G4double rho[8]; + G4double rho2[8]; + G4double xi[8]; + G4double xi1[8]; + G4double xii[8]; + + for (G4int i = 0; i < 8; ++i) { - G4double a4 = G4Exp(tmn*xgi[i]); // a4 = (1.-asymmetry) - G4double a5 = a4*(2.-a4) ; - G4double a6 = 1.-a5 ; - G4double a7 = 1.+a6 ; - G4double a9 = 3.+a6 ; - G4double xi = xi0*a5 ; - G4double xii = 1./xi ; - G4double xi1 = 1.+xi ; - G4double screen = screen0*xi1/a5 ; - G4double yeu = 5.-a6+4.*bet*a7 ; - G4double yed = 2.*(1.+3.*bet)*G4Log(3.+xii)-a6-a1*(2.-a6) ; - G4double ye1 = 1.+yeu/yed ; - G4double ale = G4Log(bbb/z13*sqrt(xi1*ye1)/(1.+screen*ye1)) ; - G4double cre = 0.5*G4Log(1.+2.25*z23*xi1*ye1/massratio2) ; - G4double be; - - if (xi <= 1.e3) { - be = ((2.+a6)*(1.+bet)+xi*a9)*G4Log(1.+xii)+(a5-bet)/xi1-a9; - } else { - be = (3.-a6+a1*a7)/(2.*xi); - } - G4double fe = (ale-cre)*be; - if ( fe < 0.) fe = 0. ; - - G4double ymu = 4.+a6 +3.*bet*a7 ; - G4double ymd = a7*(1.5+a1)*G4Log(3.+xi)+1.-1.5*a6 ; - G4double ym1 = 1.+ymu/ymd ; - G4double alm_crm = G4Log(bbb*massratio/(1.5*z23*(1.+screen*ym1))); - G4double a10,bm; - if ( xi >= 1.e-3) - { - a10 = (1.+a1)*a5 ; - bm = (a7*(1.+1.5*bet)-a10*xii)*G4Log(xi1)+xi*(a5-bet)/xi1+a10; - } else { - bm = (5.-a6+bet*a9)*(xi/2.); - } - - G4double fm = alm_crm*bm; - if ( fm < 0.) { fm = 0.; } - - sum += wgi[i]*a4*(fe+fm/massratio2); + rho[i] = G4Exp(tmn*xgi[i]) - 1.0; // rho = -asymmetry + rho2[i] = rho[i] * rho[i]; + xi[i] = xi0*(1.0-rho2[i]); + xi1[i] = 1.0 + xi[i]; + xii[i] = 1.0 / xi[i]; } - cross = -tmn*sum*factorForCross*z2*residEnergy/(totalEnergy*pairEnergy); - cross = std::max(cross, 0.0); - return cross; + G4double ye1[8]; + G4double ym1[8]; + + G4double b40 = 4.0 * beta; + G4double b62 = 6.0 * beta + 2.0; + + for (G4int i = 0; i < 8; ++i) + { + G4double yeu = (b40 + 5.0) + (b40 - 1.0) * rho2[i]; + G4double yed = b62 * G4Log(3.0 + xii[i]) + (2.0 * beta - 1.0) * rho2[i] - b40; + + G4double ymu = b62 * (1.0 + rho2[i]) + 6.0; + G4double ymd = (b40 + 3.0) * (1.0 + rho2[i]) * G4Log(3.0 + xi[i]) + 2.0 - 3.0 * rho2[i]; + + ye1[i] = 1.0 + yeu / yed; + ym1[i] = 1.0 + ymu / ymd; + } + + G4double be[8]; + G4double bm[8]; + + for(G4int i = 0; i < 8; ++i) + { + if(xi[i] <= 1000.0) { + be[i] = ((2.0 + rho2[i]) * (1.0 + beta) + xi[i] * (3.0 + rho2[i])) * + G4Log(1.0 + xii[i]) + (1.0 - rho2[i] - beta) / xi1[i] - (3.0 + rho2[i]); + } else { + be[i] = 0.5 * (3.0 - rho2[i] + 2.0 * beta * (1.0 + rho2[i])) * xii[i]; + } + + if(xi[i] >= 0.001) { + G4double a10 = (1.0 + 2.0 * beta) * (1.0 - rho2[i]); + bm[i] = ((1.0 + rho2[i]) * (1.0 + 1.5 * beta) - a10 * xii[i]) * G4Log(xi1[i]) + + xi[i] * (1.0 - rho2[i] - beta) / xi1[i] + a10; + } else { + bm[i] = 0.5 * (5.0 - rho2[i] + beta * (3.0 + rho2[i])) * xi[i]; + } + } + + G4double sum = 0.0; + + for (G4int i = 0; i < 8; ++i) + { + G4double screen = screen0*xi1[i]/(1.0-rho2[i]) ; + G4double ale = G4Log(bbb/z13*sqrt(xi1[i]*ye1[i])/(1.+screen*ye1[i])) ; + G4double cre = 0.5*G4Log(1.+2.25*z23*xi1[i]*ye1[i]*inv_massratio2) ; + + G4double fe = (ale-cre)*be[i]; + fe *= (fe > 0.0); + + G4double alm_crm = G4Log(bbb*massratio/(1.5*z23*(1.+screen*ym1[i]))); + G4double fm = alm_crm*bm[i]; + fm *= (fm > 0.0) * inv_massratio2; + + sum += wgi[i]*(1.0 + rho[i])*(fe+fm); + } + + return -tmn*sum*factorForCross*z2*residEnergy/(totalEnergy*pairEnergy); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -516,21 +544,21 @@ void G4MuPairProductionModel::SampleSecondaries( G4double tmin, G4double tmax) { - G4double kineticEnergy = aDynamicParticle->GetKineticEnergy(); + G4double kinEnergy = aDynamicParticle->GetKineticEnergy(); //G4cout << "------- G4MuPairProductionModel::SampleSecondaries E(MeV)= " - // << kineticEnergy << " " + // << kinEnergy << " " // << aDynamicParticle->GetDefinition()->GetParticleName() << G4endl; - G4double totalEnergy = kineticEnergy + particleMass; + G4double totalEnergy = kinEnergy + particleMass; G4double totalMomentum = - sqrt(kineticEnergy*(kineticEnergy + 2.0*particleMass)); + sqrt(kinEnergy*(kinEnergy + 2.0*particleMass)); G4ThreeVector partDirection = aDynamicParticle->GetMomentumDirection(); // select randomly one element constituing the material - const G4Element* anElement = SelectRandomAtom(couple,particle,kineticEnergy); + const G4Element* anElement = SelectRandomAtom(couple,particle,kinEnergy); // define interval of energy transfer - G4double maxPairEnergy = MaxSecondaryEnergyForElement(kineticEnergy, + G4double maxPairEnergy = MaxSecondaryEnergyForElement(kinEnergy, anElement->GetZ()); G4double maxEnergy = std::min(tmax, maxPairEnergy); G4double minEnergy = std::max(tmin, minPairEnergy); @@ -540,16 +568,16 @@ void G4MuPairProductionModel::SampleSecondaries( // << " minPair= " << minPairEnergy << " maxpair= " << maxPairEnergy // << " ymin= " << ymin << " dy= " << dy << G4endl; - G4double coeff = G4Log(minPairEnergy/kineticEnergy)/ymin; + G4double coeff = G4Log(minPairEnergy/kinEnergy)/ymin; // compute limits - G4double yymin = G4Log(minEnergy/kineticEnergy)/coeff; - G4double yymax = G4Log(maxEnergy/kineticEnergy)/coeff; + G4double yymin = G4Log(minEnergy/kinEnergy)/coeff; + G4double yymax = G4Log(maxEnergy/kinEnergy)/coeff; //G4cout << "yymin= " << yymin << " yymax= " << yymax << G4endl; // units should not be used, bacause table was built without - G4double logTkin = G4Log(kineticEnergy/MeV); + G4double logTkin = G4Log(kinEnergy/MeV); // sample e-e+ energy, pair energy first @@ -568,7 +596,7 @@ void G4MuPairProductionModel::SampleSecondaries( } if(0 == iz1) { iz1 = iz2 = zdat[nzdat-1]; } - G4double PairEnergy = 0.0; + G4double pairEnergy = 0.0; G4int count = 0; //G4cout << "start loop Z1= " << iz1 << " Z2= " << iz2 << G4endl; do { @@ -586,64 +614,59 @@ void G4MuPairProductionModel::SampleSecondaries( x += (x2 - x)*(lnZ - lz1)/(lz2 - lz1); } //G4cout << "x= " << x << " coeff= " << coeff << G4endl; - PairEnergy = kineticEnergy*G4Exp(x*coeff); + pairEnergy = kinEnergy*G4Exp(x*coeff); // Loop checking, 03-Aug-2015, Vladimir Ivanchenko - } while((PairEnergy < minEnergy || PairEnergy > maxEnergy) && 10 > count); + } while((pairEnergy < minEnergy || pairEnergy > maxEnergy) && 10 > count); - //G4cout << "## PairEnergy(GeV)= " << PairEnergy/GeV + //G4cout << "## pairEnergy(GeV)= " << pairEnergy/GeV // << " Etot(GeV)= " << totalEnergy/GeV << G4endl; - // sample r=(E+-E-)/PairEnergy ( uniformly .....) + // sample r=(E+-E-)/pairEnergy ( uniformly .....) G4double rmax = - (1.-6.*particleMass*particleMass/(totalEnergy*(totalEnergy-PairEnergy))) - *sqrt(1.-minPairEnergy/PairEnergy); + (1.-6.*particleMass*particleMass/(totalEnergy*(totalEnergy-pairEnergy))) + *sqrt(1.-minPairEnergy/pairEnergy); G4double r = rmax * (-1.+2.*G4UniformRand()) ; - // compute energies from PairEnergy,r - G4double ElectronEnergy = (1.-r)*PairEnergy*0.5; - G4double PositronEnergy = PairEnergy - ElectronEnergy; + // compute energies from pairEnergy,r + G4double eEnergy = (1.-r)*pairEnergy*0.5; + G4double pEnergy = pairEnergy - eEnergy; - // The angle of the emitted virtual photon is sampled - // according to the muon bremsstrahlung model - - G4double gam = totalEnergy/particleMass; - G4double gmax = gam*std::min(1.0, totalEnergy/PairEnergy - 1.0); - G4double gmax2= gmax*gmax; - G4double x = G4UniformRand()*gmax2/(1.0 + gmax2); - - G4double theta = sqrt(x/(1.0 - x))/gam; - G4double sint = sin(theta); - G4double phi = twopi * G4UniformRand() ; - G4double dirx = sint*cos(phi), diry = sint*sin(phi), dirz = cos(theta) ; - - G4ThreeVector gDirection(dirx, diry, dirz); - gDirection.rotateUz(partDirection); - - // the angles of e- and e+ assumed to be the same as virtual gamma - - // create G4DynamicParticle object for the particle1 - G4double ekin = std::max(ElectronEnergy - electron_mass_c2,0.0); - G4DynamicParticle* aParticle1 = - new G4DynamicParticle(theElectron, gDirection, ekin); - - // create G4DynamicParticle object for the particle2 - ekin = std::max(PositronEnergy - electron_mass_c2,0.0); + // Sample angles + G4ThreeVector eDirection, pDirection; + // + GetAngularDistribution()->SamplePairDirections(aDynamicParticle, + eEnergy, pEnergy, + eDirection, pDirection); + // create G4DynamicParticle object for e+e- + eEnergy = std::max(eEnergy - CLHEP::electron_mass_c2, 0.0); + pEnergy = std::max(pEnergy - CLHEP::electron_mass_c2, 0.0); + G4DynamicParticle* aParticle1 = + new G4DynamicParticle(theElectron,eDirection,eEnergy); G4DynamicParticle* aParticle2 = - new G4DynamicParticle(thePositron, gDirection, ekin); + new G4DynamicParticle(thePositron,pDirection,pEnergy); + // Fill output vector + vdp->push_back(aParticle1); + vdp->push_back(aParticle2); // primary change - kineticEnergy -= (ElectronEnergy + PositronEnergy); - fParticleChange->SetProposedKineticEnergy(kineticEnergy); - + kinEnergy -= pairEnergy; partDirection *= totalMomentum; partDirection -= (aParticle1->GetMomentum() + aParticle2->GetMomentum()); partDirection = partDirection.unit(); - fParticleChange->SetProposedMomentumDirection(partDirection); - // add secondary - vdp->push_back(aParticle1); - vdp->push_back(aParticle2); + // if energy transfer is higher than threshold (very high by default) + // then stop tracking the primary particle and create a new secondary + if (pairEnergy > SecondaryThreshold()) { + fParticleChange->ProposeTrackStatus(fStopAndKill); + fParticleChange->SetProposedKineticEnergy(0.0); + G4DynamicParticle* newdp = + new G4DynamicParticle(particle, partDirection, kinEnergy); + vdp->push_back(newdp); + } else { // continue tracking the primary e-/e+ otherwise + fParticleChange->SetProposedMomentumDirection(partDirection); + fParticleChange->SetProposedKineticEnergy(kinEnergy); + } //G4cout << "-- G4MuPairProductionModel::SampleSecondaries done" << G4endl; } diff --git a/source/processes/electromagnetic/pii/sources.cmake b/source/processes/electromagnetic/pii/sources.cmake index a080820d92..52ca73152e 100644 --- a/source/processes/electromagnetic/pii/sources.cmake +++ b/source/processes/electromagnetic/pii/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4empii # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,32 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4empii HEADERS G4CompositeDataSet.hh diff --git a/source/processes/electromagnetic/polarisation/History b/source/processes/electromagnetic/polarisation/History index 797624a6a3..43236b28ef 100644 --- a/source/processes/electromagnetic/polarisation/History +++ b/source/processes/electromagnetic/polarisation/History @@ -62,7 +62,7 @@ committal in the CVS repository ! 06 October 15: V.Ivanchenko (empolar-V10-01-01) - G4PolarizedCompton, G4ePolarizedIonisation, G4eplusPolarizedAnnihilation - - changed intialisation taking into account MT mode, added + - changed initialisation taking into account MT mode, added method ComputeSaturationFactor used in mean free path and step limit corrections, removed PreparePhysicsTable method (use one from the base class), fixed computation of the value of number diff --git a/source/processes/electromagnetic/polarisation/include/G4PolarizedAnnihilationCrossSection.hh b/source/processes/electromagnetic/polarisation/include/G4PolarizedAnnihilationCrossSection.hh index a387b1ab26..501b2f7740 100644 --- a/source/processes/electromagnetic/polarisation/include/G4PolarizedAnnihilationCrossSection.hh +++ b/source/processes/electromagnetic/polarisation/include/G4PolarizedAnnihilationCrossSection.hh @@ -88,7 +88,7 @@ private: G4double polxx, polyy, polzz, polxz, polzx, polxy, polyx, polyz, polzy; G4double re2, diffXSFactor, totalXSFactor; - // - unpolarised + part depending on the polarization of the intial pair + // - unpolarised + part depending on the polarization of the initial pair G4double phi0; // - part depending on the polarization of the final positron G4ThreeVector phi2; diff --git a/source/processes/electromagnetic/polarisation/include/G4PolarizedGammaConversionModel.hh b/source/processes/electromagnetic/polarisation/include/G4PolarizedGammaConversionModel.hh index b6b9627647..251ad4bf65 100644 --- a/source/processes/electromagnetic/polarisation/include/G4PolarizedGammaConversionModel.hh +++ b/source/processes/electromagnetic/polarisation/include/G4PolarizedGammaConversionModel.hh @@ -40,7 +40,7 @@ // // Class Description: // -// Implementation of gamma convertion to e+e- in the field of a nucleus +// Implementation of gamma conversion to e+e- in the field of a nucleus // including polarization transfer // ------------------------------------------------------------------- diff --git a/source/processes/electromagnetic/polarisation/sources.cmake b/source/processes/electromagnetic/polarisation/sources.cmake index c316f1fdba..daabdc1396 100644 --- a/source/processes/electromagnetic/polarisation/sources.cmake +++ b/source/processes/electromagnetic/polarisation/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4empolar # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,34 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4empolar HEADERS G4PolarizationHelper.hh diff --git a/source/processes/electromagnetic/polarisation/src/G4PolarizationManager.cc b/source/processes/electromagnetic/polarisation/src/G4PolarizationManager.cc index 34582846d8..cc8f4ad22e 100644 --- a/source/processes/electromagnetic/polarisation/src/G4PolarizationManager.cc +++ b/source/processes/electromagnetic/polarisation/src/G4PolarizationManager.cc @@ -104,7 +104,7 @@ void G4PolarizationManager::SetVolumePolarization(const G4String & lVolName, con return; } } - G4cout<<" logical volume '"< class G4ParticleDefinition; @@ -60,30 +59,27 @@ public: explicit G4DeltaAngle(const G4String& name = ""); - virtual ~G4DeltaAngle(); + ~G4DeltaAngle() override; - virtual G4ThreeVector& SampleDirection(const G4DynamicParticle* dp, - G4double kinEnergyFinal, G4int Z, - const G4Material* mat = nullptr) final; + G4ThreeVector& SampleDirection(const G4DynamicParticle* dp, + G4double kinEnergyFinal, G4int Z, + const G4Material* mat = nullptr) final; - virtual G4ThreeVector& SampleDirectionForShell( - const G4DynamicParticle* dp, + G4ThreeVector& SampleDirectionForShell(const G4DynamicParticle* dp, G4double kinEnergyFinal, G4int Z, G4int shellIdx, const G4Material* mat = nullptr) final; - virtual void PrintGeneratorInformation() const final; + // hide assignment operator + G4DeltaAngle & operator=(const G4DeltaAngle &right) = delete; + G4DeltaAngle(const G4DeltaAngle&) = delete; private: - // hide assignment operator - G4DeltaAngle & operator=(const G4DeltaAngle &right) = delete; - G4DeltaAngle(const G4DeltaAngle&) = delete; - const G4ParticleDefinition* fElectron; - std::vector prob; G4int nprob; G4int fShellIdx; + std::vector prob; }; #endif diff --git a/source/processes/electromagnetic/standard/include/G4GoudsmitSaundersonMscModel.hh b/source/processes/electromagnetic/standard/include/G4GoudsmitSaundersonMscModel.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/standard/include/G4ICRU49NuclearStoppingModel.hh b/source/processes/electromagnetic/standard/include/G4ICRU49NuclearStoppingModel.hh index 279f0bfddf..6fad6c62b6 100644 --- a/source/processes/electromagnetic/standard/include/G4ICRU49NuclearStoppingModel.hh +++ b/source/processes/electromagnetic/standard/include/G4ICRU49NuclearStoppingModel.hh @@ -83,6 +83,11 @@ public: const G4DynamicParticle*, G4double, G4double) final; + // hide assignment operator + G4ICRU49NuclearStoppingModel & operator= + (const G4ICRU49NuclearStoppingModel &right) = delete; + G4ICRU49NuclearStoppingModel(const G4ICRU49NuclearStoppingModel&) = delete; + private: void InitialiseArray(); @@ -91,11 +96,6 @@ private: G4double Z1, G4double Z2, G4double A1, G4double A2); - // hide assignment operator - G4ICRU49NuclearStoppingModel & operator= - (const G4ICRU49NuclearStoppingModel &right) = delete; - G4ICRU49NuclearStoppingModel(const G4ICRU49NuclearStoppingModel&) = delete; - G4Pow* g4calc; G4double theZieglerFactor; static G4double Z23[100]; diff --git a/source/processes/electromagnetic/standard/include/G4ICRU73QOModel.hh b/source/processes/electromagnetic/standard/include/G4ICRU73QOModel.hh index 77639b61b8..f802255f7d 100644 --- a/source/processes/electromagnetic/standard/include/G4ICRU73QOModel.hh +++ b/source/processes/electromagnetic/standard/include/G4ICRU73QOModel.hh @@ -131,7 +131,7 @@ private: G4double DEDXPerElement(G4int Z, G4double kineticEnergy); - // get number of shell, energy and oscillator strenghts for material + // get number of shell, energy and oscillator strengths for material G4int GetNumberOfShells(G4int Z) const; G4double GetShellEnergy(G4int Z, G4int nbOfTheShell) const; @@ -169,7 +169,7 @@ private: static const G4int NQODATA = 130; static const G4int ZElementAvailable[NQOELEM]; - // number, energy and oscillator strenghts + // number, energy and oscillator strengths // for an harmonic oscillator model of material static const G4int startElemIndex[NQOELEM]; static const G4int nbofShellsForElement[NQOELEM]; diff --git a/source/processes/electromagnetic/standard/include/G4LindhardSorensenIonModel.hh b/source/processes/electromagnetic/standard/include/G4LindhardSorensenIonModel.hh index b742be3f2e..16bdc5d4ef 100644 --- a/source/processes/electromagnetic/standard/include/G4LindhardSorensenIonModel.hh +++ b/source/processes/electromagnetic/standard/include/G4LindhardSorensenIonModel.hh @@ -52,75 +52,80 @@ #include "G4VEmModel.hh" #include "G4NistManager.hh" +#include "G4Threading.hh" +#include class G4EmCorrections; class G4ParticleChangeForLoss; class G4LindhardSorensenData; +class G4BraggIonModel; class G4LindhardSorensenIonModel : public G4VEmModel { - public: explicit G4LindhardSorensenIonModel(const G4ParticleDefinition* p = nullptr, const G4String& nam = "LindhardSorensen"); - virtual ~G4LindhardSorensenIonModel(); + ~G4LindhardSorensenIonModel() override; - virtual void Initialise(const G4ParticleDefinition*, - const G4DataVector&) override; + void Initialise(const G4ParticleDefinition*, const G4DataVector&) override; - virtual G4double MinEnergyCut(const G4ParticleDefinition*, - const G4MaterialCutsCouple* couple) override; + G4double MinEnergyCut(const G4ParticleDefinition*, + const G4MaterialCutsCouple* couple) override; - virtual G4double ComputeCrossSectionPerElectron( - const G4ParticleDefinition*, + G4double ComputeCrossSectionPerElectron( + const G4ParticleDefinition*, G4double kineticEnergy, G4double cutEnergy, G4double maxEnergy); - virtual G4double ComputeCrossSectionPerAtom( + G4double ComputeCrossSectionPerAtom( const G4ParticleDefinition*, G4double kineticEnergy, G4double Z, G4double A, G4double cutEnergy, G4double maxEnergy) override; - virtual G4double CrossSectionPerVolume(const G4Material*, + G4double CrossSectionPerVolume(const G4Material*, const G4ParticleDefinition*, G4double kineticEnergy, G4double cutEnergy, G4double maxEnergy) override; - - virtual G4double ComputeDEDXPerVolume(const G4Material*, - const G4ParticleDefinition*, - G4double kineticEnergy, - G4double cutEnergy) override; + + G4double ComputeDEDXPerVolume(const G4Material*, + const G4ParticleDefinition*, + G4double kineticEnergy, + G4double cutEnergy) override; - virtual G4double GetChargeSquareRatio(const G4ParticleDefinition* p, - const G4Material* mat, - G4double kineticEnergy) override; + G4double GetChargeSquareRatio(const G4ParticleDefinition* p, + const G4Material* mat, + G4double kineticEnergy) override; - virtual G4double GetParticleCharge(const G4ParticleDefinition* p, - const G4Material* mat, - G4double kineticEnergy) override; + G4double GetParticleCharge(const G4ParticleDefinition* p, + const G4Material* mat, + G4double kineticEnergy) override; - virtual void CorrectionsAlongStep(const G4MaterialCutsCouple* couple, - const G4DynamicParticle* dp, - G4double& eloss, - G4double&, - G4double length) override; + void CorrectionsAlongStep(const G4MaterialCutsCouple* couple, + const G4DynamicParticle* dp, + G4double& eloss, G4double&, + G4double length) override; - virtual void SampleSecondaries(std::vector*, - const G4MaterialCutsCouple*, - const G4DynamicParticle*, - G4double tmin, - G4double maxEnergy) override; + void SampleSecondaries(std::vector*, + const G4MaterialCutsCouple*, + const G4DynamicParticle*, + G4double tmin, + G4double maxEnergy) override; + + // hide assignment operator + G4LindhardSorensenIonModel & operator= + (const G4LindhardSorensenIonModel &right) = delete; + G4LindhardSorensenIonModel(const G4LindhardSorensenIonModel&) = delete; protected: - virtual G4double MaxSecondaryEnergy(const G4ParticleDefinition*, - G4double kinEnergy) override; + G4double MaxSecondaryEnergy(const G4ParticleDefinition*, + G4double kinEnergy) override; inline G4double GetChargeSquareRatio() const; @@ -130,20 +135,25 @@ private: void SetupParameters(); + void InitialiseLS(); + + G4double ComputeDEDXPerVolumeLS(const G4Material*, + const G4ParticleDefinition*, + G4double kinEnergy, G4double cutEnergy); + inline void SetParticle(const G4ParticleDefinition* p); - // hide assignment operator - G4LindhardSorensenIonModel & operator= - (const G4LindhardSorensenIonModel &right) = delete; - G4LindhardSorensenIonModel(const G4LindhardSorensenIonModel&) = delete; + static const G4int MAXZION = 93; static G4LindhardSorensenData* lsdata; + static std::vector* fact[MAXZION]; const G4ParticleDefinition* particle; G4ParticleDefinition* theElectron; G4EmCorrections* corr; G4ParticleChangeForLoss* fParticleChange; G4NistManager* nist; + G4BraggIonModel* fBraggIonModel; G4int Zin; G4double mass; @@ -155,6 +165,11 @@ private: G4double ratio; G4double formfact; G4double twoln10; + +#ifdef G4MULTITHREADED + static G4Mutex theLSMutex; +#endif + }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... diff --git a/source/processes/electromagnetic/standard/include/G4PairProductionRelModel.hh b/source/processes/electromagnetic/standard/include/G4PairProductionRelModel.hh index 3410932ac8..22e568df0c 100644 --- a/source/processes/electromagnetic/standard/include/G4PairProductionRelModel.hh +++ b/source/processes/electromagnetic/standard/include/G4PairProductionRelModel.hh @@ -43,7 +43,7 @@ // // Class Description: // -// Implementation of gamma convertion to e+e- in the field of a nucleus +// Implementation of gamma conversion to e+e- in the field of a nucleus // relativistic approximation // diff --git a/source/processes/electromagnetic/standard/include/G4SauterGavrilaAngularDistribution.hh b/source/processes/electromagnetic/standard/include/G4SauterGavrilaAngularDistribution.hh index d39e91580f..0b107e579e 100644 --- a/source/processes/electromagnetic/standard/include/G4SauterGavrilaAngularDistribution.hh +++ b/source/processes/electromagnetic/standard/include/G4SauterGavrilaAngularDistribution.hh @@ -47,8 +47,6 @@ #ifndef G4SauterGavrilaAngularDistribution_h #define G4SauterGavrilaAngularDistribution_h 1 -#include "G4ios.hh" -#include "globals.hh" #include "G4VEmAngularDistribution.hh" class G4SauterGavrilaAngularDistribution : public G4VEmAngularDistribution @@ -58,16 +56,14 @@ public: explicit G4SauterGavrilaAngularDistribution(); - virtual ~G4SauterGavrilaAngularDistribution(); + ~G4SauterGavrilaAngularDistribution() override; - virtual G4ThreeVector& SampleDirection(const G4DynamicParticle* dp, - G4double e = 0.0, - G4int shellId = 0, - const G4Material* mat = 0) final; + G4ThreeVector& SampleDirection(const G4DynamicParticle* dp, + G4double e = 0.0, + G4int shellId = 0, + const G4Material* mat = 0) final; - virtual void PrintGeneratorInformation() const final; - -private: + void PrintGeneratorInformation() const; // hide assignment operator G4SauterGavrilaAngularDistribution & operator= diff --git a/source/processes/electromagnetic/standard/include/G4SeltzerBergerModel.hh b/source/processes/electromagnetic/standard/include/G4SeltzerBergerModel.hh index c6fa0b12ee..337d4a9ceb 100644 --- a/source/processes/electromagnetic/standard/include/G4SeltzerBergerModel.hh +++ b/source/processes/electromagnetic/standard/include/G4SeltzerBergerModel.hh @@ -78,8 +78,6 @@ public: void Initialise(const G4ParticleDefinition*, const G4DataVector&) override; - void InitialiseForElement(const G4ParticleDefinition*, G4int Z) override; - void SampleSecondaries(std::vector*, const G4MaterialCutsCouple*, const G4DynamicParticle*, @@ -92,13 +90,16 @@ public: inline void SetBicubicInterpolationFlag(G4bool val) { fIsUseBicubicInterpolation = val; }; + // hide assignment operator and cctr + G4SeltzerBergerModel & operator=(const G4SeltzerBergerModel &right) = delete; + G4SeltzerBergerModel(const G4SeltzerBergerModel&) = delete; + protected: G4double ComputeDXSectionPerAtom(G4double gammaEnergy) override; private: - // void ReadData(G4int Z); const G4String& FindDirectoryPath(); @@ -108,10 +109,6 @@ private: const G4double cut, const G4double emax); - // hide assignment operator and cctr - G4SeltzerBergerModel & operator=(const G4SeltzerBergerModel &right); - G4SeltzerBergerModel(const G4SeltzerBergerModel&); - static constexpr G4int gMaxZet = 101; static constexpr G4double gExpNumLimit = -12.; static G4double gYLimitData[gMaxZet]; diff --git a/source/processes/electromagnetic/standard/include/G4WentzelOKandVIxSection.hh b/source/processes/electromagnetic/standard/include/G4WentzelOKandVIxSection.hh index 0a788a583c..a980b52a92 100644 --- a/source/processes/electromagnetic/standard/include/G4WentzelOKandVIxSection.hh +++ b/source/processes/electromagnetic/standard/include/G4WentzelOKandVIxSection.hh @@ -110,6 +110,11 @@ public: inline G4double GetCosThetaElec() const; + // hide assignment operator + G4WentzelOKandVIxSection & operator= + (const G4WentzelOKandVIxSection &right) = delete; + G4WentzelOKandVIxSection(const G4WentzelOKandVIxSection&) = delete; + protected: void ComputeMaxElectronScattering(G4double cut); @@ -184,11 +189,6 @@ protected: static G4Mutex WentzelOKandVIxSectionMutex; #endif -private: - // hide assignment operator - G4WentzelOKandVIxSection & operator= - (const G4WentzelOKandVIxSection &right) = delete; - G4WentzelOKandVIxSection(const G4WentzelOKandVIxSection&) = delete; }; //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/source/processes/electromagnetic/standard/include/G4WentzelVIRelModel.hh b/source/processes/electromagnetic/standard/include/G4WentzelVIRelModel.hh index 1d064be02b..3e262015a9 100644 --- a/source/processes/electromagnetic/standard/include/G4WentzelVIRelModel.hh +++ b/source/processes/electromagnetic/standard/include/G4WentzelVIRelModel.hh @@ -84,14 +84,14 @@ public: virtual void DefineMaterial(const G4MaterialCutsCouple* cup); -private: - - void ComputeEffectiveMass(); - // hide assignment operator G4WentzelVIRelModel & operator=(const G4WentzelVIRelModel &right) = delete; G4WentzelVIRelModel(const G4WentzelVIRelModel&) = delete; +private: + + void ComputeEffectiveMass(); + static std::vector effMass; G4NistManager* fNistManager; diff --git a/source/processes/electromagnetic/standard/include/G4eDPWACoulombScatteringModel.hh b/source/processes/electromagnetic/standard/include/G4eDPWACoulombScatteringModel.hh new file mode 100644 index 0000000000..4220c8e547 --- /dev/null +++ b/source/processes/electromagnetic/standard/include/G4eDPWACoulombScatteringModel.hh @@ -0,0 +1,146 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// ------------------------------------------------------------------- +// +// GEANT4 Class header file +// +// +// File name: G4eDPWACoulombScatteringModel +// +// Author: Mihaly Novak +// +// Creation date: 02.07.2020 +// +// Modifications: +// +// Class Description: +// +// e-/e+ Coulomb scattering model based on numerical Differential Cross Sections +// (DCS) obtained by Dirac Partial Wave Analysis (DPWA) and supplied by the +// G4eDPWAElasticDCS class. +// The model contains the possibility to incorporate the effects of angular +// deflections of sub-threshold ionisation intercations when it's described by +// the condensed history model. Note, this must be inactivated (by setting the +// `isscpcor` input argument of the CTR to false) when ionisation is described +// with a classical, event by event based simulation model instead of usign the +// condensed history approach (otherwise, the corresponding angular defelctions +// will be "double counted"). +// +// ------------------------------------------------------------------- + + + +#ifndef G4eDPWACoulombScatteringModel_h +#define G4eDPWACoulombScatteringModel_h 1 + +#include "G4VEmModel.hh" +#include "globals.hh" + +class G4eDPWAElasticDCS; +class G4ParticleChangeForGamma; +class G4ParticleDefinition; +class G4DataVector; + +class G4eDPWACoulombScatteringModel : public G4VEmModel { + +public: + + /** + * Constructor. + * + * @param[in] ismixed Indicates if the model is for mixed or for pure single + * Coulomb scattering. Different type of tables are pre- + * pared for sampling polar angle of Coulomb scattering + * for mixed and for pure single scattering models: cosine + * of the polar scattering angle can be sampled in a + * restriced inteval (see mumin input parameter below). + * @param[in] isscpcor Indicates if scattering power correction should be used. + * Note, scattering power correction accounts the effects + * angular deflections due to sub-threshold ionisations + * when ionisation is described by using condensed history + * model (should be active only in this case). + * @param[in] mumin When the model is used for mixed simulation, Coulomb + * scatterings, resulting in a minimum t_c polar angular + * deflection, modelled explicitly. Therefore, cross + * sections are computed, and angular deflections are + * sampled ina resricted [\theta_c,\pi] interval. The + * minimum of this interval is determined by the mumin + * parameter as: + * \mu_{min} = \mu(\theta_c)=0.5[1-\cos(\theta_c)] + */ + G4eDPWACoulombScatteringModel(G4bool ismixed=false, G4bool isscpcor=true, + G4double mumin=0.0); + + ~G4eDPWACoulombScatteringModel() override; + + // + // Interface methods: + + void Initialise(const G4ParticleDefinition*, const G4DataVector&) override; + + void InitialiseLocal(const G4ParticleDefinition*, G4VEmModel*) override; + + G4double ComputeCrossSectionPerAtom(const G4ParticleDefinition*, G4double ekin, + G4double Z, G4double A, G4double prodcut, + G4double emax) override; + + void SampleSecondaries(std::vector*, + const G4MaterialCutsCouple*, + const G4DynamicParticle*, + G4double tmin, + G4double maxEnergy) override; + + G4double MinPrimaryEnergy(const G4Material*, const G4ParticleDefinition*, + G4double) override { return 10.0*CLHEP::eV; } + + void SetTheDCS(G4eDPWAElasticDCS* theDCS) { fTheDCS = theDCS; } + + G4eDPWAElasticDCS* GetTheDCS() { return fTheDCS; } + + +private: + + // Indicates if the model is mixed: MSC for soft (thetatheta_c). SS otherwise. + // Note, that while the model provides restricted (elastic and transport) + // cross sections, it's responsible to handle, i.e. provide final state, + // only for the Singe Scattering part in case of a mixed model. + G4bool fIsMixedModel; + // indicates if scattering power correction should be applied: correction due + // to deflection in case of sub-threshold, inelastic interactions -> only in + // case of condensed history simulation of inonisation! + G4bool fIsScpCorrection; + // mu(theta)=0.5[1-cos(theta)]: the model porvides final states \in [fMuMin,1] + G4double fMuMin; + // the object that provides cross sections and polar angle of scattering + G4eDPWAElasticDCS* fTheDCS; + // particle change + G4ParticleChangeForGamma* fParticleChange; + +}; + +#endif diff --git a/source/processes/electromagnetic/standard/include/G4eDPWAElasticDCS.hh b/source/processes/electromagnetic/standard/include/G4eDPWAElasticDCS.hh new file mode 100644 index 0000000000..35f272fb46 --- /dev/null +++ b/source/processes/electromagnetic/standard/include/G4eDPWAElasticDCS.hh @@ -0,0 +1,271 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// ------------------------------------------------------------------- +// +// GEANT4 Class header file +// +// +// File name: G4eDPWAElasticDCS +// +// Author: Mihaly Novak +// +// Creation date: 02.07.2020 +// +// Modifications: +// +// Class Description: +// +// Contains numerical Differential Cross Sections (DCS) for e-/e+ Coulomb +// scattering computed by Dirac Partial Wave Analysis (DPWA) [1]: +// - electrostatic interaction, with a local exchange correction in the case of +// electrons (using Dirac-Fock e- densities; finite nuclear size with Fermi +// charge distribution; exchange potential with Furness and McCarthy for e-)[2] +// - correlation-polarization (projectiles cause the polarization of the charge +// cloud of the target atom and the induced dipole moment acts back on the +// projectile) was accounted by using Local-Density Approximation (LDA) [2] +// - absorption: not included since it's an inelastic channel [2] (the cor- +// responding excitations needs to be modelled by a separate, independent, +// inelastic model). +// Using the above mentioned DPWA computation with a free atom approximation +// might lead to questionable results below few hundred [eV] where possible +// solid state or bounding effects might start to affect the potential. +// Nevertheless, the lower energy was set to 10 eV in order to provide(at least) +// some model even at low energies (with this caution). The highest projectile +// kinetic energy is 100 [MeV]. +// +// The class provides interface methods for elastic, first-, second-transport +// cross section computations as well as for sampling cosine of polar angular +// deflections. These interface methods are also available for resricted cross +// section computations and angular deflection sampling. +// +// References: +// +// [1] Salvat, F., Jablonski, A. and Powell, C.J., 2005. ELSEPA—Dirac partial- +// wave calculation of elastic scattering of electrons and positrons by +// atoms, positive ions and molecules. Computer physics communications, +// 165(2), pp.157-190. +// [2] Salvat, F., 2003. Optical-model potential for electron and positron +// elastic scattering by atoms. Physical Review A, 68(1), p.012708. +// [3] Benedito, E., Fernández-Varea, J.M. and Salvat, F.,2001. Mixed simulation +// of the multiple elastic scattering of electrons and positrons using +// partial-wave differential cross-sections. Nuclear Instruments and Methods +// in Physics Research Section B: Beam Interactions with Materials and Atoms, +// 174(1-2), pp.91-110. +// +// ------------------------------------------------------------------- + +#ifndef G4eDPWAElasticDCS_h +#define G4eDPWAElasticDCS_h 1 + + +#include +#include +#include +#include + +#include "globals.hh" +#include "zlib.h" +#include "G4String.hh" +#include "G4Physics2DVector.hh" + + +#include "G4MaterialTable.hh" +#include "G4Material.hh" +#include "G4Element.hh" +#include "G4MaterialCutsCouple.hh" +#include "G4ProductionCutsTable.hh" + + +#include "G4Log.hh" +#include "G4Exp.hh" + + +class G4eDPWAElasticDCS { + +public: + + // CTR: + // - iselectron : data for e- (for e+ otherwise) + // - isrestricted : sampling of angular deflection on restricted interavl is + // required (i.e. in case of mixed-simulation models) + G4eDPWAElasticDCS(G4bool iselectron=true, G4bool isrestricted=false); + + // DTR + ~G4eDPWAElasticDCS(); + + // initialise for a given 'iz' atomic number: + // - nothing happens if it has already been initialised for that Z. + void InitialiseForZ(std::size_t iz); + + // Computes the elastic, first and second cross sections for the given kinetic + // energy and target atom. + // Cross sections are zero ff ekin is below/above the kinetic energy grid + void ComputeCSPerAtom(G4int iz, G4double ekin, G4double& elcs, G4double& tr1cs, + G4double& tr2cs, G4double mumin=0.0, G4double mumax=1.0); + + + // samples cos(theta) i.e. cosine of the polar angle of scattering in elastic + // interaction (Coulomb scattering) of the projectile (e- or e+ depending on + // fIsElectron) with kinetic energy of exp('lekin'), target atom with atomic + // muber of 'iz'. See the 'SampleCosineThetaRestricted' for obtain samples on + // a restricted inteval. + G4double SampleCosineTheta(std::size_t iz, G4double lekin, G4double r1, + G4double r2, G4double r3); + + // samples cos(theta) i.e. cosine of the polar angle of scattering in elastic + // interaction (Coulomb scattering) of the projectile (e- or e+ depending on + // fIsElectron) with kinetic energy of exp('lekin'), target atom with atomic + // muber of 'iz'. + // The cosine theta will be in the [costMin, costMax] interval where costMin + // corresponds to a maximum allowed polar scattering angle thetaMax while + // costMin corresponds to minimum allowed polar scatterin angle thetaMin. + // See the 'SampleCosineTheta' for obtain samples on the entire [-1,1] range. + G4double SampleCosineThetaRestricted(std::size_t iz, G4double lekin, + G4double r1, G4double r2, + G4double costMax, G4double costMin); + + // interpolate scattering power correction form table buit at init. + G4double ComputeScatteringPowerCorrection(const G4MaterialCutsCouple *matcut, + G4double ekin); + + // build scattering power correction table at init. + void InitSCPCorrection(G4double lowEnergyLimit, G4double highEnergyLimit); + + +private: + + // data structure to store one sampling table: combined Alias + RatIn + // NOTE: when Alias is used, sampling on a resctricted interval is not possible + // However, Alias makes possible faster sampling. Alias is used in case + // of single scattering model while it's not used in case of mixed-model + // when restricted interval sampling is needed. This is controlled by + // the fIsRestrictedSamplingRequired flag (false by default). + struct OneSamplingTable { + OneSamplingTable () {} + void SetSize(std::size_t nx, G4bool useAlias) { + fN = nx; + // Alias + if (useAlias) { + fW.resize(nx); + fI.resize(nx); + } + // Ratin + fCum.resize(nx); + fA.resize(nx); + fB.resize(nx); + } + + // members + std::size_t fN; // # data points + G4double fScreenParA; // the screening parameter + std::vector fW; + std::vector fCum; + std::vector fA; + std::vector fB; + std::vector fI; + }; + + + // loads the kinetic energy and theta grids for the DCS data (first init step) + // should be called only by the master + void LoadGrid(); + + // load DCS data for a given Z + void LoadDCSForZ(G4int iz); + + // loads sampling table for the given Z over the enrgy grid + void BuildSmplingTableForZ(G4int iz); + + G4double SampleMu(std::size_t izet, std::size_t ie, G4double r1, G4double r2); + + G4double FindCumValue(G4double u, const OneSamplingTable& stable, + const std::vector& uvect); + + // muMin and muMax : no checks on these + G4double SampleMu(std::size_t izet, std::size_t ie, G4double r1, G4double muMin, + G4double muMax); + + // set the DCS data directory path + const G4String& FindDirectoryPath(); + + // uncompress one data file into the input string stream + void ReadCompressedFile(G4String fname, std::istringstream &iss); + + // compute Molier material dependent parameters + void ComputeMParams(const G4Material* mat, G4double& theBc, G4double& theXc2); + + +// members +private: + + // indicates if the object is for mixed-simulation (single scatterin otherwise) + G4bool fIsRestrictedSamplingRequired; + // indicates if the object is for e- (for e+ otherwise) + G4bool fIsElectron; + // indicates if the ekin, mu grids has already been loaded (only once) + static G4bool gIsGridLoaded; + // data directory + static G4String gDataDirectory; + // max atomic number (Z) for which DCS has been computed (103) + static constexpr std::size_t gMaxZ = 103; + // energy and theta grid(s) relaed variables: loaded from gridinfo by LoadGrid + static std::size_t gNumEnergies; + static std::size_t gIndxEnergyLim;// the energy index just above 2 [keV] + static std::size_t gNumThetas1; // used for e- below 2 [keV] + static std::size_t gNumThetas2; // used for e+ and for e- bove 2 [keV] + static std::vector gTheEnergies; // log-kinetic energy grid + static std::vector gTheMus1; // mu(theta) = 0.5[1-cos(theta)] + static std::vector gTheMus2; + static std::vector gTheU1; // u(mu; A'=0.01) = (A'+1)mu/(mu+A') + static std::vector gTheU2; + static G4double gLogMinEkin; // log(gTheEnergies[0]) + static G4double gInvDelLogEkin;// 1./log(gTheEnergies[i+1]/gTheEnergies[i]) + // abscissas and weights of an 8 point Gauss-Legendre quadrature + // for numerical integration on [0,1] + static const G4double gXGL[8]; + static const G4double gWGL[8]; + // + std::vector fDCS; // log(DCS) data per Z + std::vector fDCSLow; // only for e- E < 2keV + // sampling tables: only one of the followings will be utilized + std::vector< std::vector* > fSamplingTables; + // + // scattering power correction: to account sub-threshold inelastic deflections + const G4int fNumSPCEbinPerDec = 3; + struct SCPCorrection { + G4bool fIsUse; // + G4double fPrCut; // sec. e- production cut energy + G4double fLEmin; // log min energy + G4double fILDel; // inverse log delta kinetic energy + std::vector fVSCPC; // scattering power correction vector + }; + std::vector fSCPCPerMatCuts; + + +}; + +#endif diff --git a/source/processes/electromagnetic/standard/sources.cmake b/source/processes/electromagnetic/standard/sources.cmake index 79d7f162f3..d9b55ac66f 100644 --- a/source/processes/electromagnetic/standard/sources.cmake +++ b/source/processes/electromagnetic/standard/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4emstandard # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,34 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4emstandard HEADERS G4ASTARStopping.hh @@ -106,9 +81,11 @@ GEANT4_DEFINE_MODULE(NAME G4emstandard G4XrayRayleighModel.hh G4alphaIonisation.hh G4eBremsstrahlung.hh - G4eBremParametrizedModel.hh + G4eBremParametrizedModel.hh G4eBremsstrahlungRelModel.hh G4eCoulombScatteringModel.hh + G4eDPWACoulombScatteringModel.hh + G4eDPWAElasticDCS.hh G4eIonisation.hh G4eMultipleScattering.hh G4eSingleCoulombScatteringModel.hh @@ -181,9 +158,11 @@ GEANT4_DEFINE_MODULE(NAME G4emstandard G4XrayRayleighModel.cc G4alphaIonisation.cc G4eBremsstrahlung.cc - G4eBremParametrizedModel.cc + G4eBremParametrizedModel.cc G4eBremsstrahlungRelModel.cc G4eCoulombScatteringModel.cc + G4eDPWACoulombScatteringModel.cc + G4eDPWAElasticDCS.cc G4eIonisation.cc G4eMultipleScattering.cc G4eSingleCoulombScatteringModel.cc diff --git a/source/processes/electromagnetic/standard/src/G4DeltaAngle.cc b/source/processes/electromagnetic/standard/src/G4DeltaAngle.cc index 0e460d02ba..0c33187d25 100644 --- a/source/processes/electromagnetic/standard/src/G4DeltaAngle.cc +++ b/source/processes/electromagnetic/standard/src/G4DeltaAngle.cc @@ -62,8 +62,8 @@ G4DeltaAngle::G4DeltaAngle(const G4String&) { fElectron = G4Electron::Electron(); nprob = 26; - prob.resize(nprob,0.0); fShellIdx = -1; + prob.resize(nprob,0.0); } G4DeltaAngle::~G4DeltaAngle() @@ -191,6 +191,3 @@ G4DeltaAngle::SampleDirection(const G4DynamicParticle* dp, return fLocalDirection; } - -void G4DeltaAngle::PrintGeneratorInformation() const -{} diff --git a/source/processes/electromagnetic/standard/src/G4GoudsmitSaundersonMscModel.cc b/source/processes/electromagnetic/standard/src/G4GoudsmitSaundersonMscModel.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/standard/src/G4ICRU49NuclearStoppingModel.cc b/source/processes/electromagnetic/standard/src/G4ICRU49NuclearStoppingModel.cc index f0e45a47b7..79edbd45db 100644 --- a/source/processes/electromagnetic/standard/src/G4ICRU49NuclearStoppingModel.cc +++ b/source/processes/electromagnetic/standard/src/G4ICRU49NuclearStoppingModel.cc @@ -93,14 +93,14 @@ void G4ICRU49NuclearStoppingModel::InitialiseArray() if(0.0 == Z23[1]) { #ifdef G4MULTITHREADED G4MUTEXLOCK(&G4ICRU49NuclearStoppingModel::ICRU49NuclearMutex); -#endif if(0.0 == Z23[1]) { +#endif for(G4int i=2; i<100; ++i) { Z23[i] = g4calc->powZ(i, 0.23); } Z23[1] = 1.0; - } #ifdef G4MULTITHREADED + } G4MUTEXUNLOCK(&G4ICRU49NuclearStoppingModel::ICRU49NuclearMutex); #endif } diff --git a/source/processes/electromagnetic/standard/src/G4LindhardSorensenIonModel.cc b/source/processes/electromagnetic/standard/src/G4LindhardSorensenIonModel.cc index d40c61f2e2..4c7b75e9b4 100644 --- a/source/processes/electromagnetic/standard/src/G4LindhardSorensenIonModel.cc +++ b/source/processes/electromagnetic/standard/src/G4LindhardSorensenIonModel.cc @@ -54,12 +54,14 @@ #include "G4Log.hh" #include "G4DeltaAngle.hh" #include "G4LindhardSorensenData.hh" +#include "G4BraggIonModel.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... using namespace std; G4LindhardSorensenData* G4LindhardSorensenIonModel::lsdata = nullptr; +std::vector* G4LindhardSorensenIonModel::fact[] = {nullptr}; G4LindhardSorensenIonModel::G4LindhardSorensenIonModel(const G4ParticleDefinition*, const G4String& nam) @@ -73,6 +75,7 @@ G4LindhardSorensenIonModel::G4LindhardSorensenIonModel(const G4ParticleDefinitio SetParticle(theElectron); corr = G4LossTableManager::Instance()->EmCorrections(); nist = G4NistManager::Instance(); + fBraggIonModel = new G4BraggIonModel(); SetLowEnergyLimit(2.0*MeV); } @@ -84,23 +87,23 @@ G4LindhardSorensenIonModel::~G4LindhardSorensenIonModel() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void G4LindhardSorensenIonModel::Initialise(const G4ParticleDefinition* p, - const G4DataVector&) + const G4DataVector& ptr) { + fBraggIonModel->Initialise(p, ptr); SetParticle(p); - - //G4cout << "G4LindhardSorensenIonModel::Initialise for " << p->GetParticleName() - // << G4endl; + //G4cout << "G4LindhardSorensenIonModel::Initialise for " + // << p->GetParticleName() << G4endl; // always false before the run SetDeexcitationFlag(false); if(nullptr == fParticleChange) { fParticleChange = GetParticleChangeForLoss(); - if(UseAngularGeneratorFlag() && !GetAngularDistribution()) { + if(UseAngularGeneratorFlag() && nullptr == GetAngularDistribution()) { SetAngularDistribution(new G4DeltaAngle()); } } - if(IsMaster() && !lsdata) { + if(IsMaster() && nullptr == lsdata) { lsdata = new G4LindhardSorensenData(); } } diff --git a/source/processes/electromagnetic/standard/src/G4SeltzerBergerModel.cc b/source/processes/electromagnetic/standard/src/G4SeltzerBergerModel.cc index 12d94f6961..ffff3f548d 100644 --- a/source/processes/electromagnetic/standard/src/G4SeltzerBergerModel.cc +++ b/source/processes/electromagnetic/standard/src/G4SeltzerBergerModel.cc @@ -59,7 +59,7 @@ #include "G4ParticleChangeForLoss.hh" #include "G4SBBremTable.hh" #include "G4ModifiedTsai.hh" -//#include "G4DipBustGenerator.hh" + #include "G4EmParameters.hh" #include "G4ProductionCutsTable.hh" @@ -75,7 +75,7 @@ G4Physics2DVector* G4SeltzerBergerModel::gSBDCSData[] = { nullptr }; G4SBBremTable* G4SeltzerBergerModel::gSBSamplingTable = nullptr; -G4double G4SeltzerBergerModel::gYLimitData[] = { 0.0 }; +G4double G4SeltzerBergerModel::gYLimitData[] = { 0.0 }; G4String G4SeltzerBergerModel::gDataDirectory = ""; #ifdef G4MULTITHREADED @@ -128,11 +128,10 @@ void G4SeltzerBergerModel::Initialise(const G4ParticleDefinition* p, for(size_t j=0; jGetMaterialCutsCouple(j)->GetMaterial(); auto elmVec = mat->GetElementVector(); - size_t numOfElem = mat->GetNumberOfElements(); - for (size_t ie = 0; ie < numOfElem; ++ie) { - G4int Z = std::max(1,std::min(((*elmVec)[ie])->GetZasInt(), gMaxZet-1)); + for (auto & elm : *elmVec) { + G4int Z = std::max(1,std::min(elm->GetZasInt(), gMaxZet-1)); // load SB-DCS data for this atomic number if it has not been loaded yet - InitialiseForElement(nullptr, Z); + if (gSBDCSData[Z] == nullptr) ReadData(Z); } } // elem.selectr. only for master: base class init-local will set for workers @@ -177,9 +176,13 @@ const G4String& G4SeltzerBergerModel::FindDirectoryPath() void G4SeltzerBergerModel::ReadData(G4int Z) { // return if it has been already loaded - if (gSBDCSData[Z]) { - return; - } + if (gSBDCSData[Z] != nullptr) return; + +#ifdef G4MULTITHREADED + G4MUTEXLOCK(&theSBMutex); + if (gSBDCSData[Z] != nullptr) return; +#endif + std::ostringstream ost; ost << FindDirectoryPath() << Z; std::ifstream fin(ost.str().c_str()); @@ -207,6 +210,9 @@ void G4SeltzerBergerModel::ReadData(G4int Z) { ed,"G4LEDATA version should be G4EMLOW6.23 or later."); delete v; } +#ifdef G4MULTITHREADED + G4MUTEXUNLOCK(&theSBMutex); +#endif } G4double G4SeltzerBergerModel::ComputeDXSectionPerAtom(G4double gammaEnergy) @@ -222,8 +228,8 @@ G4double G4SeltzerBergerModel::ComputeDXSectionPerAtom(G4double gammaEnergy) // make sure that the Z-related SB-DCS are loaded // NOTE: fCurrentIZ should have been set before. fCurrentIZ = std::max(std::min(fCurrentIZ, gMaxZet-1), 1); - if (!gSBDCSData[fCurrentIZ]) { - InitialiseForElement(nullptr, fCurrentIZ); + if (nullptr == gSBDCSData[fCurrentIZ]) { + ReadData(fCurrentIZ); } // NOTE: SetupForMaterial should have been called before! const G4double pt2 = fPrimaryKinEnergy*(fPrimaryKinEnergy+2.*kMC2); @@ -336,8 +342,8 @@ G4SeltzerBergerModel::SampleEnergyTransfer(const G4double kinEnergy, // majoranta const G4double x0 = tmin/kinEnergy; G4double vmax; - if (!gSBDCSData[fCurrentIZ]) { - InitialiseForElement(nullptr, fCurrentIZ); + if (nullptr == gSBDCSData[fCurrentIZ]) { + ReadData(fCurrentIZ); } vmax = gSBDCSData[fCurrentIZ]->Value(x0, y, fIndx, fIndy)*1.02; // @@ -400,22 +406,6 @@ G4SeltzerBergerModel::SampleEnergyTransfer(const G4double kinEnergy, return gammaEnergy; } -void G4SeltzerBergerModel::InitialiseForElement(const G4ParticleDefinition*, - G4int Z) -{ - if (!gSBDCSData[Z]) { -#ifdef G4MULTITHREADED - G4MUTEXLOCK(&theSBMutex); - if (!gSBDCSData[Z]) { -#endif - ReadData(Z); -#ifdef G4MULTITHREADED - } - G4MUTEXUNLOCK(&theSBMutex); -#endif - } -} - void G4SeltzerBergerModel::SetupForMaterial(const G4ParticleDefinition*, const G4Material* mat, G4double kineticEnergy) diff --git a/source/processes/electromagnetic/standard/src/G4UrbanMscModel.cc b/source/processes/electromagnetic/standard/src/G4UrbanMscModel.cc index 1f0e49089c..981b9cc739 100644 --- a/source/processes/electromagnetic/standard/src/G4UrbanMscModel.cc +++ b/source/processes/electromagnetic/standard/src/G4UrbanMscModel.cc @@ -542,7 +542,8 @@ G4double G4UrbanMscModel::ComputeTruePathLengthLimit( } //step limit - tlimit = facrange*rangeinit; + tlimit = (currentRange > presafety) ? + std::max(facrange*rangeinit, facsafety*presafety) : currentRange; //lower limit for tlimit tlimit = std::min(std::max(tlimit,tlimitmin), tgeom); @@ -727,9 +728,6 @@ G4double G4UrbanMscModel::ComputeGeomPathLength(G4double) // z = t for very small tPathLength if(tPathLength < tlimitminfix2) return zPathLength; - // VI: it is already checked - // if(tPathLength > currentRange) - // tPathLength = currentRange ; /* G4cout << "ComputeGeomPathLength: tpl= " << tPathLength << " R= " << currentRange << " L0= " << lambda0 @@ -1133,10 +1131,9 @@ void G4UrbanMscModel::SampleDisplacement(G4double, G4double phi) void G4UrbanMscModel::SampleDisplacementNew(G4double, G4double phi) { // best sampling based on single scattering results - G4double rmax = sqrt((tPathLength-zPathLength)*(tPathLength+zPathLength)); - G4double r = 0.; - G4double u = r/rmax; + G4double r(0.0); + G4double u(0.0); static const G4double reps = 5.e-3; if(rmax > 0.) @@ -1294,7 +1291,12 @@ void G4UrbanMscModel::InitialiseModelCache() msc[j]->stepmina = 27.725/(1.+0.203*Zeff); msc[j]->stepminb = 6.152/(1.+0.111*Zeff); - msc[j]->doverra = 1.20 - Zeff*(0.0162 - 9.22e-5*Zeff); + // 21.07.2020 + msc[j]->doverra = 9.6280e-1 - 8.4848e-2*msc[j]->sqrtZ + 4.3769e-3*Zeff; + + // 06.10.2020 + // msc[j]->doverra = 7.7024e-1 - 6.7878e-2*msc[j]->sqrtZ + 3.5015e-3*Zeff; + msc[j]->doverrb = 1.15 - 9.76e-4*Zeff; } } diff --git a/source/processes/electromagnetic/standard/src/G4WentzelOKandVIxSection.cc b/source/processes/electromagnetic/standard/src/G4WentzelOKandVIxSection.cc index 392ac2d512..19b991a912 100644 --- a/source/processes/electromagnetic/standard/src/G4WentzelOKandVIxSection.cc +++ b/source/processes/electromagnetic/standard/src/G4WentzelOKandVIxSection.cc @@ -151,8 +151,8 @@ void G4WentzelOKandVIxSection::InitialiseA() // Formfactors from A.V. Butkevich et al., NIM A 488 (2002) 282 #ifdef G4MULTITHREADED G4MUTEXLOCK(&G4WentzelOKandVIxSection::WentzelOKandVIxSectionMutex); -#endif if(0.0 == ScreenRSquare[0]) { +#endif G4double a0 = electron_mass_c2/0.88534; G4double constn = 6.937e-6/(MeV*MeV); G4double fct = G4EmParameters::Instance()->ScreeningFactor(); @@ -170,8 +170,8 @@ void G4WentzelOKandVIxSection::InitialiseA() x = fNistManager->GetA27(j); FormFactor[j] = constn*x*x; } - } #ifdef G4MULTITHREADED + } G4MUTEXUNLOCK(&G4WentzelOKandVIxSection::WentzelOKandVIxSectionMutex); #endif diff --git a/source/processes/electromagnetic/standard/src/G4WentzelVIRelModel.cc b/source/processes/electromagnetic/standard/src/G4WentzelVIRelModel.cc index 1e22aa62d5..d0b4264ab0 100644 --- a/source/processes/electromagnetic/standard/src/G4WentzelVIRelModel.cc +++ b/source/processes/electromagnetic/standard/src/G4WentzelVIRelModel.cc @@ -67,7 +67,7 @@ std::vector G4WentzelVIRelModel::effMass; #ifdef G4MULTITHREADED -G4Mutex G4WentzelVIRelModel::WentzelVIRelModelMutex; +G4Mutex G4WentzelVIRelModel::WentzelVIRelModelMutex = G4MUTEX_INITIALIZER; #endif G4WentzelVIRelModel::G4WentzelVIRelModel() : @@ -152,13 +152,13 @@ G4double G4WentzelVIRelModel::ComputeCrossSectionPerAtom( void G4WentzelVIRelModel::ComputeEffectiveMass() { -#ifdef G4MULTITHREADED - G4MUTEXLOCK(&G4WentzelVIRelModel::WentzelVIRelModelMutex); -#endif const G4ProductionCutsTable* theCoupleTable = G4ProductionCutsTable::GetProductionCutsTable(); size_t ncouples = theCoupleTable->GetTableSize(); +#ifdef G4MULTITHREADED + G4MUTEXLOCK(&G4WentzelVIRelModel::WentzelVIRelModelMutex); if(ncouples != effMass.size()) { +#endif effMass.resize(ncouples, 0.0); for(size_t i=0; iGetZasInt(); - G4double mass = fNistManager->GetAtomicMassAmu(Z)*CLHEP::amu_c2; - G4int Z2 = Z*Z; - sum += mass*Z2; - norm += Z2; + G4int Z = (*elmVector)[j]->GetZasInt(); + G4double mass = fNistManager->GetAtomicMassAmu(Z)*CLHEP::amu_c2; + G4int Z2 = Z*Z; + sum += mass*Z2; + norm += Z2; } effMass[i] = sum/norm; } - } #ifdef G4MULTITHREADED + } G4MUTEXUNLOCK(&G4WentzelVIRelModel::WentzelVIRelModelMutex); #endif } diff --git a/source/processes/electromagnetic/standard/src/G4eBremsstrahlungRelModel.cc b/source/processes/electromagnetic/standard/src/G4eBremsstrahlungRelModel.cc index 2c5c701aca..198806524f 100644 --- a/source/processes/electromagnetic/standard/src/G4eBremsstrahlungRelModel.cc +++ b/source/processes/electromagnetic/standard/src/G4eBremsstrahlungRelModel.cc @@ -426,7 +426,7 @@ G4double G4eBremsstrahlungRelModel::ComputeXSectionPerAtom(G4double tmin) // v(k)=ln(k/E_t) -> dk/dv=E_t*e^v=k -> ds/dv= ds/dk*dk/dv=ds/dk*k so it // would cnacell out the 1/k factor => 1/k don't included here // (ii) the constant factor C and Z don't depend on 'k' => not included here -// (iii) the 1/F(k) factor is accounted in the callers: explicitely (cross sec- +// (iii) the 1/F(k) factor is accounted in the callers: explicitly (cross sec- // tion computation) or implicitly through further variable transformaton // (in the final state sampling algorithm) // COMPLETE SCREENING: see more at the DCS without LPM effect below. @@ -460,7 +460,7 @@ G4eBremsstrahlungRelModel::ComputeRelDXSectionPerAtom(G4double gammaEnergy) // where f_c(Z) is the Coulomb correction factor and phi1(g),phi2(g) and psi1(e), // psi2(e) are coherent and incoherent screening functions. In the Thomas-Fermi // model of the atom, the screening functions will have a form that do not -// depend on Z (not explicitely). These numerical screening functions can be +// depend on Z (not explicitly). These numerical screening functions can be // approximated as Tsai Eqs. [3.38-3.41] with the variables g=gamma and // e=epsilon given by Tsai Eqs. [3.30 and 3.31] (see more details at the method // ComputeScreeningFunctions()). Note, that in case of complete screening i.e. diff --git a/source/processes/electromagnetic/standard/src/G4eDPWACoulombScatteringModel.cc b/source/processes/electromagnetic/standard/src/G4eDPWACoulombScatteringModel.cc new file mode 100644 index 0000000000..6b2c54ec59 --- /dev/null +++ b/source/processes/electromagnetic/standard/src/G4eDPWACoulombScatteringModel.cc @@ -0,0 +1,195 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// ------------------------------------------------------------------- +// +// GEANT4 Class header file +// +// +// File name: G4eDPWACoulombScatteringModel +// +// Author: Mihaly Novak +// +// Creation date: 02.07.2020 +// +// Modifications: +// +// ------------------------------------------------------------------- + +#include "G4eDPWACoulombScatteringModel.hh" + +#include "G4eDPWAElasticDCS.hh" +#include "G4ParticleChangeForGamma.hh" +#include "G4ParticleDefinition.hh" +#include "G4DataVector.hh" + +#include "G4ProductionCutsTable.hh" +#include "G4Material.hh" +#include "G4Element.hh" +#include "G4ElementVector.hh" + +#include "G4Electron.hh" + +#include "G4PhysicalConstants.hh" +#include "G4SystemOfUnits.hh" +#include "Randomize.hh" +#include "G4ThreeVector.hh" + + +G4eDPWACoulombScatteringModel::G4eDPWACoulombScatteringModel(G4bool ismixed, G4bool isscpcor, G4double mumin) +: G4VEmModel("eDPWACoulombScattering"), + fIsMixedModel(ismixed), + fIsScpCorrection(isscpcor), + fMuMin(mumin), + fTheDCS(nullptr), + fParticleChange(nullptr) +{ + SetLowEnergyLimit ( 0.0*CLHEP::eV); // ekin = 10 eV is used if (E< 10 eV) + SetHighEnergyLimit(100.0*CLHEP::MeV); // ekin = 100 MeV is used if (E>100 MeV) +} + + +G4eDPWACoulombScatteringModel::~G4eDPWACoulombScatteringModel() +{ + if (IsMaster()) { + delete fTheDCS; + } +} + + +void G4eDPWACoulombScatteringModel::Initialise(const G4ParticleDefinition* pdef, + const G4DataVector& prodcuts) +{ + if(!fParticleChange) { + fParticleChange = GetParticleChangeForGamma(); + } + fMuMin = 0.5*(1.0-std::cos(PolarAngleLimit())); + fIsMixedModel = (fMuMin > 0.0); + if(IsMaster()) { + // clean the G4eDPWAElasticDCS object if any + if (fTheDCS) { + delete fTheDCS; + } + fTheDCS = new G4eDPWAElasticDCS(pdef==G4Electron::Electron(), fIsMixedModel); + // init only for the elements that are used in the geometry + G4ProductionCutsTable* theCpTable = G4ProductionCutsTable::GetProductionCutsTable(); + std::size_t numOfCouples = theCpTable->GetTableSize(); + for(std::size_t j=0; jGetMaterialCutsCouple(j)->GetMaterial(); + const G4ElementVector* elV = mat->GetElementVector(); + std::size_t numOfElem = mat->GetNumberOfElements(); + for (size_t ie = 0; ie < numOfElem; ++ie) { + fTheDCS->InitialiseForZ((*elV)[ie]->GetZasInt()); + } + } + // init scattering power correction + if (fIsScpCorrection) { + fTheDCS->InitSCPCorrection(LowEnergyLimit(), HighEnergyLimit()); + } + // will make use of the cross sections so the above needs to be done before + InitialiseElementSelectors(pdef, prodcuts); + } +} + + +void G4eDPWACoulombScatteringModel::InitialiseLocal(const G4ParticleDefinition*, + G4VEmModel* masterModel) +{ + SetElementSelectors(masterModel->GetElementSelectors()); + SetTheDCS(static_cast(masterModel)->GetTheDCS()); +} + + +G4double +G4eDPWACoulombScatteringModel::ComputeCrossSectionPerAtom(const G4ParticleDefinition*, + G4double ekin, + G4double Z, + G4double /*A*/, + G4double /*prodcut*/, + G4double /*emax*/) +{ + // Cross sections are computed by numerical integration of the pre-computed + // DCS data between the muMin, muMax limits where mu(theta)=0.5[1-cos(theta)]. + // In case of single scattering model (i.e. when fMuMin=0): [muMin=0, muMax=1] + // In case of mixed simulation model (i.e. when fMuMin>0): [fMuMin , muMax=1] + // NOTE: cross sections will be zero if the kinetic enrgy is out of the + // [10 eV-100 MeV] range for which DCS data has been computed. + // + G4double elCS = 0.0; // elastic cross section + G4double tr1CS = 0.0; // first transport cross section + G4double tr2CS = 0.0; // second transport cross section + const G4double muMin = fMuMin; + const G4double muMax = 1.0; + fTheDCS->ComputeCSPerAtom((G4int)Z, ekin, elCS, tr1CS, tr2CS, muMin, muMax); + // scattering power correction: should be only in condensed history ioni! + if (fIsScpCorrection && CurrentCouple()) { + const G4double theScpCor = fTheDCS->ComputeScatteringPowerCorrection(CurrentCouple(), ekin); + elCS *= (theScpCor*(1.0+1.0/Z)); + } + return std::max(0.0, elCS); +} + + +void +G4eDPWACoulombScatteringModel::SampleSecondaries(std::vector*, + const G4MaterialCutsCouple* cp, + const G4DynamicParticle* dp, + G4double, G4double) +{ + const G4double ekin = dp->GetKineticEnergy(); + const G4double lekin = dp->GetLogKineticEnergy(); + const G4Element* target = SelectTargetAtom(cp, dp->GetParticleDefinition(), ekin, lekin); + const G4int izet = target->GetZasInt(); + // sample cosine of the polar scattering angle in (hard) elastic insteraction + CLHEP::HepRandomEngine* rndmEngine = G4Random::getTheEngine(); + G4double cost = 1.0; + if (!fIsMixedModel) { + G4double rndm[3]; + rndmEngine->flatArray(3, rndm); + cost = fTheDCS->SampleCosineTheta(izet, lekin, rndm[0], rndm[1], rndm[2]); + } else { + //sample cost between costMax,costMin where costMax = 1-2xfMuMin; + const G4double costMax = 1.0-2.0*fMuMin; + const G4double costMin = -1.0; + G4double rndm[2]; + rndmEngine->flatArray(2, rndm); + cost = fTheDCS->SampleCosineThetaRestricted(izet, lekin, rndm[0], rndm[1], costMin, costMax); + } + // compute the new direction in the scattering frame + const G4double sint = std::sqrt((1.0-cost)*(1.0+cost)); + const G4double phi = CLHEP::twopi*rndmEngine->flat(); + G4ThreeVector theNewDirection(sint*std::cos(phi), sint*std::sin(phi), cost); + // get original direction in lab frame and rotate new direction to lab frame + G4ThreeVector theOrgDirectionLab = dp->GetMomentumDirection(); + theNewDirection.rotateUz(theOrgDirectionLab); + // set new direction + fParticleChange->ProposeMomentumDirection(theNewDirection); +} + + + + + diff --git a/source/processes/electromagnetic/standard/src/G4eDPWAElasticDCS.cc b/source/processes/electromagnetic/standard/src/G4eDPWAElasticDCS.cc new file mode 100644 index 0000000000..5161085e08 --- /dev/null +++ b/source/processes/electromagnetic/standard/src/G4eDPWAElasticDCS.cc @@ -0,0 +1,705 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// ------------------------------------------------------------------- +// +// GEANT4 Class header file +// +// +// File name: G4eDPWAElasticDCS +// +// Author: Mihaly Novak +// +// Creation date: 02.07.2020 +// +// Modifications: +// +// +// ------------------------------------------------------------------- + +#include "G4eDPWAElasticDCS.hh" + +#include "G4Physics2DVector.hh" + +// +// Global variables: +// +G4bool G4eDPWAElasticDCS::gIsGridLoaded = false; +G4String G4eDPWAElasticDCS::gDataDirectory = ""; +// final values of these variables will be set in LoadGrid() called by master +std::size_t G4eDPWAElasticDCS::gNumEnergies = 106; +std::size_t G4eDPWAElasticDCS::gIndxEnergyLim = 35; +std::size_t G4eDPWAElasticDCS::gNumThetas1 = 247; +std::size_t G4eDPWAElasticDCS::gNumThetas2 = 128; +G4double G4eDPWAElasticDCS::gLogMinEkin = 1.0; +G4double G4eDPWAElasticDCS::gInvDelLogEkin = 1.0; +// containers for grids: Ekin, mu(t)=0.5[1-cos(t)] and u(mu,A)=(A+1)mu/(mu+A) +std::vector G4eDPWAElasticDCS::gTheEnergies(G4eDPWAElasticDCS::gNumEnergies); +std::vector G4eDPWAElasticDCS::gTheMus1(G4eDPWAElasticDCS::gNumThetas1); +std::vector G4eDPWAElasticDCS::gTheMus2(G4eDPWAElasticDCS::gNumThetas2); +std::vector G4eDPWAElasticDCS::gTheU1(G4eDPWAElasticDCS::gNumThetas1); +std::vector G4eDPWAElasticDCS::gTheU2(G4eDPWAElasticDCS::gNumThetas2); +// abscissas and weights of an 8 point Gauss-Legendre quadrature +// for numerical integration on [0,1] +const G4double G4eDPWAElasticDCS::gXGL[] = { + 1.98550718E-02, 1.01666761E-01, 2.37233795E-01, 4.08282679E-01, + 5.91717321E-01, 7.62766205E-01, 8.98333239E-01, 9.80144928E-01 +}; +const G4double G4eDPWAElasticDCS::gWGL[] = { + 5.06142681E-02, 1.11190517E-01, 1.56853323E-01, 1.81341892E-01, + 1.81341892E-01, 1.56853323E-01, 1.11190517E-01, 5.06142681E-02 +}; + + +// - iselectron : data for e- (for e+ otherwise) +// - isrestricted : sampling of angular deflection on restricted interavl is +// required (i.e. in case of mixed-simulation models) +G4eDPWAElasticDCS::G4eDPWAElasticDCS(G4bool iselectron, G4bool isrestricted) +: fIsRestrictedSamplingRequired(isrestricted), fIsElectron(iselectron) { + fDCS.resize(gMaxZ+1, nullptr); + fDCSLow.resize(gMaxZ+1, nullptr); + fSamplingTables.resize(gMaxZ+1, nullptr); +} + + + // DTR +G4eDPWAElasticDCS::~G4eDPWAElasticDCS() { + for (std::size_t i=0; ifVSCPC.clear(); + delete fSCPCPerMatCuts[imc]; + } + } + fSCPCPerMatCuts.clear(); +} + + +// initialise for a given 'iz' atomic number: +// - nothing happens if it has already been initialised for that Z. +void G4eDPWAElasticDCS::InitialiseForZ(std::size_t iz) { + if (!gIsGridLoaded) { + LoadGrid(); + } + LoadDCSForZ(iz); + BuildSmplingTableForZ(iz); +} + + +// loads the kinetic energy and theta grids for the DCS data (first init step) +// should be called only by the master +void G4eDPWAElasticDCS::LoadGrid() { + G4String fname = FindDirectoryPath() + "grid.dat"; + std::ifstream infile(fname.c_str()); + if (!infile.is_open()) { + G4String msg = + " Problem while trying to read " + fname + " file.\n"+ + " G4LEDATA version should be G4EMLOW7.12 or later.\n"; + G4Exception("G4eDPWAElasticDCS::ReadCompressedFile","em0006", + FatalException,msg.c_str()); + return; + } + // read size + infile >> gNumEnergies; + infile >> gNumThetas1; + infile >> gNumThetas2; + // read the grids + // - energy in [MeV] + G4double dum = 0.0; + gTheEnergies.resize(gNumEnergies); + for (std::size_t ie=0; ie> dum; + gTheEnergies[ie] = G4Log(dum*CLHEP::MeV); + if (gTheEnergies[ie]> dum; + gTheMus1[it] = 0.5*(1.0-std::cos(dum*CLHEP::degree)); + gTheU1[it] = (theA+1.0)*gTheMus1[it]/(theA+gTheMus1[it]); + } + // - theta2 in [deg.] (128): we store mu(theta) = 0.5[1-cos(theta)] + gTheMus2.resize(gNumThetas2); + gTheU2.resize(gNumThetas2); + for (std::size_t it=0; it> dum; + gTheMus2[it] = 0.5*(1.0-std::cos(dum*CLHEP::degree)); + gTheU2[it] = (theA+1.0)*gTheMus2[it]/(theA+gTheMus2[it]); + + } + infile.close(); + gIsGridLoaded = true; +} + + +// load DCS data for a given Z +void G4eDPWAElasticDCS::LoadDCSForZ(G4int iz) { + // Check if it has already been done: + if (fDCS[iz]) return; + // Do it otherwise + if (fIsElectron) { + // e- + // load the high energy part firt: + // - with gNumThetas2 theta and gNumEnergies-gIndxEnergyLim energy values + const std::size_t hNumEnergries = gNumEnergies-gIndxEnergyLim; + G4Physics2DVector* v2DHigh = new G4Physics2DVector(gNumThetas2, hNumEnergries); + v2DHigh->SetBicubicInterpolation(true); + for (std::size_t it=0; itPutX(it, gTheMus2[it]); + } + for (std::size_t ie=0; iePutY(ie, gTheEnergies[gIndxEnergyLim+ie]); + } + std::ostringstream ossh; + ossh << FindDirectoryPath() << "dcss/el/dcs_"<< iz<<"_h"; + std::istringstream finh(std::ios::in); + ReadCompressedFile(ossh.str(), finh); + G4double dum = 0.0; + for (std::size_t it=0; it> dum; + for (std::size_t ie=0; ie> dum; + v2DHigh->PutValue(it, ie, G4Log(dum*CLHEP::cm2/CLHEP::sr)); + } + } + // load the low energy part: + // - with gNumThetas1 theta and gIndxEnergyLim+1 energy values (the +1 is + // for including the firts DCS from the higher part above for being + // able to perform interpolation between the high and low energy DCS set) + G4Physics2DVector* v2DLow = new G4Physics2DVector(gNumThetas1, gIndxEnergyLim+1); + v2DLow->SetBicubicInterpolation(true); + for (std::size_t it=0; itPutX(it, gTheMus1[it]); + } + for (std::size_t ie=0; iePutY(ie, gTheEnergies[ie]); + } + std::ostringstream ossl; + ossl << FindDirectoryPath() << "dcss/el/dcs_"<< iz<<"_l"; + std::istringstream finl(std::ios::in); + ReadCompressedFile(ossl.str(), finl); + for (std::size_t it=0; it> dum; + for (std::size_t ie=0; ie> dum; + v2DLow->PutValue(it, ie, G4Log(dum*CLHEP::cm2/CLHEP::sr)); + } + } + // add the +1 part: interpolate the firts DCS from the high energy + std::size_t ix = 0; + std::size_t iy = 0; + for (std::size_t it=0; itValue(gTheMus1[it], gTheEnergies[gIndxEnergyLim], ix, iy); + v2DLow->PutValue(it, gIndxEnergyLim, val); + } + // store + fDCSLow[iz] = v2DLow; + fDCS[iz] = v2DHigh; + } else { + // e+ + G4Physics2DVector* v2D= new G4Physics2DVector(gNumThetas2, gNumEnergies); + v2D->SetBicubicInterpolation(true); + for (std::size_t it=0; itPutX(it, gTheMus2[it]); + } + for (std::size_t ie=0; iePutY(ie, gTheEnergies[ie]); + } + std::ostringstream oss; + oss << FindDirectoryPath() << "dcss/pos/dcs_"<< iz; + std::istringstream fin(std::ios::in); + ReadCompressedFile(oss.str(), fin); + G4double dum = 0.0; + for (std::size_t it=0; it> dum; + for (std::size_t ie=0; ie> dum; + v2D->PutValue(it, ie, G4Log(dum*CLHEP::cm2/CLHEP::sr)); + } + } + fDCS[iz]= v2D; + } +} + + + +// Computes the elastic, first and second cross sections for the given kinetic +// energy and target atom. +// Cross sections are zero ff ekin is below/above the kinetic energy grid +void G4eDPWAElasticDCS::ComputeCSPerAtom(G4int iz, G4double ekin, G4double& elcs, + G4double& tr1cs, G4double& tr2cs, + G4double mumin, G4double mumax) { + // init all cross section values to zero; + elcs = 0.0; + tr1cs = 0.0; + tr2cs = 0.0; + // make sure that mu(theta) = 0.5[1-cos(theta)] limits have appropriate vals + mumin = std::max(0.0, std::min(1.0, mumin)); + mumax = std::max(0.0, std::min(1.0, mumax)); + if (mumin>=mumax) return; + // make sure that kin. energy is within the available range (10 eV-100MeV) + const G4double lekin = std::max(gTheEnergies[0], std::min(gTheEnergies[gNumEnergies-1], G4Log(ekin))); + // if the lower, denser in theta, DCS set should be used + const G4bool isLowerGrid = (fIsElectron && lekin& theMuVector = (isLowerGrid) ? gTheMus1 : gTheMus2; + const G4Physics2DVector* the2DDCS = (isLowerGrid) ? fDCSLow[iz] : fDCS[iz]; + // find lower/upper mu bin of integration: + // 0.0 <= mumin < 1.0 for sure here + const std::size_t iMuStart = (mumin == 0.0) ? 0 : std::distance( theMuVector.begin(), std::upper_bound(theMuVector.begin(), theMuVector.end(), mumin) )-1 ; + // 0.0 < mumax <= 1.0 for sure here + const std::size_t iMuEnd = (mumax == 1.0) ? theMuVector.size()-2 : std::distance( theMuVector.begin(), std::upper_bound(theMuVector.begin(), theMuVector.end(), mumax) )-1 ; + // perform numerical integration of the DCS over the given [mumin, mumax] + // interval (where mu(theta) = 0.5[1-cos(theta)]) to get the elastic, first + std::size_t ix = 0; + std::size_t iy = 0; + for (std::size_t imu=iMuStart; imu<=iMuEnd; ++imu) { + G4double elcsPar = 0.0; + G4double tr1csPar = 0.0; + G4double tr2csPar = 0.0; + const G4double low = (imu==iMuStart) ? mumin : theMuVector[imu]; + const G4double del = (imu==iMuEnd) ? mumax-low : theMuVector[imu+1]-low; + ix = imu; + for (std::size_t igl=0; igl<8; ++igl) { + const double mu = low + del*gXGL[igl]; + const double dcs = G4Exp(the2DDCS->Value(mu, lekin, ix, iy)); + elcsPar += gWGL[igl]*dcs; // elastic + tr1csPar += gWGL[igl]*dcs*mu; // first transport + tr2csPar += gWGL[igl]*dcs*mu*(1.0-mu); // second transport + } + elcs += del*elcsPar; + tr1cs += del*tr1csPar; + tr2cs += del*tr2csPar; + } + elcs *= 2.0*CLHEP::twopi; + tr1cs *= 4.0*CLHEP::twopi; + tr2cs *= 12.0*CLHEP::twopi; +} + + +// data structure to store one sampling table: combined Alias + RatIn +// NOTE: when Alias is used, sampling on a resctricted interval is not possible +// However, Alias makes possible faster sampling. Alias is used in case +// of single scattering model while it's not used in case of mixed-model +// when restricted interval sampling is needed. This is controlled by +// the fIsRestrictedSamplingRequired flag (false by default). +struct OneSamplingTable { + OneSamplingTable () {} + void SetSize(std::size_t nx, G4bool useAlias) { + fN = nx; + // Alias + if (useAlias) { + fW.resize(nx); + fI.resize(nx); + } + // Ratin + fCum.resize(nx); + fA.resize(nx); + fB.resize(nx); + } + + // members + std::size_t fN; // # data points + G4double fScreenParA; // the screening parameter + std::vector fW; + std::vector fCum; + std::vector fA; + std::vector fB; + std::vector fI; +}; + + +// loads sampling table for the given Z over the enrgy grid +void G4eDPWAElasticDCS::BuildSmplingTableForZ(G4int iz) { + // Check if it has already been done: + if (fSamplingTables[iz]) return; + // Do it otherwise: + // allocate space + std::vector* sTables = new std::vector(gNumEnergies); + // read compressed sampling table data + std::ostringstream oss; + const G4String fname = fIsElectron ? "stables/el/" : "stables/pos/"; + oss << FindDirectoryPath() << fname << "stable_" << iz; + std::istringstream fin(std::ios::in); + ReadCompressedFile(oss.str(), fin); + std::size_t ndata = 0; + for (std::size_t ie=0; ie> ndata; + aTable.SetSize(ndata, !fIsRestrictedSamplingRequired); + // the A screening parameter value used for transformation of mu to u + fin >> aTable.fScreenParA; + // load data: Alias(W,I) + RatIn(Cum, A, B) + if (!fIsRestrictedSamplingRequired) { + for (std::size_t id=0; id> aTable.fW[id]; + } + for (std::size_t id=0; id> aTable.fI[id]; + } + } + for (std::size_t id=0; id> aTable.fCum[id]; + } + for (std::size_t id=0; id> aTable.fA[id]; + } + for (std::size_t id=0; id> aTable.fB[id]; + } + } + fSamplingTables[iz] = sTables; +} + + + + + +// samples cos(theta) i.e. cosine of the polar angle of scattering in elastic +// interaction (Coulomb scattering) of the projectile (e- or e+ depending on +// fIsElectron) with kinetic energy of exp('lekin'), target atom with atomic +// muber of 'iz'. See the 'SampleCosineThetaRestricted' for obtain samples on +// a restricted inteval. +G4double +G4eDPWAElasticDCS::SampleCosineTheta(std::size_t iz, G4double lekin, G4double r1, + G4double r2, G4double r3) { + lekin = std::max(gTheEnergies[0], std::min(gTheEnergies[gNumEnergies-1], lekin)); + // determine the discrete ekin sampling table to be used: + // - statistical interpolation (i.e. linear) on log energy scale + const G4double rem = (lekin-gLogMinEkin)*gInvDelLogEkin; + const std::size_t k = (std::size_t)rem; + const std::size_t iekin = (r1 < rem-k) ? k+1 : k; + // sample the mu(t)=0.5(1-cos(t)) + const double mu = SampleMu(iz, iekin, r2, r3); + return std::max(-1.0, std::min(1.0, 1.0-2.0*mu)); +} + + +// samples cos(theta) i.e. cosine of the polar angle of scattering in elastic +// interaction (Coulomb scattering) of the projectile (e- or e+ depending on +// fIsElectron) with kinetic energy of exp('lekin'), target atom with atomic +// muber of 'iz'. +// The cosine theta will be in the [costMin, costMax] interval where costMin +// corresponds to a maximum allowed polar scattering angle thetaMax while +// costMin corresponds to minimum allowed polar scatterin angle thetaMin. +// See the 'SampleCosineTheta' for obtain samples on the entire [-1,1] range. +G4double +G4eDPWAElasticDCS::SampleCosineThetaRestricted(std::size_t iz, G4double lekin, + G4double r1, G4double r2, + G4double costMax, G4double costMin) { + // costMin corresponds to mu-max while costMax to mu-min: mu(t)=0.5[1-cos(t)] + lekin = std::max(gTheEnergies[0], std::min(gTheEnergies[gNumEnergies-1], lekin)); + // determine the discrete ekin sampling table to be used: + // - statistical interpolation (i.e. linear) on log energy scale + const G4double rem = (lekin-gLogMinEkin)*gInvDelLogEkin; + const std::size_t k = (size_t)rem; + const std::size_t iekin = (r1 < rem-k) ? k : k+1; + // sample the mu(t)=0.5(1-cos(t)) + const G4double mu = SampleMu(iz, iekin, r2, 0.5*(1.0-costMax), 0.5*(1.0-costMin)); + return std::max(-1.0, std::min(1.0, 1.0-2.0*mu)); +} + + + +G4double +G4eDPWAElasticDCS::SampleMu(std::size_t izet, std::size_t ie, G4double r1, G4double r2) { + OneSamplingTable& rtn = (*fSamplingTables[izet])[ie]; + // get the lower index of the bin by using the alias part + const G4double rest = r1 * (rtn.fN - 1); + std::size_t indxl = (std::size_t)rest; + const G4double dum0 = rest - indxl; + if (rtn.fW[indxl] < dum0) indxl = rtn.fI[indxl]; + // sample value within the selected bin by using ratin based numerical inversion + const G4double delta = rtn.fCum[indxl + 1] - rtn.fCum[indxl]; + const G4double aval = r2 * delta; + + const G4double dum1 = (1.0 + rtn.fA[indxl] + rtn.fB[indxl]) * delta * aval; + const G4double dum2 = delta * delta + rtn.fA[indxl] * delta * aval + rtn.fB[indxl] * aval * aval; + const std::vector& theUVect = (fIsElectron && ie& uvect) { + const std::size_t iLow = std::distance( uvect.begin(), std::upper_bound(uvect.begin(), uvect.end(), u) )-1; + const G4double tau = (u-uvect[iLow])/(uvect[iLow+1]-uvect[iLow]); // Note: I could store 1/(fX[iLow+1]-fX[iLow]) + const G4double dum0 = (1.0+stable.fA[iLow]*(1.0-tau)+stable.fB[iLow]); + const G4double dum1 = 2.0*stable.fB[iLow]*tau; + const G4double dum2 = 1.0 - std::sqrt(std::max(0.0, 1.0-2.0*dum1*tau/(dum0*dum0))); + return std::min(stable.fCum[iLow+1], std::max(stable.fCum[iLow], stable.fCum[iLow]+dum0*dum2*(stable.fCum[iLow+1]-stable.fCum[iLow])/dum1 )); +} + +// muMin and muMax : no checks on these +G4double G4eDPWAElasticDCS::SampleMu(std::size_t izet, std::size_t ie, G4double r1, + G4double muMin, G4double muMax) { + const OneSamplingTable& rtn = (*fSamplingTables[izet])[ie]; + const G4double theA = rtn.fScreenParA; + // + const std::vector& theUVect = (fIsElectron && ie 0.0) ? FindCumValue((theA+1.0)*muMin/(theA+muMin), rtn, theUVect) : 0.0; + const G4double xiMax = (muMax < 1.0) ? FindCumValue((theA+1.0)*muMax/(theA+muMax), rtn, theUVect) : 1.0; + // + const G4double xi = xiMin+r1*(xiMax-xiMin); // a smaple within the range + const std::size_t iLow = std::distance( rtn.fCum.begin(), std::upper_bound(rtn.fCum.begin(), rtn.fCum.end(), xi) )-1; + const G4double delta = rtn.fCum[iLow + 1] - rtn.fCum[iLow]; + const G4double aval = xi - rtn.fCum[iLow]; + + const G4double dum1 = (1.0 + rtn.fA[iLow] + rtn.fB[iLow]) * delta * aval; + const G4double dum2 = delta * delta + rtn.fA[iLow] * delta * aval + rtn.fB[iLow] * aval * aval; + const G4double u = theUVect[iLow] + dum1 / dum2 * (theUVect[iLow + 1] - theUVect[iLow]); + return theA*u/(theA+1.0-u); +} + + + +// set the DCS data directory path +const G4String& G4eDPWAElasticDCS::FindDirectoryPath() { + // check environment variable + if (gDataDirectory.empty()) { + const char* path = std::getenv("G4LEDATA"); + if (path) { + std::ostringstream ost; + ost << path << "/dpwa/"; + gDataDirectory = ost.str(); + } else { + G4Exception("G4eDPWAElasticDCS::FindDirectoryPath()","em0006", + FatalException, + "Environment variable G4LEDATA not defined"); + } + } + return gDataDirectory; +} + + + +// uncompress one data file into the input string stream +void +G4eDPWAElasticDCS::ReadCompressedFile(G4String fname, std::istringstream &iss) { + G4String *dataString = nullptr; + G4String compfilename(fname+".z"); + // create input stream with binary mode operation and positioning at the end of the file + std::ifstream in(compfilename, std::ios::binary | std::ios::ate); + if (in.good()) { + // get current position in the stream (was set to the end) + G4int fileSize = in.tellg(); + // set current position being the beginning of the stream + in.seekg(0,std::ios::beg); + // create (zlib) byte buffer for the data + Bytef *compdata = new Bytef[fileSize]; + while(in) { + in.read((char*)compdata, fileSize); + } + // create (zlib) byte buffer for the uncompressed data + uLongf complen = (uLongf)(fileSize*4); + Bytef *uncompdata = new Bytef[complen]; + while (Z_OK!=uncompress(uncompdata, &complen, compdata, fileSize)) { + // increase uncompressed byte buffer + delete[] uncompdata; + complen *= 2; + uncompdata = new Bytef[complen]; + } + // delete the compressed data buffer + delete [] compdata; + // create a string from the uncompressed data (will be deallocated by the caller) + dataString = new G4String((char*)uncompdata, (long)complen); + // delete the uncompressed data buffer + delete [] uncompdata; + } else { + G4String msg = + " Problem while trying to read " + fname + " data file.\n"+ + " G4LEDATA version should be G4EMLOW7.12 or later.\n"; + G4Exception("G4eDPWAElasticDCS::ReadCompressedFile","em0006", + FatalException,msg.c_str()); + return; + } + // create the input string stream from the data string + if (dataString) { + iss.str(*dataString); + in.close(); + delete dataString; + } +} + + + + +G4double +G4eDPWAElasticDCS::ComputeScatteringPowerCorrection(const G4MaterialCutsCouple *matcut, + G4double ekin) { + const G4int imc = matcut->GetIndex(); + G4double corFactor = 1.0; + if (!(fSCPCPerMatCuts[imc]->fIsUse) || ekin<=fSCPCPerMatCuts[imc]->fPrCut) { + return corFactor; + } + // get the scattering power correction factor + const G4double lekin = G4Log(ekin); + G4double remaining = (lekin-fSCPCPerMatCuts[imc]->fLEmin)*fSCPCPerMatCuts[imc]->fILDel; + G4int lindx = (G4int)remaining; + remaining -= lindx; + G4int imax = fSCPCPerMatCuts[imc]->fVSCPC.size()-1; + if (lindx>=imax) { + corFactor = fSCPCPerMatCuts[imc]->fVSCPC[imax]; + } else { + corFactor = fSCPCPerMatCuts[imc]->fVSCPC[lindx] + remaining*(fSCPCPerMatCuts[imc]->fVSCPC[lindx+1]-fSCPCPerMatCuts[imc]->fVSCPC[lindx]); + } + return corFactor; +} + + +void G4eDPWAElasticDCS::InitSCPCorrection(G4double lowEnergyLimit, + G4double highEnergyLimit) { + // get the material-cuts table + G4ProductionCutsTable *thePCTable = G4ProductionCutsTable::GetProductionCutsTable(); + std::size_t numMatCuts = thePCTable->GetTableSize(); + // clear container if any + for (std::size_t imc=0; imcfVSCPC.clear(); + delete fSCPCPerMatCuts[imc]; + fSCPCPerMatCuts[imc] = nullptr; + } + } + // + // set size of the container and create the corresponding data structures + fSCPCPerMatCuts.resize(numMatCuts,nullptr); + // loop over the material-cuts and create scattering power correction data structure for each + for (std::size_t imc=0; imcGetMaterialCutsCouple(imc); + const G4Material* mat = matCut->GetMaterial(); + // get e- production cut in the current material-cuts in energy + const G4double ecut = (*(thePCTable->GetEnergyCutsVector(idxG4ElectronCut)))[matCut->GetIndex()]; + const G4double limit = fIsElectron ? 2.0*ecut : ecut; + const G4double min = std::max(limit,lowEnergyLimit); + const G4double max = highEnergyLimit; + if (min>=max) { + fSCPCPerMatCuts[imc] = new SCPCorrection(); + fSCPCPerMatCuts[imc]->fIsUse = false; + fSCPCPerMatCuts[imc]->fPrCut = min; + continue; + } + G4int numEbins = fNumSPCEbinPerDec*G4lrint(std::log10(max/min)); + numEbins = std::max(numEbins,3); + const G4double lmin = G4Log(min); + const G4double ldel = G4Log(max/min)/(numEbins-1.0); + fSCPCPerMatCuts[imc] = new SCPCorrection(); + fSCPCPerMatCuts[imc]->fVSCPC.resize(numEbins,1.0); + fSCPCPerMatCuts[imc]->fIsUse = true; + fSCPCPerMatCuts[imc]->fPrCut = min; + fSCPCPerMatCuts[imc]->fLEmin = lmin; + fSCPCPerMatCuts[imc]->fILDel = 1./ldel; + // compute Moliere material dependet parameetrs + G4double moliereBc = 0.0; + G4double moliereXc2 = 0.0; + ComputeMParams(mat, moliereBc, moliereXc2); + // compute scattering power correction over the enrgy grid + for (G4int ie=0; ie0) { + const G4double tau = ekin/CLHEP::electron_mass_c2; + const G4double tauCut = ecut/CLHEP::electron_mass_c2; + // Moliere's screening parameter + const G4double A = moliereXc2/(4.0*tau*(tau+2.)*moliereBc); + const G4double gr = (1.+2.*A)*G4Log(1.+1./A)-2.; + const G4double dum0 = (tau+2.)/(tau+1.); + const G4double dum1 = tau+1.; + G4double gm = G4Log(0.5*tau/tauCut) + (1.+dum0*dum0)*G4Log(2.*(tau-tauCut+2.)/(tau+4.)) + - 0.25*(tau+2.)*( tau+2.+2.*(2.*tau+1.)/(dum1*dum1))* + G4Log((tau+4.)*(tau-tauCut)/tau/(tau-tauCut+2.)) + + 0.5*(tau-2*tauCut)*(tau+2.)*(1./(tau-tauCut)-1./(dum1*dum1)); + if (gmGetMaterial()->GetIonisation()->GetZeffective(); + scpCorr = 1.-gm*z0/(z0*(z0+1.)); + } + fSCPCPerMatCuts[imc]->fVSCPC[ie] = scpCorr; + } + } +} + + +// compute material dependent Moliere MSC parameters at initialisation +void G4eDPWAElasticDCS::ComputeMParams(const G4Material* mat, G4double& theBc, + G4double& theXc2) { + const G4double const1 = 7821.6; // [cm2/g] + const G4double const2 = 0.1569; // [cm2 MeV2 / g] + const G4double finstrc2 = 5.325135453E-5; // fine-structure const. square + // G4double xi = 1.0; + const G4ElementVector* theElemVect = mat->GetElementVector(); + const G4int numelems = mat->GetNumberOfElements(); + // + const G4double* theNbAtomsPerVolVect = mat->GetVecNbOfAtomsPerVolume(); + G4double theTotNbAtomsPerVol = mat->GetTotNbOfAtomsPerVolume(); + // + G4double zs = 0.0; + G4double zx = 0.0; + G4double ze = 0.0; + G4double sa = 0.0; + // + for(G4int ielem = 0; ielem < numelems; ielem++) { + const G4double zet = (*theElemVect)[ielem]->GetZ(); + const G4double iwa = (*theElemVect)[ielem]->GetN(); + const G4double ipz = theNbAtomsPerVolVect[ielem]/theTotNbAtomsPerVol; + const G4double dum = ipz*zet*(zet+1.0); + zs += dum; + ze += dum*(-2.0/3.0)*G4Log(zet); + zx += dum*G4Log(1.0+3.34*finstrc2*zet*zet); + sa += ipz*iwa; + } + const G4double density = mat->GetDensity()*CLHEP::cm3/CLHEP::g; // [g/cm3] + // + theBc = const1*density*zs/sa*G4Exp(ze/zs)/G4Exp(zx/zs); //[1/cm] + theXc2 = const2*density*zs/sa; // [MeV2/cm] + // change to Geant4 internal units of 1/length and energ2/length + theBc *= 1.0/CLHEP::cm; + theXc2 *= CLHEP::MeV*CLHEP::MeV/CLHEP::cm; +} + diff --git a/source/processes/electromagnetic/standard/src/G4eplusTo3GammaOKVIModel.cc b/source/processes/electromagnetic/standard/src/G4eplusTo3GammaOKVIModel.cc index cbef1c5bd4..55db51d8e1 100644 --- a/source/processes/electromagnetic/standard/src/G4eplusTo3GammaOKVIModel.cc +++ b/source/processes/electromagnetic/standard/src/G4eplusTo3GammaOKVIModel.cc @@ -241,7 +241,8 @@ G4eplusTo3GammaOKVIModel::SampleSecondaries(vector* vdp, { G4double posiKinEnergy = dp->GetKineticEnergy(); - G4DynamicParticle *aGamma1, *aGamma2, *aGamma3; + G4DynamicParticle *aGamma1, *aGamma2; + G4DynamicParticle* aGamma3 = nullptr; G4double border; if(posiKinEnergy < 500*MeV) { @@ -376,7 +377,7 @@ G4eplusTo3GammaOKVIModel::SampleSecondaries(vector* vdp, vdp->push_back(aGamma1); vdp->push_back(aGamma2); - vdp->push_back(aGamma3); + if(aGamma3 != nullptr) { vdp->push_back(aGamma3); } // kill primary positron fParticleChange->SetProposedKineticEnergy(0.0); diff --git a/source/processes/electromagnetic/utils/History b/source/processes/electromagnetic/utils/History index dd5eab7ad2..6c5dec08c2 100644 --- a/source/processes/electromagnetic/utils/History +++ b/source/processes/electromagnetic/utils/History @@ -16,14 +16,54 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +12 November 20: B. Morgan (emutils-V10-06-15) +- Apply typo fixes from Gurkan Myczko (https://github.com/Geant4/geant4/pull/15) + +10 November 20: V.Ivanchenko (emutils-V10-06-14) +- G4VEmAngularDistribution - changed order of initialisation + in order to fix valgrind warning +- G4VEmModel - do not set polarisation flag + +04 November 20: V.Ivanchenko (emutils-V10-06-13) +- G4LossTableManager - make clean interface for electron and + positron general process + +28 October 20: V.Ivanchenko (emutils-V10-06-12) +- G4VEmAngularDistribution - added flag of polarisation, the flag + is set at initialisation of a model +- G4VEmModel - define flag of polarisation for an angular generator; + compare with nullptr class pointers +- G4EmProcessSubType - added fSurfaceReflection + +30 September 20: V.Ivanchenko (emutils-V10-06-11) +- G4VEmProcess - fixed problem #2277 for ion DNA physics + +30 August 20: V.Ivanchenko (emutils-V10-06-10) +- G4EmParameters, G4EmParametersMessenger - added new flag threshold + for muon/hadron bremsstrahlung allowing stop track when high + energy bremsstrahlung is emitted (CMS request) + +20 July 20: D.Sawkey (emutils-V10-06-09) +- G4OpticalParameters, G4OpticalParametersMessenger: add new files to + control optical parameters, following G4EmParameters. + +11 July 20: V.Ivanchenko (emutils-V10-06-08) +- G4EmParameters, G4EmExtraParameters - added new flag defining type + of single scattering model +- G4EmModelManager, G4VMscModel, G4VEmModel, G4VMultipleScattering - + at initialisation call print extra line for all msc models instead + of the common printout for the msc process, which is needed when + different models are applied for regions in order to address + problem report #2106; minor code clean-up + 11 June 20: V.Ivanchenko (emutils-V10-06-07) -- G4EmParameters, G4EmExtraParameters - FillStepFunction method is +- G4EmParameters, G4EmExtraParameters - FillStepFunction method is applied in each thread - critical fix may affect Shielding CPU - G4VEnergyLossProcess - better printout in a warning 30 May 20: V.Ivanchenko (emutils-V10-06-06) - G4LossTableManager - make ResetParameters() method public -- G4VAtomicDeexcitation - optimized arrays initialisation +- G4VAtomicDeexcitation - optimized arrays initialisation 03 May 20: V.Ivanchenko (emutils-V10-06-05) - G4EmParameters, G4EmParametersMessenger, G4EmExtraParametersMessenger, @@ -47,8 +87,8 @@ committal in the CVS repository ! method is now protected (needed for AtRest processes) 06 March 20: V.Ivanchenko (emutils-V10-06-01) -- G4EmParameters, G4EmLowEParameters, G4EmLowEParametersMessenger - added a new parameter - name of the sub-directory with data for +- G4EmParameters, G4EmLowEParameters, G4EmLowEParametersMessenger + added a new parameter - name of the sub-directory with data for Livermore models with variants: "livermore" (default), "epics_2017" 13 January 20: V.Ivanchenko (emutils-V10-06-00) @@ -74,9 +114,9 @@ committal in the CVS repository ! 01 October 19: V.Ivanchenko (emutils-V10-05-18) - G4EmParameters, G4EmParametersMessenger - added new parameters for msc FactorSafety and LambdaLimit, until now these parameters - were msc model internals, now a user can can customize these + were msc model internals, now a user can can customize these values, default values are used the same as in 10.5 -- G4VMscModel, G4VMultipleScattering - added new method +- G4VMscModel, G4VMultipleScattering - added new method InitialiseParameters(..), make msc specific methods pure virtual - DummyModel - added methods to be consistent with above modifications @@ -84,8 +124,8 @@ committal in the CVS repository ! - G4EmParameters - disable "General Process" for gamma by default 14 August 19: V.Ivanchenko (emutils-V10-05-16) -- G4LossTableBuilder, G4LossTableManager, G4VEmModel, G4VMscModel, - G4VEmProcess, G4VEnergyLossProcess, G4EmCalculator - allow both +- G4LossTableBuilder, G4LossTableManager, G4VEmModel, G4VMscModel, + G4VEmProcess, G4VEnergyLossProcess, G4EmCalculator - allow both approaches "General Process" and "Base Materials" work together G4EmParameters - enable "General Process" for gamma by default @@ -93,37 +133,37 @@ committal in the CVS repository ! - G4EmElementSelector, G4VEmModel - clean away members not used anymore 18 July 19: M.Novak (emutils-V10-05-14) -- G4EmElementSelector - optimised version of element selector (in place linear +- G4EmElementSelector - optimised version of element selector (in place linear interpolation to avoid redundant energy grid related computations; branches, used to handle rare corener cases are eliminated by increased robustness of the algorithm) 17 July 19: M.Novak (emutils-V10-05-13) -- G4VEmProcess, G4VEnergyLossProcess, G4VMscModel, G4EmElementSelector - utilise the new, optimised LogVectorValue special (for log-vector) +- G4VEmProcess, G4VEnergyLossProcess, G4VMscModel, G4EmElementSelector + utilise the new, optimised LogVectorValue special (for log-vector) G4PhysicsVector method in case of EM 31 May 19: V.Ivanchenko (emutils-V10-05-12) - G4NIELCalculator - new helper class -- G4LossTableManager - added access and initialisation of +- G4LossTableManager - added access and initialisation of G4NIELCalculator 17 May 19: V.Ivanchenko (emutils-V10-05-11) -- G4EmParameters, G4EmParametersMessenger, G4EmExtraParameters, +- G4EmParameters, G4EmParametersMessenger, G4EmExtraParameters, G4EmExtraParametersMessenger - added extra parameters; 07 May 19: V.Ivanchenko (emutils-V10-05-10) -- G4EmParameters, G4EmParametersMessenger - split clases keeping the +- G4EmParameters, G4EmParametersMessenger - split clases keeping the user interface unchanged; - G4EmExtraParameters, G4EmExtraParametersMessenger - new classes for + G4EmExtraParameters, G4EmExtraParametersMessenger - new classes for complex EM parameters; - G4EmLowEParameters, G4EmLowEParametersMessenger - new classes for + G4EmLowEParameters, G4EmLowEParametersMessenger - new classes for low-energy and DNA parameters 19 April 19: V.Ivanchenko (emutils-V10-05-09) - G4EmParameters - added polarisation flag, move implementation of splitting parameters to source and added check on lock; added 9.99 MeV low limit - in the SetMaxEnergy() method, added thread lock to Dump method + in the SetMaxEnergy() method, added thread lock to Dump method 01 April 19: V.Ivanchenko (emutils-V10-05-08) - G4LossTableManager - added Register/DeRegister methods and vector @@ -134,7 +174,7 @@ committal in the CVS repository ! by making use of the already known log-energy value in the log-vector access 17 March 19: M.Novak (emutils-V10-05-06) -- G4VEmProcess, G4VEnergyLossProcess and G4VMscModel - added extra methods to +- G4VEmProcess, G4VEnergyLossProcess and G4VMscModel - added extra methods to access log-vector tables by propagating the already known log-energy value 13 March 19: M.Asai (emutils-V10-05-05) @@ -159,7 +199,7 @@ committal in the CVS repository ! 31 January 19: V.Ivant (emutils-V10-05-00) - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering, - G4EmModelManager - make info printout at intialisation more + G4EmModelManager - make info printout at initialisation more compact (fix problem #2105) 29 October 18: D.Sawkey (emutils-V10-04-25) @@ -179,7 +219,7 @@ committal in the CVS repository ! 26 September 18: V.Ivant (emutils-V10-04-21) - G4EmParameters, G4EmProcessSubType, G4LossTableManager - renamed general process classes -- G4EmParametersMessenger - fixed UI command name, which enables +- G4EmParametersMessenger - fixed UI command name, which enables usage of the ICRU90 data (Lucas Norberto Burigo) 17 September 18: D.Sawkey (emutils-V10-04-20) @@ -193,8 +233,8 @@ committal in the CVS repository ! 14 August 18: V.Ivant (emutils-V10-04-16) - G4EmParameters, G4EmParametersMessenger - added extra parameter to enable usage of ICRU90 data; fixed DNA parameters; - added checks of EM physics type -- G4VEmProcess, G4VEnergyLossProcess - take out attempt of + added checks of EM physics type +- G4VEmProcess, G4VEnergyLossProcess - take out attempt of optimisation introduced previously, return back to 10.4 logic 27 July 18: V.Ivant (emutils-V10-04-15) @@ -205,17 +245,17 @@ committal in the CVS repository ! - G4EmDataHandler - added public interfaces 25 July 18: V.Ivant (emutils-V10-04-14) -- G4VEmProcess, G4VEnergyLossProcess - attempt optimise number of +- G4VEmProcess, G4VEnergyLossProcess - attempt optimise number of calls to cross sections - G4EmParameters, G4EmParametersMessenger - added extra parameters - G4EmElementSelector - optimisation 13 July 18: V.Ivant (emutils-V10-04-13) -- G4VEmProcess, G4VEnergyLossProcess - move few class members from +- G4VEmProcess, G4VEnergyLossProcess - move few class members from private to protected, introduced check on energy change between - steps with factorDeltaE, allowing skip recomputation of cross + steps with factorDeltaE, allowing skip recomputation of cross section at a step -- G4EmDataHandler - added methods +- G4EmDataHandler - added methods 12 July 18: V.Ivant (emutils-V10-04-12) - G4EmParameters, G4EmParameterMessenger, G4LossTableManager - minor @@ -241,7 +281,7 @@ committal in the CVS repository ! 28 March 18: V.Ivant (emutils-V10-04-06) - G4EmParameters, G4EmParametersMessenger - added MscEnergyLimit() - and corresponding UI command (needed for bug fix 2045) + and corresponding UI command (needed for bug fix 2045) 21 March 18: V.Ivant (emutils-V10-04-05) - G4EmParameters, G4EmParametersMessenger - (I.Semeniouk) added 5D @@ -250,21 +290,21 @@ committal in the CVS repository ! 09 February 18: V.Ivant (emutils-V10-04-04) 09 February 18: V.Ivant (emutils-V10-04-03) - G4EmCorrections, G4VEmModel, G4ionEffectiveCharge, G4VAtomDeexcitation - do not use static class members in inline methods, long methods are moved + do not use static class members in inline methods, long methods are moved to the source, add thread safe definition of model index for de-excitation 02 February 18: M.Novak (emutils-V10-04-02) -- G4EmCalculator - fixed GetCrossSectionPerVolume method in case of multiple - scattering process: the proper value of the 1st transport cross section is +- G4EmCalculator - fixed GetCrossSectionPerVolume method in case of multiple + scattering process: the proper value of the 1st transport cross section is retrived now 14 December 17: V.Ivant (emutils-V10-04-01) -- G4EmParametersMessenger - use G4Exception for warnings instead +- G4EmParametersMessenger - use G4Exception for warnings instead of G4cout, review G4State for UI commands and make a signal to the RunManager about modification of physics if a command is issued in Idle state -- G4EmParameters, G4VEmProcess, G4VEnergyLossProcess - define the - same default values for few internal members (this is a +- G4EmParameters, G4VEmProcess, G4VEnergyLossProcess - define the + same default values for few internal members (this is a cleanup, which does not affect results) 13 December 17: V.Ivant (emutils-V10-04-00) @@ -281,10 +321,10 @@ committal in the CVS repository ! 03 November 17: V.Ivant (emutils-V10-03-28) - G4EmParameters - set lateralDisplacementAlg96 true by default, - fixed typo in dump of parameters + fixed typo in dump of parameters 03 November 17: V.Ivant (emutils-V10-03-27) -- G4EmParametersMessenger - atomic de-excitation commands +- G4EmParametersMessenger - atomic de-excitation commands allowed in G4State_Init 31 October 17: D.Sawkey (emutils-V10-03-26) @@ -304,20 +344,20 @@ committal in the CVS repository ! 12 October 17: V.Ivant (emutils-V10-03-22) - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - added - new protected method StreamProcessInfo(..) to be used by derived + new protected method StreamProcessInfo(..) to be used by derived processes - G4EmModelManager - use general stream instead of G4cout in the method DumpModelList(..) - G4EmModelManager - use optimal header 11 October 17: V.Ivant (emutils-V10-03-21) -- G4VEmProcess - added method StreamInfo(..) allowing to print in +- G4VEmProcess - added method StreamInfo(..) allowing to print in any stream, initialisation printout does not changed - G4EmConfigurator - minor cleanup 10 October 17: V.Ivant (emutils-V10-03-20) - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - added - initialisation printout for DNA particles + initialisation printout for DNA particles 09 October 17: V.Ivant (emutils-V10-03-19) - G4EmParameters, G4EmParametersMessenger - added extra parameters @@ -327,7 +367,7 @@ committal in the CVS repository ! 31 August 17: V.Ivant (emutils-V10-03-17) - G4VMultipleScattering - improved initialisation printout -- G4VEnergyLossProcess, G4VEmFluctuationModel - added possibility +- G4VEnergyLossProcess, G4VEmFluctuationModel - added possibility of smearing of the last step length of low-energy charged particle 21 August 17: V.Ivant (emutils-V10-03-16) @@ -335,7 +375,7 @@ committal in the CVS repository ! 18 August 17: V.Ivant (emutils-V10-03-15) - G4EmDataHandler - class to keep G4PhysicsTables in easy way -- G4VMultipleScattering, G4VEmProcess, G4VEnergyLossProcess - code +- G4VMultipleScattering, G4VEmProcess, G4VEnergyLossProcess - code cleanup/simplification 16 August 17: V.Ivant (emutils-V10-03-14) @@ -349,7 +389,7 @@ committal in the CVS repository ! 03 August 17: V.Ivant (emutils-V10-03-12) - G4VMultipleScattering, G4VMscModel, G4VEnergyLossProcess, - G4VEmProcess, G4EmConfigurator, G4EmConfigurator - make + G4VEmProcess, G4EmConfigurator, G4EmConfigurator - make a new scheme of model initialisation in order do not create extra fake model objects and reduce number of calls in run time @@ -372,15 +412,15 @@ committal in the CVS repository ! methods 03 May 17: V.Ivant (emutils-V10-03-06) -- G4VEmProcess - added DNA ionisation process to the list of - discrete processes, which have auger and fluo flags for +- G4VEmProcess - added DNA ionisation process to the list of + discrete processes, which have auger and fluo flags for secondary particles -- G4VEmModel - added extra protected class member for nuclear +- G4VEmModel - added extra protected class member for nuclear stopping - G4EmCorrections - removed computation of nuclear stopping power - G4EmCalculator - for computation of the nuclear stopping power - use concrete model (applied in run time) instead of - G4EmCorrections emulation; to get cross section per volume + use concrete model (applied in run time) instead of + G4EmCorrections emulation; to get cross section per volume for discrete processes use interface of the process, addressing http://hypernews.slac.stanford.edu/HyperNews/geant4/get/hadroprocess/1595/1.html @@ -389,63 +429,63 @@ committal in the CVS repository ! moment (G4Mutex is used) 24 March 17: V.Ivant (emutils-V10-03-02) -- G4EmParametersMessenger, G4EmParameters - added parameter +- G4EmParametersMessenger, G4EmParameters - added parameter "ScreeningFactor" Get/Set methods and UI command 14 December 16: V.Ivant (emutils-V10-03-00) - G4EmParametersMessenger - fixed typo (#1929) -- G4EmParameters - added method with more correct name AddPhysics() +- G4EmParameters - added method with more correct name AddPhysics() in order to replace AddMsc in future (no change in functionality) 19 November 16: V.Ivant (emutils-V10-02-38) -- G4EmParametersMessenger - fixed typo +- G4EmParametersMessenger - fixed typo 09 November 16: V.Ivant (emutils-V10-02-37) -- G4VAtomDeexcitation - fixed initialisation of de-excitation +- G4VAtomDeexcitation - fixed initialisation of de-excitation module per G4Region 18 October 16: V.Ivant (emutils-V10-02-36) - G4EmCorrections, G4ionEffectiveCharge - use more safe name - for G4Pow pointer + for G4Pow pointer 18 October 16: V.Ivant (emutils-V10-02-35) - G4EmParameters - max energy back to 100 TeV -- G4EmSaturation - cleanup; make it thread safe; default - printout level set to 1 +- G4EmSaturation - cleanup; make it thread safe; default + printout level set to 1 07 October 16: V.Ivant (emutils-V10-02-34) - G4EmParameters - reduce max energy back to 10 TeV 20 September 16: V.Ivant (emutils-V10-02-33) -- G4EmParameters - added private method Initialise() additionally - to SetDefaults() to provide more safe initialisation of +- G4EmParameters - added private method Initialise() additionally + to SetDefaults() to provide more safe initialisation of custom EM physics lists 15 September 16: M.Asai (emutils-V10-02-32) - G4EmParameters - accept changes during the G4State_Init state. 06 September 16: V.Ivant (emutils-V10-02-31) -- fixed compillation warning and test crash +- fixed compillation warning and test crash 06 September 16: V.Ivant (emutils-V10-02-29) - G4EmSaturation - make it thread safe, added data for G4_PbWO4, - fixed data for G4_lAr using recent report from ATLAS, run time - methods are now "const" -- G4EmParameters, G4EmParametersMessenger - added interface and UI - command to enable thread safe built-in Birks saturation - corrections, added access to G4EmSaturation, set by default + fixed data for G4_lAr using recent report from ATLAS, run time + methods are now "const" +- G4EmParameters, G4EmParametersMessenger - added interface and UI + command to enable thread safe built-in Birks saturation + corrections, added access to G4EmSaturation, set by default Gaussian nuclear form-factor - G4LossTableManager - changed initialisation of G4EmSaturation 27 August 16: V.Ivant (emutils-V10-02-28) -- G4AtomicDeexcitation, G4EmParameters, G4EmParametersMessenger +- G4AtomicDeexcitation, G4EmParameters, G4EmParametersMessenger improved initialisation per region 15 July 16: V.Ivant (emutils-V10-02-27) - G4EmBiasingManager - fixed PVS-Studio warning (A.Karpov) 15 July 16: V.Ivant (emutils-V10-02-26) -- G4EmParameters, G4EmParametersMessenger - added new methods and +- G4EmParameters, G4EmParametersMessenger - added new methods and UI command to define optional EM physics per region 16 July 16: V.Ivant (emutils-V10-02-25) @@ -459,7 +499,7 @@ committal in the CVS repository ! 07 June 16: V.Ivant (emutils-V10-02-22) - G4VEmModel - fixed destruction in MT mode -- G4VMultipleScattering, G4EmModelManager, G4LossTableManager +- G4VMultipleScattering, G4EmModelManager, G4LossTableManager improved debug printout 02 June 16: V.Ivant (emutils-V10-02-21) @@ -485,13 +525,13 @@ committal in the CVS repository ! 25 April 16: V.Ivant (emutils-V10-02-16) 25 April 16: V.Ivant (emutils-V10-02-14) - G4AtomicShell - make the class pure inlined, use a default destructors -- G4LossTableManager, G4VEmModel, G4VMultipleScattering - minor +- G4LossTableManager, G4VEmModel, G4VMultipleScattering - minor cleanup of static const data - G4EmCorrections - make part of data static, make internal vectors static, shared between threads 15 April 16: V.Ivant (emutils-V10-02-13) -- G4EmParameters - allow to change parameters only from the master thread +- G4EmParameters - allow to change parameters only from the master thread and only at PreInit or Idle states 15 April 16: V.Ivant (emutils-V10-02-12) @@ -503,18 +543,18 @@ committal in the CVS repository ! 17 March 16: V.Ivant (emutils-V10-02-10) - G4VEnergyLossProcess - return back removed method to fix compillation - of reverse MC example + of reverse MC example 15 March 16: V.Ivant (emutils-V10-02-09) - removed commented lines left from the previous tag -- G4EmCalculator - added protection against zero cut value - use +- G4EmCalculator - added protection against zero cut value - use lowest electron energy (fixed problem #1845) 11 March 16: V.Ivant (emutils-V10-02-08) -- G4EmParameters, G4EmParametersMessenger - moved remaining +- G4EmParameters, G4EmParametersMessenger - moved remaining parameters from G4EmProcessOptions, which become obsolete - G4EmCalculator, G4LossTableBuilder, G4LossTableManager, G4VMscModel, - G4VEmModel, G4VEmProcess, G4VEnergyLossProcess - use only + G4VEmModel, G4VEmProcess, G4VEnergyLossProcess - use only G4EmParameters class interfaces for initialisation - G4NuclearFormfactorType - added new enumerator @@ -533,7 +573,7 @@ committal in the CVS repository ! - added more overrides, to remove clang warnings in previous tag 11 February 16: D.Sawkey (emutils-V10-02-03) -- partial C++11 migration in header files: explicit, override, delete +- partial C++11 migration in header files: explicit, override, delete keywords; nullptr 10 February 16: V.Ivant @@ -542,7 +582,7 @@ committal in the CVS repository ! 22 January 16: V.Ivant (emutils-V10-02-01) - G4LossTableManager - avoid double addition of He3 and alpha to the loss table map (should not have any effect on results) -- G4EmCalculator - fixed computation of dEdx and range for He3 and +- G4EmCalculator - fixed computation of dEdx and range for He3 and alpha (problem #1808) 14 January 16: V.Ivant (emutils-V10-02-00) @@ -555,12 +595,12 @@ committal in the CVS repository ! - G4EmParameters - fixed typo in name of the new method 06 November 15: V.Ivant (emutils-V10-01-39) -- G4EmParametersMessenger - fixed typo in few commands; added command +- G4EmParametersMessenger - fixed typo in few commands; added command "/process/msc/UseMottCorrection" - G4EmParameters - add useMottCorrection parameter and Get/Set method 05 November 15: V.Ivant (emutils-V10-01-38) -- G4VMultipleScattering - added a protection in the algorithm of +- G4VMultipleScattering - added a protection in the algorithm of the displacement beyond to avoid crashes in geometry 01 November 15: V.Ivant (emutils-V10-01-36) @@ -568,7 +608,7 @@ committal in the CVS repository ! 24 October 15: V.Ivant (emutils-V10-01-35) - G4EmCorrections - use G4Exp, G4Log, G4pow, G4lrint -- G4VMultipleScattering - fixed algorithm of displacement beyond +- G4VMultipleScattering - fixed algorithm of displacement beyond the boundary 16 October 15: V.Ivant (emutils-V10-01-34) @@ -586,10 +626,10 @@ committal in the CVS repository ! of processes/models to generate web pages - G4VEmModel added new feature: a flag allowing a user to "lock" model parameters protecting from overwrite by default values. For today - needed for the new GS model + needed for the new GS model 30 September 15: V.Ivant (emutils-V10-01-31) -- G4VEmProcess, G4VEnegryLossProcess - do not destroy +- G4VEmProcess, G4VEnegryLossProcess - do not destroy G4PhysicsModelCatalog end of run 18 September 15: V.Ivant (emutils-V10-01-30) @@ -598,15 +638,15 @@ committal in the CVS repository ! - fixed Coveruty trivial warning 14 September 15: V.Ivant (emutils-V10-01-29) -- G4EmParameters - enable Bearden files -- G4EmParametersMessenger - fixed cross section names +- G4EmParameters - enable Bearden files +- G4EmParametersMessenger - fixed cross section names 04 September 15: V.Ivant (emutils-V10-01-26) - G4EmParameters, G4EmParametersMessenger - define allowed names - for PIXE cross sections and to msc step limits, set by + for PIXE cross sections and to msc step limits, set by default usage of Bearden files for level energies - G4VAtomDeexcitation, G4EmProcessOptions - use only G4EmParameters - for de-ecitation module parameters + for de-ecitation module parameters 03 September 2015: S. Incerti (emutils-V10-01-25) - added UI command for Bearden files in @@ -616,7 +656,7 @@ committal in the CVS repository ! 20 August 15: V.Ivant (emutils-V10-01-24) - G4VMscModel - compute distance to boundary even if a particle - is inside World volume (M. Novak identify use-case when + is inside World volume (M. Novak identify use-case when the world volume is filled not by vacuum but some material) 03 August 15: V.Ivant (emutils-V10-01-23) @@ -633,27 +673,27 @@ committal in the CVS repository ! - G4EmParameters - add SetDefaults() method, call in constructor 12 July 15: V.Ivant (emutils-V10-01-18) -- G4VEmProcess, G4VEnergyLossProcess, G4LossTableManager, +- G4VEmProcess, G4VEnergyLossProcess, G4LossTableManager, G4EmConfigurator - removed tabs and improve code formatting 12 July 15: V.Ivant (emutils-V10-01-17) - G4EmParameters, G4EmParametersMessenger - added extra parameters, C++ access methods and UI commends: dump parameters, lowest - energy for e+- and muons/hadrons + energy for e+- and muons/hadrons 25 May 15: V.Ivant (emutils-V10-01-16) - G4EmCalculator - added new methods: ComputeDEDXForCutInRange and ComputeCrossSectionPerShell 13 May 15: V.Ivant (emutils-V10-01-15) -- G4EmParametersMessenger - added PreInit state for new commands +- G4EmParametersMessenger - added PreInit state for new commands 12 May 15: V.Ivant (emutils-V10-01-14) -- G4EmParameters, G4EmParametersMessenger, G4VAtomDeexcitation - S.Incerti added extra flag AugerCascade; +- G4EmParameters, G4EmParametersMessenger, G4VAtomDeexcitation + S.Incerti added extra flag AugerCascade; - G4VAtomDeexcitation, G4LossTableManager - change initialisation, now happens before BuildPhysicsTable in each thread -- G4EmParameters, G4EmParametersMessenger - added vector of regions +- G4EmParameters, G4EmParametersMessenger - added vector of regions for which PAI, MicroElec, or DNA models may be activated - G4VEmModel - added extra interface ComputeCrossSectionPerShell @@ -663,13 +703,13 @@ committal in the CVS repository ! 27 April 15: V.Ivant (emutils-V10-01-11) - G4VEmModel, G4VEmFluctuationModel - removed pointers to random engine -- G4VMultipleScattering, G4VMscModel, G4VEmAngularDistribution - accurate initialisation of G4ThreeVectors and G4LorentzVector +- G4VMultipleScattering, G4VMscModel, G4VEmAngularDistribution + accurate initialisation of G4ThreeVectors and G4LorentzVector in constructors 04 March 15: V.Ivant (emutils-V10-01-10) -- G4EmParameters, G4EmParametersMessenger added new methods and UI - commands for muon/hadron/ion multiple scattering : +- G4EmParameters, G4EmParametersMessenger added new methods and UI + commands for muon/hadron/ion multiple scattering : SetMscMuHadRangeFactor(), SetMscMuHadStepLimitType(), /process/msc/RangeFactorMuHad, /process/msc/StepLimitMuHad - G4VMultipleScattering - use new methods @@ -680,32 +720,32 @@ committal in the CVS repository ! 27 February 15: V.Ivant (emutils-V10-01-08) - G4LossTableManager - moved run time methods to be inlined - G4EmCalculator moved simple methods to inline; added public - methods SetupMaterial(); for computation of cross section + methods SetupMaterial(); for computation of cross section per atom add initialisation of material (problem reported - by D. Mancusi about bremsstrahlung cross section), + by D. Mancusi about bremsstrahlung cross section), minor fix of printout 06 February 15: V.Ivant (emutils-V10-01-07) -- G4VEmProcess - fixed crash in printout for verbose level > 2 - (reported by D.Mancusi) +- G4VEmProcess - fixed crash in printout for verbose level > 2 + (reported by D.Mancusi) 30 January 15: V.Ivant (emutils-V10-01-06) - G4EmCalculator - fixed minor defect reported by Coverity 16 January 15: V.Ivant (emutils-V10-01-05) -- G4VEmModel, G4VEmFluctuationModel - switch to use - G4Random::getTheEngine() to have more clean code +- G4VEmModel, G4VEmFluctuationModel - switch to use + G4Random::getTheEngine() to have more clean code 15 January 15: V.Ivant (emutils-V10-01-04) - G4VEmModel - redefine random engine pointer in StartTracking() method to address problem reported by CMS 27 December 14: V.Ivant (emutils-V10-01-03) -- G4VEnergyLossProcess - removed debug printout from previous tag +- G4VEnergyLossProcess - removed debug printout from previous tag 22 December 14: V.Ivant (emutils-V10-01-01) 21 December 14: V.Ivant (emutils-V10-01-00) -- G4EmParametersMessenger - allowed to set CSDA range flag only in +- G4EmParametersMessenger - allowed to set CSDA range flag only in the PreInit state to avoid crash in store/retrieve tables - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - store physics table only from master thread @@ -713,11 +753,11 @@ committal in the CVS repository ! process class is shared between different particles 18 November 14: V.Ivant (emutils-V10-00-46) -- G4VAtomDeexcitation - fixed printout at initialisation - (minor problem was introduced in the previous tag) +- G4VAtomDeexcitation - fixed printout at initialisation + (minor problem was introduced in the previous tag) 15 November 14: V.Ivant (emutils-V10-00-45) -- G4VAtomDeexcitation - changed initialisation allowing to work in +- G4VAtomDeexcitation - changed initialisation allowing to work in unit tests 07 November 14: V.Ivant (emutils-V10-00-44) @@ -733,20 +773,20 @@ committal in the CVS repository ! - G4VEmProcess, G4VEnergyLossProcess - set step limit to DBL_MAX if selected model is inactive at such energy; addresses bug 1674 - G4EmConfigurator - set high energy activation limit for a new - model not more than high energy limit (needed for DNA models) + model not more than high energy limit (needed for DNA models) 22 October 14: V.Ivant (emutils-V10-00-39) - G4VEmProcess - fixed definition of integral option 20 October 14: V.Ivant (emutils-V10-00-38) - G4LossTableManager - fixed non-initilized variable -- G4VMultipleScattering - coherent definition of lateral +- G4VMultipleScattering - coherent definition of lateral displacement flag 17 October 14: V.Ivant (emutils-V10-00-37) -- G4VEmProcess, G4VEnergyLossProcess - improved printout at +- G4VEmProcess, G4VEnergyLossProcess - improved printout at initialisation, added extra initialisation -- G4VEmProcess, G4VEmModel - added accessmethos for target element +- G4VEmProcess, G4VEmModel - added accessmethos for target element and isotope 15 October 14: V.Ivant (emutils-V10-00-36) @@ -763,14 +803,14 @@ committal in the CVS repository ! - fixed typo 13 October 14: V.Ivant (emutils-V10-00-31) -- G4EmParameters, G4EmParametersMessenger - new classes for +- G4EmParameters, G4EmParametersMessenger - new classes for keeping EM parameters static for run time - G4VEmProcess, G4VEnergyLossProcess, G4VMultipleScattering, G4EmProcessOptions, G4VAtomDeexcitation - changed initialisation logic - use G4EmParameters class, fixed problem #1670 06 October 14: L.Urban (emutils-V10-00-30) -- G4MscStepLimitType, G4EnergyLossMessenger - added new step limit +- G4MscStepLimitType, G4EnergyLossMessenger - added new step limit type for msc: UseSafetyPlus 22 September 14: V.Ivant (emutils-V10-00-29) @@ -779,41 +819,41 @@ committal in the CVS repository ! 21 July 14: V.Ivant (emutils-V10-00-28) - G4EmCorrections, G4EmElementSelector, G4LossTableManager, - G4VEmModel, G4VEmProcess, G4VEnergyLossProcess - introduced - explicit delete of all PhysicsTables and PhysicsVectors at the + G4VEmModel, G4VEmProcess, G4VEnergyLossProcess - introduced + explicit delete of all PhysicsTables and PhysicsVectors at the end of job -- G4EmCalculator - added public FindProcess() method - +- G4EmCalculator - added public FindProcess() method + 27 June 14: V.Ivant (emutils-V10-00-27) -- G4VAtomDeexcitation - if de-excitation options are defined for the +- G4VAtomDeexcitation - if de-excitation options are defined for the world G4Region, propagate these options to all G4Regions 6 June 14: V.Ivant (emutils-V10-00-26) - G4VEmProcess, G4VEnergyLossProcess - fixed Coverity reports 6 June 14: V.Ivant (emutils-V10-00-25) -- G4EmSaturation - removed fatal exception if proton is not +- G4EmSaturation - removed fatal exception if proton is not instantiated 5 June 14: V.Ivant (emutils-V10-00-24) -- G4EmSaturation - moved check on existence of e- and proton +- G4EmSaturation - moved check on existence of e- and proton from run time to initialisation (it is done only once) - G4LossTableManager, G4VEnergyLossProcess, G4VEmProcess - - improved initialisation: moved set methods for parameters + improved initialisation: moved set methods for parameters from inline to source and add extra check on parameter value, throw warnings if parameters are out of range - G4LossTableManager - helper classes are instantiated only if - user requests via access method + user requests via access method 4 June 14: A.Dotti (emutils-V10-00-23) - Added protection in G4EmSaturation to throw exception if e- or proton - are not defined when used in G4EmSaturation::VisibleEnergyDeposition + are not defined when used in G4EmSaturation::VisibleEnergyDeposition method. -- Do not instantiate G4Electron and G4Proton by default in +- Do not instantiate G4Electron and G4Proton by default in G4EmSaturation::InitialiseBirksCoefficient 2 June 14: V.Ivant (emutils-V10-00-22) -- G4EmModelManager - fixed cuts for single scattering models (use +- G4EmModelManager - fixed cuts for single scattering models (use "cut for protons") 27 May 14: V.Ivant (emutils-V10-00-21) @@ -832,7 +872,7 @@ committal in the CVS repository ! G4EmProcessOptions, G4LossTableManager - address Coverity reports 19 May 14: V.Ivant (emutils-V10-00-17) -- G4LossTableManager, G4EmSaturation, G4EmCorrections, +- G4LossTableManager, G4EmSaturation, G4EmCorrections, G4ElectronIonPair - improved verbosity 18 May 14: V.Ivant (emutils-V10-00-16) @@ -841,31 +881,31 @@ committal in the CVS repository ! algorithm, improved warning message 17 May 14: V.Ivant (emutils-V10-00-15) -- G4VEmModel, G4VEmFluctuationModel - defined different pattern to - access random generator for sequential and MT modes (fix problem +- G4VEmModel, G4VEmFluctuationModel - defined different pattern to + access random generator for sequential and MT modes (fix problem of previous tag) -- G4EmProcessOptions, G4EnergyLossMessenger - added new c++ and UI +- G4EmProcessOptions, G4EnergyLossMessenger - added new c++ and UI interface "/process/msc/DisplacementBeyondSafety" 15 May 14: V.Ivant (emutils-V10-00-14) - G4VMultipleScattering - introduced mechanism of displacement at geometry boundary default - G4VEmModel, G4VEmFluctuationModel - added protected pointers - to random engine in order to save CPU in derived classes -- G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - fixed + to random engine in order to save CPU in derived classes +- G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - fixed Coverity defects 09 May 14: V.Ivant (emutils-V10-00-13) -- G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - fixed +- G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - fixed bug report #1594 (crash G4WrapperProcess in sequential mode) 28 April 14: V.Ivant (emutils-V10-00-12) - G4VSubCutProducer, G4LossTableManager, G4VEnergyLossProcess - new - interface is added allowing production of delta-electrons below + interface is added allowing production of delta-electrons below production threshold 28 April 14: V.Ivant (emutils-V10-00-11) -- G4EnergyLossMessenger and G4EmProcessOption - added extra flag and +- G4EnergyLossMessenger and G4EmProcessOption - added extra flag and UI command "/process/em/deexcitationIgnoreCut" allowing disable check on production threshold by deexcitation module; enable RunManager flag "/run/physicsModified" for all deexcitation @@ -881,7 +921,7 @@ committal in the CVS repository ! 06 April 14: V.Ivant (emutils-V10-00-08) - G4VMultipleScattering - prepared for displacement on boundary; - set geomMin = 0.05 nm (was 0.01 nm) - Bohr radius + set geomMin = 0.05 nm (was 0.01 nm) - Bohr radius 28 February 14: V.Ivant (emutils-V10-00-07) - G4VMultipleScattering - minor cleanup for post-safety computation @@ -892,7 +932,7 @@ committal in the CVS repository ! 27 February 14: J.Apostolakis (emutils-V10-00-05) - Fixed G4VMscModel::ComputeSafety: pass 2nd parameter to SafetyHelper - ( this parameter is used for optimisation. It is guard= max radius + ( this parameter is used for optimisation. It is guard= max radius to check for volumes. Estimate of safety obtained is limited by it. => The displacement must never exceed value of 2nd parameter. ) Added default for 2nd parameter, compatible with SafetyHelper. @@ -902,23 +942,23 @@ committal in the CVS repository ! G4VEnergyLossProcess, G4VMultipleScattering, G4ionEffectiveCharge - general cleanup including: removed old commented code; use std::min and std::max instead of "if" where possible; use G4Log; - reduced number of division + reduced number of division - G4LossTableManager - minor change of ionisation for charm and bottom mesons; - do not recompute x-section if a process is shared between particle and + do not recompute x-section if a process is shared between particle and anti-particles; - + 21 February 14: V.Ivant (emutils-V10-00-03) - G4VMultipleScattering - added possibility to build extra table for a model 14 February 14: V.Ivant (emutils-V10-00-02) -- G4LossTableMananger, G4EmProcessOptions - define default - verbosity=0 for worket thread, so summary on EM processes +- G4LossTableMananger, G4EmProcessOptions - define default + verbosity=0 for worket thread, so summary on EM processes is not printed out -- G4VEnergyLossProcess, G4VEmProcess - define fixed precison=6 +- G4VEnergyLossProcess, G4VEmProcess - define fixed precison=6 for initialisation printout - G4EmCalculator - added G4Exception inside FindCouple() method if G4MaterialCutsCouple is not found out and incide GetCSDARange() - when CSDA table is not initialized + when CSDA table is not initialized 13 February 14: V.Ivant (emutils-V10-00-01) - G4LossTableMananger - fixed bug for initialisation of several runs @@ -934,13 +974,13 @@ committal in the CVS repository ! - G4EnergyLossTables - removed G4ThreadLocal (this class is obsolete) 19 November 13: V.Ivant (emutils-V09-06-66) -- G4VEmProcess, G4VEnergyLossProcess - complete fix for base +- G4VEmProcess, G4VEnergyLossProcess - complete fix for base materials for the case of positrons 18 November 13: V.Ivant (emutils-V09-06-65) - G4VEmProcess, G4VEnergyLossProcess - fixed bug seen in B5 example when based materail approach was used -- G4EmModelMananger - improved debug printout +- G4EmModelMananger - improved debug printout 14 November 13: V.Ivant (emutils-V09-06-64) - G4EmBiasingManager - fixed bug reported by Andrey Karpov @@ -955,7 +995,7 @@ committal in the CVS repository ! G4PhysicsVectors 01 November 13: V.Ivant (emutils-V09-06-61) -- G4VEmProcess, G4VEnergyLossProcess - fixed bug in GPIL computation +- G4VEmProcess, G4VEnergyLossProcess - fixed bug in GPIL computation when a particle enter a volume in whihc current EM model has different activation energy range than in the previous region - G4VEmModel - improved definition of min and max energy for @@ -974,7 +1014,7 @@ committal in the CVS repository ! - G4EmModelManager - fixed control on cut value per G4Region, the problem was observed when PAI model is used in a some region with very low cut - + 06 October 13: V.Ivant (emutils-V09-06-57) - G4VEmModel - fixed bug in fanoCavity test - element selectors are created even if cut value is high @@ -982,23 +1022,23 @@ committal in the CVS repository ! 03 October 13: V.Ivant (emutils-V09-06-56) - G4AngleDirect - dummy angular generator - G4ionEffectiveCharge - use G4Log, G4Exp, G4Pow -- G4VEmProcess, G4VEnergyLossProcess, G4VAtomDeexcitation - added modelID - for secondary tracks (different mecanisms of production of secondaries +- G4VEmProcess, G4VEnergyLossProcess, G4VAtomDeexcitation - added modelID + for secondary tracks (different mecanisms of production of secondaries may be distingwished) - G4EnergyLossMessenger, G4EmProcessOptions - added UI command and c++ interface to set verbose level for worker thread 20 September 13: V.Ivant (emutils-V09-06-55) -- G4VEmProcess - fixed Coverity warning +- G4VEmProcess - fixed Coverity warning 13 September 13: V.Ivant (emutils-V09-06-54) -- G4VMultipleScattering, G4VEnergyLossProcess - removed obsolete +- G4VMultipleScattering, G4VEnergyLossProcess - removed obsolete methods SlavePreparePhysicsTable(..) and SlaveBuildPhysicsTable(..) -- G4VEmAngularDistribution - added extra virtual method +- G4VEmAngularDistribution - added extra virtual method SampleDirectionForShell(...) 07 August 13: V.Ivant (emutils-V09-06-53) -- G4VEmModel - added pointer to G4ElementData and GetElementData method +- G4VEmModel - added pointer to G4ElementData and GetElementData method in order to allow sharing G4ElementData between threads - G4EmModelManager - check MinEnergyCut method to address bug #1481 @@ -1018,15 +1058,15 @@ committal in the CVS repository ! to discrete processes 12 July 13: V.Ivant (emutils-V09-06-47) -- G4VMultipleScattering - return back logic which was in 10.0beta (tag - emutils-V09-06-42) +- G4VMultipleScattering - return back logic which was in 10.0beta (tag + emutils-V09-06-42) 12 July 13: V.Ivant (emutils-V09-06-46) - G4VMultipleScattering - compute safety defining not only position but also radius of possible displacement 11 July 13: V.Ivant (emutils-V09-06-45) -- G4VMultipleScattering - return back tag 43 with more strict control of +- G4VMultipleScattering - return back tag 43 with more strict control of safety 09 July 13: V.Ivant (emutils-V09-06-44) @@ -1040,10 +1080,10 @@ committal in the CVS repository ! 03 July 13: V.Ivant (emutils-V09-06-42) - G4LossTableManager - foxed Coverity report -- G4VEmFluctuationModel changed interface in SampleFluctuations - method - G4Material pointer is substituted by G4MaterialCutsCouple +- G4VEmFluctuationModel changed interface in SampleFluctuations + method - G4Material pointer is substituted by G4MaterialCutsCouple pointer - modification is needed to PAI model -- G4VEnergyLossProcess - changed interface to G4VEmFluctuationModel +- G4VEnergyLossProcess - changed interface to G4VEmFluctuationModel 27 June 13: V.Ivant (emutils-V09-06-41) - G4LossTableManager - return back to tag-39, because setup of min/max @@ -1057,19 +1097,19 @@ committal in the CVS repository ! - G4VEnergyLossProcess - fixed Coverity report 17 June 13: V.Ivant (emutils-V09-06-38) -- G4LossTableManager - return back ThreadLocal partern for the +- G4LossTableManager - return back ThreadLocal partern for the singleton (it was correct) -- G4VMultipleScattering - fixed list models per msc process for ions +- G4VMultipleScattering - fixed list models per msc process for ions 15 June 13: V.Ivant (emutils-V09-06-37) -- G4VEnergyLossProcess - avoid unnecessary deletion of tables +- G4VEnergyLossProcess - avoid unnecessary deletion of tables between runs 15 June 13: V.Ivant (emutils-V09-06-36) -- G4LossTableManager - fixed ThreadLocal partern for the singleton +- G4LossTableManager - fixed ThreadLocal partern for the singleton 14 June 13: V.Ivant (emutils-V09-06-35) -- G4VEnergyLossProcess, G4VEmProcess, G4VEmModel, G4VMscModel +- G4VEnergyLossProcess, G4VEmProcess, G4VEmModel, G4VMscModel introduced cache for indexes in tables, CPU performance restored without any effect on results @@ -1082,8 +1122,8 @@ committal in the CVS repository ! - G4VEmModel - take into account reaction threshold when initialise G4EmElementSelectors; set smallest number of bins to 3 (was 5); fixed initialisation -- G4LossTableBuilder - do not use copy constructor when a new - G4PhysicsLogVector for a model +- G4LossTableBuilder - do not use copy constructor when a new + G4PhysicsLogVector for a model 13 June 13: V.Ivant (emutils-V09-06-32) - G4VEmProcess - fixed CrossSectionPerVolume method - use tablePrim for @@ -1096,16 +1136,16 @@ committal in the CVS repository ! - G4VEnergyLossProcess - removed parasitic printout 12 June 13: V.Ivant (emutils-V09-06-29) -- G4VEnergyLossProcess, G4LossTableManager, G4lossTableBuilder - cleanup - table management +- G4VEnergyLossProcess, G4LossTableManager, G4lossTableBuilder - cleanup + table management 11 June 13: V.Ivant (emutils-V09-06-28) -- G4VEnergyLossProcess, G4LossTableManager - cleanup table management +- G4VEnergyLossProcess, G4LossTableManager - cleanup table management for case of many runs in one session, improved printouts 10 June 13: V.Ivant (emutils-V09-06-27) - G4VEmModel - fixed SetCrossSectionTable method -- G4VEnergyLossProcess - make ion initialisation assuming that each ion +- G4VEnergyLossProcess - make ion initialisation assuming that each ion may have an individual process 07 June 13: G.Cosmo (emutils-V09-06-26) @@ -1118,43 +1158,43 @@ committal in the CVS repository ! 06 June 13: V.Ivant (emutils-V09-06-24) - G4VEnergyLossProcess, G4VEmProcess - density factor correction - array is assined to a process in BuildPhysicsTable instead of - PreparePhysicsTable in order to get correct pointers in worker + array is assined to a process in BuildPhysicsTable instead of + PreparePhysicsTable in order to get correct pointers in worker threads 06 June 13: V.Ivant (emutils-V09-06-23) -- G4VEnergyLossProcess - an attempt to fix extra problem seen +- G4VEnergyLossProcess - an attempt to fix extra problem seen in CDASH by changing PrintInfoDefinition method signature 06 June 13: V.Ivant (emutils-V09-06-22) -- G4VEnergyLossProcess - restore correct printout at initialisation +- G4VEnergyLossProcess - restore correct printout at initialisation of protons and anti_protons 05 June 13: V.Ivant (emutils-V09-06-21) -- G4VEmModel - fixed crash in copy of element selectors from +- G4VEmModel - fixed crash in copy of element selectors from master to worker threads -- G4VEnergyLossProcess - restore printout at initialisation +- G4VEnergyLossProcess - restore printout at initialisation of worker thread 05 June 13: V.Ivant (emutils-V09-06-20) - G4LossTableManager - SetIon method from previous is removed, old - code to Get dedx, range, inverse range is restored + code to Get dedx, range, inverse range is restored - G4VEnergyLossProcess - removed debug printout 04 June 13: V.Ivant (emutils-V09-06-19) -- G4LossTableManager - optimisation for MT mode: do not insert +- G4LossTableManager - optimisation for MT mode: do not insert concrete ions into particle/energy loss process map, only G4GenericIon is inserted; added LocalPhysicsTables methods to copy pointers of G4PhysicsTables from master to local threads; SetIon method is added to define ion state -- G4VEnergyLossProcess - optimisation for MT mode, added local +- G4VEnergyLossProcess - optimisation for MT mode, added local cache inside GetRangeForLoss method, cleanup - G4VMultipleScattering, G4VMscModel - adaptation to MT mode 30 May 13: V.Ivant (emutils-V09-06-18) - G4LossTableManager, G4VEnergyLossProcess, G4VMultipleScattering, - G4VEmModel, G4VMscModel - implemented copy of transport cross - sections tables from master to worker threads; implemented + G4VEmModel, G4VMscModel - implemented copy of transport cross + sections tables from master to worker threads; implemented a possibility to copy element selectors from master to worker threads (model may use or not this feature) @@ -1168,9 +1208,9 @@ committal in the CVS repository ! 29 May 13: V.Ivant (emutils-V09-06-15) - G4LossTableMananger, G4VMultipleScattering - removed unused internal methods, cleanup code from old unused implementation for MT -- G4EmCalculator - use GetIon(Z,A,0) method from G4IonTable, as +- G4EmCalculator - use GetIon(Z,A,0) method from G4IonTable, as recommended by particle category (instead of FindIon from particle - table) + table) 27 May 13: V.Ivant (emutils-V09-06-14) - G4EmCalculator - fixed typo @@ -1185,15 +1225,15 @@ committal in the CVS repository ! 26 May 13: V.Ivant (emutils-V09-06-11) - G4VEmModel - added extra methods needed for MT: InitialiseLocal, InitialiseForMaterial, InitialiseForElement, GetElementSelectors -- G4VMultipleScattering, G4VEnegryLossProcess - more accurate - initialisation for MT (some part of initialisation for worker +- G4VMultipleScattering, G4VEnegryLossProcess - more accurate + initialisation for MT (some part of initialisation for worker thread was commented out in the first implementation). - G4LossTableManager - added new method SlavePhysicsTable which - provides a correct copy and setup process parameters in MT mode -- G4EmCalculator - added call to InitialiseForMaterial to give a + provides a correct copy and setup process parameters in MT mode +- G4EmCalculator - added call to InitialiseForMaterial to give a possibility to a model to read data in any thread - G4EmElementSelector - make it be thread safe -- G4EmManager, G4EmMessenger - new classes +- G4EmManager, G4EmMessenger - new classes 30 April 13: V.Ivant (emutils-V09-06-10) - G4ElectronIonPair - fixed typo @@ -1204,7 +1244,7 @@ committal in the CVS repository ! for MT temporary) 04 April 13: V.Ivant (emutils-V09-06-08) -- G4VEnergyLossProcess, G4VEmProcess - clean up filling of +- G4VEnergyLossProcess, G4VEmProcess - clean up filling of secondary particles to particle change, use AddSecondary from G4VParticleChange in all cases; little performance improvement expected @@ -1248,7 +1288,7 @@ committal in the CVS repository ! 08 November 12: V.Ivant (emutils-V09-05-54) - G4VMultipleScattering - improved logic of computation of PostStep - safety and true step length, added more accurate protection + safety and true step length, added more accurate protection against case when true length exceed physics step limit 06 November 12: V.Ivant (emutils-V09-05-53) @@ -1258,20 +1298,20 @@ committal in the CVS repository ! 03 November 12: V.Ivant (emutils-V09-05-52) - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - fixed - printout at initialisation + printout at initialisation 02 November 12: V.Ivant (emutils-V09-05-51) -- G4VMultipleScattering - ion multiple scattering is defined +- G4VMultipleScattering - ion multiple scattering is defined in the class constructor - G4VMscModel - build table for all particles except case when - multiple scattering process is shared with G4GenericIon + multiple scattering process is shared with G4GenericIon 26 October 12: V.Ivant (emutils-V09-05-50) - G4VMultipleScattering - return version 48 - G4VEmProcess - changed initialisation for ions 25 October 12: V.Ivant (emutils-V09-05-49) -- G4VMultipleScattering - moved relocation AlongStep and do not +- G4VMultipleScattering - moved relocation AlongStep and do not call msc PostStep 21 October 12: V.Ivant (emutils-V09-05-48) @@ -1283,10 +1323,10 @@ committal in the CVS repository ! 20 October 12: V.Ivant (emutils-V09-05-47) - G4VMultipleScattering - fixed typo in previous tag; - compute true path length even is msc model is inactive + compute true path length even is msc model is inactive 20 October 12: V.Ivant (emutils-V09-05-46) -- G4VMultipleScattering - critical fix for stopping particles +- G4VMultipleScattering - critical fix for stopping particles (ATLAS report on small steps of low-energy ions) 19 October 12: V.Ivant (emutils-V09-05-45) @@ -1324,15 +1364,15 @@ committal in the CVS repository ! 20 September 12: V.Ivant (emutils-V09-05-38) - G4VAtomDeexcitation - added computation of sum of energies of de-excitation gamma and electron produced AlongStep; - use logical OR instead of AND for de-exitation flags + use logical OR instead of AND for de-exitation flags - G4VEnergyLossProcess - fixed energy balance for the case of de-excitation - AlongStep + AlongStep 17 September 12: V.Ivant (emutils-V09-05-37) -- G4VAtomDeexcitation - fixed de-excitation AlongStep by substitution +- G4VAtomDeexcitation - fixed de-excitation AlongStep by substitution which limited de-ecitation from ion ionisation - G4VEnergyLossProcess - take into account modifications for - G4VAtomDeexcitation in order to keep energy balance + G4VAtomDeexcitation in order to keep energy balance 06 August 12: V.Ivant (emutils-V09-05-36) - G4VMultipleScatteringProcess - added call to ReLocate PostStep @@ -1353,10 +1393,10 @@ committal in the CVS repository ! - G4VEnergyLossProcess - fixed non-reproducibility by extention of initialisation in StertTracking method for ions - G4VEmProcess - removed over initialisation in StartTracking -- G4EmModelManager - improve printout on models +- G4EmModelManager - improve printout on models 09 August 12: V.Ivant (emutils-V09-05-31) -- G4VMultipleScattering - allowed to change position and direction +- G4VMultipleScattering - allowed to change position and direction AlongStep 01 August 12: V.Ivant (emutils-V09-05-30) @@ -1366,34 +1406,34 @@ committal in the CVS repository ! 30 July 12: V.Ivant (emutils-V09-05-29) - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - use the same list of particles for printout at initialisation - in the case of verboseLevel=1 + in the case of verboseLevel=1 20 July 12: V.Ivant (emutils-V09-05-28) - G4VEnergyLossProcess - similar fix as for G4VEmProcess -- G4VEmAngularGenerator - cleanup comments, removed obsolete methods +- G4VEmAngularGenerator - cleanup comments, removed obsolete methods 19 July 12: V.Ivant (emutils-V09-05-27) - G4VEmProcess - fixed problem introduced in previous tag making - possible infinite loop in DNA tracking of 6 eV electron + possible infinite loop in DNA tracking of 6 eV electron 17 July 12: V.Ivant (emutils-V09-05-26) -- G4VEnergyLossProcess, G4VEmProcess - updated tracking parameters +- G4VEnergyLossProcess, G4VEmProcess - updated tracking parameters and flags in PostStepGetPhysicalInteractionLength - G4EmBiasingManager - fixed bug in bremsstrahlung splitting, which practically forbid splitting 13 July 12: V.Ivant (emutils-V09-05-25) -- G4VEnergyLossProcess, G4LossTableManager - removed unused method +- G4VEnergyLossProcess, G4LossTableManager - removed unused method InitialiseMSC 13 July 12: V.Ivant (emutils-V09-05-24) - G4EmBiasingManager - do not using dynamic weight for Russian roulette 12 July 12: V.Ivant (emutils-V09-05-23) -- G4VEnergyLossProcess, G4VMultipleScattering, G4VEmModel - added - implementation of new method StartTracking +- G4VEnergyLossProcess, G4VMultipleScattering, G4VEmModel - added + implementation of new method StartTracking - G4VMscModel - changed initialisation of the new track using - StartTracking method + StartTracking method - G4VEmAngularDistribution - add temporary dummy implementation of virtual sampling methods - will be removed when all generators will migrated to the new signature @@ -1414,10 +1454,10 @@ committal in the CVS repository ! - G4EmTableType - added type fIsCrossSectionPrim - G4EmModelManager - added possibility to build high energy table of cross sections - - G4VEmAngularDistribution - cleanup user interface + - G4VEmAngularDistribution - cleanup user interface 08 June 12: D. Sawkey - - G4VEmProcess fix for first part of bug 1314. Force if step==1 (see 30May12) + - G4VEmProcess fix for first part of bug 1314. Force if step==1 (see 30May12) 08 June 12: V.Ivant (emutils-V09-05-19) - Fixed shadowing @@ -1428,36 +1468,36 @@ committal in the CVS repository ! number of checks in run time - G4LossTableManager - moved inline methods to the source - G4EmBiasingmanager - add check on number of secondaries PostStep, - if it is not 1 then disable both spliting and Russian roulette, + if it is not 1 then disable both splitting and Russian roulette, this does not affect ordinary delta-electron and bremssrahlung secondary biasing (splitting and Russian roulette); Dynamic weight approach (weight is function of secondary energy) - is applied for Russian roulette if biasing limit energy is set - below 1 GeV, alternatively costant factor is used + is applied for Russian roulette if biasing limit energy is set + below 1 GeV, alternatively costant factor is used 05 June 12: V.Ivant (emutils-V09-05-17) - G4VMscModel - allow build transport x-section table for d,t,He3,He4 01 June 12: D. Sawkey (emutils-V09-05-16) - - G4EnergyLossMessenger: Put back in guidance for high energy limit for + - G4EnergyLossMessenger: Put back in guidance for high energy limit for bremsplitting, russian roulette 31 May 12: D. Sawkey - G4EmBiasingManager:Put back in high energy limit for Russian roulette, + G4EmBiasingManager:Put back in high energy limit for Russian roulette, bremsplitting 31 May 12: V.Ivant (emutils-V09-05-15) 30 May 12: D. Sawkey - G4VEnergyLossProcess bug 1314 fix: for forced biasing, now force if step==1 -30 May 12: D. Sawkey +30 May 12: D. Sawkey - G4VEmProcess, G4VEnergyLossProcess. for forced interaction, cross- section biasing, set weight consistently 29 May 12: D. Sawkey -- G4EmBiasingManager, G4VEmProcess, G4VEnergyLossProcess, - G4EmProcessOptions, G4EnergyLossMessenger: Change brem splitting to - EGS-style with unique secondaries. Only brem split particles with - weight > 1/N (N=brem splitting factor), and only Russian Roulette +- G4EmBiasingManager, G4VEmProcess, G4VEnergyLossProcess, + G4EmProcessOptions, G4EnergyLossMessenger: Change brem splitting to + EGS-style with unique secondaries. Only brem split particles with + weight > 1/N (N=brem splitting factor), and only Russian Roulette with weight < 1. Energy limit no longer used. 28 May 12: V.Ivant (emutils-V09-05-14) @@ -1491,7 +1531,7 @@ committal in the CVS repository ! method, added protection against zero kinetic energy into PostStepDoIt, general cleanup of the code -- G4VMscModel - added building of transport cross section table and new +- G4VMscModel - added building of transport cross section table and new method GetTransportCrossSection to be used in run time - G4LossTableBuilder - added method BuildTableForModel @@ -1512,7 +1552,7 @@ committal in the CVS repository ! - G4LossTableBuilder - added method BuildTableForModel allowing to build G4PhysicsTable for a model - G4VEmModel - added virtual method Value, by default computes cross section -- G4VMscModel - added method GetTransportMeanFreePath +- G4VMscModel - added method GetTransportMeanFreePath 19 March 12: V.Ivant (emutils-V09-05-06) - G4EmCalculator - fixed compillation warning at gcc 4.6 @@ -1521,23 +1561,23 @@ committal in the CVS repository ! - G4LossTableManager - added a check and protection against double registration of the same process; this addition allows to use the same EM energy loss process for different particle types -- G4EmCalculator - modifed method to access a process taking into account +- G4EmCalculator - modifed method to access a process taking into account that the same process may used by different particle type; added new methods ActiveForParticle, FindEnLossProcess, FindDiscreteProcess, FindMscProcess 5 March 12: V.Ivant (emutils-V09-05-04) - G4VEnergyLossProcess fixed crash due to apply G4hIonisation for ions; -- G4VEnergyLossProcess, G4VEmProcess, G4LossTableBuilder - delete old +- G4VEnergyLossProcess, G4VEmProcess, G4LossTableBuilder - delete old G4PhysicsVectors if new vectors are built between runs - G4VAtomDeexcitation - use safe method to extract integer Z 29 February 12: V.Ivant (emutils-V09-05-03) -- G4VEnergyLossProcess fixed computation of delta-electron cross section - for ions and very small cuts (about 1 um), reported by Sergio Ibarmia +- G4VEnergyLossProcess fixed computation of delta-electron cross section + for ions and very small cuts (about 1 um), reported by Sergio Ibarmia 21 February 12: V.Ivant (emutils-V09-05-02) -- G4VEmAngularDistribution added new method Initialise +- G4VEmAngularDistribution added new method Initialise 21 February 12: V.Ivant (emutils-V09-05-01) - G4VEmAngularDistribution added two new methods SampleCosinePolarAngle @@ -1545,20 +1585,20 @@ committal in the CVS repository ! 7 February 12: V.Ivant (emutils-V09-05-00) - G4VAtomDeexcitation - add activation of deexcitation for the world - if deexcitation is activated but G4Regions for deexcitation + if deexcitation is activated but G4Regions for deexcitation are not defined 10 November 11: V.Ivant (emutils-V09-04-51) -- G4LossTableManager, G4EmModelManager - fixed defects reported by +- G4LossTableManager, G4EmModelManager - fixed defects reported by Coverity - private assignment operator and copy constructor added 3 November 11: V.Ivant (emutils-V09-04-50) - G4VEnergyLossProcess, G4VEmProcess - a check on zero kinetic energy PostStep is added; the status is changed to fStopAndKill or - fStopButAlive + fStopButAlive 1 November 11: V.Ivant (emutils-V09-04-49) -- G4VEnergyLossProcess, G4VEmProcess, G4EmBiasingManager - fixed +- G4VEnergyLossProcess, G4VEmProcess, G4EmBiasingManager - fixed initialisation and improved cout for usage of secondary biasing 31 October 11: V.Ivant (emutils-V09-04-48) @@ -1573,11 +1613,11 @@ committal in the CVS repository ! 28 October 11: V.Ivant (emutils-V09-04-46) - G4VEnergyLossProcess, G4VEmProcess, G4EmProcessOptions, G4EnergyLossMessenger - added a flag of change of weight for - cross section biasing and forced interaction option + cross section biasing and forced interaction option 21 September 11: V.Ivant (emutils-V09-04-45) - G4VEnergyLossProcess, G4EmBiasingManager, G4EmProcessOptions, - G4EnergyLossMessenger - added upper limit in energy for secondary + G4EnergyLossMessenger - added upper limit in energy for secondary particle biasing - G4EnergyLossMessenger - updated UI commands for PIXE @@ -1596,7 +1636,7 @@ committal in the CVS repository ! G4EnergyLossMessenger - added Russian roulette 7 September 11: V.Ivant (emutils-V09-04-40) -- G4VEnergyLossProcess, G4EmBiasingManager, G4VEmProcess - updated +- G4VEnergyLossProcess, G4EmBiasingManager, G4VEmProcess - updated computation of weight for biasing options 7 September 11: V.Ivant (emutils-V09-04-39) @@ -1605,13 +1645,13 @@ committal in the CVS repository ! - G4VEmModel - removed obsolete method SampleDeexcitationAlongStep 29 August 11: V.Ivant (emutils-V09-04-38) -- G4VEnergyLossProcess - fixed initialisation for alpha and He3 +- G4VEnergyLossProcess - fixed initialisation for alpha and He3 introduced in previous tag 29 August 11: V.Ivant (emutils-V09-04-37) - G4VEnergyLossProcess - fixed initialisation for ions defined by DNA ion manager -- G4LossTableBuilder - fixed computation of range table for the case +- G4LossTableBuilder - fixed computation of range table for the case of zero dedx in first bins of dedx table 26 August 11: V.Ivant (emutils-V09-04-36) @@ -1628,14 +1668,14 @@ committal in the CVS repository ! - sources.cmake : Fixed extension of G4EmBiasingManager.cc in SOURCES list. 28 July 11: V.Ivant (emutils-V09-04-33) -- G4VEmProcess, G4VEnergyLossProcess - removed old obsolete +- G4VEmProcess, G4VEnergyLossProcess - removed old obsolete deexcitation scheme; added forced interaction biasing - G4EmBiasingManager - new class for forced biasing 20 July 11: V.Ivant (emutils-V09-04-32) - G4VEmProcess, G4VEnergyLossProcess - improved computations for the base material approach; added cross section biasing option; - removed old methods of sampling deexcitation PostStep + removed old methods of sampling deexcitation PostStep - G4VEmModel, G4VAtomDeexcitation - cleanup method names and comments - G4EmModelManager - do not create local copy of vector with production thresholds (reducing run time memory); @@ -1660,22 +1700,22 @@ committal in the CVS repository ! - G4EnergyLossTables, G4VEnergyLoss - fixed Coverity warnings 30 May 11: V.Ivant (emutils-V09-04-26) -- G4LossTableBuilder - fixed initialisation of variable density for the +- G4LossTableBuilder - fixed initialisation of variable density for the case when PhysicsTables are not used 27 May 11: V.Ivant (emutils-V09-04-25) -- G4VEmProcess, G4VEnergyLossProcess - fixed previous tag for the case +- G4VEmProcess, G4VEnergyLossProcess - fixed previous tag for the case when tables are not built -- G4VAtomDeexcitation - (A.Mantero) fixed inline method +- G4VAtomDeexcitation - (A.Mantero) fixed inline method 27 May 11: V.Ivant (emutils-V09-04-24) - G4LossTablemanager, G4LossTableBuilder, G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess - added base material - approach - build Physics Vectors only for base materials and + approach - build Physics Vectors only for base materials and scale values for other materials 24 May 11: V.Ivant (emutils-V09-04-23) -- G4EmModelManager, G4EmCalculator - changed smoothing function +- G4EmModelManager, G4EmCalculator - changed smoothing function between two models, effect is seen for protons in non-NIST water 16 May 11: V.Ivant (emutils-V09-04-22) @@ -1715,7 +1755,7 @@ committal in the CVS repository ! 28 March 11: V.Ivant (emutils-V09-04-11) - Return old methods in G4VAtomDeexcitation, which are still used - in EM examples + in EM examples 28 March 11: V.Ivant (emutils-V09-04-10) - Cleanup G4VAtomDeexcitation methods @@ -1730,10 +1770,10 @@ committal in the CVS repository ! 25 March 11: V.Ivant (emutils-V09-04-07) - G4VMscModel - added Get/Set method for ionisation process -- G4VMultipleScattering - use these methods in run time +- G4VMultipleScattering - use these methods in run time 18 March 11: V.Ivant (emutils-V09-04-06) -- G4VMscModel - add protected method for common computation of +- G4VMscModel - add protected method for common computation of range and energy for all msc models - G4EmProcessOptions, G4EnergyLossMessenger, G4LossTableManager, G4VAtomDeexcitation - cleanup options for deexcitation @@ -1741,7 +1781,7 @@ committal in the CVS repository ! 04 March 11: V.Ivant (emutils-V09-04-05) - G4VEmModel - removed obsolete method MinEnergyCut - G4VMultipleScattering - fix problem of initialisation of true - step length when multiple scattering model is inactive (needed for + step length when multiple scattering model is inactive (needed for DNA Phsyics List) 02 February 11: V.Ivant (emutils-V09-04-04) @@ -1753,13 +1793,13 @@ committal in the CVS repository ! set this flag by user command 17 January 11: V.Ivant (emutils-V09-04-02) -- G4LossTableManager - fixed problem happens at initilisation, when - bremsstrahlung process is instantiated but not added to the +- G4LossTableManager - fixed problem happens at initialisation, when + bremsstrahlung process is instantiated but not added to the Physics List 04 January 11: V.Ivant (emutils-V09-04-01) - G4EmCalculator, G4VAtomDeexcitation, G4EnergyLossMessenger - - cleanup logic of activation of deexcitation and computation of + cleanup logic of activation of deexcitation and computation of ionisation cross sections 24 December 10: V.Ivant (emutils-V09-04-00) @@ -1784,16 +1824,16 @@ committal in the CVS repository ! initialisation 16 November 10: V.Ivant (emutils-V09-03-25) -- G4EmCorrections - used G4PhysicsVector for approximation of the +- G4EmCorrections - used G4PhysicsVector for approximation of the Barkas correction; cleanup comments 13 November 10: V.Ivant (emutils-V09-03-24) - G4EmCorrections - fixed computation of shell corrections according - to prescriptions of original papers; added Bichsel approximation + to prescriptions of original papers; added Bichsel approximation for Barkas corrections for the large Z > 47 04 November 10: V.Ivant (emutils-V09-03-23) -- Fixed part of problems reported by the Coverity tool +- Fixed part of problems reported by the Coverity tool (mainly initialisation) 25 October 10: V.Ivant (emutils-V09-03-22) @@ -1849,7 +1889,7 @@ G4VEmProcess, G4VEnergyLossProcess, G4VEmModel - provided GetCurrentElement meth 27 April 10: V.Ivant (emutils-V09-03-10) G4LossTableManager - added class member and a method GetNumberOfBinsPerDecade -G4VEmModel - use GetNumberOfBinsPerDecade and spline flag to initialise +G4VEmModel - use GetNumberOfBinsPerDecade and spline flag to initialise G4EmElementSelector (addressed bug report #1115) G4EmElementSelector - use spline flag to construct vectors probabilities G4EmProcessOptions - removed double implementation of initialisation code, @@ -1857,7 +1897,7 @@ G4EmProcessOptions - removed double implementation of initialisation code, G4VEnergyLossProcess - call CorrectionsAlongStep only for ions (minor CPU saving) 23 April 10: V.Ivant (emutils-V09-03-09) -G4VEnergyLossProcess - removed unused variable +G4VEnergyLossProcess - removed unused variable 12 April 10: V.Ivant (emutils-V09-03-08) G4EmModelManager - do not use min energy cut defined by models allowing @@ -1873,19 +1913,19 @@ G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - added G4EmConfigarator - upgraded and fixed old problem 06 April 10: V.Ivant (emutils-V09-03-06) -G4VEnergyLossProcess - use the same method to build cross section table +G4VEnergyLossProcess - use the same method to build cross section table as DEDX table (use copy constructors to reduce number of calls to std::exp) G4EmModelManager - cleanup comments 22 March 10: V.Ivant (emutils-V09-03-05) G4EmCorrections - added protection against large Barkas and Bloch - corrections in the case of large negatively charged + corrections in the case of large negatively charged particle (100*e-) - fixed problem reported by ATLAS G4EmCalculator - cleanup 10 March 10: V.Ivant (emutils-V09-03-04) -G4VEmModel, G4VEmProcess, G4VEnergyLossProcess, G4VMultipleScattering, +G4VEmModel, G4VEmProcess, G4VEnergyLossProcess, G4VMultipleScattering, G4LossTableManager - reorder inline methods and add comments 05 March 10: V.Ivant (emutils-V09-03-03) @@ -1911,7 +1951,7 @@ G4EmCalculator - take into account CorrectionAlongStep for ions 10 November 09: V.Ivant (emutils-V09-02-22) G4EmCalculator - added method FindIon; improve computation for ions - allowing to be applied for the model based on ICRU'73 + allowing to be applied for the model based on ICRU'73 10 November 09: V.Ivant (emutils-V09-02-21) G4VEmProcess - improved printout @@ -1926,7 +1966,7 @@ G4VEmProcess - improved printout inside single scattering and G4WentzelVI models 29 September 09: V.Ivant (emutils-V09-02-19) -- G4EmElementSelector - fixed forgotten migration to updated G4PhysicsVector +- G4EmElementSelector - fixed forgotten migration to updated G4PhysicsVector 25 September 09: V.Ivant (emutils-V09-02-18) - G4VEmModel - insure definition of pointer to the G4MaterialCutsCouple @@ -1936,9 +1976,9 @@ G4VEmProcess - improved printout 11 August 09: V.Ivant (emutils-V09-02-17) - G4EmModelManager - reduced length of internal arrays, simplified initialisation, in particular, smoothing procedure, the size of - executable should be reduced -- G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess, - G4LossTableBuilder - use copy constructors to create Physics Vectors in + executable should be reduced +- G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess, + G4LossTableBuilder - use copy constructors to create Physics Vectors in order to reduce number of calls to log function 30 July 09: V.Ivant (emutils-V09-02-16) @@ -1948,7 +1988,7 @@ G4VEmProcess - improved printout 24 July 09: V.Ivant (emutils-V09-02-15) - G4AtomicShell class moved from lowenergy -- G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess - added +- G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess - added initialisation of polarAngleLimit and highEnergyLimit parameters for all models @@ -1957,11 +1997,11 @@ G4VEmProcess - improved printout G4NuclearStopping process 20 July 09: V.Ivant (emutils-V09-02-13) -- G4VMultipleScattering - added initialisation of generic msc model +- G4VMultipleScattering - added initialisation of generic msc model parameters in this base class (allowing to overwrite default models) - G4EmConfigurator - cleanup -- G4VMscModel - set facsafety=0.3 as it is defined in Urban models +- G4VMscModel - set facsafety=0.3 as it is defined in Urban models 9 July 09: V.Ivant (emutils-V09-02-12) - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering, @@ -1969,7 +2009,7 @@ G4VEmProcess - improved printout used Energy() and Value() methods instead of GetLowEdgeEnergy() and GetValue() - G4VEnergyLossProcess - fixed retrieve from ASCII files -- G4VMultipleScattering - remove method obsolete GetMscContinuesStepLimit +- G4VMultipleScattering - remove method obsolete GetMscContinuesStepLimit - G4VAtomDeexcitation - a new header file 27 May 09: V.Ivant (emutils-V09-02-11) @@ -1979,7 +2019,7 @@ G4VEmProcess - improved printout - G4VEmModel: remove protection in from previous tag and include protection to G4ParticleChangeForLoss; more save initialisation of G4EmElementSelectors -- G4VMultipleScattering - added a protection against zero kinetic energy +- G4VMultipleScattering - added a protection against zero kinetic energy - G4EmElementSelector - do not use spline 22 May 09: V.Ivant (emutils-V09-02-09) @@ -2000,19 +2040,19 @@ G4VMscModel, G4VMultipleScattering - set default Range Factor to 0.04 limit 10 TeV and number of bins 77 08 April 09: V.Ivant (emutils-V09-02-05) -- G4LossTableManager - added G4EmConfigurator providing easier addition of +- G4LossTableManager - added G4EmConfigurator providing easier addition of models per region - G4VMultipleScattering, G4VEmProcess, G4VEnergyLossProcess: added initialisation of the G4EmConfigurator 08 April 09: V.Ivant (emutils-V09-02-04) -- G4EmModelManager - fixed energy range selection algorithm for the case +- G4EmModelManager - fixed energy range selection algorithm for the case when there is an intersection of energy regions of standard - and low-energy models, + and low-energy models, - reduce internal vectors if no model per region are initialized. - do not initilise unused models. - G4VEmModel - msc methods are moved to G4VMscModel, added protected - methods for initialisation of ParticleChange + methods for initialisation of ParticleChange - G4VMultipleScattering, G4VEmProcess, G4VEnergyLossProcess: methods for initialisations are moved from inline to source @@ -2024,16 +2064,16 @@ G4EmConfigurator - fixed for the case if only fluctuation model is set - G4VEmModel - make methods to access geometry protected, added new method SetSampleZ, added geommax private member - G4EmCalculator - added possibility to be used by DNA processes: - take into account special DNA particles + take into account special DNA particles 18 February 09: V.Ivant (emutils-V09-02-01) -G4VEmModel, G4VEmFluctuationModel, G4VEnegryLossProcess, G4VEmProcess, +G4VEmModel, G4VEmFluctuationModel, G4VEnegryLossProcess, G4VEmProcess, G4VMultipleScattering - move all virtual methods to source, update comments G4VEmModel - added flagDeexcitation and Get/Set methods G4VEnegryLossProcess, G4VEmProcess - added calls to deexcitation PostStep G4EmProcessOptions - added ActivateDeexcitation method -G4EnergyLossMessenger - added /process/em/deexcitation UI command -G4LossTableBuilder - added protection in BuildRangeTable against zero dedx +G4EnergyLossMessenger - added /process/em/deexcitation UI command +G4LossTableBuilder - added protection in BuildRangeTable against zero dedx 27 January 09: V.Ivant (emutils-V09-02-00) G4VEmModel - added method SampleDeexcitationAlongStep @@ -2044,8 +2084,8 @@ G4VEmProcess - added possibility to set more than 1 model 20 November 08: V.Ivant (emutils-V09-01-37) G4EmConfigurator - fixed energy interval selection for a model -G4VMultipleScattering - set process sub-type 10 to distinguish with - single Coulomb scattering +G4VMultipleScattering - set process sub-type 10 to distinguish with + single Coulomb scattering 13 Novemver 08: A.Schaelicke (emutils-V09-01-36) G4LossTableManager - changed default LPM effect to ON again @@ -2053,7 +2093,7 @@ G4VEmModel - (VI) add LPM flag and Get/Set methods 12 November 08: V.Ivant (emutils-V09-01-35) G4VEmModel - fixed memory leak by destruction G4EmElementSelectors -G4EmSaturation - activate saturation for energy deposition due to +G4EmSaturation - activate saturation for energy deposition due to photo-electric effect 24 October 08: V.Ivant (emutils-V09-01-34) @@ -2064,7 +2104,7 @@ G4EnergyLossMessenger - added /process/em/applyCuts command 17 October 08: V.Ivant (emutils-V09-01-32) G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering set number - of bins for tables 7 per decade + of bins for tables 7 per decade 15 October 08: V.Ivant (emutils-V09-01-31) G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering improved cout @@ -2079,32 +2119,32 @@ G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering set default G4EmModelManager - included G4EmProcessSubType.hh header G4EmTableType.hh - changed enumeration names fIonisation -> fIsIonisation, fSubIonisation -> fIsSubIonisation to avoid clash with - sub-type enumeration name + sub-type enumeration name 21 September 08: V.Ivant (emutils-V09-01-29) -G4EmCorrections - do not compute ion corrections if for ions +G4EmCorrections - do not compute ion corrections if for ions G4hIonisation process is used 21 September 08: V.Ivant (emutils-V09-01-28) -G4ionEffectiveCharge - remove chargeFactor - return to 01-25 +G4ionEffectiveCharge - remove chargeFactor - return to 01-25 G4VEnergyLossProcess - fixed initialisation; 12 September 08: V.Ivant (emutils-V09-01-27) G4VEmProcess - improved verbose output G4VEnergyLossProcess - added pointer to current G4VEmModel; - removed method CorrectionsAlongStep, instead + removed method CorrectionsAlongStep, instead corresponding method of a model are used; improved verbose output G4VEmFluctuationModel - added method SetParticleAndCharge G4VEmModel - minor optimisations of SelectRandomAtom and SelectIsotope; - added methods GetParticleCharge, GetChargeSquareRatio, - CorrectionsAlongStep, ActivateNuclearStopping needed for + added methods GetParticleCharge, GetChargeSquareRatio, + CorrectionsAlongStep, ActivateNuclearStopping needed for simulation of ion transport -G4EmCorrections - added interfaces to effective charge +G4EmCorrections - added interfaces to effective charge G4ionEffectiveCharge - added variable chargeFactor to be used for He ions 29 August 08: V.Ivant (emutils-V09-01-26) -G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess - use +G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess - use new DumpModelList method from G4EmModelManager in the verbosity output G4EmModelManager - fixed crash in destructor when verbosity > 1; @@ -2114,7 +2154,7 @@ G4EmModelManager - fixed crash in destructor when verbosity > 1; 21 August 08: V.Ivant (emutils-V09-01-25) G4VEmModel - add parameter kinEnergy to SetupMaterial method; set pointer currentElement in ComputeCrossSectionPerAtom -G4EmElementSelector - update usage of methods SetupMaterial and +G4EmElementSelector - update usage of methods SetupMaterial and ComputeCrossSectionPerAtom 3 August 08: V.Ivant (emutils-V09-01-24) @@ -2129,20 +2169,20 @@ G4VEmModel - use stl vector for cross sections instead of array 21 July 08: V.Ivant (emutils-V09-01-22) G4VEmModel - added vector of G4ElementSelectors, in which vectors - of relative cross sections per elements of a compound + of relative cross sections per elements of a compound material are stored; added new methods: InitialisaElementSelectors and SelectRandomAtom, G4LossTableBuilder - remove dependence on G4LossTableManager -G4LossTableManager - propagated spline flag to G4LossTableBuilder +G4LossTableManager - propagated spline flag to G4LossTableBuilder 15 July 08: V.Ivant (emutils-V09-01-21) G4EmConfigurator - a new helper class to add model per particle type, process, energy range and G4Region -G4VEmProcess, G4VEnergyLossProcess - renamed and improved method +G4VEmProcess, G4VEnergyLossProcess - renamed and improved method "MicroscopicCrossSection" by "CrossSectionPerVolume" -G4VEmModel, G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess +G4VEmModel, G4VEmProcess, G4VMultipleScattering, G4VEnergyLossProcess reodering of members of classes and improved comments: - - separated members fixed at construction, defined at + - separated members fixed at construction, defined at ininitialisation, and modified in run time - improved comments in header files G4LossTableManager - added register/deregister mechanism and deletion @@ -2151,37 +2191,37 @@ G4EmModelManager - does not delete models anymore 9 July 08: V.Ivant (emutils-V09-01-20) G4ElectronIonPair - a new helper class to sample number of primary ionisations - in detectors + in detectors 8 July 08: V.Ivant (emutils-V09-01-19) -G4VEmModel - added inline method ComputeCrossSectionPerAtom -G4LossTableManager and G4EnergyLossTable - remove call to exit() +G4VEmModel - added inline method ComputeCrossSectionPerAtom +G4LossTableManager and G4EnergyLossTable - remove call to exit() 9 June 08: V.Ivant (emutils-V09-01-18) G4ionEffectiveCharge - return back Ziegler formula for effective charge of ions; min effective charge is 1.0 (instead of 0.1) -G4EmCorrections - a minor change of the scale for external ion data +G4EmCorrections - a minor change of the scale for external ion data 2 June 08: V.Ivant (emutils-V09-01-17) G4ionEffectiveCharge - use simplified formula for effective charge of ions 28 May 08: V.Ivant (emutils-V09-01-16) -G4VEmModel - added virtual method SetupForMaterial +G4VEmModel - added virtual method SetupForMaterial G4EmElementSelector - helper class to sample random G4Element in a compound material 28 May 08: V.Ivant (emutils-V09-01-15) -G4VEnergyLossProcess - fixed problem of subcutoff option for ions (ion +G4VEnergyLossProcess - fixed problem of subcutoff option for ions (ion ranges were wrong) G4LossableBuilder - use more precise algorith to compute range for the - case, when spline is used + case, when spline is used 20 May 08: V.Ivant (emutils-V09-01-14) - G4EmCorrections - computation of the finite size correction is moved to - the Bethe-Bloch model + the Bethe-Bloch model 11 May 08: V.Ivant (emutils-V09-01-13) -- G4VMultipleScattering - make AlongStepGetPhysicalInteractionLength +- G4VMultipleScattering - make AlongStepGetPhysicalInteractionLength method virtual allowing to overwrite it by a derived class - needed for ion simulation - G4EmCalculator - fixed bug in computation for ions @@ -2191,12 +2231,12 @@ G4LossableBuilder - use more precise algorith to compute range for the G4EmProcessOptions - introduced polarAngleLimit parameter and Get/Set methods for single and multiple scattering models - G4ionEffectiveCharge - fixed initialisation at first event -- G4EmCorrections - review and fix computation of high order corrections +- G4EmCorrections - review and fix computation of high order corrections for ions - G4EmCalculator - updated computations for ions 08 April 08: V.Ivant (emutils-V09-01-11) -- G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering, +- G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering, G4LossTableBuilder - introduced spline 25 March 08: V.Ivant (emutils-V09-01-10) @@ -2208,21 +2248,21 @@ G4LossableBuilder - use more precise algorith to compute range for the - G4VEnergyLossProcess - added cout of linLossLimit 17 March 08: V.Ivant (emutils-V09-01-08) -- G4EmSaturation - added interface with G4Step - +- G4EmSaturation - added interface with G4Step + 14 March 08: mma (emutils-V09-01-07) -- modifs in G4EmSaturation +- modifs in G4EmSaturation 14 March 08: V.Ivant (emutils-V09-01-06) - G4EmSaturation - added computation of the average recoil mass, use Birks coefficient from G4Material -- G4LossTableManager - fixed logic in compute dedx table for an +- G4LossTableManager - fixed logic in compute dedx table for an inactive process 10 March 08: V.Ivant (emutils-V09-01-05) - G4LossTableManager, G4EmProcessOptions - added Set/Get spline flag - G4EnergyLossMessenger - added a command "/process/em/spline" -- G4VMultipleScattering - SetSkin method does not change +- G4VMultipleScattering - SetSkin method does not change StepLimitType anymore - G4VMscModel - new class to define general msc parameters @@ -2237,7 +2277,7 @@ G4LossableBuilder - use more precise algorith to compute range for the 14 February 08: V.Ivant (emutils-V09-01-02) - G4EmCorrections - added IonBarkasCorrection, IonHighOrderCorrections - and ComputeIonCorrections methods in order to provide a smooth transition + and ComputeIonCorrections methods in order to provide a smooth transition between low-energy parameterization and Bethe-Bloch model - G4ionEffectiveCharge - use precomputed Z^1/3 values, use expantions of exp and pow functions, do not perform recomputation if arguments @@ -2246,7 +2286,7 @@ G4LossableBuilder - use more precise algorith to compute range for the 04 February 08: V.Ivant (emutils-V09-01-01) - G4VEnergyLossProcess - fixed computation of NIEL at the last step of a particle - + 11 January 08: V.Ivant (emutils-V09-01-00) - G4EmCorrections - improve CPU by usage expansions and precalculated values of Z^0.23 @@ -2254,15 +2294,15 @@ G4LossableBuilder - use more precise algorith to compute range for the needed for sub-cutoff option 09 November 07: V.Ivant (emutils-V09-00-13) -- G4VMultipleScattering - set at initialisation that scattering may be +- G4VMultipleScattering - set at initialisation that scattering may be off lectrons (needed for single scattering) -- G4EmModelmanager - add pointers to G4Gamma and G4Positron at +- G4EmModelmanager - add pointers to G4Gamma and G4Positron at initialisation 07 November 07: V.Ivant (emutils-V09-00-12) - G4VEnergyLossProcess - simplify logic to switch on/off fluctuations - G4EmProcessOptions - add forgoten initialisation of G4LossTableManager - parameters together with parameters of concrete + parameters together with parameters of concrete processes (fixed initialisation when options defined before proceeses are instantiated) @@ -2283,19 +2323,19 @@ G4LossableBuilder - use more precise algorith to compute range for the 02 October 07: V.Ivant (emutils-V09-00-08) - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - fixed - memory leak - proper delete of G4PhysicsTables + memory leak - proper delete of G4PhysicsTables 27 September 07: V.Ivant (emutils-V09-00-07) - G4ionEffectiveCharge - use Fermi energy from G4Material and not recalculate at each step; reorganized formulas - less calls to - exp, log, pow + exp, log, pow 26 September 07: V.Ivant (emutils-V09-00-06) - G4VEnergyLossProcess and G4VEmProcess - move virtual function PostStepGetPhysicalInteractionLength from inline to body of classes 25 September 07: V.Ivant (emutils-V09-00-05) -- G4VEnergyLossProcess and G4VEmProcess - fixed handling zero cross +- G4VEnergyLossProcess and G4VEmProcess - fixed handling zero cross section in PostStepGetPhysicalInteractionLength method to avoid problem happans in FanoCavity example when cross section inside cavity is zero - G4VEmModel - compare cross section with DBL_MIN instead of zero @@ -2306,7 +2346,7 @@ G4LossableBuilder - use more precise algorith to compute range for the and do not use GetVelocity method 02 August 07: V.Ivant (emutils-V09-00-03) -- G4VEnergyLossProcess - simplify energy loss computation for the case +- G4VEnergyLossProcess - simplify energy loss computation for the case of big step (few % faster) 28 July 07: V.Ivant (emutils-V09-00-02) @@ -2324,8 +2364,8 @@ G4LossableBuilder - use more precise algorith to compute range for the was never selected - instead first was taken) 20 June 07: V.Ivant (emutils-V08-03-06) -- G4VEnergyLossProcess add initialisation of preStepKinEnergy before - run in order to fix a problem of test14 reported by Valgrind +- G4VEnergyLossProcess add initialisation of preStepKinEnergy before + run in order to fix a problem of test14 reported by Valgrind 14 June 07: V.Ivant (emutils-V08-03-05) - G4LossTableManager - add deletion of G4EmCorrections in destructor @@ -2340,33 +2380,33 @@ G4LossableBuilder - use more precise algorith to compute range for the 23 May 07: V.Ivant (emutils-V08-03-02) - G4VEnergyLossProcess, G4VEmProcess - remove method SecondaryPostStep - use instead a direct call to selected model + use instead a direct call to selected model 22 May 07: V.Ivant (emutils-V08-03-01) -- G4VEmModel - change interface of SampleSecondary method, it become +- G4VEmModel - change interface of SampleSecondary method, it become void, extra parameter std::vector*, this vector is now a member of base class G4VEnergyLossProcess, G4VEmProcess, no new and delete of the vector in the run time. About 5% speadup of EM shower simulation -- G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering modified +- G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering modified to follow this new interface 21 May 07: V.Ivant (emutils-V08-03-00) 21 May 07: V.Ivant (emutils-V08-02-12) - G4VEnergyLossProcess - speadup the code by added implementation method PostStepGetPhysicalInteractionLength; - added methods InitialiseStep and InitialiseMassCharge + added methods InitialiseStep and InitialiseMassCharge - G4VEmProcess - speadup the code by added implementation method PostStepGetPhysicalInteractionLength; add comments to header and inline methods 20 May 07: V.Ivant (emutils-V08-02-11) - G4VMultipleScattering - speadup the code by added implementation - of method AlongStepGetPhysicalInteractionLength and + of method AlongStepGetPhysicalInteractionLength and do not use ContinuousStepLimit; also added implementation - of method PostStepGetPhysicalInteractionLength + of method PostStepGetPhysicalInteractionLength - G4VEnergyLossProcess - speadup the code by added implementation - method AlongStepGetPhysicalInteractionLength and + method AlongStepGetPhysicalInteractionLength and do not use ContinuousStepLimit 18 May 07: V.Ivant (emutils-V08-02-10) @@ -2388,11 +2428,11 @@ G4LossableBuilder - use more precise algorith to compute range for the - integrated fixes of emutils-V08-02-06a 25 April 07: V.Ivant (emutils-V08-02-08) -- G4VEnegryLossProcess - move initialisation of safety helper to +- G4VEnegryLossProcess - move initialisation of safety helper to BuildPhysicsTable 12 April 07: V.Ivant (emutils-V08-02-07) -- G4VEnegryLossProcess - use unique G4SafetyHelper +- G4VEnegryLossProcess - use unique G4SafetyHelper - G4VEmProcess - remove double call to Clear method 08 May 07: V.Ivant (emutils-V08-02-06a) @@ -2410,14 +2450,14 @@ G4LossableBuilder - use more precise algorith to compute range for the 16 February 07: V.Ivant (emutils-V08-02-05) - G4VEnegryLossProcess - change initialisation: linLossLimit=1.e-6 - improve precision of energy loss for high + improve precision of energy loss for high energy incident and high cut - + 13 February 07: V.Ivant (emutils-V08-02-04) - G4LossTableManager, G4EmProcessOptions, G4EnergyLossMessenger add command MscSkin, linearLossLimit - G4VMultipleScattering - add SetSkin and Skin methods -- G4LossTableBuilder - use more precise algorithm to build inverse +- G4LossTableBuilder - use more precise algorithm to build inverse range table using G4LPhysicsFreeVector 07 February 07: V.Ivant (emutils-V08-02-03) @@ -2428,15 +2468,15 @@ G4LossableBuilder - use more precise algorith to compute range for the - G4LossTableBuilder - fill new vector for dedx (do not reuse old) - G4LossTableManager - fix problen of reinitialisation for the next run after activate/desactivate energy loss process -- G4VEmEnergyLossProcess - add members theIonisationTable and +- G4VEmEnergyLossProcess - add members theIonisationTable and theSubIonisationTables in order to save separately total energy loss and energy - loss due to ionisation; - + loss due to ionisation; + 15 January 07: mma (emutils-V08-02-01) - G4VEmEnergyLossProcess - add SetEmModel(index) add SetFluctModel() -11 January 07: V.Ivant +11 January 07: V.Ivant - G4LossTableManager - fix problen of initialisation - G4VEmEnergyLossProcess - fix subcutoff option for bremsstrahlung @@ -2449,7 +2489,7 @@ G4LossableBuilder - use more precise algorith to compute range for the 29 Septenber 06: V.Ivant (emutils-V08-01-04) - G4EmCalculator add computation of smoothing factor for dedx of hadrons/ions - + 13 September 06: mma (emutils-V08-01-03) - G4VEmProcess: add function SetModel( G4VEmModel* ) @@ -2462,7 +2502,7 @@ G4LossableBuilder - use more precise algorith to compute range for the 05 July 06: V.Ivant (emutils-V08-01-00) - G4LossTableManager - do not clear loss table map to avoid crash for - activate/desactivate regime with ion gun, + activate/desactivate regime with ion gun, propagate 'RandomStep' flag to processes 07 June 06: V.Ivant (emutils-V08-00-20) @@ -2479,24 +2519,24 @@ G4LossableBuilder - use more precise algorith to compute range for the 14 May 06: V.Ivant (emutils-V08-00-17) - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - add NumberOfModels method -- G4VEnergyLossProces - add random step sampling and minor fix subcut +- G4VEnergyLossProces - add random step sampling and minor fix subcut 13 May 06: V.Ivant (emutils-V08-00-16) -- G4EmCalculator and G4EmCorrections - add correction from user data +- G4EmCalculator and G4EmCorrections - add correction from user data on stopping power - G4VEnergyLossProcess, G4VEmProcess, G4VMultipleScattering - add GetModelByIndex method 10 May 06: V.Ivant (emutils-V08-00-15) -- G4LossTableMessenger - add command MscStepLimitation +- G4LossTableMessenger - add command MscStepLimitation - G4LOssTableManager - add methods SetMscStepLimitation, FacRange, and MscFlag 04 May 06: V.Ivant (emutils-V08-00-14) -- G4EmCorrections - fix compilation warning at SUN +- G4EmCorrections - fix compilation warning at SUN 28 April 06: V.Ivant (emutils-V08-00-13) -- G4EmCalculator - remove debug output +- G4EmCalculator - remove debug output - G4EmCorrections - add finite size correction, cleanup other - G4ionEffectiveCharge - extend upper limit to 50 MeV @@ -2504,29 +2544,29 @@ G4LossableBuilder - use more precise algorith to compute range for the - G4EmCalculator - fix GetCrossSectionPerVolume problem for gamma 10 April 06: V.Ivant (emutils-V08-00-11) -- Add flag of LPM effect to G4LossTableMessenger, G4LossTableManager and +- Add flag of LPM effect to G4LossTableMessenger, G4LossTableManager and G4EmProcessOptions -- fix problem of activate/desactvate in G4LossTableManager +- fix problem of activate/desactvate in G4LossTableManager 29 March 06: V.Ivant (emutils-V08-00-10) - G4LossTableBuilder fix compilation warning at g++3.4.4 28 March 06: V.Ivant (emutils-V08-00-09) - G4VEnergyLossProcess - add store energy loss tables for bremsstrahlung -- G4LossTableBuilder & G4LossTableManager - fix logic to ensure rebuild PhysicsTable +- G4LossTableBuilder & G4LossTableManager - fix logic to ensure rebuild PhysicsTable in the regime activate/desactivate processes - G4VEmProcess - fix printout 23 March 06: V.Ivant (emutils-V08-00-08) - G4VEnergyLossProcess add SetDynamicMassCharge (used by ionIonisation) - use flag isIonisation AlongStep, PrintInfo, and StoreTables + use flag isIonisation AlongStep, PrintInfo, and StoreTables - G4LossTableManager set flag isIonisation for processes - G4EmCalculator add public methods ComputeTotalDEDX, ComputeElectronicDEDX update GetDEDX for ions 14 March 06 (mma) (emutils-V08-00-07) - corrections in G4EmCalculator::GetCrossSectionPerVolume, - GetCrossSectionPerAtom, ComputeCrossSectionPerAtom + GetCrossSectionPerAtom, ComputeCrossSectionPerAtom 07 March 06: V.Ivant (emutils-V08-00-06) - Complete design iteration for msc (V.Ivanchenko) @@ -2538,24 +2578,24 @@ G4LossableBuilder - use more precise algorith to compute range for the 17 February 06: V.Ivant (emutils-V08-00-04) - G4VmultipleScattering - Lambda table keep cross section not mfp - remove obsolete interface G4VSCProcessor.hh - + 06 February 06 mma (emutils-V08-00-03) - Added function G4VEmModel::ComputeMeanFreePath() (mma) - + 01 February 06 - G4VEmProcess::ComputeCrossSectionPerAtom(): put default value A=0, G4VEmModel::ComputeCrossSectionPerAtom(): put default value A=0, to keep compatibility with v5.2 (mma) - + 26 January 06: V.Ivant (emutils-V08-00-02) - add method GetRangeFromRestricteDEDX for later replacement of GetRange(VI) -- G4VEnergyLossProcess - improve cout (VI) -- G4VEnergyLossProcess - Fix subcutoff simulation (VI) +- G4VEnergyLossProcess - improve cout (VI) +- G4VEnergyLossProcess - Fix subcutoff simulation (VI) 20 January 06: V.Ivant (emutils-V08-00-01) - Add G4EmTableType.hh enumerator (VI) - Use G4EmTableType to reduce methods with practically identical code (VI) -- G4VEnergyLossProcess - recalculation of presafety for subcutoff +- G4VEnergyLossProcess - recalculation of presafety for subcutoff update energy constrain for subcutoff add energy correction to subcutoff (VI) @@ -2577,7 +2617,7 @@ G4LossableBuilder - use more precise algorith to compute range for the 26 November 05: V.Ivant (emutils-V07-01-11) - G4EmCalculator - upgrade printout - G4EmCorrection - fix on calculation of effective charge and Mott correction - for heavy ions + for heavy ions 15 November 05: V.Ivant (emutils-V07-01-10) - G4EnergyLossMessenger: migration to @@ -2585,8 +2625,8 @@ G4LossableBuilder - use more precise algorith to compute range for the 28 October 05: V.Ivant (emutils-V07-01-09) - Fix problem in G4EmCalculator in ComputeDEDX for ions - Provide subcutoff regime inside G4VEnergyLossProcess - do not - use G4VSubCutoffProcessor anymore -- update subcutoff set method inside G4EmProcessOptions + use G4VSubCutoffProcessor anymore +- update subcutoff set method inside G4EmProcessOptions 27 October 05: V.Ivant (emutils-V07-01-08) - add virtual method MscStepLimitation() to G4VMultipleScattering @@ -2595,17 +2635,17 @@ G4LossableBuilder - use more precise algorith to compute range for the 25 October 05: V.Ivant (emutils-V07-01-07) - G4VEmModel.cc - default energy range from 0.1*keV to 100*TeV to make easier initialisation of PAI models - -17 October 05: L.Urban (emutils-V07-01-06) + +17 October 05: L.Urban (emutils-V07-01-06) - G4VEnergyLossProcess.cc: protection againg 0 mean loss removed, effect cured in standard/G4UniversalFluctuation 07 October 05: L.Urban (emutils-V07-01-05) -- G4VMultipleScattering.hh: error in a protection in GetContinuousStepLimit +- G4VMultipleScattering.hh: error in a protection in GetContinuousStepLimit corrected. Must cowork with emstand-V07-01-14 - + 05 October 05: L.Urban (emutils-V07-01-04) -- G4VEnergyLossProcess: added protection against mean_energy_loss = 0 +- G4VEnergyLossProcess: added protection against mean_energy_loss = 0 04 September 05: V.Ivant (emutils-V07-01-03) - G4VEnergyLossProcess, G4VEmProcess: default lambdaFactor 0.8 @@ -2614,7 +2654,7 @@ G4LossableBuilder - use more precise algorith to compute range for the - This tag is 7.1 + bug fixes - G4VEnergyLossProcess: Integral=true; SetStepFunction(0.2, 1*mm) fix a problem #780 connected with d-electron production tmax < cut -- G4EmManager - fix a cut calculation for e+e- pair +- G4EmManager - fix a cut calculation for e+e- pair 12 August 05: mma (emutils-V07-01-01) - G4VEnergyLossProcess: Integral=false; SetStepFunction(0.2, 0.1*mm) @@ -2626,7 +2666,7 @@ G4LossableBuilder - use more precise algorith to compute range for the 27 May 05: V.Ivant (utils-V07-00-13) - Fix problem observed for second run after adding/removal materials -- Fix compilation warning at SUN in G4EmCalculator and G4EmCorrections; +- Fix compilation warning at SUN in G4EmCalculator and G4EmCorrections; 18 May 05: V.Ivant (utils-V07-00-12) - fix calculation of CrossSection without /run/initialise @@ -2637,7 +2677,7 @@ G4LossableBuilder - use more precise algorith to compute range for the 09 May 05: V.Ivant (utils-V07-00-10) - Bux fixes in G4VEmProcess, G4VEmModel, G4EmCorrections - + 03 May 05: V.Ivant (utils-V07-00-09) - fabs -> std::abs @@ -2731,31 +2771,31 @@ G4LossableBuilder - use more precise algorith to compute range for the 14 October 04: V.Ivanchenko (utils-V06-02-10) - Bug fix in effective charge sampling - + 27 september 04: L.Urban (utils-V06-02-09) -- G4Mscmodel.cc: change in the tail of the angular distribution, +- G4Mscmodel.cc: change in the tail of the angular distribution, contributing to step independance. 13 September 04: V.Ivanchenko (utils-V06-02-08) - Extend G4BraggModel below 1 keV - Add verbose for G4EmCalculator - Fix problem of integral regime for cross sections with more - than 1 peak + than 1 peak 26 Augest 04: V.Ivanchenko (utils-V06-02-07) - Update G4EmCalculator class - add protections and cleanup - Fix effective charge for He4 - Fix deuteron energy loss - For G4VEnergyLossProcess and G4VMultipleScattring introduce new methods - to perform initialisation in both cases Build or Retrieve tables - + to perform initialisation in both cases Build or Retrieve tables + 17 August 04: L.Urban (utils-V06-02-06) -- Name of data member facxsi changed to factail together with the corresponding +- Name of data member facxsi changed to factail together with the corresponding set function. - Changes in the angle distribution (slightly modified Highland formula for the - width of the central part, changes in the numerical values of some other + width of the central part, changes in the numerical values of some other parameters) ---> approximately step independent distribution. - + 06 Augest 04: V.Ivanchenko (utils-V06-02-05) - Change names of private member functions to make they be more clear - Optimise MFP and step limit calculation @@ -2770,19 +2810,19 @@ G4LossableBuilder - use more precise algorith to compute range for the of particle cathegory on G4Material - Add G4EmCalculator - a class to access/calculate dedx, range, cross sections of EM processes -- Add G4ionEffectiveCharge class needed both to ion physics and +- Add G4ionEffectiveCharge class needed both to ion physics and G4EmCalculator 23 July 04: V.Ivanchenko (utils-V06-02-03) -- Fix a problem of cut dependence of transmission energy of low energy e- +- Fix a problem of cut dependence of transmission energy of low energy e- via thin foil 21 July 04: V.Ivanchenko (utils-V06-02-02) - Fix a problem tried after desactivation of muon ionisation - + 19 July 04: mma (utils-V06-02-01) - G4MscModel.cc: correction in SampleCosineTheta in order to avoid - num. precision problems at high energy/small step(L.Urban) + num. precision problems at high energy/small step(L.Urban) 05 July 04: V.Ivanchenko (utils-V06-02-00) - Fix a problem of G4VEnergyLossProcess seen for ions at small cuts in range @@ -2809,18 +2849,18 @@ G4LossableBuilder - use more precise algorith to compute range for the 26 April 04: V.Ivanchenko (utils-V06-01-03) - Reduce aria of applicability of the model for simulation of fluctuations at very small steps to provide less step dependent - results. + results. 23 April 04: L.Urban (utils-V06-01-02) -- changes in G4MscModel: t->z and z->t transformations (true length - to geometrical length and back) have been completely rewritten, +- changes in G4MscModel: t->z and z->t transformations (true length + to geometrical length and back) have been completely rewritten, change in the angular distribution for e+/e- ( correction to the Highland formula) + some technical changes ==> results are closer to data, step dependence decreased. Effect the resolution of sampling calorimeters 05 April 04: V.Ivant (utils-V06-01-01) -- G4VEnergyLossProcess: Update calulation of energy loss from tables +- G4VEnergyLossProcess: Update calculation of energy loss from tables (important for proton energies about 1 MeV); - Fluctuations: smooth out sampling of Gaussian fluctuations, when sigma is much bigger than energy loss. @@ -2828,28 +2868,28 @@ G4LossableBuilder - use more precise algorith to compute range for the 31 March 04: V.Ivant (utils-V06-01-00) - G4VEnergyLossProcess: Fix a problem of retrieve tables if PreciseRange is absent - + 15 March 04: V.Ivant (utils-V06-00-09) - G4VEnergyLossProcess: Fix a problem of energy below lowestKinEnergy - + 15 March 04: mma (utils-V06-00-08) - + 12 March 04: V.Ivant - G4VEnergyLossProcess: put back lowestKinEnergy = 1.*eV; - + 10 March 04: V.Ivant - G4LossTableManager.cc: fix a problem of Precise Range table - G4VEnergyLossProcess: fix problem of step limit calculation - + 10 March 04: L.Urban - G4MscModel: changes in data members, corrections in GeomPathLength,TrueStepLength, SampleCosineTheta - + 06 March 04: V.Ivant (utils-V06-00-07) - fix a bug in link at SUN 01 March 04: V.Ivant (utils-V06-00-06) -- fixes of bugs coming with transition to model variant of msc +- fixes of bugs coming with transition to model variant of msc and simplifications of calculation of energy dependence of internal parameters (L.Urban) @@ -2890,7 +2930,7 @@ G4LossableBuilder - use more precise algorith to compute range for the 26 Nov 03: L.Urban - Bugfix in G4VMultipleScattering:AlongStepDoIt + G4MscModel - truestep <= range + truestep <= range 25 Nov 03: V.Ivant (utils-V05-02-16) - Fix wrong deletion and error in SetRangeTable @@ -2899,28 +2939,28 @@ G4LossableBuilder - use more precise algorith to compute range for the - Fix crash for case of inactivated ionisation and bremsstrahlung 13 Nov 03: V.Ivant (utils-V05-02-14) -- Fix negative energy loss +- Fix negative energy loss 11 Nov 03: V.Ivant (utils-V05-02-13) - Update printout in RetrievePhysicsTable - Substitute G4VEnergyLossSTD by G4VEnergyLossProcess -- For ions update ionisation (V.Ivanchenko) and multiple scattering (L.Urban) +- For ions update ionisation (V.Ivanchenko) and multiple scattering (L.Urban) 10 Nov 03: Urban - highKinEnergy is set back to 100 TeV for multiple scattering - number of table bins set to 120 " - small change in the tail of the angular distribution (after tuning!) -- code cleaning in G4MscModel.cc +- code cleaning in G4MscModel.cc 07 Nov 03: mma (utils-V05-02-12) - Fix problem of rounding of double in G4UniversalFluctuations - Fix precision problems for high energy (PeV) particles - change in the tail of the angular distribution - highKinEnergy is set to 100 PeV - + 03 Nov 03: V.Ivant (utils-V05-02-11) - Remove STD processes -- Fix problem of RetrievePhysicsTable +- Fix problem of RetrievePhysicsTable 30 Oct 03: G.Cosmo (utils-V05-02-10) - Fixed compilation problem on Windows in G4LossTableManager.cc for multiple @@ -2932,7 +2972,7 @@ G4LossableBuilder - use more precise algorith to compute range for the 20 Oct 03: V.Ivant (utils-V05-02-08) - Minor change of interface to G4EmFluctuationModel for PAI development -- Update logic of the messenger and G4LossTableManager to provide independence +- Update logic of the messenger and G4LossTableManager to provide independence on command sequence - Increase verbosity for store/retrieve tables @@ -2967,16 +3007,16 @@ G4LossableBuilder - use more precise algorith to compute range for the 07 August 03: V.Ivant (utils-V05-02-01) - Update of the ion fluctuation model -- Update design - STD processes can be mixed in physics list with +- Update design - STD processes can be mixed in physics list with old processes - Tunning of msc model: fix poblems for width and for tails of distribution - for the STD variant + for the STD variant 24 July 03: V.Ivant (utils-V05-02-00) -Update model interface - substitute G4Material by G4MaterialCutsCouple in dE/dx and CrossSection methods -Add Set methods to energy range of msc table --Add method to change the nergy range of model +-Add method to change the nergy range of model -Add possibility to have STD and other processes in the same physics list 16 June 03: V.Ivant (utils-V05-01-07) @@ -2984,7 +3024,7 @@ G4LossableBuilder - use more precise algorith to compute range for the 04 June 03: V.Ivant (utils-V05-01-06) - Fix compilation warnings -- Update STD initialisation +- Update STD initialisation 28 May 03: V.Ivant (utils-V05-01-05) - Remove absolete msc STD classes and add msc model (V.Ivanchenko) @@ -3012,7 +3052,7 @@ G4LossableBuilder - use more precise algorith to compute range for the kind for e+/e-) --> small change in the width for low to medium energy (protons - 1 MeV - few hundred MeV) but change up to 20 -25 % for high energy. -- minor correction in the angle sampling algorithm, affects +- minor correction in the angle sampling algorithm, affects e+/e- too --> small change for very small and very big stepsize/range values. @@ -3042,7 +3082,7 @@ G4LossableBuilder - use more precise algorith to compute range for the - Add DeRegister to STD loss classes - Add G4VMultipleScattering - Remove STD messenger - + 26 Mar 03: V.Ivant (utils-V05-00-07) - Add GetDEDXDispersion to STD loss tables @@ -3081,7 +3121,7 @@ G4LossableBuilder - use more precise algorith to compute range for the 07 feb 03: V.Ivant - fix problem in fluctuations for STD -06 feb 03: L.Urban +06 feb 03: L.Urban - important modifications in MSC (both in old design and model version) - changes in data members @@ -3094,10 +3134,10 @@ G4LossableBuilder - use more precise algorith to compute range for the - Subsitute Material by MaterialCutsCouple for PostStep STD 24 jan 03: V.Ivant (utils-V05-00-01) -- Migration to "cut per region" +- Migration to "cut per region" 06 jan 03: V.Ivant (utils-V05-00-00) -- Update interfaces to STD classes in order to be ready to migrade +- Update interfaces to STD classes in order to be ready to migrade to "cut per region" 12 dec 02: V.Ivant (utils-V04-01-12) @@ -3110,17 +3150,17 @@ G4LossableBuilder - use more precise algorith to compute range for the - Merged changes for new G4ApplicationState in messengers. 04 dec 02: V.Ivant (utils-V04-01-09) -- STD processes: fix model selection + delta-electron spectra +- STD processes: fix model selection + delta-electron spectra 11 nov 02: V.Ivant (utils-V04-01-08) -- G4VEnergyLoss: return back previous fluctuation model - +- G4VEnergyLoss: return back previous fluctuation model + 30 oct 02: mma (utils-V04-01-07) -- G4MultipleScattering: modified angle distribution, mods in boundary +- G4MultipleScattering: modified angle distribution, mods in boundary algorithm, changes in data members, rename variable cm -> Ecm This new parametrisation improves the ~100 MeV proton scattering. - propagated to G4MultipleScatteringSTD -- G4VEnergyLoss: minor changes in fluctuations +- G4VEnergyLoss: minor changes in fluctuations 28 oct 02: V.Ivanchenko (utils-V04-01-06) - fix in G4MultipleScattringSTD + cleanup warnings in STD classes @@ -3128,20 +3168,20 @@ G4LossableBuilder - use more precise algorith to compute range for the 17 oct 02: V.Ivant (utils-V04-01-05) - temporary fix for proton scattering propagated in MultipleScatteringSTD - Few changes in LossTableBuilder - + 16 oct 02: Laszlo (utils-V04-01-04) - temporary fix for proton scattering - + 15 oct 02: V.Ivant (utils-V04-01-03) - redesign for a Model approach: files processNameSTD and processNameModel - + 26 sep 02: Laszlo (utils-V04-01-02) - angle distribution modified - minor changes in boundary algorithm - + 12 aug 02: Laszlo (utils-V04-01-01) - bug fixed in PostStepDoIt (lateral displacement) - + 06 aug 02: V.Ivanchenko (utils-V04-01-00) G4VEnergyLoss: Fix at low energies - if tmax below ionisation potential then only Gaussian fluctuations are sampled. @@ -3150,33 +3190,33 @@ G4VEnergyLoss: Fix at low energies - if tmax below ionisation potential - important bug fixed in G4MultipleScattering.cc ComputeTransportCrossSection. The bug affected the scattering for all the low energy ( <~ few hundred MeV) heavy particles. - + 24 may 02: Laszlo (utils-V04-00-07) - G4MultipleScattering.hh,.cc: mods in angle distribution and - in boundary algorithm + in boundary algorithm 06 may 02: Laszlo (utils-V04-00-06) - G4MultipleScattering.cc :bug fixed in GetContinuousStepLimit - + 24 apr 02: Laszlo (utils-V04-00-05) - G4MultipleScattering.hh,.cc have been committed: some minor changes in boundary algorithm to improve the backscattering. - + 22 apr 02: Laszlo (utils-V04-00-04) - G4MultipleScattering.hh,.cc have been committed: boundary algorithm has been modified resulting improvement ~10% in the performance (with the same physics). - + 17 apr 02: Laszlo (utils-V04-00-03) - G4MultipleScattering.hh,.cc have been committed: - new parametrisation for angle distribution. + new parametrisation for angle distribution. boundary algorithm has been modified + some other (minor) changes. 26 feb 02: mma (utils-V04-00-02) - initial value of data member of G4VEnergyLoss finalRange = 1 mm (actual value of this data member is computed in G4VeEnergyLoss,G4VhEnergyLoss and G4VMuEnergyLoss.) - + 14 feb 02: L.Urban (utils-V04-00-01) - initial value of data member of G4VEnergyLoss finalRange has been changed @@ -3185,19 +3225,19 @@ G4VEnergyLoss: Fix at low energies - if tmax below ionisation potential 11 feb 02: mma (utils-V04-00-00) - subSecFlag = false --> No sucutoff generation - + 08 nov 01: mma (utils-V03-02-11) - G4VEnergyLoss: some data members and functions are no more static - + 07 nov 01: mma (utils-V03-02-10) - bug fixe in G4MultipleScattering::PostStepDoIt() - + 29 oct 01: mma (utils-V03-02-09) - static functions no more inlined - + 24 oct 01: mma (utils-V03-02-08) - cut per material: G4VEnergyLoss - + 28 sep 01: mma (utils-V03-02-07) - StorePhysicsTable: ParticleName included in FileName @@ -3209,47 +3249,47 @@ G4VEnergyLoss: Fix at low energies - if tmax below ionisation potential 19 sep 01: mma (utils-V03-02-05) - come back to previous process name: "msc" - + 17 sep 01: mma (utils-V03-02-04) - modifs in muls and VEnergyLoss for the migration of Materials to pure STL, - but backward compatible with g4rw - + but backward compatible with g4rw + 13 sep 01: L.Urban (utils-V03-02-03) - Unused TrueToGeomTransformation method deleted. Class description - corr. in ComputeTransportCrossSection - + 11 sep 01: L.Urban (utils-V03-02-02) - G4MultipleScatteringx put as the default: G4MultipleScattering - + 11 sep 01: L.Urban (utils-V03-02-01) -- last tag with G4MultipleScatteringx file. - +- last tag with G4MultipleScatteringx file. + 03 sep 01: L.Urban (utils-V03-02-00) - value of data member factlim has been changed. - + 28 aug 01: mma - G4MultipleScatteringx: small modifs in BuildPhysicsTable, - ComputeTransportCrossSection, PostStepDoIt. + ComputeTransportCrossSection, PostStepDoIt. GetContinuousStepLimit and AlongStepDoIt moved to .cc file 23 aug 01: L. Urban - new angle and z(geom. pathlength) distributions, energy (step) dependence has been reduced, Store/Retrieve methods have been commented out temporarily - + 8 aug 01: mma - G4MultipleScatteringx: methods to store/retrieve PhysicsTable 18 may 01: V.Ivanchenko (utils-V03-01-01) - clean up againist Linux ANSI strict compilation mode. - + 16 may 01: L.Urban (utils-V03-01-00) - value of the member cpar has been changed back to the original value 1.5 in G4MultipleScattering.cc. The same is done in G4MultipleScatteringx.cc (the data member name is cparm there). This change affects all the results for low energy (< 1 MeV for electrons). - + 15 may 01: L.Urban - new multiple scattering version committed under the class name G4MultipleScatteringx. It gives better msc angle distribution @@ -3259,9 +3299,9 @@ G4VEnergyLoss: Fix at low energies - if tmax below ionisation potential stepping near to a boundary (this algorithm works, but some further development/tuning needed - this algorithm is disabled by default). This new version can be used after the change: - G4MultipleScattering --> G4MultipleScatteringx - in the PhysicsList. - + G4MultipleScattering --> G4MultipleScatteringx + in the PhysicsList. + 27 mar 01: L.Urban (utils-V03-00-06) - another bug fixed in G4VEnergyLoss.cc, in the fluct code. The code gave in some cases (very rarely) small negative energy loss @@ -3272,32 +3312,32 @@ G4VEnergyLoss: Fix at low energies - if tmax below ionisation potential Some int internal variables have been changed to doubles, anomaly at extreme high energy/high cut (zero energy deposit) is cured. - + 05 mar 01 mma (utils-V03-00-04) - new subdirectory: integral migration of all G4I.. processes from muons, standard, utils into integral - + 01 feb 01: L.Urban (utils-V03-00-01) - bug fixed in the fluctuation code , in G4VEnergyLoss.cc This bug affected the width of the energy loss/energy deposit distribution in the case of small cut value, the distribution was too narrow.... - + 16 jan 01: mma (utils-V03-00-00) -- bug fixed in MultipleScattering.cc L.Urban 11-01-01 +- bug fixed in MultipleScattering.cc L.Urban 11-01-01 there was an error in computation of the transport cross section, the cross section was too small for low energy (below few MeV for electrons) - + 09 nov 00: mma (utils-V02-00-04) -- G4EnergyLossMessenger : subdirectory /process/eLoss created +- G4EnergyLossMessenger : subdirectory /process/eLoss created + class description - + 04 nov 00: mma (utils-V02-00-03) - EnergyLossTable: const G4Material* in all functions - G4VEnergyLoss and Messenger slighy modified for more flexibility only (Laszlo) - + 11 aug 00: mma (utils-V02-00-01) 03 aug 00: gc @@ -3307,24 +3347,24 @@ G4VEnergyLoss: Fix at low energies - if tmax below ionisation potential 22 jun 00: mma (utils-V01-01-03) - muls: do not nuclear size correction for electron - move Eloss messenger --> G4VEnergyLoss - + 24 may 00: mma (utils-V01-01-02) -- merge "plus" processes into standard - +- merge "plus" processes into standard + 27 apr 00 mma (em-V01-01-01) -- G4endl (dec/iso) - +- G4endl (dec/iso) + 26 apr 00 mma (em-V01-01-00) -- all EnergyLoss classes renamed G4V... +- all EnergyLoss classes renamed G4V... Most classes in standard and muons affected. - G4Muls moved in utils -- bugs fixe in MuPairProduction +- bugs fixe in MuPairProduction - cowork with geant4-01-01-ref-02 - + 02 mar 00 mma (em-V01-00-00) - new G4VEnergyLoss class and related structure - cowork with geant4-01-00-ref-06 - + 10 nov 99 mma (em-V00-01-03) - migration to STL: remove RWT hash dictionnary diff --git a/source/processes/electromagnetic/utils/include/G4ElectronIonPair.hh b/source/processes/electromagnetic/utils/include/G4ElectronIonPair.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/utils/include/G4EmDataHandler.hh b/source/processes/electromagnetic/utils/include/G4EmDataHandler.hh index 7dcfe81f46..c3cd1796fd 100644 --- a/source/processes/electromagnetic/utils/include/G4EmDataHandler.hh +++ b/source/processes/electromagnetic/utils/include/G4EmDataHandler.hh @@ -57,6 +57,7 @@ class G4ParticleDefinition; class G4VEmProcess; +class G4VEnergyLossProcess; class G4EmDataHandler { diff --git a/source/processes/electromagnetic/utils/include/G4EmModelManager.hh b/source/processes/electromagnetic/utils/include/G4EmModelManager.hh index 9ac44581e1..40804c71ba 100644 --- a/source/processes/electromagnetic/utils/include/G4EmModelManager.hh +++ b/source/processes/electromagnetic/utils/include/G4EmModelManager.hh @@ -191,6 +191,10 @@ public: // total number of models inline G4int NumberOfModels() const; + // hide assignment operator + G4EmModelManager(G4EmModelManager &) = delete; + G4EmModelManager & operator=(const G4EmModelManager &right) = delete; + private: inline G4double ComputeDEDX(G4VEmModel* model, @@ -199,15 +203,8 @@ private: G4double cutEnergy, G4double minEnergy); - // hide assignment operator - - G4EmModelManager(G4EmModelManager &) = delete; - G4EmModelManager & operator=(const G4EmModelManager &right) = delete; - // ===================================================================== -private: - const G4DataVector* theCuts; G4DataVector* theCutsNew; G4DataVector* theSubCuts; diff --git a/source/processes/electromagnetic/utils/include/G4EmParameters.hh b/source/processes/electromagnetic/utils/include/G4EmParameters.hh index 6b89b6becc..feb862b385 100644 --- a/source/processes/electromagnetic/utils/include/G4EmParameters.hh +++ b/source/processes/electromagnetic/utils/include/G4EmParameters.hh @@ -62,6 +62,13 @@ #include "G4Threading.hh" #include +enum G4eSingleScatteringType + { + fWVI = 0, + fMott, + fDPWA + }; + class G4EmParametersMessenger; class G4EmExtraParameters; class G4EmLowEParameters; @@ -207,6 +214,8 @@ public: void SetBremsstrahlungTh(G4double val); G4double BremsstrahlungTh() const; + void SetMuHadBremsstrahlungTh(G4double val); + G4double MuHadBremsstrahlungTh() const; void SetLambdaFactor(G4double val); G4double LambdaFactor() const; @@ -278,6 +287,9 @@ public: void SetMscMuHadStepLimitType(G4MscStepLimitType val); G4MscStepLimitType MscMuHadStepLimitType() const; + void SetSingleScatteringType(G4eSingleScatteringType val); + G4eSingleScatteringType SingleScatteringType() const; + void SetNuclearFormfactorType(G4NuclearFormfactorType val); G4NuclearFormfactorType NuclearFormfactorType() const; @@ -395,6 +407,7 @@ private: G4double lowestTripletEnergy; G4double linLossLimit; G4double bremsTh; + G4double bremsMuHadTh; G4double lambdaFactor; G4double factorForAngleLimit; G4double thetaLimit; @@ -417,6 +430,7 @@ private: G4MscStepLimitType mscStepLimit; G4MscStepLimitType mscStepLimitMuHad; G4NuclearFormfactorType nucFormfactor; + G4eSingleScatteringType fSStype; #ifdef G4MULTITHREADED static G4Mutex emParametersMutex; diff --git a/source/processes/electromagnetic/utils/include/G4EmParametersMessenger.hh b/source/processes/electromagnetic/utils/include/G4EmParametersMessenger.hh index d23b00328e..a2f38e6b10 100644 --- a/source/processes/electromagnetic/utils/include/G4EmParametersMessenger.hh +++ b/source/processes/electromagnetic/utils/include/G4EmParametersMessenger.hh @@ -110,6 +110,7 @@ private: G4UIcmdWithADoubleAndUnit* lowhEnCmd; G4UIcmdWithADouble* lllCmd; G4UIcmdWithADoubleAndUnit* brCmd; + G4UIcmdWithADoubleAndUnit* br1Cmd; G4UIcmdWithADouble* labCmd; G4UIcmdWithADouble* mscfCmd; G4UIcmdWithADoubleAndUnit* angCmd; @@ -134,6 +135,7 @@ private: G4UIcmdWithAString* mscCmd; G4UIcmdWithAString* msc1Cmd; G4UIcmdWithAString* nffCmd; + G4UIcmdWithAString* ssCmd; G4UIcommand* dumpCmd; diff --git a/source/processes/electromagnetic/utils/include/G4EmProcessSubType.hh b/source/processes/electromagnetic/utils/include/G4EmProcessSubType.hh index 7b1adce68f..5a5a2cca6c 100644 --- a/source/processes/electromagnetic/utils/include/G4EmProcessSubType.hh +++ b/source/processes/electromagnetic/utils/include/G4EmProcessSubType.hh @@ -60,11 +60,14 @@ enum G4EmProcessSubType fGammaConversion = 14, fGammaConversionToMuMu = 15, fGammaGeneralProcess = 16, + fPositronGeneralProcess = 17, fCerenkov = 21, fScintillation = 22, fSynchrotronRadiation = 23, - fTransitionRadiation = 24 + fTransitionRadiation = 24, + + fSurfaceReflection = 25 }; #endif diff --git a/source/processes/electromagnetic/utils/include/G4EmSaturation.hh b/source/processes/electromagnetic/utils/include/G4EmSaturation.hh old mode 100755 new mode 100644 index e0f1b6a5da..7369da7e71 --- a/source/processes/electromagnetic/utils/include/G4EmSaturation.hh +++ b/source/processes/electromagnetic/utils/include/G4EmSaturation.hh @@ -94,7 +94,7 @@ public: // dump G4 list void DumpG4BirksCoefficients(); - // this method should not be overwitten + // this method should not be overwritten inline G4double VisibleEnergyDepositionAtAStep(const G4Step*) const; inline void SetVerbose(G4int); diff --git a/source/processes/electromagnetic/utils/include/G4LossTableManager.hh b/source/processes/electromagnetic/utils/include/G4LossTableManager.hh index 1bf6a044f4..6ebe93c457 100644 --- a/source/processes/electromagnetic/utils/include/G4LossTableManager.hh +++ b/source/processes/electromagnetic/utils/include/G4LossTableManager.hh @@ -223,9 +223,13 @@ public: inline G4VEmProcess* GetGammaGeneralProcess(); - inline void SetElectronGeneralProcess(G4VEnergyLossProcess*); + inline void SetElectronGeneralProcess(G4VEmProcess*); - inline G4VEnergyLossProcess* GetElectronGeneralProcess(); + inline G4VEmProcess* GetElectronGeneralProcess(); + + inline void SetPositronGeneralProcess(G4VEmProcess*); + + inline G4VEmProcess* GetPositronGeneralProcess(); private: @@ -294,7 +298,8 @@ private: G4EmParameters* theParameters; G4VEmProcess* gGeneral; - G4VEnergyLossProcess* eGeneral; + G4VEmProcess* eGeneral; + G4VEmProcess* pGeneral; G4int verbose; }; @@ -431,20 +436,32 @@ inline G4VEmProcess* G4LossTableManager::GetGammaGeneralProcess() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -inline -void G4LossTableManager::SetElectronGeneralProcess(G4VEnergyLossProcess* ptr) +inline void G4LossTableManager::SetElectronGeneralProcess(G4VEmProcess* ptr) { eGeneral = ptr; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... -inline G4VEnergyLossProcess* G4LossTableManager::GetElectronGeneralProcess() +inline G4VEmProcess* G4LossTableManager::GetElectronGeneralProcess() { return eGeneral; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... +inline void G4LossTableManager::SetPositronGeneralProcess(G4VEmProcess* ptr) +{ + pGeneral = ptr; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +inline G4VEmProcess* G4LossTableManager::GetPositronGeneralProcess() +{ + return pGeneral; +} +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + #endif diff --git a/source/processes/electromagnetic/utils/include/G4NIELCalculator.hh b/source/processes/electromagnetic/utils/include/G4NIELCalculator.hh old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/utils/include/G4OpticalParameters.hh b/source/processes/electromagnetic/utils/include/G4OpticalParameters.hh new file mode 100644 index 0000000000..2977e5457b --- /dev/null +++ b/source/processes/electromagnetic/utils/include/G4OpticalParameters.hh @@ -0,0 +1,272 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// ------------------------------------------------------------------- +// +// GEANT4 Class header file +// +// File name: G4OpticalParameters +// +// Author: Daren Sawkey based on G4EmParameters +// +// Creation date: 14.07.2020 +// +// Modifications: +// +// +// Class Description: +// +// A utility static class, responsable for keeping parameters +// for all optical physics processes and models. +// +// It is initialized by the master thread but can be updated +// at any moment. Parameters may be used in run time or at +// initialisation +// +// ------------------------------------------------------------------- +// + +#ifndef G4OpticalParameters_h +#define G4OpticalParameters_h 1 + +#include "globals.hh" +#include "G4ios.hh" +#include "G4ThreeVector.hh" +#include "G4Threading.hh" +#include + +class G4OpticalParametersMessenger; +class G4StateManager; + +enum G4OpticalProcessIndex { + kCerenkov, ///< Cerenkov process index + kScintillation, ///< Scintillation process index + kAbsorption, ///< Absorption process index + kRayleigh, ///< Rayleigh scattering process index + kMieHG, ///< Mie scattering process index + kBoundary, ///< Boundary process index + kWLS, ///< Wave Length Shifting process index + kWLS2, ///< Second Wave Length Shifting process index + kNoProcess ///< Number of processes, no selected process +}; + +/// Return the name for a given optical process index +G4String G4OpticalProcessName(G4int ); + +inline +G4String G4OpticalProcessName(G4int processNumber) +{ + switch ( processNumber ) { + case kCerenkov: return "Cerenkov"; + case kScintillation: return "Scintillation"; + case kAbsorption: return "OpAbsorption"; + case kRayleigh: return "OpRayleigh"; + case kMieHG: return "OpMieHG"; + case kBoundary: return "OpBoundary"; + case kWLS: return "OpWLS"; + case kWLS2: return "OpWLS2"; + default: return "NoProcess"; + } +} + + + +class G4OpticalParameters +{ +public: + + static G4OpticalParameters* Instance(); + + ~G4OpticalParameters(); + + void SetDefaults(); + + // printing + void StreamInfo(std::ostream& os) const; + void Dump() const; + friend std::ostream& operator<< (std::ostream& os, const G4OpticalParameters&); + + void SetVerboseLevel(G4int); + G4int GetVerboseLevel() const; + + void SetProcessActivation(const G4String&, G4bool); + G4bool GetProcessActivation(const G4String&) const; + + // DEPRECATED, use Set/GetProcessActivation instead + void Configure(G4OpticalProcessIndex, G4bool); + G4bool GetConfiguration(G4OpticalProcessIndex); + + // DEPRECATED, use Set/GetCerenkovTrackSecondariesFirst and + // Set/GetScintTrackSecondariesFirst instead + void SetTrackSecondariesFirst(G4OpticalProcessIndex, G4bool); + G4bool GetTrackSecondariesFirst(G4OpticalProcessIndex); + + // Cerenkov + void SetCerenkovMaxPhotonsPerStep(G4int); + G4int GetCerenkovMaxPhotonsPerStep() const; + void SetCerenkovVerboseLevel(G4int); + G4int GetCerenkovVerboseLevel() const; + void SetCerenkovMaxBetaChange(G4double); + G4double GetCerenkovMaxBetaChange() const; + void SetCerenkovTrackSecondariesFirst(G4bool); + G4bool GetCerenkovTrackSecondariesFirst() const; + void SetCerenkovStackPhotons(G4bool); + G4bool GetCerenkovStackPhotons() const; + + // Scintillation + void SetScintYieldFactor(G4double); + G4double GetScintYieldFactor() const; + void SetScintExcitationRatio(G4double); + G4double GetScintExcitationRatio() const; + void SetScintByParticleType(G4bool); + G4bool GetScintByParticleType() const; + void SetScintTrackInfo(G4bool); + G4bool GetScintTrackInfo() const; + void SetScintTrackSecondariesFirst(G4bool); + G4bool GetScintTrackSecondariesFirst() const; + void SetScintFiniteRiseTime(G4bool); + G4bool GetScintFiniteRiseTime() const; + void SetScintStackPhotons(G4bool); + G4bool GetScintStackPhotons() const; + void SetScintVerboseLevel(G4int); + G4int GetScintVerboseLevel() const; + void SetScintEnhancedTimeConstants(G4bool); + G4bool GetScintEnhancedTimeConstants() const; + + // WLS + void SetWLSTimeProfile(const G4String&); + G4String GetWLSTimeProfile() const; + void SetWLSVerboseLevel(G4int); + G4int GetWLSVerboseLevel() const; + + // WLS2 + void SetWLS2TimeProfile(const G4String&); + G4String GetWLS2TimeProfile() const; + void SetWLS2VerboseLevel(G4int); + G4int GetWLS2VerboseLevel() const; + + // boundary + void SetBoundaryVerboseLevel(G4int); + G4int GetBoundaryVerboseLevel() const; + void SetBoundaryInvokeSD(G4bool); + G4bool GetBoundaryInvokeSD() const; + + // absorption + void SetAbsorptionVerboseLevel(G4int); + G4int GetAbsorptionVerboseLevel() const; + + // rayleigh + void SetRayleighVerboseLevel(G4int); + G4int GetRayleighVerboseLevel() const; + + // mie + void SetMieVerboseLevel(G4int); + G4int GetMieVerboseLevel() const; + +private: + + G4OpticalParameters(); + void Initialise(); + G4bool IsLocked() const; + void PrintWarning(G4ExceptionDescription& ed) const; + static G4OpticalParameters* theInstance; + + G4OpticalParametersMessenger* theMessenger; + G4StateManager* fStateManager; + + G4int verboseLevel; + + // Whether to activate each process + std::map processActivation; + + // cerenkov///////////////// + G4bool cerenkovStackPhotons; + G4bool cerenkovTrackSecondariesFirst; + G4int cerenkovVerboseLevel; + G4int cerenkovMaxPhotons; + G4double cerenkovMaxBetaChange; + + // scintillation ///////////////// + G4double scintYieldFactor; + + /// Note: this is to be removed in the next major release. + /// Use material properties SCINTILLATIONYIELD1, 2, 3 instead + G4double scintExcitationRatio; + + /// option to set a finite rise-time; Note: the G4Scintillation + /// process expects the user to have set the constant material + /// property FAST/SLOWSCINTILLATIONRISETIME + G4bool scintFiniteRiseTime; + + /// option to allow for the light yield to be a function of + /// particle type and deposited energy in case of non-linear + /// light emission in scintillators + G4bool scintByParticleType; + + /// option to allow for G4ScintillationTrackInformation + /// to be attached to a scintillation photon's track + G4bool scintTrackInfo; + + /// option to allow stacking of secondary Scintillation photons + G4bool scintStackPhotons; + + /// new in version 10.7; allow > 2 time constants, and > 1 time + /// constant for scintillation by particle type + G4bool scintEnhancedTimeConstants; + + G4int scintVerboseLevel; + G4bool scintTrackSecondariesFirst; + + ///////////////// WLS + G4String wlsTimeProfileName; + G4int wlsVerboseLevel; + + ///////////////// WLS2 + G4String wls2TimeProfileName; + G4int wls2VerboseLevel; + + //////////////// absorption + G4int absorptionVerboseLevel; + + //////////////// rayleigh + G4int rayleighVerboseLevel; + + //////////////// mie + G4int mieVerboseLevel; + + //////////////// boundary + /// G4OpBoundaryProcess to call InvokeSD method + G4bool boundaryInvokeSD; + G4int boundaryVerboseLevel; + + +#ifdef G4MULTITHREADED + static G4Mutex opticalParametersMutex; +#endif +}; + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +#endif diff --git a/source/physics_lists/constructors/electromagnetic/include/G4OpticalPhysicsMessenger.hh b/source/processes/electromagnetic/utils/include/G4OpticalParametersMessenger.hh similarity index 79% rename from source/physics_lists/constructors/electromagnetic/include/G4OpticalPhysicsMessenger.hh rename to source/processes/electromagnetic/utils/include/G4OpticalParametersMessenger.hh index cdd59c68d7..5ac3a0ad26 100644 --- a/source/physics_lists/constructors/electromagnetic/include/G4OpticalPhysicsMessenger.hh +++ b/source/processes/electromagnetic/utils/include/G4OpticalParametersMessenger.hh @@ -39,16 +39,16 @@ // This class defines commands for the optical physics // -#ifndef G4OpticalPhysicsMessenger_h -#define G4OpticalPhysicsMessenger_h 1 +#ifndef G4OpticalParametersMessenger_h +#define G4OpticalParametersMessenger_h 1 #include "G4UImessenger.hh" -#include "G4OpticalProcessIndex.hh" +//#include "G4OpticalProcessIndex.hh" #include "globals.hh" class G4VProcess; -class G4OpticalPhysics; +class G4OpticalParameters; class G4UIdirectory; class G4UIcmdWithABool; @@ -59,38 +59,35 @@ class G4UIcommand; // Messenger class that defines commands for the optical physics -class G4OpticalPhysicsMessenger: public G4UImessenger +class G4OpticalParametersMessenger: public G4UImessenger { public: - G4OpticalPhysicsMessenger(G4OpticalPhysics*); - virtual ~G4OpticalPhysicsMessenger(); + G4OpticalParametersMessenger(G4OpticalParameters*); + virtual ~G4OpticalParametersMessenger(); // methods virtual void SetNewValue(G4UIcommand*, G4String); private: - /// Not implemented - G4OpticalPhysicsMessenger(); - /// Not implemented - G4OpticalPhysicsMessenger(const G4OpticalPhysicsMessenger& right); - /// Not implemented - G4OpticalPhysicsMessenger& operator=(const G4OpticalPhysicsMessenger& right); + G4OpticalParametersMessenger() = delete; + G4OpticalParametersMessenger(const G4OpticalParametersMessenger& right) = delete; + G4OpticalParametersMessenger& operator=(const G4OpticalParametersMessenger& right) = delete; void Deprecated(void); // data members /// associated class - G4OpticalPhysics* fOpticalPhysics; + G4OpticalParameters* params; /// command directory G4UIdirectory* fDir; G4UIdirectory* fDir2; /// selected optical process - G4OpticalProcessIndex fSelectedProcessIndex; + //G4OpticalProcessIndex fSelectedProcessIndex; /// selectOpProcess command G4UIcommand* fActivateProcessCmd; @@ -103,7 +100,7 @@ private: // Cerenkov - /// setCerenkovMaxPhotons command + // setCerenkovMaxPhotons command G4UIcmdWithAnInteger* fCerenkovMaxPhotonsCmd; G4UIcmdWithAnInteger* fCerenkovMaxPhotons1Cmd; @@ -116,11 +113,11 @@ private: G4UIcmdWithABool* fCerenkovStackPhotons1Cmd; G4UIcmdWithABool* fCerenkovTrackSecondariesFirstCmd; - G4UIcmdWithAnInteger* fCerenkovVerbosityCmd; + G4UIcmdWithAnInteger* fCerenkovVerboseLevelCmd; // Scintillation - /// setScintillationYieldFactor command + // setScintillationYieldFactor command G4UIcmdWithADouble* fScintYieldFactorCmd; G4UIcmdWithADouble* fScintYieldFactor1Cmd; @@ -139,7 +136,6 @@ private: G4UIcmdWithADouble* fScintExcitationRatioCmd; G4UIcmdWithABool* fScintTrackSecondariesFirstCmd; - G4UIcmdWithAnInteger* fScintillationVerbosityCmd; /// setFiniteRiseTime command G4UIcmdWithABool* fScintFiniteRiseTimeCmd; @@ -148,30 +144,31 @@ private: // setEnhancedTimeConstants commnad G4UIcmdWithABool* fScintEnhancedTimeConstantsCmd; - G4UIcmdWithAnInteger* fScintVerbosityCmd; + G4UIcmdWithAnInteger* fScintVerboseLevelCmd; // WLS /// setWLSTimeProfile command G4UIcmdWithAString* fWLSTimeProfileCmd; G4UIcmdWithAString* fWLSTimeProfile1Cmd; - G4UIcmdWithAnInteger* fWLSVerbosityCmd; + G4UIcmdWithAnInteger* fWLSVerboseLevelCmd; // WLS2 /// setWLS2TimeProfile command G4UIcmdWithAString* fWLS2TimeProfileCmd; - G4UIcmdWithAnInteger* fWLS2VerbosityCmd; + G4UIcmdWithAnInteger* fWLS2VerboseLevelCmd; /// setInvokeSD command G4UIcmdWithABool* fBoundaryInvokeSDCmd; G4UIcmdWithABool* fBoundaryInvokeSD1Cmd; - G4UIcmdWithAnInteger* fBoundaryVerbosityCmd; + G4UIcmdWithAnInteger* fBoundaryVerboseLevelCmd; - G4UIcmdWithAnInteger* fAbsorptionVerbosityCmd; - G4UIcmdWithAnInteger* fRayleighVerbosityCmd; - G4UIcmdWithAnInteger* fMieVerbosityCmd; + G4UIcmdWithAnInteger* fAbsorptionVerboseLevelCmd; + G4UIcmdWithAnInteger* fRayleighVerboseLevelCmd; + G4UIcmdWithAnInteger* fMieVerboseLevelCmd; + G4UIcommand* fDumpCmd; }; -#endif // G4OpticalPhysicsMessenger_h +#endif // G4OpticalParametersMessenger_h diff --git a/source/processes/electromagnetic/utils/include/G4VAtomDeexcitation.hh b/source/processes/electromagnetic/utils/include/G4VAtomDeexcitation.hh old mode 100755 new mode 100644 index d21b59067b..be8fcd9311 --- a/source/processes/electromagnetic/utils/include/G4VAtomDeexcitation.hh +++ b/source/processes/electromagnetic/utils/include/G4VAtomDeexcitation.hh @@ -157,12 +157,12 @@ public: G4double& eLoss, G4int coupleIndex); -private: - // copy constructor and hide assignment operator G4VAtomDeexcitation(G4VAtomDeexcitation &) = delete; G4VAtomDeexcitation & operator=(const G4VAtomDeexcitation &right) = delete; +private: + G4EmParameters* theParameters; const G4ParticleDefinition* gamma; diff --git a/source/processes/electromagnetic/utils/include/G4VEmAngularDistribution.hh b/source/processes/electromagnetic/utils/include/G4VEmAngularDistribution.hh index 64e7f0132d..1358b96e06 100644 --- a/source/processes/electromagnetic/utils/include/G4VEmAngularDistribution.hh +++ b/source/processes/electromagnetic/utils/include/G4VEmAngularDistribution.hh @@ -50,7 +50,6 @@ #define G4VEmAngularDistribution_h 1 #include "globals.hh" -#include "Randomize.hh" #include "G4ThreeVector.hh" #include "G4DynamicParticle.hh" @@ -92,17 +91,18 @@ public: inline const G4String& GetName() const; -protected: - - G4ThreeVector fLocalDirection; - -private: - // hide assignment operator G4VEmAngularDistribution & operator=(const G4VEmAngularDistribution &right) = delete; G4VEmAngularDistribution(const G4VEmAngularDistribution&) = delete; +protected: + + G4ThreeVector fLocalDirection; + G4bool fPolarisation; + +private: + G4String fName; }; diff --git a/source/processes/electromagnetic/utils/include/G4VEmFluctuationModel.hh b/source/processes/electromagnetic/utils/include/G4VEmFluctuationModel.hh index 33aba4db70..69b68a05d7 100644 --- a/source/processes/electromagnetic/utils/include/G4VEmFluctuationModel.hh +++ b/source/processes/electromagnetic/utils/include/G4VEmFluctuationModel.hh @@ -55,7 +55,6 @@ #ifndef G4VEmFluctuationModel_h #define G4VEmFluctuationModel_h 1 - #include "globals.hh" #include @@ -103,13 +102,13 @@ public: inline const G4String& GetName() const; -private: - // hide assignment operator G4VEmFluctuationModel & operator=(const G4VEmFluctuationModel &right) = delete; G4VEmFluctuationModel(const G4VEmFluctuationModel&) = delete; +private: + const G4String name; G4LossTableManager* fManager; }; diff --git a/source/processes/electromagnetic/utils/include/G4VEmModel.hh b/source/processes/electromagnetic/utils/include/G4VEmModel.hh index 58ccc90d0d..43b1a4e726 100644 --- a/source/processes/electromagnetic/utils/include/G4VEmModel.hh +++ b/source/processes/electromagnetic/utils/include/G4VEmModel.hh @@ -124,15 +124,15 @@ public: // Methods for initialisation of MT; may be overwritten if needed //------------------------------------------------------------------------ - // initilisation in local thread + // initialisation in local thread virtual void InitialiseLocal(const G4ParticleDefinition*, G4VEmModel* masterModel); - // initilisation of a new material at run time + // initialisation of a new material at run time virtual void InitialiseForMaterial(const G4ParticleDefinition*, const G4Material*); - // initilisation of a new element at run time + // initialisation of a new element at run time virtual void InitialiseForElement(const G4ParticleDefinition*, G4int Z); @@ -211,7 +211,7 @@ public: virtual G4double MinEnergyCut(const G4ParticleDefinition*, const G4MaterialCutsCouple*); - // initilisation at run time for a given material + // initialisation at run time for a given material virtual void SetupForMaterial(const G4ParticleDefinition*, const G4Material*, G4double kineticEnergy); @@ -393,6 +393,10 @@ public: inline void SetLocked(G4bool); + // hide assignment operator + G4VEmModel & operator=(const G4VEmModel &right) = delete; + G4VEmModel(const G4VEmModel&) = delete; + protected: inline const G4MaterialCutsCouple* CurrentCouple() const; @@ -401,10 +405,6 @@ protected: private: - // hide assignment operator - G4VEmModel & operator=(const G4VEmModel &right); - G4VEmModel(const G4VEmModel&); - // ======== Parameters of the class fixed at construction ========= G4VEmFluctuationModel* flucModel; diff --git a/source/processes/electromagnetic/utils/include/G4VEmProcess.hh b/source/processes/electromagnetic/utils/include/G4VEmProcess.hh index d1131f3d70..5045364fd9 100644 --- a/source/processes/electromagnetic/utils/include/G4VEmProcess.hh +++ b/source/processes/electromagnetic/utils/include/G4VEmProcess.hh @@ -138,7 +138,7 @@ public: // (return true if the Physics Table can be build by using file) // (return false if the process has no functionality or in case of failure) // File name should is constructed as processName+particleName and the - // should be placed under the directory specifed by the argument. + // should be placed under the directory specified by the argument. virtual G4bool RetrievePhysicsTable(const G4ParticleDefinition*, const G4String& directory, G4bool ascii) override; diff --git a/source/processes/electromagnetic/utils/include/G4VMscModel.hh b/source/processes/electromagnetic/utils/include/G4VMscModel.hh index b4e2cb1343..67d67bcbc0 100644 --- a/source/processes/electromagnetic/utils/include/G4VMscModel.hh +++ b/source/processes/electromagnetic/utils/include/G4VMscModel.hh @@ -84,6 +84,8 @@ public: void InitialiseParameters(const G4ParticleDefinition*); + void DumpParameters(std::ostream& out) const; + // empty method void SampleSecondaries(std::vector*, const G4MaterialCutsCouple*, @@ -172,12 +174,12 @@ public: G4double kinEnergy, G4double logKinEnergy); -private: - // hide assignment operator G4VMscModel & operator=(const G4VMscModel &right) = delete; G4VMscModel(const G4VMscModel&) = delete; +private: + G4SafetyHelper* safetyHelper; G4VEnergyLossProcess* ionisation; const G4ParticleDefinition* currentPart; diff --git a/source/processes/electromagnetic/utils/include/G4VMultipleScattering.hh b/source/processes/electromagnetic/utils/include/G4VMultipleScattering.hh index 45a2ba4bac..ada4f7681f 100644 --- a/source/processes/electromagnetic/utils/include/G4VMultipleScattering.hh +++ b/source/processes/electromagnetic/utils/include/G4VMultipleScattering.hh @@ -136,7 +136,7 @@ public: // (return true if the Physics Table can be build by using file) // (return false if the process has no functionality or in case of failure) // File name should is constructed as processName+particleName and the - // should be placed under the directory specifed by the argument. + // should be placed under the directory specified by the argument. G4bool RetrievePhysicsTable(const G4ParticleDefinition*, const G4String& directory, G4bool ascii) override; diff --git a/source/processes/electromagnetic/utils/sources.cmake b/source/processes/electromagnetic/utils/sources.cmake index 43a39c1727..11fde19bfc 100644 --- a/source/processes/electromagnetic/utils/sources.cmake +++ b/source/processes/electromagnetic/utils/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4emutils # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,32 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4emutils HEADERS G4AngleDirect.hh @@ -62,6 +39,8 @@ GEANT4_DEFINE_MODULE(NAME G4emutils G4EmMultiModel.hh G4EmParameters.hh G4EmParametersMessenger.hh + G4OpticalParameters.hh + G4OpticalParametersMessenger.hh G4EmProcessOptions.hh G4EmProcessSubType.hh G4EmSaturation.hh @@ -91,7 +70,7 @@ GEANT4_DEFINE_MODULE(NAME G4emutils G4EmConfigurator.cc G4EmCorrections.cc G4EmDataHandler.cc - G4EmElementSelector.cc + G4EmElementSelector.cc G4EmExtraParameters.cc G4EmExtraParametersMessenger.cc G4EmLowEParameters.cc @@ -100,6 +79,8 @@ GEANT4_DEFINE_MODULE(NAME G4emutils G4EmMultiModel.cc G4EmParameters.cc G4EmParametersMessenger.cc + G4OpticalParameters.cc + G4OpticalParametersMessenger.cc G4EmProcessOptions.cc G4EmSaturation.cc G4EnergyLossTables.cc diff --git a/source/processes/electromagnetic/utils/src/G4ElectronIonPair.cc b/source/processes/electromagnetic/utils/src/G4ElectronIonPair.cc old mode 100755 new mode 100644 index 4a51e35f99..b16e377d9e --- a/source/processes/electromagnetic/utils/src/G4ElectronIonPair.cc +++ b/source/processes/electromagnetic/utils/src/G4ElectronIonPair.cc @@ -171,7 +171,7 @@ void G4ElectronIonPair:: DumpMeanEnergyPerIonPair() const G4int nmat = G4Material::GetNumberOfMaterials(); const G4MaterialTable* mtable = G4Material::GetMaterialTable(); if(nmat > 0) { - G4cout << "### G4ElectronIonPair: mean energy per ion pair avalable:" + G4cout << "### G4ElectronIonPair: mean energy per ion pair available:" << G4endl; for(G4int i=0; isize(); for(size_t k=0; kGetVectorLength() - 1; out << " Nbins=" << nn << " " @@ -812,6 +813,8 @@ void G4EmModelManager::DumpModelList(std::ostream& out, G4int verb) out << " Fluo"; } out << G4endl; + G4VMscModel* msc = dynamic_cast(model); + if(msc != nullptr) msc->DumpParameters(out); } } } diff --git a/source/processes/electromagnetic/utils/src/G4EmParameters.cc b/source/processes/electromagnetic/utils/src/G4EmParameters.cc index facb3e1e39..90367ed607 100644 --- a/source/processes/electromagnetic/utils/src/G4EmParameters.cc +++ b/source/processes/electromagnetic/utils/src/G4EmParameters.cc @@ -148,7 +148,7 @@ void G4EmParameters::Initialise() lowestTripletEnergy = 1.0*CLHEP::MeV; maxNIELEnergy = 0.0; linLossLimit = 0.01; - bremsTh = maxKinEnergy; + bremsTh = bremsMuHadTh = maxKinEnergy; lambdaFactor = 0.8; factorForAngleLimit = 1.0; thetaLimit = CLHEP::pi; @@ -170,6 +170,7 @@ void G4EmParameters::Initialise() mscStepLimit = fUseSafety; mscStepLimitMuHad = fMinimal; nucFormfactor = fExponentialNF; + fSStype = fWVI; } void G4EmParameters::SetLossFluctuations(G4bool val) @@ -681,6 +682,24 @@ G4double G4EmParameters::BremsstrahlungTh() const return bremsTh; } +void G4EmParameters::SetMuHadBremsstrahlungTh(G4double val) +{ + if(IsLocked()) { return; } + if(val > 0.0) { + bremsMuHadTh = val; + } else { + G4ExceptionDescription ed; + ed << "Value of bremsstrahlung threshold is out of range: " + << val/GeV << " GeV is ignored"; + PrintWarning(ed); + } +} + +G4double G4EmParameters::MuHadBremsstrahlungTh() const +{ + return bremsMuHadTh; +} + void G4EmParameters::SetLambdaFactor(G4double val) { if(IsLocked()) { return; } @@ -991,6 +1010,17 @@ G4MscStepLimitType G4EmParameters::MscMuHadStepLimitType() const return mscStepLimitMuHad; } +void G4EmParameters::SetSingleScatteringType(G4eSingleScatteringType val) +{ + if(IsLocked()) { return; } + fSStype = val; +} + +G4eSingleScatteringType G4EmParameters::SingleScatteringType() const +{ + return fSStype; +} + void G4EmParameters::SetNuclearFormfactorType(G4NuclearFormfactorType val) { @@ -1256,8 +1286,11 @@ void G4EmParameters::StreamInfo(std::ostream& os) const os << "Verbose level " <AvailableForStates(G4State_PreInit,G4State_Idle); brCmd = new G4UIcmdWithADoubleAndUnit("/process/eLoss/bremThreshold",this); - brCmd->SetGuidance("Set bremsstrahlung energy threshold"); + brCmd->SetGuidance("Set e+- bremsstrahlung energy threshold"); brCmd->SetParameterName("emaxBrem",true); brCmd->SetUnitCategory("Energy"); - brCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + brCmd->AvailableForStates(G4State_PreInit); + + br1Cmd = new G4UIcmdWithADoubleAndUnit("/process/eLoss/bremMuHadThreshold",this); + br1Cmd->SetGuidance("Set muon/hadron bremsstrahlung energy threshold"); + br1Cmd->SetParameterName("emaxMuHadBrem",true); + br1Cmd->SetUnitCategory("Energy"); + br1Cmd->AvailableForStates(G4State_PreInit); labCmd = new G4UIcmdWithADouble("/process/eLoss/LambdaFactor",this); labCmd->SetGuidance("Set lambdaFactor parameter for integral option"); @@ -356,11 +362,17 @@ G4EmParametersMessenger::G4EmParametersMessenger(G4EmParameters* ptr) dumpCmd->SetGuidance("Print all EM parameters."); nffCmd = new G4UIcmdWithAString("/process/em/setNuclearFormFactor",this); - nffCmd->SetGuidance("Define typy of nuclear form-factor"); + nffCmd->SetGuidance("Define type of nuclear form-factor"); nffCmd->SetParameterName("NucFF",true); nffCmd->SetCandidates("None Exponential Gaussian Flat"); nffCmd->AvailableForStates(G4State_PreInit); + ssCmd = new G4UIcmdWithAString("/process/em/setSingleScattering",this); + ssCmd->SetGuidance("Define type of e+- single scattering model"); + ssCmd->SetParameterName("SS",true); + ssCmd->SetCandidates("WVI Mott DPWA"); + ssCmd->AvailableForStates(G4State_PreInit); + tripletCmd = new G4UIcmdWithAnInteger("/process/gconv/conversionType",this); tripletCmd->SetGuidance("gamma conversion triplet/nuclear generation type:"); tripletCmd->SetGuidance("0 - (default) both triplet and nuclear"); @@ -419,6 +431,7 @@ G4EmParametersMessenger::~G4EmParametersMessenger() delete lowEn3Cmd; delete lllCmd; delete brCmd; + delete br1Cmd; delete labCmd; delete mscfCmd; delete angCmd; @@ -443,6 +456,7 @@ G4EmParametersMessenger::~G4EmParametersMessenger() delete mscCmd; delete msc1Cmd; delete nffCmd; + delete ssCmd; delete dumpCmd; } @@ -522,6 +536,9 @@ void G4EmParametersMessenger::SetNewValue(G4UIcommand* command, } else if (command == brCmd) { theParameters->SetBremsstrahlungTh(brCmd->GetNewDoubleValue(newValue)); physicsModified = true; + } else if (command == br1Cmd) { + theParameters->SetMuHadBremsstrahlungTh(br1Cmd->GetNewDoubleValue(newValue)); + physicsModified = true; } else if (command == labCmd) { theParameters->SetLambdaFactor(labCmd->GetNewDoubleValue(newValue)); physicsModified = true; @@ -604,6 +621,17 @@ void G4EmParametersMessenger::SetNewValue(G4UIcommand* command, return; } theParameters->SetNuclearFormfactorType(x); + } else if (command == ssCmd) { + G4eSingleScatteringType x = fWVI; + if(newValue == "DPWA") { x = fDPWA; } + else if(newValue == "Mott") { x = fMott; } + else if(newValue != "WVI") { + G4ExceptionDescription ed; + ed << " G4eSingleScatteringType type <" << newValue << "> unknown!"; + G4Exception("G4EmParametersMessenger", "em0044", JustWarning, ed); + return; + } + theParameters->SetSingleScatteringType(x); } else if ( command==tripletCmd ) { theParameters->SetConversionType(tripletCmd->GetNewIntValue(newValue)); physicsModified = true; diff --git a/source/processes/electromagnetic/utils/src/G4EmSaturation.cc b/source/processes/electromagnetic/utils/src/G4EmSaturation.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/utils/src/G4LossTableManager.cc b/source/processes/electromagnetic/utils/src/G4LossTableManager.cc index 9355f39487..b930dfd986 100644 --- a/source/processes/electromagnetic/utils/src/G4LossTableManager.cc +++ b/source/processes/electromagnetic/utils/src/G4LossTableManager.cc @@ -168,7 +168,7 @@ G4LossTableManager::G4LossTableManager() subcutProducer = nullptr; nielCalculator = nullptr; gGeneral = nullptr; - eGeneral = nullptr; + eGeneral = pGeneral = nullptr; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo..... @@ -652,7 +652,7 @@ void G4LossTableManager::BuildPhysicsTable( startInitialisation = false; if(1 < verbose) { - G4cout << "### G4LossTableManager start initilisation for first particle " + G4cout << "### G4LossTableManager start initialisation for first particle " << firstParticle->GetParticleName() << G4endl; } diff --git a/source/processes/electromagnetic/utils/src/G4NIELCalculator.cc b/source/processes/electromagnetic/utils/src/G4NIELCalculator.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/utils/src/G4OpticalParameters.cc b/source/processes/electromagnetic/utils/src/G4OpticalParameters.cc new file mode 100644 index 0000000000..2ec74c20d4 --- /dev/null +++ b/source/processes/electromagnetic/utils/src/G4OpticalParameters.cc @@ -0,0 +1,603 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// ------------------------------------------------------------------- +// +// GEANT4 Class file +// +// File name: G4OpticalParameters +// +// Author: Daren Sawkey based on G4EmParameters +// +// Creation date: 14.07.2020 +// +// Modifications: +// +// ------------------------------------------------------------------- +// +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... + +#include "G4OpticalParameters.hh" +#include "G4OpticalParametersMessenger.hh" +#include "G4PhysicalConstants.hh" +#include "G4UnitsTable.hh" +#include "G4SystemOfUnits.hh" +#include "G4ApplicationState.hh" +#include "G4StateManager.hh" + +G4OpticalParameters* G4OpticalParameters::theInstance = nullptr; + +#ifdef G4MULTITHREADED + G4Mutex G4OpticalParameters::opticalParametersMutex = G4MUTEX_INITIALIZER; +#endif + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo..... + +G4OpticalParameters* G4OpticalParameters::Instance() +{ + if(nullptr == theInstance) { +#ifdef G4MULTITHREADED + G4MUTEXLOCK(&opticalParametersMutex); + if(nullptr == theInstance) { +#endif + static G4OpticalParameters manager; + theInstance = &manager; +#ifdef G4MULTITHREADED + } + G4MUTEXUNLOCK(&opticalParametersMutex); +#endif + } + return theInstance; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo..... + +G4OpticalParameters::~G4OpticalParameters() +{ + delete theMessenger; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo..... + +G4OpticalParameters::G4OpticalParameters() +{ + theMessenger = new G4OpticalParametersMessenger(this); + Initialise(); + + fStateManager = G4StateManager::GetStateManager(); +} + +void G4OpticalParameters::SetDefaults() +{ + if(!IsLocked()) { + Initialise(); + } +} + +void G4OpticalParameters::Initialise() +{ + verboseLevel = 0; + + cerenkovStackPhotons = true; + cerenkovTrackSecondariesFirst = true; + cerenkovVerboseLevel = 0; + cerenkovMaxPhotons = 100; + cerenkovMaxBetaChange = 10.; + + scintByParticleType = false; + scintTrackInfo = false; + scintStackPhotons = true; + scintEnhancedTimeConstants = false; + scintFiniteRiseTime = false; + scintTrackSecondariesFirst = true; + scintYieldFactor = 1.; + scintExcitationRatio = 1.; + scintVerboseLevel = 0; + + wlsTimeProfileName = "delta"; + wlsVerboseLevel = 0; + + wls2TimeProfileName = "delta"; + wls2VerboseLevel = 0; + + absorptionVerboseLevel = 0; + + rayleighVerboseLevel = 0; + + mieVerboseLevel = 0; + + boundaryInvokeSD = false; + boundaryVerboseLevel = 0; + + processActivation["OpRayleigh"] = true; + processActivation["OpBoundary"] = true; + processActivation["OpMieHG"] = true; + processActivation["OpAbsorption"] = true; + processActivation["OpWLS"] = true; + processActivation["OpWLS2"] = true; + processActivation["Cerenkov"] = true; + processActivation["Scintillation"] = true; + +} + +void G4OpticalParameters::SetVerboseLevel(G4int val) +{ + if(IsLocked()) { return; } + verboseLevel = val; + SetCerenkovVerboseLevel(verboseLevel); + SetScintVerboseLevel(verboseLevel); + SetRayleighVerboseLevel(verboseLevel); + SetAbsorptionVerboseLevel(verboseLevel); + SetMieVerboseLevel(verboseLevel); + SetBoundaryVerboseLevel(verboseLevel); + SetWLSVerboseLevel(verboseLevel); + SetWLS2VerboseLevel(verboseLevel); +} + +G4int G4OpticalParameters::GetVerboseLevel() const +{ + return verboseLevel; +} + +void G4OpticalParameters::SetProcessActivation(const G4String& process, G4bool val) +{ + // Configure the physics constructor to use/not use a selected process. + // This method can only be called in PreInit> phase (before execution of + // ConstructProcess). The process is not added to particle's process manager + // and so it cannot be re-activated later in Idle> phase with the command + // /process/activate. + + if(IsLocked()) { return; } + if (processActivation[process] == val) return; + + // processActivation keys defined at initialisation + if (processActivation.find(process) != processActivation.end()) { + processActivation[process] = val; + } + else { + G4ExceptionDescription ed; + ed << "Process name " << process << " out of bounds."; + G4Exception("G4OpticalParameters::SetProcessActivation()", "Optical013", + FatalException, ed); + } +} + +G4bool G4OpticalParameters::GetProcessActivation(const G4String& process) const +{ return processActivation.find(process)->second; } + +void G4OpticalParameters::Configure(G4OpticalProcessIndex index, G4bool val) +{ + // DEPRECATED. Use SetProcessActivation instead. + + // Configure the physics constructor to use/not use a selected process. + // This method can only be called in PreInit> phase (before execution of + // ConstructProcess). The process is not added to particle's process manager + // and so it cannot be re-activated later in Idle> phase with the command + // /process/activate. + + if(IsLocked()) { return; } + if (index == kCerenkov) processActivation["Cerenkov"] = val; + else if (index == kScintillation) processActivation["Scintillation"] = val; + else if (index == kAbsorption) processActivation["OpAbsorption"] = val; + else if (index == kRayleigh) processActivation["OpRayleigh"] = val; + else if (index == kMieHG) processActivation["OpMieHG"] = val; + else if (index == kWLS) processActivation["OpWLS"] = val; + else if (index == kWLS2) processActivation["OpWLS2"] = val; + else { + G4ExceptionDescription ed; + ed << "Process index " << index << " out of bounds."; + G4Exception("G4OpticalParameters::Configure()", "Optical010", FatalException, ed); + } + G4ExceptionDescription ed2; + ed2 << "Method Configure(G4OpticalProcessIndex, G4bool) is deprecated " + << "and will be removed in a future Geant4 version. Please use " + << "SetProcessActivation(G4String, G4bool) instead."; + PrintWarning(ed2); +} + +G4bool G4OpticalParameters::GetConfiguration(G4OpticalProcessIndex index) +{ + // DEPRECATED. Use GetProcessActivation instead. + if (index == kCerenkov) return processActivation["Cerenkov"]; + else if (index == kScintillation) return processActivation["Scintillation"]; + else if (index == kAbsorption) return processActivation["OpAbsorption"]; + else if (index == kRayleigh) return processActivation["OpRayleigh"]; + else if (index == kMieHG) return processActivation["OpMieHG"]; + else if (index == kWLS) return processActivation["OpWLS"]; + else if (index == kWLS2) return processActivation["OpWLS2"]; + else { + G4ExceptionDescription ed; + ed << "Process index " << index << " out of bounds."; + G4Exception("G4OpticalParameters::GetConfiguration()", "Optical011", JustWarning, ed); + } + G4ExceptionDescription ed2; + ed2 << "Method GetConfiguration(G4OpticalProcessIndex) is deprecated " + << "and will be removed in a future Geant4 version. Please use " + << "GetProcessActivation(G4String) instead."; + PrintWarning(ed2); + return true; +} + +void G4OpticalParameters::SetTrackSecondariesFirst(G4OpticalProcessIndex index, + G4bool val) +{ + // DEPRECATED. Use SetCerenkovTrackSecondariesFirst and + // SetScintTrackSecondariesFirst instead. + if(IsLocked()) { return; } + if (index == kCerenkov) cerenkovTrackSecondariesFirst = val; + else if (index == kScintillation) scintTrackSecondariesFirst = val; + else { + G4ExceptionDescription ed; + ed << "Process index " << index << " out of bounds."; + G4Exception("G4OpticalParameters::SetTrackSecondariesFirst()", + "Optical013", FatalException, ed); + } + G4ExceptionDescription ed2; + ed2 << "Method SetTrackSecondariesFirst(G4OpticalProcessIndex, G4bool) is " + << "deprecated and will be removed in a future Geant4 version. Please use " + << "SetCerenkovTrackSecondariesFirst(G4bool) and " + << "SetScintTrackSecondariesFirst(G4bool) instead."; + PrintWarning(ed2); + +} + +G4bool G4OpticalParameters::GetTrackSecondariesFirst(G4OpticalProcessIndex index) +// DEPRECATED. Use GetCerenkovTrackSecondariesFirst and +// GetScintTrackSecondariesFirst instead. +{ + if (index == kCerenkov) return cerenkovTrackSecondariesFirst; + else if (index == kScintillation) return scintTrackSecondariesFirst; + else { + G4ExceptionDescription ed; + ed << "Process index " << index << " out of bounds."; + G4Exception("G4OpticalParameters::GetTrackSecondariesFirst()", + "Optical012", JustWarning, ed); + } + G4ExceptionDescription ed2; + ed2 << "Method GetTrackSecondariesFirst(G4OpticalProcessIndex) is " + << "deprecated and will be removed in a future Geant4 version. Please use " + << "GetCerenkovTrackSecondariesFirst() and " + << "GetScintTrackSecondariesFirst() instead."; + PrintWarning(ed2); + return true; +} + +void G4OpticalParameters::SetCerenkovStackPhotons(G4bool val) +{ + if(IsLocked()) { return; } + cerenkovStackPhotons = val; +} + +G4bool G4OpticalParameters::GetCerenkovStackPhotons() const +{ + return cerenkovStackPhotons; +} + +void G4OpticalParameters::SetCerenkovVerboseLevel(G4int val) +{ + if(IsLocked()) { return; } + cerenkovVerboseLevel = val; +} + +G4int G4OpticalParameters::GetCerenkovVerboseLevel() const +{ + return cerenkovVerboseLevel; +} + +void G4OpticalParameters::SetCerenkovMaxPhotonsPerStep(G4int val) +{ + if(IsLocked()) { return; } + cerenkovMaxPhotons = val; +} + +G4int G4OpticalParameters::GetCerenkovMaxPhotonsPerStep() const +{ + return cerenkovMaxPhotons; +} + +void G4OpticalParameters::SetCerenkovMaxBetaChange(G4double val) +{ + if(IsLocked()) { return; } + cerenkovMaxBetaChange = val; +} + +G4double G4OpticalParameters::GetCerenkovMaxBetaChange() const +{ + return cerenkovMaxBetaChange; +} + +void G4OpticalParameters::SetCerenkovTrackSecondariesFirst(G4bool val) +{ + if(IsLocked()) { return; } + cerenkovTrackSecondariesFirst = val; +} + +G4bool G4OpticalParameters::GetCerenkovTrackSecondariesFirst() const +{ + return cerenkovTrackSecondariesFirst; +} + +void G4OpticalParameters::SetScintYieldFactor(G4double val) +{ + if(IsLocked()) { return; } + scintYieldFactor = val; +} + +G4double G4OpticalParameters::GetScintYieldFactor() const +{ + return scintYieldFactor; +} + +void G4OpticalParameters::SetScintExcitationRatio(G4double val) +{ + if(IsLocked()) { return; } + scintExcitationRatio = val; +} + +G4double G4OpticalParameters::GetScintExcitationRatio() const +{ + return scintExcitationRatio; +} + +void G4OpticalParameters::SetScintByParticleType(G4bool val) +{ + if(IsLocked()) { return; } + scintByParticleType = val; +} + +G4bool G4OpticalParameters::GetScintByParticleType() const +{ + return scintByParticleType; +} + +void G4OpticalParameters::SetScintTrackInfo(G4bool val) +{ + if(IsLocked()) { return; } + scintTrackInfo = val; +} + +G4bool G4OpticalParameters::GetScintTrackInfo() const +{ + return scintTrackInfo; +} + +void G4OpticalParameters::SetScintTrackSecondariesFirst(G4bool val) +{ + if(IsLocked()) { return; } + scintTrackSecondariesFirst = val; +} + +G4bool G4OpticalParameters::GetScintTrackSecondariesFirst() const +{ + return scintTrackSecondariesFirst; +} + +void G4OpticalParameters::SetScintFiniteRiseTime(G4bool val) +{ + if(IsLocked()) { return; } + scintFiniteRiseTime = val; +} + +G4bool G4OpticalParameters::GetScintFiniteRiseTime() const +{ + return scintFiniteRiseTime; +} + +void G4OpticalParameters::SetScintStackPhotons(G4bool val) +{ + if(IsLocked()) { return; } + scintStackPhotons = val; +} + +G4bool G4OpticalParameters::GetScintStackPhotons() const +{ + return scintStackPhotons; +} + +void G4OpticalParameters::SetScintVerboseLevel(G4int val) +{ + if(IsLocked()) { return; } + scintVerboseLevel = val; +} + +G4int G4OpticalParameters::GetScintVerboseLevel() const +{ + return scintVerboseLevel; +} + +void G4OpticalParameters::SetScintEnhancedTimeConstants(G4bool val) +{ + if(IsLocked()) { return; } + scintEnhancedTimeConstants = val; +} + +G4bool G4OpticalParameters::GetScintEnhancedTimeConstants() const +{ + return scintEnhancedTimeConstants; +} + +void G4OpticalParameters::SetWLSTimeProfile(const G4String& val) +{ + if(IsLocked()) { return; } + wlsTimeProfileName = val; +} + +G4String G4OpticalParameters::GetWLSTimeProfile() const +{ + return wlsTimeProfileName; +} + +void G4OpticalParameters::SetWLSVerboseLevel(G4int val) +{ + if(IsLocked()) {return; } + wlsVerboseLevel = val; +} + +G4int G4OpticalParameters::GetWLSVerboseLevel() const +{ + return wlsVerboseLevel; +} + +void G4OpticalParameters::SetWLS2TimeProfile(const G4String& val) +{ + if(IsLocked()) { return; } + wls2TimeProfileName = val; +} + +G4String G4OpticalParameters::GetWLS2TimeProfile() const +{ + return wls2TimeProfileName; +} + +void G4OpticalParameters::SetWLS2VerboseLevel(G4int val) +{ + if(IsLocked()) {return; } + wls2VerboseLevel = val; +} + +G4int G4OpticalParameters::GetWLS2VerboseLevel() const +{ + return wls2VerboseLevel; +} + +void G4OpticalParameters::SetBoundaryVerboseLevel(G4int val) +{ + if(IsLocked()) {return;} + boundaryVerboseLevel = val; +} + +G4int G4OpticalParameters::GetBoundaryVerboseLevel() const +{ + return boundaryVerboseLevel; +} + +void G4OpticalParameters::SetBoundaryInvokeSD(G4bool val) +{ + if(IsLocked()) {return;} + boundaryInvokeSD = val; +} + +G4bool G4OpticalParameters::GetBoundaryInvokeSD() const +{ + return boundaryInvokeSD; +} + +void G4OpticalParameters::SetAbsorptionVerboseLevel(G4int val) +{ + if(IsLocked()) {return;} + absorptionVerboseLevel = val; +} + +G4int G4OpticalParameters::GetAbsorptionVerboseLevel() const +{ + return absorptionVerboseLevel; +} + +void G4OpticalParameters::SetRayleighVerboseLevel(G4int val) +{ + if(IsLocked()) {return;} + rayleighVerboseLevel = val; +} + +G4int G4OpticalParameters::GetRayleighVerboseLevel() const +{ + return rayleighVerboseLevel; +} + +void G4OpticalParameters::SetMieVerboseLevel(G4int val) +{ + if(IsLocked()) {return;} + mieVerboseLevel = val; +} + +G4int G4OpticalParameters::GetMieVerboseLevel() const +{ + return mieVerboseLevel; +} + +void G4OpticalParameters::PrintWarning(G4ExceptionDescription& ed) const +{ + G4Exception("G4EmParameters", "Optical0020", JustWarning, ed); +} + +void G4OpticalParameters::StreamInfo(std::ostream& os) const +{ + G4int prec = os.precision(5); + os << "=======================================================================" << "\n"; + os << "====== Optical Physics Parameters ========" << "\n"; + os << "=======================================================================" << "\n"; + + os << " Cerenkov process active: " << GetProcessActivation("Cerenkov") << "\n"; + os << " Cerenkov maximum photons per step: " << cerenkovMaxPhotons << "\n"; + os << " Cerenkov maximum beta change per step: " << cerenkovMaxBetaChange << " %\n"; + os << " Cerenkov stack photons: " << cerenkovStackPhotons << "\n"; + os << " Cerenkov track secondaries first: " << cerenkovTrackSecondariesFirst << "\n"; + os << " Scintillation process active: " << GetProcessActivation("Scintillation") << "\n"; + os << " Scintillation yield factor: " << scintYieldFactor << "\n"; + os << " Scintillation excitation ratio: " << scintExcitationRatio << "\n"; + os << " Scintillation finite rise time: " << scintFiniteRiseTime << "\n"; + os << " Scintillation by particle type: " << scintByParticleType << "\n"; + os << " Scintillation record track info: " << scintTrackInfo << "\n"; + os << " Scintillation stack photons: " << scintStackPhotons << "\n"; + os << " Scintillation use enhanced time constants: " << scintEnhancedTimeConstants << "\n"; + os << " Scintillation track secondaries first: " << scintTrackSecondariesFirst << "\n"; + os << " WLS process active: " << GetProcessActivation("OpWLS") << "\n"; + os << " WLS time profile name: " << wlsTimeProfileName << "\n"; + os << " WLS2 process active: " << GetProcessActivation("OpWLS2") << "\n"; + os << " WLS2 time profile name: " << wls2TimeProfileName << "\n"; + os << " Boundary process active: " << GetProcessActivation("OpBoundary") << "\n"; + os << " Boundary invoke sensitive detector: " << boundaryInvokeSD << "\n"; + os << " Rayleigh process active: " << GetProcessActivation("OpRayleigh") << "\n"; + os << " MieHG process active: " << GetProcessActivation("OpMieHG") << "\n"; + os << " Absorption process active: " << GetProcessActivation("OpAbsorption") << "\n"; + os << "=======================================================================" << "\n"; + os.precision(prec); +} + +void G4OpticalParameters::Dump() const +{ +#ifdef G4MULTITHREADED + G4MUTEXLOCK(&opticalParametersMutex); +#endif + StreamInfo(G4cout); +#ifdef G4MULTITHREADED + G4MUTEXUNLOCK(&opticalParametersMutex); +#endif +} + +std::ostream& operator<< (std::ostream& os, const G4OpticalParameters& par) +{ + par.StreamInfo(os); + return os; +} + +G4bool G4OpticalParameters::IsLocked() const +{ + return (!G4Threading::IsMasterThread() || + (fStateManager->GetCurrentState() != G4State_PreInit && + fStateManager->GetCurrentState() != G4State_Init && + fStateManager->GetCurrentState() != G4State_Idle)); +} diff --git a/source/physics_lists/constructors/electromagnetic/src/G4OpticalPhysicsMessenger.cc b/source/processes/electromagnetic/utils/src/G4OpticalParametersMessenger.cc similarity index 58% rename from source/physics_lists/constructors/electromagnetic/src/G4OpticalPhysicsMessenger.cc rename to source/processes/electromagnetic/utils/src/G4OpticalParametersMessenger.cc index 5e46392949..f8954028fd 100644 --- a/source/physics_lists/constructors/electromagnetic/src/G4OpticalPhysicsMessenger.cc +++ b/source/processes/electromagnetic/utils/src/G4OpticalParametersMessenger.cc @@ -26,7 +26,7 @@ // //---------------------------------------------------------------------------- // -// ClassName: G4OpticalPhysicsMessenger +// ClassName: G4OpticalParametersMessenger // // Author: P.Gumplinger 30.09.2009 // // @@ -36,11 +36,8 @@ //---------------------------------------------------------------------------- // -#include "G4OpticalPhysicsMessenger.hh" -#include "G4OpticalPhysics.hh" - -#include "G4UIcommand.hh" -#include "G4UIdirectory.hh" +#include "G4OpticalParametersMessenger.hh" +#include "G4OpticalParameters.hh" #include "G4UIcommand.hh" #include "G4UIdirectory.hh" @@ -49,6 +46,7 @@ #include "G4UIcmdWithADouble.hh" #include "G4UIcmdWithAnInteger.hh" #include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UImanager.hh" #include "G4UIparameter.hh" @@ -58,52 +56,9 @@ //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4OpticalPhysicsMessenger::G4OpticalPhysicsMessenger( - G4OpticalPhysics* opticalPhysics) - : G4UImessenger(), - fOpticalPhysics(opticalPhysics), - fSelectedProcessIndex(kNoProcess), - fActivateProcessCmd(nullptr), - fVerboseCmd(nullptr), - fTrackSecondariesFirstCmd(nullptr), - - fCerenkovMaxPhotonsCmd(nullptr), - fCerenkovMaxPhotons1Cmd(nullptr), - fCerenkovMaxBetaChangeCmd(nullptr), - fCerenkovMaxBetaChange1Cmd(nullptr), - fCerenkovStackPhotonsCmd(nullptr), - fCerenkovStackPhotons1Cmd(nullptr), - fCerenkovTrackSecondariesFirstCmd(nullptr), - fCerenkovVerbosityCmd(nullptr), - - fScintYieldFactorCmd(nullptr), - fScintYieldFactor1Cmd(nullptr), - fScintByParticleTypeCmd(nullptr), - fScintByParticleType1Cmd(nullptr), - fScintTrackInfoCmd(nullptr), - fScintTrackInfo1Cmd(nullptr), - fScintStackPhotonsCmd(nullptr), - fScintStackPhotons1Cmd(nullptr), - fScintTrackSecondariesFirstCmd(nullptr), - fScintFiniteRiseTimeCmd(nullptr), - fScintFiniteRiseTime1Cmd(nullptr), - fScintEnhancedTimeConstantsCmd(nullptr), - fScintVerbosityCmd(nullptr), - - fWLSTimeProfileCmd(nullptr), - fWLSTimeProfile1Cmd(nullptr), - fWLSVerbosityCmd(nullptr), - - fWLS2TimeProfileCmd(nullptr), - fWLS2VerbosityCmd(nullptr), - - fBoundaryInvokeSDCmd(nullptr), - fBoundaryInvokeSD1Cmd(nullptr), - fBoundaryVerbosityCmd(nullptr), - - fAbsorptionVerbosityCmd(nullptr), - fRayleighVerbosityCmd(nullptr), - fMieVerbosityCmd(nullptr) +G4OpticalParametersMessenger::G4OpticalParametersMessenger( + G4OpticalParameters* opticalParameters) + : params(opticalParameters) { G4bool toBeBroadcasted = false; @@ -144,120 +99,106 @@ G4OpticalPhysicsMessenger::G4OpticalPhysicsMessenger( fActivateProcessCmd->SetParameter(par); fActivateProcessCmd->AvailableForStates(G4State_PreInit); + // DEPRECATED fTrackSecondariesFirstCmd = new G4UIcommand("/process/optical/setTrackSecondariesFirst", this); fTrackSecondariesFirstCmd->SetGuidance("Activate/deactivate tracking of secondaries before finishing their parent track"); + fTrackSecondariesFirstCmd->SetGuidance("DEPRECATED: Use /process/optical/cerenkov/setTrackSecondariesFirst and"); + fTrackSecondariesFirstCmd->SetGuidance("/process/optical/scintillation/setTrackSecondariesFirst and instead."); par = new G4UIparameter("proc_name",'s',false); - par->SetParameterCandidates(candidates); + par->SetParameterCandidates("Cerenkov Scintillation"); fTrackSecondariesFirstCmd->SetParameter(par); par = new G4UIparameter("flag",'b',false); par->SetDefaultValue(true); fTrackSecondariesFirstCmd->SetParameter(par); - fTrackSecondariesFirstCmd->AvailableForStates(G4State_PreInit); + fTrackSecondariesFirstCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fVerboseCmd = new G4UIcmdWithAnInteger("/process/optical/verbose", this); - fVerboseCmd->SetGuidance("Set default verbosity level for optical processes"); + fVerboseCmd->SetGuidance("Set default verbose level for optical processes"); fVerboseCmd->SetParameterName("ver", true); fVerboseCmd->SetDefaultValue(1); fVerboseCmd->SetRange("ver>=0"); - fVerboseCmd->AvailableForStates(G4State_PreInit); + fVerboseCmd->AvailableForStates(G4State_PreInit, G4State_Idle); - //// Cerenkov //////////////////// + fDumpCmd = new G4UIcommand("/process/optical/printParameters", this); + fDumpCmd->SetGuidance("Print all optical parameters."); + + // Cerenkov //////////////////// fCerenkovMaxPhotons1Cmd = new G4UIcmdWithAnInteger("/process/optical/defaults/cerenkov/setMaxPhotons", this); - fCerenkovMaxPhotons1Cmd->SetGuidance("Set default maximum number of photons per step"); - fCerenkovMaxPhotons1Cmd->SetGuidance("Note this command is used to set the default value,"); - fCerenkovMaxPhotons1Cmd->SetGuidance("if process is not active command will not have effect."); + fCerenkovMaxPhotons1Cmd->SetGuidance("Set maximum number of photons per step"); fCerenkovMaxPhotons1Cmd->SetGuidance("DEPRECATED: use /process/optical/cerenkov/setMaxPhotons instead."); fCerenkovMaxPhotons1Cmd->SetParameterName("CerenkovMaxPhotons", false); fCerenkovMaxPhotons1Cmd->SetRange("CerenkovMaxPhotons>=0"); - fCerenkovMaxPhotons1Cmd->AvailableForStates(G4State_PreInit); + fCerenkovMaxPhotons1Cmd->AvailableForStates(G4State_PreInit, G4State_Idle); fCerenkovMaxPhotonsCmd = new G4UIcmdWithAnInteger("/process/optical/cerenkov/setMaxPhotons", this); - fCerenkovMaxPhotonsCmd->SetGuidance("Set default maximum number of photons per step"); - fCerenkovMaxPhotonsCmd->SetGuidance("Note this command is used to set the default value,"); - fCerenkovMaxPhotonsCmd->SetGuidance("if process is not active command will not have effect."); + fCerenkovMaxPhotonsCmd->SetGuidance("Set maximum number of photons per step"); fCerenkovMaxPhotonsCmd->SetParameterName("CerenkovMaxPhotons", false); fCerenkovMaxPhotonsCmd->SetRange("CerenkovMaxPhotons>=0"); fCerenkovMaxPhotonsCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fCerenkovMaxBetaChange1Cmd = new G4UIcmdWithADouble("/process/optical/defaults/cerenkov/setMaxBetaChange", this); - fCerenkovMaxBetaChange1Cmd->SetGuidance("Set default maximum change of beta of parent particle per step"); - fCerenkovMaxBetaChange1Cmd->SetGuidance("Note this command is used to set the default value,"); - fCerenkovMaxBetaChange1Cmd->SetGuidance("if process is not active command will not have effect."); + fCerenkovMaxBetaChange1Cmd->SetGuidance("Set maximum change of beta of parent particle per step"); fCerenkovMaxBetaChange1Cmd->SetGuidance("DEPRECATED: use /process/optical/cerenkov/setMaxBetaChange instead."); fCerenkovMaxBetaChange1Cmd->SetParameterName("CerenkovMaxBetaChange", false); fCerenkovMaxBetaChange1Cmd->SetRange("CerenkovMaxBetaChange>=0"); - fCerenkovMaxBetaChange1Cmd->AvailableForStates(G4State_PreInit); + fCerenkovMaxBetaChange1Cmd->AvailableForStates(G4State_PreInit, G4State_Idle); fCerenkovMaxBetaChangeCmd = new G4UIcmdWithADouble("/process/optical/cerenkov/setMaxBetaChange", this); - fCerenkovMaxBetaChangeCmd->SetGuidance("Set default maximum change of beta of parent particle per step"); - fCerenkovMaxBetaChangeCmd->SetGuidance("Note this command is used to set the default value,"); - fCerenkovMaxBetaChangeCmd->SetGuidance("if process is not active command will not have effect."); + fCerenkovMaxBetaChangeCmd->SetGuidance("Set maximum change of beta of parent particle per step"); fCerenkovMaxBetaChangeCmd->SetParameterName("CerenkovMaxBetaChange", false); fCerenkovMaxBetaChangeCmd->SetRange("CerenkovMaxBetaChange>=0"); fCerenkovMaxBetaChangeCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fCerenkovStackPhotons1Cmd = new G4UIcmdWithABool("/process/optical/defaults/cerenkov/setStackPhotons", this); - fCerenkovStackPhotons1Cmd->SetGuidance("Set default whether or not to stack secondary Cerenkov photons"); - fCerenkovStackPhotons1Cmd->SetGuidance("Note this command is used to set the default value,"); - fCerenkovStackPhotons1Cmd->SetGuidance("if process is not active command will not have effect."); + fCerenkovStackPhotons1Cmd->SetGuidance("Set whether or not to stack secondary Cerenkov photons"); fCerenkovStackPhotons1Cmd->SetGuidance("DEPRECATED: use /process/optical/cerenkov/setStackPhotons instead."); fCerenkovStackPhotons1Cmd->SetParameterName("CerenkovStackPhotons", true); - fCerenkovStackPhotons1Cmd->AvailableForStates(G4State_PreInit); + fCerenkovStackPhotons1Cmd->SetDefaultValue(true); + fCerenkovStackPhotons1Cmd->AvailableForStates(G4State_PreInit, G4State_Idle); fCerenkovStackPhotonsCmd = new G4UIcmdWithABool("/process/optical/cerenkov/setStackPhotons", this); - fCerenkovStackPhotonsCmd->SetGuidance("Set default whether or not to stack secondary Cerenkov photons"); - fCerenkovStackPhotonsCmd->SetGuidance("Note this command is used to set the default value,"); - fCerenkovStackPhotonsCmd->SetGuidance("if process is not active command will not have effect."); + fCerenkovStackPhotonsCmd->SetGuidance("Set whether or not to stack secondary Cerenkov photons"); fCerenkovStackPhotonsCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fCerenkovTrackSecondariesFirstCmd = new G4UIcmdWithABool("/process/optical/cerenkov/setTrackSecondariesFirst", this); fCerenkovTrackSecondariesFirstCmd->SetGuidance("Whether to track secondary Cerenkov photons before the primary."); fCerenkovTrackSecondariesFirstCmd->AvailableForStates(G4State_PreInit, G4State_Idle); - fCerenkovVerbosityCmd = new G4UIcmdWithAnInteger("/process/optical/cerenkov/verbose", this); - fCerenkovVerbosityCmd->SetGuidance("Verbosity for Cerenkov process."); - fCerenkovVerbosityCmd->SetParameterName("verbosity", true); - fCerenkovVerbosityCmd->SetRange("verbosity >= 0 && verbosity <= 2"); - fCerenkovVerbosityCmd->AvailableForStates(G4State_Idle); + fCerenkovVerboseLevelCmd = new G4UIcmdWithAnInteger("/process/optical/cerenkov/verbose", this); + fCerenkovVerboseLevelCmd->SetGuidance("Verbose level for Cerenkov process."); + fCerenkovVerboseLevelCmd->SetParameterName("verbose", true); + fCerenkovVerboseLevelCmd->SetRange("verbose >= 0 && verbose <= 2"); + fCerenkovVerboseLevelCmd->SetDefaultValue(2); + fCerenkovVerboseLevelCmd->AvailableForStates(G4State_PreInit, G4State_Idle); // Scintillation ////////////////////////// fScintYieldFactor1Cmd = new G4UIcmdWithADouble("/process/optical/defaults/scintillation/setYieldFactor", this); fScintYieldFactor1Cmd->SetGuidance("Set scintillation yield factor"); - fScintYieldFactor1Cmd->SetGuidance("Note this command is used to set the default value,"); - fScintYieldFactor1Cmd->SetGuidance("if process is not active command will not have effect."); fScintYieldFactor1Cmd->SetGuidance("DEPRECATED: use /process/optical/scintillation/setYieldFactorinstead."); fScintYieldFactor1Cmd->SetParameterName("ScintillationYieldFactor", false); fScintYieldFactor1Cmd->SetRange("ScintillationYieldFactor>=0"); - fScintYieldFactor1Cmd->AvailableForStates(G4State_PreInit); + fScintYieldFactor1Cmd->AvailableForStates(G4State_PreInit, G4State_Idle); fScintYieldFactorCmd = new G4UIcmdWithADouble("/process/optical/scintillation/setYieldFactor", this); fScintYieldFactorCmd->SetGuidance("Set scintillation yield factor"); - fScintYieldFactorCmd->SetGuidance("Note this command is used to set the default value,"); - fScintYieldFactorCmd->SetGuidance("if process is not active command will not have effect."); fScintYieldFactorCmd->SetParameterName("ScintillationYieldFactor", false); fScintYieldFactorCmd->SetRange("ScintillationYieldFactor>=0"); fScintYieldFactorCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fScintExcitationRatioCmd = new G4UIcmdWithADouble("/process/optical/scintillation/setExcitationRatio", this); fScintExcitationRatioCmd->SetGuidance("Set scintillation excitation ratio"); - fScintExcitationRatioCmd->SetGuidance("Note this command is used to set the default value,"); - fScintExcitationRatioCmd->SetGuidance("if process is not active command will not have effect."); fScintExcitationRatioCmd->SetParameterName("ExcitationRatio", false); fScintExcitationRatioCmd->SetRange("ExcitationRatio >= 0 && ExcitationRatio <=1"); fScintExcitationRatioCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fScintByParticleType1Cmd = new G4UIcmdWithABool("/process/optical/defaults/scintillation/setByParticleType", this); fScintByParticleType1Cmd->SetGuidance("Activate/Inactivate scintillation process by particle type"); - fScintByParticleType1Cmd->SetGuidance("Note this command is used to set the default value,"); - fScintByParticleType1Cmd->SetGuidance("if process is not active command will not have effect."); fScintByParticleType1Cmd->SetGuidance("DEPRECATED: use /process/optical/scintillation/setByParticleType instead."); fScintByParticleType1Cmd->SetParameterName("ScintillationByParticleTypeActivation", false); - fScintByParticleType1Cmd->AvailableForStates(G4State_PreInit); + fScintByParticleType1Cmd->AvailableForStates(G4State_PreInit, G4State_Idle); fScintByParticleTypeCmd = new G4UIcmdWithABool("/process/optical/scintillation/setByParticleType", this); fScintByParticleTypeCmd->SetGuidance("Activate/Inactivate scintillation process by particle type"); - fScintByParticleTypeCmd->SetGuidance("Note this command is used to set the default value,"); - fScintByParticleTypeCmd->SetGuidance("if process is not active command will not have effect."); fScintByParticleTypeCmd->SetParameterName("ScintillationByParticleTypeActivation", false); fScintByParticleTypeCmd->AvailableForStates(G4State_PreInit, G4State_Idle); @@ -270,7 +211,7 @@ G4OpticalPhysicsMessenger::G4OpticalPhysicsMessenger( fScintTrackInfo1Cmd->SetGuidance("Activate/Inactivate scintillation TrackInformation"); fScintTrackInfo1Cmd->SetGuidance("DEPRECATED: use /process/optical/scintillation/setTrackInfo instead."); fScintTrackInfo1Cmd->SetParameterName("ScintillationTrackInfo", false); - fScintTrackInfo1Cmd->AvailableForStates(G4State_PreInit); + fScintTrackInfo1Cmd->AvailableForStates(G4State_PreInit, G4State_Idle); fScintTrackInfoCmd = new G4UIcmdWithABool("/process/optical/scintillation/setTrackInfo", this); fScintTrackInfoCmd->SetGuidance("Activate/Inactivate scintillation TrackInformation"); @@ -281,45 +222,39 @@ G4OpticalPhysicsMessenger::G4OpticalPhysicsMessenger( fScintFiniteRiseTime1Cmd->SetGuidance("Set option of a finite rise-time for G4Scintillation"); fScintFiniteRiseTime1Cmd->SetGuidance("If set, the G4Scintillation process expects the user to have set the"); fScintFiniteRiseTime1Cmd->SetGuidance("constant material property FAST/SLOWSCINTILLATIONRISETIME"); - fScintFiniteRiseTime1Cmd->SetGuidance("Note this command is used to set the default value,"); - fScintFiniteRiseTime1Cmd->SetGuidance("if process is not active command will not have effect."); fScintFiniteRiseTime1Cmd->SetGuidance("DEPRECATED: use /process/optical/scintillation/setFiniteRiseTime instead."); fScintFiniteRiseTime1Cmd->SetParameterName("FiniteRiseTime", false); - fScintFiniteRiseTime1Cmd->AvailableForStates(G4State_PreInit); + fScintFiniteRiseTime1Cmd->AvailableForStates(G4State_PreInit, G4State_Idle); fScintFiniteRiseTimeCmd = new G4UIcmdWithABool("/process/optical/scintillation/setFiniteRiseTime", this); fScintFiniteRiseTimeCmd->SetGuidance("Set option of a finite rise-time for G4Scintillation"); fScintFiniteRiseTimeCmd->SetGuidance("If set, the G4Scintillation process expects the user to have set the"); fScintFiniteRiseTimeCmd->SetGuidance("constant material property FAST/SLOWSCINTILLATIONRISETIME"); - fScintFiniteRiseTimeCmd->SetGuidance("Note this command is used to set the default value,"); - fScintFiniteRiseTimeCmd->SetGuidance("if process is not active command will not have effect."); fScintFiniteRiseTimeCmd->SetParameterName("FiniteRiseTime", false); fScintFiniteRiseTimeCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fScintStackPhotons1Cmd = new G4UIcmdWithABool("/process/optical/defaults/scintillation/setStackPhotons", this); - fScintStackPhotons1Cmd->SetGuidance("Set default whether or not to stack secondary Scintillation photons"); - fScintStackPhotons1Cmd->SetGuidance("Note this command is used to set the default value,"); - fScintStackPhotons1Cmd->SetGuidance("if process is not active command will not have effect."); + fScintStackPhotons1Cmd->SetGuidance("Set whether or not to stack secondary Scintillation photons"); fScintStackPhotons1Cmd->SetGuidance("DEPRECATED: use /process/optical/scintillation/setStackPhotons instead."); fScintStackPhotons1Cmd->SetParameterName("ScintillationStackPhotons", true); - fScintStackPhotons1Cmd->AvailableForStates(G4State_PreInit); + fScintStackPhotons1Cmd->SetDefaultValue(true); + fScintStackPhotons1Cmd->AvailableForStates(G4State_PreInit, G4State_Idle); fScintStackPhotonsCmd = new G4UIcmdWithABool("/process/optical/scintillation/setStackPhotons", this); - fScintStackPhotonsCmd->SetGuidance("Set default whether or not to stack secondary Scintillation photons"); - fScintStackPhotonsCmd->SetGuidance("Note this command is used to set the default value,"); - fScintStackPhotonsCmd->SetGuidance("if process is not active command will not have effect."); + fScintStackPhotonsCmd->SetGuidance("Set whether or not to stack secondary Scintillation photons"); fScintStackPhotonsCmd->SetParameterName("ScintillationStackPhotons", true); + fScintStackPhotonsCmd->SetDefaultValue(true); fScintStackPhotonsCmd->AvailableForStates(G4State_PreInit, G4State_Idle); fScintTrackSecondariesFirstCmd = new G4UIcmdWithABool("/process/optical/scintillation/setTrackSecondariesFirst", this); fScintTrackSecondariesFirstCmd->SetGuidance("Whether to track scintillation secondaries before primary."); fScintTrackSecondariesFirstCmd->AvailableForStates(G4State_PreInit, G4State_Idle); - fScintVerbosityCmd = new G4UIcmdWithAnInteger("/process/optical/scintillation/verbose", this); - fScintVerbosityCmd->SetGuidance("Verbosity for scintillation process."); - fScintVerbosityCmd->SetParameterName("verbosity", true); - fScintVerbosityCmd->SetRange("verbosity >= 0 && verbosity <= 2"); - fScintVerbosityCmd->AvailableForStates(G4State_Idle); + fScintVerboseLevelCmd = new G4UIcmdWithAnInteger("/process/optical/scintillation/verbose", this); + fScintVerboseLevelCmd->SetGuidance("Verbose level for scintillation process."); + fScintVerboseLevelCmd->SetParameterName("verbose", true); + fScintVerboseLevelCmd->SetRange("verbose >= 0 && verbose <= 2"); + fScintVerboseLevelCmd->AvailableForStates(G4State_Idle, G4State_PreInit); // WLS ////////////////////////////////// fWLSTimeProfile1Cmd = new G4UIcmdWithAString("/process/optical/defaults/wls/setTimeProfile", this); @@ -327,7 +262,7 @@ G4OpticalPhysicsMessenger::G4OpticalPhysicsMessenger( fWLSTimeProfile1Cmd->SetGuidance("DEPRECATED: use /process/optical/wls/setTimeProfile instead."); fWLSTimeProfile1Cmd->SetParameterName("WLSTimeProfile", false); fWLSTimeProfile1Cmd->SetCandidates("delta exponential"); - fWLSTimeProfile1Cmd->AvailableForStates(G4State_PreInit); + fWLSTimeProfile1Cmd->AvailableForStates(G4State_PreInit, G4State_Idle); fWLSTimeProfileCmd = new G4UIcmdWithAString("/process/optical/wls/setTimeProfile", this); fWLSTimeProfileCmd->SetGuidance("Set the WLS time profile (delta or exponential)"); @@ -335,11 +270,12 @@ G4OpticalPhysicsMessenger::G4OpticalPhysicsMessenger( fWLSTimeProfileCmd->SetCandidates("delta exponential"); fWLSTimeProfileCmd->AvailableForStates(G4State_PreInit, G4State_Idle); - fWLSVerbosityCmd = new G4UIcmdWithAnInteger("/process/optical/wls/verbose", this); - fWLSVerbosityCmd->SetGuidance("Verbosity for WLS process."); - fWLSVerbosityCmd->SetParameterName("verbosity", true); - fWLSVerbosityCmd->SetRange("verbosity >= 0 && verbosity <= 2"); - fWLSVerbosityCmd->AvailableForStates(G4State_Idle); + fWLSVerboseLevelCmd = new G4UIcmdWithAnInteger("/process/optical/wls/verbose", this); + fWLSVerboseLevelCmd->SetGuidance("Verbose level for WLS process."); + fWLSVerboseLevelCmd->SetParameterName("verbose", true); + fWLSVerboseLevelCmd->SetRange("verbose >= 0 && verbose <= 2"); + fWLSVerboseLevelCmd->SetDefaultValue(1); + fWLSVerboseLevelCmd->AvailableForStates(G4State_PreInit, G4State_Idle); // WLS2 ////////////////////////////////// fWLS2TimeProfileCmd = new G4UIcmdWithAString("/process/optical/wls2/setTimeProfile", this); @@ -348,56 +284,66 @@ G4OpticalPhysicsMessenger::G4OpticalPhysicsMessenger( fWLS2TimeProfileCmd->SetCandidates("delta exponential"); fWLS2TimeProfileCmd->AvailableForStates(G4State_PreInit, G4State_Idle); - fWLS2VerbosityCmd = new G4UIcmdWithAnInteger("/process/optical/wls2/verbose", this); - fWLS2VerbosityCmd->SetGuidance("Verbosity for WLS2 process."); - fWLS2VerbosityCmd->SetParameterName("verbosity", true); - fWLS2VerbosityCmd->SetRange("verbosity >= 0 && verbosity <= 2"); - fWLS2VerbosityCmd->AvailableForStates(G4State_Idle); + fWLS2VerboseLevelCmd = new G4UIcmdWithAnInteger("/process/optical/wls2/verbose", this); + fWLS2VerboseLevelCmd->SetGuidance("Verbose level for WLS2 process."); + fWLS2VerboseLevelCmd->SetParameterName("verbose", true); + fWLS2VerboseLevelCmd->SetRange("verbose >= 0 && verbose <= 2"); + fWLS2VerboseLevelCmd->SetDefaultValue(1); + fWLS2VerboseLevelCmd->AvailableForStates(G4State_PreInit, G4State_Idle); // boundary ////////////////////////////////////// fBoundaryInvokeSD1Cmd = new G4UIcmdWithABool("/process/optical/defaults/boundary/setInvokeSD", this); fBoundaryInvokeSD1Cmd->SetGuidance("Set option for calling InvokeSD in G4OpBoundaryProcess"); fBoundaryInvokeSD1Cmd->SetGuidance("DEPRECATED: use /process/optical/boundary/setInvokeSD instead."); fBoundaryInvokeSD1Cmd->SetParameterName("InvokeSD", false); - fBoundaryInvokeSD1Cmd->AvailableForStates(G4State_PreInit); + fBoundaryInvokeSD1Cmd->AvailableForStates(G4State_PreInit, G4State_Idle); fBoundaryInvokeSDCmd = new G4UIcmdWithABool("/process/optical/boundary/setInvokeSD", this); fBoundaryInvokeSDCmd->SetGuidance("Set option for calling InvokeSD in G4OpBoundaryProcess"); fBoundaryInvokeSDCmd->SetParameterName("InvokeSD", false); fBoundaryInvokeSDCmd->AvailableForStates(G4State_PreInit, G4State_Idle); - fBoundaryVerbosityCmd = new G4UIcmdWithAnInteger("/process/optical/boundary/verbose", this); - fBoundaryVerbosityCmd->SetGuidance("Verbosity for boundary process."); - fBoundaryVerbosityCmd->SetParameterName("verbosity", true); - fBoundaryVerbosityCmd->SetRange("verbosity >= 0 && verbosity <= 2"); - fBoundaryVerbosityCmd->AvailableForStates(G4State_Idle); + fBoundaryVerboseLevelCmd = new G4UIcmdWithAnInteger("/process/optical/boundary/verbose", this); + fBoundaryVerboseLevelCmd->SetGuidance("Verbose level for boundary process."); + fBoundaryVerboseLevelCmd->SetParameterName("verbose", true); + fBoundaryVerboseLevelCmd->SetRange("verbose >= 0 && verbose <= 2"); + fBoundaryVerboseLevelCmd->SetDefaultValue(1); + fBoundaryVerboseLevelCmd->AvailableForStates(G4State_PreInit, G4State_Idle); - // the others //////////////////////////////////// - fAbsorptionVerbosityCmd = new G4UIcmdWithAnInteger("/process/optical/absorption/verbose", this); - fAbsorptionVerbosityCmd->SetGuidance("Verbosity for absorption process."); - fAbsorptionVerbosityCmd->SetParameterName("verbosity", true); - fAbsorptionVerbosityCmd->SetRange("verbosity >= 0 && verbosity <= 2"); - fAbsorptionVerbosityCmd->AvailableForStates(G4State_Idle); + // absorption ////////////////////////////////////// + fBoundaryInvokeSD1Cmd = new G4UIcmdWithABool("/process/optical/defaults/boundary/setInvokeSD", this); + fAbsorptionVerboseLevelCmd = new G4UIcmdWithAnInteger("/process/optical/absorption/verbose", this); + fAbsorptionVerboseLevelCmd->SetGuidance("Verbose level for absorption process."); + fAbsorptionVerboseLevelCmd->SetParameterName("verbose", true); + fAbsorptionVerboseLevelCmd->SetRange("verbose >= 0 && verbose <= 2"); + fAbsorptionVerboseLevelCmd->SetDefaultValue(1); + fAbsorptionVerboseLevelCmd->AvailableForStates(G4State_PreInit, G4State_Idle); - fRayleighVerbosityCmd = new G4UIcmdWithAnInteger("/process/optical/rayleigh/verbose", this); - fRayleighVerbosityCmd->SetGuidance("Verbosity for Rayleigh process."); - fRayleighVerbosityCmd->SetParameterName("verbosity", true); - fRayleighVerbosityCmd->SetRange("verbosity >= 0 && verbosity <= 2"); - fRayleighVerbosityCmd->AvailableForStates(G4State_Idle); + // rayleigh ////////////////////////////////////// + fBoundaryInvokeSD1Cmd = new G4UIcmdWithABool("/process/optical/defaults/boundary/setInvokeSD", this); + fRayleighVerboseLevelCmd = new G4UIcmdWithAnInteger("/process/optical/rayleigh/verbose", this); + fRayleighVerboseLevelCmd->SetGuidance("Verbose level for Rayleigh process."); + fRayleighVerboseLevelCmd->SetParameterName("verbose", true); + fRayleighVerboseLevelCmd->SetRange("verbose >= 0 && verbose <= 2"); + fRayleighVerboseLevelCmd->SetDefaultValue(1); + fRayleighVerboseLevelCmd->AvailableForStates(G4State_PreInit, G4State_Idle); - fMieVerbosityCmd = new G4UIcmdWithAnInteger("/process/optical/mie/verbose", this); - fMieVerbosityCmd->SetGuidance("Verbosity for Mie process."); - fMieVerbosityCmd->SetParameterName("verbosity", true); - fMieVerbosityCmd->SetRange("verbosity >= 0 && verbosity <= 2"); - fMieVerbosityCmd->AvailableForStates(G4State_Idle); + // mie ////////////////////////////////////// + fMieVerboseLevelCmd = new G4UIcmdWithAnInteger("/process/optical/mie/verbose", this); + fMieVerboseLevelCmd->SetGuidance("Verbose level for Mie process."); + fMieVerboseLevelCmd->SetParameterName("verbose", true); + fMieVerboseLevelCmd->SetRange("verbose >= 0 && verbose <= 2"); + fMieVerboseLevelCmd->SetDefaultValue(1); + fMieVerboseLevelCmd->AvailableForStates(G4State_PreInit, G4State_Idle); } -G4OpticalPhysicsMessenger::~G4OpticalPhysicsMessenger() +G4OpticalParametersMessenger::~G4OpticalParametersMessenger() { delete fDir; delete fDir2; delete fActivateProcessCmd; delete fVerboseCmd; + delete fDumpCmd; delete fCerenkovMaxPhotonsCmd; delete fCerenkovMaxPhotons1Cmd; delete fCerenkovMaxBetaChangeCmd; @@ -405,7 +351,7 @@ G4OpticalPhysicsMessenger::~G4OpticalPhysicsMessenger() delete fCerenkovStackPhotonsCmd; delete fCerenkovStackPhotons1Cmd; delete fCerenkovTrackSecondariesFirstCmd; - delete fCerenkovVerbosityCmd; + delete fCerenkovVerboseLevelCmd; delete fScintYieldFactorCmd; delete fScintYieldFactor1Cmd; delete fScintByParticleTypeCmd; @@ -416,228 +362,201 @@ G4OpticalPhysicsMessenger::~G4OpticalPhysicsMessenger() delete fScintStackPhotonsCmd; delete fScintStackPhotons1Cmd; delete fScintExcitationRatioCmd; - delete fScintVerbosityCmd; + delete fScintVerboseLevelCmd; delete fScintFiniteRiseTimeCmd; delete fScintFiniteRiseTime1Cmd; delete fScintTrackSecondariesFirstCmd; delete fWLSTimeProfileCmd; delete fWLSTimeProfile1Cmd; - delete fWLSVerbosityCmd; + delete fWLSVerboseLevelCmd; delete fWLS2TimeProfileCmd; - delete fWLS2VerbosityCmd; - delete fAbsorptionVerbosityCmd; - delete fRayleighVerbosityCmd; - delete fMieVerbosityCmd; - delete fBoundaryVerbosityCmd; + delete fWLS2VerboseLevelCmd; + delete fAbsorptionVerboseLevelCmd; + delete fRayleighVerboseLevelCmd; + delete fMieVerboseLevelCmd; + delete fBoundaryVerboseLevelCmd; delete fTrackSecondariesFirstCmd; delete fBoundaryInvokeSDCmd; delete fBoundaryInvokeSD1Cmd; } -void G4OpticalPhysicsMessenger::SetNewValue(G4UIcommand* command, +void G4OpticalParametersMessenger::SetNewValue(G4UIcommand* command, G4String newValue) { -/// Apply command to the associated object. + // physics needs to be rebuilt for all commands + G4bool physicsModified = true; + + /// Apply command to the associated object. if (command == fActivateProcessCmd) { std::istringstream is(newValue.data()); G4String pn; G4String flag; is >> pn >> flag; - if ( pn == "Cerenkov" ) { - fSelectedProcessIndex = kCerenkov; - } else if ( pn == "Scintillation" ) { - fSelectedProcessIndex = kScintillation; - } else if ( pn == "OpAbsorption" ) { - fSelectedProcessIndex = kAbsorption; - } else if ( pn == "OpRayleigh" ) { - fSelectedProcessIndex = kRayleigh; - } else if ( pn == "OpMieHG" ) { - fSelectedProcessIndex = kMieHG; - } else if ( pn == "OpBoundary" ) { - fSelectedProcessIndex = kBoundary; - } else if ( pn == "OpWLS" ) { - fSelectedProcessIndex = kWLS; - } else if ( pn == "OpWLS2" ) { - fSelectedProcessIndex = kWLS2; - } else { - G4ExceptionDescription msg; - msg << "Not allowed process name: "<Configure(fSelectedProcessIndex,value); + params->SetProcessActivation(pn, value); } - else if (command == fTrackSecondariesFirstCmd ) - { - std::istringstream is(newValue.data()); - G4String pn; - G4String flag; - is >> pn >> flag; - if ( pn == "Cerenkov" ) { - fSelectedProcessIndex = kCerenkov; - } else if ( pn == "Scintillation" ) { - fSelectedProcessIndex = kScintillation; - } else if ( pn == "OpAbsorption" ) { - fSelectedProcessIndex = kAbsorption; - } else if ( pn == "OpRayleigh" ) { - fSelectedProcessIndex = kRayleigh; - } else if ( pn == "OpMieHG" ) { - fSelectedProcessIndex = kMieHG; - } else if ( pn == "OpBoundary" ) { - fSelectedProcessIndex = kBoundary; - } else if ( pn == "OpWLS" ) { - fSelectedProcessIndex = kWLS; - } else if ( pn == "OpWLS2" ) { - fSelectedProcessIndex = kWLS2; - } else { - G4ExceptionDescription msg; - msg << "Not allowed process name: "<SetTrackSecondariesFirst(fSelectedProcessIndex,value); + else if (command == fTrackSecondariesFirstCmd) { + std::istringstream is(newValue.data()); + G4String pn; + G4String flag; + is >> pn >> flag; + G4bool value = G4UIcommand::ConvertToBool(flag); + if (pn == "Cerenkov") params->SetCerenkovStackPhotons(value); + else if (pn == "Scintillation") params->SetScintStackPhotons(value); + else { + G4ExceptionDescription msg; + msg << "Process name not allowed: "<SetVerboseLevel(fVerboseCmd->GetNewIntValue(newValue)); + params->SetVerboseLevel(fVerboseCmd->GetNewIntValue(newValue)); + } + else if (command == fDumpCmd) { + params->Dump(); } else if (command == fCerenkovMaxPhotons1Cmd) { - fOpticalPhysics->SetMaxNumPhotonsPerStep( + params->SetCerenkovMaxPhotonsPerStep( fCerenkovMaxPhotons1Cmd->GetNewIntValue(newValue)); Deprecated(); } else if (command == fCerenkovMaxPhotonsCmd) { - fOpticalPhysics->SetMaxNumPhotonsPerStep( + params->SetCerenkovMaxPhotonsPerStep( fCerenkovMaxPhotonsCmd->GetNewIntValue(newValue)); + G4cout << "Cerenkov max photons: " << params->GetCerenkovMaxPhotonsPerStep() << G4endl; } else if (command == fCerenkovMaxBetaChange1Cmd) { - fOpticalPhysics->SetMaxBetaChangePerStep( + params->SetCerenkovMaxBetaChange( fCerenkovMaxBetaChange1Cmd->GetNewDoubleValue(newValue)); Deprecated(); } else if (command == fCerenkovMaxBetaChangeCmd) { - fOpticalPhysics->SetMaxBetaChangePerStep( + params->SetCerenkovMaxBetaChange( fCerenkovMaxBetaChangeCmd->GetNewDoubleValue(newValue)); } else if (command == fCerenkovStackPhotons1Cmd) { - fOpticalPhysics->SetCerenkovStackPhotons( + params->SetCerenkovStackPhotons( fCerenkovStackPhotons1Cmd->GetNewBoolValue(newValue)); Deprecated(); } else if (command == fCerenkovStackPhotonsCmd) { - fOpticalPhysics->SetCerenkovStackPhotons( + params->SetCerenkovStackPhotons( fCerenkovStackPhotonsCmd->GetNewBoolValue(newValue)); } else if (command == fCerenkovTrackSecondariesFirstCmd) { - fOpticalPhysics->SetCerenkovTrackSecondariesFirst( + params->SetCerenkovTrackSecondariesFirst( fCerenkovTrackSecondariesFirstCmd->GetNewBoolValue(newValue)); } - else if (command == fCerenkovVerbosityCmd) { - fOpticalPhysics->SetCerenkovVerbosity( - fCerenkovVerbosityCmd->GetNewIntValue(newValue)); + else if (command == fCerenkovVerboseLevelCmd) { + params->SetCerenkovVerboseLevel( + fCerenkovVerboseLevelCmd->GetNewIntValue(newValue)); } else if (command == fScintYieldFactor1Cmd) { - fOpticalPhysics->SetScintillationYieldFactor( + params->SetScintYieldFactor( fScintYieldFactor1Cmd->GetNewDoubleValue(newValue)); Deprecated(); } else if (command == fScintYieldFactorCmd) { - fOpticalPhysics->SetScintillationYieldFactor( + params->SetScintYieldFactor( fScintYieldFactorCmd->GetNewDoubleValue(newValue)); } else if (command == fScintByParticleType1Cmd) { - fOpticalPhysics->SetScintillationByParticleType( + params->SetScintByParticleType( fScintByParticleType1Cmd->GetNewBoolValue(newValue)); Deprecated(); } else if (command == fScintByParticleTypeCmd) { - fOpticalPhysics->SetScintillationByParticleType( + params->SetScintByParticleType( fScintByParticleTypeCmd->GetNewBoolValue(newValue)); } else if (command == fScintEnhancedTimeConstantsCmd) { - fOpticalPhysics->SetScintillationEnhancedTimeConstants( + params->SetScintEnhancedTimeConstants( fScintEnhancedTimeConstantsCmd->GetNewBoolValue(newValue)); } else if (command == fScintTrackInfo1Cmd) { - fOpticalPhysics->SetScintillationTrackInfo( + params->SetScintTrackInfo( fScintTrackInfo1Cmd->GetNewBoolValue(newValue)); Deprecated(); } else if (command == fScintTrackInfoCmd) { - fOpticalPhysics->SetScintillationTrackInfo( + params->SetScintTrackInfo( fScintTrackInfoCmd->GetNewBoolValue(newValue)); } else if (command == fScintFiniteRiseTime1Cmd) { - fOpticalPhysics->SetFiniteRiseTime( + params->SetScintFiniteRiseTime( fScintFiniteRiseTime1Cmd->GetNewBoolValue(newValue)); Deprecated(); } else if (command == fScintFiniteRiseTimeCmd) { - fOpticalPhysics->SetFiniteRiseTime( + params->SetScintFiniteRiseTime( fScintFiniteRiseTimeCmd->GetNewBoolValue(newValue)); } else if (command == fScintStackPhotons1Cmd) { - fOpticalPhysics->SetScintillationStackPhotons( + params->SetScintStackPhotons( fScintStackPhotons1Cmd->GetNewBoolValue(newValue)); Deprecated(); } else if (command == fScintStackPhotonsCmd) { - fOpticalPhysics->SetScintillationStackPhotons( + params->SetScintStackPhotons( fScintStackPhotonsCmd->GetNewBoolValue(newValue)); } else if (command == fScintExcitationRatioCmd) { - fOpticalPhysics->SetScintillationExcitationRatio( + params->SetScintExcitationRatio( fScintExcitationRatioCmd->GetNewDoubleValue(newValue)); } else if (command == fScintTrackSecondariesFirstCmd) { - fOpticalPhysics->SetScintillationTrackSecondariesFirst( + params->SetScintTrackSecondariesFirst( fScintTrackSecondariesFirstCmd->GetNewBoolValue(newValue)); } - else if (command == fScintVerbosityCmd) { - fOpticalPhysics->SetScintillationVerbosity( - fScintVerbosityCmd->GetNewIntValue(newValue)); + else if (command == fScintVerboseLevelCmd) { + params->SetScintVerboseLevel( + fScintVerboseLevelCmd->GetNewIntValue(newValue)); } else if (command == fWLSTimeProfile1Cmd) { - fOpticalPhysics->SetWLSTimeProfile(newValue); + params->SetWLSTimeProfile(newValue); Deprecated(); } else if (command == fWLSTimeProfileCmd) { - fOpticalPhysics->SetWLSTimeProfile(newValue); + params->SetWLSTimeProfile(newValue); } - else if (command == fWLSVerbosityCmd) { - fOpticalPhysics->SetWLSVerbosity(fWLSVerbosityCmd->GetNewIntValue(newValue)); + else if (command == fWLSVerboseLevelCmd) { + params->SetWLSVerboseLevel(fWLSVerboseLevelCmd->GetNewIntValue(newValue)); } else if (command == fWLS2TimeProfileCmd) { - fOpticalPhysics->SetWLS2TimeProfile(newValue); + params->SetWLS2TimeProfile(newValue); } - else if (command == fWLS2VerbosityCmd) { - fOpticalPhysics->SetWLS2Verbosity(fWLS2VerbosityCmd->GetNewIntValue(newValue)); + else if (command == fWLS2VerboseLevelCmd) { + params->SetWLS2VerboseLevel(fWLS2VerboseLevelCmd->GetNewIntValue(newValue)); } - else if (command == fAbsorptionVerbosityCmd) { - fOpticalPhysics->SetAbsorptionVerbosity(fAbsorptionVerbosityCmd->GetNewIntValue(newValue)); + else if (command == fAbsorptionVerboseLevelCmd) { + params->SetAbsorptionVerboseLevel(fAbsorptionVerboseLevelCmd->GetNewIntValue(newValue)); } - else if (command == fRayleighVerbosityCmd) { - fOpticalPhysics->SetRayleighVerbosity(fRayleighVerbosityCmd->GetNewIntValue(newValue)); + else if (command == fRayleighVerboseLevelCmd) { + params->SetRayleighVerboseLevel(fRayleighVerboseLevelCmd->GetNewIntValue(newValue)); } - else if (command == fMieVerbosityCmd) { - fOpticalPhysics->SetMieVerbosity(fMieVerbosityCmd->GetNewIntValue(newValue)); + else if (command == fMieVerboseLevelCmd) { + params->SetMieVerboseLevel(fMieVerboseLevelCmd->GetNewIntValue(newValue)); } - else if (command == fBoundaryVerbosityCmd) { - fOpticalPhysics->SetBoundaryVerbosity(fBoundaryVerbosityCmd->GetNewIntValue(newValue)); + else if (command == fBoundaryVerboseLevelCmd) { + params->SetBoundaryVerboseLevel(fBoundaryVerboseLevelCmd->GetNewIntValue(newValue)); } else if (command == fBoundaryInvokeSD1Cmd) { - fOpticalPhysics->SetInvokeSD(fBoundaryInvokeSD1Cmd->GetNewBoolValue(newValue)); + params->SetBoundaryInvokeSD(fBoundaryInvokeSD1Cmd->GetNewBoolValue(newValue)); Deprecated(); } else if (command == fBoundaryInvokeSDCmd) { - fOpticalPhysics - ->SetInvokeSD(fBoundaryInvokeSDCmd->GetNewBoolValue(newValue)); + params->SetBoundaryInvokeSD(fBoundaryInvokeSDCmd->GetNewBoolValue(newValue)); + } + if (physicsModified) { + G4UImanager::GetUIpointer()->ApplyCommand("/run/physicsModified"); } } -void G4OpticalPhysicsMessenger::Deprecated() +void G4OpticalParametersMessenger::Deprecated() { G4ExceptionDescription ed; ed <<" This command has been deprecated and will be removed in the next" << G4endl << "major release. Use the same command without /defaults/ instead."; - G4Exception("G4OpticalPhysicsMessenger", "optical001", JustWarning, ed); + G4Exception("G4OpticalParametersMessenger", "optical001", JustWarning, ed); } diff --git a/source/processes/electromagnetic/utils/src/G4VAtomDeexcitation.cc b/source/processes/electromagnetic/utils/src/G4VAtomDeexcitation.cc old mode 100755 new mode 100644 diff --git a/source/processes/electromagnetic/utils/src/G4VEmAngularDistribution.cc b/source/processes/electromagnetic/utils/src/G4VEmAngularDistribution.cc index 4d37754e4a..d99ba84e7b 100644 --- a/source/processes/electromagnetic/utils/src/G4VEmAngularDistribution.cc +++ b/source/processes/electromagnetic/utils/src/G4VEmAngularDistribution.cc @@ -48,12 +48,16 @@ // #include "G4VEmAngularDistribution.hh" +#include "G4EmParameters.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... G4VEmAngularDistribution::G4VEmAngularDistribution(const G4String& name) - : fLocalDirection(0.0,0.0,1.0),fName(name) -{} + : fName(name) +{ + fLocalDirection.set(0.0,0.0,1.0); + fPolarisation = G4EmParameters::Instance()->EnablePolarisation(); +} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... @@ -84,4 +88,3 @@ void G4VEmAngularDistribution::SamplePairDirections(const G4DynamicParticle* dp, } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo.... - diff --git a/source/processes/electromagnetic/utils/src/G4VEmModel.cc b/source/processes/electromagnetic/utils/src/G4VEmModel.cc index 389e1577e8..0825c25b24 100644 --- a/source/processes/electromagnetic/utils/src/G4VEmModel.cc +++ b/source/processes/electromagnetic/utils/src/G4VEmModel.cc @@ -101,12 +101,12 @@ G4VEmModel::~G4VEmModel() } delete anglModel; - if(localTable && xSectionTable) { + if(localTable && xSectionTable != nullptr) { xSectionTable->clearAndDestroy(); delete xSectionTable; xSectionTable = nullptr; } - if(isMaster && fElementData) { + if(isMaster && fElementData != nullptr) { delete fElementData; fElementData = nullptr; } @@ -118,13 +118,13 @@ G4VEmModel::~G4VEmModel() G4ParticleChangeForLoss* G4VEmModel::GetParticleChangeForLoss() { G4ParticleChangeForLoss* p = nullptr; - if (pParticleChange) { + if (pParticleChange != nullptr) { p = static_cast(pParticleChange); } else { p = new G4ParticleChangeForLoss(); pParticleChange = p; } - if(fTripletModel) { fTripletModel->SetParticleChange(p); } + if(fTripletModel != nullptr) { fTripletModel->SetParticleChange(p); } return p; } @@ -133,13 +133,13 @@ G4ParticleChangeForLoss* G4VEmModel::GetParticleChangeForLoss() G4ParticleChangeForGamma* G4VEmModel::GetParticleChangeForGamma() { G4ParticleChangeForGamma* p = nullptr; - if (pParticleChange) { + if (pParticleChange != nullptr) { p = static_cast(pParticleChange); } else { p = new G4ParticleChangeForGamma(); pParticleChange = p; } - if(fTripletModel) { fTripletModel->SetParticleChange(p); } + if(fTripletModel != nullptr) { fTripletModel->SetParticleChange(p); } return p; } @@ -226,7 +226,7 @@ void G4VEmModel::InitialiseLocal(const G4ParticleDefinition*, void G4VEmModel::InitialiseForMaterial(const G4ParticleDefinition* part, const G4Material* material) { - if(material) { + if(material != nullptr) { size_t n = material->GetNumberOfElements(); for(size_t i=0; iGetElement(i)->GetZasInt(); @@ -455,7 +455,7 @@ void G4VEmModel::SetupForMaterial(const G4ParticleDefinition*, void G4VEmModel::SetParticleChange(G4VParticleChange* p, G4VEmFluctuationModel* f) { - if(p && pParticleChange != p) { pParticleChange = p; } + if(p != nullptr && pParticleChange != p) { pParticleChange = p; } if(flucModel != f) { flucModel = f; } } @@ -464,7 +464,7 @@ G4VEmModel::SetParticleChange(G4VParticleChange* p, G4VEmFluctuationModel* f) void G4VEmModel::SetCrossSectionTable(G4PhysicsTable* p, G4bool isLocal) { if(p != xSectionTable) { - if(xSectionTable && localTable) { + if(xSectionTable != nullptr && localTable) { xSectionTable->clearAndDestroy(); delete xSectionTable; } diff --git a/source/processes/electromagnetic/utils/src/G4VEmProcess.cc b/source/processes/electromagnetic/utils/src/G4VEmProcess.cc index 673b2d844b..6b764ffacf 100644 --- a/source/processes/electromagnetic/utils/src/G4VEmProcess.cc +++ b/source/processes/electromagnetic/utils/src/G4VEmProcess.cc @@ -602,6 +602,7 @@ void G4VEmProcess::StreamInfo(std::ostream& out, void G4VEmProcess::StartTracking(G4Track* track) { // reset parameters for the new track + currentParticle = track->GetParticleDefinition(); theNumberOfInteractionLengthLeft = -1.0; mfpKinEnergy = DBL_MAX; diff --git a/source/processes/electromagnetic/utils/src/G4VMscModel.cc b/source/processes/electromagnetic/utils/src/G4VMscModel.cc index 7c2efe973b..f13602e171 100644 --- a/source/processes/electromagnetic/utils/src/G4VMscModel.cc +++ b/source/processes/electromagnetic/utils/src/G4VMscModel.cc @@ -157,6 +157,20 @@ void G4VMscModel::InitialiseParameters(const G4ParticleDefinition* part) //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void G4VMscModel::DumpParameters(std::ostream& out) const +{ + G4String alg = "UseSafety"; + if (steppingAlgorithm == fUseDistanceToBoundary) alg = "DistanceToBoundary"; + else if (steppingAlgorithm == fMinimal) alg = "Minimal"; + else if (steppingAlgorithm == fUseSafetyPlus) alg = "SafetyPlus"; + + out << std::setw(22) << "StepLim=" << alg << " Rfact=" << facrange + << " Gfact=" << facgeom << " Sfact=" << facsafety << " DispFlag:" << latDisplasment + << " Skin=" << skin << " Llimit=" << lambdalimit << G4endl; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + void G4VMscModel::SampleSecondaries(std::vector*, const G4MaterialCutsCouple*, const G4DynamicParticle*, diff --git a/source/processes/electromagnetic/utils/src/G4VMultipleScattering.cc b/source/processes/electromagnetic/utils/src/G4VMultipleScattering.cc index 9c340e1825..0f2d37d80d 100644 --- a/source/processes/electromagnetic/utils/src/G4VMultipleScattering.cc +++ b/source/processes/electromagnetic/utils/src/G4VMultipleScattering.cc @@ -348,7 +348,7 @@ void G4VMultipleScattering::StreamInfo(std::ostream& outFile, outFile << G4endl << indent << GetProcessName() << ": "; if (!rst) outFile << " for " << part.GetParticleName(); outFile << " SubType= " << GetProcessSubType() << G4endl; - StreamProcessInfo(outFile); + //StreamProcessInfo(outFile); modelManager->DumpModelList(outFile, verboseLevel); } diff --git a/source/processes/electromagnetic/xrays/History b/source/processes/electromagnetic/xrays/History index cc8381ef54..d57e6ec984 100644 --- a/source/processes/electromagnetic/xrays/History +++ b/source/processes/electromagnetic/xrays/History @@ -16,6 +16,24 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +5 October 20: D. Sawkey (xrays-V10-06-08) +- G4Cerenkov, G4Scintillation: apply clang-format style guidelines + +30 September 20: H. Wenzel (xrays-V10-06-07) +- G4Cerenkov: make GetAverageNumberOfPhotons public + +28 September 20: D. Sawkey (xrays-V10-06-06) +- G4Scintillation, G4Cerenkov: remove BuildThePhysicsTable + +24 September 20: D. Sawkey (xrays-V10-06-05) +- G4Scintillation: allow specifying SCINTILLATIONYIELD only (not + requiring SCINTILLATIONYIELD1) when only 1 scintillation channel present. + Same for particle specific yields. + +20 July 20: D. Sawkey (xrays-V10-06-04) +- G4Cerenkov, G4Scintillation: use new G4OpticalParameters to control + simulation parameters + 28 May 20: D. Sawkey (xrays-V10-06-03) - G4Cerenkov - set verbosity levels correctly diff --git a/source/processes/electromagnetic/xrays/include/G4Cerenkov.hh b/source/processes/electromagnetic/xrays/include/G4Cerenkov.hh index d262e8f698..ef8ce10efe 100644 --- a/source/processes/electromagnetic/xrays/include/G4Cerenkov.hh +++ b/source/processes/electromagnetic/xrays/include/G4Cerenkov.hh @@ -25,7 +25,7 @@ // // // -// +// //////////////////////////////////////////////////////////////////////// // Cerenkov Radiation Class Definition //////////////////////////////////////////////////////////////////////// @@ -40,7 +40,6 @@ // 1999-10-29 add method and class descriptors // 1997-04-09 by Peter Gumplinger // > G4MaterialPropertiesTable; new physics/tracking scheme -// mail: gum@triumf.ca // //////////////////////////////////////////////////////////////////////// @@ -66,21 +65,17 @@ class G4Cerenkov : public G4VProcess { - -public: - - explicit G4Cerenkov(const G4String& processName = "Cerenkov", - G4ProcessType type = fElectromagnetic); + public: + explicit G4Cerenkov(const G4String& processName = "Cerenkov", + G4ProcessType type = fElectromagnetic); ~G4Cerenkov(); - explicit G4Cerenkov(const G4Cerenkov &right); + explicit G4Cerenkov(const G4Cerenkov& right); -private: - - G4Cerenkov& operator=(const G4Cerenkov &right) = delete; - -public: + private: + G4Cerenkov& operator=(const G4Cerenkov& right) = delete; + public: G4bool IsApplicable(const G4ParticleDefinition& aParticleType) override; // Returns true -> 'is applicable', for all charged particles // except short-lived particles. @@ -88,43 +83,50 @@ public: void BuildPhysicsTable(const G4ParticleDefinition& aParticleType) override; // Build table at a right time - G4double GetMeanFreePath(const G4Track& aTrack, - G4double, G4ForceCondition* ); + void PreparePhysicsTable(const G4ParticleDefinition& part) override; + void Initialise(); + + G4double GetMeanFreePath(const G4Track& aTrack, G4double, G4ForceCondition*); // Returns the discrete step limit and sets the 'StronglyForced' // condition for the DoIt to be invoked at every step. - G4double PostStepGetPhysicalInteractionLength(const G4Track& aTrack, - G4double , - G4ForceCondition* ) override; + G4double PostStepGetPhysicalInteractionLength(const G4Track& aTrack, G4double, + G4ForceCondition*) override; // Returns the discrete step limit and sets the 'StronglyForced' // condition for the DoIt to be invoked at every step. - G4VParticleChange* PostStepDoIt(const G4Track& aTrack, - const G4Step& aStep) override; + G4VParticleChange* PostStepDoIt(const G4Track& aTrack, + const G4Step& aStep) override; // This is the method implementing the Cerenkov process. // no operation in AtRestDoIt and AlongStepDoIt - virtual G4double AlongStepGetPhysicalInteractionLength(const G4Track&, - G4double , - G4double , - G4double& , - G4GPILSelection* - ) override { return -1.0; }; + virtual G4double AlongStepGetPhysicalInteractionLength( + const G4Track&, G4double, G4double, G4double&, G4GPILSelection*) override + { + return -1.0; + }; - virtual G4double AtRestGetPhysicalInteractionLength(const G4Track& , - G4ForceCondition* - ) override { return -1.0; }; + virtual G4double AtRestGetPhysicalInteractionLength( + const G4Track&, G4ForceCondition*) override + { + return -1.0; + }; // no operation in AtRestDoIt and AlongStepDoIt - virtual G4VParticleChange* AtRestDoIt(const G4Track& , const G4Step& ) - override {return nullptr;}; + virtual G4VParticleChange* AtRestDoIt(const G4Track&, const G4Step&) override + { + return nullptr; + }; - virtual G4VParticleChange* AlongStepDoIt(const G4Track& , const G4Step&) - override {return nullptr;}; + virtual G4VParticleChange* AlongStepDoIt(const G4Track&, + const G4Step&) override + { + return nullptr; + }; void SetTrackSecondariesFirst(const G4bool state); - // If set, the primary particle tracking is interrupted and any - // produced Cerenkov photons are tracked next. When all have + // If set, the primary particle tracking is interrupted and any + // produced Cerenkov photons are tracked next. When all have // been tracked, the tracking of the primary resumes. G4bool GetTrackSecondariesFirst() const; @@ -140,7 +142,7 @@ public: // Set the maximum number of Cerenkov photons allowed to be generated during // a tracking step. This is an average ONLY; the actual number will vary // around this average. If invoked, the maximum photon stack will roughly be - // of the size set. If not called, the step is not limited by the number of + // of the size set. If not called, the step is not limited by the number of // photons generated. G4int GetMaxNumPhotonsPerStep() const; @@ -162,68 +164,45 @@ public: void DumpPhysicsTable() const; // Prints the physics table. -private: - - void BuildThePhysicsTable(); - - G4double GetAverageNumberOfPhotons(const G4double charge, - const G4double beta, - const G4Material *aMaterial, + G4double GetAverageNumberOfPhotons(const G4double charge, const G4double beta, + const G4Material* aMaterial, G4MaterialPropertyVector* Rindex) const; -protected: - + protected: G4PhysicsTable* thePhysicsTable; -private: - + private: G4bool fTrackSecondariesFirst; G4double fMaxBetaChange; - G4int fMaxPhotons; + G4int fMaxPhotons; G4bool fStackingFlag; G4int fNumPhotons; }; -inline -G4bool G4Cerenkov::GetTrackSecondariesFirst() const +inline G4bool G4Cerenkov::GetTrackSecondariesFirst() const { return fTrackSecondariesFirst; } -inline -G4double G4Cerenkov::GetMaxBetaChangePerStep() const +inline G4double G4Cerenkov::GetMaxBetaChangePerStep() const { return fMaxBetaChange; } -inline -G4int G4Cerenkov::GetMaxNumPhotonsPerStep() const -{ - return fMaxPhotons; -} +inline G4int G4Cerenkov::GetMaxNumPhotonsPerStep() const { return fMaxPhotons; } -inline -void G4Cerenkov::SetStackPhotons(const G4bool stackingFlag) +inline void G4Cerenkov::SetStackPhotons(const G4bool stackingFlag) { fStackingFlag = stackingFlag; } -inline -G4bool G4Cerenkov::GetStackPhotons() const -{ - return fStackingFlag; -} +inline G4bool G4Cerenkov::GetStackPhotons() const { return fStackingFlag; } -inline -G4int G4Cerenkov::GetNumPhotons() const -{ - return fNumPhotons; -} +inline G4int G4Cerenkov::GetNumPhotons() const { return fNumPhotons; } -inline -G4PhysicsTable* G4Cerenkov::GetPhysicsTable() const +inline G4PhysicsTable* G4Cerenkov::GetPhysicsTable() const { return thePhysicsTable; } diff --git a/source/processes/electromagnetic/xrays/include/G4Scintillation.hh b/source/processes/electromagnetic/xrays/include/G4Scintillation.hh index f36ddbfff1..26fb4cc87f 100644 --- a/source/processes/electromagnetic/xrays/include/G4Scintillation.hh +++ b/source/processes/electromagnetic/xrays/include/G4Scintillation.hh @@ -25,12 +25,12 @@ // // // -// +// //////////////////////////////////////////////////////////////////////// -// Scintillation Light Class Definition +// Scintillation Light Class Definition //////////////////////////////////////////////////////////////////////// // -// File: G4Scintillation.hh +// File: G4Scintillation.hh // Description: Discrete Process - Generation of Scintillation Photons // Version: 1.0 // Created: 1998-11-07 @@ -47,7 +47,6 @@ // 2002-05-09 changed IsApplicable method // 1999-10-29 add method and class descriptors // -// mail: gum@triumf.ca // //////////////////////////////////////////////////////////////////////// @@ -64,7 +63,7 @@ #include "G4VRestDiscreteProcess.hh" #include "G4OpticalPhoton.hh" #include "G4DynamicParticle.hh" -#include "G4Material.hh" +#include "G4Material.hh" #include "G4PhysicsTable.hh" #include "G4MaterialPropertiesTable.hh" #include "G4PhysicsOrderedFreeVector.hh" @@ -78,21 +77,17 @@ class G4Scintillation : public G4VRestDiscreteProcess { + public: + explicit G4Scintillation(const G4String& processName = "Scintillation", + G4ProcessType type = fElectromagnetic); + ~G4Scintillation(); -public: + private: + G4Scintillation(const G4Scintillation& right) = delete; + G4Scintillation& operator=(const G4Scintillation& right) = delete; - explicit G4Scintillation(const G4String& processName = "Scintillation", - G4ProcessType type = fElectromagnetic); - ~G4Scintillation(); - -private: - - G4Scintillation(const G4Scintillation &right) = delete; - G4Scintillation& operator=(const G4Scintillation &right) = delete; - -public: - - // G4Scintillation Process has both PostStepDoIt (for energy + public: + // G4Scintillation Process has both PostStepDoIt (for energy // deposition of particles in flight) and AtRestDoIt (for energy // given to the medium by particles at rest) @@ -103,43 +98,43 @@ public: void BuildPhysicsTable(const G4ParticleDefinition& aParticleType) override; // Build table at the right time - G4double GetMeanFreePath(const G4Track& aTrack, - G4double , - G4ForceCondition* ) override; + void PreparePhysicsTable(const G4ParticleDefinition& part) override; + void Initialise(); + + G4double GetMeanFreePath(const G4Track& aTrack, G4double, + G4ForceCondition*) override; // Returns infinity; i. e. the process does not limit the step, - // but sets the 'StronglyForced' condition for the DoIt to be + // but sets the 'StronglyForced' condition for the DoIt to be // invoked at every step. - G4double GetMeanLifeTime(const G4Track& aTrack, - G4ForceCondition* ) override; + G4double GetMeanLifeTime(const G4Track& aTrack, G4ForceCondition*) override; // Returns infinity; i. e. the process does not limit the time, // but sets the 'StronglyForced' condition for the DoIt to be // invoked at every step. - G4VParticleChange* PostStepDoIt(const G4Track& aTrack, - const G4Step& aStep) override; - G4VParticleChange* AtRestDoIt (const G4Track& aTrack, - const G4Step& aStep) override; + G4VParticleChange* PostStepDoIt(const G4Track& aTrack, + const G4Step& aStep) override; + G4VParticleChange* AtRestDoIt(const G4Track& aTrack, + const G4Step& aStep) override; - G4double GetScintillationYieldByParticleType(const G4Track &aTrack, - const G4Step &aStep); + G4double GetScintillationYieldByParticleType(const G4Track& aTrack, + const G4Step& aStep); // Returns the number of scintillation photons calculated when // scintillation depends on the particle type and energy // deposited (includes nonlinear dependendency) // DEPRECATED: to be removed in the next major release. Use the // following instead. - G4double GetScintillationYieldByParticleType( - const G4Track &aTrack, - const G4Step &aStep, - G4double &yield1, - G4double &yield2, - G4double &yield3); + G4double GetScintillationYieldByParticleType(const G4Track& aTrack, + const G4Step& aStep, + G4double& yield1, + G4double& yield2, + G4double& yield3); // allow multiple time constants with scint by particle type void SetTrackSecondariesFirst(const G4bool state); // If set, the primary particle tracking is interrupted and any - // produced scintillation photons are tracked next. When all + // produced scintillation photons are tracked next. When all // have been tracked, the tracking of the primary resumes. G4bool GetTrackSecondariesFirst() const; @@ -201,7 +196,7 @@ public: G4EmSaturation* GetSaturation() const; // Returns the Birks Saturation. - void SetScintillationByParticleType(const G4bool ); + void SetScintillationByParticleType(const G4bool); // Called by the user to set the scintillation yield as a function // of energy deposited by particle type @@ -223,7 +218,7 @@ public: // Return the boolean for whether or not the // G4ScintillationTrackInformation is set to the scint. photon track - void SetStackPhotons(const G4bool ); + void SetStackPhotons(const G4bool); // Call by the user to set the flag for stacking the scint. photons G4bool GetStackPhotons() const; @@ -235,27 +230,21 @@ public: void DumpPhysicsTable() const; // Prints the fast and slow scintillation integral tables. -protected: - - void BuildThePhysicsTable(); - // It builds either the fast or slow scintillation integral table; - // or both. - + protected: G4PhysicsTable* fIntegralTable1; G4PhysicsTable* fIntegralTable2; G4PhysicsTable* fIntegralTable3; -private: - - G4bool fTrackSecondariesFirst; - G4bool fFiniteRiseTime; + private: + G4bool fTrackSecondariesFirst; + G4bool fFiniteRiseTime; G4double fYieldFactor; G4double fExcitationRatio; - G4bool fScintillationByParticleType; - G4bool fScintillationTrackInfo; - G4bool fStackingFlag; - G4int fNumPhotons; - G4bool fEnhancedTimeConstants; + G4bool fScintillationByParticleType; + G4bool fScintillationTrackInfo; + G4bool fStackingFlag; + G4int fNumPhotons; + G4bool fEnhancedTimeConstants; #ifdef G4DEBUG_SCINTILLATION G4double ScintTrackEDep, ScintTrackYield; @@ -268,169 +257,137 @@ private: G4double sample_time(G4double tau1, G4double tau2); G4EmSaturation* fEmSaturation; - G4ParticleDefinition* opticalphoton = G4OpticalPhoton::OpticalPhotonDefinition(); - + G4ParticleDefinition* opticalphoton = + G4OpticalPhoton::OpticalPhotonDefinition(); }; //////////////////// // Inline methods //////////////////// -inline -void G4Scintillation::SetTrackSecondariesFirst(const G4bool state) +inline void G4Scintillation::SetTrackSecondariesFirst(const G4bool state) { fTrackSecondariesFirst = state; } -inline -G4bool G4Scintillation::GetTrackSecondariesFirst() const +inline G4bool G4Scintillation::GetTrackSecondariesFirst() const { return fTrackSecondariesFirst; } -inline -void G4Scintillation::SetFiniteRiseTime(const G4bool state) +inline void G4Scintillation::SetFiniteRiseTime(const G4bool state) { fFiniteRiseTime = state; } -inline -G4bool G4Scintillation::GetFiniteRiseTime() const +inline G4bool G4Scintillation::GetFiniteRiseTime() const { return fFiniteRiseTime; } -inline -void G4Scintillation::SetScintillationYieldFactor(const G4double yieldfactor) +inline void G4Scintillation::SetScintillationYieldFactor( + const G4double yieldfactor) { fYieldFactor = yieldfactor; } -inline -G4double G4Scintillation::GetScintillationYieldFactor() const +inline G4double G4Scintillation::GetScintillationYieldFactor() const { return fYieldFactor; } -inline -void G4Scintillation::SetScintillationExcitationRatio(const G4double ratio) +inline void G4Scintillation::SetScintillationExcitationRatio( + const G4double ratio) { fExcitationRatio = ratio; } -inline -G4double G4Scintillation::GetScintillationExcitationRatio() const +inline G4double G4Scintillation::GetScintillationExcitationRatio() const { return fExcitationRatio; } -inline -G4PhysicsTable* G4Scintillation::GetSlowIntegralTable() const +inline G4PhysicsTable* G4Scintillation::GetSlowIntegralTable() const { return fIntegralTable3; } -inline -G4PhysicsTable* G4Scintillation::GetFastIntegralTable() const +inline G4PhysicsTable* G4Scintillation::GetFastIntegralTable() const { return fIntegralTable1; } -inline -G4PhysicsTable* G4Scintillation::GetIntegralTable1() const +inline G4PhysicsTable* G4Scintillation::GetIntegralTable1() const { return fIntegralTable1; } -inline -G4PhysicsTable* G4Scintillation::GetIntegralTable2() const +inline G4PhysicsTable* G4Scintillation::GetIntegralTable2() const { return fIntegralTable2; } -inline -G4PhysicsTable* G4Scintillation::GetIntegralTable3() const +inline G4PhysicsTable* G4Scintillation::GetIntegralTable3() const { return fIntegralTable3; } -inline -void G4Scintillation::AddSaturation(G4EmSaturation* sat) +inline void G4Scintillation::AddSaturation(G4EmSaturation* sat) { fEmSaturation = sat; } -inline -void G4Scintillation::RemoveSaturation() -{ - fEmSaturation = nullptr; -} +inline void G4Scintillation::RemoveSaturation() { fEmSaturation = nullptr; } -inline -G4EmSaturation* G4Scintillation::GetSaturation() const +inline G4EmSaturation* G4Scintillation::GetSaturation() const { return fEmSaturation; } -inline -G4bool G4Scintillation::GetScintillationByParticleType() const +inline G4bool G4Scintillation::GetScintillationByParticleType() const { return fScintillationByParticleType; } -inline -void G4Scintillation::SetEnhancedTimeConstants(G4bool val) +inline void G4Scintillation::SetEnhancedTimeConstants(G4bool val) { fEnhancedTimeConstants = val; } -inline -G4bool G4Scintillation::GetEnhancedTimeConstants() const +inline G4bool G4Scintillation::GetEnhancedTimeConstants() const { return fEnhancedTimeConstants; } -inline -void G4Scintillation::SetScintillationTrackInfo(const G4bool trackType) +inline void G4Scintillation::SetScintillationTrackInfo(const G4bool trackType) { fScintillationTrackInfo = trackType; } -inline -G4bool G4Scintillation::GetScintillationTrackInfo() const +inline G4bool G4Scintillation::GetScintillationTrackInfo() const { return fScintillationTrackInfo; } -inline -void G4Scintillation::SetStackPhotons(const G4bool stackingFlag) +inline void G4Scintillation::SetStackPhotons(const G4bool stackingFlag) { fStackingFlag = stackingFlag; } -inline -G4bool G4Scintillation::GetStackPhotons() const +inline G4bool G4Scintillation::GetStackPhotons() const { return fStackingFlag; } + +inline G4int G4Scintillation::GetNumPhotons() const { return fNumPhotons; } + +inline G4double G4Scintillation::single_exp(G4double t, G4double tau2) { - return fStackingFlag; + return std::exp(-1.0 * t / tau2) / tau2; } -inline -G4int G4Scintillation::GetNumPhotons() const +inline G4double G4Scintillation::bi_exp(G4double t, G4double tau1, + G4double tau2) { - return fNumPhotons; -} - - -inline -G4double G4Scintillation::single_exp(G4double t, G4double tau2) -{ - return std::exp(-1.0*t/tau2)/tau2; -} - -inline -G4double G4Scintillation::bi_exp(G4double t, G4double tau1, G4double tau2) -{ - return std::exp(-1.0*t/tau2)*(1-std::exp(-1.0*t/tau1))/tau2/tau2*(tau1+tau2); + return std::exp(-1.0 * t / tau2) * (1 - std::exp(-1.0 * t / tau1)) / tau2 / + tau2 * (tau1 + tau2); } #endif /* G4Scintillation_h */ diff --git a/source/processes/electromagnetic/xrays/include/G4ScintillationTrackInformation.hh b/source/processes/electromagnetic/xrays/include/G4ScintillationTrackInformation.hh index 7017a6e32a..4e06aff5f7 100644 --- a/source/processes/electromagnetic/xrays/include/G4ScintillationTrackInformation.hh +++ b/source/processes/electromagnetic/xrays/include/G4ScintillationTrackInformation.hh @@ -33,7 +33,7 @@ // // Class Description: // -// Concrete class of G4VUserTrackInformation used to store information +// Concrete class of G4VUserTrackInformation used to store information // linked to the track generated in a scintillation process. // @@ -43,38 +43,48 @@ #include "G4VUserTrackInformation.hh" // Represents the scintillation type used to create the track (opticalphoton). -enum G4ScintillationType {Fast, Medium, Slow}; +enum G4ScintillationType +{ + Fast, + Medium, + Slow +}; class G4ScintillationTrackInformation : public G4VUserTrackInformation { - public: + public: + explicit G4ScintillationTrackInformation( + const G4ScintillationType& aType = Slow); + virtual ~G4ScintillationTrackInformation(); - explicit G4ScintillationTrackInformation(const G4ScintillationType& aType = Slow); - virtual ~G4ScintillationTrackInformation(); - - // Required by G4VUserTrackInformation - void *operator new(size_t); - void operator delete(void *aScintillationTI); - - // Copy Constructor/instruction - G4ScintillationTrackInformation(const G4ScintillationTrackInformation&); - G4ScintillationTrackInformation& operator=(const G4ScintillationTrackInformation&); - - virtual void Print() const override; - - const G4ScintillationType& GetScintillationType() const {return scintillationType;} - - // Static class allowing to check if a G4VUserTrackInformation is a - // G4ScintillationTrackInformation and cast it without changing the - // pointer of the pointed data. - static G4bool IsScintillationTrackInformation(const G4VUserTrackInformation* const); - static G4ScintillationTrackInformation* Cast(const G4VUserTrackInformation* const); - - private: + // Required by G4VUserTrackInformation + void* operator new(size_t); + void operator delete(void* aScintillationTI); - G4ScintillationType scintillationType; - // String given to G4VUserTrackInformation to identify this concrete class - static const G4String BaseType; + // Copy Constructor/instruction + G4ScintillationTrackInformation(const G4ScintillationTrackInformation&); + G4ScintillationTrackInformation& operator=( + const G4ScintillationTrackInformation&); + + virtual void Print() const override; + + const G4ScintillationType& GetScintillationType() const + { + return scintillationType; + } + + // Static class allowing to check if a G4VUserTrackInformation is a + // G4ScintillationTrackInformation and cast it without changing the + // pointer of the pointed data. + static G4bool IsScintillationTrackInformation( + const G4VUserTrackInformation* const); + static G4ScintillationTrackInformation* Cast( + const G4VUserTrackInformation* const); + + private: + G4ScintillationType scintillationType; + // String given to G4VUserTrackInformation to identify this concrete class + static const G4String BaseType; }; /// @@ -84,23 +94,29 @@ class G4ScintillationTrackInformation : public G4VUserTrackInformation #include "G4Allocator.hh" // Forward declaration for the Allocator -class G4ScintillationTrackInformation; +class G4ScintillationTrackInformation; #if defined G4EM_ALLOC_EXPORT -extern G4DLLEXPORT G4Allocator*& aScintillationTIAllocator(); +extern G4DLLEXPORT G4Allocator*& +aScintillationTIAllocator(); #else -extern G4DLLIMPORT G4Allocator*& aScintillationTIAllocator(); +extern G4DLLIMPORT G4Allocator*& +aScintillationTIAllocator(); #endif inline void* G4ScintillationTrackInformation::operator new(size_t) { - if (!aScintillationTIAllocator()) aScintillationTIAllocator() = new G4Allocator; - return (void *) aScintillationTIAllocator()->MallocSingle(); + if(!aScintillationTIAllocator()) + aScintillationTIAllocator() = + new G4Allocator; + return (void*) aScintillationTIAllocator()->MallocSingle(); } -inline void G4ScintillationTrackInformation::operator delete(void *aScintillationTI) +inline void G4ScintillationTrackInformation::operator delete( + void* aScintillationTI) { - aScintillationTIAllocator()->FreeSingle((G4ScintillationTrackInformation *) aScintillationTI); + aScintillationTIAllocator()->FreeSingle( + (G4ScintillationTrackInformation*) aScintillationTI); } -#endif // G4SCINTILLATIONTRACKINFORMATION_H +#endif // G4SCINTILLATIONTRACKINFORMATION_H diff --git a/source/processes/electromagnetic/xrays/sources.cmake b/source/processes/electromagnetic/xrays/sources.cmake index 8d1f53c1e9..9110396ed1 100644 --- a/source/processes/electromagnetic/xrays/sources.cmake +++ b/source/processes/electromagnetic/xrays/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4electromagnetic.G4xrays # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,35 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/standard/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4xrays HEADERS G4Cerenkov.hh diff --git a/source/processes/electromagnetic/xrays/src/G4Cerenkov.cc b/source/processes/electromagnetic/xrays/src/G4Cerenkov.cc index b126ea6f35..d75cc2aac4 100644 --- a/source/processes/electromagnetic/xrays/src/G4Cerenkov.cc +++ b/source/processes/electromagnetic/xrays/src/G4Cerenkov.cc @@ -56,7 +56,6 @@ // > add protection against /0 // > G4MaterialPropertiesTable; new physics/tracking scheme // -// mail: gum@triumf.ca // //////////////////////////////////////////////////////////////////////// @@ -70,30 +69,30 @@ #include "G4MaterialCutsCouple.hh" #include "G4ParticleDefinition.hh" +#include "G4OpticalParameters.hh" #include "G4Cerenkov.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4Cerenkov::G4Cerenkov(const G4String& processName, G4ProcessType type) - : G4VProcess(processName, type), - fTrackSecondariesFirst(false), - fMaxBetaChange(0.0), - fMaxPhotons(0), - fStackingFlag(true), - fNumPhotons(0) + : G4VProcess(processName, type) + , fNumPhotons(0) { SetProcessSubType(fCerenkov); thePhysicsTable = nullptr; - if (verboseLevel>0) { + if(verboseLevel > 0) + { G4cout << GetProcessName() << " is created." << G4endl; } + Initialise(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4Cerenkov::~G4Cerenkov() { - if (thePhysicsTable != nullptr) { + if(thePhysicsTable != nullptr) + { thePhysicsTable->clearAndDestroy(); delete thePhysicsTable; } @@ -103,38 +102,102 @@ G4Cerenkov::~G4Cerenkov() G4bool G4Cerenkov::IsApplicable(const G4ParticleDefinition& aParticleType) { return (aParticleType.GetPDGCharge() != 0.0 && - aParticleType.GetPDGMass() != 0.0 && - aParticleType.GetParticleName() != "chargedgeantino" && - !aParticleType.IsShortLived() ) ? true : false; + aParticleType.GetPDGMass() != 0.0 && + aParticleType.GetParticleName() != "chargedgeantino" && + !aParticleType.IsShortLived()) + ? true + : false; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void G4Cerenkov::SetTrackSecondariesFirst(const G4bool state) +void G4Cerenkov::Initialise() { - fTrackSecondariesFirst = state; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void G4Cerenkov::SetMaxBetaChangePerStep(const G4double value) -{ - fMaxBetaChange = value*CLHEP::perCent; -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void G4Cerenkov::SetMaxNumPhotonsPerStep(const G4int NumPhotons) -{ - fMaxPhotons = NumPhotons; + G4OpticalParameters* params = G4OpticalParameters::Instance(); + SetMaxBetaChangePerStep(params->GetCerenkovMaxBetaChange()); + SetMaxNumPhotonsPerStep(params->GetCerenkovMaxPhotonsPerStep()); + SetTrackSecondariesFirst(params->GetCerenkovTrackSecondariesFirst()); + SetStackPhotons(params->GetCerenkovStackPhotons()); + SetVerboseLevel(params->GetCerenkovVerboseLevel()); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void G4Cerenkov::BuildPhysicsTable(const G4ParticleDefinition&) { - if (!thePhysicsTable) BuildThePhysicsTable(); + if(thePhysicsTable) + return; + + const G4MaterialTable* theMaterialTable = G4Material::GetMaterialTable(); + G4int numOfMaterials = G4Material::GetNumberOfMaterials(); + + thePhysicsTable = new G4PhysicsTable(numOfMaterials); + + // loop over materials + for(G4int i = 0; i < numOfMaterials; ++i) + { + G4PhysicsOrderedFreeVector* aPhysicsOrderedFreeVector = 0; + + // Retrieve vector of refraction indices for the material + // from the material's optical properties table + G4Material* aMaterial = (*theMaterialTable)[i]; + G4MaterialPropertiesTable* aMaterialPropertiesTable = + aMaterial->GetMaterialPropertiesTable(); + + if(aMaterialPropertiesTable) + { + aPhysicsOrderedFreeVector = new G4PhysicsOrderedFreeVector(); + G4MaterialPropertyVector* theRefractionIndexVector = + aMaterialPropertiesTable->GetProperty(kRINDEX); + + if(theRefractionIndexVector) + { + // Retrieve the first refraction index in vector + // of (photon energy, refraction index) pairs + G4double currentRI = (*theRefractionIndexVector)[0]; + + if(currentRI > 1.0) + { + // Create first (photon energy, Cerenkov Integral) pair + G4double currentPM = theRefractionIndexVector->Energy(0); + G4double currentCAI = 0.0; + + aPhysicsOrderedFreeVector->InsertValues(currentPM, currentCAI); + + // Set previous values to current ones prior to loop + G4double prevPM = currentPM; + G4double prevCAI = currentCAI; + G4double prevRI = currentRI; + + // loop over all (photon energy, refraction index) + // pairs stored for this material + for(size_t ii = 1; ii < theRefractionIndexVector->GetVectorLength(); + ++ii) + { + currentRI = (*theRefractionIndexVector)[ii]; + currentPM = theRefractionIndexVector->Energy(ii); + currentCAI = prevCAI + (currentPM - prevPM) * 0.5 * + (1.0 / (prevRI * prevRI) + + 1.0 / (currentRI * currentRI)); + + aPhysicsOrderedFreeVector->InsertValues(currentPM, currentCAI); + + prevPM = currentPM; + prevCAI = currentCAI; + prevRI = currentRI; + } + } + } + } + + // The Cerenkov integral for a given material will be inserted in + // thePhysicsTable according to the position of the material in + // the material table. + thePhysicsTable->insertAt(i, aPhysicsOrderedFreeVector); + } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4VParticleChange* -G4Cerenkov::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) +G4VParticleChange* G4Cerenkov::PostStepDoIt(const G4Track& aTrack, + const G4Step& aStep) // This routine is called for each tracking Step of a charged particle // in a radiator. A Poisson-distributed number of photons is generated // according to the Cerenkov formula, distributed evenly along the track @@ -150,43 +213,45 @@ G4Cerenkov::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) aParticleChange.Initialize(aTrack); const G4DynamicParticle* aParticle = aTrack.GetDynamicParticle(); - const G4Material* aMaterial = aTrack.GetMaterial(); + const G4Material* aMaterial = aTrack.GetMaterial(); G4StepPoint* pPreStepPoint = aStep.GetPreStepPoint(); G4StepPoint* pPostStepPoint = aStep.GetPostStepPoint(); G4ThreeVector x0 = pPreStepPoint->GetPosition(); G4ThreeVector p0 = aStep.GetDeltaPosition().unit(); - G4double t0 = pPreStepPoint->GetGlobalTime(); + G4double t0 = pPreStepPoint->GetGlobalTime(); - G4MaterialPropertiesTable* aMaterialPropertiesTable = - aMaterial->GetMaterialPropertiesTable(); - if (!aMaterialPropertiesTable) return pParticleChange; + G4MaterialPropertiesTable* MPT = aMaterial->GetMaterialPropertiesTable(); + if(!MPT) + return pParticleChange; - G4MaterialPropertyVector* Rindex = - aMaterialPropertiesTable->GetProperty(kRINDEX); - if (!Rindex) return pParticleChange; + G4MaterialPropertyVector* Rindex = MPT->GetProperty(kRINDEX); + if(!Rindex) + return pParticleChange; G4double charge = aParticle->GetDefinition()->GetPDGCharge(); - G4double beta = (pPreStepPoint->GetBeta() + pPostStepPoint->GetBeta())*0.5; + G4double beta = (pPreStepPoint->GetBeta() + pPostStepPoint->GetBeta()) * 0.5; - //fNumPhotons = 0; // in PostStepGetPhysicalInteractionLength() + // fNumPhotons = 0; // in PostStepGetPhysicalInteractionLength() - G4double MeanNumberOfPhotons = - GetAverageNumberOfPhotons(charge,beta,aMaterial,Rindex); + G4double MeanNumberOfPhotons = + GetAverageNumberOfPhotons(charge, beta, aMaterial, Rindex); - if (MeanNumberOfPhotons <= 0.0) { + if(MeanNumberOfPhotons <= 0.0) + { // return unchanged particle and no secondaries aParticleChange.SetNumberOfSecondaries(0); return pParticleChange; } G4double step_length = aStep.GetStepLength(); - MeanNumberOfPhotons = MeanNumberOfPhotons * step_length; - fNumPhotons = (G4int)G4Poisson(MeanNumberOfPhotons); + MeanNumberOfPhotons = MeanNumberOfPhotons * step_length; + fNumPhotons = (G4int) G4Poisson(MeanNumberOfPhotons); - if (fNumPhotons <= 0 || !fStackingFlag) { - // return unchanged particle and no secondaries + if(fNumPhotons <= 0 || !fStackingFlag) + { + // return unchanged particle and no secondaries aParticleChange.SetNumberOfSecondaries(0); return pParticleChange; } @@ -194,66 +259,71 @@ G4Cerenkov::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) //////////////////////////////////////////////////////////////// aParticleChange.SetNumberOfSecondaries(fNumPhotons); - if (fTrackSecondariesFirst) { - if (aTrack.GetTrackStatus() == fAlive) - aParticleChange.ProposeTrackStatus(fSuspend); + if(fTrackSecondariesFirst) + { + if(aTrack.GetTrackStatus() == fAlive) + aParticleChange.ProposeTrackStatus(fSuspend); } //////////////////////////////////////////////////////////////// G4double Pmin = Rindex->GetMinLowEdgeEnergy(); G4double Pmax = Rindex->GetMaxLowEdgeEnergy(); - G4double dp = Pmax - Pmin; + G4double dp = Pmax - Pmin; - G4double nMax = Rindex->GetMaxValue(); - G4double BetaInverse = 1./beta; + G4double nMax = Rindex->GetMaxValue(); + G4double BetaInverse = 1. / beta; - G4double maxCos = BetaInverse / nMax; + G4double maxCos = BetaInverse / nMax; G4double maxSin2 = (1.0 - maxCos) * (1.0 + maxCos); - G4double beta1 = pPreStepPoint ->GetBeta(); + G4double beta1 = pPreStepPoint->GetBeta(); G4double beta2 = pPostStepPoint->GetBeta(); G4double MeanNumberOfPhotons1 = - GetAverageNumberOfPhotons(charge,beta1,aMaterial,Rindex); + GetAverageNumberOfPhotons(charge, beta1, aMaterial, Rindex); G4double MeanNumberOfPhotons2 = - GetAverageNumberOfPhotons(charge,beta2,aMaterial,Rindex); + GetAverageNumberOfPhotons(charge, beta2, aMaterial, Rindex); - for (G4int i=0; iValue(sampledEnergy); - cosTheta = BetaInverse / sampledRI; + do + { + rand = G4UniformRand(); + sampledEnergy = Pmin + rand * dp; + sampledRI = Rindex->Value(sampledEnergy); + cosTheta = BetaInverse / sampledRI; - sin2Theta = (1.0 - cosTheta)*(1.0 + cosTheta); - rand = G4UniformRand(); + sin2Theta = (1.0 - cosTheta) * (1.0 + cosTheta); + rand = G4UniformRand(); // Loop checking, 07-Aug-2015, Vladimir Ivanchenko - } while (rand*maxSin2 > sin2Theta); + } while(rand * maxSin2 > sin2Theta); // Create photon momentum direction vector. The momentum direction is still // with respect to the coordinate system where the primary particle - // direction is aligned with the z axis - rand = G4UniformRand(); - G4double phi = twopi*rand; - G4double sinPhi = std::sin(phi); - G4double cosPhi = std::cos(phi); - G4double sinTheta = std::sqrt(sin2Theta); - G4ParticleMomentum photonMomentum(sinTheta*cosPhi, sinTheta*sinPhi, cosTheta); + // direction is aligned with the z axis + rand = G4UniformRand(); + G4double phi = twopi * rand; + G4double sinPhi = std::sin(phi); + G4double cosPhi = std::cos(phi); + G4double sinTheta = std::sqrt(sin2Theta); + G4ParticleMomentum photonMomentum(sinTheta * cosPhi, sinTheta * sinPhi, + cosTheta); - // Rotate momentum direction back to global reference system + // Rotate momentum direction back to global reference system photonMomentum.rotateUz(p0); - // Determine polarization of new photon - G4ThreeVector photonPolarization(cosTheta*cosPhi, cosTheta*sinPhi, -sinTheta); + // Determine polarization of new photon + G4ThreeVector photonPolarization(cosTheta * cosPhi, cosTheta * sinPhi, + -sinTheta); - // Rotate back to original coord system + // Rotate back to original coord system photonPolarization.rotateUz(p0); // Generate a new photon: @@ -265,285 +335,258 @@ G4Cerenkov::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) G4double NumberOfPhotons, N; - do { - rand = G4UniformRand(); - NumberOfPhotons = MeanNumberOfPhotons1 - rand * - (MeanNumberOfPhotons1-MeanNumberOfPhotons2); - N = G4UniformRand() * - std::max(MeanNumberOfPhotons1,MeanNumberOfPhotons2); + do + { + rand = G4UniformRand(); + NumberOfPhotons = MeanNumberOfPhotons1 - + rand * (MeanNumberOfPhotons1 - MeanNumberOfPhotons2); + N = + G4UniformRand() * std::max(MeanNumberOfPhotons1, MeanNumberOfPhotons2); // Loop checking, 07-Aug-2015, Vladimir Ivanchenko - } while (N > NumberOfPhotons); + } while(N > NumberOfPhotons); G4double delta = rand * aStep.GetStepLength(); - G4double deltaTime = delta / (pPreStepPoint->GetVelocity() + - rand*(pPostStepPoint->GetVelocity() - - pPreStepPoint->GetVelocity())*0.5); + G4double deltaTime = + delta / + (pPreStepPoint->GetVelocity() + + rand * (pPostStepPoint->GetVelocity() - pPreStepPoint->GetVelocity()) * + 0.5); - G4double aSecondaryTime = t0 + deltaTime; + G4double aSecondaryTime = t0 + deltaTime; G4ThreeVector aSecondaryPosition = x0 + rand * aStep.GetDeltaPosition(); // Generate new G4Track object: - G4Track* aSecondaryTrack = - new G4Track(aCerenkovPhoton,aSecondaryTime,aSecondaryPosition); + G4Track* aSecondaryTrack = + new G4Track(aCerenkovPhoton, aSecondaryTime, aSecondaryPosition); aSecondaryTrack->SetTouchableHandle( - aStep.GetPreStepPoint()->GetTouchableHandle()); + aStep.GetPreStepPoint()->GetTouchableHandle()); aSecondaryTrack->SetParentID(aTrack.GetTrackID()); aParticleChange.AddSecondary(aSecondaryTrack); } - if (verboseLevel>1) { + if(verboseLevel > 1) + { G4cout << "\n Exiting from G4Cerenkov::DoIt -- NumberOfSecondaries = " - << aParticleChange.GetNumberOfSecondaries() << G4endl; + << aParticleChange.GetNumberOfSecondaries() << G4endl; } return pParticleChange; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void G4Cerenkov::BuildThePhysicsTable() +void G4Cerenkov::PreparePhysicsTable(const G4ParticleDefinition&) { - if (thePhysicsTable) return; - - const G4MaterialTable* theMaterialTable= - G4Material::GetMaterialTable(); - G4int numOfMaterials = G4Material::GetNumberOfMaterials(); - - thePhysicsTable = new G4PhysicsTable(numOfMaterials); - - // loop over materials - for (G4int i=0; iGetMaterialPropertiesTable(); - - if (aMaterialPropertiesTable) { - aPhysicsOrderedFreeVector = new G4PhysicsOrderedFreeVector(); - G4MaterialPropertyVector* theRefractionIndexVector = - aMaterialPropertiesTable->GetProperty(kRINDEX); - - if (theRefractionIndexVector) { - // Retrieve the first refraction index in vector - // of (photon energy, refraction index) pairs - G4double currentRI = (*theRefractionIndexVector)[0]; - - if (currentRI > 1.0) { - // Create first (photon energy, Cerenkov Integral) pair - G4double currentPM = theRefractionIndexVector->Energy(0); - G4double currentCAI = 0.0; - - aPhysicsOrderedFreeVector->InsertValues(currentPM , currentCAI); - - // Set previous values to current ones prior to loop - G4double prevPM = currentPM; - G4double prevCAI = currentCAI; - G4double prevRI = currentRI; - - // loop over all (photon energy, refraction index) - // pairs stored for this material - for (size_t ii = 1; - ii < theRefractionIndexVector->GetVectorLength(); - ++ii) { - currentRI = (*theRefractionIndexVector)[ii]; - currentPM = theRefractionIndexVector->Energy(ii); - currentCAI = prevCAI + (currentPM - prevPM) * - 0.5*(1.0/(prevRI*prevRI) + 1.0/(currentRI*currentRI)); - - aPhysicsOrderedFreeVector->InsertValues(currentPM, currentCAI); - - prevPM = currentPM; - prevCAI = currentCAI; - prevRI = currentRI; - } - } - } - } - - // The Cerenkov integral for a given material will be inserted in - // thePhysicsTable according to the position of the material in - // the material table. - thePhysicsTable->insertAt(i,aPhysicsOrderedFreeVector); - } + Initialise(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4double G4Cerenkov::GetMeanFreePath(const G4Track&, - G4double, - G4ForceCondition*) +G4double G4Cerenkov::GetMeanFreePath(const G4Track&, G4double, + G4ForceCondition*) { return 1.; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4double G4Cerenkov::PostStepGetPhysicalInteractionLength( - const G4Track& aTrack, - G4double, - G4ForceCondition* condition) + const G4Track& aTrack, G4double, G4ForceCondition* condition) { - *condition = NotForced; + *condition = NotForced; G4double StepLimit = DBL_MAX; - fNumPhotons = 0; + fNumPhotons = 0; const G4Material* aMaterial = aTrack.GetMaterial(); - G4int materialIndex = aMaterial->GetIndex(); + G4int materialIndex = aMaterial->GetIndex(); // If Physics Vector is not defined no Cerenkov photons - if (!(*thePhysicsTable)[materialIndex]) { return StepLimit; } + if(!(*thePhysicsTable)[materialIndex]) + { + return StepLimit; + } const G4DynamicParticle* aParticle = aTrack.GetDynamicParticle(); const G4MaterialCutsCouple* couple = aTrack.GetMaterialCutsCouple(); - G4double kineticEnergy = aParticle->GetKineticEnergy(); + G4double kineticEnergy = aParticle->GetKineticEnergy(); const G4ParticleDefinition* particleType = aParticle->GetDefinition(); - G4double mass = particleType->GetPDGMass(); + G4double mass = particleType->GetPDGMass(); G4double beta = aParticle->GetTotalMomentum() / aParticle->GetTotalEnergy(); - G4double gamma = aParticle->GetTotalEnergy()/mass; + G4double gamma = aParticle->GetTotalEnergy() / mass; G4MaterialPropertiesTable* aMaterialPropertiesTable = - aMaterial->GetMaterialPropertiesTable(); + aMaterial->GetMaterialPropertiesTable(); G4MaterialPropertyVector* Rindex = nullptr; - if (aMaterialPropertiesTable) - Rindex = aMaterialPropertiesTable->GetProperty(kRINDEX); + if(aMaterialPropertiesTable) + Rindex = aMaterialPropertiesTable->GetProperty(kRINDEX); G4double nMax; - if (Rindex) { + if(Rindex) + { nMax = Rindex->GetMaxValue(); - } else { + } + else + { return StepLimit; } - G4double BetaMin = 1./nMax; - if (BetaMin >= 1.) return StepLimit; + G4double BetaMin = 1. / nMax; + if(BetaMin >= 1.) + return StepLimit; - G4double GammaMin = 1./std::sqrt(1.-BetaMin*BetaMin); - if (gamma < GammaMin) return StepLimit; + G4double GammaMin = 1. / std::sqrt(1. - BetaMin * BetaMin); + if(gamma < GammaMin) + return StepLimit; - G4double kinEmin = mass*(GammaMin-1.); + G4double kinEmin = mass * (GammaMin - 1.); G4double RangeMin = G4LossTableManager::Instance()->GetRange(particleType, kinEmin, couple); - G4double Range = - G4LossTableManager::Instance()->GetRange(particleType, kineticEnergy, couple); + G4double Range = G4LossTableManager::Instance()->GetRange( + particleType, kineticEnergy, couple); G4double Step = Range - RangeMin; // If the step is smaller than 1e-16 mm, it may happen that the particle // does not move. See bug 1992. // 2019-03-11: change to 1e-15 - if (Step < 1.e-15*mm) return StepLimit; - - if (Step < StepLimit) StepLimit = Step; + if(Step < 1.e-15 * mm) + return StepLimit; + + if(Step < StepLimit) + StepLimit = Step; // If user has defined an average maximum number of photons to be generated in - // a Step, then calculate the Step length for that number of photons. - if (fMaxPhotons > 0) { + // a Step, then calculate the Step length for that number of photons. + if(fMaxPhotons > 0) + { const G4double charge = aParticle->GetDefinition()->GetPDGCharge(); - G4double MeanNumberOfPhotons = - GetAverageNumberOfPhotons(charge,beta,aMaterial,Rindex); + G4double MeanNumberOfPhotons = + GetAverageNumberOfPhotons(charge, beta, aMaterial, Rindex); Step = 0.; - if (MeanNumberOfPhotons > 0.0) Step = fMaxPhotons / MeanNumberOfPhotons; - if (Step > 0. && Step < StepLimit) StepLimit = Step; + if(MeanNumberOfPhotons > 0.0) + Step = fMaxPhotons / MeanNumberOfPhotons; + if(Step > 0. && Step < StepLimit) + StepLimit = Step; } // If user has defined an maximum allowed change in beta per step - if (fMaxBetaChange > 0.) { - G4double dedx = - G4LossTableManager::Instance()->GetDEDX(particleType, kineticEnergy, couple); + if(fMaxBetaChange > 0.) + { + G4double dedx = G4LossTableManager::Instance()->GetDEDX( + particleType, kineticEnergy, couple); G4double deltaGamma = - gamma - 1./std::sqrt(1.-beta*beta* (1.-fMaxBetaChange)* (1.-fMaxBetaChange)); + gamma - 1. / std::sqrt(1. - beta * beta * (1. - fMaxBetaChange) * + (1. - fMaxBetaChange)); Step = mass * deltaGamma / dedx; - if (Step > 0. && Step < StepLimit) StepLimit = Step; + if(Step > 0. && Step < StepLimit) + StepLimit = Step; } *condition = StronglyForced; return StepLimit; } - //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4double -G4Cerenkov::GetAverageNumberOfPhotons(const G4double charge, - const G4double beta, - const G4Material* aMaterial, - G4MaterialPropertyVector* Rindex) const +G4double G4Cerenkov::GetAverageNumberOfPhotons( + const G4double charge, const G4double beta, const G4Material* aMaterial, + G4MaterialPropertyVector* Rindex) const // This routine computes the number of Cerenkov photons produced per // GEANT4-unit (millimeter) in the current medium. // ^^^^^^^^^^ { - const G4double Rfact = 369.81/(eV * cm); - if (beta <= 0.0) return 0.0; - G4double BetaInverse = 1./beta; + const G4double Rfact = 369.81 / (eV * cm); + if(beta <= 0.0) + return 0.0; + G4double BetaInverse = 1. / beta; // Vectors used in computation of Cerenkov Angle Integral: // - Refraction Indices for the current material // - new G4PhysicsOrderedFreeVector allocated to hold CAI's G4int materialIndex = aMaterial->GetIndex(); - // Retrieve the Cerenkov Angle Integrals for this material + // Retrieve the Cerenkov Angle Integrals for this material G4PhysicsOrderedFreeVector* CerenkovAngleIntegrals = - (G4PhysicsOrderedFreeVector*)((*thePhysicsTable)(materialIndex)); + (G4PhysicsOrderedFreeVector*) ((*thePhysicsTable)(materialIndex)); - if (!(CerenkovAngleIntegrals->IsFilledVectorExist())) return 0.0; + if(!(CerenkovAngleIntegrals->IsFilledVectorExist())) + return 0.0; - // Min and Max photon energies + // Min and Max photon energies G4double Pmin = Rindex->GetMinLowEdgeEnergy(); G4double Pmax = Rindex->GetMaxLowEdgeEnergy(); - // Min and Max Refraction Indices - G4double nMin = Rindex->GetMinValue(); + // Min and Max Refraction Indices + G4double nMin = Rindex->GetMinValue(); G4double nMax = Rindex->GetMaxValue(); - // Max Cerenkov Angle Integral + // Max Cerenkov Angle Integral G4double CAImax = CerenkovAngleIntegrals->GetMaxValue(); G4double dp, ge; - // If n(Pmax) < 1/Beta -- no photons generated - if (nMax < BetaInverse) { + // If n(Pmax) < 1/Beta -- no photons generated + if(nMax < BetaInverse) + { dp = 0.0; ge = 0.0; - } - // otherwise if n(Pmin) >= 1/Beta -- photons generated - else if (nMin > BetaInverse) { - dp = Pmax - Pmin; - ge = CAImax; - } + } + // otherwise if n(Pmin) >= 1/Beta -- photons generated + else if(nMin > BetaInverse) + { + dp = Pmax - Pmin; + ge = CAImax; + } // If n(Pmin) < 1/Beta, and n(Pmax) >= 1/Beta, then we need to find a P such // that the value of n(P) == 1/Beta. Interpolation is performed by the // GetEnergy() and Value() methods of the G4MaterialPropertiesTable and - // the Value() method of G4PhysicsVector. - else { + // the Value() method of G4PhysicsVector. + else + { Pmin = Rindex->GetEnergy(BetaInverse); - dp = Pmax - Pmin; + dp = Pmax - Pmin; G4double CAImin = CerenkovAngleIntegrals->Value(Pmin); - ge = CAImax - CAImin; + ge = CAImax - CAImin; - if (verboseLevel>1) { - G4cout << "CAImin = " << CAImin << G4endl - << "ge = " << ge << G4endl; + if(verboseLevel > 1) + { + G4cout << "CAImin = " << CAImin << G4endl << "ge = " << ge << G4endl; } } - - // Calculate number of photons - G4double NumPhotons = Rfact * charge/eplus * charge/eplus * - (dp - ge * BetaInverse*BetaInverse); - return NumPhotons; + // Calculate number of photons + G4double NumPhotons = Rfact * charge / eplus * charge / eplus * + (dp - ge * BetaInverse * BetaInverse); + + return NumPhotons; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void G4Cerenkov::SetTrackSecondariesFirst(const G4bool state) +{ + fTrackSecondariesFirst = state; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void G4Cerenkov::SetMaxBetaChangePerStep(const G4double value) +{ + fMaxBetaChange = value * CLHEP::perCent; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void G4Cerenkov::SetMaxNumPhotonsPerStep(const G4int NumPhotons) +{ + fMaxPhotons = NumPhotons; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void G4Cerenkov::DumpPhysicsTable() const { - G4PhysicsOrderedFreeVector *v; - for (size_t i=0 ; ientries(); ++i) { - v = (G4PhysicsOrderedFreeVector*)(*thePhysicsTable)[i]; - v->DumpValues(); + G4PhysicsOrderedFreeVector* v; + for(size_t i = 0; i < thePhysicsTable->entries(); ++i) + { + v = (G4PhysicsOrderedFreeVector*) (*thePhysicsTable)[i]; + v->DumpValues(); } } - diff --git a/source/processes/electromagnetic/xrays/src/G4Scintillation.cc b/source/processes/electromagnetic/xrays/src/G4Scintillation.cc index e9766fe014..f38aa6d746 100644 --- a/source/processes/electromagnetic/xrays/src/G4Scintillation.cc +++ b/source/processes/electromagnetic/xrays/src/G4Scintillation.cc @@ -62,7 +62,6 @@ // 2001-09-17, migration of Materials to pure STL (mma) // 2003-06-03, V.Ivanchenko fix compilation warnings // -// mail: gum@triumf.ca // //////////////////////////////////////////////////////////////////////// @@ -72,52 +71,50 @@ #include "G4SystemOfUnits.hh" #include "G4ParticleTypes.hh" #include "G4EmProcessSubType.hh" -#include "G4ScintillationTrackInformation.hh" +#include "G4OpticalParameters.hh" +#include "G4ScintillationTrackInformation.hh" #include "G4Scintillation.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4Scintillation::G4Scintillation(const G4String& processName, - G4ProcessType type) - : G4VRestDiscreteProcess(processName, type) , - fIntegralTable1(nullptr), - fIntegralTable2(nullptr), - fIntegralTable3(nullptr), - fTrackSecondariesFirst(false), - fFiniteRiseTime(false), - fYieldFactor(1.0), - fExcitationRatio(1.0), - fScintillationByParticleType(false), - fScintillationTrackInfo(false), - fStackingFlag(true), - fNumPhotons(0), - fEnhancedTimeConstants(false), - fEmSaturation(nullptr) + G4ProcessType type) + : G4VRestDiscreteProcess(processName, type) + , fIntegralTable1(nullptr) + , fIntegralTable2(nullptr) + , fIntegralTable3(nullptr) + , fNumPhotons(0) + , fEmSaturation(nullptr) { SetProcessSubType(fScintillation); #ifdef G4DEBUG_SCINTILLATION - ScintTrackEDep = 0.; - ScintTrackYield = 0.; + ScintTrackEDep = 0.; + ScintTrackYield = 0.; #endif - if (verboseLevel>0) { + if(verboseLevel > 0) + { G4cout << GetProcessName() << " is created " << G4endl; } + Initialise(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4Scintillation::~G4Scintillation() { - if (fIntegralTable1 != nullptr) { + if(fIntegralTable1 != nullptr) + { fIntegralTable1->clearAndDestroy(); delete fIntegralTable1; } - if (fIntegralTable2 != nullptr) { + if(fIntegralTable2 != nullptr) + { fIntegralTable2->clearAndDestroy(); delete fIntegralTable2; } - if (fIntegralTable3 != nullptr) { + if(fIntegralTable3 != nullptr) + { fIntegralTable3->clearAndDestroy(); delete fIntegralTable3; } @@ -126,344 +123,67 @@ G4Scintillation::~G4Scintillation() //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4bool G4Scintillation::IsApplicable(const G4ParticleDefinition& aParticleType) { - return (aParticleType.GetPDGCharge() == 0.0 || - aParticleType.IsShortLived()) ? false : true; + return (aParticleType.GetPDGCharge() == 0.0 || aParticleType.IsShortLived()) + ? false + : true; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void G4Scintillation::PreparePhysicsTable(const G4ParticleDefinition&) +{ + Initialise(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void G4Scintillation::Initialise() +{ + G4OpticalParameters* params = G4OpticalParameters::Instance(); + SetTrackSecondariesFirst(params->GetScintTrackSecondariesFirst()); + SetFiniteRiseTime(params->GetScintFiniteRiseTime()); + SetScintillationYieldFactor(params->GetScintYieldFactor()); + SetScintillationExcitationRatio(params->GetScintExcitationRatio()); + SetScintillationByParticleType(params->GetScintByParticleType()); + SetEnhancedTimeConstants(params->GetScintEnhancedTimeConstants()); + SetScintillationTrackInfo(params->GetScintTrackInfo()); + SetStackPhotons(params->GetScintStackPhotons()); + SetVerboseLevel(params->GetScintVerboseLevel()); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void G4Scintillation::BuildPhysicsTable(const G4ParticleDefinition&) { - if (fIntegralTable1 != nullptr) { + if(fIntegralTable1 != nullptr) + { fIntegralTable1->clearAndDestroy(); delete fIntegralTable1; fIntegralTable1 = nullptr; } - if (fIntegralTable2 != nullptr) { + if(fIntegralTable2 != nullptr) + { fIntegralTable2->clearAndDestroy(); delete fIntegralTable2; fIntegralTable2 = nullptr; } - if (fIntegralTable3 != nullptr) { + if(fIntegralTable3 != nullptr) + { fIntegralTable3->clearAndDestroy(); delete fIntegralTable3; fIntegralTable3 = nullptr; } - BuildThePhysicsTable(); -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4VParticleChange* -G4Scintillation::AtRestDoIt(const G4Track& aTrack, const G4Step& aStep) -// This routine simply calls the equivalent PostStepDoIt since all the -// necessary information resides in aStep.GetTotalEnergyDeposit() -{ - return G4Scintillation::PostStepDoIt(aTrack, aStep); -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4VParticleChange* -G4Scintillation::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) -// This routine is called for each tracking step of a charged particle -// in a scintillator. A Poisson/Gauss-distributed number of photons is -// generated according to the scintillation yield formula, distributed -// evenly along the track segment and uniformly into 4pi. -{ - aParticleChange.Initialize(aTrack); - fNumPhotons = 0; - - const G4DynamicParticle* aParticle = aTrack.GetDynamicParticle(); - const G4Material* aMaterial = aTrack.GetMaterial(); - - G4StepPoint* pPreStepPoint = aStep.GetPreStepPoint(); - G4StepPoint* pPostStepPoint = aStep.GetPostStepPoint(); - - G4ThreeVector x0 = pPreStepPoint->GetPosition(); - G4ThreeVector p0 = aStep.GetDeltaPosition().unit(); - G4double t0 = pPreStepPoint->GetGlobalTime(); - - G4double TotalEnergyDeposit = aStep.GetTotalEnergyDeposit(); - - G4MaterialPropertiesTable* MPT = aMaterial->GetMaterialPropertiesTable(); - if (!MPT) return G4VRestDiscreteProcess::PostStepDoIt(aTrack, aStep); - - G4int N_timeconstants = 1; - - // only needed for old (two time constants) version - G4MaterialPropertyVector* Fast_Intensity = nullptr; - G4MaterialPropertyVector* Slow_Intensity = nullptr; - - if (fEnhancedTimeConstants) { - if (MPT->GetProperty(kSCINTILLATIONCOMPONENT3)) N_timeconstants = 3; - else if (MPT->GetProperty(kSCINTILLATIONCOMPONENT2)) N_timeconstants = 2; - else if (!(MPT->GetProperty(kSCINTILLATIONCOMPONENT1))) { - // no components were specified - return G4VRestDiscreteProcess::PostStepDoIt(aTrack, aStep); - } - } - else { // OLD METHOD - Fast_Intensity = MPT->GetProperty(kFASTCOMPONENT); - Slow_Intensity = MPT->GetProperty(kSLOWCOMPONENT); - if (!Fast_Intensity && !Slow_Intensity) - return G4VRestDiscreteProcess::PostStepDoIt(aTrack, aStep); - if (Fast_Intensity && Slow_Intensity) N_timeconstants = 2; - } - - G4double ResolutionScale = MPT->GetConstProperty(kRESOLUTIONSCALE); - G4double MeanNumberOfPhotons; - - G4double yield1 = 0.; - G4double yield2 = 0.; - G4double yield3 = 0.; - G4double sum_yields = 0.; - - if (!fEnhancedTimeConstants) { - // Scintillation depends on particle type, energy deposited - if (fScintillationByParticleType) { - MeanNumberOfPhotons = GetScintillationYieldByParticleType(aTrack, aStep); - } else { - // The default linear scintillation process - // Units: [# scintillation photons / MeV] - MeanNumberOfPhotons = MPT->GetConstProperty(kSCINTILLATIONYIELD)*fYieldFactor; - // Birk's correction via fEmSaturation and specifying scintillation by - // by particle type are physically mutually exclusive - if (fEmSaturation) - MeanNumberOfPhotons *= (fEmSaturation->VisibleEnergyDepositionAtAStep(&aStep)); - else - MeanNumberOfPhotons *= TotalEnergyDeposit; - } - } - - else { - if (fScintillationByParticleType) { - MeanNumberOfPhotons = - GetScintillationYieldByParticleType(aTrack, aStep, yield1, yield2, yield3); - } else { - yield1 = MPT->GetConstProperty(kSCINTILLATIONYIELD1); // this needs to exist - yield2 = MPT->ConstPropertyExists(kSCINTILLATIONYIELD2) ? - MPT->GetConstProperty(kSCINTILLATIONYIELD2) : 0.; - yield3 = MPT->ConstPropertyExists(kSCINTILLATIONYIELD3) ? - MPT->GetConstProperty(kSCINTILLATIONYIELD3) : 0.; - // The default linear scintillation process - // Units: [# scintillation photons / MeV] - MeanNumberOfPhotons = MPT->GetConstProperty(kSCINTILLATIONYIELD)*fYieldFactor; - // Birk's correction via fEmSaturation and specifying scintillation by - // by particle type are physically mutually exclusive - if (fEmSaturation) - MeanNumberOfPhotons *= (fEmSaturation->VisibleEnergyDepositionAtAStep(&aStep)); - else - MeanNumberOfPhotons *= TotalEnergyDeposit; - } - sum_yields = yield1 + yield2 + yield3; - } - - if (MeanNumberOfPhotons > 10.) { - G4double sigma = ResolutionScale * std::sqrt(MeanNumberOfPhotons); - fNumPhotons = G4int(G4RandGauss::shoot(MeanNumberOfPhotons,sigma)+0.5); - } - else { - fNumPhotons = G4int(G4Poisson(MeanNumberOfPhotons)); - } - - if (fNumPhotons <= 0 || !fStackingFlag) { - // return unchanged particle and no secondaries - aParticleChange.SetNumberOfSecondaries(0); - return G4VRestDiscreteProcess::PostStepDoIt(aTrack, aStep); - } - - aParticleChange.SetNumberOfSecondaries(fNumPhotons); - - if (fTrackSecondariesFirst) { - if (aTrack.GetTrackStatus() == fAlive) - aParticleChange.ProposeTrackStatus(fSuspend); - } - - G4int materialIndex = aMaterial->GetIndex(); - - // Retrieve the Scintillation Integral for this material - // new G4PhysicsOrderedFreeVector allocated to hold CII's - size_t numPhot = fNumPhotons; - G4double scintTime = 0.; - G4double riseTime = 0.; - G4PhysicsOrderedFreeVector* scintIntegral = nullptr; - G4ScintillationType scintType = Slow; - - for (G4int scnt=0; scntGetConstProperty(kFASTTIMECONSTANT); - if (fFiniteRiseTime) { - riseTime = MPT->GetConstProperty(kFASTSCINTILLATIONRISETIME); - } - scintType = Fast; - scintIntegral = - (G4PhysicsOrderedFreeVector*)((*fIntegralTable1)(materialIndex)); - } - if (Slow_Intensity) { - scintTime = MPT->GetConstProperty(kSLOWTIMECONSTANT); - if (fFiniteRiseTime) { - riseTime = MPT->GetConstProperty(kSLOWSCINTILLATIONRISETIME); - } - scintType = Slow; - scintIntegral = - (G4PhysicsOrderedFreeVector*)((*fIntegralTable3)(materialIndex)); - } - } - else { /// N_timeconstants != 1 and still scnt == 0 - G4double yieldRatio = MPT->GetConstProperty(kYIELDRATIO); - if (fExcitationRatio == 1.0 || fExcitationRatio == 0.0) { - numPhot = G4int(std::min(yieldRatio,1.0) * fNumPhotons); - } else { - numPhot = G4int(std::min(fExcitationRatio,1.0) * fNumPhotons); - } - scintTime = MPT->GetConstProperty(kFASTTIMECONSTANT); - if (fFiniteRiseTime) { - riseTime = MPT->GetConstProperty(kFASTSCINTILLATIONRISETIME); - } - scintType = Fast; - scintIntegral = - (G4PhysicsOrderedFreeVector*)((*fIntegralTable1)(materialIndex)); - } - } - else { // scnt != 0 - numPhot = fNumPhotons - numPhot; - scintTime = MPT->GetConstProperty(kSLOWTIMECONSTANT); - if (fFiniteRiseTime) { - riseTime = MPT->GetConstProperty(kSLOWSCINTILLATIONRISETIME); - } - scintType = Slow; - scintIntegral = - (G4PhysicsOrderedFreeVector*)((*fIntegralTable3)(materialIndex)); - } - } - else { // fEnhancedTimeConstants == true - // in the new method, if there is 1 time constant it is #1, etc. - // Note: fExcitationRatio is not used - if (scnt == 0) { - numPhot = yield1 / sum_yields * fNumPhotons; - scintTime = MPT->GetConstProperty(kSCINTILLATIONTIMECONSTANT1); - if (fFiniteRiseTime) { - riseTime = MPT->GetConstProperty(kSCINTILLATIONRISETIME1); - } - scintType = Fast; - scintIntegral = - (G4PhysicsOrderedFreeVector*)((*fIntegralTable1)(materialIndex)); - } - else if (scnt == 1) { - // to be consistent with old version (due to double->int conversion) - if (N_timeconstants == 2) { - numPhot = fNumPhotons - numPhot; - } else { - numPhot = yield2 / sum_yields * fNumPhotons; - } - scintTime = MPT->GetConstProperty(kSCINTILLATIONTIMECONSTANT2); - if (fFiniteRiseTime) { - riseTime = MPT->GetConstProperty(kSCINTILLATIONRISETIME2); - } - scintType = Medium; - scintIntegral = - (G4PhysicsOrderedFreeVector*)((*fIntegralTable2)(materialIndex)); - } - else if (scnt == 2) { - numPhot = yield3 / sum_yields * fNumPhotons; - scintTime = MPT->GetConstProperty(kSCINTILLATIONTIMECONSTANT3); - if (fFiniteRiseTime) { - riseTime = MPT->GetConstProperty(kSCINTILLATIONRISETIME3); - } - scintType = Slow; - scintIntegral = - (G4PhysicsOrderedFreeVector*)((*fIntegralTable3)(materialIndex)); - } - } - - if (!scintIntegral) continue; - - G4double CIImax = scintIntegral->GetMaxValue(); - for (size_t i=0; iGetEnergy(CIIvalue); - - if (verboseLevel>1) { - G4cout << "sampledEnergy = " << sampledEnergy << G4endl; - G4cout << "CIIvalue = " << CIIvalue << G4endl; - } - - // Generate random photon direction - G4double cost = 1. - 2.*G4UniformRand(); - G4double sint = std::sqrt((1.-cost)*(1.+cost)); - G4double phi = twopi*G4UniformRand(); - G4double sinp = std::sin(phi); - G4double cosp = std::cos(phi); - G4ParticleMomentum photonMomentum(sint*cosp, sint*sinp, cost); - - // Determine polarization of new photon - G4ThreeVector photonPolarization(cost*cosp, cost*sinp, -sint); - G4ThreeVector perp = photonMomentum.cross(photonPolarization); - phi = twopi*G4UniformRand(); - sinp = std::sin(phi); - cosp = std::cos(phi); - photonPolarization = (cosp*photonPolarization + sinp*perp).unit(); - - // Generate a new photon: - G4DynamicParticle* scintPhoton = - new G4DynamicParticle(opticalphoton, photonMomentum); - scintPhoton->SetPolarization(photonPolarization); - scintPhoton->SetKineticEnergy(sampledEnergy); - - // Generate new G4Track object: - G4double rand = G4UniformRand(); - if (aParticle->GetDefinition()->GetPDGCharge() == 0) { - rand = 1.0; - } - - // emission time distribution - G4double delta = rand * aStep.GetStepLength(); - G4double deltaTime = delta / (pPreStepPoint->GetVelocity() + - rand*(pPostStepPoint->GetVelocity() - - pPreStepPoint->GetVelocity())/2.); - if (riseTime == 0.0) { - deltaTime -= scintTime * std::log(G4UniformRand()); - } else { - deltaTime += sample_time(riseTime, scintTime); - } - - G4double secTime = t0 + deltaTime; - G4ThreeVector secPosition = x0 + rand * aStep.GetDeltaPosition(); - - G4Track* secTrack = new G4Track(scintPhoton, secTime, secPosition); - secTrack->SetTouchableHandle(aStep.GetPreStepPoint()->GetTouchableHandle()); - secTrack->SetParentID(aTrack.GetTrackID()); - if (fScintillationTrackInfo) secTrack-> - SetUserInformation(new G4ScintillationTrackInformation(scintType)); - aParticleChange.AddSecondary(secTrack); - } - } - - if (verboseLevel>1) { - G4cout << "\n Exiting from G4Scintillation::DoIt -- NumberOfSecondaries = " - << aParticleChange.GetNumberOfSecondaries() << G4endl; - } - - return G4VRestDiscreteProcess::PostStepDoIt(aTrack, aStep); -} - -//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -void G4Scintillation::BuildThePhysicsTable() -{ - if (fIntegralTable1 && fIntegralTable2 && fIntegralTable3) return; const G4MaterialTable* materialTable = G4Material::GetMaterialTable(); - size_t numOfMaterials = G4Material::GetNumberOfMaterials(); + size_t numOfMaterials = G4Material::GetNumberOfMaterials(); // create new physics table - if (!fIntegralTable1) fIntegralTable1 = new G4PhysicsTable(numOfMaterials); - if (!fIntegralTable2) fIntegralTable2 = new G4PhysicsTable(numOfMaterials); - if (!fIntegralTable3) fIntegralTable3 = new G4PhysicsTable(numOfMaterials); + if(!fIntegralTable1) + fIntegralTable1 = new G4PhysicsTable(numOfMaterials); + if(!fIntegralTable2) + fIntegralTable2 = new G4PhysicsTable(numOfMaterials); + if(!fIntegralTable3) + fIntegralTable3 = new G4PhysicsTable(numOfMaterials); - for (size_t i=0; iGetMaterialPropertiesTable(); + ((*materialTable)[i])->GetMaterialPropertiesTable(); - if (MPT) { + if(MPT) + { // integral table 1 is either FASTCOMPONENT or SCINTILLATIONCOMPONENT1 G4MaterialPropertyVector* MPV = MPT->GetProperty(kFASTCOMPONENT); - if (!MPV) MPV = MPT->GetProperty(kSCINTILLATIONCOMPONENT1); - if (MPV) { + if(!MPV) + MPV = MPT->GetProperty(kSCINTILLATIONCOMPONENT1); + if(MPV) + { // Retrieve the first intensity point in vector // of (photon energy, intensity) pairs G4double currentIN = (*MPV)[0]; - if (currentIN >= 0.0) { + if(currentIN >= 0.0) + { // Create first (photon energy, Scintillation Integral pair - G4double currentPM = MPV->Energy(0); + G4double currentPM = MPV->Energy(0); G4double currentCII = 0.0; vector1->InsertValues(currentPM, currentCII); @@ -494,10 +218,12 @@ void G4Scintillation::BuildThePhysicsTable() // loop over all (photon energy, intensity) // pairs stored for this material - for (size_t ii=1; iiGetVectorLength(); ++ii) { + for(size_t ii = 1; ii < MPV->GetVectorLength(); ++ii) + { currentPM = MPV->Energy(ii); currentIN = (*MPV)[ii]; - currentCII = prevCII + 0.5*(currentPM - prevPM)*(prevIN + currentIN); + currentCII = + prevCII + 0.5 * (currentPM - prevPM) * (prevIN + currentIN); vector1->InsertValues(currentPM, currentCII); @@ -510,13 +236,15 @@ void G4Scintillation::BuildThePhysicsTable() // integral table 2 is SCINTILLATIONCOMPONENT2 MPV = MPT->GetProperty(kSCINTILLATIONCOMPONENT2); - if (MPV) { + if(MPV) + { // Retrieve the first intensity point in vector // of (photon energy, intensity) pairs G4double currentIN = (*MPV)[0]; - if (currentIN >= 0.0) { + if(currentIN >= 0.0) + { // Create first (photon energy, Scintillation Integral pair - G4double currentPM = MPV->Energy(0); + G4double currentPM = MPV->Energy(0); G4double currentCII = 0.0; vector2->InsertValues(currentPM, currentCII); @@ -527,10 +255,12 @@ void G4Scintillation::BuildThePhysicsTable() // loop over all (photon energy, intensity) // pairs stored for this material - for (size_t ii=1; iiGetVectorLength(); ++ii) { + for(size_t ii = 1; ii < MPV->GetVectorLength(); ++ii) + { currentPM = MPV->Energy(ii); currentIN = (*MPV)[ii]; - currentCII = prevCII + 0.5*(currentPM - prevPM)*(prevIN + currentIN); + currentCII = + prevCII + 0.5 * (currentPM - prevPM) * (prevIN + currentIN); vector2->InsertValues(currentPM, currentCII); @@ -542,14 +272,17 @@ void G4Scintillation::BuildThePhysicsTable() } // integral table 3 is either SLOWCOMPONENT or SCINTILLATIONCOMPONENT3 MPV = MPT->GetProperty(kSLOWCOMPONENT); - if (!MPV) MPV = MPT->GetProperty(kSCINTILLATIONCOMPONENT3); - if (MPV) { + if(!MPV) + MPV = MPT->GetProperty(kSCINTILLATIONCOMPONENT3); + if(MPV) + { // Retrieve the first intensity point in vector // of (photon energy, intensity) pairs G4double currentIN = (*MPV)[0]; - if (currentIN >= 0.0) { + if(currentIN >= 0.0) + { // Create first (photon energy, Scintillation Integral pair - G4double currentPM = MPV->Energy(0); + G4double currentPM = MPV->Energy(0); G4double currentCII = 0.0; vector3->InsertValues(currentPM, currentCII); @@ -560,10 +293,12 @@ void G4Scintillation::BuildThePhysicsTable() // loop over all (photon energy, intensity) // pairs stored for this material - for (size_t ii=1; iiGetVectorLength(); ++ii) { + for(size_t ii = 1; ii < MPV->GetVectorLength(); ++ii) + { currentPM = MPV->Energy(ii); currentIN = (*MPV)[ii]; - currentCII = prevCII + 0.5*(currentPM - prevPM)*(prevIN + currentIN); + currentCII = + prevCII + 0.5 * (currentPM - prevPM) * (prevIN + currentIN); vector3->InsertValues(currentPM, currentCII); @@ -574,27 +309,398 @@ void G4Scintillation::BuildThePhysicsTable() } } } - fIntegralTable1->insertAt(i, vector1); - fIntegralTable2->insertAt(i, vector2); - fIntegralTable3->insertAt(i, vector3); + fIntegralTable1->insertAt(i, vector1); + fIntegralTable2->insertAt(i, vector2); + fIntegralTable3->insertAt(i, vector3); } } +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +G4VParticleChange* G4Scintillation::AtRestDoIt(const G4Track& aTrack, + const G4Step& aStep) +// This routine simply calls the equivalent PostStepDoIt since all the +// necessary information resides in aStep.GetTotalEnergyDeposit() +{ + return G4Scintillation::PostStepDoIt(aTrack, aStep); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +G4VParticleChange* G4Scintillation::PostStepDoIt(const G4Track& aTrack, + const G4Step& aStep) +// This routine is called for each tracking step of a charged particle +// in a scintillator. A Poisson/Gauss-distributed number of photons is +// generated according to the scintillation yield formula, distributed +// evenly along the track segment and uniformly into 4pi. +{ + aParticleChange.Initialize(aTrack); + fNumPhotons = 0; + + const G4DynamicParticle* aParticle = aTrack.GetDynamicParticle(); + const G4Material* aMaterial = aTrack.GetMaterial(); + + G4StepPoint* pPreStepPoint = aStep.GetPreStepPoint(); + G4StepPoint* pPostStepPoint = aStep.GetPostStepPoint(); + + G4ThreeVector x0 = pPreStepPoint->GetPosition(); + G4ThreeVector p0 = aStep.GetDeltaPosition().unit(); + G4double t0 = pPreStepPoint->GetGlobalTime(); + + G4double TotalEnergyDeposit = aStep.GetTotalEnergyDeposit(); + + G4MaterialPropertiesTable* MPT = aMaterial->GetMaterialPropertiesTable(); + if(!MPT) + return G4VRestDiscreteProcess::PostStepDoIt(aTrack, aStep); + + G4int N_timeconstants = 1; + + // only needed for old (two time constants) version + G4MaterialPropertyVector* Fast_Intensity = nullptr; + G4MaterialPropertyVector* Slow_Intensity = nullptr; + + if(fEnhancedTimeConstants) + { + if(MPT->GetProperty(kSCINTILLATIONCOMPONENT3)) + N_timeconstants = 3; + else if(MPT->GetProperty(kSCINTILLATIONCOMPONENT2)) + N_timeconstants = 2; + else if(!(MPT->GetProperty(kSCINTILLATIONCOMPONENT1))) + { + // no components were specified + return G4VRestDiscreteProcess::PostStepDoIt(aTrack, aStep); + } + } + else + { // OLD METHOD + Fast_Intensity = MPT->GetProperty(kFASTCOMPONENT); + Slow_Intensity = MPT->GetProperty(kSLOWCOMPONENT); + if(!Fast_Intensity && !Slow_Intensity) + return G4VRestDiscreteProcess::PostStepDoIt(aTrack, aStep); + if(Fast_Intensity && Slow_Intensity) + N_timeconstants = 2; + } + + G4double ResolutionScale = MPT->GetConstProperty(kRESOLUTIONSCALE); + G4double MeanNumberOfPhotons; + + G4double yield1 = 0.; + G4double yield2 = 0.; + G4double yield3 = 0.; + G4double sum_yields = 0.; + + if(!fEnhancedTimeConstants) + { + // Scintillation depends on particle type, energy deposited + if(fScintillationByParticleType) + { + MeanNumberOfPhotons = GetScintillationYieldByParticleType(aTrack, aStep); + } + else + { + // The default linear scintillation process + // Units: [# scintillation photons / MeV] + MeanNumberOfPhotons = + MPT->GetConstProperty(kSCINTILLATIONYIELD) * fYieldFactor; + // Birk's correction via fEmSaturation and specifying scintillation by + // by particle type are physically mutually exclusive + if(fEmSaturation) + MeanNumberOfPhotons *= + (fEmSaturation->VisibleEnergyDepositionAtAStep(&aStep)); + else + MeanNumberOfPhotons *= TotalEnergyDeposit; + } + } + + else + { + if(fScintillationByParticleType) + { + MeanNumberOfPhotons = GetScintillationYieldByParticleType( + aTrack, aStep, yield1, yield2, yield3); + } + else + { + yield1 = MPT->ConstPropertyExists(kSCINTILLATIONYIELD1) + ? MPT->GetConstProperty(kSCINTILLATIONYIELD1) + : 1.; + yield2 = MPT->ConstPropertyExists(kSCINTILLATIONYIELD2) + ? MPT->GetConstProperty(kSCINTILLATIONYIELD2) + : 0.; + yield3 = MPT->ConstPropertyExists(kSCINTILLATIONYIELD3) + ? MPT->GetConstProperty(kSCINTILLATIONYIELD3) + : 0.; + // The default linear scintillation process + // Units: [# scintillation photons / MeV] + MeanNumberOfPhotons = + MPT->GetConstProperty(kSCINTILLATIONYIELD) * fYieldFactor; + // Birk's correction via fEmSaturation and specifying scintillation by + // by particle type are physically mutually exclusive + if(fEmSaturation) + MeanNumberOfPhotons *= + (fEmSaturation->VisibleEnergyDepositionAtAStep(&aStep)); + else + MeanNumberOfPhotons *= TotalEnergyDeposit; + } + sum_yields = yield1 + yield2 + yield3; + } + + if(MeanNumberOfPhotons > 10.) + { + G4double sigma = ResolutionScale * std::sqrt(MeanNumberOfPhotons); + fNumPhotons = G4int(G4RandGauss::shoot(MeanNumberOfPhotons, sigma) + 0.5); + } + else + { + fNumPhotons = G4int(G4Poisson(MeanNumberOfPhotons)); + } + + if(fNumPhotons <= 0 || !fStackingFlag) + { + // return unchanged particle and no secondaries + aParticleChange.SetNumberOfSecondaries(0); + return G4VRestDiscreteProcess::PostStepDoIt(aTrack, aStep); + } + + aParticleChange.SetNumberOfSecondaries(fNumPhotons); + + if(fTrackSecondariesFirst) + { + if(aTrack.GetTrackStatus() == fAlive) + aParticleChange.ProposeTrackStatus(fSuspend); + } + + G4int materialIndex = aMaterial->GetIndex(); + + // Retrieve the Scintillation Integral for this material + // new G4PhysicsOrderedFreeVector allocated to hold CII's + size_t numPhot = fNumPhotons; + G4double scintTime = 0.; + G4double riseTime = 0.; + G4PhysicsOrderedFreeVector* scintIntegral = nullptr; + G4ScintillationType scintType = Slow; + + for(G4int scnt = 0; scnt < N_timeconstants; ++scnt) + { + // Original method with FAST and SLOW + if(!fEnhancedTimeConstants) + { + if(scnt == 0) + { + if(N_timeconstants == 1) + { + if(Fast_Intensity) + { + scintTime = MPT->GetConstProperty(kFASTTIMECONSTANT); + if(fFiniteRiseTime) + { + riseTime = MPT->GetConstProperty(kFASTSCINTILLATIONRISETIME); + } + scintType = Fast; + scintIntegral = + (G4PhysicsOrderedFreeVector*) ((*fIntegralTable1)(materialIndex)); + } + if(Slow_Intensity) + { + scintTime = MPT->GetConstProperty(kSLOWTIMECONSTANT); + if(fFiniteRiseTime) + { + riseTime = MPT->GetConstProperty(kSLOWSCINTILLATIONRISETIME); + } + scintType = Slow; + scintIntegral = + (G4PhysicsOrderedFreeVector*) ((*fIntegralTable3)(materialIndex)); + } + } + else + { /// N_timeconstants != 1 and still scnt == 0 + G4double yieldRatio = MPT->GetConstProperty(kYIELDRATIO); + if(fExcitationRatio == 1.0 || fExcitationRatio == 0.0) + { + numPhot = G4int(std::min(yieldRatio, 1.0) * fNumPhotons); + } + else + { + numPhot = G4int(std::min(fExcitationRatio, 1.0) * fNumPhotons); + } + scintTime = MPT->GetConstProperty(kFASTTIMECONSTANT); + if(fFiniteRiseTime) + { + riseTime = MPT->GetConstProperty(kFASTSCINTILLATIONRISETIME); + } + scintType = Fast; + scintIntegral = + (G4PhysicsOrderedFreeVector*) ((*fIntegralTable1)(materialIndex)); + } + } + else + { // scnt != 0 + numPhot = fNumPhotons - numPhot; + scintTime = MPT->GetConstProperty(kSLOWTIMECONSTANT); + if(fFiniteRiseTime) + { + riseTime = MPT->GetConstProperty(kSLOWSCINTILLATIONRISETIME); + } + scintType = Slow; + scintIntegral = + (G4PhysicsOrderedFreeVector*) ((*fIntegralTable3)(materialIndex)); + } + } + else + { // fEnhancedTimeConstants == true + // in the new method, if there is 1 time constant it is #1, etc. + // Note: fExcitationRatio is not used + if(scnt == 0) + { + if(N_timeconstants == 1) + { + numPhot = fNumPhotons; + } + else + { + numPhot = yield1 / sum_yields * fNumPhotons; + } + scintTime = MPT->GetConstProperty(kSCINTILLATIONTIMECONSTANT1); + if(fFiniteRiseTime) + { + riseTime = MPT->GetConstProperty(kSCINTILLATIONRISETIME1); + } + scintType = Fast; + scintIntegral = + (G4PhysicsOrderedFreeVector*) ((*fIntegralTable1)(materialIndex)); + } + else if(scnt == 1) + { + // to be consistent with old version (due to double->int conversion) + if(N_timeconstants == 2) + { + numPhot = fNumPhotons - numPhot; + } + else + { + numPhot = yield2 / sum_yields * fNumPhotons; + } + scintTime = MPT->GetConstProperty(kSCINTILLATIONTIMECONSTANT2); + if(fFiniteRiseTime) + { + riseTime = MPT->GetConstProperty(kSCINTILLATIONRISETIME2); + } + scintType = Medium; + scintIntegral = + (G4PhysicsOrderedFreeVector*) ((*fIntegralTable2)(materialIndex)); + } + else if(scnt == 2) + { + numPhot = yield3 / sum_yields * fNumPhotons; + scintTime = MPT->GetConstProperty(kSCINTILLATIONTIMECONSTANT3); + if(fFiniteRiseTime) + { + riseTime = MPT->GetConstProperty(kSCINTILLATIONRISETIME3); + } + scintType = Slow; + scintIntegral = + (G4PhysicsOrderedFreeVector*) ((*fIntegralTable3)(materialIndex)); + } + } + + if(!scintIntegral) + continue; + + G4double CIImax = scintIntegral->GetMaxValue(); + for(size_t i = 0; i < numPhot; ++i) + { + // Determine photon energy + G4double CIIvalue = G4UniformRand() * CIImax; + G4double sampledEnergy = scintIntegral->GetEnergy(CIIvalue); + + if(verboseLevel > 1) + { + G4cout << "sampledEnergy = " << sampledEnergy << G4endl; + G4cout << "CIIvalue = " << CIIvalue << G4endl; + } + + // Generate random photon direction + G4double cost = 1. - 2. * G4UniformRand(); + G4double sint = std::sqrt((1. - cost) * (1. + cost)); + G4double phi = twopi * G4UniformRand(); + G4double sinp = std::sin(phi); + G4double cosp = std::cos(phi); + G4ParticleMomentum photonMomentum(sint * cosp, sint * sinp, cost); + + // Determine polarization of new photon + G4ThreeVector photonPolarization(cost * cosp, cost * sinp, -sint); + G4ThreeVector perp = photonMomentum.cross(photonPolarization); + phi = twopi * G4UniformRand(); + sinp = std::sin(phi); + cosp = std::cos(phi); + photonPolarization = (cosp * photonPolarization + sinp * perp).unit(); + + // Generate a new photon: + G4DynamicParticle* scintPhoton = + new G4DynamicParticle(opticalphoton, photonMomentum); + scintPhoton->SetPolarization(photonPolarization); + scintPhoton->SetKineticEnergy(sampledEnergy); + + // Generate new G4Track object: + G4double rand = G4UniformRand(); + if(aParticle->GetDefinition()->GetPDGCharge() == 0) + { + rand = 1.0; + } + + // emission time distribution + G4double delta = rand * aStep.GetStepLength(); + G4double deltaTime = + delta / + (pPreStepPoint->GetVelocity() + + rand * (pPostStepPoint->GetVelocity() - pPreStepPoint->GetVelocity()) / + 2.); + if(riseTime == 0.0) + { + deltaTime -= scintTime * std::log(G4UniformRand()); + } + else + { + deltaTime += sample_time(riseTime, scintTime); + } + + G4double secTime = t0 + deltaTime; + G4ThreeVector secPosition = x0 + rand * aStep.GetDeltaPosition(); + + G4Track* secTrack = new G4Track(scintPhoton, secTime, secPosition); + secTrack->SetTouchableHandle( + aStep.GetPreStepPoint()->GetTouchableHandle()); + secTrack->SetParentID(aTrack.GetTrackID()); + if(fScintillationTrackInfo) + secTrack->SetUserInformation( + new G4ScintillationTrackInformation(scintType)); + aParticleChange.AddSecondary(secTrack); + } + } + + if(verboseLevel > 1) + { + G4cout << "\n Exiting from G4Scintillation::DoIt -- NumberOfSecondaries = " + << aParticleChange.GetNumberOfSecondaries() << G4endl; + } + + return G4VRestDiscreteProcess::PostStepDoIt(aTrack, aStep); +} + //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void G4Scintillation::SetScintillationByParticleType(const G4bool scintType) { - if (fEmSaturation) { - G4Exception("G4Scintillation::SetScintillationByParticleType", "Scint02", - JustWarning, - "Redefinition: Birks Saturation is replaced by ScintillationByParticleType!"); - RemoveSaturation(); + if(fEmSaturation && scintType) + { + G4Exception("G4Scintillation::SetScintillationByParticleType", "Scint02", + JustWarning, + "Redefinition: Birks Saturation is replaced by " + "ScintillationByParticleType!"); + RemoveSaturation(); } fScintillationByParticleType = scintType; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4double G4Scintillation::GetMeanFreePath(const G4Track&, - G4double, +G4double G4Scintillation::GetMeanFreePath(const G4Track&, G4double, G4ForceCondition* condition) { *condition = StronglyForced; @@ -613,67 +719,72 @@ G4double G4Scintillation::GetMeanLifeTime(const G4Track&, G4double G4Scintillation::sample_time(G4double tau1, G4double tau2) { // tau1: rise time and tau2: decay time - // Loop checking, 07-Aug-2015, Vladimir Ivanchenko - while (true) { + // Loop checking, 07-Aug-2015, Vladimir Ivanchenko + while(true) + { G4double ran1 = G4UniformRand(); G4double ran2 = G4UniformRand(); - + // exponential distribution as envelope function: very efficient - G4double d = (tau1+tau2)/tau2; + G4double d = (tau1 + tau2) / tau2; // make sure the envelope function is // always larger than the bi-exponential - G4double t = -1.0*tau2*std::log(1.-ran1); - G4double gg = d*single_exp(t,tau2); - if (ran2 <= bi_exp(t,tau1,tau2)/gg) return t; + G4double t = -1.0 * tau2 * std::log(1. - ran1); + G4double gg = d * single_exp(t, tau2); + if(ran2 <= bi_exp(t, tau1, tau2) / gg) + return t; } return -1.0; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4double G4Scintillation:: -GetScintillationYieldByParticleType(const G4Track &aTrack, const G4Step &aStep) +G4double G4Scintillation::GetScintillationYieldByParticleType( + const G4Track& aTrack, const G4Step& aStep) { // Get the G4MaterialPropertyVector containing the scintillation // yield as a function of the energy deposited and particle type G4ParticleDefinition* pDef = aTrack.GetDynamicParticle()->GetDefinition(); G4MaterialPropertyVector* scintVector = nullptr; - G4MaterialPropertiesTable* MPT = aTrack.GetMaterial()->GetMaterialPropertiesTable(); + G4MaterialPropertiesTable* MPT = + aTrack.GetMaterial()->GetMaterialPropertiesTable(); // Protons - if (pDef == G4Proton::ProtonDefinition()) + if(pDef == G4Proton::ProtonDefinition()) scintVector = MPT->GetProperty(kPROTONSCINTILLATIONYIELD); // Deuterons - else if (pDef == G4Deuteron::DeuteronDefinition()) + else if(pDef == G4Deuteron::DeuteronDefinition()) scintVector = MPT->GetProperty(kDEUTERONSCINTILLATIONYIELD); // Tritons - else if (pDef == G4Triton::TritonDefinition()) + else if(pDef == G4Triton::TritonDefinition()) scintVector = MPT->GetProperty(kTRITONSCINTILLATIONYIELD); // Alphas - else if (pDef == G4Alpha::AlphaDefinition()) + else if(pDef == G4Alpha::AlphaDefinition()) scintVector = MPT->GetProperty(kALPHASCINTILLATIONYIELD); // Ions (particles derived from G4VIon and G4Ions) and recoil ions // below the production cut from neutrons after hElastic - else if (pDef->GetParticleType() == "nucleus" || - pDef == G4Neutron::NeutronDefinition()) + else if(pDef->GetParticleType() == "nucleus" || + pDef == G4Neutron::NeutronDefinition()) scintVector = MPT->GetProperty(kIONSCINTILLATIONYIELD); - // Electrons (must also - else if (pDef == G4Electron::ElectronDefinition() || - pDef == G4Gamma::GammaDefinition()) + // Electrons (must also + else if(pDef == G4Electron::ElectronDefinition() || + pDef == G4Gamma::GammaDefinition()) scintVector = MPT->GetProperty(kELECTRONSCINTILLATIONYIELD); // Default for particles not enumerated/listed above // includes gamma to account for shell-binding energy // attributed to gamma from standard photoelectric effect) - else scintVector = MPT->GetProperty(kELECTRONSCINTILLATIONYIELD); + else + scintVector = MPT->GetProperty(kELECTRONSCINTILLATIONYIELD); // Throw an exception if no scintillation yield vector is found - if (!scintVector) { + if(!scintVector) + { G4ExceptionDescription ed; ed << "\nG4Scintillation::PostStepDoIt(): " << "Request for scintillation yield for energy deposit and particle\n" @@ -681,9 +792,10 @@ GetScintillationYieldByParticleType(const G4Track &aTrack, const G4Step &aStep) << "ScintillationByParticleType requires at minimum that \n" << "ELECTRONSCINTILLATIONYIELD is set by the user\n" << G4endl; - G4String comments = "Missing MaterialPropertiesTable entry - No correct entry in MaterialPropertiesTable"; - G4Exception("G4Scintillation::PostStepDoIt","Scint01", - FatalException,ed,comments); + G4String comments = "Missing MaterialPropertiesTable entry - No correct " + "entry in MaterialPropertiesTable"; + G4Exception("G4Scintillation::PostStepDoIt", "Scint01", FatalException, ed, + comments); } /////////////////////////////////////// @@ -693,29 +805,32 @@ GetScintillationYieldByParticleType(const G4Track &aTrack, const G4Step &aStep) // density along the track, light (L) is produced according to: // L_currentStep = L(PreStepKE) - L(PreStepKE - EDep) - G4double ScintillationYield = 0.; - G4double StepEnergyDeposit = aStep.GetTotalEnergyDeposit(); + G4double ScintillationYield = 0.; + G4double StepEnergyDeposit = aStep.GetTotalEnergyDeposit(); G4double PreStepKineticEnergy = aStep.GetPreStepPoint()->GetKineticEnergy(); - if (PreStepKineticEnergy <= scintVector->GetMaxEnergy()) { + if(PreStepKineticEnergy <= scintVector->GetMaxEnergy()) + { G4double Yield1 = scintVector->Value(PreStepKineticEnergy); - G4double Yield2 = scintVector->Value(PreStepKineticEnergy - StepEnergyDeposit); + G4double Yield2 = + scintVector->Value(PreStepKineticEnergy - StepEnergyDeposit); ScintillationYield = Yield1 - Yield2; - } else { + } + else + { G4ExceptionDescription ed; ed << "\nG4Scintillation::GetScintillationYieldByParticleType(): Request\n" - << "for scintillation light yield above the available energy range\n" - << "specifed in G4MaterialPropertiesTable. A linear interpolation\n" - << "will be performed to compute the scintillation light yield using\n" - << "(L_max / E_max) as the photon yield per unit energy." - << G4endl; + << "for scintillation light yield above the available energy range\n" + << "specified in G4MaterialPropertiesTable. A linear interpolation\n" + << "will be performed to compute the scintillation light yield using\n" + << "(L_max / E_max) as the photon yield per unit energy." << G4endl; G4String cmt = "\nScintillation yield may be unphysical!\n"; G4Exception("G4Scintillation::GetScintillationYieldByParticleType()", - "Scint03", JustWarning, ed, cmt); + "Scint03", JustWarning, ed, cmt); // Units: [# scintillation photons] - ScintillationYield = - scintVector->GetMaxValue()/scintVector->GetMaxEnergy() * StepEnergyDeposit; + ScintillationYield = scintVector->GetMaxValue() / + scintVector->GetMaxEnergy() * StepEnergyDeposit; } #ifdef G4DEBUG_SCINTILLATION @@ -724,23 +839,28 @@ GetScintillationYieldByParticleType(const G4Track &aTrack, const G4Step &aStep) ScintTrackEDep += StepEnergyDeposit; G4cout << "\n--- G4Scintillation::GetScintillationYieldByParticleType() ---\n" - << "--\n" - << "-- Name = " << aTrack.GetParticleDefinition()->GetParticleName() << "\n" - << "-- TrackID = " << aTrack.GetTrackID() << "\n" - << "-- ParentID = " << aTrack.GetParentID() << "\n" - << "-- Current KE = " << aTrack.GetKineticEnergy()/MeV << " MeV\n" - << "-- Step EDep = " << aStep.GetTotalEnergyDeposit()/MeV << " MeV\n" - << "-- Track EDep = " << ScintTrackEDep/MeV << " MeV\n" - << "-- Vertex KE = " << aTrack.GetVertexKineticEnergy()/MeV << " MeV\n" - << "-- Step yield = " << ScintillationYield << " photons\n" - << "-- Track yield = " << ScintTrackYield << " photons\n" - << G4endl; + << "--\n" + << "-- Name = " + << aTrack.GetParticleDefinition()->GetParticleName() << "\n" + << "-- TrackID = " << aTrack.GetTrackID() << "\n" + << "-- ParentID = " << aTrack.GetParentID() << "\n" + << "-- Current KE = " << aTrack.GetKineticEnergy() / MeV + << " MeV\n" + << "-- Step EDep = " << aStep.GetTotalEnergyDeposit() / MeV + << " MeV\n" + << "-- Track EDep = " << ScintTrackEDep / MeV << " MeV\n" + << "-- Vertex KE = " << aTrack.GetVertexKineticEnergy() / MeV + << " MeV\n" + << "-- Step yield = " << ScintillationYield << " photons\n" + << "-- Track yield = " << ScintTrackYield << " photons\n" + << G4endl; // The track has terminated within or has left the scintillator volume - if ((aTrack.GetTrackStatus() == fStopButAlive) or - (aStep.GetPostStepPoint()->GetStepStatus() == fGeomBoundary)) { + if((aTrack.GetTrackStatus() == fStopButAlive) or + (aStep.GetPostStepPoint()->GetStepStatus() == fGeomBoundary)) + { // Reset aggregators for the next track - ScintTrackEDep = 0.; + ScintTrackEDep = 0.; ScintTrackYield = 0.; } #endif @@ -749,9 +869,9 @@ GetScintillationYieldByParticleType(const G4Track &aTrack, const G4Step &aStep) } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4double G4Scintillation:: -GetScintillationYieldByParticleType(const G4Track &aTrack, const G4Step &aStep, - G4double &yield1, G4double &yield2, G4double &yield3) +G4double G4Scintillation::GetScintillationYieldByParticleType( + const G4Track& aTrack, const G4Step& aStep, G4double& yield1, + G4double& yield2, G4double& yield3) { // new in 10.7, allow multiple time constants with ScintByParticleType // Get the G4MaterialPropertyVector containing the scintillation @@ -759,74 +879,106 @@ GetScintillationYieldByParticleType(const G4Track &aTrack, const G4Step &aStep, G4ParticleDefinition* pDef = aTrack.GetDynamicParticle()->GetDefinition(); G4MaterialPropertyVector* yieldVector = nullptr; - G4MaterialPropertiesTable* MPT = aTrack.GetMaterial()->GetMaterialPropertiesTable(); + G4MaterialPropertiesTable* MPT = + aTrack.GetMaterial()->GetMaterialPropertiesTable(); // Protons - if (pDef == G4Proton::ProtonDefinition()) { + if(pDef == G4Proton::ProtonDefinition()) + { yieldVector = MPT->GetProperty(kPROTONSCINTILLATIONYIELD); - yield1 = MPT->GetConstProperty(kPROTONSCINTILLATIONYIELD1); - yield2 = MPT->ConstPropertyExists(kPROTONSCINTILLATIONYIELD2) ? - MPT->GetConstProperty(kPROTONSCINTILLATIONYIELD2) : 0.; - yield3 = MPT->ConstPropertyExists(kPROTONSCINTILLATIONYIELD3) ? - MPT->GetConstProperty(kPROTONSCINTILLATIONYIELD3) : 0.; + yield1 = MPT->ConstPropertyExists(kPROTONSCINTILLATIONYIELD1) + ? MPT->GetConstProperty(kPROTONSCINTILLATIONYIELD1) + : 1.; + yield2 = MPT->ConstPropertyExists(kPROTONSCINTILLATIONYIELD2) + ? MPT->GetConstProperty(kPROTONSCINTILLATIONYIELD2) + : 0.; + yield3 = MPT->ConstPropertyExists(kPROTONSCINTILLATIONYIELD3) + ? MPT->GetConstProperty(kPROTONSCINTILLATIONYIELD3) + : 0.; } // Deuterons - else if (pDef == G4Deuteron::DeuteronDefinition()) { + else if(pDef == G4Deuteron::DeuteronDefinition()) + { yieldVector = MPT->GetProperty(kDEUTERONSCINTILLATIONYIELD); - yield1 = MPT->GetConstProperty(kDEUTERONSCINTILLATIONYIELD1); - yield2 = MPT->ConstPropertyExists(kDEUTERONSCINTILLATIONYIELD2) ? - MPT->GetConstProperty(kDEUTERONSCINTILLATIONYIELD2) : 0.; - yield3 = MPT->ConstPropertyExists(kDEUTERONSCINTILLATIONYIELD3) ? - MPT->GetConstProperty(kDEUTERONSCINTILLATIONYIELD3) : 0.; + yield1 = MPT->ConstPropertyExists(kDEUTERONSCINTILLATIONYIELD1) + ? MPT->GetConstProperty(kDEUTERONSCINTILLATIONYIELD1) + : 1.; + yield2 = MPT->ConstPropertyExists(kDEUTERONSCINTILLATIONYIELD2) + ? MPT->GetConstProperty(kDEUTERONSCINTILLATIONYIELD2) + : 0.; + yield3 = MPT->ConstPropertyExists(kDEUTERONSCINTILLATIONYIELD3) + ? MPT->GetConstProperty(kDEUTERONSCINTILLATIONYIELD3) + : 0.; } // Tritons - else if (pDef == G4Triton::TritonDefinition()) { + else if(pDef == G4Triton::TritonDefinition()) + { yieldVector = MPT->GetProperty(kTRITONSCINTILLATIONYIELD); - yield1 = MPT->GetConstProperty(kTRITONSCINTILLATIONYIELD1); - yield2 = MPT->ConstPropertyExists(kTRITONSCINTILLATIONYIELD2) ? - MPT->GetConstProperty(kTRITONSCINTILLATIONYIELD2) : 0.; - yield3 = MPT->ConstPropertyExists(kTRITONSCINTILLATIONYIELD3) ? - MPT->GetConstProperty(kTRITONSCINTILLATIONYIELD3) : 0.; + yield1 = MPT->ConstPropertyExists(kTRITONSCINTILLATIONYIELD1) + ? MPT->GetConstProperty(kTRITONSCINTILLATIONYIELD1) + : 1.; + yield2 = MPT->ConstPropertyExists(kTRITONSCINTILLATIONYIELD2) + ? MPT->GetConstProperty(kTRITONSCINTILLATIONYIELD2) + : 0.; + yield3 = MPT->ConstPropertyExists(kTRITONSCINTILLATIONYIELD3) + ? MPT->GetConstProperty(kTRITONSCINTILLATIONYIELD3) + : 0.; } // Alphas - else if (pDef == G4Alpha::AlphaDefinition()) { + else if(pDef == G4Alpha::AlphaDefinition()) + { yieldVector = MPT->GetProperty(kALPHASCINTILLATIONYIELD); - yield1 = MPT->GetConstProperty(kALPHASCINTILLATIONYIELD1); - yield2 = MPT->ConstPropertyExists(kALPHASCINTILLATIONYIELD2) ? - MPT->GetConstProperty(kALPHASCINTILLATIONYIELD2) : 0.; - yield3 = MPT->ConstPropertyExists(kALPHASCINTILLATIONYIELD3) ? - MPT->GetConstProperty(kALPHASCINTILLATIONYIELD3) : 0.; + yield1 = MPT->ConstPropertyExists(kALPHASCINTILLATIONYIELD1) + ? MPT->GetConstProperty(kALPHASCINTILLATIONYIELD1) + : 1.; + yield2 = MPT->ConstPropertyExists(kALPHASCINTILLATIONYIELD2) + ? MPT->GetConstProperty(kALPHASCINTILLATIONYIELD2) + : 0.; + yield3 = MPT->ConstPropertyExists(kALPHASCINTILLATIONYIELD3) + ? MPT->GetConstProperty(kALPHASCINTILLATIONYIELD3) + : 0.; } // Ions (particles derived from G4VIon and G4Ions) and recoil ions // below the production cut from neutrons after hElastic - else if (pDef->GetParticleType() == "nucleus" || - pDef == G4Neutron::NeutronDefinition()) { + else if(pDef->GetParticleType() == "nucleus" || + pDef == G4Neutron::NeutronDefinition()) + { yieldVector = MPT->GetProperty(kIONSCINTILLATIONYIELD); - yield1 = MPT->GetConstProperty(kIONSCINTILLATIONYIELD1); - yield2 = MPT->ConstPropertyExists(kIONSCINTILLATIONYIELD2) ? - MPT->GetConstProperty(kIONSCINTILLATIONYIELD2) : 0.; - yield3 = MPT->ConstPropertyExists(kIONSCINTILLATIONYIELD3) ? - MPT->GetConstProperty(kIONSCINTILLATIONYIELD3) : 0.; + yield1 = MPT->ConstPropertyExists(kIONSCINTILLATIONYIELD1) + ? MPT->GetConstProperty(kIONSCINTILLATIONYIELD1) + : 1.; + yield2 = MPT->ConstPropertyExists(kIONSCINTILLATIONYIELD2) + ? MPT->GetConstProperty(kIONSCINTILLATIONYIELD2) + : 0.; + yield3 = MPT->ConstPropertyExists(kIONSCINTILLATIONYIELD3) + ? MPT->GetConstProperty(kIONSCINTILLATIONYIELD3) + : 0.; } // Electrons (must also account for shell-binding energy // attributed to gamma from standard photoelectric effect) // and, default for particles not enumerated/listed above - else { + else + { yieldVector = MPT->GetProperty(kELECTRONSCINTILLATIONYIELD); - yield1 = MPT->GetConstProperty(kELECTRONSCINTILLATIONYIELD1); - yield2 = MPT->ConstPropertyExists(kELECTRONSCINTILLATIONYIELD2) ? - MPT->GetConstProperty(kELECTRONSCINTILLATIONYIELD2) : 0.; - yield3 = MPT->ConstPropertyExists(kELECTRONSCINTILLATIONYIELD3) ? - MPT->GetConstProperty(kELECTRONSCINTILLATIONYIELD3) : 0.; + yield1 = MPT->ConstPropertyExists(kELECTRONSCINTILLATIONYIELD1) + ? MPT->GetConstProperty(kELECTRONSCINTILLATIONYIELD1) + : 1.; + yield2 = MPT->ConstPropertyExists(kELECTRONSCINTILLATIONYIELD2) + ? MPT->GetConstProperty(kELECTRONSCINTILLATIONYIELD2) + : 0.; + yield3 = MPT->ConstPropertyExists(kELECTRONSCINTILLATIONYIELD3) + ? MPT->GetConstProperty(kELECTRONSCINTILLATIONYIELD3) + : 0.; } // Throw an exception if no scintillation yield vector is found - if (!yieldVector) { + if(!yieldVector) + { G4ExceptionDescription ed; ed << "\nG4Scintillation::PostStepDoIt(): " << "Request for scintillation yield for energy deposit and particle\n" @@ -834,9 +986,10 @@ GetScintillationYieldByParticleType(const G4Track &aTrack, const G4Step &aStep, << "ScintillationByParticleType requires at minimum that \n" << "ELECTRONSCINTILLATIONYIELD is set by the user\n" << G4endl; - G4String comments = "Missing MaterialPropertiesTable entry - No correct entry in MaterialPropertiesTable"; - G4Exception("G4Scintillation::PostStepDoIt","Scint01", - FatalException,ed,comments); + G4String comments = "Missing MaterialPropertiesTable entry - No correct " + "entry in MaterialPropertiesTable"; + G4Exception("G4Scintillation::PostStepDoIt", "Scint01", FatalException, ed, + comments); } /////////////////////////////////////// @@ -846,31 +999,34 @@ GetScintillationYieldByParticleType(const G4Track &aTrack, const G4Step &aStep, // density along the track, light (L) is produced according to: // L_currentStep = L(PreStepKE) - L(PreStepKE - EDep) - G4double ScintillationYield = 0.; - G4double StepEnergyDeposit = aStep.GetTotalEnergyDeposit(); + G4double ScintillationYield = 0.; + G4double StepEnergyDeposit = aStep.GetTotalEnergyDeposit(); G4double PreStepKineticEnergy = aStep.GetPreStepPoint()->GetKineticEnergy(); - if (PreStepKineticEnergy <= yieldVector->GetMaxEnergy()) { - //G4double Yield1 = yieldVector->Value(PreStepKineticEnergy); - //G4double Yield2 = yieldVector->Value(PreStepKineticEnergy - StepEnergyDeposit); - //ScintillationYield = Yield1 - Yield2; - ScintillationYield = yieldVector->Value(PreStepKineticEnergy) - - yieldVector->Value(PreStepKineticEnergy - StepEnergyDeposit); - } else { + if(PreStepKineticEnergy <= yieldVector->GetMaxEnergy()) + { + // G4double Yield1 = yieldVector->Value(PreStepKineticEnergy); + // G4double Yield2 = yieldVector->Value(PreStepKineticEnergy - + // StepEnergyDeposit); ScintillationYield = Yield1 - Yield2; + ScintillationYield = + yieldVector->Value(PreStepKineticEnergy) - + yieldVector->Value(PreStepKineticEnergy - StepEnergyDeposit); + } + else + { G4ExceptionDescription ed; ed << "\nG4Scintillation::GetScintillationYieldByParticleType(): Request\n" - << "for scintillation light yield above the available energy range\n" - << "specifed in G4MaterialPropertiesTable. A linear interpolation\n" - << "will be performed to compute the scintillation light yield using\n" - << "(L_max / E_max) as the photon yield per unit energy." - << G4endl; + << "for scintillation light yield above the available energy range\n" + << "specified in G4MaterialPropertiesTable. A linear interpolation\n" + << "will be performed to compute the scintillation light yield using\n" + << "(L_max / E_max) as the photon yield per unit energy." << G4endl; G4String cmt = "\nScintillation yield may be unphysical!\n"; G4Exception("G4Scintillation::GetScintillationYieldByParticleType()", - "Scint03", JustWarning, ed, cmt); + "Scint03", JustWarning, ed, cmt); // Units: [# scintillation photons] - ScintillationYield = - yieldVector->GetMaxValue()/yieldVector->GetMaxEnergy() * StepEnergyDeposit; + ScintillationYield = yieldVector->GetMaxValue() / + yieldVector->GetMaxEnergy() * StepEnergyDeposit; } #ifdef G4DEBUG_SCINTILLATION @@ -879,23 +1035,28 @@ GetScintillationYieldByParticleType(const G4Track &aTrack, const G4Step &aStep, ScintTrackEDep += StepEnergyDeposit; G4cout << "\n--- G4Scintillation::GetScintillationYieldByParticleType() ---\n" - << "--\n" - << "-- Name = " << aTrack.GetParticleDefinition()->GetParticleName() << "\n" - << "-- TrackID = " << aTrack.GetTrackID() << "\n" - << "-- ParentID = " << aTrack.GetParentID() << "\n" - << "-- Current KE = " << aTrack.GetKineticEnergy()/MeV << " MeV\n" - << "-- Step EDep = " << aStep.GetTotalEnergyDeposit()/MeV << " MeV\n" - << "-- Track EDep = " << ScintTrackEDep/MeV << " MeV\n" - << "-- Vertex KE = " << aTrack.GetVertexKineticEnergy()/MeV << " MeV\n" - << "-- Step yield = " << ScintillationYield << " photons\n" - << "-- Track yield = " << ScintTrackYield << " photons\n" - << G4endl; + << "--\n" + << "-- Name = " + << aTrack.GetParticleDefinition()->GetParticleName() << "\n" + << "-- TrackID = " << aTrack.GetTrackID() << "\n" + << "-- ParentID = " << aTrack.GetParentID() << "\n" + << "-- Current KE = " << aTrack.GetKineticEnergy() / MeV + << " MeV\n" + << "-- Step EDep = " << aStep.GetTotalEnergyDeposit() / MeV + << " MeV\n" + << "-- Track EDep = " << ScintTrackEDep / MeV << " MeV\n" + << "-- Vertex KE = " << aTrack.GetVertexKineticEnergy() / MeV + << " MeV\n" + << "-- Step yield = " << ScintillationYield << " photons\n" + << "-- Track yield = " << ScintTrackYield << " photons\n" + << G4endl; // The track has terminated within or has left the scintillator volume - if ((aTrack.GetTrackStatus() == fStopButAlive) or - (aStep.GetPostStepPoint()->GetStepStatus() == fGeomBoundary)) { + if((aTrack.GetTrackStatus() == fStopButAlive) or + (aStep.GetPostStepPoint()->GetStepStatus() == fGeomBoundary)) + { // Reset aggregators for the next track - ScintTrackEDep = 0.; + ScintTrackEDep = 0.; ScintTrackYield = 0.; } #endif @@ -906,22 +1067,28 @@ GetScintillationYieldByParticleType(const G4Track &aTrack, const G4Step &aStep, //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void G4Scintillation::DumpPhysicsTable() const { - G4PhysicsOrderedFreeVector *v; - if (fIntegralTable1) { - for (size_t i=0; ientries(); ++i) { - v = (G4PhysicsOrderedFreeVector*)(*fIntegralTable1)[i]; + G4PhysicsOrderedFreeVector* v; + if(fIntegralTable1) + { + for(size_t i = 0; i < fIntegralTable1->entries(); ++i) + { + v = (G4PhysicsOrderedFreeVector*) (*fIntegralTable1)[i]; v->DumpValues(); } } - if (fIntegralTable2) { - for (size_t i=0 ; ientries(); ++i) { - v = (G4PhysicsOrderedFreeVector*)(*fIntegralTable2)[i]; + if(fIntegralTable2) + { + for(size_t i = 0; i < fIntegralTable2->entries(); ++i) + { + v = (G4PhysicsOrderedFreeVector*) (*fIntegralTable2)[i]; v->DumpValues(); } } - if (fIntegralTable3) { - for (size_t i=0 ; ientries(); ++i) { - v = (G4PhysicsOrderedFreeVector*)(*fIntegralTable3)[i]; + if(fIntegralTable3) + { + for(size_t i = 0; i < fIntegralTable3->entries(); ++i) + { + v = (G4PhysicsOrderedFreeVector*) (*fIntegralTable3)[i]; v->DumpValues(); } } diff --git a/source/processes/electromagnetic/xrays/src/G4ScintillationTrackInformation.cc b/source/processes/electromagnetic/xrays/src/G4ScintillationTrackInformation.cc index a533f4b525..eb4e547f1a 100644 --- a/source/processes/electromagnetic/xrays/src/G4ScintillationTrackInformation.cc +++ b/source/processes/electromagnetic/xrays/src/G4ScintillationTrackInformation.cc @@ -32,33 +32,33 @@ G4Allocator*& aScintillationTIAllocator() { - G4ThreadLocalStatic G4Allocator* - _instance = nullptr; - return _instance; + G4ThreadLocalStatic G4Allocator* _instance = + nullptr; + return _instance; } -const G4String G4ScintillationTrackInformation::BaseType = "G4ScintillationTrackInformation"; +const G4String G4ScintillationTrackInformation::BaseType = + "G4ScintillationTrackInformation"; -G4ScintillationTrackInformation::G4ScintillationTrackInformation(const G4ScintillationType& aType) -: G4VUserTrackInformation(BaseType), -scintillationType(aType) -{ -} +G4ScintillationTrackInformation::G4ScintillationTrackInformation( + const G4ScintillationType& aType) + : G4VUserTrackInformation(BaseType) + , scintillationType(aType) +{} -G4ScintillationTrackInformation::~G4ScintillationTrackInformation() -{ -} +G4ScintillationTrackInformation::~G4ScintillationTrackInformation() {} -G4ScintillationTrackInformation::G4ScintillationTrackInformation(const G4ScintillationTrackInformation& right) -: G4VUserTrackInformation(right), -scintillationType(right.scintillationType) -{ -} +G4ScintillationTrackInformation::G4ScintillationTrackInformation( + const G4ScintillationTrackInformation& right) + : G4VUserTrackInformation(right) + , scintillationType(right.scintillationType) +{} -G4ScintillationTrackInformation& G4ScintillationTrackInformation::operator=(const G4ScintillationTrackInformation& right) +G4ScintillationTrackInformation& G4ScintillationTrackInformation::operator=( + const G4ScintillationTrackInformation& right) { G4VUserTrackInformation::operator=(right); - this->scintillationType = right.scintillationType; + this->scintillationType = right.scintillationType; return *this; } @@ -67,13 +67,15 @@ void G4ScintillationTrackInformation::Print() const G4cout << "The user track information is a scintillation" << G4endl; } -G4bool G4ScintillationTrackInformation::IsScintillationTrackInformation(const G4VUserTrackInformation* const aTI) +G4bool G4ScintillationTrackInformation::IsScintillationTrackInformation( + const G4VUserTrackInformation* const aTI) { G4bool isSTI = (aTI && aTI->GetType() == BaseType.c_str()); return isSTI; } -G4ScintillationTrackInformation* G4ScintillationTrackInformation::Cast(const G4VUserTrackInformation* const aTI) +G4ScintillationTrackInformation* G4ScintillationTrackInformation::Cast( + const G4VUserTrackInformation* const aTI) { G4ScintillationTrackInformation* STI = nullptr; if(IsScintillationTrackInformation(aTI)) diff --git a/source/processes/hadronic/cross_sections/History b/source/processes/hadronic/cross_sections/History index 41bc401e99..c4f752ada0 100644 --- a/source/processes/hadronic/cross_sections/History +++ b/source/processes/hadronic/cross_sections/History @@ -14,6 +14,60 @@ code and to keep track of all tags. * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- +24 November 2020 - A. Ribon (hadr-cross-V10-06-17) +- G4EMDissociationCrossSection : apply fixes suggested by Laurie Nevay and + Andrey Abramov (bug report #2254) to avoid numerical crashes for ions + at low energies (we now set to zero the cross section for ion kinetic + energies below 2 MeV) and to avoid to create unphysical clusters of neutrons + (we now forbid to remove one proton from any hydrogen ions). + +12 November 2020 - B. Morgan (hadr-cross-V10-06-16) +- Apply typo fixes from Gurkan Myczko (https://github.com/Geant4/geant4/pull/15) + +31 October 2020 - Vladimir Ivanchenko (hadr-cross-V10-06-15) +- G4ParticleInelasticXS - removed debug cout + +26 October 2020 - Vladimir Ivanchenko (hadr-cross-V10-06-14) +- G4ParticleInelasticXS, G4NeutronCaptureXS, G4NeutronElasticXS, + G4NeutronInelasticXS - general clean-up of classes: + reuse existing high energy Glauber-Gribov cross section instances; + fixed fusion cross-sections; +- G4GammaNuclearXS - new cross section class + +17 October 2020 - Vladimir Ivanchenko (hadr-cross-V10-06-13) +- G4ProjectileFragmentCrossSection is removed because is unused + +15 October 2020 - Vladimir Ivanchenko (hadr-cross-V10-06-12) +- G4ParticleInelasticXS, G4NeutronCaptureXS, G4NeutronElasticXS, + G4NeutronInelasticXS - added G4VERBOSE compilation flag and + few minor code clean-up, should not affect any result + +11 October 2020 - Vladimir Ivanchenko (hadr-cross-V10-06-11) +- G4ParticleInelasticXS, G4NeutronCaptureXS, G4NeutronElasticXS, + G4NeutronInelasticXS - preparation for G4PARTICLEXS3.0 data + structure: extended list of isotopes +- G4ParticleInelasticXS - added gamma cross section + +06 October 2020 - Vladimir Ivanchenko (hadr-cross-V10-06-10) +- G4ParticleInelasticXS, G4NeutronCaptureXS, G4NeutronElasticXS, + G4NeutronInelasticXS - preparation for G4PARTICLEXS3.0 data + structure: for capture and elastic applied low-energy + parameterisation starting from second energy point of the data + set (better agreement with HP cross sections); exclude special + treatments for Hydrogen and Helium isotopes, because data for + fission reactions are available in the new data set; moved run time + method GetPhysicsVector() inlined + +11 September 2020 - Gabriele Cosmo (hadr-cross-V10-06-09) +- More fixes for Coverity defects warnings for non-initialised data.. + +04 September 2020 - Gabriele Cosmo (hadr-cross-V10-06-08) +- Fixed trivial Coverity defects warnings for non-initialised data. + +24 August 2020 - Vladimir Ivanchenko (hadr-cross-V10-06-07) +- G4ParticleInelasticXS - fixed header file +- G4IonProtonCrossSection - added cross sections for light ions + 18 June 2020 - Alberto Ribon (hadr-cross-V10-06-06) - G4CrossSectionElastic, G4CrossSectionInelastic : for ions and anti-ions, the max energy of applicability of the (elastic and inelastic) cross @@ -35,10 +89,10 @@ code and to keep track of all tags. 05 May 2020 - G.Folger (hadr-cross-V10-06-03) - fixes for clang10, mark class as final when dtor is final, Affected - include files: G4BGGNucleonElasticXS, G4BGGPionElasticXS, - G4BGGPionInelasticXS, G4ComponentGGHadronNucleusXsc, - G4NeutronCaptureXS, G4NeutronElasticXS, G4NeutronInelasticXS, - G4ParticleInelasticXS, + include files: G4BGGNucleonElasticXS, G4BGGPionElasticXS, + G4BGGPionInelasticXS, G4ComponentGGHadronNucleusXsc, + G4NeutronCaptureXS, G4NeutronElasticXS, G4NeutronInelasticXS, + G4ParticleInelasticXS, 24 April 2020 - V. Grichine (hadr-cross-V10-06-02) - G4ElNeutrinoNucleusTotXsc added for (nu_e,anti_nu_e)-nucleus cross sections @@ -46,7 +100,7 @@ code and to keep track of all tags. 03 March 2020 - Dennis Wright (hadr-cross-V10-06-01) - G4PhotoNuclearCrossSection: correct threshold for gamma + p -> pi0 + p, extend for use on 3H and 3He targets - + 30 January 2020 - Vladimir Ivanchenko (hadr-cross-V10-06-00) - G4HadronInelasticDataSet - fixed problem #2220 - wrong GHEISHA x-section @@ -64,7 +118,7 @@ code and to keep track of all tags. getenv -> std::getenv 10 October 2019 - Vladimir Ivanchenko (hadr-cross-V10-05-28) -- G4BGGPionInelasticXS, G4BGGPionElasticXS - clean-up pi+ x-section +- G4BGGPionInelasticXS, G4BGGPionElasticXS - clean-up pi+ x-section below 20 MeV 27 September 2019 - Vladimir Ivanchenko (hadr-cross-V10-05-27) @@ -73,12 +127,12 @@ code and to keep track of all tags. - G4UPiNuclearCrossSection - below 20 MeV cross section is now const, BGGPion cross section inplement low-energy part -16 September 2019 - V. Grichine (hadr-cross-V10-05-26) -- G4HadronNucleonXsc.hh/cc - new interface to G4ComponentGGHadronNucleonXsc +16 September 2019 - V. Grichine (hadr-cross-V10-05-26) +- G4HadronNucleonXsc.hh/cc - new interface to G4ComponentGGHadronNucleonXsc including s-,c-,b-, particles 27 August 2019 - Vladimir Ivanchenko (hadr-cross-V10-05-25) -- G4BGGNucleonInelasticXS, G4BGGNucleonElasticXS - use coherent +- G4BGGNucleonInelasticXS, G4BGGNucleonElasticXS - use coherent low-energy threshold 14 MeV; code clean-up - G4BGGPionInelasticXS, G4BGGPionElasticXS, G4ComponentBarNucleonNucleusXsc - cosmetic clean-up @@ -87,15 +141,15 @@ code and to keep track of all tags. - G4BGGPionInelasticXS, G4BGGPionElasticXS - use coherent low-energy limit 1 MeV - G4BGGNucleonInelasticXS, G4BGGNucleonElasticXS - minor clean-up -- G4UPiNuclearCrossSection - cleaned-up and optimise interpolation - method, moved two run time methods to inline, improve low-energy +- G4UPiNuclearCrossSection - cleaned-up and optimise interpolation + method, moved two run time methods to inline, improve low-energy parameterisation 19 August 2019 - Vladimir Ivanchenko (hadr-cross-V10-05-23) - G4HadronNucleonXsc - fixed K+p and K+n parameterisations (NS and VG) 07 August 2019 - Vladimir Ivanchenko (hadr-cross-V10-05-22) -- G4NeutronInelasticXS, G4ParticleInelasticXS, G4NeutronElasticXS - added +- G4NeutronInelasticXS, G4ParticleInelasticXS, G4NeutronElasticXS - added special method for tritium and He3 targets (fixed problem #2162), upload data only for elements used in geometry, code clean-up, use C++11 - G4NeutronElasticXS - implemented isotope cross section @@ -120,12 +174,12 @@ code and to keep track of all tags. for protons and neutrons by usage of separate vectors of correction coeffitients - G4BGGPionInelasticXS - fixed low-energy parameterisation (restore - one from Geant4 10.5, where low-energy limits were different for + one from Geant4 10.5, where low-energy limits were different for pi+ and pi-) 12 June 2019 - Vladimir Ivanchenko (hadr-cross-V10-05-16) -- G4BGGPionElasticXS, G4BGGPionInelasticXS - fixed initialisation for - pi+- by usage of separate vectors of correction factors; fixed +- G4BGGPionElasticXS, G4BGGPionInelasticXS - fixed initialisation for + pi+- by usage of separate vectors of correction factors; fixed computation for Hydrogen target - G4BGGNucleonElasticXS, G4BGGNucleonInelasticXS - fixed computation for Hydrogen target @@ -145,10 +199,10 @@ code and to keep track of all tags. 22 May 2019 - Vladimir Ivanchenko (hadr-cross-V10-05-12) - G4NeutronCaptureXS, G4NeutronElasticXS, G4NeutronInelasticXS - G4ParticleInelasticXS - clean-up classes assuming usage of the new + G4ParticleInelasticXS - clean-up classes assuming usage of the new data-set G4PARTICLEXSDATA2.0, removed unused variables and methods, use only methods with logarithm of energy -- G4VCrossSectionDataSet, G4CrossSectionDataStore, +- G4VCrossSectionDataSet, G4CrossSectionDataStore, - G4IonProtonCrossSection - use only methods with logarithm of energy - G4ComponentGGHadronNucleusXsc, G4ComponentGGNuclNuclXsc - removed unused obsolete methods @@ -159,7 +213,7 @@ code and to keep track of all tags. removed obsolete methods: ISApplicable.., PDG05 - G4VCrossSectionDataSet - use correct variable type -17 May 2019 - V. Grichine (hadr-cross-V10-05-10) +17 May 2019 - V. Grichine (hadr-cross-V10-05-10) - G4MuNeutrinoNucleusTotXsc.hh/cc - new method GetElementCrossSection 02 May 2019 - Vladimir Ivanchenko (hadr-cross-V10-05-09) @@ -168,25 +222,25 @@ code and to keep track of all tags. G4NucleonNuclearCrossSection, G4ComponentBarNucleonNucleusXsc, G4UPiNuclearCrossSection - share internal data vectors between threads, initilise data once, - removed unused parameters, code clean-up, use C++11 keywords + removed unused parameters, code clean-up, use C++11 keywords 12 April 2019 - V.Grichine (hadr-cross-V10-05-08) -- G4HadronNucleonXsc - extension to c- and b- mesons +- G4HadronNucleonXsc - extension to c- and b- mesons 09 April 2019 - V.Grichine (hadr-cross-V10-05-07) -- G4HadronNucleonXsc - extension to c- and b- hyperons +- G4HadronNucleonXsc - extension to c- and b- hyperons 07 April 2019 - Vladimir Ivanchenko (hadr-cross-V10-05-06) -- G4HadronNucleonXsc - added extra method for hyperon x-sections +- G4HadronNucleonXsc - added extra method for hyperon x-sections 17 March 2019 - Mihaly Novak (hadr-cross-V10-05-05) - G4NeutronElasticXS, G4NeutronInelasticXS, G4NeutronCaptureXS - utilise the new - G4PhysicsVector::Value method (global-V10-05-03) that can make use of the - already known value of the log-kinetic energy (particles-V10-05-03) in the XS - table log-vector accesses. + G4PhysicsVector::Value method (global-V10-05-03) that can make use of the + already known value of the log-kinetic energy (particles-V10-05-03) in the XS + table log-vector accesses. -15 march 2019 - V. Grichine (hadr-cross-V10-05-04) -- G4MuNeutrinoNucleusTotXsc.cc - new name, default fCcTotRatio and high +15 march 2019 - V. Grichine (hadr-cross-V10-05-04) +- G4MuNeutrinoNucleusTotXsc.cc - new name, default fCcTotRatio and high energy parameter bb 06 March 2019 - Alberto Ribon (hadr-cross-V10-05-03) @@ -194,21 +248,21 @@ code and to keep track of all tags. No changes in the random sequence. 18 February 2019 - V. Grichine (hadr-cross-V10-05-02) -- G4MuNeutrinoNucleusTotXsc.hh/cc high energy extension - of cc/nc xsc (M_W and M_Z propagator factors) cc/tot ratio +- G4MuNeutrinoNucleusTotXsc.hh/cc high energy extension + of cc/nc xsc (M_W and M_Z propagator factors) cc/tot ratio 13 January 2019 - V. Grichine (hadr-cross-V10-05-01) -- G4NeutrinoElectronNcXsc.cc, G4NeutrinoElectronTotXsc.cc high energy extension - of nu-e xsc (M_W and M_Z propagator factors and Glashow resonance) +- G4NeutrinoElectronNcXsc.cc, G4NeutrinoElectronTotXsc.cc high energy extension + of nu-e xsc (M_W and M_Z propagator factors and Glashow resonance) 20 December 2018 - Alberto Ribon (hadr-cross-V10-05-00) - G4ChipsNeutronElasticXS : fixed compilation warnings on clang-7 . 22 October 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-54) - G4BGGPionElasticXS - limit cross section below 20 MeV -- G4HadronNucleonXsc - added extra method for kaons fully based on NS +- G4HadronNucleonXsc - added extra method for kaons fully based on NS parameterisation -- G4ComponentGGHadronNucleusXsc - choose NS parameterisation for kaon +- G4ComponentGGHadronNucleusXsc - choose NS parameterisation for kaon scattering off Hydrogen 22 October 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-53) @@ -228,9 +282,9 @@ code and to keep track of all tags. 19 October 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-49) - G4ComponentGGNuclNuclXsc (D. Sakata) - fixed nuclear radius parameterisation -- G4BGGPionElasticXS, G4BGGPionInelasticXS, G4BGGNucleonInelasticXS - +- G4BGGPionElasticXS, G4BGGPionInelasticXS, G4BGGNucleonInelasticXS - use SAID x-section at low energy -- G4ComponentSAIDTotalXS - make class thread safe +- G4ComponentSAIDTotalXS - make class thread safe 16 October 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-48) - G4HadronNucleonXsc - use PDG2016 parameterisation for protons @@ -243,7 +297,7 @@ code and to keep track of all tags. 12 November 2018 - Dennis Wright (hadr-cross-V10-04-46) - G4PhotoNuclearCrossSection: add two new methods, IsIsoApplicable and GetIsoCrossSection to allow photo-nuclear reactions on deuterium. - Fix of Bug #2092 proposed by ed_bugs@gmx.com + Fix of Bug #2092 proposed by ed_bugs@gmx.com 09 November 2018 - Gabriele Cosmo (hadr-cross-V10-04-45) - G4CrossSectionFactoryRegistry: fixed printout typo. @@ -255,9 +309,9 @@ code and to keep track of all tags. 02 November 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-43) 02 November 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-41) -- G4BGGNucleonElasticXS, G4BGGNucleonInelasticXS, G4BGGPionElasticXS, +- G4BGGNucleonElasticXS, G4BGGNucleonInelasticXS, G4BGGPionElasticXS, G4BGGPionInelasticXS - use only Barashenkov x-section, Glauber-Gribov - x-section for target Z>1 and G4HadronNucleonXscNS for the target Z=1 + x-section for target Z>1 and G4HadronNucleonXscNS for the target Z=1 - G4NucleonNuclearCrossSection - fixed typo in inelastic x-section 12 October 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-40) @@ -270,9 +324,9 @@ code and to keep track of all tags. 03 October 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-38) 03 October 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-36) - G4HadronNucleonXsc - restored PDG 2005 parameterisation; - use exactly the same parameterisation for K+- as in Geant4 10.4; + use exactly the same parameterisation for K+- as in Geant4 10.4; V.Grichine added cross sections for strange hyperons. -- G4ComponentGGHadronNucleusXsc - V.Grichine added cross sections +- G4ComponentGGHadronNucleusXsc - V.Grichine added cross sections for strange hyperons. 27 September 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-35) @@ -291,8 +345,8 @@ code and to keep track of all tags. 19 September 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-32) 18 September 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-31) -- G4VComponentCrossSection, G4CrossSectionInelastic, - G4CrossSectionElastic, G4ComponentSAIDTotalXS, +- G4VComponentCrossSection, G4CrossSectionInelastic, + G4CrossSectionElastic, G4ComponentSAIDTotalXS, G4ComponentGGNuclNuclXsc, G4ComponentGGHadronNucleusXsc - use stream in the Description(..) method instead of G4cout - G4ComponentGGNuclNuclXsc, G4ComponentGGHadronNucleusXsc - completed @@ -311,28 +365,28 @@ code and to keep track of all tags. - G4PiData - use default destructor - G4ComponentBarNucleonNucleusXsc - simplified and cleaned up, use G4BarashenkovData -- G4BGGPionInelasticXS - use Nikolay Starkov parameterisation +- G4BGGPionInelasticXS - use Nikolay Starkov parameterisation for pion-nucleon - G4NucleonNuclearCrossSection - use G4ComponentBarNucleonNucleusXsc - G4UPiNuclearCrossSection, G4PiNuclearCrossSection - cleanup 15 August 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-27) -- G4CrossSectionDataSetRegistry - proper deletion of component cross +- G4CrossSectionDataSetRegistry - proper deletion of component cross section 10 August 2018 - Alberto Ribon (hadr-cross-V10-04-26) -- GNUmakefile : removed dependency on hadronic/management/ +- GNUmakefile : removed dependency on hadronic/management/ (to avoid a circular dependency, given that the latter depends on hadronic/cross_sections/ ; the class G4HadronicParameters has been moved from hadronic/management/ to hadronic/util/ ). 09 August 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-25) -- G4HadronNucleonXsc - improve computation of kaon x-section, KS and +- G4HadronNucleonXsc - improve computation of kaon x-section, KS and KL x-sections are computed as half sum of K- and K+ - G4CrossSectionElastic, G4CrossSectionInelastic - used new class G4HadronicParameters for definition of max energy -- G4ComponentGGHadronNucleusXsc - general review and speed up without - change of any algorithm, added method ComputeRocssSections, +- G4ComponentGGHadronNucleusXsc - general review and speed up without + change of any algorithm, added method ComputeRocssSections, added cache values 06 August 2018 - Alberto Ribon (hadr-cross-V10-04-24) @@ -340,30 +394,30 @@ code and to keep track of all tags. replaced the explicit high-energy limit of hadronic physics with the one from G4HadronicParameters . - Changed the GNUmakefile to allow the new dependency on - processes/hadronic/management/include/ , where the class + processes/hadronic/management/include/ , where the class G4HadronicParameters is defined. - + 01 August 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-23) -- G4HadronNucleonXsc - implemented PDG 2017 parameterisation of total +- G4HadronNucleonXsc - implemented PDG 2017 parameterisation of total x-sections; Use G4Pow, G4Exp, G4Log substituting std::pow; added interfaces with G4ParticleDefinition and kinetic energy 29 July 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-22) -- G4CrossSectionElastic, G4CrossSectionInelastic, - G4CrossSectionDataSetRegistry - added safe deletion of +- G4CrossSectionElastic, G4CrossSectionInelastic, + G4CrossSectionDataSetRegistry - added safe deletion of G4VComponentCrossSection end of run 28 July 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-21) - G4HadronCrossSections - use G4ThreadLocalSingleton pattern - G4HadronElasticDataSet, G4HadronInelasticDataSet - added cache; optimized IsElementApplicable(..) method -- G4CrossSectionElastic, G4CrossSectionInelastic - set Zmin=1 +- G4CrossSectionElastic, G4CrossSectionInelastic - set Zmin=1 instead of 0 20 July 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-20) -- G4CrossSectionDataSetRegistry - added registration/de-restration +- G4CrossSectionDataSetRegistry - added registration/de-restration of component cross sections -- G4ComponentGGHadronNucleusXsc - minor clean-up +- G4ComponentGGHadronNucleusXsc - minor clean-up - G4NeutronElasticXS - instantiate components in BuildPhysicsTable 18 July 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-19) @@ -371,31 +425,31 @@ code and to keep track of all tags. -------------------------------------------------------- - G4CrossSectionDataSetRegistry, G4VComponentCrossSection - added registration/de-registration of cross section components - allowing proper delete end of run + allowing proper delete end of run 18 July 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-17) -------------------------------------------------------- -- G4NeutronElasticXS, G4PhotoNuclearCrossSection, - G4ElectroNuclearCrossSection - removed GHEISHA cross section from +- G4NeutronElasticXS, G4PhotoNuclearCrossSection, + G4ElectroNuclearCrossSection - removed GHEISHA cross section from the data store, use only these as a default - G4NeutronCaptureXS, G4NeutronInelasticXS - correct list of isotope - x-section; remove GHEISHA x-sections + x-section; remove GHEISHA x-sections 13 June 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-16) 13 June 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-15) -------------------------------------------------------- - G4NeutronElasticXS, G4NeutronInelasticXS, G4NeutronCaptureXS, - G4ParticleInelasticXS - restore logic used in 10.4 for - selection of isotope cross sections; use const pointer to + G4ParticleInelasticXS - restore logic used in 10.4 for + selection of isotope cross sections; use const pointer to G4Isotope; make these x-sections isotope wise for all energies G4VCrossSectionDataSet - use const pointer to G4Isotope - G4CrossSectionDataStore - restore logic used in 10.4 for + G4CrossSectionDataStore - restore logic used in 10.4 for selection of isotope cross sections 11 June 2018 - Vladimir Ivanchenko (hadr-cross-V10-04-14) -------------------------------------------------------- - G4NeutronElasticXS, G4NeutronInelasticXS, G4NeutronCaptureXS - bugfix: do not clear previous cross sections from the list + bugfix: do not clear previous cross sections from the list allowing to use HP cross sections 05 Jun 2018 - Alberto Ribon (hadr-cross-V10-04-13) @@ -413,13 +467,13 @@ code and to keep track of all tags. -------------------------------------------------------- - G4NeutronElasticXS, G4NeutronInelasticXS, G4NeutronCaptureXS reduced number of type conversions and if(..) operators -- G4ParticleInelasticXS - new inelastic cross sections for neutrons, - protons, and light ions based on G4NEUTRONXS2.0 +- G4ParticleInelasticXS - new inelastic cross sections for neutrons, + protons, and light ions based on G4NEUTRONXS2.0 - G4CrossSectionDataStore - added new method ComputeCrossSection(..), reduced number of type conversions, number of computation of cross - sections and number of if(..) calls, const pointers to G4Material, + sections and number of if(..) calls, const pointers to G4Material, G4Element, and G4Isotope, expected hadronic tracking be faster -- G4VCrossSectionDataSet - added new flag isForAllAtomsAndEnergies +- G4VCrossSectionDataSet - added new flag isForAllAtomsAndEnergies and get/set methods allowing to reduce list of cross section per particle - G4BGGNucleonElasticXS, G4BGGNucleonInelasticXS, G4BGGPionElasticXS, @@ -441,7 +495,7 @@ code and to keep track of all tags. ---------------------------------------------------- - G4PiNuclearCrossSection, G4ElectroNuclearCrossSection, G4KokoulinMuonNuclearXS, G4ChipsProtonElasticXS, G4ChipsKaonPlusElasticXS, G4ChipsKaonMinusElasticXS, - G4ChipsNeutronElasticXS, G4ChipsHyperonElasticXS, G4ChipsHyperonInelasticXS, + G4ChipsNeutronElasticXS, G4ChipsHyperonElasticXS, G4ChipsHyperonInelasticXS, G4ChipsAntiBaryonElasticXS, G4ChipsPionPlusElasticXS, G4ChipsPionMinusElasticXS : introduced switch to allow transuranic elements. @@ -476,11 +530,11 @@ Work done by Vladimir Grichine. 23 November 2017 - Vladimir Ivanchenko (hadr-cross-V10-03-14) ---------------------------------------------------- -- G4ElectroNuclearCrossSection - fixed minor memory leak; +- G4ElectroNuclearCrossSection - fixed minor memory leak; 1 November 2017 - Tatsumi Koi (hadr-cross-V10-03-13) ---------------------------------------------------- -- adding AddDataSet(G4VCrossSectionDataSet*,size_t); +- adding AddDataSet(G4VCrossSectionDataSet*,size_t); The second argument gives the priority of the data set in list. 12 September 2017 - Witek Pokorski (hadr-cross-V10-03-12) @@ -523,7 +577,7 @@ The second argument gives the priority of the data set in list. 23 May 2017 - Alberto Ribon (hadr-cross-V10-03-04) ---------------------------------------------------- - G4NeutronElectronElXsc : added new class by Vladimir Grichine - for the cross section of neutrons on atomic electrons. + for the cross section of neutrons on atomic electrons. Ultra-relativistic approximation of the Rosenbluth formula is used, since this is more relevant for detector applications. In particular, for dark matter searches, this process can produce elctrons with high @@ -577,13 +631,13 @@ The second argument gives the priority of the data set in list. 23 November 2015 - G.Folger (hadr-cross-V10-01-37) ------------------------------------------------- -- G4HadronCrossSections: Revert cross section data back to float, add f in +- G4HadronCrossSections: Revert cross section data back to float, add f in initialisation. - + 12 November 2015 - A.Dotti (hadr-cross-V10-01-36) ------------------------------------------------- - Disabling profiling functions of fast-cross-sections - + 12 November 2015 - G.Folger (hadr-cross-V10-01-35) ------------------------------------------------- - G4HadronCrossSections: change float cross sections data to be double. @@ -615,9 +669,9 @@ The second argument gives the priority of the data set in list. ----------------------------------------------------------- - G4CrossSectionDataSetRegistry - adding same ad-hoc trick of NeutronHP to ParticleHP models to prevent problem at termination -1 November 2015 A. Dotti +1 November 2015 A. Dotti ------------------------------------------------ -- First import of fast-path (ASCR style) cross-section feature +- First import of fast-path (ASCR style) cross-section feature (OFF by default, but code is there) 27 October 2015 A. Ribon (hadr-cross-V10-01-28) @@ -627,13 +681,13 @@ The second argument gives the priority of the data set in list. 27 October 2015 A. Ribon (hadr-cross-V10-01-27) ------------------------------------------------ -- Deleted the old classes G4GlauberGribovCrossSection and +- Deleted the old classes G4GlauberGribovCrossSection and G4GGNuclNuclCrossSection, and replaced them with the new, recommended ones G4ComponentGGHadronNucleusXsc and G4ComponentGGNuclNuclXsc, respectively. 26 October 2015 T.Koi (hadr-cross-V10-01-26) ------------------------------------------------ -- G4ZeroXS: Adding an artificial cross section data set which always replys zero +- G4ZeroXS: Adding an artificial cross section data set which always replies zero 24 October 2015 V.Ivanchenko (hadr-cross-V10-01-25) ------------------------------------------------ @@ -678,8 +732,8 @@ The second argument gives the priority of the data set in list. 18 July 2015 V.Ivanchenko (hadr-cross-V10-01-13) ----------------------------------------------- -- G4NeutronInelasticXS, G4NeutronCaptureXS - fixed isotope cross - including retrieve, data management, isotope x-section and +- G4NeutronInelasticXS, G4NeutronCaptureXS - fixed isotope cross + including retrieve, data management, isotope x-section and isotope selection (the problem was reported by Steve Quillin and analyzed by Tatsumi Koi). @@ -693,9 +747,9 @@ The second argument gives the priority of the data set in list. 1 June 2015 D.H. Wright (hadr-cross-V10-01-10) ------------------------------------------------ -- add description method to G4KokoulinMuonNuclearXS and +- add description method to G4KokoulinMuonNuclearXS and G4ChipsKaonMinusInelasticXS - + 28 May 2015 A.Ribon (hadr-cross-V10-01-09) --------------------------------------------------- - Added description of the classes G4IonProtonCrossSection and @@ -719,13 +773,13 @@ The second argument gives the priority of the data set in list. 17 March 2015 V.Ivanchenko (hadr-cross-V10-01-05) --------------------------------------------------- - G4CrossSectionDataSetRegistry - protect deletion of NeutronHP -- G4KokoulinMuonNuclearXS - fixed initialisation for the case of +- G4KokoulinMuonNuclearXS - fixed initialisation for the case of multiple runs - G4DiffElasticRatio (V.Grichine) added protection for hydrogen 13 March 2015 V.Ivanchenko (hadr-cross-V10-01-04) --------------------------------------------------- -- G4CrossSectionDataSetRegistry, G4VCrossSectionDataSet - use +- G4CrossSectionDataSetRegistry, G4VCrossSectionDataSet - use G4ThreadLocalSingletone; delete all x-sections at exit except HP 06 February 2015 W.Pokorski (hadr-cross-V10-01-03) @@ -756,11 +810,11 @@ The second argument gives the priority of the data set in list. 07 November 2014 V.Grichine (hadr-cross-V10-00-17) --------------------------------------------------- - Class managing single diffraction to elastic cross section ratio - G4DiffElasticRatio + G4DiffElasticRatio 30 October 2014 V.Ivanchenko (hadr-cross-V10-00-16) --------------------------------------------------- -- added new interface class G4VCrossSectionRatio +- added new interface class G4VCrossSectionRatio 17 October 2014 A.Dotti (hadr-cross-V10-00-15) --------------------------------------------------- @@ -769,7 +823,7 @@ The second argument gives the priority of the data set in list. 09 September 2014 W.Pokorski (hadr-cross-V10-00-14) ------------------------------------------------ -- adding missing factories to G4NeutronCaptureXS, G4NeutronElasticXS, +- adding missing factories to G4NeutronCaptureXS, G4NeutronElasticXS, G4NeutronInelasticXS, G4PiNuclearCrossSection 08 August 2014 W.Pokorski (hadr-cross-V10-00-13) @@ -796,7 +850,7 @@ G4NeutronInelasticXS, G4PiNuclearCrossSection 26 July 2014 V.Ivanchenko (hadr-cross-V10-00-08) ------------------------------------------------ - G4NeutronCaptureXS, G4NeutronElasticXS, G4NeutronInelasticXS, - G4ComponentSAIDTotalXS, G4UPiNuclearCrossSection - delete + G4ComponentSAIDTotalXS, G4UPiNuclearCrossSection - delete G4PhysicsVectors end of job - G4NeutronCaptureXS, G4NeutronElasticXS, G4NeutronInelasticXS share data between threads @@ -813,10 +867,10 @@ G4NeutronInelasticXS, G4PiNuclearCrossSection 3 June 2014 G.Folger (hadr-cross-V10-00-05) ------------------------------------------- - Add const for G4partuicleDefinition in many places, most trivial. - Affects G4Chips*(trivial), G4ComponentGGNuclNuclXsc, and + Affects G4Chips*(trivial), G4ComponentGGNuclNuclXsc, and G4GGNuclNuclCrossSection (change in interface in two methods each, plus trivial changes) - + 20 May 2014 A.Dotti (hadr-cross-V10-00-04) ------------------------------------------ - Introduce protection in destructor of G4ElectroNuclearCrossSection @@ -824,10 +878,10 @@ G4NeutronInelasticXS, G4PiNuclearCrossSection - G4KokoulinMuonNuclearXS does not call anymore explicitly theCrossSectionTable::clearAndDestroy() since underlying physics vectors are managed by allocators - + 11 April 2014 W.Pokorski (hadr-cross-V10-00-03) ---------------------------------------------- -- Minor reshuffling of some variables suggested by Federico +- Minor reshuffling of some variables suggested by Federico (to calculate some variables only when used to prevent overflows) 26 March 2014 G.Folger (hadr-cross-V10-00-02) @@ -857,7 +911,7 @@ G4NeutronInelasticXS, G4PiNuclearCrossSection 04 December 2013 A.Ribon (hadr-cross-V09-06-38) ------------------------------------------------ -- Commented out the 1 millibarn threshold in G4BGGNucleonElasticXS, +- Commented out the 1 millibarn threshold in G4BGGNucleonElasticXS, to avoid rare crashes observed in QBBC. A better fix of this problem will be done after the release 10. @@ -869,27 +923,27 @@ G4NeutronInelasticXS, G4PiNuclearCrossSection 15 September 2013 V.Ivanchenko (hadr-cross-V09-06-36) ----------------------------------------------------- -- G4BGGNucleonInelasticXS - added threashold 1 millibarn, if +- G4BGGNucleonInelasticXS - added threashold 1 millibarn, if cross section is less, it is set to zero -- G4BGGNucleonElasticXS - added threashold 1 millibarn, added Coulomb +- G4BGGNucleonElasticXS - added threashold 1 millibarn, added Coulomb barrier for protons (copied from G4BGGNucleonInelasticXS); for - Hydrogen target added linear approximation between SAID data and + Hydrogen target added linear approximation between SAID data and PDG data: SAID upper energy 3.3 GeV, PDG low energy 5 GeV -08 November 2013 V.Ivanchenko -- G4ComponentSAIDTotalXS, G4NeutronElasticXS, - G4UPiNuclearCrossSection - do not delete G4PhysicsVectors at the - end of job (these modifications are trivial and may be peaked up +08 November 2013 V.Ivanchenko +- G4ComponentSAIDTotalXS, G4NeutronElasticXS, + G4UPiNuclearCrossSection - do not delete G4PhysicsVectors at the + end of job (these modifications are trivial and may be peaked up with any new tag) 11 September 2013 W.Pokorski (hadr-cross-V09-06-35) ----------------------------------------------------- -- improvement in photonuclear cross section; +- improvement in photonuclear cross section; replacing per-isotope calculation with per-element 10 September 2013 W.Pokorski (hadr-cross-V09-06-34) ----------------------------------------------------- -- started clean up of phononuclear XS +- started clean up of phononuclear XS 10 September 2013 W.Pokorski (hadr-cross-V09-06-33) ----------------------------------------------------- @@ -905,7 +959,7 @@ G4NeutronInelasticXS, G4PiNuclearCrossSection 29 August 2013 W.Pokorski (hadr-cross-V09-06-30) ----------------------------------------------------- -- major clean up and restructuring in G4ElectroNuclearXS. +- major clean up and restructuring in G4ElectroNuclearXS. The calculation is now done for average N. 23 August 2013 W.Pokorski (hadr-cross-V09-06-29) @@ -931,19 +985,19 @@ The calculation is now done for average N. 13 Jun 2013 V.Ivanchenko (hadr-cross-V09-06-24) ----------------------------------------------------- - G4NeutronCaptureXS, G4NeutronElasticXS, G4NeutronInelasticXS, - G4ComponentSAIDTotalXS - G4HadronicException is substituted by + G4ComponentSAIDTotalXS - G4HadronicException is substituted by G4Exception, because these exceptions are happens at initialisation and not in the event loop where G4HadronicException is couched 06 Jun 2013 V.Ivanchenko (hadr-cross-V09-06-23) ----------------------------------------------------- - G4BGGPionInelasticXS, G4BGGNucleonInelasticXS - use G4Pow to compute - Coulomb correction factor (some CPU improvement) + Coulomb correction factor (some CPU improvement) 04 Jun 2013 A. Ribon (hadr-cross-V09-06-22) ---------------------------------------------------- - Fix access to ions via the IonTable class and GetIon method - in the following .cc files: + in the following .cc files: G4ChipsProtonElasticXS.cc, G4ChipsPionPlusElasticXS.cc, G4ChipsKaonPlusElasticXS.cc, G4ChipsKaonMinusElasticXS.cc, G4ChipsHyperonElasticXS.cc, G4ChipsAntiBaryonElasticXS.cc, @@ -960,15 +1014,15 @@ The calculation is now done for average N. 03 May 2013 A. Dotti (hadr-cross-V09-06-19) ----------------------------------------------------- -- Protecting against crash ad exit in G4ElectroNuclear +- Protecting against crash ad exit in G4ElectroNuclear 02 May 2013 A. Dotti (hadr-cross-V09-06-18) ----------------------------------------------------- - Clean up ElectroNuclear cross-section for MT and optimize code. Code is now 40% faster in simple setups. -- G4BGGNucleonInelasticXS - reduced numebr of operation in the - CoulombFactor method +- G4BGGNucleonInelasticXS - reduced numebr of operation in the + CoulombFactor method 10 April 2013 W. Pokorski (hadr-cross-V09-06-17) ----------------------------------------------------- @@ -978,20 +1032,20 @@ The calculation is now done for average N. ----------------------------------------------------- - Rewrite mechansim of CrossSection factories to work with MT applications. Factory registry is now a class on its own and it is shared among threads. - TLS CrossSectionDataSetRegistry access the shared resource to get XS. + TLS CrossSectionDataSetRegistry access the shared resource to get XS. XS data sets can be created as now per-thread or shared. See factoy mechanism. 22 March 2013 V.Ivanchenko (hadr-cross-V09-06-15) ----------------------------------------------------- -- G4KokoulinMuonNuclearXS, G4NeutronCaptureXS, +- G4KokoulinMuonNuclearXS, G4NeutronCaptureXS, G4NeutronInelasticCrossSection, G4ProtonInelasticCrossSection, G4TripathiCrossSection - more correct definition of static data 20 March 2013 V.Ivanchenko (hadr-cross-V09-06-14) ----------------------------------------------------- -- G4HadronCrossSections - all data to be "static const" - no G4ThreadLocal +- G4HadronCrossSections - all data to be "static const" - no G4ThreadLocal declarations, correctInelasticNearZero set to be false forever -- G4HadronFissionDataSet - always return zero (only HP may simulate +- G4HadronFissionDataSet - always return zero (only HP may simulate fission as a separate process) 15 March 2013 V.Ivanchenko (hadr-cross-V09-06-13) @@ -1017,22 +1071,22 @@ The calculation is now done for average N. G4ComponentGGHadronNucleusXsc.hh, .cc G4ComponentAntiNuclNuclearXS.hh, .cc G4GGNuclNuclCrossSection.hh, .cc - + 7 March 2013 M.Maire (hadr-cross-V09-06-11) -- fix a bug in DumpPhysicsTable - +- fix a bug in DumpPhysicsTable + 7 March 2013 M.Maire (hadr-cross-V09-06-10) - cosmetics in DumpPhysicsTable - + 4 March 2013 V. Uzhinsky (hadr-cross-V09-06-09) --------------------------------------------------- - Bugs are fixed in G4ChipsProtonInelasticXS.cc G4ChipsNeutronInelasticXS.cc - + 01 March 2013 M.Maire (hadr-cross-V09-06-08) ---------------------------------------------- - G4CrossSectionDataStore.cc - elm->GetNaturalAbundanceFlag() - + 27 February 2013 V.Ivanchenko (hadr-cross-V09-06-07) ----------------------------------------------------- - G4CrossSectionDataStore - fixed logic to compute cross section @@ -1050,7 +1104,7 @@ The calculation is now done for average N. ----------------------------------------------------- - G4ComponentSAIDTotalXS - initialise data in constructor; make data static; G4ThreadLocal declaration is left so far, because - it is not clear if internal G4PhysicsVectors may be shared between + it is not clear if internal G4PhysicsVectors may be shared between threads - G4NeutronCaptureXS, G4NeutronInelasticXS - cleaned up isotope data retrieve; added private method IsoCrossSection @@ -1070,17 +1124,17 @@ The calculation is now done for average N. bug fixed 17 December 2012 A.Galoyan (hadr-cross-V09-06-01) --G4ComponentAntiNuclNuclearXS -description of class is implemented +-G4ComponentAntiNuclNuclearXS +description of class is implemented 3 December 2012 D.H. Wright (hadr-cross-V09-06-00) ---------------------------------------------------- - fix several bugs indicated by Coverity: G4ComponentAntiNuclNuclearXS.cc - initialize several varibales in ctor - G4ComponentGGNuclNuclXsc.cc - fix memory leak + G4ComponentGGNuclNuclXsc.cc - fix memory leak hnXsc = new G4HadronNucleonXsc() by deletion in dtor G4GGNuclNuclCrossSection.cc - fix memory leak - hnXsc = new G4HadronNucleonXsc() by deletion in dtor + hnXsc = new G4HadronNucleonXsc() by deletion in dtor G4ElectroNuclearCrossSection::GetEquivalentPhotonEnergy() - initialize array Y[] to 0.0 @@ -1096,7 +1150,7 @@ description of class is implemented 05 November 2012 V.Ivanchenko (hadr-cross-V09-05-41) ----------------------------------------------------- - G4BGGNucleonElasticXS, G4BGGPionElasticXS, G4UPiNuclearCrossSection - fixed Coverity complains - implemented initialisation of class + fixed Coverity complains - implemented initialisation of class members in constructors 02 November 2012 W.Pokorski (hadr-cross-V09-05-40) @@ -1121,8 +1175,8 @@ description of class is implemented --------------------------------------------------- - (V. Grischine) removing Z > 1 condition from G4GGNuclNuclCrossSection -- (V. Ivanchenko) G4UPiNuclearCrossSection - cosmetic modification - more clean destructor - implementation +- (V. Ivanchenko) G4UPiNuclearCrossSection - cosmetic modification - more clean destructor + implementation 23 October 2012 W.Pokorski (hadr-cross-V09-05-36) --------------------------------------------------- @@ -1139,7 +1193,7 @@ description of class is implemented G4NucleonNuclearCrossSection and G4GGNuclNuclCrossSection 23 October 2012 W.Pokorski (hadr-cross-V09-05-33) --------------------------------------------------- -- adding factory mechanism for G4GlauberGribovCrossSection, +- adding factory mechanism for G4GlauberGribovCrossSection, G4NucleonNuclearCrossSection and G4GGNuclNuclCrossSection 18 October 2012 V.Ivanchenko (hadr-cross-V09-05-32) @@ -1153,11 +1207,11 @@ G4NucleonNuclearCrossSection and G4GGNuclNuclCrossSection 15 October 2012 V.Ivanchenko (hadr-cross-V09-05-30) --------------------------------------------------- - G4NeutronCaptureXS - use G4ElementData for isotope x-sections -- G4BGGNucleonInelastic, G4BGGNucleonElastic - use SAID data for scattering +- G4BGGNucleonInelastic, G4BGGNucleonElastic - use SAID data for scattering off hydrogen below 1.3 GeV for neutrons and below 2 GeV for protons -- G4BGGPionInelastic, G4BGGPionElastic - use SAID data for scattering +- G4BGGPionInelastic, G4BGGPionElastic - use SAID data for scattering off hydrogen below 2.6 GeV -- G4ComponentSAIDTotalXS - fixed cross section computation +- G4ComponentSAIDTotalXS - fixed cross section computation 20 September 2012 G.Cosmo (hadr-cross-V09-05-29) ------------------------------------------------ @@ -1179,7 +1233,7 @@ G4NucleonNuclearCrossSection and G4GGNuclNuclCrossSection cross sections in order to save CPU; cross section for material is not recomputed if material, primary particle and kinetic energy are the same; cross section for element is not recomputed - if material, element, primary particle and kinetic energy are the + if material, element, primary particle and kinetic energy are the same; G4Nucleus is updated using new method SetIsotope 20 July 2012 W.Pokorski (hadr-cross-V09-05-25) @@ -1204,7 +1258,7 @@ G4NucleonNuclearCrossSection and G4GGNuclNuclCrossSection 13 July 2012 G.Folger (hadr-cross-V09-05-20) ----------------------------------------------- -- Fix coverity warning in G4CrossSectionPairGG.cc, where an invalid iterator +- Fix coverity warning in G4CrossSectionPairGG.cc, where an invalid iterator could be used, beyond container. 4 July 2012 W.Pokorski (hadr-cross-V09-05-19) @@ -1219,16 +1273,16 @@ G4NucleonNuclearCrossSection and G4GGNuclNuclCrossSection ----------------------------------------------- - Tagged. -22 June 2012 W.Pokorski +22 June 2012 W.Pokorski ----------------------------------------------- - Removing fix from hadr-cross-V09-05-16, which was wrong and not needed. Sorry for the noise. -22 June 2012 V.Ivanchenko +22 June 2012 V.Ivanchenko ----------------------------------------------- - G4HadronCrossSections - use cache of previous x-section and G4Pow -- G4CrossSectionDataStore - take into account that all elements - should have isotopes +- G4CrossSectionDataStore - take into account that all elements + should have isotopes 22 June 2012 W.Pokorski (hadr-cross-V09-05-16) ----------------------------------------------- @@ -1284,18 +1338,18 @@ G4NucleonNuclearCrossSection and G4GGNuclNuclCrossSection ----------------------------------------------- - Added inelastic cross-sections extracted from CHIPS. -4 May 2012 Vladimir Grichine +4 May 2012 Vladimir Grichine ----------------------------------------------- -- New class G4ComponentGGNuclNuclXsc based on G4GGNuclNuclCrossSection +- New class G4ComponentGGNuclNuclXsc based on G4GGNuclNuclCrossSection (Glauber-Gribov for ion-ion xsc) was added and component interface was implemented - New class G4ComponentBarNucleonNucleusXsc based on G4NucleonNuclearCrossSection (Barashenkov xsc) was added and component interface was implemented. -27 April 2012 Vladimir Grichine +27 April 2012 Vladimir Grichine ----------------------------------------------- -- New class G4ComponentGGHadronNucleusXsc based on G4GlauberGribovCrossSection +- New class G4ComponentGGHadronNucleusXsc based on G4GlauberGribovCrossSection was added and component interface was implemented 24 April 2012 Alberto Ribon (hadr-cross-V09-05-03) @@ -1304,28 +1358,28 @@ G4NucleonNuclearCrossSection and G4GGNuclNuclCrossSection 24 April 2012 Alberto Ribon (hadr-cross-V09-05-02) --------------------------------------------------- -- Include updates of Grichine's nucleus radii of light elements +- Include updates of Grichine's nucleus radii of light elements (see the next comment below). -23 April 2012 Vladimir Grichine +23 April 2012 Vladimir Grichine ----------------------------------------------- - G4GGNuclNuclCrossSection.cc updated to get nucleus radii of light elements - p, d, + G4GGNuclNuclCrossSection.cc updated to get nucleus radii of light elements - p, d, t, He3, He4, Li7 and Be9. 19 April 2012 Alberto Ribon (hadr-cross-V09-05-01) --------------------------------------------------- -- Include updates of Grichine's Glauber Gribov hadron-nucleus +- Include updates of Grichine's Glauber Gribov hadron-nucleus and hadron-nucleon cross sections (see the two next two comments below). -19 March 2012 Vladimir Grichine +19 March 2012 Vladimir Grichine ----------------------------------------------- - G4GlauberGribovCrossSection.hh/.cc updated to get total + G4GlauberGribovCrossSection.hh/.cc updated to get total and inelastic xsc from G4HadronNucleonXsc. -18 March 2012 Vladimir Grichine +18 March 2012 Vladimir Grichine ----------------------------------------------- -G4HadronNucleonXsc.hh/.cc update of p,n,pi-,pi+ xsc on p,n. New method -GetCoulombBarrier. G4GGNuclNuclCrossSection.hh/.cc updated to get total +G4HadronNucleonXsc.hh/.cc update of p,n,pi-,pi+ xsc on p,n. New method +GetCoulombBarrier. G4GGNuclNuclCrossSection.hh/.cc updated to get total and inelastic xsc from G4HadronNucleonXsc. @@ -1351,11 +1405,11 @@ and inelastic xsc from G4HadronNucleonXsc. 12 October 2011 Vladimir Ivanchenko (hadr-cross-V09-04-31) ------------------------------------------------------------ - G4UPiNuclearCrossSection - fixed Barashenkov data for pi+ -- G4BGGNucleonElasticXS, G4BGGNucleonInelasticXS - fixed x-section +- G4BGGNucleonElasticXS, G4BGGNucleonInelasticXS - fixed x-section off Hydrogen - use PDG and GHEISHA parameterisations - G4BGGPionInelasticXS - fixed pi+ cross sections and x-section - off Hydrogen -- G4TripathiLightCrossSection - added protections against artifact + off Hydrogen +- G4TripathiLightCrossSection - added protections against artifact values of cross section below Coulomb barrier 10 October 2011 Vladimir Ivanchenko (hadr-cross-V09-04-30) @@ -1376,15 +1430,15 @@ and inelastic xsc from G4HadronNucleonXsc. 24 October 2011 D.H. Wright for Vladimir Grichine (hadr-cross-V09-04-27) ------------------------------------------------------------------------- -- modified p-p cross sections in G4GGNuclNuclCrossSection.hh, .cc, - G4GlauberGribovCrossSection.cc and G4HadronNucleonXsc.cc to include +- modified p-p cross sections in G4GGNuclNuclCrossSection.hh, .cc, + G4GlauberGribovCrossSection.cc and G4HadronNucleonXsc.cc to include latest TOTEM data at 7 TeV 21 October 2011 Vladimir Ivanchenko (hadr-cross-V09-04-26) ------------------------------------------------------------ - G4ElectroNuclearCrossSection - removed not needed G4Exception - G4PiData - use G4HadronicException instead of G4Exception -- G4HadronCrossSection - moved constructor, destructor and other +- G4HadronCrossSection - moved constructor, destructor and other inline methods to the source; make singleton patern classical; substitute G4Exception by G4hadronicException @@ -1399,7 +1453,7 @@ and inelastic xsc from G4HadronNucleonXsc. ------------------------------------------------------------ - G4NeutronInelasticCrossSection.cc: fix passing double for int argument; gcc4.1 did warn about this - + 14 September 2011 Vladimir Ivanchenko (hadr-cross-V09-04-23) ------------------------------------------------------------ - G4CrossSectionPairGG - protect cout at initialisation by @@ -1419,17 +1473,17 @@ and inelastic xsc from G4HadronNucleonXsc. 12 September 2011 Vladimir Ivanchenko (hadr-cross-V09-04-19) ----------------------------------------------------------- -- G4CrossSectionDataStore - fixed logic in SampleZandA +- G4CrossSectionDataStore - fixed logic in SampleZandA 10 September 2011 Vladimir Ivanchenko (hadr-cross-V09-04-18) ------------------------------------------------------------ -- G4CrossSectionDataStore - fixed selection of isotope when element - cross section is used but isotope composition is defined by the user +- G4CrossSectionDataStore - fixed selection of isotope when element + cross section is used but isotope composition is defined by the user 6 September 2011 Vladimir Ivanchenko (hadr-cross-V09-04-17) ---------------------------------------------------------- -- G4TripathiLightCrossSection - fixed integer Z and A; -- G4VCrossSectionDataSet - fixed inline method for CHIPS +- G4TripathiLightCrossSection - fixed integer Z and A; +- G4VCrossSectionDataSet - fixed inline method for CHIPS electro-nuclear cross section computation 6 September 2011 Vladimir Ivanchenko (hadr-cross-V09-04-16) @@ -1438,7 +1492,7 @@ and inelastic xsc from G4HadronNucleonXsc. 30 August 2011 Vladimir Ivanchenko (hadr-cross-V09-04-15) ---------------------------------------------------------- -- Fixed number of run time problems connected with the migration to the +- Fixed number of run time problems connected with the migration to the new interface 24 August 2011 Vladimir Ivanchenko (hadr-cross-V09-04-14) @@ -1447,7 +1501,7 @@ and inelastic xsc from G4HadronNucleonXsc. 23 August 2011 Vladimir Ivanchenko (hadr-cross-V09-04-13) ---------------------------------------------------------- -- G4NeutronInelasticCrossSection, G4EMDissociationCrossSection +- G4NeutronInelasticCrossSection, G4EMDissociationCrossSection modified to compile model sub-directories 23 August 2011 Vladimir Ivanchenko (hadr-cross-V09-04-12) @@ -1461,11 +1515,11 @@ and inelastic xsc from G4HadronNucleonXsc. 02 August 2011 Dennis Wright (hadr-cross-V09-04-10) --------------------------------------------------- -- add G4VCrossSectionDataSet::GetName() to be used with documentation +- add G4VCrossSectionDataSet::GetName() to be used with documentation reporting - add Description() method to all classes derived from G4VCrossSectionDataSet -- remove test directory from trunk. It remains in tag hadr-cross-V09-04-09. - +- remove test directory from trunk. It remains in tag hadr-cross-V09-04-09. + 04 June 2011 Vladimir Ivanchenko (hadr-cross-V09-04-09) ---------------------------------------------------------- - G4IonProtonCrossSection - implement all virtual IfApplicable methods @@ -1485,7 +1539,7 @@ and inelastic xsc from G4HadronNucleonXsc. ----------------------------------------------- - G4TripathiLightCrossSection::GetZandACrossSection: return 0 cross section when E_cm <= DBL_MIN, in response to bug report #1174 - + 14 March 2011 Vladimir Ivanchenko (hadr-cross-V09-04-05) ---------------------------------------------------------- - G4CrossSectionDataStore - fixed DumpPhysicsTable method, ion cross @@ -1496,14 +1550,14 @@ and inelastic xsc from G4HadronNucleonXsc. 24 February 2011 Vladimir Ivanchenko (hadr-cross-V09-04-04) ---------------------------------------------------------- -- G4CrossSectionElastic, G4CrossSectionInelastic - fixed usage in +- G4CrossSectionElastic, G4CrossSectionInelastic - fixed usage in Physics List 24 February 2011 Vladimir Ivanchenko (hadr-cross-V09-04-03) ---------------------------------------------------------- -- G4VComponentCrossSection - change method names to +- G4VComponentCrossSection - change method names to GetTotalElementCrossSection and GetTotalIsotopeCrossSection -- G4CrossSectionElastic, G4CrossSectionInelastic, +- G4CrossSectionElastic, G4CrossSectionInelastic, G4ComponentAntiNuclNuclearXS - use modified names 17 February 2011 Dennis Wright (hadr-cross-V09-04-02) @@ -1513,7 +1567,7 @@ and inelastic xsc from G4HadronNucleonXsc. was done to replace the old-style implementation with one conforming to the hadronic framework design of process, model, cross section. The new class is now the default cross section for the new - G4MuonNuclearProcess class. + G4MuonNuclearProcess class. 2 February 2011 Vladimir Ivanchenko (hadr-cross-V09-04-01) ---------------------------------------------------------- @@ -1527,38 +1581,38 @@ and inelastic xsc from G4HadronNucleonXsc. 9 December 2010 Dennis Wright (hadr-cross-V09-03-21) ----------------------------------------------------- - G4ElectroNuclearCrossSection::GetEquivalentPhotonEnergy() : remove - initialization of array Y[]. This forced expensive re-calculation + initialization of array Y[]. This forced expensive re-calculation at each call. - + 26 November 2010 Vladimir Ivanchenko (hadr-cross-V09-03-20) ---------------------------------------------------------- -- G4BGGPionElasticXS, G4BGGNucleonElasticXS,G4BGGNucleonInelasticXS +- G4BGGPionElasticXS, G4BGGNucleonElasticXS,G4BGGNucleonInelasticXS fixed low-energy (E < 20 MeV) models - G4TripathiLightCrossSection - J.M.Quesada fix for threshold shape 23 November 2010 Vladimir Ivanchenko (hadr-cross-V09-03-19) ---------------------------------------------------------- -- added G4CrossSectionInelastic and G4CrossSectionElastic - wrappers +- added G4CrossSectionInelastic and G4CrossSectionElastic - wrappers for components 19 November 2010 Gunter Folger (hadr-cross-V09-03-18) -- replace leftover calls to GetIsoZACrossSection by GetZandACrossSection, and +- replace leftover calls to GetIsoZACrossSection by GetZandACrossSection, and IsZAApplicable by IsIsoApplicable. 18 November 2010 Vladimir Ivanchenko (hadr-cross-V09-03-17) ---------------------------------------------------------- - G4NeutronCaptureXS, G4NeutronElasticXS, G4NeutronInelasticXS - do - not use G4Element, only G4NistManager + not use G4Element, only G4NistManager - G4ComponentAntiNuclNuclearXS - new class (A.Galoyan) 13 November 2010 Gunter Folger (hadr-cross-V09-03-16) ------------------------------------------------------ - Fix bug from Integer A&Z transition: - - G4VCrossSectionDataSet.cc: - make new methods (IsIsoApplicable, GetZandACrossSection) forward to old + - G4VCrossSectionDataSet.cc: + make new methods (IsIsoApplicable, GetZandACrossSection) forward to old methods (IsZAApplicable, GetIsoZACrossSection); old methods print a obsolete warning once. - - G4CrossSectionDataStore.cc: use new methods only. + - G4CrossSectionDataStore.cc: use new methods only. 12 November 2010 Gunter Folger (hadr-cross-V09-03-15) ------------------------------------------------------ @@ -1572,28 +1626,28 @@ Not a memory leak after all. 10 November 2010 Dennis Wright (hadr-cross-V09-03-13) ------------------------------------------------------ -NOTE: this tag deals exclusively with fixes of CoVerity-identified +NOTE: this tag deals exclusively with fixes of CoVerity-identified bugs - G4HadronCrossSections.hh : fix uninitialized variable prevElement in ctor -- Initialize arrays theGlauberFac and theCoulombFac in ctors of +- Initialize arrays theGlauberFac and theCoulombFac in ctors of G4BGGNucleonElasticXS.cc, G4BGGNucleonInelasticXS.cc, G4BGGPionElasticXS.cc, G4BGGPionInelasticXS.cc -- Initialize all elements of array Y[nE] to 0.0 in +- Initialize all elements of array Y[nE] to 0.0 in G4ElectroNuclearCrossSection::GetEquivalentPhotonEnergy() - Initialize fTotalXsc, fElasticXsc, fInelasticXsc, fProductionXsc, - fDiffractionXsc, fHadronNucleonXsc to 0.0 in ctors of + fDiffractionXsc, fHadronNucleonXsc to 0.0 in ctors of G4GlauberGribovCrossSection.cc, G4GGNuclNuclCrossSection.cc - Initialize fTotalXsc, fElasticXsc, fInelasticXsc, fHadronNucleonXsc to 0.0 - in ctor of G4HadronNucleonXsc, + in ctor of G4HadronNucleonXsc, - fix memory leak in G4NeutronElasticXS:Initialise and G4NeutronInelasticXS:Initialise : - const G4Element* Elem = + const G4Element* Elem = G4Element* G4NistManager::FindOrBuildElement(G4int Z, G4bool isotopes) Elem goes out of scope, so delete it @@ -1606,10 +1660,10 @@ bugs 09 November 2010 Vladimir Ivanchenko (hadr-cross-V09-03-12) ----------------------------------------------------------- -- G4VComponentCrossSection - use G4ParticleDefinition and kinetic +- G4VComponentCrossSection - use G4ParticleDefinition and kinetic energy instead of G4DynamicParticle -- G4EMDissociationCrossSection - is now applicable for Hydrogen but - cross section for Hydrogen is zero +- G4EMDissociationCrossSection - is now applicable for Hydrogen but + cross section for Hydrogen is zero 20 October 2010 Gunter Folger (hadr-cross-V09-03-11) @@ -1622,7 +1676,7 @@ bugs - integer Z and A migration: in all cross section data sets, replace IsZAApplicable with IsIsoApplicable and replace GetIsoZACrossSection with GetZandACrossSection - + 23 September 2010 Vladimir Ivanchenko (hadr-cross-V09-03-09) ------------------------------------------------------------ - G4NeutronElasticXS, G4NeutronInelasticXS, G4NeutronCaptureXS cleanup: @@ -1639,7 +1693,7 @@ bugs 05 July 2010 Vladimir Ivanchenko (hadr-cross-V09-03-07) - G4VComponentCrossSection - new interface for cross sections -- G4VCrossSectionDataSet - added name, min and max kinetic energy and access +- G4VCrossSectionDataSet - added name, min and max kinetic energy and access methods 11 Jun 2010 Vladimir Ivanchenko (hadr-cross-V09-03-06) @@ -1659,7 +1713,7 @@ bugs ------------------------------------------------------------ - G4CrossSectionDataStore integer Z and A transition ( note that cross sections data sets still have G4double in interface) - + 25 Mar 2010 Vladimir Ivanchenko (hadr-cross-V09-03-02) ------------------------------------------------------------ - G4CrossSectionDataSetRegistry - do not pop_back vector of pointers @@ -1677,7 +1731,7 @@ bugs 9 Dec 2009 Gunter Folger (hadr-cross-V09-02-18) ------------------------------------------------------------ - G4TripathiLightCrossSection.cc modified by Macrus Mendenhall: - - re-enable low energy check code, but without creating new instances of + - re-enable low energy check code, but without creating new instances of G4TripathiLightCrossSection 2 Dec 2009 Vladimir Ivanchenko (hadr-cross-V09-02-17) @@ -1686,7 +1740,7 @@ bugs 25 Nov 2009 Gunter Folger (hadr-cross-V09-02-16) ------------------------------------------------------------ -- modify upper limit of validity to 100 TeV in +- modify upper limit of validity to 100 TeV in G4NeutronInelasticCrossSection, G4ProtonInelasticCrossSection, and G4PiNuclearCrossSection Use constant cross section above original range @@ -1698,7 +1752,7 @@ bugs 20 Nov 2009 Vladimir Ivanchenko (hadr-cross-V09-02-14) ------------------------------------------------------------ - use as a default hadron-nucleon cross section parameterisation - of Nikolay Starkov in G4GlauberGribovCrossSection, + of Nikolay Starkov in G4GlauberGribovCrossSection, G4GGNuclNuclCrossSection, G4NeutronElasticXS, G4NeutronInelasticXS, G4BGGNucleonElasticXS, G4BGGNucleonInelasticXS, G4BGGPionElasticXS, G4BGGPionInelasticXS @@ -1706,7 +1760,7 @@ bugs 19 Nov 2009 Vladimir Ivanchenko (hadr-cross-V09-02-13) ------------------------------------------------------------ - restored head version of hadr-cross-V09-02-06 for all files, added - bug fixes for G4BGGXX classes and added back new G4NeutronXXXS + bug fixes for G4BGGXX classes and added back new G4NeutronXXXS cross sections 17 Nov 2009 Mikhail Kosov (hadr-cross-V09-02-12) @@ -1729,17 +1783,17 @@ bugs 4 Nov 2009 Mikhail Kosov (hadr-cross-V09-02-08) ------------------------------------------------------------ -- Resolving of the circular dependency with CHIPS for the previous tag +- Resolving of the circular dependency with CHIPS for the previous tag 23 Oct 2009 Mikhail Kosov (hadr-cross-V09-02-07) ------------------------------------------------------------ - in G4GlauberGribovCrossSection, G4GGNuclNuclCrossSection, G4HadronNucleonXsc - the CHIPS hN cross-sections are used directly instead of three times replication + the CHIPS hN cross-sections are used directly instead of three times replication 12 Aug 2009 Vladimir Ivanchenko (hadr-cross-V09-02-06) ------------------------------------------------------------ - G4CrossSectionDataSetRegistry - return to more simple variant of - deletion, because of problem for + deletion, because of problem for specific PhysicsLists 08 Aug 2009 Vladimir Ivanchenko (hadr-cross-V09-02-05) @@ -1753,10 +1807,10 @@ bugs 21 March 2009 Vladimir Ivanchenko (hadr-cross-V09-02-04) ------------------------------------------------------------ - G4IonsKoxCrossSection, G4IonsShenCrossSection, G4TripathiCrossSection, - G4TripathiLightCrossSection - added protections against numerical + G4TripathiLightCrossSection - added protections against numerical exceptions (V.Grichine) -- G4GGNuclNuclCrossSection - Glauber-Gribov new cross section for ions - (V.Grichine) +- G4GGNuclNuclCrossSection - Glauber-Gribov new cross section for ions + (V.Grichine) 25 February 2009 Vladimir Ivanchenko (hadr-cross-V09-02-03) ------------------------------------------------------------ @@ -1774,7 +1828,7 @@ bugs - G4CrossSectionDataStore - moved constructor and destructor to source, added destruction of data sets, use STL vector instead of C-array -- G4CrossSectionDataSetRegistry - new singleton to keep pointers to +- G4CrossSectionDataSetRegistry - new singleton to keep pointers to cross section data sets - G4VCrossSectiondataSet - constructor and detructor moved to source and registration/deregistration added @@ -1787,15 +1841,15 @@ G4BGGNucleonElasticXS, G4UPiNuclearCrossSection - added proper 24 October 2008 Dennis Wright (hadr-cross-V09-01-06) ---------------------------------------------------- -- replace G4NucleiPropertiesTable::IsInTable with +- replace G4NucleiPropertiesTable::IsInTable with G4NucleiProperties::IsInStableTable for G4PhotoNuclearCrossSection and G4ElectroNuclearCrossSection 24 September 2008 Vladimir Ivantchenko (hadr-cross-V09-01-05) ------------------------------------------------------------ -- G4GlauberGribovCrossSection provides a smooth transition from +- G4GlauberGribovCrossSection provides a smooth transition from Barashenkov cross sections at 90 GeV; set threshold 90 GeV - in classes, where this cross section is used + in classes, where this cross section is used 16 September 2008 Dennis Wright (hadr-cross-V09-01-04) ------------------------------------------------------ @@ -1809,14 +1863,14 @@ G4BGGNucleonElasticXS, G4UPiNuclearCrossSection - added proper 28 April 2008 Dennis Wright (hadr-cross-V09-01-02) -------------------------------------------------- -- T. Koi added capability to use element-based cross section data - sets if no isotope-based ones are available. This is required to - get the HP neutron code to work within the cross section framework +- T. Koi added capability to use element-based cross section data + sets if no isotope-based ones are available. This is required to + get the HP neutron code to work within the cross section framework introduced in version 9.0. - Files affected: G4CrossSectionDataStore.hh, .cc. Added method + Files affected: G4CrossSectionDataStore.hh, .cc. Added method whichDataSetInCharge(). -- DHW: G4NeutronInelasticCrossSection.cc : fix bug which returned +- DHW: G4NeutronInelasticCrossSection.cc : fix bug which returned zero cross section for 3He - G4TripathiLightCrossSection::IsApplicable(): bug fix from T. Koi: @@ -1824,14 +1878,14 @@ G4BGGNucleonElasticXS, G4UPiNuclearCrossSection - added proper 31 March 2008 Dennis Wright (hadr-cross-V09-01-01) -------------------------------------------------- -- G4GlauberGribovCrossSection.cc and G4HadronNucleonXsc.cc - put () +- G4GlauberGribovCrossSection.cc and G4HadronNucleonXsc.cc - put () around && in || in order to fix gcc-4.3 compiler warnings. 17 January 2008 Vladimir Ivantchenko (hadr-cross-V09-01-00) ---------------------------------------------------------- -- G4PhotoNuclearCrossSection and G4ElectroNuclearCrossSection - move - compicate inlined method with many returns to source; fixed one wrong - return value (was zero instead of pseudo-inf) and comment out +- G4PhotoNuclearCrossSection and G4ElectroNuclearCrossSection - move + compicate inlined method with many returns to source; fixed one wrong + return value (was zero instead of pseudo-inf) and comment out extra warning which tell nothing useful to users 28 June 2007 Dennis Wright (hadr-cross-V09-00-00) @@ -1852,7 +1906,7 @@ G4BGGNucleonElasticXS, G4UPiNuclearCrossSection - added proper 08 June 2007 Vladimir Ivantchenko (hadr-cross-V08-03-03) ------------------------------------------------------- -- G4PiNuclearCrossSection.cc - fix non-initilised total cross section +- G4PiNuclearCrossSection.cc - fix non-initilised total cross section for pi- 30 May 2007 Dennis Wright (hadr-cross-V08-03-02) @@ -1874,7 +1928,7 @@ G4BGGNucleonElasticXS, G4UPiNuclearCrossSection - added proper allowing one to get qe/in and sd/in ratios. -- G4HadronNucleonXsc.hh, .cc : add new method GetHadronNucleonXscMK to get +- G4HadronNucleonXsc.hh, .cc : add new method GetHadronNucleonXscMK to get hadron-nucleon cross section using Mikhail Kossov's parameterization. 03 May 2007 Dennis Wright (hadr-cross-V08-02-06) @@ -1891,9 +1945,9 @@ G4BGGNucleonElasticXS, G4UPiNuclearCrossSection - added proper 22 Mar 2007 Dennis Wright for V. Ivanchenko (hadr-cross-V08-02-04) ------------------------------------------------------------------ - G4UPiNuclearCrossSection.cc: better handling of low energy cross sections -- Added new classes (V.Ivanchenko): +- Added new classes (V.Ivanchenko): G4BGGNucleonElasticXS: proton and neutron elastic cross section wrapper - class using Barashenkov parameterization below + class using Barashenkov parameterization below 100 GeV and Glauber-Gribov model above G4BGGNucleonInelasticXS: proton and neutron inelastic cross section wrapper of Barashenkov-Glauber-Gribov @@ -1904,7 +1958,7 @@ G4BGGNucleonElasticXS, G4UPiNuclearCrossSection - added proper ----------------------------------------------------------------- - use G4NucleonNuclearCrossSection in G4UInelasticCrossSection and G4UElasticCrossSection (V.Ivanchenko) -- complete implementations of A and Z interfaces to classes (V.Ivanchenko): +- complete implementations of A and Z interfaces to classes (V.Ivanchenko): G4UPiNuclearCrossSection G4UInelasticCrossSection G4UElasticCrossSection @@ -1913,12 +1967,12 @@ G4BGGNucleonElasticXS, G4UPiNuclearCrossSection - added proper 30 Jan 2007 Dennis Wright (hadr-cross-V08-02-02) ------------------------------------------------ -- add divide by zero protection to +- add divide by zero protection to G4CrossSectionDataStore::SelectRandomIsotope 27 Jan 2007 V. Ivanchenko (hadr-cross-V08-02-01) ------------------------------------------------ -- add implementations of A and Z interfaces to classes: +- add implementations of A and Z interfaces to classes: G4UPiNuclearCrossSection G4UInelasticCrossSection G4UElasticCrossSection @@ -1928,7 +1982,7 @@ G4BGGNucleonElasticXS, G4UPiNuclearCrossSection - added proper 27 Dec 2006 Dennis Wright (hadr-cross-V08-02-00) ------------------------------------------------ - added handling of user-defined isotope abundances for elements and - proper cross section and abundance weighted choice of isotopes in + proper cross section and abundance weighted choice of isotopes in reactions. New virtual methods for IsApplicable and GetCrossSections added to classes G4VCrossSectionDataSet and G4CrossSectionDataStore. Other classes affected: @@ -1953,7 +2007,7 @@ G4BGGNucleonElasticXS, G4UPiNuclearCrossSection - added proper G4TripathiLightCrossSection.hh, .cc NOTE: This tag should be used with the tag hadr-man-V08-02-00 of the - hadronic/management directory because G4HadronicProcess was affected + hadronic/management directory because G4HadronicProcess was affected also. - from Vladimir Grichine: @@ -1967,15 +2021,15 @@ G4BGGNucleonElasticXS, G4UPiNuclearCrossSection - added proper 16 Nov 2006 D.W. for Vladimir Grichine (hadr-cross-V08-01-08) ------------------------------------------------------------- -- G4GlauberGribovCrossSection: extend applicability down to 0.3 GeV for +- G4GlauberGribovCrossSection: extend applicability down to 0.3 GeV for protons and neutrons (not 100 MeV as in hadr-cross-V08-01-06) - Dennis Wright: add missing methods - G4double + G4double GetHadronNucleaonXsc(const G4DynamicParticle*,G4double At,G4double Zt); - G4double + G4double GetHadronNucleaonXscNS(const G4DynamicParticle*,const G4Element*); - G4double + G4double GetHadronNucleaonXscNS(const G4DynamicParticle*,G4double At,G4double Zt); to get code to compile @@ -1990,34 +2044,34 @@ G4BGGNucleonElasticXS, G4UPiNuclearCrossSection - added proper 13 Nov 2006 Dennis Wright for Vladimir Grichine (hadr-cross-V08-01-06) ---------------------------------------------------------------------- -- G4GlauberGribovCrossSection.cc: extend range of validity for protons +- G4GlauberGribovCrossSection.cc: extend range of validity for protons down to 100 MeV 3 Oct 2006 Gunter Folger (hadr-cross-V08-01-04) --------------------------------------------------- - G4ProtonInelasticCrossSection: extend range of validity to 1TeV, using constant cross section above 20GeV. - + 2 Oct 2006 Vladimir Grichine (hadr-cross-V08-01-03) --------------------------------------------------- -- G4GlauberGribovCrossSection::GetCrossSection() : fix bug in inelastic +- G4GlauberGribovCrossSection::GetCrossSection() : fix bug in inelastic cross section. Bug was discovered in the paper from which the cross was derived. 31 Aug 2006 Vladimir Ivanchenko (hadr-cross-V08-01-02) ------------------------------------------------------ -- new wrapper cross section classes G4UInelasticCrossSection and - G4UElasticCrossSection which combine cross sections from different - data sets -- new G4UPiNuclearCrossSection providing another implementation - of elastic and inelastic cross sections from Barashenkov +- new wrapper cross section classes G4UInelasticCrossSection and + G4UElasticCrossSection which combine cross sections from different + data sets +- new G4UPiNuclearCrossSection providing another implementation + of elastic and inelastic cross sections from Barashenkov 17, 21 Aug 2006 Gunter Folger (same tag as 31 Aug above) -------------------------------------------------------- - added two missing Ca inelastic pi- entries, changed formatting -- changed scaling of cross sections for elements not tabulated from scaling +- changed scaling of cross sections for elements not tabulated from scaling in Z^(2/3) to A^0.75 diff --git a/source/processes/hadronic/cross_sections/include/G4ChipsAntiBaryonInelasticXS.hh b/source/processes/hadronic/cross_sections/include/G4ChipsAntiBaryonInelasticXS.hh index 8ee4c4dde1..45bbfe26c6 100644 --- a/source/processes/hadronic/cross_sections/include/G4ChipsAntiBaryonInelasticXS.hh +++ b/source/processes/hadronic/cross_sections/include/G4ChipsAntiBaryonInelasticXS.hh @@ -86,7 +86,7 @@ private: std::vector* LEN; // Vector of pointers to LowEnProtonCrossSection std::vector* HEN; // Vector of pointers to HighEnProtonCrossSection - G4int j; // A#0f Z/N-records already tested in AMDB + G4int j=0; // A#0f Z/N-records already tested in AMDB std::vector colN; // Vector of N for calculated nuclei (isotops) std::vector colZ; // Vector of Z for calculated nuclei (isotops) std::vector colP; // Vector of last momenta for the reaction diff --git a/source/processes/hadronic/cross_sections/include/G4ChipsHyperonInelasticXS.hh b/source/processes/hadronic/cross_sections/include/G4ChipsHyperonInelasticXS.hh index 25e58ec7a1..9c7ab6288d 100644 --- a/source/processes/hadronic/cross_sections/include/G4ChipsHyperonInelasticXS.hh +++ b/source/processes/hadronic/cross_sections/include/G4ChipsHyperonInelasticXS.hh @@ -88,7 +88,7 @@ private: std::vector* LEN; // Vector of pointers to LowEnProtonCrossSection std::vector* HEN; // Vector of pointers to HighEnProtonCrossSection - G4int j; // A#0f Z/N-records already tested in AMDB + G4int j=0; // A#0f Z/N-records already tested in AMDB std::vector colN; // Vector of N for calculated nuclei (isotops) std::vector colZ; // Vector of Z for calculated nuclei (isotops) std::vector colP; // Vector of last momenta for the reaction diff --git a/source/processes/hadronic/cross_sections/include/G4ChipsKaonMinusInelasticXS.hh b/source/processes/hadronic/cross_sections/include/G4ChipsKaonMinusInelasticXS.hh index 87b35456fa..b645d03e00 100644 --- a/source/processes/hadronic/cross_sections/include/G4ChipsKaonMinusInelasticXS.hh +++ b/source/processes/hadronic/cross_sections/include/G4ChipsKaonMinusInelasticXS.hh @@ -89,7 +89,7 @@ private: std::vector* LEN; // Vector of pointers to LowEnProtonCrossSection std::vector* HEN; // Vector of pointers to HighEnProtonCrossSection // - G4int j; // A#0f Z/N-records already tested in AMDB + G4int j=0; // A#0f Z/N-records already tested in AMDB std::vector colN; // Vector of N for calculated nuclei (isotops) std::vector colZ; // Vector of Z for calculated nuclei (isotops) std::vector colP; // Vector of last momenta for the reaction diff --git a/source/processes/hadronic/cross_sections/include/G4ChipsKaonPlusInelasticXS.hh b/source/processes/hadronic/cross_sections/include/G4ChipsKaonPlusInelasticXS.hh index 016b012351..f77ae0be00 100644 --- a/source/processes/hadronic/cross_sections/include/G4ChipsKaonPlusInelasticXS.hh +++ b/source/processes/hadronic/cross_sections/include/G4ChipsKaonPlusInelasticXS.hh @@ -81,11 +81,11 @@ private: G4double EquLinearFit(G4double X, G4int N, G4double X0, G4double DX, G4double* Y); // Body private: - G4double lastSig; // Last value of the Cross Section + G4double lastSig=0.; // Last value of the Cross Section G4double* lastLEN; // Pointer to the last array of LowEnergy cross sections G4double* lastHEN; // Pointer to the last array of HighEnergy cross sections - G4double lastE; // Last used in the cross section Energy - G4int lastPDG; // The last projectile PDG + G4double lastE=0.; // Last used in the cross section Energy + G4int lastPDG=0; // The last projectile PDG G4int lastN; // The last N of calculated nucleus G4int lastZ; // The last Z of calculated nucleus G4double lastP; // Last used in the cross section Momentum @@ -95,7 +95,7 @@ private: std::vector* LEN; // Vector of pointers to LowEnProtonCrossSection std::vector* HEN; // Vector of pointers to HighEnProtonCrossSection - G4int j; // A#0f Z/N-records already tested in AMDB + G4int j=0; // A#0f Z/N-records already tested in AMDB std::vector colN; // Vector of N for calculated nuclei (isotops) std::vector colZ; // Vector of Z for calculated nuclei (isotops) std::vector colP; // Vector of last momenta for the reaction diff --git a/source/processes/hadronic/cross_sections/include/G4ChipsNeutronInelasticXS.hh b/source/processes/hadronic/cross_sections/include/G4ChipsNeutronInelasticXS.hh index be59784767..7d90352199 100644 --- a/source/processes/hadronic/cross_sections/include/G4ChipsNeutronInelasticXS.hh +++ b/source/processes/hadronic/cross_sections/include/G4ChipsNeutronInelasticXS.hh @@ -93,7 +93,7 @@ private: std::vector* LEN; // Vector of pointers to LowEnNeutronCrossSection std::vector* HEN; // Vector of pointers to HighEnNeutronCrossSection - G4int j; // A#0f Z/N-records already tested in AMDB + G4int j=0; // A#0f Z/N-records already tested in AMDB std::vector colN; // Vector of N for calculated nuclei (isotops) std::vector colZ; // Vector of Z for calculated nuclei (isotops) std::vector colP; // Vector of last momenta for the reaction diff --git a/source/processes/hadronic/cross_sections/include/G4ChipsPionMinusInelasticXS.hh b/source/processes/hadronic/cross_sections/include/G4ChipsPionMinusInelasticXS.hh index 0ee2e53c00..c417194b63 100644 --- a/source/processes/hadronic/cross_sections/include/G4ChipsPionMinusInelasticXS.hh +++ b/source/processes/hadronic/cross_sections/include/G4ChipsPionMinusInelasticXS.hh @@ -80,11 +80,11 @@ private: G4double EquLinearFit(G4double X, G4int N, G4double X0, G4double DX, G4double* Y); // Body private: - G4double lastSig; // Last value of the Cross Section + G4double lastSig=0.; // Last value of the Cross Section G4double* lastLEN; // Pointer to the last array of LowEnergy cross sections G4double* lastHEN; // Pointer to the last array of HighEnergy cross sections - G4double lastE; // Last used in the cross section Energy - G4int lastPDG; // The last projectile PDG + G4double lastE=0.; // Last used in the cross section Energy + G4int lastPDG=0; // The last projectile PDG G4int lastN; // The last N of calculated nucleus G4int lastZ; // The last Z of calculated nucleus G4double lastP; // Last used in the cross section Momentum @@ -94,7 +94,7 @@ private: std::vector* LEN; // Vector of pointers to LowEnProtonCrossSection std::vector* HEN; // Vector of pointers to HighEnProtonCrossSection - G4int j; // A#0f Z/N-records already tested in AMDB + G4int j=0; // A#0f Z/N-records already tested in AMDB std::vector colN; // Vector of N for calculated nuclei (isotops) std::vector colZ; // Vector of Z for calculated nuclei (isotops) std::vector colP; // Vector of last momenta for the reaction diff --git a/source/processes/hadronic/cross_sections/include/G4ChipsPionPlusInelasticXS.hh b/source/processes/hadronic/cross_sections/include/G4ChipsPionPlusInelasticXS.hh index e54cb6ea5d..8713fa5ab5 100644 --- a/source/processes/hadronic/cross_sections/include/G4ChipsPionPlusInelasticXS.hh +++ b/source/processes/hadronic/cross_sections/include/G4ChipsPionPlusInelasticXS.hh @@ -82,11 +82,11 @@ private: G4double EquLinearFit(G4double X, G4int N, G4double X0, G4double DX, G4double* Y); // Body private: - G4double lastSig; // Last value of the Cross Section + G4double lastSig=0.; // Last value of the Cross Section G4double* lastLEN; // Pointer to the last array of LowEnergy cross sections G4double* lastHEN; // Pointer to the last array of HighEnergy cross sections - G4double lastE; // Last used in the cross section Energy - G4int lastPDG; // The last projectile PDG + G4double lastE=0.; // Last used in the cross section Energy + G4int lastPDG=0; // The last projectile PDG G4int lastN; // The last N of calculated nucleus G4int lastZ; // The last Z of calculated nucleus G4double lastP; // Last used in the cross section Momentum @@ -96,7 +96,7 @@ private: std::vector* LEN; // Vector of pointers to LowEnProtonCrossSection std::vector* HEN; // Vector of pointers to HighEnProtonCrossSection - G4int j; // A#0f Z/N-records already tested in AMDB + G4int j=0; // A#0f Z/N-records already tested in AMDB std::vector colN; // Vector of N for calculated nuclei (isotops) std::vector colZ; // Vector of Z for calculated nuclei (isotops) std::vector colP; // Vector of last momenta for the reaction diff --git a/source/processes/hadronic/cross_sections/include/G4ChipsProtonInelasticXS.hh b/source/processes/hadronic/cross_sections/include/G4ChipsProtonInelasticXS.hh index e406e86382..5f04137d53 100644 --- a/source/processes/hadronic/cross_sections/include/G4ChipsProtonInelasticXS.hh +++ b/source/processes/hadronic/cross_sections/include/G4ChipsProtonInelasticXS.hh @@ -88,7 +88,7 @@ private: std::vector* LEN; // Vector of pointers to LowEnProtonCrossSection std::vector* HEN; // Vector of pointers to HighEnProtonCrossSection - G4int j; // A#0f Z/N-records already tested in AMDB + G4int j=0; // A#0f Z/N-records already tested in AMDB std::vector colN; // Vector of N for calculated nuclei (isotops) std::vector colZ; // Vector of Z for calculated nuclei (isotops) std::vector colP; // Vector of last momenta for the reaction diff --git a/source/processes/hadronic/cross_sections/include/G4GammaNuclearXS.hh b/source/processes/hadronic/cross_sections/include/G4GammaNuclearXS.hh new file mode 100644 index 0000000000..35856a8cb9 --- /dev/null +++ b/source/processes/hadronic/cross_sections/include/G4GammaNuclearXS.hh @@ -0,0 +1,122 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +// ------------------------------------------------------------------- +// +// GEANT4 Class header file +// +// +// File name: G4GammaNuclearXS +// +// Author V.Ivantchenko, Geant4, 22 October 2020 +// + +// Class Description: +// This is a base class for gamma-nuclear cross section based on +// data files from G4PARTICLEXSDATA data set +// Class Description - End + +#ifndef G4GammaNuclearXS_h +#define G4GammaNuclearXS_h 1 + +#include "G4VCrossSectionDataSet.hh" +#include "globals.hh" +#include "G4PhysicsVector.hh" +#include "G4Threading.hh" +#include + +const G4int MAXZEL = 93; + +class G4DynamicParticle; +class G4ParticleDefinition; +class G4Element; + +class G4GammaNuclearXS final : public G4VCrossSectionDataSet +{ +public: + + explicit G4GammaNuclearXS(); + + ~G4GammaNuclearXS() final; + + static const char* Default_Name() {return "G4GammaNuclearXS";} + + G4bool IsElementApplicable(const G4DynamicParticle*, + G4int Z, const G4Material*) final; + + G4bool IsIsoApplicable(const G4DynamicParticle*, G4int Z, G4int A, + const G4Element*, const G4Material* mat) final; + + G4double GetElementCrossSection(const G4DynamicParticle*, + G4int Z, const G4Material* mat) final; + + G4double GetIsoCrossSection(const G4DynamicParticle*, G4int Z, G4int A, + const G4Isotope* iso, + const G4Element* elm, + const G4Material* mat) final; + + const G4Isotope* SelectIsotope(const G4Element*, + G4double kinEnergy, G4double logE) final; + + void BuildPhysicsTable(const G4ParticleDefinition&) final; + + void CrossSectionDescription(std::ostream&) const final; + + G4GammaNuclearXS & operator=(const G4GammaNuclearXS &right) = delete; + G4GammaNuclearXS(const G4GammaNuclearXS&) = delete; + +private: + + void Initialise(G4int Z); + + void InitialiseOnFly(G4int Z); + + const G4String& FindDirectoryPath(); + + inline G4PhysicsVector* GetPhysicsVector(G4int Z); + + G4VCrossSectionDataSet* ggXsection; + const G4ParticleDefinition* gamma; + + static G4PhysicsVector* data[MAXZEL]; + static G4double coeff[MAXZEL]; + static G4String gDataDirectory; + + G4bool isMaster; + +#ifdef G4MULTITHREADED + static G4Mutex gNuclearXSMutex; +#endif +}; + +inline +G4PhysicsVector* G4GammaNuclearXS::GetPhysicsVector(G4int Z) +{ + if(nullptr == data[Z]) { InitialiseOnFly(Z); } + return data[Z]; +} + +#endif diff --git a/source/processes/hadronic/cross_sections/include/G4IonProtonCrossSection.hh b/source/processes/hadronic/cross_sections/include/G4IonProtonCrossSection.hh index 3ca368eff4..62a06df128 100644 --- a/source/processes/hadronic/cross_sections/include/G4IonProtonCrossSection.hh +++ b/source/processes/hadronic/cross_sections/include/G4IonProtonCrossSection.hh @@ -58,31 +58,49 @@ class G4IonProtonCrossSection : public G4VCrossSectionDataSet { public: - G4IonProtonCrossSection(); + explicit G4IonProtonCrossSection(); - virtual ~G4IonProtonCrossSection(); + ~G4IonProtonCrossSection() override; - G4double GetProtonCrossSection(G4double kinEnergy, G4int Z); + G4double GetProtonCrossSection(const G4DynamicParticle*, G4int Z); + + G4double GetDeuteronCrossSection(const G4DynamicParticle*, G4int Z); + + G4double GetTritonCrossSection(const G4DynamicParticle*, G4int Z); + + G4double GetHe3CrossSection(const G4DynamicParticle*, G4int Z); + + G4double GetAlphaCrossSection(const G4DynamicParticle*, G4int Z); - virtual G4bool IsElementApplicable(const G4DynamicParticle* aPart, G4int Z, - const G4Material*); + const G4Material*) override; + + G4bool IsIsoApplicable(const G4DynamicParticle*, G4int Z, G4int A, + const G4Element* elm = nullptr, + const G4Material* mat = nullptr) override; - virtual G4double GetElementCrossSection(const G4DynamicParticle* aPart, - G4int Z, const G4Material*); + G4int Z, const G4Material*) override; - virtual - void BuildPhysicsTable(const G4ParticleDefinition&); + G4double GetIsoCrossSection(const G4DynamicParticle*, G4int Z, G4int A, + const G4Isotope* iso = nullptr, + const G4Element* elm = nullptr, + const G4Material* mat = nullptr) override; - virtual void CrossSectionDescription(std::ostream&) const; + void BuildPhysicsTable(const G4ParticleDefinition&) override; + + void CrossSectionDescription(std::ostream&) const override; private: // Without Description G4IonProtonCrossSection & operator=(const G4IonProtonCrossSection &right); G4IonProtonCrossSection(const G4IonProtonCrossSection&); - G4ParticleInelasticXS* theForward; + G4ParticleInelasticXS* xsProton; + G4ParticleInelasticXS* xsDeuteron; + G4ParticleInelasticXS* xsTriton; + G4ParticleInelasticXS* xsHe3; + G4ParticleInelasticXS* xsAlpha; }; diff --git a/source/processes/hadronic/cross_sections/include/G4IsotopeList.hh b/source/processes/hadronic/cross_sections/include/G4IsotopeList.hh new file mode 100644 index 0000000000..390d5ef9f7 --- /dev/null +++ b/source/processes/hadronic/cross_sections/include/G4IsotopeList.hh @@ -0,0 +1,78 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// ------------------------------------------------------------------- +// +// GEANT4 Class header file +// +// +// File name: G4IsotopeList +// +// Author V. Ivantchenko, 22 October 2020 +// + +#ifndef G4IsotopeList_h +#define G4IsotopeList_h 1 + +static const G4int amin[] = { + 0, + 1, 3, 6, 9, 10, 12, 14, 16, 19, 20, //1-10 + 23, 24, 27, 28, 31, 32, 35, 36, 39, 40, //11-20 + 45, 46, 50, 50, 55, 54, 59, 58, 63, 64, //21-30 + 69, 70, 75, 0, 0, 78, 0, 0, 89, 90, //31-40 + 0, 92, 0, 0, 0, 102, 107, 106, 113, 112, //41-50 + 0, 0, 127, 0, 133, 130, 0, 0, 0, 0, //51-60 + 0, 0, 0, 152, 0, 0, 0, 0, 0, 168, //61-70 + 0, 0, 180, 180, 0, 0, 0, 190, 197, 0, //71-80 +203, 204, 209, 0, 0, 0, 0, 0, 0, 0, //81-90 + 0, 234}; + +static const G4int amax[] = { + 0, + 3, 4, 7, 9, 11, 13, 15, 18, 19, 22, //1-10 + 23, 26, 27, 30, 31, 36, 37, 40, 41, 48, //11-20 + 45, 50, 51, 54, 55, 58, 59, 64, 65, 70, //21-30 + 71, 76, 75, 0, 0, 86, 0, 0, 89, 96, //31-40 + 0, 100, 0, 0, 0, 110, 109, 116, 115, 124, //41-50 + 0, 0, 127, 0, 133, 138, 0, 0, 0, 0, //51-60 + 0, 0, 0, 160, 0, 0, 0, 0, 0, 176, //61-70 + 0, 0, 181, 186, 0, 0, 0, 198, 197, 0, //71-80 +205, 208, 209, 0, 0, 0, 0, 0, 0, 0, //81-90 + 0, 238}; + +static const G4double aeff[] = { + 0., + 1.00794, 4.00264, 6.94003, 9.01218, 10.811, 12.0107, 14.0068, 15.9994, 18.9984, 20.18, //1-10 + 22.9898, 24.305, 26.9815, 28.0854, 30.9738, 32.0661, 35.4526, 39.9477, 39.0983, 40.078, //11-20 + 44.9559, 47.8667, 50.9415, 51.9961, 54.938, 55.8451, 58.9332, 58.6933, 63.5456, 65.3955, //21-30 + 69.7231, 72.6128, 74.9216, 78.9594, 79.9035, 83.7993, 85.4677, 87.6166, 88.9058, 91.2236, //31-40 + 92.9064, 95.9313, 97.9072, 101.065, 102.906, 106.415, 107.868, 112.411, 114.818, 118.71, //41-50 + 121.76, 127.603, 126.904, 131.292, 132.905, 137.327, 138.905, 140.115, 140.908, 144.236, //51-60 + 144.913, 150.366, 151.964, 157.252, 158.925, 162.497, 164.93, 167.256, 168.934, 173.038, //61-70 + 174.967, 178.485, 180.948, 183.842, 186.207, 190.225, 192.216, 195.078, 196.967, 200.599, //71-80 + 204.383, 207.217, 208.98, 208.982, 209.987, 222.018, 223.02, 226.025, 227.028, 232.038, //81-90 + 231.036, 238.029}; + +#endif diff --git a/source/processes/hadronic/cross_sections/include/G4NeutronCaptureXS.hh b/source/processes/hadronic/cross_sections/include/G4NeutronCaptureXS.hh index 5c77148581..5621373808 100644 --- a/source/processes/hadronic/cross_sections/include/G4NeutronCaptureXS.hh +++ b/source/processes/hadronic/cross_sections/include/G4NeutronCaptureXS.hh @@ -46,6 +46,7 @@ #include "G4VCrossSectionDataSet.hh" #include "globals.hh" #include "G4ElementData.hh" +#include "G4PhysicsVector.hh" #include "G4Threading.hh" #include #include @@ -55,7 +56,6 @@ const G4int MAXZCAPTURE = 93; class G4DynamicParticle; class G4ParticleDefinition; class G4Element; -class G4PhysicsVector; class G4NeutronCaptureXS final : public G4VCrossSectionDataSet { @@ -88,6 +88,11 @@ public: void CrossSectionDescription(std::ostream&) const final; + G4double IsoCrossSection(G4double ekin, G4double logekin, G4int Z, G4int A); + + G4NeutronCaptureXS & operator=(const G4NeutronCaptureXS &right) = delete; + G4NeutronCaptureXS(const G4NeutronCaptureXS&) = delete; + private: void Initialise(G4int Z); @@ -96,15 +101,10 @@ private: const G4String& FindDirectoryPath(); - const G4PhysicsVector* GetPhysicsVector(G4int Z); + inline const G4PhysicsVector* GetPhysicsVector(G4int Z); G4PhysicsVector* RetrieveVector(std::ostringstream& in, G4bool warn); - G4double IsoCrossSection(G4double ekin, G4double logekin, G4int Z, G4int A); - - G4NeutronCaptureXS & operator=(const G4NeutronCaptureXS &right); - G4NeutronCaptureXS(const G4NeutronCaptureXS&); - G4double emax; G4double elimit; G4double logElimit; @@ -114,8 +114,6 @@ private: G4bool isMaster; static G4ElementData* data; - static const G4int amin[MAXZCAPTURE]; - static const G4int amax[MAXZCAPTURE]; static G4String gDataDirectory; #ifdef G4MULTITHREADED @@ -123,4 +121,15 @@ private: #endif }; +inline +const G4PhysicsVector* G4NeutronCaptureXS::GetPhysicsVector(G4int Z) +{ + const G4PhysicsVector* pv = data->GetElementData(Z); + if(pv == nullptr) { + InitialiseOnFly(Z); + pv = data->GetElementData(Z); + } + return pv; +} + #endif diff --git a/source/processes/hadronic/cross_sections/include/G4NeutronElasticXS.hh b/source/processes/hadronic/cross_sections/include/G4NeutronElasticXS.hh index 8a58191570..4572147e63 100644 --- a/source/processes/hadronic/cross_sections/include/G4NeutronElasticXS.hh +++ b/source/processes/hadronic/cross_sections/include/G4NeutronElasticXS.hh @@ -44,6 +44,7 @@ #include "G4VCrossSectionDataSet.hh" #include "globals.hh" +#include "G4PhysicsVector.hh" #include "G4Threading.hh" #include @@ -52,9 +53,7 @@ const G4int MAXZEL = 93; class G4DynamicParticle; class G4ParticleDefinition; class G4Element; -class G4PhysicsVector; -class G4ComponentGGHadronNucleusXsc; -class G4NistManager; +class G4VComponentCrossSection; class G4NeutronElasticXS final : public G4VCrossSectionDataSet { @@ -87,8 +86,9 @@ public: void CrossSectionDescription(std::ostream&) const final; - G4double IsoCrossSection(G4double ekin, G4double logE, G4int Z, G4int A); - + G4NeutronElasticXS & operator=(const G4NeutronElasticXS &right) = delete; + G4NeutronElasticXS(const G4NeutronElasticXS&) = delete; + private: void Initialise(G4int Z); @@ -97,20 +97,13 @@ private: const G4String& FindDirectoryPath(); - G4PhysicsVector* GetPhysicsVector(G4int Z); + inline G4PhysicsVector* GetPhysicsVector(G4int Z); - G4NeutronElasticXS & operator=(const G4NeutronElasticXS &right); - G4NeutronElasticXS(const G4NeutronElasticXS&); - - G4NistManager* nist; - G4ComponentGGHadronNucleusXsc* ggXsection; + G4VComponentCrossSection* ggXsection; const G4ParticleDefinition* neutron; - std::vector temp; - static G4PhysicsVector* data[MAXZEL]; static G4double coeff[MAXZEL]; - static G4double aeff[MAXZEL]; static G4String gDataDirectory; G4bool isMaster; @@ -120,4 +113,11 @@ private: #endif }; +inline +G4PhysicsVector* G4NeutronElasticXS::GetPhysicsVector(G4int Z) +{ + if(nullptr == data[Z]) { InitialiseOnFly(Z); } + return data[Z]; +} + #endif diff --git a/source/processes/hadronic/cross_sections/include/G4NeutronInelasticXS.hh b/source/processes/hadronic/cross_sections/include/G4NeutronInelasticXS.hh index 350b7d6260..b7ccec6e4b 100644 --- a/source/processes/hadronic/cross_sections/include/G4NeutronInelasticXS.hh +++ b/source/processes/hadronic/cross_sections/include/G4NeutronInelasticXS.hh @@ -44,6 +44,7 @@ #include "G4VCrossSectionDataSet.hh" #include "globals.hh" #include "G4ElementData.hh" +#include "G4PhysicsVector.hh" #include "G4Threading.hh" #include @@ -52,9 +53,7 @@ const G4int MAXZINEL = 93; class G4DynamicParticle; class G4ParticleDefinition; class G4Element; -class G4PhysicsVector; -class G4ComponentGGHadronNucleusXsc; -class G4NistManager; +class G4VComponentCrossSection; class G4NeutronInelasticXS final : public G4VCrossSectionDataSet { @@ -87,6 +86,11 @@ public: void CrossSectionDescription(std::ostream&) const final; + G4double IsoCrossSection(G4double ekin, G4double logekin, G4int Z, G4int A); + + G4NeutronInelasticXS & operator=(const G4NeutronInelasticXS &right) = delete; + G4NeutronInelasticXS(const G4NeutronInelasticXS&) = delete; + private: void Initialise(G4int Z); @@ -95,17 +99,11 @@ private: const G4String& FindDirectoryPath(); - const G4PhysicsVector* GetPhysicsVector(G4int Z); + inline const G4PhysicsVector* GetPhysicsVector(G4int Z); G4PhysicsVector* RetrieveVector(std::ostringstream& in, G4bool warn); - - G4double IsoCrossSection(G4double ekin, G4double logekin, G4int Z, G4int A); - - G4NeutronInelasticXS & operator=(const G4NeutronInelasticXS &right); - G4NeutronInelasticXS(const G4NeutronInelasticXS&); - G4ComponentGGHadronNucleusXsc* ggXsection; - G4NistManager* nist; + G4VComponentCrossSection* ggXsection; const G4ParticleDefinition* neutron; @@ -114,10 +112,7 @@ private: G4bool isMaster; static G4ElementData* data; - static G4double coeff[MAXZINEL]; - static G4double aeff[MAXZINEL]; - static const G4int amin[MAXZINEL]; - static const G4int amax[MAXZINEL]; + static G4double coeff[MAXZINEL]; static G4String gDataDirectory; #ifdef G4MULTITHREADED @@ -125,4 +120,15 @@ private: #endif }; +inline +const G4PhysicsVector* G4NeutronInelasticXS::GetPhysicsVector(G4int Z) +{ + const G4PhysicsVector* pv = data->GetElementData(Z); + if(pv == nullptr) { + InitialiseOnFly(Z); + pv = data->GetElementData(Z); + } + return pv; +} + #endif diff --git a/source/processes/hadronic/cross_sections/include/G4ParticleInelasticXS.hh b/source/processes/hadronic/cross_sections/include/G4ParticleInelasticXS.hh index a53c699605..2449cf6c77 100644 --- a/source/processes/hadronic/cross_sections/include/G4ParticleInelasticXS.hh +++ b/source/processes/hadronic/cross_sections/include/G4ParticleInelasticXS.hh @@ -45,6 +45,7 @@ #include "G4VCrossSectionDataSet.hh" #include "globals.hh" #include "G4ElementData.hh" +#include "G4PhysicsVector.hh" #include "G4Threading.hh" #include @@ -53,10 +54,7 @@ const G4int MAXZINELP = 93; class G4DynamicParticle; class G4ParticleDefinition; class G4Element; -class G4PhysicsVector; -class G4ComponentGGHadronNucleusXsc; -class G4ComponentGGNuclNuclXsc; -class G4NistManager; +class G4VComponentCrossSection; class G4ParticleInelasticXS final : public G4VCrossSectionDataSet { @@ -67,18 +65,19 @@ public: ~G4ParticleInelasticXS() final; G4bool IsElementApplicable(const G4DynamicParticle*, G4int Z, - const G4Material*) final; + const G4Material* mat = nullptr) final; G4bool IsIsoApplicable(const G4DynamicParticle*, G4int Z, G4int A, - const G4Element*, const G4Material*) final; + const G4Element* elm = nullptr, + const G4Material* mat = nullptr) final; - G4double GetElementCrossSection(const G4DynamicParticle*, - G4int Z, const G4Material* mat) final; + G4double GetElementCrossSection(const G4DynamicParticle*, G4int Z, + const G4Material* mat = nullptr) final; G4double GetIsoCrossSection(const G4DynamicParticle*, G4int Z, G4int A, - const G4Isotope* iso, - const G4Element* elm, - const G4Material* mat) final; + const G4Isotope* iso = nullptr, + const G4Element* elm = nullptr, + const G4Material* mat = nullptr) final; const G4Isotope* SelectIsotope(const G4Element*, G4double kinEnergy, G4double logE) final; @@ -89,6 +88,10 @@ public: G4double IsoCrossSection(G4double ekin, G4double logE, G4int Z, G4int A); + G4ParticleInelasticXS & operator= + (const G4ParticleInelasticXS &right) = delete; + G4ParticleInelasticXS(const G4ParticleInelasticXS&) = delete; + private: void Initialise(G4int Z); @@ -97,34 +100,37 @@ private: const G4String& FindDirectoryPath(); - const G4PhysicsVector* GetPhysicsVector(G4int Z); + inline const G4PhysicsVector* GetPhysicsVector(G4int Z); G4PhysicsVector* RetrieveVector(std::ostringstream& in, G4bool warn); - G4ParticleInelasticXS & operator=(const G4ParticleInelasticXS &right); - G4ParticleInelasticXS(const G4ParticleInelasticXS&); - - G4ComponentGGHadronNucleusXsc* ggXsection; - G4ComponentGGNuclNuclXsc* nnXsection; - G4NistManager* fNist; + G4VComponentCrossSection* highEnergyXsection; const G4ParticleDefinition* particle; - const G4ParticleDefinition* proton; std::vector temp; - G4bool isMaster; + G4int index; + G4bool isMaster; - static G4ElementData* data; - static G4double coeff[MAXZINELP]; - static G4double aeff[MAXZINELP]; - static const G4int amin[MAXZINELP]; - static const G4int amax[MAXZINELP]; - static G4String gDataDirectory; + static G4ElementData* data[5]; + static G4double coeff[MAXZINELP][5]; + static G4String gDataDirectory[5]; #ifdef G4MULTITHREADED static G4Mutex particleInelasticXSMutex; #endif }; +inline +const G4PhysicsVector* G4ParticleInelasticXS::GetPhysicsVector(G4int Z) +{ + const G4PhysicsVector* pv = data[index]->GetElementData(Z); + if(pv == nullptr) { + InitialiseOnFly(Z); + pv = data[index]->GetElementData(Z); + } + return pv; +} + #endif diff --git a/source/processes/hadronic/cross_sections/include/G4ProjectileFragmentCrossSection.hh b/source/processes/hadronic/cross_sections/include/G4ProjectileFragmentCrossSection.hh deleted file mode 100644 index c5914c233c..0000000000 --- a/source/processes/hadronic/cross_sections/include/G4ProjectileFragmentCrossSection.hh +++ /dev/null @@ -1,208 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -// -#ifndef G4ProjectileFragmentCrossSection_h -#define G4ProjectileFragmentCrossSection_h 1 - -#include -#include -#include "G4Exp.hh" -#include "G4Log.hh" -#include "G4Pow.hh" - -// Implements Physical Review C61, 034607 (2000) -// Rewrite starting from EPAX Version 2 - -class G4ProjectileFragmentCrossSection -{ - public: - G4ProjectileFragmentCrossSection() - { - p_S[1] = -2.38; // scale factor for xsect in barn - p_S[2] = 0.27; - - p_P[1] = -2.5840E+00; // slope of mass yield curve - p_P[2] = -7.5700E-03; - - p_Delta[1] = -1.0870E+00; // centroid rel. to beta-stability - p_Delta[2] = +3.0470E-02; - p_Delta[3] = +2.1353E-04; - p_Delta[4] = +7.1350E+01; - - p_R[1] = +0.885E+00; // width parameter R - p_R[2] = -9.8160E-03; - - p_Un[1] = 1.65; // slope par. n-rich ride of Z distr. - - p_Up[1] = 1.7880; // slope par. p-rich ride of Z distr. - p_Up[2] = +4.7210E-03; - p_Up[3] = -1.3030E-05; - - p_mn[1] = 0.400; // memory effect n-rich projectiles - p_mn[2] = 0.600; - - p_mp[1] = -10.25; // memory effect p-rich projectiles - p_mp[2] = +10.1; - - corr_d[1] = -25.0; // correction close to proj.: centroid dzp - corr_d[2] = 0.800; - corr_r[1] = +20.0; // correction close to proj.: width R - corr_r[2] = 0.820; - corr_y[1] = 200.0; // correction close to proj.: Yield_a - corr_y[2] = 0.90; - } - - inline G4double doit(G4double Ap, G4double Zp, G4double At, G4double Zt, G4double A, G4double Z) - { -// calculate mass yield - G4double Ap13 = G4Pow::GetInstance()->powA(Ap, 1./3.); - G4double At13 = G4Pow::GetInstance()->powA(At, 1./3.); - G4double S = p_S[2] * (At13 + Ap13 + p_S[1]); -// std::cout << "debug0 "< corr_y[2]) - { - f_mod_y=corr_y[1]*G4Pow::GetInstance()->powN(A/Ap-corr_y[2], 2) + 1.0; - } - yield_a= yield_a * f_mod_y; -// std::cout << "debug1 "<powA(A, (2./3.))); - G4double zbeta_p = Ap/(1.98+0.0155*G4Pow::GetInstance()->powA(Ap, (2./3.))); - G4double delta; - if(A > p_Delta[4]) - { - delta = p_Delta[1] + p_Delta[2]*A; - } - else - { - delta = p_Delta[3]*A*A; - } - -// modification close to projectile - G4double f_mod=1.0; - if(A/Ap > corr_d[2]) - { - f_mod = corr_d[1]*G4Pow::GetInstance()->powN(A/Ap-corr_d[2], 2) + 1.0; - } - delta = delta*f_mod; - G4double zprob = zbeta+delta; - -// correction for proton- and neutron-rich projectiles - G4double dq; - if((Zp-zbeta_p)>0) - { - dq = G4Exp(p_mp[1] + G4double(A)/G4double(Ap)*p_mp[2]); -// std::cout << "dq "<powN(A/Ap, 2) + p_mn[2]*G4Pow::GetInstance()->powN(A/Ap, 4); - } - zprob = zprob + dq * (Zp-zbeta_p); - -// small corr. since Xe-129 and Pb-208 are not on Z_beta line - zprob = zprob + 0.0020*A; -// std::cout <<"zprob "< corr_r[2]) - { - f_mod = corr_r[1]*Ap*G4Pow::GetInstance()->powN(A/Ap-corr_r[2], 4)+1.0; - } - r = r*f_mod; - -// change width according to dev. from beta-stability - if ((Zp-zbeta_p) < 0.0) - { - r=r*(1.0-0.0833*std::abs(Zp-zbeta_p)); - } - -// calculate slope parameters u_n, u_p - G4double u_n = p_Un[1]; - G4double u_p = p_Up[1] + p_Up[2]*A + p_Up[3]*A*A; - -// calculate charge dispersion - G4double expo, fract; - if((zprob-Z) > 0) - { -// neutron-rich - expo = -r*G4Pow::GetInstance()->powA(std::abs(zprob-Z), u_n); - fract = G4Exp(expo)*std::sqrt(r/3.14159); - } - else - { -// proton-rich - expo = -r*G4Pow::GetInstance()->powA(std::abs(zprob-Z), u_p); - fract = G4Exp(expo)*std::sqrt(r/3.14159); -// std::cout << "1 "<powA(A/2.,0.3); - G4double z_exp = zprob + dfdz * G4Log(10.) / (2.*r); - if( Z>z_exp ) - { - expo = -r*G4Pow::GetInstance()->powA(std::abs(zprob-z_exp), u_p); - fract = G4Exp(expo)*std::sqrt(r/3.14159) - / G4Pow::GetInstance()->powA(G4Pow::GetInstance()->powA(10, dfdz), Z-z_exp); - } - } - -// std::cout << "debug "<= Z) { return 0.0; } - + + // Zero cross-section for particles with kinetic energy less than 2 MeV to prevent + // possible abort signal from bad arithmetic in GetCrossSectionForProjectile + if ( theDynamicParticle->GetKineticEnergy() < 2.0*CLHEP::MeV ) { return 0.0; } + // // Get relevant information about the projectile and target (A, Z) and // velocity of the projectile. @@ -237,7 +241,9 @@ G4EMDissociationCrossSection::GetWilsonProbabilityForProtonDissociation(G4double // from the nucleus in the EMD interaction. // G4double p = 0.0; - if (Z < 6.0) + if (Z < 2.0) + p = 0.0; // To avoid to remove one proton from hydrogen isotopes + else if (Z < 6.0) p = 0.5; else if (Z < 8.0) p = 0.6; diff --git a/source/processes/hadronic/cross_sections/src/G4ElNeutrinoNucleusTotXsc.cc b/source/processes/hadronic/cross_sections/src/G4ElNeutrinoNucleusTotXsc.cc index 98fd338820..0be96bf359 100644 --- a/source/processes/hadronic/cross_sections/src/G4ElNeutrinoNucleusTotXsc.cc +++ b/source/processes/hadronic/cross_sections/src/G4ElNeutrinoNucleusTotXsc.cc @@ -282,7 +282,7 @@ G4double G4ElNeutrinoNucleusTotXsc::GetNuElTotCsArray( G4int index) if( index >= 0 && index < fIndex) return fNuElTotXsc[index]; else { - G4cout<<"Inproper index of fNuElTotXsc array"<= 0 && index < fIndex) return fANuElTotXsc[index]; else { - G4cout<<"Inproper index of fANuElTotXsc array"< +#include + +// factory +#include "G4CrossSectionFactory.hh" +// +G4_DECLARE_XS_FACTORY(G4GammaNuclearXS); + +G4PhysicsVector* G4GammaNuclearXS::data[] = {nullptr}; +G4double G4GammaNuclearXS::coeff[] = {0.0}; +G4String G4GammaNuclearXS::gDataDirectory = ""; + +#ifdef G4MULTITHREADED + G4Mutex G4GammaNuclearXS::gNuclearXSMutex = G4MUTEX_INITIALIZER; +#endif + +G4GammaNuclearXS::G4GammaNuclearXS() + : G4VCrossSectionDataSet(Default_Name()), + ggXsection(nullptr), + gamma(G4Gamma::Gamma()), + isMaster(false) +{ + // verboseLevel = 0; + if(verboseLevel > 0){ + G4cout << "G4GammaNuclearXS::G4GammaNuclearXS Initialise for Z < " + << MAXZEL << G4endl; + } + ggXsection = G4CrossSectionDataSetRegistry::Instance()->GetCrossSectionDataSet("PhotoNuclearXS"); + if(ggXsection == nullptr) ggXsection = new G4PhotoNuclearCrossSection(); + SetForAllAtomsAndEnergies(true); +} + +G4GammaNuclearXS::~G4GammaNuclearXS() +{ + if(isMaster) { + for(G4int i=0; iGetKineticEnergy(); + + G4int Z = (ZZ >= MAXZEL) ? MAXZEL - 1 : ZZ; + + auto pv = GetPhysicsVector(Z); + if(pv == nullptr) { return xs; } + // G4cout << "G4GammaNuclearXS::GetCrossSection e= " << ekin + // << " Z= " << Z << G4endl; + + if(ekin <= pv->GetMaxEnergy()) { + xs = pv->LogVectorValue(ekin, aParticle->GetLogKineticEnergy()); + } else { + xs = coeff[Z]*ggXsection->GetElementCrossSection(aParticle, Z, mat); + } + +#ifdef G4VERBOSE + if(verboseLevel > 1) { + G4cout << "Z= " << Z << " Ekin(MeV)= " << ekin/CLHEP::MeV + << ", nElmXS(b)= " << xs/CLHEP::barn + << G4endl; + } +#endif + return xs; +} + +G4double G4GammaNuclearXS::GetIsoCrossSection( + const G4DynamicParticle* aParticle, + G4int Z, G4int A, + const G4Isotope*, const G4Element*, + const G4Material* mat) +{ + return GetElementCrossSection(aParticle, Z, mat) * A/aeff[Z]; +} + +const G4Isotope* G4GammaNuclearXS::SelectIsotope( + const G4Element* anElement, G4double, G4double) +{ + size_t nIso = anElement->GetNumberOfIsotopes(); + const G4Isotope* iso = anElement->GetIsotope(0); + + //G4cout << "SelectIsotope NIso= " << nIso << G4endl; + if(1 == nIso) { return iso; } + + const G4double* abundVector = anElement->GetRelativeAbundanceVector(); + G4double q = G4UniformRand(); + G4double sum = 0.0; + size_t j; + + // isotope wise cross section not used + for (j=0; jGetIsotope(j); + break; + } + } + return iso; +} + +void +G4GammaNuclearXS::BuildPhysicsTable(const G4ParticleDefinition& p) +{ + if(verboseLevel > 0){ + G4cout << "G4GammaNuclearXS::BuildPhysicsTable for " + << p.GetParticleName() << G4endl; + } + if(p.GetParticleName() != "gamma") { + G4ExceptionDescription ed; + ed << p.GetParticleName() << " is a wrong particle type -" + << " only gamma is allowed"; + G4Exception("G4GammaNuclearXS::BuildPhysicsTable(..)","had012", + FatalException, ed, ""); + return; + } + if(0. == coeff[0]) { +#ifdef G4MULTITHREADED + G4MUTEXLOCK(&gNuclearXSMutex); + if(0. == coeff[0]) { +#endif + coeff[0] = 1.0; + isMaster = true; + FindDirectoryPath(); +#ifdef G4MULTITHREADED + } + G4MUTEXUNLOCK(&gNuclearXSMutex); +#endif + } + + // it is possible re-initialisation for the second run + if(isMaster) { + + // Access to elements + auto theCoupleTable = G4ProductionCutsTable::GetProductionCutsTable(); + size_t numOfCouples = theCoupleTable->GetTableSize(); + for(size_t j=0; jGetMaterialCutsCouple(j)->GetMaterial(); + auto elmVec = mat->GetElementVector(); + size_t numOfElem = mat->GetNumberOfElements(); + for (size_t ie = 0; ie < numOfElem; ++ie) { + G4int Z = std::max(1,std::min(((*elmVec)[ie])->GetZasInt(), MAXZEL-1)); + if(data[Z] == nullptr) { Initialise(Z); } + } + } + } +} + +const G4String& G4GammaNuclearXS::FindDirectoryPath() +{ + // check environment variable + // build the complete string identifying the file with the data set + if(gDataDirectory.empty()) { + char* path = std::getenv("G4PARTICLEXSDATA"); + if (path) { + std::ostringstream ost; + ost << path << "/gamma/inel"; + gDataDirectory = ost.str(); + } else { + G4Exception("G4GammaNuclearXS::Initialise(..)","had013", + FatalException, + "Environment variable G4PARTICLEXSDATA is not defined"); + } + } + return gDataDirectory; +} + +void G4GammaNuclearXS::InitialiseOnFly(G4int Z) +{ +#ifdef G4MULTITHREADED + G4MUTEXLOCK(&gNuclearXSMutex); + if(data[Z] == nullptr) { +#endif + Initialise(Z); +#ifdef G4MULTITHREADED + } + G4MUTEXUNLOCK(&gNuclearXSMutex); +#endif +} + +void G4GammaNuclearXS::Initialise(G4int Z) +{ + if(data[Z] != nullptr) { return; } + + // upload data from file + data[Z] = new G4PhysicsLogVector(); + + std::ostringstream ost; + ost << FindDirectoryPath() << Z ; + std::ifstream filein(ost.str().c_str()); + if (!(filein)) { + G4ExceptionDescription ed; + ed << "Data file <" << ost.str().c_str() + << "> is not opened!"; + G4Exception("G4GammaNuclearXS::Initialise(..)","had014", + FatalException, ed, "Check G4PARTICLEXSDATA"); + return; + } + if(verboseLevel > 1) { + G4cout << "file " << ost.str() + << " is opened by G4GammaNuclearXS" << G4endl; + } + + // retrieve data from DB + if(!data[Z]->Retrieve(filein, true)) { + G4ExceptionDescription ed; + ed << "Data file <" << ost.str().c_str() + << "> is not retrieved!"; + G4Exception("G4GammaNuclearXS::Initialise(..)","had015", + FatalException, ed, "Check G4PARTICLEXSDATA"); + return; + } + // smooth transition + G4Material* mat(nullptr); + G4ThreeVector mom(0.0,0.0,1.0); + G4DynamicParticle dp(gamma, mom, data[Z]->GetMaxEnergy()); + G4double sig1 = (*(data[Z]))[data[Z]->GetVectorLength()-1]; + G4double sig2 = ggXsection->GetElementCrossSection(&dp, Z, mat); + coeff[Z] = (sig2 > 0.) ? sig1/sig2 : 1.0; +} diff --git a/source/processes/hadronic/cross_sections/src/G4HadronNucleonXsc.cc b/source/processes/hadronic/cross_sections/src/G4HadronNucleonXsc.cc index 8f75af56a2..44604f3f3f 100644 --- a/source/processes/hadronic/cross_sections/src/G4HadronNucleonXsc.cc +++ b/source/processes/hadronic/cross_sections/src/G4HadronNucleonXsc.cc @@ -1260,7 +1260,7 @@ G4double G4HadronNucleonXsc::HadronNucleonXscVU( ////////////////////////////////////////////////////////////////////////////// // -// Returns hadron-nucleon Xsc according to differnt parametrisations: +// Returns hadron-nucleon Xsc according to different parametrisations: // [2] E. Levin, hep-ph/9710546 // [3] U. Dersch, et al, hep-ex/9910052 // [4] M.J. Longo, et al, Phys.Rev.Lett. 33 (1974) 725 diff --git a/source/processes/hadronic/cross_sections/src/G4IonProtonCrossSection.cc b/source/processes/hadronic/cross_sections/src/G4IonProtonCrossSection.cc index 10d819fefa..8e35ada6d1 100644 --- a/source/processes/hadronic/cross_sections/src/G4IonProtonCrossSection.cc +++ b/source/processes/hadronic/cross_sections/src/G4IonProtonCrossSection.cc @@ -40,41 +40,108 @@ #include "G4DynamicParticle.hh" #include "G4Element.hh" #include "G4Proton.hh" +#include "G4Deuteron.hh" +#include "G4Triton.hh" +#include "G4He3.hh" +#include "G4Alpha.hh" #include "G4Log.hh" -using namespace std; - G4IonProtonCrossSection::G4IonProtonCrossSection() : G4VCrossSectionDataSet("InvProtonXS") { - theForward = new G4ParticleInelasticXS(G4Proton::Proton()); + xsProton = new G4ParticleInelasticXS(G4Proton::Proton()); + xsDeuteron = new G4ParticleInelasticXS(G4Deuteron::Deuteron()); + xsTriton = new G4ParticleInelasticXS(G4Triton::Triton()); + xsHe3 = new G4ParticleInelasticXS(G4He3::He3()); + xsAlpha = new G4ParticleInelasticXS(G4Alpha::Alpha()); } G4IonProtonCrossSection::~G4IonProtonCrossSection() {} -G4bool -G4IonProtonCrossSection::IsElementApplicable(const G4DynamicParticle*, - G4int Z, const G4Material*) +G4double +G4IonProtonCrossSection::GetProtonCrossSection(const G4DynamicParticle* dp, G4int Z) { - return (1 == Z); + return xsProton->GetElementCrossSection(dp, Z); } G4double -G4IonProtonCrossSection::GetElementCrossSection( - const G4DynamicParticle* dp, - G4int, const G4Material*) +G4IonProtonCrossSection::GetDeuteronCrossSection(const G4DynamicParticle* dp, G4int Z) +{ + return xsDeuteron->GetElementCrossSection(dp, Z); +} + +G4double +G4IonProtonCrossSection::GetTritonCrossSection(const G4DynamicParticle* dp, G4int Z) +{ + return xsTriton->GetElementCrossSection(dp, Z); +} + +G4double +G4IonProtonCrossSection::GetHe3CrossSection(const G4DynamicParticle* dp, G4int Z) +{ + return xsHe3->GetElementCrossSection(dp, Z); +} + +G4double +G4IonProtonCrossSection::GetAlphaCrossSection(const G4DynamicParticle* dp, G4int Z) +{ + return xsAlpha->GetElementCrossSection(dp, Z); +} + +G4bool G4IonProtonCrossSection::IsElementApplicable(const G4DynamicParticle*, + G4int Z, const G4Material*) +{ + return (Z <= 2); +} + +G4bool G4IonProtonCrossSection::IsIsoApplicable(const G4DynamicParticle*, + G4int Z, G4int A, + const G4Element*, + const G4Material*) +{ + return (Z <= 2 && A <= 4); +} + +G4double +G4IonProtonCrossSection::GetElementCrossSection(const G4DynamicParticle* dp, + G4int Z, const G4Material*) +{ + G4int A = (1 == Z) ? 1 : 4; + return GetIsoCrossSection(dp, Z, A); +} + +G4double +G4IonProtonCrossSection::GetIsoCrossSection(const G4DynamicParticle* dp, + G4int Z, G4int A, + const G4Isotope*, + const G4Element*, + const G4Material*) { const G4ParticleDefinition* p = dp->GetDefinition(); G4double e = dp->GetKineticEnergy()*CLHEP::proton_mass_c2/p->GetPDGMass(); - G4int Z = p->GetAtomicNumber(); - G4int A = p->GetAtomicMass(); - return theForward->IsoCrossSection(e, G4Log(e), Z, A); + G4double res = 0.0; + if(1 == Z && 1 == A) { + res = xsProton->IsoCrossSection(e, G4Log(e), Z, A); + } else if(1 == Z && 2 == A) { + res = xsDeuteron->IsoCrossSection(e, G4Log(e), Z, A); + } else if(1 == Z && 3 == A) { + res = xsTriton->IsoCrossSection(e, G4Log(e), Z, A); + } else if(2 == Z && 3 == A) { + res = xsHe3->IsoCrossSection(e, G4Log(e), Z, A); + } else if(2 == Z && 4 == A) { + res = xsAlpha->IsoCrossSection(e, G4Log(e), Z, A); + } + return res; } -void G4IonProtonCrossSection::BuildPhysicsTable(const G4ParticleDefinition& part) +void G4IonProtonCrossSection::BuildPhysicsTable(const G4ParticleDefinition&) { - theForward->BuildPhysicsTable(part); + xsProton->BuildPhysicsTable(*G4Proton::Proton()); + xsDeuteron->BuildPhysicsTable(*G4Deuteron::Deuteron()); + xsTriton->BuildPhysicsTable(*G4Triton::Triton()); + xsHe3->BuildPhysicsTable(*G4He3::He3()); + xsAlpha->BuildPhysicsTable(*G4Alpha::Alpha()); } void @@ -85,4 +152,3 @@ G4IonProtonCrossSection::CrossSectionDescription(std::ostream& outFile) const << "It uses the inverse kinematics and the G4ParticleInelasticXS\n" << "cross section.\n"; } - diff --git a/source/processes/hadronic/cross_sections/src/G4MuNeutrinoNucleusTotXsc.cc b/source/processes/hadronic/cross_sections/src/G4MuNeutrinoNucleusTotXsc.cc index b95305749e..8b944d4a88 100644 --- a/source/processes/hadronic/cross_sections/src/G4MuNeutrinoNucleusTotXsc.cc +++ b/source/processes/hadronic/cross_sections/src/G4MuNeutrinoNucleusTotXsc.cc @@ -276,7 +276,7 @@ G4double G4MuNeutrinoNucleusTotXsc::GetNuMuTotCsArray( G4int index) if( index >= 0 && index < fIndex) return fNuMuTotXsc[index]; else { - G4cout<<"Inproper index of fNuMuTotXsc array"<= 0 && index < fIndex) return fANuMuTotXsc[index]; else { - G4cout<<"Inproper index of fANuMuTotXsc array"<Energy(0); - if(ekin < e1) { - xs = (*pv)[0]*std::sqrt(e1/ekin); - } else if(ekin <= pv->GetMaxEnergy()) { - xs = pv->LogVectorValue(ekin, logEkin); - } + const G4double e1 = pv->Energy(1); + xs = (ekin >= e1) ? pv->LogVectorValue(ekin, logEkin) + : (*pv)[1]*std::sqrt(e1/ekin); +#ifdef G4VERBOSE if(verboseLevel > 1){ G4cout << "Ekin= " << ekin/CLHEP::MeV << " ElmXScap(b)= " << xs/CLHEP::barn << G4endl; } +#endif return xs; } @@ -186,37 +158,35 @@ G4double G4NeutronCaptureXS::IsoCrossSection(G4double eKin, G4double logE, } auto pv = GetPhysicsVector(Z); - if(!pv) { return xs; } + if(pv == nullptr) { return xs; } if(amin[Z] > 0 && A >= amin[Z] && A <= amax[Z]) { G4PhysicsVector* pviso = data->GetComponentDataByID(Z, A - amin[Z]); - if(pviso) { - G4double e1 = pviso->Energy(1); - if(ekin < e1) { - xs = (*pviso)[1]*std::sqrt(e1/ekin); - } else if(ekin <= pviso->GetMaxEnergy()) { - xs = pviso->LogVectorValue(ekin, logEkin); - } + if(pviso != nullptr) { + const G4double e1 = pviso->Energy(1); + xs = (ekin >= e1) ? pviso->LogVectorValue(ekin, logEkin) + : (*pviso)[1]*std::sqrt(e1/ekin); +#ifdef G4VERBOSE if(verboseLevel > 0) { G4cout << "G4NeutronCaptureXS::IsoXS: Ekin(MeV)= " << ekin/MeV << " xs(b)= " << xs/barn << " Z= " << Z << " A= " << A << G4endl; } +#endif return xs; } } // isotope data are not available or applicable - G4double e1 = pv->Energy(1); - if(ekin < e1) { - xs = (*pv)[1]*std::sqrt(e1/ekin); - } else if(ekin <= pv->GetMaxEnergy()) { - xs = pv->LogVectorValue(ekin, logEkin); - } + const G4double e1 = pv->Energy(1); + xs = (ekin >= e1) ? pv->LogVectorValue(ekin, logEkin) + : (*pv)[1]*std::sqrt(e1/ekin); +#ifdef G4VERBOSE if(verboseLevel > 0) { G4cout << "G4NeutronCaptureXS::IsoXS: Ekin(MeV)= " << ekin/MeV << " xs(b)= " << xs/barn << " Z= " << Z << " A= " << A << " no iso XS" << G4endl; } +#endif return xs; } @@ -283,10 +253,10 @@ G4NeutronCaptureXS::BuildPhysicsTable(const G4ParticleDefinition& p) return; } - if(!data) { + if(nullptr == data) { #ifdef G4MULTITHREADED G4MUTEXLOCK(&neutronCaptureXSMutex); - if(!data) { + if(nullptr == data) { #endif isMaster = true; data = new G4ElementData(); @@ -310,22 +280,12 @@ G4NeutronCaptureXS::BuildPhysicsTable(const G4ParticleDefinition& p) size_t numOfElem = mat->GetNumberOfElements(); for (size_t ie = 0; ie < numOfElem; ++ie) { G4int Z = std::max(1,std::min(((*elmVec)[ie])->GetZasInt(), MAXZCAPTURE-1)); - if(!data->GetElementData(Z)) { Initialise(Z); } + if(nullptr == data->GetElementData(Z)) { Initialise(Z); } } } } } -const G4PhysicsVector* G4NeutronCaptureXS::GetPhysicsVector(G4int Z) -{ - const G4PhysicsVector* pv = data->GetElementData(Z); - if(!pv) { - InitialiseOnFly(Z); - pv = data->GetElementData(Z); - } - return pv; -} - const G4String& G4NeutronCaptureXS::FindDirectoryPath() { // check environment variable @@ -349,7 +309,7 @@ void G4NeutronCaptureXS::InitialiseOnFly(G4int Z) { #ifdef G4MULTITHREADED G4MUTEXLOCK(&neutronCaptureXSMutex); - if(!data->GetElementData(Z)) { + if(nullptr == data->GetElementData(Z)) { #endif Initialise(Z); #ifdef G4MULTITHREADED @@ -360,7 +320,7 @@ void G4NeutronCaptureXS::InitialiseOnFly(G4int Z) void G4NeutronCaptureXS::Initialise(G4int Z) { - if(data->GetElementData(Z)) { return; } + if(nullptr != data->GetElementData(Z)) { return; } // upload element data std::ostringstream ost; diff --git a/source/processes/hadronic/cross_sections/src/G4NeutronElasticXS.cc b/source/processes/hadronic/cross_sections/src/G4NeutronElasticXS.cc index d681eb35bf..7d7bd0e909 100644 --- a/source/processes/hadronic/cross_sections/src/G4NeutronElasticXS.cc +++ b/source/processes/hadronic/cross_sections/src/G4NeutronElasticXS.cc @@ -42,10 +42,11 @@ #include "G4Material.hh" #include "G4Element.hh" #include "G4PhysicsLogVector.hh" -#include "G4PhysicsVector.hh" +#include "G4CrossSectionDataSetRegistry.hh" #include "G4ComponentGGHadronNucleusXsc.hh" -#include "G4NistManager.hh" +#include "Randomize.hh" #include "G4SystemOfUnits.hh" +#include "G4IsotopeList.hh" #include #include @@ -55,11 +56,8 @@ // G4_DECLARE_XS_FACTORY(G4NeutronElasticXS); -using namespace std; - G4PhysicsVector* G4NeutronElasticXS::data[] = {nullptr}; G4double G4NeutronElasticXS::coeff[] = {0.0}; -G4double G4NeutronElasticXS::aeff[] = {1.0}; G4String G4NeutronElasticXS::gDataDirectory = ""; #ifdef G4MULTITHREADED @@ -77,10 +75,9 @@ G4NeutronElasticXS::G4NeutronElasticXS() G4cout << "G4NeutronElasticXS::G4NeutronElasticXS Initialise for Z < " << MAXZEL << G4endl; } - nist = G4NistManager::Instance(); - ggXsection = new G4ComponentGGHadronNucleusXsc(); + ggXsection = G4CrossSectionDataSetRegistry::Instance()->GetComponentCrossSection("Glauber-Gribov"); + if(ggXsection == nullptr) ggXsection = new G4ComponentGGHadronNucleusXsc(); SetForAllAtomsAndEnergies(true); - temp.resize(13,0.0); } G4NeutronElasticXS::~G4NeutronElasticXS() @@ -126,12 +123,12 @@ G4NeutronElasticXS::GetElementCrossSection(const G4DynamicParticle* aParticle, G4int Z = (ZZ >= MAXZEL) ? MAXZEL - 1 : ZZ; auto pv = GetPhysicsVector(Z); - if(!pv) { return xs; } + if(pv == nullptr) { return xs; } // G4cout << "G4NeutronElasticXS::GetCrossSection e= " << ekin // << " Z= " << Z << G4endl; - if(ekin <= pv->Energy(0)) { - xs = (*pv)[0]; + if(ekin <= pv->Energy(1)) { + xs = (*pv)[1]; } else if(ekin <= pv->GetMaxEnergy()) { xs = pv->LogVectorValue(ekin, aParticle->GetLogKineticEnergy()); } else { @@ -139,11 +136,13 @@ G4NeutronElasticXS::GetElementCrossSection(const G4DynamicParticle* aParticle, ekin, Z, aeff[Z]); } +#ifdef G4VERBOSE if(verboseLevel > 1) { G4cout << "Z= " << Z << " Ekin(MeV)= " << ekin/CLHEP::MeV << ", nElmXSel(b)= " << xs/CLHEP::barn << G4endl; } +#endif return xs; } @@ -151,50 +150,13 @@ G4double G4NeutronElasticXS::GetIsoCrossSection( const G4DynamicParticle* aParticle, G4int Z, G4int A, const G4Isotope*, const G4Element*, - const G4Material*) + const G4Material* mat) { - return IsoCrossSection(aParticle->GetKineticEnergy(), - aParticle->GetLogKineticEnergy(), Z, A); -} - -G4double -G4NeutronElasticXS::IsoCrossSection(G4double ekin, G4double logekin, - G4int ZZ, G4int A) -{ - G4double xs = 0.0; - G4int Z = (ZZ >= MAXZEL) ? MAXZEL - 1 : ZZ; - - // tritium and He3 - if(3 == A) { - return ggXsection->GetElasticElementCrossSection(neutron, ekin, Z, A); - } - /* - G4cout << "IsoCrossSection Z= " << Z << " A= " << A - << " Amin= " << amin[Z] << " Amax= " << amax[Z] - << " E(MeV)= " << ekin << G4endl; - */ - auto pv = GetPhysicsVector(Z); - if(!pv) { return xs; } - - if(ekin <= pv->Energy(0)) { - xs = (*pv)[0]; - } else if(ekin <= pv->GetMaxEnergy()) { - xs = pv->LogVectorValue(ekin, logekin); - } else { - xs = coeff[Z]*ggXsection->GetElasticElementCrossSection(neutron, - ekin, Z, aeff[Z]); - } - xs *= A/aeff[Z]; - if(verboseLevel > 1) { - G4cout << "G4NeutronElasticXS::IsoXS: Z= " << Z << " A= " << A - << " Ekin(MeV)= " << ekin/CLHEP::MeV - << ", ElmXS(b)= " << xs/CLHEP::barn << G4endl; - } - return xs; -} + return GetElementCrossSection(aParticle, Z, mat) * A/aeff[Z]; +} const G4Isotope* G4NeutronElasticXS::SelectIsotope( - const G4Element* anElement, G4double kinEnergy, G4double logE) + const G4Element* anElement, G4double, G4double) { size_t nIso = anElement->GetNumberOfIsotopes(); const G4Isotope* iso = anElement->GetIsotope(0); @@ -202,41 +164,15 @@ const G4Isotope* G4NeutronElasticXS::SelectIsotope( //G4cout << "SelectIsotope NIso= " << nIso << G4endl; if(1 == nIso) { return iso; } - // more than 1 isotope - G4int Z = anElement->GetZasInt(); - //G4cout << "SelectIsotope Z= " << Z << G4endl; - const G4double* abundVector = anElement->GetRelativeAbundanceVector(); G4double q = G4UniformRand(); G4double sum = 0.0; size_t j; // isotope wise cross section not used - if(anElement->GetNaturalAbundanceFlag()) { - for (j=0; jGetIsotope(j); - break; - } - } - return iso; - } - - // use isotope cross sections - size_t nn = temp.size(); - if(nn < nIso) { temp.resize(nIso, 0.); } - for (j=0; jGetN() - // << " abund= " << abundVector[j] << G4endl; - sum += abundVector[j]*IsoCrossSection(kinEnergy, logE, Z, - anElement->GetIsotope(j)->GetN()); - temp[j] = sum; - } - sum *= q; - for (j = 0; j= sum) { + sum += abundVector[j]; + if(q <= sum) { iso = anElement->GetIsotope(j); break; } @@ -266,6 +202,7 @@ G4NeutronElasticXS::BuildPhysicsTable(const G4ParticleDefinition& p) #endif coeff[0] = 1.0; isMaster = true; + FindDirectoryPath(); #ifdef G4MULTITHREADED } G4MUTEXUNLOCK(&neutronElasticXSMutex); @@ -284,18 +221,12 @@ G4NeutronElasticXS::BuildPhysicsTable(const G4ParticleDefinition& p) size_t numOfElem = mat->GetNumberOfElements(); for (size_t ie = 0; ie < numOfElem; ++ie) { G4int Z = std::max(1,std::min(((*elmVec)[ie])->GetZasInt(), MAXZEL-1)); - if(!data[Z]) { Initialise(Z); } + if(data[Z] == nullptr) { Initialise(Z); } } } } } -G4PhysicsVector* G4NeutronElasticXS::GetPhysicsVector(G4int Z) -{ - if(!data[Z]) { InitialiseOnFly(Z); } - return data[Z]; -} - const G4String& G4NeutronElasticXS::FindDirectoryPath() { // check environment variable @@ -319,7 +250,7 @@ void G4NeutronElasticXS::InitialiseOnFly(G4int Z) { #ifdef G4MULTITHREADED G4MUTEXLOCK(&neutronElasticXSMutex); - if(!data[Z]) { + if(data[Z] == nullptr) { #endif Initialise(Z); #ifdef G4MULTITHREADED @@ -330,7 +261,7 @@ void G4NeutronElasticXS::InitialiseOnFly(G4int Z) void G4NeutronElasticXS::Initialise(G4int Z) { - if(data[Z]) { return; } + if(data[Z] != nullptr) { return; } // upload data from file data[Z] = new G4PhysicsLogVector(); @@ -363,8 +294,7 @@ void G4NeutronElasticXS::Initialise(G4int Z) // smooth transition G4double sig1 = (*(data[Z]))[data[Z]->GetVectorLength()-1]; G4double ehigh = data[Z]->GetMaxEnergy(); - aeff[Z] = nist->GetAtomicMassAmu(Z); G4double sig2 = ggXsection->GetElasticElementCrossSection(neutron, ehigh, Z, aeff[Z]); - if(sig2 > 0.) { coeff[Z] = sig1/sig2; } + coeff[Z] = (sig2 > 0.) ? sig1/sig2 : 1.0; } diff --git a/source/processes/hadronic/cross_sections/src/G4NeutronInelasticXS.cc b/source/processes/hadronic/cross_sections/src/G4NeutronInelasticXS.cc index b139806af8..ca21051a4c 100644 --- a/source/processes/hadronic/cross_sections/src/G4NeutronInelasticXS.cc +++ b/source/processes/hadronic/cross_sections/src/G4NeutronInelasticXS.cc @@ -33,7 +33,6 @@ // Author Ivantchenko, Geant4, 3-Aug-09 // - #include "G4NeutronInelasticXS.hh" #include "G4Neutron.hh" #include "G4DynamicParticle.hh" @@ -41,11 +40,11 @@ #include "G4Material.hh" #include "G4Element.hh" #include "G4PhysicsLogVector.hh" -#include "G4PhysicsVector.hh" +#include "G4CrossSectionDataSetRegistry.hh" #include "G4ComponentGGHadronNucleusXsc.hh" -#include "G4NistManager.hh" #include "Randomize.hh" #include "G4SystemOfUnits.hh" +#include "G4IsotopeList.hh" #include #include @@ -55,35 +54,7 @@ // G4_DECLARE_XS_FACTORY(G4NeutronInelasticXS); -using namespace std; - -const G4int G4NeutronInelasticXS::amin[] = { - 0, - 1, 4, 6, 9, 10, 12, 14, 16, 19, 20, //1-10 - 23, 24, 27, 28, 31, 32, 35, 36, 39, 40, //11-20 - 45, 46, 50, 50, 55, 54, 59, 58, 63, 64, //21-30 - 69, 70, 75, 0, 0, 0, 0, 0, 0, 90, //31-40 - 0, 92, 0, 0, 0, 102, 107, 106, 113, 112, //41-50 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, //51-60 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, //61-70 - 0, 0, 181, 180, 0, 0, 0, 192, 197, 0, //71-80 - 0, 204, 209, 0, 0, 0, 0, 0, 0, 0, //81-90 - 0, 235}; -const G4int G4NeutronInelasticXS::amax[] = { - 0, - 2, 4, 7, 9, 11, 13, 15, 18, 19, 22, //1-10 - 23, 26, 27, 30, 31, 34, 37, 40, 41, 48, //11-20 - 45, 50, 51, 54, 55, 58, 59, 64, 65, 70, //21-30 - 71, 76, 75, 0, 0, 0, 0, 0, 0, 96, //31-40 - 0, 100, 0, 0, 0, 110, 109, 116, 115, 124, //41-50 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, //51-60 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, //61-70 - 0, 0, 181, 186, 0, 0, 0, 198, 197, 0, //71-80 - 0, 208, 209, 0, 0, 0, 0, 0, 0, 0, //81-90 - 0, 238}; - G4double G4NeutronInelasticXS::coeff[] = {1.0}; -G4double G4NeutronInelasticXS::aeff[] = {1.0}; G4ElementData* G4NeutronInelasticXS::data = nullptr; G4String G4NeutronInelasticXS::gDataDirectory = ""; @@ -95,13 +66,13 @@ G4NeutronInelasticXS::G4NeutronInelasticXS() : G4VCrossSectionDataSet(Default_Name()), neutron(G4Neutron::Neutron()) { - // verboseLevel = 0; + verboseLevel = 0; if(verboseLevel > 0){ G4cout << "G4NeutronInelasticXS::G4NeutronInelasticXS Initialise for Z < " << MAXZINEL << G4endl; } - ggXsection = new G4ComponentGGHadronNucleusXsc(); - nist = G4NistManager::Instance(); + ggXsection = G4CrossSectionDataSetRegistry::Instance()->GetComponentCrossSection("Glauber-Gribov"); + if(ggXsection == nullptr) ggXsection = new G4ComponentGGHadronNucleusXsc(); SetForAllAtomsAndEnergies(true); isMaster = false; temp.resize(13,0.0); @@ -146,13 +117,10 @@ G4double G4NeutronInelasticXS::GetElementCrossSection( G4int Z = (ZZ >= MAXZINEL) ? MAXZINEL - 1 : ZZ; auto pv = GetPhysicsVector(Z); - if(!pv) { return xs; } + if(pv == nullptr) { return xs; } // G4cout << "G4NeutronInelasticXS::GetCrossSection e= " << ekin // << " Z= " << Z << G4endl; - // below threshold - if(ekin <= pv->Energy(0)) { return xs; } - if(ekin <= pv->GetMaxEnergy()) { xs = pv->LogVectorValue(ekin, aParticle->GetLogKineticEnergy()); } else { @@ -160,11 +128,13 @@ G4double G4NeutronInelasticXS::GetElementCrossSection( ekin, Z, aeff[Z]); } +#ifdef G4VERBOSE if(verboseLevel > 1) { G4cout << "Z= " << Z << " Ekin(MeV)= " << ekin/CLHEP::MeV << ", ElmXSinel(b)= " << xs/CLHEP::barn << G4endl; } +#endif return xs; } @@ -185,34 +155,28 @@ G4NeutronInelasticXS::IsoCrossSection(G4double ekin, G4double logekin, G4double xs = 0.0; G4int Z = (ZZ >= MAXZINEL) ? MAXZINEL - 1 : ZZ; - // tritium and He3 - if(3 == A) { - return ggXsection->GetInelasticElementCrossSection(neutron, ekin, Z, A); - } - /* G4cout << "IsoCrossSection Z= " << Z << " A= " << A << " Amin= " << amin[Z] << " Amax= " << amax[Z] << " E(MeV)= " << ekin << G4endl; */ auto pv = GetPhysicsVector(Z); - if(!pv) { return xs; } - - // below threshold - if(ekin <= pv->Energy(0)) { return xs; } + if(pv == nullptr) { return xs; } // compute isotope cross section if applicable - G4double emax = pv->GetMaxEnergy(); + const G4double emax = pv->GetMaxEnergy(); if(ekin <= emax && amin[Z] > 0 && A >= amin[Z] && A <= amax[Z]) { auto pviso = data->GetComponentDataByIndex(Z, A - amin[Z]); if(pviso) { xs = pviso->LogVectorValue(ekin, logekin); +#ifdef G4VERBOSE if(verboseLevel > 1) { G4cout << "G4NeutronInelasticXS::IsoXS: Ekin(MeV)= " << ekin/CLHEP::MeV << " xs(b)= " << xs/CLHEP::barn << " Z= " << Z << " A= " << A << G4endl; } +#endif return xs; } } @@ -225,11 +189,13 @@ G4NeutronInelasticXS::IsoCrossSection(G4double ekin, G4double logekin, ekin, Z, aeff[Z]); } xs *= A/aeff[Z]; +#ifdef G4VERBOSE if(verboseLevel > 1) { G4cout << "G4NeutronInelasticXS::IsoXS: Z= " << Z << " A= " << A << " Ekin(MeV)= " << ekin/CLHEP::MeV << ", ElmXS(b)= " << xs/CLHEP::barn << G4endl; } +#endif return xs; } @@ -300,10 +266,10 @@ G4NeutronInelasticXS::BuildPhysicsTable(const G4ParticleDefinition& p) return; } - if(!data) { + if(nullptr == data) { #ifdef G4MULTITHREADED G4MUTEXLOCK(&neutronInelasticXSMutex); - if(!data) { + if(nullptr == data) { #endif isMaster = true; data = new G4ElementData(); @@ -327,22 +293,12 @@ G4NeutronInelasticXS::BuildPhysicsTable(const G4ParticleDefinition& p) size_t numOfElem = mat->GetNumberOfElements(); for (size_t ie = 0; ie < numOfElem; ++ie) { G4int Z = std::max(1,std::min(((*elmVec)[ie])->GetZasInt(), MAXZINEL-1)); - if(!data->GetElementData(Z)) { Initialise(Z); } + if(nullptr == data->GetElementData(Z)) { Initialise(Z); } } } } } -const G4PhysicsVector* G4NeutronInelasticXS::GetPhysicsVector(G4int Z) -{ - const G4PhysicsVector* pv = data->GetElementData(Z); - if(!pv) { - InitialiseOnFly(Z); - pv = data->GetElementData(Z); - } - return pv; -} - const G4String& G4NeutronInelasticXS::FindDirectoryPath() { // check environment variable @@ -366,7 +322,7 @@ void G4NeutronInelasticXS::InitialiseOnFly(G4int Z) { #ifdef G4MULTITHREADED G4MUTEXLOCK(&neutronInelasticXSMutex); - if(!data->GetElementData(Z)) { + if(nullptr == data->GetElementData(Z)) { #endif Initialise(Z); #ifdef G4MULTITHREADED @@ -377,7 +333,7 @@ void G4NeutronInelasticXS::InitialiseOnFly(G4int Z) void G4NeutronInelasticXS::Initialise(G4int Z) { - if(data->GetElementData(Z)) { return; } + if(nullptr != data->GetElementData(Z)) { return; } // upload element data std::ostringstream ost; @@ -405,10 +361,9 @@ void G4NeutronInelasticXS::Initialise(G4int Z) // smooth transition G4double sig1 = (*v)[v->GetVectorLength()-1]; G4double ehigh= v->GetMaxEnergy(); - aeff[Z] = nist->GetAtomicMassAmu(Z); G4double sig2 = ggXsection->GetInelasticElementCrossSection(neutron, ehigh, Z, aeff[Z]); - if(sig2 > 0.) { coeff[Z] = sig1/sig2; } + coeff[Z] = (sig2 > 0.) ? sig1/sig2 : 1.0; } G4PhysicsVector* diff --git a/source/processes/hadronic/cross_sections/src/G4ParticleInelasticXS.cc b/source/processes/hadronic/cross_sections/src/G4ParticleInelasticXS.cc index 7da8cfb3c6..fd6402b2ad 100644 --- a/source/processes/hadronic/cross_sections/src/G4ParticleInelasticXS.cc +++ b/source/processes/hadronic/cross_sections/src/G4ParticleInelasticXS.cc @@ -42,48 +42,20 @@ #include "G4Material.hh" #include "G4Element.hh" #include "G4PhysicsLogVector.hh" -#include "G4PhysicsVector.hh" +#include "G4CrossSectionDataSetRegistry.hh" #include "G4ComponentGGHadronNucleusXsc.hh" #include "G4ComponentGGNuclNuclXsc.hh" -#include "G4NistManager.hh" #include "G4Proton.hh" #include "Randomize.hh" #include "G4SystemOfUnits.hh" +#include "G4IsotopeList.hh" #include #include -using namespace std; - -const G4int G4ParticleInelasticXS::amin[] = { - 0, - 1, 4, 6, 9, 10, 12, 14, 16, 19, 20, //1-10 - 23, 24, 27, 28, 31, 32, 35, 36, 39, 40, //11-20 - 45, 46, 50, 50, 55, 54, 59, 58, 63, 64, //21-30 - 69, 70, 75, 0, 0, 0, 0, 0, 0, 90, //31-40 - 0, 92, 0, 0, 0, 102, 107, 106, 113, 112, //41-50 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, //51-60 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, //61-70 - 0, 0, 181, 180, 0, 0, 0, 192, 197, 0, //71-80 - 0, 204, 209, 0, 0, 0, 0, 0, 0, 0, //81-90 - 0, 235}; -const G4int G4ParticleInelasticXS::amax[] = { - 0, - 2, 4, 7, 9, 11, 13, 15, 18, 19, 22, //1-10 - 23, 26, 27, 30, 31, 34, 37, 40, 41, 48, //11-20 - 45, 50, 51, 54, 55, 58, 59, 64, 65, 70, //21-30 - 71, 76, 75, 0, 0, 0, 0, 0, 0, 96, //31-40 - 0, 100, 0, 0, 0, 110, 109, 116, 115, 124, //41-50 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, //51-60 - 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, //61-70 - 0, 0, 181, 186, 0, 0, 0, 198, 197, 0, //71-80 - 0, 208, 209, 0, 0, 0, 0, 0, 0, 0, //81-90 - 0, 238}; - -G4double G4ParticleInelasticXS::coeff[] = {1.0}; -G4double G4ParticleInelasticXS::aeff[] = {1.0}; -G4ElementData* G4ParticleInelasticXS::data = nullptr; -G4String G4ParticleInelasticXS::gDataDirectory = ""; +G4ElementData* G4ParticleInelasticXS::data[] = {nullptr}; +G4double G4ParticleInelasticXS::coeff[MAXZINELP][5] = {{1.0}, {1.0}, {1.0}, {1.0}, {1.0}}; +G4String G4ParticleInelasticXS::gDataDirectory[] = {""}; #ifdef G4MULTITHREADED G4Mutex G4ParticleInelasticXS::particleInelasticXSMutex = G4MUTEX_INITIALIZER; @@ -91,10 +63,9 @@ G4String G4ParticleInelasticXS::gDataDirectory = ""; G4ParticleInelasticXS::G4ParticleInelasticXS(const G4ParticleDefinition* part) : G4VCrossSectionDataSet("G4ParticleInelasticXS"), - ggXsection(nullptr), - nnXsection(nullptr), + highEnergyXsection(nullptr), particle(part), - proton(G4Proton::Proton()), + index(0), isMaster(false) { if(!part) { @@ -102,30 +73,48 @@ G4ParticleInelasticXS::G4ParticleInelasticXS(const G4ParticleDefinition* part) FatalException, "NO particle definition in constructor"); } else { verboseLevel = 0; - G4String particleName = particle->GetParticleName(); - if(verboseLevel > 0){ + const G4String& particleName = particle->GetParticleName(); + if(verboseLevel > 1) { G4cout << "G4ParticleInelasticXS::G4ParticleInelasticXS for " << particleName << " on atoms with Z < " << MAXZINELP << G4endl; } - if(particleName == "neutron" || particleName == "proton") { - ggXsection = new G4ComponentGGHadronNucleusXsc(); + if(particleName == "proton") { + highEnergyXsection = G4CrossSectionDataSetRegistry::Instance()->GetComponentCrossSection("Glauber-Gribov"); + if(highEnergyXsection == nullptr) { + highEnergyXsection = new G4ComponentGGHadronNucleusXsc(); + } } else { - nnXsection = new G4ComponentGGNuclNuclXsc(); + highEnergyXsection = G4CrossSectionDataSetRegistry::Instance()->GetComponentCrossSection("Glauber-Gribov Nucl-nucl"); + if(highEnergyXsection == nullptr) { + highEnergyXsection = new G4ComponentGGNuclNuclXsc(); + } + if(particleName == "deuteron") index = 1; + else if(particleName == "triton") index = 2; + else if(particleName == "He3") index = 3; + else if(particleName == "alpha") index = 4; + else { + G4ExceptionDescription ed; + ed << particleName << " is a wrong particle type"; + G4Exception("G4ParticleInelasticXS::BuildPhysicsTable(..)","had012", + FatalException, ed, ""); + } } } SetForAllAtomsAndEnergies(true); - fNist = G4NistManager::Instance(); temp.resize(13,0.0); } G4ParticleInelasticXS::~G4ParticleInelasticXS() { - if(isMaster) { delete data; data = nullptr; } + if(isMaster) { + delete data[index]; + data[index] = nullptr; + } } void G4ParticleInelasticXS::CrossSectionDescription(std::ostream& outFile) const { - outFile << "G4ParticleInelasticXS calculates n, p, d, t, he3, he4 inelastic \n" + outFile << "G4ParticleInelasticXS calculates n, p, d, t, he3, he4 inelastic\n" << "cross section on nuclei using data from the high precision\n" << "neutron database. These data are simplified and smoothed over\n" << "the resonance region in order to reduce CPU time.\n" @@ -157,38 +146,32 @@ G4double G4ParticleInelasticXS::GetElementCrossSection( G4int Z = (ZZ >= MAXZINELP) ? MAXZINELP - 1 : ZZ; auto pv = GetPhysicsVector(Z); - if(!pv) { return xs; } + if(nullptr == pv) { return xs; } // G4cout << "G4ParticleInelasticXS::GetCrossSection e= " << ekin // << " Z= " << Z << G4endl; - // below threshold - if(ekin <= pv->Energy(0)) { return xs; } - if(ekin <= pv->GetMaxEnergy()) { xs = pv->LogVectorValue(ekin, aParticle->GetLogKineticEnergy()); } else { - if(ggXsection) { - xs = coeff[Z]*ggXsection->GetInelasticElementCrossSection(particle, + xs = coeff[Z][index]*highEnergyXsection->GetInelasticElementCrossSection(particle, ekin, Z, aeff[Z]); - } else { - xs = coeff[Z]*nnXsection->GetInelasticElementCrossSection(particle, - ekin, Z, aeff[Z]); - } } +#ifdef G4VERBOSE if(verboseLevel > 1) { G4cout << "ElmXS: Z= " << Z << " Ekin(MeV)= " << ekin/CLHEP::MeV << " xs(bn)= " << xs/CLHEP::barn << " element data for " - << particle->GetParticleName() << G4endl; + << particle->GetParticleName() + << " idx= " << index << G4endl; } +#endif return xs; } G4double G4ParticleInelasticXS::GetIsoCrossSection( const G4DynamicParticle* aParticle, G4int Z, G4int A, - const G4Isotope*, const G4Element*, - const G4Material*) + const G4Isotope*, const G4Element*, const G4Material*) { return IsoCrossSection(aParticle->GetKineticEnergy(), aParticle->GetLogKineticEnergy(),Z, A); @@ -200,39 +183,30 @@ G4ParticleInelasticXS::IsoCrossSection(G4double ekin, G4double logE, { G4double xs = 0.0; G4int Z = (ZZ >= MAXZINELP) ? MAXZINELP - 1 : ZZ; - - // tritium and He3 - if(3 == A) { - if(ggXsection) { - xs = ggXsection->GetInelasticElementCrossSection(particle, ekin, Z, A); - } else { - xs = nnXsection->GetInelasticElementCrossSection(particle, ekin, Z, A); - } - return xs; - } - /* - G4cout << "IsoCrossSection Z= " << Z << " A= " << A + /* + G4cout << "G4ParticleInelasticXS: IsoCrossSection Z= " + << Z << " A= " << A << " Amin= " << amin[Z] << " Amax= " << amax[Z] << " E(MeV)= " << ekin << G4endl; */ auto pv = GetPhysicsVector(Z); - if(!pv) { return xs; } - - // below threshold - if(ekin <= pv->Energy(0)) { return xs; } + if(pv == nullptr) { return xs; } // compute isotope cross section if applicable - G4double emax = pv->GetMaxEnergy(); + const G4double emax = pv->GetMaxEnergy(); if(ekin <= emax && amin[Z]>0 && A >= amin[Z] && A <= amax[Z]) { - auto pviso = data->GetComponentDataByIndex(Z, A - amin[Z]); - if(pviso) { + auto pviso = data[index]->GetComponentDataByIndex(Z, A - amin[Z]); + if(pviso != nullptr) { xs = pviso->LogVectorValue(ekin, logE); +#ifdef G4VERBOSE if(verboseLevel > 1) { G4cout << "G4ParticleInelasticXS::IsoXS: for " << particle->GetParticleName() << " Ekin(MeV)= " << ekin/CLHEP::MeV << " xs(b)= " << xs/CLHEP::barn - << " Z= " << Z << " A= " << A << G4endl; + << " Z= " << Z << " A= " << A + << " idx= " << index << G4endl; } +#endif return xs; } } @@ -240,21 +214,20 @@ G4ParticleInelasticXS::IsoCrossSection(G4double ekin, G4double logE, if(ekin <= emax) { xs = pv->LogVectorValue(ekin, logE); } else { - if(ggXsection) { - xs = coeff[Z]*ggXsection->GetInelasticElementCrossSection(particle, - ekin, Z, aeff[Z]); - } else { - xs = coeff[Z]*nnXsection->GetInelasticElementCrossSection(particle, - ekin, Z, aeff[Z]); - } + xs = coeff[Z][index] * + highEnergyXsection->GetInelasticElementCrossSection(particle, + ekin, Z, aeff[Z]); } xs *= A/aeff[Z]; +#ifdef G4VERBOSE if(verboseLevel > 1) { G4cout << "IsoXS for " << particle->GetParticleName() << " Target Z= " << Z << " A= " << A << " Ekin(MeV)= " << ekin/CLHEP::MeV - << " xs(bn)= " << xs/CLHEP::barn << G4endl; + << " xs(bn)= " << xs/CLHEP::barn + << " idx= " << index << G4endl; } +#endif return xs; } @@ -324,14 +297,15 @@ G4ParticleInelasticXS::BuildPhysicsTable(const G4ParticleDefinition& p) return; } - if(!data) { + if(data[index] == nullptr) { #ifdef G4MULTITHREADED G4MUTEXLOCK(&particleInelasticXSMutex); - if(!data) { + if(data[index] == nullptr) { #endif isMaster = true; - data = new G4ElementData(); - data->SetName(particle->GetParticleName() + "Inelastic"); + data[index] = new G4ElementData(); + data[index]->SetName(particle->GetParticleName() + "Inelastic"); + FindDirectoryPath(); #ifdef G4MULTITHREADED } G4MUTEXUNLOCK(&particleInelasticXSMutex); @@ -350,46 +324,36 @@ G4ParticleInelasticXS::BuildPhysicsTable(const G4ParticleDefinition& p) size_t numOfElem = mat->GetNumberOfElements(); for (size_t ie = 0; ie < numOfElem; ++ie) { G4int Z = std::max(1,std::min(((*elmVec)[ie])->GetZasInt(), MAXZINELP-1)); - if(!data->GetElementData(Z)) { Initialise(Z); } + if(nullptr == data[index]->GetElementData(Z)) { Initialise(Z); } } } } } -const G4PhysicsVector* G4ParticleInelasticXS::GetPhysicsVector(G4int Z) -{ - const G4PhysicsVector* pv = data->GetElementData(Z); - if(!pv) { - InitialiseOnFly(Z); - pv = data->GetElementData(Z); - } - return pv; -} - const G4String& G4ParticleInelasticXS::FindDirectoryPath() { // check environment variable // build the complete string identifying the file with the data set - if(gDataDirectory.empty()) { + if(gDataDirectory[index].empty()) { char* path = std::getenv("G4PARTICLEXSDATA"); if (path) { std::ostringstream ost; ost << path << "/" << particle->GetParticleName() << "/inel"; - gDataDirectory = ost.str(); + gDataDirectory[index] = ost.str(); } else { G4Exception("G4NeutronInelasticXS::Initialise(..)","had013", FatalException, "Environment variable G4PARTICLEXSDATA is not defined"); } } - return gDataDirectory; + return gDataDirectory[index]; } void G4ParticleInelasticXS::InitialiseOnFly(G4int Z) { #ifdef G4MULTITHREADED G4MUTEXLOCK(&particleInelasticXSMutex); - if(!data->GetElementData(Z)) { + if(nullptr == data[index]->GetElementData(Z)) { #endif Initialise(Z); #ifdef G4MULTITHREADED @@ -400,43 +364,46 @@ void G4ParticleInelasticXS::InitialiseOnFly(G4int Z) void G4ParticleInelasticXS::Initialise(G4int Z) { - if(data->GetElementData(Z)) { return; } + if(nullptr != data[index]->GetElementData(Z)) { return; } // upload element data std::ostringstream ost; ost << FindDirectoryPath() << Z ; G4PhysicsVector* v = RetrieveVector(ost, true); - data->InitialiseForElement(Z, v); + data[index]->InitialiseForElement(Z, v); /* G4cout << "G4ParticleInelasticXS::Initialise for Z= " << Z - << " A= " << Amean << " Amin= " << amin[Z] - << " Amax= " << amax[Z] << G4endl; + << " idx= " << index + << " Amin= " << amin[Z] + << " Amax= " << amax[Z] + << " " << FindDirectoryPath() << G4endl; */ // upload isotope data if(amin[Z] > 0) { size_t nmax = (size_t)(amax[Z]-amin[Z]+1); - data->InitialiseForComponent(Z, nmax); + data[index]->InitialiseForComponent(Z, nmax); for(G4int A=amin[Z]; A<=amax[Z]; ++A) { std::ostringstream ost1; - ost1 << gDataDirectory << Z << "_" << A; + ost1 << FindDirectoryPath() << Z << "_" << A; G4PhysicsVector* v1 = RetrieveVector(ost1, false); - data->AddComponent(Z, A, v1); + data[index]->AddComponent(Z, A, v1); + /* + G4cout << " Isotope x-section Z= " << Z << " A= " << A + << " v1= " << v1 << G4endl; + */ } } // smooth transition G4double sig1 = (*v)[v->GetVectorLength()-1]; - G4double sig2 = 0.0; G4double ehigh = v->GetMaxEnergy(); - aeff[Z] = fNist->GetAtomicMassAmu(Z); - if(ggXsection) { - sig2 = ggXsection->GetInelasticElementCrossSection(particle, - ehigh, Z, aeff[Z]); - } else { - sig2 = nnXsection->GetInelasticElementCrossSection(particle, - ehigh, Z, aeff[Z]); - } - if(sig2 > 0.) { coeff[Z] = sig1/sig2; } + G4double sig2 = highEnergyXsection->GetInelasticElementCrossSection( + particle, ehigh, Z, aeff[Z]); + coeff[Z][index] = (sig2 > 0.) ? sig1/sig2 : 1.0; + /* + G4cout << "G4ParticleInelasticXS: index= " << index + << " Z= " << Z << " coeff= " << coeff[Z][index] << G4endl; + */ } G4PhysicsVector* diff --git a/source/processes/hadronic/cross_sections/src/G4ZeroXS.cc b/source/processes/hadronic/cross_sections/src/G4ZeroXS.cc index 4e9b9bf8ec..d431d0335c 100644 --- a/source/processes/hadronic/cross_sections/src/G4ZeroXS.cc +++ b/source/processes/hadronic/cross_sections/src/G4ZeroXS.cc @@ -77,7 +77,7 @@ G4ZeroXS::GetElementCrossSection(const G4DynamicParticle* , void G4ZeroXS::CrossSectionDescription(std::ostream& outFile) const { - outFile << "An artificial cross section data set which always replys zero."; + outFile << "An artificial cross section data set which always replies zero."; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... diff --git a/source/processes/hadronic/management/History b/source/processes/hadronic/management/History index 7a2528a455..93b4ecbe3d 100644 --- a/source/processes/hadronic/management/History +++ b/source/processes/hadronic/management/History @@ -14,6 +14,36 @@ code and to keep track of all tags. * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- +01 November 2020 V. Ivanchenko (hadr-man-V10-06-10) +--------------------------------------------------- +- G4HadronicProcessStore : fixed Coverity report on the Print(..) method + +14 October 2020 A. Ribon (hadr-man-V10-06-09) +--------------------------------------------------- +- G4HadronicProcess : removed the warnings when the environmental variables + G4Hadronic_*Level are used. + This is needed for system testing, in order to activate in some platforms + these conservation checks for all examples and tests. + Note that for advanced users, the use of UI commands are preferable. + +05 August 2020 A. Ribon (hadr-man-V10-06-08) +--------------------------------------------------- +- G4HadronicEPTestMessenger, G4HadronicProcess : deprecated the three + environmental variables G4Hadronic_*Level and the corresponding old + UI commands "/heptst/*Level", recommending instead the new UI commands + "/process/had/heptst/*Level". + +04 August 2020 V. Ivanchenko (hadr-man-V10-06-07) +--------------------------------------------------- +- G4HadronicProcessStore : use verbosity level from the G4HadronicParameters + class, add printout of cross section factor +- G4HadronicProcess - removed unused flag + +20 July 2020 V. Ivanchenko (hadr-man-V10-06-06) +--------------------------------------------------- +- G4HadronicProcessStore : extended default initialisation printout to + anti_lambda + 18 May 2020 G. Cosmo (hadr-man-V10-06-05) --------------------------------------------------- - G4HadronicProcessStore: removed unnecessary use of deprecated @@ -175,7 +205,7 @@ code and to keep track of all tags. 10 May 2017 V. Ivanchenko (hadr-man-V10-03-00) --------------------------------------------------- - G4HadronicProcess - correctly check charge and energy balance - in the case of e- internal convertion; improved initialisation + in the case of e- internal conversion; improved initialisation for constructors 01 July 2016 V. Ivanchenko (hadr-man-V10-02-03) diff --git a/source/processes/hadronic/management/include/G4HadronicEPTestMessenger.hh b/source/processes/hadronic/management/include/G4HadronicEPTestMessenger.hh index 52bde66302..f90e6a7d00 100644 --- a/source/processes/hadronic/management/include/G4HadronicEPTestMessenger.hh +++ b/source/processes/hadronic/management/include/G4HadronicEPTestMessenger.hh @@ -59,10 +59,14 @@ class G4HadronicEPTestMessenger: public G4UImessenger private: G4HadronicProcessStore* theProcessStore; - G4UIdirectory* heptstDirectory; - G4UIcmdWithAnInteger* reportLvlCmd; - G4UIcmdWithADouble* procRelLvlCmd; - G4UIcmdWithADoubleAndUnit* procAbsLvlCmd; + G4UIdirectory* old_heptstDirectory; // To be removed in G4 11.0 + G4UIdirectory* heptstDirectory; + G4UIcmdWithAnInteger* old_reportLvlCmd; // To be removed in G4 11.0 + G4UIcmdWithAnInteger* reportLvlCmd; + G4UIcmdWithADouble* old_procRelLvlCmd; // To be removed in G4 11.0 + G4UIcmdWithADouble* procRelLvlCmd; + G4UIcmdWithADoubleAndUnit* old_procAbsLvlCmd; // To be removed in G4 11.0 + G4UIcmdWithADoubleAndUnit* procAbsLvlCmd; }; #endif diff --git a/source/processes/hadronic/management/include/G4HadronicProcess.hh b/source/processes/hadronic/management/include/G4HadronicProcess.hh index 626137bc3e..c1106c0286 100644 --- a/source/processes/hadronic/management/include/G4HadronicProcess.hh +++ b/source/processes/hadronic/management/include/G4HadronicProcess.hh @@ -252,7 +252,6 @@ private: G4double theInitialNumberOfInteractionLength; G4double aScaleFactor; - G4bool xBiasOn; G4double theLastCrossSection; }; diff --git a/source/processes/hadronic/management/include/G4HadronicProcessStore.hh b/source/processes/hadronic/management/include/G4HadronicProcessStore.hh index 78256ef551..41b1de2774 100644 --- a/source/processes/hadronic/management/include/G4HadronicProcessStore.hh +++ b/source/processes/hadronic/management/include/G4HadronicProcessStore.hh @@ -63,6 +63,7 @@ class G4Element; class G4HadronicEPTestMessenger; +class G4HadronicParameters; class G4HadronicProcessStore { @@ -199,8 +200,8 @@ public: void PrintModelHtml(const G4HadronicInteraction * model) const; void SetVerbose(G4int val); - G4int GetVerbose(); + // these methods are obsolete and will be removed G4HadronicProcess* FindProcess(const G4ParticleDefinition*, G4HadronicProcessType subType); @@ -242,13 +243,14 @@ private: std::vector extraProcess; std::multimap ep_map; + G4HadronicParameters* param; + // counters and options G4int n_proc; G4int n_model; G4int n_part; G4int n_extra; - G4int verbose; G4bool buildTableStart; G4bool buildXSTable; @@ -262,6 +264,5 @@ private: G4HadronicEPTestMessenger* theEPTestMessenger; }; - #endif diff --git a/source/processes/hadronic/management/sources.cmake b/source/processes/hadronic/management/sources.cmake index 439bb77ef6..01ae4083bd 100644 --- a/source/processes/hadronic/management/sources.cmake +++ b/source/processes/hadronic/management/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_mgt # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,34 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_mgt HEADERS G4EnergyRangeManager.hh diff --git a/source/processes/hadronic/management/src/G4HadronicEPTestMessenger.cc b/source/processes/hadronic/management/src/G4HadronicEPTestMessenger.cc index a0e8d943b0..967221e490 100644 --- a/source/processes/hadronic/management/src/G4HadronicEPTestMessenger.cc +++ b/source/processes/hadronic/management/src/G4HadronicEPTestMessenger.cc @@ -29,17 +29,32 @@ #include "G4UIcmdWithAnInteger.hh" #include "G4UIcmdWithADouble.hh" #include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4HadronicException.hh" G4HadronicEPTestMessenger::G4HadronicEPTestMessenger(G4HadronicProcessStore* theStore) :theProcessStore(theStore) { // Main directory for control of the e/p test - heptstDirectory = new G4UIdirectory("/heptst/"); - heptstDirectory->SetGuidance("Controls for the hadronic energy/momentum test"); + old_heptstDirectory = new G4UIdirectory("/heptst/"); // To be removed in G4 11.0 + old_heptstDirectory->SetGuidance("Controls for the hadronic energy/momentum test"); + heptstDirectory = new G4UIdirectory("/process/had/heptst/"); + heptstDirectory->SetGuidance("Controls for the hadronic energy/momentum test"); + // Command to set level of detail reported upon e/p non-conservation - reportLvlCmd = new G4UIcmdWithAnInteger("/heptst/reportLevel",this); + old_reportLvlCmd = new G4UIcmdWithAnInteger("/heptst/reportLevel",this); // To be removed in G4 11.0 + old_reportLvlCmd->SetGuidance("Set level of detail reported upon E/p non-conservation"); + old_reportLvlCmd->SetGuidance(" 0 - (default) no reporting "); + old_reportLvlCmd->SetGuidance(" 1 - report only when E/p not conserved "); + old_reportLvlCmd->SetGuidance(" 2 - report regardless of E/p conservation "); + old_reportLvlCmd->SetGuidance(" 3 - report only when E/p not conserved, with names, limits "); + old_reportLvlCmd->SetGuidance(" 4 - report regardless of E/p conservation, with names, limits "); + old_reportLvlCmd->SetParameterName("OldReportLevel",true); + old_reportLvlCmd->SetDefaultValue(0); + old_reportLvlCmd->SetRange("OldReportLevel >= 0 && OldReportLevel < 5"); + + reportLvlCmd = new G4UIcmdWithAnInteger("/process/had/heptst/reportLevel",this); reportLvlCmd->SetGuidance("Set level of detail reported upon E/p non-conservation"); reportLvlCmd->SetGuidance(" 0 - (default) no reporting "); reportLvlCmd->SetGuidance(" 1 - report only when E/p not conserved "); @@ -49,41 +64,75 @@ G4HadronicEPTestMessenger::G4HadronicEPTestMessenger(G4HadronicProcessStore* the reportLvlCmd->SetParameterName("ReportLevel",true); reportLvlCmd->SetDefaultValue(0); reportLvlCmd->SetRange("ReportLevel >= 0 && ReportLevel < 5"); + + // Set the relative energy non-conservation level for the process + old_procRelLvlCmd = new G4UIcmdWithADouble("/heptst/processRelLevel",this); // To be removed in G4 11.0 + old_procRelLvlCmd->SetGuidance("Set relative level of allowed energy non-conservation"); + old_procRelLvlCmd->SetParameterName("OlProcessRelLevel",true); + old_procRelLvlCmd->SetDefaultValue(-1.0); + + procRelLvlCmd = new G4UIcmdWithADouble("/process/had/heptst/processRelLevel",this); + procRelLvlCmd->SetGuidance("Set relative level of allowed energy non-conservation"); + procRelLvlCmd->SetParameterName("ProcessRelLevel",true); + procRelLvlCmd->SetDefaultValue(-1.0); // Set the absolute energy non-conservation level for the process - procAbsLvlCmd = new G4UIcmdWithADoubleAndUnit("/heptst/processAbsLevel",this); + old_procAbsLvlCmd = new G4UIcmdWithADoubleAndUnit("/heptst/processAbsLevel",this); // To be removed in G4 11.0 + old_procAbsLvlCmd->SetGuidance("Set absolute energy level (with unit) of allowed energy non-conservation"); + old_procAbsLvlCmd->SetParameterName("OldProcessAbsLevel",true); + old_procAbsLvlCmd->SetDefaultValue(-1.0); + old_procAbsLvlCmd->SetUnitCategory("Energy"); + + procAbsLvlCmd = new G4UIcmdWithADoubleAndUnit("/process/had/heptst/processAbsLevel",this); procAbsLvlCmd->SetGuidance("Set absolute energy level (with unit) of allowed energy non-conservation"); procAbsLvlCmd->SetParameterName("ProcessAbsLevel",true); procAbsLvlCmd->SetDefaultValue(-1.0); procAbsLvlCmd->SetUnitCategory("Energy"); - - // Set the relative energy non-conservation level for the process - procRelLvlCmd = new G4UIcmdWithADouble("/heptst/processRelLevel",this); - procRelLvlCmd->SetGuidance("Set relative level of allowed energy non-conservation"); - procRelLvlCmd->SetParameterName("ProcessRelLevel",true); - procRelLvlCmd->SetDefaultValue(-1.0); } G4HadronicEPTestMessenger::~G4HadronicEPTestMessenger() { - delete heptstDirectory; - delete reportLvlCmd; - delete procAbsLvlCmd; - delete procRelLvlCmd; + delete old_heptstDirectory; // To be removed in G4 11.0 + delete heptstDirectory; + delete old_reportLvlCmd; // To be removed in G4 11.0 + delete reportLvlCmd; + delete old_procRelLvlCmd; // To be removed in G4 11.0 + delete procRelLvlCmd; + delete old_procAbsLvlCmd; // To be removed in G4 11.0 + delete procAbsLvlCmd; } void G4HadronicEPTestMessenger::SetNewValue(G4UIcommand* command, G4String newValue) { - if (command==reportLvlCmd) { - theProcessStore->SetEpReportLevel(reportLvlCmd->GetNewIntValue(newValue) ); - - } else if(command==procRelLvlCmd) { - // G4double absval = theHadronicProcess->GetEnergyMomentumCheckLevels().second; - theProcessStore->SetProcessRelLevel(procRelLvlCmd->GetNewDoubleValue(newValue) ); - } else if(command==procAbsLvlCmd) { - // G4double relval = theHadronicProcess->GetEnergyMomentumCheckLevels().first; - theProcessStore->SetProcessAbsLevel(procAbsLvlCmd->GetNewDoubleValue(newValue) ); + // Old commands to be removed in G4 11.0 + if ( command == old_reportLvlCmd ) { + theProcessStore->SetEpReportLevel( old_reportLvlCmd->GetNewIntValue( newValue ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/heptst/reportLevel in the next major release, Geant4 version 11.0"; + G4Exception( "G4HadronicEPTestMessenger", "hadEPTestMessenger001", JustWarning, ed ); + } else if ( command == old_procRelLvlCmd ) { + theProcessStore->SetProcessRelLevel( old_procRelLvlCmd->GetNewDoubleValue( newValue ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/heptst/processRelLevel in the next major release, Geant4 version 11.0"; + G4Exception( "G4HadronicEPTestMessenger", "hadEPTestMessenger002", JustWarning, ed ); + } else if ( command == old_procAbsLvlCmd ) { + theProcessStore->SetProcessAbsLevel( old_procAbsLvlCmd->GetNewDoubleValue( newValue ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/heptst/processAbsLevel in the next major release, Geant4 version 11.0"; + G4Exception( "G4HadronicEPTestMessenger", "hadEPTestMessenger003", JustWarning, ed ); + } + + // New commands + if ( command == reportLvlCmd ) { + theProcessStore->SetEpReportLevel( reportLvlCmd->GetNewIntValue( newValue ) ); + } else if ( command == procRelLvlCmd ) { + theProcessStore->SetProcessRelLevel( procRelLvlCmd->GetNewDoubleValue( newValue ) ); + } else if ( command == procAbsLvlCmd ) { + theProcessStore->SetProcessAbsLevel( procAbsLvlCmd->GetNewDoubleValue( newValue ) ); } } diff --git a/source/processes/hadronic/management/src/G4HadronicProcess.cc b/source/processes/hadronic/management/src/G4HadronicProcess.cc index 0ae89e2a48..2713aefc9e 100644 --- a/source/processes/hadronic/management/src/G4HadronicProcess.cc +++ b/source/processes/hadronic/management/src/G4HadronicProcess.cc @@ -115,27 +115,29 @@ void G4HadronicProcess::InitialiseLocal() { theInitialNumberOfInteractionLength = 0.0; aScaleFactor = 1.0; fWeight = 1.0; - xBiasOn = false; nMatWarn = nKaonWarn = 0; useIntegralXS = true; theLastCrossSection = 0.0; nICelectrons = 0; idxIC = -1; G4HadronicProcess_debug_flag = false; + levelsSetByProcess = false; + epReportLevel = 0; + epCheckLevels.first = DBL_MAX; + epCheckLevels.second = DBL_MAX; GetEnergyMomentumCheckEnvvars(); } void G4HadronicProcess::GetEnergyMomentumCheckEnvvars() { - levelsSetByProcess = false; - - epReportLevel = std::getenv("G4Hadronic_epReportLevel") ? - std::strtol(std::getenv("G4Hadronic_epReportLevel"),0,10) : 0; - - epCheckLevels.first = std::getenv("G4Hadronic_epCheckRelativeLevel") ? - std::strtod(std::getenv("G4Hadronic_epCheckRelativeLevel"),0) : DBL_MAX; - - epCheckLevels.second = std::getenv("G4Hadronic_epCheckAbsoluteLevel") ? - std::strtod(std::getenv("G4Hadronic_epCheckAbsoluteLevel"),0) : DBL_MAX; + if ( std::getenv("G4Hadronic_epReportLevel") ) { + epReportLevel = std::strtol(std::getenv("G4Hadronic_epReportLevel"),0,10); + } + if ( std::getenv("G4Hadronic_epCheckRelativeLevel") ) { + epCheckLevels.first = std::strtod(std::getenv("G4Hadronic_epCheckRelativeLevel"),0); + } + if ( std::getenv("G4Hadronic_epCheckAbsoluteLevel") ) { + epCheckLevels.second = std::strtod(std::getenv("G4Hadronic_epCheckAbsoluteLevel"),0); + } } void G4HadronicProcess::RegisterMe( G4HadronicInteraction *a ) @@ -493,7 +495,6 @@ void G4HadronicProcess::BiasCrossSectionByFactor(G4double aScale) G4Exception("G4HadronicProcess::BiasCrossSectionByFactor", "had010", JustWarning, ed, "Cross-section bias is ignored"); } else { - xBiasOn = true; aScaleFactor = aScale; } } diff --git a/source/processes/hadronic/management/src/G4HadronicProcessStore.cc b/source/processes/hadronic/management/src/G4HadronicProcessStore.cc index d45283ef2f..b687bb2079 100644 --- a/source/processes/hadronic/management/src/G4HadronicProcessStore.cc +++ b/source/processes/hadronic/management/src/G4HadronicProcessStore.cc @@ -60,6 +60,7 @@ #include "G4CrossSectionDataSetRegistry.hh" #include "G4HadronicEPTestMessenger.hh" #include "G4HadronicParameters.hh" +#include "G4HadronicProcessType.hh" #include //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo..... @@ -88,25 +89,18 @@ G4HadronicProcessStore::~G4HadronicProcessStore() void G4HadronicProcessStore::Clean() { G4int i; - //std::cout << "G4HadronicProcessStore::Clean() Nproc= " << n_proc - // << " Nextra= " << n_extra << std::endl; for (i=0; iGetProcessName() << G4endl; delete process[i]; process[i] = nullptr; } } for(i=0; iGetProcessName() << G4endl; delete extraProcess[i]; extraProcess[i] = nullptr; } } - //std::cout << "G4HadronicProcessStore::Clean() done" << std::endl; n_extra = 0; n_proc = 0; } @@ -123,7 +117,7 @@ G4HadronicProcessStore::G4HadronicProcessStore() currentParticle = nullptr; theGenericIon = G4ParticleTable::GetParticleTable()->FindParticle("GenericIon"); - verbose = 1; + param = G4HadronicParameters::Instance(); buildTableStart = true; buildXSTable = false; theEPTestMessenger = new G4HadronicEPTestMessenger(this); @@ -413,7 +407,7 @@ void G4HadronicProcessStore::Register(G4HadronicProcess* proc) for(G4int i=0; iGetVerboseLevel()) { G4cout << "G4HadronicProcessStore::Register hadronic " << n_proc << " " << proc->GetProcessName() << G4endl; } @@ -431,7 +425,7 @@ void G4HadronicProcessStore::RegisterParticle(G4HadronicProcess* proc, G4int j=0; for(; jGetVerboseLevel()) { G4cout << "G4HadronicProcessStore::RegisterParticle " << part->GetParticleName() << " for " << proc->GetProcessName() << G4endl; @@ -501,7 +495,7 @@ void G4HadronicProcessStore::RegisterExtraProcess(G4VProcess* proc) if(process[i] == hproc) { return; } } } - if(1 < verbose) { + if(1 < param->GetVerboseLevel()) { G4cout << "Extra Process: " << n_extra << " " << proc->GetProcessName() << G4endl; } @@ -547,7 +541,7 @@ void G4HadronicProcessStore::DeRegisterExtraProcess(G4VProcess* proc) for(G4int i=0; iGetVerboseLevel()) { G4cout << "Extra Process: " << i << " " <GetProcessName()<< " is deregisted " << G4endl; } @@ -578,7 +572,7 @@ void G4HadronicProcessStore::PrintInfo(const G4ParticleDefinition* part) // registered if(buildTableStart && part == particle[n_part - 1]) { buildTableStart = false; - Dump(verbose); + Dump(param->GetVerboseLevel()); if (std::getenv("G4PhysListDocDir") ) DumpHtml(); G4HadronicInteractionRegistry::Instance()->InitialiseModels(); } @@ -758,14 +752,15 @@ G4String G4HadronicProcessStore::HtmlFileName(const G4String & in) const //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo..... -void G4HadronicProcessStore::Dump(G4int level) +void G4HadronicProcessStore::Dump(G4int verb) { - if (G4HadronicParameters::Instance()->GetVerboseLevel() == 0 || level == 0) return; + G4int level = std::max(param->GetVerboseLevel(), verb); + if (0 == level) return; G4cout << "\n====================================================================\n" - << std::setw(60) << "HADRONIC PROCESSES SUMMARY (verbose level " << level - << ")" << G4endl; + << std::setw(60) << "HADRONIC PROCESSES SUMMARY (verbose level " + << level << ")" << G4endl; for (G4int i=0; i 1) yes = true; + if (level > 1) yes = true; if (yes) { // main processes std::multimap >::iterator it; @@ -840,6 +836,7 @@ void G4HadronicProcessStore::Print(G4int idxProc, G4int idxPart) { G4HadronicProcess* proc = process[idxProc]; const G4ParticleDefinition* part = particle[idxPart]; + if(part == nullptr || proc == nullptr) { return; } if (wasPrinted[idxPart] == 0) { G4cout << "\n---------------------------------------------------\n" << std::setw(50) << "Hadronic Processes for " @@ -851,11 +848,36 @@ void G4HadronicProcessStore::Print(G4int idxProc, G4int idxPart) // Append the string "/n" (i.e. "per nucleon") on the kinetic energy of ions. G4String stringEnergyPerNucleon = ""; - if ( part && - ( part == G4GenericIon::Definition() || - std::abs( part->GetBaryonNumber() ) > 1 ) ) { + if (part == G4GenericIon::Definition() || + std::abs( part->GetBaryonNumber() ) > 1) { stringEnergyPerNucleon = "/n"; } + // print cross section factor + if(param->ApplyFactorXS()) { + G4int pdg = part->GetPDGEncoding(); + G4int subType = proc->GetProcessSubType(); + G4double fact = 1.0; + if(subType == fHadronInelastic) { + if(pdg == 2212 || pdg == 2112) { + fact = param->XSFactorNucleonInelastic(); + } else if(std::abs(pdg) == 211) { + fact = param->XSFactorPionInelastic(); + } else { + fact = param->XSFactorHadronInelastic(); + } + } else if(subType == fHadronElastic) { + if(pdg == 2212 || pdg == 2112) { + fact = param->XSFactorNucleonElastic(); + } else if(std::abs(pdg) == 211) { + fact = param->XSFactorPionElastic(); + } else { + fact = param->XSFactorHadronElastic(); + } + } + if(std::abs(fact - 1.0) > 1.e-6) { + G4cout << " XSfactor= " << fact; + } + } HI hi = 0; std::multimap >::iterator ih; @@ -881,8 +903,8 @@ void G4HadronicProcessStore::Print(G4int idxProc, G4int idxPart) //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo..... void G4HadronicProcessStore::SetVerbose(G4int val) +// this code is obsolete - not optimal change verbose in each thread { - verbose = val; G4int i; for(i=0; iSetVerboseLevel(val); } @@ -896,7 +918,7 @@ void G4HadronicProcessStore::SetVerbose(G4int val) G4int G4HadronicProcessStore::GetVerbose() { - return verbose; + return param->GetVerboseLevel(); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo..... @@ -905,7 +927,7 @@ G4HadronicProcess* G4HadronicProcessStore::FindProcess( const G4ParticleDefinition* part, G4HadronicProcessType subType) { bool isNew = false; - G4HadronicProcess* hp = 0; + G4HadronicProcess* hp = nullptr; localDP.SetDefinition(part); if(part != currentParticle) { diff --git a/source/processes/hadronic/models/abla/History b/source/processes/hadronic/models/abla/History index cb6114bfc4..4452bf64d5 100644 --- a/source/processes/hadronic/models/abla/History +++ b/source/processes/hadronic/models/abla/History @@ -15,6 +15,9 @@ code and to keep track of all tags. * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- +15 Nov 2020 - Jose Luis Rodriguez Sanchez (hadr-abla-V10-06-00) +-------------------------------------------------- +- Fix some coverity warnings. 08 Oct 2018 - Jose Luis Rodriguez Sanchez (hadr-abla-V10-04-06) -------------------------------------------------- diff --git a/source/processes/hadronic/models/abla/sources.cmake b/source/processes/hadronic/models/abla/sources.cmake index 6f9aa75ea8..c2d24b8231 100644 --- a/source/processes/hadronic/models/abla/sources.cmake +++ b/source/processes/hadronic/models/abla/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_hetcpp.G4hadronic_hetcpp_utils # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,35 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_abla_abla HEADERS G4AblaDataDefs.hh diff --git a/source/processes/hadronic/models/abla/src/G4Abla.cc b/source/processes/hadronic/models/abla/src/G4Abla.cc index af8c92b643..ac9d123b68 100644 --- a/source/processes/hadronic/models/abla/src/G4Abla.cc +++ b/source/processes/hadronic/models/abla/src/G4Abla.cc @@ -1317,15 +1317,13 @@ c Clear BU_TAB (array of multifragmentation products) EV_TAB[i][3] = VYOUT; EV_TAB[i][4] = VZOUT; } - - if(IMULTBU>200)std::cout << "IMULTBU>200 " << IMULTBU << std::endl; + delete problamb; + delete Nblamb; }// if(T_diff>0.1) -// End of multi-fragmentation + // End of multi-fragmentation mult7777: - // std::cout << "hola 100" << std::endl; - // Start basic de-excitation of fragments aprfp = idnint(aprf); zprfp = idnint(zprf); @@ -5093,7 +5091,7 @@ G4double G4Abla::eflmac(G4int ia, G4int iz, G4int flag, G4int optshp) - 3.0/4.0 * (1.0 + 9.0/(2.0*y0) + 7.0/std::pow(y0,2) + 7.0/(2.0 * std::pow(y0,3))) * std::exp(-2.0*y0)); - // now calulation of total binding energy a.j. 16.7.96 + // now calculation of total binding energy a.j. 16.7.96 efl = -1.0 * av*(1.0 - kv*i*i)*a + as*(1.0 - ks*i*i)*b1 * std::pow(a,(2.0/3.0)) + a0 + c1*z*z*b3/std::pow(a,(1.0/3.0)) - c4*std::pow(z,(4.0/3.0))/std::pow(a,(1.e0/3.e0)) @@ -5360,7 +5358,7 @@ C BARR - Barrier C OMEGA - Curvature of the potential C C BASS MODEL NPA 1974 - used only if expansion is considered (OPTEXP=1) -C or one wants this model explicitely (OPTBAR=1) +C or one wants this model explicitly (OPTBAR=1) C October 2011 - AK - new parametrization of the barrier and its position, C see W.W. Qu et al., NPA 868 (2011) 1; this is now C default option (OPTBAR=0) @@ -7056,8 +7054,15 @@ void G4Abla::imf(G4double ACN,G4double ZCN,G4double TEMP,G4double EE,G4double *Z G4double BBIMF[98][251]; G4double SSBIMF[98][251]; G4int OPTSHPIMF=opt->optshpimf; + + // Initialization + for (G4int ia = 0; ia < 98; ia++) + for (G4int ib = 0; ib < 251; ib++) { + BBIMF[ia][ib] = 0.0; + SSBIMF[ia][ib] = 0.0; + } -// take the half of the CN and transform it in integer (floor it) + // take the half of the CN and transform it in integer (floor it) IZIMFMAX = idnint(ZCN / 2.0); if(IZIMFMAX<3){ @@ -7469,7 +7474,7 @@ G4int VISOSTAB[191][2]={ void G4Abla::evap_postsaddle(G4double A, G4double Z, G4double EXC, G4double *E_scission_post, G4double *A_scission, G4double *Z_scission,G4double &vx_eva,G4double &vy_eva,G4double &vz_eva,G4int *NbLam0_par){ // AK 2006 - Now in case of fission deexcitation between saddle and scission -// is explicitely calculated. Langevin calculations made by P. Nadtochy +// is explicitly calculated. Langevin calculations made by P. Nadtochy // used to parametrise saddle-to-scission time G4double af,zf,ee; @@ -9138,7 +9143,7 @@ G4double G4Abla::eflmac_profi(G4double ia, G4double iz) - 3.0/4.0 * (1.0 + 9.0/(2.0*y0) + 7.0/std::pow(y0,2) + 7.0/(2.0 * std::pow(y0,3))) * std::exp(-2.0*y0)); - // now calulation of total binding energy + // now calculation of total binding energy efl = -1.0 * av*(1.0 - kv*i*i)*a + as*(1.0 - ks*i*i)*b1 * std::pow(a,(2.0/3.0)) + a0 + c1*z*z*b3/std::pow(a,(1.0/3.0)) - c4*std::pow(z,(4.0/3.0))/std::pow(a,(1.e0/3.e0)) @@ -9857,7 +9862,9 @@ void G4Abla::unstable_tke(G4double ain,G4double zin,G4double anew,G4double znew, ianew = idnint(anew); iznew = idnint(znew); innew = ianew - iznew; -// + // + if(ain==0)return; + // if(izin>12){ mglms(ain,zin,3,&MASS); mglms(anew,znew,3,&MASS1); diff --git a/source/processes/hadronic/models/abrasion/sources.cmake b/source/processes/hadronic/models/abrasion/sources.cmake index 1b63156266..68d02ba276 100644 --- a/source/processes/hadronic/models/abrasion/sources.cmake +++ b/source/processes/hadronic/models/abrasion/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_abrasion # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,48 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/ablation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_abrasion HEADERS G4NuclearAbrasionGeometry.hh diff --git a/source/processes/hadronic/models/binary_cascade/sources.cmake b/source/processes/hadronic/models/binary_cascade/sources.cmake index fa2f2ed7e9..c1432e9e12 100644 --- a/source/processes/hadronic/models/binary_cascade/sources.cmake +++ b/source/processes/hadronic/models/binary_cascade/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_binary # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,47 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_binary HEADERS G4Absorber.hh diff --git a/source/processes/hadronic/models/binary_cascade/src/G4BinaryCascade.cc b/source/processes/hadronic/models/binary_cascade/src/G4BinaryCascade.cc index 2c7e1037d8..7fc481b757 100644 --- a/source/processes/hadronic/models/binary_cascade/src/G4BinaryCascade.cc +++ b/source/processes/hadronic/models/binary_cascade/src/G4BinaryCascade.cc @@ -373,7 +373,7 @@ G4HadFinalState * G4BinaryCascade::ApplyYourself(const G4HadProjectile & aTrack, } else { // no interaction, return primary - if(std::getenv("BCDEBUG") ) G4cerr << " ######### Binary Cascade Reaction void, return intial state ######### "<< G4endl; + if(std::getenv("BCDEBUG") ) G4cerr << " ######### Binary Cascade Reaction void, return initial state ######### "<< G4endl; theParticleChange.SetStatusChange(isAlive); theParticleChange.SetEnergyChange(aTrack.GetKineticEnergy()); theParticleChange.SetMomentumChange(aTrack.Get4Momentum().vect().unit()); diff --git a/source/processes/hadronic/models/binary_cascade/src/G4BinaryLightIonReaction.cc b/source/processes/hadronic/models/binary_cascade/src/G4BinaryLightIonReaction.cc index 88145a7860..05a8804a2e 100644 --- a/source/processes/hadronic/models/binary_cascade/src/G4BinaryLightIonReaction.cc +++ b/source/processes/hadronic/models/binary_cascade/src/G4BinaryLightIonReaction.cc @@ -94,7 +94,7 @@ void G4BinaryLightIonReaction::ModelDescription(std::ostream& outFile) const << "using G4BinaryCasacde to model the interaction of a light\n" << "nucleus with a nucleus.\n" << "The lighter of the two nuclei is treated like a set of projectiles\n" - << "which are transported simultanously through the heavier nucleus.\n"; + << "which are transported simultaneously through the heavier nucleus.\n"; } //-------------------------------------------------------------------------------- diff --git a/source/processes/hadronic/models/cascade/History b/source/processes/hadronic/models/cascade/History index edd2c998f2..434558863a 100644 --- a/source/processes/hadronic/models/cascade/History +++ b/source/processes/hadronic/models/cascade/History @@ -1195,7 +1195,7 @@ Re-tag with subdirectories "utils" and "evaporation" (excluded by mistake). ------------------------------------------------------ - G4TwoBodyAngularDist: NEW Factory singleton containing all of the angular-distribution generators created below. Code from G4EPCollider to - choose generator based on intial and final states moved here, accessed + choose generator based on initial and final states moved here, accessed through static function. - G4ElementaryParticleCollider: Angular distribution generators moved to @@ -3662,7 +3662,7 @@ interfaces between pion/nucleon and kaon/hyperon samplers. conditional dimensioning (e.g., if N8==0, use [1]). Define second 9-body constructor to accept and initialize the new arrays. - 4) Eliminate static intialization of index[], moving it into + 4) Eliminate static initialization of index[], moving it into initialize(). Template specialization can't be used with data! 5) Add separate "sum" (summed N-body cross-sections) and "tot" arrays diff --git a/source/processes/hadronic/models/cascade/cascade/include/G4MultiBodyMomentumDist.hh b/source/processes/hadronic/models/cascade/cascade/include/G4MultiBodyMomentumDist.hh index 662993e89e..ffacad647b 100644 --- a/source/processes/hadronic/models/cascade/cascade/include/G4MultiBodyMomentumDist.hh +++ b/source/processes/hadronic/models/cascade/cascade/include/G4MultiBodyMomentumDist.hh @@ -27,7 +27,7 @@ // Date: 7 March 2013 // // Description: Singleton class to evaluate multi-body momentum distribution -// functions based on intial state codes and multiplicity. +// functions based on initial state codes and multiplicity. // // NOTE: Separate multiplicity-3 generators are not used, per V.Uzhinsky // diff --git a/source/processes/hadronic/models/cascade/cascade/include/G4TwoBodyAngularDist.hh b/source/processes/hadronic/models/cascade/cascade/include/G4TwoBodyAngularDist.hh index 849ba7b6a3..67c5d990a9 100644 --- a/source/processes/hadronic/models/cascade/cascade/include/G4TwoBodyAngularDist.hh +++ b/source/processes/hadronic/models/cascade/cascade/include/G4TwoBodyAngularDist.hh @@ -27,7 +27,7 @@ // Date: 21 February 2013 // // Description: Singleton class to evaluate two-body angular distribution -// functions based on intial/final state codes. +// functions based on initial/final state codes. // // 20130307 M. Kelsey -- Add verbosity interface for contained objects // 20130422 M. Kelsey -- Add three-body distributions, for temporary use diff --git a/source/processes/hadronic/models/cascade/cascade/sources.cmake b/source/processes/hadronic/models/cascade/cascade/sources.cmake index 8428e1b511..e3ef400d64 100644 --- a/source/processes/hadronic/models/cascade/cascade/sources.cmake +++ b/source/processes/hadronic/models/cascade/cascade/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_hetcpp.G4hadronic_bert_cascade # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -35,47 +35,9 @@ # 20150323 M. Kelsey -- Add newly split G4KaonSampler and G4HyperonSampler #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_bert_cascade HEADERS G4Analyser.hh diff --git a/source/processes/hadronic/models/cascade/cascade/src/G4MultiBodyMomentumDist.cc b/source/processes/hadronic/models/cascade/cascade/src/G4MultiBodyMomentumDist.cc index 73fe3b6447..31e277f7dc 100644 --- a/source/processes/hadronic/models/cascade/cascade/src/G4MultiBodyMomentumDist.cc +++ b/source/processes/hadronic/models/cascade/cascade/src/G4MultiBodyMomentumDist.cc @@ -27,7 +27,7 @@ // Date: 7 March 2013 // // Description: Singleton class to evaluate multi-body momentum distribution -// functions based on intial state codes and multiplicity. +// functions based on initial state codes and multiplicity. // // 20130308 Use envvar to enable/disable use of 3-body generators. // 20130619 Change singleton instance to be thread-local, to avoid collisions. diff --git a/source/processes/hadronic/models/cascade/cascade/src/G4NucleiModel.cc b/source/processes/hadronic/models/cascade/cascade/src/G4NucleiModel.cc index a21961ec81..02204a3880 100644 --- a/source/processes/hadronic/models/cascade/cascade/src/G4NucleiModel.cc +++ b/source/processes/hadronic/models/cascade/cascade/src/G4NucleiModel.cc @@ -318,7 +318,7 @@ void G4NucleiModel::generateModel(G4int a, G4int z) { << G4endl; } - // If model already built, just return; otherwise intialize everything + // If model already built, just return; otherwise initialize everything if (a == A && z == Z) { if (verboseLevel > 1) G4cout << " model already generated" << z << G4endl; reset(); diff --git a/source/processes/hadronic/models/cascade/cascade/src/G4TwoBodyAngularDist.cc b/source/processes/hadronic/models/cascade/cascade/src/G4TwoBodyAngularDist.cc index 29672c6ec8..0aa371eaea 100644 --- a/source/processes/hadronic/models/cascade/cascade/src/G4TwoBodyAngularDist.cc +++ b/source/processes/hadronic/models/cascade/cascade/src/G4TwoBodyAngularDist.cc @@ -27,7 +27,7 @@ // Date: 21 February 2013 // // Description: Singleton class to evaluate two-body angular distribution -// functions based on intial/final state codes. +// functions based on initial/final state codes. // // 20130307 M. Kelsey -- Add verbosity interface // 20130422 M. Kelsey -- Add three-body distributions, for temporary use diff --git a/source/processes/hadronic/models/coherent_elastic/History b/source/processes/hadronic/models/coherent_elastic/History index 0ca425dfdd..6e12d306d0 100644 --- a/source/processes/hadronic/models/coherent_elastic/History +++ b/source/processes/hadronic/models/coherent_elastic/History @@ -13,11 +13,17 @@ code and to keep track of all tags. --------------------------------------------------------------- * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- + +22 July 2020 - V.Ivanchenko (hadr-cohe-V10-06-03) +--------------------------------------------------------------- +- G4HadronElastic - added numerical protection against precision lost + addressing problem #2253 + 30 April 2020 - B. Morgan (hadr-cohe-V10-06-02) --------------------------------------------------------------- - Remove obsolete GRANULAR_DEPENDENCIES entries -18 January 2019 - V.Ivanchenko (hadr-cohe-V10-06-01) +18 January 2020 - V.Ivanchenko (hadr-cohe-V10-06-01) --------------------------------------------------------------- - G4ElasticHadrNucleusHE - for pi- and Z>1 reuse data structure computed for pi+ in order to reduce memory and CPU at diff --git a/source/processes/hadronic/models/coherent_elastic/sources.cmake b/source/processes/hadronic/models/coherent_elastic/sources.cmake index 0b41f4abcc..59f03d4739 100644 --- a/source/processes/hadronic/models/coherent_elastic/sources.cmake +++ b/source/processes/hadronic/models/coherent_elastic/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_coherent_elastic # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,35 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_coherent_elastic HEADERS G4AntiNuclElastic.hh diff --git a/source/processes/hadronic/models/coherent_elastic/src/G4HadronElastic.cc b/source/processes/hadronic/models/coherent_elastic/src/G4HadronElastic.cc index 4b2d2d50c0..0e3f08aa18 100644 --- a/source/processes/hadronic/models/coherent_elastic/src/G4HadronElastic.cc +++ b/source/processes/hadronic/models/coherent_elastic/src/G4HadronElastic.cc @@ -208,6 +208,7 @@ G4HadronElastic::SampleInvariantT(const G4ParticleDefinition* part, const G4double plabLowLimit = 400.0*CLHEP::MeV; const G4double GeV2 = GeV*GeV; const G4double z07in13 = std::pow(0.7, 0.3333333333); + const G4double numLimit = 18.; G4int pdg = std::abs(part->GetPDGEncoding()); G4double tmax = pLocalTmax/GeV2; @@ -255,8 +256,8 @@ G4HadronElastic::SampleInvariantT(const G4ParticleDefinition* part, cc = 0.2*g4pow->powZ(A,0.4)/dd;//1:0.4 --- 2: 0.4 } } - G4double q1 = 1.0 - G4Exp(-bb*tmax); - G4double q2 = 1.0 - G4Exp(-dd*tmax); + G4double q1 = 1.0 - G4Exp(-std::min(bb*tmax, numLimit)); + G4double q2 = 1.0 - G4Exp(-std::min(dd*tmax, numLimit)); G4double s1 = q1*aa; G4double s2 = q2*cc; if((s1 + s2)*G4UniformRand() < s2) { diff --git a/source/processes/hadronic/models/de_excitation/History b/source/processes/hadronic/models/de_excitation/History index f0846caaed..0b7b4da1df 100644 --- a/source/processes/hadronic/models/de_excitation/History +++ b/source/processes/hadronic/models/de_excitation/History @@ -14,6 +14,29 @@ code and to keep track of all tags. * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- +12 August 2020 Vladimir Ivanchenko (hadr-deex-V10-06-07) +- G4NuclearLevelData - use Zmax for initialisation before the run + +28 July 2020 Vladimir Ivanchenko (hadr-deex-V10-06-06) +- G4ExcitationHandler - verbose level is defined by G4HadronicParameters + class or by the hardcoded local verbose level defined only for + debugging +- G4DeexPrecoParameters - verbose level is defined by G4HadronicParameters + class or by the local verbose level +- G4DeexParametersMessenger - removed obsolete UI command + +24 July 2020 Vladimir Ivanchenko (hadr-deex-V10-06-05) +- G4NuclearLevelData - reduced usage of mutex locks; read all level data + begin of run +- G4ExcitationHandler - use Zmax+1 instead of Zmax for nuclear level + initialisation + +13 July 2020 Vladimir Ivanchenko (hadr-deex-V10-06-04) +- G4NuclearLevelData - more safe initialisation of data in MT mode, use mutex + locks only within each method, whithout calls to other methods +- G4ExcitationHandler - call to G4NuclearLevelData to initilise data for + levels for all elements possibly involved in the geometry + 12 May 2020 Alberto Ribon (hadr-deex-V10-06-03) - G4DeexPrecoParameters : in the method Dump(), check the global verbosity level of hadronics (if zero, do not print anything). @@ -225,7 +248,7 @@ code and to keep track of all tags. introduced in previous tag 18 October 2018 Vladimir Ivanchenko (hadr-deex-V10-04-08) -- G4LevelManager, G4NuclearLevelData, G4LevelReader - added intialisation +- G4LevelManager, G4NuclearLevelData, G4LevelReader - added initialisation of level density and pairing correction per isotope, added possibility to choose between two parameterisations of level density @@ -251,7 +274,7 @@ code and to keep track of all tags. 24 August 2018 Vladimir Ivanchenko (hadr-deex-V10-04-05) - G4LevelReader - attempt to fix problems #1986 and #2076 by - change of hadling of internal convertion data + change of hadling of internal conversion data 06 August 2018 Alberto Ribon (hadr-deex-V10-04-04) - G4NeutronRadCapture : replaced the explicit high-energy limit of @@ -1232,7 +1255,7 @@ code and to keep track of all tags. 01 Dec 2014 Vladimir Ivanchenko (hadr-deex-V10-00-29) ---------------------------------------------------------- - G4VGammaDeexcitation, G4PhotonEvaporation - propagate vacant - shell number after internal convertion allowing to enable + shell number after internal conversion allowing to enable atomic de-excitation in radioactive decay 28 Nov 2014 Vladimir Ivanchenko (hadr-deex-V10-00-28) diff --git a/source/processes/hadronic/models/de_excitation/ablation/sources.cmake b/source/processes/hadronic/models/de_excitation/ablation/sources.cmake index 8835b74a3e..8846d4e91a 100644 --- a/source/processes/hadronic/models/de_excitation/ablation/sources.cmake +++ b/source/processes/hadronic/models/de_excitation/ablation/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_ablation # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,44 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_ablation HEADERS G4WilsonAblationModel.hh diff --git a/source/processes/hadronic/models/de_excitation/evaporation/include/G4EvaporationChannel.hh b/source/processes/hadronic/models/de_excitation/evaporation/include/G4EvaporationChannel.hh index e05b1b7ca7..46091e069b 100644 --- a/source/processes/hadronic/models/de_excitation/evaporation/include/G4EvaporationChannel.hh +++ b/source/processes/hadronic/models/de_excitation/evaporation/include/G4EvaporationChannel.hh @@ -65,7 +65,7 @@ private: G4bool operator!=(const G4EvaporationChannel & right) const; // This data member define the channel. - // They are intializated at object creation (constructor) time. + // They are initialised at object creation (constructor) time. G4int theA; G4int theZ; G4int resA; diff --git a/source/processes/hadronic/models/de_excitation/evaporation/sources.cmake b/source/processes/hadronic/models/de_excitation/evaporation/sources.cmake index 1dbea638d7..2a0e0248d6 100644 --- a/source/processes/hadronic/models/de_excitation/evaporation/sources.cmake +++ b/source/processes/hadronic/models/de_excitation/evaporation/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_evaporation # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,36 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/gem_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_evaporation HEADERS G4AlphaEvaporationChannel.hh diff --git a/source/processes/hadronic/models/de_excitation/fermi_breakup/sources.cmake b/source/processes/hadronic/models/de_excitation/fermi_breakup/sources.cmake index ce25883110..31643f6916 100644 --- a/source/processes/hadronic/models/de_excitation/fermi_breakup/sources.cmake +++ b/source/processes/hadronic/models/de_excitation/fermi_breakup/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_fermi_breakup # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,27 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_fermi_breakup HEADERS G4FermiBreakUpVI.hh diff --git a/source/processes/hadronic/models/de_excitation/fermi_breakup/src/G4FermiFragmentsPoolVI.cc b/source/processes/hadronic/models/de_excitation/fermi_breakup/src/G4FermiFragmentsPoolVI.cc index 09f8f2b77e..7329849d88 100644 --- a/source/processes/hadronic/models/de_excitation/fermi_breakup/src/G4FermiFragmentsPoolVI.cc +++ b/source/processes/hadronic/models/de_excitation/fermi_breakup/src/G4FermiFragmentsPoolVI.cc @@ -159,7 +159,7 @@ void G4FermiFragmentsPoolVI::Initialise() G4int Amin = ndata->GetMinA(Z); G4int Amax = std::min(maxA, ndata->GetMaxA(Z)+1); for(G4int A=Amin; AGetLevelManager(Z, A, true); + const G4LevelManager* man = ndata->GetLevelManager(Z, A); if(man) { size_t nn = man->NumberOfTransitions(); // very unstable state diff --git a/source/processes/hadronic/models/de_excitation/fission/sources.cmake b/source/processes/hadronic/models/de_excitation/fission/sources.cmake index c27bbb3cbf..2580ed65cb 100644 --- a/source/processes/hadronic/models/de_excitation/fission/sources.cmake +++ b/source/processes/hadronic/models/de_excitation/fission/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_fission # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,32 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_fission HEADERS G4CompetitiveFission.hh diff --git a/source/processes/hadronic/models/de_excitation/gem_evaporation/include/G4GEMChannel.hh b/source/processes/hadronic/models/de_excitation/gem_evaporation/include/G4GEMChannel.hh index 3a1a66790f..6970d6200d 100644 --- a/source/processes/hadronic/models/de_excitation/gem_evaporation/include/G4GEMChannel.hh +++ b/source/processes/hadronic/models/de_excitation/gem_evaporation/include/G4GEMChannel.hh @@ -79,7 +79,7 @@ private: // Data Members ************ // This data member define the channel. - // They are intializated at object creation (constructor) time. + // They are initialised at object creation (constructor) time. // Atomic Number G4int A; diff --git a/source/processes/hadronic/models/de_excitation/gem_evaporation/sources.cmake b/source/processes/hadronic/models/de_excitation/gem_evaporation/sources.cmake index 538395cbcb..96efb52fa6 100644 --- a/source/processes/hadronic/models/de_excitation/gem_evaporation/sources.cmake +++ b/source/processes/hadronic/models/de_excitation/gem_evaporation/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_gem_evaporation # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,34 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_gem_evaporation HEADERS G4C16GEMChannel.hh diff --git a/source/processes/hadronic/models/de_excitation/handler/sources.cmake b/source/processes/hadronic/models/de_excitation/handler/sources.cmake index acb8d66308..79c44affe8 100644 --- a/source/processes/hadronic/models/de_excitation/handler/sources.cmake +++ b/source/processes/hadronic/models/de_excitation/handler/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_handler # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,38 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_handler HEADERS G4ExcitationHandler.hh diff --git a/source/processes/hadronic/models/de_excitation/handler/src/G4ExcitationHandler.cc b/source/processes/hadronic/models/de_excitation/handler/src/G4ExcitationHandler.cc index 510b2f6ba2..714515ae19 100644 --- a/source/processes/hadronic/models/de_excitation/handler/src/G4ExcitationHandler.cc +++ b/source/processes/hadronic/models/de_excitation/handler/src/G4ExcitationHandler.cc @@ -70,6 +70,8 @@ #include "G4VMultiFragmentation.hh" #include "G4VFermiBreakUp.hh" +#include "G4Element.hh" +#include "G4ElementTable.hh" #include "G4VEvaporation.hh" #include "G4VEvaporationChannel.hh" @@ -111,7 +113,6 @@ G4ExcitationHandler::G4ExcitationHandler() G4ExcitationHandler::~G4ExcitationHandler() { - //G4cout << "### Delete handler " << this << G4endl; delete theMultiFragmentation; delete theFermiModel; if(isEvapLocal) { delete theEvaporation; } @@ -119,17 +120,26 @@ G4ExcitationHandler::~G4ExcitationHandler() void G4ExcitationHandler::SetParameters() { - if(fVerbose > 1) { - G4cout << "G4ExcitationHandler::SetParameters() started " << this << G4endl; - } - auto param = G4NuclearLevelData::GetInstance()->GetParameters(); + G4NuclearLevelData* ndata = G4NuclearLevelData::GetInstance(); + auto param = ndata->GetParameters(); isActive = true; - if(fDummy == param->GetDeexChannelsType()) { isActive = false; } + // check if de-excitation is needed + if(fDummy == param->GetDeexChannelsType()) { + isActive = false; + } else { + // upload data for elements used in geometry + G4int Zmax = 20; + const G4ElementTable* table = G4Element::GetElementTable(); + for(auto & elm : *table) { Zmax = std::max(Zmax, elm->GetZasInt()); } + ndata->UploadNuclearLevelData(Zmax+1); + } minEForMultiFrag = param->GetMinExPerNucleounForMF(); minExcitation = param->GetMinExcitation(); maxExcitation = param->GetPrecoHighEnergy(); icID = param->GetInternalConversionID(); - fVerbose = param->GetVerbose(); + + // allowing local debug printout + fVerbose = std::max(fVerbose, param->GetVerbose()); if(isActive) { if(!thePhotonEvaporation) { SetPhotonEvaporation(new G4PhotonEvaporation()); } if(!theEvaporation) { @@ -139,6 +149,9 @@ void G4ExcitationHandler::SetParameters() if(!theMultiFragmentation) { SetMultiFragmentation(new G4StatMF()); } } theFermiModel->SetVerbose(fVerbose); + if(fVerbose > 1) { + G4cout << "G4ExcitationHandler::SetParameters() done " << this << G4endl; + } } void G4ExcitationHandler::Initialise() @@ -155,7 +168,8 @@ void G4ExcitationHandler::Initialise() theFermiModel->Initialise(); theEvaporation->InitialiseChannels(); } - if(fVerbose > 0) { param->Dump(); } + // dump level is controlled by parameter class + param->Dump(); } void G4ExcitationHandler::SetEvaporation(G4VEvaporation* ptr, G4bool flag) diff --git a/source/processes/hadronic/models/de_excitation/management/include/G4DeexParametersMessenger.hh b/source/processes/hadronic/models/de_excitation/management/include/G4DeexParametersMessenger.hh index 6f916b512e..2c808e003d 100644 --- a/source/processes/hadronic/models/de_excitation/management/include/G4DeexParametersMessenger.hh +++ b/source/processes/hadronic/models/de_excitation/management/include/G4DeexParametersMessenger.hh @@ -69,9 +69,9 @@ class G4DeexParametersMessenger: public G4UImessenger public: // with description explicit G4DeexParametersMessenger(G4DeexPrecoParameters*); - virtual ~G4DeexParametersMessenger(); + ~G4DeexParametersMessenger() override; - virtual void SetNewValue(G4UIcommand*, G4String) override; + void SetNewValue(G4UIcommand*, G4String) override; private: @@ -86,7 +86,6 @@ private: G4UIcmdWithAnInteger* maxjCmd; G4UIcmdWithAnInteger* verbCmd; - G4UIcmdWithAnInteger* upCmd; }; diff --git a/source/processes/hadronic/models/de_excitation/management/include/G4DeexPrecoParameters.hh b/source/processes/hadronic/models/de_excitation/management/include/G4DeexPrecoParameters.hh index 6dec209daa..81cc4569c9 100644 --- a/source/processes/hadronic/models/de_excitation/management/include/G4DeexPrecoParameters.hh +++ b/source/processes/hadronic/models/de_excitation/management/include/G4DeexPrecoParameters.hh @@ -29,6 +29,8 @@ // List of parameters of the pre-compound model // and the deexcitation module // +// Verbosity level depends on the local verbosity level and the verbosity +// level of hadronics defined in G4HadronicParameters #ifndef G4DeexPrecoParameters_h #define G4DeexPrecoParameters_h 1 @@ -64,8 +66,9 @@ public: friend std::ostream& operator<< (std::ostream& os, const G4DeexPrecoParameters&); - // inline access methods + G4int GetVerbose() const; + // inline access methods inline G4double GetLevelDensity() const; inline G4double GetR0() const; @@ -102,8 +105,6 @@ public: inline G4int GetUploadZ() const; - inline G4int GetVerbose() const; - inline G4bool NeverGoBack() const; inline G4bool UseSoftCutoff() const; @@ -168,8 +169,6 @@ public: void SetTwoJMAX(G4int); - void SetUploadZ(G4int); - void SetVerbose(G4int); void SetNeverGoBack(G4bool); @@ -203,19 +202,16 @@ public: void SetDeexChannelsType(G4DeexChannelType); - // obsolete method (has no effect) - inline void SetUseFilesNEW(G4bool) {}; - -private: - - G4bool IsLocked() const; - G4DeexPrecoParameters(const G4DeexPrecoParameters & right) = delete; const G4DeexPrecoParameters& operator= (const G4DeexPrecoParameters &right) = delete; G4bool operator==(const G4DeexPrecoParameters &right) const = delete; G4bool operator!=(const G4DeexPrecoParameters &right) const = delete; +private: + + G4bool IsLocked() const; + G4DeexParametersMessenger* theMessenger; G4StateManager* fStateManager; @@ -260,7 +256,6 @@ private: G4int fMinZForPreco; G4int fMinAForPreco; - G4int fMaxZ; G4int fVerbose; // Preco flags @@ -279,6 +274,7 @@ private: G4bool fLD; // use simple level density model G4bool fFD; // use transition to discrete level G4bool fIsomerFlag; // enable isomere production + G4bool fLocalVerbose; // is user set verbose for this module // type of a set of e-exitation channels G4DeexChannelType fDeexChannelType; @@ -373,16 +369,6 @@ inline G4int G4DeexPrecoParameters::GetTwoJMAX() const return fTwoJMAX; } -inline G4int G4DeexPrecoParameters::GetUploadZ() const -{ - return fMaxZ; -} - -inline G4int G4DeexPrecoParameters::GetVerbose() const -{ - return fVerbose; -} - inline G4bool G4DeexPrecoParameters::NeverGoBack() const { return fNeverGoBack; diff --git a/source/processes/hadronic/models/de_excitation/management/include/G4NuclearLevelData.hh b/source/processes/hadronic/models/de_excitation/management/include/G4NuclearLevelData.hh index 92ed8eaa56..ec5bfdbaaf 100644 --- a/source/processes/hadronic/models/de_excitation/management/include/G4NuclearLevelData.hh +++ b/source/processes/hadronic/models/de_excitation/management/include/G4NuclearLevelData.hh @@ -72,9 +72,8 @@ public: ~G4NuclearLevelData(); // run time call to access or to create level manager - // isLocked flag informs, that the thread is already locked - const G4LevelManager* GetLevelManager(G4int Z, G4int A, - G4bool isLocked = false); + // if data are not yet uploaded then lazy initialisation is used + const G4LevelManager* GetLevelManager(G4int Z, G4int A); // add private data to isotope from master thread G4bool AddPrivateData(G4int Z, G4int A, const G4String& filename); @@ -118,10 +117,6 @@ public: private: - void InitialiseForIsotope(G4int Z, G4int A); - - void InitialiseUp(G4int Z); - G4DeexPrecoParameters* fDeexPrecoParameters; G4LevelReader* fLevelReader; G4PairingCorrection* fPairingCorrection; diff --git a/source/processes/hadronic/models/de_excitation/management/sources.cmake b/source/processes/hadronic/models/de_excitation/management/sources.cmake index 4e7764b1f0..bfaa8076cb 100644 --- a/source/processes/hadronic/models/de_excitation/management/sources.cmake +++ b/source/processes/hadronic/models/de_excitation/management/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_management # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,32 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_management HEADERS G4DeexParametersMessenger.hh diff --git a/source/processes/hadronic/models/de_excitation/management/src/G4DeexParametersMessenger.cc b/source/processes/hadronic/models/de_excitation/management/src/G4DeexParametersMessenger.cc index 173570c594..66689360d0 100644 --- a/source/processes/hadronic/models/de_excitation/management/src/G4DeexParametersMessenger.cc +++ b/source/processes/hadronic/models/de_excitation/management/src/G4DeexParametersMessenger.cc @@ -61,46 +61,40 @@ G4DeexParametersMessenger::G4DeexParametersMessenger(G4DeexPrecoParameters* ptr) : theParameters(ptr) { - fDirectory = new G4UIdirectory("/process/deex/"); + fDirectory = new G4UIdirectory("/process/had/deex/"); fDirectory->SetGuidance("Commands for nuclear de-excitation module."); - readCmd = new G4UIcmdWithABool("/process/deex/readICdata",this); + readCmd = new G4UIcmdWithABool("/process/had/deex/readICdata",this); readCmd->SetGuidance("Enable/disable download IC data per atomic shell."); readCmd->SetParameterName("readIC",true); readCmd->SetDefaultValue(false); readCmd->AvailableForStates(G4State_PreInit); - icCmd = new G4UIcmdWithABool("/process/deex/setIC",this); + icCmd = new G4UIcmdWithABool("/process/had/deex/setIC",this); icCmd->SetGuidance("Enable/disable simulation of e- internal conversion."); icCmd->SetParameterName("IC",true); icCmd->SetDefaultValue(true); icCmd->AvailableForStates(G4State_PreInit); - corgCmd = new G4UIcmdWithABool("/process/deex/correlatedGamma",this); + corgCmd = new G4UIcmdWithABool("/process/had/deex/correlatedGamma",this); corgCmd->SetGuidance("Enable/disable simulation of correlated gamma emission."); corgCmd->SetParameterName("corrG",true); corgCmd->SetDefaultValue(false); corgCmd->AvailableForStates(G4State_PreInit); - isoCmd = new G4UIcmdWithABool("/process/deex/isomerProduction",this); + isoCmd = new G4UIcmdWithABool("/process/had/deex/isomerProduction",this); isoCmd->SetGuidance("Enable/disable simulation of long lived isomers."); isoCmd->SetParameterName("corrG",true); isoCmd->SetDefaultValue(false); isoCmd->AvailableForStates(G4State_PreInit); - maxjCmd = new G4UIcmdWithAnInteger("/process/deex/maxTwoJ",this); + maxjCmd = new G4UIcmdWithAnInteger("/process/had/deex/maxTwoJ",this); maxjCmd->SetGuidance("Set max value for 2J for simulation of correlated gamma emission."); maxjCmd->SetParameterName("max2J",true); maxjCmd->SetDefaultValue(10); maxjCmd->AvailableForStates(G4State_PreInit); - upCmd = new G4UIcmdWithAnInteger("/process/deex/uploadZ",this); - upCmd->SetGuidance("Set max value for Z to be uploaded before 1st event"); - upCmd->SetParameterName("uploadZ",true); - upCmd->SetDefaultValue(30); - upCmd->AvailableForStates(G4State_PreInit); - - verbCmd = new G4UIcmdWithAnInteger("/process/deex/verbose",this); + verbCmd = new G4UIcmdWithAnInteger("/process/had/deex/verbose",this); verbCmd->SetGuidance("Set verbosity level."); verbCmd->SetParameterName("verb",true); verbCmd->SetDefaultValue(1); @@ -118,7 +112,6 @@ G4DeexParametersMessenger::~G4DeexParametersMessenger() delete corgCmd; delete isoCmd; delete maxjCmd; - delete upCmd; delete verbCmd; } @@ -137,8 +130,6 @@ void G4DeexParametersMessenger::SetNewValue(G4UIcommand* command, theParameters->SetIsomerProduction(isoCmd->GetNewBoolValue(newValue)); } else if (command == maxjCmd) { theParameters->SetTwoJMAX(maxjCmd->GetNewIntValue(newValue)); - } else if (command == upCmd) { - theParameters->SetUploadZ(upCmd->GetNewIntValue(newValue)); } else if (command == verbCmd) { theParameters->SetVerbose(verbCmd->GetNewIntValue(newValue)); } diff --git a/source/processes/hadronic/models/de_excitation/management/src/G4DeexPrecoParameters.cc b/source/processes/hadronic/models/de_excitation/management/src/G4DeexPrecoParameters.cc index 5d13d8e4f1..cb5cc15884 100644 --- a/source/processes/hadronic/models/de_excitation/management/src/G4DeexPrecoParameters.cc +++ b/source/processes/hadronic/models/de_excitation/management/src/G4DeexPrecoParameters.cc @@ -75,8 +75,7 @@ void G4DeexPrecoParameters::SetDefaults() fPrecoType = 3; fDeexType = 3; fTwoJMAX = 10; - fMaxZ = 9; - fVerbose = 1; + fVerbose = G4HadronicParameters::Instance()->GetVerboseLevel(); fNeverGoBack = false; fUseSoftCutoff = false; fUseCEM = true; @@ -90,6 +89,7 @@ void G4DeexPrecoParameters::SetDefaults() fLD = true; fFD = false; fIsomerFlag = true; + fLocalVerbose = false; fDeexChannelType = fCombined; fInternalConversionID = G4PhysicsModelCatalog::Register("e-InternalConvertion"); @@ -194,15 +194,10 @@ void G4DeexPrecoParameters::SetTwoJMAX(G4int n) fTwoJMAX = n; } -void G4DeexPrecoParameters::SetUploadZ(G4int z) -{ - if(IsLocked() || z < 1) { return; } - fMaxZ = z; -} - void G4DeexPrecoParameters::SetVerbose(G4int n) { if(IsLocked()) { return; } + if( n != fVerbose ) { fLocalVerbose = true; } fVerbose = n; } @@ -335,16 +330,20 @@ std::ostream& G4DeexPrecoParameters::StreamInfo(std::ostream& os) const << fInternalConversionID << "\n"; os << "Correlated gamma emission flag " << fCorrelatedGamma << "\n"; os << "Max 2J for sampling of angular correlations " << fTwoJMAX << "\n"; - os << "Upload data before 1st event for Z < " << fMaxZ << "\n"; os << "=======================================================================" << "\n"; os.precision(prec); return os; } +G4int G4DeexPrecoParameters::GetVerbose() const +{ + G4int verb = G4HadronicParameters::Instance()->GetVerboseLevel(); + return (fLocalVerbose && verb > 0) ? fVerbose : verb; +} + void G4DeexPrecoParameters::Dump() const { - if (G4Threading::IsMasterThread() && fVerbose > 0 && - G4HadronicParameters::Instance()->GetVerboseLevel() > 0 ) { StreamInfo(G4cout); } + if ( G4Threading::IsMasterThread() && GetVerbose() > 0 ) { StreamInfo(G4cout); } } std::ostream& operator<< (std::ostream& os, const G4DeexPrecoParameters& par) diff --git a/source/processes/hadronic/models/de_excitation/management/src/G4LevelReader.cc b/source/processes/hadronic/models/de_excitation/management/src/G4LevelReader.cc index 24e0782aa1..17a122efb9 100644 --- a/source/processes/hadronic/models/de_excitation/management/src/G4LevelReader.cc +++ b/source/processes/hadronic/models/de_excitation/management/src/G4LevelReader.cc @@ -391,7 +391,7 @@ G4LevelReader::LevelManager(G4int Z, G4int A, G4int nlev, if(!ReadDataItem(infile,fICC[k])) { //if(infile.fail()) { if(fVerbose > 1) { - G4cout << "### Fail to read convertion coeff k= " << k + G4cout << "### Fail to read conversion coeff k= " << k << " for transition j= " << j << " Z= " << Z << " A= " << A << G4endl; } diff --git a/source/processes/hadronic/models/de_excitation/management/src/G4NuclearLevelData.cc b/source/processes/hadronic/models/de_excitation/management/src/G4NuclearLevelData.cc index b27fb6b283..56e05dc223 100644 --- a/source/processes/hadronic/models/de_excitation/management/src/G4NuclearLevelData.cc +++ b/source/processes/hadronic/models/de_excitation/management/src/G4NuclearLevelData.cc @@ -458,40 +458,39 @@ G4NuclearLevelData::~G4NuclearLevelData() for(G4int Z=1; Z= 0 && Z < ZMAX) ? AMAX[Z] : 0; } -void G4NuclearLevelData::InitialiseForIsotope(G4int Z, G4int A) -{ - if(Z < 1 || Z >= ZMAX || A < AMIN[Z] || A > AMAX[Z]) { return; } - const G4int idx = A - AMIN[Z]; -#ifdef G4MULTITHREADED - if(!(fLevelManagerFlags[Z])[idx]) { - G4MUTEXLOCK(&nuclearLevelDataMutex); -#endif - // initialise only once - // before 1st event fragments Z < zmax are initialized - if(!fInitialized) { - fInitialized = true; - InitialiseUp(fDeexPrecoParameters->GetUploadZ()); - } - if(!(fLevelManagerFlags[Z])[idx]) { - (fLevelManagers[Z])[idx] = fLevelReader->CreateLevelManager(Z, A); - (fLevelManagerFlags[Z])[idx] = true; - } -#ifdef G4MULTITHREADED - G4MUTEXUNLOCK(&nuclearLevelDataMutex); - } -#endif -} - -void G4NuclearLevelData::UploadNuclearLevelData(G4int Z) +void G4NuclearLevelData::UploadNuclearLevelData(G4int ZZ) { + if(fInitialized) return; #ifdef G4MULTITHREADED G4MUTEXLOCK(&nuclearLevelDataMutex); #endif - fDeexPrecoParameters->SetUploadZ(Z); - InitialiseUp(Z); -#ifdef G4MULTITHREADED - G4MUTEXUNLOCK(&nuclearLevelDataMutex); -#endif -} - -void G4NuclearLevelData::InitialiseUp(G4int ZZ) -{ - G4int mZ = ZZ; - if(mZ >= ZMAX) { mZ = ZMAX; } - for(G4int Z=1; ZCreateLevelManager(Z, A); - (fLevelManagerFlags[Z])[idx] = true; + if(!fInitialized) { + fInitialized = true; + G4int mZ = ZZ; + if(mZ > ZMAX) { mZ = ZMAX; } + for(G4int Z=1; ZCreateLevelManager(Z, A); + (fLevelManagerFlags[Z])[idx] = true; + } } } } +#ifdef G4MULTITHREADED + G4MUTEXUNLOCK(&nuclearLevelDataMutex); +#endif } G4double G4NuclearLevelData::GetMaxLevelEnergy(G4int Z, G4int A) const diff --git a/source/processes/hadronic/models/de_excitation/multifragmentation/sources.cmake b/source/processes/hadronic/models/de_excitation/multifragmentation/sources.cmake index f09b575815..44c4516c8c 100644 --- a/source/processes/hadronic/models/de_excitation/multifragmentation/sources.cmake +++ b/source/processes/hadronic/models/de_excitation/multifragmentation/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_multifragmentation # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,30 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_multifragmentation HEADERS G4Solver.hh diff --git a/source/processes/hadronic/models/de_excitation/multifragmentation/src/G4StatMFMacroChemicalPotential.cc b/source/processes/hadronic/models/de_excitation/multifragmentation/src/G4StatMFMacroChemicalPotential.cc index 5140df6808..290aff66a3 100644 --- a/source/processes/hadronic/models/de_excitation/multifragmentation/src/G4StatMFMacroChemicalPotential.cc +++ b/source/processes/hadronic/models/de_excitation/multifragmentation/src/G4StatMFMacroChemicalPotential.cc @@ -36,20 +36,20 @@ G4StatMFMacroChemicalPotential & G4StatMFMacroChemicalPotential::operator=(const G4StatMFMacroChemicalPotential & ) { - throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMacroChemicalPotential::operator= meant to not be accessable"); + throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMacroChemicalPotential::operator= meant to not be accessible"); return *this; } G4bool G4StatMFMacroChemicalPotential::operator==(const G4StatMFMacroChemicalPotential & ) const { - throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMacroChemicalPotential::operator== meant to not be accessable"); + throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMacroChemicalPotential::operator== meant to not be accessible"); return false; } G4bool G4StatMFMacroChemicalPotential::operator!=(const G4StatMFMacroChemicalPotential & ) const { - throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMacroChemicalPotential::operator!= meant to not be accessable"); + throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMacroChemicalPotential::operator!= meant to not be accessible"); return true; } diff --git a/source/processes/hadronic/models/de_excitation/multifragmentation/src/G4StatMFMicroManager.cc b/source/processes/hadronic/models/de_excitation/multifragmentation/src/G4StatMFMicroManager.cc index 1f2b74f907..3da3ab601e 100644 --- a/source/processes/hadronic/models/de_excitation/multifragmentation/src/G4StatMFMicroManager.cc +++ b/source/processes/hadronic/models/de_excitation/multifragmentation/src/G4StatMFMicroManager.cc @@ -34,7 +34,7 @@ // Copy constructor G4StatMFMicroManager::G4StatMFMicroManager(const G4StatMFMicroManager & ) { - throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMicroManager::copy_constructor meant to not be accessable"); + throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMicroManager::copy_constructor meant to not be accessible"); } // Operators @@ -42,7 +42,7 @@ G4StatMFMicroManager::G4StatMFMicroManager(const G4StatMFMicroManager & ) G4StatMFMicroManager & G4StatMFMicroManager:: operator=(const G4StatMFMicroManager & ) { - throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMicroManager::operator= meant to not be accessable"); + throw G4HadronicException(__FILE__, __LINE__, "G4StatMFMicroManager::operator= meant to not be accessible"); return *this; } diff --git a/source/processes/hadronic/models/de_excitation/photon_evaporation/sources.cmake b/source/processes/hadronic/models/de_excitation/photon_evaporation/sources.cmake index 45abf8589d..d5ad2ba15d 100644 --- a/source/processes/hadronic/models/de_excitation/photon_evaporation/sources.cmake +++ b/source/processes/hadronic/models/de_excitation/photon_evaporation/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_photon_evaporation # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,36 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_photon_evaporation HEADERS G4GammaTransition.hh diff --git a/source/processes/hadronic/models/de_excitation/util/sources.cmake b/source/processes/hadronic/models/de_excitation/util/sources.cmake index b4b220da15..4ceeebbcee 100644 --- a/source/processes/hadronic/models/de_excitation/util/sources.cmake +++ b/source/processes/hadronic/models/de_excitation/util/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_deex.G4hadronic_deex_util # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,30 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_deex_util HEADERS G4AlphaCoulombBarrier.hh diff --git a/source/processes/hadronic/models/em_dissociation/History b/source/processes/hadronic/models/em_dissociation/History index 81c50696dc..8df50a659e 100644 --- a/source/processes/hadronic/models/em_dissociation/History +++ b/source/processes/hadronic/models/em_dissociation/History @@ -14,6 +14,13 @@ code and to keep track of all tags. * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- +24 November 2020 - Alberto Ribon (hadr-emd-V10-06-00) +----------------------------------------------------- +- G4EMDissociation : fix Lorentz kinematics (which was causing + energy-momentum violations) and switch off too frequent warning + messages by G4Fragment, as suggested by Laurie Nevay and + Andrey Abramov (bug report #2254). + 07 March 2017 - Vladimir Ivanchenko (hadr-emd-V10-03-00) ----------------------------------------------------- - G4EMDissociation.cc : removed explicit instantiation of diff --git a/source/processes/hadronic/models/em_dissociation/sources.cmake b/source/processes/hadronic/models/em_dissociation/sources.cmake index 8428c111b0..1efcce6502 100644 --- a/source/processes/hadronic/models/em_dissociation/sources.cmake +++ b/source/processes/hadronic/models/em_dissociation/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_em_dissociation # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,47 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_em_dissociation HEADERS G4EMDissociation.hh diff --git a/source/processes/hadronic/models/em_dissociation/src/G4EMDissociation.cc b/source/processes/hadronic/models/em_dissociation/src/G4EMDissociation.cc index c30b475b57..d3470fe780 100644 --- a/source/processes/hadronic/models/em_dissociation/src/G4EMDissociation.cc +++ b/source/processes/hadronic/models/em_dissociation/src/G4EMDissociation.cc @@ -244,7 +244,7 @@ G4HadFinalState *G4EMDissociation::ApplyYourself // energy includes the projectile and virtual gamma. This is then used // to calculate the boost required for the secondaries. - pP.setE(pP.e()+Eg); + pP.setE( std::sqrt( pP.vect().mag2() + (mass + Eg)*(mass + Eg) ) ); boost = pP.findBoostToCM(); } else @@ -349,7 +349,7 @@ G4HadFinalState *G4EMDissociation::ApplyYourself G4Fragment* theFragment = new G4Fragment((G4int) typeDaughter->GetBaryonNumber(), - (G4int) typeDaughter->GetPDGCharge(), dynamicDaughter->Get4Momentum()); + (G4int) typeDaughter->GetPDGCharge(), dynamicDaughter->Get4Momentum(), false); if (verboseLevel >= 2) { G4cout <<"Dynamic properties of the prefragment:" < loopMax - 1) { -// G4cout << " too many loops, return intial state " << G4endl; +// G4cout << " too many loops, return initial state " << G4endl; theParticleChange.Clear(); theParticleChange.SetStatusChange(isAlive); diff --git a/source/processes/hadronic/models/lend/src/nf_utilities.cc b/source/processes/hadronic/models/lend/src/nf_utilities.cc index 1bbf3d1ee0..9121d01df4 100644 --- a/source/processes/hadronic/models/lend/src/nf_utilities.cc +++ b/source/processes/hadronic/models/lend/src/nf_utilities.cc @@ -25,7 +25,7 @@ using namespace GIDI; static const char Okay_message[] = "all is okay"; static const char mallocError_message[] = "could not allocate memory"; -static const char insufficientMemory_message[] = "user's memory is too small to hanlde data"; +static const char insufficientMemory_message[] = "user's memory is too small to handle data"; static const char badIndex_message[] = "bad index"; static const char XNotAscending_message[] = "x values are not ascending"; static const char badIndexForX_message[] = "index not correct for x value"; diff --git a/source/processes/hadronic/models/lepto_nuclear/sources.cmake b/source/processes/hadronic/models/lepto_nuclear/sources.cmake index b7f04e07b8..e520c3c4b2 100644 --- a/source/processes/hadronic/models/lepto_nuclear/sources.cmake +++ b/source/processes/hadronic/models/lepto_nuclear/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4lepto_nuclear # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,49 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4had_lept_nuclear HEADERS G4ANuElNucleusCcModel.hh diff --git a/source/processes/hadronic/models/management/sources.cmake b/source/processes/hadronic/models/management/sources.cmake index 3b8d13b175..89286b0fd1 100644 --- a/source/processes/hadronic/models/management/sources.cmake +++ b/source/processes/hadronic/models/management/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_mod_man # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,31 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4had_mod_man HEADERS G4HadronicInteraction.hh diff --git a/source/processes/hadronic/models/particle_hp/History b/source/processes/hadronic/models/particle_hp/History index 17009cb595..d1a9fcc097 100644 --- a/source/processes/hadronic/models/particle_hp/History +++ b/source/processes/hadronic/models/particle_hp/History @@ -13,6 +13,63 @@ code and to keep track of all tags. --------------------------------------------------------------- * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- + +05 November 2020 Alberto Ribon (hadr-hpp-V10-06-12) +-------------------------------------------------- +- G4ParticleHPInelastic, G4ParticleHPInelasticData : improved error message + in the case that both G4PARTICLEHPDATA and the related particle-specific + environmental variable (e.g. G4PROTONHPDATA) are not defined. + The recommandation is to define only G4PARTICLEHPDATA. + +27 October 2020 Alberto Ribon (hadr-hpp-V10-06-11) +-------------------------------------------------- +- G4ParticleHPInelastic, G4ParticleHPManager : enabled the print out of + the physics parameters (only once and with a format similar to + Precompound/de-excitation and RadioativeDecay; note that rather than + enabling the print out in G4ParticleHPInelastic::BuildPhysicsTable, + we could have used instead the analogous method BuildPhysicsTable of + one of the following classes: G4ParticleHPCapture, G4ParticleHPElastic + and G4ParticleHPFission). +- G4ParticleHPContAngularPar, G4ParticleHPInelasticBaseFS, + G4ParticleHPEnAngCorrelation, G4ParticleHPFinalState : replaced + the use of the environmental variable G4PHP_DO_NOT_ADJUST_FINAL_STATE + (the only one used outside the class G4ParticleHPManager - a part for + the one pointing to the data libraries) with the equivalent + G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState(). + +05 August 2020 Alberto Ribon (hadr-hpp-V10-06-10) +------------------------------------------------- +- G4ParticleHPMessenger : added new UI macro command + "use_Wendt_fission_model" related to the use of Wendt fission + model; make sure that not more than one fission fragment model + is active. +- G4ParticleHPManager : added a new variable related to the use of + Wendt fission model; throw a "JustWarning" exception when the + environmental variables are used (to remind that they are still + valid but deprecated, and will be removed in Geant4 version 11.0); + added new method "DumpSetting()" which needs to be called somewhere + to print out once the values of its parameters. +- G4ParticleHPChannel : moved environmental variable related to + the use of Wendt fission model from this class to + G4ParticleHPManager. + +21 July 2020 Ben Morgan (hadr-hpp-V10-06-09) +-------------------------------------------- +- Use GEANT4_BUILD_PHP_AS_HP option to enable PHP_AS_HP, + retiring use of PHP_AS_HP environment variable. + +17 July 2020 Dennis Wright (hadr-hpp-V10-06-08) +------------------------------------------------- +- Fix bug #2233: two fission fragment models can be active at the same time + If Wendt model is active in ctor of G4ParticleHPChannel, turn off standard + fragment production model + +30 June 2020 Dennis Wright (hadr-hpp-V10-06-07) +------------------------------------------------- +- Fix bug #2234: thread competition in method + G4FissionProductYieldDist::G4GetFission(void). Place auto lock + on this method. + 28 May 2020 Ben Morgan (hadr-hpp-V10-06-06) --------------------------------------------------- - Remove obsolete GRANULAR_DEPENDENCIES entries diff --git a/source/processes/hadronic/models/particle_hp/include/G4ENDFTapeRead.hh b/source/processes/hadronic/models/particle_hp/include/G4ENDFTapeRead.hh old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/include/G4ENDFYieldDataContainer.hh b/source/processes/hadronic/models/particle_hp/include/G4ENDFYieldDataContainer.hh old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/include/G4FFGEnumerations.hh b/source/processes/hadronic/models/particle_hp/include/G4FFGEnumerations.hh old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/include/G4FPYBiasedLightFragmentDist.hh b/source/processes/hadronic/models/particle_hp/include/G4FPYBiasedLightFragmentDist.hh old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/include/G4FPYNormalFragmentDist.hh b/source/processes/hadronic/models/particle_hp/include/G4FPYNormalFragmentDist.hh old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/include/G4FPYNubarValues.hh b/source/processes/hadronic/models/particle_hp/include/G4FPYNubarValues.hh old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/include/G4FPYSamplingOps.hh b/source/processes/hadronic/models/particle_hp/include/G4FPYSamplingOps.hh old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/include/G4FPYTreeStructures.hh b/source/processes/hadronic/models/particle_hp/include/G4FPYTreeStructures.hh old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/include/G4FissionFragmentGenerator.hh b/source/processes/hadronic/models/particle_hp/include/G4FissionFragmentGenerator.hh old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/include/G4FissionProductYieldDist.hh b/source/processes/hadronic/models/particle_hp/include/G4FissionProductYieldDist.hh old mode 100755 new mode 100644 index 2c91c5675f..e6698f62d3 --- a/source/processes/hadronic/models/particle_hp/include/G4FissionProductYieldDist.hh +++ b/source/processes/hadronic/models/particle_hp/include/G4FissionProductYieldDist.hh @@ -89,6 +89,10 @@ private: /** Initialize is a common function called by all constructors. */ void Initialize( std::istringstream& dataStream ); +#ifdef G4MULTITHREADED + static G4Mutex fissprodMutex; +#endif + public: // Functions /** Generates a fission event using default sampling and returns the pointer diff --git a/source/processes/hadronic/models/particle_hp/include/G4ParticleHPChannel.hh b/source/processes/hadronic/models/particle_hp/include/G4ParticleHPChannel.hh index fae7232cb0..9ca59422d0 100644 --- a/source/processes/hadronic/models/particle_hp/include/G4ParticleHPChannel.hh +++ b/source/processes/hadronic/models/particle_hp/include/G4ParticleHPChannel.hh @@ -23,11 +23,9 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// - // Hadronic Process: Very Low Energy Neutron X-Sections - // original by H.P. Wellisch, TRIUMF, 14-Feb-97 - // Builds and has the Cross-section data for one element and channel. +// Hadronic Process: Very Low Energy Neutron X-Sections +// original by H.P. Wellisch, TRIUMF, 14-Feb-97 +// Builds and has the Cross-section data for one element and channel. // // Bug fixes and workarounds in the destructor, F.W.Jones 06-Jul-1999 // 070612 Fix memory leaking by T. Koi @@ -38,29 +36,34 @@ // #ifndef G4ParticleHPChannel_h #define G4ParticleHPChannel_h 1 + #include "globals.hh" #include "G4ParticleHPIsoData.hh" #include "G4ParticleHPVector.hh" #include "G4Material.hh" #include "G4HadProjectile.hh" -//#include "G4NeutronInelasticProcess.hh" -//#include "G4HadronFissionProcess.hh" -//#include "G4HadronElasticProcess.hh" -//#include "G4HadronCaptureProcess.hh" #include "G4StableIsotopes.hh" #include "G4ParticleHPCaptureFS.hh" #include "G4ParticleHPFinalState.hh" #include "G4Element.hh" #include "G4WendtFissionFragmentGenerator.hh" +#include "G4ParticleHPManager.hh" + class G4ParticleDefinition; + class G4ParticleHPChannel { public: - G4ParticleHPChannel(G4ParticleDefinition* projectile) - : wendtFissionGenerator(std::getenv("G4NEUTRON_HP_USE_WENDT_FISSION_MODEL") == NULL ? NULL : G4WendtFissionFragmentGenerator::GetInstance()) + G4ParticleHPChannel(G4ParticleDefinition* projectile) : + wendtFissionGenerator( G4ParticleHPManager::GetInstance()->GetUseWendtFissionModel() ? + G4WendtFissionFragmentGenerator::GetInstance() : nullptr ) { + if ( G4ParticleHPManager::GetInstance()->GetUseWendtFissionModel() ) { + // Make sure both fission fragment models are not active at same time + G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( false ); + } theProjectile = const_cast(projectile); theChannelData = new G4ParticleHPVector; theBuffer = 0; @@ -72,9 +75,13 @@ public: theElement = NULL; } - G4ParticleHPChannel() - : wendtFissionGenerator(std::getenv("G4NEUTRON_HP_USE_WENDT_FISSION_MODEL") == NULL ? NULL : G4WendtFissionFragmentGenerator::GetInstance()) + G4ParticleHPChannel() : wendtFissionGenerator( G4ParticleHPManager::GetInstance()->GetUseWendtFissionModel() ? + G4WendtFissionFragmentGenerator::GetInstance() : nullptr ) { + if ( G4ParticleHPManager::GetInstance()->GetUseWendtFissionModel() ) { + // Make sure both fission fragment models are not active at same time + G4ParticleHPManager::GetInstance()->SetProduceFissionFragments( false ); + } theProjectile = G4Neutron::Neutron(); theChannelData = new G4ParticleHPVector; theBuffer = 0; @@ -106,17 +113,16 @@ public: //} // FWJ experiment //if(active!=0) delete [] active; -// T.K. - if ( theFinalStates != 0 ) - { + // T.K. + if ( theFinalStates != 0 ) + { for ( G4int i = 0 ; i < niso ; i++ ) { delete theFinalStates[i]; } delete [] theFinalStates; - } - if ( active != 0 ) delete [] active; - + } + if ( active != 0 ) delete [] active; } G4double GetXsec(G4double energy); diff --git a/source/processes/hadronic/models/particle_hp/include/G4ParticleHPEnAngCorrelation.hh b/source/processes/hadronic/models/particle_hp/include/G4ParticleHPEnAngCorrelation.hh index 2e21f36cbf..6cd4e6e4c6 100644 --- a/source/processes/hadronic/models/particle_hp/include/G4ParticleHPEnAngCorrelation.hh +++ b/source/processes/hadronic/models/particle_hp/include/G4ParticleHPEnAngCorrelation.hh @@ -39,6 +39,7 @@ #include "G4ParticleHPProduct.hh" #include "G4ReactionProduct.hh" #include "G4Cache.hh" +#include "G4ParticleHPManager.hh" class G4ParticleDefinition; @@ -93,11 +94,7 @@ public: inline void Init(std::istream & aDataFile) { bAdjustFinalState = true; - const char* ctmp = std::getenv("G4PHP_DO_NOT_ADJUST_FINAL_STATE"); - if( ctmp && G4String(ctmp) == "1" ) - { - bAdjustFinalState = false; - } + if ( G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState() ) bAdjustFinalState = false; // T.K. Comment out following line to keep the condition at the // validation efforts comparing NeutronHP and PartileHP for neutrons (2015 Sep.) diff --git a/source/processes/hadronic/models/particle_hp/include/G4ParticleHPFinalState.hh b/source/processes/hadronic/models/particle_hp/include/G4ParticleHPFinalState.hh index f58a128339..d023b4d0bb 100644 --- a/source/processes/hadronic/models/particle_hp/include/G4ParticleHPFinalState.hh +++ b/source/processes/hadronic/models/particle_hp/include/G4ParticleHPFinalState.hh @@ -62,8 +62,8 @@ public: theNDLDataM = 0; adjustResult = true; - if ( std::getenv( "G4PHP_DO_NOT_ADJUST_FINAL_STATE" ) ) adjustResult = false; - + if ( G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState() ) adjustResult = false; + theProjectile = G4Neutron::Neutron(); theResult.Put( 0 ); diff --git a/source/processes/hadronic/models/particle_hp/include/G4ParticleHPManager.hh b/source/processes/hadronic/models/particle_hp/include/G4ParticleHPManager.hh index 004c70dd11..c30cff175f 100644 --- a/source/processes/hadronic/models/particle_hp/include/G4ParticleHPManager.hh +++ b/source/processes/hadronic/models/particle_hp/include/G4ParticleHPManager.hh @@ -75,19 +75,27 @@ class G4ParticleHPManager void DumpDataSource(); G4bool GetUseOnlyPhotoEvaporation() { return USE_ONLY_PHOTONEVAPORATION; }; - void SetUseOnlyPhotoEvaporation( G4bool val ) { USE_ONLY_PHOTONEVAPORATION = val; }; G4bool GetSkipMissingIsotopes() { return SKIP_MISSING_ISOTOPES; }; G4bool GetNeglectDoppler() { return NEGLECT_DOPPLER; }; G4bool GetDoNotAdjustFinalState() { return DO_NOT_ADJUST_FINAL_STATE; }; G4bool GetProduceFissionFragments() { return PRODUCE_FISSION_FRAGMENTS; }; + G4bool GetUseWendtFissionModel() { return USE_WENDT_FISSION_MODEL; }; G4bool GetUseNRESP71Model() { return USE_NRESP71_MODEL; }; + void SetUseOnlyPhotoEvaporation( G4bool val ) { USE_ONLY_PHOTONEVAPORATION = val; }; void SetSkipMissingIsotopes( G4bool val ) { SKIP_MISSING_ISOTOPES = val; }; void SetNeglectDoppler( G4bool val ) { NEGLECT_DOPPLER = val; }; void SetDoNotAdjustFinalState( G4bool val ) { DO_NOT_ADJUST_FINAL_STATE = val; }; - void SetProduceFissionFragments( G4bool val ) { PRODUCE_FISSION_FRAGMENTS = val; }; + void SetProduceFissionFragments( G4bool val ) { + // Make sure both fission fragment models are not active at same time + USE_WENDT_FISSION_MODEL ? PRODUCE_FISSION_FRAGMENTS = false : PRODUCE_FISSION_FRAGMENTS = val ; }; + void SetUseWendtFissionModel( G4bool val ) { USE_WENDT_FISSION_MODEL = val; + // Make sure both fission fragment models are not active at same time + if ( USE_WENDT_FISSION_MODEL ) PRODUCE_FISSION_FRAGMENTS = false; }; void SetUseNRESP71Model( G4bool val ) { USE_NRESP71_MODEL = val; }; + void DumpSetting(); // Needs to be called somewhere to print out information once per run. + void RegisterElasticCrossSections( G4PhysicsTable* val ){ theElasticCrossSections = val; }; G4PhysicsTable* GetElasticCrossSections(){ return theElasticCrossSections; }; void RegisterCaptureCrossSections( G4PhysicsTable* val ){ theCaptureCrossSections = val; }; @@ -134,6 +142,7 @@ class G4ParticleHPManager G4bool NEGLECT_DOPPLER; G4bool DO_NOT_ADJUST_FINAL_STATE; G4bool PRODUCE_FISSION_FRAGMENTS; + G4bool USE_WENDT_FISSION_MODEL; G4bool USE_NRESP71_MODEL; G4PhysicsTable* theElasticCrossSections; diff --git a/source/processes/hadronic/models/particle_hp/include/G4ParticleHPMessenger.hh b/source/processes/hadronic/models/particle_hp/include/G4ParticleHPMessenger.hh index 9aa4c54496..69d24daf69 100644 --- a/source/processes/hadronic/models/particle_hp/include/G4ParticleHPMessenger.hh +++ b/source/processes/hadronic/models/particle_hp/include/G4ParticleHPMessenger.hh @@ -51,18 +51,9 @@ class G4ParticleHPMessenger: public G4UImessenger G4UIcmdWithAString* NeglectDopplerCmd; G4UIcmdWithAString* DoNotAdjustFSCmd; G4UIcmdWithAString* ProduceFissionFragementCmd; + G4UIcmdWithAString* WendtFissionModelCmd; G4UIcmdWithAString* NRESP71Cmd; G4UIcmdWithAnInteger* VerboseCmd; - //G4UIcmdWithAString* AllowHeavyElementCmd; -/* - * #setenv G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION 1 - * #setenv G4NEUTRONHP_SKIP_MISSING_ISOTOPES 1 - * #setenv G4NEUTRONHP_NEGLECT_DOPPLER 1 - * #setenv G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE 1 - * #setenv G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS 1 - * -*/ - }; #endif diff --git a/source/processes/hadronic/models/particle_hp/include/G4ShiftedGaussian.hh b/source/processes/hadronic/models/particle_hp/include/G4ShiftedGaussian.hh old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/include/G4TableTemplate.hh b/source/processes/hadronic/models/particle_hp/include/G4TableTemplate.hh old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/include/G4WattFissionSpectrumValues.hh b/source/processes/hadronic/models/particle_hp/include/G4WattFissionSpectrumValues.hh old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/sources.cmake b/source/processes/hadronic/models/particle_hp/sources.cmake index 9d694492a0..0b83ce6943 100644 --- a/source/processes/hadronic/models/particle_hp/sources.cmake +++ b/source/processes/hadronic/models/particle_hp/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_par_hp # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,39 +14,9 @@ # #----------------------------------------------------------------------- -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) -include_directories(${ZLIB_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4had_par_hp HEADERS G4InterpolationIterator.hh @@ -467,7 +437,7 @@ GEANT4_DEFINE_MODULE(NAME G4had_par_hp ) # List any source specific properties here -if("$ENV{PHP_AS_HP}") +if(GEANT4_BUILD_PHP_AS_HP) add_definitions(-DPHP_AS_HP) endif() diff --git a/source/processes/hadronic/models/particle_hp/src/G4ENDFTapeRead.cc b/source/processes/hadronic/models/particle_hp/src/G4ENDFTapeRead.cc old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/src/G4ENDFYieldDataContainer.cc b/source/processes/hadronic/models/particle_hp/src/G4ENDFYieldDataContainer.cc old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/src/G4FPYBiasedLightFragmentDist.cc b/source/processes/hadronic/models/particle_hp/src/G4FPYBiasedLightFragmentDist.cc old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/src/G4FPYNormalFragmentDist.cc b/source/processes/hadronic/models/particle_hp/src/G4FPYNormalFragmentDist.cc old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/src/G4FPYSamplingOps.cc b/source/processes/hadronic/models/particle_hp/src/G4FPYSamplingOps.cc old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/src/G4FissionFragmentGenerator.cc b/source/processes/hadronic/models/particle_hp/src/G4FissionFragmentGenerator.cc old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/models/particle_hp/src/G4FissionProductYieldDist.cc b/source/processes/hadronic/models/particle_hp/src/G4FissionProductYieldDist.cc index 1d150732dd..2acb7b7171 100644 --- a/source/processes/hadronic/models/particle_hp/src/G4FissionProductYieldDist.cc +++ b/source/processes/hadronic/models/particle_hp/src/G4FissionProductYieldDist.cc @@ -79,6 +79,11 @@ using CLHEP::pi; +#ifdef G4MULTITHREADED +#include "G4AutoLock.hh" +G4Mutex G4FissionProductYieldDist::fissprodMutex = G4MUTEX_INITIALIZER; +#endif + G4FissionProductYieldDist:: G4FissionProductYieldDist( G4int WhichIsotope, G4FFGEnumerations::MetaState WhichMetaState, @@ -107,42 +112,39 @@ G4FissionProductYieldDist( G4int WhichIsotope, } G4FissionProductYieldDist:: -G4FissionProductYieldDist( G4int WhichIsotope, - G4FFGEnumerations::MetaState WhichMetaState, - G4FFGEnumerations::FissionCause WhichCause, - G4FFGEnumerations::YieldType WhichYieldType, - G4int Verbosity, - std::istringstream& dataStream) -: Isotope_(WhichIsotope), - MetaState_(WhichMetaState), - Cause_(WhichCause), - YieldType_(WhichYieldType), - Verbosity_(Verbosity) +G4FissionProductYieldDist(G4int WhichIsotope, + G4FFGEnumerations::MetaState WhichMetaState, + G4FFGEnumerations::FissionCause WhichCause, + G4FFGEnumerations::YieldType WhichYieldType, + G4int Verbosity, + std::istringstream& dataStream) + : Isotope_(WhichIsotope), MetaState_(WhichMetaState), Cause_(WhichCause), + YieldType_(WhichYieldType), Verbosity_(Verbosity) { - G4FFG_FUNCTIONENTER__ - - try - { - // Initialize the class - Initialize(dataStream); - } catch (std::exception& e) - { - G4FFG_FUNCTIONLEAVE__ - throw e; - } + G4FFG_FUNCTIONENTER__ + try + { + // Initialize the class + Initialize(dataStream); + } catch (std::exception& e) + { G4FFG_FUNCTIONLEAVE__ + throw e; + } + + G4FFG_FUNCTIONLEAVE__ } -void G4FissionProductYieldDist:: -Initialize( std::istringstream& dataStream ) + +void G4FissionProductYieldDist::Initialize(std::istringstream& dataStream) { G4FFG_FUNCTIONENTER__ - IncidentEnergy_ = 0.0; - TernaryProbability_ = 0; - AlphaProduction_ = 0; - SetNubar(); + IncidentEnergy_ = 0.0; + TernaryProbability_ = 0; + AlphaProduction_ = 0; + SetNubar(); // Set miscellaneous variables AlphaDefinition_ = reinterpret_cast(G4Alpha::Definition()); @@ -188,99 +190,98 @@ G4FFG_FUNCTIONENTER__ G4FFG_FUNCTIONLEAVE__ } -G4DynamicParticleVector* G4FissionProductYieldDist:: -G4GetFission( void ) +G4DynamicParticleVector* G4FissionProductYieldDist::G4GetFission(void) { G4FFG_FUNCTIONENTER__ - // Check to see if the user has set the alpha production to a somewhat - // reasonable level - CheckAlphaSanity(); +#ifdef G4MULTITHREADED + G4AutoLock lk(&G4FissionProductYieldDist::fissprodMutex); +#endif - // Generate the new G4DynamicParticle pointers to identify key locations in - // the G4DynamicParticle chain that will be passed to the G4FissionEvent - G4ReactionProduct* FirstDaughter = NULL; - G4ReactionProduct* SecondDaughter = NULL; - std::vector< G4ReactionProduct* >* Alphas = new std::vector< G4ReactionProduct* >; - std::vector< G4ReactionProduct* >* Neutrons = new std::vector< G4ReactionProduct* >; - std::vector< G4ReactionProduct* >* Gammas = new std::vector< G4ReactionProduct* >; + // Check to see if the user has set the alpha production to a somewhat + // reasonable level + CheckAlphaSanity(); - // Generate all the nucleonic fission products - // How many nucleons do we have to work with? - //TK modified 131108 - //const G4int ParentA = Isotope_ % 1000; - //const G4int ParentZ = (Isotope_ - ParentA) / 1000; - const G4int ParentA = (Isotope_/10) % 1000; - const G4int ParentZ = ((Isotope_/10) - ParentA) / 1000; - RemainingA_ = ParentA; - RemainingZ_ = ParentZ; + // Generate the new G4DynamicParticle pointers to identify key locations in + // the G4DynamicParticle chain that will be passed to the G4FissionEvent + G4ReactionProduct* FirstDaughter = NULL; + G4ReactionProduct* SecondDaughter = NULL; + std::vector< G4ReactionProduct* >* Alphas = new std::vector< G4ReactionProduct* >; + std::vector< G4ReactionProduct* >* Neutrons = new std::vector< G4ReactionProduct* >; + std::vector< G4ReactionProduct* >* Gammas = new std::vector< G4ReactionProduct* >; - // Don't forget the extra nucleons depending on the fission cause - switch(Cause_) - { - case G4FFGEnumerations::NEUTRON_INDUCED: - ++RemainingA_; - break; + // Generate all the nucleonic fission products + // How many nucleons do we have to work with? + //TK modified 131108 + const G4int ParentA = (Isotope_/10) % 1000; + const G4int ParentZ = ((Isotope_/10) - ParentA) / 1000; + RemainingA_ = ParentA; + RemainingZ_ = ParentZ; - case G4FFGEnumerations::PROTON_INDUCED: - ++RemainingZ_; - break; + // Don't forget the extra nucleons depending on the fission cause + switch(Cause_) + { + case G4FFGEnumerations::NEUTRON_INDUCED: + ++RemainingA_; + break; - case G4FFGEnumerations::GAMMA_INDUCED: - case G4FFGEnumerations::SPONTANEOUS: - default: - // Nothing to do here - break; - } + case G4FFGEnumerations::PROTON_INDUCED: + ++RemainingZ_; + break; - // Ternary fission can be set by the user. Thus, it is necessary to - // sample the alpha particle first and the first daughter product - // second. See the discussion in - // G4FissionProductYieldDist::G4GetFissionProduct() for more information - // as to why the fission events are sampled this way. - GenerateAlphas(Alphas); + case G4FFGEnumerations::GAMMA_INDUCED: + case G4FFGEnumerations::SPONTANEOUS: + default: + // Nothing to do here + break; + } - // Generate the first daughter product - FirstDaughter = new G4ReactionProduct(GetFissionProduct()); - RemainingA_ -= FirstDaughter->GetDefinition()->GetAtomicMass(); - RemainingZ_ -= FirstDaughter->GetDefinition()->GetAtomicNumber(); - if(Verbosity_ & G4FFGEnumerations::DAUGHTER_INFO) - { - G4FFG_SPACING__ - G4FFG_LOCATION__ + // Ternary fission can be set by the user. Thus, it is necessary to + // sample the alpha particle first and the first daughter product + // second. See the discussion in + // G4FissionProductYieldDist::G4GetFissionProduct() for more information + // as to why the fission events are sampled this way. + GenerateAlphas(Alphas); + + // Generate the first daughter product + FirstDaughter = new G4ReactionProduct(GetFissionProduct()); + RemainingA_ -= FirstDaughter->GetDefinition()->GetAtomicMass(); + RemainingZ_ -= FirstDaughter->GetDefinition()->GetAtomicNumber(); + if (Verbosity_ & G4FFGEnumerations::DAUGHTER_INFO) { + G4FFG_SPACING__ + G4FFG_LOCATION__ - G4cout << " -- First daughter product sampled" << G4endl; - G4FFG_SPACING__ - G4cout << " Name: " << FirstDaughter->GetDefinition()->GetParticleName() << G4endl; - G4FFG_SPACING__ - G4cout << " Z: " << FirstDaughter->GetDefinition()->GetAtomicNumber() << G4endl; - G4FFG_SPACING__ - G4cout << " A: " << FirstDaughter->GetDefinition()->GetAtomicMass() << G4endl; - G4FFG_SPACING__ - G4cout << " Meta State: " << (FirstDaughter->GetDefinition()->GetPDGEncoding() % 10) << G4endl; - } + G4cout << " -- First daughter product sampled" << G4endl; + G4FFG_SPACING__ + G4cout << " Name: " << FirstDaughter->GetDefinition()->GetParticleName() << G4endl; + G4FFG_SPACING__ + G4cout << " Z: " << FirstDaughter->GetDefinition()->GetAtomicNumber() << G4endl; + G4FFG_SPACING__ + G4cout << " A: " << FirstDaughter->GetDefinition()->GetAtomicMass() << G4endl; + G4FFG_SPACING__ + G4cout << " Meta State: " << (FirstDaughter->GetDefinition()->GetPDGEncoding() % 10) << G4endl; + } - GenerateNeutrons(Neutrons); + GenerateNeutrons(Neutrons); - // Now that all the nucleonic particles have been generated, we can - // calculate the composition of the second daughter product. - G4int NewIsotope = RemainingZ_ * 1000 + RemainingA_; - SecondDaughter = new G4ReactionProduct(GetParticleDefinition(NewIsotope, G4FFGEnumerations::GROUND_STATE)); - if(Verbosity_ & G4FFGEnumerations::DAUGHTER_INFO) - { - G4FFG_SPACING__ - G4FFG_LOCATION__ + // Now that all the nucleonic particles have been generated, we can + // calculate the composition of the second daughter product. + G4int NewIsotope = RemainingZ_ * 1000 + RemainingA_; + SecondDaughter = new G4ReactionProduct(GetParticleDefinition(NewIsotope, G4FFGEnumerations::GROUND_STATE)); + if (Verbosity_ & G4FFGEnumerations::DAUGHTER_INFO) { + G4FFG_SPACING__ + G4FFG_LOCATION__ - G4cout << " -- Second daughter product sampled" << G4endl; - G4FFG_SPACING__ - G4cout << " Name: " << SecondDaughter->GetDefinition()->GetParticleName() << G4endl; - G4FFG_SPACING__ - G4cout << " Z: " << SecondDaughter->GetDefinition()->GetAtomicNumber() << G4endl; - G4FFG_SPACING__ - G4cout << " A: " << SecondDaughter->GetDefinition()->GetAtomicMass() << G4endl; - G4FFG_SPACING__ - G4cout << " Meta State: " << (SecondDaughter->GetDefinition()->GetPDGEncoding() % 10) << G4endl; - } + G4cout << " -- Second daughter product sampled" << G4endl; + G4FFG_SPACING__ + G4cout << " Name: " << SecondDaughter->GetDefinition()->GetParticleName() << G4endl; + G4FFG_SPACING__ + G4cout << " Z: " << SecondDaughter->GetDefinition()->GetAtomicNumber() << G4endl; + G4FFG_SPACING__ + G4cout << " A: " << SecondDaughter->GetDefinition()->GetAtomicMass() << G4endl; + G4FFG_SPACING__ + G4cout << " Meta State: " << (SecondDaughter->GetDefinition()->GetPDGEncoding() % 10) << G4endl; + } // Calculate how much kinetic energy will be available // 195 to 205 MeV are available in a fission reaction, but about 20 MeV diff --git a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPChannel.cc b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPChannel.cc index 83dff320db..eef5916888 100644 --- a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPChannel.cc +++ b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPChannel.cc @@ -33,7 +33,9 @@ // // P. Arce, June-2014 Conversion neutron_hp to particle_hp // -// June-2019 - E. Mendoza --> Modification to allow using an incomplete data library if the G4NEUTRONHP_SKIP_MISSING_ISOTOPES environmental flag is defined. The missing XS are set to 0. +// June-2019 - E. Mendoza --> Modification to allow using an incomplete +// data library if the G4NEUTRONHP_SKIP_MISSING_ISOTOPES environmental +// flag is defined. The missing XS are set to 0. #include @@ -44,23 +46,22 @@ #include "G4ParticleHPFinalState.hh" #include "G4HadTmpUtil.hh" -#include "G4ParticleHPManager.hh" #include "G4ParticleHPReactionWhiteBoard.hh" - G4double G4ParticleHPChannel::GetXsec(G4double energy) - { - return std::max(0., theChannelData->GetXsec(energy)); - } +G4double G4ParticleHPChannel::GetXsec(G4double energy) +{ + return std::max(0., theChannelData->GetXsec(energy)); +} - G4double G4ParticleHPChannel::GetWeightedXsec(G4double energy, G4int isoNumber) - { - return theIsotopeWiseData[isoNumber].GetXsec(energy); - } +G4double G4ParticleHPChannel::GetWeightedXsec(G4double energy, G4int isoNumber) +{ + return theIsotopeWiseData[isoNumber].GetXsec(energy); +} - G4double G4ParticleHPChannel::GetFSCrossSection(G4double energy, G4int isoNumber) - { - return theFinalStates[isoNumber]->GetXsec(energy); - } +G4double G4ParticleHPChannel::GetFSCrossSection(G4double energy, G4int isoNumber) +{ + return theFinalStates[isoNumber]->GetXsec(energy); +} void G4ParticleHPChannel:: Init(G4Element * anElement, const G4String dirName, const G4String aFSType) diff --git a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPContAngularPar.cc b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPContAngularPar.cc index 4023330188..787716030a 100644 --- a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPContAngularPar.cc +++ b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPContAngularPar.cc @@ -57,6 +57,7 @@ #include "G4NucleiProperties.hh" #include "G4ParticleHPKallbachMannSyst.hh" #include "G4IonTable.hh" +#include "G4ParticleHPManager.hh" #include G4ParticleHPContAngularPar::G4ParticleHPContAngularPar( G4ParticleDefinition* projectile ) @@ -66,8 +67,8 @@ G4ParticleHPContAngularPar::G4ParticleHPContAngularPar( G4ParticleDefinition* pr fCache.Get()->currentMeanEnergy = -2; fCache.Get()->fresh = true; adjustResult = true; - if ( std::getenv( "G4PHP_DO_NOT_ADJUST_FINAL_STATE" ) ) adjustResult = false; - + if ( G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState() ) adjustResult = false; + theMinEner = DBL_MAX; theMaxEner = -DBL_MAX; theProjectile = projectile; @@ -81,7 +82,7 @@ G4ParticleHPContAngularPar::G4ParticleHPContAngularPar( G4ParticleDefinition* pr void G4ParticleHPContAngularPar::Init(std::istream & aDataFile, G4ParticleDefinition* projectile) { adjustResult = true; - if ( std::getenv( "G4PHP_DO_NOT_ADJUST_FINAL_STATE" ) ) adjustResult = false; + if ( G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState() ) adjustResult = false; theProjectile = projectile; diff --git a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPFissionFS.cc b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPFissionFS.cc index 2654e1003d..7b52b46e53 100644 --- a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPFissionFS.cc +++ b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPFissionFS.cc @@ -151,7 +151,7 @@ theFS.SampleNeutronMult(all, Prompt, delayed, eKinetic, 0); if(Prompt==0&&delayed==0) Prompt=all; theNeutrons = theFC.ApplyYourself(Prompt); // delayed always in FS - // take 'U' into account explicitely (see 5.4) in the sampling of energy @@@@ + // take 'U' into account explicitly (see 5.4) in the sampling of energy @@@@ break; case 1: theFS.SampleNeutronMult(all, Prompt, delayed, eKinetic, 1); diff --git a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelastic.cc b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelastic.cc index d364bf93c9..a87f117be1 100644 --- a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelastic.cc +++ b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelastic.cc @@ -83,7 +83,8 @@ G4ParticleHPInelastic::G4ParticleHPInelastic(G4ParticleDefinition* projectile, c //G4cout << " entering G4ParticleHPInelastic constructor"<GetParticleName() + " cross-section files." ); + G4String message("Please setenv G4PARTICLEHPDATA (recommended) or, at least setenv " + + G4String(dataDirVariable) + " to point to the " + theProjectile->GetParticleName() + " cross-section files." ); throw G4HadronicException(__FILE__, __LINE__,message.c_str()); } if ( std::getenv(dataDirVariable) ) { @@ -345,9 +346,7 @@ throw G4HadronicException(__FILE__, __LINE__, "Channel: Do not know what to do w const std::pair G4ParticleHPInelastic::GetFatalEnergyCheckLevels() const { // max energy non-conservation is mass of heavy nucleus -// if ( getenv("G4PHP_DO_NOT_ADJUST_FINAL_STATE") ) return std::pair(5*perCent,250*GeV); // This should be same to the hadron default value -// return std::pair(10*perCent,10*GeV); return std::pair(10*perCent,DBL_MAX); } @@ -501,7 +500,7 @@ void G4ParticleHPInelastic::BuildPhysicsTable(const G4ParticleDefinition& projec throw G4HadronicException(__FILE__, __LINE__,message.c_str()); } if(!std::getenv(dataDirVariable)){ - G4String message("Please set the environement variable " + G4String(dataDirVariable) + " to point to the " + projectile.GetParticleName() + " cross-section files."); + G4String message("Please set the environment variable " + G4String(dataDirVariable) + " to point to the " + projectile.GetParticleName() + " cross-section files."); throw G4HadronicException(__FILE__, __LINE__,message.c_str()); } dirName = std::getenv(dataDirVariable); @@ -512,8 +511,10 @@ void G4ParticleHPInelastic::BuildPhysicsTable(const G4ParticleDefinition& projec */ #ifdef G4VERBOSE - if ( G4HadronicParameters::Instance()->GetVerboseLevel() > 0 ) + if ( G4HadronicParameters::Instance()->GetVerboseLevel() > 0 ) { + hpmanager->DumpSetting(); G4cout << "@@@ G4ParticleHPInelastic instantiated for particle " << projectile.GetParticleName() << " data directory variable is " << dataDirVariable << " pointing to " << dirName << G4endl; + } #endif for (G4int i = numEle ; i < (G4int)G4Element::GetNumberOfElements(); i++) { diff --git a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelasticBaseFS.cc b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelasticBaseFS.cc index ad4d55f853..7bc222c331 100644 --- a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelasticBaseFS.cc +++ b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelasticBaseFS.cc @@ -327,7 +327,7 @@ void G4ParticleHPInelasticBaseFS::BaseApply(const G4HadProjectile & theTrack, { tmpHadrons = theEnergyAngData->Sample(eKinetic); - if ( !std::getenv( "G4PHP_DO_NOT_ADJUST_FINAL_STATE" ) ) { + if ( ! G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState() ) { //141017 Fix BEGIN //Adjust A and Z in the case of miss much between selected data and target nucleus if ( tmpHadrons != NULL ) { @@ -492,7 +492,7 @@ void G4ParticleHPInelasticBaseFS::BaseApply(const G4HadProjectile & theTrack, #ifdef PHP_AS_HP bAdjustPhotons = true; #else - if ( std::getenv( "G4PHP_DO_NOT_ADJUST_FINAL_STATE" ) ) bAdjustPhotons = false; + if ( G4ParticleHPManager::GetInstance()->GetDoNotAdjustFinalState() ) bAdjustPhotons = false; #endif if( bAdjustPhotons ) { diff --git a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelasticCompFS.cc b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelasticCompFS.cc index 9fd78ddd9e..b4aa7d57cd 100644 --- a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelasticCompFS.cc +++ b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelasticCompFS.cc @@ -32,7 +32,7 @@ // 080603 bug fix for Hadron Hyper News #932 by T. Koi // 080612 bug fix contribution from Benoit Pirard and Laurent Desorgher (Univ. Bern) #4,6 // 080717 bug fix of calculation of residual momentum by T. Koi -// 080801 protect negative avalable energy by T. Koi +// 080801 protect negative available energy by T. Koi // introduce theNDLDataA,Z which has A and Z of NDL data by T. Koi // 081024 G4NucleiPropertiesTable:: to G4NucleiProperties:: // 090514 Fix bug in IC electron emission case diff --git a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelasticData.cc b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelasticData.cc index ba20e26514..3421ee4c05 100644 --- a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelasticData.cc +++ b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPInelasticData.cc @@ -76,7 +76,8 @@ G4ParticleHPInelasticData::G4ParticleHPInelasticData(G4ParticleDefinition* proje SetName( dataName ); if ( !std::getenv(dataDirVariable) && !std::getenv( "G4PARTICLEHPDATA" ) ){ - G4String message("Please setenv " + G4String(dataDirVariable) + " to point to the " + projectile->GetParticleName() + " cross-section files."); + G4String message("Please setenv G4PARTICLEHPDATA (recommended) or, at least setenv " + + G4String(dataDirVariable) + " to point to the " + projectile->GetParticleName() + " cross-section files."); throw G4HadronicException(__FILE__, __LINE__,message.c_str()); } diff --git a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPManager.cc b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPManager.cc index ba5b7d17d8..0a544d72a0 100644 --- a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPManager.cc +++ b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPManager.cc @@ -36,6 +36,7 @@ #include "G4ParticleHPThreadLocalManager.hh" #include "G4ParticleHPMessenger.hh" #include "G4HadronicException.hh" +#include "G4Exception.hh" G4ParticleHPManager* G4ParticleHPManager::instance = 0; @@ -46,6 +47,7 @@ G4ParticleHPManager::G4ParticleHPManager() ,NEGLECT_DOPPLER(false) ,DO_NOT_ADJUST_FINAL_STATE(false) ,PRODUCE_FISSION_FRAGMENTS(false) +,USE_WENDT_FISSION_MODEL(false) ,USE_NRESP71_MODEL(false) ,theElasticCrossSections(0) ,theCaptureCrossSections(0) @@ -61,12 +63,73 @@ G4ParticleHPManager::G4ParticleHPManager() ,theTSInelasticFinalStates(0) { messenger = new G4ParticleHPMessenger( this ); - if ( std::getenv( "G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE" ) || std::getenv("G4PHP_DO_NOT_ADJUST_FINAL_STATE") ) DO_NOT_ADJUST_FINAL_STATE = true; - if ( std::getenv( "G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION" ) ) USE_ONLY_PHOTONEVAPORATION = true; - if ( std::getenv( "G4NEUTRONHP_NEGLECT_DOPPLER" ) || std::getenv("G4PHP_NEGLECT_DOPPLER") ) NEGLECT_DOPPLER = true; - if ( std::getenv( "G4NEUTRONHP_SKIP_MISSING_ISOTOPES" ) ) SKIP_MISSING_ISOTOPES = true; - if ( std::getenv( "G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS" ) ) PRODUCE_FISSION_FRAGMENTS = true; - if ( std::getenv( "G4PHP_USE_NRESP71_MODEL" ) ) USE_NRESP71_MODEL = true; + // The rest of this method will be removed in G4 11.0 + if ( std::getenv( "G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE" ) || + std::getenv( "G4PHP_DO_NOT_ADJUST_FINAL_STATE" ) ) { + DO_NOT_ADJUST_FINAL_STATE = true; + G4ExceptionDescription ed; + ed << "Environmental variables G4NEUTRONHP_DO_NOT_ADJUST_FINAL_STATE and \n" + << "G4PHP_DO_NOT_ADJUST_FINAL_STATE are valid but deprecated and will be replaced \n" + << "with the UI command: /process/had/particle_hp/do_not_adjust_final_state \n" + << "in the next major release, Geant4 version 11.0"; + G4Exception( "G4ParticleHPManager ", "HP_MAN_165", JustWarning, ed ); + } + if ( std::getenv( "G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION" ) ) { + USE_ONLY_PHOTONEVAPORATION = true; + G4ExceptionDescription ed; + ed << "Environmental variable G4NEUTRONHP_USE_ONLY_PHOTONEVAPORATION \n" + << "is valid but deprecated and will be replaced with the UI command: \n" + << "/process/had/particle_hp/use_photo_evaporation \n" + << "in the next major release, Geant4 version 11.0"; + G4Exception( "G4ParticleHPManager ", "HP_MAN_166", JustWarning, ed ); + } + if ( std::getenv( "G4NEUTRONHP_NEGLECT_DOPPLER" ) || + std::getenv( "G4PHP_NEGLECT_DOPPLER" ) ) { + NEGLECT_DOPPLER = true; + G4ExceptionDescription ed; + ed << "Environmental variables G4NEUTRONHP_NEGLECT_DOPPLER and G4PHP_NEGLECT_DOPPLER \n" + << "are valid but deprecated and will be replaced with the UI command: \n" + << "/process/had/particle_hp/neglect_Doppler_broadening \n" + << "in the next major release, Geant4 version 11.0"; + G4Exception( "G4ParticleHPManager ", "HP_MAN_167", JustWarning, ed ); + } + if ( std::getenv( "G4NEUTRONHP_SKIP_MISSING_ISOTOPES" ) ) { + SKIP_MISSING_ISOTOPES = true; + G4ExceptionDescription ed; + ed << "Environmental variable G4NEUTRONHP_SKIP_MISSING_ISOTOPES \n" + << "is valid but deprecated and will be replaced with the UI command: \n" + << "/process/had/particle_hp/skip_missing_isotopes \n" + << "in the next major release, Geant4 version 11.0"; + G4Exception( "G4ParticleHPManager ", "HP_MAN_168", JustWarning, ed ); + } + if ( std::getenv( "G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS" ) ) { + PRODUCE_FISSION_FRAGMENTS = true; + G4ExceptionDescription ed; + ed << "Environmental variable G4NEUTRONHP_PRODUCE_FISSION_FRAGMENTS \n" + << "is valid but deprecated and will be replaced with the UI command: \n" + << "/process/had/particle_hp/produce_fission_fragment \n" + << "in the next major release, Geant4 version 11.0"; + G4Exception( "G4ParticleHPManager ", "HP_MAN_169", JustWarning, ed ); + } + if ( std::getenv( "G4NEUTRON_HP_USE_WENDT_FISSION_MODEL" ) ) { + USE_WENDT_FISSION_MODEL = true; + // Make sure both fission fragment models are not active at same time + PRODUCE_FISSION_FRAGMENTS = false; + G4ExceptionDescription ed; + ed << "Environmental variable G4NEUTRON_HP_USE_WENDT_FISSION_MODEL \n" + << "is valid but deprecated and will be replaced with the UI command: \n" + << "/process/had/particle_hp/use_Wendt_fission_model \n" + << "in the next major release, Geant4 version 11.0"; + G4Exception( "G4ParticleHPManager ", "HP_MAN_170", JustWarning, ed ); + } + if ( std::getenv( "G4PHP_USE_NRESP71_MODEL" ) ) { + USE_NRESP71_MODEL = true; + G4ExceptionDescription ed; + ed << "Environmental variable G4PHP_USE_NRESP71_MODEL is valid but deprecated and \n" + << "will be replaced with the UI command: /process/had/particle_hp/use_NRESP71_model \n" + << "in the next major release, Geant4 version 11.0"; + G4Exception( "G4ParticleHPManager ", "HP_MAN_171", JustWarning, ed ); + } } G4ParticleHPManager::~G4ParticleHPManager() @@ -255,3 +318,20 @@ void G4ParticleHPManager::RegisterInelasticFinalStates( const G4ParticleDefiniti { theInelasticFSs.insert ( std::pair*>( particle , val ) ); } + + +void G4ParticleHPManager::DumpSetting() { + G4cout << G4endl + << "=======================================================" << G4endl + << "====== ParticleHP Physics Parameters ========" << G4endl + << "=======================================================" << G4endl + << " UseOnlyPhotoEvaporation ? " << USE_ONLY_PHOTONEVAPORATION << G4endl + << " SkipMissingIsotopes ? " << SKIP_MISSING_ISOTOPES << G4endl + << " NeglectDoppler ? " << NEGLECT_DOPPLER << G4endl + << " DoNotAdjustFinalState ? " << DO_NOT_ADJUST_FINAL_STATE << G4endl + << " ProduceFissionFragments ? " << PRODUCE_FISSION_FRAGMENTS << G4endl + << " UseWendtFissionModel ? " << USE_WENDT_FISSION_MODEL << G4endl + << " UseNRESP71Model ? " << USE_NRESP71_MODEL << G4endl + << "=======================================================" << G4endl + << G4endl; +} diff --git a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPMessenger.cc b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPMessenger.cc index 8ed485d360..ca93c5fd7d 100644 --- a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPMessenger.cc +++ b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPMessenger.cc @@ -68,6 +68,12 @@ G4ParticleHPMessenger::G4ParticleHPMessenger( G4ParticleHPManager* man ) ProduceFissionFragementCmd->SetCandidates("true false"); ProduceFissionFragementCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + WendtFissionModelCmd = new G4UIcmdWithAString("/process/had/particle_hp/use_Wendt_fission_model",this); + WendtFissionModelCmd->SetGuidance("Enable use of Wendt fission model."); + WendtFissionModelCmd->SetParameterName("choice",false); + WendtFissionModelCmd->SetCandidates("true false"); + WendtFissionModelCmd->AvailableForStates(G4State_PreInit,G4State_Idle); + NRESP71Cmd = new G4UIcmdWithAString("/process/had/particle_hp/use_NRESP71_model",this); NRESP71Cmd->SetGuidance("Enable to use NRESP71 model for n on C reaction"); NRESP71Cmd->SetParameterName("choice",false); @@ -90,6 +96,8 @@ G4ParticleHPMessenger::~G4ParticleHPMessenger() delete NeglectDopplerCmd; delete DoNotAdjustFSCmd; delete ProduceFissionFragementCmd; + delete WendtFissionModelCmd; + delete NRESP71Cmd; delete VerboseCmd; } @@ -113,6 +121,11 @@ void G4ParticleHPMessenger::SetNewValue(G4UIcommand* command,G4String newValue) if ( command == ProduceFissionFragementCmd ) { manager->SetProduceFissionFragments( bValue ); } + if ( command == WendtFissionModelCmd ) { + manager->SetUseWendtFissionModel( bValue ); + // Make sure both fission fragment models are not active at same time + if ( bValue ) manager->SetProduceFissionFragments( false ); + } if ( command == NRESP71Cmd ) { manager->SetUseNRESP71Model( bValue ); } diff --git a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPPhotonDist.cc b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPPhotonDist.cc index 09954c66b1..d2de88d68a 100644 --- a/source/processes/hadronic/models/particle_hp/src/G4ParticleHPPhotonDist.cc +++ b/source/processes/hadronic/models/particle_hp/src/G4ParticleHPPhotonDist.cc @@ -369,7 +369,7 @@ G4ReactionProductVector * G4ParticleHPPhotonDist::GetPhotons(G4double anEnergy) thePhotons->operator[](count)->SetKineticEnergy(energy[i]); } count++; - if (count > nSecondaries) throw G4HadronicException(__FILE__, __LINE__, "G4ParticleHPPhotonDist::GetPhotons inconsistancy"); + if (count > nSecondaries) throw G4HadronicException(__FILE__, __LINE__, "G4ParticleHPPhotonDist::GetPhotons inconsistency"); } } else { // nDiscrete != 1 or nPartials != 1 @@ -400,7 +400,7 @@ G4ReactionProductVector * G4ParticleHPPhotonDist::GetPhotons(G4double anEnergy) thePhotons->operator[](count)->SetKineticEnergy(energy[i]); } count++; - if (count > nSecondaries) throw G4HadronicException(__FILE__, __LINE__, "G4ParticleHPPhotonDist::GetPhotons inconsistancy"); + if (count > nSecondaries) throw G4HadronicException(__FILE__, __LINE__, "G4ParticleHPPhotonDist::GetPhotons inconsistency"); } } } @@ -428,7 +428,7 @@ G4ReactionProductVector * G4ParticleHPPhotonDist::GetPhotons(G4double anEnergy) { if (std::abs(currentEnergy-theGammas[ii])<0.1*keV) break; } - if(ii==nDiscrete2) ii--; // fix for what seems an (file12 vs file 14) inconsistancy found in the ENDF 7N14 data. @@ + if(ii==nDiscrete2) ii--; // fix for what seems an (file12 vs file 14) inconsistency found in the ENDF 7N14 data. @@ if(ii "++i"; cleaned-up sampling of Pt + for residual nucleons - limit argument for G4Exp by 200 instead of 1e+9 + +29-Sep-2020 A. Ribon (hadr-string-diff-V10-06-07) +- G4DiffractiveExcitation : Vladimir Uzhinsky's implementation of a + new splitting of excited hadrons into quark-antiquark or quark-diquark + in the method CreateStrings. + Other code improvements of this class were also introduced by + Vladimir Uzhinsky. + +21-Sep-2020 J. Yarba (hadr-string-diff-V10-06-06) +- G4FTFParameters.cc : extend FTF configuration interface + to include parameters of quark exchange with and/or without + excitation, for baryon and pion projectiles + +16-Sep-2020 A. Ribon (hadr-string-diff-V10-06-05) +- G4FTFModel : quasi-elastic is not applied any longer when the target + nucleus has one nucleon and the projectile hadron is not an ion. + This avoids to double count elastic scattering (as reported by + by Daria Prokhorova of NA61/SHINE in 158 GeV/c proton interactions + on liquid hydrogen: see bug report #2274). + +08-Sep-2020 A. Ribon (hadr-string-diff-V10-06-04) +- G4FTFAnnihilation : added initialization of 2-dimensional arrays as + suggested by Coverity. Used consistently pre-increment instead of + post-increment. + +28-Jul-2020 A. Ribon (hadr-string-diff-V10-06-03) +- G4DiffractiveExcitation : add protection against inexisting in Geant4 + excited hyperon states (Sigma* and Xi*). +- G4FTFAnnihilation : removed useless check against inexisting in + either PDG (Lambda*) or Geant4 (Sigma* and Xi*) excited hyperon + states. + +24-Jul-2020 A. Ribon (hadr-string-diff-V10-06-02) +- G4DiffractiveExcitation : extended for handling heavy (charm and + bottom) hadrons; introduced also a new pre-processor option for + debugging heavy hadrons, switched off by default. + 08-Mar-2020 V. Ivanchenko (hadr-string-diff-V10-06-01) - G4FTFModel, G4FTFParticipants - clean-up: removed unused methods, delete operators, use C++11 keywords diff --git a/source/processes/hadronic/models/parton_string/diffraction/sources.cmake b/source/processes/hadronic/models/parton_string/diffraction/sources.cmake index db737ab007..748f89a00e 100644 --- a/source/processes/hadronic/models/parton_string/diffraction/sources.cmake +++ b/source/processes/hadronic/models/parton_string/diffraction/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_string.G4had_string_diff # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,39 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4had_string_diff HEADERS G4DiffractiveExcitation.hh diff --git a/source/processes/hadronic/models/parton_string/diffraction/src/G4DiffractiveExcitation.cc b/source/processes/hadronic/models/parton_string/diffraction/src/G4DiffractiveExcitation.cc index fec14f6c69..9ac1965d9f 100644 --- a/source/processes/hadronic/models/parton_string/diffraction/src/G4DiffractiveExcitation.cc +++ b/source/processes/hadronic/models/parton_string/diffraction/src/G4DiffractiveExcitation.cc @@ -72,7 +72,7 @@ //============================================================================ //#define debugFTFexictation - +//#define debug_heavyHadrons //============================================================================ @@ -292,13 +292,13 @@ G4bool G4DiffractiveExcitation::ExciteParticipants( G4VSplitableHadron* proje common.TargetNonDiffStateMinMass2 = sqr( common.TargetNonDiffStateMinMass ); // Choose between diffraction and non-diffraction process if ( G4UniformRand() < common.ProbOfDiffraction ) { - + returnResult = ExciteParticipants_doDiffraction( projectile, target, theParameters, common ); - + } else { - + returnResult = ExciteParticipants_doNonDiffraction( projectile, target, theParameters, common ); - + } if ( returnResult ) { common.Pprojectile += common.Qmomentum; @@ -343,6 +343,17 @@ ExciteParticipants_doChargeExchange( G4VSplitableHadron* projectile, #ifdef debugFTFexictation G4cout << "Q exchange --------------------------" << G4endl; #endif + + // The target hadron is always a nucleon (i.e. either a proton or a neutron, + // never an antinucleon), therefore only a quark (not an antiquark) can be + // exchanged between the projectile hadron and the target hadron (otherwise + // we could get a quark-quark-antiquark system which cannot be a bound state). + // This implies that any projectile meson or anti-meson - given that it has + // a constituent quark in all cases - can have charge exchange with a target + // hadron. Instead, any projectile anti-baryon can never have charge exchange + // with a target hadron (because it has only constituent anti-quarks); + // projectile baryons, instead can have charge exchange with a target hadron. + G4int NewProjCode = 0, NewTargCode = 0, ProjQ1 = 0, ProjQ2 = 0, ProjQ3 = 0; // Projectile unpacking if ( common.absProjectilePDGcode < 1000 ) { // projectile is meson @@ -357,7 +368,7 @@ ExciteParticipants_doChargeExchange( G4VSplitableHadron* projectile, G4cout << "Proj Quarks " << ProjQ1 << " " << ProjQ2 << " " << ProjQ3 << G4endl << "Targ Quarks " << TargQ1 << " " << TargQ2 << " " << TargQ3 << G4endl; #endif - + // Sampling of exchanged quarks G4int ProjExchangeQ = 0, TargExchangeQ = 0; if ( common.absProjectilePDGcode < 1000 ) { // projectile is meson @@ -406,20 +417,24 @@ ExciteParticipants_doChargeExchange( G4VSplitableHadron* projectile, // Determination of a new projectile ID which satisfies energy-momentum conservation G4double Ksi = G4UniformRand(); if ( aProjQ1 == aProjQ2 ) { - if ( aProjQ1 != 3 ) { + if ( aProjQ1 < 3 ) { NewProjCode = 111; // Pi0-meson if ( Ksi < 0.5 ) { - NewProjCode = 221; // Eta -meson + NewProjCode = 221; // Eta-meson if ( Ksi < 0.25 ) { NewProjCode = 331; // Eta'-meson } } - } else { - NewProjCode = 221; // Eta -meson + } else if ( aProjQ1 == 3 ) { + NewProjCode = 221; // Eta-meson if ( Ksi < 0.5 ) { NewProjCode = 331; // Eta'-meson } - } + } else if ( aProjQ1 == 4 ) { + NewProjCode = 441; // Eta_c + } else if ( aProjQ1 == 5 ) { + NewProjCode = 553; // Upsilon + } } else { if ( aProjQ1 > aProjQ2 ) { NewProjCode = aProjQ1*100 + aProjQ2*10 + 1; @@ -430,25 +445,47 @@ ExciteParticipants_doChargeExchange( G4VSplitableHadron* projectile, #ifdef debugFTFexictation G4cout << "NewProjCode " << NewProjCode << G4endl; #endif + // Decide (with 50% probability) whether the projectile hadrons is excited, + // but not in the case of charmed and bottom hadrons (because in Geant4 + // there are no excited charmed and bottom states). ProjExcited = false; - if ( G4UniformRand() < 0.5 ) { + if ( aProjQ1 <= 3 && aProjQ2 <= 3 && G4UniformRand() < 0.5 ) { NewProjCode += 2; // Excited meson (J=1 -> 2*J+1=2+1=3, last digit of the PDG code) ProjExcited = true; } + // So far we have used the absolute values of the PDG codes of the two constituent quarks: // now look at their signed values to set properly the signed of the meson's PDG code. - G4int value = ProjQ1, absValue = aProjQ1, Qquarks = 0; - for ( G4int iQuark = 0; iQuark < 2; iQuark++ ) { - if ( iQuark == 1 ) { + G4int value = ProjQ1, absValue = aProjQ1, Qquarks = 0; + for ( G4int iQ = 0; iQ < 2; ++iQ ) { // 0 : first quark; 1 : second quark + if ( iQ == 1 ) { value = ProjQ2; absValue = aProjQ2; } - if ( absValue == 2 ) { - Qquarks += value; // u or ubar : u-quark is positively charged +2 (e/3 unit) + if ( absValue == 2 || absValue == 4 ) { // u or c + Qquarks += 2*value/absValue; // u, c : positively charged +2 (e/3 unit) } else { - Qquarks -= value/absValue; // d or dbar or s or sbar : d- or s-quark is negatively charged -1 (e/3 unit) + Qquarks -= value/absValue; // d, s, b : negatively charged -1 (e/3 unit) } } - if ( Qquarks < 0 ) NewProjCode *= -1; + // If Qquarks is positive, the sign of NewProjCode is fine. + // If Qquarks is negative, then the sign of NewProjCode needs to be reversed. + // If Qquarks is zero, then we need to distinguish between 3 cases: + // 1. If aProjQ1 and aProjQ2 are the same, then the sign of NewProjCode is fine + // (because the antiparticle is the same as the particle, e.g. eta, eta'). + // 2. If aProjQ1 and aProjQ2 are not the same, given that Qquarks is zero, + // we have only two possibilities: + // a. aProjQ1 and aProjQ2 are two different down-type quarks, i.e. + // (s,d) or (b,d), or (b,s). In this case, the sign of NewProjCode + // is fine (because the heaviest of the two down-type quarks has + // to be anti-quark belonging to the initial projectile, which + // implies a meson with positive PDG code, e.g. B0 (bbar,d), Bs (bbar,s). + // b. aProjQ1 and aProjQ2 are two different up-type quarks, i.e. (u,c). + // The heaviest of the two (c) has to be an anti-quark (cbar) left + // in the projectile, therefore the sign of NewProjCode needs to be + // reverse: 421 -> -421 anti_D0 (cbar,u) + if ( Qquarks < 0 || ( Qquarks == 0 && aProjQ1 != aProjQ2 && aProjQ1%2 == 0 ) ) { + NewProjCode *= -1; + } #ifdef debugFTFexictation G4cout << "NewProjCode +2 or 0 " << NewProjCode << G4endl; G4cout<<"+++++++++++++++++++++++++++++++++++++++"<GetDefinition()->GetPDGiIsospin() == 3 ) { // Delta was the target + if ( G4UniformRand() > DeltaProbAtQuarkExchange ) { + NewTargCode += 2; ProjExcited = true; + } + } else if ( ! ProjExcited && + G4UniformRand() < DeltaProbAtQuarkExchange && // Nucleon was the target + common.SqrtS > common.M0projectile + // Delta mass + G4ParticleTable::GetParticleTable()->FindParticle( 2224 )->GetPDGMass() ) { + NewTargCode += 2; // Create Delta isobar } - } else if ( TargQ1 == TargQ2 && TargQ1 == TargQ3 ) { - NewTargCode += 2; ProjExcited = true; // Create Delta isobar - } else if ( target->GetDefinition()->GetPDGiIsospin() == 3 ) { // Delta was the target - if ( G4UniformRand() > DeltaProbAtQuarkExchange ) { - NewTargCode += 2; ProjExcited = true; - } - } else if ( ! ProjExcited && - G4UniformRand() < DeltaProbAtQuarkExchange && // Nucleon was the target - common.SqrtS > common.M0projectile + // Delta mass - G4ParticleTable::GetParticleTable()->FindParticle( 2224 )->GetPDGMass() ) { - NewTargCode += 2; // Create Delta isobar } + + // Protection against: + // - Lambda* (i.e. excited Lambda state) NOT existing in PDG , -> Lambda + // - Sigma* (i.e. excited Sigma hyperon states) NOT existing in Geant4 -> Sigma + // - Xi* (i.e. excited Xi hyperon states) NOT existing in Geant4 -> Xi + if ( NewTargCode == 3124 || // Lambda* NOT existing in PDG ! + NewTargCode == 3224 || // Sigma*+ NOT existing in Geant4 + NewTargCode == 3214 || // Sigma*0 NOT existing in Geant4 + NewTargCode == 3114 || // Sigma*- NOT existing in Geant4 + NewTargCode == 3324 || // Xi*0 NOT existing in Geant4 + NewTargCode == 3314 ) { // Xi*- NOT existing in Geant4 + //G4cout << "G4DiffractiveExcitation::ExciteParticipants_doChargeExchange INEXISTING TARGET PDGcode=" + // << NewTargCode << G4endl; + NewTargCode -= 2; // Corresponding ground-state hyperon + } + + // Special treatment for charmed and bottom baryons : in Geant4 there are no Xi_c' and Xi_b' + // so we need to transform them by hand to Xi_c and Xi_b, respectively. + #ifdef debug_heavyHadrons + G4int initialNewTargCode = NewTargCode; + #endif + if ( NewTargCode == 4322 ) NewTargCode = 4232; // Xi_c'+ -> Xi_c+ + else if ( NewTargCode == 4312 ) NewTargCode = 4132; // Xi_c'0 -> Xi_c0 + else if ( NewTargCode == 5312 ) NewTargCode = 5132; // Xi_b'- -> Xi_b- + else if ( NewTargCode == 5322 ) NewTargCode = 5232; // Xi_b'0 -> Xi_b0 + #ifdef debug_heavyHadrons + if ( NewTargCode != initialNewTargCode ) { + G4cout << "G4DiffractiveExcitation::ExciteParticipants_doChargeExchange : forcing (inexisting in G4)" << G4endl + << "\t target heavy baryon with pdgCode=" << initialNewTargCode + << " into pdgCode=" << NewTargCode << G4endl; + } + #endif + TestParticle = G4ParticleTable::GetParticleTable()->FindParticle( NewTargCode ); if ( ! TestParticle ) continue; #ifdef debugFTFexictation @@ -530,6 +605,11 @@ ExciteParticipants_doChargeExchange( G4VSplitableHadron* projectile, } else { // of the if ( common.absProjectilePDGcode < 1000 ) ; the projectile is baryon now + // If it is a projectile anti-baryon, no quark exchange is possible with a target hadron, + // therefore returns immediately 1 (which means "successfully completed, but the work + // needs to be continued"). + if ( common.ProjectilePDGcode < 0 ) return 1; + // Choose randomly, with equal probability, whether to consider the quarks of the // projectile or target hadron for selecting the flavour of the exchanged quark. G4bool isProjectileExchangedQ = false; @@ -567,9 +647,9 @@ ExciteParticipants_doChargeExchange( G4VSplitableHadron* projectile, if ( exchangedQ != otherSecondQ || G4UniformRand() < probSame ) { otherExchangedQ = otherSecondQ; otherSecondQ = exchangedQ; exchangedQ = otherExchangedQ; } else { - //ALB if ( exchangedQ != otherThirdQ || G4UniformRand() < probSame ) { - otherExchangedQ = otherThirdQ; otherThirdQ = exchangedQ; exchangedQ = otherExchangedQ; - //ALB } + if ( exchangedQ != otherThirdQ || G4UniformRand() < probSame ) { + otherExchangedQ = otherThirdQ; otherThirdQ = exchangedQ; exchangedQ = otherExchangedQ; + } } } } while ( otherExchangedQ == 0 && ++count < MaxCount ); @@ -601,6 +681,9 @@ ExciteParticipants_doChargeExchange( G4VSplitableHadron* projectile, // then decide whether the new target hadron is a Delta particle. // Notice that a Delta particle has the last PDG digit "4" (because its spin is 3/2), // whereas a nucleon has "2" (because its spin is 1/2). + // If the new projectile hadron or the new target hadron has a heavy (c or b) + // constituent quark, then skip this part (because Geant4 does not have + // excited charm and bottom hadrons). for ( G4int iHadron = 0; iHadron < 2; iHadron++ ) { // First projectile hadron, then target hadron G4int codeQ1 = ProjQ1, codeQ2 = ProjQ2, codeQ3 = ProjQ3, newHadCode = NewProjCode; @@ -611,6 +694,7 @@ ExciteParticipants_doChargeExchange( G4VSplitableHadron* projectile, massConstraint = common.M0projectile; isHadronADelta = ( target->GetDefinition()->GetPDGiIsospin() == 3 ); } + if ( codeQ1 > 3 || codeQ2 > 3 || codeQ3 > 3 ) continue; // No excited charm or bottom states in Geant4 if ( codeQ1 == codeQ2 && codeQ1 == codeQ3 ) { // The three quarks are the same newHadCode += 2; // Delta++ (uuu) or Delta- (ddd) : spin 3/2, last PDG digit = 4 (so +2 wrt p or n) } else if ( isHadronADelta ) { // Hadron (projectile or target) was Delta @@ -627,7 +711,7 @@ ExciteParticipants_doChargeExchange( G4VSplitableHadron* projectile, } else { newHadCode += 0; // No delta (so the last PDG digit remains 2) } - } + } if ( iHadron == 0 ) { // Projectile hadron NewProjCode = newHadCode; } else { // Target hadron @@ -638,8 +722,58 @@ ExciteParticipants_doChargeExchange( G4VSplitableHadron* projectile, G4cout << "NewProjCode NewTargCode " << NewProjCode << " " << NewTargCode << G4endl; #endif - if ( common.absProjectilePDGcode == NewProjCode && common.absTargetPDGcode == NewTargCode ) { - } // Nothing was changed! It is not right!? + // Protection against: + // - Lambda* (i.e. excited Lambda state) NOT existing in PDG , -> Lambda + // - Sigma* (i.e. excited Sigma hyperon states) NOT existing in Geant4 -> Sigma + // - Xi* (i.e. excited Xi hyperon states) NOT existing in Geant4 -> Xi + if ( NewProjCode == 3124 || // Lambda* NOT existing in PDG ! + NewProjCode == 3224 || // Sigma*+ NOT existing in Geant4 + NewProjCode == 3214 || // Sigma*0 NOT existing in Geant4 + NewProjCode == 3114 || // Sigma*- NOT existing in Geant4 + NewProjCode == 3324 || // Xi*0 NOT existing in Geant4 + NewProjCode == 3314 ) { // Xi*- NOT existing in Geant4 + //G4cout << "G4DiffractiveExcitation::ExciteParticipants_doChargeExchange INEXISTING PROJECTILE PDGcode=" + // << NewProjCode << G4endl; + NewProjCode -= 2; // Corresponding ground-state hyperon + } + if ( NewTargCode == 3124 || // Lambda* NOT existing in PDG ! + NewTargCode == 3224 || // Sigma*+ NOT existing in Geant4 + NewTargCode == 3214 || // Sigma*0 NOT existing in Geant4 + NewTargCode == 3114 || // Sigma*- NOT existing in Geant4 + NewTargCode == 3324 || // Xi*0 NOT existing in Geant4 + NewTargCode == 3314 ) { // Xi*- NOT existing in Geant4 + //G4cout << "G4DiffractiveExcitation::ExciteParticipants_doChargeExchange INEXISTING TARGET PDGcode=" + // << NewTargCode << G4endl; + NewTargCode -= 2; // Corresponding ground-state hyperon + } + + // Special treatment for charmed and bottom baryons : in Geant4 there are no Xi_c' and Xi_b' + // so we need to transform them by hand to the, respectively, Xi_c and Xi_b. + #ifdef debug_heavyHadrons + G4int initialNewProjCode = NewProjCode, initialNewTargCode = NewTargCode; + #endif + if ( NewProjCode == 4322 ) NewProjCode = 4232; // Xi_c'+ -> Xi_c+ + else if ( NewProjCode == 4312 ) NewProjCode = 4132; // Xi_c'0 -> Xi_c0 + else if ( NewProjCode == 5312 ) NewProjCode = 5132; // Xi_b'- -> Xi_b- + else if ( NewProjCode == 5322 ) NewProjCode = 5232; // Xi_b'0 -> Xi_b0 + if ( NewTargCode == 4322 ) NewTargCode = 4232; // Xi_c'+ -> Xi_c+ + else if ( NewTargCode == 4312 ) NewTargCode = 4132; // Xi_c'0 -> Xi_c0 + else if ( NewTargCode == 5312 ) NewTargCode = 5132; // Xi_b'- -> Xi_b- + else if ( NewTargCode == 5322 ) NewTargCode = 5232; // Xi_b'0 -> Xi_b0 + #ifdef debug_heavyHadrons + if ( NewProjCode != initialNewProjCode || NewTargCode != initialNewTargCode ) { + G4cout << "G4DiffractiveExcitation::ExciteParticipants_doChargeExchange : forcing (inexisting in G4)" << G4endl + << "\t heavy baryon into an existing one:" << G4endl; + if ( NewProjCode != initialNewProjCode ) { + G4cout << "\t \t projectile baryon with pdgCode=" << initialNewProjCode + << " into pdgCode=" << NewProjCode << G4endl; + } + if ( NewTargCode != initialNewTargCode ) { + G4cout << "\t \t target baryon with pdgCode=" << initialNewTargCode + << " into pdgCode=" << NewTargCode << G4endl; + } + } + #endif // Sampling of the masses of the projectile and target nucleons. // Because of energy conservation, the ordering of the sampling matters: @@ -734,7 +868,7 @@ ExciteParticipants_doChargeExchange( G4VSplitableHadron* projectile, << common.SqrtS << G4endl << "PZcms2 after the change " << common.PZcms2 << G4endl << G4endl; #endif - if ( common.PZcms2 < 0.0 ) return returnCode; // It can be if energy is not sufficient for Delta + if ( common.PZcms2 < 0.0 ) return returnCode; // It can be if energy is not sufficient for Delta; // unsuccessfully ended, nothing else can be done projectile->SetDefinition( G4ParticleTable::GetParticleTable()->FindParticle( NewProjCode ) ); target->SetDefinition( G4ParticleTable::GetParticleTable()->FindParticle( NewTargCode ) ); @@ -818,6 +952,15 @@ ExciteParticipants_doDiffraction( G4VSplitableHadron* projectile, G4VSplitableHa common.TargMassT = common.TargetDiffStateMinMass; } + // Check whether the interaction is possible + if ( common.SqrtS < common.ProjMassT + common.TargMassT ) return false; + + common.PZcms2 = ( sqr( common.S ) + sqr( common.ProjMassT2 ) + sqr( common.TargMassT2 ) + - 2.0 * ( common.S * ( common.ProjMassT2 + common.TargMassT2 ) + + common.ProjMassT2 * common.TargMassT2 ) ) / 4.0 / common.S; + if ( common.PZcms2 < 0.0 ) return false; + common.maxPtSquare = common.PZcms2; + G4double DiffrAveragePt2 = theParameters->GetAvaragePt2ofElasticScattering()*1.2; G4bool loopCondition = true; G4int whilecount = 0; @@ -829,15 +972,6 @@ ExciteParticipants_doDiffraction( G4VSplitableHadron* projectile, G4VSplitableHa return false; // Ignore this interaction }; - // Check that the interaction is possible - if ( common.SqrtS < common.ProjMassT + common.TargMassT ) return false; - - common.PZcms2 = ( sqr( common.S ) + sqr( common.ProjMassT2 ) + sqr( common.TargMassT2 ) - - 2.0 * ( common.S * ( common.ProjMassT2 + common.TargMassT2 ) - + common.ProjMassT2 * common.TargMassT2 ) ) / 4.0 / common.S; - if ( common.PZcms2 < 0.0 ) return false; - - common.maxPtSquare = common.PZcms2; common.Qmomentum = G4LorentzVector( GaussianPt( DiffrAveragePt2, common.maxPtSquare ), 0 ); common.Pt2 = G4ThreeVector( common.Qmomentum.vect() ).mag2(); if ( isProjectileDiffraction ) { // projectile diffraction @@ -910,6 +1044,19 @@ ExciteParticipants_doNonDiffraction( G4VSplitableHadron* projectile, #ifdef debugFTFexictation G4cout << "Non-diffraction process" << G4endl; #endif + + // Check whether the interaction is possible + common.ProjMassT2 = common.ProjectileNonDiffStateMinMass2; + common.ProjMassT = common.ProjectileNonDiffStateMinMass; + common.TargMassT2 = common.TargetNonDiffStateMinMass2; + common.TargMassT = common.TargetNonDiffStateMinMass; + if ( common.SqrtS < common.ProjMassT + common.TargMassT ) return false; + + common.PZcms2 = ( sqr( common.S ) + sqr( common.ProjMassT2 ) + sqr( common.TargMassT2 ) + - 2.0 * ( common.S * ( common.ProjMassT2 + common.TargMassT2 ) + + common.ProjMassT2 * common.TargMassT2 ) ) / 4.0 / common.S; + common.maxPtSquare = common.PZcms2; + G4int whilecount = 0; do { // Generate pt and masses @@ -919,19 +1066,6 @@ ExciteParticipants_doNonDiffraction( G4VSplitableHadron* projectile, return false; // Ignore this interaction }; - // Check that the interaction is possible - common.ProjMassT2 = common.ProjectileNonDiffStateMinMass2; - common.ProjMassT = common.ProjectileNonDiffStateMinMass; - common.TargMassT2 = common.TargetNonDiffStateMinMass2; - common.TargMassT = common.TargetNonDiffStateMinMass; - if ( common.SqrtS < common.ProjMassT + common.TargMassT ) return false; - - common.PZcms2 = ( sqr( common.S ) + sqr( common.ProjMassT2 ) + sqr( common.TargMassT2 ) - - 2.0 * ( common.S * ( common.ProjMassT2 + common.TargMassT2 ) - + common.ProjMassT2 * common.TargMassT2 ) ) / 4.0 / common.S; - if ( common.PZcms2 < 0.0 ) return false; - - common.maxPtSquare = common.PZcms2; common.Qmomentum = G4LorentzVector( GaussianPt( theParameters->GetAveragePt2(), common.maxPtSquare ), 0 ); common.Pt2 = G4ThreeVector( common.Qmomentum.vect() ).mag2(); @@ -951,16 +1085,31 @@ ExciteParticipants_doNonDiffraction( G4VSplitableHadron* projectile, common.PMinusMax = common.SqrtS - common.TargMassT; common.TPlusMin = std::sqrt( common.TargMassT2 + common.PZcms2 ) - common.PZcms; common.TPlusMax = common.SqrtS - common.ProjMassT; - if ( G4UniformRand() < theParameters->GetProbLogDistrPrD() ) { - common.PMinusNew = ChooseP( common.PMinusMin, common.PMinusMax ); + + if ( G4UniformRand() <= 0.5 ) { // Random choice projectile or target sampling + if ( G4UniformRand() < theParameters->GetProbLogDistrPrD() ) { + common.PMinusNew = ChooseP( common.PMinusMin, common.PMinusMax ); + } else { + common.PMinusNew = ( common.PMinusMax - common.PMinusMin )*G4UniformRand() + common.PMinusMin; + } + if ( G4UniformRand() < theParameters->GetProbLogDistr() ) { + common.TPlusNew = ChooseP( common.TPlusMin, common.TPlusMax ); + } else { + common.TPlusNew = ( common.TPlusMax - common.TPlusMin )*G4UniformRand() + common.TPlusMin; + } } else { - common.PMinusNew = ( common.PMinusMax - common.PMinusMin )*G4UniformRand() + common.PMinusMin; + if ( G4UniformRand() < theParameters->GetProbLogDistr() ) { + common.TPlusNew = ChooseP( common.TPlusMin, common.TPlusMax ); + } else { + common.TPlusNew = ( common.TPlusMax - common.TPlusMin )*G4UniformRand() + common.TPlusMin; + } + if ( G4UniformRand() < theParameters->GetProbLogDistrPrD() ) { + common.PMinusNew = ChooseP( common.PMinusMin, common.PMinusMax ); + } else { + common.PMinusNew = ( common.PMinusMax - common.PMinusMin )*G4UniformRand() + common.PMinusMin; + } } - if ( G4UniformRand() < theParameters->GetProbLogDistr() ) { - common.TPlusNew = ChooseP( common.TPlusMin, common.TPlusMax ); - } else { - common.TPlusNew = ( common.TPlusMax - common.TPlusMin )*G4UniformRand() + common.TPlusMin; - } + common.Qminus = common.PMinusNew - common.Pprojectile.minus(); common.Qplus = -( common.TPlusNew - common.Ptarget.plus() ); common.Qmomentum.setPz( (common.Qplus - common.Qminus)/2.0 ); @@ -1068,13 +1217,15 @@ void G4DiffractiveExcitation::CreateStrings( G4VSplitableHadron* hadron, //x2 = 2.0 - x1 - x3; G4double Mass_startQ = 650.0*MeV; - if ( PDGcode_startQ < 3 ) Mass_startQ = 325.0*MeV; - if ( PDGcode_startQ == 3 ) Mass_startQ = 500.0*MeV; - if ( PDGcode_startQ == 4 ) Mass_startQ = 1600.0*MeV; + if ( PDGcode_startQ < 3 ) Mass_startQ = 325.0*MeV; // For constituent up or down quark + if ( PDGcode_startQ == 3 ) Mass_startQ = 500.0*MeV; // For constituent strange quark + if ( PDGcode_startQ == 4 ) Mass_startQ = 1600.0*MeV; // For constituent charm quark + if ( PDGcode_startQ == 5 ) Mass_startQ = 4500.0*MeV; // For constituent bottom quark G4double Mass_endQ = 650.0*MeV; - if ( PDGcode_endQ < 3 ) Mass_endQ = 325.0*MeV; - if ( PDGcode_endQ == 3 ) Mass_endQ = 500.0*MeV; - if ( PDGcode_endQ == 4 ) Mass_endQ = 1600.0*MeV; + if ( PDGcode_endQ < 3 ) Mass_endQ = 325.0*MeV; // For constituent up or down quark + if ( PDGcode_endQ == 3 ) Mass_endQ = 500.0*MeV; // For constituent strange quark + if ( PDGcode_endQ == 4 ) Mass_endQ = 1600.0*MeV; // For constituent charm quark + if ( PDGcode_endQ == 5 ) Mass_endQ = 4500.0*MeV; // For constituent bottom quark G4double P2_1 = W2*x1*x1/4.0 - Mass_endQ*Mass_endQ; G4double P2_3 = W2*x3*x3/4.0 - Mass_startQ*Mass_startQ; @@ -1173,7 +1324,7 @@ void G4DiffractiveExcitation::CreateStrings( G4VSplitableHadron* hadron, //G4cout << "Defin " << hadron->GetDefinition()->GetPDGEncoding()<< G4endl; //G4int absPDGcode = std::abs( hadron->GetDefinition()->GetPDGEncoding() ); - G4int absPDGcode = 1500; // 23 Dec + G4int absPDGcode = 1500; if ( start->GetDefinition()->GetParticleSubType() == "quark" && end->GetDefinition()->GetParticleSubType() == "quark" ) { absPDGcode = 110; @@ -1183,13 +1334,11 @@ void G4DiffractiveExcitation::CreateStrings( G4VSplitableHadron* hadron, if ( absPDGcode < 1000 ) { // meson if ( isProjectile ) { // Projectile if ( end->GetDefinition()->GetPDGEncoding() > 0 ) { // A quark on the end - FirstString = new G4ExcitedString( end , Ganti_quark, +1 ); SecondString = new G4ExcitedString( Gquark, start , +1 ); Ganti_quark->Set4Momentum( PkinkQ1 ); Gquark->Set4Momentum( PkinkQ2 ); } else { // Anti_Quark on the end - FirstString = new G4ExcitedString( end , Gquark, +1 ); SecondString = new G4ExcitedString( Ganti_quark, start , +1 ); Gquark->Set4Momentum( PkinkQ1 ); @@ -1209,7 +1358,6 @@ void G4DiffractiveExcitation::CreateStrings( G4VSplitableHadron* hadron, } } } else { // Baryon/AntiBaryon - if ( isProjectile ) { // Projectile if ( end->GetDefinition()->GetParticleType() == "diquarks" && end->GetDefinition()->GetPDGEncoding() > 0 ) { // DiQuark on the end @@ -1217,7 +1365,6 @@ void G4DiffractiveExcitation::CreateStrings( G4VSplitableHadron* hadron, SecondString = new G4ExcitedString( Ganti_quark, start , +1 ); Gquark->Set4Momentum( PkinkQ1 ); Ganti_quark->Set4Momentum( PkinkQ2 ); - } else { // Anti_DiQuark on the end or quark FirstString = new G4ExcitedString( end , Ganti_quark, +1 ); SecondString = new G4ExcitedString( Gquark, start , +1 ); @@ -1227,13 +1374,10 @@ void G4DiffractiveExcitation::CreateStrings( G4VSplitableHadron* hadron, } else { // Target if ( end->GetDefinition()->GetParticleType() == "diquarks" && end->GetDefinition()->GetPDGEncoding() > 0 ) { // DiQuark on the end - Gquark->Set4Momentum( PkinkQ1 ); Ganti_quark->Set4Momentum( PkinkQ2 ); - FirstString = new G4ExcitedString( end, Gquark, -1 ); SecondString = new G4ExcitedString( Ganti_quark, start, -1 ); - } else { // Anti_DiQuark on the end or Q FirstString = new G4ExcitedString( Ganti_quark, end , -1 ); SecondString = new G4ExcitedString( start , Gquark, -1 ); @@ -1248,50 +1392,34 @@ void G4DiffractiveExcitation::CreateStrings( G4VSplitableHadron* hadron, SecondString->SetTimeOfCreation( hadron->GetTimeOfCreation() ); SecondString->SetPosition( hadron->GetPosition() ); - } else { // End of kink is possible: Kink is impossible - - FirstString = new G4ExcitedString( end, start, +1 ); + } else { // Kink is impossible + if ( isProjectile ) { + FirstString = new G4ExcitedString( end, start, +1 ); + } else { + FirstString = new G4ExcitedString( end, start, -1 ); + } FirstString->SetTimeOfCreation( hadron->GetTimeOfCreation() ); FirstString->SetPosition( hadron->GetPosition() ); SecondString = 0; + // momenta of string ends + G4LorentzVector HadronMom = hadron->Get4Momentum(); + G4LorentzVector Pstart1 = G4LorentzVector( HadronMom.px()/2.0, HadronMom.py()/2.0, 0.0, 0.0 ); // Quark momentum + G4LorentzVector Pend1 = G4LorentzVector( HadronMom.px()/2.0, HadronMom.py()/2.0, 0.0, 0.0 ); // Di-quark momentum + G4double Pz = HadronMom.pz(); + G4double Eh = HadronMom.e(); + G4double Pt2 = sqr( HadronMom.px() ) + sqr( HadronMom.py() ); + G4double Mt2 = HadronMom.mt2(); + G4double Exp = std::sqrt( sqr(Pz) + ( sqr(Mt2) - 4.0*sqr(Eh)*Pt2/4.0 )/Mt2 )/2.0; + G4double Pzq = Pz/2.0 - Exp; Pstart1.setZ( Pzq ); + G4double Eq = std::sqrt( sqr(Pzq) + Pt2/4.0 ); Pstart1.setE( Eq ); + G4double Pzqq = Pz/2.0 + Exp; Pend1.setZ(Pzqq); + G4double Eqq = std::sqrt( sqr(Pzqq) + Pt2/4.0 ); Pend1.setE(Eqq); + start->Set4Momentum( Pstart1 ); + end->Set4Momentum( Pend1 ); + Pstart = Pstart1; Pend = Pend1; - if ( ! (end->Get4Momentum().e() != 0.) ) { - // momenta of string ends - G4double Momentum = hadron->Get4Momentum().vect().mag(); - G4double Plus = hadron->Get4Momentum().e() + Momentum; - G4double Minus = hadron->Get4Momentum().e() - Momentum; - G4ThreeVector tmp; - if ( Momentum > 0.0 ) { - tmp.set( hadron->Get4Momentum().px(), - hadron->Get4Momentum().py(), - hadron->Get4Momentum().pz() ); - tmp /= Momentum; - } else { - tmp.set( 0.0, 0.0, 1.0 ); - } - G4LorentzVector Pstart1( tmp, 0.0 ); - G4LorentzVector Pend1( tmp, 0.0 ); - if ( isProjectile ) { - Pstart1 *= (-1.0)*Minus/2.0; - Pend1 *= (+1.0)*Plus /2.0; - } else { - Pstart1 *= (+1.0)*Plus/ 2.0; - Pend1 *= (-1.0)*Minus/2.0; - } - - Momentum = Pstart1.vect().mag(); - - Pstart1.setT( Momentum ); // It is assumed that quark has m=0. - - Momentum = Pend1.vect().mag(); - - Pend1.setT( Momentum ); // It is assumed that di-quark has m=0. - start->Set4Momentum( Pstart1 ); - end->Set4Momentum( Pend1 ); - SecondString = 0; - } - } // End of kink is impossible + } // End of "if (Kink)" //G4cout << "Quarks in the string at creation" << FirstString->GetRightParton()->GetPDGcode() // << " " << FirstString->GetLeftParton()->GetPDGcode() << G4endl @@ -1367,18 +1495,27 @@ G4double G4DiffractiveExcitation::GetQuarkFractionOfKink( G4double zmin, G4doubl void G4DiffractiveExcitation::UnpackMeson( const G4int IdPDG, G4int& Q1, G4int& Q2 ) const { G4int absIdPDG = std::abs( IdPDG ); - if ( ! ( absIdPDG == 111 || absIdPDG == 221 || absIdPDG == 331 ) ) { - // Ordinary mesons + if ( ! ( absIdPDG == 111 || absIdPDG == 221 || absIdPDG == 331 || // Pi0 , Eta , Eta' + absIdPDG == 441 || absIdPDG == 443 || absIdPDG == 553 ) ) { // Etac , J/psi , Upsilon + // All other projectile mesons (including charmed and bottom ones) Q1 = absIdPDG / 100; Q2 = (absIdPDG % 100) / 10; G4int anti = 1 - 2 * ( std::max( Q1, Q2 ) % 2 ); if ( IdPDG < 0 ) anti *= -1; Q1 *= anti; Q2 *= -1 * anti; - } else { - // Pi0, Eta, Eta' - if ( G4UniformRand() < 0.5 ) { Q1 = 1; Q2 = -1; } - else { Q1 = 2; Q2 = -2; } + } else { + if ( absIdPDG == 441 || absIdPDG == 443 ) { // Etac , J/psi + Q1 = 4; Q2 = -4; + } else if ( absIdPDG == 553 ) { // Upsilon + Q1 = 5; Q2 = -5; + } else { // Pi0 , Eta , Eta' + if ( G4UniformRand() < 0.5 ) { + Q1 = 1; Q2 = -1; + } else { + Q1 = 2; Q2 = -2; + } + } } return; } @@ -1398,6 +1535,7 @@ void G4DiffractiveExcitation::UnpackBaryon( G4int IdPDG, //============================================================================ G4int G4DiffractiveExcitation::NewNucleonId( G4int Q1, G4int Q2, G4int Q3 ) const { + // Order the three integers in such a way that Q1 >= Q2 >= Q3 G4int TmpQ( 0 ); if ( Q3 > Q2 ) { TmpQ = Q2; @@ -1413,7 +1551,8 @@ G4int G4DiffractiveExcitation::NewNucleonId( G4int Q1, G4int Q2, G4int Q3 ) cons Q1 = Q2; Q2 = TmpQ; } - G4int NewCode = Q1*1000 + Q2*100 + Q3*10 + 2; + // By now Q1 >= Q2 >= Q3 + G4int NewCode = Q1*1000 + Q2*100 + Q3*10 + 2; return NewCode; } diff --git a/source/processes/hadronic/models/parton_string/diffraction/src/G4FTFAnnihilation.cc b/source/processes/hadronic/models/parton_string/diffraction/src/G4FTFAnnihilation.cc index 38d06a7c25..3ccaef7214 100644 --- a/source/processes/hadronic/models/parton_string/diffraction/src/G4FTFAnnihilation.cc +++ b/source/processes/hadronic/models/parton_string/diffraction/src/G4FTFAnnihilation.cc @@ -182,45 +182,45 @@ G4bool G4FTFAnnihilation::Annihilate( G4VSplitableHadron* projectile, G4bool isUnknown = false; if ( TargetPDGcode == 2212 || TargetPDGcode == 2214 ) { // Target proton or Delta+ - if ( ProjectilePDGcode == -2212 || ProjectilePDGcode == -2214 ) { + if ( ProjectilePDGcode == -2212 || ProjectilePDGcode == -2214 ) { // anti_proton or anti_Delta+ X_b *= 5.0; X_c *= 5.0; X_d *= 6.0; // Pbar P - } else if ( ProjectilePDGcode == -2112 || ProjectilePDGcode == -2114 ) { + } else if ( ProjectilePDGcode == -2112 || ProjectilePDGcode == -2114 ) { // anti_neutron or anti_Delta0 X_b *= 4.0; X_c *= 4.0; X_d *= 4.0; // NeutrBar P - } else if ( ProjectilePDGcode == -3122 || ProjectilePDGcode == -3124 ) { + } else if ( ProjectilePDGcode == -3122 ) { // anti_Lambda (no anti_Lambda* in PDG) X_b *= 3.0; X_c *= 3.0; X_d *= 2.0; // LambdaBar P - } else if ( ProjectilePDGcode == -3112 || ProjectilePDGcode == -3114 ) { + } else if ( ProjectilePDGcode == -3112 ) { // anti_Sigma- (no anti_Sigma*- in G4) X_b *= 2.0; X_c *= 2.0; X_d *= 0.0; // Sigma-Bar P - } else if ( ProjectilePDGcode == -3212 || ProjectilePDGcode == -3214 ) { + } else if ( ProjectilePDGcode == -3212 ) { // anti_Sigma0 (no anti_Sigma*0 in G4) X_b *= 3.0; X_c *= 3.0; X_d *= 2.0; // Sigma0Bar P - } else if ( ProjectilePDGcode == -3222 || ProjectilePDGcode == -3224 ) { + } else if ( ProjectilePDGcode == -3222 ) { // anti_Sigma+ (no anti_Sigma*+ in G4) X_b *= 4.0; X_c *= 4.0; X_d *= 2.0; // Sigma+Bar P - } else if ( ProjectilePDGcode == -3312 || ProjectilePDGcode == -3314 ) { + } else if ( ProjectilePDGcode == -3312 ) { // anti_Xi- (no anti_Xi*- in G4) X_b *= 1.0; X_c *= 1.0; X_d *= 0.0; // Xi-Bar P - } else if ( ProjectilePDGcode == -3322 || ProjectilePDGcode == -3324 ) { + } else if ( ProjectilePDGcode == -3322 ) { // anti_Xi0 (no anti_Xi*0 in G4) X_b *= 2.0; X_c *= 2.0; X_d *= 0.0; // Xi0Bar P - } else if ( ProjectilePDGcode == -3334 ) { + } else if ( ProjectilePDGcode == -3334 ) { // anti_Omega- (no anti_Omega*- in PDG) X_b *= 0.0; X_c *= 0.0; X_d *= 0.0; // Omega-Bar P } else { isUnknown = true; } } else if ( TargetPDGcode == 2112 || TargetPDGcode == 2114 ) { // Target neutron or Delta0 - if ( ProjectilePDGcode == -2212 || ProjectilePDGcode == -2214 ) { + if ( ProjectilePDGcode == -2212 || ProjectilePDGcode == -2214 ) { // anti_proton or anti_Delta+ X_b *= 4.0; X_c *= 4.0; X_d *= 4.0; // Pbar N - } else if ( ProjectilePDGcode == -2112 || ProjectilePDGcode == -2114 ) { + } else if ( ProjectilePDGcode == -2112 || ProjectilePDGcode == -2114 ) { // anti_neutron or anti_Delta0 X_b *= 5.0; X_c *= 5.0; X_d *= 6.0; // NeutrBar N - } else if ( ProjectilePDGcode == -3122 || ProjectilePDGcode == -3124 ) { + } else if ( ProjectilePDGcode == -3122 ) { // anti_Lambda (no anti_Lambda* in PDG) X_b *= 3.0; X_c *= 3.0; X_d *= 2.0; // LambdaBar N - } else if ( ProjectilePDGcode == -3112 || ProjectilePDGcode == -3114 ) { - X_b *= 4.0; X_c *= 4.0; X_d *= 2.0; // Sigma-Bar N - } else if ( ProjectilePDGcode == -3212 || ProjectilePDGcode == -3214 ) { + } else if ( ProjectilePDGcode == -3112 ) { // anti_Sigma- (no anti_Sigma*- in G4) + X_b *= 4.0; X_c *= 4.0; X_d *= 2.0; // Sigma-Bar N + } else if ( ProjectilePDGcode == -3212 ) { // anti_Sigma0 (no anti_Sigma*0 in G4) X_b *= 3.0; X_c *= 3.0; X_d *= 2.0; // Sigma0Bar N - } else if ( ProjectilePDGcode == -3222 || ProjectilePDGcode == -3224 ) { + } else if ( ProjectilePDGcode == -3222 ) { // anti_Sigma+ (no anti_Sigma*+ in G4) X_b *= 2.0; X_c *= 2.0; X_d *= 0.0; // Sigma+Bar N - } else if ( ProjectilePDGcode == -3312 || ProjectilePDGcode == -3314 ) { + } else if ( ProjectilePDGcode == -3312 ) { // anti_Xi- (no anti_Xi*- in G4) X_b *= 2.0; X_c *= 2.0; X_d *= 0.0; // Xi-Bar N - } else if ( ProjectilePDGcode == -3322 || ProjectilePDGcode == -3324 ) { + } else if ( ProjectilePDGcode == -3322 ) { // anti_Xi0 (no anti_Xi*0 in G4) X_b *= 1.0; X_c *= 1.0; X_d *= 0.0; // Xi0Bar N - } else if ( ProjectilePDGcode == -3334 ) { + } else if ( ProjectilePDGcode == -3334 ) { // anti_Omega- (no anti_Omega*- in PDG) X_b *= 0.0; X_c *= 0.0; X_d *= 0.0; // Omega-Bar N } else { isUnknown = true; @@ -310,7 +310,7 @@ Create3QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, // For simplicity only scalar is considered here. G4int NewCode = 0, antiQuark = 0, quark = 0; G4ParticleDefinition* TestParticle = nullptr; - for ( G4int iString = 0; iString < 3; iString++ ) { // Loop over the 3 string cases + for ( G4int iString = 0; iString < 3; ++iString ) { // Loop over the 3 string cases if ( iString == 0 ) { antiQuark = common.AQ[0]; quark = common.Q[0]; projectile->SplitUp(); @@ -380,20 +380,20 @@ Create3QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, G4int NumberOfTries = 0, loopCounter = 0; const G4int maxNumberOfLoops = 1000; do { - NumberOfTries++; + ++NumberOfTries; if ( NumberOfTries == 100*(NumberOfTries/100) ) { // At large number of tries it would be better to reduce the values of ScaleFactor /= 2.0; AveragePt2 *= ScaleFactor; } G4ThreeVector PtSum( 0.0, 0.0, 0.0 ); - for ( G4int i = 0; i < 6; i++ ) { + for ( G4int i = 0; i < 6; ++i ) { Quark_Mom [i] = GaussianPt( AveragePt2, maxPtSquare ); PtSum += Quark_Mom[i]; } PtSum /= 6.0; SumMt = 0.0; - for ( G4int i = 0; i < 6; i++ ) { + for ( G4int i = 0; i < 6; ++i ) { Quark_Mom[i] -= PtSum; ModMom2[i] = Quark_Mom[i].mag2(); SumMt += std::sqrt( ModMom2[i] + MassQ2 ); @@ -411,13 +411,13 @@ Create3QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, NumberOfTries = 0; loopCounter = 0; do { Success = true; - NumberOfTries++; + ++NumberOfTries; if ( NumberOfTries == 100*(NumberOfTries/100) ) { // At large number of tries it would be better to reduce the values of Pt's ScaleFactor /= 2.0; } G4double Alfa = 0.0, Beta = 0.0; - for ( G4int iCase = 0; iCase < 2; iCase++ ) { // anti-baryon (1st case), baryon (2nd case) + for ( G4int iCase = 0; iCase < 2; ++iCase ) { // anti-baryon (1st case), baryon (2nd case) G4double x1 = 0.0, x2 = 0.0; G4double r1 = G4UniformRand(), r2 = G4UniformRand(); if ( Alfa_R == 1.0 ) { @@ -430,7 +430,7 @@ Create3QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, G4double x3 = 1.0 - x1 - x2; G4int index = iCase*3; // 0 for anti-baryon, 3 for baryon Quark_Mom[index].setZ( x1 ); Quark_Mom[index+1].setZ( x2 ); Quark_Mom[index+2].setZ( x3 ); - for ( G4int i = 0; i < 3; i++ ) { // Loop over the 3 (anti-)quarks + for ( G4int i = 0; i < 3; ++i ) { // Loop over the 3 (anti-)quarks if ( Quark_Mom[index+i].getZ() != 0.0 ) { G4double val = ( ScaleFactor * ModMom2[index+i] + MassQ2 ) / Quark_Mom[index+i].getZ(); if ( iCase == 0 ) { // anti-baryon @@ -459,11 +459,11 @@ Create3QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, } G4double SqrtScaleF = std::sqrt( ScaleFactor ); - for ( G4int iCase = 0; iCase < 2; iCase++ ) { // anti-baryon (1st case), baryon (2nd case) + for ( G4int iCase = 0; iCase < 2; ++iCase ) { // anti-baryon (1st case), baryon (2nd case) G4int index = iCase*3; // 0 for anti-baryon, 3 for baryon G4double w = WplusProjectile; // for anti-baryon if ( iCase == 1 ) w = - WminusTarget; // for baryon - for ( G4int i = 0; i < 3; i++ ) { + for ( G4int i = 0; i < 3; ++i ) { G4double Pz = w * Quark_Mom[index+i].getZ() / 2.0 - ( ScaleFactor * ModMom2[index+i] + MassQ2 ) / ( 2.0 * w * Quark_Mom[index+i].getZ() ); @@ -476,7 +476,7 @@ Create3QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, } G4LorentzVector Pstring1, Pstring2, Pstring3; G4double YstringMax = 0.0, YstringMin = 0.0; - for ( G4int i = 0; i < 3; i++ ) { + for ( G4int i = 0; i < 3; ++i ) { G4ThreeVector tmp = Quark_Mom[i] + Quark_Mom[i+3]; G4LorentzVector Pstring( tmp, std::sqrt( Quark_Mom[i].mag2() + MassQ2 ) + std::sqrt( Quark_Mom[i+3].mag2() + MassQ2 ) ); @@ -563,9 +563,9 @@ Create1DiquarkAntiDiquarkString( G4VSplitableHadron* projectile, G4cout << "Process b, quark - anti-quark annihilation, di-q - anti-di-q string" << G4endl; #endif - G4int CandidatsN = 0, CandAQ[9][2], CandQ[9][2]; - for ( G4int iAQ = 0; iAQ < 3; iAQ++ ) { // index of the 3 constituent anti-quarks of the antibaryon projectile - for ( G4int iQ = 0; iQ < 3; iQ++ ) { // index of the 3 constituent quarks of the nucleon target + G4int CandidatsN = 0, CandAQ[9][2] = {}, CandQ[9][2] = {}; + for ( G4int iAQ = 0; iAQ < 3; ++iAQ ) { // index of the 3 constituent anti-quarks of the antibaryon projectile + for ( G4int iQ = 0; iQ < 3; ++iQ ) { // index of the 3 constituent quarks of the nucleon target if ( -common.AQ[iAQ] == common.Q[iQ] ) { // antiquark - quark that can annihilate // Here "0", "1", "2" means, respectively, "first", "second" and "third" constituent // of the (anti-baryon) projectile or (nucleon) target. @@ -575,7 +575,7 @@ Create1DiquarkAntiDiquarkString( G4VSplitableHadron* projectile, if ( iQ == 0 ) { CandQ[CandidatsN][0] = 1; CandQ[CandidatsN][1] = 2; } if ( iQ == 1 ) { CandQ[CandidatsN][0] = 0; CandQ[CandidatsN][1] = 2; } if ( iQ == 2 ) { CandQ[CandidatsN][0] = 0; CandQ[CandidatsN][1] = 1; } - CandidatsN++; + ++CandidatsN; } } } @@ -658,10 +658,10 @@ Create2QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, << G4endl; #endif - G4int CandidatsN = 0, CandAQ[9][2], CandQ[9][2]; + G4int CandidatsN = 0, CandAQ[9][2] = {}, CandQ[9][2] = {}; G4int LeftAQ1 = 0, LeftAQ2 = 0, LeftQ1 = 0, LeftQ2 = 0; - for ( G4int iAQ = 0; iAQ < 3; iAQ++ ) { // index of the 3 constituent anti-quarks of the antibaryon projectile - for ( G4int iQ = 0; iQ < 3; iQ++ ) { // index of the 3 constituent quarks of the nucleon target + for ( G4int iAQ = 0; iAQ < 3; ++iAQ ) { // index of the 3 constituent anti-quarks of the antibaryon projectile + for ( G4int iQ = 0; iQ < 3; ++iQ ) { // index of the 3 constituent quarks of the nucleon target if ( -common.AQ[iAQ] == common.Q[iQ] ) { // antiquark - quark that can annihilate // Here "0", "1", "2" means, respectively, "first", "second" and "third" constituent // of the (anti-baryon) projectile or (nucleon) target. @@ -671,7 +671,7 @@ Create2QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, if ( iQ == 0 ) { CandQ[CandidatsN][0] = 1; CandQ[CandidatsN][1] = 2; } if ( iQ == 1 ) { CandQ[CandidatsN][0] = 0; CandQ[CandidatsN][1] = 2; } if ( iQ == 2 ) { CandQ[CandidatsN][0] = 0; CandQ[CandidatsN][1] = 1; } - CandidatsN++; + ++CandidatsN; } } } @@ -694,7 +694,7 @@ Create2QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, // For simplicity only scalar is considered here. G4int NewCode = 0, antiQuark = 0, quark = 0; G4ParticleDefinition* TestParticle = nullptr; - for ( G4int iString = 0; iString < 2; iString++ ) { // Loop over the 2 string cases + for ( G4int iString = 0; iString < 2; ++iString ) { // Loop over the 2 string cases if ( iString == 0 ) { antiQuark = LeftAQ1; quark = LeftQ1; projectile->SplitUp(); @@ -753,20 +753,20 @@ Create2QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, G4int NumberOfTries = 0, loopCounter = 0; const G4int maxNumberOfLoops = 1000; do { - NumberOfTries++; + ++NumberOfTries; if ( NumberOfTries == 100*(NumberOfTries/100) ) { // At large number of tries it would be better to reduce the values of ScaleFactor /= 2.0; AveragePt2 *= ScaleFactor; } G4ThreeVector PtSum( 0.0, 0.0, 0.0 ); - for( G4int i = 0; i < 4; i++ ) { + for( G4int i = 0; i < 4; ++i ) { Quark_Mom[i] = GaussianPt( AveragePt2, maxPtSquare ); PtSum += Quark_Mom[i]; } PtSum /= 4.0; SumMt = 0.0; - for ( G4int i = 0; i < 4; i++ ) { + for ( G4int i = 0; i < 4; ++i ) { Quark_Mom[i] -= PtSum; ModMom2[i] = Quark_Mom[i].mag2(); SumMt += std::sqrt( ModMom2[i] + MassQ2 ); @@ -783,13 +783,13 @@ Create2QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, NumberOfTries = 0, loopCounter = 0; do { Success = true; - NumberOfTries++; + ++NumberOfTries; if ( NumberOfTries == 100*(NumberOfTries/100) ) { // At large number of tries it would be better to reduce the values of Pt's ScaleFactor /= 2.0; } G4double Alfa = 0.0, Beta = 0.0; - for ( G4int iCase = 0; iCase < 2; iCase++ ) { // Loop over the two strings + for ( G4int iCase = 0; iCase < 2; ++iCase ) { // Loop over the two strings G4double x = 0.0, r = G4UniformRand(); if ( Alfa_R == 1.0 ) { if ( iCase == 0 ) { // first string @@ -802,7 +802,7 @@ Create2QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, } G4int index = iCase*2; // 0 for the first string, 2 for the second string Quark_Mom[index].setZ( x ); Quark_Mom[index+1].setZ( 1.0 - x ); - for ( G4int i = 0; i < 2; i++ ) { + for ( G4int i = 0; i < 2; ++i ) { if ( Quark_Mom[i].getZ() != 0.0 ) { G4double val = ( ScaleFactor * ModMom2[index+i] + MassQ2 ) / Quark_Mom[index+i].getZ(); if ( iCase == 0 ) { // first string @@ -833,9 +833,9 @@ Create2QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, G4double SqrtScaleF = std::sqrt( ScaleFactor ); G4LorentzVector Pstring1, Pstring2; G4double Ystring1 = 0.0, Ystring2 = 0.0; - for ( G4int iCase = 0; iCase < 2; iCase++ ) { // Loop over the two strings + for ( G4int iCase = 0; iCase < 2; ++iCase ) { // Loop over the two strings G4int index = iCase*2; // 0 for the first string, 2 for the second string - for ( G4int i = 0; i < 2; i++ ) { + for ( G4int i = 0; i < 2; ++i ) { G4double w = WplusProjectile; // For the first string if ( iCase == 1 ) w = - WminusTarget; // For the second string G4double Pz = w * Quark_Mom[index+i].getZ() / 2.0 @@ -848,7 +848,7 @@ Create2QuarkAntiQuarkStrings( G4VSplitableHadron* projectile, } } } - for ( G4int iCase = 0; iCase < 2; iCase++ ) { // Loop over the two strings + for ( G4int iCase = 0; iCase < 2; ++iCase ) { // Loop over the two strings G4ThreeVector tmp = Quark_Mom[iCase] + Quark_Mom[iCase+2]; G4LorentzVector Pstring( tmp, std::sqrt( Quark_Mom[iCase].mag2() + MassQ2 ) + std::sqrt( Quark_Mom[iCase+2].mag2() + MassQ2 ) ); @@ -918,11 +918,11 @@ Create1QuarkAntiQuarkString( G4VSplitableHadron* projectile, // of the (anti-baryon) projectile or (nucleon) target. G4int CandidatsN = 0, CandAQ[36], CandQ[36]; G4int LeftAQ = 0, LeftQ = 0; - for ( G4int iAQ1 = 0; iAQ1 < 3; iAQ1++ ) { - for ( G4int iAQ2 = 0; iAQ2 < 3; iAQ2++ ) { + for ( G4int iAQ1 = 0; iAQ1 < 3; ++iAQ1 ) { + for ( G4int iAQ2 = 0; iAQ2 < 3; ++iAQ2 ) { if ( iAQ1 != iAQ2 ) { - for ( G4int iQ1 = 0; iQ1 < 3; iQ1++ ) { - for ( G4int iQ2 = 0; iQ2 < 3; iQ2++ ) { + for ( G4int iQ1 = 0; iQ1 < 3; ++iQ1 ) { + for ( G4int iQ2 = 0; iQ2 < 3; ++iQ2 ) { if ( iQ1 != iQ2 ) { if ( -common.AQ[iAQ1] == common.Q[iQ1] && -common.AQ[iAQ2] == common.Q[iQ2] ) { if ( ( iAQ1 == 0 && iAQ2 == 1 ) || ( iAQ1 == 1 && iAQ2 == 0 ) ) { @@ -939,7 +939,7 @@ Create1QuarkAntiQuarkString( G4VSplitableHadron* projectile, } else if ( ( iQ1 == 1 && iQ2 == 2 ) || ( iQ1 == 2 && iQ2 == 1 ) ) { CandQ[CandidatsN] = 0; } - CandidatsN++; + ++CandidatsN; } } } diff --git a/source/processes/hadronic/models/parton_string/diffraction/src/G4FTFModel.cc b/source/processes/hadronic/models/parton_string/diffraction/src/G4FTFModel.cc index 25b726abfd..ebde978979 100644 --- a/source/processes/hadronic/models/parton_string/diffraction/src/G4FTFModel.cc +++ b/source/processes/hadronic/models/parton_string/diffraction/src/G4FTFModel.cc @@ -78,7 +78,7 @@ G4FTFModel::G4FTFModel( const G4String& modelName ) : // NumberOfInvolvedNucleonsOfTarget = 0; NumberOfInvolvedNucleonsOfProjectile= 0; - for ( G4int i = 0; i < 250; i++ ) { + for ( G4int i = 0; i < 250; ++i ) { TheInvolvedNucleonsOfTarget[i] = 0; TheInvolvedNucleonsOfProjectile[i] = 0; } @@ -132,7 +132,7 @@ G4FTFModel::~G4FTFModel() { // Erasing of target involved nucleons. if ( NumberOfInvolvedNucleonsOfTarget != 0 ) { - for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfTarget; i++ ) { + for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfTarget; ++i ) { G4VSplitableHadron* aNucleon = TheInvolvedNucleonsOfTarget[i]->GetSplitableHadron(); if ( aNucleon ) delete aNucleon; } @@ -140,7 +140,7 @@ G4FTFModel::~G4FTFModel() { // Erasing of projectile involved nucleons. if ( NumberOfInvolvedNucleonsOfProjectile != 0 ) { - for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfProjectile; i++ ) { + for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfProjectile; ++i ) { G4VSplitableHadron* aNucleon = TheInvolvedNucleonsOfProjectile[i]->GetSplitableHadron(); if ( aNucleon ) delete aNucleon; } @@ -273,8 +273,15 @@ void G4FTFModel::Init( const G4Nucleus& aNucleus, const G4DynamicParticle& aProj G4cout << "FTF end of Init" << G4endl << G4endl; #endif - //if ( std::abs( theProjectile.GetDefinition()->GetBaryonNumber() ) <= 1 && - // aNucleus.GetA_asInt() < 2 ) theParameters->SetProbabilityOfElasticScatt( 0.0 ); + // In the case of Hydrogen target, for non-ion hadron projectiles, + // do NOT simulate quasi-elastic (by forcing to 0 the probability of + // elastic scatering in theParameters - which is used only by FTF). + // This is necessary because in this case quasi-elastic on a target nucleus + // with only one nucleon would be identical to the hadron elastic scattering, + // and the latter is already included in the elastic process + // (i.e. G4HadronElasticProcess). + if ( std::abs( theProjectile.GetDefinition()->GetBaryonNumber() ) <= 1 && + aNucleus.GetA_asInt() < 2 ) theParameters->SetProbabilityOfElasticScatt( 0.0 ); } @@ -358,14 +365,14 @@ G4ExcitedStringVector* G4FTFModel::GetStrings() { G4VSplitableHadron* aNucleon = 0; // Erase the projectile nucleons - for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfProjectile; i++ ) { + for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfProjectile; ++i ) { aNucleon = TheInvolvedNucleonsOfProjectile[i]->GetSplitableHadron(); if ( aNucleon ) delete aNucleon; } NumberOfInvolvedNucleonsOfProjectile = 0; // Erase the target nucleons - for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfTarget; i++ ) { + for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfTarget; ++i ) { aNucleon = TheInvolvedNucleonsOfTarget[i]->GetSplitableHadron(); if ( aNucleon ) delete aNucleon; } @@ -407,6 +414,7 @@ void G4FTFModel::StoreInvolvedNucleon() { << G4endl << G4endl; #endif + if ( ! GetProjectileNucleus() ) return; // The projectile is a hadron // The projectile is a nucleus or an anti-nucleus. @@ -970,7 +978,7 @@ G4bool G4FTFModel::ExciteParticipants() { // Return to the annihilation theParticipants.StartLoop(); - for ( G4int I = 0; I < CurrentInteraction; I++ ) theParticipants.Next(); + for ( G4int I = 0; I < CurrentInteraction; ++I ) theParticipants.Next(); // At last, annihilation if ( ! HighEnergyInter ) { @@ -1002,7 +1010,7 @@ G4bool G4FTFModel::ExciteParticipants() { } } theParticipants.StartLoop(); - for ( G4int I = 0; I < CurrentInteraction; I++ ) theParticipants.Next(); + for ( G4int I = 0; I < CurrentInteraction; ++I ) theParticipants.Next(); */ } @@ -2287,7 +2295,7 @@ void G4FTFModel::GetResiduals() { G4LorentzVector DeltaPResidualNucleus = TargetResidual4Momentum / G4double( NumberOfInvolvedNucleonsOfTarget ); - for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfTarget; i++ ) { + for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfTarget; ++i ) { G4Nucleon* aNucleon = TheInvolvedNucleonsOfTarget[i]; #ifdef debugFTFmodel @@ -2389,7 +2397,7 @@ void G4FTFModel::GetResiduals() { DeltaPResidualNucleus = ProjectileResidual4Momentum / G4double( NumberOfInvolvedNucleonsOfProjectile ); - for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfProjectile; i++ ) { + for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfProjectile; ++i ) { G4Nucleon* aNucleon = TheInvolvedNucleonsOfProjectile[i]; #ifdef debugFTFmodel @@ -2493,7 +2501,7 @@ void G4FTFModel::GetResiduals() { #endif G4int NumberOfTargetParticipant( 0 ); - for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfTarget; i++ ) { + for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfTarget; ++i ) { G4Nucleon* aNucleon = TheInvolvedNucleonsOfTarget[i]; G4VSplitableHadron* targetSplitable = aNucleon->GetSplitableHadron(); if ( targetSplitable->GetSoftCollisionCount() != 0 ) NumberOfTargetParticipant++; @@ -2507,7 +2515,7 @@ void G4FTFModel::GetResiduals() { DeltaPResidualNucleus = TargetResidual4Momentum / G4double( NumberOfTargetParticipant ); } - for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfTarget; i++ ) { + for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfTarget; ++i ) { G4Nucleon* aNucleon = TheInvolvedNucleonsOfTarget[i]; G4VSplitableHadron* targetSplitable = aNucleon->GetSplitableHadron(); if ( targetSplitable->GetSoftCollisionCount() != 0 ) { @@ -2537,7 +2545,7 @@ void G4FTFModel::GetResiduals() { #endif G4int NumberOfProjectileParticipant( 0 ); - for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfProjectile; i++ ) { + for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfProjectile; ++i ) { G4Nucleon* aNucleon = TheInvolvedNucleonsOfProjectile[i]; G4VSplitableHadron* projectileSplitable = aNucleon->GetSplitableHadron(); if ( projectileSplitable->GetSoftCollisionCount() != 0 ) NumberOfProjectileParticipant++; @@ -2556,7 +2564,7 @@ void G4FTFModel::GetResiduals() { } //G4cout << "DeltaExcitationE DeltaPResidualNucleus " << DeltaExcitationE // << " " << DeltaPResidualNucleus << G4endl; - for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfProjectile; i++ ) { + for ( G4int i = 0; i < NumberOfInvolvedNucleonsOfProjectile; ++i ) { G4Nucleon* aNucleon = TheInvolvedNucleonsOfProjectile[i]; G4VSplitableHadron* projectileSplitable = aNucleon->GetSplitableHadron(); if ( projectileSplitable->GetSoftCollisionCount() != 0 ) { @@ -2589,18 +2597,18 @@ void G4FTFModel::GetResiduals() { G4ThreeVector G4FTFModel::GaussianPt( G4double AveragePt2, G4double maxPtSquare ) const { - G4double Pt2( 0.0 ); + G4double Pt2( 0.0 ), Pt( 0.0 ); if (AveragePt2 > 0.0) { - if (maxPtSquare/AveragePt2 < 1.0e+9) { - Pt2 = -AveragePt2 * G4Log( 1.0 + G4UniformRand() * - ( G4Exp( -maxPtSquare/AveragePt2 ) -1.0 ) ); + const G4double ymax = maxPtSquare/AveragePt2; + if ( ymax < 200. ) { + Pt2 = -AveragePt2 * G4Log( 1.0 + G4UniformRand() * ( G4Exp( -ymax ) -1.0 ) ); } else { Pt2 = -AveragePt2 * G4Log( 1.0 - G4UniformRand() ); } + Pt = std::sqrt( Pt2 ); } - G4double Pt = std::sqrt( Pt2 ); G4double phi = G4UniformRand() * twopi; return G4ThreeVector( Pt*std::cos(phi), Pt*std::sin(phi), 0.0 ); @@ -2718,7 +2726,7 @@ GenerateDeltaIsobar( const G4double sqrtS, // input parameter G4int maxNumberOfDeltas = G4int( (sqrtS - sumMasses)/(400.0*MeV) ); G4int numberOfDeltas = 0; - for ( G4int i = 0; i < numberOfInvolvedNucleons; i++ ) { + for ( G4int i = 0; i < numberOfInvolvedNucleons; ++i ) { if ( G4UniformRand() < probDeltaIsobar && numberOfDeltas < maxNumberOfDeltas ) { numberOfDeltas++; @@ -2774,8 +2782,16 @@ SamplingNucleonKinematics( G4double averagePt2, // input param // the action of this method consists in changing the properties of the nucleons // whose pointers are in the vector involvedNucleons, as well as changing the // variable mass2. +#ifdef debugPutOnMassShell + G4cout << "G4FTFModel::SamplingNucleonKinematics:" << G4endl; + G4cout << " averagePt2= " << averagePt2 << " maxPt2= " << maxPt2 + << " dCor= " << dCor << " resMass(GeV)= " << residualMass/GeV + << " resMassN= " << residualMassNumber + << " nNuc= " << numberOfInvolvedNucleons + << " lv= " << pResidual << G4endl; +#endif - if ( ! nucleus ) return false; + if ( ! nucleus || numberOfInvolvedNucleons < 1) return false; if ( residualMassNumber == 0 && numberOfInvolvedNucleons == 1 ) { dCor = 0.0; @@ -2785,14 +2801,10 @@ SamplingNucleonKinematics( G4double averagePt2, // input param G4bool success = true; G4double SumMasses = residualMass; + G4double invN = 1.0/(G4double)numberOfInvolvedNucleons; - for ( G4int i = 0; i < numberOfInvolvedNucleons; i++ ) { - G4Nucleon* aNucleon = involvedNucleons[i]; - if ( ! aNucleon ) continue; - SumMasses += aNucleon->GetSplitableHadron()->GetDefinition()->GetPDGMass(); - } - // - + // to avoid problems due to precision lost a tolerance is added + const G4double eps = 1.e-10; const G4int maxNumberOfLoops = 1000; G4int loopCounter = 0; do { @@ -2801,21 +2813,22 @@ SamplingNucleonKinematics( G4double averagePt2, // input param // Sampling of nucleon Pt G4ThreeVector ptSum( 0.0, 0.0, 0.0 ); - - for ( G4int i = 0; i < numberOfInvolvedNucleons; i++ ) { - G4Nucleon* aNucleon = involvedNucleons[i]; - if ( ! aNucleon ) continue; - G4ThreeVector tmpPt = GaussianPt( averagePt2, maxPt2 ); - ptSum += tmpPt; - G4LorentzVector tmp( tmpPt.x(), tmpPt.y(), 0.0, 0.0 ); - aNucleon->SetMomentum( tmp ); + if( averagePt2 > 0.0 ) { + for ( G4int i = 0; i < numberOfInvolvedNucleons; ++i ) { + G4Nucleon* aNucleon = involvedNucleons[i]; + if ( ! aNucleon ) continue; + G4ThreeVector tmpPt = GaussianPt( averagePt2, maxPt2 ); + ptSum += tmpPt; + G4LorentzVector tmp( tmpPt.x(), tmpPt.y(), 0.0, 0.0 ); + aNucleon->SetMomentum( tmp ); + } } - G4double deltaPx = ( ptSum.x() - pResidual.x() ) / numberOfInvolvedNucleons; - G4double deltaPy = ( ptSum.y() - pResidual.y() ) / numberOfInvolvedNucleons; + G4double deltaPx = ( ptSum.x() - pResidual.x() )*invN; + G4double deltaPy = ( ptSum.y() - pResidual.y() )*invN; SumMasses = residualMass; - for ( G4int i = 0; i < numberOfInvolvedNucleons; i++ ) { + for ( G4int i = 0; i < numberOfInvolvedNucleons; ++i ) { G4Nucleon* aNucleon = involvedNucleons[i]; if ( ! aNucleon ) continue; G4double px = aNucleon->Get4Momentum().px() - deltaPx; @@ -2830,88 +2843,77 @@ SamplingNucleonKinematics( G4double averagePt2, // input param // Sampling X of nucleon G4double xSum = 0.0; - for ( G4int i = 0; i < numberOfInvolvedNucleons; i++ ) { + for ( G4int i = 0; i < numberOfInvolvedNucleons; ++i ) { G4Nucleon* aNucleon = involvedNucleons[i]; if ( ! aNucleon ) continue; - - G4ThreeVector tmpX = GaussianPt( dCor*dCor, 1.0 ); - //G4double x = tmpX.x() + aNucleon->GetSplitableHadron()->GetDefinition()->GetPDGMass()/SumMasses; - G4double x = tmpX.x() + aNucleon->Get4Momentum().e()/SumMasses; - if ( x < 0.0 || x > 1.0 ) { + + G4double x = 0.0; + if( 0.0 != dCor ) { + G4ThreeVector tmpX = GaussianPt( dCor*dCor, 1.0 ); + x = tmpX.x(); + } + x += aNucleon->Get4Momentum().e()/SumMasses; + if ( x < -eps || x > 1.0 + eps ) { success = false; break; } + x = std::min(1.0, std::max(x, 0.0)); xSum += x; - // The energy is in the lab (instead of cms) frame but it will not be used. + // The energy is in the lab (instead of cms) frame but it will not be used - G4LorentzVector tmp( aNucleon->Get4Momentum().x(), aNucleon->Get4Momentum().y(), + G4LorentzVector tmp( aNucleon->Get4Momentum().x(), + aNucleon->Get4Momentum().y(), x, aNucleon->Get4Momentum().e() ); aNucleon->SetMomentum( tmp ); } - if ( xSum < 0.0 || xSum > 1.0 ) success = false; - + if ( xSum < -eps || xSum > 1.0 + eps ) success = false; if ( ! success ) continue; - //G4double deltaPx = ( ptSum.x() - pResidual.x() ) / numberOfInvolvedNucleons; - //G4double deltaPy = ( ptSum.y() - pResidual.y() ) / numberOfInvolvedNucleons; - G4double delta = 0.0; - if ( residualMassNumber == 0 ) { - delta = ( xSum - 1.0 ) / numberOfInvolvedNucleons; - } else { - delta = 0.0; - } + G4double delta = ( residualMassNumber == 0 ) ? std::min(xSum - 1.0, 0.0)*invN : 0.0; xSum = 1.0; mass2 = 0.0; - for ( G4int i = 0; i < numberOfInvolvedNucleons; i++ ) { + for ( G4int i = 0; i < numberOfInvolvedNucleons; ++i ) { G4Nucleon* aNucleon = involvedNucleons[i]; if ( ! aNucleon ) continue; G4double x = aNucleon->Get4Momentum().pz() - delta; - xSum -= x; + xSum -= x; + if ( residualMassNumber == 0 ) { - if ( x <= 0.0 || x > 1.0 ) { + if ( x <= -eps || x > 1.0 + eps ) { success = false; break; } } else { - if ( x <= 0.0 || x > 1.0 || xSum <= 0.0 || xSum > 1.0 ) { + if ( x <= -eps || x > 1.0 + eps || xSum <= -eps || xSum > 1.0 + eps ) { success = false; break; } - } - - /* - G4double px = aNucleon->Get4Momentum().px() - deltaPx; - G4double py = aNucleon->Get4Momentum().py() - deltaPy; - mass2 += ( sqr( aNucleon->GetSplitableHadron()->GetDefinition()->GetPDGMass() ) - + sqr( px ) + sqr( py ) ) / x; - G4LorentzVector tmp( px, py, x, aNucleon->Get4Momentum().e() ); - */ + } + x = std::min(1.0, std::max(x, eps)); mass2 += sqr( aNucleon->Get4Momentum().e() ) / x; - G4LorentzVector tmp( aNucleon->Get4Momentum().px(), aNucleon->Get4Momentum().py(), + + G4LorentzVector tmp( aNucleon->Get4Momentum().px(), + aNucleon->Get4Momentum().py(), x, aNucleon->Get4Momentum().e() ); aNucleon->SetMomentum( tmp ); } if ( ! success ) continue; + xSum = std::min(1.0, std::max(xSum, eps)); - if ( success && residualMassNumber != 0 ) { + if ( residualMassNumber > 0 ) { mass2 += ( sqr( residualMass ) + pResidual.perp2() ) / xSum; - //mass2 += sqr( residualMass ) / xSum; } - #ifdef debugPutOnMassShell - G4cout << "success " << success << G4endl << " Mt " << std::sqrt( mass2 )/GeV << G4endl; + G4cout << "success: " << success << " Mt(GeV)= " + << std::sqrt( mass2 )/GeV << G4endl; #endif } while ( ( ! success ) && ++loopCounter < maxNumberOfLoops ); /* Loop checking, 10.08.2015, A.Ribon */ - if ( loopCounter >= maxNumberOfLoops ) { - return false; - } - - return true; + return ( loopCounter < maxNumberOfLoops ); } @@ -2959,7 +2961,7 @@ CheckKinematics( const G4double sValue, // input parameter << "\t projectileY targetY " << projectileY << " " << targetY << G4endl; #endif - for ( G4int i = 0; i < numberOfInvolvedNucleons; i++ ) { + for ( G4int i = 0; i < numberOfInvolvedNucleons; ++i ) { G4Nucleon* aNucleon = involvedNucleons[i]; if ( ! aNucleon ) continue; G4LorentzVector tmp = aNucleon->Get4Momentum(); @@ -3015,7 +3017,7 @@ FinalizeKinematics( const G4double w, // input parame G4ThreeVector residual3Momentum( 0.0, 0.0, 1.0 ); - for ( G4int i = 0; i < numberOfInvolvedNucleons; i++ ) { + for ( G4int i = 0; i < numberOfInvolvedNucleons; ++i ) { G4Nucleon* aNucleon = involvedNucleons[i]; if ( ! aNucleon ) continue; G4LorentzVector tmp = aNucleon->Get4Momentum(); diff --git a/source/processes/hadronic/models/parton_string/diffraction/src/G4FTFParameters.cc b/source/processes/hadronic/models/parton_string/diffraction/src/G4FTFParameters.cc index 5174bda7d5..24fbc7262b 100644 --- a/source/processes/hadronic/models/parton_string/diffraction/src/G4FTFParameters.cc +++ b/source/processes/hadronic/models/parton_string/diffraction/src/G4FTFParameters.cc @@ -883,7 +883,8 @@ class G4FTFSettingDefaultHDP // // baryons // - /* JVY, Oct. 31, 2017: Per Alberto R. & Vladimir U., keep this group of parameters FIXED + /* JVY, Oct. 31, 2017: Per Alberto R. & Vladimir U., keep this group of parameters FIXED */ + /* JVY, June 11, 2020: try to open up... */ // Process=0 --> Qexchg w/o excitation // HDP.SetDefault( "FTF_BARYON_PROC0_A1", 13.71 ); @@ -893,6 +894,7 @@ class G4FTFSettingDefaultHDP HDP.SetDefault( "FTF_BARYON_PROC0_A3", 0.0 ); HDP.SetDefault( "FTF_BARYON_PROC0_ATOP", 1.0 ); HDP.SetDefault( "FTF_BARYON_PROC0_YMIN", 0.93 ); + /* */ // // Process=1 --> Qexchg w/excitation // @@ -903,7 +905,7 @@ class G4FTFSettingDefaultHDP HDP.SetDefault( "FTF_BARYON_PROC1_A3", 0. ); HDP.SetDefault( "FTF_BARYON_PROC1_ATOP", 0. ); HDP.SetDefault( "FTF_BARYON_PROC1_YMIN", 1.4 ); - */ + /* */ // // NOTE: Process #2 & 3 are projectile & target diffraction // they have more complex definition of A1 & A2 @@ -917,7 +919,8 @@ class G4FTFSettingDefaultHDP HDP.SetDefault( "FTF_BARYON_DIFF_DISSO_PROJ", false ); HDP.SetDefault( "FTF_BARYON_DIFF_DISSO_TGT", false ); // as in hadr-string-diff-V10-03-07 // - /* JVY, Oct. 31, 2017: Per Alberto R. & Vladimir U., keep this group of parameters FIXED + /* JVY, Oct. 31, 2017: Per Alberto R. & Vladimir U., keep this group of parameters FIXED */ + /* JVY, June 11, 2020: try to open up... */ // Process=4 --> Qexchg w/additional multiplier in excitation // HDP.SetDefault( "FTF_BARYON_PROC4_A1", 0.6 ); @@ -927,7 +930,7 @@ class G4FTFSettingDefaultHDP HDP.SetDefault( "FTF_BARYON_PROC4_A3", 0. ); HDP.SetDefault( "FTF_BARYON_PROC4_ATOP",0. ); HDP.SetDefault( "FTF_BARYON_PROC4_YMIN",1.4 ); - */ + /* */ // // Parameters of participating hadron (baryon) excitation // @@ -951,7 +954,7 @@ class G4FTFSettingDefaultHDP // JVY, Aug.8, 2018 --> Feb.14, 2019 --> June 25, 2019: // Parameters of participating hadron (pions) excitation // - /* JVY, June 25, 2019: For now, keep this group of parameters FIXED + /* JVY, June 25, 2019: For now, keep this group of parameters FIXED */ // Process=0 --> Qexchg w/o excitation // HDP.SetDefault( "FTF_PION_PROC0_A1", 150.0 ); @@ -971,11 +974,18 @@ class G4FTFSettingDefaultHDP HDP.SetDefault( "FTF_PION_PROC1_A3", 0. ); HDP.SetDefault( "FTF_PION_PROC1_ATOP", 0. ); HDP.SetDefault( "FTF_PION_PROC1_YMIN", 0.0 ); + /* // // NOTE: Process #2 & 3 are projectile & target diffraction // // Process=2 --> Projectile diffraction // + // Q: Would it even make sense to make these configurable ? + // The following is hadrcoded: + // Projectile Baryon Number > 10 (AbsProjectileBaryonNumber > 10) + // ... which is "strange" because projectile is a pion !!!... so it's always OFF + // (see also lines 1007-1016) + // HDP.SetDefault( "FTF_PION_PROC2_A1", 2.27 ); HDP.SetDefault( "FTF_PION_PROC2_B1", 0.5 ); HDP.SetDefault( "FTF_PION_PROC2_A2", -98052.0); @@ -983,6 +993,7 @@ class G4FTFSettingDefaultHDP HDP.SetDefault( "FTF_PION_PROC2_A3", 0. ); HDP.SetDefault( "FTF_PION_PROC2_ATOP", 0. ); HDP.SetDefault( "FTF_PION_PROC2_YMIN", 3.0 ); + */ // // Process=3 --> Target diffraction // @@ -993,7 +1004,6 @@ class G4FTFSettingDefaultHDP HDP.SetDefault( "FTF_PION_PROC3_A3", 0.08); HDP.SetDefault( "FTF_PION_PROC3_ATOP", 0. ); HDP.SetDefault( "FTF_PION_PROC3_YMIN", 2.2 ); - */ // // projectile and/or target diffraction (dissociation) may be switched ON/OFF // @@ -1006,7 +1016,8 @@ class G4FTFSettingDefaultHDP HDP.SetDefault( "FTF_PION_DIFF_DISSO_PROJ", false ); HDP.SetDefault( "FTF_PION_DIFF_DISSO_TGT", false ); // - /* JVY, June 25, 2019: For now keep this group of parameters FIXED + /* JVY, June 25, 2019: For now keep this group of parameters FIXED */ + /* JVY, June 11, 2020: try to open up... */ // Process=4 --> Qexchg w/additional multiplier in excitation // HDP.SetDefault( "FTF_PION_PROC4_A1", 1.0 ); @@ -1016,7 +1027,7 @@ class G4FTFSettingDefaultHDP HDP.SetDefault( "FTF_PION_PROC4_A3", 0. ); HDP.SetDefault( "FTF_PION_PROC4_ATOP",0. ); HDP.SetDefault( "FTF_PION_PROC4_YMIN",2.4 ); - */ + /* */ // // NOTE; As of geant4-10-05, all these settings beloe are correct // (and are the same as they were in 10.4.ref06) @@ -1198,7 +1209,7 @@ G4FTFParamCollBaryonProj::G4FTFParamCollBaryonProj() // // Proc=0 --> Qexchg w/o excitation // - /* As of Oct. 31, 2017 keep these fixed + /* As of Oct. 31, 2017 keep these fixed */ HDP.DeveloperGet( "FTF_BARYON_PROC0_A1", fProc0A1 ); HDP.DeveloperGet( "FTF_BARYON_PROC0_B1", fProc0B1 ); HDP.DeveloperGet( "FTF_BARYON_PROC0_A2", fProc0A2 ); @@ -1206,8 +1217,9 @@ G4FTFParamCollBaryonProj::G4FTFParamCollBaryonProj() HDP.DeveloperGet( "FTF_BARYON_PROC0_A3", fProc0A3 ); HDP.DeveloperGet( "FTF_BARYON_PROC0_ATOP", fProc0Atop ); HDP.DeveloperGet( "FTF_BARYON_PROC0_YMIN", fProc0Ymin ); - */ + /* */ // + /* JVY, June 11, 2020: make configurable fProc0A1 = 13.71; fProc0B1 = 1.75; fProc0A2 = -30.69; // (or -214.5 as in Doc ?) @@ -1215,10 +1227,11 @@ G4FTFParamCollBaryonProj::G4FTFParamCollBaryonProj() fProc0A3 = 0.; fProc0Atop = 1.; // ( or 0.5 as in Doc ?) fProc0Ymin = 0.93; // (or 1.1 as in Doc ?) + */ // // Proc=1 --> Qexchg w/excitation // - /* As of Oct. 31, 2017 keep these fixed + /* As of Oct. 31, 2017 keep these fixed */ HDP.DeveloperGet( "FTF_BARYON_PROC1_A1", fProc1A1 ); HDP.DeveloperGet( "FTF_BARYON_PROC1_B1", fProc1B1 ); HDP.DeveloperGet( "FTF_BARYON_PROC1_A2", fProc1A2 ); @@ -1226,8 +1239,9 @@ G4FTFParamCollBaryonProj::G4FTFParamCollBaryonProj() HDP.DeveloperGet( "FTF_BARYON_PROC1_A3", fProc1A3 ); HDP.DeveloperGet( "FTF_BARYON_PROC1_ATOP", fProc1Atop ); HDP.DeveloperGet( "FTF_BARYON_PROC1_YMIN", fProc1Ymin ); - */ + /* */ // + /* JVY, June 11, 2020: make configurable fProc1A1 = 25.; fProc1B1 = 1.; fProc1A2 = -50.34; @@ -1235,6 +1249,7 @@ G4FTFParamCollBaryonProj::G4FTFParamCollBaryonProj() fProc1A3 = 0.; fProc1Atop = 0.; fProc1Ymin = 1.4; + */ // // Proc=2 & Proc=3 for the case ( AbsProjectileBaryonNumber > 10 || NumberOfTargetNucleons > 10 ) // (diffraction dissociation) @@ -1247,7 +1262,8 @@ G4FTFParamCollBaryonProj::G4FTFParamCollBaryonProj() // // Proc=4 --> Qexchg "w/additional multiplier" in excitation // - /* As of Oct. 31, 2017 keep these fixed + /* As of Oct. 31, 2017 keep these fixed */ + /* */ HDP.DeveloperGet( "FTF_BARYON_PROC4_A1", fProc4A1 ); HDP.DeveloperGet( "FTF_BARYON_PROC4_B1", fProc4B1 ); HDP.DeveloperGet( "FTF_BARYON_PROC4_A2", fProc4A2 ); @@ -1255,8 +1271,9 @@ G4FTFParamCollBaryonProj::G4FTFParamCollBaryonProj() HDP.DeveloperGet( "FTF_BARYON_PROC4_A3", fProc4A3 ); HDP.DeveloperGet( "FTF_BARYON_PROC4_ATOP", fProc4Atop ); HDP.DeveloperGet( "FTF_BARYON_PROC4_YMIN", fProc4Ymin ); - */ - // + /* */ + // + /* JVY, June 11, 2020: make configurable fProc4A1 = 0.6; // (or 1. as in Doc ?) fProc4B1 = 0.; fProc4A2 = -1.2; // (or -2.01 as in Doc ?) @@ -1264,6 +1281,7 @@ G4FTFParamCollBaryonProj::G4FTFParamCollBaryonProj() fProc4A3 = 0.; fProc4Atop = 0.; fProc4Ymin = 1.4; + */ // // HDP.DeveloperGet( "FTF_BARYON_DELTA_PROB_QEXCHG", fDeltaProbAtQuarkExchange ); @@ -1356,7 +1374,7 @@ G4FTFParamCollPionProj::G4FTFParamCollPionProj() // // Proc=0 --> Qexchg w/o excitation // - /* As of June 25, 2019 keep these fixed + /* As of June 25, 2019 keep these fixed */ HDP.DeveloperGet( "FTF_PION_PROC0_A1", fProc0A1 ); HDP.DeveloperGet( "FTF_PION_PROC0_B1", fProc0B1 ); HDP.DeveloperGet( "FTF_PION_PROC0_A2", fProc0A2 ); @@ -1364,8 +1382,9 @@ G4FTFParamCollPionProj::G4FTFParamCollPionProj() HDP.DeveloperGet( "FTF_PION_PROC0_A3", fProc0A3 ); HDP.DeveloperGet( "FTF_PION_PROC0_ATOP", fProc0Atop ); HDP.DeveloperGet( "FTF_PION_PROC0_YMIN", fProc0Ymin ); - */ + /* */ // + /* JVY, June 11, 2020: make configurable fProc0A1 = 150.0; fProc0B1 = 1.8; fProc0A2 =-247.3; @@ -1373,10 +1392,11 @@ G4FTFParamCollPionProj::G4FTFParamCollPionProj() fProc0A3 = 0.; fProc0Atop = 1.; // ( or 0.5 as in Doc ?) fProc0Ymin = 2.3; // (or 1.1 as in Doc ?) + */ // // Proc=1 --> Qexchg w/excitation // - /* As of Oct. 31, 2017 keep these fixed + /* As of Oct. 31, 2017 keep these fixed */ HDP.DeveloperGet( "FTF_PION_PROC1_A1", fProc1A1 ); HDP.DeveloperGet( "FTF_PION_PROC1_B1", fProc1B1 ); HDP.DeveloperGet( "FTF_PION_PROC1_A2", fProc1A2 ); @@ -1384,8 +1404,9 @@ G4FTFParamCollPionProj::G4FTFParamCollPionProj() HDP.DeveloperGet( "FTF_PION_PROC1_A3", fProc1A3 ); HDP.DeveloperGet( "FTF_PION_PROC1_ATOP", fProc1Atop ); HDP.DeveloperGet( "FTF_PION_PROC1_YMIN", fProc1Ymin ); - */ - // + /* */ + // + /* JVY, June 11, 2020: make configurable fProc1A1 = 5.77; fProc1B1 = 0.6; fProc1A2 = -5.77; @@ -1393,10 +1414,17 @@ G4FTFParamCollPionProj::G4FTFParamCollPionProj() fProc1A3 = 0.; fProc1Atop = 0.; fProc1Ymin = 0.0; + */ // // Proc=2 --> Projectile diffraction // - /* As of Oct. 31, 2017 keep these fixed + // Q: Would it even make sense to make these configurable ? + // The following is hadrcoded: + // Projectile Baryon Number > 10 (AbsProjectileBaryonNumber > 10) + // ... which is "strange" because projectile is a pion !!!... so it's always OFF + // (see also lines 1007-1016) + // + /* As of Oct. 31, 2017 keep these fixed HDP.DeveloperGet( "FTF_PION_PROC2_A1", fProc2A1 ); HDP.DeveloperGet( "FTF_PION_PROC2_B1", fProc2B1 ); HDP.DeveloperGet( "FTF_PION_PROC2_A2", fProc2A2 ); @@ -1405,7 +1433,7 @@ G4FTFParamCollPionProj::G4FTFParamCollPionProj() HDP.DeveloperGet( "FTF_PION_PROC2_ATOP", fProc2Atop ); HDP.DeveloperGet( "FTF_PION_PROC2_YMIN", fProc2Ymin ); */ - // + // keep fixed so far; see note above fProc2A1 = 2.27; fProc2B1 = 0.5; fProc2A2 =-98052.0; @@ -1416,7 +1444,7 @@ G4FTFParamCollPionProj::G4FTFParamCollPionProj() // // Proc=3 --> Target diffraction // - /* As of Oct. 31, 2017 keep these fixed + /* As of Oct. 31, 2017 keep these fixed */ HDP.DeveloperGet( "FTF_PION_PROC3_A1", fProc3A1 ); HDP.DeveloperGet( "FTF_PION_PROC3_B1", fProc3B1 ); HDP.DeveloperGet( "FTF_PION_PROC3_A2", fProc3A2 ); @@ -1424,8 +1452,9 @@ G4FTFParamCollPionProj::G4FTFParamCollPionProj() HDP.DeveloperGet( "FTF_PION_PROC3_A3", fProc3A3 ); HDP.DeveloperGet( "FTF_PION_PROC3_ATOP", fProc3Atop ); HDP.DeveloperGet( "FTF_PION_PROC3_YMIN", fProc3Ymin ); - */ + /* */ // + /* JVY, June 11, 2020: make configurable fProc3A1 = 7.0; fProc3B1 = 0.9; fProc3A2 = -85.28; @@ -1433,6 +1462,7 @@ G4FTFParamCollPionProj::G4FTFParamCollPionProj() fProc3A3 = 0.08; fProc3Atop = 0.; fProc3Ymin = 2.2; + */ // // for Proc2 & Proc3, pprojectile or target diffraction can be turned ON/OFF // if num.baryons >10 (which is strange for projectile which is pion !!!) @@ -1442,7 +1472,7 @@ G4FTFParamCollPionProj::G4FTFParamCollPionProj() // // Proc=4 --> Qexchg "w/additional multiplier" in excitation // - /* As of Oct. 31, 2017 keep these fixed + /* As of Oct. 31, 2017 keep these fixed */ HDP.DeveloperGet( "FTF_PION_PROC4_A1", fProc4A1 ); HDP.DeveloperGet( "FTF_PION_PROC4_B1", fProc4B1 ); HDP.DeveloperGet( "FTF_PION_PROC4_A2", fProc4A2 ); @@ -1450,8 +1480,9 @@ G4FTFParamCollPionProj::G4FTFParamCollPionProj() HDP.DeveloperGet( "FTF_PION_PROC4_A3", fProc4A3 ); HDP.DeveloperGet( "FTF_PION_PROC4_ATOP", fProc4Atop ); HDP.DeveloperGet( "FTF_PION_PROC4_YMIN", fProc4Ymin ); - */ + /* */ // + /* JVY, June 11, 2020: make configurable fProc4A1 = 1.0; fProc4B1 = 0.; fProc4A2 = -11.02; @@ -1459,6 +1490,7 @@ G4FTFParamCollPionProj::G4FTFParamCollPionProj() fProc4A3 = 0.; fProc4Atop = 0.; fProc4Ymin = 2.4; + */ // // HDP.DeveloperGet( "FTF_PION_DELTA_PROB_QEXCHG", fDeltaProbAtQuarkExchange ); diff --git a/source/processes/hadronic/models/parton_string/hadronization/History b/source/processes/hadronic/models/parton_string/hadronization/History index c895206b1a..9759525af3 100644 --- a/source/processes/hadronic/models/parton_string/hadronization/History +++ b/source/processes/hadronic/models/parton_string/hadronization/History @@ -14,6 +14,68 @@ code and to keep track of all tags. * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- +19-Oct-2020 A. Ribon (had-hadronization-V10-06-08) +- G4VLongitudinalStringDecay : fix by Vladimir Uzhinsky in the method + ProduceOneHadron to remove an inconsistency in the treatment of + low-mass strings with respect to the method + G4QGSMFragmentation::FragmentString . + (As consequence of this inconsistency, interactions with fewer + intra-nuclear collisions were favored, therefore producing + fewer secondary hadrons.) + +17-Oct-2020 V. Ivanchenko (had-hadronization-V10-06-07) +- G4VLongitudinalStringDecay, G4QGSMFragmentation - added protections + for arguments of G4Exp to avoid precision lost in same cases + +29-Sep-2020 A. Ribon (had-hadronization-V10-06-06) +Changes made by Vladimir Uzhinsky in order to improve the agreement +of FTF simulations with NA49 experimental data (on Pt-Xf correlations +for various particles produced in pp interactions at 158 GeV/c): +- G4LundStringFragmentation : introduced a new parameter (as a class + data member), a kind of "temperature", for sampling the Pt of + produced hadrons; this parameter has been tuned for different + fragmentation processes. + Moreover, the string direction (one of string's properties, + whose value can be either +1 for projectile-like strings or + -1 for target-like strings) is now treated correctly and used + to invert the results of the string fragmentation (in the string + rest frame) when the string direction is -1. +- G4FragmentingString : erased some inconsistencies. +- G4VLongitudinalStringDecay : clean-up. + +08-Sep-2020 A. Ribon (had-hadronization-V10-06-05) +- G4VLongitudinalStringDecay : made the logic clearer for Coverity, + but without any effect on the results. + +28-Jul-2020 A. Ribon (had-hadronization-V10-06-04) +- G4QGSMFragmentation : proper exit in the method FragmentString + when the string mass is below the threshold. + +24-Jul-2020 A. Ribon (had-hadronization-V10-06-03) +- G4LundStringFragmentation, G4QGSMFragmentation : if the flag for + heavy (charmed and bottom) hadrons is enabled, then non-zero + probabilities for c-cbar and b-bbar creation from the vacuum are set, + allowing charmed and bottom hadrons to be created during the string + fragmentation of ordinary (i.e. not heavy) projectile hadron nuclear + reactions. +- G4VLongitudinalStringDecay : in the method SetMinMasses, set the + constituent masses of charm and bottom quarks; introduced also a new + pre-processor option for debugging heavy hadrons, switched off by + default; improved comments. +- G4LundStringFragmentation : extension to charm and bottom quarks of the + methods Quark_AntiQuark_lastSplitting and Quark_Diquark_lastSplitting; + added protections in the method FragmentString to avoid rare crashes + seen with heavy hadrons. +- G4HadronBuilder : fixed condition in the method Barion to take into + account the extension to charm and bottom quarks; moreover, for both + Meson and Barion methods, we have to force by hand that the heavy + hadron produced by the string fragmentation is one of the few available + in Geant4 (in particular, all heavy hadron resonances are transformed + into close heavy hadron ground states). Introduced also a new + pre-processor option for debugging heavy hadrons, switched off by default. +- G4ExcitedStringDecay : add protection in the FragmentStrings method + to avoid rare crashes seen with heavy hadrons. + 10-Jun-2020 A. Ribon (had-hadronization-V10-06-02) - Improved treatment of antibaryon interactions in QGS (made by Vladimir Uzhinsky): diff --git a/source/processes/hadronic/models/parton_string/hadronization/include/G4FragmentingString.hh b/source/processes/hadronic/models/parton_string/hadronization/include/G4FragmentingString.hh index 326a250c1b..c66983be1e 100644 --- a/source/processes/hadronic/models/parton_string/hadronization/include/G4FragmentingString.hh +++ b/source/processes/hadronic/models/parton_string/hadronization/include/G4FragmentingString.hh @@ -105,7 +105,7 @@ class G4FragmentingString private: G4ParticleDefinition *LeftParton, *RightParton; G4ThreeVector Ptleft,Ptright; // Pt (px,py) for partons (pz ignored!) - G4double Pplus, Pminus; // p-, p+ of string, Plus ass. to Left! + G4double Pplus, Pminus; // p-, p+ of string, Plus associated to Left! G4ParticleDefinition * theStableParton, * theDecayParton; @@ -180,38 +180,24 @@ G4LorentzRotation G4FragmentingString::TransformToCenterOfMass() return toCMS; } -inline -G4LorentzRotation G4FragmentingString::TransformToAlignedCms() -{ - G4LorentzVector momentum=Pstring; - G4LorentzRotation toAlignedCms(-1*momentum.boostVector()); - - momentum= toAlignedCms* Pleft; - toAlignedCms.rotateZ(-1*momentum.phi()); - toAlignedCms.rotateY(-1*momentum.theta()); - - Pleft *= toAlignedCms; - Pright *= toAlignedCms; - Pstring *= toAlignedCms; - - Ptleft = G4ThreeVector(0.,0.,0.); - Ptright = G4ThreeVector(0.,0.,0.); - Pplus = Pstring.plus(); - Pminus = Pstring.minus(); - - return toAlignedCms; -} - inline void G4FragmentingString::SetPleft(G4LorentzVector a4momentum) { - Pleft = a4momentum; + Pleft = a4momentum; + Ptleft = Pleft.vect(); Ptleft.setZ(0.); + Pstring = Pleft + Pright; + Pplus = Pstring.plus(); + Pminus = Pstring.minus(); } inline void G4FragmentingString::SetPright(G4LorentzVector a4momentum) { - Pright = a4momentum; + Pright = a4momentum; + Ptright = Pright.vect(); Ptright.setZ(0.); + Pstring = Pleft + Pright; + Pplus = Pstring.plus(); + Pminus = Pstring.minus(); } #endif diff --git a/source/processes/hadronic/models/parton_string/hadronization/include/G4LundStringFragmentation.hh b/source/processes/hadronic/models/parton_string/hadronization/include/G4LundStringFragmentation.hh index e00c928222..44597cf5ec 100644 --- a/source/processes/hadronic/models/parton_string/hadronization/include/G4LundStringFragmentation.hh +++ b/source/processes/hadronic/models/parton_string/hadronization/include/G4LundStringFragmentation.hh @@ -107,6 +107,9 @@ class G4LundStringFragmentation: public G4VLongitudinalStringDecay G4ParticleDefinition * & RightHadron ); G4int SampleState(void); + + G4double Tmt; // "Temperature" for sampling Pt of hadrons + }; //****************************************************************************** diff --git a/source/processes/hadronic/models/parton_string/hadronization/include/G4QGSMFragmentation.hh b/source/processes/hadronic/models/parton_string/hadronization/include/G4QGSMFragmentation.hh index c3402a5008..5c11b106b4 100644 --- a/source/processes/hadronic/models/parton_string/hadronization/include/G4QGSMFragmentation.hh +++ b/source/processes/hadronic/models/parton_string/hadronization/include/G4QGSMFragmentation.hh @@ -51,8 +51,8 @@ class G4QGSMFragmentation:public G4VLongitudinalStringDecay G4bool operator!=(const G4QGSMFragmentation &right) const; private: - virtual G4bool StopFragmenting(const G4FragmentingString * const string); - virtual G4bool IsItFragmentable(const G4FragmentingString * const string); + virtual G4bool StopFragmenting(const G4FragmentingString * string); + virtual G4bool IsItFragmentable(const G4FragmentingString * string); virtual G4bool SplitLast(G4FragmentingString * string, G4KineticTrackVector * LeftVector, diff --git a/source/processes/hadronic/models/parton_string/hadronization/sources.cmake b/source/processes/hadronic/models/parton_string/hadronization/sources.cmake index cdacdd7a36..dbfa52dfcc 100644 --- a/source/processes/hadronic/models/parton_string/hadronization/sources.cmake +++ b/source/processes/hadronic/models/parton_string/hadronization/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_string.G4had_string_frag # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,38 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4had_string_frag HEADERS G4ExcitedStringDecay.hh diff --git a/source/processes/hadronic/models/parton_string/hadronization/src/G4ExcitedStringDecay.cc b/source/processes/hadronic/models/parton_string/hadronization/src/G4ExcitedStringDecay.cc index 85eb7beca5..3bda5586e9 100644 --- a/source/processes/hadronic/models/parton_string/hadronization/src/G4ExcitedStringDecay.cc +++ b/source/processes/hadronic/models/parton_string/hadronization/src/G4ExcitedStringDecay.cc @@ -167,7 +167,7 @@ G4KineticTrackVector *G4ExcitedStringDecay::FragmentStrings(const G4ExcitedStrin generatedKineticTracks->push_back(aTrack); } - if (generatedKineticTracks->size() == 0) + if (generatedKineticTracks == nullptr || generatedKineticTracks->size() == 0) { // G4cerr << "G4VPartonStringModel:No KineticTracks produced" << G4endl; // continue; diff --git a/source/processes/hadronic/models/parton_string/hadronization/src/G4FragmentingString.cc b/source/processes/hadronic/models/parton_string/hadronization/src/G4FragmentingString.cc index 74a4a5ebac..78b7f80517 100644 --- a/source/processes/hadronic/models/parton_string/hadronization/src/G4FragmentingString.cc +++ b/source/processes/hadronic/models/parton_string/hadronization/src/G4FragmentingString.cc @@ -89,9 +89,6 @@ G4FragmentingString::G4FragmentingString(const G4ExcitedString &excited) Ptleft.setZ(0.); Ptright=excited.GetRightParton()->Get4Momentum().vect(); Ptright.setZ(0.); - G4LorentzVector P=excited.Get4Momentum(); - Pplus =P.e() + P.pz(); - Pminus=P.e() - P.pz(); theStableParton=0; theDecayParton=0; @@ -101,6 +98,9 @@ G4FragmentingString::G4FragmentingString(const G4ExcitedString &excited) Pleft = excited.GetLeftParton()->Get4Momentum(); Pright = excited.GetRightParton()->Get4Momentum(); Pstring= Pleft + Pright; + + Pplus = Pstring.plus(); + Pminus = Pstring.minus(); } //--------------------------------------------------------------------------------- @@ -110,63 +110,50 @@ G4FragmentingString::G4FragmentingString(const G4FragmentingString &old, const G4LorentzVector *momentum) { decaying=None; + // Momentum of produced hadron G4LorentzVector Momentum = G4LorentzVector(momentum->vect(),momentum->e()); - // Momentum of produced hadron - //G4cout<<"Had Mom "<vect(); + Ptleft.setZ(0.); + Pleft = old.Pleft - Momentum; - G4LorentzRotation toLAB(Pstring.boostVector()); + Pstring = Pleft + Pright; + Pplus = Pstring.plus(); + Pminus = Pstring.minus(); - Pleft = toLAB*G4LorentzVector(0.,0., StringMass/2.,StringMass/2.); - Pright = toLAB*G4LorentzVector(0.,0.,-StringMass/2.,StringMass/2.); + theDecayParton=GetLeftParton(); + theStableParton=GetRightParton(); + decaying = Left; + } else if ( old.decaying == Right ) + { + RightParton = newdecay; + Ptright = old.Ptright - momentum->vect(); + Ptright.setZ(0.); + Pright = old.Pright - Momentum; - Ptleft =Pleft.vect(); Ptleft.setZ(0.); - Ptright=Pright.vect(); Ptright.setZ(0.); + LeftParton = old.LeftParton; + Ptleft = old.Ptleft; + Pleft = old.Pleft; - //G4cout<<"Pleft "<vect(); - // Ptleft.setZ(0.); - // Pleft = old.Pleft - Momentum; - // Pstring=Pleft + Pright; - - theDecayParton=GetLeftParton(); - theStableParton=GetRightParton(); - decaying=Left; - } else if ( old.decaying == Right ) - { - RightParton = newdecay; - // Ptright = old.Ptright - momentum->vect(); - // Ptright.setZ(0.); - // Pright = old.Pright + Momentum; - - LeftParton = old.LeftParton; - // Ptleft = old.Ptleft; - // Pleft = old.Pleft; - // Pstring=Pleft + Pright; - - theDecayParton=GetRightParton(); - theStableParton=GetLeftParton(); - decaying=Right; - } else + theDecayParton=GetRightParton(); + theStableParton=GetLeftParton(); + decaying = Right; + } else { throw G4HadronicException(__FILE__, __LINE__, "G4FragmentingString::G4FragmentingString: no decay Direction defined"); } - Pplus = Pstring.plus(); //old.Pplus - (momentum->e() + momentum->pz()); - Pminus = Pstring.minus(); //old.Pminus - (momentum->e() - momentum->pz()); } @@ -209,7 +196,6 @@ G4FragmentingString::G4FragmentingString(const G4FragmentingString &old, G4FragmentingString::~G4FragmentingString() {} - //--------------------------------------------------------------------------------- void G4FragmentingString::SetLeftPartonStable() @@ -300,21 +286,16 @@ G4double G4FragmentingString::LightConeDecay() G4LorentzVector G4FragmentingString::Get4Momentum() const { - G4LorentzVector momentum(Ptleft+Ptright,0); - momentum.setPz(0.5*(Pplus-Pminus)); - momentum.setE(0.5*(Pplus+Pminus)); - return momentum; + return Pstring; } G4double G4FragmentingString::Mass2() const { - // return Pplus*Pminus - (Ptleft+Ptright).mag2(); return Pstring.mag2(); } G4double G4FragmentingString::Mass() const { - // return std::sqrt(this->Mass2()); return Pstring.mag(); } @@ -338,3 +319,24 @@ G4LorentzVector G4FragmentingString::GetPright() return Pright; } +G4LorentzRotation G4FragmentingString::TransformToAlignedCms() +{ + G4LorentzVector momentum = Pstring; + G4LorentzRotation toAlignedCms(-1*momentum.boostVector()); + momentum = toAlignedCms * Pleft; + + toAlignedCms.rotateZ(-1*momentum.phi()); + toAlignedCms.rotateY(-1*momentum.theta()); + + Pleft *= toAlignedCms; + Pright *= toAlignedCms; + Pstring *= toAlignedCms; + + Ptleft = G4ThreeVector(Pleft.vect()); + Ptleft.setZ(0.); + Ptright = G4ThreeVector(Pright.vect()); + Pplus = Pstring.plus(); + Pminus = Pstring.minus(); + + return toAlignedCms; +} diff --git a/source/processes/hadronic/models/parton_string/hadronization/src/G4HadronBuilder.cc b/source/processes/hadronic/models/parton_string/hadronization/src/G4HadronBuilder.cc index 91b75dffcf..aa33f1a189 100644 --- a/source/processes/hadronic/models/parton_string/hadronization/src/G4HadronBuilder.cc +++ b/source/processes/hadronic/models/parton_string/hadronization/src/G4HadronBuilder.cc @@ -40,6 +40,7 @@ #include "G4ParticleTable.hh" //#define debug_Hbuilder +//#define debug_heavyHadrons G4HadronBuilder::G4HadronBuilder(G4double mesonMix, G4double barionMix, std::vector scalarMesonMix, @@ -168,6 +169,133 @@ G4ParticleDefinition * G4HadronBuilder::Meson(G4ParticleDefinition * black, if ( (IsUp && IsAnti ) || (!IsUp && !IsAnti ) ) PDGEncoding = - PDGEncoding; } + // --------------------------------------------------------------------- + // Special treatment for charmed and bottom mesons : in Geant4 there are + // no excited charmed or bottom mesons, therefore we need to transform these + // into existing charmed and bottom mesons in Geant4. Whenever possible, + // we use the corresponding ground state mesons with the same quantum numbers; + // else, we prefer to conserve the electric charge rather than other flavor numbers. + #ifdef debug_heavyHadrons + G4int initialPDGEncoding = PDGEncoding; + #endif + if ( std::abs( PDGEncoding ) == 10411 ) // D*0(2400)+ -> D+ + ( PDGEncoding > 0 ? PDGEncoding = 411 : PDGEncoding = -411 ); + else if ( std::abs( PDGEncoding ) == 10421 ) // D*0(2400)0 -> D0 + ( PDGEncoding > 0 ? PDGEncoding = 421 : PDGEncoding = -421 ); + else if ( std::abs( PDGEncoding ) == 413 ) // D*(2010)+ -> D+ + ( PDGEncoding > 0 ? PDGEncoding = 411 : PDGEncoding = -411 ); + else if ( std::abs( PDGEncoding ) == 423 ) // D*(2007)0 -> D0 + ( PDGEncoding > 0 ? PDGEncoding = 421 : PDGEncoding = -421 ); + else if ( std::abs( PDGEncoding ) == 10413 ) // D1(2420)+ -> D+ + ( PDGEncoding > 0 ? PDGEncoding = 411 : PDGEncoding = -411 ); + else if ( std::abs( PDGEncoding ) == 10423 ) // D1(2420)0 -> D0 + ( PDGEncoding > 0 ? PDGEncoding = 421 : PDGEncoding = -421 ); + else if ( std::abs( PDGEncoding ) == 20413 ) // D1(H)+ -> D+ + ( PDGEncoding > 0 ? PDGEncoding = 411 : PDGEncoding = -411 ); + else if ( std::abs( PDGEncoding ) == 20423 ) // D1(2430)0 -> D0 + ( PDGEncoding > 0 ? PDGEncoding = 421 : PDGEncoding = -421 ); + else if ( std::abs( PDGEncoding ) == 415 ) // D2*(2460)+ -> D+ + ( PDGEncoding > 0 ? PDGEncoding = 411 : PDGEncoding = -411 ); + else if ( std::abs( PDGEncoding ) == 425 ) // D2*(2460)0 -> D0 + ( PDGEncoding > 0 ? PDGEncoding = 421 : PDGEncoding = -421 ); + else if ( std::abs( PDGEncoding ) == 10431 ) // Ds0*(2317)+ -> Ds+ + ( PDGEncoding > 0 ? PDGEncoding = 431 : PDGEncoding = -431 ); + else if ( std::abs( PDGEncoding ) == 433 ) // Ds*+ -> Ds+ + ( PDGEncoding > 0 ? PDGEncoding = 431 : PDGEncoding = -431 ); + else if ( std::abs( PDGEncoding ) == 10433 ) // Ds1(2536)+ -> Ds+ + ( PDGEncoding > 0 ? PDGEncoding = 431 : PDGEncoding = -431 ); + else if ( std::abs( PDGEncoding ) == 20433 ) // Ds1(2460)+ -> Ds+ + ( PDGEncoding > 0 ? PDGEncoding = 431 : PDGEncoding = -431 ); + else if ( std::abs( PDGEncoding ) == 435 ) // Ds2*(2573)+ -> Ds+ + ( PDGEncoding > 0 ? PDGEncoding = 431 : PDGEncoding = -431 ); + else if ( std::abs( PDGEncoding ) == 10441 ) PDGEncoding = 441; // chi_c0(1P) -> eta_c + else if ( std::abs( PDGEncoding ) == 100441 ) PDGEncoding = 441; // eta_c(2S) -> eta_c + else if ( std::abs( PDGEncoding ) == 10443 ) PDGEncoding = 443; // h_c(1P) -> J/psi + else if ( std::abs( PDGEncoding ) == 20443 ) PDGEncoding = 443; // chi_c1(1P) -> J/psi + else if ( std::abs( PDGEncoding ) == 100443 ) PDGEncoding = 443; // psi(2S) -> J/psi + else if ( std::abs( PDGEncoding ) == 30443 ) PDGEncoding = 443; // psi(3770) -> J/psi + else if ( std::abs( PDGEncoding ) == 9000443 ) PDGEncoding = 443; // psi(4040) -> J/psi + else if ( std::abs( PDGEncoding ) == 9010443 ) PDGEncoding = 443; // psi(4160) -> J/psi + else if ( std::abs( PDGEncoding ) == 9020443 ) PDGEncoding = 443; // psi(4415) -> J/psi + else if ( std::abs( PDGEncoding ) == 445 ) PDGEncoding = 443; // chi_c2(1P) -> J/psi + else if ( std::abs( PDGEncoding ) == 100445 ) PDGEncoding = 443; // chi_c2(2P) -> J/psi + // Bottom mesons + else if ( std::abs( PDGEncoding ) == 10511 ) // B0*0 -> B0 + ( PDGEncoding > 0 ? PDGEncoding = 511 : PDGEncoding = -511 ); + else if ( std::abs( PDGEncoding ) == 10521 ) // B0*+ -> B+ + ( PDGEncoding > 0 ? PDGEncoding = 521 : PDGEncoding = -521 ); + else if ( std::abs( PDGEncoding ) == 513 ) // B*0 -> B0 + ( PDGEncoding > 0 ? PDGEncoding = 511 : PDGEncoding = -511 ); + else if ( std::abs( PDGEncoding ) == 523 ) // B*+ -> B+ + ( PDGEncoding > 0 ? PDGEncoding = 521 : PDGEncoding = -521 ); + else if ( std::abs( PDGEncoding ) == 10513 ) // B1(L)0 -> B0 + ( PDGEncoding > 0 ? PDGEncoding = 511 : PDGEncoding = -511 ); + else if ( std::abs( PDGEncoding ) == 10523 ) // B1(L)+ -> B+ + ( PDGEncoding > 0 ? PDGEncoding = 521 : PDGEncoding = -521 ); + else if ( std::abs( PDGEncoding ) == 20513 ) // B1(H)0 -> B0 + ( PDGEncoding > 0 ? PDGEncoding = 511 : PDGEncoding = -511 ); + else if ( std::abs( PDGEncoding ) == 20523 ) // B1(H)+ -> B+ + ( PDGEncoding > 0 ? PDGEncoding = 521 : PDGEncoding = -521 ); + else if ( std::abs( PDGEncoding ) == 515 ) // B2*0 -> B0 + ( PDGEncoding > 0 ? PDGEncoding = 511 : PDGEncoding = -511 ); + else if ( std::abs( PDGEncoding ) == 525 ) // B2*+ -> B+ + ( PDGEncoding > 0 ? PDGEncoding = 521 : PDGEncoding = -521 ); + else if ( std::abs( PDGEncoding ) == 10531 ) // Bs0*0 -> Bs0 + ( PDGEncoding > 0 ? PDGEncoding = 531 : PDGEncoding = -531 ); + else if ( std::abs( PDGEncoding ) == 533 ) // Bs*0 -> Bs0 + ( PDGEncoding > 0 ? PDGEncoding = 531 : PDGEncoding = -531 ); + else if ( std::abs( PDGEncoding ) == 10533 ) // Bs1(L)0 -> Bs0 + ( PDGEncoding > 0 ? PDGEncoding = 531 : PDGEncoding = -531 ); + else if ( std::abs( PDGEncoding ) == 20533 ) // Bs1(H)0 -> Bs0 + ( PDGEncoding > 0 ? PDGEncoding = 531 : PDGEncoding = -531 ); + else if ( std::abs( PDGEncoding ) == 535 ) // Bs2*0 -> Bs0 + ( PDGEncoding > 0 ? PDGEncoding = 531 : PDGEncoding = -531 ); + else if ( std::abs( PDGEncoding ) == 10541 ) // Bc0*+ -> Bc+ + ( PDGEncoding > 0 ? PDGEncoding = 541 : PDGEncoding = -541 ); + else if ( std::abs( PDGEncoding ) == 543 ) // Bc*+ -> Bc+ + ( PDGEncoding > 0 ? PDGEncoding = 541 : PDGEncoding = -541 ); + else if ( std::abs( PDGEncoding ) == 10543 ) // Bc1(L)+ -> Bc+ + ( PDGEncoding > 0 ? PDGEncoding = 541 : PDGEncoding = -541 ); + else if ( std::abs( PDGEncoding ) == 20543 ) // Bc1(H)+ -> Bc+ + ( PDGEncoding > 0 ? PDGEncoding = 541 : PDGEncoding = -541 ); + else if ( std::abs( PDGEncoding ) == 545 ) // Bc2*+ -> Bc+ + ( PDGEncoding > 0 ? PDGEncoding = 541 : PDGEncoding = -541 ); + else if ( std::abs( PDGEncoding ) == 551 ) PDGEncoding = 553; // eta_b(1S) -> Upsilon + else if ( std::abs( PDGEncoding ) == 10551 ) PDGEncoding = 553; // chi_b0(1P) -> Upsilon + else if ( std::abs( PDGEncoding ) == 100551 ) PDGEncoding = 553; // eta_b(2S) -> Upsilon + else if ( std::abs( PDGEncoding ) == 110551 ) PDGEncoding = 553; // chi_b0(2P) -> Upsilon + else if ( std::abs( PDGEncoding ) == 200551 ) PDGEncoding = 553; // eta_b(3S) -> Upsilon + else if ( std::abs( PDGEncoding ) == 210551 ) PDGEncoding = 553; // chi_b0(3P) -> Upsilon + else if ( std::abs( PDGEncoding ) == 10553 ) PDGEncoding = 553; // h_b(1P) -> Upsilon + else if ( std::abs( PDGEncoding ) == 20553 ) PDGEncoding = 553; // chi_b1(1P) -> Upsilon + else if ( std::abs( PDGEncoding ) == 30553 ) PDGEncoding = 553; // Upsilon_1(1D) -> Upsilon + else if ( std::abs( PDGEncoding ) == 100553 ) PDGEncoding = 553; // Upsilon(2S) -> Upsilon + else if ( std::abs( PDGEncoding ) == 110553 ) PDGEncoding = 553; // h_b(2P) -> Upsilon + else if ( std::abs( PDGEncoding ) == 120553 ) PDGEncoding = 553; // chi_b1(2P) -> Upsilon + else if ( std::abs( PDGEncoding ) == 130553 ) PDGEncoding = 553; // Upsilon_1(2D) -> Upsilon + else if ( std::abs( PDGEncoding ) == 200553 ) PDGEncoding = 553; // Upsilon(3S) -> Upsilon + else if ( std::abs( PDGEncoding ) == 210553 ) PDGEncoding = 553; // h_b(3P) -> Upsilon + else if ( std::abs( PDGEncoding ) == 220553 ) PDGEncoding = 553; // chi_b1(3P) -> Upsilon + else if ( std::abs( PDGEncoding ) == 300553 ) PDGEncoding = 553; // Upsilon(4S) -> Upsilon + else if ( std::abs( PDGEncoding ) == 9000553 ) PDGEncoding = 553; // Upsilon(10860) -> Upsilon + else if ( std::abs( PDGEncoding ) == 9010553 ) PDGEncoding = 553; // Upsilon(11020) -> Upsilon + else if ( std::abs( PDGEncoding ) == 555 ) PDGEncoding = 553; // chi_b2(1P) -> Upsilon + else if ( std::abs( PDGEncoding ) == 10555 ) PDGEncoding = 553; // eta_b2(1D) -> Upsilon + else if ( std::abs( PDGEncoding ) == 20555 ) PDGEncoding = 553; // Upsilon_2(1D) -> Upsilon + else if ( std::abs( PDGEncoding ) == 100555 ) PDGEncoding = 553; // chi_b2(2P) -> Upsilon + else if ( std::abs( PDGEncoding ) == 110555 ) PDGEncoding = 553; // eta_b2(2D) -> Upsilon + else if ( std::abs( PDGEncoding ) == 120555 ) PDGEncoding = 553; // Upsilon_2(2D) -> Upsilon + else if ( std::abs( PDGEncoding ) == 200555 ) PDGEncoding = 553; // chi_b2(3P) -> Upsilon + else if ( std::abs( PDGEncoding ) == 557 ) PDGEncoding = 553; // Upsilon_3(1D) -> Upsilon + else if ( std::abs( PDGEncoding ) == 100557 ) PDGEncoding = 553; // Upsilon_3(2D) -> Upsilon + #ifdef debug_heavyHadrons + if ( initialPDGEncoding != PDGEncoding ) { + G4cout << "G4HadronBuilder::Meson : forcing (inexisting in G4) heavy meson with pdgCode=" + << initialPDGEncoding << " into pdgCode=" << PDGEncoding << G4endl; + } + #endif + // --------------------------------------------------------------------- + G4ParticleDefinition * MesonDef= G4ParticleTable::GetParticleTable()->FindParticle(PDGEncoding); @@ -247,7 +375,7 @@ G4ParticleDefinition * G4HadronBuilder::Barion(G4ParticleDefinition * black, theSpin = (kfla == kflb && kflb == kflc)? SpinThreeHalf : theSpin; G4int kfll = 0; - if (kfld < 4) { + if (kfld < 6) { if (theSpin == SpinHalf && kfld > kfle && kfle > kflf) { // Spin J=1/2 and all three quarks different // Two states exist: (uds -> lambda or sigma0) @@ -274,6 +402,206 @@ G4ParticleDefinition * G4HadronBuilder::Barion(G4ParticleDefinition * black, if (id1 < 0) PDGEncoding = -PDGEncoding; + // --------------------------------------------------------------------- + // Special treatment for charmed and bottom baryons : in Geant4 there are + // neither excited charmed or bottom baryons, nor baryons with two or three + // heavy (c, b) constitutent quarks: + // Sigma_c* , Xi_c' , Xi_c* , Omega_c* , + // Xi_cc , Xi_cc* , Omega_cc , Omega_cc* , Omega_ccc ; + // Sigma_b* , Xi_b' , Xi_b* , Omega_b*, + // Xi_bc , Xi_bc' , Xi_bc* , Omega_bc , Omega_bc' , Omega_bc* , + // Omega_bcc , Omega_bcc* , Xi_bb, Xi_bb* , Omega_bb, Omega_bb* , + // Omega_bbc , Omega_bbc* , Omega_bbb + // therefore we need to transform these into existing charmed and bottom + // baryons in Geant4. Whenever possible, we use the corresponding ground state + // baryons with the same quantum numbers; else, we prefer to conserve the + // electric charge rather than other flavor numbers. + #ifdef debug_heavyHadrons + G4int charmViolation = 0, bottomViolation = 0; // Only positive + G4int initialPDGEncoding = PDGEncoding; + #endif + if ( std::abs( PDGEncoding ) == 4224 ) { // Sigma_c*++ -> Sigma_c++ + ( PDGEncoding > 0 ? PDGEncoding = 4222 : PDGEncoding = -4222 ); + } else if ( std::abs( PDGEncoding ) == 4214 ) { // Sigma_c*+ -> Sigma_c+ + ( PDGEncoding > 0 ? PDGEncoding = 4212 : PDGEncoding = -4212 ); + } else if ( std::abs( PDGEncoding ) == 4114 ) { // Sigma_c*0 -> Sigma_c0 + ( PDGEncoding > 0 ? PDGEncoding = 4112 : PDGEncoding = -4112 ); + } else if ( std::abs( PDGEncoding ) == 4322 ) { // Xi_c'+ -> Xi_c+ + ( PDGEncoding > 0 ? PDGEncoding = 4232 : PDGEncoding = -4232 ); + } else if ( std::abs( PDGEncoding ) == 4312 ) { // Xi_c'0 -> Xi_c0 + ( PDGEncoding > 0 ? PDGEncoding = 4132 : PDGEncoding = -4132 ); + } else if ( std::abs( PDGEncoding ) == 4324 ) { // Xi_c*+ -> Xi_c+ + ( PDGEncoding > 0 ? PDGEncoding = 4232 : PDGEncoding = -4232 ); + } else if ( std::abs( PDGEncoding ) == 4314 ) { // Xi_c*0 -> Xi_c0 + ( PDGEncoding > 0 ? PDGEncoding = 4132 : PDGEncoding = -4132 ); + } else if ( std::abs( PDGEncoding ) == 4334 ) { // Omega_c*0 -> Omega_c0 + ( PDGEncoding > 0 ? PDGEncoding = 4332 : PDGEncoding = -4332 ); + } else if ( std::abs( PDGEncoding ) == 4412 ) { // Xi_cc+ -> Xi_c+ + ( PDGEncoding > 0 ? PDGEncoding = 4232 : PDGEncoding = -4232 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 4422 ) { // Xi_cc++ -> Sigma_c++ (use Sigma to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 4222 : PDGEncoding = -4222 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 4414 ) { // Xi_cc*+ -> Xi_c+ + ( PDGEncoding > 0 ? PDGEncoding = 4232 : PDGEncoding = -4232 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 4424 ) { // Xi_cc*++ -> Sigma_c++ (use Sigma to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 4222 : PDGEncoding = -4222 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 4432 ) { // Omega_cc+ -> Xi_c+ (use Xi to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 4232 : PDGEncoding = -4232 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 4434 ) { // Omega_cc*+ -> Xi_c+ (use Xi to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 4232 : PDGEncoding = -4232 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 4444 ) { // Omega_ccc++ -> Sigma_c++ (use Sigma to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 4222 : PDGEncoding = -4222 ); + #ifdef debug_heavyHadrons + charmViolation = 2; + #endif + // Bottom baryons + } else if ( std::abs( PDGEncoding ) == 5114 ) { // Sigma_b*- -> Sigma_b- + ( PDGEncoding > 0 ? PDGEncoding = 5112 : PDGEncoding = -5112 ); + } else if ( std::abs( PDGEncoding ) == 5214 ) { // Sigma_b*0 -> Sigma_b0 + ( PDGEncoding > 0 ? PDGEncoding = 5212 : PDGEncoding = -5212 ); + } else if ( std::abs( PDGEncoding ) == 5224 ) { // Sigma_b*+ -> Sigma_b+ + ( PDGEncoding > 0 ? PDGEncoding = 5222 : PDGEncoding = -5222 ); + } else if ( std::abs( PDGEncoding ) == 5312 ) { // Xi_b'- -> Xi_b- + ( PDGEncoding > 0 ? PDGEncoding = 5132 : PDGEncoding = -5132 ); + } else if ( std::abs( PDGEncoding ) == 5322 ) { // Xi_b'0 -> Xi_b0 + ( PDGEncoding > 0 ? PDGEncoding = 5232 : PDGEncoding = -5232 ); + } else if ( std::abs( PDGEncoding ) == 5314 ) { // Xi_b*- -> Xi_b- + ( PDGEncoding > 0 ? PDGEncoding = 5132 : PDGEncoding = -5132 ); + } else if ( std::abs( PDGEncoding ) == 5324 ) { // Xi_b*0 -> Xi_b0 + ( PDGEncoding > 0 ? PDGEncoding = 5232 : PDGEncoding = -5232 ); + } else if ( std::abs( PDGEncoding ) == 5334 ) { // Omega_b*- -> Omega_b- + ( PDGEncoding > 0 ? PDGEncoding = 5332 : PDGEncoding = -5332 ); + } else if ( std::abs( PDGEncoding ) == 5142 ) { // Xi_bc0 -> Xi_b0 + ( PDGEncoding > 0 ? PDGEncoding = 5232 : PDGEncoding = -5232 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5242 ) { // Xi_bc+ -> Sigma_b+ (use Sigma to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 5222 : PDGEncoding = -5222 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5412 ) { // Xi_bc'0 -> Xi_b0 + ( PDGEncoding > 0 ? PDGEncoding = 5232 : PDGEncoding = -5232 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5422 ) { // Xi_bc'+ -> Sigma_b+ (use Sigma to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 5222 : PDGEncoding = -5222 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5414 ) { // Xi_bc*0 -> Xi_b0 + ( PDGEncoding > 0 ? PDGEncoding = 5232 : PDGEncoding = -5232 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5424 ) { // Xi_bc*+ -> Sigma_b+ (use Sigma to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 5222 : PDGEncoding = -5222 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5342 ) { // Omega_bc0 -> Xi_b0 (use Xi to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 5232 : PDGEncoding = -5232 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5432 ) { // Omega_bc'0 -> Xi_b0 (use Xi to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 5232 : PDGEncoding = -5232 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5434 ) { // Omega_bc*0 -> Xi_b0 (use Xi to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 5232 : PDGEncoding = -5232 ); + #ifdef debug_heavyHadrons + charmViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5442 ) { // Omega_bcc+ -> Sigma_b+ (use Sigma to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 5222 : PDGEncoding = -5222 ); + #ifdef debug_heavyHadrons + charmViolation = 2; + #endif + } else if ( std::abs( PDGEncoding ) == 5444 ) { // Omega_bcc*+ -> Sigma_b+ (use Sigma to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 5222 : PDGEncoding = -5222 ); + #ifdef debug_heavyHadrons + charmViolation = 2; + #endif + } else if ( std::abs( PDGEncoding ) == 5512 ) { // Xi_bb- -> Xi_b- + ( PDGEncoding > 0 ? PDGEncoding = 5132 : PDGEncoding = -5132 ); + #ifdef debug_heavyHadrons + bottomViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5522 ) { // Xi_bb0 -> Xi_b0 + ( PDGEncoding > 0 ? PDGEncoding = 5232 : PDGEncoding = -5232 ); + #ifdef debug_heavyHadrons + bottomViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5514 ) { // Xi_bb*- -> Xi_b- + ( PDGEncoding > 0 ? PDGEncoding = 5132 : PDGEncoding = -5132 ); + #ifdef debug_heavyHadrons + bottomViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5524 ) { // Xi_bb*0 -> Xi_b0 + ( PDGEncoding > 0 ? PDGEncoding = 5232 : PDGEncoding = -5232 ); + #ifdef debug_heavyHadrons + bottomViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5532 ) { // Omega_bb- -> Omega_b- + ( PDGEncoding > 0 ? PDGEncoding = 5332 : PDGEncoding = -5332 ); + #ifdef debug_heavyHadrons + bottomViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5534 ) { // Omega_bb*- -> Omega_b- + ( PDGEncoding > 0 ? PDGEncoding = 5332 : PDGEncoding = -5332 ); + #ifdef debug_heavyHadrons + bottomViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5542 ) { // Omega_bbc0 -> Xi_b0 (use Xi to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 5232 : PDGEncoding = -5232 ); + #ifdef debug_heavyHadrons + charmViolation = 1; bottomViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5544 ) { // Omega_bbc*0 -> Xi_b0 (use Xi to conserve charge) + ( PDGEncoding > 0 ? PDGEncoding = 5232 : PDGEncoding = -5232 ); + #ifdef debug_heavyHadrons + charmViolation = 1; bottomViolation = 1; + #endif + } else if ( std::abs( PDGEncoding ) == 5554 ) { // Omega_bbb- -> Omega_b- + ( PDGEncoding > 0 ? PDGEncoding = 5332 : PDGEncoding = -5332 ); + #ifdef debug_heavyHadrons + bottomViolation = 2; + #endif + } + #ifdef debug_heavyHadrons + if ( initialPDGEncoding != PDGEncoding ) { + G4cout << "G4HadronBuilder::Barion : forcing (inexisting in G4) heavy baryon with pdgCode=" + << initialPDGEncoding << " into pdgCode=" << PDGEncoding << G4endl; + if ( charmViolation != 0 || bottomViolation != 0 ) { + G4cout << "\t --> VIOLATION of " << ( charmViolation != 0 ? " CHARM " : " " ) + << ( charmViolation != 0 && bottomViolation != 0 ? " and " : " " ) + << ( bottomViolation != 0 ? " BOTTOM " : " " ) << " quantum number ! " << G4endl; + } + } + #endif + // --------------------------------------------------------------------- + G4ParticleDefinition * BarionDef= G4ParticleTable::GetParticleTable()->FindParticle(PDGEncoding); diff --git a/source/processes/hadronic/models/parton_string/hadronization/src/G4LundStringFragmentation.cc b/source/processes/hadronic/models/parton_string/hadronization/src/G4LundStringFragmentation.cc index 71ef6c3cc0..113110efec 100644 --- a/source/processes/hadronic/models/parton_string/hadronization/src/G4LundStringFragmentation.cc +++ b/source/processes/hadronic/models/parton_string/hadronization/src/G4LundStringFragmentation.cc @@ -37,7 +37,7 @@ #include "G4FragmentingString.hh" #include "G4DiQuarks.hh" #include "G4Quarks.hh" - +#include "G4HadronicParameters.hh" #include "G4Exp.hh" #include "G4Pow.hh" @@ -52,19 +52,26 @@ G4LundStringFragmentation::G4LundStringFragmentation() SetMassCut(210.*MeV); // Mpi + Delta // For ProduceOneHadron it is required // that no one pi-meson can be produced. - SigmaQT = 0.435 * GeV; - + Tmt = 190.0 * MeV; SetStringTensionParameter(1.*GeV/fermi); SetDiquarkBreakProbability(0.5); - SetStrangenessSuppression((1.0 - 0.13)/2.0); - + SetStrangenessSuppression((1.0 - 0.12)/2.0); SetDiquarkSuppression(0.15); - // For the time being, set to 0.0 the probabilities for c-cbar and b-bbar creation. - SetProbCCbar(0.0); //(0.005); // According to O.I. Piskunova Yad. Fiz. 56 (1993) 1094 - SetProbBBbar(0.0); //(5.0e-5); // According to O.I. Piskunova Yad. Fiz. 56 (1993) 1094 - + // Check if charmed and bottom hadrons are enabled: if this is the case, then + // set the non-zero probabilities for c-cbar and b-bbar creation from the vacuum, + // else set them to 0.0. If these probabilities are/aren't zero then charmed or bottom + // hadrons can't/can be created during the string fragmentation of ordinary + // (i.e. not heavy) projectile hadron nuclear reactions. + if ( G4HadronicParameters::Instance()->EnableBCParticles() ) { + SetProbCCbar(0.005); // According to O.I. Piskunova Yad. Fiz. 56 (1993) 1094 + SetProbBBbar(5.0e-5); // According to O.I. Piskunova Yad. Fiz. 56 (1993) 1094 + } else { + SetProbCCbar(0.0); + SetProbBBbar(0.0); + } + SetMinMasses(); // For treating of small string decays } @@ -108,15 +115,20 @@ G4KineticTrackVector* G4LundStringFragmentation::FragmentString(const G4ExcitedS LeftVector=ProduceOneHadron(&theString); SetMassCut(Mcut); - LeftVector->operator[](0)->SetFormationTime(theString.GetTimeOfCreation()); - LeftVector->operator[](0)->SetPosition(theString.GetPosition()); - - if (LeftVector->size() > 1) - { + if ( LeftVector ) + { + if ( LeftVector->size() > 0) + { + LeftVector->operator[](0)->SetFormationTime(theString.GetTimeOfCreation()); + LeftVector->operator[](0)->SetPosition(theString.GetPosition()); + } + if (LeftVector->size() > 1) + { // 2 hadrons created from qq-qqbar are stored LeftVector->operator[](1)->SetFormationTime(theString.GetTimeOfCreation()); LeftVector->operator[](1)->SetPosition(theString.GetPosition()); - } + } + } return LeftVector; } @@ -176,6 +188,8 @@ G4bool G4LundStringFragmentation::Loop_toFragmentString( const G4ExcitedString <<"Direction "<TransformToAlignedCms(); + toObserverFrameI = toCmsI.inverse(); + G4LorentzRotation toCms, toObserverFrame; //G4cout<<"Main loop start whilecounter "<TransformToAlignedCms(); toObserverFrame= toCms.inverse(); + #ifdef debug_LUNDfragmentation //G4cout<<"CMS Left mom "<GetPleft()<GetPright()<LorentzRotate(toObserverFrame); + currentString->LorentzRotate(toObserverFrame); }; if ( loopCounter >= maxNumberOfLoops ) { @@ -262,6 +280,7 @@ G4bool G4LundStringFragmentation::Loop_toFragmentString( const G4ExcitedString #ifdef debug_LUNDfragmentation if (inner_success) G4cout<<"Split remaining string into 2 final hadrons."<size(); ++hadronI ) { + G4LorentzVector Tmp = LeftVector->operator[](hadronI)->Get4Momentum(); + Tmp.setZ(sign*Tmp.getZ()); + Tmp *= toObserverFrameI; + LeftVector->operator[](hadronI)->Set4Momentum(Tmp); + } + for ( unsigned int hadronI = 0; hadronI < RightVector->size(); ++hadronI ) { + G4LorentzVector Tmp = RightVector->operator[](hadronI)->Get4Momentum(); + Tmp.setZ(sign*Tmp.getZ()); + Tmp *= toObserverFrameI; + RightVector->operator[](hadronI)->Set4Momentum(Tmp); + } + return final_success; } @@ -397,7 +432,7 @@ G4KineticTrack * G4LundStringFragmentation::Splitup(G4FragmentingString *string, #endif G4ThreeVector Pos; Hadron = new G4KineticTrack(HadronDefinition, 0,Pos, *HadronMomentum); - + if ( newString ) delete newString; newString=new G4FragmentingString(*string,newStringEnd, @@ -439,7 +474,7 @@ G4ParticleDefinition * G4LundStringFragmentation::DiQuarkSplitup(G4ParticleDefin decayQuarkEncoding = Swap; } - G4int IsParticle=(decayQuarkEncoding>0) ? -1 : +1; // if we have a quark, we need antiquark) + G4int IsParticle=(decayQuarkEncoding>0) ? -1 : +1; // if we have a quark, we need antiquark pDefPair QuarkPair = CreatePartonPair(IsParticle,false); // no diquarks wanted @@ -507,26 +542,39 @@ G4LorentzVector * G4LundStringFragmentation::SplitEandP(G4ParticleDefinition * p String4Momentum.setPz(0.); G4ThreeVector StringPt=String4Momentum.vect(); - + StringPt.setZ(0.); + // calculate and assign hadron transverse momentum component HadronPx and HadronPy G4ThreeVector HadronPt , RemSysPt; G4double HadronMassT2, ResidualMassT2; G4double HadronMt, Pt, Pt2, phi; + + G4double TmtCur = Tmt; + if ( (string->GetDecayParton()->GetParticleSubType()== "quark") && + (pHadron->GetBaryonNumber() != 0) ) { + TmtCur = Tmt*0.37; // q->B + } else if ( (string->GetDecayParton()->GetParticleSubType()== "quark") && + (pHadron->GetBaryonNumber() == 0) ) { + //TmtCur = Tmt; // q->M + } else if ( (string->GetDecayParton()->GetParticleSubType()== "di_quark") && + (pHadron->GetBaryonNumber() == 0) ) { + //TmtCur = Tmt*0.89; // qq -> M + } else if ( (string->GetDecayParton()->GetParticleSubType()== "di_quark") && + (pHadron->GetBaryonNumber() != 0) ) { + TmtCur = Tmt*1.35; // qq -> B + } + //... sample Pt of the hadron G4int attempt=0; do { attempt++; if (attempt > StringLoopInterrupt) {return 0;} - HadronMt = HadronMass - 300.0*G4Log(G4UniformRand()); + HadronMt = HadronMass - TmtCur*G4Log(G4UniformRand()); Pt2 = sqr(HadronMt)-sqr(HadronMass); Pt=std::sqrt(Pt2); phi = 2.*pi*G4UniformRand(); - G4ThreeVector SampleQuarkPtw= G4ThreeVector(Pt * std::cos(phi),Pt * std::sin(phi),0); - - HadronPt =SampleQuarkPtw + string->DecayPt(); - HadronPt.setZ(0); + HadronPt = G4ThreeVector( Pt*std::cos(phi), Pt*std::sin(phi), 0. ); RemSysPt = StringPt - HadronPt; - HadronMassT2 = sqr(HadronMass) + HadronPt.mag2(); ResidualMassT2=sqr(MinimalStringMass) + RemSysPt.mag2(); @@ -623,9 +671,9 @@ G4double G4LundStringFragmentation::GetLightConeZ(G4double zmin, G4double zmax, if (std::abs(PDGEncodingOfDecayParton) > 1000) { - G4double an = 2.5; - an +=(sqr(Px)+sqr(Py))/sqr(GeV)-0.5; - z=zmin + (zmax-zmin)*G4Pow::GetInstance()->powA(G4UniformRand(),1./an); + G4double an = 2.5; + an +=(sqr(Px)+sqr(Py))/sqr(GeV)-0.5; + z=zmin + (zmax-zmin)*G4Pow::GetInstance()->powA(G4UniformRand(),1./an); } return z; @@ -648,10 +696,13 @@ G4bool G4LundStringFragmentation::SplitLast(G4FragmentingString * string, G4cout<<"String4mom "<GetPstring()<<" "<GetPstring().mag()<Get4Momentum(); - - G4LorentzRotation toCms=string->TransformToAlignedCms(); - G4LorentzRotation toObserverFrame= toCms.inverse(); + G4LorentzVector Str4Mom=string->Get4Momentum(); + G4LorentzRotation toCms(-1*Str4Mom.boostVector()); + G4LorentzVector Pleft = toCms * string->GetPleft(); + toCms.rotateZ(-1*Pleft.phi()); + toCms.rotateY(-1*Pleft.theta()); + + G4LorentzRotation toObserverFrame= toCms.inverse(); G4double StringMass=string->Mass(); @@ -703,6 +754,7 @@ G4bool G4LundStringFragmentation::SplitLast(G4FragmentingString * string, #ifdef debug_LUNDfragmentation G4cout<<"Q Q string LastSplit"<DecayIsQuark() && string->StableIsQuark() )) { // Only for qq - q, q - qq, and qq - qqbar ------------------- - if (std::abs(string->GetLeftParton()->GetPDGEncoding()) > 1000) + if ( G4UniformRand() <= 0.5 ) { if (P_left.z() <= 0.) {G4LorentzVector tmp = LeftMom; LeftMom=RightMom; RightMom=tmp;} } @@ -955,25 +1007,29 @@ G4bool G4LundStringFragmentation::Quark_Diquark_lastSplitting(G4FragmentingStrin G4int AbsIDdi_quark=std::abs(IDdi_quark); G4int Di_q1=AbsIDdi_quark/1000; G4int Di_q2=(AbsIDdi_quark-Di_q1*1000)/100; - - G4int SignDiQ= 1; + G4int SignDiQ= 1; if (IDdi_quark < 0) SignDiQ=-1; NumberOf_FS=0; - for (G4int ProdQ=1; ProdQ < 4; ProdQ++) - { + for (G4int ProdQ=1; ProdQ < 4; ProdQ++) // Loop over quark-antiquark cases: u-ubar, d-dbar, s-sbar + { // (as last splitting, do not consider c-cbar and b-bbar cases) G4int SignQ; if (IDquark > 0) - { SignQ=-1; - if (IDquark == 2) SignQ= 1; + { + SignQ=-1; + if (IDquark == 2) SignQ= 1; if ((IDquark == 1) && (ProdQ == 3)) SignQ= 1; // K0 if ((IDquark == 3) && (ProdQ == 1)) SignQ=-1; // K0bar + if (IDquark == 4) SignQ= 1; // D+, D0, Ds+ + if (IDquark == 5) SignQ=-1; // B-, anti_B0, anti_Bs0 } else { SignQ= 1; if (IDquark == -2) SignQ=-1; if ((IDquark ==-1) && (ProdQ == 3)) SignQ=-1; // K0bar if ((IDquark ==-3) && (ProdQ == 1)) SignQ= 1; // K0 + if (IDquark == -4) SignQ=-1; // D-, anti_D0, anti_Ds+ + if (IDquark == -5) SignQ= 1; // B+, B0, Bs0 } if (AbsIDquark == ProdQ) SignQ= 1; @@ -1076,19 +1132,25 @@ G4bool G4LundStringFragmentation::Quark_AntiQuark_lastSplitting(G4FragmentingStr //G4cout<<"Q Qbar "< 0.)? std::sqrt(r_val)/(2.*InitialMass) : 0; const G4int maxNumberOfLoops = 1000; - G4double SigmaQTw=SigmaQT; - if (Mass > 930. || AntiMass > 930.) SigmaQT *=(1.0-0.55*sqr((Mass+AntiMass)/InitialMass)); + G4double SigmaQTw = SigmaQT; + if ( Mass > 930. || AntiMass > 930. ) { + SigmaQT *= ( 1.0 - 0.55*sqr( (Mass+AntiMass)/InitialMass ) ); + } + if ( Mass < 930. && AntiMass < 930. ) {} // q-qbar string + if ( ( Mass < 930. && AntiMass > 930. ) || + ( Mass > 930. && AntiMass < 930. ) ) { // q-di_q string + //SigmaQT = -1.; // isotropical decay + } + if ( Mass > 930. && AntiMass > 930. ) { // qq-qqbar string + SigmaQT *= ( 1.0 - 0.55*sqr( (Mass+AntiMass)/InitialMass ) ); + } G4int loopCounter = 0; do @@ -1235,7 +1307,7 @@ void G4LundStringFragmentation::Sample4Momentum(G4LorentzVector* Mom, G4doub } while ( (InitialMass < MassMt + AntiMassMt) && ++loopCounter < maxNumberOfLoops ); - if (Mass > 930. || AntiMass > 930.) SigmaQT=SigmaQTw; + SigmaQT = SigmaQTw; if ( loopCounter >= maxNumberOfLoops ) { AvailablePz2 = 0.0; diff --git a/source/processes/hadronic/models/parton_string/hadronization/src/G4QGSMFragmentation.cc b/source/processes/hadronic/models/parton_string/hadronization/src/G4QGSMFragmentation.cc index a535dffe82..fcd914b824 100644 --- a/source/processes/hadronic/models/parton_string/hadronization/src/G4QGSMFragmentation.cc +++ b/source/processes/hadronic/models/parton_string/hadronization/src/G4QGSMFragmentation.cc @@ -38,7 +38,7 @@ #include "G4FragmentingString.hh" #include "G4DiQuarks.hh" #include "G4Quarks.hh" - +#include "G4HadronicParameters.hh" #include "G4Pow.hh" //#define debug_QGSMfragmentation @@ -54,10 +54,19 @@ G4QGSMFragmentation::G4QGSMFragmentation() SetStrangenessSuppression((1.0 - 0.12)/2.); // Uzhi June 2020 0.16 -> 0.12 - // For the time being, set to 0.0 the probabilities for c-cbar and b-bbar creation. - SetProbCCbar(0.0); //(0.0033); // According to O.I. Piskunova Yad. Fiz. 56 (1993) 1094 - SetProbBBbar(0.0); //(5.0e-5); // According to O.I. Piskunova Yad. Fiz. 56 (1993) 1094 - + // Check if charmed and bottom hadrons are enabled: if this is the case, then + // set the non-zero probabilities for c-cbar and b-bbar creation from the vacuum, + // else set them to 0.0. If these probabilities are/aren't zero then charmed or bottom + // hadrons can't/can be created during the string fragmentation of ordinary + // (i.e. not heavy) projectile hadron nuclear reactions. + if ( G4HadronicParameters::Instance()->EnableBCParticles() ) { + SetProbCCbar(0.005); // According to O.I. Piskunova Yad. Fiz. 56 (1993) 1094 + SetProbBBbar(5.0e-5); // According to O.I. Piskunova Yad. Fiz. 56 (1993) 1094 + } else { + SetProbCCbar(0.0); + SetProbBBbar(0.0); + } + SetDiquarkSuppression(0.195); // Uzhi June 2020 0.32 -> 0.195 SetDiquarkBreakProbability(0.0); // Uzhi June 2020 0.7 -> 0.0 @@ -136,7 +145,8 @@ G4KineticTrackVector* G4QGSMFragmentation::FragmentString(const G4ExcitedString& if ( LeftVector != 0 ) G4cout<<"Non fragmentable - the string is converted to one hadron "<Mass2(); return sqr( MinimalStringMass + MassCut ) < string->Mass2(); // Uzhi June 2020 @@ -273,25 +283,20 @@ G4bool G4QGSMFragmentation::IsItFragmentable(const G4FragmentingString * const s //---------------------------------------------------------------------------------------------------------- -G4bool G4QGSMFragmentation::StopFragmenting(const G4FragmentingString * const string) +G4bool G4QGSMFragmentation::StopFragmenting(const G4FragmentingString * string) { SetMinimalStringMass(string); if ( MinimalStringMass < 0.0 ) return true; - if (string->IsAFourQuarkString()) - { - return G4UniformRand() < G4Exp(-0.005*(string->Mass() - MinimalStringMass)); - } else { - G4bool Result = G4UniformRand() < - G4Exp(-0.66e-6*(string->Mass()*string->Mass() - MinimalStringMass*MinimalStringMass)); - // G4bool Result = string->Mass() < MinimalStringMass + 150.*MeV*G4UniformRand(); // a'la LUND + G4double smass = string->Mass(); + G4double x = (string->IsAFourQuarkString()) ? 0.005*(smass - MinimalStringMass) + : 0.66e-6*(smass - MinimalStringMass)*(smass + MinimalStringMass); - #ifdef debug_QGSMfragmentation - G4cout<<"StopFragmenting MinimalStringMass string->Mass() "<Mass()< 0.0) { + res = (x < 200.) ? (G4UniformRand() < G4Exp(-x)) : false; } + return res; } //----------------------------------------------------------------------------- diff --git a/source/processes/hadronic/models/parton_string/hadronization/src/G4VLongitudinalStringDecay.cc b/source/processes/hadronic/models/parton_string/hadronization/src/G4VLongitudinalStringDecay.cc index 94166a15bc..ac6f1a1da6 100644 --- a/source/processes/hadronic/models/parton_string/hadronization/src/G4VLongitudinalStringDecay.cc +++ b/source/processes/hadronic/models/parton_string/hadronization/src/G4VLongitudinalStringDecay.cc @@ -59,6 +59,7 @@ //------------------------debug switches //#define debug_VStringDecay +//#define debug_heavyHadrons //****************************************************************************** // Constructors @@ -74,7 +75,7 @@ G4VLongitudinalStringDecay::G4VLongitudinalStringDecay(const G4String& name) // Changable Parameters below. SigmaQT = 0.5 * GeV; - StrangeSuppress = 0.44; // =0.27/2.27 suppresion of strange quark pait prodution, ie. u:d:s=1:1:0.27 + StrangeSuppress = 0.44; // =0.27/2.27 suppression of strange quark pair production, ie. u:d:s=1:1:0.27 DiquarkSuppress = 0.07; // Probability of qq-qqbar pair production DiquarkBreakProb = 0.1; // Probability of (qq)->h+(qq)' @@ -102,12 +103,10 @@ G4VLongitudinalStringDecay::G4VLongitudinalStringDecay(const G4String& name) scalarMesonMix[4] = 1.0; scalarMesonMix[5] = 0.5; - // For the time being, set to 0.0 the probabilities for c-cbar and b-bbar creation. - SetProbCCbar(0.0); //SetProbCCbar(0.43e-11); // Probability of CCbar pair creation - //Pythia8 and Pythia 6.4 Comp. Phys. Commun. 191 (2015) 159; arXiv:1410.3012 + SetProbCCbar(0.0); // Probability of CCbar pair creation SetProbEta_c(0.1); // Mixing of Eta_c and J/Psi - SetProbBBbar(0.0); // Probability of BBbar pair creation, - SetProbEta_b(0.0); // Mixing of Eta_b and Ipsilon_b + SetProbBBbar(0.0); // Probability of BBbar pair creation + SetProbEta_b(0.0); // Mixing of Eta_b and Upsilon_b // Parameters may be changed until the first fragmentation starts PastInitPhase=false; @@ -146,67 +145,56 @@ G4double G4VLongitudinalStringDecay::GetMassCut() { return MassCut; } G4KineticTrackVector* G4VLongitudinalStringDecay::ProduceOneHadron(const G4ExcitedString * const string) { - // Check string decay threshold - G4KineticTrackVector * result=0; // return 0 when string exceeds the mass cut - - pDefPair hadrons((G4ParticleDefinition *)0,(G4ParticleDefinition *)0); - - G4FragmentingString aString(*string); + G4KineticTrackVector* result = nullptr; + pDefPair hadrons( nullptr, nullptr ); + G4FragmentingString aString( *string ); #ifdef debug_VStringDecay G4cout<<"G4VLongitudinalStringDecay::ProduceOneHadron: PossibleHmass StrMass " <GetParticleName()<Get4Momentum() << " " - << string->Get4Momentum().m() << G4endl; - #endif + G4cout << "VlongSD Warning replacing string by single hadron (G4VLongitudinalStringDecay)" <GetParticleName()<Get4Momentum() << " " + << string->Get4Momentum().m() << G4endl; + #endif G4ThreeVector Mom3 = string->Get4Momentum().vect(); - G4LorentzVector Mom( Mom3, std::sqrt( Mom3.mag2() + sqr(hadrons.first->GetPDGMass())) ); + G4LorentzVector Mom( Mom3, std::sqrt( Mom3.mag2() + sqr( hadrons.first->GetPDGMass() ) ) ); result->push_back( new G4KineticTrack( hadrons.first, 0, string->GetPosition(), Mom ) ); - } else - { + } else { //... string was qq--qqbar type: Build two stable hadrons, #ifdef debug_VStringDecay - G4cout << "VlongSD Warning replacing qq-qqbar string by TWO hadrons (G4VLongitudinalStringDecay)" - << hadrons.first->GetParticleName() << " / " - << hadrons.second->GetParticleName() - << "string .. " << string->Get4Momentum() << " " - << string->Get4Momentum().m() << G4endl; + G4cout << "VlongSD Warning replacing qq-qqbar string by TWO hadrons (G4VLongitudinalStringDecay)" + << hadrons.first->GetParticleName() << " / " + << hadrons.second->GetParticleName() + << "string .. " << string->Get4Momentum() << " " + << string->Get4Momentum().m() << G4endl; #endif - G4LorentzVector Mom1, Mom2; - Sample4Momentum(&Mom1, hadrons.first->GetPDGMass(), - &Mom2,hadrons.second->GetPDGMass(), - string->Get4Momentum().mag()); + G4LorentzVector Mom1, Mom2; + Sample4Momentum( &Mom1, hadrons.first->GetPDGMass(), + &Mom2, hadrons.second->GetPDGMass(), + string->Get4Momentum().mag() ); - result->push_back( new G4KineticTrack( hadrons.first, 0, string->GetPosition(), Mom1 ) ); - result->push_back( new G4KineticTrack( hadrons.second, 0, string->GetPosition(), Mom2) ); + result->push_back( new G4KineticTrack( hadrons.first, 0, string->GetPosition(), Mom1 ) ); + result->push_back( new G4KineticTrack( hadrons.second, 0, string->GetPosition(), Mom2 ) ); G4ThreeVector Velocity = string->Get4Momentum().boostVector(); result->Boost(Velocity); - } - - return result; + } + } + return result; } //---------------------------------------------------------------------------------------- @@ -214,7 +202,7 @@ G4KineticTrackVector* G4VLongitudinalStringDecay::ProduceOneHadron(const G4Excit G4double G4VLongitudinalStringDecay::PossibleHadronMass( const G4FragmentingString * const string, Pcreate build, pDefPair * pdefs ) { - G4double mass; + G4double mass = 0.0; if ( build==0 ) build=&G4HadronBuilder::BuildLowSpin; @@ -246,19 +234,6 @@ G4double G4VLongitudinalStringDecay::PossibleHadronMass( const G4FragmentingStri G4cout<<"VlongSD string is qq--qqbar: Build two stable hadrons"<GetLeftParton()->GetPDGEncoding() < 0) iflc = -iflc; - - //... theSpin = 4; spin 3/2 baryons will be built - Hadron1 = (hadronizer->*build)(string->GetLeftParton(), FindParticle(iflc)); - Hadron2 = (hadronizer->*build)(string->GetRightParton(), FindParticle(-iflc)); - - if ( (Hadron1 != nullptr) && (Hadron2 != nullptr) ) { mass = (Hadron1)->GetPDGMass() + (Hadron2)->GetPDGMass();} - else { mass = MaxMass;} - return mass; - */ // Uzhi June 2020 - //+++++++++++++++++++++++++++++++ // Uzhi June 2020 Start G4double StringMass = string->Mass(); G4int cClusterInterrupt = 0; do @@ -278,15 +253,13 @@ G4double G4VLongitudinalStringDecay::PossibleHadronMass( const G4FragmentingStri Hadron1 =hadronizer->Build(FindParticle(LeftQuark1), FindParticle(RightQuark2)); Hadron2 =hadronizer->Build(FindParticle(LeftQuark2), FindParticle(RightQuark1)); } - if ( (Hadron1 == nullptr) || (Hadron2 == nullptr) ) continue; - //... repeat procedure, if mass of cluster is too low to produce hadrons //... ClusterMassCut = 0.15*GeV model parameter } - while ((StringMass <= Hadron1->GetPDGMass() + Hadron2->GetPDGMass())); + while ( Hadron1 == nullptr || Hadron2 == nullptr || + ( StringMass <= Hadron1->GetPDGMass() + Hadron2->GetPDGMass() ) ); mass = (Hadron1)->GetPDGMass() + (Hadron2)->GetPDGMass(); - //+++++++++++++++++++++++++++++++ // Uzhi June 2020 End } #ifdef debug_VStringDecay @@ -365,7 +338,7 @@ G4ParticleDefinition * G4VLongitudinalStringDecay::QuarkSplitup( G4ParticleDefin #ifdef debug_VStringDecay G4cout<<"VlongSD QuarkSplitup: quark ID "<GetPDGEncoding()<GetPDGEncoding()>0) ? -1 : +1; // if we have a quark, we need antiquark (or diquark) pDefPair QuarkPair = CreatePartonPair(IsParticle); @@ -378,6 +351,7 @@ G4ParticleDefinition * G4VLongitudinalStringDecay::QuarkSplitup( G4ParticleDefin G4cout<<"VlongSD QuarkSplitup: "<GetPDGEncoding()<<" -> "<GetPDGEncoding()<Build(QuarkPair.first, decay)"<Build(QuarkPair.first, decay); } @@ -423,6 +397,10 @@ G4int G4VLongitudinalStringDecay::SampleQuarkFlavor(void) if ( ksi < ProbCB ) { if ( ksi < ProbCCbar ) {quark = 4;} // c quark else {quark = 5;} // b quark + #ifdef debug_heavyHadrons + G4cout << "G4VLongitudinalStringDecay::SampleQuarkFlavor : sampled from the vacuum HEAVY quark = " + << quark << G4endl; + #endif } else { quark = 1 + (int)(G4UniformRand()/StrangeSuppress); } @@ -443,7 +421,9 @@ G4ThreeVector G4VLongitudinalStringDecay::SampleQuarkPt(G4double ptMax) Pt = -G4Log(G4UniformRand()); } else { // sample in limited range - Pt = -G4Log(G4RandFlat::shoot(G4Exp(-sqr(ptMax)/sqr(SigmaQT)), 1.)); + G4double q = ptMax/SigmaQT; + G4double ymin = (q > 20.) ? 0.0 : G4Exp(-q*q); + Pt = -G4Log(G4RandFlat::shoot(ymin, 1.)); } Pt = SigmaQT * std::sqrt(Pt); G4double phi = 2.*pi*G4UniformRand(); @@ -631,8 +611,8 @@ void G4VLongitudinalStringDecay::SetMinMasses() // ------ For estimation of a minimal string mass --------------- Mass_of_light_quark =140.*MeV; Mass_of_s_quark =500.*MeV; - Mass_of_c_quark = 0.*MeV; // ??? - Mass_of_b_quark = 0.*MeV; // ??? + Mass_of_c_quark =1600.*MeV; + Mass_of_b_quark =4500.*MeV; Mass_of_string_junction=720.*MeV; // ---------------- Determination of minimal mass of q-qbar strings ------------------- @@ -725,11 +705,11 @@ void G4VLongitudinalStringDecay::SetMinMasses() Meson[0][0][3] = 331; MesonWeight[0][0][4] = ( pspin_meson) * ( scalarMesonMix[1]); // Eta' //dd3 -> vectorMesonMix[0] * 113 + (1-vectorMesonMix[0]-vectorMesonMix[1]) * 223 + vectorMesonMix[1] * 333 (001) - //dd3 -> rho_0 omega fi + //dd3 -> rho_0 omega phi Meson[0][0][1] = 113; MesonWeight[0][0][1] = (1.-pspin_meson) * ( vectorMesonMix[0] ); // Rho Meson[0][0][4] = 223; MesonWeight[0][0][4] = (1.-pspin_meson) * (1-vectorMesonMix[0]-vectorMesonMix[1]); // omega - Meson[0][0][5] = 333; MesonWeight[0][0][5] = (1.-pspin_meson) * ( vectorMesonMix[1]); // fi + Meson[0][0][5] = 333; MesonWeight[0][0][5] = (1.-pspin_meson) * ( vectorMesonMix[1]); // phi //uu1 -> scalarMesonMix[0] * 111 + (1-scalarMesonMix[0]-scalarMesonMix[1]) * 221 + scalarMesonMix[1] * 331 (110) //uu1 -> Pi0 Eta Eta' @@ -739,11 +719,11 @@ void G4VLongitudinalStringDecay::SetMinMasses() Meson[1][1][3] = 331; MesonWeight[1][1][3] = ( pspin_meson) * ( scalarMesonMix[1]); // Eta' //uu3 -> vectorMesonMix[0] * 113 + (1-vectorMesonMix[0]-vectorMesonMix[1]) * 223 + vectorMesonMix[1] * 333 (111) - //uu3 -> rho_0 omega fi + //uu3 -> rho_0 omega phi Meson[1][1][1] = 113; MesonWeight[1][1][1] = (1.-pspin_meson) * ( vectorMesonMix[0] ); // Rho Meson[1][1][4] = 223; MesonWeight[1][1][4] = (1.-pspin_meson) * (1-vectorMesonMix[0]-vectorMesonMix[1]); // omega - Meson[1][1][5] = 333; MesonWeight[1][1][5] = (1.-pspin_meson) * ( vectorMesonMix[1]); // fi + Meson[1][1][5] = 333; MesonWeight[1][1][5] = (1.-pspin_meson) * ( vectorMesonMix[1]); // phi //ss1 -> (1-scalarMesonMix[5]) * 221 + scalarMesonMix[5] * 331 (220) //ss1 -> Eta Eta' @@ -752,23 +732,23 @@ void G4VLongitudinalStringDecay::SetMinMasses() Meson[2][2][2] = 331; MesonWeight[2][2][2] = ( pspin_meson) * ( scalarMesonMix[5]); // Eta' //ss3 -> (1-vectorMesonMix[5]) * 223 + vectorMesonMix[5] * 333 (221) - //ss3 -> omega fi + //ss3 -> omega phi Meson[2][2][1] = 223; MesonWeight[2][2][1] = (1.-pspin_meson) * (1-vectorMesonMix[5] ); // omega - Meson[2][2][3] = 333; MesonWeight[2][2][3] = (1.-pspin_meson) * ( vectorMesonMix[5]); // fi + Meson[2][2][3] = 333; MesonWeight[2][2][3] = (1.-pspin_meson) * ( vectorMesonMix[5]); // phi //cc1 -> ProbEta_c /(1-pspin_meson) 441 (330) Probability of Eta_c //cc3 -> (1-ProbEta_c)/( pspin_meson) 443 (331) Probability of J/Psi //bb1 -> ProbEta_b /pspin_meson 551 (440) Probability of Eta_b - //bb3 -> (1-ProbEta_b)/pspin_meson 553 (441) Probability of ipsilon + //bb3 -> (1-ProbEta_b)/pspin_meson 553 (441) Probability of Upsilon if ( pspin_meson != 0. ) { Meson[3][3][0] *= ( ProbEta_c)/( pspin_meson); // Eta_c Meson[3][3][1] *= (1.0-ProbEta_c)/(1.-pspin_meson); // J/Psi Meson[4][4][0] *= ( ProbEta_b)/( pspin_meson); // Eta_b - Meson[4][4][1] *= (1.0-ProbEta_b)/(1.-pspin_meson); // ipsilon + Meson[4][4][1] *= (1.0-ProbEta_b)/(1.-pspin_meson); // Upsilon } //-------------------------- @@ -821,7 +801,7 @@ void G4VLongitudinalStringDecay::SetMinMasses() Baryon[3][3][3][0] = 4444; BaryonWeight[3][3][3][0] = 1.0; Baryon[3][3][3][1] = 0; BaryonWeight[3][3][3][1] = 0.0; - // Omega_bb- bbb - only 5454 + // Omega_bb- bbb - only 5554 Baryon[4][4][4][0] = 5554; BaryonWeight[4][4][4][0] = 1.0; Baryon[4][4][4][1] = 0; BaryonWeight[4][4][4][1] = 0.0; @@ -870,7 +850,7 @@ void G4VLongitudinalStringDecay::SetMinMasses() Baryon[3][1][2][2] = 4322; BaryonWeight[3][1][2][2] = 0.5 * pspin_barion; Baryon[3][2][1][2] = 4322; BaryonWeight[3][2][1][2] = 0.5 * pspin_barion; - // Xi_c0/Xi_c0' cus - 4232/4322 + // Xi_c0/Xi_c0' cus - 4132/4312 Baryon[0][2][3][0] = 4132; BaryonWeight[0][2][3][0] *= 0.5; // Xi_c0 Baryon[0][3][2][0] = 4132; BaryonWeight[0][3][2][0] *= 0.5; Baryon[2][0][3][0] = 4132; BaryonWeight[2][0][3][0] *= 0.5; @@ -900,30 +880,30 @@ void G4VLongitudinalStringDecay::SetMinMasses() Baryon[4][0][1][2] = 5212; BaryonWeight[4][0][1][2] = 0.5 * pspin_barion; Baryon[4][1][0][2] = 5212; BaryonWeight[4][1][0][2] = 0.5 * pspin_barion; - // Xi_b-/Xi_b-' bus - 5232/5322 - Baryon[1][2][4][0] = 5232; BaryonWeight[1][2][4][0] *= 0.5; // Xi_b- + // Xi_b0/Xi_b0' bus - 5232/5322 + Baryon[1][2][4][0] = 5232; BaryonWeight[1][2][4][0] *= 0.5; // Xi_b0 Baryon[1][4][2][0] = 5232; BaryonWeight[1][4][2][0] *= 0.5; Baryon[2][1][4][0] = 5232; BaryonWeight[2][1][4][0] *= 0.5; Baryon[2][4][1][0] = 5232; BaryonWeight[2][4][1][0] *= 0.5; Baryon[4][1][2][0] = 5232; BaryonWeight[4][1][2][0] *= 0.5; Baryon[4][2][1][0] = 5232; BaryonWeight[4][2][1][0] *= 0.5; - Baryon[1][2][4][2] = 5322; BaryonWeight[1][2][4][2] = 0.5 * pspin_barion; // Xi_b-' + Baryon[1][2][4][2] = 5322; BaryonWeight[1][2][4][2] = 0.5 * pspin_barion; // Xi_b0' Baryon[1][4][2][2] = 5322; BaryonWeight[1][4][2][2] = 0.5 * pspin_barion; Baryon[2][1][4][2] = 5322; BaryonWeight[2][1][4][2] = 0.5 * pspin_barion; Baryon[2][4][1][2] = 5322; BaryonWeight[2][4][1][2] = 0.5 * pspin_barion; Baryon[4][1][2][2] = 5322; BaryonWeight[4][1][2][2] = 0.5 * pspin_barion; Baryon[4][2][1][2] = 5322; BaryonWeight[4][2][1][2] = 0.5 * pspin_barion; - // Xi_b0/Xi_b0' bus - 5232/5322 - Baryon[0][2][4][0] = 5132; BaryonWeight[0][2][4][0] *= 0.5; // Xi_b0 + // Xi_b-/Xi_b-' bus - 5132/5312 + Baryon[0][2][4][0] = 5132; BaryonWeight[0][2][4][0] *= 0.5; // Xi_b- Baryon[0][4][2][0] = 5132; BaryonWeight[0][4][2][0] *= 0.5; Baryon[2][0][4][0] = 5132; BaryonWeight[2][0][4][0] *= 0.5; Baryon[2][4][0][0] = 5132; BaryonWeight[2][4][0][0] *= 0.5; Baryon[4][0][2][0] = 5132; BaryonWeight[4][0][2][0] *= 0.5; Baryon[4][2][0][0] = 5132; BaryonWeight[4][2][0][0] *= 0.5; - Baryon[0][2][4][2] = 5312; BaryonWeight[0][2][4][2] = 0.5 * pspin_barion; // Xi_b0' + Baryon[0][2][4][2] = 5312; BaryonWeight[0][2][4][2] = 0.5 * pspin_barion; // Xi_b-' Baryon[0][4][2][2] = 5312; BaryonWeight[0][4][2][2] = 0.5 * pspin_barion; Baryon[2][0][4][2] = 5312; BaryonWeight[2][0][4][2] = 0.5 * pspin_barion; Baryon[2][4][0][2] = 5312; BaryonWeight[2][4][0][2] = 0.5 * pspin_barion; @@ -972,9 +952,8 @@ void G4VLongitudinalStringDecay::SetMinMasses() void G4VLongitudinalStringDecay::SetMinimalStringMass(const G4FragmentingString * const string) { //MaxMass = -350.0*GeV; - G4double EstimatedMass=MaxMass; // Uzhi June 2020 0.->MaxMass; + G4double EstimatedMass=MaxMass; - // Uzhi June 2020 Start G4ParticleDefinition* LeftParton = string->GetLeftParton(); G4ParticleDefinition* RightParton = string->GetRightParton(); if( LeftParton->GetParticleSubType() == RightParton->GetParticleSubType() ) { // q qbar, qq qqbar @@ -991,7 +970,6 @@ void G4VLongitudinalStringDecay::SetMinimalStringMass(const G4FragmentingString "G4VLongitudinalStringDecay::SetMinimalStringMass: Illegal quark content as input"); } } - // Uzhi June 2020 End G4int Qleft =std::abs(string->GetLeftParton()->GetPDGEncoding()); G4int Qright=std::abs(string->GetRightParton()->GetPDGEncoding()); @@ -1069,7 +1047,7 @@ void G4VLongitudinalStringDecay::SetMinimalStringMass(const G4FragmentingString EstimatedMass=std::min(minMassQQbarStr[q1-1][q3-1] + minMassQQbarStr[q2-1][q4-1], minMassQQbarStr[q1-1][q4-1] + minMassQQbarStr[q2-1][q3-1]); - // In principle, re-orangement and 2 baryon production can compite. + // In principle, re-arrangement and 2 baryon production can compete. // More physics consideration is needed. MinimalStringMass=EstimatedMass; diff --git a/source/processes/hadronic/models/parton_string/management/History b/source/processes/hadronic/models/parton_string/management/History index a312c37a2c..97e370a126 100644 --- a/source/processes/hadronic/models/parton_string/management/History +++ b/source/processes/hadronic/models/parton_string/management/History @@ -7,13 +7,20 @@ History file for hadronic/models/parton_string/diffraction directory ------------------------------------------------------------- -This file should be used to summarize modifications introduced in the +This file should be used to summarize modifications introduced in the code and to keep track of all tags. --------------------------------------------------------------- * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- +29-Oct-2020 B. Morgan hadr-partonstring-mgt-V10-06-03 +- Remove inclusion of obsolete CMake module + +24-Jul-2020 A. Ribon hadr-partonstring-mgt-V10-06-02 +- G4VPartonStringModel : introduced a new pre-processor option for + debugging heavy hadrons, switched off by default. + 08-Mar-2020 V. Ivanchenko hadr-partonstring-mgt-V10-06-01 - G4VParticipants, G4VPartonStringModel, G4VStringFragmentation, G4StringModel - clean-up: removed unused methods, delete @@ -51,7 +58,7 @@ code and to keep track of all tags. Thanks to Raphael Isemann for reporting this. 07-Dec-2017 A. Ribon hadr-partonstring-mgt-V10-04-00 -- Resumed the development version (i.e. deleted the class +- Resumed the development version (i.e. deleted the class G4PomeronCrossSection which is not needed any longer). 08-Nov-2017 A. Ribon hadr-partonstring-mgt-V10-03-04 @@ -158,7 +165,7 @@ code and to keep track of all tags. - G4PomeronCrossSection.cc: fix shadowing warnings 25-May-2012, G.Folger (had-partonstring-mgt-V09-05-01) -- G4VPartonStringModel: +- G4VPartonStringModel: - add ModelDescription() interface - make copy ctor, =, ==, and != operators private, not implemented @@ -173,12 +180,12 @@ code and to keep track of all tags. Address coverity warnings 30 Nov. 2010 V. Uzhinsky (had-partonstring-mgt-V09-03-01) - Member G4int Status in G4VSplitableHadron was changed + Member G4int Status in G4VSplitableHadron was changed into G4int curStatus 8-Sept-2010, G.Folger (had-partonstring-mgt-V09-03-00) use integer interface of G4Nucleus for A&Z - + 6 Dec. 2009, V. Uzhinsky (had-partonstring-mgt-V09-02-02) Repeatation of string fragmentation if energy corr. can not be done is implemented. @@ -195,8 +202,8 @@ code and to keep track of all tags. Introduction the right tag number. 9-July-2009 V. Uzhinsky (had-partonstring-mgt-V08-02-02) -- New field was added in G4VSplitableHadron class (G4 bool Activation) and - corresponding methods to operatite with it. It was needed for an +- New field was added in G4VSplitableHadron class (G4 bool Activation) and + corresponding methods to operatite with it. It was needed for an absorption of meson in nuclear collision generated by FTF. 24-Apr 2007 Gunter Folger (had-partonstring-mgt-V08-02-01) @@ -211,5 +218,5 @@ code and to keep track of all tags. 31-March-2008 V. Uzhinsky Tag : had-partonstring-mgt-V09-01-00 - G4FTFCrossSection.cc and G4FTFCrossSection.hh were re-named into G4FTFParameters.cc and .hh, and moved to diffraction directory. - The corresponding class was re-named too. All of these characterize + The corresponding class was re-named too. All of these characterize the content of the files more exactly. diff --git a/source/processes/hadronic/models/parton_string/management/sources.cmake b/source/processes/hadronic/models/parton_string/management/sources.cmake index beebc0d7dd..0db1458b18 100644 --- a/source/processes/hadronic/models/parton_string/management/sources.cmake +++ b/source/processes/hadronic/models/parton_string/management/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_string.G4had_string_man # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,35 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4had_string_man HEADERS G4InteractionContent.hh diff --git a/source/processes/hadronic/models/parton_string/management/src/G4VPartonStringModel.cc b/source/processes/hadronic/models/parton_string/management/src/G4VPartonStringModel.cc index e93b1fde1e..99942e526a 100644 --- a/source/processes/hadronic/models/parton_string/management/src/G4VPartonStringModel.cc +++ b/source/processes/hadronic/models/parton_string/management/src/G4VPartonStringModel.cc @@ -34,6 +34,7 @@ // ------------------------------------------------------------ // debug switch //#define debug_PartonStringModel +//#define debug_heavyHadrons // ------------------------------------------------------------ #include "G4VPartonStringModel.hh" @@ -157,6 +158,16 @@ G4KineticTrackVector * G4VPartonStringModel::Scatter(const G4Nucleus &theNucleus G4cout<<"------------ Parton-String model: Number of produced strings ---- "<size()<GetQuarkContent( 4 ) - + thePrimary.GetDefinition()->GetAntiQuarkContent( 4 ); + G4int count_bottom_projectile = thePrimary.GetDefinition()->GetQuarkContent( 5 ) - + thePrimary.GetDefinition()->GetAntiQuarkContent( 5 ); + G4int count_charm_strings = 0, count_bottom_strings = 0; + G4int count_charm_hadrons = 0, count_bottom_hadrons = 0; + #endif + for ( unsigned int astring=0; astring < strings->size(); astring++) { // rotate string to lab frame, models have it aligned to z @@ -172,6 +183,25 @@ G4KineticTrackVector * G4VPartonStringModel::Scatter(const G4Nucleus &theNucleus <<" Partons "<<(*strings)[astring]->GetLeftParton()->GetDefinition()->GetPDGEncoding() <<" "<<(*strings)[astring]->GetRightParton()->GetDefinition()->GetPDGEncoding()<GetLeftParton()->GetDefinition()->GetQuarkContent( 4 ); + G4int left_anticharm = (*strings)[astring]->GetLeftParton()->GetDefinition()->GetAntiQuarkContent( 4 ); + G4int right_charm = (*strings)[astring]->GetRightParton()->GetDefinition()->GetQuarkContent( 4 ); + G4int right_anticharm = (*strings)[astring]->GetRightParton()->GetDefinition()->GetAntiQuarkContent( 4 ); + G4int left_bottom = (*strings)[astring]->GetLeftParton()->GetDefinition()->GetQuarkContent( 5 ); + G4int left_antibottom = (*strings)[astring]->GetLeftParton()->GetDefinition()->GetAntiQuarkContent( 5 ); + G4int right_bottom = (*strings)[astring]->GetRightParton()->GetDefinition()->GetQuarkContent( 5 ); + G4int right_antibottom = (*strings)[astring]->GetRightParton()->GetDefinition()->GetAntiQuarkContent( 5 ); + if ( left_charm != 0 || left_anticharm != 0 || right_charm != 0 || right_anticharm != 0 || + left_bottom != 0 || left_antibottom != 0 || right_bottom != 0 || right_antibottom != 0 ) { + count_charm_strings += left_charm - left_anticharm + right_charm - right_anticharm; + count_bottom_strings += left_bottom - left_antibottom + right_bottom - right_antibottom; + G4cout << "G4VPartonStringModel::Scatter : string #" << astring << " (" + << (*strings)[astring]->GetLeftParton()->GetDefinition()->GetParticleName() << " , " + << (*strings)[astring]->GetRightParton()->GetDefinition()->GetParticleName() << ")" << G4endl; + } + #endif } else { @@ -184,9 +214,33 @@ G4KineticTrackVector * G4VPartonStringModel::Scatter(const G4Nucleus &theNucleus <<(*strings)[astring]->GetKineticTrack()->Get4Momentum().mag()<<" " <<(*strings)[astring]->GetKineticTrack()->GetDefinition()->GetParticleName()<GetKineticTrack()->GetDefinition()->GetQuarkContent( 4 ); + G4int anticharm = (*strings)[astring]->GetKineticTrack()->GetDefinition()->GetAntiQuarkContent( 4 ); + G4int bottom = (*strings)[astring]->GetKineticTrack()->GetDefinition()->GetQuarkContent( 5 ); + G4int antibottom = (*strings)[astring]->GetKineticTrack()->GetDefinition()->GetAntiQuarkContent( 5 ); + if ( charm != 0 || anticharm != 0 || bottom != 0 || antibottom != 0 ) { + count_charm_strings += charm - anticharm; + count_bottom_strings += bottom - antibottom; + G4cout << "G4VPartonStringModel::Scatter : track #" << astring << "\t" + << (*strings)[astring]->GetKineticTrack()->GetDefinition()->GetParticleName() << G4endl; + } + #endif } } + #ifdef debug_heavyHadrons + if ( count_charm_projectile != count_charm_strings ) { + G4cout << "G4VPartonStringModel::Scatter : CHARM VIOLATION in String formation ! #projectile=" + << count_charm_projectile << " ; #strings=" << count_charm_strings << G4endl; + } + if ( count_bottom_projectile != count_bottom_strings ) { + G4cout << "G4VPartonStringModel::Scatter : BOTTOM VIOLATION in String formation ! #projectile=" + << count_bottom_projectile << " ; #strings=" << count_bottom_strings << G4endl; + } + #endif + #ifdef debug_PartonStringModel G4cout<size(); i++) { SumMass+=(*theResult)[i]->Get4Momentum().mag(); @@ -341,8 +394,32 @@ G4KineticTrackVector * G4VPartonStringModel::Scatter(const G4Nucleus &theNucleus BsumSec += (*theResult)[i]->GetDefinition()->GetBaryonNumber(); QsumSec += (*theResult)[i]->GetDefinition()->GetPDGCharge(); #endif + + #ifdef debug_heavyHadrons + G4int charm = (*theResult)[i]->GetDefinition()->GetQuarkContent( 4 ); + G4int anticharm = (*theResult)[i]->GetDefinition()->GetAntiQuarkContent( 4 ); + G4int bottom = (*theResult)[i]->GetDefinition()->GetQuarkContent( 5 ); + G4int antibottom = (*theResult)[i]->GetDefinition()->GetAntiQuarkContent( 5 ); + if ( charm != 0 || anticharm != 0 || bottom != 0 || antibottom != 0 ) { + count_charm_hadrons += charm - anticharm; + count_bottom_hadrons += bottom - antibottom; + G4cout << "G4VPartonStringModel::Scatter : hadron #" << i << "\t" + << (*theResult)[i]->GetDefinition()->GetParticleName() << G4endl; + } + #endif } + #ifdef debug_heavyHadrons + if ( count_charm_projectile != count_charm_hadrons ) { + G4cout << "G4VPartonStringModel::Scatter : CHARM VIOLATION in String hadronization ! #projectile=" + << count_charm_projectile << " ; #hadrons=" << count_charm_hadrons << G4endl; + } + if ( count_bottom_projectile != count_bottom_hadrons ) { + G4cout << "G4VPartonStringModel::Scatter : BOTTOM VIOLATION in String hadronization ! #projectile=" + << count_bottom_projectile << " ; #hadrons=" << count_bottom_hadrons << G4endl; + } + #endif + #ifdef debug_PartonStringModel G4cout< @@ -79,6 +108,36 @@ class G4SPBaryon G4SPBaryon(G4ParticleDefinition * aDefinition); ~G4SPBaryon(); + + // Extension to charmed and bottom baryons and anti-baryons + G4SPBaryon(G4LambdacPlus * aLambdacPlus); + G4SPBaryon(G4AntiLambdacPlus * aAntiLambdacPlus); + G4SPBaryon(G4SigmacPlusPlus * aSigmacPlusPlus); + G4SPBaryon(G4AntiSigmacPlusPlus * aAntiSigmacPlusPlus); + G4SPBaryon(G4SigmacPlus * aSigmacPlus); + G4SPBaryon(G4AntiSigmacPlus * aAntiSigmacPlus); + G4SPBaryon(G4SigmacZero * aSigmacZero); + G4SPBaryon(G4AntiSigmacZero * aAntiSigmacZero); + G4SPBaryon(G4XicPlus * aXicPlus); + G4SPBaryon(G4AntiXicPlus * aAntiXicPlus); + G4SPBaryon(G4XicZero * aXicZero); + G4SPBaryon(G4AntiXicZero * aAntiXicZero); + G4SPBaryon(G4OmegacZero * aOmegacZero); + G4SPBaryon(G4AntiOmegacZero * aAntiOmegacZero); + G4SPBaryon(G4Lambdab * aLambdab); + G4SPBaryon(G4AntiLambdab * aAntiLambdab); + G4SPBaryon(G4SigmabPlus * aSigmabPlus); + G4SPBaryon(G4AntiSigmabPlus * aAntiSigmabPlus); + G4SPBaryon(G4SigmabZero * aSigmabZero); + G4SPBaryon(G4AntiSigmabZero * aAntiSigmabZero); + G4SPBaryon(G4SigmabMinus * aSigmabMinus); + G4SPBaryon(G4AntiSigmabMinus * aAntiSigmabMinus); + G4SPBaryon(G4XibZero * aXibZero); + G4SPBaryon(G4AntiXibZero * aAntiXibZero); + G4SPBaryon(G4XibMinus * aXibMinus); + G4SPBaryon(G4AntiXibMinus * aAntiXibMinus); + G4SPBaryon(G4OmegabMinus * aOmegabMinus); + G4SPBaryon(G4AntiOmegabMinus * aAntiOmegabMinus); private: G4bool operator == ( const G4SPBaryon & aBaryon) const; diff --git a/source/processes/hadronic/models/parton_string/qgsm/sources.cmake b/source/processes/hadronic/models/parton_string/qgsm/sources.cmake index d483816e5b..67cfc77d15 100644 --- a/source/processes/hadronic/models/parton_string/qgsm/sources.cmake +++ b/source/processes/hadronic/models/parton_string/qgsm/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_string.G4hadronic_qgstring # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,38 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_qgstring HEADERS G4BaryonSplitter.hh diff --git a/source/processes/hadronic/models/parton_string/qgsm/src/G4BaryonSplitter.cc b/source/processes/hadronic/models/parton_string/qgsm/src/G4BaryonSplitter.cc index a6dc2002be..64aa280d9f 100644 --- a/source/processes/hadronic/models/parton_string/qgsm/src/G4BaryonSplitter.cc +++ b/source/processes/hadronic/models/parton_string/qgsm/src/G4BaryonSplitter.cc @@ -37,14 +37,14 @@ G4BaryonSplitter() theBaryons.insert(new G4SPBaryon(G4Neutron::Neutron())); theBaryons.insert(new G4SPBaryon(G4AntiProton::AntiProton())); theBaryons.insert(new G4SPBaryon(G4AntiNeutron::AntiNeutron())); - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(2224))); // D++ - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(2214))); // D+ - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(2114))); // D0 - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(1114))); // D- - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(-2224))); // anti D++ - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(-2214))); // anti D+ - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(-2114))); // anti D0 - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(-1114))); // anti D- + theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(2224))); // Delta++ + theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(2214))); // Delta+ + theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(2114))); // Delta0 + theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(1114))); // Delta- + theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(-2224))); // anti Delta++ + theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(-2214))); // anti Delta+ + theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(-2114))); // anti Delta0 + theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(-1114))); // anti Delta- theBaryons.insert(new G4SPBaryon(G4Lambda::Lambda())); theBaryons.insert(new G4SPBaryon(G4AntiLambda::AntiLambda())); theBaryons.insert(new G4SPBaryon(G4SigmaPlus::SigmaPlus())); @@ -53,22 +53,40 @@ G4BaryonSplitter() theBaryons.insert(new G4SPBaryon(G4AntiSigmaPlus::AntiSigmaPlus())); theBaryons.insert(new G4SPBaryon(G4AntiSigmaZero::AntiSigmaZero())); theBaryons.insert(new G4SPBaryon(G4AntiSigmaMinus::AntiSigmaMinus())); - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(3224))); // S+* - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(3214))); // S0* - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(3114))); // S-* - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(-3224))); // anti S+* - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(-3214))); // anti S0* - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(-3114))); // anti S-* theBaryons.insert(new G4SPBaryon(G4XiMinus::XiMinus())); theBaryons.insert(new G4SPBaryon(G4XiZero::XiZero())); theBaryons.insert(new G4SPBaryon(G4AntiXiMinus::AntiXiMinus())); theBaryons.insert(new G4SPBaryon(G4AntiXiZero::AntiXiZero())); theBaryons.insert(new G4SPBaryon(G4OmegaMinus::OmegaMinus())); theBaryons.insert(new G4SPBaryon(G4AntiOmegaMinus::AntiOmegaMinus())); - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(3324))); // X0* - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(3314))); // X-* - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(-3324))); // anti X0* - theBaryons.insert(new G4SPBaryon(G4ParticleTable::GetParticleTable()->FindParticle(-3314))); // anti X-* + theBaryons.insert(new G4SPBaryon(G4LambdacPlus::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiLambdacPlus::Definition())); + theBaryons.insert(new G4SPBaryon(G4SigmacPlusPlus::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiSigmacPlusPlus::Definition())); + theBaryons.insert(new G4SPBaryon(G4SigmacPlus::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiSigmacPlus::Definition())); + theBaryons.insert(new G4SPBaryon(G4SigmacZero::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiSigmacZero::Definition())); + theBaryons.insert(new G4SPBaryon(G4XicPlus::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiXicPlus::Definition())); + theBaryons.insert(new G4SPBaryon(G4XicZero::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiXicZero::Definition())); + theBaryons.insert(new G4SPBaryon(G4OmegacZero::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiOmegacZero::Definition())); + theBaryons.insert(new G4SPBaryon(G4Lambdab::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiLambdab::Definition())); + theBaryons.insert(new G4SPBaryon(G4SigmabPlus::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiSigmabPlus::Definition())); + theBaryons.insert(new G4SPBaryon(G4SigmabZero::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiSigmabZero::Definition())); + theBaryons.insert(new G4SPBaryon(G4SigmabMinus::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiSigmabMinus::Definition())); + theBaryons.insert(new G4SPBaryon(G4XibZero::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiXibZero::Definition())); + theBaryons.insert(new G4SPBaryon(G4XibMinus::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiXibMinus::Definition())); + theBaryons.insert(new G4SPBaryon(G4OmegabMinus::Definition())); + theBaryons.insert(new G4SPBaryon(G4AntiOmegabMinus::Definition())); } G4bool G4BaryonSplitter:: diff --git a/source/processes/hadronic/models/parton_string/qgsm/src/G4QGSDiffractiveExcitation.cc b/source/processes/hadronic/models/parton_string/qgsm/src/G4QGSDiffractiveExcitation.cc index 0900dc7e8b..50cf9670e1 100644 --- a/source/processes/hadronic/models/parton_string/qgsm/src/G4QGSDiffractiveExcitation.cc +++ b/source/processes/hadronic/models/parton_string/qgsm/src/G4QGSDiffractiveExcitation.cc @@ -179,8 +179,16 @@ ExciteParticipants(G4VSplitableHadron *projectile, G4VSplitableHadron *target, G { // Normal projectile if( absPrPDGcode > 1000 ) //------Projectile is baryon -------- { - MinPrDiffMass = 1.16; // GeV - AveragePt2 = 0.3; // GeV^2 + if ( absPrPDGcode > 4000 && absPrPDGcode < 6000 ) // Projectile is a charm or bottom baryon + { + MinPrDiffMass = projectile->GetDefinition()->GetPDGMass()/CLHEP::GeV + 0.25; // GeV + AveragePt2 = 0.3; // GeV^2 + } + else + { + MinPrDiffMass = 1.16; // GeV + AveragePt2 = 0.3; // GeV^2 + } } else if( absPrPDGcode == 211 || PrPDGcode == 111) //------Projectile is Pion ----------- { @@ -192,6 +200,11 @@ ExciteParticipants(G4VSplitableHadron *projectile, G4VSplitableHadron *target, G MinPrDiffMass = 1.1; // GeV AveragePt2 = 0.3; // GeV^2 } + else if( absPrPDGcode > 400 && absPrPDGcode < 600) // Projectile is a charm or bottom meson + { + MinPrDiffMass = projectile->GetDefinition()->GetPDGMass()/CLHEP::GeV + 0.25; // GeV + AveragePt2 = 0.3; // GeV^2 + } else //------Projectile is undefined, Nucleon assumed { MinPrDiffMass = 1.16; // GeV diff --git a/source/processes/hadronic/models/parton_string/qgsm/src/G4QGSParticipants.cc b/source/processes/hadronic/models/parton_string/qgsm/src/G4QGSParticipants.cc index c08e52476a..3b66e46fe3 100644 --- a/source/processes/hadronic/models/parton_string/qgsm/src/G4QGSParticipants.cc +++ b/source/processes/hadronic/models/parton_string/qgsm/src/G4QGSParticipants.cc @@ -58,7 +58,8 @@ G4QGSParticipants::G4QGSParticipants() : theDiffExcitaton(), SetPt2ofNuclearDestruction( 0.075*GeV*GeV ); SetMaxPt2ofNuclearDestruction( 1.0*GeV*GeV ); SetExcitationEnergyPerWoundedNucleon( 40.0*MeV ); - sigmaPt=0.0; // Uzhi June 2020 : sigmaPt=0.25*sqrt(GeV); + + sigmaPt=0.25*sqr(GeV); } G4QGSParticipants::G4QGSParticipants(const G4QGSParticipants &right) @@ -979,13 +980,14 @@ G4bool G4QGSParticipants::PutOnMassShell() { G4ThreeVector G4QGSParticipants::GaussianPt( G4double AveragePt2, G4double maxPtSquare ) const { // @@ this method is used in FTFModel as well. Should go somewhere common! - G4double Pt2( 0.0 ); - if ( AveragePt2 <= 0.0 ) { - Pt2 = 0.0; - } else { - Pt2 = -AveragePt2 * G4Log( 1.0 + G4UniformRand() * ( G4Exp( -maxPtSquare/AveragePt2 ) -1.0 ) ); + G4double Pt2( 0.0 ), Pt(0.0); + if ( AveragePt2 > 0.0 ) { + G4double x = maxPtSquare/AveragePt2; + Pt2 = (x < 200) ? + -AveragePt2 * G4Log( 1.0 + G4UniformRand() * ( G4Exp( -x ) -1.0 ) ) + : -AveragePt2 * G4Log( 1.0 - G4UniformRand() ); + Pt = std::sqrt( Pt2 ); } - G4double Pt = std::sqrt( Pt2 ); G4double phi = G4UniformRand() * twopi; return G4ThreeVector( Pt*std::cos(phi), Pt*std::sin(phi), 0.0 ); diff --git a/source/processes/hadronic/models/parton_string/qgsm/src/G4QuarkExchange.cc b/source/processes/hadronic/models/parton_string/qgsm/src/G4QuarkExchange.cc index 20a00ce250..d6f6f3de9f 100644 --- a/source/processes/hadronic/models/parton_string/qgsm/src/G4QuarkExchange.cc +++ b/source/processes/hadronic/models/parton_string/qgsm/src/G4QuarkExchange.cc @@ -136,18 +136,28 @@ ExciteParticipants(G4VSplitableHadron *projectile, G4VSplitableHadron *target) c G4bool ProjectileDiffraction = true; + // Also for heavy hadrons, assume 50% probability of projectile diffraction. if ( absPDGcode > 1000 ) { ProjectileDiffraction = G4UniformRand() <= 0.5; } if ( (absPDGcode == 211) || (absPDGcode == 111) ) { ProjectileDiffraction = G4UniformRand() <= 0.66; } if ( (absPDGcode == 321) || (absPDGcode == 311) || ( PDGcode == 130) || ( PDGcode == 310) ) { ProjectileDiffraction = G4UniformRand() <= 0.5; } + if ( absPDGcode > 400 && absPDGcode < 600 ) { ProjectileDiffraction = G4UniformRand() <= 0.5; } //G4cout<<"ProjectileDiffr "< 1000 ) //------Projectile is baryon -------- { - ProjectileMinDiffrMass = 1.16; // GeV - AveragePt2 = 0.3; // GeV^2 + if ( absPDGcode > 4000 && absPDGcode < 6000 ) // Projectile is a charm or bottom baryon + { + ProjectileMinDiffrMass = projectile->GetDefinition()->GetPDGMass()/CLHEP::GeV + 0.25; // GeV + AveragePt2 = 0.3; // GeV^2 + } + else + { + ProjectileMinDiffrMass = 1.16; // GeV + AveragePt2 = 0.3; // GeV^2 + } } else if( absPDGcode == 211 || absPDGcode == 111) //------Projectile is Pion ----------- { @@ -164,6 +174,11 @@ ExciteParticipants(G4VSplitableHadron *projectile, G4VSplitableHadron *target) c ProjectileMinDiffrMass = 0.25; // GeV AveragePt2 = 0.36; // GeV^2 } + else if( absPDGcode > 400 && absPDGcode < 600) // Projectile is a charm or bottom meson + { + ProjectileMinDiffrMass = projectile->GetDefinition()->GetPDGMass()/CLHEP::GeV + 0.25; // GeV + AveragePt2 = 0.3; // GeV^2 + } else //------Projectile is undefined, Nucleon assumed { ProjectileMinDiffrMass = 1.1; // GeV @@ -190,7 +205,7 @@ ExciteParticipants(G4VSplitableHadron *projectile, G4VSplitableHadron *target) c AveragePt2 = AveragePt2 * GeV*GeV; - if ( SqrtS - (ProjectileMinDiffrMass+TargetMinDiffrMass) < 220* MeV ) return false; + if ( SqrtS - (ProjectileMinDiffrMass+TargetMinDiffrMass) < 220.0*MeV ) return false; //----------------------- G4double Pt2, PZcms, PZcms2; diff --git a/source/processes/hadronic/models/parton_string/qgsm/src/G4Reggeons.cc b/source/processes/hadronic/models/parton_string/qgsm/src/G4Reggeons.cc index 7d2dae9eff..8f805838f7 100644 --- a/source/processes/hadronic/models/parton_string/qgsm/src/G4Reggeons.cc +++ b/source/processes/hadronic/models/parton_string/qgsm/src/G4Reggeons.cc @@ -116,43 +116,43 @@ G4Reggeons::G4Reggeons(const G4ParticleDefinition * particle) if (PDGcode < 0) WParity = +1; // Copied from G4HadronNucleonXsc::HyperonNucleonXscNS(...) - if ( PDGcode == 3122 || PDGcode == 3222 || - PDGcode == 3112 || PDGcode == 3212 || - PDGcode ==-3122 || PDGcode ==-3222 || - PDGcode ==-3112 || PDGcode ==-3212 ) { + if ( PDGcode == 3122 || PDGcode == 3222 || // Lambda or Sigma+ or + PDGcode == 3112 || PDGcode == 3212 || // Sigma- or Sigma0 or + PDGcode ==-3122 || PDGcode ==-3222 || // anti_Lambda or anti_Sigma+ or + PDGcode ==-3112 || PDGcode ==-3212 ) { // anti_Sigma- or anti_Sigma0 coeff = lBarCof1S; } - if ( PDGcode == 3312 || PDGcode == 3322 || - PDGcode ==-3312 || PDGcode ==-3322 ) { + if ( PDGcode == 3312 || PDGcode == 3322 || // Xi- or Xi0 or + PDGcode ==-3312 || PDGcode ==-3322 ) { // anti_Xi- or anti_Xi0 coeff = lBarCof2S; } - if ( PDGcode == 3334 || PDGcode ==-3334 ) { + if ( PDGcode == 3334 || PDGcode ==-3334 ) { // Omega- or anti_Omega- coeff = lBarCof3S; } - if ( PDGcode == 4122 || PDGcode ==-4122 || - PDGcode == 4222 || PDGcode ==-4222 || - PDGcode == 4212 || PDGcode ==-4212 || - PDGcode == 4112 || PDGcode ==-4112 ) { + if ( PDGcode == 4122 || PDGcode ==-4122 || // Lambda_c+ or anti_Lambda_c+ or + PDGcode == 4222 || PDGcode ==-4222 || // Sigma_c++ or anti_Sigma_c++ or + PDGcode == 4212 || PDGcode ==-4212 || // Sigma_c+ or anti_Sigma_c+ or + PDGcode == 4112 || PDGcode ==-4112 ) { // Sigma_c0 or anti_Sigma_c0 coeff = lBarCof1C; } - if ( PDGcode == 4432 || PDGcode ==-4432 ) { + if ( PDGcode == 4332 || PDGcode ==-4332 ) { // Omega_c0 or anti_Omega_c0 coeff = lBarCof2SC; } - if ( PDGcode == 4232 || PDGcode == 4132 || - PDGcode ==-4232 || PDGcode ==-4132 ) { + if ( PDGcode == 4232 || PDGcode == 4132 || // Xi_c+ or Xi_c0 or + PDGcode ==-4232 || PDGcode ==-4132 ) { // anti_Xi_c+ or anti_Xi_c0 coeff = lBarCofSC; } - if ( PDGcode == 5122 || PDGcode ==-5122 || - PDGcode == 5222 || PDGcode ==-5222 || - PDGcode == 5112 || PDGcode ==-5112 || - PDGcode == 5212 || PDGcode ==-5212 ) { + if ( PDGcode == 5122 || PDGcode ==-5122 || // Lambda_b0 or anti_Lambda_b0 or + PDGcode == 5222 || PDGcode ==-5222 || // Sigma_b+ or anti_Sigma_b+ or + PDGcode == 5112 || PDGcode ==-5112 || // Sigma_b- or anti_Sigma_b- or + PDGcode == 5212 || PDGcode ==-5212 ) { // Sigma_b0 or anti_Sigma_b0 coeff = lBarCof1B; } - if ( PDGcode == 5332 || PDGcode ==-5332 ) { + if ( PDGcode == 5332 || PDGcode ==-5332 ) { // Omega_b- or anti_Omega_b- coeff = lBarCof2SB; } - if ( PDGcode == 5132 || PDGcode == 5232 || - PDGcode ==-5132 || PDGcode ==-5232 ) { + if ( PDGcode == 5132 || PDGcode == 5232 || // Xi_b- or Xi_b0 or + PDGcode ==-5132 || PDGcode ==-5232 ) { // anti_Xi_b- or anti_Xi_b0 coeff = lBarCofSB; } // End of Copied from G4HadronNucleonXsc::HyperonNucleonXscNS(...) @@ -189,33 +189,33 @@ G4Reggeons::G4Reggeons(const G4ParticleDefinition * particle) if (PDGcode < 0) WParity = +1; // Copied from G4HadronNucleonXsc::SCBMesonNucleonXscNS(...) - if ( PDGcode == 511 || PDGcode ==-511 || - PDGcode == 521 || PDGcode ==-521 ) { + if ( PDGcode == 511 || PDGcode ==-511 || // B0 or anti_B0 or + PDGcode == 521 || PDGcode ==-521 ) { // B+ or B- coeff = llMesCof1B; } - if ( PDGcode == 421 || PDGcode ==-421 || - PDGcode == 411 || PDGcode ==-411 ) { + if ( PDGcode == 421 || PDGcode ==-421 || // D0 or anti_D0 or + PDGcode == 411 || PDGcode ==-411 ) { // D+ or D- coeff = llMesCof1C; } - if ( PDGcode == 531 || PDGcode ==-531 ) { + if ( PDGcode == 531 || PDGcode ==-531 ) { // Bs0 or anti_Bs0 or coeff = llMesCofSB; } - if ( PDGcode == 541 || PDGcode ==-541 ) { + if ( PDGcode == 541 || PDGcode ==-541 ) { // Bc+ or Bc- coeff = llMesCofCB; } - if ( PDGcode == 431 || PDGcode ==-431 ) { + if ( PDGcode == 431 || PDGcode ==-431 ) { // D_s+ or D_s- coeff = llMesCofSC; } - if ( PDGcode == 441 || PDGcode == 443 ) { + if ( PDGcode == 441 || PDGcode == 443 ) { // Eta_c or J/psi coeff = llMesCof2C; } - if ( PDGcode == 553 ) { + if ( PDGcode == 553 ) { // Upsilon coeff = llMesCof2B; } - if ( PDGcode == 221 ) { + if ( PDGcode == 221 ) { // Eta coeff = llMesCofEta; } - if ( PDGcode == 331 ) { + if ( PDGcode == 331 ) { // Eta' coeff = llMesCofEtaP; } // End of Copied from G4HadronNucleonXsc::SCBMesonNucleonXscNS(...) diff --git a/source/processes/hadronic/models/parton_string/qgsm/src/G4SPBaryon.cc b/source/processes/hadronic/models/parton_string/qgsm/src/G4SPBaryon.cc index b143be0ca0..a9352fd124 100644 --- a/source/processes/hadronic/models/parton_string/qgsm/src/G4SPBaryon.cc +++ b/source/processes/hadronic/models/parton_string/qgsm/src/G4SPBaryon.cc @@ -164,7 +164,6 @@ G4SPBaryon(G4Proton * aProton) thePartonInfo.push_back(new G4SPPartonInfo(2101, 2, 1./2.)); // ud_0, u } - G4SPBaryon:: G4SPBaryon(G4AntiProton * aAntiProton) { @@ -184,7 +183,6 @@ G4SPBaryon(G4Neutron * aNeutron) thePartonInfo.push_back(new G4SPPartonInfo(1103, 2, 1./3./2 )); // dd_1, u } - G4SPBaryon:: G4SPBaryon(G4AntiNeutron * aAntiNeutron) { @@ -206,7 +204,6 @@ G4SPBaryon(G4Lambda * aLambda) thePartonInfo.push_back(new G4SPPartonInfo(3101, 2, 1./12.)); // sd_0, u } - G4SPBaryon:: G4SPBaryon(G4AntiLambda * aAntiLambda) { @@ -223,12 +220,11 @@ G4SPBaryon:: G4SPBaryon(G4SigmaPlus * aSigmaPlus) { theDefinition = aSigmaPlus; - thePartonInfo.push_back(new G4SPPartonInfo(2203, 3, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(3203, 2, 1./6.)); - thePartonInfo.push_back(new G4SPPartonInfo(3201, 2, 1./2.)); + thePartonInfo.push_back(new G4SPPartonInfo(2203, 3, 1./3.)); // uu_1, s + thePartonInfo.push_back(new G4SPPartonInfo(3203, 2, 1./6.)); // su_1, u + thePartonInfo.push_back(new G4SPPartonInfo(3201, 2, 1./2.)); // su_0, u } - G4SPBaryon:: G4SPBaryon(G4AntiSigmaPlus * aAntiSigmaPlus) { @@ -243,14 +239,13 @@ G4SPBaryon:: G4SPBaryon(G4SigmaZero * aSigmaZero) { theDefinition = aSigmaZero; - thePartonInfo.push_back(new G4SPPartonInfo(2103, 3, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(3203, 1, 1./12.)); - thePartonInfo.push_back(new G4SPPartonInfo(3201, 1, 1./4.)); - thePartonInfo.push_back(new G4SPPartonInfo(3103, 2, 1./12.)); - thePartonInfo.push_back(new G4SPPartonInfo(3101, 2, 1./4.)); + thePartonInfo.push_back(new G4SPPartonInfo(2103, 3, 1./3.)); // ud_1, s + thePartonInfo.push_back(new G4SPPartonInfo(3203, 1, 1./12.)); // su_1, d + thePartonInfo.push_back(new G4SPPartonInfo(3201, 1, 1./4.)); // su_0, d + thePartonInfo.push_back(new G4SPPartonInfo(3103, 2, 1./12.)); // sd_1, u + thePartonInfo.push_back(new G4SPPartonInfo(3101, 2, 1./4.)); // sd_0, u } - G4SPBaryon:: G4SPBaryon(G4AntiSigmaZero * aAntiSigmaZero) { @@ -267,12 +262,11 @@ G4SPBaryon:: G4SPBaryon(G4SigmaMinus * aSigmaMinus) { theDefinition = aSigmaMinus; - thePartonInfo.push_back(new G4SPPartonInfo(1103, 3, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(3103, 1, 1./6.)); - thePartonInfo.push_back(new G4SPPartonInfo(3101, 1, 1./2.)); + thePartonInfo.push_back(new G4SPPartonInfo(1103, 3, 1./3.)); // dd_1, s + thePartonInfo.push_back(new G4SPPartonInfo(3103, 1, 1./6.)); // sd_1, d + thePartonInfo.push_back(new G4SPPartonInfo(3101, 1, 1./2.)); // sd_0, d } - G4SPBaryon:: G4SPBaryon(G4AntiSigmaMinus * aAntiSigmaMinus) { @@ -283,36 +277,15 @@ G4SPBaryon(G4AntiSigmaMinus * aAntiSigmaMinus) } -G4SPBaryon:: -G4SPBaryon(G4XiMinus * aXiMinus) -{ - theDefinition = aXiMinus; - thePartonInfo.push_back(new G4SPPartonInfo(3103, 3, 1./6.)); - thePartonInfo.push_back(new G4SPPartonInfo(3101, 3, 1./2.)); - thePartonInfo.push_back(new G4SPPartonInfo(3303, 1, 1./3.)); -} - - -G4SPBaryon:: -G4SPBaryon(G4AntiXiMinus * aAntiXiMinus) -{ - theDefinition = aAntiXiMinus; - thePartonInfo.push_back(new G4SPPartonInfo(-3103, -3, 1./6.)); - thePartonInfo.push_back(new G4SPPartonInfo(-3101, -3, 1./2.)); - thePartonInfo.push_back(new G4SPPartonInfo(-3303, -1, 1./3.)); -} - - G4SPBaryon:: G4SPBaryon(G4XiZero * aXiZero) { theDefinition = aXiZero; - thePartonInfo.push_back(new G4SPPartonInfo(3203, 3, 1./6.)); - thePartonInfo.push_back(new G4SPPartonInfo(3201, 3, 1./2.)); - thePartonInfo.push_back(new G4SPPartonInfo(3303, 2, 1./3.)); + thePartonInfo.push_back(new G4SPPartonInfo(3203, 3, 1./6.)); // su_1, s + thePartonInfo.push_back(new G4SPPartonInfo(3201, 3, 1./2.)); // su_0, s + thePartonInfo.push_back(new G4SPPartonInfo(3303, 2, 1./3.)); // ss_1, u } - G4SPBaryon:: G4SPBaryon(G4AntiXiZero * aAntiXiZero) { @@ -323,14 +296,32 @@ G4SPBaryon(G4AntiXiZero * aAntiXiZero) } +G4SPBaryon:: +G4SPBaryon(G4XiMinus * aXiMinus) +{ + theDefinition = aXiMinus; + thePartonInfo.push_back(new G4SPPartonInfo(3103, 3, 1./6.)); // sd_1, s + thePartonInfo.push_back(new G4SPPartonInfo(3101, 3, 1./2.)); // sd_0, s + thePartonInfo.push_back(new G4SPPartonInfo(3303, 1, 1./3.)); // ss_1, d +} + +G4SPBaryon:: +G4SPBaryon(G4AntiXiMinus * aAntiXiMinus) +{ + theDefinition = aAntiXiMinus; + thePartonInfo.push_back(new G4SPPartonInfo(-3103, -3, 1./6.)); + thePartonInfo.push_back(new G4SPPartonInfo(-3101, -3, 1./2.)); + thePartonInfo.push_back(new G4SPPartonInfo(-3303, -1, 1./3.)); +} + + G4SPBaryon:: G4SPBaryon(G4OmegaMinus * anOmegaMinus) { theDefinition = anOmegaMinus; - thePartonInfo.push_back(new G4SPPartonInfo(3303, 3, 1.)); + thePartonInfo.push_back(new G4SPPartonInfo(3303, 3, 1.)); // ss_1, s } - G4SPBaryon:: G4SPBaryon(G4AntiOmegaMinus * anAntiOmegaMinus) { @@ -344,92 +335,42 @@ G4SPBaryon:: G4SPBaryon(G4ParticleDefinition * aDefinition) { theDefinition = aDefinition; - if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(2224))// D++ + if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(2224)) // Delta++ { - thePartonInfo.push_back(new G4SPPartonInfo(2203, 2, 1.)); + thePartonInfo.push_back(new G4SPPartonInfo(2203, 2, 1.)); // uu_1, u } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(-2224))// anti D++ + else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(-2224)) // anti Delta++ { thePartonInfo.push_back(new G4SPPartonInfo(-2203, -2, 1.)); } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(2214))// D+ + else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(2214)) // Delta+ { - thePartonInfo.push_back(new G4SPPartonInfo(2203, 1, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(2103, 2, 2./3.)); + thePartonInfo.push_back(new G4SPPartonInfo(2203, 1, 1./3.)); // uu_1, d + thePartonInfo.push_back(new G4SPPartonInfo(2103, 2, 2./3.)); // ud_1, u } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(-2214))// anti D+ + else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(-2214)) // anti Delta+ { thePartonInfo.push_back(new G4SPPartonInfo(-2203, -1, 1./3.)); thePartonInfo.push_back(new G4SPPartonInfo(-2103, -2, 2./3.)); } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(2114))// D0 + else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(2114)) // Delta0 { - thePartonInfo.push_back(new G4SPPartonInfo(2103, 1, 2./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(1103, 2, 1./3.)); + thePartonInfo.push_back(new G4SPPartonInfo(2103, 1, 2./3.)); // ud_1, d + thePartonInfo.push_back(new G4SPPartonInfo(1103, 2, 1./3.)); // dd_1, u } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(-2114))// anti D0 + else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(-2114)) // anti Delta0 { thePartonInfo.push_back(new G4SPPartonInfo(-2103, -1, 2./3.)); thePartonInfo.push_back(new G4SPPartonInfo(-2103, -2, 1./3.)); } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(1114))// D- + else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(1114)) // Delta- { - thePartonInfo.push_back(new G4SPPartonInfo(1103, 1, 1.)); + thePartonInfo.push_back(new G4SPPartonInfo(1103, 1, 1.)); // dd_1, d } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(-1114))// anti D- + else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(-1114)) // anti Delta- { thePartonInfo.push_back(new G4SPPartonInfo(-1103, -1, 1.)); - } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(3224))// S*+ - { - thePartonInfo.push_back(new G4SPPartonInfo(2203, 3, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(3203, 2, 2./3.)); - } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(-3224))// anti S*+ - { - thePartonInfo.push_back(new G4SPPartonInfo(-2203, -3, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(-3203, -2, 2./3.)); - } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(3214))// S*0 - { - thePartonInfo.push_back(new G4SPPartonInfo(2103, 3, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(3203, 1, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(3103, 2, 1./3.)); - } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(-3214))// anti S*0 - { - thePartonInfo.push_back(new G4SPPartonInfo(-2103, -3, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(-3203, -1, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(-3103, -2, 1./3.)); - } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(3114))// S*- - { - thePartonInfo.push_back(new G4SPPartonInfo(1103, 3, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(3103, 1, 2./3.)); - } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(-3224))// anti S*- - { - thePartonInfo.push_back(new G4SPPartonInfo(-1103, -3, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(-3103, -1, 2./3.)); - } else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(3324))// Xi*0 - { - thePartonInfo.push_back(new G4SPPartonInfo(3203, 3, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(3303, 2, 2./3.)); - } else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(-3324))// anti Xi*0 - { - thePartonInfo.push_back(new G4SPPartonInfo(-3203, -3, 1./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(-3303, -2, 2./3.)); - } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(3314))// Xi*- - { - thePartonInfo.push_back(new G4SPPartonInfo(3103, 3, 2./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(3303, 1, 1./3.)); - } - else if (theDefinition == G4ParticleTable::GetParticleTable()->FindParticle(-3314))// anti Xi*- - { - thePartonInfo.push_back(new G4SPPartonInfo(-3103, -3, 2./3.)); - thePartonInfo.push_back(new G4SPPartonInfo(-3303, -1, 1./3.)); - } + } } @@ -437,3 +378,238 @@ G4SPBaryon::~G4SPBaryon() { for (unsigned int i=0;i 1000 ) //------Projectile is baryon -------- { - ProjectileMinDiffrMass = 1.16; // GeV - AveragePt2 = 0.3; // GeV^2 + if ( absPDGcode > 4000 && absPDGcode < 6000 ) // Projectile is a charm or bottom baryon + { + ProjectileMinDiffrMass = projectile->GetDefinition()->GetPDGMass()/CLHEP::GeV + 0.25; // GeV + AveragePt2 = 0.3; // GeV^2 + } + else + { + ProjectileMinDiffrMass = 1.16; // GeV + AveragePt2 = 0.3; // GeV^2 + } } else if( absPDGcode == 211 || absPDGcode == 111) //------Projectile is Pion ----------- { @@ -144,6 +152,11 @@ ExciteParticipants( G4VSplitableHadron *projectile, G4VSplitableHadron *target, ProjectileMinDiffrMass = 0.25; // GeV AveragePt2 = 0.36; // GeV^2 } + else if( absPDGcode > 400 && absPDGcode < 600) // Projectile is a charm or bottom meson + { + ProjectileMinDiffrMass = projectile->GetDefinition()->GetPDGMass()/CLHEP::GeV + 0.25; // GeV + AveragePt2 = 0.3; // GeV^2 + } else //------Projectile is undefined, Nucleon assumed { ProjectileMinDiffrMass = 1.1; // GeV diff --git a/source/processes/hadronic/models/pre_equilibrium/exciton_model/sources.cmake b/source/processes/hadronic/models/pre_equilibrium/exciton_model/sources.cmake index 77047306bd..2e7ddf6638 100644 --- a/source/processes/hadronic/models/pre_equilibrium/exciton_model/sources.cmake +++ b/source/processes/hadronic/models/pre_equilibrium/exciton_model/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_preequ.G4had_preequ_exciton # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,44 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4had_preequ_exciton HEADERS G4GNASHTransitions.hh diff --git a/source/processes/hadronic/models/qmd/sources.cmake b/source/processes/hadronic/models/qmd/sources.cmake index 29d9910d81..96b3b72109 100644 --- a/source/processes/hadronic/models/qmd/sources.cmake +++ b/source/processes/hadronic/models/qmd/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_qmd # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,52 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/qgsm/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_qmd HEADERS G4QMDCollision.hh diff --git a/source/processes/hadronic/models/quasi_elastic/History b/source/processes/hadronic/models/quasi_elastic/History index 46be4a139e..ec18907329 100644 --- a/source/processes/hadronic/models/quasi_elastic/History +++ b/source/processes/hadronic/models/quasi_elastic/History @@ -14,6 +14,19 @@ code and to keep track of all tags. * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- +24-Jul-2020, A.Ribon hadr-qelastic-V10-06-01 +- G4QuasiElRatios : extended to charmed and bottom hadrons. + (The simplified treatment adopted here is the following: + to treat all heavy mesons having constituent charm or bottom quark + as a meson with strange quark - like K- - and all heavy mesons + having constituent anti-charm or anti-bottom anti-quark as a + meson with anti-strange quark - like K+; + for baryons, all heavy baryons are treated as Lambda and all heavy + anti-baryons are treated as anti-proton/anti-neutron. + Only two methods have been changed: G4QuasiElRatios::GetElTotXS and + G4QuasiElRatios::FetchElTot, whereas G4QuasiElRatios::ChExer does + not need to be changed because it is not used anywhere.) + 10-Mar-2020, V.Ivanchenko hadr-qelastic-V10-06-00 - G4QuasiElRatios : fixed memory leak at exit diff --git a/source/processes/hadronic/models/quasi_elastic/sources.cmake b/source/processes/hadronic/models/quasi_elastic/sources.cmake index 4382655202..b910c3de04 100644 --- a/source/processes/hadronic/models/quasi_elastic/sources.cmake +++ b/source/processes/hadronic/models/quasi_elastic/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_binary # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,47 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_quasi_elastic HEADERS G4QuasiElRatios.hh diff --git a/source/processes/hadronic/models/quasi_elastic/src/G4QuasiElRatios.cc b/source/processes/hadronic/models/quasi_elastic/src/G4QuasiElRatios.cc index 58c3a93a83..ec86c95aa5 100644 --- a/source/processes/hadronic/models/quasi_elastic/src/G4QuasiElRatios.cc +++ b/source/processes/hadronic/models/quasi_elastic/src/G4QuasiElRatios.cc @@ -583,10 +583,19 @@ std::pair G4QuasiElRatios::GetElTotXS(G4double p, G4int PDG, else if ( (PDG == 2112 && F) || (PDG == 2212 && !F) ) ind=1; // np/pn else if ( (PDG == -211 && F) || (PDG == 211 && !F) ) ind=2; // pimp/pipn else if ( (PDG == 211 && F) || (PDG == -211 && !F) ) ind=3; // pipp/pimn - else if ( PDG == -321 || PDG == -311 || (kf && !kfl) ) ind=4; // KmN/K0N - else if ( PDG == 321 || PDG == 311 || (kf && kfl) ) ind=5; // KpN/aK0N - else if ( PDG > 3000 && PDG < 3335) ind=6; // @@ for all hyperons - take Lambda - else if ( PDG > -3335 && PDG < -2000) ind=7; // @@ for all anti-baryons (anti-p/anti-n) + //AR-Jul2020: Extended to charmed and bottom hadrons: + // - treat mesons with constituent c quark or b quark as a meson with s quark (e.g. K-); + // - treat mesons with constituent cbar antiquark or bbar antiquark as a meson with sbar antiquark (e.g. K+); + // - treat all heavy baryons (i.e. hyperons, charmed and bottom baryons) as lambda; + // - treat all heavy anti-baryons (i.e. anti-hyperons, charmed and bottom anti-baryons) as anti-p/anti-n. + else if ( PDG == -321 || PDG == -311 || (kf && !kfl) || // mesons with s quark + PDG == 411 || PDG == 421 || PDG == 431 || // mesons with c quark + PDG == -521 || PDG == -511 || PDG == -531 || PDG == -541 ) ind=4; // mesons with b quark + else if ( PDG == 321 || PDG == 311 || (kf && kfl) || // mesons with sbar antiquark + PDG == -411 || PDG == -421 || PDG == -431 || // mesons with cbar antiquark + PDG == 521 || PDG == 511 || PDG == 531 || PDG == 541 ) ind=5; // mesons with bbar antiquark + else if ( PDG > 3000 && PDG < 5333 ) ind=6; // @@ for all heavy baryons - take Lambda + else if ( PDG > -5333 && PDG < -2000 ) ind=7; // @@ for all anti-baryons (anti-p/anti-n) else { G4cout<<"*Error*G4QuasiElRatios::CalcElTotXS: PDG="< G4QuasiElRatios::FetchElTot(G4double p, G4int PDG, else if ( (PDG == 2112 && F) || (PDG == 2212 && !F) ) ind=1; // np/pn else if ( (PDG == -211 && F) || (PDG == 211 && !F) ) ind=2; // pimp/pipn else if ( (PDG == 211 && F) || (PDG == -211 && !F) ) ind=3; // pipp/pimn - else if ( PDG == -321 || PDG == -311 || (kf && !kfl) ) ind=4; // KmN/K0N - else if ( PDG == 321 || PDG == 311 || (kf && kfl) ) ind=5; // KpN/aK0N - else if ( PDG > 3000 && PDG < 3335) ind=6; // @@ for all hyperons - take Lambda - else if ( PDG > -3335 && PDG < -2000) ind=7; // @@ for all anti-baryons (anti-p/anti-n) + //AR-Jul2020: Extended to charmed and bottom hadrons: + // - treat mesons with constituent c quark or b quark as a meson with s quark (e.g. K-); + // - treat mesons with constituent cbar antiquark or bbar antiquark as a meson with sbar antiquark (e.g. K+); + // - treat all heavy baryons (i.e. hyperons, charmed and bottom baryons) as lambda; + // - treat all heavy anti-baryons (i.e. anti-hyperons, charmed and bottom anti-baryons) as anti-p/anti-n. + else if ( PDG == -321 || PDG == -311 || (kf && !kfl) || // mesons with s quark + PDG == 411 || PDG == 421 || PDG == 431 || // mesons with c quark + PDG == -521 || PDG == -511 || PDG == -531 || PDG == -541 ) ind=4; // mesons with b quark + else if ( PDG == 321 || PDG == 311 || (kf && kfl) || // mesons with sbar antiquark + PDG == -411 || PDG == -421 || PDG == -431 || // mesons with cbar antiquark + PDG == 521 || PDG == 511 || PDG == 531 || PDG == 541 ) ind=5; // mesons with bbar antiquark + else if ( PDG > 3000 && PDG < 5333 ) ind=6; // @@ for all heavy baryons - take Lambda + else if ( PDG > -5333 && PDG < -2000 ) ind=7; // @@ for all anti-baryons (anti-p/anti-n) else { G4cout<<"*Error*G4QuasiElRatios::FetchElTot: PDG="< G4QuasiElRatios::Scatter(G4int NPDG, } G4double P=std::sqrt(E2-mP2); // Momentum in pseudo laboratory system // @@ Temporary NN t-dependence for all hadrons - if(pPDG>3400 || pPDG<-3400) G4cout<<"-Warning-G4QE::Scatter: pPDG="<3400 || pPDG<-3400) G4cout<<"-Warning-G4QE::Scatter: pPDG="< G4QuasiElRatios::Scatter(G4int NPDG, // scatter (pPDG,p4M) on a virtual nucleon (NPDG,N4M), result: final pair(newN4M,newp4M) // if(newN4M.e()==0.) - below threshold, XS=0, no scattering of the progectile happened // User should himself change the charge (PDG) (e.g. pn->np, pi+n->pi0p, pi-p->pi0n etc.) +//AR-Jul2020: No need to change this method in order to extended quasi-elastic to +// charmed and bottom mesons, because it is not used anywhere ! std::pair G4QuasiElRatios::ChExer(G4int NPDG, G4LorentzVector N4M, G4int pPDG, G4LorentzVector p4M) { diff --git a/source/processes/hadronic/models/radioactive_decay/History b/source/processes/hadronic/models/radioactive_decay/History index 43cb941807..10ab396d7b 100644 --- a/source/processes/hadronic/models/radioactive_decay/History +++ b/source/processes/hadronic/models/radioactive_decay/History @@ -14,6 +14,13 @@ track of all tags. * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +05 August 2020 Alberto Ribon radioactive_decay-V10-06-09 +---------------------------------------------------------- +- G4RadioactiveDecayBaseMessenger, G4RadioactiveDecaymessenger, + G4RadioactivationMessenger : deprecated the old UI commands + "/grdm/..." and introduced the new corresponding ones, + "/process/had/rdm/..." . + 12 May 2020 Alberto Ribon radioactive_decay-V10-06-08 ------------------------------------------------------------ - G4RadioactiveDecayBase.cc , G4RadioactiveDecay.cc : @@ -358,7 +365,7 @@ Code received from Anselmo Meregaglia. 20 December 2016 Dennis Wright radioactive_decay-V10-03-00 ------------------------------------------------------------ - G4ITDecay::G4ITDecay(): make G4PhotonEvaporation a class member - and intialize only once to avoid memory churn + and initialize only once to avoid memory churn - G4ITDecay::DecayIt(): make G4Fragment a data member to avoid its deletion at end of this method and keep polarization information diff --git a/source/processes/hadronic/models/radioactive_decay/include/G4RadioactivationMessenger.hh b/source/processes/hadronic/models/radioactive_decay/include/G4RadioactivationMessenger.hh index 9ec3d3ec6b..b6f188c980 100644 --- a/source/processes/hadronic/models/radioactive_decay/include/G4RadioactivationMessenger.hh +++ b/source/processes/hadronic/models/radioactive_decay/include/G4RadioactivationMessenger.hh @@ -61,13 +61,20 @@ class G4RadioactivationMessenger: public G4UImessenger private: G4Radioactivation* theRadioactivationContainer; - G4UIdirectory* grdmDirectory; - G4UIcmdWithABool* analoguemcCmd; - G4UIcmdWithAString* sourcetimeprofileCmd; - G4UIcmdWithAString* decaybiasprofileCmd; - G4UIcmdWithABool* brbiasCmd; - G4UIcmdWithAnInteger* splitnucleiCmd; - G4UIcmdWithADoubleAndUnit* hlthCmd; + G4UIdirectory* old_grdmDirectory; // To be removed in G4 11.0 + G4UIdirectory* rdmDirectory; + G4UIcmdWithABool* old_analoguemcCmd; // To be removed in G4 11.0 + G4UIcmdWithABool* analoguemcCmd; + G4UIcmdWithAString* old_sourcetimeprofileCmd; // To be removed in G4 11.0 + G4UIcmdWithAString* sourcetimeprofileCmd; + G4UIcmdWithAString* old_decaybiasprofileCmd; // To be removed in G4 11.0 + G4UIcmdWithAString* decaybiasprofileCmd; + G4UIcmdWithABool* old_brbiasCmd; // To be removed in G4 11.0 + G4UIcmdWithABool* brbiasCmd; + G4UIcmdWithAnInteger* old_splitnucleiCmd; // To be removed in G4 11.0 + G4UIcmdWithAnInteger* splitnucleiCmd; + G4UIcmdWithADoubleAndUnit* old_hlthCmd; // To be removed in G4 11.0 + G4UIcmdWithADoubleAndUnit* hlthCmd; }; diff --git a/source/processes/hadronic/models/radioactive_decay/include/G4RadioactiveDecayBaseMessenger.hh b/source/processes/hadronic/models/radioactive_decay/include/G4RadioactiveDecayBaseMessenger.hh index eb982a93e2..dfbdbcf17b 100644 --- a/source/processes/hadronic/models/radioactive_decay/include/G4RadioactiveDecayBaseMessenger.hh +++ b/source/processes/hadronic/models/radioactive_decay/include/G4RadioactiveDecayBaseMessenger.hh @@ -65,21 +65,32 @@ class G4RadioactiveDecayBaseMessenger: public G4UImessenger private: G4RadioactiveDecayBase* theRadioactiveDecayContainer; - G4UIdirectory* grdmDirectory; - G4UIcmdWithNucleusLimits* nucleuslimitsCmd; - G4UIcmdWithAnInteger* verboseCmd; - G4UIcmdWithAString* avolumeCmd; - G4UIcmdWithAString* deavolumeCmd; - G4UIcmdWithoutParameter* allvolumesCmd; - G4UIcmdWithoutParameter* deallvolumesCmd; - G4UIcmdWithABool* icmCmd; - G4UIcmdWithABool* armCmd; - - G4UIcommand* userDecayDataCmd; - G4UIcommand* userEvaporationDataCmd; - - G4UIcmdWith3Vector* colldirCmd; - G4UIcmdWithADoubleAndUnit* collangleCmd; + G4UIdirectory* old_grdmDirectory; // To be removed in G4 11.0 + G4UIdirectory* rdmDirectory; + G4UIcmdWithNucleusLimits* old_nucleuslimitsCmd; // To be removed in G4 11.0 + G4UIcmdWithNucleusLimits* nucleuslimitsCmd; + G4UIcmdWithAnInteger* old_verboseCmd; // To be removed in G4 11.0 + G4UIcmdWithAnInteger* verboseCmd; + G4UIcmdWithAString* old_avolumeCmd; // To be removed in G4 11.0 + G4UIcmdWithAString* avolumeCmd; + G4UIcmdWithAString* old_deavolumeCmd; // To be removed in G4 11.0 + G4UIcmdWithAString* deavolumeCmd; + G4UIcmdWithoutParameter* old_allvolumesCmd; // To be removed in G4 11.0 + G4UIcmdWithoutParameter* allvolumesCmd; + G4UIcmdWithoutParameter* old_deallvolumesCmd; // To be removed in G4 11.0 + G4UIcmdWithoutParameter* deallvolumesCmd; + G4UIcmdWithABool* old_icmCmd; // To be removed in G4 11.0 + G4UIcmdWithABool* icmCmd; + G4UIcmdWithABool* old_armCmd; // To be removed in G4 11.0 + G4UIcmdWithABool* armCmd; + G4UIcommand* old_userDecayDataCmd; // To be removed in G4 11.0 + G4UIcommand* userDecayDataCmd; + G4UIcommand* old_userEvaporationDataCmd; // To be removed in G4 11.0 + G4UIcommand* userEvaporationDataCmd; + G4UIcmdWith3Vector* old_colldirCmd; // To be removed in G4 11.0 + G4UIcmdWith3Vector* colldirCmd; + G4UIcmdWithADoubleAndUnit* old_collangleCmd; // To be removed in G4 11.0 + G4UIcmdWithADoubleAndUnit* collangleCmd; }; #endif diff --git a/source/processes/hadronic/models/radioactive_decay/include/G4RadioactiveDecaymessenger.hh b/source/processes/hadronic/models/radioactive_decay/include/G4RadioactiveDecaymessenger.hh index 14949f8203..058ee4ff01 100644 --- a/source/processes/hadronic/models/radioactive_decay/include/G4RadioactiveDecaymessenger.hh +++ b/source/processes/hadronic/models/radioactive_decay/include/G4RadioactiveDecaymessenger.hh @@ -94,28 +94,46 @@ public: //with description private: G4RadioactiveDecay *theRadioactiveDecayContainer; - G4UIdirectory *grdmDirectory; - G4UIcmdWithNucleusLimits *nucleuslimitsCmd; - G4UIcmdWithAString *sourcetimeprofileCmd; - G4UIcmdWithAString *decaybiasprofileCmd; - G4UIcmdWithABool *analoguemcCmd; - G4UIcmdWithABool *fbetaCmd; - G4UIcmdWithABool *brbiasCmd; - G4UIcmdWithAnInteger *splitnucleiCmd; - G4UIcmdWithAnInteger *verboseCmd; - G4UIcmdWithAString *avolumeCmd; - G4UIcmdWithAString *deavolumeCmd; - G4UIcmdWithoutParameter *allvolumesCmd; - G4UIcmdWithoutParameter *deallvolumesCmd; - G4UIcmdWithABool *icmCmd; - G4UIcmdWithABool *armCmd; - G4UIcmdWithADoubleAndUnit *hlthCmd; - - G4UIcommand *userDecayDataCmd; - G4UIcommand *userEvaporationDataCmd; - - G4UIcmdWith3Vector *colldirCmd; - G4UIcmdWithADoubleAndUnit *collangleCmd; + G4UIdirectory *old_grdmDirectory; // To be removed in G4 11.0 + G4UIdirectory *rdmDirectory; + G4UIcmdWithNucleusLimits *old_nucleuslimitsCmd; // To be removed in G4 11.0 + G4UIcmdWithNucleusLimits *nucleuslimitsCmd; + G4UIcmdWithAString *old_sourcetimeprofileCmd; // To be removed in G4 11.0 + G4UIcmdWithAString *sourcetimeprofileCmd; + G4UIcmdWithAString *old_decaybiasprofileCmd; // To be removed in G4 11.0 + G4UIcmdWithAString *decaybiasprofileCmd; + G4UIcmdWithABool *old_analoguemcCmd; // To be removed in G4 11.0 + G4UIcmdWithABool *analoguemcCmd; + G4UIcmdWithABool *old_fbetaCmd; // To be removed in G4 11.0 + G4UIcmdWithABool *fbetaCmd; + G4UIcmdWithABool *old_brbiasCmd; // To be removed in G4 11.0 + G4UIcmdWithABool *brbiasCmd; + G4UIcmdWithAnInteger *old_splitnucleiCmd; // To be removed in G4 11.0 + G4UIcmdWithAnInteger *splitnucleiCmd; + G4UIcmdWithAnInteger *old_verboseCmd; // To be removed in G4 11.0 + G4UIcmdWithAnInteger *verboseCmd; + G4UIcmdWithAString *old_avolumeCmd; // To be removed in G4 11.0 + G4UIcmdWithAString *avolumeCmd; + G4UIcmdWithAString *old_deavolumeCmd; // To be removed in G4 11.0 + G4UIcmdWithAString *deavolumeCmd; + G4UIcmdWithoutParameter *old_allvolumesCmd; // To be removed in G4 11.0 + G4UIcmdWithoutParameter *allvolumesCmd; + G4UIcmdWithoutParameter *old_deallvolumesCmd; // To be removed in G4 11.0 + G4UIcmdWithoutParameter *deallvolumesCmd; + G4UIcmdWithABool *old_icmCmd; // To be removed in G4 11.0 + G4UIcmdWithABool *icmCmd; + G4UIcmdWithABool *old_armCmd; // To be removed in G4 11.0 + G4UIcmdWithABool *armCmd; + G4UIcmdWithADoubleAndUnit *old_hlthCmd; // To be removed in G4 11.0 + G4UIcmdWithADoubleAndUnit *hlthCmd; + G4UIcommand *old_userDecayDataCmd; // To be removed in G4 11.0 + G4UIcommand *userDecayDataCmd; + G4UIcommand *old_userEvaporationDataCmd; // To be removed in G4 11.0 + G4UIcommand *userEvaporationDataCmd; + G4UIcmdWith3Vector *old_colldirCmd; // To be removed in G4 11.0 + G4UIcmdWith3Vector *colldirCmd; + G4UIcmdWithADoubleAndUnit *old_collangleCmd; // To be removed in G4 11.0 + G4UIcmdWithADoubleAndUnit *collangleCmd; }; diff --git a/source/processes/hadronic/models/radioactive_decay/sources.cmake b/source/processes/hadronic/models/radioactive_decay/sources.cmake index 30a39f066d..19d19ce65a 100644 --- a/source/processes/hadronic/models/radioactive_decay/sources.cmake +++ b/source/processes/hadronic/models/radioactive_decay/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_radioactivedecay # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -15,42 +15,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/lowenergy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/fission/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_radioactivedecay HEADERS G4AlphaDecay.hh diff --git a/source/processes/hadronic/models/radioactive_decay/src/G4Radioactivation.cc b/source/processes/hadronic/models/radioactive_decay/src/G4Radioactivation.cc index 167715a4d5..ca5f33ed3c 100644 --- a/source/processes/hadronic/models/radioactive_decay/src/G4Radioactivation.cc +++ b/source/processes/hadronic/models/radioactive_decay/src/G4Radioactivation.cc @@ -997,7 +997,7 @@ G4Radioactivation::DecayIt(const G4Track& theTrack, const G4Step&) // G4cout << theTrack.GetWeight() <<"\t"< +#include "G4HadronicException.hh" G4RadioactivationMessenger::G4RadioactivationMessenger(G4Radioactivation* theRadioactivationContainer1) :theRadioactivationContainer(theRadioactivationContainer1) { - grdmDirectory = new G4UIdirectory("/grdm/"); - grdmDirectory->SetGuidance("Controls the biased version of radioactive decay"); + old_grdmDirectory = new G4UIdirectory("/grdm/"); // To be removed in G4 11.0 + old_grdmDirectory->SetGuidance("Controls the biased version of radioactive decay"); + + rdmDirectory = new G4UIdirectory("/process/had/rdm/"); + rdmDirectory->SetGuidance("Controls the biased version of radioactive decay"); // Command to turn on/off variance reduction options - analoguemcCmd = new G4UIcmdWithABool ("/grdm/analogueMC",this); + old_analoguemcCmd = new G4UIcmdWithABool("/grdm/analogueMC",this); // To be removed in G4 11.0 + old_analoguemcCmd->SetGuidance("false: variance reduction method; true: analogue method"); + old_analoguemcCmd->SetParameterName("OldAnalogueMC",true); + old_analoguemcCmd->SetDefaultValue(true); + + analoguemcCmd = new G4UIcmdWithABool("/process/had/rdm/analogueMC",this); analoguemcCmd->SetGuidance("false: variance reduction method; true: analogue method"); analoguemcCmd->SetParameterName("AnalogueMC",true); analoguemcCmd->SetDefaultValue(true); - + // Command to use branching ratio biasing or not - brbiasCmd = new G4UIcmdWithABool ("/grdm/BRbias",this); + old_brbiasCmd = new G4UIcmdWithABool("/grdm/BRbias",this); // To be removed in G4 11.0 + old_brbiasCmd->SetGuidance("false: no biasing; true: all branches are treated as equal"); + old_brbiasCmd->SetParameterName("OldBRBias",true); + old_brbiasCmd->SetDefaultValue(true); + + brbiasCmd = new G4UIcmdWithABool("/process/had/rdm/BRbias",this); brbiasCmd->SetGuidance("false: no biasing; true: all branches are treated as equal"); brbiasCmd->SetParameterName("BRBias",true); brbiasCmd->SetDefaultValue(true); - + // Command to set the half-life thresold for isomer production - hlthCmd = new G4UIcmdWithADoubleAndUnit("/grdm/hlThreshold",this); + old_hlthCmd = new G4UIcmdWithADoubleAndUnit("/grdm/hlThreshold",this); // To be removed in G4 11.0 + old_hlthCmd->SetGuidance("Set the h-l threshold for isomer production"); + old_hlthCmd->SetParameterName("OldhlThreshold",false); + old_hlthCmd->SetUnitCategory("Time"); + + hlthCmd = new G4UIcmdWithADoubleAndUnit("/process/had/rdm/hlThreshold",this); hlthCmd->SetGuidance("Set the h-l threshold for isomer production"); hlthCmd->SetParameterName("hlThreshold",false); hlthCmd->SetUnitCategory("Time"); - + // Command to define the incident particle source time profile - sourcetimeprofileCmd = new G4UIcmdWithAString("/grdm/sourceTimeProfile",this); + old_sourcetimeprofileCmd = new G4UIcmdWithAString("/grdm/sourceTimeProfile",this); // To be removed in G4 11.0 + old_sourcetimeprofileCmd->SetGuidance + ("Supply the name of the ascii file containing the source particle time profile"); + old_sourcetimeprofileCmd->SetParameterName("OldSTimeProfile",true); + old_sourcetimeprofileCmd->SetDefaultValue("source.data"); + + sourcetimeprofileCmd = new G4UIcmdWithAString("/process/had/rdm/sourceTimeProfile",this); sourcetimeprofileCmd->SetGuidance ("Supply the name of the ascii file containing the source particle time profile"); sourcetimeprofileCmd->SetParameterName("STimeProfile",true); sourcetimeprofileCmd->SetDefaultValue("source.data"); - + // Command to define the incident particle source time profile - decaybiasprofileCmd = new G4UIcmdWithAString("/grdm/decayBiasProfile",this); + old_decaybiasprofileCmd = new G4UIcmdWithAString("/grdm/decayBiasProfile",this); // To be removed in G4 11.0 + old_decaybiasprofileCmd->SetGuidance + ("Supply the name of the ascii file containing the decay bias time profile"); + old_decaybiasprofileCmd->SetParameterName("OldDBiasProfile",true); + old_decaybiasprofileCmd->SetDefaultValue("bias.data"); + + decaybiasprofileCmd = new G4UIcmdWithAString("/process/had/rdm/decayBiasProfile",this); decaybiasprofileCmd->SetGuidance ("Supply the name of the ascii file containing the decay bias time profile"); decaybiasprofileCmd->SetParameterName("DBiasProfile",true); decaybiasprofileCmd->SetDefaultValue("bias.data"); + + // Command to set nuclei splitting parameter + old_splitnucleiCmd = new G4UIcmdWithAnInteger("/grdm/splitNuclei",this); // To be removed in G4 11.0 + old_splitnucleiCmd->SetGuidance("Set number of splitting for the isotopes."); + old_splitnucleiCmd->SetParameterName("OldNSplit",true); + old_splitnucleiCmd->SetDefaultValue(1); + old_splitnucleiCmd->SetRange("OldNSplit>=1"); - // Command to set nuclei spliting parameter - splitnucleiCmd = new G4UIcmdWithAnInteger("/grdm/splitNuclei",this); - splitnucleiCmd->SetGuidance("Set number of spliting for the isotopes."); + splitnucleiCmd = new G4UIcmdWithAnInteger("/process/had/rdm/splitNuclei",this); + splitnucleiCmd->SetGuidance("Set number of splitting for the isotopes."); splitnucleiCmd->SetParameterName("NSplit",true); splitnucleiCmd->SetDefaultValue(1); splitnucleiCmd->SetRange("NSplit>=1"); @@ -87,35 +124,77 @@ G4RadioactivationMessenger::G4RadioactivationMessenger(G4Radioactivation* theRad G4RadioactivationMessenger::~G4RadioactivationMessenger() { - delete grdmDirectory; + delete old_grdmDirectory; // To be removed in G4 11.0 + delete rdmDirectory; + delete old_analoguemcCmd; // To be removed in G4 11.0 delete analoguemcCmd; + delete old_sourcetimeprofileCmd; // To be removed in G4 11.0 delete sourcetimeprofileCmd; + delete old_decaybiasprofileCmd; // To be removed in G4 11.0 delete decaybiasprofileCmd; + delete old_brbiasCmd; // To be removed in G4 11.0 delete brbiasCmd; + delete old_splitnucleiCmd; // To be removed in G4 11.0 delete splitnucleiCmd; + delete old_hlthCmd; // To be removed in G4 11.0 delete hlthCmd; } void G4RadioactivationMessenger::SetNewValue(G4UIcommand* command, G4String newValues) { - if (command==analoguemcCmd) {theRadioactivationContainer-> - SetAnalogueMonteCarlo(analoguemcCmd->GetNewBoolValue(newValues)); + // Old commands to be removed in G4 11.0 + if ( command == old_analoguemcCmd ) { theRadioactivationContainer-> + SetAnalogueMonteCarlo( old_analoguemcCmd->GetNewBoolValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/analogueMC in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactivationMessenger", "HAD_RDM_871", JustWarning, ed ); + } else if ( command == old_brbiasCmd ) { theRadioactivationContainer-> + SetBRBias( old_brbiasCmd->GetNewBoolValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/BRbias in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactivationMessenger", "HAD_RDM_872", JustWarning, ed ); + } else if ( command == old_sourcetimeprofileCmd ) { theRadioactivationContainer-> + SetSourceTimeProfile( newValues ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/sourceTimeProfile in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactivationMessenger", "HAD_RDM_873", JustWarning, ed ); + } else if ( command == old_decaybiasprofileCmd ) { theRadioactivationContainer-> + SetDecayBias( newValues ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/decayBiasProfile in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactivationMessenger", "HAD_RDM_874", JustWarning, ed ); + } else if ( command == old_splitnucleiCmd ) { theRadioactivationContainer-> + SetSplitNuclei( old_splitnucleiCmd->GetNewIntValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/splitNuclei in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactivationMessenger", "HAD_RDM_875", JustWarning, ed ); + } else if ( command == old_hlthCmd ) { theRadioactivationContainer-> + SetHLThreshold( old_hlthCmd->GetNewDoubleValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/hlThreshold in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactivationMessenger", "HAD_RDM_876", JustWarning, ed ); + } - } else if (command==brbiasCmd) {theRadioactivationContainer-> - SetBRBias(brbiasCmd->GetNewBoolValue(newValues)); - - } else if (command==sourcetimeprofileCmd) {theRadioactivationContainer-> - SetSourceTimeProfile(newValues); - - } else if (command==decaybiasprofileCmd) {theRadioactivationContainer-> - SetDecayBias(newValues); - - } else if (command==splitnucleiCmd) {theRadioactivationContainer-> - SetSplitNuclei(splitnucleiCmd->GetNewIntValue(newValues)); - - } else if (command==hlthCmd ) {theRadioactivationContainer-> - SetHLThreshold(hlthCmd->GetNewDoubleValue(newValues)); + // New commands + if ( command == analoguemcCmd ) { theRadioactivationContainer-> + SetAnalogueMonteCarlo( analoguemcCmd->GetNewBoolValue( newValues ) ); + } else if ( command == brbiasCmd ) { theRadioactivationContainer-> + SetBRBias( brbiasCmd->GetNewBoolValue( newValues ) ); + } else if ( command == sourcetimeprofileCmd ) { theRadioactivationContainer-> + SetSourceTimeProfile( newValues ); + } else if ( command == decaybiasprofileCmd ) { theRadioactivationContainer-> + SetDecayBias( newValues ); + } else if ( command == splitnucleiCmd ) { theRadioactivationContainer-> + SetSplitNuclei( splitnucleiCmd->GetNewIntValue( newValues ) ); + } else if ( command == hlthCmd ) { theRadioactivationContainer-> + SetHLThreshold( hlthCmd->GetNewDoubleValue( newValues ) ); } } diff --git a/source/processes/hadronic/models/radioactive_decay/src/G4RadioactiveDecay.cc b/source/processes/hadronic/models/radioactive_decay/src/G4RadioactiveDecay.cc index e557ba9fbd..adb4f79693 100644 --- a/source/processes/hadronic/models/radioactive_decay/src/G4RadioactiveDecay.cc +++ b/source/processes/hadronic/models/radioactive_decay/src/G4RadioactiveDecay.cc @@ -1974,7 +1974,7 @@ G4RadioactiveDecay::DecayIt(const G4Track& theTrack, const G4Step&) // G4cout << theTrack.GetWeight() << "\t" << weight1 << "\t" << decayRate << G4endl; // Add isotope to the radioactivity tables - // One table for each observation time window specifed in + // One table for each observation time window specified in // SetDecayBias(G4String filename) theRadioactivityTables[decayWindows[nbin-1]] ->AddIsotope(PZ,PA,PE,weight1*decayRate,theTrack.GetWeight()); diff --git a/source/processes/hadronic/models/radioactive_decay/src/G4RadioactiveDecayBaseMessenger.cc b/source/processes/hadronic/models/radioactive_decay/src/G4RadioactiveDecayBaseMessenger.cc index 1da639ebaf..ee7c3947d6 100644 --- a/source/processes/hadronic/models/radioactive_decay/src/G4RadioactiveDecayBaseMessenger.cc +++ b/source/processes/hadronic/models/radioactive_decay/src/G4RadioactiveDecayBaseMessenger.cc @@ -38,6 +38,7 @@ #include "G4RadioactiveDecayBaseMessenger.hh" #include "G4NuclearLevelData.hh" #include +#include "G4HadronicException.hh" G4RadioactiveDecayBaseMessenger::G4RadioactiveDecayBaseMessenger @@ -45,111 +46,170 @@ G4RadioactiveDecayBaseMessenger::G4RadioactiveDecayBaseMessenger :theRadioactiveDecayContainer(theRadioactiveDecayContainer1) { // main directory for control of the RDM - grdmDirectory = new G4UIdirectory("/grdm/"); - grdmDirectory->SetGuidance("Controls for the Radioactive Decay Module."); + old_grdmDirectory = new G4UIdirectory("/grdm/"); // To be removed in G4 11.0 + old_grdmDirectory->SetGuidance("Controls for the Radioactive Decay Module."); + rdmDirectory = new G4UIdirectory("/process/had/rdm/"); + rdmDirectory->SetGuidance("Controls for the Radioactive Decay Module."); + // Command to define the limits on nucleus the RDM will treat. - nucleuslimitsCmd = new - G4UIcmdWithNucleusLimits("/grdm/nucleusLimits",this); - nucleuslimitsCmd->SetGuidance - ("Set the atomic weight and number limits for the RDM."); - nucleuslimitsCmd->SetParameterName("aMin","aMax","zMin","zMax",true); + old_nucleuslimitsCmd = new G4UIcmdWithNucleusLimits("/grdm/nucleusLimits",this); // To be removed in G4 11.0 + old_nucleuslimitsCmd->SetGuidance("Set the atomic weight and number limits for the RDM."); + old_nucleuslimitsCmd->SetParameterName("OldAMin","OldAMax","OldZMin","OldZMax",true); + nucleuslimitsCmd = new G4UIcmdWithNucleusLimits("/process/had/rdm/nucleusLimits",this); + nucleuslimitsCmd->SetGuidance("Set the atomic weight and number limits for the RDM."); + nucleuslimitsCmd->SetParameterName("AMin","AMax","ZMin","ZMax",true); + // Select a logical volume for RDM - avolumeCmd = new - G4UIcmdWithAString("/grdm/selectVolume",this); - avolumeCmd->SetGuidance - ("Suppply a logical volumes name to add it to the RDM apply list"); - avolumeCmd->SetParameterName("aVolume",false); + old_avolumeCmd = new G4UIcmdWithAString("/grdm/selectVolume",this); // To be removed in G4 11.0 + old_avolumeCmd->SetGuidance("Supply a logical volumes name to add it to the RDM apply list"); + old_avolumeCmd->SetParameterName("OldAVolume",false); + avolumeCmd = new G4UIcmdWithAString("/process/had/rdm/selectVolume",this); + avolumeCmd->SetGuidance("Supply a logical volumes name to add it to the RDM apply list"); + avolumeCmd->SetParameterName("AVolume",false); + // De-select a logical volume for RDM - deavolumeCmd = new - G4UIcmdWithAString("/grdm/deselectVolume",this); - deavolumeCmd->SetGuidance - ("Suppply a logical volumes name to remove it from the RDM apply list"); - deavolumeCmd->SetParameterName("aVolume",false); + old_deavolumeCmd = new G4UIcmdWithAString("/grdm/deselectVolume",this); // To be removed in G4 11.0 + old_deavolumeCmd->SetGuidance("Supply a logical volumes name to remove it from the RDM apply list"); + old_deavolumeCmd->SetParameterName("OldAVolume",false); + deavolumeCmd = new G4UIcmdWithAString("/process/had/rdm/deselectVolume",this); + deavolumeCmd->SetGuidance("Supply a logical volumes name to remove it from the RDM apply list"); + deavolumeCmd->SetParameterName("AVolume",false); + // Select all logical volumes for RDM - allvolumesCmd = new - G4UIcmdWithoutParameter("/grdm/allVolumes",this); - allvolumesCmd->SetGuidance - (" apply RDM to all logical volumes. No parameter required."); - // allvolumeCmd->SetParameterName("AddAVolume",true); + old_allvolumesCmd = new G4UIcmdWithoutParameter("/grdm/allVolumes",this); // To be removed in G4 11.0 + old_allvolumesCmd->SetGuidance(" apply RDM to all logical volumes. No parameter required."); + // old_allvolumeCmd->SetParameterName("OldAddAVolume",true); + allvolumesCmd = new G4UIcmdWithoutParameter("/process/had/rdm/allVolumes",this); + allvolumesCmd->SetGuidance(" apply RDM to all logical volumes. No parameter required."); + // allvolumeCmd->SetParameterName("AddAVolume",true); + // De-select all logical volumes for RDM - deallvolumesCmd = new - G4UIcmdWithoutParameter("/grdm/noVolumes",this); - deallvolumesCmd->SetGuidance - (" RDM is not applied to any logical volumes"); - // deallvolumesCmd->SetParameterName("RemoveAVolume",true);z + old_deallvolumesCmd = new G4UIcmdWithoutParameter("/grdm/noVolumes",this); // To be removed in G4 11.0 + old_deallvolumesCmd->SetGuidance(" RDM is not applied to any logical volumes"); + // old_deallvolumesCmd->SetParameterName("OldRemoveAVolume",true); + + deallvolumesCmd = new G4UIcmdWithoutParameter("/process/had/rdm/noVolumes",this); + deallvolumesCmd->SetGuidance(" RDM is not applied to any logical volumes"); + // deallvolumesCmd->SetParameterName("RemoveAVolume",true); // Command to invoke internal conversion or not - icmCmd = new G4UIcmdWithABool ("/grdm/applyICM",this); + old_icmCmd = new G4UIcmdWithABool("/grdm/applyICM",this); // To be removed in G4 11.0 + old_icmCmd->SetGuidance("Command not active; kept for backward compatibility."); + old_icmCmd->SetGuidance("Internal conversion is always turned on."); + old_icmCmd->SetParameterName("OldApplyICM",true); + old_icmCmd->SetDefaultValue(true); + + icmCmd = new G4UIcmdWithABool("/process/had/rdm/applyICM",this); icmCmd->SetGuidance("Command not active; kept for backward compatibility."); icmCmd->SetGuidance("Internal conversion is always turned on."); - icmCmd->SetParameterName("applyICM",true); + icmCmd->SetParameterName("ApplyICM",true); icmCmd->SetDefaultValue(true); - + // Command to invoke atomic relaxation or not - armCmd = new G4UIcmdWithABool ("/grdm/applyARM",this); + old_armCmd = new G4UIcmdWithABool("/grdm/applyARM",this); // To be removed in G4 11.0 + old_armCmd->SetGuidance("True: ARM is applied; false: no"); + old_armCmd->SetParameterName("OldApplyARM",true); + old_armCmd->SetDefaultValue(true); + //old_armCmd->AvailableForStates(G4State_PreInit); + + armCmd = new G4UIcmdWithABool("/process/had/rdm/applyARM",this); armCmd->SetGuidance("True: ARM is applied; false: no"); - armCmd->SetParameterName("applyARM",true); + armCmd->SetParameterName("ApplyARM",true); armCmd->SetDefaultValue(true); //armCmd->AvailableForStates(G4State_PreInit); - + // Command to set the directional bias (collimation) vector - colldirCmd = new G4UIcmdWith3Vector("/grdm/decayDirection",this); + old_colldirCmd = new G4UIcmdWith3Vector("/grdm/decayDirection",this); // To be removed in G4 11.0 + old_colldirCmd->SetGuidance("Supply the direction vector for decay products"); + old_colldirCmd->SetParameterName("OldX","OldY","OldZ",false); + + colldirCmd = new G4UIcmdWith3Vector("/process/had/rdm/decayDirection",this); colldirCmd->SetGuidance("Supply the direction vector for decay products"); colldirCmd->SetParameterName("X","Y","Z",false); - + // Command to set the directional bias (collimation) half angle ("cone") - collangleCmd = new G4UIcmdWithADoubleAndUnit("/grdm/decayHalfAngle",this); - collangleCmd->SetGuidance - ("Supply maximum angle from direction vector for decay products"); - collangleCmd->SetParameterName("halfAngle",false); - collangleCmd->SetUnitCategory("Angle"); + old_collangleCmd = new G4UIcmdWithADoubleAndUnit("/grdm/decayHalfAngle",this); // To be removed in G4 11.0 + old_collangleCmd->SetGuidance("Supply maximum angle from direction vector for decay products"); + old_collangleCmd->SetParameterName("OldHalfAngle",false); + old_collangleCmd->SetUnitCategory("Angle"); + collangleCmd = new G4UIcmdWithADoubleAndUnit("/process/had/rdm/decayHalfAngle",this); + collangleCmd->SetGuidance("Supply maximum angle from direction vector for decay products"); + collangleCmd->SetParameterName("HalfAngle",false); + collangleCmd->SetUnitCategory("Angle"); + // This command setup the verbose level of radioactive decay - verboseCmd = new G4UIcmdWithAnInteger("/grdm/verbose",this); + old_verboseCmd = new G4UIcmdWithAnInteger("/grdm/verbose",this); // To be removed in G4 11.0 + old_verboseCmd->SetGuidance("Set verbose level: 0, 1, 2 or 3"); + old_verboseCmd->SetParameterName("OldVerboseLevel",true); + old_verboseCmd->SetDefaultValue(1); + old_verboseCmd->SetRange("OldVerboseLevel>=0"); + + verboseCmd = new G4UIcmdWithAnInteger("/process/had/rdm/verbose",this); verboseCmd->SetGuidance("Set verbose level: 0, 1, 2 or 3"); verboseCmd->SetParameterName("VerboseLevel",true); verboseCmd->SetDefaultValue(1); verboseCmd->SetRange("VerboseLevel>=0"); - + // Use a user-defined decay datafile for a given isotope - userDecayDataCmd = new G4UIcommand("/grdm/setRadioactiveDecayFile",this); + old_userDecayDataCmd = new G4UIcommand("/grdm/setRadioactiveDecayFile",this); // To be removed in G4 11.0 + old_userDecayDataCmd->SetGuidance("Supply user-defined radioactive decay data file"); + G4UIparameter* old_Z_para= new G4UIparameter("Z_isotope",'i',true); + old_Z_para->SetParameterRange("Z_isotope > 0"); + old_Z_para->SetGuidance("Z: Charge number of isotope"); + G4UIparameter* old_A_para= new G4UIparameter("A_isotope",'i',true); + old_A_para->SetParameterRange("A_isotope > 1"); + old_A_para->SetGuidance("A: mass number of isotope"); + G4UIparameter* old_FileName_para= new G4UIparameter("file_name",'s',true); + old_FileName_para->SetGuidance("Name of the user data file"); + old_userDecayDataCmd->SetParameter(old_Z_para); + old_userDecayDataCmd->SetParameter(old_A_para); + old_userDecayDataCmd->SetParameter(old_FileName_para); + + userDecayDataCmd = new G4UIcommand("/process/had/rdm/setRadioactiveDecayFile",this); userDecayDataCmd->SetGuidance("Supply user-defined radioactive decay data file"); - - G4UIparameter* Z_para= new G4UIparameter("Z_isotope",'i',true); + G4UIparameter* Z_para= new G4UIparameter("Z_isotope",'i',true); Z_para->SetParameterRange("Z_isotope > 0"); Z_para->SetGuidance("Z: Charge number of isotope"); - - G4UIparameter* A_para= new G4UIparameter("A_isotope",'i',true); + G4UIparameter* A_para= new G4UIparameter("A_isotope",'i',true); A_para->SetParameterRange("A_isotope > 1"); A_para->SetGuidance("A: mass number of isotope"); - - G4UIparameter* FileName_para= new G4UIparameter("file_name",'s',true); + G4UIparameter* FileName_para= new G4UIparameter("file_name",'s',true); FileName_para->SetGuidance("Name of the user data file"); - userDecayDataCmd->SetParameter(Z_para); userDecayDataCmd->SetParameter(A_para); userDecayDataCmd->SetParameter(FileName_para); - + // Use a user-defined evaporation data file for a given isotope - userEvaporationDataCmd = new G4UIcommand("/grdm/setPhotoEvaporationFile",this); - userEvaporationDataCmd->SetGuidance("Supply user-defined photon evaporation data file"); - + old_userEvaporationDataCmd = new G4UIcommand("/grdm/setPhotoEvaporationFile",this); // To be removed in G4 11.0 + old_userEvaporationDataCmd->SetGuidance("Supply user-defined photon evaporation data file"); + G4UIparameter* old_Zpara= new G4UIparameter("Z_isotope",'i',true); + old_Zpara->SetParameterRange("Z_isotope > 0"); + old_Zpara->SetGuidance("Z: Charge number of isotope"); + G4UIparameter* old_Apara= new G4UIparameter("A_isotope",'i',true); + old_Apara->SetParameterRange("A_isotope > 1"); + old_Apara->SetGuidance("A: mass number of isotope"); + G4UIparameter* old_FileNamepara= new G4UIparameter("file_name",'s',true); + old_FileNamepara->SetGuidance("Name of the user data file"); + old_userEvaporationDataCmd->SetParameter(old_Zpara); + old_userEvaporationDataCmd->SetParameter(old_Apara); + old_userEvaporationDataCmd->SetParameter(old_FileNamepara); + + userEvaporationDataCmd = new G4UIcommand("/process/had/rdm/setPhotoEvaporationFile",this); + userEvaporationDataCmd->SetGuidance("Supply user-defined photon evaporation data file"); G4UIparameter* Zpara= new G4UIparameter("Z_isotope",'i',true); Zpara->SetParameterRange("Z_isotope > 0"); Zpara->SetGuidance("Z: Charge number of isotope"); - G4UIparameter* Apara= new G4UIparameter("A_isotope",'i',true); Apara->SetParameterRange("A_isotope > 1"); Apara->SetGuidance("A: mass number of isotope"); - G4UIparameter* FileNamepara= new G4UIparameter("file_name",'s',true); FileNamepara->SetGuidance("Name of the user data file"); - userEvaporationDataCmd->SetParameter(Zpara); userEvaporationDataCmd->SetParameter(Apara); userEvaporationDataCmd->SetParameter(FileNamepara); @@ -158,76 +218,160 @@ G4RadioactiveDecayBaseMessenger::G4RadioactiveDecayBaseMessenger G4RadioactiveDecayBaseMessenger::~G4RadioactiveDecayBaseMessenger () { - delete grdmDirectory; - delete nucleuslimitsCmd; - delete verboseCmd; - delete avolumeCmd; - delete deavolumeCmd; - delete allvolumesCmd; - delete deallvolumesCmd; - delete icmCmd; - delete armCmd; - delete userDecayDataCmd; - delete userEvaporationDataCmd; - delete colldirCmd; - delete collangleCmd; + delete old_grdmDirectory; // To be removed in G4 11.0 + delete rdmDirectory; + delete old_nucleuslimitsCmd; // To be removed in G4 11.0 + delete nucleuslimitsCmd; + delete old_verboseCmd; // To be removed in G4 11.0 + delete verboseCmd; + delete old_avolumeCmd; // To be removed in G4 11.0 + delete avolumeCmd; + delete old_deavolumeCmd; // To be removed in G4 11.0 + delete deavolumeCmd; + delete old_allvolumesCmd; // To be removed in G4 11.0 + delete allvolumesCmd; + delete old_deallvolumesCmd; // To be removed in G4 11.0 + delete deallvolumesCmd; + delete old_icmCmd; // To be removed in G4 11.0 + delete icmCmd; + delete old_armCmd; // To be removed in G4 11.0 + delete armCmd; + delete old_userDecayDataCmd; // To be removed in G4 11.0 + delete userDecayDataCmd; //<--- + delete old_userEvaporationDataCmd; // To be removed in G4 11.0 + delete userEvaporationDataCmd; + delete old_colldirCmd; // To be removed in G4 11.0 + delete colldirCmd; + delete old_collangleCmd; // To be removed in G4 11.0 + delete collangleCmd; } void G4RadioactiveDecayBaseMessenger::SetNewValue(G4UIcommand *command, G4String newValues) { - if (command == nucleuslimitsCmd) { + // Old commands to be removed in G4 11.0 + if ( command == old_nucleuslimitsCmd ) { theRadioactiveDecayContainer-> - SetNucleusLimits(nucleuslimitsCmd->GetNewNucleusLimitsValue(newValues)); - - } else if (command == avolumeCmd) { - theRadioactiveDecayContainer->SelectAVolume(newValues); - - } else if (command == deavolumeCmd) { - theRadioactiveDecayContainer->DeselectAVolume(newValues); - - } else if (command == allvolumesCmd) { + SetNucleusLimits( old_nucleuslimitsCmd->GetNewNucleusLimitsValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/nucleusLimits in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecayBaseMessenger", "HAD_RDM_671", JustWarning, ed ); + } else if ( command == old_avolumeCmd ) { + theRadioactiveDecayContainer->SelectAVolume( newValues ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/selectVolume in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecayBaseMessenger", "HAD_RDM_672", JustWarning, ed ); + } else if ( command == old_deavolumeCmd ) { + theRadioactiveDecayContainer->DeselectAVolume( newValues ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/deselectVolume in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecayBaseMessenger", "HAD_RDM_673", JustWarning, ed ); + } else if ( command == old_allvolumesCmd ) { theRadioactiveDecayContainer->SelectAllVolumes(); - - } else if (command == deallvolumesCmd) { + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/allVolumes in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecayBaseMessenger", "HAD_RDM_674", JustWarning, ed ); + } else if ( command == old_deallvolumesCmd ) { theRadioactiveDecayContainer->DeselectAllVolumes(); - - } else if (command == verboseCmd) { - theRadioactiveDecayContainer-> - SetVerboseLevel(verboseCmd->GetNewIntValue(newValues)); - - } else if (command == icmCmd) { - theRadioactiveDecayContainer-> - SetICM(icmCmd->GetNewBoolValue(newValues)); - - } else if (command == armCmd) { - theRadioactiveDecayContainer-> - SetARM(armCmd->GetNewBoolValue(newValues)); - - } else if (command == userDecayDataCmd) { + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/noVolumes in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecayBaseMessenger", "HAD_RDM_675", JustWarning, ed ); + } else if ( command == old_verboseCmd ) { + theRadioactiveDecayContainer->SetVerboseLevel( old_verboseCmd->GetNewIntValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/verbose in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecayBaseMessenger", "HAD_RDM_676", JustWarning, ed ); + } else if ( command == old_icmCmd ) { + theRadioactiveDecayContainer->SetICM( old_icmCmd->GetNewBoolValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/applyICM in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecayBaseMessenger", "HAD_RDM_677", JustWarning, ed ); + } else if ( command == old_armCmd ) { + theRadioactiveDecayContainer->SetARM( old_armCmd->GetNewBoolValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/applyARM in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecayBaseMessenger", "HAD_RDM_678", JustWarning, ed ); + } else if ( command == old_userDecayDataCmd ) { G4int Z,A; G4String file_name; const char* nv = (const char*)newValues; std::istringstream is(nv); is >> Z >> A >> file_name; theRadioactiveDecayContainer->AddUserDecayDataFile(Z,A,file_name); - - } else if (command == userEvaporationDataCmd) { + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/setRadioactiveDecayFile in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecayBaseMessenger", "HAD_RDM_679", JustWarning, ed ); + } else if ( command == old_userEvaporationDataCmd ) { G4int Z,A; G4String file_name; const char* nv = (const char*)newValues; std::istringstream is(nv); is >> Z >> A >> file_name; G4NuclearLevelData::GetInstance()->AddPrivateData(Z,A,file_name); - - } else if (command == colldirCmd) { - theRadioactiveDecayContainer-> - SetDecayDirection(colldirCmd->GetNew3VectorValue(newValues)); - - } else if (command == collangleCmd) { - theRadioactiveDecayContainer-> - SetDecayHalfAngle(collangleCmd->GetNewDoubleValue(newValues)); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/setPhotoEvaporationFile in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecayBaseMessenger", "HAD_RDM_680", JustWarning, ed ); + } else if ( command == old_colldirCmd ) { + theRadioactiveDecayContainer->SetDecayDirection( old_colldirCmd->GetNew3VectorValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/decayDirection in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecayBaseMessenger", "HAD_RDM_681", JustWarning, ed ); + } else if ( command == old_collangleCmd ) { + theRadioactiveDecayContainer->SetDecayHalfAngle( old_collangleCmd->GetNewDoubleValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/decayHalfAngle in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecayBaseMessenger", "HAD_RDM_682", JustWarning, ed ); } + + // New commands + if ( command == nucleuslimitsCmd ) { + theRadioactiveDecayContainer-> + SetNucleusLimits( nucleuslimitsCmd->GetNewNucleusLimitsValue( newValues ) ); + } else if ( command == avolumeCmd ) { + theRadioactiveDecayContainer->SelectAVolume( newValues ); + } else if ( command == deavolumeCmd ) { + theRadioactiveDecayContainer->DeselectAVolume( newValues ); + } else if ( command == allvolumesCmd ) { + theRadioactiveDecayContainer->SelectAllVolumes(); + } else if ( command == deallvolumesCmd ) { + theRadioactiveDecayContainer->DeselectAllVolumes(); + } else if ( command == verboseCmd ) { + theRadioactiveDecayContainer->SetVerboseLevel( verboseCmd->GetNewIntValue( newValues ) ); + } else if ( command == icmCmd ) { + theRadioactiveDecayContainer->SetICM( icmCmd->GetNewBoolValue( newValues ) ); + } else if ( command == armCmd ) { + theRadioactiveDecayContainer->SetARM( armCmd->GetNewBoolValue( newValues ) ); + } else if ( command == userDecayDataCmd ) { + G4int Z,A; + G4String file_name; + const char* nv = (const char*)newValues; + std::istringstream is(nv); + is >> Z >> A >> file_name; + theRadioactiveDecayContainer->AddUserDecayDataFile(Z,A,file_name); + } else if ( command == userEvaporationDataCmd ) { + G4int Z,A; + G4String file_name; + const char* nv = (const char*)newValues; + std::istringstream is(nv); + is >> Z >> A >> file_name; + G4NuclearLevelData::GetInstance()->AddPrivateData(Z,A,file_name); + } else if ( command == colldirCmd ) { + theRadioactiveDecayContainer->SetDecayDirection( colldirCmd->GetNew3VectorValue( newValues ) ); + } else if ( command == collangleCmd ) { + theRadioactiveDecayContainer->SetDecayHalfAngle( collangleCmd->GetNewDoubleValue( newValues ) ); + } } diff --git a/source/processes/hadronic/models/radioactive_decay/src/G4RadioactiveDecaymessenger.cc b/source/processes/hadronic/models/radioactive_decay/src/G4RadioactiveDecaymessenger.cc index efc79bf87d..d0142ac329 100644 --- a/source/processes/hadronic/models/radioactive_decay/src/G4RadioactiveDecaymessenger.cc +++ b/source/processes/hadronic/models/radioactive_decay/src/G4RadioactiveDecaymessenger.cc @@ -26,8 +26,8 @@ #include "G4RadioactiveDecaymessenger.hh" #include "G4NuclearLevelData.hh" - #include +#include "G4HadronicException.hh" G4RadioactiveDecaymessenger::G4RadioactiveDecaymessenger @@ -35,281 +35,487 @@ G4RadioactiveDecaymessenger::G4RadioactiveDecaymessenger :theRadioactiveDecayContainer(theRadioactiveDecayContainer1) { // main directory for control of the RDM - grdmDirectory = new G4UIdirectory("/grdm/"); - grdmDirectory->SetGuidance("Controls for the Radioactive Decay Module."); + old_grdmDirectory = new G4UIdirectory("/grdm/"); // To be removed in G4 11.0 + old_grdmDirectory->SetGuidance("Controls for the Radioactive Decay Module."); + rdmDirectory = new G4UIdirectory("/process/had/rdm/"); + rdmDirectory->SetGuidance("Controls for the Radioactive Decay Module."); + // Command to define the limits on nucleus the RDM will treat. - nucleuslimitsCmd = new - G4UIcmdWithNucleusLimits("/grdm/nucleusLimits",this); - nucleuslimitsCmd->SetGuidance - ("Set the atomic weight and number limits for the RDM."); - nucleuslimitsCmd->SetParameterName("aMin","aMax","zMin","zMax",true); + old_nucleuslimitsCmd = new G4UIcmdWithNucleusLimits("/grdm/nucleusLimits",this); // To be removed in G4 11.0 + old_nucleuslimitsCmd->SetGuidance("Set the atomic weight and number limits for the RDM."); + old_nucleuslimitsCmd->SetParameterName("OldAMin","OldAMax","OldZMin","OldZMax",true); + nucleuslimitsCmd = new G4UIcmdWithNucleusLimits("/process/had/rdm/nucleusLimits",this); + nucleuslimitsCmd->SetGuidance("Set the atomic weight and number limits for the RDM."); + nucleuslimitsCmd->SetParameterName("AMin","AMax","ZMin","ZMax",true); + // The next command contols whether the decay will be treated analoguely or // with variance reduction - analoguemcCmd = new G4UIcmdWithABool ("/grdm/analogueMC",this); + old_analoguemcCmd = new G4UIcmdWithABool("/grdm/analogueMC",this); // To be removed in G4 11.0 + old_analoguemcCmd->SetGuidance("false: variance reduction method; true: analogue method"); + old_analoguemcCmd->SetParameterName("OldAnalogueMC",true); + old_analoguemcCmd->SetDefaultValue(true); + + analoguemcCmd = new G4UIcmdWithABool("/process/had/rdm/analogueMC",this); analoguemcCmd->SetGuidance("false: variance reduction method; true: analogue method"); analoguemcCmd->SetParameterName("AnalogueMC",true); analoguemcCmd->SetDefaultValue(true); - // - // The next command contols whether beta decay will be treated faithfully or - // in fast mode - // - fbetaCmd = new G4UIcmdWithABool ("/grdm/fBeta",this); - fbetaCmd->SetGuidance("false: use 3-body decay, true: use histogram method"); - fbetaCmd->SetParameterName("fBeta",true); - fbetaCmd->SetDefaultValue(false); + + // The next command contols whether beta decay will be treated faithfully or in fast mode + old_fbetaCmd = new G4UIcmdWithABool("/grdm/fBeta",this); // To be removed in G4 11.0 + old_fbetaCmd->SetGuidance("false: use 3-body decay, true: use histogram method"); + old_fbetaCmd->SetParameterName("OldFBeta",true); + old_fbetaCmd->SetDefaultValue(false); - // - // + fbetaCmd = new G4UIcmdWithABool("/process/had/rdm/fBeta",this); + fbetaCmd->SetGuidance("false: use 3-body decay, true: use histogram method"); + fbetaCmd->SetParameterName("FBeta",true); + fbetaCmd->SetDefaultValue(false); + // Command to selete a logical volume for RDM. - // - avolumeCmd = new - G4UIcmdWithAString("/grdm/selectVolume",this); - avolumeCmd->SetGuidance - ("Suppply a logical volumes name to add it to the RDM apply list"); - avolumeCmd->SetParameterName("aVolume",false); - // - // - // + old_avolumeCmd = new G4UIcmdWithAString("/grdm/selectVolume",this); // To be removed in G4 11.0 + old_avolumeCmd->SetGuidance("Supply a logical volumes name to add it to the RDM apply list"); + old_avolumeCmd->SetParameterName("OldAVolume",false); + + avolumeCmd = new G4UIcmdWithAString("/process/had/rdm/selectVolume",this); + avolumeCmd->SetGuidance("Supply a logical volumes name to add it to the RDM apply list"); + avolumeCmd->SetParameterName("AVolume",false); + // Command to de-selete a logical volume for RDM. - // - deavolumeCmd = new - G4UIcmdWithAString("/grdm/deselectVolume",this); - deavolumeCmd->SetGuidance - ("Suppply a logical volumes name to remove it from the RDM apply list"); - deavolumeCmd->SetParameterName("aVolume",false); - // - // + old_deavolumeCmd = new G4UIcmdWithAString("/grdm/deselectVolume",this); // To be removed in G4 11.0 + old_deavolumeCmd->SetGuidance("Supply a logical volumes name to remove it from the RDM apply list"); + old_deavolumeCmd->SetParameterName("OldAVolume",false); + + deavolumeCmd = new G4UIcmdWithAString("/process/had/rdm/deselectVolume",this); + deavolumeCmd->SetGuidance("Supply a logical volumes name to remove it from the RDM apply list"); + deavolumeCmd->SetParameterName("AVolume",false); + // Command to selete all logical volumes for RDM. - // - allvolumesCmd = new - G4UIcmdWithoutParameter("/grdm/allVolumes",this); - allvolumesCmd->SetGuidance - (" apply RDM to all logical volumes. No parameter required."); + old_allvolumesCmd = new G4UIcmdWithoutParameter("/grdm/allVolumes",this); // To be removed in G4 11.0 + old_allvolumesCmd->SetGuidance(" apply RDM to all logical volumes. No parameter required."); + // old_allvolumeCmd->SetParameterName("OldAddAVolume",true); + + allvolumesCmd = new G4UIcmdWithoutParameter("/process/had/rdm/allVolumes",this); + allvolumesCmd->SetGuidance(" apply RDM to all logical volumes. No parameter required."); // allvolumeCmd->SetParameterName("AddAVolume",true); - // // Command to de-selete a logical volume for RDM. - // - deallvolumesCmd = new - G4UIcmdWithoutParameter("/grdm/noVolumes",this); - deallvolumesCmd->SetGuidance - (" RDM is not applied to any logical volumes"); + old_deallvolumesCmd = new G4UIcmdWithoutParameter("/grdm/noVolumes",this); // To be removed in G4 11.0 + old_deallvolumesCmd->SetGuidance(" RDM is not applied to any logical volumes"); + // old_deallvolumesCmd->SetParameterName("OldRemoveAVolume",true); + deallvolumesCmd = new G4UIcmdWithoutParameter("/process/had/rdm/noVolumes",this); + deallvolumesCmd->SetGuidance(" RDM is not applied to any logical volumes"); // deallvolumesCmd->SetParameterName("RemoveAVolume",true); - // + // The next command contols whether the branching ratio biasing will be applied or not - // - brbiasCmd = new G4UIcmdWithABool ("/grdm/BRbias",this); + old_brbiasCmd = new G4UIcmdWithABool("/grdm/BRbias",this); // To be removed in G4 11.0 + old_brbiasCmd->SetGuidance("false: no biasing; true: all branches are treated as equal"); + old_brbiasCmd->SetParameterName("OldBRBias",true); + old_brbiasCmd->SetDefaultValue(true); + + brbiasCmd = new G4UIcmdWithABool("/process/had/rdm/BRbias",this); brbiasCmd->SetGuidance("false: no biasing; true: all branches are treated as equal"); brbiasCmd->SetParameterName("BRBias",true); brbiasCmd->SetDefaultValue(true); - // - // Command contols whether ICM will be applied or not - // - icmCmd = new G4UIcmdWithABool ("/grdm/applyICM",this); + + // Command controls whether ICM will be applied or not + old_icmCmd = new G4UIcmdWithABool("/grdm/applyICM",this); // To be removed in G4 11.0 + old_icmCmd->SetGuidance("True: ICM is applied; false: no"); + old_icmCmd->SetParameterName("OldApplyICM",true); + old_icmCmd->SetDefaultValue(true); + + icmCmd = new G4UIcmdWithABool("/process/had/rdm/applyICM",this); icmCmd->SetGuidance("True: ICM is applied; false: no"); - icmCmd->SetParameterName("applyICM",true); + icmCmd->SetParameterName("ApplyICM",true); icmCmd->SetDefaultValue(true); - // + // Command contols whether ARM will be applied or not - // - armCmd = new G4UIcmdWithABool ("/grdm/applyARM",this); + old_armCmd = new G4UIcmdWithABool("/grdm/applyARM",this); // To be removed in G4 11.0 + old_armCmd->SetGuidance("True: ARM is applied; false: no"); + old_armCmd->SetParameterName("OldApplyARM",true); + old_armCmd->SetDefaultValue(true); + // old_armCmd->AvailableForStates(G4State_PreInit); + + armCmd = new G4UIcmdWithABool("/process/had/rdm/applyARM",this); armCmd->SetGuidance("True: ARM is applied; false: no"); - armCmd->SetParameterName("applyARM",true); + armCmd->SetParameterName("ApplyARM",true); armCmd->SetDefaultValue(true); - //armCmd->AvailableForStates(G4State_PreInit); - // + // armCmd->AvailableForStates(G4State_PreInit); + // Command to set the h-l thresold for isomer production - // - hlthCmd = new G4UIcmdWithADoubleAndUnit("/grdm/hlThreshold",this); + old_hlthCmd = new G4UIcmdWithADoubleAndUnit("/grdm/hlThreshold",this); // To be removed in G4 11.0 + old_hlthCmd->SetGuidance("Set the h-l threshold for isomer production"); + old_hlthCmd->SetParameterName("OldHlThreshold",false); + // old_hlthCmd->SetRange("OldHlThreshold>0."); + old_hlthCmd->SetUnitCategory("Time"); + // old_hlthCmd->AvailableForStates(G4State_PreInit); + + hlthCmd = new G4UIcmdWithADoubleAndUnit("/process/had/rdm/hlThreshold",this); hlthCmd->SetGuidance("Set the h-l threshold for isomer production"); - hlthCmd->SetParameterName("hlThreshold",false); - // hlthCmd->SetRange("hlThreshold>0."); + hlthCmd->SetParameterName("HlThreshold",false); + // hlthCmd->SetRange("HlThreshold>0."); hlthCmd->SetUnitCategory("Time"); // hlthCmd->AvailableForStates(G4State_PreInit); - // + // Command to define the incident particle source time profile. - // - sourcetimeprofileCmd = new - G4UIcmdWithAString("/grdm/sourceTimeProfile",this); + old_sourcetimeprofileCmd = new G4UIcmdWithAString("/grdm/sourceTimeProfile",this); // To be removed in G4 11.0 + old_sourcetimeprofileCmd->SetGuidance + ("Supply the name of the ascii file containing the source particle time profile"); + old_sourcetimeprofileCmd->SetParameterName("OldSTimeProfile",true); + old_sourcetimeprofileCmd->SetDefaultValue("source.data"); + + sourcetimeprofileCmd = new G4UIcmdWithAString("/process/had/rdm/sourceTimeProfile",this); sourcetimeprofileCmd->SetGuidance ("Supply the name of the ascii file containing the source particle time profile"); sourcetimeprofileCmd->SetParameterName("STimeProfile",true); sourcetimeprofileCmd->SetDefaultValue("source.data"); - // - // + // Command to define the incident particle source time profile. - // - decaybiasprofileCmd = new - G4UIcmdWithAString("/grdm/decayBiasProfile",this); + old_decaybiasprofileCmd = new G4UIcmdWithAString("/grdm/decayBiasProfile",this); // To be removed in G4 11.0 + old_decaybiasprofileCmd->SetGuidance + ("Supply the name of the ascii file containing the decay bias time profile"); + old_decaybiasprofileCmd->SetParameterName("OldDBiasProfile",true); + old_decaybiasprofileCmd->SetDefaultValue("bias.data"); + + decaybiasprofileCmd = new G4UIcmdWithAString("/process/had/rdm/decayBiasProfile",this); decaybiasprofileCmd->SetGuidance ("Supply the name of the ascii file containing the decay bias time profile"); decaybiasprofileCmd->SetParameterName("DBiasProfile",true); decaybiasprofileCmd->SetDefaultValue("bias.data"); - - // + // Command to set the directional bias (collimation) vector - // - colldirCmd = new G4UIcmdWith3Vector("/grdm/decayDirection",this); + old_colldirCmd = new G4UIcmdWith3Vector("/grdm/decayDirection",this); // To be removed in G4 11.0 + old_colldirCmd->SetGuidance("Supply the direction vector for decay products"); + old_colldirCmd->SetParameterName("OldX","OldY","OldZ",false); + + colldirCmd = new G4UIcmdWith3Vector("/process/had/rdm/decayDirection",this); colldirCmd->SetGuidance("Supply the direction vector for decay products"); colldirCmd->SetParameterName("X","Y","Z",false); - - // + // Command to set the directional bias (collimation) half angle ("cone") - // - collangleCmd = new G4UIcmdWithADoubleAndUnit("/grdm/decayHalfAngle",this); - collangleCmd->SetGuidance - ("Supply maximum angle from direction vector for decay products"); - collangleCmd->SetParameterName("halfAngle",false); - collangleCmd->SetUnitCategory("Angle"); + old_collangleCmd = new G4UIcmdWithADoubleAndUnit("/grdm/decayHalfAngle",this); // To be removed in G4 11.0 + old_collangleCmd->SetGuidance("Supply maximum angle from direction vector for decay products"); + old_collangleCmd->SetParameterName("OldHalfAngle",false); + old_collangleCmd->SetUnitCategory("Angle"); - // + collangleCmd = new G4UIcmdWithADoubleAndUnit("/process/had/rdm/decayHalfAngle",this); + collangleCmd->SetGuidance("Supply maximum angle from direction vector for decay products"); + collangleCmd->SetParameterName("HalfAngle",false); + collangleCmd->SetUnitCategory("Angle"); + // This command setup the nuclei spliting parameter - // - splitnucleiCmd = new G4UIcmdWithAnInteger("/grdm/splitNuclei",this); + old_splitnucleiCmd = new G4UIcmdWithAnInteger("/grdm/splitNuclei",this); // To be removed in G4 11.0 + old_splitnucleiCmd->SetGuidance("Set number of spliting for the isotopes."); + old_splitnucleiCmd->SetParameterName("OldNSplit",true); + old_splitnucleiCmd->SetDefaultValue(1); + old_splitnucleiCmd->SetRange("OldNSplit>=1"); + + splitnucleiCmd = new G4UIcmdWithAnInteger("/process/had/rdm/splitNuclei",this); splitnucleiCmd->SetGuidance("Set number of spliting for the isotopes."); splitnucleiCmd->SetParameterName("NSplit",true); splitnucleiCmd->SetDefaultValue(1); splitnucleiCmd->SetRange("NSplit>=1"); - // // This command setup the verbose level of radioactive decay - // - verboseCmd = new G4UIcmdWithAnInteger("/grdm/verbose",this); + old_verboseCmd = new G4UIcmdWithAnInteger("/grdm/verbose",this); // To be removed in G4 11.0 + old_verboseCmd->SetGuidance("Set verbose level: 0, 1, 2 or 3"); + old_verboseCmd->SetParameterName("OldVerboseLevel",true); + old_verboseCmd->SetDefaultValue(1); + old_verboseCmd->SetRange("OldVerboseLevel>=0"); + + verboseCmd = new G4UIcmdWithAnInteger("/process/had/rdm/verbose",this); verboseCmd->SetGuidance("Set verbose level: 0, 1, 2 or 3"); verboseCmd->SetParameterName("VerboseLevel",true); verboseCmd->SetDefaultValue(1); verboseCmd->SetRange("VerboseLevel>=0"); - - // - //This commansd allows the user to define its own decay datafile for - // a given isotope - // - userDecayDataCmd = new G4UIcommand("/grdm/setRadioactiveDecayFile",this); - G4UIparameter* Z_para= new G4UIparameter("Z_isotope",'i',true); + + // This command allows the user to define its own decay datafile for a given isotope + old_userDecayDataCmd = new G4UIcommand("/grdm/setRadioactiveDecayFile",this); // To be removed in G4 11.0 + G4UIparameter* old_Z_para= new G4UIparameter("Z_isotope",'i',true); + old_Z_para->SetParameterRange("Z_isotope > 0"); + old_Z_para->SetGuidance("Z: Charge number of isotope"); + G4UIparameter* old_A_para= new G4UIparameter("A_isotope",'i',true); + old_A_para->SetParameterRange("A_isotope > 1"); + old_A_para->SetGuidance("A: mass number of isotope"); + G4UIparameter* old_FileName_para= new G4UIparameter("file_name",'s',true); + old_FileName_para->SetGuidance("Name of the user data file"); + old_userDecayDataCmd->SetParameter(old_Z_para); + old_userDecayDataCmd->SetParameter(old_A_para); + old_userDecayDataCmd->SetParameter(old_FileName_para); + + userDecayDataCmd = new G4UIcommand("/process/had/rdm/setRadioactiveDecayFile",this); + G4UIparameter* Z_para= new G4UIparameter("Z_isotope",'i',true); Z_para->SetParameterRange("Z_isotope > 0"); Z_para->SetGuidance("Z: Charge number of isotope"); - - G4UIparameter* A_para= new G4UIparameter("A_isotope",'i',true); + G4UIparameter* A_para= new G4UIparameter("A_isotope",'i',true); A_para->SetParameterRange("A_isotope > 1"); A_para->SetGuidance("A: mass number of isotope"); - - G4UIparameter* FileName_para= new G4UIparameter("file_name",'s',true); + G4UIparameter* FileName_para= new G4UIparameter("file_name",'s',true); FileName_para->SetGuidance("Name of the user data file"); userDecayDataCmd->SetParameter(Z_para); userDecayDataCmd->SetParameter(A_para); userDecayDataCmd->SetParameter(FileName_para); + + // This commands allows the user to define its own evaporation data file for a given isotope + old_userEvaporationDataCmd = new G4UIcommand("/grdm/setPhotoEvaporationFile",this); // To be removed in G4 11.0 + G4UIparameter* old_Z_para_ = new G4UIparameter("Z_isotope",'i',true); + old_Z_para_->SetParameterRange("Z_isotope > 0"); + old_Z_para_->SetGuidance("Z: Charge number of isotope"); + G4UIparameter* old_A_para_ = new G4UIparameter("A_isotope",'i',true); + old_A_para_->SetParameterRange("A_isotope > 1"); + old_A_para_->SetGuidance("A: mass number of isotope"); + G4UIparameter* old_FileName_para_ = new G4UIparameter("file_name",'s',true); + old_FileName_para_->SetGuidance("Name of the user data file"); + old_userEvaporationDataCmd->SetParameter(old_Z_para_); + old_userEvaporationDataCmd->SetParameter(old_A_para_); + old_userEvaporationDataCmd->SetParameter(old_FileName_para_); - // - //This commands allows the user to define its own evaporation data file for - // a given isotope - // - userEvaporationDataCmd = new G4UIcommand("/grdm/setPhotoEvaporationFile",this); - G4UIparameter* Z_para_ = new G4UIparameter("Z_isotope",'i',true); - Z_para->SetParameterRange("Z_isotope > 0"); - Z_para->SetGuidance("Z: Charge number of isotope"); - - G4UIparameter* A_para_ = new G4UIparameter("A_isotope",'i',true); - A_para->SetParameterRange("A_isotope > 1"); - A_para->SetGuidance("A: mass number of isotope"); - - G4UIparameter* FileName_para_ = new G4UIparameter("file_name",'s',true); - FileName_para->SetGuidance("Name of the user data file"); - userEvaporationDataCmd->SetParameter(Z_para_ ); - userEvaporationDataCmd->SetParameter(A_para_ ); - userEvaporationDataCmd->SetParameter(FileName_para_ ); - - + userEvaporationDataCmd = new G4UIcommand("/process/had/rdm/setPhotoEvaporationFile",this); + G4UIparameter* Z_para_ = new G4UIparameter("Z_isotope",'i',true); + Z_para_->SetParameterRange("Z_isotope > 0"); + Z_para_->SetGuidance("Z: Charge number of isotope"); + G4UIparameter* A_para_ = new G4UIparameter("A_isotope",'i',true); + A_para_->SetParameterRange("A_isotope > 1"); + A_para_->SetGuidance("A: mass number of isotope"); + G4UIparameter* FileName_para_ = new G4UIparameter("file_name",'s',true); + FileName_para_->SetGuidance("Name of the user data file"); + userEvaporationDataCmd->SetParameter(Z_para_); + userEvaporationDataCmd->SetParameter(A_para_); + userEvaporationDataCmd->SetParameter(FileName_para_); + } //////////////////////////////////////////////////////////////////////////////// // G4RadioactiveDecaymessenger::~G4RadioactiveDecaymessenger () { - delete grdmDirectory; - delete nucleuslimitsCmd; - delete sourcetimeprofileCmd; - delete decaybiasprofileCmd; - delete analoguemcCmd; - delete fbetaCmd; - delete brbiasCmd; - delete splitnucleiCmd; - delete verboseCmd; - delete avolumeCmd; - delete deavolumeCmd; - delete allvolumesCmd; - delete deallvolumesCmd; - delete icmCmd; - delete armCmd; - delete hlthCmd; - delete userDecayDataCmd; - delete userEvaporationDataCmd; - delete colldirCmd; - delete collangleCmd; - + delete old_grdmDirectory; // To be removed in G4 11.0 + delete rdmDirectory; + delete old_nucleuslimitsCmd; // To be removed in G4 11.0 + delete nucleuslimitsCmd; + delete old_sourcetimeprofileCmd; // To be removed in G4 11.0 + delete sourcetimeprofileCmd; + delete old_decaybiasprofileCmd; // To be removed in G4 11.0 + delete decaybiasprofileCmd; + delete old_analoguemcCmd; // To be removed in G4 11.0 + delete analoguemcCmd; + delete old_fbetaCmd; // To be removed in G4 11.0 + delete fbetaCmd; + delete old_brbiasCmd; // To be removed in G4 11.0 + delete brbiasCmd; + delete old_splitnucleiCmd; // To be removed in G4 11.0 + delete splitnucleiCmd; + delete old_verboseCmd; // To be removed in G4 11.0 + delete verboseCmd; + delete old_avolumeCmd; // To be removed in G4 11.0 + delete avolumeCmd; + delete old_deavolumeCmd; // To be removed in G4 11.0 + delete deavolumeCmd; + delete old_allvolumesCmd; // To be removed in G4 11.0 + delete allvolumesCmd; + delete old_deallvolumesCmd; // To be removed in G4 11.0 + delete deallvolumesCmd; + delete old_icmCmd; // To be removed in G4 11.0 + delete icmCmd; + delete old_armCmd; // To be removed in G4 11.0 + delete armCmd; + delete old_hlthCmd; // To be removed in G4 11.0 + delete hlthCmd; + delete old_userDecayDataCmd; // To be removed in G4 11.0 + delete userDecayDataCmd; + delete old_userEvaporationDataCmd; // To be removed in G4 11.0 + delete userEvaporationDataCmd; + delete old_colldirCmd; // To be removed in G4 11.0 + delete colldirCmd; + delete old_collangleCmd; // To be removed in G4 11.0 + delete collangleCmd; } //////////////////////////////////////////////////////////////////////////////// // void G4RadioactiveDecaymessenger::SetNewValue (G4UIcommand *command, G4String newValues) { - if (command==nucleuslimitsCmd) {theRadioactiveDecayContainer-> - SetNucleusLimits(nucleuslimitsCmd->GetNewNucleusLimitsValue(newValues)); - - } else if (command==analoguemcCmd) {theRadioactiveDecayContainer-> - SetAnalogueMonteCarlo(analoguemcCmd->GetNewBoolValue(newValues)); - - } else if (command==fbetaCmd) {theRadioactiveDecayContainer-> - SetFBeta(fbetaCmd->GetNewBoolValue(newValues)); - - } else if (command==avolumeCmd) {theRadioactiveDecayContainer-> - SelectAVolume(newValues); - - } else if (command==deavolumeCmd) {theRadioactiveDecayContainer-> - DeselectAVolume(newValues);} - else if (command==allvolumesCmd) {theRadioactiveDecayContainer-> - SelectAllVolumes();} - else if (command==deallvolumesCmd) {theRadioactiveDecayContainer-> - DeselectAllVolumes();} - else if (command==brbiasCmd) {theRadioactiveDecayContainer-> - SetBRBias(brbiasCmd->GetNewBoolValue(newValues));} - else if (command==sourcetimeprofileCmd) {theRadioactiveDecayContainer-> - SetSourceTimeProfile(newValues);} - else if (command==decaybiasprofileCmd) {theRadioactiveDecayContainer-> - SetDecayBias(newValues);} - else if (command==splitnucleiCmd) {theRadioactiveDecayContainer-> - SetSplitNuclei(splitnucleiCmd->GetNewIntValue(newValues));} - else if (command==verboseCmd) {theRadioactiveDecayContainer-> - SetVerboseLevel(verboseCmd->GetNewIntValue(newValues));} - else if (command==icmCmd ) {theRadioactiveDecayContainer-> - SetICM(icmCmd->GetNewBoolValue(newValues));} - else if (command==armCmd ) {theRadioactiveDecayContainer-> - SetARM(armCmd->GetNewBoolValue(newValues));} - else if (command==hlthCmd ) {theRadioactiveDecayContainer-> - SetHLThreshold(hlthCmd->GetNewDoubleValue(newValues)); - - } else if (command ==userDecayDataCmd){ + // Old commands to be removed in G4 11.0 + if ( command == old_nucleuslimitsCmd ) { + theRadioactiveDecayContainer-> + SetNucleusLimits( old_nucleuslimitsCmd->GetNewNucleusLimitsValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/nucleusLimits in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_771", JustWarning, ed ); + } else if ( command == old_analoguemcCmd ) { + theRadioactiveDecayContainer-> + SetAnalogueMonteCarlo( old_analoguemcCmd->GetNewBoolValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/analogueMC in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_772", JustWarning, ed ); + } else if ( command == old_fbetaCmd ) { + theRadioactiveDecayContainer->SetFBeta( old_fbetaCmd->GetNewBoolValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/fBeta in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_773", JustWarning, ed ); + } else if ( command == old_avolumeCmd ) { + theRadioactiveDecayContainer->SelectAVolume( newValues ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/selectVolume in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_774", JustWarning, ed ); + } else if ( command == old_deavolumeCmd ) { + theRadioactiveDecayContainer->DeselectAVolume( newValues ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/deselectVolume in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_775", JustWarning, ed ); + } else if ( command == old_allvolumesCmd ) { + theRadioactiveDecayContainer->SelectAllVolumes(); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/allVolumes in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_776", JustWarning, ed ); + } else if ( command == old_deallvolumesCmd ) { + theRadioactiveDecayContainer->DeselectAllVolumes(); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/noVolumes in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_777", JustWarning, ed ); + } else if ( command == old_brbiasCmd ) { + theRadioactiveDecayContainer->SetBRBias( old_brbiasCmd->GetNewBoolValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/BRbias in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_778", JustWarning, ed ); + } else if ( command == old_sourcetimeprofileCmd ) { + theRadioactiveDecayContainer->SetSourceTimeProfile( newValues ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/sourceTimeProfile in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_779", JustWarning, ed ); + } else if ( command == old_decaybiasprofileCmd ) { + theRadioactiveDecayContainer->SetDecayBias( newValues ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/decayBiasProfile in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_780", JustWarning, ed ); + } else if ( command == old_splitnucleiCmd ) { + theRadioactiveDecayContainer->SetSplitNuclei( old_splitnucleiCmd->GetNewIntValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/splitNuclei in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_781", JustWarning, ed ); + } else if ( command == old_verboseCmd ) { + theRadioactiveDecayContainer->SetVerboseLevel( old_verboseCmd->GetNewIntValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/verbose in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_782", JustWarning, ed ); + } else if ( command == old_icmCmd ) { + theRadioactiveDecayContainer->SetICM( old_icmCmd->GetNewBoolValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/applyICM in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_783", JustWarning, ed ); + } else if ( command == old_armCmd ) { + theRadioactiveDecayContainer->SetARM( old_armCmd->GetNewBoolValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/applyARM in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_784", JustWarning, ed ); + } else if ( command == old_hlthCmd ) { + theRadioactiveDecayContainer->SetHLThreshold( old_hlthCmd->GetNewDoubleValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/hlThreshold in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_785", JustWarning, ed ); + } else if ( command == old_userDecayDataCmd ) { G4int Z,A; G4String file_name; const char* nv = (const char*)newValues; std::istringstream is(nv); is >> Z >> A >> file_name; theRadioactiveDecayContainer->AddUserDecayDataFile(Z,A,file_name); - - } else if (command ==userEvaporationDataCmd){ + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/setRadioactiveDecayFile in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_786", JustWarning, ed ); + } else if ( command == old_userEvaporationDataCmd ) { G4int Z,A; G4String file_name; const char* nv = (const char*)newValues; std::istringstream is(nv); is >> Z >> A >> file_name; G4NuclearLevelData::GetInstance()->AddPrivateData(Z,A,file_name); - - } else if (command==colldirCmd) {theRadioactiveDecayContainer-> - SetDecayDirection(colldirCmd->GetNew3VectorValue(newValues)); - - } else if (command==collangleCmd) {theRadioactiveDecayContainer-> - SetDecayHalfAngle(collangleCmd->GetNewDoubleValue(newValues)); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/setPhotoEvaporationFile in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_787", JustWarning, ed ); + } else if ( command == old_colldirCmd ) { + theRadioactiveDecayContainer->SetDecayDirection( old_colldirCmd->GetNew3VectorValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/decayDirection in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_788", JustWarning, ed ); + } else if ( command == old_collangleCmd ) { + theRadioactiveDecayContainer->SetDecayHalfAngle( old_collangleCmd->GetNewDoubleValue( newValues ) ); + G4ExceptionDescription ed; + ed << "This command is valid but deprecated and will be replaced with the command:\n" + << "/process/had/rdm/decayHalfAngle in the next major release, Geant4 version 11.0"; + G4Exception( "G4RadioactiveDecaymessenger", "HAD_RDM_789", JustWarning, ed ); } + + // New commands + if ( command == nucleuslimitsCmd ) { + theRadioactiveDecayContainer-> + SetNucleusLimits( nucleuslimitsCmd->GetNewNucleusLimitsValue( newValues ) ); + } else if ( command == analoguemcCmd ) { + theRadioactiveDecayContainer-> + SetAnalogueMonteCarlo( analoguemcCmd->GetNewBoolValue( newValues ) ); + } else if ( command == fbetaCmd ) { + theRadioactiveDecayContainer->SetFBeta( fbetaCmd->GetNewBoolValue( newValues ) ); + } else if ( command == avolumeCmd ) { + theRadioactiveDecayContainer->SelectAVolume( newValues ); + } else if ( command == deavolumeCmd ) { + theRadioactiveDecayContainer->DeselectAVolume( newValues ); + } else if ( command == allvolumesCmd ) { + theRadioactiveDecayContainer->SelectAllVolumes(); + } else if ( command == deallvolumesCmd ) { + theRadioactiveDecayContainer->DeselectAllVolumes(); + } else if ( command == brbiasCmd ) { + theRadioactiveDecayContainer->SetBRBias( brbiasCmd->GetNewBoolValue( newValues ) ); + } else if ( command == sourcetimeprofileCmd ) { + theRadioactiveDecayContainer->SetSourceTimeProfile( newValues ); + } else if ( command == decaybiasprofileCmd ) { + theRadioactiveDecayContainer->SetDecayBias( newValues ); + } else if ( command == splitnucleiCmd ) { + theRadioactiveDecayContainer->SetSplitNuclei( splitnucleiCmd->GetNewIntValue( newValues ) ); + } else if ( command == verboseCmd ) { + theRadioactiveDecayContainer->SetVerboseLevel( verboseCmd->GetNewIntValue( newValues ) ); + } else if ( command == icmCmd ) { + theRadioactiveDecayContainer->SetICM( icmCmd->GetNewBoolValue( newValues ) ); + } else if ( command == armCmd ) { + theRadioactiveDecayContainer->SetARM( armCmd->GetNewBoolValue( newValues ) ); + } else if ( command == hlthCmd ) { + theRadioactiveDecayContainer->SetHLThreshold( hlthCmd->GetNewDoubleValue( newValues ) ); + } else if ( command == userDecayDataCmd ) { + G4int Z,A; + G4String file_name; + const char* nv = (const char*)newValues; + std::istringstream is(nv); + is >> Z >> A >> file_name; + theRadioactiveDecayContainer->AddUserDecayDataFile(Z,A,file_name); + } else if ( command == userEvaporationDataCmd ) { + G4int Z,A; + G4String file_name; + const char* nv = (const char*)newValues; + std::istringstream is(nv); + is >> Z >> A >> file_name; + G4NuclearLevelData::GetInstance()->AddPrivateData(Z,A,file_name); + } else if ( command == colldirCmd ) { + theRadioactiveDecayContainer->SetDecayDirection( colldirCmd->GetNew3VectorValue( newValues ) ); + } else if ( command == collangleCmd ) { + theRadioactiveDecayContainer->SetDecayHalfAngle( collangleCmd->GetNewDoubleValue( newValues ) ); + } } diff --git a/source/processes/hadronic/models/rpg/sources.cmake b/source/processes/hadronic/models/rpg/sources.cmake index ec2879a7f1..38059088fb 100644 --- a/source/processes/hadronic/models/rpg/sources.cmake +++ b/source/processes/hadronic/models/rpg/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4hadronic_RPG # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,33 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_RPG HEADERS G4RPGAntiKZeroInelastic.hh diff --git a/source/processes/hadronic/models/theo_high_energy/History b/source/processes/hadronic/models/theo_high_energy/History index 2d4e1aa821..d309ca4362 100644 --- a/source/processes/hadronic/models/theo_high_energy/History +++ b/source/processes/hadronic/models/theo_high_energy/History @@ -14,6 +14,32 @@ code and to keep track of all tags. * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- +07-Nov-2020, Vladimir Ivanchenko (had-theo-HE-V10-06-04) +- G4CRCoalescence : use inheritance from G4HadronicInteraction +- G4TheoFSGenerator : instantiate G4CRCoalescence once in the thread + +05-Nov-2020, Alberto Ribon (had-theo-HE-V10-06-03) +- G4CRCoalescence : new class, based on the work by Diego Mauricio + Gomez Coral for the GAPS Collaboration, for applying coalescence to + the secondaries produced by string model to form deuterons and + antideuterons from, respectively, proton-neutron and + antiproton-antineutron pairs with close momenta. + This class can be useful in particular for Cosmic Ray applications. +- G4TheoFSGenerator : in the method ApplyYourself, apply G4CRCoalescence + to the candidate secondaries produced by the string model, if the + corresponding switch is enabled (by default it is disabled). + +24-Jul-2020, Alberto Ribon (had-theo-HE-V10-06-02) +- G4TheoFSGenerator : introduced a temporarily dummy treatment of + heavy (charm and bottom) projectile hadrons at low energies + (below 100 MeV). + Cascade models are currently not applicable for heavy hadrons and + string models cannot handle them properly at very low energies, + so we return as final state the initial state unchanged. + Note that, for most applications, this is a safe simplification, + giving that the nearly all slowly moving charm and bottom hadrons + decay before any hadronic interaction can occur. + 05-Mar-2020, Vladimir Ivanchenko (had-theo-HE-V10-06-01) - G4QuasiElasticChannel, G4TheoFSGenerator - clean-up: use C++11 keywords and loops, removed unused methods, coherently aline diff --git a/source/processes/hadronic/models/theo_high_energy/include/G4CRCoalescence.hh b/source/processes/hadronic/models/theo_high_energy/include/G4CRCoalescence.hh new file mode 100644 index 0000000000..40112b9b66 --- /dev/null +++ b/source/processes/hadronic/models/theo_high_energy/include/G4CRCoalescence.hh @@ -0,0 +1,117 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +//--------------------------------------------------------------------------- +// +// ClassName: G4CRCoalescence ("CR" stands for "Cosmic Ray") +// +// Author: 2020 Alberto Ribon , based on code written by +// Diego Mauricio Gomez Coral for the GAPS Collaboration +// +// Description: This class can be optionally used in the method: +// +// G4TheoFSGenerator::ApplyYourself +// +// to coalesce pairs of proton-neutron and antiproton-antineutron +// into deuterons and antideuterons, respectively, from the list +// of secondaries produced by a string model. +// This class can be useful in particular for Cosmic Ray (CR) +// applications. +// By default, this class is not used. +// However, it can be enabled via the UI command: +// +// /process/had/enableCRCoalescence true +// +// It is assumed that the candidate proton-neutron and +// antiproton-antideuteron pairs originate from the same +// spatial position, so the condition for coalescence takes +// into account only their closeness in momentum space. +// +// This class is based entirely on code written by +// Diego Mauricio Gomez Coral for the GAPS Collaboration. +// The main application of this work is for cosmic ray physics. +// +// Notes: +// - In its current version, coalescence can occur only for +// proton projectile (because the coalescence parameters +// for deuteron and antideuteron are set to non-null values +// only for the case of proton projectile). +// - This class is not meant be used for secondaries produces +// by intranuclear cascade models - such as BERT, BIC and +// INCL - which should have already a coalescence phase. +// +// Modified: +// +//---------------------------------------------------------------------------- +// +#ifndef G4CRCoalescence_h +#define G4CRCoalescence_h 1 + +#include "G4ReactionProductVector.hh" +#include "G4HadProjectile.hh" +#include "G4HadronicInteraction.hh" + +class G4CRCoalescence : public G4HadronicInteraction { + public: + + explicit G4CRCoalescence(); + ~G4CRCoalescence() override; + G4CRCoalescence( const G4CRCoalescence &right ) = delete; + const G4CRCoalescence & operator=( const G4CRCoalescence &right ) = delete; + G4bool operator==( const G4CRCoalescence &right ) const = delete; + G4bool operator!=( const G4CRCoalescence &right ) const = delete; + + // Set the parameter used in the coalescence condition + void SetP0Coalescence( const G4HadProjectile &thePrimary, G4String /* model */ ); + + // Main method: form deuterons and antideuterons by coalescence of, respectively, + // proton-neutron and antiproton-antineutron pairs with close momenta + void GenerateDeuterons( G4ReactionProductVector* result ); + + private: + + // Utility methods + void PushDeuteron( const G4ThreeVector &p1, const G4ThreeVector &p2, G4int charge, + G4ReactionProductVector* result ); + G4int FindPartner( const G4ThreeVector &p1, G4double m1, + std::vector< std::pair< G4int, G4ThreeVector > > &neutron, + G4double m2, G4int charge ); + G4bool Coalescence( const G4ThreeVector &p1, G4double m1, + const G4ThreeVector &p2, G4double m2, G4int charge ); + G4bool Coalescence( G4double p1x, G4double p1y, G4double p1z, G4double m1, + G4double p2x, G4double p2y, G4double p2z, G4double m2, G4int charge ); + G4double GetPcm( const G4ThreeVector& p1, G4double m1, + const G4ThreeVector& p2, G4double m2 ); + G4double GetPcm( G4double p1x, G4double p1y, G4double p1z, G4double m1, + G4double p2x, G4double p2y, G4double p2z, G4double m2 ); + G4double GetS( G4double p1x, G4double p1y, G4double p1z, G4double m1, + G4double p2x, G4double p2y, G4double p2z, G4double m2 ); + + G4double fP0_d; // Coalescence parameter for deuterons + G4double fP0_dbar; // Coalescence parameter for antideuterons +}; + +#endif diff --git a/source/processes/hadronic/models/theo_high_energy/include/G4TheoFSGenerator.hh b/source/processes/hadronic/models/theo_high_energy/include/G4TheoFSGenerator.hh index 9e4b0e4b98..58f393d2c4 100644 --- a/source/processes/hadronic/models/theo_high_energy/include/G4TheoFSGenerator.hh +++ b/source/processes/hadronic/models/theo_high_energy/include/G4TheoFSGenerator.hh @@ -49,6 +49,8 @@ #include "G4HadFinalState.hh" #include "G4QuasiElasticChannel.hh" +class G4CRCoalescence; + class G4TheoFSGenerator : public G4HadronicInteraction { @@ -76,6 +78,7 @@ class G4TheoFSGenerator : public G4HadronicInteraction G4DecayStrongResonances theDecay; G4HadFinalState * theParticleChange; G4QuasiElasticChannel * theQuasielastic; + G4CRCoalescence * theCosmicCoalescence; }; inline void G4TheoFSGenerator::SetTransport(G4VIntraNuclearTransportModel *const value) diff --git a/source/processes/hadronic/models/theo_high_energy/sources.cmake b/source/processes/hadronic/models/theo_high_energy/sources.cmake index aef4588b3a..7360e1431c 100644 --- a/source/processes/hadronic/models/theo_high_energy/sources.cmake +++ b/source/processes/hadronic/models/theo_high_energy/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_theo_max # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,45 +14,16 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/shortlived/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/coherent_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/quasi_elastic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/processes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4had_theo_max HEADERS + G4CRCoalescence.hh G4QuasiElasticChannel.hh G4TheoFSGenerator.hh SOURCES + G4CRCoalescence.cc G4QuasiElasticChannel.cc G4TheoFSGenerator.cc GRANULAR_DEPENDENCIES diff --git a/source/processes/hadronic/models/theo_high_energy/src/G4CRCoalescence.cc b/source/processes/hadronic/models/theo_high_energy/src/G4CRCoalescence.cc new file mode 100644 index 0000000000..ee65440f18 --- /dev/null +++ b/source/processes/hadronic/models/theo_high_energy/src/G4CRCoalescence.cc @@ -0,0 +1,314 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// +//--------------------------------------------------------------------------- +// +// ClassName: G4CRCoalescence ("CR" stands for "Cosmic Ray") +// +// Author: 2020 Alberto Ribon , based on code written by +// Diego Mauricio Gomez Coral for the GAPS Collaboration +// +// Description: This class can be optionally used in the method: +// +// G4TheoFSGenerator::ApplyYourself +// +// to coalesce pairs of proton-neutron and antiproton-antineutron +// into deuterons and antideuterons, respectively, from the list +// of secondaries produced by a string model. +// This class can be useful in particular for Cosmic Ray (CR) +// applications. +// By default, this class is not used. +// However, it can be enabled via the UI command: +// +// /process/had/enableCRCoalescence true +// +// It is assumed that the candidate proton-neutron and +// antiproton-antideuteron pairs originate from the same +// spatial position, so the condition for coalescence takes +// into account only their closeness in momentum space. +// +// This class is based entirely on code written by +// Diego Mauricio Gomez Coral for the GAPS Collaboration. +// The main application of this work is for cosmic ray physics. +// +// Notes: +// - In its current version, coalescence can occur only for +// proton projectile (because the coalescence parameters +// for deuteron and antideuteron are set to non-null values +// only for the case of proton projectile). +// - This class is not meant be used for secondaries produces +// by intranuclear cascade models - such as BERT, BIC and +// INCL - which should have already a coalescence phase. +// +// Modified: +// +//---------------------------------------------------------------------------- +// +#include "G4DynamicParticle.hh" +#include "G4Proton.hh" +#include "G4Neutron.hh" +#include "G4Deuteron.hh" +#include "G4AntiProton.hh" +#include "G4AntiNeutron.hh" +#include "G4CRCoalescence.hh" +#include "G4ReactionProduct.hh" +#include "G4IonTable.hh" + + +G4CRCoalescence::G4CRCoalescence() : G4HadronicInteraction("G4CRCoalescence" ), + fP0_d( 0.0 ), fP0_dbar( 0.0 ) {} + + +G4CRCoalescence::~G4CRCoalescence() {} + + +void G4CRCoalescence::SetP0Coalescence( const G4HadProjectile &thePrimary, G4String /* model */ ) { + // Note by A.R. : in the present version, the coalescence parameters are set only for + // proton projectile. If we want to extend this coalescence algorithm + // for other applications, besides cosmic rays, we need to set these + // coalescence parameters also for all projectiles. + // (Note that the method "GenerateDeuterons", instead, can be already used + // as it is for all projectiles.) + fP0_dbar = 0.0; + fP0_d = 0.0; + if ( thePrimary.GetDefinition()->GetPDGEncoding() == 2212 ) { // proton + G4double mproj = thePrimary.GetDefinition()->GetPDGMass(); + G4double pz = thePrimary.Get4Momentum().z(); + G4double ekin = std::sqrt( pz*pz + mproj*mproj ) - mproj; + if ( ekin > 10.0 ) { + fP0_dbar = 130.0 / ( 1.0 + std::exp( 21.6 - std::log( 0.001*ekin )/0.089 ) ); // set p0 for antideuteron + fP0_d = 118.1 * ( 1.0 + std::exp( 5.53 - std::log( 0.001*ekin )/0.43 ) ); // set p0 for deuteron + } + } + //G4cout << "Coalescence parameter p0 deuteron / antideuteron: " << fP0_d << " / " << fP0_dbar << G4endl; +} + + +void G4CRCoalescence::GenerateDeuterons( G4ReactionProductVector* result ) { + // Deuteron clusters are made with the first nucleon pair that fulfills + // the coalescence conditions, starting with the protons. + // A deuteron is a pair (i,j) where i is the proton and j the neutron in current event + // with the relative momentum less than p0 (i.e. within a sphere of radius p0). + // The same applies for antideuteron clusters, with antiprotons and antineutrons, + // instead of protons and neutrons, respectively. + + // Vectors of index-position and 3-momentum pairs for, respectively: + // protons, neutrons, antiprotons and antineutrons + std::vector< std::pair< G4int, G4ThreeVector > > proton; + std::vector< std::pair< G4int, G4ThreeVector > > neutron; + std::vector< std::pair< G4int, G4ThreeVector > > antiproton; + std::vector< std::pair< G4int, G4ThreeVector > > antineutron; + for ( unsigned int i = 0; i < result->size(); ++i ) { + G4int pdgid = result->operator[](i)->GetDefinition()->GetPDGEncoding(); + if ( pdgid == 2212 ) { // proton + proton.push_back( std::make_pair( i, result->operator[](i)->GetMomentum() ) ); + result->erase( result->begin() + i ); + } + } + for ( unsigned int i = 0; i < result->size(); ++i ) { + G4int pdgid = result->operator[](i)->GetDefinition()->GetPDGEncoding(); + if ( pdgid == 2112 ) { // neutron + neutron.push_back( std::make_pair( i, result->operator[](i)->GetMomentum() ) ); + result->erase( result->begin() + i ); + } + } + for ( unsigned int i = 0; i < result->size(); ++i ) { + G4int pdgid = result->operator[](i)->GetDefinition()->GetPDGEncoding(); + if ( pdgid == -2212 ) { // antiproton + antiproton.push_back( std::make_pair( i, result->operator[](i)->GetMomentum() ) ); + result->erase( result->begin() + i ); + } + } + for ( unsigned int i = 0; i < result->size(); ++i ) { + G4int pdgid = result->operator[](i)->GetDefinition()->GetPDGEncoding(); + if ( pdgid == -2112 ) { // antineutron + antineutron.push_back( std::make_pair( i, result->operator[](i)->GetMomentum() ) ); + result->erase( result->begin() + i ); + } + } + + for ( unsigned int i = 0; i < proton.size(); ++i ) { // loop over protons + if ( proton.at(i).first == -1 ) continue; + G4ThreeVector p1 = proton.at(i).second; + int partner1 = FindPartner( p1, G4Proton::Proton()->GetPDGMass(), neutron, + G4Neutron::Neutron()->GetPDGMass(), 1 ); + if ( partner1 == -1 ) { // if no partner found, then the proton is a final-state secondary + G4ParticleDefinition* prt = G4ParticleTable::GetParticleTable()->FindParticle( "proton" ); + G4ReactionProduct* finalp = new G4ReactionProduct; + finalp->SetDefinition( prt ); + G4double massp = prt->GetPDGMass(); + G4double totalEnergy = std::sqrt( p1.mag()*p1.mag() + massp*massp ); + finalp->SetMomentum( p1 ); + finalp->SetTotalEnergy( totalEnergy ); + finalp->SetMass( massp ); + result->push_back( finalp ); + continue; + } + G4ThreeVector p2 = neutron.at(partner1).second; + PushDeuteron( p1, p2, 1, result ); + neutron.at(partner1).first = -1; // tag the bound neutron + } + + for ( unsigned int i = 0; i < neutron.size(); ++i ) { // loop over neutrons + if ( neutron.at(i).first == -1 ) continue; // Skip already bound neutron, else it is a final-state secondary + G4ParticleDefinition* nrt = G4ParticleTable::GetParticleTable()->FindParticle( "neutron" ); + G4ReactionProduct* finaln = new G4ReactionProduct; + finaln->SetDefinition( nrt ); + G4ThreeVector p2 = neutron.at(i).second; + G4double massn = nrt->GetPDGMass(); + G4double totalEnergy = std::sqrt( p2.mag()*p2.mag() + massn*massn ); + finaln->SetMomentum( p2 ); + finaln->SetTotalEnergy( totalEnergy ); + finaln->SetMass( massn ); + result->push_back( finaln ); + } + + for ( unsigned int i = 0; i < antiproton.size(); ++i ) { // loop over antiprotons + if ( antiproton.at(i).first == -1 ) continue; + G4ThreeVector p1 = antiproton.at(i).second; + int partner1 = FindPartner( p1, G4Proton::Proton()->GetPDGMass(), antineutron, + G4Neutron::Neutron()->GetPDGMass(), -1 ); + if ( partner1 == -1 ) { // if no partner found, then the antiproton is a final-state secondary + G4ParticleDefinition* pbar = G4ParticleTable::GetParticleTable()->FindAntiParticle( "proton" ); + G4ReactionProduct* finalpbar = new G4ReactionProduct; + finalpbar->SetDefinition( pbar ); + G4double massp = pbar->GetPDGMass(); + G4double totalEnergy = std::sqrt( p1.mag()*p1.mag() + massp*massp ); + finalpbar->SetMomentum( p1 ); + finalpbar->SetTotalEnergy( totalEnergy ); + finalpbar->SetMass( massp ); + result->push_back( finalpbar ); + continue; + } + G4ThreeVector p2 = antineutron.at(partner1).second; + PushDeuteron( p1, p2, -1, result ); + antineutron.at(partner1).first = -1; // tag the bound antineutron + } + + for ( unsigned int i = 0; i < antineutron.size(); ++i ) { // loop over antineutrons + if ( antineutron.at(i).first == -1 ) continue; // Skip already bound antineutron, else it is a final-state secondary + G4ParticleDefinition* nbar = G4ParticleTable::GetParticleTable()->FindAntiParticle( "neutron" ); + G4ReactionProduct* finalnbar = new G4ReactionProduct; + finalnbar->SetDefinition( nbar ); + G4ThreeVector p2 = antineutron.at(i).second; + G4double massn = nbar->GetPDGMass(); + G4double totalEnergy = std::sqrt( p2.mag()*p2.mag() + massn*massn ); + finalnbar->SetMomentum( p2 ); + finalnbar->SetTotalEnergy( totalEnergy ); + finalnbar->SetMass( massn ); + result->push_back( finalnbar ); + } +} + + +void G4CRCoalescence::PushDeuteron( const G4ThreeVector &p1, const G4ThreeVector &p2, G4int charge, // input + G4ReactionProductVector* result ) { // output + // Create a deuteron or antideuteron (depending on "charge") object (of type G4ReactionProduct) + // from the two input momenta "p1" and "p2", and push it to the vector "result". + if ( charge > 0 ) { + G4ParticleDefinition* deuteron = G4ParticleTable::GetParticleTable()->FindParticle( "deuteron" ); + G4ReactionProduct* finaldeut = new G4ReactionProduct; + finaldeut->SetDefinition( deuteron ); + G4ThreeVector psum = p1 + p2; + G4double massd = deuteron->GetPDGMass(); + G4double totalEnergy = std::sqrt( psum.mag()*psum.mag() + massd*massd ); + finaldeut->SetMomentum( psum ); + finaldeut->SetTotalEnergy( totalEnergy ); + finaldeut->SetMass( massd ); + result->push_back( finaldeut ); + } else { + G4ParticleDefinition* antideuteron = G4ParticleTable::GetParticleTable()->FindAntiParticle( "deuteron" ); + G4ReactionProduct* finalantideut = new G4ReactionProduct; + finalantideut->SetDefinition( antideuteron ); + G4ThreeVector psum = p1 + p2; + G4double massd = antideuteron->GetPDGMass(); + G4double totalEnergy = std::sqrt( psum.mag()*psum.mag() + massd*massd ); + finalantideut->SetMomentum( psum ); + finalantideut->SetTotalEnergy( totalEnergy ); + finalantideut->SetMass( massd ); + result->push_back( finalantideut ); + } +} + + +G4int G4CRCoalescence::FindPartner( const G4ThreeVector &p1, G4double m1, + std::vector< std::pair< G4int, G4ThreeVector > > &neutron, + G4double m2, G4int charge ) { + // Find a nucleon/antinucleon (depending on "charge") partner, from the input list "neutron" + // (which is a vector of either neutron or antineutron particles depending on "charge") + // within a sphere of radius p0 centered at the input momentum "p1"; exclude already bound + // particles (neutrons or antineutrons depending on "charge") of "neutron". + for ( unsigned int j = 0; j < neutron.size(); ++j ) { + if ( neutron.at(j).first == -1 ) continue; // skip already bound particle + G4ThreeVector p2 = neutron.at(j).second; + if ( ! Coalescence( p1, m1, p2, m2, charge ) ) continue; + return j; + } + return -1; // no partner found +} + + +G4bool G4CRCoalescence::Coalescence( const G4ThreeVector &p1, G4double m1, + const G4ThreeVector &p2, G4double m2, G4int charge ) { + // Returns true if the momenta of the two nucleons/antinucleons (depending on "charge") are + // inside of an sphere of radius p0 (assuming that the two particles are in the same spatial place). + return Coalescence( p1.x(), p1.y(), p1.z(), m1, p2.x(), p2.y(), p2.z(), m2, charge ); +} + + +G4bool G4CRCoalescence::Coalescence( G4double p1x, G4double p1y, G4double p1z, G4double m1, + G4double p2x, G4double p2y, G4double p2z, G4double m2, + G4int charge ) { + // Returns true if the momenta of the two nucleons/antinucleons (depending on "charge") are + // inside of a sphere of radius p0 (assuming that the two particles are in the same spatial place). + G4double deltaP = GetPcm( p1x, p1y, p1z, m1, p2x, p2y, p2z, m2 ); + if ( charge > 0 ) return ( deltaP < fP0_d ); + else return ( deltaP < fP0_dbar ); +} + + +G4double G4CRCoalescence::GetPcm( const G4ThreeVector& p1, G4double m1, + const G4ThreeVector& p2, G4double m2 ) { + // Momentum in the center-of-mass frame of two particles from LAB values. + return GetPcm( p1.x(), p1.y(), p1.z(), m1, p2.x(), p2.y(), p2.z(), m2 ); +} + + +G4double G4CRCoalescence::GetPcm( G4double p1x, G4double p1y, G4double p1z, G4double m1, + G4double p2x, G4double p2y, G4double p2z, G4double m2 ) { + // Momentum in the center-of-mass frame of two particles from LAB values. + G4double scm = GetS( p1x, p1y, p1z, m1, p2x, p2y, p2z, m2 ); + return std::sqrt( (scm - (m1-m2)*(m1-m2))*(scm - (m1+m2)*(m1+m2)) ) / (2.0*std::sqrt( scm )); +} + + +G4double G4CRCoalescence::GetS( G4double p1x, G4double p1y, G4double p1z, G4double m1, + G4double p2x, G4double p2y, G4double p2z, G4double m2 ) { + // Square of center-of-mass energy of two particles from LAB values. + G4double E1 = std::sqrt( p1x*p1x + p1y*p1y + p1z*p1z + m1*m1 ); + G4double E2 = std::sqrt( p2x*p2x + p2y*p2y + p2z*p2z + m2*m2 ); + return (E1+E2)*(E1+E2) - (p1x+p2x)*(p1x+p2x) - (p1y+p2y)*(p1y+p2y) - (p1z+p2z)*(p1z+p2z); +} diff --git a/source/processes/hadronic/models/theo_high_energy/src/G4TheoFSGenerator.cc b/source/processes/hadronic/models/theo_high_energy/src/G4TheoFSGenerator.cc index 8e40791805..d982cfbb6c 100644 --- a/source/processes/hadronic/models/theo_high_energy/src/G4TheoFSGenerator.cc +++ b/source/processes/hadronic/models/theo_high_energy/src/G4TheoFSGenerator.cc @@ -35,11 +35,15 @@ #include "G4ReactionProductVector.hh" #include "G4ReactionProduct.hh" #include "G4IonTable.hh" +#include "G4HadronicParameters.hh" +#include "G4CRCoalescence.hh" +#include "G4HadronicInteractionRegistry.hh" G4TheoFSGenerator::G4TheoFSGenerator(const G4String& name) : G4HadronicInteraction(name) , theTransport(nullptr), theHighEnergyGenerator(nullptr) , theQuasielastic(nullptr) + , theCosmicCoalescence(nullptr) { theParticleChange = new G4HadFinalState; } @@ -69,7 +73,27 @@ G4HadFinalState * G4TheoFSGenerator::ApplyYourself(const G4HadProjectile & thePr theParticleChange->Clear(); theParticleChange->SetStatusChange(stopAndKill); G4double timePrimary=thePrimary.GetGlobalTime(); - + + // Temporarily dummy treatment of heavy (charm and bottom) hadron projectiles at low energies. + // Cascade models are currently not applicable for heavy hadrons and string models cannot + // handle them properly at low energies - let's say safely below ~100 MeV. + // In these cases, we return as final state the initial state unchanged. + // For most applications, this is a safe simplification, giving that the nearly all + // slowly moving charm and bottom hadrons decay before any hadronic interaction can occur. + // Note that we prefer not to use G4HadronicParameters::GetMinEnergyTransitionFTF_Cascade() + // (typicall ~3 GeV) because FTFP works reasonably well below such a value. + const G4double energyThresholdForCharmAndBottomHadrons = 100.0*CLHEP::MeV; + if ( thePrimary.GetKineticEnergy() < energyThresholdForCharmAndBottomHadrons && + ( thePrimary.GetDefinition()->GetQuarkContent( 4 ) != 0 || // Has charm constituent quark + thePrimary.GetDefinition()->GetAntiQuarkContent( 4 ) != 0 || // Has anti-charm constituent anti-quark + thePrimary.GetDefinition()->GetQuarkContent( 5 ) != 0 || // Has bottom constituent quark + thePrimary.GetDefinition()->GetAntiQuarkContent( 5 ) != 0 ) ) { // Has anti-bottom constituent anti-quark + theParticleChange->SetStatusChange( isAlive ); + theParticleChange->SetEnergyChange( thePrimary.GetKineticEnergy() ); + theParticleChange->SetMomentumChange( thePrimary.Get4Momentum().vect().unit() ); + return theParticleChange; + } + // check if models have been registered, and use default, in case this is not true @@ const G4DynamicParticle aPart(thePrimary.GetDefinition(),thePrimary.Get4Momentum().vect()); @@ -195,6 +219,22 @@ G4HadFinalState * G4TheoFSGenerator::ApplyYourself(const G4HadProjectile & thePr } } + // If enabled, apply the Cosmic Rays (CR) coalescence to the list of secondaries produced so far. + // This algorithm can form deuterons and antideuterons by coalescence of, respectively, + // proton-neutron and antiproton-antineutron pairs close in momentum space. + // This can be useful in particular for Cosmic Ray applications. + if ( G4HadronicParameters::Instance()->EnableCRCoalescence() ) { + if(nullptr == theCosmicCoalescence) { + theCosmicCoalescence = (G4CRCoalescence*) + G4HadronicInteractionRegistry::Instance()->FindModel("G4CRCoalescence"); + if(nullptr == theCosmicCoalescence) { + theCosmicCoalescence = new G4CRCoalescence(); + } + } + theCosmicCoalescence->SetP0Coalescence( thePrimary, theHighEnergyGenerator->GetModelName() ); + theCosmicCoalescence->GenerateDeuterons( theTransportResult ); + } + // Fill particle change for(auto & ptr : *theTransportResult) { diff --git a/source/processes/hadronic/models/util/History b/source/processes/hadronic/models/util/History index c1609a517f..f45ead33d0 100644 --- a/source/processes/hadronic/models/util/History +++ b/source/processes/hadronic/models/util/History @@ -14,6 +14,19 @@ code and to keep track of all tags. * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- +24 November 2020 Alberto Ribon (hadr-mod-util-V10-06-02) +- G4Fragment : introduced an optional parameter to switch off some warnings. + By default, nothing is changed (i.e. the warnings are printed out as + usual). Only for electromagnetic dissociation, the parameter is set to + switch off otherwise too frequent warning messages. + This change has been suggested by Laurie Nevay and Andrey Abramov + (bug report #2254). + +08 September 2020 Alberto Ribon (hadr-mod-util-V10-06-01) +- G4KineticTrack : added initialization of an array as suggested by + Coverity. Used consistently pre-increment and pre-decrement instead + of post-increment and post-decrement, respectively. + 05 May 2020 Gunter Folger (hadr-mod-util-V10-06-00) - fixes for clang10: - Fixes for warnings on confusing indentation, enclosing statements diff --git a/source/processes/hadronic/models/util/include/G4Fragment.hh b/source/processes/hadronic/models/util/include/G4Fragment.hh index 44a8ee5709..6a7451e7f8 100644 --- a/source/processes/hadronic/models/util/include/G4Fragment.hh +++ b/source/processes/hadronic/models/util/include/G4Fragment.hh @@ -78,7 +78,7 @@ public: G4Fragment(const G4Fragment &right); // A,Z and 4-momentum - main constructor for fragment - G4Fragment(G4int A, G4int Z, const G4LorentzVector& aMomentum); + G4Fragment(G4int A, G4int Z, const G4LorentzVector& aMomentum, G4bool warning=true); // 4-momentum and pointer to G4particleDefinition (for gammas, e-) G4Fragment(const G4LorentzVector& aMomentum, @@ -176,7 +176,7 @@ private: void NumberOfExitationWarning(const G4String&); - inline void CalculateExcitationEnergy(); + inline void CalculateExcitationEnergy(G4bool warning=true); inline void CalculateGroundStateMass(); @@ -235,11 +235,11 @@ inline void G4Fragment::operator delete(void * aFragment) pFragmentAllocator()->FreeSingle((G4Fragment *) aFragment); } -inline void G4Fragment::CalculateExcitationEnergy() +inline void G4Fragment::CalculateExcitationEnergy(G4bool warning) { theExcitationEnergy = theMomentum.mag() - theGroundStateMass; if(theExcitationEnergy < minFragExcitation) { - if(theExcitationEnergy < -minFragExcitation) { ExcitationEnergyWarning(); } + if(theExcitationEnergy < -minFragExcitation && warning) { ExcitationEnergyWarning(); } theExcitationEnergy = 0.0; } } diff --git a/source/processes/hadronic/models/util/sources.cmake b/source/processes/hadronic/models/util/sources.cmake index a1d3a07e17..337e2c1737 100644 --- a/source/processes/hadronic/models/util/sources.cmake +++ b/source/processes/hadronic/models/util/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_models.G4had_mod_util # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -15,33 +15,9 @@ # 20110727 M. Kelsey -- Add G4DecayKineticTracks #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPNumerics/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4had_mod_util HEADERS G4Clebsch.hh diff --git a/source/processes/hadronic/models/util/src/G4Fragment.cc b/source/processes/hadronic/models/util/src/G4Fragment.cc index 0d61c778d8..143c0aba5b 100644 --- a/source/processes/hadronic/models/util/src/G4Fragment.cc +++ b/source/processes/hadronic/models/util/src/G4Fragment.cc @@ -93,7 +93,7 @@ G4Fragment::G4Fragment(const G4Fragment &right) : G4Fragment::~G4Fragment() {} -G4Fragment::G4Fragment(G4int A, G4int Z, const G4LorentzVector& aMomentum) : +G4Fragment::G4Fragment(G4int A, G4int Z, const G4LorentzVector& aMomentum, G4bool warning) : theA(A), theZ(Z), theExcitationEnergy(0.0), @@ -113,7 +113,7 @@ G4Fragment::G4Fragment(G4int A, G4int Z, const G4LorentzVector& aMomentum) : { if(theA > 0) { CalculateGroundStateMass(); - CalculateExcitationEnergy(); + CalculateExcitationEnergy(warning); } } diff --git a/source/processes/hadronic/models/util/src/G4GeneralPhaseSpaceDecay.cc b/source/processes/hadronic/models/util/src/G4GeneralPhaseSpaceDecay.cc index b85ffbafda..68d24aa037 100644 --- a/source/processes/hadronic/models/util/src/G4GeneralPhaseSpaceDecay.cc +++ b/source/processes/hadronic/models/util/src/G4GeneralPhaseSpaceDecay.cc @@ -496,7 +496,7 @@ G4DecayProducts *G4GeneralPhaseSpaceDecay::ManyBodyDecayIt() } } while ( weight > G4UniformRand()); /* Loop checking, 02.11.2015, A.Ribon */ if (GetVerboseLevel()>1) { - G4cout << "Start calulation of daughters momentum vector "< G4UniformRand()); /* Loop checking, 02.11.2015, A.Ribon */ if (GetVerboseLevel()>1) { - G4cout << "Start calulation of daughters momentum vector "<= 0; index--) + for (index = nChannels - 1; index >= 0; --index) { G4VDecayChannel* theChannel = theDecayTable->GetDecayChannel(index); G4int nDaughters = theChannel->GetNumberOfDaughters(); @@ -211,8 +210,7 @@ G4KineticTrack::G4KineticTrack(const G4ParticleDefinition* aDefinition, theDaughterMass = new G4double[nDaughters]; theDaughterWidth = new G4double[nDaughters]; theDaughterIsShortLived = new G4bool[nDaughters]; - G4int n; - for (n = 0; n < nDaughters; n++) + for (G4int n = 0; n < nDaughters; ++n) { aDaughter = theChannel->GetDaughter(n); theDaughterMass[n] = aDaughter->GetPDGMass(); @@ -331,17 +329,17 @@ G4KineticTrack::G4KineticTrack(const G4ParticleDefinition* aDefinition, G4int nShortLived = 0; if ( theDaughterIsShortLived[0] ) { - nShortLived++; + ++nShortLived; } if ( theDaughterIsShortLived[1] ) { - nShortLived++; + ++nShortLived; G4SwapObj(theDaughterMass, theDaughterMass + 1); G4SwapObj(theDaughterWidth, theDaughterWidth + 1); } if ( theDaughterIsShortLived[2] ) { - nShortLived++; + ++nShortLived; G4SwapObj(theDaughterMass, theDaughterMass + 2); G4SwapObj(theDaughterWidth, theDaughterWidth + 2); } @@ -399,7 +397,7 @@ G4KineticTrack::G4KineticTrack(const G4ParticleDefinition* aDefinition, // DEBUG // //////////////// -// for (G4int y = nChannels - 1; y >= 0; y--) +// for (G4int y = nChannels - 1; y >= 0; --y) // { // G4cout << G4endl << theActualWidth[y]; // } @@ -459,10 +457,7 @@ G4KineticTrack& G4KineticTrack::operator=(const G4KineticTrack& right) if (theActualWidth != 0) delete [] theActualWidth; nChannels = right.GetnChannels(); theActualWidth = new G4double[nChannels]; - for ( G4int i = 0; i < nChannels; i++) - { - theActualWidth[i] = right.theActualWidth[i]; - } + for (G4int i = 0; i < nChannels; ++i) theActualWidth[i] = right.theActualWidth[i]; } return *this; } @@ -490,7 +485,7 @@ G4KineticTrackVector* G4KineticTrack::Decay() // /* G4int index1; - for (index1 = nChannels - 1; index1 >= 0; index1--) + for (index1 = nChannels - 1; index1 >= 0; --index1) G4cout << "DECAY Actual Width IND/ActualW " << index1 << " " << theActualWidth[index1] << G4endl; G4cout << "DECAY Actual Mass " << theActualMass << G4endl; */ @@ -536,10 +531,9 @@ G4KineticTrackVector* G4KineticTrack::Decay() do { - G4int index; G4double theSumActualWidth = 0.0; - G4double* theCumActualWidth = new G4double[nChannels]; - for (index = nChannels - 1; index >= 0; index--) + G4double* theCumActualWidth = new G4double[nChannels]{}; + for (G4int index = nChannels - 1; index >= 0; --index) { theSumActualWidth += theActualWidth[index]; theCumActualWidth[index] = theSumActualWidth; @@ -550,7 +544,7 @@ G4KineticTrackVector* G4KineticTrack::Decay() G4double r = theTotalActualWidth * G4UniformRand(); G4VDecayChannel* theDecayChannel(0); chosench=-1; - for (index = nChannels - 1; index >= 0; index--) + for (G4int index = nChannels - 1; index >= 0; --index) { if (r < theCumActualWidth[index]) { @@ -573,7 +567,7 @@ G4KineticTrackVector* G4KineticTrack::Decay() } theParentName = theDecayChannel->GetParentName(); theParentMass = this->GetActualMass(); - theBR = theActualWidth[index]; + theBR = theActualWidth[chosench]; // cout << "**BR*** DECAYNEW " << theBR << G4endl; theNumberOfDaughters = theDecayChannel->GetNumberOfDaughters(); theDaughtersName1 = ""; @@ -581,18 +575,18 @@ G4KineticTrackVector* G4KineticTrack::Decay() theDaughtersName3 = ""; theDaughtersName4 = ""; - for (G4int i=0; i < 4; i++) masses[i]=0.; + for (G4int i=0; i < 4; ++i) masses[i]=0.; G4int shortlivedDaughters[4]; G4int numberOfShortliveds(0); G4double SumLongLivedMass(0); - for (G4int aD=0; aD < theNumberOfDaughters ; aD++) + for (G4int aD=0; aD < theNumberOfDaughters ; ++aD) { const G4ParticleDefinition* aDaughter = theDecayChannel->GetDaughter(aD); masses[aD] = aDaughter->GetPDGMass(); if ( aDaughter->IsShortLived() ) { shortlivedDaughters[numberOfShortliveds]=aD; - numberOfShortliveds++; + ++numberOfShortliveds; } else { SumLongLivedMass += aDaughter->GetPDGMass(); } @@ -666,7 +660,7 @@ G4KineticTrackVector* G4KineticTrack::Decay() // If this is still not the case, but the max number of attempts has been reached, // then the subsequent call thePhaseSpaceDecayChannel.DecayIt() will throw an exception. G4double sumDaughterMasses = 0.0; - for (G4int i=0; i < 4; i++) sumDaughterMasses += masses[i]; + for (G4int i=0; i < 4; ++i) sumDaughterMasses += masses[i]; if ( theParentMass - sumDaughterMasses > 0.0 ) isChannelBelowThreshold = false; } while ( isChannelBelowThreshold && ++loopCounter < maxNumberOfLoops ); /* Loop checking, 16.08.2016, A.Ribon */ @@ -710,7 +704,7 @@ G4KineticTrackVector* G4KineticTrack::Decay() G4KineticTrackVector* theDecayProductList = new G4KineticTrackVector; G4int dEntries = theDecayProducts->entries(); const G4ParticleDefinition * aProduct = 0; - for (G4int i=dEntries; i > 0; i--) + for (G4int i=dEntries; i > 0; --i) { theDynamicParticle = theDecayProducts->PopProducts(); aProduct = theDynamicParticle->GetDefinition(); diff --git a/source/processes/hadronic/models/util/src/G4PolynomialPDF.cc b/source/processes/hadronic/models/util/src/G4PolynomialPDF.cc index e1c35fc4a1..b736e32145 100644 --- a/source/processes/hadronic/models/util/src/G4PolynomialPDF.cc +++ b/source/processes/hadronic/models/util/src/G4PolynomialPDF.cc @@ -87,7 +87,7 @@ void G4PolynomialPDF::SetDomain(G4double x1, G4double x2) { if(x2 <= x1) { if(fVerbose > 0) { - G4cout << "G4PolynomialPDF::SetDomain() WARNING: Invalide domain! " + G4cout << "G4PolynomialPDF::SetDomain() WARNING: Invalid domain! " << "(x1 = " << x1 << ", x2 = " << x2 << ")." << G4endl; } return; diff --git a/source/processes/hadronic/processes/History b/source/processes/hadronic/processes/History index 3a3c0f295d..13a5634726 100644 --- a/source/processes/hadronic/processes/History +++ b/source/processes/hadronic/processes/History @@ -15,7 +15,28 @@ code and to keep track of all tags. * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- -27 April 2020 V/ Grichine (hadr-proc-V10-06-01) +24 July 2020 Alberto Ribon (hadr-proc-V10-06-02) +------------------------------------------------ +- Removed the inelastic processes for heavy hadron - nucleus interactions: + G4DMesonMinusInelasticProcess, G4DMesonPlusInelasticProcess, + G4DMesonZeroInelasticProcess, G4AntiDMesonZeroInelasticProcess, + G4DsMesonMinusInelasticProcess, G4DsMesonPlusInelasticProcess, + G4BMesonMinusInelasticProcess, G4BMesonPlusInelasticProcess, + G4BMesonZeroInelasticProcess, G4AntiBMesonZeroInelasticProcess, + G4BsMesonZeroInelasticProcess, G4AntiBsMesonZeroInelasticProcess, + G4BcMesonMinusInelasticProcess, G4BcMesonPlusInelasticProcess, + G4LambdacPlusInelasticProcess, G4AntiLambdacPlusInelasticProcess, + G4LambdabInelasticProcess, G4AntiLambdabInelasticProcess, + G4XicPlusInelasticProcess, G4AntiXicPlusInelasticProcess, + G4XicZeroInelasticProcess, G4AntiXicZeroInelasticProcess, + G4XibMinusInelasticProcess, G4AntiXibMinusInelasticProcess, + G4XibZeroInelasticProcess, G4AntiXibZeroInelasticProcess, + G4OmegacZeroInelasticProcess, G4AntiOmegacZeroInelasticProcess, + G4OmegabMinusInelasticProcess, G4AntiOmegabMinusInelasticProcess. + These are no longer necessary because similar inelastic processes + are created by G4HadronicBuilder. + +27 April 2020 Vladimir Grichine (hadr-proc-V10-06-01) ---------------------------------------------------------- - G4MuNeutrinoNucleusProcess, G4ElNeutrinoNucleusProcess - extension to anti_nu_mu, nu_e, and anti_nu_e diff --git a/source/processes/hadronic/processes/include/G4AntiLambdacPlusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4AntiLambdacPlusInelasticProcess.hh deleted file mode 100644 index 5aaa0d7a11..0000000000 --- a/source/processes/hadronic/processes/include/G4AntiLambdacPlusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4AntiLambdacPlusInelasticProcess_h -#define G4AntiLambdacPlusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for anti_lambda_c+ Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4AntiLambdacPlusInelasticProcess : public G4HadronInelasticProcess { - public: - G4AntiLambdacPlusInelasticProcess( const G4String& processName = "anti_lamba_c+Inelastic" ); - ~G4AntiLambdacPlusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4AntiOmegabMinusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4AntiOmegabMinusInelasticProcess.hh deleted file mode 100644 index 29508fef4a..0000000000 --- a/source/processes/hadronic/processes/include/G4AntiOmegabMinusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4AntiOmegabMinusInelasticProcess_h -#define G4AntiOmegabMinusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for anti_omega_b- Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4AntiOmegabMinusInelasticProcess : public G4HadronInelasticProcess { - public: - G4AntiOmegabMinusInelasticProcess( const G4String& processName = "anti_omega_b-Inelastic" ); - ~G4AntiOmegabMinusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4AntiOmegacZeroInelasticProcess.hh b/source/processes/hadronic/processes/include/G4AntiOmegacZeroInelasticProcess.hh deleted file mode 100644 index 91a031c951..0000000000 --- a/source/processes/hadronic/processes/include/G4AntiOmegacZeroInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4AntiOmegacZeroInelasticProcess_h -#define G4AntiOmegacZeroInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for anti_omega_c0 Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4AntiOmegacZeroInelasticProcess : public G4HadronInelasticProcess { - public: - G4AntiOmegacZeroInelasticProcess( const G4String& processName = "anti_omega_c0Inelastic" ); - ~G4AntiOmegacZeroInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4AntiXibMinusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4AntiXibMinusInelasticProcess.hh deleted file mode 100644 index c63f07b93c..0000000000 --- a/source/processes/hadronic/processes/include/G4AntiXibMinusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4AntiXibMinusInelasticProcess_h -#define G4AntiXibMinusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for anti_xi_b- Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4AntiXibMinusInelasticProcess : public G4HadronInelasticProcess { - public: - G4AntiXibMinusInelasticProcess( const G4String& processName = "anti_xi_b-Inelastic" ); - ~G4AntiXibMinusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4AntiXibZeroInelasticProcess.hh b/source/processes/hadronic/processes/include/G4AntiXibZeroInelasticProcess.hh deleted file mode 100644 index 764cfdf7a8..0000000000 --- a/source/processes/hadronic/processes/include/G4AntiXibZeroInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4AntiXibZeroInelasticProcess_h -#define G4AntiXibZeroInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for anti_xi_b0 Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4AntiXibZeroInelasticProcess : public G4HadronInelasticProcess { - public: - G4AntiXibZeroInelasticProcess( const G4String& processName = "anti_xi_b0Inelastic" ); - ~G4AntiXibZeroInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4AntiXicPlusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4AntiXicPlusInelasticProcess.hh deleted file mode 100644 index b15496902a..0000000000 --- a/source/processes/hadronic/processes/include/G4AntiXicPlusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4AntiXicPlusInelasticProcess_h -#define G4AntiXicPlusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for anti_xi_c+ Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4AntiXicPlusInelasticProcess : public G4HadronInelasticProcess { - public: - G4AntiXicPlusInelasticProcess( const G4String& processName = "anti_xi_c+Inelastic" ); - ~G4AntiXicPlusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4AntiXicZeroInelasticProcess.hh b/source/processes/hadronic/processes/include/G4AntiXicZeroInelasticProcess.hh deleted file mode 100644 index 68399ea2f9..0000000000 --- a/source/processes/hadronic/processes/include/G4AntiXicZeroInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4AntiXicZeroInelasticProcess_h -#define G4AntiXicZeroInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for anti_xi_c0 Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4AntiXicZeroInelasticProcess : public G4HadronInelasticProcess { - public: - G4AntiXicZeroInelasticProcess( const G4String& processName = "anti_xi_c0Inelastic" ); - ~G4AntiXicZeroInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4BMesonPlusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4BMesonPlusInelasticProcess.hh deleted file mode 100644 index 5edc06f596..0000000000 --- a/source/processes/hadronic/processes/include/G4BMesonPlusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4BMesonPlusInelasticProcess_h -#define G4BMesonPlusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for B+ Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4BMesonPlusInelasticProcess : public G4HadronInelasticProcess { - public: - G4BMesonPlusInelasticProcess( const G4String& processName = "B+Inelastic" ); - ~G4BMesonPlusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4BMesonZeroInelasticProcess.hh b/source/processes/hadronic/processes/include/G4BMesonZeroInelasticProcess.hh deleted file mode 100644 index 9e66e9efb3..0000000000 --- a/source/processes/hadronic/processes/include/G4BMesonZeroInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4BMesonZeroInelasticProcess_h -#define G4BMesonZeroInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for B0 Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4BMesonZeroInelasticProcess : public G4HadronInelasticProcess { - public: - G4BMesonZeroInelasticProcess( const G4String& processName = "B0Inelastic" ); - ~G4BMesonZeroInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4BcMesonMinusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4BcMesonMinusInelasticProcess.hh deleted file mode 100644 index 1a02153aeb..0000000000 --- a/source/processes/hadronic/processes/include/G4BcMesonMinusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4BcMesonMinusInelasticProcess_h -#define G4BcMesonMinusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for Bc- Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4BcMesonMinusInelasticProcess : public G4HadronInelasticProcess { - public: - G4BcMesonMinusInelasticProcess( const G4String& processName = "Bc-Inelastic" ); - ~G4BcMesonMinusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4BcMesonPlusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4BcMesonPlusInelasticProcess.hh deleted file mode 100644 index fcab4f5fac..0000000000 --- a/source/processes/hadronic/processes/include/G4BcMesonPlusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4BcMesonPlusInelasticProcess_h -#define G4BcMesonPlusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for Bc+ Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4BcMesonPlusInelasticProcess : public G4HadronInelasticProcess { - public: - G4BcMesonPlusInelasticProcess( const G4String& processName = "Bc+Inelastic" ); - ~G4BcMesonPlusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4BsMesonZeroInelasticProcess.hh b/source/processes/hadronic/processes/include/G4BsMesonZeroInelasticProcess.hh deleted file mode 100644 index 4b5901f1fd..0000000000 --- a/source/processes/hadronic/processes/include/G4BsMesonZeroInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4BsMesonZeroInelasticProcess_h -#define G4BsMesonZeroInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for Bs0 Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4BsMesonZeroInelasticProcess : public G4HadronInelasticProcess { - public: - G4BsMesonZeroInelasticProcess( const G4String& processName = "Bs0Inelastic" ); - ~G4BsMesonZeroInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4DMesonMinusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4DMesonMinusInelasticProcess.hh deleted file mode 100644 index e5af0a59d8..0000000000 --- a/source/processes/hadronic/processes/include/G4DMesonMinusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4DMesonMinusInelasticProcess_h -#define G4DMesonMinusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for D- Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4DMesonMinusInelasticProcess : public G4HadronInelasticProcess { - public: - G4DMesonMinusInelasticProcess( const G4String& processName = "D-Inelastic" ); - ~G4DMesonMinusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4DMesonPlusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4DMesonPlusInelasticProcess.hh deleted file mode 100644 index bd2bdb1cca..0000000000 --- a/source/processes/hadronic/processes/include/G4DMesonPlusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4DMesonPlusInelasticProcess_h -#define G4DMesonPlusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for D+ Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4DMesonPlusInelasticProcess : public G4HadronInelasticProcess { - public: - G4DMesonPlusInelasticProcess( const G4String& processName = "D+Inelastic" ); - ~G4DMesonPlusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4DMesonZeroInelasticProcess.hh b/source/processes/hadronic/processes/include/G4DMesonZeroInelasticProcess.hh deleted file mode 100644 index fdf9130bce..0000000000 --- a/source/processes/hadronic/processes/include/G4DMesonZeroInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4DMesonZeroInelasticProcess_h -#define G4DMesonZeroInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for D0 Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4DMesonZeroInelasticProcess : public G4HadronInelasticProcess { - public: - G4DMesonZeroInelasticProcess( const G4String& processName = "D0Inelastic" ); - ~G4DMesonZeroInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4DsMesonMinusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4DsMesonMinusInelasticProcess.hh deleted file mode 100644 index 416f70d14c..0000000000 --- a/source/processes/hadronic/processes/include/G4DsMesonMinusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4DsMesonMinusInelasticProcess_h -#define G4DsMesonMinusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for Ds- Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4DsMesonMinusInelasticProcess : public G4HadronInelasticProcess { - public: - G4DsMesonMinusInelasticProcess( const G4String& processName = "Ds-Inelastic" ); - ~G4DsMesonMinusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4DsMesonPlusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4DsMesonPlusInelasticProcess.hh deleted file mode 100644 index df8a7da1d2..0000000000 --- a/source/processes/hadronic/processes/include/G4DsMesonPlusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4DsMesonPlusInelasticProcess_h -#define G4DsMesonPlusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for Ds+ Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4DsMesonPlusInelasticProcess : public G4HadronInelasticProcess { - public: - G4DsMesonPlusInelasticProcess( const G4String& processName = "Ds+Inelastic" ); - ~G4DsMesonPlusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4LambdabInelasticProcess.hh b/source/processes/hadronic/processes/include/G4LambdabInelasticProcess.hh deleted file mode 100644 index 4e8f49f189..0000000000 --- a/source/processes/hadronic/processes/include/G4LambdabInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4LambdabInelasticProcess_h -#define G4LambdabInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for lambda_b Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4LambdabInelasticProcess : public G4HadronInelasticProcess { - public: - G4LambdabInelasticProcess( const G4String& processName = "lamba_bInelastic" ); - ~G4LambdabInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4LambdacPlusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4LambdacPlusInelasticProcess.hh deleted file mode 100644 index eb81eab4e0..0000000000 --- a/source/processes/hadronic/processes/include/G4LambdacPlusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4LambdacPlusInelasticProcess_h -#define G4LambdacPlusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for lambda_c+ Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4LambdacPlusInelasticProcess : public G4HadronInelasticProcess { - public: - G4LambdacPlusInelasticProcess( const G4String& processName = "lamba_c+Inelastic" ); - ~G4LambdacPlusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4OmegabMinusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4OmegabMinusInelasticProcess.hh deleted file mode 100644 index c4768da3b5..0000000000 --- a/source/processes/hadronic/processes/include/G4OmegabMinusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4OmegabMinusInelasticProcess_h -#define G4OmegabMinusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for omega_b- Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4OmegabMinusInelasticProcess : public G4HadronInelasticProcess { - public: - G4OmegabMinusInelasticProcess( const G4String& processName = "omega_b-Inelastic" ); - ~G4OmegabMinusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4OmegacZeroInelasticProcess.hh b/source/processes/hadronic/processes/include/G4OmegacZeroInelasticProcess.hh deleted file mode 100644 index 50ef83f853..0000000000 --- a/source/processes/hadronic/processes/include/G4OmegacZeroInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4OmegacZeroInelasticProcess_h -#define G4OmegacZeroInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for omega_c0 Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4OmegacZeroInelasticProcess : public G4HadronInelasticProcess { - public: - G4OmegacZeroInelasticProcess( const G4String& processName = "omega_c0Inelastic" ); - ~G4OmegacZeroInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/include/G4UCNBoundaryProcessMessenger.hh b/source/processes/hadronic/processes/include/G4UCNBoundaryProcessMessenger.hh old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/processes/include/G4XibMinusInelasticProcess.hh b/source/processes/hadronic/processes/include/G4XibMinusInelasticProcess.hh deleted file mode 100644 index 0ad3c252e8..0000000000 --- a/source/processes/hadronic/processes/include/G4XibMinusInelasticProcess.hh +++ /dev/null @@ -1,46 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#ifndef G4XibMinusInelasticProcess_h -#define G4XibMinusInelasticProcess_h 1 - -// Author: Alberto Ribon (CERN) 2019 - -// Class Description -// Process for xi_b- Inelastic scattering -// Class Description - End - -#include "G4HadronInelasticProcess.hh" - - -class G4XibMinusInelasticProcess : public G4HadronInelasticProcess { - public: - G4XibMinusInelasticProcess( const G4String& processName = "xi_b-Inelastic" ); - ~G4XibMinusInelasticProcess() {} - virtual void ProcessDescription( std::ostream& outFile ) const; -}; - -#endif - diff --git a/source/processes/hadronic/processes/sources.cmake b/source/processes/hadronic/processes/sources.cmake index 9c37ace73e..92e7ffc372 100644 --- a/source/processes/hadronic/processes/sources.cmake +++ b/source/processes/hadronic/processes/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_proc # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,78 +14,25 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/scoring/include) -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/hits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/detector/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_proc HEADERS G4AlphaInelasticProcess.hh G4AntiAlphaInelasticProcess.hh - G4AntiBMesonZeroInelasticProcess.hh - G4AntiBsMesonZeroInelasticProcess.hh G4AntiDeuteronInelasticProcess.hh - G4AntiDMesonZeroInelasticProcess.hh G4AntiHe3InelasticProcess.hh - G4AntiLambdabInelasticProcess.hh - G4AntiLambdacPlusInelasticProcess.hh G4AntiLambdaInelasticProcess.hh G4AntiNeutronInelasticProcess.hh - G4AntiOmegabMinusInelasticProcess.hh - G4AntiOmegacZeroInelasticProcess.hh G4AntiOmegaMinusInelasticProcess.hh G4AntiProtonInelasticProcess.hh G4AntiSigmaMinusInelasticProcess.hh G4AntiSigmaPlusInelasticProcess.hh G4AntiTritonInelasticProcess.hh - G4AntiXibMinusInelasticProcess.hh - G4AntiXibZeroInelasticProcess.hh - G4AntiXicPlusInelasticProcess.hh - G4AntiXicZeroInelasticProcess.hh G4AntiXiMinusInelasticProcess.hh G4AntiXiZeroInelasticProcess.hh - G4BcMesonMinusInelasticProcess.hh - G4BcMesonPlusInelasticProcess.hh - G4BMesonMinusInelasticProcess.hh - G4BMesonPlusInelasticProcess.hh - G4BMesonZeroInelasticProcess.hh - G4BsMesonZeroInelasticProcess.hh G4DeuteronInelasticProcess.hh - G4DMesonMinusInelasticProcess.hh - G4DMesonPlusInelasticProcess.hh - G4DMesonZeroInelasticProcess.hh - G4DsMesonMinusInelasticProcess.hh - G4DsMesonPlusInelasticProcess.hh G4ElectronNuclearProcess.hh G4ElNeutrinoNucleusProcess.hh G4HadronCaptureProcess.hh @@ -97,15 +44,11 @@ GEANT4_DEFINE_MODULE(NAME G4hadronic_proc G4KaonPlusInelasticProcess.hh G4KaonZeroLInelasticProcess.hh G4KaonZeroSInelasticProcess.hh - G4LambdabInelasticProcess.hh - G4LambdacPlusInelasticProcess.hh G4LambdaInelasticProcess.hh G4MuNeutrinoNucleusProcess.hh G4MuonNuclearProcess.hh G4NeutrinoElectronProcess.hh G4NeutronInelasticProcess.hh - G4OmegabMinusInelasticProcess.hh - G4OmegacZeroInelasticProcess.hh G4OmegaMinusInelasticProcess.hh G4PhotoCaptureProcess.hh G4PhotoFissionProcess.hh @@ -123,49 +66,23 @@ GEANT4_DEFINE_MODULE(NAME G4hadronic_proc G4UCNLoss.hh G4UCNAbsorption.hh G4UCNMultiScattering.hh - G4XibMinusInelasticProcess.hh - G4XibZeroInelasticProcess.hh - G4XicPlusInelasticProcess.hh - G4XicZeroInelasticProcess.hh G4XiMinusInelasticProcess.hh G4XiZeroInelasticProcess.hh SOURCES G4AlphaInelasticProcess.cc G4AntiAlphaInelasticProcess.cc - G4AntiBMesonZeroInelasticProcess.cc - G4AntiBsMesonZeroInelasticProcess.cc G4AntiDeuteronInelasticProcess.cc - G4AntiDMesonZeroInelasticProcess.cc G4AntiHe3InelasticProcess.cc - G4AntiLambdabInelasticProcess.cc - G4AntiLambdacPlusInelasticProcess.cc G4AntiLambdaInelasticProcess.cc G4AntiNeutronInelasticProcess.cc - G4AntiOmegabMinusInelasticProcess.cc - G4AntiOmegacZeroInelasticProcess.cc G4AntiOmegaMinusInelasticProcess.cc G4AntiProtonInelasticProcess.cc G4AntiSigmaMinusInelasticProcess.cc G4AntiSigmaPlusInelasticProcess.cc G4AntiTritonInelasticProcess.cc - G4AntiXibMinusInelasticProcess.cc - G4AntiXibZeroInelasticProcess.cc - G4AntiXicPlusInelasticProcess.cc - G4AntiXicZeroInelasticProcess.cc G4AntiXiMinusInelasticProcess.cc G4AntiXiZeroInelasticProcess.cc - G4BcMesonMinusInelasticProcess.cc - G4BcMesonPlusInelasticProcess.cc - G4BMesonMinusInelasticProcess.cc - G4BMesonPlusInelasticProcess.cc - G4BMesonZeroInelasticProcess.cc - G4BsMesonZeroInelasticProcess.cc G4DeuteronInelasticProcess.cc - G4DMesonMinusInelasticProcess.cc - G4DMesonPlusInelasticProcess.cc - G4DMesonZeroInelasticProcess.cc - G4DsMesonMinusInelasticProcess.cc - G4DsMesonPlusInelasticProcess.cc G4ElNeutrinoNucleusProcess.cc G4ElectronNuclearProcess.cc G4HadronCaptureProcess.cc @@ -177,15 +94,11 @@ GEANT4_DEFINE_MODULE(NAME G4hadronic_proc G4KaonPlusInelasticProcess.cc G4KaonZeroLInelasticProcess.cc G4KaonZeroSInelasticProcess.cc - G4LambdabInelasticProcess.cc - G4LambdacPlusInelasticProcess.cc G4LambdaInelasticProcess.cc G4MuNeutrinoNucleusProcess.cc G4MuonNuclearProcess.cc G4NeutrinoElectronProcess.cc G4NeutronInelasticProcess.cc - G4OmegabMinusInelasticProcess.cc - G4OmegacZeroInelasticProcess.cc G4OmegaMinusInelasticProcess.cc G4PhotoCaptureProcess.cc G4PhotoFissionProcess.cc @@ -202,10 +115,6 @@ GEANT4_DEFINE_MODULE(NAME G4hadronic_proc G4UCNLoss.cc G4UCNAbsorption.cc G4UCNMultiScattering.cc - G4XibMinusInelasticProcess.cc - G4XibZeroInelasticProcess.cc - G4XicPlusInelasticProcess.cc - G4XicZeroInelasticProcess.cc G4XiMinusInelasticProcess.cc G4XiZeroInelasticProcess.cc GRANULAR_DEPENDENCIES diff --git a/source/processes/hadronic/processes/src/G4AntiBMesonZeroInelasticProcess.cc b/source/processes/hadronic/processes/src/G4AntiBMesonZeroInelasticProcess.cc deleted file mode 100644 index 20d9a11108..0000000000 --- a/source/processes/hadronic/processes/src/G4AntiBMesonZeroInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4AntiBMesonZeroInelasticProcess.hh" -#include "G4AntiBMesonZero.hh" -#include - - -G4AntiBMesonZeroInelasticProcess::G4AntiBMesonZeroInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4AntiBMesonZero::Definition() ) {} - - -void G4AntiBMesonZeroInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4AntiBMesonZeroInelasticProcess handles the inelastic scattering of\n" - << "anti_B0 from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4AntiBsMesonZeroInelasticProcess.cc b/source/processes/hadronic/processes/src/G4AntiBsMesonZeroInelasticProcess.cc deleted file mode 100644 index a1958cff81..0000000000 --- a/source/processes/hadronic/processes/src/G4AntiBsMesonZeroInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4AntiBsMesonZeroInelasticProcess.hh" -#include "G4AntiBsMesonZero.hh" -#include - - -G4AntiBsMesonZeroInelasticProcess::G4AntiBsMesonZeroInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4AntiBsMesonZero::Definition() ) {} - - -void G4AntiBsMesonZeroInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4AntiBsMesonZeroInelasticProcess handles the inelastic scattering of\n" - << "anti_Bs0 from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4AntiDMesonZeroInelasticProcess.cc b/source/processes/hadronic/processes/src/G4AntiDMesonZeroInelasticProcess.cc deleted file mode 100644 index a4afcfaa7c..0000000000 --- a/source/processes/hadronic/processes/src/G4AntiDMesonZeroInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4AntiDMesonZeroInelasticProcess.hh" -#include "G4AntiDMesonZero.hh" -#include - - -G4AntiDMesonZeroInelasticProcess::G4AntiDMesonZeroInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4AntiDMesonZero::Definition() ) {} - - -void G4AntiDMesonZeroInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4AntiDMesonZeroInelasticProcess handles the inelastic scattering of\n" - << "anti_D0 from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4AntiLambdacPlusInelasticProcess.cc b/source/processes/hadronic/processes/src/G4AntiLambdacPlusInelasticProcess.cc deleted file mode 100644 index 55e1fc69f4..0000000000 --- a/source/processes/hadronic/processes/src/G4AntiLambdacPlusInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4AntiLambdacPlusInelasticProcess.hh" -#include "G4AntiLambdacPlus.hh" -#include - - -G4AntiLambdacPlusInelasticProcess::G4AntiLambdacPlusInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4AntiLambdacPlus::Definition() ) {} - - -void G4AntiLambdacPlusInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4AntiLambdacPlusInelasticProcess handles the inelastic scattering of\n" - << "anti_lambda_c+ from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4AntiOmegabMinusInelasticProcess.cc b/source/processes/hadronic/processes/src/G4AntiOmegabMinusInelasticProcess.cc deleted file mode 100644 index c0d76b9b6e..0000000000 --- a/source/processes/hadronic/processes/src/G4AntiOmegabMinusInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4AntiOmegabMinusInelasticProcess.hh" -#include "G4AntiOmegabMinus.hh" -#include - - -G4AntiOmegabMinusInelasticProcess::G4AntiOmegabMinusInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4AntiOmegabMinus::Definition() ) {} - - -void G4AntiOmegabMinusInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4AntiOmegabMinusInelasticProcess handles the inelastic scattering of\n" - << "anti_omega_b- from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4AntiXibMinusInelasticProcess.cc b/source/processes/hadronic/processes/src/G4AntiXibMinusInelasticProcess.cc deleted file mode 100644 index de647a267d..0000000000 --- a/source/processes/hadronic/processes/src/G4AntiXibMinusInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4AntiXibMinusInelasticProcess.hh" -#include "G4AntiXibMinus.hh" -#include - - -G4AntiXibMinusInelasticProcess::G4AntiXibMinusInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4AntiXibMinus::Definition() ) {} - - -void G4AntiXibMinusInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4AntiXibMinusInelasticProcess handles the inelastic scattering of\n" - << "anti_xi_b- from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4AntiXibZeroInelasticProcess.cc b/source/processes/hadronic/processes/src/G4AntiXibZeroInelasticProcess.cc deleted file mode 100644 index 275bcb7b67..0000000000 --- a/source/processes/hadronic/processes/src/G4AntiXibZeroInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4AntiXibZeroInelasticProcess.hh" -#include "G4AntiXibZero.hh" -#include - - -G4AntiXibZeroInelasticProcess::G4AntiXibZeroInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4AntiXibZero::Definition() ) {} - - -void G4AntiXibZeroInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4AntiXibZeroInelasticProcess handles the inelastic scattering of\n" - << "anti_xi_b0 from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4AntiXicPlusInelasticProcess.cc b/source/processes/hadronic/processes/src/G4AntiXicPlusInelasticProcess.cc deleted file mode 100644 index e525f5dc39..0000000000 --- a/source/processes/hadronic/processes/src/G4AntiXicPlusInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4AntiXicPlusInelasticProcess.hh" -#include "G4AntiXicPlus.hh" -#include - - -G4AntiXicPlusInelasticProcess::G4AntiXicPlusInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4AntiXicPlus::Definition() ) {} - - -void G4AntiXicPlusInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4AntiXicPlusInelasticProcess handles the inelastic scattering of\n" - << "anti_xi_c+ from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4AntiXicZeroInelasticProcess.cc b/source/processes/hadronic/processes/src/G4AntiXicZeroInelasticProcess.cc deleted file mode 100644 index df473c2316..0000000000 --- a/source/processes/hadronic/processes/src/G4AntiXicZeroInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4AntiXicZeroInelasticProcess.hh" -#include "G4AntiXicZero.hh" -#include - - -G4AntiXicZeroInelasticProcess::G4AntiXicZeroInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4AntiXicZero::Definition() ) {} - - -void G4AntiXicZeroInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4AntiXicZeroInelasticProcess handles the inelastic scattering of\n" - << "anti_xi_c0 from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4BMesonZeroInelasticProcess.cc b/source/processes/hadronic/processes/src/G4BMesonZeroInelasticProcess.cc deleted file mode 100644 index b571e6c086..0000000000 --- a/source/processes/hadronic/processes/src/G4BMesonZeroInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4BMesonZeroInelasticProcess.hh" -#include "G4BMesonZero.hh" -#include - - -G4BMesonZeroInelasticProcess::G4BMesonZeroInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4BMesonZero::Definition() ) {} - - -void G4BMesonZeroInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4BMesonZeroInelasticProcess handles the inelastic scattering of\n" - << "B0 from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4BcMesonMinusInelasticProcess.cc b/source/processes/hadronic/processes/src/G4BcMesonMinusInelasticProcess.cc deleted file mode 100644 index b808e9d7f6..0000000000 --- a/source/processes/hadronic/processes/src/G4BcMesonMinusInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4BcMesonMinusInelasticProcess.hh" -#include "G4BcMesonMinus.hh" -#include - - -G4BcMesonMinusInelasticProcess::G4BcMesonMinusInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4BcMesonMinus::Definition() ) {} - - -void G4BcMesonMinusInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4BcMesonMinusInelasticProcess handles the inelastic scattering of\n" - << "Bc- from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4BcMesonPlusInelasticProcess.cc b/source/processes/hadronic/processes/src/G4BcMesonPlusInelasticProcess.cc deleted file mode 100644 index 9f02e56302..0000000000 --- a/source/processes/hadronic/processes/src/G4BcMesonPlusInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4BcMesonPlusInelasticProcess.hh" -#include "G4BcMesonPlus.hh" -#include - - -G4BcMesonPlusInelasticProcess::G4BcMesonPlusInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4BcMesonPlus::Definition() ) {} - - -void G4BcMesonPlusInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4BcMesonPlusInelasticProcess handles the inelastic scattering of\n" - << "Bc+ from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4BsMesonZeroInelasticProcess.cc b/source/processes/hadronic/processes/src/G4BsMesonZeroInelasticProcess.cc deleted file mode 100644 index 10ce10de6e..0000000000 --- a/source/processes/hadronic/processes/src/G4BsMesonZeroInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4BsMesonZeroInelasticProcess.hh" -#include "G4BsMesonZero.hh" -#include - - -G4BsMesonZeroInelasticProcess::G4BsMesonZeroInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4BsMesonZero::Definition() ) {} - - -void G4BsMesonZeroInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4BsMesonZeroInelasticProcess handles the inelastic scattering of\n" - << "Bs0 from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4DMesonMinusInelasticProcess.cc b/source/processes/hadronic/processes/src/G4DMesonMinusInelasticProcess.cc deleted file mode 100644 index 3af31f26a1..0000000000 --- a/source/processes/hadronic/processes/src/G4DMesonMinusInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4DMesonMinusInelasticProcess.hh" -#include "G4DMesonMinus.hh" -#include - - -G4DMesonMinusInelasticProcess::G4DMesonMinusInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4DMesonMinus::Definition() ) {} - - -void G4DMesonMinusInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4DMesonMinusInelasticProcess handles the inelastic scattering of\n" - << "D- from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4DMesonZeroInelasticProcess.cc b/source/processes/hadronic/processes/src/G4DMesonZeroInelasticProcess.cc deleted file mode 100644 index f69d47d290..0000000000 --- a/source/processes/hadronic/processes/src/G4DMesonZeroInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4DMesonZeroInelasticProcess.hh" -#include "G4DMesonZero.hh" -#include - - -G4DMesonZeroInelasticProcess::G4DMesonZeroInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4DMesonZero::Definition() ) {} - - -void G4DMesonZeroInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4DMesonZeroInelasticProcess handles the inelastic scattering of\n" - << "D0 from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4DsMesonMinusInelasticProcess.cc b/source/processes/hadronic/processes/src/G4DsMesonMinusInelasticProcess.cc deleted file mode 100644 index 00c8234c49..0000000000 --- a/source/processes/hadronic/processes/src/G4DsMesonMinusInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4DsMesonMinusInelasticProcess.hh" -#include "G4DsMesonMinus.hh" -#include - - -G4DsMesonMinusInelasticProcess::G4DsMesonMinusInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4DsMesonMinus::Definition() ) {} - - -void G4DsMesonMinusInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4DsMesonMinusInelasticProcess handles the inelastic scattering of\n" - << "Ds- from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4DsMesonPlusInelasticProcess.cc b/source/processes/hadronic/processes/src/G4DsMesonPlusInelasticProcess.cc deleted file mode 100644 index 1febcdfde4..0000000000 --- a/source/processes/hadronic/processes/src/G4DsMesonPlusInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4DsMesonPlusInelasticProcess.hh" -#include "G4DsMesonPlus.hh" -#include - - -G4DsMesonPlusInelasticProcess::G4DsMesonPlusInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4DsMesonPlus::Definition() ) {} - - -void G4DsMesonPlusInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4DsMesonPlusInelasticProcess handles the inelastic scattering of\n" - << "Ds+ from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4LambdabInelasticProcess.cc b/source/processes/hadronic/processes/src/G4LambdabInelasticProcess.cc deleted file mode 100644 index c279f4ccc5..0000000000 --- a/source/processes/hadronic/processes/src/G4LambdabInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4LambdabInelasticProcess.hh" -#include "G4Lambdab.hh" -#include - - -G4LambdabInelasticProcess::G4LambdabInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4Lambdab::Definition() ) {} - - -void G4LambdabInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4LambdabInelasticProcess handles the inelastic scattering of\n" - << "lambda_b from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4LambdacPlusInelasticProcess.cc b/source/processes/hadronic/processes/src/G4LambdacPlusInelasticProcess.cc deleted file mode 100644 index ec033fb4f8..0000000000 --- a/source/processes/hadronic/processes/src/G4LambdacPlusInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4LambdacPlusInelasticProcess.hh" -#include "G4LambdacPlus.hh" -#include - - -G4LambdacPlusInelasticProcess::G4LambdacPlusInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4LambdacPlus::Definition() ) {} - - -void G4LambdacPlusInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4LambdacPlusInelasticProcess handles the inelastic scattering of\n" - << "lambda_c+ from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4OmegabMinusInelasticProcess.cc b/source/processes/hadronic/processes/src/G4OmegabMinusInelasticProcess.cc deleted file mode 100644 index 41dbc2ac74..0000000000 --- a/source/processes/hadronic/processes/src/G4OmegabMinusInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4OmegabMinusInelasticProcess.hh" -#include "G4OmegabMinus.hh" -#include - - -G4OmegabMinusInelasticProcess::G4OmegabMinusInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4OmegabMinus::Definition() ) {} - - -void G4OmegabMinusInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4OmegabMinusInelasticProcess handles the inelastic scattering of\n" - << "omega_b- from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4OmegacZeroInelasticProcess.cc b/source/processes/hadronic/processes/src/G4OmegacZeroInelasticProcess.cc deleted file mode 100644 index 4505a11406..0000000000 --- a/source/processes/hadronic/processes/src/G4OmegacZeroInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4OmegacZeroInelasticProcess.hh" -#include "G4OmegacZero.hh" -#include - - -G4OmegacZeroInelasticProcess::G4OmegacZeroInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4OmegacZero::Definition() ) {} - - -void G4OmegacZeroInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4OmegacZeroInelasticProcess handles the inelastic scattering of\n" - << "omega_c0 from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4UCNBoundaryProcessMessenger.cc b/source/processes/hadronic/processes/src/G4UCNBoundaryProcessMessenger.cc old mode 100755 new mode 100644 diff --git a/source/processes/hadronic/processes/src/G4XibMinusInelasticProcess.cc b/source/processes/hadronic/processes/src/G4XibMinusInelasticProcess.cc deleted file mode 100644 index 7d0f379b64..0000000000 --- a/source/processes/hadronic/processes/src/G4XibMinusInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4XibMinusInelasticProcess.hh" -#include "G4XibMinus.hh" -#include - - -G4XibMinusInelasticProcess::G4XibMinusInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4XibMinus::Definition() ) {} - - -void G4XibMinusInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4XibMinusInelasticProcess handles the inelastic scattering of\n" - << "xi_b- from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4XibZeroInelasticProcess.cc b/source/processes/hadronic/processes/src/G4XibZeroInelasticProcess.cc deleted file mode 100644 index 42a52d2fb0..0000000000 --- a/source/processes/hadronic/processes/src/G4XibZeroInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4XibZeroInelasticProcess.hh" -#include "G4XibZero.hh" -#include - - -G4XibZeroInelasticProcess::G4XibZeroInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4XibZero::Definition() ) {} - - -void G4XibZeroInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4XibZeroInelasticProcess handles the inelastic scattering of\n" - << "xi_b0 from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4XicPlusInelasticProcess.cc b/source/processes/hadronic/processes/src/G4XicPlusInelasticProcess.cc deleted file mode 100644 index 8d1fef499b..0000000000 --- a/source/processes/hadronic/processes/src/G4XicPlusInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4XicPlusInelasticProcess.hh" -#include "G4XicPlus.hh" -#include - - -G4XicPlusInelasticProcess::G4XicPlusInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4XicPlus::Definition() ) {} - - -void G4XicPlusInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4XicPlusInelasticProcess handles the inelastic scattering of\n" - << "xi_c+ from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/processes/src/G4XicZeroInelasticProcess.cc b/source/processes/hadronic/processes/src/G4XicZeroInelasticProcess.cc deleted file mode 100644 index a71c319e72..0000000000 --- a/source/processes/hadronic/processes/src/G4XicZeroInelasticProcess.cc +++ /dev/null @@ -1,40 +0,0 @@ -// -// ******************************************************************** -// * License and Disclaimer * -// * * -// * The Geant4 software is copyright of the Copyright Holders of * -// * the Geant4 Collaboration. It is provided under the terms and * -// * conditions of the Geant4 Software License, included in the file * -// * LICENSE and available at http://cern.ch/geant4/license . These * -// * include a list of copyright holders. * -// * * -// * Neither the authors of this software system, nor their employing * -// * institutes,nor the agencies providing financial support for this * -// * work make any representation or warranty, express or implied, * -// * regarding this software system or assume any liability for its * -// * use. Please see the license in the file LICENSE and URL above * -// * for the full disclaimer and the limitation of liability. * -// * * -// * This code implementation is the result of the scientific and * -// * technical work of the GEANT4 collaboration. * -// * By using, copying, modifying or distributing the software (or * -// * any work based on the software) you agree to acknowledge its * -// * use in resulting scientific publications, and indicate your * -// * acceptance of all terms of the Geant4 Software license. * -// ******************************************************************** -// -#include "G4XicZeroInelasticProcess.hh" -#include "G4XicZero.hh" -#include - - -G4XicZeroInelasticProcess::G4XicZeroInelasticProcess( const G4String& name ) - :G4HadronInelasticProcess( name, G4XicZero::Definition() ) {} - - -void G4XicZeroInelasticProcess::ProcessDescription( std::ostream& outFile ) const { - outFile << "G4XicZeroInelasticProcess handles the inelastic scattering of\n" - << "xi_c0 from nuclei by invoking one or more hadronic models and one\n" - << "or more hadronic cross section sets.\n"; -} - diff --git a/source/processes/hadronic/stopping/History b/source/processes/hadronic/stopping/History index 61047a9a79..cfec7684e6 100644 --- a/source/processes/hadronic/stopping/History +++ b/source/processes/hadronic/stopping/History @@ -408,7 +408,7 @@ Requires co-working base tag hadr-man-V09-05-16 ------------------------------------------------------------ 23 May 2012 Vladimir Ivanchenko (hadr-stopping-V09-05-08) ------------------------------------------------------------ -- G4EmCaptureCascade - fixed initilisation of mesoatomic K-shelll energies +- G4EmCaptureCascade - fixed initialisation of mesoatomic K-shelll energies 22 May 2012 Michael Kelsey (hadr-stopping-V09-05-07) ---------------------------------------------------- diff --git a/source/processes/hadronic/stopping/sources.cmake b/source/processes/hadronic/stopping/sources.cmake index dd50cc2488..2cadbc55e7 100644 --- a/source/processes/hadronic/stopping/sources.cmake +++ b/source/processes/hadronic/stopping/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_stop # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,51 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/cross_sections/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fermi_breakup/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/fission/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/gem_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/handler/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/multifragmentation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/photon_evaporation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/de_excitation/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/binary_cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/im_r_matrix/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/cascade/cascade/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/diffraction/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/hadronization/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/parton_string/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/theo_high_energy/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/pre_equilibrium/exciton_model/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/models/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/hadronic/util/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_stop HEADERS G4AntiNeutronAnnihilationAtRest.hh diff --git a/source/processes/hadronic/util/History b/source/processes/hadronic/util/History index 2a95f20fc2..491a028189 100644 --- a/source/processes/hadronic/util/History +++ b/source/processes/hadronic/util/History @@ -14,6 +14,33 @@ code and to keep track of all tags. * Please list in reverse chronological order (last date on top) --------------------------------------------------------------- +05 November 2020 Alberto Ribon (hadr-util-V10-06-08) +-------------------------------------------------------- +- G4HadronicParameters, G4HadronicParametersMessenger : added boolean + switch that allows to apply the Cosmic Ray (CR) coalescence algorithm + to the secondaries produced by a string model. + This can be useful in particular for Cosmic Ray applications. + By default it is disabled. + +27 October 2020 Gunter Folger (hadr-util-V10-06-07) +-------------------------------------------------------- +- disable G4HadSignalHandler + +02 September 2020 Vladimir Ivanchenko (hadr-util-V10-06-06) +-------------------------------------------------------- +- G4HadronicParameters : added disable b-, c- particles by default + +05 August 2020 Alberto Ribon (hadr-util-V10-06-05) +-------------------------------------------------------- +- G4HadronicParametersMessenger : added new macro command to set + the max hadronic energy (required by DAMPE/HERD Collaboration). + +29 July 2020 Vladimir Ivanchenko (hadr-util-V10-06-04) +-------------------------------------------------------- +- G4HadronicParameters : added Get/Set methods for cross section factors + separately for nucleons, pions, other hadrons, and leptons; added + high energy limit for low-energy physics + 13 May 2020 Vladimir Ivanchenko (hadr-util-V10-06-03) -------------------------------------------------------- - G4HadronicParameters : added Get/Set methods to enable b-, c- particles diff --git a/source/processes/hadronic/util/include/G4HadSignalHandler.hh b/source/processes/hadronic/util/include/G4HadSignalHandler.hh index ae91a18939..3e1d4860d1 100644 --- a/source/processes/hadronic/util/include/G4HadSignalHandler.hh +++ b/source/processes/hadronic/util/include/G4HadSignalHandler.hh @@ -26,8 +26,8 @@ #ifndef G4HadSignalHandler_hh #define G4HadSignalHandler_hh -#ifndef G4HadSignalHandler_off - +//#ifndef G4HadSignalHandler_off +#if 0 #include #include #include diff --git a/source/processes/hadronic/util/include/G4HadronicParameters.hh b/source/processes/hadronic/util/include/G4HadronicParameters.hh index 420f25cd8f..e3726e5049 100644 --- a/source/processes/hadronic/util/include/G4HadronicParameters.hh +++ b/source/processes/hadronic/util/include/G4HadronicParameters.hh @@ -75,17 +75,54 @@ class G4HadronicParameters { // transition region between the two strings models - the Quark Gluon String (QGS) // model and the Fritiof (FTF) model. + G4double EnergyThresholdForHeavyHadrons() const; + void SetEnergyThresholdForHeavyHadrons( G4double val ); + // if max kinetic energy is below this limit EM and hadronic physics is not + // instantiated for hyperons, anti-hyperons, anti light ions, b-, c- particles + + G4double XSFactorNucleonInelastic() const; + void SetXSFactorNucleonInelastic( G4double val ); + G4double XSFactorNucleonElastic() const; + void SetXSFactorNucleonElastic( G4double val ); + // cross section factor for protons and neutrons + + G4double XSFactorPionInelastic() const; + void SetXSFactorPionInelastic( G4double val ); + G4double XSFactorPionElastic() const; + void SetXSFactorPionElastic( G4double val ); + // cross section factor for pions + + G4double XSFactorHadronInelastic() const; + void SetXSFactorHadronInelastic( G4double val ); + G4double XSFactorHadronElastic() const; + void SetXSFactorHadronElastic( G4double val ); + // cross section factor for other hadrons and ions + + G4double XSFactorEM() const; + void SetXSFactorEM( G4double val ); + // cross section factor for gamma and leptons + G4bool EnableBCParticles() const; void SetEnableBCParticles( G4bool val ); // Baryons and mesons with c- and b- quarks may be enabled/disabled // This flag is used both by EM and hadronic physics constructors + G4bool ApplyFactorXS() const; + void SetApplyFactorXS( G4bool val ); + // Flag enabling cross section factor definition + G4int GetVerboseLevel() const; void SetVerboseLevel( const G4int val ); // Getter/Setter of the general verbosity level for hadronics. + G4bool EnableCRCoalescence() const; + void SetEnableCRCoalescence( G4bool val ); + // Boolean switch that allows to apply the Cosmic Ray (CR) coalescence algorithm + // to the secondaries produced by a string model. By default it is disabled. + private: G4HadronicParameters(); + G4bool IsLocked() const; static G4HadronicParameters* sInstance; @@ -100,8 +137,20 @@ class G4HadronicParameters { G4double fMaxEnergyTransitionFTF_Cascade; G4double fMinEnergyTransitionQGS_FTF; G4double fMaxEnergyTransitionQGS_FTF; - G4int fVerboseLevel; - G4bool fEnableBC; + G4double fEnergyThresholdForHeavyHadrons; + G4double fXSFactorNucleonInelastic = 1.0; + G4double fXSFactorPionInelastic = 1.0; + G4double fXSFactorHadronInelastic = 1.0; + G4double fXSFactorNucleonElastic = 1.0; + G4double fXSFactorPionElastic = 1.0; + G4double fXSFactorHadronElastic = 1.0; + G4double fXSFactorEM = 1.0; + G4double fXSFactorLimit = 0.2; + + G4int fVerboseLevel = 1; + G4bool fEnableBC = false; + G4bool fApplyFactorXS = false; + G4bool fEnableCRCoalescence = false; }; inline G4double G4HadronicParameters::GetMaxEnergy() const { @@ -123,6 +172,38 @@ inline G4double G4HadronicParameters::GetMaxEnergyTransitionQGS_FTF() const { return fMaxEnergyTransitionQGS_FTF; } +inline G4double G4HadronicParameters::EnergyThresholdForHeavyHadrons() const { + return fEnergyThresholdForHeavyHadrons; +} + +inline G4double G4HadronicParameters::XSFactorNucleonInelastic() const { + return fXSFactorNucleonInelastic; +} + +inline G4double G4HadronicParameters::XSFactorNucleonElastic() const { + return fXSFactorNucleonElastic; +} + +inline G4double G4HadronicParameters::XSFactorPionInelastic() const { + return fXSFactorPionInelastic; +} + +inline G4double G4HadronicParameters::XSFactorPionElastic() const { + return fXSFactorPionElastic; +} + +inline G4double G4HadronicParameters::XSFactorHadronInelastic() const { + return fXSFactorHadronInelastic; +} + +inline G4double G4HadronicParameters::XSFactorHadronElastic() const { + return fXSFactorHadronElastic; +} + +inline G4double G4HadronicParameters::XSFactorEM() const { + return fXSFactorEM; +} + inline G4int G4HadronicParameters::GetVerboseLevel() const { return fVerboseLevel; } @@ -131,4 +212,12 @@ inline G4bool G4HadronicParameters::EnableBCParticles() const { return fEnableBC; } +inline G4bool G4HadronicParameters::ApplyFactorXS() const { + return fApplyFactorXS; +} + +inline G4bool G4HadronicParameters::EnableCRCoalescence() const { + return fEnableCRCoalescence; +} + #endif diff --git a/source/processes/hadronic/util/include/G4HadronicParametersMessenger.hh b/source/processes/hadronic/util/include/G4HadronicParametersMessenger.hh index 44fbea1622..f894685f8d 100644 --- a/source/processes/hadronic/util/include/G4HadronicParametersMessenger.hh +++ b/source/processes/hadronic/util/include/G4HadronicParametersMessenger.hh @@ -39,6 +39,8 @@ class G4UIdirectory; class G4UIcommand; class G4UIcmdWithAnInteger; +class G4UIcmdWithADoubleAndUnit; +class G4UIcmdWithABool; class G4HadronicParameters; @@ -51,6 +53,8 @@ class G4HadronicParametersMessenger : public G4UImessenger { G4HadronicParameters* theHadronicParameters; G4UIdirectory* theDirectory; G4UIcmdWithAnInteger* theVerboseCmd; + G4UIcmdWithADoubleAndUnit* theMaxEnergyCmd; + G4UIcmdWithABool* theCRCoalescenceCmd; }; #endif diff --git a/source/processes/hadronic/util/sources.cmake b/source/processes/hadronic/util/sources.cmake index dea647e264..b9834d0734 100644 --- a/source/processes/hadronic/util/sources.cmake +++ b/source/processes/hadronic/util/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4hadronic.G4hadronic_util # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,29 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/ions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/mesons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/leptons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4hadronic_util HEADERS DumpFrame.hh diff --git a/source/processes/hadronic/util/src/G4HadSignalHandler.cc b/source/processes/hadronic/util/src/G4HadSignalHandler.cc index 1f48ef14a6..06e38a6cab 100644 --- a/source/processes/hadronic/util/src/G4HadSignalHandler.cc +++ b/source/processes/hadronic/util/src/G4HadSignalHandler.cc @@ -23,8 +23,8 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -#ifndef G4HadSignalHandler_off - +//#ifndef G4HadSignalHandler_off +#if 0 #include "G4HadSignalHandler.hh" namespace G4HadSignalHandler_local diff --git a/source/processes/hadronic/util/src/G4HadronicParameters.cc b/source/processes/hadronic/util/src/G4HadronicParameters.cc index 8b01772937..662a5a0690 100644 --- a/source/processes/hadronic/util/src/G4HadronicParameters.cc +++ b/source/processes/hadronic/util/src/G4HadronicParameters.cc @@ -77,8 +77,7 @@ G4HadronicParameters::G4HadronicParameters() { fMaxEnergyTransitionFTF_Cascade = 6.0*CLHEP::GeV; fMinEnergyTransitionQGS_FTF = 12.0*CLHEP::GeV; fMaxEnergyTransitionQGS_FTF = 25.0*CLHEP::GeV; - fVerboseLevel = 1; - fEnableBC = false; + fEnergyThresholdForHeavyHadrons = 1.1*CLHEP::GeV; fMessenger = new G4HadronicParametersMessenger( this ); } @@ -130,3 +129,69 @@ void G4HadronicParameters::SetEnableBCParticles( G4bool val ) { void G4HadronicParameters::SetVerboseLevel( const G4int val ) { if ( ! IsLocked() && val >= 0 ) fVerboseLevel = val; } + + +void G4HadronicParameters::SetEnergyThresholdForHeavyHadrons( G4double val ) { + if ( ! IsLocked() && val >= 0 && val < 5*CLHEP::GeV ) { + fEnergyThresholdForHeavyHadrons = val; + } +} + + +void G4HadronicParameters::SetXSFactorNucleonInelastic( G4double val ) { + if ( ! IsLocked() && std::abs(val - 1.0) < fXSFactorLimit ) { + fXSFactorNucleonInelastic = val; + } +} + + +void G4HadronicParameters::SetXSFactorNucleonElastic( G4double val ) { + if ( ! IsLocked() && std::abs(val - 1.0) < fXSFactorLimit ) { + fXSFactorNucleonElastic = val; + } +} + + +void G4HadronicParameters::SetXSFactorPionInelastic( G4double val ) { + if ( ! IsLocked() && std::abs(val - 1.0) < fXSFactorLimit ) { + fXSFactorPionInelastic = val; + } +} + + +void G4HadronicParameters::SetXSFactorPionElastic( G4double val ) { + if ( ! IsLocked() && std::abs(val - 1.0) < fXSFactorLimit ) { + fXSFactorPionElastic = val; + } +} + + +void G4HadronicParameters::SetXSFactorHadronInelastic( G4double val ) { + if ( ! IsLocked() && std::abs(val - 1.0) < fXSFactorLimit ) { + fXSFactorHadronInelastic = val; + } +} + + +void G4HadronicParameters::SetXSFactorHadronElastic( G4double val ) { + if ( ! IsLocked() && std::abs(val - 1.0) < fXSFactorLimit ) { + fXSFactorHadronElastic = val; + } +} + + +void G4HadronicParameters::SetXSFactorEM( G4double val ) { + if ( ! IsLocked() && std::abs(val - 1.0) < fXSFactorLimit ) { + fXSFactorEM = val; + } +} + + +void G4HadronicParameters::SetApplyFactorXS( G4bool val ) { + if ( ! IsLocked() ) fApplyFactorXS = val; +} + + +void G4HadronicParameters::SetEnableCRCoalescence( G4bool val ) { + if ( ! IsLocked() ) fEnableCRCoalescence = val; +} diff --git a/source/processes/hadronic/util/src/G4HadronicParametersMessenger.cc b/source/processes/hadronic/util/src/G4HadronicParametersMessenger.cc index 71ae26ff85..5f7ff2c12a 100644 --- a/source/processes/hadronic/util/src/G4HadronicParametersMessenger.cc +++ b/source/processes/hadronic/util/src/G4HadronicParametersMessenger.cc @@ -33,6 +33,8 @@ #include "G4UIdirectory.hh" #include "G4UIcommand.hh" #include "G4UIcmdWithAnInteger.hh" +#include "G4UIcmdWithADoubleAndUnit.hh" +#include "G4UIcmdWithABool.hh" #include "G4HadronicParameters.hh" @@ -52,12 +54,29 @@ G4HadronicParametersMessenger::G4HadronicParametersMessenger( G4HadronicParamete theVerboseCmd->SetParameterName( "VerboseLevel", true ); theVerboseCmd->SetDefaultValue( 1 ); theVerboseCmd->SetRange( "VerboseLevel>=0" ); + theVerboseCmd->AvailableForStates( G4State_PreInit ); + + // This command sets the max energy for hadronics. + theMaxEnergyCmd = new G4UIcmdWithADoubleAndUnit( "/process/had/maxEnergy", this ); + theMaxEnergyCmd->SetGuidance( "Max energy for hadronics (default: 100 TeV)" ); + theMaxEnergyCmd->SetParameterName( "MaxEnergy", false ); + theMaxEnergyCmd->SetUnitCategory( "Energy" ); + theMaxEnergyCmd->SetRange( "MaxEnergy>0.0" ); + theMaxEnergyCmd->AvailableForStates( G4State_PreInit ); + + // This command enable the Cosmic Ray (CR) coalescence + theCRCoalescenceCmd = new G4UIcmdWithABool( "/process/had/enableCRCoalescence", this ); + theCRCoalescenceCmd->SetGuidance( "Enable Cosmic Ray (CR) coalescence." ); + theCRCoalescenceCmd->SetParameterName( "EnableCRCoalescence", false ); + theCRCoalescenceCmd->SetDefaultValue( false ); } G4HadronicParametersMessenger::~G4HadronicParametersMessenger() { delete theDirectory; delete theVerboseCmd; + delete theMaxEnergyCmd; + delete theCRCoalescenceCmd; } @@ -67,5 +86,9 @@ void G4HadronicParametersMessenger::SetNewValue( G4UIcommand *command, G4String // it is the responsibility of each hadronic model, cross section and process to check // this verbose level and behave accordingly. theHadronicParameters->SetVerboseLevel( theVerboseCmd->GetNewIntValue( newValues ) ); + } else if ( command == theMaxEnergyCmd ) { + theHadronicParameters->SetMaxEnergy( theMaxEnergyCmd->GetNewDoubleValue( newValues ) ); + } else if ( command == theCRCoalescenceCmd ) { + theHadronicParameters->SetEnableCRCoalescence( theCRCoalescenceCmd->GetNewBoolValue( newValues ) ); } } diff --git a/source/processes/management/include/G4VProcess.hh b/source/processes/management/include/G4VProcess.hh index 5c10c42212..a025665f0e 100644 --- a/source/processes/management/include/G4VProcess.hh +++ b/source/processes/management/include/G4VProcess.hh @@ -214,7 +214,7 @@ class G4VProcess // Return true if the Physics Table can be built by using file. // Return false if the process has no functionality or in case // of failure. File name should be defined by each process and the - // file should be placed under the directory specifed by the argument + // file should be placed under the directory specified by the argument const G4String& GetPhysicsTableFileName(const G4ParticleDefinition* , const G4String& directory, diff --git a/source/processes/management/include/G4WrapperProcess.hh b/source/processes/management/include/G4WrapperProcess.hh index ae25ace91d..0579184b9b 100644 --- a/source/processes/management/include/G4WrapperProcess.hh +++ b/source/processes/management/include/G4WrapperProcess.hh @@ -140,7 +140,7 @@ class G4WrapperProcess : public G4VProcess // Return true if the Physics Table can be build by using file. // Return false if the process has no functionality or in case of failure. // File name should be defined by each process and the file should be - // placed under the directory specifed by the argument + // placed under the directory specified by the argument virtual void StartTracking(G4Track*); virtual void EndTracking(); diff --git a/source/processes/management/sources.cmake b/source/processes/management/sources.cmake index 1343e16687..ecadc4a3ec 100644 --- a/source/processes/management/sources.cmake +++ b/source/processes/management/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4procman # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,24 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4procman HEADERS G4ParticleTypes.hh diff --git a/source/processes/management/src/G4ProcessTableMessenger.cc b/source/processes/management/src/G4ProcessTableMessenger.cc index 19f41123ca..bd3633a8fa 100644 --- a/source/processes/management/src/G4ProcessTableMessenger.cc +++ b/source/processes/management/src/G4ProcessTableMessenger.cc @@ -273,7 +273,7 @@ G4ProcessTableMessenger::SetNewValue(G4UIcommand* command, G4String newValue) type = GetProcessType(currentProcessName); if (type <0 ) { - // no processes with specifed name + // no processes with specified name ed << " illegal process (or type) name [" << currentProcessName << "]"; command->CommandFailed(ed); @@ -303,7 +303,7 @@ G4ProcessTableMessenger::SetNewValue(G4UIcommand* command, G4String newValue) if ( !isParticleFound ) { - // no particle with specifed name + // no particle with specified name ed << " illegal particle name [" << currentParticleName << "]"; command->CommandFailed(ed); currentParticleName = ""; diff --git a/source/processes/optical/GNUmakefile b/source/processes/optical/GNUmakefile index b51020d9bf..8c78b15bf2 100644 --- a/source/processes/optical/GNUmakefile +++ b/source/processes/optical/GNUmakefile @@ -20,6 +20,7 @@ CPPFLAGS += -I$(G4BASE)/global/management/include \ -I$(G4BASE)/digits_hits/hits/include \ -I$(G4BASE)/digits_hits/detector/include \ -I$(G4BASE)/track/include \ + -I$(G4BASE)/processes/electromagnetic/utils/include \ -I$(G4BASE)/processes/management/include \ -I$(G4BASE)/processes/scoring/include \ -I$(G4BASE)/particles/management/include \ diff --git a/source/processes/optical/History b/source/processes/optical/History index 3f82a8cbf2..c39525a7b2 100644 --- a/source/processes/optical/History +++ b/source/processes/optical/History @@ -16,6 +16,19 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +04 Nov 20: D. Sawkey (op-V10-06-07) +- Fix reading Davis LUT out of bounds (addresses bug 2287) + +05 Oct 20: D. Sawkey (op-V10-06-06) +- All files: apply clang-format style guidelines + +30 Sept 20: D. Sawkey (op-V10-06-05) +- G4OpBoundaryProcess: increase geometry tolerance to kCarTolerance + +20 July 20: D. Sawkey (op-V10-06-04) +- G4OpRayleigh, G4OpAbsorption, G4OpMieHG, G4OpWLS, G4OpWLS2: move to new + G4OpticalParameters class to control simulation parameters + 29 May 20: D. Sawkey (op-V10-06-03) - all files - thorough cleaning; shorten temporary variable names; improve readability diff --git a/source/processes/optical/include/G4OpAbsorption.hh b/source/processes/optical/include/G4OpAbsorption.hh index 0fa6091ff0..8c409ae415 100644 --- a/source/processes/optical/include/G4OpAbsorption.hh +++ b/source/processes/optical/include/G4OpAbsorption.hh @@ -51,37 +51,39 @@ class G4OpAbsorption : public G4VDiscreteProcess { -public: - + public: explicit G4OpAbsorption(const G4String& processName = "OpAbsorption", - G4ProcessType type = fOptical); - virtual ~G4OpAbsorption(); + G4ProcessType type = fOptical); + virtual ~G4OpAbsorption(); - virtual G4bool IsApplicable(const G4ParticleDefinition& aParticleType) override; + virtual G4bool IsApplicable( + const G4ParticleDefinition& aParticleType) override; // Returns true -> 'is applicable' only for an optical photon. - virtual G4double GetMeanFreePath(const G4Track& aTrack, - G4double , - G4ForceCondition*) override; + virtual G4double GetMeanFreePath(const G4Track& aTrack, G4double, + G4ForceCondition*) override; // Returns the absorption length for bulk absorption of optical // photons in media with a specified attenuation length. - virtual G4VParticleChange* PostStepDoIt(const G4Track& aTrack, - const G4Step& aStep) override; + virtual G4VParticleChange* PostStepDoIt(const G4Track& aTrack, + const G4Step& aStep) override; // Method implementing bulk absorption of optical photons. -private: + virtual void PreparePhysicsTable(const G4ParticleDefinition&) override; - G4OpAbsorption(const G4OpAbsorption &right) = delete; - G4OpAbsorption& operator=(const G4OpAbsorption &right) = delete; + virtual void Initialise(); - size_t idx_absorption = 0; + private: + G4OpAbsorption(const G4OpAbsorption& right) = delete; + G4OpAbsorption& operator=(const G4OpAbsorption& right) = delete; + + size_t idx_absorption = 0; }; // Inline methods -inline -G4bool G4OpAbsorption::IsApplicable(const G4ParticleDefinition& aParticleType) +inline G4bool G4OpAbsorption::IsApplicable( + const G4ParticleDefinition& aParticleType) { return (&aParticleType == G4OpticalPhoton::OpticalPhoton()); } diff --git a/source/processes/optical/include/G4OpBoundaryProcess.hh b/source/processes/optical/include/G4OpBoundaryProcess.hh index 626d50fa9c..14ad34dedd 100644 --- a/source/processes/optical/include/G4OpBoundaryProcess.hh +++ b/source/processes/optical/include/G4OpBoundaryProcess.hh @@ -25,7 +25,7 @@ // // // -// +// //////////////////////////////////////////////////////////////////////// // Optical Photon Boundary Process Class Definition //////////////////////////////////////////////////////////////////////// @@ -37,9 +37,9 @@ // Created: 1997-06-18 // Modified: 2005-07-28 add G4ProcessType to constructor // 1999-10-29 add method and class descriptors -// 1999-10-10 - Fill NewMomentum/NewPolarization in +// 1999-10-10 - Fill NewMomentum/NewPolarization in // DoAbsorption. These members need to be -// filled since DoIt calls +// filled since DoIt calls // aParticleChange.SetMomentumChange etc. // upon return (thanks to: Clark McGrew) // 2006-11-04 - add capability of calculating the reflectivity @@ -69,48 +69,69 @@ #include "G4OpticalSurface.hh" #include "G4OpticalPhoton.hh" -enum G4OpBoundaryProcessStatus { +enum G4OpBoundaryProcessStatus +{ Undefined, - Transmission, FresnelRefraction, - FresnelReflection, TotalInternalReflection, - LambertianReflection, LobeReflection, - SpikeReflection, BackScattering, - Absorption, Detection, - NotAtBoundary, SameMaterial, - StepTooSmall, NoRINDEX, - PolishedLumirrorAirReflection, PolishedLumirrorGlueReflection, - PolishedAirReflection, PolishedTeflonAirReflection, - PolishedTiOAirReflection, PolishedTyvekAirReflection, - PolishedVM2000AirReflection, PolishedVM2000GlueReflection, - EtchedLumirrorAirReflection, EtchedLumirrorGlueReflection, - EtchedAirReflection, EtchedTeflonAirReflection, - EtchedTiOAirReflection, EtchedTyvekAirReflection, - EtchedVM2000AirReflection, EtchedVM2000GlueReflection, - GroundLumirrorAirReflection, GroundLumirrorGlueReflection, - GroundAirReflection, GroundTeflonAirReflection, - GroundTiOAirReflection, GroundTyvekAirReflection, - GroundVM2000AirReflection, GroundVM2000GlueReflection, - Dichroic }; + Transmission, + FresnelRefraction, + FresnelReflection, + TotalInternalReflection, + LambertianReflection, + LobeReflection, + SpikeReflection, + BackScattering, + Absorption, + Detection, + NotAtBoundary, + SameMaterial, + StepTooSmall, + NoRINDEX, + PolishedLumirrorAirReflection, + PolishedLumirrorGlueReflection, + PolishedAirReflection, + PolishedTeflonAirReflection, + PolishedTiOAirReflection, + PolishedTyvekAirReflection, + PolishedVM2000AirReflection, + PolishedVM2000GlueReflection, + EtchedLumirrorAirReflection, + EtchedLumirrorGlueReflection, + EtchedAirReflection, + EtchedTeflonAirReflection, + EtchedTiOAirReflection, + EtchedTyvekAirReflection, + EtchedVM2000AirReflection, + EtchedVM2000GlueReflection, + GroundLumirrorAirReflection, + GroundLumirrorGlueReflection, + GroundAirReflection, + GroundTeflonAirReflection, + GroundTiOAirReflection, + GroundTyvekAirReflection, + GroundVM2000AirReflection, + GroundVM2000GlueReflection, + Dichroic +}; class G4OpBoundaryProcess : public G4VDiscreteProcess { - -public: - + public: explicit G4OpBoundaryProcess(const G4String& processName = "OpBoundary", - G4ProcessType type = fOptical); + G4ProcessType type = fOptical); virtual ~G4OpBoundaryProcess(); - virtual G4bool IsApplicable(const G4ParticleDefinition& aParticleType) override; + virtual G4bool IsApplicable( + const G4ParticleDefinition& aParticleType) override; // Returns true -> 'is applicable' only for an optical photon. - virtual G4double GetMeanFreePath(const G4Track&, G4double, G4ForceCondition* condition) override; + virtual G4double GetMeanFreePath(const G4Track&, G4double, + G4ForceCondition* condition) override; // Returns infinity; i. e. the process does not limit the step, but sets the // 'Forced' condition for the DoIt to be invoked at every step. However, only // at a boundary will any action be taken. G4VParticleChange* PostStepDoIt(const G4Track& aTrack, - const G4Step& aStep) override; + const G4Step& aStep) override; // This is the method implementing boundary processes. virtual G4OpBoundaryProcessStatus GetStatus() const; @@ -119,15 +140,18 @@ public: virtual void SetInvokeSD(G4bool); // Set flag for call to InvokeSD method. -private: + virtual void PreparePhysicsTable(const G4ParticleDefinition&) override; - G4OpBoundaryProcess(const G4OpBoundaryProcess &right) = delete; - G4OpBoundaryProcess& operator=(const G4OpBoundaryProcess &right) = delete; + virtual void Initialise(); + + private: + G4OpBoundaryProcess(const G4OpBoundaryProcess& right) = delete; + G4OpBoundaryProcess& operator=(const G4OpBoundaryProcess& right) = delete; G4bool G4BooleanRand(const G4double prob) const; G4ThreeVector GetFacetNormal(const G4ThreeVector& Momentum, - const G4ThreeVector& Normal) const; + const G4ThreeVector& Normal) const; void DielectricMetal(); void DielectricDielectric(); @@ -144,10 +168,8 @@ private: G4double GetIncidentAngle(); // Returns the incident angle of optical photon - G4double GetReflectivity(G4double E1_perp, - G4double E1_parl, - G4double incidentangle, - G4double RealRindex, + G4double GetReflectivity(G4double E1_perp, G4double E1_parl, + G4double incidentangle, G4double RealRindex, G4double ImaginaryRindex); // Returns the Reflectivity on a metalic surface @@ -205,81 +227,77 @@ private: G4bool fInvokeSD; - size_t idx_rindex1 = 0; + size_t idx_rindex1 = 0; size_t idx_rindex_surface = 0; - size_t idx_reflect = 0; - size_t idx_eff = 0; - size_t idx_trans = 0; - size_t idx_lobe = 0; - size_t idx_spike = 0; - size_t idx_back = 0; - size_t idx_rindex2 = 0; - size_t idx_groupvel = 0; - size_t idx_rrindex = 0; - size_t idx_irindex = 0; - + size_t idx_reflect = 0; + size_t idx_eff = 0; + size_t idx_trans = 0; + size_t idx_lobe = 0; + size_t idx_spike = 0; + size_t idx_back = 0; + size_t idx_rindex2 = 0; + size_t idx_groupvel = 0; + size_t idx_rrindex = 0; + size_t idx_irindex = 0; }; //////////////////// // Inline methods //////////////////// -inline -G4bool G4OpBoundaryProcess::G4BooleanRand(const G4double prob) const +inline G4bool G4OpBoundaryProcess::G4BooleanRand(const G4double prob) const { /* Returns a random boolean variable with the specified probability */ return (G4UniformRand() < prob); } -inline -G4bool G4OpBoundaryProcess::IsApplicable(const G4ParticleDefinition& - aParticleType) +inline G4bool G4OpBoundaryProcess::IsApplicable( + const G4ParticleDefinition& aParticleType) { return (&aParticleType == G4OpticalPhoton::OpticalPhoton()); } -inline -G4OpBoundaryProcessStatus G4OpBoundaryProcess::GetStatus() const +inline G4OpBoundaryProcessStatus G4OpBoundaryProcess::GetStatus() const { return theStatus; } -inline -void G4OpBoundaryProcess::SetInvokeSD(G4bool flag) -{ - fInvokeSD = flag; -} +inline void G4OpBoundaryProcess::SetInvokeSD(G4bool flag) { fInvokeSD = flag; } -inline -void G4OpBoundaryProcess::ChooseReflection() +inline void G4OpBoundaryProcess::ChooseReflection() { G4double rand = G4UniformRand(); - if (rand >= 0.0 && rand < prob_ss) { - theStatus = SpikeReflection; + if(rand >= 0.0 && rand < prob_ss) + { + theStatus = SpikeReflection; theFacetNormal = theGlobalNormal; } - else if (rand >= prob_ss && rand <= prob_ss+prob_sl) { + else if(rand >= prob_ss && rand <= prob_ss + prob_sl) + { theStatus = LobeReflection; } - else if (rand > prob_ss+prob_sl && rand < prob_ss+prob_sl+prob_bs) { + else if(rand > prob_ss + prob_sl && rand < prob_ss + prob_sl + prob_bs) + { theStatus = BackScattering; } - else { + else + { theStatus = LambertianReflection; } } -inline -void G4OpBoundaryProcess::DoAbsorption() +inline void G4OpBoundaryProcess::DoAbsorption() { theStatus = Absorption; - if (G4BooleanRand(theEfficiency)) { + if(G4BooleanRand(theEfficiency)) + { // EnergyDeposited =/= 0 means: photon has been detected theStatus = Detection; aParticleChange.ProposeLocalEnergyDeposit(thePhotonMomentum); } - else { + else + { aParticleChange.ProposeLocalEnergyDeposit(0.0); } @@ -289,31 +307,36 @@ void G4OpBoundaryProcess::DoAbsorption() aParticleChange.ProposeTrackStatus(fStopAndKill); } -inline -void G4OpBoundaryProcess::DoReflection() +inline void G4OpBoundaryProcess::DoReflection() { - if (theStatus == LambertianReflection) { - NewMomentum = G4LambertianRand(theGlobalNormal); + if(theStatus == LambertianReflection) + { + NewMomentum = G4LambertianRand(theGlobalNormal); theFacetNormal = (NewMomentum - OldMomentum).unit(); } - else if (theFinish == ground) { + else if(theFinish == ground) + { theStatus = LobeReflection; - if (fRealRIndexMPV && fImagRIndexMPV) { + if(fRealRIndexMPV && fImagRIndexMPV) + { // - } else { - theFacetNormal = GetFacetNormal(OldMomentum, theGlobalNormal); + } + else + { + theFacetNormal = GetFacetNormal(OldMomentum, theGlobalNormal); } G4double PdotN = OldMomentum * theFacetNormal; - NewMomentum = OldMomentum - (2.*PdotN)*theFacetNormal; + NewMomentum = OldMomentum - (2. * PdotN) * theFacetNormal; } - else { - theStatus = SpikeReflection; + else + { + theStatus = SpikeReflection; theFacetNormal = theGlobalNormal; G4double PdotN = OldMomentum * theFacetNormal; - NewMomentum = OldMomentum - (2.*PdotN)*theFacetNormal; + NewMomentum = OldMomentum - (2. * PdotN) * theFacetNormal; } - G4double EdotN = OldPolarization * theFacetNormal; - NewPolarization = -OldPolarization + (2.*EdotN)*theFacetNormal; + G4double EdotN = OldPolarization * theFacetNormal; + NewPolarization = -OldPolarization + (2. * EdotN) * theFacetNormal; } #endif /* G4OpBoundaryProcess_h */ diff --git a/source/processes/optical/include/G4OpMieHG.hh b/source/processes/optical/include/G4OpMieHG.hh index ea41d91a92..364f25ef14 100644 --- a/source/processes/optical/include/G4OpMieHG.hh +++ b/source/processes/optical/include/G4OpMieHG.hh @@ -31,7 +31,7 @@ // Author: Xin Qian // Based on work from Vlasios Vasileiou // -// This subroutine will mimic the Mie scattering based on +// This subroutine will mimic the Mie scattering based on // Henyey-Greenstein phase function // Forward and backward angles are treated separately. // @@ -45,35 +45,34 @@ class G4OpMieHG : public G4VDiscreteProcess { - -public: - + public: explicit G4OpMieHG(const G4String& processName = "OpMieHG", - G4ProcessType type = fOptical); + G4ProcessType type = fOptical); virtual ~G4OpMieHG(); - virtual G4bool IsApplicable(const G4ParticleDefinition& aParticleType) override; + virtual G4bool IsApplicable( + const G4ParticleDefinition& aParticleType) override; // Returns true -> 'is applicable' only for an optical photon. - virtual G4double GetMeanFreePath(const G4Track& aTrack, - G4double, + virtual G4double GetMeanFreePath(const G4Track& aTrack, G4double, G4ForceCondition*) override; // Return the mean free path of Mie scattering virtual G4VParticleChange* PostStepDoIt(const G4Track& aTrack, - const G4Step& aStep) override; + const G4Step& aStep) override; // This is the method implementing Mie scattering. -private: + virtual void PreparePhysicsTable(const G4ParticleDefinition&) override; + virtual void Initialise(); - G4OpMieHG(const G4OpMieHG &right) = delete; - G4OpMieHG& operator=(const G4OpMieHG &right) = delete; + private: + G4OpMieHG(const G4OpMieHG& right) = delete; + G4OpMieHG& operator=(const G4OpMieHG& right) = delete; size_t idx_mie = 0; }; -inline -G4bool G4OpMieHG::IsApplicable(const G4ParticleDefinition& aParticleType) +inline G4bool G4OpMieHG::IsApplicable(const G4ParticleDefinition& aParticleType) { return (&aParticleType == G4OpticalPhoton::OpticalPhoton()); } diff --git a/source/processes/optical/include/G4OpProcessSubType.hh b/source/processes/optical/include/G4OpProcessSubType.hh index bdac9f6d91..330387bea5 100644 --- a/source/processes/optical/include/G4OpProcessSubType.hh +++ b/source/processes/optical/include/G4OpProcessSubType.hh @@ -40,8 +40,8 @@ #ifndef G4OpProcessSubType_h #define G4OpProcessSubType_h 1 -enum G4OpProcessSubType -{ +enum G4OpProcessSubType +{ fOpAbsorption = 31, fOpBoundary = 32, fOpRayleigh = 33, diff --git a/source/processes/optical/include/G4OpRayleigh.hh b/source/processes/optical/include/G4OpRayleigh.hh index cc98f8cc45..f0a1e78b04 100644 --- a/source/processes/optical/include/G4OpRayleigh.hh +++ b/source/processes/optical/include/G4OpRayleigh.hh @@ -25,13 +25,13 @@ // // // -// +// //////////////////////////////////////////////////////////////////////// // Optical Photon Rayleigh Scattering Class Definition //////////////////////////////////////////////////////////////////////// // // File: G4OpRayleigh.hh -// Description: Discrete Process -- Rayleigh scattering of optical photons +// Description: Discrete Process -- Rayleigh scattering of optical photons // Version: 1.0 // Created: 1996-05-31 // Author: Juliet Armstrong @@ -52,25 +52,25 @@ class G4OpRayleigh : public G4VDiscreteProcess { -public: - + public: explicit G4OpRayleigh(const G4String& processName = "OpRayleigh", - G4ProcessType type = fOptical); - virtual ~G4OpRayleigh(); + G4ProcessType type = fOptical); + virtual ~G4OpRayleigh(); - virtual G4bool IsApplicable(const G4ParticleDefinition& aParticleType) override; + virtual G4bool IsApplicable( + const G4ParticleDefinition& aParticleType) override; // Returns true -> 'is applicable' only for an optical photon. - virtual void BuildPhysicsTable(const G4ParticleDefinition& aParticleType) override; + virtual void BuildPhysicsTable( + const G4ParticleDefinition& aParticleType) override; // Build thePhysicsTable at a right time - virtual G4double GetMeanFreePath(const G4Track& aTrack, - G4double, + virtual G4double GetMeanFreePath(const G4Track& aTrack, G4double, G4ForceCondition*) override; // Returns the mean free path for Rayleigh scattering virtual G4VParticleChange* PostStepDoIt(const G4Track& aTrack, - const G4Step& aStep) override; + const G4Step& aStep) override; // This is the method implementing Rayleigh scattering. virtual G4PhysicsTable* GetPhysicsTable() const; @@ -79,19 +79,20 @@ public: virtual void DumpPhysicsTable() const; // Prints the physics table. -protected: + virtual void PreparePhysicsTable(const G4ParticleDefinition&) override; + virtual void Initialise(); - G4PhysicsTable* thePhysicsTable; + protected: + G4PhysicsTable* thePhysicsTable; -private: - - G4OpRayleigh(const G4OpRayleigh &right) = delete; - G4OpRayleigh& operator=(const G4OpRayleigh &right) = delete; + private: + G4OpRayleigh(const G4OpRayleigh& right) = delete; + G4OpRayleigh& operator=(const G4OpRayleigh& right) = delete; /// Calculates the mean free paths for a material as a function of /// photon energy - G4PhysicsOrderedFreeVector* - CalculateRayleighMeanFreePaths(const G4Material* material) const; + G4PhysicsOrderedFreeVector* CalculateRayleighMeanFreePaths( + const G4Material* material) const; size_t idx_rslength = 0; }; @@ -100,18 +101,17 @@ private: // Inline methods //////////////////// -inline -G4bool G4OpRayleigh::IsApplicable(const G4ParticleDefinition& aParticleType) +inline G4bool G4OpRayleigh::IsApplicable( + const G4ParticleDefinition& aParticleType) { return (&aParticleType == G4OpticalPhoton::OpticalPhoton()); } -inline -void G4OpRayleigh::DumpPhysicsTable() const +inline void G4OpRayleigh::DumpPhysicsTable() const { - for (size_t i=0; ientries(); ++i) + for(size_t i = 0; i < thePhysicsTable->entries(); ++i) { - ((G4PhysicsOrderedFreeVector*)(*thePhysicsTable)[i])->DumpValues(); + ((G4PhysicsOrderedFreeVector*) (*thePhysicsTable)[i])->DumpValues(); } } diff --git a/source/processes/optical/include/G4OpWLS.hh b/source/processes/optical/include/G4OpWLS.hh index c2e8a99a0e..05ce17a52c 100644 --- a/source/processes/optical/include/G4OpWLS.hh +++ b/source/processes/optical/include/G4OpWLS.hh @@ -30,7 +30,7 @@ //////////////////////////////////////////////////////////////////////// // // File: G4OpWLS.hh -// Description: Discrete Process -- Wavelength Shifting of Optical Photons +// Description: Discrete Process -- Wavelength Shifting of Optical Photons // Version: 1.0 // Created: 2003-05-13 // Author: John Paul Archambault @@ -50,26 +50,26 @@ class G4VWLSTimeGeneratorProfile; class G4OpWLS : public G4VDiscreteProcess { -public: - + public: explicit G4OpWLS(const G4String& processName = "OpWLS", - G4ProcessType type = fOptical); + G4ProcessType type = fOptical); virtual ~G4OpWLS(); - virtual G4bool IsApplicable(const G4ParticleDefinition& aParticleType) override; + virtual G4bool IsApplicable( + const G4ParticleDefinition& aParticleType) override; // Returns true -> 'is applicable' only for an optical photon. - virtual void BuildPhysicsTable(const G4ParticleDefinition& aParticleType) override; + virtual void BuildPhysicsTable( + const G4ParticleDefinition& aParticleType) override; // Build the WLS integral table at the right time - virtual G4double GetMeanFreePath(const G4Track& aTrack, - G4double, + virtual G4double GetMeanFreePath(const G4Track& aTrack, G4double, G4ForceCondition*) override; // Returns the absorption length for WLS absorption of optical // photons in media with a specified attenuation length. virtual G4VParticleChange* PostStepDoIt(const G4Track& aTrack, - const G4Step& aStep) override; + const G4Step& aStep) override; // This is the method implementing WLS for optical photons. virtual G4PhysicsTable* GetIntegralTable() const; @@ -78,18 +78,19 @@ public: virtual void DumpPhysicsTable() const; // Prints the WLS integral table. - void UseTimeProfile(const G4String name); + virtual void UseTimeProfile(const G4String name); // Selects the time profile generator -protected: + virtual void PreparePhysicsTable(const G4ParticleDefinition&) override; + virtual void Initialise(); + protected: G4VWLSTimeGeneratorProfile* WLSTimeGeneratorProfile; G4PhysicsTable* theIntegralTable; -private: - - G4OpWLS(const G4OpWLS &right) = delete; - G4OpWLS& operator=(const G4OpWLS &right) = delete; + private: + G4OpWLS(const G4OpWLS& right) = delete; + G4OpWLS& operator=(const G4OpWLS& right) = delete; size_t idx_wls = 0; }; @@ -98,27 +99,24 @@ private: // Inline methods //////////////////// -inline -G4bool G4OpWLS::IsApplicable(const G4ParticleDefinition& aParticleType) +inline G4bool G4OpWLS::IsApplicable(const G4ParticleDefinition& aParticleType) { return (&aParticleType == G4OpticalPhoton::OpticalPhoton()); } -inline -G4PhysicsTable* G4OpWLS::GetIntegralTable() const +inline G4PhysicsTable* G4OpWLS::GetIntegralTable() const { return theIntegralTable; } -inline -void G4OpWLS::DumpPhysicsTable() const +inline void G4OpWLS::DumpPhysicsTable() const { G4int PhysicsTableSize = theIntegralTable->entries(); - G4PhysicsOrderedFreeVector *v; + G4PhysicsOrderedFreeVector* v; - for (G4int i=0; iDumpValues(); } } diff --git a/source/processes/optical/include/G4OpWLS2.hh b/source/processes/optical/include/G4OpWLS2.hh index 41382eb29e..e67cdd68f3 100644 --- a/source/processes/optical/include/G4OpWLS2.hh +++ b/source/processes/optical/include/G4OpWLS2.hh @@ -30,7 +30,7 @@ //////////////////////////////////////////////////////////////////////// // // File: G4OpWLS2.hh -// Description: Discrete Process -- Wavelength Shifting of Optical Photons +// Description: Discrete Process -- Wavelength Shifting of Optical Photons // Version: 1.0 // Created: 2003-05-13 // Author: John Paul Archambault @@ -41,35 +41,35 @@ //////////////////////////////////////////////////////////////////////// #ifndef G4OpWL2S_h -#define G4OpWLS2_h 1 +# define G4OpWLS2_h 1 -#include "G4VDiscreteProcess.hh" -#include "G4OpticalPhoton.hh" +# include "G4VDiscreteProcess.hh" +# include "G4OpticalPhoton.hh" class G4VWLSTimeGeneratorProfile; class G4OpWLS2 : public G4VDiscreteProcess { -public: - + public: explicit G4OpWLS2(const G4String& processName = "OpWLS2", - G4ProcessType type = fOptical); + G4ProcessType type = fOptical); virtual ~G4OpWLS2(); - virtual G4bool IsApplicable(const G4ParticleDefinition& aParticleType) override; + virtual G4bool IsApplicable( + const G4ParticleDefinition& aParticleType) override; // Returns true -> 'is applicable' only for an optical photon. - virtual void BuildPhysicsTable(const G4ParticleDefinition& aParticleType) override; + virtual void BuildPhysicsTable( + const G4ParticleDefinition& aParticleType) override; // Build the WLS2 integral table at the right time - virtual G4double GetMeanFreePath(const G4Track& aTrack, - G4double, + virtual G4double GetMeanFreePath(const G4Track& aTrack, G4double, G4ForceCondition*) override; // Returns the absorption length for WLS2 absorption of optical // photons in media with a specified attenuation length. virtual G4VParticleChange* PostStepDoIt(const G4Track& aTrack, - const G4Step& aStep) override; + const G4Step& aStep) override; // This is the method implementing WLS2 for optical photons. virtual G4PhysicsTable* GetIntegralTable() const; @@ -78,18 +78,19 @@ public: virtual void DumpPhysicsTable() const; // Prints the WLS2 integral table. - void UseTimeProfile(const G4String name); + virtual void UseTimeProfile(const G4String name); // Selects the time profile generator -protected: + virtual void PreparePhysicsTable(const G4ParticleDefinition&) override; + virtual void Initialise(); + protected: G4VWLSTimeGeneratorProfile* WLSTimeGeneratorProfile; G4PhysicsTable* theIntegralTable; -private: - - G4OpWLS2(const G4OpWLS2 &right) = delete; - G4OpWLS2& operator=(const G4OpWLS2 &right) = delete; + private: + G4OpWLS2(const G4OpWLS2& right) = delete; + G4OpWLS2& operator=(const G4OpWLS2& right) = delete; size_t idx_wls2 = 0; }; @@ -98,27 +99,24 @@ private: // Inline methods //////////////////// -inline -G4bool G4OpWLS2::IsApplicable(const G4ParticleDefinition& aParticleType) +inline G4bool G4OpWLS2::IsApplicable(const G4ParticleDefinition& aParticleType) { return (&aParticleType == G4OpticalPhoton::OpticalPhoton()); } -inline -G4PhysicsTable* G4OpWLS2::GetIntegralTable() const +inline G4PhysicsTable* G4OpWLS2::GetIntegralTable() const { return theIntegralTable; } -inline -void G4OpWLS2::DumpPhysicsTable() const +inline void G4OpWLS2::DumpPhysicsTable() const { G4int PhysicsTableSize = theIntegralTable->entries(); - G4PhysicsOrderedFreeVector *v; + G4PhysicsOrderedFreeVector* v; - for (G4int i=0; iDumpValues(); } } diff --git a/source/processes/optical/include/G4VWLSTimeGeneratorProfile.hh b/source/processes/optical/include/G4VWLSTimeGeneratorProfile.hh index e521115449..b419b4f9e7 100644 --- a/source/processes/optical/include/G4VWLSTimeGeneratorProfile.hh +++ b/source/processes/optical/include/G4VWLSTimeGeneratorProfile.hh @@ -32,13 +32,13 @@ // File name: G4VWLSTimeGeneratorProfile.hh // // Author: Pedro Rodrigues, Andreia Trindade -// -// +// +// // Creation date: 2006-05-07 // -// Modifications: +// Modifications: // -// Class Description: +// Class Description: // // Abstract class for a WLSTimeGeneratorProfile @@ -51,28 +51,24 @@ #include "G4ios.hh" //#include "globals.hh" #include "G4MaterialPropertiesTable.hh" -//class G4MaterialPropertiesTable; +// class G4MaterialPropertiesTable; class G4VWLSTimeGeneratorProfile { - -public: - + public: G4VWLSTimeGeneratorProfile(const G4String& name); virtual ~G4VWLSTimeGeneratorProfile(); - virtual G4double GenerateTime(const G4double time_constant) = 0; + virtual G4double GenerateTime(const G4double time_constant) = 0; virtual G4double GenerateTime(const G4MaterialPropertiesTable*) = 0; -private: - + private: // hide assignment operator - G4VWLSTimeGeneratorProfile & operator= - (const G4VWLSTimeGeneratorProfile &right) = delete; - G4VWLSTimeGeneratorProfile(const G4VWLSTimeGeneratorProfile&) = delete; - + G4VWLSTimeGeneratorProfile& operator= + (const G4VWLSTimeGeneratorProfile& right) = delete; + G4VWLSTimeGeneratorProfile(const G4VWLSTimeGeneratorProfile&) = delete; }; #endif diff --git a/source/processes/optical/include/G4WLSTimeGeneratorProfileDelta.hh b/source/processes/optical/include/G4WLSTimeGeneratorProfileDelta.hh index 8f75f5f46d..7a242ef245 100644 --- a/source/processes/optical/include/G4WLSTimeGeneratorProfileDelta.hh +++ b/source/processes/optical/include/G4WLSTimeGeneratorProfileDelta.hh @@ -32,10 +32,10 @@ // File name: G4WLSTimeGeneratorProfileDelta.hh // // Author: Pedro Rodrigues, Andreia Trindade -// +// // Creation date: 2006-05-07 // -// Modifications: +// Modifications: // // Class Description: Discrete Class of WLSTimeGeneratorProfile // @@ -49,9 +49,7 @@ class G4WLSTimeGeneratorProfileDelta : public G4VWLSTimeGeneratorProfile { - -public: - + public: explicit G4WLSTimeGeneratorProfileDelta(const G4String& name); virtual ~G4WLSTimeGeneratorProfileDelta(); @@ -60,16 +58,14 @@ public: virtual G4double GenerateTime(const G4MaterialPropertiesTable*) override; -protected: - -private: - + protected: + private: // hide assignment operator - G4WLSTimeGeneratorProfileDelta & operator= - (const G4WLSTimeGeneratorProfileDelta &right) = delete; - G4WLSTimeGeneratorProfileDelta(const G4WLSTimeGeneratorProfileDelta&) = delete; - + G4WLSTimeGeneratorProfileDelta& operator= + (const G4WLSTimeGeneratorProfileDelta& right) = delete; + G4WLSTimeGeneratorProfileDelta(const G4WLSTimeGeneratorProfileDelta&) = + delete; }; #endif diff --git a/source/processes/optical/include/G4WLSTimeGeneratorProfileExponential.hh b/source/processes/optical/include/G4WLSTimeGeneratorProfileExponential.hh index 412697da12..d782fd2d51 100644 --- a/source/processes/optical/include/G4WLSTimeGeneratorProfileExponential.hh +++ b/source/processes/optical/include/G4WLSTimeGeneratorProfileExponential.hh @@ -32,12 +32,12 @@ // File name: G4WLSTimeGeneratorProfileExponential.hh // // Author: Pedro Rodrigues, Andreia Trindade -// +// // Creation date: 2006-05-07 // -// Modifications: +// Modifications: // -// Class Description: +// Class Description: // // ------------------------------------------------------------------- @@ -50,9 +50,7 @@ class G4WLSTimeGeneratorProfileExponential : public G4VWLSTimeGeneratorProfile { - -public: - + public: explicit G4WLSTimeGeneratorProfileExponential(const G4String& name); virtual ~G4WLSTimeGeneratorProfileExponential(); @@ -61,16 +59,14 @@ public: virtual G4double GenerateTime(const G4MaterialPropertiesTable*) override; -protected: - -private: - + protected: + private: // hide assignment operator - G4WLSTimeGeneratorProfileExponential & operator= - (const G4WLSTimeGeneratorProfileExponential &right) = delete; - G4WLSTimeGeneratorProfileExponential(const G4WLSTimeGeneratorProfileExponential&) = delete; - + G4WLSTimeGeneratorProfileExponential& operator= + (const G4WLSTimeGeneratorProfileExponential& right) = delete; + G4WLSTimeGeneratorProfileExponential( + const G4WLSTimeGeneratorProfileExponential&) = delete; }; #endif diff --git a/source/processes/optical/sources.cmake b/source/processes/optical/sources.cmake index e55d806452..fbce38ddd5 100644 --- a/source/processes/optical/sources.cmake +++ b/source/processes/optical/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4optical # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,30 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/scoring/include) -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/hits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/detector/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4optical HEADERS G4OpAbsorption.hh diff --git a/source/processes/optical/src/G4OpAbsorption.cc b/source/processes/optical/src/G4OpAbsorption.cc index 17c3074e8e..878a552c3c 100644 --- a/source/processes/optical/src/G4OpAbsorption.cc +++ b/source/processes/optical/src/G4OpAbsorption.cc @@ -30,13 +30,13 @@ //////////////////////////////////////////////////////////////////////// // // File: G4OpAbsorption.cc -// Description: Discrete Process -- Absorption of Optical Photons +// Description: Discrete Process -- Absorption of Optical Photons // Version: 1.0 // Created: 1996-05-21 // Author: Juliet Armstrong // Updated: 2005-07-28 - add G4ProcessType to constructor // 2000-09-18 by Peter Gumplinger -// > comment out warning - "No Absorption length specified" +// > comment out warning - "No Absorption length specified" // 1997-04-09 by Peter Gumplinger // > new physics/tracking scheme // 1998-08-25 by Stefano Magni @@ -48,6 +48,7 @@ #include "G4ios.hh" #include "G4OpProcessSubType.hh" +#include "G4OpticalParameters.hh" #include "G4OpAbsorption.hh" @@ -55,47 +56,64 @@ G4OpAbsorption::G4OpAbsorption(const G4String& processName, G4ProcessType type) : G4VDiscreteProcess(processName, type) { - if (verboseLevel >0 ) { - G4cout << GetProcessName() << " is created " << G4endl; + Initialise(); + if(verboseLevel > 0) + { + G4cout << GetProcessName() << " is created " << G4endl; } SetProcessSubType(fOpAbsorption); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4OpAbsorption::~G4OpAbsorption() -{} +G4OpAbsorption::~G4OpAbsorption() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4VParticleChange* -G4OpAbsorption::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) +void G4OpAbsorption::PreparePhysicsTable(const G4ParticleDefinition&) +{ + Initialise(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void G4OpAbsorption::Initialise() +{ + SetVerboseLevel(G4OpticalParameters::Instance()->GetAbsorptionVerboseLevel()); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +G4VParticleChange* G4OpAbsorption::PostStepDoIt(const G4Track& aTrack, + const G4Step& aStep) { aParticleChange.Initialize(aTrack); const G4DynamicParticle* aParticle = aTrack.GetDynamicParticle(); - G4double thePhotonMomentum = aParticle->GetTotalMomentum(); + G4double thePhotonMomentum = aParticle->GetTotalMomentum(); aParticleChange.ProposeLocalEnergyDeposit(thePhotonMomentum); aParticleChange.ProposeTrackStatus(fStopAndKill); - if (verboseLevel>1) { + if(verboseLevel > 1) + { G4cout << "\n** OpAbsorption: Photon absorbed! **" << G4endl; } return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4double G4OpAbsorption::GetMeanFreePath(const G4Track& aTrack, - G4double, - G4ForceCondition*) +G4double G4OpAbsorption::GetMeanFreePath(const G4Track& aTrack, G4double, + G4ForceCondition*) { - const G4DynamicParticle* aParticle = aTrack.GetDynamicParticle(); - G4MaterialPropertiesTable* MPT = aTrack.GetMaterial()->GetMaterialPropertiesTable(); + const G4DynamicParticle* aParticle = aTrack.GetDynamicParticle(); + G4MaterialPropertiesTable* MPT = + aTrack.GetMaterial()->GetMaterialPropertiesTable(); G4double attLength = DBL_MAX; - if (MPT) { + if(MPT) + { G4MaterialPropertyVector* attVector = MPT->GetProperty(kABSLENGTH); - if (attVector) { - attLength = attVector->Value(aParticle->GetTotalMomentum(), idx_absorption); + if(attVector) + { + attLength = + attVector->Value(aParticle->GetTotalMomentum(), idx_absorption); } } diff --git a/source/processes/optical/src/G4OpBoundaryProcess.cc b/source/processes/optical/src/G4OpBoundaryProcess.cc index dbd90ffe5b..511b93c68e 100644 --- a/source/processes/optical/src/G4OpBoundaryProcess.cc +++ b/source/processes/optical/src/G4OpBoundaryProcess.cc @@ -38,7 +38,7 @@ // (thanks to: Stefano Magni) // 1998-06-11 - delete *sint1 in oblique reflection // (thanks to: Giovanni Pieri) -// 1998-06-19 - move from GetLocalExitNormal() to the new +// 1998-06-19 - move from GetLocalExitNormal() to the new // method: GetLocalExitNormal(&valid) to get // the surface normal in all cases // 1998-11-07 - NULL OpticalSurface pointer before use @@ -55,8 +55,8 @@ // 2004-02-02 - Set theStatus = Undefined at start of DoIt // 2005-07-28 - add G4ProcessType to constructor // 2006-11-04 - add capability of calculating the reflectivity -// off a metal surface by way of a complex index -// of refraction - Thanks to Sehwook Lee and John +// off a metal surface by way of a complex index +// of refraction - Thanks to Sehwook Lee and John // Hauptman (Dept. of Physics - Iowa State Univ.) // 2009-11-10 - add capability of simulating surface reflections // with Look-Up-Tables (LUT) containing measured @@ -83,84 +83,114 @@ #include "G4TransportationManager.hh" #include "G4LogicalBorderSurface.hh" #include "G4LogicalSkinSurface.hh" + +#include "G4OpticalParameters.hh" #include "G4OpBoundaryProcess.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4OpBoundaryProcess::G4OpBoundaryProcess(const G4String& processName, - G4ProcessType type) + G4ProcessType type) : G4VDiscreteProcess(processName, type) { - if (verboseLevel > 0) { + Initialise(); + + if(verboseLevel > 0) + { G4cout << GetProcessName() << " is created " << G4endl; } SetProcessSubType(fOpBoundary); - theStatus = Undefined; - theModel = glisur; - theFinish = polished; - theReflectivity = 1.; - theEfficiency = 0.; - theTransmittance = 0.; + theStatus = Undefined; + theModel = glisur; + theFinish = polished; + theReflectivity = 1.; + theEfficiency = 0.; + theTransmittance = 0.; theSurfaceRoughness = 0.; - prob_sl = 0.; - prob_ss = 0.; - prob_bs = 0.; + prob_sl = 0.; + prob_ss = 0.; + prob_bs = 0.; fRealRIndexMPV = nullptr; fImagRIndexMPV = nullptr; Material1 = nullptr; Material2 = nullptr; OpticalSurface = nullptr; - kCarTolerance = G4GeometryTolerance::GetInstance()->GetSurfaceTolerance(); + kCarTolerance = G4GeometryTolerance::GetInstance()->GetSurfaceTolerance(); - iTE = iTM = 0; + iTE = iTM = 0; thePhotonMomentum = 0.; Rindex1 = Rindex2 = 1.; cost1 = cost2 = sint1 = sint2 = 0.; - idx = idy = 0; + idx = idy = 0; DichroicVector = nullptr; - fInvokeSD = true; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4OpBoundaryProcess::~G4OpBoundaryProcess() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4VParticleChange* -G4OpBoundaryProcess::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) +void G4OpBoundaryProcess::PreparePhysicsTable(const G4ParticleDefinition&) +{ + Initialise(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void G4OpBoundaryProcess::Initialise() +{ + G4OpticalParameters* params = G4OpticalParameters::Instance(); + SetInvokeSD(params->GetBoundaryInvokeSD()); + SetVerboseLevel(params->GetBoundaryVerboseLevel()); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +G4VParticleChange* G4OpBoundaryProcess::PostStepDoIt(const G4Track& aTrack, + const G4Step& aStep) { theStatus = Undefined; aParticleChange.Initialize(aTrack); aParticleChange.ProposeVelocity(aTrack.GetVelocity()); // Get hyperStep from G4ParallelWorldProcess - // NOTE: PostSetpDoIt of this process to be invoked after G4ParallelWorldProcess! + // NOTE: PostSetpDoIt of this process to be invoked after + // G4ParallelWorldProcess! const G4Step* pStep = &aStep; const G4Step* hStep = G4ParallelWorldProcess::GetHyperStep(); - if (hStep) pStep = hStep; + if(hStep) + pStep = hStep; - G4bool isOnBoundary = (pStep->GetPostStepPoint()->GetStepStatus() == fGeomBoundary); - if (isOnBoundary) { + G4bool isOnBoundary = + (pStep->GetPostStepPoint()->GetStepStatus() == fGeomBoundary); + if(isOnBoundary) + { Material1 = pStep->GetPreStepPoint()->GetMaterial(); Material2 = pStep->GetPostStepPoint()->GetMaterial(); - } else { + } + else + { theStatus = NotAtBoundary; - if (verboseLevel > 1) BoundaryProcessVerbose(); + if(verboseLevel > 1) + BoundaryProcessVerbose(); return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } - G4VPhysicalVolume* thePrePV = pStep->GetPreStepPoint() ->GetPhysicalVolume(); + G4VPhysicalVolume* thePrePV = pStep->GetPreStepPoint()->GetPhysicalVolume(); G4VPhysicalVolume* thePostPV = pStep->GetPostStepPoint()->GetPhysicalVolume(); - if (verboseLevel > 1) { + if(verboseLevel > 1) + { G4cout << " Photon at Boundary! " << G4endl; - if (thePrePV) G4cout << " thePrePV: " << thePrePV->GetName() << G4endl; - if (thePostPV) G4cout << " thePostPV: " << thePostPV->GetName() << G4endl; + if(thePrePV) + G4cout << " thePrePV: " << thePrePV->GetName() << G4endl; + if(thePostPV) + G4cout << " thePostPV: " << thePostPV->GetName() << G4endl; } - if (aTrack.GetStepLength() <= kCarTolerance/2.) { + if(aTrack.GetStepLength() <= kCarTolerance) + { theStatus = StepTooSmall; - if (verboseLevel > 1) BoundaryProcessVerbose(); + if(verboseLevel > 1) + BoundaryProcessVerbose(); return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } @@ -170,8 +200,9 @@ G4OpBoundaryProcess::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) OldMomentum = aParticle->GetMomentumDirection(); OldPolarization = aParticle->GetPolarization(); - if (verboseLevel > 1) { - G4cout << " Old Momentum Direction: " << OldMomentum << G4endl + if(verboseLevel > 1) + { + G4cout << " Old Momentum Direction: " << OldMomentum << G4endl << " Old Polarization: " << OldPolarization << G4endl; } @@ -180,106 +211,143 @@ G4OpBoundaryProcess::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) // ID of Navigator which limits step G4int hNavId = G4ParallelWorldProcess::GetHypNavigatorID(); - auto iNav = - G4TransportationManager::GetTransportationManager()->GetActiveNavigatorsIterator(); + auto iNav = G4TransportationManager::GetTransportationManager() + ->GetActiveNavigatorsIterator(); theGlobalNormal = (iNav[hNavId])->GetGlobalExitNormal(theGlobalPoint, &valid); - if (valid) { + if(valid) + { theGlobalNormal = -theGlobalNormal; - } else { + } + else + { G4ExceptionDescription ed; ed << " G4OpBoundaryProcess/PostStepDoIt(): " << " The Navigator reports that it returned an invalid normal" << G4endl; - G4Exception("G4OpBoundaryProcess::PostStepDoIt", "OpBoun01", - EventMustBeAborted, ed, - "Invalid Surface Normal - Geometry must return valid surface normal"); + G4Exception( + "G4OpBoundaryProcess::PostStepDoIt", "OpBoun01", EventMustBeAborted, ed, + "Invalid Surface Normal - Geometry must return valid surface normal"); } - if (OldMomentum * theGlobalNormal > 0.0) { + if(OldMomentum * theGlobalNormal > 0.0) + { #ifdef G4OPTICAL_DEBUG G4ExceptionDescription ed; - ed << " G4OpBoundaryProcess/PostStepDoIt(): theGlobalNormal points in a wrong direction. " << G4endl + ed << " G4OpBoundaryProcess/PostStepDoIt(): theGlobalNormal points in a " + "wrong direction. " + << G4endl << " The momentum of the photon arriving at interface (oldMomentum)" << " must exit the volume cross in the step. " << G4endl - << " So it MUST have dot < 0 with the normal that Exits the new volume (globalNormal)." << G4endl - << " >> The dot product of oldMomentum and global Normal is " << OldMomentum*theGlobalNormal << G4endl + << " So it MUST have dot < 0 with the normal that Exits the new " + "volume (globalNormal)." + << G4endl << " >> The dot product of oldMomentum and global Normal is " + << OldMomentum * theGlobalNormal << G4endl << " Old Momentum (during step) = " << OldMomentum << G4endl - << " Global Normal (Exiting New Vol) = " << theGlobalNormal << G4endl << G4endl; + << " Global Normal (Exiting New Vol) = " << theGlobalNormal << G4endl + << G4endl; G4Exception("G4OpBoundaryProcess::PostStepDoIt", "OpBoun02", - EventMustBeAborted, // Or JustWarning to see if it happens repeatedly on one ray + EventMustBeAborted, // Or JustWarning to see if it happens + // repeatedly on one ray ed, - "Invalid Surface Normal - Geometry must return valid surface normal pointing in the right direction"); + "Invalid Surface Normal - Geometry must return valid surface " + "normal pointing in the right direction"); #else theGlobalNormal = -theGlobalNormal; #endif } G4MaterialPropertyVector* RindexMPV = nullptr; - G4MaterialPropertiesTable* MPT = Material1->GetMaterialPropertiesTable(); - if (MPT) { - RindexMPV = MPT->GetProperty(kRINDEX); - } - else { + G4MaterialPropertiesTable* MPT = Material1->GetMaterialPropertiesTable(); + if(MPT) + { + RindexMPV = MPT->GetProperty(kRINDEX); + } + else + { theStatus = NoRINDEX; - if (verboseLevel > 1) BoundaryProcessVerbose(); + if(verboseLevel > 1) + BoundaryProcessVerbose(); aParticleChange.ProposeLocalEnergyDeposit(thePhotonMomentum); aParticleChange.ProposeTrackStatus(fStopAndKill); return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); - } + } - if (RindexMPV) { + if(RindexMPV) + { Rindex1 = RindexMPV->Value(thePhotonMomentum, idx_rindex1); - } else { + } + else + { theStatus = NoRINDEX; - if (verboseLevel > 1) BoundaryProcessVerbose(); + if(verboseLevel > 1) + BoundaryProcessVerbose(); aParticleChange.ProposeLocalEnergyDeposit(thePhotonMomentum); aParticleChange.ProposeTrackStatus(fStopAndKill); return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); - } + } theReflectivity = 1.; theEfficiency = 0.; theTransmittance = 0.; theSurfaceRoughness = 0.; - theModel = glisur; - theFinish = polished; - G4SurfaceType type = dielectric_dielectric; + theModel = glisur; + theFinish = polished; + G4SurfaceType type = dielectric_dielectric; RindexMPV = nullptr; OpticalSurface = nullptr; - G4LogicalSurface* Surface = G4LogicalBorderSurface::GetSurface(thePrePV, thePostPV); + G4LogicalSurface* Surface = + G4LogicalBorderSurface::GetSurface(thePrePV, thePostPV); - if (Surface == nullptr) { - if (thePostPV->GetMotherLogical() == thePrePV->GetLogicalVolume()) { - Surface = G4LogicalSkinSurface::GetSurface(thePostPV->GetLogicalVolume()); - if (Surface == nullptr) { - Surface = G4LogicalSkinSurface::GetSurface(thePrePV->GetLogicalVolume()); + if(Surface == nullptr) + { + if(thePostPV->GetMotherLogical() == thePrePV->GetLogicalVolume()) + { + Surface = G4LogicalSkinSurface::GetSurface(thePostPV->GetLogicalVolume()); + if(Surface == nullptr) + { + Surface = + G4LogicalSkinSurface::GetSurface(thePrePV->GetLogicalVolume()); } - } else { - Surface = G4LogicalSkinSurface::GetSurface(thePrePV->GetLogicalVolume()); - if (Surface == nullptr) { - Surface = G4LogicalSkinSurface::GetSurface(thePostPV->GetLogicalVolume()); + } + else + { + Surface = G4LogicalSkinSurface::GetSurface(thePrePV->GetLogicalVolume()); + if(Surface == nullptr) + { + Surface = + G4LogicalSkinSurface::GetSurface(thePostPV->GetLogicalVolume()); } - } - } - - if (Surface) { - OpticalSurface = dynamic_cast (Surface->GetSurfaceProperty()); + } } - if (OpticalSurface) { + + if(Surface) + { + OpticalSurface = + dynamic_cast(Surface->GetSurfaceProperty()); + } + if(OpticalSurface) + { type = OpticalSurface->GetType(); theModel = OpticalSurface->GetModel(); theFinish = OpticalSurface->GetFinish(); - G4MaterialPropertiesTable* sMPT = OpticalSurface->GetMaterialPropertiesTable(); - if (sMPT) { - if (theFinish == polishedbackpainted || theFinish == groundbackpainted) { + G4MaterialPropertiesTable* sMPT = + OpticalSurface->GetMaterialPropertiesTable(); + if(sMPT) + { + if(theFinish == polishedbackpainted || theFinish == groundbackpainted) + { RindexMPV = sMPT->GetProperty(kRINDEX); - if (RindexMPV) { + if(RindexMPV) + { Rindex2 = RindexMPV->Value(thePhotonMomentum, idx_rindex_surface); - } else { + } + else + { theStatus = NoRINDEX; - if (verboseLevel > 1) BoundaryProcessVerbose(); + if(verboseLevel > 1) + BoundaryProcessVerbose(); aParticleChange.ProposeLocalEnergyDeposit(thePhotonMomentum); aParticleChange.ProposeTrackStatus(fStopAndKill); return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); @@ -291,31 +359,43 @@ G4OpBoundaryProcess::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) iTE = iTM = 1; G4MaterialPropertyVector* pp; - if ((pp = sMPT->GetProperty(kREFLECTIVITY))) { + if((pp = sMPT->GetProperty(kREFLECTIVITY))) + { theReflectivity = pp->Value(thePhotonMomentum, idx_reflect); } - else if (fRealRIndexMPV && fImagRIndexMPV) { CalculateReflectivity(); } + else if(fRealRIndexMPV && fImagRIndexMPV) + { + CalculateReflectivity(); + } - if ((pp = sMPT->GetProperty(kEFFICIENCY))) { + if((pp = sMPT->GetProperty(kEFFICIENCY))) + { theEfficiency = pp->Value(thePhotonMomentum, idx_eff); } - if ((pp = sMPT->GetProperty(kTRANSMITTANCE))) { + if((pp = sMPT->GetProperty(kTRANSMITTANCE))) + { theTransmittance = pp->Value(thePhotonMomentum, idx_trans); } - if (sMPT->ConstPropertyExists(kSURFACEROUGHNESS)) { + if(sMPT->ConstPropertyExists(kSURFACEROUGHNESS)) + { theSurfaceRoughness = sMPT->GetConstProperty(kSURFACEROUGHNESS); } - if (theModel == unified) { - prob_sl = (pp = sMPT->GetProperty(kSPECULARLOBECONSTANT)) ? - pp->Value(thePhotonMomentum, idx_lobe) : 0.; - prob_ss = (pp = sMPT->GetProperty(kSPECULARSPIKECONSTANT)) ? - pp->Value(thePhotonMomentum, idx_spike) : 0.; - prob_bs = (pp = sMPT->GetProperty(kBACKSCATTERCONSTANT)) ? - pp->Value(thePhotonMomentum, idx_back) : 0.; + if(theModel == unified) + { + prob_sl = (pp = sMPT->GetProperty(kSPECULARLOBECONSTANT)) + ? pp->Value(thePhotonMomentum, idx_lobe) + : 0.; + prob_ss = (pp = sMPT->GetProperty(kSPECULARSPIKECONSTANT)) + ? pp->Value(thePhotonMomentum, idx_spike) + : 0.; + prob_bs = (pp = sMPT->GetProperty(kBACKSCATTERCONSTANT)) + ? pp->Value(thePhotonMomentum, idx_back) + : 0.; } } // end of if(sMPT) - else if (theFinish == polishedbackpainted || theFinish == groundbackpainted ) { + else if(theFinish == polishedbackpainted || theFinish == groundbackpainted) + { aParticleChange.ProposeLocalEnergyDeposit(thePhotonMomentum); aParticleChange.ProposeTrackStatus(fStopAndKill); return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); @@ -323,59 +403,101 @@ G4OpBoundaryProcess::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) } // end of if(OpticalSurface) // DIELECTRIC-DIELECTRIC - if (type == dielectric_dielectric) { - if (theFinish == polished || theFinish == ground) { - if (Material1 == Material2) { + if(type == dielectric_dielectric) + { + if(theFinish == polished || theFinish == ground) + { + if(Material1 == Material2) + { theStatus = SameMaterial; - if (verboseLevel > 1) BoundaryProcessVerbose(); - return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); - } + if(verboseLevel > 1) + BoundaryProcessVerbose(); + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); + } MPT = Material2->GetMaterialPropertiesTable(); - if (MPT) { RindexMPV = MPT->GetProperty(kRINDEX); } - if (RindexMPV) { + if(MPT) + { + RindexMPV = MPT->GetProperty(kRINDEX); + } + if(RindexMPV) + { Rindex2 = RindexMPV->Value(thePhotonMomentum, idx_rindex2); - } else { + } + else + { theStatus = NoRINDEX; - if (verboseLevel > 1) BoundaryProcessVerbose(); + if(verboseLevel > 1) + BoundaryProcessVerbose(); aParticleChange.ProposeLocalEnergyDeposit(thePhotonMomentum); aParticleChange.ProposeTrackStatus(fStopAndKill); return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } } - if (theFinish == polishedbackpainted || theFinish == groundbackpainted) { + if(theFinish == polishedbackpainted || theFinish == groundbackpainted) + { DielectricDielectric(); - } else { + } + else + { G4double rand = G4UniformRand(); - if (rand > theReflectivity + theTransmittance) { DoAbsorption(); } - else if (rand > theReflectivity) { + if(rand > theReflectivity + theTransmittance) + { + DoAbsorption(); + } + else if(rand > theReflectivity) + { theStatus = Transmission; NewMomentum = OldMomentum; NewPolarization = OldPolarization; - } else { - if (theFinish == polishedfrontpainted) { DoReflection(); } - else if (theFinish == groundfrontpainted) { + } + else + { + if(theFinish == polishedfrontpainted) + { + DoReflection(); + } + else if(theFinish == groundfrontpainted) + { theStatus = LambertianReflection; DoReflection(); - } else { DielectricDielectric(); } + } + else + { + DielectricDielectric(); + } } } } - else if (type == dielectric_metal) { DielectricMetal(); } - else if (type == dielectric_LUT) { DielectricLUT(); } - else if (type == dielectric_LUTDAVIS) { DielectricLUTDAVIS(); } - else if (type == dielectric_dichroic) { DielectricDichroic(); } - else { + else if(type == dielectric_metal) + { + DielectricMetal(); + } + else if(type == dielectric_LUT) + { + DielectricLUT(); + } + else if(type == dielectric_LUTDAVIS) + { + DielectricLUTDAVIS(); + } + else if(type == dielectric_dichroic) + { + DielectricDichroic(); + } + else + { G4ExceptionDescription ed; ed << " PostStepDoIt(): Illegal boundary type." << G4endl; G4Exception("G4OpBoundaryProcess", "OpBoun04", JustWarning, ed); return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } - NewMomentum = NewMomentum.unit(); + NewMomentum = NewMomentum.unit(); NewPolarization = NewPolarization.unit(); - if (verboseLevel > 1) { - G4cout << " New Momentum Direction: " << NewMomentum << G4endl + if(verboseLevel > 1) + { + G4cout << " New Momentum Direction: " << NewMomentum << G4endl << " New Polarization: " << NewPolarization << G4endl; BoundaryProcessVerbose(); } @@ -383,15 +505,19 @@ G4OpBoundaryProcess::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) aParticleChange.ProposeMomentumDirection(NewMomentum); aParticleChange.ProposePolarization(NewPolarization); - if (theStatus == FresnelRefraction || theStatus == Transmission ) { + if(theStatus == FresnelRefraction || theStatus == Transmission) + { G4MaterialPropertyVector* groupvel = Material2->GetMaterialPropertiesTable()->GetProperty(kGROUPVEL); - if (groupvel) { - aParticleChange.ProposeVelocity(groupvel->Value(thePhotonMomentum, idx_groupvel)); + if(groupvel) + { + aParticleChange.ProposeVelocity( + groupvel->Value(thePhotonMomentum, idx_groupvel)); } } - if (theStatus == Detection && fInvokeSD) InvokeSD(pStep); + if(theStatus == Detection && fInvokeSD) + InvokeSD(pStep); return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } @@ -399,97 +525,151 @@ G4OpBoundaryProcess::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) void G4OpBoundaryProcess::BoundaryProcessVerbose() const { G4cout << " *** "; - if (theStatus == Undefined) G4cout << "Undefined"; - else if (theStatus == Transmission) G4cout << "Transmission"; - else if (theStatus == FresnelRefraction) G4cout << "FresnelRefraction"; - else if (theStatus == FresnelReflection) G4cout << "FresnelReflection"; - else if (theStatus == TotalInternalReflection) G4cout << "TotalInternalReflection"; - else if (theStatus == LambertianReflection) G4cout << "LambertianReflection"; - else if (theStatus == LobeReflection) G4cout << "LobeReflection"; - else if (theStatus == SpikeReflection) G4cout << "SpikeReflection"; - else if (theStatus == BackScattering) G4cout << "BackScattering"; - else if (theStatus == PolishedLumirrorAirReflection) G4cout << "PolishedLumirrorAirReflection"; - else if (theStatus == PolishedLumirrorGlueReflection) G4cout << "PolishedLumirrorGlueReflection"; - else if (theStatus == PolishedAirReflection) G4cout << "PolishedAirReflection"; - else if (theStatus == PolishedTeflonAirReflection) G4cout << "PolishedTeflonAirReflection"; - else if (theStatus == PolishedTiOAirReflection) G4cout << "PolishedTiOAirReflection"; - else if (theStatus == PolishedTyvekAirReflection) G4cout << "PolishedTyvekAirReflection"; - else if (theStatus == PolishedVM2000AirReflection) G4cout << "PolishedVM2000AirReflection"; - else if (theStatus == PolishedVM2000GlueReflection) G4cout << "PolishedVM2000GlueReflection"; - else if (theStatus == EtchedLumirrorAirReflection) G4cout << "EtchedLumirrorAirReflection"; - else if (theStatus == EtchedLumirrorGlueReflection) G4cout << "EtchedLumirrorGlueReflection"; - else if (theStatus == EtchedAirReflection) G4cout << "EtchedAirReflection"; - else if (theStatus == EtchedTeflonAirReflection) G4cout << "EtchedTeflonAirReflection"; - else if (theStatus == EtchedTiOAirReflection) G4cout << "EtchedTiOAirReflection"; - else if (theStatus == EtchedTyvekAirReflection) G4cout << "EtchedTyvekAirReflection"; - else if (theStatus == EtchedVM2000AirReflection) G4cout << "EtchedVM2000AirReflection"; - else if (theStatus == EtchedVM2000GlueReflection) G4cout << "EtchedVM2000GlueReflection"; - else if (theStatus == GroundLumirrorAirReflection) G4cout << "GroundLumirrorAirReflection"; - else if (theStatus == GroundLumirrorGlueReflection) G4cout << "GroundLumirrorGlueReflection"; - else if (theStatus == GroundAirReflection) G4cout << "GroundAirReflection"; - else if (theStatus == GroundTeflonAirReflection) G4cout << "GroundTeflonAirReflection"; - else if (theStatus == GroundTiOAirReflection) G4cout << "GroundTiOAirReflection"; - else if (theStatus == GroundTyvekAirReflection) G4cout << "GroundTyvekAirReflection"; - else if (theStatus == GroundVM2000AirReflection) G4cout << "GroundVM2000AirReflection"; - else if (theStatus == GroundVM2000GlueReflection) G4cout << "GroundVM2000GlueReflection"; - else if (theStatus == Absorption) G4cout << "Absorption"; - else if (theStatus == Detection) G4cout << "Detection"; - else if (theStatus == NotAtBoundary) G4cout << "NotAtBoundary"; - else if (theStatus == SameMaterial) G4cout << "SameMaterial"; - else if (theStatus == StepTooSmall) G4cout << "StepTooSmall"; - else if (theStatus == NoRINDEX) G4cout << "NoRINDEX"; - else if (theStatus == Dichroic) G4cout << "Dichroic Transmission"; + if(theStatus == Undefined) + G4cout << "Undefined"; + else if(theStatus == Transmission) + G4cout << "Transmission"; + else if(theStatus == FresnelRefraction) + G4cout << "FresnelRefraction"; + else if(theStatus == FresnelReflection) + G4cout << "FresnelReflection"; + else if(theStatus == TotalInternalReflection) + G4cout << "TotalInternalReflection"; + else if(theStatus == LambertianReflection) + G4cout << "LambertianReflection"; + else if(theStatus == LobeReflection) + G4cout << "LobeReflection"; + else if(theStatus == SpikeReflection) + G4cout << "SpikeReflection"; + else if(theStatus == BackScattering) + G4cout << "BackScattering"; + else if(theStatus == PolishedLumirrorAirReflection) + G4cout << "PolishedLumirrorAirReflection"; + else if(theStatus == PolishedLumirrorGlueReflection) + G4cout << "PolishedLumirrorGlueReflection"; + else if(theStatus == PolishedAirReflection) + G4cout << "PolishedAirReflection"; + else if(theStatus == PolishedTeflonAirReflection) + G4cout << "PolishedTeflonAirReflection"; + else if(theStatus == PolishedTiOAirReflection) + G4cout << "PolishedTiOAirReflection"; + else if(theStatus == PolishedTyvekAirReflection) + G4cout << "PolishedTyvekAirReflection"; + else if(theStatus == PolishedVM2000AirReflection) + G4cout << "PolishedVM2000AirReflection"; + else if(theStatus == PolishedVM2000GlueReflection) + G4cout << "PolishedVM2000GlueReflection"; + else if(theStatus == EtchedLumirrorAirReflection) + G4cout << "EtchedLumirrorAirReflection"; + else if(theStatus == EtchedLumirrorGlueReflection) + G4cout << "EtchedLumirrorGlueReflection"; + else if(theStatus == EtchedAirReflection) + G4cout << "EtchedAirReflection"; + else if(theStatus == EtchedTeflonAirReflection) + G4cout << "EtchedTeflonAirReflection"; + else if(theStatus == EtchedTiOAirReflection) + G4cout << "EtchedTiOAirReflection"; + else if(theStatus == EtchedTyvekAirReflection) + G4cout << "EtchedTyvekAirReflection"; + else if(theStatus == EtchedVM2000AirReflection) + G4cout << "EtchedVM2000AirReflection"; + else if(theStatus == EtchedVM2000GlueReflection) + G4cout << "EtchedVM2000GlueReflection"; + else if(theStatus == GroundLumirrorAirReflection) + G4cout << "GroundLumirrorAirReflection"; + else if(theStatus == GroundLumirrorGlueReflection) + G4cout << "GroundLumirrorGlueReflection"; + else if(theStatus == GroundAirReflection) + G4cout << "GroundAirReflection"; + else if(theStatus == GroundTeflonAirReflection) + G4cout << "GroundTeflonAirReflection"; + else if(theStatus == GroundTiOAirReflection) + G4cout << "GroundTiOAirReflection"; + else if(theStatus == GroundTyvekAirReflection) + G4cout << "GroundTyvekAirReflection"; + else if(theStatus == GroundVM2000AirReflection) + G4cout << "GroundVM2000AirReflection"; + else if(theStatus == GroundVM2000GlueReflection) + G4cout << "GroundVM2000GlueReflection"; + else if(theStatus == Absorption) + G4cout << "Absorption"; + else if(theStatus == Detection) + G4cout << "Detection"; + else if(theStatus == NotAtBoundary) + G4cout << "NotAtBoundary"; + else if(theStatus == SameMaterial) + G4cout << "SameMaterial"; + else if(theStatus == StepTooSmall) + G4cout << "StepTooSmall"; + else if(theStatus == NoRINDEX) + G4cout << "NoRINDEX"; + else if(theStatus == Dichroic) + G4cout << "Dichroic Transmission"; G4cout << " ***" << G4endl; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4ThreeVector -G4OpBoundaryProcess::GetFacetNormal(const G4ThreeVector& Momentum, - const G4ThreeVector& Normal ) const +G4ThreeVector G4OpBoundaryProcess::GetFacetNormal( + const G4ThreeVector& Momentum, const G4ThreeVector& Normal) const { G4ThreeVector facetNormal; - if (theModel == unified || theModel == LUT || theModel== DAVIS) { + if(theModel == unified || theModel == LUT || theModel == DAVIS) + { /* This function codes alpha to a random value taken from the distribution p(alpha) = g(alpha; 0, sigma_alpha)*std::sin(alpha), for alpha > 0 and alpha < 90, where g(alpha; 0, sigma_alpha) is a gaussian distribution with mean 0 and standard deviation sigma_alpha. */ G4double sigma_alpha = 0.0; - if (OpticalSurface) sigma_alpha = OpticalSurface->GetSigmaAlpha(); - if (sigma_alpha == 0.0) { return Normal; } + if(OpticalSurface) + sigma_alpha = OpticalSurface->GetSigmaAlpha(); + if(sigma_alpha == 0.0) + { + return Normal; + } - G4double f_max = std::min(1.0, 4.*sigma_alpha); - G4double alpha, phi, sinAlpha;//, cosPhi, sinPhi; + G4double f_max = std::min(1.0, 4. * sigma_alpha); + G4double alpha, phi, sinAlpha; //, cosPhi, sinPhi; - do { // Loop checking, 13-Aug-2015, Peter Gumplinger - do { // Loop checking, 13-Aug-2015, Peter Gumplinger + do + { // Loop checking, 13-Aug-2015, Peter Gumplinger + do + { // Loop checking, 13-Aug-2015, Peter Gumplinger alpha = G4RandGauss::shoot(0.0, sigma_alpha); - } while (G4UniformRand()*f_max > std::sin(alpha) || alpha >= halfpi); + } while(G4UniformRand() * f_max > std::sin(alpha) || alpha >= halfpi); - phi = G4UniformRand()*twopi; + phi = G4UniformRand() * twopi; sinAlpha = std::sin(alpha); - facetNormal.set(sinAlpha*std::cos(phi), sinAlpha*std::sin(phi), std::cos(alpha)); + facetNormal.set(sinAlpha * std::cos(phi), sinAlpha * std::sin(phi), + std::cos(alpha)); facetNormal.rotateUz(Normal); - } while (Momentum * facetNormal >= 0.0); - } - else { + } while(Momentum * facetNormal >= 0.0); + } + else + { G4double polish = 1.0; - if (OpticalSurface) polish = OpticalSurface->GetPolish(); - if (polish < 1.0) { - do { // Loop checking, 13-Aug-2015, Peter Gumplinger + if(OpticalSurface) + polish = OpticalSurface->GetPolish(); + if(polish < 1.0) + { + do + { // Loop checking, 13-Aug-2015, Peter Gumplinger G4ThreeVector smear; - do { // Loop checking, 13-Aug-2015, Peter Gumplinger - smear.setX(2.*G4UniformRand()-1.); - smear.setY(2.*G4UniformRand()-1.); - smear.setZ(2.*G4UniformRand()-1.); - } while (smear.mag() > 1.0); - facetNormal = Normal + (1.-polish)*smear; - } while (Momentum * facetNormal >= 0.0); + do + { // Loop checking, 13-Aug-2015, Peter Gumplinger + smear.setX(2. * G4UniformRand() - 1.); + smear.setY(2. * G4UniformRand() - 1.); + smear.setZ(2. * G4UniformRand() - 1.); + } while(smear.mag() > 1.0); + facetNormal = Normal + (1. - polish) * smear; + } while(Momentum * facetNormal >= 0.0); facetNormal = facetNormal.unit(); - } else { + } + else + { facetNormal = Normal; } - } + } return facetNormal; } @@ -500,64 +680,95 @@ void G4OpBoundaryProcess::DielectricMetal() G4double rand, EdotN; G4ThreeVector A_trans, A_paral; - do { + do + { ++n; rand = G4UniformRand(); - if (rand > theReflectivity && n == 1) { - if (rand > theReflectivity + theTransmittance) { + if(rand > theReflectivity && n == 1) + { + if(rand > theReflectivity + theTransmittance) + { DoAbsorption(); - } else { + } + else + { theStatus = Transmission; NewMomentum = OldMomentum; NewPolarization = OldPolarization; } break; - } else { - if (fRealRIndexMPV && fImagRIndexMPV) { - if (n > 1) { + } + else + { + if(fRealRIndexMPV && fImagRIndexMPV) + { + if(n > 1) + { CalculateReflectivity(); - if (!G4BooleanRand(theReflectivity)) { + if(!G4BooleanRand(theReflectivity)) + { DoAbsorption(); break; } } } - if (theModel == glisur || theFinish == polished) { + if(theModel == glisur || theFinish == polished) + { DoReflection(); - } else { - if (n == 1) ChooseReflection(); - if (theStatus == LambertianReflection) { DoReflection(); } - else if (theStatus == BackScattering) { - NewMomentum = -OldMomentum; + } + else + { + if(n == 1) + ChooseReflection(); + if(theStatus == LambertianReflection) + { + DoReflection(); + } + else if(theStatus == BackScattering) + { + NewMomentum = -OldMomentum; NewPolarization = -OldPolarization; - } else { - if (theStatus == LobeReflection) { - if (fRealRIndexMPV && fImagRIndexMPV){ + } + else + { + if(theStatus == LobeReflection) + { + if(fRealRIndexMPV && fImagRIndexMPV) + { // - } else { - theFacetNormal = GetFacetNormal(OldMomentum,theGlobalNormal); + } + else + { + theFacetNormal = GetFacetNormal(OldMomentum, theGlobalNormal); } } - NewMomentum = OldMomentum - 2.*OldMomentum*theFacetNormal*theFacetNormal; - EdotN = OldPolarization * theFacetNormal; + NewMomentum = + OldMomentum - 2. * OldMomentum * theFacetNormal * theFacetNormal; + EdotN = OldPolarization * theFacetNormal; - A_trans = (sint1 > 0.0) ? OldMomentum.cross(theFacetNormal).unit() : OldPolarization; + A_trans = (sint1 > 0.0) ? OldMomentum.cross(theFacetNormal).unit() + : OldPolarization; A_paral = NewMomentum.cross(A_trans).unit(); - if (iTE > 0 && iTM > 0) { - NewPolarization = -OldPolarization + (2.*EdotN)*theFacetNormal; - } else if (iTE > 0) { + if(iTE > 0 && iTM > 0) + { + NewPolarization = -OldPolarization + (2. * EdotN) * theFacetNormal; + } + else if(iTE > 0) + { NewPolarization = -A_trans; - } else if (iTM > 0) { + } + else if(iTM > 0) + { NewPolarization = -A_paral; } } } - OldMomentum = NewMomentum; + OldMomentum = NewMomentum; OldPolarization = NewPolarization; - } - // Loop checking, 13-Aug-2015, Peter Gumplinger - } while (NewMomentum * theGlobalNormal < 0.0); + } + // Loop checking, 13-Aug-2015, Peter Gumplinger + } while(NewMomentum * theGlobalNormal < 0.0); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -567,63 +778,72 @@ void G4OpBoundaryProcess::DielectricLUT() G4double AngularDistributionValue, thetaRad, phiRad, EdotN; G4ThreeVector PerpendicularVectorTheta, PerpendicularVectorPhi; - theStatus = G4OpBoundaryProcessStatus(G4int(theFinish) + - (G4int(NoRINDEX)-G4int(groundbackpainted))); + theStatus = G4OpBoundaryProcessStatus( + G4int(theFinish) + (G4int(NoRINDEX) - G4int(groundbackpainted))); G4int thetaIndexMax = OpticalSurface->GetThetaIndexMax(); G4int phiIndexMax = OpticalSurface->GetPhiIndexMax(); G4double rand; - do { + do + { rand = G4UniformRand(); - if (rand > theReflectivity) { - if (rand > theReflectivity + theTransmittance) { + if(rand > theReflectivity) + { + if(rand > theReflectivity + theTransmittance) + { DoAbsorption(); - } else { + } + else + { theStatus = Transmission; NewMomentum = OldMomentum; NewPolarization = OldPolarization; } break; } - else { + else + { // Calculate Angle between Normal and Photon Momentum G4double anglePhotonToNormal = OldMomentum.angle(-theGlobalNormal); - // Round it to closest integer - G4int angleIncident = G4int(std::floor(180./pi*anglePhotonToNormal+0.5)); + // Round to closest integer: LBNL model array has 91 values + G4int angleIncident = G4lrint(anglePhotonToNormal / CLHEP::deg); // Take random angles THETA and PHI, // and see if below Probability - if not - Redo - do { - thetaIndex = G4RandFlat::shootInt(thetaIndexMax-1); - phiIndex = G4RandFlat::shootInt(phiIndexMax-1); + do + { + thetaIndex = G4RandFlat::shootInt(thetaIndexMax - 1); + phiIndex = G4RandFlat::shootInt(phiIndexMax - 1); // Find probability with the new indeces from LUT - AngularDistributionValue = OpticalSurface-> - GetAngularDistributionValue(angleIncident, thetaIndex, phiIndex); + AngularDistributionValue = OpticalSurface->GetAngularDistributionValue( + angleIncident, thetaIndex, phiIndex); // Loop checking, 13-Aug-2015, Peter Gumplinger - } while (!G4BooleanRand(AngularDistributionValue)); + } while(!G4BooleanRand(AngularDistributionValue)); - thetaRad = (-90 + 4*thetaIndex)*pi/180.; - phiRad = (-90 + 5*phiIndex)*pi/180.; + thetaRad = (-90 + 4 * thetaIndex) * pi / 180.; + phiRad = (-90 + 5 * phiIndex) * pi / 180.; // Rotate Photon Momentum in Theta, then in Phi NewMomentum = -OldMomentum; PerpendicularVectorTheta = NewMomentum.cross(theGlobalNormal); - if (PerpendicularVectorTheta.mag() < kCarTolerance ) { + if(PerpendicularVectorTheta.mag() < kCarTolerance) + { PerpendicularVectorTheta = NewMomentum.orthogonal(); } - NewMomentum = NewMomentum.rotate(anglePhotonToNormal-thetaRad, PerpendicularVectorTheta); + NewMomentum = NewMomentum.rotate(anglePhotonToNormal - thetaRad, + PerpendicularVectorTheta); PerpendicularVectorPhi = PerpendicularVectorTheta.cross(NewMomentum); - NewMomentum = NewMomentum.rotate(-phiRad,PerpendicularVectorPhi); + NewMomentum = NewMomentum.rotate(-phiRad, PerpendicularVectorPhi); // Rotate Polarization too: - theFacetNormal = (NewMomentum - OldMomentum).unit(); - EdotN = OldPolarization * theFacetNormal; - NewPolarization = -OldPolarization + (2.*EdotN)*theFacetNormal; + theFacetNormal = (NewMomentum - OldMomentum).unit(); + EdotN = OldPolarization * theFacetNormal; + NewPolarization = -OldPolarization + (2. * EdotN) * theFacetNormal; } // Loop checking, 13-Aug-2015, Peter Gumplinger - } while (NewMomentum * theGlobalNormal <= 0.0); + } while(NewMomentum * theGlobalNormal <= 0.0); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -633,85 +853,97 @@ void G4OpBoundaryProcess::DielectricLUTDAVIS() G4double ReflectivityValue, elevation, azimuth, EdotN; G4double anglePhotonToNormal; - G4int LUTbin = OpticalSurface->GetLUTbins(); + G4int LUTbin = OpticalSurface->GetLUTbins(); G4double rand = G4UniformRand(); - do { + do + { anglePhotonToNormal = OldMomentum.angle(-theGlobalNormal); - angleIncident = G4int(std::floor(180./pi*anglePhotonToNormal+0.5)); + // Davis model has 90 reflection bins: round down + angleIncident = G4lint(anglePhotonToNormal / CLHEP::deg); ReflectivityValue = OpticalSurface->GetReflectivityLUTValue(angleIncident); - if (rand > ReflectivityValue) { - if (theEfficiency > 0.) { + if(rand > ReflectivityValue) + { + if(theEfficiency > 0.) + { DoAbsorption(); break; } - else { + else + { theStatus = Transmission; - if (angleIncident <= 0.01) { + if(angleIncident <= 0.01) + { NewMomentum = OldMomentum; break; } - do { - random = G4RandFlat::shootInt(1, LUTbin+1); - angindex = (((random*2)-1)) + angleIncident*LUTbin*2 + 3640000; + do + { + random = G4RandFlat::shootInt(1, LUTbin + 1); + angindex = + (((random * 2) - 1)) + angleIncident * LUTbin * 2 + 3640000; - azimuth = OpticalSurface->GetAngularDistributionValueLUT(angindex-1); - elevation= OpticalSurface->GetAngularDistributionValueLUT(angindex); - } while (elevation == 0. && azimuth == 0.); + azimuth = + OpticalSurface->GetAngularDistributionValueLUT(angindex - 1); + elevation = OpticalSurface->GetAngularDistributionValueLUT(angindex); + } while(elevation == 0. && azimuth == 0.); NewMomentum = -OldMomentum; - G4ThreeVector v = theGlobalNormal.cross(-NewMomentum); - G4ThreeVector vNorm = v/v.mag(); - G4ThreeVector u = vNorm.cross(theGlobalNormal); + G4ThreeVector v = theGlobalNormal.cross(-NewMomentum); + G4ThreeVector vNorm = v / v.mag(); + G4ThreeVector u = vNorm.cross(theGlobalNormal); - u = u *= (std::sin(elevation) * std::cos(azimuth)); - v = vNorm *= (std::sin(elevation) * std::sin(azimuth)); + u = u *= (std::sin(elevation) * std::cos(azimuth)); + v = vNorm *= (std::sin(elevation) * std::sin(azimuth)); G4ThreeVector w = theGlobalNormal *= (std::cos(elevation)); - NewMomentum = G4ThreeVector(u+v+w); + NewMomentum = G4ThreeVector(u + v + w); // Rotate Polarization too: - theFacetNormal = (NewMomentum - OldMomentum).unit(); - EdotN = OldPolarization * theFacetNormal; - NewPolarization = -OldPolarization + (2.*EdotN)*theFacetNormal; + theFacetNormal = (NewMomentum - OldMomentum).unit(); + EdotN = OldPolarization * theFacetNormal; + NewPolarization = -OldPolarization + (2. * EdotN) * theFacetNormal; } } - else { + else + { theStatus = LobeReflection; - if (angleIncident == 0) { - NewMomentum = -OldMomentum; - break; + if(angleIncident == 0) + { + NewMomentum = -OldMomentum; + break; } - do { - random = G4RandFlat::shootInt(1, LUTbin+1); - angindex = (((random*2)-1)) + (angleIncident-1) * LUTbin*2; + do + { + random = G4RandFlat::shootInt(1, LUTbin + 1); + angindex = (((random * 2) - 1)) + (angleIncident - 1) * LUTbin * 2; - azimuth = OpticalSurface->GetAngularDistributionValueLUT(angindex-1); + azimuth = OpticalSurface->GetAngularDistributionValueLUT(angindex - 1); elevation = OpticalSurface->GetAngularDistributionValueLUT(angindex); - } while (elevation == 0. && azimuth == 0.); + } while(elevation == 0. && azimuth == 0.); NewMomentum = -OldMomentum; G4ThreeVector v = theGlobalNormal.cross(-NewMomentum); - G4ThreeVector vNorm = v/v.mag(); + G4ThreeVector vNorm = v / v.mag(); G4ThreeVector u = vNorm.cross(theGlobalNormal); - u = u *= (std::sin(elevation) * std::cos(azimuth)); - v = vNorm *= (std::sin(elevation) * std::sin(azimuth)); - G4ThreeVector w = theGlobalNormal*=(std::cos(elevation)); + u = u *= (std::sin(elevation) * std::cos(azimuth)); + v = vNorm *= (std::sin(elevation) * std::sin(azimuth)); + G4ThreeVector w = theGlobalNormal *= (std::cos(elevation)); - NewMomentum = G4ThreeVector(u+v+w); + NewMomentum = G4ThreeVector(u + v + w); // Rotate Polarization too: (needs revision) NewPolarization = OldPolarization; } - } while (NewMomentum * theGlobalNormal <= 0.0); + } while(NewMomentum * theGlobalNormal <= 0.0); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -721,59 +953,77 @@ void G4OpBoundaryProcess::DielectricDichroic() G4double anglePhotonToNormal = OldMomentum.angle(-theGlobalNormal); // Round it to closest integer - G4double angleIncident = std::floor(180./pi*anglePhotonToNormal+0.5); + G4double angleIncident = std::floor(180. / pi * anglePhotonToNormal + 0.5); - if (!DichroicVector) { - if (OpticalSurface) DichroicVector = OpticalSurface->GetDichroicVector(); + if(!DichroicVector) + { + if(OpticalSurface) + DichroicVector = OpticalSurface->GetDichroicVector(); } - if (DichroicVector) { - G4double wavelength = h_Planck*c_light/thePhotonMomentum; - theTransmittance = DichroicVector->Value(wavelength/nm,angleIncident,idx,idy)*perCent; - // G4cout << "wavelength: " << std::floor(wavelength/nm) - // << "nm" << G4endl; - // G4cout << "Incident angle: " << angleIncident << "deg" << G4endl; - // G4cout << "Transmittance: " - // << std::floor(theTransmittance/perCent) << "%" << G4endl; - } else { + if(DichroicVector) + { + G4double wavelength = h_Planck * c_light / thePhotonMomentum; + theTransmittance = + DichroicVector->Value(wavelength / nm, angleIncident, idx, idy) * perCent; + // G4cout << "wavelength: " << std::floor(wavelength/nm) + // << "nm" << G4endl; + // G4cout << "Incident angle: " << angleIncident << "deg" << G4endl; + // G4cout << "Transmittance: " + // << std::floor(theTransmittance/perCent) << "%" << G4endl; + } + else + { G4ExceptionDescription ed; ed << " G4OpBoundaryProcess/DielectricDichroic(): " - << " The dichroic surface has no G4Physics2DVector" - << G4endl; + << " The dichroic surface has no G4Physics2DVector" << G4endl; G4Exception("G4OpBoundaryProcess::DielectricDichroic", "OpBoun03", - FatalException,ed, + FatalException, ed, "A dichroic surface must have an associated G4Physics2DVector"); } - if (!G4BooleanRand(theTransmittance)) { // Not transmitted, so reflect - if (theModel == glisur || theFinish == polished) { + if(!G4BooleanRand(theTransmittance)) + { // Not transmitted, so reflect + if(theModel == glisur || theFinish == polished) + { DoReflection(); - } else { + } + else + { ChooseReflection(); - if (theStatus == LambertianReflection) { + if(theStatus == LambertianReflection) + { DoReflection(); - } else if (theStatus == BackScattering) { - NewMomentum = -OldMomentum; + } + else if(theStatus == BackScattering) + { + NewMomentum = -OldMomentum; NewPolarization = -OldPolarization; - } else { + } + else + { G4double PdotN, EdotN; - do { - if (theStatus == LobeReflection) { + do + { + if(theStatus == LobeReflection) + { theFacetNormal = GetFacetNormal(OldMomentum, theGlobalNormal); } - PdotN = OldMomentum * theFacetNormal; - NewMomentum = OldMomentum - (2.*PdotN)*theFacetNormal; + PdotN = OldMomentum * theFacetNormal; + NewMomentum = OldMomentum - (2. * PdotN) * theFacetNormal; // Loop checking, 13-Aug-2015, Peter Gumplinger - } while (NewMomentum * theGlobalNormal <= 0.0); + } while(NewMomentum * theGlobalNormal <= 0.0); - EdotN = OldPolarization * theFacetNormal; - NewPolarization = -OldPolarization + (2.*EdotN)*theFacetNormal; + EdotN = OldPolarization * theFacetNormal; + NewPolarization = -OldPolarization + (2. * EdotN) * theFacetNormal; } } - } else { - theStatus = Dichroic; - NewMomentum = OldMomentum; - NewPolarization = OldPolarization; + } + else + { + theStatus = Dichroic; + NewMomentum = OldMomentum; + NewPolarization = OldPolarization; } } @@ -784,14 +1034,15 @@ void G4OpBoundaryProcess::DielectricDielectric() G4bool Swap = false; G4bool SurfaceRoughnessCriterionPass = true; - if (theSurfaceRoughness != 0. && Rindex1 > Rindex2) { - G4double wavelength = h_Planck*c_light/thePhotonMomentum; - G4double SurfaceRoughnessCriterion = - std::exp(-std::pow((4.*pi*theSurfaceRoughness*Rindex1*cost1/wavelength),2)); + if(theSurfaceRoughness != 0. && Rindex1 > Rindex2) + { + G4double wavelength = h_Planck * c_light / thePhotonMomentum; + G4double SurfaceRoughnessCriterion = std::exp(-std::pow( + (4. * pi * theSurfaceRoughness * Rindex1 * cost1 / wavelength), 2)); SurfaceRoughnessCriterionPass = G4BooleanRand(SurfaceRoughnessCriterion); } - leap: +leap: G4bool Through = false; G4bool Done = false; @@ -803,126 +1054,183 @@ void G4OpBoundaryProcess::DielectricDielectric() G4double E2_abs, C_parl, C_perp; G4double alpha; - do { - if (Through) { - Swap = !Swap; - Through = false; + do + { + if(Through) + { + Swap = !Swap; + Through = false; theGlobalNormal = -theGlobalNormal; G4SwapPtr(Material1, Material2); G4SwapObj(&Rindex1, &Rindex2); } - if (theFinish == polished) { theFacetNormal = theGlobalNormal; } - else { theFacetNormal = GetFacetNormal(OldMomentum, theGlobalNormal); } + if(theFinish == polished) + { + theFacetNormal = theGlobalNormal; + } + else + { + theFacetNormal = GetFacetNormal(OldMomentum, theGlobalNormal); + } - //PdotN = OldMomentum * theFacetNormal; + // PdotN = OldMomentum * theFacetNormal; EdotN = OldPolarization * theFacetNormal; - cost1 = -OldMomentum*theFacetNormal; - if (std::abs(cost1) < 1.0-kCarTolerance) { - sint1 = std::sqrt(1.-cost1*cost1); - sint2 = sint1*Rindex1/Rindex2; // *** Snell's Law *** - // this isn't a sine as we might expect from the name; can be > 1 - } else { + cost1 = -OldMomentum * theFacetNormal; + if(std::abs(cost1) < 1.0 - kCarTolerance) + { + sint1 = std::sqrt(1. - cost1 * cost1); + sint2 = sint1 * Rindex1 / Rindex2; // *** Snell's Law *** + // this isn't a sine as we might + // expect from the name; can be > 1 + } + else + { sint1 = 0.0; sint2 = 0.0; } // TOTAL INTERNAL REFLECTION - if (sint2 >= 1.0) { + if(sint2 >= 1.0) + { Swap = false; theStatus = TotalInternalReflection; - if (!SurfaceRoughnessCriterionPass) theStatus = LambertianReflection; - if (theModel == unified && theFinish != polished) ChooseReflection(); - if (theStatus == LambertianReflection) { DoReflection(); } - else if (theStatus == BackScattering) { - NewMomentum = -OldMomentum; + if(!SurfaceRoughnessCriterionPass) + theStatus = LambertianReflection; + if(theModel == unified && theFinish != polished) + ChooseReflection(); + if(theStatus == LambertianReflection) + { + DoReflection(); + } + else if(theStatus == BackScattering) + { + NewMomentum = -OldMomentum; NewPolarization = -OldPolarization; - } else { - //PdotN = OldMomentum * theFacetNormal; - NewMomentum = OldMomentum - 2.*OldMomentum*theFacetNormal*theFacetNormal; - EdotN = OldPolarization * theFacetNormal; - NewPolarization = -OldPolarization + (2.*EdotN)*theFacetNormal; + } + else + { + // PdotN = OldMomentum * theFacetNormal; + NewMomentum = + OldMomentum - 2. * OldMomentum * theFacetNormal * theFacetNormal; + EdotN = OldPolarization * theFacetNormal; + NewPolarization = -OldPolarization + (2. * EdotN) * theFacetNormal; } } // NOT TIR - else if (sint2 < 1.0) { + else if(sint2 < 1.0) + { // Calculate amplitude for transmission (Q = P x N) - if (cost1 > 0.0) { cost2 = std::sqrt(1.-sint2*sint2); } - else { cost2 = -std::sqrt(1.-sint2*sint2); } + if(cost1 > 0.0) + { + cost2 = std::sqrt(1. - sint2 * sint2); + } + else + { + cost2 = -std::sqrt(1. - sint2 * sint2); + } - if (sint1 > 0.0) { + if(sint1 > 0.0) + { A_trans = (OldMomentum.cross(theFacetNormal)).unit(); E1_perp = OldPolarization * A_trans; E1pp = E1_perp * A_trans; E1pl = OldPolarization - E1pp; E1_parl = E1pl.mag(); } - else { - A_trans = OldPolarization; + else + { + A_trans = OldPolarization; // Here we Follow Jackson's conventions and set the parallel // component = 1 in case of a ray perpendicular to the surface - E1_perp = 0.0; - E1_parl = 1.0; + E1_perp = 0.0; + E1_parl = 1.0; } - s1 = Rindex1*cost1; - E2_perp = 2.*s1*E1_perp/(Rindex1*cost1+Rindex2*cost2); - E2_parl = 2.*s1*E1_parl/(Rindex2*cost1+Rindex1*cost2); - E2_total = E2_perp*E2_perp + E2_parl*E2_parl; - s2 = Rindex2*cost2*E2_total; + s1 = Rindex1 * cost1; + E2_perp = 2. * s1 * E1_perp / (Rindex1 * cost1 + Rindex2 * cost2); + E2_parl = 2. * s1 * E1_parl / (Rindex2 * cost1 + Rindex1 * cost2); + E2_total = E2_perp * E2_perp + E2_parl * E2_parl; + s2 = Rindex2 * cost2 * E2_total; - if (theTransmittance > 0.) TransCoeff = theTransmittance; - else if (cost1 != 0.0) TransCoeff = s2/s1; - else TransCoeff = 0.0; + if(theTransmittance > 0.) + TransCoeff = theTransmittance; + else if(cost1 != 0.0) + TransCoeff = s2 / s1; + else + TransCoeff = 0.0; // NOT TIR: REFLECTION - if (!G4BooleanRand(TransCoeff)) { - Swap = false; + if(!G4BooleanRand(TransCoeff)) + { + Swap = false; theStatus = FresnelReflection; - if (!SurfaceRoughnessCriterionPass) theStatus = LambertianReflection; - if (theModel == unified && theFinish != polished) ChooseReflection(); - if (theStatus == LambertianReflection) { DoReflection(); } - else if (theStatus == BackScattering) { + if(!SurfaceRoughnessCriterionPass) + theStatus = LambertianReflection; + if(theModel == unified && theFinish != polished) + ChooseReflection(); + if(theStatus == LambertianReflection) + { + DoReflection(); + } + else if(theStatus == BackScattering) + { NewMomentum = -OldMomentum; NewPolarization = -OldPolarization; - } else { - NewMomentum = OldMomentum - 2.*OldMomentum*theFacetNormal*theFacetNormal; - if (sint1 > 0.0) { // incident ray oblique - E2_parl = Rindex2*E2_parl/Rindex1 - E1_parl; - E2_perp = E2_perp - E1_perp; - E2_total = E2_perp*E2_perp + E2_parl*E2_parl; - A_paral = (NewMomentum.cross(A_trans)).unit(); - E2_abs = std::sqrt(E2_total); - C_parl = E2_parl/E2_abs; - C_perp = E2_perp/E2_abs; + } + else + { + NewMomentum = + OldMomentum - 2. * OldMomentum * theFacetNormal * theFacetNormal; + if(sint1 > 0.0) + { // incident ray oblique + E2_parl = Rindex2 * E2_parl / Rindex1 - E1_parl; + E2_perp = E2_perp - E1_perp; + E2_total = E2_perp * E2_perp + E2_parl * E2_parl; + A_paral = (NewMomentum.cross(A_trans)).unit(); + E2_abs = std::sqrt(E2_total); + C_parl = E2_parl / E2_abs; + C_perp = E2_perp / E2_abs; - NewPolarization = C_parl*A_paral + C_perp*A_trans; - } else { // incident ray perpendicular - if (Rindex2 > Rindex1) { NewPolarization = - OldPolarization; } - else { NewPolarization = OldPolarization; } + NewPolarization = C_parl * A_paral + C_perp * A_trans; + } + else + { // incident ray perpendicular + if(Rindex2 > Rindex1) + { + NewPolarization = -OldPolarization; + } + else + { + NewPolarization = OldPolarization; + } } } } // NOT TIR: TRANSMISSION - else { - Inside = !Inside; - Through = true; + else + { + Inside = !Inside; + Through = true; theStatus = FresnelRefraction; - if (sint1 > 0.0) { // incident ray oblique - alpha = cost1 - cost2*(Rindex2/Rindex1); - NewMomentum = (OldMomentum + alpha*theFacetNormal).unit(); - A_paral = (NewMomentum.cross(A_trans)).unit(); - E2_abs = std::sqrt(E2_total); - C_parl = E2_parl/E2_abs; - C_perp = E2_perp/E2_abs; + if(sint1 > 0.0) + { // incident ray oblique + alpha = cost1 - cost2 * (Rindex2 / Rindex1); + NewMomentum = (OldMomentum + alpha * theFacetNormal).unit(); + A_paral = (NewMomentum.cross(A_trans)).unit(); + E2_abs = std::sqrt(E2_total); + C_parl = E2_parl / E2_abs; + C_perp = E2_perp / E2_abs; - NewPolarization = C_parl*A_paral + C_perp*A_trans; - } else { // incident ray perpendicular - NewMomentum = OldMomentum; + NewPolarization = C_parl * A_paral + C_perp * A_trans; + } + else + { // incident ray perpendicular + NewMomentum = OldMomentum; NewPolarization = OldPolarization; } } @@ -931,32 +1239,51 @@ void G4OpBoundaryProcess::DielectricDielectric() OldMomentum = NewMomentum.unit(); OldPolarization = NewPolarization.unit(); - if (theStatus == FresnelRefraction) { Done = (NewMomentum * theGlobalNormal <= 0.0); } - else { Done = (NewMomentum * theGlobalNormal >= -kCarTolerance); } - // Loop checking, 13-Aug-2015, Peter Gumplinger - } while (!Done); + if(theStatus == FresnelRefraction) + { + Done = (NewMomentum * theGlobalNormal <= 0.0); + } + else + { + Done = (NewMomentum * theGlobalNormal >= -kCarTolerance); + } + // Loop checking, 13-Aug-2015, Peter Gumplinger + } while(!Done); - if (Inside && !Swap) { - if (theFinish == polishedbackpainted || theFinish == groundbackpainted) { + if(Inside && !Swap) + { + if(theFinish == polishedbackpainted || theFinish == groundbackpainted) + { G4double rand = G4UniformRand(); - if (rand > theReflectivity + theTransmittance) { DoAbsorption(); } - else if (rand > theReflectivity) { - theStatus = Transmission; - NewMomentum = OldMomentum; + if(rand > theReflectivity + theTransmittance) + { + DoAbsorption(); + } + else if(rand > theReflectivity) + { + theStatus = Transmission; + NewMomentum = OldMomentum; NewPolarization = OldPolarization; - } else { - if (theStatus != FresnelRefraction ) { theGlobalNormal = -theGlobalNormal; } - else { + } + else + { + if(theStatus != FresnelRefraction) + { + theGlobalNormal = -theGlobalNormal; + } + else + { Swap = !Swap; G4SwapPtr(Material1, Material2); G4SwapObj(&Rindex1, &Rindex2); } - if (theFinish == groundbackpainted) theStatus = LambertianReflection; + if(theFinish == groundbackpainted) + theStatus = LambertianReflection; DoReflection(); theGlobalNormal = -theGlobalNormal; - OldMomentum = NewMomentum; + OldMomentum = NewMomentum; goto leap; } @@ -965,8 +1292,7 @@ void G4OpBoundaryProcess::DielectricDielectric() } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4double G4OpBoundaryProcess::GetMeanFreePath(const G4Track& , - G4double , +G4double G4OpBoundaryProcess::GetMeanFreePath(const G4Track&, G4double, G4ForceCondition* condition) { *condition = Forced; @@ -976,10 +1302,10 @@ G4double G4OpBoundaryProcess::GetMeanFreePath(const G4Track& , //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4double G4OpBoundaryProcess::GetIncidentAngle() { - G4double PdotN = OldMomentum * theFacetNormal; - G4double magP = OldMomentum.mag(); - G4double magN = theFacetNormal.mag(); - G4double incidentangle = pi - std::acos(PdotN/(magP*magN)); + G4double PdotN = OldMomentum * theFacetNormal; + G4double magP = OldMomentum.mag(); + G4double magN = theFacetNormal.mag(); + G4double incidentangle = pi - std::acos(PdotN / (magP * magN)); return incidentangle; } @@ -995,58 +1321,67 @@ G4double G4OpBoundaryProcess::GetReflectivity(G4double E1_perp, G4complex N1(Rindex1, 0.), N2(RealRindex, ImaginaryRindex); G4complex CosPhi; - G4complex u(1.,0.); //unit number 1 + G4complex u(1., 0.); // unit number 1 - G4complex numeratorTE; // E1_perp=1 E1_parl=0 -> TE polarization - G4complex numeratorTM; // E1_parl=1 E1_perp=0 -> TM polarization + G4complex numeratorTE; // E1_perp=1 E1_parl=0 -> TE polarization + G4complex numeratorTM; // E1_parl=1 E1_perp=0 -> TM polarization G4complex denominatorTE, denominatorTM; G4complex rTM, rTE; G4MaterialPropertiesTable* MPT = Material1->GetMaterialPropertiesTable(); - G4MaterialPropertyVector* ppR = MPT->GetProperty(kREALRINDEX); - G4MaterialPropertyVector* ppI = MPT->GetProperty(kIMAGINARYRINDEX); - if (ppR && ppI) { + G4MaterialPropertyVector* ppR = MPT->GetProperty(kREALRINDEX); + G4MaterialPropertyVector* ppI = MPT->GetProperty(kIMAGINARYRINDEX); + if(ppR && ppI) + { G4double RRindex = ppR->Value(thePhotonMomentum, idx_rrindex); G4double IRindex = ppI->Value(thePhotonMomentum, idx_irindex); - N1 = G4complex(RRindex,IRindex); + N1 = G4complex(RRindex, IRindex); } // Following two equations, rTM and rTE, are from: "Introduction To Modern // Optics" written by Fowles - CosPhi = std::sqrt(u-((std::sin(incidentangle)*std::sin(incidentangle))*(N1*N1)/(N2*N2))); + CosPhi = std::sqrt(u - ((std::sin(incidentangle) * std::sin(incidentangle)) * + (N1 * N1) / (N2 * N2))); - numeratorTE = N1*std::cos(incidentangle) - N2*CosPhi; - denominatorTE = N1*std::cos(incidentangle) + N2*CosPhi; - rTE = numeratorTE/denominatorTE; + numeratorTE = N1 * std::cos(incidentangle) - N2 * CosPhi; + denominatorTE = N1 * std::cos(incidentangle) + N2 * CosPhi; + rTE = numeratorTE / denominatorTE; - numeratorTM = N2*std::cos(incidentangle) - N1*CosPhi; - denominatorTM = N2*std::cos(incidentangle) + N1*CosPhi; - rTM = numeratorTM/denominatorTM; + numeratorTM = N2 * std::cos(incidentangle) - N1 * CosPhi; + denominatorTM = N2 * std::cos(incidentangle) + N1 * CosPhi; + rTM = numeratorTM / denominatorTM; // This is my calculaton for reflectivity on a metalic surface // depending on the fraction of TE and TM polarization // when TE polarization, E1_parl=0 and E1_perp=1, R=abs(rTE)^2 and // when TM polarization, E1_parl=1 and E1_perp=0, R=abs(rTM)^2 - Reflectivity_TE = (rTE*conj(rTE))*(E1_perp*E1_perp) - / (E1_perp*E1_perp + E1_parl*E1_parl); - Reflectivity_TM = (rTM*conj(rTM))*(E1_parl*E1_parl) - / (E1_perp*E1_perp + E1_parl*E1_parl); - Reflectivity = Reflectivity_TE + Reflectivity_TM; + Reflectivity_TE = (rTE * conj(rTE)) * (E1_perp * E1_perp) / + (E1_perp * E1_perp + E1_parl * E1_parl); + Reflectivity_TM = (rTM * conj(rTM)) * (E1_parl * E1_parl) / + (E1_perp * E1_perp + E1_parl * E1_parl); + Reflectivity = Reflectivity_TE + Reflectivity_TM; - do { - if (G4UniformRand()*real(Reflectivity) > real(Reflectivity_TE)) { + do + { + if(G4UniformRand() * real(Reflectivity) > real(Reflectivity_TE)) + { iTE = -1; - } else { + } + else + { iTE = 1; } - if (G4UniformRand()*real(Reflectivity) > real(Reflectivity_TM)) { + if(G4UniformRand() * real(Reflectivity) > real(Reflectivity_TM)) + { iTM = -1; - } else { + } + else + { iTM = 1; } // Loop checking, 13-Aug-2015, Peter Gumplinger - } while (iTE < 0 && iTM < 0); + } while(iTE < 0 && iTM < 0); return real(Reflectivity); } @@ -1055,41 +1390,56 @@ G4double G4OpBoundaryProcess::GetReflectivity(G4double E1_perp, void G4OpBoundaryProcess::CalculateReflectivity() { - G4double RealRindex = fRealRIndexMPV->Value(thePhotonMomentum, idx_rrindex); - G4double ImaginaryRindex = fImagRIndexMPV->Value(thePhotonMomentum, idx_irindex); + G4double RealRindex = fRealRIndexMPV->Value(thePhotonMomentum, idx_rrindex); + G4double ImaginaryRindex = + fImagRIndexMPV->Value(thePhotonMomentum, idx_irindex); // calculate FacetNormal - if (theFinish == ground) { theFacetNormal = GetFacetNormal(OldMomentum, theGlobalNormal); } - else { theFacetNormal = theGlobalNormal; } + if(theFinish == ground) + { + theFacetNormal = GetFacetNormal(OldMomentum, theGlobalNormal); + } + else + { + theFacetNormal = theGlobalNormal; + } - cost1 = -OldMomentum*theFacetNormal; - if (std::abs(cost1) < 1.0 - kCarTolerance) { sint1 = std::sqrt(1. - cost1*cost1); } - else { sint1 = 0.0; } + cost1 = -OldMomentum * theFacetNormal; + if(std::abs(cost1) < 1.0 - kCarTolerance) + { + sint1 = std::sqrt(1. - cost1 * cost1); + } + else + { + sint1 = 0.0; + } G4ThreeVector A_trans, A_paral, E1pp, E1pl; G4double E1_perp, E1_parl; - if (sint1 > 0.0) { + if(sint1 > 0.0) + { A_trans = (OldMomentum.cross(theFacetNormal)).unit(); E1_perp = OldPolarization * A_trans; E1pp = E1_perp * A_trans; E1pl = OldPolarization - E1pp; E1_parl = E1pl.mag(); } - else { - A_trans = OldPolarization; + else + { + A_trans = OldPolarization; // Here we Follow Jackson's conventions and we set the parallel // component = 1 in case of a ray perpendicular to the surface - E1_perp = 0.0; - E1_parl = 1.0; + E1_perp = 0.0; + E1_parl = 1.0; } G4double incidentangle = GetIncidentAngle(); - //calculate the reflectivity depending on incident angle, - //polarization and complex refractive - theReflectivity = GetReflectivity(E1_perp, E1_parl, incidentangle, - RealRindex, ImaginaryRindex); + // calculate the reflectivity depending on incident angle, + // polarization and complex refractive + theReflectivity = GetReflectivity(E1_perp, E1_parl, incidentangle, RealRindex, + ImaginaryRindex); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... @@ -1099,6 +1449,8 @@ G4bool G4OpBoundaryProcess::InvokeSD(const G4Step* pStep) aStep.AddTotalEnergyDeposit(thePhotonMomentum); G4VSensitiveDetector* sd = aStep.GetPostStepPoint()->GetSensitiveDetector(); - if (sd) return sd->Hit(&aStep); - else return false; + if(sd) + return sd->Hit(&aStep); + else + return false; } diff --git a/source/processes/optical/src/G4OpMieHG.cc b/source/processes/optical/src/G4OpMieHG.cc index 12af07a1ca..29a5e464d2 100644 --- a/source/processes/optical/src/G4OpMieHG.cc +++ b/source/processes/optical/src/G4OpMieHG.cc @@ -32,7 +32,7 @@ // Author: Xin Qian // Based on work from Vlasios Vasileiou // -// This subroutine will mimic the Mie scattering based on +// This subroutine will mimic the Mie scattering based on // Henyey-Greenstein phase function // Forward and backward angles are treated separately. // @@ -40,14 +40,17 @@ #include "G4OpMieHG.hh" #include "G4PhysicalConstants.hh" +#include "G4OpticalParameters.hh" #include "G4OpProcessSubType.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4OpMieHG::G4OpMieHG(const G4String& processName, G4ProcessType type) - : G4VDiscreteProcess(processName, type) + : G4VDiscreteProcess(processName, type) { - if (verboseLevel>0) { - G4cout << GetProcessName() << " is created " << G4endl; + Initialise(); + if(verboseLevel > 0) + { + G4cout << GetProcessName() << " is created " << G4endl; } SetProcessSubType(fOpMieHG); } @@ -56,92 +59,125 @@ G4OpMieHG::G4OpMieHG(const G4String& processName, G4ProcessType type) G4OpMieHG::~G4OpMieHG() {} //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4VParticleChange* -G4OpMieHG::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) +void G4OpMieHG::PreparePhysicsTable(const G4ParticleDefinition&) +{ + Initialise(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void G4OpMieHG::Initialise() +{ + SetVerboseLevel(G4OpticalParameters::Instance()->GetMieVerboseLevel()); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +G4VParticleChange* G4OpMieHG::PostStepDoIt(const G4Track& aTrack, + const G4Step& aStep) { aParticleChange.Initialize(aTrack); const G4DynamicParticle* aParticle = aTrack.GetDynamicParticle(); - const G4MaterialPropertiesTable* MPT = aTrack.GetMaterial()->GetMaterialPropertiesTable(); + const G4MaterialPropertiesTable* MPT = + aTrack.GetMaterial()->GetMaterialPropertiesTable(); - G4double forwardRatio = MPT->GetConstProperty(kMIEHG_FORWARD_RATIO); + G4double forwardRatio = MPT->GetConstProperty(kMIEHG_FORWARD_RATIO); - if (verboseLevel > 1) { - G4cout << "OpMie Scattering Photon!" << G4endl - << " Old Momentum Direction: " - << aParticle->GetMomentumDirection() << G4endl - << " MIE Old Polarization: " - << aParticle->GetPolarization() << G4endl; - } + if(verboseLevel > 1) + { + G4cout << "OpMie Scattering Photon!" << G4endl + << " Old Momentum Direction: " << aParticle->GetMomentumDirection() + << G4endl + << " MIE Old Polarization: " << aParticle->GetPolarization() + << G4endl; + } G4double gg; G4int direction; - if (G4UniformRand() <= forwardRatio) { - gg = MPT->GetConstProperty(kMIEHG_FORWARD); - direction = 1; - } else { - gg = MPT->GetConstProperty(kMIEHG_BACKWARD); - direction = -1; - } + if(G4UniformRand() <= forwardRatio) + { + gg = MPT->GetConstProperty(kMIEHG_FORWARD); + direction = 1; + } + else + { + gg = MPT->GetConstProperty(kMIEHG_BACKWARD); + direction = -1; + } G4double r = G4UniformRand(); - //sample the direction + // sample the direction G4double theta; - if (gg != 0.) { - theta = std::acos(2.*r*(1.+gg)*(1.+gg)*(1.-gg+gg*r)/((1.-gg+2.*gg*r)*(1.-gg+2.*gg*r)) -1.); - } else { - theta = std::acos(2.*r-1.); - } - G4double phi = G4UniformRand()*twopi; + if(gg != 0.) + { + theta = std::acos(2. * r * (1. + gg) * (1. + gg) * (1. - gg + gg * r) / + ((1. - gg + 2. * gg * r) * (1. - gg + 2. * gg * r)) - + 1.); + } + else + { + theta = std::acos(2. * r - 1.); + } + G4double phi = G4UniformRand() * twopi; - if (direction == -1) theta = pi - theta; //backward scattering + if(direction == -1) + theta = pi - theta; // backward scattering G4ThreeVector newMomDir, oldMomDir; G4ThreeVector newPol, oldPol; G4double sinth = std::sin(theta); - newMomDir.set(sinth*std::cos(phi), sinth*std::sin(phi), std::cos(theta)); + newMomDir.set(sinth * std::cos(phi), sinth * std::sin(phi), std::cos(theta)); oldMomDir = aParticle->GetMomentumDirection(); newMomDir.rotateUz(oldMomDir); newMomDir = newMomDir.unit(); oldPol = aParticle->GetPolarization(); - newPol = newMomDir - oldPol/newMomDir.dot(oldPol); + newPol = newMomDir - oldPol / newMomDir.dot(oldPol); newPol = newPol.unit(); - if (newPol.mag() == 0.) { - r = G4UniformRand()*twopi; + if(newPol.mag() == 0.) + { + r = G4UniformRand() * twopi; newPol.set(std::cos(r), std::sin(r), 0.); newPol.rotateUz(newMomDir); - } else { - // There are two directions perpendicular to new momentum direction - if (G4UniformRand() < 0.5) newPol = -newPol; + } + else + { + // There are two directions perpendicular to new momentum direction + if(G4UniformRand() < 0.5) + newPol = -newPol; } aParticleChange.ProposePolarization(newPol); aParticleChange.ProposeMomentumDirection(newMomDir); - if (verboseLevel > 1) { + if(verboseLevel > 1) + { G4cout << "OpMie New Polarization: " << newPol << G4endl - << " Polarization Change: " << *(aParticleChange.GetPolarization()) << G4endl - << " New Momentum Direction: " << newMomDir << G4endl - << " Momentum Change: " << *(aParticleChange.GetMomentumDirection()) << G4endl; + << " Polarization Change: " << *(aParticleChange.GetPolarization()) + << G4endl << " New Momentum Direction: " << newMomDir << G4endl + << " Momentum Change: " << *(aParticleChange.GetMomentumDirection()) + << G4endl; } return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4double G4OpMieHG::GetMeanFreePath(const G4Track& aTrack, - G4double, G4ForceCondition*) +G4double G4OpMieHG::GetMeanFreePath(const G4Track& aTrack, G4double, + G4ForceCondition*) { G4double attLength = DBL_MAX; - G4MaterialPropertiesTable* MPT = aTrack.GetMaterial()->GetMaterialPropertiesTable(); - if (MPT) { + G4MaterialPropertiesTable* MPT = + aTrack.GetMaterial()->GetMaterialPropertiesTable(); + if(MPT) + { G4MaterialPropertyVector* attVector = MPT->GetProperty(kMIEHG); - if (attVector) { - attLength = attVector->Value(aTrack.GetDynamicParticle()->GetTotalEnergy(), idx_mie); + if(attVector) + { + attLength = attVector->Value( + aTrack.GetDynamicParticle()->GetTotalEnergy(), idx_mie); } } return attLength; diff --git a/source/processes/optical/src/G4OpRayleigh.cc b/source/processes/optical/src/G4OpRayleigh.cc index c5459d4032..6a456dfaec 100644 --- a/source/processes/optical/src/G4OpRayleigh.cc +++ b/source/processes/optical/src/G4OpRayleigh.cc @@ -25,7 +25,7 @@ // // // -// +// //////////////////////////////////////////////////////////////////////// // Optical Photon Rayleigh Scattering Class Implementation //////////////////////////////////////////////////////////////////////// @@ -36,7 +36,7 @@ // Version: 1.0 // Created: 1996-05-31 // Author: Juliet Armstrong -// Updated: 2014-10-10 - This version calculates the Rayleigh scattering +// Updated: 2014-10-10 - This version calculates the Rayleigh scattering // length for more materials than just Water (although the Water // default is kept). To do this the user would need to specify the // ISOTHERMAL_COMPRESSIBILITY as a material property and @@ -64,16 +64,19 @@ #include "G4ios.hh" #include "G4PhysicalConstants.hh" #include "G4SystemOfUnits.hh" +#include "G4OpticalParameters.hh" #include "G4OpProcessSubType.hh" //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4OpRayleigh::G4OpRayleigh(const G4String& processName, G4ProcessType type) - : G4VDiscreteProcess(processName, type) + : G4VDiscreteProcess(processName, type) { + Initialise(); SetProcessSubType(fOpRayleigh); thePhysicsTable = nullptr; - if (verboseLevel > 0) { + if(verboseLevel > 0) + { G4cout << GetProcessName() << " is created " << G4endl; } } @@ -82,25 +85,38 @@ G4OpRayleigh::G4OpRayleigh(const G4String& processName, G4ProcessType type) G4OpRayleigh::~G4OpRayleigh() { // VI: inside this PhysicsTable all properties are unique - // it is not possible to destroy - if (thePhysicsTable) { + // it is not possible to destroy + if(thePhysicsTable) + { delete thePhysicsTable; } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4VParticleChange* -G4OpRayleigh::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) +void G4OpRayleigh::PreparePhysicsTable(const G4ParticleDefinition&) +{ + Initialise(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void G4OpRayleigh::Initialise() +{ + SetVerboseLevel(G4OpticalParameters::Instance()->GetRayleighVerboseLevel()); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +G4VParticleChange* G4OpRayleigh::PostStepDoIt(const G4Track& aTrack, + const G4Step& aStep) { aParticleChange.Initialize(aTrack); const G4DynamicParticle* aParticle = aTrack.GetDynamicParticle(); - if (verboseLevel > 1) { + if(verboseLevel > 1) + { G4cout << "OpRayleigh: Scattering Photon!" << G4endl - << "Old Momentum Direction: " - << aParticle->GetMomentumDirection() << G4endl - << "Old Polarization: " - << aParticle->GetPolarization() << G4endl; + << "Old Momentum Direction: " << aParticle->GetMomentumDirection() + << G4endl << "Old Polarization: " << aParticle->GetPolarization() + << G4endl; } G4double cosTheta; @@ -109,107 +125,117 @@ G4OpRayleigh::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) G4double rand; G4double cost, sint, sinphi, cosphi; - do { - // Try to simulate the scattered photon momentum direction - // w.r.t. the initial photon momentum direction - cost = G4UniformRand(); - sint = std::sqrt(1.-cost*cost); - // consider for the angle 90-180 degrees - if (G4UniformRand() < 0.5) cost = -cost; + do + { + // Try to simulate the scattered photon momentum direction + // w.r.t. the initial photon momentum direction + cost = G4UniformRand(); + sint = std::sqrt(1. - cost * cost); + // consider for the angle 90-180 degrees + if(G4UniformRand() < 0.5) + cost = -cost; - // simulate the phi angle - rand = twopi*G4UniformRand(); - sinphi = std::sin(rand); - cosphi = std::cos(rand); + // simulate the phi angle + rand = twopi * G4UniformRand(); + sinphi = std::sin(rand); + cosphi = std::cos(rand); - // construct the new momentum direction - newMomDir.set(sint*cosphi, sint*sinphi, cost); - oldMomDir = aParticle->GetMomentumDirection(); - newMomDir.rotateUz(oldMomDir); + // construct the new momentum direction + newMomDir.set(sint * cosphi, sint * sinphi, cost); + oldMomDir = aParticle->GetMomentumDirection(); + newMomDir.rotateUz(oldMomDir); - // calculate the new polarization direction - // The new polarization needs to be in the same plane as the new - // momentum direction and the old polarization direction - oldPol = aParticle->GetPolarization(); - newPol = (oldPol - newMomDir.dot(oldPol) * newMomDir).unit(); + // calculate the new polarization direction + // The new polarization needs to be in the same plane as the new + // momentum direction and the old polarization direction + oldPol = aParticle->GetPolarization(); + newPol = (oldPol - newMomDir.dot(oldPol) * newMomDir).unit(); - // There is a corner case, where the new momentum direction - // is the same as old polarization direction: - // random generate the azimuthal angle w.r.t. new momentum direction - if (newPol.mag() == 0.) { - rand = G4UniformRand()*twopi; - newPol.set(std::cos(rand), std::sin(rand), 0.); - newPol.rotateUz(newMomDir); - } else { - // There are two directions perpendicular to the new momentum direction - if (G4UniformRand() < 0.5) newPol = -newPol; - } + // There is a corner case, where the new momentum direction + // is the same as old polarization direction: + // random generate the azimuthal angle w.r.t. new momentum direction + if(newPol.mag() == 0.) + { + rand = G4UniformRand() * twopi; + newPol.set(std::cos(rand), std::sin(rand), 0.); + newPol.rotateUz(newMomDir); + } + else + { + // There are two directions perpendicular to the new momentum direction + if(G4UniformRand() < 0.5) + newPol = -newPol; + } - // simulate according to the distribution cos^2(theta) - cosTheta = newPol.dot(oldPol); - // Loop checking, 13-Aug-2015, Peter Gumplinger - } while (std::pow(cosTheta,2) < G4UniformRand()); + // simulate according to the distribution cos^2(theta) + cosTheta = newPol.dot(oldPol); + // Loop checking, 13-Aug-2015, Peter Gumplinger + } while(std::pow(cosTheta, 2) < G4UniformRand()); - aParticleChange.ProposePolarization(newPol); - aParticleChange.ProposeMomentumDirection(newMomDir); + aParticleChange.ProposePolarization(newPol); + aParticleChange.ProposeMomentumDirection(newMomDir); - if (verboseLevel > 1) { - G4cout << "New Polarization: " << newPol << G4endl - << "Polarization Change: " - << *(aParticleChange.GetPolarization()) << G4endl - << "New Momentum Direction: " << newMomDir << G4endl - << "Momentum Change: " << *(aParticleChange.GetMomentumDirection()) - << G4endl; - } + if(verboseLevel > 1) + { + G4cout << "New Polarization: " << newPol << G4endl + << "Polarization Change: " << *(aParticleChange.GetPolarization()) + << G4endl << "New Momentum Direction: " << newMomDir << G4endl + << "Momentum Change: " << *(aParticleChange.GetMomentumDirection()) + << G4endl; + } - return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void G4OpRayleigh::BuildPhysicsTable(const G4ParticleDefinition&) { - if (thePhysicsTable) { - //thePhysicsTable->clearAndDestroy(); + if(thePhysicsTable) + { + // thePhysicsTable->clearAndDestroy(); delete thePhysicsTable; thePhysicsTable = nullptr; } const G4MaterialTable* theMaterialTable = G4Material::GetMaterialTable(); - const size_t numOfMaterials = G4Material::GetNumberOfMaterials(); - thePhysicsTable = new G4PhysicsTable(numOfMaterials); + const size_t numOfMaterials = G4Material::GetNumberOfMaterials(); + thePhysicsTable = new G4PhysicsTable(numOfMaterials); - for (size_t i=0; iGetMaterialPropertiesTable(); G4PhysicsOrderedFreeVector* rayleigh = nullptr; - if (matProp) { + if(matProp) + { rayleigh = matProp->GetProperty(kRAYLEIGH); - if (rayleigh == nullptr) rayleigh = CalculateRayleighMeanFreePaths(material); + if(rayleigh == nullptr) + rayleigh = CalculateRayleighMeanFreePaths(material); } thePhysicsTable->insertAt(i, rayleigh); } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4double G4OpRayleigh::GetMeanFreePath(const G4Track& aTrack, - G4double , +G4double G4OpRayleigh::GetMeanFreePath(const G4Track& aTrack, G4double, G4ForceCondition*) { G4PhysicsOrderedFreeVector* rayleigh = - static_cast - ((*thePhysicsTable)(aTrack.GetMaterial()->GetIndex())); + static_cast( + (*thePhysicsTable)(aTrack.GetMaterial()->GetIndex())); G4double rsLength = DBL_MAX; - if (rayleigh) { - rsLength =rayleigh->Value(aTrack.GetDynamicParticle()->GetTotalMomentum(), - idx_rslength); + if(rayleigh) + { + rsLength = rayleigh->Value(aTrack.GetDynamicParticle()->GetTotalMomentum(), + idx_rslength); } return rsLength; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4PhysicsOrderedFreeVector* -G4OpRayleigh::CalculateRayleighMeanFreePaths(const G4Material* material) const +G4PhysicsOrderedFreeVector* G4OpRayleigh::CalculateRayleighMeanFreePaths( + const G4Material* material) const { G4MaterialPropertiesTable* MPT = material->GetMaterialPropertiesTable(); @@ -217,52 +243,62 @@ G4OpRayleigh::CalculateRayleighMeanFreePaths(const G4Material* material) const // compatibility use a constant if the material is "Water". If the material // doesn't have an ISOTHERMAL_COMPRESSIBILITY constant then return G4double betat; - if (material->GetName() == "Water") { - betat = 7.658e-23*m3/MeV; + if(material->GetName() == "Water") + { + betat = 7.658e-23 * m3 / MeV; } - else if (MPT->ConstPropertyExists(kISOTHERMAL_COMPRESSIBILITY)) { + else if(MPT->ConstPropertyExists(kISOTHERMAL_COMPRESSIBILITY)) + { betat = MPT->GetConstProperty(kISOTHERMAL_COMPRESSIBILITY); } - else { + else + { return nullptr; } // If the material doesn't have a RINDEX property vector then return G4MaterialPropertyVector* rIndex = MPT->GetProperty(kRINDEX); - if (rIndex == nullptr) return nullptr; + if(rIndex == nullptr) + return nullptr; // Retrieve the optional scale factor (scales the scattering length) G4double scaleFactor = 1.0; - if (MPT->ConstPropertyExists(kRS_SCALE_FACTOR)) { + if(MPT->ConstPropertyExists(kRS_SCALE_FACTOR)) + { scaleFactor = MPT->GetConstProperty(kRS_SCALE_FACTOR); } // Retrieve the material temperature. For backwards compatibility use a // constant if the material is "Water" G4double temperature; - if (material->GetName() == "Water") { - temperature = 283.15*kelvin; // Temperature of water is 10 degrees celsius + if(material->GetName() == "Water") + { + temperature = + 283.15 * kelvin; // Temperature of water is 10 degrees celsius } - else { + else + { temperature = material->GetTemperature(); } G4PhysicsOrderedFreeVector* rayleighMFPs = new G4PhysicsOrderedFreeVector(); // This calculates the meanFreePath via the Einstein-Smoluchowski formula - const G4double c1 = scaleFactor * betat * temperature * k_Boltzmann / (6.0*pi); + const G4double c1 = + scaleFactor * betat * temperature * k_Boltzmann / (6.0 * pi); - for (size_t uRIndex = 0; uRIndex < rIndex->GetVectorLength(); ++uRIndex) + for(size_t uRIndex = 0; uRIndex < rIndex->GetVectorLength(); ++uRIndex) { - const G4double energy = rIndex->Energy(uRIndex); + const G4double energy = rIndex->Energy(uRIndex); const G4double rIndexSquared = (*rIndex)[uRIndex] * (*rIndex)[uRIndex]; - const G4double xlambda = h_Planck * c_light / energy; - const G4double c2 = std::pow(twopi/xlambda,4); + const G4double xlambda = h_Planck * c_light / energy; + const G4double c2 = std::pow(twopi / xlambda, 4); const G4double c3 = - std::pow(((rIndexSquared-1.0)*(rIndexSquared+2.0)/3.0),2); + std::pow(((rIndexSquared - 1.0) * (rIndexSquared + 2.0) / 3.0), 2); - const G4double meanFreePath = 1.0 / (c1*c2*c3); + const G4double meanFreePath = 1.0 / (c1 * c2 * c3); - if( verboseLevel > 0) { + if(verboseLevel > 0) + { G4cout << energy << "MeV\t" << meanFreePath << "mm" << G4endl; } diff --git a/source/processes/optical/src/G4OpWLS.cc b/source/processes/optical/src/G4OpWLS.cc index 19443b3188..f0d3e39b77 100644 --- a/source/processes/optical/src/G4OpWLS.cc +++ b/source/processes/optical/src/G4OpWLS.cc @@ -46,6 +46,7 @@ #include "G4SystemOfUnits.hh" #include "G4OpProcessSubType.hh" #include "G4Poisson.hh" +#include "G4OpticalParameters.hh" #include "G4WLSTimeGeneratorProfileDelta.hh" #include "G4WLSTimeGeneratorProfileExponential.hh" @@ -53,19 +54,20 @@ G4OpWLS::G4OpWLS(const G4String& processName, G4ProcessType type) : G4VDiscreteProcess(processName, type) { + WLSTimeGeneratorProfile = nullptr; + Initialise(); SetProcessSubType(fOpWLS); theIntegralTable = nullptr; - WLSTimeGeneratorProfile = - new G4WLSTimeGeneratorProfileDelta("WLSTimeGeneratorProfileDelta"); - - if (verboseLevel>0) G4cout << GetProcessName() << " is created " << G4endl; + if(verboseLevel > 0) + G4cout << GetProcessName() << " is created " << G4endl; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4OpWLS::~G4OpWLS() { - if (theIntegralTable) { + if(theIntegralTable) + { theIntegralTable->clearAndDestroy(); delete theIntegralTable; } @@ -73,168 +75,210 @@ G4OpWLS::~G4OpWLS() } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4VParticleChange* -G4OpWLS::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) +void G4OpWLS::PreparePhysicsTable(const G4ParticleDefinition&) { Initialise(); } + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void G4OpWLS::Initialise() +{ + G4OpticalParameters* params = G4OpticalParameters::Instance(); + SetVerboseLevel(params->GetWLSVerboseLevel()); + UseTimeProfile(params->GetWLSTimeProfile()); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +G4VParticleChange* G4OpWLS::PostStepDoIt(const G4Track& aTrack, + const G4Step& aStep) { std::vector proposedSecondaries; aParticleChange.Initialize(aTrack); aParticleChange.ProposeTrackStatus(fStopAndKill); - if (verboseLevel>1) { + if(verboseLevel > 1) + { G4cout << "\n** G4OpWLS: Photon absorbed! **" << G4endl; } - + G4StepPoint* pPostStepPoint = aStep.GetPostStepPoint(); - G4MaterialPropertiesTable* MPT = aTrack.GetMaterial()->GetMaterialPropertiesTable(); - if (!MPT) { return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } - if (!MPT->GetProperty(kWLSCOMPONENT)) { return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } + G4MaterialPropertiesTable* MPT = + aTrack.GetMaterial()->GetMaterialPropertiesTable(); + if(!MPT) + { + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); + } + if(!MPT->GetProperty(kWLSCOMPONENT)) + { + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); + } G4int NumPhotons = 1; - if (MPT->ConstPropertyExists(kWLSMEANNUMBERPHOTONS)) { - G4double MeanNumberOfPhotons = MPT->GetConstProperty(kWLSMEANNUMBERPHOTONS); - NumPhotons = G4int(G4Poisson(MeanNumberOfPhotons)); - if (NumPhotons <= 0) { - // return unchanged particle and no secondaries - aParticleChange.SetNumberOfSecondaries(0); - return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); - } + if(MPT->ConstPropertyExists(kWLSMEANNUMBERPHOTONS)) + { + G4double MeanNumberOfPhotons = MPT->GetConstProperty(kWLSMEANNUMBERPHOTONS); + NumPhotons = G4int(G4Poisson(MeanNumberOfPhotons)); + if(NumPhotons <= 0) + { + // return unchanged particle and no secondaries + aParticleChange.SetNumberOfSecondaries(0); + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); + } } // Retrieve the WLS Integral for this material // new G4PhysicsOrderedFreeVector allocated to hold CII's G4double primaryEnergy = aTrack.GetDynamicParticle()->GetKineticEnergy(); - G4double WLSTime = 0.; + G4double WLSTime = 0.; G4PhysicsOrderedFreeVector* WLSIntegral = nullptr; - WLSTime = MPT->GetConstProperty(kWLSTIMECONSTANT); - WLSIntegral = - (G4PhysicsOrderedFreeVector*)((*theIntegralTable)(aTrack.GetMaterial()->GetIndex())); - + WLSTime = MPT->GetConstProperty(kWLSTIMECONSTANT); + WLSIntegral = (G4PhysicsOrderedFreeVector*) ((*theIntegralTable)( + aTrack.GetMaterial()->GetIndex())); + // Max WLS Integral - G4double CIImax = WLSIntegral->GetMaxValue(); + G4double CIImax = WLSIntegral->GetMaxValue(); G4int NumberOfPhotons = NumPhotons; - - for (G4int i=0; iGetEnergy(CIIvalue); - if (sampledEnergy <= primaryEnergy) break; + G4double CIIvalue = G4UniformRand() * CIImax; + sampledEnergy = WLSIntegral->GetEnergy(CIIvalue); + if(sampledEnergy <= primaryEnergy) + break; } // If no such energy can be sampled, return one less secondary, or none - if (sampledEnergy > primaryEnergy) { - if (verboseLevel>1) { - G4cout << " *** G4OpWLS: One less WLS photon will be returned ***" << G4endl; - } + if(sampledEnergy > primaryEnergy) + { + if(verboseLevel > 1) + { + G4cout << " *** G4OpWLS: One less WLS photon will be returned ***" + << G4endl; + } NumberOfPhotons--; - if (NumberOfPhotons == 0) { - if (verboseLevel>1) { - G4cout << " *** G4OpWLS: No WLS photon can be sampled for this primary ***" - << G4endl; + if(NumberOfPhotons == 0) + { + if(verboseLevel > 1) + { + G4cout + << " *** G4OpWLS: No WLS photon can be sampled for this primary ***" + << G4endl; } // return unchanged particle and no secondaries aParticleChange.SetNumberOfSecondaries(0); return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } continue; - } else if (verboseLevel > 1) { + } + else if(verboseLevel > 1) + { G4cout << "G4OpWLS: Created photon with energy: " << sampledEnergy << G4endl; } // Generate random photon direction - G4double cost = 1. - 2.*G4UniformRand(); - G4double sint = std::sqrt((1.-cost)*(1.+cost)); - G4double phi = twopi*G4UniformRand(); + G4double cost = 1. - 2. * G4UniformRand(); + G4double sint = std::sqrt((1. - cost) * (1. + cost)); + G4double phi = twopi * G4UniformRand(); G4double sinp = std::sin(phi); G4double cosp = std::cos(phi); - G4ParticleMomentum photonMomentum(sint*cosp, sint*sinp, cost); - - G4ThreeVector photonPolarization(cost*cosp, cost*sinp, -sint); + G4ParticleMomentum photonMomentum(sint * cosp, sint * sinp, cost); + + G4ThreeVector photonPolarization(cost * cosp, cost * sinp, -sint); G4ThreeVector perp = photonMomentum.cross(photonPolarization); - - phi = twopi*G4UniformRand(); - sinp = std::sin(phi); - cosp = std::cos(phi); - photonPolarization = (cosp*photonPolarization + sinp*perp).unit(); - + + phi = twopi * G4UniformRand(); + sinp = std::sin(phi); + cosp = std::cos(phi); + photonPolarization = (cosp * photonPolarization + sinp * perp).unit(); + // Generate a new photon: G4DynamicParticle* sec_dp = new G4DynamicParticle(G4OpticalPhoton::OpticalPhoton(), photonMomentum); sec_dp->SetPolarization(photonPolarization); sec_dp->SetKineticEnergy(sampledEnergy); - - G4double secTime = pPostStepPoint->GetGlobalTime() + + + G4double secTime = pPostStepPoint->GetGlobalTime() + WLSTimeGeneratorProfile->GenerateTime(WLSTime); G4ThreeVector secPos = pPostStepPoint->GetPosition(); - G4Track* secTrack = new G4Track(sec_dp, secTime, secPos); - - secTrack->SetTouchableHandle(aTrack.GetTouchableHandle()); + G4Track* secTrack = new G4Track(sec_dp, secTime, secPos); + + secTrack->SetTouchableHandle(aTrack.GetTouchableHandle()); secTrack->SetParentID(aTrack.GetTrackID()); proposedSecondaries.push_back(secTrack); } aParticleChange.SetNumberOfSecondaries(proposedSecondaries.size()); - for (auto sec : proposedSecondaries) { + for(auto sec : proposedSecondaries) + { aParticleChange.AddSecondary(sec); } - if (verboseLevel>1) { - G4cout << "\n Exiting from G4OpWLS::DoIt -- NumberOfSecondaries = " - << aParticleChange.GetNumberOfSecondaries() << G4endl; + if(verboseLevel > 1) + { + G4cout << "\n Exiting from G4OpWLS::DoIt -- NumberOfSecondaries = " + << aParticleChange.GetNumberOfSecondaries() << G4endl; } - + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void G4OpWLS::BuildPhysicsTable(const G4ParticleDefinition&) { - if (theIntegralTable) { + if(theIntegralTable) + { theIntegralTable->clearAndDestroy(); delete theIntegralTable; theIntegralTable = nullptr; } const G4MaterialTable* materialTable = G4Material::GetMaterialTable(); - G4int numOfMaterials = G4Material::GetNumberOfMaterials(); - theIntegralTable = new G4PhysicsTable(numOfMaterials); - + G4int numOfMaterials = G4Material::GetNumberOfMaterials(); + theIntegralTable = new G4PhysicsTable(numOfMaterials); + // loop for materials - for (G4int i=0; iGetMaterialPropertiesTable(); - if (MPT) { + G4MaterialPropertiesTable* MPT = + (*materialTable)[i]->GetMaterialPropertiesTable(); + if(MPT) + { G4MaterialPropertyVector* wlsVector = MPT->GetProperty(kWLSCOMPONENT); - if (wlsVector) { + if(wlsVector) + { // Retrieve the first intensity point in vector // of (photon energy, intensity) pairs G4double currentIN = (*wlsVector)[0]; - if (currentIN >= 0.0) { - // Create first (photon energy) - G4double currentPM = wlsVector->Energy(0); + if(currentIN >= 0.0) + { + // Create first (photon energy) + G4double currentPM = wlsVector->Energy(0); G4double currentCII = 0.0; physVector->InsertValues(currentPM, currentCII); - + // Set previous values to current ones prior to loop G4double prevPM = currentPM; G4double prevCII = currentCII; G4double prevIN = currentIN; - + // loop over all (photon energy, intensity) // pairs stored for this material - for (size_t j=1; jGetVectorLength(); ++j) { + for(size_t j = 1; j < wlsVector->GetVectorLength(); ++j) + { currentPM = wlsVector->Energy(j); currentIN = (*wlsVector)[j]; - currentCII = prevCII + 0.5*(currentPM - prevPM)* (prevIN + currentIN); - + currentCII = + prevCII + 0.5 * (currentPM - prevPM) * (prevIN + currentIN); + physVector->InsertValues(currentPM, currentCII); - + prevPM = currentPM; prevCII = currentCII; prevIN = currentIN; @@ -242,22 +286,24 @@ void G4OpWLS::BuildPhysicsTable(const G4ParticleDefinition&) } } } - theIntegralTable->insertAt(i,physVector); + theIntegralTable->insertAt(i, physVector); } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4double G4OpWLS::GetMeanFreePath(const G4Track& aTrack, - G4double , - G4ForceCondition* ) +G4double G4OpWLS::GetMeanFreePath(const G4Track& aTrack, G4double, + G4ForceCondition*) { G4double thePhotonEnergy = aTrack.GetDynamicParticle()->GetTotalEnergy(); - G4double attLength = DBL_MAX; - G4MaterialPropertiesTable* MPT = aTrack.GetMaterial()->GetMaterialPropertiesTable(); + G4double attLength = DBL_MAX; + G4MaterialPropertiesTable* MPT = + aTrack.GetMaterial()->GetMaterialPropertiesTable(); - if (MPT) { + if(MPT) + { G4MaterialPropertyVector* attVector = MPT->GetProperty(kWLSABSLENGTH); - if (attVector) { + if(attVector) + { attLength = attVector->Value(thePhotonEnergy, idx_wls); } } @@ -267,18 +313,23 @@ G4double G4OpWLS::GetMeanFreePath(const G4Track& aTrack, //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void G4OpWLS::UseTimeProfile(const G4String name) { - if (name.compare("delta") == 0) { + if(WLSTimeGeneratorProfile) + { delete WLSTimeGeneratorProfile; + WLSTimeGeneratorProfile = nullptr; + } + if(name.compare("delta") == 0) + { WLSTimeGeneratorProfile = new G4WLSTimeGeneratorProfileDelta("delta"); } - else if (name.compare("exponential") == 0) { - delete WLSTimeGeneratorProfile; - WLSTimeGeneratorProfile = new G4WLSTimeGeneratorProfileExponential("exponential"); + else if(name.compare("exponential") == 0) + { + WLSTimeGeneratorProfile = + new G4WLSTimeGeneratorProfileExponential("exponential"); } else { - G4Exception("G4OpWLS::UseTimeProfile", "em0202", - FatalException, + G4Exception("G4OpWLS::UseTimeProfile", "em0202", FatalException, "generator does not exist"); } } diff --git a/source/processes/optical/src/G4OpWLS2.cc b/source/processes/optical/src/G4OpWLS2.cc index 1d47a23a77..2eca1e0f30 100644 --- a/source/processes/optical/src/G4OpWLS2.cc +++ b/source/processes/optical/src/G4OpWLS2.cc @@ -46,6 +46,7 @@ #include "G4SystemOfUnits.hh" #include "G4OpProcessSubType.hh" #include "G4Poisson.hh" +#include "G4OpticalParameters.hh" #include "G4WLSTimeGeneratorProfileDelta.hh" #include "G4WLSTimeGeneratorProfileExponential.hh" @@ -53,19 +54,20 @@ G4OpWLS2::G4OpWLS2(const G4String& processName, G4ProcessType type) : G4VDiscreteProcess(processName, type) { + WLSTimeGeneratorProfile = nullptr; + Initialise(); SetProcessSubType(fOpWLS); theIntegralTable = nullptr; - WLSTimeGeneratorProfile = - new G4WLSTimeGeneratorProfileDelta("WLSTimeGeneratorProfileDelta"); - - if (verboseLevel>0) G4cout << GetProcessName() << " is created " << G4endl; + if(verboseLevel > 0) + G4cout << GetProcessName() << " is created " << G4endl; } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... G4OpWLS2::~G4OpWLS2() { - if (theIntegralTable) { + if(theIntegralTable) + { theIntegralTable->clearAndDestroy(); delete theIntegralTable; } @@ -73,65 +75,99 @@ G4OpWLS2::~G4OpWLS2() } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4VParticleChange* -G4OpWLS2::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) +void G4OpWLS2::PreparePhysicsTable(const G4ParticleDefinition&) +{ + Initialise(); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +void G4OpWLS2::Initialise() +{ + G4OpticalParameters* params = G4OpticalParameters::Instance(); + SetVerboseLevel(params->GetWLS2VerboseLevel()); + UseTimeProfile(params->GetWLS2TimeProfile()); +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... +G4VParticleChange* G4OpWLS2::PostStepDoIt(const G4Track& aTrack, + const G4Step& aStep) { std::vector proposedSecondaries; aParticleChange.Initialize(aTrack); aParticleChange.ProposeTrackStatus(fStopAndKill); - if (verboseLevel>1) { + if(verboseLevel > 1) + { G4cout << "\n** G4OpWLS2: Photon absorbed! **" << G4endl; } - + G4StepPoint* pPostStepPoint = aStep.GetPostStepPoint(); - G4MaterialPropertiesTable* MPT = aTrack.GetMaterial()->GetMaterialPropertiesTable(); - if (!MPT) { return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } - if (!MPT->GetProperty(kWLSCOMPONENT2)) { return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } + G4MaterialPropertiesTable* MPT = + aTrack.GetMaterial()->GetMaterialPropertiesTable(); + if(!MPT) + { + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); + } + if(!MPT->GetProperty(kWLSCOMPONENT2)) + { + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); + } G4int NumPhotons = 1; - if (MPT->ConstPropertyExists(kWLSMEANNUMBERPHOTONS2)) { - G4double MeanNumberOfPhotons = MPT->GetConstProperty(kWLSMEANNUMBERPHOTONS2); - NumPhotons = G4int(G4Poisson(MeanNumberOfPhotons)); - if (NumPhotons <= 0) { - // return unchanged particle and no secondaries - aParticleChange.SetNumberOfSecondaries(0); - return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); - } + if(MPT->ConstPropertyExists(kWLSMEANNUMBERPHOTONS2)) + { + G4double MeanNumberOfPhotons = + MPT->GetConstProperty(kWLSMEANNUMBERPHOTONS2); + NumPhotons = G4int(G4Poisson(MeanNumberOfPhotons)); + if(NumPhotons <= 0) + { + // return unchanged particle and no secondaries + aParticleChange.SetNumberOfSecondaries(0); + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); + } } // Retrieve the WLS Integral for this material // new G4PhysicsOrderedFreeVector allocated to hold CII's G4double primaryEnergy = aTrack.GetDynamicParticle()->GetKineticEnergy(); - G4double WLSTime = 0.; + G4double WLSTime = 0.; G4PhysicsOrderedFreeVector* WLSIntegral = nullptr; - WLSTime = MPT->GetConstProperty(kWLSTIMECONSTANT2); - WLSIntegral = - (G4PhysicsOrderedFreeVector*)((*theIntegralTable)(aTrack.GetMaterial()->GetIndex())); - + WLSTime = MPT->GetConstProperty(kWLSTIMECONSTANT2); + WLSIntegral = (G4PhysicsOrderedFreeVector*) ((*theIntegralTable)( + aTrack.GetMaterial()->GetIndex())); + // Max WLS Integral - G4double CIImax = WLSIntegral->GetMaxValue(); + G4double CIImax = WLSIntegral->GetMaxValue(); G4int NumberOfPhotons = NumPhotons; - - for (G4int i=0; iGetEnergy(CIIvalue); - if (sampledEnergy <= primaryEnergy) break; + G4double CIIvalue = G4UniformRand() * CIImax; + sampledEnergy = WLSIntegral->GetEnergy(CIIvalue); + if(sampledEnergy <= primaryEnergy) + break; } // If no such energy can be sampled, return one less secondary, or none - if (sampledEnergy > primaryEnergy) { - if (verboseLevel>1) { - G4cout << " *** G4OpWLS2: One less WLS2 photon will be returned ***" << G4endl; - } + if(sampledEnergy > primaryEnergy) + { + if(verboseLevel > 1) + { + G4cout << " *** G4OpWLS2: One less WLS2 photon will be returned ***" + << G4endl; + } NumberOfPhotons--; - if (NumberOfPhotons == 0) { - if (verboseLevel>1) { - G4cout << " *** G4OpWLS2: No WLS2 photon can be sampled for this primary ***" + if(NumberOfPhotons == 0) + { + if(verboseLevel > 1) + { + G4cout << " *** G4OpWLS2: No WLS2 photon can be sampled for this " + "primary ***" << G4endl; } // return unchanged particle and no secondaries @@ -139,102 +175,114 @@ G4OpWLS2::PostStepDoIt(const G4Track& aTrack, const G4Step& aStep) return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } continue; - } else if (verboseLevel > 1) { + } + else if(verboseLevel > 1) + { G4cout << "G4OpWLS2: Created photon with energy: " << sampledEnergy << G4endl; } // Generate random photon direction - G4double cost = 1. - 2.*G4UniformRand(); - G4double sint = std::sqrt((1.-cost)*(1.+cost)); - G4double phi = twopi*G4UniformRand(); + G4double cost = 1. - 2. * G4UniformRand(); + G4double sint = std::sqrt((1. - cost) * (1. + cost)); + G4double phi = twopi * G4UniformRand(); G4double sinp = std::sin(phi); G4double cosp = std::cos(phi); - G4ParticleMomentum photonMomentum(sint*cosp, sint*sinp, cost); - - G4ThreeVector photonPolarization(cost*cosp, cost*sinp, -sint); + G4ParticleMomentum photonMomentum(sint * cosp, sint * sinp, cost); + + G4ThreeVector photonPolarization(cost * cosp, cost * sinp, -sint); G4ThreeVector perp = photonMomentum.cross(photonPolarization); - - phi = twopi*G4UniformRand(); - sinp = std::sin(phi); - cosp = std::cos(phi); - photonPolarization = (cosp*photonPolarization + sinp*perp).unit(); - + + phi = twopi * G4UniformRand(); + sinp = std::sin(phi); + cosp = std::cos(phi); + photonPolarization = (cosp * photonPolarization + sinp * perp).unit(); + // Generate a new photon: G4DynamicParticle* sec_dp = new G4DynamicParticle(G4OpticalPhoton::OpticalPhoton(), photonMomentum); sec_dp->SetPolarization(photonPolarization); sec_dp->SetKineticEnergy(sampledEnergy); - - G4double secTime = pPostStepPoint->GetGlobalTime() + + + G4double secTime = pPostStepPoint->GetGlobalTime() + WLSTimeGeneratorProfile->GenerateTime(WLSTime); G4ThreeVector secPos = pPostStepPoint->GetPosition(); - G4Track* secTrack = new G4Track(sec_dp, secTime, secPos); - - secTrack->SetTouchableHandle(aTrack.GetTouchableHandle()); + G4Track* secTrack = new G4Track(sec_dp, secTime, secPos); + + secTrack->SetTouchableHandle(aTrack.GetTouchableHandle()); secTrack->SetParentID(aTrack.GetTrackID()); proposedSecondaries.push_back(secTrack); } aParticleChange.SetNumberOfSecondaries(proposedSecondaries.size()); - for (auto sec : proposedSecondaries) { + for(auto sec : proposedSecondaries) + { aParticleChange.AddSecondary(sec); } - if (verboseLevel>1) { - G4cout << "\n Exiting from G4OpWLS2::DoIt -- NumberOfSecondaries = " - << aParticleChange.GetNumberOfSecondaries() << G4endl; + if(verboseLevel > 1) + { + G4cout << "\n Exiting from G4OpWLS2::DoIt -- NumberOfSecondaries = " + << aParticleChange.GetNumberOfSecondaries() << G4endl; } - + return G4VDiscreteProcess::PostStepDoIt(aTrack, aStep); } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void G4OpWLS2::BuildPhysicsTable(const G4ParticleDefinition&) { - if (theIntegralTable) { + if(theIntegralTable) + { theIntegralTable->clearAndDestroy(); delete theIntegralTable; theIntegralTable = nullptr; } const G4MaterialTable* materialTable = G4Material::GetMaterialTable(); - G4int numOfMaterials = G4Material::GetNumberOfMaterials(); - theIntegralTable = new G4PhysicsTable(numOfMaterials); - + G4int numOfMaterials = G4Material::GetNumberOfMaterials(); + theIntegralTable = new G4PhysicsTable(numOfMaterials); + // loop for materials - for (G4int i=0; iGetMaterialPropertiesTable(); - if (MPT) { + G4MaterialPropertiesTable* MPT = + (*materialTable)[i]->GetMaterialPropertiesTable(); + if(MPT) + { G4MaterialPropertyVector* wlsVector = MPT->GetProperty(kWLSCOMPONENT2); - if (wlsVector) { + if(wlsVector) + { // Retrieve the first intensity point in vector // of (photon energy, intensity) pairs G4double currentIN = (*wlsVector)[0]; - if (currentIN >= 0.0) { - // Create first (photon energy) - G4double currentPM = wlsVector->Energy(0); + if(currentIN >= 0.0) + { + // Create first (photon energy) + G4double currentPM = wlsVector->Energy(0); G4double currentCII = 0.0; physVector->InsertValues(currentPM, currentCII); - + // Set previous values to current ones prior to loop G4double prevPM = currentPM; G4double prevCII = currentCII; G4double prevIN = currentIN; - + // loop over all (photon energy, intensity) // pairs stored for this material - for (size_t j=1; jGetVectorLength(); ++j) { + for(size_t j = 1; j < wlsVector->GetVectorLength(); ++j) + { currentPM = wlsVector->Energy(j); currentIN = (*wlsVector)[j]; - currentCII = prevCII + 0.5*(currentPM - prevPM)* (prevIN + currentIN); - + currentCII = + prevCII + 0.5 * (currentPM - prevPM) * (prevIN + currentIN); + physVector->InsertValues(currentPM, currentCII); - + prevPM = currentPM; prevCII = currentCII; prevIN = currentIN; @@ -242,22 +290,24 @@ void G4OpWLS2::BuildPhysicsTable(const G4ParticleDefinition&) } } } - theIntegralTable->insertAt(i,physVector); + theIntegralTable->insertAt(i, physVector); } } //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... -G4double G4OpWLS2::GetMeanFreePath(const G4Track& aTrack, - G4double , - G4ForceCondition* ) +G4double G4OpWLS2::GetMeanFreePath(const G4Track& aTrack, G4double, + G4ForceCondition*) { G4double thePhotonEnergy = aTrack.GetDynamicParticle()->GetTotalEnergy(); - G4double attLength = DBL_MAX; - G4MaterialPropertiesTable* MPT = aTrack.GetMaterial()->GetMaterialPropertiesTable(); + G4double attLength = DBL_MAX; + G4MaterialPropertiesTable* MPT = + aTrack.GetMaterial()->GetMaterialPropertiesTable(); - if (MPT) { + if(MPT) + { G4MaterialPropertyVector* attVector = MPT->GetProperty(kWLSABSLENGTH2); - if (attVector) { + if(attVector) + { attLength = attVector->Value(thePhotonEnergy, idx_wls2); } } @@ -267,18 +317,23 @@ G4double G4OpWLS2::GetMeanFreePath(const G4Track& aTrack, //....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... void G4OpWLS2::UseTimeProfile(const G4String name) { - if (name.compare("delta") == 0) { + if(WLSTimeGeneratorProfile) + { delete WLSTimeGeneratorProfile; + WLSTimeGeneratorProfile = nullptr; + } + if(name.compare("delta") == 0) + { WLSTimeGeneratorProfile = new G4WLSTimeGeneratorProfileDelta("delta"); } - else if (name.compare("exponential") == 0) { - delete WLSTimeGeneratorProfile; - WLSTimeGeneratorProfile = new G4WLSTimeGeneratorProfileExponential("exponential"); + else if(name.compare("exponential") == 0) + { + WLSTimeGeneratorProfile = + new G4WLSTimeGeneratorProfileExponential("exponential"); } else { - G4Exception("G4OpWLS::UseTimeProfile", "em0202", - FatalException, + G4Exception("G4OpWLS::UseTimeProfile", "em0202", FatalException, "generator does not exist"); } } diff --git a/source/processes/optical/src/G4VWLSTimeGeneratorProfile.cc b/source/processes/optical/src/G4VWLSTimeGeneratorProfile.cc index 9db9791e0c..1c494d6671 100644 --- a/source/processes/optical/src/G4VWLSTimeGeneratorProfile.cc +++ b/source/processes/optical/src/G4VWLSTimeGeneratorProfile.cc @@ -31,33 +31,26 @@ // // File name: G4VWLSTimeGeneratorProfile.cc // -// Author: Pedro Rodrigues, Andreia Trindade -// -// +// Author: Pedro Rodrigues, Andreia Trindade +// +// // // Creation date: 2006-05-07 // -// Modifications: +// Modifications: // -// Class Description: +// Class Description: // // Abstract base class // -// Class Description: End +// Class Description: End // ------------------------------------------------------------------- // -// +// #include "G4VWLSTimeGeneratorProfile.hh" -// - -G4VWLSTimeGeneratorProfile::G4VWLSTimeGeneratorProfile(const G4String& ) // name -{;} - -// - -G4VWLSTimeGeneratorProfile::~G4VWLSTimeGeneratorProfile() -{;} +G4VWLSTimeGeneratorProfile::G4VWLSTimeGeneratorProfile(const G4String&) {} +G4VWLSTimeGeneratorProfile::~G4VWLSTimeGeneratorProfile() {} diff --git a/source/processes/optical/src/G4WLSTimeGeneratorProfileDelta.cc b/source/processes/optical/src/G4WLSTimeGeneratorProfileDelta.cc index b2493dcde5..d97a9fca35 100644 --- a/source/processes/optical/src/G4WLSTimeGeneratorProfileDelta.cc +++ b/source/processes/optical/src/G4WLSTimeGeneratorProfileDelta.cc @@ -32,40 +32,43 @@ // File name: G4WLSTimeGeneratorProfileDelta.cc // // Author: Pedro Rodrigues, Andreia Trindade -// +// // Creation date: 2006-05-07 // // Modifications: // -// Class Description: +// Class Description: // -// Class Description: End +// Class Description: End // // ------------------------------------------------------------------- // -// +// #include "G4WLSTimeGeneratorProfileDelta.hh" #include "Randomize.hh" -// +// -G4WLSTimeGeneratorProfileDelta::G4WLSTimeGeneratorProfileDelta(const G4String& name):G4VWLSTimeGeneratorProfile(name) -{;} - -// - -G4WLSTimeGeneratorProfileDelta::~G4WLSTimeGeneratorProfileDelta() -{;} +G4WLSTimeGeneratorProfileDelta::G4WLSTimeGeneratorProfileDelta( + const G4String& name) + : G4VWLSTimeGeneratorProfile(name) +{} // -G4double G4WLSTimeGeneratorProfileDelta::GenerateTime(const G4double time_constant) +G4WLSTimeGeneratorProfileDelta::~G4WLSTimeGeneratorProfileDelta() {} + +// + +G4double G4WLSTimeGeneratorProfileDelta::GenerateTime( + const G4double time_constant) { return time_constant; } -G4double G4WLSTimeGeneratorProfileDelta::GenerateTime(const G4MaterialPropertiesTable*){ - +G4double G4WLSTimeGeneratorProfileDelta::GenerateTime( + const G4MaterialPropertiesTable*) +{ // This method is not currently in use - return 0; + return 0.; } diff --git a/source/processes/optical/src/G4WLSTimeGeneratorProfileExponential.cc b/source/processes/optical/src/G4WLSTimeGeneratorProfileExponential.cc index 66c3f6af53..6e0d163d5e 100644 --- a/source/processes/optical/src/G4WLSTimeGeneratorProfileExponential.cc +++ b/source/processes/optical/src/G4WLSTimeGeneratorProfileExponential.cc @@ -32,39 +32,43 @@ // File name: G4WLSTimeGeneratorProfileExponential.cc // // Author: Pedro Rodrigues, Andreia Trindade -// +// // Creation date: 2006-05-07 // // Modifications: // -// Class Description: +// Class Description: // -// Class Description: End +// Class Description: End // // ------------------------------------------------------------------- // -// +// #include "G4WLSTimeGeneratorProfileExponential.hh" #include "Randomize.hh" -// +// -G4WLSTimeGeneratorProfileExponential::G4WLSTimeGeneratorProfileExponential(const G4String& name):G4VWLSTimeGeneratorProfile(name) -{;} - -// - -G4WLSTimeGeneratorProfileExponential::~G4WLSTimeGeneratorProfileExponential() -{;} +G4WLSTimeGeneratorProfileExponential::G4WLSTimeGeneratorProfileExponential( + const G4String& name) + : G4VWLSTimeGeneratorProfile(name) +{} // -G4double G4WLSTimeGeneratorProfileExponential::GenerateTime(const G4double time_constant) +G4WLSTimeGeneratorProfileExponential::~G4WLSTimeGeneratorProfileExponential() {} + +// + +G4double G4WLSTimeGeneratorProfileExponential::GenerateTime( + const G4double time_constant) { - return -std::log(G4UniformRand())*time_constant; + return -std::log(G4UniformRand()) * time_constant; } -G4double G4WLSTimeGeneratorProfileExponential::GenerateTime(const G4MaterialPropertiesTable*){ +G4double G4WLSTimeGeneratorProfileExponential::GenerateTime( + const G4MaterialPropertiesTable*) +{ // This method is not currently in use - return 0; + return 0.; } diff --git a/source/processes/parameterisation/GNUmakefile b/source/processes/parameterisation/GNUmakefile index 2e3070d95f..628d6eea9c 100644 --- a/source/processes/parameterisation/GNUmakefile +++ b/source/processes/parameterisation/GNUmakefile @@ -21,6 +21,8 @@ CPPFLAGS += -I$(G4BASE)/global/management/include \ -I$(G4BASE)/track/include \ -I$(G4BASE)/processes/management/include \ -I$(G4BASE)/particles/management/include \ - -I$(G4BASE)/materials/include + -I$(G4BASE)/materials/include \ + -I$(G4BASE)/digits_hits/detector/include \ + -I$(G4BASE)/digits_hits/hits/include include $(G4INSTALL)/config/common.gmk diff --git a/source/processes/parameterisation/History b/source/processes/parameterisation/History index e8ce9b0a88..597f794b1e 100644 --- a/source/processes/parameterisation/History +++ b/source/processes/parameterisation/History @@ -16,6 +16,14 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +October 5, 2020, A. Zaborowska (param-V10-06-03) +- Introduce general facilities based on GFlash implementation + to facilitate multiple hit (energy & position) creation + from fast simulation models. + +September 9, 2020, G. Cosmo (param-V10-06-02) +- Fixed minor Coverity defect for uninitialised data in G4FastStep. + April 21, 2020, A. Zaborowska (param-V10-06-01) - Sanity check for root logical volumes for regions in G4GlobalFastSimulationManager. UI command /param/showSetup works also if no parallel world is present. diff --git a/source/processes/parameterisation/include/G4FastHit.hh b/source/processes/parameterisation/include/G4FastHit.hh new file mode 100644 index 0000000000..f1cc976320 --- /dev/null +++ b/source/processes/parameterisation/include/G4FastHit.hh @@ -0,0 +1,73 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +#ifndef G4FASTHIT_HH +#define G4FASTHIT_HH + +#include "G4ThreeVector.hh" + +/** + * @brief Minimal hit created in the fast simulation + * + * Minimal hit containing energy and position, for use in the fast simulation + * classes. + * Hits of G4FastHit type can be created in user implementation of fast + * simulation model and then deposited in the detector using G4FastSimHitMaker + * helper class. The helper will locate the sensitive volume and check if it + * inherits from both base classes: + * - G4VSensitiveDetector: for processing of detailed/non-fast simulation hits; + * - G4VFastSimSensitiveDetector: for processing of fast sim (G4FastSim) hits; + * An extended example extended/parameterisations/Par03 demonstrates how to use + * G4FastHit to create multiple deposits from the fast simulation model. + */ + +class G4FastHit +{ + public: + G4FastHit(); + G4FastHit(const G4ThreeVector& aPosition, G4double aEnergy); + G4FastHit(const G4ThreeVector& aPosition, G4double aEnergy, G4bool aDebug); + virtual ~G4FastHit(){}; + + /// Set energy + inline void SetEnergy(const G4double& aEnergy) { fEnergy = aEnergy; } + /// Get energy + inline G4double GetEnergy() const { return fEnergy; } + /// Set position + inline void SetPosition(const G4ThreeVector& aPosition) + { + fPosition = aPosition; + } + /// Get position + inline G4ThreeVector GetPosition() const { return fPosition; } + private: + /// energy + G4double fEnergy = 0; + /// position + G4ThreeVector fPosition = G4ThreeVector(); +}; + +#endif /* G4FASTHIT_HH */ diff --git a/source/processes/parameterisation/include/G4FastSimHitMaker.hh b/source/processes/parameterisation/include/G4FastSimHitMaker.hh new file mode 100644 index 0000000000..dd1cf69158 --- /dev/null +++ b/source/processes/parameterisation/include/G4FastSimHitMaker.hh @@ -0,0 +1,78 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +#ifndef G4FASTSIMHITMAKER_HH +#define G4FASTSIMHITMAKER_HH + +#include "G4TouchableHandle.hh" +#include "G4Navigator.hh" +#include "G4FastHit.hh" +#include "G4FastTrack.hh" + +/** + * @brief Helper class for hit creation + * + * Helper class that can be employed in the fast simulation models. + * It allows to deposit energy at given position (G4FastHit), provided it is + * located within the sensitive detector that derives from + * G4VFastSimSensitiveDetector base class. + * An extended example extended/parameterisations/Par03 demonstrates how to use + * G4FastSimHitMaker to create multiple deposits from the fast simulation model. + * + */ + +class G4FastSimHitMaker +{ + public: + G4FastSimHitMaker(); + ~G4FastSimHitMaker(); + + /// Deposit energy at given position. + /// @param[in] aHit Created hit (energy and position) + /// @param[in] aTrack Fast track with access to particle's track and + /// properties in envelope's local coordinates + void make(const G4FastHit& aHit, const G4FastTrack& aTrack); + /// If sensitive detector class is in the parallel world, it must be + /// specified, otherwise no sensitive detector will be found (mass geometry + /// will be checked). + /// @param[in] aName Name of the parallel world + inline void SetNameOfWorldWithSD(const G4String& aName) + { + fWorldWithSdName = aName; + }; + + private: + /// Touchable + G4TouchableHandle fTouchableHandle; + /// Navigator + G4Navigator* fpNavigator; + /// Flag specifying if navigator has been already set up + G4bool fNaviSetup; + /// Name of the world containing the sensitive detector. If empty, default + /// mass world is used. + G4String fWorldWithSdName; +}; +#endif \ No newline at end of file diff --git a/source/processes/parameterisation/include/G4FastStep.hh b/source/processes/parameterisation/include/G4FastStep.hh index 683934ef50..4ae9ace3ee 100644 --- a/source/processes/parameterisation/include/G4FastStep.hh +++ b/source/processes/parameterisation/include/G4FastStep.hh @@ -315,6 +315,10 @@ public: void Initialize(const G4FastTrack&); + // for Debug + void DumpInfo() const; + G4bool CheckIt(const G4Track&); + private: //=================================================== // Private Internal methods (implementation). @@ -350,28 +354,22 @@ private: G4ThreeVector thePolarizationChange; // The final kinetic energy of the current particle. - G4double theEnergyChange; + G4double theEnergyChange = 0.0; // The changed (final) position of a given particle. G4ThreeVector thePositionChange; // The changed (final) global time of a given particle. - G4double theTimeChange; + G4double theTimeChange = 0.0; // The changed (final) proper time of a given particle. - G4double theProperTimeChange; + G4double theProperTimeChange = 0.0; // The reference G4FastTrack - const G4FastTrack* fFastTrack; + const G4FastTrack* fFastTrack = nullptr; // weight for event biasing mechanism: - G4double theWeightChange; - - -public: - // for Debug - void DumpInfo() const; - G4bool CheckIt(const G4Track&); + G4double theWeightChange = 0.0; }; //******************************************************************* diff --git a/source/processes/parameterisation/include/G4VFastSimSensitiveDetector.hh b/source/processes/parameterisation/include/G4VFastSimSensitiveDetector.hh new file mode 100644 index 0000000000..048b0202fb --- /dev/null +++ b/source/processes/parameterisation/include/G4VFastSimSensitiveDetector.hh @@ -0,0 +1,122 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +#ifndef G4VFASTSIMSENSITIVEDETECTOR_HH +#define G4VFASTSIMSENSITIVEDETECTOR_HH + +#include "G4VReadOutGeometry.hh" +#include "G4TouchableHistory.hh" +#include "G4VSensitiveDetector.hh" +#include "G4FastHit.hh" +#include "G4FastTrack.hh" + +/** + * @brief Base class for the sensitive detector used within the fast simulation + * + * Base class for a sensitive detector that allows to store hits created in the + * fast simulation models. It must me used in addition to inheritance from the + * usual base class `G4VSensitiveDetector` for processing of energy deposited + * in G4Step. + * ProcessHits(...) method must be implemented and describe how hits should be + * saved in the hit collections. It is invoked by Hit method which is public and + * can be called directly in the fast simulation model (if sensitive detector is + * known to the model), or via the helper class G4FastSimHitMaker that will + * locate appropriate volume and retrieve its sensitive detector. + * An extended example extended/parameterisations/Par03 demonstrates how to use + * G4VFastSimSensitiveDetector to deposit energy from fast simulation and + * compare it to the detailed simulation. + * + */ + +class G4VFastSimSensitiveDetector +{ + public: + /// Create a hit. + /// + /// It checks if G4VSensitiveDetector is also used as a base class, + /// and takes into account the readout geometry, if it is defined. + /// User instruction on how to deposit energy needs to be implemented in + /// ProcessHits method. + /// @param[in] aHit Created hit (energy and position) + /// @param[in] aTrack Fast track with access to particle's track and + /// properties in envelope's local coordinates + /// @param[in] aTouchable Touchable with relevant transformations + inline G4bool Hit(const G4FastHit* aHit, const G4FastTrack* aTrack, + G4TouchableHandle* aTouchable) + { + G4bool result = true; + G4VSensitiveDetector* sensDet = dynamic_cast(this); + if(sensDet == nullptr) + { + G4Exception("G4VFastSimSensitiveDetector::Hit()", "InvalidSetup", + FatalException, + "Sensitive detector needs also to inherit also from " + "G4VSensitiveDetector if full " + "simulation is used instead!"); + } + if(sensDet->isActive()) + { + G4VReadOutGeometry* ROgeometry = sensDet->GetROgeometry(); + G4TouchableHistory* ROhistory = 0; + + if(ROgeometry) + { + // create fake pre-step point updating the touchable from read-out + // geometry. + G4Step fakeStep; + const G4Track* currentTrack = aTrack->GetPrimaryTrack(); + G4StepPoint* tmpPoint = fakeStep.GetPreStepPoint(); + tmpPoint->SetTouchableHandle(*aTouchable); + tmpPoint->SetPosition(aHit->GetPosition()); + tmpPoint->SetMomentumDirection(currentTrack->GetMomentumDirection()); + result = ROgeometry->CheckROVolume(&fakeStep, ROhistory); + } else { + ROhistory = static_cast((*aTouchable)()); + } + if(result) + result = ProcessHits(aHit, aTrack, ROhistory); + } + else + { + result = false; + } + return result; + } + + private: + /// Describes how energy and position of deposits are inserted into the hits + /// collection. It is a private method and it will be invoked by Hit() method + /// of the base class once the readout geometry that may be associated to the + /// corresponding G4VSensitiveDetector is taken into account. + /// It needs to be implemented in the derived class. + /// @param[in] aHit Created hit (energy and position) + /// @param[in] aTrack Fast track with access to particle's track and + /// properties in envelope's local coordinates + /// @param[in] aROHistory Touchable history with relevant transformations + virtual G4bool ProcessHits(const G4FastHit* aHit, const G4FastTrack* aTrack, + G4TouchableHistory* aROHistory) = 0; +}; +#endif /* G4VFASTSIMSENSITIVEDETECTOR_HH */ diff --git a/source/processes/parameterisation/sources.cmake b/source/processes/parameterisation/sources.cmake index b1e3803dd5..fc652f27a4 100644 --- a/source/processes/parameterisation/sources.cmake +++ b/source/processes/parameterisation/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4parameterisation # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,29 +14,13 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4parameterisation HEADERS + G4FastHit.hh + G4FastSimHitMaker.hh G4FastSimulationHelper.hh G4FastSimulationManager.hh G4FastSimulationManagerProcess.hh @@ -48,8 +32,11 @@ GEANT4_DEFINE_MODULE(NAME G4parameterisation G4FastStep.icc G4FastTrack.hh G4GlobalFastSimulationManager.hh + G4VFastSimSensitiveDetector.hh G4VFastSimulationModel.hh SOURCES + G4FastHit.cc + G4FastSimHitMaker.cc G4FastSimulationHelper.cc G4FastSimulationManager.cc G4FastSimulationManagerProcess.cc diff --git a/source/processes/parameterisation/src/G4FastHit.cc b/source/processes/parameterisation/src/G4FastHit.cc new file mode 100644 index 0000000000..22dd49da57 --- /dev/null +++ b/source/processes/parameterisation/src/G4FastHit.cc @@ -0,0 +1,39 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +#include "G4FastHit.hh" + +G4FastHit::G4FastHit() + : fEnergy() + , fPosition(G4ThreeVector()) +{} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4FastHit::G4FastHit(const G4ThreeVector& aPosition, G4double aEnergy) + : fEnergy(aEnergy) + , fPosition(aPosition) +{} diff --git a/source/processes/parameterisation/src/G4FastSimHitMaker.cc b/source/processes/parameterisation/src/G4FastSimHitMaker.cc new file mode 100644 index 0000000000..242ebac3a4 --- /dev/null +++ b/source/processes/parameterisation/src/G4FastSimHitMaker.cc @@ -0,0 +1,111 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// + +#include "G4FastSimHitMaker.hh" + +#include "G4TransportationManager.hh" +#include "G4VSensitiveDetector.hh" +#include "G4TouchableHandle.hh" + +#include "G4VFastSimSensitiveDetector.hh" + +G4FastSimHitMaker::G4FastSimHitMaker() +{ + fTouchableHandle = new G4TouchableHistory(); + fpNavigator = new G4Navigator(); + fNaviSetup = false; + fWorldWithSdName = ""; +} + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +G4FastSimHitMaker::~G4FastSimHitMaker() { delete fpNavigator; } + +//....oooOO0OOooo........oooOO0OOooo........oooOO0OOooo........oooOO0OOooo...... + +void G4FastSimHitMaker::make(const G4FastHit& aHit, const G4FastTrack& aTrack) +{ + // do not make empty deposit + if(aHit.GetEnergy() <= 0) + return; + // Locate the spot + if(!fNaviSetup) + { + // Choose the world volume that contains the sensitive detector based on its + // name (empty name for mass geometry) + G4VPhysicalVolume* worldWithSD = nullptr; + if(fWorldWithSdName.empty()) + { + worldWithSD = G4TransportationManager::GetTransportationManager() + ->GetNavigatorForTracking() + ->GetWorldVolume(); + } + else + { + worldWithSD = + G4TransportationManager::GetTransportationManager()->GetParallelWorld( + fWorldWithSdName); + } + fpNavigator->SetWorldVolume(worldWithSD); + // use track global position + fpNavigator->LocateGlobalPointAndUpdateTouchable( + aTrack.GetPrimaryTrack()->GetPosition(), fTouchableHandle(), false); + fNaviSetup = true; + } + else + { + // for further deposits use hit (local) position and local->global + // transformation + fpNavigator->LocateGlobalPointAndUpdateTouchable( + aTrack.GetInverseAffineTransformation()->TransformPoint( + aHit.GetPosition()), + fTouchableHandle()); + } + G4VPhysicalVolume* currentVolume = fTouchableHandle()->GetVolume(); + + G4VSensitiveDetector* sensitive; + if(currentVolume != 0) + { + sensitive = currentVolume->GetLogicalVolume()->GetSensitiveDetector(); + G4VFastSimSensitiveDetector* fastSimSensitive = + dynamic_cast(sensitive); + if(fastSimSensitive) + { + fastSimSensitive->Hit(&aHit, &aTrack, &fTouchableHandle); + } + else if(sensitive && + currentVolume->GetLogicalVolume()->GetFastSimulationManager()) + { + G4cerr << "ERROR - G4FastSimHitMaker::make()" << G4endl + << " It is required to derive from the " << G4endl + << " G4VFastSimSensitiveDetector in " << G4endl + << " addition to the usual G4VSensitiveDetector class." + << G4endl; + G4Exception("G4FastSimHitMaker::make()", "InvalidSetup", FatalException, + "G4VFastSimSensitiveDetector interface not implemented."); + } + } +} diff --git a/source/processes/parameterisation/src/G4FastStep.cc b/source/processes/parameterisation/src/G4FastStep.cc index 84202deaac..a49aecbbf6 100644 --- a/source/processes/parameterisation/src/G4FastStep.cc +++ b/source/processes/parameterisation/src/G4FastStep.cc @@ -295,12 +295,7 @@ void G4FastStep::Initialize(const G4Track&) } G4FastStep::G4FastStep() - : G4VParticleChange(), - theEnergyChange ( 0.0 ), - theTimeChange ( 0.0 ), - theProperTimeChange( 0.0 ), - fFastTrack ( nullptr ), - theWeightChange ( 0.0 ) + : G4VParticleChange() { if (verboseLevel>2) { diff --git a/source/processes/scoring/include/G4EnergySplitter.hh b/source/processes/scoring/include/G4EnergySplitter.hh index c58cd09f31..46eac5ef33 100644 --- a/source/processes/scoring/include/G4EnergySplitter.hh +++ b/source/processes/scoring/include/G4EnergySplitter.hh @@ -49,7 +49,7 @@ public: // with description G4EnergySplitter(); virtual ~G4EnergySplitter(); - G4int SplitEnergyInVolumes(const G4Step* aStep ); // Calculates the energy spliting, and dumps it into theEnergies. Returns number of steps + G4int SplitEnergyInVolumes(const G4Step* aStep ); // Calculates the energy splitting, and dumps it into theEnergies. Returns number of steps void GetLastVoxelID( G4int& voxelID); void GetFirstVoxelID( G4int& voxelID); diff --git a/source/processes/scoring/include/G4ParallelWorldProcess.hh b/source/processes/scoring/include/G4ParallelWorldProcess.hh old mode 100755 new mode 100644 diff --git a/source/processes/scoring/include/G4ParallelWorldProcessStore.hh b/source/processes/scoring/include/G4ParallelWorldProcessStore.hh old mode 100755 new mode 100644 diff --git a/source/processes/scoring/sources.cmake b/source/processes/scoring/sources.cmake index b2212989e4..06800a04b9 100644 --- a/source/processes/scoring/sources.cmake +++ b/source/processes/scoring/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4scoring # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,34 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/detector/include) -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/hits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/biasing/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/muons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/transportation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4scoring HEADERS G4EnergySplitter.hh diff --git a/source/processes/scoring/src/G4ParallelWorldProcess.cc b/source/processes/scoring/src/G4ParallelWorldProcess.cc old mode 100755 new mode 100644 diff --git a/source/processes/scoring/src/G4ParallelWorldProcessStore.cc b/source/processes/scoring/src/G4ParallelWorldProcessStore.cc old mode 100755 new mode 100644 diff --git a/source/processes/solidstate/channeling/include/G4Channeling.hh b/source/processes/solidstate/channeling/include/G4Channeling.hh old mode 100755 new mode 100644 diff --git a/source/processes/solidstate/channeling/include/G4ChannelingMaterialData.hh b/source/processes/solidstate/channeling/include/G4ChannelingMaterialData.hh old mode 100755 new mode 100644 diff --git a/source/processes/solidstate/channeling/include/G4ChannelingOptrMultiParticleChangeCrossSection.hh b/source/processes/solidstate/channeling/include/G4ChannelingOptrMultiParticleChangeCrossSection.hh index eeb8bc5325..e4ddb2ef2e 100644 --- a/source/processes/solidstate/channeling/include/G4ChannelingOptrMultiParticleChangeCrossSection.hh +++ b/source/processes/solidstate/channeling/include/G4ChannelingOptrMultiParticleChangeCrossSection.hh @@ -29,7 +29,7 @@ // // Class Description: // A G4VBiasingOperator concrete implementation example to -// illustrate how an operator can make use of an other operator. +// illustrate how an operator can make use of another operator. // In the present case, the G4ChannelingOptrChangeCrossSection // operator, that is made to bias processes of one particle // type is instancied several times, one for each particle type diff --git a/source/processes/solidstate/channeling/sources.cmake b/source/processes/solidstate/channeling/sources.cmake index d8da2bf5b6..f8edf40098 100644 --- a/source/processes/solidstate/channeling/sources.cmake +++ b/source/processes/solidstate/channeling/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4phonon # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,29 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/hadrons/barions/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/biasing/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/biasing/generic/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4solidstate_channeling HEADERS G4ChannelingTrackData.hh diff --git a/source/processes/solidstate/channeling/src/G4Channeling.cc b/source/processes/solidstate/channeling/src/G4Channeling.cc old mode 100755 new mode 100644 diff --git a/source/processes/solidstate/channeling/src/G4ChannelingMaterialData.cc b/source/processes/solidstate/channeling/src/G4ChannelingMaterialData.cc old mode 100755 new mode 100644 diff --git a/source/processes/solidstate/phonon/sources.cmake b/source/processes/solidstate/phonon/sources.cmake index af922e8359..aa6dc6e6d1 100644 --- a/source/processes/solidstate/phonon/sources.cmake +++ b/source/processes/solidstate/phonon/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4phonon # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,25 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/bosons/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4solidstate_phonon HEADERS G4LatticeManager.hh diff --git a/source/processes/transportation/History b/source/processes/transportation/History index 602cba955a..c7607fc500 100644 --- a/source/processes/transportation/History +++ b/source/processes/transportation/History @@ -16,6 +16,15 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Oct 26th 2020, G. Amadio & J.Apostolakis transport-V10-06-00 + +A substantial reorganisation of G4Transportation::AlongStepGPIL +to use values already in cache, reduce the number of branches, and +use extra local variables for track properties to avoid indirections. +The method is one of the heaviest in many types of simulation workloads. +Profiling identified a persistent reduction in misses of instruction-TLB +loads after these changes. + Nov 1st 2019, J.Apostolakis transport-V10-05-02 ---------------------------- - Optimisation in G4Transportation and G4CoupledTransportation: @@ -311,7 +320,7 @@ Jan. 15th, 2013, A.Dotti Jul. 12th, 2011, J.Apostolakis transport-V09-05-02 ------------------------------ - G4Transportation.cc: - Corrected issues with initilisation of data members reported by Coverity. + Corrected issues with initialisation of data members reported by Coverity. Renamed data member endpointdistance to fEndPointDistance (to conform). Jul. 5th, 2012 Gabriele Cosmo transport-V09-05-01 diff --git a/source/processes/transportation/sources.cmake b/source/processes/transportation/sources.cmake index fa51c3591f..199bf9a746 100644 --- a/source/processes/transportation/sources.cmake +++ b/source/processes/transportation/sources.cmake @@ -4,7 +4,7 @@ # Package: Geant4.src.G4processes.G4transportation # # Sources description for a library. -# Lists the sources and headers of the code explicitely. +# Lists the sources and headers of the code explicitly. # Lists include paths needed. # Lists the internal granular and global dependencies of the library. # Source specific properties should be added at the end. @@ -14,30 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/biasing/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/magneticfield/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/navigation/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/volumes/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPRandom/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/materials/include) -include_directories(${CMAKE_SOURCE_DIR}/source/particles/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/cuts/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/electromagnetic/utils/include) -include_directories(${CMAKE_SOURCE_DIR}/source/processes/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/track/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4transportation HEADERS G4CoupledTransportation.hh @@ -58,7 +37,7 @@ GEANT4_DEFINE_MODULE(NAME G4transportation G4NeutronKillerMessenger.cc G4StepLimiter.cc G4Transportation.cc - G4TransportationLogger.cc + G4TransportationLogger.cc G4UserSpecialCuts.cc G4VTrackTerminator.cc GRANULAR_DEPENDENCIES diff --git a/source/processes/transportation/src/G4Transportation.cc b/source/processes/transportation/src/G4Transportation.cc index a9ac876900..dd19e071ef 100644 --- a/source/processes/transportation/src/G4Transportation.cc +++ b/source/processes/transportation/src/G4Transportation.cc @@ -178,354 +178,310 @@ G4Transportation::PrintStatistics( std::ostream& outStr) const // Calculate the new value of the safety and return it. // Store the final time, position and momentum. -G4double G4Transportation:: -AlongStepGetPhysicalInteractionLength( const G4Track& track, - G4double, // previousStepSize - G4double currentMinimumStep, - G4double& currentSafety, - G4GPILSelection* selection ) +G4double G4Transportation::AlongStepGetPhysicalInteractionLength( + const G4Track& track, + G4double, // previousStepSize + G4double currentMinimumStep, G4double& currentSafety, + G4GPILSelection* selection) { - G4double geometryStepLength= -1.0, newSafety= -1.0; - fParticleIsLooping = false ; - - // Initial actions moved to StartTrack() + // Initial actions moved to StartTrack() // -------------------------------------- // Note: in case another process changes touchable handle - // it will be necessary to add here (for all steps) + // it will be necessary to add here (for all steps) // fCurrentTouchableHandle = aTrack->GetTouchableHandle(); // GPILSelection is set to defaule value of CandidateForSelection // It is a return value // - *selection = CandidateForSelection ; + *selection = CandidateForSelection; - fFirstStepInVolume= fNewTrack || fLastStepInVolume; - fLastStepInVolume= false; - fNewTrack = false; - - fParticleChange.ProposeFirstStepInVolume(fFirstStepInVolume); - // Get initial Energy/Momentum of the track // - const G4DynamicParticle* pParticle = track.GetDynamicParticle() ; - const G4ParticleDefinition* pParticleDef = pParticle->GetDefinition() ; - G4ThreeVector startMomentumDir = pParticle->GetMomentumDirection() ; - G4ThreeVector startPosition = track.GetPosition() ; + const G4ThreeVector startPosition = track.GetPosition(); + const G4ThreeVector startMomentumDir = track.GetMomentumDirection(); - // The Step Point safety can be limited by other geometries and/or the + // The Step Point safety can be limited by other geometries and/or the // assumptions of any process - it's not always the geometrical safety. // We calculate the starting point's isotropic safety here. - // - G4ThreeVector OriginShift = startPosition - fPreviousSftOrigin ; - G4double MagSqShift = OriginShift.mag2() ; - if( MagSqShift >= sqr(fPreviousSafety) ) { - currentSafety = 0.0 ; - } - else - { - currentSafety = fPreviousSafety - std::sqrt(MagSqShift) ; + const G4double MagSqShift = (startPosition - fPreviousSftOrigin).mag2(); + + if(MagSqShift >= sqr(fPreviousSafety)) + currentSafety = 0.0; + else + currentSafety = fPreviousSafety - std::sqrt(MagSqShift); } // Is the particle charged or has it a magnetic moment? // - G4double particleCharge = pParticle->GetCharge() ; - G4double magneticMoment = pParticle->GetMagneticMoment() ; - G4double restMass = pParticle->GetMass() ; + const G4DynamicParticle* pParticle = track.GetDynamicParticle(); - fGeometryLimitedStep = false ; + const G4double particleMass = pParticle->GetMass(); + const G4double particleCharge = pParticle->GetCharge(); + const G4double kineticEnergy = pParticle->GetKineticEnergy(); + + const G4double magneticMoment = pParticle->GetMagneticMoment(); + const G4ThreeVector particleSpin = pParticle->GetPolarization(); // There is no need to locate the current volume. It is Done elsewhere: - // On track construction + // On track construction // By the tracking, after all AlongStepDoIts, in "Relocation" // Check if the particle has a force, EM or gravitational, exerted on it // - G4FieldManager* fieldMgr=0; - G4bool fieldExertsForce = false ; - fieldMgr = fFieldPropagator->FindAndSetFieldManager( track.GetVolume() ); - G4bool eligibleEM = (particleCharge != 0.0) - || ( fUseMagneticMoment && (magneticMoment != 0.0) ); - G4bool eligibleGrav = fUseGravity && (restMass != 0.0) ; + G4bool eligibleEM = + (particleCharge != 0.0) || ((magneticMoment != 0.0) && fUseMagneticMoment); + G4bool eligibleGrav = (particleMass != 0.0) && fUseGravity; - if( (fieldMgr!=nullptr) && (eligibleEM||eligibleGrav) ) + fFieldExertedForce = false; + + if(eligibleEM || eligibleGrav) { - // User can configure the field Manager for this track - fieldMgr->ConfigureForTrack( &track ); - // Called here to allow a transition from no-field pointer - // to finite field (non-zero pointer). - - // If the field manager has no field ptr, the field is zero - // by definition ( = there is no field ! ) - const G4Field* ptrField= fieldMgr->GetDetectorField(); - if( ptrField ) - { - fieldExertsForce = eligibleEM - || ( eligibleGrav && ptrField->IsGravityActive() ); - } - // || (gravityOn && (restMass != 0.0)) ) - + if(G4FieldManager* fieldMgr = + fFieldPropagator->FindAndSetFieldManager(track.GetVolume())) + { + // User can configure the field Manager for this track + fieldMgr->ConfigureForTrack(&track); + // Called here to allow a transition from no-field pointer + // to finite field (non-zero pointer). + + // If the field manager has no field ptr, the field is zero + // by definition ( = there is no field ! ) + if(const G4Field* ptrField = fieldMgr->GetDetectorField()) + fFieldExertedForce = + eligibleEM || (eligibleGrav && ptrField->IsGravityActive()); + } } - fFieldExertedForce = fieldExertsForce; - - if( !fieldExertsForce ) + + G4double geometryStepLength = currentMinimumStep; + + if(currentMinimumStep == 0.0) { - G4double linearStepLength ; - if( fShortStepOptimisation && (currentMinimumStep <= currentSafety) ) - { - // The Step is guaranteed to be taken - // - geometryStepLength = currentMinimumStep ; - fGeometryLimitedStep = false ; - } - else - { - // Find whether the straight path intersects a volume - // - linearStepLength = fLinearNavigator->ComputeStep( startPosition, - startMomentumDir, - currentMinimumStep, - newSafety) ; - // Remember last safety origin & value. - // - fPreviousSftOrigin = startPosition ; - fPreviousSafety = newSafety ; - fpSafetyHelper->SetCurrentSafety( newSafety, startPosition); + fEndPointDistance = 0.0; + // flag step as geometry limited if current safety is also zero + fGeometryLimitedStep = (currentSafety == 0.0); - currentSafety = newSafety ; - - fGeometryLimitedStep= (linearStepLength <= currentMinimumStep); - if( fGeometryLimitedStep ) - { - // The geometry limits the Step size (an intersection was found.) - geometryStepLength = linearStepLength ; - } - else - { - // The full Step is taken. - geometryStepLength = currentMinimumStep ; - } - } - fEndPointDistance = geometryStepLength ; - - // Calculate final position - // - fTransportEndPosition = startPosition+geometryStepLength*startMomentumDir; - - // Momentum direction, energy and polarisation are unchanged by transport - // - fTransportEndMomentumDir = startMomentumDir ; - fTransportEndKineticEnergy = track.GetKineticEnergy() ; - fTransportEndSpin = track.GetPolarization(); - fParticleIsLooping = false ; - fMomentumChanged = false ; - fEndGlobalTimeComputed = false ; + fMomentumChanged = false; + fParticleIsLooping = false; + fEndGlobalTimeComputed = false; + fTransportEndPosition = startPosition; + fTransportEndMomentumDir = startMomentumDir; + fTransportEndKineticEnergy = kineticEnergy; + fTransportEndSpin = particleSpin; } - else // A field exerts force + else if(!fFieldExertedForce) { - G4double momentumMagnitude = pParticle->GetTotalMomentum() ; - G4ThreeVector EndUnitMomentum ; - G4double lengthAlongCurve ; + fGeometryLimitedStep = false; + if(geometryStepLength > currentSafety || !fShortStepOptimisation) + { + const G4double linearStepLength = fLinearNavigator->ComputeStep( + startPosition, startMomentumDir, currentMinimumStep, currentSafety); - // The charge can change (dynamic) - // - G4ChargeState chargeState(particleCharge, - magneticMoment, - pParticleDef->GetPDGSpin() ); - - auto equationOfMotion = fFieldPropagator->GetCurrentEquationOfMotion(); + if(linearStepLength <= currentMinimumStep) + { + geometryStepLength = linearStepLength; + fGeometryLimitedStep = true; + } + // Remember last safety origin & value. + // + fPreviousSftOrigin = startPosition; + fPreviousSafety = currentSafety; + fpSafetyHelper->SetCurrentSafety(currentSafety, startPosition); + } - equationOfMotion->SetChargeMomentumMass( chargeState, - momentumMagnitude, - restMass); - - G4FieldTrack aFieldTrack = G4FieldTrack( startPosition, - track.GetGlobalTime(), // Lab. - track.GetMomentumDirection(), - track.GetKineticEnergy(), - restMass, - particleCharge, - track.GetPolarization(), - pParticleDef->GetPDGMagneticMoment(), - 0.0, // Length along track - pParticleDef->GetPDGSpin() ); + fEndPointDistance = geometryStepLength; - if( currentMinimumStep > 0 ) - { - // Do the Transport in the field (non recti-linear) - // - lengthAlongCurve = fFieldPropagator->ComputeStep( aFieldTrack, - currentMinimumStep, - currentSafety, - track.GetVolume(), - track.GetKineticEnergy() < fThreshold_Important_Energy ); + fMomentumChanged = false; + fParticleIsLooping = false; + fEndGlobalTimeComputed = false; + fTransportEndPosition = + startPosition + geometryStepLength * startMomentumDir; + fTransportEndMomentumDir = startMomentumDir; + fTransportEndKineticEnergy = kineticEnergy; + fTransportEndSpin = particleSpin; + } + else // A field exerts force + { + const auto pParticleDef = pParticle->GetDefinition(); + const auto particlePDGSpin = pParticleDef->GetPDGSpin(); + const auto particlePDGMagM = pParticleDef->GetPDGMagneticMoment(); - fGeometryLimitedStep= fFieldPropagator->IsLastStepInVolume(); - // - // It is possible that step was reduced in PropagatorInField due to - // previous zero steps. To cope with case that reduced step is taken - // in full, we must rely on PiF to obtain this value + auto equationOfMotion = fFieldPropagator->GetCurrentEquationOfMotion(); - geometryStepLength = std::min( lengthAlongCurve, currentMinimumStep ); - - // Remember last safety origin & value. - // - fPreviousSftOrigin = startPosition ; - fPreviousSafety = currentSafety ; - fpSafetyHelper->SetCurrentSafety( currentSafety, startPosition); - } - else - { - geometryStepLength = lengthAlongCurve= 0.0 ; - fGeometryLimitedStep = false ; - } - - // Get the End-Position and End-Momentum (Dir-ection) - // - fTransportEndPosition = aFieldTrack.GetPosition() ; + // The charge can change (dynamic), therefore the use of G4ChargeState + // + equationOfMotion->SetChargeMomentumMass( + G4ChargeState(particleCharge, magneticMoment, particlePDGSpin), + pParticle->GetTotalMomentum(), particleMass); - fTransportEndSpin = aFieldTrack.GetSpin(); - fParticleIsLooping = fFieldPropagator->IsParticleLooping() ; - fEndPointDistance = (fTransportEndPosition - startPosition).mag() ; - - // Momentum: Magnitude and direction can be changed too now ... - // - fMomentumChanged = true ; - fTransportEndMomentumDir = aFieldTrack.GetMomentumDir() ; + G4FieldTrack aFieldTrack(startPosition, + track.GetGlobalTime(), // Lab. + startMomentumDir, kineticEnergy, particleMass, + particleCharge, particleSpin, particlePDGMagM, + 0.0, // Length along track + particlePDGSpin); - fTransportEndKineticEnergy = aFieldTrack.GetKineticEnergy() ; + // Do the Transport in the field (non recti-linear) + // + const G4double lengthAlongCurve = fFieldPropagator->ComputeStep( + aFieldTrack, currentMinimumStep, currentSafety, track.GetVolume(), + kineticEnergy < fThreshold_Important_Energy); - if( fFieldPropagator->GetCurrentFieldManager()->DoesFieldChangeEnergy() ) - { - // If the field can change energy, then the time must be integrated - // - so this should have been updated - // - fCandidateEndGlobalTime = aFieldTrack.GetLabTimeOfFlight(); - fEndGlobalTimeComputed = true; + if(lengthAlongCurve < geometryStepLength) + geometryStepLength = lengthAlongCurve; - // was ( fCandidateEndGlobalTime != track.GetGlobalTime() ); - // a cleaner way is to have FieldTrack knowing whether time is updated. - } - else - { - // The energy should be unchanged by field transport, - // - so the time changed will be calculated elsewhere - // - fEndGlobalTimeComputed = false; + // Remember last safety origin & value. + // + fPreviousSftOrigin = startPosition; + fPreviousSafety = currentSafety; + fpSafetyHelper->SetCurrentSafety(currentSafety, startPosition); - // Check that the integration preserved the energy - // - and if not correct this! - G4double startEnergy= track.GetKineticEnergy(); - G4double endEnergy= fTransportEndKineticEnergy; + fGeometryLimitedStep = fFieldPropagator->IsLastStepInVolume(); + // + // It is possible that step was reduced in PropagatorInField due to + // previous zero steps. To cope with case that reduced step is taken + // in full, we must rely on PiF to obtain this value - static G4ThreadLocal G4int no_inexact_steps=0, no_large_ediff; - G4double absEdiff = std::fabs(startEnergy- endEnergy); - if( absEdiff > perMillion * endEnergy ) + G4bool changesEnergy = + fFieldPropagator->GetCurrentFieldManager()->DoesFieldChangeEnergy(); + + fMomentumChanged = true; + fParticleIsLooping = fFieldPropagator->IsParticleLooping(); + + fEndGlobalTimeComputed = changesEnergy; + fTransportEndPosition = aFieldTrack.GetPosition(); + fTransportEndMomentumDir = aFieldTrack.GetMomentumDir(); + + fEndPointDistance = (fTransportEndPosition - startPosition).mag(); + + // Ignore change in energy for fields that conserve energy + // This hides the integration error, but gives a better physical answer + fTransportEndKineticEnergy = + changesEnergy ? aFieldTrack.GetKineticEnergy() : kineticEnergy; + fTransportEndSpin = aFieldTrack.GetSpin(); + + if(fEndGlobalTimeComputed) + { + // If the field can change energy, then the time must be integrated + // - so this should have been updated + // + fCandidateEndGlobalTime = aFieldTrack.GetLabTimeOfFlight(); + + // was ( fCandidateEndGlobalTime != track.GetGlobalTime() ); + // a cleaner way is to have FieldTrack knowing whether time is updated. + } +#if defined(G4VERBOSE) || defined(G4DEBUG_TRANSPORT) + else + { + // The energy should be unchanged by field transport, + // - so the time changed will be calculated elsewhere + // + // Check that the integration preserved the energy + // - and if not correct this! + G4double startEnergy = kineticEnergy; + G4double endEnergy = fTransportEndKineticEnergy; + + static G4ThreadLocal G4int no_inexact_steps = 0, no_large_ediff; + G4double absEdiff = std::fabs(startEnergy - endEnergy); + if(absEdiff > perMillion * endEnergy) + { + no_inexact_steps++; + // Possible statistics keeping here ... + } + if(verboseLevel > 1) + { + if(std::fabs(startEnergy - endEnergy) > perThousand * endEnergy) { - no_inexact_steps++; - // Possible statistics keeping here ... - } - if( verboseLevel > 1 ) - { - if( std::fabs(startEnergy- endEnergy) > perThousand * endEnergy ) + static G4ThreadLocal G4int no_warnings = 0, warnModulo = 1, + moduloFactor = 10; + no_large_ediff++; + if((no_large_ediff % warnModulo) == 0) { - static G4ThreadLocal G4int no_warnings= 0, warnModulo=1, - moduloFactor= 10; - no_large_ediff ++; - if( (no_large_ediff% warnModulo) == 0 ) + no_warnings++; + std::ostringstream message; + message << "Energy change in Step is above 1^-3 relative value. " + << G4endl << " Relative change in 'tracking' step = " + << std::setw(15) << (endEnergy - startEnergy) / startEnergy + << G4endl << " Starting E= " << std::setw(12) + << startEnergy / MeV << " MeV " << G4endl + << " Ending E= " << std::setw(12) << endEnergy / MeV + << " MeV " << G4endl + << "Energy has been corrected -- however, review" + << " field propagation parameters for accuracy." << G4endl; + if((verboseLevel > 2) || (no_warnings < 4) || + (no_large_ediff == warnModulo * moduloFactor)) { - no_warnings++; - std::ostringstream message; - message << "Energy change in Step is above 1^-3 relative value. " - << G4endl - << " Relative change in 'tracking' step = " - << std::setw(15) << (endEnergy-startEnergy)/startEnergy - << G4endl - << " Starting E= " << std::setw(12) << startEnergy / MeV - << " MeV " << G4endl - << " Ending E= " << std::setw(12) << endEnergy / MeV - << " MeV " << G4endl - << "Energy has been corrected -- however, review" - << " field propagation parameters for accuracy." << G4endl; - if ( (verboseLevel > 2 ) || (no_warnings<4) - || (no_large_ediff == warnModulo * moduloFactor) ) - { - message << "These include EpsilonStepMax(/Min) in G4FieldManager " << G4endl - << "which determine fractional error per step for integrated quantities. " << G4endl - << "Note also the influence of the permitted number of integration steps." - << G4endl; - } - message << "Bad 'endpoint'. Energy change detected and corrected." + message << "These include EpsilonStepMax(/Min) in G4FieldManager " << G4endl - << "Has occurred already " << no_large_ediff << " times."; - G4Exception("G4Transportation::AlongStepGetPIL()", - "EnergyChange", JustWarning, message); - if( no_large_ediff == warnModulo * moduloFactor ) - { - warnModulo *= moduloFactor; - } + << "which determine fractional error per step for " + "integrated quantities. " + << G4endl + << "Note also the influence of the permitted number of " + "integration steps." + << G4endl; + } + message << "Bad 'endpoint'. Energy change detected and corrected." + << G4endl << "Has occurred already " << no_large_ediff + << " times."; + G4Exception("G4Transportation::AlongStepGetPIL()", "EnergyChange", + JustWarning, message); + if(no_large_ediff == warnModulo * moduloFactor) + { + warnModulo *= moduloFactor; } } - } // end of if (verboseLevel) - - // Correct the energy for fields that conserve it - // This - hides the integration error - // - but gives a better physical answer - // - fTransportEndKineticEnergy= track.GetKineticEnergy(); - } - - } - - // If we are asked to go a step length of 0, and we are on a boundary - // then a boundary will also limit the step -> we must flag this. - // - if( currentMinimumStep == 0.0 ) - { - if( currentSafety == 0.0 ) { fGeometryLimitedStep = true; } + } + } // end of if (verboseLevel) + } +#endif } // Update the safety starting from the end-point, // if it will become negative at the end-point. // - if( currentSafety < fEndPointDistance ) + if(currentSafety < fEndPointDistance) { - if( particleCharge != 0.0 ) - { - G4double endSafety = - fLinearNavigator->ComputeSafety( fTransportEndPosition) ; - currentSafety = endSafety ; - fPreviousSftOrigin = fTransportEndPosition ; - fPreviousSafety = currentSafety ; - fpSafetyHelper->SetCurrentSafety(currentSafety, fTransportEndPosition); + if(particleCharge != 0.0) + { + G4double endSafety = + fLinearNavigator->ComputeSafety(fTransportEndPosition); + currentSafety = endSafety; + fPreviousSftOrigin = fTransportEndPosition; + fPreviousSafety = currentSafety; + fpSafetyHelper->SetCurrentSafety(currentSafety, fTransportEndPosition); - // Because the Stepping Manager assumes it is from the start point, - // add the StepLength - // - currentSafety += fEndPointDistance ; + // Because the Stepping Manager assumes it is from the start point, + // add the StepLength + // + currentSafety += fEndPointDistance; -#ifdef G4DEBUG_TRANSPORT - G4cout.precision(12) ; - G4cout << "***G4Transportation::AlongStepGPIL ** " << G4endl ; - G4cout << " Called Navigator->ComputeSafety at " << fTransportEndPosition - << " and it returned safety= " << endSafety << G4endl ; - G4cout << " Adding endpoint distance " << fEndPointDistance - << " to obtain pseudo-safety= " << currentSafety << G4endl ; - } - else - { - G4cout << "***G4Transportation::AlongStepGPIL ** " << G4endl ; - G4cout << " Avoiding call to ComputeSafety : " << G4endl; - G4cout << " charge = " << particleCharge << G4endl; - G4cout << " mag moment = " << magneticMoment << G4endl; +#ifdef G4DEBUG_TRANSPORT + G4cout.precision(12); + G4cout << "***G4Transportation::AlongStepGPIL ** " << G4endl; + G4cout << " Called Navigator->ComputeSafety at " << fTransportEndPosition + << " and it returned safety= " << endSafety << G4endl; + G4cout << " Adding endpoint distance " << fEndPointDistance + << " to obtain pseudo-safety= " << currentSafety << G4endl; + } + else + { + G4cout << "***G4Transportation::AlongStepGPIL ** " << G4endl; + G4cout << " Avoiding call to ComputeSafety : " << G4endl; + G4cout << " charge = " << particleCharge << G4endl; + G4cout << " mag moment = " << magneticMoment << G4endl; #endif - } - } + } + } - fParticleChange.ProposeTrueStepLength(geometryStepLength) ; + fFirstStepInVolume = fNewTrack || fLastStepInVolume; + fLastStepInVolume = false; + fNewTrack = false; - return geometryStepLength ; + fParticleChange.ProposeFirstStepInVolume(fFirstStepInVolume); + fParticleChange.ProposeTrueStepLength(geometryStepLength); + + return geometryStepLength; } ////////////////////////////////////////////////////////////////////////// diff --git a/source/run/GNUmakefile b/source/run/GNUmakefile index 37130ff8a8..8ce2d1c3df 100644 --- a/source/run/GNUmakefile +++ b/source/run/GNUmakefile @@ -19,6 +19,9 @@ include $(G4INSTALL)/config/architecture.gmk ifdef G4FPE_DEBUG CPPFLAGS += -DG4FPE_DEBUG endif +ifdef G4BT_DEBUG + CPPFLAGS += -DG4BT_DEBUG +endif CPPFLAGS += -DG4RUN_ALLOC_EXPORT CPPFLAGS += \ diff --git a/source/run/History b/source/run/History index d5c652afd5..ba2637dedf 100644 --- a/source/run/History +++ b/source/run/History @@ -16,19 +16,58 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- -June 17th Gunter Folger, included in run-V10-06-07 -- Fixes for windows. - - G4MTRunManager: - - inline static functions split into declaration and definition: - GetMasterThreadId(), GetMasterScoringManager(), GetMasterWorlds(), - addWorld(), SetSeedOncePerCommunication(), SetSeedOncePerCommunication() - - add GetMasterTheadId() - - G4RunManager: - - impot/export static fGeometryHasBeenDestroyed using G4RUN_DLL, add - include for rundef.hh - - -June 4th, 2020 J.Madsen (run-V10-06-07) +November 21, 2020 Gabriele Cosmo (run-V10-06-19) +- Fixed compilation warnings in G4RunManager. + +November 18, 2020 Jonathan Madsen (run-V10-06-18) +- Added G4Profiler support. +- Removed TIMEMORY_AUTO_TIMER. + +November 17, 2020 G.Cosmo (run-V10-06-17) +- Protect activation of G4BackTrace within G4BT_DEBUG flag in + G4RunManagerKernel. + +November 16, 2020 G.Cosmo (run-V10-06-16) +- Fixed typos in printed-out text. Addressing problem report #2285. + +October 20th, 2020 Jonathan Madsen (run-V10-06-15) +- Run-managers are friends of G4RunManagerFactory. + +October 20th, 2020 Jonathan Madsen (run-V10-06-14) +- Added activation of G4Backtrace to G4RunManagerKernel. + +October 9th, 2020 Makoto Asai (run-V10-06-13) +- Added protection for Windows on G4RunManager::GetRunManager()->rndmSaveThisEvent(). + +October 5th, 2020 Makoto Asai (run-V10-06-12) +- Fix the issue of G4RunManager::GetRunManager()->rndmSaveThisEvent() not working + in multithreaded mode. Addresses to Bug Report #2278. + +September 29th, 2020 Anna Zaborowska (run-V10-06-11) +- Bug fix for bug #2276: /random/setSeeds parses arguments to int instead of long + +September 27th Vladimir Ivanchenko (run-V10-06-10) +- G4VModularPhysicsList - fixed typos in printouts + +September 21st Jonathan Madsen (run-V10-06-09) +- Added checks for currentRun before calling routines with currentRun +- G4MTRunManager: + - added banner similar to G4TaskRunManager at CreateAndStartWorkers + - moved master scoring-manager, master worlds, fMasterRM from private to protected + +June 30th Gabriele Cosmo (run-V10-06-08) +- Added dummy virtual methods Get/SetNumberOfThreads() in G4RunManager to + allow dispatching to inheriting MT/Tasking classes. + +June 17th Gunter Folger (run-V10-06-07) +- Fixes for Windows DLLs. In G4MTRunManager: split inline static functions into + declaration and definition: GetMasterThreadId(), GetMasterScoringManager(), + GetMasterWorlds(), addWorld(), SetSeedOncePerCommunication(), + SetSeedOncePerCommunication(); added GetMasterTheadId(). + In G4RunManager: import/export static 'fGeometryHasBeenDestroyed' using + G4RUN_DLL, and include for rundefs.hh + +June 4th, 2020 J.Madsen - Minor class access changes in G4MTRunManager to enable inheritance for G4TaskRunManager June 17th Gunter Folger, included in the above tag @@ -53,7 +92,7 @@ April 9th, 2020 M.Asai (run-V10-06-02) option for the new "probe" scoring mesh. February 18th, 2020 V.Ivanchenko (run-V10-06-01) -- G4RunManager - does not call G4ParticleTable for Messenger +- G4RunManager - does not call G4ParticleTable for Messenger deletion December 9th, 2019 B. Morgan (run-V10-06-00) diff --git a/source/run/include/G4MTRunManager.hh b/source/run/include/G4MTRunManager.hh index f672cb88a0..c1ec375f24 100644 --- a/source/run/include/G4MTRunManager.hh +++ b/source/run/include/G4MTRunManager.hh @@ -38,6 +38,7 @@ #include "G4RNGHelper.hh" #include "G4RunManager.hh" #include "G4Threading.hh" +#include "G4Profiler.hh" #include #include @@ -45,11 +46,18 @@ class G4MTRunManagerKernel; class G4ScoringManager; class G4UserWorkerInitialization; class G4UserWorkerThreadInitialization; +class G4RunManagerFactory; // TODO: Split random number storage from this class class G4MTRunManager : public G4RunManager { + friend class G4RunManagerFactory; + + public: + // the profiler aliases are only used when compiled with GEANT4_USE_TIMEMORY + using ProfilerConfig = G4ProfilerConfig; + public: G4MTRunManager(); virtual ~G4MTRunManager(); @@ -100,6 +108,8 @@ class G4MTRunManager : public G4RunManager // Adds one seed to the list of seeds virtual void PrepareCommandsStack(); virtual void StoreRNGStatus(const G4String& filenamePrefix); + virtual void rndmSaveThisRun(); + virtual void rndmSaveThisEvent(); virtual void CreateAndStartWorkers(); // Creates worker threads and signal to start public: @@ -175,12 +185,14 @@ class G4MTRunManager : public G4RunManager return masterRNGEngine; } - private: + protected: // Handling of master thread scoring worlds, access to it is needed by workers - static G4ScoringManager* masterScM; - static masterWorlds_t masterWorlds; + G4MTRUN_DLL static G4ScoringManager* masterScM; + G4MTRUN_DLL static masterWorlds_t masterWorlds; // Singleton implementing master thread behavior - static G4MTRunManager* fMasterRM; + G4MTRUN_DLL static G4MTRunManager* fMasterRM; + + private: G4MTRunManagerKernel* MTkernel; public: // with description diff --git a/source/run/include/G4Run.hh b/source/run/include/G4Run.hh index 9a405bcf61..fc38a463b8 100644 --- a/source/run/include/G4Run.hh +++ b/source/run/include/G4Run.hh @@ -30,7 +30,10 @@ #define G4Run_h 1 #include "globals.hh" +#include "G4Profiler.hh" + #include + class G4Event; class G4HCtable; class G4DCtable; @@ -44,6 +47,9 @@ class G4DCtable; class G4Run { + public: + using ProfilerConfig = G4ProfilerConfig; + public: G4Run(); virtual ~G4Run(); diff --git a/source/run/include/G4RunManager.hh b/source/run/include/G4RunManager.hh index e32f0be431..39f6c31dbd 100644 --- a/source/run/include/G4RunManager.hh +++ b/source/run/include/G4RunManager.hh @@ -131,12 +131,20 @@ class G4PrimaryTransformer; #include "G4Event.hh" #include "G4EventManager.hh" #include "G4RunManagerKernel.hh" +#include "G4Profiler.hh" #include "globals.hh" #include #include +class G4RunManagerFactory; + class G4RunManager { + friend class G4RunManagerFactory; + public: + // the profiler aliases are only used when compiled with GEANT4_USE_TIMEMORY + using ProfilerConfig = G4ProfilerConfig; + public: // with description static G4RunManager* GetRunManager(); // Static method which returns the singleton pointer of G4RunManager or @@ -265,6 +273,17 @@ class G4RunManager // G4VPersistentManager // class is defined. + virtual void ConfigureProfilers(const std::vector& args = {}); + // This method configures the global fallback query and label generators + + void ConfigureProfilers(int argc, char** argv); + // calls the above virtual method + + virtual void SetNumberOfThreads(G4int) {} + virtual G4int GetNumberOfThreads() const { return 1; } + // Dummy methods to dispatch generic inheritance calls from G4RunManager + // base class. + public: // with description //////////////////////////////////////////////////////void UpdateRegion(); // Update region list. @@ -690,6 +709,9 @@ class G4RunManager { geometryDirectlyUpdated = val; } + + private: + std::unique_ptr masterRunProfiler; }; #endif diff --git a/source/run/include/G4VUserPhysicsList.hh b/source/run/include/G4VUserPhysicsList.hh index 085bdb5de1..538cc7a281 100644 --- a/source/run/include/G4VUserPhysicsList.hh +++ b/source/run/include/G4VUserPhysicsList.hh @@ -219,7 +219,7 @@ class G4VUserPhysicsList // Store PhysicsTable together with both material and cut value // information in files under the specified directory. - // (return true if files are sucessfully created) + // (return true if files are successfully created) G4bool StorePhysicsTable(const G4String& directory = "."); // Return true if "Retrieve" flag is ON. diff --git a/source/run/include/G4WorkerRunManager.hh b/source/run/include/G4WorkerRunManager.hh index e7700dc340..eda1603ff3 100644 --- a/source/run/include/G4WorkerRunManager.hh +++ b/source/run/include/G4WorkerRunManager.hh @@ -46,6 +46,9 @@ class G4WorkerRunManagerKernel; class G4WorkerRunManager : public G4RunManager { + public: + using ProfilerConfig = G4ProfilerConfig; + public: static G4WorkerRunManager* GetWorkerRunManager(); static G4WorkerRunManagerKernel* GetWorkerRunManagerKernel(); @@ -76,6 +79,8 @@ class G4WorkerRunManager : public G4RunManager protected: virtual void ConstructScoringWorlds(); virtual void StoreRNGStatus(const G4String& filenamePrefix); + virtual void rndmSaveThisRun(); + virtual void rndmSaveThisEvent(); virtual void MergePartialResults(); // This method will merge (reduce) the results of this run into the // global run @@ -115,6 +120,9 @@ class G4WorkerRunManager : public G4RunManager G4SeedsQueue seedsQueue; G4bool readStatusFromFile; + private: + std::unique_ptr workerRunProfiler; + public: virtual void RestoreRndmEachEvent(G4bool flag) { readStatusFromFile = flag; } }; diff --git a/source/run/include/rundefs.hh b/source/run/include/rundefs.hh index 1c929e0ab9..d9c2f43141 100644 --- a/source/run/include/rundefs.hh +++ b/source/run/include/rundefs.hh @@ -47,4 +47,14 @@ # define G4RUN_DLL #endif +#if defined(WIN32) && defined(G4LIB_BUILD_DLL) +# if defined G4RUN_ALLOC_EXPORT +# define G4MTRUN_DLL __declspec(dllexport) +# else +# define G4MTRUN_DLL __declspec(dllimport) +# endif +#else +# define G4MTRUN_DLL +#endif + #endif /* G4RUNDEFS_HH */ diff --git a/source/run/sources.cmake b/source/run/sources.cmake index 9c644f1fd6..1e8171324d 100644 --- a/source/run/sources.cmake +++ b/source/run/sources.cmake @@ -16,12 +16,12 @@ geant4_define_module(NAME G4run G4MatScanMessenger.hh G4MaterialScanner.hh G4PhysicsListHelper.hh - G4PhysicsListOrderingParameter.hh + G4PhysicsListOrderingParameter.hh G4PhysicsListWorkspace.hh G4Run.hh G4RunManager.hh - G4MTRunManager.hh - G4WorkerRunManager.hh + G4MTRunManager.hh + G4WorkerRunManager.hh G4RunManagerKernel.hh G4MTRunManagerKernel.hh G4WorkerRunManagerKernel.hh @@ -42,7 +42,7 @@ geant4_define_module(NAME G4run G4WorkerThread.hh G4VUPLSplitter.hh rundefs.hh - G4RNGHelper.hh + G4RNGHelper.hh G4PhysicsBuilderInterface.hh SOURCES G4AdjointPrimaryGeneratorAction.cc @@ -52,13 +52,13 @@ geant4_define_module(NAME G4run G4MSSteppingAction.cc G4MatScanMessenger.cc G4MaterialScanner.cc - G4PhysicsListHelper.cc - G4PhysicsListOrderingParamater.cc + G4PhysicsListHelper.cc + G4PhysicsListOrderingParamater.cc G4PhysicsListWorkspace.cc G4Run.cc G4RunManager.cc - G4MTRunManager.cc - G4WorkerRunManager.cc + G4MTRunManager.cc + G4WorkerRunManager.cc G4RunManagerKernel.cc G4MTRunManagerKernel.cc G4WorkerRunManagerKernel.cc @@ -76,7 +76,7 @@ geant4_define_module(NAME G4run G4VPhysicsConstructor.cc G4VUserPhysicsList.cc G4VUserPrimaryGeneratorAction.cc - G4WorkerThread.cc + G4WorkerThread.cc G4RNGHelper.cc GRANULAR_DEPENDENCIES G4cuts @@ -122,3 +122,6 @@ geant4_define_module(NAME G4run ) # List any source specific properties here +if(GEANT4_BUILD_BUILTIN_BACKTRACE) + geant4_module_compile_definitions(G4run PRIVATE G4BT_DEBUG) +endif() diff --git a/source/run/src/G4MTRunManager.cc b/source/run/src/G4MTRunManager.cc index e7befd4e46..cf05ddf58c 100644 --- a/source/run/src/G4MTRunManager.cc +++ b/source/run/src/G4MTRunManager.cc @@ -137,7 +137,7 @@ G4MTRunManager::G4MTRunManager() G4ExceptionDescription msg1; msg1 << "There are " << numberOfStaticAllocators << " static G4Allocator objects detected.\n" - << "In multi-threaded mode, all G4Allocator objects must be dynamicly " + << "In multi-threaded mode, all G4Allocator objects must be dynamically " "instantiated."; G4Exception("G4MTRunManager::G4MTRunManager", "Run1035", FatalException, msg1); @@ -209,6 +209,41 @@ void G4MTRunManager::StoreRNGStatus(const G4String& fn) G4Random::saveEngineStatus(os.str().c_str()); } +void G4MTRunManager::rndmSaveThisRun() +{ + G4int runNumber = 0; + if(currentRun) runNumber = currentRun->GetRunID(); + if(!storeRandomNumberStatus) + { + G4cerr << "Warning from G4RunManager::rndmSaveThisRun():" + << " Random number status was not stored prior to this run." + << G4endl << "/random/setSavingFlag command must be issued. " + << "Command ignored." << G4endl; + return; + } + + G4String fileIn = randomNumberStatusDir + "G4Worker_currentRun.rndm"; + + std::ostringstream os; + os << "run" << runNumber << ".rndm" << '\0'; + G4String fileOut = randomNumberStatusDir + os.str(); + +#ifdef WIN32 + G4String copCmd = "/control/shell copy " + fileIn + " " + fileOut; +#else + G4String copCmd = "/control/shell cp " + fileIn + " " + fileOut; +#endif + G4UImanager::GetUIpointer()->ApplyCommand(copCmd); + if(verboseLevel > 0) + { G4cout << fileIn << " is copied to " << fileOut << G4endl; } +} + +void G4MTRunManager::rndmSaveThisEvent() +{ + G4Exception("G4MTRunManager::rndmSaveThisEvent","RUN_RNDM001", + FatalException,"This method shall not be invoked !!"); +} + void G4MTRunManager::SetNumberOfThreads(G4int n) { if(threads.size() != 0) @@ -284,6 +319,22 @@ void G4MTRunManager::CreateAndStartWorkers() // number of threads: threads area created once if(threads.size() == 0) { + { + // for consistency with G4TaskRunManager + std::stringstream msg; + msg << "--> G4MTRunManager::CreateAndStartWorkers() --> " + << "Initializing workers..."; + + std::stringstream ss; + ss.fill('='); + ss << std::setw(msg.str().length()) << ""; + G4cout << "\n" + << ss.str() << "\n" + << msg.str() << "\n" + << ss.str() << "\n" + << G4endl; + } + for(G4int nw = 0; nw < nworkers; ++nw) { // Create a new worker and remember it @@ -302,7 +353,6 @@ void G4MTRunManager::CreateAndStartWorkers() void G4MTRunManager::InitializeEventLoop(G4int n_event, const char* macroFile, G4int n_select) { - TIMEMORY_AUTO_TIMER(""); MTkernel->SetUpDecayChannels(); numberOfEventToBeProcessed = n_event; numberOfEventProcessed = 0; @@ -617,6 +667,8 @@ void G4MTRunManager::TerminateWorkers() RequestWorkersProcessCommandsStack(); // Ask workers to exit NewActionRequest(WorkerActionRequest::ENDWORKER); + // finalize profiler before shutting down the threads + G4Profiler::Finalize(); // Now join threads. #ifdef G4MULTITHREADED // protect here to prevent warning in compilation while(!threads.empty()) diff --git a/source/run/src/G4PhysicsListHelper.cc b/source/run/src/G4PhysicsListHelper.cc index 0afb3fd945..be4d059f8e 100644 --- a/source/run/src/G4PhysicsListHelper.cc +++ b/source/run/src/G4PhysicsListHelper.cc @@ -330,7 +330,7 @@ void G4PhysicsListHelper::ReadOrdingParameterTable() } #endif G4Exception("G4PhysicsListHelper::ReadOrdingParameterTable", "Run0105", - JustWarning, "Fail to open ordering paramter table "); + JustWarning, "Fail to open ordering parameter table "); } else { @@ -540,7 +540,7 @@ G4bool G4PhysicsListHelper::RegisterProcess(G4VProcess* process, G4cout << "G4PhysicsListHelper::RegisterProcess :" << pName << " for " << particle->GetParticleName() << " with type/subtype =" << pType << "/" << pSubType - << " is not reigstered in OrdingParameterTable " << G4endl; + << " is not registered in OrdingParameterTable " << G4endl; } #endif G4Exception("G4PhysicsListHelper::RegisterProcess", "Run0109", @@ -629,7 +629,7 @@ G4bool G4PhysicsListHelper::RegisterProcess(G4VProcess* process, G4cout << "G4PhysicsListHelper::RegisterProcess :" << pName << " for " << particle->GetParticleName() << " with type/subtype =" << pType << "/" << pSubType - << " is sucessfully registered with ordering parameters " << ord[0] + << " is successfully registered with ordering parameters " << ord[0] << ":" << ord[1] << ":" << ord[2] << G4endl; } #endif diff --git a/source/run/src/G4RunManager.cc b/source/run/src/G4RunManager.cc index 7410e9066e..c69908f5f3 100644 --- a/source/run/src/G4RunManager.cc +++ b/source/run/src/G4RunManager.cc @@ -61,6 +61,8 @@ #include "G4VVisManager.hh" #include "G4ios.hh" #include "Randomize.hh" +#include "G4TiMemory.hh" +#include "G4Profiler.hh" #include using namespace CLHEP; @@ -230,10 +232,13 @@ G4RunManager::G4RunManager(RMType rmType) G4Random::saveFullState(oss); randomNumberStatusForThisRun = oss.str(); randomNumberStatusForThisEvent = oss.str(); + ConfigureProfilers(); } G4RunManager::~G4RunManager() { + // finalize profiler before shutting down the threads + G4Profiler::Finalize(); G4StateManager* pStateManager = G4StateManager::GetStateManager(); // set the application state to the quite state if(pStateManager->GetCurrentState() != G4State_Quit) @@ -320,7 +325,6 @@ void G4RunManager::DeleteUserInitializations() void G4RunManager::BeamOn(G4int n_event, const char* macroFile, G4int n_select) { - TIMEMORY_AUTO_TIMER(""); if(n_event <= 0) { fakeRun = true; @@ -381,7 +385,6 @@ void G4RunManager::RunInitialization() if(!(kernel->RunInitialization(fakeRun))) return; - TIMEMORY_AUTO_TIMER(""); runAborted = false; numberOfEventProcessed = 0; @@ -435,6 +438,10 @@ void G4RunManager::RunInitialization() if(userRunAction) userRunAction->BeginOfRunAction(currentRun); +#if defined(GEANT4_USE_TIMEMORY) + masterRunProfiler.reset(new ProfilerConfig(currentRun)); +#endif + if(isScoreNtupleWriter) { G4VScoreNtupleWriter::Instance()->OpenFile(); @@ -456,7 +463,6 @@ void G4RunManager::RunInitialization() void G4RunManager::DoEventLoop(G4int n_event, const char* macroFile, G4int n_select) { - TIMEMORY_AUTO_TIMER(""); InitializeEventLoop(n_event, macroFile, n_select); // Event loop @@ -500,7 +506,6 @@ void G4RunManager::InitializeEventLoop(G4int n_event, const char* macroFile, void G4RunManager::ProcessOneEvent(G4int i_event) { - TIMEMORY_AUTO_TIMER(""); currentEvent = GenerateEvent(i_event); eventManager->ProcessOneEvent(currentEvent); AnalyzeEvent(currentEvent); @@ -511,7 +516,6 @@ void G4RunManager::ProcessOneEvent(G4int i_event) void G4RunManager::TerminateOneEvent() { - TIMEMORY_AUTO_TIMER(""); StackPreviousEvent(currentEvent); currentEvent = 0; numberOfEventProcessed++; @@ -543,7 +547,6 @@ void G4RunManager::TerminateEventLoop() G4Event* G4RunManager::GenerateEvent(G4int i_event) { - TIMEMORY_AUTO_TIMER(""); if(!userPrimaryGeneratorAction) { G4Exception("G4RunManager::GenerateEvent()", "Run0032", FatalException, @@ -584,7 +587,6 @@ G4Event* G4RunManager::GenerateEvent(G4int i_event) void G4RunManager::StoreRNGStatus(const G4String& fnpref) { - TIMEMORY_AUTO_TIMER(""); G4String fileN = randomNumberStatusDir + fnpref + ".rndm"; G4Random::saveEngineStatus(fileN); } @@ -602,17 +604,25 @@ void G4RunManager::RunTermination() { if(!fakeRun) { +#if defined(GEANT4_USE_TIMEMORY) + masterRunProfiler.reset(); +#endif CleanUpUnnecessaryEvents(0); - if(userRunAction) - userRunAction->EndOfRunAction(currentRun); - G4VPersistencyManager* fPersM = - G4VPersistencyManager::GetPersistencyManager(); - if(fPersM) - fPersM->Store(currentRun); - // write & close analysis output - if(isScoreNtupleWriter) + // tasking occasionally will call this function even + // if there was not a current run + if(currentRun) { - G4VScoreNtupleWriter::Instance()->Write(); + if(userRunAction) + userRunAction->EndOfRunAction(currentRun); + G4VPersistencyManager* fPersM = + G4VPersistencyManager::GetPersistencyManager(); + if(fPersM) + fPersM->Store(currentRun); + // write & close analysis output + if(isScoreNtupleWriter) + { + G4VScoreNtupleWriter::Instance()->Write(); + } } runIDCounter++; } @@ -824,13 +834,13 @@ void G4RunManager::DefineWorldVolume(G4VPhysicalVolume* worldVol, void G4RunManager::rndmSaveThisRun() { G4int runNumber = 0; - if(currentRun) - runNumber = currentRun->GetRunID(); + if(currentRun) runNumber = currentRun->GetRunID(); if(!storeRandomNumberStatus) { G4cerr << "Warning from G4RunManager::rndmSaveThisRun():" << " Random number status was not stored prior to this run." - << G4endl << "Command ignored." << G4endl; + << G4endl << "/random/setSavingFlag command must be issued. " + << "Command ignored." << G4endl; return; } @@ -840,23 +850,37 @@ void G4RunManager::rndmSaveThisRun() os << "run" << runNumber << ".rndm" << '\0'; G4String fileOut = randomNumberStatusDir + os.str(); +#ifdef WIN32 + G4String copCmd = "/control/shell copy " + fileIn + " " + fileOut; +#else G4String copCmd = "/control/shell cp " + fileIn + " " + fileOut; +#endif G4UImanager::GetUIpointer()->ApplyCommand(copCmd); if(verboseLevel > 0) - G4cout << "currentRun.rndm is copied to file: " << fileOut << G4endl; + { G4cout << fileIn << " is copied to " << fileOut << G4endl; } } void G4RunManager::rndmSaveThisEvent() { - if(!storeRandomNumberStatus || currentEvent == 0) + if(currentEvent == 0) { G4cerr << "Warning from G4RunManager::rndmSaveThisEvent():" - << " there is no currentEvent or its RandomEngineStatus is not available." + << " there is no currentEvent available." << G4endl << "Command ignored." << G4endl; return; } + if(!storeRandomNumberStatus) + { + G4cerr + << "Warning from G4RunManager::rndmSaveThisEvent():" + << " Random number engine status is not available." + << G4endl << "/random/setSavingFlag command must be issued " + << "prior to the start of the run. Command ignored." << G4endl; + return; + } + G4String fileIn = randomNumberStatusDir + "currentEvent.rndm"; std::ostringstream os; @@ -864,10 +888,14 @@ void G4RunManager::rndmSaveThisEvent() << ".rndm" << '\0'; G4String fileOut = randomNumberStatusDir + os.str(); +#ifdef WIN32 + G4String copCmd = "/control/shell copy " + fileIn + " " + fileOut; +#else G4String copCmd = "/control/shell cp " + fileIn + " " + fileOut; +#endif G4UImanager::GetUIpointer()->ApplyCommand(copCmd); if(verboseLevel > 0) - G4cout << "currentEvent.rndm is copied to file: " << fileOut << G4endl; + { G4cout << fileIn << " is copied to " << fileOut << G4endl; } } void G4RunManager::RestoreRandomNumberStatus(const G4String& fileN) @@ -924,7 +952,6 @@ void G4RunManager::ConstructScoringWorlds() if(nPar < 1) return; - TIMEMORY_AUTO_TIMER(""); G4ParticleTable::G4PTblDicIterator* theParticleIterator = G4ParticleTable::GetParticleTable()->GetIterator(); for(G4int iw = 0; iw < nPar; iw++) @@ -1002,7 +1029,6 @@ void G4RunManager::UpdateScoring() if(nPar < 1) return; - TIMEMORY_AUTO_TIMER(""); G4HCofThisEvent* HCE = currentEvent->GetHCofThisEvent(); if(!HCE) return; @@ -1201,3 +1227,176 @@ void G4RunManager::ReinitializeGeometry(G4bool destroyFirst, G4bool prop) } } } + +//---------------------------------------------------------------------------// + +void G4RunManager::ConfigureProfilers(int argc, char** argv) +{ + std::vector _args; + for(int i = 0; i < argc; ++i) + _args.push_back(argv[i]); + ConfigureProfilers(_args); +} + +//---------------------------------------------------------------------------// + +void G4RunManager::ConfigureProfilers(const std::vector& args) +{ +#ifdef GEANT4_USE_TIMEMORY + // parse command line if arguments were passed + G4Profiler::Configure(args); +#else + G4ConsumeParameters(args); +#endif +} + +//---------------------------------------------------------------------------// + +#if !defined(GEANT4_USE_TIMEMORY) +# define TIMEMORY_WEAK_PREFIX +# define TIMEMORY_WEAK_POSTFIX +#endif + +//---------------------------------------------------------------------------// + +extern "C" +{ + // this allows the default setup to be overridden by linking + // in an custom extern C function into the application + TIMEMORY_WEAK_PREFIX + void G4RunProfilerInit(void) TIMEMORY_WEAK_POSTFIX; + + extern void G4ProfilerInit(void); + + // this gets executed when the library gets loaded + void G4RunProfilerInit(void) + { +#ifdef GEANT4_USE_TIMEMORY + G4ProfilerInit(); + + // guard against re-initialization + static bool _once = false; + if(_once) + return; + _once = true; + + puts(">>> G4RunProfilerInit <<<"); + + using RunProfilerConfig = G4ProfilerConfig; + using EventProfilerConfig = G4ProfilerConfig; + using TrackProfilerConfig = G4ProfilerConfig; + using StepProfilerConfig = G4ProfilerConfig; + using UserProfilerConfig = G4ProfilerConfig; + + // + // these are the default functions for evaluating whether + // to start profiling + // + RunProfilerConfig::GetFallbackQueryFunctor() = [](const G4Run* _run) { + return G4Profiler::GetEnabled(G4ProfileType::Run) && _run; + }; + + EventProfilerConfig::GetFallbackQueryFunctor() = [](const G4Event* _event) { + return G4Profiler::GetEnabled(G4ProfileType::Event) && _event; + }; + + TrackProfilerConfig::GetFallbackQueryFunctor() = [](const G4Track* _track) { + return G4Profiler::GetEnabled(G4ProfileType::Track) && _track && + _track->GetDynamicParticle(); + }; + + StepProfilerConfig::GetFallbackQueryFunctor() = [](const G4Step* _step) { + return G4Profiler::GetEnabled(G4ProfileType::Step) && _step && + _step->GetTrack(); + }; + + UserProfilerConfig::GetFallbackQueryFunctor() = + [](const std::string& _user) { + return G4Profiler::GetEnabled(G4ProfileType::User) && !_user.empty(); + }; + + // + // these are the default functions which encode the profiling label. + // Will not be called unless the query returned true + // + RunProfilerConfig::GetFallbackLabelFunctor() = [](const G4Run* _run) { + return TIMEMORY_JOIN('/', "G4Run", _run->GetRunID()); + }; + + EventProfilerConfig::GetFallbackLabelFunctor() = + [](const G4Event* _event) -> std::string { + if(G4Profiler::GetPerEvent()) + return TIMEMORY_JOIN('/', "G4Event", _event->GetEventID()); + else + return "G4Event"; + }; + + TrackProfilerConfig::GetFallbackLabelFunctor() = [](const G4Track* _track) { + auto pdef = _track->GetDynamicParticle()->GetParticleDefinition(); + return TIMEMORY_JOIN('/', "G4Track", pdef->GetParticleName()); + }; + + StepProfilerConfig::GetFallbackLabelFunctor() = [](const G4Step* _step) { + auto pdef = _step->GetTrack()->GetParticleDefinition(); + return TIMEMORY_JOIN('/', "G4Step", pdef->GetParticleName()); + }; + + UserProfilerConfig::GetFallbackLabelFunctor() = + [](const std::string& _user) { return _user; }; + + using RunTool = typename RunProfilerConfig::type; + using EventTool = typename EventProfilerConfig::type; + using TrackTool = typename TrackProfilerConfig::type; + using StepTool = typename StepProfilerConfig::type; + using UserTool = typename UserProfilerConfig::type; + + RunProfilerConfig::GetFallbackToolFunctor() = + [](const std::string& _label) { return new RunTool{ _label }; }; + + EventProfilerConfig::GetFallbackToolFunctor() = + [](const std::string& _label) { return new EventTool{ _label }; }; + + TrackProfilerConfig::GetFallbackToolFunctor() = + [](const std::string& _label) { + return new TrackTool(_label, tim::scope::config(tim::scope::flat{})); + }; + + StepProfilerConfig::GetFallbackToolFunctor() = + [](const std::string& _label) { + return new StepTool(_label, tim::scope::config(tim::scope::flat{})); + }; + + UserProfilerConfig::GetFallbackToolFunctor() = + [](const std::string& _label) { return new UserTool(_label); }; + + auto comps = "wall_clock, cpu_clock, cpu_util, peak_rss"; + auto run_env_comps = + tim::get_env("G4PROFILE_RUN_COMPONENTS", comps); + auto event_env_comps = + tim::get_env("G4PROFILE_EVENT_COMPONENTS", comps); + auto track_env_comps = + tim::get_env("G4PROFILE_TRACK_COMPONENTS", comps); + auto step_env_comps = + tim::get_env("G4PROFILE_STEP_COMPONENTS", comps); + auto user_env_comps = + tim::get_env("G4PROFILE_USER_COMPONENTS", comps); + + tim::configure(run_env_comps); + tim::configure(event_env_comps); + tim::configure(track_env_comps); + tim::configure(step_env_comps); + tim::configure(user_env_comps); +#endif + } +} // extern "C" + +//---------------------------------------------------------------------------// + +#ifdef GEANT4_USE_TIMEMORY +namespace +{ + static bool profiler_is_initialized = (G4RunProfilerInit(), true); +} +#endif + +//---------------------------------------------------------------------------// diff --git a/source/run/src/G4RunManagerKernel.cc b/source/run/src/G4RunManagerKernel.cc index baa212170f..edfea73c95 100644 --- a/source/run/src/G4RunManagerKernel.cc +++ b/source/run/src/G4RunManagerKernel.cc @@ -64,6 +64,10 @@ #include "G4AutoLock.hh" #include "G4RNGHelper.hh" +#ifdef G4BT_DEBUG +#include "G4Backtrace.hh" +#endif + #ifdef G4FPE_DEBUG # include "G4FPEDetection.hh" #endif @@ -96,6 +100,19 @@ G4RunManagerKernel::G4RunManagerKernel() #ifdef G4FPE_DEBUG InvalidOperationDetection(); #endif + +#ifdef G4BT_DEBUG + auto _signals = G4GetEnv("G4BACKTRACE", ""); + if(_signals.empty()) + { + G4Backtrace::Enable(); + } + else + { + G4Backtrace::Enable(_signals); + } +#endif + G4AllocatorList* allocList = G4AllocatorList::GetAllocatorListIfExist(); if(allocList) numberOfStaticAllocators = allocList->Size(); @@ -197,6 +214,18 @@ G4RunManagerKernel::G4RunManagerKernel(RMKType rmkType) } #endif +#ifdef G4BT_DEBUG + auto _signals = G4GetEnv("G4BACKTRACE", ""); + if(_signals.empty()) + { + G4Backtrace::Enable(); + } + else + { + G4Backtrace::Enable(_signals); + } +#endif + defaultExceptionHandler = new G4ExceptionHandler(); if(fRunManagerKernel) { @@ -760,7 +789,6 @@ void G4RunManagerKernel::InitializePhysics() G4bool G4RunManagerKernel::RunInitialization(G4bool fakeRun) { - TIMEMORY_AUTO_TIMER(""); G4StateManager* stateManager = G4StateManager::GetStateManager(); G4ApplicationState currentState = stateManager->GetCurrentState(); @@ -894,7 +922,6 @@ void G4RunManagerKernel::BuildPhysicsTables(G4bool fakeRun) if(G4ProductionCutsTable::GetProductionCutsTable()->IsModified() || physicsNeedsToBeReBuilt) { - TIMEMORY_AUTO_TIMER(""); #ifdef G4MULTITHREADED if(runManagerKernelType == masterRMK) { diff --git a/source/run/src/G4RunMessenger.cc b/source/run/src/G4RunMessenger.cc index 28749fc9d5..f795157bb1 100644 --- a/source/run/src/G4RunMessenger.cc +++ b/source/run/src/G4RunMessenger.cc @@ -617,7 +617,7 @@ void G4RunMessenger::SetNewValue(G4UIcommand* command, G4String newValue) G4String vl; while(!(vl = next()).isNull()) { - seeds[idx] = (long) (StoI(vl)); + seeds[idx] = StoL(vl); idx++; } if(idx < 2) diff --git a/source/run/src/G4VModularPhysicsList.cc b/source/run/src/G4VModularPhysicsList.cc index 5eaa267f62..2bec947903 100644 --- a/source/run/src/G4VModularPhysicsList.cc +++ b/source/run/src/G4VModularPhysicsList.cc @@ -45,9 +45,6 @@ G4VMPLManager G4VModularPhysicsList::G4VMPLsubInstanceManager; void G4VMPLData::initialize() { physicsVector = new G4PhysConstVectorData(); } -// G4ThreadLocal G4VModularPhysicsList::G4PhysConstVector* -// G4VModularPhysicsList::physicsVector = 0; - G4VModularPhysicsList::G4VModularPhysicsList() : G4VUserPhysicsList() , verboseLevel(0) @@ -177,7 +174,7 @@ void G4VModularPhysicsList::RegisterPhysics(G4VPhysicsConstructor* fPhysics) if(verboseLevel > 1) { G4cout << "G4VModularPhysicsList::RegisterPhysics: " << pName - << "with type : " << pType << " is added" << G4endl; + << " with type : " << pType << " is added" << G4endl; } #endif return; @@ -199,7 +196,7 @@ void G4VModularPhysicsList::RegisterPhysics(G4VPhysicsConstructor* fPhysics) << "a physics with given type already exists " << G4endl; G4cout << " Type = " << pType << " : " << " existing physics is " << (*itr)->GetPhysicsName() << G4endl; - G4cout << pName << " can not be registered " << G4endl; + G4cout << " New " << pName << " can not be registered " << G4endl; } #endif G4String comment = "Duplicate type for "; @@ -237,7 +234,7 @@ void G4VModularPhysicsList::ReplacePhysics(G4VPhysicsConstructor* fPhysics) if(verboseLevel > 0) { G4cout << "G4VModularPhysicsList::ReplacePhysics: " << pName - << "with type : " << pType << " is added" << G4endl; + << " with type : " << pType << " is added" << G4endl; } #endif return; @@ -262,8 +259,8 @@ void G4VModularPhysicsList::ReplacePhysics(G4VPhysicsConstructor* fPhysics) if(verboseLevel > 0) { G4cout << "G4VModularPhysicsList::ReplacePhysics: " - << (*itr)->GetPhysicsName() << "with type : " << pType - << " is replaces with " << pName << G4endl; + << (*itr)->GetPhysicsName() << " with type : " << pType + << " is replaced with " << pName << G4endl; } #endif @@ -296,7 +293,7 @@ void G4VModularPhysicsList::RemovePhysics(G4int pType) if(verboseLevel > 0) { G4cout << "G4VModularPhysicsList::RemovePhysics: " << pName - << " is removed" << G4endl; + << " is removed" << G4endl; } #endif G4MT_physicsVector->erase(itr); @@ -329,7 +326,7 @@ void G4VModularPhysicsList::RemovePhysics(G4VPhysicsConstructor* fPhysics) if(verboseLevel > 0) { G4cout << "G4VModularPhysicsList::RemovePhysics: " << pName - << " is removed" << G4endl; + << " is removed" << G4endl; } #endif G4MT_physicsVector->erase(itr); @@ -361,7 +358,7 @@ void G4VModularPhysicsList::RemovePhysics(const G4String& name) if(verboseLevel > 0) { G4cout << "G4VModularPhysicsList::RemovePhysics: " << pName - << " is removed" << G4endl; + << " is removed" << G4endl; } #endif G4MT_physicsVector->erase(itr); diff --git a/source/run/src/G4WorkerRunManager.cc b/source/run/src/G4WorkerRunManager.cc index 187e34ca0b..cf6cbe3cf4 100644 --- a/source/run/src/G4WorkerRunManager.cc +++ b/source/run/src/G4WorkerRunManager.cc @@ -174,7 +174,6 @@ void G4WorkerRunManager::InitializeGeometry() void G4WorkerRunManager::RunInitialization() { - TIMEMORY_AUTO_TIMER(""); #ifdef G4MULTITHREADED if(!visIsSetUp) { @@ -250,6 +249,10 @@ void G4WorkerRunManager::RunInitialization() if(userRunAction) userRunAction->BeginOfRunAction(currentRun); +#if defined(GEANT4_USE_TIMEMORY) + workerRunProfiler.reset(new ProfilerConfig(currentRun)); +#endif + if(isScoreNtupleWriter) { G4VScoreNtupleWriter::Instance()->OpenFile(); @@ -274,7 +277,6 @@ void G4WorkerRunManager::RunInitialization() void G4WorkerRunManager::DoEventLoop(G4int n_event, const char* macroFile, G4int n_select) { - TIMEMORY_AUTO_TIMER(""); if(!userPrimaryGeneratorAction) { G4Exception("G4RunManager::GenerateEvent()", "Run0032", FatalException, @@ -324,7 +326,6 @@ void G4WorkerRunManager::DoEventLoop(G4int n_event, const char* macroFile, void G4WorkerRunManager::ProcessOneEvent(G4int i_event) { - TIMEMORY_AUTO_TIMER(""); currentEvent = GenerateEvent(i_event); if(eventLoopOnGoing) { @@ -338,7 +339,6 @@ void G4WorkerRunManager::ProcessOneEvent(G4int i_event) G4Event* G4WorkerRunManager::GenerateEvent(G4int i_event) { - TIMEMORY_AUTO_TIMER(""); G4Event* anEvent = new G4Event(i_event); long s1 = 0; long s2 = 0; @@ -487,6 +487,9 @@ void G4WorkerRunManager::RunTermination() { if(!fakeRun) { +#if defined(GEANT4_USE_TIMEMORY) + workerRunProfiler.reset(); +#endif MergePartialResults(); // Call a user hook: note this is before the next barrier @@ -725,9 +728,81 @@ void G4WorkerRunManager::StoreRNGStatus(const G4String& fn) G4Random::saveEngineStatus(os.str().c_str()); } +void G4WorkerRunManager::rndmSaveThisRun() +{ + G4int runNumber = 0; + if(currentRun) runNumber = currentRun->GetRunID(); + if(!storeRandomNumberStatus) + { + G4cerr << "Warning from G4RunManager::rndmSaveThisRun():" + << " Random number status was not stored prior to this run." + << G4endl << "/random/setSavingFlag command must be issued. " + << "Command ignored." << G4endl; + return; + } + + std::ostringstream oos; + oos << "G4Worker" << workerContext->GetThreadId() + << "_" << "currentRun.rndm" << "\0"; + G4String fileIn = randomNumberStatusDir + oos.str(); + + std::ostringstream os; + os << "run" << runNumber << ".rndm" << '\0'; + G4String fileOut = randomNumberStatusDir + os.str(); + +#ifdef WIN32 + G4String copCmd = "/control/shell copy " + fileIn + " " + fileOut; +#else + G4String copCmd = "/control/shell cp " + fileIn + " " + fileOut; +#endif + G4UImanager::GetUIpointer()->ApplyCommand(copCmd); + if(verboseLevel > 0) + { G4cout << fileIn << " is copied to " << fileOut << G4endl; } +} + +void G4WorkerRunManager::rndmSaveThisEvent() +{ + if(currentEvent == 0) + { + G4cerr + << "Warning from G4RunManager::rndmSaveThisEvent():" + << " there is no currentEvent available." + << G4endl << "Command ignored." << G4endl; + return; + } + + if(!storeRandomNumberStatus) + { + G4cerr + << "Warning from G4RunManager::rndmSaveThisEvent():" + << " Random number engine status is not available." + << G4endl << "/random/setSavingFlag command must be issued " + << "prior to the start of the run. Command ignored." << G4endl; + return; + } + + std::ostringstream oos; + oos << "G4Worker" << workerContext->GetThreadId() + << "_" << "currentEvent.rndm" << "\0"; + G4String fileIn = randomNumberStatusDir + oos.str(); + + std::ostringstream os; + os << "run" << currentRun->GetRunID() << "evt" << currentEvent->GetEventID() + << ".rndm" << '\0'; + G4String fileOut = randomNumberStatusDir + os.str(); + +#ifdef WIN32 + G4String copCmd = "/control/shell copy " + fileIn + " " + fileOut; +#else + G4String copCmd = "/control/shell cp " + fileIn + " " + fileOut; +#endif + G4UImanager::GetUIpointer()->ApplyCommand(copCmd); + if(verboseLevel > 0) + { G4cout << fileIn << " is copied to " << fileOut << G4endl; } +} + void G4WorkerRunManager::DoWork() { - TIMEMORY_AUTO_TIMER(""); G4MTRunManager* mrm = G4MTRunManager::GetMasterRunManager(); G4MTRunManager::WorkerActionRequest nextAction = mrm->ThisWorkerWaitForNextAction(); diff --git a/source/tasking/.README.txt b/source/tasking/.README.txt deleted file mode 100644 index 1448fd7628..0000000000 --- a/source/tasking/.README.txt +++ /dev/null @@ -1,358 +0,0 @@ -\hypertarget{geant4-tasking}{% -\section{Geant4 Tasking}\label{geant4-tasking}} - -This directory contains a Geant4 run manager which uses a tasking system -for the G4Event loop. This tasking system is fully compatible with TBB -if \texttt{GEANT4\_USE\_TBB=ON} is specified when configuring CMake. The -default behavior, however, is to submit the tasks to an internal -thread-pool and task-queue. - -\hypertarget{g4taskrunmanager}{% -\subsection{G4TaskRunManager}\label{g4taskrunmanager}} - -\texttt{G4TaskRunManager} multiply inherits from \texttt{G4MTRunManager} -and \texttt{PTL::TaskRunManager}. \texttt{PTL::TaskRunManager} holds the -thread-pool instance, the size of the thread-pool, and the default -task-queue. The constructor of \texttt{G4TaskRunManager} takes a -\texttt{G4VUserTaskQueue} pointer (can be nullptr), a boolean for -whether to use TBB if available, and a grainsize. - -\hypertarget{concepts}{% -\subsubsection{Concepts}\label{concepts}} - -\hypertarget{grainsize}{% -\paragraph{Grainsize}\label{grainsize}} - -\begin{quote} -Environment Variable: \texttt{G4FORCE\_GRAINSIZE=N} -\end{quote} - -The grainsize is essentially the number of tasks. If set to 0, the -default grainsize will be \texttt{poolSize} and each thread will get -\texttt{numEvents\ /\ poolSize} events. If the grainsize is set to 1, -then \emph{all the events} will be submitted as one task (i.e.~be -processed serially by one thread in the pool). If the grainsize is set -to 50 and there are 500 events, then 50 tasks of 10 events will be -submitted. - -\hypertarget{events-per-tasks}{% -\paragraph{Events Per Tasks}\label{events-per-tasks}} - -\begin{quote} -Environment Variable: \texttt{G4FORCE\_EVENTS\_PER\_TASK=N} -\end{quote} - -Sometimes is easier to specify the number of events in a task instead of -the grainsize. If the events-per-task is set to 10 and there are 500 -events, then 50 tasks of 10 events will be submitted. - -\hypertarget{default-constructor}{% -\subsubsection{Default Constructor}\label{default-constructor}} - -\begin{Shaded} -\begin{Highlighting}[] -\NormalTok{ G4TaskRunManager(G4VUserTaskQueue* = }\KeywordTok{nullptr}\NormalTok{, }\DataTypeTok{bool}\NormalTok{ useTBB = }\KeywordTok{false}\NormalTok{, G4int grainsize = }\DecValTok{0}\NormalTok{);} -\end{Highlighting} -\end{Shaded} - -\hypertarget{g4runmanagercreator}{% -\subsection{G4RunManagerCreator}\label{g4runmanagercreator}} - -An enumeration \texttt{G4RunManagerType} and a function -\texttt{G4RunManagerCreator::CreateRunManager(...)} was added to -\texttt{"G4RunManagerCreator.hh"} to simplify the selection of the -various run managers. The first parameter is either one of the -enumerated \texttt{G4RunManagerType} or a string identifier - -\begin{longtable}[]{@{}lll@{}} -\toprule -Enumeration & String ID & Class\tabularnewline -\midrule -\endhead -\texttt{G4RunManagerType::Serial} & \texttt{"Serial"} & -\texttt{G4RunManager}\tabularnewline -\texttt{G4RunManagerType::MT} & \texttt{"MT"} & -\texttt{G4MTRunManager}\tabularnewline -\texttt{G4RunManagerType::Tasking} & \texttt{"Tasking"} & -\texttt{G4TaskRunManager}\tabularnewline -\texttt{G4RunManagerType::TBB} & \texttt{"TBB"} & -\texttt{G4TaskRunManager}\tabularnewline -\texttt{G4RunManagerType::Default} & \texttt{"Default"} & Environment -setting\tabularnewline -\bottomrule -\end{longtable} - -The \texttt{Default} enumeration value will defer to the following -environment variable \texttt{G4RUN\_MANAGER\_TYPE} if specified and will -default to \texttt{"Tasking"} if MT is supported and serial if MT is not -supported. If the \texttt{G4FORCE\_RUN\_MANAGER\_TYPE} environment -variable is set, this variable will override the value passed to the -\texttt{CreateRunManager} function. - -\begin{longtable}[]{@{}lll@{}} -\toprule -\begin{minipage}[b]{0.16\columnwidth}\raggedright -Environment Variable\strut -\end{minipage} & \begin{minipage}[b]{0.24\columnwidth}\raggedright -Options\strut -\end{minipage} & \begin{minipage}[b]{0.52\columnwidth}\raggedright -Description\strut -\end{minipage}\tabularnewline -\midrule -\endhead -\begin{minipage}[t]{0.16\columnwidth}\raggedright -\texttt{G4RUN\_MANAGER\_TYPE}\strut -\end{minipage} & \begin{minipage}[t]{0.24\columnwidth}\raggedright -\texttt{"Serial"}, \texttt{"MT"}, \texttt{"Tasking"}, -\texttt{"TBB"}\strut -\end{minipage} & \begin{minipage}[t]{0.52\columnwidth}\raggedright -Only applicable when \texttt{G4RunManagerType::Default} is used\strut -\end{minipage}\tabularnewline -\begin{minipage}[t]{0.16\columnwidth}\raggedright -\texttt{G4FORCE\_RUN\_MANAGER\_TYPE}\strut -\end{minipage} & \begin{minipage}[t]{0.24\columnwidth}\raggedright -\texttt{"Serial"}, \texttt{"MT"}, \texttt{"Tasking"}, -\texttt{"TBB"}\strut -\end{minipage} & \begin{minipage}[t]{0.52\columnwidth}\raggedright -Will override explicitly specifed \texttt{G4RunManagerType} and fail if -type is not available\strut -\end{minipage}\tabularnewline -\bottomrule -\end{longtable} - -\hypertarget{creating-the-g4runmanager}{% -\subsection{Creating the G4RunManager}\label{creating-the-g4runmanager}} - -\begin{itemize} -\tightlist -\item - The \texttt{G4RunManagerCreator::CreateRunManager(...)} function takes - either \texttt{G4RunManagerType} enumerated type or string to specify - the desired G4RunManager - - \begin{itemize} - \tightlist - \item - If a string is used, regex matching is used which is - case-insensitive - \item - Returns a \texttt{G4RunManager*} - \item - Various overloads exist which just reorder passing in: - - \begin{itemize} - \tightlist - \item - \texttt{int\ numberOfThreads} - executes - \texttt{G4MTRunManager::SetNumberOfThreads(numberOfThreads)} - before returning if \textgreater{} 0 - - \begin{itemize} - \tightlist - \item - default: \texttt{0} - \end{itemize} - \item - \texttt{bool\ fail\_if\_unavail} - will cause a runtime failure if - requested type is not available with Geant4 build - - \begin{itemize} - \tightlist - \item - default: \texttt{true} - \end{itemize} - \item - \texttt{G4VTaskQueue*} - a task-queue manager - - \begin{itemize} - \tightlist - \item - default: \texttt{nullptr} - \end{itemize} - \end{itemize} - \end{itemize} -\end{itemize} - -\begin{Shaded} -\begin{Highlighting}[] -\PreprocessorTok{\#include }\ImportTok{"G4RunManagerCreator.hh"} - -\DataTypeTok{int}\NormalTok{ main()} -\NormalTok{\{} - \CommentTok{// specify \{Serial, MT, Tasking, TBB\} as the default, can be overridden} - \CommentTok{// with "G4FORCE\_RUN\_MANAGER\_TYPE" env variable} - \KeywordTok{auto}\NormalTok{* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::Serial);} - \KeywordTok{auto}\NormalTok{* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::MT);} - \KeywordTok{auto}\NormalTok{* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::Tasking);} - \KeywordTok{auto}\NormalTok{* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::TBB);} - - \CommentTok{// defer to "G4RUN\_MANAGER\_TYPE" env variable and default to Tasking if} - \CommentTok{// env variable is not set} - \KeywordTok{auto}\NormalTok{* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::Default);} - - \CommentTok{// same as above} - \KeywordTok{auto}\NormalTok{* runmanager = G4RunManagerCreator::CreateRunManager();} -\NormalTok{\}} -\end{Highlighting} -\end{Shaded} - -\hypertarget{using-the-tasking-system}{% -\subsection{Using the Tasking System}\label{using-the-tasking-system}} - -With G4TaskRunManager, Geant4 events will be launched asynchronously as -tasks. These tasks are placed into a queue until one of the thread in -the pool is available to execute the task. Users can take advantage of -this system to load-balance expensive sub-event calculations which might -have previously resulted in serial bottlenecks. For example, if an -application needs to do extensive event analysis on electrons and thread -\#1 ends up with 10x as many of these events, the other threads might -finish their G4Run significantly eariler and be idle while thread \#1 -has a lot of work. Tasking allows these analysis calculations to be -offload back into the queue so that other threads can contribute to -their completion. - -\hypertarget{option-1---submit-directly-to-thread-pool}{% -\subsubsection{Option 1 - Submit Directly to -Thread-Pool}\label{option-1---submit-directly-to-thread-pool}} - -\begin{itemize} -\tightlist -\item - To execute the function \texttt{foo(int,\ double)} asynchronously: -\end{itemize} - -\begin{Shaded} -\begin{Highlighting}[] -\CommentTok{// get the task manager} -\KeywordTok{auto}\NormalTok{* task\_manager = G4TaskRunManager::GetTaskManager();} - -\CommentTok{// submit task to thread{-}pool and receive a future for when the result is need} -\BuiltInTok{std::}\NormalTok{future\textless{}}\DataTypeTok{void}\NormalTok{\textgreater{} \_fvoid = task\_manager{-}\textgreater{}async\textless{}}\DataTypeTok{void}\NormalTok{\textgreater{}(foo, }\DecValTok{1}\NormalTok{, }\FloatTok{1.0}\NormalTok{);} -\BuiltInTok{std::}\NormalTok{future\textless{}}\DataTypeTok{int}\NormalTok{\textgreater{} \_fint = task\_manager{-}\textgreater{}async\textless{}}\DataTypeTok{int}\NormalTok{\textgreater{}(bar, }\FloatTok{1.0}\NormalTok{);} - -\CommentTok{// wait for task to execute} -\NormalTok{\_fvoid.wait();} -\NormalTok{\_fint.wait();} - -\CommentTok{// get the result (if non{-}void)} -\KeywordTok{auto}\NormalTok{ result = \_fint.get();} -\end{Highlighting} -\end{Shaded} - -\hypertarget{option-2---submit-to-task-group}{% -\subsubsection{Option 2 - Submit to -task-group}\label{option-2---submit-to-task-group}} - -\begin{itemize} -\tightlist -\item - Obtain a pointer to the thread-pool instance -\item - Create a \texttt{task\_group\textless{}T\textgreater{}} object where - \texttt{T} is the return type of all the functions in the group - - \begin{itemize} - \tightlist - \item - If \texttt{T} is non-void, you must provide a join functor who - return type and first argument are both references to the joined - type and the second argument is type \texttt{T}, - e.g.~\texttt{task\_group\textless{}int\textgreater{}} can provide a - join functor with \texttt{vector\textless{}int\textgreater{}\&} as - the return type and \texttt{T} as the second argument or - \texttt{int\&} as the return and first argument and \texttt{int} as - the second argument - \item - If \texttt{T} is void, the join functor is optional and can be - treated as a final synchronization operation after all the tasks - have been completed. - \end{itemize} -\end{itemize} - -\begin{quote} -NOTE: The join functor for task-groups are called sequentially on the -thread that is waiting on -\texttt{task\_group\textless{}T\textgreater{}::join()} member function. -\end{quote} - -\hypertarget{global-definitions-for-examples}{% -\paragraph{Global Definitions for -Examples}\label{global-definitions-for-examples}} - -\begin{Shaded} -\begin{Highlighting}[] -\CommentTok{// obtain thread{-}pool instance from task manager} -\AttributeTok{static} \KeywordTok{auto}\NormalTok{* thread\_pool = G4TaskRunManager::GetThreadPool();} - -\CommentTok{// trivial int function which just returns value passed} -\DataTypeTok{int}\NormalTok{ foo(}\DataTypeTok{int}\NormalTok{ v) \{ }\ControlFlowTok{return}\NormalTok{ v; \}} - -\CommentTok{// function which launches CUDA kernel} -\DataTypeTok{void}\NormalTok{ bar(}\DataTypeTok{int}\NormalTok{ v)} -\NormalTok{\{} -\NormalTok{ cuda\_bar\textless{}\textless{}\textless{}}\DecValTok{512}\NormalTok{, }\DecValTok{1}\NormalTok{\textgreater{}\textgreater{}\textgreater{}(v);} -\NormalTok{\}} -\end{Highlighting} -\end{Shaded} - -\hypertarget{example-with-non-void-return-types-from-tasks}{% -\paragraph{Example with non-void return types from -tasks}\label{example-with-non-void-return-types-from-tasks}} - -\begin{Shaded} -\begin{Highlighting}[] -\CommentTok{// put all return values from tasks into an array} -\KeywordTok{auto}\NormalTok{ join\_vec = [](}\BuiltInTok{std::}\NormalTok{vector\textless{}}\DataTypeTok{int}\NormalTok{\textgreater{}\& lhs, }\DataTypeTok{int}\NormalTok{ rhs) \{ lhs.push\_back(rhs); }\ControlFlowTok{return}\NormalTok{ lhs; \};} - -\CommentTok{// sum the values returned by tasks} -\KeywordTok{auto}\NormalTok{ sum\_int = [](}\DataTypeTok{int}\NormalTok{\& lhs, }\DataTypeTok{int}\NormalTok{ rhs) \{ }\ControlFlowTok{return}\NormalTok{ lhs += rhs; \};} - -\CommentTok{// task group which applies \textquotesingle{}join\_vec\textquotesingle{} to all task return values} -\NormalTok{task\_group\textless{}}\DataTypeTok{int}\NormalTok{\textgreater{} vec\_tg(join\_vec, thread\_pool);} -\CommentTok{// task group with applies \textquotesingle{}sum\_int\textquotesingle{} to all task return values} -\NormalTok{task\_group\textless{}}\DataTypeTok{int}\NormalTok{\textgreater{} sum\_tg(sum\_int, thread\_pool);} - -\CommentTok{// submit work to task{-}groups} -\NormalTok{vec\_tg.exec(foo, }\DecValTok{1}\NormalTok{);} -\NormalTok{vec\_tg.exec(foo, }\DecValTok{2}\NormalTok{);} -\NormalTok{sum\_tg.exec(foo, }\DecValTok{1}\NormalTok{);} -\NormalTok{sum\_tg.exec(foo, }\DecValTok{2}\NormalTok{);} - -\CommentTok{// produces std::vector\{ 1, 2 \};} -\KeywordTok{auto}\NormalTok{ vec\_result = vec\_tg.join();} - -\CommentTok{// produces 1 + 2 = 3} -\KeywordTok{auto}\NormalTok{ sum\_result = sum\_tg.join();} -\end{Highlighting} -\end{Shaded} - -\hypertarget{example-with-void-return-type-from-tasks}{% -\paragraph{Example with void return type from -tasks}\label{example-with-void-return-type-from-tasks}} - -\begin{Shaded} -\begin{Highlighting}[] -\CommentTok{// wait for the GPU to finish} -\KeywordTok{auto}\NormalTok{ sync = []() \{ cudaDeviceSynchronize(); \};} - -\CommentTok{// task group which applies \textquotesingle{}sync\textquotesingle{} after all tasks have been executed} -\NormalTok{task\_group\textless{}}\DataTypeTok{void}\NormalTok{\textgreater{} gpu\_tg(sync, thread\_pool);} -\CommentTok{// generic task group w/o a join functor} -\NormalTok{task\_group\textless{}}\DataTypeTok{void}\NormalTok{\textgreater{} general\_tg(thread\_pool);} - -\CommentTok{// submit work to task{-}groups} -\NormalTok{gpu\_tg.exec(bar, }\DecValTok{1}\NormalTok{);} -\NormalTok{gpu\_tg.exec(bar, }\DecValTok{2}\NormalTok{);} -\NormalTok{general\_tg.exec(bar, }\DecValTok{1}\NormalTok{);} -\NormalTok{general\_tg.exec(bar, }\DecValTok{2}\NormalTok{);} - -\CommentTok{// \textquotesingle{}sync()\textquotesingle{} will get called after all tasks in group have executed} -\CommentTok{// (i.e. return from \textquotesingle{}bar\textquotesingle{} function). \textquotesingle{}sync\textquotesingle{} will then block until} -\CommentTok{// all GPU work has been completed} -\NormalTok{gpu\_tg.join();} - -\CommentTok{// will block only until all tasks in group have been executed} -\CommentTok{// (i.e. returned from \textquotesingle{}bar\textquotesingle{} function)} -\NormalTok{generic\_tg.join();} -\end{Highlighting} -\end{Shaded} diff --git a/source/tasking/History b/source/tasking/History index e12c129f38..1b7590dd7a 100644 --- a/source/tasking/History +++ b/source/tasking/History @@ -16,6 +16,54 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Nov 12th, 2020 Jonathan Madsen (tasking-V10-06-13) +- Added G4Profiler support +- Removed TIMEMORY_AUTO_TIMER + +Nov 12th, 2020, B. Morgan (tasking-V10-06-12) +- G4RunManagerFactory : simplify logic of choosing type from function + inputs or environment. Provide new "SerialOnly"... entries for G4RunManagerType + to allow users to force use of a specific (but available) type. + +Nov 4th, 2020, M. Asai (tasking-V10-06-11) +- G4TaskRunManager.cc : not resetting the run ID counter for the + run initialization except the first run. + +Oct 28th, 2020, M. Asai (tasking-V10-06-10) +- G4RunManagerFactory : Set default run manager type to MT for + release 10.7. + +Oct 20th, 2020, J. Madsen (tasking-V10-06-09) +- Implemented GetMasterRunManager in G4RunManagerFactory +- Added DoCleanup() for worker task run managers +- Replaced worker DoWork(int) with DoWork() +- Resolved issues with G4Run number of events to be processed +- Resolved issues with G4Run number of events processed + +Sept 23rd, 2020, B. Morgan (tasking-V10-06-08) +- Remove no longer required include_directories + +Sept 21st, 2020 J. Madsen (tasking-V10-06-07) +- Added checks for currentRun before calling routines with currentRun +- updated docs using G4RunManagerCreator instead of G4RunManagerFactory +- G4WorkerTaskRunManager: minor tweaks to ProcessUI +- G4TaskRunManagerKernel: memory cleanup + initCmdStack +- G4TaskRunManager: + - appears to fix previous issues with geometry changes + - inherited scoring-worlds, master-worlds, fMasterRM data from G4MTRunManager + - CreateAndStartWorkers processes command stack on second fakeRun + - cleaned up header + +Sept 12th, 2020, J. Madsen (tasking-V10-06-06) +- Tasking stability fixes +- removed a bunch of excess functions from G4WorkerTaskRunManager +- Got rid of regular task group vs. TBB task group implementation + - this is thanks to the generic execute_on_all_threads function + +July 17th, 2020, I. Hrivnacova (tasking-V10-06-05) +- Adding call to G4VScoreNtupleWriter in G4WorkerTaskRunManager, + which missing was causing a break in B4d basic example. + June 22nd, 2020, G. Cosmo (tasking-V10-06-04) - Fixed recursive inclusion in G4TaskRunManager. diff --git a/source/tasking/README b/source/tasking/README deleted file mode 100644 index 0e0be95ce7..0000000000 --- a/source/tasking/README +++ /dev/null @@ -1,225 +0,0 @@ -Geant4 Tasking - -This directory contains a Geant4 run manager which uses a tasking system -for the G4Event loop. This tasking system is fully compatible with TBB -if GEANT4_USE_TBB=ON is specified when configuring CMake. The default -behavior, however, is to submit the tasks to an internal thread-pool and -task-queue. - -G4TaskRunManager - -G4TaskRunManager multiply inherits from G4MTRunManager and -PTL::TaskRunManager. PTL::TaskRunManager holds the thread-pool instance, -the size of the thread-pool, and the default task-queue. The constructor -of G4TaskRunManager takes a G4VUserTaskQueue pointer (can be nullptr), a -boolean for whether to use TBB if available, and a grainsize. - -Concepts - -Grainsize - - Environment Variable: G4FORCE_GRAINSIZE=N - -The grainsize is essentially the number of tasks. If set to 0, the -default grainsize will be poolSize and each thread will get -numEvents / poolSize events. If the grainsize is set to 1, then all the -events will be submitted as one task (i.e. be processed serially by one -thread in the pool). If the grainsize is set to 50 and there are 500 -events, then 50 tasks of 10 events will be submitted. - -Events Per Tasks - - Environment Variable: G4FORCE_EVENTS_PER_TASK=N - -Sometimes is easier to specify the number of events in a task instead of -the grainsize. If the events-per-task is set to 10 and there are 500 -events, then 50 tasks of 10 events will be submitted. - -Default Constructor - - G4TaskRunManager(G4VUserTaskQueue* = nullptr, bool useTBB = false, G4int grainsize = 0); - -G4RunManagerCreator - -An enumeration G4RunManagerType and a function -G4RunManagerCreator::CreateRunManager(...) was added to -"G4RunManagerCreator.hh" to simplify the selection of the various run -managers. The first parameter is either one of the enumerated -G4RunManagerType or a string identifier - - Enumeration String ID Class - --------------------------- ----------- --------------------- - G4RunManagerType::Serial "Serial" G4RunManager - G4RunManagerType::MT "MT" G4MTRunManager - G4RunManagerType::Tasking "Tasking" G4TaskRunManager - G4RunManagerType::TBB "TBB" G4TaskRunManager - G4RunManagerType::Default "Default" Environment setting - -The Default enumeration value will defer to the following environment -variable G4RUN_MANAGER_TYPE if specified and will default to "Tasking" -if MT is supported and serial if MT is not supported. If the -G4FORCE_RUN_MANAGER_TYPE environment variable is set, this variable will -override the value passed to the CreateRunManager function. - - -------------------------------------------------------------------------------------- - Environment Variable Options Description - -------------------------- ------------------ ---------------------------------------- - G4RUN_MANAGER_TYPE "Serial", "MT", Only applicable when - "Tasking", "TBB" G4RunManagerType::Default is used - - G4FORCE_RUN_MANAGER_TYPE "Serial", "MT", Will override explicitly specifed - "Tasking", "TBB" G4RunManagerType and fail if type is not - available - -------------------------------------------------------------------------------------- - -Creating the G4RunManager - -- The G4RunManagerCreator::CreateRunManager(...) function takes either - G4RunManagerType enumerated type or string to specify the desired - G4RunManager - - If a string is used, regex matching is used which is - case-insensitive - - Returns a G4RunManager* - - Various overloads exist which just reorder passing in: - - int numberOfThreads - executes - G4MTRunManager::SetNumberOfThreads(numberOfThreads) before - returning if > 0 - - default: 0 - - bool fail_if_unavail - will cause a runtime failure if - requested type is not available with Geant4 build - - default: true - - G4VTaskQueue* - a task-queue manager - - default: nullptr - - #include "G4RunManagerCreator.hh" - - int main() - { - // specify {Serial, MT, Tasking, TBB} as the default, can be overridden - // with "G4FORCE_RUN_MANAGER_TYPE" env variable - auto* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::Serial); - auto* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::MT); - auto* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::Tasking); - auto* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::TBB); - - // defer to "G4RUN_MANAGER_TYPE" env variable and default to Tasking if - // env variable is not set - auto* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::Default); - - // same as above - auto* runmanager = G4RunManagerCreator::CreateRunManager(); - } - -Using the Tasking System - -With G4TaskRunManager, Geant4 events will be launched asynchronously as -tasks. These tasks are placed into a queue until one of the thread in -the pool is available to execute the task. Users can take advantage of -this system to load-balance expensive sub-event calculations which might -have previously resulted in serial bottlenecks. For example, if an -application needs to do extensive event analysis on electrons and thread -#1 ends up with 10x as many of these events, the other threads might -finish their G4Run significantly eariler and be idle while thread #1 has -a lot of work. Tasking allows these analysis calculations to be offload -back into the queue so that other threads can contribute to their -completion. - -Option 1 - Submit Directly to Thread-Pool - -- To execute the function foo(int, double) asynchronously: - - // get the task manager - auto* task_manager = G4TaskRunManager::GetTaskManager(); - - // submit task to thread-pool and receive a future for when the result is need - std::future _fvoid = task_manager->async(foo, 1, 1.0); - std::future _fint = task_manager->async(bar, 1.0); - - // wait for task to execute - _fvoid.wait(); - _fint.wait(); - - // get the result (if non-void) - auto result = _fint.get(); - -Option 2 - Submit to task-group - -- Obtain a pointer to the thread-pool instance -- Create a task_group object where T is the return type of all the - functions in the group - - If T is non-void, you must provide a join functor who return - type and first argument are both references to the joined type - and the second argument is type T, e.g. task_group can - provide a join functor with vector& as the return type and - T as the second argument or int& as the return and first - argument and int as the second argument - - If T is void, the join functor is optional and can be treated as - a final synchronization operation after all the tasks have been - completed. - - NOTE: The join functor for task-groups are called sequentially on the - thread that is waiting on task_group::join() member function. - -Global Definitions for Examples - - // obtain thread-pool instance from task manager - static auto* thread_pool = G4TaskRunManager::GetThreadPool(); - - // trivial int function which just returns value passed - int foo(int v) { return v; } - - // function which launches CUDA kernel - void bar(int v) - { - cuda_bar<<<512, 1>>>(v); - } - -Example with non-void return types from tasks - - // put all return values from tasks into an array - auto join_vec = [](std::vector& lhs, int rhs) { lhs.push_back(rhs); return lhs; }; - - // sum the values returned by tasks - auto sum_int = [](int& lhs, int rhs) { return lhs += rhs; }; - - // task group which applies 'join_vec' to all task return values - task_group vec_tg(join_vec, thread_pool); - // task group with applies 'sum_int' to all task return values - task_group sum_tg(sum_int, thread_pool); - - // submit work to task-groups - vec_tg.exec(foo, 1); - vec_tg.exec(foo, 2); - sum_tg.exec(foo, 1); - sum_tg.exec(foo, 2); - - // produces std::vector{ 1, 2 }; - auto vec_result = vec_tg.join(); - - // produces 1 + 2 = 3 - auto sum_result = sum_tg.join(); - -Example with void return type from tasks - - // wait for the GPU to finish - auto sync = []() { cudaDeviceSynchronize(); }; - - // task group which applies 'sync' after all tasks have been executed - task_group gpu_tg(sync, thread_pool); - // generic task group w/o a join functor - task_group general_tg(thread_pool); - - // submit work to task-groups - gpu_tg.exec(bar, 1); - gpu_tg.exec(bar, 2); - general_tg.exec(bar, 1); - general_tg.exec(bar, 2); - - // 'sync()' will get called after all tasks in group have executed - // (i.e. return from 'bar' function). 'sync' will then block until - // all GPU work has been completed - gpu_tg.join(); - - // will block only until all tasks in group have been executed - // (i.e. returned from 'bar' function) - generic_tg.join(); diff --git a/source/tasking/README.md b/source/tasking/README.md index 6412a7b480..e06b9860bc 100644 --- a/source/tasking/README.md +++ b/source/tasking/README.md @@ -38,33 +38,39 @@ then 50 tasks of 10 events will be submitted. G4TaskRunManager(G4VUserTaskQueue* = nullptr, bool useTBB = false, G4int grainsize = 0); ``` -## G4RunManagerCreator +## G4RunManagerFactory -An enumeration `G4RunManagerType` and a function `G4RunManagerCreator::CreateRunManager(...)` -was added to `"G4RunManagerCreator.hh"` to simplify the selection of the various run managers. +An enumeration `G4RunManagerType` and a function `G4RunManagerFactory::CreateRunManager(...)` +was added to `"G4RunManagerFactory.hh"` to simplify the selection of the various run managers. The first parameter is either one of the enumerated `G4RunManagerType` or a string identifier -| Enumeration | String ID | Class | -| --------------------------- | ----------- | ------------------- | -| `G4RunManagerType::Serial` | `"Serial"` | `G4RunManager` | -| `G4RunManagerType::MT` | `"MT"` | `G4MTRunManager` | -| `G4RunManagerType::Tasking` | `"Tasking"` | `G4TaskRunManager` | -| `G4RunManagerType::TBB` | `"TBB"` | `G4TaskRunManager` | -| `G4RunManagerType::Default` | `"Default"` | Environment setting | +| Enumeration | String ID | Class | +| ------------------------------- | ----------- | ------------------- | +| `G4RunManagerType::Serial` | `"Serial"` | `G4RunManager` | +| `G4RunManagerType::MT` | `"MT"` | `G4MTRunManager` | +| `G4RunManagerType::Tasking` | `"Tasking"` | `G4TaskRunManager` | +| `G4RunManagerType::TBB` | `"TBB"` | `G4TaskRunManager` | +| `G4RunManagerType::Default` | `"Default"` | Environment setting | +| `G4RunManagerType::SerialOnly` | `"Serial"` | `G4RunManager` | +| `G4RunManagerType::MTOnly` | `"MT"` | `G4MTRunManager` | +| `G4RunManagerType::TaskingOnly` | `"Tasking"` | `G4TaskRunManager` | +| `G4RunManagerType::TBBOnly` | `"TBB"` | `G4TaskRunManager` | + The `Default` enumeration value will defer to the following environment variable `G4RUN_MANAGER_TYPE` -if specified and will default to `"Tasking"` if MT is supported and serial if MT is not supported. +if specified and will default to `"MT"` if MT is supported and serial if MT is not supported. If the `G4FORCE_RUN_MANAGER_TYPE` environment variable is set, this variable will override the -value passed to the `CreateRunManager` function. +value passed to the `CreateRunManager` function unless `G4RunManagerType` matches one of the `Only` +values. In this case, the environment variable is ignored and the run manager will be ``. | Environment Variable | Options | Description | | -------------------------- | ---------------------------------------- | -------------------------------------------------------------------------------------- | | `G4RUN_MANAGER_TYPE` | `"Serial"`, `"MT"`, `"Tasking"`, `"TBB"` | Only applicable when `G4RunManagerType::Default` is used | -| `G4FORCE_RUN_MANAGER_TYPE` | `"Serial"`, `"MT"`, `"Tasking"`, `"TBB"` | Will override explicitly specifed `G4RunManagerType` and fail if type is not available | +| `G4FORCE_RUN_MANAGER_TYPE` | `"Serial"`, `"MT"`, `"Tasking"`, `"TBB"` | Will override explicitly specifed `G4RunManagerType` if application allows and fail if type is not available | ## Creating the G4RunManager -- The `G4RunManagerCreator::CreateRunManager(...)` function takes either `G4RunManagerType` enumerated type or string to specify the desired G4RunManager +- The `G4RunManagerFactory::CreateRunManager(...)` function takes either `G4RunManagerType` enumerated type or string to specify the desired G4RunManager - If a string is used, regex matching is used which is case-insensitive - Returns a `G4RunManager*` - Various overloads exist which just reorder passing in: @@ -76,23 +82,30 @@ value passed to the `CreateRunManager` function. - default: `nullptr` ```cpp -#include "G4RunManagerCreator.hh" +#include "G4RunManagerFactory.hh" int main() { // specify {Serial, MT, Tasking, TBB} as the default, can be overridden // with "G4FORCE_RUN_MANAGER_TYPE" env variable - auto* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::Serial); - auto* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::MT); - auto* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::Tasking); - auto* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::TBB); + auto* runmanager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::Serial); + auto* runmanager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::MT); + auto* runmanager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::Tasking); + auto* runmanager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::TBB); - // defer to "G4RUN_MANAGER_TYPE" env variable and default to Tasking if + // specify {Serial, MT, Tasking, TBB} as the required type, cannot be overridden + // with "G4FORCE_RUN_MANAGER_TYPE" env variable + auto* runmanager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::SerialOnly); + auto* runmanager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::MTOnly); + auto* runmanager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::TaskingOnly); + auto* runmanager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::TBBOnly); + + // defer to "G4RUN_MANAGER_TYPE" env variable and default to MT if // env variable is not set - auto* runmanager = G4RunManagerCreator::CreateRunManager(G4RunManagerType::Default); + auto* runmanager = G4RunManagerFactory::CreateRunManager(G4RunManagerType::Default); // same as above - auto* runmanager = G4RunManagerCreator::CreateRunManager(); + auto* runmanager = G4RunManagerFactory::CreateRunManager(); } ``` diff --git a/source/tasking/include/G4RunManagerFactory.hh b/source/tasking/include/G4RunManagerFactory.hh index 1879c8c6e3..4ecf5e8db2 100644 --- a/source/tasking/include/G4RunManagerFactory.hh +++ b/source/tasking/include/G4RunManagerFactory.hh @@ -49,10 +49,14 @@ enum class G4RunManagerType : G4int { - Serial = 0, - MT = 1, - Tasking = 2, - TBB = 3, + Serial = 0, + SerialOnly = 1, + MT = 2, + MTOnly = 3, + Tasking = 4, + TaskingOnly = 5, + TBB = 6, + TBBOnly = 7, Default }; @@ -61,7 +65,6 @@ enum class G4RunManagerType : G4int class G4RunManagerFactory { public: - static G4RunManager* CreateRunManager( G4RunManagerType _type = G4RunManagerType::Default, G4VUserTaskQueue* _queue = nullptr, G4bool fail_if_unavail = true, @@ -70,15 +73,14 @@ class G4RunManagerFactory // provide a version which specifies to fail if unavailable static G4RunManager* CreateRunManager(G4RunManagerType _type, G4bool fail_if_unavail, - G4int nthreads = 0, + G4int nthreads = 0, G4VUserTaskQueue* _queue = nullptr) { return CreateRunManager(_type, _queue, fail_if_unavail, nthreads); } - static G4RunManager* CreateRunManager(G4RunManagerType _type, - G4int nthreads, - G4bool fail_if_unavail = true, + static G4RunManager* CreateRunManager(G4RunManagerType _type, G4int nthreads, + G4bool fail_if_unavail = true, G4VUserTaskQueue* _queue = nullptr) { return CreateRunManager(_type, _queue, fail_if_unavail, nthreads); @@ -95,6 +97,9 @@ class G4RunManagerFactory static std::string GetName(G4RunManagerType); static G4RunManagerType GetType(const std::string&); static std::set GetOptions(); + static G4RunManager* GetMasterRunManager(); + static G4MTRunManager* GetMTMasterRunManager(); + static G4RunManagerKernel* GetMasterRunManagerKernel(); }; #endif // G4TaskRunManagerCreator_h diff --git a/source/tasking/include/G4TaskRunManager.hh b/source/tasking/include/G4TaskRunManager.hh index 97bf9229aa..6bef41e2e9 100644 --- a/source/tasking/include/G4TaskRunManager.hh +++ b/source/tasking/include/G4TaskRunManager.hh @@ -47,6 +47,7 @@ #include "G4Threading.hh" #include "G4VUserTaskQueue.hh" #include "G4EnvironmentUtils.hh" +#include "G4Profiler.hh" #include "PTL/TaskRunManager.hh" @@ -58,6 +59,7 @@ class G4ScoringManager; class G4UserTaskInitialization; class G4UserTaskThreadInitialization; class G4WorkerTaskRunManager; +class G4RunManagerFactory; //============================================================================// @@ -65,12 +67,15 @@ class G4TaskRunManager : public G4MTRunManager , public PTL::TaskRunManager { + friend class G4RunManagerFactory; public: + // the profiler aliases are only used when compiled with GEANT4_USE_TIMEMORY + using ProfilerConfig = G4ProfilerConfig; + public: using InitializeSeedsCallback = std::function; - using WorkerRunSet = std::set; - using RunTaskGroup = G4TaskGroup; - using RunTaskGroupTBB = G4TBBTaskGroup; + using RunTaskGroup = G4TaskGroup; + using RunTaskGroupTBB = G4TBBTaskGroup; public: // Parameters: @@ -79,7 +84,7 @@ class G4TaskRunManager // evtGrainsize : the number of events per task G4TaskRunManager(G4bool useTBB = G4GetEnv("G4USE_TBB", false)); G4TaskRunManager(G4VUserTaskQueue* taskQueue, - G4bool useTBB = G4GetEnv("G4USE_TBB", false), + G4bool useTBB = G4GetEnv("G4USE_TBB", false), G4int evtGrainsize = 0); virtual ~G4TaskRunManager(); @@ -154,33 +159,17 @@ class G4TaskRunManager virtual void CreateAndStartWorkers() override; // Creates worker threads and signal to start - private: - // grainsize - G4int eventGrainsize; - G4int numberOfEventsPerTask; - G4int numberOfTasks; - - // List of workers run managers - // List of all workers run managers - CLHEP::HepRandomEngine* masterRNGEngine; - // Pointer to the mastet thread random engine - protected: virtual void TerminateWorkers() override; - private: - // Handling of master thread scoring worlds, access to it is needed by workers - G4TASK_DLL static G4ScoringManager* masterScM; - G4TASK_DLL static masterWorlds_t masterWorlds; - // Singleton implementing master thread behavior - static G4TaskRunManager* fMasterRM; - G4TaskRunManagerKernel* MTkernel; - public: // with description - static G4TaskRunManager* GetMasterRunManager(); + static G4TaskRunManager* GetMasterRunManager() + { + auto* _rm = G4MTRunManager::GetMasterRunManager(); + return dynamic_cast(_rm); + } // Returns the singleton instance of the run manager common to all threads // implementing the master behavior - static G4RunManagerKernel* GetMasterRunManagerKernel(); static G4TaskRunManagerKernel* GetMTMasterRunManagerKernel(); // Returns the singleton instance of the run manager kernel common to all // threads @@ -211,12 +200,10 @@ class G4TaskRunManager { return WorkerActionRequest::UNDEFINED; } - virtual void NewActionRequest(WorkerActionRequest) override {} protected: - // WorkerActionRequest nextActionRequest; - // virtual void NewActionRequest( WorkerActionRequest newRequest ); - virtual void AddEventTask(G4int, G4int); + virtual void NewActionRequest(WorkerActionRequest) override {} + virtual void AddEventTask(G4int); public: inline void SetInitializeSeedsCallback(InitializeSeedsCallback f) @@ -228,13 +215,22 @@ class G4TaskRunManager virtual void AbortRun(G4bool softAbort = false) override; virtual void AbortEvent() override; + private: + // grainsize + bool workersStarted = false; + G4int eventGrainsize = 0; + G4int numberOfEventsPerTask = -1; + G4int numberOfTasks = -1; + CLHEP::HepRandomEngine* masterRNGEngine = nullptr; + // Pointer to the master thread random engine + G4TaskRunManagerKernel* MTkernel = nullptr; + protected: // Barriers: synch points between master and workers - RunTaskGroup* workTaskGroup = nullptr; - RunTaskGroupTBB* workTaskGroupTBB = nullptr; + RunTaskGroup* workTaskGroup = nullptr; // aliases to inherited member values - G4bool& poolInitialized = PTL::TaskRunManager::m_is_initialized; + G4bool& poolInitialized = PTL::TaskRunManager::m_is_initialized; G4ThreadPool*& threadPool = PTL::TaskRunManager::m_thread_pool; G4VUserTaskQueue*& taskQueue = PTL::TaskRunManager::m_task_queue; G4TaskManager*& taskManager = PTL::TaskRunManager::m_task_manager; diff --git a/source/tasking/include/G4TaskRunManagerKernel.hh b/source/tasking/include/G4TaskRunManagerKernel.hh index 038e2ad727..d5071c8238 100644 --- a/source/tasking/include/G4TaskRunManagerKernel.hh +++ b/source/tasking/include/G4TaskRunManagerKernel.hh @@ -72,11 +72,12 @@ class G4TaskRunManagerKernel : public G4RunManagerKernel static G4WorkerThread* GetWorkerThread(); // G4ThreadPool tasks static void InitializeWorker(); - static G4WorkerTaskRunManager** ExecuteWorkerTask(G4int nevts); + static void ExecuteWorkerInit(); + static void ExecuteWorkerTask(); static void TerminateWorkerRunEventLoop(); static void TerminateWorker(); - static void TerminateWorkerRunEventLoop(G4WorkerTaskRunManager**); - static void TerminateWorker(G4WorkerTaskRunManager**); + static void TerminateWorkerRunEventLoop(G4WorkerTaskRunManager*); + static void TerminateWorker(G4WorkerTaskRunManager*); static std::vector& InitCommandStack(); // Fill decay tables with particle definition pointers of diff --git a/source/tasking/include/G4TaskSingletonDelegator.hh b/source/tasking/include/G4TaskSingletonDelegator.hh index e413014746..f40243437c 100644 --- a/source/tasking/include/G4TaskSingletonDelegator.hh +++ b/source/tasking/include/G4TaskSingletonDelegator.hh @@ -45,85 +45,86 @@ namespace G4Traits { -template -struct TaskSingletonKey -{ + template + struct TaskSingletonKey + { using type = G4int; using compare_type = std::less; -}; -} + }; +} // namespace G4Traits -// ------------------------------------------------------------------------------------ // +//----------------------------------------------------------------------------// /// \class G4TaskSingletonEvaluator -/// \brief This structure must be specialized and use overloads to the constructor +/// \brief This structure must be specialized and use overloads to the +/// constructor /// template struct G4TaskSingletonEvaluator; -// ------------------------------------------------------------------------------------ // +//----------------------------------------------------------------------------// template class G4TaskSingletonDelegator; -// ------------------------------------------------------------------------------------ // +//----------------------------------------------------------------------------// template class G4TaskSingletonData { - using key_type = typename G4Traits::TaskSingletonKey::type; - using compare_type = typename G4Traits::TaskSingletonKey::compare_type; + using key_type = typename G4Traits::TaskSingletonKey::type; + using compare_type = typename G4Traits::TaskSingletonKey::compare_type; - friend struct G4TaskSingletonEvaluator; - friend class G4TaskSingletonDelegator; - using this_type = G4TaskSingletonData; + friend struct G4TaskSingletonEvaluator; + friend class G4TaskSingletonDelegator; + using this_type = G4TaskSingletonData; -private: - static std::unique_ptr& GetInstance() - { - static auto _instance = std::unique_ptr(new this_type); - return _instance; - } + private: + static std::unique_ptr& GetInstance() + { + static auto _instance = std::unique_ptr(new this_type); + return _instance; + } -private: - std::map m_data; + private: + std::map m_data; }; -// ------------------------------------------------------------------------------------ // +//----------------------------------------------------------------------------// template struct G4TaskSingletonEvaluator { - using key_type = typename G4Traits::TaskSingletonKey::type; - using data_type = G4TaskSingletonData; + using key_type = typename G4Traits::TaskSingletonKey::type; + using data_type = G4TaskSingletonData; - template - G4TaskSingletonEvaluator(key_type&, Args&&...) - { - throw std::runtime_error("Not specialized!"); - } + template + G4TaskSingletonEvaluator(key_type&, Args&&...) + { + throw std::runtime_error("Not specialized!"); + } }; -// ------------------------------------------------------------------------------------ // +//----------------------------------------------------------------------------// template class G4TaskSingletonDelegator { -public: - using pointer = T*; - using evaluator_type = G4TaskSingletonEvaluator; - using data_type = G4TaskSingletonData; - using key_type = typename G4Traits::TaskSingletonKey; + public: + using pointer = T*; + using evaluator_type = G4TaskSingletonEvaluator; + using data_type = G4TaskSingletonData; + using key_type = typename G4Traits::TaskSingletonKey; - template - static void Configure(Args&&... args) - { - auto& _data = data_type::GetInstance(); - evaluator_type _eval(std::forward(args)...); - auto _ptr = _data->m_data.at(_eval.index); - _eval.modifier(_ptr); - T::SetInstance(_data->m_data.at(_key)); - } + template + static void Configure(Args&&... args) + { + auto& _data = data_type::GetInstance(); + evaluator_type _eval(std::forward(args)...); + auto _ptr = _data->m_data.at(_eval.index); + _eval.modifier(_ptr); + T::SetInstance(_data->m_data.at(_key)); + } }; -// ------------------------------------------------------------------------------------ // +//----------------------------------------------------------------------------// diff --git a/source/tasking/include/G4WorkerTaskRunManager.hh b/source/tasking/include/G4WorkerTaskRunManager.hh index f7d986b888..8035353a59 100644 --- a/source/tasking/include/G4WorkerTaskRunManager.hh +++ b/source/tasking/include/G4WorkerTaskRunManager.hh @@ -47,6 +47,9 @@ class G4WorkerTaskRunManagerKernel; class G4WorkerTaskRunManager : public G4WorkerRunManager { + public: + using ProfilerConfig = G4ProfilerConfig; + public: typedef std::vector G4StrVector; @@ -69,12 +72,9 @@ class G4WorkerTaskRunManager : public G4WorkerRunManager readStatusFromFile = flag; } - virtual void DoBeamOn(G4int evts); - virtual void DoWork(G4int nevts); - virtual void InitializeForNewRun(); - void SetConfirmBeamOn(G4bool val) { fConfirmBeamOn = val; } - G4WorkerThread* GetWorkerThread() const { return workerContext; } + virtual void DoCleanup(); virtual void ProcessUI(); + G4WorkerThread* GetWorkerThread() const { return workerContext; } G4StrVector GetCommandStack() const { return processedCommandStack; } protected: @@ -84,8 +84,10 @@ class G4WorkerTaskRunManager : public G4WorkerRunManager void SetupDefaultRNGEngine(); private: - G4bool fConfirmBeamOn; G4StrVector processedCommandStack; + + private: + std::unique_ptr workerRunProfiler; }; #endif // G4WorkerTaskRunManager_h diff --git a/source/tasking/sources.cmake b/source/tasking/sources.cmake index 37fd31edc2..1a89844eca 100644 --- a/source/tasking/sources.cmake +++ b/source/tasking/sources.cmake @@ -18,7 +18,6 @@ # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4tasking HEADERS G4RunManagerFactory.hh diff --git a/source/tasking/src/G4RunManagerFactory.cc b/source/tasking/src/G4RunManagerFactory.cc index 175c71cfc1..c2d586514e 100644 --- a/source/tasking/src/G4RunManagerFactory.cc +++ b/source/tasking/src/G4RunManagerFactory.cc @@ -30,6 +30,7 @@ #include "G4RunManager.hh" #include "G4MTRunManager.hh" #include "G4TaskRunManager.hh" +#include "G4Threading.hh" #include "templates.hh" //============================================================================// @@ -47,10 +48,14 @@ namespace for(const auto& itr : _opts) ss << ", \"" << itr << "\""; msg << ss.str().substr(2); - auto mnum = std::string("RunManagerCreator000") + std::to_string(_num); + auto mnum = std::string("RunManagerFactory000") + std::to_string(_num); G4Exception("G4RunManagerFactory::CreateRunManager", mnum.c_str(), FatalException, msg); } + + static G4RunManager* master_run_manager = nullptr; + static G4MTRunManager* mt_master_run_manager = nullptr; + static G4RunManagerKernel* master_run_manager_kernel = nullptr; } // namespace //============================================================================// @@ -60,57 +65,59 @@ G4RunManager* G4RunManagerFactory::CreateRunManager(G4RunManagerType _type, G4bool fail_if_unavail, G4int nthreads) { - G4RunManager* rm = nullptr; - - auto rm_type = G4GetEnv("G4RUN_MANAGER_TYPE", GetName(_type)); - auto force_rm = G4GetEnv("G4FORCE_RUN_MANAGER_TYPE", "", - "Forcing G4RunManager type..."); - - // if forced, set rm_type to specification, enable failure if not available, - // and set enum value to default so that - if(force_rm.length() > 0) + // If the supplied type is not ...Only, then allow override from environment + std::string rm_type = GetName(_type); + if(_type == G4RunManagerType::SerialOnly || + _type == G4RunManagerType::MTOnly || + _type == G4RunManagerType::TaskingOnly || + _type == G4RunManagerType::TBBOnly) { - rm_type = force_rm; - _type = GetType(force_rm); + // MUST fail if unavail in this case fail_if_unavail = true; } - else if(rm_type.empty()) + else { - rm_type = GetDefault(); - _type = GetType(rm_type); - } + // - G4RUN_MANAGER_TYPE can be set to override the "default" + // - If the requested type isn't available, then it will fall back to the + // system default + // - G4FORCE_RUN_MANAGER_TYPE can be set to force a specific type + // - A G4Exception is raised if the requested type is not available + rm_type = G4GetEnv("G4RUN_MANAGER_TYPE", GetName(_type), + "Overriding G4RunManager type..."); + auto force_rm = G4GetEnv("G4FORCE_RUN_MANAGER_TYPE", "", + "Forcing G4RunManager type..."); - // if string is empty - if(rm_type.empty()) - { - if(_type == G4RunManagerType::Default) + if(force_rm.length() > 0) + { + rm_type = force_rm; + fail_if_unavail = true; + } + else if(rm_type.empty()) + { rm_type = GetDefault(); - else - rm_type = GetName(_type); + } } - // convert default to a type - if(_type == G4RunManagerType::Default) - _type = GetType(rm_type); - - // if type is still default and fail - if(fail_if_unavail && _type == G4RunManagerType::Default) - fail("Run manager type is not available", rm_type, GetOptions(), 0); - + // At this point will have a string for the RM type we can check for existence + // NB: Comparison at present is case sensitive (needs a comparator in + // GetOptions) auto opts = GetOptions(); - if(fail_if_unavail && opts.find(GetName(_type)) == opts.end()) + if(opts.find(rm_type) == opts.end()) { - // if type selected is not available and fail_if_unavail is true, fail - fail("Run manager type is not available", GetName(_type), opts, 1); - } - else if(!fail_if_unavail && opts.find(GetName(_type)) == opts.end()) - { - // if type selected is not available and fail_if_unavail is false, set to - // default - rm_type = GetDefault(); - _type = GetType(rm_type); + if(fail_if_unavail) + { + fail("Run manager type is not available", rm_type, opts, 1); + } + else + { + rm_type = GetDefault(); + } } + // Construct requested RunManager given type + _type = GetType(rm_type); + G4RunManager* rm = nullptr; + switch(_type) { case G4RunManagerType::Serial: @@ -131,17 +138,30 @@ G4RunManager* G4RunManagerFactory::CreateRunManager(G4RunManagerType _type, rm = new G4TaskRunManager(_queue, true); #endif break; + // "Only" types are not handled since they are converted above to main type + case G4RunManagerType::SerialOnly: + break; + case G4RunManagerType::MTOnly: + break; + case G4RunManagerType::TaskingOnly: + break; + case G4RunManagerType::TBBOnly: + break; case G4RunManagerType::Default: break; } if(!rm) - fail("Failure creating run manager", GetName(_type), GetOptions(), 3); + fail("Failure creating run manager", GetName(_type), GetOptions(), 2); auto mtrm = dynamic_cast(rm); if(nthreads > 0 && mtrm) mtrm->SetNumberOfThreads(nthreads); + master_run_manager = rm; + mt_master_run_manager = mtrm; + master_run_manager_kernel = rm->kernel; + G4ConsumeParameters(_queue); return rm; } @@ -151,7 +171,9 @@ G4RunManager* G4RunManagerFactory::CreateRunManager(G4RunManagerType _type, std::string G4RunManagerFactory::GetDefault() { #if defined(G4MULTITHREADED) - return "Tasking"; + // For version 10.7, default is set to MT + // return "Tasking"; + return "MT"; #else return "Serial"; #endif @@ -201,12 +223,20 @@ std::string G4RunManagerFactory::GetName(G4RunManagerType _type) { case G4RunManagerType::Serial: return "Serial"; + case G4RunManagerType::SerialOnly: + return "Serial"; case G4RunManagerType::MT: return "MT"; + case G4RunManagerType::MTOnly: + return "MT"; case G4RunManagerType::Tasking: return "Tasking"; + case G4RunManagerType::TaskingOnly: + return "Tasking"; case G4RunManagerType::TBB: return "TBB"; + case G4RunManagerType::TBBOnly: + return "TBB"; default: break; }; @@ -214,3 +244,75 @@ std::string G4RunManagerFactory::GetName(G4RunManagerType _type) } //============================================================================// + +G4RunManager* G4RunManagerFactory::GetMasterRunManager() +{ +#if !defined(G4MULTITHREADED) + // if serial build just return G4RunManager + return G4RunManager::GetRunManager(); +#else + // if the application used G4RunManagerFactory to create the run-manager + if(master_run_manager) + return master_run_manager; + + // if the application did not use G4RunManagerFactory and is MT + if(G4Threading::IsMultithreadedApplication()) + { + auto mt_rm = GetMTMasterRunManager(); + if(mt_rm) + return mt_rm; + } + + // if the application did not use G4RunManagerFactory and is serial + return G4RunManager::GetRunManager(); +#endif +} + +//============================================================================// + +G4MTRunManager* G4RunManagerFactory::GetMTMasterRunManager() +{ +#if defined(G4MULTITHREADED) + // if the application used G4RunManagerFactory to create the run-manager + if(mt_master_run_manager) + return mt_master_run_manager; + + // if the application did not use G4RunManagerFactory + if(G4Threading::IsMultithreadedApplication()) + { + auto task_rm = G4TaskRunManager::GetMasterRunManager(); + if(task_rm) + return task_rm; + return G4MTRunManager::GetMasterRunManager(); + } +#endif + + return nullptr; +} + +//============================================================================// + +G4RunManagerKernel* G4RunManagerFactory::GetMasterRunManagerKernel() +{ +#if !defined(G4MULTITHREADED) + // if serial build just return G4RunManager + return G4RunManager::GetRunManager()->kernel; +#else + // if the application used G4RunManagerFactory to create the run-manager + if(master_run_manager_kernel) + return master_run_manager_kernel; + + // if the application did not use G4RunManagerFactory and is MT + if(G4Threading::IsMultithreadedApplication()) + { + auto mt_rm = GetMTMasterRunManager(); + if(mt_rm) + return mt_rm->kernel; + } + + // if the application did not use G4RunManagerFactory and is serial + return G4RunManager::GetRunManager()->kernel; +#endif +} + +//============================================================================// diff --git a/source/tasking/src/G4TaskRunManager.cc b/source/tasking/src/G4TaskRunManager.cc index dd5c6bce94..3d5aae0a04 100644 --- a/source/tasking/src/G4TaskRunManager.cc +++ b/source/tasking/src/G4TaskRunManager.cc @@ -49,6 +49,7 @@ #include "G4WorkerTaskRunManager.hh" #include "G4WorkerThread.hh" #include "G4UserTaskQueue.hh" +#include "G4TiMemory.hh" #include #include @@ -56,16 +57,8 @@ //============================================================================// -G4ScoringManager* G4TaskRunManager::masterScM = nullptr; -G4TaskRunManager::masterWorlds_t G4TaskRunManager::masterWorlds = - G4TaskRunManager::masterWorlds_t(); -G4TaskRunManager* G4TaskRunManager::fMasterRM = nullptr; - -//============================================================================// - namespace { -// G4Mutex cmdHandlingMutex; G4Mutex scorerMergerMutex; G4Mutex runMergerMutex; G4Mutex setUpEventMutex; @@ -73,20 +66,9 @@ namespace //============================================================================// -G4TaskRunManager* G4TaskRunManager::GetMasterRunManager() { return fMasterRM; } - -//============================================================================// - -G4RunManagerKernel* G4TaskRunManager::GetMasterRunManagerKernel() -{ - return fMasterRM->kernel; -} - -//============================================================================// - G4TaskRunManagerKernel* G4TaskRunManager::GetMTMasterRunManagerKernel() { - return fMasterRM->MTkernel; + return GetMasterRunManager()->MTkernel; } //============================================================================// @@ -100,20 +82,12 @@ G4TaskRunManager::G4TaskRunManager(G4VUserTaskQueue* task_queue, G4bool useTBB, , numberOfTasks(-1) , masterRNGEngine(nullptr) , workTaskGroup(nullptr) - , workTaskGroupTBB(nullptr) { if(task_queue) taskQueue = task_queue; // override default of 2 from G4MTRunManager - nworkers = std::thread::hardware_concurrency(); - - if(fMasterRM) - { - G4Exception("G4TaskRunManager::G4TaskRunManager", "Run0130", FatalException, - "Another instance of a G4TaskRunManager already exists."); - } - + nworkers = std::thread::hardware_concurrency(); fMasterRM = this; MTkernel = static_cast(kernel); @@ -157,12 +131,7 @@ G4TaskRunManager::G4TaskRunManager(G4VUserTaskQueue* task_queue, G4bool useTBB, forcedNwokers = _nthread_val; if(forcedNwokers > 0) - { nworkers = forcedNwokers; - G4cout << "\n### Number of threads is forced to " << forcedNwokers - << " by Environment variable G4FORCENUMBEROFTHREADS.\n" - << G4endl; - } } //------------------------------------------------------------------------// @@ -197,12 +166,15 @@ G4TaskRunManager::G4TaskRunManager(G4bool useTBB) G4TaskRunManager::~G4TaskRunManager() { - if(workTaskGroupTBB) - workTaskGroupTBB->join(); if(workTaskGroup) + { workTaskGroup->join(); - delete workTaskGroupTBB; - delete workTaskGroup; + delete workTaskGroup; + } + // finalize profiler before shutting down the threads + G4Profiler::Finalize(); + if(threadPool) + threadPool->destroy_threadpool(); PTL::TaskRunManager::Terminate(); } @@ -264,14 +236,16 @@ void G4TaskRunManager::SetNumberOfThreads(G4int n) void G4TaskRunManager::Initialize() { - if(!threadPool) + G4bool firstTime = (!threadPool); + if(firstTime) InitializeThreadPool(); G4RunManager::Initialize(); // make sure all worker threads are set up. G4RunManager::BeamOn(0); - G4RunManager::SetRunIDCounter(0); + if(firstTime) + G4RunManager::SetRunIDCounter(0); // G4UImanager::GetUIpointer()->SetIgnoreCmdNotFound(true); } @@ -279,7 +253,7 @@ void G4TaskRunManager::Initialize() void G4TaskRunManager::InitializeThreadPool() { - if(poolInitialized && threadPool && (workTaskGroup || workTaskGroupTBB)) + if(poolInitialized && threadPool && workTaskGroup) { G4Exception("G4TaskRunManager::InitializeThreadPool", "Run1040", JustWarning, "Threadpool already initialized. Ignoring..."); @@ -294,17 +268,12 @@ void G4TaskRunManager::InitializeThreadPool() PTL::TaskRunManager::SetVerbose(GetVerbose()); PTL::TaskRunManager::Initialize(nworkers); - auto task_join = [](WorkerRunSet& _workers, G4WorkerTaskRunManager** _rm) { - _workers.insert(_rm); - return _workers; - }; - // create the joiners if(threadPool->using_tbb()) { G4cout << "G4TaskRunManager :: Using TBB..." << G4endl; - if(!workTaskGroupTBB) - workTaskGroupTBB = new RunTaskGroupTBB(task_join, threadPool); + if(!workTaskGroup) + workTaskGroup = new RunTaskGroupTBB(threadPool); } else { @@ -358,7 +327,7 @@ void G4TaskRunManager::ComputeNumberOfTasks() numberOfEventsPerTask = nEvtsPerTask; eventModulo = numberOfEventsPerTask; - if(fakeRun) + if(fakeRun && verboseLevel > 1) { std::stringstream msg; msg << "--> G4TaskRunManager::ComputeNumberOfTasks() --> " << numberOfTasks @@ -384,8 +353,25 @@ void G4TaskRunManager::CreateAndStartWorkers() // Currently we do not allow to change the // number of threads: threads area created once // Instead of pthread based workers, create tbbTask + static bool initializeStarted = false; + + ComputeNumberOfTasks(); + if(fakeRun) { + if(initializeStarted) + { + auto initCmdStack = GetCommandStack(); + if(!initCmdStack.empty()) + { + threadPool->execute_on_all_threads([initCmdStack]() { + for(auto& itr : initCmdStack) + G4UImanager::GetUIpointer()->ApplyCommand(itr); + G4WorkerTaskRunManager::GetWorkerRunManager()->DoWork(); + }); + } + } + else { std::stringstream msg; msg << "--> G4TaskRunManager::CreateAndStartWorkers() --> " @@ -399,52 +385,28 @@ void G4TaskRunManager::CreateAndStartWorkers() << msg.str() << "\n" << ss.str() << "\n" << G4endl; - } - if(workTaskGroupTBB) - { + G4TaskRunManagerKernel::InitCommandStack() = GetCommandStack(); - - // init function which return 1 only once - auto _init = []() { - static thread_local G4int _once = 0; - if(_once++ == 0) - { - G4TaskRunManagerKernel::InitializeWorker(); - return 1; - } - return 0; - }; - - static std::atomic _total_init; - auto _init_task = [=]() { - if(G4ThisThread::get_id() == G4MTRunManager::GetMasterThreadId()) - return; - auto _ret = _init(); - _total_init += _ret; - if(_ret == 0) - std::this_thread::sleep_for(std::chrono::milliseconds(100)); - }; - - while(_total_init + 1 < threadPool->size()) - { - std::cout << "repeating init..." << std::endl; - G4TBBTaskGroup _tbb_init_tg(threadPool); - auto _n = 2 * threadPool->size(); - while(--_n > 0) - _tbb_init_tg.exec(_init_task); - _tbb_init_tg.join(); - } - } - - if(workTaskGroup) - { - threadPool->get_queue()->ExecuteOnAllThreads( - threadPool, G4TaskRunManagerKernel::InitializeWorker); + threadPool->execute_on_all_threads( + []() { G4TaskRunManagerKernel::InitializeWorker(); }); } + initializeStarted = true; } else { - ComputeNumberOfTasks(); + auto initCmdStack = GetCommandStack(); + if(!initCmdStack.empty()) + { + threadPool->execute_on_all_threads([initCmdStack]() { + for(auto& itr : initCmdStack) + G4UImanager::GetUIpointer()->ApplyCommand(itr); + }); + } + + // cleans up a previous run and events in case a thread + // does not execute any tasks + threadPool->execute_on_all_threads( + []() { G4TaskRunManagerKernel::ExecuteWorkerInit(); }); { std::stringstream msg; @@ -463,42 +425,29 @@ void G4TaskRunManager::CreateAndStartWorkers() } G4int remaining = numberOfEventToBeProcessed; - - for(G4int nt = 0; nt < numberOfTasks; ++nt) + for(G4int nt = 0; nt < numberOfTasks + 1; ++nt) { - if(remaining == 0) - break; - G4int evts = numberOfEventsPerTask; - if(evts > remaining) - evts = remaining; - if(nt + 1 == numberOfTasks) - evts = remaining; - AddEventTask(nt, evts); - remaining -= evts; + if(remaining > 0) + AddEventTask(nt); + remaining -= numberOfEventsPerTask; } + workTaskGroup->wait(); } } //============================================================================// -void G4TaskRunManager::AddEventTask(G4int, G4int evts) +void G4TaskRunManager::AddEventTask(G4int nt) { - TIMEMORY_AUTO_TIMER(""); - - // check for TBB first since standard work task group could be valid - if(workTaskGroupTBB) - taskManager->exec(*workTaskGroupTBB, - G4TaskRunManagerKernel::ExecuteWorkerTask, evts); - else - taskManager->exec(*workTaskGroup, G4TaskRunManagerKernel::ExecuteWorkerTask, - evts); + if(verboseLevel > 1) + G4cout << "Adding task " << nt << " to task-group..." << G4endl; + workTaskGroup->exec([]() { G4TaskRunManagerKernel::ExecuteWorkerTask(); }); } //============================================================================// void G4TaskRunManager::RefillSeeds() { - TIMEMORY_AUTO_TIMER(""); G4RNGHelper* helper = G4RNGHelper::GetInstance(); G4int nFill = 0; switch(SeedOncePerCommunication()) @@ -528,7 +477,6 @@ void G4TaskRunManager::RefillSeeds() void G4TaskRunManager::InitializeEventLoop(G4int n_event, const char* macroFile, G4int n_select) { - TIMEMORY_AUTO_TIMER(""); MTkernel->SetUpDecayChannels(); numberOfEventToBeProcessed = n_event; numberOfEventProcessed = 0; @@ -595,7 +543,6 @@ void G4TaskRunManager::InitializeEventLoop(G4int n_event, const char* macroFile, _functor = initSeedsCallback(n_event, nSeedsPerEvent, nSeedsFilled); if(_overload == false && _functor == false) { - TIMEMORY_AUTO_TIMER("[reseed]"); G4RNGHelper* helper = G4RNGHelper::GetInstance(); switch(SeedOncePerCommunication()) { @@ -616,7 +563,7 @@ void G4TaskRunManager::InitializeEventLoop(G4int n_event, const char* macroFile, G4Exception("G4TaskRunManager::InitializeEventLoop()", "Run10036", JustWarning, msgd); SetSeedOncePerCommunication(0); - nSeedsFilled = n_event; + nSeedsFilled = n_event; } // Generates up to nSeedsMax seed pairs only. @@ -632,20 +579,11 @@ void G4TaskRunManager::InitializeEventLoop(G4int n_event, const char* macroFile, if(userWorkerThreadInitialization == nullptr) userWorkerThreadInitialization = new G4UserTaskThreadInitialization(); - // G4cout << "Preparing command stack..." << G4endl; // Prepare UI commands for threads PrepareCommandsStack(); - // G4cout << "Create and start workers..." << G4endl; // Start worker threads CreateAndStartWorkers(); - - // G4cout << "Waiting for ready workers..." << G4endl; - // We need a barrier here. Wait for workers to start event loop. - // This will return only when all workers have started processing events. - WaitForReadyWorkers(); - - // G4cout << "Event loop initialized..." << G4endl; } //============================================================================// @@ -687,7 +625,6 @@ void G4TaskRunManager::ConstructScoringWorlds() void G4TaskRunManager::MergeScores(const G4ScoringManager* localScoringManager) { - TIMEMORY_AUTO_TIMER(""); G4AutoLock l(&scorerMergerMutex); if(masterScM) masterScM->Merge(localScoringManager); @@ -697,7 +634,6 @@ void G4TaskRunManager::MergeScores(const G4ScoringManager* localScoringManager) void G4TaskRunManager::MergeRun(const G4Run* localRun) { - TIMEMORY_AUTO_TIMER(""); G4AutoLock l(&runMergerMutex); if(currentRun) currentRun->Merge(localRun); @@ -711,11 +647,9 @@ G4bool G4TaskRunManager::SetUpAnEvent(G4Event* evt, G4long& s1, G4long& s2, G4AutoLock l(&setUpEventMutex); if(numberOfEventProcessed < numberOfEventToBeProcessed) { - TIMEMORY_AUTO_TIMER(""); evt->SetEventID(numberOfEventProcessed); if(reseedRequired) { - TIMEMORY_AUTO_TIMER("[reseed]"); G4RNGHelper* helper = G4RNGHelper::GetInstance(); G4int idx_rndm = nSeedsPerEvent * nSeedsUsed; s1 = helper->GetSeed(idx_rndm); @@ -740,16 +674,18 @@ G4int G4TaskRunManager::SetUpNEvents(G4Event* evt, G4SeedsQueue* seedsQueue, G4AutoLock l(&setUpEventMutex); if(numberOfEventProcessed < numberOfEventToBeProcessed && !runAborted) { - TIMEMORY_AUTO_TIMER(""); - G4int nev = eventModulo; - if(numberOfEventProcessed + nev > numberOfEventToBeProcessed) - nev = numberOfEventToBeProcessed - numberOfEventProcessed; + G4int nevt = numberOfEventsPerTask; + G4int nmod = eventModulo; + if(numberOfEventProcessed + nevt > numberOfEventToBeProcessed) + { + nevt = numberOfEventToBeProcessed - numberOfEventProcessed; + nmod = numberOfEventToBeProcessed - numberOfEventProcessed; + } evt->SetEventID(numberOfEventProcessed); if(reseedRequired) { - TIMEMORY_AUTO_TIMER("[reseed]"); G4RNGHelper* helper = G4RNGHelper::GetInstance(); - G4int nevRnd = nev; + G4int nevRnd = nmod; if(SeedOncePerCommunication() > 0) nevRnd = 1; for(G4int i = 0; i < nevRnd; ++i) @@ -763,8 +699,8 @@ G4int G4TaskRunManager::SetUpNEvents(G4Event* evt, G4SeedsQueue* seedsQueue, RefillSeeds(); } } - numberOfEventProcessed += nev; - return nev; + numberOfEventProcessed += nevt; + return nevt; } return 0; } @@ -775,28 +711,13 @@ void G4TaskRunManager::TerminateWorkers() { // Force workers to execute (if any) all UI commands left in the stack RequestWorkersProcessCommandsStack(); - // Ask workers to exit - NewActionRequest(WorkerActionRequest::ENDWORKER); - - auto _terminate = [&](WorkerRunSet _workers) { - for(auto& itr : _workers) - G4TaskRunManagerKernel::TerminateWorker(itr); - }; - - // Now join threads. - if(workTaskGroupTBB) - _terminate(workTaskGroupTBB->join()); if(workTaskGroup) { workTaskGroup->join(); - // G4cout << "Terminating workers... (fakeRun: " << std::boolalpha - // << fakeRun << ")..." << G4endl; if(!fakeRun) - { - auto _f = []() { G4TaskRunManagerKernel::TerminateWorker(); }; - threadPool->get_queue()->ExecuteOnAllThreads(threadPool, _f); - } + threadPool->execute_on_all_threads( + []() { G4TaskRunManagerKernel::TerminateWorker(); }); } } @@ -829,22 +750,12 @@ void G4TaskRunManager::AbortEvent() void G4TaskRunManager::WaitForEndEventLoopWorkers() { - auto _terminate = [](WorkerRunSet _workers) { - for(auto& itr : _workers) - G4TaskRunManagerKernel::TerminateWorkerRunEventLoop(itr); - }; - - if(workTaskGroupTBB) - _terminate(workTaskGroupTBB->join()); - if(workTaskGroup) { workTaskGroup->join(); if(!fakeRun) - { - auto _f = []() { G4TaskRunManagerKernel::TerminateWorkerRunEventLoop(); }; - threadPool->get_queue()->ExecuteOnAllThreads(threadPool, _f); - } + threadPool->execute_on_all_threads( + []() { G4TaskRunManagerKernel::TerminateWorkerRunEventLoop(); }); } } @@ -855,21 +766,17 @@ void G4TaskRunManager::RequestWorkersProcessCommandsStack() PrepareCommandsStack(); auto process_commands_stack = []() { - G4MTRunManager* mrm = G4MTRunManager::GetMasterRunManager(); - std::vector cmds = mrm->GetCommandStack(); - G4UImanager* uimgr = G4UImanager::GetUIpointer(); // TLS instance - for(auto itr = cmds.cbegin(); itr != cmds.cend(); ++itr) + G4MTRunManager* mrm = G4MTRunManager::GetMasterRunManager(); + if(mrm) { - G4cout << "Applying command \"" << *itr << "\" @ " << __FUNCTION__ << ":" - << __LINE__ << G4endl; - uimgr->ApplyCommand(*itr); + auto cmds = mrm->GetCommandStack(); + for(const auto& itr : cmds) + G4UImanager::GetUIpointer()->ApplyCommand(itr); // TLS instance + mrm->ThisWorkerProcessCommandsStackDone(); } - mrm->ThisWorkerProcessCommandsStackDone(); }; - if(workTaskGroup) - threadPool->get_queue()->ExecuteOnAllThreads(threadPool, - process_commands_stack); + threadPool->execute_on_all_threads(process_commands_stack); } //============================================================================// diff --git a/source/tasking/src/G4TaskRunManagerKernel.cc b/source/tasking/src/G4TaskRunManagerKernel.cc index 6d2f56302a..ac5bd4a97b 100644 --- a/source/tasking/src/G4TaskRunManagerKernel.cc +++ b/source/tasking/src/G4TaskRunManagerKernel.cc @@ -59,6 +59,7 @@ #include "G4WorkerThread.hh" #include +#include //============================================================================// @@ -101,43 +102,36 @@ void G4TaskRunManagerKernel::SetupShadowProcess() const namespace { - //============================================================================// + using WorkerRunManPtr_t = std::unique_ptr; + using WorkerThreadPtr_t = std::unique_ptr; - G4WorkerTaskRunManager*& workerRM() + WorkerRunManPtr_t& workerRM() { - G4ThreadLocalStatic G4WorkerTaskRunManager* _instance = nullptr; + G4ThreadLocalStatic WorkerRunManPtr_t _instance{ nullptr }; return _instance; } - //============================================================================// - - G4WorkerThread*& context() + WorkerThreadPtr_t& context() { - G4ThreadLocalStatic G4WorkerThread* _instance = nullptr; + G4ThreadLocalStatic WorkerThreadPtr_t _instance{ nullptr }; return _instance; } - //============================================================================// - - G4bool& CheckConfirmBeamOn() - { - G4ThreadLocalStatic G4bool _instance = true; - return _instance; - } - - //============================================================================// - } // namespace //============================================================================// -G4WorkerThread* G4TaskRunManagerKernel::GetWorkerThread() { return context(); } +G4WorkerThread* G4TaskRunManagerKernel::GetWorkerThread() +{ + return context().get(); +} //============================================================================// void G4TaskRunManagerKernel::InitializeWorker() { - TIMEMORY_AUTO_TIMER(""); + if(context() && workerRM()) + return; G4TaskRunManager* mrm = G4TaskRunManager::GetMasterRunManager(); if(G4MTRunManager::GetMasterThreadId() == G4ThisThread::get_id()) @@ -160,7 +154,7 @@ void G4TaskRunManagerKernel::InitializeWorker() //!!!!!!!!!!!!!!!!!!!!!!!!!! G4Threading::WorkerThreadJoinsPool(); - context() = new G4WorkerThread; + context().reset(new G4WorkerThread); //============================ // Step-0: Thread ID @@ -169,7 +163,7 @@ void G4TaskRunManagerKernel::InitializeWorker() // The following line is needed before we actually do IO initialization // becasue the constructor of UI manager resets the IO destination. context()->SetNumberThreads(mrm->GetThreadPool()->size()); - context()->SetThreadId(G4ThreadPool::GetThisThreadID() - 1); + context()->SetThreadId(G4ThreadPool::get_this_thread_id() - 1); G4int thisID = context()->GetThreadId(); G4Threading::G4SetThreadId(thisID); G4UImanager::GetUIpointer()->SetUpForAThread(thisID); @@ -202,10 +196,10 @@ void G4TaskRunManagerKernel::InitializeWorker() } // Now initialize worker part of shared objects (geometry/physics) context()->BuildGeometryAndPhysicsVector(); - workerRM() = static_cast( - mrm->GetUserWorkerThreadInitialization()->CreateWorkerRunManager()); - G4WorkerTaskRunManager*& wrm = workerRM(); - wrm->SetWorkerThread(context()); + workerRM().reset(static_cast( + mrm->GetUserWorkerThreadInitialization()->CreateWorkerRunManager())); + auto& wrm = workerRM(); + wrm->SetWorkerThread(context().get()); //================================ // Step-3: Setup worker run manager @@ -228,26 +222,22 @@ void G4TaskRunManagerKernel::InitializeWorker() workerRM()->Initialize(); - CheckConfirmBeamOn() = true; + for(auto& itr : initCmdStack) + G4UImanager::GetUIpointer()->ApplyCommand(itr); wrm->ProcessUI(); - - for(const auto& itr : InitCommandStack()) - G4UImanager::GetUIpointer()->ApplyCommand(itr); } //============================================================================// -G4WorkerTaskRunManager** G4TaskRunManagerKernel::ExecuteWorkerTask(G4int nevts) +void G4TaskRunManagerKernel::ExecuteWorkerInit() { - TIMEMORY_AUTO_TIMER(""); - // because of TBB if(G4MTRunManager::GetMasterThreadId() == G4ThisThread::get_id()) { G4TaskManager* taskManager = G4TaskRunManager::GetMasterRunManager()->GetTaskManager(); - auto _fut = taskManager->async(ExecuteWorkerTask, nevts); + auto _fut = taskManager->async(ExecuteWorkerInit); return _fut.get(); } @@ -256,90 +246,81 @@ G4WorkerTaskRunManager** G4TaskRunManagerKernel::ExecuteWorkerTask(G4int nevts) if(!workerRM()) InitializeWorker(); - G4TaskRunManager* mrm = G4TaskRunManager::GetMasterRunManager(); - G4WorkerTaskRunManager* wrm = workerRM(); + auto& wrm = workerRM(); + assert(wrm.get() != nullptr); + wrm->DoCleanup(); +} - assert(mrm != nullptr); - assert(wrm != nullptr); +//============================================================================// - // The following deals with detecting changes between runs - G4ThreadLocalStatic G4int runId = -1; - G4bool newRun = false; - - const G4Run* run = mrm->GetCurrentRun(); - if(run) +void G4TaskRunManagerKernel::ExecuteWorkerTask() +{ + // because of TBB + if(G4MTRunManager::GetMasterThreadId() == G4ThisThread::get_id()) { - if(run->GetRunID() != runId) - { - runId = run->GetRunID(); - newRun = true; - } + G4TaskManager* taskManager = + G4TaskRunManager::GetMasterRunManager()->GetTaskManager(); + auto _fut = taskManager->async(ExecuteWorkerTask); + return _fut.get(); } - if(newRun) - wrm->InitializeForNewRun(); + // this check is for TBB as there is not a way to run an initialization + // routine on each thread + if(!workerRM()) + InitializeWorker(); - if(nevts > 0) - wrm->DoWork(nevts); - else - wrm->DoBeamOn(nevts); - - return &(workerRM()); + auto& wrm = workerRM(); + assert(wrm.get() != nullptr); + wrm->DoWork(); } //============================================================================// void G4TaskRunManagerKernel::TerminateWorkerRunEventLoop() { - TerminateWorkerRunEventLoop(&workerRM()); + if(workerRM()) + TerminateWorkerRunEventLoop(workerRM().get()); } //============================================================================// -void G4TaskRunManagerKernel::TerminateWorker() { TerminateWorker(&workerRM()); } +void G4TaskRunManagerKernel::TerminateWorker() +{ + if(workerRM()) + TerminateWorker(workerRM().get()); + workerRM().reset(); + context().reset(); +} //============================================================================// void G4TaskRunManagerKernel::TerminateWorkerRunEventLoop( - G4WorkerTaskRunManager** wrm_ptr) + G4WorkerTaskRunManager* wrm) { - if(!wrm_ptr) + if(!wrm) return; - G4WorkerTaskRunManager*& wrm = *wrm_ptr; + wrm->TerminateEventLoop(); wrm->RunTermination(); } //============================================================================// -void G4TaskRunManagerKernel::TerminateWorker(G4WorkerTaskRunManager** wrm_ptr) +void G4TaskRunManagerKernel::TerminateWorker(G4WorkerTaskRunManager* wrm) { - if(!wrm_ptr) + if(!wrm) return; - G4WorkerTaskRunManager*& wrm = *wrm_ptr; - G4TaskRunManager* mrm = G4TaskRunManager::GetMasterRunManager(); //=============================== // Step-6: Terminate worker thread //=============================== - if(mrm->GetUserWorkerInitialization()) + G4TaskRunManager* mrm = G4TaskRunManager::GetMasterRunManager(); + if(mrm && mrm->GetUserWorkerInitialization()) mrm->GetUserWorkerInitialization()->WorkerStop(); G4WorkerThread* _context = wrm->GetWorkerThread(); _context->DestroyGeometryAndPhysicsVector(); - delete wrm; - wrm = nullptr; - - //=============================== - // Step-7: Cleanup split classes - //=============================== - if(context()) - { - context()->DestroyGeometryAndPhysicsVector(); - context() = nullptr; - } - G4Threading::WorkerThreadLeavesPool(); } diff --git a/source/tasking/src/G4WorkerTaskRunManager.cc b/source/tasking/src/G4WorkerTaskRunManager.cc index 2b49c31090..14772887e0 100644 --- a/source/tasking/src/G4WorkerTaskRunManager.cc +++ b/source/tasking/src/G4WorkerTaskRunManager.cc @@ -39,6 +39,7 @@ #include "G4UserRunAction.hh" #include "G4UserWorkerInitialization.hh" #include "G4UserWorkerThreadInitialization.hh" +#include "G4VScoreNtupleWriter.hh" #include "G4VScoringMesh.hh" #include "G4VUserActionInitialization.hh" #include "G4VUserDetectorConstruction.hh" @@ -79,7 +80,6 @@ G4WorkerTaskRunManager::GetWorkerRunManagerKernel() G4WorkerTaskRunManager::G4WorkerTaskRunManager() : G4WorkerRunManager() - , fConfirmBeamOn(true) {} //============================================================================// @@ -102,7 +102,6 @@ void G4WorkerTaskRunManager::RunInitialization() if(!(kernel->RunInitialization(fakeRun))) return; - TIMEMORY_AUTO_TIMER(""); // Signal this thread can start event loop. // Note this will return only when all threads reach this point G4MTRunManager::GetMasterRunManager()->ThisWorkerReady(); @@ -131,6 +130,8 @@ void G4WorkerTaskRunManager::RunInitialization() currentRun = new G4Run(); currentRun->SetRunID(runIDCounter); + G4TaskRunManager* mrm = G4TaskRunManager::GetMasterRunManager(); + numberOfEventToBeProcessed = mrm->GetNumberOfEventsToBeProcessed(); currentRun->SetNumberOfEventToBeProcessed(numberOfEventToBeProcessed); currentRun->SetDCtable(DCtable); @@ -138,6 +139,13 @@ void G4WorkerTaskRunManager::RunInitialization() if(fSDM) currentRun->SetHCtable(fSDM->GetHCtable()); + if(G4VScoreNtupleWriter::Instance()) + { + auto hce = fSDM->PrepareNewEvent(); + isScoreNtupleWriter = G4VScoreNtupleWriter::Instance()->Book(hce); + delete hce; + } + std::ostringstream oss; G4Random::saveFullState(oss); randomNumberStatusForThisRun = oss.str(); @@ -156,6 +164,15 @@ void G4WorkerTaskRunManager::RunInitialization() if(userRunAction) userRunAction->BeginOfRunAction(currentRun); +#if defined(GEANT4_USE_TIMEMORY) + workerRunProfiler.reset(new ProfilerConfig(currentRun)); +#endif + + if(isScoreNtupleWriter) + { + G4VScoreNtupleWriter::Instance()->OpenFile(); + } + if(storeRandomNumberStatus) { G4String fileN = "currentRun"; @@ -177,7 +194,6 @@ void G4WorkerTaskRunManager::RunInitialization() void G4WorkerTaskRunManager::DoEventLoop(G4int n_event, const char* macroFile, G4int n_select) { - TIMEMORY_AUTO_TIMER(""); if(!userPrimaryGeneratorAction) { G4Exception("G4RunManager::GenerateEvent()", "Run0032", FatalException, @@ -374,8 +390,11 @@ G4Event* G4WorkerTaskRunManager::GenerateEvent(G4int i_event) void G4WorkerTaskRunManager::RunTermination() { - if(!fakeRun) + if(!fakeRun && currentRun) { +#if defined(GEANT4_USE_TIMEMORY) + workerRunProfiler.reset(); +#endif MergePartialResults(); // Call a user hook: note this is before the next barrier @@ -387,7 +406,10 @@ void G4WorkerTaskRunManager::RunTermination() uwi->WorkerRunEnd(); } - G4RunManager::RunTermination(); + if(currentRun) + { + G4RunManager::RunTermination(); + } // Signal this thread has finished envent-loop. // Note this will return only whan all threads reach this point G4MTRunManager::GetMasterRunManager()->ThisWorkerEndEventLoop(); @@ -440,26 +462,20 @@ void G4WorkerTaskRunManager::StoreRNGStatus(const G4String& fn) //============================================================================// -void G4WorkerTaskRunManager::DoWork() -{ - G4cout << "Error! " << __FUNCTION__ << G4endl; - throw std::runtime_error(__FUNCTION__); -} - -//============================================================================// - void G4WorkerTaskRunManager::ProcessUI() { G4TaskRunManager* mrm = G4TaskRunManager::GetMasterRunManager(); + if(!mrm) + return; //------------------------------------------------------------------------// // Check UI commands not already processed - bool matching = - (processedCommandStack.size() == mrm->GetCommandStack().size()); + auto command_stack = mrm->GetCommandStack(); + bool matching = (command_stack.size() == processedCommandStack.size()); if(matching) { - for(uintmax_t i = 0; i < mrm->GetCommandStack().size(); ++i) - if(processedCommandStack.at(i) != mrm->GetCommandStack().at(i)) + for(uintmax_t i = 0; i < command_stack.size(); ++i) + if(processedCommandStack.at(i) != command_stack.at(i)) { matching = false; break; @@ -470,63 +486,44 @@ void G4WorkerTaskRunManager::ProcessUI() // Execute UI commands stored in the master UI manager if(!matching) { - for(auto itr : mrm->GetCommandStack()) + for(const auto& itr : command_stack) G4UImanager::GetUIpointer()->ApplyCommand(itr); - processedCommandStack = mrm->GetCommandStack(); + processedCommandStack = command_stack; } } //============================================================================// -void G4WorkerTaskRunManager::InitializeForNewRun() +void G4WorkerTaskRunManager::DoCleanup() { - // The following deals with changing materials between runs - workerContext->UpdateGeometryAndPhysicsVectorFromMaster(); + CleanUpPreviousEvents(); + if(currentRun) + delete currentRun; + currentRun = nullptr; +} - // read the command stack - ProcessUI(); +//============================================================================// - G4bool init = (fConfirmBeamOn) ? ConfirmBeamOnCondition() : true; - - if(init) +void G4WorkerTaskRunManager::DoWork() +{ + G4TaskRunManager* mrm = G4TaskRunManager::GetMasterRunManager(); + G4bool newRun = false; + const G4Run* run = mrm->GetCurrentRun(); + G4ThreadLocalStatic G4int runId = -1; + if(run && run->GetRunID() != runId) { - ConstructScoringWorlds(); - RunInitialization(); + runId = run->GetRunID(); + newRun = true; + if(runId > 0) + { + ProcessUI(); + assert(workerContext != nullptr); + } + workerContext->UpdateGeometryAndPhysicsVectorFromMaster(); } - fConfirmBeamOn = false; -} - -//============================================================================// - -void G4WorkerTaskRunManager::DoBeamOn(G4int nevts) -{ - G4TaskRunManager* mrm = G4TaskRunManager::GetMasterRunManager(); - - // execute any UI commands - // ProcessUI(); - - // Start this run - G4int numSelect = mrm->GetNumberOfSelectEvents(); - G4String macroFile = mrm->GetSelectMacro(); - bool empty_macro = (macroFile == "" || macroFile == " "); - - const char* macro = (empty_macro) ? nullptr : macroFile.c_str(); - numSelect = (empty_macro) ? -1 : numSelect; - - BeamOn(nevts, macro, numSelect); -} - -//============================================================================// - -void G4WorkerTaskRunManager::DoWork(G4int nevts) -{ - G4TaskRunManager* mrm = G4TaskRunManager::GetMasterRunManager(); - - // execute any UI commands - // ProcessUI(); - // Start this run + G4int nevts = mrm->GetNumberOfEventsToBeProcessed(); G4int numSelect = mrm->GetNumberOfSelectEvents(); G4String macroFile = mrm->GetSelectMacro(); bool empty_macro = (macroFile == "" || macroFile == " "); @@ -534,6 +531,15 @@ void G4WorkerTaskRunManager::DoWork(G4int nevts) const char* macro = (empty_macro) ? nullptr : macroFile.c_str(); numSelect = (empty_macro) ? -1 : numSelect; + if(newRun) + { + G4bool cond = ConfirmBeamOnCondition(); + if(cond) + { + ConstructScoringWorlds(); + RunInitialization(); + } + } DoEventLoop(nevts, macro, numSelect); } diff --git a/source/track/History b/source/track/History index 859d73ceea..bfa91dc4da 100644 --- a/source/track/History +++ b/source/track/History @@ -15,18 +15,28 @@ committal in the CVS repository ! ---------------------------------------------------------- * Reverse chronological order (last date on top), please * + ---------------------------------------------------------- + +- November 12, 2020 J.Madsen (track-V10-06-06) +- Added G4Profiler support. + +- July 24, 2020 G.Cosmo (track-V10-06-05) +- Fixed case of non-initialised values in G4Step. + +- July 16, 2020 G.Cosmo (track-V10-06-04) +- Minor c++11 review; code formatting and cleanup. - March 11, 2020 V.Ivanchenko (track-V10-06-03) - G4Track - do not use Velocity table, instead use GetBeta() method +- G4Track - do not use Velocity table, instead use GetBeta() method from G4DynamicParticle; expected minor speed-up - February 10, 2020 V.Ivanchenko (track-V10-06-02) - G4Track - use G4OpticalPhoton pdg code; removed static thread local +- G4Track - use G4OpticalPhoton pdg code; removed static thread local variables; slightly simplified velocity computation; removed commented code left from previous tag - January 29, 2020 V.Ivanchenko (track-V10-06-01) - G4Track - fixed Coverity reports connected with unnecessary checks +- G4Track - fixed Coverity reports connected with unnecessary checks for valid pointers to G4Step and G4DynamicParticle - December 9, 2019 B. Morgan (track-V10-06-00) diff --git a/source/track/include/G4FieldTrackUpdator.hh b/source/track/include/G4FieldTrackUpdator.hh index 39a59660cc..7e6040f509 100644 --- a/source/track/include/G4FieldTrackUpdator.hh +++ b/source/track/include/G4FieldTrackUpdator.hh @@ -23,46 +23,31 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4FieldTrackUpdator // +// Class description: // -// M. Asai - first implementation Apr/28/2006 -// -//--------------------------------------------------------------- -// -// G4FieldTrackUpdator.hh -// -//--------------------------------------------------------------- +// Utility class to create and update a G4FieldTrack object. -#ifndef G4FieldTrackUpdator_h -#define G4FieldTrackUpdator_h 1 +// Author: M.Asai, 28 April 2006 +// -------------------------------------------------------------------- +#ifndef G4FieldTrackUpdator_hh +#define G4FieldTrackUpdator_hh 1 class G4FieldTrack; class G4Track; -class G4FieldTrackUpdator +class G4FieldTrackUpdator { - private: - G4FieldTrackUpdator() {;} - ~G4FieldTrackUpdator() {;} + public: - public: - static G4FieldTrack* CreateFieldTrack(const G4Track*); - static void Update(G4FieldTrack*,const G4Track*); + static G4FieldTrack* CreateFieldTrack(const G4Track*); + static void Update(G4FieldTrack*, const G4Track*); + + private: + + G4FieldTrackUpdator() {} + ~G4FieldTrackUpdator() {} }; #endif - - - - - - - - - - - - - - - diff --git a/source/track/include/G4ForceCondition.hh b/source/track/include/G4ForceCondition.hh index f9390adb63..2c76d2fe41 100644 --- a/source/track/include/G4ForceCondition.hh +++ b/source/track/include/G4ForceCondition.hh @@ -23,47 +23,37 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ForceCondition // +// Description: // -// -//--------------------------------------------------------------- -// -// G4ForceCondition -// -// Class Description: -// This enumaration specifies possible conditions the three -// types of DoIt can be assinged by physics processes. -// -// Contact: -// Questions and comments to this code should be sent to -// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) -// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) -// -//--------------------------------------------------------------- +// This enumeration specifies possible conditions the three types of +// DoIt() can be assinged by physics processes. -#ifndef G4ForceCondition_h -#define G4ForceCondition_h 1 +// Authors: +// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) +// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) +// -------------------------------------------------------------------- +#ifndef G4ForceCondition_hh +#define G4ForceCondition_hh 1 -///////////////////// -enum G4ForceCondition -///////////////////// +enum G4ForceCondition { - InActivated, + InActivated, // This PostStepDoit is inactivated by a user - Forced, - // This PostStepDoIt is forced to invoke if particle is not a state of StopAndKill. - NotForced, - // This PostStepDoIt is not forced to invoke. - Conditionally, - // This PostStepDoIt is forced to invoke only when corresponding - // AlongStepDoIt limits the Step. - ExclusivelyForced, - // Only this PostStepDoIt (or AtRestDoIt) is exclusively forced - // to invoke - all other DoIt including AlongStepDoIts are ignored. + Forced, + // This PostStepDoIt is forced to invoke if particle is not in state of + // StopAndKill. + NotForced, + // This PostStepDoIt is not forced to invoke. + Conditionally, + // This PostStepDoIt is forced to invoke only when corresponding + // AlongStepDoIt limits the Step. + ExclusivelyForced, + // Only this PostStepDoIt (or AtRestDoIt) is exclusively forced + // to invoke - all other DoIt including AlongStepDoIts are ignored. StronglyForced - // This PostStepDoIt is really forced to invoke, anyway. + // This PostStepDoIt is really forced to invoke, anyway. }; #endif - - diff --git a/source/track/include/G4GPILSelection.hh b/source/track/include/G4GPILSelection.hh index 51dfcf2cd8..5d0b7c1e72 100644 --- a/source/track/include/G4GPILSelection.hh +++ b/source/track/include/G4GPILSelection.hh @@ -23,42 +23,30 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4GPILSelection // +// Description: // -// -//--------------------------------------------------------------- -// -// G4GPILSelection -// -// Class Description: -// This enumaration is used to control whether a AlongStepProcess -// can be a winner of the GPIL race or not. -// -// Contact: -// Questions and comments to this code should be sent to -// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) -// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) -// -//--------------------------------------------------------------- +// This enumeration is used to control whether a AlongStepProcess +// can be a winner of the GPIL race or not. -#ifndef G4GPILSelection_h -#define G4GPILSelection_h 1 +// Authors: +// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) +// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) +// -------------------------------------------------------------------- +#ifndef G4GPILSelection_hh +#define G4GPILSelection_hh 1 -///////////////////// -enum G4GPILSelection -///////////////////// +enum G4GPILSelection { - CandidateForSelection, - // This AlongStep process partecipates in the process selection + CandidateForSelection, + // This AlongStep process participates in the process selection // mechanism, i.e. it can be the winner of the GPIL race. - // (this case is default) + // (this case is the default) - NotCandidateForSelection + NotCandidateForSelection // This AlongStep process does not partecipate in the // process selection mechanism even when it limits the Step. - }; #endif - - diff --git a/source/track/include/G4ParticleChange.hh b/source/track/include/G4ParticleChange.hh index 5ad25adec8..0f2d960671 100644 --- a/source/track/include/G4ParticleChange.hh +++ b/source/track/include/G4ParticleChange.hh @@ -23,263 +23,215 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ParticleChange // +// Class description: // -// -// ------------------------------------------------------------ -// GEANT 4 class header file +// Concrete class for ParticleChange containing the results after +// invocation of a physics process. +// This includes final states of parent particle (momentum, energy, +// etc) and secondary particles generated by the interaction. +// The tracking assumes that all the values of energy and momentum +// are in global reference system, therefore all the needed Lorentz +// transformations must have been already computed when filling the +// data-members of this class. // -// -// ------------------------------------------------------------ -// Implemented for the new scheme 23 Mar. 1998 H.Kurahige -// -// Class Description -// This class is a concrete class for ParticleChange which -// has all functionality in old scheme. -//- -// This class contains the results after invocation of a physics process. -// This includes final states of parent particle (momentum, energy, -// etc) and secondary particles generated by the interaction. -// The tracking assumes that all the values of energy and -// momentum are in global reference system, therefore all the -// needed Lorentz transformations must have been already Done -// when filling the data-members of this class. -//- -// --------------------------------------------------------------- -// IMPORTANT NOTE: Although the name of the class and methods are -// "Change", what it stores (and returns in get) are the "FINAL" -// values of the Position, Momentum, etc. -// -// ------------------------------------------------------------ -// modify AddSecondary methods for "GoodForTracking" flag -// 8 June 1998 H.Kurashige -// Add Track weight 12 Nov. 1998 H.Kurashige -// Add Get/SetMomentumDirectionChange 6 Feb. 1999 H.Kurashige -// Add Get/SetDynamicMass 5 Oct. 1999 H.Kurashige -// Add Get/SetDynamicCharge 5 Oct. 1999 H.Kurashige -// Rename SetXXX methods to ProposeXXX DynamicCharge Oct. 2005 H.Kurashige -// Add get/ProposeMagneticMoment Mar 2007 H.Kurashige -// Fix treatment of weight Mar 2007 H.Kurashige -// Add Get/ProposeVelocity Apr 2011 H.Kurashige -// ------------------------------------------------------------- - -#ifndef G4ParticleChange_h -#define G4ParticleChange_h 1 +// IMPORTANT NOTE: Despite the name, what this class stores/returns +// through its methods, are the "FINAL" values of the Position, +// Momentum, etc. + +// Author: Hisaya Kurashige, 23 March 1998 +// -------------------------------------------------------------------- +#ifndef G4ParticleChange_hh +#define G4ParticleChange_hh 1 #include "globals.hh" #include "G4ios.hh" #include "G4ThreeVector.hh" #include "G4ThreeVector.hh" -class G4DynamicParticle; #include "G4VParticleChange.hh" -class G4ParticleChange: public G4VParticleChange -{ +class G4DynamicParticle; + +class G4ParticleChange : public G4VParticleChange +{ public: - // default constructor + G4ParticleChange(); -// G4ParticleChange(G4bool useEB); + // Default constructor - // destructor virtual ~G4ParticleChange(); + // Destructor - protected: - // hide copy constructor and assignment operaor as protected - G4ParticleChange(const G4ParticleChange &right); - G4ParticleChange & operator=(const G4ParticleChange &right); + G4bool operator==(const G4ParticleChange& right) const; + G4bool operator!=(const G4ParticleChange& right) const; + // Equality operators - public: - // equal/unequal operator - G4bool operator==(const G4ParticleChange &right) const; - G4bool operator!=(const G4ParticleChange &right) const; + // --- the following methods are for updating G4Step ----- + // Return the pointer to G4Step after updating the Step information + // by using final state of the track given by a physics process - public: // with description - // ---------------------------------------------------- - // --- the following methods are for updating G4Step ----- - // Return the pointer to the G4Step after updating the Step information - // by using final state information of the track given by a physics - // process virtual G4Step* UpdateStepForAlongStep(G4Step* Step); - // A physics process gives the final state of the particle - // relative to the initial state at the beginning of the Step, - // i.e., based on information of G4Track (or equivalently - // the PreStepPoint) - // In this method, the differences (delta) between these two states - // are calculated, and are accumulated in PostStepPoint. - // Take note that the return type of GetMomentumChange is a - // pointer to G4ParticleMometum. Also it is a normalized - // momentum vector. + // A physics process gives the final state of the particle + // relative to the initial state at the beginning of the Step, + // i.e., based on information of G4Track (or equivalently + // the PreStepPoint). + // In this method, the differences (delta) between these two states + // are calculated, and are accumulated in PostStepPoint. + // Take note that the return type of GetMomentumChange() is a + // pointer to G4ParticleMomentum. Also it is a normalized + // momentum vector + virtual G4Step* UpdateStepForAtRest(G4Step* Step); virtual G4Step* UpdateStepForPostStep(G4Step* Step); - // A physics process gives the final state of the particle - // based on information of G4Track (or equivalently the PreStepPoint) - + // A physics process gives the final state of the particle + // based on information of G4Track (or equivalently the PreStepPoint) + virtual void Initialize(const G4Track&); - // Initialize all propoerties by using G4Track information + // Initialize all propoerties by using G4Track information - protected: // with description - G4Step* UpdateStepInfo(G4Step* Step); - // Update the G4Step specific attributes - // (i.e. SteppingControl, LocalEnergyDeposit, and TrueStepLength) - - public: // with description - - // ---------------------------------------------------- - //--- methods to keep information of the final state-- - // IMPORTANT NOTE: - // These ProposeXXX methods stores (and returns in GetXXX methods) - // the "FINAL" values of the Position, Momentum, etc. + // --- methods to keep information of the final state --- + // + // The ProposeXXX methods store (and return in GetXXX methods) + // the "FINAL" values of the Position, Momentum, etc. const G4ThreeVector* GetMomentumDirection() const; void ProposeMomentumDirection(G4double Px, G4double Py, G4double Pz); void ProposeMomentumDirection(const G4ThreeVector& Pfinal); - // Get/Propose the MomentumDirection vector: it is the final momentum direction. + // Get/Propose the MomentumDirection vector: it is the final momentum + // direction const G4ThreeVector* GetPolarization() const; - void ProposePolarization(G4double Px, G4double Py, G4double Pz); - void ProposePolarization(const G4ThreeVector& finalPoralization); - // Get/Propose the final Polarization vector. + void ProposePolarization(G4double Px, G4double Py, G4double Pz); + void ProposePolarization(const G4ThreeVector& finalPoralization); + // Get/Propose the final Polarization vector G4double GetEnergy() const; void ProposeEnergy(G4double finalEnergy); - // Get/Propose the final kinetic energy of the current particle. + // Get/Propose the final kinetic energy of the current particle G4double GetVelocity() const; void ProposeVelocity(G4double finalVelocity); - // Get/Propose the final velocity of the current particle. + // Get/Propose the final velocity of the current particle G4double GetProperTime() const; void ProposeProperTime(G4double finalProperTime); - // Get/Propose th final ProperTime + // Get/Propose the final ProperTime const G4ThreeVector* GetPosition() const; void ProposePosition(G4double x, G4double y, G4double z); void ProposePosition(const G4ThreeVector& finalPosition); - // Get/Propose the final position of the current particle. + // Get/Propose the final position of the current particle - void ProposeGlobalTime(G4double t); - void ProposeLocalTime(G4double t); - // Get/Propose the final global/local Time - // NOTE: DO NOT INVOKE both methods in a step - // Each method affects both local and global time + void ProposeGlobalTime(G4double t); + void ProposeLocalTime(G4double t); + // Get/Propose the final global/local Time. + // NOTE: DO NOT INVOKE both methods in a step + // Each method affects both local and global time + + G4double GetGlobalTime(G4double timeDelay = 0.0) const; + G4double GetLocalTime(G4double timeDelay = 0.0) const; + // Convert the time delay to the glocbal/local time. + // Can get the final global/local time without argument - G4double GetGlobalTime(G4double timeDelay=0.0) const; - G4double GetLocalTime(G4double timeDelay=0.0) const; - // Convert the time delay to the glocbal/local time. - // Can get the final global/local Time without argument - G4double GetMass() const; void ProposeMass(G4double finalMass); - // Get/Propose the final dynamical Mass in G4DynamicParticle + // Get/Propose the final dynamical mass in G4DynamicParticle G4double GetCharge() const; void ProposeCharge(G4double finalCharge); - // Get/Propose the final dynamical Charge in G4DynamicParticle + // Get/Propose the final dynamical charge in G4DynamicParticle G4double GetMagneticMoment() const; void ProposeMagneticMoment(G4double finalMagneticMoment); - // Get/Propose the final MagneticMoment in G4DynamicParticle - + // Get/Propose the final MagneticMoment in G4DynamicParticle + G4ThreeVector GetGlobalPosition(const G4ThreeVector& displacement) const; - // Convert the position displacement to the global position. + // Convert the position displacement to the global position - G4ThreeVector CalcMomentum(G4double energy, - G4ThreeVector direction, - G4double mass ) const; - // Calculate momentum by using Energy, Momentum Direction, and Mass + G4ThreeVector CalcMomentum(G4double energy, G4ThreeVector direction, + G4double mass) const; + // Calculate momentum by using Energy, Momentum Direction, and Mass + // --- methods for adding secondaries --- - - // ---------------------------------------------------- - // --- methods for adding secondaries void AddSecondary(G4Track* aSecondary); - // Add a secondary particle to theListOfSecondaries. + // Add a secondary particle to theListOfSecondaries void AddSecondary(G4DynamicParticle* aSecondary, - G4bool IsGoodForTracking = false ); - // Add a secondary particle to theListOfSecondaries. - // position and time are same as thePositionChange and theTimeChange + G4bool IsGoodForTracking = false); + // Add a secondary particle to theListOfSecondaries. + // Position and time are same as thePositionChange and theTimeChange - void AddSecondary(G4DynamicParticle* aSecondary, - G4ThreeVector position, - G4bool IsGoodForTracking = false ); - // Add a secondary particle to theListOfSecondaries. - // global time are same as theTimeChange and theTimeChange + void AddSecondary(G4DynamicParticle* aSecondary, G4ThreeVector position, + G4bool IsGoodForTracking = false); + // Add a secondary particle to theListOfSecondaries. + // Global time are same as theTimeChange and theTimeChange - void AddSecondary(G4DynamicParticle* aSecondary, - G4double time, - G4bool IsGoodForTracking = false ); - // Add a secondary particle to theListOfSecondaries. - // position and are same as thePositionChange - // ---------------------------------------------------- + void AddSecondary(G4DynamicParticle* aSecondary, G4double time, + G4bool IsGoodForTracking = false); + // Add a secondary particle to theListOfSecondaries. + // Position and are same as thePositionChange + + // --- Dump and debug methods --- - public: virtual void DumpInfo() const; + virtual G4bool CheckIt(const G4Track&); + protected: + + G4ParticleChange(const G4ParticleChange& right); + G4ParticleChange& operator=(const G4ParticleChange& right); + // Hidden copy constructor and assignment operator + + G4Step* UpdateStepInfo(G4Step* Step); + // Update the G4Step specific attributes + // (i.e. SteppingControl, LocalEnergyDeposit, and TrueStepLength) + G4ThreeVector theMomentumDirectionChange; - // It is the vector containing the final momentum direction - // after the invoked process. The application of the change - // of the momentum direction of the particle is not Done here. - // The responsibility to apply the change is up the entity - // which invoked the process. + // It is the vector containing the final momentum direction + // after the invoked process. The application of the change + // of the momentum direction of the particle is not done here. + // The responsibility to apply the change is up to the entity + // which invoked the process G4ThreeVector thePolarizationChange; - // The changed (final) polarization of a given track - - G4double theEnergyChange; - // The final kinetic energy of the current track - - G4double theVelocityChange; - G4bool isVelocityChanged; - // The final velocity of the current track + // The changed (final) polarization of a given track - G4ThreeVector thePositionChange; - // The changed (final) position of a given track - - G4double theGlobalTime0; - // The global time at Initial. - G4double theLocalTime0; - // The local time at Initial. + G4double theEnergyChange = 0.0; + // The final kinetic energy of the current track - G4double theTimeChange; - // The change of local time of a given particle. - - G4double theProperTimeChange; - // The changed (final) proper time of a given track - - G4double theMassChange; - // The Changed (final) mass of a given track + G4double theVelocityChange = 0.0; + G4bool isVelocityChanged = false; + // The final velocity of the current track - G4double theChargeChange; - // The Changed (final) charge of a given track - - G4double theMagneticMomentChange; - // The Changed (final) MagneticMoment of a given track - - const G4Track* theCurrentTrack; - - public: - // for Debug - virtual G4bool CheckIt(const G4Track&); + G4ThreeVector thePositionChange; + // The changed (final) position of a given track + + G4double theGlobalTime0 = 0.0; + // The global time at Initial + G4double theLocalTime0 = 0.0; + // The local time at Initial + + G4double theTimeChange = 0.0; + // The change of local time of a given particle + + G4double theProperTimeChange = 0.0; + // The changed (final) proper time of a given track + + G4double theMassChange = 0.0; + // The Changed (final) mass of a given track + + G4double theChargeChange = 0.0; + // The Changed (final) charge of a given track + + G4double theMagneticMomentChange = 0.0; + // The Changed (final) MagneticMoment of a given track + + const G4Track* theCurrentTrack = nullptr; }; #include "G4ParticleChange.icc" #endif - - - - - - - - - - - - - - - - diff --git a/source/track/include/G4ParticleChange.icc b/source/track/include/G4ParticleChange.icc index 850078ce91..223f8cc6a3 100644 --- a/source/track/include/G4ParticleChange.icc +++ b/source/track/include/G4ParticleChange.icc @@ -23,195 +23,151 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ParticleChange inline methods implementation // -// -// -inline - G4Step* G4ParticleChange::UpdateStepInfo(G4Step* pStep) +// Author: Hisaya Kurashige, 23 March 1998 +// -------------------------------------------------------------------- + +inline G4Step* G4ParticleChange::UpdateStepInfo(G4Step* pStep) { return G4VParticleChange::UpdateStepInfo(pStep); } -inline - G4double G4ParticleChange::GetEnergy() const -{ - return theEnergyChange; -} +inline G4double G4ParticleChange::GetEnergy() const { return theEnergyChange; } -inline - void G4ParticleChange::ProposeEnergy(G4double finalEnergy) +inline void G4ParticleChange::ProposeEnergy(G4double finalEnergy) { theEnergyChange = finalEnergy; } -inline - G4double G4ParticleChange::GetVelocity() const +inline G4double G4ParticleChange::GetVelocity() const { - return theVelocityChange; + return theVelocityChange; } -inline - void G4ParticleChange::ProposeVelocity(G4double finalVelocity) +inline void G4ParticleChange::ProposeVelocity(G4double finalVelocity) { - theVelocityChange = finalVelocity; - isVelocityChanged = true; + theVelocityChange = finalVelocity; + isVelocityChanged = true; } -inline - const G4ThreeVector* G4ParticleChange::GetMomentumDirection() const +inline const G4ThreeVector* G4ParticleChange::GetMomentumDirection() const { return &theMomentumDirectionChange; } -inline - void G4ParticleChange::ProposeMomentumDirection( - G4double Px, - G4double Py, - G4double Pz ) +inline void G4ParticleChange::ProposeMomentumDirection(G4double Px, G4double Py, + G4double Pz) { theMomentumDirectionChange.setX(Px); theMomentumDirectionChange.setY(Py); theMomentumDirectionChange.setZ(Pz); } -inline - void G4ParticleChange::ProposeMomentumDirection(const G4ThreeVector& P) +inline void G4ParticleChange::ProposeMomentumDirection(const G4ThreeVector& P) { theMomentumDirectionChange = P; } - -inline - const G4ThreeVector* G4ParticleChange::GetPolarization() const +inline const G4ThreeVector* G4ParticleChange::GetPolarization() const { return &thePolarizationChange; } -inline - void G4ParticleChange::ProposePolarization( const G4ThreeVector& finalPoralization) +inline void G4ParticleChange::ProposePolarization( + const G4ThreeVector& finalPoralization) { thePolarizationChange = finalPoralization; } -inline - void G4ParticleChange::ProposePolarization( - G4double Px, - G4double Py, - G4double Pz ) +inline void G4ParticleChange::ProposePolarization(G4double Px, G4double Py, + G4double Pz) { thePolarizationChange.setX(Px); thePolarizationChange.setY(Py); thePolarizationChange.setZ(Pz); } -inline - const G4ThreeVector* G4ParticleChange::GetPosition() const +inline const G4ThreeVector* G4ParticleChange::GetPosition() const { return &thePositionChange; } -inline - void G4ParticleChange::ProposePosition(const G4ThreeVector& finalPosition) +inline void G4ParticleChange::ProposePosition( + const G4ThreeVector& finalPosition) { - thePositionChange= finalPosition; + thePositionChange = finalPosition; } -inline - void G4ParticleChange::ProposePosition(G4double x,G4double y, G4double z) +inline void G4ParticleChange::ProposePosition(G4double x, G4double y, + G4double z) { thePositionChange.setX(x); thePositionChange.setY(y); thePositionChange.setZ(z); } -inline - G4double G4ParticleChange::GetProperTime() const +inline G4double G4ParticleChange::GetProperTime() const { - return theProperTimeChange; + return theProperTimeChange; } -inline - void G4ParticleChange::ProposeProperTime(G4double tau) +inline void G4ParticleChange::ProposeProperTime(G4double tau) { theProperTimeChange = tau; } -inline - G4ThreeVector G4ParticleChange::GetGlobalPosition(const G4ThreeVector& displacement) const +inline G4ThreeVector G4ParticleChange::GetGlobalPosition( + const G4ThreeVector& displacement) const { return thePositionChange + displacement; } -inline - void G4ParticleChange::ProposeGlobalTime(G4double t) +inline void G4ParticleChange::ProposeGlobalTime(G4double t) { - theTimeChange = (t-theGlobalTime0) + theLocalTime0; -} - -inline - G4double G4ParticleChange::GetGlobalTime(G4double timeDelay) const -{ - // Convert the time delay to the global time. - return theGlobalTime0 + (theTimeChange-theLocalTime0) + timeDelay; + theTimeChange = (t - theGlobalTime0) + theLocalTime0; } -inline - void G4ParticleChange::ProposeLocalTime(G4double t) +inline G4double G4ParticleChange::GetGlobalTime(G4double timeDelay) const +{ + // convert the time delay to the global time + return theGlobalTime0 + (theTimeChange - theLocalTime0) + timeDelay; +} + +inline void G4ParticleChange::ProposeLocalTime(G4double t) { theTimeChange = t; } - -inline - G4double G4ParticleChange::GetLocalTime(G4double timeDelay) const + +inline G4double G4ParticleChange::GetLocalTime(G4double timeDelay) const { - // Convert the time delay to the local time. + // convert the time delay to the local time return theTimeChange + timeDelay; } -inline - G4double G4ParticleChange::GetMass() const -{ - return theMassChange; -} +inline G4double G4ParticleChange::GetMass() const { return theMassChange; } -inline - void G4ParticleChange::ProposeMass(G4double t) -{ - theMassChange = t; -} +inline void G4ParticleChange::ProposeMass(G4double t) { theMassChange = t; } -inline - G4double G4ParticleChange::GetCharge() const -{ - return theChargeChange; -} +inline G4double G4ParticleChange::GetCharge() const { return theChargeChange; } -inline - void G4ParticleChange::ProposeCharge(G4double t) -{ - theChargeChange = t; -} +inline void G4ParticleChange::ProposeCharge(G4double t) { theChargeChange = t; } - -inline - G4double G4ParticleChange::GetMagneticMoment() const +inline G4double G4ParticleChange::GetMagneticMoment() const { return theMagneticMomentChange; } - -inline - void G4ParticleChange::ProposeMagneticMoment(G4double finalMagneticMoment) + +inline void G4ParticleChange::ProposeMagneticMoment( + G4double finalMagneticMoment) { theMagneticMomentChange = finalMagneticMoment; } - -inline - G4ThreeVector G4ParticleChange::CalcMomentum(G4double energy, - G4ThreeVector direction, - G4double mass - ) const -{ - G4double tMomentum = std::sqrt(energy*energy + 2*energy*mass); - return direction*tMomentum; -} +inline G4ThreeVector G4ParticleChange::CalcMomentum(G4double energy, + G4ThreeVector direction, + G4double mass) const +{ + G4double tMomentum = std::sqrt(energy * energy + 2 * energy * mass); + return direction * tMomentum; +} diff --git a/source/track/include/G4ParticleChangeForDecay.hh b/source/track/include/G4ParticleChangeForDecay.hh index 7d879474bb..365780d29a 100644 --- a/source/track/include/G4ParticleChangeForDecay.hh +++ b/source/track/include/G4ParticleChangeForDecay.hh @@ -23,147 +23,139 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ParticleChangeForDecay // +// Class description: +// +// Concrete class for ParticleChange which has functionality for G4Decay. +// +// This class contains the results after invocation of the decay process. +// This includes secondary particles generated by the interaction. -// -// -// ------------------------------------------------------------ -// GEANT 4 class header file -// -// -// ------------------------------------------------------------ -// Implemented for the new scheme 23 Mar. 1998 H.Kurahige -// -// Class Description -// This class is a concrete class for ParticleChange which -// has functionality for G4Decay. -// -// This class contains the results after invocation of the decay process. -// This includes secondary particles generated by the interaction. -// ------------------------------------------------------------ -#ifndef G4ParticleChangeForDecay_h -#define G4ParticleChangeForDecay_h 1 +// Author: Hisaya Kurashige, 23 March 1998 +// -------------------------------------------------------------------- +#ifndef G4ParticleChangeForDecay_hh +#define G4ParticleChangeForDecay_hh 1 #include "globals.hh" #include "G4ios.hh" #include "G4ThreeVector.hh" -class G4DynamicParticle; #include "G4VParticleChange.hh" -class G4ParticleChangeForDecay: public G4VParticleChange +class G4DynamicParticle; + +class G4ParticleChangeForDecay : public G4VParticleChange { - public: - // default constructor - G4ParticleChangeForDecay(); - - // destructor - virtual ~G4ParticleChangeForDecay(); - - protected: - // hide copy constructor and assignment operaor as protected - G4ParticleChangeForDecay(const G4ParticleChangeForDecay &right); - G4ParticleChangeForDecay & operator=(const G4ParticleChangeForDecay &right); - public: - // equal/unequal operator - G4bool operator==(const G4ParticleChangeForDecay &right) const; - G4bool operator!=(const G4ParticleChangeForDecay &right) const; - public: // with description - // ---------------------------------------------------- - // --- the following methods are for updating G4Step ----- - // Return the pointer to the G4Step after updating the Step information - // by using final state information of the track given by a physics - // process - - // !!! No effect for AlongSteyp - // virtual G4Step* UpdateStepForAlongStep(G4Step* Step); + G4ParticleChangeForDecay(); + // Default constructor + + virtual ~G4ParticleChangeForDecay(); + // Destructor + + G4bool operator==(const G4ParticleChangeForDecay& right) const; + G4bool operator!=(const G4ParticleChangeForDecay& right) const; + // Equality operators + + // --- the following methods are for updating G4Step ----- + // Return the pointer to the G4Step after updating the step information + // by using final state information of the track given by a physics process + // !!! No effect for AlongSteyp virtual G4Step* UpdateStepForAtRest(G4Step* Step); virtual G4Step* UpdateStepForPostStep(G4Step* Step); - + virtual void Initialize(const G4Track&); - // Initialize all propoerties by using G4Track information + // Initialize all properties by using G4Track information - void ProposeGlobalTime(G4double t); - void ProposeLocalTime(G4double t); - // Get/Propose the final global/local Time - // NOTE: DO NOT INVOKE both methods in a step - // Each method affects both local and global time + void ProposeGlobalTime(G4double t); + void ProposeLocalTime(G4double t); + // Get/Propose the final global/local time + // NOTE: DO NOT INVOKE both methods in a step + // Each method affects both local and global time - G4double GetGlobalTime(G4double timeDelay=0.0) const; - G4double GetLocalTime(G4double timeDelay=0.0) const; - // Convert the time delay to the glocbal/local time. - // Can get the final global/local Time without argument + G4double GetGlobalTime(G4double timeDelay = 0.0) const; + G4double GetLocalTime(G4double timeDelay = 0.0) const; + // Convert the time delay to the glocbal/local time. + // Can get the final global/local time without argument const G4ThreeVector* GetPolarization() const; - void ProposePolarization(G4double Px, G4double Py, G4double Pz); - void ProposePolarization(const G4ThreeVector& finalPoralization); - // Get/Propose the final Polarization vector. + void ProposePolarization(G4double Px, G4double Py, G4double Pz); + void ProposePolarization(const G4ThreeVector& finalPoralization); + // Get/Propose the final Polarization vector + + // --- Dump and debug methods --- - public: virtual void DumpInfo() const; - protected: - G4double theGlobalTime0; - // The global time at Initial. - G4double theLocalTime0; - // The local time at Initial. + virtual G4bool CheckIt(const G4Track&); - G4double theTimeChange; - // The change of local time of a given particle. + protected: + + G4ParticleChangeForDecay(const G4ParticleChangeForDecay& right); + G4ParticleChangeForDecay& operator=(const G4ParticleChangeForDecay& right); + // Hidden copy constructor and assignment operator + + G4double theGlobalTime0 = 0.0; + // The global time at Initial + G4double theLocalTime0 = 0.0; + // The local time at Initial + + G4double theTimeChange = 0.0; + // The change of local time of a given particle G4ThreeVector thePolarizationChange; - // The changed (final) polarization of a given track - - public: - // for Debug - virtual G4bool CheckIt(const G4Track&); + // The changed (final) polarization of a given track }; -inline - void G4ParticleChangeForDecay::ProposeGlobalTime(G4double t) -{ - theTimeChange = (t-theGlobalTime0) + theLocalTime0; -} - +// ---------------------- +// Inline methods +// ---------------------- + inline - G4double G4ParticleChangeForDecay::GetGlobalTime(G4double timeDelay) const +void G4ParticleChangeForDecay::ProposeGlobalTime(G4double t) { - // Convert the time delay to the global time. - return theGlobalTime0 + (theTimeChange-theLocalTime0) + timeDelay; + theTimeChange = (t - theGlobalTime0) + theLocalTime0; } -inline - void G4ParticleChangeForDecay::ProposeLocalTime(G4double t) +inline +G4double G4ParticleChangeForDecay::GetGlobalTime(G4double timeDelay) const +{ + // Convert the time delay to the global time. + return theGlobalTime0 + (theTimeChange - theLocalTime0) + timeDelay; +} + +inline +void G4ParticleChangeForDecay::ProposeLocalTime(G4double t) { theTimeChange = t; } - + inline - G4double G4ParticleChangeForDecay::GetLocalTime(G4double timeDelay) const +G4double G4ParticleChangeForDecay::GetLocalTime(G4double timeDelay) const { // Convert the time delay to the local time. return theTimeChange + timeDelay; } inline - const G4ThreeVector* G4ParticleChangeForDecay::GetPolarization() const +const G4ThreeVector* G4ParticleChangeForDecay::GetPolarization() const { return &thePolarizationChange; } inline - void G4ParticleChangeForDecay::ProposePolarization(const G4ThreeVector& finalPoralization) +void G4ParticleChangeForDecay::ProposePolarization( + const G4ThreeVector& finalPoralization) { thePolarizationChange = finalPoralization; } inline - void G4ParticleChangeForDecay::ProposePolarization( - G4double Px, - G4double Py, - G4double Pz ) +void G4ParticleChangeForDecay::ProposePolarization(G4double Px, + G4double Py, + G4double Pz) { thePolarizationChange.setX(Px); thePolarizationChange.setY(Py); diff --git a/source/track/include/G4ParticleChangeForGamma.hh b/source/track/include/G4ParticleChangeForGamma.hh index c323ec3b47..66cad17506 100644 --- a/source/track/include/G4ParticleChangeForGamma.hh +++ b/source/track/include/G4ParticleChangeForGamma.hh @@ -23,30 +23,17 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ParticleChangeForGamma // +// Class description: // -// -// ------------------------------------------------------------ -// GEANT 4 class header file -// -// -// ------------------------------------------------------------ -// 15 April 2005 V.Ivanchenko for gamma EM processes -// -// Modified: -// 30.05.05 : add UpdateStepForAtRest (V.Ivanchenko) -// 04.12.05 : apply UpdateStepForPostStep in any case (mma) -// 26.08.06 : Add->Set polarization; -// add const method to access track; -// add weight modification (V.Ivanchenko) -// -// ------------------------------------------------------------ -// -// Class Description -// This class is a concrete class for ParticleChange for gamma processes -// -#ifndef G4ParticleChangeForGamma_h -#define G4ParticleChangeForGamma_h 1 +// Concrete class for ParticleChange for gamma processes. + +// Author: Hisaya Kurashige, 23 March 1998 +// Revision: Vladimir Ivantchenko, 15 April 2005 +// -------------------------------------------------------------------- +#ifndef G4ParticleChangeForGamma_hh +#define G4ParticleChangeForGamma_hh 1 #include "globals.hh" #include "G4ios.hh" @@ -54,140 +41,151 @@ class G4DynamicParticle; -class G4ParticleChangeForGamma: public G4VParticleChange +class G4ParticleChangeForGamma : public G4VParticleChange { -public: - // default constructor - G4ParticleChangeForGamma(); + public: - // destructor - virtual ~G4ParticleChangeForGamma(); + G4ParticleChangeForGamma(); + // Default constructor + + virtual ~G4ParticleChangeForGamma(); + // Destructor - // with description - // ---------------------------------------------------- // --- the following methods are for updating G4Step ----- - G4Step* UpdateStepForAtRest(G4Step* pStep); - G4Step* UpdateStepForPostStep(G4Step* Step); - // A physics process gives the final state of the particle - // based on information of G4Track + G4Step* UpdateStepForAtRest(G4Step* pStep); + G4Step* UpdateStepForPostStep(G4Step* Step); + // A physics process gives the final state of the particle + // based on information of G4Track - inline void InitializeForPostStep(const G4Track&); - //Initialize all propoerties by using G4Track information + inline void InitializeForPostStep(const G4Track&); + // Initialize all properties by using G4Track information - void AddSecondary(G4DynamicParticle* aParticle); - // Add next secondary + void AddSecondary(G4DynamicParticle* aParticle); + // Add next secondary - inline G4double GetProposedKineticEnergy() const; - inline void SetProposedKineticEnergy(G4double proposedKinEnergy); - // Get/Set the final kinetic energy of the current particle. + inline G4double GetProposedKineticEnergy() const; + inline void SetProposedKineticEnergy(G4double proposedKinEnergy); + // Get/Set the final kinetic energy of the current particle - inline const G4ThreeVector& GetProposedMomentumDirection() const; - inline void ProposeMomentumDirection(G4double Px, G4double Py, G4double Pz); - inline void ProposeMomentumDirection(const G4ThreeVector& Pfinal); - // Get/Propose the MomentumDirection vector: it is the final momentum direction. + inline const G4ThreeVector& GetProposedMomentumDirection() const; + inline void ProposeMomentumDirection(G4double Px, G4double Py, G4double Pz); + inline void ProposeMomentumDirection(const G4ThreeVector& Pfinal); + // Get/Propose the MomentumDirection vector: it is the final momentum + // direction - inline const G4ThreeVector& GetProposedPolarization() const; - inline void ProposePolarization(const G4ThreeVector& dir); - inline void ProposePolarization(G4double Px, G4double Py, G4double Pz); + inline const G4ThreeVector& GetProposedPolarization() const; + inline void ProposePolarization(const G4ThreeVector& dir); + inline void ProposePolarization(G4double Px, G4double Py, G4double Pz); - inline const G4Track* GetCurrentTrack() const; + inline const G4Track* GetCurrentTrack() const; - virtual void DumpInfo() const; + virtual void DumpInfo() const; - // for Debug - virtual G4bool CheckIt(const G4Track&); + virtual G4bool CheckIt(const G4Track&); -protected: - // hide copy constructor and assignment operaor as protected - G4ParticleChangeForGamma(const G4ParticleChangeForGamma &right); - G4ParticleChangeForGamma & operator=(const G4ParticleChangeForGamma &right); + protected: -private: + G4ParticleChangeForGamma(const G4ParticleChangeForGamma& right); + G4ParticleChangeForGamma& operator=(const G4ParticleChangeForGamma& right); + // Hidden copy constructor and assignment operator - const G4Track* currentTrack; - // The pointer to G4Track + private: - G4double proposedKinEnergy; - // The final kinetic energy of the current particle. + const G4Track* currentTrack = nullptr; + // The pointer to G4Track - G4ThreeVector proposedMomentumDirection; - // The final momentum direction of the current particle. + G4double proposedKinEnergy = 0.0; + // The final kinetic energy of the current particle - G4ThreeVector proposedPolarization; - // The final polarization of the current particle. + G4ThreeVector proposedMomentumDirection; + // The final momentum direction of the current particle + + G4ThreeVector proposedPolarization; + // The final polarization of the current particle }; -// ------------------------------------------------------------ +// ---------------------- +// Inline methods +// ---------------------- -inline G4double G4ParticleChangeForGamma::GetProposedKineticEnergy() const +inline +G4double G4ParticleChangeForGamma::GetProposedKineticEnergy() const { return proposedKinEnergy; } -inline void G4ParticleChangeForGamma::SetProposedKineticEnergy(G4double energy) +inline +void G4ParticleChangeForGamma::SetProposedKineticEnergy(G4double energy) { proposedKinEnergy = energy; } inline - const G4ThreeVector& G4ParticleChangeForGamma::GetProposedMomentumDirection() const +const G4ThreeVector& G4ParticleChangeForGamma:: +GetProposedMomentumDirection() const { return proposedMomentumDirection; } inline - void G4ParticleChangeForGamma::ProposeMomentumDirection(const G4ThreeVector& dir) +void G4ParticleChangeForGamma:: +ProposeMomentumDirection(const G4ThreeVector& dir) { proposedMomentumDirection = dir; } inline - void G4ParticleChangeForGamma::ProposeMomentumDirection(G4double Px, G4double Py, G4double Pz) +void G4ParticleChangeForGamma::ProposeMomentumDirection(G4double Px, + G4double Py, + G4double Pz) { proposedMomentumDirection.setX(Px); proposedMomentumDirection.setY(Py); proposedMomentumDirection.setZ(Pz); } -inline const G4Track* G4ParticleChangeForGamma::GetCurrentTrack() const +inline +const G4Track* G4ParticleChangeForGamma::GetCurrentTrack() const { return currentTrack; } inline - const G4ThreeVector& G4ParticleChangeForGamma::GetProposedPolarization() const +const G4ThreeVector& G4ParticleChangeForGamma::GetProposedPolarization() const { return proposedPolarization; } inline - void G4ParticleChangeForGamma::ProposePolarization(const G4ThreeVector& dir) +void G4ParticleChangeForGamma::ProposePolarization(const G4ThreeVector& dir) { proposedPolarization = dir; } inline - void G4ParticleChangeForGamma::ProposePolarization(G4double Px, G4double Py, G4double Pz) +void G4ParticleChangeForGamma::ProposePolarization(G4double Px, + G4double Py, + G4double Pz) { proposedPolarization.setX(Px); proposedPolarization.setY(Py); proposedPolarization.setZ(Pz); } -inline void G4ParticleChangeForGamma::InitializeForPostStep(const G4Track& track) +inline +void G4ParticleChangeForGamma::InitializeForPostStep(const G4Track& track) { - theStatusChange = track.GetTrackStatus(); - theLocalEnergyDeposit = 0.0; + theStatusChange = track.GetTrackStatus(); + theLocalEnergyDeposit = 0.0; theNonIonizingEnergyDeposit = 0.0; InitializeSecondaries(track); - theParentWeight = track.GetWeight(); - isParentWeightProposed = false; - proposedKinEnergy = track.GetKineticEnergy(); + theParentWeight = track.GetWeight(); + isParentWeightProposed = false; + proposedKinEnergy = track.GetKineticEnergy(); proposedMomentumDirection = track.GetMomentumDirection(); - proposedPolarization = track.GetPolarization(); - currentTrack = &track; + proposedPolarization = track.GetPolarization(); + currentTrack = &track; } #endif - diff --git a/source/track/include/G4ParticleChangeForLoss.hh b/source/track/include/G4ParticleChangeForLoss.hh index 167e753fe7..2a0c24a076 100644 --- a/source/track/include/G4ParticleChangeForLoss.hh +++ b/source/track/include/G4ParticleChangeForLoss.hh @@ -23,32 +23,17 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ParticleChangeForLoss // +// Class description: // -// -// ------------------------------------------------------------ -// GEANT 4 class header file -// -// -// ------------------------------------------------------------ -// Implemented for the new scheme 23 Mar. 1998 H.Kurahige -// -// Modified: -// 16.01.04 V.Ivanchenko update for model variant of energy loss -// 15.04.05 V.Ivanchenko inline update methods -// 30.01.06 V.Ivanchenko add ProposedMomentumDirection for AlongStep -// and ProposeWeight for PostStep -// 07.06.06 V.Ivanchenko RemoveProposedMomentumDirection from AlongStep -// 28.08.06 V.Ivanchenko Added access to current track and polarizaion -// 17.06.09 V.Ivanchenko Added SetLowEnergyLimit method -// -// ------------------------------------------------------------ -// -// Class Description -// This class is a concrete class for ParticleChange for EnergyLoss -// -#ifndef G4ParticleChangeForLoss_h -#define G4ParticleChangeForLoss_h 1 +// Concrete class for ParticleChange for EnergyLoss. + +// Author: Hisaya Kurashige, 23 March 1998 +// Revision: Vladimir Ivantchenko, 16 January 2004 +// -------------------------------------------------------------------- +#ifndef G4ParticleChangeForLoss_hh +#define G4ParticleChangeForLoss_hh 1 #include "globals.hh" #include "G4ios.hh" @@ -56,223 +41,223 @@ class G4DynamicParticle; -class G4ParticleChangeForLoss: public G4VParticleChange +class G4ParticleChangeForLoss : public G4VParticleChange { -public: - // default constructor - G4ParticleChangeForLoss(); + public: - // destructor - virtual ~G4ParticleChangeForLoss(); + G4ParticleChangeForLoss(); + // Default constructor + + virtual ~G4ParticleChangeForLoss(); + // Destructor - // with description - // ---------------------------------------------------- // --- the following methods are for updating G4Step ----- - G4Step* UpdateStepForAlongStep(G4Step* Step); - G4Step* UpdateStepForPostStep(G4Step* Step); - // A physics process gives the final state of the particle - // based on information of G4Track + G4Step* UpdateStepForAlongStep(G4Step* Step); + G4Step* UpdateStepForPostStep(G4Step* Step); + // A physics process gives the final state of the particle + // based on information of G4Track - void InitializeForAlongStep(const G4Track&); - void InitializeForPostStep(const G4Track&); - //Initialize all propoerties by using G4Track information + void InitializeForAlongStep(const G4Track&); + void InitializeForPostStep(const G4Track&); + // Initialize all properties by using G4Track information - // void AddSecondary(G4DynamicParticle* aParticle); - // Add next secondary + inline G4double GetProposedCharge() const; + inline void SetProposedCharge(G4double theCharge); + // Get/Set theCharge - inline G4double GetProposedCharge() const; - inline void SetProposedCharge(G4double theCharge); - // Get/Set theCharge + inline G4double GetCharge() const; + inline void ProposeCharge(G4double finalCharge); + // Get/Propose the final dynamical charge in G4DynamicParticle - inline G4double GetCharge() const; - inline void ProposeCharge(G4double finalCharge); - // Get/Propose the final dynamical Charge in G4DynamicParticle + inline G4double GetProposedKineticEnergy() const; + inline void SetProposedKineticEnergy(G4double proposedKinEnergy); + // Get/Set the final kinetic energy of the current particle - inline G4double GetProposedKineticEnergy() const; - inline void SetProposedKineticEnergy(G4double proposedKinEnergy); - // Get/Set the final kinetic energy of the current particle. + inline const G4ThreeVector& GetProposedMomentumDirection() const; + inline void SetProposedMomentumDirection(const G4ThreeVector& dir); + inline const G4ThreeVector& GetMomentumDirection() const; + inline void ProposeMomentumDirection(G4double Px, G4double Py, G4double Pz); + inline void ProposeMomentumDirection(const G4ThreeVector& Pfinal); + // Get/Propose the MomentumDirection vector: it is the final momentum + // direction - inline const G4ThreeVector& GetProposedMomentumDirection() const; - inline void SetProposedMomentumDirection(const G4ThreeVector& dir); - inline const G4ThreeVector& GetMomentumDirection() const; - inline void ProposeMomentumDirection(G4double Px, G4double Py, G4double Pz); - inline void ProposeMomentumDirection(const G4ThreeVector& Pfinal); - // Get/Propose the MomentumDirection vector: it is the final momentum direction. + inline const G4ThreeVector& GetProposedPolarization() const; + inline void ProposePolarization(const G4ThreeVector& dir); + inline void ProposePolarization(G4double Px, G4double Py, G4double Pz); - inline const G4ThreeVector& GetProposedPolarization() const; - inline void ProposePolarization(const G4ThreeVector& dir); - inline void ProposePolarization(G4double Px, G4double Py, G4double Pz); + inline const G4Track* GetCurrentTrack() const; - inline const G4Track* GetCurrentTrack() const; + inline void SetLowEnergyLimit(G4double elimit); - inline void SetLowEnergyLimit(G4double elimit); + virtual void DumpInfo() const; - virtual void DumpInfo() const; + virtual G4bool CheckIt(const G4Track&); - // for Debug - virtual G4bool CheckIt(const G4Track&); + protected: -protected: - // hide copy constructor and assignment operaor as protected - G4ParticleChangeForLoss(const G4ParticleChangeForLoss &right); - G4ParticleChangeForLoss & operator=(const G4ParticleChangeForLoss &right); + G4ParticleChangeForLoss(const G4ParticleChangeForLoss& right); + G4ParticleChangeForLoss& operator=(const G4ParticleChangeForLoss& right); + // Hidden copy constructor and assignment operator -private: + private: - const G4Track* currentTrack; - // The pointer to G4Track + const G4Track* currentTrack = nullptr; + // The pointer to G4Track - G4double proposedKinEnergy; - // The final kinetic energy of the current particle. + G4double proposedKinEnergy = 0.0; + // The final kinetic energy of the current particle - G4double lowEnergyLimit; - // The limit kinetic energy below which particle is stopped + G4double lowEnergyLimit = 0.0; + // The limit kinetic energy below which particle is stopped - G4double currentCharge; - // The final charge of the current particle. + G4double currentCharge = 0.0; + // The final charge of the current particle - G4ThreeVector proposedMomentumDirection; - // The final momentum direction of the current particle. + G4ThreeVector proposedMomentumDirection; + // The final momentum direction of the current particle - G4ThreeVector proposedPolarization; - // The final polarization of the current particle. + G4ThreeVector proposedPolarization; + // The final polarization of the current particle }; -// ------------------------------------------------------------ +// ---------------------- +// Inline methods +// ---------------------- -inline G4double G4ParticleChangeForLoss::GetProposedKineticEnergy() const +inline +G4double G4ParticleChangeForLoss::GetProposedKineticEnergy() const { return proposedKinEnergy; } -inline void G4ParticleChangeForLoss::SetProposedKineticEnergy(G4double energy) +inline +void G4ParticleChangeForLoss::SetProposedKineticEnergy(G4double energy) { proposedKinEnergy = energy; } -inline G4double G4ParticleChangeForLoss::GetProposedCharge() const +inline +G4double G4ParticleChangeForLoss::GetProposedCharge() const { return currentCharge; } -inline G4double G4ParticleChangeForLoss::GetCharge() const +inline +G4double G4ParticleChangeForLoss::GetCharge() const { return currentCharge; } -inline void G4ParticleChangeForLoss::SetProposedCharge(G4double theCharge) -{ - currentCharge = theCharge; -} - -inline void G4ParticleChangeForLoss::ProposeCharge(G4double theCharge) +inline +void G4ParticleChangeForLoss::SetProposedCharge(G4double theCharge) { currentCharge = theCharge; } inline - const G4ThreeVector& G4ParticleChangeForLoss::GetProposedMomentumDirection() const +void G4ParticleChangeForLoss::ProposeCharge(G4double theCharge) +{ + currentCharge = theCharge; +} + +inline +const G4ThreeVector& +G4ParticleChangeForLoss::GetProposedMomentumDirection() const { return proposedMomentumDirection; } inline - const G4ThreeVector& G4ParticleChangeForLoss::GetMomentumDirection() const +const G4ThreeVector& G4ParticleChangeForLoss::GetMomentumDirection() const { return proposedMomentumDirection; } inline - void G4ParticleChangeForLoss::ProposeMomentumDirection(const G4ThreeVector& dir) +void G4ParticleChangeForLoss::ProposeMomentumDirection(const G4ThreeVector& dir) { proposedMomentumDirection = dir; } inline - void G4ParticleChangeForLoss::SetProposedMomentumDirection(const G4ThreeVector& dir) +void +G4ParticleChangeForLoss::SetProposedMomentumDirection(const G4ThreeVector& dir) { proposedMomentumDirection = dir; } inline - void G4ParticleChangeForLoss::ProposeMomentumDirection(G4double Px, G4double Py, G4double Pz) +void G4ParticleChangeForLoss::ProposeMomentumDirection(G4double Px, + G4double Py, + G4double Pz) { proposedMomentumDirection.setX(Px); proposedMomentumDirection.setY(Py); proposedMomentumDirection.setZ(Pz); } -inline const G4Track* G4ParticleChangeForLoss::GetCurrentTrack() const +inline +const G4Track* G4ParticleChangeForLoss::GetCurrentTrack() const { return currentTrack; } inline - const G4ThreeVector& G4ParticleChangeForLoss::GetProposedPolarization() const +const G4ThreeVector& G4ParticleChangeForLoss::GetProposedPolarization() const { return proposedPolarization; } inline - void G4ParticleChangeForLoss::ProposePolarization(const G4ThreeVector& dir) +void G4ParticleChangeForLoss::ProposePolarization(const G4ThreeVector& dir) { proposedPolarization = dir; } inline - void G4ParticleChangeForLoss::ProposePolarization(G4double Px, G4double Py, G4double Pz) +void G4ParticleChangeForLoss::ProposePolarization(G4double Px, + G4double Py, + G4double Pz) { proposedPolarization.setX(Px); proposedPolarization.setY(Py); proposedPolarization.setZ(Pz); } -inline void G4ParticleChangeForLoss::InitializeForAlongStep(const G4Track& track) +inline +void G4ParticleChangeForLoss::InitializeForAlongStep(const G4Track& track) { - theStatusChange = track.GetTrackStatus(); - theLocalEnergyDeposit = 0.0; + theStatusChange = track.GetTrackStatus(); + theLocalEnergyDeposit = 0.0; theNonIonizingEnergyDeposit = 0.0; InitializeSecondaries(track); theParentWeight = track.GetWeight(); // isParentWeightProposed = false; proposedKinEnergy = track.GetKineticEnergy(); - currentCharge = track.GetDynamicParticle()->GetCharge(); + currentCharge = track.GetDynamicParticle()->GetCharge(); } -inline void G4ParticleChangeForLoss::InitializeForPostStep(const G4Track& track) +inline +void G4ParticleChangeForLoss::InitializeForPostStep(const G4Track& track) { - theStatusChange = track.GetTrackStatus(); - theLocalEnergyDeposit = 0.0; + theStatusChange = track.GetTrackStatus(); + theLocalEnergyDeposit = 0.0; theNonIonizingEnergyDeposit = 0.0; InitializeSecondaries(track); theParentWeight = track.GetWeight(); // isParentWeightProposed = false; - proposedKinEnergy = track.GetKineticEnergy(); - currentCharge = track.GetDynamicParticle()->GetCharge(); + proposedKinEnergy = track.GetKineticEnergy(); + currentCharge = track.GetDynamicParticle()->GetCharge(); proposedMomentumDirection = track.GetMomentumDirection(); - proposedPolarization = track.GetPolarization(); - currentTrack = &track; + proposedPolarization = track.GetPolarization(); + currentTrack = &track; } -/* -inline void G4ParticleChangeForLoss::AddSecondary(G4DynamicParticle* aParticle) -{ - // create track - G4Track* aTrack = new G4Track(aParticle, currentTrack->GetGlobalTime(), - currentTrack->GetPosition()); - - // Touchable handle is copied to keep the pointer - aTrack->SetTouchableHandle(currentTrack->GetTouchableHandle()); - - // add a secondary - G4VParticleChange::AddSecondary(aTrack); -} -*/ -inline void G4ParticleChangeForLoss::SetLowEnergyLimit(G4double elimit) +inline +void G4ParticleChangeForLoss::SetLowEnergyLimit(G4double elimit) { lowEnergyLimit = elimit; } #endif - diff --git a/source/track/include/G4ParticleChangeForMSC.hh b/source/track/include/G4ParticleChangeForMSC.hh index aa7ee5d026..bd74ff6cb4 100644 --- a/source/track/include/G4ParticleChangeForMSC.hh +++ b/source/track/include/G4ParticleChangeForMSC.hh @@ -23,99 +23,93 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ParticleChangeForMSC // -// GEANT4 tag $ $ +// Class description: // -// -// ------------------------------------------------------------ -// GEANT 4 class header file -// -// -// Class Description -// This class is special "Particle Change" for Multiple Scattering process -// -// ------------------------------------------------------------ -// Implemented for the new scheme 23 Mar. 1998 H.Kurahige -// Add Get/SetMomentumDirectionChange 6 Feb. 1999 H.Kurashige -// Update for model variant of msc 16 Jan 2004 V.Ivanchenko -// -// ------------------------------------------------------------- -#ifndef G4ParticleChangeForMSC_h -#define G4ParticleChangeForMSC_h 1 +// Concrete "Particle Change" class for Multiple Scattering process. + +// Author: Hisaya Kurashige, 23 March 1998 +// Revision: Vladimir Ivantchenko, 16 January 2004 +// -------------------------------------------------------------------- +#ifndef G4ParticleChangeForMSC_hh +#define G4ParticleChangeForMSC_hh 1 #include "globals.hh" #include "G4ios.hh" #include "G4ThreeVector.hh" #include "G4ThreeVector.hh" -class G4DynamicParticle; #include "G4VParticleChange.hh" -class G4ParticleChangeForMSC: public G4VParticleChange -{ +class G4DynamicParticle; + +class G4ParticleChangeForMSC : public G4VParticleChange +{ public: - // default constructor + G4ParticleChangeForMSC(); + // Default constructor - // destructor virtual ~G4ParticleChangeForMSC(); + // Destructor - protected: - // hide copy constructor and assignment operaor as protected - G4ParticleChangeForMSC(const G4ParticleChangeForMSC &right); - G4ParticleChangeForMSC & operator=(const G4ParticleChangeForMSC &right); + // --- the following methods are for updating G4Step ----- + // Return the pointer to the G4Step after updating the Step information + // by using final state information of the track given by a physics + // process - - public: // with description - // ---------------------------------------------------- - // --- the following methods are for updating G4Step ----- - // Return the pointer to the G4Step after updating the Step information - // by using final state information of the track given by a physics - // process virtual G4Step* UpdateStepForAlongStep(G4Step* Step); virtual G4Step* UpdateStepForPostStep(G4Step* Step); - // A physics process gives the final state of the particle - // based on information of G4Track (or equivalently the PreStepPoint) + // A physics process gives the final state of the particle + // based on information of G4Track (or equivalently the PreStepPoint) virtual void Initialize(const G4Track&); - // Initialize all propoerties by using G4Track information + // Initialize all properties by using G4Track information - // ---------------------------------------------------- - //--- methods to keep information of the final state-- - // IMPORTANT NOTE: Although the name of the class and methods are - // "Change", what it stores (and returns in get) are the "FINAL" - // values of the Position, Momentum, etc. + // --- methods to keep information of the final state --- + // IMPORTANT NOTE: despite the name, what the class stores through its + // methods are the "FINAL" values of the Position, + // Momentum, etc. void ProposeMomentumDirection(const G4ThreeVector& Pfinal); void ProposeMomentumDirection(G4double Px, G4double Py, G4double Pz); const G4ThreeVector* GetMomentumDirection() const; const G4ThreeVector* GetProposedMomentumDirection() const; void SetProposedMomentumDirection(const G4ThreeVector& Pfinal); - // Get/Set theMomentumDirectionChange vector: it is the final momentum direction. + // Get/Set theMomentumDirectionChange vector: it is the final momentum + // direction const G4ThreeVector* GetPosition() const; - void ProposePosition(const G4ThreeVector& finalPosition); + void ProposePosition(const G4ThreeVector& finalPosition); const G4ThreeVector* GetProposedPosition() const; - void SetProposedPosition(const G4ThreeVector& finalPosition); - // Get/Set the final position of the current particle. + void SetProposedPosition(const G4ThreeVector& finalPosition); + // Get/Set the final position of the current particle + + // --- Dump and debug methods --- - public: virtual void DumpInfo() const; - // for Debug + virtual G4bool CheckIt(const G4Track&); + protected: + + G4ParticleChangeForMSC(const G4ParticleChangeForMSC& right); + G4ParticleChangeForMSC& operator=(const G4ParticleChangeForMSC& right); + // Hidden copy constructor and assignment operator + private: + G4ThreeVector theMomentumDirection; - // It is the vector containing the final momentum direction - // after the invoked process. The application of the change - // of the momentum direction of the particle is not Done here. - // The responsibility to apply the change is up the entity - // which invoked the process. + // It is the vector containing the final momentum direction + // after the invoked process. The application of the change + // of the momentum direction of the particle is not done here. + // The responsibility to apply the change is up the entity + // which invoked the process G4ThreeVector thePosition; - // The changed (final) position of a given particle. - + // The changed (final) position of a given particle }; #include "G4ParticleChangeForMSC.icc" -#endif +#endif diff --git a/source/track/include/G4ParticleChangeForMSC.icc b/source/track/include/G4ParticleChangeForMSC.icc index 44ffd24618..84176e756e 100644 --- a/source/track/include/G4ParticleChangeForMSC.icc +++ b/source/track/include/G4ParticleChangeForMSC.icc @@ -23,72 +23,67 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ParticleChangeForMSC inline methods implementation // -// -// +// Author: Hisaya Kurashige, 23 March 1998 +// Revision: Vladimir Ivantchenko, 16 January 2004 +// -------------------------------------------------------------------- - -inline - void G4ParticleChangeForMSC::ProposeMomentumDirection(const G4ThreeVector& P) +inline void G4ParticleChangeForMSC::ProposeMomentumDirection( + const G4ThreeVector& P) { theMomentumDirection = P; } -inline - void G4ParticleChangeForMSC::SetProposedMomentumDirection(const G4ThreeVector& P) +inline void G4ParticleChangeForMSC::SetProposedMomentumDirection( + const G4ThreeVector& P) { theMomentumDirection = P; } -inline - void G4ParticleChangeForMSC::ProposeMomentumDirection(G4double Px, G4double Py, G4double Pz) +inline void G4ParticleChangeForMSC::ProposeMomentumDirection(G4double Px, + G4double Py, + G4double Pz) { theMomentumDirection.setX(Px); theMomentumDirection.setY(Py); theMomentumDirection.setZ(Pz); } -inline - const G4ThreeVector* G4ParticleChangeForMSC::GetMomentumDirection() const +inline const G4ThreeVector* G4ParticleChangeForMSC::GetMomentumDirection() const { return &theMomentumDirection; } -inline - const G4ThreeVector* G4ParticleChangeForMSC::GetProposedMomentumDirection() const +inline const G4ThreeVector* +G4ParticleChangeForMSC::GetProposedMomentumDirection() const { return &theMomentumDirection; } -inline - void G4ParticleChangeForMSC::SetProposedPosition(const G4ThreeVector& P) +inline void G4ParticleChangeForMSC::SetProposedPosition(const G4ThreeVector& P) { thePosition = P; } -inline - const G4ThreeVector* G4ParticleChangeForMSC::GetPosition() const +inline const G4ThreeVector* G4ParticleChangeForMSC::GetPosition() const { return &thePosition; } -inline - const G4ThreeVector* G4ParticleChangeForMSC::GetProposedPosition() const +inline const G4ThreeVector* G4ParticleChangeForMSC::GetProposedPosition() const { return &thePosition; } -inline - void G4ParticleChangeForMSC::ProposePosition(const G4ThreeVector& P) +inline void G4ParticleChangeForMSC::ProposePosition(const G4ThreeVector& P) { thePosition = P; } - inline void G4ParticleChangeForMSC::Initialize(const G4Track& track) { - theStatusChange = track.GetTrackStatus(); + theStatusChange = track.GetTrackStatus(); theMomentumDirection = track.GetMomentumDirection(); - thePosition = track.GetPosition(); + thePosition = track.GetPosition(); } - diff --git a/source/track/include/G4ParticleChangeForRadDecay.hh b/source/track/include/G4ParticleChangeForRadDecay.hh index f8008f3028..31656f6752 100644 --- a/source/track/include/G4ParticleChangeForRadDecay.hh +++ b/source/track/include/G4ParticleChangeForRadDecay.hh @@ -23,86 +23,72 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ParticleChangeForRadDecay // +// Class description: // -// -// ------------------------------------------------------------ -// GEANT 4 class header file -// -// -// ------------------------------------------------------------ -// Implemented for the new scheme 25 Jan. 2000 H.Kurahige -// -// Class Description -// This class is a concrete class for ParticleChange for RadDecay -// -#ifndef G4ParticleChangeForRadDecay_h -#define G4ParticleChangeForRadDecay_h 1 +// Concrete class for ParticleChange for Radioactive Decay. + +// Author: Hisaya Kurashige, 25 January 2000 +// -------------------------------------------------------------------- +#ifndef G4ParticleChangeForRadDecay_hh +#define G4ParticleChangeForRadDecay_hh 1 #include "globals.hh" #include "G4ios.hh" -class G4VTouchable; #include "G4ParticleChangeForDecay.hh" -class G4ParticleChangeForRadDecay: public G4ParticleChangeForDecay -{ - public: - // default constructor - G4ParticleChangeForRadDecay(){} +class G4VTouchable; - // destructor - virtual ~G4ParticleChangeForRadDecay(){} +class G4ParticleChangeForRadDecay : public G4ParticleChangeForDecay +{ + public: + + G4ParticleChangeForRadDecay() {} + // Default constructor + + virtual ~G4ParticleChangeForRadDecay() {} + // Destructor + + inline void AddSecondary(G4Track* aSecondary); + // Add a secondary particle to theListOfSecondaries protected: - // hide copy constructor and assignment operaor as protected - G4ParticleChangeForRadDecay(const G4ParticleChangeForRadDecay &) : G4ParticleChangeForDecay() {} - G4ParticleChangeForRadDecay & operator=(const G4ParticleChangeForRadDecay &){return *this;} - - - public: // with description - void AddSecondary(G4Track* aSecondary); - // Add a secondary particle to theListOfSecondaries. - // ------------------------------------------------------ - + inline G4ParticleChangeForRadDecay(const G4ParticleChangeForRadDecay&); + inline G4ParticleChangeForRadDecay& operator=(const G4ParticleChangeForRadDecay&); + // Hidden copy constructor and assignment operator }; -inline void G4ParticleChangeForRadDecay::AddSecondary(G4Track *aTrack) +// ---------------------- +// Inline methods +// ---------------------- + +inline G4ParticleChangeForRadDecay:: +G4ParticleChangeForRadDecay(const G4ParticleChangeForRadDecay&) + : G4ParticleChangeForDecay() {} + +inline +G4ParticleChangeForRadDecay& +G4ParticleChangeForRadDecay::operator=(const G4ParticleChangeForRadDecay&) +{ + return *this; +} + +inline +void G4ParticleChangeForRadDecay::AddSecondary(G4Track* aTrack) { // add a secondary after size check - if (theSizeOftheListOfSecondaries > theNumberOfSecondaries) { + if(theSizeOftheListOfSecondaries > theNumberOfSecondaries) + { theListOfSecondaries->SetElement(theNumberOfSecondaries, aTrack); - theNumberOfSecondaries++; - } else { -#ifdef G4VERBOSE - if (verboseLevel>0) { - G4cout << "G4VParticleChange::AddSecondary() Warning "; - G4cout << "theListOfSecondaries is full !! " << G4endl; - G4cout << " The track is deleted " << G4endl; - } -#endif - G4Exception("G4ParticleChangeForRadDecay::AddSecondary", - "TRACK101", JustWarning, - "Secondary Bug is full. The track is deleted"); + ++theNumberOfSecondaries; + } + else + { + G4Exception("G4ParticleChangeForRadDecay::AddSecondary()", "TRACK101", + JustWarning, "Secondaries buffer is full. Track is deleted!"); } } - - #endif - - - - - - - - - - - - - - - - diff --git a/source/track/include/G4ParticleChangeForTransport.hh b/source/track/include/G4ParticleChangeForTransport.hh index 776f6e7f89..ee86b672d5 100644 --- a/source/track/include/G4ParticleChangeForTransport.hh +++ b/source/track/include/G4ParticleChangeForTransport.hh @@ -23,25 +23,16 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ParticleChangeForTransport // +// Class description: // -// -// ------------------------------------------------------------ -// GEANT 4 class header file -// -// -// ------------------------------------------------------------ -// Implemented for the new scheme 10 May. 1998 H.Kurahige -// Added theMaterialChange 16 FEb. 2000 H.Kurahige -// Remove thePolarizationChange 12 Feb. 2001 H.Kurashige -// Modification for G4TouchableHandle 22 Oct. 2001 R.Chytracek -// Add MaterialCutsCouple 8 Oct. 2002 H.Kurashige -// -// Class Description -// This class is a concrete class for ParticleChange for transportation -// -#ifndef G4ParticleChangeForTransport_h -#define G4ParticleChangeForTransport_h 1 +// Concrete class for ParticleChange for transportation. + +// Author: Hisaya Kurashige, 10 May 1998 +// -------------------------------------------------------------------- +#ifndef G4ParticleChangeForTransport_hh +#define G4ParticleChangeForTransport_hh 1 #include "globals.hh" #include "G4ios.hh" @@ -51,95 +42,88 @@ class G4MaterialCutsCouple; class G4VSensitiveDetector; -class G4ParticleChangeForTransport: public G4ParticleChange -{ +class G4ParticleChangeForTransport : public G4ParticleChange +{ public: - // default constructor + G4ParticleChangeForTransport(); + // Default constructor - // destructor virtual ~G4ParticleChangeForTransport(); + // Destructor - protected: - // hide copy constructor and assignment operator as protected - G4ParticleChangeForTransport(const G4ParticleChangeForTransport &right); - G4ParticleChangeForTransport & operator=(const G4ParticleChangeForTransport &right); + // --- the following methods are for updating G4Step --- + // Return the pointer to the G4Step after updating the Step information + // by using final state information of the track given by a physics process - public: // with description - // ---------------------------------------------------- - // --- the following methods are for updating G4Step ----- - // Return the pointer to the G4Step after updating the Step information - // by using final state information of the track given by a physics - // process virtual G4Step* UpdateStepForAlongStep(G4Step* Step); virtual G4Step* UpdateStepForAtRest(G4Step* Step); virtual G4Step* UpdateStepForPostStep(G4Step* Step); - // A physics process gives the final state of the particle - // based on information of G4Track (or equivalently the PreStepPoint) - + // A physics process gives the final state of the particle + // based on information of G4Track (or equivalently the PreStepPoint) + virtual void Initialize(const G4Track&); - // Initialize all propoerties by using G4Track information - - // ---------------------------------------------------- - //--- methods to keep information of the final state-- - // IMPORTANT NOTE: Although the name of the class and methods are - // "Change", what it stores (and returns in get) are the "FINAL" - // values of the Position, Momentum, etc. + // Initialize all properties by using G4Track information + + // --- methods to keep information of the final state --- + // IMPORTANT NOTE: despite the name, what this class stores/returns + // through its methods, are the "FINAL" values of the Position, Momentum, etc. const G4TouchableHandle& GetTouchableHandle() const; - void SetTouchableHandle(const G4TouchableHandle& fTouchable); - // Get/Set the touchable of the current particle. - // Note: Touchable in PostStepPoint will be updated only after PostStepDoIt + void SetTouchableHandle(const G4TouchableHandle& fTouchable); + // Get/Set the touchable of the current particle. + // Note: Touchable in PostStepPoint will be updated only after + // PostStepDoIt G4Material* GetMaterialInTouchable() const; void SetMaterialInTouchable(G4Material* fMaterial); - // Get/Propose the material in the touchable of the current particle. + // Get/Propose the material in the touchable of the current particle const G4MaterialCutsCouple* GetMaterialCutsCoupleInTouchable() const; - void SetMaterialCutsCoupleInTouchable(const G4MaterialCutsCouple* fMaterialCutsCouple); - // Get/Set the materialCutsCouple in the touchable of the current particle. + void SetMaterialCutsCoupleInTouchable( + const G4MaterialCutsCouple* fMaterialCutsCouple); + // Get/Set the materialCutsCouple in the touchable of the current + // particle G4VSensitiveDetector* GetSensitiveDetectorInTouchable() const; - void SetSensitiveDetectorInTouchable(G4VSensitiveDetector* fSensitiveDetector); - // Get/Set the sensitive detector in the touchable of the current particle. + void SetSensitiveDetectorInTouchable( + G4VSensitiveDetector* fSensitiveDetector); + // Get/Set the sensitive detector in the touchable of the current particle G4bool GetMomentumChanged() const; void SetMomentumChanged(G4bool b); - public: + inline void SetPointerToVectorOfAuxiliaryPoints(std::vector* vec); + inline std::vector* GetPointerToVectorOfAuxiliaryPoints() const; + // Smooth representation of curved trajectories + virtual void DumpInfo() const; protected: + + G4ParticleChangeForTransport(const G4ParticleChangeForTransport& right); + G4ParticleChangeForTransport& operator=(const G4ParticleChangeForTransport& right); + // Hidden copy constructor and assignment operator + G4TouchableHandle theTouchableHandle; - // The changed touchable of a given particle. - - public: - - // Prototype implementation of smooth representation of curved trajectories. - // Auxiliary points are ThreeVectors for now; change to G4AuxiliaryPoints. - - inline void SetPointerToVectorOfAuxiliaryPoints( std::vector* theNewVectorPointer ); - inline std::vector* GetPointerToVectorOfAuxiliaryPoints() const; + // The changed touchable of a given particle private: - G4bool isMomentumChanged; - // The flag which is set if momentum is changed in current step - G4Material* theMaterialChange; - const G4MaterialCutsCouple* theMaterialCutsCoupleChange; - G4VSensitiveDetector* theSensitiveDetectorChange; - // The material (and MaterialCutsCouple) where given track - // currently locates - private: - std::vector* fpVectorOfAuxiliaryPointsPointer; + G4bool isMomentumChanged = false; + // The flag which is set if momentum is changed in current step + + G4Material* theMaterialChange = nullptr; + + const G4MaterialCutsCouple* theMaterialCutsCoupleChange = nullptr; + + G4VSensitiveDetector* theSensitiveDetectorChange = nullptr; + // The material (and MaterialCutsCouple) where given track + // currently locates + + std::vector* fpVectorOfAuxiliaryPointsPointer = nullptr; }; #include "G4ParticleChangeForTransport.icc" #endif - - - - - - diff --git a/source/track/include/G4ParticleChangeForTransport.icc b/source/track/include/G4ParticleChangeForTransport.icc index c42f698e0a..6def15aa37 100644 --- a/source/track/include/G4ParticleChangeForTransport.icc +++ b/source/track/include/G4ParticleChangeForTransport.icc @@ -23,69 +23,66 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ParticleChangeForTransport inline methods implementation // -// -// -inline - void G4ParticleChangeForTransport::SetTouchableHandle(const G4TouchableHandle& -fTouchable) +// Author: Hisaya Kurashige, 10 May 1998 +// -------------------------------------------------------------------- + +inline void G4ParticleChangeForTransport::SetTouchableHandle( + const G4TouchableHandle& fTouchable) { - theTouchableHandle = fTouchable; + theTouchableHandle = fTouchable; } -inline - const G4TouchableHandle& G4ParticleChangeForTransport::GetTouchableHandle() const +inline const G4TouchableHandle& +G4ParticleChangeForTransport::GetTouchableHandle() const { return theTouchableHandle; } - -inline - void G4ParticleChangeForTransport::SetMaterialInTouchable(G4Material* fMaterial) +inline void G4ParticleChangeForTransport::SetMaterialInTouchable( + G4Material* fMaterial) { - theMaterialChange = fMaterial; + theMaterialChange = fMaterial; } -inline - G4Material* G4ParticleChangeForTransport::GetMaterialInTouchable() const +inline G4Material* G4ParticleChangeForTransport::GetMaterialInTouchable() const { return theMaterialChange; } -inline - void G4ParticleChangeForTransport::SetMaterialCutsCoupleInTouchable(const G4MaterialCutsCouple* fMaterialCutsCouple) +inline void G4ParticleChangeForTransport::SetMaterialCutsCoupleInTouchable( + const G4MaterialCutsCouple* fMaterialCutsCouple) { - theMaterialCutsCoupleChange = fMaterialCutsCouple; + theMaterialCutsCoupleChange = fMaterialCutsCouple; } -inline - const G4MaterialCutsCouple* G4ParticleChangeForTransport::GetMaterialCutsCoupleInTouchable() const +inline const G4MaterialCutsCouple* +G4ParticleChangeForTransport::GetMaterialCutsCoupleInTouchable() const { return theMaterialCutsCoupleChange; } -inline - void G4ParticleChangeForTransport::SetSensitiveDetectorInTouchable(G4VSensitiveDetector* fSensitiveDetector) +inline void G4ParticleChangeForTransport::SetSensitiveDetectorInTouchable( + G4VSensitiveDetector* fSensitiveDetector) { - theSensitiveDetectorChange = fSensitiveDetector; + theSensitiveDetectorChange = fSensitiveDetector; } -inline - G4VSensitiveDetector* G4ParticleChangeForTransport::GetSensitiveDetectorInTouchable() const +inline G4VSensitiveDetector* +G4ParticleChangeForTransport::GetSensitiveDetectorInTouchable() const { return theSensitiveDetectorChange; } -inline -G4bool G4ParticleChangeForTransport::GetMomentumChanged() const +inline G4bool G4ParticleChangeForTransport::GetMomentumChanged() const { return isMomentumChanged; } -inline -void G4ParticleChangeForTransport::SetMomentumChanged(G4bool b) +inline void G4ParticleChangeForTransport::SetMomentumChanged(G4bool b) { - isMomentumChanged= b; + isMomentumChanged = b; } //---------------------------------------------------------------- @@ -96,46 +93,42 @@ inline void G4ParticleChangeForTransport::Initialize(const G4Track& track) { // use base class's method at first InitializeStatusChange(track); -// InitializeLocalEnergyDeposit(track); + // InitializeLocalEnergyDeposit(track); InitializeSteppingControl(track); -// InitializeTrueStepLength(track); -// InitializeSecondaries(track); + // InitializeTrueStepLength(track); + // InitializeSecondaries(track); // set Energy/Momentum etc. equal to those of the parent particle - const G4DynamicParticle* pParticle = track.GetDynamicParticle(); -// theEnergyChange = pParticle->GetKineticEnergy(); -// theMomentumChange = pParticle->GetMomentumDirection(); - theVelocityChange = track.GetVelocity(); - isVelocityChanged = false; - thePolarizationChange = pParticle->GetPolarization(); -// theProperTimeChange = pParticle->GetProperTime(); + const G4DynamicParticle* pParticle = track.GetDynamicParticle(); + // theEnergyChange = pParticle->GetKineticEnergy(); + // theMomentumChange = pParticle->GetMomentumDirection(); + theVelocityChange = track.GetVelocity(); + isVelocityChanged = false; + thePolarizationChange = pParticle->GetPolarization(); + // theProperTimeChange = pParticle->GetProperTime(); // set Position/Time etc. equal to those of the parent track // thePositionChange = track.GetPosition(); // set TimeChange equal to local time of the parent track - theTimeChange = track.GetLocalTime(); + theTimeChange = track.GetLocalTime(); // set initial Local/Global time of the parent track - theLocalTime0 = track.GetLocalTime(); - theGlobalTime0 = track.GetGlobalTime(); + theLocalTime0 = track.GetLocalTime(); + theGlobalTime0 = track.GetGlobalTime(); // set touchable equal to the next touchable of the parent track // not set as for now - //theTouchableChange = track.GetNextTouchable(); + // theTouchableChange = track.GetNextTouchable(); -// So almost nothing is initialized here. -// theMomentumChange, theProperTimeChange, thePositionChange and theTimeChange -// are set by G4Transportation::AlongStepDoIt; -// the others are not needed. -// Take care when implementing the PostStep related things! -// (P. Urban) + // NOTE: almost nothing is initialized here. + // theMomentumChange, theProperTimeChange, thePositionChange + // and theTimeChange are set by G4Transportation::AlongStepDoIt(); + // the others are not needed. + // Take care when implementing the PostStep related things! + // (P. Urban) } -// Prototype implementation of smooth representation of curved trajectories. - -inline void -G4ParticleChangeForTransport:: -SetPointerToVectorOfAuxiliaryPoints( std::vector* - theNewVectorPointer ) +inline void G4ParticleChangeForTransport::SetPointerToVectorOfAuxiliaryPoints( + std::vector* theNewVectorPointer) { fpVectorOfAuxiliaryPointsPointer = theNewVectorPointer; } @@ -145,9 +138,3 @@ G4ParticleChangeForTransport::GetPointerToVectorOfAuxiliaryPoints() const { return fpVectorOfAuxiliaryPointsPointer; } - - - - - - diff --git a/source/track/include/G4Step.hh b/source/track/include/G4Step.hh index e5c2436391..1fb54e13fa 100644 --- a/source/track/include/G4Step.hh +++ b/source/track/include/G4Step.hh @@ -25,231 +25,186 @@ // // G4Step // -// Class Description: -// This class represents the Step of a particle being tracked. -// It includes information of -// 1) List of Step points which compose the Step, -// 2) static information of particle which generated the -// Step, -// 3) trackID and parent particle ID of the Step, -// 4) termination condition of the Step, - -// Contact: -// Questions and comments to this code should be sent to -// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) -// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) +// Class description: // -// --------------------------------------------------------------- -// Modified for the new G4ParticleChange 12 Mar. 1998 H.Kurahige -// Correct treatment of touchable in G4Step::UpdateTrack -// 12 May. 1998 H.Kurashige -// --------------------------------------------------------------- -// Separate implementation of inline functions inti G4Step.icc -// Add updating mass/charge 6 Oct. 1999 H.Kurashige -// add nonIonizingEnergyLoss 26 Mar. 2007 H.Kurashige -// --------------------------------------------------------------- +// This class represents the Step of a particle being tracked. +// It includes information of: +// 1) List of Step points which compose the Step, +// 2) static information of particle which generated the Step, +// 3) trackID and parent particle ID of the Step, +// 4) termination condition of the Step. + +// Authors: +// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) +// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) +// Revisions: +// Hisaya Kurashige, 1998-2007 +// -------------------------------------------------------------------- #ifndef G4Step_hh #define G4Step_hh 1 -#include // Include from 'system' -#include // Include from 'system' -#include "G4ios.hh" // Include from 'system' -#include // Include from 'system' -#include "globals.hh" // Include from 'global' -#include "G4ThreeVector.hh" // Include from 'global' -#include "G4VPhysicalVolume.hh" // Include from 'geometry' -#include "G4StepPoint.hh" // Include from 'track' -#include "G4StepStatus.hh" // Include from 'track' -class G4Polyline; // Forward declaration. -class G4Track; // Forward declaration. -#include "G4TrackVector.hh" // Include from 'tracking' +#include // Include from 'system' +#include // Include from 'system' +#include "G4ios.hh" // Include from 'system' +#include // Include from 'system' +#include "globals.hh" // Include from 'global' +#include "G4ThreeVector.hh" // Include from 'global' +#include "G4VPhysicalVolume.hh" // Include from 'geometry' +#include "G4StepPoint.hh" // Include from 'track' +#include "G4StepStatus.hh" // Include from 'track' +#include "G4TrackVector.hh" // Include from 'tracking' +#include "G4Profiler.hh" // Include from 'global' + +class G4Polyline; // Forward declaration. +class G4Track; // Forward declaration. -//////////// class G4Step -//////////// { + public: + // the profiler aliases are only used when compiled with GEANT4_USE_TIMEMORY + using ProfilerConfig = G4ProfilerConfig; -//-------- - public: - - // Constructor/Destrcutor - G4Step(); + G4Step(); ~G4Step(); + // Constructor/Destructor - // Copy Counstructor and assignment operator - G4Step(const G4Step& ); - G4Step & operator=(const G4Step &); + G4Step(const G4Step&); + G4Step& operator=(const G4Step&); + // Copy Constructor and assignment operator -//-------- - public: // with description + G4Track* GetTrack() const; + void SetTrack(G4Track* value); + // Current track - // Get/Set functions + G4StepPoint* GetPreStepPoint() const; + void SetPreStepPoint(G4StepPoint* value); + // Pre-Step points - // current track - G4Track* GetTrack() const; - void SetTrack(G4Track* value); + G4StepPoint* GetPostStepPoint() const; + void SetPostStepPoint(G4StepPoint* value); + // Post-Step points - // step points - G4StepPoint* GetPreStepPoint() const; - void SetPreStepPoint(G4StepPoint* value); + G4double GetStepLength() const; + void SetStepLength(G4double value); + // Before the end of the AlongStepDoIt loop, StepLength keeps + // the initial value which is determined by the shortest geometrical Step + // proposed by a physics process. After finishing the AlongStepDoIt, + // it will be set equal to 'StepLength' in G4Step - G4StepPoint* GetPostStepPoint() const; - void SetPostStepPoint(G4StepPoint* value); + G4double GetTotalEnergyDeposit() const; + void SetTotalEnergyDeposit(G4double value); + // Total energy deposit - // step length - G4double GetStepLength() const; - void SetStepLength(G4double value); - // Before the end of the AlongStepDoIt loop,StepLength keeps - // the initial value which is determined by the shortest geometrical Step - // proposed by a physics process. After finishing the AlongStepDoIt, - // it will be set equal to 'StepLength' in G4Step. + G4double GetNonIonizingEnergyDeposit() const; + void SetNonIonizingEnergyDeposit(G4double value); + // Total non-ionizing energy deposit - // total energy deposit - G4double GetTotalEnergyDeposit() const; - void SetTotalEnergyDeposit(G4double value); + G4SteppingControl GetControlFlag() const; + void SetControlFlag(G4SteppingControl StepControlFlag); + // Control flag for stepping - // total non-ionizing energy deposit - G4double GetNonIonizingEnergyDeposit() const; - void SetNonIonizingEnergyDeposit(G4double value); + void AddTotalEnergyDeposit(G4double value); + void ResetTotalEnergyDeposit(); + // Manipulation of total energy deposit - // control flag for stepping - G4SteppingControl GetControlFlag() const; - void SetControlFlag(G4SteppingControl StepControlFlag); + void AddNonIonizingEnergyDeposit(G4double value); + void ResetNonIonizingEnergyDeposit(); + // Manipulation of non-ionizing energy deposit - // manipulation of total energy deposit - void AddTotalEnergyDeposit(G4double value); - void ResetTotalEnergyDeposit(); + G4bool IsFirstStepInVolume() const; + G4bool IsLastStepInVolume() const; - // manipulation of non-ionizing energy deposit - void AddNonIonizingEnergyDeposit(G4double value); - void ResetNonIonizingEnergyDeposit(); + void SetFirstStepFlag(); + void ClearFirstStepFlag(); + void SetLastStepFlag(); + void ClearLastStepFlag(); + // Get/Set/Clear flag for initial/last step + // NOTE: flags are not used + G4ThreeVector GetDeltaPosition() const; + G4double GetDeltaTime() const; + // Difference of position, time, momentum and energy - // Get/Set/Clear flag for initial/last step - // NOTE: following flags are not used - G4bool IsFirstStepInVolume() const; - G4bool IsLastStepInVolume() const; + G4ThreeVector GetDeltaMomentum() const; + G4double GetDeltaEnergy() const; + // These methods will be deleted + // NOTE: use GetTotalEnergyDeposit() to obtain energy loss in material - void SetFirstStepFlag(); - void ClearFirstStepFlag(); - void SetLastStepFlag(); - void ClearLastStepFlag(); + void InitializeStep(G4Track* aValue); + // Initialize contents of G4Step - // difference of position, time, momentum and energy - G4ThreeVector GetDeltaPosition() const; - G4double GetDeltaTime() const; + void UpdateTrack(); + // Update track by using G4Step information - // These methods will be deleted - // NOTE: use GetTotalEnergyDeposit() to obtain - // energy loss in the material - // - G4ThreeVector GetDeltaMomentum() const; - G4double GetDeltaEnergy() const; + void CopyPostToPreStepPoint(); + // Copy PostStepPoint to PreStepPoint - // Other member functions + G4Polyline* CreatePolyline() const; + // For visualization - void InitializeStep( G4Track* aValue ); - // initialize contents of G4Step + inline void SetPointerToVectorOfAuxiliaryPoints(std::vector* vec); + inline std::vector* GetPointerToVectorOfAuxiliaryPoints() const; + // Auxiliary points modifiers - void UpdateTrack( ); - // update track by using G4Step information + // --- Secondary buckets --- - void CopyPostToPreStepPoint( ); - // copy PostStepPoint to PreStepPoint - - G4Polyline* CreatePolyline () const; - // for visualization + std::size_t GetNumberOfSecondariesInCurrentStep() const; + // Secondaries in the current step -//----------- - protected: -//----------- + const std::vector* GetSecondaryInCurrentStep() const; - // Member data + const G4TrackVector* GetSecondary() const; + G4TrackVector* GetfSecondary(); + G4TrackVector* NewSecondaryVector(); + // NOTE: Secondary bucket of the Step contains + // all secondaries during tracking the current track + // (i.e. NOT secondaries produced in the current step) + // all these methods give same object (i.e. G4TrackVector ) + // but 2nd one will create bucket in addition - G4double fTotalEnergyDeposit; - // Accumulated total energy deposit in the current Step + void DeleteSecondaryVector(); + // Just delete secondary bucket + // NOTE: G4Track objects inside the bucket are not deleted - G4double fNonIonizingEnergyDeposit; + void SetSecondary(G4TrackVector* value); + // Add secondary tracks to the bucket + + protected: + + G4double fTotalEnergyDeposit = 0.0; + // Accumulated total energy deposit in the current Step + + G4double fNonIonizingEnergyDeposit = 0.0; // Accumulated non-ionizing energy deposit in the current Step -//--------- - private: -//--------- + private: - // Member data + G4StepPoint* fpPreStepPoint = nullptr; + G4StepPoint* fpPostStepPoint = nullptr; + G4double fStepLength = 0.0; + // Step length which may be updated at each invocation of + // AlongStepDoIt and PostStepDoIt - G4StepPoint* fpPreStepPoint; - G4StepPoint* fpPostStepPoint; - G4double fStepLength; - // Step length which may be updated at each invocation of - // AlongStepDoIt and PostStepDoIt - G4Track* fpTrack; - // - G4SteppingControl fpSteppingControlFlag; - // A flag to control SteppingManager behavior from process + G4Track* fpTrack = nullptr; - // flag for initial/last step - G4bool fFirstStepInVolume; - G4bool fLastStepInVolume; + G4SteppingControl fpSteppingControlFlag = NormalCondition; + // A flag to control SteppingManager behavior from process - // Secondary buckets + G4bool fFirstStepInVolume = false; + G4bool fLastStepInVolume = false; + // Flags for initial/last step - public: + G4TrackVector* fSecondary = nullptr; + // Secondary bucket implemented by using std::vector of G4Track* - // secondaries in the current step - size_t GetNumberOfSecondariesInCurrentStep() const; + std::size_t nSecondaryByLastStep = 0; + // number of secondaries which have been created by the last step - const std::vector* GetSecondaryInCurrentStep() const; + std::vector* secondaryInCurrentStep = nullptr; - // NOTE: Secondary bucket of the Step contains - // all secondaries during tracking the current track - // (i.e. NOT secondaries produced in the current step) - // all following methods give same object (i.e. G4TrackVector ) - // but 2nd one will create bucket in addition - const G4TrackVector* GetSecondary() const ; - G4TrackVector* GetfSecondary(); - G4TrackVector* NewSecondaryVector(); - - // just delete secondary bucket - // NOTE: G4Track objects inside the bucket are not deleted - void DeleteSecondaryVector(); - - // Add secondary tracks to the bucket - void SetSecondary( G4TrackVector* value); - - private: - - // Secondary bucket implemented by using std::vector of G4Track* - G4TrackVector* fSecondary; - - // number of secondaries which have been created by the last step - size_t nSecondaryByLastStep; - - typedef const G4Track* CT; - std::vector* secondaryInCurrentStep; - - // Prototyping implementation of smooth representation of curved - // trajectories. (jacek 30/10/2002) - - public: - // Auxiliary points are ThreeVectors for now; change to - // G4VAuxiliaryPoints or some such (jacek 30/10/2002) - void SetPointerToVectorOfAuxiliaryPoints( std::vector* theNewVectorPointer ) - { - fpVectorOfAuxiliaryPointsPointer = theNewVectorPointer; - } - std::vector* GetPointerToVectorOfAuxiliaryPoints() const - { - return fpVectorOfAuxiliaryPointsPointer; - } - - private: - // Explicity including the word "Pointer" in the name as I keep - // forgetting the * (jacek 30/10/2002) - std::vector* fpVectorOfAuxiliaryPointsPointer; + std::vector* fpVectorOfAuxiliaryPointsPointer = nullptr; }; #include "G4Step.icc" - #endif diff --git a/source/track/include/G4Step.icc b/source/track/include/G4Step.icc index 1f8cf75f1a..39909dba57 100644 --- a/source/track/include/G4Step.icc +++ b/source/track/include/G4Step.icc @@ -23,135 +23,117 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// G4Step inline definitions -//----------------------------------------------------------------- +// G4Step inline methods implementation +// +// Authors: +// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) +// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) +// Revisions: +// Hisaya Kurashige, 1998-2007 +// -------------------------------------------------------------------- -// Get/Set functions -inline - G4StepPoint* G4Step::GetPreStepPoint() const - { - return fpPreStepPoint; - } - -inline - void G4Step::SetPreStepPoint(G4StepPoint* value) - { - delete fpPreStepPoint; - fpPreStepPoint = value; - } - -inline - G4StepPoint* G4Step::GetPostStepPoint() const - { - return fpPostStepPoint; - } - -inline - void G4Step::SetPostStepPoint(G4StepPoint* value) - { - delete fpPostStepPoint; - fpPostStepPoint = value; - } - -inline - G4double G4Step::GetStepLength() const - { - return fStepLength; - } - -inline - void G4Step::SetStepLength(G4double value) - { - fStepLength = value; - } - -inline - G4ThreeVector G4Step::GetDeltaPosition() const - { - return fpPostStepPoint->GetPosition() - - fpPreStepPoint->GetPosition(); - } - -inline - G4double G4Step::GetDeltaTime() const - { - return fpPostStepPoint->GetLocalTime() - - fpPreStepPoint->GetLocalTime(); - } - - -inline - G4double G4Step::GetTotalEnergyDeposit() const - { - return fTotalEnergyDeposit; - } - -inline - void G4Step::SetTotalEnergyDeposit(G4double value) - { - fTotalEnergyDeposit = value; - } - -inline - G4double G4Step::GetNonIonizingEnergyDeposit() const - { - return fNonIonizingEnergyDeposit; - } - -inline - void G4Step::SetNonIonizingEnergyDeposit(G4double value) - { - fNonIonizingEnergyDeposit = value; - } - -inline - void G4Step::AddTotalEnergyDeposit(G4double value) - { - fTotalEnergyDeposit += value; - } - -inline - void G4Step::ResetTotalEnergyDeposit() - { - fTotalEnergyDeposit = 0.; - fNonIonizingEnergyDeposit = 0.; - } - -inline - void G4Step::AddNonIonizingEnergyDeposit(G4double value) - { - fNonIonizingEnergyDeposit += value; - } - -inline - void G4Step::ResetNonIonizingEnergyDeposit() - { - fNonIonizingEnergyDeposit = 0.; - } - -inline - void G4Step::SetControlFlag(G4SteppingControl value) - { - fpSteppingControlFlag = value; - } - -inline - G4SteppingControl G4Step::GetControlFlag() const - { - return fpSteppingControlFlag; - } - -inline - void G4Step::CopyPostToPreStepPoint( ) - { - // This method is called at the beginning of each step - *(fpPreStepPoint) = *(fpPostStepPoint); - fpPostStepPoint->SetStepStatus(fUndefined); - - // store number of secondaries - nSecondaryByLastStep = fSecondary->size(); +inline G4StepPoint* G4Step::GetPreStepPoint() const +{ + return fpPreStepPoint; } +inline void G4Step::SetPreStepPoint(G4StepPoint* value) +{ + delete fpPreStepPoint; + fpPreStepPoint = value; +} + +inline G4StepPoint* G4Step::GetPostStepPoint() const +{ + return fpPostStepPoint; +} + +inline void G4Step::SetPostStepPoint(G4StepPoint* value) +{ + delete fpPostStepPoint; + fpPostStepPoint = value; +} + +inline G4double G4Step::GetStepLength() const +{ + return fStepLength; +} + +inline void G4Step::SetStepLength(G4double value) +{ + fStepLength = value; +} + +inline G4ThreeVector G4Step::GetDeltaPosition() const +{ + return fpPostStepPoint->GetPosition() - fpPreStepPoint->GetPosition(); +} + +inline G4double G4Step::GetDeltaTime() const +{ + return fpPostStepPoint->GetLocalTime() - fpPreStepPoint->GetLocalTime(); +} + +inline G4double G4Step::GetTotalEnergyDeposit() const +{ + return fTotalEnergyDeposit; +} + +inline void G4Step::SetTotalEnergyDeposit(G4double value) +{ + fTotalEnergyDeposit = value; +} + +inline G4double G4Step::GetNonIonizingEnergyDeposit() const +{ + return fNonIonizingEnergyDeposit; +} + +inline void G4Step::SetNonIonizingEnergyDeposit(G4double value) +{ + fNonIonizingEnergyDeposit = value; +} + +inline void G4Step::AddTotalEnergyDeposit(G4double value) +{ + fTotalEnergyDeposit += value; +} + +inline void G4Step::ResetTotalEnergyDeposit() +{ + fTotalEnergyDeposit = 0.; + fNonIonizingEnergyDeposit = 0.; +} + +inline void G4Step::AddNonIonizingEnergyDeposit(G4double value) +{ + fNonIonizingEnergyDeposit += value; +} + +inline void G4Step::ResetNonIonizingEnergyDeposit() +{ + fNonIonizingEnergyDeposit = 0.; +} + +inline void G4Step::SetControlFlag(G4SteppingControl value) +{ + fpSteppingControlFlag = value; +} + +inline G4SteppingControl G4Step::GetControlFlag() const +{ + return fpSteppingControlFlag; +} + +inline void G4Step::CopyPostToPreStepPoint() +{ + // This method is called at the beginning of each step + *(fpPreStepPoint) = *(fpPostStepPoint); + fpPostStepPoint->SetStepStatus(fUndefined); + + // store number of secondaries + nSecondaryByLastStep = fSecondary->size(); +} //------------------------------------------------------------- // To implement bi-directional association between G4Step and @@ -160,152 +142,165 @@ inline //------------------------------------------------------------- #include "G4Track.hh" -inline - G4Track* G4Step::GetTrack() const - { - return fpTrack; - } - -inline - void G4Step::SetTrack(G4Track* value) - { - fpTrack = value; - } - - -// Other member functions -inline - void G4Step::InitializeStep( G4Track* aValue ) - { - // Initialize G4Step attributes - fStepLength = 0.; - fTotalEnergyDeposit = 0.; - fNonIonizingEnergyDeposit = 0.; - fpTrack = aValue; - fpTrack->SetStepLength(0.); - - nSecondaryByLastStep = 0; - - // Initialize G4StepPoint attributes. - // To avoid the circular dependency between G4Track, G4Step - // and G4StepPoint, G4Step has to manage the copy actions. - fpPreStepPoint->SetPosition(fpTrack->GetPosition()); - fpPreStepPoint->SetGlobalTime(fpTrack->GetGlobalTime()); - fpPreStepPoint->SetLocalTime(fpTrack->GetLocalTime()); - fpPreStepPoint->SetProperTime(fpTrack->GetProperTime()); - fpPreStepPoint->SetMomentumDirection(fpTrack->GetMomentumDirection()); - fpPreStepPoint->SetKineticEnergy(fpTrack->GetKineticEnergy()); - fpPreStepPoint->SetTouchableHandle(fpTrack->GetTouchableHandle()); - fpPreStepPoint->SetMaterial( fpTrack->GetTouchable()->GetVolume()->GetLogicalVolume()->GetMaterial()); - fpPreStepPoint->SetMaterialCutsCouple( fpTrack->GetTouchable()->GetVolume()->GetLogicalVolume()->GetMaterialCutsCouple()); - fpPreStepPoint->SetSensitiveDetector( fpTrack->GetTouchable()->GetVolume()->GetLogicalVolume()->GetSensitiveDetector()); - fpPreStepPoint->SetPolarization(fpTrack->GetPolarization()); - fpPreStepPoint->SetSafety(0.); - fpPreStepPoint->SetStepStatus(fUndefined); - fpPreStepPoint->SetProcessDefinedStep(0); - fpPreStepPoint->SetMass(fpTrack->GetDynamicParticle()->GetMass()); - fpPreStepPoint->SetCharge(fpTrack->GetDynamicParticle()->GetCharge()); - fpPreStepPoint->SetWeight(fpTrack->GetWeight()); - - // Set Velocity - // should be placed after SetMaterial for preStep point - fpPreStepPoint->SetVelocity(fpTrack->CalculateVelocity()); - - (*fpPostStepPoint) = (*fpPreStepPoint); - } - -inline - void G4Step::UpdateTrack( ) - { - // To avoid the circular dependency between G4Track, G4Step - // and G4StepPoint, G4Step has to manage the update actions. - // position, time - fpTrack->SetPosition(fpPostStepPoint->GetPosition()); - fpTrack->SetGlobalTime(fpPostStepPoint->GetGlobalTime()); - fpTrack->SetLocalTime(fpPostStepPoint->GetLocalTime()); - fpTrack->SetProperTime(fpPostStepPoint->GetProperTime()); - // energy, momentum, polarization - fpTrack->SetMomentumDirection(fpPostStepPoint->GetMomentumDirection()); - fpTrack->SetKineticEnergy(fpPostStepPoint->GetKineticEnergy()); - fpTrack->SetPolarization(fpPostStepPoint->GetPolarization()); - // mass charge - G4DynamicParticle* pParticle = (G4DynamicParticle*)(fpTrack->GetDynamicParticle()); - pParticle->SetMass(fpPostStepPoint->GetMass()); - pParticle->SetCharge(fpPostStepPoint->GetCharge()); - // step length - fpTrack->SetStepLength(fStepLength); - // NextTouchable is updated - // (G4Track::Touchable points touchable of Pre-StepPoint) - fpTrack->SetNextTouchableHandle(fpPostStepPoint->GetTouchableHandle()); - fpTrack->SetWeight(fpPostStepPoint->GetWeight()); - - // set velocity - fpTrack->SetVelocity(fpPostStepPoint->GetVelocity()); +inline G4Track* G4Step::GetTrack() const +{ + return fpTrack; } -inline size_t G4Step::GetNumberOfSecondariesInCurrentStep() const +inline void G4Step::SetTrack(G4Track* value) { - return fSecondary->size() - nSecondaryByLastStep; -} - -inline const G4TrackVector* G4Step::GetSecondary() const -{ - return fSecondary; + fpTrack = value; } -inline G4TrackVector* G4Step::GetfSecondary() +inline void G4Step::InitializeStep(G4Track* aValue) { - return fSecondary; + // Initialize G4Step attributes + fStepLength = 0.; + fTotalEnergyDeposit = 0.; + fNonIonizingEnergyDeposit = 0.; + fpTrack = aValue; + fpTrack->SetStepLength(0.); + + nSecondaryByLastStep = 0; + + // Initialize G4StepPoint attributes. + // To avoid the circular dependency between G4Track, G4Step + // and G4StepPoint, G4Step has to manage the copy actions. + fpPreStepPoint->SetPosition(fpTrack->GetPosition()); + fpPreStepPoint->SetGlobalTime(fpTrack->GetGlobalTime()); + fpPreStepPoint->SetLocalTime(fpTrack->GetLocalTime()); + fpPreStepPoint->SetProperTime(fpTrack->GetProperTime()); + fpPreStepPoint->SetMomentumDirection(fpTrack->GetMomentumDirection()); + fpPreStepPoint->SetKineticEnergy(fpTrack->GetKineticEnergy()); + fpPreStepPoint->SetTouchableHandle(fpTrack->GetTouchableHandle()); + fpPreStepPoint->SetMaterial( + fpTrack->GetTouchable()->GetVolume()->GetLogicalVolume()->GetMaterial()); + fpPreStepPoint->SetMaterialCutsCouple(fpTrack->GetTouchable() + ->GetVolume() + ->GetLogicalVolume() + ->GetMaterialCutsCouple()); + fpPreStepPoint->SetSensitiveDetector(fpTrack->GetTouchable() + ->GetVolume() + ->GetLogicalVolume() + ->GetSensitiveDetector()); + fpPreStepPoint->SetPolarization(fpTrack->GetPolarization()); + fpPreStepPoint->SetSafety(0.); + fpPreStepPoint->SetStepStatus(fUndefined); + fpPreStepPoint->SetProcessDefinedStep(0); + fpPreStepPoint->SetMass(fpTrack->GetDynamicParticle()->GetMass()); + fpPreStepPoint->SetCharge(fpTrack->GetDynamicParticle()->GetCharge()); + fpPreStepPoint->SetWeight(fpTrack->GetWeight()); + + // Set Velocity + // should be placed after SetMaterial for preStep point + fpPreStepPoint->SetVelocity(fpTrack->CalculateVelocity()); + + (*fpPostStepPoint) = (*fpPreStepPoint); } -inline void G4Step::SetSecondary(G4TrackVector* value) +inline void G4Step::UpdateTrack() { - fSecondary=value; + // To avoid the circular dependency between G4Track, G4Step + // and G4StepPoint, G4Step has to manage the update actions. + // position, time + fpTrack->SetPosition(fpPostStepPoint->GetPosition()); + fpTrack->SetGlobalTime(fpPostStepPoint->GetGlobalTime()); + fpTrack->SetLocalTime(fpPostStepPoint->GetLocalTime()); + fpTrack->SetProperTime(fpPostStepPoint->GetProperTime()); + // energy, momentum, polarization + fpTrack->SetMomentumDirection(fpPostStepPoint->GetMomentumDirection()); + fpTrack->SetKineticEnergy(fpPostStepPoint->GetKineticEnergy()); + fpTrack->SetPolarization(fpPostStepPoint->GetPolarization()); + // mass charge + G4DynamicParticle* pParticle = + (G4DynamicParticle*) (fpTrack->GetDynamicParticle()); + pParticle->SetMass(fpPostStepPoint->GetMass()); + pParticle->SetCharge(fpPostStepPoint->GetCharge()); + // step length + fpTrack->SetStepLength(fStepLength); + // NextTouchable is updated + // (G4Track::Touchable points touchable of Pre-StepPoint) + fpTrack->SetNextTouchableHandle(fpPostStepPoint->GetTouchableHandle()); + fpTrack->SetWeight(fpPostStepPoint->GetWeight()); + + // set velocity + fpTrack->SetVelocity(fpPostStepPoint->GetVelocity()); } -inline - G4TrackVector* G4Step::NewSecondaryVector() +inline std::size_t G4Step::GetNumberOfSecondariesInCurrentStep() const { - fSecondary=new G4TrackVector(); - return fSecondary; + return fSecondary->size() - nSecondaryByLastStep; } -inline void G4Step::DeleteSecondaryVector() +inline const G4TrackVector* G4Step::GetSecondary() const { - if (fSecondary !=0) - { - fSecondary->clear(); - delete fSecondary; - fSecondary = 0; - } + return fSecondary; +} + +inline G4TrackVector* G4Step::GetfSecondary() +{ + return fSecondary; +} + +inline void G4Step::SetSecondary(G4TrackVector* value) +{ + fSecondary = value; +} + +inline G4TrackVector* G4Step::NewSecondaryVector() +{ + fSecondary = new G4TrackVector(); + return fSecondary; +} + +inline void G4Step::DeleteSecondaryVector() +{ + if(fSecondary != nullptr) + { + fSecondary->clear(); + delete fSecondary; + fSecondary = nullptr; + } } inline G4bool G4Step::IsFirstStepInVolume() const { - return fFirstStepInVolume; + return fFirstStepInVolume; } inline G4bool G4Step::IsLastStepInVolume() const { - return fLastStepInVolume; + return fLastStepInVolume; } -inline void G4Step::SetFirstStepFlag() +inline void G4Step::SetFirstStepFlag() { - fFirstStepInVolume = true; -} - -inline void G4Step::ClearFirstStepFlag() -{ - fFirstStepInVolume = false; + fFirstStepInVolume = true; } -inline void G4Step::SetLastStepFlag() +inline void G4Step::ClearFirstStepFlag() { - fLastStepInVolume = true; + fFirstStepInVolume = false; } - -inline void G4Step::ClearLastStepFlag() + +inline void G4Step::SetLastStepFlag() { - fLastStepInVolume = false; + fLastStepInVolume = true; +} + +inline void G4Step::ClearLastStepFlag() +{ + fLastStepInVolume = false; +} + +inline void +G4Step::SetPointerToVectorOfAuxiliaryPoints(std::vector* vec) +{ + fpVectorOfAuxiliaryPointsPointer = vec; +} + +inline std::vector* +G4Step::GetPointerToVectorOfAuxiliaryPoints() const +{ + return fpVectorOfAuxiliaryPointsPointer; } diff --git a/source/track/include/G4StepPoint.hh b/source/track/include/G4StepPoint.hh index 1202816e9b..ebe60d35d0 100644 --- a/source/track/include/G4StepPoint.hh +++ b/source/track/include/G4StepPoint.hh @@ -23,194 +23,168 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4StepPoint // +// Class description: // -// -//--------------------------------------------------------------- -// -// G4StepPoint.hh -// -// Class Description: -// This class represents information associated with the -// each end of a Step like the space/time data of the -// particle. -// -// Contact: -// Questions and comments to this code should be sent to -// Hisaya Kurashige -// -// --------------------------------------------------------------- -// Added fpMaterial 16 FEb. 2000 H.Kurahige -// Added fpMaterialCutsCouple 8 Oct. 2002 H.Kurahige -// Added fMagneticMoment Mar 2007 H.Kurashige +// This class represents information associated with each end +// of a Step like the space/time data of the particle. -#ifndef G4StepPoint_h -#define G4StepPoint_h 1 +// Author: Hisaya Kurashige, 16 February 2000 +// -------------------------------------------------------------------- +#ifndef G4StepPoint_hh +#define G4StepPoint_hh 1 -#include // Include from 'system' +#include // Include from 'system' #include -#include "globals.hh" // Include from 'global' -#include "G4Allocator.hh" // Include from 'global' -#include "G4ThreeVector.hh" // Include from 'geometry' -#include "G4VPhysicalVolume.hh" // Include from 'geometry' -class G4VProcess; +#include "globals.hh" // Include from 'global' +#include "G4Allocator.hh" // Include from 'global' +#include "G4ThreeVector.hh" // Include from 'geometry' +#include "G4VPhysicalVolume.hh" // Include from 'geometry' #include "G4SteppingControl.hh" -#include "G4StepStatus.hh" // Include from 'track' -#include "G4TouchableHandle.hh" // Include from 'geometry' +#include "G4StepStatus.hh" // Include from 'track' +#include "G4TouchableHandle.hh" // Include from 'geometry' #include "G4Material.hh" #include "G4LogicalVolume.hh" +class G4VProcess; class G4MaterialCutsCouple; class G4VSensitiveDetector; -///////////////// + class G4StepPoint -///////////////// { + public: -//-------- - public: - - -// Constructor/Destructor - G4StepPoint(); - + G4StepPoint(); ~G4StepPoint(){} + // Constructor/Destructor -// Copy Counstructor and assignment operator - G4StepPoint(const G4StepPoint& ); - G4StepPoint & operator=(const G4StepPoint &); + G4StepPoint(const G4StepPoint&); + G4StepPoint& operator=(const G4StepPoint&); + // Copy Constructor and assignment operator -//-------- - - public: // with description + const G4ThreeVector& GetPosition() const; + void SetPosition(const G4ThreeVector& aValue); + void AddPosition(const G4ThreeVector& aValue); + // Position -// Get/Set functions - const G4ThreeVector& GetPosition() const; - void SetPosition(const G4ThreeVector& aValue); - void AddPosition(const G4ThreeVector& aValue); + G4double GetLocalTime() const; + void SetLocalTime(const G4double aValue); + void AddLocalTime(const G4double aValue); + // Time since the track is created - G4double GetLocalTime() const; - void SetLocalTime(const G4double aValue); - void AddLocalTime(const G4double aValue); - // Time since the track is created. - - G4double GetGlobalTime() const; - void SetGlobalTime(const G4double aValue); - void AddGlobalTime(const G4double aValue); - // Time since the event in which the track belongs is created. - - G4double GetProperTime() const; - void SetProperTime(const G4double aValue); - void AddProperTime(const G4double aValue); - // Proper time of the particle. - - const G4ThreeVector& GetMomentumDirection() const; - void SetMomentumDirection(const G4ThreeVector& aValue); - void AddMomentumDirection(const G4ThreeVector& aValue); - // Direction of momentum (should be an unit vector) - - G4ThreeVector GetMomentum() const; + G4double GetGlobalTime() const; + void SetGlobalTime(const G4double aValue); + void AddGlobalTime(const G4double aValue); + // Time since the event in which the track belongs is created + + G4double GetProperTime() const; + void SetProperTime(const G4double aValue); + void AddProperTime(const G4double aValue); + // Proper time of the particle + + const G4ThreeVector& GetMomentumDirection() const; + void SetMomentumDirection(const G4ThreeVector& aValue); + void AddMomentumDirection(const G4ThreeVector& aValue); + // Direction of momentum (should be an unit vector) + + G4ThreeVector GetMomentum() const; // Total momentum of the track - - G4double GetTotalEnergy() const; - // Total energy of the track + G4double GetTotalEnergy() const; + // Total energy of the track - G4double GetKineticEnergy() const; - void SetKineticEnergy(const G4double aValue); - void AddKineticEnergy(const G4double aValue); - // Kinetic Energy of the track + G4double GetKineticEnergy() const; + void SetKineticEnergy(const G4double aValue); + void AddKineticEnergy(const G4double aValue); + // Kinetic Energy of the track - G4double GetVelocity() const; - void SetVelocity(G4double v); - // + G4double GetVelocity() const; + void SetVelocity(G4double v); + // Velocity - G4double GetBeta() const; - // Velocity of the track in unit of c(light velocity) + G4double GetBeta() const; + // Velocity of the track in unit of c(light velocity) - G4double GetGamma() const; - // Gamma factor (1/sqrt[1-beta*beta]) of the track + G4double GetGamma() const; + // Gamma factor (1/sqrt[1-beta*beta]) of the track - G4VPhysicalVolume* GetPhysicalVolume() const; + G4VPhysicalVolume* GetPhysicalVolume() const; - const G4VTouchable* GetTouchable() const; - const G4TouchableHandle& GetTouchableHandle() const; - void SetTouchableHandle(const G4TouchableHandle& apValue); + const G4VTouchable* GetTouchable() const; + const G4TouchableHandle& GetTouchableHandle() const; + void SetTouchableHandle(const G4TouchableHandle& apValue); - G4Material* GetMaterial() const; - void SetMaterial(G4Material*); + G4Material* GetMaterial() const; + void SetMaterial(G4Material*); - const G4MaterialCutsCouple* GetMaterialCutsCouple() const; - void SetMaterialCutsCouple(const G4MaterialCutsCouple*); + const G4MaterialCutsCouple* GetMaterialCutsCouple() const; + void SetMaterialCutsCouple(const G4MaterialCutsCouple*); - G4VSensitiveDetector* GetSensitiveDetector() const; - void SetSensitiveDetector(G4VSensitiveDetector*); + G4VSensitiveDetector* GetSensitiveDetector() const; + void SetSensitiveDetector(G4VSensitiveDetector*); - G4double GetSafety() const; - void SetSafety(const G4double aValue); + G4double GetSafety() const; + void SetSafety(const G4double aValue); - const G4ThreeVector& GetPolarization() const; - void SetPolarization(const G4ThreeVector& aValue); - void AddPolarization(const G4ThreeVector& aValue); + const G4ThreeVector& GetPolarization() const; + void SetPolarization(const G4ThreeVector& aValue); + void AddPolarization(const G4ThreeVector& aValue); - G4StepStatus GetStepStatus() const; - void SetStepStatus(const G4StepStatus aValue); + G4StepStatus GetStepStatus() const; + void SetStepStatus(const G4StepStatus aValue); - const G4VProcess* GetProcessDefinedStep() const; - // If the pointer is 0, this means the Step is defined - // by the user defined limit in the current volume. - void SetProcessDefinedStep(const G4VProcess* aValue); + const G4VProcess* GetProcessDefinedStep() const; + // If the pointer is 0, this means the Step is defined + // by the user defined limit in the current volume + void SetProcessDefinedStep(const G4VProcess* aValue); - - G4double GetMass() const; - void SetMass(G4double value); + G4double GetMass() const; + void SetMass(G4double value); - G4double GetCharge() const; - void SetCharge(G4double value); + G4double GetCharge() const; + void SetCharge(G4double value); - G4double GetMagneticMoment() const; - void SetMagneticMoment(G4double value); + G4double GetMagneticMoment() const; + void SetMagneticMoment(G4double value); - void SetWeight(G4double aValue); - G4double GetWeight() const; + void SetWeight(G4double aValue); + G4double GetWeight() const; -//--------- - private: -//--------- + private: -// Member data - G4ThreeVector fPosition; - G4double fGlobalTime; + G4ThreeVector fPosition; + G4double fGlobalTime = 0.0; // Time since event is created - G4double fLocalTime; + G4double fLocalTime = 0.0; // Time since track is created - G4double fProperTime; + G4double fProperTime = 0.0; // Time since track is created (in rest frame of particle) - G4ThreeVector fMomentumDirection; - G4double fKineticEnergy; - G4double fVelocity; - // Momentum,energy and velocity - G4TouchableHandle fpTouchable; - // Touchable Handle - G4Material* fpMaterial; + G4ThreeVector fMomentumDirection; + G4double fKineticEnergy = 0.0; + G4double fVelocity = 0.0; + // Momentum,energy and velocity + G4TouchableHandle fpTouchable; + // Touchable Handle + G4Material* fpMaterial = nullptr; // Material of the volmue - const G4MaterialCutsCouple* fpMaterialCutsCouple; + const G4MaterialCutsCouple* fpMaterialCutsCouple = nullptr; // MaterialCutsCouple of the volmue - G4VSensitiveDetector* fpSensitiveDetector; - G4double fSafety; - G4ThreeVector fPolarization; - G4StepStatus fStepStatus; + G4VSensitiveDetector* fpSensitiveDetector = nullptr; + G4double fSafety = 0.0; + G4ThreeVector fPolarization; + G4StepStatus fStepStatus = fUndefined; // DoIt type which defined the current Step. - const G4VProcess* fpProcessDefinedStep; + const G4VProcess* fpProcessDefinedStep = nullptr; // Process which defined the current Step. - G4double fMass; + G4double fMass = 0.0; // Dynamical mass of the particle - G4double fCharge; + G4double fCharge = 0.0; // Dynamical Charge of the particle - G4double fMagneticMoment; + G4double fMagneticMoment = 0.0; // Dynamical MagneticMoment of the particle - G4double fWeight; + G4double fWeight = 0.0; // Track Weight }; diff --git a/source/track/include/G4StepPoint.icc b/source/track/include/G4StepPoint.icc index db7ffa9446..c293c785e4 100644 --- a/source/track/include/G4StepPoint.icc +++ b/source/track/include/G4StepPoint.icc @@ -23,221 +23,270 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4StepPoint inline methods implementation // -// -// -inline - const G4ThreeVector& G4StepPoint::GetPosition() const - { return fPosition; } +// Author: Hisaya Kurashige, 16 February 2000 +// -------------------------------------------------------------------- -inline - void G4StepPoint::SetPosition(const G4ThreeVector& aValue) - { fPosition = aValue; } +inline const G4ThreeVector& G4StepPoint::GetPosition() const +{ + return fPosition; +} -inline - void G4StepPoint::AddPosition(const G4ThreeVector& aValue) - { fPosition += aValue; } // Position where the track locates - -inline - G4double G4StepPoint::GetLocalTime() const - { return fLocalTime; } +inline void G4StepPoint::SetPosition(const G4ThreeVector& aValue) +{ + fPosition = aValue; +} -inline - void G4StepPoint::SetLocalTime(const G4double aValue) - { fLocalTime = aValue; } +inline void G4StepPoint::AddPosition(const G4ThreeVector& aValue) +{ + fPosition += aValue; // Position where the track locates +} -inline - void G4StepPoint::AddLocalTime(const G4double aValue) - { fLocalTime += aValue; } // Time since the track is created. - -inline - G4double G4StepPoint::GetGlobalTime() const - { return fGlobalTime; } +inline G4double G4StepPoint::GetLocalTime() const +{ + return fLocalTime; +} -inline - void G4StepPoint::SetGlobalTime(const G4double aValue) - { fGlobalTime = aValue; } +inline void G4StepPoint::SetLocalTime(const G4double aValue) +{ + fLocalTime = aValue; +} -inline - void G4StepPoint::AddGlobalTime(const G4double aValue) - { fGlobalTime += aValue; } - // Time since the event in which the track belongs is created. - -inline - G4double G4StepPoint::GetProperTime() const - { return fProperTime; } +inline void G4StepPoint::AddLocalTime(const G4double aValue) +{ + fLocalTime += aValue; // Time since the track is created +} -inline - void G4StepPoint::SetProperTime(const G4double aValue) - { fProperTime = aValue; } +inline G4double G4StepPoint::GetGlobalTime() const +{ + return fGlobalTime; +} -inline - void G4StepPoint::AddProperTime(const G4double aValue) - { fProperTime += aValue; } // Proper time of the particle. - -inline - const G4ThreeVector& G4StepPoint::GetMomentumDirection() const - { return fMomentumDirection; } +inline void G4StepPoint::SetGlobalTime(const G4double aValue) +{ + fGlobalTime = aValue; +} -inline - void G4StepPoint::SetMomentumDirection(const G4ThreeVector& aValue) - { fMomentumDirection = aValue; } +inline void G4StepPoint::AddGlobalTime(const G4double aValue) +{ + fGlobalTime += aValue; // Time since the event in which the +} // track belongs is created -inline - void G4StepPoint::AddMomentumDirection(const G4ThreeVector& aValue) - { fMomentumDirection += aValue;} // Direction of momentum (should be an unit vector) - -inline - G4ThreeVector G4StepPoint::GetMomentum() const - { - G4double tMomentum = std::sqrt(fKineticEnergy*fKineticEnergy + - 2*fKineticEnergy*fMass); - return G4ThreeVector(fMomentumDirection.x()*tMomentum, - fMomentumDirection.y()*tMomentum, - fMomentumDirection.z()*tMomentum); - } - // Total momentum of the track +inline G4double G4StepPoint::GetProperTime() const +{ + return fProperTime; +} -inline - G4double G4StepPoint::GetTotalEnergy() const - { return fKineticEnergy + fMass; } // Total energy of the track +inline void G4StepPoint::SetProperTime(const G4double aValue) +{ + fProperTime = aValue; +} -inline - G4double G4StepPoint::GetKineticEnergy() const - { return fKineticEnergy; } +inline void G4StepPoint::AddProperTime(const G4double aValue) +{ + fProperTime += aValue; // Proper time of the particle +} -inline - void G4StepPoint::SetKineticEnergy(const G4double aValue) - { fKineticEnergy = aValue; } +inline const G4ThreeVector& G4StepPoint::GetMomentumDirection() const +{ + return fMomentumDirection; +} -inline - void G4StepPoint::AddKineticEnergy(const G4double aValue) - { fKineticEnergy += aValue; }// Kinetic Energy of the track +inline void G4StepPoint::SetMomentumDirection(const G4ThreeVector& aValue) +{ + fMomentumDirection = aValue; +} -inline - G4double G4StepPoint::GetVelocity() const - { return fVelocity; } +inline void G4StepPoint::AddMomentumDirection(const G4ThreeVector& aValue) +{ + fMomentumDirection += aValue; // Direction of momentum (unit vector) +} -inline - void G4StepPoint::SetVelocity(G4double v) - { fVelocity = v; } - -inline - G4double G4StepPoint::GetBeta() const - { return fVelocity/CLHEP::c_light; } - // Velocity of the track in unit of c(light velocity) +inline G4ThreeVector G4StepPoint::GetMomentum() const +{ + G4double tMomentum = // Total momentum of the track + std::sqrt(fKineticEnergy * fKineticEnergy + 2 * fKineticEnergy * fMass); + return G4ThreeVector(fMomentumDirection.x() * tMomentum, + fMomentumDirection.y() * tMomentum, + fMomentumDirection.z() * tMomentum); +} -inline - G4double G4StepPoint::GetGamma() const - { return (fMass==0.) ? DBL_MAX : (fKineticEnergy+fMass)/fMass; } - // Gamma factor (1/sqrt[1-beta*beta]) of the track +inline G4double G4StepPoint::GetTotalEnergy() const +{ + return fKineticEnergy + fMass; // Total energy of the track +} -inline - G4VPhysicalVolume* G4StepPoint::GetPhysicalVolume() const - { return fpTouchable->GetVolume(); } +inline G4double G4StepPoint::GetKineticEnergy() const +{ + return fKineticEnergy; +} -inline - const G4VTouchable* G4StepPoint::GetTouchable() const - { return fpTouchable(); } +inline void G4StepPoint::SetKineticEnergy(const G4double aValue) +{ + fKineticEnergy = aValue; +} -inline - const G4TouchableHandle& G4StepPoint::GetTouchableHandle() const - { return fpTouchable; } +inline void G4StepPoint::AddKineticEnergy(const G4double aValue) +{ + fKineticEnergy += aValue; // Kinetic Energy of the track +} -inline - void G4StepPoint::SetTouchableHandle(const G4TouchableHandle& apValue) - { fpTouchable = apValue; } +inline G4double G4StepPoint::GetVelocity() const +{ + return fVelocity; +} -inline - G4double G4StepPoint::GetSafety() const - { return fSafety; } +inline void G4StepPoint::SetVelocity(G4double v) +{ + fVelocity = v; +} -inline - void G4StepPoint::SetSafety(const G4double aValue) - { fSafety = aValue; } +inline G4double G4StepPoint::GetBeta() const +{ + return fVelocity / CLHEP::c_light; // Velocity of the track +} // in unit of c (light velocity) -inline - const G4ThreeVector& G4StepPoint::GetPolarization() const - { return fPolarization; } +inline G4double G4StepPoint::GetGamma() const +{ + return (fMass == 0.) ? DBL_MAX : (fKineticEnergy + fMass) / fMass; + // Gamma factor (1/sqrt[1-beta*beta]) of the track +} -inline - void G4StepPoint::SetPolarization(const G4ThreeVector& aValue) - { fPolarization = aValue; } +inline G4VPhysicalVolume* G4StepPoint::GetPhysicalVolume() const +{ + return fpTouchable->GetVolume(); +} -inline - void G4StepPoint::AddPolarization(const G4ThreeVector& aValue) - { fPolarization += aValue; } +inline const G4VTouchable* G4StepPoint::GetTouchable() const +{ + return fpTouchable(); +} -inline - G4StepStatus G4StepPoint::GetStepStatus() const - { return fStepStatus; } +inline const G4TouchableHandle& G4StepPoint::GetTouchableHandle() const +{ + return fpTouchable; +} -inline - void G4StepPoint::SetStepStatus(const G4StepStatus aValue) - { fStepStatus = aValue; } +inline void G4StepPoint::SetTouchableHandle(const G4TouchableHandle& apValue) +{ + fpTouchable = apValue; +} -inline - const G4VProcess* G4StepPoint::GetProcessDefinedStep() const - { return fpProcessDefinedStep; } - // If the pointer is 0, this means the Step is defined - // by the user defined limit in the current volume. +inline G4double G4StepPoint::GetSafety() const +{ + return fSafety; +} -inline - void G4StepPoint::SetProcessDefinedStep(const G4VProcess* aValue) - { fpProcessDefinedStep = aValue; } +inline void G4StepPoint::SetSafety(const G4double aValue) +{ + fSafety = aValue; +} -inline - G4double G4StepPoint::GetMass() const - { return fMass; } +inline const G4ThreeVector& G4StepPoint::GetPolarization() const +{ + return fPolarization; +} -inline - void G4StepPoint::SetMass(G4double value) - { fMass = value; } +inline void G4StepPoint::SetPolarization(const G4ThreeVector& aValue) +{ + fPolarization = aValue; +} -inline - G4double G4StepPoint::GetCharge() const - { return fCharge; } +inline void G4StepPoint::AddPolarization(const G4ThreeVector& aValue) +{ + fPolarization += aValue; +} -inline - void G4StepPoint::SetCharge(G4double value) - { fCharge = value; } +inline G4StepStatus G4StepPoint::GetStepStatus() const +{ + return fStepStatus; +} -inline - G4double G4StepPoint::GetMagneticMoment() const - { return fMagneticMoment; } +inline void G4StepPoint::SetStepStatus(const G4StepStatus aValue) +{ + fStepStatus = aValue; +} -inline - void G4StepPoint::SetMagneticMoment(G4double value) - { fMagneticMoment = value; } +inline const G4VProcess* G4StepPoint::GetProcessDefinedStep() const +{ + // If the pointer is 0, this means the Step is defined + // by the user defined limit in the current volume. + return fpProcessDefinedStep; +} -inline - G4Material* G4StepPoint::GetMaterial() const - { return fpMaterial; } +inline void G4StepPoint::SetProcessDefinedStep(const G4VProcess* aValue) +{ + fpProcessDefinedStep = aValue; +} -inline - void G4StepPoint::SetMaterial(G4Material* material) - {fpMaterial = material; } +inline G4double G4StepPoint::GetMass() const +{ + return fMass; +} -inline - const G4MaterialCutsCouple* G4StepPoint::GetMaterialCutsCouple() const - { return fpMaterialCutsCouple; } +inline void G4StepPoint::SetMass(G4double value) +{ + fMass = value; +} -inline - void G4StepPoint::SetMaterialCutsCouple(const G4MaterialCutsCouple* materialCutsCouple) - { fpMaterialCutsCouple = materialCutsCouple; } +inline G4double G4StepPoint::GetCharge() const +{ + return fCharge; +} -inline - G4VSensitiveDetector* G4StepPoint::GetSensitiveDetector() const - { return fpSensitiveDetector; } +inline void G4StepPoint::SetCharge(G4double value) +{ + fCharge = value; +} -inline - void G4StepPoint::SetSensitiveDetector(G4VSensitiveDetector* aValue) - { fpSensitiveDetector = aValue; } +inline G4double G4StepPoint::GetMagneticMoment() const +{ + return fMagneticMoment; +} -inline - void G4StepPoint::SetWeight(G4double aValue) - { fWeight = aValue; } +inline void G4StepPoint::SetMagneticMoment(G4double value) +{ + fMagneticMoment = value; +} -inline - G4double G4StepPoint::GetWeight() const - { return fWeight; } +inline G4Material* G4StepPoint::GetMaterial() const +{ + return fpMaterial; +} + +inline void G4StepPoint::SetMaterial(G4Material* material) +{ + fpMaterial = material; +} + +inline const G4MaterialCutsCouple* G4StepPoint::GetMaterialCutsCouple() const +{ + return fpMaterialCutsCouple; +} + +inline void G4StepPoint::SetMaterialCutsCouple( + const G4MaterialCutsCouple* materialCutsCouple) +{ + fpMaterialCutsCouple = materialCutsCouple; +} + +inline G4VSensitiveDetector* G4StepPoint::GetSensitiveDetector() const +{ + return fpSensitiveDetector; +} + +inline void G4StepPoint::SetSensitiveDetector(G4VSensitiveDetector* aValue) +{ + fpSensitiveDetector = aValue; +} + +inline void G4StepPoint::SetWeight(G4double aValue) +{ + fWeight = aValue; +} + +inline G4double G4StepPoint::GetWeight() const +{ + return fWeight; +} diff --git a/source/track/include/G4StepStatus.hh b/source/track/include/G4StepStatus.hh index d1cba7f71f..c9d5a527bd 100644 --- a/source/track/include/G4StepStatus.hh +++ b/source/track/include/G4StepStatus.hh @@ -23,49 +23,37 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4StepStatus // +// Description: // -// -//--------------------------------------------------------------- -// -// G4StepStatus.hh -// -// Class Description: -// This is an enumerator to define possible sources which -// can define the Step length. -// -// Contact: -// Questions and comments to this code should be sent to -// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) -// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) -// -//--------------------------------------------------------------- +// Enumerator to define possible sources which can define the Step length. -#ifndef G4StepStatus_h -#define G4StepStatus_h 1 +// Authors: +// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) +// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) +// -------------------------------------------------------------------- +#ifndef G4StepStatus_hh +#define G4StepStatus_hh 1 -////////////////// enum G4StepStatus -////////////////// { - fWorldBoundary, - // Step reached the world boundary - fGeomBoundary, - // Step defined by a geometry boundary - fAtRestDoItProc, - // Step defined by a PreStepDoItVector - fAlongStepDoItProc, - // Step defined by a AlongStepDoItVector - fPostStepDoItProc, - // Step defined by a PostStepDoItVector + fWorldBoundary, + // Step reached the world boundary + fGeomBoundary, + // Step defined by a geometry boundary + fAtRestDoItProc, + // Step defined by a PreStepDoItVector + fAlongStepDoItProc, + // Step defined by a AlongStepDoItVector + fPostStepDoItProc, + // Step defined by a PostStepDoItVector fUserDefinedLimit, - // Step defined by the user Step limit in the logical volume - fExclusivelyForcedProc, - // Step defined by an exclusively forced PostStepDoIt process - fUndefined - // Step not defined yet + // Step defined by the user Step limit in the logical volume + fExclusivelyForcedProc, + // Step defined by an exclusively forced PostStepDoIt process + fUndefined + // Step not defined yet }; #endif - - diff --git a/source/track/include/G4SteppingControl.hh b/source/track/include/G4SteppingControl.hh index 865fc4ee39..0bc680188e 100644 --- a/source/track/include/G4SteppingControl.hh +++ b/source/track/include/G4SteppingControl.hh @@ -23,37 +23,26 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4SteppingControl // +// Description: // -// -//--------------------------------------------------------------- -// -// G4SteppingControl -// -// Class Description: -// This enumaration specifies possible conditions to control -// the stepping manager behavier. -// -// Contact: -// Questions and comments to this code should be sent to -// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) -// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) -// -//--------------------------------------------------------------- +// Enumeration specifying possible conditions to control +// the stepping manager behaviour. -#ifndef G4SteppingControl_h -#define G4SteppingControl_h 1 +// Authors: +// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) +// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) +// -------------------------------------------------------------------- +#ifndef G4SteppingControl_hh +#define G4SteppingControl_hh 1 -///////////////////// -enum G4SteppingControl -///////////////////// +enum G4SteppingControl { NormalCondition, - AvoidHitInvocation, - // Hit will NOT be called + AvoidHitInvocation, + // Hit will NOT be called Debug }; #endif - - diff --git a/source/track/include/G4Track.hh b/source/track/include/G4Track.hh index 58e63b3cd6..02baf9f672 100644 --- a/source/track/include/G4Track.hh +++ b/source/track/include/G4Track.hh @@ -23,323 +23,312 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4Track // +// Class description: // -// -//--------------------------------------------------------------- -// -// G4Track.hh -// -// Class Description: -// This class represents the partilce under tracking. -// It includes information related to tracking for examples: +// This class describes the particle under tracking. +// It includes information related to tracking, i.e.: // 1) current position/time of the particle, // 2) static particle information, // 3) the pointer to the physical volume where currently // the particle exists -// -//--------------------------------------------------------------- -// Modification for G4TouchableHandle 22 Oct. 2001 R.Chytracek -// Add MaterialCutCouple 08 Oct. 2002 H.Kurashige -// Add SetVelocityTableProperties 02 Apr. 2011 H.Kurashige -// Add fVelocity and Set/GetVelocity 29 Apr. 2011 H.Kurashige -// Use G4VelocityTable 17 AUg. 2011 H.Kurashige -#ifndef G4Track_h -#define G4Track_h 1 +// Author: Katsuya Amako, KEK - 1995 +// Revisions: Hisaya Kurashige, 1998-2011 +// -------------------------------------------------------------------- +#ifndef G4Track_hh +#define G4Track_hh 1 -#include // Include from 'system' +#include // Include from 'system' +#include #include -#include "globals.hh" // Include from 'global' -#include "trkdefs.hh" // Include DLL defs... -#include "G4ThreeVector.hh" // Include from 'geometry' -#include "G4LogicalVolume.hh" // Include from 'geometry' -#include "G4VPhysicalVolume.hh" // Include from 'geometry' -#include "G4Allocator.hh" // Include from 'particle+matter' -#include "G4DynamicParticle.hh" // Include from 'particle+matter' -#include "G4TrackStatus.hh" // Include from 'tracking' -#include "G4TouchableHandle.hh" // Include from 'geometry' +#include "globals.hh" // Include from 'global' +#include "trkdefs.hh" // Include DLL defs... +#include "G4ThreeVector.hh" // Include from 'geometry' +#include "G4LogicalVolume.hh" // Include from 'geometry' +#include "G4VPhysicalVolume.hh" // Include from 'geometry' +#include "G4Allocator.hh" // Include from 'particle+matter' +#include "G4DynamicParticle.hh" // Include from 'particle+matter' +#include "G4TrackStatus.hh" // Include from 'tracking' +#include "G4TouchableHandle.hh" // Include from 'geometry' #include "G4VUserTrackInformation.hh" #include "G4PhysicsModelCatalog.hh" - #include "G4Material.hh" +#include "G4Profiler.hh" -class G4Step; // Forward declaration +class G4Step; // Forward declaration class G4MaterialCutsCouple; class G4VAuxiliaryTrackInformation; class G4VProcess; -#include - -////////////// class G4Track -////////////// { + public: + // the profiler aliases are only used when compiled with GEANT4_USE_TIMEMORY + using ProfilerConfig = G4ProfilerConfig; -//-------- -public: // With description + G4Track(); + // Default constructor + G4Track(G4DynamicParticle* apValueDynamicParticle, + G4double aValueTime, + const G4ThreeVector& aValuePosition); + // Constructor - aValueTime is a global time -// Constructor - G4Track(); - G4Track(G4DynamicParticle* apValueDynamicParticle, - G4double aValueTime, - const G4ThreeVector& aValuePosition); - // aValueTime is a global time - G4Track(const G4Track&); - // Copy Constructor copys members other than tracking information - -private: - // Hide assignment operator as private - G4Track& operator=(const G4Track&); + G4Track(const G4Track&); + // Copy Constructor - copies members other than tracking information -//-------- -public: // With description + ~G4Track(); + // Destructor -// Destructor - ~G4Track(); - -// Operators - inline void *operator new(size_t); + inline void* operator new(std::size_t); // Override "new" for "G4Allocator". - inline void operator delete(void *aTrack); + inline void operator delete(void* aTrack); // Override "delete" for "G4Allocator". - G4bool operator==( const G4Track& ); - -//-------- -public: // With description -// Copy information of the track (w/o tracking information) - void CopyTrackInfo(const G4Track&); + G4Track& operator=(const G4Track&); + // Assignment operator -// Get/Set functions - // track ID - G4int GetTrackID() const; - void SetTrackID(const G4int aValue); + inline G4bool operator==(const G4Track&); + inline G4bool operator!=(const G4Track&); + // Equality operators - G4int GetParentID() const; - void SetParentID(const G4int aValue); + void CopyTrackInfo(const G4Track&); + // Copy information of the track (w/o tracking information) - // dynamic particle - const G4DynamicParticle* GetDynamicParticle() const; + G4int GetTrackID() const; + void SetTrackID(const G4int aValue); + // Get/Set functions track ID + + G4int GetParentID() const; + void SetParentID(const G4int aValue); + + const G4DynamicParticle* GetDynamicParticle() const; + // Dynamic particle - // particle definition const G4ParticleDefinition* GetParticleDefinition() const; - // following method of GetDefinition remains - // because of backward compatiblity. It will be removed in future - G4ParticleDefinition* GetDefinition() const; + // Particle definition + G4ParticleDefinition* GetDefinition() const; + // Obsolete, for backwards compatibility... - // position, time - const G4ThreeVector& GetPosition() const; - void SetPosition(const G4ThreeVector& aValue); + const G4ThreeVector& GetPosition() const; + void SetPosition(const G4ThreeVector& aValue); + // Position, time - G4double GetGlobalTime() const; - void SetGlobalTime(const G4double aValue); - // Time since the event in which the track belongs is created. + G4double GetGlobalTime() const; + void SetGlobalTime(const G4double aValue); + // Time since the event in which the track belongs is created - G4double GetLocalTime() const; - void SetLocalTime(const G4double aValue); - // Time since the current track is created. + G4double GetLocalTime() const; + void SetLocalTime(const G4double aValue); + // Time since the current track is created - G4double GetProperTime() const; - void SetProperTime(const G4double aValue); + G4double GetProperTime() const; + void SetProperTime(const G4double aValue); // Proper time of the current track - // volume, material, touchable - G4VPhysicalVolume* GetVolume() const; - G4VPhysicalVolume* GetNextVolume() const; + G4VPhysicalVolume* GetVolume() const; + G4VPhysicalVolume* GetNextVolume() const; + // Volume, material, touchable - G4Material* GetMaterial() const; - G4Material* GetNextMaterial() const; + G4Material* GetMaterial() const; + G4Material* GetNextMaterial() const; - const G4MaterialCutsCouple* GetMaterialCutsCouple() const; - const G4MaterialCutsCouple* GetNextMaterialCutsCouple() const; + const G4MaterialCutsCouple* GetMaterialCutsCouple() const; + const G4MaterialCutsCouple* GetNextMaterialCutsCouple() const; - const G4VTouchable* GetTouchable() const; - const G4TouchableHandle& GetTouchableHandle() const; - void SetTouchableHandle( const G4TouchableHandle& apValue); + const G4VTouchable* GetTouchable() const; + const G4TouchableHandle& GetTouchableHandle() const; + void SetTouchableHandle(const G4TouchableHandle& apValue); - const G4VTouchable* GetNextTouchable() const; - const G4TouchableHandle& GetNextTouchableHandle() const; - void SetNextTouchableHandle( const G4TouchableHandle& apValue); + const G4VTouchable* GetNextTouchable() const; + const G4TouchableHandle& GetNextTouchableHandle() const; + void SetNextTouchableHandle(const G4TouchableHandle& apValue); - const G4VTouchable* GetOriginTouchable() const; - const G4TouchableHandle& GetOriginTouchableHandle() const; - void SetOriginTouchableHandle( const G4TouchableHandle& apValue); + const G4VTouchable* GetOriginTouchable() const; + const G4TouchableHandle& GetOriginTouchableHandle() const; + void SetOriginTouchableHandle(const G4TouchableHandle& apValue); - // energy - G4double GetKineticEnergy() const; - void SetKineticEnergy(const G4double aValue); + G4double GetKineticEnergy() const; + void SetKineticEnergy(const G4double aValue); + // Energy - G4double GetTotalEnergy() const; + G4double GetTotalEnergy() const; + const G4ThreeVector& GetMomentumDirection() const; + void SetMomentumDirection(const G4ThreeVector& aValue); + // Momentum + + G4ThreeVector GetMomentum() const; + + G4double GetVelocity() const; + void SetVelocity(G4double val); + // Velocity + + G4double CalculateVelocity() const; + G4double CalculateVelocityForOpticalPhoton() const; + + G4bool UseGivenVelocity() const; + void UseGivenVelocity(G4bool val); + + const G4ThreeVector& GetPolarization() const; + void SetPolarization(const G4ThreeVector& aValue); + // Polarization + + G4TrackStatus GetTrackStatus() const; + void SetTrackStatus(const G4TrackStatus aTrackStatus); + // Track status, flags for tracking + + G4bool IsBelowThreshold() const; + void SetBelowThresholdFlag(G4bool value = true); + // The flag of "BelowThreshold" is set to true + // If this track energy is below threshold energy + // in this material is determined by the range cut value + + G4bool IsGoodForTracking() const; + void SetGoodForTrackingFlag(G4bool value = true); + // The flag of "GoodForTracking" is set by processes + // if this track should be tracked + // even if the energy is below threshold + + G4double GetTrackLength() const; + void AddTrackLength(const G4double aValue); + // Accumulated track length + + const G4Step* GetStep() const; + void SetStep(const G4Step* aValue); + // Step information + + G4int GetCurrentStepNumber() const; + void IncrementCurrentStepNumber(); + + G4double GetStepLength() const; + void SetStepLength(G4double value); + // Before the end of the AlongStepDoIt() loop, StepLength keeps + // the initial value which is determined by the shortest geometrical Step + // proposed by a physics process. After finishing the AlongStepDoIt(), + // it will be set equal to 'StepLength' in G4Step + + const G4ThreeVector& GetVertexPosition() const; + void SetVertexPosition(const G4ThreeVector& aValue); + // Vertex (where this track was created) information + + const G4ThreeVector& GetVertexMomentumDirection() const; + void SetVertexMomentumDirection(const G4ThreeVector& aValue); + + G4double GetVertexKineticEnergy() const; + void SetVertexKineticEnergy(const G4double aValue); + + const G4LogicalVolume* GetLogicalVolumeAtVertex() const; + void SetLogicalVolumeAtVertex(const G4LogicalVolume*); + + const G4VProcess* GetCreatorProcess() const; + void SetCreatorProcess(const G4VProcess* aValue); + + inline void SetCreatorModelIndex(G4int idx); + + inline const G4String& GetCreatorModelName() const; + + inline G4int GetCreatorModelID() const; + + G4double GetWeight() const; + void SetWeight(G4double aValue); + // Track weight; methods for manipulating a weight for this track + + G4VUserTrackInformation* GetUserInformation() const; + void SetUserInformation(G4VUserTrackInformation* aValue) const; + // User information + + void SetAuxiliaryTrackInformation(G4int idx, + G4VAuxiliaryTrackInformation* info) const; + G4VAuxiliaryTrackInformation* GetAuxiliaryTrackInformation(G4int idx) const; + inline std::map* + GetAuxiliaryTrackInformationMap() const; + + void RemoveAuxiliaryTrackInformation(G4int idx); + void RemoveAuxiliaryTrackInformation(G4String& name); + // Note: G4VAuxiliaryTrackInformation object itself is *NOT* deleted + + private: + + void ClearAuxiliaryTrackInformation(); + + // Member data + + G4ThreeVector fPosition; + // Current positon + G4double fGlobalTime = 0.0; + // Time since the event is created + G4double fLocalTime = 0.0; + // Time since the track is created + G4double fTrackLength = 0.0; + // Accumulated track length - // momentum - const G4ThreeVector& GetMomentumDirection() const; - void SetMomentumDirection(const G4ThreeVector& aValue); + G4double fVelocity = 0.0; - G4ThreeVector GetMomentum() const; + G4TouchableHandle fpTouchable; + G4TouchableHandle fpNextTouchable; + G4TouchableHandle fpOriginTouchable; + // Touchable Handle - // velocity - G4double GetVelocity() const; - void SetVelocity(G4double val); - - G4double CalculateVelocity() const; - G4double CalculateVelocityForOpticalPhoton() const; + G4DynamicParticle* fpDynamicParticle = nullptr; + G4TrackStatus fTrackStatus = fAlive; - G4bool UseGivenVelocity() const; - void UseGivenVelocity(G4bool val); - - // polarization - const G4ThreeVector& GetPolarization() const; - void SetPolarization(const G4ThreeVector& aValue); - - // track status, flags for tracking - G4TrackStatus GetTrackStatus() const; - void SetTrackStatus(const G4TrackStatus aTrackStatus); - - G4bool IsBelowThreshold() const; - void SetBelowThresholdFlag(G4bool value = true); - // The flag of "BelowThreshold" is set to true - // if this track energy is below threshold energy - // in this material determined by the range cut value - - G4bool IsGoodForTracking() const; - void SetGoodForTrackingFlag(G4bool value = true); - // The flag of "GoodForTracking" is set by processes - // if this track should be tracked - // even if the energy is below threshold - - // track length - G4double GetTrackLength() const; - void AddTrackLength(const G4double aValue); - // Accumulated the track length - - // step information - const G4Step* GetStep() const; - void SetStep(const G4Step* aValue); - - G4int GetCurrentStepNumber() const; - void IncrementCurrentStepNumber(); - - G4double GetStepLength() const; - void SetStepLength(G4double value); - // Before the end of the AlongStepDoIt loop,StepLength keeps - // the initial value which is determined by the shortest geometrical Step - // proposed by a physics process. After finishing the AlongStepDoIt, - // it will be set equal to 'StepLength' in G4Step. - - // vertex (,where this track was created) information - const G4ThreeVector& GetVertexPosition() const; - void SetVertexPosition(const G4ThreeVector& aValue); - - const G4ThreeVector& GetVertexMomentumDirection() const; - void SetVertexMomentumDirection(const G4ThreeVector& aValue); - - G4double GetVertexKineticEnergy() const; - void SetVertexKineticEnergy(const G4double aValue); - - const G4LogicalVolume* GetLogicalVolumeAtVertex() const; - void SetLogicalVolumeAtVertex(const G4LogicalVolume* ); - - const G4VProcess* GetCreatorProcess() const; - void SetCreatorProcess(const G4VProcess* aValue); - - inline void SetCreatorModelIndex(G4int idx); - - inline const G4String& GetCreatorModelName() const; - - inline G4int GetCreatorModelID() const; - - // track weight - // These are methods for manipulating a weight for this track. - G4double GetWeight() const; - void SetWeight(G4double aValue); - - // User information - G4VUserTrackInformation* GetUserInformation() const; - void SetUserInformation(G4VUserTrackInformation* aValue) const; - -//--------- - private: -//--------- - // Member data - G4int fCurrentStepNumber; // Total steps number up to now - G4ThreeVector fPosition; // Current positon - G4double fGlobalTime; // Time since the event is created - G4double fLocalTime; // Time since the track is created - G4double fTrackLength; // Accumulated track length - G4int fParentID; - G4int fTrackID; - G4double fVelocity; - - G4TouchableHandle fpTouchable; - G4TouchableHandle fpNextTouchable; - G4TouchableHandle fpOriginTouchable; - // Touchable Handle - - G4DynamicParticle* fpDynamicParticle; - G4TrackStatus fTrackStatus; - - G4bool fBelowThreshold; - // This flag is set to true if this track energy is below - // threshold energy in this material determined by the range cut value - G4bool fGoodForTracking; - // This flag is set by processes if this track should be tracked - // even if the energy is below threshold - - G4double fStepLength; - // Before the end of the AlongStepDoIt loop, this keeps the initial - // Step length which is determined by the shortest geometrical Step + G4double fStepLength = 0.0; + // Before the end of the AlongStepDoIt loop, this keeps the initial + // Step length which is determined by the shortest geometrical Step // proposed by a physics process. After finishing the AlongStepDoIt, // this will be set equal to 'StepLength' in G4Step. - G4double fWeight; - // This is a weight for this track + G4double fWeight = 1.0; + // This is a weight for this track - const G4Step* fpStep; + const G4Step* fpStep = nullptr; - G4ThreeVector fVtxPosition; // (x,y,z) of the vertex - G4ThreeVector fVtxMomentumDirection; // Momentum direction at the vertex - G4double fVtxKineticEnergy; // Kinetic energy at the vertex - const G4LogicalVolume* fpLVAtVertex; //Logical Volume at the vertex - const G4VProcess* fpCreatorProcess; // Process which created the track - G4int fCreatorModelIndex; // Index of the physics model which created the track - - mutable G4VUserTrackInformation* fpUserInformation; + G4ThreeVector fVtxPosition; + // (x,y,z) of the vertex + G4ThreeVector fVtxMomentumDirection; + // Momentum direction at the vertex + G4double fVtxKineticEnergy = 0.0; + // Kinetic energy at the vertex + const G4LogicalVolume* fpLVAtVertex = nullptr; + // Logical Volume at the vertex + const G4VProcess* fpCreatorProcess = nullptr; + // Process which created the track - // cached values for CalculateVelocity - mutable G4Material* prev_mat; - mutable G4MaterialPropertyVector* groupvel; - mutable G4double prev_velocity; - mutable G4double prev_momentum; + mutable G4VUserTrackInformation* fpUserInformation = nullptr; - G4bool is_OpticalPhoton; - - G4bool useGivenVelocity; - // do not calclulate velocity and just use current fVelocity + mutable G4Material* prev_mat = nullptr; + mutable G4MaterialPropertyVector* groupvel = nullptr; + mutable G4double prev_velocity = 0.0; + mutable G4double prev_momentum = 0.0; + // cached values for CalculateVelocity + + mutable std::map* + fpAuxiliaryTrackInformationMap = nullptr; + + G4int fCurrentStepNumber = 0; + // Total steps number up to now + + G4int fCreatorModelIndex = -1; + // Index of the physics model which created the track + + G4int fParentID = 0; + G4int fTrackID = 0; + + G4bool fBelowThreshold = false; + // This flag is set to true if this track energy is below + // threshold energy in this material determined by the range cut value + G4bool fGoodForTracking = false; + // This flag is set by processes if this track should be tracked + // even if the energy is below threshold + + G4bool is_OpticalPhoton = false; + + G4bool useGivenVelocity = false; + // do not calculate velocity and just use current fVelocity // if this flag is set - - mutable std::map* fpAuxiliaryTrackInformationMap; - -//-------- -public: -//-------- - - void SetAuxiliaryTrackInformation(G4int idx, G4VAuxiliaryTrackInformation* info) const; - G4VAuxiliaryTrackInformation* GetAuxiliaryTrackInformation(G4int idx) const; - std::map* GetAuxiliaryTrackInformationMap() const - { return fpAuxiliaryTrackInformationMap; } - - void RemoveAuxiliaryTrackInformation(G4int idx); - void RemoveAuxiliaryTrackInformation(G4String& name); - // Note: G4VAuxiliaryTrackInformation object itself is *NOT* deleted - -//-------- -private: -//-------- - - void ClearAuxiliaryTrackInformation(); }; #include "G4Track.icc" diff --git a/source/track/include/G4Track.icc b/source/track/include/G4Track.icc index 8761b4b0cc..72c9fa5c4f 100644 --- a/source/track/include/G4Track.icc +++ b/source/track/include/G4Track.icc @@ -23,12 +23,11 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4Track inline methods implementation // -// -//----------------------------------------------------------------- -// Definitions of inline functions -//----------------------------------------------------------------- -// change GetMaterial 16 Feb. 2000 H.Kurashige +// Author: Katsuya Amako, KEK - 1996 +// Revisions: Hisaya Kurashige, 1998-2011 +// -------------------------------------------------------------------- extern G4TRACK_DLL G4Allocator*& aTrackAllocator(); @@ -39,281 +38,437 @@ extern G4TRACK_DLL G4Allocator*& aTrackAllocator(); //------------------------------------------------------------- #include "G4Step.hh" -// Operators +inline void* G4Track::operator new(std::size_t) +{ + if(aTrackAllocator() == nullptr) + { + aTrackAllocator() = new G4Allocator; + } + return (void*) aTrackAllocator()->MallocSingle(); +} - inline void* G4Track::operator new(size_t) - { - if (!aTrackAllocator()) aTrackAllocator() = new G4Allocator; - return (void *) aTrackAllocator()->MallocSingle(); - } - // Override "new" for "G4Allocator". +inline void G4Track::operator delete(void* aTrack) +{ + aTrackAllocator()->FreeSingle((G4Track*) aTrack); +} - inline void G4Track::operator delete(void *aTrack) - { aTrackAllocator()->FreeSingle((G4Track *) aTrack); } - // Override "delete" for "G4Allocator". +inline G4bool G4Track::operator==(const G4Track& trk) +{ + return (this == &trk); +} - inline G4bool G4Track::operator==( const G4Track& trk) - { return (this==&trk); } - // Define "==" operator because "G4TrackVector" uses - // "RWPtrOrderdVector" which requires this. +inline G4bool G4Track::operator!=(const G4Track& trk) +{ + return (this != &trk); +} -// Get/Set functions // dynamic particle - inline const G4DynamicParticle* G4Track::GetDynamicParticle() const - { return fpDynamicParticle; } +inline const G4DynamicParticle* G4Track::GetDynamicParticle() const +{ + return fpDynamicParticle; +} // particle definition - inline G4ParticleDefinition* G4Track::GetDefinition() const - { return fpDynamicParticle->GetDefinition(); } +inline G4ParticleDefinition* G4Track::GetDefinition() const +{ + return fpDynamicParticle->GetDefinition(); +} // particle definition - inline const G4ParticleDefinition* G4Track::GetParticleDefinition() const - { return fpDynamicParticle->GetParticleDefinition(); } +inline const G4ParticleDefinition* G4Track::GetParticleDefinition() const +{ + return fpDynamicParticle->GetParticleDefinition(); +} // parent track ID - inline G4int G4Track::GetParentID() const - { return fParentID; } +inline G4int G4Track::GetParentID() const +{ + return fParentID; +} - inline void G4Track::SetParentID(const G4int aValue) - { fParentID = aValue; } +inline void G4Track::SetParentID(const G4int aValue) +{ + fParentID = aValue; +} // current track ID - inline G4int G4Track::GetTrackID() const - { return fTrackID; } +inline G4int G4Track::GetTrackID() const +{ + return fTrackID; +} - inline void G4Track::SetTrackID(const G4int aValue) - { fTrackID = aValue; } +inline void G4Track::SetTrackID(const G4int aValue) +{ + fTrackID = aValue; +} // position - inline const G4ThreeVector& G4Track::GetPosition() const - { return fPosition; } +inline const G4ThreeVector& G4Track::GetPosition() const +{ + return fPosition; +} - inline void G4Track::SetPosition(const G4ThreeVector& aValue) - { fPosition = aValue; } +inline void G4Track::SetPosition(const G4ThreeVector& aValue) +{ + fPosition = aValue; +} // global time - inline G4double G4Track::GetGlobalTime() const - { return fGlobalTime; } +inline G4double G4Track::GetGlobalTime() const +{ + return fGlobalTime; +} - inline void G4Track::SetGlobalTime(const G4double aValue) - { fGlobalTime = aValue; } - // Time since the event in which the track belongs is created. +inline void G4Track::SetGlobalTime(const G4double aValue) +{ + fGlobalTime = aValue; +} // local time - inline G4double G4Track::GetLocalTime() const - { return fLocalTime; } +inline G4double G4Track::GetLocalTime() const +{ + return fLocalTime; +} - inline void G4Track::SetLocalTime(const G4double aValue) - { fLocalTime = aValue; } - // Time since the current track is created. +inline void G4Track::SetLocalTime(const G4double aValue) +{ + fLocalTime = aValue; +} // proper time - inline G4double G4Track::GetProperTime() const - { return fpDynamicParticle->GetProperTime(); } +inline G4double G4Track::GetProperTime() const +{ + return fpDynamicParticle->GetProperTime(); +} - inline void G4Track::SetProperTime(const G4double aValue) - { fpDynamicParticle->SetProperTime(aValue); } - // Proper time of the current track +inline void G4Track::SetProperTime(const G4double aValue) +{ + fpDynamicParticle->SetProperTime(aValue); +} // velocity - inline G4double G4Track::GetVelocity() const - { return (useGivenVelocity) ? fVelocity : - ((!is_OpticalPhoton) ? CLHEP::c_light*fpDynamicParticle->GetBeta() : - CalculateVelocityForOpticalPhoton()); - } +inline G4double G4Track::GetVelocity() const +{ + return (useGivenVelocity) ? fVelocity + : ((!is_OpticalPhoton) + ? CLHEP::c_light * fpDynamicParticle->GetBeta() + : CalculateVelocityForOpticalPhoton()); +} - inline G4double G4Track::CalculateVelocity() const - { - return GetVelocity(); - } +inline G4double G4Track::CalculateVelocity() const +{ + return GetVelocity(); +} - inline void G4Track::SetVelocity(G4double val) - { fVelocity = val; } +inline void G4Track::SetVelocity(G4double val) +{ + fVelocity = val; +} - inline G4bool G4Track::UseGivenVelocity() const - { return useGivenVelocity;} +inline G4bool G4Track::UseGivenVelocity() const +{ + return useGivenVelocity; +} - inline void G4Track::UseGivenVelocity(G4bool val) - { useGivenVelocity = val;} +inline void G4Track::UseGivenVelocity(G4bool val) +{ + useGivenVelocity = val; +} // volume - inline G4VPhysicalVolume* G4Track::GetVolume() const - { return (fpTouchable) ? fpTouchable->GetVolume() : nullptr; } +inline G4VPhysicalVolume* G4Track::GetVolume() const +{ + return (fpTouchable) ? fpTouchable->GetVolume() : nullptr; +} - inline G4VPhysicalVolume* G4Track::GetNextVolume() const - { return (fpNextTouchable) ? fpNextTouchable->GetVolume() : nullptr; } +inline G4VPhysicalVolume* G4Track::GetNextVolume() const +{ + return (fpNextTouchable) ? fpNextTouchable->GetVolume() : nullptr; +} // material - assuming that the pointer to G4Step is defined - inline const G4MaterialCutsCouple* G4Track::GetMaterialCutsCouple() const - { return fpStep->GetPreStepPoint()->GetMaterialCutsCouple(); } +inline const G4MaterialCutsCouple* G4Track::GetMaterialCutsCouple() const +{ + return fpStep->GetPreStepPoint()->GetMaterialCutsCouple(); +} - inline const G4MaterialCutsCouple* G4Track::GetNextMaterialCutsCouple() const - { return fpStep->GetPostStepPoint()->GetMaterialCutsCouple(); } +inline const G4MaterialCutsCouple* G4Track::GetNextMaterialCutsCouple() const +{ + return fpStep->GetPostStepPoint()->GetMaterialCutsCouple(); +} - inline G4Material* G4Track::GetMaterial() const - { return fpStep->GetPreStepPoint()->GetMaterial(); } +inline G4Material* G4Track::GetMaterial() const +{ + return fpStep->GetPreStepPoint()->GetMaterial(); +} - inline G4Material* G4Track::GetNextMaterial() const - { return fpStep->GetPostStepPoint()->GetMaterial(); } +inline G4Material* G4Track::GetNextMaterial() const +{ + return fpStep->GetPostStepPoint()->GetMaterial(); +} // touchable - inline const G4VTouchable* G4Track::GetTouchable() const - { return fpTouchable(); } +inline const G4VTouchable* G4Track::GetTouchable() const +{ + return fpTouchable(); +} - inline const G4TouchableHandle& G4Track::GetTouchableHandle() const - { return fpTouchable; } +inline const G4TouchableHandle& G4Track::GetTouchableHandle() const +{ + return fpTouchable; +} - inline void G4Track::SetTouchableHandle( const G4TouchableHandle& apValue) - { fpTouchable = apValue; } +inline void G4Track::SetTouchableHandle(const G4TouchableHandle& apValue) +{ + fpTouchable = apValue; +} - inline const G4VTouchable* G4Track::GetNextTouchable() const - { return fpNextTouchable(); } +inline const G4VTouchable* G4Track::GetNextTouchable() const +{ + return fpNextTouchable(); +} - inline const G4TouchableHandle& G4Track::GetNextTouchableHandle() const - { return fpNextTouchable; } +inline const G4TouchableHandle& G4Track::GetNextTouchableHandle() const +{ + return fpNextTouchable; +} - inline void G4Track::SetNextTouchableHandle( const G4TouchableHandle& apValue) - { fpNextTouchable = apValue; } +inline void G4Track::SetNextTouchableHandle(const G4TouchableHandle& apValue) +{ + fpNextTouchable = apValue; +} - inline const G4VTouchable* G4Track::GetOriginTouchable() const - { return fpOriginTouchable(); } +inline const G4VTouchable* G4Track::GetOriginTouchable() const +{ + return fpOriginTouchable(); +} - inline const G4TouchableHandle& G4Track::GetOriginTouchableHandle() const - { return fpOriginTouchable; } +inline const G4TouchableHandle& G4Track::GetOriginTouchableHandle() const +{ + return fpOriginTouchable; +} - inline void G4Track::SetOriginTouchableHandle( const G4TouchableHandle& apValue) - { fpOriginTouchable = apValue; } +inline void G4Track::SetOriginTouchableHandle(const G4TouchableHandle& apValue) +{ + fpOriginTouchable = apValue; +} // kinetic energy - inline G4double G4Track::GetKineticEnergy() const - { return fpDynamicParticle->GetKineticEnergy(); } +inline G4double G4Track::GetKineticEnergy() const +{ + return fpDynamicParticle->GetKineticEnergy(); +} - inline void G4Track::SetKineticEnergy(const G4double aValue) - { fpDynamicParticle->SetKineticEnergy(aValue); } +inline void G4Track::SetKineticEnergy(const G4double aValue) +{ + fpDynamicParticle->SetKineticEnergy(aValue); +} // total energy - inline G4double G4Track::GetTotalEnergy() const - { return fpDynamicParticle->GetTotalEnergy(); } +inline G4double G4Track::GetTotalEnergy() const +{ + return fpDynamicParticle->GetTotalEnergy(); +} // momentum - inline G4ThreeVector G4Track::GetMomentum() const - { return fpDynamicParticle->GetMomentum(); } +inline G4ThreeVector G4Track::GetMomentum() const +{ + return fpDynamicParticle->GetMomentum(); +} // momentum (direction) - inline const G4ThreeVector& G4Track::GetMomentumDirection() const - { return fpDynamicParticle->GetMomentumDirection(); } +inline const G4ThreeVector& G4Track::GetMomentumDirection() const +{ + return fpDynamicParticle->GetMomentumDirection(); +} - inline void G4Track::SetMomentumDirection(const G4ThreeVector& aValue) - { fpDynamicParticle->SetMomentumDirection(aValue); } +inline void G4Track::SetMomentumDirection(const G4ThreeVector& aValue) +{ + fpDynamicParticle->SetMomentumDirection(aValue); +} // polarization - inline const G4ThreeVector& G4Track::GetPolarization() const - { return fpDynamicParticle->GetPolarization(); } +inline const G4ThreeVector& G4Track::GetPolarization() const +{ + return fpDynamicParticle->GetPolarization(); +} - inline void G4Track::SetPolarization(const G4ThreeVector& aValue) - { fpDynamicParticle->SetPolarization(aValue); } +inline void G4Track::SetPolarization(const G4ThreeVector& aValue) +{ + fpDynamicParticle->SetPolarization(aValue); +} // track status - inline G4TrackStatus G4Track::GetTrackStatus() const - { return fTrackStatus; } +inline G4TrackStatus G4Track::GetTrackStatus() const +{ + return fTrackStatus; +} - inline void G4Track::SetTrackStatus(const G4TrackStatus aTrackStatus) - { fTrackStatus = aTrackStatus; } +inline void G4Track::SetTrackStatus(const G4TrackStatus aTrackStatus) +{ + fTrackStatus = aTrackStatus; +} // track length - inline G4double G4Track::GetTrackLength() const - { return fTrackLength; } +inline G4double G4Track::GetTrackLength() const +{ + return fTrackLength; +} - inline void G4Track::AddTrackLength(const G4double aValue) - { fTrackLength += aValue; } - // Accumulated track length +inline void G4Track::AddTrackLength(const G4double aValue) +{ + fTrackLength += aValue; +} +// Accumulated track length -// step number - inline G4int G4Track::GetCurrentStepNumber() const - { return fCurrentStepNumber; } +// step number +inline G4int G4Track::GetCurrentStepNumber() const +{ + return fCurrentStepNumber; +} - inline void G4Track::IncrementCurrentStepNumber() - { ++fCurrentStepNumber; } +inline void G4Track::IncrementCurrentStepNumber() +{ + ++fCurrentStepNumber; +} // step length - inline G4double G4Track::GetStepLength() const - { return fStepLength; } +inline G4double G4Track::GetStepLength() const +{ + return fStepLength; +} - inline void G4Track::SetStepLength(G4double value) - { fStepLength = value; } +inline void G4Track::SetStepLength(G4double value) +{ + fStepLength = value; +} // vertex (where this track was created) information - inline const G4ThreeVector& G4Track::GetVertexPosition() const - { return fVtxPosition; } +inline const G4ThreeVector& G4Track::GetVertexPosition() const +{ + return fVtxPosition; +} - inline void G4Track::SetVertexPosition(const G4ThreeVector& aValue) - { fVtxPosition = aValue; } +inline void G4Track::SetVertexPosition(const G4ThreeVector& aValue) +{ + fVtxPosition = aValue; +} - inline const G4ThreeVector& G4Track::GetVertexMomentumDirection() const - { return fVtxMomentumDirection; } - inline void G4Track::SetVertexMomentumDirection(const G4ThreeVector& aValue) - { fVtxMomentumDirection = aValue; } +inline const G4ThreeVector& G4Track::GetVertexMomentumDirection() const +{ + return fVtxMomentumDirection; +} - inline G4double G4Track::GetVertexKineticEnergy() const - { return fVtxKineticEnergy; } +inline void G4Track::SetVertexMomentumDirection(const G4ThreeVector& aValue) +{ + fVtxMomentumDirection = aValue; +} - inline void G4Track::SetVertexKineticEnergy(const G4double aValue) - { fVtxKineticEnergy = aValue; } +inline G4double G4Track::GetVertexKineticEnergy() const +{ + return fVtxKineticEnergy; +} - inline const G4LogicalVolume* G4Track::GetLogicalVolumeAtVertex() const - { return fpLVAtVertex; } +inline void G4Track::SetVertexKineticEnergy(const G4double aValue) +{ + fVtxKineticEnergy = aValue; +} - inline void G4Track::SetLogicalVolumeAtVertex(const G4LogicalVolume* aValue) - { fpLVAtVertex = aValue; } +inline const G4LogicalVolume* G4Track::GetLogicalVolumeAtVertex() const +{ + return fpLVAtVertex; +} - inline const G4VProcess* G4Track::GetCreatorProcess() const - { return fpCreatorProcess; } - // If the pointer is 0, this means the track is created - // by the event generator, i.e. the primary track.If it is not - // 0, it points to the process which created this track. +inline void G4Track::SetLogicalVolumeAtVertex(const G4LogicalVolume* aValue) +{ + fpLVAtVertex = aValue; +} - inline void G4Track::SetCreatorProcess(const G4VProcess* aValue) - { fpCreatorProcess = aValue; } +inline const G4VProcess* G4Track::GetCreatorProcess() const +{ + // If the pointer is null, this means the track is created + // by the event generator, i.e. the primary track. If it is not + // null, it points to the process which created this track. - inline void G4Track::SetCreatorModelIndex(G4int idx) - { fCreatorModelIndex = idx; } + return fpCreatorProcess; +} - inline const G4String & G4Track::GetCreatorModelName() const - { return G4PhysicsModelCatalog::GetModelName(fCreatorModelIndex); } +inline void G4Track::SetCreatorProcess(const G4VProcess* aValue) +{ + fpCreatorProcess = aValue; +} - inline G4int G4Track::GetCreatorModelID() const - { return fCreatorModelIndex; } +inline void G4Track::SetCreatorModelIndex(G4int idx) +{ + fCreatorModelIndex = idx; +} + +inline const G4String& G4Track::GetCreatorModelName() const +{ + return G4PhysicsModelCatalog::GetModelName(fCreatorModelIndex); +} + +inline G4int G4Track::GetCreatorModelID() const +{ + return fCreatorModelIndex; +} // flag for "Below Threshold" - inline G4bool G4Track::IsBelowThreshold() const - { return fBelowThreshold; } +inline G4bool G4Track::IsBelowThreshold() const +{ + return fBelowThreshold; +} - inline void G4Track::SetBelowThresholdFlag(G4bool value) - { fBelowThreshold = value; } +inline void G4Track::SetBelowThresholdFlag(G4bool value) +{ + fBelowThreshold = value; +} // flag for " Good for Tracking" - inline G4bool G4Track::IsGoodForTracking() const - { return fGoodForTracking; } +inline G4bool G4Track::IsGoodForTracking() const +{ + return fGoodForTracking; +} - inline void G4Track::SetGoodForTrackingFlag(G4bool value) - { fGoodForTracking = value; } +inline void G4Track::SetGoodForTrackingFlag(G4bool value) +{ + fGoodForTracking = value; +} // track weight - inline void G4Track::SetWeight(G4double aValue) - { fWeight = aValue; } +inline void G4Track::SetWeight(G4double aValue) +{ + fWeight = aValue; +} - inline G4double G4Track::GetWeight() const - { return fWeight; } +inline G4double G4Track::GetWeight() const +{ + return fWeight; +} // user information - inline G4VUserTrackInformation* G4Track::GetUserInformation() const - { return fpUserInformation; } +inline G4VUserTrackInformation* G4Track::GetUserInformation() const +{ + return fpUserInformation; +} - inline void G4Track::SetUserInformation(G4VUserTrackInformation* aValue) const - { fpUserInformation = aValue; } +inline void G4Track::SetUserInformation(G4VUserTrackInformation* aValue) const +{ + fpUserInformation = aValue; +} - inline const G4Step* G4Track::GetStep() const - { return fpStep; } +inline const G4Step* G4Track::GetStep() const +{ + return fpStep; +} - inline void G4Track::SetStep(const G4Step* aValue) - { fpStep = aValue; } +inline void G4Track::SetStep(const G4Step* aValue) +{ + fpStep = aValue; +} + +inline std::map* + G4Track::GetAuxiliaryTrackInformationMap() const +{ + return fpAuxiliaryTrackInformationMap; +} diff --git a/source/track/include/G4TrackFastVector.hh b/source/track/include/G4TrackFastVector.hh index 51020202f5..df9995916a 100644 --- a/source/track/include/G4TrackFastVector.hh +++ b/source/track/include/G4TrackFastVector.hh @@ -23,26 +23,24 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4TrackFastVector // +// Description: // -// -// ------------------------------------------------------------ -// GEANT 4 class header file -// -// History: first implementation, based on object model of -// 8 Mar 1997, H.Kurashige -// ------------------------------------------------------------ +// G4TrackFastVector contains pointers to G4Track objects which are +// generated by either primary or secondary interactions. -#ifndef G4TrackFastVector_h -#define G4TrackFastVector_h 1 +// Author: Hisaya Kurashige, 8 March 1997 +// -------------------------------------------------------------------- +#ifndef G4TrackFastVector_hh +#define G4TrackFastVector_hh 1 -class G4Track; #include "G4FastVector.hh" +class G4Track; + const G4int G4TrackFastVectorSize = 512; -typedef G4FastVector G4TrackFastVector; -// Contains pointers to G4Track objects which are -// generated by either primary or secondary interaction. + +using G4TrackFastVector = G4FastVector; #endif - diff --git a/source/track/include/G4TrackStatus.hh b/source/track/include/G4TrackStatus.hh index 086a7beb53..12d13fed94 100644 --- a/source/track/include/G4TrackStatus.hh +++ b/source/track/include/G4TrackStatus.hh @@ -23,47 +23,34 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4TrackStatus // +// Description: // -// -//--------------------------------------------------------------- -// -// G4TrackStatus.hh -// -// Class Description: -// This is an enumerator to define the current status -// of the track which is under the transportation. -// -// Contact: -// Questions and comments to this code should be sent to -// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) -// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) -// -//--------------------------------------------------------------- +// Enumerator to define the current status of the track which +// is under transportation. -#ifndef G4TrackStatus_h -#define G4TrackStatus_h 1 +// Authors: +// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) +// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) +// -------------------------------------------------------------------- +#ifndef G4TrackStatus_hh +#define G4TrackStatus_hh 1 -////////////////// enum G4TrackStatus -////////////////// { - - fAlive, // Continue the tracking - fStopButAlive, // Invoke active rest physics processes and - // and kill the current track afterward - fStopAndKill, // Kill the current track - + fAlive, + // Continue the tracking + fStopButAlive, + // Invoke active rest physics processes and kill the current track afterward + fStopAndKill, + // Kill the current track fKillTrackAndSecondaries, - // Kill the current track and also associated - // secondaries. - fSuspend, // Suspend the current track + // Kill the current track and also associated secondaries + fSuspend, + // Suspend the current track fPostponeToNextEvent - // Postpones the tracking of thecurrent track - // to the next event. - + // Postpone the tracking of the current track to the next event }; #endif - - diff --git a/source/track/include/G4TrackVector.hh b/source/track/include/G4TrackVector.hh index b340d34ffa..d66fd34d58 100644 --- a/source/track/include/G4TrackVector.hh +++ b/source/track/include/G4TrackVector.hh @@ -23,34 +23,23 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4TrackVector // +// Description: // -//--------------------------------------------------------------- -// -// G4TrackVector.hh -// -// class description: -// This class keeps a List of G4Track objects. It is implemented -// as a RougeWave pointer ordered vector. -// -// Contact: -// Questions and comments to this code should be sent to -// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) -// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) -// -//--------------------------------------------------------------- +// G4TrackVector keeps a list of G4Track objects -#ifndef G4TrackVector_h -#define G4TrackVector_h 1 +// Authors: +// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) +// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) +// -------------------------------------------------------------------- +#ifndef G4TrackVector_hh +#define G4TrackVector_hh 1 #include + class G4Track; -class G4Step; - - -typedef std::vector G4TrackVector; +using G4TrackVector = std::vector; #endif - - diff --git a/source/track/include/G4VAuxiliaryTrackInformation.hh b/source/track/include/G4VAuxiliaryTrackInformation.hh index a7289d6fb7..7d11a76661 100644 --- a/source/track/include/G4VAuxiliaryTrackInformation.hh +++ b/source/track/include/G4VAuxiliaryTrackInformation.hh @@ -23,42 +23,38 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// -//--------------------------------------------------------------- -// // G4VAuxiliaryTrackInformation // -// Class Description: +// Class description: // -// Abstract class which the user can derive his/her own concrete -// class for toring user's information associating with a G4Track -// class object. +// Abstract class from which the user can derive a concrete class for +// storing user's information associated with a G4Track class object. // -// It is user's responsibility -// 1) Construct a concrete class object and set the pointer to -// proper G4Track object +// It is user's responsibility: +// 1) To construct a concrete class object and set the pointer to +// the proper G4Track // 2) Concrete class derived from this class is expected to use G4Allocator -// for memory management or something equivarent for performance reason +// for memory management or something equivarent for performance reason // -// To set a pointer of a concrete class object to G4Track in +// To set a pointer of a concrete class object to G4Track in // G4AuxiliaryTrackingInformation concrete implementation, given the G4Track -// object is available only by "pointer to const", SetAuxiliaryTrackInformation() -// method of G4TrackingManager is available. +// object is available only by "pointer to const", +// SetAuxiliaryTrackInformation() method of G4TrackingManager is available. // -// The concrete class object is deleted by Geant4 kernel when +// The concrete class object is deleted by Geant4 kernel when // associated G4Track object is deleted. - -#ifndef G4VAuxiliaryTrackInformation_H -#define G4VAuxiliaryTrackInformation_H 1 +// Author: Makoto Asai, 3 June 2005 +// -------------------------------------------------------------------- +#ifndef G4VAuxiliaryTrackInformation_hh +#define G4VAuxiliaryTrackInformation_hh 1 #include "globals.hh" class G4VAuxiliaryTrackInformation -{ - public: // With Description +{ + public: + G4VAuxiliaryTrackInformation(); virtual ~G4VAuxiliaryTrackInformation(); @@ -66,4 +62,3 @@ class G4VAuxiliaryTrackInformation }; #endif - diff --git a/source/track/include/G4VParticleChange.hh b/source/track/include/G4VParticleChange.hh index d61bbc7b29..47d37ca8af 100644 --- a/source/track/include/G4VParticleChange.hh +++ b/source/track/include/G4VParticleChange.hh @@ -23,304 +23,269 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4VParticleChange // +// Class description: // -// -// ------------------------------------------------------------ -// GEANT 4 class header file +// Abstract class for "Particle Change". // +// The ParticleChange class contains the results after invocation +// of a physics process. This includes final states of parent particle +// (momentum, energy, etc) and secondary particles generated by the +// interaction. +// The tracking assumes that all the values of energy and momentum are +// in global reference system, therefore all the needed Lorentz +// transformations must have been already computed when filling the +// data-members of this class. // -// ------------------------------------------------------------ -// Implemented for the new scheme 23 Mar. 1998 H.Kurahige -// -// Class Description -// This class is the abstract class for ParticleChange. -//- -// The ParticleChange class ontains the results after invocation -// of a physics process. This includes final states of parent -// particle (momentum, energy, etc) and secondary particles generated -// by the interaction. -// The tracking assumes that all the values of energy and -// momentum are in global reference system, therefore all the -// needed Lorentz transformations must have been already Done -// when filling the data-members of this class. -//- -//- -// This abstract class has following four virtual methods +// This abstract class has following four virtual methods: // virtual G4Step* UpdateStepForAtRest(G4Step* Step); // virtual G4Step* UpdateStepForAlongStep(G4Step* Step); // virtual G4Step* UpdateStepForPostStep(G4Step* Step); // virtual void Initialize(const G4Track&); -// The UpdateStep methods return the pointer to the G4Step -// after updating the given Step information by using final state -// information of the track given by a physics process. -// User must add methods to keep the final state information -// in his derived class as well as implement UpdateStep methods -// which he want to use. -//- -// The Initialize methods is provided to refresh the final -// state information and should be called by each process -// at the beginning of DoIt. -// -// ------------------------------------------------------------ -// Implement Event Biasing Scheme 9 Nov.,98 H.Kurashige -// add CheckIt 13 Apr.,99 H.Kurashige -// add accuracy leveles 5 May, 99 H.Kurashige -// add check secondaries 11 June, 03 H.Kurashige -// add new methods of ProposeXXX 08 May, 04 H.Kurashige -// remove obsolete methods of SetXXX 19 Sep, 04 H.Kurashige -// add flag for first/last step in volume 30 Oct. 2006 H.Kurashige -// add nonIonizingEnergyLoss 26 Mar 2007 H.Kurashige -// modify/fix bugs related to weight 17 Sep. 2011 H.Kurashige -// fix bugs related to weight 29 Apr. 2012 H.Kurashige +// The UpdateStep methods return the pointer to the G4Step after updating +// the given Step information by using final state information of the track +// given by a physics process. +// User must add methods to keep the final state information in the derived +// class as well as implement UpdateStep() methods wished to use. // +// The Initialize() methods are provided to refresh the final state +// information and should be called by each process at the beginning of DoIt(). -#ifndef G4VParticleChange_h -#define G4VParticleChange_h 1 +// Author: Hisaya Kurashige, 23 March 1998 +// -------------------------------------------------------------------- +#ifndef G4VParticleChange_hh +#define G4VParticleChange_hh 1 #include "globals.hh" #include "G4ios.hh" #include -class G4Track; -class G4Step; - #include "G4TrackFastVector.hh" #include "G4TrackStatus.hh" #include "G4SteppingControl.hh" +#include "G4Step.hh" +#include "G4Track.hh" - -class G4VParticleChange +class G4VParticleChange { public: - // default constructor + G4VParticleChange(); + // Default constructor - // destructor virtual ~G4VParticleChange(); + // Destructor - // equal/unequal operator - G4bool operator==(const G4VParticleChange &right) const; - G4bool operator!=(const G4VParticleChange &right) const; - // "equal" means that teo objects have the same pointer. + G4bool operator==(const G4VParticleChange& right) const; + G4bool operator!=(const G4VParticleChange& right) const; + // Equality operators; pointer comparison + + // --- the following methods are for updating G4Step --- - protected: - // hide copy constructor and assignment operaor as protected - G4VParticleChange(const G4VParticleChange &right); - G4VParticleChange & operator=(const G4VParticleChange &right); - - public: // with description - // --- the following methods are for updating G4Step ----- virtual G4Step* UpdateStepForAtRest(G4Step* Step); virtual G4Step* UpdateStepForAlongStep(G4Step* Step); virtual G4Step* UpdateStepForPostStep(G4Step* Step); - // Return the pointer to the G4Step after updating the Step information - // by using final state information of the track given by a physics - // process - - protected: // with description - G4Step* UpdateStepInfo(G4Step* Step); - // Update the G4Step specific attributes - // (i.e. SteppingControl, LocalEnergyDeposit, and TrueStepLength) + // Return the pointer to the G4Step after updating the Step information + // by using final state information of the track given by a physics + // process - - public: // with description virtual void Initialize(const G4Track&); - // This methods will be called by each process at the beginning of DoIt - // if necessary. + // This methods will be called by each process at the beginning + // of DoIt() if necessary + + // --- the following methods are for TruePathLength --- + + G4double GetTrueStepLength() const; + void ProposeTrueStepLength(G4double truePathLength); + // Get/Propose theTrueStepLength + + // --- the following methods are for LocalEnergyDeposit --- + + G4double GetLocalEnergyDeposit() const; + void ProposeLocalEnergyDeposit(G4double anEnergyPart); + // Get/Propose the locally deposited energy + + // --- the following methods are for nonIonizingEnergyDeposit --- + + G4double GetNonIonizingEnergyDeposit() const; + void ProposeNonIonizingEnergyDeposit(G4double anEnergyPart); + // Get/Propose the non-ionizing deposited energy + + // --- the following methods are for TrackStatus --- + + G4TrackStatus GetTrackStatus() const; + void ProposeTrackStatus(G4TrackStatus status); + // Get/Propose the final TrackStatus of the current particle + + // --- the following methods are for management of SteppingControl --- + + G4SteppingControl GetSteppingControl() const; + void ProposeSteppingControl(G4SteppingControl StepControlFlag); + // Set/Propose a flag to control stepping manager behaviour + + // --- the following methods are for management of initial/last step + + G4bool GetFirstStepInVolume() const; + G4bool GetLastStepInVolume() const; + void ProposeFirstStepInVolume(G4bool flag); + void ProposeLastStepInVolume(G4bool flag); + + // --- the following methods are for management of secondaries --- + + void Clear(); + // Clear the contents of this objects + // This method should be called after the Tracking(Stepping) + // manager removes all secondaries in theListOfSecondaries + + void SetNumberOfSecondaries(G4int totSecondaries); + // SetNumberOfSecondaries must be called just before AddSecondary() + // in order to secure memory space for theListOfSecondaries + // This method resets theNumberOfSecondaries to zero + // (that will be incremented at every AddSecondary() call) + + G4int GetNumberOfSecondaries() const; + // Returns the number of secondaries current stored in G4TrackFastVector + + G4Track* GetSecondary(G4int anIndex) const; + // Returns the pointer to the generated secondary particle + // which is specified by an Index + + void AddSecondary(G4Track* aSecondary); + // Adds a secondary particle to theListOfSecondaries + + // --- the following methods are for management of weights --- + + G4double GetWeight() const; + G4double GetParentWeight() const; + // Get weight of the parent (i.e. current) track + + void ProposeWeight(G4double finalWeight); + void ProposeParentWeight(G4double finalWeight); + // Propose new weight of the parent (i.e. current) track + // As for AlongStepDoIt, the parent weight will be set + // in accumulated manner, i.e. - If two processes propose + // weight of W1 and W2 respectively for the track with initial + // weight of W0 the final weight is set to: (W1/W0) * (W2/W0) * W0 + + void SetSecondaryWeightByProcess(G4bool); + G4bool IsSecondaryWeightSetByProcess() const; + // In default (fSecondaryWeightByProcess flag is false), + // the weight of secondary tracks will be set to the parent weight + // If fSecondaryWeightByProcess flag is true, the weight of secondary + // tracks will not be changed by the ParticleChange (i.e. the process + // determine the secondary weight) + // NOTE: + // Make sure that only one process in AlongStepDoIt() proposes the + // parent weight; if several processes in AlongStepDoIt() propose + // the parent weight and add secondaties with fSecondaryWeightByProcess + // is set to false, secondary weights may be wrong + + void SetParentWeightByProcess(G4bool); + G4bool IsParentWeightSetByProcess() const; + // Obsolete + + // --- Dump and debug methods --- + + virtual void DumpInfo() const; + // Print out information + + void SetVerboseLevel(G4int vLevel); + G4int GetVerboseLevel() const; + + virtual G4bool CheckIt(const G4Track&); + // CheckIt method is provided for debug + + void ClearDebugFlag(); + void SetDebugFlag(); + G4bool GetDebugFlag() const; + // CheckIt method is activated if debug flag is set + // and 'G4VERBOSE' is defined protected: + + G4VParticleChange(const G4VParticleChange& right); + G4VParticleChange& operator=(const G4VParticleChange& right); + // Hidden copy constructor and assignment operator + + G4Step* UpdateStepInfo(G4Step* Step); + // Update the G4Step specific attributes + // (i.e. SteppingControl, LocalEnergyDeposit, and TrueStepLength) + void InitializeTrueStepLength(const G4Track&); void InitializeLocalEnergyDeposit(const G4Track&); void InitializeSteppingControl(const G4Track&); void InitializeParentWeight(const G4Track&); void InitializeParentGlobalTime(const G4Track&); - void InitializeStatusChange(const G4Track&); void InitializeSecondaries(const G4Track&); void InitializeStepInVolumeFlags(const G4Track&); - // ------------------------------------------------------ - - public: // with description - //---- the following methods are for TruePathLength ---- - G4double GetTrueStepLength() const; - void ProposeTrueStepLength(G4double truePathLength); - // Get/Propose theTrueStepLength - //---- the following methods are for LocalEnergyDeposit ---- - G4double GetLocalEnergyDeposit() const; - void ProposeLocalEnergyDeposit(G4double anEnergyPart); - // Get/Propose the locally deposited energy - - //---- the following methods are for nonIonizingEnergyDeposit ---- - G4double GetNonIonizingEnergyDeposit() const; - void ProposeNonIonizingEnergyDeposit(G4double anEnergyPart); - // Get/Propose the non-ionizing deposited energy - - //---- the following methods are for TrackStatus ----- - G4TrackStatus GetTrackStatus() const; - void ProposeTrackStatus(G4TrackStatus status); - // Get/Propose the final TrackStatus of the current particle. - // ------------------------------------------------------ - - //---- the following methods are for managements of SteppingControl -- - G4SteppingControl GetSteppingControl() const; - void ProposeSteppingControl(G4SteppingControl StepControlFlag); - // Set/Propose a flag to control stepping manager behavier - // ------------------------------------------------------ - - //---- the following methods are for managements of initial/last step - G4bool GetFirstStepInVolume() const; - G4bool GetLastStepInVolume() const; - void ProposeFirstStepInVolume(G4bool flag); - void ProposeLastStepInVolume(G4bool flag); - - //---- the following methods are for managements of secondaries -- - void Clear(); - // Clear the contents of this objects - // This method should be called after the Tracking(Stepping) - // manager removes all secondaries in theListOfSecondaries - - void SetNumberOfSecondaries(G4int totSecondaries); - // SetNumberOfSecondaries must be called just before AddSecondary() - // in order to secure memory space for theListOfSecondaries - // This method resets theNumberOfSecondaries to 0 - // (that will be incremented at every AddSecondary() call). - - G4int GetNumberOfSecondaries() const; - // Returns the number of secondaries current stored in - // G4TrackFastVector. - - G4Track* GetSecondary(G4int anIndex) const; - // Returns the pointer to the generated secondary particle - // which is specified by an Index. - - void AddSecondary(G4Track* aSecondary); - // Add a secondary particle to theListOfSecondaries. - // ------------------------------------------------------ - - G4double GetWeight() const; - G4double GetParentWeight() const ; - // Get weight of the parent (i.e. current) track - void ProposeWeight(G4double finalWeight); - void ProposeParentWeight(G4double finalWeight); - // Propse new weight of the parent (i.e. current) track - // As for AlongStepDoIt, the parent weight will be set - // in accumulated manner - // i.e.) If two processes propose weight of W1 and W2 respectively - // for the track with initial weight of W0 - // the final weight is set to - // (W1/W0) * (W2/W0) * W0 - - void SetSecondaryWeightByProcess(G4bool); - G4bool IsSecondaryWeightSetByProcess() const; - // In default (fSecondaryWeightByProcess flag is false), - // the weight of secondary tracks will be set to - // the parent weight - // If fSecondaryWeightByProcess flag is true, - // the weight of secondary tracks will not be changed - // by the ParticleChange - // (i.e. the process determine the secodary weight) - // NOTE: - // Make sure that only one processe in AlongStepDoIt - // proposes the parent weight, - // If several processes in AlongStepDoIt proposes - // the parent weight and add secondaties with - // fSecondaryWeightByProcess is set to false, - // secondary weights may be wrong - - void SetParentWeightByProcess(G4bool); - G4bool IsParentWeightSetByProcess() const; - // Obsolete - - virtual void DumpInfo() const; - // Print out information - - void SetVerboseLevel(G4int vLevel); - G4int GetVerboseLevel() const; - - protected: - - G4TrackFastVector* theListOfSecondaries; - // The vector of secondaries. - - G4int theNumberOfSecondaries; - // The total number of secondaries produced by each process. - - G4int theSizeOftheListOfSecondaries; - // TheSizeOftheListOfSecondaries; - - G4TrackStatus theStatusChange; - // The changed (final) track status of a given particle. - - G4SteppingControl theSteppingControlFlag; - // a flag to control stepping manager behavior - - G4double theLocalEnergyDeposit; - // It represents the part of the energy lost for discrete - // or semi-continuous processes which is due to secondaries - // not generated because they would have been below their cut - // threshold. - // The sum of the locally deposited energy + the delta-energy - // coming from the continuous processes gives the - // total energy loss localized in the current Step. - - G4double theNonIonizingEnergyDeposit; - // non-ionizing energu deposit is defined as - // a part of local energy deposit, which does not cause - // ionization of atoms - - G4double theTrueStepLength; - // The value of "True" Step Length - - - G4bool theFirstStepInVolume; - G4bool theLastStepInVolume; - // flag for initial/last step - - G4double theParentWeight; - // Weight ofparent track - G4bool isParentWeightProposed; - // flags for Weight ofparent track - G4bool fSetSecondaryWeightByProcess; - // flag for setting weight of secondaries - - G4double theParentGlobalTime; - // global time of the parent. - // This is used only for checking - - G4int verboseLevel; - // The Verbose level - - public: // with description - // CheckIt method is provided for debug - virtual G4bool CheckIt(const G4Track&); - - // CheckIt method is activated - // if debug flag is set and 'G4VERBOSE' is defined - void ClearDebugFlag(); - void SetDebugFlag(); - G4bool GetDebugFlag() const; - - protected: - // CheckSecondary method is provided for debug G4bool CheckSecondary(G4Track&); - + // CheckSecondary method is provided for debug + G4double GetAccuracyForWarning() const; G4double GetAccuracyForException() const; - protected: - G4bool debugFlag; - - // accuracy levels + protected: + static const G4double accuracyForWarning; - static const G4double accuracyForException; + static const G4double accuracyForException; + // accuracy levels + G4TrackFastVector* theListOfSecondaries = nullptr; + // The vector of secondaries + G4TrackStatus theStatusChange = fAlive; + // The changed (final) track status of a given particle + + G4SteppingControl theSteppingControlFlag = NormalCondition; + // A flag to control stepping manager behavior + + G4double theLocalEnergyDeposit = 0.0; + // It represents the part of the energy lost for discrete + // or semi-continuous processes which is due to secondaries + // not generated because they would have been below their cut + // threshold. + // The sum of the locally deposited energy + the delta-energy + // coming from the continuous processes gives the + // total energy loss localized in the current Step + + G4double theNonIonizingEnergyDeposit = 0.0; + // Non-ionizing energu deposit is defined as a part of local + // energy deposit, which does not cause ionization of atoms + + G4double theTrueStepLength = 0.0; + // The value of "True" Step Length + + G4double theParentWeight = 1.0; + // Weight ofparent track + + G4double theParentGlobalTime = 0.0; + // Global time of the parent. + // This is used only for checking + + G4int theNumberOfSecondaries = 0; + // The total number of secondaries produced by each process. + + G4int theSizeOftheListOfSecondaries = 0; + // TheSizeOftheListOfSecondaries; + + G4int verboseLevel = 1; + // The Verbose level + + G4bool theFirstStepInVolume = false; + G4bool theLastStepInVolume = false; + // Flag for initial/last step + + G4bool isParentWeightProposed = false; + // Flag for Weight of parent track + G4bool fSetSecondaryWeightByProcess = false; + // Flag for setting weight of secondaries + + G4bool debugFlag = false; }; -#include "G4Step.hh" -#include "G4Track.hh" #include "G4VParticleChange.icc" #endif diff --git a/source/track/include/G4VParticleChange.icc b/source/track/include/G4VParticleChange.icc index c5530469b5..bbba17e386 100644 --- a/source/track/include/G4VParticleChange.icc +++ b/source/track/include/G4VParticleChange.icc @@ -23,170 +23,136 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4VParticleChange inline methods implementation // -// -// remove obsolete methods of SetXXX 19 Sep, 04 H.Kurashige -//---------------------------------------------------------------- -//---------------------------------------------------------------- -// Set/Get inline functions -// -inline - G4Track* G4VParticleChange::GetSecondary(G4int anIndex) const +// Author: Hisaya Kurashige, 23 March 1998 +// -------------------------------------------------------------------- + +inline G4Track* G4VParticleChange::GetSecondary(G4int anIndex) const { return (*theListOfSecondaries)[anIndex]; } -inline - G4int G4VParticleChange::GetNumberOfSecondaries() const +inline G4int G4VParticleChange::GetNumberOfSecondaries() const { return theNumberOfSecondaries; } -inline - void G4VParticleChange::ProposeTrackStatus(G4TrackStatus aStatus) +inline void G4VParticleChange::ProposeTrackStatus(G4TrackStatus aStatus) { theStatusChange = aStatus; } -inline - G4TrackStatus G4VParticleChange::GetTrackStatus() const +inline G4TrackStatus G4VParticleChange::GetTrackStatus() const { return theStatusChange; } -inline -G4SteppingControl G4VParticleChange::GetSteppingControl() const +inline G4SteppingControl G4VParticleChange::GetSteppingControl() const { - return theSteppingControlFlag; + return theSteppingControlFlag; } -inline -void G4VParticleChange::ProposeSteppingControl(G4SteppingControl StepControlFlag) +inline void +G4VParticleChange::ProposeSteppingControl(G4SteppingControl StepControlFlag) { theSteppingControlFlag = StepControlFlag; } -inline -G4bool G4VParticleChange::GetFirstStepInVolume() const +inline G4bool G4VParticleChange::GetFirstStepInVolume() const { - return theFirstStepInVolume; + return theFirstStepInVolume; } -inline -G4bool G4VParticleChange::GetLastStepInVolume() const +inline G4bool G4VParticleChange::GetLastStepInVolume() const { return theLastStepInVolume; } - -inline -void G4VParticleChange::ProposeFirstStepInVolume(G4bool flag) + +inline void G4VParticleChange::ProposeFirstStepInVolume(G4bool flag) { - theFirstStepInVolume = flag; + theFirstStepInVolume = flag; } -inline -void G4VParticleChange::ProposeLastStepInVolume(G4bool flag) +inline void G4VParticleChange::ProposeLastStepInVolume(G4bool flag) { - theLastStepInVolume = flag; + theLastStepInVolume = flag; } -//---------------------------------------------------------------- -// Set/Get inline functions -// - -inline - G4double G4VParticleChange::GetLocalEnergyDeposit() const +inline G4double G4VParticleChange::GetLocalEnergyDeposit() const { return theLocalEnergyDeposit; } -inline - void G4VParticleChange::ProposeLocalEnergyDeposit(G4double anEnergyPart) +inline void G4VParticleChange::ProposeLocalEnergyDeposit(G4double anEnergyPart) { theLocalEnergyDeposit = anEnergyPart; } -inline - G4double G4VParticleChange::GetNonIonizingEnergyDeposit() const +inline G4double G4VParticleChange::GetNonIonizingEnergyDeposit() const { return theNonIonizingEnergyDeposit; } -inline - void G4VParticleChange::ProposeNonIonizingEnergyDeposit(G4double anEnergyPart) +inline void +G4VParticleChange::ProposeNonIonizingEnergyDeposit(G4double anEnergyPart) { theNonIonizingEnergyDeposit = anEnergyPart; } -inline - G4double G4VParticleChange::GetTrueStepLength() const +inline G4double G4VParticleChange::GetTrueStepLength() const { return theTrueStepLength; } -inline - void G4VParticleChange::ProposeTrueStepLength(G4double aLength) +inline void G4VParticleChange::ProposeTrueStepLength(G4double aLength) { theTrueStepLength = aLength; } - -inline - void G4VParticleChange::SetVerboseLevel(G4int vLevel) -{ - verboseLevel = vLevel; -} - -inline - G4int G4VParticleChange::GetVerboseLevel() const -{ - return verboseLevel; -} - -inline - G4double G4VParticleChange::GetParentWeight() const +inline void G4VParticleChange::SetVerboseLevel(G4int vLevel) { - return theParentWeight; + verboseLevel = vLevel; } -inline - G4double G4VParticleChange::GetWeight() const +inline G4int G4VParticleChange::GetVerboseLevel() const { - return theParentWeight; + return verboseLevel; } +inline G4double G4VParticleChange::GetParentWeight() const +{ + return theParentWeight; +} -//---------------------------------------------------------------- +inline G4double G4VParticleChange::GetWeight() const +{ + return theParentWeight; +} + +// ---------------------------------------------------------------- // inline functions for Initialization // - -inline - void G4VParticleChange::InitializeLocalEnergyDeposit(const G4Track&) -{ - // clear theLocalEnergyDeposited - theLocalEnergyDeposit = 0.0; +inline void G4VParticleChange::InitializeLocalEnergyDeposit(const G4Track&) +{ + // clear theLocalEnergyDeposited + theLocalEnergyDeposit = 0.0; theNonIonizingEnergyDeposit = 0.0; } -inline - void G4VParticleChange::InitializeSteppingControl(const G4Track& ) +inline void G4VParticleChange::InitializeSteppingControl(const G4Track&) { // SteppingControlFlag - theSteppingControlFlag = NormalCondition; + theSteppingControlFlag = NormalCondition; } -inline - void G4VParticleChange::Clear() +inline void G4VParticleChange::Clear() { theNumberOfSecondaries = 0; - theFirstStepInVolume = false; - theLastStepInVolume = false; + theFirstStepInVolume = false; + theLastStepInVolume = false; } -//---------------------------------------------------------------- -// functions for Initialization -// - inline void G4VParticleChange::InitializeStatusChange(const G4Track& track) { // set TrackStatus equal to the parent track's one @@ -196,7 +162,7 @@ inline void G4VParticleChange::InitializeStatusChange(const G4Track& track) inline void G4VParticleChange::InitializeParentWeight(const G4Track& track) { // set the parent track's weight - theParentWeight = track.GetWeight(); + theParentWeight = track.GetWeight(); isParentWeightProposed = false; } @@ -204,8 +170,7 @@ inline void G4VParticleChange::InitializeParentGlobalTime(const G4Track& track) { // set the parent track's global time at the pre-step point theParentGlobalTime = track.GetStep()->GetPreStepPoint()->GetGlobalTime(); -} - +} inline void G4VParticleChange::InitializeTrueStepLength(const G4Track& track) { @@ -216,57 +181,61 @@ inline void G4VParticleChange::InitializeTrueStepLength(const G4Track& track) // !!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! } -//---------------------------------------------------------------- -// methods for initialize -inline -void G4VParticleChange::InitializeStepInVolumeFlags(const G4Track& track) +inline void G4VParticleChange::InitializeStepInVolumeFlags(const G4Track& track) { - const G4Step* aStep = track.GetStep(); - theFirstStepInVolume = aStep-> IsFirstStepInVolume(); - theLastStepInVolume = aStep-> IsLastStepInVolume(); + const G4Step* aStep = track.GetStep(); + theFirstStepInVolume = aStep->IsFirstStepInVolume(); + theLastStepInVolume = aStep->IsLastStepInVolume(); } inline void G4VParticleChange::InitializeSecondaries(const G4Track&) { // clear secondaries - if (theNumberOfSecondaries>0) { + if(theNumberOfSecondaries > 0) + { #ifdef G4VERBOSE - if (verboseLevel>0) { + if(verboseLevel > 0) + { G4cerr << "G4VParticleChange::Initialize() Warning "; G4cerr << "theListOfSecondaries is not empty " << G4endl; G4cerr << "All objects in theListOfSecondaries are destroyed!" << G4endl; } #endif - for (G4int index= 0; index0) { + if(theNumberOfSecondaries > 0) + { #ifdef G4VERBOSE - if (verboseLevel>0) { + if(verboseLevel > 0) + { G4cerr << "G4VParticleChange::SetNumberOfSecondaries() Warning "; G4cerr << "theListOfSecondaries is not empty "; } #endif - for (G4int index= 0; index #include + #include "globals.hh" #include "G4ios.hh" #include "G4ThreadLocalSingleton.hh" -////////////// class G4VelocityTable -////////////// { -friend class G4ThreadLocalSingleton; + friend class G4ThreadLocalSingleton; - // velocity table for massive particles used in CalculateVelocity - private: - typedef std::vector G4VTDataVector; + using G4VTDataVector = std::vector; - public: + public: - G4double Value(G4double theEnergy); - // Get the cross-section/energy-loss value corresponding to the - // given energy. An appropriate interpolation is used to calculate - // the value. + G4double Value(G4double theEnergy); + // Get the cross-section/energy-loss value corresponding to the + // given energy. An appropriate interpolation is used to calculate + // the value - static G4VelocityTable* GetVelocityTable(); + static G4VelocityTable* GetVelocityTable(); - static void SetVelocityTableProperties(G4double t_max, - G4double t_min, - G4int nbin); - static G4double GetMaxTOfVelocityTable(); - static G4double GetMinTOfVelocityTable(); - static G4int GetNbinOfVelocityTable(); + static void SetVelocityTableProperties(G4double t_max, G4double t_min, + G4int nbin); + static G4double GetMaxTOfVelocityTable(); + static G4double GetMinTOfVelocityTable(); + static G4int GetNbinOfVelocityTable(); - private: + private: - G4VelocityTable(); - ~G4VelocityTable(); + G4VelocityTable(); + ~G4VelocityTable(); - size_t FindBinLocation(G4double theEnergy) const; - // Find the bin# in which theEnergy belongs - pure virtual function + void PrepareVelocityTable(); - G4double Interpolation() const; + std::size_t FindBinLocation(G4double theEnergy) const; + // Find the bin# in which theEnergy belongs - pure virtual function - G4double edgeMin; // Energy of first point - G4double edgeMax; // Energy of the last point - - size_t numberOfNodes; - - G4VTDataVector dataVector; // Vector to keep the crossection/energyloss - G4VTDataVector binVector; // Vector to keep energy - G4VTDataVector secDerivative; // Vector to keep second derivatives + inline G4double Interpolation() const; - G4double dBin; // Bin width - useful only for fixed binning - G4double baseBin; // Set this in constructor for performance + // -------------------------------------------------------------------- - G4double lastEnergy; // Cache the last input value - G4double lastValue; // Cache the last output value - size_t lastBin; // Cache the last bin location - - private: - void PrepareVelocityTable(); + G4double edgeMin = 0.0; // Energy of first point + G4double edgeMax = 0.0; // Energy of the last point - static G4ThreadLocal G4VelocityTable* theInstance; - G4double maxT; - G4double minT; - G4int NbinT; + std::size_t numberOfNodes = 0; + + G4VTDataVector dataVector; // Vector to keep the crossection/energyloss + G4VTDataVector binVector; // Vector to keep energy + G4VTDataVector secDerivative; // Vector to keep second derivatives + + G4double dBin = 0.0; // Bin width - useful only for fixed binning + G4double baseBin = 0.0; // Set this in constructor for performance + + G4double lastEnergy = -DBL_MAX; // Cache the last input value + G4double lastValue = 0.0; // Cache the last output value + std::size_t lastBin = 0; // Cache the last bin location + + static G4ThreadLocal G4VelocityTable* theInstance; + + G4double maxT = 1000.0; + G4double minT = 0.0001; + G4int NbinT = 500; }; -inline - G4double G4VelocityTable::Interpolation() const +// ---------------------- +// Inline methods +// ---------------------- + +inline G4double G4VelocityTable::Interpolation() const { // Linear interpolation is used to get the value. If the give energy - // is in the highest bin, no interpolation will be Done. Because - // there is an extra bin hidden from a user at locBin=numberOfBin, + // is in the highest bin, no interpolation will be Done. Because + // there is an extra bin hidden from a user at locBin=numberOfBin, // the following interpolation is valid even the current locBin= - // numberOfBin-1. - - G4double intplFactor = (lastEnergy-binVector[lastBin]) - / (binVector[lastBin + 1]-binVector[lastBin]); // Interpol. factor - + // numberOfBin-1. + + G4double intplFactor = + (lastEnergy - binVector[lastBin]) / + (binVector[lastBin + 1] - binVector[lastBin]); // Interpol. factor + return dataVector[lastBin] + - ( dataVector[lastBin + 1]-dataVector[lastBin] ) * intplFactor; + (dataVector[lastBin + 1] - dataVector[lastBin]) * intplFactor; } #endif - - diff --git a/source/track/include/trkdefs.hh b/source/track/include/trkdefs.hh index 3a05522529..1f2e5c9559 100644 --- a/source/track/include/trkdefs.hh +++ b/source/track/include/trkdefs.hh @@ -23,28 +23,26 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // -// -// -// // Defines for Windows DLLs import/export -// +// Author: G.Cosmo, CERN +// -------------------------------------------------------------------- #ifndef TRKDEFS_HH -#define TRKDEFS_HH +#define TRKDEFS_HH 1 #include "G4Types.hh" #ifdef WIN32 - // - // Unique identifier for global module - // - #if defined G4TRACK_ALLOC_EXPORT - #define G4TRACK_DLL G4DLLEXPORT - #else - #define G4TRACK_DLL G4DLLIMPORT - #endif +// +// Unique identifier for global module +// +# if defined G4TRACK_ALLOC_EXPORT +# define G4TRACK_DLL G4DLLEXPORT +# else +# define G4TRACK_DLL G4DLLIMPORT +# endif #else - #define G4TRACK_DLL +# define G4TRACK_DLL #endif #endif /* G4TRKDEFS_HH */ diff --git a/source/track/src/G4FieldTrackUpdator.cc b/source/track/src/G4FieldTrackUpdator.cc index 3f8bb52897..c7ee826eb9 100644 --- a/source/track/src/G4FieldTrackUpdator.cc +++ b/source/track/src/G4FieldTrackUpdator.cc @@ -23,15 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4FieldTrackUpdator class implementation // -// -// M. Asai - first implementation Apr/28/2006 -// -//--------------------------------------------------------------- -// -// G4FieldTrackUpdator.cc -// -//--------------------------------------------------------------- +// Author: M.Asai, 28 April 2006 +// -------------------------------------------------------------------- #include "globals.hh" #include "G4FieldTrackUpdator.hh" @@ -41,52 +36,51 @@ #include "G4TrackStatus.hh" #include "G4FieldTrack.hh" +//--------------------------------------------------------------------- G4FieldTrack* G4FieldTrackUpdator::CreateFieldTrack(const G4Track* trk) { G4FieldTrack* ftrk = new G4FieldTrack( - trk->GetPosition(), - trk->GetGlobalTime(), - trk->GetMomentumDirection(), - trk->GetKineticEnergy(), - trk->GetDynamicParticle()->GetMass(), + trk->GetPosition(), trk->GetGlobalTime(), trk->GetMomentumDirection(), + trk->GetKineticEnergy(), trk->GetDynamicParticle()->GetMass(), trk->GetDynamicParticle()->GetCharge(), trk->GetDynamicParticle()->GetPolarization(), - 0.0 // magnetic dipole moment to be implemented - ); + 0.0 // magnetic dipole moment to be implemented + ); return ftrk; } -void G4FieldTrackUpdator::Update(G4FieldTrack* ftrk,const G4Track* trk) +//--------------------------------------------------------------------- +void G4FieldTrackUpdator::Update(G4FieldTrack* ftrk, const G4Track* trk) { - const G4DynamicParticle* ptDynamicParticle= trk->GetDynamicParticle(); + const G4DynamicParticle* ptDynamicParticle = trk->GetDynamicParticle(); - // The following properties must be updated 1) for each new track, and - ftrk->SetRestMass(ptDynamicParticle->GetMass()); + // The following properties must be updated 1) for each new track, and + ftrk->SetRestMass(ptDynamicParticle->GetMass()); // 2) Since ion can lose/gain electrons, this must be done at every step - - ftrk->UpdateState( - trk->GetPosition(), - trk->GetGlobalTime(), - trk->GetMomentumDirection(), - trk->GetKineticEnergy() - ); -#ifdef G4CHECK - if( ( trk->GetMomentum() - ftrk->GetMomentum()).mag2() > 1.e-16 * trk->GetMomentum().mag2() ){ - G4cerr << "ERROR> G4FieldTrackUpdator sees *Disagreement* in momentum " << G4endl; - G4cout << " FTupdator: Tracking Momentum= " << trk->GetMomentum() << G4endl; - G4cout << " FTupdator: FldTrack Momentum= " << ftrk->GetMomentum() << G4endl; - G4cout << " FTupdator: FldTrack-Tracking= " << ftrk->GetMomentum() - trk->GetMomentum() << G4endl; + ftrk->UpdateState(trk->GetPosition(), trk->GetGlobalTime(), + trk->GetMomentumDirection(), trk->GetKineticEnergy()); + +#ifdef G4CHECK + if((trk->GetMomentum() - ftrk->GetMomentum()).mag2() > + 1.e-16 * trk->GetMomentum().mag2()) + { + G4cerr << "ERROR> G4FieldTrackUpdator sees *Disagreement* in momentum " + << G4endl; + G4cout << " FTupdator: Tracking Momentum= " << trk->GetMomentum() + << G4endl; + G4cout << " FTupdator: FldTrack Momentum= " << ftrk->GetMomentum() + << G4endl; + G4cout << " FTupdator: FldTrack-Tracking= " + << ftrk->GetMomentum() - trk->GetMomentum() << G4endl; } #endif ftrk->SetProperTimeOfFlight(trk->GetProperTime()); - ftrk->SetChargeAndMoments( ptDynamicParticle->GetCharge(), - ptDynamicParticle->GetMagneticMoment()); - ftrk->SetPDGSpin( ptDynamicParticle->GetParticleDefinition()->GetPDGSpin() ); - // The charge can change during tracking - ftrk->SetSpin( ptDynamicParticle->GetPolarization() ); + ftrk->SetChargeAndMoments(ptDynamicParticle->GetCharge(), + ptDynamicParticle->GetMagneticMoment()); + ftrk->SetPDGSpin(ptDynamicParticle->GetParticleDefinition()->GetPDGSpin()); + // The charge can change during tracking + ftrk->SetSpin(ptDynamicParticle->GetPolarization()); } - - diff --git a/source/track/src/G4ParticleChange.cc b/source/track/src/G4ParticleChange.cc index f963843c63..b2703f731f 100644 --- a/source/track/src/G4ParticleChange.cc +++ b/source/track/src/G4ParticleChange.cc @@ -23,23 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ParticleChange class implementation // -// -// -// -------------------------------------------------------------- -// GEANT 4 class implementation file -// -// -// -// ------------------------------------------------------------ -// Implemented for the new scheme 23 Mar. 1998 H.Kurahige -// Change default debug flag to false 10 May. 1998 H.Kurahige -// Add Track weight 12 Nov. 1998 H.Kurashige -// Activate CheckIt method for VERBOSE mode 14 Dec. 1998 H.Kurashige -// Modified CheckIt method for time 9 Feb. 1999 H.Kurashige -// Rename SetXXX methods to ProposeXXX DynamicCharge Oct. 2005 H.Kurashige -// Add get/ProposeMagneticMoment Mar 2007 H.Kurashige -// -------------------------------------------------------------- +// Author: Hisaya Kurashige, 23 March 1998 +// -------------------------------------------------------------------- #include "G4ParticleChange.hh" #include "G4PhysicalConstants.hh" @@ -50,635 +37,625 @@ #include "G4DynamicParticle.hh" #include "G4ExceptionSeverity.hh" +// -------------------------------------------------------------------- G4ParticleChange::G4ParticleChange() - : G4VParticleChange(), - theMomentumDirectionChange(), - thePolarizationChange(), - theEnergyChange(0.), - theVelocityChange(0.), isVelocityChanged(false), - thePositionChange(), - theGlobalTime0(0.), theLocalTime0(0.), - theTimeChange(0.), theProperTimeChange(0.), - theMassChange(0.), theChargeChange(0.), - theMagneticMomentChange(0.), theCurrentTrack(0) + : G4VParticleChange() { } -G4ParticleChange::~G4ParticleChange() +// -------------------------------------------------------------------- +G4ParticleChange::~G4ParticleChange() { -#ifdef G4VERBOSE - if (verboseLevel>2) { - G4cout << "G4ParticleChange::~G4ParticleChange() " << G4endl; - } -#endif } -// copy constructor -G4ParticleChange::G4ParticleChange(const G4ParticleChange &right) +// -------------------------------------------------------------------- +G4ParticleChange::G4ParticleChange(const G4ParticleChange& right) : G4VParticleChange(right) { - if (verboseLevel>1) { - G4cout << "G4ParticleChange:: copy constructor is called " << G4endl; - } - theCurrentTrack = right.theCurrentTrack; + theCurrentTrack = right.theCurrentTrack; - theMomentumDirectionChange = right.theMomentumDirectionChange; - thePolarizationChange = right.thePolarizationChange; - thePositionChange = right.thePositionChange; - theGlobalTime0 = right.theGlobalTime0; - theLocalTime0 = right.theLocalTime0; - theTimeChange = right.theTimeChange; - theProperTimeChange = right.theProperTimeChange; - theEnergyChange = right.theEnergyChange; - theVelocityChange = right.theVelocityChange; - isVelocityChanged = true; - theMassChange = right.theMassChange; - theChargeChange = right.theChargeChange; - theMagneticMomentChange = right.theMagneticMomentChange; + theMomentumDirectionChange = right.theMomentumDirectionChange; + thePolarizationChange = right.thePolarizationChange; + thePositionChange = right.thePositionChange; + theGlobalTime0 = right.theGlobalTime0; + theLocalTime0 = right.theLocalTime0; + theTimeChange = right.theTimeChange; + theProperTimeChange = right.theProperTimeChange; + theEnergyChange = right.theEnergyChange; + theVelocityChange = right.theVelocityChange; + isVelocityChanged = true; + theMassChange = right.theMassChange; + theChargeChange = right.theChargeChange; + theMagneticMomentChange = right.theMagneticMomentChange; } -// assignemnt operator -G4ParticleChange & G4ParticleChange::operator=(const G4ParticleChange &right) +// -------------------------------------------------------------------- +G4ParticleChange& G4ParticleChange::operator=(const G4ParticleChange& right) { -#ifdef G4VERBOSE - if (verboseLevel>1) { - G4cout << "G4ParticleChange:: assignment operator is called " << G4endl; - } -#endif - if (this != &right){ - if (theNumberOfSecondaries>0) { -#ifdef G4VERBOSE - if (verboseLevel>0) { - G4cout << "G4ParticleChange: assignment operator Warning "; - G4cout << "theListOfSecondaries is not empty "; - } -#endif - for (G4int index= 0; index 0) + { + for(G4int index = 0; index < theNumberOfSecondaries; ++index) + { + if((*theListOfSecondaries)[index]) + delete(*theListOfSecondaries)[index]; + } + } + delete theListOfSecondaries; + + theListOfSecondaries = new G4TrackFastVector(); theNumberOfSecondaries = right.theNumberOfSecondaries; - for (G4int index = 0; indexSetElement(index, newTrack); } + for(G4int index = 0; index < theNumberOfSecondaries; ++index) + { + G4Track* newTrack = new G4Track(*((*right.theListOfSecondaries)[index])); + theListOfSecondaries->SetElement(index, newTrack); + } - theStatusChange = right.theStatusChange; - theCurrentTrack = right.theCurrentTrack; - - theMomentumDirectionChange = right.theMomentumDirectionChange; - thePolarizationChange = right.thePolarizationChange; - thePositionChange = right.thePositionChange; - theGlobalTime0 = right.theGlobalTime0; - theLocalTime0 = right.theLocalTime0; - theTimeChange = right.theTimeChange; - theProperTimeChange = right.theProperTimeChange; - theEnergyChange = right.theEnergyChange; - theVelocityChange = right.theVelocityChange; - isVelocityChanged = true; - theMassChange = right.theMassChange; - theChargeChange = right.theChargeChange; - theMagneticMomentChange = right.theMagneticMomentChange; - - theTrueStepLength = right.theTrueStepLength; - theLocalEnergyDeposit = right.theLocalEnergyDeposit; - theSteppingControlFlag = right.theSteppingControlFlag; - } - return *this; + theStatusChange = right.theStatusChange; + theCurrentTrack = right.theCurrentTrack; + + theMomentumDirectionChange = right.theMomentumDirectionChange; + thePolarizationChange = right.thePolarizationChange; + thePositionChange = right.thePositionChange; + theGlobalTime0 = right.theGlobalTime0; + theLocalTime0 = right.theLocalTime0; + theTimeChange = right.theTimeChange; + theProperTimeChange = right.theProperTimeChange; + theEnergyChange = right.theEnergyChange; + theVelocityChange = right.theVelocityChange; + isVelocityChanged = true; + theMassChange = right.theMassChange; + theChargeChange = right.theChargeChange; + theMagneticMomentChange = right.theMagneticMomentChange; + + theTrueStepLength = right.theTrueStepLength; + theLocalEnergyDeposit = right.theLocalEnergyDeposit; + theSteppingControlFlag = right.theSteppingControlFlag; + } + return *this; } -G4bool G4ParticleChange::operator==(const G4ParticleChange &right) const +// -------------------------------------------------------------------- +G4bool G4ParticleChange::operator==(const G4ParticleChange& right) const { - return ((G4VParticleChange *)this == (G4VParticleChange *) &right); + return ((G4VParticleChange*) this == (G4VParticleChange*) &right); } -G4bool G4ParticleChange::operator!=(const G4ParticleChange &right) const +// -------------------------------------------------------------------- +G4bool G4ParticleChange::operator!=(const G4ParticleChange& right) const { - return ((G4VParticleChange *)this != (G4VParticleChange *) &right); + return ((G4VParticleChange*) this != (G4VParticleChange*) &right); } - -//---------------------------------------------------------------- -// methods for handling secondaries -// - -void G4ParticleChange::AddSecondary(G4DynamicParticle* aParticle, - G4bool IsGoodForTracking ) +// -------------------------------------------------------------------- +void G4ParticleChange::AddSecondary(G4DynamicParticle* aParticle, + G4bool IsGoodForTracking) { - // create track + // create track G4Track* aTrack = new G4Track(aParticle, GetGlobalTime(), thePositionChange); // set IsGoodGorTrackingFlag - if (IsGoodForTracking) aTrack->SetGoodForTrackingFlag(); + if(IsGoodForTracking) + aTrack->SetGoodForTrackingFlag(); - // Touchable handle is copied to keep the pointer - aTrack->SetTouchableHandle(theCurrentTrack->GetTouchableHandle()); - - // add a secondary - G4VParticleChange::AddSecondary(aTrack); -} - -void G4ParticleChange::AddSecondary(G4DynamicParticle* aParticle, - G4ThreeVector newPosition, - G4bool IsGoodForTracking ) -{ - // create track - G4Track* aTrack = new G4Track(aParticle, GetGlobalTime(), newPosition); - - // set IsGoodGorTrackingFlag - if (IsGoodForTracking) aTrack->SetGoodForTrackingFlag(); - - // Touchable is a temporary object, so you cannot keep the pointer - aTrack->SetTouchableHandle((G4VTouchable*)0); - - // add a secondary - G4VParticleChange::AddSecondary(aTrack); -} - -void G4ParticleChange::AddSecondary(G4DynamicParticle* aParticle, - G4double newTime, - G4bool IsGoodForTracking ) -{ - // create track - G4Track* aTrack = new G4Track(aParticle, newTime, thePositionChange); - - // set IsGoodGorTrackingFlag - if (IsGoodForTracking) aTrack->SetGoodForTrackingFlag(); - - // Touchable handle is copied to keep the pointer + // touchable handle is copied to keep the pointer aTrack->SetTouchableHandle(theCurrentTrack->GetTouchableHandle()); - // add a secondary + // add a secondary G4VParticleChange::AddSecondary(aTrack); } +// -------------------------------------------------------------------- +void G4ParticleChange::AddSecondary(G4DynamicParticle* aParticle, + G4ThreeVector newPosition, + G4bool IsGoodForTracking) +{ + // create track + G4Track* aTrack = new G4Track(aParticle, GetGlobalTime(), newPosition); + + // set IsGoodGorTrackingFlag + if(IsGoodForTracking) + aTrack->SetGoodForTrackingFlag(); + + // touchable is a temporary object, so you cannot keep the pointer + aTrack->SetTouchableHandle(nullptr); + + // add a secondary + G4VParticleChange::AddSecondary(aTrack); +} + +// -------------------------------------------------------------------- +void G4ParticleChange::AddSecondary(G4DynamicParticle* aParticle, + G4double newTime, G4bool IsGoodForTracking) +{ + // create track + G4Track* aTrack = new G4Track(aParticle, newTime, thePositionChange); + + // set IsGoodGorTrackingFlag + if(IsGoodForTracking) + aTrack->SetGoodForTrackingFlag(); + + // touchable handle is copied to keep the pointer + aTrack->SetTouchableHandle(theCurrentTrack->GetTouchableHandle()); + + // add a secondary + G4VParticleChange::AddSecondary(aTrack); +} + +// -------------------------------------------------------------------- void G4ParticleChange::AddSecondary(G4Track* aTrack) { - // add a secondary + // add a secondary G4VParticleChange::AddSecondary(aTrack); } -//---------------------------------------------------------------- -// functions for Initialization -// - +// -------------------------------------------------------------------- void G4ParticleChange::Initialize(const G4Track& track) { // use base class's method at first G4VParticleChange::Initialize(track); - theCurrentTrack= &track; + theCurrentTrack = &track; // set Energy/Momentum etc. equal to those of the parent particle - const G4DynamicParticle* pParticle = track.GetDynamicParticle(); - theEnergyChange = pParticle->GetKineticEnergy(); - theVelocityChange = track.GetVelocity(); - isVelocityChanged = false; - theMomentumDirectionChange = pParticle->GetMomentumDirection(); - thePolarizationChange = pParticle->GetPolarization(); - theProperTimeChange = pParticle->GetProperTime(); + const G4DynamicParticle* pParticle = track.GetDynamicParticle(); + theEnergyChange = pParticle->GetKineticEnergy(); + theVelocityChange = track.GetVelocity(); + isVelocityChanged = false; + theMomentumDirectionChange = pParticle->GetMomentumDirection(); + thePolarizationChange = pParticle->GetPolarization(); + theProperTimeChange = pParticle->GetProperTime(); - // Set mass/charge/MagneticMoment of DynamicParticle - theMassChange = pParticle->GetMass(); - theChargeChange = pParticle->GetCharge(); + // set mass/charge/MagneticMoment of DynamicParticle + theMassChange = pParticle->GetMass(); + theChargeChange = pParticle->GetCharge(); theMagneticMomentChange = pParticle->GetMagneticMoment(); - // set Position equal to those of the parent track - thePositionChange = track.GetPosition(); + // set Position equal to those of the parent track + thePositionChange = track.GetPosition(); // set TimeChange equal to local time of the parent track - theTimeChange = track.GetLocalTime(); + theTimeChange = track.GetLocalTime(); // set initial Local/Global time of the parent track - theLocalTime0 = track.GetLocalTime(); - theGlobalTime0 = track.GetGlobalTime(); - + theLocalTime0 = track.GetLocalTime(); + theGlobalTime0 = track.GetGlobalTime(); } -//---------------------------------------------------------------- -// methods for updating G4Step -// - +// -------------------------------------------------------------------- G4Step* G4ParticleChange::UpdateStepForAlongStep(G4Step* pStep) { // A physics process always calculates the final state of the // particle relative to the initial state at the beginning // of the Step, i.e., based on information of G4Track (or - // equivalently the PreStepPoint). + // equivalently the PreStepPoint). // So, the differences (delta) between these two states have to be - // calculated and be accumulated in PostStepPoint. - - // Take note that the return type of GetMomentumDirectionChange is a - // pointer to G4ParticleMometum. Also it is a normalized - // momentum vector. + // calculated and be accumulated in PostStepPoint - G4StepPoint* pPreStepPoint = pStep->GetPreStepPoint(); - G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); - G4Track* pTrack = pStep->GetTrack(); - G4double mass = theMassChange; + // Take note that the return type of GetMomentumDirectionChange() is a + // pointer to G4ParticleMometum. Also it is a normalized + // momentum vector - // Set Mass/Charge/MagneticMoment + G4StepPoint* pPreStepPoint = pStep->GetPreStepPoint(); + G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); + G4Track* pTrack = pStep->GetTrack(); + G4double mass = theMassChange; + + // set Mass/Charge/MagneticMoment pPostStepPoint->SetMass(theMassChange); - pPostStepPoint->SetCharge(theChargeChange); - pPostStepPoint->SetMagneticMoment(theMagneticMomentChange); - + pPostStepPoint->SetCharge(theChargeChange); + pPostStepPoint->SetMagneticMoment(theMagneticMomentChange); + // calculate new kinetic energy G4double preEnergy = pPreStepPoint->GetKineticEnergy(); - G4double energy = pPostStepPoint->GetKineticEnergy() - + (theEnergyChange - preEnergy); + G4double energy = + pPostStepPoint->GetKineticEnergy() + (theEnergyChange - preEnergy); // update kinetic energy and momentum direction - if (energy > 0.0) { + if(energy > 0.0) + { // calculate new momentum - G4ThreeVector pMomentum = pPostStepPoint->GetMomentum() - + ( CalcMomentum(theEnergyChange, theMomentumDirectionChange, mass) - - pPreStepPoint->GetMomentum()); - G4double tMomentum = pMomentum.mag(); - G4ThreeVector direction(1.0,0.0,0.0); - if( tMomentum > 0. ){ - G4double inv_Momentum= 1.0 / tMomentum; - direction= pMomentum * inv_Momentum; + G4ThreeVector pMomentum = pPostStepPoint->GetMomentum() + + (CalcMomentum(theEnergyChange, theMomentumDirectionChange, mass) + - pPreStepPoint->GetMomentum()); + G4double tMomentum = pMomentum.mag(); + G4ThreeVector direction(1.0, 0.0, 0.0); + if(tMomentum > 0.) + { + G4double inv_Momentum = 1.0 / tMomentum; + direction = pMomentum * inv_Momentum; } pPostStepPoint->SetMomentumDirection(direction); - pPostStepPoint->SetKineticEnergy( energy ); - } else { + pPostStepPoint->SetKineticEnergy(energy); + } + else + { // stop case - //pPostStepPoint->SetMomentumDirection(G4ThreeVector(1., 0., 0.)); + // pPostStepPoint->SetMomentumDirection(G4ThreeVector(1., 0., 0.)); pPostStepPoint->SetKineticEnergy(0.0); } // calculate velocity - if (!isVelocityChanged) { - if(energy > 0.0) { + if(!isVelocityChanged) + { + if(energy > 0.0) + { pTrack->SetKineticEnergy(energy); theVelocityChange = pTrack->CalculateVelocity(); pTrack->SetKineticEnergy(preEnergy); - } else if(theMassChange > 0.0) { + } + else if(theMassChange > 0.0) + { theVelocityChange = 0.0; } } pPostStepPoint->SetVelocity(theVelocityChange); // update polarization - pPostStepPoint->AddPolarization( thePolarizationChange - - pPreStepPoint->GetPolarization()); - - // update position and time - pPostStepPoint->AddPosition( thePositionChange - - pPreStepPoint->GetPosition() ); - pPostStepPoint->AddGlobalTime(theTimeChange - theLocalTime0); - pPostStepPoint->AddLocalTime( theTimeChange - theLocalTime0 ); - pPostStepPoint->AddProperTime( theProperTimeChange - - pPreStepPoint->GetProperTime()); + pPostStepPoint->AddPolarization(thePolarizationChange - + pPreStepPoint->GetPolarization()); - if (isParentWeightProposed ){ - pPostStepPoint->SetWeight( theParentWeight ); + // update position and time + pPostStepPoint->AddPosition(thePositionChange - pPreStepPoint->GetPosition()); + pPostStepPoint->AddGlobalTime(theTimeChange - theLocalTime0); + pPostStepPoint->AddLocalTime(theTimeChange - theLocalTime0); + pPostStepPoint->AddProperTime(theProperTimeChange - + pPreStepPoint->GetProperTime()); + + if(isParentWeightProposed) + { + pPostStepPoint->SetWeight(theParentWeight); } #ifdef G4VERBOSE - G4Track* aTrack = pStep->GetTrack(); - if (debugFlag) CheckIt(*aTrack); + G4Track* aTrack = pStep->GetTrack(); + if(debugFlag) { CheckIt(*aTrack); } #endif - // Update the G4Step specific attributes + // update the G4Step specific attributes return UpdateStepInfo(pStep); } +// -------------------------------------------------------------------- G4Step* G4ParticleChange::UpdateStepForPostStep(G4Step* pStep) -{ +{ // A physics process always calculates the final state of the particle - // Take note that the return type of GetMomentumChange is a - // pointer to G4ParticleMometum. Also it is a normalized - // momentum vector. + // Take note that the return type of GetMomentumChange() is a + // pointer to G4ParticleMometum. Also it is a normalized + // momentum vector - G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); - G4Track* pTrack = pStep->GetTrack(); + G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); + G4Track* pTrack = pStep->GetTrack(); - // Set Mass/Charge + // set Mass/Charge pPostStepPoint->SetMass(theMassChange); - pPostStepPoint->SetCharge(theChargeChange); - pPostStepPoint->SetMagneticMoment(theMagneticMomentChange); - + pPostStepPoint->SetCharge(theChargeChange); + pPostStepPoint->SetMagneticMoment(theMagneticMomentChange); + // update kinetic energy and momentum direction pPostStepPoint->SetMomentumDirection(theMomentumDirectionChange); - pPostStepPoint->SetKineticEnergy( theEnergyChange ); + pPostStepPoint->SetKineticEnergy(theEnergyChange); // calculate velocity - pTrack->SetKineticEnergy( theEnergyChange ); - if (!isVelocityChanged) { - if(theEnergyChange > 0.0) { + pTrack->SetKineticEnergy(theEnergyChange); + if(!isVelocityChanged) + { + if(theEnergyChange > 0.0) + { theVelocityChange = pTrack->CalculateVelocity(); - } else if(theMassChange > 0.0) { + } + else if(theMassChange > 0.0) + { theVelocityChange = 0.0; } } pPostStepPoint->SetVelocity(theVelocityChange); - - // update polarization - pPostStepPoint->SetPolarization( thePolarizationChange ); - - // update position and time - pPostStepPoint->SetPosition( thePositionChange ); - pPostStepPoint->AddGlobalTime(theTimeChange - theLocalTime0); - pPostStepPoint->SetLocalTime( theTimeChange ); - pPostStepPoint->SetProperTime( theProperTimeChange ); - if (isParentWeightProposed ){ - pPostStepPoint->SetWeight( theParentWeight ); + // update polarization + pPostStepPoint->SetPolarization(thePolarizationChange); + + // update position and time + pPostStepPoint->SetPosition(thePositionChange); + pPostStepPoint->AddGlobalTime(theTimeChange - theLocalTime0); + pPostStepPoint->SetLocalTime(theTimeChange); + pPostStepPoint->SetProperTime(theProperTimeChange); + + if(isParentWeightProposed) + { + pPostStepPoint->SetWeight(theParentWeight); } #ifdef G4VERBOSE - G4Track* aTrack = pStep->GetTrack(); - if (debugFlag) CheckIt(*aTrack); + G4Track* aTrack = pStep->GetTrack(); + if(debugFlag) { CheckIt(*aTrack); } #endif - // Update the G4Step specific attributes + // update the G4Step specific attributes return UpdateStepInfo(pStep); } - +// -------------------------------------------------------------------- G4Step* G4ParticleChange::UpdateStepForAtRest(G4Step* pStep) -{ +{ // A physics process always calculates the final state of the particle - G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); + G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); - // Set Mass/Charge + // set Mass/Charge pPostStepPoint->SetMass(theMassChange); - pPostStepPoint->SetCharge(theChargeChange); - pPostStepPoint->SetMagneticMoment(theMagneticMomentChange); - + pPostStepPoint->SetCharge(theChargeChange); + pPostStepPoint->SetMagneticMoment(theMagneticMomentChange); + // update kinetic energy and momentum direction pPostStepPoint->SetMomentumDirection(theMomentumDirectionChange); - pPostStepPoint->SetKineticEnergy( theEnergyChange ); - if (!isVelocityChanged) theVelocityChange = pStep->GetTrack()->CalculateVelocity(); + pPostStepPoint->SetKineticEnergy(theEnergyChange); + if(!isVelocityChanged) + theVelocityChange = pStep->GetTrack()->CalculateVelocity(); pPostStepPoint->SetVelocity(theVelocityChange); // update polarization - pPostStepPoint->SetPolarization( thePolarizationChange ); - - // update position and time - pPostStepPoint->SetPosition( thePositionChange ); - pPostStepPoint->AddGlobalTime(theTimeChange - theLocalTime0); - pPostStepPoint->SetLocalTime( theTimeChange ); - pPostStepPoint->SetProperTime( theProperTimeChange ); + pPostStepPoint->SetPolarization(thePolarizationChange); - if (isParentWeightProposed ){ - pPostStepPoint->SetWeight( theParentWeight ); + // update position and time + pPostStepPoint->SetPosition(thePositionChange); + pPostStepPoint->AddGlobalTime(theTimeChange - theLocalTime0); + pPostStepPoint->SetLocalTime(theTimeChange); + pPostStepPoint->SetProperTime(theProperTimeChange); + + if(isParentWeightProposed) + { + pPostStepPoint->SetWeight(theParentWeight); } #ifdef G4VERBOSE - G4Track* aTrack = pStep->GetTrack(); - if (debugFlag) CheckIt(*aTrack); + G4Track* aTrack = pStep->GetTrack(); + if(debugFlag) { CheckIt(*aTrack); } #endif - // Update the G4Step specific attributes + // update the G4Step specific attributes return UpdateStepInfo(pStep); } -//---------------------------------------------------------------- -// methods for printing messages -// - +// -------------------------------------------------------------------- void G4ParticleChange::DumpInfo() const { -// use base-class DumpInfo + // use base-class DumpInfo G4VParticleChange::DumpInfo(); G4int oldprc = G4cout.precision(3); - G4cout << " Mass (GeV) : " - << std::setw(20) << theMassChange/GeV - << G4endl; - G4cout << " Charge (eplus) : " - << std::setw(20) << theChargeChange/eplus - << G4endl; - G4cout << " MagneticMoment : " - << std::setw(20) << theMagneticMomentChange << G4endl; - G4cout << " : = " << std::setw(20) - << theMagneticMomentChange*2.*theMassChange/c_squared/eplus/hbar_Planck - << "*[e hbar]/[2 m]" - << G4endl; - G4cout << " Position - x (mm) : " - << std::setw(20) << thePositionChange.x()/mm - << G4endl; - G4cout << " Position - y (mm) : " - << std::setw(20) << thePositionChange.y()/mm - << G4endl; - G4cout << " Position - z (mm) : " - << std::setw(20) << thePositionChange.z()/mm - << G4endl; - G4cout << " Time (ns) : " - << std::setw(20) << theTimeChange/ns - << G4endl; - G4cout << " Proper Time (ns) : " - << std::setw(20) << theProperTimeChange/ns - << G4endl; - G4cout << " Momentum Direct - x : " - << std::setw(20) << theMomentumDirectionChange.x() - << G4endl; - G4cout << " Momentum Direct - y : " - << std::setw(20) << theMomentumDirectionChange.y() - << G4endl; - G4cout << " Momentum Direct - z : " - << std::setw(20) << theMomentumDirectionChange.z() - << G4endl; - G4cout << " Kinetic Energy (MeV): " - << std::setw(20) << theEnergyChange/MeV - << G4endl; - G4cout << " Velocity (/c): " - << std::setw(20) << theVelocityChange/c_light - << G4endl; - G4cout << " Polarization - x : " - << std::setw(20) << thePolarizationChange.x() - << G4endl; - G4cout << " Polarization - y : " - << std::setw(20) << thePolarizationChange.y() - << G4endl; - G4cout << " Polarization - z : " - << std::setw(20) << thePolarizationChange.z() - << G4endl; + G4cout << " Mass (GeV) : " << std::setw(20) << theMassChange / GeV + << G4endl; + G4cout << " Charge (eplus) : " << std::setw(20) + << theChargeChange / eplus << G4endl; + G4cout << " MagneticMoment : " << std::setw(20) + << theMagneticMomentChange << G4endl; + G4cout << " : = " << std::setw(20) + << theMagneticMomentChange + * 2. * theMassChange / c_squared / eplus / hbar_Planck + << "*[e hbar]/[2 m]" << G4endl; + G4cout << " Position - x (mm) : " << std::setw(20) + << thePositionChange.x() / mm << G4endl; + G4cout << " Position - y (mm) : " << std::setw(20) + << thePositionChange.y() / mm << G4endl; + G4cout << " Position - z (mm) : " << std::setw(20) + << thePositionChange.z() / mm << G4endl; + G4cout << " Time (ns) : " << std::setw(20) + << theTimeChange / ns << G4endl; + G4cout << " Proper Time (ns) : " << std::setw(20) + << theProperTimeChange / ns << G4endl; + G4cout << " Momentum Direct - x : " << std::setw(20) + << theMomentumDirectionChange.x() << G4endl; + G4cout << " Momentum Direct - y : " << std::setw(20) + << theMomentumDirectionChange.y() << G4endl; + G4cout << " Momentum Direct - z : " << std::setw(20) + << theMomentumDirectionChange.z() << G4endl; + G4cout << " Kinetic Energy (MeV): " << std::setw(20) + << theEnergyChange / MeV << G4endl; + G4cout << " Velocity (/c): " << std::setw(20) + << theVelocityChange / c_light << G4endl; + G4cout << " Polarization - x : " << std::setw(20) + << thePolarizationChange.x() << G4endl; + G4cout << " Polarization - y : " << std::setw(20) + << thePolarizationChange.y() << G4endl; + G4cout << " Polarization - z : " << std::setw(20) + << thePolarizationChange.z() << G4endl; G4cout.precision(oldprc); } +// -------------------------------------------------------------------- G4bool G4ParticleChange::CheckIt(const G4Track& aTrack) { - G4bool exitWithError = false; - G4double accuracy; + G4bool exitWithError = false; + G4double accuracy; static G4ThreadLocal G4int nError = 0; #ifdef G4VERBOSE - const G4int maxError = 30; + const G4int maxError = 30; #endif - // No check in case of "fStopAndKill" - if (GetTrackStatus() == fStopAndKill ) return G4VParticleChange::CheckIt(aTrack); + // no check in case of "fStopAndKill" + if(GetTrackStatus() == fStopAndKill) + return G4VParticleChange::CheckIt(aTrack); // MomentumDirection should be unit vector - G4bool itsOKforMomentum = true; - if ( theEnergyChange >0.) { - accuracy = std::fabs(theMomentumDirectionChange.mag2()-1.0); - if (accuracy > accuracyForWarning) { + G4bool itsOKforMomentum = true; + if(theEnergyChange > 0.) + { + accuracy = std::fabs(theMomentumDirectionChange.mag2() - 1.0); + if(accuracy > accuracyForWarning) + { itsOKforMomentum = false; nError += 1; exitWithError = exitWithError || (accuracy > accuracyForException); #ifdef G4VERBOSE - if (nError < maxError) { - G4cout << " G4ParticleChange::CheckIt : "; - G4cout << "the Momentum Change is not unit vector !!" - << " Difference: " << accuracy << G4endl; - G4cout << aTrack.GetDefinition()->GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - <GetParticleName() + << " E=" << aTrack.GetKineticEnergy() / MeV + << " pos=" << aTrack.GetPosition().x() / m << ", " + << aTrack.GetPosition().y() / m << ", " + << aTrack.GetPosition().z() / m << G4endl; } #endif } } - // Both global and proper time should not go back - G4bool itsOKforGlobalTime = true; - accuracy = (aTrack.GetLocalTime()- theTimeChange)/ns; - if (accuracy > accuracyForWarning) { + // both global and proper time should not go back + G4bool itsOKforGlobalTime = true; + accuracy = (aTrack.GetLocalTime() - theTimeChange) / ns; + if(accuracy > accuracyForWarning) + { itsOKforGlobalTime = false; nError += 1; exitWithError = exitWithError || (accuracy > accuracyForException); #ifdef G4VERBOSE - if (nError < maxError) { + if(nError < maxError) + { G4cout << " G4ParticleChange::CheckIt : "; - G4cout << "the local time goes back !!" - << " Difference: " << accuracy << "[ns] " <GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - << " global time=" << aTrack.GetGlobalTime()/ns - << " local time=" << aTrack.GetLocalTime()/ns - << " proper time=" << aTrack.GetProperTime()/ns - << G4endl; + << " E=" << aTrack.GetKineticEnergy() / MeV + << " pos=" << aTrack.GetPosition().x() / m << ", " + << aTrack.GetPosition().y() / m << ", " + << aTrack.GetPosition().z() / m + << " global time=" << aTrack.GetGlobalTime() / ns + << " local time=" << aTrack.GetLocalTime() / ns + << " proper time=" << aTrack.GetProperTime() / ns << G4endl; } #endif } G4bool itsOKforProperTime = true; - accuracy = (aTrack.GetProperTime() - theProperTimeChange )/ns; - if (accuracy > accuracyForWarning) { + accuracy = (aTrack.GetProperTime() - theProperTimeChange) / ns; + if(accuracy > accuracyForWarning) + { itsOKforProperTime = false; nError += 1; - exitWithError = exitWithError || (accuracy > accuracyForException); + exitWithError = exitWithError || (accuracy > accuracyForException); #ifdef G4VERBOSE - if (nError < maxError) { + if(nError < maxError) + { G4cout << " G4ParticleChange::CheckIt : "; - G4cout << "the proper time goes back !!" - << " Difference: " << accuracy << "[ns] " <GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - << " global time=" << aTrack.GetGlobalTime()/ns - << " local time=" << aTrack.GetLocalTime()/ns - << " proper time=" << aTrack.GetProperTime()/ns - <GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - <GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - < accuracyForWarning) { + accuracy = theVelocityChange / c_light - 1.0; + if(accuracy > accuracyForWarning) + { itsOKforVelocity = false; nError += 1; - exitWithError = exitWithError || (accuracy > accuracyForException); + exitWithError = exitWithError || (accuracy > accuracyForException); #ifdef G4VERBOSE - if (nError < maxError) { + if(nError < maxError) + { G4cout << " G4ParticleChange::CheckIt : "; G4cout << "the velocity is greater than c_light !!" << G4endl; - G4cout << " Velocity: " << theVelocityChange/c_light <GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - <2) { - G4cout << "G4ParticleChangeForDecay::G4ParticleChangeForDecay() " << G4endl; - } -#endif } -G4ParticleChangeForDecay::~G4ParticleChangeForDecay() +// -------------------------------------------------------------------- +G4ParticleChangeForDecay::~G4ParticleChangeForDecay() { -#ifdef G4VERBOSE - if (verboseLevel>2) { - G4cout << "G4ParticleChangeForDecay::~G4ParticleChangeForDecay() " << G4endl; - } -#endif } -G4ParticleChangeForDecay::G4ParticleChangeForDecay(const G4ParticleChangeForDecay &right): G4VParticleChange(right) +// -------------------------------------------------------------------- +G4ParticleChangeForDecay:: +G4ParticleChangeForDecay(const G4ParticleChangeForDecay& right) + : G4VParticleChange(right) { - theGlobalTime0 = right.theGlobalTime0; - theLocalTime0 = right.theLocalTime0; - theTimeChange = right.theTimeChange; + theGlobalTime0 = right.theGlobalTime0; + theLocalTime0 = right.theLocalTime0; + theTimeChange = right.theTimeChange; thePolarizationChange = right.thePolarizationChange; } - -G4ParticleChangeForDecay & G4ParticleChangeForDecay::operator=(const G4ParticleChangeForDecay &right) +// -------------------------------------------------------------------- +G4ParticleChangeForDecay& +G4ParticleChangeForDecay::operator=(const G4ParticleChangeForDecay& right) { - if (this != &right){ - if (theNumberOfSecondaries>0) { -#ifdef G4VERBOSE - if (verboseLevel>0) { - G4cout << "G4ParticleChangeForDecay: assignment operator Warning "; - G4cout << "theListOfSecondaries is not empty "; - } -#endif - for (G4int index= 0; index 0) + { + for(G4int index = 0; index < theNumberOfSecondaries; ++index) + { + if((*theListOfSecondaries)[index]) + delete(*theListOfSecondaries)[index]; } } - delete theListOfSecondaries; - theListOfSecondaries = new G4TrackFastVector(); + delete theListOfSecondaries; + theListOfSecondaries = new G4TrackFastVector(); theNumberOfSecondaries = right.theNumberOfSecondaries; - for (G4int index = 0; indexSetElement(index, newTrack); } + for(G4int index = 0; index < theNumberOfSecondaries; ++index) + { + G4Track* newTrack = new G4Track(*((*right.theListOfSecondaries)[index])); + theListOfSecondaries->SetElement(index, newTrack); + } - theStatusChange = right.theStatusChange; - theTrueStepLength = right.theTrueStepLength; - theLocalEnergyDeposit = right.theLocalEnergyDeposit; + theStatusChange = right.theStatusChange; + theTrueStepLength = right.theTrueStepLength; + theLocalEnergyDeposit = right.theLocalEnergyDeposit; theSteppingControlFlag = right.theSteppingControlFlag; - - theGlobalTime0 = right.theGlobalTime0; - theLocalTime0 = right.theLocalTime0; - theTimeChange = right.theTimeChange; + + theGlobalTime0 = right.theGlobalTime0; + theLocalTime0 = right.theLocalTime0; + theTimeChange = right.theTimeChange; thePolarizationChange = right.thePolarizationChange; } return *this; } -G4bool G4ParticleChangeForDecay::operator==(const G4ParticleChangeForDecay &right) const +// -------------------------------------------------------------------- +G4bool G4ParticleChangeForDecay::operator==( + const G4ParticleChangeForDecay& right) const { - return ((G4VParticleChange *)this == (G4VParticleChange *) &right); + return ((G4VParticleChange*) this == (G4VParticleChange*) &right); } -G4bool G4ParticleChangeForDecay::operator!=(const G4ParticleChangeForDecay &right) const +// -------------------------------------------------------------------- +G4bool G4ParticleChangeForDecay::operator!=( + const G4ParticleChangeForDecay& right) const { - return ((G4VParticleChange *)this != (G4VParticleChange *) &right); + return ((G4VParticleChange*) this != (G4VParticleChange*) &right); } -//---------------------------------------------------------------- -// methods for Initialization -// +// -------------------------------------------------------------------- void G4ParticleChangeForDecay::Initialize(const G4Track& track) { // use base class's method at first G4VParticleChange::Initialize(track); - const G4DynamicParticle* pParticle = track.GetDynamicParticle(); + const G4DynamicParticle* pParticle = track.GetDynamicParticle(); // set TimeChange equal to local time of the parent track - theTimeChange = track.GetLocalTime(); + theTimeChange = track.GetLocalTime(); // set initial Local/Global time of the parent track - theLocalTime0 = track.GetLocalTime(); - theGlobalTime0 = track.GetGlobalTime(); + theLocalTime0 = track.GetLocalTime(); + theGlobalTime0 = track.GetGlobalTime(); // set the Polarization equal to those of the parent track - thePolarizationChange = pParticle->GetPolarization(); + thePolarizationChange = pParticle->GetPolarization(); } -//---------------------------------------------------------------- -// methods for updating G4Step -// - +// -------------------------------------------------------------------- G4Step* G4ParticleChangeForDecay::UpdateStepForPostStep(G4Step* pStep) -{ - G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); +{ + G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); - if (isParentWeightProposed ){ - pPostStepPoint->SetWeight( theParentWeight ); + if(isParentWeightProposed) + { + pPostStepPoint->SetWeight(theParentWeight); } // update polarization - pPostStepPoint->SetPolarization( thePolarizationChange ); + pPostStepPoint->SetPolarization(thePolarizationChange); - // Update the G4Step specific attributes + // update the G4Step specific attributes return UpdateStepInfo(pStep); } - +// -------------------------------------------------------------------- G4Step* G4ParticleChangeForDecay::UpdateStepForAtRest(G4Step* pStep) -{ +{ // A physics process always calculates the final state of the particle - G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); + G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); // update polarization - pPostStepPoint->SetPolarization( thePolarizationChange ); - + pPostStepPoint->SetPolarization(thePolarizationChange); + // update time - pPostStepPoint->SetGlobalTime( GetGlobalTime() ); - pPostStepPoint->SetLocalTime( theTimeChange ); - pPostStepPoint->AddProperTime (theTimeChange-theLocalTime0); + pPostStepPoint->SetGlobalTime(GetGlobalTime()); + pPostStepPoint->SetLocalTime(theTimeChange); + pPostStepPoint->AddProperTime(theTimeChange - theLocalTime0); #ifdef G4VERBOSE - G4Track* aTrack = pStep->GetTrack(); - if (debugFlag) CheckIt(*aTrack); + G4Track* aTrack = pStep->GetTrack(); + if(debugFlag) { CheckIt(*aTrack); } #endif - if (isParentWeightProposed )pPostStepPoint->SetWeight( theParentWeight ); + if(isParentWeightProposed) + pPostStepPoint->SetWeight(theParentWeight); - // Update the G4Step specific attributes + // Update the G4Step specific attributes return UpdateStepInfo(pStep); } +// -------------------------------------------------------------------- void G4ParticleChangeForDecay::DumpInfo() const { -// Show header + // Show header G4VParticleChange::DumpInfo(); G4int oldprc = G4cout.precision(3); - G4cout << " proposed local Time (ns) : " - << std::setw(20) << theTimeChange/ns << G4endl; - G4cout << " initial local Time (ns) : " - << std::setw(20) << theLocalTime0/ns << G4endl; - G4cout << " initial global Time (ns) : " - << std::setw(20) << theGlobalTime0/ns << G4endl; + G4cout << " proposed local Time (ns) : " << std::setw(20) + << theTimeChange / ns << G4endl; + G4cout << " initial local Time (ns) : " << std::setw(20) + << theLocalTime0 / ns << G4endl; + G4cout << " initial global Time (ns) : " << std::setw(20) + << theGlobalTime0 / ns << G4endl; G4cout.precision(oldprc); } +// -------------------------------------------------------------------- G4bool G4ParticleChangeForDecay::CheckIt(const G4Track& aTrack) { - G4bool exitWithError = false; + G4bool exitWithError = false; - G4double accuracy; + G4double accuracy; // local time should not go back - G4bool itsOK =true; - accuracy = -1.0*(theTimeChange - theLocalTime0)/ns; - if (accuracy > accuracyForWarning) { - itsOK = false; + G4bool itsOK = true; + accuracy = -1.0 * (theTimeChange - theLocalTime0) / ns; + if(accuracy > accuracyForWarning) + { + itsOK = false; exitWithError = (accuracy > accuracyForException); #ifdef G4VERBOSE G4cout << " G4ParticleChangeForDecay::CheckIt : "; - G4cout << "the local time goes back !!" - << " Difference: " << accuracy << "[ns] " <GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - <2) { - G4cout << "G4ParticleChangeForGamma::G4ParticleChangeForGamma() " << G4endl; - } -#endif + debugFlag = false; } +// -------------------------------------------------------------------- G4ParticleChangeForGamma::~G4ParticleChangeForGamma() { -#ifdef G4VERBOSE - if (verboseLevel>2) { - G4cout << "G4ParticleChangeForGamma::~G4ParticleChangeForGamma() " << G4endl; - } -#endif } -G4ParticleChangeForGamma::G4ParticleChangeForGamma( - const G4ParticleChangeForGamma &right): G4VParticleChange(right) +// -------------------------------------------------------------------- +G4ParticleChangeForGamma:: +G4ParticleChangeForGamma(const G4ParticleChangeForGamma& right) + : G4VParticleChange(right) { - if (verboseLevel>1) - G4cout << "G4ParticleChangeForGamma:: copy constructor is called " << G4endl; - - currentTrack = right.currentTrack; - proposedKinEnergy = right.proposedKinEnergy; + currentTrack = right.currentTrack; + proposedKinEnergy = right.proposedKinEnergy; proposedMomentumDirection = right.proposedMomentumDirection; - proposedPolarization = right.proposedPolarization; + proposedPolarization = right.proposedPolarization; } -// assignment operator -G4ParticleChangeForGamma & G4ParticleChangeForGamma::operator=( - const G4ParticleChangeForGamma &right) +// -------------------------------------------------------------------- +G4ParticleChangeForGamma& +G4ParticleChangeForGamma::operator=(const G4ParticleChangeForGamma& right) { -#ifdef G4VERBOSE - if (verboseLevel>1) - G4cout << "G4ParticleChangeForGamma:: assignment operator is called " << G4endl; -#endif - - if (this != &right) { - if (theNumberOfSecondaries>0) { -#ifdef G4VERBOSE - if (verboseLevel>0) { - G4cout << "G4ParticleChangeForGamma: assignment operator Warning "; - G4cout << "theListOfSecondaries is not empty "; - } -#endif - for (G4int index= 0; index 0) + { + for(G4int index = 0; index < theNumberOfSecondaries; ++index) + { + if((*theListOfSecondaries)[index]) + delete(*theListOfSecondaries)[index]; + } + } + delete theListOfSecondaries; + theListOfSecondaries = new G4TrackFastVector(); theNumberOfSecondaries = right.theNumberOfSecondaries; - for (G4int index = 0; indexSetElement(index, newTrack); } - - theStatusChange = right.theStatusChange; - theLocalEnergyDeposit = right.theLocalEnergyDeposit; - theSteppingControlFlag = right.theSteppingControlFlag; - theParentWeight = right.theParentWeight; + for(G4int index = 0; index < theNumberOfSecondaries; ++index) + { + G4Track* newTrack = new G4Track(*((*right.theListOfSecondaries)[index])); + theListOfSecondaries->SetElement(index, newTrack); + } - currentTrack = right.currentTrack; - proposedKinEnergy = right.proposedKinEnergy; + theStatusChange = right.theStatusChange; + theLocalEnergyDeposit = right.theLocalEnergyDeposit; + theSteppingControlFlag = right.theSteppingControlFlag; + theParentWeight = right.theParentWeight; + + currentTrack = right.currentTrack; + proposedKinEnergy = right.proposedKinEnergy; proposedMomentumDirection = right.proposedMomentumDirection; - proposedPolarization = right.proposedPolarization; + proposedPolarization = right.proposedPolarization; } return *this; } +// -------------------------------------------------------------------- void G4ParticleChangeForGamma::AddSecondary(G4DynamicParticle* aParticle) { - // create track + // create track G4Track* aTrack = new G4Track(aParticle, currentTrack->GetGlobalTime(), - currentTrack->GetPosition()); + currentTrack->GetPosition()); - // Touchable handle is copied to keep the pointer + // touchable handle is copied to keep the pointer aTrack->SetTouchableHandle(currentTrack->GetTouchableHandle()); - // add a secondary + // add a secondary G4VParticleChange::AddSecondary(aTrack); } -//---------------------------------------------------------------- -// method for updating G4Step -// - +// -------------------------------------------------------------------- G4Step* G4ParticleChangeForGamma::UpdateStepForAtRest(G4Step* pStep) { - pStep->AddTotalEnergyDeposit( theLocalEnergyDeposit ); - pStep->SetStepLength( 0.0 ); + pStep->AddTotalEnergyDeposit(theLocalEnergyDeposit); + pStep->SetStepLength(0.0); - if (isParentWeightProposed ){ - pStep->GetPostStepPoint()->SetWeight( theParentWeight ); + if(isParentWeightProposed) + { + pStep->GetPostStepPoint()->SetWeight(theParentWeight); } return pStep; } +// -------------------------------------------------------------------- G4Step* G4ParticleChangeForGamma::UpdateStepForPostStep(G4Step* pStep) { G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); - G4Track* pTrack = pStep->GetTrack(); + G4Track* pTrack = pStep->GetTrack(); - pPostStepPoint->SetKineticEnergy( proposedKinEnergy ); - pPostStepPoint->SetMomentumDirection( proposedMomentumDirection ); - pPostStepPoint->SetPolarization( proposedPolarization ); + pPostStepPoint->SetKineticEnergy(proposedKinEnergy); + pPostStepPoint->SetMomentumDirection(proposedMomentumDirection); + pPostStepPoint->SetPolarization(proposedPolarization); // update velocity for scattering process and particles with mass - if(proposedKinEnergy > 0.0) { - if(pTrack->GetParticleDefinition()->GetPDGMass() > 0.0) { + if(proposedKinEnergy > 0.0) + { + if(pTrack->GetParticleDefinition()->GetPDGMass() > 0.0) + { pPostStepPoint->SetVelocity(pTrack->CalculateVelocity()); } - } - - if (isParentWeightProposed ){ - pPostStepPoint->SetWeight( theParentWeight ); } - - pStep->AddTotalEnergyDeposit( theLocalEnergyDeposit ); - pStep->AddNonIonizingEnergyDeposit( theNonIonizingEnergyDeposit ); + + if(isParentWeightProposed) + { + pPostStepPoint->SetWeight(theParentWeight); + } + + pStep->AddTotalEnergyDeposit(theLocalEnergyDeposit); + pStep->AddNonIonizingEnergyDeposit(theNonIonizingEnergyDeposit); return pStep; } -//---------------------------------------------------------------- -// methods for printing messages -// - +// -------------------------------------------------------------------- void G4ParticleChangeForGamma::DumpInfo() const { -// use base-class DumpInfo + // use base-class DumpInfo G4VParticleChange::DumpInfo(); G4int oldprc = G4cout.precision(3); - G4cout << " Kinetic Energy (MeV): " - << std::setw(20) << proposedKinEnergy/MeV - << G4endl; - G4cout << " Momentum Direction: " - << std::setw(20) << proposedMomentumDirection - << G4endl; - G4cout << " Polarization: " - << std::setw(20) << proposedPolarization - << G4endl; + G4cout << " Kinetic Energy (MeV): " << std::setw(20) + << proposedKinEnergy / MeV << G4endl; + G4cout << " Momentum Direction: " << std::setw(20) + << proposedMomentumDirection << G4endl; + G4cout << " Polarization: " << std::setw(20) << proposedPolarization + << G4endl; G4cout.precision(oldprc); } +// -------------------------------------------------------------------- G4bool G4ParticleChangeForGamma::CheckIt(const G4Track& aTrack) { - G4bool itsOK = true; - G4bool exitWithError = false; + G4bool itsOK = true; + G4bool exitWithError = false; - G4double accuracy; + G4double accuracy; // Energy should not be lager than initial value - accuracy = ( proposedKinEnergy - aTrack.GetKineticEnergy())/MeV; - if (accuracy > accuracyForWarning) { - itsOK = false; + accuracy = (proposedKinEnergy - aTrack.GetKineticEnergy()) / MeV; + if(accuracy > accuracyForWarning) + { + itsOK = false; exitWithError = (accuracy > accuracyForException); #ifdef G4VERBOSE G4cout << "G4ParticleChangeForGamma::CheckIt: "; - G4cout << "KinEnergy become larger than the initial value!" - << " Difference: " << accuracy << "[MeV] " <GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - << G4endl; + << " E=" << aTrack.GetKineticEnergy() / MeV + << " pos=" << aTrack.GetPosition().x() / m << ", " + << aTrack.GetPosition().y() / m << ", " + << aTrack.GetPosition().z() / m << G4endl; #endif } // dump out information of this particle change #ifdef G4VERBOSE - if (!itsOK) DumpInfo(); + if(!itsOK) { DumpInfo(); } #endif // Exit with error - if (exitWithError) { - G4Exception("G4ParticleChangeForGamma::CheckIt", - "TRACK004",EventMustBeAborted, - "energy was illegal"); + if(exitWithError) + { + G4Exception("G4ParticleChangeForGamma::CheckIt()", "TRACK004", + EventMustBeAborted, "energy was illegal"); } - //correction - if (!itsOK) { + // correction + if(!itsOK) + { proposedKinEnergy = aTrack.GetKineticEnergy(); } diff --git a/source/track/src/G4ParticleChangeForLoss.cc b/source/track/src/G4ParticleChangeForLoss.cc index 6e0c7097d0..7041ae74f2 100644 --- a/source/track/src/G4ParticleChangeForLoss.cc +++ b/source/track/src/G4ParticleChangeForLoss.cc @@ -23,178 +23,144 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ParticleChangeForLoss class implementation // -// -// -// -------------------------------------------------------------- -// GEANT 4 class implementation file -// -// ------------------------------------------------------------ -// Implemented for the new scheme 23 Mar. 1998 H.Kurahige -// -------------------------------------------------------------- -// -// Modified: -// 16.01.04 V.Ivanchenko update for model variant of energy loss -// 15.04.05 V.Ivanchenko inline update methods -// 28.08.06 V.Ivanchenko Add access to current track and polarizaion -// -// ------------------------------------------------------------ -// +// Author: Hisaya Kurashige, 23 March 1998 +// Revision: Vladimir Ivantchenko, 16 January 2004 +// -------------------------------------------------------------------- + #include "G4ParticleChangeForLoss.hh" #include "G4SystemOfUnits.hh" #include "G4Track.hh" #include "G4Step.hh" #include "G4DynamicParticle.hh" #include "G4ExceptionSeverity.hh" -//#include "G4VelocityTable.hh" +// -------------------------------------------------------------------- G4ParticleChangeForLoss::G4ParticleChangeForLoss() - : G4VParticleChange(), currentTrack(0), proposedKinEnergy(0.), - lowEnergyLimit(1.0*eV), currentCharge(0.) + : G4VParticleChange() + , lowEnergyLimit(1.0 * eV) { theSteppingControlFlag = NormalCondition; - debugFlag = false; -#ifdef G4VERBOSE - if (verboseLevel>2) { - G4cout << "G4ParticleChangeForLoss::G4ParticleChangeForLoss() " << G4endl; - } -#endif + debugFlag = false; } +// -------------------------------------------------------------------- G4ParticleChangeForLoss::~G4ParticleChangeForLoss() { -#ifdef G4VERBOSE - if (verboseLevel>2) { - G4cout << "G4ParticleChangeForLoss::~G4ParticleChangeForLoss() " << G4endl; - } -#endif } -G4ParticleChangeForLoss:: -G4ParticleChangeForLoss(const G4ParticleChangeForLoss &right) +// -------------------------------------------------------------------- +G4ParticleChangeForLoss::G4ParticleChangeForLoss( + const G4ParticleChangeForLoss& right) : G4VParticleChange(right) { - if (verboseLevel>1) { - G4cout << "G4ParticleChangeForLoss:: copy constructor is called " << G4endl; - } - currentTrack = right.currentTrack; - proposedKinEnergy = right.proposedKinEnergy; - lowEnergyLimit = right.lowEnergyLimit; - currentCharge = right.currentCharge; + currentTrack = right.currentTrack; + proposedKinEnergy = right.proposedKinEnergy; + lowEnergyLimit = right.lowEnergyLimit; + currentCharge = right.currentCharge; proposedMomentumDirection = right.proposedMomentumDirection; } -// assignment operator -G4ParticleChangeForLoss & G4ParticleChangeForLoss::operator=( - const G4ParticleChangeForLoss &right) +// -------------------------------------------------------------------- +G4ParticleChangeForLoss& G4ParticleChangeForLoss::operator=( + const G4ParticleChangeForLoss& right) { -#ifdef G4VERBOSE - if (verboseLevel>1) { - G4cout << "G4ParticleChangeForLoss:: assignment operator is called " << G4endl; - } -#endif - - if (this != &right) { - if (theNumberOfSecondaries>0) { -#ifdef G4VERBOSE - if (verboseLevel>0) { - G4cout << "G4ParticleChangeForLoss: assignment operator Warning "; - G4cout << "theListOfSecondaries is not empty "; + if(this != &right) + { + if(theNumberOfSecondaries > 0) + { + for(G4int index = 0; index < theNumberOfSecondaries; ++index) + { + if((*theListOfSecondaries)[index]) + delete(*theListOfSecondaries)[index]; } -#endif - for (G4int index= 0; indexSetElement(index, newTrack); } + for(G4int index = 0; index < theNumberOfSecondaries; ++index) + { + G4Track* newTrack = new G4Track(*((*right.theListOfSecondaries)[index])); + theListOfSecondaries->SetElement(index, newTrack); + } - theStatusChange = right.theStatusChange; - theLocalEnergyDeposit = right.theLocalEnergyDeposit; - theSteppingControlFlag = right.theSteppingControlFlag; - theParentWeight = right.theParentWeight; - isParentWeightProposed = right.isParentWeightProposed; + theStatusChange = right.theStatusChange; + theLocalEnergyDeposit = right.theLocalEnergyDeposit; + theSteppingControlFlag = right.theSteppingControlFlag; + theParentWeight = right.theParentWeight; + isParentWeightProposed = right.isParentWeightProposed; fSetSecondaryWeightByProcess = right.fSetSecondaryWeightByProcess; - currentTrack = right.currentTrack; - proposedKinEnergy = right.proposedKinEnergy; - currentCharge = right.currentCharge; + currentTrack = right.currentTrack; + proposedKinEnergy = right.proposedKinEnergy; + currentCharge = right.currentCharge; proposedMomentumDirection = right.proposedMomentumDirection; } return *this; } -//---------------------------------------------------------------- -// methods for printing messages -// - +// -------------------------------------------------------------------- void G4ParticleChangeForLoss::DumpInfo() const { -// use base-class DumpInfo + // use base-class DumpInfo G4VParticleChange::DumpInfo(); G4int oldprc = G4cout.precision(3); - G4cout << " Charge (eplus) : " - << std::setw(20) << currentCharge/eplus - << G4endl; - G4cout << " Kinetic Energy (MeV): " - << std::setw(20) << proposedKinEnergy/MeV - << G4endl; - G4cout << " Momentum Direct - x : " - << std::setw(20) << proposedMomentumDirection.x() - << G4endl; - G4cout << " Momentum Direct - y : " - << std::setw(20) << proposedMomentumDirection.y() - << G4endl; - G4cout << " Momentum Direct - z : " - << std::setw(20) << proposedMomentumDirection.z() - << G4endl; + G4cout << " Charge (eplus) : " << std::setw(20) + << currentCharge / eplus << G4endl; + G4cout << " Kinetic Energy (MeV): " << std::setw(20) + << proposedKinEnergy / MeV << G4endl; + G4cout << " Momentum Direct - x : " << std::setw(20) + << proposedMomentumDirection.x() << G4endl; + G4cout << " Momentum Direct - y : " << std::setw(20) + << proposedMomentumDirection.y() << G4endl; + G4cout << " Momentum Direct - z : " << std::setw(20) + << proposedMomentumDirection.z() << G4endl; G4cout.precision(oldprc); } +// -------------------------------------------------------------------- G4bool G4ParticleChangeForLoss::CheckIt(const G4Track& aTrack) { - G4bool itsOK = true; - G4bool exitWithError = false; + G4bool itsOK = true; + G4bool exitWithError = false; - G4double accuracy; + G4double accuracy; // Energy should not be lager than initial value - accuracy = ( proposedKinEnergy - aTrack.GetKineticEnergy())/MeV; - if (accuracy > accuracyForWarning) { - itsOK = false; + accuracy = (proposedKinEnergy - aTrack.GetKineticEnergy()) / MeV; + if(accuracy > accuracyForWarning) + { + itsOK = false; exitWithError = (accuracy > accuracyForException); #ifdef G4VERBOSE G4cout << "G4ParticleChangeForLoss::CheckIt: "; - G4cout << "KinEnergy become larger than the initial value!" - << " Difference: " << accuracy << "[MeV] " <GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - <GetPostStepPoint(); G4StepPoint* pPreStepPoint = pStep->GetPreStepPoint(); - G4Track* pTrack = pStep->GetTrack(); + G4Track* pTrack = pStep->GetTrack(); // accumulate change of the kinetic energy G4double preKinEnergy = pPreStepPoint->GetKineticEnergy(); - G4double kinEnergy = pPostStepPoint->GetKineticEnergy() + - (proposedKinEnergy - preKinEnergy); + G4double kinEnergy = + pPostStepPoint->GetKineticEnergy() + (proposedKinEnergy - preKinEnergy); // update kinetic energy and charge - if (kinEnergy < lowEnergyLimit) { + if(kinEnergy < lowEnergyLimit) + { theLocalEnergyDeposit += kinEnergy; kinEnergy = 0.0; pPostStepPoint->SetVelocity(0.0); - } else { - pPostStepPoint->SetCharge( currentCharge ); + } + else + { + pPostStepPoint->SetCharge(currentCharge); // calculate velocity - pTrack->SetKineticEnergy(kinEnergy); + pTrack->SetKineticEnergy(kinEnergy); pPostStepPoint->SetVelocity(pTrack->CalculateVelocity()); - pTrack->SetKineticEnergy(preKinEnergy); + pTrack->SetKineticEnergy(preKinEnergy); } - pPostStepPoint->SetKineticEnergy( kinEnergy ); + pPostStepPoint->SetKineticEnergy(kinEnergy); - if (isParentWeightProposed ){ - pPostStepPoint->SetWeight( theParentWeight ); + if(isParentWeightProposed) + { + pPostStepPoint->SetWeight(theParentWeight); } - pStep->AddTotalEnergyDeposit( theLocalEnergyDeposit ); - pStep->AddNonIonizingEnergyDeposit( theNonIonizingEnergyDeposit ); + pStep->AddTotalEnergyDeposit(theLocalEnergyDeposit); + pStep->AddNonIonizingEnergyDeposit(theNonIonizingEnergyDeposit); return pStep; } +// -------------------------------------------------------------------- G4Step* G4ParticleChangeForLoss::UpdateStepForPostStep(G4Step* pStep) { G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); - G4Track* pTrack = pStep->GetTrack(); + G4Track* pTrack = pStep->GetTrack(); - pPostStepPoint->SetCharge( currentCharge ); - pPostStepPoint->SetMomentumDirection( proposedMomentumDirection ); - pPostStepPoint->SetKineticEnergy( proposedKinEnergy ); - pTrack->SetKineticEnergy( proposedKinEnergy ); - if(proposedKinEnergy > 0.0) { + pPostStepPoint->SetCharge(currentCharge); + pPostStepPoint->SetMomentumDirection(proposedMomentumDirection); + pPostStepPoint->SetKineticEnergy(proposedKinEnergy); + pTrack->SetKineticEnergy(proposedKinEnergy); + if(proposedKinEnergy > 0.0) + { pPostStepPoint->SetVelocity(pTrack->CalculateVelocity()); - } else { + } + else + { pPostStepPoint->SetVelocity(0.0); } - pPostStepPoint->SetPolarization( proposedPolarization ); + pPostStepPoint->SetPolarization(proposedPolarization); - if (isParentWeightProposed ){ - pPostStepPoint->SetWeight( theParentWeight ); + if(isParentWeightProposed) + { + pPostStepPoint->SetWeight(theParentWeight); } - pStep->AddTotalEnergyDeposit( theLocalEnergyDeposit ); - pStep->AddNonIonizingEnergyDeposit( theNonIonizingEnergyDeposit ); + pStep->AddTotalEnergyDeposit(theLocalEnergyDeposit); + pStep->AddNonIonizingEnergyDeposit(theNonIonizingEnergyDeposit); return pStep; } - diff --git a/source/track/src/G4ParticleChangeForMSC.cc b/source/track/src/G4ParticleChangeForMSC.cc index 6131767244..098862eace 100644 --- a/source/track/src/G4ParticleChangeForMSC.cc +++ b/source/track/src/G4ParticleChangeForMSC.cc @@ -23,18 +23,11 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4ParticleChangeForMSC class implementation // -// -// -// -------------------------------------------------------------- -// GEANT 4 class implementation file -// -// -// -// ------------------------------------------------------------ -// Implemented for the new scheme 23 Mar. 1998 H.Kurahige -// Update for model variant of msc 16 Jan 2004 V.Ivanchenko -// -------------------------------------------------------------- +// Author: Hisaya Kurashige, 23 March 1998 +// Revision: Vladimir Ivantchenko, 16 January 2004 +// -------------------------------------------------------------------- #include "G4ParticleChangeForMSC.hh" #include "G4SystemOfUnits.hh" @@ -43,177 +36,148 @@ #include "G4DynamicParticle.hh" #include "G4ExceptionSeverity.hh" +// -------------------------------------------------------------------- G4ParticleChangeForMSC::G4ParticleChangeForMSC() : G4VParticleChange() { -#ifdef G4VERBOSE - if (verboseLevel>2) { - G4cout << "G4ParticleChangeForMSC::G4ParticleChangeForMSC() " << G4endl; - } -#endif } +// -------------------------------------------------------------------- G4ParticleChangeForMSC::~G4ParticleChangeForMSC() { -#ifdef G4VERBOSE - if (verboseLevel>2) { - G4cout << "G4ParticleChangeForMSC::~G4ParticleChangeForMSC() " << G4endl; - } -#endif } +// -------------------------------------------------------------------- G4ParticleChangeForMSC:: -G4ParticleChangeForMSC(const G4ParticleChangeForMSC &right) +G4ParticleChangeForMSC(const G4ParticleChangeForMSC& right) : G4VParticleChange(right) { - if (verboseLevel>1) { - G4cout << "G4ParticleChangeForMSC:: copy constructor is called " << G4endl; - } - theMomentumDirection = right.theMomentumDirection; - thePosition = right.thePosition; + theMomentumDirection = right.theMomentumDirection; + thePosition = right.thePosition; } -// assignment operator -G4ParticleChangeForMSC & G4ParticleChangeForMSC::operator=( - const G4ParticleChangeForMSC &right) +// -------------------------------------------------------------------- +G4ParticleChangeForMSC& +G4ParticleChangeForMSC::operator=(const G4ParticleChangeForMSC& right) { - if (verboseLevel>1) { - G4cout << "G4ParticleChangeForMSC:: assignment operator is called " << G4endl; - } - if (this != &right) - { - theListOfSecondaries = right.theListOfSecondaries; - theSizeOftheListOfSecondaries = right.theSizeOftheListOfSecondaries; - theNumberOfSecondaries = right.theNumberOfSecondaries; - theStatusChange = right.theStatusChange; - theLocalEnergyDeposit = right.theLocalEnergyDeposit; - theSteppingControlFlag = right.theSteppingControlFlag; - theTrueStepLength = right.theTrueStepLength; + if(this != &right) + { + theListOfSecondaries = right.theListOfSecondaries; + theSizeOftheListOfSecondaries = right.theSizeOftheListOfSecondaries; + theNumberOfSecondaries = right.theNumberOfSecondaries; + theStatusChange = right.theStatusChange; + theLocalEnergyDeposit = right.theLocalEnergyDeposit; + theSteppingControlFlag = right.theSteppingControlFlag; + theTrueStepLength = right.theTrueStepLength; - theMomentumDirection = right.theMomentumDirection; - thePosition = right.thePosition; - } - return *this; + theMomentumDirection = right.theMomentumDirection; + thePosition = right.thePosition; + } + return *this; } -//---------------------------------------------------------------- -// methods for updating G4Step -// - +// -------------------------------------------------------------------- G4Step* G4ParticleChangeForMSC::UpdateStepForAlongStep(G4Step* pStep) { - // Update the G4Step specific attributes + // update the G4Step specific attributes pStep->SetStepLength(theTrueStepLength); theStatusChange = pStep->GetTrack()->GetTrackStatus(); - // Multiple scattering calculates the final state of the particle + // multiple scattering calculates the final state of the particle G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); // update momentum direction pPostStepPoint->SetMomentumDirection(theMomentumDirection); // update position - pPostStepPoint->SetPosition( thePosition ); + pPostStepPoint->SetPosition(thePosition); return pStep; } +// -------------------------------------------------------------------- G4Step* G4ParticleChangeForMSC::UpdateStepForPostStep(G4Step* pStep) { - // Multiple scattering calculates the final state of the particle + // multiple scattering calculates the final state of the particle G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); // update momentum direction pPostStepPoint->SetMomentumDirection(theMomentumDirection); // update position - pPostStepPoint->SetPosition( thePosition ); + pPostStepPoint->SetPosition(thePosition); - // Update the G4Step specific attributes + // update the G4Step specific attributes return pStep; } - -//---------------------------------------------------------------- -// methods for printing messages -// - +// -------------------------------------------------------------------- void G4ParticleChangeForMSC::DumpInfo() const { -// use base-class DumpInfo + // use base-class DumpInfo G4VParticleChange::DumpInfo(); G4int oldprc = G4cout.precision(3); - G4cout << " Position - x (mm) : " - << std::setw(20) << thePosition.x()/mm - << G4endl; - G4cout << " Position - y (mm) : " - << std::setw(20) << thePosition.y()/mm - << G4endl; - G4cout << " Position - z (mm) : " - << std::setw(20) << thePosition.z()/mm - << G4endl; - G4cout << " Momentum Direct - x : " - << std::setw(20) << theMomentumDirection.x() - << G4endl; - G4cout << " Momentum Direct - y : " - << std::setw(20) << theMomentumDirection.y() - << G4endl; - G4cout << " Momentum Direct - z : " - << std::setw(20) << theMomentumDirection.z() - << G4endl; + G4cout << " Position - x (mm) : " << std::setw(20) + << thePosition.x() / mm << G4endl; + G4cout << " Position - y (mm) : " << std::setw(20) + << thePosition.y() / mm << G4endl; + G4cout << " Position - z (mm) : " << std::setw(20) + << thePosition.z() / mm << G4endl; + G4cout << " Momentum Direct - x : " << std::setw(20) + << theMomentumDirection.x() << G4endl; + G4cout << " Momentum Direct - y : " << std::setw(20) + << theMomentumDirection.y() << G4endl; + G4cout << " Momentum Direct - z : " << std::setw(20) + << theMomentumDirection.z() << G4endl; G4cout.precision(oldprc); } - +// -------------------------------------------------------------------- G4bool G4ParticleChangeForMSC::CheckIt(const G4Track& aTrack) { - G4bool itsOK = true; - G4bool exitWithError = false; + G4bool itsOK = true; + G4bool exitWithError = false; - G4double accuracy; + G4double accuracy; // check // MomentumDirection should be unit vector - accuracy = std::fabs(theMomentumDirection.mag2()-1.0); - if (accuracy > accuracyForWarning) { - itsOK = false; + accuracy = std::fabs(theMomentumDirection.mag2() - 1.0); + if(accuracy > accuracyForWarning) + { + itsOK = false; exitWithError = (accuracy > accuracyForException); #ifdef G4VERBOSE G4cout << " G4ParticleChangeForMSC::CheckIt : "; G4cout << "the Momentum Change is not unit vector !!" - << " Difference: " << accuracy << G4endl; + << " Difference: " << accuracy << G4endl; G4cout << aTrack.GetDefinition()->GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - <0 19 Jan. 2004 V.Ivanchenko -// -------------------------------------------------------------- +// Author: Hisaya Kurashige, 10 May 1998 +// -------------------------------------------------------------------- #include "G4ParticleChangeForTransport.hh" #include "G4TouchableHandle.hh" @@ -44,89 +35,64 @@ #include "G4TrackFastVector.hh" #include "G4DynamicParticle.hh" +// -------------------------------------------------------------------- G4ParticleChangeForTransport::G4ParticleChangeForTransport() - : G4ParticleChange(), isMomentumChanged(false), theMaterialChange(0), - theMaterialCutsCoupleChange(0), theSensitiveDetectorChange(0), - fpVectorOfAuxiliaryPointsPointer(0) + : G4ParticleChange() { - if (verboseLevel>2) { - G4cout << "G4ParticleChangeForTransport::G4ParticleChangeForTransport() " - << G4endl; - } } -G4ParticleChangeForTransport::~G4ParticleChangeForTransport() +// -------------------------------------------------------------------- +G4ParticleChangeForTransport::~G4ParticleChangeForTransport() { - if (verboseLevel>2) { - G4cout << "G4ParticleChangeForTransport::~G4ParticleChangeForTransport() " - << G4endl; - } } +// -------------------------------------------------------------------- G4ParticleChangeForTransport:: -G4ParticleChangeForTransport(const G4ParticleChangeForTransport &r) - : G4ParticleChange(r), - fpVectorOfAuxiliaryPointsPointer(0) +G4ParticleChangeForTransport(const G4ParticleChangeForTransport& r) + : G4ParticleChange(r) { - if (verboseLevel>0) { - G4cout << "G4ParticleChangeForTransport:: copy constructor is called " - << G4endl; - } - theTouchableHandle = r.theTouchableHandle; - isMomentumChanged = r.isMomentumChanged; - theMaterialChange = r.theMaterialChange; + theTouchableHandle = r.theTouchableHandle; + isMomentumChanged = r.isMomentumChanged; + theMaterialChange = r.theMaterialChange; theMaterialCutsCoupleChange = r.theMaterialCutsCoupleChange; - theSensitiveDetectorChange = r.theSensitiveDetectorChange; + theSensitiveDetectorChange = r.theSensitiveDetectorChange; } -// assignemnt operator -G4ParticleChangeForTransport & -G4ParticleChangeForTransport::operator=(const G4ParticleChangeForTransport &r) +// -------------------------------------------------------------------- +G4ParticleChangeForTransport& +G4ParticleChangeForTransport::operator=(const G4ParticleChangeForTransport& r) { - if (verboseLevel>1) { - G4cout << "G4ParticleChangeForTransport:: assignment operator is called " - << G4endl; - } - if (this != &r) - { - theListOfSecondaries = r.theListOfSecondaries; - theSizeOftheListOfSecondaries = r.theSizeOftheListOfSecondaries; - theNumberOfSecondaries = r.theNumberOfSecondaries; - theStatusChange = r.theStatusChange; - theTouchableHandle = r.theTouchableHandle; - theMaterialChange = r.theMaterialChange; - theMaterialCutsCoupleChange = r.theMaterialCutsCoupleChange; - theSensitiveDetectorChange = r.theSensitiveDetectorChange; - theMomentumDirectionChange = r.theMomentumDirectionChange; - thePolarizationChange = r.thePolarizationChange; - thePositionChange = r.thePositionChange; - theTimeChange = r.theTimeChange; - theEnergyChange = r.theEnergyChange; - theVelocityChange = r.theVelocityChange; - theTrueStepLength = r.theTrueStepLength; - theLocalEnergyDeposit = r.theLocalEnergyDeposit; - theSteppingControlFlag = r.theSteppingControlFlag; - } - return *this; + if(this != &r) + { + theListOfSecondaries = r.theListOfSecondaries; + theSizeOftheListOfSecondaries = r.theSizeOftheListOfSecondaries; + theNumberOfSecondaries = r.theNumberOfSecondaries; + theStatusChange = r.theStatusChange; + theTouchableHandle = r.theTouchableHandle; + theMaterialChange = r.theMaterialChange; + theMaterialCutsCoupleChange = r.theMaterialCutsCoupleChange; + theSensitiveDetectorChange = r.theSensitiveDetectorChange; + theMomentumDirectionChange = r.theMomentumDirectionChange; + thePolarizationChange = r.thePolarizationChange; + thePositionChange = r.thePositionChange; + theTimeChange = r.theTimeChange; + theEnergyChange = r.theEnergyChange; + theVelocityChange = r.theVelocityChange; + theTrueStepLength = r.theTrueStepLength; + theLocalEnergyDeposit = r.theLocalEnergyDeposit; + theSteppingControlFlag = r.theSteppingControlFlag; + } + return *this; } -//---------------------------------------------------------------- -// methods for updating G4Step -// - +// -------------------------------------------------------------------- G4Step* G4ParticleChangeForTransport::UpdateStepForAtRest(G4Step* pStep) { - // Nothing happens for AtRestDoIt - if (verboseLevel>0) { - G4cout << "G4ParticleChangeForTransport::UpdateStepForAtRest() is called" - << G4endl; - G4cout << " Nothing happens for this method " << G4endl; - } - // Update the G4Step specific attributes + // Update the G4Step specific attributes return UpdateStepInfo(pStep); } - +// -------------------------------------------------------------------- G4Step* G4ParticleChangeForTransport::UpdateStepForAlongStep(G4Step* pStep) { // Smooth curved tajectory representation: let the Step know about @@ -134,7 +100,7 @@ G4Step* G4ParticleChangeForTransport::UpdateStepForAlongStep(G4Step* pStep) pStep->SetPointerToVectorOfAuxiliaryPoints(fpVectorOfAuxiliaryPointsPointer); // copy of G4ParticleChange::UpdateStepForAlongStep - // i.e. no effect for touchable + // i.e. no effect for touchable // A physics process always calculates the final state of the // particle relative to the initial state at the beginning @@ -149,91 +115,97 @@ G4Step* G4ParticleChangeForTransport::UpdateStepForAlongStep(G4Step* pStep) G4StepPoint* pPreStepPoint = pStep->GetPreStepPoint(); G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); - G4Track* aTrack = pStep->GetTrack(); - G4double mass = aTrack->GetDynamicParticle()->GetMass(); - - // uodate kinetic energy - // now assume that no energy change in transportation - // However it is not true in electric fields - // Case for changing energy will be implemented in future + G4Track* aTrack = pStep->GetTrack(); + G4double mass = aTrack->GetDynamicParticle()->GetMass(); + // update kinetic energy + // now assume that no energy change in transportation + // However it is not true in electric fields + // Case for changing energy will be implemented in future // update momentum direction and energy - if (isMomentumChanged) { + if(isMomentumChanged) + { G4double energy; - energy= pPostStepPoint->GetKineticEnergy() - + (theEnergyChange - pPreStepPoint->GetKineticEnergy()); + energy = pPostStepPoint->GetKineticEnergy() + + (theEnergyChange - pPreStepPoint->GetKineticEnergy()); // calculate new momentum - G4ThreeVector pMomentum = pPostStepPoint->GetMomentum() - + ( CalcMomentum(theEnergyChange, theMomentumDirectionChange, mass) - - pPreStepPoint->GetMomentum()); - G4double tMomentum = pMomentum.mag(); - G4ThreeVector direction(1.0,0.0,0.0); - if( tMomentum > 0. ){ - G4double inv_Momentum= 1.0 / tMomentum; - direction= pMomentum * inv_Momentum; + G4ThreeVector pMomentum = + pPostStepPoint->GetMomentum() + + (CalcMomentum(theEnergyChange, theMomentumDirectionChange, mass) - + pPreStepPoint->GetMomentum()); + G4double tMomentum = pMomentum.mag(); + G4ThreeVector direction(1.0, 0.0, 0.0); + if(tMomentum > 0.) + { + G4double inv_Momentum = 1.0 / tMomentum; + direction = pMomentum * inv_Momentum; } pPostStepPoint->SetMomentumDirection(direction); - pPostStepPoint->SetKineticEnergy( energy ); + pPostStepPoint->SetKineticEnergy(energy); } - if (isVelocityChanged) pPostStepPoint->SetVelocity(theVelocityChange); + if(isVelocityChanged) + pPostStepPoint->SetVelocity(theVelocityChange); // stop case should not occur - //pPostStepPoint->SetMomentumDirection(G4ThreeVector(1., 0., 0.)); - + // pPostStepPoint->SetMomentumDirection(G4ThreeVector(1., 0., 0.)); // update polarization - pPostStepPoint->AddPolarization( thePolarizationChange - - pPreStepPoint->GetPolarization()); + pPostStepPoint->AddPolarization(thePolarizationChange - + pPreStepPoint->GetPolarization()); // update position and time - pPostStepPoint->AddPosition( thePositionChange - - pPreStepPoint->GetPosition() ); - pPostStepPoint->AddGlobalTime( theTimeChange - - pPreStepPoint->GetLocalTime()); - pPostStepPoint->AddLocalTime( theTimeChange - - pPreStepPoint->GetLocalTime()); - pPostStepPoint->AddProperTime( theProperTimeChange - - pPreStepPoint->GetProperTime()); + pPostStepPoint->AddPosition(thePositionChange - pPreStepPoint->GetPosition()); + pPostStepPoint->AddGlobalTime(theTimeChange - pPreStepPoint->GetLocalTime()); + pPostStepPoint->AddLocalTime(theTimeChange - pPreStepPoint->GetLocalTime()); + pPostStepPoint->AddProperTime(theProperTimeChange - + pPreStepPoint->GetProperTime()); #ifdef G4VERBOSE - if (debugFlag) CheckIt(*aTrack); + if(debugFlag) { CheckIt(*aTrack); } #endif - // Update the G4Step specific attributes - //pStep->SetStepLength( theTrueStepLength ); - // pStep->AddTotalEnergyDeposit( theLocalEnergyDeposit ); - pStep->SetControlFlag( theSteppingControlFlag ); + // Update the G4Step specific attributes + // pStep->SetStepLength( theTrueStepLength ); + // pStep->AddTotalEnergyDeposit( theLocalEnergyDeposit ); + pStep->SetControlFlag(theSteppingControlFlag); + return pStep; - // return UpdateStepInfo(pStep); } +// -------------------------------------------------------------------- G4Step* G4ParticleChangeForTransport::UpdateStepForPostStep(G4Step* pStep) { // A physics process always calculates the final state of the particle // Change volume only if some kinetic energy remains G4StepPoint* pPostStepPoint = pStep->GetPostStepPoint(); - if(pPostStepPoint->GetKineticEnergy() > 0.0) { - + if(pPostStepPoint->GetKineticEnergy() > 0.0) + { // update next touchable // (touchable can be changed only at PostStepDoIt) - pPostStepPoint->SetTouchableHandle( theTouchableHandle ); + pPostStepPoint->SetTouchableHandle(theTouchableHandle); - pPostStepPoint->SetMaterial( theMaterialChange ); - pPostStepPoint->SetMaterialCutsCouple( theMaterialCutsCoupleChange ); - pPostStepPoint->SetSensitiveDetector( theSensitiveDetectorChange ); + pPostStepPoint->SetMaterial(theMaterialChange); + pPostStepPoint->SetMaterialCutsCouple(theMaterialCutsCoupleChange); + pPostStepPoint->SetSensitiveDetector(theSensitiveDetectorChange); } - if( this->GetFirstStepInVolume() ){ + if(this->GetFirstStepInVolume()) + { pStep->SetFirstStepFlag(); - }else{ - pStep->ClearFirstStepFlag(); - } - if( this->GetLastStepInVolume() ){ + } + else + { + pStep->ClearFirstStepFlag(); + } + if(this->GetLastStepInVolume()) + { pStep->SetLastStepFlag(); - }else{ - pStep->ClearLastStepFlag(); + } + else + { + pStep->ClearLastStepFlag(); } // It used to call base class's method // - but this would copy uninitialised data members @@ -246,19 +218,14 @@ G4Step* G4ParticleChangeForTransport::UpdateStepForPostStep(G4Step* pStep) return pStep; } - -//---------------------------------------------------------------- -// methods for printing messages -// - +// -------------------------------------------------------------------- void G4ParticleChangeForTransport::DumpInfo() const { -// use base-class DumpInfo + // use base-class DumpInfo G4ParticleChange::DumpInfo(); G4int oldprc = G4cout.precision(3); - G4cout << " Touchable (pointer) : " - << std::setw(20) << theTouchableHandle() << G4endl; + G4cout << " Touchable (pointer) : " << std::setw(20) + << theTouchableHandle() << G4endl; G4cout.precision(oldprc); } - diff --git a/source/track/src/G4Step.cc b/source/track/src/G4Step.cc index e8e435dcb0..9574b1f2f4 100644 --- a/source/track/src/G4Step.cc +++ b/source/track/src/G4Step.cc @@ -23,52 +23,28 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4Step class implementation // -// -// -//--------------------------------------------------------------- -// -// G4Step.cc -// -// Description: -// This class represents the Step of a particle tracked. -// It includes information of -// 1) List of Step points which compose the Step, -// 2) static information of particle which generated the -// Step, -// 3) trackID and parent particle ID of the Step, -// 4) termination condition of the Step, -// -// Contact: -// Questions and comments to this code should be sent to -// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) -// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) -// -// --------------------------------------------------------------- +// Authors: +// Katsuya Amako (e-mail: Katsuya.Amako@kek.jp) +// Takashi Sasaki (e-mail: Takashi.Sasaki@kek.jp) +// Revisions: +// Hisaya Kurashige, 1998-2007 +// -------------------------------------------------------------------- #include "G4Step.hh" -//////////////// +// -------------------------------------------------------------------- G4Step::G4Step() -//////////////// - : fTotalEnergyDeposit(0.0),fNonIonizingEnergyDeposit(0.0), - fStepLength(0.), fpTrack(0), - fpSteppingControlFlag(NormalCondition), - fFirstStepInVolume(false), - fLastStepInVolume(false), - fSecondary(nullptr), - nSecondaryByLastStep(0), secondaryInCurrentStep(nullptr), - fpVectorOfAuxiliaryPointsPointer(nullptr) { fpPreStepPoint = new G4StepPoint(); fpPostStepPoint = new G4StepPoint(); - secondaryInCurrentStep = new std::vector; + secondaryInCurrentStep = new std::vector; } -///////////////// +// -------------------------------------------------------------------- G4Step::~G4Step() -///////////////// { delete fpPreStepPoint; fpPreStepPoint = nullptr; @@ -79,142 +55,164 @@ G4Step::~G4Step() delete secondaryInCurrentStep; secondaryInCurrentStep = nullptr; - if (fSecondary != nullptr ) { + if(fSecondary != nullptr) + { fSecondary->clear(); delete fSecondary; } fSecondary = nullptr; } -// Copy Counstructor and assignment operator - -///////////////// +// -------------------------------------------------------------------- G4Step::G4Step(const G4Step& right) -///////////////// - : fTotalEnergyDeposit(right.fTotalEnergyDeposit), - fNonIonizingEnergyDeposit(right.fNonIonizingEnergyDeposit), - fStepLength(right.fStepLength), - fpTrack(right.fpTrack), - fpSteppingControlFlag(right.fpSteppingControlFlag), - fFirstStepInVolume(right.fFirstStepInVolume), - fLastStepInVolume(right.fLastStepInVolume), - nSecondaryByLastStep(right.nSecondaryByLastStep), - secondaryInCurrentStep(right.secondaryInCurrentStep), - fpVectorOfAuxiliaryPointsPointer(right.fpVectorOfAuxiliaryPointsPointer) + : fTotalEnergyDeposit(right.fTotalEnergyDeposit) + , fNonIonizingEnergyDeposit(right.fNonIonizingEnergyDeposit) + , fStepLength(right.fStepLength) + , fpTrack(right.fpTrack) + , fpSteppingControlFlag(right.fpSteppingControlFlag) + , fFirstStepInVolume(right.fFirstStepInVolume) + , fLastStepInVolume(right.fLastStepInVolume) + , nSecondaryByLastStep(right.nSecondaryByLastStep) + , secondaryInCurrentStep(right.secondaryInCurrentStep) + , fpVectorOfAuxiliaryPointsPointer(right.fpVectorOfAuxiliaryPointsPointer) { - if (right.fpPreStepPoint != nullptr) { - fpPreStepPoint = new G4StepPoint(*(right.fpPreStepPoint)); - } else { - fpPreStepPoint = new G4StepPoint(); + if(right.fpPreStepPoint != nullptr) + { + fpPreStepPoint = new G4StepPoint(*(right.fpPreStepPoint)); } - if (right.fpPostStepPoint != nullptr) { - fpPostStepPoint = new G4StepPoint(*(right.fpPostStepPoint)); - } else { - fpPostStepPoint = new G4StepPoint(); + else + { + fpPreStepPoint = new G4StepPoint(); } - - if (right.fSecondary != nullptr) { + if(right.fpPostStepPoint != nullptr) + { + fpPostStepPoint = new G4StepPoint(*(right.fpPostStepPoint)); + } + else + { + fpPostStepPoint = new G4StepPoint(); + } + + if(right.fSecondary != nullptr) + { fSecondary = new G4TrackVector(*(right.fSecondary)); - } else { + } + else + { fSecondary = new G4TrackVector(); } - // secondaryInCurrentStep is cleared - secondaryInCurrentStep = new std::vector; + // secondaryInCurrentStep is cleared + secondaryInCurrentStep = new std::vector; } -///////////////// -G4Step& G4Step::operator=(const G4Step & right) -///////////////// +// -------------------------------------------------------------------- +G4Step& G4Step::operator=(const G4Step& right) { - if (this != &right){ - fTotalEnergyDeposit = right.fTotalEnergyDeposit; - fNonIonizingEnergyDeposit = right.fNonIonizingEnergyDeposit; - fStepLength = right.fStepLength; - fpTrack = right.fpTrack; - fpSteppingControlFlag = right.fpSteppingControlFlag; - fFirstStepInVolume = right.fFirstStepInVolume; - fLastStepInVolume = right.fLastStepInVolume; - nSecondaryByLastStep = right.nSecondaryByLastStep; - secondaryInCurrentStep = right.secondaryInCurrentStep; + if(this != &right) + { + fTotalEnergyDeposit = right.fTotalEnergyDeposit; + fNonIonizingEnergyDeposit = right.fNonIonizingEnergyDeposit; + fStepLength = right.fStepLength; + fpTrack = right.fpTrack; + fpSteppingControlFlag = right.fpSteppingControlFlag; + fFirstStepInVolume = right.fFirstStepInVolume; + fLastStepInVolume = right.fLastStepInVolume; + nSecondaryByLastStep = right.nSecondaryByLastStep; + secondaryInCurrentStep = right.secondaryInCurrentStep; fpVectorOfAuxiliaryPointsPointer = right.fpVectorOfAuxiliaryPointsPointer; - if (fpPreStepPoint != nullptr ) delete fpPreStepPoint; - if (right.fpPreStepPoint != nullptr) { - fpPreStepPoint = new G4StepPoint(*(right.fpPreStepPoint)); - } else { - fpPreStepPoint = new G4StepPoint(); + if(fpPreStepPoint != nullptr) + { + delete fpPreStepPoint; } - if (fpPostStepPoint !=nullptr ) delete fpPostStepPoint; - if (right.fpPostStepPoint != nullptr) { - fpPostStepPoint = new G4StepPoint(*(right.fpPostStepPoint)); - } else { - fpPostStepPoint = new G4StepPoint(); + if(right.fpPreStepPoint != nullptr) + { + fpPreStepPoint = new G4StepPoint(*(right.fpPreStepPoint)); } - - if (fSecondary != nullptr ) { + else + { + fpPreStepPoint = new G4StepPoint(); + } + if(fpPostStepPoint != nullptr) + { + delete fpPostStepPoint; + } + if(right.fpPostStepPoint != nullptr) + { + fpPostStepPoint = new G4StepPoint(*(right.fpPostStepPoint)); + } + else + { + fpPostStepPoint = new G4StepPoint(); + } + + if(fSecondary != nullptr) + { fSecondary->clear(); delete fSecondary; } - if (right.fSecondary != nullptr) { + if(right.fSecondary != nullptr) + { fSecondary = new G4TrackVector(*(right.fSecondary)); - } else { + } + else + { fSecondary = new G4TrackVector(); } - - // secondaryInCurrentStep is not copied - if ( secondaryInCurrentStep != nullptr ) { + + // secondaryInCurrentStep is not copied + if(secondaryInCurrentStep != nullptr) + { secondaryInCurrentStep->clear(); delete secondaryInCurrentStep; } - secondaryInCurrentStep = new std::vector; - } + secondaryInCurrentStep = new std::vector; + } return *this; } -///////////////// +// -------------------------------------------------------------------- G4ThreeVector G4Step::GetDeltaMomentum() const -///////////////// -{ +{ static G4ThreadLocal G4bool isFirstTime = true; - if (isFirstTime) { + if(isFirstTime) + { isFirstTime = false; #ifdef G4VERBOSE - G4Exception( "G4Step::GetDeltaMomentum()","Warning", JustWarning, - "This method is obsolete and will be removed soon"); + G4Exception("G4Step::GetDeltaMomentum()", "Warning", JustWarning, + "This method is obsolete and will be removed soon"); #endif } - return fpPostStepPoint->GetMomentum() - - fpPreStepPoint->GetMomentum(); + return fpPostStepPoint->GetMomentum() - fpPreStepPoint->GetMomentum(); } -///////////////// +// -------------------------------------------------------------------- G4double G4Step::GetDeltaEnergy() const -///////////////// -{ +{ static G4ThreadLocal G4bool isFirstTime = true; - if (isFirstTime) { + if(isFirstTime) + { isFirstTime = false; #ifdef G4VERBOSE - G4Exception( "G4Step::GetDeltaEnergy()","Warning", JustWarning, - "This method is obsolete and will be removed soon"); + G4Exception("G4Step::GetDeltaEnergy()", "Warning", JustWarning, + "This method is obsolete and will be removed soon"); #endif } - return fpPostStepPoint->GetKineticEnergy() - - fpPreStepPoint->GetKineticEnergy(); + return fpPostStepPoint->GetKineticEnergy() - + fpPreStepPoint->GetKineticEnergy(); } -///////////////// -const std::vector* G4Step::GetSecondaryInCurrentStep() const -///////////////// +// -------------------------------------------------------------------- +const std::vector* G4Step::GetSecondaryInCurrentStep() const { secondaryInCurrentStep->clear(); G4int nSecondary = fSecondary->size(); - for (G4int i=nSecondaryByLastStep; ipush_back((*fSecondary)[i]); } - return secondaryInCurrentStep; + return secondaryInCurrentStep; } - diff --git a/source/track/src/G4StepPoint.cc b/source/track/src/G4StepPoint.cc index 9d65c3eae8..046d22a1eb 100644 --- a/source/track/src/G4StepPoint.cc +++ b/source/track/src/G4StepPoint.cc @@ -23,88 +23,64 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4StepPoint class implementation // -// -// -//--------------------------------------------------------------- -// -// G4StepPoint.cc -// -// Description: -// This class represents information associated with the -// each end of a Step like the space/time data of the -// particle. -// -// Contact: -// Questions and comments to this code should be sent to -// Hisaya Kurashige -// -// --------------------------------------------------------------- +// Author: Hisaya Kurashige, 16 February 2000 +// -------------------------------------------------------------------- #include "G4StepPoint.hh" -////////////////////////// +// -------------------------------------------------------------------- G4StepPoint::G4StepPoint() -////////////////////////// - : fGlobalTime(0.), fLocalTime(0.), fProperTime(0.), - fKineticEnergy(0.), fVelocity(0.), - fpTouchable(0), fpMaterial(nullptr), fpMaterialCutsCouple(nullptr), - fpSensitiveDetector(nullptr), - fSafety(0.), - fStepStatus(fUndefined), fpProcessDefinedStep(nullptr), - fMass(0.), fCharge(0.), fMagneticMoment(0.), - fWeight(0.) -{ -} +{} -////////////////////////// -G4StepPoint::G4StepPoint(const G4StepPoint &right) : -////////////////////////// - fPosition(right.fPosition), - fGlobalTime(right.fGlobalTime), - fLocalTime(right.fLocalTime), - fProperTime(right.fProperTime), - fMomentumDirection(right.fMomentumDirection), - fKineticEnergy(right.fKineticEnergy), - fVelocity(right.fVelocity), - fpTouchable(right.fpTouchable), - fpMaterial(right.fpMaterial), - fpMaterialCutsCouple(right.fpMaterialCutsCouple), - fpSensitiveDetector(right.fpSensitiveDetector), - fSafety(right.fSafety), - fPolarization(right.fPolarization), - fStepStatus(right.fStepStatus), - fpProcessDefinedStep(right.fpProcessDefinedStep), - fMass(right.fMass), - fCharge(right.fCharge), - fMagneticMoment(right.fMagneticMoment), - fWeight(right.fWeight) -{ -} +// -------------------------------------------------------------------- +G4StepPoint::G4StepPoint(const G4StepPoint& right) + : fPosition(right.fPosition) + , fGlobalTime(right.fGlobalTime) + , fLocalTime(right.fLocalTime) + , fProperTime(right.fProperTime) + , fMomentumDirection(right.fMomentumDirection) + , fKineticEnergy(right.fKineticEnergy) + , fVelocity(right.fVelocity) + , fpTouchable(right.fpTouchable) + , fpMaterial(right.fpMaterial) + , fpMaterialCutsCouple(right.fpMaterialCutsCouple) + , fpSensitiveDetector(right.fpSensitiveDetector) + , fSafety(right.fSafety) + , fPolarization(right.fPolarization) + , fStepStatus(right.fStepStatus) + , fpProcessDefinedStep(right.fpProcessDefinedStep) + , fMass(right.fMass) + , fCharge(right.fCharge) + , fMagneticMoment(right.fMagneticMoment) + , fWeight(right.fWeight) +{} -////////////////////////// -G4StepPoint & G4StepPoint::operator=(const G4StepPoint &right) +// -------------------------------------------------------------------- +G4StepPoint& G4StepPoint::operator=(const G4StepPoint& right) { - if (this != &right) { - fPosition = right.fPosition; - fGlobalTime = right.fGlobalTime; - fLocalTime = right.fLocalTime; - fProperTime = right.fProperTime; - fMomentumDirection = right.fMomentumDirection; - fKineticEnergy = right.fKineticEnergy; - fVelocity = right.fVelocity; - fpTouchable = right.fpTouchable; - fpMaterial = right.fpMaterial; + if(this != &right) + { + fPosition = right.fPosition; + fGlobalTime = right.fGlobalTime; + fLocalTime = right.fLocalTime; + fProperTime = right.fProperTime; + fMomentumDirection = right.fMomentumDirection; + fKineticEnergy = right.fKineticEnergy; + fVelocity = right.fVelocity; + fpTouchable = right.fpTouchable; + fpMaterial = right.fpMaterial; fpMaterialCutsCouple = right.fpMaterialCutsCouple; fpSensitiveDetector = right.fpSensitiveDetector; - fSafety = right.fSafety; - fPolarization = right.fPolarization; - fStepStatus = right.fStepStatus; + fSafety = right.fSafety; + fPolarization = right.fPolarization; + fStepStatus = right.fStepStatus; fpProcessDefinedStep = right.fpProcessDefinedStep; - fMass = right.fMass; - fCharge = right.fCharge; - fMagneticMoment = right.fMagneticMoment; - fWeight = right.fWeight; + fMass = right.fMass; + fCharge = right.fCharge; + fMagneticMoment = right.fMagneticMoment; + fWeight = right.fWeight; } return *this; } diff --git a/source/track/src/G4Track.cc b/source/track/src/G4Track.cc index 076ee5ca77..6d5ffad2c2 100644 --- a/source/track/src/G4Track.cc +++ b/source/track/src/G4Track.cc @@ -23,20 +23,11 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4Track class implementation // -// -// -//--------------------------------------------------------------- -// -// G4Track.cc -// -//--------------------------------------------------------------- -// Add copy constructor Hisaya Feb. 07 01 -// Fix GetVelocity Hisaya Feb. 17 01 -// Modification for G4TouchableHandle 22 Oct. 2001 R.Chytracek// -// Fix GetVelocity (bug report #741) Horton-Smith Apr 14 2005 -// Remove massless check in GetVelocity 02 Apr. 09 H.Kurashige -// Use G4VelocityTable 17 AUg. 2011 H.Kurashige +// Author: Katsuya Amako, KEK - 1996 +// Revisions: Hisaya Kurashige, 1998-2011 +// -------------------------------------------------------------------- #include "G4Track.hh" #include "G4PhysicalConstants.hh" @@ -46,269 +37,225 @@ #include #include +// -------------------------------------------------------------------- G4Allocator*& aTrackAllocator() { - G4ThreadLocalStatic G4Allocator* _instance = nullptr; - return _instance; + G4ThreadLocalStatic G4Allocator* _instance = nullptr; + return _instance; } -/////////////////////////////////////////////////////////// +// -------------------------------------------------------------------- G4Track::G4Track(G4DynamicParticle* apValueDynamicParticle, G4double aValueTime, const G4ThreeVector& aValuePosition) -/////////////////////////////////////////////////////////// - : fCurrentStepNumber(0), fPosition(aValuePosition), - fGlobalTime(aValueTime), fLocalTime(0.), - fTrackLength(0.), - fParentID(0), fTrackID(0), - fVelocity(c_light), - fTrackStatus(fAlive), - fBelowThreshold(false), fGoodForTracking(false), - fStepLength(0.0), fWeight(1.0), - fpStep(nullptr), - fVtxKineticEnergy(0.0), - fpLVAtVertex(nullptr), fpCreatorProcess(nullptr), - fCreatorModelIndex(-1), - fpUserInformation(nullptr), - prev_mat(nullptr), groupvel(nullptr), - prev_velocity(0.0), prev_momentum(0.0), - is_OpticalPhoton(false), - useGivenVelocity(false), - fpAuxiliaryTrackInformationMap(nullptr) + : fPosition(aValuePosition) + , fGlobalTime(aValueTime) + , fVelocity(c_light) { - fpDynamicParticle = (apValueDynamicParticle) ? apValueDynamicParticle : new G4DynamicParticle(); + fpDynamicParticle = (apValueDynamicParticle) + ? apValueDynamicParticle : new G4DynamicParticle(); // check if the particle type is Optical Photon - is_OpticalPhoton = (fpDynamicParticle->GetDefinition()->GetPDGEncoding() == -22); + is_OpticalPhoton = + (fpDynamicParticle->GetDefinition()->GetPDGEncoding() == -22); } -////////////////// +// -------------------------------------------------------------------- G4Track::G4Track() -////////////////// - : fCurrentStepNumber(0), - fGlobalTime(0), fLocalTime(0.), - fTrackLength(0.), - fParentID(0), fTrackID(0), - fVelocity(c_light), - fpDynamicParticle(new G4DynamicParticle()), - fTrackStatus(fAlive), - fBelowThreshold(false), fGoodForTracking(false), - fStepLength(0.0), fWeight(1.0), - fpStep(nullptr), - fVtxKineticEnergy(0.0), - fpLVAtVertex(nullptr), fpCreatorProcess(nullptr), - fCreatorModelIndex(-1), - fpUserInformation(nullptr), - prev_mat(nullptr), groupvel(nullptr), - prev_velocity(0.0), prev_momentum(0.0), - is_OpticalPhoton(false), - useGivenVelocity(false), - fpAuxiliaryTrackInformationMap(nullptr) -{ -} + : fVelocity(c_light) + , fpDynamicParticle(new G4DynamicParticle()) +{} -////////////////// +// -------------------------------------------------------------------- G4Track::G4Track(const G4Track& right) -////////////////// - : fCurrentStepNumber(0), - fGlobalTime(0), fLocalTime(0.), - fTrackLength(0.), - fParentID(0), fTrackID(0), - fVelocity(c_light), - fpDynamicParticle(nullptr), - fTrackStatus(fAlive), - fBelowThreshold(false), fGoodForTracking(false), - fStepLength(0.0), fWeight(1.0), - fpStep(nullptr), - fVtxKineticEnergy(0.0), - fpLVAtVertex(nullptr), fpCreatorProcess(nullptr), - fCreatorModelIndex(-1), - fpUserInformation(nullptr), - prev_mat(nullptr), groupvel(nullptr), - prev_velocity(0.0), prev_momentum(0.0), - is_OpticalPhoton(false), - useGivenVelocity(false), - fpAuxiliaryTrackInformationMap(nullptr) + : fVelocity(c_light) { *this = right; } -/////////////////// +// -------------------------------------------------------------------- G4Track::~G4Track() -/////////////////// { - delete fpDynamicParticle; - delete fpUserInformation; - ClearAuxiliaryTrackInformation(); + delete fpDynamicParticle; + delete fpUserInformation; + ClearAuxiliaryTrackInformation(); } -////////////////// -G4Track & G4Track::operator=(const G4Track &right) -////////////////// +// -------------------------------------------------------------------- +G4Track& G4Track::operator=(const G4Track& right) { - if (this != &right) { - fPosition = right.fPosition; - fGlobalTime = right.fGlobalTime; - fLocalTime = right.fLocalTime; - fTrackLength = right.fTrackLength; - fWeight = right.fWeight; - fStepLength = right.fStepLength; + if(this != &right) + { + fPosition = right.fPosition; + fGlobalTime = right.fGlobalTime; + fLocalTime = right.fLocalTime; + fTrackLength = right.fTrackLength; + fWeight = right.fWeight; + fStepLength = right.fStepLength; - // Track ID (and Parent ID) is not copied and set to zero for new track - fTrackID = 0; - fParentID =0; + // Track ID (and Parent ID) is not copied and set to zero for new track + fTrackID = 0; + fParentID = 0; - // CurrentStepNumber is set to be 0 - fCurrentStepNumber = 0; + // CurrentStepNumber is set to be 0 + fCurrentStepNumber = 0; - // velocity information - fVelocity = right.fVelocity; + // velocity information + fVelocity = right.fVelocity; - // dynamic particle information - if ( fpDynamicParticle != nullptr ) delete fpDynamicParticle; - fpDynamicParticle = new G4DynamicParticle(*(right.fpDynamicParticle)); - - // track status and flags for tracking - fTrackStatus = right.fTrackStatus; - fBelowThreshold = right.fBelowThreshold; - fGoodForTracking = right.fGoodForTracking; - - // Step information (Step Length, Step Number, pointer to the Step,) - // are not copied - fpStep = nullptr; + // dynamic particle information + delete fpDynamicParticle; + fpDynamicParticle = new G4DynamicParticle(*(right.fpDynamicParticle)); - // vertex information - fVtxPosition = right.fVtxPosition; - fpLVAtVertex = right.fpLVAtVertex; - fVtxKineticEnergy = right.fVtxKineticEnergy; - fVtxMomentumDirection = right.fVtxMomentumDirection; + // track status and flags for tracking + fTrackStatus = right.fTrackStatus; + fBelowThreshold = right.fBelowThreshold; + fGoodForTracking = right.fGoodForTracking; - // CreatorProcess and UserInformation are not copied - fpCreatorProcess = nullptr; - if ( fpUserInformation != nullptr ) delete fpUserInformation; - fpUserInformation = nullptr; + // Step information (Step Length, Step Number, pointer to the Step,) + // are not copied + fpStep = nullptr; - prev_mat = right.prev_mat; - groupvel = right.groupvel; - prev_velocity = right.prev_velocity; - prev_momentum = right.prev_momentum; + // vertex information + fVtxPosition = right.fVtxPosition; + fpLVAtVertex = right.fpLVAtVertex; + fVtxKineticEnergy = right.fVtxKineticEnergy; + fVtxMomentumDirection = right.fVtxMomentumDirection; - is_OpticalPhoton = right.is_OpticalPhoton; - useGivenVelocity = right.useGivenVelocity; + // CreatorProcess and UserInformation are not copied + fpCreatorProcess = nullptr; + delete fpUserInformation; + fpUserInformation = nullptr; - ClearAuxiliaryTrackInformation(); + prev_mat = right.prev_mat; + groupvel = right.groupvel; + prev_velocity = right.prev_velocity; + prev_momentum = right.prev_momentum; + is_OpticalPhoton = right.is_OpticalPhoton; + useGivenVelocity = right.useGivenVelocity; + + ClearAuxiliaryTrackInformation(); } return *this; } -/////////////////// +// -------------------------------------------------------------------- void G4Track::CopyTrackInfo(const G4Track& right) -////////////////// { *this = right; } -/////////////////// +// -------------------------------------------------------------------- G4double G4Track::CalculateVelocityForOpticalPhoton() const -/////////////////// -{ - G4double velocity = c_light ; - - G4Material* mat = nullptr; +{ + G4double velocity = c_light; + + G4Material* mat = nullptr; G4bool update_groupvel = false; - if ( fpStep !=0 ){ - mat= this->GetMaterial(); // Fix for repeated volumes - }else{ - if (fpTouchable!=0){ - mat=fpTouchable->GetVolume()->GetLogicalVolume()->GetMaterial(); + if(fpStep != nullptr) + { + mat = this->GetMaterial(); // Fix for repeated volumes + } + else + { + if(fpTouchable != 0) + { + mat = fpTouchable->GetVolume()->GetLogicalVolume()->GetMaterial(); } } // check if previous step is in the same volume - // and get new GROUPVELOCITY table if necessary - if ((mat != nullptr) && ((mat != prev_mat)||(groupvel==nullptr))) { + // and get new GROUPVELOCITY table if necessary + if((mat != nullptr) && ((mat != prev_mat) || (groupvel == nullptr))) + { groupvel = nullptr; if(mat->GetMaterialPropertiesTable() != nullptr) groupvel = mat->GetMaterialPropertiesTable()->GetProperty("GROUPVEL"); update_groupvel = true; } prev_mat = mat; - - if (groupvel != nullptr ) { + + if(groupvel != nullptr) + { // light velocity = c/(rindex+d(rindex)/d(log(E_phot))) // values stored in GROUPVEL material properties vector - velocity = prev_velocity; - + velocity = prev_velocity; + // check if momentum is same as in the previous step - // and calculate group velocity if necessary + // and calculate group velocity if necessary G4double current_momentum = fpDynamicParticle->GetTotalMomentum(); - if( update_groupvel || (current_momentum != prev_momentum) ) { - velocity = - groupvel->Value(current_momentum); + if(update_groupvel || (current_momentum != prev_momentum)) + { + velocity = groupvel->Value(current_momentum); prev_velocity = velocity; prev_momentum = current_momentum; } - } - - return velocity ; + } + + return velocity; } -/////////////////// -void G4Track::SetAuxiliaryTrackInformation(G4int idx, G4VAuxiliaryTrackInformation* info) const -/////////////////// +// -------------------------------------------------------------------- +void G4Track::SetAuxiliaryTrackInformation(G4int idx, + G4VAuxiliaryTrackInformation* info) const { - if(!fpAuxiliaryTrackInformationMap) - { fpAuxiliaryTrackInformationMap = new std::map; } - if(idx<0 || idx>=G4PhysicsModelCatalog::Entries()) + if(fpAuxiliaryTrackInformationMap == nullptr) + { + fpAuxiliaryTrackInformationMap = + new std::map; + } + if(idx < 0 || idx >= G4PhysicsModelCatalog::Entries()) { G4ExceptionDescription ED; ED << "Process/model index <" << idx << "> is invalid."; - G4Exception("G4VAuxiliaryTrackInformation::G4VAuxiliaryTrackInformation()","TRACK0982", - FatalException, ED); + G4Exception("G4VAuxiliaryTrackInformation::G4VAuxiliaryTrackInformation()", + "TRACK0982", FatalException, ED); } (*fpAuxiliaryTrackInformationMap)[idx] = info; } -/////////////////// -G4VAuxiliaryTrackInformation* G4Track::GetAuxiliaryTrackInformation(G4int idx) const -/////////////////// +// -------------------------------------------------------------------- +G4VAuxiliaryTrackInformation* +G4Track::GetAuxiliaryTrackInformation(G4int idx) const { - if(!fpAuxiliaryTrackInformationMap) return nullptr; - std::map::iterator itr - = fpAuxiliaryTrackInformationMap->find(idx); - if(itr==fpAuxiliaryTrackInformationMap->end()) return nullptr; - else return (*itr).second; + if(fpAuxiliaryTrackInformationMap == nullptr) + return nullptr; + auto itr = fpAuxiliaryTrackInformationMap->find(idx); + if(itr == fpAuxiliaryTrackInformationMap->cend()) + return nullptr; + else + return (*itr).second; } -/////////////////// +// -------------------------------------------------------------------- void G4Track::RemoveAuxiliaryTrackInformation(G4int idx) -/////////////////// { - if( fpAuxiliaryTrackInformationMap != nullptr - && idx>=0 && idx= 0 && idx < G4PhysicsModelCatalog::Entries()) + { fpAuxiliaryTrackInformationMap->erase(idx); } } -/////////////////// +// -------------------------------------------------------------------- void G4Track::RemoveAuxiliaryTrackInformation(G4String& name) -/////////////////// { - if(fpAuxiliaryTrackInformationMap != nullptr) { + if(fpAuxiliaryTrackInformationMap != nullptr) + { G4int idx = G4PhysicsModelCatalog::GetIndex(name); RemoveAuxiliaryTrackInformation(idx); } } -/////////////////// +// -------------------------------------------------------------------- void G4Track::ClearAuxiliaryTrackInformation() -/////////////////// { - if( fpAuxiliaryTrackInformationMap == nullptr) return; - for(std::map::iterator itr=fpAuxiliaryTrackInformationMap->begin(); - itr!=fpAuxiliaryTrackInformationMap->end(); itr++) - { delete (*itr).second; } + if(fpAuxiliaryTrackInformationMap == nullptr) + return; + for(auto itr = fpAuxiliaryTrackInformationMap->cbegin(); + itr != fpAuxiliaryTrackInformationMap->cend(); ++itr) + { + delete(*itr).second; + } delete fpAuxiliaryTrackInformationMap; fpAuxiliaryTrackInformationMap = nullptr; } - - diff --git a/source/track/src/G4VAuxiliaryTrackInformation.cc b/source/track/src/G4VAuxiliaryTrackInformation.cc index 71e8ca83ad..0b62077981 100644 --- a/source/track/src/G4VAuxiliaryTrackInformation.cc +++ b/source/track/src/G4VAuxiliaryTrackInformation.cc @@ -23,19 +23,20 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4VAuxiliaryTrackInformation class implementation // -// -// -// -------------------------------------------------------------- +// Author: Makoto Asai, 3 June 2005 +// -------------------------------------------------------------------- #include "G4VAuxiliaryTrackInformation.hh" -G4VAuxiliaryTrackInformation::G4VAuxiliaryTrackInformation() -{;} +G4VAuxiliaryTrackInformation::G4VAuxiliaryTrackInformation() { ; } -G4VAuxiliaryTrackInformation::~G4VAuxiliaryTrackInformation() -{;} +G4VAuxiliaryTrackInformation::~G4VAuxiliaryTrackInformation() { ; } void G4VAuxiliaryTrackInformation::Print() const -{ G4cout<<"G4VAuxiliaryTrackInformation base class -- no concrete information available"<0) { -#ifdef G4VERBOSE - if (verboseLevel>0) { - G4cout << "G4VParticleChange::~G4VParticleChange() Warning "; - G4cout << "theListOfSecondaries is not empty "; - } -#endif - for (G4int index= 0; index 0) + { + for(G4int index = 0; index < theNumberOfSecondaries; ++index) + { + delete(*theListOfSecondaries)[index]; } } - delete theListOfSecondaries; + delete theListOfSecondaries; } -G4VParticleChange::G4VParticleChange(const G4VParticleChange &right) - :theListOfSecondaries(0), - theNumberOfSecondaries(0), - theSizeOftheListOfSecondaries(G4TrackFastVectorSize), - theStatusChange( right.theStatusChange), - theSteppingControlFlag(right.theSteppingControlFlag), - theLocalEnergyDeposit(right.theLocalEnergyDeposit), - theNonIonizingEnergyDeposit(right.theNonIonizingEnergyDeposit), - theTrueStepLength(right.theTrueStepLength), - theFirstStepInVolume( right.theFirstStepInVolume), - theLastStepInVolume(right.theLastStepInVolume), - theParentWeight(right.theParentWeight), - isParentWeightProposed(false), - fSetSecondaryWeightByProcess(right.fSetSecondaryWeightByProcess), - theParentGlobalTime(0.0), - verboseLevel(right.verboseLevel), - debugFlag(right.debugFlag) +// -------------------------------------------------------------------- +G4VParticleChange::G4VParticleChange(const G4VParticleChange& right) + : theStatusChange(right.theStatusChange) + , theSteppingControlFlag(right.theSteppingControlFlag) + , theLocalEnergyDeposit(right.theLocalEnergyDeposit) + , theNonIonizingEnergyDeposit(right.theNonIonizingEnergyDeposit) + , theTrueStepLength(right.theTrueStepLength) + , theParentWeight(right.theParentWeight) + , theSizeOftheListOfSecondaries(G4TrackFastVectorSize) + , verboseLevel(right.verboseLevel) + , theFirstStepInVolume(right.theFirstStepInVolume) + , theLastStepInVolume(right.theLastStepInVolume) + , fSetSecondaryWeightByProcess(right.fSetSecondaryWeightByProcess) + , debugFlag(right.debugFlag) { - theListOfSecondaries = new G4TrackFastVector(); + theListOfSecondaries = new G4TrackFastVector(); theNumberOfSecondaries = right.theNumberOfSecondaries; - for (G4int index = 0; indexSetElement(index, newTrack); + for(G4int index = 0; index < theNumberOfSecondaries; ++index) + { + G4Track* newTrack = new G4Track(*((*right.theListOfSecondaries)[index])); + theListOfSecondaries->SetElement(index, newTrack); } } - -G4VParticleChange & G4VParticleChange::operator=(const G4VParticleChange &right) +// -------------------------------------------------------------------- +G4VParticleChange& G4VParticleChange::operator=(const G4VParticleChange& right) { - if (this != &right){ - if (theNumberOfSecondaries>0) { -#ifdef G4VERBOSE - if (verboseLevel>0) { - G4cout << "G4VParticleChange: assignment operator Warning "; - G4cout << "theListOfSecondaries is not empty "; - } -#endif - for (G4int index = 0; index 0) + { + for(G4int index = 0; index < theNumberOfSecondaries; ++index) + { + if((*theListOfSecondaries)[index]) + delete((*theListOfSecondaries)[index]); } } - delete theListOfSecondaries; - - theListOfSecondaries = new G4TrackFastVector(); - theNumberOfSecondaries = right.theNumberOfSecondaries; - for (G4int index = 0; indexSetElement(index, newTrack); - } - theStatusChange = right.theStatusChange; - theSteppingControlFlag = right.theSteppingControlFlag; - theLocalEnergyDeposit = right.theLocalEnergyDeposit; - theNonIonizingEnergyDeposit = right.theNonIonizingEnergyDeposit; - theTrueStepLength = right.theTrueStepLength; - - theFirstStepInVolume = right.theFirstStepInVolume; - theLastStepInVolume = right.theLastStepInVolume; + delete theListOfSecondaries; - theParentWeight = right.theParentWeight; - isParentWeightProposed = right.isParentWeightProposed; + theListOfSecondaries = new G4TrackFastVector(); + theNumberOfSecondaries = right.theNumberOfSecondaries; + for(G4int index = 0; index < theNumberOfSecondaries; ++index) + { + G4Track* newTrack = new G4Track(*((*right.theListOfSecondaries)[index])); + theListOfSecondaries->SetElement(index, newTrack); + } + theStatusChange = right.theStatusChange; + theSteppingControlFlag = right.theSteppingControlFlag; + theLocalEnergyDeposit = right.theLocalEnergyDeposit; + theNonIonizingEnergyDeposit = right.theNonIonizingEnergyDeposit; + theTrueStepLength = right.theTrueStepLength; + + theFirstStepInVolume = right.theFirstStepInVolume; + theLastStepInVolume = right.theLastStepInVolume; + + theParentWeight = right.theParentWeight; + isParentWeightProposed = right.isParentWeightProposed; fSetSecondaryWeightByProcess = right.fSetSecondaryWeightByProcess; theParentGlobalTime = right.theParentGlobalTime; verboseLevel = right.verboseLevel; - debugFlag = right.debugFlag; - + debugFlag = right.debugFlag; } return *this; } -G4bool G4VParticleChange::operator==(const G4VParticleChange &right) const +// -------------------------------------------------------------------- +G4bool G4VParticleChange::operator==(const G4VParticleChange& right) const { - return (this == (G4VParticleChange *) &right); + return (this == (G4VParticleChange*) &right); } - -G4bool G4VParticleChange::operator!=(const G4VParticleChange &right) const +// -------------------------------------------------------------------- +G4bool G4VParticleChange::operator!=(const G4VParticleChange& right) const { - return (this != (G4VParticleChange *) &right); + return (this != (G4VParticleChange*) &right); } -void G4VParticleChange::AddSecondary(G4Track *aTrack) +// -------------------------------------------------------------------- +void G4VParticleChange::AddSecondary(G4Track* aTrack) { - if (debugFlag) CheckSecondary(*aTrack); + if(debugFlag) + CheckSecondary(*aTrack); // add a secondary after size check - if (theSizeOftheListOfSecondaries > theNumberOfSecondaries) { - // Set weight of secondary tracks - if (!fSetSecondaryWeightByProcess) aTrack->SetWeight(theParentWeight); + if(theSizeOftheListOfSecondaries > theNumberOfSecondaries) + { + // set weight of secondary tracks + if(!fSetSecondaryWeightByProcess) + aTrack->SetWeight(theParentWeight); theListOfSecondaries->SetElement(theNumberOfSecondaries, aTrack); - theNumberOfSecondaries++; - } else { + ++theNumberOfSecondaries; + } + else + { delete aTrack; -#ifdef G4VERBOSE - if (verboseLevel>0) { - G4cout << "G4VParticleChange::AddSecondary() Warning "; - G4cout << "theListOfSecondaries is full !! " << G4endl; - G4cout << " The track is deleted " << G4endl; - } -#endif - G4Exception("G4VParticleChange::AddSecondary", - "TRACK101", JustWarning, - "Secondary Bug is full. The track is deleted"); + G4Exception("G4VParticleChange::AddSecondary()", "TRACK101", JustWarning, + "Secondary buffer is full. The track is deleted!"); } } - - -// Virtual methods for updating G4Step -// - +// -------------------------------------------------------------------- G4Step* G4VParticleChange::UpdateStepInfo(G4Step* pStep) { // Update the G4Step specific attributes - pStep->SetStepLength( theTrueStepLength ); - pStep->AddTotalEnergyDeposit( theLocalEnergyDeposit ); - pStep->AddNonIonizingEnergyDeposit( theNonIonizingEnergyDeposit ); - pStep->SetControlFlag( theSteppingControlFlag ); + pStep->SetStepLength(theTrueStepLength); + pStep->AddTotalEnergyDeposit(theLocalEnergyDeposit); + pStep->AddNonIonizingEnergyDeposit(theNonIonizingEnergyDeposit); + pStep->SetControlFlag(theSteppingControlFlag); - if (theFirstStepInVolume) {pStep->SetFirstStepFlag();} - else {pStep->ClearFirstStepFlag();} - if (theLastStepInVolume) {pStep->SetLastStepFlag();} - else {pStep->ClearLastStepFlag();} + if(theFirstStepInVolume) + { + pStep->SetFirstStepFlag(); + } + else + { + pStep->ClearFirstStepFlag(); + } + if(theLastStepInVolume) + { + pStep->SetLastStepFlag(); + } + else + { + pStep->ClearLastStepFlag(); + } return pStep; } - +// -------------------------------------------------------------------- G4Step* G4VParticleChange::UpdateStepForAtRest(G4Step* Step) -{ - if (isParentWeightProposed ){ - Step->GetPostStepPoint()->SetWeight( theParentWeight ); +{ + if(isParentWeightProposed) + { + Step->GetPostStepPoint()->SetWeight(theParentWeight); } return UpdateStepInfo(Step); } - +// -------------------------------------------------------------------- G4Step* G4VParticleChange::UpdateStepForAlongStep(G4Step* Step) { - if (isParentWeightProposed ){ + if(isParentWeightProposed) + { G4double initialWeight = Step->GetPreStepPoint()->GetWeight(); G4double currentWeight = Step->GetPostStepPoint()->GetWeight(); - G4double finalWeight = (theParentWeight/initialWeight)*currentWeight; - Step->GetPostStepPoint()->SetWeight( finalWeight ); - } + G4double finalWeight = (theParentWeight / initialWeight) * currentWeight; + Step->GetPostStepPoint()->SetWeight(finalWeight); + } return UpdateStepInfo(Step); } +// -------------------------------------------------------------------- G4Step* G4VParticleChange::UpdateStepForPostStep(G4Step* Step) { - if (isParentWeightProposed ){ - Step->GetPostStepPoint()->SetWeight( theParentWeight ); + if(isParentWeightProposed) + { + Step->GetPostStepPoint()->SetWeight(theParentWeight); } return UpdateStepInfo(Step); } - -//---------------------------------------------------------------- -// methods for printing messages -// - +// -------------------------------------------------------------------- void G4VParticleChange::DumpInfo() const { - -// Show header + // Show header G4int olprc = G4cout.precision(3); - G4cout << " -----------------------------------------------" - << G4endl; + G4cout << " -----------------------------------------------" << G4endl; G4cout << " G4ParticleChange Information " << std::setw(20) << G4endl; - G4cout << " -----------------------------------------------" - << G4endl; + G4cout << " -----------------------------------------------" << G4endl; - G4cout << " # of 2ndaries : " - << std::setw(20) << theNumberOfSecondaries - << G4endl; + G4cout << " # of 2ndaries : " << std::setw(20) + << theNumberOfSecondaries << G4endl; - if (theNumberOfSecondaries >0) { - G4cout << " Pointer to 2ndaries : " - << std::setw(20) << GetSecondary(0) - << G4endl; - G4cout << " (Showed only 1st one)" - << G4endl; + if(theNumberOfSecondaries > 0) + { + G4cout << " Pointer to 2ndaries : " << std::setw(20) + << GetSecondary(0) << G4endl; + G4cout << " (Showed only 1st one)" << G4endl; } - G4cout << " -----------------------------------------------" - << G4endl; + G4cout << " -----------------------------------------------" << G4endl; - G4cout << " Energy Deposit (MeV): " - << std::setw(20) << theLocalEnergyDeposit/MeV - << G4endl; + G4cout << " Energy Deposit (MeV): " << std::setw(20) + << theLocalEnergyDeposit / MeV << G4endl; - G4cout << " Non-ionizing Energy Deposit (MeV): " - << std::setw(20) << theNonIonizingEnergyDeposit/MeV - << G4endl; + G4cout << " Non-ionizing Energy Deposit (MeV): " << std::setw(20) + << theNonIonizingEnergyDeposit / MeV << G4endl; - G4cout << " Track Status : " - << std::setw(20); - if( theStatusChange == fAlive ){ - G4cout << " Alive"; - } else if( theStatusChange == fStopButAlive ){ - G4cout << " StopButAlive"; - } else if( theStatusChange == fStopAndKill ){ - G4cout << " StopAndKill"; - } else if( theStatusChange == fKillTrackAndSecondaries ){ - G4cout << " KillTrackAndSecondaries"; - } else if( theStatusChange == fSuspend ){ - G4cout << " Suspend"; - } else if( theStatusChange == fPostponeToNextEvent ){ - G4cout << " PostponeToNextEvent"; - } - G4cout << G4endl; - G4cout << " True Path Length (mm) : " - << std::setw(20) << theTrueStepLength/mm - << G4endl; - G4cout << " Stepping Control : " - << std::setw(20) << theSteppingControlFlag - << G4endl; - if (theFirstStepInVolume) { - G4cout << " First Step In the voulme : " << G4endl; + G4cout << " Track Status : " << std::setw(20); + if(theStatusChange == fAlive) + { + G4cout << " Alive"; } - if (theLastStepInVolume) { - G4cout << " Last Step In the voulme : " << G4endl; + else if(theStatusChange == fStopButAlive) + { + G4cout << " StopButAlive"; + } + else if(theStatusChange == fStopAndKill) + { + G4cout << " StopAndKill"; + } + else if(theStatusChange == fKillTrackAndSecondaries) + { + G4cout << " KillTrackAndSecondaries"; + } + else if(theStatusChange == fSuspend) + { + G4cout << " Suspend"; + } + else if(theStatusChange == fPostponeToNextEvent) + { + G4cout << " PostponeToNextEvent"; + } + G4cout << G4endl; + G4cout << " True Path Length (mm) : " << std::setw(20) + << theTrueStepLength / mm << G4endl; + G4cout << " Stepping Control : " << std::setw(20) + << theSteppingControlFlag << G4endl; + if(theFirstStepInVolume) + { + G4cout << " First Step In the voulme : " << G4endl; + } + if(theLastStepInVolume) + { + G4cout << " Last Step In the voulme : " << G4endl; } G4cout.precision(olprc); } +// -------------------------------------------------------------------- G4bool G4VParticleChange::CheckIt(const G4Track& #ifdef G4VERBOSE - aTrack + aTrack #endif ) { - - G4bool exitWithError = false; - G4double accuracy; + G4bool exitWithError = false; + G4double accuracy; static G4ThreadLocal G4int nError = 0; #ifdef G4VERBOSE - const G4int maxError = 30; + const G4int maxError = 30; #endif // Energy deposit should not be negative G4bool itsOKforEnergy = true; - accuracy = -1.0*theLocalEnergyDeposit/MeV; - if (accuracy > accuracyForWarning) { + accuracy = -1.0 * theLocalEnergyDeposit / MeV; + if(accuracy > accuracyForWarning) + { itsOKforEnergy = false; nError += 1; - exitWithError = (accuracy > accuracyForException); + exitWithError = (accuracy > accuracyForException); #ifdef G4VERBOSE - if (nError < maxError) { + if(nError < maxError) + { G4cout << " G4VParticleChange::CheckIt : "; - G4cout << "the energy deposit is negative !!" - << " Difference: " << accuracy << "[MeV] " <GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - < accuracyForWarning) { + accuracy = -1.0 * theTrueStepLength / mm; + if(accuracy > accuracyForWarning) + { itsOKforStepLength = false; nError += 1; - exitWithError = (accuracy > accuracyForException); + exitWithError = (accuracy > accuracyForException); #ifdef G4VERBOSE - if (nError < maxError) { + if(nError < maxError) + { G4cout << " G4VParticleChange::CheckIt : "; G4cout << "the true step length is negative !!" - << " Difference: " << accuracy << "[MeV] " <GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - <0.){ - accuracy = std::fabs((aTrack.GetMomentumDirection()).mag2()-1.0); - if (accuracy > accuracyForWarning) { + G4bool itsOKforMomentum = true; + if(aTrack.GetKineticEnergy() > 0.) + { + accuracy = std::fabs((aTrack.GetMomentumDirection()).mag2() - 1.0); + if(accuracy > accuracyForWarning) + { itsOKforMomentum = false; nError += 1; exitWithError = exitWithError || (accuracy > accuracyForException); #ifdef G4VERBOSE - if (nError < maxError) { - G4cout << " G4VParticleChange::CheckSecondary : "; - G4cout << "the Momentum direction is not unit vector !! " - << " Difference: " << accuracy << G4endl; - G4cout << aTrack.GetDefinition()->GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - <GetParticleName() + << " E=" << aTrack.GetKineticEnergy() / MeV + << " pos=" << aTrack.GetPosition().x() / m << ", " + << aTrack.GetPosition().y() / m << ", " + << aTrack.GetPosition().z() / m << G4endl; } #endif } } - + // Kinetic Energy should not be negative G4bool itsOKforEnergy = true; - accuracy = -1.0*(aTrack.GetKineticEnergy())/MeV; - if (accuracy > accuracyForWarning) { + accuracy = -1.0 * (aTrack.GetKineticEnergy()) / MeV; + if(accuracy > accuracyForWarning) + { itsOKforEnergy = false; nError += 1; - exitWithError = exitWithError || (accuracy > accuracyForException); + exitWithError = exitWithError || (accuracy > accuracyForException); #ifdef G4VERBOSE - if (nError < maxError) { + if(nError < maxError) + { G4cout << " G4VParticleChange::CheckSecondary : "; - G4cout << "the kinetic energy is negative !!" - << " Difference: " << accuracy << "[MeV] " <GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - < accuracyForWarning){ + accuracy = (theParentGlobalTime - aTrack.GetGlobalTime()) / ns; + if(accuracy > accuracyForWarning) + { itsOKforTiming = false; nError += 1; exitWithError = (accuracy > accuracyForException); #ifdef G4VERBOSE - if (nError < maxError) { + if(nError < maxError) + { G4cout << " G4VParticleChange::CheckSecondary : "; - G4cout << "the global time of secondary goes back comapared to the parent !!" - << " Difference: " << accuracy << "[ns] " <GetParticleName() - << " E=" << aTrack.GetKineticEnergy()/MeV - << " pos=" << aTrack.GetPosition().x()/m - << ", " << aTrack.GetPosition().y()/m - << ", " << aTrack.GetPosition().z()/m - << " time=" << aTrack.GetGlobalTime()/ns - << " parent time=" << theParentGlobalTime/ns - <DumpInfo(); - - } + if(!itsOK) + { + this->DumpInfo(); + } return itsOK; } - +// -------------------------------------------------------------------- G4double G4VParticleChange::GetAccuracyForWarning() const { return accuracyForWarning; } +// -------------------------------------------------------------------- G4double G4VParticleChange::GetAccuracyForException() const { return accuracyForException; } - -/////////////////////////////////////////////////////////// -//Obsolete methods for parent weight -///////////////////// -void G4VParticleChange::SetParentWeightByProcess(G4bool ) -{ -} - - -G4bool G4VParticleChange::IsParentWeightSetByProcess() const -{ - return true; -} +// -------------------------------------------------------------------- +// Obsolete methods for parent weight +// +void G4VParticleChange::SetParentWeightByProcess(G4bool) {} +G4bool G4VParticleChange::IsParentWeightSetByProcess() const { return true; } diff --git a/source/track/src/G4VUserTrackInformation.cc b/source/track/src/G4VUserTrackInformation.cc index 985b2273c9..03c94e6318 100644 --- a/source/track/src/G4VUserTrackInformation.cc +++ b/source/track/src/G4VUserTrackInformation.cc @@ -23,49 +23,60 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4VUserTrackInformation class implementation // -// -// -// -------------------------------------------------------------- +// Author: Makoto Asai, 2 June 2000 +// -------------------------------------------------------------------- #include "G4VUserTrackInformation.hh" +// -------------------------------------------------------------------- G4VUserTrackInformation::G4VUserTrackInformation() - : pType(0) -{;} +{} +// -------------------------------------------------------------------- G4VUserTrackInformation::G4VUserTrackInformation(const G4String& infoType) -{ - pType = new G4String(infoType) ; +{ + pType = new G4String(infoType); } +// -------------------------------------------------------------------- G4VUserTrackInformation::~G4VUserTrackInformation() { - if (pType!=0) delete pType; + if(pType != nullptr) + delete pType; } -G4VUserTrackInformation::G4VUserTrackInformation(const G4VUserTrackInformation& right) - :pType(0) +// -------------------------------------------------------------------- +G4VUserTrackInformation:: +G4VUserTrackInformation(const G4VUserTrackInformation& right) { - if (right.pType!=0) pType = new G4String(*(right.pType)); + if(right.pType != nullptr) + pType = new G4String(*(right.pType)); } - -G4VUserTrackInformation& G4VUserTrackInformation::operator=(const G4VUserTrackInformation& right) +// -------------------------------------------------------------------- +G4VUserTrackInformation& +G4VUserTrackInformation::operator=(const G4VUserTrackInformation& right) { - if (this != &right) { - if (pType !=0) delete pType; - if (right.pType) pType = new G4String(*(right.pType)); - else pType=0; + if(this != &right) + { + if(pType != nullptr) + delete pType; + if(right.pType) + pType = new G4String(*(right.pType)); + else + pType = nullptr; } return *this; } - +// -------------------------------------------------------------------- const G4String& G4VUserTrackInformation::GetType() const { - static const G4String NOTYPE="NONE"; - if(pType!=0) return *pType; - else return NOTYPE; + static const G4String NOTYPE = "NONE"; + if(pType != nullptr) + return *pType; + else + return NOTYPE; } - diff --git a/source/track/src/G4VelocityTable.cc b/source/track/src/G4VelocityTable.cc index a599e0b587..f5dd3c2e9d 100644 --- a/source/track/src/G4VelocityTable.cc +++ b/source/track/src/G4VelocityTable.cc @@ -23,20 +23,10 @@ // * acceptance of all terms of the Geant4 Software license. * // ******************************************************************** // +// G4VelocityTable class implementation // -// -// -//--------------------------------------------------------------- -// -// G4VelocityTable.cc -// -// class description: -// This class keeps a table of velocity as a function of -// the ratio kinetic erngy and mass -// -//--------------------------------------------------------------- -// created 17.Aug. 2011 H.Kurashige -// +// Author: Hisaya Kurashige, 17 August 2011 +// -------------------------------------------------------------------- #include "G4VelocityTable.hh" #include "G4PhysicalConstants.hh" @@ -45,40 +35,32 @@ #include "G4Log.hh" #include "G4Exp.hh" -#include "G4ios.hh" +#include "G4ios.hh" G4ThreadLocal G4VelocityTable* G4VelocityTable::theInstance = nullptr; -//////////////// +// -------------------------------------------------------------------- G4VelocityTable::G4VelocityTable() -//////////////// - : edgeMin(0.), edgeMax(0.), numberOfNodes(0), - dBin(0.), baseBin(0.), - lastEnergy(-DBL_MAX), lastValue(0.), lastBin(0), - maxT( 1000.0 ), minT( 0.0001 ), NbinT( 500 ) { PrepareVelocityTable(); -} +} -///////////////// +// -------------------------------------------------------------------- G4VelocityTable::~G4VelocityTable() -///////////////// { dataVector.clear(); binVector.clear(); } - -/////////////////// +// -------------------------------------------------------------------- void G4VelocityTable::PrepareVelocityTable() -/////////////////// { - //const G4double g4log10 = std::log(10.); - + // const G4double g4log10 = std::log(10.); + dataVector.clear(); binVector.clear(); - dBin = G4Log(maxT/minT)/NbinT; - baseBin = G4Log(minT)/dBin; + dBin = G4Log(maxT / minT) / NbinT; + baseBin = G4Log(minT) / dBin; numberOfNodes = NbinT + 1; dataVector.reserve(numberOfNodes); @@ -87,130 +69,140 @@ void G4VelocityTable::PrepareVelocityTable() binVector.push_back(minT); dataVector.push_back(0.0); - for (size_t i=1; i= binVector[lastBin]) { - lastEnergy = theEnergy; - lastValue = Interpolation(); - - } else if( theEnergy <= edgeMin ) { - lastBin = 0; - lastEnergy = edgeMin; - lastValue = dataVector[0]; - - } else if( theEnergy >= edgeMax ){ - lastBin = numberOfNodes-1; - lastEnergy = edgeMax; - lastValue = dataVector[lastBin]; - - } else { - lastBin = (size_t)( G4Log(theEnergy)/dBin - baseBin ); - if(lastBin == numberOfNodes) { --lastBin; } // VI: fix possible precision lost - lastEnergy = theEnergy; - lastValue = Interpolation(); - + if(theEnergy == lastEnergy) + { } - return lastValue; + else if(theEnergy < lastEnergy && theEnergy >= binVector[lastBin]) + { + lastEnergy = theEnergy; + lastValue = Interpolation(); + } + else if(theEnergy <= edgeMin) + { + lastBin = 0; + lastEnergy = edgeMin; + lastValue = dataVector[0]; + } + else if(theEnergy >= edgeMax) + { + lastBin = numberOfNodes - 1; + lastEnergy = edgeMax; + lastValue = dataVector[lastBin]; + } + else + { + lastBin = (std::size_t)(G4Log(theEnergy) / dBin - baseBin); + if(lastBin == numberOfNodes) + { + --lastBin; + } // VI: fix possible precision lost + lastEnergy = theEnergy; + lastValue = Interpolation(); + } + return lastValue; } -/////////////////////////////////////////////////////// -// Static methods - -/////////////////// +// -------------------------------------------------------------------- G4VelocityTable* G4VelocityTable::GetVelocityTable() -/////////////////// { - if (!theInstance) { + if(theInstance == nullptr) + { static G4ThreadLocalSingleton inst; theInstance = inst.Instance(); } return theInstance; } -/////////////////// -void G4VelocityTable::SetVelocityTableProperties(G4double t_max, G4double t_min, G4int nbin) -/////////////////// +// -------------------------------------------------------------------- +void G4VelocityTable:: +SetVelocityTableProperties(G4double t_max, G4double t_min, G4int nbin) { - if (theInstance == nullptr) { GetVelocityTable(); } + if(theInstance == nullptr) + { + GetVelocityTable(); + } - G4StateManager* stateManager = G4StateManager::GetStateManager(); + G4StateManager* stateManager = G4StateManager::GetStateManager(); G4ApplicationState currentState = stateManager->GetCurrentState(); - + // check if state is outside event loop - if(!(currentState==G4State_Idle||currentState==G4State_PreInit)){ - G4Exception("G4VelocityTable::SetVelocityTableProperties", - "Track101", JustWarning, + if(!(currentState == G4State_Idle || currentState == G4State_PreInit)) + { + G4Exception("G4VelocityTable::SetVelocityTableProperties()", "Track101", + JustWarning, "Can modify only in PreInit or Idle state : Method ignored."); return; } - if (nbin > 100 ) theInstance->NbinT = nbin; - if ((t_min < t_max)&&(t_min>0.)) { - theInstance->minT = t_min; + if(nbin > 100) + theInstance->NbinT = nbin; + if((t_min < t_max) && (t_min > 0.)) + { + theInstance->minT = t_min; theInstance->maxT = t_max; - } + } theInstance->PrepareVelocityTable(); } -/////////////////// +// -------------------------------------------------------------------- G4double G4VelocityTable::GetMaxTOfVelocityTable() -/////////////////// { - return GetVelocityTable()->maxT; + return GetVelocityTable()->maxT; } -/////////////////// -G4double G4VelocityTable::GetMinTOfVelocityTable() -/////////////////// +// -------------------------------------------------------------------- +G4double G4VelocityTable::GetMinTOfVelocityTable() { - return GetVelocityTable()->minT; + return GetVelocityTable()->minT; } -/////////////////// -G4int G4VelocityTable::GetNbinOfVelocityTable() -/////////////////// +// -------------------------------------------------------------------- +G4int G4VelocityTable::GetNbinOfVelocityTable() { - return GetVelocityTable()->NbinT; + return GetVelocityTable()->NbinT; } diff --git a/source/tracking/History b/source/tracking/History index daf83aa7ed..23723aaa5f 100644 --- a/source/tracking/History +++ b/source/tracking/History @@ -16,6 +16,13 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +Nov 12, 2020 Jonathan Madsen (tracking-V10-06-04) +- Added G4Profiler support. + +Sep 9, 2020, G.Cosmo (tracking-V10-06-03) +- Fixed minor Coverity defect in G4SteppingManager::ApplyProductionCut() + for use of potentially negative argument. + Jun 4, 2020, G.Cosmo (tracking-V10-06-02) - Fixed minor Coverity defect for uninitialised data in G4SteppingManager. @@ -60,7 +67,7 @@ Dec 22, 2016 L.Desorgher (tracking-V10-03-00) Nov 17, 2016 L.Desorgher (tracking-V10-02-05) - G4AdjointSteppingAction remove a test on weight with FPE issue. - + Oct 27, 2016 L.Desorgher (tracking-V10-02-04) - G4AdjointSteppingAction remove a print info on the weight, when stopping reverse tracking. for the implementation of the splitting of the reverse MC tracking. @@ -73,7 +80,7 @@ for the implementation of the splitting of the reverse MC tracking. - G4VTrajectory.cc: Added std::endl at end of ShowTrajectory. 18th Jan 2016 A. Dotti (tracking-V10-02-01) -- New G4Multi{Stepping,Tracking}Action to allow multiple user-actions in +- New G4Multi{Stepping,Tracking}Action to allow multiple user-actions in the same job 27th January 2016 M. Asai (tracking-V10-02-00) @@ -101,20 +108,20 @@ for the implementation of the splitting of the reverse MC tracking. - G4TrackingManager : Add handling for StoreTrajectory new case 4 21st November2013 M.Asai (tracking-V09-06-07) -- G4TrackingMessenger : Move invokation with G4TransportationManager - in G4VisCommandsSceneAdd.cc to this G4TrakingMessenger. +- G4TrackingMessenger : Move invokation with G4TransportationManager + in G4VisCommandsSceneAdd.cc to this G4TrakingMessenger. Since G4TransportationManager is thread-local, G4VisCommandsSceneAdd.cc cannot access to G4TransportationManager. 3rd November2013 L.Desorgher (tracking-V09-06-06) --G4AdjointTrackingAction. Change order of initialization in constructor to +-G4AdjointTrackingAction. Change order of initialization in constructor to avoid compilation warning. 31th October2013 L.Desorgher (tracking-V09-06-05) --Create G4AdjointTrackingAction and modify G4AdjointSteppingAction in order to -treat the reverse tracking of an adjoint particle and tracking of its -equivalent forward particle in the same event.This is requested for the -migration of the ReverseMC to the MT mode. +-Create G4AdjointTrackingAction and modify G4AdjointSteppingAction in order to +treat the reverse tracking of an adjoint particle and tracking of its +equivalent forward particle in the same event.This is requested for the +migration of the ReverseMC to the MT mode. 29th August 2013 M.Asai (tracking-V09-06-04) - Add protection against null pointer for the process manager of @@ -139,7 +146,7 @@ migration of the ReverseMC to the MT mode. 26 October 2012 Laurent Desorgher (tracking-V09-05-04) - G4AdointSteppingAction.cc. Add test for adjoint particle reaching "out_of_the_world". - + 3rd July 2012 John Allison (tracking-V09-05-03) - G4Rich/SmoothTrajectory(Point).hh: o Fixes for Coverity warnings. @@ -165,14 +172,14 @@ migration of the ReverseMC to the MT mode. - "Conditonally" in G4ForceCondition nore suppoted 16 June 2011 G.Folger (tracking-V09-04-03) -- stepStatus is not used, but fpSteppingManager->Stepping() improves +- stepStatus is not used, but fpSteppingManager->Stepping() improves performance ;-) 9 June 2011 T Sasaki(tracking-V09-04-02) - stepStaus is no more used in G4TrackingManager.cc 20 May 2011 Ben Morgan (tracking-V09-04-01) -- CMakeLists.txt : Added G4TRACKING_ALLOC_EXPORT compiler definition via +- CMakeLists.txt : Added G4TRACKING_ALLOC_EXPORT compiler definition via add_definitions so it's applied to all sources in this module. 5 May 2011 Makoto Asai (tracking-V09-04-00) @@ -193,7 +200,7 @@ migration of the ReverseMC to the MT mode. symbols. 6 October 2010 Hisaya Kurashige (tracking-V09-03-06) -- Modified G4SteppingManager::GetSecondary() to give const G4TrackVector* +- Modified G4SteppingManager::GetSecondary() to give const G4TrackVector* (co-work with track-V09-03-05) 19 July 2010 Gabriele Cosmo (tracking-V09-03-05) @@ -242,7 +249,7 @@ migration of the ReverseMC to the MT mode. 20 Nov 2009 L.Desorgher (tracking-V09-02-06) - Small correction in G4AdjointSteppingAction to stop the reverse tracking - when adjoint particles reenter the adjoint source. + when adjoint particles reenter the adjoint source. Reput the Nan test removed in tracking-V09-02-05 but now as (x<0 && x>=0). This Nan test is still needed in very rare case where the weight of a particle goes to Nan. As such the code is stable! The reason for the Nan @@ -283,7 +290,7 @@ G4RegularNavigation - Fixing bug of fN2ndaries variables in G4STeppingManager2.cc 02 Oct 2008 T.Sasaki (tracking-V09-01-03) -- G4SteppingManager2.cc: PhyscalStep etc was not updated when +- G4SteppingManager2.cc: PhyscalStep etc was not updated when any flaga for ForceCondition is set. (since begining of Geant4) 25 Sep 2008 T.Sasaki (tracking-V09-01-02) @@ -293,7 +300,7 @@ G4RegularNavigation - G4SteppingManager2.cc: Bug fix for PhysicalStep 06 May 2008 T.Sasaki (tracking-V09-01-00) -- G4SteppingManager.cc: fTouchableHandle was not properly updated +- G4SteppingManager.cc: fTouchableHandle was not properly updated 08 Oct 2007 T.Sasaki (tracking-V09-00-01) - G4SteppingManager.hh: use kCarTolerance in CalculateSafety() instead of zero @@ -307,7 +314,7 @@ G4RegularNavigation 13 November 2006 T.Sasaki (tracking-V08-01-06) - Removed G4VSteppingVerbose::TrackBanner() and add new methed - G4TrackingManager::TrackBanner() for the fix. + G4TrackingManager::TrackBanner() for the fix. 04 November 2006 M.Asai - Added new method G4VSteppingVerbose::TrackBanner() and moved the @@ -341,7 +348,7 @@ G4RegularNavigation - Fix on G4StepingVerbose for ForceConditions 09 June 2006 T. Sasaki -- Secondary vector is now owned by G4Step and G4TrackVector class has +- Secondary vector is now owned by G4Step and G4TrackVector class has been moved in the track category 15 June 2006 G. Cosmo (tracking-V08-00-04) @@ -358,8 +365,8 @@ G4RegularNavigation 24 May 2006 T. Sasaki (tracking-V08-00-01) - New flags are introduced in G4VSteppingVerbose to give more control 24 May 2006 T. Sasaki -- a bug fix for StepStatus when the track is outside of WorldBoundary -- New header was inserted to all of the files to check the last update +- a bug fix for StepStatus when the track is outside of WorldBoundary +- New header was inserted to all of the files to check the last update 09 March 2006 T. Sasaki - Added Silent and SilentStepInfo member to G4VStepverbose @@ -375,7 +382,7 @@ G4RegularNavigation 14 November 2005 Jane Tinslay (tracking-V07-01-02) - Modifications to G4VTrajectory::DrawTrajectory for enhanced - trajectory drawing. + trajectory drawing. 21 September 2005 T. Sasaki(tracking-V07-01-01) - fix for fastsimulation problem in G4SteppingManager2.cc @@ -418,7 +425,7 @@ Aug.27, 2004 M.Asai (tracking-V06-02-03) Jul.08, 2004 K. Amako (tracking-V06-02-02) - Modified G4SteppingVerbose.cc so that PostStep information is printed out - even when PostStep process is triggered by AlongStep process. + even when PostStep process is triggered by AlongStep process. Jul.06, 2004 M.Asai (tracking-V06-02-01) - Remove the modification along tracking-V06-00-00 tag for G4SteppingManager2.cc @@ -528,7 +535,7 @@ Nov 8, 2002, M.Asai (tracking-V04-01-09) - Tagged for Geant4 5.0 release Nov 8, 2002 J.Generowicz -- Bodies introduced into SmoothTrajectory(Point) classes +- Bodies introduced into SmoothTrajectory(Point) classes Nov 8, 2002, J.Allison - Implemented default Show/DrawTrajectory in G4VTrajectory. @@ -623,14 +630,14 @@ Nov 27, 01 J.Apostolakis (tracking-V03-02-04) Correction to the use the touchable Handle for secondary tracks, when it is available. Now the direction is used in locating a particle (primary or - secondary) in SetInitialStep. This is in order to assist in + secondary) in SetInitialStep. This is in order to assist in starting particles that are on/near-to boundaries in the correct - volume. + volume. Nov 27, 01 J.Apostolakis (tracking-V03-02-03) - Initial step now uses the touchable Handle of the secondary track, + Initial step now uses the touchable Handle of the secondary track, when it exists and is valid. - + To be useful this tag depends the tag track-V03-02-07, which enables touchable handles in secondaries. @@ -648,7 +655,7 @@ Jun 06, 01 G.Cosmo (tracking-V03-01-02) fSelectedPostStepDoItVector in G4SteppingManager default constructor. This overcomes warnings detected on HP-aCC. -May 10, 01 T.Sasaki (tracking-V03-01-01) +May 10, 01 T.Sasaki (tracking-V03-01-01) - fix for a suspneded track's vertex info. May 03, 01 T.Sasaki/J.Allison (tracking-V03-01-00) @@ -666,30 +673,30 @@ Feb 05, 01 G.Cosmo (tracking-V03-00-02) Modified files: G4VSteppingVerbose.hh. Jan 12, 01 T.Sasaki (tracking-V03-00-01) -- correction of class description +- correction of class description Nov 04, 00 T.Sasaki (tracking-V02-00-02) - G4TrackingManager.icc has been modified for new biasing schme - Descriptions are added too header files Aug 30, 00 T.Sasaki (tracking-V02-00-01) -- Protection for no AtRestDoIt procs. +- Protection for no AtRestDoIt procs. June 2, 00 M.Asai (tracking-01-01-01) - Add SetUserTrackInformation(G4VUserTrackInformation*) to G4TrackingManager -- Fix problems in deleteing Touchable in G4SteppingManager (Hisaya) +- Fix problems in deleteing Touchable in G4SteppingManager (Hisaya) Hune 1, 00 H.Kurashige - Add "const" to all G4VTouchable pointer -Jan 23, 00 T.Sasaki +Jan 23, 00 T.Sasaki - GetCurrentValue() in G4TrackingMessenger.cc have a return value - SetUserAction in G4SteppingManager.hh protected null pointers -Oct 22, 99 T.Sasaki G4SteppingMangaer.cc fixed the UserLmit problem +Oct 22, 99 T.Sasaki G4SteppingMangaer.cc fixed the UserLmit problem -Oct 13, 99 T.Sasaki updated G4SteppingVerbose and G4VSteppingVerbose +Oct 13, 99 T.Sasaki updated G4SteppingVerbose and G4VSteppingVerbose Jun 29, 99 G.Folger have the ctor always assign a SteppingVerbose to fVerbose @@ -699,7 +706,7 @@ Apr 15, 99 M.Asai (tracking-01-00-03) Mar 23, 99 T.Sasaki (tracking-01-00-02) - Fix for precision problem of safety in SteppingManager by John Apostolakis -- G4VSteppingVerbose is introduced +- G4VSteppingVerbose is introduced Feb 18, 99 T.Sasaki (tracking-01-00-01) - ShowStep() method was moved from G4Step to G4SteppingVerbose @@ -717,19 +724,19 @@ August 25, 98 G.Cosmo (tracking-00-02-01) July 1, 98 K. Amako - Tag for tracking-00-07-02. This includes the following features. -- Because J. Apostolakis changed the way to calcluate safety in the +- Because J. Apostolakis changed the way to calcluate safety in the transportation AlongStepGPIL, the way to set safety of the PostStepPoint was modified. Except the first step, the safety of the PreStepPoint is also valid in this scheme. -- The coherent energy cut scheme is implemented. This means that +- The coherent energy cut scheme is implemented. This means that the energy of a secondary particle is checked against the energy - cut value and also safety. Also the 'GoodForTracking' flag is + cut value and also safety. Also the 'GoodForTracking' flag is checked. A warning message will be issued if a secondary particle has illegal status (i.e. below energy cut and 'GoodForTracking' is off). Because processes don't set properly the 'GoodForTracking' yet, this waning message is temporary suppressed in the current tag. -June 22, 98 J.Apostolakis +June 22, 98 J.Apostolakis - Added fix to implementation of new scheme of 'Safety'. @@ -747,10 +754,10 @@ June 6, 98 M.Asai - GNUmakefile is modified to correspond to the new "digits+hits" structure. Jun 3, 98 P.Mora de Freitas/M.Verderi -- Implement new scheme of 'Safety' where it becomes the 'range within +- Implement new scheme of 'Safety' where it becomes the 'range within the assumptions of all processes are valid'. In the G4SteppingManager - GetPIL loop the safety becomes "competitive" like the step limitation. - This means that at the begining of every step the G4SteppingManager + GetPIL loop the safety becomes "competitive" like the step limitation. + This means that at the begining of every step the G4SteppingManager will initialize it to DBLMAX and that processes can only decrease it. May 22, 98 T.Sasaki @@ -759,7 +766,7 @@ April 21, 98 G.Cosmo (tracking-00-05-01) - Tagged. April 12, 98 H.Kuraashige -- Implement new scheme of 'Particle Change'. Please see +- Implement new scheme of 'Particle Change'. Please see particle_change.asc in geant4alpha/documents/particles+matter/. G4SteppingManager.hh, .cc have been modified. @@ -769,25 +776,25 @@ April 9, 98 G.Cosmo return type for basic types by value. Modified files: G4Trajectory.hh March 18, 1998 K. Amako - Add following information to G4Track: - 1.Momentum direction at the start point (vertex position) of the track - 2.Kinetic energy at the start point (vertex position) of the track - 3.Pointer to the process which created the current track + Add following information to G4Track: + 1.Momentum direction at the start point (vertex position) of the track + 2.Kinetic energy at the start point (vertex position) of the track + 3.Pointer to the process which created the current track Due to this, the following files have modififed and committed. - 1.NewDesignDoc.txt - 2.G4Track.hh, G4Track.cc - 3.G4SteppingManager.cc + 1.NewDesignDoc.txt + 2.G4Track.hh, G4Track.cc + 3.G4SteppingManager.cc January 29, 97 K. Amako Following changes have been done and committed/tagged to cvs. - Tag# is tracking-00-03-01. - - G4SteppingManager.cc: Corrected so that the verbose + Tag# is tracking-00-03-01. + - G4SteppingManager.cc: Corrected so that the verbose 'AlongStepDoItAllDone' is invokded after the 'safety' update. - - G4SteppingManager.cc: Added a comment in the 'G4Step Information' - table of the verbose output of 'AlongStepDoIt (process by process)' + - G4SteppingManager.cc: Added a comment in the 'G4Step Information' + table of the verbose output of 'AlongStepDoIt (process by process)' so that 'safety' value in it is not updated yet. - G4TrackingMessanger.cc: Help for verbose has been updated. - + December 19, 97 G. Cosmo - (alpha03) diff --git a/source/tracking/include/G4SteppingManager.hh b/source/tracking/include/G4SteppingManager.hh index 304984b07f..355ffe3ee4 100644 --- a/source/tracking/include/G4SteppingManager.hh +++ b/source/tracking/include/G4SteppingManager.hh @@ -73,8 +73,10 @@ class G4VSensitiveDetector; class G4SteppingManager { - public: + public: + using ProfilerConfig = G4Step::ProfilerConfig; + public: // Constructor/Destructor G4SteppingManager(); diff --git a/source/tracking/include/G4TrackingManager.hh b/source/tracking/include/G4TrackingManager.hh index db28f37a68..7f41560433 100644 --- a/source/tracking/include/G4TrackingManager.hh +++ b/source/tracking/include/G4TrackingManager.hh @@ -59,6 +59,8 @@ class G4VUserTrackInformation; class G4TrackingManager //////////////////////// { + public: + using ProfilerConfig = G4Track::ProfilerConfig; public: diff --git a/source/tracking/src/G4SteppingManager.cc b/source/tracking/src/G4SteppingManager.cc index 7e85c8182d..0e00aca0d3 100644 --- a/source/tracking/src/G4SteppingManager.cc +++ b/source/tracking/src/G4SteppingManager.cc @@ -41,6 +41,8 @@ #include "G4UserLimits.hh" #include "G4VSensitiveDetector.hh" // Include from 'hits/digi' #include "G4GeometryTolerance.hh" +#include "G4Profiler.hh" +#include "G4TiMemory.hh" ////////////////////////////////////// G4SteppingManager::G4SteppingManager() @@ -112,6 +114,10 @@ G4SteppingManager::~G4SteppingManager() G4StepStatus G4SteppingManager::Stepping() ////////////////////////////////////////// { +#ifdef GEANT4_USE_TIMEMORY + ProfilerConfig profiler{ fStep }; +#endif + //-------- // Prelude //-------- @@ -254,7 +260,8 @@ G4StepStatus G4SteppingManager::Stepping() G4UserSteppingAction* regionalAction = fStep->GetPreStepPoint() ->GetPhysicalVolume()->GetLogicalVolume() ->GetRegion()->GetRegionalSteppingAction(); - if( regionalAction ) regionalAction->UserSteppingAction(fStep); + if(regionalAction) + regionalAction->UserSteppingAction(fStep); // Stepping process finish. Return the value of the StepStatus // diff --git a/source/tracking/src/G4SteppingManager2.cc b/source/tracking/src/G4SteppingManager2.cc index 65dab621b6..a54e9f3ef6 100644 --- a/source/tracking/src/G4SteppingManager2.cc +++ b/source/tracking/src/G4SteppingManager2.cc @@ -691,6 +691,7 @@ void G4SteppingManager::ApplyProductionCut(G4Track* aSecondary) = G4ProductionCutsTable::GetProductionCutsTable(); G4int tCoupleIdx = tCutsTbl->GetCoupleIndex(fPreStepPoint->GetMaterialCutsCouple()); + if (tCoupleIdx<0) { return; } G4double tProdThreshold = (*(tCutsTbl->GetEnergyCutsVector(tPtclIdx)))[tCoupleIdx]; if( aSecondary->GetKineticEnergy()PreUserTrackingAction(fpTrack); } -#ifdef G4_STORE_TRAJECTORY - // Construct a trajectory if it is requested - // - if(StoreTrajectory&&(fpTrajectory == nullptr)) - { - // default trajectory concrete class object - switch (StoreTrajectory) - { - default: - case 1: fpTrajectory = new G4Trajectory(fpTrack); break; - case 2: fpTrajectory = new G4SmoothTrajectory(fpTrack); break; - case 3: fpTrajectory = new G4RichTrajectory(fpTrack); break; - case 4: fpTrajectory = new G4RichTrajectory(fpTrack); break; - } - } -#endif - // Give SteppingManger the maxmimum number of processes - fpSteppingManager->GetProcessNumber(); - - // Give track the pointer to the Step - fpTrack->SetStep(fpSteppingManager->GetStep()); - - // Inform beginning of tracking to physics processes - fpTrack->GetDefinition()->GetProcessManager()->StartTracking(fpTrack); - - // Track the particle Step-by-Step while it is alive - // - while( (fpTrack->GetTrackStatus() == fAlive) || - (fpTrack->GetTrackStatus() == fStopButAlive) ) + // we need this to scope the G4Track::ProfilerConfig b/t + // the PreUserTrackingAction and PostUserTrackingAction { - fpTrack->IncrementCurrentStepNumber(); - fpSteppingManager->Stepping(); +#if defined(GEANT4_USE_TIMEMORY) + ProfilerConfig profiler{ fpTrack }; +#endif + #ifdef G4_STORE_TRAJECTORY - if(StoreTrajectory) + // Construct a trajectory if it is requested + // + if(StoreTrajectory && (fpTrajectory == nullptr)) { - fpTrajectory->AppendStep(fpSteppingManager->GetStep()); + // default trajectory concrete class object + switch(StoreTrajectory) + { + default: + case 1: + fpTrajectory = new G4Trajectory(fpTrack); + break; + case 2: + fpTrajectory = new G4SmoothTrajectory(fpTrack); + break; + case 3: + fpTrajectory = new G4RichTrajectory(fpTrack); + break; + case 4: + fpTrajectory = new G4RichTrajectory(fpTrack); + break; + } } #endif - if(EventIsAborted) + + // Give SteppingManger the maxmimum number of processes + fpSteppingManager->GetProcessNumber(); + + // Give track the pointer to the Step + fpTrack->SetStep(fpSteppingManager->GetStep()); + + // Inform beginning of tracking to physics processes + fpTrack->GetDefinition()->GetProcessManager()->StartTracking(fpTrack); + + // Track the particle Step-by-Step while it is alive + // + while((fpTrack->GetTrackStatus() == fAlive) || + (fpTrack->GetTrackStatus() == fStopButAlive)) { - fpTrack->SetTrackStatus( fKillTrackAndSecondaries ); + fpTrack->IncrementCurrentStepNumber(); + fpSteppingManager->Stepping(); +#ifdef G4_STORE_TRAJECTORY + if(StoreTrajectory) + { + fpTrajectory->AppendStep(fpSteppingManager->GetStep()); + } +#endif + if(EventIsAborted) + { + fpTrack->SetTrackStatus(fKillTrackAndSecondaries); + } } + // Inform end of tracking to physics processes + fpTrack->GetDefinition()->GetProcessManager()->EndTracking(); } - // Inform end of tracking to physics processes - fpTrack->GetDefinition()->GetProcessManager()->EndTracking(); // Post tracking user intervention process. if( fpUserTrackingAction != nullptr ) diff --git a/source/visualization/CMakeLists.txt b/source/visualization/CMakeLists.txt index 76de3638d2..766a08febf 100644 --- a/source/visualization/CMakeLists.txt +++ b/source/visualization/CMakeLists.txt @@ -23,3 +23,8 @@ endif() if(GEANT4_USE_INVENTOR) add_subdirectory(OpenInventor) endif() + +# Qt3D is available if Qt is used and > 5.15 +if(GEANT4_USE_QT3D) + add_subdirectory(Qt3D) +endif() diff --git a/source/visualization/FukuiRenderer/History b/source/visualization/FukuiRenderer/History index cbf9468e37..f72a65f270 100644 --- a/source/visualization/FukuiRenderer/History +++ b/source/visualization/FukuiRenderer/History @@ -18,6 +18,16 @@ committal in the CVS repository ! History file for visualization/FukuiRenderer sub-category --------------------------------------------------------- + +2 October 2020 John Allison (DAWN-V10-06-03) +- G4FukuiRendererViewer.cc: + o Fix "overlapping comparisons always evaluate to true". + +3 July 2020 John Allison (DAWN-V10-06-02) +- G4DAWNFILEViewer.cc: + o Fix Unbuntu 20 compiler warning about ignoring return value + of ‘int system(const char*)’. + 31 May 2020 Ben Morgan (DAWN-V10-06-01) - Use add_definitions to set PRIVATE-level compile add_definitions for compatibility between old and new CMake systems diff --git a/source/visualization/FukuiRenderer/src/G4DAWNFILEViewer.cc b/source/visualization/FukuiRenderer/src/G4DAWNFILEViewer.cc index 7297483144..b072c62eb0 100644 --- a/source/visualization/FukuiRenderer/src/G4DAWNFILEViewer.cc +++ b/source/visualization/FukuiRenderer/src/G4DAWNFILEViewer.cc @@ -186,10 +186,18 @@ void G4DAWNFILEViewer::ShowView( void ) } else if( strcmp( GetG4PrimViewerInvocation(), "" ) ) { - G4cout << "File " << fSceneHandler.GetG4PrimFileName() ; - G4cout << " is generated." << G4endl; - G4cout << GetG4PrimViewerInvocation() << G4endl; - (void) system( GetG4PrimViewerInvocation() ); + G4cout << "File " << fSceneHandler.GetG4PrimFileName() ; + G4cout << " is generated." << G4endl; + G4cout << GetG4PrimViewerInvocation() << G4endl; + int iErr = system( GetG4PrimViewerInvocation() ); + if ( iErr != 0) { + G4ExceptionDescription ed; + ed << "Error " << iErr + << " when calling system with \"" << GetG4PrimViewerInvocation() + << "\"."; + G4Exception("G4DAWNFILEViewer::ShowView()", + "dawn0005", JustWarning, ed); + } } else { // no view, i.e., only file generation G4cout << "File " << fSceneHandler.GetG4PrimFileName() ; diff --git a/source/visualization/FukuiRenderer/src/G4FukuiRendererViewer.cc b/source/visualization/FukuiRenderer/src/G4FukuiRendererViewer.cc index 27cf7db9ea..cc0ff94b04 100644 --- a/source/visualization/FukuiRenderer/src/G4FukuiRendererViewer.cc +++ b/source/visualization/FukuiRenderer/src/G4FukuiRendererViewer.cc @@ -164,7 +164,7 @@ G4FukuiRendererViewer::SendDevice( FRDEV dev ) // enum {PS=1, XWIN=2, PS2=3, XWIN2=4, OPEN_GL=5, DEVICE_END=6}; - if( dev >= FRDEV_PS || dev < FRDEV_DEVICE_END ) { + if( dev >= FRDEV_PS && dev < FRDEV_DEVICE_END ) { fSceneHandler.SendStrInt ( FR_DEVICE, dev ); } } diff --git a/source/visualization/GNUmakefile b/source/visualization/GNUmakefile index 652cdf0348..9fb5ee8052 100644 --- a/source/visualization/GNUmakefile +++ b/source/visualization/GNUmakefile @@ -54,6 +54,10 @@ ifdef G4VIS_BUILD_OI_DRIVER SUBLIBS += G4OpenInventor SUBLIBS += G4gl2ps endif +ifdef G4VIS_BUILD_QT3D_DRIVER + SUBDIRS += Qt3D + SUBLIBS += G4visQt3D +endif endif #G4VIS_BUILD .PHONY: granular obj glob global clean diff --git a/source/visualization/HepRep/include/HEPREP/Types.h b/source/visualization/HepRep/include/HEPREP/Types.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/HEPREP/freehep-heprep.version b/source/visualization/HepRep/include/HEPREP/freehep-heprep.version old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/AbstractXMLWriter.h b/source/visualization/HepRep/include/cheprep/AbstractXMLWriter.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/BHepRepWriter.h b/source/visualization/HepRep/include/cheprep/BHepRepWriter.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DefaultHepRep.h b/source/visualization/HepRep/include/cheprep/DefaultHepRep.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DefaultHepRepAction.h b/source/visualization/HepRep/include/cheprep/DefaultHepRepAction.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DefaultHepRepAttDef.h b/source/visualization/HepRep/include/cheprep/DefaultHepRepAttDef.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DefaultHepRepAttValue.h b/source/visualization/HepRep/include/cheprep/DefaultHepRepAttValue.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DefaultHepRepAttribute.h b/source/visualization/HepRep/include/cheprep/DefaultHepRepAttribute.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DefaultHepRepDefinition.h b/source/visualization/HepRep/include/cheprep/DefaultHepRepDefinition.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DefaultHepRepFactory.h b/source/visualization/HepRep/include/cheprep/DefaultHepRepFactory.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DefaultHepRepInstance.h b/source/visualization/HepRep/include/cheprep/DefaultHepRepInstance.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DefaultHepRepInstanceTree.h b/source/visualization/HepRep/include/cheprep/DefaultHepRepInstanceTree.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DefaultHepRepPoint.h b/source/visualization/HepRep/include/cheprep/DefaultHepRepPoint.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DefaultHepRepTreeID.h b/source/visualization/HepRep/include/cheprep/DefaultHepRepTreeID.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DefaultHepRepType.h b/source/visualization/HepRep/include/cheprep/DefaultHepRepType.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DefaultHepRepTypeTree.h b/source/visualization/HepRep/include/cheprep/DefaultHepRepTypeTree.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/DeflateOutputStreamBuffer.h b/source/visualization/HepRep/include/cheprep/DeflateOutputStreamBuffer.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/GZIPOutputStream.h b/source/visualization/HepRep/include/cheprep/GZIPOutputStream.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/GZIPOutputStreamBuffer.h b/source/visualization/HepRep/include/cheprep/GZIPOutputStreamBuffer.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/IndentPrintWriter.h b/source/visualization/HepRep/include/cheprep/IndentPrintWriter.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/XMLHepRepFactory.h b/source/visualization/HepRep/include/cheprep/XMLHepRepFactory.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/XMLHepRepWriter.h b/source/visualization/HepRep/include/cheprep/XMLHepRepWriter.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/XMLWriter.h b/source/visualization/HepRep/include/cheprep/XMLWriter.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/ZipEntry.h b/source/visualization/HepRep/include/cheprep/ZipEntry.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/ZipOutputStream.h b/source/visualization/HepRep/include/cheprep/ZipOutputStream.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/ZipOutputStreamBuffer.h b/source/visualization/HepRep/include/cheprep/ZipOutputStreamBuffer.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/config.h b/source/visualization/HepRep/include/cheprep/config.h old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/include/cheprep/freehep-cheprep.version b/source/visualization/HepRep/include/cheprep/freehep-cheprep.version old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/src/BHepRepWriter.cc b/source/visualization/HepRep/src/BHepRepWriter.cc old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/src/DeflateOutputStreamBuffer.cc b/source/visualization/HepRep/src/DeflateOutputStreamBuffer.cc old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/src/GZIPOutputStream.cc b/source/visualization/HepRep/src/GZIPOutputStream.cc old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/src/GZIPOutputStreamBuffer.cc b/source/visualization/HepRep/src/GZIPOutputStreamBuffer.cc old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/src/ZipOutputStream.cc b/source/visualization/HepRep/src/ZipOutputStream.cc old mode 100755 new mode 100644 diff --git a/source/visualization/HepRep/src/ZipOutputStreamBuffer.cc b/source/visualization/HepRep/src/ZipOutputStreamBuffer.cc old mode 100755 new mode 100644 diff --git a/source/visualization/History b/source/visualization/History index 1d27edefb1..ea1e42d6c6 100644 --- a/source/visualization/History +++ b/source/visualization/History @@ -23,10 +23,91 @@ committal in the CVS repository ! History file for visualization category --------------------------------------- +07 November 2020 John Allison (vis-V10-06-12) +- Update this History file to include summaries of sub-category updates + +29 October 2020 Ben Morgan +- OpenGL-V10-06-11: Remove inclusion of obsolete CMake module +- visQt3D-V10-06-01: Remove inclusion of obsolete CMake module + +28 October 2020 Gabriele Cosmo (vis-V10-06-11) +- Fixed GNUmakefiles in sub-modules, based on changes recently done for + introducing use of G4RunManagerFactory and related new dependency on + the tasking module. + +26 October 2020 Ben Morgan (vis-V10-06-10) +- Only enable Qt3D when GEANT4_USE_QT3D is true + +26-Oct-2020 Gabriele Cosmo +- visQt3D-V10-06-01: Corrected GNUmake setup and fixed compilation warnings. + +23 October 2020 John Allison (vis-V10-06-09) +- Introduce Qt3D vis driver. + o visQt3D-V10-06-00: First version. + o Requires cmake-V10-06-34. + +21 October 2020 Jonathan Madsen +- visman-V10-06-11: Implemented G4RunManagerFactory::GetMasterRunManager() + +21 October 2020 John Allison +- visman-V10-06-10: Improve logic of automatic event keeping. + +20 October 2020 Jonathan Madsen +- modeling-V10-06-05: Implemented G4RunManagerFactory::GetMasterRunManager() +- OpenGL-V10-06-10: Implemented G4RunManagerFactory::GetMasterRunManager() +- raytracer-V10-06-03: Implemented G4RunManagerFactory::GetMasterRunManager() + +20 October 2020 Frederick Jones +- openinventor-v10-06-11: + o Completed all the planned features of the OIQt viewer. + +15 October 2020 John Allison (vis-V10-06-08) +- visman-V10-06-09: + o Use command->CommandFailed() - remove internal fErrorCode. + +2 October 2020 John Allison +- DAWN-V10-06-03: + o Fix "overlapping comparisons always evaluate to true". + +23 September 2020 Ben Morgan +- visxxx-V10-06-00 + o Remove no longer required include_directories + +18 September 2020 John Allison (vis-V10-06-07) +- modeling-V10-06-04: + o Pick up default vis attributes. + o Improve printing. +- OpenGL-V10-06-09: + openinventor-V10-06-10: + visXXX-V10-05-05: + o CompareForKernelVisit; Force kernel visit if global parameters change. + . GlobalMarkerScale and GlobalLineWidthScale. + o Move fLastVP=fVP so always updated (avoids unnecessary redraw at start) + +10 August 2020 John Allison (vis-V10-06-06) +- visman-V10-06-08: + o Remove obsolete G4VIS_USE_STD11 and references to obsolete G4VIS_USE. +- raytracer-V10-06-02: + o Suppress printing during RayTracer run. + +4 August 2020 John Allison (vis-V10-06-05) +- modeling-V10-06-03: + o Rationalise defaults for PVPaths - make sure all nodes are marked as + "not drawn" unless actually chosen for drawing. +- visman-V10-06-07: Introduce extra protections in NotifyHandlers. + +3 July 2020 John Allison +- VRML-V10-06-02, DAWN-V10-06-02: + o Fix Unbuntu 20 compiler warning about ignoring return value + of ‘int system(const char*)’. + +01 July 2020 John Allison +- visexternals-V10-06-01: gl2ps.cc: Fix Coverity warning. + 19 June 2020 John Allison - opengl-V10-06-07: Fix Qt 5.15 deprecation warnings. -18 June 2020 John Allison (vis-V10-06-04) +18 June 2020 John Allison (vis-V10-06-04) * visman-V10-06-06: /vis/scene/add/*Field: Correct guidance (red->green->blue). * visXXX-V10-05-04: Fix a debug statement. * From earlier: @@ -47,6 +128,10 @@ History file for visualization category 19 May 2020 John Allison * visman-V10-06-05: Very minor improvements. +5 May 2020 Gunter Folger +- gMocren-V10-06-01: + o Fix for clang10: for for warning on confusing indentation + 22 April 2020 Frederick Jones * visman-V10-06-04: Support fro OIQt driver. diff --git a/source/visualization/OpenGL/GNUmakefile b/source/visualization/OpenGL/GNUmakefile index 0793706f5c..b61fc64c6e 100644 --- a/source/visualization/OpenGL/GNUmakefile +++ b/source/visualization/OpenGL/GNUmakefile @@ -17,7 +17,7 @@ GLOBLIBS = libG4vis_management.lib libG4modeling.lib libG4gl2ps.lib ifdef G4LIB_BUILD_ZLIB GLOBLIBS += libG4zlib.lib endif -GLOBLIBS += libG4interfaces.lib libG4run.lib libG4event.lib +GLOBLIBS += libG4interfaces.lib libG4tasking.lib libG4run.lib libG4event.lib GLOBLIBS += libG4tracking.lib libG4processes.lib libG4digits_hits.lib GLOBLIBS += libG4track.lib libG4particles.lib libG4geometry.lib GLOBLIBS += libG4materials.lib libG4graphics_reps.lib @@ -52,6 +52,7 @@ CPPFLAGS += -I$(G4BASE)/digits_hits/hits/include CPPFLAGS += -I$(G4BASE)/particles/management/include CPPFLAGS += -I$(G4BASE)/event/include CPPFLAGS += -I$(G4BASE)/run/include +CPPFLAGS += -I$(G4BASE)/tasking/include include $(G4INSTALL)/config/moc.gmk include $(G4INSTALL)/config/common.gmk diff --git a/source/visualization/OpenGL/History b/source/visualization/OpenGL/History index b0ef9607f9..4d64fb9900 100644 --- a/source/visualization/OpenGL/History +++ b/source/visualization/OpenGL/History @@ -16,6 +16,32 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +16 November 2020 Gabriele Cosmo (OpenGL-V10-06-13) +- Fixed typos in printed-out text. Addressing problem report #2285. + +12 November 2020 Ben Morgan (OpenGL-V10-06-12) +- Apply typo fixes from Gurkan Myczko (https://github.com/Geant4/geant4/pull/15) + +29 October 2020 Ben Morgan (OpenGL-V10-06-11) +- Remove inclusion of obsolete CMake module + +20 October 2020 Jonathan Madsen (OpenGL-V10-06-10) +- Implemented G4RunManagerFactory::GetMasterRunManager() + +18 September 2020 John Allison (OpenGL-V10-06-09) +- Part of vis-V10-06-07. +- G4OpenGLStoredViewer.cc and G4OpenGLStoredQtViewer.cc: + o CompareForKernelVisit; Force kernel visit if global parameters change. + . GlobalMarkerScale and GlobalLineWidthScale. +- G4OpenGLStoredViewer.cc, G4OpenGLStoredQtViewer.cc, G4OpenGLStoredXViewer.cc, + G4OpenGLStoredXmViewer.cc, G4OpenGLStoredWin32Viewer.cc: + o Move fLastVP=fVP so always updated (avoids unnecessary redraw at start) + +28 August 2020 Ben Morgan (opengl-V10-06-08) +- Ensure use of XQuartz GL on macOS for X11/Xm, System GL + for Qt. This can lead to both libraries linking, but there + do not appear to be immediate issues with this. + 19 June 2020 John Allison (opengl-V10-06-07) - Fix Qt 5.15 deprecation warnings. diff --git a/source/visualization/OpenGL/sources.cmake b/source/visualization/OpenGL/sources.cmake index b0efc04089..fbb1e25c1a 100644 --- a/source/visualization/OpenGL/sources.cmake +++ b/source/visualization/OpenGL/sources.cmake @@ -5,9 +5,6 @@ # # Module has optional sources -# -include(Geant4MacroDefineModule) - # # Define the core sources, includes and libraries which all Geant4 # OpenGL implementations use @@ -40,14 +37,6 @@ set(G4VIS_MODULE_OPENGL_SOURCES G4VisFeaturesOfOpenGL.cc ) -# -# Core OpenGL settings -# -set(G4VIS_MODULE_OPENGL_LINK_LIBRARIES OpenGL::GL) - -# -# All files must have the G4VIS_BUILD_OPENGL_DRIVER definition -# add_definitions(-DG4VIS_BUILD_OPENGL_DRIVER) #---------------------------------------------------------------------------- @@ -75,6 +64,8 @@ if(GEANT4_USE_OPENGL_X11) list(APPEND G4VIS_MODULE_OPENGL_LINK_LIBRARIES X11::SM X11::ICE X11::X11 X11::Xext X11::Xmu) if(APPLE) list(APPEND G4VIS_MODULE_OPENGL_LINK_LIBRARIES XQuartzGL::GL) + else() + list(APPEND G4VIS_MODULE_OPENGL_LINK_LIBRARIES OpenGL::GL) endif() endif() @@ -149,6 +140,11 @@ if(GEANT4_USE_XM) # Add in Xm, X11 libraries, plus Xmu library set(G4VIS_MODULE_OPENGL_LINK_LIBRARIES Motif::Xm X11::SM X11::ICE X11::X11 X11::Xext X11::Xmu ${G4VIS_MODULE_OPENGL_LINK_LIBRARIES}) + if(APPLE) + list(APPEND G4VIS_MODULE_OPENGL_LINK_LIBRARIES XQuartzGL::GL) + else() + set(G4VIS_MODULE_OPENGL_LINK_LIBRARIES OpenGL::GL) + endif() endif() #---------------------------------------------------------------------------- @@ -184,40 +180,9 @@ if(GEANT4_USE_QT) add_definitions(-DG4VIS_BUILD_OPENGLQT_DRIVER -DG4INTY_BUILD_QT -DG4UI_BUILD_QT_SESSION) # Add in Qt libraries - list(APPEND G4VIS_MODULE_OPENGL_LINK_LIBRARIES Qt5::OpenGL Qt5::Gui Qt5::PrintSupport Qt5::Widgets) + list(APPEND G4VIS_MODULE_OPENGL_LINK_LIBRARIES Qt5::OpenGL Qt5::Gui Qt5::PrintSupport Qt5::Widgets OpenGL::GL) endif() -#---------------------------------------------------------------------------- -# Add Wt OpenGL support if requested -# -#if(GEANT4_USE_WT) -# # -# # Add in the extra Wt GL sources -# # -# list(APPEND G4VIS_MODULE_OPENGL_HEADERS -# G4OpenGLImmediateWt.hh -# G4OpenGLImmediateWtViewer.hh -# G4OpenGLVboDrawer.hh -# G4OpenGLWtViewer.hh) -# -# list(APPEND G4VIS_MODULE_OPENGL_SOURCES -# G4OpenGLImmediateWt.cc -# G4OpenGLImmediateWtViewer.cc -# G4OpenGLVboDrawer.cc -# G4OpenGLWtViewer.cc) -# -# # Add the definitions - these will also be used to compile the moc sources -# # Argh.. Have to remember about INTY and UI because of their use... -# # Use the compile definitions to avoid "signal/slot" keyword -# # mixed with Qt and boost -# add_definitions(${WT_DEFINITIONS}) -# add_definitions(-DG4VIS_BUILD_OPENGLWT_DRIVER -DG4INTY_BUILD_WT -# -DG4UI_BUILD_WT_SESSION) -# -# # Add in Wt libraries -# list(APPEND G4VIS_MODULE_OPENGL_LINK_LIBRARIES Wt::Wt Wt::HTTP) -#endif() - #---------------------------------------------------------------------------- # Add WIN32 support, if requested @@ -241,6 +206,7 @@ if(GEANT4_USE_OPENGL_WIN32) # Add the compile definitions add_definitions(-DG4VIS_BUILD_OPENGLWIN32_DRIVER) + list(APPEND G4VIS_MODULE_OPENGL_LINK_LIBRARIES OpenGL::GL) endif() # May have duplicates in link list, so remove @@ -260,6 +226,7 @@ geant4_define_module(NAME G4OpenGL G4csg G4event G4run + G4tasking G4particles G4processes G4track @@ -279,6 +246,7 @@ geant4_define_module(NAME G4OpenGL G4digits_hits G4event G4run + G4tasking G4particles G4processes G4track diff --git a/source/visualization/OpenGL/src/G4OpenGLQtViewer.cc b/source/visualization/OpenGL/src/G4OpenGLQtViewer.cc index 0e7fa71432..3a0fb31014 100644 --- a/source/visualization/OpenGL/src/G4OpenGLQtViewer.cc +++ b/source/visualization/OpenGL/src/G4OpenGLQtViewer.cc @@ -592,7 +592,7 @@ void G4OpenGLQtViewer::createPopupMenu() { #if QT_VERSION < 0x050600 fProjectionOrtho = mProjection->addAction("Orthographic", fSignalMapperSurface, SLOT(map())); - fProjectionPerspective = mProjection->addAction("Persepective", fSignalMapperSurface, SLOT(map())); + fProjectionPerspective = mProjection->addAction("Perspective", fSignalMapperSurface, SLOT(map())); // INIT mProjection if (fVP.GetFieldHalfAngle() == 0) { @@ -603,7 +603,7 @@ void G4OpenGLQtViewer::createPopupMenu() { #else // no more radioAction, not realy useful and could be confusing to use context menu and icon at the same time fProjectionOrtho = mProjection->addAction("Orthographic", this, [=](){ this->toggleProjection(1); }); - fProjectionPerspective = mProjection->addAction("Persepective", this, [=](){ this->toggleProjection(2); }); + fProjectionPerspective = mProjection->addAction("Perspective", this, [=](){ this->toggleProjection(2); }); #endif // === Drawing Menu === QMenu *mDrawing = mStyle->addMenu("&Drawing"); @@ -2353,7 +2353,7 @@ bool G4OpenGLQtViewer::generateMpegEncoderParameters () { fprintf (fp,"# this must be ORIGINAL or DECODED\n"); fprintf (fp,"REFERENCE_FRAME ORIGINAL\n"); fprintf (fp,"\n"); - fprintf (fp,"# for parallel parameters see parallel.param in the exmaples subdirectory\n"); + fprintf (fp,"# for parallel parameters see parallel.param in the examples subdirectory\n"); fprintf (fp,"\n"); fprintf (fp,"# if you want constant bit-rate mode, specify it as follows (number is bits/sec):\n"); fprintf (fp,"#BIT_RATE 1000000\n"); diff --git a/source/visualization/OpenGL/src/G4OpenGLSceneHandler.cc b/source/visualization/OpenGL/src/G4OpenGLSceneHandler.cc index 43b2d5e43b..8f762cdc19 100644 --- a/source/visualization/OpenGL/src/G4OpenGLSceneHandler.cc +++ b/source/visualization/OpenGL/src/G4OpenGLSceneHandler.cc @@ -25,7 +25,7 @@ // // // -// +// // Andrew Walkden 27th March 1996 // OpenGL stored scene - creates OpenGL display lists. // OpenGL immediate scene - draws immediately to buffer @@ -33,33 +33,31 @@ #ifdef G4VIS_BUILD_OPENGL_DRIVER -#include "G4OpenGLSceneHandler.hh" -#include "G4OpenGLViewer.hh" -#include "G4OpenGLTransform3D.hh" -#include "G4Point3D.hh" -#include "G4Normal3D.hh" -#include "G4Transform3D.hh" -#include "G4Polyline.hh" -#include "G4Polymarker.hh" -#include "G4Text.hh" -#include "G4Circle.hh" -#include "G4Square.hh" -#include "G4VMarker.hh" -#include "G4Polyhedron.hh" -#include "G4VisAttributes.hh" -#include "G4PhysicalVolumeModel.hh" -#include "G4VPhysicalVolume.hh" -#include "G4LogicalVolume.hh" -#include "G4VSolid.hh" -#include "G4Scene.hh" -#include "G4VisExtent.hh" -#include "G4AttHolder.hh" -#include "G4PhysicalConstants.hh" -#include "G4RunManager.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#endif -#include "G4Run.hh" +# include "G4OpenGLSceneHandler.hh" +# include "G4OpenGLViewer.hh" +# include "G4OpenGLTransform3D.hh" +# include "G4Point3D.hh" +# include "G4Normal3D.hh" +# include "G4Transform3D.hh" +# include "G4Polyline.hh" +# include "G4Polymarker.hh" +# include "G4Text.hh" +# include "G4Circle.hh" +# include "G4Square.hh" +# include "G4VMarker.hh" +# include "G4Polyhedron.hh" +# include "G4VisAttributes.hh" +# include "G4PhysicalVolumeModel.hh" +# include "G4VPhysicalVolume.hh" +# include "G4LogicalVolume.hh" +# include "G4VSolid.hh" +# include "G4Scene.hh" +# include "G4VisExtent.hh" +# include "G4AttHolder.hh" +# include "G4PhysicalConstants.hh" +# include "G4RunManager.hh" +# include "G4Run.hh" +# include "G4RunManagerFactory.hh" const GLubyte G4OpenGLSceneHandler::fStippleMaskHashed [128] = { 0x55,0x55,0x55,0x55,0x55,0x55,0x55,0x55, @@ -146,12 +144,7 @@ void G4OpenGLSceneHandler::ScaledFlush() fFlushAction = NthPrimitive; } } - G4RunManager* runMan = G4RunManager::GetRunManager(); -#ifdef G4MULTITHREADED - if (G4Threading::IsMultithreadedApplication()) { - runMan = G4MTRunManager::GetMasterRunManager(); - } -#endif + G4RunManager* runMan = G4RunManagerFactory::GetMasterRunManager(); if (!runMan) { // No run manager - shouldn't happen glFlush(); diff --git a/source/visualization/OpenGL/src/G4OpenGLStoredQtViewer.cc b/source/visualization/OpenGL/src/G4OpenGLStoredQtViewer.cc index a4c6a27582..d216ab4538 100644 --- a/source/visualization/OpenGL/src/G4OpenGLStoredQtViewer.cc +++ b/source/visualization/OpenGL/src/G4OpenGLStoredQtViewer.cc @@ -130,6 +130,9 @@ G4bool G4OpenGLStoredQtViewer::CompareForKernelVisit(G4ViewParameters& lastVP) // if status changes so that back plane culling can be switched. (lastVP.IsExplode () != fVP.IsExplode ()) || (lastVP.GetNoOfSides () != fVP.GetNoOfSides ()) || + (lastVP.GetGlobalMarkerScale() != fVP.GetGlobalMarkerScale()) || + (lastVP.GetGlobalLineWidthScale() != fVP.GetGlobalLineWidthScale()) || + (lastVP.IsMarkerNotHidden () != fVP.IsMarkerNotHidden ()) || (lastVP.GetDefaultVisAttributes()->GetColour() != fVP.GetDefaultVisAttributes()->GetColour()) || (lastVP.GetDefaultTextVisAttributes()->GetColour() != @@ -212,6 +215,7 @@ void G4OpenGLStoredQtViewer::ComputeView () { if (!fNeedKernelVisit) { KernelVisitDecision (); } + fLastVP = fVP; G4bool kernelVisitWasNeeded = fNeedKernelVisit; // Keep (ProcessView resets). ProcessView (); diff --git a/source/visualization/OpenGL/src/G4OpenGLStoredViewer.cc b/source/visualization/OpenGL/src/G4OpenGLStoredViewer.cc index a31a365911..a1b71bca5f 100644 --- a/source/visualization/OpenGL/src/G4OpenGLStoredViewer.cc +++ b/source/visualization/OpenGL/src/G4OpenGLStoredViewer.cc @@ -50,8 +50,7 @@ G4OpenGLViewer (sceneHandler), fG4OpenGLStoredSceneHandler (sceneHandler), fDepthTestEnable(true) { - fLastVP = fDefaultVP; // Not sure if this gets executed before or - // after G4VViewer::G4VViewer!! Doesn't matter much. + fLastVP = fDefaultVP; // Update in sub-class after KernelVisitDecision } G4OpenGLStoredViewer::~G4OpenGLStoredViewer () {} @@ -65,7 +64,6 @@ void G4OpenGLStoredViewer::KernelVisitDecision () { CompareForKernelVisit(fLastVP)) { NeedKernelVisit (); } - fLastVP = fVP; } G4bool G4OpenGLStoredViewer::CompareForKernelVisit(G4ViewParameters& lastVP) { @@ -89,6 +87,9 @@ G4bool G4OpenGLStoredViewer::CompareForKernelVisit(G4ViewParameters& lastVP) { // if status changes so that back plane culling can be switched. (lastVP.IsExplode () != fVP.IsExplode ()) || (lastVP.GetNoOfSides () != fVP.GetNoOfSides ()) || + (lastVP.GetGlobalMarkerScale() != fVP.GetGlobalMarkerScale()) || + (lastVP.GetGlobalLineWidthScale() != fVP.GetGlobalLineWidthScale()) || + (lastVP.IsMarkerNotHidden () != fVP.IsMarkerNotHidden ()) || (lastVP.GetDefaultVisAttributes()->GetColour() != fVP.GetDefaultVisAttributes()->GetColour()) || (lastVP.GetDefaultTextVisAttributes()->GetColour() != diff --git a/source/visualization/OpenGL/src/G4OpenGLStoredWin32Viewer.cc b/source/visualization/OpenGL/src/G4OpenGLStoredWin32Viewer.cc index 3bb0b753d4..5023edb8a5 100644 --- a/source/visualization/OpenGL/src/G4OpenGLStoredWin32Viewer.cc +++ b/source/visualization/OpenGL/src/G4OpenGLStoredWin32Viewer.cc @@ -75,6 +75,7 @@ void G4OpenGLStoredWin32Viewer::DrawView () { // /vis/viewer/rebuild, but if not, make decision and set flag only // if necessary... if (!fNeedKernelVisit) KernelVisitDecision (); + fLastVP = fVP; G4bool kernelVisitWasNeeded = fNeedKernelVisit; // Keep (ProcessView resets). ProcessView (); diff --git a/source/visualization/OpenGL/src/G4OpenGLStoredXViewer.cc b/source/visualization/OpenGL/src/G4OpenGLStoredXViewer.cc index af1c377ab9..8f0761a93c 100644 --- a/source/visualization/OpenGL/src/G4OpenGLStoredXViewer.cc +++ b/source/visualization/OpenGL/src/G4OpenGLStoredXViewer.cc @@ -85,6 +85,7 @@ void G4OpenGLStoredXViewer::DrawView () { // /vis/viewer/rebuild, but if not, make decision and set flag only // if necessary... if (!fNeedKernelVisit) KernelVisitDecision (); + fLastVP = fVP; G4bool kernelVisitWasNeeded = fNeedKernelVisit; // Keep (ProcessView resets). ProcessView (); diff --git a/source/visualization/OpenGL/src/G4OpenGLStoredXmViewer.cc b/source/visualization/OpenGL/src/G4OpenGLStoredXmViewer.cc index 6a911fabbc..029c4c5144 100644 --- a/source/visualization/OpenGL/src/G4OpenGLStoredXmViewer.cc +++ b/source/visualization/OpenGL/src/G4OpenGLStoredXmViewer.cc @@ -83,6 +83,7 @@ void G4OpenGLStoredXmViewer::DrawView () { // /vis/viewer/rebuild, but if not, make decision and set flag only // if necessary... if (!fNeedKernelVisit) KernelVisitDecision (); + fLastVP = fVP; G4bool kernelVisitWasNeeded = fNeedKernelVisit; // Keep (ProcessView resets). ProcessView (); diff --git a/source/visualization/OpenGL/src/G4OpenGLWtViewer.cc b/source/visualization/OpenGL/src/G4OpenGLWtViewer.cc index d3cd8a57e9..9844db1de9 100644 --- a/source/visualization/OpenGL/src/G4OpenGLWtViewer.cc +++ b/source/visualization/OpenGL/src/G4OpenGLWtViewer.cc @@ -326,7 +326,7 @@ void G4OpenGLWtViewer::createPopupMenu() { WAction *nurbs = mRepresentation->addAction("NURBS"); WAction *ortho = mProjection->addAction("Orthographic"); - WAction *perspective = mProjection->addAction("Persepective"); + WAction *perspective = mProjection->addAction("Perspective"); // INIT mRepresentation G4ViewParameters::RepStyle style; @@ -2098,7 +2098,7 @@ bool G4OpenGLWtViewer::generateMpegEncoderParameters () { fprintf (fp,"# this must be ORIGINAL or DECODED\n"); fprintf (fp,"REFERENCE_FRAME ORIGINAL\n"); fprintf (fp,"\n"); - fprintf (fp,"# for parallel parameters see parallel.param in the exmaples subdirectory\n"); + fprintf (fp,"# for parallel parameters see parallel.param in the examples subdirectory\n"); fprintf (fp,"\n"); fprintf (fp,"# if you want constant bit-rate mode, specify it as follows (number is bits/sec):\n"); fprintf (fp,"#BIT_RATE 1000000\n"); diff --git a/source/visualization/OpenGL/src/G4VisFeaturesOfOpenGL.cc b/source/visualization/OpenGL/src/G4VisFeaturesOfOpenGL.cc index 0e8772161b..a61b6083eb 100644 --- a/source/visualization/OpenGL/src/G4VisFeaturesOfOpenGL.cc +++ b/source/visualization/OpenGL/src/G4VisFeaturesOfOpenGL.cc @@ -55,7 +55,7 @@ G4String G4VisFeaturesOfOpenGLSX () { G4String G4VisFeaturesOfOpenGLIXm () { return " Smart single buffered X Window, No Graphics Database." - "\n Advantages: resizeable, and has Motif-based view-control panel." + "\n Advantages: resizable, and has Motif-based view-control panel." "\n does not gobble server memory." "\n good for drawing steps and hits." "\n Disadvantages: currently locks out GEANT4 commands, until \"exit\"." @@ -66,7 +66,7 @@ G4String G4VisFeaturesOfOpenGLIXm () { G4String G4VisFeaturesOfOpenGLSXm () { return " Smart double buffered X Window with Graphics Database." - "\n Advantages: resizeable, and has Motif-based view-control panel." + "\n Advantages: resizable, and has Motif-based view-control panel." "\n uses display lists as graphics database." "\n fastest possible redraw, e.g., on simple change" "\n of viewpoint." diff --git a/source/visualization/OpenInventor/History b/source/visualization/OpenInventor/History index 5a6b95b471..99914417f3 100644 --- a/source/visualization/OpenInventor/History +++ b/source/visualization/OpenInventor/History @@ -18,6 +18,26 @@ committal in the CVS repository ! History file for visualization/OpenInventor ------------------------------------------- + +20 October 2020 Frederick Jones (openinventor-V10-06-11) +- Completed all the planned features of the OIQt viewer. +- This Qt based viewer implements all the functionality + of the older Xt/Xm based OIXE viewer and is ready to + be used as its replacement. + +18 September 2020 John Allison (openinventor-V10-06-10) +- Part of vis-V10-06-07. +- G4OpenInventorViewer.cc: + o CompareForKernelVisit; Force kernel visit if global parameters change. + . GlobalMarkerScale and GlobalLineWidthScale. + +07 September 2020 Gabriele Cosmo (openinventor-V10-06-09) +- Corrected condition for inclusion of GL headers in SbGL.h. + +28 August 2020 Ben Morgan (openinventor-V10-06-08) +- Ensure use of XQuartz/System GL on macOS with SoXt/SoQt + respectively. + 01 June 2020 Ben Morgan (openinventor-V10-06-07) - Use CMake AUTOMOC to automatically generate and compile Moc sources diff --git a/source/visualization/OpenInventor/include/G4OpenInventorQtExaminerViewer.hh b/source/visualization/OpenInventor/include/G4OpenInventorQtExaminerViewer.hh index 83188377cd..6926e118e6 100644 --- a/source/visualization/OpenInventor/include/G4OpenInventorQtExaminerViewer.hh +++ b/source/visualization/OpenInventor/include/G4OpenInventorQtExaminerViewer.hh @@ -32,60 +32,421 @@ #if defined (G4VIS_BUILD_OIQT_DRIVER) || defined (G4VIS_USE_OIQT) -//#include -//#include -//#include -//#include -//#include + +// Set up notification of event processing + +#include "G4VStateDependent.hh" + +class G4OpenInventorQtExaminerViewer; + +class HookEventProcState : public G4VStateDependent +{ +public: + HookEventProcState(G4OpenInventorQtExaminerViewer*); + ~HookEventProcState(); + virtual G4bool Notify(G4ApplicationState requestedState); +private: + G4OpenInventorQtExaminerViewer* viewer; +}; + + +#include "G4Types.hh" + +//#include "G4OpenInventorViewer.hh" + +#include +#include +#include +#include +#include #include #include #include +#include + class SoCoordinate3; class SoFont; class SoText2; class SoPointSet; -class G4OpenInventorQtExaminerViewer : public SoQtExaminerViewer { +class QWidget; +class QDialog; +class QMenuBar; +class QMenu; +class QAction; +class QListWidgetItem; +class QPushButton; +class QRadioButton; +class QMessageBox; +class QFont; + +// The Aux Window dialog created with Qt Designer: +class Ui_Dialog; + + +class G4OpenInventorQtExaminerViewer: public QObject, + public SoQtExaminerViewer { + + Q_OBJECT // friend class G4OpenInventorQtExaminerViewerMessenger; // FWJ - friend class G4OpenInventorQtViewer; + friend class G4OpenInventorQtViewer; + +private Q_SLOTS : + + void FileOpenBookmarkCB(); + void FileNewBookmarkCB(); + void FileLoadRefPathCB(); + void FileSaveRefPathCB(); + void FileLoadSceneGraphCB(); + void FileSaveSceneGraphCB(); + + void ToolsAnimateRefParticleCB(); + void ToolsRefPathStartCB(); + void ToolsRefPathInvertCB(); + + void HelpControlsCB(); + + // For added viewer buttons + void SaveViewPtCB(); + void NextViewPtCB(); + void PrevViewPtCB(); + void AbbrOutputCB(bool); // Includes mouse-over fcns + void PickRefPathCB(); + void SwitchWireFrameCB(bool); + + // Lists Window + void LoadBookmarkCB(QListWidgetItem*); + void DeleteBookmarkCB(); + void RenameBookmarkCB(); + void SortBookmarksCB(); + void LookAtSceneElementCB(QListWidgetItem*); private: - static G4OpenInventorQtExaminerViewer* viewer; - // void (*escapeCallback)(void *); - // void * examinerObject; - // SbBool lshiftdown, rshiftdown, lctrldown, rctrldown; + static G4OpenInventorQtExaminerViewer* viewer; + + void (*escapeCallback)(); + // void (*escapeCallback)(void*); + void* examinerObject; + SbBool lshiftdown, rshiftdown, lctrldown, rctrldown; + + QFont* font; + QMenuBar* menubar; + QMenu* filemenu; + QMenu* toolsmenu; + QMenu* etcmenu; + QMenu* helpmenu; + QMessageBox* helpmsgbox; + + bool externalQtApp; + + QAction* FileOpenBookmark; + QAction* FileNewBookmark; + QAction* FileLoadRefPath; + QAction* FileSaveRefPath; + QAction* FileLoadSceneGraph; + QAction* FileSaveSceneGraph; + + QAction* ToolsAnimateRefParticle; + QAction* ToolsRefPathStart; + QAction* ToolsRefPathInvert; + + // KEEP in the viewer + QAction* HelpControls; + + // Added viewer buttons + QPushButton* saveViewPtButton; + QPushButton* nextViewPtButton; + QPushButton* prevViewPtButton; + QPushButton* abbrOutputButton; + // QRadioButton* abbrOutputButton; + QPushButton* pickRefPathButton; + QPushButton* switchWireFrameButton; + // QRadioButton* switchWireFrameButton; + + QListWidgetItem* saveViewPtItem; + + Ui_Dialog* AuxWindowDialog; + QDialog* AuxWindow; public: - // Same constructor as the SoQtExaminerViewer - G4OpenInventorQtExaminerViewer(QWidget* parent = NULL, - const char* name = NULL, + G4OpenInventorQtExaminerViewer(QWidget* parent = NULL, + const char* name = NULL, SbBool embed = TRUE, SoQtFullViewer::BuildFlag flag = BUILD_ALL, - SoQtViewer::Type type = BROWSER); + SoQtViewer::Type type = BROWSER); + + ~G4OpenInventorQtExaminerViewer(); + + template void parseString(T &t, const std::string &s, bool &error); + + // Menubar information needed by G4OpenInventorQtViewer + // for common menu items: + QMenuBar* getMenubar() { return menubar; } + QMenu* getFileMenu() { return filemenu; } + QMenu* getEtcMenu() { return etcmenu; } + QFont* getFont() { return font; }; + + void setExternalQtApp() { externalQtApp = TRUE; } + + // Needed? + std::string saveScenegraphFileName; + std::string saveRefCoordsFileName; + + void addEscapeCallback(void (*cb)()); + // void addEscapeCallback(void (*cb)(void *), void *); + + bool abbrOutputFlag; + bool pickRefPathFlag; + bool viewingBeforePickRef; - ~G4OpenInventorQtExaminerViewer(); protected: - // FWJ why this? - // Same constructor as the SoQtExaminerViewer - // G4OpenInventorQtExaminerViewer(QWidget parent, - // const char *name, - // SbBool embed, - // SoQtFullViewer::BuildFlag flag, - // SoQtViewer::Type type, - // SbBool build); - - // FWJ try to handle events as in XtExaminerViewer - SbBool processSoEvent(const SoEvent* const event); + // FWJ Constructor with build flag added (as in parent) + // Need for this TBD. + // G4OpenInventorQtExaminerViewer(QWidget parent, + // const char *name, + // SbBool embed, + // SoQtFullViewer::BuildFlag flag, + // SoQtViewer::Type type, + // SbBool build); void construct(const SbBool build); void buildWidget(QWidget* parent); + virtual void afterRealizeHook(); + + HookEventProcState* hookBeamOn; + friend class HookEventProcState; + bool newEvents; + + static void sceneChangeCB(void*, SoSensor*); + + // FWJ try to handle events as in XtExaminerViewer + SbBool processSoEvent(const SoEvent* const event); + + void saveViewPt(char* name); + bool loadViewPts(); + void addViewPoints(); + void setViewPt(); + void writeViewPtIdx(); + void cleanUpAfterPrevFile(); + void deleteViewPt(char *vpName = NULL); + void renameViewPt(char *vpName); + void sortViewPts(std::vector); + + void moveCamera(float dist = 0, bool lookdown = false); + std::string curEltName; + SbVec3f camUpVec; + SbVec3f camDir; + void rotateCamera(); + void updateViewParams(SoKeyboardEvent::Key); + + static void mouseoverCB(void *aThis, SoEventCallback *eventCB); + static void pickingCB(void *aThis, SoEventCallback *eventCB); + + + // Animation + static void animateRefParticleCB(); + static void animateSensorCB(void *, SoSensor *); + static void animateSensorRotationCB(void *, SoSensor *); + void animateRefParticle(); + void saveCurCamera(); + void restoreCamera(); + double animateBtwPtsPeriod, speedStep; + void incSpeed(); + void decSpeed(); + + SoTimerSensor *animateSensor; + SoTimerSensor *animateSensorRotation; + SoNodeSensor *sceneChangeSensor; + SbVec3f camStartPos, camEndPos; + SbRotation camStartOrient, camEndOrient; + + void setReferencePath(SoLineSet*, SoCoordinate3*, bool append = false); + void setReferencePathZPos(); + void findAndSetRefPath(); + SoCoordinate3* getCoordsNode(SoFullPath *path); + void getSceneElements(); // reads elements from the scene graph + float sqrlen(const SbVec3f&); + void distanceToTrajectory(const SbVec3f&, float&, SbVec3f&, int&); + void sortElements(); + void createElementsList(); + // static void closeMainWindowCB(Widget, XtPointer, XtPointer); + void evenOutRefParticlePts(); + + // static void gotoRefPathStartCB(Widget, XtPointer, XtPointer); + void gotoRefPathStart(); + // static void invertRefPathCB(Widget, XtPointer, XtPointer); + void invertRefPath(); + + + enum CameraType { + PERSPECTIVE, + ORTHOGRAPHIC + }; + enum State { + GENERAL, + BEAMLINE, + VIEWPOINT, + ANIMATION, + REVERSED_ANIMATION, + PAUSED_ANIMATION, + ROTATING + }; + + // For storing the view point + struct viewPtData { + char* viewPtName; + int viewportMapping; + SbVec3f position; + SbRotation orientation; + float aspectRatio; + float nearDistance; + float farDistance; + float focalDistance; + CameraType camType; + float height; + }; + + struct sceneElement { + std::string name; + SoFullPath* path; + SbVec3f center; + float closestPointZCoord; + }; + + struct elementForSorting { + float closestPointZCoord; + SbVec3f closestPoint; + float smallestDistance; + float distanceToBeamlineStart; + std::string name; + + G4bool operator<(elementForSorting const &other) const + { + if (closestPointZCoord < other.closestPointZCoord) + return true; + if (closestPointZCoord > other.closestPointZCoord) + return false; + + // otherwise closestPointZCoord == other.closestPointZCoord. + // Compare the distances from the center of the element to + // the start of the beamline. + if (distanceToBeamlineStart < other.distanceToBeamlineStart) + return true; + if (distanceToBeamlineStart > other.distanceToBeamlineStart) + return false; + + // In case both closestPointZCoord and smallestDistance are + // equal, we have two exactly overlapping elements, if so + // the order doesn't matter + return true; + } + }; + + bool zcoordSetFlag; + + std::vector sceneElements; + std::vector viewPtList; + std::string fileName; + std::ifstream fileIn; + std::ofstream fileOut; + int viewPtIdx; + int MAX_VP_IDX; + int MAX_VP_NAME; + + // For storing coordinate points of the reference particle + std::vector refParticleTrajectory; + // For displaying distance during anim and beamline modes + std::vector refZPositions; + + int refParticleIdx; + int prevRefIdx; + float distance; + State currentState, prevState, beforePausing; + char* curViewPtName; + + int step; + SbVec3f prevPt; + SbVec3f prevParticleDir; + void* prevColorField; + + viewPtData camB4Animation; + bool returnToSaveVP; + bool returnToAnim; + SoCamera* myCam; + void setStartingPtForAnimation(); + float left_right, up_down; + SbVec3f rotAxis; // For 90 degree rotations + int rotCnt; // # of steps rotation is split into + + std::string viewPtAutoName(); + + ////////////////////////ANIM_SPEED_INDICATOR/////////////////////// + + SoSearchAction * searcher; + + SoNode * superimposition; + SoCoordinate3 * sgeometry; + SoScale * sscale; + + SoTranslation * stranslation; + SoTranslation * curInfoTrans; + SoTranslation * mouseOverTransSolid; + SoTranslation * mouseOverTransMaterial; + SoTranslation * mouseOverTransLogName; + SoTranslation * mouseOverTransZPos; + + // Used for 2 similar purposes: 1. Displays z position during animation + // 2. Displays name of the current viewpoint + SoText2 * curInfoText; + + // Need to use many different fields for mouseover + // because newlines are ignored when the scene is rendered + SoText2* mouseOverTextSolid; + SoText2* mouseOverTextMaterial; + SoText2* mouseOverTextLogName; + SoText2* mouseOverTextZPos; + + SoFont* curInfoFont; + SoFont* mouseOverFontSolid; + SoFont* mouseOverFontMaterial; + SoFont* mouseOverFontLogName; + SoFont* mouseOverFontZPos; + SoSwitch* axisSwitch; + SoSwitch* animSpeedOutlineSwitch; + SoSwitch* animSpeedSwitch; + SoSwitch* curInfoSwitch; + + SoNode* getSuperimpositionNode(SoNode*, const char* name); + + void superimpositionEvent(SoAction* action); + static void superimpositionCB(void* closure, SoAction* action); + + + virtual void actualRedraw(void); + void updateSpeedIndicator(void); + + float maxSpeed; + + ////////////////////////ANIM_SPEED_INDICATOR/////////////////////// + + // FWJ added for Ortho camera + float defaultHeight; + float defaultHeightAngle; + // FWJ add look-ahead for animation tracking on curves + G4int pathLookahead; + + // Used by G4 app during element rotations, stores previous view + SbVec3f upVector, offsetFromCenter, center; + bool rotUpVec; + + SoSeparator* newSceneGraph; }; diff --git a/source/visualization/OpenInventor/include/G4OpenInventorQtViewer.hh b/source/visualization/OpenInventor/include/G4OpenInventorQtViewer.hh index 93ad218e1b..4c3a00c9b7 100644 --- a/source/visualization/OpenInventor/include/G4OpenInventorQtViewer.hh +++ b/source/visualization/OpenInventor/include/G4OpenInventorQtViewer.hh @@ -34,24 +34,76 @@ // Inheritance : #include "G4OpenInventorViewer.hh" -// This causes clash with enum CursorShape in qnamespace.h ! -//#include - #include //class SoQtExaminerViewer; class G4OpenInventorQtExaminerViewer; -class G4OpenInventorQtViewer: public G4OpenInventorViewer { +#include + +class QMenuBar; +class QFont; +class QAction; + + +//class G4OpenInventorQtViewer: public G4OpenInventorViewer { +class G4OpenInventorQtViewer: public QObject, + public G4OpenInventorViewer { + + Q_OBJECT + +private Q_SLOTS : + + // File menu + void FileWritePSCB(); + void FileWritePDFCB(); + void FileWriteIVCB(); + void FileEscapeCB(); + + // Etc menu + void EtcEraseDetectorCB(); + void EtcEraseEventCB(); + void EtcSetSolidCB(); + void EtcSetReducedWireframeCB(); + void EtcSetFullWireframeCB(); + void EtcVisibMInvisibDCB(); + void EtcVisibMVisibDCB(); + void EtcUpdateSceneCB(); + void EtcSceneGraphStatsCB(); + +private: + + // File menu + QAction* FileWritePS; + QAction* FileWritePDF; + QAction* FileWriteIV; + QAction* FileEscape; + + // Etc menu + QAction* EtcEraseDetector; + QAction* EtcEraseEvent; + QAction* EtcSetSolid; + QAction* EtcSetReducedWireframe; + QAction* EtcSetFullWireframe; + QAction* EtcVisibMInvisibD; + QAction* EtcVisibMVisibD; + QAction* EtcUpdateScene; + QAction* EtcSceneGraphStats; + public: + G4OpenInventorQtViewer(G4OpenInventorSceneHandler& scene, const G4String& name = ""); virtual ~G4OpenInventorQtViewer(); void Initialise(); + public: //G4VViewer + virtual void FinishView(); virtual void SetView(); + protected: + virtual void ViewerRender(); virtual SoCamera* GetCamera(); @@ -60,29 +112,6 @@ protected: //SoQtExaminerViewer* fViewer; G4OpenInventorQtExaminerViewer* fViewer; - // FWJ from OpenInventorXtViewer.hh - // Widget AddMenu(Widget,const G4String&,const G4String&); - // void AddButton(Widget,const G4String&,XtCallbackProc); - // static void PostScriptCbk(Widget,XtPointer,XtPointer); - // static void PixmapPostScriptCbk(Widget,XtPointer,XtPointer); - // static void WriteInventorCbk(Widget,XtPointer,XtPointer); - // static void EscapeCbk(Widget,XtPointer,XtPointer); - // static void SceneGraphStatisticsCbk(Widget,XtPointer,XtPointer); - // static void EraseDetectorCbk(Widget,XtPointer,XtPointer); - // static void EraseEventCbk(Widget,XtPointer,XtPointer); - // static void SetSolidCbk(Widget,XtPointer,XtPointer); - // static void SetWireFrameCbk(Widget,XtPointer,XtPointer); - // static void SetReducedWireFrameCbk(Widget,XtPointer,XtPointer); - // static void SetFullWireFrameCbk(Widget,XtPointer,XtPointer); - // static void UpdateSceneCbk(Widget,XtPointer,XtPointer); - // static void HelpCbk(Widget,XtPointer,XtPointer); - // static void HelpCancelCbk(Widget,XtPointer,XtPointer); - // static void SetPreviewCbk(Widget,XtPointer,XtPointer); - // static void SetPreviewAndFullCbk(Widget,XtPointer,XtPointer); - // Widget fShell; - // Widget fHelpForm; - // Widget fHelpForm; - // Widget fHelpText; }; #endif diff --git a/source/visualization/OpenInventor/include/G4SoQt.hh b/source/visualization/OpenInventor/include/G4SoQt.hh index f651a1f090..5ab8b45633 100644 --- a/source/visualization/OpenInventor/include/G4SoQt.hh +++ b/source/visualization/OpenInventor/include/G4SoQt.hh @@ -47,6 +47,7 @@ class QString; class G4SoQt : public G4VInteractorManager { public: + virtual ~G4SoQt(); static G4SoQt* getInstance(); // FWJ no command line args for time being // static G4SoQt* getInstance(int, char**, char*); @@ -54,7 +55,8 @@ public: void* GetEvent(); void FlushAndWaitExecution(); void SecondaryLoop(); - virtual ~G4SoQt(); + // Added direct exit method + void ExitSecondaryLoop(); bool IsExternalApp(); private: diff --git a/source/visualization/OpenInventor/include/HEPVis/SbGL.h b/source/visualization/OpenInventor/include/HEPVis/SbGL.h index 2ea6c14109..ed6b1d8dbf 100644 --- a/source/visualization/OpenInventor/include/HEPVis/SbGL.h +++ b/source/visualization/OpenInventor/include/HEPVis/SbGL.h @@ -24,15 +24,18 @@ // ******************************************************************** // #ifndef HEPVis_SbGL_h -#define HEPVis_SbGL_h +#define HEPVis_SbGL_h #ifdef WIN32 #include #endif -#ifdef APPLE_GL -#include -#include +// Needs setting based on choice of driver +// Apple system for SoQt on Apple +// Native otherwise (Apple Framework) +#if defined(__APPLE__) && (!defined(G4VIS_BUILD_OIX_DRIVER) || !defined(G4VIS_USE_OIX_DRIVER)) +#include +#include #else #include #include diff --git a/source/visualization/OpenInventor/include/ui_OIQtListsDialog.h b/source/visualization/OpenInventor/include/ui_OIQtListsDialog.h new file mode 100644 index 0000000000..1799e15bb2 --- /dev/null +++ b/source/visualization/OpenInventor/include/ui_OIQtListsDialog.h @@ -0,0 +1,171 @@ +/******************************************************************************** +** Form generated from reading UI file 'OIQtListsDialogwS1786.ui' +** +** Created by: Qt User Interface Compiler version 5.6.1 +** +** WARNING! All changes made in this file will be lost when recompiling UI file! +********************************************************************************/ + +#ifndef OIQTLISTSDIALOGWS1786_H +#define OIQTLISTSDIALOGWS1786_H + +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include + +QT_BEGIN_NAMESPACE + +class Ui_Dialog +{ +public: + QWidget *horizontalLayoutWidget; + QHBoxLayout *horizontalLayout; + QPushButton *pushButton_2; + QPushButton *pushButton_3; + QPushButton *pushButton; + QWidget *layoutWidget; + QFormLayout *formLayout; + QLabel *label; + QLineEdit *lineEdit; + QListWidget *listWidget; + QWidget *layoutWidget1; + QFormLayout *formLayout_2; + QLabel *label_2; + QListWidget *listWidget1; + + void setupUi(QDialog *Dialog) + { + if (Dialog->objectName().isEmpty()) + Dialog->setObjectName(QStringLiteral("Dialog")); + Dialog->resize(224, 554); + QFont font; + font.setPointSize(12); + Dialog->setFont(font); + horizontalLayoutWidget = new QWidget(Dialog); + horizontalLayoutWidget->setObjectName(QStringLiteral("horizontalLayoutWidget")); + horizontalLayoutWidget->setGeometry(QRect(10, 260, 201, 26)); + horizontalLayout = new QHBoxLayout(horizontalLayoutWidget); + horizontalLayout->setSpacing(8); + horizontalLayout->setObjectName(QStringLiteral("horizontalLayout")); + horizontalLayout->setSizeConstraint(QLayout::SetMaximumSize); + horizontalLayout->setContentsMargins(0, 0, 0, 0); + pushButton_2 = new QPushButton(horizontalLayoutWidget); + pushButton_2->setObjectName(QStringLiteral("pushButton_2")); + QSizePolicy sizePolicy(QSizePolicy::Preferred, QSizePolicy::Fixed); + sizePolicy.setHorizontalStretch(0); + sizePolicy.setVerticalStretch(0); + sizePolicy.setHeightForWidth(pushButton_2->sizePolicy().hasHeightForWidth()); + pushButton_2->setSizePolicy(sizePolicy); + pushButton_2->setStyleSheet(QStringLiteral("font: 12pt \"Sans Serif\";")); + + horizontalLayout->addWidget(pushButton_2); + + pushButton_3 = new QPushButton(horizontalLayoutWidget); + pushButton_3->setObjectName(QStringLiteral("pushButton_3")); + sizePolicy.setHeightForWidth(pushButton_3->sizePolicy().hasHeightForWidth()); + pushButton_3->setSizePolicy(sizePolicy); + pushButton_3->setStyleSheet(QStringLiteral("font: 12pt \"Sans Serif\";")); + + horizontalLayout->addWidget(pushButton_3); + + pushButton = new QPushButton(horizontalLayoutWidget); + pushButton->setObjectName(QStringLiteral("pushButton")); + sizePolicy.setHeightForWidth(pushButton->sizePolicy().hasHeightForWidth()); + pushButton->setSizePolicy(sizePolicy); + pushButton->setStyleSheet(QStringLiteral("font: 12pt \"Sans Serif\";")); + + horizontalLayout->addWidget(pushButton); + + layoutWidget = new QWidget(Dialog); + layoutWidget->setObjectName(QStringLiteral("layoutWidget")); + layoutWidget->setGeometry(QRect(10, 10, 201, 241)); + formLayout = new QFormLayout(layoutWidget); + formLayout->setObjectName(QStringLiteral("formLayout")); + formLayout->setFieldGrowthPolicy(QFormLayout::ExpandingFieldsGrow); + formLayout->setContentsMargins(0, 0, 0, 0); + label = new QLabel(layoutWidget); + label->setObjectName(QStringLiteral("label")); + label->setStyleSheet(QStringLiteral("font: 12pt \"Sans Serif\";")); + + formLayout->setWidget(0, QFormLayout::LabelRole, label); + + lineEdit = new QLineEdit(layoutWidget); + lineEdit->setObjectName(QStringLiteral("lineEdit")); + lineEdit->setStyleSheet(QStringLiteral("font: 12pt \"Sans Serif\";")); + lineEdit->setReadOnly(true); + + formLayout->setWidget(1, QFormLayout::SpanningRole, lineEdit); + + listWidget = new QListWidget(layoutWidget); + listWidget->setObjectName(QStringLiteral("listWidget")); + listWidget->setFont(font); + + formLayout->setWidget(3, QFormLayout::SpanningRole, listWidget); + + layoutWidget1 = new QWidget(Dialog); + layoutWidget1->setObjectName(QStringLiteral("layoutWidget1")); + layoutWidget1->setGeometry(QRect(10, 300, 201, 241)); + formLayout_2 = new QFormLayout(layoutWidget1); + formLayout_2->setObjectName(QStringLiteral("formLayout_2")); + formLayout_2->setContentsMargins(0, 0, 0, 0); + label_2 = new QLabel(layoutWidget1); + label_2->setObjectName(QStringLiteral("label_2")); + label_2->setStyleSheet(QStringLiteral("font: 12pt \"Sans Serif\";")); + + formLayout_2->setWidget(0, QFormLayout::LabelRole, label_2); + + listWidget1 = new QListWidget(layoutWidget1); + listWidget1->setObjectName(QStringLiteral("listWidget1")); + QSizePolicy sizePolicy1(QSizePolicy::Expanding, QSizePolicy::Expanding); + sizePolicy1.setHorizontalStretch(1); + sizePolicy1.setVerticalStretch(1); + sizePolicy1.setHeightForWidth(listWidget1->sizePolicy().hasHeightForWidth()); + listWidget1->setSizePolicy(sizePolicy1); + listWidget1->setFont(font); + + formLayout_2->setWidget(1, QFormLayout::SpanningRole, listWidget1); + + + retranslateUi(Dialog); + + QMetaObject::connectSlotsByName(Dialog); + } // setupUi + + void retranslateUi(QDialog *Dialog) + { + Dialog->setWindowTitle(QApplication::translate("Dialog", "OIQt", 0)); +#ifndef QT_NO_TOOLTIP + pushButton_2->setToolTip(QApplication::translate("Dialog", "Delete bookmark", 0)); +#endif // QT_NO_TOOLTIP + pushButton_2->setText(QApplication::translate("Dialog", "Del", 0)); +#ifndef QT_NO_TOOLTIP + pushButton_3->setToolTip(QApplication::translate("Dialog", "Rename bookmark", 0)); +#endif // QT_NO_TOOLTIP + pushButton_3->setText(QApplication::translate("Dialog", "Ren", 0)); +#ifndef QT_NO_TOOLTIP + pushButton->setToolTip(QApplication::translate("Dialog", "Sort bookmarks", 0)); +#endif // QT_NO_TOOLTIP + pushButton->setText(QApplication::translate("Dialog", "Sort", 0)); + label->setText(QApplication::translate("Dialog", "Bookmarks", 0)); + label_2->setText(QApplication::translate("Dialog", "Elements [S mm]", 0)); + } // retranslateUi + +}; + +namespace Ui { + class Dialog: public Ui_Dialog {}; +} // namespace Ui + +QT_END_NAMESPACE + +#endif // OIQTLISTSDIALOGWS1786_H diff --git a/source/visualization/OpenInventor/sources.cmake b/source/visualization/OpenInventor/sources.cmake index d321ca5baf..5f34ef4e39 100644 --- a/source/visualization/OpenInventor/sources.cmake +++ b/source/visualization/OpenInventor/sources.cmake @@ -3,19 +3,6 @@ # Package: Geant4.src.G4visualization.G4OpenInventor #------------------------------------------------------------------------------ -#---------------------------------------------------------------------------- -# Generic Inventor Headers, base library, OpenGL and Geant4 defines -# -include_directories(${INVENTOR_INCLUDE_DIR}) -set(G4VIS_MODULE_OPENINVENTOR_INCLUDE_DIRS ${INVENTOR_INCLUDE_DIR}) -set(G4VIS_MODULE_OPENINVENTOR_LINK_LIBRARIES ${INVENTOR_LIBRARY}) - -include_directories(${OPENGL_INCLUDE_DIR}) -list(APPEND G4VIS_MODULE_OPENINVENTOR_INCLUDE_DIRS ${OPENGL_INCLUDE_DIR}) -list(APPEND G4VIS_MODULE_OPENINVENTOR_LINK_LIBRARIES ${OPENGL_LIBRARIES}) - -add_definitions(-DG4VIS_BUILD_OI_DRIVER) - #---------------------------------------------------------------------------- # Geant4 OpenInventor Core sources and headers (all platforms) # @@ -54,100 +41,87 @@ set(G4VIS_MODULE_OPENINVENTOR_SOURCES SoTubs.cc ) - +set(G4VIS_MODULE_OPENINVENTOR_LINK_LIBRARIES Coin::Coin) +add_definitions(-DG4VIS_BUILD_OI_DRIVER) #---------------------------------------------------------------------------- # UNIX Only (Xt) sources # -if(UNIX) - if(NOT GEANT4_USE_INVENTOR_QT) - list(APPEND G4VIS_MODULE_OPENINVENTOR_HEADERS - G4OpenInventorX.hh - G4OpenInventorXt.hh - G4OpenInventorXtExaminerViewerMessenger.hh - G4OpenInventorXtExaminerViewer.hh - G4OpenInventorXtExtended.hh - G4OpenInventorXtExtendedViewer.hh - G4OpenInventorXtViewer.hh - wheelmouse.h - SoXtInternal.h - console.h - favorites.h - saveViewPt.h - pickext.h - pickref.h - wireframe.h - ) +if(GEANT4_USE_INVENTOR_XT) + list(APPEND G4VIS_MODULE_OPENINVENTOR_HEADERS + G4OpenInventorX.hh + G4OpenInventorXt.hh + G4OpenInventorXtExaminerViewerMessenger.hh + G4OpenInventorXtExaminerViewer.hh + G4OpenInventorXtExtended.hh + G4OpenInventorXtExtendedViewer.hh + G4OpenInventorXtViewer.hh + wheelmouse.h + SoXtInternal.h + console.h + favorites.h + saveViewPt.h + pickext.h + pickref.h + wireframe.h) - list(APPEND G4VIS_MODULE_OPENINVENTOR_SOURCES - G4OpenInventorXt.cc - G4OpenInventorXtExaminerViewer.cc - G4OpenInventorXtExaminerViewerMessenger.cc - G4OpenInventorXtExtended.cc - G4OpenInventorXtExtendedViewer.cc - G4OpenInventorXtViewer.cc - wheelmouse.cc - ) + list(APPEND G4VIS_MODULE_OPENINVENTOR_SOURCES + G4OpenInventorXt.cc + G4OpenInventorXtExaminerViewer.cc + G4OpenInventorXtExaminerViewerMessenger.cc + G4OpenInventorXtExtended.cc + G4OpenInventorXtExtendedViewer.cc + G4OpenInventorXtViewer.cc + wheelmouse.cc) # Add the definitions for SoXt - add_definitions(-DG4INTY_BUILD_XT) - add_definitions(-DG4VIS_BUILD_OIX_DRIVER) - - # SoXt Library - list(APPEND G4VIS_MODULE_OPENINVENTOR_LINK_LIBRARIES - ${INVENTOR_SOXT_LIBRARY} - ) - - # We also need Xm and X11 - include_directories(${X11_INCLUDE_DIR}) - include_directories(${MOTIF_INCLUDE_DIR}) - list(APPEND G4VIS_MODULE_OPENINVENTOR_INCLUDE_DIRS - ${OPENGL_INCLUDE_DIR} - ${MOTIF_INCLUDE_DIR} - ) - list(APPEND G4VIS_MODULE_OPENINVENTOR_LINK_LIBRARIES - ${MOTIF_LIBRARIES} - ${X11_LIBRARIES} - ${X11_Xpm_LIB} - ) + add_definitions(-DG4INTY_BUILD_XT) + add_definitions(-DG4VIS_BUILD_OIX_DRIVER) + # SoXt Library and others + list(APPEND G4VIS_MODULE_OPENINVENTOR_LINK_LIBRARIES SoXt::SoXt Motif::Xm) + if(APPLE) + list(APPEND G4VIS_MODULE_OPENINVENTOR_LINK_LIBRARIES XQuartzGL::GL) else() + list(APPEND G4VIS_MODULE_OPENINVENTOR_LINK_LIBRARIES OpenGL::GL) + endif() +endif() #---------------------------------------------------------------------------- # Open Inventor Qt # - list(APPEND G4VIS_MODULE_OPENINVENTOR_HEADERS - G4OpenInventorQt.hh - G4OpenInventorQtExaminerViewer.hh - G4OpenInventorQtViewer.hh - G4SoQt.hh - ) +if(GEANT4_USE_INVENTOR_QT) + list(APPEND G4VIS_MODULE_OPENINVENTOR_HEADERS + G4OpenInventorQt.hh + G4OpenInventorQtExaminerViewer.hh + G4OpenInventorQtViewer.hh + G4SoQt.hh + ui_OIQtListsDialog.h) - list(APPEND G4VIS_MODULE_OPENINVENTOR_SOURCES - G4OpenInventorQt.cc - G4OpenInventorQtExaminerViewer.cc - G4OpenInventorQtViewer.cc - G4SoQt.cc - ) + list(APPEND G4VIS_MODULE_OPENINVENTOR_SOURCES + G4OpenInventorQt.cc + G4OpenInventorQtExaminerViewer.cc + G4OpenInventorQtViewer.cc + G4SoQt.cc) - # Add the definitions - # Argh.. Have to remember about INTY and UI because of their use... - add_definitions(-DG4VIS_BUILD_OIQT_DRIVER) - add_definitions(-DG4INTY_BUILD_QT) - add_definitions(-DG4UI_BUILD_QT_SESSION) + # Add the definitions + # Argh.. Have to remember about INTY and UI because of their use... + add_definitions(-DG4VIS_BUILD_OIQT_DRIVER) + add_definitions(-DG4INTY_BUILD_QT) + add_definitions(-DG4UI_BUILD_QT_SESSION) - # Add in Qt libraries - list(APPEND G4VIS_MODULE_OPENINVENTOR_LINK_LIBRARIES - ${INVENTOR_SOQT_LIBRARY} - Qt5::OpenGL Qt5::Gui Qt5::PrintSupport Qt5::Widgets) - endif() + # Add libraries + list(APPEND G4VIS_MODULE_OPENINVENTOR_LINK_LIBRARIES + SoQt::SoQt + OpenGL::GL + Qt5::OpenGL Qt5::Gui Qt5::PrintSupport Qt5::Widgets) endif() #---------------------------------------------------------------------------- # WIN32 Only (Win32) sources # -if(WIN32) +if(GEANT4_USE_INVENTOR_WIN) set(G4VIS_MODULE_OPENINVENTOR_HEADERS ${G4VIS_MODULE_OPENINVENTOR_HEADERS} G4OpenInventorWin.hh @@ -161,16 +135,12 @@ if(WIN32) G4OpenInventorWinViewer.cc ) - # Add the include for SoWin - # Add the definitions for SoWin add_definitions(-DG4INTY_BUILD_WIN32) add_definitions(-DG4VIS_BUILD_OIWIN32_DRIVER) # SoWin Library - list(APPEND G4VIS_MODULE_OPENINVENTOR_LINK_LIBRARIES - ${INVENTOR_SOWIN_LIBRARY} - ) + list(APPEND G4VIS_MODULE_OPENINVENTOR_LINK_LIBRARIES SoWin::SoWin OpenGL::GL) endif() # diff --git a/source/visualization/OpenInventor/src/G4OpenInventorQtExaminerViewer.cc b/source/visualization/OpenInventor/src/G4OpenInventorQtExaminerViewer.cc index c86b26b5f7..2591a5bec6 100644 --- a/source/visualization/OpenInventor/src/G4OpenInventorQtExaminerViewer.cc +++ b/source/visualization/OpenInventor/src/G4OpenInventorQtExaminerViewer.cc @@ -30,11 +30,75 @@ #include "G4OpenInventorQtExaminerViewer.hh" +#include "ui_OIQtListsDialog.h" +//#include "ui_OIQTAuxWindowQT5.h" +#include "saveViewPt.h" +#include "pickext.h" +#include "pickref.h" +#include "wireframe.h" + +#include // For using sort on a vector + #include "G4ios.hh" +//#include "G4UImanager.hh" +//#include "G4UIQt.hh" #include +#include #include +#include +#include +#include +#include +#include + +// FWJ moved to header file +//#include +#include +#include +#include +#include +#include +#include + +#include // Animation +#include // Detect start of run + +#include "Geant4_SoPolyhedron.h" +#include "G4TrajectoryPoint.hh" +#include "G4AttHolder.hh" +#include "G4AttCheck.hh" + +#include +#include +#include +#include +#include +#include + +#include +// For rendering distance during animation: +#include +#include +#include +#include +#include + +// For searching for nodes within kits: +#include + + #include +#include +#include +#include +#include +#include +#include +#include +#include +#include +#include //#include #ifndef G4GMAKE @@ -43,13 +107,22 @@ G4OpenInventorQtExaminerViewer* G4OpenInventorQtExaminerViewer::viewer = 0; +#define MIN_SPEED 2.1 // Lower number means faster +#define START_STEP 0.3 +#define SPEED_INDICATOR_STEP 0.045 +#define MAX_SPEED_INDICATOR 0.81 +// Number of steps 90 degree rotation around an element is split into +#define ROT_CNT 6 + // Constructor G4OpenInventorQtExaminerViewer:: G4OpenInventorQtExaminerViewer(QWidget* parent, const char* name, SbBool embed, SoQtFullViewer::BuildFlag flag, SoQtViewer::Type type) - : SoQtExaminerViewer(parent, name, embed, flag, type) +// : SoQtExaminerViewer(parent, name, embed, BUILD_NONE, type) + : SoQtExaminerViewer(parent, name, embed, flag, type), + externalQtApp(0) { // FWJ DEBUG // G4cout << "G4OpenInventorQtExaminerViewer CONSTRUCTOR CALLED" << G4endl; @@ -75,7 +148,6 @@ G4OpenInventorQtExaminerViewer::~G4OpenInventorQtExaminerViewer() // animateSensor->unschedule(); // delete animateSensor; // delete sceneChangeSensor; - // // delete[] curViewPtName; // delete searcher; @@ -86,53 +158,3931 @@ G4OpenInventorQtExaminerViewer::~G4OpenInventorQtExaminerViewer() void G4OpenInventorQtExaminerViewer::construct(const SbBool) { // setClassName(thisClassName); + + hookBeamOn = new HookEventProcState(this); + newEvents = false; + buildWidget(getParentWidget()); + + // TRY TO EMBED IN Qt UI + // Works but dumps core on a subsequent vis/open OIQt + // auto UI = G4UImanager::GetUIpointer(); + // auto uiQt = dynamic_cast(UI->GetG4UIWindow()); + // if (uiQt) uiQt->AddTabWidget(getParentWidget(), "OIQt"); + + fileName = "bookmarkFile"; // Default viewpoint file name + viewPtIdx = -1; // index of the most recent viewpoint in viewPtList vector + + animateSensor = new SoTimerSensor(animateSensorCB, this); + animateSensorRotation = new SoTimerSensor(animateSensorRotationCB, this); + animateBtwPtsPeriod = MIN_SPEED; + + currentState = GENERAL; + myCam = new SoPerspectiveCamera; + MAX_VP_IDX = 3; + MAX_VP_NAME = 35; // Max length of a viewpoint name, padded with spaces + curViewPtName = new char[MAX_VP_NAME + 1]; + left_right = up_down = 0; // For movements around the beam during animation + speedStep = START_STEP; // For smoother animation speed increase/decrease + rotUpVec = false; // Used during scene element rotations + step = 1; //By default + // Used for moving along the beam with the + // mouse instead of rotating the view + lshiftdown = rshiftdown = false; + // Used for rotating the view with the camera + // staying in place + lctrldown = rctrldown = false; + // Used to send abbreviated output to the console when + abbrOutputFlag = false; + pickRefPathFlag = false; + prevColorField = NULL; + // warningFlag = false; // We come from the warning dialog + // myElementList = NULL; + // FWJ default path look-ahead + pathLookahead = 5; + + newSceneGraph = NULL; + zcoordSetFlag = false; + + //////////////////////////SUPERIMPOSED SCENE////////////////////////// + searcher = NULL; + // Used in animation; progressively scaled for gradual speed change + maxSpeed = 0.0f; + + static const char * superimposed[] = { + "#Inventor V2.1 ascii", "", + "Separator ", + "{", + " MaterialBinding ", + " {", + " value OVERALL", + " }", + " OrthographicCamera ", + " {", + " height 1", + " nearDistance 0", + " farDistance 1", + " }", + " DEF soxt->callback Callback { }", + " Separator ", + " {", + " DEF soxt->translation Translation ", + " {", + " translation 0 0 0", + " }", + " DEF soxt->scale Scale ", + " {", + " scaleFactor 1 1 1", + " }", + " DEF soxt->geometry Coordinate3 ", + " {", + " point ", + " [", + " -0.81 -0.04 0, -0.81 0 0,", + " -0.81 0.04 0, 0 -0.04 0,", + " 0 0 0, 0 0.04 0,", + " 0.81 -0.04 0, 0.81 0 0,", + " 0.81 0.04 0,", + " 0 0.02 0,", // idx 9 + " 0.81 0.02 0, 0.81 -0.02 0,", + " 0 -0.02 0,", + " 0 0.01 0,", // idx 13 + " 0.4 0.01 0, 0.4 -0.01 0,", + " 0 -0.01 0", + " ]", + " }", + // current speed indicator (outline) + " DEF soxt->animSpeedOutlineSwitch Switch ", + " {", + " whichChild -3", + " Material ", + " {", + " emissiveColor 0 0 0", + " }", + " IndexedFaceSet ", + " {", + " coordIndex ", + " [", + " 12, 11, 10, 9, -1", + " ]", + " }", + " }", + // the coordinate system + " DEF soxt->axisSwitch Switch ", + " {", + " whichChild -3", + " BaseColor ", + " {", + " rgb 1 1 1", + " }", + " IndexedLineSet ", + " {", + " coordIndex ", + " [", + " 0, 2, -1,", + " 3, 5, -1,", + " 6, 8, -1,", + " 1, 7, -1", + " ]", + " }", + " }", + // current speed indicator + " DEF soxt->animSpeedSwitch Switch ", + " {", + " whichChild -3", + " Material ", + " {", + " emissiveColor 0 1 0", + " }", + " IndexedFaceSet ", + " {", + " coordIndex ", + " [", + " 16, 15, 14, 13, -1", + " ]", + " }", + " }", + " }", + // For displaying either z position (during animation) or current viewpoint name + " DEF soxt->curInfoSwitch Switch ", + " {", + " whichChild -3", + " DEF soxt->curInfoTrans Translation ", + " {", + " translation 0 0 0 ", + // " translation 10 20 30 ", + " }", + " DEF soxt->curInfoFont Font ", + " {", + " name defaultFont:Bold", + " size 16", + " }", + " DEF soxt->curInfoText Text2 ", + " {", + " string Hello", + " }", + " }", + // Need to use different fields for mouseover + // because newlines are ignored when the scene is rendered + " Separator ", + " {", + " DEF soxt->mouseOverTransLogName Translation ", + " {", + " translation 0 0 0 ", + " }", + " DEF soxt->mouseOverFontLogName Font ", + " {", + " name defaultFont:Bold", + " size 16", + " }", + " DEF soxt->mouseOverTextLogName Text2 { } ", + " }", + " Separator ", + " {", + " DEF soxt->mouseOverTransSolid Translation ", + " {", + " translation 0 0 0 ", + " }", + " DEF soxt->mouseOverFontSolid Font ", + " {", + " name defaultFont:Bold", + " size 16", + " }", + " DEF soxt->mouseOverTextSolid Text2 { } ", + " }", + " Separator ", + " {", + " DEF soxt->mouseOverTransMaterial Translation ", + " {", + " translation 0 0 0 ", + " }", + " DEF soxt->mouseOverFontMaterial Font ", + " {", + " name defaultFont:Bold", + " size 16", + " }", + " DEF soxt->mouseOverTextMaterial Text2 { } ", + " }", + " Separator ", + " {", + " DEF soxt->mouseOverTransZPos Translation ", + " {", + " translation 0 0 0 ", + " }", + " DEF soxt->mouseOverFontZPos Font ", + " {", + " name defaultFont:Bold", + " size 16", + " }", + " DEF soxt->mouseOverTextZPos Text2 { } ", + " }", + "}", NULL + }; + + int i, bufsize; + for (i = bufsize = 0; superimposed[i]; i++) + bufsize += strlen(superimposed[i]) + 1; + char * buf = new char[bufsize + 1]; + for (i = bufsize = 0; superimposed[i]; i++) { + strcpy(buf + bufsize, superimposed[i]); + bufsize += strlen(superimposed[i]); + buf[bufsize] = '\n'; + bufsize++; + } + SoInput * input = new SoInput; + input->setBuffer(buf, bufsize); + SbBool ok = SoDB::read(input, superimposition); + (void)ok; // FWJ added to avoid compiler warning + assert(ok); + delete input; + delete[] buf; + superimposition->ref(); + + sscale = (SoScale *) getSuperimpositionNode(superimposition, "soxt->scale"); + stranslation = (SoTranslation *) getSuperimpositionNode(superimposition, "soxt->translation"); + sgeometry = (SoCoordinate3 *) getSuperimpositionNode(superimposition, "soxt->geometry"); + axisSwitch = (SoSwitch *) getSuperimpositionNode(superimposition, "soxt->axisSwitch"); + animSpeedOutlineSwitch = (SoSwitch *) getSuperimpositionNode(superimposition, "soxt->animSpeedOutlineSwitch"); + animSpeedSwitch = (SoSwitch *) getSuperimpositionNode(superimposition, "soxt->animSpeedSwitch"); + curInfoSwitch = (SoSwitch *) getSuperimpositionNode(superimposition, "soxt->curInfoSwitch"); + curInfoTrans = (SoTranslation *) getSuperimpositionNode(superimposition, "soxt->curInfoTrans"); + curInfoFont = (SoFont *) getSuperimpositionNode(superimposition, "soxt->curInfoFont"); + curInfoText = (SoText2 *) getSuperimpositionNode(superimposition, "soxt->curInfoText"); + mouseOverTransLogName = (SoTranslation*)getSuperimpositionNode(superimposition, "soxt->mouseOverTransLogName"); + mouseOverFontLogName = (SoFont *) getSuperimpositionNode(superimposition, "soxt->mouseOverFontLogName"); + mouseOverTextLogName = (SoText2 *) getSuperimpositionNode(superimposition, "soxt->mouseOverTextLogName"); + mouseOverTransSolid = (SoTranslation *) getSuperimpositionNode(superimposition, "soxt->mouseOverTransSolid"); + mouseOverFontSolid = (SoFont *) getSuperimpositionNode(superimposition, "soxt->mouseOverFontSolid"); + mouseOverTextSolid = (SoText2 *) getSuperimpositionNode(superimposition, "soxt->mouseOverTextSolid"); + mouseOverTransMaterial = (SoTranslation*)getSuperimpositionNode(superimposition, "soxt->mouseOverTransMaterial"); + mouseOverFontMaterial = (SoFont *) getSuperimpositionNode(superimposition, "soxt->mouseOverFontMaterial"); + mouseOverTextMaterial = (SoText2 *) getSuperimpositionNode(superimposition, "soxt->mouseOverTextMaterial"); + mouseOverTransZPos = (SoTranslation *) getSuperimpositionNode(superimposition, "soxt->mouseOverTransZPos"); + mouseOverFontZPos = (SoFont *) getSuperimpositionNode(superimposition, "soxt->mouseOverFontZPos"); + mouseOverTextZPos = (SoText2 *) getSuperimpositionNode(superimposition, "soxt->mouseOverTextZPos"); + + SoCallback * cb = (SoCallback *) getSuperimpositionNode(superimposition, "soxt->callback"); + cb->setCallback(superimpositionCB, this); + + addSuperimposition(superimposition); + setSuperimpositionEnabled(superimposition, FALSE); + axisSwitch->whichChild.setValue(SO_SWITCH_NONE); + animSpeedOutlineSwitch->whichChild.setValue(SO_SWITCH_NONE); + animSpeedSwitch->whichChild.setValue(SO_SWITCH_NONE); + + /////////////////////\SUPERIMPOSED SCENE/////////////////////////////////// + } -// Adds a menu bar and a few menu items to the viewer. +// Adds a menu bar and menu items to the viewer. void G4OpenInventorQtExaminerViewer::buildWidget(QWidget* parent) { if (!parent) SoDebugError::post("G4OpenInventorQtExaminerViewer::buildWidget", "Error: Parent is null."); -// CONTINUE HERE LATER - // QMenuBar* menubar = new QMenuBar(parent); + + // Common font for (almost) all widgets + font = new QFont; + font->setPointSize(12); + // This font setting does not propagate to added child widgets - Why? + parent->setFont(*font); + // This propagates everywhere but would affect UIQt! + // QApplication::setFont(*font); + +// MENU BAR + + menubar = new QMenuBar(getRenderAreaWidget()); + // menubar = new QMenuBar(parent); + // menubar = new QMenuBar(parent->parentWidget()); // G4cout << "G4OpenInventorQtExaminerViewer: GOT A menubar=" << - // menubar << G4endl; - // QMenu* filemenu = new QMenu("File"); - // menubar->addMenu(filemenu); - // - // filemenu->addAction(newAct); + // menubar << G4endl; + + filemenu = new QMenu("File"); + menubar->addMenu(filemenu); + + FileOpenBookmark = new QAction("Open Bookmark File", this); + FileOpenBookmark->setFont(*font); + connect(FileOpenBookmark, SIGNAL(triggered()), this, + SLOT(FileOpenBookmarkCB())); + filemenu->addAction(FileOpenBookmark); + + FileNewBookmark = new QAction("New Bookmark File", this); + FileNewBookmark->setFont(*font); + connect(FileNewBookmark, SIGNAL(triggered()), this, + SLOT(FileNewBookmarkCB())); + filemenu->addAction(FileNewBookmark); + + FileLoadRefPath = new QAction("Load Reference Path", this); + FileLoadRefPath->setFont(*font); + connect(FileLoadRefPath, SIGNAL(triggered()), this, + SLOT(FileLoadRefPathCB())); + filemenu->addAction(FileLoadRefPath); + + FileSaveRefPath = new QAction("Save Reference Path", this); + FileSaveRefPath->setFont(*font); + connect(FileSaveRefPath, SIGNAL(triggered()), this, + SLOT(FileSaveRefPathCB())); + filemenu->addAction(FileSaveRefPath); + + FileLoadSceneGraph = new QAction("Load scene graph", this); + FileLoadSceneGraph->setFont(*font); + connect(FileLoadSceneGraph, SIGNAL(triggered()), this, + SLOT(FileLoadSceneGraphCB())); + filemenu->addAction(FileLoadSceneGraph); + + FileSaveSceneGraph = new QAction("Save scene graph", this); + FileSaveSceneGraph->setFont(*font); + connect(FileSaveSceneGraph, SIGNAL(triggered()), this, + SLOT(FileSaveSceneGraphCB())); + filemenu->addAction(FileSaveSceneGraph); + + // Rest of File menu is done in G4OpenInventorQtViewer + + toolsmenu = new QMenu("Tools"); + menubar->addMenu(toolsmenu); + + ToolsAnimateRefParticle = new QAction("Fly on Ref Path", this); + ToolsAnimateRefParticle->setFont(*font); + connect(ToolsAnimateRefParticle, SIGNAL(triggered()), this, + SLOT(ToolsAnimateRefParticleCB())); + toolsmenu->addAction(ToolsAnimateRefParticle); + + ToolsRefPathStart = new QAction("Go to start of Ref Path", this); + ToolsRefPathStart->setFont(*font); + connect(ToolsRefPathStart, SIGNAL(triggered()), this, + SLOT(ToolsRefPathStartCB())); + toolsmenu->addAction(ToolsRefPathStart); + + ToolsRefPathInvert = new QAction("Invert Ref Path", this); + ToolsRefPathInvert->setFont(*font); + connect(ToolsRefPathInvert, SIGNAL(triggered()), this, + SLOT(ToolsRefPathInvertCB())); + toolsmenu->addAction(ToolsRefPathInvert); + + etcmenu = new QMenu("Etc"); + menubar->addMenu(etcmenu); + + // All Etc menu items are done in G4OpenInventorQtViewer + + helpmenu = new QMenu("Help"); + menubar->addMenu(helpmenu); + + HelpControls = new QAction("Controls", this); + HelpControls->setFont(*font); + connect(HelpControls, SIGNAL(triggered()), this, SLOT(HelpControlsCB())); + helpmenu->addAction(HelpControls); + + menubar->show(); + + // SoQtExaminerViewer::buildWidget(parent); + + // APP VIEWER BUTTONS have their own box on upper left + // The built in viewer button list is PRIVATE + + saveViewPtButton = new QPushButton; + saveViewPtButton->setIcon(QPixmap((const char **)saveViewPt_xpm)); + saveViewPtButton->setIconSize(QSize(24,24)); + saveViewPtButton->setToolTip("Bookmark this view"); + connect(saveViewPtButton, SIGNAL(clicked()), this, + SLOT(SaveViewPtCB())); + addAppPushButton(saveViewPtButton); + + nextViewPtButton = new QPushButton; + nextViewPtButton->setIconSize(QSize(24,24)); + QCommonStyle style; + nextViewPtButton->setIcon(style.standardIcon(QStyle::SP_ArrowRight)); + nextViewPtButton->setToolTip("Next bookmark"); + connect(nextViewPtButton, SIGNAL(clicked()), this, + SLOT(NextViewPtCB())); + addAppPushButton(nextViewPtButton); + + prevViewPtButton = new QPushButton; + prevViewPtButton->setIconSize(QSize(24,24)); + prevViewPtButton->setIcon(style.standardIcon(QStyle::SP_ArrowLeft)); + prevViewPtButton->setToolTip("Previous bookmark"); + connect(prevViewPtButton, SIGNAL(clicked()), this, + SLOT(PrevViewPtCB())); + addAppPushButton(prevViewPtButton); + + abbrOutputButton = new QPushButton; + // abbrOutputButton = new QRadioButton; + abbrOutputButton->setCheckable(true); + abbrOutputButton->setIconSize(QSize(24,24)); + abbrOutputButton->setIcon(QPixmap((const char **)pickext_xpm)); + abbrOutputButton->setToolTip("Extended picking & readout"); + connect(abbrOutputButton, SIGNAL(toggled(bool)), this, + SLOT(AbbrOutputCB(bool))); + addAppPushButton(abbrOutputButton); + + pickRefPathButton = new QPushButton; + pickRefPathButton->setIconSize(QSize(24,24)); + pickRefPathButton->setIcon(QPixmap((const char **)pickref_xpm)); + pickRefPathButton->setToolTip("Pick ref trajectory"); + connect(pickRefPathButton, SIGNAL(clicked()), this, + SLOT(PickRefPathCB())); + addAppPushButton(pickRefPathButton); + + switchWireFrameButton = new QPushButton; + // switchWireFrameButton = new QRadioButton; + switchWireFrameButton->setCheckable(true); + switchWireFrameButton->setIconSize(QSize(24,24)); + switchWireFrameButton->setIcon(QPixmap((const char **)wireframe_xpm)); + switchWireFrameButton->setToolTip("Switch wireframe/solid"); + connect(switchWireFrameButton, SIGNAL(toggled(bool)), this, + SLOT(SwitchWireFrameCB(bool))); + addAppPushButton(switchWireFrameButton); + + // HELP WINDOW + + helpmsgbox = new QMessageBox(getParentWidget()); + helpmsgbox->setWindowTitle("OIQt Controls"); + helpmsgbox->setFont(*font); + QString messagetxt = +"\nVIEWING mode (Hand cursor):\n\n\ + Left-button + pointer move: rotate\n\ + Shift+Left-button + pointer move: pan\n\ + Middle-button + pointer move: pan\n\ + Ctrl+Shift+Left-button + pointer move: zoom\n\ + Mouse wheel: zoom\n\ + Right-button: popup menu\n\n\ +PICKING mode (Arrow cursor):\n\n\ + Click on a volume: geometry readout\n\ + Click on a trajectory: particle & trajectory readout\n\ + Ctrl + click on a volume: see daughters.\n\ + Shift + click on a volume: see mother.\n\n\ +EXTENDED PICKING mode (Arrow+ viewer button):\n\n\ + Hover the mouse over a volume or trajectory for\n\ + overlayed readout.\n\n\ +ELEMENT NAVIGATION (requires Reference Path):\n\n\ + Click on element in list: centers view on element\n\ + Arrow keys: rotate in 90 degree steps around element \n\ + Shift + Right Arrow: move to next element\n\ + Shift + Left Arrow: move to previous element\n\n\ +FLY mode (requires Reference Path):\n\n\ + Page Up: Increase speed\n\ + Page Down: Decrease speed (& reverse if wanted)\n\ + Up Arrow: raise camera above path\n\ + Down Arror: lower camera below path\n\ + Escape: Exit fly mode"; + helpmsgbox->setText(messagetxt); + helpmsgbox->setModal(false); + // helpmsgbox->setWindowModality(Qt::NonModal); + + // AUXILIARY LISTS WINDOW + + // Bypass the namespace in order to make a persistent object + AuxWindowDialog = new Ui_Dialog; + // AuxWindowDialog = new Ui::Dialog; + // Ui::Dialog AuxWindowDialog; + AuxWindow = new QDialog(parent); + AuxWindowDialog->setupUi(AuxWindow); + + // SIGNALS + connect(AuxWindowDialog->listWidget, SIGNAL(itemClicked(QListWidgetItem*)), + this, SLOT(LoadBookmarkCB(QListWidgetItem*))); + connect(AuxWindowDialog->listWidget1, SIGNAL(itemClicked(QListWidgetItem*)), + this, SLOT(LookAtSceneElementCB(QListWidgetItem*))); + connect(AuxWindowDialog->pushButton_2, SIGNAL(clicked()), + this, SLOT(DeleteBookmarkCB())); + connect(AuxWindowDialog->pushButton_3, SIGNAL(clicked()), + this, SLOT(RenameBookmarkCB())); + connect(AuxWindowDialog->pushButton, SIGNAL(clicked()), + this, SLOT(SortBookmarksCB())); + + // AuxWindowDialog.setupUi(AuxWindow); + // NO AuxWindowDialog.setupUi(&AuxWindow); + // FWJ DEBUG + // G4cout << "CALLING SHOW() ON AUXWINDOW !!!!!!!!!!!!!!!!!!!!" << G4endl; + + // FWJ Better to do this after viewer window is realized + // AuxWindow->show(); + // AuxWindow->raise(); + // AuxWindow->activateWindow(); } -// FWJ try to handle events as in XtExaminerViewer +// Called right after buttons and widgets get realized. +// It sets the viewpoint last accessed. +void G4OpenInventorQtExaminerViewer::afterRealizeHook() +{ + SoQtExaminerViewer::afterRealizeHook(); + + // Default height is used when selecting and viewing scene elements + // FWJ Added defaultHeight for Ortho camera + SoCamera *cam = getCamera(); + if (cam) { + if (cam->isOfType(SoPerspectiveCamera::getClassTypeId())) { + defaultHeightAngle = + ((SoPerspectiveCamera *) cam)->heightAngle.getValue(); + toggleCameraType(); + defaultHeight = + ((SoOrthographicCamera *) cam)->height.getValue(); + toggleCameraType(); + } else { + defaultHeight = + ((SoOrthographicCamera *) cam)->height.getValue(); + toggleCameraType(); + cam = getCamera(); + if (cam->isOfType(SoPerspectiveCamera::getClassTypeId())) + defaultHeightAngle = + ((SoPerspectiveCamera *) cam)->heightAngle.getValue(); + toggleCameraType(); + } + } + + // Open the default bookmark file + fileIn.open(fileName.c_str()); + if (!fileIn.fail()) { + if (!loadViewPts()) { + QMessageBox msgbox; + msgbox.setFont(*font); + QString messagetxt = "Error reading bookmark file "; + messagetxt.append(QString(fileName.c_str())); + msgbox.setText(messagetxt); + msgbox.exec(); + } else { + // Opens a file without erasing it + fileOut.open(fileName.c_str(), std::ios::in); + fileOut.seekp(0, std::ios::end); // For appending new data to the end + // FWJ DEBUG + // G4cout << "afterRealizeHook: opened EXISTING bookmark file" + // << G4endl; + if (viewPtList.size()) { + // FWJ disabled auto-selection of first viewpoint. + // Initial view should be user-controllable & not forced + // setViewPt(); + addViewPoints(); + } + } + fileIn.close(); + } else { + // Creates a new default bookmark file + fileOut.open(fileName.c_str()); + // FWJ DEBUG + // G4cout << "afterRealizeHook: Opened a NEW bookmark file" << G4endl; + } + + fileIn.clear(); + + SoSeparator* root = (SoSeparator*) (getSceneManager()->getSceneGraph()); + if (root == NULL) + SoDebugError::post("G4OpenInventorQtExaminerViewer::afterRealizeHook", "Root is null."); + else { + root->addChild(myCam); // For position/orientation calculation during animation + } + + sceneChangeSensor = new SoNodeSensor; + sceneChangeSensor->setFunction(sceneChangeCB); + sceneChangeSensor->attach(root); + sceneChangeSensor->setData(this); + + ///////////////////////////// MOUSEOVER & PICK ///////////////////// + + // Monitor mouseover events for displaying the name of scene elements + // An SoEventCallback is needed instead of using the default processSoEvent + // because that last one does not provide us with an SoPath to the object + // that was picked + SoEventCallback *moCB = new SoEventCallback; + moCB->addEventCallback( + SoLocation2Event::getClassTypeId(), + mouseoverCB, static_cast(this)); + root->addChild(moCB); + + // Override the default picking mechanism present in G4OpenInventorViewer + // because we want abbreviated output when picking a trajectory + SoEventCallback *pickCB = new SoEventCallback; + pickCB->addEventCallback( + SoMouseButtonEvent::getClassTypeId(), + pickingCB, static_cast(this)); + root->addChild(pickCB); + + ///////////////////////////// MOUSEOVER & PICK ///////////////////// + + AuxWindow->show(); + AuxWindow->raise(); + AuxWindow->activateWindow(); +} + + +// This method locates a named node in the superimposed or original scene. +// FWJ RENAME THIS +SoNode* +G4OpenInventorQtExaminerViewer::getSuperimpositionNode(SoNode* root, + const char* name) +{ + if (!searcher) + searcher = new SoSearchAction; + searcher->reset(); + searcher->setName(SbName(name)); + searcher->setInterest(SoSearchAction::FIRST); + searcher->setSearchingAll(TRUE); + searcher->apply(root); + assert(searcher->getPath()); + return searcher->getPath()->getTail(); +} + + +// FWJ don't know why userdata is called "closure" +// It contains the this pointer! +void G4OpenInventorQtExaminerViewer::superimpositionCB(void * closure, + SoAction * action) +{ + if (closure) + ((G4OpenInventorQtExaminerViewer*)closure)->superimpositionEvent(action); +} + + +// Renders and positions speed indicator and longitudinal +// distance/viewpoint name on the drawing canvas +void G4OpenInventorQtExaminerViewer::superimpositionEvent(SoAction * action) +{ + + if (!action->isOfType(SoGLRenderAction::getClassTypeId())) + return; + SbViewportRegion vpRegion = + ((SoGLRenderAction*)action)->getViewportRegion(); + SbVec2s viewportSize = vpRegion.getViewportSizePixels(); + + // Aspect is WIDTH/HEIGHT + float aspect = float(viewportSize[0]) / float(viewportSize[1]); + + // FWJ DEBUG + // G4cout << "SPEVENT X0 Y0 DX DY aspect: " << vpRegion.getViewportOrigin()[0] << + // " " << vpRegion.getViewportOrigin()[1] << + // " " << viewportSize[0] << + // " " << viewportSize()[1] << + // " " << aspect << G4endl; + + // Translation and scale factor for animation speed indicator... + + float factorx = 1.0f / float(viewportSize[1]) * 220.0f; + float factory = factorx; + + if (aspect > 1.0f) { + stranslation->translation.setValue(SbVec3f(0.0f, -0.4f, 0.0f)); + } else { + stranslation->translation.setValue(SbVec3f(0.0f, -0.4f / aspect, 0.0f)); + factorx /= aspect; + factory /= aspect; + } + if (viewportSize[0] > 500) + factorx *= 500.0f / 400.0f; + else + factorx *= float(viewportSize[0]) / 400.0f; + + sscale->scaleFactor.setValue(SbVec3f(factorx, factory, 1.0f)); + + // TEXT OVERLAY... + + // FWJ Simplified and rewrote the following section to ease problems + // with the overlayed text after a viewer window resize. + // Result is now readable but needs further refinement of the scaling. + + float xInfo, yInfo, xLogName, yLogName, xSolid, ySolid, + xMaterial, yMaterial, xZPos, yZPos; + + // Base point for navigation distance or viewpoint name + // Origin is at center of render area. + xInfo = -.475; + yInfo = .475; + // Menu bar height in same coordinates: + float mbgap = 0.03; + if (aspect > 1.) xInfo = xInfo*aspect; + if (aspect < 1.) yInfo = yInfo/aspect; + yInfo = yInfo - mbgap*aspect; + + // Following are relative to above base point + xLogName = 0.0; + yLogName = -.88 + mbgap*aspect; + xSolid = 0.0; + ySolid = -.91 + mbgap*aspect; + xMaterial = 0.0; + yMaterial = -.94 + mbgap*aspect; + xZPos = 0.0; + yZPos = -.97 + mbgap*aspect; + + // Top line + curInfoTrans->translation.setValue(SbVec3f(xInfo, yInfo, 0.0)); + + // Bottom lines + mouseOverTransLogName->translation.setValue(SbVec3f(xLogName, yLogName, 0.0)); + mouseOverTransSolid->translation.setValue(SbVec3f(xSolid, ySolid, 0.0)); + mouseOverTransMaterial->translation.setValue(SbVec3f(xMaterial, yMaterial, 0.0)); + mouseOverTransZPos->translation.setValue(SbVec3f(xZPos, yZPos, 0.0)); + + if (currentState == VIEWPOINT) { // Displaying viewpoint name + curInfoFont->size.setValue(15); + curInfoFont->name.setValue("defaultFont:Italic"); + curInfoText->string.setValue(SbString(curViewPtName)); + } + else if(currentState == GENERAL) { // Displaying longitudinal distance + curInfoFont->size.setValue(16); + curInfoFont->name.setValue("defaultFont:Bold"); + curInfoText->string.setValue(SbString("")); + } + else { + if (refParticleIdx < (int) refParticleTrajectory.size() - 1) { + curInfoFont->size.setValue(16); + curInfoFont->name.setValue("defaultFont:Bold"); + char zPos[20]; + // FWJ need a better format here + sprintf(zPos, "%-7.2f [m]", refZPositions[refParticleIdx] / 1000); + // sprintf(zPos, "%7.2f [m]", refZPositions[refParticleIdx] / 1000); + curInfoText->string.setValue(SbString(zPos)); + } + } +} + + +// Loads view point data from a file into a vector. + +bool G4OpenInventorQtExaminerViewer::loadViewPts() +{ + bool error = false; + viewPtData tmp; + std::string token; + SbVec3f axis; + SbRotation orient; + float x, y, z, angle; + + // Gets the last view point accessed, stored in the first line of the data file. + fileIn >> token; + parseString(viewPtIdx, token, error); + getline(fileIn, token); // Remove "\n" + // Converts data from string type into necessary types + while (getline(fileIn, token)) { + + int end = token.find_last_not_of(' '); // Remove padded spaces + token = token.substr(0, end + 1); + + char *vpName = new char[token.size() + 1]; + strcpy(vpName, token.c_str()); + tmp.viewPtName = vpName; + fileIn >> token; + + parseString(x, token, error); + fileIn >> token; + parseString(y, token, error); + fileIn >> token; + parseString(z, token, error); + fileIn >> token; + tmp.position = axis.setValue(x, y, z); + + parseString(x, token, error); + fileIn >> token; + parseString(y, token, error); + fileIn >> token; + parseString(z, token, error); + fileIn >> token; + parseString(angle, token, error); + fileIn >> token; + orient.setValue(axis.setValue(x, y, z), angle); + tmp.orientation = orient.getValue(); + + int camType; + parseString(camType, token, error); + fileIn >> token; + tmp.camType = (CameraType) camType; + + parseString(tmp.height, token, error); + fileIn >> token; + parseString(tmp.focalDistance, token, error); + fileIn >> token; + parseString(tmp.nearDistance, token, error); + fileIn >> token; + parseString(tmp.farDistance, token, error); + fileIn >> token; + parseString(tmp.viewportMapping, token, error); + fileIn >> token; + parseString(tmp.aspectRatio, token, error); + + getline(fileIn, token); // To remove "\n" characters + getline(fileIn, token); + + if (error) { + viewPtIdx = 0; + viewPtList.clear(); + return false; + } + viewPtList.push_back(tmp); + } + + return true; +} + + +// Rotates camera 90 degrees around a scene element. +// Rotation is animated for smoothness. +void G4OpenInventorQtExaminerViewer::rotateCamera() +{ + SoCamera *cam = getCamera(); + + SbRotation rot(rotAxis, M_PI / (2 * ROT_CNT)); + rot.multVec(camDir, camDir); + rot.multVec(camUpVec, camUpVec); + + SbVec3f camPosNew = prevPt - (camDir*distance); + cam->position = camPosNew; + cam->pointAt(prevPt, camUpVec); + cam->focalDistance = (prevPt - camPosNew).length(); + + rotCnt--; + + if (animateSensorRotation->isScheduled()) { + animateSensorRotation->unschedule(); + } + + animateSensorRotation->setBaseTime(SbTime::getTimeOfDay()); + animateSensorRotation->setInterval(SbTime(0.02)); + animateSensorRotation->schedule(); + +} + + +// Slides camera along the beamline. +void G4OpenInventorQtExaminerViewer::moveCamera(float dist, bool lookdown) +{ + + SoCamera *cam = getCamera(); + SbVec3f p1, p2; // The particle moves from p1 to p2 + SbVec3f particleDir; // Direction vector from p1 to p2 + SbVec3f camPosNew; // New position of the camera + + if(refParticleTrajectory.size() == 0) { + //refParticleTrajectory hasn't been set yet + if(dist) + distance = dist; + else + distance = (cam->position.getValue() - center).length(); + + cam->position.setValue(center + offsetFromCenter*distance); + cam->focalDistance = (cam->position.getValue() - center).length(); + cam->pointAt(center, upVector); + } + else { + + // If we move forward past the last trajectory point, + // go back to the beginning + if (refParticleIdx >= (int) refParticleTrajectory.size() - 1) { + prevPt = refParticleTrajectory[refParticleIdx - step]; + dist = (prevPt - cam->position.getValue()).length(); + refParticleIdx = 0; + } + // If we move backward past the beginning, + // go to the last trajectory point + if (refParticleIdx < 0) { + prevPt = refParticleTrajectory[refParticleIdx + step]; + dist = (prevPt - cam->position.getValue()).length(); + refParticleIdx = refParticleTrajectory.size() - 2; + } + + // Set start and end points + p1 = refParticleTrajectory[refParticleIdx]; + p2 = refParticleTrajectory[refParticleIdx + step]; + + // Get the direction from p1 to p2 + particleDir = p2 - p1; + particleDir.normalize(); + + if(prevParticleDir == SbVec3f(0,0,0)) { + // First time entering BEAMLINE mode, look at + // the element from the front, with camera upright + if(lookdown) + camDir = SbVec3f(0,0,1); + else + camDir = SbVec3f(1,0,0); + camUpVec = SbVec3f(0,1,0); + + // In case the start of the goes in a + // direction other than +z, rotate the camera accordingly + SbRotation rot(SbVec3f(0,0,1), particleDir); + rot.multVec(camDir, camDir); + rot.multVec(camUpVec, camUpVec); + + } + else if(particleDir != prevParticleDir) { + // The beamline has changed direction + + SbRotation rot(prevParticleDir, particleDir); + rot.multVec(camDir, camDir); + rot.multVec(camUpVec, camUpVec); + + } + + if (cam->isOfType(SoPerspectiveCamera::getClassTypeId())) { + if (!dist) + distance = (prevPt - cam->position.getValue()).length(); + else + distance = dist; + } + + // FWJ distance not relevant -- use focalDistance + // if (cam->isOfType(SoOrthographicCamera::getClassTypeId())) { + // if (!dist) + // distance = (prevPt - cam->position.getValue()).length(); + // else + // distance = dist; + // } + + + float x,y,z; + prevPt.getValue(x,y,z); + + + if (cam->isOfType(SoPerspectiveCamera::getClassTypeId())) { + camPosNew = p2 - (camDir*distance); + } + if (cam->isOfType(SoOrthographicCamera::getClassTypeId())) { + // FWJ maintain focal distance + camPosNew = p2 - (camDir*cam->focalDistance.getValue()); + // camPosNew = p2 - (camDir); + } + + cam->position = camPosNew; + cam->pointAt(p2, camUpVec); + cam->focalDistance = (p2 - camPosNew).length(); + + p2.getValue(x,y,z); + camPosNew.getValue(x,y,z); + + prevParticleDir = particleDir; + prevPt = p1; // For accurate distance calculation + + } + +} + + +void G4OpenInventorQtExaminerViewer::pickingCB(void *aThis, + SoEventCallback *eventCB) +{ + SoHandleEventAction* action = eventCB->getAction(); + const SoPickedPoint *pp = action->getPickedPoint(); + G4OpenInventorQtExaminerViewer* This = (G4OpenInventorQtExaminerViewer*)aThis; + + if(pp != NULL) { + + SoPath* path = pp->getPath(); + SoNode* node = ((SoFullPath*)path)->getTail(); + + if(node->getTypeId() == SoLineSet::getClassTypeId()) { + + if(This->pickRefPathFlag) { + This->pickRefPathFlag = false; + if(This->viewingBeforePickRef != This->isViewing()) + This->setViewing(This->viewingBeforePickRef); + else + This->setComponentCursor(SoQtCursor(SoQtCursor::DEFAULT)); + + // The trajectory is a set of lines stored in a LineSet + SoLineSet * trajectory = (SoLineSet *)node; + // FWJ DEBUG + // G4cout << "FOUND trajectory LineSet" << trajectory << G4endl; + + // The set of all trajectories is stored in a Seperator group node + // one level above the LineSet that was picked. The nodes under that + // seperator are as follows (in this order): Material, LightModel, + // ResetTransform, MatrixTransform, Coordinate3, DrawStyle, LineSet + SoSeparator * grpNode = + (SoSeparator*)(((SoFullPath*)path)->getNodeFromTail(1)); + + // The node that contains the coordinates for the trajectory is a + // Coordinate3 node which occurs before the LineSet node. We iterate + // back through the nodes in the group until we find the Coordinate3 node + int nodeIndex = grpNode->findChild(trajectory); + SoNode * tmpNode; + // FWJ needs initialization + SoCoordinate3 * coords = 0; + // SoCoordinate3 * coords; + // We allow only 100 iterations, in case the node isn't found + // (should take only a few iterations) + for(int i = 0; i < 100; ++i) { + --nodeIndex; + + tmpNode = grpNode->getChild(nodeIndex); + if(tmpNode->getTypeId() == SoCoordinate3::getClassTypeId()) { + //node found + coords = (SoCoordinate3 *)tmpNode; + break; + } + } + + if(coords == NULL) { + G4cout << "Could not find the coordinates node" + " for the picked trajectory." << G4endl; + G4cout << " Reference trajectory not set" << G4endl; + return; + } + // FWJ DEBUG + // G4cout << "FOUND SoCoordinate3 node " << coords << G4endl; + + + if ((This->lshiftdown) || (This->rshiftdown)) + This->setReferencePath(trajectory, coords, true); //APPENDING + else + This->setReferencePath(trajectory, coords, false); + + return; + + } + else if(This->abbrOutputFlag) { + + G4AttHolder* attHolder = dynamic_cast(node); + if(attHolder && attHolder->GetAttDefs().size()) { + + std::string strTrajPoint = "G4TrajectoryPoint:"; + std::ostringstream oss; + for (size_t i = 0; i < attHolder->GetAttDefs().size(); ++i) { + G4cout << G4AttCheck(attHolder->GetAttValues()[i], + attHolder->GetAttDefs()[i]); + oss << G4AttCheck(attHolder->GetAttValues()[i], + attHolder->GetAttDefs()[i]); + if(oss.str().find(strTrajPoint) != std::string::npos) { + + // Last attribute displayed was a trajectory point. Since we + // want abbreviated output, display the last one and exit + // (unless we're already at the last (and only) trajectory point) + if(i != attHolder->GetAttDefs().size()-1) { + G4cout << G4AttCheck( + attHolder->GetAttValues()[attHolder->GetAttDefs().size()-1], + attHolder->GetAttDefs()[attHolder->GetAttDefs().size()-1]); + } + break; + } + } + } else { + G4String name((char*)node->getName().getString()); + G4String cls((char*)node->getTypeId().getName().getString()); + G4cout << "SoNode : " << node + << " SoType : " << cls + << " name : " << name + << G4endl; + G4cout << "No attributes attached." << G4endl; + } + + return; + } + else{ + //Go to default behavior + } + } + else { + //Go to default behavior + } + + // Default behavior in G4OpenInventorViewer::SelectionCB + G4AttHolder* attHolder = dynamic_cast(node); + if(attHolder && attHolder->GetAttDefs().size()) { + for (size_t i = 0; i < attHolder->GetAttDefs().size(); ++i) { + G4cout << G4AttCheck(attHolder->GetAttValues()[i], + attHolder->GetAttDefs()[i]); + } + } else { + G4String name((char*)node->getName().getString()); + G4String cls((char*)node->getTypeId().getName().getString()); + G4cout << "SoNode : " << node + << " SoType : " << cls + << " name : " << name + << G4endl; + G4cout << "No attributes attached." << G4endl; + } + + //Suppress other event handlers + eventCB->setHandled(); + } +} + + +void G4OpenInventorQtExaminerViewer::mouseoverCB(void *aThis, SoEventCallback *eventCB) +{ + SoHandleEventAction* action = eventCB->getAction(); + const SoPickedPoint* pp = action->getPickedPoint(); + G4OpenInventorQtExaminerViewer* This = (G4OpenInventorQtExaminerViewer*)aThis; + + if(!This->abbrOutputFlag) + return; + + if(pp != NULL) { + + const SbViewportRegion & viewportRegion = action->getViewportRegion(); + + std::string sLogName; + float x,y,z; + std::stringstream ssZPos; + std::stringstream ssSolids; + std::stringstream ssMaterials; + SoPath * path = pp->getPath(); + SoNode* node = ((SoFullPath*)path)->getTail(); + + if(node->getTypeId() == Geant4_SoPolyhedron::getClassTypeId()) { + + sLogName = "Logical Volume: "; + sLogName += ((Geant4_SoPolyhedron *)node)->getName().getString(); + + SoGetBoundingBoxAction bAction(viewportRegion); + bAction.apply((SoFullPath*)path); + SbBox3f bBox = bAction.getBoundingBox(); + SbVec3f center = bBox.getCenter(); + center.getValue(x,y,z); + ssZPos << "Pos: " << x << " " << y << " " << z; + + G4AttHolder* attHolder = dynamic_cast(node); + if(attHolder && attHolder->GetAttDefs().size()) { + + std::vector*> vecDefs = + attHolder->GetAttDefs(); + std::vector*> vecVals = + attHolder->GetAttValues(); + for (size_t i = 0; i < vecDefs.size(); ++i) { + const std::vector * vals = vecVals[i]; + + std::vector::const_iterator iValue; + + for (iValue = vals->begin(); iValue != vals->end(); ++iValue) { + const G4String& valueName = iValue->GetName(); + const G4String& value = iValue->GetValue(); + + if(valueName == "Solid") { + if(ssSolids.str() == "") + ssSolids << "Solid Name: " << value; + else + ssSolids << ", " << value; + } + + if(valueName == "Material") { + if(ssMaterials.str() == "") + ssMaterials << "Material Name: " << value; + else + ssMaterials << ", " << value; + } + } + } + } + } + // FWJ Mouseover for trajectories + else if(node->getTypeId() == SoLineSet::getClassTypeId()) { + // G4cout << "Trajectory!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!" << G4endl; + G4AttHolder* attHolder = dynamic_cast(node); + if(attHolder && attHolder->GetAttDefs().size()) { + std::string strTrajPoint = "G4TrajectoryPoint:"; + std::ostringstream oss; + G4String t1, t1Ch, t2, t3, t4; + for (size_t i = 0; i < attHolder->GetAttDefs().size(); ++i) { + // G4cout << "Getting index " << i << " from attHolder" << G4endl; + // No, returns a vector! G4AttValue* attValue = attHolder->GetAttValues()[i]; + const std::vector* vals = attHolder->GetAttValues()[i]; + std::vector::const_iterator iValue; + for (iValue = vals->begin(); iValue != vals->end(); ++iValue) { + const G4String& valueName = iValue->GetName(); + const G4String& value = iValue->GetValue(); + // G4cout << " valueName = " << valueName << G4endl; + // G4cout << " value = " << value << G4endl; + // LINE 1 + if (valueName == "PN") t1 = value; + if (valueName == "Ch") { + if (atof(value.c_str()) > 0) + t1Ch = " +"; + else + t1Ch = " "; + t1Ch += value; + } + if (valueName == "PDG") { + t1 += " "; + t1 += value; + t1 += t1Ch; + This->mouseOverTextLogName->string.setValue(t1); + } + // G4cout << " t1 = " << t1 << G4endl; + // LINE 2 + if (valueName == "EventID") t2 = "Evt " + value; + if (valueName == "ID") t2 += " Trk " + value; + if (valueName == "PID") { + t2 += " Prt " + value; + This->mouseOverTextSolid->string.setValue(t2); + } + // LINE 3 + if (valueName == "IKE") t3 = "KE " + value; + if (valueName == "IMom") { + // Remove units + unsigned ipos = value.rfind(" "); + G4String value1 = value; + value1.erase(ipos); + t3 += " P (" + value1 + ")"; + } + if (valueName == "IMag") { + t3 += " " + value + "/c"; + // t3 += " " + value; + This->mouseOverTextMaterial->string.setValue(t3); + } + // LINE 4 + if (valueName == "NTP") { + std::ostringstream t4oss; + t4oss << "TrjPts " << value; + t4oss << " Pos " << pp->getPoint()[0] << " " << pp->getPoint()[1] << + " " << pp->getPoint()[2]; + This->mouseOverTextZPos->string.setValue(SbString(t4oss.str().c_str())); + } + } +// G4cout << " NOW CALLING G4AttCheck" << G4endl; +// G4cout << G4AttCheck(attHolder->GetAttValues()[i], +// attHolder->GetAttDefs()[i]); +// oss << G4AttCheck(attHolder->GetAttValues()[i], +// attHolder->GetAttDefs()[i]); +// if(oss.str().find(strTrajPoint) != std::string::npos) { +// // Last attribute displayed was a trajectory point. Since we +// // want abbreviated output, display the last one and exit +// // (unless we're already at the last (and only) trajectory point) +// if(i != attHolder->GetAttDefs().size()-1) { +// G4cout << G4AttCheck( +// attHolder->GetAttValues()[attHolder->GetAttDefs().size()-1], +// attHolder->GetAttDefs()[attHolder->GetAttDefs().size()-1]); +// } +// break; +// } + } + } + This->setSuperimpositionEnabled(This->superimposition, TRUE); + This->scheduleRedraw(); + eventCB->setHandled(); + return; + } + + bool redraw = false; + if(std::string(This->mouseOverTextLogName->string.getValues(0)->getString()) != sLogName) { + This->mouseOverTextLogName->string.setValue(SbString(sLogName.c_str())); + redraw = true; + } + if(std::string(This->mouseOverTextSolid->string.getValues(0)->getString()) != ssSolids.str()) { + This->mouseOverTextSolid->string.setValue(SbString(ssSolids.str().c_str())); + redraw = true; + } + if(std::string(This->mouseOverTextMaterial->string.getValues(0)->getString()) != ssMaterials.str()) { + This->mouseOverTextMaterial->string.setValue(SbString(ssMaterials.str().c_str())); + redraw = true; + } + if(std::string(This->mouseOverTextZPos->string.getValues(0)->getString()) != ssZPos.str()) { + This->mouseOverTextZPos->string.setValue(SbString(ssZPos.str().c_str())); + redraw = true; + } + + if(redraw) { + This->setSuperimpositionEnabled(This->superimposition, TRUE); + This->scheduleRedraw(); + } + + eventCB->setHandled(); + } + else { + if(std::string(This->mouseOverTextLogName->string.getValues(0)->getString()) != "") { + This->mouseOverTextLogName->string.setValue(SbString("")); + This->scheduleRedraw(); + } + if(std::string(This->mouseOverTextSolid->string.getValues(0)->getString()) != "") { + This->mouseOverTextSolid->string.setValue(SbString("")); + This->scheduleRedraw(); + } + if(std::string(This->mouseOverTextMaterial->string.getValues(0)->getString()) != "") { + This->mouseOverTextMaterial->string.setValue(SbString("")); + This->scheduleRedraw(); + } + if(std::string(This->mouseOverTextZPos->string.getValues(0)->getString()) != "") { + This->mouseOverTextZPos->string.setValue(SbString("")); + This->scheduleRedraw(); + } + } +} + + +// Called by hitting PageUp during animation. +void G4OpenInventorQtExaminerViewer::incSpeed() { + if (std::ceil(animateBtwPtsPeriod * 100) >= 4) { + if (speedStep > 0.08) + speedStep -= 0.02; + else + speedStep = 0.02; + animateBtwPtsPeriod -= speedStep; + } else + animateBtwPtsPeriod = 0.0; + + if (currentState != PAUSED_ANIMATION) { + int lastIdx = refParticleTrajectory.size() - 1; + if (refParticleIdx < lastIdx && !animateSensor->isScheduled()) + animateRefParticle(); + } +} + +// Called by hitting PageDown during animation. +void G4OpenInventorQtExaminerViewer::decSpeed() { + animateBtwPtsPeriod += speedStep; + if (animateBtwPtsPeriod < MIN_SPEED) { + if (std::floor(animateBtwPtsPeriod * 100) == 12) { // Errors in double representation + speedStep = 0.08; + } else if (animateBtwPtsPeriod > 0.12) + speedStep += 0.02; + } else { + animateBtwPtsPeriod = MIN_SPEED; + speedStep = START_STEP; + maxSpeed = 0.0f; + if (animateSensor->isScheduled()) + animateSensor->unschedule(); + } +} + + +// Based on the user's interaction the speed indicator bar needs to be adjusted + +void G4OpenInventorQtExaminerViewer::updateSpeedIndicator(void) +{ + assert(this->sgeometry != NULL); + + SbVec3f * points = this->sgeometry->point.startEditing(); + + if (points[10][0] == 0.0f) + this->animSpeedOutlineSwitch->whichChild.setValue(SO_SWITCH_ALL); + if (points[14][0] == 0.0f) + this->animSpeedSwitch->whichChild.setValue(SO_SWITCH_ALL); + points[10][0] = this->maxSpeed; + points[11][0] = this->maxSpeed; + points[14][0] = this->maxSpeed; + points[15][0] = this->maxSpeed; + this->sgeometry->point.finishEditing(); + + if (this->maxSpeed == 0.0f) { + this->animSpeedOutlineSwitch->whichChild.setValue(SO_SWITCH_NONE); + this->animSpeedSwitch->whichChild.setValue(SO_SWITCH_NONE); + } +} + + +void G4OpenInventorQtExaminerViewer::actualRedraw(void) { + switch (currentState) { + case ANIMATION: + case REVERSED_ANIMATION: + case PAUSED_ANIMATION: + updateSpeedIndicator(); + SoQtExaminerViewer::actualRedraw(); + break; + default: + SoQtExaminerViewer::actualRedraw(); + break; + } +} + + +void G4OpenInventorQtExaminerViewer::setReferencePath(SoLineSet *lineset, + SoCoordinate3 *coords, bool append) +{ + // TODO: Color the reference path + // Disable the color stuff for now: changes all trajectories + // FWJ See G4OpenInventorXtExaminerViewer.cc for test code + + // The trajectory is composed of all the polyline segments in the + // multiple value field (SoMFInt32) numVertices. + // For each of the numVertices.getNum()* polyline segments, + // retrieve the points from the SoCoordinate3 node + + SbVec3f refParticlePt; + + if(!append) + refParticleTrajectory.clear(); + + for(int i = 0; i < lineset->numVertices.getNum(); ++i) { + for(int j = 0; j < lineset->numVertices[i]; ++j) { + refParticlePt = coords->point[j]; + refParticleTrajectory.push_back(refParticlePt); + } + } + // Remove points that are too close to each other + evenOutRefParticlePts(); + setReferencePathZPos(); + getSceneElements(); + sortElements(); +} + + +void G4OpenInventorQtExaminerViewer::setReferencePathZPos() +{ + refZPositions.clear(); + refZPositions.push_back(0); + float dist; + for(unsigned int i=0; i < refParticleTrajectory.size() - 1; ++i) { + dist = (refParticleTrajectory[i] - + refParticleTrajectory[i + 1]).length(); + refZPositions.push_back(refZPositions[i] + dist); + } +} + + +void G4OpenInventorQtExaminerViewer::findAndSetRefPath() +{ + SoSearchAction action; + action.setType(SoLineSet::getClassTypeId(),false); + action.setInterest(SoSearchAction::ALL); + action.apply(getSceneGraph()); + + SoPathList &pathList = action.getPaths(); + + if(pathList.getLength() != 0) { + + SoCoordinate3 * coords = NULL; + std::vector coordvec; + std::vector linevec; + + bool refPathFound = false; + for(int i = 0; i < pathList.getLength(); ++i) { + SoFullPath *path = (SoFullPath *)pathList[i]; + + G4AttHolder* attHolder = dynamic_cast(path->getTail()); + for (size_t j = 0; j < attHolder->GetAttDefs().size(); ++j) { + std::ostringstream oss; + oss << G4AttCheck(attHolder->GetAttValues()[j], + attHolder->GetAttDefs()[j]); + + std::string findStr = "Type of trajectory (Type): "; + std::string compareValue = "REFERENCE"; + size_t idx = oss.str().find(findStr); + + if(idx != std::string::npos) { + if(oss.str().substr(idx + findStr.size(), + compareValue.size()) == compareValue) { + coords = getCoordsNode(path); + if(coords != NULL) { + refPathFound = true; + coordvec.push_back(coords); + linevec.push_back((SoLineSet *)path->getTail()); + } + break; + } + } + + findStr = "Track ID (ID): "; + idx = oss.str().find(findStr); + if(idx != std::string::npos) { + //index all primary tracks + std::string tmpstr = oss.str().substr(idx + findStr.size(),1); + std::istringstream buffer(tmpstr); + int num; + buffer >> num; + if(num == 1) { + + // Check if next character is a number, + // in which case we don't have Track ID 1 + // FWJ attempt to fix Coverity issue. + char nextChar = oss.str().at(idx+findStr.size()+1); + // const char * nextChar = + // oss.str().substr(idx + findStr.size() + 1,1).c_str(); + if(std::isdigit(nextChar)) + // if(std::isdigit(nextChar[0])) + break; //Not a primary track, continue with next track + + coords = getCoordsNode(path); + if(coords != NULL) { + coordvec.push_back(coords); + linevec.push_back((SoLineSet *)path->getTail()); + break; //Found coords node, continue with next track + } + } + else + break; //Not a primary track, continue with next track + } + else{ + //Not a Track ID attribute, fall through + } + } + + if(refPathFound) + break; + } + + if(coordvec.empty()) + return; //No track with a Coordinate3 node found + + if(refPathFound) { + //set ref path to last traj, coord in the vecs + setReferencePath(linevec.back(), coordvec.back()); + return; + } + //else + + int longestIdx = 0; + float longestLength = 0.0; + // For all paths + for(unsigned int i=0;i < linevec.size(); ++i) { + + //First generate a vector with all the points in this lineset + std::vector trajectory; + // For all lines in the i path + for(int j=0; j < linevec[i]->numVertices.getNum(); ++j) { + // For all points in line j + for(int k=0; k < linevec[i]->numVertices[j]; ++k) { + trajectory.push_back(coordvec[i]->point[k]); + } + } + + // Then calculate the total length + float tmpLength=0.0; + for(unsigned int j=0; j < trajectory.size() - 1; ++j) { + tmpLength += (trajectory[j] - trajectory[j + 1]).length(); + } + + if(tmpLength > longestLength) { + longestIdx = i; + longestLength = tmpLength; + } + } + + // Set the longest path as the reference path + setReferencePath(linevec[longestIdx], coordvec[longestIdx]); + } +} + + +SoCoordinate3 * G4OpenInventorQtExaminerViewer::getCoordsNode(SoFullPath *path) +{ + SoLineSet *trajectory = (SoLineSet *)path->getTail(); + SoSeparator * grpNode = (SoSeparator*)(((SoFullPath*)path)->getNodeFromTail(1)); + int nodeIndex = grpNode->findChild(trajectory); + SoNode * tmpNode; + + // We allow only 100 iterations, in case the node isn't found + // (should take only a few iterations) + for (int i = 0; i < 100; ++i) { + --nodeIndex; + + tmpNode = grpNode->getChild(nodeIndex); + if(tmpNode->getTypeId() == SoCoordinate3::getClassTypeId()) { + //node found + return (SoCoordinate3 *)tmpNode; + } + } + return NULL; //coords node not found +} + + +// Displays scene elements on the right side of listsDialog. +// else: scene graph is searched for Geant4_SoPolyhedron type nodes +void G4OpenInventorQtExaminerViewer::getSceneElements() +{ + std::string field, eltName; + + std::map duplicates; + std::map sceneElts; + SoSearchAction search; + Geant4_SoPolyhedron *node; + SoGroup *root = (SoGroup *)getSceneManager()->getSceneGraph(); + + SoBaseKit::setSearchingChildren(TRUE); + + search.reset(); + search.setSearchingAll(TRUE); + search.setInterest(SoSearchAction::ALL); + search.setType(Geant4_SoPolyhedron::getClassTypeId(), 0); + + // FWJ DEBUG + // G4cout << "Searching for elements....." << G4endl; + search.apply(root); + + SoPathList &pl = search.getPaths(); + + + // First find which names occur more than once so we can append a counter to them + for (int i = 0; i < pl.getLength(); i++) { + SoFullPath *path = (SoFullPath *)pl[i]; + node = (Geant4_SoPolyhedron *)path->getTail(); + eltName = node->getName(); + // G4cout << " FOUND " << i << " " << eltName << G4endl; + if(duplicates.count(eltName)) + duplicates[eltName]++; + else + duplicates[eltName] = 1; + } + + for(int i = 0; i < pl.getLength(); i++) { + float x,y,z; + std::stringstream ssCount; + SoFullPath *path = (SoFullPath *)pl[i]; + node = (Geant4_SoPolyhedron *)path->getTail(); + eltName = node->getName(); + field = eltName; + if(duplicates[eltName] == 1) + ssCount << "";//duplicates[field] + else { + if(sceneElts.count(eltName)) + sceneElts[eltName]++; + else + sceneElts[eltName] = 1; + + ssCount << sceneElts[eltName]; + field += "_"; + } + + field += ssCount.str(); + + SoGetBoundingBoxAction bAction(getViewportRegion()); + bAction.apply(path); + SbBox3f bBox = bAction.getBoundingBox(); + + SbVec3f centr = bBox.getCenter(); + centr.getValue(x,y,z); + + path->ref(); + sceneElement el = { field, path, centr, 0.0 }; + sceneElements.push_back(el); + } +} + + +float G4OpenInventorQtExaminerViewer::sqrlen(const SbVec3f &a) +{ + float x,y,z; + a.getValue(x,y,z); + return x*x + y*y + z*z; +} + + +void G4OpenInventorQtExaminerViewer::distanceToTrajectory(const SbVec3f &q, + float &dist, + SbVec3f &closestPoint, + int &index) +{ + // a : Previous point on trajectory + // b : Next point on trajectory + // q : the point in space + // dab, daq, dbq: distance between a & b, a & q, b & q + // + // Theory: A point p on a line ab is defined as: + // + // p(t) = a+t?(b?a) + // + // note: All are vectors except the parameter t + // + // When t is between 0 and 1 the point p is situated between a and b on ab. + // The point p is defined in terms of the parameter t, subsequently so does + // the distance from the query point q to the point p. To find the minimum + // of that distance we differentiate it and set equal to zero: + // + // diff(Norm(p(t)- q)) = 0 + // + // note: diff means taking the derivative with regard to t + // + // The resulting t is given in the code below. The square of the distance + // between p and q is given by: + // + // d^2 = (Norm(p(t)-q))^2 + // + // The expression found is given in the code below (current_dist) + // + // Ref: http://programmizm.sourceforge.net/blog/2012/ + // distance-from-a-point-to-a-polyline + // + // --PLG + + const size_t count = refParticleTrajectory.size(); + assert(count>0); + + SbVec3f b = refParticleTrajectory[0]; + SbVec3f dbq = b - q; + float sqrDist = sqrlen(dbq); + closestPoint = b; + index = 0; + for (size_t i = 1; i < count; ++i) { + const SbVec3f a = b; + const SbVec3f daq = dbq; + b = refParticleTrajectory[i]; + dbq = b - q; + const SbVec3f dab = a - b; + + float dab_x, dab_y, dab_z; + dab.getValue(dab_x,dab_y,dab_z); + float daq_x, daq_y, daq_z; + daq.getValue(daq_x, daq_y, daq_z); + float dbq_x, dbq_y, dbq_z; + dbq.getValue(dbq_x, dbq_y, dbq_z); + + const float inv_sqrlen = 1./sqrlen(dab); + const float t = (dab_x*daq_x + dab_y*daq_y + dab_z*daq_z)*inv_sqrlen; + + if (t<0.) { + // The trajectory point occurs before point a + // Go to the next point + continue; + } + float current_dist; + if (t<=1.) { + // The trajectory point occurs between a and b. + // Compute the distance to that point + current_dist = daq_x*daq_x + daq_y*daq_y + daq_z*daq_z + - t*(daq_x*dab_x + daq_y*dab_y + daq_z*dab_z) + + t*t*(dab_x*dab_x + dab_y*dab_y + dab_z*dab_z); + } + else { //t>1. + // The trajectory point occurs after b. + // Get the distance to point b + current_dist = sqrlen(dbq); + } + + if (current_dist < sqrDist) { + sqrDist = current_dist; + closestPoint = a + t*(b-a); + index = i; + } + } + + dist = std::sqrt(sqrDist); +} + + +void G4OpenInventorQtExaminerViewer::sortElements() +{ + if(refParticleTrajectory.empty()) + return; + + float * trajLength = new float[refParticleTrajectory.size()]; + typedef std::map sortedMap; + sortedMap sorted; + + // For every point on the reference trajectory, compute + // the total length from the start + SbVec3f prevPoint; + std::vector::iterator itRef = refParticleTrajectory.begin(); + int trajIndex = 0; + prevPoint = *itRef; + trajLength[trajIndex] = 0.0; + ++itRef; + ++trajIndex; + for(; itRef != refParticleTrajectory.end(); ++itRef, ++trajIndex) { + trajLength[trajIndex] = trajLength[trajIndex-1] + (*itRef - prevPoint).length(); + prevPoint = *itRef; + } + + // Compute the smallest distance between the element + // and the reference trajectory (find the closest point), + // then map the element to the trajectory length of that + // point (calculated above) + SoGetBoundingBoxAction bAction(getViewportRegion()); + SbVec3f elementCoord; + std::vector::iterator itEl; + int elementIndex; + elementForSorting el; + for(itEl = sceneElements.begin(), elementIndex = 0; + itEl != sceneElements.end(); ++itEl, ++elementIndex) { + bAction.apply(itEl->path); + + // FWJ sceneElement already has a center + elementCoord = itEl->center; + // ... and this sometimes returns an empty box! + // elementCoord = bAction.getBoundingBox().getCenter(); + // if (bAction.getBoundingBox().isEmpty()) { + // G4cout << "sortElements: Box is empty!" << G4endl; + // G4cout << " element name=" << itEl->name << G4endl; + // } + + int index; + distanceToTrajectory(elementCoord, el.smallestDistance, el.closestPoint, index); + itEl->closestPointZCoord = el.closestPointZCoord = trajLength[index]; + el.distanceToBeamlineStart = (itEl->center - refParticleTrajectory[0]).length(); + + // This map of the scene elements (or their coordinates rather) + // is automatically sorted by trajectory length (Z coord), then + // by the distance between the element and the point in case the Z coord + // is the same as another element. This is done by using as a key + // an element structure which implements the operator for weak ordering + sorted.insert(std::make_pair(el,*itEl)); + } + + // store the sorted elements into the vector field + sceneElements.clear(); + + sortedMap::iterator itSorted = sorted.begin(); + for(; itSorted != sorted.end(); itSorted++) + sceneElements.push_back(itSorted->second); + + zcoordSetFlag = true; + + createElementsList(); + + delete[] trajLength; +} + + +void G4OpenInventorQtExaminerViewer::createElementsList() +{ + // FWJ DEBUG + // G4cout << "Populating ELEMENT LIST..." << G4endl; + + AuxWindowDialog->listWidget1->clear(); + // int size = sceneElements.size(); + + std::vector::const_iterator it; + std::stringstream ss; + + for(it=sceneElements.begin(); it!=sceneElements.end(); ++it) { + ss << it->name; + if(zcoordSetFlag) + ss << " [" << it->closestPointZCoord << "]"; + + new QListWidgetItem(ss.str().c_str(), AuxWindowDialog->listWidget1); + ss.str(""); + } +} + + +// Called when user clicks a scene element in listsDialog. +// Zooms onto that element. +void +G4OpenInventorQtExaminerViewer::LookAtSceneElementCB(QListWidgetItem* item) +{ + char* value; + std::string elementField; + + // FWJ DEBUG + // G4cout << "AuxWindow: listWidget1 select element CALLBACK" << G4endl; + + SoCamera * cam = getCamera(); + + if (SoQtExaminerViewer::isAnimating()) + stopAnimating(); + + value = strdup(qPrintable(item->text())); + // G4cout << "LOOKING FOR BOOKMARK " << value << G4endl; + + if (currentState == ANIMATION || currentState == REVERSED_ANIMATION + || currentState == PAUSED_ANIMATION ) { + if (animateSensor->isScheduled()) + animateSensor->unschedule(); + setSuperimpositionEnabled(superimposition, FALSE); + maxSpeed = 0.0f; + scheduleRedraw(); + restoreCamera(); + currentState = prevState; + } else if (currentState == VIEWPOINT) + setSuperimpositionEnabled(superimposition, FALSE); + + elementField = value; + + int idx = elementField.find_last_of("["); + if(idx == -1) + idx = elementField.size(); //if "[" not found for whatever reason (list not sorted) + else + idx--; // To get rid of the space that is between the name and '[' + + bool error = false; + SoFullPath *path; + SoSearchAction search; + SoNode *root = getSceneManager()->getSceneGraph(); + int counter, idxUnderscore = elementField.find_last_of("_"); + + parseString(counter, + elementField.substr(idxUnderscore + 1, idx), error); + + SoBaseKit::setSearchingChildren(TRUE); + search.reset(); + search.setSearchingAll(TRUE); + + // G4cout << " Starting search for elementField " << elementField + // << G4endl; + + if(error) { // No counter is present => element name was not modified + curEltName = elementField.substr(0, idx); + search.setName(curEltName.c_str()); + search.apply(root); + + path = (SoFullPath *)search.getPath(); + } + else { + curEltName = elementField.substr(0, idxUnderscore); + search.setInterest(SoSearchAction::ALL); + search.setName(curEltName.c_str()); + search.apply(root); + + SoPathList &pl = search.getPaths(); + path = (SoFullPath *)pl[counter - 1]; // Since counter starts at 1, not 0 + } + + G4ThreeVector global; + + // FWJ FLIP THIS + if ((idx > 0) && (path)) { + + if(!refParticleTrajectory.empty()) { + + SoGetBoundingBoxAction bAction(getViewportRegion()); + bAction.apply(path); + SbBox3f bBox = bAction.getBoundingBox(); + SbVec3f elementCoord = bBox.getCenter(); + + refParticleIdx = 0; + SbVec3f p; + + float absLengthNow, absLengthMin; + int maxIdx = refParticleTrajectory.size() - 2; + int targetIdx = 0; + SbVec3f dir; + + p = refParticleTrajectory[refParticleIdx]; + absLengthMin = (p - elementCoord).length(); + refParticleIdx++; + + // Find a ref. particle's point closest to element's global coords + while (refParticleIdx < maxIdx) { + p = refParticleTrajectory[refParticleIdx]; + absLengthNow = (p - elementCoord).length(); + + if (absLengthNow < absLengthMin) { + absLengthMin = absLengthNow; + targetIdx = refParticleIdx; + } + refParticleIdx++; + } + + if (currentState != BEAMLINE) { // Set up default zoom + SbVec3f p1, pN; + currentState = BEAMLINE; + prevParticleDir = SbVec3f(0,0,0); //so that moveCamera() knows sets default parameters + + p1 = prevPt = refParticleTrajectory[0]; + pN = refParticleTrajectory[refParticleTrajectory.size() - 1]; + distance = (pN - p1).length() / 10; + + // FWJ Rather than switching to a default height, it is more flexible + // to keep the same height(magnification) while moving the camera. + // if (cam->isOfType(SoOrthographicCamera::getClassTypeId())) { + // ((SoOrthographicCamera *) cam)->height.setValue(defaultHeight); + // // FWJ Restore the default height instead of hard-wired value + // // ((SoOrthographicCamera *) cam)->height.setValue(10000.0f); + // } + // else if (cam->isOfType(SoPerspectiveCamera::getClassTypeId())) + + // FWJ required to avoid extreme perspective after camera move: + if (cam->isOfType(SoPerspectiveCamera::getClassTypeId())) + ((SoPerspectiveCamera*)cam)->heightAngle.setValue(defaultHeightAngle); + + } else { + if (cam->isOfType(SoPerspectiveCamera::getClassTypeId())) + distance = (prevPt - cam->position.getValue()).length(); + } + refParticleIdx = targetIdx; + + ////////////////////////////////////////////////////////////// + setSuperimpositionEnabled(superimposition, TRUE); + axisSwitch->whichChild.setValue(SO_SWITCH_NONE); + animSpeedOutlineSwitch->whichChild.setValue(SO_SWITCH_NONE); + animSpeedSwitch->whichChild.setValue(SO_SWITCH_NONE); + scheduleRedraw(); + ////////////////////////////////////////////////////////////// + + moveCamera(distance); + + } + + else { + offsetFromCenter.setValue(0, 0, 1); + distance = 50;// small number since using viewAll() for default zoom + upVector.setValue(0, 1, 0); + moveCamera(distance); + cam->viewAll(path, getViewportRegion()); + } + } + +} + + +void G4OpenInventorQtExaminerViewer::FileLoadRefPathCB() +{ + // G4cout << "File: Load Ref Path CALLBACK" << G4endl; + + QFileDialog filedialog(getParentWidget(), tr("Load Reference Path")); + filedialog.setFileMode(QFileDialog::AnyFile); + filedialog.setFont(*font); + if (!filedialog.exec()) return; + QStringList filenameinlist = filedialog.selectedFiles(); + QString filenamein = filenameinlist[0]; + + // G4cout << "Input file name is " << qPrintable(filenamein) << G4endl; + + char* filename = new char[filenamein.size()+1]; + filename = strdup(qPrintable(filenamein)); + // G4cout << "char[] file name is " << filename << G4endl; + + std::ifstream ifs(filename); + if(ifs.is_open()) { + refParticleTrajectory.clear(); + float x,y,z; + while(ifs >> x >> y >> z) { + refParticleTrajectory.push_back(SbVec3f(x,y,z)); + } + ifs.close(); + } else { + QMessageBox msgbox; + msgbox.setFont(*font); + QString messagetxt = "Reference Path file not found: "; + messagetxt.append(filenamein); + msgbox.setText(messagetxt); + msgbox.exec(); + return; + } + if (refParticleTrajectory.size() < 2) { + QMessageBox msgbox; + msgbox.setFont(*font); + QString messagetxt = "Invalid Reference Path"; + msgbox.setText(messagetxt); + msgbox.exec(); + return; + } + // Following setReferencePath() ... + evenOutRefParticlePts(); + setReferencePathZPos(); + getSceneElements(); + sortElements(); +} + + +void G4OpenInventorQtExaminerViewer::FileSaveRefPathCB() +{ + // G4cout << "File: Save Ref Path CALLBACK" << G4endl; + + QFileDialog filedialog(getParentWidget(), tr("Save Reference Path")); + filedialog.setFileMode(QFileDialog::AnyFile); + // To enable confirmation of overwriting + filedialog.setAcceptMode(QFileDialog::AcceptSave); + filedialog.setFont(*font); + if (!filedialog.exec()) return; + QStringList filenameinlist = filedialog.selectedFiles(); + QString filenamein = filenameinlist[0]; + + // G4cout << "Input file name is " << qPrintable(filenamein) << G4endl; + + char* filename = new char[filenamein.size()+1]; + filename = strdup(qPrintable(filenamein)); + // G4cout << "char[] file name is " << filename << G4endl; + + std::ofstream ofs(filename); + if (ofs.is_open()) { + float x,y,z; + for (unsigned int i=0; i < refParticleTrajectory.size(); ++i) { + refParticleTrajectory[i].getValue(x,y,z); + ofs << x << " " << y << " " << z << "\n"; + } + ofs.close(); + } else { + QMessageBox msgbox; + msgbox.setFont(*font); + QString messagetxt = "Error opening file "; + messagetxt.append(filenamein); + msgbox.setText(messagetxt); + msgbox.exec(); + } + +} + +void G4OpenInventorQtExaminerViewer::evenOutRefParticlePts() +{ + if(refParticleTrajectory.empty()) + return; + + SbVec3f p1, p2, p3, dirNow, dirNxt, dir, p2_tmp, p_start, p_corner, p_nxt; + float avgDistBtwPts = 0; + float totalDistBtwPts = 0; + std::vector newRefParticleTrajectory; + SbVec3f refPoint; + int size = refParticleTrajectory.size() - 1; + int numOfPts = 0; + for (int i = 0; i < size; i++) { + p1 = refParticleTrajectory[i]; + p2 = refParticleTrajectory[i + 1]; + if (p1 == p2) + continue; + numOfPts++; + totalDistBtwPts += (p2 - p1).length(); + } + // Nothing useful to do (and fix Coverity) + if (numOfPts <= 2) return; + + avgDistBtwPts = totalDistBtwPts / numOfPts; + float minDistAllowed = 0.75 * avgDistBtwPts; + // float maxDistAllowed = 1.25 * avgDistBtwPts; // Pts tend to be close not far + + float x, y, z; + int i = 0, j = 0; + while (i < size) { + p1 = refParticleTrajectory[i]; + p2 = refParticleTrajectory[i + 1]; + + refPoint = p1; + p1.getValue(x, y, z); + + newRefParticleTrajectory.push_back(refPoint); + + j = i; + while ((p2 - p1).length() < minDistAllowed && j < (size - 1)) { + j++; + + p1 = refParticleTrajectory[j]; + p2 = refParticleTrajectory[j + 1]; + } + if (j != i) + i = j + 1; + else + i++; + } + + refParticleTrajectory.clear(); + refParticleTrajectory = newRefParticleTrajectory; +} + + +void G4OpenInventorQtExaminerViewer::saveCurCamera() +{ + SoCamera *cam = getCamera(); + camB4Animation.viewportMapping = cam->viewportMapping.getValue(); + camB4Animation.position = cam->position.getValue(); + camB4Animation.orientation = cam->orientation.getValue(); + camB4Animation.aspectRatio = cam->aspectRatio.getValue(); + camB4Animation.nearDistance = cam->nearDistance.getValue(); + camB4Animation.farDistance = cam->farDistance.getValue(); + camB4Animation.focalDistance = cam->focalDistance.getValue(); + + if (cam->isOfType(SoPerspectiveCamera::getClassTypeId())) { + camB4Animation.height = + ((SoPerspectiveCamera *) cam)->heightAngle.getValue(); + camB4Animation.camType = PERSPECTIVE; + } else if (cam->isOfType(SoOrthographicCamera::getClassTypeId())) { + camB4Animation.height = + ((SoOrthographicCamera *) cam)->height.getValue(); + camB4Animation.camType = ORTHOGRAPHIC; + } +} + + +void G4OpenInventorQtExaminerViewer::restoreCamera() +{ + SoCamera *cam = getCamera(); + + cam->viewportMapping = camB4Animation.viewportMapping; + cam->position = camB4Animation.position; + cam->orientation = camB4Animation.orientation; + cam->aspectRatio = camB4Animation.aspectRatio; + cam->nearDistance = camB4Animation.nearDistance; + cam->farDistance = camB4Animation.farDistance; + cam->focalDistance = camB4Animation.focalDistance; + + if (cam->isOfType(SoPerspectiveCamera::getClassTypeId())) { + if (camB4Animation.camType == ORTHOGRAPHIC) { + toggleCameraType(); + cam = getCamera(); + ((SoOrthographicCamera *) cam)->height.setValue( + camB4Animation.height); + } else + ((SoPerspectiveCamera *) cam)->heightAngle.setValue( + camB4Animation.height); + } else if (cam->isOfType(SoOrthographicCamera::getClassTypeId())) { + if (camB4Animation.camType == PERSPECTIVE) { + toggleCameraType(); + cam = getCamera(); + ((SoPerspectiveCamera *) cam)->heightAngle.setValue( + camB4Animation.height); + } else + ((SoOrthographicCamera *) cam)->height.setValue( + camB4Animation.height); + } +} + + +void G4OpenInventorQtExaminerViewer::animateSensorRotationCB(void *data, + SoSensor *sensor) +{ + SbTime curTime = SbTime::getTimeOfDay(); + G4OpenInventorQtExaminerViewer* This = (G4OpenInventorQtExaminerViewer*) data; + + SoTimerSensor* s = (SoTimerSensor*) sensor; + + float t = float((curTime - s->getBaseTime()).getValue()) + / This->animateBtwPtsPeriod; + + if ((t > 1.0f) || (t + s->getInterval().getValue() > 1.0f)) + t = 1.0f; + SbBool end = (t == 1.0f); + + if (end) { + This->animateSensorRotation->unschedule(); + if(This->rotCnt) { + // rotations left + This->rotateCamera(); + } + else { + // rotation over + This->currentState = This->prevState; + return; + } + } + +} + + +// Called repeatedly during reference particle animation + +void G4OpenInventorQtExaminerViewer::animateSensorCB(void *data, + SoSensor *sensor) +{ + SbTime curTime = SbTime::getTimeOfDay(); + G4OpenInventorQtExaminerViewer* This = (G4OpenInventorQtExaminerViewer*) data; + SoCamera *cam = This->getCamera(); + SoTimerSensor* s = (SoTimerSensor*) sensor; + + float t = float((curTime - s->getBaseTime()).getValue()) + / This->animateBtwPtsPeriod; + + if ((t > 1.0f) || (t + s->getInterval().getValue() > 1.0f)) + t = 1.0f; + SbBool end = (t == 1.0f); + + cam->orientation = SbRotation::slerp(This->camStartOrient, This->camEndOrient, t); + cam->position = This->camStartPos + (This->camEndPos - This->camStartPos) * t; + + if (end) { + This->animateSensor->unschedule(); + + if (This->currentState == ANIMATION) { + if (This->refParticleIdx < (int) (This->refParticleTrajectory.size() - 1)) + This->animateRefParticle(); + else { + This->animateBtwPtsPeriod = MIN_SPEED; + This->speedStep = START_STEP; + } + } + if (This->currentState == REVERSED_ANIMATION) { + if (This->refParticleIdx >= 1) + This->animateRefParticle(); + else { + This->animateBtwPtsPeriod = MIN_SPEED; + This->speedStep = START_STEP; + } + } + } +} + + +void G4OpenInventorQtExaminerViewer::setStartingPtForAnimation() +{ + if (SoQtExaminerViewer::isAnimating()) + stopAnimating(); + + SbRotation rot; + SbVec3f p1, p2, p2_tmp, camUpV, camD, camD_tmp, leftRightAxis; + float x1, y1, z1, x2, y2, z2; + + if (currentState == ANIMATION) { + p1 = refParticleTrajectory[refParticleIdx]; + p2 = refParticleTrajectory[++(refParticleIdx)]; + } else if (currentState == REVERSED_ANIMATION) { + p2 = refParticleTrajectory[refParticleIdx]; + p1 = refParticleTrajectory[--(refParticleIdx)]; + } else if (currentState == PAUSED_ANIMATION) { + if (refParticleIdx < (int) refParticleTrajectory.size()) { + p1 = refParticleTrajectory[refParticleIdx]; + p2 = refParticleTrajectory[refParticleIdx + 1]; + } else { + p1 = refParticleTrajectory[refParticleIdx - 1]; + p2 = refParticleTrajectory[refParticleIdx]; + } + } + p1.getValue(x1, y1, z1); + p2.getValue(x2, y2, z2); + + camD = p2 - p1; + camD.normalize(); + + p2_tmp.setValue(x2, y1, z2); + camD_tmp = p2_tmp - p1; + camD_tmp.normalize(); + + camUpV.setValue(0, 1, 0); + rot.setValue(camD_tmp, camD); + rot.multVec(camUpV, camUpV); + + leftRightAxis = camD.cross(camUpV); + + myCam->position = p1; + myCam->pointAt(p2, camUpV); + + // Update camera position + p1 = p1 + (up_down * camUpV) + (left_right * leftRightAxis); + myCam->position = p1; + // FWJ Try look-ahead here + int idx = refParticleIdx + pathLookahead; + idx = std::min(idx, (int)refParticleTrajectory.size() - 1); + myCam->pointAt(refParticleTrajectory[idx], camUpV); + // myCam->pointAt(refParticleTrajectory[idx], camUpVec); + myCam->focalDistance = 0.1f; +} + + +void G4OpenInventorQtExaminerViewer::gotoRefPathStart() +{ + G4OpenInventorQtExaminerViewer::ToolsRefPathStartCB(); +} + + +void G4OpenInventorQtExaminerViewer::ToolsRefPathStartCB() +{ + if (!refParticleTrajectory.size()) { + QMessageBox msgbox; + msgbox.setFont(*font); + QString messagetxt = "No current reference path"; + msgbox.setText(messagetxt); + msgbox.exec(); + return; + } + + if (currentState == ROTATING) + return; + if (currentState == ANIMATION || currentState == REVERSED_ANIMATION + || currentState == PAUSED_ANIMATION) { + if (animateSensor->isScheduled()) + animateSensor->unschedule(); + setSuperimpositionEnabled(superimposition, FALSE); + maxSpeed = 0.0f; + scheduleRedraw(); + } else { + saveCurCamera(); + prevState = currentState; + prevRefIdx = refParticleIdx; + } + + if (SoQtExaminerViewer::isAnimating()) + stopAnimating(); + + up_down = 0; + left_right = 0; + step = 1; + + refParticleIdx = 0; + currentState = BEAMLINE; + setSuperimpositionEnabled(superimposition, TRUE); + axisSwitch->whichChild.setValue(SO_SWITCH_NONE); + animSpeedOutlineSwitch->whichChild.setValue(SO_SWITCH_NONE); + animSpeedSwitch->whichChild.setValue(SO_SWITCH_NONE); + scheduleRedraw(); + + // FWJ Disabled: this is set in moveCamera() + // Zoom in + // SoCamera *cam = getCamera(); + // cam->focalDistance = 0.1f; + + prevParticleDir = SbVec3f(0,0,0); + + //Default zoom + SbVec3f p1 = refParticleTrajectory[0]; + SbVec3f pN = refParticleTrajectory[refParticleTrajectory.size() - 1]; + distance = (pN - p1).length() / 10; + + moveCamera(distance, true); +} + + +void G4OpenInventorQtExaminerViewer::ToolsRefPathInvertCB() +{ + invertRefPath(); +} + + +void G4OpenInventorQtExaminerViewer::invertRefPath() +{ + std::reverse(refParticleTrajectory.begin(), + refParticleTrajectory.end()); + setReferencePathZPos(); + sortElements(); +} + + +void G4OpenInventorQtExaminerViewer::animateRefParticle() +{ + SoCamera *cam = getCamera(); + + camStartPos = cam->position.getValue(); + camStartOrient = cam->orientation.getValue(); + + if (currentState != BEAMLINE) + setStartingPtForAnimation(); + + camEndPos = myCam->position.getValue(); + camEndOrient = myCam->orientation.getValue(); + + if (animateSensor->isScheduled()) + animateSensor->unschedule(); + + animateSensor->setBaseTime(SbTime::getTimeOfDay()); + animateSensor->setInterval(SbTime(0.02)); + + animateSensor->schedule(); +} + + +void G4OpenInventorQtExaminerViewer::addEscapeCallback(void (*callback)()) +{ + escapeCallback = callback; +} + +//void G4OpenInventorQtExaminerViewer::addEscapeCallback( +// void (*callback)(void *), void * object) +//{ +// escapeCallback = callback; +// examinerObject = object; +//} + + +void G4OpenInventorQtExaminerViewer::sceneChangeCB(void* userData, SoSensor*) +{ + // FWJ DEBUG + // G4cout << "SCENE CHANGE callback" << G4endl; + // NOTE: could/should be disabled during animation + + G4OpenInventorQtExaminerViewer* This = + (G4OpenInventorQtExaminerViewer*)userData; + if(This->newEvents) { + This->findAndSetRefPath(); + This->newEvents = false; + } +} + + +//////////////////////////////////// BOOKMARKS /////////////////////////// + +// Adds bookmarks to listsDialog. + +void G4OpenInventorQtExaminerViewer::addViewPoints() +{ + int size = viewPtList.size(); + if (!size) return; + + for (int i = 0; i < size; i++) { + new QListWidgetItem(viewPtList[i].viewPtName, + AuxWindowDialog->listWidget); + } +} + + +// Converts a string type word into a float type. + +template +void G4OpenInventorQtExaminerViewer::parseString(T &t, const std::string &s, + bool &error) +{ + std::istringstream str(s); + if ((str >> t).fail()) + error = true; +} + + +void +G4OpenInventorQtExaminerViewer::FileOpenBookmarkCB() +{ + // FWJ DEBUG + // G4cout << "File: Open Bookmark File CALLBACK" << G4endl; + QFileDialog filedialog(getParentWidget(), tr("Open bookmark file")); + filedialog.setFileMode(QFileDialog::ExistingFile); + filedialog.setFont(*font); + if (!filedialog.exec()) return; + QStringList filenameinlist = filedialog.selectedFiles(); + QString filenamein = filenameinlist[0]; + + // Note null string and empty string are different + // if (filenamein.isNull()) { + // G4cout << "Input file name is NULL" << G4endl; + // return; + // } + // G4cout << "Input file name is " << qPrintable(filenamein) << G4endl; + + char* filename = new char[filenamein.size()+1]; + filename = strdup(qPrintable(filenamein)); + // G4cout << "char[] file name is " << filename << G4endl; + + fileIn.close(); + fileIn.open(filename); + if (fileIn.fail()) { + QMessageBox msgbox; + msgbox.setFont(*font); + QString messagetxt = "Error opening file: "; + messagetxt.append(filenamein); + msgbox.setText(messagetxt); + msgbox.exec(); + // G4cout << "ERROR opening file " << filename << G4endl; + fileIn.clear(); + return; + } + // Opens a file without erasing it + cleanUpAfterPrevFile(); + + if (!loadViewPts()) { + QMessageBox msgbox; + msgbox.setFont(*font); + QString messagetxt = "Error reading bookmark file: "; + messagetxt.append(filenamein); + msgbox.setText(messagetxt); + msgbox.exec(); + // G4cout << "ERROR reading bookmark file " << filename << G4endl; + fileIn.clear(); + return; + } + + fileName = filename; + fileOut.open(fileName.c_str(), std::ios::in); + fileOut.seekp(0, std::ios::end); + + addViewPoints(); + + // LATER: display filename in lists window + + fileIn.close(); + fileIn.clear(); +} + +// Called before loading a new viewpoint file. +// Resets member fields to default values. + +void G4OpenInventorQtExaminerViewer::cleanUpAfterPrevFile() +{ + viewPtIdx = -1; + viewPtList.clear(); + // setSuperimpositionEnabled(superimposition, FALSE); + // scheduleRedraw(); + currentState = GENERAL; + if (fileOut.is_open()) fileOut.close(); + + AuxWindowDialog->listWidget->clear(); + AuxWindowDialog->lineEdit->setText(QString("")); +} + + +void +G4OpenInventorQtExaminerViewer::FileNewBookmarkCB() +{ + // G4cout << "File: Open New Bookmark File CALLBACK" << G4endl; + QFileDialog filedialog(getParentWidget(), tr("Open new bookmark file")); + filedialog.setFileMode(QFileDialog::AnyFile); + // To enable confirmation of overwriting + filedialog.setAcceptMode(QFileDialog::AcceptSave); + // But change the "Save" button text + filedialog.setLabelText(QFileDialog::Accept, QString("New")); + filedialog.setFont(*font); + if (!filedialog.exec()) return; + QStringList filenameinlist = filedialog.selectedFiles(); + QString filenamein = filenameinlist[0]; + + // G4cout << "Input file name is " << qPrintable(filenamein) << G4endl; + + char* filename = new char[filenamein.size()+1]; + filename = strdup(qPrintable(filenamein)); + // G4cout << "char[] file name is " << filename << G4endl; + + cleanUpAfterPrevFile(); + fileName = filename; + fileOut.open(fileName.c_str()); + if (fileOut.fail()) { + QMessageBox msgbox; + msgbox.setFont(*font); + QString messagetxt = "Error opening new bookmark file: "; + messagetxt.append(filenamein); + msgbox.setText(messagetxt); + msgbox.exec(); + // G4cout << "ERROR opening new bookmark file " << filename << G4endl; + } +} + + +void +G4OpenInventorQtExaminerViewer::ToolsAnimateRefParticleCB() +{ + // G4cout << "Tools: Animate Ref Particle CALLBACK" << G4endl; + if (!refParticleTrajectory.size()) { + returnToAnim = true; + G4cout << "No Reference Trajectory" << G4endl; + return; + } + + /////////////////////////////////////////////////////////////// + setSuperimpositionEnabled(superimposition, TRUE); + maxSpeed = SPEED_INDICATOR_STEP; + axisSwitch->whichChild.setValue(SO_SWITCH_ALL); + animSpeedOutlineSwitch->whichChild.setValue(SO_SWITCH_ALL); + animSpeedSwitch->whichChild.setValue(SO_SWITCH_ALL); + scheduleRedraw(); + /////////////////////////////////////////////////////////////// + + SoCamera *cam = getCamera(); + // SbVec3f camDirOld, camDirNew, camDirNew_tmp, camUpVec, P0, P1, P1_tmp; + + if (currentState == ANIMATION || currentState == REVERSED_ANIMATION + || currentState == ROTATING) + return; + + if (currentState != PAUSED_ANIMATION) { + + saveCurCamera(); + prevState = currentState; + prevRefIdx = refParticleIdx; + + if (cam->isOfType(SoOrthographicCamera::getClassTypeId())) { + toggleCameraType(); + cam = getCamera(); + } + + refParticleIdx = 0; // Set the camera to the starting point of the animation + animateBtwPtsPeriod = MIN_SPEED; + speedStep = START_STEP; + left_right = up_down = 0; + + cam->focalDistance = 0.1f; + ((SoPerspectiveCamera *) cam)->heightAngle = 0.50f; + } + + currentState = ANIMATION; + setStartingPtForAnimation(); + + cam->position = (myCam)->position.getValue(); + cam->orientation = (myCam)->orientation.getValue(); + animateRefParticle(); // Animate the camera +} + + +void +G4OpenInventorQtExaminerViewer::SaveViewPtCB() +{ + // G4cout << "AppButton: Save Viewpoint CALLBACK" << G4endl; + // First get viewpoint name ... + // EMULATING getViewPtNameCB ... + // bool ok; + // Note QString() returns an empty string + + // NONE OF THE FOLLOWING CHANGES THE FONT: FORGET IT FOR NOW + QInputDialog* inputdialog = new QInputDialog(getParentWidget()); + inputdialog->setFont(*font); + inputdialog->setWindowTitle(tr("Enter a name for the bookmark")); + inputdialog->setLabelText("Bookmark name"); + // inputdialog->setTextEchoMode(QLineEdit::Normal); + inputdialog->adjustSize(); + QString namein; + if (inputdialog->exec() == QDialog::Accepted) + namein=inputdialog->textValue().trimmed(); + else + return; + if (namein.isEmpty()) return; + + // This easier approach failed: unable to set font size + // QString namein = + // QInputDialog::getText(getParentWidget(), + // tr("Enter a name for the bookmark"), + // tr("Bookmark name"), QLineEdit::Normal, + // QString(), &ok); + + const int nVPName = MAX_VP_NAME + 1; + char* name = new char[nVPName]; + // strncpy(name, strName.c_str(), nVPName); + namein.truncate(MAX_VP_NAME); + + QByteArray ba = namein.toLocal8Bit(); + name = strdup(ba.constData()); + // name = strdup(qPrintable(namein)) + + // FWJ DEBUG + // G4cout << "QString is " << qPrintable(namein) << G4endl; + // G4cout << "char[] is " << name << G4endl; + + for (int i = 0; i < (int)viewPtList.size(); i++) { + if (!strcmp(name, viewPtList[i].viewPtName)) { + QMessageBox msgbox; + msgbox.setText("Bookmark name is already in use"); + msgbox.exec(); + return; + } + } + + if (viewPtIdx == -1) viewPtIdx = 0; + saveViewPt(name); + + saveViewPtItem = new QListWidgetItem(namein, + AuxWindowDialog->listWidget); + AuxWindowDialog->listWidget->setCurrentItem(saveViewPtItem); + AuxWindowDialog->lineEdit->setText(namein); +} + + +// Saves current camera parameters to a viewpoint file. + +void G4OpenInventorQtExaminerViewer::saveViewPt(char *name) +{ + SbVec3f axis; + viewPtData tmp; + float x, y, z, angle; + SoCamera* camera = getCamera(); + + // NOTE: Xt VSN increments this at end of procedure + // viewPtIdx++; + + // FWJ DEBUG + // G4cout << "saveViewPt: saving bookmark " << viewPtIdx << " " << name + // << G4endl; + + if (viewPtList.size() == 0) { + writeViewPtIdx(); + } + + tmp.viewPtName = name; + tmp.viewportMapping = camera->viewportMapping.getValue(); + tmp.position = camera->position.getValue(); + tmp.orientation = camera->orientation.getValue(); + tmp.aspectRatio = camera->aspectRatio.getValue(); + tmp.nearDistance = camera->nearDistance.getValue(); + tmp.farDistance = camera->farDistance.getValue(); + tmp.focalDistance = camera->focalDistance.getValue(); + + // Save camera height (changed by zooming) + if (camera->isOfType(SoPerspectiveCamera::getClassTypeId())) { + tmp.height = ((SoPerspectiveCamera *) camera)->heightAngle.getValue(); + tmp.camType = PERSPECTIVE; + } else if (camera->isOfType(SoOrthographicCamera::getClassTypeId())) { + tmp.height = ((SoOrthographicCamera *) camera)->height.getValue(); + tmp.camType = ORTHOGRAPHIC; + } else { + SoDebugError::post("G4OpenInventorQtExaminerViewer::saveViewPtCB", + "Only Perspective and Orthographic cameras are supported."); + return; + } + + viewPtList.push_back(tmp); + + // Now save the view point to a .txt file + // FWJ DEBUG + // G4cout << "saveViewPt: writing to Bookmark file " << fileName << G4endl; + + std::string vpName = name; + + while ((int) vpName.size() <= MAX_VP_NAME) + vpName += " "; + + fileOut << vpName << std::endl; + tmp.position.getValue(x, y, z); + fileOut << x << " " << y << " " << z << std::endl; + + // Reusing x, y and z for storing the axis + tmp.orientation.getValue(axis, angle); + axis.getValue(x, y, z); + fileOut << x << " " << y << " " << z << " " << angle << std::endl; + + fileOut << tmp.camType << " " << tmp.height << std::endl; + fileOut << tmp.focalDistance << " "; + fileOut << tmp.nearDistance << " "; + fileOut << tmp.farDistance << std::endl; + fileOut << tmp.viewportMapping << " "; + fileOut << tmp.aspectRatio << "\n" << std::endl; + fileOut.flush(); + + viewPtIdx++; + + // FWJ DEBUG + // G4cout << "saveViewPt: finished writing to file" << G4endl << + // " Next viewPtIdx is " << viewPtIdx << G4endl; +} + + +// Updates the viewPtIdx in a viewpoint file. + +void G4OpenInventorQtExaminerViewer::writeViewPtIdx() +{ + std::string idxStr; + std::stringstream out; + + out << viewPtIdx; + idxStr = out.str(); + fileOut.seekp(0, std::ios::beg); + + while ((int) idxStr.length() < MAX_VP_IDX) { + idxStr += " "; + } + + // FWJ DEBUG + // G4cout << "writeViewPtIdx: " << viewPtIdx << G4endl; + fileOut << idxStr << "\n"; + fileOut.flush(); + fileOut.seekp(0, std::ios::end); +} + + +// Receives the name of the bookmark clicked and searches for it in viewPtList. + +void G4OpenInventorQtExaminerViewer::LoadBookmarkCB(QListWidgetItem* item) +{ + // FWJ DEBUG + // G4cout << "AuxWindow: listWidget LoadBookmark CALLBACK" << G4endl; + + const int nVPName = MAX_VP_NAME + 1; + char* vpName = new char[nVPName]; + + vpName = strdup(qPrintable(item->text())); + // G4cout << "LOOKING FOR BOOKMARK " << vpName << G4endl; + + for (int i = 0; i < (int)viewPtList.size(); i++) { + if (!strcmp(viewPtList[i].viewPtName, vpName)) { + viewPtIdx = i; + break; + } + } + // G4cout << " FOUND viewPtIdx " << viewPtIdx << G4endl; + + writeViewPtIdx(); + setViewPt(); + AuxWindowDialog->lineEdit->setText(item->text()); +} + + +// Sets the viewpoint based on camera data that viewPtIdx is pointing to. + +void G4OpenInventorQtExaminerViewer::setViewPt() +{ + if (currentState == ANIMATION || currentState == REVERSED_ANIMATION + || currentState == ROTATING) { + if (animateSensor->isScheduled()) animateSensor->unschedule(); + setSuperimpositionEnabled(superimposition, FALSE); + maxSpeed = 0.0f; + scheduleRedraw(); + } + + SoCamera * camera = getCamera(); + if (camera == NULL) { + G4cout << "setViewPt: Camera is null. Unable to set the viewpoint." << + G4endl; + // String dialogName = (char *) "Missing Camera Node"; + // std::string msg = "Camera is null. Unable to set the viewpoint."; + // warningMsgDialog(msg, dialogName, NULL); + return; + } + + if (!viewPtList.size()) { + G4cout << "setViewPt: There are no viewpoints to load." << G4endl; + // String dialogName = (char *) "Missing Viewpoints"; + // std::string msg = "There are no viewpoints to load."; + // warningMsgDialog(msg, dialogName, NULL); + return; + } + + if (SoQtExaminerViewer::isAnimating()) stopAnimating(); + + if (currentState != VIEWPOINT) { + currentState = VIEWPOINT; + ////////////////////////////////////////////////////////////// + setSuperimpositionEnabled(superimposition, TRUE); + axisSwitch->whichChild.setValue(SO_SWITCH_NONE); + animSpeedOutlineSwitch->whichChild.setValue(SO_SWITCH_NONE); + animSpeedSwitch->whichChild.setValue(SO_SWITCH_NONE); + scheduleRedraw(); + /////////////////////////////////////////////////////////////// + } + + curViewPtName = viewPtList[viewPtIdx].viewPtName; + camera->viewportMapping = viewPtList[viewPtIdx].viewportMapping; + camera->position = viewPtList[viewPtIdx].position; + camera->orientation = viewPtList[viewPtIdx].orientation; + camera->aspectRatio = viewPtList[viewPtIdx].aspectRatio; + camera->nearDistance = viewPtList[viewPtIdx].nearDistance; + camera->farDistance = viewPtList[viewPtIdx].farDistance; + camera->focalDistance = viewPtList[viewPtIdx].focalDistance; + + // Restore camera height (changed by zooming) + if (camera->isOfType(SoPerspectiveCamera::getClassTypeId())) { + if (viewPtList[viewPtIdx].camType == ORTHOGRAPHIC) { + toggleCameraType(); + camera = getCamera(); + ((SoOrthographicCamera *) camera)->height.setValue( + viewPtList[viewPtIdx].height); + } else + ((SoPerspectiveCamera *) camera)->heightAngle.setValue( + viewPtList[viewPtIdx].height); + } else if (camera->isOfType(SoOrthographicCamera::getClassTypeId())) { + if (viewPtList[viewPtIdx].camType == PERSPECTIVE) { + toggleCameraType(); + camera = getCamera(); + ((SoPerspectiveCamera *) camera)->heightAngle.setValue( + viewPtList[viewPtIdx].height); + } else + ((SoOrthographicCamera *) camera)->height.setValue( + viewPtList[viewPtIdx].height); + } else { + SoDebugError::post("G4OpenInventorQtExaminerViewer::setViewPt", + "Only Perspective and Orthographic cameras are supported."); + return; + } + +} + + +void G4OpenInventorQtExaminerViewer::NextViewPtCB() +{ + // FWJ DEBUG + // G4cout << "App Button: nextViewPt CALLBACK" << G4endl; + + if (!viewPtList.size()) return; + if (viewPtIdx >= (int)viewPtList.size() - 1) + viewPtIdx = 0; + else + viewPtIdx++; + + writeViewPtIdx(); + setViewPt(); + char* viewptname = viewPtList[viewPtIdx].viewPtName; + AuxWindowDialog->lineEdit->setText(QString(viewptname)); +} + +void G4OpenInventorQtExaminerViewer::PrevViewPtCB() +{ + // FWJ DEBUG + // G4cout << "App Button: prevViewPt CALLBACK" << G4endl; + + if (!viewPtList.size()) return; + if (viewPtIdx == 0) + viewPtIdx = viewPtList.size() - 1; + else + viewPtIdx--; + + writeViewPtIdx(); + setViewPt(); + char* viewptname = viewPtList[viewPtIdx].viewPtName; + AuxWindowDialog->lineEdit->setText(QString(viewptname)); +} + + +void G4OpenInventorQtExaminerViewer::AbbrOutputCB(bool checked) +{ + // FWJ DEBUG + // G4cout << "App Button: abbrOutput CALLBACK" << G4endl; + + abbrOutputFlag = checked; +} + + +void G4OpenInventorQtExaminerViewer::PickRefPathCB() +{ + // FWJ DEBUG + // G4cout << "App Button: pickRefPath CALLBACK" << G4endl; + + // Save viewing state and go to picking mode + viewingBeforePickRef = isViewing(); + if(isViewing()) + setViewing(false); + setComponentCursor(SoQtCursor(SoQtCursor::CROSSHAIR)); + pickRefPathFlag = true; +} + + +void G4OpenInventorQtExaminerViewer::SwitchWireFrameCB(bool checked) +{ + // FWJ DEBUG + // G4cout << "App Button: switchWireFrame CALLBACK" << G4endl; + + // if (switchWireFrameButton->isDown()) { + if (checked) { + setDrawStyle(SoQtViewer::STILL, SoQtViewer::VIEW_LINE); + setDrawStyle(SoQtViewer::INTERACTIVE, SoQtViewer::VIEW_LINE); + } else { + setDrawStyle(SoQtViewer::STILL, SoQtViewer::VIEW_AS_IS); + setDrawStyle(SoQtViewer::INTERACTIVE, + SoQtViewer::VIEW_SAME_AS_STILL); + } +} + + +void G4OpenInventorQtExaminerViewer::DeleteBookmarkCB() +{ + // FWJ DEBUG + // G4cout << "Delete Button: DeleteBookmark CALLBACK" << G4endl; + + // Maybe nothing selected yet + QListWidgetItem* listitem = AuxWindowDialog->listWidget->currentItem(); + if (!listitem) return; + if (!(listitem->isSelected())) return; + + QString vpnamein = listitem->text(); + + const int nVPName = MAX_VP_NAME + 1; + char* vpName = new char[nVPName]; + vpName = strdup(qPrintable(vpnamein)); + // G4cout << "DELETING bookmark " << vpName << G4endl; + + deleteViewPt(vpName); + delete listitem; +} + +// Deletes current viewpoint the user is looking at. +// Updates the input file and bookmarks as well. + +void G4OpenInventorQtExaminerViewer::deleteViewPt(char *vpName) +{ + std::string line; + int end; + fileIn.open(fileName.c_str()); + std::ofstream out("temporaryFile.txt"); + + if (!vpName) + vpName = viewPtList[viewPtIdx].viewPtName; + + getline(fileIn, line); // Printing the viewpoint idx + out << line << "\n"; + + while (getline(fileIn, line)) { + end = line.find_last_not_of(' '); + line = line.substr(0, end + 1); + if (!strcmp(line.c_str(), vpName)) { // Equal + while (line.size()) { + getline(fileIn, line); + } + + while (getline(fileIn, line)) + out << line << "\n"; + } else { + while (line.size()) { + out << line << "\n"; + getline(fileIn, line); + } + out << "\n"; + } + } + + int idx = 0; // Remove viewpoint from the vector + int size = viewPtList.size(); + while (idx < size) { + if (!strcmp(viewPtList[idx].viewPtName, vpName)) { + viewPtList.erase(viewPtList.begin() + idx); + break; + } + idx++; + } + + out.close(); + fileOut.close(); + fileIn.clear(); + fileIn.close(); + + // FWJ check return status: error popups needed here + int istat = remove(fileName.c_str()); + if (istat == -1) { + QMessageBox msgbox; + msgbox.setFont(*font); + QString messagetxt = "Error removing bookmarks file"; + // messagetxt.append(filenamein); + msgbox.setText(messagetxt); + msgbox.exec(); + // G4cout << "Error removing bookmarks file" << G4endl; + } + istat = rename("temporaryFile.txt", fileName.c_str()); + if (istat == -1) { + QMessageBox msgbox; + msgbox.setFont(*font); + QString messagetxt = "Error renaming bookmarks file"; + // messagetxt.append(filenamein); + msgbox.setText(messagetxt); + msgbox.exec(); + // G4cout << "Error renaming bookmarks file" << G4endl; + } + fileOut.open(fileName.c_str(), std::ios::in); + fileOut.seekp(0, std::ios::end); + + if (!viewPtList.size()) { // viewPtList is empty + curViewPtName = (char *) ""; + scheduleRedraw(); + } else { + if (viewPtIdx >= (int) viewPtList.size()) + viewPtIdx--; + writeViewPtIdx(); + setViewPt(); + } +} + + +void G4OpenInventorQtExaminerViewer::RenameBookmarkCB() +{ + // FWJ DEBUG + // G4cout << "Rename Button: RenameBookmark CALLBACK" << G4endl; + // Maybe nothing selected yet + QListWidgetItem* listitem = AuxWindowDialog->listWidget->currentItem(); + if (!listitem) return; + if (!(listitem->isSelected())) return; + + QString vpnamein = listitem->text(); + + const int nVPName = MAX_VP_NAME + 1; + // char* vpName = new char[nVPName]; + // vpName = strdup(qPrintable(vpnamein)); + // G4cout << "RENAMING bookmark " << vpName << G4endl; + + QInputDialog* inputdialog = new QInputDialog(getParentWidget()); + inputdialog->setFont(*font); + inputdialog->setWindowTitle(tr("Enter")); + inputdialog->setLabelText("New bookmark name"); + inputdialog->adjustSize(); + QString newnamein; + if (inputdialog->exec() == QDialog::Accepted) + newnamein=inputdialog->textValue().trimmed(); + else + return; + if (newnamein.isEmpty()) return; + + char* newname = new char[nVPName]; + newname = strdup(qPrintable(newnamein)); + + int size = viewPtList.size(); + for (int i = 0; i < size; i++) { + if (!strcmp(newname, viewPtList[i].viewPtName)) { + QMessageBox msgbox; + msgbox.setFont(*font); + msgbox.setText("Bookmark name is already in use"); + msgbox.exec(); + } + } + + // G4cout << "RENAMING to " << newname << G4endl; + renameViewPt(newname); + listitem->setText(QString(newname)); + AuxWindowDialog->lineEdit->setText(newname); + // if (currentState == VIEWPOINT) + // scheduleRedraw(); + + delete[] newname; +} + +// Renames currently selected viewpoint. + +void G4OpenInventorQtExaminerViewer::renameViewPt(char *vpName) +{ + int idx = 0, end, pos; + int size = viewPtList.size(); + std::string line, newName; + fileIn.open(fileName.c_str()); + + newName = vpName; + while ((int) newName.size() < MAX_VP_NAME) + newName += " "; + + getline(fileIn, line); + pos = fileIn.tellg(); + while (getline(fileIn, line)) { + end = line.find_last_not_of(' '); + line = line.substr(0, end + 1); + if (!strcmp(line.c_str(), curViewPtName)) { + fileOut.seekp(pos); + fileOut << newName; + fileOut.seekp(0, std::ios::end); // Set the file pointer to the end of the file + break; + } + while (line.size()) + getline(fileIn, line); + pos = fileIn.tellg(); + } + + fileIn.close(); + fileIn.clear(); + + while (idx < size) { + if (!strcmp(viewPtList[idx].viewPtName, curViewPtName)) { + strcpy(viewPtList[idx].viewPtName, vpName); + break; + } + idx++; + } +} + + +void G4OpenInventorQtExaminerViewer::SortBookmarksCB() +{ + // FWJ NOTE: Xt version of this does not work (does nothing) + + // G4cout << "Sort Button: SortBookmarks CALLBACK" << G4endl; + + // FWJ List for sorting + // The dialog list and bookmark file will be rewritten. + // Simpler to populate this list from the data structure. + + std::vector charList; + + if (viewPtList.size() < 2) return; + + // Get current entries from the list + + for (int i = 0; i < (int)viewPtList.size(); i++) { + + charList.push_back(viewPtList[i].viewPtName); + // G4cout << " Pushed " << i << " " << charList[i] << G4endl; + } + + std::sort(charList.begin(), charList.end()); + + // FWJ POPULATE the new dialog list + // G4cout << " Populating Bookmark listWidget..." << G4endl; + AuxWindowDialog->listWidget->clear(); + + for (int i = 0; i < (int)viewPtList.size(); i++) { + // viewPtIdx has to be changed to account for a different order in viewPtList + if (!strcmp(charList[i].c_str(), curViewPtName)) + viewPtIdx = i; + new QListWidgetItem(charList[i].c_str(), AuxWindowDialog->listWidget); + + } + + sortViewPts(charList); + +} + +// Rewrites entire viewpoint file with sorted viewpoints. + +void G4OpenInventorQtExaminerViewer::sortViewPts(std::vector sortedViewPts) +{ + SbVec3f axis; + float x, y, z, angle; + int sortIdx = 0, unsortIdx = 0; + + if (fileOut.is_open()) + fileOut.close(); + + fileOut.open(fileName.c_str()); // Erase current viewpoint file + + writeViewPtIdx(); + + int size = sortedViewPts.size(); + while (sortIdx < size) { + while (strcmp(sortedViewPts[sortIdx].c_str(), + viewPtList[unsortIdx].viewPtName)) + unsortIdx++; + + std::string vpName = viewPtList[unsortIdx].viewPtName; + + while ((int) vpName.size() < MAX_VP_NAME) + vpName += " "; + fileOut << vpName << std::endl; + viewPtList[unsortIdx].position.getValue(x, y, z); + fileOut << x << " " << y << " " << z << std::endl; + + // Reusing x, y and z for storing the axis + viewPtList[unsortIdx].orientation.getValue(axis, angle); + axis.getValue(x, y, z); + fileOut << x << " " << y << " " << z << " " << angle << std::endl; + + fileOut << viewPtList[unsortIdx].camType << " " + << viewPtList[unsortIdx].height << std::endl; + fileOut << viewPtList[unsortIdx].focalDistance << " "; + + fileOut << viewPtList[unsortIdx].nearDistance << " "; + + fileOut << viewPtList[unsortIdx].farDistance << std::endl; + + fileOut << viewPtList[unsortIdx].viewportMapping << " "; + fileOut << viewPtList[unsortIdx].aspectRatio << "\n" << std::endl; + fileOut.flush(); + + unsortIdx = 0; + sortIdx++; + } +} + + +// Handling mouse and keyboard events + SbBool G4OpenInventorQtExaminerViewer::processSoEvent(const SoEvent* const ev) { - // SoCamera *cam = getCamera(); + SoCamera *cam = getCamera(); const SoType type(ev->getTypeId()); + if (type.isDerivedFrom(SoMouseButtonEvent::getClassTypeId())) { + SoMouseButtonEvent * me = (SoMouseButtonEvent *) ev; + + if (currentState == ANIMATION || currentState == REVERSED_ANIMATION + || currentState == PAUSED_ANIMATION) { + switch (me->getButton()) { + case SoMouseButtonEvent::BUTTON4: // Scroll wheel up + if (me->getState() == SoButtonEvent::DOWN) { + if (cam->isOfType(SoPerspectiveCamera::getClassTypeId())) { + float hAngle = + ((SoPerspectiveCamera *) cam)->heightAngle.getValue(); + ((SoPerspectiveCamera *) cam)->heightAngle = hAngle + + 0.01f; + return TRUE; + } else if (cam->isOfType(SoOrthographicCamera::getClassTypeId())) { + float height = + ((SoOrthographicCamera *) cam)->height.getValue(); + ((SoOrthographicCamera *) cam)->height = height + 5; + return TRUE; + } + } + break; + case SoMouseButtonEvent::BUTTON5: // Scroll wheel down + if (me->getState() == SoButtonEvent::DOWN) { + if (cam->isOfType(SoPerspectiveCamera::getClassTypeId())) { + float hAngle = + ((SoPerspectiveCamera *) cam)->heightAngle.getValue(); + if (hAngle > 0.01) + ((SoPerspectiveCamera *) cam)->heightAngle = hAngle + - 0.01f; + return TRUE; + } else if (cam->isOfType(SoOrthographicCamera::getClassTypeId())) { + float height = + ((SoOrthographicCamera *) cam)->height.getValue(); + if (height > 5) + ((SoOrthographicCamera *) cam)->height = height - 5; + return TRUE; + } + } + break; + default: + break; + } + } + if (currentState == GENERAL) { + + } + } + + if (type.isDerivedFrom(SoKeyboardEvent::getClassTypeId())) { SoKeyboardEvent* ke = (SoKeyboardEvent*)ev; if (SoKeyboardEvent::isKeyPressEvent(ev, ke->getKey())) { switch (ke->getKey()) { case SoKeyboardEvent::E: - G4cout << - "E KEY PRESSED, EXITING OIQT VIEWER SECONDARY LOOP" << G4endl; - SoQt::exitMainLoop(); + if (externalQtApp) { + // G4cout << "E KEY PRESSED" << G4endl; + return TRUE; + } else { + G4cout << + "E KEY PRESSED, EXITING OIQT VIEWER SECONDARY LOOP" << + G4endl; + SoQt::exitMainLoop(); + // escapeCallback(); + return TRUE; + } + case SoKeyboardEvent::LEFT_SHIFT: + this->lshiftdown = true; + return TRUE; + case SoKeyboardEvent::RIGHT_SHIFT: + this->rshiftdown = true; + return TRUE; + case SoKeyboardEvent::LEFT_CONTROL: + this->lctrldown = true; + return TRUE; + case SoKeyboardEvent::RIGHT_CONTROL: + this->rctrldown = true; + return TRUE; + case SoKeyboardEvent::SPACE: + if (currentState == ANIMATION + || currentState == REVERSED_ANIMATION) { + beforePausing = currentState; + currentState = PAUSED_ANIMATION; + if (animateSensor->isScheduled()) + animateSensor->unschedule(); + return TRUE; + } else if (currentState == PAUSED_ANIMATION) { + if (maxSpeed) { + if ((beforePausing == ANIMATION + && refParticleIdx + < (int) refParticleTrajectory.size() - 1) + || (beforePausing == REVERSED_ANIMATION + && refParticleIdx > 0)) { + currentState = beforePausing; + animateRefParticle(); + } + } + return TRUE; + } break; + case SoKeyboardEvent::ESCAPE: + if (currentState == ANIMATION + || currentState == REVERSED_ANIMATION + || currentState == PAUSED_ANIMATION) { + + if (animateSensor->isScheduled()) + animateSensor->unschedule(); + currentState = prevState; + refParticleIdx = prevRefIdx; + setSuperimpositionEnabled(superimposition, FALSE); + maxSpeed = 0.0f; + step = 1; + + scheduleRedraw(); + if (currentState == VIEWPOINT) { + setSuperimpositionEnabled(superimposition, TRUE); + axisSwitch->whichChild.setValue(SO_SWITCH_NONE); + animSpeedOutlineSwitch->whichChild.setValue( + SO_SWITCH_NONE); + animSpeedSwitch->whichChild.setValue(SO_SWITCH_NONE); + + scheduleRedraw(); + } + restoreCamera(); + return TRUE; + } + break; + case SoKeyboardEvent::DELETE: + if (viewPtList.size() + && (currentState != ANIMATION + && currentState != REVERSED_ANIMATION + && currentState != PAUSED_ANIMATION)) { + // FWJ IMPLEMENT LATER + // String dialogName = (char *) "Delete Viewpoint"; + // std::string msg = "Are you sure you want to delete current viewpoint?"; + // warningMsgDialog(msg, dialogName, deleteViewPtCB); + return TRUE; + } + break; + case SoKeyboardEvent::LEFT_ARROW: + switch (currentState) { + case BEAMLINE: + if ((this->lshiftdown) || (this->rshiftdown)) { + refParticleIdx -= step; + moveCamera(); + } + else if ((this->lctrldown) || (this->rctrldown)) { + if (SoQtExaminerViewer::isAnimating()) + stopAnimating(); + prevState = currentState; + currentState = ROTATING; + animateBtwPtsPeriod = 0.08f; + + SbVec3f tmp = camDir; + tmp.negate(); + rotAxis = tmp; + + rotCnt = ROT_CNT; + moveCamera(); // To make sure camera is perpendicular to the beamline + rotateCamera(); + } + else { + if (SoQtExaminerViewer::isAnimating()) + stopAnimating(); + prevState = currentState; + currentState = ROTATING; + animateBtwPtsPeriod = 0.08f; + + SbVec3f tmp = camUpVec; + tmp.negate(); + rotAxis = tmp; + + rotCnt = ROT_CNT; + moveCamera(); // To make sure camera is perpendicular to the beamline + rotateCamera(); + + } + return TRUE; + + case ANIMATION: + case REVERSED_ANIMATION: + left_right -= 1.5f; + return TRUE; + case PAUSED_ANIMATION: + left_right -= 1.5f; + setStartingPtForAnimation(); + cam->position = myCam->position; + return TRUE; + case GENERAL: + case VIEWPOINT: + if ((!this->lshiftdown) && (!this->rshiftdown)) { + // Using this allows us to look around without + // changing the camera parameters (camDir, camUpVec) + this->bottomWheelMotion( + this->getBottomWheelValue() + 0.1f); + + return TRUE; + } + break; + case ROTATING: + // For this state, let the keyboard event + // be handled by superclass + break; + default: + SoDebugError::post("G4OpenInventorQtExaminerViewer::processSoEvent", + "Unhandled viewer state"); + break; + } + break; + + case SoKeyboardEvent::RIGHT_ARROW: + switch(currentState) { + case BEAMLINE: + if ((this->lshiftdown) || (this->rshiftdown)) { + refParticleIdx += step; + moveCamera(); + } + else if ((this->lctrldown) || (this->rctrldown)) { + if (SoQtExaminerViewer::isAnimating()) + stopAnimating(); + prevState = currentState; + currentState = ROTATING; + animateBtwPtsPeriod = 0.08f; + + rotAxis = camDir; + + rotCnt = ROT_CNT; + moveCamera(); // To make sure camera is perpendicular to the beamline + rotateCamera(); + } + else{ + if (SoQtExaminerViewer::isAnimating()) + stopAnimating(); + prevState = currentState; + currentState = ROTATING; + animateBtwPtsPeriod = 0.08f; + + rotAxis = camUpVec; + + rotCnt = ROT_CNT; + moveCamera(); // To make sure camera is perpendicular to the beamline + rotateCamera(); + } + return TRUE; + + case ANIMATION: + case REVERSED_ANIMATION: + left_right += 1.5f; + return TRUE; + case PAUSED_ANIMATION: + left_right += 1.5f; + setStartingPtForAnimation(); + cam->position = myCam->position; + return TRUE; + case GENERAL: + case VIEWPOINT: + if ((!this->lshiftdown) && (!this->rshiftdown)) { + // Using this allows us to look around without + // changing the camera parameters (camDir, camUpVec) + this->bottomWheelMotion( + this->getBottomWheelValue() - 0.1f); + return TRUE; + } + break; + case ROTATING: + // For this state, let the keyboard event + // be handled by superclass + break; + default: + SoDebugError::post("G4OpenInventorQtExaminerViewer::processSoEvent", + "Unhandled viewer state"); + break; + } + break; + + case SoKeyboardEvent::DOWN_ARROW: + switch(currentState) { + case BEAMLINE: + + if ((this->lshiftdown) || (this->rshiftdown)) { + refParticleIdx -= step; + moveCamera(); + } + else{ + if (SoQtExaminerViewer::isAnimating()) + stopAnimating(); + prevState = currentState; + currentState = ROTATING; + animateBtwPtsPeriod = 0.08f; + + rotAxis = camDir.cross(camUpVec); + + rotCnt = ROT_CNT; + moveCamera(); // To make sure camera is perpendicular to the beamline + rotateCamera(); + + } + return TRUE; + + case ANIMATION: + case REVERSED_ANIMATION: + up_down -= 1.5f; + return TRUE; + case PAUSED_ANIMATION: + up_down -= 1.5f; + setStartingPtForAnimation(); + cam->position = myCam->position; + return TRUE; + case GENERAL: + case VIEWPOINT: + // Using this allows us to look around without + // changing the camera parameters (camDir, camUpVec) + if ((!this->lshiftdown) && (!this->rshiftdown)) { + this->leftWheelMotion(this->getLeftWheelValue() - 0.1f); + return TRUE; + } + break; + case ROTATING: + // For this state, let the keyboard event + // be handled by superclass + break; + default: + SoDebugError::post("G4OpenInventorQtExaminerViewer::processSoEvent", + "Unhandled viewer state"); + break; + } + break; + + case SoKeyboardEvent::UP_ARROW: + switch(currentState) { + case BEAMLINE: + if ((this->lshiftdown) || (this->rshiftdown)) { + refParticleIdx -= step; + moveCamera(); + } + else{ + if (SoQtExaminerViewer::isAnimating()) + stopAnimating(); + prevState = currentState; + currentState = ROTATING; + animateBtwPtsPeriod = 0.08f; + + rotAxis = camUpVec.cross(camDir); + + rotCnt = ROT_CNT; + moveCamera(); + + rotateCamera(); + + + } + return TRUE; + case ANIMATION: + case REVERSED_ANIMATION: + up_down += 1.5f; + return TRUE; + case PAUSED_ANIMATION: + up_down += 1.5f; + setStartingPtForAnimation(); + cam->position = myCam->position; + return TRUE; + case GENERAL: + case VIEWPOINT: + // Using this allows us to look around without + // changing the camera parameters (camDir, camUpVec) + if ((!this->lshiftdown) && (!this->rshiftdown)) { + this->leftWheelMotion(this->getLeftWheelValue() + 0.1f); + return TRUE; + } + break; + case ROTATING: + // For this state, let the keyboard event + // be handled by superclass + break; + default: + SoDebugError::post("G4OpenInventorQtExaminerViewer::processSoEvent", + "Unhandled viewer state"); + break; + } + break; + + case SoKeyboardEvent::PAGE_UP: + switch(currentState) { + case BEAMLINE: + if (step < (int) refParticleTrajectory.size() / 5) // Magic number + step++; + return TRUE; + case ANIMATION: + incSpeed(); + maxSpeed += SPEED_INDICATOR_STEP; + if (maxSpeed > 0.8) + maxSpeed = MAX_SPEED_INDICATOR; + scheduleRedraw(); + + return TRUE; + case REVERSED_ANIMATION: + if(!animateSensor->isScheduled()) { + currentState = ANIMATION; + if (refParticleIdx + < (int) refParticleTrajectory.size() - 1) { + refParticleIdx++; + maxSpeed = SPEED_INDICATOR_STEP; + scheduleRedraw(); + animateRefParticle(); + } + } + else{ + maxSpeed += SPEED_INDICATOR_STEP; + decSpeed(); + scheduleRedraw(); + } + return TRUE; + case PAUSED_ANIMATION: + maxSpeed += SPEED_INDICATOR_STEP; + if (maxSpeed > 0.8) + maxSpeed = MAX_SPEED_INDICATOR; + + if (beforePausing == ANIMATION) { + incSpeed(); + } else { + decSpeed(); + if (animateBtwPtsPeriod >= MIN_SPEED) + beforePausing = ANIMATION; + } + + scheduleRedraw(); + return TRUE; + default: //fall through + break; + } + break; + + case SoKeyboardEvent::PAGE_DOWN: + switch(currentState) { + case BEAMLINE: + if (step > 1) + step--; + return TRUE; + case ANIMATION: + if(!animateSensor->isScheduled()) { + currentState = REVERSED_ANIMATION; + if (refParticleIdx > 1) { + refParticleIdx--; + maxSpeed = -SPEED_INDICATOR_STEP; + scheduleRedraw(); + animateRefParticle(); + } + } + else{ + maxSpeed -= SPEED_INDICATOR_STEP; + decSpeed(); + scheduleRedraw(); + } + return TRUE; + case REVERSED_ANIMATION: + incSpeed(); + maxSpeed -= SPEED_INDICATOR_STEP; + if (maxSpeed < -0.8) + maxSpeed = -MAX_SPEED_INDICATOR; + scheduleRedraw(); + return TRUE; + case PAUSED_ANIMATION: + maxSpeed -= SPEED_INDICATOR_STEP; + if (maxSpeed < -0.8) + maxSpeed = -MAX_SPEED_INDICATOR; + if (beforePausing == REVERSED_ANIMATION) { + incSpeed(); + } else { + decSpeed(); + if (animateBtwPtsPeriod >= MIN_SPEED) + beforePausing = REVERSED_ANIMATION; + } + scheduleRedraw(); + return TRUE; + default: + //fall through + break; + } + break; + + // FROM XT VIEWER + // case SoKeyboardEvent::E: + // this->escapeCallback(this->examinerObject); + // break; + + default: + break; // To get rid of compiler warnings + } + } + if (SoKeyboardEvent::isKeyReleaseEvent(ev, ke->getKey())) { + switch (ke->getKey()) { + case SoKeyboardEvent::LEFT_SHIFT: + this->lshiftdown = false; + return TRUE; + case SoKeyboardEvent::RIGHT_SHIFT: + this->rshiftdown = false; + return TRUE; + case SoKeyboardEvent::LEFT_CONTROL: + this->lctrldown = false; + return TRUE; + case SoKeyboardEvent::RIGHT_CONTROL: + this->rctrldown = false; + return TRUE; default: break; } } } + // Pass the event on to the viewer // Need some checks here as in Xt viewer? - return SoQtExaminerViewer::processSoEvent(ev); + + if (currentState == ANIMATION || currentState == REVERSED_ANIMATION + || currentState == ROTATING) + return FALSE; + else + return SoQtExaminerViewer::processSoEvent(ev); } + +// REMAINDER OF MENU BAR FUNCTIONS... + + +void G4OpenInventorQtExaminerViewer::FileLoadSceneGraphCB() +{ + // G4cout << "File: Load scene graph CALLBACK" << G4endl; + + QFileDialog filedialog(getParentWidget(), tr("Load Scene Graph")); + filedialog.setFileMode(QFileDialog::AnyFile); + filedialog.setFont(*font); + if (!filedialog.exec()) return; + QStringList filenameinlist = filedialog.selectedFiles(); + QString filenamein = filenameinlist[0]; + + // G4cout << "Entered file name is " << qPrintable(filenamein) << G4endl; + + char* filename = new char[filenamein.size()+1]; + filename = strdup(qPrintable(filenamein)); + // G4cout << "char[] file name is " << filename << G4endl; + + SoInput sceneInput; + + if (sceneInput.openFile(filename)) { + // Read the whole file into the database + newSceneGraph = SoDB::readAll(&sceneInput); + if (newSceneGraph == NULL) { + QMessageBox msgbox; + msgbox.setFont(*font); + QString messagetxt = "Error reading scene graph file "; + messagetxt.append(filenamein); + msgbox.setText(messagetxt); + msgbox.exec(); + sceneInput.closeFile(); + return; + } + } else { + QMessageBox msgbox; + msgbox.setFont(*font); + QString messagetxt = "Error opening scene graph file "; + messagetxt.append(filenamein); + msgbox.setText(messagetxt); + msgbox.exec(); + return; + } + + SoSeparator* root = (SoSeparator*)getSceneGraph(); + root->unref(); + newSceneGraph->ref(); + setSceneGraph(newSceneGraph); +} + +void G4OpenInventorQtExaminerViewer::FileSaveSceneGraphCB() +{ + // G4cout << "File: Save scene graph CALLBACK" << G4endl; + + QFileDialog filedialog(getParentWidget(), tr("Save scene graph")); + filedialog.setFileMode(QFileDialog::AnyFile); + // To enable confirmation of overwriting + filedialog.setAcceptMode(QFileDialog::AcceptSave); + filedialog.setFont(*font); + if (!filedialog.exec()) return; + QStringList filenameinlist = filedialog.selectedFiles(); + QString filenamein = filenameinlist[0]; + + // G4cout << "Entered file name is " << qPrintable(filenamein) << G4endl; + + char* filename = new char[filenamein.size()+1]; + filename = strdup(qPrintable(filenamein)); + // G4cout << "char[] file name is " << filename << G4endl; + + SoWriteAction writeAction; + SoSeparator* root = (SoSeparator*)getSceneGraph(); + + SoOutput* out = writeAction.getOutput(); + + if (out->openFile(filename)) { + out->setBinary(FALSE); + writeAction.apply(root); + out->closeFile(); + } else { + QMessageBox msgbox; + msgbox.setFont(*font); + QString messagetxt = "Error opening file "; + messagetxt.append(filenamein); + msgbox.setText(messagetxt); + msgbox.exec(); + } +} + + +void G4OpenInventorQtExaminerViewer::HelpControlsCB() +{ + // G4cout << "Help: Help Controls CALLBACK" << G4endl; + helpmsgbox->show(); +} + + +HookEventProcState::HookEventProcState(G4OpenInventorQtExaminerViewer* vwr) +{ + viewer = vwr; +} + +HookEventProcState::~HookEventProcState() +{;} + +G4bool HookEventProcState::Notify(G4ApplicationState requestedState) +{ + if (requestedState == G4State_EventProc) viewer->newEvents = true; + return true; +} + + #endif diff --git a/source/visualization/OpenInventor/src/G4OpenInventorQtViewer.cc b/source/visualization/OpenInventor/src/G4OpenInventorQtViewer.cc index 9b87953647..3b289575fe 100644 --- a/source/visualization/OpenInventor/src/G4OpenInventorQtViewer.cc +++ b/source/visualization/OpenInventor/src/G4OpenInventorQtViewer.cc @@ -40,12 +40,10 @@ #include #include -//#include -//#include -//#include -//#include -//#include -//#include +//#include +#include +#include +#include #include "HEPVis/actions/SoGL2PSAction.h" @@ -54,14 +52,15 @@ #include "G4VInteractorManager.hh" #include "G4VisManager.hh" +#include "G4SoQt.hh" + #ifndef G4GMAKE #include "moc_G4OpenInventorQtViewer.cpp" #endif G4OpenInventorQtViewer::G4OpenInventorQtViewer( G4OpenInventorSceneHandler& sceneHandler, const G4String& name) - : G4OpenInventorViewer(sceneHandler, name) - , fViewer(0) + : G4OpenInventorViewer(sceneHandler, name), fViewer(0) { // FWJ fName is in G4VViewer parent of G4OpenInventorViewer if (G4VisManager::GetVerbosity() >= G4VisManager::confirmations) @@ -72,32 +71,132 @@ G4OpenInventorQtViewer::G4OpenInventorQtViewer( void G4OpenInventorQtViewer::Initialise() { - QWidget* parent = SoQt::getTopLevelWidget(); + QWidget* parent = SoQt::getTopLevelWidget(); - // FWJ DEBUG - // G4cout << "G4OIQtViewer: Creating G4OIQtExaminerViewer with parent " << - // parent << G4endl; + // FWJ DEBUG + // G4cout << "G4OIQtViewer: Creating G4OIQtExaminerViewer with parent " << + // parent << G4endl; - // fViewer = new SoQtExaminerViewer(parent, "Geant4", TRUE); - fViewer = new G4OpenInventorQtExaminerViewer(parent, "Geant4", TRUE); + // fViewer = new SoQtExaminerViewer(parent, "Geant4", TRUE); + fViewer = new G4OpenInventorQtExaminerViewer(parent, "Geant4", TRUE); - // G4String wName = fName; - // - // QWidget parent = (QWidget)fInteractorManager->GetParentInteractor(); - int width = fVP.GetWindowSizeHintX(); - int height = fVP.GetWindowSizeHintY(); + // G4String wName = fName; + // + // QWidget parent = (QWidget)fInteractorManager->GetParentInteractor(); - // FWJ not sure what this is for - // fInteractorManager->AddShell(fShell); + int width = fVP.GetWindowSizeHintX(); + int height = fVP.GetWindowSizeHintY(); - // FWJ or this: - // } else { - // char* str = fInteractorManager->GetCreationString(); - // if(str!=0) wName = str; - // fViewer = new SoQtExaminerViewer(parent,wName.c_str(),TRUE); - // } + // FWJ not sure what this is for + // fInteractorManager->AddShell(fShell); + + // FWJ or this: + // } else { + // char* str = fInteractorManager->GetCreationString(); + // if(str!=0) wName = str; + // fViewer = new SoQtExaminerViewer(parent,wName.c_str(),TRUE); + // } + + fViewer->setSize(SbVec2s(width, height)); + + // Add common menu items... + + // QMenuBar* menubar = fViewer->getMenubar(); + QMenu* filemenu = fViewer->getFileMenu(); + QMenu* etcmenu = fViewer->getEtcMenu(); + QFont* font = fViewer->getFont(); + + // File menu + + FileWritePS = new QAction("Write PostScript (gl2ps)", this); + FileWritePS->setFont(*font); + connect(FileWritePS, SIGNAL(triggered()), this, + SLOT(FileWritePSCB())); + filemenu->addAction(FileWritePS); + + FileWritePDF = new QAction("Write PDF (gl2ps)", this); + FileWritePDF->setFont(*font); + connect(FileWritePDF, SIGNAL(triggered()), this, + SLOT(FileWritePDFCB())); + filemenu->addAction(FileWritePDF); + + FileWriteIV = new QAction("Write IV", this); + FileWriteIV->setFont(*font); + connect(FileWriteIV, SIGNAL(triggered()), this, + SLOT(FileWriteIVCB())); + filemenu->addAction(FileWriteIV); + + FileEscape = new QAction("Escape", this); + FileEscape->setFont(*font); + connect(FileEscape, SIGNAL(triggered()), this, + SLOT(FileEscapeCB())); + filemenu->addAction(FileEscape); + + // G4cout << "G4OIQtViewer: externalApp = " << + // static_cast(fInteractorManager)->IsExternalApp() << G4endl; + if (static_cast(fInteractorManager)->IsExternalApp()) + fViewer->setExternalQtApp(); + + // Register escape CB with viewer, allowing E key escape + // fViewer->addEscapeCallback(FileEscapeCB); + // fViewer->addEscapeCallback(FileEscapeCB, (void*)this); + + // Etc menu + + EtcEraseDetector = new QAction("Erase detector", this); + EtcEraseDetector->setFont(*font); + connect(EtcEraseDetector, SIGNAL(triggered()), this, + SLOT(EtcEraseDetectorCB())); + etcmenu->addAction(EtcEraseDetector); + + EtcEraseEvent = new QAction("Erase event", this); + EtcEraseEvent->setFont(*font); + connect(EtcEraseEvent, SIGNAL(triggered()), this, + SLOT(EtcEraseEventCB())); + etcmenu->addAction(EtcEraseEvent); + + EtcSetSolid = new QAction("Set solid", this); + EtcSetSolid->setFont(*font); + connect(EtcSetSolid, SIGNAL(triggered()), this, SLOT(EtcSetSolidCB())); + etcmenu->addAction(EtcSetSolid); + + EtcSetReducedWireframe = new QAction("Set (G4) reduced wireframe", this); + EtcSetReducedWireframe->setFont(*font); + connect(EtcSetReducedWireframe, SIGNAL(triggered()), this, + SLOT(EtcSetReducedWireframeCB())); + etcmenu->addAction(EtcSetReducedWireframe); + + EtcSetFullWireframe = new QAction("Set full wireframe", this); + EtcSetFullWireframe->setFont(*font); + connect(EtcSetFullWireframe, SIGNAL(triggered()), this, + SLOT(EtcSetFullWireframeCB())); + etcmenu->addAction(EtcSetFullWireframe); + + EtcVisibMInvisibD = new QAction("Visible mothers + invisible daughters", + this); + EtcVisibMInvisibD->setFont(*font); + connect(EtcVisibMInvisibD, SIGNAL(triggered()), this, + SLOT(EtcVisibMInvisibDCB())); + etcmenu->addAction(EtcVisibMInvisibD); + + EtcVisibMVisibD = new QAction("Visible mothers + visible daughters", this); + EtcVisibMVisibD->setFont(*font); + connect(EtcVisibMVisibD, SIGNAL(triggered()), this, + SLOT(EtcVisibMVisibDCB())); + etcmenu->addAction(EtcVisibMVisibD); + + EtcUpdateScene = new QAction("Update scene", this); + EtcUpdateScene->setFont(*font); + connect(EtcUpdateScene, SIGNAL(triggered()), this, + SLOT(EtcUpdateSceneCB())); + etcmenu->addAction(EtcUpdateScene); + + EtcSceneGraphStats = new QAction("Scene graph stats", this); + EtcSceneGraphStats->setFont(*font); + connect(EtcSceneGraphStats, SIGNAL(triggered()), this, + SLOT(EtcSceneGraphStatsCB())); + etcmenu->addAction(EtcSceneGraphStats); - fViewer->setSize(SbVec2s(width, height)); // Have a GL2PS render action : const SbViewportRegion& vpRegion = fViewer->getViewportRegion(); @@ -178,134 +277,104 @@ SoCamera* G4OpenInventorQtViewer::GetCamera () { } -// FWJ need new implementation in SoQt for the following... -//Widget G4OpenInventorQtViewer::AddMenu( -// Widget aMenuBar -//,const G4String& aName -//,const G4String& aLabel -//) -//{ - // // Pulldown menu : - // Widget menu = XmCreatePulldownMenu(aMenuBar,(char*)aName.c_str(),NULL,0); - // // Cascade button : - // Arg args[2]; - // XmString cps = - // XmStringLtoRCreate((char*)aLabel.c_str(),(char*)XmSTRING_DEFAULT_CHARSET); - // XtSetArg (args[0],XmNlabelString,cps); - // XtSetArg (args[1],XmNsubMenuId,menu); - // Widget widget = XmCreateCascadeButton(aMenuBar,(char*)aName.c_str(),args,2); - // XmStringFree (cps); - // XtManageChild(widget); - // return menu; -//} +// File menu... -// void G4OpenInventorQtViewer::AddButton ( -// Widget aMenu -// ,const G4String& aLabel -// ,XtCallbackProc aCallback -// ) -// { - // Widget widget = XmCreatePushButton(aMenu,(char*)aLabel.c_str(),NULL,0); - // XtManageChild(widget); - // XtAddCallback(widget,XmNactivateCallback,aCallback,(XtPointer)this); -//} +void G4OpenInventorQtViewer::FileWritePSCB() +{ + // G4cout << "G4OIQtViewer: File: Write PS CALLBACK" << G4endl; + // FWJ Workaround: avoids empty 2nd page in file + SbBool superimpState = + fViewer->getSuperimpositionEnabled(fViewer->superimposition); + fViewer->setSuperimpositionEnabled(fViewer->superimposition, FALSE); + WritePostScript(); + if (superimpState) + fViewer->setSuperimpositionEnabled(fViewer->superimposition, TRUE); +} -//void G4OpenInventorQtViewer::HelpCancelCbk( - // Widget,XtPointer aData,XtPointer) { - // G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; - // XtUnmanageChild(This->fHelpForm); -//} +void G4OpenInventorQtViewer::FileWritePDFCB() +{ + // G4cout << "G4OIQtViewer: File: Write PDF CALLBACK" << G4endl; + // FWJ Workaround: avoids empty 2nd page in file + SbBool superimpState = + fViewer->getSuperimpositionEnabled(fViewer->superimposition); + fViewer->setSuperimpositionEnabled(fViewer->superimposition, FALSE); + WritePDF(); + if (superimpState) + fViewer->setSuperimpositionEnabled(fViewer->superimposition, TRUE); +} +void G4OpenInventorQtViewer::FileWriteIVCB() +{ + // G4cout << "G4OIQtViewer: File: Write IV CALLBACK" << G4endl; + WriteInventor(); +} -// void G4OpenInventorQtViewer::EscapeCbk( - // Widget,XtPointer aData,XtPointer) { - // G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; - // This->Escape(); -//} +void G4OpenInventorQtViewer::FileEscapeCB() +{ + // G4cout << "G4OIQtViewer: File: Escape CALLBACK" << G4endl; + static_cast(fInteractorManager)->ExitSecondaryLoop(); + // Escape(); +} -// void G4OpenInventorQtViewer::PostScriptCbk( - // Widget,XtPointer aData,XtPointer) { - // G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; - // This->WritePostScript(); -//} +// Etc menu... -//void G4OpenInventorQtViewer::PixmapPostScriptCbk( - // Widget,XtPointer aData,XtPointer) { - // G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; - // This->WritePixmapPostScript(); -//} +void +G4OpenInventorQtViewer::EtcEraseDetectorCB() +{ + // G4cout << "G4OIQtViewer: Etc: Erase Detector CALLBACK" << G4endl; + EraseDetector(); +} -//void G4OpenInventorQtViewer::SceneGraphStatisticsCbk( - // Widget,XtPointer aData,XtPointer) { - // G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; - // This->SceneGraphStatistics(); -//} +void +G4OpenInventorQtViewer::EtcEraseEventCB() +{ + // G4cout << "G4OIQtViewer: Etc: Erase Event CALLBACK" << G4endl; + EraseEvent(); +} -//void G4OpenInventorQtViewer::WriteInventorCbk( - // Widget,XtPointer aData,XtPointer) { - // G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; - // This->WriteInventor(); -//} +void G4OpenInventorQtViewer::EtcSetSolidCB() +{ + // G4cout << "G4OIQtViewer: Etc: Set Solid CALLBACK" << G4endl; + SetSolid(); +} -//void G4OpenInventorQtViewer::EraseDetectorCbk( - // Widget,XtPointer aData,XtPointer) { - // G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; - // This->EraseDetector(); -//} +void G4OpenInventorQtViewer::EtcSetReducedWireframeCB() +{ + // G4cout << "G4OIQtViewer: Etc: Set Reduced Wireframe CALLBACK" << G4endl; + SetReducedWireFrame(true); +} -//void G4OpenInventorQtViewer::EraseEventCbk( - // Widget,XtPointer aData,XtPointer) { - // G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; - // This->EraseEvent(); -//} +void G4OpenInventorQtViewer::EtcSetFullWireframeCB() +{ + // G4cout << "G4OIQtViewer: Etc: Set Full Wireframe CALLBACK" << G4endl; + SetReducedWireFrame(false); +} -//void G4OpenInventorQtViewer::SetSolidCbk( - // Widget,XtPointer aData,XtPointer) { - // G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; - // This->SetSolid(); -//} +void G4OpenInventorQtViewer::EtcVisibMInvisibDCB() +{ + // G4cout << "G4OIQtViewer: Etc: Visible Mothers + Invisible Daughters" + // " CALLBACK" << G4endl; + SetPreview(); +} -//void G4OpenInventorQtViewer::SetWireFrameCbk( - // Widget,XtPointer aData,XtPointer) { - // G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; - // This->SetWireFrame(); -//} +void G4OpenInventorQtViewer::EtcVisibMVisibDCB() +{ + // G4cout << "G4OIQtViewer: Etc: Visible Mothers + Visible Daughters" + // "CALLBACK" << G4endl; + SetPreviewAndFull(); +} -// void G4OpenInventorQtViewer::SetReducedWireFrameCbk( -// Widget,XtPointer aData,XtPointer) { -// G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; -// This->SetReducedWireFrame(true); -// } +void G4OpenInventorQtViewer::EtcUpdateSceneCB() +{ + // G4cout << "G4OIQtViewer: Etc: Update Scene CALLBACK" << G4endl; + UpdateScene(); +} -// void G4OpenInventorQtViewer::SetFullWireFrameCbk( -// Widget,XtPointer aData,XtPointer) { -// G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; -// This->SetReducedWireFrame(false); -// } +void G4OpenInventorQtViewer::EtcSceneGraphStatsCB() +{ + // G4cout << "G4OIQtViewer: Etc: Scene Graph Stats CALLBACK" << G4endl; + SceneGraphStatistics(); +} -// void G4OpenInventorQtViewer::UpdateSceneCbk( -// Widget,XtPointer aData,XtPointer) { -// G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; -// This->UpdateScene(); -// } - -// void G4OpenInventorQtViewer::SetPreviewCbk( -// Widget,XtPointer aData,XtPointer) { -// G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; -// This->SetPreview(); -// } - -// void G4OpenInventorQtViewer::SetPreviewAndFullCbk( -// Widget,XtPointer aData,XtPointer) { -// G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; -// This->SetPreviewAndFull(); -// } - -// void G4OpenInventorQtViewer::HelpCbk( -// Widget,XtPointer aData,XtPointer) { -// G4OpenInventorQtViewer* This = (G4OpenInventorQtViewer*)aData; -// XtManageChild(This->fHelpForm); -// XmTextSetString(This->fHelpText,(char*)This->Help().c_str()); -// } #endif diff --git a/source/visualization/OpenInventor/src/G4OpenInventorViewer.cc b/source/visualization/OpenInventor/src/G4OpenInventorViewer.cc index 298be2a684..3fdb9e828f 100644 --- a/source/visualization/OpenInventor/src/G4OpenInventorViewer.cc +++ b/source/visualization/OpenInventor/src/G4OpenInventorViewer.cc @@ -64,8 +64,6 @@ G4OpenInventorViewer::G4OpenInventorViewer( ,fGroupCameraSensor(0) ,fCameraSensor(0) { - fNeedKernelVisit = true; //?? Temporary, until KernelVisitDecision fixed. - fVP.SetAutoRefresh(true); fDefaultVP.SetAutoRefresh(true); fVP.SetPicking(true); @@ -151,7 +149,6 @@ void G4OpenInventorViewer::KernelVisitDecision () { CompareForKernelVisit(fLastVP)) { NeedKernelVisit (); } - fLastVP = fVP; } G4bool G4OpenInventorViewer::CompareForKernelVisit(G4ViewParameters& vp) { @@ -175,6 +172,8 @@ G4bool G4OpenInventorViewer::CompareForKernelVisit(G4ViewParameters& vp) { // G4OpenGLStoredSceneHander::CreateSection/CutawayPolyhedron. (vp.IsExplode () != fVP.IsExplode ()) || (vp.GetNoOfSides () != fVP.GetNoOfSides ()) || + (vp.GetGlobalMarkerScale() != fVP.GetGlobalMarkerScale()) || + (vp.GetGlobalLineWidthScale() != fVP.GetGlobalLineWidthScale()) || (vp.IsMarkerNotHidden () != fVP.IsMarkerNotHidden ()) || (vp.GetDefaultVisAttributes()->GetColour() != fVP.GetDefaultVisAttributes()->GetColour()) || @@ -374,6 +373,7 @@ G4OpenInventorViewer::lookedAt(SoCamera* camera,SbVec3f & dir, SbVec3f & up) void G4OpenInventorViewer::DrawView () { //G4cout << "debug Iv::DrawViewer " < + +#include "G4PhysicalVolumeModel.hh" + +class G4Qt3DQEntity: public Qt3DCore::QEntity { +public: + G4Qt3DQEntity(Qt3DCore::QNode *parent = nullptr) + : Qt3DCore::QEntity(parent) {} + const G4PhysicalVolumeModel::G4PhysicalVolumeNodeID& GetPVNodeID () const + {return fPVNodeID;} + void SetPVNodeID(const G4PhysicalVolumeModel::G4PhysicalVolumeNodeID& id) + {fPVNodeID = id;} +private: + G4PhysicalVolumeModel::G4PhysicalVolumeNodeID fPVNodeID; +}; + +#endif + +#endif // #if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) diff --git a/source/visualization/Qt3D/include/G4Qt3DSceneHandler.hh b/source/visualization/Qt3D/include/G4Qt3DSceneHandler.hh new file mode 100644 index 0000000000..3ecaeee1a5 --- /dev/null +++ b/source/visualization/Qt3D/include/G4Qt3DSceneHandler.hh @@ -0,0 +1,90 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// John Allison 17th June 2019 + +#if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) + +#ifndef G4QT3DSCENEHANDLER_HH +#define G4QT3DSCENEHANDLER_HH + +#include "G4VSceneHandler.hh" + +#include + +namespace Qt3DCore { +class QEntity; +} +class G4Qt3DQEntity; + +//#define G4QT3DDEBUG + +class G4Qt3DSceneHandler: public G4VSceneHandler { + + friend class G4Qt3DViewer; + +public: + + G4Qt3DSceneHandler(G4VGraphicsSystem& system, + const G4String& name); + virtual ~G4Qt3DSceneHandler(); + + void PreAddSolid(const G4Transform3D& objectTransformation, + const G4VisAttributes&); + void PostAddSolid(); + + void BeginPrimitives2D(const G4Transform3D& objectTransformation); + void EndPrimitives2D(); + + void BeginPrimitives(const G4Transform3D& objectTransformation); + void EndPrimitives(); + + void AddPrimitive(const G4Polyline&); + void AddPrimitive(const G4Polymarker&); + void AddPrimitive(const G4Text&); + void AddPrimitive(const G4Circle&); + void AddPrimitive(const G4Square&); + void AddPrimitive(const G4Polyhedron&); + + void ClearStore (); + void ClearTransientStore (); + +protected: + + void EstablishG4Qt3DQEntities(); + G4Qt3DQEntity* CreateNewNode(); // For next solid or primitive + + static G4int fSceneIdCount; // Counter for Qt3D scene handlers. + + Qt3DCore::QEntity* fpQt3DScene; + Qt3DCore::QEntity* fpTransientObjects; + Qt3DCore::QEntity* fpPersistentObjects; + std::vector fpPhysicalVolumeObjects; // Multiple worlds + +}; + +#endif + +#endif // #if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) diff --git a/source/visualization/Qt3D/include/G4Qt3DUtils.hh b/source/visualization/Qt3D/include/G4Qt3DUtils.hh new file mode 100644 index 0000000000..c84fc02d0e --- /dev/null +++ b/source/visualization/Qt3D/include/G4Qt3DUtils.hh @@ -0,0 +1,61 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// John Allison, 18th July 2020 + +#if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) + +#ifndef G4QT3DUTILS_HH +#define G4QT3DUTILS_HH + +#include "G4Transform3D.hh" +#include "G4ThreeVector.hh" + +#include +#include + +class G4Colour; + +namespace G4Qt3DUtils { + +Qt3DCore::QTransform* CreateQTransformFrom(const G4Transform3D&); +QColor ConvertToQColor(const G4Colour& c); +QVector3D ConvertToQVector3D(const G4ThreeVector& v); + +void delete_entity_recursively(Qt3DCore::QNode *node); +void delete_components_and_children_of_entity_recursively(Qt3DCore::QNode *node); + +#ifdef G4QT3DDEBUG +extern std::ofstream LogFile; +void PrintQObjectTree +(const QObject* node, + const G4String& where = ""); +#endif + +} // namespace G4Qt3DUtils + +#endif + +#endif // #if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) diff --git a/source/visualization/Qt3D/include/G4Qt3DViewer.hh b/source/visualization/Qt3D/include/G4Qt3DViewer.hh new file mode 100644 index 0000000000..636d889e59 --- /dev/null +++ b/source/visualization/Qt3D/include/G4Qt3DViewer.hh @@ -0,0 +1,80 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// John Allison 17th June 2019 + +#if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) + +#ifndef G4QT3DVIEWER_HH +#define G4QT3DVIEWER_HH + +#include "G4Qt3DSceneHandler.hh" + +#include "G4VViewer.hh" + +#include + +class G4Qt3DViewer: public G4VViewer, public Qt3DExtras::Qt3DWindow +{ +public: + + G4Qt3DViewer(G4Qt3DSceneHandler&,const G4String& name); + virtual ~G4Qt3DViewer(); + void SetView(); + void ClearView(); + void DrawView(); + void ShowView(); + void FinishView(); + + void SwitchToVisSubThread(); + void SwitchToMasterThread(); + +protected: + + void KernelVisitDecision (); + G4bool CompareForKernelVisit(G4ViewParameters&); + + void keyPressEvent (QKeyEvent*); + void keyReleaseEvent (QKeyEvent*); + void mouseDoubleClickEvent(QMouseEvent*); + void mouseMoveEvent (QMouseEvent*); + void mousePressEvent (QMouseEvent*); + void mouseReleaseEvent (QMouseEvent*); + void wheelEvent (QWheelEvent*); + + G4ViewParameters fLastVP; // Memory for making kernel visit decisions. + G4Qt3DSceneHandler& fQt3DSceneHandler; + + QWidget* fUIWidget; + + G4bool fKeyPressed; + int fKey; + G4bool fMousePressed; + G4double fMousePressedX, fMousePressedY; +}; + +#endif + +#endif // #if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) diff --git a/source/visualization/Qt3D/sources.cmake b/source/visualization/Qt3D/sources.cmake new file mode 100644 index 0000000000..fa89535263 --- /dev/null +++ b/source/visualization/Qt3D/sources.cmake @@ -0,0 +1,61 @@ +#------------------------------------------------------------------------------ +# sources.cmake +# Module : G4visQt3D +# Package: Geant4.src.G4visualization.G4visQt3D +# +# Sources description for a library. +# Lists the sources and headers of the code explicitely. +# Lists include paths needed. +# Lists the internal granular and global dependencies of the library. +# Source specific properties should be added at the end. +# +# Generated on : 24/9/2010 +# +# +#------------------------------------------------------------------------------ + +# +# Define the Geant4 Module. +# +GEANT4_DEFINE_MODULE(NAME G4visQt3D + HEADERS + G4Qt3D.hh + G4Qt3DQEntity.hh + G4Qt3DSceneHandler.hh + G4Qt3DUtils.hh + G4Qt3DViewer.hh + SOURCES + G4Qt3D.cc + G4Qt3DSceneHandler.cc + G4Qt3DUtils.cc + G4Qt3DViewer.cc + GRANULAR_DEPENDENCIES + G4csg + G4geometrymng + G4globman + G4graphics_reps + G4hits + G4intercoms + G4interfaces + G4modeling + G4specsolids + G4tracking + G4vis_management + GLOBAL_DEPENDENCIES + G4digits_hits + G4geometry + G4global + G4graphics_reps + G4intercoms + G4interfaces + G4modeling + G4tracking + G4vis_management + LINK_LIBRARIES + Qt5::Gui Qt5::Widgets Qt5::3DCore Qt5::3DExtras Qt5::3DRender +) + +add_definitions(-DG4INTY_BUILD_QT -DG4UI_BUILD_QT_SESSION -DG4VIS_BUILD_QT3D_DRIVER) + +# List any source specific properties here + diff --git a/source/visualization/Qt3D/src/G4Qt3D.cc b/source/visualization/Qt3D/src/G4Qt3D.cc new file mode 100644 index 0000000000..e3d7780cfc --- /dev/null +++ b/source/visualization/Qt3D/src/G4Qt3D.cc @@ -0,0 +1,103 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// John Allison 17th June 2019 + +#if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) + +#include "G4Qt3D.hh" +#include "G4Qt3DSceneHandler.hh" +#include "G4Qt3DViewer.hh" + +#include "G4UIQt.hh" +#include "G4UImanager.hh" +#include "G4UIbatch.hh" + +G4Qt3D::G4Qt3D(): +G4VGraphicsSystem +("Qt3D", + "Qt3D", + "Qt3D graphics driver", + G4VGraphicsSystem::threeDInteractive) {} + +G4Qt3D::~G4Qt3D() {} + +G4VSceneHandler* G4Qt3D::CreateSceneHandler(const G4String& name) { + G4VSceneHandler* pScene = new G4Qt3DSceneHandler(*this, name); + return pScene; +} + +G4VViewer* G4Qt3D::CreateViewer(G4VSceneHandler& scene, + const G4String& name) { + G4VViewer* pView = + new G4Qt3DViewer((G4Qt3DSceneHandler&) scene, name); + if (pView) { + if (pView->GetViewId() < 0) { + G4cerr << + "G4Qt3D::CreateViewer: ERROR flagged by negative" + " view id in G4Qt3DViewer creation." + "\n Destroying view and returning null pointer." + << G4endl; + delete pView; + pView = 0; + } + } + if (!pView) { + G4cerr << + "G4Qt3D::CreateViewer: ERROR: null pointer on new G4Qt3DViewer." + << G4endl; + } + return pView; +} + +G4bool G4Qt3D::IsUISessionCompatible () const +{ + G4bool isCompatible = false; + G4UImanager* ui = G4UImanager::GetUIpointer(); + G4UIsession* session = ui->GetSession(); + + // If session is a batch session, it may be: + // a) this is a batch job (the user has not instantiated any UI session); + // b) we are currently processing a UI command, in which case the UI + // manager creates a temporary batch session and to find out if there is + // a genuine UI session that the user has instantiated we must drill + // down through previous sessions to a possible non-batch session. + while (G4UIbatch* batch = dynamic_cast(session)) { + session = batch->GetPreviousSession(); + } + + // Qt windows are only appropriate in a Qt session. + if (session) { + // If non-zero, this is the originating non-batch session + // The user has instantiated a UI session... + if (dynamic_cast(session)) { + // ...and it's a G4UIQt session, which is OK. + isCompatible = true; + } + } + return isCompatible; +} + +#endif // #if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) diff --git a/source/visualization/Qt3D/src/G4Qt3DSceneHandler.cc b/source/visualization/Qt3D/src/G4Qt3DSceneHandler.cc new file mode 100644 index 0000000000..23380d116f --- /dev/null +++ b/source/visualization/Qt3D/src/G4Qt3DSceneHandler.cc @@ -0,0 +1,997 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// John Allison 17th June 2019 + +#if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) + +#include "G4Qt3DSceneHandler.hh" + +#include "G4PhysicalVolumeModel.hh" +#include "G4LogicalVolumeModel.hh" +#include "G4VPhysicalVolume.hh" +#include "G4LogicalVolume.hh" +#include "G4TransportationManager.hh" +#include "G4Box.hh" +#include "G4Polyline.hh" +#include "G4Polymarker.hh" +#include "G4Text.hh" +#include "G4Circle.hh" +#include "G4Square.hh" +#include "G4Polyhedron.hh" +#include "G4Scene.hh" +#include "G4Threading.hh" + +#include "G4Qt3DViewer.hh" +#include "G4Qt3DUtils.hh" +#include "G4Qt3DQEntity.hh" + +#include +#include +#include + +#include + +// Qt3D seems to offer a choice of type - float or double. It would be nice +// to use double since it offers the prospect of higher precision, hopefully +// avoiding some issues that we see at high zoom. But it currently gives the +// following warning: "findBoundingVolumeComputeData: Position attribute not +// suited for bounding volume computation", so for now we use float. +#define PRECISION float +#define BASETYPE Qt3DRender::QAttribute::Float + +G4int G4Qt3DSceneHandler::fSceneIdCount = 0; + +G4Qt3DSceneHandler::G4Qt3DSceneHandler + (G4VGraphicsSystem& system, const G4String& name) +: G4VSceneHandler(system, fSceneIdCount++, name) +{ +#ifdef G4QT3DDEBUG + G4cout << "G4Qt3DSceneHandler::G4Qt3DSceneHandler called" << G4endl; +#endif + fpQt3DScene = new Qt3DCore::QEntity; + fpQt3DScene->setObjectName("G4Qt3DSceneRoot"); + EstablishG4Qt3DQEntities(); +} + +G4Qt3DSceneHandler::~G4Qt3DSceneHandler() +{ + // Doesn't like this - it gives BAD_ACCESS in delete_entity_recursively. + // Curiously the delete traceback shows three calls to this recursively: + /*#1 0x0000000100411906 in (anonymous namespace)::delete_entity_recursively(Qt3DCore::QNode*) at /Users/johna/Geant4/geant4-dev/source/visualization/Qt3D/src/G4Qt3DSceneHandler.cc:60 + #2 0x0000000100411840 in G4Qt3DSceneHandler::~G4Qt3DSceneHandler() at /Users/johna/Geant4/geant4-dev/source/visualization/Qt3D/src/G4Qt3DSceneHandler.cc:169 + #3 0x0000000100411fc5 in G4Qt3DSceneHandler::~G4Qt3DSceneHandler() at /Users/johna/Geant4/geant4-dev/source/visualization/Qt3D/src/G4Qt3DSceneHandler.cc:168 + #4 0x0000000100411fe9 in G4Qt3DSceneHandler::~G4Qt3DSceneHandler() at /Users/johna/Geant4/geant4-dev/source/visualization/Qt3D/src/G4Qt3DSceneHandler.cc:168 + #5 0x0000000101032510 in G4VisManager::~G4VisManager() at /Users/johna/Geant4/geant4-dev/source/visualization/management/src/G4VisManager.cc:214 + #6 0x0000000100013885 in G4VisExecutive::~G4VisExecutive() at /Users/johna/Geant4/geant4-dev/source/visualization/management/include/G4VisExecutive.hh:119 + #7 0x00000001000119a5 in G4VisExecutive::~G4VisExecutive() at /Users/johna/Geant4/geant4-dev/source/visualization/management/include/G4VisExecutive.hh:119 + #8 0x00000001000119c9 in G4VisExecutive::~G4VisExecutive() at /Users/johna/Geant4/geant4-dev/source/visualization/management/include/G4VisExecutive.hh:119 + #9 0x00000001000117dd in main at /Users/johna/Geant4/geant4-dev/examples/basic/B1/exampleB1.cc:108 + */ + //if (fpQt3DScene) delete_entity_recursively(fpQt3DScene); +} + +void G4Qt3DSceneHandler::EstablishG4Qt3DQEntities() +{ + fpTransientObjects = new G4Qt3DQEntity(fpQt3DScene); // Hangs from root + fpTransientObjects ->setObjectName("G4Qt3DTORoot"); + fpPersistentObjects = new G4Qt3DQEntity(fpQt3DScene); // Hangs from root + fpPersistentObjects ->setObjectName("G4Qt3DPORoot"); + + // Physical volume objects for each world hang from POs + G4TransportationManager* transportationManager + = G4TransportationManager::GetTransportationManager (); + size_t nWorlds = transportationManager->GetNoWorlds(); + std::vector::iterator iterWorld + = transportationManager->GetWorldsIterator(); + fpPhysicalVolumeObjects.resize(nWorlds); + for (size_t i = 0; i < nWorlds; ++i, ++iterWorld) { + G4VPhysicalVolume* world = (*iterWorld); + auto entity = new G4Qt3DQEntity(fpPersistentObjects); + entity->setObjectName("G4Qt3DPORoot_"+QString(world->GetName())); + entity->SetPVNodeID(G4PhysicalVolumeModel::G4PhysicalVolumeNodeID(world)); + fpPhysicalVolumeObjects[i] = entity; + } +} + +G4Qt3DQEntity* G4Qt3DSceneHandler::CreateNewNode() +{ // Create a G4Qt3DQEntity node suitable for next solid or primitive + + // Avoid Qt errors in MT mode - see G4Qt3DViewer::SwitchToMasterThread +#ifdef G4MULTITHREADED + if (!G4Threading::IsMasterThread()) return nullptr; +#endif + + G4Qt3DQEntity* newNode = nullptr; + + if (fReadyForTransients) { // All transients hang from this node + newNode = new G4Qt3DQEntity(fpTransientObjects); + newNode->setObjectName(fpModel->GetGlobalTag().c_str()); + return newNode; + } + + G4PhysicalVolumeModel* pPVModel = + dynamic_cast(fpModel); + + if (!pPVModel) { // Persistent objects (e.g., axes) + newNode = new G4Qt3DQEntity(fpPersistentObjects); + newNode->setObjectName(fpModel->GetGlobalTag().c_str()); + return newNode; + } + + // So this is a G4PhysicalVolumeModel + + typedef G4PhysicalVolumeModel::G4PhysicalVolumeNodeID PVNodeID; + typedef std::vector PVPath; +// const PVPath& drawnPVPath = pPVModel->GetDrawnPVPath(); + const PVPath& fullPVPath = pPVModel->GetFullPVPath(); + //G4int currentDepth = pPVModel->GetCurrentDepth(); + //G4VPhysicalVolume* pCurrentPV = pPVModel->GetCurrentPV(); + //G4LogicalVolume* pCurrentLV = pPVModel->GetCurrentLV(); + //G4Material* pCurrentMaterial = pPVModel->GetCurrentMaterial(); + // Note: pCurrentMaterial may be zero (parallel world). + +#ifdef G4QTDEBUG + G4cout << "A: " << fullPVPath << G4endl; // DEBUG +#endif + + // Find appropriate root + const size_t nWorlds = fpPhysicalVolumeObjects.size(); + size_t iWorld = 0; + for (; iWorld < nWorlds; ++iWorld) { + if (fullPVPath[0].GetPhysicalVolume() == + fpPhysicalVolumeObjects[iWorld]->GetPVNodeID().GetPhysicalVolume()) break; + } + if (iWorld == nWorlds) { + G4Exception("G4Qt3DSceneHandler::CreateNewNode", "qt3D-0000", FatalException, + "World mis-match - not possible(!?)"); + } + + // (Re-)establish pv path of root entity + G4Qt3DQEntity* world = fpPhysicalVolumeObjects[iWorld]; + world->SetPVNodeID(fullPVPath[0]); + + // Create nodes as required + G4Qt3DQEntity* node = world; + newNode = node; + const size_t depth = fullPVPath.size(); + size_t iDepth = 1; + while (iDepth < depth) { + const auto& children = node->children(); + const G4int nChildren = children.size(); // int size() (Qt covention?) + G4int iChild = 0; + G4Qt3DQEntity* child = nullptr; + for (; iChild < nChildren; ++iChild) { + child = static_cast(children[iChild]); + if (child->GetPVNodeID() == fullPVPath[iDepth]) break; + } + if (iChild != nChildren) { // Existing node found + node = child; // Must be the ancestor of new node (subsequent iteration) + } else { + // Add a new node as child of node + newNode = new G4Qt3DQEntity(node); + newNode->SetPVNodeID(fullPVPath[iDepth]); + std::ostringstream oss; + oss << newNode->GetPVNodeID().GetPhysicalVolume()->GetName() + << ':' << newNode->GetPVNodeID().GetCopyNo(); + newNode->setObjectName(oss.str().c_str()); + node = newNode; + } + ++iDepth; + } + + return node; +} + +void G4Qt3DSceneHandler::PreAddSolid + (const G4Transform3D& objectTransformation, + const G4VisAttributes& visAttribs) +{ + G4VSceneHandler::PreAddSolid(objectTransformation, visAttribs); +} + +void G4Qt3DSceneHandler::PostAddSolid() +{ + G4VSceneHandler::PostAddSolid(); +} + +void G4Qt3DSceneHandler::BeginPrimitives2D(const G4Transform3D& objectTransformation) +{ +// The x,y coordinates of the primitives passed to AddPrimitive are +// intrepreted as screen coordinates, -1 < x,y < 1. The +// z-coordinate is ignored. +// IMPORTANT: invoke this from your polymorphic versions, e.g.: +// void MyXXXSceneHandler::BeginPrimitives2D +// (const G4Transform3D& objectTransformation) { + static G4bool first = true; + if (first) { + first = false; + G4Exception("G4Qt3DSceneHandler::BeginPrimitives2D", "qt3D-0001", + JustWarning, + "2D drawing not yet implemented"); + } + G4VSceneHandler::BeginPrimitives2D (objectTransformation); +// ... +} + +void G4Qt3DSceneHandler::EndPrimitives2D () +{ +// IMPORTANT: invoke this from your polymorphic versions, e.g.: +// void MyXXXSceneHandler::EndPrimitives2D () { +// ... + G4VSceneHandler::EndPrimitives2D (); +} + +void G4Qt3DSceneHandler::BeginPrimitives + (const G4Transform3D& objectTransformation) +{ + G4VSceneHandler::BeginPrimitives(objectTransformation); +} + +void G4Qt3DSceneHandler::EndPrimitives () +{ + G4VSceneHandler::EndPrimitives (); +} + +void G4Qt3DSceneHandler::AddPrimitive(const G4Polyline& polyline) +{ +#ifdef G4QT3DDEBUG + G4cout << + "G4Qt3DSceneHandler::AddPrimitive(const G4Polyline& polyline) called.\n" + << polyline + << G4endl; +#endif + + auto currentNode = CreateNewNode(); + if (!currentNode) return; // Node not available + + if (polyline.size() == 0) return; + + fpVisAttribs = fpViewer->GetApplicableVisAttributes(polyline.GetVisAttributes()); + + auto transform = G4Qt3DUtils::CreateQTransformFrom(fObjectTransformation); + transform->setObjectName("transform"); + + auto polylineEntity = new Qt3DCore::QEntity(currentNode); + polylineEntity->addComponent(transform); + + const auto vertexByteSize = 3*sizeof(PRECISION); + + const size_t nLines = polyline.size() - 1; + QByteArray polylineByteArray; + const auto polylineBufferByteSize = 2*nLines*vertexByteSize; + polylineByteArray.resize(polylineBufferByteSize); + auto polylineBufferArray = reinterpret_cast(polylineByteArray.data()); + G4int iLine = 0; + for (size_t i = 0; i < nLines; ++i) { + polylineBufferArray[iLine++] = polyline[i].x(); + polylineBufferArray[iLine++] = polyline[i].y(); + polylineBufferArray[iLine++] = polyline[i].z(); + polylineBufferArray[iLine++] = polyline[i+1].x(); + polylineBufferArray[iLine++] = polyline[i+1].y(); + polylineBufferArray[iLine++] = polyline[i+1].z(); + } + auto polylineGeometry = new Qt3DRender::QGeometry(); + polylineGeometry->setObjectName("polylineGeometry"); + auto polylineBuffer = new Qt3DRender::QBuffer(polylineGeometry); + polylineBuffer->setObjectName("Polyline buffer"); + polylineBuffer->setData(polylineByteArray); + + auto polylineAtt = new Qt3DRender::QAttribute; + polylineAtt->setObjectName("Position attribute"); + polylineAtt->setName(Qt3DRender::QAttribute::defaultPositionAttributeName()); + polylineAtt->setBuffer(polylineBuffer); + polylineAtt->setAttributeType(Qt3DRender::QAttribute::VertexAttribute); + polylineAtt->setVertexBaseType(BASETYPE); + polylineAtt->setVertexSize(3); + polylineAtt->setCount(nLines); + polylineAtt->setByteOffset(0); + polylineAtt->setByteStride(vertexByteSize); + + const auto& colour = fpVisAttribs->GetColour(); + + polylineGeometry->addAttribute(polylineAtt); + + auto material = new Qt3DExtras::QDiffuseSpecularMaterial(); + material->setObjectName("materialForPolyline"); + material->setAmbient(G4Qt3DUtils::ConvertToQColor(colour)); + material->setShininess(0.); + material->setSpecular(0.); + polylineEntity->addComponent(material); + + auto renderer = new Qt3DRender::QGeometryRenderer; + renderer->setObjectName("polyhedronWireframeRenderer"); + renderer->setGeometry(polylineGeometry); + renderer->setVertexCount(2*nLines); + renderer->setPrimitiveType(Qt3DRender::QGeometryRenderer::Lines); + polylineEntity->addComponent(renderer); +} + +void G4Qt3DSceneHandler::AddPrimitive (const G4Polymarker& polymarker) +{ + auto currentNode = CreateNewNode(); + if (!currentNode) return; // Node not available + + if (polymarker.size() == 0) return; + + fpVisAttribs = fpViewer->GetApplicableVisAttributes(polymarker.GetVisAttributes()); + + switch (polymarker.GetMarkerType()) { + default: + case G4Polymarker::dots: + { + const size_t nDots = polymarker.size(); + + auto transform = G4Qt3DUtils::CreateQTransformFrom(fObjectTransformation); + transform->setObjectName("transform"); + + auto polymarkerEntity = new Qt3DCore::QEntity(currentNode); + polymarkerEntity->addComponent(transform); + + const auto vertexByteSize = 3*sizeof(PRECISION); + + QByteArray polymarkerByteArray; + const auto polymarkerBufferByteSize = nDots*vertexByteSize; + polymarkerByteArray.resize(polymarkerBufferByteSize); + auto polymarkerBufferArray = reinterpret_cast(polymarkerByteArray.data()); + G4int iMarker = 0; + for (size_t i = 0; i < polymarker.size(); ++i) { + polymarkerBufferArray[iMarker++] = polymarker[i].x(); + polymarkerBufferArray[iMarker++] = polymarker[i].y(); + polymarkerBufferArray[iMarker++] = polymarker[i].z(); + } + auto polymarkerGeometry = new Qt3DRender::QGeometry(); + polymarkerGeometry->setObjectName("polymarkerGeometry"); + auto polymarkerBuffer = new Qt3DRender::QBuffer(polymarkerGeometry); + polymarkerBuffer->setObjectName("Polymarker buffer"); + polymarkerBuffer->setData(polymarkerByteArray); + + auto polymarkerAtt = new Qt3DRender::QAttribute; + polymarkerAtt->setObjectName("Position attribute"); + polymarkerAtt->setName(Qt3DRender::QAttribute::defaultPositionAttributeName()); + polymarkerAtt->setBuffer(polymarkerBuffer); + polymarkerAtt->setAttributeType(Qt3DRender::QAttribute::VertexAttribute); + polymarkerAtt->setVertexBaseType(BASETYPE); + polymarkerAtt->setVertexSize(3); + polymarkerAtt->setCount(nDots); + polymarkerAtt->setByteOffset(0); + polymarkerAtt->setByteStride(vertexByteSize); + + const auto& colour = fpVisAttribs->GetColour(); + + polymarkerGeometry->addAttribute(polymarkerAtt); + + auto material = new Qt3DExtras::QDiffuseSpecularMaterial(); + material->setObjectName("materialForPolymarker"); + material->setAmbient(G4Qt3DUtils::ConvertToQColor(colour)); + material->setShininess(0.); + material->setSpecular(0.); + polymarkerEntity->addComponent(material); + + auto renderer = new Qt3DRender::QGeometryRenderer; + renderer->setObjectName("polymarkerWireframeRenderer"); + renderer->setGeometry(polymarkerGeometry); + renderer->setVertexCount(nDots); + renderer->setPrimitiveType(Qt3DRender::QGeometryRenderer::Points); + polymarkerEntity->addComponent(renderer); + } + break; + case G4Polymarker::circles: + { + G4Circle circle (polymarker); // Default circle + + const auto& colour = fpVisAttribs->GetColour(); + auto material = new Qt3DExtras::QDiffuseSpecularMaterial(); + material->setObjectName("materialForCircle"); + material->setAmbient(G4Qt3DUtils::ConvertToQColor(colour)); + if (colour.GetAlpha() < 1.) material->setAlphaBlendingEnabled(true); + + auto sphereMesh = new Qt3DExtras::QSphereMesh; + sphereMesh->setObjectName("sphereMesh"); + G4double radius; + if (circle.GetSizeType() == G4VMarker::world ) { + radius =circle.GetWorldRadius(); + } else { // Screen-size or none + // Not figured out how to do screen-size, so use scene extent + const G4double scale = 200.; // Roughly pixles per scene + radius = circle.GetScreenRadius()*fpScene->GetExtent().GetExtentRadius()/scale; + } + sphereMesh->setRadius(radius); + + for (size_t iPoint = 0; iPoint < polymarker.size (); iPoint++) { + auto position = fObjectTransformation*G4Translate3D(polymarker[iPoint]); + auto transform = G4Qt3DUtils::CreateQTransformFrom(position); + auto currentEntity = new Qt3DCore::QEntity(currentNode); + currentEntity->addComponent(material); + currentEntity->addComponent(transform); + currentEntity->addComponent(sphereMesh); + } + } + break; + case G4Polymarker::squares: + { + G4Square square (polymarker); // Default square + + const auto& colour = fpVisAttribs->GetColour(); + auto material = new Qt3DExtras::QDiffuseSpecularMaterial(); + material->setObjectName("materialForSquare"); + material->setAmbient(G4Qt3DUtils::ConvertToQColor(colour)); + if (colour.GetAlpha() < 1.) material->setAlphaBlendingEnabled(true); + + auto boxMesh = new Qt3DExtras::QCuboidMesh(); + boxMesh->setObjectName("boxMesh"); + G4double side; + if (square.GetSizeType() == G4VMarker::world ) { + side = square.GetWorldDiameter(); + } else { // Screen-size or none + // Not figured out how to do screen-size, so use scene extent + const G4double scale = 200.; // Roughly pixles per scene + side = square.GetScreenDiameter()*fpScene->GetExtent().GetExtentRadius()/scale; + } + boxMesh->setXExtent(side); + boxMesh->setYExtent(side); + boxMesh->setZExtent(side); + + for (size_t iPoint = 0; iPoint < polymarker.size (); iPoint++) { + auto position = fObjectTransformation*G4Translate3D(polymarker[iPoint]); + auto transform = G4Qt3DUtils::CreateQTransformFrom(position); + auto currentEntity = new Qt3DCore::QEntity(currentNode); + currentEntity->addComponent(material); + currentEntity->addComponent(transform); + currentEntity->addComponent(boxMesh); + } + } + break; + } +} + +void G4Qt3DSceneHandler::AddPrimitive(const G4Text& text) { +#ifdef G4QT3DDEBUG + G4cout << + "G4Qt3DSceneHandler::AddPrimitive(const G4Text& text) called.\n" + << text + << G4endl; +#endif + + static G4bool first = true; + if (first) { + first = false; + G4Exception("G4Qt3DSceneHandler::AddPrimitive(const G4Text& text)", + "qt3D-0002", JustWarning, + "Text drawing not yet implemented"); + } + return; + + auto currentNode = CreateNewNode(); + if (!currentNode) return; // Node not available + + fpVisAttribs = fpViewer->GetApplicableVisAttributes(text.GetVisAttributes()); + + auto position = fObjectTransformation*G4Translate3D(text.GetPosition()); + auto transform = G4Qt3DUtils::CreateQTransformFrom(position); + transform->setScale(10); + + // This simply does not work + // auto qtext = new Qt3DExtras::QText2DEntity(currentNode); + // qtext->setText(text.GetText().c_str()); + // qtext->setHeight(100); + // qtext->setWidth(1000); + // qtext->setColor(Qt::green); + // qtext->setFont(QFont("Courier New", 10)); + // + // qtext->addComponent(transform); + // qtext->addComponent(material); + + // This produces text in 3D facing +z - not what we want + const auto& colour = GetTextColour(text); + auto material = new Qt3DExtras::QDiffuseSpecularMaterial(); + material->setObjectName("materialForText"); + material->setAmbient(G4Qt3DUtils::ConvertToQColor(colour)); + if (colour.GetAlpha() < 1.) material->setAlphaBlendingEnabled(true); + + auto textMesh = new Qt3DExtras::QExtrudedTextMesh(); + textMesh->setText(text.GetText().c_str()); + textMesh->setFont(QFont("Courier New", 10)); + textMesh->setDepth(.01f); + + currentNode->addComponent(material); + currentNode->addComponent(transform); + currentNode->addComponent(textMesh); +} + +void G4Qt3DSceneHandler::AddPrimitive(const G4Circle& circle) +{ +#ifdef G4QT3DDEBUG + G4cout << + "G4Qt3DSceneHandler::AddPrimitive(const G4Circle& circle) called.\n" + << circle + << G4endl; +#endif + +#ifdef G4QT3DDEBUG + MarkerSizeType sizeType; + G4double size = GetMarkerSize (circle, sizeType); + switch (sizeType) { + default: + case screen: + // Draw in screen coordinates. + G4cout << "screen"; + break; + case world: + // Draw in world coordinates. + G4cout << "world"; + break; + } + G4cout << " size: " << size << G4endl; +#endif + + auto currentNode = CreateNewNode(); + if (!currentNode) return; // Node not available + + fpVisAttribs = fpViewer->GetApplicableVisAttributes(circle.GetVisAttributes()); + + auto position = fObjectTransformation*G4Translate3D(circle.GetPosition()); + auto transform = G4Qt3DUtils::CreateQTransformFrom(position); + + const auto& colour = fpVisAttribs->GetColour(); + auto material = new Qt3DExtras::QDiffuseSpecularMaterial(); + material->setObjectName("materialForCircle"); + material->setAmbient(G4Qt3DUtils::ConvertToQColor(colour)); + if (colour.GetAlpha() < 1.) material->setAlphaBlendingEnabled(true); + + auto sphereMesh = new Qt3DExtras::QSphereMesh; + sphereMesh->setObjectName("sphereMesh"); + G4double radius; + if (circle.GetSizeType() == G4VMarker::world ) { + radius =circle.GetWorldRadius(); + } else { // Screen-size or none + // Not figured out how to do screen-size, so use scene extent + const G4double scale = 200.; // Roughly pixles per scene + radius = circle.GetScreenRadius()*fpScene->GetExtent().GetExtentRadius()/scale; + } + sphereMesh->setRadius(radius); + + auto currentEntity = new Qt3DCore::QEntity(currentNode); + currentEntity->addComponent(material); + currentEntity->addComponent(transform); + currentEntity->addComponent(sphereMesh); +} + +void G4Qt3DSceneHandler::AddPrimitive(const G4Square& square) +{ +#ifdef G4QT3DDEBUG + G4cout << + "G4Qt3DSceneHandler::AddPrimitive(const G4Square& square) called.\n" + << square + << G4endl; +#endif + +#ifdef G4QT3DDEBUG + MarkerSizeType sizeType; + G4double size = GetMarkerSize (square, sizeType); + switch (sizeType) { + default: + case screen: + // Draw in screen coordinates. + G4cout << "screen"; + break; + case world: + // Draw in world coordinates. + G4cout << "world"; + break; + } + G4cout << " size: " << size << G4endl; +#endif + + auto currentNode = CreateNewNode(); + if (!currentNode) return; // Node not available + + fpVisAttribs = fpViewer->GetApplicableVisAttributes(square.GetVisAttributes()); + + auto position = fObjectTransformation*G4Translate3D(square.GetPosition()); + auto transform = G4Qt3DUtils::CreateQTransformFrom(position); + + const auto& colour = fpVisAttribs->GetColour(); + auto material = new Qt3DExtras::QDiffuseSpecularMaterial(); + material->setObjectName("materialForSquare"); + material->setAmbient(G4Qt3DUtils::ConvertToQColor(colour)); + if (colour.GetAlpha() < 1.) material->setAlphaBlendingEnabled(true); + + auto boxMesh = new Qt3DExtras::QCuboidMesh(); + boxMesh->setObjectName("boxMesh"); + G4double side; + if (square.GetSizeType() == G4VMarker::world ) { + side = square.GetWorldDiameter(); + } else { // Screen-size or none + // Not figured out how to do screen-size, so use scene extent + const G4double scale = 200.; // Roughly pixles per scene + side = square.GetScreenDiameter()*fpScene->GetExtent().GetExtentRadius()/scale; + } + boxMesh->setXExtent(side); + boxMesh->setYExtent(side); + boxMesh->setZExtent(side); + + auto currentEntity = new Qt3DCore::QEntity(currentNode); + currentEntity->addComponent(material); + currentEntity->addComponent(transform); + currentEntity->addComponent(boxMesh); +} + +void G4Qt3DSceneHandler::AddPrimitive(const G4Polyhedron& polyhedron) +{ + auto currentNode = CreateNewNode(); + if (!currentNode) return; // Node not available + + if (polyhedron.GetNoFacets() == 0) return; + + fpVisAttribs = fpViewer->GetApplicableVisAttributes(polyhedron.GetVisAttributes()); + + // Roll out vertices and normals for the faces. Note that this means vertices + // are duplicated. For example a box has 8 vertices, but to define 6 faces + // you need 12 triangles and 36 vertices. If it was just a matter of vertices + // we could restrict the number to 8 and use the indices to define the + // triangles, but we also have to consider the normals. A vertex can be have + // more than one normal, depending on which face it is being used to define. + // So we roll out all the vertices and normals for each triangle. + std::vector vertices; + std::vector normals; + + // Also roll out edges (as lines) for wireframe. Avoid duplicate lines, + // including those that differ only in the order of vertices. + typedef std::pair Line; + std::vector lines; + auto insertIfNew = [&lines](const Line& newLine) { + for (const auto& line: lines) { + if ((newLine.first==line.first && newLine.second==line.second) || + (newLine.first==line.second && newLine.second==line.first)) + return; + } + lines.push_back(newLine); + }; + + G4bool notLastFace; + do { + G4int nEdges; + G4Point3D vertex [4]; + G4int edgeFlag[4]; + G4Normal3D normal [4]; + notLastFace = polyhedron.GetNextFacet(nEdges, vertex, edgeFlag, normal); + vertices.push_back(vertex[0]); + vertices.push_back(vertex[1]); + vertices.push_back(vertex[2]); + normals.push_back(normal[0]); + normals.push_back(normal[1]); + normals.push_back(normal[2]); + insertIfNew(Line(vertex[0],vertex[1])); + insertIfNew(Line(vertex[1],vertex[2])); + if (nEdges == 3) { + // Face is a triangle + // One more line for wireframe, triangles for surfaces are complete + insertIfNew(Line(vertex[2],vertex[0])); + } else if (nEdges == 4) { + // Face is a quadrilateral + // Create another triangle for surfaces, add two more lines for wireframe + vertices.push_back(vertex[2]); + vertices.push_back(vertex[3]); + vertices.push_back(vertex[0]); + normals.push_back(normal[2]); + normals.push_back(normal[3]); + normals.push_back(normal[0]); + insertIfNew(Line(vertex[2],vertex[3])); + insertIfNew(Line(vertex[3],vertex[0])); + } else { + G4cerr << "ERROR: polyhedron face with more than 4 edges" << G4endl; + return; + } + } while (notLastFace); + const auto nVerts = vertices.size(); + const auto nLines = lines.size(); + + // Now put stuff into Qt objects + + auto transform = G4Qt3DUtils::CreateQTransformFrom(fObjectTransformation); + transform->setObjectName("transform"); + + Qt3DCore::QEntity* wireframeEntity = nullptr; + Qt3DCore::QEntity* surfaceEntity = nullptr; + static G4int errorCount = 0; + G4ViewParameters::DrawingStyle drawing_style = GetDrawingStyle (fpVisAttribs); + switch (drawing_style) { + case G4ViewParameters::wireframe: + wireframeEntity = new Qt3DCore::QEntity(currentNode); + wireframeEntity->addComponent(transform); + break; + case G4ViewParameters::hlr: + wireframeEntity = new Qt3DCore::QEntity(currentNode); + wireframeEntity->addComponent(transform); + surfaceEntity = new Qt3DCore::QEntity(currentNode); + surfaceEntity->addComponent(transform); + break; + case G4ViewParameters::hsr: + surfaceEntity = new Qt3DCore::QEntity(currentNode); + surfaceEntity->addComponent(transform); + break; + case G4ViewParameters::hlhsr: + wireframeEntity = new Qt3DCore::QEntity(currentNode); + wireframeEntity->addComponent(transform); + surfaceEntity = new Qt3DCore::QEntity(currentNode); + surfaceEntity->addComponent(transform); + break; + case G4ViewParameters::cloud: + // Shouldn't happen in this function (it's a polyhedron!) + if (errorCount == 0) { + ++errorCount; + G4cerr << "WARNING: Qt3D: cloud drawing not implemented" << G4endl; + } + return; + break; + } + + const auto vertexByteSize = 3*sizeof(PRECISION); + + Qt3DRender::QGeometry* vertexGeometry = nullptr; + Qt3DRender::QGeometry* lineGeometry = nullptr; + + Qt3DRender::QAttribute* positionAtt = nullptr; + Qt3DRender::QAttribute* normalAtt = nullptr; + Qt3DRender::QAttribute* lineAtt = nullptr; + + Qt3DRender::QBuffer* vertexBuffer = nullptr; + if (drawing_style == G4ViewParameters::hlr || + drawing_style == G4ViewParameters::hsr || + drawing_style == G4ViewParameters::hlhsr) { + + // Put vertices, normals into QByteArray + // Accomodates both vertices and normals - hence 2* + QByteArray vertexByteArray; + const auto vertexBufferByteSize = 2*nVerts*vertexByteSize; + vertexByteArray.resize(vertexBufferByteSize); + auto vertexBufferArray = reinterpret_cast(vertexByteArray.data()); + G4int i1 = 0; + for (size_t i = 0; i < nVerts; i++) { + vertexBufferArray[i1++] = vertices[i].x(); + vertexBufferArray[i1++] = vertices[i].y(); + vertexBufferArray[i1++] = vertices[i].z(); + vertexBufferArray[i1++] = normals[i].x(); + vertexBufferArray[i1++] = normals[i].y(); + vertexBufferArray[i1++] = normals[i].z(); + } + // Vertex buffer (vertices and normals) + vertexGeometry = new Qt3DRender::QGeometry(); + vertexGeometry->setObjectName("vertexGeometry"); + vertexBuffer = new Qt3DRender::QBuffer(vertexGeometry); + vertexBuffer->setObjectName("Vertex buffer"); + vertexBuffer->setData(vertexByteArray); + + // Position attribute + positionAtt = new Qt3DRender::QAttribute; + positionAtt->setObjectName("Position attribute"); + positionAtt->setName(Qt3DRender::QAttribute::defaultPositionAttributeName()); + positionAtt->setBuffer(vertexBuffer); + positionAtt->setAttributeType(Qt3DRender::QAttribute::VertexAttribute); + positionAtt->setVertexBaseType(BASETYPE); + positionAtt->setVertexSize(3); + positionAtt->setCount(nVerts); + positionAtt->setByteOffset(0); + positionAtt->setByteStride(2*vertexByteSize); + + // Normal attribute + normalAtt = new Qt3DRender::QAttribute; + normalAtt->setObjectName("Normal attribute"); + normalAtt->setName(Qt3DRender::QAttribute::defaultNormalAttributeName()); + normalAtt->setBuffer(vertexBuffer); + normalAtt->setAttributeType(Qt3DRender::QAttribute::VertexAttribute); + normalAtt->setVertexBaseType(BASETYPE); + normalAtt->setVertexSize(3); + normalAtt->setCount(nVerts); + normalAtt->setByteOffset(vertexByteSize); + normalAtt->setByteStride(2*vertexByteSize); + } + + Qt3DRender::QBuffer* lineBuffer = nullptr; + if (drawing_style == G4ViewParameters::wireframe || + drawing_style == G4ViewParameters::hlr || + drawing_style == G4ViewParameters::hlhsr) { + + // Put lines into a QByteArray + QByteArray lineByteArray; + const auto lineBufferByteSize = 2*nLines*vertexByteSize; + lineByteArray.resize(lineBufferByteSize); + auto lineBufferArray = reinterpret_cast(lineByteArray.data()); + G4int i2 = 0; + for (const auto& line: lines) { + lineBufferArray[i2++] = line.first.x(); + lineBufferArray[i2++] = line.first.y(); + lineBufferArray[i2++] = line.first.z(); + lineBufferArray[i2++] = line.second.x(); + lineBufferArray[i2++] = line.second.y(); + lineBufferArray[i2++] = line.second.z(); + } + // Line loop buffer + lineGeometry = new Qt3DRender::QGeometry(); + lineGeometry->setObjectName("lineGeometry"); + lineBuffer = new Qt3DRender::QBuffer(lineGeometry); + lineBuffer->setObjectName("Line buffer"); + lineBuffer->setData(lineByteArray); + + // Line attribute + lineAtt = new Qt3DRender::QAttribute; + lineAtt->setObjectName("Position attribute"); + lineAtt->setName(Qt3DRender::QAttribute::defaultPositionAttributeName()); + lineAtt->setBuffer(lineBuffer); + lineAtt->setAttributeType(Qt3DRender::QAttribute::VertexAttribute); + lineAtt->setVertexBaseType(BASETYPE); + lineAtt->setVertexSize(3); + lineAtt->setCount(nLines); + lineAtt->setByteOffset(0); + lineAtt->setByteStride(vertexByteSize); + } + + // Create material and renderer(s)... + + const auto& colour = fpVisAttribs->GetColour(); + Qt3DExtras::QDiffuseSpecularMaterial* material; + Qt3DRender::QGeometryRenderer* renderer; + switch (drawing_style) { + + case G4ViewParameters::wireframe: + + lineGeometry->addAttribute(lineAtt); + + material = new Qt3DExtras::QDiffuseSpecularMaterial(); + material->setObjectName("materialForWireframe"); + material->setAmbient(G4Qt3DUtils::ConvertToQColor(colour)); + material->setShininess(0.); + material->setSpecular(0.); + wireframeEntity->addComponent(material); + + renderer = new Qt3DRender::QGeometryRenderer; + renderer->setObjectName("polyhedronWireframeRenderer"); + renderer->setGeometry(lineGeometry); + renderer->setVertexCount(2*nLines); + renderer->setPrimitiveType(Qt3DRender::QGeometryRenderer::Lines); + wireframeEntity->addComponent(renderer); + + break; + + case G4ViewParameters::hlr: + + // Surfaces with background colour to hide the edges + + vertexGeometry->addAttribute(positionAtt); + vertexGeometry->addAttribute(normalAtt); + + material = new Qt3DExtras::QDiffuseSpecularMaterial(); + material->setObjectName("materialForHiddenLines"); + material->setAmbient(Qt::white); // White for now (should be from fVP) + material->setShininess(0.); + material->setSpecular(0.); + surfaceEntity->addComponent(material); + + renderer = new Qt3DRender::QGeometryRenderer; + renderer->setObjectName("polyhedronSurfaceRenderer"); + renderer->setGeometry(vertexGeometry); + renderer->setVertexCount(nVerts); + renderer->setPrimitiveType(Qt3DRender::QGeometryRenderer::Triangles); + surfaceEntity->addComponent(renderer); + + // Edges + + lineGeometry->addAttribute(lineAtt); + + material = new Qt3DExtras::QDiffuseSpecularMaterial(); + material->setObjectName("materialForWireFrame"); + material->setAmbient(G4Qt3DUtils::ConvertToQColor(colour)); + material->setShininess(0.); + material->setSpecular(0.); + wireframeEntity->addComponent(material); + + renderer = new Qt3DRender::QGeometryRenderer; + renderer->setObjectName("polyhedronWireframeRenderer"); + renderer->setGeometry(lineGeometry); + renderer->setVertexCount(2*nLines); + renderer->setPrimitiveType(Qt3DRender::QGeometryRenderer::Lines); + wireframeEntity->addComponent(renderer); + + break; + + case G4ViewParameters::hsr: + + vertexGeometry->addAttribute(positionAtt); + vertexGeometry->addAttribute(normalAtt); + + material = new Qt3DExtras::QDiffuseSpecularMaterial(); + material->setObjectName("materialForSurface"); + material->setAmbient(G4Qt3DUtils::ConvertToQColor(colour)); + if (colour.GetAlpha() < 1.) material->setAlphaBlendingEnabled(true); + surfaceEntity->addComponent(material); + + renderer = new Qt3DRender::QGeometryRenderer; + renderer->setObjectName("polyhedronSurfaceRenderer"); + renderer->setGeometry(vertexGeometry); + renderer->setVertexCount(nVerts); + renderer->setPrimitiveType(Qt3DRender::QGeometryRenderer::Triangles); + surfaceEntity->addComponent(renderer); + + break; + + case G4ViewParameters::hlhsr: + + // Surfaces + + vertexGeometry->addAttribute(positionAtt); + vertexGeometry->addAttribute(normalAtt); + + material = new Qt3DExtras::QDiffuseSpecularMaterial(); + material->setObjectName("materialForSurface"); + material->setAmbient(G4Qt3DUtils::ConvertToQColor(colour)); + if (colour.GetAlpha() < 1.) material->setAlphaBlendingEnabled(true); + surfaceEntity->addComponent(material); + + renderer = new Qt3DRender::QGeometryRenderer; + renderer->setObjectName("polyhedronSurfaceRenderer"); + renderer->setGeometry(vertexGeometry); + renderer->setVertexCount(nVerts); + renderer->setPrimitiveType(Qt3DRender::QGeometryRenderer::Triangles); + surfaceEntity->addComponent(renderer); + + // Edges + + lineGeometry->addAttribute(lineAtt); + + material = new Qt3DExtras::QDiffuseSpecularMaterial(); + material->setObjectName("materialForWireframe"); + material->setAmbient(G4Qt3DUtils::ConvertToQColor(colour)); + material->setShininess(0.); + material->setSpecular(0.); + wireframeEntity->addComponent(material); + + renderer = new Qt3DRender::QGeometryRenderer; + renderer->setObjectName("polyhedronSurfaceRenderer"); + renderer->setGeometry(lineGeometry); + renderer->setVertexCount(2*nLines); + renderer->setPrimitiveType(Qt3DRender::QGeometryRenderer::Lines); + wireframeEntity->addComponent(renderer); + + break; + + case G4ViewParameters::cloud: + // Case trapped at start of function, so no need to implement + break; + } +} + +void G4Qt3DSceneHandler::ClearStore () +{ + G4Qt3DUtils::delete_components_and_children_of_entity_recursively(fpQt3DScene); + EstablishG4Qt3DQEntities(); +} + +void G4Qt3DSceneHandler::ClearTransientStore () +{ + G4Qt3DUtils::delete_components_and_children_of_entity_recursively(fpTransientObjects); +} + +#endif // #if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) diff --git a/source/visualization/Qt3D/src/G4Qt3DUtils.cc b/source/visualization/Qt3D/src/G4Qt3DUtils.cc new file mode 100644 index 0000000000..73527d1915 --- /dev/null +++ b/source/visualization/Qt3D/src/G4Qt3DUtils.cc @@ -0,0 +1,182 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// John Allison, 18th July 2020 + +#if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) + +#include "G4Qt3DUtils.hh" + +#include "G4Qt3DQEntity.hh" +#include "G4PhysicalVolumeModel.hh" + +Qt3DCore::QTransform* G4Qt3DUtils::CreateQTransformFrom(const G4Transform3D& g) +{ + auto* q = new Qt3DCore::QTransform; + q->setMatrix + (QMatrix4x4 + (g.xx(),g.xy(),g.xz(),g.dx(), + g.yx(),g.yy(),g.yz(),g.dy(), + g.zx(),g.zy(),g.zz(),g.dz(), + 0,0,0,1)); + q->setObjectName("transform"); + return q; +} + +QColor G4Qt3DUtils::ConvertToQColor(const G4Colour& c) { + QColor qColor; + qColor.setRgbF(c.GetRed(),c.GetGreen(),c.GetBlue(),c.GetAlpha()); + return qColor; +} + +QVector3D G4Qt3DUtils::ConvertToQVector3D(const G4ThreeVector& v) { + return QVector3D(v.x(),v.y(),v.z()); +} + +// https://stackoverflow.com/questions/45759274/how-can-i-delete-all-nodes-recursively-in-the-root-entity-of-qt3dwindow +void G4Qt3DUtils::delete_entity_recursively(Qt3DCore::QNode *node){ +#ifdef G4QT3DDEBUG + G4Qt3DUtils::LogFile << "node " << node->objectName().toStdString() << std::endl; +#endif + Qt3DCore::QEntity* entity = dynamic_cast(node); + if(entity == nullptr){ + G4String name = node->objectName().toStdString(); + if (name == "") name = "X"; +#ifdef G4QT3DDEBUG + G4Qt3DUtils::LogFile << (void*)node << ": " + << "Deleting non-entity node " << name << std::endl; +#endif + delete node; + node = nullptr; + return; + } + for (auto component: entity->components()) { + G4String name = component->objectName().toStdString(); + if (name == "") name = "X"; +#ifdef G4QT3DDEBUG + G4Qt3DUtils::LogFile << (void*)node << ": " << "Deleting component " << name + << " of " << entity->objectName().toStdString() << std::endl; +#endif + entity->removeComponent(component); + delete component; + component = nullptr; + } + for (auto child_node: entity->childNodes()) { + G4String name = child_node->objectName().toStdString(); + if (name == "") name = "X"; +#ifdef G4QT3DDEBUG + G4Qt3DUtils::LogFile << (void*)child_node << ": " << "Child node " << name + << " of " << entity->objectName().toStdString() << std::endl; +#endif + delete_entity_recursively(child_node); + } + G4String name = entity->objectName().toStdString(); + if (name == "") name = "X"; +#ifdef G4QT3DDEBUG + G4Qt3DUtils::LogFile << (void*)entity << ": " << "Deleting entity " << name << std::endl; +#endif + delete entity; + entity = nullptr; +} + +void G4Qt3DUtils::delete_components_and_children_of_entity_recursively(Qt3DCore::QNode *node){ + Qt3DCore::QEntity* entity = dynamic_cast(node); + if(entity == nullptr){ + G4String name = node->objectName().toStdString(); + if (name == "") name = "X"; +#ifdef G4QT3DDEBUG + G4Qt3DUtils::LogFile << (void*)node << ": " << "Found non-entity node " << name << std::endl; +#endif + return; + } + for (auto component: entity->components()){ + G4String name = component->objectName().toStdString(); + if (name == "") name = "X"; +#ifdef G4QT3DDEBUG + G4Qt3DUtils::LogFile << (void*)entity << ": " << "Deleting component " << name + << " of " << entity->objectName().toStdString() << std::endl; +#endif + entity->removeComponent(component); + delete(component); + component = nullptr; + } + auto child_nodes = entity->childNodes(); + for (auto child_node: child_nodes) { + G4String name = child_node->objectName().toStdString(); + if (name == "") name = "X"; +#ifdef G4QT3DDEBUG + G4Qt3DUtils::LogFile << (void*)child_node << ": " << "Child node " << name + << " of " << entity->objectName().toStdString() << std::endl; +#endif + delete_entity_recursively(child_node); + } + G4String name = entity->objectName().toStdString(); + if (name == "") name = "X"; +#ifdef G4QT3DDEBUG + G4Qt3DUtils::LogFile << (void*)entity << ": " << "Clearing child nodes of " << name << std::endl; +#endif + child_nodes.clear(); +} + +#ifdef G4QT3DDEBUG +std::ofstream G4Qt3DUtils::LogFile("LogFile.txt"); +void G4Qt3DUtils::PrintQObjectTree + (const QObject* node, + const G4String& where) +{ + auto& logFile = G4Qt3DUtils::LogFile; + if (where.length()) logFile << "\n===== QObjectTree at " << where << std::endl; + static G4int iDep = -1; + ++iDep; + const auto* g4node = dynamic_cast(node); + G4String nodeName = node->objectName().toStdString(); + if (nodeName == "") nodeName = "X"; + for (G4int i = 0; i < iDep; ++i) logFile << " "; + logFile << (void*)node << ": " + << "Node at depth " << iDep << ": " << nodeName << ": "; + if (g4node) { + logFile << g4node->GetPVNodeID() << std::endl; + } else { + logFile << typeid(node).name() << std::endl; + } + if (g4node) { + for (const auto& component: g4node->components()) { + G4String name = component->objectName().toStdString(); + if (name == "") name = "X"; + for (G4int i = 0; i < iDep; ++i) logFile << " "; + logFile << (void*)component << ": "<< "Component at depth " << iDep << " " + << name << " of " << nodeName << std::endl; + } + } + for (const auto& child: node->children()) { + PrintQObjectTree(child); + } + --iDep; + if (where.length()) logFile << "===== End: QObjectTree at " << where << std::endl; + return; +} +#endif + +#endif // #if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) diff --git a/source/visualization/Qt3D/src/G4Qt3DViewer.cc b/source/visualization/Qt3D/src/G4Qt3DViewer.cc new file mode 100644 index 0000000000..811857d9a5 --- /dev/null +++ b/source/visualization/Qt3D/src/G4Qt3DViewer.cc @@ -0,0 +1,361 @@ +// +// ******************************************************************** +// * License and Disclaimer * +// * * +// * The Geant4 software is copyright of the Copyright Holders of * +// * the Geant4 Collaboration. It is provided under the terms and * +// * conditions of the Geant4 Software License, included in the file * +// * LICENSE and available at http://cern.ch/geant4/license . These * +// * include a list of copyright holders. * +// * * +// * Neither the authors of this software system, nor their employing * +// * institutes,nor the agencies providing financial support for this * +// * work make any representation or warranty, express or implied, * +// * regarding this software system or assume any liability for its * +// * use. Please see the license in the file LICENSE and URL above * +// * for the full disclaimer and the limitation of liability. * +// * * +// * This code implementation is the result of the scientific and * +// * technical work of the GEANT4 collaboration. * +// * By using, copying, modifying or distributing the software (or * +// * any work based on the software) you agree to acknowledge its * +// * use in resulting scientific publications, and indicate your * +// * acceptance of all terms of the Geant4 Software license. * +// ******************************************************************** +// +// John Allison 17th June 2019 + +#if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) + +#include "G4Qt3DViewer.hh" + +#include "G4Qt3DSceneHandler.hh" +#include "G4Qt3DUtils.hh" + +#include "G4Scene.hh" +#include "G4UImanager.hh" +#include "G4UIQt.hh" +#include "G4SystemOfUnits.hh" + +G4Qt3DViewer::G4Qt3DViewer +(G4Qt3DSceneHandler& sceneHandler, const G4String& name) +: G4VViewer(sceneHandler, sceneHandler.IncrementViewCount(), name) +, fQt3DSceneHandler(sceneHandler) +, fKeyPressed(false) +, fMousePressed(false) +, fMousePressedX(0.) +, fMousePressedY(0.) +{ + setObjectName(fName.c_str()); + + fVP.SetAutoRefresh(true); + fDefaultVP.SetAutoRefresh(true); + + // Background is white (not figured out how to change it) so... + fVP.SetDefaultColour(G4Colour::Black()); + fDefaultVP.SetDefaultColour(G4Colour::Black()); + + auto UI = G4UImanager::GetUIpointer(); + auto uiQt = dynamic_cast(UI->GetG4UIWindow()); + if (!uiQt) { + fViewId = -1; // This flags an error. + G4cerr << "G4Qt3DViewer::G4Qt3DViewer requires G4UIQt" + << G4endl; + return; + } + fUIWidget = QWidget::createWindowContainer(this); + uiQt->AddTabWidget(fUIWidget,QString(fName)); + + setRootEntity(fQt3DSceneHandler.fpQt3DScene); +} + +G4Qt3DViewer::~G4Qt3DViewer() +{} + +void G4Qt3DViewer::SetView() +{ + // Get radius of scene, etc. + // Note that this procedure properly takes into account zoom, dolly and pan. + const G4Point3D targetPoint + = fSceneHandler.GetScene()->GetStandardTargetPoint() + + fVP.GetCurrentTargetPoint (); + G4double radius = fSceneHandler.GetScene()->GetExtent().GetExtentRadius(); + if(radius<=0.) radius = 1.; + const G4double cameraDistance = fVP.GetCameraDistance (radius); + const G4Point3D cameraPosition = + targetPoint + cameraDistance * fVP.GetViewpointDirection().unit(); + const GLdouble pnear = fVP.GetNearDistance (cameraDistance, radius); + const GLdouble pfar = fVP.GetFarDistance (cameraDistance, pnear, radius); + const GLdouble right = fVP.GetFrontHalfHeight (pnear, radius); + const GLdouble left = -right; + const GLdouble top = fVP.GetFrontHalfHeight (pnear, radius); + const GLdouble bottom = -top; + + camera()->setObjectName((fName + " camera").c_str()); + camera()->setViewCenter(G4Qt3DUtils::ConvertToQVector3D(targetPoint)); + camera()->setPosition(G4Qt3DUtils::ConvertToQVector3D(cameraPosition)); + camera()->setUpVector(G4Qt3DUtils::ConvertToQVector3D(fVP.GetUpVector())); + +// auto lightEntity = new Qt3DCore::QEntity(fQt3DSceneHandler.fpQt3DScene); +// auto directionalLight = new Qt3DRender::QDirectionalLight(lightEntity); +//// directionalLight->setColor("white"); +//// directionalLight->setIntensity(1.); +// directionalLight->setWorldDirection(G4Qt3DUtils::ConvertToQVector3D(fVP.GetActualLightpointDirection())); +// lightEntity->addComponent(directionalLight); + + const auto& size = fUIWidget->size(); + G4double w = size.width(); + G4double h = size.height(); +#ifdef G4QT3DDEBUG + // Curiously w,h are wrong first time - 640,480 instead of (my Mac) 991,452. + G4cout << "W,H: " << w << ',' << h << G4endl; +#endif + const G4double aspectRatio = w/h; + if (fVP.GetFieldHalfAngle() == 0.) { + camera()->lens()->setOrthographicProjection + (left*aspectRatio,right*aspectRatio,bottom,top,pnear,pfar); + } else { + camera()->lens()->setPerspectiveProjection + (2.*fVP.GetFieldHalfAngle()/deg,aspectRatio,pnear,pfar); + } +} + +void G4Qt3DViewer::ClearView() +{} + +void G4Qt3DViewer::DrawView() +{ + // First, a view should decide when to re-visit the G4 kernel. + // Sometimes it might not be necessary, e.g., if the scene is stored + // in a graphical database (e.g., OpenGL's display lists) and only + // the viewing angle has changed. But graphics systems without a + // graphical database will always need to visit the G4 kernel. + + // The fNeedKernelVisit flag might have been set by the user in + // /vis/viewer/rebuild, but if not, make decision and set flag only + // if necessary... + if (!fNeedKernelVisit) KernelVisitDecision(); + G4bool kernelVisitWasNeeded = fNeedKernelVisit; // Keep (ProcessView resets). + fLastVP = fVP; + + ProcessView (); // Clears store and processes scene only if necessary. + + if (kernelVisitWasNeeded) { + // We might need to do something if the kernel was visited. + } else { + } + + // ...before finally... + FinishView (); // Flush streams and/or swap buffers. +} + +void G4Qt3DViewer::ShowView() +{ + show(); +} + +void G4Qt3DViewer::FinishView() +{ + show(); +} + +void G4Qt3DViewer::SwitchToVisSubThread() +{ +// fUIWidget->moveToThread(QThread::currentThread()); +// moveToThread(QThread::currentThread()); +// fQt3DSceneHandler.fpQt3DScene->moveToThread(QThread::currentThread()); +// fQt3DSceneHandler.fpTransientObjects->moveToThread(QThread::currentThread()); +#ifdef G4QT3DDEBUG +// G4cout +// << "G4Qt3DViewer::SwitchToVisSubThread: (void*)fQt3DSceneHandler.fpQt3DScene: " +// << (void*)fQt3DSceneHandler.fpQt3DScene +// << G4endl; +#endif +} + +void G4Qt3DViewer::SwitchToMasterThread() +{ +// fUIWidget->moveToThread(QThread::currentThread()); +// moveToThread(QThread::currentThread()); +// fQt3DSceneHandler.fpQt3DScene->moveToThread(QThread::currentThread()); +// fQt3DSceneHandler.fpTransientObjects->moveToThread(QThread::currentThread()); +#ifdef G4QT3DDEBUG +// G4cout +// << "G4Qt3DViewer::SwitchToMasterThread: (void*)fQt3DSceneHandler.fpQt3DScene: " +// << (void*)fQt3DSceneHandler.fpQt3DScene +// << G4endl; +#endif + +#ifdef G4MULTITHREADED + if (G4Threading::IsMultithreadedApplication()) { + // I have not figured out how to draw during a run. In fact, even attempting + // to fill nodes gives the error "Cannot create children for a parent that + // is in a different thread." So instead draw events from kept events. + // + // Setting fNeedKernelVisit=true causes scene deletion and a complete rebuild, + // including trajectories, hits, etc. from kept events. + // + // Clearly this is a limitation because even if you run 1000 events you only + // get those kept (default 100), and even worse, if end-if-event-action is + // "refresh", you only get one event (the last I think). + // + // Also, strictly, there is no need to rebuid run-duration models (detector), + // but a complete rebuild is the easiest way (already imeplemented). + fNeedKernelVisit = true; + DrawView(); // Draw trajectories, etc., from kept events + } +#endif +} + +void G4Qt3DViewer::KernelVisitDecision () { + + // If there's a significant difference with the last view parameters + // of either the scene handler or this viewer, trigger a rebuild. + + if (CompareForKernelVisit(fLastVP)) { + NeedKernelVisit (); // Sets fNeedKernelVisit. + } +} + +G4bool G4Qt3DViewer::CompareForKernelVisit(G4ViewParameters& lastVP) +{ + // Typical comparison. Taken from OpenGL. + if ( + (lastVP.GetDrawingStyle () != fVP.GetDrawingStyle ()) || + (lastVP.GetNumberOfCloudPoints() != fVP.GetNumberOfCloudPoints()) || + (lastVP.IsAuxEdgeVisible () != fVP.IsAuxEdgeVisible ()) || + (lastVP.IsCulling () != fVP.IsCulling ()) || + (lastVP.IsCullingInvisible () != fVP.IsCullingInvisible ()) || + (lastVP.IsDensityCulling () != fVP.IsDensityCulling ()) || + (lastVP.IsCullingCovered () != fVP.IsCullingCovered ()) || + (lastVP.GetCBDAlgorithmNumber() != + fVP.GetCBDAlgorithmNumber()) || + (lastVP.IsSection () != fVP.IsSection ()) || + (lastVP.IsCutaway () != fVP.IsCutaway ()) || + (lastVP.IsExplode () != fVP.IsExplode ()) || + (lastVP.GetNoOfSides () != fVP.GetNoOfSides ()) || + (lastVP.GetGlobalMarkerScale() != fVP.GetGlobalMarkerScale()) || + (lastVP.GetGlobalLineWidthScale() != fVP.GetGlobalLineWidthScale()) || + (lastVP.IsMarkerNotHidden () != fVP.IsMarkerNotHidden ()) || + (lastVP.GetDefaultVisAttributes()->GetColour() != + fVP.GetDefaultVisAttributes()->GetColour()) || + (lastVP.GetDefaultTextVisAttributes()->GetColour() != + fVP.GetDefaultTextVisAttributes()->GetColour()) || + (lastVP.GetBackgroundColour ()!= fVP.GetBackgroundColour ())|| + (lastVP.IsPicking () != fVP.IsPicking ()) || + (lastVP.GetVisAttributesModifiers() != + fVP.GetVisAttributesModifiers()) + ) { + return true; + } + + if (lastVP.IsDensityCulling () && + (lastVP.GetVisibleDensity () != fVP.GetVisibleDensity ())) + return true; + + if (lastVP.GetCBDAlgorithmNumber() > 0) { + if (lastVP.GetCBDParameters().size() != fVP.GetCBDParameters().size()) return true; + else if (lastVP.GetCBDParameters() != fVP.GetCBDParameters()) return true; + } + + if (lastVP.IsExplode () && + (lastVP.GetExplodeFactor () != fVP.GetExplodeFactor ())) + return true; + + return false; +} + +void G4Qt3DViewer::keyPressEvent(QKeyEvent* ev) +{ + fKeyPressed = true; + fKey = ev->key(); +} + +void G4Qt3DViewer::keyReleaseEvent(QKeyEvent* /*ev*/) +{ + fKeyPressed = false; +} + +void G4Qt3DViewer::mouseDoubleClickEvent(QMouseEvent* /*ev*/) {} + +void G4Qt3DViewer::mouseMoveEvent(QMouseEvent* ev) +{ + // I think we only want these if a mouse button is pressed. + // But they come even when not pressed (on my MacBook Pro trackpad). + // Documentation says: + /* Mouse move events will occur only when a mouse button is pressed down, + unless mouse tracking has been enabled with QWidget::setMouseTracking().*/ + // But this is a window not a widget. + // As a workaround we maintain a flag changed by mousePress/ReleaseEvent. + + G4double x = ev->x(); + G4double y = ev->y(); + G4double dx = x-fMousePressedX; + G4double dy = y-fMousePressedY; + fMousePressedX = x; + fMousePressedY = y; + + if (fMousePressed) { + + if (fKeyPressed && fKey == Qt::Key_Shift) { // Translation (pan) + + const G4double sceneRadius = fQt3DSceneHandler.fpScene->GetExtent().GetExtentRadius(); + const G4double scale = 300; // Roughly pixels per window, empirically chosen + const G4double dxScene = dx*sceneRadius/scale; + const G4double dyScene = dy*sceneRadius/scale; + fVP.IncrementPan(-dxScene,dyScene); + + } else { // Rotation + + // Simple ad-hoc algorithms + const G4Vector3D& x_prime = fVP.GetViewpointDirection().cross(fVP.GetUpVector()); + const G4Vector3D& y_prime = x_prime.cross(fVP.GetViewpointDirection()); + const G4double scale = 200; // Roughly pixels per window, empirically chosen + G4Vector3D newViewpointDirection = fVP.GetViewpointDirection(); + newViewpointDirection += dx*x_prime/scale; + newViewpointDirection += dy*y_prime/scale; + fVP.SetViewpointDirection(newViewpointDirection.unit()); + + if (fVP.GetRotationStyle() == G4ViewParameters::freeRotation) { + G4Vector3D newUpVector = fVP.GetUpVector(); + newUpVector += dx*x_prime/scale; + newUpVector += dy*y_prime/scale; + fVP.SetUpVector(newUpVector.unit()); + } + } + } + + SetView(); + DrawView(); +} + +void G4Qt3DViewer::mousePressEvent(QMouseEvent* ev) +{ + fMousePressed = true; + fMousePressedX = ev->x(); + fMousePressedY = ev->y(); +} + +void G4Qt3DViewer::mouseReleaseEvent(QMouseEvent* /*ev*/) +{ + fMousePressed = false; +} + +void G4Qt3DViewer::wheelEvent(QWheelEvent* ev) +{ + // Take note of up-down motion only + const G4double angleY = ev->angleDelta().y(); + + if (fVP.GetFieldHalfAngle() == 0.) { // Orthographic projection + const G4double scale = 500; // Empirically chosen + fVP.MultiplyZoomFactor(1.+angleY/scale); + } else { // Perspective projection + const G4double scale = fVP.GetFieldHalfAngle()/(10.*deg); // Empirical + fVP.SetDolly(fVP.GetDolly()+angleY/scale); + } + + SetView(); + DrawView(); +} + +#endif // #if defined (G4VIS_BUILD_QT3D_DRIVER) || defined (G4VIS_USE_QT3D) diff --git a/source/visualization/RayTracer/GNUmakefile b/source/visualization/RayTracer/GNUmakefile index f16e9fe709..293a9e0724 100644 --- a/source/visualization/RayTracer/GNUmakefile +++ b/source/visualization/RayTracer/GNUmakefile @@ -6,7 +6,7 @@ ifndef G4INSTALL endif GLOBLIBS = libG4vis_management.lib libG4modeling.lib -GLOBLIBS += libG4run.lib libG4event.lib +GLOBLIBS += libG4tasking.lib libG4run.lib libG4event.lib GLOBLIBS += libG4tracking.lib libG4processes.lib libG4digits_hits.lib GLOBLIBS += libG4track.lib libG4particles.lib libG4geometry.lib GLOBLIBS += libG4materials.lib libG4graphics_reps.lib @@ -41,6 +41,7 @@ CPPFLAGS += -I$(G4BASE)/digits_hits/digits/include CPPFLAGS += -I$(G4BASE)/intercoms/include CPPFLAGS += -I$(G4BASE)/event/include CPPFLAGS += -I$(G4BASE)/run/include +CPPFLAGS += -I$(G4BASE)/tasking/include CPPFLAGS += -I$(G4BASE)/track/include CPPFLAGS += -I$(G4BASE)/tracking/include CPPFLAGS += -I$(G4BASE)/digits_hits/hits/include diff --git a/source/visualization/RayTracer/History b/source/visualization/RayTracer/History index b71aef1b4e..15261e0235 100644 --- a/source/visualization/RayTracer/History +++ b/source/visualization/RayTracer/History @@ -22,6 +22,18 @@ committal in the CVS repository ! History file for Ray Tracer category --------------------------------------- + +20th October 2020 Jonathan Madsen (raytracer-V10-06-03) +- Implemented G4RunManagerFactory::GetMasterRunManager() + +10th August 2020 John Allison (raytracer-V10-06-02) +- G4TheMTRayTracer.cc: + o Suppress printing during RayTracer run. Keep current verbosity and + printProgress, then + G4UImanager::GetUIpointer()->ApplyCommand("/run/verbose 0"); + G4UImanager::GetUIpointer()->ApplyCommand("/run/printProgress 0"); + then restore after. + 31 May 2020 Ben Morgan (raytracer-V10-06-01) - Use add_definitions to set PRIVATE-level compile add_definitions for compatibility between old and new CMake systems diff --git a/source/visualization/RayTracer/src/G4TheMTRayTracer.cc b/source/visualization/RayTracer/src/G4TheMTRayTracer.cc index 8a5e2cad2a..8f070587c4 100644 --- a/source/visualization/RayTracer/src/G4TheMTRayTracer.cc +++ b/source/visualization/RayTracer/src/G4TheMTRayTracer.cc @@ -44,6 +44,7 @@ #include "G4UImanager.hh" #include "G4UIcommand.hh" #include "G4VVisManager.hh" +#include "G4RunManagerFactory.hh" G4TheMTRayTracer* G4TheMTRayTracer::theInstance = nullptr; @@ -129,8 +130,8 @@ void G4TheMTRayTracer::Trace(const G4String& fileName) } void G4TheMTRayTracer::StoreUserActions() -{ - G4MTRunManager* mrm = G4MTRunManager::GetMasterRunManager(); +{ + G4MTRunManager* mrm = G4RunManagerFactory::GetMTMasterRunManager(); theUserWorkerInitialization = mrm->GetUserWorkerInitialization(); theUserRunAction = mrm->GetUserRunAction(); @@ -143,8 +144,9 @@ void G4TheMTRayTracer::StoreUserActions() void G4TheMTRayTracer::RestoreUserActions() { - G4MTRunManager* mrm = G4MTRunManager::GetMasterRunManager(); - mrm->SetUserInitialization(const_cast(theUserWorkerInitialization)); + G4MTRunManager* mrm = G4RunManagerFactory::GetMTMasterRunManager(); + mrm->SetUserInitialization( + const_cast(theUserWorkerInitialization)); mrm->SetUserAction(const_cast(theUserRunAction)); } @@ -154,14 +156,27 @@ G4bool G4TheMTRayTracer::CreateBitMap() visMan->IgnoreStateChanges(true); StoreUserActions(); -// Event loop - G4MTRunManager* mrm = G4MTRunManager::GetMasterRunManager(); + G4MTRunManager* mrm = G4RunManagerFactory::GetMTMasterRunManager(); + + // Keep, then switch off any printing requests + auto runVerbosity = mrm->GetVerboseLevel(); + auto runPrintProgress = mrm->GetPrintProgress(); + G4UImanager::GetUIpointer()->ApplyCommand("/run/verbose 0"); + G4UImanager::GetUIpointer()->ApplyCommand("/run/printProgress 0"); + + // Event loop G4int nEvent = nRow*nColumn; //// mrm->BeamOn(nEvent); //// Temporary work-around until direct invokation of G4RunManager::BeamOn() works. G4String str = "/run/beamOn " + G4UIcommand::ConvertToString(nEvent); G4UImanager::GetUIpointer()->ApplyCommand(str); + // Restore printing requests + str = "/run/verbose " + G4UIcommand::ConvertToString(runVerbosity); + G4UImanager::GetUIpointer()->ApplyCommand(str); + str = "/run/printProgress " + G4UIcommand::ConvertToString(runPrintProgress); + G4UImanager::GetUIpointer()->ApplyCommand(str); + RestoreUserActions(); visMan->IgnoreStateChanges(false); diff --git a/source/visualization/VRML/History b/source/visualization/VRML/History index db202f88cb..4fac2970fd 100644 --- a/source/visualization/VRML/History +++ b/source/visualization/VRML/History @@ -18,6 +18,12 @@ committal in the CVS repository ! History file for visualization/VRML sub-category ------------------------------------------------ + +3 July 2020 John Allison (VRML-V10-06-02) +- G4VRML1/2FileSceneHandler.cc: + o Fix Unbuntu 20 compiler warning about ignoring return value + of ‘int system(const char*)’. + 31 May 2020 Ben Morgan (VRML-V10-06-01) - Use add_definitions to set PRIVATE-level compile add_definitions for compatibility between old and new CMake systems diff --git a/source/visualization/VRML/src/G4VRML1FileSceneHandler.cc b/source/visualization/VRML/src/G4VRML1FileSceneHandler.cc index 54e6919148..ac17ab63b8 100644 --- a/source/visualization/VRML/src/G4VRML1FileSceneHandler.cc +++ b/source/visualization/VRML/src/G4VRML1FileSceneHandler.cc @@ -208,12 +208,20 @@ void G4VRML1FileSceneHandler::closePort() G4cout << " setenv " << ENV_VRML_VIEWER << " vrweb " << G4endl; } } else { - std::ostringstream ossCommand; - ossCommand << viewer << ' ' << fVRMLFileName; - strncpy(command,ossCommand.str().c_str(),sizeof(command)-1); - command[sizeof(command)-1] = '\0'; - (void) system( command ); - } + std::ostringstream ossCommand; + ossCommand << viewer << ' ' << fVRMLFileName; + strncpy(command,ossCommand.str().c_str(),sizeof(command)-1); + command[sizeof(command)-1] = '\0'; + int iErr = system( command ); + if ( iErr != 0 ) { + G4ExceptionDescription ed; + ed << "Error " << iErr + << " when calling system with \"" << command + << "\"."; + G4Exception("G4VRML1FileSceneHandler::closePort()", + "VRML-1006", JustWarning, ed); + } + } } G4int G4VRML1FileSceneHandler::fSceneIdCount = 0; diff --git a/source/visualization/VRML/src/G4VRML2FileSceneHandler.cc b/source/visualization/VRML/src/G4VRML2FileSceneHandler.cc index a4644810d8..bfee8ee76c 100644 --- a/source/visualization/VRML/src/G4VRML2FileSceneHandler.cc +++ b/source/visualization/VRML/src/G4VRML2FileSceneHandler.cc @@ -222,11 +222,19 @@ void G4VRML2FileSceneHandler::closePort() G4cout << " setenv " << ENV_VRML_VIEWER << " vrwave " << G4endl; } } else { - std::ostringstream ossCommand; - ossCommand << viewer << ' ' << fVRMLFileName; - strncpy(command,ossCommand.str().c_str(),sizeof(command)-1); - command[sizeof(command)-1] = '\0'; - (void) system( command ); + std::ostringstream ossCommand; + ossCommand << viewer << ' ' << fVRMLFileName; + strncpy(command,ossCommand.str().c_str(),sizeof(command)-1); + command[sizeof(command)-1] = '\0'; + int iErr = system( command ); + if ( iErr != 0 ) { + G4ExceptionDescription ed; + ed << "Error " << iErr + << " when calling system with \"" << command + << "\"."; + G4Exception("G4VRML2FileSceneHandler::closePort()", + "VRML-2006", JustWarning, ed); + } } } diff --git a/source/visualization/XXX/History b/source/visualization/XXX/History index f877b55e9a..3fdd23cb23 100644 --- a/source/visualization/XXX/History +++ b/source/visualization/XXX/History @@ -18,6 +18,14 @@ committal in the CVS repository ! History file for visualization/XXX sub-category (a template graphics system) --------------------------------------------------------------------------- +23 September 2020 Ben Morgan (visxxx-V10-06-00) +- Remove no longer required include_directories + +18 September 2020 John Allison (visXXX-V10-05-05) +- Part of vis-V10-06-07. +- G4XXXSGViewer.cc and G4XXXStoredViewer.cc: + o CompareForKernelVisit; Force kernel visit if global parameters change. + . GlobalMarkerScale and GlobalLineWidthScale. 18 June 2020 John Allison (visXXX-V10-05-04) - G4XXXSGSceneHandler.cc: Fix a debug statement. @@ -83,7 +91,7 @@ History file for visualization/XXX sub-category (a template graphics system) 3rd January 2011 John Allison (visXXX-V09-05-00) - Removed #ifdef ...XXXSG... protections. - o No longer any reliance on imported tree code; own tree code example used. + o No longer any reliance on imported tree code; own tree code example used. 11th November 2011 John Allison (visXXX-V09-04-01) - G4XXXSGSceneHandler.cc: Fixed compiler warnings. diff --git a/source/visualization/XXX/sources.cmake b/source/visualization/XXX/sources.cmake index d3b083a37d..1ada9383c0 100644 --- a/source/visualization/XXX/sources.cmake +++ b/source/visualization/XXX/sources.cmake @@ -14,27 +14,9 @@ # #------------------------------------------------------------------------------ -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) -include_directories(${USOLIDS_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${CMAKE_SOURCE_DIR}/source/digits_hits/hits/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/solids/CSG/include) -include_directories(${CMAKE_SOURCE_DIR}/source/geometry/solids/specific/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/HEPGeometry/include) -include_directories(${CMAKE_SOURCE_DIR}/source/global/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/graphics_reps/include) -include_directories(${CMAKE_SOURCE_DIR}/source/intercoms/include) -include_directories(${CMAKE_SOURCE_DIR}/source/tracking/include) -include_directories(${CMAKE_SOURCE_DIR}/source/visualization/management/include) -include_directories(${CMAKE_SOURCE_DIR}/source/visualization/modeling/include) - # # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4visXXX HEADERS G4XXX.hh diff --git a/source/visualization/XXX/src/G4XXXSGViewer.cc b/source/visualization/XXX/src/G4XXXSGViewer.cc index 3547271a00..78c0a89e89 100644 --- a/source/visualization/XXX/src/G4XXXSGViewer.cc +++ b/source/visualization/XXX/src/G4XXXSGViewer.cc @@ -71,6 +71,7 @@ void G4XXXSGViewer::DrawView() { // /vis/viewer/rebuild, but if not, make decision and set flag only // if necessary... if (!fNeedKernelVisit) KernelVisitDecision(); + fLastVP = fVP; G4bool kernelVisitWasNeeded = fNeedKernelVisit; // Keep (ProcessView resets). ProcessView (); // Clears store and processes scene only if necessary. @@ -108,7 +109,6 @@ void G4XXXSGViewer::KernelVisitDecision () { || CompareForKernelVisit(fLastVP)) { NeedKernelVisit (); // Sets fNeedKernelVisit. } - fLastVP = fVP; } G4bool G4XXXSGViewer::CompareForKernelVisit(G4ViewParameters& lastVP) @@ -128,6 +128,8 @@ G4bool G4XXXSGViewer::CompareForKernelVisit(G4ViewParameters& lastVP) // No need to visit kernel if cutaway planes change. (lastVP.IsExplode () != fVP.IsExplode ()) || (lastVP.GetNoOfSides () != fVP.GetNoOfSides ()) || + (lastVP.GetGlobalMarkerScale() != fVP.GetGlobalMarkerScale()) || + (lastVP.GetGlobalLineWidthScale() != fVP.GetGlobalLineWidthScale()) || (lastVP.IsMarkerNotHidden () != fVP.IsMarkerNotHidden ()) || (lastVP.GetDefaultVisAttributes()->GetColour() != fVP.GetDefaultVisAttributes()->GetColour()) || diff --git a/source/visualization/XXX/src/G4XXXStoredViewer.cc b/source/visualization/XXX/src/G4XXXStoredViewer.cc index 4cc4fd856b..ae81b365ee 100644 --- a/source/visualization/XXX/src/G4XXXStoredViewer.cc +++ b/source/visualization/XXX/src/G4XXXStoredViewer.cc @@ -72,6 +72,7 @@ void G4XXXStoredViewer::DrawView() { // /vis/viewer/rebuild, but if not, make decision and set flag only // if necessary... if (!fNeedKernelVisit) KernelVisitDecision(); + fLastVP = fVP; G4bool kernelVisitWasNeeded = fNeedKernelVisit; // Keep (ProcessView resets). ProcessView (); // Clears store and processes scene only if necessary. @@ -106,7 +107,6 @@ void G4XXXStoredViewer::KernelVisitDecision () { if (store.empty() || CompareForKernelVisit(fLastVP)) { NeedKernelVisit (); // Sets fNeedKernelVisit. } - fLastVP = fVP; } G4bool G4XXXStoredViewer::CompareForKernelVisit(G4ViewParameters& lastVP) @@ -126,6 +126,8 @@ G4bool G4XXXStoredViewer::CompareForKernelVisit(G4ViewParameters& lastVP) // No need to visit kernel if cutaway planes change. (lastVP.IsExplode () != fVP.IsExplode ()) || (lastVP.GetNoOfSides () != fVP.GetNoOfSides ()) || + (lastVP.GetGlobalMarkerScale() != fVP.GetGlobalMarkerScale()) || + (lastVP.GetGlobalLineWidthScale() != fVP.GetGlobalLineWidthScale()) || (lastVP.IsMarkerNotHidden () != fVP.IsMarkerNotHidden ()) || (lastVP.GetDefaultVisAttributes()->GetColour() != fVP.GetDefaultVisAttributes()->GetColour()) || diff --git a/source/visualization/externals/History b/source/visualization/externals/History index daad636b66..c45bcc5fb5 100644 --- a/source/visualization/externals/History +++ b/source/visualization/externals/History @@ -17,6 +17,9 @@ committal in the CVS repository ! * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +01 July 2020 John Allison (visexternals-V10-06-01) +- gl2ps.cc: Fix Coverity warning. + 12th December 2019 Ben Morgan (visexternals-V10-06-00) - visexternalgl2ps-V10-06-00: Remove no longer required dependence on OpenGLU diff --git a/source/visualization/externals/gl2ps/History b/source/visualization/externals/gl2ps/History index c7295356b8..58310af446 100644 --- a/source/visualization/externals/gl2ps/History +++ b/source/visualization/externals/gl2ps/History @@ -15,6 +15,11 @@ committal in the CVS repository ! ---------------------------------------------------------- * Reverse chronological order (last date on top), please * ---------------------------------------------------------- +23 September 2020 Ben Morgan (visexternalsgl2ps-V10-06-03) +- Remove remianing include_directories + +28 August 2020 Ben Morgan (visexternalsgl2ps-V10-06-02) +- Link to XQuartz GL when we are on macOS and building X11 drivers 29 April 2020 Gunter Folger (visexternalgl2ps-V10-06-01) - (trivial) fix for clang10. Affects src/gl2ps.cc @@ -27,7 +32,7 @@ committal in the CVS repository ! - Explicitly link to G4globman/G4global to use/propagate usage requirements. 17 September 2019 Laurent Garnier (visexternalgl2ps-V10-05-02) -- gl2ps.cc: fix Continous warnings +- gl2ps.cc: fix Continous warnings 17 September 2019 Laurent Garnier (visexternalgl2ps-V10-05-01) - gl2ps.cc gl2ps.h: Update library to 1.4.0 applying Geant4 patches @@ -59,7 +64,7 @@ committal in the CVS repository ! 30th October 2014 Laurent Garnier (visexternal-V10-00-03) - Tagged -1st October 2014 Laurent Garnier +1st October 2014 Laurent Garnier - Geant4_gl2ps : Minor change for OpenGL2 2nd July 2014 Laurent Garnier (visexternal-V10-00-02) @@ -90,8 +95,8 @@ committal in the CVS repository ! 22nd May 2013 Laurent Garnier - sources.cmake: Add missing include for "global/management" - G4OpenGL2PSAction.cc : - o Fix another memory leak for aFileName, perhaps the same as - bugzilla #1469 ? It happens on big scenes when extendBufferSize was called. + o Fix another memory leak for aFileName, perhaps the same as + bugzilla #1469 ? It happens on big scenes when extendBufferSize was called. o replace the use of INT_MAX by std::numeric_limits::max() 21st May 2013 Laurent Garnier @@ -139,7 +144,7 @@ committal in the CVS repository ! 27th December 2010 John Allison (visexternal-V09-04-00) - Tagged. -23, December L. Garnier +23, December L. Garnier - GNUmakefile : Remove Qt stuff from Makefile 13th November 2010, John Allison (visexternal-V09-03-03) @@ -169,7 +174,7 @@ committal in the CVS repository ! - Added dependency on zlib if G4LIB_BUILD_ZLIB is set and corrected inclusion of zlib.h in gl2ps.cc -2 Nov 2009, Laurent Garnier +2 Nov 2009, Laurent Garnier - Add debug flag in GNUMakefile 29 April 2009, Laurent Garnier (visexternal-V09-02-04) @@ -195,6 +200,6 @@ committal in the CVS repository ! 16 February 2009, Laurent Garnier - Creation of this library in order to have a gl2ps for all viewers. - Copying gl2ps.cc and gl2ps.h files form OpenInventor/src - - Add a new file G4OpenGL2PSAction.cc to be on the top of gl2ps + - Add a new file G4OpenGL2PSAction.cc to be on the top of gl2ps external package. This file will be heritate/used by viewers in order to have gl2ps render. diff --git a/source/visualization/externals/gl2ps/sources.cmake b/source/visualization/externals/gl2ps/sources.cmake index e2c0d6855a..2d8121c1ed 100644 --- a/source/visualization/externals/gl2ps/sources.cmake +++ b/source/visualization/externals/gl2ps/sources.cmake @@ -3,17 +3,6 @@ # Package: Geant4.src.G4visualization..G4gl2ps #----------------------------------------------------------------------- -# List external includes needed. -include_directories(${CLHEP_INCLUDE_DIRS}) -include_directories(${ZLIB_INCLUDE_DIRS}) - -# List internal includes needed. -include_directories(${PROJECT_SOURCE_DIR}/source/global/management/include) -# WORKAROUND: Now have a generated header, so must add include directory, -# but not that we lose one directory level because the management subcategory -# is merged into the main global one! -include_directories(${PROJECT_BINARY_DIR}/source/global/include) - # We need to add definitions depending on what GL drivers are built # if(GEANT4_USE_OPENGL) @@ -24,14 +13,14 @@ if(GEANT4_USE_INVENTOR) add_definitions(-DG4VIS_BUILD_OI_DRIVER) endif() +# Link to appropriate GL library for the platform/drivers being built set(G4GL2PS_GL_LIBRARIES OpenGL::GL) -if(APPLE AND GEANT4_USE_OPENGL_X11) - list(APPEND G4GL2PS_GL_LIBRARIES XQuartzGL::GL) +if(APPLE AND (GEANT4_USE_OPENGL_X11 OR GEANT4_USE_INVENTOR_XT OR GEANT4_USE_XM)) + set(G4GL2PS_GL_LIBRARIES XQuartzGL::GL) endif() # Define the Geant4 Module. # -include(Geant4MacroDefineModule) GEANT4_DEFINE_MODULE(NAME G4gl2ps HEADERS G4OpenGL2PSAction.hh diff --git a/source/visualization/externals/gl2ps/src/gl2ps.cc b/source/visualization/externals/gl2ps/src/gl2ps.cc index 8ef47d52eb..9d46087778 100644 --- a/source/visualization/externals/gl2ps/src/gl2ps.cc +++ b/source/visualization/externals/gl2ps/src/gl2ps.cc @@ -5250,8 +5250,8 @@ static void gl2psPrintSVGPrimitive(void *data) GL2PSprimitive *prim; GL2PSxyz xyz[4]; GL2PSrgba rgba[4]; - char col[32]; - char lcap[7], ljoin[7]; + char col[32] = ""; + char lcap[7] = "", ljoin[7] = ""; int newline; prim = *(GL2PSprimitive**)data; diff --git a/source/visualization/management/GNUmakefile b/source/visualization/management/GNUmakefile index c421924186..0cb4785552 100644 --- a/source/visualization/management/GNUmakefile +++ b/source/visualization/management/GNUmakefile @@ -11,7 +11,7 @@ endif # CPPFLAGS += -DG4DEBUG_VIS_MANAGEMENT GLOBLIBS = libG4modeling.lib -GLOBLIBS += libG4run.lib libG4event.lib +GLOBLIBS += libG4tasking.lib libG4run.lib libG4event.lib GLOBLIBS += libG4tracking.lib libG4processes.lib libG4digits_hits.lib GLOBLIBS += libG4track.lib libG4particles.lib libG4geometry.lib GLOBLIBS += libG4materials.lib libG4graphics_reps.lib @@ -40,6 +40,7 @@ CPPFLAGS += -I$(G4BASE)/digits_hits/hits/include CPPFLAGS += -I$(G4BASE)/particles/management/include CPPFLAGS += -I$(G4BASE)/materials/include CPPFLAGS += -I$(G4BASE)/run/include +CPPFLAGS += -I$(G4BASE)/tasking/include CPPFLAGS += -I$(G4BASE)/event/include CPPFLAGS += -I$(G4BASE)/track/include CPPFLAGS += -I$(G4BASE)/processes/management/include diff --git a/source/visualization/management/History b/source/visualization/management/History index 719ccfb498..03d4f6e5da 100644 --- a/source/visualization/management/History +++ b/source/visualization/management/History @@ -25,6 +25,35 @@ committal in the CVS repository ! History file for visualization management sub-category ------------------------------------------------------ +16 November 2020 Gabriele Cosmo (visman-V10-06-12) +- Fixed typos in printed-out text. Addressing problem report #2285. + +21 October 2020 Jonathan Madsen (visman-V10-06-11) +- Implemented G4RunManagerFactory::GetMasterRunManager() + +21 October 2020 John Allison (visman-V10-06-10) +- G4VisManager: Improve logic of automatic event keeping. + o In MT mode, now keeps one (random) event when end-of-event action is "refresh". + o In MT mode, keeps events (up to a user-adjustable maximum number). + o These may be in addition to events kept by a user in his/her user actions. + o Improved messaging. + +15 October 2020 John Allison (visman-V10-06-09) +- Part of vis-V10-06-08. +- G4VVisCommand.hh/cc, G4VisCommandsCompound.cc, G4VisCommandsSceneHandler.cc: + o Use command->CommandFailed() - remove internal fErrorCode. + +10 August 2020 John Allison (visman-V10-06-08) +- G4VVisCommand.cc, G4VisCommandsViewer.cc, G4VisManager.cc: + o Remove obsolete G4VIS_USE_STD11 and references to obsolete G4VIS_USE. + (G4VIS_USE was removed in Geant4 10.6.) + +04 August 2020 John Allison (visman-V10-06-07) +- G4VisCommandsScene.cc: + o Remove superfluous/unnecessary SetView in G4VisCommandSceneNotifyHandlers. +- G4VisManager.cc: + o Protect algorithm in NotifyHandlers with IsValidView. + 18 June 2020 John Allison (visman-V10-06-06) * G4VisCommandsSceneAdd.cc: /vis/scene/add/*Field: Correct guidance (red->green->blue). @@ -422,7 +451,7 @@ History file for visualization management sub-category - G4VViewer::G4Spline: Remove. - /vis/viewer/set/timeWindow/displayLightFront: change defaults. - /vis/viewer/colourByDensity: change defaults. - + 24 July 2018 John Allison (visman-V10-04-13) - G4VisCommandsViewer.cc: o /vis/viewer/interpolate: Fix gcc8 warnings. @@ -585,7 +614,7 @@ History file for visualization management sub-category - G4VisManager: o Moved SetUserAction out of line and added warning message: "Deprecated. Use RegisterRunDurationUserVisAction." - + 9th December 2016 John Allison (visman-V10-03-00) - Coworks with modeling-V10-03-00. - G4VVisCommand: @@ -720,7 +749,7 @@ std::ostream& operator << - G4ViewParameters.cc: o G4ViewParameters::CatmullRomCubicSplineInterpolation: Improved interpolation of vis attributes modifiers. - + 14th August 2016 John Allison (visman-V10-02-19) - Ooops. Now as stated. @@ -798,7 +827,7 @@ G4VisCommandViewerClone::SetNewValue available on Windows because it uses popen, a way of getting output from a system command. _popen (with an underscore) is said to be available in Windows but this has not been tried. - + 1st June 2016 John Allison (visman-V10-02-11) - Introduced /vis/viewer/interpolate. See History from development branch visman-V10-02-02-branch as follows: @@ -850,7 +879,7 @@ G4VisCommandViewerClone::SetNewValue 26th January 2016 John Allison - Merged visman-V10-02-03: G4VisManager::G4VisSubThread: GetNavigatorForTracking -> SetWorldVolume - This is required for OriginVolume drawing and filtering. + This is required for OriginVolume drawing and filtering. 24th January 2016 John Allison (visman-V10-02-02-branch-04) - Refinements. 23rd January 2016 John Allison (visman-V10-02-02-branch-01) @@ -916,7 +945,7 @@ G4VisCommandViewerClone::SetNewValue 26th January 2016 John Allison (visman-V10-02-03) - G4VisManager::G4VisSubThread: GetNavigatorForTracking -> SetWorldVolume - This is required for OriginVolume drawing and filtering. + This is required for OriginVolume drawing and filtering. 14th January 2016 John Allison (visman-V10-02-02) - Improved /vis/viewer/save. @@ -935,14 +964,14 @@ G4VisCommandViewerClone::SetNewValue - G4VViewer: o Add ComputeFlyThrough method (beta) o Add an G4Spline class for testing - + 1st November 2015 John Allison (visman-V10-01-20) - Introduced (again!) for queue handling in MT mode. o Except for Xeon Phi, which is protected by #ifndef __MIC__ 15th October 2015 John Allison (visman-V10-01-19) - G4VisManager.cc: - o Corrected end-of-run printing for the case of + o Corrected end-of-run printing for the case of "/vis/multithreading/actionOnEventQueueFull discard". - G4VisCommandsViewer.cc: o Improved guidance and confirmation printing for /vis/viewer/save. @@ -1242,7 +1271,7 @@ G4VisCommandViewerClone::SetNewValue 1st October 2014 Laurent Garnier -G4VSceneHandler.cc: o AddPrimitive (const G4Scale& scale) : Remove unnecessary initialization --G4VisManager : +-G4VisManager : o Change G4cerr instead of G4cout on some error messages o Add a warning in SetCurrentViewer() when no scene handler present @@ -1281,12 +1310,12 @@ G4VisCommandViewerClone::SetNewValue 9th July 2014 Laurent Garnier (visman-V10-00-13) - Change some G4cout in G4err in case of error messages in - G4VSceneHandler, G4ViewParameters, G4VisCommand, G4VisCommandGeometry, G4VisCommandGeometrySet, + G4VSceneHandler, G4ViewParameters, G4VisCommand, G4VisCommandGeometry, G4VisCommandGeometrySet, G4VisCommandsTouchable, G4VisCommandsTouchableSet, G4VisCommandViewerDefault, G4VisCommandsViewerSet 8th July 2014 Laurent Garnier (visman-V10-00-12) -- G4VisCommandViewer : - o Revert change to /vis/viewer/update in order not to failed with a Cerr in all examples. +- G4VisCommandViewer : + o Revert change to /vis/viewer/update in order not to failed with a Cerr in all examples. o Set verbosity on "/vis/viewer/update" to G4cout instead of G4cerr and change the message 7th July 2014 Laurent Garnier (visman-V10-00-11) @@ -1369,9 +1398,9 @@ G4VisCommandViewerClone::SetNewValue 21st November 2013 Makoto Asai (visman-V09-06-26) - Move invokation with G4TransportationManager in G4VisCommandsSceneAdd.cc - to G4TrakingMessenger. G4TransportationManager is thread-local. + to G4TrakingMessenger. G4TransportationManager is thread-local. G4VisCommandsSceneAdd.cc cannot access to G4TransportationManager. - + 15th November 2013 John Allison - Some changes as suggested by PVS. - Fixes for Coverity. @@ -1780,7 +1809,7 @@ G4VisCommandViewerClone::SetNewValue twice!! This was an attempt to fix a curious problem whereby trajectories were not refreshed. Probably the go only to the back buffer, because a second refresh seems to do the trick. - o /vis/scene/list: Improved. + o /vis/scene/list: Improved. - G4VisCommandsSceneAdd.cc: /vis/scene/add/userAction: o Small improvement to guidance and code readability. @@ -1918,7 +1947,7 @@ G4VisCommandViewerClone::SetNewValue 3rd January 2012 John Allison (visman-V09-05-01) - G4VisCommandsScene.cc: /vis/scene/notifyHandlers: - o Downgraded "scene has changed" from WARNING to NOTE. + o Downgraded "scene has changed" from WARNING to NOTE. 2nd January 2012 John Allison - G4VisManager::EndOfEvent: Removed unwarranted DrawView. It was @@ -2150,7 +2179,7 @@ G4VisCommandViewerClone::SetNewValue 9th March 2010 Laurent Garnier - G4OpenGLViewer : Fix clipping when resizing non square size windows - + 8th March 2010 Laurent Garnier -G4VisManager.cc : Add protection against null pointer @@ -2244,9 +2273,9 @@ G4VisCommandViewerClone::SetNewValue argument, such as "800x400" or "800x400-0+0".) 2nd December, Laurent Garnier - - G4ViewParameters.hh G4ViewParameters.icc G4VisManager.hh G4VisManager.icc + - G4ViewParameters.hh G4ViewParameters.icc G4VisManager.hh G4VisManager.icc G4ViewParameters.cc G4VisManager.cc G4VViewer.cc G4VisCommandsViewer.cc, - do a lot of change to be able to pass XString like 400x600-0+0 to viewers + do a lot of change to be able to pass XString like 400x600-0+0 to viewers and set position and location. It will work for Qt, X, Win32 for the moment. 27th July 2008 John Allison (visman-V09-01-05) @@ -2263,7 +2292,7 @@ G4VisCommandViewerClone::SetNewValue - Fixed gcc-4.3.0 compiler warnings. 5th February 2008, Laurent Garnier - - Implemented a function in order to IncrementPan with X,Y,Z values + - Implemented a function in order to IncrementPan with X,Y,Z values 29th January 2008 John Allison (visman-V09-01-01) - G4VisExecutive.icc: Re-instated G4DAWNFILE (somehow got lost!!) @@ -2569,7 +2598,7 @@ G4VisCommandViewerClone::SetNewValue 4th May 2006 John Allison (visman-V08-00-15) - Improved protection for null models and parameters. -2nd May 2006 Jane Tinslay +2nd May 2006 Jane Tinslay - Add G4TrajectoryGenericDrawerFactory to G4VisExecutive - Add FilterTrajectory method to G4VisManager @@ -2706,7 +2735,7 @@ G4VisCommandViewerClone::SetNewValue user has not instantiated a scene handler, e.g., in batch mode. 29th November 2005 Jane Tinslay -- Make G4VisManager::RegisterModelFactories() non-pure for +- Make G4VisManager::RegisterModelFactories() non-pure for backwards compatibility. - Add information message to G4VisManager::DispatchToModel when default trajectory model is used. diff --git a/source/visualization/management/include/G4VSceneHandler.hh b/source/visualization/management/include/G4VSceneHandler.hh index 5dc508ff24..0cb8843ec9 100644 --- a/source/visualization/management/include/G4VSceneHandler.hh +++ b/source/visualization/management/include/G4VSceneHandler.hh @@ -181,7 +181,7 @@ public: // With description // IMPORTANT: invoke this from your polymorphic versions, e.g.: // void MyXXXSceneHandler::BeginPrimitives2D // (const G4Transform3D& objectTransformation) { - // G4VSceneHandler::BeginPrimitives2D (); + // G4VSceneHandler::BeginPrimitives2D (objectTransformation); // ... // } diff --git a/source/visualization/management/include/G4VVisCommand.hh b/source/visualization/management/include/G4VVisCommand.hh index 2dbda4da3e..57cb90aac7 100644 --- a/source/visualization/management/include/G4VVisCommand.hh +++ b/source/visualization/management/include/G4VVisCommand.hh @@ -134,8 +134,6 @@ protected: static G4VisManager* fpVisManager; - static G4int fErrorCode; - // Current quantities for use in appropriate commands static G4int fCurrentArrow3DLineSegmentsPerCircle; static G4Colour fCurrentColour; diff --git a/source/visualization/management/include/G4VisExecutive.icc b/source/visualization/management/include/G4VisExecutive.icc index 670ce1941b..090159dc76 100644 --- a/source/visualization/management/include/G4VisExecutive.icc +++ b/source/visualization/management/include/G4VisExecutive.icc @@ -105,6 +105,10 @@ #include "G4VRML2.hh" #endif +#ifdef G4VIS_USE_QT3D +#include "G4Qt3D.hh" +#endif + // The inline keyword prevents the compiler making an external // reference even though they cannot actually be inlined since they // are virtual functions. This prevents a "multiple definition" error @@ -236,6 +240,9 @@ G4VisExecutive::RegisterGraphicsSystems () { RegisterGraphicsSystem (new G4RayTracerX); #endif +#ifdef G4VIS_USE_QT3D + RegisterGraphicsSystem (new G4Qt3D); +#endif } // See comments about inlining above. diff --git a/source/visualization/management/include/G4VisManager.hh b/source/visualization/management/include/G4VisManager.hh index 94211eadab..cc820100e7 100644 --- a/source/visualization/management/include/G4VisManager.hh +++ b/source/visualization/management/include/G4VisManager.hh @@ -525,7 +525,6 @@ private: G4int fNoOfEventsDrawnThisRun; G4int fNKeepRequests; G4bool fEventKeepingSuspended; - G4bool fKeptLastEvent; G4bool fDrawEventOnlyIfToBeKept; const G4Event* fpRequestedEvent; // If non-zero, scene handler uses. G4bool fReviewingKeptEvents; diff --git a/source/visualization/management/sources.cmake b/source/visualization/management/sources.cmake index bdf22b336d..cfd62f7f2a 100644 --- a/source/visualization/management/sources.cmake +++ b/source/visualization/management/sources.cmake @@ -94,6 +94,7 @@ geant4_define_module(NAME G4vis_management G4procman G4run G4specsolids + G4tasking G4track G4tracking G4vis_management @@ -110,6 +111,7 @@ geant4_define_module(NAME G4vis_management G4particles G4processes G4run + G4tasking G4track G4tracking ) diff --git a/source/visualization/management/src/G4VSceneHandler.cc b/source/visualization/management/src/G4VSceneHandler.cc index 070b424256..c0e4bc9b20 100644 --- a/source/visualization/management/src/G4VSceneHandler.cc +++ b/source/visualization/management/src/G4VSceneHandler.cc @@ -80,9 +80,7 @@ #include "Randomize.hh" #include "G4StateManager.hh" #include "G4RunManager.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4Run.hh" #include "G4Transform3D.hh" #include "G4AttHolder.hh" @@ -657,23 +655,24 @@ void G4VSceneHandler::RequestPrimitives (const G4VSolid& solid) } } -void G4VSceneHandler::ProcessScene () { - +void G4VSceneHandler::ProcessScene() +{ // Assumes graphics database store has already been cleared if // relevant for the particular scene handler. - if (!fpScene) return; + if(!fpScene) + return; - if (fpScene->GetExtent() == G4VisExtent::GetNullExtent()) { - G4Exception - ("G4VSceneHandler::ProcessScene", - "visman0106", JustWarning, - "The scene has no extent."); + if(fpScene->GetExtent() == G4VisExtent::GetNullExtent()) + { + G4Exception("G4VSceneHandler::ProcessScene", "visman0106", JustWarning, + "The scene has no extent."); } G4VisManager* visManager = G4VisManager::GetInstance(); - if (!visManager->GetConcreteInstance()) return; + if(!visManager->GetConcreteInstance()) + return; G4VisManager::Verbosity verbosity = visManager->GetVerbosity(); @@ -683,40 +682,44 @@ void G4VSceneHandler::ProcessScene () { // fMarkForClearingTransientStore true causes problems with // recomputing transients below.) Restore it again at end... G4bool tmpMarkForClearingTransientStore = fMarkForClearingTransientStore; - fMarkForClearingTransientStore = false; + fMarkForClearingTransientStore = false; // Traverse geometry tree and send drawing primitives to window(s). const std::vector& runDurationModelList = - fpScene -> GetRunDurationModelList (); + fpScene->GetRunDurationModelList(); - if (runDurationModelList.size ()) { - if (verbosity >= G4VisManager::confirmations) { + if(runDurationModelList.size()) + { + if(verbosity >= G4VisManager::confirmations) + { G4cout << "Traversing scene data..." << G4endl; } - BeginModeling (); + BeginModeling(); // Create modeling parameters from view parameters... - G4ModelingParameters* pMP = CreateModelingParameters (); + G4ModelingParameters* pMP = CreateModelingParameters(); - for (size_t i = 0; i < runDurationModelList.size (); i++) { - if (runDurationModelList[i].fActive) { + for(size_t i = 0; i < runDurationModelList.size(); i++) + { + if(runDurationModelList[i].fActive) + { fpModel = runDurationModelList[i].fpModel; - // Note: this is not the place to take action on - // pModel->GetTransformation(). The model must take care of - // this in pModel->DescribeYourselfTo(*this). See, for example, - // G4PhysicalVolumeModel and /vis/scene/add/logo. - fpModel -> SetModelingParameters (pMP); - fpModel -> DescribeYourselfTo (*this); - fpModel -> SetModelingParameters (0); + // Note: this is not the place to take action on + // pModel->GetTransformation(). The model must take care of + // this in pModel->DescribeYourselfTo(*this). See, for example, + // G4PhysicalVolumeModel and /vis/scene/add/logo. + fpModel->SetModelingParameters(pMP); + fpModel->DescribeYourselfTo(*this); + fpModel->SetModelingParameters(0); } } fpModel = 0; delete pMP; - EndModeling (); + EndModeling(); } fReadyForTransients = true; @@ -724,57 +727,64 @@ void G4VSceneHandler::ProcessScene () { // Refresh event from end-of-event model list. // Allow only in Idle or GeomClosed state... G4StateManager* stateManager = G4StateManager::GetStateManager(); - G4ApplicationState state = stateManager->GetCurrentState(); - if (state == G4State_Idle || state == G4State_GeomClosed) { - + G4ApplicationState state = stateManager->GetCurrentState(); + if(state == G4State_Idle || state == G4State_GeomClosed) + { visManager->SetEventRefreshing(true); - if (visManager->GetRequestedEvent()) { + if(visManager->GetRequestedEvent()) + { DrawEvent(visManager->GetRequestedEvent()); - - } else { - - G4RunManager* runManager = G4RunManager::GetRunManager(); -#ifdef G4MULTITHREADED - if(G4Threading::IsMultithreadedApplication()) - { runManager = G4MTRunManager::GetMasterRunManager(); } -#endif - if (runManager) { - const G4Run* run = runManager->GetCurrentRun(); + } + else + { + G4RunManager* runManager = G4RunManagerFactory::GetMasterRunManager(); + if(runManager) + { + const G4Run* run = runManager->GetCurrentRun(); const std::vector* events = - run? run->GetEventVector(): 0; - size_t nKeptEvents = 0; - if (events) nKeptEvents = events->size(); - if (nKeptEvents) { + run ? run->GetEventVector() : 0; + size_t nKeptEvents = 0; + if(events) + nKeptEvents = events->size(); + if(nKeptEvents) + { + if(fpScene->GetRefreshAtEndOfEvent()) + { + if(verbosity >= G4VisManager::confirmations) + { + G4cout << "Refreshing event..." << G4endl; + } + const G4Event* event = 0; + if(events && events->size()) + event = events->back(); + if(event) + DrawEvent(event); + } + else + { // Accumulating events. - if (fpScene->GetRefreshAtEndOfEvent()) { - - if (verbosity >= G4VisManager::confirmations) { - G4cout << "Refreshing event..." << G4endl; - } - const G4Event* event = 0; - if (events && events->size()) event = events->back(); - if (event) DrawEvent(event); - - } else { // Accumulating events. - - if (verbosity >= G4VisManager::confirmations) { - G4cout << "Refreshing events in run..." << G4endl; - } - for (const auto& event: *events) { - if (event) DrawEvent(event); + if(verbosity >= G4VisManager::confirmations) + { + G4cout << "Refreshing events in run..." << G4endl; + } + for(const auto& event : *events) + { + if(event) + DrawEvent(event); } - if (!fpScene->GetRefreshAtEndOfRun()) { - if (verbosity >= G4VisManager::warnings) { - G4cout << - "WARNING: Cannot refresh events accumulated over more" - "\n than one runs. Refreshed just the last run." - << G4endl; - } - } - } - } + if(!fpScene->GetRefreshAtEndOfRun()) + { + if(verbosity >= G4VisManager::warnings) + { + G4cout << "WARNING: Cannot refresh events accumulated over more" + "\n than one runs. Refreshed just the last run." + << G4endl; + } + } + } + } } } visManager->SetEventRefreshing(false); @@ -782,7 +792,8 @@ void G4VSceneHandler::ProcessScene () { // Refresh end-of-run model list. // Allow only in Idle or GeomClosed state... - if (state == G4State_Idle || state == G4State_GeomClosed) { + if(state == G4State_Idle || state == G4State_GeomClosed) + { DrawEndOfRunModels(); } @@ -1147,7 +1158,7 @@ G4int G4VSceneHandler::GetNoOfSides(const G4VisAttributes* pVisAttribs) lineSegmentsPerCircle = pVisAttribs->GetMinLineSegmentsPerCircle(); G4cout << "G4VSceneHandler::GetNoOfSides: attempt to set the" - "\nnumber of line segements per circle < " << lineSegmentsPerCircle + "\nnumber of line segments per circle < " << lineSegmentsPerCircle << "; forced to " << pVisAttribs->GetMinLineSegmentsPerCircle() << G4endl; } } diff --git a/source/visualization/management/src/G4VVisCommand.cc b/source/visualization/management/src/G4VVisCommand.cc index 73bc4153c9..9dc5662bb4 100644 --- a/source/visualization/management/src/G4VVisCommand.cc +++ b/source/visualization/management/src/G4VVisCommand.cc @@ -36,8 +36,6 @@ #include #include -G4int G4VVisCommand::fErrorCode = 0; - G4int G4VVisCommand::fCurrentArrow3DLineSegmentsPerCircle = 6; G4Colour G4VVisCommand::fCurrentColour = G4Colour::White(); G4Colour G4VVisCommand::fCurrentTextColour = G4Colour::Blue(); @@ -291,10 +289,8 @@ void G4VVisCommand::InterpolateViews } // File-writing viewers need to close the file currentViewer->ShowView(); -#ifdef G4VIS_USE_STD11 if (waitTimePerPointmilliseconds > 0) std::this_thread::sleep_for(std::chrono::milliseconds(waitTimePerPointmilliseconds)); -#endif } while (safetyCount++ < safety); // Loop checking, 16.02.2016, J.Allison } diff --git a/source/visualization/management/src/G4VisCommands.cc b/source/visualization/management/src/G4VisCommands.cc index 2c8b7b7e57..5f44a995c5 100644 --- a/source/visualization/management/src/G4VisCommands.cc +++ b/source/visualization/management/src/G4VisCommands.cc @@ -35,9 +35,7 @@ #include "G4UIcmdWithAString.hh" #include "G4UIcmdWithoutParameter.hh" #include "G4RunManager.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4Run.hh" #include "G4UIsession.hh" #include "G4Trajectory.hh" @@ -286,14 +284,11 @@ void G4VisCommandReviewKeptEvents::SetNewValue (G4UIcommand*, G4String newValue) G4String& macroFileName = newValue; G4VisManager::Verbosity verbosity = fpVisManager->GetVerbosity(); - G4RunManager* runManager = G4RunManager::GetRunManager(); -#ifdef G4MULTITHREADED - if(G4Threading::IsMultithreadedApplication()) - { runManager = G4MTRunManager::GetMasterRunManager(); } -#endif - const G4Run* run = runManager? runManager->GetCurrentRun(): 0; - const std::vector* events = run? run->GetEventVector(): 0; - size_t nKeptEvents = events? events->size(): 0; + G4RunManager* runManager = G4RunManagerFactory::GetMasterRunManager(); + const G4Run* run = runManager ? runManager->GetCurrentRun() : nullptr; + const std::vector* events = + run ? run->GetEventVector() : nullptr; + size_t nKeptEvents = events ? events->size() : 0; if (!nKeptEvents) { if (verbosity >= G4VisManager::errors) { diff --git a/source/visualization/management/src/G4VisCommandsCompound.cc b/source/visualization/management/src/G4VisCommandsCompound.cc index 70d14d685c..6d43f1d1b9 100644 --- a/source/visualization/management/src/G4VisCommandsCompound.cc +++ b/source/visualization/management/src/G4VisCommandsCompound.cc @@ -96,8 +96,8 @@ void G4VisCommandDrawTree::SetNewValue(G4UIcommand*, G4String newValue) { G4bool keepAbleness = fpVisManager->GetConcreteInstance()? true: false; - UImanager->ApplyCommand(G4String("/vis/open " + system)); - if (fErrorCode == 0) { + auto errorCode = UImanager->ApplyCommand(G4String("/vis/open " + system)); + if (errorCode == 0) { if (!keepAbleness) { // Enable temporarily fpVisManager->SetVerboseLevel("Quiet"); UImanager->ApplyCommand("/vis/enable"); @@ -360,7 +360,7 @@ G4VisCommandOpen::~G4VisCommandOpen() { delete fpCommand; } -void G4VisCommandOpen::SetNewValue (G4UIcommand*, G4String newValue) { +void G4VisCommandOpen::SetNewValue (G4UIcommand* command, G4String newValue) { G4String systemName, windowSizeHint; std::istringstream is(newValue); is >> systemName >> windowSizeHint; @@ -371,8 +371,8 @@ void G4VisCommandOpen::SetNewValue (G4UIcommand*, G4String newValue) { fpVisManager->GetVerbosity() >= G4VisManager::confirmations) newVerbose = 2; UImanager->SetVerboseLevel(newVerbose); - fErrorCode = UImanager->ApplyCommand(G4String("/vis/sceneHandler/create " + systemName)); - if (fErrorCode == 0) { + auto errorCode = UImanager->ApplyCommand(G4String("/vis/sceneHandler/create " + systemName)); + if (errorCode == 0) { UImanager->ApplyCommand(G4String("/vis/viewer/create ! ! " + windowSizeHint)); } else { // Use set to get alphabetical order @@ -385,11 +385,13 @@ void G4VisCommandOpen::SetNewValue (G4UIcommand*, G4String newValue) { } } } - G4cerr << "Candidates are:"; + std::ostringstream oss; + oss << "Candidates are:"; for (const auto& candidate: candidates) { - G4cerr << ' ' << candidate; - } - G4cerr << G4endl; + oss << ' ' << candidate; + }; + G4cerr << oss.str() << G4endl; + command->CommandFailed(oss); } UImanager->SetVerboseLevel(keepVerbose); } diff --git a/source/visualization/management/src/G4VisCommandsScene.cc b/source/visualization/management/src/G4VisCommandsScene.cc index a59e1b72b1..ba0d9f6c02 100644 --- a/source/visualization/management/src/G4VisCommandsScene.cc +++ b/source/visualization/management/src/G4VisCommandsScene.cc @@ -32,9 +32,7 @@ #include "G4VisManager.hh" #include "G4TransportationManager.hh" #include "G4RunManager.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4Run.hh" #include "G4PhysicalVolumeModel.hh" #include "G4ApplicationState.hh" @@ -339,18 +337,16 @@ void G4VisCommandSceneEndOfEventAction::SetNewValue (G4UIcommand*, fpVisManager->ResetTransientsDrawnFlags(); // Are there any events currently kept... - size_t nCurrentlyKept = 0; - G4RunManager* runManager = G4RunManager::GetRunManager(); -#ifdef G4MULTITHREADED - if(G4Threading::IsMultithreadedApplication()) - { runManager = G4MTRunManager::GetMasterRunManager(); } -#endif - if (runManager) { + size_t nCurrentlyKept = 0; + G4RunManager* runManager = G4RunManagerFactory::GetMasterRunManager(); + if(runManager) + { const G4Run* currentRun = runManager->GetCurrentRun(); - if (currentRun) { - const std::vector* events = - currentRun->GetEventVector(); - if (events) nCurrentlyKept = events->size(); + if(currentRun) + { + const std::vector* events = currentRun->GetEventVector(); + if(events) + nCurrentlyKept = events->size(); } } @@ -768,9 +764,10 @@ void G4VisCommandSceneNotifyHandlers::SetNewValue (G4UIcommand*, const G4int nViewers = viewerList.size (); if (nViewers) { pCurrentSceneHandler -> SetCurrentViewer (pCurrentViewer); - if (pCurrentViewer && pCurrentSceneHandler->GetScene()) { - pCurrentViewer -> SetView (); - } + // JA: I don't think we need this. SetView will be called when needed. + // if (pCurrentViewer && pCurrentSceneHandler->GetScene()) { + // pCurrentViewer -> SetView (); + // } } } } diff --git a/source/visualization/management/src/G4VisCommandsSceneAdd.cc b/source/visualization/management/src/G4VisCommandsSceneAdd.cc index 14fb1c6797..3d8837a014 100644 --- a/source/visualization/management/src/G4VisCommandsSceneAdd.cc +++ b/source/visualization/management/src/G4VisCommandsSceneAdd.cc @@ -61,9 +61,7 @@ #include "G4UIcmdWithAnInteger.hh" #include "G4Tokenizer.hh" #include "G4RunManager.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4StateManager.hh" #include "G4Run.hh" #include "G4Event.hh" @@ -717,13 +715,9 @@ void G4VisCommandSceneAddEventID::SetNewValue (G4UIcommand*, G4String newValue) void G4VisCommandSceneAddEventID::EventID::operator() (G4VGraphicsScene& sceneHandler, const G4Transform3D&, const G4ModelingParameters* mp) { - G4RunManager* runManager = G4RunManager::GetRunManager(); -#ifdef G4MULTITHREADED - if (G4Threading::IsMultithreadedApplication()) { - runManager = G4MTRunManager::GetMasterRunManager(); - } -#endif - if (!runManager) return; + G4RunManager* runManager = G4RunManagerFactory::GetMasterRunManager(); + if(!runManager) + return; const G4Run* currentRun = runManager->GetCurrentRun(); if (!currentRun) return; diff --git a/source/visualization/management/src/G4VisCommandsSceneHandler.cc b/source/visualization/management/src/G4VisCommandsSceneHandler.cc index 973d2059f2..722154dca7 100644 --- a/source/visualization/management/src/G4VisCommandsSceneHandler.cc +++ b/source/visualization/management/src/G4VisCommandsSceneHandler.cc @@ -197,7 +197,7 @@ G4String G4VisCommandSceneHandlerCreate::GetCurrentValue(G4UIcommand*) { return graphicsSystemName + " " + NextName (); } -void G4VisCommandSceneHandlerCreate::SetNewValue (G4UIcommand*, +void G4VisCommandSceneHandlerCreate::SetNewValue (G4UIcommand* command, G4String newValue) { G4VisManager::Verbosity verbosity = fpVisManager->GetVerbosity(); @@ -276,14 +276,15 @@ void G4VisCommandSceneHandlerCreate::SetNewValue (G4UIcommand*, } } if (iGS < 0 || iGS >= nSystems || loopCounter >=3) { + std::ostringstream oss; + oss << "\"" << gsl[iGSBeingTested]->GetNickname() + << "\" is not compatible with your chosen session," + " and no fallback system found."; if (verbosity >= G4VisManager::errors) { - G4cerr << - "ERROR: G4VisCommandSceneHandlerCreate::SetNewValue: \"" - << gsl[iGSBeingTested]->GetNickname() - << "\" is not compatible with your chosen session," - " and no fallback system found." - << G4endl; + G4cerr << "ERROR: G4VisCommandSceneHandlerCreate::SetNewValue: " + << oss.str() << G4endl; } + command->CommandFailed(oss); return; } // A fallback system found...but go back and check this too. diff --git a/source/visualization/management/src/G4VisCommandsViewer.cc b/source/visualization/management/src/G4VisCommandsViewer.cc index f19064b1a2..2b279644e9 100644 --- a/source/visualization/management/src/G4VisCommandsViewer.cc +++ b/source/visualization/management/src/G4VisCommandsViewer.cc @@ -45,10 +45,8 @@ #include "G4SystemOfUnits.hh" #include "G4UnitsTable.hh" #include "G4ios.hh" -#ifdef G4VIS_USE_STD11 #include #include -#endif #include #include #include diff --git a/source/visualization/management/src/G4VisCommandsViewerSet.cc b/source/visualization/management/src/G4VisCommandsViewerSet.cc index 04c3a6855e..76f8b27b46 100644 --- a/source/visualization/management/src/G4VisCommandsViewerSet.cc +++ b/source/visualization/management/src/G4VisCommandsViewerSet.cc @@ -1062,7 +1062,7 @@ void G4VisCommandsViewerSet::SetNewValue nSides = vp.SetNoOfSides(nSides); if (verbosity >= G4VisManager::confirmations) { G4cout << - "Number of line segements per circle in polygon approximation is " + "Number of line segments per circle in polygon approximation is " << nSides << G4endl; } } diff --git a/source/visualization/management/src/G4VisManager.cc b/source/visualization/management/src/G4VisManager.cc index c459769f58..5b6dbb87d8 100644 --- a/source/visualization/management/src/G4VisManager.cc +++ b/source/visualization/management/src/G4VisManager.cc @@ -70,6 +70,7 @@ #include "G4TrajectoryDrawByCharge.hh" #include "Randomize.hh" #include "G4RunManager.hh" +#include "G4RunManagerFactory.hh" #include "G4EventManager.hh" #include "G4Run.hh" #include "G4Event.hh" @@ -79,17 +80,14 @@ #include #ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#include "G4Threading.hh" -#include "G4AutoLock.hh" -#include "G4GeometryWorkspace.hh" -#include "G4SolidsWorkspace.hh" -#include -#include -#ifdef G4VIS_USE_STD11 -#include -#include -#endif +# include "G4Threading.hh" +# include "G4AutoLock.hh" +# include "G4GeometryWorkspace.hh" +# include "G4SolidsWorkspace.hh" +# include +# include +# include +# include #endif G4VisManager* G4VisManager::fpInstance = 0; @@ -110,7 +108,6 @@ G4VisManager::G4VisManager (const G4String& verbosityString): fNoOfEventsDrawnThisRun (0), fNKeepRequests (0), fEventKeepingSuspended (false), - fKeptLastEvent (false), fDrawEventOnlyIfToBeKept (false), fpRequestedEvent (0), fReviewingKeptEvents (false), @@ -183,12 +180,10 @@ G4VisManager::G4VisManager (const G4String& verbosityString): // (c) invoke the Initialise() method of the subclass. // For example: // ... - // #ifdef G4VIS_USE // // Instantiate and initialise Visualization Manager. // G4VisManager* visManager = new G4VisExecutive; // visManager -> SetVerboseLevel (Verbose); // visManager -> Initialise (); - // #endif // // (Don't forget to delete visManager;) // ... @@ -271,11 +266,9 @@ void G4VisManager::Initialise () { "\n Also you should implement RegisterModelFactories()." "\n See visualization/management/include/G4VisExecutive.hh/icc, for example." "\n In your main() you will have something like:" - "\n #ifdef G4VIS_USE" "\n G4VisManager* visManager = new G4VisExecutive;" "\n visManager -> SetVerboseLevel (Verbose);" "\n visManager -> Initialize ();" - "\n #endif" "\n (Don't forget to delete visManager;)" "\n" << G4endl; @@ -1047,13 +1040,8 @@ void G4VisManager::Draw (const G4VTrajectory& traj) { // A trajectory needs a trajectories model to provide G4Atts, etc. static G4TrajectoriesModel trajectoriesModel; trajectoriesModel.SetCurrentTrajectory(&traj); - G4RunManager* runManager = G4RunManager::GetRunManager(); -#ifdef G4MULTITHREADED - if (G4Threading::IsMultithreadedApplication()) { - runManager = G4MTRunManager::GetMasterRunManager(); - } -#endif - const G4Run* currentRun = runManager->GetCurrentRun(); + G4RunManager* runManager = G4RunManagerFactory::GetMasterRunManager(); + const G4Run* currentRun = runManager->GetCurrentRun(); if (currentRun) { trajectoriesModel.SetRunID(currentRun->GetRunID()); } @@ -1329,35 +1317,38 @@ void G4VisManager::NotifyHandlers () { G4cout << "G4VisManager::NotifyHandler() called." << G4endl; } - // Check scenes. - G4SceneList& sceneList = fSceneList; - G4int iScene, nScenes = sceneList.size (); - for (iScene = 0; iScene < nScenes; iScene++) { - G4Scene* pScene = sceneList [iScene]; - std::vector& modelList = pScene -> SetRunDurationModelList (); - - if (modelList.size ()) { - pScene->CalculateExtent(); - G4UImanager::GetUIpointer () -> - ApplyCommand (G4String("/vis/scene/notifyHandlers " + pScene->GetName())); - } - } + if (IsValidView()) { - // Check the manager's current scene... - if (fpScene && fpScene -> GetRunDurationModelList ().size () == 0) { - if (fVerbosity >= warnings) { - G4cout << "WARNING: The current scene \"" - << fpScene -> GetName () - << "\" has no run duration models." - << "\n Use \"/vis/scene/add/volume\" or create a new scene." - << G4endl; + // Check scenes. + G4SceneList& sceneList = fSceneList; + G4int iScene, nScenes = sceneList.size (); + for (iScene = 0; iScene < nScenes; iScene++) { + G4Scene* pScene = sceneList [iScene]; + std::vector& modelList = pScene -> SetRunDurationModelList (); + + if (modelList.size ()) { + pScene->CalculateExtent(); + G4UImanager::GetUIpointer () -> + ApplyCommand (G4String("/vis/scene/notifyHandlers " + pScene->GetName())); + } + } + + // Check the manager's current scene... + if (fpScene && fpScene -> GetRunDurationModelList ().size () == 0) { + if (fVerbosity >= warnings) { + G4cout << "WARNING: The current scene \"" + << fpScene -> GetName () + << "\" has no run duration models." + << "\n Use \"/vis/scene/add/volume\" or create a new scene." + << G4endl; + } + fpSceneHandler->ClearTransientStore(); + fpSceneHandler->ClearStore(); + fpViewer->NeedKernelVisit(); + fpViewer->SetView(); + fpViewer->ClearView(); + fpViewer->FinishView(); } - fpSceneHandler->ClearTransientStore(); - fpSceneHandler->ClearStore(); - fpViewer->NeedKernelVisit(); - fpViewer->SetView(); - fpViewer->ClearView(); - fpViewer->FinishView(); } } @@ -1600,7 +1591,8 @@ void G4VisManager::SetCurrentViewer (G4VViewer* pViewer) { } return; } - fpViewer->SetView(); + // JA: I don't think we need this. Setview will be called when needed. + // fpViewer->SetView(); fpSceneHandler -> SetCurrentViewer (pViewer); fpScene = fpSceneHandler -> GetScene (); fpGraphicsSystem = fpSceneHandler -> GetGraphicsSystem (); @@ -1796,16 +1788,16 @@ G4ThreadFunReturnType G4VisManager::G4VisSubThread(G4ThreadFunArgType p) G4UImanager::GetUIpointer()->SetUpForSpecialThread("G4VIS"); -// G4cout << "G4VisManager::G4VisSubThread: thread: " -// << G4Threading::G4GetThreadId() << std::endl; + // G4cout << "G4VisManager::G4VisSubThread: thread: " + // << G4Threading::G4GetThreadId() << std::endl; // Set up geometry and navigation for a thread G4GeometryWorkspace::GetPool()->CreateAndUseWorkspace(); G4SolidsWorkspace::GetPool()->CreateAndUseWorkspace(); - G4Navigator* navigator = - G4TransportationManager::GetTransportationManager()->GetNavigatorForTracking(); - navigator->SetWorldVolume - (G4MTRunManager::GetMasterRunManagerKernel()->GetCurrentWorld()); + G4Navigator* navigator = G4TransportationManager::GetTransportationManager() + ->GetNavigatorForTracking(); + navigator->SetWorldVolume( + G4RunManagerFactory::GetMasterRunManagerKernel()->GetCurrentWorld()); pViewer->SwitchToVisSubThread(); @@ -1814,17 +1806,18 @@ G4ThreadFunReturnType G4VisManager::G4VisSubThread(G4ThreadFunArgType p) G4MUTEXLOCK(&mtVisSubThreadMutex); G4int eventQueueSize = mtVisEventQueue.size(); G4MUTEXUNLOCK(&mtVisSubThreadMutex); -// G4cout << "Event queue size (A): " << eventQueueSize << G4endl; + // G4cout << "Event queue size (A): " << eventQueueSize << G4endl; while (eventQueueSize) { G4MUTEXLOCK(&mtVisSubThreadMutex); const G4Event* event = mtVisEventQueue.front(); G4MUTEXUNLOCK(&mtVisSubThreadMutex); -// G4int eventID = event->GetEventID(); -// G4cout << -// "G4VisManager::G4VisSubThread: Vis sub-thread: Dealing with event: " -// << eventID << G4endl; + // G4int eventID = event->GetEventID(); + // G4cout + // << "G4VisManager::G4VisSubThread: Vis sub-thread: Dealing with event: + // " + // << eventID << G4endl; // Here comes the event drawing pVisManager->SetTransientsDrawnThisEvent(false); @@ -1855,7 +1848,7 @@ G4ThreadFunReturnType G4VisManager::G4VisSubThread(G4ThreadFunArgType p) } // Testing. -// std::this_thread::sleep_for(std::chrono::seconds(5)); + // std::this_thread::sleep_for(std::chrono::seconds(5)); // Then pop and release event G4MUTEXLOCK(&mtVisSubThreadMutex); @@ -1863,7 +1856,7 @@ G4ThreadFunReturnType G4VisManager::G4VisSubThread(G4ThreadFunArgType p) event->PostProcessingFinished(); eventQueueSize = mtVisEventQueue.size(); G4MUTEXUNLOCK(&mtVisSubThreadMutex); -// G4cout << "Event queue size (B): " << eventQueueSize << G4endl; + // G4cout << "Event queue size (B): " << eventQueueSize << G4endl; } G4MUTEXLOCK(&mtVisSubThreadMutex); @@ -1876,18 +1869,14 @@ G4ThreadFunReturnType G4VisManager::G4VisSubThread(G4ThreadFunArgType p) } // Run still in progress but nothing to draw, so wait a while. -#ifdef G4VIS_USE_STD11 std::this_thread::sleep_for(std::chrono::milliseconds(100)); -#else - G4THREADSLEEP(1); -#endif } // Inform viewer that we have finished all sub-thread drawing pViewer->DoneWithVisSubThread(); pViewer->MovingToMasterThread(); -// G4cout << "G4VisManager::G4VisSubThread: Vis sub-thread: ending" << G4endl; - return /*(G4ThreadFunReturnType)*/0; + // G4cout << "G4VisManager::G4VisSubThread: Vis sub-thread: ending" << G4endl; + return nullptr; } namespace { @@ -1906,22 +1895,16 @@ void G4VisManager::BeginOfRun () #ifdef G4MULTITHREADED if (G4Threading::IsWorkerThread()) return; #endif -// G4cout << "G4VisManager::BeginOfRun: thread: " -// << G4Threading::G4GetThreadId() << G4endl; + // G4cout << "G4VisManager::BeginOfRun: thread: " + // << G4Threading::G4GetThreadId() << G4endl; - G4RunManager* runManager = G4RunManager::GetRunManager(); -#ifdef G4MULTITHREADED - if (G4Threading::IsMultithreadedApplication()) { - runManager = G4MTRunManager::GetMasterRunManager(); - } -#endif + G4RunManager* runManager = G4RunManagerFactory::GetMasterRunManager(); // For a fake run... G4int nEventsToBeProcessed = runManager->GetNumberOfEventsToBeProcessed(); if (nEventsToBeProcessed == 0) return; fNKeepRequests = 0; - fKeptLastEvent = false; fEventKeepingSuspended = false; fTransientsDrawnThisRun = false; if (fpSceneHandler) fpSceneHandler->SetTransientsDrawnThisRun(false); @@ -2001,12 +1984,7 @@ void G4VisManager::EndOfEvent () // std::this_thread::sleep_for(std::chrono::seconds(5)); #endif - G4RunManager* runManager = G4RunManager::GetRunManager(); -#ifdef G4MULTITHREADED - if (G4Threading::IsMultithreadedApplication()) { - runManager = G4MTRunManager::GetMasterRunManager(); - } -#endif + G4RunManager* runManager = G4RunManagerFactory::GetMasterRunManager(); const G4Run* currentRun = runManager->GetCurrentRun(); if (!currentRun) return; @@ -2058,11 +2036,7 @@ void G4VisManager::EndOfEvent () } // G4cout << "Event queue size (3): " << eventQueueSize << G4endl; // Wait a while to give event drawing time to reduce the queue... -#ifdef G4VIS_USE_STD11 std::this_thread::sleep_for(std::chrono::milliseconds(100)); -#else - G4THREADSLEEP(1); -#endif // G4cout << "Event queue size (4): " << eventQueueSize << G4endl; } else { static G4bool warned = false; @@ -2091,6 +2065,13 @@ void G4VisManager::EndOfEvent () G4MUTEXLOCK(&mtVisSubThreadMutex); // Keep event for processing and put event on vis event queue currentEvent->KeepForPostProcessing(); + if (fpScene->GetRefreshAtEndOfEvent()) { + // Keep one event (cannot know which is last so any will do) + if (fNKeepRequests == 0) { + eventManager->KeepTheCurrentEvent(); + fNKeepRequests++; + } + } mtVisEventQueue.push_back(currentEvent); G4MUTEXUNLOCK(&mtVisSubThreadMutex); } @@ -2143,7 +2124,6 @@ void G4VisManager::EndOfEvent () if (nKeptEvents == 0) { eventManager->KeepTheCurrentEvent(); fNKeepRequests++; - fKeptLastEvent = true; } } fpSceneHandler->SetMarkForClearingTransientStore(true); @@ -2199,15 +2179,10 @@ void G4VisManager::EndOfRun () if (G4Threading::IsWorkerThread()) return; #endif -// G4cout << "G4VisManager::EndOfRun: thread: " -// << G4Threading::G4GetThreadId() << G4endl; + // G4cout << "G4VisManager::EndOfRun: thread: " + // << G4Threading::G4GetThreadId() << G4endl; - G4RunManager* runManager = G4RunManager::GetRunManager(); -#ifdef G4MULTITHREADED - if (G4Threading::IsMultithreadedApplication()) { - runManager = G4MTRunManager::GetMasterRunManager(); - } -#endif + G4RunManager* runManager = G4RunManagerFactory::GetMasterRunManager(); // For a fake run... G4int nEventsToBeProcessed = runManager->GetNumberOfEventsToBeProcessed(); @@ -2253,28 +2228,36 @@ void G4VisManager::EndOfRun () G4int nKeptEvents = 0; const std::vector* events = currentRun->GetEventVector(); if (events) nKeptEvents = events->size(); - if (nKeptEvents && !fKeptLastEvent) { - if (fVerbosity >= warnings) { - G4cout << nKeptEvents; - if (nKeptEvents == 1) G4cout << " event has"; - else G4cout << " events have"; - G4cout << " been kept for refreshing and/or reviewing." << G4endl; - if (nKeptEvents != fNKeepRequests) { - G4cout << " (Note: "; - if (fNKeepRequests == 0) { - G4cout << "No keep requests were"; - } else if (fNKeepRequests == 1) { - G4cout << "Only 1 keep request was"; - } else { - G4cout << "Only " << fNKeepRequests << " keep requests were"; - } - G4cout << " made by the vis manager.)" << G4endl; + if (fVerbosity >= warnings) { + G4cout << nKeptEvents; + if (nKeptEvents == 1) G4cout << " event has"; + else G4cout << " events have"; + G4cout << " been kept for refreshing and/or reviewing." << G4endl; + if (nKeptEvents != fNKeepRequests) { + G4cout << " (Note: "; + if (fNKeepRequests == 0) { + G4cout << "No keep requests were"; + } else if (fNKeepRequests == 1) { + G4cout << "1 keep request was"; + } else { + G4cout << fNKeepRequests << " keep requests were"; } - G4cout << - "\n \"/vis/reviewKeptEvents\" to review them one by one." - "\n \"/vis/enable\", then \"/vis/viewer/flush\" or \"/vis/viewer/rebuild\" to see them accumulated." - << G4endl; + G4cout << " made by the vis manager."; + if (fNKeepRequests == 0) { + G4cout << + "\n The kept events are those you have asked to be kept in your user action(s).)"; + } else { + G4cout << + "\n The same or further events may have been kept by you in your user action(s).)"; + } + G4cout << G4endl; } + G4cout << + " \"/vis/reviewKeptEvents\" to review them one by one." + "\n \"/vis/enable\", then \"/vis/viewer/flush\" or \"/vis/viewer/rebuild\" to see them accumulated." + << G4endl; + } + // static G4bool warned = false; // if (!valid && fVerbosity >= warnings && !warned) { // G4cout << @@ -2291,7 +2274,6 @@ void G4VisManager::EndOfRun () // << G4endl; // warned = true; // } - } if (fEventKeepingSuspended && fVerbosity >= warnings) { G4cout << diff --git a/source/visualization/modeling/GNUmakefile b/source/visualization/modeling/GNUmakefile index 49e9199920..010f227be4 100644 --- a/source/visualization/modeling/GNUmakefile +++ b/source/visualization/modeling/GNUmakefile @@ -8,7 +8,7 @@ ifndef G4INSTALL G4INSTALL = ../../.. endif -GLOBLIBS = libG4run.lib libG4event.lib +GLOBLIBS = libG4tasking.lib libG4run.lib libG4event.lib GLOBLIBS += libG4tracking.lib libG4processes.lib libG4digits_hits.lib GLOBLIBS += libG4track.lib libG4particles.lib libG4geometry.lib GLOBLIBS += libG4materials.lib libG4graphics_reps.lib @@ -32,6 +32,7 @@ CPPFLAGS += -I$(G4BASE)/global/HEPRandom/include CPPFLAGS += -I$(G4BASE)/processes/management/include CPPFLAGS += -I$(G4BASE)/particles/management/include CPPFLAGS += -I$(G4BASE)/run/include +CPPFLAGS += -I$(G4BASE)/tasking/include CPPFLAGS += -I$(G4BASE)/event/include CPPFLAGS += -I$(G4BASE)/digits_hits/utils/include CPPFLAGS += -I$(G4BASE)/digits_hits/hits/include diff --git a/source/visualization/modeling/History b/source/visualization/modeling/History index ec99fea568..bc2bda285f 100644 --- a/source/visualization/modeling/History +++ b/source/visualization/modeling/History @@ -19,6 +19,31 @@ committal in the CVS repository ! History file for visualization/modeling --------------------------------------- +20 October 2020 Jonathan Madsen (modeling-V10-06-05) +- Implemented G4RunManagerFactory::GetMasterRunManager() + +18 September 2020 John Allison (modeling-V10-06-04) +- Part of vis-V10-06-07. +- G4PhysicalVlumeModel.cc: + o Pick up default vis attributes. + o Improve operator<< G4PhysicalVolumeModel::G4PhysicalVolumeNodeID + +04 August 2020. John Allison (modeling-V10-06-03) +- G4PhysicalVolumeModel: + o Introduce G4PhysicalVolumeModel::G4PhysicalVolumeNodeID::operator!= and ==. + o G4PhysicalVolumeModel::G4PhysicalVolumeNodeID: + . Change default for flag "drawn" to false. It is set to true in + G4PhysicalVolumeModel::DescribeAndDescend for full path: + fFullPVPath.back().SetDrawn(thisToBeDrawn); + and for drawn path: + fDrawnPVPath.push_back + (G4PhysicalVolumeNodeID + (fpCurrentPV,copyNo,fCurrentDepth,*fpCurrentTransform,thisToBeDrawn)); + for volumes that are drawn. +- G4PhysicalVolumesSearchScene.cc: + o G4PhysicalVolumesSearchScene::ProcessVolume: + . Make sure base path is also marked as "not drawn". + 07 April 2020. John Allison (modeling-V10-06-02) * G4BoundingExtentScene.cc: * Minor tidy: Use G4VisExtent::GetNullExtent (rather than @@ -57,7 +82,7 @@ History file for visualization/modeling - Rationalise trajectory line drawing. o There is a flag - DrawLine - which controls whether a trajectory should be drawn at all: - /vis/modeling/trajectories/drawByCharge-0/default/setDrawLine + /vis/modeling/trajectories/drawByCharge-0/default/setDrawLine but there is also a lineVisible command, which should do the same.: /vis/modeling/trajectories/drawByCharge-0/default/setLineVisible This is fixed in this tag. @@ -193,7 +218,7 @@ History file for visualization/modeling 24 October 2018 John Allison (modeling-V10-04-15) - G4TouchableUtils: o Remove FindGlobalTransform, introduce FindTouchableProperties. The - global transform is in properties.fTouchableGlobalTransform. + global transform is in properties.fTouchableGlobalTransform. - Add G4TouchablePropertiesScene. - Delete G4TouchableDumpScene, G4TouchableGlobalTransformScene. - sources.cmake: Modify for above additions and deletions. @@ -364,7 +389,7 @@ History file for visualization/modeling 12th September 2016 John Allison (modeling-V10-02-12) - G4ModelingParameters.cc: - o Changed output of + o Changed output of std::ostream& operator << (std::ostream& os, const G4ModelingParameters::PVNameCopyNoPath& path) to correspond to arguments of /vis/set/touchable. @@ -440,7 +465,7 @@ History file for visualization/modeling Added G4TrajectoryTouchedVolumeFilterFactory. o Added new files and classes: G4TrajectoryDrawByTouchedVolume.hh/cc - G4TrajectoryTouchedVolumeFilter.hh/cc + G4TrajectoryTouchedVolumeFilter.hh/cc o G4ModelColourMap.hh: Added new access function: const std::map& GetBasicMap() const; to allow access to the T objects (which are G4String objects, @@ -473,7 +498,7 @@ History file for visualization/modeling o Replaced an assignment by a reference. 19th May 2015 Laurent Garnier (modeling-V10-01-02) -- G4PhysicalVolumeSearchScene: Optimize ProcessVolume() by +- G4PhysicalVolumeSearchScene: Optimize ProcessVolume() by o setting variables only if needed o comparing string lenght before comparing all string @@ -651,7 +676,7 @@ History file for visualization/modeling 11th October 2012 John Allison (modeling-V09-05-21) - G4PhysicalVolumeModel and G4ModelingParameters: - o Tidying. + o Tidying. 9th October 2012 John Allison (modeling-V09-05-20) - G4PhysicalVolumeModel and G4ModelingParameters: @@ -694,7 +719,7 @@ History file for visualization/modeling volume. - G4PhysicalVolumeSearchScene: o Added GetFoundFullPVPath. - + 1st October 2012 John Allison (modeling-V09-05-13) - G4PhysicalVolumeModel:: GetAttDefs: Small bug fix. - G4TrajectoriesModel: @@ -970,7 +995,7 @@ History file for visualization/modeling 13th September 2006 John Allison - G4ModelingParameters: Improved setting and access to explode factor. -- G4PhysicalVolumeModel.cc: +- G4PhysicalVolumeModel.cc: o Implemented explode factor(radial move) feature for top level drawn volumes. - G4TrajectoriesModel.cc: Improved debug checking and printing of G4Atts. @@ -1000,7 +1025,7 @@ History file for visualization/modeling 16th August 2006 John Allison (modeling-V08-01-03) - G4TrajectoryDrawerUtils.cc: Improved robustness of time slicing. -- G4ModelCommandsT.hh: In class G4ModelCmdSetTimeSliceInterval: +- G4ModelCommandsT.hh: In class G4ModelCmdSetTimeSliceInterval: cmd->SetUnitCategory("Time"). - G4TrajectoriesModel.cc: Improved debug statement. @@ -1061,17 +1086,17 @@ History file for visualization/modeling - Improved protection for null models and parameters. 2nd May 2006 Jane Tinslay -- Add context to trajectory drawers. Intended to replace imode. - Allows to configure default drawing style for lines, step and - auxiliary points. For example, colours, visibility, point sizes, +- Add context to trajectory drawers. Intended to replace imode. + Allows to configure default drawing style for lines, step and + auxiliary points. For example, colours, visibility, point sizes, fill styles.. -- Add generic drawer, G4TrajectoryGenericDrawer. Draws all trajectories +- Add generic drawer, G4TrajectoryGenericDrawer. Draws all trajectories in the same style, based on its default context. - Update generic commands - Add verbose to drawers 21st April 2006 Jane Tinslay (modeling-V08-00-07) -- Get rid of some warning messages from G4ModelCommandsT +- Get rid of some warning messages from G4ModelCommandsT when compiling on Linux - Add Print method to G4VModelFactory @@ -1084,7 +1109,7 @@ History file for visualization/modeling 28th March 2006 Jane Tinslay (jst28032006) - Add G4TrajectoryFilterFactories and G4TrajectoryParticleFilter - for trajectory filtering. + for trajectory filtering. - Add more generic commands to G4ModelCommandsT 28th March 2006 John Allison (modeling-V08-00-05) @@ -1099,9 +1124,9 @@ History file for visualization/modeling dynamic cast instead). 24th March 2006 Jane Tinslay (jst24032006) -- Add G4bool visibility parameter to trajectory draw +- Add G4bool visibility parameter to trajectory draw models "Draw" method. - + 16th March 2006 Jane Tinslay (jst16032006) - Template commands and colour map used in trajectory models - Introduce G4TrajectoryDrawByOriginVolume diff --git a/source/visualization/modeling/include/G4PhysicalVolumeModel.hh b/source/visualization/modeling/include/G4PhysicalVolumeModel.hh index 79d982de02..b2214a779a 100644 --- a/source/visualization/modeling/include/G4PhysicalVolumeModel.hh +++ b/source/visualization/modeling/include/G4PhysicalVolumeModel.hh @@ -95,7 +95,7 @@ public: // With description G4int iCopyNo = 0, G4int depth = 0, const G4Transform3D& transform = G4Transform3D(), - G4bool drawn = true): + G4bool drawn = false): fpPV(pPV), fCopyNo(iCopyNo), fNonCulledDepth(depth), @@ -108,6 +108,10 @@ public: // With description G4bool GetDrawn() const {return fDrawn;} void SetDrawn(G4bool drawn) {fDrawn = drawn;} G4bool operator< (const G4PhysicalVolumeNodeID& right) const; + G4bool operator!= (const G4PhysicalVolumeNodeID& right) const; + G4bool operator== (const G4PhysicalVolumeNodeID& right) const { + return !operator!= (right); + } private: G4VPhysicalVolume* fpPV; G4int fCopyNo; diff --git a/source/visualization/modeling/sources.cmake b/source/visualization/modeling/sources.cmake index 4a5c650297..05e1664201 100644 --- a/source/visualization/modeling/sources.cmake +++ b/source/visualization/modeling/sources.cmake @@ -114,6 +114,7 @@ geant4_define_module(NAME G4modeling G4detutils G4digits G4run + G4tasking G4event G4geomBoolean G4geometrymng @@ -133,6 +134,7 @@ geant4_define_module(NAME G4modeling GLOBAL_DEPENDENCIES G4digits_hits G4run + G4tasking G4event G4geometry G4global diff --git a/source/visualization/modeling/src/G4PhysicalVolumeModel.cc b/source/visualization/modeling/src/G4PhysicalVolumeModel.cc index 6aeb7c645b..94306193cb 100644 --- a/source/visualization/modeling/src/G4PhysicalVolumeModel.cc +++ b/source/visualization/modeling/src/G4PhysicalVolumeModel.cc @@ -409,7 +409,11 @@ void G4PhysicalVolumeModel::DescribeAndDescend // If the volume does not have any vis attributes, create it. G4VisAttributes* tempVisAtts = nullptr; if (!pVisAttribs) { - tempVisAtts = new G4VisAttributes; // Default value. + if (fpMP->GetDefaultVisAttributes()) { + tempVisAtts = new G4VisAttributes(*fpMP->GetDefaultVisAttributes()); + } else { + tempVisAtts = new G4VisAttributes; + } // The user may request /vis/viewer/set/colourByDensity. if (fpMP->GetCBDAlgorithmNumber() == 1) { // Algorithm 1: 3 parameters: Simple rainbow mapping. @@ -973,6 +977,17 @@ G4bool G4PhysicalVolumeModel::G4PhysicalVolumeNodeID::operator< return false; } +G4bool G4PhysicalVolumeModel::G4PhysicalVolumeNodeID::operator!= + (const G4PhysicalVolumeModel::G4PhysicalVolumeNodeID& right) const +{ + if (fpPV != right.fpPV || + fCopyNo != right.fCopyNo || + fNonCulledDepth != right.fNonCulledDepth || + fTransform != right.fTransform || + fDrawn != right.fDrawn) return true; + return false; +} + std::ostream& operator<< (std::ostream& os, const G4PhysicalVolumeModel::G4PhysicalVolumeNodeID& node) { @@ -987,7 +1002,7 @@ std::ostream& operator<< // if (!node.GetDrawn()) os << "not "; // os << "drawn)"; } else { - os << " (Null node)"; + os << " (Null PV node)"; } return os; } diff --git a/source/visualization/modeling/src/G4PhysicalVolumesSearchScene.cc b/source/visualization/modeling/src/G4PhysicalVolumesSearchScene.cc index d8e8e0ce46..d2ae785de5 100644 --- a/source/visualization/modeling/src/G4PhysicalVolumesSearchScene.cc +++ b/source/visualization/modeling/src/G4PhysicalVolumesSearchScene.cc @@ -56,15 +56,17 @@ void G4PhysicalVolumesSearchScene::ProcessVolume (const G4VSolid&) if (fMatcher.Match(name)) { if ((fRequiredCopyNo < 0 || // I.e., ignore negative request fRequiredCopyNo == copyNo)) { - auto path = fpSearchVolumesModel->GetFullPVPath(); - path.pop_back(); // Base node is one up from found node + auto basePath = fpSearchVolumesModel->GetFullPVPath(); + basePath.pop_back(); // Base node is one up from found node + // Mark base path nodes as not drawn + for (auto& node: basePath) node.SetDrawn(false); fFindings.push_back (Findings (fpSearchVolumesModel->GetTopPhysicalVolume(), pCurrentPV, copyNo, fpSearchVolumesModel->GetCurrentDepth(), - path, + basePath, *fpCurrentObjectTransformation)); } } diff --git a/source/visualization/modeling/src/G4TrajectoriesModel.cc b/source/visualization/modeling/src/G4TrajectoriesModel.cc index a979380b10..6a3b640ebc 100644 --- a/source/visualization/modeling/src/G4TrajectoriesModel.cc +++ b/source/visualization/modeling/src/G4TrajectoriesModel.cc @@ -34,9 +34,7 @@ #include "G4ModelingParameters.hh" #include "G4VGraphicsScene.hh" #include "G4RunManager.hh" -#ifdef G4MULTITHREADED -#include "G4MTRunManager.hh" -#endif +#include "G4RunManagerFactory.hh" #include "G4Run.hh" #include "G4Event.hh" #include "G4AttDefStore.hh" @@ -62,15 +60,14 @@ void G4TrajectoriesModelDebugG4AttValues(const G4VTrajectory*); void G4TrajectoriesModel::DescribeYourselfTo (G4VGraphicsScene& sceneHandler) { - G4RunManager* runManager = G4RunManager::GetRunManager(); -#ifdef G4MULTITHREADED - if(G4Threading::IsMultithreadedApplication()) - { runManager = G4MTRunManager::GetMasterRunManager(); } -#endif - const G4Run* currentRun = runManager->GetCurrentRun(); - if (currentRun) { + G4RunManager* runManager = G4RunManagerFactory::GetMasterRunManager(); + const G4Run* currentRun = runManager->GetCurrentRun(); + if(currentRun) + { fRunID = currentRun->GetRunID(); - } else { + } + else + { fRunID = -1; return; }
      " << G4endl; - for( size_t i_thTree = 0; i_thTree < tree.size(); ++i_thTree ) + for(std::size_t i_thTree = 0; i_thTree < tree.size(); ++i_thTree) { - oF << "


      GetPathName()) - << "\">" << ModStr(tree[i_thTree]->GetPathName()) << "" << G4endl; + oF << "


      GetPathName()) << "\">" + << ModStr(tree[i_thTree]->GetPathName()) << "" << G4endl; oF << "

      " << ModStr(tree[i_thTree]->GetTitle()) << G4endl; tree[i_thTree]->CreateHTML(); } oF << "